diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project01/awesomeface.png" "b/21951468\345\274\240\351\233\250\350\226\207/Project01/awesomeface.png" new file mode 100644 index 00000000..23c778d7 Binary files /dev/null and "b/21951468\345\274\240\351\233\250\350\226\207/Project01/awesomeface.png" differ diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project01/glad.c" "b/21951468\345\274\240\351\233\250\350\226\207/Project01/glad.c" new file mode 100644 index 00000000..eb789a88 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project01/glad.c" @@ -0,0 +1,1140 @@ +/* + + OpenGL loader generated by glad 0.1.33 on Mon Dec 16 13:28:26 2019. + + Language/Generator: C/C++ + Specification: gl + APIs: gl=3.3 + Profile: core + Extensions: + + Loader: True + Local files: False + Omit khrplatform: False + Reproducible: False + + Commandline: + --profile="core" --api="gl=3.3" --generator="c" --spec="gl" --extensions="" + Online: + https://glad.dav1d.de/#profile=core&language=c&specification=gl&loader=on&api=gl%3D3.3 +*/ + +#include +#include +#include +#include + +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; +PFNGLACTIVETEXTUREPROC glad_glActiveTexture = NULL; +PFNGLATTACHSHADERPROC glad_glAttachShader = 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; +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; +PFNGLCHECKFRAMEBUFFERSTATUSPROC glad_glCheckFramebufferStatus = NULL; +PFNGLCLAMPCOLORPROC glad_glClampColor = NULL; +PFNGLCLEARPROC glad_glClear = 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; +PFNGLCLEARSTENCILPROC glad_glClearStencil = NULL; +PFNGLCLIENTWAITSYNCPROC glad_glClientWaitSync = NULL; +PFNGLCOLORMASKPROC glad_glColorMask = NULL; +PFNGLCOLORMASKIPROC glad_glColorMaski = NULL; +PFNGLCOLORP3UIPROC glad_glColorP3ui = NULL; +PFNGLCOLORP3UIVPROC glad_glColorP3uiv = NULL; +PFNGLCOLORP4UIPROC glad_glColorP4ui = NULL; +PFNGLCOLORP4UIVPROC glad_glColorP4uiv = 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; +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; +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; +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; +PFNGLDRAWRANGEELEMENTSPROC glad_glDrawRangeElements = NULL; +PFNGLDRAWRANGEELEMENTSBASEVERTEXPROC glad_glDrawRangeElementsBaseVertex = NULL; +PFNGLENABLEPROC glad_glEnable = NULL; +PFNGLENABLEVERTEXATTRIBARRAYPROC glad_glEnableVertexAttribArray = NULL; +PFNGLENABLEIPROC glad_glEnablei = NULL; +PFNGLENDCONDITIONALRENDERPROC glad_glEndConditionalRender = NULL; +PFNGLENDQUERYPROC glad_glEndQuery = NULL; +PFNGLENDTRANSFORMFEEDBACKPROC glad_glEndTransformFeedback = NULL; +PFNGLFENCESYNCPROC glad_glFenceSync = NULL; +PFNGLFINISHPROC glad_glFinish = NULL; +PFNGLFLUSHPROC glad_glFlush = NULL; +PFNGLFLUSHMAPPEDBUFFERRANGEPROC glad_glFlushMappedBufferRange = 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; +PFNGLGENBUFFERSPROC glad_glGenBuffers = NULL; +PFNGLGENFRAMEBUFFERSPROC glad_glGenFramebuffers = 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; +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; +PFNGLGETMULTISAMPLEFVPROC glad_glGetMultisamplefv = 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; +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; +PFNGLISBUFFERPROC glad_glIsBuffer = NULL; +PFNGLISENABLEDPROC glad_glIsEnabled = NULL; +PFNGLISENABLEDIPROC glad_glIsEnabledi = NULL; +PFNGLISFRAMEBUFFERPROC glad_glIsFramebuffer = 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; +PFNGLLINEWIDTHPROC glad_glLineWidth = NULL; +PFNGLLINKPROGRAMPROC glad_glLinkProgram = NULL; +PFNGLLOGICOPPROC glad_glLogicOp = NULL; +PFNGLMAPBUFFERPROC glad_glMapBuffer = NULL; +PFNGLMAPBUFFERRANGEPROC glad_glMapBufferRange = NULL; +PFNGLMULTIDRAWARRAYSPROC glad_glMultiDrawArrays = NULL; +PFNGLMULTIDRAWELEMENTSPROC glad_glMultiDrawElements = NULL; +PFNGLMULTIDRAWELEMENTSBASEVERTEXPROC glad_glMultiDrawElementsBaseVertex = 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; +PFNGLNORMALP3UIPROC glad_glNormalP3ui = NULL; +PFNGLNORMALP3UIVPROC glad_glNormalP3uiv = NULL; +PFNGLPIXELSTOREFPROC glad_glPixelStoref = NULL; +PFNGLPIXELSTOREIPROC glad_glPixelStorei = 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; +PFNGLPRIMITIVERESTARTINDEXPROC glad_glPrimitiveRestartIndex = NULL; +PFNGLPROVOKINGVERTEXPROC glad_glProvokingVertex = NULL; +PFNGLQUERYCOUNTERPROC glad_glQueryCounter = NULL; +PFNGLREADBUFFERPROC glad_glReadBuffer = NULL; +PFNGLREADPIXELSPROC glad_glReadPixels = NULL; +PFNGLRENDERBUFFERSTORAGEPROC glad_glRenderbufferStorage = NULL; +PFNGLRENDERBUFFERSTORAGEMULTISAMPLEPROC glad_glRenderbufferStorageMultisample = 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; +PFNGLSCISSORPROC glad_glScissor = NULL; +PFNGLSECONDARYCOLORP3UIPROC glad_glSecondaryColorP3ui = NULL; +PFNGLSECONDARYCOLORP3UIVPROC glad_glSecondaryColorP3uiv = 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; +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; +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; +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; +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; +PFNGLVIEWPORTPROC glad_glViewport = NULL; +PFNGLWAITSYNCPROC glad_glWaitSync = 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"); +} +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_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"); +} +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"); +} +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_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/21951468\345\274\240\351\233\250\350\226\207/Project01/readme.md" "b/21951468\345\274\240\351\233\250\350\226\207/Project01/readme.md" new file mode 100644 index 00000000..962ae089 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project01/readme.md" @@ -0,0 +1,17 @@ +# 第一次作业 + +## 1. 环境配置 + +* windows10 +* glfw3.3 +* glad + +## 2. 实现功能 + +* 完成了立方体的绘制。 +* 在立方体上应用了两种texture。 +* 实现了相机控制 + +## 3.实现成果 + +![](results/result.gif) \ No newline at end of file diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project01/results/result.gif" "b/21951468\345\274\240\351\233\250\350\226\207/Project01/results/result.gif" new file mode 100644 index 00000000..a1c4b135 Binary files /dev/null and "b/21951468\345\274\240\351\233\250\350\226\207/Project01/results/result.gif" differ diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project01/shader_m.h" "b/21951468\345\274\240\351\233\250\350\226\207/Project01/shader_m.h" new file mode 100644 index 00000000..e5cd932b --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project01/shader_m.h" @@ -0,0 +1,191 @@ +#ifndef SHADER_H +#define SHADER_H + +#include +#include + +#include +#include +#include +#include + +class Shader +{ +public: + unsigned int ID; + // constructor generates the shader on the fly + // ------------------------------------------------------------------------ + Shader(const char* vertexPath, const char* fragmentPath, const char* geometryPath = nullptr) + { + // 1. retrieve the vertex/fragment source code from filePath + std::string vertexCode; + std::string fragmentCode; + std::string geometryCode; + std::ifstream vShaderFile; + std::ifstream fShaderFile; + std::ifstream gShaderFile; + // ensure ifstream objects can throw exceptions: + vShaderFile.exceptions(std::ifstream::failbit | std::ifstream::badbit); + fShaderFile.exceptions(std::ifstream::failbit | std::ifstream::badbit); + gShaderFile.exceptions(std::ifstream::failbit | std::ifstream::badbit); + try + { + // open files + vShaderFile.open(vertexPath); + fShaderFile.open(fragmentPath); + std::stringstream vShaderStream, fShaderStream; + // read file's buffer contents into streams + vShaderStream << vShaderFile.rdbuf(); + fShaderStream << fShaderFile.rdbuf(); + // close file handlers + vShaderFile.close(); + fShaderFile.close(); + // convert stream into string + vertexCode = vShaderStream.str(); + fragmentCode = fShaderStream.str(); + // if geometry shader path is present, also load a geometry shader + if (geometryPath != nullptr) + { + gShaderFile.open(geometryPath); + std::stringstream gShaderStream; + gShaderStream << gShaderFile.rdbuf(); + gShaderFile.close(); + geometryCode = gShaderStream.str(); + } + } + catch (std::ifstream::failure e) + { + std::cout << "ERROR::SHADER::FILE_NOT_SUCCESFULLY_READ" << std::endl; + } + const char* vShaderCode = vertexCode.c_str(); + const char * fShaderCode = fragmentCode.c_str(); + // 2. compile shaders + unsigned int vertex, fragment; + // vertex shader + vertex = glCreateShader(GL_VERTEX_SHADER); + glShaderSource(vertex, 1, &vShaderCode, NULL); + glCompileShader(vertex); + checkCompileErrors(vertex, "VERTEX"); + // fragment Shader + fragment = glCreateShader(GL_FRAGMENT_SHADER); + glShaderSource(fragment, 1, &fShaderCode, NULL); + glCompileShader(fragment); + checkCompileErrors(fragment, "FRAGMENT"); + // if geometry shader is given, compile geometry shader + unsigned int geometry; + if (geometryPath != nullptr) + { + const char * gShaderCode = geometryCode.c_str(); + geometry = glCreateShader(GL_GEOMETRY_SHADER); + glShaderSource(geometry, 1, &gShaderCode, NULL); + glCompileShader(geometry); + checkCompileErrors(geometry, "GEOMETRY"); + } + // shader Program + ID = glCreateProgram(); + glAttachShader(ID, vertex); + glAttachShader(ID, fragment); + if (geometryPath != nullptr) + glAttachShader(ID, geometry); + glLinkProgram(ID); + checkCompileErrors(ID, "PROGRAM"); + // delete the shaders as they're linked into our program now and no longer necessery + glDeleteShader(vertex); + glDeleteShader(fragment); + if (geometryPath != nullptr) + glDeleteShader(geometry); + + } + // activate the shader + // ------------------------------------------------------------------------ + void use() + { + glUseProgram(ID); + } + // utility uniform functions + // ------------------------------------------------------------------------ + void setBool(const std::string &name, bool value) const + { + glUniform1i(glGetUniformLocation(ID, name.c_str()), (int)value); + } + // ------------------------------------------------------------------------ + void setInt(const std::string &name, int value) const + { + glUniform1i(glGetUniformLocation(ID, name.c_str()), value); + } + // ------------------------------------------------------------------------ + void setFloat(const std::string &name, float value) const + { + glUniform1f(glGetUniformLocation(ID, name.c_str()), value); + } + // ------------------------------------------------------------------------ + void setVec2(const std::string &name, const glm::vec2 &value) const + { + glUniform2fv(glGetUniformLocation(ID, name.c_str()), 1, &value[0]); + } + void setVec2(const std::string &name, float x, float y) const + { + glUniform2f(glGetUniformLocation(ID, name.c_str()), x, y); + } + // ------------------------------------------------------------------------ + void setVec3(const std::string &name, const glm::vec3 &value) const + { + glUniform3fv(glGetUniformLocation(ID, name.c_str()), 1, &value[0]); + } + void setVec3(const std::string &name, float x, float y, float z) const + { + glUniform3f(glGetUniformLocation(ID, name.c_str()), x, y, z); + } + // ------------------------------------------------------------------------ + void setVec4(const std::string &name, const glm::vec4 &value) const + { + glUniform4fv(glGetUniformLocation(ID, name.c_str()), 1, &value[0]); + } + void setVec4(const std::string &name, float x, float y, float z, float w) + { + glUniform4f(glGetUniformLocation(ID, name.c_str()), x, y, z, w); + } + // ------------------------------------------------------------------------ + void setMat2(const std::string &name, const glm::mat2 &mat) const + { + glUniformMatrix2fv(glGetUniformLocation(ID, name.c_str()), 1, GL_FALSE, &mat[0][0]); + } + // ------------------------------------------------------------------------ + void setMat3(const std::string &name, const glm::mat3 &mat) const + { + glUniformMatrix3fv(glGetUniformLocation(ID, name.c_str()), 1, GL_FALSE, &mat[0][0]); + } + // ------------------------------------------------------------------------ + void setMat4(const std::string &name, const glm::mat4 &mat) const + { + glUniformMatrix4fv(glGetUniformLocation(ID, name.c_str()), 1, GL_FALSE, &mat[0][0]); + } + +private: + // utility function for checking shader compilation/linking errors. + // ------------------------------------------------------------------------ + void checkCompileErrors(GLuint shader, std::string type) + { + GLint success; + GLchar infoLog[1024]; + if (type != "PROGRAM") + { + glGetShaderiv(shader, GL_COMPILE_STATUS, &success); + if (!success) + { + glGetShaderInfoLog(shader, 1024, NULL, infoLog); + std::cout << "ERROR::SHADER_COMPILATION_ERROR of type: " << type << "\n" << infoLog << "\n -- --------------------------------------------------- -- " << std::endl; + } + } + else + { + glGetProgramiv(shader, GL_LINK_STATUS, &success); + if (!success) + { + glGetProgramInfoLog(shader, 1024, NULL, infoLog); + std::cout << "ERROR::PROGRAM_LINKING_ERROR of type: " << type << "\n" << infoLog << "\n -- --------------------------------------------------- -- " << std::endl; + } + } + } +}; +#endif \ No newline at end of file diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project01/stb_image.cpp" "b/21951468\345\274\240\351\233\250\350\226\207/Project01/stb_image.cpp" new file mode 100644 index 00000000..badb3ef4 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project01/stb_image.cpp" @@ -0,0 +1,2 @@ +#define STB_IMAGE_IMPLEMENTATION +#include "stb_image.h" \ No newline at end of file diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project01/stb_image.h" "b/21951468\345\274\240\351\233\250\350\226\207/Project01/stb_image.h" new file mode 100644 index 00000000..196dfd5c --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project01/stb_image.h" @@ -0,0 +1,7559 @@ +/* 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/21951468\345\274\240\351\233\250\350\226\207/Project01/wall.jpg" "b/21951468\345\274\240\351\233\250\350\226\207/Project01/wall.jpg" new file mode 100644 index 00000000..49631987 Binary files /dev/null and "b/21951468\345\274\240\351\233\250\350\226\207/Project01/wall.jpg" differ diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project01/zyw_fragment_shader.fs" "b/21951468\345\274\240\351\233\250\350\226\207/Project01/zyw_fragment_shader.fs" new file mode 100644 index 00000000..44839bc3 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project01/zyw_fragment_shader.fs" @@ -0,0 +1,14 @@ +#version 330 core +out vec4 FragColor; + +in vec2 TexCoord; + +// texture samplers +uniform sampler2D texture1; +uniform sampler2D texture2; + +void main() +{ + // linearly interpolate between both textures (80% container, 20% awesomeface) + FragColor = mix(texture(texture1, TexCoord), texture(texture2, TexCoord), 0.2); +} \ No newline at end of file diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project01/zyw_main.cpp" "b/21951468\345\274\240\351\233\250\350\226\207/Project01/zyw_main.cpp" new file mode 100644 index 00000000..0bbd0a80 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project01/zyw_main.cpp" @@ -0,0 +1,357 @@ +#include +#include +#include + +#include +#include +#include + +#include + +#include + +void framebuffer_size_callback(GLFWwindow* window, int width, int height); +void mouse_callback(GLFWwindow* window, double xpos, double ypos); +void scroll_callback(GLFWwindow* window, double xoffset, double yoffset); +void processInput(GLFWwindow *window); + +// settings +const unsigned int SCR_WIDTH = 800; +const unsigned int SCR_HEIGHT = 600; + +// camera +glm::vec3 cameraPos = glm::vec3(0.0f, 0.0f, 3.0f); +glm::vec3 cameraFront = glm::vec3(0.0f, 0.0f, -1.0f); +glm::vec3 cameraUp = glm::vec3(0.0f, 1.0f, 0.0f); + +bool firstMouse = true; +float yaw = -90.0f; // yaw is initialized to -90.0 degrees since a yaw of 0.0 results in a direction vector pointing to the right so we initially rotate a bit to the left. +float pitch = 0.0f; +float lastX = 800.0f / 2.0; +float lastY = 600.0 / 2.0; +float fov = 45.0f; + +// timing +float deltaTime = 0.0f; // time between current frame and last frame +float lastFrame = 0.0f; + +int main() +{ + // glfw: initialize and configure + // ------------------------------ + glfwInit(); + glfwWindowHint(GLFW_CONTEXT_VERSION_MAJOR, 3); + glfwWindowHint(GLFW_CONTEXT_VERSION_MINOR, 3); + glfwWindowHint(GLFW_OPENGL_PROFILE, GLFW_OPENGL_CORE_PROFILE); + +#ifdef __APPLE__ + glfwWindowHint(GLFW_OPENGL_FORWARD_COMPAT, GL_TRUE); // uncomment this statement to fix compilation on OS X +#endif + + // glfw window creation + // -------------------- + GLFWwindow* window = glfwCreateWindow(SCR_WIDTH, SCR_HEIGHT, "zyw_homework1", NULL, NULL); + if (window == NULL) + { + std::cout << "Failed to create GLFW window" << std::endl; + glfwTerminate(); + return -1; + } + glfwMakeContextCurrent(window); + glfwSetFramebufferSizeCallback(window, framebuffer_size_callback); + glfwSetCursorPosCallback(window, mouse_callback); + glfwSetScrollCallback(window, scroll_callback); + + // tell GLFW to capture our mouse + glfwSetInputMode(window, GLFW_CURSOR, GLFW_CURSOR_DISABLED); + + // glad: load all OpenGL function pointers + // --------------------------------------- + if (!gladLoadGLLoader((GLADloadproc)glfwGetProcAddress)) + { + std::cout << "Failed to initialize GLAD" << std::endl; + return -1; + } + + // configure global opengl state + // ----------------------------- + glEnable(GL_DEPTH_TEST); + + // build and compile our shader zprogram + // ------------------------------------ + Shader ourShader("zyw_vertex_shader.vs", "zyw_fragment_shader.fs"); + + // set up vertex data (and buffer(s)) and configure vertex attributes + // ------------------------------------------------------------------ + float vertices[] = { + -0.5f, -0.5f, -0.5f, 0.0f, 0.0f, + 0.5f, -0.5f, -0.5f, 1.0f, 0.0f, + 0.5f, 0.5f, -0.5f, 1.0f, 1.0f, + 0.5f, 0.5f, -0.5f, 1.0f, 1.0f, + -0.5f, 0.5f, -0.5f, 0.0f, 1.0f, + -0.5f, -0.5f, -0.5f, 0.0f, 0.0f, + + -0.5f, -0.5f, 0.5f, 0.0f, 0.0f, + 0.5f, -0.5f, 0.5f, 1.0f, 0.0f, + 0.5f, 0.5f, 0.5f, 1.0f, 1.0f, + 0.5f, 0.5f, 0.5f, 1.0f, 1.0f, + -0.5f, 0.5f, 0.5f, 0.0f, 1.0f, + -0.5f, -0.5f, 0.5f, 0.0f, 0.0f, + + -0.5f, 0.5f, 0.5f, 1.0f, 0.0f, + -0.5f, 0.5f, -0.5f, 1.0f, 1.0f, + -0.5f, -0.5f, -0.5f, 0.0f, 1.0f, + -0.5f, -0.5f, -0.5f, 0.0f, 1.0f, + -0.5f, -0.5f, 0.5f, 0.0f, 0.0f, + -0.5f, 0.5f, 0.5f, 1.0f, 0.0f, + + 0.5f, 0.5f, 0.5f, 1.0f, 0.0f, + 0.5f, 0.5f, -0.5f, 1.0f, 1.0f, + 0.5f, -0.5f, -0.5f, 0.0f, 1.0f, + 0.5f, -0.5f, -0.5f, 0.0f, 1.0f, + 0.5f, -0.5f, 0.5f, 0.0f, 0.0f, + 0.5f, 0.5f, 0.5f, 1.0f, 0.0f, + + -0.5f, -0.5f, -0.5f, 0.0f, 1.0f, + 0.5f, -0.5f, -0.5f, 1.0f, 1.0f, + 0.5f, -0.5f, 0.5f, 1.0f, 0.0f, + 0.5f, -0.5f, 0.5f, 1.0f, 0.0f, + -0.5f, -0.5f, 0.5f, 0.0f, 0.0f, + -0.5f, -0.5f, -0.5f, 0.0f, 1.0f, + + -0.5f, 0.5f, -0.5f, 0.0f, 1.0f, + 0.5f, 0.5f, -0.5f, 1.0f, 1.0f, + 0.5f, 0.5f, 0.5f, 1.0f, 0.0f, + 0.5f, 0.5f, 0.5f, 1.0f, 0.0f, + -0.5f, 0.5f, 0.5f, 0.0f, 0.0f, + -0.5f, 0.5f, -0.5f, 0.0f, 1.0f + }; + // world space positions of our cubes + glm::vec3 cubePositions[] = { + glm::vec3(0.0f, 0.0f, 0.0f), + glm::vec3(2.0f, 5.0f, -15.0f), + glm::vec3(-1.5f, -2.2f, -2.5f), + glm::vec3(-3.8f, -2.0f, -12.3f), + glm::vec3(2.4f, -0.4f, -3.5f), + glm::vec3(-1.7f, 3.0f, -7.5f), + glm::vec3(1.3f, -2.0f, -2.5f), + glm::vec3(1.5f, 2.0f, -2.5f), + glm::vec3(1.5f, 0.2f, -1.5f), + glm::vec3(-1.3f, 1.0f, -1.5f) + }; + unsigned int VBO, VAO; + glGenVertexArrays(1, &VAO); + glGenBuffers(1, &VBO); + + glBindVertexArray(VAO); + + glBindBuffer(GL_ARRAY_BUFFER, VBO); + glBufferData(GL_ARRAY_BUFFER, sizeof(vertices), vertices, GL_STATIC_DRAW); + + // position attribute + glVertexAttribPointer(0, 3, GL_FLOAT, GL_FALSE, 5 * sizeof(float), (void*)0); + glEnableVertexAttribArray(0); + // texture coord attribute + glVertexAttribPointer(1, 2, GL_FLOAT, GL_FALSE, 5 * sizeof(float), (void*)(3 * sizeof(float))); + glEnableVertexAttribArray(1); + + + // load and create a texture + // ------------------------- + unsigned int texture1, texture2; + // texture 1 + // --------- + glGenTextures(1, &texture1); + glBindTexture(GL_TEXTURE_2D, texture1); + // set the texture wrapping parameters + glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_WRAP_S, GL_REPEAT); + glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_WRAP_T, GL_REPEAT); + // set texture filtering parameters + glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MIN_FILTER, GL_LINEAR); + glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MAG_FILTER, GL_LINEAR); + // load image, create texture and generate mipmaps + int width, height, nrChannels; + stbi_set_flip_vertically_on_load(true); // tell stb_image.h to flip loaded texture's on the y-axis. + unsigned char *data = stbi_load("wall.jpg", &width, &height, &nrChannels, 0); + if (data) + { + glTexImage2D(GL_TEXTURE_2D, 0, GL_RGB, width, height, 0, GL_RGB, GL_UNSIGNED_BYTE, data); + glGenerateMipmap(GL_TEXTURE_2D); + } + else + { + std::cout << "Failed to load texture" << std::endl; + } + stbi_image_free(data); + // texture 2 + // --------- + glGenTextures(1, &texture2); + glBindTexture(GL_TEXTURE_2D, texture2); + // set the texture wrapping parameters + glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_WRAP_S, GL_REPEAT); + glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_WRAP_T, GL_REPEAT); + // set texture filtering parameters + glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MIN_FILTER, GL_LINEAR); + glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MAG_FILTER, GL_LINEAR); + // load image, create texture and generate mipmaps + data = stbi_load("awesomeface.png", &width, &height, &nrChannels, 0); + if (data) + { + // note that the awesomeface.png has transparency and thus an alpha channel, so make sure to tell OpenGL the data type is of GL_RGBA + glTexImage2D(GL_TEXTURE_2D, 0, GL_RGB, width, height, 0, GL_RGBA, GL_UNSIGNED_BYTE, data); + glGenerateMipmap(GL_TEXTURE_2D); + } + else + { + std::cout << "Failed to load texture" << std::endl; + } + stbi_image_free(data); + + // tell opengl for each sampler to which texture unit it belongs to (only has to be done once) + // ------------------------------------------------------------------------------------------- + ourShader.use(); + ourShader.setInt("texture1", 0); + ourShader.setInt("texture2", 1); + + + // render loop + // ----------- + while (!glfwWindowShouldClose(window)) + { + // per-frame time logic + // -------------------- + float currentFrame = glfwGetTime(); + deltaTime = currentFrame - lastFrame; + lastFrame = currentFrame; + + // input + // ----- + processInput(window); + + // render + // ------ + glClearColor(0.2f, 0.3f, 0.3f, 1.0f); + glClear(GL_COLOR_BUFFER_BIT | GL_DEPTH_BUFFER_BIT); + + // bind textures on corresponding texture units + glActiveTexture(GL_TEXTURE0); + glBindTexture(GL_TEXTURE_2D, texture1); + glActiveTexture(GL_TEXTURE1); + glBindTexture(GL_TEXTURE_2D, texture2); + + // activate shader + ourShader.use(); + + // pass projection matrix to shader (note that in this case it could change every frame) + glm::mat4 projection = glm::perspective(glm::radians(fov), (float)SCR_WIDTH / (float)SCR_HEIGHT, 0.1f, 100.0f); + ourShader.setMat4("projection", projection); + + // camera/view transformation + glm::mat4 view = glm::lookAt(cameraPos, cameraPos + cameraFront, cameraUp); + ourShader.setMat4("view", view); + + // render boxes + glBindVertexArray(VAO); + for (unsigned int i = 0; i < 10; i++) + { + // calculate the model matrix for each object and pass it to shader before drawing + glm::mat4 model = glm::mat4(1.0f); // make sure to initialize matrix to identity matrix first + model = glm::translate(model, cubePositions[i]); + float angle = 20.0f * i; + model = glm::rotate(model, glm::radians(angle), glm::vec3(1.0f, 0.3f, 0.5f)); + ourShader.setMat4("model", model); + + glDrawArrays(GL_TRIANGLES, 0, 36); + } + + // glfw: swap buffers and poll IO events (keys pressed/released, mouse moved etc.) + // ------------------------------------------------------------------------------- + glfwSwapBuffers(window); + glfwPollEvents(); + } + + // optional: de-allocate all resources once they've outlived their purpose: + // ------------------------------------------------------------------------ + glDeleteVertexArrays(1, &VAO); + glDeleteBuffers(1, &VBO); + + // glfw: terminate, clearing all previously allocated GLFW resources. + // ------------------------------------------------------------------ + glfwTerminate(); + return 0; +} + +// process all input: query GLFW whether relevant keys are pressed/released this frame and react accordingly +// --------------------------------------------------------------------------------------------------------- +void processInput(GLFWwindow *window) +{ + if (glfwGetKey(window, GLFW_KEY_ESCAPE) == GLFW_PRESS) + glfwSetWindowShouldClose(window, true); + + float cameraSpeed = 2.5 * deltaTime; + if (glfwGetKey(window, GLFW_KEY_W) == GLFW_PRESS) + cameraPos += cameraSpeed * cameraFront; + if (glfwGetKey(window, GLFW_KEY_S) == GLFW_PRESS) + cameraPos -= cameraSpeed * cameraFront; + if (glfwGetKey(window, GLFW_KEY_A) == GLFW_PRESS) + cameraPos -= glm::normalize(glm::cross(cameraFront, cameraUp)) * cameraSpeed; + if (glfwGetKey(window, GLFW_KEY_D) == GLFW_PRESS) + cameraPos += glm::normalize(glm::cross(cameraFront, cameraUp)) * cameraSpeed; +} + +// glfw: whenever the window size changed (by OS or user resize) this callback function executes +// --------------------------------------------------------------------------------------------- +void framebuffer_size_callback(GLFWwindow* window, int width, int height) +{ + // make sure the viewport matches the new window dimensions; note that width and + // height will be significantly larger than specified on retina displays. + glViewport(0, 0, width, height); +} + +// glfw: whenever the mouse moves, this callback is called +// ------------------------------------------------------- +void mouse_callback(GLFWwindow* window, double xpos, double ypos) +{ + if (firstMouse) + { + lastX = xpos; + lastY = ypos; + firstMouse = false; + } + + float xoffset = xpos - lastX; + float yoffset = lastY - ypos; // reversed since y-coordinates go from bottom to top + lastX = xpos; + lastY = ypos; + + float sensitivity = 0.1f; // change this value to your liking + xoffset *= sensitivity; + yoffset *= sensitivity; + + yaw += xoffset; + pitch += yoffset; + + // make sure that when pitch is out of bounds, screen doesn't get flipped + if (pitch > 89.0f) + pitch = 89.0f; + if (pitch < -89.0f) + pitch = -89.0f; + + glm::vec3 front; + front.x = cos(glm::radians(yaw)) * cos(glm::radians(pitch)); + front.y = sin(glm::radians(pitch)); + front.z = sin(glm::radians(yaw)) * cos(glm::radians(pitch)); + cameraFront = glm::normalize(front); +} + +// glfw: whenever the mouse scroll wheel scrolls, this callback is called +// ---------------------------------------------------------------------- +void scroll_callback(GLFWwindow* window, double xoffset, double yoffset) +{ + if (fov >= 1.0f && fov <= 45.0f) + fov -= yoffset; + if (fov <= 1.0f) + fov = 1.0f; + if (fov >= 45.0f) + fov = 45.0f; +} \ No newline at end of file diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project01/zyw_vertex_shader.vs" "b/21951468\345\274\240\351\233\250\350\226\207/Project01/zyw_vertex_shader.vs" new file mode 100644 index 00000000..e91af6da --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project01/zyw_vertex_shader.vs" @@ -0,0 +1,15 @@ +#version 330 core +layout (location = 0) in vec3 aPos; +layout (location = 1) in vec2 aTexCoord; + +out vec2 TexCoord; + +uniform mat4 model; +uniform mat4 view; +uniform mat4 projection; + +void main() +{ + gl_Position = projection * view * model * vec4(aPos, 1.0f); + TexCoord = vec2(aTexCoord.x, aTexCoord.y); +} \ No newline at end of file diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project02/1.cpp" "b/21951468\345\274\240\351\233\250\350\226\207/Project02/1.cpp" new file mode 100644 index 00000000..fe306c1a --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project02/1.cpp" @@ -0,0 +1,192 @@ +// +// main.cpp +// LearnOpenGL +// +// Created by yingyingzhu on 2019/9/7. +// Copyright © 2019 yingyingzhu. All rights reserved. +// +#include +#include +#include + +using namespace std; + + +#define PI 3.1415926 +void Rotate(); +static float year = 0, day = 0, sunYear = 0, month = 0; +float light_angle = 0; +float light_radius = 8.0; +double x = 0, y = 0; +double aix_x = 0.0, aix_y = 0.5, aix_z = 0.5; +GLdouble angle = 100.0; + +void lPosition() +{ + float y, z; + y = light_radius * cos(light_angle); + z = light_radius * sin(light_angle); + float light_position[] = { 3.0,y,z,0.0 }; + glLightfv(GL_LIGHT0, GL_POSITION, light_position); + //void glLightfv (GLenum light, GLenum pname, const GLfloat *params); + //创建指定的光源,light可以是GL_LIGHT0、GL_LIGHT1,pname定义的是光源的属性,它指定了一个命名参数。params表示表示pname属性将要被设置的值 +} + +void init(void) +{ + glClearColor(0.0, 0.0, 0.0, 0.0); + lPosition(); + glShadeModel(GL_SMOOTH); //将制定的两点颜色进行平滑插值 + glEnable(GL_LIGHTING); //启用灯源 + glEnable(GL_LIGHT0); //启用0号灯光源 + glEnable(GL_DEPTH_TEST); //启用深度测试。根据坐标的远近自动隐蔽被遮挡的图形 + glEnable(GL_COLOR_MATERIAL); //执行后,图形将根据光线的照耀进行反射。 +} + +void material_sun() //设置太阳材质 +{ + GLfloat mat_specular[] = { 1.0,0.0,0.0,1.0 }; + GLfloat mat_shininess[] = { 50.0 }; + GLfloat lmodel_ambient[] = { 1.0,0.0,0.0,1.0 }; //太阳颜色为红色 + GLfloat white_light[] = { 1.0,1.0,1.0,1.0 }; + //指定用于计算的当前材质属性。 + // void WINAPI glMaterialfv( + // GLenum face, + // GLenum pname, + // const GLfloat *params + // ); + //指定用于光照计算的当前材质属性。参数face的取值GL_FRONT,GL_BACK或GL_FRONT_AND_BACK,指出材质属性将应用于物体的哪面。 + //pname指出要设置的哪种材质属性。param为要设置的属性值,是一个指向数组的指针(向量版本)或一个数值(非向量版本)。只有设置参数值是GL_SHININESS,才能使用非向量版本。 + glMaterialfv(GL_FRONT, GL_SPECULAR, mat_specular); + glMaterialfv(GL_FRONT, GL_SHININESS, mat_shininess); + glMaterialfv(GL_FRONT, GL_DIFFUSE, lmodel_ambient); + glLightModelfv(GL_LIGHT_MODEL_AMBIENT, lmodel_ambient); +} + +void material_moon() +{ + GLfloat mat_specular[] = { 1.0,0,0,0.0,1.0 }; + GLfloat mat_shininess[] = { 50.0 }; + GLfloat lmodel_ambient[] = { 1.0,1.0,0.0,1.0 }; + GLfloat white_light[] = { 1.0,1.0,1.0,1.0 }; + + glMaterialfv(GL_FRONT, GL_SPECULAR, mat_specular); + glMaterialfv(GL_FRONT, GL_SHININESS, mat_shininess); + glMaterialfv(GL_FRONT, GL_DIFFUSE, lmodel_ambient); + glLightModelfv(GL_LIGHT_MODEL_AMBIENT, lmodel_ambient); +} + +void material_earth() +{ + GLfloat mat_specular[] = { 1.0, 0.0, 0.0, 1.0 }; + GLfloat mat_shininess[] = { 50.0 }; + GLfloat lmodel_ambient[] = { 0.1,0.2,0.6,1.0 }; + GLfloat white_light[] = { 1.0, 1.0,1.0, 1.0 }; + + + glMaterialfv(GL_FRONT, GL_SPECULAR, mat_specular); + glMaterialfv(GL_FRONT, GL_SHININESS, mat_shininess); + glMaterialfv(GL_FRONT, GL_DIFFUSE, lmodel_ambient); + glLightModelfv(GL_LIGHT_MODEL_AMBIENT, lmodel_ambient); +} + +void sun() +{ + glPushMatrix(); + material_sun(); + glTranslatef(-15, 0, 0); + glRotatef((GLfloat)day, 0.0, 1.0, 0.0);//太阳自转 + glutSolidSphere(10, 200, 200); //画球体 + glPopMatrix(); +} + +void earth() +{ + glPushMatrix(); + material_earth(); + glTranslatef(-15, 0, 0); + glRotatef((GLfloat)year, aix_x, aix_y, aix_z); + glTranslatef(15, 0, 0); + glTranslatef(-2, 0, 0); + glRotatef((GLfloat)day, 0.0, 1.0, 0.0); + glTranslatef(2, 0, 0); + glutSolidSphere(1.0, 20, 16); + material_moon(); + glRotatef(month / 100, 0.0, 0.0, 1.0); + glTranslatef(2, 0.0, 0.0); + glutSolidSphere(0.3, 10, 10); + glPopMatrix(); +} + +void display(void) +{ + lPosition(); + + glClear(GL_COLOR_BUFFER_BIT | GL_DEPTH_BUFFER_BIT); + //可以用|运算符组合不同的缓冲标志位,表明要清除的缓冲,上述表示要清除颜色缓冲以及深度缓冲,可以使用以下标志位 + //GL_COLOR_BUFFER_BIT:当前可写的颜色缓冲 + //GL_DEPTH_BUFFER_BIT:深度缓冲 + //GL_ACCUM_BUFFER_BIT:累积缓冲 + //GL_STENCIL_BUFFER_BIT:模板缓冲 + + sun(); + earth(); + + Rotate(); + glutSwapBuffers(); //交换两个缓冲区指针 +} + + +void myidle() +{ + day += 10.0; + if (day >= 360) + day = day - 360; + glutPostRedisplay(); +} + +void Rotate() //设置地球的公转周期 +{ + + // year=(year+0.8)%360; + year += 0.08; + if (year >= 360) + year -= 360; + glutPostRedisplay(); + month += 0.03; + if (month >= 360) + month -= 360; +} + +void reshape(int w, int h) +{ + glViewport(0, 0, (GLsizei)w, (GLsizei)h); + glMatrixMode(GL_PROJECTION); + glLoadIdentity(); + gluPerspective(angle, (GLfloat)w / (GLfloat)h, 1.0, 200.0); + glMatrixMode(GL_MODELVIEW); + glLoadIdentity(); + glTranslated(0.0, 0.0, -50.0); +} +int main(int argc, char** argv) +{ + cout << argc << endl; + cout << &argc << endl; + + for (int i = 0; i < argc; i++) + { + cout << *argv[i] << endl; + } + + glutInit(&argc, argv); + glutInitDisplayMode(GLUT_DOUBLE | GLUT_RGB | GLUT_DEPTH); + glutInitWindowSize(800, 600); + glutInitWindowPosition(100, 100); + glutCreateWindow("earth system"); + init(); + glutDisplayFunc(display); + glutReshapeFunc(reshape); + glutIdleFunc(myidle); + glutMainLoop(); + return 0; +} \ No newline at end of file diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project02/result1.jpg" "b/21951468\345\274\240\351\233\250\350\226\207/Project02/result1.jpg" new file mode 100644 index 00000000..63ba9df9 Binary files /dev/null and "b/21951468\345\274\240\351\233\250\350\226\207/Project02/result1.jpg" differ diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project02/result2.jpg" "b/21951468\345\274\240\351\233\250\350\226\207/Project02/result2.jpg" new file mode 100644 index 00000000..5a42618a Binary files /dev/null and "b/21951468\345\274\240\351\233\250\350\226\207/Project02/result2.jpg" differ diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project02/result3.jpg" "b/21951468\345\274\240\351\233\250\350\226\207/Project02/result3.jpg" new file mode 100644 index 00000000..63ba9df9 Binary files /dev/null and "b/21951468\345\274\240\351\233\250\350\226\207/Project02/result3.jpg" differ diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project03/ObjLoader.cpp" "b/21951468\345\274\240\351\233\250\350\226\207/Project03/ObjLoader.cpp" new file mode 100644 index 00000000..b5acd63c --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project03/ObjLoader.cpp" @@ -0,0 +1,288 @@ +#include "ObjLoader.h" +#include +#include +using namespace std; + +//GLfloat m = 1.0f; + +ObjLoader::ObjLoader(string filename) +{ + string line; + fstream f; + + f.open(filename, ios::in); + + if (!f.is_open()){ + cout << "Something Went Wrong When Opening Objfiles" << endl; + } + + while (!f.eof()){ + + getline(f, line); + + vectorparameters; + + string tailMark = " "; + + string ans = ""; + + line = line.append(tailMark); + + for (int i = 0; i < line.length(); i++) { + + char ch = line[i]; + if (ch != ' ') { + ans+=ch; + } + else { + parameters.push_back(ans); + ans = ""; + } + } + + //cout << parameters.size() << endl; + + if (parameters.size() != 4) { + cout << "the size is not correct" << endl; + } + + else { + + if (parameters[0] == "v") { + + vectorPoint; + + for (int i = 1; i < 4; i++) { + + GLfloat xyz = atof(parameters[i].c_str()); + + Point.push_back(xyz); + } + + vSets.push_back(Point); + } + + else if (parameters[0] == "f") { + + vectorvIndexSets; + + for (int i = 1; i < 4; i++){ + string x = parameters[i]; + string ans = ""; + for (int j = 0; j < x.length(); j++) { + char ch = x[j]; + if (ch != '/') { + ans += ch; + } + else { + break; + } + } + GLint index = atof(ans.c_str()); + index = index--; + vIndexSets.push_back(index); + } + + fSets.push_back(vIndexSets); + } + + /*else if (parameters[0] == "vn") { + vectorvnValueSets; + for (int i = 1; i < 4; i++) { + GLfloat vnxyz = atof(parameters[i].c_str()); + vnValueSets.push_back(vnxyz); + } + vnSets.push_back(vnValueSets); + } + + else if (parameters[0] == "vt") { + vectorvtValueSets; + for (int i = 1; i < 4; i++) { + GLfloat vnxyz = atof(parameters[i].c_str()); + vtValueSets.push_back(vnxyz); + } + vtSets.push_back(vtValueSets); + }*/ + + } + } + f.close(); +} + +//void ObjLoader::Init() +//{ +// lastFrameTime = glutGet(GLUT_ELAPSED_TIME); +// animationLastingTime = 0; +//} +// +//GLfloat morphRadis(vector>x) { +// GLfloat maxL = 0.0f; +// for (int i = 0; i < x.size(); i++) +// { +// GLfloat vertex[3]; +// vertex[0] = (x[i])[0]; +// vertex[1] = (x[i])[1]; +// vertex[2] = (x[i])[2]; +// +// GLfloat L = sqrt(vertex[0] * vertex[0] + vertex[1] * vertex[1] + vertex[2] * vertex[2]); +// if (L > maxL) { +// maxL = L; +// } +// } +// +// return maxL; +//} + + + +void ObjLoader::Draw(){ + + //GLfloat morphR = morphRadis(vSets); + //cout << morphR << endl; + + //const GLint animationEndTime = 4000; + + //GLint currentFrameTime = glutGet(GLUT_ELAPSED_TIME); + + //animationLastingTime += currentFrameTime - lastFrameTime; + + /*GLfloat step = (GLfloat)animationLastingTime / animationEndTime; + + if (step > 1.0f) { + step = 1.0f; + glutSolidSphere(morphR, 40, 50); + }*/ + + glBegin(GL_TRIANGLES); + + for (int i = 0; i < fSets.size(); i++) { + + GLfloat VN[3]; + + //three vertex represrnt a surface + GLfloat SV1[3]; + GLfloat SV2[3]; + GLfloat SV3[3]; + + /*GLfloat EV1[3]; + GLfloat EV2[3]; + GLfloat EV3[3]; + + GLfloat SV1[3]; + GLfloat SV2[3]; + GLfloat SV3[3];*/ + + if ((fSets[i]).size() != 3) { + cout << "the fSetsets_Size is not correct" << endl; + } + + else { + + GLint firstVertexIndex = (fSets[i])[0]; + GLint secondVertexIndex = (fSets[i])[1]; + GLint thirdVertexIndex = (fSets[i])[2]; + + /*V1[0] = (vSets[firstVertexIndex])[0]; + V1[1] = (vSets[firstVertexIndex])[1]; + V1[2] = (vSets[firstVertexIndex])[2]; + + V2[0] = (vSets[secondVertexIndex])[0]; + V2[1] = (vSets[secondVertexIndex])[1]; + V2[2] = (vSets[secondVertexIndex])[2]; + + V3[0] = (vSets[thirdVertexIndex])[0]; + V3[1] = (vSets[thirdVertexIndex])[1]; + V3[2] = (vSets[thirdVertexIndex])[2];*/ + SV1[0] = (vSets[firstVertexIndex])[0]; + SV1[1] = (vSets[firstVertexIndex])[1]; + SV1[2] = (vSets[firstVertexIndex])[2]; + + SV2[0] = (vSets[secondVertexIndex])[0]; + SV2[1] = (vSets[secondVertexIndex])[1]; + SV2[2] = (vSets[secondVertexIndex])[2]; + + SV3[0] = (vSets[thirdVertexIndex])[0]; + SV3[1] = (vSets[thirdVertexIndex])[1]; + SV3[2] = (vSets[thirdVertexIndex])[2]; + + /*GLfloat lv1 = sqrt(V1[0] * V1[0] + V1[1] * V1[1] + V1[2] * V1[2]); + GLfloat lv2 = sqrt(V2[0] * V2[0] + V2[1] * V2[1] + V2[2] * V2[2]); + GLfloat lv3 = sqrt(V3[0] * V3[0] + V3[1] * V3[1] + V3[2] * V3[2]); + + GLfloat proportion1 = lv1 / morphR; + GLfloat proportion2 = lv2 / morphR; + GLfloat proportion3 = lv3 / morphR; + + EV1[0] = V1[0] / proportion1; + EV1[1] = V1[1] / proportion1; + EV1[2] = V1[2] / proportion1; + + EV2[0] = V2[0] / proportion2; + EV2[1] = V2[1] / proportion2; + EV2[2] = V2[2] / proportion2; + + EV3[0] = V3[0] / proportion3; + EV3[1] = V3[1] / proportion3; + EV3[2] = V3[2] / proportion3; + + SV1[0] = EV1[0] * step + (1 - step) * V1[0]; + SV1[1] = EV1[1] * step + (1 - step) * V1[1]; + SV1[2] = EV1[2] * step + (1 - step) * V1[2]; + + SV2[0] = EV2[0] * step + (1 - step) * V2[0]; + SV2[1] = EV2[1] * step + (1 - step) * V2[1]; + SV2[2] = EV2[2] * step + (1 - step) * V2[2]; + + SV3[0] = EV3[0] * step + (1 - step) * V3[0]; + SV3[1] = EV3[1] * step + (1 - step) * V3[1]; + SV3[2] = EV3[2] * step + (1 - step) * V3[2];*/ + + //if there is no vn in the objfile + //if (vnSets.size() == 0) { + GLfloat vec1[3], vec2[3], vec3[3]; + //(x2-x1,y2-y1,z2-z1) + vec1[0] = SV1[0] - SV2[0]; + vec1[1] = SV1[1] - SV2[1]; + vec1[2] = SV1[2] - SV2[2]; + + //(x3-x2,y3-y2,z3-z2) + vec2[0] = SV1[0] - SV3[0]; + vec2[1] = SV1[1] - SV3[1]; + vec2[2] = SV1[2] - SV3[2]; + + //(x3-x1,y3-y1,z3-z1) + vec3[0] = vec1[1] * vec2[2] - vec1[2] * vec2[1]; + vec3[1] = vec2[0] * vec1[2] - vec2[2] * vec1[0]; + vec3[2] = vec2[1] * vec1[0] - vec2[0] * vec1[1]; + + GLfloat D = sqrt(pow(vec3[0], 2) + pow(vec3[1], 2) + pow(vec3[2], 2)); + + VN[0] = vec3[0] / D; + VN[1] = vec3[1] / D; + VN[2] = vec3[2] / D; + + glNormal3f(VN[0], VN[1], VN[2]); + //} + + //if already have vn + /*else { + if (i < vnSets.size()) { + VN[0] = (vnSets[i])[0]; + VN[1] = (vnSets[i])[1]; + VN[2] = (vnSets[i])[2]; + glNormal3f(VN[0], VN[1], VN[2]); + } + }*/ + + glVertex3f(SV1[0], SV1[1], SV1[2]); + glVertex3f(SV2[0], SV2[1], SV2[2]); + glVertex3f(SV3[0], SV3[1], SV3[2]); + + } + } + + glEnd(); + + //lastFrameTime = currentFrameTime; +} + diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project03/ObjLoader.h" "b/21951468\345\274\240\351\233\250\350\226\207/Project03/ObjLoader.h" new file mode 100644 index 00000000..e2a79735 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project03/ObjLoader.h" @@ -0,0 +1,26 @@ +#include "Dependencies\glew\glew.h" +#include "Dependencies\freeglut\freeglut.h" +#include +#include +using namespace std; + +class ObjLoader{ + +public: + + ObjLoader(string filename); + //void Init(); + void Draw(); + +private: + + //GLint lastFrameTime; + //GLint animationLastingTime; + + vector>vSets; + vector>fSets; + //vector>vnSets; + //vector>vtSets; + +}; + diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project03/main.cpp" "b/21951468\345\274\240\351\233\250\350\226\207/Project03/main.cpp" new file mode 100644 index 00000000..e347a1c2 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project03/main.cpp" @@ -0,0 +1,85 @@ +#include "ObjLoader.h" +using namespace std; + +string filePath = "data/monkey.obj"; +ObjLoader objModel = ObjLoader(filePath); +static float c = 3.1415926 / 180.0f; +static float r = 1.0f; +static int degree = 90; +static int oldPosY = -1; +static int oldPosX = -1; + +void setLightRes() { + GLfloat lightPosition[] = { 0.0f, 0.0f, 1.0f, 0.0f }; + glLightfv(GL_LIGHT0, GL_POSITION, lightPosition); + glEnable(GL_LIGHTING); //ùԴ + glEnable(GL_LIGHT0); //ʹָƹ +} + +void init() { + glutInitDisplayMode(GLUT_DOUBLE | GLUT_RGB | GLUT_DEPTH); + glutInitWindowSize(500, 500); + glutCreateWindow("ObjLoader"); + glEnable(GL_DEPTH_TEST); + glShadeModel(GL_SMOOTH); + setLightRes(); + glEnable(GL_DEPTH_TEST); + //objModel.Init(); +} + +void display() +{ + glColor3f(1.0, 1.0, 1.0); + glClear(GL_COLOR_BUFFER_BIT | GL_DEPTH_BUFFER_BIT); + glMatrixMode(GL_MODELVIEW); + glLoadIdentity(); + glTranslatef(0.0f, 0.0f, -5.0f); + setLightRes(); + glPushMatrix(); + gluLookAt(r*cos(c*degree), 0, r*sin(c*degree), 0.0f, 0.0f, 0.0f, 0.0f, 1.0f, 0.0f); + objModel.Draw(); + glPopMatrix(); + glutSwapBuffers(); +} + +void reshape(int width, int height) +{ + glViewport(0, 0, width, height); + glMatrixMode(GL_PROJECTION); + glLoadIdentity(); + gluPerspective(60.0f, (GLdouble)width / (GLdouble)height, 1.0f, 200.0f); + glMatrixMode(GL_MODELVIEW); +} + +void moseMove(int button, int state, int x, int y) +{ + if (state == GLUT_DOWN) { + oldPosX = x; oldPosY = y; + } +} + +void changeViewPoint(int x, int y) +{ + int temp = x - oldPosX; + degree += temp; + oldPosX = x; + oldPosY = y; +} + +void myIdle() +{ + glutPostRedisplay(); +} + +int main(int argc, char* argv[]) +{ + glutInit(&argc, argv); + init(); + glutDisplayFunc(display); + glutReshapeFunc(reshape); + glutMouseFunc(moseMove); + glutMotionFunc(changeViewPoint); + glutIdleFunc(myIdle); + glutMainLoop(); + return 0; +} diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project03/result1.png" "b/21951468\345\274\240\351\233\250\350\226\207/Project03/result1.png" new file mode 100644 index 00000000..33fb02f0 Binary files /dev/null and "b/21951468\345\274\240\351\233\250\350\226\207/Project03/result1.png" differ diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project03/result2.png" "b/21951468\345\274\240\351\233\250\350\226\207/Project03/result2.png" new file mode 100644 index 00000000..5b07b276 Binary files /dev/null and "b/21951468\345\274\240\351\233\250\350\226\207/Project03/result2.png" differ diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project03/result3.png" "b/21951468\345\274\240\351\233\250\350\226\207/Project03/result3.png" new file mode 100644 index 00000000..04655e2c Binary files /dev/null and "b/21951468\345\274\240\351\233\250\350\226\207/Project03/result3.png" differ diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Gizmos.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Gizmos.meta" new file mode 100644 index 00000000..095f4436 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Gizmos.meta" @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: e289aca97cd024d82bb614bddb300e62 +folderAsset: yes +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Gizmos/Cinemachine.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Gizmos/Cinemachine.meta" new file mode 100644 index 00000000..717ca432 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Gizmos/Cinemachine.meta" @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: b7b5042a032bc4f40940a2c9a376e9fc +folderAsset: yes +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Gizmos/Cinemachine/cm_logo_lg.png" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Gizmos/Cinemachine/cm_logo_lg.png" new file mode 100644 index 00000000..47f19039 Binary files /dev/null and "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Gizmos/Cinemachine/cm_logo_lg.png" differ diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Gizmos/Cinemachine/cm_logo_lg.png.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Gizmos/Cinemachine/cm_logo_lg.png.meta" new file mode 100644 index 00000000..6ced04e4 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Gizmos/Cinemachine/cm_logo_lg.png.meta" @@ -0,0 +1,88 @@ +fileFormatVersion: 2 +guid: 01ea762b08c8b46ef921e000a8e0e145 +TextureImporter: + fileIDToRecycleName: {} + externalObjects: {} + serializedVersion: 9 + mipmaps: + mipMapMode: 0 + enableMipMap: 1 + sRGBTexture: 1 + linearTexture: 0 + fadeOut: 0 + borderMipMap: 0 + mipMapsPreserveCoverage: 0 + alphaTestReferenceValue: 0.5 + mipMapFadeDistanceStart: 1 + mipMapFadeDistanceEnd: 3 + bumpmap: + convertToNormalMap: 0 + externalNormalMap: 0 + heightScale: 0.25 + normalMapFilter: 0 + isReadable: 0 + streamingMipmaps: 0 + streamingMipmapsPriority: 0 + grayScaleToAlpha: 0 + generateCubemap: 6 + cubemapConvolution: 0 + seamlessCubemap: 0 + textureFormat: 1 + maxTextureSize: 2048 + textureSettings: + serializedVersion: 2 + filterMode: -1 + aniso: -1 + mipBias: -100 + wrapU: -1 + wrapV: -1 + wrapW: -1 + nPOTScale: 1 + lightmap: 0 + compressionQuality: 50 + spriteMode: 0 + spriteExtrude: 1 + spriteMeshType: 1 + alignment: 0 + spritePivot: {x: 0.5, y: 0.5} + spritePixelsToUnits: 100 + spriteBorder: {x: 0, y: 0, z: 0, w: 0} + spriteGenerateFallbackPhysicsShape: 1 + alphaUsage: 1 + alphaIsTransparency: 0 + spriteTessellationDetail: -1 + textureType: 0 + textureShape: 1 + singleChannelComponent: 0 + maxTextureSizeSet: 0 + compressionQualitySet: 0 + textureFormatSet: 0 + platformSettings: + - serializedVersion: 2 + buildTarget: DefaultTexturePlatform + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 0 + spriteSheet: + serializedVersion: 2 + sprites: [] + outline: [] + physicsShape: [] + bones: [] + spriteID: + vertices: [] + indices: + edges: [] + weights: [] + spritePackingTag: + pSDRemoveMatte: 0 + pSDShowRemoveMatteOption: 0 + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting.meta" new file mode 100644 index 00000000..c00296f4 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting.meta" @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 5b37cab98afac4ca696e7a5c19dec454 +folderAsset: yes +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Animations.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Animations.meta" new file mode 100644 index 00000000..02ab75f0 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Animations.meta" @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 0c15162713ab93f49ab6d3fbe22edf20 +folderAsset: yes +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Animations/Controllers.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Animations/Controllers.meta" new file mode 100644 index 00000000..bd2e92b6 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Animations/Controllers.meta" @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 6e6da968c73a03644973d496103c766e +folderAsset: yes +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Animations/Controllers/KartController.controller" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Animations/Controllers/KartController.controller" new file mode 100644 index 00000000..cdaa9eb3 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Animations/Controllers/KartController.controller" @@ -0,0 +1,72 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!91 &9100000 +AnimatorController: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_Name: KartController + serializedVersion: 5 + m_AnimatorParameters: [] + m_AnimatorLayers: + - serializedVersion: 5 + m_Name: Base Layer + m_StateMachine: {fileID: 1107178487441549080} + m_Mask: {fileID: 31900000, guid: 0b4fa3eb165fa044c89f540d8b738a4f, type: 2} + m_Motions: [] + m_Behaviours: [] + m_BlendingMode: 0 + m_SyncedLayerIndex: -1 + m_DefaultWeight: 0 + m_IKPass: 0 + m_SyncedLayerAffectsTiming: 0 + m_Controller: {fileID: 9100000} +--- !u!1102 &1102816081117198562 +AnimatorState: + serializedVersion: 5 + m_ObjectHideFlags: 1 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_Name: KartIdle + m_Speed: 1 + m_CycleOffset: 0 + m_Transitions: [] + m_StateMachineBehaviours: [] + m_Position: {x: 50, y: 50, z: 0} + m_IKOnFeet: 0 + m_WriteDefaultValues: 0 + m_Mirror: 0 + m_SpeedParameterActive: 0 + m_MirrorParameterActive: 0 + m_CycleOffsetParameterActive: 0 + m_TimeParameterActive: 0 + m_Motion: {fileID: 7400000, guid: 379c82acbb20c4747b42575fb9e5011e, type: 3} + m_Tag: + m_SpeedParameter: + m_MirrorParameter: + m_CycleOffsetParameter: + m_TimeParameter: +--- !u!1107 &1107178487441549080 +AnimatorStateMachine: + serializedVersion: 5 + m_ObjectHideFlags: 1 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_Name: Base Layer + m_ChildStates: + - serializedVersion: 1 + m_State: {fileID: 1102816081117198562} + m_Position: {x: 372, y: 120, z: 0} + m_ChildStateMachines: [] + m_AnyStateTransitions: [] + m_EntryTransitions: [] + m_StateMachineTransitions: {} + m_StateMachineBehaviours: [] + m_AnyStatePosition: {x: 50, y: 20, z: 0} + m_EntryPosition: {x: 50, y: 120, z: 0} + m_ExitPosition: {x: 800, y: 120, z: 0} + m_ParentStateMachinePosition: {x: 800, y: 20, z: 0} + m_DefaultState: {fileID: 1102816081117198562} diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Animations/Controllers/KartController.controller.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Animations/Controllers/KartController.controller.meta" new file mode 100644 index 00000000..f3467789 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Animations/Controllers/KartController.controller.meta" @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 678b1708dcb87c04994825ee7d83f0b9 +NativeFormatImporter: + externalObjects: {} + mainObjectFileID: 9100000 + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Animations/Controllers/PlayerController.controller" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Animations/Controllers/PlayerController.controller" new file mode 100644 index 00000000..9d66806e --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Animations/Controllers/PlayerController.controller" @@ -0,0 +1,204 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!91 &9100000 +AnimatorController: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_Name: PlayerController + serializedVersion: 5 + m_AnimatorParameters: + - m_Name: Steering + m_Type: 1 + m_DefaultFloat: 0 + m_DefaultInt: 0 + m_DefaultBool: 0 + m_Controller: {fileID: 9100000} + - m_Name: Grounded + m_Type: 4 + m_DefaultFloat: 0 + m_DefaultInt: 0 + m_DefaultBool: 1 + m_Controller: {fileID: 9100000} + m_AnimatorLayers: + - serializedVersion: 5 + m_Name: Base Layer + m_StateMachine: {fileID: 1107769487026546180} + m_Mask: {fileID: 0} + m_Motions: [] + m_Behaviours: [] + m_BlendingMode: 0 + m_SyncedLayerIndex: -1 + m_DefaultWeight: 0 + m_IKPass: 1 + m_SyncedLayerAffectsTiming: 0 + m_Controller: {fileID: 9100000} +--- !u!206 &206057229351317032 +BlendTree: + m_ObjectHideFlags: 1 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_Name: DrivingBlendTree + m_Childs: + - serializedVersion: 2 + m_Motion: {fileID: 7400000, guid: 1c78222edbf3c0f4280c1289cc46f053, type: 3} + m_Threshold: -1 + m_Position: {x: 0, y: 0} + m_TimeScale: 1 + m_CycleOffset: 0 + m_DirectBlendParameter: Steering + m_Mirror: 0 + - serializedVersion: 2 + m_Motion: {fileID: 7400000, guid: 078f73b46517318428ecaf8e7207124c, type: 3} + m_Threshold: 0 + m_Position: {x: 0, y: 0} + m_TimeScale: 1 + m_CycleOffset: 0 + m_DirectBlendParameter: Steering + m_Mirror: 0 + - serializedVersion: 2 + m_Motion: {fileID: 7400002, guid: 1c78222edbf3c0f4280c1289cc46f053, type: 3} + m_Threshold: 1 + m_Position: {x: 0, y: 0} + m_TimeScale: 1 + m_CycleOffset: 0 + m_DirectBlendParameter: Steering + m_Mirror: 0 + m_BlendParameter: Steering + m_BlendParameterY: Blend + m_MinThreshold: -1 + m_MaxThreshold: 1 + m_UseAutomaticThresholds: 0 + m_NormalizedBlendValues: 0 + m_BlendType: 0 +--- !u!1101 &1101977207012705682 +AnimatorStateTransition: + m_ObjectHideFlags: 1 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_Name: + m_Conditions: + - m_ConditionMode: 1 + m_ConditionEvent: Grounded + m_EventTreshold: 0 + m_DstStateMachine: {fileID: 0} + m_DstState: {fileID: 1102803197879693054} + m_Solo: 0 + m_Mute: 0 + m_IsExit: 0 + serializedVersion: 3 + m_TransitionDuration: 0.05 + m_TransitionOffset: 0 + m_ExitTime: 0.0000002465035 + m_HasExitTime: 0 + m_HasFixedDuration: 1 + m_InterruptionSource: 3 + m_OrderedInterruption: 1 + m_CanTransitionToSelf: 1 +--- !u!1101 &1101991044501377384 +AnimatorStateTransition: + m_ObjectHideFlags: 1 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_Name: + m_Conditions: + - m_ConditionMode: 2 + m_ConditionEvent: Grounded + m_EventTreshold: 0 + m_DstStateMachine: {fileID: 0} + m_DstState: {fileID: 1102893502852399472} + m_Solo: 0 + m_Mute: 0 + m_IsExit: 0 + serializedVersion: 3 + m_TransitionDuration: 0.05 + m_TransitionOffset: 0 + m_ExitTime: 0.76486117 + m_HasExitTime: 0 + m_HasFixedDuration: 1 + m_InterruptionSource: 4 + m_OrderedInterruption: 1 + m_CanTransitionToSelf: 1 +--- !u!1102 &1102803197879693054 +AnimatorState: + serializedVersion: 5 + m_ObjectHideFlags: 1 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_Name: Driving + m_Speed: 1 + m_CycleOffset: 0 + m_Transitions: + - {fileID: 1101991044501377384} + m_StateMachineBehaviours: [] + m_Position: {x: 50, y: 50, z: 0} + m_IKOnFeet: 0 + m_WriteDefaultValues: 1 + m_Mirror: 0 + m_SpeedParameterActive: 0 + m_MirrorParameterActive: 0 + m_CycleOffsetParameterActive: 0 + m_TimeParameterActive: 0 + m_Motion: {fileID: 206057229351317032} + m_Tag: + m_SpeedParameter: + m_MirrorParameter: + m_CycleOffsetParameter: + m_TimeParameter: +--- !u!1102 &1102893502852399472 +AnimatorState: + serializedVersion: 5 + m_ObjectHideFlags: 1 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_Name: PlayerJump + m_Speed: 0.01 + m_CycleOffset: 0 + m_Transitions: + - {fileID: 1101977207012705682} + m_StateMachineBehaviours: [] + m_Position: {x: 50, y: 50, z: 0} + m_IKOnFeet: 0 + m_WriteDefaultValues: 1 + m_Mirror: 0 + m_SpeedParameterActive: 0 + m_MirrorParameterActive: 0 + m_CycleOffsetParameterActive: 0 + m_TimeParameterActive: 0 + m_Motion: {fileID: 7400000, guid: 9f825f613a00f714dae086f20a4a4171, type: 3} + m_Tag: + m_SpeedParameter: + m_MirrorParameter: + m_CycleOffsetParameter: + m_TimeParameter: +--- !u!1107 &1107769487026546180 +AnimatorStateMachine: + serializedVersion: 5 + m_ObjectHideFlags: 1 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_Name: Base Layer + m_ChildStates: + - serializedVersion: 1 + m_State: {fileID: 1102803197879693054} + m_Position: {x: 420, y: 120, z: 0} + - serializedVersion: 1 + m_State: {fileID: 1102893502852399472} + m_Position: {x: 420, y: 0, z: 0} + m_ChildStateMachines: [] + m_AnyStateTransitions: [] + m_EntryTransitions: [] + m_StateMachineTransitions: {} + m_StateMachineBehaviours: [] + m_AnyStatePosition: {x: 50, y: 20, z: 0} + m_EntryPosition: {x: 50, y: 120, z: 0} + m_ExitPosition: {x: 800, y: 120, z: 0} + m_ParentStateMachinePosition: {x: 800, y: 20, z: 0} + m_DefaultState: {fileID: 1102803197879693054} diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Animations/Controllers/PlayerController.controller.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Animations/Controllers/PlayerController.controller.meta" new file mode 100644 index 00000000..cff683d9 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Animations/Controllers/PlayerController.controller.meta" @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: ab458ec2a2353d24383fa19e3c111939 +NativeFormatImporter: + externalObjects: {} + mainObjectFileID: 9100000 + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Animations/KartIdle.FBX" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Animations/KartIdle.FBX" new file mode 100644 index 00000000..ab9f2251 Binary files /dev/null and "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Animations/KartIdle.FBX" differ diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Animations/KartIdle.FBX.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Animations/KartIdle.FBX.meta" new file mode 100644 index 00000000..9dbe3897 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Animations/KartIdle.FBX.meta" @@ -0,0 +1,173 @@ +fileFormatVersion: 2 +guid: 379c82acbb20c4747b42575fb9e5011e +ModelImporter: + serializedVersion: 23 + fileIDToRecycleName: + 100000: Kart_Body + 100002: //RootNode + 100004: KartBase + 100006: KartEngine + 100008: KartEngineEND + 100010: KartFrontWheelLeft + 100012: KartFrontWheelRight + 100014: KartRearWheels + 100016: KartSilencer + 100018: KartSilencerEND + 100020: KartSteer + 100022: Root + 100024: ControllerFrontWheel_Left + 100026: ControllerFrontWheel_Right + 100028: ControllerRearWheels + 100030: Controllers + 400000: Kart_Body + 400002: //RootNode + 400004: KartBase + 400006: KartEngine + 400008: KartEngineEND + 400010: KartFrontWheelLeft + 400012: KartFrontWheelRight + 400014: KartRearWheels + 400016: KartSilencer + 400018: KartSilencerEND + 400020: KartSteer + 400022: Root + 400024: ControllerFrontWheel_Left + 400026: ControllerFrontWheel_Right + 400028: ControllerRearWheels + 400030: Controllers + 2100000: KartRacerMaterial + 2100002: lambert1 + 2300000: ControllerFrontWheel_Left + 2300002: ControllerFrontWheel_Right + 2300004: ControllerRearWheels + 3300000: ControllerFrontWheel_Left + 3300002: ControllerFrontWheel_Right + 3300004: ControllerRearWheels + 4300000: Kart_Body + 4300002: ControllerRearWheels + 4300004: ControllerFrontWheel_Right + 4300006: ControllerFrontWheel_Left + 7400000: KartIdle + 9500000: //RootNode + 13700000: Kart_Body + 2186277476908879412: ImportLogs + externalObjects: + - first: + type: UnityEngine:Material + assembly: UnityEngine.CoreModule + name: KartRacerMaterial + second: {fileID: 2100000, guid: 5304db1f3e113764fae919908740f4ba, type: 2} + materials: + importMaterials: 0 + materialName: 1 + materialSearch: 2 + materialLocation: 0 + animations: + legacyGenerateAnimations: 4 + bakeSimulation: 0 + resampleCurves: 1 + optimizeGameObjects: 0 + motionNodeName: + rigImportErrors: + rigImportWarnings: + animationImportErrors: + animationImportWarnings: + animationRetargetingWarnings: + animationDoRetargetingWarnings: 0 + importAnimatedCustomProperties: 0 + importConstraints: 0 + animationCompression: 0 + animationRotationError: 0.5 + animationPositionError: 0.5 + animationScaleError: 0.5 + animationWrapMode: 0 + extraExposedTransformPaths: [] + extraUserProperties: [] + clipAnimations: + - serializedVersion: 16 + name: KartIdle + takeName: Take 001 + firstFrame: 0 + lastFrame: 200 + wrapMode: 0 + orientationOffsetY: 0 + level: 0 + cycleOffset: 0 + loop: 0 + hasAdditiveReferencePose: 0 + loopTime: 1 + loopBlend: 0 + loopBlendOrientation: 0 + loopBlendPositionY: 0 + loopBlendPositionXZ: 0 + keepOriginalOrientation: 0 + keepOriginalPositionY: 1 + keepOriginalPositionXZ: 0 + heightFromFeet: 0 + mirror: 0 + bodyMask: 01000000010000000100000001000000010000000100000001000000010000000100000001000000010000000100000001000000 + curves: [] + events: [] + transformMask: [] + maskType: 3 + maskSource: {instanceID: 0} + additiveReferencePoseFrame: 0 + isReadable: 1 + meshes: + lODScreenPercentages: [] + globalScale: 1 + meshCompression: 0 + addColliders: 0 + useSRGBMaterialColor: 1 + importVisibility: 1 + importBlendShapes: 1 + importCameras: 1 + importLights: 1 + swapUVChannels: 0 + generateSecondaryUV: 0 + useFileUnits: 1 + optimizeMeshForGPU: 1 + keepQuads: 0 + weldVertices: 1 + preserveHierarchy: 0 + indexFormat: 0 + secondaryUVAngleDistortion: 8 + secondaryUVAreaDistortion: 15.000001 + secondaryUVHardAngle: 88 + secondaryUVPackMargin: 4 + useFileScale: 1 + previousCalculatedGlobalScale: 0.01 + hasPreviousCalculatedGlobalScale: 1 + tangentSpace: + normalSmoothAngle: 60 + normalImportMode: 0 + tangentImportMode: 3 + normalCalculationMode: 4 + legacyComputeAllNormalsFromSmoothingGroupsWhenMeshHasBlendShapes: 0 + blendShapeNormalImportMode: 1 + normalSmoothingSource: 0 + importAnimation: 1 + copyAvatar: 1 + humanDescription: + serializedVersion: 2 + human: [] + skeleton: [] + armTwist: 0.5 + foreArmTwist: 0.5 + upperLegTwist: 0.5 + legTwist: 0.5 + armStretch: 0.05 + legStretch: 0.05 + feetSpacing: 0 + rootMotionBoneName: Root + hasTranslationDoF: 0 + hasExtraRoot: 0 + skeletonHasParents: 1 + lastHumanDescriptionAvatarSource: {fileID: 9000000, guid: d3aa50a8114db7a4e95c5cb29a283ac4, + type: 3} + animationType: 2 + humanoidOversampling: 1 + additionalBone: 0 + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Animations/PlayerIdle.FBX" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Animations/PlayerIdle.FBX" new file mode 100644 index 00000000..1fe713ec Binary files /dev/null and "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Animations/PlayerIdle.FBX" differ diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Animations/PlayerIdle.FBX.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Animations/PlayerIdle.FBX.meta" new file mode 100644 index 00000000..13e49c25 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Animations/PlayerIdle.FBX.meta" @@ -0,0 +1,977 @@ +fileFormatVersion: 2 +guid: 078f73b46517318428ecaf8e7207124c +ModelImporter: + serializedVersion: 23 + fileIDToRecycleName: + 100000: Head + 100002: HeadEND + 100004: Hips + 100006: LeftArm + 100008: LeftCalf + 100010: LeftFoot + 100012: LeftFootEND + 100014: LeftHand + 100016: LeftIndex1 + 100018: LeftIndex2 + 100020: LeftIndex3 + 100022: LeftIndexEND + 100024: LeftLeg + 100026: LeftMiddle1 + 100028: LeftMiddle2 + 100030: LeftMiddle3 + 100032: LeftMiddleEND + 100034: LeftPinky1 + 100036: LeftPinky2 + 100038: LeftPinky3 + 100040: LeftPinkyEND + 100042: LeftRing1 + 100044: LeftRing2 + 100046: LeftRing3 + 100048: LeftRingEND + 100050: LeftShoulder + 100052: LeftThumb1 + 100054: LeftThumb2 + 100056: LeftThumb3 + 100058: LeftThumbEND + 100060: LeftUpperArm + 100062: Neck + 100064: //RootNode + 100066: RightArm + 100068: RightCalf + 100070: RightFoot + 100072: RightFootEND + 100074: RightHand + 100076: RightIndex1 + 100078: RightIndex2 + 100080: RightIndex3 + 100082: RightIndexEND + 100084: RightLeg + 100086: RightMiddle1 + 100088: RightMiddle2 + 100090: RightMiddle3 + 100092: RightMiddleEND + 100094: RightPinky1 + 100096: RightPinky2 + 100098: RightPinky3 + 100100: RightPinkyEND + 100102: RightRing1 + 100104: RightRing2 + 100106: RightRing3 + 100108: RightRingEND + 100110: RightShoulder + 100112: RightThumb1 + 100114: RightThumb2 + 100116: RightThumb3 + 100118: RightThumbEND + 100120: RightUpperArm + 100122: Root1 + 100124: Spine1 + 100126: Spine2 + 100128: Template_Character + 400000: Head + 400002: HeadEND + 400004: Hips + 400006: LeftArm + 400008: LeftCalf + 400010: LeftFoot + 400012: LeftFootEND + 400014: LeftHand + 400016: LeftIndex1 + 400018: LeftIndex2 + 400020: LeftIndex3 + 400022: LeftIndexEND + 400024: LeftLeg + 400026: LeftMiddle1 + 400028: LeftMiddle2 + 400030: LeftMiddle3 + 400032: LeftMiddleEND + 400034: LeftPinky1 + 400036: LeftPinky2 + 400038: LeftPinky3 + 400040: LeftPinkyEND + 400042: LeftRing1 + 400044: LeftRing2 + 400046: LeftRing3 + 400048: LeftRingEND + 400050: LeftShoulder + 400052: LeftThumb1 + 400054: LeftThumb2 + 400056: LeftThumb3 + 400058: LeftThumbEND + 400060: LeftUpperArm + 400062: Neck + 400064: //RootNode + 400066: RightArm + 400068: RightCalf + 400070: RightFoot + 400072: RightFootEND + 400074: RightHand + 400076: RightIndex1 + 400078: RightIndex2 + 400080: RightIndex3 + 400082: RightIndexEND + 400084: RightLeg + 400086: RightMiddle1 + 400088: RightMiddle2 + 400090: RightMiddle3 + 400092: RightMiddleEND + 400094: RightPinky1 + 400096: RightPinky2 + 400098: RightPinky3 + 400100: RightPinkyEND + 400102: RightRing1 + 400104: RightRing2 + 400106: RightRing3 + 400108: RightRingEND + 400110: RightShoulder + 400112: RightThumb1 + 400114: RightThumb2 + 400116: RightThumb3 + 400118: RightThumbEND + 400120: RightUpperArm + 400122: Root1 + 400124: Spine1 + 400126: Spine2 + 400128: Template_Character + 2100000: Template_Character_Material + 4300000: Template_Character + 7400000: PlayerIdle + 9500000: //RootNode + 13700000: Template_Character + 2186277476908879412: ImportLogs + externalObjects: {} + materials: + importMaterials: 0 + materialName: 0 + materialSearch: 1 + materialLocation: 1 + animations: + legacyGenerateAnimations: 4 + bakeSimulation: 0 + resampleCurves: 1 + optimizeGameObjects: 0 + motionNodeName: + rigImportErrors: + rigImportWarnings: + animationImportErrors: + animationImportWarnings: "\nClip 'Take 001' has import animation warnings that + might lower retargeting quality:\nNote: Activate translation DOF on avatar to + improve retargeting quality.\n\t'Spine1' has translation animation that will + be discarded.\n" + animationRetargetingWarnings: + animationDoRetargetingWarnings: 0 + importAnimatedCustomProperties: 0 + importConstraints: 0 + animationCompression: 3 + animationRotationError: 0.5 + animationPositionError: 0.5 + animationScaleError: 0.5 + animationWrapMode: 0 + extraExposedTransformPaths: [] + extraUserProperties: [] + clipAnimations: + - serializedVersion: 16 + name: PlayerIdle + takeName: Take 001 + firstFrame: 1 + lastFrame: 212 + wrapMode: 0 + orientationOffsetY: 0 + level: 0 + cycleOffset: 0 + loop: 0 + hasAdditiveReferencePose: 0 + loopTime: 1 + loopBlend: 1 + loopBlendOrientation: 1 + loopBlendPositionY: 1 + loopBlendPositionXZ: 1 + keepOriginalOrientation: 0 + keepOriginalPositionY: 1 + keepOriginalPositionXZ: 0 + heightFromFeet: 0 + mirror: 0 + bodyMask: 01000000010000000100000001000000010000000100000001000000010000000100000001000000010000000100000001000000 + curves: [] + events: [] + transformMask: [] + maskType: 3 + maskSource: {instanceID: 0} + additiveReferencePoseFrame: 0 + isReadable: 1 + meshes: + lODScreenPercentages: [] + globalScale: 1 + meshCompression: 0 + addColliders: 0 + useSRGBMaterialColor: 1 + importVisibility: 1 + importBlendShapes: 1 + importCameras: 1 + importLights: 1 + swapUVChannels: 0 + generateSecondaryUV: 0 + useFileUnits: 1 + optimizeMeshForGPU: 1 + keepQuads: 0 + weldVertices: 1 + preserveHierarchy: 0 + indexFormat: 0 + secondaryUVAngleDistortion: 8 + secondaryUVAreaDistortion: 15.000001 + secondaryUVHardAngle: 88 + secondaryUVPackMargin: 4 + useFileScale: 1 + previousCalculatedGlobalScale: 0.01 + hasPreviousCalculatedGlobalScale: 1 + tangentSpace: + normalSmoothAngle: 60 + normalImportMode: 0 + tangentImportMode: 3 + normalCalculationMode: 4 + legacyComputeAllNormalsFromSmoothingGroupsWhenMeshHasBlendShapes: 0 + blendShapeNormalImportMode: 1 + normalSmoothingSource: 0 + importAnimation: 1 + copyAvatar: 1 + humanDescription: + serializedVersion: 2 + human: + - boneName: Hips + humanName: Hips + limit: + min: {x: 0, y: 0, z: 0} + max: {x: 0, y: 0, z: 0} + value: {x: 0, y: 0, z: 0} + length: 0 + modified: 0 + - boneName: LeftLeg + humanName: LeftUpperLeg + limit: + min: {x: 0, y: 0, z: 0} + max: {x: 0, y: 0, z: 0} + value: {x: 0, y: 0, z: 0} + length: 0 + modified: 0 + - boneName: RightLeg + humanName: RightUpperLeg + limit: + min: {x: 0, y: 0, z: 0} + max: {x: 0, y: 0, z: 0} + value: {x: 0, y: 0, z: 0} + length: 0 + modified: 0 + - boneName: LeftCalf + humanName: LeftLowerLeg + limit: + min: {x: 0, y: 0, z: 0} + max: {x: 0, y: 0, z: 0} + value: {x: 0, y: 0, z: 0} + length: 0 + modified: 0 + - boneName: RightCalf + humanName: RightLowerLeg + limit: + min: {x: 0, y: 0, z: 0} + max: {x: 0, y: 0, z: 0} + value: {x: 0, y: 0, z: 0} + length: 0 + modified: 0 + - boneName: LeftFoot + humanName: LeftFoot + limit: + min: {x: 0, y: 0, z: 0} + max: {x: 0, y: 0, z: 0} + value: {x: 0, y: 0, z: 0} + length: 0 + modified: 0 + - boneName: RightFoot + humanName: RightFoot + limit: + min: {x: 0, y: 0, z: 0} + max: {x: 0, y: 0, z: 0} + value: {x: 0, y: 0, z: 0} + length: 0 + modified: 0 + - boneName: Spine1 + humanName: Spine + limit: + min: {x: 0, y: 0, z: 0} + max: {x: 0, y: 0, z: 0} + value: {x: 0, y: 0, z: 0} + length: 0 + modified: 0 + - boneName: Spine2 + humanName: Chest + limit: + min: {x: 0, y: 0, z: 0} + max: {x: 0, y: 0, z: 0} + value: {x: 0, y: 0, z: 0} + length: 0 + modified: 0 + - boneName: Neck + humanName: Neck + limit: + min: {x: 0, y: 0, z: 0} + max: {x: 0, y: 0, z: 0} + value: {x: 0, y: 0, z: 0} + length: 0 + modified: 0 + - boneName: Head + humanName: Head + limit: + min: {x: 0, y: 0, z: 0} + max: {x: 0, y: 0, z: 0} + value: {x: 0, y: 0, z: 0} + length: 0 + modified: 0 + - boneName: LeftShoulder + humanName: LeftShoulder + limit: + min: {x: 0, y: 0, z: 0} + max: {x: 0, y: 0, z: 0} + value: {x: 0, y: 0, z: 0} + length: 0 + modified: 0 + - boneName: RightShoulder + humanName: RightShoulder + limit: + min: {x: 0, y: 0, z: 0} + max: {x: 0, y: 0, z: 0} + value: {x: 0, y: 0, z: 0} + length: 0 + modified: 0 + - boneName: LeftArm + humanName: LeftUpperArm + limit: + min: {x: 0, y: 0, z: 0} + max: {x: 0, y: 0, z: 0} + value: {x: 0, y: 0, z: 0} + length: 0 + modified: 0 + - boneName: RightArm + humanName: RightUpperArm + limit: + min: {x: 0, y: 0, z: 0} + max: {x: 0, y: 0, z: 0} + value: {x: 0, y: 0, z: 0} + length: 0 + modified: 0 + - boneName: LeftUpperArm + humanName: LeftLowerArm + limit: + min: {x: 0, y: 0, z: 0} + max: {x: 0, y: 0, z: 0} + value: {x: 0, y: 0, z: 0} + length: 0 + modified: 0 + - boneName: RightUpperArm + humanName: RightLowerArm + limit: + min: {x: 0, y: 0, z: 0} + max: {x: 0, y: 0, z: 0} + value: {x: 0, y: 0, z: 0} + length: 0 + modified: 0 + - boneName: LeftHand + humanName: LeftHand + limit: + min: {x: 0, y: 0, z: 0} + max: {x: 0, y: 0, z: 0} + value: {x: 0, y: 0, z: 0} + length: 0 + modified: 0 + - boneName: RightHand + humanName: RightHand + limit: + min: {x: 0, y: 0, z: 0} + max: {x: 0, y: 0, z: 0} + value: {x: 0, y: 0, z: 0} + length: 0 + modified: 0 + - boneName: LeftThumb1 + humanName: Left Thumb Proximal + limit: + min: {x: 0, y: 0, z: 0} + max: {x: 0, y: 0, z: 0} + value: {x: 0, y: 0, z: 0} + length: 0 + modified: 0 + - boneName: LeftThumb2 + humanName: Left Thumb Intermediate + limit: + min: {x: 0, y: 0, z: 0} + max: {x: 0, y: 0, z: 0} + value: {x: 0, y: 0, z: 0} + length: 0 + modified: 0 + - boneName: LeftThumb3 + humanName: Left Thumb Distal + limit: + min: {x: 0, y: 0, z: 0} + max: {x: 0, y: 0, z: 0} + value: {x: 0, y: 0, z: 0} + length: 0 + modified: 0 + - boneName: LeftIndex1 + humanName: Left Index Proximal + limit: + min: {x: 0, y: 0, z: 0} + max: {x: 0, y: 0, z: 0} + value: {x: 0, y: 0, z: 0} + length: 0 + modified: 0 + - boneName: LeftIndex2 + humanName: Left Index Intermediate + limit: + min: {x: 0, y: 0, z: 0} + max: {x: 0, y: 0, z: 0} + value: {x: 0, y: 0, z: 0} + length: 0 + modified: 0 + - boneName: LeftIndex3 + humanName: Left Index Distal + limit: + min: {x: 0, y: 0, z: 0} + max: {x: 0, y: 0, z: 0} + value: {x: 0, y: 0, z: 0} + length: 0 + modified: 0 + - boneName: LeftMiddle1 + humanName: Left Middle Proximal + limit: + min: {x: 0, y: 0, z: 0} + max: {x: 0, y: 0, z: 0} + value: {x: 0, y: 0, z: 0} + length: 0 + modified: 0 + - boneName: LeftMiddle2 + humanName: Left Middle Intermediate + limit: + min: {x: 0, y: 0, z: 0} + max: {x: 0, y: 0, z: 0} + value: {x: 0, y: 0, z: 0} + length: 0 + modified: 0 + - boneName: LeftMiddle3 + humanName: Left Middle Distal + limit: + min: {x: 0, y: 0, z: 0} + max: {x: 0, y: 0, z: 0} + value: {x: 0, y: 0, z: 0} + length: 0 + modified: 0 + - boneName: LeftRing1 + humanName: Left Ring Proximal + limit: + min: {x: 0, y: 0, z: 0} + max: {x: 0, y: 0, z: 0} + value: {x: 0, y: 0, z: 0} + length: 0 + modified: 0 + - boneName: LeftRing2 + humanName: Left Ring Intermediate + limit: + min: {x: 0, y: 0, z: 0} + max: {x: 0, y: 0, z: 0} + value: {x: 0, y: 0, z: 0} + length: 0 + modified: 0 + - boneName: LeftRing3 + humanName: Left Ring Distal + limit: + min: {x: 0, y: 0, z: 0} + max: {x: 0, y: 0, z: 0} + value: {x: 0, y: 0, z: 0} + length: 0 + modified: 0 + - boneName: LeftPinky1 + humanName: Left Little Proximal + limit: + min: {x: 0, y: 0, z: 0} + max: {x: 0, y: 0, z: 0} + value: {x: 0, y: 0, z: 0} + length: 0 + modified: 0 + - boneName: LeftPinky2 + humanName: Left Little Intermediate + limit: + min: {x: 0, y: 0, z: 0} + max: {x: 0, y: 0, z: 0} + value: {x: 0, y: 0, z: 0} + length: 0 + modified: 0 + - boneName: LeftPinky3 + humanName: Left Little Distal + limit: + min: {x: 0, y: 0, z: 0} + max: {x: 0, y: 0, z: 0} + value: {x: 0, y: 0, z: 0} + length: 0 + modified: 0 + - boneName: RightThumb1 + humanName: Right Thumb Proximal + limit: + min: {x: 0, y: 0, z: 0} + max: {x: 0, y: 0, z: 0} + value: {x: 0, y: 0, z: 0} + length: 0 + modified: 0 + - boneName: RightThumb2 + humanName: Right Thumb Intermediate + limit: + min: {x: 0, y: 0, z: 0} + max: {x: 0, y: 0, z: 0} + value: {x: 0, y: 0, z: 0} + length: 0 + modified: 0 + - boneName: RightThumb3 + humanName: Right Thumb Distal + limit: + min: {x: 0, y: 0, z: 0} + max: {x: 0, y: 0, z: 0} + value: {x: 0, y: 0, z: 0} + length: 0 + modified: 0 + - boneName: RightIndex1 + humanName: Right Index Proximal + limit: + min: {x: 0, y: 0, z: 0} + max: {x: 0, y: 0, z: 0} + value: {x: 0, y: 0, z: 0} + length: 0 + modified: 0 + - boneName: RightIndex2 + humanName: Right Index Intermediate + limit: + min: {x: 0, y: 0, z: 0} + max: {x: 0, y: 0, z: 0} + value: {x: 0, y: 0, z: 0} + length: 0 + modified: 0 + - boneName: RightIndex3 + humanName: Right Index Distal + limit: + min: {x: 0, y: 0, z: 0} + max: {x: 0, y: 0, z: 0} + value: {x: 0, y: 0, z: 0} + length: 0 + modified: 0 + - boneName: RightMiddle1 + humanName: Right Middle Proximal + limit: + min: {x: 0, y: 0, z: 0} + max: {x: 0, y: 0, z: 0} + value: {x: 0, y: 0, z: 0} + length: 0 + modified: 0 + - boneName: RightMiddle2 + humanName: Right Middle Intermediate + limit: + min: {x: 0, y: 0, z: 0} + max: {x: 0, y: 0, z: 0} + value: {x: 0, y: 0, z: 0} + length: 0 + modified: 0 + - boneName: RightMiddle3 + humanName: Right Middle Distal + limit: + min: {x: 0, y: 0, z: 0} + max: {x: 0, y: 0, z: 0} + value: {x: 0, y: 0, z: 0} + length: 0 + modified: 0 + - boneName: RightRing1 + humanName: Right Ring Proximal + limit: + min: {x: 0, y: 0, z: 0} + max: {x: 0, y: 0, z: 0} + value: {x: 0, y: 0, z: 0} + length: 0 + modified: 0 + - boneName: RightRing2 + humanName: Right Ring Intermediate + limit: + min: {x: 0, y: 0, z: 0} + max: {x: 0, y: 0, z: 0} + value: {x: 0, y: 0, z: 0} + length: 0 + modified: 0 + - boneName: RightRing3 + humanName: Right Ring Distal + limit: + min: {x: 0, y: 0, z: 0} + max: {x: 0, y: 0, z: 0} + value: {x: 0, y: 0, z: 0} + length: 0 + modified: 0 + - boneName: RightPinky1 + humanName: Right Little Proximal + limit: + min: {x: 0, y: 0, z: 0} + max: {x: 0, y: 0, z: 0} + value: {x: 0, y: 0, z: 0} + length: 0 + modified: 0 + - boneName: RightPinky2 + humanName: Right Little Intermediate + limit: + min: {x: 0, y: 0, z: 0} + max: {x: 0, y: 0, z: 0} + value: {x: 0, y: 0, z: 0} + length: 0 + modified: 0 + - boneName: RightPinky3 + humanName: Right Little Distal + limit: + min: {x: 0, y: 0, z: 0} + max: {x: 0, y: 0, z: 0} + value: {x: 0, y: 0, z: 0} + length: 0 + modified: 0 + skeleton: + - name: PlayerNEW(Clone) + parentName: + position: {x: -0, y: 0, z: 0} + rotation: {x: 0, y: -0, z: -0, w: 1} + scale: {x: 1, y: 1, z: 1} + - name: Root1 + parentName: PlayerNEW(Clone) + position: {x: -0, y: 0, z: 0} + rotation: {x: 0, y: -0, z: -0, w: 1} + scale: {x: 1, y: 1, z: 1} + - name: Hips + parentName: Root1 + position: {x: 2.44256e-19, y: 0.5853834, z: -0.011920411} + rotation: {x: 0.7011581, y: 0.7011581, z: 0.0915279, w: -0.0915279} + scale: {x: 1, y: 1, z: 1} + - name: LeftLeg + parentName: Hips + position: {x: -0.018006599, y: -0.12467603, z: -0.0030510616} + rotation: {x: 0.9914449, y: -0.0000000016844101, z: 0.13052614, w: 0.000000012794382} + scale: {x: 1, y: 1, z: 1} + - name: LeftCalf + parentName: LeftLeg + position: {x: -0.26618588, y: -7.68687e-17, z: 0} + rotation: {x: -1.349316e-22, y: 0.00000009632028, z: 1.400864e-15, w: 1} + scale: {x: 1, y: 1, z: 1} + - name: LeftFoot + parentName: LeftCalf + position: {x: -0.23847595, y: 0, z: 0} + rotation: {x: 0.0000000015095722, y: -9.042606e-15, z: -0.0000000041475157, + w: 1} + scale: {x: 1, y: 1, z: 1} + - name: LeftFootEND + parentName: LeftFoot + position: {x: -0.0619559, y: 0.00000037112684, z: 0.17022243} + rotation: {x: 0, y: -0, z: -0, w: 1} + scale: {x: 1, y: 1, z: 1} + - name: RightLeg + parentName: Hips + position: {x: -0.018007025, y: 0.124676, z: -0.0030511897} + rotation: {x: -0.13052633, y: -0.00000005275259, z: 0.9914448, w: -0.0000000069450032} + scale: {x: 1, y: 1, z: 1} + - name: RightCalf + parentName: RightLeg + position: {x: 0.26618537, y: 1.2434498e-16, z: 0.00000005632548} + rotation: {x: -9.1285475e-17, y: -0.00000029066345, z: 1.044696e-15, w: 1} + scale: {x: 1, y: 1, z: 1} + - name: RightFoot + parentName: RightCalf + position: {x: 0.23847602, y: 7.105427e-17, z: -0.000000025153046} + rotation: {x: 0.000000054361337, y: 0.00000012105109, z: 3.2543565e-11, w: 1} + scale: {x: 1, y: 1, z: 1} + - name: RightFootEND + parentName: RightFoot + position: {x: 0.061955888, y: 0, z: -0.17022213} + rotation: {x: 0, y: -0, z: -0, w: 1} + scale: {x: 1, y: 1, z: 1} + - name: Spine1 + parentName: Hips + position: {x: 0.075807385, y: -1.732115e-17, z: -0.00000021538617} + rotation: {x: 2.775558e-17, y: -0.1642221, z: 3.904875e-34, w: 0.98642343} + scale: {x: 1, y: 1, z: 1} + - name: Spine2 + parentName: Spine1 + position: {x: 0.2143929, y: -4.4430303e-17, z: -0.0068833157} + rotation: {x: 0.7065379, y: -0.028359152, z: 0.028359152, w: 0.7065379} + scale: {x: 1, y: 1, z: 1} + - name: LeftShoulder + parentName: Spine2 + position: {x: 0.23315805, y: -0.0036182073, z: 0.0756481} + rotation: {x: -0.42572528, y: -0.43304613, z: 0.65510774, w: -0.44951406} + scale: {x: 1, y: 1, z: 1} + - name: LeftArm + parentName: LeftShoulder + position: {x: -0.17334424, y: -0.00000008990668, z: -0.0000000794735} + rotation: {x: -0.014969045, y: 0.15996195, z: 0.12306981, w: 0.9793069} + scale: {x: 1, y: 1, z: 1} + - name: LeftUpperArm + parentName: LeftArm + position: {x: -0.307883, y: 8.5265126e-16, z: -1.5987211e-16} + rotation: {x: -1.2453748e-15, y: 0.0000032468283, z: -1.0709786e-14, w: 1} + scale: {x: 1, y: 1, z: 1} + - name: LeftHand + parentName: LeftUpperArm + position: {x: -0.238435, y: 5.684342e-16, z: -1.4210854e-16} + rotation: {x: -0.008643247, y: 0.0023682874, z: 0.019030502, w: 0.9997788} + scale: {x: 1, y: 1, z: 1} + - name: LeftIndex1 + parentName: LeftHand + position: {x: -0.14554, y: 0.029749999, z: 0.0735604} + rotation: {x: 0.00000019092104, y: 0.030590264, z: -0.037363186, w: 0.9988334} + scale: {x: 1, y: 1, z: 1} + - name: LeftIndex2 + parentName: LeftIndex1 + position: {x: -0.051833, y: 0, z: -3.5527136e-17} + rotation: {x: 0, y: -0, z: -0, w: 1} + scale: {x: 1, y: 1, z: 1} + - name: LeftIndex3 + parentName: LeftIndex2 + position: {x: -0.036974, y: 2.842171e-16, z: -2.2204459e-17} + rotation: {x: 0, y: -0, z: -0, w: 1} + scale: {x: 1, y: 1, z: 1} + - name: LeftIndexEND + parentName: LeftIndex3 + position: {x: -0.040359996, y: 1.4210854e-16, z: -2.4424906e-17} + rotation: {x: 0, y: -0, z: -0, w: 1} + scale: {x: 1, y: 1, z: 1} + - name: LeftMiddle1 + parentName: LeftHand + position: {x: -0.14554, y: 0.029749999, z: 0.024356598} + rotation: {x: -0.000000022351731, y: 0.0305907, z: -0.03736482, w: 0.9988334} + scale: {x: 1, y: 1, z: 1} + - name: LeftMiddle2 + parentName: LeftMiddle1 + position: {x: -0.052775, y: 0, z: -3.5527136e-17} + rotation: {x: 0, y: -0, z: -0, w: 1} + scale: {x: 1, y: 1, z: 1} + - name: LeftMiddle3 + parentName: LeftMiddle2 + position: {x: -0.036972, y: 2.842171e-16, z: -1.7763568e-17} + rotation: {x: 0, y: -0, z: -0, w: 1} + scale: {x: 1, y: 1, z: 1} + - name: LeftMiddleEND + parentName: LeftMiddle3 + position: {x: -0.04131, y: 1.4210854e-16, z: -2.6645352e-17} + rotation: {x: 0, y: -0, z: -0, w: 1} + scale: {x: 1, y: 1, z: 1} + - name: LeftPinky1 + parentName: LeftHand + position: {x: -0.147425, y: 0.029749999, z: -0.068584196} + rotation: {x: -0.000000107102046, y: 0.030590476, z: -0.037364885, w: 0.9988334} + scale: {x: 1, y: 1, z: 1} + - name: LeftPinky2 + parentName: LeftPinky1 + position: {x: -0.038636, y: -1.4210854e-16, z: 3.5527136e-17} + rotation: {x: 0, y: -0, z: -0, w: 1} + scale: {x: 1, y: 1, z: 1} + - name: LeftPinky3 + parentName: LeftPinky2 + position: {x: -0.024154998, y: 2.842171e-16, z: -3.5527136e-17} + rotation: {x: 0, y: -0, z: -0, w: 1} + scale: {x: 1, y: 1, z: 1} + - name: LeftPinkyEND + parentName: LeftPinky3 + position: {x: -0.027170999, y: -1.4210854e-16, z: 0} + rotation: {x: 0, y: -0, z: -0, w: 1} + scale: {x: 1, y: 1, z: 1} + - name: LeftRing1 + parentName: LeftHand + position: {x: -0.14554, y: 0.029749999, z: -0.0235272} + rotation: {x: 0.000000109896014, y: 0.030590901, z: -0.03736426, w: 0.99883336} + scale: {x: 1, y: 1, z: 1} + - name: LeftRing2 + parentName: LeftRing1 + position: {x: -0.047684997, y: -1.4210854e-16, z: -3.5527136e-17} + rotation: {x: 0, y: -0, z: -0, w: 1} + scale: {x: 1, y: 1, z: 1} + - name: LeftRing3 + parentName: LeftRing2 + position: {x: -0.036972, y: 2.842171e-16, z: -3.5527136e-17} + rotation: {x: 0, y: -0, z: -0, w: 1} + scale: {x: 1, y: 1, z: 1} + - name: LeftRingEND + parentName: LeftRing3 + position: {x: -0.040370002, y: 1.4210854e-16, z: -1.7763568e-17} + rotation: {x: 0, y: -0, z: -0, w: 1} + scale: {x: 1, y: 1, z: 1} + - name: LeftThumb1 + parentName: LeftHand + position: {x: -0.021173999, y: -0.00084, z: 0.039128397} + rotation: {x: 0, y: 0.4694716, z: -0, w: 0.8829476} + scale: {x: 1, y: 1, z: 1} + - name: LeftThumb2 + parentName: LeftThumb1 + position: {x: -0.06474489, y: 2.842171e-16, z: -0.00000013972273} + rotation: {x: 0.00000008497631, y: 0.02878143, z: 0.0000002002365, w: 0.99958575} + scale: {x: 1, y: 1, z: 1} + - name: LeftThumb3 + parentName: LeftThumb2 + position: {x: -0.04855281, y: 0, z: 0.00000009387237} + rotation: {x: 0, y: 5.6655387e-16, z: -0, w: 1} + scale: {x: 1, y: 1, z: 1} + - name: LeftThumbEND + parentName: LeftThumb3 + position: {x: -0.058039706, y: 0, z: -0.0000002491148} + rotation: {x: 0, y: -0, z: -0, w: 1} + scale: {x: 1, y: 1, z: 1} + - name: Neck + parentName: Spine2 + position: {x: 0.33357757, y: 0.005019527, z: 2.4104562e-16} + rotation: {x: -0.000000059604623, y: -0.000000048428756, z: -0.31446886, w: 0.94926775} + scale: {x: 1, y: 1, z: 1} + - name: Head + parentName: Neck + position: {x: 0.110379726, y: -0.0000007722697, z: -4.802617e-16} + rotation: {x: 2.7755576e-17, y: -1.9428903e-16, z: 0.33380687, w: 0.9426415} + scale: {x: 1, y: 1, z: 1} + - name: HeadEND + parentName: Head + position: {x: 0.49002212, y: -0.000000026670863, z: 9.6758976e-17} + rotation: {x: 0, y: -0, z: -0, w: 1} + scale: {x: 1, y: 1, z: 1} + - name: RightShoulder + parentName: Spine2 + position: {x: 0.23315805, y: -0.0036182073, z: -0.0756481} + rotation: {x: -0.43304622, y: 0.42572525, z: 0.449514, w: 0.6551078} + scale: {x: 1, y: 1, z: 1} + - name: RightArm + parentName: RightShoulder + position: {x: 0.17334424, y: 0.00000008990668, z: 0.0000000794735} + rotation: {x: -0.012504441, y: 0.15556175, z: 0.12742665, w: 0.97949314} + scale: {x: 1, y: 1, z: 1} + - name: RightUpperArm + parentName: RightArm + position: {x: 0.307883, y: -7.105427e-16, z: 0} + rotation: {x: -0.00035715738, y: 0.010721008, z: -0.011822482, w: 0.99987257} + scale: {x: 1, y: 1, z: 1} + - name: RightHand + parentName: RightUpperArm + position: {x: 0.238435, y: -7.105427e-16, z: 3.5527136e-17} + rotation: {x: -0.008695018, y: -0.014621013, z: 0.018709179, w: 0.9996802} + scale: {x: 1, y: 1, z: 1} + - name: RightIndex1 + parentName: RightHand + position: {x: 0.14554, y: -0.029749999, z: -0.0735604} + rotation: {x: 0.000000073574455, y: 0.030591365, z: -0.037365444, w: 0.9988333} + scale: {x: 1, y: 1, z: 1} + - name: RightIndex2 + parentName: RightIndex1 + position: {x: 0.051833, y: -1.4210854e-16, z: 1.11022296e-17} + rotation: {x: 6.6594715e-16, y: 1.3444001e-16, z: 1.02018776e-13, w: 1} + scale: {x: 1, y: 1, z: 1} + - name: RightIndex3 + parentName: RightIndex2 + position: {x: 0.036974, y: -1.4210854e-16, z: 2.220446e-18} + rotation: {x: 6.6594715e-16, y: 1.3444001e-16, z: 1.02018776e-13, w: 1} + scale: {x: 1, y: 1, z: 1} + - name: RightIndexEND + parentName: RightIndex3 + position: {x: 0.040359996, y: 0, z: 4.440892e-18} + rotation: {x: 0, y: -0, z: -0, w: 1} + scale: {x: 1, y: 1, z: 1} + - name: RightMiddle1 + parentName: RightHand + position: {x: 0.14554, y: -0.029749999, z: -0.024356598} + rotation: {x: -0.00000014062962, y: 0.030591466, z: -0.037367173, w: 0.9988333} + scale: {x: 1, y: 1, z: 1} + - name: RightMiddle2 + parentName: RightMiddle1 + position: {x: 0.052775, y: -1.4210854e-16, z: 8.881784e-18} + rotation: {x: 6.6594715e-16, y: 1.3444001e-16, z: 1.02018776e-13, w: 1} + scale: {x: 1, y: 1, z: 1} + - name: RightMiddle3 + parentName: RightMiddle2 + position: {x: 0.036972, y: -1.4210854e-16, z: 1.7763568e-17} + rotation: {x: 6.6594715e-16, y: 1.3444001e-16, z: 1.02018776e-13, w: 1} + scale: {x: 1, y: 1, z: 1} + - name: RightMiddleEND + parentName: RightMiddle3 + position: {x: 0.04131, y: 0, z: -8.881784e-18} + rotation: {x: 0, y: -0, z: -0, w: 1} + scale: {x: 1, y: 1, z: 1} + - name: RightPinky1 + parentName: RightHand + position: {x: 0.147425, y: -0.029749999, z: 0.068584196} + rotation: {x: -0.00000013224775, y: 0.030591635, z: -0.0373673, w: 0.9988333} + scale: {x: 1, y: 1, z: 1} + - name: RightPinky2 + parentName: RightPinky1 + position: {x: 0.038636, y: -2.842171e-16, z: 0} + rotation: {x: 6.6594715e-16, y: 1.3444001e-16, z: 1.02018776e-13, w: 1} + scale: {x: 1, y: 1, z: 1} + - name: RightPinky3 + parentName: RightPinky2 + position: {x: 0.024154998, y: 0, z: 0} + rotation: {x: 6.6594715e-16, y: 1.3444001e-16, z: 1.02018776e-13, w: 1} + scale: {x: 1, y: 1, z: 1} + - name: RightPinkyEND + parentName: RightPinky3 + position: {x: 0.027170999, y: -1.4210854e-16, z: 0} + rotation: {x: 0, y: -0, z: -0, w: 1} + scale: {x: 1, y: 1, z: 1} + - name: RightRing1 + parentName: RightHand + position: {x: 0.14554, y: -0.029749999, z: 0.0235272} + rotation: {x: 0.000000028870986, y: 0.03059185, z: -0.03736628, w: 0.99883324} + scale: {x: 1, y: 1, z: 1} + - name: RightRing2 + parentName: RightRing1 + position: {x: 0.047684997, y: -1.4210854e-16, z: 3.5527136e-17} + rotation: {x: 6.6594715e-16, y: 1.3444001e-16, z: 1.02018776e-13, w: 1} + scale: {x: 1, y: 1, z: 1} + - name: RightRing3 + parentName: RightRing2 + position: {x: 0.036972, y: -1.4210854e-16, z: 0} + rotation: {x: 6.6594715e-16, y: 1.3444001e-16, z: 1.02018776e-13, w: 1} + scale: {x: 1, y: 1, z: 1} + - name: RightRingEND + parentName: RightRing3 + position: {x: 0.040370002, y: 0, z: 0} + rotation: {x: 0, y: -0, z: -0, w: 1} + scale: {x: 1, y: 1, z: 1} + - name: RightThumb1 + parentName: RightHand + position: {x: 0.021173999, y: 0.00084, z: -0.039128397} + rotation: {x: 3.7582164e-14, y: 0.4694716, z: -6.863143e-14, w: 0.8829476} + scale: {x: 1, y: 1, z: 1} + - name: RightThumb2 + parentName: RightThumb1 + position: {x: 0.06474489, y: 0, z: 0.00000013972273} + rotation: {x: 0.00000006224392, y: 0.028783778, z: -0.0000019193158, w: 0.9995857} + scale: {x: 1, y: 1, z: 1} + - name: RightThumb3 + parentName: RightThumb2 + position: {x: 0.04855281, y: -2.842171e-16, z: -0.00000009387237} + rotation: {x: 5.6655387e-16, y: -3.2162452e-16, z: -7.6571376e-16, w: 1} + scale: {x: 1, y: 1, z: 1} + - name: RightThumbEND + parentName: RightThumb3 + position: {x: 0.058039706, y: 0, z: 0.0000002491148} + rotation: {x: 0, y: -0, z: -0, w: 1} + scale: {x: 1, y: 1, z: 1} + - name: Template_Character + parentName: PlayerNEW(Clone) + position: {x: -0, y: 0, z: 0} + rotation: {x: 0, y: -0, z: -0, w: 1} + scale: {x: 1, y: 1, z: 1} + armTwist: 0.5 + foreArmTwist: 0.5 + upperLegTwist: 0.5 + legTwist: 0.5 + armStretch: 0.05 + legStretch: 0.05 + feetSpacing: 0 + rootMotionBoneName: Root1 + hasTranslationDoF: 1 + hasExtraRoot: 0 + skeletonHasParents: 1 + lastHumanDescriptionAvatarSource: {fileID: 9000000, guid: 6efe54ae207d7bb46a4adca3c0143126, + type: 3} + animationType: 3 + humanoidOversampling: 1 + additionalBone: 0 + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Animations/PlayerJump.FBX" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Animations/PlayerJump.FBX" new file mode 100644 index 00000000..fe6f5ca8 Binary files /dev/null and "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Animations/PlayerJump.FBX" differ diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Animations/PlayerJump.FBX.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Animations/PlayerJump.FBX.meta" new file mode 100644 index 00000000..58b7dcba --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Animations/PlayerJump.FBX.meta" @@ -0,0 +1,1002 @@ +fileFormatVersion: 2 +guid: 9f825f613a00f714dae086f20a4a4171 +ModelImporter: + serializedVersion: 23 + fileIDToRecycleName: + 100000: Head + 100002: HeadEND + 100004: Hips + 100006: LeftArm + 100008: LeftCalf + 100010: LeftFoot + 100012: LeftFootEND + 100014: LeftHand + 100016: LeftIndex1 + 100018: LeftIndex2 + 100020: LeftIndex3 + 100022: LeftIndexEND + 100024: LeftLeg + 100026: LeftMiddle1 + 100028: LeftMiddle2 + 100030: LeftMiddle3 + 100032: LeftMiddleEND + 100034: LeftPinky1 + 100036: LeftPinky2 + 100038: LeftPinky3 + 100040: LeftPinkyEND + 100042: LeftRing1 + 100044: LeftRing2 + 100046: LeftRing3 + 100048: LeftRingEND + 100050: LeftShoulder + 100052: LeftThumb1 + 100054: LeftThumb2 + 100056: LeftThumb3 + 100058: LeftThumbEND + 100060: LeftUpperArm + 100062: Neck + 100064: //RootNode + 100066: RightArm + 100068: RightCalf + 100070: RightFoot + 100072: RightFootEND + 100074: RightHand + 100076: RightIndex1 + 100078: RightIndex2 + 100080: RightIndex3 + 100082: RightIndexEND + 100084: RightLeg + 100086: RightMiddle1 + 100088: RightMiddle2 + 100090: RightMiddle3 + 100092: RightMiddleEND + 100094: RightPinky1 + 100096: RightPinky2 + 100098: RightPinky3 + 100100: RightPinkyEND + 100102: RightRing1 + 100104: RightRing2 + 100106: RightRing3 + 100108: RightRingEND + 100110: RightShoulder + 100112: RightThumb1 + 100114: RightThumb2 + 100116: RightThumb3 + 100118: RightThumbEND + 100120: RightUpperArm + 100122: Root1 + 100124: Spine1 + 100126: Spine2 + 100128: Template_Character + 400000: Head + 400002: HeadEND + 400004: Hips + 400006: LeftArm + 400008: LeftCalf + 400010: LeftFoot + 400012: LeftFootEND + 400014: LeftHand + 400016: LeftIndex1 + 400018: LeftIndex2 + 400020: LeftIndex3 + 400022: LeftIndexEND + 400024: LeftLeg + 400026: LeftMiddle1 + 400028: LeftMiddle2 + 400030: LeftMiddle3 + 400032: LeftMiddleEND + 400034: LeftPinky1 + 400036: LeftPinky2 + 400038: LeftPinky3 + 400040: LeftPinkyEND + 400042: LeftRing1 + 400044: LeftRing2 + 400046: LeftRing3 + 400048: LeftRingEND + 400050: LeftShoulder + 400052: LeftThumb1 + 400054: LeftThumb2 + 400056: LeftThumb3 + 400058: LeftThumbEND + 400060: LeftUpperArm + 400062: Neck + 400064: //RootNode + 400066: RightArm + 400068: RightCalf + 400070: RightFoot + 400072: RightFootEND + 400074: RightHand + 400076: RightIndex1 + 400078: RightIndex2 + 400080: RightIndex3 + 400082: RightIndexEND + 400084: RightLeg + 400086: RightMiddle1 + 400088: RightMiddle2 + 400090: RightMiddle3 + 400092: RightMiddleEND + 400094: RightPinky1 + 400096: RightPinky2 + 400098: RightPinky3 + 400100: RightPinkyEND + 400102: RightRing1 + 400104: RightRing2 + 400106: RightRing3 + 400108: RightRingEND + 400110: RightShoulder + 400112: RightThumb1 + 400114: RightThumb2 + 400116: RightThumb3 + 400118: RightThumbEND + 400120: RightUpperArm + 400122: Root1 + 400124: Spine1 + 400126: Spine2 + 400128: Template_Character + 2100000: Template_Character_Material + 4300000: Template_Character + 7400000: PlayerJump + 7400002: PlayerLanding + 9500000: //RootNode + 13700000: Template_Character + externalObjects: {} + materials: + importMaterials: 0 + materialName: 0 + materialSearch: 1 + materialLocation: 1 + animations: + legacyGenerateAnimations: 4 + bakeSimulation: 0 + resampleCurves: 1 + optimizeGameObjects: 0 + motionNodeName: + rigImportErrors: + rigImportWarnings: + animationImportErrors: + animationImportWarnings: + animationRetargetingWarnings: + animationDoRetargetingWarnings: 0 + importAnimatedCustomProperties: 0 + importConstraints: 0 + animationCompression: 3 + animationRotationError: 0.5 + animationPositionError: 0.5 + animationScaleError: 0.5 + animationWrapMode: 0 + extraExposedTransformPaths: [] + extraUserProperties: [] + clipAnimations: + - serializedVersion: 16 + name: PlayerJump + takeName: Take 001 + firstFrame: 37 + lastFrame: 51 + wrapMode: 0 + orientationOffsetY: 0 + level: 0 + cycleOffset: 0 + loop: 0 + hasAdditiveReferencePose: 0 + loopTime: 1 + loopBlend: 1 + loopBlendOrientation: 1 + loopBlendPositionY: 1 + loopBlendPositionXZ: 1 + keepOriginalOrientation: 0 + keepOriginalPositionY: 1 + keepOriginalPositionXZ: 0 + heightFromFeet: 0 + mirror: 0 + bodyMask: 01000000010000000100000001000000010000000100000001000000010000000100000001000000010000000100000001000000 + curves: [] + events: [] + transformMask: [] + maskType: 3 + maskSource: {instanceID: 0} + additiveReferencePoseFrame: 0 + - serializedVersion: 16 + name: PlayerLanding + takeName: Take 001 + firstFrame: 83 + lastFrame: 116 + wrapMode: 0 + orientationOffsetY: 0 + level: 0 + cycleOffset: 0 + loop: 0 + hasAdditiveReferencePose: 0 + loopTime: 0 + loopBlend: 0 + loopBlendOrientation: 1 + loopBlendPositionY: 1 + loopBlendPositionXZ: 1 + keepOriginalOrientation: 0 + keepOriginalPositionY: 1 + keepOriginalPositionXZ: 0 + heightFromFeet: 0 + mirror: 0 + bodyMask: 01000000010000000100000001000000010000000100000001000000010000000100000001000000010000000100000001000000 + curves: [] + events: [] + transformMask: [] + maskType: 3 + maskSource: {instanceID: 0} + additiveReferencePoseFrame: 0 + isReadable: 1 + meshes: + lODScreenPercentages: [] + globalScale: 1 + meshCompression: 0 + addColliders: 0 + useSRGBMaterialColor: 1 + importVisibility: 1 + importBlendShapes: 1 + importCameras: 1 + importLights: 1 + swapUVChannels: 0 + generateSecondaryUV: 0 + useFileUnits: 1 + optimizeMeshForGPU: 1 + keepQuads: 0 + weldVertices: 1 + preserveHierarchy: 0 + indexFormat: 0 + secondaryUVAngleDistortion: 8 + secondaryUVAreaDistortion: 15.000001 + secondaryUVHardAngle: 88 + secondaryUVPackMargin: 4 + useFileScale: 1 + previousCalculatedGlobalScale: 0.01 + hasPreviousCalculatedGlobalScale: 1 + tangentSpace: + normalSmoothAngle: 60 + normalImportMode: 0 + tangentImportMode: 3 + normalCalculationMode: 4 + legacyComputeAllNormalsFromSmoothingGroupsWhenMeshHasBlendShapes: 0 + blendShapeNormalImportMode: 1 + normalSmoothingSource: 0 + importAnimation: 1 + copyAvatar: 1 + humanDescription: + serializedVersion: 2 + human: + - boneName: Hips + humanName: Hips + limit: + min: {x: 0, y: 0, z: 0} + max: {x: 0, y: 0, z: 0} + value: {x: 0, y: 0, z: 0} + length: 0 + modified: 0 + - boneName: LeftLeg + humanName: LeftUpperLeg + limit: + min: {x: 0, y: 0, z: 0} + max: {x: 0, y: 0, z: 0} + value: {x: 0, y: 0, z: 0} + length: 0 + modified: 0 + - boneName: RightLeg + humanName: RightUpperLeg + limit: + min: {x: 0, y: 0, z: 0} + max: {x: 0, y: 0, z: 0} + value: {x: 0, y: 0, z: 0} + length: 0 + modified: 0 + - boneName: LeftCalf + humanName: LeftLowerLeg + limit: + min: {x: 0, y: 0, z: 0} + max: {x: 0, y: 0, z: 0} + value: {x: 0, y: 0, z: 0} + length: 0 + modified: 0 + - boneName: RightCalf + humanName: RightLowerLeg + limit: + min: {x: 0, y: 0, z: 0} + max: {x: 0, y: 0, z: 0} + value: {x: 0, y: 0, z: 0} + length: 0 + modified: 0 + - boneName: LeftFoot + humanName: LeftFoot + limit: + min: {x: 0, y: 0, z: 0} + max: {x: 0, y: 0, z: 0} + value: {x: 0, y: 0, z: 0} + length: 0 + modified: 0 + - boneName: RightFoot + humanName: RightFoot + limit: + min: {x: 0, y: 0, z: 0} + max: {x: 0, y: 0, z: 0} + value: {x: 0, y: 0, z: 0} + length: 0 + modified: 0 + - boneName: Spine1 + humanName: Spine + limit: + min: {x: 0, y: 0, z: 0} + max: {x: 0, y: 0, z: 0} + value: {x: 0, y: 0, z: 0} + length: 0 + modified: 0 + - boneName: Spine2 + humanName: Chest + limit: + min: {x: 0, y: 0, z: 0} + max: {x: 0, y: 0, z: 0} + value: {x: 0, y: 0, z: 0} + length: 0 + modified: 0 + - boneName: Neck + humanName: Neck + limit: + min: {x: 0, y: 0, z: 0} + max: {x: 0, y: 0, z: 0} + value: {x: 0, y: 0, z: 0} + length: 0 + modified: 0 + - boneName: Head + humanName: Head + limit: + min: {x: 0, y: 0, z: 0} + max: {x: 0, y: 0, z: 0} + value: {x: 0, y: 0, z: 0} + length: 0 + modified: 0 + - boneName: LeftShoulder + humanName: LeftShoulder + limit: + min: {x: 0, y: 0, z: 0} + max: {x: 0, y: 0, z: 0} + value: {x: 0, y: 0, z: 0} + length: 0 + modified: 0 + - boneName: RightShoulder + humanName: RightShoulder + limit: + min: {x: 0, y: 0, z: 0} + max: {x: 0, y: 0, z: 0} + value: {x: 0, y: 0, z: 0} + length: 0 + modified: 0 + - boneName: LeftArm + humanName: LeftUpperArm + limit: + min: {x: 0, y: 0, z: 0} + max: {x: 0, y: 0, z: 0} + value: {x: 0, y: 0, z: 0} + length: 0 + modified: 0 + - boneName: RightArm + humanName: RightUpperArm + limit: + min: {x: 0, y: 0, z: 0} + max: {x: 0, y: 0, z: 0} + value: {x: 0, y: 0, z: 0} + length: 0 + modified: 0 + - boneName: LeftUpperArm + humanName: LeftLowerArm + limit: + min: {x: 0, y: 0, z: 0} + max: {x: 0, y: 0, z: 0} + value: {x: 0, y: 0, z: 0} + length: 0 + modified: 0 + - boneName: RightUpperArm + humanName: RightLowerArm + limit: + min: {x: 0, y: 0, z: 0} + max: {x: 0, y: 0, z: 0} + value: {x: 0, y: 0, z: 0} + length: 0 + modified: 0 + - boneName: LeftHand + humanName: LeftHand + limit: + min: {x: 0, y: 0, z: 0} + max: {x: 0, y: 0, z: 0} + value: {x: 0, y: 0, z: 0} + length: 0 + modified: 0 + - boneName: RightHand + humanName: RightHand + limit: + min: {x: 0, y: 0, z: 0} + max: {x: 0, y: 0, z: 0} + value: {x: 0, y: 0, z: 0} + length: 0 + modified: 0 + - boneName: LeftThumb1 + humanName: Left Thumb Proximal + limit: + min: {x: 0, y: 0, z: 0} + max: {x: 0, y: 0, z: 0} + value: {x: 0, y: 0, z: 0} + length: 0 + modified: 0 + - boneName: LeftThumb2 + humanName: Left Thumb Intermediate + limit: + min: {x: 0, y: 0, z: 0} + max: {x: 0, y: 0, z: 0} + value: {x: 0, y: 0, z: 0} + length: 0 + modified: 0 + - boneName: LeftThumb3 + humanName: Left Thumb Distal + limit: + min: {x: 0, y: 0, z: 0} + max: {x: 0, y: 0, z: 0} + value: {x: 0, y: 0, z: 0} + length: 0 + modified: 0 + - boneName: LeftIndex1 + humanName: Left Index Proximal + limit: + min: {x: 0, y: 0, z: 0} + max: {x: 0, y: 0, z: 0} + value: {x: 0, y: 0, z: 0} + length: 0 + modified: 0 + - boneName: LeftIndex2 + humanName: Left Index Intermediate + limit: + min: {x: 0, y: 0, z: 0} + max: {x: 0, y: 0, z: 0} + value: {x: 0, y: 0, z: 0} + length: 0 + modified: 0 + - boneName: LeftIndex3 + humanName: Left Index Distal + limit: + min: {x: 0, y: 0, z: 0} + max: {x: 0, y: 0, z: 0} + value: {x: 0, y: 0, z: 0} + length: 0 + modified: 0 + - boneName: LeftMiddle1 + humanName: Left Middle Proximal + limit: + min: {x: 0, y: 0, z: 0} + max: {x: 0, y: 0, z: 0} + value: {x: 0, y: 0, z: 0} + length: 0 + modified: 0 + - boneName: LeftMiddle2 + humanName: Left Middle Intermediate + limit: + min: {x: 0, y: 0, z: 0} + max: {x: 0, y: 0, z: 0} + value: {x: 0, y: 0, z: 0} + length: 0 + modified: 0 + - boneName: LeftMiddle3 + humanName: Left Middle Distal + limit: + min: {x: 0, y: 0, z: 0} + max: {x: 0, y: 0, z: 0} + value: {x: 0, y: 0, z: 0} + length: 0 + modified: 0 + - boneName: LeftRing1 + humanName: Left Ring Proximal + limit: + min: {x: 0, y: 0, z: 0} + max: {x: 0, y: 0, z: 0} + value: {x: 0, y: 0, z: 0} + length: 0 + modified: 0 + - boneName: LeftRing2 + humanName: Left Ring Intermediate + limit: + min: {x: 0, y: 0, z: 0} + max: {x: 0, y: 0, z: 0} + value: {x: 0, y: 0, z: 0} + length: 0 + modified: 0 + - boneName: LeftRing3 + humanName: Left Ring Distal + limit: + min: {x: 0, y: 0, z: 0} + max: {x: 0, y: 0, z: 0} + value: {x: 0, y: 0, z: 0} + length: 0 + modified: 0 + - boneName: LeftPinky1 + humanName: Left Little Proximal + limit: + min: {x: 0, y: 0, z: 0} + max: {x: 0, y: 0, z: 0} + value: {x: 0, y: 0, z: 0} + length: 0 + modified: 0 + - boneName: LeftPinky2 + humanName: Left Little Intermediate + limit: + min: {x: 0, y: 0, z: 0} + max: {x: 0, y: 0, z: 0} + value: {x: 0, y: 0, z: 0} + length: 0 + modified: 0 + - boneName: LeftPinky3 + humanName: Left Little Distal + limit: + min: {x: 0, y: 0, z: 0} + max: {x: 0, y: 0, z: 0} + value: {x: 0, y: 0, z: 0} + length: 0 + modified: 0 + - boneName: RightThumb1 + humanName: Right Thumb Proximal + limit: + min: {x: 0, y: 0, z: 0} + max: {x: 0, y: 0, z: 0} + value: {x: 0, y: 0, z: 0} + length: 0 + modified: 0 + - boneName: RightThumb2 + humanName: Right Thumb Intermediate + limit: + min: {x: 0, y: 0, z: 0} + max: {x: 0, y: 0, z: 0} + value: {x: 0, y: 0, z: 0} + length: 0 + modified: 0 + - boneName: RightThumb3 + humanName: Right Thumb Distal + limit: + min: {x: 0, y: 0, z: 0} + max: {x: 0, y: 0, z: 0} + value: {x: 0, y: 0, z: 0} + length: 0 + modified: 0 + - boneName: RightIndex1 + humanName: Right Index Proximal + limit: + min: {x: 0, y: 0, z: 0} + max: {x: 0, y: 0, z: 0} + value: {x: 0, y: 0, z: 0} + length: 0 + modified: 0 + - boneName: RightIndex2 + humanName: Right Index Intermediate + limit: + min: {x: 0, y: 0, z: 0} + max: {x: 0, y: 0, z: 0} + value: {x: 0, y: 0, z: 0} + length: 0 + modified: 0 + - boneName: RightIndex3 + humanName: Right Index Distal + limit: + min: {x: 0, y: 0, z: 0} + max: {x: 0, y: 0, z: 0} + value: {x: 0, y: 0, z: 0} + length: 0 + modified: 0 + - boneName: RightMiddle1 + humanName: Right Middle Proximal + limit: + min: {x: 0, y: 0, z: 0} + max: {x: 0, y: 0, z: 0} + value: {x: 0, y: 0, z: 0} + length: 0 + modified: 0 + - boneName: RightMiddle2 + humanName: Right Middle Intermediate + limit: + min: {x: 0, y: 0, z: 0} + max: {x: 0, y: 0, z: 0} + value: {x: 0, y: 0, z: 0} + length: 0 + modified: 0 + - boneName: RightMiddle3 + humanName: Right Middle Distal + limit: + min: {x: 0, y: 0, z: 0} + max: {x: 0, y: 0, z: 0} + value: {x: 0, y: 0, z: 0} + length: 0 + modified: 0 + - boneName: RightRing1 + humanName: Right Ring Proximal + limit: + min: {x: 0, y: 0, z: 0} + max: {x: 0, y: 0, z: 0} + value: {x: 0, y: 0, z: 0} + length: 0 + modified: 0 + - boneName: RightRing2 + humanName: Right Ring Intermediate + limit: + min: {x: 0, y: 0, z: 0} + max: {x: 0, y: 0, z: 0} + value: {x: 0, y: 0, z: 0} + length: 0 + modified: 0 + - boneName: RightRing3 + humanName: Right Ring Distal + limit: + min: {x: 0, y: 0, z: 0} + max: {x: 0, y: 0, z: 0} + value: {x: 0, y: 0, z: 0} + length: 0 + modified: 0 + - boneName: RightPinky1 + humanName: Right Little Proximal + limit: + min: {x: 0, y: 0, z: 0} + max: {x: 0, y: 0, z: 0} + value: {x: 0, y: 0, z: 0} + length: 0 + modified: 0 + - boneName: RightPinky2 + humanName: Right Little Intermediate + limit: + min: {x: 0, y: 0, z: 0} + max: {x: 0, y: 0, z: 0} + value: {x: 0, y: 0, z: 0} + length: 0 + modified: 0 + - boneName: RightPinky3 + humanName: Right Little Distal + limit: + min: {x: 0, y: 0, z: 0} + max: {x: 0, y: 0, z: 0} + value: {x: 0, y: 0, z: 0} + length: 0 + modified: 0 + skeleton: + - name: PlayerNEW(Clone) + parentName: + position: {x: -0, y: 0, z: 0} + rotation: {x: 0, y: -0, z: -0, w: 1} + scale: {x: 1, y: 1, z: 1} + - name: Template_Character + parentName: PlayerNEW(Clone) + position: {x: -0, y: 0, z: 0} + rotation: {x: 0, y: -0, z: -0, w: 1} + scale: {x: 1, y: 1, z: 1} + - name: Root1 + parentName: PlayerNEW(Clone) + position: {x: -0, y: 0, z: 0} + rotation: {x: 0, y: -0, z: -0, w: 1} + scale: {x: 1, y: 1, z: 1} + - name: Hips + parentName: Root1 + position: {x: 2.44256e-19, y: 0.5853834, z: -0.011920411} + rotation: {x: 0.7011581, y: 0.7011581, z: 0.0915279, w: -0.0915279} + scale: {x: 1, y: 1, z: 1} + - name: Spine1 + parentName: Hips + position: {x: 0.075807385, y: -1.732115e-17, z: -0.00000021538617} + rotation: {x: 2.775558e-17, y: -0.1642221, z: 3.904875e-34, w: 0.98642343} + scale: {x: 1, y: 1, z: 1} + - name: Spine2 + parentName: Spine1 + position: {x: 0.2143929, y: -4.4430303e-17, z: -0.0068833157} + rotation: {x: 0.7065379, y: -0.028359152, z: 0.028359152, w: 0.7065379} + scale: {x: 1, y: 1, z: 1} + - name: Neck + parentName: Spine2 + position: {x: 0.33357757, y: 0.005019527, z: 2.4104562e-16} + rotation: {x: 0, y: -0, z: -0.40673664, w: 0.9135454} + scale: {x: 1, y: 1, z: 1} + - name: Head + parentName: Neck + position: {x: 0.110379726, y: -0.0000007722697, z: -4.802617e-16} + rotation: {x: 2.7755576e-17, y: -1.9428903e-16, z: 0.33380687, w: 0.9426415} + scale: {x: 1, y: 1, z: 1} + - name: HeadEND + parentName: Head + position: {x: 0.49002212, y: -0.000000026670863, z: 9.6758976e-17} + rotation: {x: 0, y: -0, z: -0, w: 1} + scale: {x: 1, y: 1, z: 1} + - name: RightShoulder + parentName: Spine2 + position: {x: 0.23315805, y: -0.0036182073, z: -0.0756481} + rotation: {x: -0.42431706, y: 0.37467265, z: 0.4471392, w: 0.69256186} + scale: {x: 1, y: 1, z: 1} + - name: RightArm + parentName: RightShoulder + position: {x: 0.17334424, y: 0.00000008990668, z: 0.0000000794735} + rotation: {x: -0.011462449, y: 0.16759908, z: 0.14350979, w: 0.97528666} + scale: {x: 1, y: 1, z: 1} + - name: RightUpperArm + parentName: RightArm + position: {x: 0.307883, y: -7.105427e-16, z: 0} + rotation: {x: -1.2607938e-15, y: 0.030198973, z: -6.7509017e-15, w: 0.99954396} + scale: {x: 1, y: 1, z: 1} + - name: RightHand + parentName: RightUpperArm + position: {x: 0.238435, y: -7.105427e-16, z: 3.5527136e-17} + rotation: {x: -0.009138229, y: -0.014929476, z: -0.011136616, w: 0.99978477} + scale: {x: 1, y: 1, z: 1} + - name: RightThumb1 + parentName: RightHand + position: {x: 0.021173999, y: 0.00084, z: -0.039128397} + rotation: {x: 3.7582164e-14, y: 0.4694716, z: -6.863143e-14, w: 0.8829476} + scale: {x: 1, y: 1, z: 1} + - name: RightThumb2 + parentName: RightThumb1 + position: {x: 0.06474489, y: 0, z: 0.00000013972273} + rotation: {x: 1.1306979e-15, y: 0.28689036, z: 2.5279415e-16, w: 0.9579634} + scale: {x: 1, y: 1, z: 1} + - name: RightThumb3 + parentName: RightThumb2 + position: {x: 0.04855281, y: -2.842171e-16, z: -0.00000009387237} + rotation: {x: 5.6655387e-16, y: -3.2162452e-16, z: -7.6571376e-16, w: 1} + scale: {x: 1, y: 1, z: 1} + - name: RightThumbEND + parentName: RightThumb3 + position: {x: 0.058039706, y: 0, z: 0.0000002491148} + rotation: {x: 0, y: -0, z: -0, w: 1} + scale: {x: 1, y: 1, z: 1} + - name: RightIndex1 + parentName: RightHand + position: {x: 0.14554, y: -0.029749999, z: -0.0735604} + rotation: {x: 6.6594715e-16, y: 1.3444001e-16, z: 1.02018776e-13, w: 1} + scale: {x: 1, y: 1, z: 1} + - name: RightIndex2 + parentName: RightIndex1 + position: {x: 0.051833, y: -1.4210854e-16, z: 1.11022296e-17} + rotation: {x: 6.6594715e-16, y: 1.3444001e-16, z: 1.02018776e-13, w: 1} + scale: {x: 1, y: 1, z: 1} + - name: RightIndex3 + parentName: RightIndex2 + position: {x: 0.036974, y: -1.4210854e-16, z: 2.220446e-18} + rotation: {x: 6.6594715e-16, y: 1.3444001e-16, z: 1.02018776e-13, w: 1} + scale: {x: 1, y: 1, z: 1} + - name: RightIndexEND + parentName: RightIndex3 + position: {x: 0.040359996, y: 0, z: 4.440892e-18} + rotation: {x: 0, y: -0, z: -0, w: 1} + scale: {x: 1, y: 1, z: 1} + - name: RightMiddle1 + parentName: RightHand + position: {x: 0.14554, y: -0.029749999, z: -0.024356598} + rotation: {x: 6.6594715e-16, y: 1.3444001e-16, z: 1.02018776e-13, w: 1} + scale: {x: 1, y: 1, z: 1} + - name: RightMiddle2 + parentName: RightMiddle1 + position: {x: 0.052775, y: -1.4210854e-16, z: 8.881784e-18} + rotation: {x: 6.6594715e-16, y: 1.3444001e-16, z: 1.02018776e-13, w: 1} + scale: {x: 1, y: 1, z: 1} + - name: RightMiddle3 + parentName: RightMiddle2 + position: {x: 0.036972, y: -1.4210854e-16, z: 1.7763568e-17} + rotation: {x: 6.6594715e-16, y: 1.3444001e-16, z: 1.02018776e-13, w: 1} + scale: {x: 1, y: 1, z: 1} + - name: RightMiddleEND + parentName: RightMiddle3 + position: {x: 0.04131, y: 0, z: -8.881784e-18} + rotation: {x: 0, y: -0, z: -0, w: 1} + scale: {x: 1, y: 1, z: 1} + - name: RightRing1 + parentName: RightHand + position: {x: 0.14554, y: -0.029749999, z: 0.0235272} + rotation: {x: 6.6594715e-16, y: 1.3444001e-16, z: 1.02018776e-13, w: 1} + scale: {x: 1, y: 1, z: 1} + - name: RightRing2 + parentName: RightRing1 + position: {x: 0.047684997, y: -1.4210854e-16, z: 3.5527136e-17} + rotation: {x: 6.6594715e-16, y: 1.3444001e-16, z: 1.02018776e-13, w: 1} + scale: {x: 1, y: 1, z: 1} + - name: RightRing3 + parentName: RightRing2 + position: {x: 0.036972, y: -1.4210854e-16, z: 0} + rotation: {x: 6.6594715e-16, y: 1.3444001e-16, z: 1.02018776e-13, w: 1} + scale: {x: 1, y: 1, z: 1} + - name: RightRingEND + parentName: RightRing3 + position: {x: 0.040370002, y: 0, z: 0} + rotation: {x: 0, y: -0, z: -0, w: 1} + scale: {x: 1, y: 1, z: 1} + - name: RightPinky1 + parentName: RightHand + position: {x: 0.147425, y: -0.029749999, z: 0.068584196} + rotation: {x: 6.6594715e-16, y: 1.3444001e-16, z: 1.02018776e-13, w: 1} + scale: {x: 1, y: 1, z: 1} + - name: RightPinky2 + parentName: RightPinky1 + position: {x: 0.038636, y: -2.842171e-16, z: 0} + rotation: {x: 6.6594715e-16, y: 1.3444001e-16, z: 1.02018776e-13, w: 1} + scale: {x: 1, y: 1, z: 1} + - name: RightPinky3 + parentName: RightPinky2 + position: {x: 0.024154998, y: 0, z: 0} + rotation: {x: 6.6594715e-16, y: 1.3444001e-16, z: 1.02018776e-13, w: 1} + scale: {x: 1, y: 1, z: 1} + - name: RightPinkyEND + parentName: RightPinky3 + position: {x: 0.027170999, y: -1.4210854e-16, z: 0} + rotation: {x: 0, y: -0, z: -0, w: 1} + scale: {x: 1, y: 1, z: 1} + - name: LeftShoulder + parentName: Spine2 + position: {x: 0.23315805, y: -0.0036182073, z: 0.0756481} + rotation: {x: -0.37467268, y: -0.42431706, z: 0.6925619, w: -0.4471392} + scale: {x: 1, y: 1, z: 1} + - name: LeftArm + parentName: LeftShoulder + position: {x: -0.17334424, y: -0.00000008990668, z: -0.0000000794735} + rotation: {x: -0.014234407, y: 0.18032233, z: 0.14265141, w: 0.97310424} + scale: {x: 1, y: 1, z: 1} + - name: LeftUpperArm + parentName: LeftArm + position: {x: -0.307883, y: 8.5265126e-16, z: -1.5987211e-16} + rotation: {x: -1.2453748e-15, y: 0.0000032468283, z: -1.0709786e-14, w: 1} + scale: {x: 1, y: 1, z: 1} + - name: LeftHand + parentName: LeftUpperArm + position: {x: -0.238435, y: 5.684342e-16, z: -1.4210854e-16} + rotation: {x: -0.008580742, y: 0.0020843137, z: -0.010125376, w: 0.99990976} + scale: {x: 1, y: 1, z: 1} + - name: LeftThumb1 + parentName: LeftHand + position: {x: -0.021173999, y: -0.00084, z: 0.039128397} + rotation: {x: 0, y: 0.4694716, z: -0, w: 0.8829476} + scale: {x: 1, y: 1, z: 1} + - name: LeftThumb2 + parentName: LeftThumb1 + position: {x: -0.06474489, y: 2.842171e-16, z: -0.00000013972273} + rotation: {x: 0, y: 0.28689036, z: -0, w: 0.9579634} + scale: {x: 1, y: 1, z: 1} + - name: LeftThumb3 + parentName: LeftThumb2 + position: {x: -0.04855281, y: 0, z: 0.00000009387237} + rotation: {x: 0, y: 5.6655387e-16, z: -0, w: 1} + scale: {x: 1, y: 1, z: 1} + - name: LeftThumbEND + parentName: LeftThumb3 + position: {x: -0.058039706, y: 0, z: -0.0000002491148} + rotation: {x: 0, y: -0, z: -0, w: 1} + scale: {x: 1, y: 1, z: 1} + - name: LeftIndex1 + parentName: LeftHand + position: {x: -0.14554, y: 0.029749999, z: 0.0735604} + rotation: {x: 0, y: -0, z: -0, w: 1} + scale: {x: 1, y: 1, z: 1} + - name: LeftIndex2 + parentName: LeftIndex1 + position: {x: -0.051833, y: 0, z: -3.5527136e-17} + rotation: {x: 0, y: -0, z: -0, w: 1} + scale: {x: 1, y: 1, z: 1} + - name: LeftIndex3 + parentName: LeftIndex2 + position: {x: -0.036974, y: 2.842171e-16, z: -2.2204459e-17} + rotation: {x: 0, y: -0, z: -0, w: 1} + scale: {x: 1, y: 1, z: 1} + - name: LeftIndexEND + parentName: LeftIndex3 + position: {x: -0.040359996, y: 1.4210854e-16, z: -2.4424906e-17} + rotation: {x: 0, y: -0, z: -0, w: 1} + scale: {x: 1, y: 1, z: 1} + - name: LeftMiddle1 + parentName: LeftHand + position: {x: -0.14554, y: 0.029749999, z: 0.024356598} + rotation: {x: 0, y: -0, z: -0, w: 1} + scale: {x: 1, y: 1, z: 1} + - name: LeftMiddle2 + parentName: LeftMiddle1 + position: {x: -0.052775, y: 0, z: -3.5527136e-17} + rotation: {x: 0, y: -0, z: -0, w: 1} + scale: {x: 1, y: 1, z: 1} + - name: LeftMiddle3 + parentName: LeftMiddle2 + position: {x: -0.036972, y: 2.842171e-16, z: -1.7763568e-17} + rotation: {x: 0, y: -0, z: -0, w: 1} + scale: {x: 1, y: 1, z: 1} + - name: LeftMiddleEND + parentName: LeftMiddle3 + position: {x: -0.04131, y: 1.4210854e-16, z: -2.6645352e-17} + rotation: {x: 0, y: -0, z: -0, w: 1} + scale: {x: 1, y: 1, z: 1} + - name: LeftRing1 + parentName: LeftHand + position: {x: -0.14554, y: 0.029749999, z: -0.0235272} + rotation: {x: 0, y: -0, z: -0, w: 1} + scale: {x: 1, y: 1, z: 1} + - name: LeftRing2 + parentName: LeftRing1 + position: {x: -0.047684997, y: -1.4210854e-16, z: -3.5527136e-17} + rotation: {x: 0, y: -0, z: -0, w: 1} + scale: {x: 1, y: 1, z: 1} + - name: LeftRing3 + parentName: LeftRing2 + position: {x: -0.036972, y: 2.842171e-16, z: -3.5527136e-17} + rotation: {x: 0, y: -0, z: -0, w: 1} + scale: {x: 1, y: 1, z: 1} + - name: LeftRingEND + parentName: LeftRing3 + position: {x: -0.040370002, y: 1.4210854e-16, z: -1.7763568e-17} + rotation: {x: 0, y: -0, z: -0, w: 1} + scale: {x: 1, y: 1, z: 1} + - name: LeftPinky1 + parentName: LeftHand + position: {x: -0.147425, y: 0.029749999, z: -0.068584196} + rotation: {x: 0, y: -0, z: -0, w: 1} + scale: {x: 1, y: 1, z: 1} + - name: LeftPinky2 + parentName: LeftPinky1 + position: {x: -0.038636, y: -1.4210854e-16, z: 3.5527136e-17} + rotation: {x: 0, y: -0, z: -0, w: 1} + scale: {x: 1, y: 1, z: 1} + - name: LeftPinky3 + parentName: LeftPinky2 + position: {x: -0.024154998, y: 2.842171e-16, z: -3.5527136e-17} + rotation: {x: 0, y: -0, z: -0, w: 1} + scale: {x: 1, y: 1, z: 1} + - name: LeftPinkyEND + parentName: LeftPinky3 + position: {x: -0.027170999, y: -1.4210854e-16, z: 0} + rotation: {x: 0, y: -0, z: -0, w: 1} + scale: {x: 1, y: 1, z: 1} + - name: LeftLeg + parentName: Hips + position: {x: -0.018006599, y: -0.12467603, z: -0.0030510616} + rotation: {x: 0.9914449, y: -0.0000000016844101, z: 0.13052614, w: 0.000000012794382} + scale: {x: 1, y: 1, z: 1} + - name: LeftCalf + parentName: LeftLeg + position: {x: -0.26618588, y: -7.68687e-17, z: 0} + rotation: {x: -1.349316e-22, y: 0.00000009632028, z: 1.400864e-15, w: 1} + scale: {x: 1, y: 1, z: 1} + - name: LeftFoot + parentName: LeftCalf + position: {x: -0.23847595, y: 0, z: 0} + rotation: {x: 0.0000000015095722, y: -9.042606e-15, z: -0.0000000041475157, + w: 1} + scale: {x: 1, y: 1, z: 1} + - name: LeftFootEND + parentName: LeftFoot + position: {x: -0.0619559, y: 0.00000037112684, z: 0.17022243} + rotation: {x: 0, y: -0, z: -0, w: 1} + scale: {x: 1, y: 1, z: 1} + - name: RightLeg + parentName: Hips + position: {x: -0.018007025, y: 0.124676, z: -0.0030511897} + rotation: {x: -0.13052633, y: -0.00000005275259, z: 0.9914448, w: -0.0000000069450032} + scale: {x: 1, y: 1, z: 1} + - name: RightCalf + parentName: RightLeg + position: {x: 0.26618537, y: 1.2434498e-16, z: 0.00000005632548} + rotation: {x: -9.1285475e-17, y: -0.00000029066345, z: 1.044696e-15, w: 1} + scale: {x: 1, y: 1, z: 1} + - name: RightFoot + parentName: RightCalf + position: {x: 0.23847602, y: 7.105427e-17, z: -0.000000025153046} + rotation: {x: 0.000000054361337, y: 0.00000012105109, z: 3.2543565e-11, w: 1} + scale: {x: 1, y: 1, z: 1} + - name: RightFootEND + parentName: RightFoot + position: {x: 0.061955888, y: 0, z: -0.17022213} + rotation: {x: 0, y: -0, z: -0, w: 1} + scale: {x: 1, y: 1, z: 1} + armTwist: 0.5 + foreArmTwist: 0.5 + upperLegTwist: 0.5 + legTwist: 0.5 + armStretch: 0.05 + legStretch: 0.05 + feetSpacing: 0 + rootMotionBoneName: Root1 + hasTranslationDoF: 0 + hasExtraRoot: 0 + skeletonHasParents: 1 + lastHumanDescriptionAvatarSource: {fileID: 9000000, guid: 6efe54ae207d7bb46a4adca3c0143126, + type: 3} + animationType: 3 + humanoidOversampling: 1 + additionalBone: 0 + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Animations/PlayerLeft.FBX" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Animations/PlayerLeft.FBX" new file mode 100644 index 00000000..dfdd7d04 Binary files /dev/null and "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Animations/PlayerLeft.FBX" differ diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Animations/PlayerLeft.FBX.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Animations/PlayerLeft.FBX.meta" new file mode 100644 index 00000000..316165c8 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Animations/PlayerLeft.FBX.meta" @@ -0,0 +1,1031 @@ +fileFormatVersion: 2 +guid: 1c78222edbf3c0f4280c1289cc46f053 +ModelImporter: + serializedVersion: 23 + fileIDToRecycleName: + 100000: Head + 100002: HeadEND + 100004: Hips + 100006: LeftArm + 100008: LeftCalf + 100010: LeftFoot + 100012: LeftFootEND + 100014: LeftHand + 100016: LeftIndex1 + 100018: LeftIndex2 + 100020: LeftIndex3 + 100022: LeftIndexEND + 100024: LeftLeg + 100026: LeftMiddle1 + 100028: LeftMiddle2 + 100030: LeftMiddle3 + 100032: LeftMiddleEND + 100034: LeftPinky1 + 100036: LeftPinky2 + 100038: LeftPinky3 + 100040: LeftPinkyEND + 100042: LeftRing1 + 100044: LeftRing2 + 100046: LeftRing3 + 100048: LeftRingEND + 100050: LeftShoulder + 100052: LeftThumb1 + 100054: LeftThumb2 + 100056: LeftThumb3 + 100058: LeftThumbEND + 100060: LeftUpperArm + 100062: Neck + 100064: //RootNode + 100066: RightArm + 100068: RightCalf + 100070: RightFoot + 100072: RightFootEND + 100074: RightHand + 100076: RightIndex1 + 100078: RightIndex2 + 100080: RightIndex3 + 100082: RightIndexEND + 100084: RightLeg + 100086: RightMiddle1 + 100088: RightMiddle2 + 100090: RightMiddle3 + 100092: RightMiddleEND + 100094: RightPinky1 + 100096: RightPinky2 + 100098: RightPinky3 + 100100: RightPinkyEND + 100102: RightRing1 + 100104: RightRing2 + 100106: RightRing3 + 100108: RightRingEND + 100110: RightShoulder + 100112: RightThumb1 + 100114: RightThumb2 + 100116: RightThumb3 + 100118: RightThumbEND + 100120: RightUpperArm + 100122: Root1 + 100124: Spine1 + 100126: Spine2 + 100128: Template_Character + 100130: Kart_Body + 100132: KartBase + 100134: KartEngine + 100136: KartEngineEND + 100138: KartFrontWheelLeft + 100140: KartFrontWheelRight + 100142: KartRearWheels + 100144: KartSilencer + 100146: KartSilencerEND + 100148: KartSteer + 100150: Root + 400000: Head + 400002: HeadEND + 400004: Hips + 400006: LeftArm + 400008: LeftCalf + 400010: LeftFoot + 400012: LeftFootEND + 400014: LeftHand + 400016: LeftIndex1 + 400018: LeftIndex2 + 400020: LeftIndex3 + 400022: LeftIndexEND + 400024: LeftLeg + 400026: LeftMiddle1 + 400028: LeftMiddle2 + 400030: LeftMiddle3 + 400032: LeftMiddleEND + 400034: LeftPinky1 + 400036: LeftPinky2 + 400038: LeftPinky3 + 400040: LeftPinkyEND + 400042: LeftRing1 + 400044: LeftRing2 + 400046: LeftRing3 + 400048: LeftRingEND + 400050: LeftShoulder + 400052: LeftThumb1 + 400054: LeftThumb2 + 400056: LeftThumb3 + 400058: LeftThumbEND + 400060: LeftUpperArm + 400062: Neck + 400064: //RootNode + 400066: RightArm + 400068: RightCalf + 400070: RightFoot + 400072: RightFootEND + 400074: RightHand + 400076: RightIndex1 + 400078: RightIndex2 + 400080: RightIndex3 + 400082: RightIndexEND + 400084: RightLeg + 400086: RightMiddle1 + 400088: RightMiddle2 + 400090: RightMiddle3 + 400092: RightMiddleEND + 400094: RightPinky1 + 400096: RightPinky2 + 400098: RightPinky3 + 400100: RightPinkyEND + 400102: RightRing1 + 400104: RightRing2 + 400106: RightRing3 + 400108: RightRingEND + 400110: RightShoulder + 400112: RightThumb1 + 400114: RightThumb2 + 400116: RightThumb3 + 400118: RightThumbEND + 400120: RightUpperArm + 400122: Root1 + 400124: Spine1 + 400126: Spine2 + 400128: Template_Character + 400130: Kart_Body + 400132: KartBase + 400134: KartEngine + 400136: KartEngineEND + 400138: KartFrontWheelLeft + 400140: KartFrontWheelRight + 400142: KartRearWheels + 400144: KartSilencer + 400146: KartSilencerEND + 400148: KartSteer + 400150: Root + 2100000: Template_Character_Material + 2100002: KartRacerMaterial + 4300000: Template_Character + 4300002: Kart_Body + 7400000: PlayerTurnLeft + 7400002: PlayerTurnRight + 9500000: //RootNode + 13700000: Template_Character + 13700002: Kart_Body + 2186277476908879412: ImportLogs + externalObjects: {} + materials: + importMaterials: 0 + materialName: 0 + materialSearch: 1 + materialLocation: 1 + animations: + legacyGenerateAnimations: 4 + bakeSimulation: 0 + resampleCurves: 1 + optimizeGameObjects: 0 + motionNodeName: + rigImportErrors: + rigImportWarnings: + animationImportErrors: + animationImportWarnings: "\nClip 'Take 001' has import animation warnings that + might lower retargeting quality:\nNote: Activate translation DOF on avatar to + improve retargeting quality.\n\t'Spine1' has translation animation that will + be discarded.\n" + animationRetargetingWarnings: + animationDoRetargetingWarnings: 0 + importAnimatedCustomProperties: 0 + importConstraints: 0 + animationCompression: 3 + animationRotationError: 0.5 + animationPositionError: 0.5 + animationScaleError: 0.5 + animationWrapMode: 0 + extraExposedTransformPaths: [] + extraUserProperties: [] + clipAnimations: + - serializedVersion: 16 + name: PlayerTurnLeft + takeName: Take 001 + firstFrame: 0 + lastFrame: 212 + wrapMode: 0 + orientationOffsetY: 0 + level: 0 + cycleOffset: 0 + loop: 0 + hasAdditiveReferencePose: 0 + loopTime: 1 + loopBlend: 1 + loopBlendOrientation: 1 + loopBlendPositionY: 1 + loopBlendPositionXZ: 1 + keepOriginalOrientation: 0 + keepOriginalPositionY: 1 + keepOriginalPositionXZ: 0 + heightFromFeet: 0 + mirror: 0 + bodyMask: 01000000010000000100000001000000010000000100000001000000010000000100000001000000010000000100000001000000 + curves: [] + events: [] + transformMask: [] + maskType: 3 + maskSource: {instanceID: 0} + additiveReferencePoseFrame: 0 + - serializedVersion: 16 + name: PlayerTurnRight + takeName: Take 001 + firstFrame: 0 + lastFrame: 212 + wrapMode: 0 + orientationOffsetY: 0 + level: 0 + cycleOffset: 0 + loop: 0 + hasAdditiveReferencePose: 0 + loopTime: 1 + loopBlend: 1 + loopBlendOrientation: 1 + loopBlendPositionY: 1 + loopBlendPositionXZ: 1 + keepOriginalOrientation: 0 + keepOriginalPositionY: 1 + keepOriginalPositionXZ: 0 + heightFromFeet: 0 + mirror: 1 + bodyMask: 01000000010000000100000001000000010000000100000001000000010000000100000001000000010000000100000001000000 + curves: [] + events: [] + transformMask: [] + maskType: 3 + maskSource: {instanceID: 0} + additiveReferencePoseFrame: 0 + isReadable: 1 + meshes: + lODScreenPercentages: [] + globalScale: 1 + meshCompression: 0 + addColliders: 0 + useSRGBMaterialColor: 1 + importVisibility: 1 + importBlendShapes: 1 + importCameras: 1 + importLights: 1 + swapUVChannels: 0 + generateSecondaryUV: 0 + useFileUnits: 1 + optimizeMeshForGPU: 1 + keepQuads: 0 + weldVertices: 1 + preserveHierarchy: 0 + indexFormat: 0 + secondaryUVAngleDistortion: 8 + secondaryUVAreaDistortion: 15.000001 + secondaryUVHardAngle: 88 + secondaryUVPackMargin: 4 + useFileScale: 1 + previousCalculatedGlobalScale: 0.01 + hasPreviousCalculatedGlobalScale: 1 + tangentSpace: + normalSmoothAngle: 60 + normalImportMode: 0 + tangentImportMode: 3 + normalCalculationMode: 4 + legacyComputeAllNormalsFromSmoothingGroupsWhenMeshHasBlendShapes: 0 + blendShapeNormalImportMode: 1 + normalSmoothingSource: 0 + importAnimation: 1 + copyAvatar: 1 + humanDescription: + serializedVersion: 2 + human: + - boneName: Hips + humanName: Hips + limit: + min: {x: 0, y: 0, z: 0} + max: {x: 0, y: 0, z: 0} + value: {x: 0, y: 0, z: 0} + length: 0 + modified: 0 + - boneName: LeftLeg + humanName: LeftUpperLeg + limit: + min: {x: 0, y: 0, z: 0} + max: {x: 0, y: 0, z: 0} + value: {x: 0, y: 0, z: 0} + length: 0 + modified: 0 + - boneName: RightLeg + humanName: RightUpperLeg + limit: + min: {x: 0, y: 0, z: 0} + max: {x: 0, y: 0, z: 0} + value: {x: 0, y: 0, z: 0} + length: 0 + modified: 0 + - boneName: LeftCalf + humanName: LeftLowerLeg + limit: + min: {x: 0, y: 0, z: 0} + max: {x: 0, y: 0, z: 0} + value: {x: 0, y: 0, z: 0} + length: 0 + modified: 0 + - boneName: RightCalf + humanName: RightLowerLeg + limit: + min: {x: 0, y: 0, z: 0} + max: {x: 0, y: 0, z: 0} + value: {x: 0, y: 0, z: 0} + length: 0 + modified: 0 + - boneName: LeftFoot + humanName: LeftFoot + limit: + min: {x: 0, y: 0, z: 0} + max: {x: 0, y: 0, z: 0} + value: {x: 0, y: 0, z: 0} + length: 0 + modified: 0 + - boneName: RightFoot + humanName: RightFoot + limit: + min: {x: 0, y: 0, z: 0} + max: {x: 0, y: 0, z: 0} + value: {x: 0, y: 0, z: 0} + length: 0 + modified: 0 + - boneName: Spine1 + humanName: Spine + limit: + min: {x: 0, y: 0, z: 0} + max: {x: 0, y: 0, z: 0} + value: {x: 0, y: 0, z: 0} + length: 0 + modified: 0 + - boneName: Spine2 + humanName: Chest + limit: + min: {x: 0, y: 0, z: 0} + max: {x: 0, y: 0, z: 0} + value: {x: 0, y: 0, z: 0} + length: 0 + modified: 0 + - boneName: Neck + humanName: Neck + limit: + min: {x: 0, y: 0, z: 0} + max: {x: 0, y: 0, z: 0} + value: {x: 0, y: 0, z: 0} + length: 0 + modified: 0 + - boneName: Head + humanName: Head + limit: + min: {x: 0, y: 0, z: 0} + max: {x: 0, y: 0, z: 0} + value: {x: 0, y: 0, z: 0} + length: 0 + modified: 0 + - boneName: LeftShoulder + humanName: LeftShoulder + limit: + min: {x: 0, y: 0, z: 0} + max: {x: 0, y: 0, z: 0} + value: {x: 0, y: 0, z: 0} + length: 0 + modified: 0 + - boneName: RightShoulder + humanName: RightShoulder + limit: + min: {x: 0, y: 0, z: 0} + max: {x: 0, y: 0, z: 0} + value: {x: 0, y: 0, z: 0} + length: 0 + modified: 0 + - boneName: LeftArm + humanName: LeftUpperArm + limit: + min: {x: 0, y: 0, z: 0} + max: {x: 0, y: 0, z: 0} + value: {x: 0, y: 0, z: 0} + length: 0 + modified: 0 + - boneName: RightArm + humanName: RightUpperArm + limit: + min: {x: 0, y: 0, z: 0} + max: {x: 0, y: 0, z: 0} + value: {x: 0, y: 0, z: 0} + length: 0 + modified: 0 + - boneName: LeftUpperArm + humanName: LeftLowerArm + limit: + min: {x: 0, y: 0, z: 0} + max: {x: 0, y: 0, z: 0} + value: {x: 0, y: 0, z: 0} + length: 0 + modified: 0 + - boneName: RightUpperArm + humanName: RightLowerArm + limit: + min: {x: 0, y: 0, z: 0} + max: {x: 0, y: 0, z: 0} + value: {x: 0, y: 0, z: 0} + length: 0 + modified: 0 + - boneName: LeftHand + humanName: LeftHand + limit: + min: {x: 0, y: 0, z: 0} + max: {x: 0, y: 0, z: 0} + value: {x: 0, y: 0, z: 0} + length: 0 + modified: 0 + - boneName: RightHand + humanName: RightHand + limit: + min: {x: 0, y: 0, z: 0} + max: {x: 0, y: 0, z: 0} + value: {x: 0, y: 0, z: 0} + length: 0 + modified: 0 + - boneName: LeftThumb1 + humanName: Left Thumb Proximal + limit: + min: {x: 0, y: 0, z: 0} + max: {x: 0, y: 0, z: 0} + value: {x: 0, y: 0, z: 0} + length: 0 + modified: 0 + - boneName: LeftThumb2 + humanName: Left Thumb Intermediate + limit: + min: {x: 0, y: 0, z: 0} + max: {x: 0, y: 0, z: 0} + value: {x: 0, y: 0, z: 0} + length: 0 + modified: 0 + - boneName: LeftThumb3 + humanName: Left Thumb Distal + limit: + min: {x: 0, y: 0, z: 0} + max: {x: 0, y: 0, z: 0} + value: {x: 0, y: 0, z: 0} + length: 0 + modified: 0 + - boneName: LeftIndex1 + humanName: Left Index Proximal + limit: + min: {x: 0, y: 0, z: 0} + max: {x: 0, y: 0, z: 0} + value: {x: 0, y: 0, z: 0} + length: 0 + modified: 0 + - boneName: LeftIndex2 + humanName: Left Index Intermediate + limit: + min: {x: 0, y: 0, z: 0} + max: {x: 0, y: 0, z: 0} + value: {x: 0, y: 0, z: 0} + length: 0 + modified: 0 + - boneName: LeftIndex3 + humanName: Left Index Distal + limit: + min: {x: 0, y: 0, z: 0} + max: {x: 0, y: 0, z: 0} + value: {x: 0, y: 0, z: 0} + length: 0 + modified: 0 + - boneName: LeftMiddle1 + humanName: Left Middle Proximal + limit: + min: {x: 0, y: 0, z: 0} + max: {x: 0, y: 0, z: 0} + value: {x: 0, y: 0, z: 0} + length: 0 + modified: 0 + - boneName: LeftMiddle2 + humanName: Left Middle Intermediate + limit: + min: {x: 0, y: 0, z: 0} + max: {x: 0, y: 0, z: 0} + value: {x: 0, y: 0, z: 0} + length: 0 + modified: 0 + - boneName: LeftMiddle3 + humanName: Left Middle Distal + limit: + min: {x: 0, y: 0, z: 0} + max: {x: 0, y: 0, z: 0} + value: {x: 0, y: 0, z: 0} + length: 0 + modified: 0 + - boneName: LeftRing1 + humanName: Left Ring Proximal + limit: + min: {x: 0, y: 0, z: 0} + max: {x: 0, y: 0, z: 0} + value: {x: 0, y: 0, z: 0} + length: 0 + modified: 0 + - boneName: LeftRing2 + humanName: Left Ring Intermediate + limit: + min: {x: 0, y: 0, z: 0} + max: {x: 0, y: 0, z: 0} + value: {x: 0, y: 0, z: 0} + length: 0 + modified: 0 + - boneName: LeftRing3 + humanName: Left Ring Distal + limit: + min: {x: 0, y: 0, z: 0} + max: {x: 0, y: 0, z: 0} + value: {x: 0, y: 0, z: 0} + length: 0 + modified: 0 + - boneName: LeftPinky1 + humanName: Left Little Proximal + limit: + min: {x: 0, y: 0, z: 0} + max: {x: 0, y: 0, z: 0} + value: {x: 0, y: 0, z: 0} + length: 0 + modified: 0 + - boneName: LeftPinky2 + humanName: Left Little Intermediate + limit: + min: {x: 0, y: 0, z: 0} + max: {x: 0, y: 0, z: 0} + value: {x: 0, y: 0, z: 0} + length: 0 + modified: 0 + - boneName: LeftPinky3 + humanName: Left Little Distal + limit: + min: {x: 0, y: 0, z: 0} + max: {x: 0, y: 0, z: 0} + value: {x: 0, y: 0, z: 0} + length: 0 + modified: 0 + - boneName: RightThumb1 + humanName: Right Thumb Proximal + limit: + min: {x: 0, y: 0, z: 0} + max: {x: 0, y: 0, z: 0} + value: {x: 0, y: 0, z: 0} + length: 0 + modified: 0 + - boneName: RightThumb2 + humanName: Right Thumb Intermediate + limit: + min: {x: 0, y: 0, z: 0} + max: {x: 0, y: 0, z: 0} + value: {x: 0, y: 0, z: 0} + length: 0 + modified: 0 + - boneName: RightThumb3 + humanName: Right Thumb Distal + limit: + min: {x: 0, y: 0, z: 0} + max: {x: 0, y: 0, z: 0} + value: {x: 0, y: 0, z: 0} + length: 0 + modified: 0 + - boneName: RightIndex1 + humanName: Right Index Proximal + limit: + min: {x: 0, y: 0, z: 0} + max: {x: 0, y: 0, z: 0} + value: {x: 0, y: 0, z: 0} + length: 0 + modified: 0 + - boneName: RightIndex2 + humanName: Right Index Intermediate + limit: + min: {x: 0, y: 0, z: 0} + max: {x: 0, y: 0, z: 0} + value: {x: 0, y: 0, z: 0} + length: 0 + modified: 0 + - boneName: RightIndex3 + humanName: Right Index Distal + limit: + min: {x: 0, y: 0, z: 0} + max: {x: 0, y: 0, z: 0} + value: {x: 0, y: 0, z: 0} + length: 0 + modified: 0 + - boneName: RightMiddle1 + humanName: Right Middle Proximal + limit: + min: {x: 0, y: 0, z: 0} + max: {x: 0, y: 0, z: 0} + value: {x: 0, y: 0, z: 0} + length: 0 + modified: 0 + - boneName: RightMiddle2 + humanName: Right Middle Intermediate + limit: + min: {x: 0, y: 0, z: 0} + max: {x: 0, y: 0, z: 0} + value: {x: 0, y: 0, z: 0} + length: 0 + modified: 0 + - boneName: RightMiddle3 + humanName: Right Middle Distal + limit: + min: {x: 0, y: 0, z: 0} + max: {x: 0, y: 0, z: 0} + value: {x: 0, y: 0, z: 0} + length: 0 + modified: 0 + - boneName: RightRing1 + humanName: Right Ring Proximal + limit: + min: {x: 0, y: 0, z: 0} + max: {x: 0, y: 0, z: 0} + value: {x: 0, y: 0, z: 0} + length: 0 + modified: 0 + - boneName: RightRing2 + humanName: Right Ring Intermediate + limit: + min: {x: 0, y: 0, z: 0} + max: {x: 0, y: 0, z: 0} + value: {x: 0, y: 0, z: 0} + length: 0 + modified: 0 + - boneName: RightRing3 + humanName: Right Ring Distal + limit: + min: {x: 0, y: 0, z: 0} + max: {x: 0, y: 0, z: 0} + value: {x: 0, y: 0, z: 0} + length: 0 + modified: 0 + - boneName: RightPinky1 + humanName: Right Little Proximal + limit: + min: {x: 0, y: 0, z: 0} + max: {x: 0, y: 0, z: 0} + value: {x: 0, y: 0, z: 0} + length: 0 + modified: 0 + - boneName: RightPinky2 + humanName: Right Little Intermediate + limit: + min: {x: 0, y: 0, z: 0} + max: {x: 0, y: 0, z: 0} + value: {x: 0, y: 0, z: 0} + length: 0 + modified: 0 + - boneName: RightPinky3 + humanName: Right Little Distal + limit: + min: {x: 0, y: 0, z: 0} + max: {x: 0, y: 0, z: 0} + value: {x: 0, y: 0, z: 0} + length: 0 + modified: 0 + skeleton: + - name: PlayerNEW(Clone) + parentName: + position: {x: -0, y: 0, z: 0} + rotation: {x: 0, y: -0, z: -0, w: 1} + scale: {x: 1, y: 1, z: 1} + - name: Root1 + parentName: PlayerNEW(Clone) + position: {x: -0, y: 0, z: 0} + rotation: {x: 0, y: -0, z: -0, w: 1} + scale: {x: 1, y: 1, z: 1} + - name: Hips + parentName: Root1 + position: {x: 2.44256e-19, y: 0.5853834, z: -0.011920411} + rotation: {x: 0.7011581, y: 0.7011581, z: 0.0915279, w: -0.0915279} + scale: {x: 1, y: 1, z: 1} + - name: LeftLeg + parentName: Hips + position: {x: -0.018006599, y: -0.12467603, z: -0.0030510616} + rotation: {x: 0.9914449, y: -0.0000000016844101, z: 0.13052614, w: 0.000000012794382} + scale: {x: 1, y: 1, z: 1} + - name: LeftCalf + parentName: LeftLeg + position: {x: -0.26618588, y: -7.68687e-17, z: 0} + rotation: {x: -1.349316e-22, y: 0.00000009632028, z: 1.400864e-15, w: 1} + scale: {x: 1, y: 1, z: 1} + - name: LeftFoot + parentName: LeftCalf + position: {x: -0.23847595, y: 0, z: 0} + rotation: {x: 0.0000000015095722, y: -9.042606e-15, z: -0.0000000041475157, + w: 1} + scale: {x: 1, y: 1, z: 1} + - name: LeftFootEND + parentName: LeftFoot + position: {x: -0.0619559, y: 0.00000037112684, z: 0.17022243} + rotation: {x: 0, y: -0, z: -0, w: 1} + scale: {x: 1, y: 1, z: 1} + - name: RightLeg + parentName: Hips + position: {x: -0.018007025, y: 0.124676, z: -0.0030511897} + rotation: {x: -0.13052633, y: -0.00000005275259, z: 0.9914448, w: -0.0000000069450032} + scale: {x: 1, y: 1, z: 1} + - name: RightCalf + parentName: RightLeg + position: {x: 0.26618537, y: 1.2434498e-16, z: 0.00000005632548} + rotation: {x: -9.1285475e-17, y: -0.00000029066345, z: 1.044696e-15, w: 1} + scale: {x: 1, y: 1, z: 1} + - name: RightFoot + parentName: RightCalf + position: {x: 0.23847602, y: 7.105427e-17, z: -0.000000025153046} + rotation: {x: 0.000000054361337, y: 0.00000012105109, z: 3.2543565e-11, w: 1} + scale: {x: 1, y: 1, z: 1} + - name: RightFootEND + parentName: RightFoot + position: {x: 0.061955888, y: 0, z: -0.17022213} + rotation: {x: 0, y: -0, z: -0, w: 1} + scale: {x: 1, y: 1, z: 1} + - name: Spine1 + parentName: Hips + position: {x: 0.075807385, y: -1.732115e-17, z: -0.00000021538617} + rotation: {x: 2.775558e-17, y: -0.1642221, z: 3.904875e-34, w: 0.98642343} + scale: {x: 1, y: 1, z: 1} + - name: Spine2 + parentName: Spine1 + position: {x: 0.2143929, y: -4.4430303e-17, z: -0.0068833157} + rotation: {x: 0.7065379, y: -0.028359152, z: 0.028359152, w: 0.7065379} + scale: {x: 1, y: 1, z: 1} + - name: LeftShoulder + parentName: Spine2 + position: {x: 0.23315805, y: -0.0036182073, z: 0.0756481} + rotation: {x: -0.42572528, y: -0.43304613, z: 0.65510774, w: -0.44951406} + scale: {x: 1, y: 1, z: 1} + - name: LeftArm + parentName: LeftShoulder + position: {x: -0.17334424, y: -0.00000008990668, z: -0.0000000794735} + rotation: {x: -0.014969045, y: 0.15996195, z: 0.12306981, w: 0.9793069} + scale: {x: 1, y: 1, z: 1} + - name: LeftUpperArm + parentName: LeftArm + position: {x: -0.307883, y: 8.5265126e-16, z: -1.5987211e-16} + rotation: {x: -1.2453748e-15, y: 0.0000032468283, z: -1.0709786e-14, w: 1} + scale: {x: 1, y: 1, z: 1} + - name: LeftHand + parentName: LeftUpperArm + position: {x: -0.238435, y: 5.684342e-16, z: -1.4210854e-16} + rotation: {x: -0.008643247, y: 0.0023682874, z: 0.019030502, w: 0.9997788} + scale: {x: 1, y: 1, z: 1} + - name: LeftIndex1 + parentName: LeftHand + position: {x: -0.14554, y: 0.029749999, z: 0.0735604} + rotation: {x: 0.00000019092104, y: 0.030590264, z: -0.037363186, w: 0.9988334} + scale: {x: 1, y: 1, z: 1} + - name: LeftIndex2 + parentName: LeftIndex1 + position: {x: -0.051833, y: 0, z: -3.5527136e-17} + rotation: {x: 0, y: -0, z: -0, w: 1} + scale: {x: 1, y: 1, z: 1} + - name: LeftIndex3 + parentName: LeftIndex2 + position: {x: -0.036974, y: 2.842171e-16, z: -2.2204459e-17} + rotation: {x: 0, y: -0, z: -0, w: 1} + scale: {x: 1, y: 1, z: 1} + - name: LeftIndexEND + parentName: LeftIndex3 + position: {x: -0.040359996, y: 1.4210854e-16, z: -2.4424906e-17} + rotation: {x: 0, y: -0, z: -0, w: 1} + scale: {x: 1, y: 1, z: 1} + - name: LeftMiddle1 + parentName: LeftHand + position: {x: -0.14554, y: 0.029749999, z: 0.024356598} + rotation: {x: -0.000000022351731, y: 0.0305907, z: -0.03736482, w: 0.9988334} + scale: {x: 1, y: 1, z: 1} + - name: LeftMiddle2 + parentName: LeftMiddle1 + position: {x: -0.052775, y: 0, z: -3.5527136e-17} + rotation: {x: 0, y: -0, z: -0, w: 1} + scale: {x: 1, y: 1, z: 1} + - name: LeftMiddle3 + parentName: LeftMiddle2 + position: {x: -0.036972, y: 2.842171e-16, z: -1.7763568e-17} + rotation: {x: 0, y: -0, z: -0, w: 1} + scale: {x: 1, y: 1, z: 1} + - name: LeftMiddleEND + parentName: LeftMiddle3 + position: {x: -0.04131, y: 1.4210854e-16, z: -2.6645352e-17} + rotation: {x: 0, y: -0, z: -0, w: 1} + scale: {x: 1, y: 1, z: 1} + - name: LeftPinky1 + parentName: LeftHand + position: {x: -0.147425, y: 0.029749999, z: -0.068584196} + rotation: {x: -0.000000107102046, y: 0.030590476, z: -0.037364885, w: 0.9988334} + scale: {x: 1, y: 1, z: 1} + - name: LeftPinky2 + parentName: LeftPinky1 + position: {x: -0.038636, y: -1.4210854e-16, z: 3.5527136e-17} + rotation: {x: 0, y: -0, z: -0, w: 1} + scale: {x: 1, y: 1, z: 1} + - name: LeftPinky3 + parentName: LeftPinky2 + position: {x: -0.024154998, y: 2.842171e-16, z: -3.5527136e-17} + rotation: {x: 0, y: -0, z: -0, w: 1} + scale: {x: 1, y: 1, z: 1} + - name: LeftPinkyEND + parentName: LeftPinky3 + position: {x: -0.027170999, y: -1.4210854e-16, z: 0} + rotation: {x: 0, y: -0, z: -0, w: 1} + scale: {x: 1, y: 1, z: 1} + - name: LeftRing1 + parentName: LeftHand + position: {x: -0.14554, y: 0.029749999, z: -0.0235272} + rotation: {x: 0.000000109896014, y: 0.030590901, z: -0.03736426, w: 0.99883336} + scale: {x: 1, y: 1, z: 1} + - name: LeftRing2 + parentName: LeftRing1 + position: {x: -0.047684997, y: -1.4210854e-16, z: -3.5527136e-17} + rotation: {x: 0, y: -0, z: -0, w: 1} + scale: {x: 1, y: 1, z: 1} + - name: LeftRing3 + parentName: LeftRing2 + position: {x: -0.036972, y: 2.842171e-16, z: -3.5527136e-17} + rotation: {x: 0, y: -0, z: -0, w: 1} + scale: {x: 1, y: 1, z: 1} + - name: LeftRingEND + parentName: LeftRing3 + position: {x: -0.040370002, y: 1.4210854e-16, z: -1.7763568e-17} + rotation: {x: 0, y: -0, z: -0, w: 1} + scale: {x: 1, y: 1, z: 1} + - name: LeftThumb1 + parentName: LeftHand + position: {x: -0.021173999, y: -0.00084, z: 0.039128397} + rotation: {x: 0, y: 0.4694716, z: -0, w: 0.8829476} + scale: {x: 1, y: 1, z: 1} + - name: LeftThumb2 + parentName: LeftThumb1 + position: {x: -0.06474489, y: 2.842171e-16, z: -0.00000013972273} + rotation: {x: 0.00000008497631, y: 0.02878143, z: 0.0000002002365, w: 0.99958575} + scale: {x: 1, y: 1, z: 1} + - name: LeftThumb3 + parentName: LeftThumb2 + position: {x: -0.04855281, y: 0, z: 0.00000009387237} + rotation: {x: 0, y: 5.6655387e-16, z: -0, w: 1} + scale: {x: 1, y: 1, z: 1} + - name: LeftThumbEND + parentName: LeftThumb3 + position: {x: -0.058039706, y: 0, z: -0.0000002491148} + rotation: {x: 0, y: -0, z: -0, w: 1} + scale: {x: 1, y: 1, z: 1} + - name: Neck + parentName: Spine2 + position: {x: 0.33357757, y: 0.005019527, z: 2.4104562e-16} + rotation: {x: -0.000000059604623, y: -0.000000048428756, z: -0.31446886, w: 0.94926775} + scale: {x: 1, y: 1, z: 1} + - name: Head + parentName: Neck + position: {x: 0.110379726, y: -0.0000007722697, z: -4.802617e-16} + rotation: {x: 2.7755576e-17, y: -1.9428903e-16, z: 0.33380687, w: 0.9426415} + scale: {x: 1, y: 1, z: 1} + - name: HeadEND + parentName: Head + position: {x: 0.49002212, y: -0.000000026670863, z: 9.6758976e-17} + rotation: {x: 0, y: -0, z: -0, w: 1} + scale: {x: 1, y: 1, z: 1} + - name: RightShoulder + parentName: Spine2 + position: {x: 0.23315805, y: -0.0036182073, z: -0.0756481} + rotation: {x: -0.43304622, y: 0.42572525, z: 0.449514, w: 0.6551078} + scale: {x: 1, y: 1, z: 1} + - name: RightArm + parentName: RightShoulder + position: {x: 0.17334424, y: 0.00000008990668, z: 0.0000000794735} + rotation: {x: -0.012504441, y: 0.15556175, z: 0.12742665, w: 0.97949314} + scale: {x: 1, y: 1, z: 1} + - name: RightUpperArm + parentName: RightArm + position: {x: 0.307883, y: -7.105427e-16, z: 0} + rotation: {x: -0.00035715738, y: 0.010721008, z: -0.011822482, w: 0.99987257} + scale: {x: 1, y: 1, z: 1} + - name: RightHand + parentName: RightUpperArm + position: {x: 0.238435, y: -7.105427e-16, z: 3.5527136e-17} + rotation: {x: -0.008695018, y: -0.014621013, z: 0.018709179, w: 0.9996802} + scale: {x: 1, y: 1, z: 1} + - name: RightIndex1 + parentName: RightHand + position: {x: 0.14554, y: -0.029749999, z: -0.0735604} + rotation: {x: 0.000000073574455, y: 0.030591365, z: -0.037365444, w: 0.9988333} + scale: {x: 1, y: 1, z: 1} + - name: RightIndex2 + parentName: RightIndex1 + position: {x: 0.051833, y: -1.4210854e-16, z: 1.11022296e-17} + rotation: {x: 6.6594715e-16, y: 1.3444001e-16, z: 1.02018776e-13, w: 1} + scale: {x: 1, y: 1, z: 1} + - name: RightIndex3 + parentName: RightIndex2 + position: {x: 0.036974, y: -1.4210854e-16, z: 2.220446e-18} + rotation: {x: 6.6594715e-16, y: 1.3444001e-16, z: 1.02018776e-13, w: 1} + scale: {x: 1, y: 1, z: 1} + - name: RightIndexEND + parentName: RightIndex3 + position: {x: 0.040359996, y: 0, z: 4.440892e-18} + rotation: {x: 0, y: -0, z: -0, w: 1} + scale: {x: 1, y: 1, z: 1} + - name: RightMiddle1 + parentName: RightHand + position: {x: 0.14554, y: -0.029749999, z: -0.024356598} + rotation: {x: -0.00000014062962, y: 0.030591466, z: -0.037367173, w: 0.9988333} + scale: {x: 1, y: 1, z: 1} + - name: RightMiddle2 + parentName: RightMiddle1 + position: {x: 0.052775, y: -1.4210854e-16, z: 8.881784e-18} + rotation: {x: 6.6594715e-16, y: 1.3444001e-16, z: 1.02018776e-13, w: 1} + scale: {x: 1, y: 1, z: 1} + - name: RightMiddle3 + parentName: RightMiddle2 + position: {x: 0.036972, y: -1.4210854e-16, z: 1.7763568e-17} + rotation: {x: 6.6594715e-16, y: 1.3444001e-16, z: 1.02018776e-13, w: 1} + scale: {x: 1, y: 1, z: 1} + - name: RightMiddleEND + parentName: RightMiddle3 + position: {x: 0.04131, y: 0, z: -8.881784e-18} + rotation: {x: 0, y: -0, z: -0, w: 1} + scale: {x: 1, y: 1, z: 1} + - name: RightPinky1 + parentName: RightHand + position: {x: 0.147425, y: -0.029749999, z: 0.068584196} + rotation: {x: -0.00000013224775, y: 0.030591635, z: -0.0373673, w: 0.9988333} + scale: {x: 1, y: 1, z: 1} + - name: RightPinky2 + parentName: RightPinky1 + position: {x: 0.038636, y: -2.842171e-16, z: 0} + rotation: {x: 6.6594715e-16, y: 1.3444001e-16, z: 1.02018776e-13, w: 1} + scale: {x: 1, y: 1, z: 1} + - name: RightPinky3 + parentName: RightPinky2 + position: {x: 0.024154998, y: 0, z: 0} + rotation: {x: 6.6594715e-16, y: 1.3444001e-16, z: 1.02018776e-13, w: 1} + scale: {x: 1, y: 1, z: 1} + - name: RightPinkyEND + parentName: RightPinky3 + position: {x: 0.027170999, y: -1.4210854e-16, z: 0} + rotation: {x: 0, y: -0, z: -0, w: 1} + scale: {x: 1, y: 1, z: 1} + - name: RightRing1 + parentName: RightHand + position: {x: 0.14554, y: -0.029749999, z: 0.0235272} + rotation: {x: 0.000000028870986, y: 0.03059185, z: -0.03736628, w: 0.99883324} + scale: {x: 1, y: 1, z: 1} + - name: RightRing2 + parentName: RightRing1 + position: {x: 0.047684997, y: -1.4210854e-16, z: 3.5527136e-17} + rotation: {x: 6.6594715e-16, y: 1.3444001e-16, z: 1.02018776e-13, w: 1} + scale: {x: 1, y: 1, z: 1} + - name: RightRing3 + parentName: RightRing2 + position: {x: 0.036972, y: -1.4210854e-16, z: 0} + rotation: {x: 6.6594715e-16, y: 1.3444001e-16, z: 1.02018776e-13, w: 1} + scale: {x: 1, y: 1, z: 1} + - name: RightRingEND + parentName: RightRing3 + position: {x: 0.040370002, y: 0, z: 0} + rotation: {x: 0, y: -0, z: -0, w: 1} + scale: {x: 1, y: 1, z: 1} + - name: RightThumb1 + parentName: RightHand + position: {x: 0.021173999, y: 0.00084, z: -0.039128397} + rotation: {x: 3.7582164e-14, y: 0.4694716, z: -6.863143e-14, w: 0.8829476} + scale: {x: 1, y: 1, z: 1} + - name: RightThumb2 + parentName: RightThumb1 + position: {x: 0.06474489, y: 0, z: 0.00000013972273} + rotation: {x: 0.00000006224392, y: 0.028783778, z: -0.0000019193158, w: 0.9995857} + scale: {x: 1, y: 1, z: 1} + - name: RightThumb3 + parentName: RightThumb2 + position: {x: 0.04855281, y: -2.842171e-16, z: -0.00000009387237} + rotation: {x: 5.6655387e-16, y: -3.2162452e-16, z: -7.6571376e-16, w: 1} + scale: {x: 1, y: 1, z: 1} + - name: RightThumbEND + parentName: RightThumb3 + position: {x: 0.058039706, y: 0, z: 0.0000002491148} + rotation: {x: 0, y: -0, z: -0, w: 1} + scale: {x: 1, y: 1, z: 1} + - name: Template_Character + parentName: PlayerNEW(Clone) + position: {x: -0, y: 0, z: 0} + rotation: {x: 0, y: -0, z: -0, w: 1} + scale: {x: 1, y: 1, z: 1} + armTwist: 0.5 + foreArmTwist: 0.5 + upperLegTwist: 0.5 + legTwist: 0.5 + armStretch: 0.05 + legStretch: 0.05 + feetSpacing: 0 + rootMotionBoneName: Root1 + hasTranslationDoF: 1 + hasExtraRoot: 0 + skeletonHasParents: 1 + lastHumanDescriptionAvatarSource: {fileID: 9000000, guid: 6efe54ae207d7bb46a4adca3c0143126, + type: 3} + animationType: 3 + humanoidOversampling: 1 + additionalBone: 0 + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Audio.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Audio.meta" new file mode 100644 index 00000000..d4b8775b --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Audio.meta" @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: aa23596ae46e14f568b42db808e171fc +folderAsset: yes +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Audio/CollisionWalls.wav" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Audio/CollisionWalls.wav" new file mode 100644 index 00000000..016b435e Binary files /dev/null and "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Audio/CollisionWalls.wav" differ diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Audio/CollisionWalls.wav.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Audio/CollisionWalls.wav.meta" new file mode 100644 index 00000000..eedf7572 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Audio/CollisionWalls.wav.meta" @@ -0,0 +1,22 @@ +fileFormatVersion: 2 +guid: 09f715e4d9c95e848945e7702f9bab46 +AudioImporter: + externalObjects: {} + serializedVersion: 6 + defaultSettings: + loadType: 0 + sampleRateSetting: 0 + sampleRateOverride: 44100 + compressionFormat: 1 + quality: 1 + conversionMode: 0 + platformSettingOverrides: {} + forceToMono: 0 + normalize: 1 + preloadAudioData: 1 + loadInBackground: 0 + ambisonic: 0 + 3D: 1 + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Audio/DriftLoop.wav" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Audio/DriftLoop.wav" new file mode 100644 index 00000000..bcf54042 Binary files /dev/null and "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Audio/DriftLoop.wav" differ diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Audio/DriftLoop.wav.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Audio/DriftLoop.wav.meta" new file mode 100644 index 00000000..6da90cf1 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Audio/DriftLoop.wav.meta" @@ -0,0 +1,22 @@ +fileFormatVersion: 2 +guid: 94cb8601275583343ac318c5db2c2638 +AudioImporter: + externalObjects: {} + serializedVersion: 6 + defaultSettings: + loadType: 0 + sampleRateSetting: 0 + sampleRateOverride: 44100 + compressionFormat: 1 + quality: 1 + conversionMode: 0 + platformSettingOverrides: {} + forceToMono: 0 + normalize: 1 + preloadAudioData: 1 + loadInBackground: 0 + ambisonic: 0 + 3D: 1 + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Audio/EngineA1.wav" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Audio/EngineA1.wav" new file mode 100644 index 00000000..2b97bc9a Binary files /dev/null and "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Audio/EngineA1.wav" differ diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Audio/EngineA1.wav.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Audio/EngineA1.wav.meta" new file mode 100644 index 00000000..f130e103 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Audio/EngineA1.wav.meta" @@ -0,0 +1,21 @@ +fileFormatVersion: 2 +guid: dd46253c3a6b6439bbceb25ba2d5665e +timeCreated: 1433350617 +licenseType: Store +AudioImporter: + serializedVersion: 6 + defaultSettings: + loadType: 0 + sampleRateSetting: 0 + sampleRateOverride: 44100 + compressionFormat: 0 + quality: 1 + conversionMode: 0 + platformSettingOverrides: {} + forceToMono: 0 + preloadAudioData: 1 + loadInBackground: 0 + 3D: 1 + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Audio/EngineA2.wav" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Audio/EngineA2.wav" new file mode 100644 index 00000000..a40cb698 Binary files /dev/null and "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Audio/EngineA2.wav" differ diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Audio/EngineA2.wav.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Audio/EngineA2.wav.meta" new file mode 100644 index 00000000..659364dc --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Audio/EngineA2.wav.meta" @@ -0,0 +1,21 @@ +fileFormatVersion: 2 +guid: 2ad022136d1b64c57910b8dcd17576ef +timeCreated: 1433350617 +licenseType: Store +AudioImporter: + serializedVersion: 6 + defaultSettings: + loadType: 0 + sampleRateSetting: 0 + sampleRateOverride: 44100 + compressionFormat: 0 + quality: 1 + conversionMode: 0 + platformSettingOverrides: {} + forceToMono: 0 + preloadAudioData: 1 + loadInBackground: 0 + 3D: 1 + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Audio/EngineA3.wav" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Audio/EngineA3.wav" new file mode 100644 index 00000000..b1b3f981 Binary files /dev/null and "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Audio/EngineA3.wav" differ diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Audio/EngineA3.wav.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Audio/EngineA3.wav.meta" new file mode 100644 index 00000000..1ae57de0 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Audio/EngineA3.wav.meta" @@ -0,0 +1,21 @@ +fileFormatVersion: 2 +guid: c3af91df4ca764fd9b9f2e778e7e555a +timeCreated: 1433350617 +licenseType: Store +AudioImporter: + serializedVersion: 6 + defaultSettings: + loadType: 0 + sampleRateSetting: 0 + sampleRateOverride: 44100 + compressionFormat: 0 + quality: 1 + conversionMode: 0 + platformSettingOverrides: {} + forceToMono: 0 + preloadAudioData: 1 + loadInBackground: 0 + 3D: 1 + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Audio/EngineA4.wav" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Audio/EngineA4.wav" new file mode 100644 index 00000000..def6cb0e Binary files /dev/null and "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Audio/EngineA4.wav" differ diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Audio/EngineA4.wav.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Audio/EngineA4.wav.meta" new file mode 100644 index 00000000..22a2bd78 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Audio/EngineA4.wav.meta" @@ -0,0 +1,21 @@ +fileFormatVersion: 2 +guid: 3d7dea0b41109438aa3242fa6ce220a7 +timeCreated: 1433350617 +licenseType: Store +AudioImporter: + serializedVersion: 6 + defaultSettings: + loadType: 0 + sampleRateSetting: 0 + sampleRateOverride: 44100 + compressionFormat: 0 + quality: 1 + conversionMode: 0 + platformSettingOverrides: {} + forceToMono: 1 + preloadAudioData: 1 + loadInBackground: 0 + 3D: 1 + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Audio/Music.mp3" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Audio/Music.mp3" new file mode 100644 index 00000000..47eaca52 Binary files /dev/null and "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Audio/Music.mp3" differ diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Audio/Music.mp3.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Audio/Music.mp3.meta" new file mode 100644 index 00000000..7feafe1d --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Audio/Music.mp3.meta" @@ -0,0 +1,22 @@ +fileFormatVersion: 2 +guid: 1939f7149c0fae14a891ac314cb2e8f3 +AudioImporter: + externalObjects: {} + serializedVersion: 6 + defaultSettings: + loadType: 0 + sampleRateSetting: 0 + sampleRateOverride: 44100 + compressionFormat: 1 + quality: 1 + conversionMode: 0 + platformSettingOverrides: {} + forceToMono: 0 + normalize: 1 + preloadAudioData: 1 + loadInBackground: 0 + ambisonic: 0 + 3D: 1 + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Audio/StartSound01.wav" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Audio/StartSound01.wav" new file mode 100644 index 00000000..d77b24c6 Binary files /dev/null and "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Audio/StartSound01.wav" differ diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Audio/StartSound01.wav.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Audio/StartSound01.wav.meta" new file mode 100644 index 00000000..6c485b63 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Audio/StartSound01.wav.meta" @@ -0,0 +1,22 @@ +fileFormatVersion: 2 +guid: a935550c6172c6548b1bc8de6e56618a +AudioImporter: + externalObjects: {} + serializedVersion: 6 + defaultSettings: + loadType: 0 + sampleRateSetting: 0 + sampleRateOverride: 44100 + compressionFormat: 1 + quality: 1 + conversionMode: 0 + platformSettingOverrides: {} + forceToMono: 0 + normalize: 1 + preloadAudioData: 1 + loadInBackground: 0 + ambisonic: 0 + 3D: 1 + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Audio/StartSound02.wav" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Audio/StartSound02.wav" new file mode 100644 index 00000000..fa9cb801 Binary files /dev/null and "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Audio/StartSound02.wav" differ diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Audio/StartSound02.wav.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Audio/StartSound02.wav.meta" new file mode 100644 index 00000000..e0d09d35 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Audio/StartSound02.wav.meta" @@ -0,0 +1,22 @@ +fileFormatVersion: 2 +guid: 30a284806deffbb4691f78109d0b617b +AudioImporter: + externalObjects: {} + serializedVersion: 6 + defaultSettings: + loadType: 0 + sampleRateSetting: 0 + sampleRateOverride: 44100 + compressionFormat: 1 + quality: 1 + conversionMode: 0 + platformSettingOverrides: {} + forceToMono: 0 + normalize: 1 + preloadAudioData: 1 + loadInBackground: 0 + ambisonic: 0 + 3D: 1 + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/AvatarMasks.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/AvatarMasks.meta" new file mode 100644 index 00000000..57688c57 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/AvatarMasks.meta" @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: ba435f8922305054f9e2536162809de7 +folderAsset: yes +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/AvatarMasks/KartFrontWheelsMask.mask" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/AvatarMasks/KartFrontWheelsMask.mask" new file mode 100644 index 00000000..107d191f --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/AvatarMasks/KartFrontWheelsMask.mask" @@ -0,0 +1,39 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!319 &31900000 +AvatarMask: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_Name: KartFrontWheelsMask + m_Mask: 01000000010000000100000001000000010000000100000001000000010000000100000001000000010000000100000001000000 + m_Elements: + - m_Path: + m_Weight: 1 + - m_Path: Kart_Body + m_Weight: 1 + - m_Path: Root + m_Weight: 1 + - m_Path: Root/KartBase + m_Weight: 1 + - m_Path: Root/KartBase/KartEngine + m_Weight: 1 + - m_Path: Root/KartBase/KartEngine/KartEngineEND + m_Weight: 1 + - m_Path: Root/KartBase/KartFrontWheelLeft + m_Weight: 0 + - m_Path: Root/KartBase/KartFrontWheelRight + m_Weight: 0 + - m_Path: Root/KartBase/KartRearWheels + m_Weight: 1 + - m_Path: Root/KartBase/KartSilencer + m_Weight: 1 + - m_Path: Root/KartBase/KartSilencer/KartSilencerEND + m_Weight: 1 + - m_Path: Root/KartBase/KartSteer + m_Weight: 1 + - m_Path: Root/KartBase/KartSteer/LocatorLeftHand + m_Weight: 1 + - m_Path: Root/KartBase/KartSteer/LocatorRightHand + m_Weight: 1 diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/AvatarMasks/KartFrontWheelsMask.mask.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/AvatarMasks/KartFrontWheelsMask.mask.meta" new file mode 100644 index 00000000..cf262681 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/AvatarMasks/KartFrontWheelsMask.mask.meta" @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 0b4fa3eb165fa044c89f540d8b738a4f +NativeFormatImporter: + externalObjects: {} + mainObjectFileID: 31900000 + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Documentation.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Documentation.meta" new file mode 100644 index 00000000..fb95dea6 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Documentation.meta" @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 30c23bf62057b4a5ca00d6ce7d415c91 +folderAsset: yes +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Documentation/KartGameTemplateUserGuide.pdf" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Documentation/KartGameTemplateUserGuide.pdf" new file mode 100644 index 00000000..aaaa2919 Binary files /dev/null and "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Documentation/KartGameTemplateUserGuide.pdf" differ diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Documentation/KartGameTemplateUserGuide.pdf.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Documentation/KartGameTemplateUserGuide.pdf.meta" new file mode 100644 index 00000000..abe094fb --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Documentation/KartGameTemplateUserGuide.pdf.meta" @@ -0,0 +1,7 @@ +fileFormatVersion: 2 +guid: 7ff14763825ee4af98f7de8a7cbb8779 +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Editor.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Editor.meta" new file mode 100644 index 00000000..9f88e7b3 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Editor.meta" @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: d1c87df9ecb71458295d07efb905d5c3 +folderAsset: yes +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Editor/AutoLockUILayer.cs" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Editor/AutoLockUILayer.cs" new file mode 100644 index 00000000..19e37031 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Editor/AutoLockUILayer.cs" @@ -0,0 +1,45 @@ +using System.Collections; +using System.Collections.Generic; +using UnityEngine; +using UnityEditor; + +//Automatically lock the UI layer on load, for convenience when editing the level. +[InitializeOnLoad] +public class AutoLockUILayer +{ + + //This runs when the Editor loads, and when scripts get compiled. + static AutoLockUILayer(){ + //Listen for when the user's selection changes. + UnityEditor.Selection.selectionChanged += OnSelectionChanged; + //Lock UI layer to begin with. + SetUILayerIsLocked(true); + } + + //Every time the inspector selection changes, rescan and see if we should lock or unlock the UI layer. + static void OnSelectionChanged(){ + var activeGameObject = UnityEditor.Selection.activeGameObject; + if (activeGameObject != null && activeGameObject.layer == 5){ + //if the object we have selected is in the UI layer, unlock the UI layer. + SetUILayerIsLocked(false); + } + else{ + //otherwise, lock the UI layer. + SetUILayerIsLocked(true); + } + } + + static void SetUILayerIsLocked(bool active){ + //Create a layer mask for the UI layer + var uiLayer = LayerMask.GetMask("UI"); + if (active){ + UnityEditor.Tools.lockedLayers |= uiLayer; + } + else{ + //Mask inversion + uiLayer = ~uiLayer; + UnityEditor.Tools.lockedLayers &= uiLayer; + } + } + +} diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Editor/AutoLockUILayer.cs.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Editor/AutoLockUILayer.cs.meta" new file mode 100644 index 00000000..779d2134 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Editor/AutoLockUILayer.cs.meta" @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 3771f9696abfc411ab9d65b40e594c22 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Gizmos.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Gizmos.meta" new file mode 100644 index 00000000..6d723f98 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Gizmos.meta" @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 3370a0695d3a18c4782c9846af3bf27e +folderAsset: yes +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Gizmos/Cinemachine.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Gizmos/Cinemachine.meta" new file mode 100644 index 00000000..cb01f0be --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Gizmos/Cinemachine.meta" @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: d5393692191d5c24fbebb97eb9d428fc +folderAsset: yes +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Gizmos/Cinemachine/cm_logo_lg.png" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Gizmos/Cinemachine/cm_logo_lg.png" new file mode 100644 index 00000000..47f19039 Binary files /dev/null and "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Gizmos/Cinemachine/cm_logo_lg.png" differ diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Gizmos/Cinemachine/cm_logo_lg.png.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Gizmos/Cinemachine/cm_logo_lg.png.meta" new file mode 100644 index 00000000..1fd25900 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Gizmos/Cinemachine/cm_logo_lg.png.meta" @@ -0,0 +1,88 @@ +fileFormatVersion: 2 +guid: 2100a40f607c64e43bb148ed87fd22dc +TextureImporter: + fileIDToRecycleName: {} + externalObjects: {} + serializedVersion: 7 + mipmaps: + mipMapMode: 0 + enableMipMap: 1 + sRGBTexture: 1 + linearTexture: 0 + fadeOut: 0 + borderMipMap: 0 + mipMapsPreserveCoverage: 0 + alphaTestReferenceValue: 0.5 + mipMapFadeDistanceStart: 1 + mipMapFadeDistanceEnd: 3 + bumpmap: + convertToNormalMap: 0 + externalNormalMap: 0 + heightScale: 0.25 + normalMapFilter: 0 + isReadable: 0 + streamingMipmaps: 0 + streamingMipmapsPriority: 0 + grayScaleToAlpha: 0 + generateCubemap: 6 + cubemapConvolution: 0 + seamlessCubemap: 0 + textureFormat: 1 + maxTextureSize: 2048 + textureSettings: + serializedVersion: 2 + filterMode: -1 + aniso: -1 + mipBias: -100 + wrapU: -1 + wrapV: -1 + wrapW: -1 + nPOTScale: 1 + lightmap: 0 + compressionQuality: 50 + spriteMode: 0 + spriteExtrude: 1 + spriteMeshType: 1 + alignment: 0 + spritePivot: {x: 0.5, y: 0.5} + spritePixelsToUnits: 100 + spriteBorder: {x: 0, y: 0, z: 0, w: 0} + spriteGenerateFallbackPhysicsShape: 1 + alphaUsage: 1 + alphaIsTransparency: 0 + spriteTessellationDetail: -1 + textureType: 0 + textureShape: 1 + singleChannelComponent: 0 + maxTextureSizeSet: 0 + compressionQualitySet: 0 + textureFormatSet: 0 + platformSettings: + - serializedVersion: 2 + buildTarget: DefaultTexturePlatform + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 0 + spriteSheet: + serializedVersion: 2 + sprites: [] + outline: [] + physicsShape: [] + bones: [] + spriteID: + vertices: [] + indices: + edges: [] + weights: [] + spritePackingTag: + pSDRemoveMatte: 0 + pSDShowRemoveMatteOption: 0 + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Materials.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Materials.meta" new file mode 100644 index 00000000..9a27dbd2 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Materials.meta" @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: b5b7b453614bc4be7954b8261b33a1d0 +folderAsset: yes +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Materials/KartExhaustParticle.mat" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Materials/KartExhaustParticle.mat" new file mode 100644 index 00000000..632c4d86 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Materials/KartExhaustParticle.mat" @@ -0,0 +1,95 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!21 &2100000 +Material: + serializedVersion: 6 + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_Name: KartExhaustParticle + m_Shader: {fileID: 46, guid: 0000000000000000f000000000000000, type: 0} + m_ShaderKeywords: _ALPHATEST_ON _COLORADDSUBDIFF_ON _EMISSION + m_LightmapFlags: 0 + m_EnableInstancingVariants: 0 + m_DoubleSidedGI: 0 + m_CustomRenderQueue: 2450 + stringTagMap: + RenderType: TransparentCutout + disabledShaderPasses: [] + m_SavedProperties: + serializedVersion: 3 + m_TexEnvs: + - _BumpMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _DetailAlbedoMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _DetailMask: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _DetailNormalMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _EmissionMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _MainTex: + m_Texture: {fileID: 2800000, guid: 3073e03546e6ecb4eb8da9657031a310, type: 3} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _MetallicGlossMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _OcclusionMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _ParallaxMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + m_Floats: + - _BlendOp: 0 + - _BumpScale: 1 + - _CameraFadingEnabled: 0 + - _CameraFarFadeDistance: 2 + - _CameraNearFadeDistance: 1 + - _Cull: 2 + - _Cutoff: 0.5 + - _DetailNormalMapScale: 1 + - _DistortionBlend: 0.5 + - _DistortionEnabled: 0 + - _DistortionStrength: 1 + - _DistortionStrengthScaled: 0 + - _DstBlend: 0 + - _EmissionEnabled: 0 + - _FlipbookMode: 0 + - _GlossMapScale: 1 + - _Glossiness: 0.2 + - _GlossyReflections: 1 + - _LightingEnabled: 1 + - _Metallic: 0 + - _Mode: 1 + - _OcclusionStrength: 1 + - _Parallax: 0.02 + - _SmoothnessTextureChannel: 0 + - _SoftParticlesEnabled: 0 + - _SoftParticlesFarFadeDistance: 1 + - _SoftParticlesNearFadeDistance: 0 + - _SpecularHighlights: 1 + - _SrcBlend: 1 + - _UVSec: 0 + - _ZWrite: 1 + m_Colors: + - _CameraFadeParams: {r: 0, g: Infinity, b: 0, a: 0} + - _Color: {r: 1, g: 1, b: 1, a: 1} + - _EmissionColor: {r: 0, g: 0, b: 0, a: 1} + - _SoftParticleFadeParams: {r: 0, g: 0, b: 0, a: 0} diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Materials/KartExhaustParticle.mat.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Materials/KartExhaustParticle.mat.meta" new file mode 100644 index 00000000..dce3ea03 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Materials/KartExhaustParticle.mat.meta" @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: e756cc37aa5d800448f1698da8380f0b +NativeFormatImporter: + externalObjects: {} + mainObjectFileID: 2100000 + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Materials/KartRacerMaterial.mat" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Materials/KartRacerMaterial.mat" new file mode 100644 index 00000000..7edbb760 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Materials/KartRacerMaterial.mat" @@ -0,0 +1,77 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!21 &2100000 +Material: + serializedVersion: 6 + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_Name: KartRacerMaterial + m_Shader: {fileID: 46, guid: 0000000000000000f000000000000000, type: 0} + m_ShaderKeywords: + m_LightmapFlags: 4 + m_EnableInstancingVariants: 0 + m_DoubleSidedGI: 0 + m_CustomRenderQueue: -1 + stringTagMap: {} + disabledShaderPasses: [] + m_SavedProperties: + serializedVersion: 3 + m_TexEnvs: + - _BumpMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _DetailAlbedoMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _DetailMask: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _DetailNormalMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _EmissionMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _MainTex: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _MetallicGlossMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _OcclusionMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _ParallaxMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + m_Floats: + - _BumpScale: 1 + - _Cutoff: 0.5 + - _DetailNormalMapScale: 1 + - _DstBlend: 0 + - _GlossMapScale: 1 + - _Glossiness: 0.4 + - _GlossyReflections: 1 + - _Metallic: 0 + - _Mode: 0 + - _OcclusionStrength: 1 + - _Parallax: 0.02 + - _SmoothnessTextureChannel: 0 + - _SpecularHighlights: 1 + - _SrcBlend: 1 + - _UVSec: 0 + - _ZWrite: 1 + m_Colors: + - _Color: {r: 0, g: 1, b: 1, a: 0.69411767} + - _EmissionColor: {r: 0, g: 0, b: 0, a: 0} diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Materials/KartRacerMaterial.mat.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Materials/KartRacerMaterial.mat.meta" new file mode 100644 index 00000000..11e475dc --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Materials/KartRacerMaterial.mat.meta" @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 5304db1f3e113764fae919908740f4ba +NativeFormatImporter: + externalObjects: {} + mainObjectFileID: 2100000 + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Materials/TemplateEnvironment.mat" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Materials/TemplateEnvironment.mat" new file mode 100644 index 00000000..4cb4b278 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Materials/TemplateEnvironment.mat" @@ -0,0 +1,77 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!21 &2100000 +Material: + serializedVersion: 6 + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_Name: TemplateEnvironment + m_Shader: {fileID: 46, guid: 0000000000000000f000000000000000, type: 0} + m_ShaderKeywords: + m_LightmapFlags: 4 + m_EnableInstancingVariants: 0 + m_DoubleSidedGI: 0 + m_CustomRenderQueue: -1 + stringTagMap: {} + disabledShaderPasses: [] + m_SavedProperties: + serializedVersion: 3 + m_TexEnvs: + - _BumpMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _DetailAlbedoMap: + m_Texture: {fileID: 0} + m_Scale: {x: 8, y: 8} + m_Offset: {x: 0, y: 0} + - _DetailMask: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _DetailNormalMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _EmissionMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _MainTex: + m_Texture: {fileID: 2800000, guid: 18f94973eacde5f49920b7936b31d501, type: 3} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _MetallicGlossMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _OcclusionMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _ParallaxMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + m_Floats: + - _BumpScale: 1 + - _Cutoff: 0.5 + - _DetailNormalMapScale: 1 + - _DstBlend: 0 + - _GlossMapScale: 1 + - _Glossiness: 0.25 + - _GlossyReflections: 1 + - _Metallic: 0 + - _Mode: 0 + - _OcclusionStrength: 1 + - _Parallax: 0.02 + - _SmoothnessTextureChannel: 0 + - _SpecularHighlights: 1 + - _SrcBlend: 1 + - _UVSec: 0 + - _ZWrite: 1 + m_Colors: + - _Color: {r: 1, g: 1, b: 1, a: 1} + - _EmissionColor: {r: 0, g: 0, b: 0, a: 1} diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Materials/TemplateEnvironment.mat.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Materials/TemplateEnvironment.mat.meta" new file mode 100644 index 00000000..adfc61cb --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Materials/TemplateEnvironment.mat.meta" @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: d11179e416c9b394c8176d36a0dcae52 +NativeFormatImporter: + externalObjects: {} + mainObjectFileID: 2100000 + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Materials/green.mat" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Materials/green.mat" new file mode 100644 index 00000000..78a4acc6 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Materials/green.mat" @@ -0,0 +1,77 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!21 &2100000 +Material: + serializedVersion: 6 + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_Name: green + m_Shader: {fileID: 46, guid: 0000000000000000f000000000000000, type: 0} + m_ShaderKeywords: + m_LightmapFlags: 4 + m_EnableInstancingVariants: 0 + m_DoubleSidedGI: 0 + m_CustomRenderQueue: -1 + stringTagMap: {} + disabledShaderPasses: [] + m_SavedProperties: + serializedVersion: 3 + m_TexEnvs: + - _BumpMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _DetailAlbedoMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _DetailMask: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _DetailNormalMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _EmissionMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _MainTex: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _MetallicGlossMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _OcclusionMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _ParallaxMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + m_Floats: + - _BumpScale: 1 + - _Cutoff: 0.5 + - _DetailNormalMapScale: 1 + - _DstBlend: 0 + - _GlossMapScale: 1 + - _Glossiness: 0.5 + - _GlossyReflections: 1 + - _Metallic: 0 + - _Mode: 0 + - _OcclusionStrength: 1 + - _Parallax: 0.02 + - _SmoothnessTextureChannel: 0 + - _SpecularHighlights: 1 + - _SrcBlend: 1 + - _UVSec: 0 + - _ZWrite: 1 + m_Colors: + - _Color: {r: 0.28959325, g: 0.9433962, b: 0.10234961, a: 1} + - _EmissionColor: {r: 0, g: 0, b: 0, a: 1} diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Materials/green.mat.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Materials/green.mat.meta" new file mode 100644 index 00000000..7919b884 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Materials/green.mat.meta" @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 6c378a7b0da21d443a337061a33da161 +NativeFormatImporter: + externalObjects: {} + mainObjectFileID: 2100000 + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Materials/purple.mat" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Materials/purple.mat" new file mode 100644 index 00000000..8259ba06 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Materials/purple.mat" @@ -0,0 +1,77 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!21 &2100000 +Material: + serializedVersion: 6 + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_Name: purple + m_Shader: {fileID: 46, guid: 0000000000000000f000000000000000, type: 0} + m_ShaderKeywords: + m_LightmapFlags: 4 + m_EnableInstancingVariants: 0 + m_DoubleSidedGI: 0 + m_CustomRenderQueue: -1 + stringTagMap: {} + disabledShaderPasses: [] + m_SavedProperties: + serializedVersion: 3 + m_TexEnvs: + - _BumpMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _DetailAlbedoMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _DetailMask: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _DetailNormalMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _EmissionMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _MainTex: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _MetallicGlossMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _OcclusionMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _ParallaxMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + m_Floats: + - _BumpScale: 1 + - _Cutoff: 0.5 + - _DetailNormalMapScale: 1 + - _DstBlend: 0 + - _GlossMapScale: 1 + - _Glossiness: 0.5 + - _GlossyReflections: 1 + - _Metallic: 0 + - _Mode: 0 + - _OcclusionStrength: 1 + - _Parallax: 0.02 + - _SmoothnessTextureChannel: 0 + - _SpecularHighlights: 1 + - _SrcBlend: 1 + - _UVSec: 0 + - _ZWrite: 1 + m_Colors: + - _Color: {r: 0.7388639, g: 0.127759, b: 0.8207547, a: 1} + - _EmissionColor: {r: 0, g: 0, b: 0, a: 1} diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Materials/purple.mat.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Materials/purple.mat.meta" new file mode 100644 index 00000000..5baa401f --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Materials/purple.mat.meta" @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 7ac0824dbec4c864aa5fbd7b3321d6d6 +NativeFormatImporter: + externalObjects: {} + mainObjectFileID: 2100000 + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Materials/red.mat" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Materials/red.mat" new file mode 100644 index 00000000..2f8887ab --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Materials/red.mat" @@ -0,0 +1,77 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!21 &2100000 +Material: + serializedVersion: 6 + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_Name: red + m_Shader: {fileID: 46, guid: 0000000000000000f000000000000000, type: 0} + m_ShaderKeywords: + m_LightmapFlags: 4 + m_EnableInstancingVariants: 0 + m_DoubleSidedGI: 0 + m_CustomRenderQueue: -1 + stringTagMap: {} + disabledShaderPasses: [] + m_SavedProperties: + serializedVersion: 3 + m_TexEnvs: + - _BumpMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _DetailAlbedoMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _DetailMask: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _DetailNormalMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _EmissionMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _MainTex: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _MetallicGlossMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _OcclusionMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _ParallaxMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + m_Floats: + - _BumpScale: 1 + - _Cutoff: 0.5 + - _DetailNormalMapScale: 1 + - _DstBlend: 0 + - _GlossMapScale: 1 + - _Glossiness: 0.5 + - _GlossyReflections: 1 + - _Metallic: 0 + - _Mode: 0 + - _OcclusionStrength: 1 + - _Parallax: 0.02 + - _SmoothnessTextureChannel: 0 + - _SpecularHighlights: 1 + - _SrcBlend: 1 + - _UVSec: 0 + - _ZWrite: 1 + m_Colors: + - _Color: {r: 0.8490566, g: 0.12415449, b: 0.12415449, a: 1} + - _EmissionColor: {r: 0, g: 0, b: 0, a: 1} diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Materials/red.mat.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Materials/red.mat.meta" new file mode 100644 index 00000000..63e1f561 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Materials/red.mat.meta" @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: c99104857011a3d478b482de4b0de308 +NativeFormatImporter: + externalObjects: {} + mainObjectFileID: 2100000 + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Models.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Models.meta" new file mode 100644 index 00000000..709c46ce --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Models.meta" @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 8366bdc423c6f4b61867e15ce578dc73 +folderAsset: yes +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Models/Building01CornerPlain.fbx" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Models/Building01CornerPlain.fbx" new file mode 100644 index 00000000..6ad999af Binary files /dev/null and "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Models/Building01CornerPlain.fbx" differ diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Models/Building01CornerPlain.fbx.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Models/Building01CornerPlain.fbx.meta" new file mode 100644 index 00000000..6e7b57aa --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Models/Building01CornerPlain.fbx.meta" @@ -0,0 +1,108 @@ +fileFormatVersion: 2 +guid: ee73619a09d1dc54ca72cdbc2a1d3c58 +ModelImporter: + serializedVersion: 23 + fileIDToRecycleName: + 100000: //RootNode + 400000: //RootNode + 2100000: lambert2 + 2100002: TestMaterial + 2300000: //RootNode + 3300000: //RootNode + 4300000: Building01_Corner_Plain + externalObjects: + - first: + type: UnityEngine:Material + assembly: UnityEngine.CoreModule + name: TestMaterial + second: {fileID: 2100000, guid: d11179e416c9b394c8176d36a0dcae52, type: 2} + - first: + type: UnityEngine:Material + assembly: UnityEngine.CoreModule + name: lambert2 + second: {fileID: 2100000, guid: d11179e416c9b394c8176d36a0dcae52, type: 2} + materials: + importMaterials: 1 + materialName: 1 + materialSearch: 1 + materialLocation: 1 + animations: + legacyGenerateAnimations: 4 + bakeSimulation: 0 + resampleCurves: 1 + optimizeGameObjects: 0 + motionNodeName: + rigImportErrors: + rigImportWarnings: + animationImportErrors: + animationImportWarnings: + animationRetargetingWarnings: + animationDoRetargetingWarnings: 0 + importAnimatedCustomProperties: 0 + importConstraints: 0 + animationCompression: 1 + animationRotationError: 0.5 + animationPositionError: 0.5 + animationScaleError: 0.5 + animationWrapMode: 0 + extraExposedTransformPaths: [] + extraUserProperties: [] + clipAnimations: [] + isReadable: 1 + meshes: + lODScreenPercentages: [] + globalScale: 1 + meshCompression: 0 + addColliders: 0 + useSRGBMaterialColor: 1 + importVisibility: 1 + importBlendShapes: 1 + importCameras: 1 + importLights: 1 + swapUVChannels: 0 + generateSecondaryUV: 0 + useFileUnits: 1 + optimizeMeshForGPU: 1 + keepQuads: 0 + weldVertices: 1 + preserveHierarchy: 0 + indexFormat: 0 + secondaryUVAngleDistortion: 8 + secondaryUVAreaDistortion: 15.000001 + secondaryUVHardAngle: 88 + secondaryUVPackMargin: 4 + useFileScale: 1 + previousCalculatedGlobalScale: 1 + hasPreviousCalculatedGlobalScale: 0 + tangentSpace: + normalSmoothAngle: 60 + normalImportMode: 0 + tangentImportMode: 3 + normalCalculationMode: 4 + legacyComputeAllNormalsFromSmoothingGroupsWhenMeshHasBlendShapes: 0 + blendShapeNormalImportMode: 1 + normalSmoothingSource: 0 + importAnimation: 1 + copyAvatar: 0 + humanDescription: + serializedVersion: 2 + human: [] + skeleton: [] + armTwist: 0.5 + foreArmTwist: 0.5 + upperLegTwist: 0.5 + legTwist: 0.5 + armStretch: 0.05 + legStretch: 0.05 + feetSpacing: 0 + rootMotionBoneName: + hasTranslationDoF: 0 + hasExtraRoot: 0 + skeletonHasParents: 1 + lastHumanDescriptionAvatarSource: {instanceID: 0} + animationType: 0 + humanoidOversampling: 1 + additionalBone: 0 + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Models/Building01WallDoor.fbx" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Models/Building01WallDoor.fbx" new file mode 100644 index 00000000..11534560 Binary files /dev/null and "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Models/Building01WallDoor.fbx" differ diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Models/Building01WallDoor.fbx.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Models/Building01WallDoor.fbx.meta" new file mode 100644 index 00000000..de8f766c --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Models/Building01WallDoor.fbx.meta" @@ -0,0 +1,108 @@ +fileFormatVersion: 2 +guid: 8d4337d55efa65a4d8107eead99ff7b7 +ModelImporter: + serializedVersion: 23 + fileIDToRecycleName: + 100000: //RootNode + 400000: //RootNode + 2100000: lambert2 + 2100002: TestMaterial + 2300000: //RootNode + 3300000: //RootNode + 4300000: Building01_Wall_Door + externalObjects: + - first: + type: UnityEngine:Material + assembly: UnityEngine.CoreModule + name: TestMaterial + second: {fileID: 2100000, guid: d11179e416c9b394c8176d36a0dcae52, type: 2} + - first: + type: UnityEngine:Material + assembly: UnityEngine.CoreModule + name: lambert2 + second: {fileID: 2100000, guid: 38347a2b8295b6147985095f55cd4a55, type: 2} + materials: + importMaterials: 1 + materialName: 1 + materialSearch: 2 + materialLocation: 1 + animations: + legacyGenerateAnimations: 4 + bakeSimulation: 0 + resampleCurves: 1 + optimizeGameObjects: 0 + motionNodeName: + rigImportErrors: + rigImportWarnings: + animationImportErrors: + animationImportWarnings: + animationRetargetingWarnings: + animationDoRetargetingWarnings: 0 + importAnimatedCustomProperties: 0 + importConstraints: 0 + animationCompression: 1 + animationRotationError: 0.5 + animationPositionError: 0.5 + animationScaleError: 0.5 + animationWrapMode: 0 + extraExposedTransformPaths: [] + extraUserProperties: [] + clipAnimations: [] + isReadable: 1 + meshes: + lODScreenPercentages: [] + globalScale: 1 + meshCompression: 0 + addColliders: 0 + useSRGBMaterialColor: 1 + importVisibility: 1 + importBlendShapes: 1 + importCameras: 1 + importLights: 1 + swapUVChannels: 0 + generateSecondaryUV: 0 + useFileUnits: 1 + optimizeMeshForGPU: 1 + keepQuads: 0 + weldVertices: 1 + preserveHierarchy: 0 + indexFormat: 0 + secondaryUVAngleDistortion: 8 + secondaryUVAreaDistortion: 15.000001 + secondaryUVHardAngle: 88 + secondaryUVPackMargin: 4 + useFileScale: 1 + previousCalculatedGlobalScale: 1 + hasPreviousCalculatedGlobalScale: 0 + tangentSpace: + normalSmoothAngle: 60 + normalImportMode: 0 + tangentImportMode: 3 + normalCalculationMode: 4 + legacyComputeAllNormalsFromSmoothingGroupsWhenMeshHasBlendShapes: 0 + blendShapeNormalImportMode: 1 + normalSmoothingSource: 0 + importAnimation: 1 + copyAvatar: 0 + humanDescription: + serializedVersion: 2 + human: [] + skeleton: [] + armTwist: 0.5 + foreArmTwist: 0.5 + upperLegTwist: 0.5 + legTwist: 0.5 + armStretch: 0.05 + legStretch: 0.05 + feetSpacing: 0 + rootMotionBoneName: + hasTranslationDoF: 0 + hasExtraRoot: 0 + skeletonHasParents: 1 + lastHumanDescriptionAvatarSource: {instanceID: 0} + animationType: 0 + humanoidOversampling: 1 + additionalBone: 0 + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Models/Building01WallPlain.fbx" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Models/Building01WallPlain.fbx" new file mode 100644 index 00000000..9f251eae Binary files /dev/null and "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Models/Building01WallPlain.fbx" differ diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Models/Building01WallPlain.fbx.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Models/Building01WallPlain.fbx.meta" new file mode 100644 index 00000000..ef4895a5 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Models/Building01WallPlain.fbx.meta" @@ -0,0 +1,108 @@ +fileFormatVersion: 2 +guid: ca9914f098c088e4a879c7fd31109c95 +ModelImporter: + serializedVersion: 23 + fileIDToRecycleName: + 100000: //RootNode + 400000: //RootNode + 2100000: lambert2 + 2100002: TestMaterial + 2300000: //RootNode + 3300000: //RootNode + 4300000: Building01_Wall_Plain + externalObjects: + - first: + type: UnityEngine:Material + assembly: UnityEngine.CoreModule + name: TestMaterial + second: {fileID: 2100000, guid: d11179e416c9b394c8176d36a0dcae52, type: 2} + - first: + type: UnityEngine:Material + assembly: UnityEngine.CoreModule + name: lambert2 + second: {fileID: 2100000, guid: 38347a2b8295b6147985095f55cd4a55, type: 2} + materials: + importMaterials: 1 + materialName: 1 + materialSearch: 2 + materialLocation: 1 + animations: + legacyGenerateAnimations: 4 + bakeSimulation: 0 + resampleCurves: 1 + optimizeGameObjects: 0 + motionNodeName: + rigImportErrors: + rigImportWarnings: + animationImportErrors: + animationImportWarnings: + animationRetargetingWarnings: + animationDoRetargetingWarnings: 0 + importAnimatedCustomProperties: 0 + importConstraints: 0 + animationCompression: 1 + animationRotationError: 0.5 + animationPositionError: 0.5 + animationScaleError: 0.5 + animationWrapMode: 0 + extraExposedTransformPaths: [] + extraUserProperties: [] + clipAnimations: [] + isReadable: 1 + meshes: + lODScreenPercentages: [] + globalScale: 1 + meshCompression: 0 + addColliders: 0 + useSRGBMaterialColor: 1 + importVisibility: 1 + importBlendShapes: 1 + importCameras: 1 + importLights: 1 + swapUVChannels: 0 + generateSecondaryUV: 0 + useFileUnits: 1 + optimizeMeshForGPU: 1 + keepQuads: 0 + weldVertices: 1 + preserveHierarchy: 0 + indexFormat: 0 + secondaryUVAngleDistortion: 8 + secondaryUVAreaDistortion: 15.000001 + secondaryUVHardAngle: 88 + secondaryUVPackMargin: 4 + useFileScale: 1 + previousCalculatedGlobalScale: 1 + hasPreviousCalculatedGlobalScale: 0 + tangentSpace: + normalSmoothAngle: 60 + normalImportMode: 0 + tangentImportMode: 3 + normalCalculationMode: 4 + legacyComputeAllNormalsFromSmoothingGroupsWhenMeshHasBlendShapes: 0 + blendShapeNormalImportMode: 1 + normalSmoothingSource: 0 + importAnimation: 1 + copyAvatar: 0 + humanDescription: + serializedVersion: 2 + human: [] + skeleton: [] + armTwist: 0.5 + foreArmTwist: 0.5 + upperLegTwist: 0.5 + legTwist: 0.5 + armStretch: 0.05 + legStretch: 0.05 + feetSpacing: 0 + rootMotionBoneName: + hasTranslationDoF: 0 + hasExtraRoot: 0 + skeletonHasParents: 1 + lastHumanDescriptionAvatarSource: {instanceID: 0} + animationType: 0 + humanoidOversampling: 1 + additionalBone: 0 + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Models/Building02CornerBricks.fbx" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Models/Building02CornerBricks.fbx" new file mode 100644 index 00000000..42ae727e Binary files /dev/null and "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Models/Building02CornerBricks.fbx" differ diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Models/Building02CornerBricks.fbx.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Models/Building02CornerBricks.fbx.meta" new file mode 100644 index 00000000..3fb15731 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Models/Building02CornerBricks.fbx.meta" @@ -0,0 +1,108 @@ +fileFormatVersion: 2 +guid: 91cfa91e879ed5e42ac5a4f865fc05d7 +ModelImporter: + serializedVersion: 23 + fileIDToRecycleName: + 100000: //RootNode + 400000: //RootNode + 2100000: lambert2 + 2100002: TestMaterial + 2300000: //RootNode + 3300000: //RootNode + 4300000: Building02_Corner_Bricks + externalObjects: + - first: + type: UnityEngine:Material + assembly: UnityEngine.CoreModule + name: TestMaterial + second: {fileID: 2100000, guid: d11179e416c9b394c8176d36a0dcae52, type: 2} + - first: + type: UnityEngine:Material + assembly: UnityEngine.CoreModule + name: lambert2 + second: {fileID: 2100000, guid: 38347a2b8295b6147985095f55cd4a55, type: 2} + materials: + importMaterials: 1 + materialName: 1 + materialSearch: 2 + materialLocation: 1 + animations: + legacyGenerateAnimations: 4 + bakeSimulation: 0 + resampleCurves: 1 + optimizeGameObjects: 0 + motionNodeName: + rigImportErrors: + rigImportWarnings: + animationImportErrors: + animationImportWarnings: + animationRetargetingWarnings: + animationDoRetargetingWarnings: 0 + importAnimatedCustomProperties: 0 + importConstraints: 0 + animationCompression: 1 + animationRotationError: 0.5 + animationPositionError: 0.5 + animationScaleError: 0.5 + animationWrapMode: 0 + extraExposedTransformPaths: [] + extraUserProperties: [] + clipAnimations: [] + isReadable: 1 + meshes: + lODScreenPercentages: [] + globalScale: 1 + meshCompression: 0 + addColliders: 0 + useSRGBMaterialColor: 1 + importVisibility: 1 + importBlendShapes: 1 + importCameras: 1 + importLights: 1 + swapUVChannels: 0 + generateSecondaryUV: 0 + useFileUnits: 1 + optimizeMeshForGPU: 1 + keepQuads: 0 + weldVertices: 1 + preserveHierarchy: 0 + indexFormat: 0 + secondaryUVAngleDistortion: 8 + secondaryUVAreaDistortion: 15.000001 + secondaryUVHardAngle: 88 + secondaryUVPackMargin: 4 + useFileScale: 1 + previousCalculatedGlobalScale: 1 + hasPreviousCalculatedGlobalScale: 0 + tangentSpace: + normalSmoothAngle: 60 + normalImportMode: 0 + tangentImportMode: 3 + normalCalculationMode: 4 + legacyComputeAllNormalsFromSmoothingGroupsWhenMeshHasBlendShapes: 0 + blendShapeNormalImportMode: 1 + normalSmoothingSource: 0 + importAnimation: 1 + copyAvatar: 0 + humanDescription: + serializedVersion: 2 + human: [] + skeleton: [] + armTwist: 0.5 + foreArmTwist: 0.5 + upperLegTwist: 0.5 + legTwist: 0.5 + armStretch: 0.05 + legStretch: 0.05 + feetSpacing: 0 + rootMotionBoneName: + hasTranslationDoF: 0 + hasExtraRoot: 0 + skeletonHasParents: 1 + lastHumanDescriptionAvatarSource: {instanceID: 0} + animationType: 0 + humanoidOversampling: 1 + additionalBone: 0 + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Models/Building02WallBricks.fbx" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Models/Building02WallBricks.fbx" new file mode 100644 index 00000000..5ee9b97b Binary files /dev/null and "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Models/Building02WallBricks.fbx" differ diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Models/Building02WallBricks.fbx.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Models/Building02WallBricks.fbx.meta" new file mode 100644 index 00000000..925b401d --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Models/Building02WallBricks.fbx.meta" @@ -0,0 +1,108 @@ +fileFormatVersion: 2 +guid: b12206d774dc7c94881f7f13f3dc81e2 +ModelImporter: + serializedVersion: 23 + fileIDToRecycleName: + 100000: //RootNode + 400000: //RootNode + 2100000: lambert2 + 2100002: TestMaterial + 2300000: //RootNode + 3300000: //RootNode + 4300000: Building02_Wall_Bricks + externalObjects: + - first: + type: UnityEngine:Material + assembly: UnityEngine.CoreModule + name: TestMaterial + second: {fileID: 2100000, guid: d11179e416c9b394c8176d36a0dcae52, type: 2} + - first: + type: UnityEngine:Material + assembly: UnityEngine.CoreModule + name: lambert2 + second: {fileID: 2100000, guid: 38347a2b8295b6147985095f55cd4a55, type: 2} + materials: + importMaterials: 1 + materialName: 1 + materialSearch: 2 + materialLocation: 1 + animations: + legacyGenerateAnimations: 4 + bakeSimulation: 0 + resampleCurves: 1 + optimizeGameObjects: 0 + motionNodeName: + rigImportErrors: + rigImportWarnings: + animationImportErrors: + animationImportWarnings: + animationRetargetingWarnings: + animationDoRetargetingWarnings: 0 + importAnimatedCustomProperties: 0 + importConstraints: 0 + animationCompression: 1 + animationRotationError: 0.5 + animationPositionError: 0.5 + animationScaleError: 0.5 + animationWrapMode: 0 + extraExposedTransformPaths: [] + extraUserProperties: [] + clipAnimations: [] + isReadable: 1 + meshes: + lODScreenPercentages: [] + globalScale: 1 + meshCompression: 0 + addColliders: 0 + useSRGBMaterialColor: 1 + importVisibility: 1 + importBlendShapes: 1 + importCameras: 1 + importLights: 1 + swapUVChannels: 0 + generateSecondaryUV: 0 + useFileUnits: 1 + optimizeMeshForGPU: 1 + keepQuads: 0 + weldVertices: 1 + preserveHierarchy: 0 + indexFormat: 0 + secondaryUVAngleDistortion: 8 + secondaryUVAreaDistortion: 15.000001 + secondaryUVHardAngle: 88 + secondaryUVPackMargin: 4 + useFileScale: 1 + previousCalculatedGlobalScale: 1 + hasPreviousCalculatedGlobalScale: 0 + tangentSpace: + normalSmoothAngle: 60 + normalImportMode: 0 + tangentImportMode: 3 + normalCalculationMode: 4 + legacyComputeAllNormalsFromSmoothingGroupsWhenMeshHasBlendShapes: 0 + blendShapeNormalImportMode: 1 + normalSmoothingSource: 0 + importAnimation: 1 + copyAvatar: 0 + humanDescription: + serializedVersion: 2 + human: [] + skeleton: [] + armTwist: 0.5 + foreArmTwist: 0.5 + upperLegTwist: 0.5 + legTwist: 0.5 + armStretch: 0.05 + legStretch: 0.05 + feetSpacing: 0 + rootMotionBoneName: + hasTranslationDoF: 0 + hasExtraRoot: 0 + skeletonHasParents: 1 + lastHumanDescriptionAvatarSource: {instanceID: 0} + animationType: 0 + humanoidOversampling: 1 + additionalBone: 0 + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Models/Building03CornerWideWindow.fbx" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Models/Building03CornerWideWindow.fbx" new file mode 100644 index 00000000..e9cf8602 Binary files /dev/null and "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Models/Building03CornerWideWindow.fbx" differ diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Models/Building03CornerWideWindow.fbx.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Models/Building03CornerWideWindow.fbx.meta" new file mode 100644 index 00000000..69fc3a01 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Models/Building03CornerWideWindow.fbx.meta" @@ -0,0 +1,109 @@ +fileFormatVersion: 2 +guid: 2dc0b90df1333dc469eeb6cff505ccb5 +ModelImporter: + serializedVersion: 23 + fileIDToRecycleName: + 100000: //RootNode + 400000: //RootNode + 2100000: lambert2 + 2100002: TestMaterial + 2300000: //RootNode + 3300000: //RootNode + 4300000: Building03_Croner_WideWindow + 4300002: Building03_Corner_WideWindow + externalObjects: + - first: + type: UnityEngine:Material + assembly: UnityEngine.CoreModule + name: TestMaterial + second: {fileID: 2100000, guid: d11179e416c9b394c8176d36a0dcae52, type: 2} + - first: + type: UnityEngine:Material + assembly: UnityEngine.CoreModule + name: lambert2 + second: {fileID: 2100000, guid: 38347a2b8295b6147985095f55cd4a55, type: 2} + materials: + importMaterials: 1 + materialName: 1 + materialSearch: 2 + materialLocation: 1 + animations: + legacyGenerateAnimations: 4 + bakeSimulation: 0 + resampleCurves: 1 + optimizeGameObjects: 0 + motionNodeName: + rigImportErrors: + rigImportWarnings: + animationImportErrors: + animationImportWarnings: + animationRetargetingWarnings: + animationDoRetargetingWarnings: 0 + importAnimatedCustomProperties: 0 + importConstraints: 0 + animationCompression: 1 + animationRotationError: 0.5 + animationPositionError: 0.5 + animationScaleError: 0.5 + animationWrapMode: 0 + extraExposedTransformPaths: [] + extraUserProperties: [] + clipAnimations: [] + isReadable: 1 + meshes: + lODScreenPercentages: [] + globalScale: 1 + meshCompression: 0 + addColliders: 0 + useSRGBMaterialColor: 1 + importVisibility: 1 + importBlendShapes: 1 + importCameras: 1 + importLights: 1 + swapUVChannels: 0 + generateSecondaryUV: 0 + useFileUnits: 1 + optimizeMeshForGPU: 1 + keepQuads: 0 + weldVertices: 1 + preserveHierarchy: 0 + indexFormat: 0 + secondaryUVAngleDistortion: 8 + secondaryUVAreaDistortion: 15.000001 + secondaryUVHardAngle: 88 + secondaryUVPackMargin: 4 + useFileScale: 1 + previousCalculatedGlobalScale: 1 + hasPreviousCalculatedGlobalScale: 0 + tangentSpace: + normalSmoothAngle: 60 + normalImportMode: 0 + tangentImportMode: 3 + normalCalculationMode: 4 + legacyComputeAllNormalsFromSmoothingGroupsWhenMeshHasBlendShapes: 0 + blendShapeNormalImportMode: 1 + normalSmoothingSource: 0 + importAnimation: 1 + copyAvatar: 0 + humanDescription: + serializedVersion: 2 + human: [] + skeleton: [] + armTwist: 0.5 + foreArmTwist: 0.5 + upperLegTwist: 0.5 + legTwist: 0.5 + armStretch: 0.05 + legStretch: 0.05 + feetSpacing: 0 + rootMotionBoneName: + hasTranslationDoF: 0 + hasExtraRoot: 0 + skeletonHasParents: 1 + lastHumanDescriptionAvatarSource: {instanceID: 0} + animationType: 0 + humanoidOversampling: 1 + additionalBone: 0 + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Models/Building03WallWideWindow.fbx" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Models/Building03WallWideWindow.fbx" new file mode 100644 index 00000000..67b1da4b Binary files /dev/null and "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Models/Building03WallWideWindow.fbx" differ diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Models/Building03WallWideWindow.fbx.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Models/Building03WallWideWindow.fbx.meta" new file mode 100644 index 00000000..b0604238 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Models/Building03WallWideWindow.fbx.meta" @@ -0,0 +1,108 @@ +fileFormatVersion: 2 +guid: 8021d7313a3bc1240bb3e96d591721bf +ModelImporter: + serializedVersion: 23 + fileIDToRecycleName: + 100000: //RootNode + 400000: //RootNode + 2100000: lambert2 + 2100002: TestMaterial + 2300000: //RootNode + 3300000: //RootNode + 4300000: Building03_Wall_WideWindow + externalObjects: + - first: + type: UnityEngine:Material + assembly: UnityEngine.CoreModule + name: TestMaterial + second: {fileID: 2100000, guid: d11179e416c9b394c8176d36a0dcae52, type: 2} + - first: + type: UnityEngine:Material + assembly: UnityEngine.CoreModule + name: lambert2 + second: {fileID: 2100000, guid: 38347a2b8295b6147985095f55cd4a55, type: 2} + materials: + importMaterials: 1 + materialName: 1 + materialSearch: 2 + materialLocation: 1 + animations: + legacyGenerateAnimations: 4 + bakeSimulation: 0 + resampleCurves: 1 + optimizeGameObjects: 0 + motionNodeName: + rigImportErrors: + rigImportWarnings: + animationImportErrors: + animationImportWarnings: + animationRetargetingWarnings: + animationDoRetargetingWarnings: 0 + importAnimatedCustomProperties: 0 + importConstraints: 0 + animationCompression: 1 + animationRotationError: 0.5 + animationPositionError: 0.5 + animationScaleError: 0.5 + animationWrapMode: 0 + extraExposedTransformPaths: [] + extraUserProperties: [] + clipAnimations: [] + isReadable: 1 + meshes: + lODScreenPercentages: [] + globalScale: 1 + meshCompression: 0 + addColliders: 0 + useSRGBMaterialColor: 1 + importVisibility: 1 + importBlendShapes: 1 + importCameras: 1 + importLights: 1 + swapUVChannels: 0 + generateSecondaryUV: 0 + useFileUnits: 1 + optimizeMeshForGPU: 1 + keepQuads: 0 + weldVertices: 1 + preserveHierarchy: 0 + indexFormat: 0 + secondaryUVAngleDistortion: 8 + secondaryUVAreaDistortion: 15.000001 + secondaryUVHardAngle: 88 + secondaryUVPackMargin: 4 + useFileScale: 1 + previousCalculatedGlobalScale: 1 + hasPreviousCalculatedGlobalScale: 0 + tangentSpace: + normalSmoothAngle: 60 + normalImportMode: 0 + tangentImportMode: 3 + normalCalculationMode: 4 + legacyComputeAllNormalsFromSmoothingGroupsWhenMeshHasBlendShapes: 0 + blendShapeNormalImportMode: 1 + normalSmoothingSource: 0 + importAnimation: 1 + copyAvatar: 0 + humanDescription: + serializedVersion: 2 + human: [] + skeleton: [] + armTwist: 0.5 + foreArmTwist: 0.5 + upperLegTwist: 0.5 + legTwist: 0.5 + armStretch: 0.05 + legStretch: 0.05 + feetSpacing: 0 + rootMotionBoneName: + hasTranslationDoF: 0 + hasExtraRoot: 0 + skeletonHasParents: 1 + lastHumanDescriptionAvatarSource: {instanceID: 0} + animationType: 0 + humanoidOversampling: 1 + additionalBone: 0 + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Models/Building04CornerBarWindow.fbx" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Models/Building04CornerBarWindow.fbx" new file mode 100644 index 00000000..a931fb4d Binary files /dev/null and "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Models/Building04CornerBarWindow.fbx" differ diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Models/Building04CornerBarWindow.fbx.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Models/Building04CornerBarWindow.fbx.meta" new file mode 100644 index 00000000..79cef7f6 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Models/Building04CornerBarWindow.fbx.meta" @@ -0,0 +1,108 @@ +fileFormatVersion: 2 +guid: 15e65acc49c1d194f9a661fcbd8f8edf +ModelImporter: + serializedVersion: 23 + fileIDToRecycleName: + 100000: //RootNode + 400000: //RootNode + 2100000: lambert2 + 2100002: TestMaterial + 2300000: //RootNode + 3300000: //RootNode + 4300000: Building04_Corner_BarWindow + externalObjects: + - first: + type: UnityEngine:Material + assembly: UnityEngine.CoreModule + name: TestMaterial + second: {fileID: 2100000, guid: d11179e416c9b394c8176d36a0dcae52, type: 2} + - first: + type: UnityEngine:Material + assembly: UnityEngine.CoreModule + name: lambert2 + second: {fileID: 2100000, guid: 38347a2b8295b6147985095f55cd4a55, type: 2} + materials: + importMaterials: 1 + materialName: 1 + materialSearch: 2 + materialLocation: 1 + animations: + legacyGenerateAnimations: 4 + bakeSimulation: 0 + resampleCurves: 1 + optimizeGameObjects: 0 + motionNodeName: + rigImportErrors: + rigImportWarnings: + animationImportErrors: + animationImportWarnings: + animationRetargetingWarnings: + animationDoRetargetingWarnings: 0 + importAnimatedCustomProperties: 0 + importConstraints: 0 + animationCompression: 1 + animationRotationError: 0.5 + animationPositionError: 0.5 + animationScaleError: 0.5 + animationWrapMode: 0 + extraExposedTransformPaths: [] + extraUserProperties: [] + clipAnimations: [] + isReadable: 1 + meshes: + lODScreenPercentages: [] + globalScale: 1 + meshCompression: 0 + addColliders: 0 + useSRGBMaterialColor: 1 + importVisibility: 1 + importBlendShapes: 1 + importCameras: 1 + importLights: 1 + swapUVChannels: 0 + generateSecondaryUV: 0 + useFileUnits: 1 + optimizeMeshForGPU: 1 + keepQuads: 0 + weldVertices: 1 + preserveHierarchy: 0 + indexFormat: 0 + secondaryUVAngleDistortion: 8 + secondaryUVAreaDistortion: 15.000001 + secondaryUVHardAngle: 88 + secondaryUVPackMargin: 4 + useFileScale: 1 + previousCalculatedGlobalScale: 1 + hasPreviousCalculatedGlobalScale: 0 + tangentSpace: + normalSmoothAngle: 60 + normalImportMode: 0 + tangentImportMode: 3 + normalCalculationMode: 4 + legacyComputeAllNormalsFromSmoothingGroupsWhenMeshHasBlendShapes: 0 + blendShapeNormalImportMode: 1 + normalSmoothingSource: 0 + importAnimation: 1 + copyAvatar: 0 + humanDescription: + serializedVersion: 2 + human: [] + skeleton: [] + armTwist: 0.5 + foreArmTwist: 0.5 + upperLegTwist: 0.5 + legTwist: 0.5 + armStretch: 0.05 + legStretch: 0.05 + feetSpacing: 0 + rootMotionBoneName: + hasTranslationDoF: 0 + hasExtraRoot: 0 + skeletonHasParents: 1 + lastHumanDescriptionAvatarSource: {instanceID: 0} + animationType: 0 + humanoidOversampling: 1 + additionalBone: 0 + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Models/Building04WallBarWindow.fbx" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Models/Building04WallBarWindow.fbx" new file mode 100644 index 00000000..5df2ce32 Binary files /dev/null and "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Models/Building04WallBarWindow.fbx" differ diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Models/Building04WallBarWindow.fbx.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Models/Building04WallBarWindow.fbx.meta" new file mode 100644 index 00000000..77d4b5e1 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Models/Building04WallBarWindow.fbx.meta" @@ -0,0 +1,108 @@ +fileFormatVersion: 2 +guid: ac00f20c6d5bd584e9999b1195b74bc4 +ModelImporter: + serializedVersion: 23 + fileIDToRecycleName: + 100000: //RootNode + 400000: //RootNode + 2100000: lambert2 + 2100002: TestMaterial + 2300000: //RootNode + 3300000: //RootNode + 4300000: Building04_Wall_BarWindow + externalObjects: + - first: + type: UnityEngine:Material + assembly: UnityEngine.CoreModule + name: TestMaterial + second: {fileID: 2100000, guid: d11179e416c9b394c8176d36a0dcae52, type: 2} + - first: + type: UnityEngine:Material + assembly: UnityEngine.CoreModule + name: lambert2 + second: {fileID: 2100000, guid: 38347a2b8295b6147985095f55cd4a55, type: 2} + materials: + importMaterials: 1 + materialName: 1 + materialSearch: 2 + materialLocation: 1 + animations: + legacyGenerateAnimations: 4 + bakeSimulation: 0 + resampleCurves: 1 + optimizeGameObjects: 0 + motionNodeName: + rigImportErrors: + rigImportWarnings: + animationImportErrors: + animationImportWarnings: + animationRetargetingWarnings: + animationDoRetargetingWarnings: 0 + importAnimatedCustomProperties: 0 + importConstraints: 0 + animationCompression: 1 + animationRotationError: 0.5 + animationPositionError: 0.5 + animationScaleError: 0.5 + animationWrapMode: 0 + extraExposedTransformPaths: [] + extraUserProperties: [] + clipAnimations: [] + isReadable: 1 + meshes: + lODScreenPercentages: [] + globalScale: 1 + meshCompression: 0 + addColliders: 0 + useSRGBMaterialColor: 1 + importVisibility: 1 + importBlendShapes: 1 + importCameras: 1 + importLights: 1 + swapUVChannels: 0 + generateSecondaryUV: 0 + useFileUnits: 1 + optimizeMeshForGPU: 1 + keepQuads: 0 + weldVertices: 1 + preserveHierarchy: 0 + indexFormat: 0 + secondaryUVAngleDistortion: 8 + secondaryUVAreaDistortion: 15.000001 + secondaryUVHardAngle: 88 + secondaryUVPackMargin: 4 + useFileScale: 1 + previousCalculatedGlobalScale: 1 + hasPreviousCalculatedGlobalScale: 0 + tangentSpace: + normalSmoothAngle: 60 + normalImportMode: 0 + tangentImportMode: 3 + normalCalculationMode: 4 + legacyComputeAllNormalsFromSmoothingGroupsWhenMeshHasBlendShapes: 0 + blendShapeNormalImportMode: 1 + normalSmoothingSource: 0 + importAnimation: 1 + copyAvatar: 0 + humanDescription: + serializedVersion: 2 + human: [] + skeleton: [] + armTwist: 0.5 + foreArmTwist: 0.5 + upperLegTwist: 0.5 + legTwist: 0.5 + armStretch: 0.05 + legStretch: 0.05 + feetSpacing: 0 + rootMotionBoneName: + hasTranslationDoF: 0 + hasExtraRoot: 0 + skeletonHasParents: 1 + lastHumanDescriptionAvatarSource: {instanceID: 0} + animationType: 0 + humanoidOversampling: 1 + additionalBone: 0 + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Models/BuildingAirConditioner.fbx" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Models/BuildingAirConditioner.fbx" new file mode 100644 index 00000000..3e60dffb Binary files /dev/null and "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Models/BuildingAirConditioner.fbx" differ diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Models/BuildingAirConditioner.fbx.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Models/BuildingAirConditioner.fbx.meta" new file mode 100644 index 00000000..e21b2a36 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Models/BuildingAirConditioner.fbx.meta" @@ -0,0 +1,108 @@ +fileFormatVersion: 2 +guid: a1115a8b4e0c27d43883e5bf6d307390 +ModelImporter: + serializedVersion: 23 + fileIDToRecycleName: + 100000: //RootNode + 400000: //RootNode + 2100000: lambert2 + 2100002: TestMaterial + 2300000: //RootNode + 3300000: //RootNode + 4300000: AirConditioner + externalObjects: + - first: + type: UnityEngine:Material + assembly: UnityEngine.CoreModule + name: TestMaterial + second: {fileID: 2100000, guid: d11179e416c9b394c8176d36a0dcae52, type: 2} + - first: + type: UnityEngine:Material + assembly: UnityEngine.CoreModule + name: lambert2 + second: {fileID: 2100000, guid: 38347a2b8295b6147985095f55cd4a55, type: 2} + materials: + importMaterials: 1 + materialName: 1 + materialSearch: 2 + materialLocation: 1 + animations: + legacyGenerateAnimations: 4 + bakeSimulation: 0 + resampleCurves: 1 + optimizeGameObjects: 0 + motionNodeName: + rigImportErrors: + rigImportWarnings: + animationImportErrors: + animationImportWarnings: + animationRetargetingWarnings: + animationDoRetargetingWarnings: 0 + importAnimatedCustomProperties: 0 + importConstraints: 0 + animationCompression: 1 + animationRotationError: 0.5 + animationPositionError: 0.5 + animationScaleError: 0.5 + animationWrapMode: 0 + extraExposedTransformPaths: [] + extraUserProperties: [] + clipAnimations: [] + isReadable: 1 + meshes: + lODScreenPercentages: [] + globalScale: 1 + meshCompression: 0 + addColliders: 0 + useSRGBMaterialColor: 1 + importVisibility: 1 + importBlendShapes: 1 + importCameras: 1 + importLights: 1 + swapUVChannels: 0 + generateSecondaryUV: 0 + useFileUnits: 1 + optimizeMeshForGPU: 1 + keepQuads: 0 + weldVertices: 1 + preserveHierarchy: 0 + indexFormat: 0 + secondaryUVAngleDistortion: 8 + secondaryUVAreaDistortion: 15.000001 + secondaryUVHardAngle: 88 + secondaryUVPackMargin: 4 + useFileScale: 1 + previousCalculatedGlobalScale: 1 + hasPreviousCalculatedGlobalScale: 0 + tangentSpace: + normalSmoothAngle: 60 + normalImportMode: 0 + tangentImportMode: 3 + normalCalculationMode: 4 + legacyComputeAllNormalsFromSmoothingGroupsWhenMeshHasBlendShapes: 0 + blendShapeNormalImportMode: 1 + normalSmoothingSource: 0 + importAnimation: 1 + copyAvatar: 0 + humanDescription: + serializedVersion: 2 + human: [] + skeleton: [] + armTwist: 0.5 + foreArmTwist: 0.5 + upperLegTwist: 0.5 + legTwist: 0.5 + armStretch: 0.05 + legStretch: 0.05 + feetSpacing: 0 + rootMotionBoneName: + hasTranslationDoF: 0 + hasExtraRoot: 0 + skeletonHasParents: 1 + lastHumanDescriptionAvatarSource: {instanceID: 0} + animationType: 0 + humanoidOversampling: 1 + additionalBone: 0 + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Models/BuildingMediumModel.fbx" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Models/BuildingMediumModel.fbx" new file mode 100644 index 00000000..4c8684ed Binary files /dev/null and "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Models/BuildingMediumModel.fbx" differ diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Models/BuildingMediumModel.fbx.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Models/BuildingMediumModel.fbx.meta" new file mode 100644 index 00000000..0e61f77a --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Models/BuildingMediumModel.fbx.meta" @@ -0,0 +1,99 @@ +fileFormatVersion: 2 +guid: ff205f5b9b7be4ff4b52365d65d4c8e3 +ModelImporter: + serializedVersion: 23 + fileIDToRecycleName: + 100000: //RootNode + 100002: BuildingMedium_Combined + 400000: //RootNode + 400002: BuildingMedium_Combined + 2100000: TemplateEnvironment.003 + 2300000: BuildingMedium_Combined + 3300000: BuildingMedium_Combined + 4300000: BuildingMedium_Combined + externalObjects: {} + materials: + importMaterials: 1 + materialName: 0 + materialSearch: 1 + materialLocation: 1 + animations: + legacyGenerateAnimations: 4 + bakeSimulation: 0 + resampleCurves: 1 + optimizeGameObjects: 0 + motionNodeName: + rigImportErrors: + rigImportWarnings: + animationImportErrors: + animationImportWarnings: + animationRetargetingWarnings: + animationDoRetargetingWarnings: 0 + importAnimatedCustomProperties: 0 + importConstraints: 0 + animationCompression: 1 + animationRotationError: 0.5 + animationPositionError: 0.5 + animationScaleError: 0.5 + animationWrapMode: 0 + extraExposedTransformPaths: [] + extraUserProperties: [] + clipAnimations: [] + isReadable: 1 + meshes: + lODScreenPercentages: [] + globalScale: 1 + meshCompression: 0 + addColliders: 0 + useSRGBMaterialColor: 1 + importVisibility: 1 + importBlendShapes: 1 + importCameras: 1 + importLights: 1 + swapUVChannels: 0 + generateSecondaryUV: 0 + useFileUnits: 1 + optimizeMeshForGPU: 1 + keepQuads: 0 + weldVertices: 1 + preserveHierarchy: 0 + indexFormat: 0 + secondaryUVAngleDistortion: 8 + secondaryUVAreaDistortion: 15.000001 + secondaryUVHardAngle: 88 + secondaryUVPackMargin: 4 + useFileScale: 1 + previousCalculatedGlobalScale: 1 + hasPreviousCalculatedGlobalScale: 0 + tangentSpace: + normalSmoothAngle: 60 + normalImportMode: 1 + tangentImportMode: 3 + normalCalculationMode: 4 + legacyComputeAllNormalsFromSmoothingGroupsWhenMeshHasBlendShapes: 0 + blendShapeNormalImportMode: 1 + normalSmoothingSource: 0 + importAnimation: 1 + copyAvatar: 0 + humanDescription: + serializedVersion: 2 + human: [] + skeleton: [] + armTwist: 0.5 + foreArmTwist: 0.5 + upperLegTwist: 0.5 + legTwist: 0.5 + armStretch: 0.05 + legStretch: 0.05 + feetSpacing: 0 + rootMotionBoneName: + hasTranslationDoF: 0 + hasExtraRoot: 0 + skeletonHasParents: 1 + lastHumanDescriptionAvatarSource: {instanceID: 0} + animationType: 0 + humanoidOversampling: 1 + additionalBone: 0 + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Models/BuildingRoofCentral.fbx" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Models/BuildingRoofCentral.fbx" new file mode 100644 index 00000000..8a6f29ab Binary files /dev/null and "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Models/BuildingRoofCentral.fbx" differ diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Models/BuildingRoofCentral.fbx.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Models/BuildingRoofCentral.fbx.meta" new file mode 100644 index 00000000..1b8b33a0 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Models/BuildingRoofCentral.fbx.meta" @@ -0,0 +1,108 @@ +fileFormatVersion: 2 +guid: 0a64fcbabe32dac42b6b77115813e42d +ModelImporter: + serializedVersion: 23 + fileIDToRecycleName: + 100000: //RootNode + 400000: //RootNode + 2100000: lambert2 + 2100002: TestMaterial + 2300000: //RootNode + 3300000: //RootNode + 4300000: Roof_Central + externalObjects: + - first: + type: UnityEngine:Material + assembly: UnityEngine.CoreModule + name: TestMaterial + second: {fileID: 2100000, guid: d11179e416c9b394c8176d36a0dcae52, type: 2} + - first: + type: UnityEngine:Material + assembly: UnityEngine.CoreModule + name: lambert2 + second: {fileID: 2100000, guid: 38347a2b8295b6147985095f55cd4a55, type: 2} + materials: + importMaterials: 1 + materialName: 1 + materialSearch: 2 + materialLocation: 1 + animations: + legacyGenerateAnimations: 4 + bakeSimulation: 0 + resampleCurves: 1 + optimizeGameObjects: 0 + motionNodeName: + rigImportErrors: + rigImportWarnings: + animationImportErrors: + animationImportWarnings: + animationRetargetingWarnings: + animationDoRetargetingWarnings: 0 + importAnimatedCustomProperties: 0 + importConstraints: 0 + animationCompression: 1 + animationRotationError: 0.5 + animationPositionError: 0.5 + animationScaleError: 0.5 + animationWrapMode: 0 + extraExposedTransformPaths: [] + extraUserProperties: [] + clipAnimations: [] + isReadable: 1 + meshes: + lODScreenPercentages: [] + globalScale: 1 + meshCompression: 0 + addColliders: 0 + useSRGBMaterialColor: 1 + importVisibility: 1 + importBlendShapes: 1 + importCameras: 1 + importLights: 1 + swapUVChannels: 0 + generateSecondaryUV: 0 + useFileUnits: 1 + optimizeMeshForGPU: 1 + keepQuads: 0 + weldVertices: 1 + preserveHierarchy: 0 + indexFormat: 0 + secondaryUVAngleDistortion: 8 + secondaryUVAreaDistortion: 15.000001 + secondaryUVHardAngle: 88 + secondaryUVPackMargin: 4 + useFileScale: 1 + previousCalculatedGlobalScale: 1 + hasPreviousCalculatedGlobalScale: 0 + tangentSpace: + normalSmoothAngle: 60 + normalImportMode: 0 + tangentImportMode: 3 + normalCalculationMode: 4 + legacyComputeAllNormalsFromSmoothingGroupsWhenMeshHasBlendShapes: 0 + blendShapeNormalImportMode: 1 + normalSmoothingSource: 0 + importAnimation: 1 + copyAvatar: 0 + humanDescription: + serializedVersion: 2 + human: [] + skeleton: [] + armTwist: 0.5 + foreArmTwist: 0.5 + upperLegTwist: 0.5 + legTwist: 0.5 + armStretch: 0.05 + legStretch: 0.05 + feetSpacing: 0 + rootMotionBoneName: + hasTranslationDoF: 0 + hasExtraRoot: 0 + skeletonHasParents: 1 + lastHumanDescriptionAvatarSource: {instanceID: 0} + animationType: 0 + humanoidOversampling: 1 + additionalBone: 0 + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Models/BuildingRoofCorner.fbx" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Models/BuildingRoofCorner.fbx" new file mode 100644 index 00000000..b63d5aab Binary files /dev/null and "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Models/BuildingRoofCorner.fbx" differ diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Models/BuildingRoofCorner.fbx.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Models/BuildingRoofCorner.fbx.meta" new file mode 100644 index 00000000..25e0b201 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Models/BuildingRoofCorner.fbx.meta" @@ -0,0 +1,108 @@ +fileFormatVersion: 2 +guid: f46a9f80d31a32e47a57aa4858036430 +ModelImporter: + serializedVersion: 23 + fileIDToRecycleName: + 100000: //RootNode + 400000: //RootNode + 2100000: lambert2 + 2100002: TestMaterial + 2300000: //RootNode + 3300000: //RootNode + 4300000: Roof_Corner + externalObjects: + - first: + type: UnityEngine:Material + assembly: UnityEngine.CoreModule + name: TestMaterial + second: {fileID: 2100000, guid: d11179e416c9b394c8176d36a0dcae52, type: 2} + - first: + type: UnityEngine:Material + assembly: UnityEngine.CoreModule + name: lambert2 + second: {fileID: 2100000, guid: 38347a2b8295b6147985095f55cd4a55, type: 2} + materials: + importMaterials: 1 + materialName: 1 + materialSearch: 2 + materialLocation: 1 + animations: + legacyGenerateAnimations: 4 + bakeSimulation: 0 + resampleCurves: 1 + optimizeGameObjects: 0 + motionNodeName: + rigImportErrors: + rigImportWarnings: + animationImportErrors: + animationImportWarnings: + animationRetargetingWarnings: + animationDoRetargetingWarnings: 0 + importAnimatedCustomProperties: 0 + importConstraints: 0 + animationCompression: 1 + animationRotationError: 0.5 + animationPositionError: 0.5 + animationScaleError: 0.5 + animationWrapMode: 0 + extraExposedTransformPaths: [] + extraUserProperties: [] + clipAnimations: [] + isReadable: 1 + meshes: + lODScreenPercentages: [] + globalScale: 1 + meshCompression: 0 + addColliders: 0 + useSRGBMaterialColor: 1 + importVisibility: 1 + importBlendShapes: 1 + importCameras: 1 + importLights: 1 + swapUVChannels: 0 + generateSecondaryUV: 0 + useFileUnits: 1 + optimizeMeshForGPU: 1 + keepQuads: 0 + weldVertices: 1 + preserveHierarchy: 0 + indexFormat: 0 + secondaryUVAngleDistortion: 8 + secondaryUVAreaDistortion: 15.000001 + secondaryUVHardAngle: 88 + secondaryUVPackMargin: 4 + useFileScale: 1 + previousCalculatedGlobalScale: 1 + hasPreviousCalculatedGlobalScale: 0 + tangentSpace: + normalSmoothAngle: 60 + normalImportMode: 0 + tangentImportMode: 3 + normalCalculationMode: 4 + legacyComputeAllNormalsFromSmoothingGroupsWhenMeshHasBlendShapes: 0 + blendShapeNormalImportMode: 1 + normalSmoothingSource: 0 + importAnimation: 1 + copyAvatar: 0 + humanDescription: + serializedVersion: 2 + human: [] + skeleton: [] + armTwist: 0.5 + foreArmTwist: 0.5 + upperLegTwist: 0.5 + legTwist: 0.5 + armStretch: 0.05 + legStretch: 0.05 + feetSpacing: 0 + rootMotionBoneName: + hasTranslationDoF: 0 + hasExtraRoot: 0 + skeletonHasParents: 1 + lastHumanDescriptionAvatarSource: {instanceID: 0} + animationType: 0 + humanoidOversampling: 1 + additionalBone: 0 + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Models/BuildingRoofDoor.fbx" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Models/BuildingRoofDoor.fbx" new file mode 100644 index 00000000..aaf29926 Binary files /dev/null and "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Models/BuildingRoofDoor.fbx" differ diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Models/BuildingRoofDoor.fbx.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Models/BuildingRoofDoor.fbx.meta" new file mode 100644 index 00000000..67adcfed --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Models/BuildingRoofDoor.fbx.meta" @@ -0,0 +1,108 @@ +fileFormatVersion: 2 +guid: 48f14f1a2f8d5bd43bf543aeb9752ff6 +ModelImporter: + serializedVersion: 23 + fileIDToRecycleName: + 100000: //RootNode + 400000: //RootNode + 2100000: lambert2 + 2100002: TestMaterial + 2300000: //RootNode + 3300000: //RootNode + 4300000: RoofDoor + externalObjects: + - first: + type: UnityEngine:Material + assembly: UnityEngine.CoreModule + name: TestMaterial + second: {fileID: 2100000, guid: d11179e416c9b394c8176d36a0dcae52, type: 2} + - first: + type: UnityEngine:Material + assembly: UnityEngine.CoreModule + name: lambert2 + second: {fileID: 2100000, guid: 38347a2b8295b6147985095f55cd4a55, type: 2} + materials: + importMaterials: 1 + materialName: 1 + materialSearch: 2 + materialLocation: 1 + animations: + legacyGenerateAnimations: 4 + bakeSimulation: 0 + resampleCurves: 1 + optimizeGameObjects: 0 + motionNodeName: + rigImportErrors: + rigImportWarnings: + animationImportErrors: + animationImportWarnings: + animationRetargetingWarnings: + animationDoRetargetingWarnings: 0 + importAnimatedCustomProperties: 0 + importConstraints: 0 + animationCompression: 1 + animationRotationError: 0.5 + animationPositionError: 0.5 + animationScaleError: 0.5 + animationWrapMode: 0 + extraExposedTransformPaths: [] + extraUserProperties: [] + clipAnimations: [] + isReadable: 1 + meshes: + lODScreenPercentages: [] + globalScale: 1 + meshCompression: 0 + addColliders: 0 + useSRGBMaterialColor: 1 + importVisibility: 1 + importBlendShapes: 1 + importCameras: 1 + importLights: 1 + swapUVChannels: 0 + generateSecondaryUV: 0 + useFileUnits: 1 + optimizeMeshForGPU: 1 + keepQuads: 0 + weldVertices: 1 + preserveHierarchy: 0 + indexFormat: 0 + secondaryUVAngleDistortion: 8 + secondaryUVAreaDistortion: 15.000001 + secondaryUVHardAngle: 88 + secondaryUVPackMargin: 4 + useFileScale: 1 + previousCalculatedGlobalScale: 1 + hasPreviousCalculatedGlobalScale: 0 + tangentSpace: + normalSmoothAngle: 60 + normalImportMode: 0 + tangentImportMode: 3 + normalCalculationMode: 4 + legacyComputeAllNormalsFromSmoothingGroupsWhenMeshHasBlendShapes: 0 + blendShapeNormalImportMode: 1 + normalSmoothingSource: 0 + importAnimation: 1 + copyAvatar: 0 + humanDescription: + serializedVersion: 2 + human: [] + skeleton: [] + armTwist: 0.5 + foreArmTwist: 0.5 + upperLegTwist: 0.5 + legTwist: 0.5 + armStretch: 0.05 + legStretch: 0.05 + feetSpacing: 0 + rootMotionBoneName: + hasTranslationDoF: 0 + hasExtraRoot: 0 + skeletonHasParents: 1 + lastHumanDescriptionAvatarSource: {instanceID: 0} + animationType: 0 + humanoidOversampling: 1 + additionalBone: 0 + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Models/BuildingRoofWalls.fbx" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Models/BuildingRoofWalls.fbx" new file mode 100644 index 00000000..f1f16fb0 Binary files /dev/null and "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Models/BuildingRoofWalls.fbx" differ diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Models/BuildingRoofWalls.fbx.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Models/BuildingRoofWalls.fbx.meta" new file mode 100644 index 00000000..c8da920a --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Models/BuildingRoofWalls.fbx.meta" @@ -0,0 +1,108 @@ +fileFormatVersion: 2 +guid: 96819d445b8f3e54bafac2405ab1e2e3 +ModelImporter: + serializedVersion: 23 + fileIDToRecycleName: + 100000: //RootNode + 400000: //RootNode + 2100000: lambert2 + 2100002: TestMaterial + 2300000: //RootNode + 3300000: //RootNode + 4300000: Roof_Walls + externalObjects: + - first: + type: UnityEngine:Material + assembly: UnityEngine.CoreModule + name: TestMaterial + second: {fileID: 2100000, guid: d11179e416c9b394c8176d36a0dcae52, type: 2} + - first: + type: UnityEngine:Material + assembly: UnityEngine.CoreModule + name: lambert2 + second: {fileID: 2100000, guid: 38347a2b8295b6147985095f55cd4a55, type: 2} + materials: + importMaterials: 1 + materialName: 1 + materialSearch: 2 + materialLocation: 1 + animations: + legacyGenerateAnimations: 4 + bakeSimulation: 0 + resampleCurves: 1 + optimizeGameObjects: 0 + motionNodeName: + rigImportErrors: + rigImportWarnings: + animationImportErrors: + animationImportWarnings: + animationRetargetingWarnings: + animationDoRetargetingWarnings: 0 + importAnimatedCustomProperties: 0 + importConstraints: 0 + animationCompression: 1 + animationRotationError: 0.5 + animationPositionError: 0.5 + animationScaleError: 0.5 + animationWrapMode: 0 + extraExposedTransformPaths: [] + extraUserProperties: [] + clipAnimations: [] + isReadable: 1 + meshes: + lODScreenPercentages: [] + globalScale: 1 + meshCompression: 0 + addColliders: 0 + useSRGBMaterialColor: 1 + importVisibility: 1 + importBlendShapes: 1 + importCameras: 1 + importLights: 1 + swapUVChannels: 0 + generateSecondaryUV: 0 + useFileUnits: 1 + optimizeMeshForGPU: 1 + keepQuads: 0 + weldVertices: 1 + preserveHierarchy: 0 + indexFormat: 0 + secondaryUVAngleDistortion: 8 + secondaryUVAreaDistortion: 15.000001 + secondaryUVHardAngle: 88 + secondaryUVPackMargin: 4 + useFileScale: 1 + previousCalculatedGlobalScale: 1 + hasPreviousCalculatedGlobalScale: 0 + tangentSpace: + normalSmoothAngle: 60 + normalImportMode: 0 + tangentImportMode: 3 + normalCalculationMode: 4 + legacyComputeAllNormalsFromSmoothingGroupsWhenMeshHasBlendShapes: 0 + blendShapeNormalImportMode: 1 + normalSmoothingSource: 0 + importAnimation: 1 + copyAvatar: 0 + humanDescription: + serializedVersion: 2 + human: [] + skeleton: [] + armTwist: 0.5 + foreArmTwist: 0.5 + upperLegTwist: 0.5 + legTwist: 0.5 + armStretch: 0.05 + legStretch: 0.05 + feetSpacing: 0 + rootMotionBoneName: + hasTranslationDoF: 0 + hasExtraRoot: 0 + skeletonHasParents: 1 + lastHumanDescriptionAvatarSource: {instanceID: 0} + animationType: 0 + humanoidOversampling: 1 + additionalBone: 0 + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Models/BuildingShortModel.fbx" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Models/BuildingShortModel.fbx" new file mode 100644 index 00000000..c32ea31b Binary files /dev/null and "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Models/BuildingShortModel.fbx" differ diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Models/BuildingShortModel.fbx.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Models/BuildingShortModel.fbx.meta" new file mode 100644 index 00000000..df0f2b9f --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Models/BuildingShortModel.fbx.meta" @@ -0,0 +1,340 @@ +fileFormatVersion: 2 +guid: c2c0d74b41b8c4077b14073abca6504f +ModelImporter: + serializedVersion: 23 + fileIDToRecycleName: + 100000: Building01_Corner_Plain + 100002: Building01_Corner_Plain__1_ + 100004: Building01_Corner_Plain__2_ + 100006: Building01_Corner_Plain__3_ + 100008: Building01_Wall_Door + 100010: Building01_Wall_Plain + 100012: Building01_Wall_Plain__1_ + 100014: Building01_Wall_Plain__2_ + 100016: Building01_Wall_Plain__3_ + 100018: Building01_Wall_Plain__4_ + 100020: Building01_Wall_Plain__5_ + 100022: Building01_Wall_Plain__6_ + 100024: Building01_Wall_Plain__7_ + 100026: Building01_Wall_Plain__8_ + 100028: Building03_Corner_WideWindow + 100030: Building03_Corner_WideWindow__1_ + 100032: Building03_Corner_WideWindow__2_ + 100034: Building03_Corner_WideWindow__3_ + 100036: Building03_Wall_WideWindow + 100038: Building03_Wall_WideWindow__1_ + 100040: Building03_Wall_WideWindow__2_ + 100042: Building03_Wall_WideWindow__3_ + 100044: Building03_Wall_WideWindow__4_ + 100046: Building03_Wall_WideWindow__5_ + 100048: Building03_Wall_WideWindow__6_ + 100050: Building03_Wall_WideWindow__7_ + 100052: Building03_Wall_WideWindow__8_ + 100054: Building03_Wall_WideWindow__9_ + 100056: //RootNode + 100058: RoofCentral + 100060: RoofCentral__1_ + 100062: RoofCentral__2_ + 100064: RoofCentral__3_ + 100066: RoofCentral__4_ + 100068: RoofCentral__5_ + 100070: RoofCorner + 100072: RoofCorner__1_ + 100074: RoofCorner__2_ + 100076: RoofCorner__3_ + 100078: RoofWalls + 100080: RoofWalls__1_ + 100082: RoofWalls__2_ + 100084: RoofWalls__3_ + 100086: RoofWalls__4_ + 100088: RoofWalls__5_ + 100090: RoofWalls__6_ + 100092: RoofWalls__7_ + 100094: RoofWalls__8_ + 100096: RoofWalls__9_ + 100098: BuildingTall + 400000: Building01_Corner_Plain + 400002: Building01_Corner_Plain__1_ + 400004: Building01_Corner_Plain__2_ + 400006: Building01_Corner_Plain__3_ + 400008: Building01_Wall_Door + 400010: Building01_Wall_Plain + 400012: Building01_Wall_Plain__1_ + 400014: Building01_Wall_Plain__2_ + 400016: Building01_Wall_Plain__3_ + 400018: Building01_Wall_Plain__4_ + 400020: Building01_Wall_Plain__5_ + 400022: Building01_Wall_Plain__6_ + 400024: Building01_Wall_Plain__7_ + 400026: Building01_Wall_Plain__8_ + 400028: Building03_Corner_WideWindow + 400030: Building03_Corner_WideWindow__1_ + 400032: Building03_Corner_WideWindow__2_ + 400034: Building03_Corner_WideWindow__3_ + 400036: Building03_Wall_WideWindow + 400038: Building03_Wall_WideWindow__1_ + 400040: Building03_Wall_WideWindow__2_ + 400042: Building03_Wall_WideWindow__3_ + 400044: Building03_Wall_WideWindow__4_ + 400046: Building03_Wall_WideWindow__5_ + 400048: Building03_Wall_WideWindow__6_ + 400050: Building03_Wall_WideWindow__7_ + 400052: Building03_Wall_WideWindow__8_ + 400054: Building03_Wall_WideWindow__9_ + 400056: //RootNode + 400058: RoofCentral + 400060: RoofCentral__1_ + 400062: RoofCentral__2_ + 400064: RoofCentral__3_ + 400066: RoofCentral__4_ + 400068: RoofCentral__5_ + 400070: RoofCorner + 400072: RoofCorner__1_ + 400074: RoofCorner__2_ + 400076: RoofCorner__3_ + 400078: RoofWalls + 400080: RoofWalls__1_ + 400082: RoofWalls__2_ + 400084: RoofWalls__3_ + 400086: RoofWalls__4_ + 400088: RoofWalls__5_ + 400090: RoofWalls__6_ + 400092: RoofWalls__7_ + 400094: RoofWalls__8_ + 400096: RoofWalls__9_ + 400098: BuildingTall + 2100000: TemplateEnvironment + 2100002: TemplateEnvironment.002 + 2300000: Building01_Corner_Plain + 2300002: Building01_Corner_Plain__1_ + 2300004: Building01_Corner_Plain__2_ + 2300006: Building01_Corner_Plain__3_ + 2300008: Building01_Wall_Door + 2300010: Building01_Wall_Plain + 2300012: Building01_Wall_Plain__1_ + 2300014: Building01_Wall_Plain__2_ + 2300016: Building01_Wall_Plain__3_ + 2300018: Building01_Wall_Plain__4_ + 2300020: Building01_Wall_Plain__5_ + 2300022: Building01_Wall_Plain__6_ + 2300024: Building01_Wall_Plain__7_ + 2300026: Building01_Wall_Plain__8_ + 2300028: Building03_Corner_WideWindow + 2300030: Building03_Corner_WideWindow__1_ + 2300032: Building03_Corner_WideWindow__2_ + 2300034: Building03_Corner_WideWindow__3_ + 2300036: Building03_Wall_WideWindow + 2300038: Building03_Wall_WideWindow__1_ + 2300040: Building03_Wall_WideWindow__2_ + 2300042: Building03_Wall_WideWindow__3_ + 2300044: Building03_Wall_WideWindow__4_ + 2300046: Building03_Wall_WideWindow__5_ + 2300048: Building03_Wall_WideWindow__6_ + 2300050: Building03_Wall_WideWindow__7_ + 2300052: Building03_Wall_WideWindow__8_ + 2300054: Building03_Wall_WideWindow__9_ + 2300056: RoofCentral + 2300058: RoofCentral__1_ + 2300060: RoofCentral__2_ + 2300062: RoofCentral__3_ + 2300064: RoofCentral__4_ + 2300066: RoofCentral__5_ + 2300068: RoofCorner + 2300070: RoofCorner__1_ + 2300072: RoofCorner__2_ + 2300074: RoofCorner__3_ + 2300076: RoofWalls + 2300078: RoofWalls__1_ + 2300080: RoofWalls__2_ + 2300082: RoofWalls__3_ + 2300084: RoofWalls__4_ + 2300086: RoofWalls__5_ + 2300088: RoofWalls__6_ + 2300090: RoofWalls__7_ + 2300092: RoofWalls__8_ + 2300094: RoofWalls__9_ + 2300096: BuildingTall + 3300000: Building01_Corner_Plain + 3300002: Building01_Corner_Plain__1_ + 3300004: Building01_Corner_Plain__2_ + 3300006: Building01_Corner_Plain__3_ + 3300008: Building01_Wall_Door + 3300010: Building01_Wall_Plain + 3300012: Building01_Wall_Plain__1_ + 3300014: Building01_Wall_Plain__2_ + 3300016: Building01_Wall_Plain__3_ + 3300018: Building01_Wall_Plain__4_ + 3300020: Building01_Wall_Plain__5_ + 3300022: Building01_Wall_Plain__6_ + 3300024: Building01_Wall_Plain__7_ + 3300026: Building01_Wall_Plain__8_ + 3300028: Building03_Corner_WideWindow + 3300030: Building03_Corner_WideWindow__1_ + 3300032: Building03_Corner_WideWindow__2_ + 3300034: Building03_Corner_WideWindow__3_ + 3300036: Building03_Wall_WideWindow + 3300038: Building03_Wall_WideWindow__1_ + 3300040: Building03_Wall_WideWindow__2_ + 3300042: Building03_Wall_WideWindow__3_ + 3300044: Building03_Wall_WideWindow__4_ + 3300046: Building03_Wall_WideWindow__5_ + 3300048: Building03_Wall_WideWindow__6_ + 3300050: Building03_Wall_WideWindow__7_ + 3300052: Building03_Wall_WideWindow__8_ + 3300054: Building03_Wall_WideWindow__9_ + 3300056: RoofCentral + 3300058: RoofCentral__1_ + 3300060: RoofCentral__2_ + 3300062: RoofCentral__3_ + 3300064: RoofCentral__4_ + 3300066: RoofCentral__5_ + 3300068: RoofCorner + 3300070: RoofCorner__1_ + 3300072: RoofCorner__2_ + 3300074: RoofCorner__3_ + 3300076: RoofWalls + 3300078: RoofWalls__1_ + 3300080: RoofWalls__2_ + 3300082: RoofWalls__3_ + 3300084: RoofWalls__4_ + 3300086: RoofWalls__5_ + 3300088: RoofWalls__6_ + 3300090: RoofWalls__7_ + 3300092: RoofWalls__8_ + 3300094: RoofWalls__9_ + 3300096: BuildingTall + 4300000: Building01_Corner_Plain + 4300002: Building01_Wall_Door + 4300004: Building01_Wall_Plain + 4300006: Building03_Corner_WideWindow + 4300008: Building03_Wall_WideWindow + 4300010: Building01_Wall_Plain__1_ + 4300012: Building01_Corner_Plain__1_ + 4300014: Building01_Wall_Plain__2_ + 4300016: Building01_Wall_Plain__3_ + 4300018: Building01_Corner_Plain__2_ + 4300020: Building01_Wall_Plain__4_ + 4300022: Building01_Wall_Plain__5_ + 4300024: Building01_Corner_Plain__3_ + 4300026: Building01_Wall_Plain__6_ + 4300028: Building01_Wall_Plain__7_ + 4300030: Building01_Wall_Plain__8_ + 4300032: RoofCentral + 4300034: RoofCorner + 4300036: RoofWalls + 4300038: Building03_Wall_WideWindow__1_ + 4300040: Building03_Wall_WideWindow__2_ + 4300042: Building03_Corner_WideWindow__1_ + 4300044: Building03_Wall_WideWindow__3_ + 4300046: Building03_Wall_WideWindow__4_ + 4300048: Building03_Corner_WideWindow__2_ + 4300050: Building03_Wall_WideWindow__5_ + 4300052: Building03_Wall_WideWindow__6_ + 4300054: Building03_Wall_WideWindow__7_ + 4300056: Building03_Corner_WideWindow__3_ + 4300058: Building03_Wall_WideWindow__8_ + 4300060: Building03_Wall_WideWindow__9_ + 4300062: RoofWalls__1_ + 4300064: RoofCorner__1_ + 4300066: RoofWalls__2_ + 4300068: RoofWalls__3_ + 4300070: RoofWalls__4_ + 4300072: RoofCorner__2_ + 4300074: RoofCorner__3_ + 4300076: RoofWalls__5_ + 4300078: RoofWalls__6_ + 4300080: RoofWalls__7_ + 4300082: RoofWalls__8_ + 4300084: RoofWalls__9_ + 4300086: RoofCentral__1_ + 4300088: RoofCentral__2_ + 4300090: RoofCentral__3_ + 4300092: RoofCentral__4_ + 4300094: RoofCentral__5_ + 4300096: BuildingTall + externalObjects: {} + materials: + importMaterials: 1 + materialName: 0 + materialSearch: 1 + materialLocation: 1 + animations: + legacyGenerateAnimations: 4 + bakeSimulation: 0 + resampleCurves: 1 + optimizeGameObjects: 0 + motionNodeName: + rigImportErrors: + rigImportWarnings: + animationImportErrors: + animationImportWarnings: + animationRetargetingWarnings: + animationDoRetargetingWarnings: 0 + importAnimatedCustomProperties: 0 + importConstraints: 0 + animationCompression: 1 + animationRotationError: 0.5 + animationPositionError: 0.5 + animationScaleError: 0.5 + animationWrapMode: 0 + extraExposedTransformPaths: [] + extraUserProperties: [] + clipAnimations: [] + isReadable: 1 + meshes: + lODScreenPercentages: [] + globalScale: 1 + meshCompression: 0 + addColliders: 0 + useSRGBMaterialColor: 1 + importVisibility: 1 + importBlendShapes: 1 + importCameras: 1 + importLights: 1 + swapUVChannels: 0 + generateSecondaryUV: 0 + useFileUnits: 1 + optimizeMeshForGPU: 1 + keepQuads: 0 + weldVertices: 1 + preserveHierarchy: 0 + indexFormat: 0 + secondaryUVAngleDistortion: 8 + secondaryUVAreaDistortion: 15.000001 + secondaryUVHardAngle: 88 + secondaryUVPackMargin: 4 + useFileScale: 1 + previousCalculatedGlobalScale: 1 + hasPreviousCalculatedGlobalScale: 0 + tangentSpace: + normalSmoothAngle: 60 + normalImportMode: 1 + tangentImportMode: 3 + normalCalculationMode: 4 + legacyComputeAllNormalsFromSmoothingGroupsWhenMeshHasBlendShapes: 0 + blendShapeNormalImportMode: 1 + normalSmoothingSource: 0 + importAnimation: 1 + copyAvatar: 0 + humanDescription: + serializedVersion: 2 + human: [] + skeleton: [] + armTwist: 0.5 + foreArmTwist: 0.5 + upperLegTwist: 0.5 + legTwist: 0.5 + armStretch: 0.05 + legStretch: 0.05 + feetSpacing: 0 + rootMotionBoneName: + hasTranslationDoF: 0 + hasExtraRoot: 0 + skeletonHasParents: 1 + lastHumanDescriptionAvatarSource: {instanceID: 0} + animationType: 0 + humanoidOversampling: 1 + additionalBone: 0 + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Models/BuildingShortVariantModel.fbx" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Models/BuildingShortVariantModel.fbx" new file mode 100644 index 00000000..a975566f Binary files /dev/null and "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Models/BuildingShortVariantModel.fbx" differ diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Models/BuildingShortVariantModel.fbx.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Models/BuildingShortVariantModel.fbx.meta" new file mode 100644 index 00000000..59bc88a1 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Models/BuildingShortVariantModel.fbx.meta" @@ -0,0 +1,679 @@ +fileFormatVersion: 2 +guid: ea9b690577e1e4787b7a0ba1e8bde702 +ModelImporter: + serializedVersion: 23 + fileIDToRecycleName: + 100000: Building01_Corner_Plain + 100002: Building01_Corner_Plain__1_ + 100004: Building01_Corner_Plain__2_ + 100006: Building01_Corner_Plain__3_ + 100008: Building01_Corner_Plain__4_ + 100010: Building01_Corner_Plain__5_ + 100012: Building01_Corner_Plain__6_ + 100014: Building01_Corner_Plain__7_ + 100016: Building01_Wall_Door + 100018: Building01_Wall_Door__1_ + 100020: Building01_Wall_Plain + 100022: Building01_Wall_Plain__10_ + 100024: Building01_Wall_Plain__11_ + 100026: Building01_Wall_Plain__12_ + 100028: Building01_Wall_Plain__13_ + 100030: Building01_Wall_Plain__14_ + 100032: Building01_Wall_Plain__15_ + 100034: Building01_Wall_Plain__16_ + 100036: Building01_Wall_Plain__17_ + 100038: Building01_Wall_Plain__1_ + 100040: Building01_Wall_Plain__2_ + 100042: Building01_Wall_Plain__3_ + 100044: Building01_Wall_Plain__4_ + 100046: Building01_Wall_Plain__5_ + 100048: Building01_Wall_Plain__6_ + 100050: Building01_Wall_Plain__7_ + 100052: Building01_Wall_Plain__8_ + 100054: Building01_Wall_Plain__9_ + 100056: Building03_Corner_WideWindow + 100058: Building03_Corner_WideWindow__1_ + 100060: Building03_Corner_WideWindow__2_ + 100062: Building03_Corner_WideWindow__3_ + 100064: Building03_Corner_WideWindow__4_ + 100066: Building03_Corner_WideWindow__5_ + 100068: Building03_Corner_WideWindow__6_ + 100070: Building03_Corner_WideWindow__7_ + 100072: Building03_Wall_WideWindow + 100074: Building03_Wall_WideWindow__10_ + 100076: Building03_Wall_WideWindow__11_ + 100078: Building03_Wall_WideWindow__12_ + 100080: Building03_Wall_WideWindow__13_ + 100082: Building03_Wall_WideWindow__14_ + 100084: Building03_Wall_WideWindow__15_ + 100086: Building03_Wall_WideWindow__16_ + 100088: Building03_Wall_WideWindow__17_ + 100090: Building03_Wall_WideWindow__18_ + 100092: Building03_Wall_WideWindow__19_ + 100094: Building03_Wall_WideWindow__1_ + 100096: Building03_Wall_WideWindow__20_ + 100098: Building03_Wall_WideWindow__21_ + 100100: Building03_Wall_WideWindow__22_ + 100102: Building03_Wall_WideWindow__23_ + 100104: Building03_Wall_WideWindow__24_ + 100106: Building03_Wall_WideWindow__25_ + 100108: Building03_Wall_WideWindow__2_ + 100110: Building03_Wall_WideWindow__3_ + 100112: Building03_Wall_WideWindow__4_ + 100114: Building03_Wall_WideWindow__5_ + 100116: Building03_Wall_WideWindow__6_ + 100118: Building03_Wall_WideWindow__7_ + 100120: Building03_Wall_WideWindow__8_ + 100122: Building03_Wall_WideWindow__9_ + 100124: //RootNode + 100126: RoofCentral + 100128: RoofCentral__10_ + 100130: RoofCentral__11_ + 100132: RoofCentral__1_ + 100134: RoofCentral__2_ + 100136: RoofCentral__3_ + 100138: RoofCentral__4_ + 100140: RoofCentral__5_ + 100142: RoofCentral__6_ + 100144: RoofCentral__7_ + 100146: RoofCentral__8_ + 100148: RoofCentral__9_ + 100150: RoofCorner + 100152: RoofCorner__1_ + 100154: RoofCorner__2_ + 100156: RoofCorner__3_ + 100158: RoofCorner__4_ + 100160: RoofCorner__5_ + 100162: RoofCorner__6_ + 100164: RoofCorner__7_ + 100166: RoofWalls + 100168: RoofWalls__10_ + 100170: RoofWalls__11_ + 100172: RoofWalls__12_ + 100174: RoofWalls__13_ + 100176: RoofWalls__14_ + 100178: RoofWalls__15_ + 100180: RoofWalls__16_ + 100182: RoofWalls__17_ + 100184: RoofWalls__18_ + 100186: RoofWalls__19_ + 100188: RoofWalls__1_ + 100190: RoofWalls__20_ + 100192: RoofWalls__21_ + 100194: RoofWalls__22_ + 100196: RoofWalls__23_ + 100198: RoofWalls__24_ + 100200: RoofWalls__25_ + 100202: RoofWalls__26_ + 100204: RoofWalls__27_ + 100206: RoofWalls__28_ + 100208: RoofWalls__29_ + 100210: RoofWalls__2_ + 100212: RoofWalls__30_ + 100214: RoofWalls__31_ + 100216: RoofWalls__32_ + 100218: RoofWalls__33_ + 100220: RoofWalls__3_ + 100222: RoofWalls__4_ + 100224: RoofWalls__5_ + 100226: RoofWalls__6_ + 100228: RoofWalls__7_ + 100230: RoofWalls__8_ + 100232: RoofWalls__9_ + 100234: BuildingShortVariant_Combined + 400000: Building01_Corner_Plain + 400002: Building01_Corner_Plain__1_ + 400004: Building01_Corner_Plain__2_ + 400006: Building01_Corner_Plain__3_ + 400008: Building01_Corner_Plain__4_ + 400010: Building01_Corner_Plain__5_ + 400012: Building01_Corner_Plain__6_ + 400014: Building01_Corner_Plain__7_ + 400016: Building01_Wall_Door + 400018: Building01_Wall_Door__1_ + 400020: Building01_Wall_Plain + 400022: Building01_Wall_Plain__10_ + 400024: Building01_Wall_Plain__11_ + 400026: Building01_Wall_Plain__12_ + 400028: Building01_Wall_Plain__13_ + 400030: Building01_Wall_Plain__14_ + 400032: Building01_Wall_Plain__15_ + 400034: Building01_Wall_Plain__16_ + 400036: Building01_Wall_Plain__17_ + 400038: Building01_Wall_Plain__1_ + 400040: Building01_Wall_Plain__2_ + 400042: Building01_Wall_Plain__3_ + 400044: Building01_Wall_Plain__4_ + 400046: Building01_Wall_Plain__5_ + 400048: Building01_Wall_Plain__6_ + 400050: Building01_Wall_Plain__7_ + 400052: Building01_Wall_Plain__8_ + 400054: Building01_Wall_Plain__9_ + 400056: Building03_Corner_WideWindow + 400058: Building03_Corner_WideWindow__1_ + 400060: Building03_Corner_WideWindow__2_ + 400062: Building03_Corner_WideWindow__3_ + 400064: Building03_Corner_WideWindow__4_ + 400066: Building03_Corner_WideWindow__5_ + 400068: Building03_Corner_WideWindow__6_ + 400070: Building03_Corner_WideWindow__7_ + 400072: Building03_Wall_WideWindow + 400074: Building03_Wall_WideWindow__10_ + 400076: Building03_Wall_WideWindow__11_ + 400078: Building03_Wall_WideWindow__12_ + 400080: Building03_Wall_WideWindow__13_ + 400082: Building03_Wall_WideWindow__14_ + 400084: Building03_Wall_WideWindow__15_ + 400086: Building03_Wall_WideWindow__16_ + 400088: Building03_Wall_WideWindow__17_ + 400090: Building03_Wall_WideWindow__18_ + 400092: Building03_Wall_WideWindow__19_ + 400094: Building03_Wall_WideWindow__1_ + 400096: Building03_Wall_WideWindow__20_ + 400098: Building03_Wall_WideWindow__21_ + 400100: Building03_Wall_WideWindow__22_ + 400102: Building03_Wall_WideWindow__23_ + 400104: Building03_Wall_WideWindow__24_ + 400106: Building03_Wall_WideWindow__25_ + 400108: Building03_Wall_WideWindow__2_ + 400110: Building03_Wall_WideWindow__3_ + 400112: Building03_Wall_WideWindow__4_ + 400114: Building03_Wall_WideWindow__5_ + 400116: Building03_Wall_WideWindow__6_ + 400118: Building03_Wall_WideWindow__7_ + 400120: Building03_Wall_WideWindow__8_ + 400122: Building03_Wall_WideWindow__9_ + 400124: //RootNode + 400126: RoofCentral + 400128: RoofCentral__10_ + 400130: RoofCentral__11_ + 400132: RoofCentral__1_ + 400134: RoofCentral__2_ + 400136: RoofCentral__3_ + 400138: RoofCentral__4_ + 400140: RoofCentral__5_ + 400142: RoofCentral__6_ + 400144: RoofCentral__7_ + 400146: RoofCentral__8_ + 400148: RoofCentral__9_ + 400150: RoofCorner + 400152: RoofCorner__1_ + 400154: RoofCorner__2_ + 400156: RoofCorner__3_ + 400158: RoofCorner__4_ + 400160: RoofCorner__5_ + 400162: RoofCorner__6_ + 400164: RoofCorner__7_ + 400166: RoofWalls + 400168: RoofWalls__10_ + 400170: RoofWalls__11_ + 400172: RoofWalls__12_ + 400174: RoofWalls__13_ + 400176: RoofWalls__14_ + 400178: RoofWalls__15_ + 400180: RoofWalls__16_ + 400182: RoofWalls__17_ + 400184: RoofWalls__18_ + 400186: RoofWalls__19_ + 400188: RoofWalls__1_ + 400190: RoofWalls__20_ + 400192: RoofWalls__21_ + 400194: RoofWalls__22_ + 400196: RoofWalls__23_ + 400198: RoofWalls__24_ + 400200: RoofWalls__25_ + 400202: RoofWalls__26_ + 400204: RoofWalls__27_ + 400206: RoofWalls__28_ + 400208: RoofWalls__29_ + 400210: RoofWalls__2_ + 400212: RoofWalls__30_ + 400214: RoofWalls__31_ + 400216: RoofWalls__32_ + 400218: RoofWalls__33_ + 400220: RoofWalls__3_ + 400222: RoofWalls__4_ + 400224: RoofWalls__5_ + 400226: RoofWalls__6_ + 400228: RoofWalls__7_ + 400230: RoofWalls__8_ + 400232: RoofWalls__9_ + 400234: BuildingShortVariant_Combined + 2100000: TemplateEnvironment + 2300000: Building01_Corner_Plain + 2300002: Building01_Corner_Plain__1_ + 2300004: Building01_Corner_Plain__2_ + 2300006: Building01_Corner_Plain__3_ + 2300008: Building01_Corner_Plain__4_ + 2300010: Building01_Corner_Plain__5_ + 2300012: Building01_Corner_Plain__6_ + 2300014: Building01_Corner_Plain__7_ + 2300016: Building01_Wall_Door + 2300018: Building01_Wall_Door__1_ + 2300020: Building01_Wall_Plain + 2300022: Building01_Wall_Plain__10_ + 2300024: Building01_Wall_Plain__11_ + 2300026: Building01_Wall_Plain__12_ + 2300028: Building01_Wall_Plain__13_ + 2300030: Building01_Wall_Plain__14_ + 2300032: Building01_Wall_Plain__15_ + 2300034: Building01_Wall_Plain__16_ + 2300036: Building01_Wall_Plain__17_ + 2300038: Building01_Wall_Plain__1_ + 2300040: Building01_Wall_Plain__2_ + 2300042: Building01_Wall_Plain__3_ + 2300044: Building01_Wall_Plain__4_ + 2300046: Building01_Wall_Plain__5_ + 2300048: Building01_Wall_Plain__6_ + 2300050: Building01_Wall_Plain__7_ + 2300052: Building01_Wall_Plain__8_ + 2300054: Building01_Wall_Plain__9_ + 2300056: Building03_Corner_WideWindow + 2300058: Building03_Corner_WideWindow__1_ + 2300060: Building03_Corner_WideWindow__2_ + 2300062: Building03_Corner_WideWindow__3_ + 2300064: Building03_Corner_WideWindow__4_ + 2300066: Building03_Corner_WideWindow__5_ + 2300068: Building03_Corner_WideWindow__6_ + 2300070: Building03_Corner_WideWindow__7_ + 2300072: Building03_Wall_WideWindow + 2300074: Building03_Wall_WideWindow__10_ + 2300076: Building03_Wall_WideWindow__11_ + 2300078: Building03_Wall_WideWindow__12_ + 2300080: Building03_Wall_WideWindow__13_ + 2300082: Building03_Wall_WideWindow__14_ + 2300084: Building03_Wall_WideWindow__15_ + 2300086: Building03_Wall_WideWindow__16_ + 2300088: Building03_Wall_WideWindow__17_ + 2300090: Building03_Wall_WideWindow__18_ + 2300092: Building03_Wall_WideWindow__19_ + 2300094: Building03_Wall_WideWindow__1_ + 2300096: Building03_Wall_WideWindow__20_ + 2300098: Building03_Wall_WideWindow__21_ + 2300100: Building03_Wall_WideWindow__22_ + 2300102: Building03_Wall_WideWindow__23_ + 2300104: Building03_Wall_WideWindow__24_ + 2300106: Building03_Wall_WideWindow__25_ + 2300108: Building03_Wall_WideWindow__2_ + 2300110: Building03_Wall_WideWindow__3_ + 2300112: Building03_Wall_WideWindow__4_ + 2300114: Building03_Wall_WideWindow__5_ + 2300116: Building03_Wall_WideWindow__6_ + 2300118: Building03_Wall_WideWindow__7_ + 2300120: Building03_Wall_WideWindow__8_ + 2300122: Building03_Wall_WideWindow__9_ + 2300124: RoofCentral + 2300126: RoofCentral__10_ + 2300128: RoofCentral__11_ + 2300130: RoofCentral__1_ + 2300132: RoofCentral__2_ + 2300134: RoofCentral__3_ + 2300136: RoofCentral__4_ + 2300138: RoofCentral__5_ + 2300140: RoofCentral__6_ + 2300142: RoofCentral__7_ + 2300144: RoofCentral__8_ + 2300146: RoofCentral__9_ + 2300148: RoofCorner + 2300150: RoofCorner__1_ + 2300152: RoofCorner__2_ + 2300154: RoofCorner__3_ + 2300156: RoofCorner__4_ + 2300158: RoofCorner__5_ + 2300160: RoofCorner__6_ + 2300162: RoofCorner__7_ + 2300164: RoofWalls + 2300166: RoofWalls__10_ + 2300168: RoofWalls__11_ + 2300170: RoofWalls__12_ + 2300172: RoofWalls__13_ + 2300174: RoofWalls__14_ + 2300176: RoofWalls__15_ + 2300178: RoofWalls__16_ + 2300180: RoofWalls__17_ + 2300182: RoofWalls__18_ + 2300184: RoofWalls__19_ + 2300186: RoofWalls__1_ + 2300188: RoofWalls__20_ + 2300190: RoofWalls__21_ + 2300192: RoofWalls__22_ + 2300194: RoofWalls__23_ + 2300196: RoofWalls__24_ + 2300198: RoofWalls__25_ + 2300200: RoofWalls__26_ + 2300202: RoofWalls__27_ + 2300204: RoofWalls__28_ + 2300206: RoofWalls__29_ + 2300208: RoofWalls__2_ + 2300210: RoofWalls__30_ + 2300212: RoofWalls__31_ + 2300214: RoofWalls__32_ + 2300216: RoofWalls__33_ + 2300218: RoofWalls__3_ + 2300220: RoofWalls__4_ + 2300222: RoofWalls__5_ + 2300224: RoofWalls__6_ + 2300226: RoofWalls__7_ + 2300228: RoofWalls__8_ + 2300230: RoofWalls__9_ + 2300232: BuildingShortVariant_Combined + 3300000: Building01_Corner_Plain + 3300002: Building01_Corner_Plain__1_ + 3300004: Building01_Corner_Plain__2_ + 3300006: Building01_Corner_Plain__3_ + 3300008: Building01_Corner_Plain__4_ + 3300010: Building01_Corner_Plain__5_ + 3300012: Building01_Corner_Plain__6_ + 3300014: Building01_Corner_Plain__7_ + 3300016: Building01_Wall_Door + 3300018: Building01_Wall_Door__1_ + 3300020: Building01_Wall_Plain + 3300022: Building01_Wall_Plain__10_ + 3300024: Building01_Wall_Plain__11_ + 3300026: Building01_Wall_Plain__12_ + 3300028: Building01_Wall_Plain__13_ + 3300030: Building01_Wall_Plain__14_ + 3300032: Building01_Wall_Plain__15_ + 3300034: Building01_Wall_Plain__16_ + 3300036: Building01_Wall_Plain__17_ + 3300038: Building01_Wall_Plain__1_ + 3300040: Building01_Wall_Plain__2_ + 3300042: Building01_Wall_Plain__3_ + 3300044: Building01_Wall_Plain__4_ + 3300046: Building01_Wall_Plain__5_ + 3300048: Building01_Wall_Plain__6_ + 3300050: Building01_Wall_Plain__7_ + 3300052: Building01_Wall_Plain__8_ + 3300054: Building01_Wall_Plain__9_ + 3300056: Building03_Corner_WideWindow + 3300058: Building03_Corner_WideWindow__1_ + 3300060: Building03_Corner_WideWindow__2_ + 3300062: Building03_Corner_WideWindow__3_ + 3300064: Building03_Corner_WideWindow__4_ + 3300066: Building03_Corner_WideWindow__5_ + 3300068: Building03_Corner_WideWindow__6_ + 3300070: Building03_Corner_WideWindow__7_ + 3300072: Building03_Wall_WideWindow + 3300074: Building03_Wall_WideWindow__10_ + 3300076: Building03_Wall_WideWindow__11_ + 3300078: Building03_Wall_WideWindow__12_ + 3300080: Building03_Wall_WideWindow__13_ + 3300082: Building03_Wall_WideWindow__14_ + 3300084: Building03_Wall_WideWindow__15_ + 3300086: Building03_Wall_WideWindow__16_ + 3300088: Building03_Wall_WideWindow__17_ + 3300090: Building03_Wall_WideWindow__18_ + 3300092: Building03_Wall_WideWindow__19_ + 3300094: Building03_Wall_WideWindow__1_ + 3300096: Building03_Wall_WideWindow__20_ + 3300098: Building03_Wall_WideWindow__21_ + 3300100: Building03_Wall_WideWindow__22_ + 3300102: Building03_Wall_WideWindow__23_ + 3300104: Building03_Wall_WideWindow__24_ + 3300106: Building03_Wall_WideWindow__25_ + 3300108: Building03_Wall_WideWindow__2_ + 3300110: Building03_Wall_WideWindow__3_ + 3300112: Building03_Wall_WideWindow__4_ + 3300114: Building03_Wall_WideWindow__5_ + 3300116: Building03_Wall_WideWindow__6_ + 3300118: Building03_Wall_WideWindow__7_ + 3300120: Building03_Wall_WideWindow__8_ + 3300122: Building03_Wall_WideWindow__9_ + 3300124: RoofCentral + 3300126: RoofCentral__10_ + 3300128: RoofCentral__11_ + 3300130: RoofCentral__1_ + 3300132: RoofCentral__2_ + 3300134: RoofCentral__3_ + 3300136: RoofCentral__4_ + 3300138: RoofCentral__5_ + 3300140: RoofCentral__6_ + 3300142: RoofCentral__7_ + 3300144: RoofCentral__8_ + 3300146: RoofCentral__9_ + 3300148: RoofCorner + 3300150: RoofCorner__1_ + 3300152: RoofCorner__2_ + 3300154: RoofCorner__3_ + 3300156: RoofCorner__4_ + 3300158: RoofCorner__5_ + 3300160: RoofCorner__6_ + 3300162: RoofCorner__7_ + 3300164: RoofWalls + 3300166: RoofWalls__10_ + 3300168: RoofWalls__11_ + 3300170: RoofWalls__12_ + 3300172: RoofWalls__13_ + 3300174: RoofWalls__14_ + 3300176: RoofWalls__15_ + 3300178: RoofWalls__16_ + 3300180: RoofWalls__17_ + 3300182: RoofWalls__18_ + 3300184: RoofWalls__19_ + 3300186: RoofWalls__1_ + 3300188: RoofWalls__20_ + 3300190: RoofWalls__21_ + 3300192: RoofWalls__22_ + 3300194: RoofWalls__23_ + 3300196: RoofWalls__24_ + 3300198: RoofWalls__25_ + 3300200: RoofWalls__26_ + 3300202: RoofWalls__27_ + 3300204: RoofWalls__28_ + 3300206: RoofWalls__29_ + 3300208: RoofWalls__2_ + 3300210: RoofWalls__30_ + 3300212: RoofWalls__31_ + 3300214: RoofWalls__32_ + 3300216: RoofWalls__33_ + 3300218: RoofWalls__3_ + 3300220: RoofWalls__4_ + 3300222: RoofWalls__5_ + 3300224: RoofWalls__6_ + 3300226: RoofWalls__7_ + 3300228: RoofWalls__8_ + 3300230: RoofWalls__9_ + 3300232: BuildingShortVariant_Combined + 4300000: Building01_Corner_Plain + 4300002: Building01_Wall_Door + 4300004: Building01_Wall_Plain + 4300006: Building03_Corner_WideWindow + 4300008: Building03_Wall_WideWindow + 4300010: Building01_Wall_Plain__1_ + 4300012: Building01_Corner_Plain__1_ + 4300014: Building01_Wall_Plain__2_ + 4300016: Building01_Wall_Plain__3_ + 4300018: Building01_Corner_Plain__2_ + 4300020: Building01_Wall_Plain__4_ + 4300022: Building01_Wall_Plain__5_ + 4300024: Building01_Corner_Plain__3_ + 4300026: Building01_Wall_Plain__6_ + 4300028: Building01_Wall_Plain__7_ + 4300030: Building01_Wall_Plain__8_ + 4300032: RoofCentral + 4300034: RoofCorner + 4300036: RoofWalls + 4300038: Building03_Wall_WideWindow__1_ + 4300040: Building03_Wall_WideWindow__2_ + 4300042: Building03_Corner_WideWindow__1_ + 4300044: Building03_Wall_WideWindow__3_ + 4300046: Building03_Wall_WideWindow__4_ + 4300048: Building03_Corner_WideWindow__2_ + 4300050: Building03_Wall_WideWindow__5_ + 4300052: Building03_Wall_WideWindow__6_ + 4300054: Building03_Wall_WideWindow__7_ + 4300056: Building03_Corner_WideWindow__3_ + 4300058: Building03_Wall_WideWindow__8_ + 4300060: Building03_Wall_WideWindow__9_ + 4300062: RoofWalls__1_ + 4300064: RoofCorner__1_ + 4300066: RoofWalls__2_ + 4300068: RoofWalls__3_ + 4300070: RoofWalls__4_ + 4300072: RoofCorner__2_ + 4300074: RoofCorner__3_ + 4300076: RoofWalls__5_ + 4300078: RoofWalls__6_ + 4300080: RoofWalls__7_ + 4300082: RoofWalls__8_ + 4300084: RoofWalls__9_ + 4300086: RoofCentral__1_ + 4300088: RoofCentral__2_ + 4300090: RoofCentral__3_ + 4300092: RoofCentral__4_ + 4300094: RoofCentral__5_ + 4300096: Building03_Wall_WideWindow__10_ + 4300098: Building03_Wall_WideWindow__11_ + 4300100: Building03_Wall_WideWindow__20_ + 4300102: Building03_Wall_WideWindow__22_ + 4300104: Building03_Wall_WideWindow__23_ + 4300106: RoofWalls__20_ + 4300108: RoofWalls__21_ + 4300110: RoofWalls__22_ + 4300112: RoofWalls__23_ + 4300114: RoofWalls__24_ + 4300116: RoofWalls__25_ + 4300118: RoofWalls__26_ + 4300120: RoofWalls__27_ + 4300122: RoofWalls__28_ + 4300124: RoofWalls__29_ + 4300126: Building03_Wall_WideWindow__24_ + 4300128: Building03_Wall_WideWindow__25_ + 4300130: RoofWalls__30_ + 4300132: RoofWalls__31_ + 4300134: RoofWalls__32_ + 4300136: RoofWalls__33_ + 4300138: Building01_Corner_Plain__4_ + 4300140: Building01_Wall_Door__1_ + 4300142: Building01_Wall_Plain__9_ + 4300144: Building03_Corner_WideWindow__4_ + 4300146: Building03_Wall_WideWindow__12_ + 4300148: Building01_Wall_Plain__10_ + 4300150: Building01_Corner_Plain__5_ + 4300152: Building01_Wall_Plain__11_ + 4300154: Building01_Wall_Plain__12_ + 4300156: Building01_Corner_Plain__6_ + 4300158: Building01_Wall_Plain__13_ + 4300160: Building01_Wall_Plain__14_ + 4300162: Building01_Corner_Plain__7_ + 4300164: Building01_Wall_Plain__15_ + 4300166: Building01_Wall_Plain__16_ + 4300168: Building01_Wall_Plain__17_ + 4300170: RoofCentral__6_ + 4300172: RoofCorner__4_ + 4300174: RoofWalls__10_ + 4300176: Building03_Wall_WideWindow__13_ + 4300178: Building03_Wall_WideWindow__14_ + 4300180: Building03_Corner_WideWindow__5_ + 4300182: Building03_Wall_WideWindow__15_ + 4300184: Building03_Corner_WideWindow__6_ + 4300186: Building03_Wall_WideWindow__16_ + 4300188: Building03_Wall_WideWindow__17_ + 4300190: Building03_Wall_WideWindow__18_ + 4300192: Building03_Corner_WideWindow__7_ + 4300194: Building03_Wall_WideWindow__19_ + 4300196: Building03_Wall_WideWindow__21_ + 4300198: RoofWalls__11_ + 4300200: RoofCorner__5_ + 4300202: RoofWalls__12_ + 4300204: RoofWalls__13_ + 4300206: RoofWalls__14_ + 4300208: RoofCorner__6_ + 4300210: RoofCorner__7_ + 4300212: RoofWalls__15_ + 4300214: RoofWalls__16_ + 4300216: RoofWalls__17_ + 4300218: RoofWalls__18_ + 4300220: RoofWalls__19_ + 4300222: RoofCentral__7_ + 4300224: RoofCentral__8_ + 4300226: RoofCentral__9_ + 4300228: RoofCentral__10_ + 4300230: RoofCentral__11_ + 4300232: BuildingShortVariant_Combined + externalObjects: {} + materials: + importMaterials: 1 + materialName: 0 + materialSearch: 1 + materialLocation: 1 + animations: + legacyGenerateAnimations: 4 + bakeSimulation: 0 + resampleCurves: 1 + optimizeGameObjects: 0 + motionNodeName: + rigImportErrors: + rigImportWarnings: + animationImportErrors: + animationImportWarnings: + animationRetargetingWarnings: + animationDoRetargetingWarnings: 0 + importAnimatedCustomProperties: 0 + importConstraints: 0 + animationCompression: 1 + animationRotationError: 0.5 + animationPositionError: 0.5 + animationScaleError: 0.5 + animationWrapMode: 0 + extraExposedTransformPaths: [] + extraUserProperties: [] + clipAnimations: [] + isReadable: 1 + meshes: + lODScreenPercentages: [] + globalScale: 1 + meshCompression: 0 + addColliders: 0 + useSRGBMaterialColor: 1 + importVisibility: 1 + importBlendShapes: 1 + importCameras: 1 + importLights: 1 + swapUVChannels: 0 + generateSecondaryUV: 0 + useFileUnits: 1 + optimizeMeshForGPU: 1 + keepQuads: 0 + weldVertices: 1 + preserveHierarchy: 0 + indexFormat: 0 + secondaryUVAngleDistortion: 8 + secondaryUVAreaDistortion: 15.000001 + secondaryUVHardAngle: 88 + secondaryUVPackMargin: 4 + useFileScale: 1 + previousCalculatedGlobalScale: 1 + hasPreviousCalculatedGlobalScale: 0 + tangentSpace: + normalSmoothAngle: 60 + normalImportMode: 1 + tangentImportMode: 3 + normalCalculationMode: 4 + legacyComputeAllNormalsFromSmoothingGroupsWhenMeshHasBlendShapes: 0 + blendShapeNormalImportMode: 1 + normalSmoothingSource: 0 + importAnimation: 1 + copyAvatar: 0 + humanDescription: + serializedVersion: 2 + human: [] + skeleton: [] + armTwist: 0.5 + foreArmTwist: 0.5 + upperLegTwist: 0.5 + legTwist: 0.5 + armStretch: 0.05 + legStretch: 0.05 + feetSpacing: 0 + rootMotionBoneName: + hasTranslationDoF: 0 + hasExtraRoot: 0 + skeletonHasParents: 1 + lastHumanDescriptionAvatarSource: {instanceID: 0} + animationType: 0 + humanoidOversampling: 1 + additionalBone: 0 + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Models/BuildingTallModel.fbx" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Models/BuildingTallModel.fbx" new file mode 100644 index 00000000..47cb5e82 Binary files /dev/null and "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Models/BuildingTallModel.fbx" differ diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Models/BuildingTallModel.fbx.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Models/BuildingTallModel.fbx.meta" new file mode 100644 index 00000000..1db965bd --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Models/BuildingTallModel.fbx.meta" @@ -0,0 +1,756 @@ +fileFormatVersion: 2 +guid: adb35abc445884745af48dba2016ddea +ModelImporter: + serializedVersion: 23 + fileIDToRecycleName: + 100000: AirConditioner + 100002: Building01_Corner_Plain + 100004: Building01_Corner_Plain__1_ + 100006: Building01_Corner_Plain__2_ + 100008: Building01_Corner_Plain__3_ + 100010: Building01_Wall_Door + 100012: Building01_Wall_Door__1_ + 100014: Building01_Wall_Plain + 100016: Building01_Wall_Plain__10_ + 100018: Building01_Wall_Plain__11_ + 100020: Building01_Wall_Plain__1_ + 100022: Building01_Wall_Plain__2_ + 100024: Building01_Wall_Plain__3_ + 100026: Building01_Wall_Plain__4_ + 100028: Building01_Wall_Plain__5_ + 100030: Building01_Wall_Plain__6_ + 100032: Building01_Wall_Plain__7_ + 100034: Building01_Wall_Plain__8_ + 100036: Building01_Wall_Plain__9_ + 100038: Building02_Corner_Bricks + 100040: Building02_Corner_Bricks__1_ + 100042: Building02_Corner_Bricks__2_ + 100044: Building02_Wall_Bricks + 100046: Building02_Wall_Bricks__10_ + 100048: Building02_Wall_Bricks__11_ + 100050: Building02_Wall_Bricks__12_ + 100052: Building02_Wall_Bricks__13_ + 100054: Building02_Wall_Bricks__2_ + 100056: Building02_Wall_Bricks__3_ + 100058: Building02_Wall_Bricks__4_ + 100060: Building02_Wall_Bricks__5_ + 100062: Building02_Wall_Bricks__6_ + 100064: Building02_Wall_Bricks__7_ + 100066: Building02_Wall_Bricks__8_ + 100068: Building02_Wall_Bricks__9_ + 100070: Building03_Corner_WideWindow + 100072: Building03_Corner_WideWindow__1_ + 100074: Building03_Corner_WideWindow__3_ + 100076: Building03_Wall_WideWindow + 100078: Building03_Wall_WideWindow__1_ + 100080: Building03_Wall_WideWindow__2_ + 100082: Building03_Wall_WideWindow__3_ + 100084: Building03_Wall_WideWindow__5_ + 100086: Building03_Wall_WideWindow__8_ + 100088: Building04_Corner_BarWindow + 100090: Building04_Corner_BarWindow__10_ + 100092: Building04_Corner_BarWindow__11_ + 100094: Building04_Corner_BarWindow__12_ + 100096: Building04_Corner_BarWindow__13_ + 100098: Building04_Corner_BarWindow__1_ + 100100: Building04_Corner_BarWindow__2_ + 100102: Building04_Corner_BarWindow__3_ + 100104: Building04_Corner_BarWindow__4_ + 100106: Building04_Corner_BarWindow__5_ + 100108: Building04_Corner_BarWindow__6_ + 100110: Building04_Corner_BarWindow__7_ + 100112: Building04_Corner_BarWindow__8_ + 100114: Building04_Corner_BarWindow__9_ + 100116: Building04_Wall_BarWindow + 100118: Building04_Wall_BarWindow__10_ + 100120: Building04_Wall_BarWindow__11_ + 100122: Building04_Wall_BarWindow__12_ + 100124: Building04_Wall_BarWindow__13_ + 100126: Building04_Wall_BarWindow__14_ + 100128: Building04_Wall_BarWindow__15_ + 100130: Building04_Wall_BarWindow__16_ + 100132: Building04_Wall_BarWindow__17_ + 100134: Building04_Wall_BarWindow__18_ + 100136: Building04_Wall_BarWindow__19_ + 100138: Building04_Wall_BarWindow__1_ + 100140: Building04_Wall_BarWindow__20_ + 100142: Building04_Wall_BarWindow__21_ + 100144: Building04_Wall_BarWindow__22_ + 100146: Building04_Wall_BarWindow__23_ + 100148: Building04_Wall_BarWindow__24_ + 100150: Building04_Wall_BarWindow__25_ + 100152: Building04_Wall_BarWindow__26_ + 100154: Building04_Wall_BarWindow__27_ + 100156: Building04_Wall_BarWindow__28_ + 100158: Building04_Wall_BarWindow__29_ + 100160: Building04_Wall_BarWindow__2_ + 100162: Building04_Wall_BarWindow__30_ + 100164: Building04_Wall_BarWindow__3_ + 100166: Building04_Wall_BarWindow__4_ + 100168: Building04_Wall_BarWindow__5_ + 100170: Building04_Wall_BarWindow__6_ + 100172: Building04_Wall_BarWindow__7_ + 100174: Building04_Wall_BarWindow__8_ + 100176: Building04_Wall_BarWindow__9_ + 100178: //RootNode + 100180: Pipe + 100182: RoofCentral__10_ + 100184: RoofCentral__11_ + 100186: RoofCentral__12_ + 100188: RoofCentral__13_ + 100190: RoofCentral__14_ + 100192: RoofCentral__15_ + 100194: RoofCentral__16_ + 100196: RoofCentral__17_ + 100198: RoofCentral__6_ + 100200: RoofCentral__7_ + 100202: RoofCentral__8_ + 100204: RoofCentral__9_ + 100206: RoofCorner__10_ + 100208: RoofCorner__4_ + 100210: RoofCorner__5_ + 100212: RoofCorner__6_ + 100214: RoofCorner__7_ + 100216: RoofCorner__8_ + 100218: RoofCorner__9_ + 100220: RoofDoor + 100222: RoofWalls__10_ + 100224: RoofWalls__11_ + 100226: RoofWalls__12_ + 100228: RoofWalls__13_ + 100230: RoofWalls__14_ + 100232: RoofWalls__15_ + 100234: RoofWalls__16_ + 100236: RoofWalls__17_ + 100238: RoofWalls__18_ + 100240: RoofWalls__19_ + 100242: RoofWalls__20_ + 100244: RoofWalls__21_ + 100246: RoofWalls__22_ + 100248: RoofWalls__23_ + 100250: RoofWalls__24_ + 100252: RoofWalls__25_ + 100254: RoofWalls__26_ + 100256: RoofWalls__27_ + 100258: RoofWalls__28_ + 100260: BuildingTall + 100262: BuildingTall_Combined + 100264: BuildingThin_Combined + 400000: AirConditioner + 400002: Building01_Corner_Plain + 400004: Building01_Corner_Plain__1_ + 400006: Building01_Corner_Plain__2_ + 400008: Building01_Corner_Plain__3_ + 400010: Building01_Wall_Door + 400012: Building01_Wall_Door__1_ + 400014: Building01_Wall_Plain + 400016: Building01_Wall_Plain__10_ + 400018: Building01_Wall_Plain__11_ + 400020: Building01_Wall_Plain__1_ + 400022: Building01_Wall_Plain__2_ + 400024: Building01_Wall_Plain__3_ + 400026: Building01_Wall_Plain__4_ + 400028: Building01_Wall_Plain__5_ + 400030: Building01_Wall_Plain__6_ + 400032: Building01_Wall_Plain__7_ + 400034: Building01_Wall_Plain__8_ + 400036: Building01_Wall_Plain__9_ + 400038: Building02_Corner_Bricks + 400040: Building02_Corner_Bricks__1_ + 400042: Building02_Corner_Bricks__2_ + 400044: Building02_Wall_Bricks + 400046: Building02_Wall_Bricks__10_ + 400048: Building02_Wall_Bricks__11_ + 400050: Building02_Wall_Bricks__12_ + 400052: Building02_Wall_Bricks__13_ + 400054: Building02_Wall_Bricks__2_ + 400056: Building02_Wall_Bricks__3_ + 400058: Building02_Wall_Bricks__4_ + 400060: Building02_Wall_Bricks__5_ + 400062: Building02_Wall_Bricks__6_ + 400064: Building02_Wall_Bricks__7_ + 400066: Building02_Wall_Bricks__8_ + 400068: Building02_Wall_Bricks__9_ + 400070: Building03_Corner_WideWindow + 400072: Building03_Corner_WideWindow__1_ + 400074: Building03_Corner_WideWindow__3_ + 400076: Building03_Wall_WideWindow + 400078: Building03_Wall_WideWindow__1_ + 400080: Building03_Wall_WideWindow__2_ + 400082: Building03_Wall_WideWindow__3_ + 400084: Building03_Wall_WideWindow__5_ + 400086: Building03_Wall_WideWindow__8_ + 400088: Building04_Corner_BarWindow + 400090: Building04_Corner_BarWindow__10_ + 400092: Building04_Corner_BarWindow__11_ + 400094: Building04_Corner_BarWindow__12_ + 400096: Building04_Corner_BarWindow__13_ + 400098: Building04_Corner_BarWindow__1_ + 400100: Building04_Corner_BarWindow__2_ + 400102: Building04_Corner_BarWindow__3_ + 400104: Building04_Corner_BarWindow__4_ + 400106: Building04_Corner_BarWindow__5_ + 400108: Building04_Corner_BarWindow__6_ + 400110: Building04_Corner_BarWindow__7_ + 400112: Building04_Corner_BarWindow__8_ + 400114: Building04_Corner_BarWindow__9_ + 400116: Building04_Wall_BarWindow + 400118: Building04_Wall_BarWindow__10_ + 400120: Building04_Wall_BarWindow__11_ + 400122: Building04_Wall_BarWindow__12_ + 400124: Building04_Wall_BarWindow__13_ + 400126: Building04_Wall_BarWindow__14_ + 400128: Building04_Wall_BarWindow__15_ + 400130: Building04_Wall_BarWindow__16_ + 400132: Building04_Wall_BarWindow__17_ + 400134: Building04_Wall_BarWindow__18_ + 400136: Building04_Wall_BarWindow__19_ + 400138: Building04_Wall_BarWindow__1_ + 400140: Building04_Wall_BarWindow__20_ + 400142: Building04_Wall_BarWindow__21_ + 400144: Building04_Wall_BarWindow__22_ + 400146: Building04_Wall_BarWindow__23_ + 400148: Building04_Wall_BarWindow__24_ + 400150: Building04_Wall_BarWindow__25_ + 400152: Building04_Wall_BarWindow__26_ + 400154: Building04_Wall_BarWindow__27_ + 400156: Building04_Wall_BarWindow__28_ + 400158: Building04_Wall_BarWindow__29_ + 400160: Building04_Wall_BarWindow__2_ + 400162: Building04_Wall_BarWindow__30_ + 400164: Building04_Wall_BarWindow__3_ + 400166: Building04_Wall_BarWindow__4_ + 400168: Building04_Wall_BarWindow__5_ + 400170: Building04_Wall_BarWindow__6_ + 400172: Building04_Wall_BarWindow__7_ + 400174: Building04_Wall_BarWindow__8_ + 400176: Building04_Wall_BarWindow__9_ + 400178: //RootNode + 400180: Pipe + 400182: RoofCentral__10_ + 400184: RoofCentral__11_ + 400186: RoofCentral__12_ + 400188: RoofCentral__13_ + 400190: RoofCentral__14_ + 400192: RoofCentral__15_ + 400194: RoofCentral__16_ + 400196: RoofCentral__17_ + 400198: RoofCentral__6_ + 400200: RoofCentral__7_ + 400202: RoofCentral__8_ + 400204: RoofCentral__9_ + 400206: RoofCorner__10_ + 400208: RoofCorner__4_ + 400210: RoofCorner__5_ + 400212: RoofCorner__6_ + 400214: RoofCorner__7_ + 400216: RoofCorner__8_ + 400218: RoofCorner__9_ + 400220: RoofDoor + 400222: RoofWalls__10_ + 400224: RoofWalls__11_ + 400226: RoofWalls__12_ + 400228: RoofWalls__13_ + 400230: RoofWalls__14_ + 400232: RoofWalls__15_ + 400234: RoofWalls__16_ + 400236: RoofWalls__17_ + 400238: RoofWalls__18_ + 400240: RoofWalls__19_ + 400242: RoofWalls__20_ + 400244: RoofWalls__21_ + 400246: RoofWalls__22_ + 400248: RoofWalls__23_ + 400250: RoofWalls__24_ + 400252: RoofWalls__25_ + 400254: RoofWalls__26_ + 400256: RoofWalls__27_ + 400258: RoofWalls__28_ + 400260: BuildingTall + 400262: BuildingTall_Combined + 400264: BuildingThin_Combined + 2100000: TemplateEnvironment + 2100002: TemplateEnvironment.002 + 2300000: AirConditioner + 2300002: Building01_Corner_Plain + 2300004: Building01_Corner_Plain__1_ + 2300006: Building01_Corner_Plain__2_ + 2300008: Building01_Corner_Plain__3_ + 2300010: Building01_Wall_Door + 2300012: Building01_Wall_Door__1_ + 2300014: Building01_Wall_Plain + 2300016: Building01_Wall_Plain__10_ + 2300018: Building01_Wall_Plain__11_ + 2300020: Building01_Wall_Plain__1_ + 2300022: Building01_Wall_Plain__2_ + 2300024: Building01_Wall_Plain__3_ + 2300026: Building01_Wall_Plain__4_ + 2300028: Building01_Wall_Plain__5_ + 2300030: Building01_Wall_Plain__6_ + 2300032: Building01_Wall_Plain__7_ + 2300034: Building01_Wall_Plain__8_ + 2300036: Building01_Wall_Plain__9_ + 2300038: Building02_Corner_Bricks + 2300040: Building02_Corner_Bricks__1_ + 2300042: Building02_Corner_Bricks__2_ + 2300044: Building02_Wall_Bricks + 2300046: Building02_Wall_Bricks__10_ + 2300048: Building02_Wall_Bricks__11_ + 2300050: Building02_Wall_Bricks__12_ + 2300052: Building02_Wall_Bricks__13_ + 2300054: Building02_Wall_Bricks__2_ + 2300056: Building02_Wall_Bricks__3_ + 2300058: Building02_Wall_Bricks__4_ + 2300060: Building02_Wall_Bricks__5_ + 2300062: Building02_Wall_Bricks__6_ + 2300064: Building02_Wall_Bricks__7_ + 2300066: Building02_Wall_Bricks__8_ + 2300068: Building02_Wall_Bricks__9_ + 2300070: Building03_Corner_WideWindow + 2300072: Building03_Corner_WideWindow__1_ + 2300074: Building03_Corner_WideWindow__3_ + 2300076: Building03_Wall_WideWindow + 2300078: Building03_Wall_WideWindow__1_ + 2300080: Building03_Wall_WideWindow__2_ + 2300082: Building03_Wall_WideWindow__3_ + 2300084: Building03_Wall_WideWindow__5_ + 2300086: Building03_Wall_WideWindow__8_ + 2300088: Building04_Corner_BarWindow + 2300090: Building04_Corner_BarWindow__10_ + 2300092: Building04_Corner_BarWindow__11_ + 2300094: Building04_Corner_BarWindow__12_ + 2300096: Building04_Corner_BarWindow__13_ + 2300098: Building04_Corner_BarWindow__1_ + 2300100: Building04_Corner_BarWindow__2_ + 2300102: Building04_Corner_BarWindow__3_ + 2300104: Building04_Corner_BarWindow__4_ + 2300106: Building04_Corner_BarWindow__5_ + 2300108: Building04_Corner_BarWindow__6_ + 2300110: Building04_Corner_BarWindow__7_ + 2300112: Building04_Corner_BarWindow__8_ + 2300114: Building04_Corner_BarWindow__9_ + 2300116: Building04_Wall_BarWindow + 2300118: Building04_Wall_BarWindow__10_ + 2300120: Building04_Wall_BarWindow__11_ + 2300122: Building04_Wall_BarWindow__12_ + 2300124: Building04_Wall_BarWindow__13_ + 2300126: Building04_Wall_BarWindow__14_ + 2300128: Building04_Wall_BarWindow__15_ + 2300130: Building04_Wall_BarWindow__16_ + 2300132: Building04_Wall_BarWindow__17_ + 2300134: Building04_Wall_BarWindow__18_ + 2300136: Building04_Wall_BarWindow__19_ + 2300138: Building04_Wall_BarWindow__1_ + 2300140: Building04_Wall_BarWindow__20_ + 2300142: Building04_Wall_BarWindow__21_ + 2300144: Building04_Wall_BarWindow__22_ + 2300146: Building04_Wall_BarWindow__23_ + 2300148: Building04_Wall_BarWindow__24_ + 2300150: Building04_Wall_BarWindow__25_ + 2300152: Building04_Wall_BarWindow__26_ + 2300154: Building04_Wall_BarWindow__27_ + 2300156: Building04_Wall_BarWindow__28_ + 2300158: Building04_Wall_BarWindow__29_ + 2300160: Building04_Wall_BarWindow__2_ + 2300162: Building04_Wall_BarWindow__30_ + 2300164: Building04_Wall_BarWindow__3_ + 2300166: Building04_Wall_BarWindow__4_ + 2300168: Building04_Wall_BarWindow__5_ + 2300170: Building04_Wall_BarWindow__6_ + 2300172: Building04_Wall_BarWindow__7_ + 2300174: Building04_Wall_BarWindow__8_ + 2300176: Building04_Wall_BarWindow__9_ + 2300178: Pipe + 2300180: RoofCentral__10_ + 2300182: RoofCentral__11_ + 2300184: RoofCentral__12_ + 2300186: RoofCentral__13_ + 2300188: RoofCentral__14_ + 2300190: RoofCentral__15_ + 2300192: RoofCentral__16_ + 2300194: RoofCentral__17_ + 2300196: RoofCentral__6_ + 2300198: RoofCentral__7_ + 2300200: RoofCentral__8_ + 2300202: RoofCentral__9_ + 2300204: RoofCorner__10_ + 2300206: RoofCorner__4_ + 2300208: RoofCorner__5_ + 2300210: RoofCorner__6_ + 2300212: RoofCorner__7_ + 2300214: RoofCorner__8_ + 2300216: RoofCorner__9_ + 2300218: RoofDoor + 2300220: RoofWalls__10_ + 2300222: RoofWalls__11_ + 2300224: RoofWalls__12_ + 2300226: RoofWalls__13_ + 2300228: RoofWalls__14_ + 2300230: RoofWalls__15_ + 2300232: RoofWalls__16_ + 2300234: RoofWalls__17_ + 2300236: RoofWalls__18_ + 2300238: RoofWalls__19_ + 2300240: RoofWalls__20_ + 2300242: RoofWalls__21_ + 2300244: RoofWalls__22_ + 2300246: RoofWalls__23_ + 2300248: RoofWalls__24_ + 2300250: RoofWalls__25_ + 2300252: RoofWalls__26_ + 2300254: RoofWalls__27_ + 2300256: RoofWalls__28_ + 2300258: BuildingTall + 2300260: BuildingTall_Combined + 2300262: BuildingThin_Combined + 3300000: AirConditioner + 3300002: Building01_Corner_Plain + 3300004: Building01_Corner_Plain__1_ + 3300006: Building01_Corner_Plain__2_ + 3300008: Building01_Corner_Plain__3_ + 3300010: Building01_Wall_Door + 3300012: Building01_Wall_Door__1_ + 3300014: Building01_Wall_Plain + 3300016: Building01_Wall_Plain__10_ + 3300018: Building01_Wall_Plain__11_ + 3300020: Building01_Wall_Plain__1_ + 3300022: Building01_Wall_Plain__2_ + 3300024: Building01_Wall_Plain__3_ + 3300026: Building01_Wall_Plain__4_ + 3300028: Building01_Wall_Plain__5_ + 3300030: Building01_Wall_Plain__6_ + 3300032: Building01_Wall_Plain__7_ + 3300034: Building01_Wall_Plain__8_ + 3300036: Building01_Wall_Plain__9_ + 3300038: Building02_Corner_Bricks + 3300040: Building02_Corner_Bricks__1_ + 3300042: Building02_Corner_Bricks__2_ + 3300044: Building02_Wall_Bricks + 3300046: Building02_Wall_Bricks__10_ + 3300048: Building02_Wall_Bricks__11_ + 3300050: Building02_Wall_Bricks__12_ + 3300052: Building02_Wall_Bricks__13_ + 3300054: Building02_Wall_Bricks__2_ + 3300056: Building02_Wall_Bricks__3_ + 3300058: Building02_Wall_Bricks__4_ + 3300060: Building02_Wall_Bricks__5_ + 3300062: Building02_Wall_Bricks__6_ + 3300064: Building02_Wall_Bricks__7_ + 3300066: Building02_Wall_Bricks__8_ + 3300068: Building02_Wall_Bricks__9_ + 3300070: Building03_Corner_WideWindow + 3300072: Building03_Corner_WideWindow__1_ + 3300074: Building03_Corner_WideWindow__3_ + 3300076: Building03_Wall_WideWindow + 3300078: Building03_Wall_WideWindow__1_ + 3300080: Building03_Wall_WideWindow__2_ + 3300082: Building03_Wall_WideWindow__3_ + 3300084: Building03_Wall_WideWindow__5_ + 3300086: Building03_Wall_WideWindow__8_ + 3300088: Building04_Corner_BarWindow + 3300090: Building04_Corner_BarWindow__10_ + 3300092: Building04_Corner_BarWindow__11_ + 3300094: Building04_Corner_BarWindow__12_ + 3300096: Building04_Corner_BarWindow__13_ + 3300098: Building04_Corner_BarWindow__1_ + 3300100: Building04_Corner_BarWindow__2_ + 3300102: Building04_Corner_BarWindow__3_ + 3300104: Building04_Corner_BarWindow__4_ + 3300106: Building04_Corner_BarWindow__5_ + 3300108: Building04_Corner_BarWindow__6_ + 3300110: Building04_Corner_BarWindow__7_ + 3300112: Building04_Corner_BarWindow__8_ + 3300114: Building04_Corner_BarWindow__9_ + 3300116: Building04_Wall_BarWindow + 3300118: Building04_Wall_BarWindow__10_ + 3300120: Building04_Wall_BarWindow__11_ + 3300122: Building04_Wall_BarWindow__12_ + 3300124: Building04_Wall_BarWindow__13_ + 3300126: Building04_Wall_BarWindow__14_ + 3300128: Building04_Wall_BarWindow__15_ + 3300130: Building04_Wall_BarWindow__16_ + 3300132: Building04_Wall_BarWindow__17_ + 3300134: Building04_Wall_BarWindow__18_ + 3300136: Building04_Wall_BarWindow__19_ + 3300138: Building04_Wall_BarWindow__1_ + 3300140: Building04_Wall_BarWindow__20_ + 3300142: Building04_Wall_BarWindow__21_ + 3300144: Building04_Wall_BarWindow__22_ + 3300146: Building04_Wall_BarWindow__23_ + 3300148: Building04_Wall_BarWindow__24_ + 3300150: Building04_Wall_BarWindow__25_ + 3300152: Building04_Wall_BarWindow__26_ + 3300154: Building04_Wall_BarWindow__27_ + 3300156: Building04_Wall_BarWindow__28_ + 3300158: Building04_Wall_BarWindow__29_ + 3300160: Building04_Wall_BarWindow__2_ + 3300162: Building04_Wall_BarWindow__30_ + 3300164: Building04_Wall_BarWindow__3_ + 3300166: Building04_Wall_BarWindow__4_ + 3300168: Building04_Wall_BarWindow__5_ + 3300170: Building04_Wall_BarWindow__6_ + 3300172: Building04_Wall_BarWindow__7_ + 3300174: Building04_Wall_BarWindow__8_ + 3300176: Building04_Wall_BarWindow__9_ + 3300178: Pipe + 3300180: RoofCentral__10_ + 3300182: RoofCentral__11_ + 3300184: RoofCentral__12_ + 3300186: RoofCentral__13_ + 3300188: RoofCentral__14_ + 3300190: RoofCentral__15_ + 3300192: RoofCentral__16_ + 3300194: RoofCentral__17_ + 3300196: RoofCentral__6_ + 3300198: RoofCentral__7_ + 3300200: RoofCentral__8_ + 3300202: RoofCentral__9_ + 3300204: RoofCorner__10_ + 3300206: RoofCorner__4_ + 3300208: RoofCorner__5_ + 3300210: RoofCorner__6_ + 3300212: RoofCorner__7_ + 3300214: RoofCorner__8_ + 3300216: RoofCorner__9_ + 3300218: RoofDoor + 3300220: RoofWalls__10_ + 3300222: RoofWalls__11_ + 3300224: RoofWalls__12_ + 3300226: RoofWalls__13_ + 3300228: RoofWalls__14_ + 3300230: RoofWalls__15_ + 3300232: RoofWalls__16_ + 3300234: RoofWalls__17_ + 3300236: RoofWalls__18_ + 3300238: RoofWalls__19_ + 3300240: RoofWalls__20_ + 3300242: RoofWalls__21_ + 3300244: RoofWalls__22_ + 3300246: RoofWalls__23_ + 3300248: RoofWalls__24_ + 3300250: RoofWalls__25_ + 3300252: RoofWalls__26_ + 3300254: RoofWalls__27_ + 3300256: RoofWalls__28_ + 3300258: BuildingTall + 3300260: BuildingTall_Combined + 3300262: BuildingThin_Combined + 4300000: Building01_Corner_Plain + 4300002: Building01_Wall_Door + 4300004: Building01_Wall_Plain + 4300006: Building02_Corner_Bricks + 4300008: Building02_Wall_Bricks + 4300010: Building03_Corner_WideWindow + 4300012: Building03_Wall_WideWindow + 4300014: Building04_Corner_BarWindow + 4300016: Building04_Wall_BarWindow + 4300018: Building01_Wall_Plain__1_ + 4300020: Building01_Corner_Plain__1_ + 4300022: Building01_Wall_Plain__2_ + 4300024: Building01_Wall_Plain__3_ + 4300026: Building01_Corner_Plain__2_ + 4300028: Building01_Wall_Plain__4_ + 4300030: Building01_Wall_Plain__5_ + 4300032: Building01_Corner_Plain__3_ + 4300034: Building01_Wall_Plain__6_ + 4300036: Building01_Wall_Plain__7_ + 4300038: Building01_Wall_Plain__8_ + 4300040: RoofDoor + 4300042: Building03_Wall_WideWindow__1_ + 4300044: Building03_Wall_WideWindow__2_ + 4300046: Building03_Corner_WideWindow__1_ + 4300048: Building03_Wall_WideWindow__3_ + 4300050: Building03_Wall_WideWindow__5_ + 4300052: Building03_Corner_WideWindow__3_ + 4300054: Building03_Wall_WideWindow__8_ + 4300056: Building02_Wall_Bricks__2_ + 4300058: Building02_Wall_Bricks__3_ + 4300060: Building04_Wall_BarWindow__1_ + 4300062: Building04_Wall_BarWindow__2_ + 4300064: Building04_Corner_BarWindow__1_ + 4300066: Building04_Wall_BarWindow__3_ + 4300068: Building04_Wall_BarWindow__4_ + 4300070: Building04_Wall_BarWindow__5_ + 4300072: Building04_Corner_BarWindow__2_ + 4300074: Building04_Wall_BarWindow__6_ + 4300076: Building04_Corner_BarWindow__3_ + 4300078: Building04_Wall_BarWindow__8_ + 4300080: Building04_Corner_BarWindow__4_ + 4300082: Building04_Wall_BarWindow__10_ + 4300084: Building04_Wall_BarWindow__11_ + 4300086: Building04_Wall_BarWindow__12_ + 4300088: Building04_Corner_BarWindow__5_ + 4300090: Building04_Wall_BarWindow__13_ + 4300092: Building04_Wall_BarWindow__14_ + 4300094: Building04_Wall_BarWindow__15_ + 4300096: Building04_Corner_BarWindow__6_ + 4300098: Building04_Wall_BarWindow__16_ + 4300100: Building04_Corner_BarWindow__7_ + 4300102: Building04_Wall_BarWindow__17_ + 4300104: Building04_Wall_BarWindow__18_ + 4300106: Building04_Wall_BarWindow__19_ + 4300108: RoofCentral__6_ + 4300110: RoofCorner__4_ + 4300112: RoofWalls__10_ + 4300114: RoofWalls__11_ + 4300116: RoofCorner__5_ + 4300118: RoofWalls__12_ + 4300120: RoofWalls__13_ + 4300122: RoofWalls__14_ + 4300124: RoofCorner__6_ + 4300126: RoofCorner__7_ + 4300128: RoofWalls__15_ + 4300130: RoofWalls__16_ + 4300132: RoofWalls__17_ + 4300134: RoofWalls__18_ + 4300136: RoofWalls__19_ + 4300138: RoofCentral__7_ + 4300140: RoofCentral__8_ + 4300142: RoofCentral__9_ + 4300144: RoofCentral__10_ + 4300146: RoofCentral__11_ + 4300148: Building01_Wall_Door__1_ + 4300150: Building01_Wall_Plain__9_ + 4300152: Building01_Wall_Plain__10_ + 4300154: Building01_Wall_Plain__11_ + 4300156: RoofWalls__20_ + 4300158: RoofCorner__8_ + 4300160: RoofCorner__9_ + 4300162: RoofWalls__21_ + 4300164: RoofWalls__22_ + 4300166: RoofWalls__23_ + 4300168: RoofCentral__12_ + 4300170: RoofCentral__13_ + 4300172: RoofWalls__24_ + 4300174: RoofCentral__14_ + 4300176: RoofWalls__25_ + 4300178: RoofCentral__15_ + 4300180: RoofWalls__26_ + 4300182: RoofCentral__16_ + 4300184: RoofWalls__27_ + 4300186: RoofCentral__17_ + 4300188: RoofCorner__10_ + 4300190: RoofWalls__28_ + 4300192: Building02_Wall_Bricks__4_ + 4300194: Building02_Wall_Bricks__5_ + 4300196: Building02_Wall_Bricks__6_ + 4300198: Building02_Wall_Bricks__8_ + 4300200: Building02_Wall_Bricks__9_ + 4300202: Building02_Wall_Bricks__10_ + 4300204: Building02_Corner_Bricks__1_ + 4300206: Building02_Corner_Bricks__2_ + 4300208: Building02_Wall_Bricks__11_ + 4300210: Building02_Wall_Bricks__12_ + 4300212: Building04_Corner_BarWindow__8_ + 4300214: Building04_Wall_BarWindow__7_ + 4300216: Building04_Wall_BarWindow__9_ + 4300218: Building04_Wall_BarWindow__20_ + 4300220: Building04_Corner_BarWindow__9_ + 4300222: Building04_Wall_BarWindow__21_ + 4300224: Building04_Wall_BarWindow__22_ + 4300226: AirConditioner + 4300228: Pipe + 4300230: Building04_Corner_BarWindow__10_ + 4300232: Building04_Wall_BarWindow__23_ + 4300234: Building04_Wall_BarWindow__24_ + 4300236: Building04_Wall_BarWindow__25_ + 4300238: Building04_Corner_BarWindow__11_ + 4300240: Building04_Wall_BarWindow__26_ + 4300242: Building04_Wall_BarWindow__27_ + 4300244: Building04_Wall_BarWindow__28_ + 4300246: Building04_Corner_BarWindow__12_ + 4300248: Building04_Wall_BarWindow__29_ + 4300250: Building04_Corner_BarWindow__13_ + 4300252: Building04_Wall_BarWindow__30_ + 4300254: Building02_Wall_Bricks__7_ + 4300256: Building02_Wall_Bricks__13_ + 4300258: BuildingTall + 4300260: BuildingTall_Combined + 4300262: BuildingThin_Combined + 2186277476908879412: ImportLogs + externalObjects: {} + materials: + importMaterials: 1 + materialName: 0 + materialSearch: 1 + materialLocation: 1 + animations: + legacyGenerateAnimations: 4 + bakeSimulation: 0 + resampleCurves: 1 + optimizeGameObjects: 0 + motionNodeName: + rigImportErrors: + rigImportWarnings: + animationImportErrors: + animationImportWarnings: + animationRetargetingWarnings: + animationDoRetargetingWarnings: 0 + importAnimatedCustomProperties: 0 + importConstraints: 0 + animationCompression: 1 + animationRotationError: 0.5 + animationPositionError: 0.5 + animationScaleError: 0.5 + animationWrapMode: 0 + extraExposedTransformPaths: [] + extraUserProperties: [] + clipAnimations: [] + isReadable: 1 + meshes: + lODScreenPercentages: [] + globalScale: 1 + meshCompression: 0 + addColliders: 0 + useSRGBMaterialColor: 1 + importVisibility: 1 + importBlendShapes: 1 + importCameras: 1 + importLights: 1 + swapUVChannels: 0 + generateSecondaryUV: 0 + useFileUnits: 1 + optimizeMeshForGPU: 1 + keepQuads: 0 + weldVertices: 1 + preserveHierarchy: 0 + indexFormat: 0 + secondaryUVAngleDistortion: 8 + secondaryUVAreaDistortion: 15.000001 + secondaryUVHardAngle: 88 + secondaryUVPackMargin: 4 + useFileScale: 1 + previousCalculatedGlobalScale: 1 + hasPreviousCalculatedGlobalScale: 0 + tangentSpace: + normalSmoothAngle: 60 + normalImportMode: 1 + tangentImportMode: 3 + normalCalculationMode: 4 + legacyComputeAllNormalsFromSmoothingGroupsWhenMeshHasBlendShapes: 0 + blendShapeNormalImportMode: 1 + normalSmoothingSource: 0 + importAnimation: 1 + copyAvatar: 0 + humanDescription: + serializedVersion: 2 + human: [] + skeleton: [] + armTwist: 0.5 + foreArmTwist: 0.5 + upperLegTwist: 0.5 + legTwist: 0.5 + armStretch: 0.05 + legStretch: 0.05 + feetSpacing: 0 + rootMotionBoneName: + hasTranslationDoF: 0 + hasExtraRoot: 0 + skeletonHasParents: 1 + lastHumanDescriptionAvatarSource: {instanceID: 0} + animationType: 0 + humanoidOversampling: 1 + additionalBone: 0 + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Models/BuildingThinModel.fbx" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Models/BuildingThinModel.fbx" new file mode 100644 index 00000000..0e6c5af1 Binary files /dev/null and "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Models/BuildingThinModel.fbx" differ diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Models/BuildingThinModel.fbx.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Models/BuildingThinModel.fbx.meta" new file mode 100644 index 00000000..6228a148 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Models/BuildingThinModel.fbx.meta" @@ -0,0 +1,99 @@ +fileFormatVersion: 2 +guid: 4d5adf1f338cc40bf8ed376a09b0ac1c +ModelImporter: + serializedVersion: 23 + fileIDToRecycleName: + 100000: //RootNode + 100002: BuildingThin_Combined + 400000: //RootNode + 400002: BuildingThin_Combined + 2100000: TemplateEnvironment.004 + 2300000: BuildingThin_Combined + 3300000: BuildingThin_Combined + 4300000: BuildingThin_Combined + externalObjects: {} + materials: + importMaterials: 1 + materialName: 0 + materialSearch: 1 + materialLocation: 1 + animations: + legacyGenerateAnimations: 4 + bakeSimulation: 0 + resampleCurves: 1 + optimizeGameObjects: 0 + motionNodeName: + rigImportErrors: + rigImportWarnings: + animationImportErrors: + animationImportWarnings: + animationRetargetingWarnings: + animationDoRetargetingWarnings: 0 + importAnimatedCustomProperties: 0 + importConstraints: 0 + animationCompression: 1 + animationRotationError: 0.5 + animationPositionError: 0.5 + animationScaleError: 0.5 + animationWrapMode: 0 + extraExposedTransformPaths: [] + extraUserProperties: [] + clipAnimations: [] + isReadable: 1 + meshes: + lODScreenPercentages: [] + globalScale: 1 + meshCompression: 0 + addColliders: 0 + useSRGBMaterialColor: 1 + importVisibility: 1 + importBlendShapes: 1 + importCameras: 1 + importLights: 1 + swapUVChannels: 0 + generateSecondaryUV: 0 + useFileUnits: 1 + optimizeMeshForGPU: 1 + keepQuads: 0 + weldVertices: 1 + preserveHierarchy: 0 + indexFormat: 0 + secondaryUVAngleDistortion: 8 + secondaryUVAreaDistortion: 15.000001 + secondaryUVHardAngle: 88 + secondaryUVPackMargin: 4 + useFileScale: 1 + previousCalculatedGlobalScale: 1 + hasPreviousCalculatedGlobalScale: 0 + tangentSpace: + normalSmoothAngle: 60 + normalImportMode: 1 + tangentImportMode: 3 + normalCalculationMode: 4 + legacyComputeAllNormalsFromSmoothingGroupsWhenMeshHasBlendShapes: 0 + blendShapeNormalImportMode: 1 + normalSmoothingSource: 0 + importAnimation: 1 + copyAvatar: 0 + humanDescription: + serializedVersion: 2 + human: [] + skeleton: [] + armTwist: 0.5 + foreArmTwist: 0.5 + upperLegTwist: 0.5 + legTwist: 0.5 + armStretch: 0.05 + legStretch: 0.05 + feetSpacing: 0 + rootMotionBoneName: + hasTranslationDoF: 0 + hasExtraRoot: 0 + skeletonHasParents: 1 + lastHumanDescriptionAvatarSource: {instanceID: 0} + animationType: 0 + humanoidOversampling: 1 + additionalBone: 0 + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Models/Cloud.FBX" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Models/Cloud.FBX" new file mode 100644 index 00000000..bc7f692d Binary files /dev/null and "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Models/Cloud.FBX" differ diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Models/Cloud.FBX.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Models/Cloud.FBX.meta" new file mode 100644 index 00000000..17096f42 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Models/Cloud.FBX.meta" @@ -0,0 +1,137 @@ +fileFormatVersion: 2 +guid: 0829d76c4806eb54b8b2f17eec10f4e6 +ModelImporter: + serializedVersion: 23 + fileIDToRecycleName: + 100000: ChamferBox001 + 100002: ChamferBox002 + 100004: ChamferBox003 + 100006: ChamferBox004 + 100008: ChamferBox005 + 100010: ChamferBox006 + 100012: //RootNode + 400000: ChamferBox001 + 400002: ChamferBox002 + 400004: ChamferBox003 + 400006: ChamferBox004 + 400008: ChamferBox005 + 400010: ChamferBox006 + 400012: //RootNode + 2100000: TreeProto + 2300000: ChamferBox001 + 2300002: ChamferBox002 + 2300004: ChamferBox003 + 2300006: ChamferBox004 + 2300008: ChamferBox005 + 2300010: ChamferBox006 + 2300012: //RootNode + 3300000: ChamferBox001 + 3300002: ChamferBox002 + 3300004: ChamferBox003 + 3300006: ChamferBox004 + 3300008: ChamferBox005 + 3300010: ChamferBox006 + 3300012: //RootNode + 4300000: ChamferBox001 + 4300002: ChamferBox002 + 4300004: ChamferBox003 + 4300006: ChamferBox004 + 4300008: ChamferBox005 + 4300010: ChamferBox006 + 4300012: Cloud + externalObjects: + - first: + type: UnityEngine:Material + assembly: UnityEngine.CoreModule + name: 01 - Default + second: {fileID: 2100000, guid: e61b3b6717f986a4aa958977af207b00, type: 2} + - first: + type: UnityEngine:Material + assembly: UnityEngine.CoreModule + name: TemplateEnvironment + second: {fileID: 2100000, guid: d11179e416c9b394c8176d36a0dcae52, type: 2} + materials: + importMaterials: 1 + materialName: 1 + materialSearch: 2 + materialLocation: 1 + animations: + legacyGenerateAnimations: 4 + bakeSimulation: 0 + resampleCurves: 1 + optimizeGameObjects: 0 + motionNodeName: + rigImportErrors: + rigImportWarnings: + animationImportErrors: + animationImportWarnings: + animationRetargetingWarnings: + animationDoRetargetingWarnings: 0 + importAnimatedCustomProperties: 0 + importConstraints: 0 + animationCompression: 1 + animationRotationError: 0.5 + animationPositionError: 0.5 + animationScaleError: 0.5 + animationWrapMode: 0 + extraExposedTransformPaths: [] + extraUserProperties: [] + clipAnimations: [] + isReadable: 1 + meshes: + lODScreenPercentages: [] + globalScale: 1 + meshCompression: 0 + addColliders: 0 + useSRGBMaterialColor: 1 + importVisibility: 1 + importBlendShapes: 1 + importCameras: 1 + importLights: 1 + swapUVChannels: 0 + generateSecondaryUV: 0 + useFileUnits: 1 + optimizeMeshForGPU: 1 + keepQuads: 0 + weldVertices: 1 + preserveHierarchy: 0 + indexFormat: 0 + secondaryUVAngleDistortion: 8 + secondaryUVAreaDistortion: 15.000001 + secondaryUVHardAngle: 88 + secondaryUVPackMargin: 4 + useFileScale: 1 + previousCalculatedGlobalScale: 1 + hasPreviousCalculatedGlobalScale: 0 + tangentSpace: + normalSmoothAngle: 60 + normalImportMode: 0 + tangentImportMode: 3 + normalCalculationMode: 4 + legacyComputeAllNormalsFromSmoothingGroupsWhenMeshHasBlendShapes: 0 + blendShapeNormalImportMode: 1 + normalSmoothingSource: 0 + importAnimation: 1 + copyAvatar: 0 + humanDescription: + serializedVersion: 2 + human: [] + skeleton: [] + armTwist: 0.5 + foreArmTwist: 0.5 + upperLegTwist: 0.5 + legTwist: 0.5 + armStretch: 0.05 + legStretch: 0.05 + feetSpacing: 0 + rootMotionBoneName: + hasTranslationDoF: 0 + hasExtraRoot: 0 + skeletonHasParents: 1 + lastHumanDescriptionAvatarSource: {instanceID: 0} + animationType: 0 + humanoidOversampling: 1 + additionalBone: 0 + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Models/GroundPlane.fbx" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Models/GroundPlane.fbx" new file mode 100644 index 00000000..9d855e24 Binary files /dev/null and "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Models/GroundPlane.fbx" differ diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Models/GroundPlane.fbx.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Models/GroundPlane.fbx.meta" new file mode 100644 index 00000000..f58baa32 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Models/GroundPlane.fbx.meta" @@ -0,0 +1,102 @@ +fileFormatVersion: 2 +guid: 21fe29e73ae4cc842b0d5e9ca6e345f9 +ModelImporter: + serializedVersion: 23 + fileIDToRecycleName: + 100000: //RootNode + 400000: //RootNode + 2100000: TemplateEnvironment + 2300000: //RootNode + 3300000: //RootNode + 4300000: GroundPlane + externalObjects: + - first: + type: UnityEngine:Material + assembly: UnityEngine.CoreModule + name: TemplateEnvironment + second: {fileID: 2100000, guid: d11179e416c9b394c8176d36a0dcae52, type: 2} + materials: + importMaterials: 1 + materialName: 1 + materialSearch: 1 + materialLocation: 1 + animations: + legacyGenerateAnimations: 4 + bakeSimulation: 0 + resampleCurves: 1 + optimizeGameObjects: 0 + motionNodeName: + rigImportErrors: + rigImportWarnings: + animationImportErrors: + animationImportWarnings: + animationRetargetingWarnings: + animationDoRetargetingWarnings: 0 + importAnimatedCustomProperties: 0 + importConstraints: 0 + animationCompression: 1 + animationRotationError: 0.5 + animationPositionError: 0.5 + animationScaleError: 0.5 + animationWrapMode: 0 + extraExposedTransformPaths: [] + extraUserProperties: [] + clipAnimations: [] + isReadable: 1 + meshes: + lODScreenPercentages: [] + globalScale: 1 + meshCompression: 0 + addColliders: 0 + useSRGBMaterialColor: 1 + importVisibility: 1 + importBlendShapes: 1 + importCameras: 1 + importLights: 1 + swapUVChannels: 0 + generateSecondaryUV: 0 + useFileUnits: 1 + optimizeMeshForGPU: 1 + keepQuads: 0 + weldVertices: 1 + preserveHierarchy: 0 + indexFormat: 0 + secondaryUVAngleDistortion: 8 + secondaryUVAreaDistortion: 15.000001 + secondaryUVHardAngle: 88 + secondaryUVPackMargin: 4 + useFileScale: 1 + previousCalculatedGlobalScale: 1 + hasPreviousCalculatedGlobalScale: 0 + tangentSpace: + normalSmoothAngle: 60 + normalImportMode: 0 + tangentImportMode: 3 + normalCalculationMode: 4 + legacyComputeAllNormalsFromSmoothingGroupsWhenMeshHasBlendShapes: 0 + blendShapeNormalImportMode: 1 + normalSmoothingSource: 0 + importAnimation: 1 + copyAvatar: 0 + humanDescription: + serializedVersion: 2 + human: [] + skeleton: [] + armTwist: 0.5 + foreArmTwist: 0.5 + upperLegTwist: 0.5 + legTwist: 0.5 + armStretch: 0.05 + legStretch: 0.05 + feetSpacing: 0 + rootMotionBoneName: + hasTranslationDoF: 0 + hasExtraRoot: 0 + skeletonHasParents: 1 + lastHumanDescriptionAvatarSource: {instanceID: 0} + animationType: 0 + humanoidOversampling: 1 + additionalBone: 0 + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Models/Hill.fbx" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Models/Hill.fbx" new file mode 100644 index 00000000..8fe56e16 Binary files /dev/null and "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Models/Hill.fbx" differ diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Models/Hill.fbx.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Models/Hill.fbx.meta" new file mode 100644 index 00000000..38b10374 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Models/Hill.fbx.meta" @@ -0,0 +1,103 @@ +fileFormatVersion: 2 +guid: 92bb9994204d1d44cb6223c53e4f84f8 +ModelImporter: + serializedVersion: 23 + fileIDToRecycleName: + 100000: //RootNode + 400000: //RootNode + 2100000: lambert1 + 2300000: //RootNode + 3300000: //RootNode + 4300000: pSphere1 + 4300002: Hill + externalObjects: + - first: + type: UnityEngine:Material + assembly: UnityEngine.CoreModule + name: lambert1 + second: {fileID: 2100000, guid: d11179e416c9b394c8176d36a0dcae52, type: 2} + materials: + importMaterials: 1 + materialName: 0 + materialSearch: 1 + materialLocation: 1 + animations: + legacyGenerateAnimations: 4 + bakeSimulation: 0 + resampleCurves: 1 + optimizeGameObjects: 0 + motionNodeName: + rigImportErrors: + rigImportWarnings: + animationImportErrors: + animationImportWarnings: + animationRetargetingWarnings: + animationDoRetargetingWarnings: 0 + importAnimatedCustomProperties: 0 + importConstraints: 0 + animationCompression: 1 + animationRotationError: 0.5 + animationPositionError: 0.5 + animationScaleError: 0.5 + animationWrapMode: 0 + extraExposedTransformPaths: [] + extraUserProperties: [] + clipAnimations: [] + isReadable: 1 + meshes: + lODScreenPercentages: [] + globalScale: 1 + meshCompression: 0 + addColliders: 0 + useSRGBMaterialColor: 1 + importVisibility: 1 + importBlendShapes: 1 + importCameras: 1 + importLights: 1 + swapUVChannels: 0 + generateSecondaryUV: 0 + useFileUnits: 1 + optimizeMeshForGPU: 1 + keepQuads: 0 + weldVertices: 1 + preserveHierarchy: 0 + indexFormat: 0 + secondaryUVAngleDistortion: 8 + secondaryUVAreaDistortion: 15.000001 + secondaryUVHardAngle: 88 + secondaryUVPackMargin: 4 + useFileScale: 1 + previousCalculatedGlobalScale: 1 + hasPreviousCalculatedGlobalScale: 0 + tangentSpace: + normalSmoothAngle: 60 + normalImportMode: 0 + tangentImportMode: 3 + normalCalculationMode: 4 + legacyComputeAllNormalsFromSmoothingGroupsWhenMeshHasBlendShapes: 0 + blendShapeNormalImportMode: 1 + normalSmoothingSource: 0 + importAnimation: 1 + copyAvatar: 0 + humanDescription: + serializedVersion: 2 + human: [] + skeleton: [] + armTwist: 0.5 + foreArmTwist: 0.5 + upperLegTwist: 0.5 + legTwist: 0.5 + armStretch: 0.05 + legStretch: 0.05 + feetSpacing: 0 + rootMotionBoneName: + hasTranslationDoF: 0 + hasExtraRoot: 0 + skeletonHasParents: 1 + lastHumanDescriptionAvatarSource: {instanceID: 0} + animationType: 0 + humanoidOversampling: 1 + additionalBone: 0 + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Models/Horizon.FBX" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Models/Horizon.FBX" new file mode 100644 index 00000000..68a3ec68 Binary files /dev/null and "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Models/Horizon.FBX" differ diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Models/Horizon.FBX.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Models/Horizon.FBX.meta" new file mode 100644 index 00000000..aef0e7f0 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Models/Horizon.FBX.meta" @@ -0,0 +1,104 @@ +fileFormatVersion: 2 +guid: 18f9f64257e02ef41831fe2f867cb118 +ModelImporter: + serializedVersion: 23 + fileIDToRecycleName: + 100000: //RootNode + 400000: //RootNode + 2100000: TreeProto + 2100002: TemplateEnvironment + 2300000: //RootNode + 3300000: //RootNode + 4300000: Cylinder001 + 4300002: Horizon + externalObjects: + - first: + type: UnityEngine:Material + assembly: UnityEngine.CoreModule + name: TemplateEnvironment + second: {fileID: 2100000, guid: d11179e416c9b394c8176d36a0dcae52, type: 2} + materials: + importMaterials: 1 + materialName: 1 + materialSearch: 2 + materialLocation: 1 + animations: + legacyGenerateAnimations: 4 + bakeSimulation: 0 + resampleCurves: 1 + optimizeGameObjects: 0 + motionNodeName: + rigImportErrors: + rigImportWarnings: + animationImportErrors: + animationImportWarnings: + animationRetargetingWarnings: + animationDoRetargetingWarnings: 0 + importAnimatedCustomProperties: 0 + importConstraints: 0 + animationCompression: 1 + animationRotationError: 0.5 + animationPositionError: 0.5 + animationScaleError: 0.5 + animationWrapMode: 0 + extraExposedTransformPaths: [] + extraUserProperties: [] + clipAnimations: [] + isReadable: 1 + meshes: + lODScreenPercentages: [] + globalScale: 1 + meshCompression: 0 + addColliders: 0 + useSRGBMaterialColor: 1 + importVisibility: 1 + importBlendShapes: 1 + importCameras: 1 + importLights: 1 + swapUVChannels: 0 + generateSecondaryUV: 0 + useFileUnits: 1 + optimizeMeshForGPU: 1 + keepQuads: 0 + weldVertices: 1 + preserveHierarchy: 0 + indexFormat: 0 + secondaryUVAngleDistortion: 8 + secondaryUVAreaDistortion: 15.000001 + secondaryUVHardAngle: 88 + secondaryUVPackMargin: 4 + useFileScale: 1 + previousCalculatedGlobalScale: 1 + hasPreviousCalculatedGlobalScale: 0 + tangentSpace: + normalSmoothAngle: 60 + normalImportMode: 0 + tangentImportMode: 3 + normalCalculationMode: 4 + legacyComputeAllNormalsFromSmoothingGroupsWhenMeshHasBlendShapes: 0 + blendShapeNormalImportMode: 1 + normalSmoothingSource: 0 + importAnimation: 1 + copyAvatar: 0 + humanDescription: + serializedVersion: 2 + human: [] + skeleton: [] + armTwist: 0.5 + foreArmTwist: 0.5 + upperLegTwist: 0.5 + legTwist: 0.5 + armStretch: 0.05 + legStretch: 0.05 + feetSpacing: 0 + rootMotionBoneName: + hasTranslationDoF: 0 + hasExtraRoot: 0 + skeletonHasParents: 1 + lastHumanDescriptionAvatarSource: {instanceID: 0} + animationType: 0 + humanoidOversampling: 1 + additionalBone: 0 + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Models/Kart.fbx" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Models/Kart.fbx" new file mode 100644 index 00000000..02dc490b Binary files /dev/null and "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Models/Kart.fbx" differ diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Models/Kart.fbx.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Models/Kart.fbx.meta" new file mode 100644 index 00000000..d8143cc8 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Models/Kart.fbx.meta" @@ -0,0 +1,133 @@ +fileFormatVersion: 2 +guid: d3aa50a8114db7a4e95c5cb29a283ac4 +ModelImporter: + serializedVersion: 23 + fileIDToRecycleName: + 100000: Kart_Body + 100002: KartBase + 100004: KartEngine + 100006: KartEngineEND + 100008: KartFrontWheelLeft + 100010: KartFrontWheelRight + 100012: //RootNode + 100014: KartRearWheels + 100016: KartSilencer + 100018: KartSilencerEND + 100020: KartSteer + 100022: Root + 100024: LocatorLeftHand + 100026: LocatorRightHand + 100028: locatorLeftHand + 100030: locatorRightHand + 400000: Kart_Body + 400002: KartBase + 400004: KartEngine + 400006: KartEngineEND + 400008: KartFrontWheelLeft + 400010: KartFrontWheelRight + 400012: //RootNode + 400014: KartRearWheels + 400016: KartSilencer + 400018: KartSilencerEND + 400020: KartSteer + 400022: Root + 400024: LocatorLeftHand + 400026: LocatorRightHand + 400028: locatorLeftHand + 400030: locatorRightHand + 2100000: KartRacerMaterial + 4300000: Kart_Body + 7400000: Take 001 + 9500000: //RootNode + 13700000: Kart_Body + externalObjects: + - first: + type: UnityEngine:Material + assembly: UnityEngine.CoreModule + name: KartRacerMaterial + second: {fileID: 2100000, guid: 5304db1f3e113764fae919908740f4ba, type: 2} + materials: + importMaterials: 1 + materialName: 1 + materialSearch: 1 + materialLocation: 1 + animations: + legacyGenerateAnimations: 4 + bakeSimulation: 0 + resampleCurves: 1 + optimizeGameObjects: 0 + motionNodeName: + rigImportErrors: + rigImportWarnings: + animationImportErrors: + animationImportWarnings: + animationRetargetingWarnings: + animationDoRetargetingWarnings: 0 + importAnimatedCustomProperties: 0 + importConstraints: 0 + animationCompression: 1 + animationRotationError: 0.5 + animationPositionError: 0.5 + animationScaleError: 0.5 + animationWrapMode: 0 + extraExposedTransformPaths: [] + extraUserProperties: [] + clipAnimations: [] + isReadable: 1 + meshes: + lODScreenPercentages: [] + globalScale: 1 + meshCompression: 0 + addColliders: 0 + useSRGBMaterialColor: 1 + importVisibility: 1 + importBlendShapes: 1 + importCameras: 1 + importLights: 1 + swapUVChannels: 0 + generateSecondaryUV: 0 + useFileUnits: 1 + optimizeMeshForGPU: 1 + keepQuads: 0 + weldVertices: 1 + preserveHierarchy: 0 + indexFormat: 0 + secondaryUVAngleDistortion: 8 + secondaryUVAreaDistortion: 15.000001 + secondaryUVHardAngle: 88 + secondaryUVPackMargin: 4 + useFileScale: 1 + previousCalculatedGlobalScale: 0.01 + hasPreviousCalculatedGlobalScale: 1 + tangentSpace: + normalSmoothAngle: 60 + normalImportMode: 0 + tangentImportMode: 3 + normalCalculationMode: 4 + legacyComputeAllNormalsFromSmoothingGroupsWhenMeshHasBlendShapes: 0 + blendShapeNormalImportMode: 1 + normalSmoothingSource: 0 + importAnimation: 1 + copyAvatar: 0 + humanDescription: + serializedVersion: 2 + human: [] + skeleton: [] + armTwist: 0.5 + foreArmTwist: 0.5 + upperLegTwist: 0.5 + legTwist: 0.5 + armStretch: 0.05 + legStretch: 0.05 + feetSpacing: 0 + rootMotionBoneName: Root + hasTranslationDoF: 0 + hasExtraRoot: 0 + skeletonHasParents: 1 + lastHumanDescriptionAvatarSource: {instanceID: 0} + animationType: 2 + humanoidOversampling: 1 + additionalBone: 0 + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Models/KartWheels.fbx" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Models/KartWheels.fbx" new file mode 100644 index 00000000..2c16cb49 Binary files /dev/null and "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Models/KartWheels.fbx" differ diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Models/KartWheels.fbx.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Models/KartWheels.fbx.meta" new file mode 100644 index 00000000..3cd07e11 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Models/KartWheels.fbx.meta" @@ -0,0 +1,143 @@ +fileFormatVersion: 2 +guid: 305a556307b36464395aa157cffcd3db +ModelImporter: + serializedVersion: 23 + fileIDToRecycleName: + 100000: KartBase + 100002: KartFrontWheels + 100004: KartRearWheels + 100006: //RootNode + 100008: Root + 100010: WheelFrontLeft + 100012: WheelFrontRight + 100014: WheelrearLeft + 100016: WheelsRearRight + 100018: WheelsRoot + 100020: KartFrontWheelLeft + 100022: KartFrontWheelRight + 100024: KartRearWheelLeft + 100026: KartRearWheelRight + 400000: KartBase + 400002: KartFrontWheels + 400004: KartRearWheels + 400006: //RootNode + 400008: Root + 400010: WheelFrontLeft + 400012: WheelFrontRight + 400014: WheelrearLeft + 400016: WheelsRearRight + 400018: WheelsRoot + 400020: KartFrontWheelLeft + 400022: KartFrontWheelRight + 400024: KartRearWheelLeft + 400026: KartRearWheelRight + 2100000: KartRacerMaterial + 2300000: WheelFrontLeft + 2300002: WheelFrontRight + 2300004: WheelrearLeft + 2300006: WheelsRearRight + 3300000: WheelFrontLeft + 3300002: WheelFrontRight + 3300004: WheelrearLeft + 3300006: WheelsRearRight + 4300000: WheelFrontRight + 4300002: WheelFrontLeft + 4300004: WheelrearLeft + 4300006: WheelsRearRight + 7400000: Take 001 + 9500000: //RootNode + 13700000: WheelFrontLeft + 13700002: WheelFrontRight + 13700004: WheelrearLeft + 13700006: WheelsRearRight + externalObjects: + - first: + type: UnityEngine:Material + assembly: UnityEngine.CoreModule + name: KartRacerMaterial + second: {fileID: 2100000, guid: 5304db1f3e113764fae919908740f4ba, type: 2} + materials: + importMaterials: 1 + materialName: 0 + materialSearch: 1 + materialLocation: 1 + animations: + legacyGenerateAnimations: 4 + bakeSimulation: 0 + resampleCurves: 1 + optimizeGameObjects: 0 + motionNodeName: + rigImportErrors: + rigImportWarnings: + animationImportErrors: + animationImportWarnings: + animationRetargetingWarnings: + animationDoRetargetingWarnings: 0 + importAnimatedCustomProperties: 0 + importConstraints: 0 + animationCompression: 1 + animationRotationError: 0.5 + animationPositionError: 0.5 + animationScaleError: 0.5 + animationWrapMode: 0 + extraExposedTransformPaths: [] + extraUserProperties: [] + clipAnimations: [] + isReadable: 1 + meshes: + lODScreenPercentages: [] + globalScale: 1 + meshCompression: 0 + addColliders: 0 + useSRGBMaterialColor: 1 + importVisibility: 1 + importBlendShapes: 1 + importCameras: 1 + importLights: 1 + swapUVChannels: 0 + generateSecondaryUV: 0 + useFileUnits: 1 + optimizeMeshForGPU: 1 + keepQuads: 0 + weldVertices: 1 + preserveHierarchy: 0 + indexFormat: 0 + secondaryUVAngleDistortion: 8 + secondaryUVAreaDistortion: 15.000001 + secondaryUVHardAngle: 88 + secondaryUVPackMargin: 4 + useFileScale: 1 + previousCalculatedGlobalScale: 0.01 + hasPreviousCalculatedGlobalScale: 1 + tangentSpace: + normalSmoothAngle: 60 + normalImportMode: 0 + tangentImportMode: 3 + normalCalculationMode: 4 + legacyComputeAllNormalsFromSmoothingGroupsWhenMeshHasBlendShapes: 0 + blendShapeNormalImportMode: 1 + normalSmoothingSource: 0 + importAnimation: 1 + copyAvatar: 0 + humanDescription: + serializedVersion: 2 + human: [] + skeleton: [] + armTwist: 0.5 + foreArmTwist: 0.5 + upperLegTwist: 0.5 + legTwist: 0.5 + armStretch: 0.05 + legStretch: 0.05 + feetSpacing: 0 + rootMotionBoneName: + hasTranslationDoF: 0 + hasExtraRoot: 0 + skeletonHasParents: 1 + lastHumanDescriptionAvatarSource: {instanceID: 0} + animationType: 2 + humanoidOversampling: 1 + additionalBone: 0 + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Models/Pipe.fbx" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Models/Pipe.fbx" new file mode 100644 index 00000000..d7028a66 Binary files /dev/null and "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Models/Pipe.fbx" differ diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Models/Pipe.fbx.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Models/Pipe.fbx.meta" new file mode 100644 index 00000000..38d96ce0 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Models/Pipe.fbx.meta" @@ -0,0 +1,215 @@ +fileFormatVersion: 2 +guid: 4a17d942f49fa4e49ae899122b72e91d +ModelImporter: + serializedVersion: 23 + fileIDToRecycleName: + 100000: //RootNode + 100002: directionalLight1 + 100004: pCube26 + 100006: pCube35 + 100008: pCube36 + 100010: pCube39 + 100012: pCube43 + 100014: pCube44 + 100016: pCube45 + 100018: pCube46 + 100020: pCube47 + 100022: pCube48 + 100024: pCube49 + 100026: pCube50 + 100028: pCube53 + 100030: pCube54 + 100032: pCube58 + 100034: pCube60 + 100036: pCube61 + 100038: pCube62 + 100040: pCube63 + 100042: pCube64 + 100044: Root + 400000: //RootNode + 400002: directionalLight1 + 400004: pCube26 + 400006: pCube35 + 400008: pCube36 + 400010: pCube39 + 400012: pCube43 + 400014: pCube44 + 400016: pCube45 + 400018: pCube46 + 400020: pCube47 + 400022: pCube48 + 400024: pCube49 + 400026: pCube50 + 400028: pCube53 + 400030: pCube54 + 400032: pCube58 + 400034: pCube60 + 400036: pCube61 + 400038: pCube62 + 400040: pCube63 + 400042: pCube64 + 400044: Root + 2100000: lambert1 + 2100002: lambert2 + 2100004: TestMaterial + 2300000: //RootNode + 2300002: pCube26 + 2300004: pCube35 + 2300006: pCube36 + 2300008: pCube39 + 2300010: pCube43 + 2300012: pCube44 + 2300014: pCube45 + 2300016: pCube46 + 2300018: pCube47 + 2300020: pCube48 + 2300022: pCube49 + 2300024: pCube50 + 2300026: pCube53 + 2300028: pCube54 + 2300030: pCube58 + 2300032: pCube60 + 2300034: pCube61 + 2300036: pCube62 + 2300038: pCube63 + 2300040: pCube64 + 3300000: //RootNode + 3300002: pCube26 + 3300004: pCube35 + 3300006: pCube36 + 3300008: pCube39 + 3300010: pCube43 + 3300012: pCube44 + 3300014: pCube45 + 3300016: pCube46 + 3300018: pCube47 + 3300020: pCube48 + 3300022: pCube49 + 3300024: pCube50 + 3300026: pCube53 + 3300028: pCube54 + 3300030: pCube58 + 3300032: pCube60 + 3300034: pCube61 + 3300036: pCube62 + 3300038: pCube63 + 3300040: pCube64 + 4300000: pCube1 + 4300002: pCube26 + 4300004: pCube35 + 4300006: pCube36 + 4300008: pCube39 + 4300010: pCube43 + 4300012: pCube44 + 4300014: pCube45 + 4300016: pCube46 + 4300018: pCube47 + 4300020: pCube48 + 4300022: pCube49 + 4300024: pCube50 + 4300026: pCube53 + 4300028: pCube54 + 4300030: pCube58 + 4300032: pCube60 + 4300034: pCube61 + 4300036: pCube62 + 4300038: pCube63 + 4300040: pCube64 + 4300042: Pipe + 10800000: directionalLight1 + externalObjects: + - first: + type: UnityEngine:Material + assembly: UnityEngine.CoreModule + name: TestMaterial + second: {fileID: 2100000, guid: d11179e416c9b394c8176d36a0dcae52, type: 2} + - first: + type: UnityEngine:Material + assembly: UnityEngine.CoreModule + name: lambert2 + second: {fileID: 2100000, guid: 38347a2b8295b6147985095f55cd4a55, type: 2} + materials: + importMaterials: 1 + materialName: 1 + materialSearch: 2 + materialLocation: 1 + animations: + legacyGenerateAnimations: 4 + bakeSimulation: 0 + resampleCurves: 1 + optimizeGameObjects: 0 + motionNodeName: + rigImportErrors: + rigImportWarnings: + animationImportErrors: + animationImportWarnings: + animationRetargetingWarnings: + animationDoRetargetingWarnings: 0 + importAnimatedCustomProperties: 0 + importConstraints: 0 + animationCompression: 1 + animationRotationError: 0.5 + animationPositionError: 0.5 + animationScaleError: 0.5 + animationWrapMode: 0 + extraExposedTransformPaths: [] + extraUserProperties: [] + clipAnimations: [] + isReadable: 1 + meshes: + lODScreenPercentages: [] + globalScale: 1 + meshCompression: 0 + addColliders: 0 + useSRGBMaterialColor: 1 + importVisibility: 1 + importBlendShapes: 1 + importCameras: 1 + importLights: 1 + swapUVChannels: 0 + generateSecondaryUV: 0 + useFileUnits: 1 + optimizeMeshForGPU: 1 + keepQuads: 0 + weldVertices: 1 + preserveHierarchy: 0 + indexFormat: 0 + secondaryUVAngleDistortion: 8 + secondaryUVAreaDistortion: 15.000001 + secondaryUVHardAngle: 88 + secondaryUVPackMargin: 4 + useFileScale: 1 + previousCalculatedGlobalScale: 1 + hasPreviousCalculatedGlobalScale: 0 + tangentSpace: + normalSmoothAngle: 60 + normalImportMode: 0 + tangentImportMode: 3 + normalCalculationMode: 4 + legacyComputeAllNormalsFromSmoothingGroupsWhenMeshHasBlendShapes: 0 + blendShapeNormalImportMode: 1 + normalSmoothingSource: 0 + importAnimation: 1 + copyAvatar: 0 + humanDescription: + serializedVersion: 2 + human: [] + skeleton: [] + armTwist: 0.5 + foreArmTwist: 0.5 + upperLegTwist: 0.5 + legTwist: 0.5 + armStretch: 0.05 + legStretch: 0.05 + feetSpacing: 0 + rootMotionBoneName: + hasTranslationDoF: 0 + hasExtraRoot: 0 + skeletonHasParents: 1 + lastHumanDescriptionAvatarSource: {instanceID: 0} + animationType: 0 + humanoidOversampling: 1 + additionalBone: 0 + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Models/Player.FBX" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Models/Player.FBX" new file mode 100644 index 00000000..580d6d4d Binary files /dev/null and "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Models/Player.FBX" differ diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Models/Player.FBX.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Models/Player.FBX.meta" new file mode 100644 index 00000000..871eb488 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Models/Player.FBX.meta" @@ -0,0 +1,949 @@ +fileFormatVersion: 2 +guid: 6efe54ae207d7bb46a4adca3c0143126 +ModelImporter: + serializedVersion: 23 + fileIDToRecycleName: + 100000: Head + 100002: HeadEND + 100004: Hips + 100006: LeftArm + 100008: LeftCalf + 100010: LeftFoot + 100012: LeftFootEND + 100014: LeftHand + 100016: LeftIndex1 + 100018: LeftIndex2 + 100020: LeftIndex3 + 100022: LeftIndexEND + 100024: LeftLeg + 100026: LeftMiddle1 + 100028: LeftMiddle2 + 100030: LeftMiddle3 + 100032: LeftMiddleEND + 100034: LeftPinky1 + 100036: LeftPinky2 + 100038: LeftPinky3 + 100040: LeftPinkyEND + 100042: LeftRing1 + 100044: LeftRing2 + 100046: LeftRing3 + 100048: LeftRingEND + 100050: LeftShoulder + 100052: LeftThumb1 + 100054: LeftThumb2 + 100056: LeftThumb3 + 100058: LeftThumbEND + 100060: LeftUpperArm + 100062: Neck + 100064: //RootNode + 100066: RightArm + 100068: RightCalf + 100070: RightFoot + 100072: RightFootEND + 100074: RightHand + 100076: RightIndex1 + 100078: RightIndex2 + 100080: RightIndex3 + 100082: RightIndexEND + 100084: RightLeg + 100086: RightMiddle1 + 100088: RightMiddle2 + 100090: RightMiddle3 + 100092: RightMiddleEND + 100094: RightPinky1 + 100096: RightPinky2 + 100098: RightPinky3 + 100100: RightPinkyEND + 100102: RightRing1 + 100104: RightRing2 + 100106: RightRing3 + 100108: RightRingEND + 100110: RightShoulder + 100112: RightThumb1 + 100114: RightThumb2 + 100116: RightThumb3 + 100118: RightThumbEND + 100120: RightUpperArm + 100122: Root1 + 100124: Spine1 + 100126: Spine2 + 100128: Template_Character + 400000: Head + 400002: HeadEND + 400004: Hips + 400006: LeftArm + 400008: LeftCalf + 400010: LeftFoot + 400012: LeftFootEND + 400014: LeftHand + 400016: LeftIndex1 + 400018: LeftIndex2 + 400020: LeftIndex3 + 400022: LeftIndexEND + 400024: LeftLeg + 400026: LeftMiddle1 + 400028: LeftMiddle2 + 400030: LeftMiddle3 + 400032: LeftMiddleEND + 400034: LeftPinky1 + 400036: LeftPinky2 + 400038: LeftPinky3 + 400040: LeftPinkyEND + 400042: LeftRing1 + 400044: LeftRing2 + 400046: LeftRing3 + 400048: LeftRingEND + 400050: LeftShoulder + 400052: LeftThumb1 + 400054: LeftThumb2 + 400056: LeftThumb3 + 400058: LeftThumbEND + 400060: LeftUpperArm + 400062: Neck + 400064: //RootNode + 400066: RightArm + 400068: RightCalf + 400070: RightFoot + 400072: RightFootEND + 400074: RightHand + 400076: RightIndex1 + 400078: RightIndex2 + 400080: RightIndex3 + 400082: RightIndexEND + 400084: RightLeg + 400086: RightMiddle1 + 400088: RightMiddle2 + 400090: RightMiddle3 + 400092: RightMiddleEND + 400094: RightPinky1 + 400096: RightPinky2 + 400098: RightPinky3 + 400100: RightPinkyEND + 400102: RightRing1 + 400104: RightRing2 + 400106: RightRing3 + 400108: RightRingEND + 400110: RightShoulder + 400112: RightThumb1 + 400114: RightThumb2 + 400116: RightThumb3 + 400118: RightThumbEND + 400120: RightUpperArm + 400122: Root1 + 400124: Spine1 + 400126: Spine2 + 400128: Template_Character + 2100000: Template_Character_Material + 4300000: Template_Character + 7400000: Take 001 + 9500000: //RootNode + 13700000: Template_Character + externalObjects: + - first: + type: UnityEngine:Material + assembly: UnityEngine.CoreModule + name: Template_Character_Material + second: {fileID: 2100000, guid: 5304db1f3e113764fae919908740f4ba, type: 2} + materials: + importMaterials: 1 + materialName: 1 + materialSearch: 2 + materialLocation: 1 + animations: + legacyGenerateAnimations: 4 + bakeSimulation: 0 + resampleCurves: 1 + optimizeGameObjects: 0 + motionNodeName: + rigImportErrors: + rigImportWarnings: + animationImportErrors: + animationImportWarnings: + animationRetargetingWarnings: + animationDoRetargetingWarnings: 0 + importAnimatedCustomProperties: 0 + importConstraints: 0 + animationCompression: 3 + animationRotationError: 0.5 + animationPositionError: 0.5 + animationScaleError: 0.5 + animationWrapMode: 0 + extraExposedTransformPaths: [] + extraUserProperties: [] + clipAnimations: [] + isReadable: 1 + meshes: + lODScreenPercentages: [] + globalScale: 1 + meshCompression: 0 + addColliders: 0 + useSRGBMaterialColor: 1 + importVisibility: 1 + importBlendShapes: 1 + importCameras: 1 + importLights: 1 + swapUVChannels: 0 + generateSecondaryUV: 0 + useFileUnits: 1 + optimizeMeshForGPU: 1 + keepQuads: 0 + weldVertices: 1 + preserveHierarchy: 0 + indexFormat: 0 + secondaryUVAngleDistortion: 8 + secondaryUVAreaDistortion: 15.000001 + secondaryUVHardAngle: 88 + secondaryUVPackMargin: 4 + useFileScale: 1 + previousCalculatedGlobalScale: 0.01 + hasPreviousCalculatedGlobalScale: 1 + tangentSpace: + normalSmoothAngle: 60 + normalImportMode: 0 + tangentImportMode: 3 + normalCalculationMode: 4 + legacyComputeAllNormalsFromSmoothingGroupsWhenMeshHasBlendShapes: 0 + blendShapeNormalImportMode: 1 + normalSmoothingSource: 0 + importAnimation: 1 + copyAvatar: 0 + humanDescription: + serializedVersion: 2 + human: + - boneName: Hips + humanName: Hips + limit: + min: {x: 0, y: 0, z: 0} + max: {x: 0, y: 0, z: 0} + value: {x: 0, y: 0, z: 0} + length: 0 + modified: 0 + - boneName: LeftLeg + humanName: LeftUpperLeg + limit: + min: {x: 0, y: 0, z: 0} + max: {x: 0, y: 0, z: 0} + value: {x: 0, y: 0, z: 0} + length: 0 + modified: 0 + - boneName: RightLeg + humanName: RightUpperLeg + limit: + min: {x: 0, y: 0, z: 0} + max: {x: 0, y: 0, z: 0} + value: {x: 0, y: 0, z: 0} + length: 0 + modified: 0 + - boneName: LeftCalf + humanName: LeftLowerLeg + limit: + min: {x: 0, y: 0, z: 0} + max: {x: 0, y: 0, z: 0} + value: {x: 0, y: 0, z: 0} + length: 0 + modified: 0 + - boneName: RightCalf + humanName: RightLowerLeg + limit: + min: {x: 0, y: 0, z: 0} + max: {x: 0, y: 0, z: 0} + value: {x: 0, y: 0, z: 0} + length: 0 + modified: 0 + - boneName: LeftFoot + humanName: LeftFoot + limit: + min: {x: 0, y: 0, z: 0} + max: {x: 0, y: 0, z: 0} + value: {x: 0, y: 0, z: 0} + length: 0 + modified: 0 + - boneName: RightFoot + humanName: RightFoot + limit: + min: {x: 0, y: 0, z: 0} + max: {x: 0, y: 0, z: 0} + value: {x: 0, y: 0, z: 0} + length: 0 + modified: 0 + - boneName: Spine1 + humanName: Spine + limit: + min: {x: 0, y: 0, z: 0} + max: {x: 0, y: 0, z: 0} + value: {x: 0, y: 0, z: 0} + length: 0 + modified: 0 + - boneName: Spine2 + humanName: Chest + limit: + min: {x: 0, y: 0, z: 0} + max: {x: 0, y: 0, z: 0} + value: {x: 0, y: 0, z: 0} + length: 0 + modified: 0 + - boneName: Neck + humanName: Neck + limit: + min: {x: 0, y: 0, z: 0} + max: {x: 0, y: 0, z: 0} + value: {x: 0, y: 0, z: 0} + length: 0 + modified: 0 + - boneName: Head + humanName: Head + limit: + min: {x: 0, y: 0, z: 0} + max: {x: 0, y: 0, z: 0} + value: {x: 0, y: 0, z: 0} + length: 0 + modified: 0 + - boneName: LeftShoulder + humanName: LeftShoulder + limit: + min: {x: 0, y: 0, z: 0} + max: {x: 0, y: 0, z: 0} + value: {x: 0, y: 0, z: 0} + length: 0 + modified: 0 + - boneName: RightShoulder + humanName: RightShoulder + limit: + min: {x: 0, y: 0, z: 0} + max: {x: 0, y: 0, z: 0} + value: {x: 0, y: 0, z: 0} + length: 0 + modified: 0 + - boneName: LeftArm + humanName: LeftUpperArm + limit: + min: {x: 0, y: 0, z: 0} + max: {x: 0, y: 0, z: 0} + value: {x: 0, y: 0, z: 0} + length: 0 + modified: 0 + - boneName: RightArm + humanName: RightUpperArm + limit: + min: {x: 0, y: 0, z: 0} + max: {x: 0, y: 0, z: 0} + value: {x: 0, y: 0, z: 0} + length: 0 + modified: 0 + - boneName: LeftUpperArm + humanName: LeftLowerArm + limit: + min: {x: 0, y: 0, z: 0} + max: {x: 0, y: 0, z: 0} + value: {x: 0, y: 0, z: 0} + length: 0 + modified: 0 + - boneName: RightUpperArm + humanName: RightLowerArm + limit: + min: {x: 0, y: 0, z: 0} + max: {x: 0, y: 0, z: 0} + value: {x: 0, y: 0, z: 0} + length: 0 + modified: 0 + - boneName: LeftHand + humanName: LeftHand + limit: + min: {x: 0, y: 0, z: 0} + max: {x: 0, y: 0, z: 0} + value: {x: 0, y: 0, z: 0} + length: 0 + modified: 0 + - boneName: RightHand + humanName: RightHand + limit: + min: {x: 0, y: 0, z: 0} + max: {x: 0, y: 0, z: 0} + value: {x: 0, y: 0, z: 0} + length: 0 + modified: 0 + - boneName: LeftThumb1 + humanName: Left Thumb Proximal + limit: + min: {x: 0, y: 0, z: 0} + max: {x: 0, y: 0, z: 0} + value: {x: 0, y: 0, z: 0} + length: 0 + modified: 0 + - boneName: LeftThumb2 + humanName: Left Thumb Intermediate + limit: + min: {x: 0, y: 0, z: 0} + max: {x: 0, y: 0, z: 0} + value: {x: 0, y: 0, z: 0} + length: 0 + modified: 0 + - boneName: LeftThumb3 + humanName: Left Thumb Distal + limit: + min: {x: 0, y: 0, z: 0} + max: {x: 0, y: 0, z: 0} + value: {x: 0, y: 0, z: 0} + length: 0 + modified: 0 + - boneName: LeftIndex1 + humanName: Left Index Proximal + limit: + min: {x: 0, y: 0, z: 0} + max: {x: 0, y: 0, z: 0} + value: {x: 0, y: 0, z: 0} + length: 0 + modified: 0 + - boneName: LeftIndex2 + humanName: Left Index Intermediate + limit: + min: {x: 0, y: 0, z: 0} + max: {x: 0, y: 0, z: 0} + value: {x: 0, y: 0, z: 0} + length: 0 + modified: 0 + - boneName: LeftIndex3 + humanName: Left Index Distal + limit: + min: {x: 0, y: 0, z: 0} + max: {x: 0, y: 0, z: 0} + value: {x: 0, y: 0, z: 0} + length: 0 + modified: 0 + - boneName: LeftMiddle1 + humanName: Left Middle Proximal + limit: + min: {x: 0, y: 0, z: 0} + max: {x: 0, y: 0, z: 0} + value: {x: 0, y: 0, z: 0} + length: 0 + modified: 0 + - boneName: LeftMiddle2 + humanName: Left Middle Intermediate + limit: + min: {x: 0, y: 0, z: 0} + max: {x: 0, y: 0, z: 0} + value: {x: 0, y: 0, z: 0} + length: 0 + modified: 0 + - boneName: LeftMiddle3 + humanName: Left Middle Distal + limit: + min: {x: 0, y: 0, z: 0} + max: {x: 0, y: 0, z: 0} + value: {x: 0, y: 0, z: 0} + length: 0 + modified: 0 + - boneName: LeftRing1 + humanName: Left Ring Proximal + limit: + min: {x: 0, y: 0, z: 0} + max: {x: 0, y: 0, z: 0} + value: {x: 0, y: 0, z: 0} + length: 0 + modified: 0 + - boneName: LeftRing2 + humanName: Left Ring Intermediate + limit: + min: {x: 0, y: 0, z: 0} + max: {x: 0, y: 0, z: 0} + value: {x: 0, y: 0, z: 0} + length: 0 + modified: 0 + - boneName: LeftRing3 + humanName: Left Ring Distal + limit: + min: {x: 0, y: 0, z: 0} + max: {x: 0, y: 0, z: 0} + value: {x: 0, y: 0, z: 0} + length: 0 + modified: 0 + - boneName: LeftPinky1 + humanName: Left Little Proximal + limit: + min: {x: 0, y: 0, z: 0} + max: {x: 0, y: 0, z: 0} + value: {x: 0, y: 0, z: 0} + length: 0 + modified: 0 + - boneName: LeftPinky2 + humanName: Left Little Intermediate + limit: + min: {x: 0, y: 0, z: 0} + max: {x: 0, y: 0, z: 0} + value: {x: 0, y: 0, z: 0} + length: 0 + modified: 0 + - boneName: LeftPinky3 + humanName: Left Little Distal + limit: + min: {x: 0, y: 0, z: 0} + max: {x: 0, y: 0, z: 0} + value: {x: 0, y: 0, z: 0} + length: 0 + modified: 0 + - boneName: RightThumb1 + humanName: Right Thumb Proximal + limit: + min: {x: 0, y: 0, z: 0} + max: {x: 0, y: 0, z: 0} + value: {x: 0, y: 0, z: 0} + length: 0 + modified: 0 + - boneName: RightThumb2 + humanName: Right Thumb Intermediate + limit: + min: {x: 0, y: 0, z: 0} + max: {x: 0, y: 0, z: 0} + value: {x: 0, y: 0, z: 0} + length: 0 + modified: 0 + - boneName: RightThumb3 + humanName: Right Thumb Distal + limit: + min: {x: 0, y: 0, z: 0} + max: {x: 0, y: 0, z: 0} + value: {x: 0, y: 0, z: 0} + length: 0 + modified: 0 + - boneName: RightIndex1 + humanName: Right Index Proximal + limit: + min: {x: 0, y: 0, z: 0} + max: {x: 0, y: 0, z: 0} + value: {x: 0, y: 0, z: 0} + length: 0 + modified: 0 + - boneName: RightIndex2 + humanName: Right Index Intermediate + limit: + min: {x: 0, y: 0, z: 0} + max: {x: 0, y: 0, z: 0} + value: {x: 0, y: 0, z: 0} + length: 0 + modified: 0 + - boneName: RightIndex3 + humanName: Right Index Distal + limit: + min: {x: 0, y: 0, z: 0} + max: {x: 0, y: 0, z: 0} + value: {x: 0, y: 0, z: 0} + length: 0 + modified: 0 + - boneName: RightMiddle1 + humanName: Right Middle Proximal + limit: + min: {x: 0, y: 0, z: 0} + max: {x: 0, y: 0, z: 0} + value: {x: 0, y: 0, z: 0} + length: 0 + modified: 0 + - boneName: RightMiddle2 + humanName: Right Middle Intermediate + limit: + min: {x: 0, y: 0, z: 0} + max: {x: 0, y: 0, z: 0} + value: {x: 0, y: 0, z: 0} + length: 0 + modified: 0 + - boneName: RightMiddle3 + humanName: Right Middle Distal + limit: + min: {x: 0, y: 0, z: 0} + max: {x: 0, y: 0, z: 0} + value: {x: 0, y: 0, z: 0} + length: 0 + modified: 0 + - boneName: RightRing1 + humanName: Right Ring Proximal + limit: + min: {x: 0, y: 0, z: 0} + max: {x: 0, y: 0, z: 0} + value: {x: 0, y: 0, z: 0} + length: 0 + modified: 0 + - boneName: RightRing2 + humanName: Right Ring Intermediate + limit: + min: {x: 0, y: 0, z: 0} + max: {x: 0, y: 0, z: 0} + value: {x: 0, y: 0, z: 0} + length: 0 + modified: 0 + - boneName: RightRing3 + humanName: Right Ring Distal + limit: + min: {x: 0, y: 0, z: 0} + max: {x: 0, y: 0, z: 0} + value: {x: 0, y: 0, z: 0} + length: 0 + modified: 0 + - boneName: RightPinky1 + humanName: Right Little Proximal + limit: + min: {x: 0, y: 0, z: 0} + max: {x: 0, y: 0, z: 0} + value: {x: 0, y: 0, z: 0} + length: 0 + modified: 0 + - boneName: RightPinky2 + humanName: Right Little Intermediate + limit: + min: {x: 0, y: 0, z: 0} + max: {x: 0, y: 0, z: 0} + value: {x: 0, y: 0, z: 0} + length: 0 + modified: 0 + - boneName: RightPinky3 + humanName: Right Little Distal + limit: + min: {x: 0, y: 0, z: 0} + max: {x: 0, y: 0, z: 0} + value: {x: 0, y: 0, z: 0} + length: 0 + modified: 0 + skeleton: + - name: PlayerNEW(Clone) + parentName: + position: {x: -0, y: 0, z: 0} + rotation: {x: 0, y: -0, z: -0, w: 1} + scale: {x: 1, y: 1, z: 1} + - name: Root1 + parentName: PlayerNEW(Clone) + position: {x: -0, y: 0, z: 0} + rotation: {x: 0, y: -0, z: -0, w: 1} + scale: {x: 1, y: 1, z: 1} + - name: Hips + parentName: Root1 + position: {x: 2.44256e-19, y: 0.5853834, z: -0.011920411} + rotation: {x: 0.7011581, y: 0.7011581, z: 0.0915279, w: -0.0915279} + scale: {x: 1, y: 1, z: 1} + - name: LeftLeg + parentName: Hips + position: {x: -0.018006599, y: -0.12467603, z: -0.0030510616} + rotation: {x: 0.9914449, y: -0.0000000016844101, z: 0.13052614, w: 0.000000012794382} + scale: {x: 1, y: 1, z: 1} + - name: LeftCalf + parentName: LeftLeg + position: {x: -0.26618588, y: -7.68687e-17, z: 0} + rotation: {x: -1.349316e-22, y: 0.00000009632028, z: 1.400864e-15, w: 1} + scale: {x: 1, y: 1, z: 1} + - name: LeftFoot + parentName: LeftCalf + position: {x: -0.23847595, y: 0, z: 0} + rotation: {x: 0.0000000015095722, y: -9.042606e-15, z: -0.0000000041475157, + w: 1} + scale: {x: 1, y: 1, z: 1} + - name: LeftFootEND + parentName: LeftFoot + position: {x: -0.0619559, y: 0.00000037112684, z: 0.17022243} + rotation: {x: 0, y: -0, z: -0, w: 1} + scale: {x: 1, y: 1, z: 1} + - name: RightLeg + parentName: Hips + position: {x: -0.018007025, y: 0.124676, z: -0.0030511897} + rotation: {x: -0.13052633, y: -0.00000005275259, z: 0.9914448, w: -0.0000000069450032} + scale: {x: 1, y: 1, z: 1} + - name: RightCalf + parentName: RightLeg + position: {x: 0.26618537, y: 1.2434498e-16, z: 0.00000005632548} + rotation: {x: -9.1285475e-17, y: -0.00000029066345, z: 1.044696e-15, w: 1} + scale: {x: 1, y: 1, z: 1} + - name: RightFoot + parentName: RightCalf + position: {x: 0.23847602, y: 7.105427e-17, z: -0.000000025153046} + rotation: {x: 0.000000054361337, y: 0.00000012105109, z: 3.2543565e-11, w: 1} + scale: {x: 1, y: 1, z: 1} + - name: RightFootEND + parentName: RightFoot + position: {x: 0.061955888, y: 0, z: -0.17022213} + rotation: {x: 0, y: -0, z: -0, w: 1} + scale: {x: 1, y: 1, z: 1} + - name: Spine1 + parentName: Hips + position: {x: 0.075807385, y: -1.732115e-17, z: -0.00000021538617} + rotation: {x: 2.775558e-17, y: -0.1642221, z: 3.904875e-34, w: 0.98642343} + scale: {x: 1, y: 1, z: 1} + - name: Spine2 + parentName: Spine1 + position: {x: 0.2143929, y: -4.4430303e-17, z: -0.0068833157} + rotation: {x: 0.7065379, y: -0.028359152, z: 0.028359152, w: 0.7065379} + scale: {x: 1, y: 1, z: 1} + - name: LeftShoulder + parentName: Spine2 + position: {x: 0.23315805, y: -0.0036182073, z: 0.0756481} + rotation: {x: -0.42572528, y: -0.43304613, z: 0.65510774, w: -0.44951406} + scale: {x: 1, y: 1, z: 1} + - name: LeftArm + parentName: LeftShoulder + position: {x: -0.17334424, y: -0.00000008990668, z: -0.0000000794735} + rotation: {x: -0.014969045, y: 0.15996195, z: 0.12306981, w: 0.9793069} + scale: {x: 1, y: 1, z: 1} + - name: LeftUpperArm + parentName: LeftArm + position: {x: -0.307883, y: 8.5265126e-16, z: -1.5987211e-16} + rotation: {x: -1.2453748e-15, y: 0.0000032468283, z: -1.0709786e-14, w: 1} + scale: {x: 1, y: 1, z: 1} + - name: LeftHand + parentName: LeftUpperArm + position: {x: -0.238435, y: 5.684342e-16, z: -1.4210854e-16} + rotation: {x: -0.008643247, y: 0.0023682874, z: 0.019030502, w: 0.9997788} + scale: {x: 1, y: 1, z: 1} + - name: LeftIndex1 + parentName: LeftHand + position: {x: -0.14554, y: 0.029749999, z: 0.0735604} + rotation: {x: 0.00000019092104, y: 0.030590264, z: -0.037363186, w: 0.9988334} + scale: {x: 1, y: 1, z: 1} + - name: LeftIndex2 + parentName: LeftIndex1 + position: {x: -0.051833, y: 0, z: -3.5527136e-17} + rotation: {x: 0, y: -0, z: -0, w: 1} + scale: {x: 1, y: 1, z: 1} + - name: LeftIndex3 + parentName: LeftIndex2 + position: {x: -0.036974, y: 2.842171e-16, z: -2.2204459e-17} + rotation: {x: 0, y: -0, z: -0, w: 1} + scale: {x: 1, y: 1, z: 1} + - name: LeftIndexEND + parentName: LeftIndex3 + position: {x: -0.040359996, y: 1.4210854e-16, z: -2.4424906e-17} + rotation: {x: 0, y: -0, z: -0, w: 1} + scale: {x: 1, y: 1, z: 1} + - name: LeftMiddle1 + parentName: LeftHand + position: {x: -0.14554, y: 0.029749999, z: 0.024356598} + rotation: {x: -0.000000022351731, y: 0.0305907, z: -0.03736482, w: 0.9988334} + scale: {x: 1, y: 1, z: 1} + - name: LeftMiddle2 + parentName: LeftMiddle1 + position: {x: -0.052775, y: 0, z: -3.5527136e-17} + rotation: {x: 0, y: -0, z: -0, w: 1} + scale: {x: 1, y: 1, z: 1} + - name: LeftMiddle3 + parentName: LeftMiddle2 + position: {x: -0.036972, y: 2.842171e-16, z: -1.7763568e-17} + rotation: {x: 0, y: -0, z: -0, w: 1} + scale: {x: 1, y: 1, z: 1} + - name: LeftMiddleEND + parentName: LeftMiddle3 + position: {x: -0.04131, y: 1.4210854e-16, z: -2.6645352e-17} + rotation: {x: 0, y: -0, z: -0, w: 1} + scale: {x: 1, y: 1, z: 1} + - name: LeftPinky1 + parentName: LeftHand + position: {x: -0.147425, y: 0.029749999, z: -0.068584196} + rotation: {x: -0.000000107102046, y: 0.030590476, z: -0.037364885, w: 0.9988334} + scale: {x: 1, y: 1, z: 1} + - name: LeftPinky2 + parentName: LeftPinky1 + position: {x: -0.038636, y: -1.4210854e-16, z: 3.5527136e-17} + rotation: {x: 0, y: -0, z: -0, w: 1} + scale: {x: 1, y: 1, z: 1} + - name: LeftPinky3 + parentName: LeftPinky2 + position: {x: -0.024154998, y: 2.842171e-16, z: -3.5527136e-17} + rotation: {x: 0, y: -0, z: -0, w: 1} + scale: {x: 1, y: 1, z: 1} + - name: LeftPinkyEND + parentName: LeftPinky3 + position: {x: -0.027170999, y: -1.4210854e-16, z: 0} + rotation: {x: 0, y: -0, z: -0, w: 1} + scale: {x: 1, y: 1, z: 1} + - name: LeftRing1 + parentName: LeftHand + position: {x: -0.14554, y: 0.029749999, z: -0.0235272} + rotation: {x: 0.000000109896014, y: 0.030590901, z: -0.03736426, w: 0.99883336} + scale: {x: 1, y: 1, z: 1} + - name: LeftRing2 + parentName: LeftRing1 + position: {x: -0.047684997, y: -1.4210854e-16, z: -3.5527136e-17} + rotation: {x: 0, y: -0, z: -0, w: 1} + scale: {x: 1, y: 1, z: 1} + - name: LeftRing3 + parentName: LeftRing2 + position: {x: -0.036972, y: 2.842171e-16, z: -3.5527136e-17} + rotation: {x: 0, y: -0, z: -0, w: 1} + scale: {x: 1, y: 1, z: 1} + - name: LeftRingEND + parentName: LeftRing3 + position: {x: -0.040370002, y: 1.4210854e-16, z: -1.7763568e-17} + rotation: {x: 0, y: -0, z: -0, w: 1} + scale: {x: 1, y: 1, z: 1} + - name: LeftThumb1 + parentName: LeftHand + position: {x: -0.021173999, y: -0.00084, z: 0.039128397} + rotation: {x: 0, y: 0.4694716, z: -0, w: 0.8829476} + scale: {x: 1, y: 1, z: 1} + - name: LeftThumb2 + parentName: LeftThumb1 + position: {x: -0.06474489, y: 2.842171e-16, z: -0.00000013972273} + rotation: {x: 0.00000008497631, y: 0.02878143, z: 0.0000002002365, w: 0.99958575} + scale: {x: 1, y: 1, z: 1} + - name: LeftThumb3 + parentName: LeftThumb2 + position: {x: -0.04855281, y: 0, z: 0.00000009387237} + rotation: {x: 0, y: 5.6655387e-16, z: -0, w: 1} + scale: {x: 1, y: 1, z: 1} + - name: LeftThumbEND + parentName: LeftThumb3 + position: {x: -0.058039706, y: 0, z: -0.0000002491148} + rotation: {x: 0, y: -0, z: -0, w: 1} + scale: {x: 1, y: 1, z: 1} + - name: Neck + parentName: Spine2 + position: {x: 0.33357757, y: 0.005019527, z: 2.4104562e-16} + rotation: {x: -0.000000059604623, y: -0.000000048428756, z: -0.31446886, w: 0.94926775} + scale: {x: 1, y: 1, z: 1} + - name: Head + parentName: Neck + position: {x: 0.110379726, y: -0.0000007722697, z: -4.802617e-16} + rotation: {x: 2.7755576e-17, y: -1.9428903e-16, z: 0.33380687, w: 0.9426415} + scale: {x: 1, y: 1, z: 1} + - name: HeadEND + parentName: Head + position: {x: 0.49002212, y: -0.000000026670863, z: 9.6758976e-17} + rotation: {x: 0, y: -0, z: -0, w: 1} + scale: {x: 1, y: 1, z: 1} + - name: RightShoulder + parentName: Spine2 + position: {x: 0.23315805, y: -0.0036182073, z: -0.0756481} + rotation: {x: -0.43304622, y: 0.42572525, z: 0.449514, w: 0.6551078} + scale: {x: 1, y: 1, z: 1} + - name: RightArm + parentName: RightShoulder + position: {x: 0.17334424, y: 0.00000008990668, z: 0.0000000794735} + rotation: {x: -0.012504441, y: 0.15556175, z: 0.12742665, w: 0.97949314} + scale: {x: 1, y: 1, z: 1} + - name: RightUpperArm + parentName: RightArm + position: {x: 0.307883, y: -7.105427e-16, z: 0} + rotation: {x: -0.00035715738, y: 0.010721008, z: -0.011822482, w: 0.99987257} + scale: {x: 1, y: 1, z: 1} + - name: RightHand + parentName: RightUpperArm + position: {x: 0.238435, y: -7.105427e-16, z: 3.5527136e-17} + rotation: {x: -0.008695018, y: -0.014621013, z: 0.018709179, w: 0.9996802} + scale: {x: 1, y: 1, z: 1} + - name: RightIndex1 + parentName: RightHand + position: {x: 0.14554, y: -0.029749999, z: -0.0735604} + rotation: {x: 0.000000073574455, y: 0.030591365, z: -0.037365444, w: 0.9988333} + scale: {x: 1, y: 1, z: 1} + - name: RightIndex2 + parentName: RightIndex1 + position: {x: 0.051833, y: -1.4210854e-16, z: 1.11022296e-17} + rotation: {x: 6.6594715e-16, y: 1.3444001e-16, z: 1.02018776e-13, w: 1} + scale: {x: 1, y: 1, z: 1} + - name: RightIndex3 + parentName: RightIndex2 + position: {x: 0.036974, y: -1.4210854e-16, z: 2.220446e-18} + rotation: {x: 6.6594715e-16, y: 1.3444001e-16, z: 1.02018776e-13, w: 1} + scale: {x: 1, y: 1, z: 1} + - name: RightIndexEND + parentName: RightIndex3 + position: {x: 0.040359996, y: 0, z: 4.440892e-18} + rotation: {x: 0, y: -0, z: -0, w: 1} + scale: {x: 1, y: 1, z: 1} + - name: RightMiddle1 + parentName: RightHand + position: {x: 0.14554, y: -0.029749999, z: -0.024356598} + rotation: {x: -0.00000014062962, y: 0.030591466, z: -0.037367173, w: 0.9988333} + scale: {x: 1, y: 1, z: 1} + - name: RightMiddle2 + parentName: RightMiddle1 + position: {x: 0.052775, y: -1.4210854e-16, z: 8.881784e-18} + rotation: {x: 6.6594715e-16, y: 1.3444001e-16, z: 1.02018776e-13, w: 1} + scale: {x: 1, y: 1, z: 1} + - name: RightMiddle3 + parentName: RightMiddle2 + position: {x: 0.036972, y: -1.4210854e-16, z: 1.7763568e-17} + rotation: {x: 6.6594715e-16, y: 1.3444001e-16, z: 1.02018776e-13, w: 1} + scale: {x: 1, y: 1, z: 1} + - name: RightMiddleEND + parentName: RightMiddle3 + position: {x: 0.04131, y: 0, z: -8.881784e-18} + rotation: {x: 0, y: -0, z: -0, w: 1} + scale: {x: 1, y: 1, z: 1} + - name: RightPinky1 + parentName: RightHand + position: {x: 0.147425, y: -0.029749999, z: 0.068584196} + rotation: {x: -0.00000013224775, y: 0.030591635, z: -0.0373673, w: 0.9988333} + scale: {x: 1, y: 1, z: 1} + - name: RightPinky2 + parentName: RightPinky1 + position: {x: 0.038636, y: -2.842171e-16, z: 0} + rotation: {x: 6.6594715e-16, y: 1.3444001e-16, z: 1.02018776e-13, w: 1} + scale: {x: 1, y: 1, z: 1} + - name: RightPinky3 + parentName: RightPinky2 + position: {x: 0.024154998, y: 0, z: 0} + rotation: {x: 6.6594715e-16, y: 1.3444001e-16, z: 1.02018776e-13, w: 1} + scale: {x: 1, y: 1, z: 1} + - name: RightPinkyEND + parentName: RightPinky3 + position: {x: 0.027170999, y: -1.4210854e-16, z: 0} + rotation: {x: 0, y: -0, z: -0, w: 1} + scale: {x: 1, y: 1, z: 1} + - name: RightRing1 + parentName: RightHand + position: {x: 0.14554, y: -0.029749999, z: 0.0235272} + rotation: {x: 0.000000028870986, y: 0.03059185, z: -0.03736628, w: 0.99883324} + scale: {x: 1, y: 1, z: 1} + - name: RightRing2 + parentName: RightRing1 + position: {x: 0.047684997, y: -1.4210854e-16, z: 3.5527136e-17} + rotation: {x: 6.6594715e-16, y: 1.3444001e-16, z: 1.02018776e-13, w: 1} + scale: {x: 1, y: 1, z: 1} + - name: RightRing3 + parentName: RightRing2 + position: {x: 0.036972, y: -1.4210854e-16, z: 0} + rotation: {x: 6.6594715e-16, y: 1.3444001e-16, z: 1.02018776e-13, w: 1} + scale: {x: 1, y: 1, z: 1} + - name: RightRingEND + parentName: RightRing3 + position: {x: 0.040370002, y: 0, z: 0} + rotation: {x: 0, y: -0, z: -0, w: 1} + scale: {x: 1, y: 1, z: 1} + - name: RightThumb1 + parentName: RightHand + position: {x: 0.021173999, y: 0.00084, z: -0.039128397} + rotation: {x: 3.7582164e-14, y: 0.4694716, z: -6.863143e-14, w: 0.8829476} + scale: {x: 1, y: 1, z: 1} + - name: RightThumb2 + parentName: RightThumb1 + position: {x: 0.06474489, y: 0, z: 0.00000013972273} + rotation: {x: 0.00000006224392, y: 0.028783778, z: -0.0000019193158, w: 0.9995857} + scale: {x: 1, y: 1, z: 1} + - name: RightThumb3 + parentName: RightThumb2 + position: {x: 0.04855281, y: -2.842171e-16, z: -0.00000009387237} + rotation: {x: 5.6655387e-16, y: -3.2162452e-16, z: -7.6571376e-16, w: 1} + scale: {x: 1, y: 1, z: 1} + - name: RightThumbEND + parentName: RightThumb3 + position: {x: 0.058039706, y: 0, z: 0.0000002491148} + rotation: {x: 0, y: -0, z: -0, w: 1} + scale: {x: 1, y: 1, z: 1} + - name: Template_Character + parentName: PlayerNEW(Clone) + position: {x: -0, y: 0, z: 0} + rotation: {x: 0, y: -0, z: -0, w: 1} + scale: {x: 1, y: 1, z: 1} + armTwist: 0.5 + foreArmTwist: 0.5 + upperLegTwist: 0.5 + legTwist: 0.5 + armStretch: 0.05 + legStretch: 0.05 + feetSpacing: 0 + rootMotionBoneName: Root1 + hasTranslationDoF: 1 + hasExtraRoot: 0 + skeletonHasParents: 1 + lastHumanDescriptionAvatarSource: {instanceID: 0} + animationType: 3 + humanoidOversampling: 1 + additionalBone: 0 + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Models/StartFinishLine.fbx" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Models/StartFinishLine.fbx" new file mode 100644 index 00000000..831f4d3c Binary files /dev/null and "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Models/StartFinishLine.fbx" differ diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Models/StartFinishLine.fbx.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Models/StartFinishLine.fbx.meta" new file mode 100644 index 00000000..da998585 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Models/StartFinishLine.fbx.meta" @@ -0,0 +1,106 @@ +fileFormatVersion: 2 +guid: b974c5c08f684144a8c03f16eb4ad6b1 +ModelImporter: + serializedVersion: 23 + fileIDToRecycleName: + 100000: //RootNode + 400000: //RootNode + 2100000: TrackDark + 2100002: TrackWhite + 2100004: TrackMidDark + 2100006: TrackMidLight + 2100008: TemplateEnvironment + 2300000: //RootNode + 3300000: //RootNode + 4300000: StarFinishtLine + externalObjects: + - first: + type: UnityEngine:Material + assembly: UnityEngine.CoreModule + name: TemplateEnvironment + second: {fileID: 2100000, guid: d11179e416c9b394c8176d36a0dcae52, type: 2} + materials: + importMaterials: 1 + materialName: 1 + materialSearch: 2 + materialLocation: 1 + animations: + legacyGenerateAnimations: 4 + bakeSimulation: 0 + resampleCurves: 1 + optimizeGameObjects: 0 + motionNodeName: + rigImportErrors: + rigImportWarnings: + animationImportErrors: + animationImportWarnings: + animationRetargetingWarnings: + animationDoRetargetingWarnings: 0 + importAnimatedCustomProperties: 0 + importConstraints: 0 + animationCompression: 1 + animationRotationError: 0.5 + animationPositionError: 0.5 + animationScaleError: 0.5 + animationWrapMode: 0 + extraExposedTransformPaths: [] + extraUserProperties: [] + clipAnimations: [] + isReadable: 1 + meshes: + lODScreenPercentages: [] + globalScale: 1 + meshCompression: 0 + addColliders: 0 + useSRGBMaterialColor: 1 + importVisibility: 1 + importBlendShapes: 1 + importCameras: 1 + importLights: 1 + swapUVChannels: 0 + generateSecondaryUV: 0 + useFileUnits: 1 + optimizeMeshForGPU: 1 + keepQuads: 0 + weldVertices: 1 + preserveHierarchy: 0 + indexFormat: 0 + secondaryUVAngleDistortion: 8 + secondaryUVAreaDistortion: 15.000001 + secondaryUVHardAngle: 88 + secondaryUVPackMargin: 4 + useFileScale: 1 + previousCalculatedGlobalScale: 1 + hasPreviousCalculatedGlobalScale: 0 + tangentSpace: + normalSmoothAngle: 60 + normalImportMode: 0 + tangentImportMode: 3 + normalCalculationMode: 4 + legacyComputeAllNormalsFromSmoothingGroupsWhenMeshHasBlendShapes: 0 + blendShapeNormalImportMode: 1 + normalSmoothingSource: 0 + importAnimation: 1 + copyAvatar: 0 + humanDescription: + serializedVersion: 2 + human: [] + skeleton: [] + armTwist: 0.5 + foreArmTwist: 0.5 + upperLegTwist: 0.5 + legTwist: 0.5 + armStretch: 0.05 + legStretch: 0.05 + feetSpacing: 0 + rootMotionBoneName: + hasTranslationDoF: 0 + hasExtraRoot: 0 + skeletonHasParents: 1 + lastHumanDescriptionAvatarSource: {instanceID: 0} + animationType: 0 + humanoidOversampling: 1 + additionalBone: 0 + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Models/StoneFlat.fbx" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Models/StoneFlat.fbx" new file mode 100644 index 00000000..f39d392d Binary files /dev/null and "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Models/StoneFlat.fbx" differ diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Models/StoneFlat.fbx.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Models/StoneFlat.fbx.meta" new file mode 100644 index 00000000..5624d84d --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Models/StoneFlat.fbx.meta" @@ -0,0 +1,103 @@ +fileFormatVersion: 2 +guid: c80f31023dcf9b34cbd0044505be4806 +ModelImporter: + serializedVersion: 23 + fileIDToRecycleName: + 100000: //RootNode + 400000: //RootNode + 2100000: lambert1 + 2300000: //RootNode + 3300000: //RootNode + 4300000: Rock1 + 4300002: pCube1 + externalObjects: + - first: + type: UnityEngine:Material + assembly: UnityEngine.CoreModule + name: lambert1 + second: {fileID: 2100000, guid: d11179e416c9b394c8176d36a0dcae52, type: 2} + materials: + importMaterials: 1 + materialName: 0 + materialSearch: 1 + materialLocation: 1 + animations: + legacyGenerateAnimations: 4 + bakeSimulation: 0 + resampleCurves: 1 + optimizeGameObjects: 0 + motionNodeName: + rigImportErrors: + rigImportWarnings: + animationImportErrors: + animationImportWarnings: + animationRetargetingWarnings: + animationDoRetargetingWarnings: 0 + importAnimatedCustomProperties: 0 + importConstraints: 0 + animationCompression: 1 + animationRotationError: 0.5 + animationPositionError: 0.5 + animationScaleError: 0.5 + animationWrapMode: 0 + extraExposedTransformPaths: [] + extraUserProperties: [] + clipAnimations: [] + isReadable: 1 + meshes: + lODScreenPercentages: [] + globalScale: 1 + meshCompression: 0 + addColliders: 0 + useSRGBMaterialColor: 1 + importVisibility: 1 + importBlendShapes: 1 + importCameras: 1 + importLights: 1 + swapUVChannels: 0 + generateSecondaryUV: 0 + useFileUnits: 1 + optimizeMeshForGPU: 1 + keepQuads: 0 + weldVertices: 1 + preserveHierarchy: 0 + indexFormat: 0 + secondaryUVAngleDistortion: 8 + secondaryUVAreaDistortion: 15.000001 + secondaryUVHardAngle: 88 + secondaryUVPackMargin: 4 + useFileScale: 1 + previousCalculatedGlobalScale: 1 + hasPreviousCalculatedGlobalScale: 0 + tangentSpace: + normalSmoothAngle: 60 + normalImportMode: 0 + tangentImportMode: 3 + normalCalculationMode: 4 + legacyComputeAllNormalsFromSmoothingGroupsWhenMeshHasBlendShapes: 0 + blendShapeNormalImportMode: 1 + normalSmoothingSource: 0 + importAnimation: 1 + copyAvatar: 0 + humanDescription: + serializedVersion: 2 + human: [] + skeleton: [] + armTwist: 0.5 + foreArmTwist: 0.5 + upperLegTwist: 0.5 + legTwist: 0.5 + armStretch: 0.05 + legStretch: 0.05 + feetSpacing: 0 + rootMotionBoneName: + hasTranslationDoF: 0 + hasExtraRoot: 0 + skeletonHasParents: 1 + lastHumanDescriptionAvatarSource: {instanceID: 0} + animationType: 0 + humanoidOversampling: 1 + additionalBone: 0 + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Models/StoneRound.fbx" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Models/StoneRound.fbx" new file mode 100644 index 00000000..90536725 Binary files /dev/null and "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Models/StoneRound.fbx" differ diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Models/StoneRound.fbx.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Models/StoneRound.fbx.meta" new file mode 100644 index 00000000..592dd704 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Models/StoneRound.fbx.meta" @@ -0,0 +1,103 @@ +fileFormatVersion: 2 +guid: 5e6dd9e33a8a1c748a582c8565e5f95f +ModelImporter: + serializedVersion: 23 + fileIDToRecycleName: + 100000: //RootNode + 400000: //RootNode + 2100000: lambert1 + 2300000: //RootNode + 3300000: //RootNode + 4300000: Rock2 + 4300002: pSphere1 + externalObjects: + - first: + type: UnityEngine:Material + assembly: UnityEngine.CoreModule + name: lambert1 + second: {fileID: 2100000, guid: d11179e416c9b394c8176d36a0dcae52, type: 2} + materials: + importMaterials: 1 + materialName: 0 + materialSearch: 1 + materialLocation: 1 + animations: + legacyGenerateAnimations: 4 + bakeSimulation: 0 + resampleCurves: 1 + optimizeGameObjects: 0 + motionNodeName: + rigImportErrors: + rigImportWarnings: + animationImportErrors: + animationImportWarnings: + animationRetargetingWarnings: + animationDoRetargetingWarnings: 0 + importAnimatedCustomProperties: 0 + importConstraints: 0 + animationCompression: 1 + animationRotationError: 0.5 + animationPositionError: 0.5 + animationScaleError: 0.5 + animationWrapMode: 0 + extraExposedTransformPaths: [] + extraUserProperties: [] + clipAnimations: [] + isReadable: 1 + meshes: + lODScreenPercentages: [] + globalScale: 1 + meshCompression: 0 + addColliders: 0 + useSRGBMaterialColor: 1 + importVisibility: 1 + importBlendShapes: 1 + importCameras: 1 + importLights: 1 + swapUVChannels: 0 + generateSecondaryUV: 0 + useFileUnits: 1 + optimizeMeshForGPU: 1 + keepQuads: 0 + weldVertices: 1 + preserveHierarchy: 0 + indexFormat: 0 + secondaryUVAngleDistortion: 8 + secondaryUVAreaDistortion: 15.000001 + secondaryUVHardAngle: 88 + secondaryUVPackMargin: 4 + useFileScale: 1 + previousCalculatedGlobalScale: 1 + hasPreviousCalculatedGlobalScale: 0 + tangentSpace: + normalSmoothAngle: 60 + normalImportMode: 0 + tangentImportMode: 3 + normalCalculationMode: 4 + legacyComputeAllNormalsFromSmoothingGroupsWhenMeshHasBlendShapes: 0 + blendShapeNormalImportMode: 1 + normalSmoothingSource: 0 + importAnimation: 1 + copyAvatar: 0 + humanDescription: + serializedVersion: 2 + human: [] + skeleton: [] + armTwist: 0.5 + foreArmTwist: 0.5 + upperLegTwist: 0.5 + legTwist: 0.5 + armStretch: 0.05 + legStretch: 0.05 + feetSpacing: 0 + rootMotionBoneName: + hasTranslationDoF: 0 + hasExtraRoot: 0 + skeletonHasParents: 1 + lastHumanDescriptionAvatarSource: {instanceID: 0} + animationType: 0 + humanoidOversampling: 1 + additionalBone: 0 + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Models/TrackCamber.fbx" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Models/TrackCamber.fbx" new file mode 100644 index 00000000..e0e8454e Binary files /dev/null and "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Models/TrackCamber.fbx" differ diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Models/TrackCamber.fbx.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Models/TrackCamber.fbx.meta" new file mode 100644 index 00000000..0c44c1c5 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Models/TrackCamber.fbx.meta" @@ -0,0 +1,112 @@ +fileFormatVersion: 2 +guid: 127b92ea3636da5478d4347afe2fb698 +ModelImporter: + serializedVersion: 23 + fileIDToRecycleName: + 100000: Fence + 100002: Track + 100004: //RootNode + 400000: Fence + 400002: Track + 400004: //RootNode + 2100000: TrackDark + 2100002: TrackMidLight + 2100004: TrackWhite + 2100006: TrackMidDark + 2300000: Fence + 2300002: Track + 3300000: Fence + 3300002: Track + 4300000: Track + 4300002: Fence + externalObjects: + - first: + type: UnityEngine:Material + assembly: UnityEngine.CoreModule + name: TrackDark + second: {fileID: 2100000, guid: d11179e416c9b394c8176d36a0dcae52, type: 2} + materials: + importMaterials: 1 + materialName: 1 + materialSearch: 2 + materialLocation: 1 + animations: + legacyGenerateAnimations: 4 + bakeSimulation: 0 + resampleCurves: 1 + optimizeGameObjects: 0 + motionNodeName: + rigImportErrors: + rigImportWarnings: + animationImportErrors: + animationImportWarnings: + animationRetargetingWarnings: + animationDoRetargetingWarnings: 0 + importAnimatedCustomProperties: 0 + importConstraints: 0 + animationCompression: 1 + animationRotationError: 0.5 + animationPositionError: 0.5 + animationScaleError: 0.5 + animationWrapMode: 0 + extraExposedTransformPaths: [] + extraUserProperties: [] + clipAnimations: [] + isReadable: 1 + meshes: + lODScreenPercentages: [] + globalScale: 1 + meshCompression: 0 + addColliders: 0 + useSRGBMaterialColor: 1 + importVisibility: 1 + importBlendShapes: 1 + importCameras: 1 + importLights: 1 + swapUVChannels: 0 + generateSecondaryUV: 0 + useFileUnits: 1 + optimizeMeshForGPU: 1 + keepQuads: 0 + weldVertices: 1 + preserveHierarchy: 0 + indexFormat: 0 + secondaryUVAngleDistortion: 8 + secondaryUVAreaDistortion: 15.000001 + secondaryUVHardAngle: 88 + secondaryUVPackMargin: 4 + useFileScale: 1 + previousCalculatedGlobalScale: 1 + hasPreviousCalculatedGlobalScale: 0 + tangentSpace: + normalSmoothAngle: 60 + normalImportMode: 0 + tangentImportMode: 3 + normalCalculationMode: 4 + legacyComputeAllNormalsFromSmoothingGroupsWhenMeshHasBlendShapes: 0 + blendShapeNormalImportMode: 1 + normalSmoothingSource: 0 + importAnimation: 1 + copyAvatar: 0 + humanDescription: + serializedVersion: 2 + human: [] + skeleton: [] + armTwist: 0.5 + foreArmTwist: 0.5 + upperLegTwist: 0.5 + legTwist: 0.5 + armStretch: 0.05 + legStretch: 0.05 + feetSpacing: 0 + rootMotionBoneName: + hasTranslationDoF: 0 + hasExtraRoot: 0 + skeletonHasParents: 1 + lastHumanDescriptionAvatarSource: {instanceID: 0} + animationType: 0 + humanoidOversampling: 1 + additionalBone: 0 + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Models/TrackCamberCurve.fbx" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Models/TrackCamberCurve.fbx" new file mode 100644 index 00000000..9a5fef6b Binary files /dev/null and "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Models/TrackCamberCurve.fbx" differ diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Models/TrackCamberCurve.fbx.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Models/TrackCamberCurve.fbx.meta" new file mode 100644 index 00000000..1be726c4 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Models/TrackCamberCurve.fbx.meta" @@ -0,0 +1,115 @@ +fileFormatVersion: 2 +guid: 3a78ab987181dc945be82cdb21028861 +ModelImporter: + serializedVersion: 23 + fileIDToRecycleName: + 100000: //RootNode + 100002: Fence + 100004: Track + 400000: //RootNode + 400002: Fence + 400004: Track + 2100000: TrackDark + 2100002: TrackMidLight + 2100004: TrackWhite + 2100006: TrackMidDark + 2300000: //RootNode + 2300002: Fence + 2300004: Track + 3300000: //RootNode + 3300002: Fence + 3300004: Track + 4300000: Track008 + 4300002: Track + 4300004: Fence + externalObjects: + - first: + type: UnityEngine:Material + assembly: UnityEngine.CoreModule + name: TrackMidLight + second: {fileID: 2100000, guid: d11179e416c9b394c8176d36a0dcae52, type: 2} + materials: + importMaterials: 1 + materialName: 1 + materialSearch: 2 + materialLocation: 1 + animations: + legacyGenerateAnimations: 4 + bakeSimulation: 0 + resampleCurves: 1 + optimizeGameObjects: 0 + motionNodeName: + rigImportErrors: + rigImportWarnings: + animationImportErrors: + animationImportWarnings: + animationRetargetingWarnings: + animationDoRetargetingWarnings: 0 + importAnimatedCustomProperties: 0 + importConstraints: 0 + animationCompression: 1 + animationRotationError: 0.5 + animationPositionError: 0.5 + animationScaleError: 0.5 + animationWrapMode: 0 + extraExposedTransformPaths: [] + extraUserProperties: [] + clipAnimations: [] + isReadable: 1 + meshes: + lODScreenPercentages: [] + globalScale: 1 + meshCompression: 0 + addColliders: 0 + useSRGBMaterialColor: 1 + importVisibility: 1 + importBlendShapes: 1 + importCameras: 1 + importLights: 1 + swapUVChannels: 0 + generateSecondaryUV: 0 + useFileUnits: 1 + optimizeMeshForGPU: 1 + keepQuads: 0 + weldVertices: 1 + preserveHierarchy: 0 + indexFormat: 0 + secondaryUVAngleDistortion: 8 + secondaryUVAreaDistortion: 15.000001 + secondaryUVHardAngle: 88 + secondaryUVPackMargin: 4 + useFileScale: 1 + previousCalculatedGlobalScale: 1 + hasPreviousCalculatedGlobalScale: 0 + tangentSpace: + normalSmoothAngle: 60 + normalImportMode: 0 + tangentImportMode: 3 + normalCalculationMode: 4 + legacyComputeAllNormalsFromSmoothingGroupsWhenMeshHasBlendShapes: 0 + blendShapeNormalImportMode: 1 + normalSmoothingSource: 0 + importAnimation: 1 + copyAvatar: 0 + humanDescription: + serializedVersion: 2 + human: [] + skeleton: [] + armTwist: 0.5 + foreArmTwist: 0.5 + upperLegTwist: 0.5 + legTwist: 0.5 + armStretch: 0.05 + legStretch: 0.05 + feetSpacing: 0 + rootMotionBoneName: + hasTranslationDoF: 0 + hasExtraRoot: 0 + skeletonHasParents: 1 + lastHumanDescriptionAvatarSource: {instanceID: 0} + animationType: 0 + humanoidOversampling: 1 + additionalBone: 0 + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Models/TrackCamberCurveMeshColliderGround.fbx" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Models/TrackCamberCurveMeshColliderGround.fbx" new file mode 100644 index 00000000..04c5a34a Binary files /dev/null and "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Models/TrackCamberCurveMeshColliderGround.fbx" differ diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Models/TrackCamberCurveMeshColliderGround.fbx.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Models/TrackCamberCurveMeshColliderGround.fbx.meta" new file mode 100644 index 00000000..86cdcfee --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Models/TrackCamberCurveMeshColliderGround.fbx.meta" @@ -0,0 +1,104 @@ +fileFormatVersion: 2 +guid: 120e82693d1e13644a7f5b990e783b01 +ModelImporter: + serializedVersion: 23 + fileIDToRecycleName: + 100000: Track1 + 100002: //RootNode + 400000: Track1 + 400002: //RootNode + 2100000: TrackDark + 2300000: Track1 + 3300000: Track1 + 4300000: Track1 + externalObjects: + - first: + type: UnityEngine:Material + assembly: UnityEngine.CoreModule + name: TrackDark + second: {fileID: 2100000, guid: d11179e416c9b394c8176d36a0dcae52, type: 2} + materials: + importMaterials: 0 + materialName: 1 + materialSearch: 1 + materialLocation: 1 + animations: + legacyGenerateAnimations: 4 + bakeSimulation: 0 + resampleCurves: 1 + optimizeGameObjects: 0 + motionNodeName: + rigImportErrors: + rigImportWarnings: + animationImportErrors: + animationImportWarnings: + animationRetargetingWarnings: + animationDoRetargetingWarnings: 0 + importAnimatedCustomProperties: 0 + importConstraints: 0 + animationCompression: 1 + animationRotationError: 0.5 + animationPositionError: 0.5 + animationScaleError: 0.5 + animationWrapMode: 0 + extraExposedTransformPaths: [] + extraUserProperties: [] + clipAnimations: [] + isReadable: 1 + meshes: + lODScreenPercentages: [] + globalScale: 1 + meshCompression: 0 + addColliders: 0 + useSRGBMaterialColor: 1 + importVisibility: 1 + importBlendShapes: 1 + importCameras: 1 + importLights: 1 + swapUVChannels: 0 + generateSecondaryUV: 0 + useFileUnits: 1 + optimizeMeshForGPU: 1 + keepQuads: 0 + weldVertices: 1 + preserveHierarchy: 0 + indexFormat: 0 + secondaryUVAngleDistortion: 8 + secondaryUVAreaDistortion: 15.000001 + secondaryUVHardAngle: 88 + secondaryUVPackMargin: 4 + useFileScale: 1 + previousCalculatedGlobalScale: 1 + hasPreviousCalculatedGlobalScale: 0 + tangentSpace: + normalSmoothAngle: 60 + normalImportMode: 0 + tangentImportMode: 3 + normalCalculationMode: 4 + legacyComputeAllNormalsFromSmoothingGroupsWhenMeshHasBlendShapes: 0 + blendShapeNormalImportMode: 1 + normalSmoothingSource: 0 + importAnimation: 1 + copyAvatar: 0 + humanDescription: + serializedVersion: 2 + human: [] + skeleton: [] + armTwist: 0.5 + foreArmTwist: 0.5 + upperLegTwist: 0.5 + legTwist: 0.5 + armStretch: 0.05 + legStretch: 0.05 + feetSpacing: 0 + rootMotionBoneName: + hasTranslationDoF: 0 + hasExtraRoot: 0 + skeletonHasParents: 1 + lastHumanDescriptionAvatarSource: {instanceID: 0} + animationType: 0 + humanoidOversampling: 1 + additionalBone: 0 + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Models/TrackCamberCurveMeshColliderWalls.fbx" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Models/TrackCamberCurveMeshColliderWalls.fbx" new file mode 100644 index 00000000..dff360f6 Binary files /dev/null and "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Models/TrackCamberCurveMeshColliderWalls.fbx" differ diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Models/TrackCamberCurveMeshColliderWalls.fbx.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Models/TrackCamberCurveMeshColliderWalls.fbx.meta" new file mode 100644 index 00000000..3188e9f7 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Models/TrackCamberCurveMeshColliderWalls.fbx.meta" @@ -0,0 +1,104 @@ +fileFormatVersion: 2 +guid: 7d98a46148b6a8843ac25d814f897473 +ModelImporter: + serializedVersion: 23 + fileIDToRecycleName: + 100000: Track + 100002: //RootNode + 400000: Track + 400002: //RootNode + 2100000: TrackDark + 2300000: Track + 3300000: Track + 4300000: Track + externalObjects: + - first: + type: UnityEngine:Material + assembly: UnityEngine.CoreModule + name: TrackDark + second: {fileID: 2100000, guid: d11179e416c9b394c8176d36a0dcae52, type: 2} + materials: + importMaterials: 0 + materialName: 1 + materialSearch: 2 + materialLocation: 1 + animations: + legacyGenerateAnimations: 4 + bakeSimulation: 0 + resampleCurves: 1 + optimizeGameObjects: 0 + motionNodeName: + rigImportErrors: + rigImportWarnings: + animationImportErrors: + animationImportWarnings: + animationRetargetingWarnings: + animationDoRetargetingWarnings: 0 + importAnimatedCustomProperties: 0 + importConstraints: 0 + animationCompression: 1 + animationRotationError: 0.5 + animationPositionError: 0.5 + animationScaleError: 0.5 + animationWrapMode: 0 + extraExposedTransformPaths: [] + extraUserProperties: [] + clipAnimations: [] + isReadable: 1 + meshes: + lODScreenPercentages: [] + globalScale: 1 + meshCompression: 0 + addColliders: 0 + useSRGBMaterialColor: 1 + importVisibility: 1 + importBlendShapes: 1 + importCameras: 1 + importLights: 1 + swapUVChannels: 0 + generateSecondaryUV: 0 + useFileUnits: 1 + optimizeMeshForGPU: 1 + keepQuads: 0 + weldVertices: 1 + preserveHierarchy: 0 + indexFormat: 0 + secondaryUVAngleDistortion: 8 + secondaryUVAreaDistortion: 15.000001 + secondaryUVHardAngle: 88 + secondaryUVPackMargin: 4 + useFileScale: 1 + previousCalculatedGlobalScale: 1 + hasPreviousCalculatedGlobalScale: 0 + tangentSpace: + normalSmoothAngle: 60 + normalImportMode: 0 + tangentImportMode: 3 + normalCalculationMode: 4 + legacyComputeAllNormalsFromSmoothingGroupsWhenMeshHasBlendShapes: 0 + blendShapeNormalImportMode: 1 + normalSmoothingSource: 0 + importAnimation: 1 + copyAvatar: 0 + humanDescription: + serializedVersion: 2 + human: [] + skeleton: [] + armTwist: 0.5 + foreArmTwist: 0.5 + upperLegTwist: 0.5 + legTwist: 0.5 + armStretch: 0.05 + legStretch: 0.05 + feetSpacing: 0 + rootMotionBoneName: + hasTranslationDoF: 0 + hasExtraRoot: 0 + skeletonHasParents: 1 + lastHumanDescriptionAvatarSource: {instanceID: 0} + animationType: 0 + humanoidOversampling: 1 + additionalBone: 0 + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Models/TrackCamberMeshColliderGround.fbx" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Models/TrackCamberMeshColliderGround.fbx" new file mode 100644 index 00000000..a924b948 Binary files /dev/null and "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Models/TrackCamberMeshColliderGround.fbx" differ diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Models/TrackCamberMeshColliderGround.fbx.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Models/TrackCamberMeshColliderGround.fbx.meta" new file mode 100644 index 00000000..c5844d04 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Models/TrackCamberMeshColliderGround.fbx.meta" @@ -0,0 +1,104 @@ +fileFormatVersion: 2 +guid: 74fd08689db02b94a8cac89c8bb7f35c +ModelImporter: + serializedVersion: 23 + fileIDToRecycleName: + 100000: //RootNode + 100002: TrackGround + 400000: //RootNode + 400002: TrackGround + 2100000: TrackDark + 2300000: TrackGround + 3300000: TrackGround + 4300000: TrackGround + externalObjects: + - first: + type: UnityEngine:Material + assembly: UnityEngine.CoreModule + name: TrackDark + second: {fileID: 2100000, guid: d11179e416c9b394c8176d36a0dcae52, type: 2} + materials: + importMaterials: 0 + materialName: 1 + materialSearch: 2 + materialLocation: 1 + animations: + legacyGenerateAnimations: 4 + bakeSimulation: 0 + resampleCurves: 1 + optimizeGameObjects: 0 + motionNodeName: + rigImportErrors: + rigImportWarnings: + animationImportErrors: + animationImportWarnings: + animationRetargetingWarnings: + animationDoRetargetingWarnings: 0 + importAnimatedCustomProperties: 0 + importConstraints: 0 + animationCompression: 1 + animationRotationError: 0.5 + animationPositionError: 0.5 + animationScaleError: 0.5 + animationWrapMode: 0 + extraExposedTransformPaths: [] + extraUserProperties: [] + clipAnimations: [] + isReadable: 1 + meshes: + lODScreenPercentages: [] + globalScale: 1 + meshCompression: 0 + addColliders: 0 + useSRGBMaterialColor: 1 + importVisibility: 1 + importBlendShapes: 1 + importCameras: 1 + importLights: 1 + swapUVChannels: 0 + generateSecondaryUV: 0 + useFileUnits: 1 + optimizeMeshForGPU: 1 + keepQuads: 0 + weldVertices: 1 + preserveHierarchy: 0 + indexFormat: 0 + secondaryUVAngleDistortion: 8 + secondaryUVAreaDistortion: 15.000001 + secondaryUVHardAngle: 88 + secondaryUVPackMargin: 4 + useFileScale: 1 + previousCalculatedGlobalScale: 1 + hasPreviousCalculatedGlobalScale: 0 + tangentSpace: + normalSmoothAngle: 60 + normalImportMode: 0 + tangentImportMode: 3 + normalCalculationMode: 4 + legacyComputeAllNormalsFromSmoothingGroupsWhenMeshHasBlendShapes: 0 + blendShapeNormalImportMode: 1 + normalSmoothingSource: 0 + importAnimation: 1 + copyAvatar: 0 + humanDescription: + serializedVersion: 2 + human: [] + skeleton: [] + armTwist: 0.5 + foreArmTwist: 0.5 + upperLegTwist: 0.5 + legTwist: 0.5 + armStretch: 0.05 + legStretch: 0.05 + feetSpacing: 0 + rootMotionBoneName: + hasTranslationDoF: 0 + hasExtraRoot: 0 + skeletonHasParents: 1 + lastHumanDescriptionAvatarSource: {instanceID: 0} + animationType: 0 + humanoidOversampling: 1 + additionalBone: 0 + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Models/TrackCamberMeshColliderWalls.fbx" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Models/TrackCamberMeshColliderWalls.fbx" new file mode 100644 index 00000000..952deb98 Binary files /dev/null and "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Models/TrackCamberMeshColliderWalls.fbx" differ diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Models/TrackCamberMeshColliderWalls.fbx.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Models/TrackCamberMeshColliderWalls.fbx.meta" new file mode 100644 index 00000000..c3df70b1 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Models/TrackCamberMeshColliderWalls.fbx.meta" @@ -0,0 +1,104 @@ +fileFormatVersion: 2 +guid: f5a44503c018d324580820af937c9987 +ModelImporter: + serializedVersion: 23 + fileIDToRecycleName: + 100000: //RootNode + 100002: TrackWall + 400000: //RootNode + 400002: TrackWall + 2100000: TrackDark + 2300000: TrackWall + 3300000: TrackWall + 4300000: TrackWall + externalObjects: + - first: + type: UnityEngine:Material + assembly: UnityEngine.CoreModule + name: TrackDark + second: {fileID: 2100000, guid: d11179e416c9b394c8176d36a0dcae52, type: 2} + materials: + importMaterials: 0 + materialName: 1 + materialSearch: 2 + materialLocation: 1 + animations: + legacyGenerateAnimations: 4 + bakeSimulation: 0 + resampleCurves: 1 + optimizeGameObjects: 0 + motionNodeName: + rigImportErrors: + rigImportWarnings: + animationImportErrors: + animationImportWarnings: + animationRetargetingWarnings: + animationDoRetargetingWarnings: 0 + importAnimatedCustomProperties: 0 + importConstraints: 0 + animationCompression: 1 + animationRotationError: 0.5 + animationPositionError: 0.5 + animationScaleError: 0.5 + animationWrapMode: 0 + extraExposedTransformPaths: [] + extraUserProperties: [] + clipAnimations: [] + isReadable: 1 + meshes: + lODScreenPercentages: [] + globalScale: 1 + meshCompression: 0 + addColliders: 0 + useSRGBMaterialColor: 1 + importVisibility: 1 + importBlendShapes: 1 + importCameras: 1 + importLights: 1 + swapUVChannels: 0 + generateSecondaryUV: 0 + useFileUnits: 1 + optimizeMeshForGPU: 1 + keepQuads: 0 + weldVertices: 1 + preserveHierarchy: 0 + indexFormat: 0 + secondaryUVAngleDistortion: 8 + secondaryUVAreaDistortion: 15.000001 + secondaryUVHardAngle: 88 + secondaryUVPackMargin: 4 + useFileScale: 1 + previousCalculatedGlobalScale: 1 + hasPreviousCalculatedGlobalScale: 0 + tangentSpace: + normalSmoothAngle: 60 + normalImportMode: 0 + tangentImportMode: 3 + normalCalculationMode: 4 + legacyComputeAllNormalsFromSmoothingGroupsWhenMeshHasBlendShapes: 0 + blendShapeNormalImportMode: 1 + normalSmoothingSource: 0 + importAnimation: 1 + copyAvatar: 0 + humanDescription: + serializedVersion: 2 + human: [] + skeleton: [] + armTwist: 0.5 + foreArmTwist: 0.5 + upperLegTwist: 0.5 + legTwist: 0.5 + armStretch: 0.05 + legStretch: 0.05 + feetSpacing: 0 + rootMotionBoneName: + hasTranslationDoF: 0 + hasExtraRoot: 0 + skeletonHasParents: 1 + lastHumanDescriptionAvatarSource: {instanceID: 0} + animationType: 0 + humanoidOversampling: 1 + additionalBone: 0 + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Models/TrackCurveBig.fbx" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Models/TrackCurveBig.fbx" new file mode 100644 index 00000000..38b3feb5 Binary files /dev/null and "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Models/TrackCurveBig.fbx" differ diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Models/TrackCurveBig.fbx.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Models/TrackCurveBig.fbx.meta" new file mode 100644 index 00000000..8ce4fabe --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Models/TrackCurveBig.fbx.meta" @@ -0,0 +1,127 @@ +fileFormatVersion: 2 +guid: ea8028981c410bd43a9a7467f73c6591 +ModelImporter: + serializedVersion: 23 + fileIDToRecycleName: + 100000: Fence + 100002: Track + 100004: //RootNode + 400000: Fence + 400002: Track + 400004: //RootNode + 2100000: TrackDark + 2100002: TrackMidLight + 2100004: TrackWhite + 2300000: Fence + 2300002: Track + 3300000: Fence + 3300002: Track + 4300000: Track + 4300002: Fence + 9500000: //RootNode + externalObjects: + - first: + type: UnityEngine:Material + assembly: UnityEngine.CoreModule + name: TrackDark + second: {fileID: 2100000, guid: d11179e416c9b394c8176d36a0dcae52, type: 2} + - first: + type: UnityEngine:Material + assembly: UnityEngine.CoreModule + name: TrackMidDark + second: {fileID: 2100000, guid: c700b835272c5834e98f6aeba34d207f, type: 2} + - first: + type: UnityEngine:Material + assembly: UnityEngine.CoreModule + name: TrackMidLight + second: {fileID: 2100000, guid: 3ad4b4e6678309548ba733a6c7c4da62, type: 2} + - first: + type: UnityEngine:Material + assembly: UnityEngine.CoreModule + name: TrackWhite + second: {fileID: 2100000, guid: c1fb7d3a27a67b947bb2b2ab391072b0, type: 2} + materials: + importMaterials: 1 + materialName: 1 + materialSearch: 2 + materialLocation: 1 + animations: + legacyGenerateAnimations: 4 + bakeSimulation: 0 + resampleCurves: 1 + optimizeGameObjects: 0 + motionNodeName: + rigImportErrors: + rigImportWarnings: + animationImportErrors: + animationImportWarnings: + animationRetargetingWarnings: + animationDoRetargetingWarnings: 0 + importAnimatedCustomProperties: 0 + importConstraints: 0 + animationCompression: 1 + animationRotationError: 0.5 + animationPositionError: 0.5 + animationScaleError: 0.5 + animationWrapMode: 0 + extraExposedTransformPaths: [] + extraUserProperties: [] + clipAnimations: [] + isReadable: 1 + meshes: + lODScreenPercentages: [] + globalScale: 1 + meshCompression: 0 + addColliders: 0 + useSRGBMaterialColor: 1 + importVisibility: 1 + importBlendShapes: 1 + importCameras: 1 + importLights: 1 + swapUVChannels: 0 + generateSecondaryUV: 0 + useFileUnits: 1 + optimizeMeshForGPU: 1 + keepQuads: 0 + weldVertices: 1 + preserveHierarchy: 0 + indexFormat: 0 + secondaryUVAngleDistortion: 8 + secondaryUVAreaDistortion: 15.000001 + secondaryUVHardAngle: 88 + secondaryUVPackMargin: 4 + useFileScale: 1 + previousCalculatedGlobalScale: 0.01 + hasPreviousCalculatedGlobalScale: 1 + tangentSpace: + normalSmoothAngle: 60 + normalImportMode: 0 + tangentImportMode: 3 + normalCalculationMode: 4 + legacyComputeAllNormalsFromSmoothingGroupsWhenMeshHasBlendShapes: 0 + blendShapeNormalImportMode: 1 + normalSmoothingSource: 0 + importAnimation: 1 + copyAvatar: 0 + humanDescription: + serializedVersion: 2 + human: [] + skeleton: [] + armTwist: 0.5 + foreArmTwist: 0.5 + upperLegTwist: 0.5 + legTwist: 0.5 + armStretch: 0.05 + legStretch: 0.05 + feetSpacing: 0 + rootMotionBoneName: + hasTranslationDoF: 0 + hasExtraRoot: 0 + skeletonHasParents: 1 + lastHumanDescriptionAvatarSource: {instanceID: 0} + animationType: 2 + humanoidOversampling: 1 + additionalBone: 0 + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Models/TrackCurveBigMeshColliderGround.fbx" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Models/TrackCurveBigMeshColliderGround.fbx" new file mode 100644 index 00000000..844df1c7 Binary files /dev/null and "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Models/TrackCurveBigMeshColliderGround.fbx" differ diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Models/TrackCurveBigMeshColliderGround.fbx.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Models/TrackCurveBigMeshColliderGround.fbx.meta" new file mode 100644 index 00000000..1ea50c4a --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Models/TrackCurveBigMeshColliderGround.fbx.meta" @@ -0,0 +1,104 @@ +fileFormatVersion: 2 +guid: e7dd2bb6af3d71e419b224eeb9a39dd5 +ModelImporter: + serializedVersion: 23 + fileIDToRecycleName: + 100000: Track + 100002: //RootNode + 400000: Track + 400002: //RootNode + 2100000: TrackDark + 2300000: Track + 3300000: Track + 4300000: Track + externalObjects: + - first: + type: UnityEngine:Material + assembly: UnityEngine.CoreModule + name: TrackDark + second: {fileID: 2100000, guid: d11179e416c9b394c8176d36a0dcae52, type: 2} + materials: + importMaterials: 0 + materialName: 0 + materialSearch: 1 + materialLocation: 1 + animations: + legacyGenerateAnimations: 4 + bakeSimulation: 0 + resampleCurves: 1 + optimizeGameObjects: 0 + motionNodeName: + rigImportErrors: + rigImportWarnings: + animationImportErrors: + animationImportWarnings: + animationRetargetingWarnings: + animationDoRetargetingWarnings: 0 + importAnimatedCustomProperties: 0 + importConstraints: 0 + animationCompression: 1 + animationRotationError: 0.5 + animationPositionError: 0.5 + animationScaleError: 0.5 + animationWrapMode: 0 + extraExposedTransformPaths: [] + extraUserProperties: [] + clipAnimations: [] + isReadable: 1 + meshes: + lODScreenPercentages: [] + globalScale: 1 + meshCompression: 0 + addColliders: 0 + useSRGBMaterialColor: 1 + importVisibility: 1 + importBlendShapes: 1 + importCameras: 1 + importLights: 1 + swapUVChannels: 0 + generateSecondaryUV: 0 + useFileUnits: 1 + optimizeMeshForGPU: 1 + keepQuads: 0 + weldVertices: 1 + preserveHierarchy: 0 + indexFormat: 0 + secondaryUVAngleDistortion: 8 + secondaryUVAreaDistortion: 15.000001 + secondaryUVHardAngle: 88 + secondaryUVPackMargin: 4 + useFileScale: 1 + previousCalculatedGlobalScale: 1 + hasPreviousCalculatedGlobalScale: 0 + tangentSpace: + normalSmoothAngle: 60 + normalImportMode: 0 + tangentImportMode: 3 + normalCalculationMode: 4 + legacyComputeAllNormalsFromSmoothingGroupsWhenMeshHasBlendShapes: 0 + blendShapeNormalImportMode: 1 + normalSmoothingSource: 0 + importAnimation: 1 + copyAvatar: 0 + humanDescription: + serializedVersion: 2 + human: [] + skeleton: [] + armTwist: 0.5 + foreArmTwist: 0.5 + upperLegTwist: 0.5 + legTwist: 0.5 + armStretch: 0.05 + legStretch: 0.05 + feetSpacing: 0 + rootMotionBoneName: + hasTranslationDoF: 0 + hasExtraRoot: 0 + skeletonHasParents: 1 + lastHumanDescriptionAvatarSource: {instanceID: 0} + animationType: 0 + humanoidOversampling: 1 + additionalBone: 0 + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Models/TrackCurveBigMeshColliderWalls.fbx" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Models/TrackCurveBigMeshColliderWalls.fbx" new file mode 100644 index 00000000..631c6c65 Binary files /dev/null and "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Models/TrackCurveBigMeshColliderWalls.fbx" differ diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Models/TrackCurveBigMeshColliderWalls.fbx.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Models/TrackCurveBigMeshColliderWalls.fbx.meta" new file mode 100644 index 00000000..1ff0766b --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Models/TrackCurveBigMeshColliderWalls.fbx.meta" @@ -0,0 +1,104 @@ +fileFormatVersion: 2 +guid: 844655fa88a548c4badc07cc3d5c09e8 +ModelImporter: + serializedVersion: 23 + fileIDToRecycleName: + 100000: Track1 + 100002: //RootNode + 400000: Track1 + 400002: //RootNode + 2100000: TrackDark + 2300000: Track1 + 3300000: Track1 + 4300000: Track1 + externalObjects: + - first: + type: UnityEngine:Material + assembly: UnityEngine.CoreModule + name: TrackDark + second: {fileID: 2100000, guid: d11179e416c9b394c8176d36a0dcae52, type: 2} + materials: + importMaterials: 0 + materialName: 0 + materialSearch: 1 + materialLocation: 1 + animations: + legacyGenerateAnimations: 4 + bakeSimulation: 0 + resampleCurves: 1 + optimizeGameObjects: 0 + motionNodeName: + rigImportErrors: + rigImportWarnings: + animationImportErrors: + animationImportWarnings: + animationRetargetingWarnings: + animationDoRetargetingWarnings: 0 + importAnimatedCustomProperties: 0 + importConstraints: 0 + animationCompression: 1 + animationRotationError: 0.5 + animationPositionError: 0.5 + animationScaleError: 0.5 + animationWrapMode: 0 + extraExposedTransformPaths: [] + extraUserProperties: [] + clipAnimations: [] + isReadable: 1 + meshes: + lODScreenPercentages: [] + globalScale: 1 + meshCompression: 0 + addColliders: 0 + useSRGBMaterialColor: 1 + importVisibility: 1 + importBlendShapes: 1 + importCameras: 1 + importLights: 1 + swapUVChannels: 0 + generateSecondaryUV: 0 + useFileUnits: 1 + optimizeMeshForGPU: 1 + keepQuads: 0 + weldVertices: 1 + preserveHierarchy: 0 + indexFormat: 0 + secondaryUVAngleDistortion: 8 + secondaryUVAreaDistortion: 15.000001 + secondaryUVHardAngle: 88 + secondaryUVPackMargin: 4 + useFileScale: 1 + previousCalculatedGlobalScale: 1 + hasPreviousCalculatedGlobalScale: 0 + tangentSpace: + normalSmoothAngle: 60 + normalImportMode: 0 + tangentImportMode: 3 + normalCalculationMode: 4 + legacyComputeAllNormalsFromSmoothingGroupsWhenMeshHasBlendShapes: 0 + blendShapeNormalImportMode: 1 + normalSmoothingSource: 0 + importAnimation: 1 + copyAvatar: 0 + humanDescription: + serializedVersion: 2 + human: [] + skeleton: [] + armTwist: 0.5 + foreArmTwist: 0.5 + upperLegTwist: 0.5 + legTwist: 0.5 + armStretch: 0.05 + legStretch: 0.05 + feetSpacing: 0 + rootMotionBoneName: + hasTranslationDoF: 0 + hasExtraRoot: 0 + skeletonHasParents: 1 + lastHumanDescriptionAvatarSource: {instanceID: 0} + animationType: 0 + humanoidOversampling: 1 + additionalBone: 0 + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Models/TrackCurveMedium.fbx" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Models/TrackCurveMedium.fbx" new file mode 100644 index 00000000..57e02742 Binary files /dev/null and "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Models/TrackCurveMedium.fbx" differ diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Models/TrackCurveMedium.fbx.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Models/TrackCurveMedium.fbx.meta" new file mode 100644 index 00000000..ebb46547 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Models/TrackCurveMedium.fbx.meta" @@ -0,0 +1,112 @@ +fileFormatVersion: 2 +guid: cf8b46f3b71641b42b2e8cf974e9c644 +ModelImporter: + serializedVersion: 23 + fileIDToRecycleName: + 100000: Fence + 100002: Track + 100004: //RootNode + 400000: Fence + 400002: Track + 400004: //RootNode + 2100000: TrackDark + 2100002: TrackMidLight + 2100004: TrackWhite + 2100006: TrackMidDark + 2300000: Fence + 2300002: Track + 3300000: Fence + 3300002: Track + 4300000: Track + 4300002: Fence + externalObjects: + - first: + type: UnityEngine:Material + assembly: UnityEngine.CoreModule + name: TrackDark + second: {fileID: 2100000, guid: d11179e416c9b394c8176d36a0dcae52, type: 2} + materials: + importMaterials: 1 + materialName: 1 + materialSearch: 2 + materialLocation: 1 + animations: + legacyGenerateAnimations: 4 + bakeSimulation: 0 + resampleCurves: 1 + optimizeGameObjects: 0 + motionNodeName: + rigImportErrors: + rigImportWarnings: + animationImportErrors: + animationImportWarnings: + animationRetargetingWarnings: + animationDoRetargetingWarnings: 0 + importAnimatedCustomProperties: 0 + importConstraints: 0 + animationCompression: 1 + animationRotationError: 0.5 + animationPositionError: 0.5 + animationScaleError: 0.5 + animationWrapMode: 0 + extraExposedTransformPaths: [] + extraUserProperties: [] + clipAnimations: [] + isReadable: 1 + meshes: + lODScreenPercentages: [] + globalScale: 1 + meshCompression: 0 + addColliders: 0 + useSRGBMaterialColor: 1 + importVisibility: 1 + importBlendShapes: 1 + importCameras: 1 + importLights: 1 + swapUVChannels: 0 + generateSecondaryUV: 0 + useFileUnits: 1 + optimizeMeshForGPU: 1 + keepQuads: 0 + weldVertices: 1 + preserveHierarchy: 0 + indexFormat: 0 + secondaryUVAngleDistortion: 8 + secondaryUVAreaDistortion: 15.000001 + secondaryUVHardAngle: 88 + secondaryUVPackMargin: 4 + useFileScale: 1 + previousCalculatedGlobalScale: 1 + hasPreviousCalculatedGlobalScale: 0 + tangentSpace: + normalSmoothAngle: 60 + normalImportMode: 0 + tangentImportMode: 3 + normalCalculationMode: 4 + legacyComputeAllNormalsFromSmoothingGroupsWhenMeshHasBlendShapes: 0 + blendShapeNormalImportMode: 1 + normalSmoothingSource: 0 + importAnimation: 1 + copyAvatar: 0 + humanDescription: + serializedVersion: 2 + human: [] + skeleton: [] + armTwist: 0.5 + foreArmTwist: 0.5 + upperLegTwist: 0.5 + legTwist: 0.5 + armStretch: 0.05 + legStretch: 0.05 + feetSpacing: 0 + rootMotionBoneName: + hasTranslationDoF: 0 + hasExtraRoot: 0 + skeletonHasParents: 1 + lastHumanDescriptionAvatarSource: {instanceID: 0} + animationType: 0 + humanoidOversampling: 1 + additionalBone: 0 + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Models/TrackCurveMediumMeshColliderGround.fbx" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Models/TrackCurveMediumMeshColliderGround.fbx" new file mode 100644 index 00000000..31a9f20c Binary files /dev/null and "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Models/TrackCurveMediumMeshColliderGround.fbx" differ diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Models/TrackCurveMediumMeshColliderGround.fbx.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Models/TrackCurveMediumMeshColliderGround.fbx.meta" new file mode 100644 index 00000000..2e496496 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Models/TrackCurveMediumMeshColliderGround.fbx.meta" @@ -0,0 +1,104 @@ +fileFormatVersion: 2 +guid: 4dab2a37e1d72794cbd731aacb7847dd +ModelImporter: + serializedVersion: 23 + fileIDToRecycleName: + 100000: Track + 100002: //RootNode + 400000: Track + 400002: //RootNode + 2100000: TrackDark + 2300000: Track + 3300000: Track + 4300000: Track + externalObjects: + - first: + type: UnityEngine:Material + assembly: UnityEngine.CoreModule + name: TrackDark + second: {fileID: 2100000, guid: d11179e416c9b394c8176d36a0dcae52, type: 2} + materials: + importMaterials: 0 + materialName: 0 + materialSearch: 1 + materialLocation: 1 + animations: + legacyGenerateAnimations: 4 + bakeSimulation: 0 + resampleCurves: 1 + optimizeGameObjects: 0 + motionNodeName: + rigImportErrors: + rigImportWarnings: + animationImportErrors: + animationImportWarnings: + animationRetargetingWarnings: + animationDoRetargetingWarnings: 0 + importAnimatedCustomProperties: 0 + importConstraints: 0 + animationCompression: 1 + animationRotationError: 0.5 + animationPositionError: 0.5 + animationScaleError: 0.5 + animationWrapMode: 0 + extraExposedTransformPaths: [] + extraUserProperties: [] + clipAnimations: [] + isReadable: 1 + meshes: + lODScreenPercentages: [] + globalScale: 1 + meshCompression: 0 + addColliders: 0 + useSRGBMaterialColor: 1 + importVisibility: 1 + importBlendShapes: 1 + importCameras: 1 + importLights: 1 + swapUVChannels: 0 + generateSecondaryUV: 0 + useFileUnits: 1 + optimizeMeshForGPU: 1 + keepQuads: 0 + weldVertices: 1 + preserveHierarchy: 0 + indexFormat: 0 + secondaryUVAngleDistortion: 8 + secondaryUVAreaDistortion: 15.000001 + secondaryUVHardAngle: 88 + secondaryUVPackMargin: 4 + useFileScale: 1 + previousCalculatedGlobalScale: 1 + hasPreviousCalculatedGlobalScale: 0 + tangentSpace: + normalSmoothAngle: 60 + normalImportMode: 0 + tangentImportMode: 3 + normalCalculationMode: 4 + legacyComputeAllNormalsFromSmoothingGroupsWhenMeshHasBlendShapes: 0 + blendShapeNormalImportMode: 1 + normalSmoothingSource: 0 + importAnimation: 1 + copyAvatar: 0 + humanDescription: + serializedVersion: 2 + human: [] + skeleton: [] + armTwist: 0.5 + foreArmTwist: 0.5 + upperLegTwist: 0.5 + legTwist: 0.5 + armStretch: 0.05 + legStretch: 0.05 + feetSpacing: 0 + rootMotionBoneName: + hasTranslationDoF: 0 + hasExtraRoot: 0 + skeletonHasParents: 1 + lastHumanDescriptionAvatarSource: {instanceID: 0} + animationType: 0 + humanoidOversampling: 1 + additionalBone: 0 + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Models/TrackCurveMediumMeshColliderWalls.fbx" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Models/TrackCurveMediumMeshColliderWalls.fbx" new file mode 100644 index 00000000..1240c7c2 Binary files /dev/null and "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Models/TrackCurveMediumMeshColliderWalls.fbx" differ diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Models/TrackCurveMediumMeshColliderWalls.fbx.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Models/TrackCurveMediumMeshColliderWalls.fbx.meta" new file mode 100644 index 00000000..2bd4bef4 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Models/TrackCurveMediumMeshColliderWalls.fbx.meta" @@ -0,0 +1,104 @@ +fileFormatVersion: 2 +guid: 9d5b4d3ee36fe2248b8f8178ea494662 +ModelImporter: + serializedVersion: 23 + fileIDToRecycleName: + 100000: Track1 + 100002: //RootNode + 400000: Track1 + 400002: //RootNode + 2100000: TrackDark + 2300000: Track1 + 3300000: Track1 + 4300000: Track1 + externalObjects: + - first: + type: UnityEngine:Material + assembly: UnityEngine.CoreModule + name: TrackDark + second: {fileID: 2100000, guid: d11179e416c9b394c8176d36a0dcae52, type: 2} + materials: + importMaterials: 0 + materialName: 0 + materialSearch: 1 + materialLocation: 1 + animations: + legacyGenerateAnimations: 4 + bakeSimulation: 0 + resampleCurves: 1 + optimizeGameObjects: 0 + motionNodeName: + rigImportErrors: + rigImportWarnings: + animationImportErrors: + animationImportWarnings: + animationRetargetingWarnings: + animationDoRetargetingWarnings: 0 + importAnimatedCustomProperties: 0 + importConstraints: 0 + animationCompression: 1 + animationRotationError: 0.5 + animationPositionError: 0.5 + animationScaleError: 0.5 + animationWrapMode: 0 + extraExposedTransformPaths: [] + extraUserProperties: [] + clipAnimations: [] + isReadable: 1 + meshes: + lODScreenPercentages: [] + globalScale: 1 + meshCompression: 0 + addColliders: 0 + useSRGBMaterialColor: 1 + importVisibility: 1 + importBlendShapes: 1 + importCameras: 1 + importLights: 1 + swapUVChannels: 0 + generateSecondaryUV: 0 + useFileUnits: 1 + optimizeMeshForGPU: 1 + keepQuads: 0 + weldVertices: 1 + preserveHierarchy: 0 + indexFormat: 0 + secondaryUVAngleDistortion: 8 + secondaryUVAreaDistortion: 15.000001 + secondaryUVHardAngle: 88 + secondaryUVPackMargin: 4 + useFileScale: 1 + previousCalculatedGlobalScale: 1 + hasPreviousCalculatedGlobalScale: 0 + tangentSpace: + normalSmoothAngle: 60 + normalImportMode: 0 + tangentImportMode: 3 + normalCalculationMode: 4 + legacyComputeAllNormalsFromSmoothingGroupsWhenMeshHasBlendShapes: 0 + blendShapeNormalImportMode: 1 + normalSmoothingSource: 0 + importAnimation: 1 + copyAvatar: 0 + humanDescription: + serializedVersion: 2 + human: [] + skeleton: [] + armTwist: 0.5 + foreArmTwist: 0.5 + upperLegTwist: 0.5 + legTwist: 0.5 + armStretch: 0.05 + legStretch: 0.05 + feetSpacing: 0 + rootMotionBoneName: + hasTranslationDoF: 0 + hasExtraRoot: 0 + skeletonHasParents: 1 + lastHumanDescriptionAvatarSource: {instanceID: 0} + animationType: 0 + humanoidOversampling: 1 + additionalBone: 0 + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Models/TrackCurveSmall.fbx" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Models/TrackCurveSmall.fbx" new file mode 100644 index 00000000..47a99549 Binary files /dev/null and "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Models/TrackCurveSmall.fbx" differ diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Models/TrackCurveSmall.fbx.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Models/TrackCurveSmall.fbx.meta" new file mode 100644 index 00000000..fc246e18 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Models/TrackCurveSmall.fbx.meta" @@ -0,0 +1,112 @@ +fileFormatVersion: 2 +guid: 6aba5d5cbbb6df346ba45c2991fcaf00 +ModelImporter: + serializedVersion: 23 + fileIDToRecycleName: + 100000: Fence + 100002: Track + 100004: //RootNode + 400000: Fence + 400002: Track + 400004: //RootNode + 2100000: TrackDark + 2100002: TrackMidLight + 2100004: TrackWhite + 2100006: TrackMidDark + 2300000: Fence + 2300002: Track + 3300000: Fence + 3300002: Track + 4300000: Track + 4300002: Fence + externalObjects: + - first: + type: UnityEngine:Material + assembly: UnityEngine.CoreModule + name: TemplateEnvironment + second: {fileID: 2100000, guid: d11179e416c9b394c8176d36a0dcae52, type: 2} + materials: + importMaterials: 1 + materialName: 1 + materialSearch: 2 + materialLocation: 1 + animations: + legacyGenerateAnimations: 4 + bakeSimulation: 0 + resampleCurves: 1 + optimizeGameObjects: 0 + motionNodeName: + rigImportErrors: + rigImportWarnings: + animationImportErrors: + animationImportWarnings: + animationRetargetingWarnings: + animationDoRetargetingWarnings: 0 + importAnimatedCustomProperties: 0 + importConstraints: 0 + animationCompression: 1 + animationRotationError: 0.5 + animationPositionError: 0.5 + animationScaleError: 0.5 + animationWrapMode: 0 + extraExposedTransformPaths: [] + extraUserProperties: [] + clipAnimations: [] + isReadable: 1 + meshes: + lODScreenPercentages: [] + globalScale: 1 + meshCompression: 0 + addColliders: 0 + useSRGBMaterialColor: 1 + importVisibility: 1 + importBlendShapes: 1 + importCameras: 1 + importLights: 1 + swapUVChannels: 0 + generateSecondaryUV: 0 + useFileUnits: 1 + optimizeMeshForGPU: 1 + keepQuads: 0 + weldVertices: 1 + preserveHierarchy: 0 + indexFormat: 0 + secondaryUVAngleDistortion: 8 + secondaryUVAreaDistortion: 15.000001 + secondaryUVHardAngle: 88 + secondaryUVPackMargin: 4 + useFileScale: 1 + previousCalculatedGlobalScale: 1 + hasPreviousCalculatedGlobalScale: 0 + tangentSpace: + normalSmoothAngle: 60 + normalImportMode: 0 + tangentImportMode: 3 + normalCalculationMode: 4 + legacyComputeAllNormalsFromSmoothingGroupsWhenMeshHasBlendShapes: 0 + blendShapeNormalImportMode: 1 + normalSmoothingSource: 0 + importAnimation: 1 + copyAvatar: 0 + humanDescription: + serializedVersion: 2 + human: [] + skeleton: [] + armTwist: 0.5 + foreArmTwist: 0.5 + upperLegTwist: 0.5 + legTwist: 0.5 + armStretch: 0.05 + legStretch: 0.05 + feetSpacing: 0 + rootMotionBoneName: + hasTranslationDoF: 0 + hasExtraRoot: 0 + skeletonHasParents: 1 + lastHumanDescriptionAvatarSource: {instanceID: 0} + animationType: 0 + humanoidOversampling: 1 + additionalBone: 0 + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Models/TrackCurveSmallMeshColliderGround.fbx" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Models/TrackCurveSmallMeshColliderGround.fbx" new file mode 100644 index 00000000..2c0c2bf4 Binary files /dev/null and "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Models/TrackCurveSmallMeshColliderGround.fbx" differ diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Models/TrackCurveSmallMeshColliderGround.fbx.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Models/TrackCurveSmallMeshColliderGround.fbx.meta" new file mode 100644 index 00000000..1dd8b869 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Models/TrackCurveSmallMeshColliderGround.fbx.meta" @@ -0,0 +1,104 @@ +fileFormatVersion: 2 +guid: 7a12252bdee88de449f5e72aa3547da4 +ModelImporter: + serializedVersion: 23 + fileIDToRecycleName: + 100000: Track + 100002: //RootNode + 400000: Track + 400002: //RootNode + 2100000: TrackDark + 2300000: Track + 3300000: Track + 4300000: Track + externalObjects: + - first: + type: UnityEngine:Material + assembly: UnityEngine.CoreModule + name: TrackDark + second: {fileID: 2100000, guid: d11179e416c9b394c8176d36a0dcae52, type: 2} + materials: + importMaterials: 0 + materialName: 0 + materialSearch: 1 + materialLocation: 1 + animations: + legacyGenerateAnimations: 4 + bakeSimulation: 0 + resampleCurves: 1 + optimizeGameObjects: 0 + motionNodeName: + rigImportErrors: + rigImportWarnings: + animationImportErrors: + animationImportWarnings: + animationRetargetingWarnings: + animationDoRetargetingWarnings: 0 + importAnimatedCustomProperties: 0 + importConstraints: 0 + animationCompression: 1 + animationRotationError: 0.5 + animationPositionError: 0.5 + animationScaleError: 0.5 + animationWrapMode: 0 + extraExposedTransformPaths: [] + extraUserProperties: [] + clipAnimations: [] + isReadable: 1 + meshes: + lODScreenPercentages: [] + globalScale: 1 + meshCompression: 0 + addColliders: 0 + useSRGBMaterialColor: 1 + importVisibility: 1 + importBlendShapes: 1 + importCameras: 1 + importLights: 1 + swapUVChannels: 0 + generateSecondaryUV: 0 + useFileUnits: 1 + optimizeMeshForGPU: 1 + keepQuads: 0 + weldVertices: 1 + preserveHierarchy: 0 + indexFormat: 0 + secondaryUVAngleDistortion: 8 + secondaryUVAreaDistortion: 15.000001 + secondaryUVHardAngle: 88 + secondaryUVPackMargin: 4 + useFileScale: 1 + previousCalculatedGlobalScale: 1 + hasPreviousCalculatedGlobalScale: 0 + tangentSpace: + normalSmoothAngle: 60 + normalImportMode: 0 + tangentImportMode: 3 + normalCalculationMode: 4 + legacyComputeAllNormalsFromSmoothingGroupsWhenMeshHasBlendShapes: 0 + blendShapeNormalImportMode: 1 + normalSmoothingSource: 0 + importAnimation: 1 + copyAvatar: 0 + humanDescription: + serializedVersion: 2 + human: [] + skeleton: [] + armTwist: 0.5 + foreArmTwist: 0.5 + upperLegTwist: 0.5 + legTwist: 0.5 + armStretch: 0.05 + legStretch: 0.05 + feetSpacing: 0 + rootMotionBoneName: + hasTranslationDoF: 0 + hasExtraRoot: 0 + skeletonHasParents: 1 + lastHumanDescriptionAvatarSource: {instanceID: 0} + animationType: 0 + humanoidOversampling: 1 + additionalBone: 0 + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Models/TrackCurveSmallMeshColliderWalls.fbx" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Models/TrackCurveSmallMeshColliderWalls.fbx" new file mode 100644 index 00000000..a27dfac2 Binary files /dev/null and "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Models/TrackCurveSmallMeshColliderWalls.fbx" differ diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Models/TrackCurveSmallMeshColliderWalls.fbx.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Models/TrackCurveSmallMeshColliderWalls.fbx.meta" new file mode 100644 index 00000000..b0872d3c --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Models/TrackCurveSmallMeshColliderWalls.fbx.meta" @@ -0,0 +1,104 @@ +fileFormatVersion: 2 +guid: c9da9a4eb5561534cb8d191a9e1d31da +ModelImporter: + serializedVersion: 23 + fileIDToRecycleName: + 100000: Track1 + 100002: //RootNode + 400000: Track1 + 400002: //RootNode + 2100000: TrackDark + 2300000: Track1 + 3300000: Track1 + 4300000: Track1 + externalObjects: + - first: + type: UnityEngine:Material + assembly: UnityEngine.CoreModule + name: TrackDark + second: {fileID: 2100000, guid: d11179e416c9b394c8176d36a0dcae52, type: 2} + materials: + importMaterials: 0 + materialName: 0 + materialSearch: 1 + materialLocation: 1 + animations: + legacyGenerateAnimations: 4 + bakeSimulation: 0 + resampleCurves: 1 + optimizeGameObjects: 0 + motionNodeName: + rigImportErrors: + rigImportWarnings: + animationImportErrors: + animationImportWarnings: + animationRetargetingWarnings: + animationDoRetargetingWarnings: 0 + importAnimatedCustomProperties: 0 + importConstraints: 0 + animationCompression: 1 + animationRotationError: 0.5 + animationPositionError: 0.5 + animationScaleError: 0.5 + animationWrapMode: 0 + extraExposedTransformPaths: [] + extraUserProperties: [] + clipAnimations: [] + isReadable: 1 + meshes: + lODScreenPercentages: [] + globalScale: 1 + meshCompression: 0 + addColliders: 0 + useSRGBMaterialColor: 1 + importVisibility: 1 + importBlendShapes: 1 + importCameras: 1 + importLights: 1 + swapUVChannels: 0 + generateSecondaryUV: 0 + useFileUnits: 1 + optimizeMeshForGPU: 1 + keepQuads: 0 + weldVertices: 1 + preserveHierarchy: 0 + indexFormat: 0 + secondaryUVAngleDistortion: 8 + secondaryUVAreaDistortion: 15.000001 + secondaryUVHardAngle: 88 + secondaryUVPackMargin: 4 + useFileScale: 1 + previousCalculatedGlobalScale: 1 + hasPreviousCalculatedGlobalScale: 0 + tangentSpace: + normalSmoothAngle: 60 + normalImportMode: 0 + tangentImportMode: 3 + normalCalculationMode: 4 + legacyComputeAllNormalsFromSmoothingGroupsWhenMeshHasBlendShapes: 0 + blendShapeNormalImportMode: 1 + normalSmoothingSource: 0 + importAnimation: 1 + copyAvatar: 0 + humanDescription: + serializedVersion: 2 + human: [] + skeleton: [] + armTwist: 0.5 + foreArmTwist: 0.5 + upperLegTwist: 0.5 + legTwist: 0.5 + armStretch: 0.05 + legStretch: 0.05 + feetSpacing: 0 + rootMotionBoneName: + hasTranslationDoF: 0 + hasExtraRoot: 0 + skeletonHasParents: 1 + lastHumanDescriptionAvatarSource: {instanceID: 0} + animationType: 0 + humanoidOversampling: 1 + additionalBone: 0 + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Models/TrackStraightShort.fbx" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Models/TrackStraightShort.fbx" new file mode 100644 index 00000000..24cd20c8 Binary files /dev/null and "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Models/TrackStraightShort.fbx" differ diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Models/TrackStraightShort.fbx.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Models/TrackStraightShort.fbx.meta" new file mode 100644 index 00000000..8fbb7686 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Models/TrackStraightShort.fbx.meta" @@ -0,0 +1,112 @@ +fileFormatVersion: 2 +guid: c536be666f60a094ca84fdea79a89adb +ModelImporter: + serializedVersion: 23 + fileIDToRecycleName: + 100000: Fence + 100002: Track + 100004: //RootNode + 400000: Fence + 400002: Track + 400004: //RootNode + 2100000: TrackDark + 2100002: TrackMidLight + 2100004: TrackWhite + 2300000: Fence + 2300002: Track + 3300000: Fence + 3300002: Track + 4300000: Track + 4300002: Fence + 9500000: //RootNode + externalObjects: + - first: + type: UnityEngine:Material + assembly: UnityEngine.CoreModule + name: TemplateEnvironment + second: {fileID: 2100000, guid: d11179e416c9b394c8176d36a0dcae52, type: 2} + materials: + importMaterials: 1 + materialName: 1 + materialSearch: 2 + materialLocation: 1 + animations: + legacyGenerateAnimations: 4 + bakeSimulation: 0 + resampleCurves: 1 + optimizeGameObjects: 0 + motionNodeName: + rigImportErrors: + rigImportWarnings: + animationImportErrors: + animationImportWarnings: + animationRetargetingWarnings: + animationDoRetargetingWarnings: 0 + importAnimatedCustomProperties: 0 + importConstraints: 0 + animationCompression: 1 + animationRotationError: 0.5 + animationPositionError: 0.5 + animationScaleError: 0.5 + animationWrapMode: 0 + extraExposedTransformPaths: [] + extraUserProperties: [] + clipAnimations: [] + isReadable: 1 + meshes: + lODScreenPercentages: [] + globalScale: 1 + meshCompression: 0 + addColliders: 0 + useSRGBMaterialColor: 1 + importVisibility: 1 + importBlendShapes: 1 + importCameras: 1 + importLights: 1 + swapUVChannels: 0 + generateSecondaryUV: 0 + useFileUnits: 1 + optimizeMeshForGPU: 1 + keepQuads: 0 + weldVertices: 1 + preserveHierarchy: 0 + indexFormat: 0 + secondaryUVAngleDistortion: 8 + secondaryUVAreaDistortion: 15.000001 + secondaryUVHardAngle: 88 + secondaryUVPackMargin: 4 + useFileScale: 1 + previousCalculatedGlobalScale: 0.01 + hasPreviousCalculatedGlobalScale: 1 + tangentSpace: + normalSmoothAngle: 60 + normalImportMode: 0 + tangentImportMode: 3 + normalCalculationMode: 4 + legacyComputeAllNormalsFromSmoothingGroupsWhenMeshHasBlendShapes: 0 + blendShapeNormalImportMode: 1 + normalSmoothingSource: 0 + importAnimation: 1 + copyAvatar: 0 + humanDescription: + serializedVersion: 2 + human: [] + skeleton: [] + armTwist: 0.5 + foreArmTwist: 0.5 + upperLegTwist: 0.5 + legTwist: 0.5 + armStretch: 0.05 + legStretch: 0.05 + feetSpacing: 0 + rootMotionBoneName: + hasTranslationDoF: 0 + hasExtraRoot: 0 + skeletonHasParents: 1 + lastHumanDescriptionAvatarSource: {instanceID: 0} + animationType: 2 + humanoidOversampling: 1 + additionalBone: 0 + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Models/TrackStraightShortMeshColliderGround.fbx" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Models/TrackStraightShortMeshColliderGround.fbx" new file mode 100644 index 00000000..16fcee14 Binary files /dev/null and "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Models/TrackStraightShortMeshColliderGround.fbx" differ diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Models/TrackStraightShortMeshColliderGround.fbx.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Models/TrackStraightShortMeshColliderGround.fbx.meta" new file mode 100644 index 00000000..55cb1689 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Models/TrackStraightShortMeshColliderGround.fbx.meta" @@ -0,0 +1,104 @@ +fileFormatVersion: 2 +guid: c26a2ada60c256142a8586788911a9ce +ModelImporter: + serializedVersion: 23 + fileIDToRecycleName: + 100000: Track1 + 100002: //RootNode + 400000: Track1 + 400002: //RootNode + 2100000: TrackDark + 2300000: Track1 + 3300000: Track1 + 4300000: Track1 + externalObjects: + - first: + type: UnityEngine:Material + assembly: UnityEngine.CoreModule + name: TrackDark + second: {fileID: 2100000, guid: d11179e416c9b394c8176d36a0dcae52, type: 2} + materials: + importMaterials: 0 + materialName: 0 + materialSearch: 1 + materialLocation: 1 + animations: + legacyGenerateAnimations: 4 + bakeSimulation: 0 + resampleCurves: 1 + optimizeGameObjects: 0 + motionNodeName: + rigImportErrors: + rigImportWarnings: + animationImportErrors: + animationImportWarnings: + animationRetargetingWarnings: + animationDoRetargetingWarnings: 0 + importAnimatedCustomProperties: 0 + importConstraints: 0 + animationCompression: 1 + animationRotationError: 0.5 + animationPositionError: 0.5 + animationScaleError: 0.5 + animationWrapMode: 0 + extraExposedTransformPaths: [] + extraUserProperties: [] + clipAnimations: [] + isReadable: 1 + meshes: + lODScreenPercentages: [] + globalScale: 1 + meshCompression: 0 + addColliders: 0 + useSRGBMaterialColor: 1 + importVisibility: 1 + importBlendShapes: 1 + importCameras: 1 + importLights: 1 + swapUVChannels: 0 + generateSecondaryUV: 0 + useFileUnits: 1 + optimizeMeshForGPU: 1 + keepQuads: 0 + weldVertices: 1 + preserveHierarchy: 0 + indexFormat: 0 + secondaryUVAngleDistortion: 8 + secondaryUVAreaDistortion: 15.000001 + secondaryUVHardAngle: 88 + secondaryUVPackMargin: 4 + useFileScale: 1 + previousCalculatedGlobalScale: 1 + hasPreviousCalculatedGlobalScale: 0 + tangentSpace: + normalSmoothAngle: 60 + normalImportMode: 0 + tangentImportMode: 3 + normalCalculationMode: 4 + legacyComputeAllNormalsFromSmoothingGroupsWhenMeshHasBlendShapes: 0 + blendShapeNormalImportMode: 1 + normalSmoothingSource: 0 + importAnimation: 1 + copyAvatar: 0 + humanDescription: + serializedVersion: 2 + human: [] + skeleton: [] + armTwist: 0.5 + foreArmTwist: 0.5 + upperLegTwist: 0.5 + legTwist: 0.5 + armStretch: 0.05 + legStretch: 0.05 + feetSpacing: 0 + rootMotionBoneName: + hasTranslationDoF: 0 + hasExtraRoot: 0 + skeletonHasParents: 1 + lastHumanDescriptionAvatarSource: {instanceID: 0} + animationType: 0 + humanoidOversampling: 1 + additionalBone: 0 + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Models/TrackStraightShortMeshColliderWalls.fbx" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Models/TrackStraightShortMeshColliderWalls.fbx" new file mode 100644 index 00000000..35cb4fdf Binary files /dev/null and "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Models/TrackStraightShortMeshColliderWalls.fbx" differ diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Models/TrackStraightShortMeshColliderWalls.fbx.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Models/TrackStraightShortMeshColliderWalls.fbx.meta" new file mode 100644 index 00000000..69839558 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Models/TrackStraightShortMeshColliderWalls.fbx.meta" @@ -0,0 +1,104 @@ +fileFormatVersion: 2 +guid: 71fb4b36fc973904c8f15d164c0e48ae +ModelImporter: + serializedVersion: 23 + fileIDToRecycleName: + 100000: Track + 100002: //RootNode + 400000: Track + 400002: //RootNode + 2100000: TrackDark + 2300000: Track + 3300000: Track + 4300000: Track + externalObjects: + - first: + type: UnityEngine:Material + assembly: UnityEngine.CoreModule + name: TrackDark + second: {fileID: 2100000, guid: d11179e416c9b394c8176d36a0dcae52, type: 2} + materials: + importMaterials: 0 + materialName: 0 + materialSearch: 1 + materialLocation: 1 + animations: + legacyGenerateAnimations: 4 + bakeSimulation: 0 + resampleCurves: 1 + optimizeGameObjects: 0 + motionNodeName: + rigImportErrors: + rigImportWarnings: + animationImportErrors: + animationImportWarnings: + animationRetargetingWarnings: + animationDoRetargetingWarnings: 0 + importAnimatedCustomProperties: 0 + importConstraints: 0 + animationCompression: 1 + animationRotationError: 0.5 + animationPositionError: 0.5 + animationScaleError: 0.5 + animationWrapMode: 0 + extraExposedTransformPaths: [] + extraUserProperties: [] + clipAnimations: [] + isReadable: 1 + meshes: + lODScreenPercentages: [] + globalScale: 1 + meshCompression: 0 + addColliders: 0 + useSRGBMaterialColor: 1 + importVisibility: 1 + importBlendShapes: 1 + importCameras: 1 + importLights: 1 + swapUVChannels: 0 + generateSecondaryUV: 0 + useFileUnits: 1 + optimizeMeshForGPU: 1 + keepQuads: 0 + weldVertices: 1 + preserveHierarchy: 0 + indexFormat: 0 + secondaryUVAngleDistortion: 8 + secondaryUVAreaDistortion: 15.000001 + secondaryUVHardAngle: 88 + secondaryUVPackMargin: 4 + useFileScale: 1 + previousCalculatedGlobalScale: 1 + hasPreviousCalculatedGlobalScale: 0 + tangentSpace: + normalSmoothAngle: 60 + normalImportMode: 0 + tangentImportMode: 3 + normalCalculationMode: 4 + legacyComputeAllNormalsFromSmoothingGroupsWhenMeshHasBlendShapes: 0 + blendShapeNormalImportMode: 1 + normalSmoothingSource: 0 + importAnimation: 1 + copyAvatar: 0 + humanDescription: + serializedVersion: 2 + human: [] + skeleton: [] + armTwist: 0.5 + foreArmTwist: 0.5 + upperLegTwist: 0.5 + legTwist: 0.5 + armStretch: 0.05 + legStretch: 0.05 + feetSpacing: 0 + rootMotionBoneName: + hasTranslationDoF: 0 + hasExtraRoot: 0 + skeletonHasParents: 1 + lastHumanDescriptionAvatarSource: {instanceID: 0} + animationType: 0 + humanoidOversampling: 1 + additionalBone: 0 + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Models/TrackToCamber.fbx" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Models/TrackToCamber.fbx" new file mode 100644 index 00000000..e0477bf7 Binary files /dev/null and "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Models/TrackToCamber.fbx" differ diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Models/TrackToCamber.fbx.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Models/TrackToCamber.fbx.meta" new file mode 100644 index 00000000..45d9b253 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Models/TrackToCamber.fbx.meta" @@ -0,0 +1,115 @@ +fileFormatVersion: 2 +guid: d64d45aad01a61a419213469c5e6094b +ModelImporter: + serializedVersion: 23 + fileIDToRecycleName: + 100000: //RootNode + 100002: Fence + 100004: Track + 400000: //RootNode + 400002: Fence + 400004: Track + 2100000: TrackDark + 2100002: TrackMidLight + 2100004: TrackWhite + 2100006: TrackMidDark + 2300000: //RootNode + 2300002: Fence + 2300004: Track + 3300000: //RootNode + 3300002: Fence + 3300004: Track + 4300000: Track009 + 4300002: Track + 4300004: Fence + externalObjects: + - first: + type: UnityEngine:Material + assembly: UnityEngine.CoreModule + name: TemplateEnvironment + second: {fileID: 2100000, guid: d11179e416c9b394c8176d36a0dcae52, type: 2} + materials: + importMaterials: 1 + materialName: 1 + materialSearch: 2 + materialLocation: 1 + animations: + legacyGenerateAnimations: 4 + bakeSimulation: 0 + resampleCurves: 1 + optimizeGameObjects: 0 + motionNodeName: + rigImportErrors: + rigImportWarnings: + animationImportErrors: + animationImportWarnings: + animationRetargetingWarnings: + animationDoRetargetingWarnings: 0 + importAnimatedCustomProperties: 0 + importConstraints: 0 + animationCompression: 1 + animationRotationError: 0.5 + animationPositionError: 0.5 + animationScaleError: 0.5 + animationWrapMode: 0 + extraExposedTransformPaths: [] + extraUserProperties: [] + clipAnimations: [] + isReadable: 1 + meshes: + lODScreenPercentages: [] + globalScale: 1 + meshCompression: 0 + addColliders: 0 + useSRGBMaterialColor: 1 + importVisibility: 1 + importBlendShapes: 1 + importCameras: 1 + importLights: 1 + swapUVChannels: 0 + generateSecondaryUV: 0 + useFileUnits: 1 + optimizeMeshForGPU: 1 + keepQuads: 0 + weldVertices: 1 + preserveHierarchy: 0 + indexFormat: 0 + secondaryUVAngleDistortion: 8 + secondaryUVAreaDistortion: 15.000001 + secondaryUVHardAngle: 88 + secondaryUVPackMargin: 4 + useFileScale: 1 + previousCalculatedGlobalScale: 1 + hasPreviousCalculatedGlobalScale: 0 + tangentSpace: + normalSmoothAngle: 60 + normalImportMode: 0 + tangentImportMode: 3 + normalCalculationMode: 4 + legacyComputeAllNormalsFromSmoothingGroupsWhenMeshHasBlendShapes: 0 + blendShapeNormalImportMode: 1 + normalSmoothingSource: 0 + importAnimation: 0 + copyAvatar: 0 + humanDescription: + serializedVersion: 2 + human: [] + skeleton: [] + armTwist: 0.5 + foreArmTwist: 0.5 + upperLegTwist: 0.5 + legTwist: 0.5 + armStretch: 0.05 + legStretch: 0.05 + feetSpacing: 0 + rootMotionBoneName: + hasTranslationDoF: 0 + hasExtraRoot: 0 + skeletonHasParents: 1 + lastHumanDescriptionAvatarSource: {instanceID: 0} + animationType: 0 + humanoidOversampling: 1 + additionalBone: 0 + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Models/TrackToCamberMeshColliderGround.fbx" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Models/TrackToCamberMeshColliderGround.fbx" new file mode 100644 index 00000000..e3c38945 Binary files /dev/null and "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Models/TrackToCamberMeshColliderGround.fbx" differ diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Models/TrackToCamberMeshColliderGround.fbx.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Models/TrackToCamberMeshColliderGround.fbx.meta" new file mode 100644 index 00000000..02fbd95b --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Models/TrackToCamberMeshColliderGround.fbx.meta" @@ -0,0 +1,104 @@ +fileFormatVersion: 2 +guid: ee53d570b8e99754889811c75e57f688 +ModelImporter: + serializedVersion: 23 + fileIDToRecycleName: + 100000: Track + 100002: //RootNode + 400000: Track + 400002: //RootNode + 2100000: TrackDark + 2300000: Track + 3300000: Track + 4300000: Track + externalObjects: + - first: + type: UnityEngine:Material + assembly: UnityEngine.CoreModule + name: TrackDark + second: {fileID: 2100000, guid: d11179e416c9b394c8176d36a0dcae52, type: 2} + materials: + importMaterials: 0 + materialName: 0 + materialSearch: 1 + materialLocation: 1 + animations: + legacyGenerateAnimations: 4 + bakeSimulation: 0 + resampleCurves: 1 + optimizeGameObjects: 0 + motionNodeName: + rigImportErrors: + rigImportWarnings: + animationImportErrors: + animationImportWarnings: + animationRetargetingWarnings: + animationDoRetargetingWarnings: 0 + importAnimatedCustomProperties: 0 + importConstraints: 0 + animationCompression: 1 + animationRotationError: 0.5 + animationPositionError: 0.5 + animationScaleError: 0.5 + animationWrapMode: 0 + extraExposedTransformPaths: [] + extraUserProperties: [] + clipAnimations: [] + isReadable: 1 + meshes: + lODScreenPercentages: [] + globalScale: 1 + meshCompression: 0 + addColliders: 0 + useSRGBMaterialColor: 1 + importVisibility: 1 + importBlendShapes: 1 + importCameras: 1 + importLights: 1 + swapUVChannels: 0 + generateSecondaryUV: 0 + useFileUnits: 1 + optimizeMeshForGPU: 1 + keepQuads: 0 + weldVertices: 1 + preserveHierarchy: 0 + indexFormat: 0 + secondaryUVAngleDistortion: 8 + secondaryUVAreaDistortion: 15.000001 + secondaryUVHardAngle: 88 + secondaryUVPackMargin: 4 + useFileScale: 1 + previousCalculatedGlobalScale: 1 + hasPreviousCalculatedGlobalScale: 0 + tangentSpace: + normalSmoothAngle: 60 + normalImportMode: 0 + tangentImportMode: 3 + normalCalculationMode: 4 + legacyComputeAllNormalsFromSmoothingGroupsWhenMeshHasBlendShapes: 0 + blendShapeNormalImportMode: 1 + normalSmoothingSource: 0 + importAnimation: 1 + copyAvatar: 0 + humanDescription: + serializedVersion: 2 + human: [] + skeleton: [] + armTwist: 0.5 + foreArmTwist: 0.5 + upperLegTwist: 0.5 + legTwist: 0.5 + armStretch: 0.05 + legStretch: 0.05 + feetSpacing: 0 + rootMotionBoneName: + hasTranslationDoF: 0 + hasExtraRoot: 0 + skeletonHasParents: 1 + lastHumanDescriptionAvatarSource: {instanceID: 0} + animationType: 0 + humanoidOversampling: 1 + additionalBone: 0 + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Models/TrackToCamberMeshColliderWalls.fbx" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Models/TrackToCamberMeshColliderWalls.fbx" new file mode 100644 index 00000000..0e5e9df1 Binary files /dev/null and "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Models/TrackToCamberMeshColliderWalls.fbx" differ diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Models/TrackToCamberMeshColliderWalls.fbx.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Models/TrackToCamberMeshColliderWalls.fbx.meta" new file mode 100644 index 00000000..7b9738be --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Models/TrackToCamberMeshColliderWalls.fbx.meta" @@ -0,0 +1,104 @@ +fileFormatVersion: 2 +guid: caf6e7e523c6b9a44896f63539e75677 +ModelImporter: + serializedVersion: 23 + fileIDToRecycleName: + 100000: Track1 + 100002: //RootNode + 400000: Track1 + 400002: //RootNode + 2100000: TrackDark + 2300000: Track1 + 3300000: Track1 + 4300000: Track1 + externalObjects: + - first: + type: UnityEngine:Material + assembly: UnityEngine.CoreModule + name: TrackDark + second: {fileID: 2100000, guid: d11179e416c9b394c8176d36a0dcae52, type: 2} + materials: + importMaterials: 0 + materialName: 0 + materialSearch: 1 + materialLocation: 1 + animations: + legacyGenerateAnimations: 4 + bakeSimulation: 0 + resampleCurves: 1 + optimizeGameObjects: 0 + motionNodeName: + rigImportErrors: + rigImportWarnings: + animationImportErrors: + animationImportWarnings: + animationRetargetingWarnings: + animationDoRetargetingWarnings: 0 + importAnimatedCustomProperties: 0 + importConstraints: 0 + animationCompression: 1 + animationRotationError: 0.5 + animationPositionError: 0.5 + animationScaleError: 0.5 + animationWrapMode: 0 + extraExposedTransformPaths: [] + extraUserProperties: [] + clipAnimations: [] + isReadable: 1 + meshes: + lODScreenPercentages: [] + globalScale: 1 + meshCompression: 0 + addColliders: 0 + useSRGBMaterialColor: 1 + importVisibility: 1 + importBlendShapes: 1 + importCameras: 1 + importLights: 1 + swapUVChannels: 0 + generateSecondaryUV: 0 + useFileUnits: 1 + optimizeMeshForGPU: 1 + keepQuads: 0 + weldVertices: 1 + preserveHierarchy: 0 + indexFormat: 0 + secondaryUVAngleDistortion: 8 + secondaryUVAreaDistortion: 15.000001 + secondaryUVHardAngle: 88 + secondaryUVPackMargin: 4 + useFileScale: 1 + previousCalculatedGlobalScale: 1 + hasPreviousCalculatedGlobalScale: 0 + tangentSpace: + normalSmoothAngle: 60 + normalImportMode: 0 + tangentImportMode: 3 + normalCalculationMode: 4 + legacyComputeAllNormalsFromSmoothingGroupsWhenMeshHasBlendShapes: 0 + blendShapeNormalImportMode: 1 + normalSmoothingSource: 0 + importAnimation: 1 + copyAvatar: 0 + humanDescription: + serializedVersion: 2 + human: [] + skeleton: [] + armTwist: 0.5 + foreArmTwist: 0.5 + upperLegTwist: 0.5 + legTwist: 0.5 + armStretch: 0.05 + legStretch: 0.05 + feetSpacing: 0 + rootMotionBoneName: + hasTranslationDoF: 0 + hasExtraRoot: 0 + skeletonHasParents: 1 + lastHumanDescriptionAvatarSource: {instanceID: 0} + animationType: 0 + humanoidOversampling: 1 + additionalBone: 0 + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Models/TreeBox.fbx" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Models/TreeBox.fbx" new file mode 100644 index 00000000..fd4339d3 Binary files /dev/null and "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Models/TreeBox.fbx" differ diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Models/TreeBox.fbx.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Models/TreeBox.fbx.meta" new file mode 100644 index 00000000..79a356f6 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Models/TreeBox.fbx.meta" @@ -0,0 +1,102 @@ +fileFormatVersion: 2 +guid: 9f1e50f73a529a448b004add5bec5d80 +ModelImporter: + serializedVersion: 23 + fileIDToRecycleName: + 100000: //RootNode + 400000: //RootNode + 2100000: lambert1 + 2300000: //RootNode + 3300000: //RootNode + 4300000: pCylinder3 + externalObjects: + - first: + type: UnityEngine:Material + assembly: UnityEngine.CoreModule + name: lambert1 + second: {fileID: 2100000, guid: d11179e416c9b394c8176d36a0dcae52, type: 2} + materials: + importMaterials: 1 + materialName: 0 + materialSearch: 1 + materialLocation: 1 + animations: + legacyGenerateAnimations: 4 + bakeSimulation: 0 + resampleCurves: 1 + optimizeGameObjects: 0 + motionNodeName: + rigImportErrors: + rigImportWarnings: + animationImportErrors: + animationImportWarnings: + animationRetargetingWarnings: + animationDoRetargetingWarnings: 0 + importAnimatedCustomProperties: 0 + importConstraints: 0 + animationCompression: 1 + animationRotationError: 0.5 + animationPositionError: 0.5 + animationScaleError: 0.5 + animationWrapMode: 0 + extraExposedTransformPaths: [] + extraUserProperties: [] + clipAnimations: [] + isReadable: 1 + meshes: + lODScreenPercentages: [] + globalScale: 1 + meshCompression: 0 + addColliders: 0 + useSRGBMaterialColor: 1 + importVisibility: 1 + importBlendShapes: 1 + importCameras: 1 + importLights: 1 + swapUVChannels: 0 + generateSecondaryUV: 0 + useFileUnits: 1 + optimizeMeshForGPU: 1 + keepQuads: 0 + weldVertices: 1 + preserveHierarchy: 0 + indexFormat: 0 + secondaryUVAngleDistortion: 8 + secondaryUVAreaDistortion: 15.000001 + secondaryUVHardAngle: 88 + secondaryUVPackMargin: 4 + useFileScale: 1 + previousCalculatedGlobalScale: 1 + hasPreviousCalculatedGlobalScale: 0 + tangentSpace: + normalSmoothAngle: 60 + normalImportMode: 0 + tangentImportMode: 3 + normalCalculationMode: 4 + legacyComputeAllNormalsFromSmoothingGroupsWhenMeshHasBlendShapes: 0 + blendShapeNormalImportMode: 1 + normalSmoothingSource: 0 + importAnimation: 1 + copyAvatar: 0 + humanDescription: + serializedVersion: 2 + human: [] + skeleton: [] + armTwist: 0.5 + foreArmTwist: 0.5 + upperLegTwist: 0.5 + legTwist: 0.5 + armStretch: 0.05 + legStretch: 0.05 + feetSpacing: 0 + rootMotionBoneName: + hasTranslationDoF: 0 + hasExtraRoot: 0 + skeletonHasParents: 1 + lastHumanDescriptionAvatarSource: {instanceID: 0} + animationType: 0 + humanoidOversampling: 1 + additionalBone: 0 + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Models/TreeRound.FBX" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Models/TreeRound.FBX" new file mode 100644 index 00000000..cf1f4b02 Binary files /dev/null and "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Models/TreeRound.FBX" differ diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Models/TreeRound.FBX.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Models/TreeRound.FBX.meta" new file mode 100644 index 00000000..2c9161b0 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Models/TreeRound.FBX.meta" @@ -0,0 +1,114 @@ +fileFormatVersion: 2 +guid: dca6189290e8c16479a364fa6d80b6b8 +ModelImporter: + serializedVersion: 23 + fileIDToRecycleName: + 100000: //RootNode + 100002: Tree + 400000: //RootNode + 400002: Tree + 2100000: TreeProto + 2100002: TemplateEnvironment + 2100004: LightGrey + 2300000: //RootNode + 2300002: Tree + 3300000: //RootNode + 3300002: Tree + 4300000: Line001 + 4300002: Tree + externalObjects: + - first: + type: UnityEngine:Material + assembly: UnityEngine.CoreModule + name: LightGrey + second: {fileID: 2100000, guid: d11179e416c9b394c8176d36a0dcae52, type: 2} + - first: + type: UnityEngine:Material + assembly: UnityEngine.CoreModule + name: TreeProto + second: {fileID: 2100000, guid: 498f468874efc05439b76431efa44973, type: 2} + materials: + importMaterials: 1 + materialName: 0 + materialSearch: 1 + materialLocation: 1 + animations: + legacyGenerateAnimations: 4 + bakeSimulation: 0 + resampleCurves: 1 + optimizeGameObjects: 0 + motionNodeName: + rigImportErrors: + rigImportWarnings: + animationImportErrors: + animationImportWarnings: + animationRetargetingWarnings: + animationDoRetargetingWarnings: 0 + importAnimatedCustomProperties: 0 + importConstraints: 0 + animationCompression: 1 + animationRotationError: 0.5 + animationPositionError: 0.5 + animationScaleError: 0.5 + animationWrapMode: 0 + extraExposedTransformPaths: [] + extraUserProperties: [] + clipAnimations: [] + isReadable: 1 + meshes: + lODScreenPercentages: [] + globalScale: 1 + meshCompression: 0 + addColliders: 0 + useSRGBMaterialColor: 1 + importVisibility: 1 + importBlendShapes: 1 + importCameras: 1 + importLights: 1 + swapUVChannels: 0 + generateSecondaryUV: 0 + useFileUnits: 1 + optimizeMeshForGPU: 1 + keepQuads: 0 + weldVertices: 1 + preserveHierarchy: 0 + indexFormat: 0 + secondaryUVAngleDistortion: 8 + secondaryUVAreaDistortion: 15.000001 + secondaryUVHardAngle: 88 + secondaryUVPackMargin: 4 + useFileScale: 1 + previousCalculatedGlobalScale: 1 + hasPreviousCalculatedGlobalScale: 0 + tangentSpace: + normalSmoothAngle: 60 + normalImportMode: 0 + tangentImportMode: 3 + normalCalculationMode: 4 + legacyComputeAllNormalsFromSmoothingGroupsWhenMeshHasBlendShapes: 0 + blendShapeNormalImportMode: 1 + normalSmoothingSource: 0 + importAnimation: 1 + copyAvatar: 0 + humanDescription: + serializedVersion: 2 + human: [] + skeleton: [] + armTwist: 0.5 + foreArmTwist: 0.5 + upperLegTwist: 0.5 + legTwist: 0.5 + armStretch: 0.05 + legStretch: 0.05 + feetSpacing: 0 + rootMotionBoneName: + hasTranslationDoF: 0 + hasExtraRoot: 0 + skeletonHasParents: 1 + lastHumanDescriptionAvatarSource: {instanceID: 0} + animationType: 0 + humanoidOversampling: 1 + additionalBone: 0 + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/ModularTrackKit.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/ModularTrackKit.meta" new file mode 100644 index 00000000..321dd786 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/ModularTrackKit.meta" @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 58a017e71c0a74cfdbf0ecc002770138 +folderAsset: yes +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/ModularTrackKit/Materials.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/ModularTrackKit/Materials.meta" new file mode 100644 index 00000000..2a846e55 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/ModularTrackKit/Materials.meta" @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 72fbe118730c241deb4142b1b2b34aee +folderAsset: yes +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/ModularTrackKit/Materials/ModularTrackLaneDivider.mat" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/ModularTrackKit/Materials/ModularTrackLaneDivider.mat" new file mode 100644 index 00000000..017dcade --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/ModularTrackKit/Materials/ModularTrackLaneDivider.mat" @@ -0,0 +1,77 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!21 &2100000 +Material: + serializedVersion: 6 + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_Name: ModularTrackLaneDivider + m_Shader: {fileID: 46, guid: 0000000000000000f000000000000000, type: 0} + m_ShaderKeywords: + m_LightmapFlags: 4 + m_EnableInstancingVariants: 0 + m_DoubleSidedGI: 0 + m_CustomRenderQueue: -1 + stringTagMap: {} + disabledShaderPasses: [] + m_SavedProperties: + serializedVersion: 3 + m_TexEnvs: + - _BumpMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _DetailAlbedoMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _DetailMask: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _DetailNormalMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _EmissionMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _MainTex: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _MetallicGlossMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _OcclusionMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _ParallaxMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + m_Floats: + - _BumpScale: 1 + - _Cutoff: 0.5 + - _DetailNormalMapScale: 1 + - _DstBlend: 0 + - _GlossMapScale: 1 + - _Glossiness: 0.5 + - _GlossyReflections: 1 + - _Metallic: 0 + - _Mode: 0 + - _OcclusionStrength: 1 + - _Parallax: 0.02 + - _SmoothnessTextureChannel: 0 + - _SpecularHighlights: 1 + - _SrcBlend: 1 + - _UVSec: 0 + - _ZWrite: 1 + m_Colors: + - _Color: {r: 0.8584906, g: 0.80412036, b: 0.7329566, a: 1} + - _EmissionColor: {r: 0, g: 0, b: 0, a: 1} diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/ModularTrackKit/Materials/ModularTrackLaneDivider.mat.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/ModularTrackKit/Materials/ModularTrackLaneDivider.mat.meta" new file mode 100644 index 00000000..b802c16d --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/ModularTrackKit/Materials/ModularTrackLaneDivider.mat.meta" @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 7b5f0a7a707e04e939eb8c5dee8e084c +NativeFormatImporter: + externalObjects: {} + mainObjectFileID: 2100000 + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/ModularTrackKit/Materials/ModularTrackRoad.mat" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/ModularTrackKit/Materials/ModularTrackRoad.mat" new file mode 100644 index 00000000..7a4031a0 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/ModularTrackKit/Materials/ModularTrackRoad.mat" @@ -0,0 +1,77 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!21 &2100000 +Material: + serializedVersion: 6 + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_Name: ModularTrackRoad + m_Shader: {fileID: 46, guid: 0000000000000000f000000000000000, type: 0} + m_ShaderKeywords: + m_LightmapFlags: 4 + m_EnableInstancingVariants: 0 + m_DoubleSidedGI: 0 + m_CustomRenderQueue: -1 + stringTagMap: {} + disabledShaderPasses: [] + m_SavedProperties: + serializedVersion: 3 + m_TexEnvs: + - _BumpMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _DetailAlbedoMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _DetailMask: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _DetailNormalMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _EmissionMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _MainTex: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _MetallicGlossMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _OcclusionMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _ParallaxMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + m_Floats: + - _BumpScale: 1 + - _Cutoff: 0.5 + - _DetailNormalMapScale: 1 + - _DstBlend: 0 + - _GlossMapScale: 1 + - _Glossiness: 0.28 + - _GlossyReflections: 1 + - _Metallic: 0.209 + - _Mode: 0 + - _OcclusionStrength: 1 + - _Parallax: 0.02 + - _SmoothnessTextureChannel: 0 + - _SpecularHighlights: 1 + - _SrcBlend: 1 + - _UVSec: 0 + - _ZWrite: 1 + m_Colors: + - _Color: {r: 0.4185208, g: 0.50793207, b: 0.5377358, a: 1} + - _EmissionColor: {r: 0, g: 0, b: 0, a: 1} diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/ModularTrackKit/Materials/ModularTrackRoad.mat.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/ModularTrackKit/Materials/ModularTrackRoad.mat.meta" new file mode 100644 index 00000000..aa734579 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/ModularTrackKit/Materials/ModularTrackRoad.mat.meta" @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 58da84021fce340e9b877f63d3e18336 +NativeFormatImporter: + externalObjects: {} + mainObjectFileID: 2100000 + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/ModularTrackKit/Models.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/ModularTrackKit/Models.meta" new file mode 100644 index 00000000..4867781a --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/ModularTrackKit/Models.meta" @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 325fea100301341098e2583d63174356 +folderAsset: yes +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/ModularTrackKit/Models/ModularTrackBank.fbx" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/ModularTrackKit/Models/ModularTrackBank.fbx" new file mode 100644 index 00000000..b4b90fff Binary files /dev/null and "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/ModularTrackKit/Models/ModularTrackBank.fbx" differ diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/ModularTrackKit/Models/ModularTrackBank.fbx.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/ModularTrackKit/Models/ModularTrackBank.fbx.meta" new file mode 100644 index 00000000..0210815d --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/ModularTrackKit/Models/ModularTrackBank.fbx.meta" @@ -0,0 +1,111 @@ +fileFormatVersion: 2 +guid: 994f97374df6444279b54b520d1535c3 +ModelImporter: + serializedVersion: 23 + fileIDToRecycleName: + 100000: LaneDivider + 100002: //RootNode + 100004: Empty + 100006: ModularTrackUBank + 400000: LaneDivider + 400002: //RootNode + 400004: Empty + 400006: ModularTrackUBank + 2100000: No Name + 2300000: LaneDivider + 2300002: //RootNode + 2300004: ModularTrackUBank + 3300000: LaneDivider + 3300002: //RootNode + 3300004: ModularTrackUBank + 4300000: ModularTrackUBank + 4300002: LaneDivider + 6400000: LaneDivider + 6400002: //RootNode + 6400004: ModularTrackUBank + externalObjects: {} + materials: + importMaterials: 0 + materialName: 0 + materialSearch: 1 + materialLocation: 1 + animations: + legacyGenerateAnimations: 4 + bakeSimulation: 0 + resampleCurves: 1 + optimizeGameObjects: 0 + motionNodeName: + rigImportErrors: + rigImportWarnings: + animationImportErrors: + animationImportWarnings: + animationRetargetingWarnings: + animationDoRetargetingWarnings: 0 + importAnimatedCustomProperties: 0 + importConstraints: 0 + animationCompression: 1 + animationRotationError: 0.5 + animationPositionError: 0.5 + animationScaleError: 0.5 + animationWrapMode: 0 + extraExposedTransformPaths: [] + extraUserProperties: [] + clipAnimations: [] + isReadable: 1 + meshes: + lODScreenPercentages: [] + globalScale: 1 + meshCompression: 0 + addColliders: 1 + useSRGBMaterialColor: 1 + importVisibility: 0 + importBlendShapes: 0 + importCameras: 0 + importLights: 0 + swapUVChannels: 0 + generateSecondaryUV: 0 + useFileUnits: 1 + optimizeMeshForGPU: 1 + keepQuads: 0 + weldVertices: 1 + preserveHierarchy: 0 + indexFormat: 0 + secondaryUVAngleDistortion: 8 + secondaryUVAreaDistortion: 15.000001 + secondaryUVHardAngle: 88 + secondaryUVPackMargin: 4 + useFileScale: 1 + previousCalculatedGlobalScale: 1 + hasPreviousCalculatedGlobalScale: 0 + tangentSpace: + normalSmoothAngle: 60 + normalImportMode: 1 + tangentImportMode: 3 + normalCalculationMode: 4 + legacyComputeAllNormalsFromSmoothingGroupsWhenMeshHasBlendShapes: 0 + blendShapeNormalImportMode: 1 + normalSmoothingSource: 0 + importAnimation: 0 + copyAvatar: 0 + humanDescription: + serializedVersion: 2 + human: [] + skeleton: [] + armTwist: 0.5 + foreArmTwist: 0.5 + upperLegTwist: 0.5 + legTwist: 0.5 + armStretch: 0.05 + legStretch: 0.05 + feetSpacing: 0 + rootMotionBoneName: + hasTranslationDoF: 0 + hasExtraRoot: 0 + skeletonHasParents: 1 + lastHumanDescriptionAvatarSource: {instanceID: 0} + animationType: 0 + humanoidOversampling: 1 + additionalBone: 0 + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/ModularTrackKit/Models/ModularTrackBumpyStraight.fbx" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/ModularTrackKit/Models/ModularTrackBumpyStraight.fbx" new file mode 100644 index 00000000..11c0af0a Binary files /dev/null and "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/ModularTrackKit/Models/ModularTrackBumpyStraight.fbx" differ diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/ModularTrackKit/Models/ModularTrackBumpyStraight.fbx.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/ModularTrackKit/Models/ModularTrackBumpyStraight.fbx.meta" new file mode 100644 index 00000000..4dfcf95b --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/ModularTrackKit/Models/ModularTrackBumpyStraight.fbx.meta" @@ -0,0 +1,117 @@ +fileFormatVersion: 2 +guid: 8bd11d186751541b5bbd80f5cf827fee +ModelImporter: + serializedVersion: 23 + fileIDToRecycleName: + 100000: BezierCurve + 100002: //RootNode + 100004: ModularTrackStraight + 100006: LaneDivider + 400000: BezierCurve + 400002: //RootNode + 400004: ModularTrackStraight + 400006: LaneDivider + 2100000: No Name + 2300000: BezierCurve + 2300002: ModularTrackStraight + 2300004: LaneDivider + 2300006: //RootNode + 3300000: BezierCurve + 3300002: ModularTrackStraight + 3300004: LaneDivider + 3300006: //RootNode + 4300000: ModularTrackStraight + 4300002: BezierCurve + 4300004: ModularTrackBumpyStraight + 4300006: LaneDivider + 6400000: BezierCurve + 6400002: ModularTrackStraight + 6400004: LaneDivider + 6400006: //RootNode + 2186277476908879412: ImportLogs + externalObjects: {} + materials: + importMaterials: 0 + materialName: 0 + materialSearch: 1 + materialLocation: 1 + animations: + legacyGenerateAnimations: 4 + bakeSimulation: 0 + resampleCurves: 1 + optimizeGameObjects: 0 + motionNodeName: + rigImportErrors: + rigImportWarnings: + animationImportErrors: + animationImportWarnings: + animationRetargetingWarnings: + animationDoRetargetingWarnings: 0 + importAnimatedCustomProperties: 0 + importConstraints: 0 + animationCompression: 1 + animationRotationError: 0.5 + animationPositionError: 0.5 + animationScaleError: 0.5 + animationWrapMode: 0 + extraExposedTransformPaths: [] + extraUserProperties: [] + clipAnimations: [] + isReadable: 1 + meshes: + lODScreenPercentages: [] + globalScale: 1 + meshCompression: 0 + addColliders: 1 + useSRGBMaterialColor: 1 + importVisibility: 0 + importBlendShapes: 0 + importCameras: 0 + importLights: 0 + swapUVChannels: 0 + generateSecondaryUV: 0 + useFileUnits: 1 + optimizeMeshForGPU: 1 + keepQuads: 0 + weldVertices: 1 + preserveHierarchy: 0 + indexFormat: 0 + secondaryUVAngleDistortion: 8 + secondaryUVAreaDistortion: 15.000001 + secondaryUVHardAngle: 88 + secondaryUVPackMargin: 4 + useFileScale: 1 + previousCalculatedGlobalScale: 1 + hasPreviousCalculatedGlobalScale: 0 + tangentSpace: + normalSmoothAngle: 60 + normalImportMode: 1 + tangentImportMode: 3 + normalCalculationMode: 4 + legacyComputeAllNormalsFromSmoothingGroupsWhenMeshHasBlendShapes: 0 + blendShapeNormalImportMode: 1 + normalSmoothingSource: 0 + importAnimation: 0 + copyAvatar: 0 + humanDescription: + serializedVersion: 2 + human: [] + skeleton: [] + armTwist: 0.5 + foreArmTwist: 0.5 + upperLegTwist: 0.5 + legTwist: 0.5 + armStretch: 0.05 + legStretch: 0.05 + feetSpacing: 0 + rootMotionBoneName: + hasTranslationDoF: 0 + hasExtraRoot: 0 + skeletonHasParents: 1 + lastHumanDescriptionAvatarSource: {instanceID: 0} + animationType: 0 + humanoidOversampling: 1 + additionalBone: 0 + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/ModularTrackKit/Models/ModularTrackCantMediumLeft.fbx" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/ModularTrackKit/Models/ModularTrackCantMediumLeft.fbx" new file mode 100644 index 00000000..3f4c6dc5 Binary files /dev/null and "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/ModularTrackKit/Models/ModularTrackCantMediumLeft.fbx" differ diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/ModularTrackKit/Models/ModularTrackCantMediumLeft.fbx.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/ModularTrackKit/Models/ModularTrackCantMediumLeft.fbx.meta" new file mode 100644 index 00000000..ea9afd53 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/ModularTrackKit/Models/ModularTrackCantMediumLeft.fbx.meta" @@ -0,0 +1,104 @@ +fileFormatVersion: 2 +guid: 193fbff110f9a4b5ea39398504a85034 +ModelImporter: + serializedVersion: 23 + fileIDToRecycleName: + 100000: LaneDivider + 100002: //RootNode + 400000: LaneDivider + 400002: //RootNode + 2100000: No Name + 2300000: LaneDivider + 2300002: //RootNode + 3300000: LaneDivider + 3300002: //RootNode + 4300000: ModularTrackCantMediumLeft + 4300002: LaneDivider + 6400000: LaneDivider + 6400002: //RootNode + externalObjects: {} + materials: + importMaterials: 0 + materialName: 0 + materialSearch: 1 + materialLocation: 1 + animations: + legacyGenerateAnimations: 4 + bakeSimulation: 0 + resampleCurves: 1 + optimizeGameObjects: 0 + motionNodeName: + rigImportErrors: + rigImportWarnings: + animationImportErrors: + animationImportWarnings: + animationRetargetingWarnings: + animationDoRetargetingWarnings: 0 + importAnimatedCustomProperties: 0 + importConstraints: 0 + animationCompression: 1 + animationRotationError: 0.5 + animationPositionError: 0.5 + animationScaleError: 0.5 + animationWrapMode: 0 + extraExposedTransformPaths: [] + extraUserProperties: [] + clipAnimations: [] + isReadable: 1 + meshes: + lODScreenPercentages: [] + globalScale: 1 + meshCompression: 0 + addColliders: 1 + useSRGBMaterialColor: 1 + importVisibility: 0 + importBlendShapes: 0 + importCameras: 0 + importLights: 0 + swapUVChannels: 0 + generateSecondaryUV: 0 + useFileUnits: 1 + optimizeMeshForGPU: 1 + keepQuads: 0 + weldVertices: 1 + preserveHierarchy: 0 + indexFormat: 0 + secondaryUVAngleDistortion: 8 + secondaryUVAreaDistortion: 15.000001 + secondaryUVHardAngle: 88 + secondaryUVPackMargin: 4 + useFileScale: 1 + previousCalculatedGlobalScale: 1 + hasPreviousCalculatedGlobalScale: 0 + tangentSpace: + normalSmoothAngle: 60 + normalImportMode: 1 + tangentImportMode: 3 + normalCalculationMode: 4 + legacyComputeAllNormalsFromSmoothingGroupsWhenMeshHasBlendShapes: 0 + blendShapeNormalImportMode: 1 + normalSmoothingSource: 0 + importAnimation: 0 + copyAvatar: 0 + humanDescription: + serializedVersion: 2 + human: [] + skeleton: [] + armTwist: 0.5 + foreArmTwist: 0.5 + upperLegTwist: 0.5 + legTwist: 0.5 + armStretch: 0.05 + legStretch: 0.05 + feetSpacing: 0 + rootMotionBoneName: + hasTranslationDoF: 0 + hasExtraRoot: 0 + skeletonHasParents: 1 + lastHumanDescriptionAvatarSource: {instanceID: 0} + animationType: 0 + humanoidOversampling: 1 + additionalBone: 0 + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/ModularTrackKit/Models/ModularTrackCantMediumRight.fbx" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/ModularTrackKit/Models/ModularTrackCantMediumRight.fbx" new file mode 100644 index 00000000..ddb3b5bd Binary files /dev/null and "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/ModularTrackKit/Models/ModularTrackCantMediumRight.fbx" differ diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/ModularTrackKit/Models/ModularTrackCantMediumRight.fbx.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/ModularTrackKit/Models/ModularTrackCantMediumRight.fbx.meta" new file mode 100644 index 00000000..03ab7dc6 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/ModularTrackKit/Models/ModularTrackCantMediumRight.fbx.meta" @@ -0,0 +1,104 @@ +fileFormatVersion: 2 +guid: da23b199c8ab5479e812925e733aaf8f +ModelImporter: + serializedVersion: 23 + fileIDToRecycleName: + 100000: LaneDivider + 100002: //RootNode + 400000: LaneDivider + 400002: //RootNode + 2100000: No Name + 2300000: LaneDivider + 2300002: //RootNode + 3300000: LaneDivider + 3300002: //RootNode + 4300000: ModularTrackCantMediumRight + 4300002: LaneDivider + 6400000: LaneDivider + 6400002: //RootNode + externalObjects: {} + materials: + importMaterials: 0 + materialName: 0 + materialSearch: 1 + materialLocation: 1 + animations: + legacyGenerateAnimations: 4 + bakeSimulation: 0 + resampleCurves: 1 + optimizeGameObjects: 0 + motionNodeName: + rigImportErrors: + rigImportWarnings: + animationImportErrors: + animationImportWarnings: + animationRetargetingWarnings: + animationDoRetargetingWarnings: 0 + importAnimatedCustomProperties: 0 + importConstraints: 0 + animationCompression: 1 + animationRotationError: 0.5 + animationPositionError: 0.5 + animationScaleError: 0.5 + animationWrapMode: 0 + extraExposedTransformPaths: [] + extraUserProperties: [] + clipAnimations: [] + isReadable: 1 + meshes: + lODScreenPercentages: [] + globalScale: 1 + meshCompression: 0 + addColliders: 1 + useSRGBMaterialColor: 1 + importVisibility: 0 + importBlendShapes: 0 + importCameras: 0 + importLights: 0 + swapUVChannels: 0 + generateSecondaryUV: 0 + useFileUnits: 1 + optimizeMeshForGPU: 1 + keepQuads: 0 + weldVertices: 1 + preserveHierarchy: 0 + indexFormat: 0 + secondaryUVAngleDistortion: 8 + secondaryUVAreaDistortion: 15.000001 + secondaryUVHardAngle: 88 + secondaryUVPackMargin: 4 + useFileScale: 1 + previousCalculatedGlobalScale: 1 + hasPreviousCalculatedGlobalScale: 0 + tangentSpace: + normalSmoothAngle: 60 + normalImportMode: 1 + tangentImportMode: 3 + normalCalculationMode: 4 + legacyComputeAllNormalsFromSmoothingGroupsWhenMeshHasBlendShapes: 0 + blendShapeNormalImportMode: 1 + normalSmoothingSource: 0 + importAnimation: 0 + copyAvatar: 0 + humanDescription: + serializedVersion: 2 + human: [] + skeleton: [] + armTwist: 0.5 + foreArmTwist: 0.5 + upperLegTwist: 0.5 + legTwist: 0.5 + armStretch: 0.05 + legStretch: 0.05 + feetSpacing: 0 + rootMotionBoneName: + hasTranslationDoF: 0 + hasExtraRoot: 0 + skeletonHasParents: 1 + lastHumanDescriptionAvatarSource: {instanceID: 0} + animationType: 0 + humanoidOversampling: 1 + additionalBone: 0 + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/ModularTrackKit/Models/ModularTrackCantSmallLeft.fbx" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/ModularTrackKit/Models/ModularTrackCantSmallLeft.fbx" new file mode 100644 index 00000000..ab1ff3cc Binary files /dev/null and "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/ModularTrackKit/Models/ModularTrackCantSmallLeft.fbx" differ diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/ModularTrackKit/Models/ModularTrackCantSmallLeft.fbx.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/ModularTrackKit/Models/ModularTrackCantSmallLeft.fbx.meta" new file mode 100644 index 00000000..880d336f --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/ModularTrackKit/Models/ModularTrackCantSmallLeft.fbx.meta" @@ -0,0 +1,104 @@ +fileFormatVersion: 2 +guid: 4bf1a364dc54642f9a8a2d20c3cae318 +ModelImporter: + serializedVersion: 23 + fileIDToRecycleName: + 100000: LaneDivider + 100002: //RootNode + 400000: LaneDivider + 400002: //RootNode + 2100000: No Name + 2300000: LaneDivider + 2300002: //RootNode + 3300000: LaneDivider + 3300002: //RootNode + 4300000: ModularTrackCantSmallLeft + 4300002: LaneDivider + 6400000: LaneDivider + 6400002: //RootNode + externalObjects: {} + materials: + importMaterials: 0 + materialName: 0 + materialSearch: 1 + materialLocation: 1 + animations: + legacyGenerateAnimations: 4 + bakeSimulation: 0 + resampleCurves: 1 + optimizeGameObjects: 0 + motionNodeName: + rigImportErrors: + rigImportWarnings: + animationImportErrors: + animationImportWarnings: + animationRetargetingWarnings: + animationDoRetargetingWarnings: 0 + importAnimatedCustomProperties: 0 + importConstraints: 0 + animationCompression: 1 + animationRotationError: 0.5 + animationPositionError: 0.5 + animationScaleError: 0.5 + animationWrapMode: 0 + extraExposedTransformPaths: [] + extraUserProperties: [] + clipAnimations: [] + isReadable: 1 + meshes: + lODScreenPercentages: [] + globalScale: 1 + meshCompression: 0 + addColliders: 1 + useSRGBMaterialColor: 1 + importVisibility: 0 + importBlendShapes: 0 + importCameras: 0 + importLights: 0 + swapUVChannels: 0 + generateSecondaryUV: 0 + useFileUnits: 1 + optimizeMeshForGPU: 1 + keepQuads: 0 + weldVertices: 1 + preserveHierarchy: 0 + indexFormat: 0 + secondaryUVAngleDistortion: 8 + secondaryUVAreaDistortion: 15.000001 + secondaryUVHardAngle: 88 + secondaryUVPackMargin: 4 + useFileScale: 1 + previousCalculatedGlobalScale: 1 + hasPreviousCalculatedGlobalScale: 0 + tangentSpace: + normalSmoothAngle: 60 + normalImportMode: 1 + tangentImportMode: 3 + normalCalculationMode: 4 + legacyComputeAllNormalsFromSmoothingGroupsWhenMeshHasBlendShapes: 0 + blendShapeNormalImportMode: 1 + normalSmoothingSource: 0 + importAnimation: 0 + copyAvatar: 0 + humanDescription: + serializedVersion: 2 + human: [] + skeleton: [] + armTwist: 0.5 + foreArmTwist: 0.5 + upperLegTwist: 0.5 + legTwist: 0.5 + armStretch: 0.05 + legStretch: 0.05 + feetSpacing: 0 + rootMotionBoneName: + hasTranslationDoF: 0 + hasExtraRoot: 0 + skeletonHasParents: 1 + lastHumanDescriptionAvatarSource: {instanceID: 0} + animationType: 0 + humanoidOversampling: 1 + additionalBone: 0 + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/ModularTrackKit/Models/ModularTrackCantSmallRight.fbx" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/ModularTrackKit/Models/ModularTrackCantSmallRight.fbx" new file mode 100644 index 00000000..ecfcb23e Binary files /dev/null and "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/ModularTrackKit/Models/ModularTrackCantSmallRight.fbx" differ diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/ModularTrackKit/Models/ModularTrackCantSmallRight.fbx.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/ModularTrackKit/Models/ModularTrackCantSmallRight.fbx.meta" new file mode 100644 index 00000000..37b5c2e9 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/ModularTrackKit/Models/ModularTrackCantSmallRight.fbx.meta" @@ -0,0 +1,104 @@ +fileFormatVersion: 2 +guid: 52f3b50c1579446dfa7dac35f5ac2e0a +ModelImporter: + serializedVersion: 23 + fileIDToRecycleName: + 100000: LaneDivider + 100002: //RootNode + 400000: LaneDivider + 400002: //RootNode + 2100000: No Name + 2300000: LaneDivider + 2300002: //RootNode + 3300000: LaneDivider + 3300002: //RootNode + 4300000: ModularTrackCantSmallRight + 4300002: LaneDivider + 6400000: LaneDivider + 6400002: //RootNode + externalObjects: {} + materials: + importMaterials: 0 + materialName: 0 + materialSearch: 1 + materialLocation: 1 + animations: + legacyGenerateAnimations: 4 + bakeSimulation: 0 + resampleCurves: 1 + optimizeGameObjects: 0 + motionNodeName: + rigImportErrors: + rigImportWarnings: + animationImportErrors: + animationImportWarnings: + animationRetargetingWarnings: + animationDoRetargetingWarnings: 0 + importAnimatedCustomProperties: 0 + importConstraints: 0 + animationCompression: 1 + animationRotationError: 0.5 + animationPositionError: 0.5 + animationScaleError: 0.5 + animationWrapMode: 0 + extraExposedTransformPaths: [] + extraUserProperties: [] + clipAnimations: [] + isReadable: 1 + meshes: + lODScreenPercentages: [] + globalScale: 1 + meshCompression: 0 + addColliders: 1 + useSRGBMaterialColor: 1 + importVisibility: 0 + importBlendShapes: 0 + importCameras: 0 + importLights: 0 + swapUVChannels: 0 + generateSecondaryUV: 0 + useFileUnits: 1 + optimizeMeshForGPU: 1 + keepQuads: 0 + weldVertices: 1 + preserveHierarchy: 0 + indexFormat: 0 + secondaryUVAngleDistortion: 8 + secondaryUVAreaDistortion: 15.000001 + secondaryUVHardAngle: 88 + secondaryUVPackMargin: 4 + useFileScale: 1 + previousCalculatedGlobalScale: 1 + hasPreviousCalculatedGlobalScale: 0 + tangentSpace: + normalSmoothAngle: 60 + normalImportMode: 1 + tangentImportMode: 3 + normalCalculationMode: 4 + legacyComputeAllNormalsFromSmoothingGroupsWhenMeshHasBlendShapes: 0 + blendShapeNormalImportMode: 1 + normalSmoothingSource: 0 + importAnimation: 0 + copyAvatar: 0 + humanDescription: + serializedVersion: 2 + human: [] + skeleton: [] + armTwist: 0.5 + foreArmTwist: 0.5 + upperLegTwist: 0.5 + legTwist: 0.5 + armStretch: 0.05 + legStretch: 0.05 + feetSpacing: 0 + rootMotionBoneName: + hasTranslationDoF: 0 + hasExtraRoot: 0 + skeletonHasParents: 1 + lastHumanDescriptionAvatarSource: {instanceID: 0} + animationType: 0 + humanoidOversampling: 1 + additionalBone: 0 + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/ModularTrackKit/Models/ModularTrackCurveLargeLeft.fbx" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/ModularTrackKit/Models/ModularTrackCurveLargeLeft.fbx" new file mode 100644 index 00000000..7e34c6dc Binary files /dev/null and "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/ModularTrackKit/Models/ModularTrackCurveLargeLeft.fbx" differ diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/ModularTrackKit/Models/ModularTrackCurveLargeLeft.fbx.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/ModularTrackKit/Models/ModularTrackCurveLargeLeft.fbx.meta" new file mode 100644 index 00000000..e3d3a0bc --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/ModularTrackKit/Models/ModularTrackCurveLargeLeft.fbx.meta" @@ -0,0 +1,119 @@ +fileFormatVersion: 2 +guid: 3cc54c2c67fc34a1abe6fe43c889f8e3 +ModelImporter: + serializedVersion: 23 + fileIDToRecycleName: + 100000: //RootNode + 100002: BezierCurve + 100004: ModularTrackCurveLargeLeft + 100006: ModularTrackStraight + 100008: LaneDivider + 400000: //RootNode + 400002: BezierCurve + 400004: ModularTrackCurveLargeLeft + 400006: ModularTrackStraight + 400008: LaneDivider + 2100000: No Name + 2300000: //RootNode + 2300002: BezierCurve + 2300004: ModularTrackCurveLargeLeft + 2300006: ModularTrackStraight + 2300008: LaneDivider + 3300000: //RootNode + 3300002: BezierCurve + 3300004: ModularTrackCurveLargeLeft + 3300006: ModularTrackStraight + 3300008: LaneDivider + 4300000: ModularTrackCurveLargeLeft + 4300002: ModularTrackStraight + 4300004: BezierCurve + 4300006: LaneDivider + 6400000: LaneDivider + 6400002: //RootNode + 2186277476908879412: ImportLogs + externalObjects: {} + materials: + importMaterials: 0 + materialName: 0 + materialSearch: 1 + materialLocation: 1 + animations: + legacyGenerateAnimations: 4 + bakeSimulation: 0 + resampleCurves: 1 + optimizeGameObjects: 0 + motionNodeName: + rigImportErrors: + rigImportWarnings: + animationImportErrors: + animationImportWarnings: + animationRetargetingWarnings: + animationDoRetargetingWarnings: 0 + importAnimatedCustomProperties: 0 + importConstraints: 0 + animationCompression: 1 + animationRotationError: 0.5 + animationPositionError: 0.5 + animationScaleError: 0.5 + animationWrapMode: 0 + extraExposedTransformPaths: [] + extraUserProperties: [] + clipAnimations: [] + isReadable: 1 + meshes: + lODScreenPercentages: [] + globalScale: 1 + meshCompression: 0 + addColliders: 1 + useSRGBMaterialColor: 1 + importVisibility: 0 + importBlendShapes: 0 + importCameras: 0 + importLights: 0 + swapUVChannels: 0 + generateSecondaryUV: 0 + useFileUnits: 1 + optimizeMeshForGPU: 1 + keepQuads: 0 + weldVertices: 1 + preserveHierarchy: 0 + indexFormat: 0 + secondaryUVAngleDistortion: 8 + secondaryUVAreaDistortion: 15.000001 + secondaryUVHardAngle: 88 + secondaryUVPackMargin: 4 + useFileScale: 1 + previousCalculatedGlobalScale: 1 + hasPreviousCalculatedGlobalScale: 0 + tangentSpace: + normalSmoothAngle: 60 + normalImportMode: 1 + tangentImportMode: 3 + normalCalculationMode: 4 + legacyComputeAllNormalsFromSmoothingGroupsWhenMeshHasBlendShapes: 0 + blendShapeNormalImportMode: 1 + normalSmoothingSource: 0 + importAnimation: 0 + copyAvatar: 0 + humanDescription: + serializedVersion: 2 + human: [] + skeleton: [] + armTwist: 0.5 + foreArmTwist: 0.5 + upperLegTwist: 0.5 + legTwist: 0.5 + armStretch: 0.05 + legStretch: 0.05 + feetSpacing: 0 + rootMotionBoneName: + hasTranslationDoF: 0 + hasExtraRoot: 0 + skeletonHasParents: 1 + lastHumanDescriptionAvatarSource: {instanceID: 0} + animationType: 0 + humanoidOversampling: 1 + additionalBone: 0 + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/ModularTrackKit/Models/ModularTrackCurveLeft.fbx" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/ModularTrackKit/Models/ModularTrackCurveLeft.fbx" new file mode 100644 index 00000000..101ebd29 Binary files /dev/null and "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/ModularTrackKit/Models/ModularTrackCurveLeft.fbx" differ diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/ModularTrackKit/Models/ModularTrackCurveLeft.fbx.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/ModularTrackKit/Models/ModularTrackCurveLeft.fbx.meta" new file mode 100644 index 00000000..58d82673 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/ModularTrackKit/Models/ModularTrackCurveLeft.fbx.meta" @@ -0,0 +1,119 @@ +fileFormatVersion: 2 +guid: a0922edcbe6b74564b40735068507f0c +ModelImporter: + serializedVersion: 23 + fileIDToRecycleName: + 100000: LaneDividers + 100002: //RootNode + 100004: ModularTrackCurveLeft + 100006: TwirlOrigin + 100008: TwirlOrigin.001 + 100010: LaneDivider + 400000: LaneDividers + 400002: //RootNode + 400004: ModularTrackCurveLeft + 400006: TwirlOrigin + 400008: TwirlOrigin.001 + 400010: LaneDivider + 2100000: No Name + 2300000: LaneDividers + 2300002: ModularTrackCurveLeft + 2300004: LaneDivider + 2300006: //RootNode + 3300000: LaneDividers + 3300002: ModularTrackCurveLeft + 3300004: LaneDivider + 3300006: //RootNode + 4300000: ModularTrackCurveLeft + 4300002: LaneDividers + 4300004: LaneDivider + 6400000: LaneDividers + 6400002: ModularTrackCurveLeft + 6400004: LaneDivider + 6400006: //RootNode + externalObjects: {} + materials: + importMaterials: 0 + materialName: 0 + materialSearch: 1 + materialLocation: 1 + animations: + legacyGenerateAnimations: 4 + bakeSimulation: 0 + resampleCurves: 1 + optimizeGameObjects: 0 + motionNodeName: + rigImportErrors: + rigImportWarnings: + animationImportErrors: + animationImportWarnings: + animationRetargetingWarnings: + animationDoRetargetingWarnings: 0 + importAnimatedCustomProperties: 0 + importConstraints: 0 + animationCompression: 1 + animationRotationError: 0.5 + animationPositionError: 0.5 + animationScaleError: 0.5 + animationWrapMode: 0 + extraExposedTransformPaths: [] + extraUserProperties: [] + clipAnimations: [] + isReadable: 1 + meshes: + lODScreenPercentages: [] + globalScale: 1 + meshCompression: 0 + addColliders: 1 + useSRGBMaterialColor: 1 + importVisibility: 0 + importBlendShapes: 0 + importCameras: 0 + importLights: 0 + swapUVChannels: 0 + generateSecondaryUV: 0 + useFileUnits: 1 + optimizeMeshForGPU: 1 + keepQuads: 0 + weldVertices: 1 + preserveHierarchy: 0 + indexFormat: 0 + secondaryUVAngleDistortion: 8 + secondaryUVAreaDistortion: 15.000001 + secondaryUVHardAngle: 88 + secondaryUVPackMargin: 4 + useFileScale: 1 + previousCalculatedGlobalScale: 1 + hasPreviousCalculatedGlobalScale: 0 + tangentSpace: + normalSmoothAngle: 60 + normalImportMode: 1 + tangentImportMode: 3 + normalCalculationMode: 4 + legacyComputeAllNormalsFromSmoothingGroupsWhenMeshHasBlendShapes: 0 + blendShapeNormalImportMode: 1 + normalSmoothingSource: 0 + importAnimation: 0 + copyAvatar: 0 + humanDescription: + serializedVersion: 2 + human: [] + skeleton: [] + armTwist: 0.5 + foreArmTwist: 0.5 + upperLegTwist: 0.5 + legTwist: 0.5 + armStretch: 0.05 + legStretch: 0.05 + feetSpacing: 0 + rootMotionBoneName: + hasTranslationDoF: 0 + hasExtraRoot: 0 + skeletonHasParents: 1 + lastHumanDescriptionAvatarSource: {instanceID: 0} + animationType: 0 + humanoidOversampling: 1 + additionalBone: 0 + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/ModularTrackKit/Models/ModularTrackCurveMediumLeft.fbx" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/ModularTrackKit/Models/ModularTrackCurveMediumLeft.fbx" new file mode 100644 index 00000000..0d6f2066 Binary files /dev/null and "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/ModularTrackKit/Models/ModularTrackCurveMediumLeft.fbx" differ diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/ModularTrackKit/Models/ModularTrackCurveMediumLeft.fbx.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/ModularTrackKit/Models/ModularTrackCurveMediumLeft.fbx.meta" new file mode 100644 index 00000000..63ec50ed --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/ModularTrackKit/Models/ModularTrackCurveMediumLeft.fbx.meta" @@ -0,0 +1,104 @@ +fileFormatVersion: 2 +guid: fd8897a9f46db4ff1ba74975ec44af36 +ModelImporter: + serializedVersion: 23 + fileIDToRecycleName: + 100000: //RootNode + 100002: LaneDivider + 400000: //RootNode + 400002: LaneDivider + 2100000: No Name + 2300000: //RootNode + 2300002: LaneDivider + 3300000: //RootNode + 3300002: LaneDivider + 4300000: ModularTrackCurveMediumLeft + 4300002: LaneDivider + 6400000: LaneDivider + 6400002: //RootNode + externalObjects: {} + materials: + importMaterials: 0 + materialName: 0 + materialSearch: 1 + materialLocation: 1 + animations: + legacyGenerateAnimations: 4 + bakeSimulation: 0 + resampleCurves: 1 + optimizeGameObjects: 0 + motionNodeName: + rigImportErrors: + rigImportWarnings: + animationImportErrors: + animationImportWarnings: + animationRetargetingWarnings: + animationDoRetargetingWarnings: 0 + importAnimatedCustomProperties: 0 + importConstraints: 0 + animationCompression: 1 + animationRotationError: 0.5 + animationPositionError: 0.5 + animationScaleError: 0.5 + animationWrapMode: 0 + extraExposedTransformPaths: [] + extraUserProperties: [] + clipAnimations: [] + isReadable: 1 + meshes: + lODScreenPercentages: [] + globalScale: 1 + meshCompression: 0 + addColliders: 1 + useSRGBMaterialColor: 1 + importVisibility: 0 + importBlendShapes: 0 + importCameras: 0 + importLights: 0 + swapUVChannels: 0 + generateSecondaryUV: 0 + useFileUnits: 1 + optimizeMeshForGPU: 1 + keepQuads: 0 + weldVertices: 1 + preserveHierarchy: 0 + indexFormat: 0 + secondaryUVAngleDistortion: 8 + secondaryUVAreaDistortion: 15.000001 + secondaryUVHardAngle: 88 + secondaryUVPackMargin: 4 + useFileScale: 1 + previousCalculatedGlobalScale: 1 + hasPreviousCalculatedGlobalScale: 0 + tangentSpace: + normalSmoothAngle: 60 + normalImportMode: 1 + tangentImportMode: 3 + normalCalculationMode: 4 + legacyComputeAllNormalsFromSmoothingGroupsWhenMeshHasBlendShapes: 0 + blendShapeNormalImportMode: 1 + normalSmoothingSource: 0 + importAnimation: 0 + copyAvatar: 0 + humanDescription: + serializedVersion: 2 + human: [] + skeleton: [] + armTwist: 0.5 + foreArmTwist: 0.5 + upperLegTwist: 0.5 + legTwist: 0.5 + armStretch: 0.05 + legStretch: 0.05 + feetSpacing: 0 + rootMotionBoneName: + hasTranslationDoF: 0 + hasExtraRoot: 0 + skeletonHasParents: 1 + lastHumanDescriptionAvatarSource: {instanceID: 0} + animationType: 0 + humanoidOversampling: 1 + additionalBone: 0 + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/ModularTrackKit/Models/ModularTrackRamp.fbx" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/ModularTrackKit/Models/ModularTrackRamp.fbx" new file mode 100644 index 00000000..a2cb94ca Binary files /dev/null and "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/ModularTrackKit/Models/ModularTrackRamp.fbx" differ diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/ModularTrackKit/Models/ModularTrackRamp.fbx.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/ModularTrackKit/Models/ModularTrackRamp.fbx.meta" new file mode 100644 index 00000000..37513752 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/ModularTrackKit/Models/ModularTrackRamp.fbx.meta" @@ -0,0 +1,104 @@ +fileFormatVersion: 2 +guid: fb55a8802f7114aceb2a7d7f0918153b +ModelImporter: + serializedVersion: 23 + fileIDToRecycleName: + 100000: //RootNode + 100002: LaneDivider + 400000: //RootNode + 400002: LaneDivider + 2100000: No Name + 2300000: //RootNode + 2300002: LaneDivider + 3300000: //RootNode + 3300002: LaneDivider + 4300000: ModularTrackRamp + 4300002: LaneDivider + 6400000: //RootNode + 6400002: LaneDivider + externalObjects: {} + materials: + importMaterials: 0 + materialName: 0 + materialSearch: 1 + materialLocation: 1 + animations: + legacyGenerateAnimations: 4 + bakeSimulation: 0 + resampleCurves: 1 + optimizeGameObjects: 0 + motionNodeName: + rigImportErrors: + rigImportWarnings: + animationImportErrors: + animationImportWarnings: + animationRetargetingWarnings: + animationDoRetargetingWarnings: 0 + importAnimatedCustomProperties: 0 + importConstraints: 0 + animationCompression: 1 + animationRotationError: 0.5 + animationPositionError: 0.5 + animationScaleError: 0.5 + animationWrapMode: 0 + extraExposedTransformPaths: [] + extraUserProperties: [] + clipAnimations: [] + isReadable: 1 + meshes: + lODScreenPercentages: [] + globalScale: 1 + meshCompression: 0 + addColliders: 1 + useSRGBMaterialColor: 1 + importVisibility: 0 + importBlendShapes: 0 + importCameras: 0 + importLights: 0 + swapUVChannels: 0 + generateSecondaryUV: 0 + useFileUnits: 1 + optimizeMeshForGPU: 1 + keepQuads: 0 + weldVertices: 1 + preserveHierarchy: 0 + indexFormat: 0 + secondaryUVAngleDistortion: 8 + secondaryUVAreaDistortion: 15.000001 + secondaryUVHardAngle: 88 + secondaryUVPackMargin: 4 + useFileScale: 1 + previousCalculatedGlobalScale: 1 + hasPreviousCalculatedGlobalScale: 0 + tangentSpace: + normalSmoothAngle: 60 + normalImportMode: 1 + tangentImportMode: 3 + normalCalculationMode: 4 + legacyComputeAllNormalsFromSmoothingGroupsWhenMeshHasBlendShapes: 0 + blendShapeNormalImportMode: 1 + normalSmoothingSource: 0 + importAnimation: 0 + copyAvatar: 0 + humanDescription: + serializedVersion: 2 + human: [] + skeleton: [] + armTwist: 0.5 + foreArmTwist: 0.5 + upperLegTwist: 0.5 + legTwist: 0.5 + armStretch: 0.05 + legStretch: 0.05 + feetSpacing: 0 + rootMotionBoneName: + hasTranslationDoF: 0 + hasExtraRoot: 0 + skeletonHasParents: 1 + lastHumanDescriptionAvatarSource: {instanceID: 0} + animationType: 0 + humanoidOversampling: 1 + additionalBone: 0 + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/ModularTrackKit/Models/ModularTrackRampCurveLeft.fbx" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/ModularTrackKit/Models/ModularTrackRampCurveLeft.fbx" new file mode 100644 index 00000000..eeb01127 Binary files /dev/null and "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/ModularTrackKit/Models/ModularTrackRampCurveLeft.fbx" differ diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/ModularTrackKit/Models/ModularTrackRampCurveLeft.fbx.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/ModularTrackKit/Models/ModularTrackRampCurveLeft.fbx.meta" new file mode 100644 index 00000000..7a765b59 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/ModularTrackKit/Models/ModularTrackRampCurveLeft.fbx.meta" @@ -0,0 +1,105 @@ +fileFormatVersion: 2 +guid: 05fede2a6022d42b1ade2912387039fa +ModelImporter: + serializedVersion: 23 + fileIDToRecycleName: + 100000: LaneDivider + 100002: //RootNode + 400000: LaneDivider + 400002: //RootNode + 2100000: No Name + 2300000: LaneDivider + 2300002: //RootNode + 3300000: LaneDivider + 3300002: //RootNode + 4300000: ModularTrackRampCurveLeft + 4300002: LaneDivider + 4300004: ModularTrackUBank + 6400000: LaneDivider + 6400002: //RootNode + externalObjects: {} + materials: + importMaterials: 0 + materialName: 0 + materialSearch: 1 + materialLocation: 1 + animations: + legacyGenerateAnimations: 4 + bakeSimulation: 0 + resampleCurves: 1 + optimizeGameObjects: 0 + motionNodeName: + rigImportErrors: + rigImportWarnings: + animationImportErrors: + animationImportWarnings: + animationRetargetingWarnings: + animationDoRetargetingWarnings: 0 + importAnimatedCustomProperties: 0 + importConstraints: 0 + animationCompression: 1 + animationRotationError: 0.5 + animationPositionError: 0.5 + animationScaleError: 0.5 + animationWrapMode: 0 + extraExposedTransformPaths: [] + extraUserProperties: [] + clipAnimations: [] + isReadable: 1 + meshes: + lODScreenPercentages: [] + globalScale: 1 + meshCompression: 0 + addColliders: 1 + useSRGBMaterialColor: 1 + importVisibility: 0 + importBlendShapes: 0 + importCameras: 0 + importLights: 0 + swapUVChannels: 0 + generateSecondaryUV: 0 + useFileUnits: 1 + optimizeMeshForGPU: 1 + keepQuads: 0 + weldVertices: 1 + preserveHierarchy: 0 + indexFormat: 0 + secondaryUVAngleDistortion: 8 + secondaryUVAreaDistortion: 15.000001 + secondaryUVHardAngle: 88 + secondaryUVPackMargin: 4 + useFileScale: 1 + previousCalculatedGlobalScale: 1 + hasPreviousCalculatedGlobalScale: 0 + tangentSpace: + normalSmoothAngle: 60 + normalImportMode: 1 + tangentImportMode: 3 + normalCalculationMode: 4 + legacyComputeAllNormalsFromSmoothingGroupsWhenMeshHasBlendShapes: 0 + blendShapeNormalImportMode: 1 + normalSmoothingSource: 0 + importAnimation: 0 + copyAvatar: 0 + humanDescription: + serializedVersion: 2 + human: [] + skeleton: [] + armTwist: 0.5 + foreArmTwist: 0.5 + upperLegTwist: 0.5 + legTwist: 0.5 + armStretch: 0.05 + legStretch: 0.05 + feetSpacing: 0 + rootMotionBoneName: + hasTranslationDoF: 0 + hasExtraRoot: 0 + skeletonHasParents: 1 + lastHumanDescriptionAvatarSource: {instanceID: 0} + animationType: 0 + humanoidOversampling: 1 + additionalBone: 0 + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/ModularTrackKit/Models/ModularTrackRampCurveRight.fbx" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/ModularTrackKit/Models/ModularTrackRampCurveRight.fbx" new file mode 100644 index 00000000..d93cb278 Binary files /dev/null and "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/ModularTrackKit/Models/ModularTrackRampCurveRight.fbx" differ diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/ModularTrackKit/Models/ModularTrackRampCurveRight.fbx.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/ModularTrackKit/Models/ModularTrackRampCurveRight.fbx.meta" new file mode 100644 index 00000000..4a9c13a3 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/ModularTrackKit/Models/ModularTrackRampCurveRight.fbx.meta" @@ -0,0 +1,105 @@ +fileFormatVersion: 2 +guid: f06addda049014caaa30b7f4b73e447d +ModelImporter: + serializedVersion: 23 + fileIDToRecycleName: + 100000: LaneDivider + 100002: //RootNode + 400000: LaneDivider + 400002: //RootNode + 2100000: No Name + 2300000: LaneDivider + 2300002: //RootNode + 3300000: LaneDivider + 3300002: //RootNode + 4300000: ModularTrackRampCurveRight + 4300002: LaneDivider + 4300004: ModularTrackRampCurveRIght + 6400000: LaneDivider + 6400002: //RootNode + externalObjects: {} + materials: + importMaterials: 0 + materialName: 0 + materialSearch: 1 + materialLocation: 1 + animations: + legacyGenerateAnimations: 4 + bakeSimulation: 0 + resampleCurves: 1 + optimizeGameObjects: 0 + motionNodeName: + rigImportErrors: + rigImportWarnings: + animationImportErrors: + animationImportWarnings: + animationRetargetingWarnings: + animationDoRetargetingWarnings: 0 + importAnimatedCustomProperties: 0 + importConstraints: 0 + animationCompression: 1 + animationRotationError: 0.5 + animationPositionError: 0.5 + animationScaleError: 0.5 + animationWrapMode: 0 + extraExposedTransformPaths: [] + extraUserProperties: [] + clipAnimations: [] + isReadable: 1 + meshes: + lODScreenPercentages: [] + globalScale: 1 + meshCompression: 0 + addColliders: 1 + useSRGBMaterialColor: 1 + importVisibility: 0 + importBlendShapes: 0 + importCameras: 0 + importLights: 0 + swapUVChannels: 0 + generateSecondaryUV: 0 + useFileUnits: 1 + optimizeMeshForGPU: 1 + keepQuads: 0 + weldVertices: 1 + preserveHierarchy: 0 + indexFormat: 0 + secondaryUVAngleDistortion: 8 + secondaryUVAreaDistortion: 15.000001 + secondaryUVHardAngle: 88 + secondaryUVPackMargin: 4 + useFileScale: 1 + previousCalculatedGlobalScale: 1 + hasPreviousCalculatedGlobalScale: 0 + tangentSpace: + normalSmoothAngle: 60 + normalImportMode: 1 + tangentImportMode: 3 + normalCalculationMode: 4 + legacyComputeAllNormalsFromSmoothingGroupsWhenMeshHasBlendShapes: 0 + blendShapeNormalImportMode: 1 + normalSmoothingSource: 0 + importAnimation: 0 + copyAvatar: 0 + humanDescription: + serializedVersion: 2 + human: [] + skeleton: [] + armTwist: 0.5 + foreArmTwist: 0.5 + upperLegTwist: 0.5 + legTwist: 0.5 + armStretch: 0.05 + legStretch: 0.05 + feetSpacing: 0 + rootMotionBoneName: + hasTranslationDoF: 0 + hasExtraRoot: 0 + skeletonHasParents: 1 + lastHumanDescriptionAvatarSource: {instanceID: 0} + animationType: 0 + humanoidOversampling: 1 + additionalBone: 0 + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/ModularTrackKit/Models/ModularTrackSCurveLeft.fbx" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/ModularTrackKit/Models/ModularTrackSCurveLeft.fbx" new file mode 100644 index 00000000..b215ef1f Binary files /dev/null and "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/ModularTrackKit/Models/ModularTrackSCurveLeft.fbx" differ diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/ModularTrackKit/Models/ModularTrackSCurveLeft.fbx.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/ModularTrackKit/Models/ModularTrackSCurveLeft.fbx.meta" new file mode 100644 index 00000000..6851cd1a --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/ModularTrackKit/Models/ModularTrackSCurveLeft.fbx.meta" @@ -0,0 +1,104 @@ +fileFormatVersion: 2 +guid: becaefafb9fa24fe8bc0bbb4ce749bcc +ModelImporter: + serializedVersion: 23 + fileIDToRecycleName: + 100000: //RootNode + 100002: LaneDivider + 400000: //RootNode + 400002: LaneDivider + 2100000: No Name + 2300000: //RootNode + 2300002: LaneDivider + 3300000: //RootNode + 3300002: LaneDivider + 4300000: ModularTrackSCurveLeft + 4300002: LaneDivider + 6400000: LaneDivider + 6400002: //RootNode + externalObjects: {} + materials: + importMaterials: 0 + materialName: 0 + materialSearch: 1 + materialLocation: 1 + animations: + legacyGenerateAnimations: 4 + bakeSimulation: 0 + resampleCurves: 1 + optimizeGameObjects: 0 + motionNodeName: + rigImportErrors: + rigImportWarnings: + animationImportErrors: + animationImportWarnings: + animationRetargetingWarnings: + animationDoRetargetingWarnings: 0 + importAnimatedCustomProperties: 0 + importConstraints: 0 + animationCompression: 1 + animationRotationError: 0.5 + animationPositionError: 0.5 + animationScaleError: 0.5 + animationWrapMode: 0 + extraExposedTransformPaths: [] + extraUserProperties: [] + clipAnimations: [] + isReadable: 1 + meshes: + lODScreenPercentages: [] + globalScale: 1 + meshCompression: 0 + addColliders: 1 + useSRGBMaterialColor: 1 + importVisibility: 0 + importBlendShapes: 0 + importCameras: 0 + importLights: 0 + swapUVChannels: 0 + generateSecondaryUV: 0 + useFileUnits: 1 + optimizeMeshForGPU: 1 + keepQuads: 0 + weldVertices: 1 + preserveHierarchy: 0 + indexFormat: 0 + secondaryUVAngleDistortion: 8 + secondaryUVAreaDistortion: 15.000001 + secondaryUVHardAngle: 88 + secondaryUVPackMargin: 4 + useFileScale: 1 + previousCalculatedGlobalScale: 1 + hasPreviousCalculatedGlobalScale: 0 + tangentSpace: + normalSmoothAngle: 60 + normalImportMode: 1 + tangentImportMode: 3 + normalCalculationMode: 4 + legacyComputeAllNormalsFromSmoothingGroupsWhenMeshHasBlendShapes: 0 + blendShapeNormalImportMode: 1 + normalSmoothingSource: 0 + importAnimation: 0 + copyAvatar: 0 + humanDescription: + serializedVersion: 2 + human: [] + skeleton: [] + armTwist: 0.5 + foreArmTwist: 0.5 + upperLegTwist: 0.5 + legTwist: 0.5 + armStretch: 0.05 + legStretch: 0.05 + feetSpacing: 0 + rootMotionBoneName: + hasTranslationDoF: 0 + hasExtraRoot: 0 + skeletonHasParents: 1 + lastHumanDescriptionAvatarSource: {instanceID: 0} + animationType: 0 + humanoidOversampling: 1 + additionalBone: 0 + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/ModularTrackKit/Models/ModularTrackSCurveRight.fbx" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/ModularTrackKit/Models/ModularTrackSCurveRight.fbx" new file mode 100644 index 00000000..e74eb5c8 Binary files /dev/null and "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/ModularTrackKit/Models/ModularTrackSCurveRight.fbx" differ diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/ModularTrackKit/Models/ModularTrackSCurveRight.fbx.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/ModularTrackKit/Models/ModularTrackSCurveRight.fbx.meta" new file mode 100644 index 00000000..c145a777 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/ModularTrackKit/Models/ModularTrackSCurveRight.fbx.meta" @@ -0,0 +1,105 @@ +fileFormatVersion: 2 +guid: 109245566253c1c4aaa181dd71fad1a5 +ModelImporter: + serializedVersion: 23 + fileIDToRecycleName: + 100000: LaneDivider + 100002: //RootNode + 400000: LaneDivider + 400002: //RootNode + 2100000: lambert1 + 2300000: LaneDivider + 2300002: //RootNode + 3300000: LaneDivider + 3300002: //RootNode + 4300000: ModularTrackSCurveLeft + 4300002: LaneDivider + 4300004: ModularTrackSCurveRight + 6400000: LaneDivider + 6400002: //RootNode + externalObjects: {} + materials: + importMaterials: 0 + materialName: 0 + materialSearch: 1 + materialLocation: 1 + animations: + legacyGenerateAnimations: 4 + bakeSimulation: 0 + resampleCurves: 1 + optimizeGameObjects: 0 + motionNodeName: + rigImportErrors: + rigImportWarnings: + animationImportErrors: + animationImportWarnings: + animationRetargetingWarnings: + animationDoRetargetingWarnings: 0 + importAnimatedCustomProperties: 0 + importConstraints: 0 + animationCompression: 1 + animationRotationError: 0.5 + animationPositionError: 0.5 + animationScaleError: 0.5 + animationWrapMode: 0 + extraExposedTransformPaths: [] + extraUserProperties: [] + clipAnimations: [] + isReadable: 1 + meshes: + lODScreenPercentages: [] + globalScale: 1 + meshCompression: 0 + addColliders: 1 + useSRGBMaterialColor: 1 + importVisibility: 0 + importBlendShapes: 0 + importCameras: 0 + importLights: 0 + swapUVChannels: 0 + generateSecondaryUV: 0 + useFileUnits: 1 + optimizeMeshForGPU: 1 + keepQuads: 0 + weldVertices: 1 + preserveHierarchy: 0 + indexFormat: 0 + secondaryUVAngleDistortion: 8 + secondaryUVAreaDistortion: 15.000001 + secondaryUVHardAngle: 88 + secondaryUVPackMargin: 4 + useFileScale: 1 + previousCalculatedGlobalScale: 1 + hasPreviousCalculatedGlobalScale: 0 + tangentSpace: + normalSmoothAngle: 60 + normalImportMode: 1 + tangentImportMode: 3 + normalCalculationMode: 4 + legacyComputeAllNormalsFromSmoothingGroupsWhenMeshHasBlendShapes: 0 + blendShapeNormalImportMode: 1 + normalSmoothingSource: 0 + importAnimation: 0 + copyAvatar: 0 + humanDescription: + serializedVersion: 2 + human: [] + skeleton: [] + armTwist: 0.5 + foreArmTwist: 0.5 + upperLegTwist: 0.5 + legTwist: 0.5 + armStretch: 0.05 + legStretch: 0.05 + feetSpacing: 0 + rootMotionBoneName: + hasTranslationDoF: 0 + hasExtraRoot: 0 + skeletonHasParents: 1 + lastHumanDescriptionAvatarSource: {instanceID: 0} + animationType: 0 + humanoidOversampling: 1 + additionalBone: 0 + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/ModularTrackKit/Models/ModularTrackSpiralLeft.fbx" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/ModularTrackKit/Models/ModularTrackSpiralLeft.fbx" new file mode 100644 index 00000000..36f2487f Binary files /dev/null and "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/ModularTrackKit/Models/ModularTrackSpiralLeft.fbx" differ diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/ModularTrackKit/Models/ModularTrackSpiralLeft.fbx.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/ModularTrackKit/Models/ModularTrackSpiralLeft.fbx.meta" new file mode 100644 index 00000000..2d50aab4 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/ModularTrackKit/Models/ModularTrackSpiralLeft.fbx.meta" @@ -0,0 +1,104 @@ +fileFormatVersion: 2 +guid: 5830767f6fba8446ebc1160d406849b5 +ModelImporter: + serializedVersion: 23 + fileIDToRecycleName: + 100000: LaneDivider + 100002: //RootNode + 400000: LaneDivider + 400002: //RootNode + 2100000: No Name + 2300000: LaneDivider + 2300002: //RootNode + 3300000: LaneDivider + 3300002: //RootNode + 4300000: ModularTrackSpiralLeft + 4300002: LaneDivider + 6400000: LaneDivider + 6400002: //RootNode + externalObjects: {} + materials: + importMaterials: 0 + materialName: 0 + materialSearch: 1 + materialLocation: 1 + animations: + legacyGenerateAnimations: 4 + bakeSimulation: 0 + resampleCurves: 1 + optimizeGameObjects: 0 + motionNodeName: + rigImportErrors: + rigImportWarnings: + animationImportErrors: + animationImportWarnings: + animationRetargetingWarnings: + animationDoRetargetingWarnings: 0 + importAnimatedCustomProperties: 0 + importConstraints: 0 + animationCompression: 1 + animationRotationError: 0.5 + animationPositionError: 0.5 + animationScaleError: 0.5 + animationWrapMode: 0 + extraExposedTransformPaths: [] + extraUserProperties: [] + clipAnimations: [] + isReadable: 1 + meshes: + lODScreenPercentages: [] + globalScale: 1 + meshCompression: 0 + addColliders: 1 + useSRGBMaterialColor: 1 + importVisibility: 0 + importBlendShapes: 0 + importCameras: 0 + importLights: 0 + swapUVChannels: 0 + generateSecondaryUV: 0 + useFileUnits: 1 + optimizeMeshForGPU: 1 + keepQuads: 0 + weldVertices: 1 + preserveHierarchy: 0 + indexFormat: 0 + secondaryUVAngleDistortion: 8 + secondaryUVAreaDistortion: 15.000001 + secondaryUVHardAngle: 88 + secondaryUVPackMargin: 4 + useFileScale: 1 + previousCalculatedGlobalScale: 1 + hasPreviousCalculatedGlobalScale: 0 + tangentSpace: + normalSmoothAngle: 60 + normalImportMode: 1 + tangentImportMode: 3 + normalCalculationMode: 4 + legacyComputeAllNormalsFromSmoothingGroupsWhenMeshHasBlendShapes: 0 + blendShapeNormalImportMode: 1 + normalSmoothingSource: 0 + importAnimation: 0 + copyAvatar: 0 + humanDescription: + serializedVersion: 2 + human: [] + skeleton: [] + armTwist: 0.5 + foreArmTwist: 0.5 + upperLegTwist: 0.5 + legTwist: 0.5 + armStretch: 0.05 + legStretch: 0.05 + feetSpacing: 0 + rootMotionBoneName: + hasTranslationDoF: 0 + hasExtraRoot: 0 + skeletonHasParents: 1 + lastHumanDescriptionAvatarSource: {instanceID: 0} + animationType: 0 + humanoidOversampling: 1 + additionalBone: 0 + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/ModularTrackKit/Models/ModularTrackSpiralRight.fbx" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/ModularTrackKit/Models/ModularTrackSpiralRight.fbx" new file mode 100644 index 00000000..f8824047 Binary files /dev/null and "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/ModularTrackKit/Models/ModularTrackSpiralRight.fbx" differ diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/ModularTrackKit/Models/ModularTrackSpiralRight.fbx.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/ModularTrackKit/Models/ModularTrackSpiralRight.fbx.meta" new file mode 100644 index 00000000..feabb3ee --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/ModularTrackKit/Models/ModularTrackSpiralRight.fbx.meta" @@ -0,0 +1,104 @@ +fileFormatVersion: 2 +guid: c7a29af1540b44b788f2c5e5cafe7a7c +ModelImporter: + serializedVersion: 23 + fileIDToRecycleName: + 100000: LaneDivider + 100002: //RootNode + 400000: LaneDivider + 400002: //RootNode + 2100000: No Name + 2300000: LaneDivider + 2300002: //RootNode + 3300000: LaneDivider + 3300002: //RootNode + 4300000: ModularTrackSpiralRight + 4300002: LaneDivider + 6400000: LaneDivider + 6400002: //RootNode + externalObjects: {} + materials: + importMaterials: 0 + materialName: 0 + materialSearch: 1 + materialLocation: 1 + animations: + legacyGenerateAnimations: 4 + bakeSimulation: 0 + resampleCurves: 1 + optimizeGameObjects: 0 + motionNodeName: + rigImportErrors: + rigImportWarnings: + animationImportErrors: + animationImportWarnings: + animationRetargetingWarnings: + animationDoRetargetingWarnings: 0 + importAnimatedCustomProperties: 0 + importConstraints: 0 + animationCompression: 1 + animationRotationError: 0.5 + animationPositionError: 0.5 + animationScaleError: 0.5 + animationWrapMode: 0 + extraExposedTransformPaths: [] + extraUserProperties: [] + clipAnimations: [] + isReadable: 1 + meshes: + lODScreenPercentages: [] + globalScale: 1 + meshCompression: 0 + addColliders: 1 + useSRGBMaterialColor: 1 + importVisibility: 0 + importBlendShapes: 0 + importCameras: 0 + importLights: 0 + swapUVChannels: 0 + generateSecondaryUV: 0 + useFileUnits: 1 + optimizeMeshForGPU: 1 + keepQuads: 0 + weldVertices: 1 + preserveHierarchy: 0 + indexFormat: 0 + secondaryUVAngleDistortion: 8 + secondaryUVAreaDistortion: 15.000001 + secondaryUVHardAngle: 88 + secondaryUVPackMargin: 4 + useFileScale: 1 + previousCalculatedGlobalScale: 1 + hasPreviousCalculatedGlobalScale: 0 + tangentSpace: + normalSmoothAngle: 60 + normalImportMode: 1 + tangentImportMode: 3 + normalCalculationMode: 4 + legacyComputeAllNormalsFromSmoothingGroupsWhenMeshHasBlendShapes: 0 + blendShapeNormalImportMode: 1 + normalSmoothingSource: 0 + importAnimation: 0 + copyAvatar: 0 + humanDescription: + serializedVersion: 2 + human: [] + skeleton: [] + armTwist: 0.5 + foreArmTwist: 0.5 + upperLegTwist: 0.5 + legTwist: 0.5 + armStretch: 0.05 + legStretch: 0.05 + feetSpacing: 0 + rootMotionBoneName: + hasTranslationDoF: 0 + hasExtraRoot: 0 + skeletonHasParents: 1 + lastHumanDescriptionAvatarSource: {instanceID: 0} + animationType: 0 + humanoidOversampling: 1 + additionalBone: 0 + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/ModularTrackKit/Models/ModularTrackStraight.fbx" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/ModularTrackKit/Models/ModularTrackStraight.fbx" new file mode 100644 index 00000000..454a0a0e Binary files /dev/null and "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/ModularTrackKit/Models/ModularTrackStraight.fbx" differ diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/ModularTrackKit/Models/ModularTrackStraight.fbx.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/ModularTrackKit/Models/ModularTrackStraight.fbx.meta" new file mode 100644 index 00000000..0903fdbe --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/ModularTrackKit/Models/ModularTrackStraight.fbx.meta" @@ -0,0 +1,111 @@ +fileFormatVersion: 2 +guid: 4c266eccb4ff24ae9aeaf6fa734f60ea +ModelImporter: + serializedVersion: 23 + fileIDToRecycleName: + 100000: //RootNode + 100002: LaneDividers + 100004: LaneDivider + 400000: //RootNode + 400002: LaneDividers + 400004: LaneDivider + 2100000: No Name + 2300000: //RootNode + 2300002: LaneDividers + 2300004: LaneDivider + 3300000: //RootNode + 3300002: LaneDividers + 3300004: LaneDivider + 4300000: Cube + 4300002: ModularTrackStraight + 4300004: LaneDividers + 4300006: LaneDivider + 6400000: LaneDividers + 6400002: //RootNode + 6400004: LaneDivider + externalObjects: {} + materials: + importMaterials: 0 + materialName: 0 + materialSearch: 1 + materialLocation: 1 + animations: + legacyGenerateAnimations: 4 + bakeSimulation: 0 + resampleCurves: 1 + optimizeGameObjects: 0 + motionNodeName: + rigImportErrors: + rigImportWarnings: + animationImportErrors: + animationImportWarnings: + animationRetargetingWarnings: + animationDoRetargetingWarnings: 0 + importAnimatedCustomProperties: 0 + importConstraints: 0 + animationCompression: 1 + animationRotationError: 0.5 + animationPositionError: 0.5 + animationScaleError: 0.5 + animationWrapMode: 0 + extraExposedTransformPaths: [] + extraUserProperties: [] + clipAnimations: [] + isReadable: 1 + meshes: + lODScreenPercentages: [] + globalScale: 1 + meshCompression: 0 + addColliders: 1 + useSRGBMaterialColor: 1 + importVisibility: 0 + importBlendShapes: 0 + importCameras: 0 + importLights: 0 + swapUVChannels: 0 + generateSecondaryUV: 0 + useFileUnits: 1 + optimizeMeshForGPU: 1 + keepQuads: 0 + weldVertices: 1 + preserveHierarchy: 0 + indexFormat: 0 + secondaryUVAngleDistortion: 8 + secondaryUVAreaDistortion: 15.000001 + secondaryUVHardAngle: 88 + secondaryUVPackMargin: 4 + useFileScale: 1 + previousCalculatedGlobalScale: 1 + hasPreviousCalculatedGlobalScale: 0 + tangentSpace: + normalSmoothAngle: 60 + normalImportMode: 1 + tangentImportMode: 3 + normalCalculationMode: 4 + legacyComputeAllNormalsFromSmoothingGroupsWhenMeshHasBlendShapes: 0 + blendShapeNormalImportMode: 1 + normalSmoothingSource: 0 + importAnimation: 0 + copyAvatar: 0 + humanDescription: + serializedVersion: 2 + human: [] + skeleton: [] + armTwist: 0.5 + foreArmTwist: 0.5 + upperLegTwist: 0.5 + legTwist: 0.5 + armStretch: 0.05 + legStretch: 0.05 + feetSpacing: 0 + rootMotionBoneName: + hasTranslationDoF: 0 + hasExtraRoot: 0 + skeletonHasParents: 1 + lastHumanDescriptionAvatarSource: {instanceID: 0} + animationType: 0 + humanoidOversampling: 1 + additionalBone: 0 + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/ModularTrackKit/Prefabs.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/ModularTrackKit/Prefabs.meta" new file mode 100644 index 00000000..e4b63f41 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/ModularTrackKit/Prefabs.meta" @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 108fff28cc02b43688636db4359a9bc9 +folderAsset: yes +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/ModularTrackKit/Prefabs/ModularTrackBank.prefab" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/ModularTrackKit/Prefabs/ModularTrackBank.prefab" new file mode 100644 index 00000000..8012f553 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/ModularTrackKit/Prefabs/ModularTrackBank.prefab" @@ -0,0 +1,186 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!1 &8135817075816661729 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 8135817075816636097} + - component: {fileID: 8135817075817963233} + - component: {fileID: 8135817075818929185} + - component: {fileID: 8135817075822963777} + - component: {fileID: 7447616179781977386} + m_Layer: 9 + m_Name: ModularTrackBank + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &8135817075816636097 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 8135817075816661729} + m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} + m_LocalPosition: {x: -0, y: 0, z: 0} + m_LocalScale: {x: 1, y: 1, z: 1} + m_Children: + - {fileID: 8135817075816636099} + m_Father: {fileID: 0} + m_RootOrder: 0 + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!33 &8135817075817963233 +MeshFilter: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 8135817075816661729} + m_Mesh: {fileID: 4300000, guid: 994f97374df6444279b54b520d1535c3, type: 3} +--- !u!23 &8135817075818929185 +MeshRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 8135817075816661729} + m_Enabled: 1 + m_CastShadows: 1 + m_ReceiveShadows: 1 + m_DynamicOccludee: 1 + m_MotionVectors: 1 + m_LightProbeUsage: 1 + m_ReflectionProbeUsage: 1 + m_RenderingLayerMask: 1 + m_RendererPriority: 0 + m_Materials: + - {fileID: 2100000, guid: 58da84021fce340e9b877f63d3e18336, type: 2} + m_StaticBatchInfo: + firstSubMesh: 0 + subMeshCount: 0 + m_StaticBatchRoot: {fileID: 0} + m_ProbeAnchor: {fileID: 0} + m_LightProbeVolumeOverride: {fileID: 0} + m_ScaleInLightmap: 1 + m_PreserveUVs: 0 + m_IgnoreNormalsForChartDetection: 0 + m_ImportantGI: 0 + m_StitchLightmapSeams: 0 + m_SelectedEditorRenderState: 3 + m_MinimumChartSize: 4 + m_AutoUVMaxDistance: 0.5 + m_AutoUVMaxAngle: 89 + m_LightmapParameters: {fileID: 0} + m_SortingLayerID: 0 + m_SortingLayer: 0 + m_SortingOrder: 0 +--- !u!64 &8135817075822963777 +MeshCollider: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 8135817075816661729} + m_Material: {fileID: 0} + m_IsTrigger: 0 + m_Enabled: 1 + serializedVersion: 3 + m_Convex: 0 + m_CookingOptions: 14 + m_Mesh: {fileID: 4300000, guid: 994f97374df6444279b54b520d1535c3, type: 3} +--- !u!114 &7447616179781977386 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 8135817075816661729} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: ca4c92f9d8625e04b85d2ad57bf3ecbd, type: 3} + m_Name: + m_EditorClassIdentifier: + bounciness: 0.1 +--- !u!1 &8135817075816661731 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 8135817075816636099} + - component: {fileID: 8135817075817963235} + - component: {fileID: 8135817075818929187} + m_Layer: 9 + m_Name: LaneDivider + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &8135817075816636099 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 8135817075816661731} + m_LocalRotation: {x: 0, y: -0, z: -0, w: 1} + m_LocalPosition: {x: -0, y: 0, z: 0} + m_LocalScale: {x: 1, y: 1, z: 1} + m_Children: [] + m_Father: {fileID: 8135817075816636097} + m_RootOrder: 0 + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!33 &8135817075817963235 +MeshFilter: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 8135817075816661731} + m_Mesh: {fileID: 4300002, guid: 994f97374df6444279b54b520d1535c3, type: 3} +--- !u!23 &8135817075818929187 +MeshRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 8135817075816661731} + m_Enabled: 1 + m_CastShadows: 1 + m_ReceiveShadows: 1 + m_DynamicOccludee: 1 + m_MotionVectors: 1 + m_LightProbeUsage: 1 + m_ReflectionProbeUsage: 1 + m_RenderingLayerMask: 1 + m_RendererPriority: 0 + m_Materials: + - {fileID: 2100000, guid: 7b5f0a7a707e04e939eb8c5dee8e084c, type: 2} + m_StaticBatchInfo: + firstSubMesh: 0 + subMeshCount: 0 + m_StaticBatchRoot: {fileID: 0} + m_ProbeAnchor: {fileID: 0} + m_LightProbeVolumeOverride: {fileID: 0} + m_ScaleInLightmap: 1 + m_PreserveUVs: 0 + m_IgnoreNormalsForChartDetection: 0 + m_ImportantGI: 0 + m_StitchLightmapSeams: 0 + m_SelectedEditorRenderState: 3 + m_MinimumChartSize: 4 + m_AutoUVMaxDistance: 0.5 + m_AutoUVMaxAngle: 89 + m_LightmapParameters: {fileID: 0} + m_SortingLayerID: 0 + m_SortingLayer: 0 + m_SortingOrder: 0 diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/ModularTrackKit/Prefabs/ModularTrackBank.prefab.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/ModularTrackKit/Prefabs/ModularTrackBank.prefab.meta" new file mode 100644 index 00000000..d2e26ae1 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/ModularTrackKit/Prefabs/ModularTrackBank.prefab.meta" @@ -0,0 +1,7 @@ +fileFormatVersion: 2 +guid: 40edbcc1d6247412ea82349e34d5add5 +PrefabImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/ModularTrackKit/Prefabs/ModularTrackBumpyStraight.prefab" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/ModularTrackKit/Prefabs/ModularTrackBumpyStraight.prefab" new file mode 100644 index 00000000..8c62f4cf --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/ModularTrackKit/Prefabs/ModularTrackBumpyStraight.prefab" @@ -0,0 +1,186 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!1 &1373021872824522873 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 2500533966758023335} + - component: {fileID: 700493431632374158} + - component: {fileID: 3498864366690743300} + m_Layer: 0 + m_Name: LaneDivider + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &2500533966758023335 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1373021872824522873} + m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} + m_LocalPosition: {x: 0, y: 0, z: 0} + m_LocalScale: {x: 1, y: 1, z: 1} + m_Children: [] + m_Father: {fileID: 7880951066274158845} + m_RootOrder: 0 + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!33 &700493431632374158 +MeshFilter: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1373021872824522873} + m_Mesh: {fileID: 4300006, guid: 8bd11d186751541b5bbd80f5cf827fee, type: 3} +--- !u!23 &3498864366690743300 +MeshRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1373021872824522873} + m_Enabled: 1 + m_CastShadows: 1 + m_ReceiveShadows: 1 + m_DynamicOccludee: 1 + m_MotionVectors: 1 + m_LightProbeUsage: 1 + m_ReflectionProbeUsage: 1 + m_RenderingLayerMask: 1 + m_RendererPriority: 0 + m_Materials: + - {fileID: 2100000, guid: 7b5f0a7a707e04e939eb8c5dee8e084c, type: 2} + m_StaticBatchInfo: + firstSubMesh: 0 + subMeshCount: 0 + m_StaticBatchRoot: {fileID: 0} + m_ProbeAnchor: {fileID: 0} + m_LightProbeVolumeOverride: {fileID: 0} + m_ScaleInLightmap: 1 + m_PreserveUVs: 0 + m_IgnoreNormalsForChartDetection: 0 + m_ImportantGI: 0 + m_StitchLightmapSeams: 0 + m_SelectedEditorRenderState: 3 + m_MinimumChartSize: 4 + m_AutoUVMaxDistance: 0.5 + m_AutoUVMaxAngle: 89 + m_LightmapParameters: {fileID: 0} + m_SortingLayerID: 0 + m_SortingLayer: 0 + m_SortingOrder: 0 +--- !u!1 &7880951066274448605 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 7880951066274158845} + - component: {fileID: 7880951066277550297} + - component: {fileID: 7880951066276452889} + - component: {fileID: 7880951066280749689} + - component: {fileID: 6982530454155100691} + m_Layer: 9 + m_Name: ModularTrackBumpyStraight + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &7880951066274158845 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 7880951066274448605} + m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} + m_LocalPosition: {x: -0, y: 0, z: 0} + m_LocalScale: {x: 1, y: 1, z: 1} + m_Children: + - {fileID: 2500533966758023335} + m_Father: {fileID: 0} + m_RootOrder: 0 + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!33 &7880951066277550297 +MeshFilter: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 7880951066274448605} + m_Mesh: {fileID: 4300004, guid: 8bd11d186751541b5bbd80f5cf827fee, type: 3} +--- !u!23 &7880951066276452889 +MeshRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 7880951066274448605} + m_Enabled: 1 + m_CastShadows: 1 + m_ReceiveShadows: 1 + m_DynamicOccludee: 1 + m_MotionVectors: 1 + m_LightProbeUsage: 1 + m_ReflectionProbeUsage: 1 + m_RenderingLayerMask: 1 + m_RendererPriority: 0 + m_Materials: + - {fileID: 2100000, guid: 58da84021fce340e9b877f63d3e18336, type: 2} + m_StaticBatchInfo: + firstSubMesh: 0 + subMeshCount: 0 + m_StaticBatchRoot: {fileID: 0} + m_ProbeAnchor: {fileID: 0} + m_LightProbeVolumeOverride: {fileID: 0} + m_ScaleInLightmap: 1 + m_PreserveUVs: 0 + m_IgnoreNormalsForChartDetection: 0 + m_ImportantGI: 0 + m_StitchLightmapSeams: 0 + m_SelectedEditorRenderState: 3 + m_MinimumChartSize: 4 + m_AutoUVMaxDistance: 0.5 + m_AutoUVMaxAngle: 89 + m_LightmapParameters: {fileID: 0} + m_SortingLayerID: 0 + m_SortingLayer: 0 + m_SortingOrder: 0 +--- !u!64 &7880951066280749689 +MeshCollider: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 7880951066274448605} + m_Material: {fileID: 0} + m_IsTrigger: 0 + m_Enabled: 1 + serializedVersion: 3 + m_Convex: 0 + m_CookingOptions: 14 + m_Mesh: {fileID: 4300004, guid: 8bd11d186751541b5bbd80f5cf827fee, type: 3} +--- !u!114 &6982530454155100691 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 7880951066274448605} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: ca4c92f9d8625e04b85d2ad57bf3ecbd, type: 3} + m_Name: + m_EditorClassIdentifier: + bounciness: 0.1 diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/ModularTrackKit/Prefabs/ModularTrackBumpyStraight.prefab.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/ModularTrackKit/Prefabs/ModularTrackBumpyStraight.prefab.meta" new file mode 100644 index 00000000..e1982226 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/ModularTrackKit/Prefabs/ModularTrackBumpyStraight.prefab.meta" @@ -0,0 +1,7 @@ +fileFormatVersion: 2 +guid: 9b9f6390b3dee44e4ba03d5f3f76dacb +PrefabImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/ModularTrackKit/Prefabs/ModularTrackCantMediumLeft.prefab" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/ModularTrackKit/Prefabs/ModularTrackCantMediumLeft.prefab" new file mode 100644 index 00000000..8945757e --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/ModularTrackKit/Prefabs/ModularTrackCantMediumLeft.prefab" @@ -0,0 +1,186 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!1 &4126308969757332888 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 4126308969757231544} + - component: {fileID: 4126308969756428696} + - component: {fileID: 4126308969755331416} + m_Layer: 9 + m_Name: LaneDivider + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &4126308969757231544 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 4126308969757332888} + m_LocalRotation: {x: 0, y: -0, z: -0, w: 1} + m_LocalPosition: {x: -0, y: 0, z: 0} + m_LocalScale: {x: 1, y: 1, z: 1} + m_Children: [] + m_Father: {fileID: 4126308969757231546} + m_RootOrder: 0 + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!33 &4126308969756428696 +MeshFilter: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 4126308969757332888} + m_Mesh: {fileID: 4300002, guid: 193fbff110f9a4b5ea39398504a85034, type: 3} +--- !u!23 &4126308969755331416 +MeshRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 4126308969757332888} + m_Enabled: 1 + m_CastShadows: 1 + m_ReceiveShadows: 1 + m_DynamicOccludee: 1 + m_MotionVectors: 1 + m_LightProbeUsage: 1 + m_ReflectionProbeUsage: 1 + m_RenderingLayerMask: 1 + m_RendererPriority: 0 + m_Materials: + - {fileID: 2100000, guid: 7b5f0a7a707e04e939eb8c5dee8e084c, type: 2} + m_StaticBatchInfo: + firstSubMesh: 0 + subMeshCount: 0 + m_StaticBatchRoot: {fileID: 0} + m_ProbeAnchor: {fileID: 0} + m_LightProbeVolumeOverride: {fileID: 0} + m_ScaleInLightmap: 1 + m_PreserveUVs: 0 + m_IgnoreNormalsForChartDetection: 0 + m_ImportantGI: 0 + m_StitchLightmapSeams: 0 + m_SelectedEditorRenderState: 3 + m_MinimumChartSize: 4 + m_AutoUVMaxDistance: 0.5 + m_AutoUVMaxAngle: 89 + m_LightmapParameters: {fileID: 0} + m_SortingLayerID: 0 + m_SortingLayer: 0 + m_SortingOrder: 0 +--- !u!1 &4126308969757332890 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 4126308969757231546} + - component: {fileID: 4126308969756428698} + - component: {fileID: 4126308969755331418} + - component: {fileID: 4126308969751051066} + - component: {fileID: 2117652149476872606} + m_Layer: 9 + m_Name: ModularTrackCantMediumLeft + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &4126308969757231546 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 4126308969757332890} + m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} + m_LocalPosition: {x: -0, y: 0, z: 0} + m_LocalScale: {x: 1, y: 1, z: 1} + m_Children: + - {fileID: 4126308969757231544} + m_Father: {fileID: 0} + m_RootOrder: 0 + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!33 &4126308969756428698 +MeshFilter: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 4126308969757332890} + m_Mesh: {fileID: 4300000, guid: 193fbff110f9a4b5ea39398504a85034, type: 3} +--- !u!23 &4126308969755331418 +MeshRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 4126308969757332890} + m_Enabled: 1 + m_CastShadows: 1 + m_ReceiveShadows: 1 + m_DynamicOccludee: 1 + m_MotionVectors: 1 + m_LightProbeUsage: 1 + m_ReflectionProbeUsage: 1 + m_RenderingLayerMask: 1 + m_RendererPriority: 0 + m_Materials: + - {fileID: 2100000, guid: 58da84021fce340e9b877f63d3e18336, type: 2} + m_StaticBatchInfo: + firstSubMesh: 0 + subMeshCount: 0 + m_StaticBatchRoot: {fileID: 0} + m_ProbeAnchor: {fileID: 0} + m_LightProbeVolumeOverride: {fileID: 0} + m_ScaleInLightmap: 1 + m_PreserveUVs: 0 + m_IgnoreNormalsForChartDetection: 0 + m_ImportantGI: 0 + m_StitchLightmapSeams: 0 + m_SelectedEditorRenderState: 3 + m_MinimumChartSize: 4 + m_AutoUVMaxDistance: 0.5 + m_AutoUVMaxAngle: 89 + m_LightmapParameters: {fileID: 0} + m_SortingLayerID: 0 + m_SortingLayer: 0 + m_SortingOrder: 0 +--- !u!64 &4126308969751051066 +MeshCollider: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 4126308969757332890} + m_Material: {fileID: 0} + m_IsTrigger: 0 + m_Enabled: 1 + serializedVersion: 3 + m_Convex: 0 + m_CookingOptions: 14 + m_Mesh: {fileID: 4300000, guid: 193fbff110f9a4b5ea39398504a85034, type: 3} +--- !u!114 &2117652149476872606 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 4126308969757332890} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: ca4c92f9d8625e04b85d2ad57bf3ecbd, type: 3} + m_Name: + m_EditorClassIdentifier: + bounciness: 0.1 diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/ModularTrackKit/Prefabs/ModularTrackCantMediumLeft.prefab.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/ModularTrackKit/Prefabs/ModularTrackCantMediumLeft.prefab.meta" new file mode 100644 index 00000000..7466fb5e --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/ModularTrackKit/Prefabs/ModularTrackCantMediumLeft.prefab.meta" @@ -0,0 +1,7 @@ +fileFormatVersion: 2 +guid: ea87863efa0b941408cdd4b102308f4c +PrefabImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/ModularTrackKit/Prefabs/ModularTrackCantMediumRight.prefab" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/ModularTrackKit/Prefabs/ModularTrackCantMediumRight.prefab" new file mode 100644 index 00000000..d23cacb2 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/ModularTrackKit/Prefabs/ModularTrackCantMediumRight.prefab" @@ -0,0 +1,186 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!1 &4126308969757332888 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 4126308969757231544} + - component: {fileID: 4126308969756428696} + - component: {fileID: 4126308969755331416} + m_Layer: 9 + m_Name: LaneDivider + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &4126308969757231544 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 4126308969757332888} + m_LocalRotation: {x: 0, y: -0, z: -0, w: 1} + m_LocalPosition: {x: -0, y: 0, z: 0} + m_LocalScale: {x: 1, y: 1, z: 1} + m_Children: [] + m_Father: {fileID: 4126308969757231546} + m_RootOrder: 0 + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!33 &4126308969756428696 +MeshFilter: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 4126308969757332888} + m_Mesh: {fileID: 4300002, guid: da23b199c8ab5479e812925e733aaf8f, type: 3} +--- !u!23 &4126308969755331416 +MeshRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 4126308969757332888} + m_Enabled: 1 + m_CastShadows: 1 + m_ReceiveShadows: 1 + m_DynamicOccludee: 1 + m_MotionVectors: 1 + m_LightProbeUsage: 1 + m_ReflectionProbeUsage: 1 + m_RenderingLayerMask: 1 + m_RendererPriority: 0 + m_Materials: + - {fileID: 2100000, guid: 7b5f0a7a707e04e939eb8c5dee8e084c, type: 2} + m_StaticBatchInfo: + firstSubMesh: 0 + subMeshCount: 0 + m_StaticBatchRoot: {fileID: 0} + m_ProbeAnchor: {fileID: 0} + m_LightProbeVolumeOverride: {fileID: 0} + m_ScaleInLightmap: 1 + m_PreserveUVs: 0 + m_IgnoreNormalsForChartDetection: 0 + m_ImportantGI: 0 + m_StitchLightmapSeams: 0 + m_SelectedEditorRenderState: 3 + m_MinimumChartSize: 4 + m_AutoUVMaxDistance: 0.5 + m_AutoUVMaxAngle: 89 + m_LightmapParameters: {fileID: 0} + m_SortingLayerID: 0 + m_SortingLayer: 0 + m_SortingOrder: 0 +--- !u!1 &4126308969757332890 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 4126308969757231546} + - component: {fileID: 4126308969756428698} + - component: {fileID: 4126308969755331418} + - component: {fileID: 4126308969751051066} + - component: {fileID: 2117652149476872606} + m_Layer: 9 + m_Name: ModularTrackCantMediumRight + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &4126308969757231546 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 4126308969757332890} + m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} + m_LocalPosition: {x: -0, y: 0, z: 0} + m_LocalScale: {x: 1, y: 1, z: 1} + m_Children: + - {fileID: 4126308969757231544} + m_Father: {fileID: 0} + m_RootOrder: 0 + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!33 &4126308969756428698 +MeshFilter: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 4126308969757332890} + m_Mesh: {fileID: 4300000, guid: da23b199c8ab5479e812925e733aaf8f, type: 3} +--- !u!23 &4126308969755331418 +MeshRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 4126308969757332890} + m_Enabled: 1 + m_CastShadows: 1 + m_ReceiveShadows: 1 + m_DynamicOccludee: 1 + m_MotionVectors: 1 + m_LightProbeUsage: 1 + m_ReflectionProbeUsage: 1 + m_RenderingLayerMask: 1 + m_RendererPriority: 0 + m_Materials: + - {fileID: 2100000, guid: 58da84021fce340e9b877f63d3e18336, type: 2} + m_StaticBatchInfo: + firstSubMesh: 0 + subMeshCount: 0 + m_StaticBatchRoot: {fileID: 0} + m_ProbeAnchor: {fileID: 0} + m_LightProbeVolumeOverride: {fileID: 0} + m_ScaleInLightmap: 1 + m_PreserveUVs: 0 + m_IgnoreNormalsForChartDetection: 0 + m_ImportantGI: 0 + m_StitchLightmapSeams: 0 + m_SelectedEditorRenderState: 3 + m_MinimumChartSize: 4 + m_AutoUVMaxDistance: 0.5 + m_AutoUVMaxAngle: 89 + m_LightmapParameters: {fileID: 0} + m_SortingLayerID: 0 + m_SortingLayer: 0 + m_SortingOrder: 0 +--- !u!64 &4126308969751051066 +MeshCollider: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 4126308969757332890} + m_Material: {fileID: 0} + m_IsTrigger: 0 + m_Enabled: 1 + serializedVersion: 3 + m_Convex: 0 + m_CookingOptions: 14 + m_Mesh: {fileID: 4300000, guid: da23b199c8ab5479e812925e733aaf8f, type: 3} +--- !u!114 &2117652149476872606 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 4126308969757332890} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: ca4c92f9d8625e04b85d2ad57bf3ecbd, type: 3} + m_Name: + m_EditorClassIdentifier: + bounciness: 0.1 diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/ModularTrackKit/Prefabs/ModularTrackCantMediumRight.prefab.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/ModularTrackKit/Prefabs/ModularTrackCantMediumRight.prefab.meta" new file mode 100644 index 00000000..2abf73af --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/ModularTrackKit/Prefabs/ModularTrackCantMediumRight.prefab.meta" @@ -0,0 +1,7 @@ +fileFormatVersion: 2 +guid: 877fc6ef080ba4ecd8a8651303bb0d66 +PrefabImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/ModularTrackKit/Prefabs/ModularTrackCantSmallLeft.prefab" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/ModularTrackKit/Prefabs/ModularTrackCantSmallLeft.prefab" new file mode 100644 index 00000000..d8e882d5 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/ModularTrackKit/Prefabs/ModularTrackCantSmallLeft.prefab" @@ -0,0 +1,186 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!1 &2040786457590129164 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 2040786457589841452} + - component: {fileID: 2040786457591135756} + - component: {fileID: 2040786457592134860} + m_Layer: 9 + m_Name: LaneDivider + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &2040786457589841452 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 2040786457590129164} + m_LocalRotation: {x: 0, y: -0, z: -0, w: 1} + m_LocalPosition: {x: -0, y: 0, z: 0} + m_LocalScale: {x: 1, y: 1, z: 1} + m_Children: [] + m_Father: {fileID: 2040786457589841454} + m_RootOrder: 0 + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!33 &2040786457591135756 +MeshFilter: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 2040786457590129164} + m_Mesh: {fileID: 4300002, guid: 4bf1a364dc54642f9a8a2d20c3cae318, type: 3} +--- !u!23 &2040786457592134860 +MeshRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 2040786457590129164} + m_Enabled: 1 + m_CastShadows: 1 + m_ReceiveShadows: 1 + m_DynamicOccludee: 1 + m_MotionVectors: 1 + m_LightProbeUsage: 1 + m_ReflectionProbeUsage: 1 + m_RenderingLayerMask: 1 + m_RendererPriority: 0 + m_Materials: + - {fileID: 2100000, guid: 7b5f0a7a707e04e939eb8c5dee8e084c, type: 2} + m_StaticBatchInfo: + firstSubMesh: 0 + subMeshCount: 0 + m_StaticBatchRoot: {fileID: 0} + m_ProbeAnchor: {fileID: 0} + m_LightProbeVolumeOverride: {fileID: 0} + m_ScaleInLightmap: 1 + m_PreserveUVs: 0 + m_IgnoreNormalsForChartDetection: 0 + m_ImportantGI: 0 + m_StitchLightmapSeams: 0 + m_SelectedEditorRenderState: 3 + m_MinimumChartSize: 4 + m_AutoUVMaxDistance: 0.5 + m_AutoUVMaxAngle: 89 + m_LightmapParameters: {fileID: 0} + m_SortingLayerID: 0 + m_SortingLayer: 0 + m_SortingOrder: 0 +--- !u!1 &2040786457590129166 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 2040786457589841454} + - component: {fileID: 2040786457591135758} + - component: {fileID: 2040786457592134862} + - component: {fileID: 2040786457596415150} + - component: {fileID: 2260507556633980634} + m_Layer: 9 + m_Name: ModularTrackCantSmallLeft + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &2040786457589841454 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 2040786457590129166} + m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} + m_LocalPosition: {x: -0, y: 0, z: 0} + m_LocalScale: {x: 1, y: 1, z: 1} + m_Children: + - {fileID: 2040786457589841452} + m_Father: {fileID: 0} + m_RootOrder: 0 + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!33 &2040786457591135758 +MeshFilter: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 2040786457590129166} + m_Mesh: {fileID: 4300000, guid: 4bf1a364dc54642f9a8a2d20c3cae318, type: 3} +--- !u!23 &2040786457592134862 +MeshRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 2040786457590129166} + m_Enabled: 1 + m_CastShadows: 1 + m_ReceiveShadows: 1 + m_DynamicOccludee: 1 + m_MotionVectors: 1 + m_LightProbeUsage: 1 + m_ReflectionProbeUsage: 1 + m_RenderingLayerMask: 1 + m_RendererPriority: 0 + m_Materials: + - {fileID: 2100000, guid: 58da84021fce340e9b877f63d3e18336, type: 2} + m_StaticBatchInfo: + firstSubMesh: 0 + subMeshCount: 0 + m_StaticBatchRoot: {fileID: 0} + m_ProbeAnchor: {fileID: 0} + m_LightProbeVolumeOverride: {fileID: 0} + m_ScaleInLightmap: 1 + m_PreserveUVs: 0 + m_IgnoreNormalsForChartDetection: 0 + m_ImportantGI: 0 + m_StitchLightmapSeams: 0 + m_SelectedEditorRenderState: 3 + m_MinimumChartSize: 4 + m_AutoUVMaxDistance: 0.5 + m_AutoUVMaxAngle: 89 + m_LightmapParameters: {fileID: 0} + m_SortingLayerID: 0 + m_SortingLayer: 0 + m_SortingOrder: 0 +--- !u!64 &2040786457596415150 +MeshCollider: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 2040786457590129166} + m_Material: {fileID: 0} + m_IsTrigger: 0 + m_Enabled: 1 + serializedVersion: 3 + m_Convex: 0 + m_CookingOptions: 14 + m_Mesh: {fileID: 4300000, guid: 4bf1a364dc54642f9a8a2d20c3cae318, type: 3} +--- !u!114 &2260507556633980634 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 2040786457590129166} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: ca4c92f9d8625e04b85d2ad57bf3ecbd, type: 3} + m_Name: + m_EditorClassIdentifier: + bounciness: 0.1 diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/ModularTrackKit/Prefabs/ModularTrackCantSmallLeft.prefab.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/ModularTrackKit/Prefabs/ModularTrackCantSmallLeft.prefab.meta" new file mode 100644 index 00000000..89a29942 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/ModularTrackKit/Prefabs/ModularTrackCantSmallLeft.prefab.meta" @@ -0,0 +1,7 @@ +fileFormatVersion: 2 +guid: bed96e97bcaad4383aa9baa8c101f0bf +PrefabImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/ModularTrackKit/Prefabs/ModularTrackCantSmallRight.prefab" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/ModularTrackKit/Prefabs/ModularTrackCantSmallRight.prefab" new file mode 100644 index 00000000..db66732b --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/ModularTrackKit/Prefabs/ModularTrackCantSmallRight.prefab" @@ -0,0 +1,186 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!1 &2040786457590129164 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 2040786457589841452} + - component: {fileID: 2040786457591135756} + - component: {fileID: 2040786457592134860} + m_Layer: 9 + m_Name: LaneDivider + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &2040786457589841452 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 2040786457590129164} + m_LocalRotation: {x: 0, y: -0, z: -0, w: 1} + m_LocalPosition: {x: -0, y: 0, z: 0} + m_LocalScale: {x: 1, y: 1, z: 1} + m_Children: [] + m_Father: {fileID: 2040786457589841454} + m_RootOrder: 0 + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!33 &2040786457591135756 +MeshFilter: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 2040786457590129164} + m_Mesh: {fileID: 4300002, guid: 52f3b50c1579446dfa7dac35f5ac2e0a, type: 3} +--- !u!23 &2040786457592134860 +MeshRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 2040786457590129164} + m_Enabled: 1 + m_CastShadows: 1 + m_ReceiveShadows: 1 + m_DynamicOccludee: 1 + m_MotionVectors: 1 + m_LightProbeUsage: 1 + m_ReflectionProbeUsage: 1 + m_RenderingLayerMask: 1 + m_RendererPriority: 0 + m_Materials: + - {fileID: 2100000, guid: 7b5f0a7a707e04e939eb8c5dee8e084c, type: 2} + m_StaticBatchInfo: + firstSubMesh: 0 + subMeshCount: 0 + m_StaticBatchRoot: {fileID: 0} + m_ProbeAnchor: {fileID: 0} + m_LightProbeVolumeOverride: {fileID: 0} + m_ScaleInLightmap: 1 + m_PreserveUVs: 0 + m_IgnoreNormalsForChartDetection: 0 + m_ImportantGI: 0 + m_StitchLightmapSeams: 0 + m_SelectedEditorRenderState: 3 + m_MinimumChartSize: 4 + m_AutoUVMaxDistance: 0.5 + m_AutoUVMaxAngle: 89 + m_LightmapParameters: {fileID: 0} + m_SortingLayerID: 0 + m_SortingLayer: 0 + m_SortingOrder: 0 +--- !u!1 &2040786457590129166 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 2040786457589841454} + - component: {fileID: 2040786457591135758} + - component: {fileID: 2040786457592134862} + - component: {fileID: 2040786457596415150} + - component: {fileID: 2260507556633980634} + m_Layer: 9 + m_Name: ModularTrackCantSmallRight + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &2040786457589841454 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 2040786457590129166} + m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} + m_LocalPosition: {x: -0, y: 0, z: 0} + m_LocalScale: {x: 1, y: 1, z: 1} + m_Children: + - {fileID: 2040786457589841452} + m_Father: {fileID: 0} + m_RootOrder: 0 + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!33 &2040786457591135758 +MeshFilter: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 2040786457590129166} + m_Mesh: {fileID: 4300000, guid: 52f3b50c1579446dfa7dac35f5ac2e0a, type: 3} +--- !u!23 &2040786457592134862 +MeshRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 2040786457590129166} + m_Enabled: 1 + m_CastShadows: 1 + m_ReceiveShadows: 1 + m_DynamicOccludee: 1 + m_MotionVectors: 1 + m_LightProbeUsage: 1 + m_ReflectionProbeUsage: 1 + m_RenderingLayerMask: 1 + m_RendererPriority: 0 + m_Materials: + - {fileID: 2100000, guid: 58da84021fce340e9b877f63d3e18336, type: 2} + m_StaticBatchInfo: + firstSubMesh: 0 + subMeshCount: 0 + m_StaticBatchRoot: {fileID: 0} + m_ProbeAnchor: {fileID: 0} + m_LightProbeVolumeOverride: {fileID: 0} + m_ScaleInLightmap: 1 + m_PreserveUVs: 0 + m_IgnoreNormalsForChartDetection: 0 + m_ImportantGI: 0 + m_StitchLightmapSeams: 0 + m_SelectedEditorRenderState: 3 + m_MinimumChartSize: 4 + m_AutoUVMaxDistance: 0.5 + m_AutoUVMaxAngle: 89 + m_LightmapParameters: {fileID: 0} + m_SortingLayerID: 0 + m_SortingLayer: 0 + m_SortingOrder: 0 +--- !u!64 &2040786457596415150 +MeshCollider: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 2040786457590129166} + m_Material: {fileID: 0} + m_IsTrigger: 0 + m_Enabled: 1 + serializedVersion: 3 + m_Convex: 0 + m_CookingOptions: 14 + m_Mesh: {fileID: 4300000, guid: 52f3b50c1579446dfa7dac35f5ac2e0a, type: 3} +--- !u!114 &2260507556633980634 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 2040786457590129166} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: ca4c92f9d8625e04b85d2ad57bf3ecbd, type: 3} + m_Name: + m_EditorClassIdentifier: + bounciness: 0.1 diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/ModularTrackKit/Prefabs/ModularTrackCantSmallRight.prefab.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/ModularTrackKit/Prefabs/ModularTrackCantSmallRight.prefab.meta" new file mode 100644 index 00000000..2fce3723 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/ModularTrackKit/Prefabs/ModularTrackCantSmallRight.prefab.meta" @@ -0,0 +1,7 @@ +fileFormatVersion: 2 +guid: d1fedb17811a845a798a9217e0dbc9aa +PrefabImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/ModularTrackKit/Prefabs/ModularTrackCurveLarge.prefab" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/ModularTrackKit/Prefabs/ModularTrackCurveLarge.prefab" new file mode 100644 index 00000000..750b1aab --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/ModularTrackKit/Prefabs/ModularTrackCurveLarge.prefab" @@ -0,0 +1,186 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!1 &6602977218683501761 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 6602977218683986145} + - component: {fileID: 6602977218682659009} + - component: {fileID: 6602977218681561601} + m_Layer: 9 + m_Name: LaneDivider + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &6602977218683986145 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 6602977218683501761} + m_LocalRotation: {x: 0, y: -0, z: -0, w: 1} + m_LocalPosition: {x: -0, y: 0, z: 0} + m_LocalScale: {x: 1, y: 1, z: 1} + m_Children: [] + m_Father: {fileID: 6602977218683986153} + m_RootOrder: 0 + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!33 &6602977218682659009 +MeshFilter: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 6602977218683501761} + m_Mesh: {fileID: 4300006, guid: 3cc54c2c67fc34a1abe6fe43c889f8e3, type: 3} +--- !u!23 &6602977218681561601 +MeshRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 6602977218683501761} + m_Enabled: 1 + m_CastShadows: 1 + m_ReceiveShadows: 1 + m_DynamicOccludee: 1 + m_MotionVectors: 1 + m_LightProbeUsage: 1 + m_ReflectionProbeUsage: 1 + m_RenderingLayerMask: 1 + m_RendererPriority: 0 + m_Materials: + - {fileID: 2100000, guid: 7b5f0a7a707e04e939eb8c5dee8e084c, type: 2} + m_StaticBatchInfo: + firstSubMesh: 0 + subMeshCount: 0 + m_StaticBatchRoot: {fileID: 0} + m_ProbeAnchor: {fileID: 0} + m_LightProbeVolumeOverride: {fileID: 0} + m_ScaleInLightmap: 1 + m_PreserveUVs: 0 + m_IgnoreNormalsForChartDetection: 0 + m_ImportantGI: 0 + m_StitchLightmapSeams: 0 + m_SelectedEditorRenderState: 3 + m_MinimumChartSize: 4 + m_AutoUVMaxDistance: 0.5 + m_AutoUVMaxAngle: 89 + m_LightmapParameters: {fileID: 0} + m_SortingLayerID: 0 + m_SortingLayer: 0 + m_SortingOrder: 0 +--- !u!1 &6602977218683501769 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 6602977218683986153} + - component: {fileID: 6602977218682659017} + - component: {fileID: 6602977218681561609} + - component: {fileID: 6602977218685588075} + - component: {fileID: 4478061287446689989} + m_Layer: 9 + m_Name: ModularTrackCurveLarge + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &6602977218683986153 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 6602977218683501769} + m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} + m_LocalPosition: {x: -0, y: 0, z: 0} + m_LocalScale: {x: 1, y: 1, z: 1} + m_Children: + - {fileID: 6602977218683986145} + m_Father: {fileID: 0} + m_RootOrder: 0 + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!33 &6602977218682659017 +MeshFilter: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 6602977218683501769} + m_Mesh: {fileID: 4300000, guid: 3cc54c2c67fc34a1abe6fe43c889f8e3, type: 3} +--- !u!23 &6602977218681561609 +MeshRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 6602977218683501769} + m_Enabled: 1 + m_CastShadows: 1 + m_ReceiveShadows: 1 + m_DynamicOccludee: 1 + m_MotionVectors: 1 + m_LightProbeUsage: 1 + m_ReflectionProbeUsage: 1 + m_RenderingLayerMask: 1 + m_RendererPriority: 0 + m_Materials: + - {fileID: 2100000, guid: 58da84021fce340e9b877f63d3e18336, type: 2} + m_StaticBatchInfo: + firstSubMesh: 0 + subMeshCount: 0 + m_StaticBatchRoot: {fileID: 0} + m_ProbeAnchor: {fileID: 0} + m_LightProbeVolumeOverride: {fileID: 0} + m_ScaleInLightmap: 1 + m_PreserveUVs: 0 + m_IgnoreNormalsForChartDetection: 0 + m_ImportantGI: 0 + m_StitchLightmapSeams: 0 + m_SelectedEditorRenderState: 3 + m_MinimumChartSize: 4 + m_AutoUVMaxDistance: 0.5 + m_AutoUVMaxAngle: 89 + m_LightmapParameters: {fileID: 0} + m_SortingLayerID: 0 + m_SortingLayer: 0 + m_SortingOrder: 0 +--- !u!64 &6602977218685588075 +MeshCollider: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 6602977218683501769} + m_Material: {fileID: 0} + m_IsTrigger: 0 + m_Enabled: 1 + serializedVersion: 3 + m_Convex: 0 + m_CookingOptions: 14 + m_Mesh: {fileID: 4300000, guid: 3cc54c2c67fc34a1abe6fe43c889f8e3, type: 3} +--- !u!114 &4478061287446689989 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 6602977218683501769} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: ca4c92f9d8625e04b85d2ad57bf3ecbd, type: 3} + m_Name: + m_EditorClassIdentifier: + bounciness: 0.1 diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/ModularTrackKit/Prefabs/ModularTrackCurveLarge.prefab.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/ModularTrackKit/Prefabs/ModularTrackCurveLarge.prefab.meta" new file mode 100644 index 00000000..382d6652 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/ModularTrackKit/Prefabs/ModularTrackCurveLarge.prefab.meta" @@ -0,0 +1,7 @@ +fileFormatVersion: 2 +guid: 06604f26f581c4de08c3f45572924c7d +PrefabImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/ModularTrackKit/Prefabs/ModularTrackCurveMedium.prefab" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/ModularTrackKit/Prefabs/ModularTrackCurveMedium.prefab" new file mode 100644 index 00000000..8493cdee --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/ModularTrackKit/Prefabs/ModularTrackCurveMedium.prefab" @@ -0,0 +1,186 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!1 &43436360972620429 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 43436360972652205} + - component: {fileID: 43436360973422221} + - component: {fileID: 43436360974552141} + - component: {fileID: 43436360978922543} + - component: {fileID: 2000084677736836998} + m_Layer: 9 + m_Name: ModularTrackCurveMedium + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &43436360972652205 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 43436360972620429} + m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} + m_LocalPosition: {x: -0, y: 0, z: 0} + m_LocalScale: {x: 1, y: 1, z: 1} + m_Children: + - {fileID: 43436360972652207} + m_Father: {fileID: 0} + m_RootOrder: 0 + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!33 &43436360973422221 +MeshFilter: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 43436360972620429} + m_Mesh: {fileID: 4300000, guid: fd8897a9f46db4ff1ba74975ec44af36, type: 3} +--- !u!23 &43436360974552141 +MeshRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 43436360972620429} + m_Enabled: 1 + m_CastShadows: 1 + m_ReceiveShadows: 1 + m_DynamicOccludee: 1 + m_MotionVectors: 1 + m_LightProbeUsage: 1 + m_ReflectionProbeUsage: 1 + m_RenderingLayerMask: 1 + m_RendererPriority: 0 + m_Materials: + - {fileID: 2100000, guid: 58da84021fce340e9b877f63d3e18336, type: 2} + m_StaticBatchInfo: + firstSubMesh: 0 + subMeshCount: 0 + m_StaticBatchRoot: {fileID: 0} + m_ProbeAnchor: {fileID: 0} + m_LightProbeVolumeOverride: {fileID: 0} + m_ScaleInLightmap: 1 + m_PreserveUVs: 0 + m_IgnoreNormalsForChartDetection: 0 + m_ImportantGI: 0 + m_StitchLightmapSeams: 0 + m_SelectedEditorRenderState: 3 + m_MinimumChartSize: 4 + m_AutoUVMaxDistance: 0.5 + m_AutoUVMaxAngle: 89 + m_LightmapParameters: {fileID: 0} + m_SortingLayerID: 0 + m_SortingLayer: 0 + m_SortingOrder: 0 +--- !u!64 &43436360978922543 +MeshCollider: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 43436360972620429} + m_Material: {fileID: 0} + m_IsTrigger: 0 + m_Enabled: 1 + serializedVersion: 3 + m_Convex: 0 + m_CookingOptions: 14 + m_Mesh: {fileID: 4300000, guid: fd8897a9f46db4ff1ba74975ec44af36, type: 3} +--- !u!114 &2000084677736836998 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 43436360972620429} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: ca4c92f9d8625e04b85d2ad57bf3ecbd, type: 3} + m_Name: + m_EditorClassIdentifier: + bounciness: 0.1 +--- !u!1 &43436360972620431 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 43436360972652207} + - component: {fileID: 43436360973422223} + - component: {fileID: 43436360974552143} + m_Layer: 9 + m_Name: LaneDivider + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &43436360972652207 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 43436360972620431} + m_LocalRotation: {x: 0, y: -0, z: -0, w: 1} + m_LocalPosition: {x: -0, y: 0, z: 0} + m_LocalScale: {x: 1, y: 1, z: 1} + m_Children: [] + m_Father: {fileID: 43436360972652205} + m_RootOrder: 0 + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!33 &43436360973422223 +MeshFilter: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 43436360972620431} + m_Mesh: {fileID: 4300002, guid: fd8897a9f46db4ff1ba74975ec44af36, type: 3} +--- !u!23 &43436360974552143 +MeshRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 43436360972620431} + m_Enabled: 1 + m_CastShadows: 1 + m_ReceiveShadows: 1 + m_DynamicOccludee: 1 + m_MotionVectors: 1 + m_LightProbeUsage: 1 + m_ReflectionProbeUsage: 1 + m_RenderingLayerMask: 1 + m_RendererPriority: 0 + m_Materials: + - {fileID: 2100000, guid: 7b5f0a7a707e04e939eb8c5dee8e084c, type: 2} + m_StaticBatchInfo: + firstSubMesh: 0 + subMeshCount: 0 + m_StaticBatchRoot: {fileID: 0} + m_ProbeAnchor: {fileID: 0} + m_LightProbeVolumeOverride: {fileID: 0} + m_ScaleInLightmap: 1 + m_PreserveUVs: 0 + m_IgnoreNormalsForChartDetection: 0 + m_ImportantGI: 0 + m_StitchLightmapSeams: 0 + m_SelectedEditorRenderState: 3 + m_MinimumChartSize: 4 + m_AutoUVMaxDistance: 0.5 + m_AutoUVMaxAngle: 89 + m_LightmapParameters: {fileID: 0} + m_SortingLayerID: 0 + m_SortingLayer: 0 + m_SortingOrder: 0 diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/ModularTrackKit/Prefabs/ModularTrackCurveMedium.prefab.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/ModularTrackKit/Prefabs/ModularTrackCurveMedium.prefab.meta" new file mode 100644 index 00000000..423b10ed --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/ModularTrackKit/Prefabs/ModularTrackCurveMedium.prefab.meta" @@ -0,0 +1,7 @@ +fileFormatVersion: 2 +guid: 4f11626d6f47a444289c55bbe896ec98 +PrefabImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/ModularTrackKit/Prefabs/ModularTrackCurveSmall.prefab" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/ModularTrackKit/Prefabs/ModularTrackCurveSmall.prefab" new file mode 100644 index 00000000..5fd73473 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/ModularTrackKit/Prefabs/ModularTrackCurveSmall.prefab" @@ -0,0 +1,186 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!1 &6573238964211286484 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 6573238964211523060} + - component: {fileID: 6573238964212325850} + - component: {fileID: 6573238964213292826} + m_Layer: 9 + m_Name: LaneDivider + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &6573238964211523060 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 6573238964211286484} + m_LocalRotation: {x: 0, y: -0, z: -0, w: 1} + m_LocalPosition: {x: -0, y: 0, z: 0} + m_LocalScale: {x: 1, y: 1, z: 1} + m_Children: [] + m_Father: {fileID: 6573238964211523068} + m_RootOrder: 0 + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!33 &6573238964212325850 +MeshFilter: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 6573238964211286484} + m_Mesh: {fileID: 4300004, guid: a0922edcbe6b74564b40735068507f0c, type: 3} +--- !u!23 &6573238964213292826 +MeshRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 6573238964211286484} + m_Enabled: 1 + m_CastShadows: 1 + m_ReceiveShadows: 1 + m_DynamicOccludee: 1 + m_MotionVectors: 1 + m_LightProbeUsage: 1 + m_ReflectionProbeUsage: 1 + m_RenderingLayerMask: 1 + m_RendererPriority: 0 + m_Materials: + - {fileID: 2100000, guid: 7b5f0a7a707e04e939eb8c5dee8e084c, type: 2} + m_StaticBatchInfo: + firstSubMesh: 0 + subMeshCount: 0 + m_StaticBatchRoot: {fileID: 0} + m_ProbeAnchor: {fileID: 0} + m_LightProbeVolumeOverride: {fileID: 0} + m_ScaleInLightmap: 1 + m_PreserveUVs: 0 + m_IgnoreNormalsForChartDetection: 0 + m_ImportantGI: 0 + m_StitchLightmapSeams: 0 + m_SelectedEditorRenderState: 3 + m_MinimumChartSize: 4 + m_AutoUVMaxDistance: 0.5 + m_AutoUVMaxAngle: 89 + m_LightmapParameters: {fileID: 0} + m_SortingLayerID: 0 + m_SortingLayer: 0 + m_SortingOrder: 0 +--- !u!1 &6573238964211286492 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 6573238964211523068} + - component: {fileID: 6573238964212325848} + - component: {fileID: 6573238964213292824} + - component: {fileID: 6573238964217589624} + - component: {fileID: 421082697954344214} + m_Layer: 9 + m_Name: ModularTrackCurveSmall + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &6573238964211523068 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 6573238964211286492} + m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} + m_LocalPosition: {x: -0, y: 0, z: 0} + m_LocalScale: {x: 1, y: 1, z: 1} + m_Children: + - {fileID: 6573238964211523060} + m_Father: {fileID: 0} + m_RootOrder: 0 + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!33 &6573238964212325848 +MeshFilter: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 6573238964211286492} + m_Mesh: {fileID: 4300000, guid: a0922edcbe6b74564b40735068507f0c, type: 3} +--- !u!23 &6573238964213292824 +MeshRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 6573238964211286492} + m_Enabled: 1 + m_CastShadows: 1 + m_ReceiveShadows: 1 + m_DynamicOccludee: 1 + m_MotionVectors: 1 + m_LightProbeUsage: 1 + m_ReflectionProbeUsage: 1 + m_RenderingLayerMask: 1 + m_RendererPriority: 0 + m_Materials: + - {fileID: 2100000, guid: 58da84021fce340e9b877f63d3e18336, type: 2} + m_StaticBatchInfo: + firstSubMesh: 0 + subMeshCount: 0 + m_StaticBatchRoot: {fileID: 0} + m_ProbeAnchor: {fileID: 0} + m_LightProbeVolumeOverride: {fileID: 0} + m_ScaleInLightmap: 1 + m_PreserveUVs: 0 + m_IgnoreNormalsForChartDetection: 0 + m_ImportantGI: 0 + m_StitchLightmapSeams: 0 + m_SelectedEditorRenderState: 3 + m_MinimumChartSize: 4 + m_AutoUVMaxDistance: 0.5 + m_AutoUVMaxAngle: 89 + m_LightmapParameters: {fileID: 0} + m_SortingLayerID: 0 + m_SortingLayer: 0 + m_SortingOrder: 0 +--- !u!64 &6573238964217589624 +MeshCollider: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 6573238964211286492} + m_Material: {fileID: 0} + m_IsTrigger: 0 + m_Enabled: 1 + serializedVersion: 3 + m_Convex: 0 + m_CookingOptions: 14 + m_Mesh: {fileID: 4300000, guid: a0922edcbe6b74564b40735068507f0c, type: 3} +--- !u!114 &421082697954344214 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 6573238964211286492} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: ca4c92f9d8625e04b85d2ad57bf3ecbd, type: 3} + m_Name: + m_EditorClassIdentifier: + bounciness: 0.1 diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/ModularTrackKit/Prefabs/ModularTrackCurveSmall.prefab.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/ModularTrackKit/Prefabs/ModularTrackCurveSmall.prefab.meta" new file mode 100644 index 00000000..39e4966f --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/ModularTrackKit/Prefabs/ModularTrackCurveSmall.prefab.meta" @@ -0,0 +1,7 @@ +fileFormatVersion: 2 +guid: e2299f494e1674e9684aad2e11474f9d +PrefabImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/ModularTrackKit/Prefabs/ModularTrackRamp.prefab" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/ModularTrackKit/Prefabs/ModularTrackRamp.prefab" new file mode 100644 index 00000000..cde7ea4c --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/ModularTrackKit/Prefabs/ModularTrackRamp.prefab" @@ -0,0 +1,186 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!1 &7841096914572286500 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 7841096914571986436} + - component: {fileID: 7841096914569119268} + - component: {fileID: 7841096914570085604} + - component: {fileID: 7841096914566001796} + - component: {fileID: 8373069205134649904} + m_Layer: 9 + m_Name: ModularTrackRamp + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &7841096914571986436 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 7841096914572286500} + m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} + m_LocalPosition: {x: -0, y: 0, z: 0} + m_LocalScale: {x: 1, y: 1, z: 1} + m_Children: + - {fileID: 7841096914571986438} + m_Father: {fileID: 0} + m_RootOrder: 0 + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!33 &7841096914569119268 +MeshFilter: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 7841096914572286500} + m_Mesh: {fileID: 4300000, guid: fb55a8802f7114aceb2a7d7f0918153b, type: 3} +--- !u!23 &7841096914570085604 +MeshRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 7841096914572286500} + m_Enabled: 1 + m_CastShadows: 1 + m_ReceiveShadows: 1 + m_DynamicOccludee: 1 + m_MotionVectors: 1 + m_LightProbeUsage: 1 + m_ReflectionProbeUsage: 1 + m_RenderingLayerMask: 1 + m_RendererPriority: 0 + m_Materials: + - {fileID: 2100000, guid: 58da84021fce340e9b877f63d3e18336, type: 2} + m_StaticBatchInfo: + firstSubMesh: 0 + subMeshCount: 0 + m_StaticBatchRoot: {fileID: 0} + m_ProbeAnchor: {fileID: 0} + m_LightProbeVolumeOverride: {fileID: 0} + m_ScaleInLightmap: 1 + m_PreserveUVs: 0 + m_IgnoreNormalsForChartDetection: 0 + m_ImportantGI: 0 + m_StitchLightmapSeams: 0 + m_SelectedEditorRenderState: 3 + m_MinimumChartSize: 4 + m_AutoUVMaxDistance: 0.5 + m_AutoUVMaxAngle: 89 + m_LightmapParameters: {fileID: 0} + m_SortingLayerID: 0 + m_SortingLayer: 0 + m_SortingOrder: 0 +--- !u!64 &7841096914566001796 +MeshCollider: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 7841096914572286500} + m_Material: {fileID: 0} + m_IsTrigger: 0 + m_Enabled: 1 + serializedVersion: 3 + m_Convex: 0 + m_CookingOptions: 14 + m_Mesh: {fileID: 4300000, guid: fb55a8802f7114aceb2a7d7f0918153b, type: 3} +--- !u!114 &8373069205134649904 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 7841096914572286500} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: ca4c92f9d8625e04b85d2ad57bf3ecbd, type: 3} + m_Name: + m_EditorClassIdentifier: + bounciness: 0.1 +--- !u!1 &7841096914572286502 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 7841096914571986438} + - component: {fileID: 7841096914569119270} + - component: {fileID: 7841096914570085606} + m_Layer: 9 + m_Name: LaneDivider + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &7841096914571986438 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 7841096914572286502} + m_LocalRotation: {x: 0, y: -0, z: -0, w: 1} + m_LocalPosition: {x: -0, y: 0, z: 0} + m_LocalScale: {x: 1, y: 1, z: 1} + m_Children: [] + m_Father: {fileID: 7841096914571986436} + m_RootOrder: 0 + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!33 &7841096914569119270 +MeshFilter: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 7841096914572286502} + m_Mesh: {fileID: 4300002, guid: fb55a8802f7114aceb2a7d7f0918153b, type: 3} +--- !u!23 &7841096914570085606 +MeshRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 7841096914572286502} + m_Enabled: 1 + m_CastShadows: 1 + m_ReceiveShadows: 1 + m_DynamicOccludee: 1 + m_MotionVectors: 1 + m_LightProbeUsage: 1 + m_ReflectionProbeUsage: 1 + m_RenderingLayerMask: 1 + m_RendererPriority: 0 + m_Materials: + - {fileID: 2100000, guid: 7b5f0a7a707e04e939eb8c5dee8e084c, type: 2} + m_StaticBatchInfo: + firstSubMesh: 0 + subMeshCount: 0 + m_StaticBatchRoot: {fileID: 0} + m_ProbeAnchor: {fileID: 0} + m_LightProbeVolumeOverride: {fileID: 0} + m_ScaleInLightmap: 1 + m_PreserveUVs: 0 + m_IgnoreNormalsForChartDetection: 0 + m_ImportantGI: 0 + m_StitchLightmapSeams: 0 + m_SelectedEditorRenderState: 3 + m_MinimumChartSize: 4 + m_AutoUVMaxDistance: 0.5 + m_AutoUVMaxAngle: 89 + m_LightmapParameters: {fileID: 0} + m_SortingLayerID: 0 + m_SortingLayer: 0 + m_SortingOrder: 0 diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/ModularTrackKit/Prefabs/ModularTrackRamp.prefab.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/ModularTrackKit/Prefabs/ModularTrackRamp.prefab.meta" new file mode 100644 index 00000000..44c0d467 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/ModularTrackKit/Prefabs/ModularTrackRamp.prefab.meta" @@ -0,0 +1,7 @@ +fileFormatVersion: 2 +guid: 1c994073ac1d5445695ce53ec5195532 +PrefabImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/ModularTrackKit/Prefabs/ModularTrackRampCurveLeft.prefab" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/ModularTrackKit/Prefabs/ModularTrackRampCurveLeft.prefab" new file mode 100644 index 00000000..7f315808 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/ModularTrackKit/Prefabs/ModularTrackRampCurveLeft.prefab" @@ -0,0 +1,186 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!1 &2910822469168248368 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 2910822469167753744} + - component: {fileID: 2910822469164886576} + - component: {fileID: 2910822469165983984} + - component: {fileID: 2910822469161949328} + - component: {fileID: 5733566958665236664} + m_Layer: 9 + m_Name: ModularTrackRampCurveLeft + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &2910822469167753744 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 2910822469168248368} + m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} + m_LocalPosition: {x: -0, y: 0, z: 0} + m_LocalScale: {x: 1, y: 1, z: 1} + m_Children: + - {fileID: 2910822469167753746} + m_Father: {fileID: 0} + m_RootOrder: 0 + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!33 &2910822469164886576 +MeshFilter: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 2910822469168248368} + m_Mesh: {fileID: 4300000, guid: 05fede2a6022d42b1ade2912387039fa, type: 3} +--- !u!23 &2910822469165983984 +MeshRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 2910822469168248368} + m_Enabled: 1 + m_CastShadows: 1 + m_ReceiveShadows: 1 + m_DynamicOccludee: 1 + m_MotionVectors: 1 + m_LightProbeUsage: 1 + m_ReflectionProbeUsage: 1 + m_RenderingLayerMask: 1 + m_RendererPriority: 0 + m_Materials: + - {fileID: 2100000, guid: 58da84021fce340e9b877f63d3e18336, type: 2} + m_StaticBatchInfo: + firstSubMesh: 0 + subMeshCount: 0 + m_StaticBatchRoot: {fileID: 0} + m_ProbeAnchor: {fileID: 0} + m_LightProbeVolumeOverride: {fileID: 0} + m_ScaleInLightmap: 1 + m_PreserveUVs: 0 + m_IgnoreNormalsForChartDetection: 0 + m_ImportantGI: 0 + m_StitchLightmapSeams: 0 + m_SelectedEditorRenderState: 3 + m_MinimumChartSize: 4 + m_AutoUVMaxDistance: 0.5 + m_AutoUVMaxAngle: 89 + m_LightmapParameters: {fileID: 0} + m_SortingLayerID: 0 + m_SortingLayer: 0 + m_SortingOrder: 0 +--- !u!64 &2910822469161949328 +MeshCollider: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 2910822469168248368} + m_Material: {fileID: 0} + m_IsTrigger: 0 + m_Enabled: 1 + serializedVersion: 3 + m_Convex: 0 + m_CookingOptions: 14 + m_Mesh: {fileID: 4300000, guid: 05fede2a6022d42b1ade2912387039fa, type: 3} +--- !u!114 &5733566958665236664 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 2910822469168248368} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: ca4c92f9d8625e04b85d2ad57bf3ecbd, type: 3} + m_Name: + m_EditorClassIdentifier: + bounciness: 0.1 +--- !u!1 &2910822469168248370 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 2910822469167753746} + - component: {fileID: 2910822469164886578} + - component: {fileID: 2910822469165983986} + m_Layer: 9 + m_Name: LaneDivider + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &2910822469167753746 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 2910822469168248370} + m_LocalRotation: {x: 0, y: -0, z: -0, w: 1} + m_LocalPosition: {x: -0, y: 0, z: 0} + m_LocalScale: {x: 1, y: 1, z: 1} + m_Children: [] + m_Father: {fileID: 2910822469167753744} + m_RootOrder: 0 + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!33 &2910822469164886578 +MeshFilter: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 2910822469168248370} + m_Mesh: {fileID: 4300002, guid: 05fede2a6022d42b1ade2912387039fa, type: 3} +--- !u!23 &2910822469165983986 +MeshRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 2910822469168248370} + m_Enabled: 1 + m_CastShadows: 1 + m_ReceiveShadows: 1 + m_DynamicOccludee: 1 + m_MotionVectors: 1 + m_LightProbeUsage: 1 + m_ReflectionProbeUsage: 1 + m_RenderingLayerMask: 1 + m_RendererPriority: 0 + m_Materials: + - {fileID: 2100000, guid: 7b5f0a7a707e04e939eb8c5dee8e084c, type: 2} + m_StaticBatchInfo: + firstSubMesh: 0 + subMeshCount: 0 + m_StaticBatchRoot: {fileID: 0} + m_ProbeAnchor: {fileID: 0} + m_LightProbeVolumeOverride: {fileID: 0} + m_ScaleInLightmap: 1 + m_PreserveUVs: 0 + m_IgnoreNormalsForChartDetection: 0 + m_ImportantGI: 0 + m_StitchLightmapSeams: 0 + m_SelectedEditorRenderState: 3 + m_MinimumChartSize: 4 + m_AutoUVMaxDistance: 0.5 + m_AutoUVMaxAngle: 89 + m_LightmapParameters: {fileID: 0} + m_SortingLayerID: 0 + m_SortingLayer: 0 + m_SortingOrder: 0 diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/ModularTrackKit/Prefabs/ModularTrackRampCurveLeft.prefab.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/ModularTrackKit/Prefabs/ModularTrackRampCurveLeft.prefab.meta" new file mode 100644 index 00000000..78032c3b --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/ModularTrackKit/Prefabs/ModularTrackRampCurveLeft.prefab.meta" @@ -0,0 +1,7 @@ +fileFormatVersion: 2 +guid: 634c4192803244032a1b1c99cff02eff +PrefabImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/ModularTrackKit/Prefabs/ModularTrackRampCurveRight.prefab" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/ModularTrackKit/Prefabs/ModularTrackRampCurveRight.prefab" new file mode 100644 index 00000000..e6f61cf6 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/ModularTrackKit/Prefabs/ModularTrackRampCurveRight.prefab" @@ -0,0 +1,186 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!1 &2910822469168248368 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 2910822469167753744} + - component: {fileID: 2910822469164886576} + - component: {fileID: 2910822469165983984} + - component: {fileID: 2910822469161949328} + - component: {fileID: 5733566958665236664} + m_Layer: 9 + m_Name: ModularTrackRampCurveRight + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &2910822469167753744 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 2910822469168248368} + m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} + m_LocalPosition: {x: -0, y: 0, z: 0} + m_LocalScale: {x: 1, y: 1, z: 1} + m_Children: + - {fileID: 2910822469167753746} + m_Father: {fileID: 0} + m_RootOrder: 0 + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!33 &2910822469164886576 +MeshFilter: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 2910822469168248368} + m_Mesh: {fileID: 4300000, guid: f06addda049014caaa30b7f4b73e447d, type: 3} +--- !u!23 &2910822469165983984 +MeshRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 2910822469168248368} + m_Enabled: 1 + m_CastShadows: 1 + m_ReceiveShadows: 1 + m_DynamicOccludee: 1 + m_MotionVectors: 1 + m_LightProbeUsage: 1 + m_ReflectionProbeUsage: 1 + m_RenderingLayerMask: 1 + m_RendererPriority: 0 + m_Materials: + - {fileID: 2100000, guid: 58da84021fce340e9b877f63d3e18336, type: 2} + m_StaticBatchInfo: + firstSubMesh: 0 + subMeshCount: 0 + m_StaticBatchRoot: {fileID: 0} + m_ProbeAnchor: {fileID: 0} + m_LightProbeVolumeOverride: {fileID: 0} + m_ScaleInLightmap: 1 + m_PreserveUVs: 0 + m_IgnoreNormalsForChartDetection: 0 + m_ImportantGI: 0 + m_StitchLightmapSeams: 0 + m_SelectedEditorRenderState: 3 + m_MinimumChartSize: 4 + m_AutoUVMaxDistance: 0.5 + m_AutoUVMaxAngle: 89 + m_LightmapParameters: {fileID: 0} + m_SortingLayerID: 0 + m_SortingLayer: 0 + m_SortingOrder: 0 +--- !u!64 &2910822469161949328 +MeshCollider: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 2910822469168248368} + m_Material: {fileID: 0} + m_IsTrigger: 0 + m_Enabled: 1 + serializedVersion: 3 + m_Convex: 0 + m_CookingOptions: 14 + m_Mesh: {fileID: 4300000, guid: f06addda049014caaa30b7f4b73e447d, type: 3} +--- !u!114 &5733566958665236664 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 2910822469168248368} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: ca4c92f9d8625e04b85d2ad57bf3ecbd, type: 3} + m_Name: + m_EditorClassIdentifier: + bounciness: 0.1 +--- !u!1 &2910822469168248370 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 2910822469167753746} + - component: {fileID: 2910822469164886578} + - component: {fileID: 2910822469165983986} + m_Layer: 9 + m_Name: LaneDivider + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &2910822469167753746 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 2910822469168248370} + m_LocalRotation: {x: 0, y: -0, z: -0, w: 1} + m_LocalPosition: {x: -0, y: 0, z: 0} + m_LocalScale: {x: 1, y: 1, z: 1} + m_Children: [] + m_Father: {fileID: 2910822469167753744} + m_RootOrder: 0 + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!33 &2910822469164886578 +MeshFilter: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 2910822469168248370} + m_Mesh: {fileID: 4300002, guid: f06addda049014caaa30b7f4b73e447d, type: 3} +--- !u!23 &2910822469165983986 +MeshRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 2910822469168248370} + m_Enabled: 1 + m_CastShadows: 1 + m_ReceiveShadows: 1 + m_DynamicOccludee: 1 + m_MotionVectors: 1 + m_LightProbeUsage: 1 + m_ReflectionProbeUsage: 1 + m_RenderingLayerMask: 1 + m_RendererPriority: 0 + m_Materials: + - {fileID: 2100000, guid: 7b5f0a7a707e04e939eb8c5dee8e084c, type: 2} + m_StaticBatchInfo: + firstSubMesh: 0 + subMeshCount: 0 + m_StaticBatchRoot: {fileID: 0} + m_ProbeAnchor: {fileID: 0} + m_LightProbeVolumeOverride: {fileID: 0} + m_ScaleInLightmap: 1 + m_PreserveUVs: 0 + m_IgnoreNormalsForChartDetection: 0 + m_ImportantGI: 0 + m_StitchLightmapSeams: 0 + m_SelectedEditorRenderState: 3 + m_MinimumChartSize: 4 + m_AutoUVMaxDistance: 0.5 + m_AutoUVMaxAngle: 89 + m_LightmapParameters: {fileID: 0} + m_SortingLayerID: 0 + m_SortingLayer: 0 + m_SortingOrder: 0 diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/ModularTrackKit/Prefabs/ModularTrackRampCurveRight.prefab.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/ModularTrackKit/Prefabs/ModularTrackRampCurveRight.prefab.meta" new file mode 100644 index 00000000..20c462fc --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/ModularTrackKit/Prefabs/ModularTrackRampCurveRight.prefab.meta" @@ -0,0 +1,7 @@ +fileFormatVersion: 2 +guid: 7973c59434836422cbd71f26d6c1293e +PrefabImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/ModularTrackKit/Prefabs/ModularTrackSCurveLeft.prefab" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/ModularTrackKit/Prefabs/ModularTrackSCurveLeft.prefab" new file mode 100644 index 00000000..dd070681 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/ModularTrackKit/Prefabs/ModularTrackSCurveLeft.prefab" @@ -0,0 +1,186 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!1 &593336770641709956 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 593336770641352612} + - component: {fileID: 593336770644744068} + - component: {fileID: 593336770643645764} + m_Layer: 9 + m_Name: LaneDivider + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &593336770641352612 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 593336770641709956} + m_LocalRotation: {x: 0, y: -0, z: -0, w: 1} + m_LocalPosition: {x: -0, y: 0, z: 0} + m_LocalScale: {x: 1, y: 1, z: 1} + m_Children: [] + m_Father: {fileID: 593336770641352614} + m_RootOrder: 0 + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!33 &593336770644744068 +MeshFilter: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 593336770641709956} + m_Mesh: {fileID: 4300002, guid: becaefafb9fa24fe8bc0bbb4ce749bcc, type: 3} +--- !u!23 &593336770643645764 +MeshRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 593336770641709956} + m_Enabled: 1 + m_CastShadows: 1 + m_ReceiveShadows: 1 + m_DynamicOccludee: 1 + m_MotionVectors: 1 + m_LightProbeUsage: 1 + m_ReflectionProbeUsage: 1 + m_RenderingLayerMask: 1 + m_RendererPriority: 0 + m_Materials: + - {fileID: 2100000, guid: 7b5f0a7a707e04e939eb8c5dee8e084c, type: 2} + m_StaticBatchInfo: + firstSubMesh: 0 + subMeshCount: 0 + m_StaticBatchRoot: {fileID: 0} + m_ProbeAnchor: {fileID: 0} + m_LightProbeVolumeOverride: {fileID: 0} + m_ScaleInLightmap: 1 + m_PreserveUVs: 0 + m_IgnoreNormalsForChartDetection: 0 + m_ImportantGI: 0 + m_StitchLightmapSeams: 0 + m_SelectedEditorRenderState: 3 + m_MinimumChartSize: 4 + m_AutoUVMaxDistance: 0.5 + m_AutoUVMaxAngle: 89 + m_LightmapParameters: {fileID: 0} + m_SortingLayerID: 0 + m_SortingLayer: 0 + m_SortingOrder: 0 +--- !u!1 &593336770641709958 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 593336770641352614} + - component: {fileID: 593336770644744070} + - component: {fileID: 593336770643645766} + - component: {fileID: 593336770639619364} + - component: {fileID: 4716634619980544511} + m_Layer: 9 + m_Name: ModularTrackSCurveLeft + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &593336770641352614 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 593336770641709958} + m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} + m_LocalPosition: {x: -0, y: 0, z: 0} + m_LocalScale: {x: 1, y: 1, z: 1} + m_Children: + - {fileID: 593336770641352612} + m_Father: {fileID: 0} + m_RootOrder: 0 + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!33 &593336770644744070 +MeshFilter: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 593336770641709958} + m_Mesh: {fileID: 4300000, guid: becaefafb9fa24fe8bc0bbb4ce749bcc, type: 3} +--- !u!23 &593336770643645766 +MeshRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 593336770641709958} + m_Enabled: 1 + m_CastShadows: 1 + m_ReceiveShadows: 1 + m_DynamicOccludee: 1 + m_MotionVectors: 1 + m_LightProbeUsage: 1 + m_ReflectionProbeUsage: 1 + m_RenderingLayerMask: 1 + m_RendererPriority: 0 + m_Materials: + - {fileID: 2100000, guid: 58da84021fce340e9b877f63d3e18336, type: 2} + m_StaticBatchInfo: + firstSubMesh: 0 + subMeshCount: 0 + m_StaticBatchRoot: {fileID: 0} + m_ProbeAnchor: {fileID: 0} + m_LightProbeVolumeOverride: {fileID: 0} + m_ScaleInLightmap: 1 + m_PreserveUVs: 0 + m_IgnoreNormalsForChartDetection: 0 + m_ImportantGI: 0 + m_StitchLightmapSeams: 0 + m_SelectedEditorRenderState: 3 + m_MinimumChartSize: 4 + m_AutoUVMaxDistance: 0.5 + m_AutoUVMaxAngle: 89 + m_LightmapParameters: {fileID: 0} + m_SortingLayerID: 0 + m_SortingLayer: 0 + m_SortingOrder: 0 +--- !u!64 &593336770639619364 +MeshCollider: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 593336770641709958} + m_Material: {fileID: 0} + m_IsTrigger: 0 + m_Enabled: 1 + serializedVersion: 3 + m_Convex: 0 + m_CookingOptions: 14 + m_Mesh: {fileID: 4300000, guid: becaefafb9fa24fe8bc0bbb4ce749bcc, type: 3} +--- !u!114 &4716634619980544511 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 593336770641709958} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: ca4c92f9d8625e04b85d2ad57bf3ecbd, type: 3} + m_Name: + m_EditorClassIdentifier: + bounciness: 0.1 diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/ModularTrackKit/Prefabs/ModularTrackSCurveLeft.prefab.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/ModularTrackKit/Prefabs/ModularTrackSCurveLeft.prefab.meta" new file mode 100644 index 00000000..b93e95cd --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/ModularTrackKit/Prefabs/ModularTrackSCurveLeft.prefab.meta" @@ -0,0 +1,7 @@ +fileFormatVersion: 2 +guid: 4ceb0af72927442b89171edb85a2ccfa +PrefabImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/ModularTrackKit/Prefabs/ModularTrackSCurveRight.prefab" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/ModularTrackKit/Prefabs/ModularTrackSCurveRight.prefab" new file mode 100644 index 00000000..091060d5 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/ModularTrackKit/Prefabs/ModularTrackSCurveRight.prefab" @@ -0,0 +1,186 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!1 &593336770641709956 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 593336770641352612} + - component: {fileID: 593336770644744068} + - component: {fileID: 593336770643645764} + m_Layer: 9 + m_Name: LaneDivider + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &593336770641352612 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 593336770641709956} + m_LocalRotation: {x: 0, y: -0, z: -0, w: 1} + m_LocalPosition: {x: -0, y: 0, z: 0} + m_LocalScale: {x: 1, y: 1, z: 1} + m_Children: [] + m_Father: {fileID: 593336770641352614} + m_RootOrder: 0 + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!33 &593336770644744068 +MeshFilter: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 593336770641709956} + m_Mesh: {fileID: 4300002, guid: 109245566253c1c4aaa181dd71fad1a5, type: 3} +--- !u!23 &593336770643645764 +MeshRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 593336770641709956} + m_Enabled: 1 + m_CastShadows: 1 + m_ReceiveShadows: 1 + m_DynamicOccludee: 1 + m_MotionVectors: 1 + m_LightProbeUsage: 1 + m_ReflectionProbeUsage: 1 + m_RenderingLayerMask: 1 + m_RendererPriority: 0 + m_Materials: + - {fileID: 2100000, guid: 7b5f0a7a707e04e939eb8c5dee8e084c, type: 2} + m_StaticBatchInfo: + firstSubMesh: 0 + subMeshCount: 0 + m_StaticBatchRoot: {fileID: 0} + m_ProbeAnchor: {fileID: 0} + m_LightProbeVolumeOverride: {fileID: 0} + m_ScaleInLightmap: 1 + m_PreserveUVs: 0 + m_IgnoreNormalsForChartDetection: 0 + m_ImportantGI: 0 + m_StitchLightmapSeams: 0 + m_SelectedEditorRenderState: 3 + m_MinimumChartSize: 4 + m_AutoUVMaxDistance: 0.5 + m_AutoUVMaxAngle: 89 + m_LightmapParameters: {fileID: 0} + m_SortingLayerID: 0 + m_SortingLayer: 0 + m_SortingOrder: 0 +--- !u!1 &593336770641709958 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 593336770641352614} + - component: {fileID: 593336770644744070} + - component: {fileID: 593336770643645766} + - component: {fileID: 593336770639619364} + - component: {fileID: 4716634619980544511} + m_Layer: 9 + m_Name: ModularTrackSCurveRight + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &593336770641352614 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 593336770641709958} + m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} + m_LocalPosition: {x: -0, y: 0, z: 0} + m_LocalScale: {x: 1, y: 1, z: 1} + m_Children: + - {fileID: 593336770641352612} + m_Father: {fileID: 0} + m_RootOrder: 0 + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!33 &593336770644744070 +MeshFilter: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 593336770641709958} + m_Mesh: {fileID: 4300004, guid: 109245566253c1c4aaa181dd71fad1a5, type: 3} +--- !u!23 &593336770643645766 +MeshRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 593336770641709958} + m_Enabled: 1 + m_CastShadows: 1 + m_ReceiveShadows: 1 + m_DynamicOccludee: 1 + m_MotionVectors: 1 + m_LightProbeUsage: 1 + m_ReflectionProbeUsage: 1 + m_RenderingLayerMask: 1 + m_RendererPriority: 0 + m_Materials: + - {fileID: 2100000, guid: 58da84021fce340e9b877f63d3e18336, type: 2} + m_StaticBatchInfo: + firstSubMesh: 0 + subMeshCount: 0 + m_StaticBatchRoot: {fileID: 0} + m_ProbeAnchor: {fileID: 0} + m_LightProbeVolumeOverride: {fileID: 0} + m_ScaleInLightmap: 1 + m_PreserveUVs: 0 + m_IgnoreNormalsForChartDetection: 0 + m_ImportantGI: 0 + m_StitchLightmapSeams: 0 + m_SelectedEditorRenderState: 3 + m_MinimumChartSize: 4 + m_AutoUVMaxDistance: 0.5 + m_AutoUVMaxAngle: 89 + m_LightmapParameters: {fileID: 0} + m_SortingLayerID: 0 + m_SortingLayer: 0 + m_SortingOrder: 0 +--- !u!64 &593336770639619364 +MeshCollider: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 593336770641709958} + m_Material: {fileID: 0} + m_IsTrigger: 0 + m_Enabled: 1 + serializedVersion: 3 + m_Convex: 0 + m_CookingOptions: 14 + m_Mesh: {fileID: 4300004, guid: 109245566253c1c4aaa181dd71fad1a5, type: 3} +--- !u!114 &4716634619980544511 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 593336770641709958} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: ca4c92f9d8625e04b85d2ad57bf3ecbd, type: 3} + m_Name: + m_EditorClassIdentifier: + bounciness: 0.1 diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/ModularTrackKit/Prefabs/ModularTrackSCurveRight.prefab.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/ModularTrackKit/Prefabs/ModularTrackSCurveRight.prefab.meta" new file mode 100644 index 00000000..b775451f --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/ModularTrackKit/Prefabs/ModularTrackSCurveRight.prefab.meta" @@ -0,0 +1,7 @@ +fileFormatVersion: 2 +guid: 815aae46d0dac409c9d6902909a1db0d +PrefabImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/ModularTrackKit/Prefabs/ModularTrackSpiralLeft.prefab" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/ModularTrackKit/Prefabs/ModularTrackSpiralLeft.prefab" new file mode 100644 index 00000000..2b800c05 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/ModularTrackKit/Prefabs/ModularTrackSpiralLeft.prefab" @@ -0,0 +1,186 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!1 &7609577426192536233 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 7609577426192830089} + - component: {fileID: 7609577426195730089} + - component: {fileID: 7609577426194730089} + - component: {fileID: 7609577426198838281} + - component: {fileID: 7338447498522382666} + m_Layer: 9 + m_Name: ModularTrackSpiralLeft + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &7609577426192830089 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 7609577426192536233} + m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} + m_LocalPosition: {x: -0, y: 0, z: 0} + m_LocalScale: {x: 1, y: 1, z: 1} + m_Children: + - {fileID: 7609577426192830091} + m_Father: {fileID: 0} + m_RootOrder: 0 + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!33 &7609577426195730089 +MeshFilter: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 7609577426192536233} + m_Mesh: {fileID: 4300000, guid: 5830767f6fba8446ebc1160d406849b5, type: 3} +--- !u!23 &7609577426194730089 +MeshRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 7609577426192536233} + m_Enabled: 1 + m_CastShadows: 1 + m_ReceiveShadows: 1 + m_DynamicOccludee: 1 + m_MotionVectors: 1 + m_LightProbeUsage: 1 + m_ReflectionProbeUsage: 1 + m_RenderingLayerMask: 1 + m_RendererPriority: 0 + m_Materials: + - {fileID: 2100000, guid: 58da84021fce340e9b877f63d3e18336, type: 2} + m_StaticBatchInfo: + firstSubMesh: 0 + subMeshCount: 0 + m_StaticBatchRoot: {fileID: 0} + m_ProbeAnchor: {fileID: 0} + m_LightProbeVolumeOverride: {fileID: 0} + m_ScaleInLightmap: 1 + m_PreserveUVs: 0 + m_IgnoreNormalsForChartDetection: 0 + m_ImportantGI: 0 + m_StitchLightmapSeams: 0 + m_SelectedEditorRenderState: 3 + m_MinimumChartSize: 4 + m_AutoUVMaxDistance: 0.5 + m_AutoUVMaxAngle: 89 + m_LightmapParameters: {fileID: 0} + m_SortingLayerID: 0 + m_SortingLayer: 0 + m_SortingOrder: 0 +--- !u!64 &7609577426198838281 +MeshCollider: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 7609577426192536233} + m_Material: {fileID: 0} + m_IsTrigger: 0 + m_Enabled: 1 + serializedVersion: 3 + m_Convex: 0 + m_CookingOptions: 14 + m_Mesh: {fileID: 4300000, guid: 5830767f6fba8446ebc1160d406849b5, type: 3} +--- !u!114 &7338447498522382666 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 7609577426192536233} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: ca4c92f9d8625e04b85d2ad57bf3ecbd, type: 3} + m_Name: + m_EditorClassIdentifier: + bounciness: 0.1 +--- !u!1 &7609577426192536235 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 7609577426192830091} + - component: {fileID: 7609577426195730091} + - component: {fileID: 7609577426194730091} + m_Layer: 9 + m_Name: LaneDivider + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &7609577426192830091 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 7609577426192536235} + m_LocalRotation: {x: 0, y: -0, z: -0, w: 1} + m_LocalPosition: {x: -0, y: 0, z: 0} + m_LocalScale: {x: 1, y: 1, z: 1} + m_Children: [] + m_Father: {fileID: 7609577426192830089} + m_RootOrder: 0 + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!33 &7609577426195730091 +MeshFilter: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 7609577426192536235} + m_Mesh: {fileID: 4300002, guid: 5830767f6fba8446ebc1160d406849b5, type: 3} +--- !u!23 &7609577426194730091 +MeshRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 7609577426192536235} + m_Enabled: 1 + m_CastShadows: 1 + m_ReceiveShadows: 1 + m_DynamicOccludee: 1 + m_MotionVectors: 1 + m_LightProbeUsage: 1 + m_ReflectionProbeUsage: 1 + m_RenderingLayerMask: 1 + m_RendererPriority: 0 + m_Materials: + - {fileID: 2100000, guid: 7b5f0a7a707e04e939eb8c5dee8e084c, type: 2} + m_StaticBatchInfo: + firstSubMesh: 0 + subMeshCount: 0 + m_StaticBatchRoot: {fileID: 0} + m_ProbeAnchor: {fileID: 0} + m_LightProbeVolumeOverride: {fileID: 0} + m_ScaleInLightmap: 1 + m_PreserveUVs: 0 + m_IgnoreNormalsForChartDetection: 0 + m_ImportantGI: 0 + m_StitchLightmapSeams: 0 + m_SelectedEditorRenderState: 3 + m_MinimumChartSize: 4 + m_AutoUVMaxDistance: 0.5 + m_AutoUVMaxAngle: 89 + m_LightmapParameters: {fileID: 0} + m_SortingLayerID: 0 + m_SortingLayer: 0 + m_SortingOrder: 0 diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/ModularTrackKit/Prefabs/ModularTrackSpiralLeft.prefab.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/ModularTrackKit/Prefabs/ModularTrackSpiralLeft.prefab.meta" new file mode 100644 index 00000000..9adf77ac --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/ModularTrackKit/Prefabs/ModularTrackSpiralLeft.prefab.meta" @@ -0,0 +1,7 @@ +fileFormatVersion: 2 +guid: 89547b15363d64495b3ff832130f0a8e +PrefabImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/ModularTrackKit/Prefabs/ModularTrackSpiralRight.prefab" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/ModularTrackKit/Prefabs/ModularTrackSpiralRight.prefab" new file mode 100644 index 00000000..987c1c4f --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/ModularTrackKit/Prefabs/ModularTrackSpiralRight.prefab" @@ -0,0 +1,186 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!1 &7609577426192536233 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 7609577426192830089} + - component: {fileID: 7609577426195730089} + - component: {fileID: 7609577426194730089} + - component: {fileID: 7609577426198838281} + - component: {fileID: 7338447498522382666} + m_Layer: 9 + m_Name: ModularTrackSpiralRight + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &7609577426192830089 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 7609577426192536233} + m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} + m_LocalPosition: {x: -0, y: 0, z: 0} + m_LocalScale: {x: 1, y: 1, z: 1} + m_Children: + - {fileID: 7609577426192830091} + m_Father: {fileID: 0} + m_RootOrder: 0 + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!33 &7609577426195730089 +MeshFilter: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 7609577426192536233} + m_Mesh: {fileID: 4300000, guid: c7a29af1540b44b788f2c5e5cafe7a7c, type: 3} +--- !u!23 &7609577426194730089 +MeshRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 7609577426192536233} + m_Enabled: 1 + m_CastShadows: 1 + m_ReceiveShadows: 1 + m_DynamicOccludee: 1 + m_MotionVectors: 1 + m_LightProbeUsage: 1 + m_ReflectionProbeUsage: 1 + m_RenderingLayerMask: 1 + m_RendererPriority: 0 + m_Materials: + - {fileID: 2100000, guid: 58da84021fce340e9b877f63d3e18336, type: 2} + m_StaticBatchInfo: + firstSubMesh: 0 + subMeshCount: 0 + m_StaticBatchRoot: {fileID: 0} + m_ProbeAnchor: {fileID: 0} + m_LightProbeVolumeOverride: {fileID: 0} + m_ScaleInLightmap: 1 + m_PreserveUVs: 0 + m_IgnoreNormalsForChartDetection: 0 + m_ImportantGI: 0 + m_StitchLightmapSeams: 0 + m_SelectedEditorRenderState: 3 + m_MinimumChartSize: 4 + m_AutoUVMaxDistance: 0.5 + m_AutoUVMaxAngle: 89 + m_LightmapParameters: {fileID: 0} + m_SortingLayerID: 0 + m_SortingLayer: 0 + m_SortingOrder: 0 +--- !u!64 &7609577426198838281 +MeshCollider: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 7609577426192536233} + m_Material: {fileID: 0} + m_IsTrigger: 0 + m_Enabled: 1 + serializedVersion: 3 + m_Convex: 0 + m_CookingOptions: 14 + m_Mesh: {fileID: 4300000, guid: c7a29af1540b44b788f2c5e5cafe7a7c, type: 3} +--- !u!114 &7338447498522382666 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 7609577426192536233} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: ca4c92f9d8625e04b85d2ad57bf3ecbd, type: 3} + m_Name: + m_EditorClassIdentifier: + bounciness: 0.1 +--- !u!1 &7609577426192536235 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 7609577426192830091} + - component: {fileID: 7609577426195730091} + - component: {fileID: 7609577426194730091} + m_Layer: 9 + m_Name: LaneDivider + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &7609577426192830091 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 7609577426192536235} + m_LocalRotation: {x: 0, y: -0, z: -0, w: 1} + m_LocalPosition: {x: -0, y: 0, z: 0} + m_LocalScale: {x: 1, y: 1, z: 1} + m_Children: [] + m_Father: {fileID: 7609577426192830089} + m_RootOrder: 0 + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!33 &7609577426195730091 +MeshFilter: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 7609577426192536235} + m_Mesh: {fileID: 4300002, guid: c7a29af1540b44b788f2c5e5cafe7a7c, type: 3} +--- !u!23 &7609577426194730091 +MeshRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 7609577426192536235} + m_Enabled: 1 + m_CastShadows: 1 + m_ReceiveShadows: 1 + m_DynamicOccludee: 1 + m_MotionVectors: 1 + m_LightProbeUsage: 1 + m_ReflectionProbeUsage: 1 + m_RenderingLayerMask: 1 + m_RendererPriority: 0 + m_Materials: + - {fileID: 2100000, guid: 7b5f0a7a707e04e939eb8c5dee8e084c, type: 2} + m_StaticBatchInfo: + firstSubMesh: 0 + subMeshCount: 0 + m_StaticBatchRoot: {fileID: 0} + m_ProbeAnchor: {fileID: 0} + m_LightProbeVolumeOverride: {fileID: 0} + m_ScaleInLightmap: 1 + m_PreserveUVs: 0 + m_IgnoreNormalsForChartDetection: 0 + m_ImportantGI: 0 + m_StitchLightmapSeams: 0 + m_SelectedEditorRenderState: 3 + m_MinimumChartSize: 4 + m_AutoUVMaxDistance: 0.5 + m_AutoUVMaxAngle: 89 + m_LightmapParameters: {fileID: 0} + m_SortingLayerID: 0 + m_SortingLayer: 0 + m_SortingOrder: 0 diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/ModularTrackKit/Prefabs/ModularTrackSpiralRight.prefab.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/ModularTrackKit/Prefabs/ModularTrackSpiralRight.prefab.meta" new file mode 100644 index 00000000..ab91c97b --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/ModularTrackKit/Prefabs/ModularTrackSpiralRight.prefab.meta" @@ -0,0 +1,7 @@ +fileFormatVersion: 2 +guid: 291ac874e44fb46a1a05a1815cfc4f52 +PrefabImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/ModularTrackKit/Prefabs/ModularTrackStraight.prefab" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/ModularTrackKit/Prefabs/ModularTrackStraight.prefab" new file mode 100644 index 00000000..be3bccb9 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/ModularTrackKit/Prefabs/ModularTrackStraight.prefab" @@ -0,0 +1,186 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!1 &1579282987822437354 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 1579282987822796746} + - component: {fileID: 1579282987819372522} + - component: {fileID: 1579282987820502314} + m_Layer: 9 + m_Name: LaneDivider + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &1579282987822796746 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1579282987822437354} + m_LocalRotation: {x: 0, y: -0, z: -0, w: 1} + m_LocalPosition: {x: -0, y: 0, z: 0} + m_LocalScale: {x: 1, y: 1, z: 1} + m_Children: [] + m_Father: {fileID: 1579282987822796750} + m_RootOrder: 0 + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!33 &1579282987819372522 +MeshFilter: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1579282987822437354} + m_Mesh: {fileID: 4300006, guid: 4c266eccb4ff24ae9aeaf6fa734f60ea, type: 3} +--- !u!23 &1579282987820502314 +MeshRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1579282987822437354} + m_Enabled: 1 + m_CastShadows: 1 + m_ReceiveShadows: 1 + m_DynamicOccludee: 1 + m_MotionVectors: 1 + m_LightProbeUsage: 1 + m_ReflectionProbeUsage: 1 + m_RenderingLayerMask: 1 + m_RendererPriority: 0 + m_Materials: + - {fileID: 2100000, guid: 7b5f0a7a707e04e939eb8c5dee8e084c, type: 2} + m_StaticBatchInfo: + firstSubMesh: 0 + subMeshCount: 0 + m_StaticBatchRoot: {fileID: 0} + m_ProbeAnchor: {fileID: 0} + m_LightProbeVolumeOverride: {fileID: 0} + m_ScaleInLightmap: 1 + m_PreserveUVs: 0 + m_IgnoreNormalsForChartDetection: 0 + m_ImportantGI: 0 + m_StitchLightmapSeams: 0 + m_SelectedEditorRenderState: 3 + m_MinimumChartSize: 4 + m_AutoUVMaxDistance: 0.5 + m_AutoUVMaxAngle: 89 + m_LightmapParameters: {fileID: 0} + m_SortingLayerID: 0 + m_SortingLayer: 0 + m_SortingOrder: 0 +--- !u!1 &1579282987822437358 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 1579282987822796750} + - component: {fileID: 1579282987819372526} + - component: {fileID: 1579282987820502318} + - component: {fileID: 1579282987816156492} + - component: {fileID: 1644974464755198482} + m_Layer: 9 + m_Name: ModularTrackStraight + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &1579282987822796750 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1579282987822437358} + m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} + m_LocalPosition: {x: -0, y: 0, z: 0} + m_LocalScale: {x: 1, y: 1, z: 1} + m_Children: + - {fileID: 1579282987822796746} + m_Father: {fileID: 0} + m_RootOrder: 0 + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!33 &1579282987819372526 +MeshFilter: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1579282987822437358} + m_Mesh: {fileID: 4300002, guid: 4c266eccb4ff24ae9aeaf6fa734f60ea, type: 3} +--- !u!23 &1579282987820502318 +MeshRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1579282987822437358} + m_Enabled: 1 + m_CastShadows: 1 + m_ReceiveShadows: 1 + m_DynamicOccludee: 1 + m_MotionVectors: 1 + m_LightProbeUsage: 1 + m_ReflectionProbeUsage: 1 + m_RenderingLayerMask: 1 + m_RendererPriority: 0 + m_Materials: + - {fileID: 2100000, guid: 58da84021fce340e9b877f63d3e18336, type: 2} + m_StaticBatchInfo: + firstSubMesh: 0 + subMeshCount: 0 + m_StaticBatchRoot: {fileID: 0} + m_ProbeAnchor: {fileID: 0} + m_LightProbeVolumeOverride: {fileID: 0} + m_ScaleInLightmap: 1 + m_PreserveUVs: 0 + m_IgnoreNormalsForChartDetection: 0 + m_ImportantGI: 0 + m_StitchLightmapSeams: 0 + m_SelectedEditorRenderState: 3 + m_MinimumChartSize: 4 + m_AutoUVMaxDistance: 0.5 + m_AutoUVMaxAngle: 89 + m_LightmapParameters: {fileID: 0} + m_SortingLayerID: 0 + m_SortingLayer: 0 + m_SortingOrder: 0 +--- !u!64 &1579282987816156492 +MeshCollider: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1579282987822437358} + m_Material: {fileID: 0} + m_IsTrigger: 0 + m_Enabled: 1 + serializedVersion: 3 + m_Convex: 0 + m_CookingOptions: 14 + m_Mesh: {fileID: 4300002, guid: 4c266eccb4ff24ae9aeaf6fa734f60ea, type: 3} +--- !u!114 &1644974464755198482 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1579282987822437358} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: ca4c92f9d8625e04b85d2ad57bf3ecbd, type: 3} + m_Name: + m_EditorClassIdentifier: + bounciness: 0.1 diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/ModularTrackKit/Prefabs/ModularTrackStraight.prefab.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/ModularTrackKit/Prefabs/ModularTrackStraight.prefab.meta" new file mode 100644 index 00000000..d66fbcb6 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/ModularTrackKit/Prefabs/ModularTrackStraight.prefab.meta" @@ -0,0 +1,7 @@ +fileFormatVersion: 2 +guid: 941fac9249b6442cdb2d3f23472128e2 +PrefabImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Prefabs.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Prefabs.meta" new file mode 100644 index 00000000..14086774 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Prefabs.meta" @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 9e955b86905804b7dbf331cf1cc5a7a7 +folderAsset: yes +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Prefabs/BuildingShort.prefab" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Prefabs/BuildingShort.prefab" new file mode 100644 index 00000000..2ef71678 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Prefabs/BuildingShort.prefab" @@ -0,0 +1,96 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!1 &1861639547071064576 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 5538800703641817082} + m_Layer: 0 + m_Name: BuildingShort + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &5538800703641817082 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1861639547071064576} + m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} + m_LocalPosition: {x: 0, y: 0, z: 0} + m_LocalScale: {x: 1, y: 1, z: 1} + m_Children: + - {fileID: 4353122324497231841} + m_Father: {fileID: 0} + m_RootOrder: 0 + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!1001 &4353122324497364313 +PrefabInstance: + m_ObjectHideFlags: 0 + serializedVersion: 2 + m_Modification: + m_TransformParent: {fileID: 5538800703641817082} + m_Modifications: + - target: {fileID: 100056, guid: c2c0d74b41b8c4077b14073abca6504f, type: 3} + propertyPath: m_Name + value: BuildingShortModel + objectReference: {fileID: 0} + - target: {fileID: 400056, guid: c2c0d74b41b8c4077b14073abca6504f, type: 3} + propertyPath: m_LocalPosition.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 400056, guid: c2c0d74b41b8c4077b14073abca6504f, type: 3} + propertyPath: m_LocalPosition.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 400056, guid: c2c0d74b41b8c4077b14073abca6504f, type: 3} + propertyPath: m_LocalPosition.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 400056, guid: c2c0d74b41b8c4077b14073abca6504f, type: 3} + propertyPath: m_LocalRotation.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 400056, guid: c2c0d74b41b8c4077b14073abca6504f, type: 3} + propertyPath: m_LocalRotation.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 400056, guid: c2c0d74b41b8c4077b14073abca6504f, type: 3} + propertyPath: m_LocalRotation.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 400056, guid: c2c0d74b41b8c4077b14073abca6504f, type: 3} + propertyPath: m_LocalRotation.w + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 400056, guid: c2c0d74b41b8c4077b14073abca6504f, type: 3} + propertyPath: m_RootOrder + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 400056, guid: c2c0d74b41b8c4077b14073abca6504f, type: 3} + propertyPath: m_LocalEulerAnglesHint.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 400056, guid: c2c0d74b41b8c4077b14073abca6504f, type: 3} + propertyPath: m_LocalEulerAnglesHint.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 400056, guid: c2c0d74b41b8c4077b14073abca6504f, type: 3} + propertyPath: m_LocalEulerAnglesHint.z + value: 0 + objectReference: {fileID: 0} + m_RemovedComponents: [] + m_SourcePrefab: {fileID: 100100000, guid: c2c0d74b41b8c4077b14073abca6504f, type: 3} +--- !u!4 &4353122324497231841 stripped +Transform: + m_CorrespondingSourceObject: {fileID: 400056, guid: c2c0d74b41b8c4077b14073abca6504f, + type: 3} + m_PrefabInstance: {fileID: 4353122324497364313} + m_PrefabAsset: {fileID: 0} diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Prefabs/BuildingShort.prefab.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Prefabs/BuildingShort.prefab.meta" new file mode 100644 index 00000000..8788b171 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Prefabs/BuildingShort.prefab.meta" @@ -0,0 +1,7 @@ +fileFormatVersion: 2 +guid: 45c52fcc7429b214c8f9a6d85321ba77 +PrefabImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Prefabs/Button.prefab" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Prefabs/Button.prefab" new file mode 100644 index 00000000..115ba589 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Prefabs/Button.prefab" @@ -0,0 +1,291 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!1 &3854812128510395023 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 3854812128510395020} + - component: {fileID: 3854812128510395011} + - component: {fileID: 3854812128510395010} + - component: {fileID: 3854812128510395021} + m_Layer: 5 + m_Name: Button + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!224 &3854812128510395020 +RectTransform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 3854812128510395023} + m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} + m_LocalPosition: {x: 0, y: 0, z: 0} + m_LocalScale: {x: 1, y: 1, z: 1} + m_Children: + - {fileID: 3854812130382821518} + m_Father: {fileID: 0} + m_RootOrder: 0 + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} + m_AnchorMin: {x: 0, y: 0} + m_AnchorMax: {x: 0, y: 0} + m_AnchoredPosition: {x: 0, y: 0} + m_SizeDelta: {x: 0, y: 0} + m_Pivot: {x: 0.5, y: 0.5} +--- !u!222 &3854812128510395011 +CanvasRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 3854812128510395023} + m_CullTransparentMesh: 0 +--- !u!114 &3854812128510395010 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 3854812128510395023} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: -765806418, guid: f70555f144d8491a825f0804e09c671c, type: 3} + m_Name: + m_EditorClassIdentifier: + m_Material: {fileID: 0} + m_Color: {r: 1, g: 1, b: 1, a: 1} + m_RaycastTarget: 1 + m_OnCullStateChanged: + m_PersistentCalls: + m_Calls: [] + m_TypeName: UnityEngine.UI.MaskableGraphic+CullStateChangedEvent, UnityEngine.UI, + Version=1.0.0.0, Culture=neutral, PublicKeyToken=null + m_Sprite: {fileID: 0} + m_Type: 1 + m_PreserveAspect: 0 + m_FillCenter: 1 + m_FillMethod: 4 + m_FillAmount: 1 + m_FillClockwise: 1 + m_FillOrigin: 0 + m_UseSpriteMesh: 0 +--- !u!114 &3854812128510395021 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 3854812128510395023} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 1392445389, guid: f70555f144d8491a825f0804e09c671c, type: 3} + m_Name: + m_EditorClassIdentifier: + m_Navigation: + m_Mode: 3 + m_SelectOnUp: {fileID: 0} + m_SelectOnDown: {fileID: 0} + m_SelectOnLeft: {fileID: 0} + m_SelectOnRight: {fileID: 0} + m_Transition: 1 + m_Colors: + m_NormalColor: {r: 0.9433962, g: 0.93004626, b: 0.93004626, a: 1} + m_HighlightedColor: {r: 0.9607843, g: 0.9607843, b: 0.9607843, a: 1} + m_PressedColor: {r: 0.78431374, g: 0.78431374, b: 0.78431374, a: 1} + m_DisabledColor: {r: 0.78431374, g: 0.78431374, b: 0.78431374, a: 0.5019608} + m_ColorMultiplier: 1 + m_FadeDuration: 0.1 + m_SpriteState: + m_HighlightedSprite: {fileID: 0} + m_PressedSprite: {fileID: 0} + m_DisabledSprite: {fileID: 0} + m_AnimationTriggers: + m_NormalTrigger: Normal + m_HighlightedTrigger: Highlighted + m_PressedTrigger: Pressed + m_DisabledTrigger: Disabled + m_Interactable: 1 + m_TargetGraphic: {fileID: 3854812128510395010} + m_OnClick: + m_PersistentCalls: + m_Calls: + - m_Target: {fileID: 0} + m_MethodName: SetActivePanel + m_Mode: 3 + m_Arguments: + m_ObjectArgument: {fileID: 0} + m_ObjectArgumentAssemblyTypeName: UnityEngine.Object, UnityEngine + m_IntArgument: 0 + m_FloatArgument: 0 + m_StringArgument: + m_BoolArgument: 0 + m_CallState: 2 + m_TypeName: UnityEngine.UI.Button+ButtonClickedEvent, UnityEngine.UI, Version=1.0.0.0, + Culture=neutral, PublicKeyToken=null +--- !u!1 &3854812130382821513 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 3854812130382821518} + - component: {fileID: 3854812130382821516} + - component: {fileID: 3854812130382821519} + m_Layer: 5 + m_Name: Text + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!224 &3854812130382821518 +RectTransform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 3854812130382821513} + m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} + m_LocalPosition: {x: 0, y: 0, z: 0} + m_LocalScale: {x: 1, y: 1, z: 1} + m_Children: [] + m_Father: {fileID: 3854812128510395020} + m_RootOrder: 0 + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} + m_AnchorMin: {x: 0, y: 0} + m_AnchorMax: {x: 1, y: 1} + m_AnchoredPosition: {x: 0, y: 0} + m_SizeDelta: {x: 0, y: 0} + m_Pivot: {x: 0.5, y: 0.5} +--- !u!222 &3854812130382821516 +CanvasRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 3854812130382821513} + m_CullTransparentMesh: 0 +--- !u!114 &3854812130382821519 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 3854812130382821513} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: f4688fdb7df04437aeb418b961361dc5, type: 3} + m_Name: + m_EditorClassIdentifier: + m_Material: {fileID: 0} + m_Color: {r: 1, g: 1, b: 1, a: 1} + m_RaycastTarget: 1 + m_OnCullStateChanged: + m_PersistentCalls: + m_Calls: [] + m_TypeName: UnityEngine.UI.MaskableGraphic+CullStateChangedEvent, UnityEngine.UI, + Version=1.0.0.0, Culture=neutral, PublicKeyToken=null + m_text: Main + m_isRightToLeft: 0 + m_fontAsset: {fileID: 11400000, guid: 8f586378b4e144a9851e7b34d9b748ee, type: 2} + m_sharedMaterial: {fileID: 2180264, guid: 8f586378b4e144a9851e7b34d9b748ee, type: 2} + m_fontSharedMaterials: [] + m_fontMaterial: {fileID: 0} + m_fontMaterials: [] + m_fontColor32: + serializedVersion: 2 + rgba: 4294967295 + m_fontColor: {r: 0.29803923, g: 0.34509805, b: 0.39607844, a: 1} + m_enableVertexGradient: 0 + m_colorMode: 3 + m_fontColorGradient: + topLeft: {r: 1, g: 1, b: 1, a: 1} + topRight: {r: 1, g: 1, b: 1, a: 1} + bottomLeft: {r: 1, g: 1, b: 1, a: 1} + bottomRight: {r: 1, g: 1, b: 1, a: 1} + m_fontColorGradientPreset: {fileID: 0} + m_spriteAsset: {fileID: 0} + m_tintAllSprites: 0 + m_overrideHtmlColors: 0 + m_faceColor: + serializedVersion: 2 + rgba: 4294967295 + m_outlineColor: + serializedVersion: 2 + rgba: 4278190080 + m_fontSize: 32 + m_fontSizeBase: 12 + m_fontWeight: 400 + m_enableAutoSizing: 1 + m_fontSizeMin: 1 + m_fontSizeMax: 32 + m_fontStyle: 0 + m_textAlignment: 514 + m_isAlignmentEnumConverted: 1 + m_characterSpacing: 0 + m_wordSpacing: 0 + m_lineSpacing: 0 + m_lineSpacingMax: 0 + m_paragraphSpacing: 0 + m_charWidthMaxAdj: 0 + m_enableWordWrapping: 1 + m_wordWrappingRatios: 0.4 + m_overflowMode: 0 + m_firstOverflowCharacterIndex: -1 + m_linkedTextComponent: {fileID: 0} + m_isLinkedTextComponent: 0 + m_isTextTruncated: 0 + m_enableKerning: 1 + m_enableExtraPadding: 0 + checkPaddingRequired: 0 + m_isRichText: 1 + m_parseCtrlCharacters: 1 + m_isOrthographic: 1 + m_isCullingEnabled: 0 + m_ignoreRectMaskCulling: 0 + m_ignoreCulling: 1 + m_horizontalMapping: 0 + m_verticalMapping: 0 + m_uvLineOffset: 0 + m_geometrySortingOrder: 0 + m_firstVisibleCharacter: 0 + m_useMaxVisibleDescender: 1 + m_pageToDisplay: 1 + m_margin: {x: 5, y: 5, z: 5, w: 5} + m_textInfo: + textComponent: {fileID: 3854812130382821519} + characterCount: 4 + spriteCount: 0 + spaceCount: 0 + wordCount: 1 + linkCount: 0 + lineCount: 1 + pageCount: 1 + materialCount: 1 + m_havePropertiesChanged: 0 + m_isUsingLegacyAnimationComponent: 0 + m_isVolumetricText: 0 + m_spriteAnimator: {fileID: 0} + m_isInputParsingRequired: 0 + m_inputSource: 0 + m_hasFontAssetChanged: 0 + m_subTextObjects: + - {fileID: 0} + - {fileID: 0} + - {fileID: 0} + - {fileID: 0} + - {fileID: 0} + - {fileID: 0} + - {fileID: 0} + - {fileID: 0} + m_baseMaterial: {fileID: 0} + m_maskOffset: {x: 0, y: 0, z: 0, w: 0} diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Prefabs/Button.prefab.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Prefabs/Button.prefab.meta" new file mode 100644 index 00000000..b7edeea8 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Prefabs/Button.prefab.meta" @@ -0,0 +1,7 @@ +fileFormatVersion: 2 +guid: a52712b80a6dbc0418a24741c5a70352 +PrefabImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Prefabs/Checkpoint.prefab" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Prefabs/Checkpoint.prefab" new file mode 100644 index 00000000..11831d6c --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Prefabs/Checkpoint.prefab" @@ -0,0 +1,66 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!1 &301968402025351761 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 3946376847079625120} + - component: {fileID: 8400165572302042033} + - component: {fileID: 8450129487767892674} + m_Layer: 0 + m_Name: Checkpoint + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &3946376847079625120 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 301968402025351761} + m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} + m_LocalPosition: {x: 0, y: 0, z: 0} + m_LocalScale: {x: 1, y: 1, z: 1} + m_Children: [] + m_Father: {fileID: 0} + m_RootOrder: 0 + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!65 &8400165572302042033 +BoxCollider: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 301968402025351761} + m_Material: {fileID: 0} + m_IsTrigger: 1 + m_Enabled: 1 + serializedVersion: 2 + m_Size: {x: 15, y: 5, z: 1} + m_Center: {x: 0, y: 2.5, z: 0} +--- !u!114 &8450129487767892674 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 301968402025351761} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: bbae15ab488cd06418614cdb83952550, type: 3} + m_Name: + m_EditorClassIdentifier: + isStartFinishLine: 0 + kartLayers: + serializedVersion: 2 + m_Bits: 1 + groundLayers: + serializedVersion: 2 + m_Bits: 512 diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Prefabs/Checkpoint.prefab.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Prefabs/Checkpoint.prefab.meta" new file mode 100644 index 00000000..8b2c2286 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Prefabs/Checkpoint.prefab.meta" @@ -0,0 +1,7 @@ +fileFormatVersion: 2 +guid: 4ca810eee207a9c47a8ce33ea21c709d +PrefabImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Prefabs/DriftTrail.prefab" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Prefabs/DriftTrail.prefab" new file mode 100644 index 00000000..91528291 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Prefabs/DriftTrail.prefab" @@ -0,0 +1,4664 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!1 &148586 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 496482} + - component: {fileID: 19895962} + - component: {fileID: 19956934} + m_Layer: 0 + m_Name: DriftTrail + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &496482 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 148586} + m_LocalRotation: {x: -0.7069834, y: 0, z: 0, w: 0.7072302} + m_LocalPosition: {x: 0, y: 0, z: 0} + m_LocalScale: {x: 1, y: 0.99999976, z: 0.99999976} + m_Children: [] + m_Father: {fileID: 0} + m_RootOrder: 0 + m_LocalEulerAnglesHint: {x: -89.98, y: 0, z: 0} +--- !u!198 &19895962 +ParticleSystem: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 148586} + serializedVersion: 6 + lengthInSec: 0.75 + simulationSpeed: 1 + stopAction: 0 + cullingMode: 3 + ringBufferMode: 0 + ringBufferLoopRange: {x: 0, y: 1} + looping: 1 + prewarm: 0 + playOnAwake: 1 + useUnscaledTime: 0 + autoRandomSeed: 1 + useRigidbodyForVelocity: 1 + startDelay: + serializedVersion: 2 + minMaxState: 0 + scalar: 0 + minScalar: 0 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + moveWithTransform: 1 + moveWithCustomTransform: {fileID: 0} + scalingMode: 2 + randomSeed: 0 + InitialModule: + serializedVersion: 3 + enabled: 1 + startLifetime: + serializedVersion: 2 + minMaxState: 0 + scalar: 0.2 + minScalar: 5 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + startSpeed: + serializedVersion: 2 + minMaxState: 0 + scalar: 0 + minScalar: 5 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + startColor: + serializedVersion: 2 + minMaxState: 0 + minColor: {r: 1, g: 1, b: 1, a: 1} + maxColor: {r: 1, g: 1, b: 1, a: 1} + maxGradient: + serializedVersion: 2 + key0: {r: 1, g: 1, b: 1, a: 1} + key1: {r: 1, g: 1, b: 1, a: 1} + key2: {r: 0, g: 0, b: 0, a: 0} + key3: {r: 0, g: 0, b: 0, a: 0} + key4: {r: 0, g: 0, b: 0, a: 0} + key5: {r: 0, g: 0, b: 0, a: 0} + key6: {r: 0, g: 0, b: 0, a: 0} + key7: {r: 0, g: 0, b: 0, a: 0} + ctime0: 0 + ctime1: 65535 + ctime2: 0 + ctime3: 0 + ctime4: 0 + ctime5: 0 + ctime6: 0 + ctime7: 0 + atime0: 0 + atime1: 65535 + atime2: 0 + atime3: 0 + atime4: 0 + atime5: 0 + atime6: 0 + atime7: 0 + m_Mode: 0 + m_NumColorKeys: 2 + m_NumAlphaKeys: 2 + minGradient: + serializedVersion: 2 + key0: {r: 1, g: 1, b: 1, a: 1} + key1: {r: 1, g: 1, b: 1, a: 1} + key2: {r: 0, g: 0, b: 0, a: 0} + key3: {r: 0, g: 0, b: 0, a: 0} + key4: {r: 0, g: 0, b: 0, a: 0} + key5: {r: 0, g: 0, b: 0, a: 0} + key6: {r: 0, g: 0, b: 0, a: 0} + key7: {r: 0, g: 0, b: 0, a: 0} + ctime0: 0 + ctime1: 65535 + ctime2: 0 + ctime3: 0 + ctime4: 0 + ctime5: 0 + ctime6: 0 + ctime7: 0 + atime0: 0 + atime1: 65535 + atime2: 0 + atime3: 0 + atime4: 0 + atime5: 0 + atime6: 0 + atime7: 0 + m_Mode: 0 + m_NumColorKeys: 2 + m_NumAlphaKeys: 2 + startSize: + serializedVersion: 2 + minMaxState: 3 + scalar: 0.5 + minScalar: 0.3 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0.2 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + startSizeY: + serializedVersion: 2 + minMaxState: 3 + scalar: 1 + minScalar: 1 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + startSizeZ: + serializedVersion: 2 + minMaxState: 3 + scalar: 1 + minScalar: 1 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + startRotationX: + serializedVersion: 2 + minMaxState: 0 + scalar: 0 + minScalar: 0 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + startRotationY: + serializedVersion: 2 + minMaxState: 0 + scalar: 0 + minScalar: 0 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + startRotation: + serializedVersion: 2 + minMaxState: 0 + scalar: 0 + minScalar: 0 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + randomizeRotationDirection: 0 + maxNumParticles: 1000 + size3D: 0 + rotation3D: 0 + gravityModifier: + serializedVersion: 2 + minMaxState: 0 + scalar: 0 + minScalar: 0 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + ShapeModule: + serializedVersion: 6 + enabled: 1 + type: 12 + angle: 25 + length: 5 + boxThickness: {x: 0, y: 0, z: 0} + radiusThickness: 1 + donutRadius: 0.2 + m_Position: {x: 0, y: 0, z: 0} + m_Rotation: {x: 0, y: 0, z: 0} + m_Scale: {x: 1, y: 1, z: 1} + placementMode: 0 + m_MeshMaterialIndex: 0 + m_MeshNormalOffset: 0 + m_MeshSpawn: + mode: 0 + spread: 0 + speed: + serializedVersion: 2 + minMaxState: 0 + scalar: 1 + minScalar: 1 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + m_Mesh: {fileID: 0} + m_MeshRenderer: {fileID: 0} + m_SkinnedMeshRenderer: {fileID: 0} + m_Sprite: {fileID: 0} + m_SpriteRenderer: {fileID: 0} + m_UseMeshMaterialIndex: 0 + m_UseMeshColors: 1 + alignToDirection: 0 + m_Texture: {fileID: 0} + m_TextureClipChannel: 3 + m_TextureClipThreshold: 0 + m_TextureUVChannel: 0 + m_TextureColorAffectsParticles: 1 + m_TextureAlphaAffectsParticles: 1 + m_TextureBilinearFiltering: 0 + randomDirectionAmount: 0 + sphericalDirectionAmount: 0 + randomPositionAmount: 0 + radius: + value: 0.06713332 + mode: 0 + spread: 0 + speed: + serializedVersion: 2 + minMaxState: 0 + scalar: 1 + minScalar: 1 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + arc: + value: 360 + mode: 0 + spread: 0 + speed: + serializedVersion: 2 + minMaxState: 0 + scalar: 1 + minScalar: 1 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + EmissionModule: + enabled: 1 + serializedVersion: 4 + rateOverTime: + serializedVersion: 2 + minMaxState: 0 + scalar: 0 + minScalar: 0 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + rateOverDistance: + serializedVersion: 2 + minMaxState: 0 + scalar: 20 + minScalar: 0 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + m_BurstCount: 0 + m_Bursts: [] + SizeModule: + enabled: 1 + curve: + serializedVersion: 2 + minMaxState: 1 + scalar: 1 + minScalar: 1 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: -0.42517185 + outSlope: -0.42517185 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.35145003 + - serializedVersion: 3 + time: 0.4317578 + value: 0.6761681 + inSlope: -1.2160864 + outSlope: -1.2160864 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + y: + serializedVersion: 2 + minMaxState: 1 + scalar: 1 + minScalar: 1 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 1 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 1 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + z: + serializedVersion: 2 + minMaxState: 1 + scalar: 1 + minScalar: 1 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 1 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 1 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + separateAxes: 0 + RotationModule: + enabled: 0 + x: + serializedVersion: 2 + minMaxState: 0 + scalar: 0 + minScalar: 0 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + y: + serializedVersion: 2 + minMaxState: 0 + scalar: 0 + minScalar: 0 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + curve: + serializedVersion: 2 + minMaxState: 0 + scalar: 0.7853982 + minScalar: 0.7853982 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + separateAxes: 0 + ColorModule: + enabled: 1 + gradient: + serializedVersion: 2 + minMaxState: 1 + minColor: {r: 1, g: 1, b: 1, a: 1} + maxColor: {r: 1, g: 1, b: 1, a: 1} + maxGradient: + serializedVersion: 2 + key0: {r: 1, g: 1, b: 1, a: 1} + key1: {r: 1, g: 1, b: 1, a: 0} + key2: {r: 0, g: 0, b: 0, a: 0} + key3: {r: 0, g: 0, b: 0, a: 0} + key4: {r: 0, g: 0, b: 0, a: 0} + key5: {r: 0, g: 0, b: 0, a: 0} + key6: {r: 0, g: 0, b: 0, a: 0} + key7: {r: 0, g: 0, b: 0, a: 0} + ctime0: 0 + ctime1: 65535 + ctime2: 0 + ctime3: 0 + ctime4: 0 + ctime5: 0 + ctime6: 0 + ctime7: 0 + atime0: 0 + atime1: 65535 + atime2: 0 + atime3: 0 + atime4: 0 + atime5: 0 + atime6: 0 + atime7: 0 + m_Mode: 0 + m_NumColorKeys: 2 + m_NumAlphaKeys: 2 + minGradient: + serializedVersion: 2 + key0: {r: 1, g: 1, b: 1, a: 1} + key1: {r: 1, g: 1, b: 1, a: 1} + key2: {r: 0, g: 0, b: 0, a: 0} + key3: {r: 0, g: 0, b: 0, a: 0} + key4: {r: 0, g: 0, b: 0, a: 0} + key5: {r: 0, g: 0, b: 0, a: 0} + key6: {r: 0, g: 0, b: 0, a: 0} + key7: {r: 0, g: 0, b: 0, a: 0} + ctime0: 0 + ctime1: 65535 + ctime2: 0 + ctime3: 0 + ctime4: 0 + ctime5: 0 + ctime6: 0 + ctime7: 0 + atime0: 0 + atime1: 65535 + atime2: 0 + atime3: 0 + atime4: 0 + atime5: 0 + atime6: 0 + atime7: 0 + m_Mode: 0 + m_NumColorKeys: 2 + m_NumAlphaKeys: 2 + UVModule: + enabled: 0 + mode: 0 + timeMode: 0 + fps: 30 + frameOverTime: + serializedVersion: 2 + minMaxState: 1 + scalar: 0.9999 + minScalar: 0.9999 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 1 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 1 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 1 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 1 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + startFrame: + serializedVersion: 2 + minMaxState: 0 + scalar: 0 + minScalar: 0 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + speedRange: {x: 0, y: 1} + tilesX: 1 + tilesY: 1 + animationType: 0 + rowIndex: 0 + cycles: 1 + uvChannelMask: -1 + randomRow: 1 + sprites: + - sprite: {fileID: 0} + flipU: 0 + flipV: 0 + VelocityModule: + enabled: 1 + x: + serializedVersion: 2 + minMaxState: 0 + scalar: 0 + minScalar: 0 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + y: + serializedVersion: 2 + minMaxState: 0 + scalar: 0.25 + minScalar: 0 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + z: + serializedVersion: 2 + minMaxState: 0 + scalar: 0 + minScalar: 0 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + orbitalX: + serializedVersion: 2 + minMaxState: 0 + scalar: 0 + minScalar: 0 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + orbitalY: + serializedVersion: 2 + minMaxState: 0 + scalar: 0 + minScalar: 0 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + orbitalZ: + serializedVersion: 2 + minMaxState: 0 + scalar: 0 + minScalar: 0 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + orbitalOffsetX: + serializedVersion: 2 + minMaxState: 0 + scalar: 0 + minScalar: 0 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + orbitalOffsetY: + serializedVersion: 2 + minMaxState: 0 + scalar: 0 + minScalar: 0 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + orbitalOffsetZ: + serializedVersion: 2 + minMaxState: 0 + scalar: 0 + minScalar: 0 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + radial: + serializedVersion: 2 + minMaxState: 0 + scalar: 0 + minScalar: 0 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + speedModifier: + serializedVersion: 2 + minMaxState: 0 + scalar: 1 + minScalar: 1 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + inWorldSpace: 1 + InheritVelocityModule: + enabled: 0 + m_Mode: 0 + m_Curve: + serializedVersion: 2 + minMaxState: 0 + scalar: 0 + minScalar: 0 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + ForceModule: + enabled: 0 + x: + serializedVersion: 2 + minMaxState: 0 + scalar: 0 + minScalar: 0 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + y: + serializedVersion: 2 + minMaxState: 0 + scalar: 1 + minScalar: 0 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + z: + serializedVersion: 2 + minMaxState: 0 + scalar: 0 + minScalar: 0 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + inWorldSpace: 0 + randomizePerFrame: 0 + ExternalForcesModule: + enabled: 0 + multiplier: 1 + influenceFilter: 0 + influenceMask: + serializedVersion: 2 + m_Bits: 4294967295 + influenceList: [] + ClampVelocityModule: + enabled: 0 + x: + serializedVersion: 2 + minMaxState: 0 + scalar: 1 + minScalar: 1 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + y: + serializedVersion: 2 + minMaxState: 0 + scalar: 1 + minScalar: 1 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + z: + serializedVersion: 2 + minMaxState: 0 + scalar: 1 + minScalar: 1 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + magnitude: + serializedVersion: 2 + minMaxState: 0 + scalar: 1 + minScalar: 1 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + separateAxis: 0 + inWorldSpace: 0 + multiplyDragByParticleSize: 1 + multiplyDragByParticleVelocity: 1 + dampen: 1 + drag: + serializedVersion: 2 + minMaxState: 0 + scalar: 0 + minScalar: 0 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + NoiseModule: + enabled: 0 + strength: + serializedVersion: 2 + minMaxState: 0 + scalar: 1 + minScalar: 1 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + strengthY: + serializedVersion: 2 + minMaxState: 0 + scalar: 1 + minScalar: 1 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + strengthZ: + serializedVersion: 2 + minMaxState: 0 + scalar: 1 + minScalar: 1 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + separateAxes: 0 + frequency: 0.5 + damping: 1 + octaves: 1 + octaveMultiplier: 0.5 + octaveScale: 2 + quality: 2 + scrollSpeed: + serializedVersion: 2 + minMaxState: 0 + scalar: 0 + minScalar: 0 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + remap: + serializedVersion: 2 + minMaxState: 1 + scalar: 1 + minScalar: 1 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 1 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 1 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + remapY: + serializedVersion: 2 + minMaxState: 1 + scalar: 1 + minScalar: 1 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 1 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 1 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + remapZ: + serializedVersion: 2 + minMaxState: 1 + scalar: 1 + minScalar: 1 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 1 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 1 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + remapEnabled: 0 + positionAmount: + serializedVersion: 2 + minMaxState: 0 + scalar: 1 + minScalar: 1 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + rotationAmount: + serializedVersion: 2 + minMaxState: 0 + scalar: 0 + minScalar: 0 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + sizeAmount: + serializedVersion: 2 + minMaxState: 0 + scalar: 0 + minScalar: 0 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + SizeBySpeedModule: + enabled: 1 + curve: + serializedVersion: 2 + minMaxState: 1 + scalar: 1 + minScalar: 1 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + y: + serializedVersion: 2 + minMaxState: 1 + scalar: 1 + minScalar: 1 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 1 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 1 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + z: + serializedVersion: 2 + minMaxState: 1 + scalar: 1 + minScalar: 1 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 1 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 1 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + range: {x: 0, y: 1} + separateAxes: 0 + RotationBySpeedModule: + enabled: 0 + x: + serializedVersion: 2 + minMaxState: 0 + scalar: 0 + minScalar: 0 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + y: + serializedVersion: 2 + minMaxState: 0 + scalar: 0 + minScalar: 0 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + curve: + serializedVersion: 2 + minMaxState: 0 + scalar: 0.7853982 + minScalar: 0.7853982 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + separateAxes: 0 + range: {x: 0, y: 1} + ColorBySpeedModule: + enabled: 0 + gradient: + serializedVersion: 2 + minMaxState: 1 + minColor: {r: 1, g: 1, b: 1, a: 1} + maxColor: {r: 1, g: 1, b: 1, a: 1} + maxGradient: + serializedVersion: 2 + key0: {r: 1, g: 1, b: 1, a: 1} + key1: {r: 1, g: 1, b: 1, a: 1} + key2: {r: 0, g: 0, b: 0, a: 0} + key3: {r: 0, g: 0, b: 0, a: 0} + key4: {r: 0, g: 0, b: 0, a: 0} + key5: {r: 0, g: 0, b: 0, a: 0} + key6: {r: 0, g: 0, b: 0, a: 0} + key7: {r: 0, g: 0, b: 0, a: 0} + ctime0: 0 + ctime1: 65535 + ctime2: 0 + ctime3: 0 + ctime4: 0 + ctime5: 0 + ctime6: 0 + ctime7: 0 + atime0: 0 + atime1: 65535 + atime2: 0 + atime3: 0 + atime4: 0 + atime5: 0 + atime6: 0 + atime7: 0 + m_Mode: 0 + m_NumColorKeys: 2 + m_NumAlphaKeys: 2 + minGradient: + serializedVersion: 2 + key0: {r: 1, g: 1, b: 1, a: 1} + key1: {r: 1, g: 1, b: 1, a: 1} + key2: {r: 0, g: 0, b: 0, a: 0} + key3: {r: 0, g: 0, b: 0, a: 0} + key4: {r: 0, g: 0, b: 0, a: 0} + key5: {r: 0, g: 0, b: 0, a: 0} + key6: {r: 0, g: 0, b: 0, a: 0} + key7: {r: 0, g: 0, b: 0, a: 0} + ctime0: 0 + ctime1: 65535 + ctime2: 0 + ctime3: 0 + ctime4: 0 + ctime5: 0 + ctime6: 0 + ctime7: 0 + atime0: 0 + atime1: 65535 + atime2: 0 + atime3: 0 + atime4: 0 + atime5: 0 + atime6: 0 + atime7: 0 + m_Mode: 0 + m_NumColorKeys: 2 + m_NumAlphaKeys: 2 + range: {x: 0, y: 1} + CollisionModule: + enabled: 0 + serializedVersion: 3 + type: 0 + collisionMode: 0 + colliderForce: 0 + multiplyColliderForceByParticleSize: 0 + multiplyColliderForceByParticleSpeed: 0 + multiplyColliderForceByCollisionAngle: 1 + plane0: {fileID: 0} + plane1: {fileID: 0} + plane2: {fileID: 0} + plane3: {fileID: 0} + plane4: {fileID: 0} + plane5: {fileID: 0} + m_Dampen: + serializedVersion: 2 + minMaxState: 0 + scalar: 0 + minScalar: 0 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + m_Bounce: + serializedVersion: 2 + minMaxState: 0 + scalar: 1 + minScalar: 1 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + m_EnergyLossOnCollision: + serializedVersion: 2 + minMaxState: 0 + scalar: 0 + minScalar: 0 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minKillSpeed: 0 + maxKillSpeed: 10000 + radiusScale: 1 + collidesWith: + serializedVersion: 2 + m_Bits: 4294967295 + maxCollisionShapes: 256 + quality: 0 + voxelSize: 0.5 + collisionMessages: 0 + collidesWithDynamic: 1 + interiorCollisions: 0 + TriggerModule: + enabled: 0 + collisionShape0: {fileID: 0} + collisionShape1: {fileID: 0} + collisionShape2: {fileID: 0} + collisionShape3: {fileID: 0} + collisionShape4: {fileID: 0} + collisionShape5: {fileID: 0} + inside: 1 + outside: 0 + enter: 0 + exit: 0 + radiusScale: 1 + SubModule: + serializedVersion: 2 + enabled: 0 + subEmitters: + - serializedVersion: 2 + emitter: {fileID: 0} + type: 0 + properties: 0 + emitProbability: 1 + LightsModule: + enabled: 0 + ratio: 0 + light: {fileID: 0} + randomDistribution: 1 + color: 1 + range: 1 + intensity: 1 + rangeCurve: + serializedVersion: 2 + minMaxState: 0 + scalar: 1 + minScalar: 1 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + intensityCurve: + serializedVersion: 2 + minMaxState: 0 + scalar: 1 + minScalar: 1 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + maxLights: 20 + TrailModule: + enabled: 0 + mode: 0 + ratio: 1 + lifetime: + serializedVersion: 2 + minMaxState: 0 + scalar: 1 + minScalar: 1 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minVertexDistance: 0.2 + textureMode: 0 + ribbonCount: 1 + shadowBias: 0.5 + worldSpace: 0 + dieWithParticles: 1 + sizeAffectsWidth: 1 + sizeAffectsLifetime: 0 + inheritParticleColor: 1 + generateLightingData: 0 + splitSubEmitterRibbons: 0 + attachRibbonsToTransform: 0 + colorOverLifetime: + serializedVersion: 2 + minMaxState: 0 + minColor: {r: 1, g: 1, b: 1, a: 1} + maxColor: {r: 1, g: 1, b: 1, a: 1} + maxGradient: + serializedVersion: 2 + key0: {r: 1, g: 1, b: 1, a: 1} + key1: {r: 1, g: 1, b: 1, a: 1} + key2: {r: 0, g: 0, b: 0, a: 0} + key3: {r: 0, g: 0, b: 0, a: 0} + key4: {r: 0, g: 0, b: 0, a: 0} + key5: {r: 0, g: 0, b: 0, a: 0} + key6: {r: 0, g: 0, b: 0, a: 0} + key7: {r: 0, g: 0, b: 0, a: 0} + ctime0: 0 + ctime1: 65535 + ctime2: 0 + ctime3: 0 + ctime4: 0 + ctime5: 0 + ctime6: 0 + ctime7: 0 + atime0: 0 + atime1: 65535 + atime2: 0 + atime3: 0 + atime4: 0 + atime5: 0 + atime6: 0 + atime7: 0 + m_Mode: 0 + m_NumColorKeys: 2 + m_NumAlphaKeys: 2 + minGradient: + serializedVersion: 2 + key0: {r: 1, g: 1, b: 1, a: 1} + key1: {r: 1, g: 1, b: 1, a: 1} + key2: {r: 0, g: 0, b: 0, a: 0} + key3: {r: 0, g: 0, b: 0, a: 0} + key4: {r: 0, g: 0, b: 0, a: 0} + key5: {r: 0, g: 0, b: 0, a: 0} + key6: {r: 0, g: 0, b: 0, a: 0} + key7: {r: 0, g: 0, b: 0, a: 0} + ctime0: 0 + ctime1: 65535 + ctime2: 0 + ctime3: 0 + ctime4: 0 + ctime5: 0 + ctime6: 0 + ctime7: 0 + atime0: 0 + atime1: 65535 + atime2: 0 + atime3: 0 + atime4: 0 + atime5: 0 + atime6: 0 + atime7: 0 + m_Mode: 0 + m_NumColorKeys: 2 + m_NumAlphaKeys: 2 + widthOverTrail: + serializedVersion: 2 + minMaxState: 0 + scalar: 1 + minScalar: 1 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + colorOverTrail: + serializedVersion: 2 + minMaxState: 0 + minColor: {r: 1, g: 1, b: 1, a: 1} + maxColor: {r: 1, g: 1, b: 1, a: 1} + maxGradient: + serializedVersion: 2 + key0: {r: 1, g: 1, b: 1, a: 1} + key1: {r: 1, g: 1, b: 1, a: 1} + key2: {r: 0, g: 0, b: 0, a: 0} + key3: {r: 0, g: 0, b: 0, a: 0} + key4: {r: 0, g: 0, b: 0, a: 0} + key5: {r: 0, g: 0, b: 0, a: 0} + key6: {r: 0, g: 0, b: 0, a: 0} + key7: {r: 0, g: 0, b: 0, a: 0} + ctime0: 0 + ctime1: 65535 + ctime2: 0 + ctime3: 0 + ctime4: 0 + ctime5: 0 + ctime6: 0 + ctime7: 0 + atime0: 0 + atime1: 65535 + atime2: 0 + atime3: 0 + atime4: 0 + atime5: 0 + atime6: 0 + atime7: 0 + m_Mode: 0 + m_NumColorKeys: 2 + m_NumAlphaKeys: 2 + minGradient: + serializedVersion: 2 + key0: {r: 1, g: 1, b: 1, a: 1} + key1: {r: 1, g: 1, b: 1, a: 1} + key2: {r: 0, g: 0, b: 0, a: 0} + key3: {r: 0, g: 0, b: 0, a: 0} + key4: {r: 0, g: 0, b: 0, a: 0} + key5: {r: 0, g: 0, b: 0, a: 0} + key6: {r: 0, g: 0, b: 0, a: 0} + key7: {r: 0, g: 0, b: 0, a: 0} + ctime0: 0 + ctime1: 65535 + ctime2: 0 + ctime3: 0 + ctime4: 0 + ctime5: 0 + ctime6: 0 + ctime7: 0 + atime0: 0 + atime1: 65535 + atime2: 0 + atime3: 0 + atime4: 0 + atime5: 0 + atime6: 0 + atime7: 0 + m_Mode: 0 + m_NumColorKeys: 2 + m_NumAlphaKeys: 2 + CustomDataModule: + enabled: 0 + mode0: 0 + vectorComponentCount0: 4 + color0: + serializedVersion: 2 + minMaxState: 0 + minColor: {r: 1, g: 1, b: 1, a: 1} + maxColor: {r: 1, g: 1, b: 1, a: 1} + maxGradient: + serializedVersion: 2 + key0: {r: 1, g: 1, b: 1, a: 1} + key1: {r: 1, g: 1, b: 1, a: 1} + key2: {r: 0, g: 0, b: 0, a: 0} + key3: {r: 0, g: 0, b: 0, a: 0} + key4: {r: 0, g: 0, b: 0, a: 0} + key5: {r: 0, g: 0, b: 0, a: 0} + key6: {r: 0, g: 0, b: 0, a: 0} + key7: {r: 0, g: 0, b: 0, a: 0} + ctime0: 0 + ctime1: 65535 + ctime2: 0 + ctime3: 0 + ctime4: 0 + ctime5: 0 + ctime6: 0 + ctime7: 0 + atime0: 0 + atime1: 65535 + atime2: 0 + atime3: 0 + atime4: 0 + atime5: 0 + atime6: 0 + atime7: 0 + m_Mode: 0 + m_NumColorKeys: 2 + m_NumAlphaKeys: 2 + minGradient: + serializedVersion: 2 + key0: {r: 1, g: 1, b: 1, a: 1} + key1: {r: 1, g: 1, b: 1, a: 1} + key2: {r: 0, g: 0, b: 0, a: 0} + key3: {r: 0, g: 0, b: 0, a: 0} + key4: {r: 0, g: 0, b: 0, a: 0} + key5: {r: 0, g: 0, b: 0, a: 0} + key6: {r: 0, g: 0, b: 0, a: 0} + key7: {r: 0, g: 0, b: 0, a: 0} + ctime0: 0 + ctime1: 65535 + ctime2: 0 + ctime3: 0 + ctime4: 0 + ctime5: 0 + ctime6: 0 + ctime7: 0 + atime0: 0 + atime1: 65535 + atime2: 0 + atime3: 0 + atime4: 0 + atime5: 0 + atime6: 0 + atime7: 0 + m_Mode: 0 + m_NumColorKeys: 2 + m_NumAlphaKeys: 2 + colorLabel0: Color + vector0_0: + serializedVersion: 2 + minMaxState: 0 + scalar: 0 + minScalar: 0 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + vectorLabel0_0: X + vector0_1: + serializedVersion: 2 + minMaxState: 0 + scalar: 0 + minScalar: 0 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + vectorLabel0_1: Y + vector0_2: + serializedVersion: 2 + minMaxState: 0 + scalar: 0 + minScalar: 0 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + vectorLabel0_2: Z + vector0_3: + serializedVersion: 2 + minMaxState: 0 + scalar: 0 + minScalar: 0 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + vectorLabel0_3: W + mode1: 0 + vectorComponentCount1: 4 + color1: + serializedVersion: 2 + minMaxState: 0 + minColor: {r: 1, g: 1, b: 1, a: 1} + maxColor: {r: 1, g: 1, b: 1, a: 1} + maxGradient: + serializedVersion: 2 + key0: {r: 1, g: 1, b: 1, a: 1} + key1: {r: 1, g: 1, b: 1, a: 1} + key2: {r: 0, g: 0, b: 0, a: 0} + key3: {r: 0, g: 0, b: 0, a: 0} + key4: {r: 0, g: 0, b: 0, a: 0} + key5: {r: 0, g: 0, b: 0, a: 0} + key6: {r: 0, g: 0, b: 0, a: 0} + key7: {r: 0, g: 0, b: 0, a: 0} + ctime0: 0 + ctime1: 65535 + ctime2: 0 + ctime3: 0 + ctime4: 0 + ctime5: 0 + ctime6: 0 + ctime7: 0 + atime0: 0 + atime1: 65535 + atime2: 0 + atime3: 0 + atime4: 0 + atime5: 0 + atime6: 0 + atime7: 0 + m_Mode: 0 + m_NumColorKeys: 2 + m_NumAlphaKeys: 2 + minGradient: + serializedVersion: 2 + key0: {r: 1, g: 1, b: 1, a: 1} + key1: {r: 1, g: 1, b: 1, a: 1} + key2: {r: 0, g: 0, b: 0, a: 0} + key3: {r: 0, g: 0, b: 0, a: 0} + key4: {r: 0, g: 0, b: 0, a: 0} + key5: {r: 0, g: 0, b: 0, a: 0} + key6: {r: 0, g: 0, b: 0, a: 0} + key7: {r: 0, g: 0, b: 0, a: 0} + ctime0: 0 + ctime1: 65535 + ctime2: 0 + ctime3: 0 + ctime4: 0 + ctime5: 0 + ctime6: 0 + ctime7: 0 + atime0: 0 + atime1: 65535 + atime2: 0 + atime3: 0 + atime4: 0 + atime5: 0 + atime6: 0 + atime7: 0 + m_Mode: 0 + m_NumColorKeys: 2 + m_NumAlphaKeys: 2 + colorLabel1: Color + vector1_0: + serializedVersion: 2 + minMaxState: 0 + scalar: 0 + minScalar: 0 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + vectorLabel1_0: X + vector1_1: + serializedVersion: 2 + minMaxState: 0 + scalar: 0 + minScalar: 0 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + vectorLabel1_1: Y + vector1_2: + serializedVersion: 2 + minMaxState: 0 + scalar: 0 + minScalar: 0 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + vectorLabel1_2: Z + vector1_3: + serializedVersion: 2 + minMaxState: 0 + scalar: 0 + minScalar: 0 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + vectorLabel1_3: W +--- !u!199 &19956934 +ParticleSystemRenderer: + serializedVersion: 6 + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 148586} + m_Enabled: 1 + m_CastShadows: 1 + m_ReceiveShadows: 1 + m_DynamicOccludee: 1 + m_MotionVectors: 2 + m_LightProbeUsage: 1 + m_ReflectionProbeUsage: 0 + m_RenderingLayerMask: 1 + m_RendererPriority: 0 + m_Materials: + - {fileID: 2100000, guid: e756cc37aa5d800448f1698da8380f0b, type: 2} + - {fileID: 0} + m_StaticBatchInfo: + firstSubMesh: 0 + subMeshCount: 0 + m_StaticBatchRoot: {fileID: 0} + m_ProbeAnchor: {fileID: 0} + m_LightProbeVolumeOverride: {fileID: 0} + m_ScaleInLightmap: 1 + m_PreserveUVs: 0 + m_IgnoreNormalsForChartDetection: 0 + m_ImportantGI: 0 + m_StitchLightmapSeams: 0 + m_SelectedEditorRenderState: 3 + m_MinimumChartSize: 4 + m_AutoUVMaxDistance: 0.5 + m_AutoUVMaxAngle: 89 + m_LightmapParameters: {fileID: 0} + m_SortingLayerID: 0 + m_SortingLayer: 0 + m_SortingOrder: 0 + m_RenderMode: 0 + m_SortMode: 2 + m_MinParticleSize: 0 + m_MaxParticleSize: 0.5 + m_CameraVelocityScale: 0 + m_VelocityScale: 0 + m_LengthScale: 2 + m_SortingFudge: 0 + m_NormalDirection: 0 + m_ShadowBias: 0 + m_RenderAlignment: 0 + m_Pivot: {x: 0, y: 0, z: 0} + m_Flip: {x: 0, y: 0, z: 0} + m_UseCustomVertexStreams: 1 + m_EnableGPUInstancing: 0 + m_ApplyActiveColorSpace: 0 + m_AllowRoll: 1 + m_VertexStreams: 00010304 + m_Mesh: {fileID: 10207, guid: 0000000000000000e000000000000000, type: 0} + m_Mesh1: {fileID: 0} + m_Mesh2: {fileID: 0} + m_Mesh3: {fileID: 0} + m_MaskInteraction: 0 diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Prefabs/DriftTrail.prefab.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Prefabs/DriftTrail.prefab.meta" new file mode 100644 index 00000000..13332baa --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Prefabs/DriftTrail.prefab.meta" @@ -0,0 +1,7 @@ +fileFormatVersion: 2 +guid: ad6a782a2105fb645824d5726daac042 +PrefabImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Prefabs/EngineAudio.prefab" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Prefabs/EngineAudio.prefab" new file mode 100644 index 00000000..60ded98a --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Prefabs/EngineAudio.prefab" @@ -0,0 +1,163 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!1 &5690860426676778416 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 5690860426676778422} + - component: {fileID: 5690860426676778423} + - component: {fileID: 5690860426676778417} + m_Layer: 0 + m_Name: EngineAudio + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &5690860426676778422 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 5690860426676778416} + m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} + m_LocalPosition: {x: -79.4, y: 3.5, z: -7.4424477} + m_LocalScale: {x: 1, y: 1, z: 1} + m_Children: [] + m_Father: {fileID: 0} + m_RootOrder: 0 + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!82 &5690860426676778423 +AudioSource: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 5690860426676778416} + m_Enabled: 1 + serializedVersion: 4 + OutputAudioMixerGroup: {fileID: 0} + m_audioClip: {fileID: 0} + m_PlayOnAwake: 1 + m_Volume: 1 + m_Pitch: 1 + Loop: 0 + Mute: 0 + Spatialize: 0 + SpatializePostEffects: 0 + Priority: 128 + DopplerLevel: 1 + MinDistance: 1 + MaxDistance: 500 + Pan2D: 0 + rolloffMode: 0 + BypassEffects: 0 + BypassListenerEffects: 0 + BypassReverbZones: 0 + rolloffCustomCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + panLevelCustomCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + spreadCustomCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + reverbZoneMixCustomCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 +--- !u!114 &5690860426676778417 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 5690860426676778416} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 5a8d3b9b9ede9455fb5b3aa0b44ed515, type: 3} + m_Name: + m_EditorClassIdentifier: + kartInfo: {fileID: 0} + RPM: 0.372 + minRPM: 500 + maxRPM: 9000 + lumpyCamFactor: 0.19 + minVolume: 0.2 + maxVolume: 1 + strokeDamping: 0.01 + intake: + clip: {fileID: 8300000, guid: dd46253c3a6b6439bbceb25ba2d5665e, type: 3} + gain: 0.601 + compression: + clip: {fileID: 8300000, guid: dd46253c3a6b6439bbceb25ba2d5665e, type: 3} + gain: 0.678 + combustion: + clip: {fileID: 8300000, guid: c3af91df4ca764fd9b9f2e778e7e555a, type: 3} + gain: 0.678 + exhaust: + clip: {fileID: 8300000, guid: 2ad022136d1b64c57910b8dcd17576ef, type: 3} + gain: 0.745 + usePow: 0 diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Prefabs/EngineAudio.prefab.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Prefabs/EngineAudio.prefab.meta" new file mode 100644 index 00000000..50a824ff --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Prefabs/EngineAudio.prefab.meta" @@ -0,0 +1,7 @@ +fileFormatVersion: 2 +guid: ec5cb92a3a3d940e48635d86be0448cc +PrefabImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Prefabs/Environment.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Prefabs/Environment.meta" new file mode 100644 index 00000000..64ab3705 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Prefabs/Environment.meta" @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 6bb15a97d07f57b4e8460f4594b87f81 +folderAsset: yes +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Prefabs/Environment/Building01CornerPlain.prefab" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Prefabs/Environment/Building01CornerPlain.prefab" new file mode 100644 index 00000000..a5649cae --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Prefabs/Environment/Building01CornerPlain.prefab" @@ -0,0 +1,79 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!1 &5618077994305052443 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 5618077994304815931} + - component: {fileID: 5618077994301915931} + - component: {fileID: 5618077994303046107} + m_Layer: 0 + m_Name: Building01_Corner_Plain + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &5618077994304815931 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 5618077994305052443} + m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} + m_LocalPosition: {x: -0, y: 0, z: 0} + m_LocalScale: {x: 1, y: 1, z: 1} + m_Children: [] + m_Father: {fileID: 0} + m_RootOrder: 0 + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!33 &5618077994301915931 +MeshFilter: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 5618077994305052443} + m_Mesh: {fileID: 4300000, guid: ee73619a09d1dc54ca72cdbc2a1d3c58, type: 3} +--- !u!23 &5618077994303046107 +MeshRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 5618077994305052443} + m_Enabled: 1 + m_CastShadows: 2 + m_ReceiveShadows: 1 + m_DynamicOccludee: 1 + m_MotionVectors: 1 + m_LightProbeUsage: 1 + m_ReflectionProbeUsage: 1 + m_RenderingLayerMask: 1 + m_RendererPriority: 0 + m_Materials: + - {fileID: 2100000, guid: d11179e416c9b394c8176d36a0dcae52, type: 2} + m_StaticBatchInfo: + firstSubMesh: 0 + subMeshCount: 0 + m_StaticBatchRoot: {fileID: 0} + m_ProbeAnchor: {fileID: 0} + m_LightProbeVolumeOverride: {fileID: 0} + m_ScaleInLightmap: 1 + m_PreserveUVs: 0 + m_IgnoreNormalsForChartDetection: 0 + m_ImportantGI: 0 + m_StitchLightmapSeams: 0 + m_SelectedEditorRenderState: 3 + m_MinimumChartSize: 4 + m_AutoUVMaxDistance: 0.5 + m_AutoUVMaxAngle: 89 + m_LightmapParameters: {fileID: 0} + m_SortingLayerID: 0 + m_SortingLayer: 0 + m_SortingOrder: 0 diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Prefabs/Environment/Building01CornerPlain.prefab.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Prefabs/Environment/Building01CornerPlain.prefab.meta" new file mode 100644 index 00000000..13d3dd11 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Prefabs/Environment/Building01CornerPlain.prefab.meta" @@ -0,0 +1,7 @@ +fileFormatVersion: 2 +guid: 923761a646988454ba4628782e4e8ccf +PrefabImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Prefabs/Environment/Building01WallDoor.prefab" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Prefabs/Environment/Building01WallDoor.prefab" new file mode 100644 index 00000000..9b4b096b --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Prefabs/Environment/Building01WallDoor.prefab" @@ -0,0 +1,79 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!1 &2985832321463599805 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 2985832321463115421} + - component: {fileID: 2985832321460215485} + - component: {fileID: 2985832321461345405} + m_Layer: 0 + m_Name: Building01_Wall_Door + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &2985832321463115421 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 2985832321463599805} + m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} + m_LocalPosition: {x: -0, y: 0, z: 0} + m_LocalScale: {x: 1, y: 1, z: 1} + m_Children: [] + m_Father: {fileID: 0} + m_RootOrder: 0 + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!33 &2985832321460215485 +MeshFilter: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 2985832321463599805} + m_Mesh: {fileID: 4300000, guid: 8d4337d55efa65a4d8107eead99ff7b7, type: 3} +--- !u!23 &2985832321461345405 +MeshRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 2985832321463599805} + m_Enabled: 1 + m_CastShadows: 2 + m_ReceiveShadows: 1 + m_DynamicOccludee: 1 + m_MotionVectors: 1 + m_LightProbeUsage: 1 + m_ReflectionProbeUsage: 1 + m_RenderingLayerMask: 1 + m_RendererPriority: 0 + m_Materials: + - {fileID: 2100000, guid: d11179e416c9b394c8176d36a0dcae52, type: 2} + m_StaticBatchInfo: + firstSubMesh: 0 + subMeshCount: 0 + m_StaticBatchRoot: {fileID: 0} + m_ProbeAnchor: {fileID: 0} + m_LightProbeVolumeOverride: {fileID: 0} + m_ScaleInLightmap: 1 + m_PreserveUVs: 0 + m_IgnoreNormalsForChartDetection: 0 + m_ImportantGI: 0 + m_StitchLightmapSeams: 0 + m_SelectedEditorRenderState: 3 + m_MinimumChartSize: 4 + m_AutoUVMaxDistance: 0.5 + m_AutoUVMaxAngle: 89 + m_LightmapParameters: {fileID: 0} + m_SortingLayerID: 0 + m_SortingLayer: 0 + m_SortingOrder: 0 diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Prefabs/Environment/Building01WallDoor.prefab.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Prefabs/Environment/Building01WallDoor.prefab.meta" new file mode 100644 index 00000000..1469dade --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Prefabs/Environment/Building01WallDoor.prefab.meta" @@ -0,0 +1,7 @@ +fileFormatVersion: 2 +guid: 5253c1ae2034fdd41aba64cc0e4e9ee8 +PrefabImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Prefabs/Environment/Building01WallPlain.prefab" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Prefabs/Environment/Building01WallPlain.prefab" new file mode 100644 index 00000000..148a789b --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Prefabs/Environment/Building01WallPlain.prefab" @@ -0,0 +1,79 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!1 &325058874665543835 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 325058874665120955} + - component: {fileID: 325058874668545179} + - component: {fileID: 325058874667546203} + m_Layer: 0 + m_Name: Building01_Wall_Plain + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &325058874665120955 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 325058874665543835} + m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} + m_LocalPosition: {x: -0, y: 0, z: 0} + m_LocalScale: {x: 1, y: 1, z: 1} + m_Children: [] + m_Father: {fileID: 0} + m_RootOrder: 0 + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!33 &325058874668545179 +MeshFilter: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 325058874665543835} + m_Mesh: {fileID: 4300000, guid: ca9914f098c088e4a879c7fd31109c95, type: 3} +--- !u!23 &325058874667546203 +MeshRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 325058874665543835} + m_Enabled: 1 + m_CastShadows: 2 + m_ReceiveShadows: 1 + m_DynamicOccludee: 1 + m_MotionVectors: 1 + m_LightProbeUsage: 1 + m_ReflectionProbeUsage: 1 + m_RenderingLayerMask: 1 + m_RendererPriority: 0 + m_Materials: + - {fileID: 2100000, guid: d11179e416c9b394c8176d36a0dcae52, type: 2} + m_StaticBatchInfo: + firstSubMesh: 0 + subMeshCount: 0 + m_StaticBatchRoot: {fileID: 0} + m_ProbeAnchor: {fileID: 0} + m_LightProbeVolumeOverride: {fileID: 0} + m_ScaleInLightmap: 1 + m_PreserveUVs: 0 + m_IgnoreNormalsForChartDetection: 0 + m_ImportantGI: 0 + m_StitchLightmapSeams: 0 + m_SelectedEditorRenderState: 3 + m_MinimumChartSize: 4 + m_AutoUVMaxDistance: 0.5 + m_AutoUVMaxAngle: 89 + m_LightmapParameters: {fileID: 0} + m_SortingLayerID: 0 + m_SortingLayer: 0 + m_SortingOrder: 0 diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Prefabs/Environment/Building01WallPlain.prefab.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Prefabs/Environment/Building01WallPlain.prefab.meta" new file mode 100644 index 00000000..2630324d --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Prefabs/Environment/Building01WallPlain.prefab.meta" @@ -0,0 +1,7 @@ +fileFormatVersion: 2 +guid: f07bce605608dc6459230649729bfc26 +PrefabImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Prefabs/Environment/Building02CornerBricks.prefab" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Prefabs/Environment/Building02CornerBricks.prefab" new file mode 100644 index 00000000..3cc222c2 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Prefabs/Environment/Building02CornerBricks.prefab" @@ -0,0 +1,79 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!1 &7382834570381791660 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 7382834570381692300} + - component: {fileID: 7382834570383019436} + - component: {fileID: 7382834570383986540} + m_Layer: 0 + m_Name: Building02_Corner_Bricks + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &7382834570381692300 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 7382834570381791660} + m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} + m_LocalPosition: {x: -0, y: 0, z: 0} + m_LocalScale: {x: 1, y: 1, z: 1} + m_Children: [] + m_Father: {fileID: 0} + m_RootOrder: 0 + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!33 &7382834570383019436 +MeshFilter: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 7382834570381791660} + m_Mesh: {fileID: 4300000, guid: 91cfa91e879ed5e42ac5a4f865fc05d7, type: 3} +--- !u!23 &7382834570383986540 +MeshRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 7382834570381791660} + m_Enabled: 1 + m_CastShadows: 2 + m_ReceiveShadows: 1 + m_DynamicOccludee: 1 + m_MotionVectors: 1 + m_LightProbeUsage: 1 + m_ReflectionProbeUsage: 1 + m_RenderingLayerMask: 1 + m_RendererPriority: 0 + m_Materials: + - {fileID: 2100000, guid: d11179e416c9b394c8176d36a0dcae52, type: 2} + m_StaticBatchInfo: + firstSubMesh: 0 + subMeshCount: 0 + m_StaticBatchRoot: {fileID: 0} + m_ProbeAnchor: {fileID: 0} + m_LightProbeVolumeOverride: {fileID: 0} + m_ScaleInLightmap: 1 + m_PreserveUVs: 0 + m_IgnoreNormalsForChartDetection: 0 + m_ImportantGI: 0 + m_StitchLightmapSeams: 0 + m_SelectedEditorRenderState: 3 + m_MinimumChartSize: 4 + m_AutoUVMaxDistance: 0.5 + m_AutoUVMaxAngle: 89 + m_LightmapParameters: {fileID: 0} + m_SortingLayerID: 0 + m_SortingLayer: 0 + m_SortingOrder: 0 diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Prefabs/Environment/Building02CornerBricks.prefab.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Prefabs/Environment/Building02CornerBricks.prefab.meta" new file mode 100644 index 00000000..370659bf --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Prefabs/Environment/Building02CornerBricks.prefab.meta" @@ -0,0 +1,7 @@ +fileFormatVersion: 2 +guid: bd77db49972d95a4e9b24a8a7ed148f8 +PrefabImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Prefabs/Environment/Building02WallBricks.prefab" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Prefabs/Environment/Building02WallBricks.prefab" new file mode 100644 index 00000000..ba7d2c73 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Prefabs/Environment/Building02WallBricks.prefab" @@ -0,0 +1,79 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!1 &5524184978057180082 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 5524184978056949650} + - component: {fileID: 5524184978056179634} + - component: {fileID: 5524184978055179634} + m_Layer: 0 + m_Name: Building02_Wall_Bricks + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &5524184978056949650 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 5524184978057180082} + m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} + m_LocalPosition: {x: -0, y: 0, z: 0} + m_LocalScale: {x: 1, y: 1, z: 1} + m_Children: [] + m_Father: {fileID: 0} + m_RootOrder: 0 + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!33 &5524184978056179634 +MeshFilter: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 5524184978057180082} + m_Mesh: {fileID: 4300000, guid: b12206d774dc7c94881f7f13f3dc81e2, type: 3} +--- !u!23 &5524184978055179634 +MeshRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 5524184978057180082} + m_Enabled: 1 + m_CastShadows: 2 + m_ReceiveShadows: 1 + m_DynamicOccludee: 1 + m_MotionVectors: 1 + m_LightProbeUsage: 1 + m_ReflectionProbeUsage: 1 + m_RenderingLayerMask: 1 + m_RendererPriority: 0 + m_Materials: + - {fileID: 2100000, guid: d11179e416c9b394c8176d36a0dcae52, type: 2} + m_StaticBatchInfo: + firstSubMesh: 0 + subMeshCount: 0 + m_StaticBatchRoot: {fileID: 0} + m_ProbeAnchor: {fileID: 0} + m_LightProbeVolumeOverride: {fileID: 0} + m_ScaleInLightmap: 1 + m_PreserveUVs: 0 + m_IgnoreNormalsForChartDetection: 0 + m_ImportantGI: 0 + m_StitchLightmapSeams: 0 + m_SelectedEditorRenderState: 3 + m_MinimumChartSize: 4 + m_AutoUVMaxDistance: 0.5 + m_AutoUVMaxAngle: 89 + m_LightmapParameters: {fileID: 0} + m_SortingLayerID: 0 + m_SortingLayer: 0 + m_SortingOrder: 0 diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Prefabs/Environment/Building02WallBricks.prefab.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Prefabs/Environment/Building02WallBricks.prefab.meta" new file mode 100644 index 00000000..5db04825 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Prefabs/Environment/Building02WallBricks.prefab.meta" @@ -0,0 +1,7 @@ +fileFormatVersion: 2 +guid: 3beaf9cd12e8c0a4d921aa0bb65380c5 +PrefabImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Prefabs/Environment/Building03CornerWideWindow.prefab" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Prefabs/Environment/Building03CornerWideWindow.prefab" new file mode 100644 index 00000000..203a2e44 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Prefabs/Environment/Building03CornerWideWindow.prefab" @@ -0,0 +1,79 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!1 &2575245731998584225 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 2575245731998355841} + - component: {fileID: 2575245731999650209} + - component: {fileID: 2575245732000781153} + m_Layer: 0 + m_Name: Building03_Corner_WideWindow + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &2575245731998355841 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 2575245731998584225} + m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} + m_LocalPosition: {x: -0, y: 0, z: 0} + m_LocalScale: {x: 1, y: 1, z: 1} + m_Children: [] + m_Father: {fileID: 0} + m_RootOrder: 0 + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!33 &2575245731999650209 +MeshFilter: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 2575245731998584225} + m_Mesh: {fileID: 4300002, guid: 2dc0b90df1333dc469eeb6cff505ccb5, type: 3} +--- !u!23 &2575245732000781153 +MeshRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 2575245731998584225} + m_Enabled: 1 + m_CastShadows: 1 + m_ReceiveShadows: 1 + m_DynamicOccludee: 1 + m_MotionVectors: 1 + m_LightProbeUsage: 1 + m_ReflectionProbeUsage: 1 + m_RenderingLayerMask: 1 + m_RendererPriority: 0 + m_Materials: + - {fileID: 2100000, guid: d11179e416c9b394c8176d36a0dcae52, type: 2} + m_StaticBatchInfo: + firstSubMesh: 0 + subMeshCount: 0 + m_StaticBatchRoot: {fileID: 0} + m_ProbeAnchor: {fileID: 0} + m_LightProbeVolumeOverride: {fileID: 0} + m_ScaleInLightmap: 1 + m_PreserveUVs: 0 + m_IgnoreNormalsForChartDetection: 0 + m_ImportantGI: 0 + m_StitchLightmapSeams: 0 + m_SelectedEditorRenderState: 3 + m_MinimumChartSize: 4 + m_AutoUVMaxDistance: 0.5 + m_AutoUVMaxAngle: 89 + m_LightmapParameters: {fileID: 0} + m_SortingLayerID: 0 + m_SortingLayer: 0 + m_SortingOrder: 0 diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Prefabs/Environment/Building03CornerWideWindow.prefab.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Prefabs/Environment/Building03CornerWideWindow.prefab.meta" new file mode 100644 index 00000000..96a2c6a9 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Prefabs/Environment/Building03CornerWideWindow.prefab.meta" @@ -0,0 +1,7 @@ +fileFormatVersion: 2 +guid: cf5ab07c03b83524e836d5c8b148ff85 +PrefabImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Prefabs/Environment/Building03WallWideWindow.prefab" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Prefabs/Environment/Building03WallWideWindow.prefab" new file mode 100644 index 00000000..3f32ebf5 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Prefabs/Environment/Building03WallWideWindow.prefab" @@ -0,0 +1,79 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!1 &4757819484087661192 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 4757819484087889576} + - component: {fileID: 4757819484084498056} + - component: {fileID: 4757819484085464136} + m_Layer: 0 + m_Name: Building03_Wall_WideWindow + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &4757819484087889576 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 4757819484087661192} + m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} + m_LocalPosition: {x: -0, y: 0, z: 0} + m_LocalScale: {x: 1, y: 1, z: 1} + m_Children: [] + m_Father: {fileID: 0} + m_RootOrder: 0 + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!33 &4757819484084498056 +MeshFilter: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 4757819484087661192} + m_Mesh: {fileID: 4300000, guid: 8021d7313a3bc1240bb3e96d591721bf, type: 3} +--- !u!23 &4757819484085464136 +MeshRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 4757819484087661192} + m_Enabled: 1 + m_CastShadows: 2 + m_ReceiveShadows: 1 + m_DynamicOccludee: 1 + m_MotionVectors: 1 + m_LightProbeUsage: 1 + m_ReflectionProbeUsage: 1 + m_RenderingLayerMask: 1 + m_RendererPriority: 0 + m_Materials: + - {fileID: 2100000, guid: d11179e416c9b394c8176d36a0dcae52, type: 2} + m_StaticBatchInfo: + firstSubMesh: 0 + subMeshCount: 0 + m_StaticBatchRoot: {fileID: 0} + m_ProbeAnchor: {fileID: 0} + m_LightProbeVolumeOverride: {fileID: 0} + m_ScaleInLightmap: 1 + m_PreserveUVs: 0 + m_IgnoreNormalsForChartDetection: 0 + m_ImportantGI: 0 + m_StitchLightmapSeams: 0 + m_SelectedEditorRenderState: 3 + m_MinimumChartSize: 4 + m_AutoUVMaxDistance: 0.5 + m_AutoUVMaxAngle: 89 + m_LightmapParameters: {fileID: 0} + m_SortingLayerID: 0 + m_SortingLayer: 0 + m_SortingOrder: 0 diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Prefabs/Environment/Building03WallWideWindow.prefab.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Prefabs/Environment/Building03WallWideWindow.prefab.meta" new file mode 100644 index 00000000..2e99d5d1 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Prefabs/Environment/Building03WallWideWindow.prefab.meta" @@ -0,0 +1,7 @@ +fileFormatVersion: 2 +guid: b242def909bdd1f4d8b54505acb6c911 +PrefabImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Prefabs/Environment/Building04CornerBarWindow.prefab" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Prefabs/Environment/Building04CornerBarWindow.prefab" new file mode 100644 index 00000000..dd190a53 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Prefabs/Environment/Building04CornerBarWindow.prefab" @@ -0,0 +1,79 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!1 &1305138252250841567 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 1305138252250357247} + - component: {fileID: 1305138252249587167} + - component: {fileID: 1305138252248588063} + m_Layer: 0 + m_Name: Building04_Corner_BarWindow + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &1305138252250357247 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1305138252250841567} + m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} + m_LocalPosition: {x: 0, y: 0, z: 0} + m_LocalScale: {x: 1, y: 1, z: 1} + m_Children: [] + m_Father: {fileID: 0} + m_RootOrder: 0 + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!33 &1305138252249587167 +MeshFilter: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1305138252250841567} + m_Mesh: {fileID: 4300000, guid: 15e65acc49c1d194f9a661fcbd8f8edf, type: 3} +--- !u!23 &1305138252248588063 +MeshRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1305138252250841567} + m_Enabled: 1 + m_CastShadows: 2 + m_ReceiveShadows: 1 + m_DynamicOccludee: 1 + m_MotionVectors: 1 + m_LightProbeUsage: 1 + m_ReflectionProbeUsage: 1 + m_RenderingLayerMask: 1 + m_RendererPriority: 0 + m_Materials: + - {fileID: 2100000, guid: d11179e416c9b394c8176d36a0dcae52, type: 2} + m_StaticBatchInfo: + firstSubMesh: 0 + subMeshCount: 0 + m_StaticBatchRoot: {fileID: 0} + m_ProbeAnchor: {fileID: 0} + m_LightProbeVolumeOverride: {fileID: 0} + m_ScaleInLightmap: 1 + m_PreserveUVs: 0 + m_IgnoreNormalsForChartDetection: 0 + m_ImportantGI: 0 + m_StitchLightmapSeams: 0 + m_SelectedEditorRenderState: 3 + m_MinimumChartSize: 4 + m_AutoUVMaxDistance: 0.5 + m_AutoUVMaxAngle: 89 + m_LightmapParameters: {fileID: 0} + m_SortingLayerID: 0 + m_SortingLayer: 0 + m_SortingOrder: 0 diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Prefabs/Environment/Building04CornerBarWindow.prefab.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Prefabs/Environment/Building04CornerBarWindow.prefab.meta" new file mode 100644 index 00000000..b7c8f3fe --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Prefabs/Environment/Building04CornerBarWindow.prefab.meta" @@ -0,0 +1,7 @@ +fileFormatVersion: 2 +guid: 3f594d06d830e14489ebc7742a970154 +PrefabImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Prefabs/Environment/Building04WallBarWindow.prefab" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Prefabs/Environment/Building04WallBarWindow.prefab" new file mode 100644 index 00000000..2454f50c --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Prefabs/Environment/Building04WallBarWindow.prefab" @@ -0,0 +1,79 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!1 &5208615405666177643 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 5208615405666143819} + - component: {fileID: 5208615405667470955} + - component: {fileID: 5208615405668437163} + m_Layer: 0 + m_Name: Building04_Wall_BarWindow + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &5208615405666143819 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 5208615405666177643} + m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} + m_LocalPosition: {x: -0, y: 0, z: 0} + m_LocalScale: {x: 1, y: 1, z: 1} + m_Children: [] + m_Father: {fileID: 0} + m_RootOrder: 0 + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!33 &5208615405667470955 +MeshFilter: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 5208615405666177643} + m_Mesh: {fileID: 4300000, guid: ac00f20c6d5bd584e9999b1195b74bc4, type: 3} +--- !u!23 &5208615405668437163 +MeshRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 5208615405666177643} + m_Enabled: 1 + m_CastShadows: 2 + m_ReceiveShadows: 1 + m_DynamicOccludee: 1 + m_MotionVectors: 1 + m_LightProbeUsage: 1 + m_ReflectionProbeUsage: 1 + m_RenderingLayerMask: 1 + m_RendererPriority: 0 + m_Materials: + - {fileID: 2100000, guid: d11179e416c9b394c8176d36a0dcae52, type: 2} + m_StaticBatchInfo: + firstSubMesh: 0 + subMeshCount: 0 + m_StaticBatchRoot: {fileID: 0} + m_ProbeAnchor: {fileID: 0} + m_LightProbeVolumeOverride: {fileID: 0} + m_ScaleInLightmap: 1 + m_PreserveUVs: 0 + m_IgnoreNormalsForChartDetection: 0 + m_ImportantGI: 0 + m_StitchLightmapSeams: 0 + m_SelectedEditorRenderState: 3 + m_MinimumChartSize: 4 + m_AutoUVMaxDistance: 0.5 + m_AutoUVMaxAngle: 89 + m_LightmapParameters: {fileID: 0} + m_SortingLayerID: 0 + m_SortingLayer: 0 + m_SortingOrder: 0 diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Prefabs/Environment/Building04WallBarWindow.prefab.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Prefabs/Environment/Building04WallBarWindow.prefab.meta" new file mode 100644 index 00000000..4a519fe5 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Prefabs/Environment/Building04WallBarWindow.prefab.meta" @@ -0,0 +1,7 @@ +fileFormatVersion: 2 +guid: 794d7887e37d36c4d9b21be9f21c9738 +PrefabImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Prefabs/Environment/BuildingMedium.prefab" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Prefabs/Environment/BuildingMedium.prefab" new file mode 100644 index 00000000..798f573e --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Prefabs/Environment/BuildingMedium.prefab" @@ -0,0 +1,108 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!1 &8620048557865049399 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 2497398649778501837} + m_Layer: 0 + m_Name: BuildingMedium + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &2497398649778501837 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 8620048557865049399} + m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} + m_LocalPosition: {x: 0, y: 0, z: 0} + m_LocalScale: {x: 1, y: 1, z: 1} + m_Children: + - {fileID: 8132725113248417671} + m_Father: {fileID: 0} + m_RootOrder: 0 + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!1001 &8132725113248554247 +PrefabInstance: + m_ObjectHideFlags: 0 + serializedVersion: 2 + m_Modification: + m_TransformParent: {fileID: 2497398649778501837} + m_Modifications: + - target: {fileID: 400000, guid: ff205f5b9b7be4ff4b52365d65d4c8e3, type: 3} + propertyPath: m_LocalPosition.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: ff205f5b9b7be4ff4b52365d65d4c8e3, type: 3} + propertyPath: m_LocalPosition.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: ff205f5b9b7be4ff4b52365d65d4c8e3, type: 3} + propertyPath: m_LocalPosition.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: ff205f5b9b7be4ff4b52365d65d4c8e3, type: 3} + propertyPath: m_LocalRotation.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: ff205f5b9b7be4ff4b52365d65d4c8e3, type: 3} + propertyPath: m_LocalRotation.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: ff205f5b9b7be4ff4b52365d65d4c8e3, type: 3} + propertyPath: m_LocalRotation.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: ff205f5b9b7be4ff4b52365d65d4c8e3, type: 3} + propertyPath: m_LocalRotation.w + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: ff205f5b9b7be4ff4b52365d65d4c8e3, type: 3} + propertyPath: m_RootOrder + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: ff205f5b9b7be4ff4b52365d65d4c8e3, type: 3} + propertyPath: m_LocalEulerAnglesHint.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: ff205f5b9b7be4ff4b52365d65d4c8e3, type: 3} + propertyPath: m_LocalEulerAnglesHint.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: ff205f5b9b7be4ff4b52365d65d4c8e3, type: 3} + propertyPath: m_LocalEulerAnglesHint.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: ff205f5b9b7be4ff4b52365d65d4c8e3, type: 3} + propertyPath: m_LocalScale.x + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: ff205f5b9b7be4ff4b52365d65d4c8e3, type: 3} + propertyPath: m_LocalScale.z + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: ff205f5b9b7be4ff4b52365d65d4c8e3, type: 3} + propertyPath: m_LocalScale.y + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 100000, guid: ff205f5b9b7be4ff4b52365d65d4c8e3, type: 3} + propertyPath: m_Name + value: BuildingMediumModel + objectReference: {fileID: 0} + m_RemovedComponents: [] + m_SourcePrefab: {fileID: 100100000, guid: ff205f5b9b7be4ff4b52365d65d4c8e3, type: 3} +--- !u!4 &8132725113248417671 stripped +Transform: + m_CorrespondingSourceObject: {fileID: 400000, guid: ff205f5b9b7be4ff4b52365d65d4c8e3, + type: 3} + m_PrefabInstance: {fileID: 8132725113248554247} + m_PrefabAsset: {fileID: 0} diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Prefabs/Environment/BuildingMedium.prefab.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Prefabs/Environment/BuildingMedium.prefab.meta" new file mode 100644 index 00000000..3db1c859 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Prefabs/Environment/BuildingMedium.prefab.meta" @@ -0,0 +1,7 @@ +fileFormatVersion: 2 +guid: 88017844a1245554fb36a6790969f12e +PrefabImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Prefabs/Environment/BuildingShortVariant.prefab" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Prefabs/Environment/BuildingShortVariant.prefab" new file mode 100644 index 00000000..16030cae --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Prefabs/Environment/BuildingShortVariant.prefab" @@ -0,0 +1,96 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!1 &5168835238774391393 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 1347560259368462235} + m_Layer: 0 + m_Name: BuildingShortVariant + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &1347560259368462235 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 5168835238774391393} + m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} + m_LocalPosition: {x: -164.59, y: 2.12, z: 58.5} + m_LocalScale: {x: 1, y: 1, z: 1} + m_Children: + - {fileID: 8622610722260375806} + m_Father: {fileID: 0} + m_RootOrder: 0 + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!1001 &8622610722260238850 +PrefabInstance: + m_ObjectHideFlags: 0 + serializedVersion: 2 + m_Modification: + m_TransformParent: {fileID: 1347560259368462235} + m_Modifications: + - target: {fileID: 100124, guid: ea9b690577e1e4787b7a0ba1e8bde702, type: 3} + propertyPath: m_Name + value: BuildingShortVariantModel + objectReference: {fileID: 0} + - target: {fileID: 400124, guid: ea9b690577e1e4787b7a0ba1e8bde702, type: 3} + propertyPath: m_LocalPosition.x + value: 10.1 + objectReference: {fileID: 0} + - target: {fileID: 400124, guid: ea9b690577e1e4787b7a0ba1e8bde702, type: 3} + propertyPath: m_LocalPosition.y + value: -2.2 + objectReference: {fileID: 0} + - target: {fileID: 400124, guid: ea9b690577e1e4787b7a0ba1e8bde702, type: 3} + propertyPath: m_LocalPosition.z + value: -6 + objectReference: {fileID: 0} + - target: {fileID: 400124, guid: ea9b690577e1e4787b7a0ba1e8bde702, type: 3} + propertyPath: m_LocalRotation.x + value: 0.000000081460335 + objectReference: {fileID: 0} + - target: {fileID: 400124, guid: ea9b690577e1e4787b7a0ba1e8bde702, type: 3} + propertyPath: m_LocalRotation.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 400124, guid: ea9b690577e1e4787b7a0ba1e8bde702, type: 3} + propertyPath: m_LocalRotation.z + value: -0 + objectReference: {fileID: 0} + - target: {fileID: 400124, guid: ea9b690577e1e4787b7a0ba1e8bde702, type: 3} + propertyPath: m_LocalRotation.w + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 400124, guid: ea9b690577e1e4787b7a0ba1e8bde702, type: 3} + propertyPath: m_RootOrder + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 400124, guid: ea9b690577e1e4787b7a0ba1e8bde702, type: 3} + propertyPath: m_LocalEulerAnglesHint.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 400124, guid: ea9b690577e1e4787b7a0ba1e8bde702, type: 3} + propertyPath: m_LocalEulerAnglesHint.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 400124, guid: ea9b690577e1e4787b7a0ba1e8bde702, type: 3} + propertyPath: m_LocalEulerAnglesHint.z + value: 0 + objectReference: {fileID: 0} + m_RemovedComponents: [] + m_SourcePrefab: {fileID: 100100000, guid: ea9b690577e1e4787b7a0ba1e8bde702, type: 3} +--- !u!4 &8622610722260375806 stripped +Transform: + m_CorrespondingSourceObject: {fileID: 400124, guid: ea9b690577e1e4787b7a0ba1e8bde702, + type: 3} + m_PrefabInstance: {fileID: 8622610722260238850} + m_PrefabAsset: {fileID: 0} diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Prefabs/Environment/BuildingShortVariant.prefab.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Prefabs/Environment/BuildingShortVariant.prefab.meta" new file mode 100644 index 00000000..d9733695 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Prefabs/Environment/BuildingShortVariant.prefab.meta" @@ -0,0 +1,7 @@ +fileFormatVersion: 2 +guid: 5a26b42ae21484a788ef46734433befa +PrefabImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Prefabs/Environment/BuildingTall.prefab" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Prefabs/Environment/BuildingTall.prefab" new file mode 100644 index 00000000..79640cf4 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Prefabs/Environment/BuildingTall.prefab" @@ -0,0 +1,104 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!1 &1900073827432455217 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 5716881834153654731} + m_Layer: 0 + m_Name: BuildingTall + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &5716881834153654731 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1900073827432455217} + m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} + m_LocalPosition: {x: 0, y: 0, z: 0} + m_LocalScale: {x: 1, y: 1, z: 1} + m_Children: + - {fileID: 155743295429105879} + m_Father: {fileID: 0} + m_RootOrder: 0 + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!1001 &155743295429231589 +PrefabInstance: + m_ObjectHideFlags: 0 + serializedVersion: 2 + m_Modification: + m_TransformParent: {fileID: 5716881834153654731} + m_Modifications: + - target: {fileID: 400178, guid: adb35abc445884745af48dba2016ddea, type: 3} + propertyPath: m_LocalPosition.x + value: -4.1 + objectReference: {fileID: 0} + - target: {fileID: 400178, guid: adb35abc445884745af48dba2016ddea, type: 3} + propertyPath: m_LocalPosition.y + value: -0.2 + objectReference: {fileID: 0} + - target: {fileID: 400178, guid: adb35abc445884745af48dba2016ddea, type: 3} + propertyPath: m_LocalPosition.z + value: -6.4 + objectReference: {fileID: 0} + - target: {fileID: 400178, guid: adb35abc445884745af48dba2016ddea, type: 3} + propertyPath: m_LocalRotation.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 400178, guid: adb35abc445884745af48dba2016ddea, type: 3} + propertyPath: m_LocalRotation.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 400178, guid: adb35abc445884745af48dba2016ddea, type: 3} + propertyPath: m_LocalRotation.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 400178, guid: adb35abc445884745af48dba2016ddea, type: 3} + propertyPath: m_LocalRotation.w + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 400178, guid: adb35abc445884745af48dba2016ddea, type: 3} + propertyPath: m_RootOrder + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 400178, guid: adb35abc445884745af48dba2016ddea, type: 3} + propertyPath: m_LocalEulerAnglesHint.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 400178, guid: adb35abc445884745af48dba2016ddea, type: 3} + propertyPath: m_LocalEulerAnglesHint.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 400178, guid: adb35abc445884745af48dba2016ddea, type: 3} + propertyPath: m_LocalEulerAnglesHint.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 400178, guid: adb35abc445884745af48dba2016ddea, type: 3} + propertyPath: m_LocalScale.x + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 400178, guid: adb35abc445884745af48dba2016ddea, type: 3} + propertyPath: m_LocalScale.z + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 100178, guid: adb35abc445884745af48dba2016ddea, type: 3} + propertyPath: m_Name + value: BuildingTallModel + objectReference: {fileID: 0} + m_RemovedComponents: [] + m_SourcePrefab: {fileID: 100100000, guid: adb35abc445884745af48dba2016ddea, type: 3} +--- !u!4 &155743295429105879 stripped +Transform: + m_CorrespondingSourceObject: {fileID: 400178, guid: adb35abc445884745af48dba2016ddea, + type: 3} + m_PrefabInstance: {fileID: 155743295429231589} + m_PrefabAsset: {fileID: 0} diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Prefabs/Environment/BuildingTall.prefab.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Prefabs/Environment/BuildingTall.prefab.meta" new file mode 100644 index 00000000..d4c5f875 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Prefabs/Environment/BuildingTall.prefab.meta" @@ -0,0 +1,7 @@ +fileFormatVersion: 2 +guid: 041b3704a3df0fd4a8e325e3044c3b5e +PrefabImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Prefabs/Environment/BuildingThin.prefab" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Prefabs/Environment/BuildingThin.prefab" new file mode 100644 index 00000000..5a0b8ca4 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Prefabs/Environment/BuildingThin.prefab" @@ -0,0 +1,96 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!1 &3420580296371496975 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 8822636336882126325} + m_Layer: 0 + m_Name: BuildingThin + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &8822636336882126325 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 3420580296371496975} + m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} + m_LocalPosition: {x: 0, y: 0, z: 0} + m_LocalScale: {x: 1, y: 1, z: 1} + m_Children: + - {fileID: 4622333354417008} + m_Father: {fileID: 0} + m_RootOrder: 0 + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!1001 &4622333354017264 +PrefabInstance: + m_ObjectHideFlags: 0 + serializedVersion: 2 + m_Modification: + m_TransformParent: {fileID: 8822636336882126325} + m_Modifications: + - target: {fileID: 100000, guid: 4d5adf1f338cc40bf8ed376a09b0ac1c, type: 3} + propertyPath: m_Name + value: BuildingThinModel + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 4d5adf1f338cc40bf8ed376a09b0ac1c, type: 3} + propertyPath: m_LocalPosition.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 4d5adf1f338cc40bf8ed376a09b0ac1c, type: 3} + propertyPath: m_LocalPosition.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 4d5adf1f338cc40bf8ed376a09b0ac1c, type: 3} + propertyPath: m_LocalPosition.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 4d5adf1f338cc40bf8ed376a09b0ac1c, type: 3} + propertyPath: m_LocalRotation.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 4d5adf1f338cc40bf8ed376a09b0ac1c, type: 3} + propertyPath: m_LocalRotation.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 4d5adf1f338cc40bf8ed376a09b0ac1c, type: 3} + propertyPath: m_LocalRotation.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 4d5adf1f338cc40bf8ed376a09b0ac1c, type: 3} + propertyPath: m_LocalRotation.w + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 4d5adf1f338cc40bf8ed376a09b0ac1c, type: 3} + propertyPath: m_RootOrder + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 4d5adf1f338cc40bf8ed376a09b0ac1c, type: 3} + propertyPath: m_LocalEulerAnglesHint.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 4d5adf1f338cc40bf8ed376a09b0ac1c, type: 3} + propertyPath: m_LocalEulerAnglesHint.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 4d5adf1f338cc40bf8ed376a09b0ac1c, type: 3} + propertyPath: m_LocalEulerAnglesHint.z + value: 0 + objectReference: {fileID: 0} + m_RemovedComponents: [] + m_SourcePrefab: {fileID: 100100000, guid: 4d5adf1f338cc40bf8ed376a09b0ac1c, type: 3} +--- !u!4 &4622333354417008 stripped +Transform: + m_CorrespondingSourceObject: {fileID: 400000, guid: 4d5adf1f338cc40bf8ed376a09b0ac1c, + type: 3} + m_PrefabInstance: {fileID: 4622333354017264} + m_PrefabAsset: {fileID: 0} diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Prefabs/Environment/BuildingThin.prefab.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Prefabs/Environment/BuildingThin.prefab.meta" new file mode 100644 index 00000000..53ae87b3 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Prefabs/Environment/BuildingThin.prefab.meta" @@ -0,0 +1,7 @@ +fileFormatVersion: 2 +guid: 6e78c73d0c22422438a45bea2842fcfb +PrefabImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Prefabs/Environment/Cloud.prefab" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Prefabs/Environment/Cloud.prefab" new file mode 100644 index 00000000..02dccdc8 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Prefabs/Environment/Cloud.prefab" @@ -0,0 +1,79 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!1 &4522564040771475129 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 4522564040771504793} + - component: {fileID: 4522564040770210489} + - component: {fileID: 4522564040769210489} + m_Layer: 0 + m_Name: CloudTest (6) + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 4294967295 + m_IsActive: 1 +--- !u!4 &4522564040771504793 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 4522564040771475129} + m_LocalRotation: {x: -0, y: -0.99994344, z: -0, w: 0.010639232} + m_LocalPosition: {x: -143, y: 58, z: -520} + m_LocalScale: {x: 6.4706197, y: 6.4706197, z: 6.4706197} + m_Children: [] + m_Father: {fileID: 0} + m_RootOrder: 0 + m_LocalEulerAnglesHint: {x: 0, y: -178.781, z: 0} +--- !u!33 &4522564040770210489 +MeshFilter: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 4522564040771475129} + m_Mesh: {fileID: 4300012, guid: 0829d76c4806eb54b8b2f17eec10f4e6, type: 3} +--- !u!23 &4522564040769210489 +MeshRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 4522564040771475129} + m_Enabled: 1 + m_CastShadows: 1 + m_ReceiveShadows: 1 + m_DynamicOccludee: 1 + m_MotionVectors: 1 + m_LightProbeUsage: 1 + m_ReflectionProbeUsage: 1 + m_RenderingLayerMask: 1 + m_RendererPriority: 0 + m_Materials: + - {fileID: 2100000, guid: d11179e416c9b394c8176d36a0dcae52, type: 2} + m_StaticBatchInfo: + firstSubMesh: 0 + subMeshCount: 0 + m_StaticBatchRoot: {fileID: 0} + m_ProbeAnchor: {fileID: 0} + m_LightProbeVolumeOverride: {fileID: 0} + m_ScaleInLightmap: 1 + m_PreserveUVs: 0 + m_IgnoreNormalsForChartDetection: 0 + m_ImportantGI: 0 + m_StitchLightmapSeams: 0 + m_SelectedEditorRenderState: 3 + m_MinimumChartSize: 4 + m_AutoUVMaxDistance: 0.5 + m_AutoUVMaxAngle: 89 + m_LightmapParameters: {fileID: 0} + m_SortingLayerID: 0 + m_SortingLayer: 0 + m_SortingOrder: 0 diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Prefabs/Environment/Cloud.prefab.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Prefabs/Environment/Cloud.prefab.meta" new file mode 100644 index 00000000..85961f28 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Prefabs/Environment/Cloud.prefab.meta" @@ -0,0 +1,7 @@ +fileFormatVersion: 2 +guid: 0ed853fb7c32d144cb93f3ac44c6160f +PrefabImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Prefabs/Environment/RoofCentral.prefab" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Prefabs/Environment/RoofCentral.prefab" new file mode 100644 index 00000000..96d0c15a --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Prefabs/Environment/RoofCentral.prefab" @@ -0,0 +1,79 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!1 &6286824004025927993 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 6286824004025767193} + - component: {fileID: 6286824004027061561} + - component: {fileID: 6286824004028192761} + m_Layer: 0 + m_Name: Roof_Central + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &6286824004025767193 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 6286824004025927993} + m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} + m_LocalPosition: {x: -0, y: 0, z: 0} + m_LocalScale: {x: 1, y: 1, z: 1} + m_Children: [] + m_Father: {fileID: 0} + m_RootOrder: 0 + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!33 &6286824004027061561 +MeshFilter: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 6286824004025927993} + m_Mesh: {fileID: 4300000, guid: 0a64fcbabe32dac42b6b77115813e42d, type: 3} +--- !u!23 &6286824004028192761 +MeshRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 6286824004025927993} + m_Enabled: 1 + m_CastShadows: 2 + m_ReceiveShadows: 1 + m_DynamicOccludee: 1 + m_MotionVectors: 1 + m_LightProbeUsage: 1 + m_ReflectionProbeUsage: 1 + m_RenderingLayerMask: 1 + m_RendererPriority: 0 + m_Materials: + - {fileID: 2100000, guid: d11179e416c9b394c8176d36a0dcae52, type: 2} + m_StaticBatchInfo: + firstSubMesh: 0 + subMeshCount: 0 + m_StaticBatchRoot: {fileID: 0} + m_ProbeAnchor: {fileID: 0} + m_LightProbeVolumeOverride: {fileID: 0} + m_ScaleInLightmap: 1 + m_PreserveUVs: 0 + m_IgnoreNormalsForChartDetection: 0 + m_ImportantGI: 0 + m_StitchLightmapSeams: 0 + m_SelectedEditorRenderState: 3 + m_MinimumChartSize: 4 + m_AutoUVMaxDistance: 0.5 + m_AutoUVMaxAngle: 89 + m_LightmapParameters: {fileID: 0} + m_SortingLayerID: 0 + m_SortingLayer: 0 + m_SortingOrder: 0 diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Prefabs/Environment/RoofCentral.prefab.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Prefabs/Environment/RoofCentral.prefab.meta" new file mode 100644 index 00000000..96b8e74b --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Prefabs/Environment/RoofCentral.prefab.meta" @@ -0,0 +1,7 @@ +fileFormatVersion: 2 +guid: 2f03e2f1c391cdc4bad90a6ee620aaf2 +PrefabImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Prefabs/Environment/RoofCorner.prefab" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Prefabs/Environment/RoofCorner.prefab" new file mode 100644 index 00000000..c22a14f6 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Prefabs/Environment/RoofCorner.prefab" @@ -0,0 +1,79 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!1 &3766991441552994761 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 3766991441553026537} + - component: {fileID: 3766991441549602249} + - component: {fileID: 3766991441550733065} + m_Layer: 0 + m_Name: Roof_Corner + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &3766991441553026537 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 3766991441552994761} + m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} + m_LocalPosition: {x: 0.00000030517577, y: 0, z: 0} + m_LocalScale: {x: 1, y: 1, z: 1} + m_Children: [] + m_Father: {fileID: 0} + m_RootOrder: 0 + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!33 &3766991441549602249 +MeshFilter: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 3766991441552994761} + m_Mesh: {fileID: 4300000, guid: f46a9f80d31a32e47a57aa4858036430, type: 3} +--- !u!23 &3766991441550733065 +MeshRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 3766991441552994761} + m_Enabled: 1 + m_CastShadows: 1 + m_ReceiveShadows: 1 + m_DynamicOccludee: 1 + m_MotionVectors: 1 + m_LightProbeUsage: 1 + m_ReflectionProbeUsage: 1 + m_RenderingLayerMask: 1 + m_RendererPriority: 0 + m_Materials: + - {fileID: 2100000, guid: d11179e416c9b394c8176d36a0dcae52, type: 2} + m_StaticBatchInfo: + firstSubMesh: 0 + subMeshCount: 0 + m_StaticBatchRoot: {fileID: 0} + m_ProbeAnchor: {fileID: 0} + m_LightProbeVolumeOverride: {fileID: 0} + m_ScaleInLightmap: 1 + m_PreserveUVs: 0 + m_IgnoreNormalsForChartDetection: 0 + m_ImportantGI: 0 + m_StitchLightmapSeams: 0 + m_SelectedEditorRenderState: 3 + m_MinimumChartSize: 4 + m_AutoUVMaxDistance: 0.5 + m_AutoUVMaxAngle: 89 + m_LightmapParameters: {fileID: 0} + m_SortingLayerID: 0 + m_SortingLayer: 0 + m_SortingOrder: 0 diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Prefabs/Environment/RoofCorner.prefab.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Prefabs/Environment/RoofCorner.prefab.meta" new file mode 100644 index 00000000..32a145cd --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Prefabs/Environment/RoofCorner.prefab.meta" @@ -0,0 +1,7 @@ +fileFormatVersion: 2 +guid: 2de71dd77d75abc4d8abf9523820123a +PrefabImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Prefabs/Environment/StoneFlat.prefab" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Prefabs/Environment/StoneFlat.prefab" new file mode 100644 index 00000000..acebdbf7 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Prefabs/Environment/StoneFlat.prefab" @@ -0,0 +1,79 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!1 &5742194636018856685 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 667086550830086704} + - component: {fileID: 5742194636018856675} + - component: {fileID: 5742194636018856674} + m_Layer: 0 + m_Name: StoneVariant1 + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &667086550830086704 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 5742194636018856685} + m_LocalRotation: {x: -0, y: -0.78316635, z: -0, w: 0.62181234} + m_LocalPosition: {x: 0.05, y: -0.97, z: -0.09} + m_LocalScale: {x: 3.287871, y: 3.287871, z: 3.287871} + m_Children: [] + m_Father: {fileID: 0} + m_RootOrder: 0 + m_LocalEulerAnglesHint: {x: 0, y: -103.103004, z: 0} +--- !u!33 &5742194636018856675 +MeshFilter: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 5742194636018856685} + m_Mesh: {fileID: 4300002, guid: c80f31023dcf9b34cbd0044505be4806, type: 3} +--- !u!23 &5742194636018856674 +MeshRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 5742194636018856685} + m_Enabled: 1 + m_CastShadows: 1 + m_ReceiveShadows: 1 + m_DynamicOccludee: 1 + m_MotionVectors: 1 + m_LightProbeUsage: 1 + m_ReflectionProbeUsage: 1 + m_RenderingLayerMask: 1 + m_RendererPriority: 0 + m_Materials: + - {fileID: 2100000, guid: d11179e416c9b394c8176d36a0dcae52, type: 2} + m_StaticBatchInfo: + firstSubMesh: 0 + subMeshCount: 0 + m_StaticBatchRoot: {fileID: 0} + m_ProbeAnchor: {fileID: 0} + m_LightProbeVolumeOverride: {fileID: 0} + m_ScaleInLightmap: 1 + m_PreserveUVs: 0 + m_IgnoreNormalsForChartDetection: 0 + m_ImportantGI: 0 + m_StitchLightmapSeams: 0 + m_SelectedEditorRenderState: 3 + m_MinimumChartSize: 4 + m_AutoUVMaxDistance: 0.5 + m_AutoUVMaxAngle: 89 + m_LightmapParameters: {fileID: 0} + m_SortingLayerID: 0 + m_SortingLayer: 0 + m_SortingOrder: 0 diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Prefabs/Environment/StoneFlat.prefab.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Prefabs/Environment/StoneFlat.prefab.meta" new file mode 100644 index 00000000..037e8fa7 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Prefabs/Environment/StoneFlat.prefab.meta" @@ -0,0 +1,7 @@ +fileFormatVersion: 2 +guid: 3796997fde0c29b4180a4ec756403b34 +PrefabImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Prefabs/Environment/StoneRound.prefab" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Prefabs/Environment/StoneRound.prefab" new file mode 100644 index 00000000..5c5b839f --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Prefabs/Environment/StoneRound.prefab" @@ -0,0 +1,79 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!1 &6182327852661155845 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 40299501215355906} + - component: {fileID: 6182327852661155963} + - component: {fileID: 6182327852661155844} + m_Layer: 0 + m_Name: StoneVariant2 + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &40299501215355906 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 6182327852661155845} + m_LocalRotation: {x: 0, y: -0, z: -0, w: 1} + m_LocalPosition: {x: 1.88, y: -1.04, z: -3.91} + m_LocalScale: {x: 2.3006, y: 2.3006, z: 2.3006} + m_Children: [] + m_Father: {fileID: 0} + m_RootOrder: 0 + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!33 &6182327852661155963 +MeshFilter: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 6182327852661155845} + m_Mesh: {fileID: 4300002, guid: 5e6dd9e33a8a1c748a582c8565e5f95f, type: 3} +--- !u!23 &6182327852661155844 +MeshRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 6182327852661155845} + m_Enabled: 1 + m_CastShadows: 1 + m_ReceiveShadows: 1 + m_DynamicOccludee: 1 + m_MotionVectors: 1 + m_LightProbeUsage: 1 + m_ReflectionProbeUsage: 1 + m_RenderingLayerMask: 1 + m_RendererPriority: 0 + m_Materials: + - {fileID: 2100000, guid: d11179e416c9b394c8176d36a0dcae52, type: 2} + m_StaticBatchInfo: + firstSubMesh: 0 + subMeshCount: 0 + m_StaticBatchRoot: {fileID: 0} + m_ProbeAnchor: {fileID: 0} + m_LightProbeVolumeOverride: {fileID: 0} + m_ScaleInLightmap: 1 + m_PreserveUVs: 0 + m_IgnoreNormalsForChartDetection: 0 + m_ImportantGI: 0 + m_StitchLightmapSeams: 0 + m_SelectedEditorRenderState: 3 + m_MinimumChartSize: 4 + m_AutoUVMaxDistance: 0.5 + m_AutoUVMaxAngle: 89 + m_LightmapParameters: {fileID: 0} + m_SortingLayerID: 0 + m_SortingLayer: 0 + m_SortingOrder: 0 diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Prefabs/Environment/StoneRound.prefab.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Prefabs/Environment/StoneRound.prefab.meta" new file mode 100644 index 00000000..27de58ab --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Prefabs/Environment/StoneRound.prefab.meta" @@ -0,0 +1,7 @@ +fileFormatVersion: 2 +guid: 230dd9257fca2c249b555f6edd3c8e14 +PrefabImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Prefabs/Environment/TreeBox.prefab" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Prefabs/Environment/TreeBox.prefab" new file mode 100644 index 00000000..7a75f7ee --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Prefabs/Environment/TreeBox.prefab" @@ -0,0 +1,79 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!1 &443638673 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 521230271} + - component: {fileID: 443638675} + - component: {fileID: 443638674} + m_Layer: 0 + m_Name: TreeBox + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &521230271 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 443638673} + m_LocalRotation: {x: -0, y: 0.43684557, z: -0, w: 0.8995365} + m_LocalPosition: {x: -100.18, y: 7, z: -90.315} + m_LocalScale: {x: 5.1384625, y: 5.1384616, z: 5.1384625} + m_Children: [] + m_Father: {fileID: 0} + m_RootOrder: 0 + m_LocalEulerAnglesHint: {x: 0, y: 51.806004, z: 0} +--- !u!33 &443638675 +MeshFilter: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 443638673} + m_Mesh: {fileID: 4300000, guid: 9f1e50f73a529a448b004add5bec5d80, type: 3} +--- !u!23 &443638674 +MeshRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 443638673} + m_Enabled: 1 + m_CastShadows: 1 + m_ReceiveShadows: 1 + m_DynamicOccludee: 1 + m_MotionVectors: 1 + m_LightProbeUsage: 1 + m_ReflectionProbeUsage: 1 + m_RenderingLayerMask: 1 + m_RendererPriority: 0 + m_Materials: + - {fileID: 2100000, guid: d11179e416c9b394c8176d36a0dcae52, type: 2} + m_StaticBatchInfo: + firstSubMesh: 0 + subMeshCount: 0 + m_StaticBatchRoot: {fileID: 0} + m_ProbeAnchor: {fileID: 0} + m_LightProbeVolumeOverride: {fileID: 0} + m_ScaleInLightmap: 1 + m_PreserveUVs: 0 + m_IgnoreNormalsForChartDetection: 0 + m_ImportantGI: 0 + m_StitchLightmapSeams: 0 + m_SelectedEditorRenderState: 3 + m_MinimumChartSize: 4 + m_AutoUVMaxDistance: 0.5 + m_AutoUVMaxAngle: 89 + m_LightmapParameters: {fileID: 0} + m_SortingLayerID: 0 + m_SortingLayer: 0 + m_SortingOrder: 0 diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Prefabs/Environment/TreeBox.prefab.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Prefabs/Environment/TreeBox.prefab.meta" new file mode 100644 index 00000000..07605e99 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Prefabs/Environment/TreeBox.prefab.meta" @@ -0,0 +1,7 @@ +fileFormatVersion: 2 +guid: 08421f76a47df7249a20d39e885964b3 +PrefabImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Prefabs/Environment/TreeRound.prefab" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Prefabs/Environment/TreeRound.prefab" new file mode 100644 index 00000000..313d6146 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Prefabs/Environment/TreeRound.prefab" @@ -0,0 +1,110 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!1 &5043517943769457474 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 5043517943769457475} + - component: {fileID: 5043517943769457473} + - component: {fileID: 5043517943769457472} + m_Layer: 0 + m_Name: Tree + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &5043517943769457475 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 5043517943769457474} + m_LocalRotation: {x: -0.028394612, y: -0.00022705912, z: -0.007993077, w: 0.9995648} + m_LocalPosition: {x: -0.037068937, y: -2.508807, z: -0.13883056} + m_LocalScale: {x: 1, y: 1, z: 1} + m_Children: [] + m_Father: {fileID: 5043517943713643291} + m_RootOrder: 0 + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!33 &5043517943769457473 +MeshFilter: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 5043517943769457474} + m_Mesh: {fileID: 4300002, guid: dca6189290e8c16479a364fa6d80b6b8, type: 3} +--- !u!23 &5043517943769457472 +MeshRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 5043517943769457474} + m_Enabled: 1 + m_CastShadows: 1 + m_ReceiveShadows: 1 + m_DynamicOccludee: 1 + m_MotionVectors: 1 + m_LightProbeUsage: 1 + m_ReflectionProbeUsage: 1 + m_RenderingLayerMask: 1 + m_RendererPriority: 0 + m_Materials: + - {fileID: 2100000, guid: d11179e416c9b394c8176d36a0dcae52, type: 2} + m_StaticBatchInfo: + firstSubMesh: 0 + subMeshCount: 0 + m_StaticBatchRoot: {fileID: 0} + m_ProbeAnchor: {fileID: 0} + m_LightProbeVolumeOverride: {fileID: 0} + m_ScaleInLightmap: 1 + m_PreserveUVs: 0 + m_IgnoreNormalsForChartDetection: 0 + m_ImportantGI: 0 + m_StitchLightmapSeams: 0 + m_SelectedEditorRenderState: 3 + m_MinimumChartSize: 4 + m_AutoUVMaxDistance: 0.5 + m_AutoUVMaxAngle: 89 + m_LightmapParameters: {fileID: 0} + m_SortingLayerID: 0 + m_SortingLayer: 0 + m_SortingOrder: 0 +--- !u!1 &5043517944903718146 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 5043517943713643291} + m_Layer: 0 + m_Name: TreeRound + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 4294967295 + m_IsActive: 1 +--- !u!4 &5043517943713643291 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 5043517944903718146} + m_LocalRotation: {x: -0, y: -0.08150279, z: -0, w: -0.9966731} + m_LocalPosition: {x: 55.810207, y: 12.95, z: -5.8286133} + m_LocalScale: {x: 1.8610206, y: 1.8610206, z: 1.8610206} + m_Children: + - {fileID: 5043517943769457475} + m_Father: {fileID: 0} + m_RootOrder: 0 + m_LocalEulerAnglesHint: {x: 0, y: 369.35, z: 0} diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Prefabs/Environment/TreeRound.prefab.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Prefabs/Environment/TreeRound.prefab.meta" new file mode 100644 index 00000000..5d5e9e33 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Prefabs/Environment/TreeRound.prefab.meta" @@ -0,0 +1,7 @@ +fileFormatVersion: 2 +guid: f825600eaf118ef48b19d55e234266b1 +PrefabImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Prefabs/Kart.prefab" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Prefabs/Kart.prefab" new file mode 100644 index 00000000..478bc696 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Prefabs/Kart.prefab" @@ -0,0 +1,1982 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!1 &1924022080173504678 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 6706556457813598257} + m_Layer: 0 + m_Name: LeftRaycastLocation + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &6706556457813598257 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1924022080173504678} + m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} + m_LocalPosition: {x: -0.5, y: 0, z: 0} + m_LocalScale: {x: 1, y: 1, z: 1} + m_Children: [] + m_Father: {fileID: 3763822634849867143} + m_RootOrder: 2 + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!1 &3763822634849867148 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 3763822634849867143} + - component: {fileID: 3763822634849867139} + - component: {fileID: 1944612931} + - component: {fileID: 3763822634849867138} + - component: {fileID: 3763822634849867149} + - component: {fileID: 2500970901594448562} + - component: {fileID: 1593944921} + - component: {fileID: 3763822634849867150} + m_Layer: 0 + m_Name: Kart + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &3763822634849867143 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 3763822634849867148} + m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} + m_LocalPosition: {x: 0, y: 0.5, z: 0} + m_LocalScale: {x: 1, y: 1, z: 1} + m_Children: + - {fileID: 6492957747431005958} + - {fileID: 5429194417252953868} + - {fileID: 6706556457813598257} + - {fileID: 2492833699451386368} + - {fileID: 3324499785191585879} + - {fileID: 1034647908} + - {fileID: 1316567655} + - {fileID: 4535926174995201898} + - {fileID: 8088754022919967389} + m_Father: {fileID: 0} + m_RootOrder: 0 + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!114 &3763822634849867139 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 3763822634849867148} + m_Enabled: 0 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: b465c33664cb50e4e8c1ba2c937b27f9, type: 3} + m_Name: + m_EditorClassIdentifier: +--- !u!114 &1944612931 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 3763822634849867148} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 7f292ffb948323c49ac31e54ff737ea2, type: 3} + m_Name: + m_EditorClassIdentifier: +--- !u!114 &3763822634849867138 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 3763822634849867148} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 53099c8bf5564a54caebda5331b303b6, type: 3} + m_Name: + m_EditorClassIdentifier: + kart: {fileID: 11400000, guid: 1389bd2457379f74483c87fbf12258ea, type: 2} + driver: {fileID: 11400000, guid: 9b3f9157348e2f746bc71583f86aabc7, type: 2} + airborneModifier: {fileID: 11400000, guid: 6f9e02ce4637faf498063afb4aa37a22, type: 2} + input: {fileID: 1944612931} + frontGroundRaycast: {fileID: 6492957747431005958} + rightGroundRaycast: {fileID: 5429194417252953868} + leftGroundRaycast: {fileID: 6706556457813598257} + rearGroundRaycast: {fileID: 2492833699451386368} + defaultStats: + acceleration: 5 + braking: 20 + coastingDrag: 3 + gravity: 35 + grip: 20 + hopHeight: 4 + reverseAcceleration: 3 + reverseSpeed: 5 + topSpeed: 25 + turnSpeed: 60 + weight: 3 + groundLayers: + serializedVersion: 2 + m_Bits: 512 + allCollidingLayers: + serializedVersion: 2 + m_Bits: 513 + airborneOrientationSpeed: 60 + minDriftingSteering: 0.2 + rotationCorrectionSpeed: 180 + minDriftStartAngle: 15 + maxDriftStartAngle: 90 + kartToKartBump: 10 + OnBecomeAirborne: + m_PersistentCalls: + m_Calls: [] + m_TypeName: UnityEngine.Events.UnityEvent, UnityEngine.CoreModule, Version=0.0.0.0, + Culture=neutral, PublicKeyToken=null + OnBecomeGrounded: + m_PersistentCalls: + m_Calls: [] + m_TypeName: UnityEngine.Events.UnityEvent, UnityEngine.CoreModule, Version=0.0.0.0, + Culture=neutral, PublicKeyToken=null + OnHop: + m_PersistentCalls: + m_Calls: [] + m_TypeName: UnityEngine.Events.UnityEvent, UnityEngine.CoreModule, Version=0.0.0.0, + Culture=neutral, PublicKeyToken=null + OnDriftStarted: + m_PersistentCalls: + m_Calls: + - m_Target: {fileID: 1015250076} + m_MethodName: Play + m_Mode: 1 + m_Arguments: + m_ObjectArgument: {fileID: 0} + m_ObjectArgumentAssemblyTypeName: UnityEngine.Object, UnityEngine + m_IntArgument: 0 + m_FloatArgument: 0 + m_StringArgument: + m_BoolArgument: 0 + m_CallState: 2 + - m_Target: {fileID: 1330724767} + m_MethodName: Play + m_Mode: 1 + m_Arguments: + m_ObjectArgument: {fileID: 0} + m_ObjectArgumentAssemblyTypeName: UnityEngine.Object, UnityEngine + m_IntArgument: 0 + m_FloatArgument: 0 + m_StringArgument: + m_BoolArgument: 0 + m_CallState: 2 + m_TypeName: UnityEngine.Events.UnityEvent, UnityEngine.CoreModule, Version=0.0.0.0, + Culture=neutral, PublicKeyToken=null + OnDriftStopped: + m_PersistentCalls: + m_Calls: + - m_Target: {fileID: 1015250076} + m_MethodName: Stop + m_Mode: 1 + m_Arguments: + m_ObjectArgument: {fileID: 0} + m_ObjectArgumentAssemblyTypeName: UnityEngine.Object, UnityEngine + m_IntArgument: 0 + m_FloatArgument: 0 + m_StringArgument: + m_BoolArgument: 0 + m_CallState: 2 + - m_Target: {fileID: 1330724767} + m_MethodName: Stop + m_Mode: 1 + m_Arguments: + m_ObjectArgument: {fileID: 0} + m_ObjectArgumentAssemblyTypeName: UnityEngine.Object, UnityEngine + m_IntArgument: 0 + m_FloatArgument: 0 + m_StringArgument: + m_BoolArgument: 0 + m_CallState: 2 + m_TypeName: UnityEngine.Events.UnityEvent, UnityEngine.CoreModule, Version=0.0.0.0, + Culture=neutral, PublicKeyToken=null + OnKartCollision: + m_PersistentCalls: + m_Calls: [] + m_TypeName: UnityEngine.Events.UnityEvent, UnityEngine.CoreModule, Version=0.0.0.0, + Culture=neutral, PublicKeyToken=null +--- !u!54 &3763822634849867149 +Rigidbody: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 3763822634849867148} + serializedVersion: 2 + m_Mass: 1 + m_Drag: 0 + m_AngularDrag: 0.05 + m_UseGravity: 0 + m_IsKinematic: 1 + m_Interpolate: 0 + m_Constraints: 0 + m_CollisionDetection: 0 +--- !u!136 &2500970901594448562 +CapsuleCollider: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 3763822634849867148} + m_Material: {fileID: 0} + m_IsTrigger: 0 + m_Enabled: 1 + m_Radius: 0.5 + m_Height: 2 + m_Direction: 2 + m_Center: {x: 0, y: 0, z: 0} +--- !u!114 &1593944921 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 3763822634849867148} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 7182949d2a8e7604abfc172a14ac5d7c, type: 3} + m_Name: + m_EditorClassIdentifier: + kartMovement: {fileID: 3763822634849867138} +--- !u!114 &3763822634849867150 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 3763822634849867148} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 28e237446f589d9458c806d922e78789, type: 3} + m_Name: + m_EditorClassIdentifier: + input: {fileID: 1944612931} + playerAnimator: {fileID: 6879967379960152996} + kartMovement: {fileID: 3763822634849867138} + steeringAnimationDamping: 10 + steeringWheel: {fileID: 3324499785191585871} + maxSteeringWheelAngle: 90 + steeringWheelRotationAxis: {x: -1, y: 0, z: 0} + frontWheelRadius: 0.125 + rearWheelRadius: 0.16 + maxSteeringAngle: 45 + frontLeftWheel: + wheelTransform: {fileID: 4535926174995201894} + axelAxis: {x: 1, y: 0, z: 0} + steeringAxis: {x: 0, y: 1, z: 0} + frontRightWheel: + wheelTransform: {fileID: 4535926174995201888} + axelAxis: {x: 1, y: 0, z: 0} + steeringAxis: {x: 0, y: 1, z: 0} + rearLeftWheel: + wheelTransform: {fileID: 4535926174995201890} + axelAxis: {x: 1, y: 0, z: 0} + steeringAxis: {x: 0, y: 0, z: 0} + rearRightWheel: + wheelTransform: {fileID: 4535926174995201916} + axelAxis: {x: 1, y: 0, z: 0} + steeringAxis: {x: 0, y: 0, z: 0} +--- !u!1 &4025128755972768298 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 8248795678495884255} + - component: {fileID: 7459802326972670649} + m_Layer: 0 + m_Name: CollisionAudio + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &8248795678495884255 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 4025128755972768298} + m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} + m_LocalPosition: {x: 0, y: 0, z: 0} + m_LocalScale: {x: 1, y: 1, z: 1} + m_Children: [] + m_Father: {fileID: 8088754022919967389} + m_RootOrder: 0 + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!82 &7459802326972670649 +AudioSource: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 4025128755972768298} + m_Enabled: 1 + serializedVersion: 4 + OutputAudioMixerGroup: {fileID: 0} + m_audioClip: {fileID: 8300000, guid: 09f715e4d9c95e848945e7702f9bab46, type: 3} + m_PlayOnAwake: 0 + m_Volume: 1 + m_Pitch: 1 + Loop: 0 + Mute: 0 + Spatialize: 0 + SpatializePostEffects: 0 + Priority: 128 + DopplerLevel: 1 + MinDistance: 1 + MaxDistance: 500 + Pan2D: 0 + rolloffMode: 0 + BypassEffects: 0 + BypassListenerEffects: 0 + BypassReverbZones: 0 + rolloffCustomCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + panLevelCustomCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + spreadCustomCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + reverbZoneMixCustomCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 +--- !u!1 &5141372959495584242 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 2492833699451386368} + m_Layer: 0 + m_Name: RearRaycastLocation + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &2492833699451386368 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 5141372959495584242} + m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} + m_LocalPosition: {x: 0, y: 0, z: -0.6} + m_LocalScale: {x: 1, y: 1, z: 1} + m_Children: [] + m_Father: {fileID: 3763822634849867143} + m_RootOrder: 3 + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!1 &6437874656623382286 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 6492957747431005958} + m_Layer: 0 + m_Name: FrontRaycastLocation + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &6492957747431005958 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 6437874656623382286} + m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} + m_LocalPosition: {x: 0, y: 0, z: 0.8} + m_LocalScale: {x: 1, y: 1, z: 1} + m_Children: [] + m_Father: {fileID: 3763822634849867143} + m_RootOrder: 0 + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!1 &6979034936108882725 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 8088754022919967389} + m_Layer: 0 + m_Name: Audio + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &8088754022919967389 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 6979034936108882725} + m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} + m_LocalPosition: {x: 0, y: 0, z: 0} + m_LocalScale: {x: 1, y: 1, z: 1} + m_Children: + - {fileID: 8248795678495884255} + - {fileID: 4599828830741488090} + - {fileID: 5690860428181435716} + m_Father: {fileID: 3763822634849867143} + m_RootOrder: 8 + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!1 &7775520321942093381 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 5429194417252953868} + m_Layer: 0 + m_Name: RightRaycastLocation + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &5429194417252953868 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 7775520321942093381} + m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} + m_LocalPosition: {x: 0.5, y: 0, z: 0} + m_LocalScale: {x: 1, y: 1, z: 1} + m_Children: [] + m_Father: {fileID: 3763822634849867143} + m_RootOrder: 1 + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!1 &8020397839904736218 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 4599828830741488090} + - component: {fileID: 5028510217269660630} + m_Layer: 0 + m_Name: DriftAuido + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &4599828830741488090 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 8020397839904736218} + m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} + m_LocalPosition: {x: 0, y: 0, z: 0} + m_LocalScale: {x: 1, y: 1, z: 1} + m_Children: [] + m_Father: {fileID: 8088754022919967389} + m_RootOrder: 1 + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!82 &5028510217269660630 +AudioSource: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 8020397839904736218} + m_Enabled: 1 + serializedVersion: 4 + OutputAudioMixerGroup: {fileID: 0} + m_audioClip: {fileID: 8300000, guid: 94cb8601275583343ac318c5db2c2638, type: 3} + m_PlayOnAwake: 0 + m_Volume: 1 + m_Pitch: 1 + Loop: 1 + Mute: 0 + Spatialize: 0 + SpatializePostEffects: 0 + Priority: 128 + DopplerLevel: 1 + MinDistance: 1 + MaxDistance: 500 + Pan2D: 0 + rolloffMode: 0 + BypassEffects: 0 + BypassListenerEffects: 0 + BypassReverbZones: 0 + rolloffCustomCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + panLevelCustomCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + spreadCustomCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + reverbZoneMixCustomCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 +--- !u!1001 &1034742278 +PrefabInstance: + m_ObjectHideFlags: 0 + serializedVersion: 2 + m_Modification: + m_TransformParent: {fileID: 3763822634849867143} + m_Modifications: + - target: {fileID: 148586, guid: ad6a782a2105fb645824d5726daac042, type: 3} + propertyPath: m_Name + value: DriftTrailLeft + objectReference: {fileID: 0} + - target: {fileID: 496482, guid: ad6a782a2105fb645824d5726daac042, type: 3} + propertyPath: m_LocalPosition.x + value: -0.41600037 + objectReference: {fileID: 0} + - target: {fileID: 496482, guid: ad6a782a2105fb645824d5726daac042, type: 3} + propertyPath: m_LocalPosition.y + value: -0.4911 + objectReference: {fileID: 0} + - target: {fileID: 496482, guid: ad6a782a2105fb645824d5726daac042, type: 3} + propertyPath: m_LocalPosition.z + value: -0.7085 + objectReference: {fileID: 0} + - target: {fileID: 496482, guid: ad6a782a2105fb645824d5726daac042, type: 3} + propertyPath: m_LocalRotation.x + value: -0.7071062 + objectReference: {fileID: 0} + - target: {fileID: 496482, guid: ad6a782a2105fb645824d5726daac042, type: 3} + propertyPath: m_LocalRotation.y + value: 0.000000022351742 + objectReference: {fileID: 0} + - target: {fileID: 496482, guid: ad6a782a2105fb645824d5726daac042, type: 3} + propertyPath: m_LocalRotation.z + value: -0.00000007038021 + objectReference: {fileID: 0} + - target: {fileID: 496482, guid: ad6a782a2105fb645824d5726daac042, type: 3} + propertyPath: m_LocalRotation.w + value: 0.70710737 + objectReference: {fileID: 0} + - target: {fileID: 496482, guid: ad6a782a2105fb645824d5726daac042, type: 3} + propertyPath: m_RootOrder + value: 5 + objectReference: {fileID: 0} + - target: {fileID: 496482, guid: ad6a782a2105fb645824d5726daac042, type: 3} + propertyPath: m_LocalEulerAnglesHint.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 496482, guid: ad6a782a2105fb645824d5726daac042, type: 3} + propertyPath: m_LocalEulerAnglesHint.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 496482, guid: ad6a782a2105fb645824d5726daac042, type: 3} + propertyPath: m_LocalEulerAnglesHint.z + value: 0 + objectReference: {fileID: 0} + m_RemovedComponents: [] + m_SourcePrefab: {fileID: 100100000, guid: ad6a782a2105fb645824d5726daac042, type: 3} +--- !u!198 &1015250076 stripped +ParticleSystem: + m_CorrespondingSourceObject: {fileID: 19895962, guid: ad6a782a2105fb645824d5726daac042, + type: 3} + m_PrefabInstance: {fileID: 1034742278} + m_PrefabAsset: {fileID: 0} +--- !u!4 &1034647908 stripped +Transform: + m_CorrespondingSourceObject: {fileID: 496482, guid: ad6a782a2105fb645824d5726daac042, + type: 3} + m_PrefabInstance: {fileID: 1034742278} + m_PrefabAsset: {fileID: 0} +--- !u!1001 &1316923653 +PrefabInstance: + m_ObjectHideFlags: 0 + serializedVersion: 2 + m_Modification: + m_TransformParent: {fileID: 3763822634849867143} + m_Modifications: + - target: {fileID: 148586, guid: ad6a782a2105fb645824d5726daac042, type: 3} + propertyPath: m_Name + value: DriftTrailRight + objectReference: {fileID: 0} + - target: {fileID: 496482, guid: ad6a782a2105fb645824d5726daac042, type: 3} + propertyPath: m_LocalPosition.x + value: 0.38099957 + objectReference: {fileID: 0} + - target: {fileID: 496482, guid: ad6a782a2105fb645824d5726daac042, type: 3} + propertyPath: m_LocalPosition.y + value: -0.4911 + objectReference: {fileID: 0} + - target: {fileID: 496482, guid: ad6a782a2105fb645824d5726daac042, type: 3} + propertyPath: m_LocalPosition.z + value: -0.70849955 + objectReference: {fileID: 0} + - target: {fileID: 496482, guid: ad6a782a2105fb645824d5726daac042, type: 3} + propertyPath: m_LocalRotation.x + value: -0.7071062 + objectReference: {fileID: 0} + - target: {fileID: 496482, guid: ad6a782a2105fb645824d5726daac042, type: 3} + propertyPath: m_LocalRotation.y + value: 0.000000022351742 + objectReference: {fileID: 0} + - target: {fileID: 496482, guid: ad6a782a2105fb645824d5726daac042, type: 3} + propertyPath: m_LocalRotation.z + value: -0.00000007038021 + objectReference: {fileID: 0} + - target: {fileID: 496482, guid: ad6a782a2105fb645824d5726daac042, type: 3} + propertyPath: m_LocalRotation.w + value: 0.70710737 + objectReference: {fileID: 0} + - target: {fileID: 496482, guid: ad6a782a2105fb645824d5726daac042, type: 3} + propertyPath: m_RootOrder + value: 6 + objectReference: {fileID: 0} + - target: {fileID: 496482, guid: ad6a782a2105fb645824d5726daac042, type: 3} + propertyPath: m_LocalEulerAnglesHint.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 496482, guid: ad6a782a2105fb645824d5726daac042, type: 3} + propertyPath: m_LocalEulerAnglesHint.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 496482, guid: ad6a782a2105fb645824d5726daac042, type: 3} + propertyPath: m_LocalEulerAnglesHint.z + value: 0 + objectReference: {fileID: 0} + m_RemovedComponents: [] + m_SourcePrefab: {fileID: 100100000, guid: ad6a782a2105fb645824d5726daac042, type: 3} +--- !u!198 &1330724767 stripped +ParticleSystem: + m_CorrespondingSourceObject: {fileID: 19895962, guid: ad6a782a2105fb645824d5726daac042, + type: 3} + m_PrefabInstance: {fileID: 1316923653} + m_PrefabAsset: {fileID: 0} +--- !u!4 &1316567655 stripped +Transform: + m_CorrespondingSourceObject: {fileID: 496482, guid: ad6a782a2105fb645824d5726daac042, + type: 3} + m_PrefabInstance: {fileID: 1316923653} + m_PrefabAsset: {fileID: 0} +--- !u!1001 &1718698226 +PrefabInstance: + m_ObjectHideFlags: 0 + serializedVersion: 2 + m_Modification: + m_TransformParent: {fileID: 8088754022919967389} + m_Modifications: + - target: {fileID: 5690860426676778416, guid: ec5cb92a3a3d940e48635d86be0448cc, + type: 3} + propertyPath: m_Name + value: EngineAudio + objectReference: {fileID: 0} + - target: {fileID: 5690860426676778422, guid: ec5cb92a3a3d940e48635d86be0448cc, + type: 3} + propertyPath: m_LocalPosition.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 5690860426676778422, guid: ec5cb92a3a3d940e48635d86be0448cc, + type: 3} + propertyPath: m_LocalPosition.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 5690860426676778422, guid: ec5cb92a3a3d940e48635d86be0448cc, + type: 3} + propertyPath: m_LocalPosition.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 5690860426676778422, guid: ec5cb92a3a3d940e48635d86be0448cc, + type: 3} + propertyPath: m_LocalRotation.x + value: -0 + objectReference: {fileID: 0} + - target: {fileID: 5690860426676778422, guid: ec5cb92a3a3d940e48635d86be0448cc, + type: 3} + propertyPath: m_LocalRotation.y + value: -0 + objectReference: {fileID: 0} + - target: {fileID: 5690860426676778422, guid: ec5cb92a3a3d940e48635d86be0448cc, + type: 3} + propertyPath: m_LocalRotation.z + value: -0 + objectReference: {fileID: 0} + - target: {fileID: 5690860426676778422, guid: ec5cb92a3a3d940e48635d86be0448cc, + type: 3} + propertyPath: m_LocalRotation.w + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 5690860426676778422, guid: ec5cb92a3a3d940e48635d86be0448cc, + type: 3} + propertyPath: m_RootOrder + value: 2 + objectReference: {fileID: 0} + - target: {fileID: 5690860426676778422, guid: ec5cb92a3a3d940e48635d86be0448cc, + type: 3} + propertyPath: m_LocalEulerAnglesHint.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 5690860426676778422, guid: ec5cb92a3a3d940e48635d86be0448cc, + type: 3} + propertyPath: m_LocalEulerAnglesHint.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 5690860426676778422, guid: ec5cb92a3a3d940e48635d86be0448cc, + type: 3} + propertyPath: m_LocalEulerAnglesHint.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 5690860426676778417, guid: ec5cb92a3a3d940e48635d86be0448cc, + type: 3} + propertyPath: kartInfo + value: + objectReference: {fileID: 3763822634849867138} + - target: {fileID: 5690860426676778417, guid: ec5cb92a3a3d940e48635d86be0448cc, + type: 3} + propertyPath: RPM + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 5690860426676778417, guid: ec5cb92a3a3d940e48635d86be0448cc, + type: 3} + propertyPath: minRPM + value: 1500 + objectReference: {fileID: 0} + - target: {fileID: 5690860426676778417, guid: ec5cb92a3a3d940e48635d86be0448cc, + type: 3} + propertyPath: maxRPM + value: 10000 + objectReference: {fileID: 0} + - target: {fileID: 5690860426676778417, guid: ec5cb92a3a3d940e48635d86be0448cc, + type: 3} + propertyPath: lumpyCamFactor + value: 0.01 + objectReference: {fileID: 0} + - target: {fileID: 5690860426676778417, guid: ec5cb92a3a3d940e48635d86be0448cc, + type: 3} + propertyPath: minVolume + value: 0.5 + objectReference: {fileID: 0} + - target: {fileID: 5690860426676778417, guid: ec5cb92a3a3d940e48635d86be0448cc, + type: 3} + propertyPath: maxVolume + value: 0.9 + objectReference: {fileID: 0} + - target: {fileID: 5690860426676778417, guid: ec5cb92a3a3d940e48635d86be0448cc, + type: 3} + propertyPath: intake.clip + value: + objectReference: {fileID: 8300000, guid: 3d7dea0b41109438aa3242fa6ce220a7, type: 3} + - target: {fileID: 5690860426676778417, guid: ec5cb92a3a3d940e48635d86be0448cc, + type: 3} + propertyPath: intake.gain + value: 0.249 + objectReference: {fileID: 0} + - target: {fileID: 5690860426676778417, guid: ec5cb92a3a3d940e48635d86be0448cc, + type: 3} + propertyPath: compression.gain + value: 0.926 + objectReference: {fileID: 0} + - target: {fileID: 5690860426676778417, guid: ec5cb92a3a3d940e48635d86be0448cc, + type: 3} + propertyPath: combustion.gain + value: 0.957 + objectReference: {fileID: 0} + - target: {fileID: 5690860426676778417, guid: ec5cb92a3a3d940e48635d86be0448cc, + type: 3} + propertyPath: usePow + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 5690860426676778423, guid: ec5cb92a3a3d940e48635d86be0448cc, + type: 3} + propertyPath: MinDistance + value: 3 + objectReference: {fileID: 0} + - target: {fileID: 5690860426676778423, guid: ec5cb92a3a3d940e48635d86be0448cc, + type: 3} + propertyPath: panLevelCustomCurve.m_Curve.Array.data[0].value + value: 0.991 + objectReference: {fileID: 0} + m_RemovedComponents: [] + m_SourcePrefab: {fileID: 100100000, guid: ec5cb92a3a3d940e48635d86be0448cc, type: 3} +--- !u!4 &5690860428181435716 stripped +Transform: + m_CorrespondingSourceObject: {fileID: 5690860426676778422, guid: ec5cb92a3a3d940e48635d86be0448cc, + type: 3} + m_PrefabInstance: {fileID: 1718698226} + m_PrefabAsset: {fileID: 0} +--- !u!1001 &3324499785191449307 +PrefabInstance: + m_ObjectHideFlags: 0 + serializedVersion: 2 + m_Modification: + m_TransformParent: {fileID: 3763822634849867143} + m_Modifications: + - target: {fileID: 100012, guid: d3aa50a8114db7a4e95c5cb29a283ac4, type: 3} + propertyPath: m_Name + value: KartModel + objectReference: {fileID: 0} + - target: {fileID: 400012, guid: d3aa50a8114db7a4e95c5cb29a283ac4, type: 3} + propertyPath: m_LocalPosition.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 400012, guid: d3aa50a8114db7a4e95c5cb29a283ac4, type: 3} + propertyPath: m_LocalPosition.y + value: -0.495 + objectReference: {fileID: 0} + - target: {fileID: 400012, guid: d3aa50a8114db7a4e95c5cb29a283ac4, type: 3} + propertyPath: m_LocalPosition.z + value: 0.121 + objectReference: {fileID: 0} + - target: {fileID: 400012, guid: d3aa50a8114db7a4e95c5cb29a283ac4, type: 3} + propertyPath: m_LocalRotation.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 400012, guid: d3aa50a8114db7a4e95c5cb29a283ac4, type: 3} + propertyPath: m_LocalRotation.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 400012, guid: d3aa50a8114db7a4e95c5cb29a283ac4, type: 3} + propertyPath: m_LocalRotation.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 400012, guid: d3aa50a8114db7a4e95c5cb29a283ac4, type: 3} + propertyPath: m_LocalRotation.w + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 400012, guid: d3aa50a8114db7a4e95c5cb29a283ac4, type: 3} + propertyPath: m_RootOrder + value: 4 + objectReference: {fileID: 0} + - target: {fileID: 400012, guid: d3aa50a8114db7a4e95c5cb29a283ac4, type: 3} + propertyPath: m_LocalEulerAnglesHint.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 400012, guid: d3aa50a8114db7a4e95c5cb29a283ac4, type: 3} + propertyPath: m_LocalEulerAnglesHint.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 400012, guid: d3aa50a8114db7a4e95c5cb29a283ac4, type: 3} + propertyPath: m_LocalEulerAnglesHint.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 9500000, guid: d3aa50a8114db7a4e95c5cb29a283ac4, type: 3} + propertyPath: m_Controller + value: + objectReference: {fileID: 9100000, guid: 678b1708dcb87c04994825ee7d83f0b9, type: 2} + - target: {fileID: 9500000, guid: d3aa50a8114db7a4e95c5cb29a283ac4, type: 3} + propertyPath: m_UpdateMode + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 13700000, guid: d3aa50a8114db7a4e95c5cb29a283ac4, type: 3} + propertyPath: m_Materials.Array.data[0] + value: + objectReference: {fileID: 2100000, guid: 5304db1f3e113764fae919908740f4ba, type: 2} + m_RemovedComponents: [] + m_SourcePrefab: {fileID: 100100000, guid: d3aa50a8114db7a4e95c5cb29a283ac4, type: 3} +--- !u!4 &3324499785191585871 stripped +Transform: + m_CorrespondingSourceObject: {fileID: 400020, guid: d3aa50a8114db7a4e95c5cb29a283ac4, + type: 3} + m_PrefabInstance: {fileID: 3324499785191449307} + m_PrefabAsset: {fileID: 0} +--- !u!4 &3324499785191585879 stripped +Transform: + m_CorrespondingSourceObject: {fileID: 400012, guid: d3aa50a8114db7a4e95c5cb29a283ac4, + type: 3} + m_PrefabInstance: {fileID: 3324499785191449307} + m_PrefabAsset: {fileID: 0} +--- !u!4 &3324499785191585881 stripped +Transform: + m_CorrespondingSourceObject: {fileID: 400002, guid: d3aa50a8114db7a4e95c5cb29a283ac4, + type: 3} + m_PrefabInstance: {fileID: 3324499785191449307} + m_PrefabAsset: {fileID: 0} +--- !u!1001 &4535926174995064300 +PrefabInstance: + m_ObjectHideFlags: 0 + serializedVersion: 2 + m_Modification: + m_TransformParent: {fileID: 3763822634849867143} + m_Modifications: + - target: {fileID: 100006, guid: 305a556307b36464395aa157cffcd3db, type: 3} + propertyPath: m_Name + value: KartWheels + objectReference: {fileID: 0} + - target: {fileID: 100014, guid: 305a556307b36464395aa157cffcd3db, type: 3} + propertyPath: m_Name + value: WheelRearLeft + objectReference: {fileID: 0} + - target: {fileID: 100016, guid: 305a556307b36464395aa157cffcd3db, type: 3} + propertyPath: m_Name + value: WheelRearRight + objectReference: {fileID: 0} + - target: {fileID: 400006, guid: 305a556307b36464395aa157cffcd3db, type: 3} + propertyPath: m_LocalPosition.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 400006, guid: 305a556307b36464395aa157cffcd3db, type: 3} + propertyPath: m_LocalPosition.y + value: -0.5 + objectReference: {fileID: 0} + - target: {fileID: 400006, guid: 305a556307b36464395aa157cffcd3db, type: 3} + propertyPath: m_LocalPosition.z + value: 0.11 + objectReference: {fileID: 0} + - target: {fileID: 400006, guid: 305a556307b36464395aa157cffcd3db, type: 3} + propertyPath: m_LocalRotation.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 400006, guid: 305a556307b36464395aa157cffcd3db, type: 3} + propertyPath: m_LocalRotation.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 400006, guid: 305a556307b36464395aa157cffcd3db, type: 3} + propertyPath: m_LocalRotation.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 400006, guid: 305a556307b36464395aa157cffcd3db, type: 3} + propertyPath: m_LocalRotation.w + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 400006, guid: 305a556307b36464395aa157cffcd3db, type: 3} + propertyPath: m_RootOrder + value: 7 + objectReference: {fileID: 0} + - target: {fileID: 400006, guid: 305a556307b36464395aa157cffcd3db, type: 3} + propertyPath: m_LocalEulerAnglesHint.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 400006, guid: 305a556307b36464395aa157cffcd3db, type: 3} + propertyPath: m_LocalEulerAnglesHint.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 400006, guid: 305a556307b36464395aa157cffcd3db, type: 3} + propertyPath: m_LocalEulerAnglesHint.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 2300004, guid: 305a556307b36464395aa157cffcd3db, type: 3} + propertyPath: m_Materials.Array.data[0] + value: + objectReference: {fileID: 2100000, guid: 5304db1f3e113764fae919908740f4ba, type: 2} + - target: {fileID: 2300006, guid: 305a556307b36464395aa157cffcd3db, type: 3} + propertyPath: m_Materials.Array.data[0] + value: + objectReference: {fileID: 2100000, guid: 5304db1f3e113764fae919908740f4ba, type: 2} + - target: {fileID: 2300000, guid: 305a556307b36464395aa157cffcd3db, type: 3} + propertyPath: m_Materials.Array.data[0] + value: + objectReference: {fileID: 2100000, guid: 5304db1f3e113764fae919908740f4ba, type: 2} + - target: {fileID: 2300002, guid: 305a556307b36464395aa157cffcd3db, type: 3} + propertyPath: m_Materials.Array.data[0] + value: + objectReference: {fileID: 2100000, guid: 5304db1f3e113764fae919908740f4ba, type: 2} + m_RemovedComponents: [] + m_SourcePrefab: {fileID: 100100000, guid: 305a556307b36464395aa157cffcd3db, type: 3} +--- !u!4 &4535926174995201898 stripped +Transform: + m_CorrespondingSourceObject: {fileID: 400006, guid: 305a556307b36464395aa157cffcd3db, + type: 3} + m_PrefabInstance: {fileID: 4535926174995064300} + m_PrefabAsset: {fileID: 0} +--- !u!4 &4535926174995201894 stripped +Transform: + m_CorrespondingSourceObject: {fileID: 400010, guid: 305a556307b36464395aa157cffcd3db, + type: 3} + m_PrefabInstance: {fileID: 4535926174995064300} + m_PrefabAsset: {fileID: 0} +--- !u!4 &4535926174995201888 stripped +Transform: + m_CorrespondingSourceObject: {fileID: 400012, guid: 305a556307b36464395aa157cffcd3db, + type: 3} + m_PrefabInstance: {fileID: 4535926174995064300} + m_PrefabAsset: {fileID: 0} +--- !u!4 &4535926174995201890 stripped +Transform: + m_CorrespondingSourceObject: {fileID: 400014, guid: 305a556307b36464395aa157cffcd3db, + type: 3} + m_PrefabInstance: {fileID: 4535926174995064300} + m_PrefabAsset: {fileID: 0} +--- !u!4 &4535926174995201916 stripped +Transform: + m_CorrespondingSourceObject: {fileID: 400016, guid: 305a556307b36464395aa157cffcd3db, + type: 3} + m_PrefabInstance: {fileID: 4535926174995064300} + m_PrefabAsset: {fileID: 0} +--- !u!1001 &6879967379952776900 +PrefabInstance: + m_ObjectHideFlags: 0 + serializedVersion: 2 + m_Modification: + m_TransformParent: {fileID: 3324499785191585881} + m_Modifications: + - target: {fileID: 100064, guid: 6efe54ae207d7bb46a4adca3c0143126, type: 3} + propertyPath: m_Name + value: Player + objectReference: {fileID: 0} + - target: {fileID: 9500000, guid: 6efe54ae207d7bb46a4adca3c0143126, type: 3} + propertyPath: m_Controller + value: + objectReference: {fileID: 9100000, guid: ab458ec2a2353d24383fa19e3c111939, type: 2} + - target: {fileID: 9500000, guid: 6efe54ae207d7bb46a4adca3c0143126, type: 3} + propertyPath: m_UpdateMode + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 400064, guid: 6efe54ae207d7bb46a4adca3c0143126, type: 3} + propertyPath: m_LocalPosition.x + value: -0.078 + objectReference: {fileID: 0} + - target: {fileID: 400064, guid: 6efe54ae207d7bb46a4adca3c0143126, type: 3} + propertyPath: m_LocalPosition.y + value: -0.1 + objectReference: {fileID: 0} + - target: {fileID: 400064, guid: 6efe54ae207d7bb46a4adca3c0143126, type: 3} + propertyPath: m_LocalPosition.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 400064, guid: 6efe54ae207d7bb46a4adca3c0143126, type: 3} + propertyPath: m_LocalRotation.x + value: 0.0007541932 + objectReference: {fileID: 0} + - target: {fileID: 400064, guid: 6efe54ae207d7bb46a4adca3c0143126, type: 3} + propertyPath: m_LocalRotation.y + value: 0.7071064 + objectReference: {fileID: 0} + - target: {fileID: 400064, guid: 6efe54ae207d7bb46a4adca3c0143126, type: 3} + propertyPath: m_LocalRotation.z + value: -0.0007541932 + objectReference: {fileID: 0} + - target: {fileID: 400064, guid: 6efe54ae207d7bb46a4adca3c0143126, type: 3} + propertyPath: m_LocalRotation.w + value: 0.7071064 + objectReference: {fileID: 0} + - target: {fileID: 400064, guid: 6efe54ae207d7bb46a4adca3c0143126, type: 3} + propertyPath: m_RootOrder + value: 3 + objectReference: {fileID: 0} + - target: {fileID: 400064, guid: 6efe54ae207d7bb46a4adca3c0143126, type: 3} + propertyPath: m_LocalEulerAnglesHint.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 400064, guid: 6efe54ae207d7bb46a4adca3c0143126, type: 3} + propertyPath: m_LocalEulerAnglesHint.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 400064, guid: 6efe54ae207d7bb46a4adca3c0143126, type: 3} + propertyPath: m_LocalEulerAnglesHint.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 400122, guid: 6efe54ae207d7bb46a4adca3c0143126, type: 3} + propertyPath: m_LocalRotation.x + value: -0 + objectReference: {fileID: 0} + - target: {fileID: 400122, guid: 6efe54ae207d7bb46a4adca3c0143126, type: 3} + propertyPath: m_LocalPosition.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 400004, guid: 6efe54ae207d7bb46a4adca3c0143126, type: 3} + propertyPath: m_LocalRotation.x + value: 0.7012215 + objectReference: {fileID: 0} + - target: {fileID: 400004, guid: 6efe54ae207d7bb46a4adca3c0143126, type: 3} + propertyPath: m_LocalRotation.y + value: 0.70121515 + objectReference: {fileID: 0} + - target: {fileID: 400004, guid: 6efe54ae207d7bb46a4adca3c0143126, type: 3} + propertyPath: m_LocalRotation.z + value: 0.09104071 + objectReference: {fileID: 0} + - target: {fileID: 400004, guid: 6efe54ae207d7bb46a4adca3c0143126, type: 3} + propertyPath: m_LocalRotation.w + value: -0.091089815 + objectReference: {fileID: 0} + - target: {fileID: 400004, guid: 6efe54ae207d7bb46a4adca3c0143126, type: 3} + propertyPath: m_LocalPosition.x + value: -1.8688842e-14 + objectReference: {fileID: 0} + - target: {fileID: 400004, guid: 6efe54ae207d7bb46a4adca3c0143126, type: 3} + propertyPath: m_LocalPosition.y + value: 0.30458674 + objectReference: {fileID: 0} + - target: {fileID: 400004, guid: 6efe54ae207d7bb46a4adca3c0143126, type: 3} + propertyPath: m_LocalPosition.z + value: -0.1541091 + objectReference: {fileID: 0} + - target: {fileID: 400084, guid: 6efe54ae207d7bb46a4adca3c0143126, type: 3} + propertyPath: m_LocalRotation.x + value: 0.78036547 + objectReference: {fileID: 0} + - target: {fileID: 400084, guid: 6efe54ae207d7bb46a4adca3c0143126, type: 3} + propertyPath: m_LocalRotation.y + value: 0.34045336 + objectReference: {fileID: 0} + - target: {fileID: 400084, guid: 6efe54ae207d7bb46a4adca3c0143126, type: 3} + propertyPath: m_LocalRotation.z + value: -0.48425096 + objectReference: {fileID: 0} + - target: {fileID: 400084, guid: 6efe54ae207d7bb46a4adca3c0143126, type: 3} + propertyPath: m_LocalRotation.w + value: 0.2015499 + objectReference: {fileID: 0} + - target: {fileID: 400124, guid: 6efe54ae207d7bb46a4adca3c0143126, type: 3} + propertyPath: m_LocalRotation.x + value: 0.008652194 + objectReference: {fileID: 0} + - target: {fileID: 400124, guid: 6efe54ae207d7bb46a4adca3c0143126, type: 3} + propertyPath: m_LocalRotation.y + value: -0.3712492 + objectReference: {fileID: 0} + - target: {fileID: 400124, guid: 6efe54ae207d7bb46a4adca3c0143126, type: 3} + propertyPath: m_LocalRotation.z + value: 0.005442949 + objectReference: {fileID: 0} + - target: {fileID: 400124, guid: 6efe54ae207d7bb46a4adca3c0143126, type: 3} + propertyPath: m_LocalRotation.w + value: 0.928477 + objectReference: {fileID: 0} + - target: {fileID: 400124, guid: 6efe54ae207d7bb46a4adca3c0143126, type: 3} + propertyPath: m_LocalPosition.y + value: -0.0000013626764 + objectReference: {fileID: 0} + - target: {fileID: 400124, guid: 6efe54ae207d7bb46a4adca3c0143126, type: 3} + propertyPath: m_LocalPosition.z + value: -0.0000022390163 + objectReference: {fileID: 0} + - target: {fileID: 400024, guid: 6efe54ae207d7bb46a4adca3c0143126, type: 3} + propertyPath: m_LocalRotation.x + value: 0.5104622 + objectReference: {fileID: 0} + - target: {fileID: 400024, guid: 6efe54ae207d7bb46a4adca3c0143126, type: 3} + propertyPath: m_LocalRotation.y + value: -0.14904538 + objectReference: {fileID: 0} + - target: {fileID: 400024, guid: 6efe54ae207d7bb46a4adca3c0143126, type: 3} + propertyPath: m_LocalRotation.z + value: 0.80490845 + objectReference: {fileID: 0} + - target: {fileID: 400024, guid: 6efe54ae207d7bb46a4adca3c0143126, type: 3} + propertyPath: m_LocalRotation.w + value: 0.26331764 + objectReference: {fileID: 0} + - target: {fileID: 13700000, guid: 6efe54ae207d7bb46a4adca3c0143126, type: 3} + propertyPath: m_Materials.Array.data[0] + value: + objectReference: {fileID: 2100000, guid: 5304db1f3e113764fae919908740f4ba, type: 2} + - target: {fileID: 400068, guid: 6efe54ae207d7bb46a4adca3c0143126, type: 3} + propertyPath: m_LocalRotation.x + value: 2.699595e-17 + objectReference: {fileID: 0} + - target: {fileID: 400068, guid: 6efe54ae207d7bb46a4adca3c0143126, type: 3} + propertyPath: m_LocalRotation.y + value: -0.42232826 + objectReference: {fileID: 0} + - target: {fileID: 400068, guid: 6efe54ae207d7bb46a4adca3c0143126, type: 3} + propertyPath: m_LocalRotation.z + value: -8.902986e-19 + objectReference: {fileID: 0} + - target: {fileID: 400068, guid: 6efe54ae207d7bb46a4adca3c0143126, type: 3} + propertyPath: m_LocalRotation.w + value: 0.90644294 + objectReference: {fileID: 0} + - target: {fileID: 400126, guid: 6efe54ae207d7bb46a4adca3c0143126, type: 3} + propertyPath: m_LocalRotation.x + value: 0.632592 + objectReference: {fileID: 0} + - target: {fileID: 400126, guid: 6efe54ae207d7bb46a4adca3c0143126, type: 3} + propertyPath: m_LocalRotation.y + value: 0.19986922 + objectReference: {fileID: 0} + - target: {fileID: 400126, guid: 6efe54ae207d7bb46a4adca3c0143126, type: 3} + propertyPath: m_LocalRotation.z + value: -0.20108686 + objectReference: {fileID: 0} + - target: {fileID: 400126, guid: 6efe54ae207d7bb46a4adca3c0143126, type: 3} + propertyPath: m_LocalRotation.w + value: 0.7207245 + objectReference: {fileID: 0} + - target: {fileID: 400126, guid: 6efe54ae207d7bb46a4adca3c0143126, type: 3} + propertyPath: m_LocalPosition.y + value: -0.0000000011114049 + objectReference: {fileID: 0} + - target: {fileID: 400126, guid: 6efe54ae207d7bb46a4adca3c0143126, type: 3} + propertyPath: m_LocalPosition.z + value: -0.0068833283 + objectReference: {fileID: 0} + - target: {fileID: 400008, guid: 6efe54ae207d7bb46a4adca3c0143126, type: 3} + propertyPath: m_LocalRotation.x + value: -2.3452552e-17 + objectReference: {fileID: 0} + - target: {fileID: 400008, guid: 6efe54ae207d7bb46a4adca3c0143126, type: 3} + propertyPath: m_LocalRotation.y + value: -0.4262383 + objectReference: {fileID: 0} + - target: {fileID: 400008, guid: 6efe54ae207d7bb46a4adca3c0143126, type: 3} + propertyPath: m_LocalRotation.z + value: -4.9773648e-17 + objectReference: {fileID: 0} + - target: {fileID: 400008, guid: 6efe54ae207d7bb46a4adca3c0143126, type: 3} + propertyPath: m_LocalRotation.w + value: 0.90461093 + objectReference: {fileID: 0} + - target: {fileID: 400070, guid: 6efe54ae207d7bb46a4adca3c0143126, type: 3} + propertyPath: m_LocalRotation.x + value: 0.26916867 + objectReference: {fileID: 0} + - target: {fileID: 400070, guid: 6efe54ae207d7bb46a4adca3c0143126, type: 3} + propertyPath: m_LocalRotation.y + value: 0.038617406 + objectReference: {fileID: 0} + - target: {fileID: 400070, guid: 6efe54ae207d7bb46a4adca3c0143126, type: 3} + propertyPath: m_LocalRotation.z + value: -0.13820164 + objectReference: {fileID: 0} + - target: {fileID: 400070, guid: 6efe54ae207d7bb46a4adca3c0143126, type: 3} + propertyPath: m_LocalRotation.w + value: 0.95234305 + objectReference: {fileID: 0} + - target: {fileID: 400110, guid: 6efe54ae207d7bb46a4adca3c0143126, type: 3} + propertyPath: m_LocalRotation.x + value: -0.5195666 + objectReference: {fileID: 0} + - target: {fileID: 400110, guid: 6efe54ae207d7bb46a4adca3c0143126, type: 3} + propertyPath: m_LocalRotation.y + value: 0.44315237 + objectReference: {fileID: 0} + - target: {fileID: 400110, guid: 6efe54ae207d7bb46a4adca3c0143126, type: 3} + propertyPath: m_LocalRotation.z + value: 0.33858368 + objectReference: {fileID: 0} + - target: {fileID: 400110, guid: 6efe54ae207d7bb46a4adca3c0143126, type: 3} + propertyPath: m_LocalRotation.w + value: 0.6473234 + objectReference: {fileID: 0} + - target: {fileID: 400010, guid: 6efe54ae207d7bb46a4adca3c0143126, type: 3} + propertyPath: m_LocalRotation.x + value: 0.11886923 + objectReference: {fileID: 0} + - target: {fileID: 400010, guid: 6efe54ae207d7bb46a4adca3c0143126, type: 3} + propertyPath: m_LocalRotation.y + value: 0.061843295 + objectReference: {fileID: 0} + - target: {fileID: 400010, guid: 6efe54ae207d7bb46a4adca3c0143126, type: 3} + propertyPath: m_LocalRotation.z + value: -0.09283403 + objectReference: {fileID: 0} + - target: {fileID: 400010, guid: 6efe54ae207d7bb46a4adca3c0143126, type: 3} + propertyPath: m_LocalRotation.w + value: 0.98662424 + objectReference: {fileID: 0} + - target: {fileID: 400050, guid: 6efe54ae207d7bb46a4adca3c0143126, type: 3} + propertyPath: m_LocalRotation.x + value: -0.5095255 + objectReference: {fileID: 0} + - target: {fileID: 400050, guid: 6efe54ae207d7bb46a4adca3c0143126, type: 3} + propertyPath: m_LocalRotation.y + value: -0.5346188 + objectReference: {fileID: 0} + - target: {fileID: 400050, guid: 6efe54ae207d7bb46a4adca3c0143126, type: 3} + propertyPath: m_LocalRotation.z + value: 0.59525466 + objectReference: {fileID: 0} + - target: {fileID: 400050, guid: 6efe54ae207d7bb46a4adca3c0143126, type: 3} + propertyPath: m_LocalRotation.w + value: -0.31660452 + objectReference: {fileID: 0} + - target: {fileID: 400066, guid: 6efe54ae207d7bb46a4adca3c0143126, type: 3} + propertyPath: m_LocalRotation.x + value: 0.014586552 + objectReference: {fileID: 0} + - target: {fileID: 400066, guid: 6efe54ae207d7bb46a4adca3c0143126, type: 3} + propertyPath: m_LocalRotation.y + value: 0.4037926 + objectReference: {fileID: 0} + - target: {fileID: 400066, guid: 6efe54ae207d7bb46a4adca3c0143126, type: 3} + propertyPath: m_LocalRotation.z + value: 0.43102396 + objectReference: {fileID: 0} + - target: {fileID: 400066, guid: 6efe54ae207d7bb46a4adca3c0143126, type: 3} + propertyPath: m_LocalRotation.w + value: 0.80681914 + objectReference: {fileID: 0} + - target: {fileID: 400006, guid: 6efe54ae207d7bb46a4adca3c0143126, type: 3} + propertyPath: m_LocalRotation.x + value: 0.052866876 + objectReference: {fileID: 0} + - target: {fileID: 400006, guid: 6efe54ae207d7bb46a4adca3c0143126, type: 3} + propertyPath: m_LocalRotation.y + value: 0.44983706 + objectReference: {fileID: 0} + - target: {fileID: 400006, guid: 6efe54ae207d7bb46a4adca3c0143126, type: 3} + propertyPath: m_LocalRotation.z + value: 0.26028967 + objectReference: {fileID: 0} + - target: {fileID: 400006, guid: 6efe54ae207d7bb46a4adca3c0143126, type: 3} + propertyPath: m_LocalRotation.w + value: 0.8527022 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 6efe54ae207d7bb46a4adca3c0143126, type: 3} + propertyPath: m_LocalRotation.x + value: 0.0029122853 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 6efe54ae207d7bb46a4adca3c0143126, type: 3} + propertyPath: m_LocalRotation.y + value: 0.0031553304 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 6efe54ae207d7bb46a4adca3c0143126, type: 3} + propertyPath: m_LocalRotation.z + value: 0.4310108 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 6efe54ae207d7bb46a4adca3c0143126, type: 3} + propertyPath: m_LocalRotation.w + value: 0.9023366 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 6efe54ae207d7bb46a4adca3c0143126, type: 3} + propertyPath: m_LocalPosition.y + value: -0.0000007714819 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 6efe54ae207d7bb46a4adca3c0143126, type: 3} + propertyPath: m_LocalPosition.z + value: -1.8884996e-11 + objectReference: {fileID: 0} + - target: {fileID: 400120, guid: 6efe54ae207d7bb46a4adca3c0143126, type: 3} + propertyPath: m_LocalRotation.x + value: 4.8496956e-16 + objectReference: {fileID: 0} + - target: {fileID: 400120, guid: 6efe54ae207d7bb46a4adca3c0143126, type: 3} + propertyPath: m_LocalRotation.y + value: 0.6049985 + objectReference: {fileID: 0} + - target: {fileID: 400120, guid: 6efe54ae207d7bb46a4adca3c0143126, type: 3} + propertyPath: m_LocalRotation.z + value: -4.701596e-16 + objectReference: {fileID: 0} + - target: {fileID: 400120, guid: 6efe54ae207d7bb46a4adca3c0143126, type: 3} + propertyPath: m_LocalRotation.w + value: 0.79622656 + objectReference: {fileID: 0} + - target: {fileID: 400060, guid: 6efe54ae207d7bb46a4adca3c0143126, type: 3} + propertyPath: m_LocalRotation.x + value: 4.8043206e-16 + objectReference: {fileID: 0} + - target: {fileID: 400060, guid: 6efe54ae207d7bb46a4adca3c0143126, type: 3} + propertyPath: m_LocalRotation.y + value: 0.6266637 + objectReference: {fileID: 0} + - target: {fileID: 400060, guid: 6efe54ae207d7bb46a4adca3c0143126, type: 3} + propertyPath: m_LocalRotation.z + value: -4.7102105e-16 + objectReference: {fileID: 0} + - target: {fileID: 400060, guid: 6efe54ae207d7bb46a4adca3c0143126, type: 3} + propertyPath: m_LocalRotation.w + value: 0.7792899 + objectReference: {fileID: 0} + - target: {fileID: 400074, guid: 6efe54ae207d7bb46a4adca3c0143126, type: 3} + propertyPath: m_LocalRotation.x + value: -0.50224 + objectReference: {fileID: 0} + - target: {fileID: 400074, guid: 6efe54ae207d7bb46a4adca3c0143126, type: 3} + propertyPath: m_LocalRotation.y + value: -0.117825285 + objectReference: {fileID: 0} + - target: {fileID: 400074, guid: 6efe54ae207d7bb46a4adca3c0143126, type: 3} + propertyPath: m_LocalRotation.z + value: -0.0064219926 + objectReference: {fileID: 0} + - target: {fileID: 400074, guid: 6efe54ae207d7bb46a4adca3c0143126, type: 3} + propertyPath: m_LocalRotation.w + value: 0.8566393 + objectReference: {fileID: 0} + - target: {fileID: 400014, guid: 6efe54ae207d7bb46a4adca3c0143126, type: 3} + propertyPath: m_LocalRotation.x + value: -0.56991667 + objectReference: {fileID: 0} + - target: {fileID: 400014, guid: 6efe54ae207d7bb46a4adca3c0143126, type: 3} + propertyPath: m_LocalRotation.y + value: -0.09541154 + objectReference: {fileID: 0} + - target: {fileID: 400014, guid: 6efe54ae207d7bb46a4adca3c0143126, type: 3} + propertyPath: m_LocalRotation.z + value: 0.022180617 + objectReference: {fileID: 0} + - target: {fileID: 400014, guid: 6efe54ae207d7bb46a4adca3c0143126, type: 3} + propertyPath: m_LocalRotation.w + value: 0.8158429 + objectReference: {fileID: 0} + - target: {fileID: 400076, guid: 6efe54ae207d7bb46a4adca3c0143126, type: 3} + propertyPath: m_LocalRotation.x + value: -0.000001668316 + objectReference: {fileID: 0} + - target: {fileID: 400076, guid: 6efe54ae207d7bb46a4adca3c0143126, type: 3} + propertyPath: m_LocalRotation.y + value: 0.000000022353413 + objectReference: {fileID: 0} + - target: {fileID: 400076, guid: 6efe54ae207d7bb46a4adca3c0143126, type: 3} + propertyPath: m_LocalRotation.z + value: 0.4670475 + objectReference: {fileID: 0} + - target: {fileID: 400076, guid: 6efe54ae207d7bb46a4adca3c0143126, type: 3} + propertyPath: m_LocalRotation.w + value: 0.8842323 + objectReference: {fileID: 0} + - target: {fileID: 400086, guid: 6efe54ae207d7bb46a4adca3c0143126, type: 3} + propertyPath: m_LocalRotation.x + value: -0.000001668316 + objectReference: {fileID: 0} + - target: {fileID: 400086, guid: 6efe54ae207d7bb46a4adca3c0143126, type: 3} + propertyPath: m_LocalRotation.y + value: 0.000000022353413 + objectReference: {fileID: 0} + - target: {fileID: 400086, guid: 6efe54ae207d7bb46a4adca3c0143126, type: 3} + propertyPath: m_LocalRotation.z + value: 0.4670475 + objectReference: {fileID: 0} + - target: {fileID: 400086, guid: 6efe54ae207d7bb46a4adca3c0143126, type: 3} + propertyPath: m_LocalRotation.w + value: 0.8842323 + objectReference: {fileID: 0} + - target: {fileID: 400094, guid: 6efe54ae207d7bb46a4adca3c0143126, type: 3} + propertyPath: m_LocalRotation.x + value: -0.000001668316 + objectReference: {fileID: 0} + - target: {fileID: 400094, guid: 6efe54ae207d7bb46a4adca3c0143126, type: 3} + propertyPath: m_LocalRotation.y + value: 0.000000022353413 + objectReference: {fileID: 0} + - target: {fileID: 400094, guid: 6efe54ae207d7bb46a4adca3c0143126, type: 3} + propertyPath: m_LocalRotation.z + value: 0.4670475 + objectReference: {fileID: 0} + - target: {fileID: 400094, guid: 6efe54ae207d7bb46a4adca3c0143126, type: 3} + propertyPath: m_LocalRotation.w + value: 0.8842323 + objectReference: {fileID: 0} + - target: {fileID: 400102, guid: 6efe54ae207d7bb46a4adca3c0143126, type: 3} + propertyPath: m_LocalRotation.x + value: -0.000001668316 + objectReference: {fileID: 0} + - target: {fileID: 400102, guid: 6efe54ae207d7bb46a4adca3c0143126, type: 3} + propertyPath: m_LocalRotation.y + value: 0.000000022353413 + objectReference: {fileID: 0} + - target: {fileID: 400102, guid: 6efe54ae207d7bb46a4adca3c0143126, type: 3} + propertyPath: m_LocalRotation.z + value: 0.4670475 + objectReference: {fileID: 0} + - target: {fileID: 400102, guid: 6efe54ae207d7bb46a4adca3c0143126, type: 3} + propertyPath: m_LocalRotation.w + value: 0.8842323 + objectReference: {fileID: 0} + - target: {fileID: 400112, guid: 6efe54ae207d7bb46a4adca3c0143126, type: 3} + propertyPath: m_LocalRotation.x + value: 0.4547099 + objectReference: {fileID: 0} + - target: {fileID: 400112, guid: 6efe54ae207d7bb46a4adca3c0143126, type: 3} + propertyPath: m_LocalRotation.y + value: 0.33484873 + objectReference: {fileID: 0} + - target: {fileID: 400112, guid: 6efe54ae207d7bb46a4adca3c0143126, type: 3} + propertyPath: m_LocalRotation.z + value: 0.22077377 + objectReference: {fileID: 0} + - target: {fileID: 400112, guid: 6efe54ae207d7bb46a4adca3c0143126, type: 3} + propertyPath: m_LocalRotation.w + value: 0.7952196 + objectReference: {fileID: 0} + - target: {fileID: 400016, guid: 6efe54ae207d7bb46a4adca3c0143126, type: 3} + propertyPath: m_LocalRotation.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 400016, guid: 6efe54ae207d7bb46a4adca3c0143126, type: 3} + propertyPath: m_LocalRotation.z + value: 0.3190913 + objectReference: {fileID: 0} + - target: {fileID: 400016, guid: 6efe54ae207d7bb46a4adca3c0143126, type: 3} + propertyPath: m_LocalRotation.w + value: 0.947724 + objectReference: {fileID: 0} + - target: {fileID: 400026, guid: 6efe54ae207d7bb46a4adca3c0143126, type: 3} + propertyPath: m_LocalRotation.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 400026, guid: 6efe54ae207d7bb46a4adca3c0143126, type: 3} + propertyPath: m_LocalRotation.z + value: 0.3874036 + objectReference: {fileID: 0} + - target: {fileID: 400026, guid: 6efe54ae207d7bb46a4adca3c0143126, type: 3} + propertyPath: m_LocalRotation.w + value: 0.9219102 + objectReference: {fileID: 0} + - target: {fileID: 400034, guid: 6efe54ae207d7bb46a4adca3c0143126, type: 3} + propertyPath: m_LocalRotation.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 400034, guid: 6efe54ae207d7bb46a4adca3c0143126, type: 3} + propertyPath: m_LocalRotation.z + value: 0.3874036 + objectReference: {fileID: 0} + - target: {fileID: 400034, guid: 6efe54ae207d7bb46a4adca3c0143126, type: 3} + propertyPath: m_LocalRotation.w + value: 0.9219102 + objectReference: {fileID: 0} + - target: {fileID: 400042, guid: 6efe54ae207d7bb46a4adca3c0143126, type: 3} + propertyPath: m_LocalRotation.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 400042, guid: 6efe54ae207d7bb46a4adca3c0143126, type: 3} + propertyPath: m_LocalRotation.z + value: 0.3874036 + objectReference: {fileID: 0} + - target: {fileID: 400042, guid: 6efe54ae207d7bb46a4adca3c0143126, type: 3} + propertyPath: m_LocalRotation.w + value: 0.9219102 + objectReference: {fileID: 0} + - target: {fileID: 400052, guid: 6efe54ae207d7bb46a4adca3c0143126, type: 3} + propertyPath: m_LocalRotation.x + value: 0.18417436 + objectReference: {fileID: 0} + - target: {fileID: 400052, guid: 6efe54ae207d7bb46a4adca3c0143126, type: 3} + propertyPath: m_LocalRotation.y + value: 0.15395348 + objectReference: {fileID: 0} + - target: {fileID: 400052, guid: 6efe54ae207d7bb46a4adca3c0143126, type: 3} + propertyPath: m_LocalRotation.z + value: 0.25608242 + objectReference: {fileID: 0} + - target: {fileID: 400052, guid: 6efe54ae207d7bb46a4adca3c0143126, type: 3} + propertyPath: m_LocalRotation.w + value: 0.936376 + objectReference: {fileID: 0} + - target: {fileID: 400078, guid: 6efe54ae207d7bb46a4adca3c0143126, type: 3} + propertyPath: m_LocalRotation.x + value: -0.000001113893 + objectReference: {fileID: 0} + - target: {fileID: 400078, guid: 6efe54ae207d7bb46a4adca3c0143126, type: 3} + propertyPath: m_LocalRotation.y + value: -0.000000015427592 + objectReference: {fileID: 0} + - target: {fileID: 400078, guid: 6efe54ae207d7bb46a4adca3c0143126, type: 3} + propertyPath: m_LocalRotation.z + value: 0.3057595 + objectReference: {fileID: 0} + - target: {fileID: 400078, guid: 6efe54ae207d7bb46a4adca3c0143126, type: 3} + propertyPath: m_LocalRotation.w + value: 0.9521088 + objectReference: {fileID: 0} + - target: {fileID: 400088, guid: 6efe54ae207d7bb46a4adca3c0143126, type: 3} + propertyPath: m_LocalRotation.x + value: -0.000001668316 + objectReference: {fileID: 0} + - target: {fileID: 400088, guid: 6efe54ae207d7bb46a4adca3c0143126, type: 3} + propertyPath: m_LocalRotation.y + value: 0.000000022353413 + objectReference: {fileID: 0} + - target: {fileID: 400088, guid: 6efe54ae207d7bb46a4adca3c0143126, type: 3} + propertyPath: m_LocalRotation.z + value: 0.4670475 + objectReference: {fileID: 0} + - target: {fileID: 400088, guid: 6efe54ae207d7bb46a4adca3c0143126, type: 3} + propertyPath: m_LocalRotation.w + value: 0.8842323 + objectReference: {fileID: 0} + - target: {fileID: 400096, guid: 6efe54ae207d7bb46a4adca3c0143126, type: 3} + propertyPath: m_LocalRotation.x + value: -0.000001668316 + objectReference: {fileID: 0} + - target: {fileID: 400096, guid: 6efe54ae207d7bb46a4adca3c0143126, type: 3} + propertyPath: m_LocalRotation.y + value: 0.000000022353413 + objectReference: {fileID: 0} + - target: {fileID: 400096, guid: 6efe54ae207d7bb46a4adca3c0143126, type: 3} + propertyPath: m_LocalRotation.z + value: 0.4670475 + objectReference: {fileID: 0} + - target: {fileID: 400096, guid: 6efe54ae207d7bb46a4adca3c0143126, type: 3} + propertyPath: m_LocalRotation.w + value: 0.8842323 + objectReference: {fileID: 0} + - target: {fileID: 400104, guid: 6efe54ae207d7bb46a4adca3c0143126, type: 3} + propertyPath: m_LocalRotation.x + value: -0.000001668316 + objectReference: {fileID: 0} + - target: {fileID: 400104, guid: 6efe54ae207d7bb46a4adca3c0143126, type: 3} + propertyPath: m_LocalRotation.y + value: 0.000000022353413 + objectReference: {fileID: 0} + - target: {fileID: 400104, guid: 6efe54ae207d7bb46a4adca3c0143126, type: 3} + propertyPath: m_LocalRotation.z + value: 0.4670475 + objectReference: {fileID: 0} + - target: {fileID: 400104, guid: 6efe54ae207d7bb46a4adca3c0143126, type: 3} + propertyPath: m_LocalRotation.w + value: 0.8842323 + objectReference: {fileID: 0} + - target: {fileID: 400114, guid: 6efe54ae207d7bb46a4adca3c0143126, type: 3} + propertyPath: m_LocalRotation.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 400114, guid: 6efe54ae207d7bb46a4adca3c0143126, type: 3} + propertyPath: m_LocalRotation.y + value: 0.13602386 + objectReference: {fileID: 0} + - target: {fileID: 400114, guid: 6efe54ae207d7bb46a4adca3c0143126, type: 3} + propertyPath: m_LocalRotation.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 400114, guid: 6efe54ae207d7bb46a4adca3c0143126, type: 3} + propertyPath: m_LocalRotation.w + value: 0.9907056 + objectReference: {fileID: 0} + - target: {fileID: 400018, guid: 6efe54ae207d7bb46a4adca3c0143126, type: 3} + propertyPath: m_LocalRotation.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 400018, guid: 6efe54ae207d7bb46a4adca3c0143126, type: 3} + propertyPath: m_LocalRotation.z + value: 0.3190913 + objectReference: {fileID: 0} + - target: {fileID: 400018, guid: 6efe54ae207d7bb46a4adca3c0143126, type: 3} + propertyPath: m_LocalRotation.w + value: 0.947724 + objectReference: {fileID: 0} + - target: {fileID: 400028, guid: 6efe54ae207d7bb46a4adca3c0143126, type: 3} + propertyPath: m_LocalRotation.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 400028, guid: 6efe54ae207d7bb46a4adca3c0143126, type: 3} + propertyPath: m_LocalRotation.z + value: 0.3874036 + objectReference: {fileID: 0} + - target: {fileID: 400028, guid: 6efe54ae207d7bb46a4adca3c0143126, type: 3} + propertyPath: m_LocalRotation.w + value: 0.9219102 + objectReference: {fileID: 0} + - target: {fileID: 400036, guid: 6efe54ae207d7bb46a4adca3c0143126, type: 3} + propertyPath: m_LocalRotation.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 400036, guid: 6efe54ae207d7bb46a4adca3c0143126, type: 3} + propertyPath: m_LocalRotation.z + value: 0.3874036 + objectReference: {fileID: 0} + - target: {fileID: 400036, guid: 6efe54ae207d7bb46a4adca3c0143126, type: 3} + propertyPath: m_LocalRotation.w + value: 0.9219102 + objectReference: {fileID: 0} + - target: {fileID: 400044, guid: 6efe54ae207d7bb46a4adca3c0143126, type: 3} + propertyPath: m_LocalRotation.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 400044, guid: 6efe54ae207d7bb46a4adca3c0143126, type: 3} + propertyPath: m_LocalRotation.z + value: 0.3874036 + objectReference: {fileID: 0} + - target: {fileID: 400044, guid: 6efe54ae207d7bb46a4adca3c0143126, type: 3} + propertyPath: m_LocalRotation.w + value: 0.9219102 + objectReference: {fileID: 0} + - target: {fileID: 400054, guid: 6efe54ae207d7bb46a4adca3c0143126, type: 3} + propertyPath: m_LocalRotation.y + value: 0.113585345 + objectReference: {fileID: 0} + - target: {fileID: 400054, guid: 6efe54ae207d7bb46a4adca3c0143126, type: 3} + propertyPath: m_LocalRotation.w + value: 0.99352825 + objectReference: {fileID: 0} + - target: {fileID: 400080, guid: 6efe54ae207d7bb46a4adca3c0143126, type: 3} + propertyPath: m_LocalRotation.x + value: -0.000001113893 + objectReference: {fileID: 0} + - target: {fileID: 400080, guid: 6efe54ae207d7bb46a4adca3c0143126, type: 3} + propertyPath: m_LocalRotation.y + value: -0.000000015427592 + objectReference: {fileID: 0} + - target: {fileID: 400080, guid: 6efe54ae207d7bb46a4adca3c0143126, type: 3} + propertyPath: m_LocalRotation.z + value: 0.3057595 + objectReference: {fileID: 0} + - target: {fileID: 400080, guid: 6efe54ae207d7bb46a4adca3c0143126, type: 3} + propertyPath: m_LocalRotation.w + value: 0.9521088 + objectReference: {fileID: 0} + - target: {fileID: 400090, guid: 6efe54ae207d7bb46a4adca3c0143126, type: 3} + propertyPath: m_LocalRotation.x + value: -0.000001668316 + objectReference: {fileID: 0} + - target: {fileID: 400090, guid: 6efe54ae207d7bb46a4adca3c0143126, type: 3} + propertyPath: m_LocalRotation.y + value: 0.000000022353413 + objectReference: {fileID: 0} + - target: {fileID: 400090, guid: 6efe54ae207d7bb46a4adca3c0143126, type: 3} + propertyPath: m_LocalRotation.z + value: 0.4670475 + objectReference: {fileID: 0} + - target: {fileID: 400090, guid: 6efe54ae207d7bb46a4adca3c0143126, type: 3} + propertyPath: m_LocalRotation.w + value: 0.8842323 + objectReference: {fileID: 0} + - target: {fileID: 400098, guid: 6efe54ae207d7bb46a4adca3c0143126, type: 3} + propertyPath: m_LocalRotation.x + value: -0.000001668316 + objectReference: {fileID: 0} + - target: {fileID: 400098, guid: 6efe54ae207d7bb46a4adca3c0143126, type: 3} + propertyPath: m_LocalRotation.y + value: 0.000000022353413 + objectReference: {fileID: 0} + - target: {fileID: 400098, guid: 6efe54ae207d7bb46a4adca3c0143126, type: 3} + propertyPath: m_LocalRotation.z + value: 0.4670475 + objectReference: {fileID: 0} + - target: {fileID: 400098, guid: 6efe54ae207d7bb46a4adca3c0143126, type: 3} + propertyPath: m_LocalRotation.w + value: 0.8842323 + objectReference: {fileID: 0} + - target: {fileID: 400106, guid: 6efe54ae207d7bb46a4adca3c0143126, type: 3} + propertyPath: m_LocalRotation.x + value: -0.000001668316 + objectReference: {fileID: 0} + - target: {fileID: 400106, guid: 6efe54ae207d7bb46a4adca3c0143126, type: 3} + propertyPath: m_LocalRotation.y + value: 0.000000022353413 + objectReference: {fileID: 0} + - target: {fileID: 400106, guid: 6efe54ae207d7bb46a4adca3c0143126, type: 3} + propertyPath: m_LocalRotation.z + value: 0.4670475 + objectReference: {fileID: 0} + - target: {fileID: 400106, guid: 6efe54ae207d7bb46a4adca3c0143126, type: 3} + propertyPath: m_LocalRotation.w + value: 0.8842323 + objectReference: {fileID: 0} + - target: {fileID: 400116, guid: 6efe54ae207d7bb46a4adca3c0143126, type: 3} + propertyPath: m_LocalRotation.x + value: -0.046527695 + objectReference: {fileID: 0} + - target: {fileID: 400116, guid: 6efe54ae207d7bb46a4adca3c0143126, type: 3} + propertyPath: m_LocalRotation.y + value: -0.2048695 + objectReference: {fileID: 0} + - target: {fileID: 400116, guid: 6efe54ae207d7bb46a4adca3c0143126, type: 3} + propertyPath: m_LocalRotation.z + value: 0.2389711 + objectReference: {fileID: 0} + - target: {fileID: 400116, guid: 6efe54ae207d7bb46a4adca3c0143126, type: 3} + propertyPath: m_LocalRotation.w + value: 0.9480277 + objectReference: {fileID: 0} + - target: {fileID: 400020, guid: 6efe54ae207d7bb46a4adca3c0143126, type: 3} + propertyPath: m_LocalRotation.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 400020, guid: 6efe54ae207d7bb46a4adca3c0143126, type: 3} + propertyPath: m_LocalRotation.z + value: 0.3874036 + objectReference: {fileID: 0} + - target: {fileID: 400020, guid: 6efe54ae207d7bb46a4adca3c0143126, type: 3} + propertyPath: m_LocalRotation.w + value: 0.9219102 + objectReference: {fileID: 0} + - target: {fileID: 400030, guid: 6efe54ae207d7bb46a4adca3c0143126, type: 3} + propertyPath: m_LocalRotation.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 400030, guid: 6efe54ae207d7bb46a4adca3c0143126, type: 3} + propertyPath: m_LocalRotation.z + value: 0.3874036 + objectReference: {fileID: 0} + - target: {fileID: 400030, guid: 6efe54ae207d7bb46a4adca3c0143126, type: 3} + propertyPath: m_LocalRotation.w + value: 0.9219102 + objectReference: {fileID: 0} + - target: {fileID: 400038, guid: 6efe54ae207d7bb46a4adca3c0143126, type: 3} + propertyPath: m_LocalRotation.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 400038, guid: 6efe54ae207d7bb46a4adca3c0143126, type: 3} + propertyPath: m_LocalRotation.z + value: 0.3874036 + objectReference: {fileID: 0} + - target: {fileID: 400038, guid: 6efe54ae207d7bb46a4adca3c0143126, type: 3} + propertyPath: m_LocalRotation.w + value: 0.9219102 + objectReference: {fileID: 0} + - target: {fileID: 400046, guid: 6efe54ae207d7bb46a4adca3c0143126, type: 3} + propertyPath: m_LocalRotation.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 400046, guid: 6efe54ae207d7bb46a4adca3c0143126, type: 3} + propertyPath: m_LocalRotation.z + value: 0.3874036 + objectReference: {fileID: 0} + - target: {fileID: 400046, guid: 6efe54ae207d7bb46a4adca3c0143126, type: 3} + propertyPath: m_LocalRotation.w + value: 0.9219102 + objectReference: {fileID: 0} + - target: {fileID: 400056, guid: 6efe54ae207d7bb46a4adca3c0143126, type: 3} + propertyPath: m_LocalRotation.y + value: -0.00005486113 + objectReference: {fileID: 0} + - target: {fileID: 400056, guid: 6efe54ae207d7bb46a4adca3c0143126, type: 3} + propertyPath: m_LocalRotation.z + value: 0 + objectReference: {fileID: 0} + m_RemovedComponents: [] + m_SourcePrefab: {fileID: 100100000, guid: 6efe54ae207d7bb46a4adca3c0143126, type: 3} +--- !u!95 &6879967379960152996 stripped +Animator: + m_CorrespondingSourceObject: {fileID: 9500000, guid: 6efe54ae207d7bb46a4adca3c0143126, + type: 3} + m_PrefabInstance: {fileID: 6879967379952776900} + m_PrefabAsset: {fileID: 0} diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Prefabs/Kart.prefab.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Prefabs/Kart.prefab.meta" new file mode 100644 index 00000000..0fc421b6 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Prefabs/Kart.prefab.meta" @@ -0,0 +1,7 @@ +fileFormatVersion: 2 +guid: 8a2015a9601d162459389c9b9d1437fc +PrefabImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Prefabs/MetaGameController.prefab" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Prefabs/MetaGameController.prefab" new file mode 100644 index 00000000..168a08eb --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Prefabs/MetaGameController.prefab" @@ -0,0 +1,48 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!1 &2791996163294472524 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 4345729122991173098} + - component: {fileID: 493168290947136940} + m_Layer: 0 + m_Name: MetaGameController + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &4345729122991173098 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 2791996163294472524} + m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} + m_LocalPosition: {x: 364.1278, y: 260.1389, z: -9.114405} + m_LocalScale: {x: 1, y: 1, z: 1} + m_Children: [] + m_Father: {fileID: 0} + m_RootOrder: 0 + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!114 &493168290947136940 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 2791996163294472524} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 70f11795bf0cd4fdeb9f0739ce30e21e, type: 3} + m_Name: + m_EditorClassIdentifier: + mainMenu: {fileID: 0} + raceCountdownTrigger: {fileID: 0} + gamePlayCanvasii: [] diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Prefabs/MetaGameController.prefab.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Prefabs/MetaGameController.prefab.meta" new file mode 100644 index 00000000..8495521e --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Prefabs/MetaGameController.prefab.meta" @@ -0,0 +1,7 @@ +fileFormatVersion: 2 +guid: f49f13c9b43d70a46a785e1920e61fd5 +PrefabImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Prefabs/RaceCountdownCanvas.prefab" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Prefabs/RaceCountdownCanvas.prefab" new file mode 100644 index 00000000..56c2c586 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Prefabs/RaceCountdownCanvas.prefab" @@ -0,0 +1,809 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!1 &1344542117541120527 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 1344542117541120524} + - component: {fileID: 1344542117541120513} + - component: {fileID: 1344542117541120514} + m_Layer: 5 + m_Name: ThreeText + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!224 &1344542117541120524 +RectTransform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1344542117541120527} + m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} + m_LocalPosition: {x: 0, y: 0, z: 0} + m_LocalScale: {x: 1, y: 1, z: 1} + m_Children: [] + m_Father: {fileID: 1344542118785669944} + m_RootOrder: 0 + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} + m_AnchorMin: {x: 0, y: 0} + m_AnchorMax: {x: 1, y: 1} + m_AnchoredPosition: {x: 0, y: 0} + m_SizeDelta: {x: 0, y: 0} + m_Pivot: {x: 0.5, y: 0.5} +--- !u!222 &1344542117541120513 +CanvasRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1344542117541120527} + m_CullTransparentMesh: 0 +--- !u!114 &1344542117541120514 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1344542117541120527} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: f4688fdb7df04437aeb418b961361dc5, type: 3} + m_Name: + m_EditorClassIdentifier: + m_Material: {fileID: 0} + m_Color: {r: 1, g: 1, b: 1, a: 1} + m_RaycastTarget: 1 + m_OnCullStateChanged: + m_PersistentCalls: + m_Calls: [] + m_TypeName: UnityEngine.UI.MaskableGraphic+CullStateChangedEvent, UnityEngine.UI, + Version=1.0.0.0, Culture=neutral, PublicKeyToken=null + m_text: 3 + m_isRightToLeft: 0 + m_fontAsset: {fileID: 11400000, guid: 8f586378b4e144a9851e7b34d9b748ee, type: 2} + m_sharedMaterial: {fileID: 2180264, guid: 8f586378b4e144a9851e7b34d9b748ee, type: 2} + m_fontSharedMaterials: [] + m_fontMaterial: {fileID: 0} + m_fontMaterials: [] + m_fontColor32: + serializedVersion: 2 + rgba: 4294967295 + m_fontColor: {r: 1, g: 1, b: 1, a: 1} + m_enableVertexGradient: 0 + m_colorMode: 3 + m_fontColorGradient: + topLeft: {r: 1, g: 1, b: 1, a: 1} + topRight: {r: 1, g: 1, b: 1, a: 1} + bottomLeft: {r: 1, g: 1, b: 1, a: 1} + bottomRight: {r: 1, g: 1, b: 1, a: 1} + m_fontColorGradientPreset: {fileID: 0} + m_spriteAsset: {fileID: 0} + m_tintAllSprites: 0 + m_overrideHtmlColors: 0 + m_faceColor: + serializedVersion: 2 + rgba: 4294967295 + m_outlineColor: + serializedVersion: 2 + rgba: 4278190080 + m_fontSize: 200 + m_fontSizeBase: 200 + m_fontWeight: 400 + m_enableAutoSizing: 0 + m_fontSizeMin: 18 + m_fontSizeMax: 72 + m_fontStyle: 0 + m_textAlignment: 514 + m_isAlignmentEnumConverted: 1 + m_characterSpacing: 0 + m_wordSpacing: 0 + m_lineSpacing: 0 + m_lineSpacingMax: 0 + m_paragraphSpacing: 0 + m_charWidthMaxAdj: 0 + m_enableWordWrapping: 1 + m_wordWrappingRatios: 0.4 + m_overflowMode: 0 + m_firstOverflowCharacterIndex: -1 + m_linkedTextComponent: {fileID: 0} + m_isLinkedTextComponent: 0 + m_isTextTruncated: 0 + m_enableKerning: 1 + m_enableExtraPadding: 0 + checkPaddingRequired: 0 + m_isRichText: 1 + m_parseCtrlCharacters: 1 + m_isOrthographic: 1 + m_isCullingEnabled: 0 + m_ignoreRectMaskCulling: 0 + m_ignoreCulling: 1 + m_horizontalMapping: 0 + m_verticalMapping: 0 + m_uvLineOffset: 0 + m_geometrySortingOrder: 0 + m_firstVisibleCharacter: 0 + m_useMaxVisibleDescender: 1 + m_pageToDisplay: 1 + m_margin: {x: 0, y: 0, z: 0, w: 0} + m_textInfo: + textComponent: {fileID: 1344542117541120514} + characterCount: 1 + spriteCount: 0 + spaceCount: 0 + wordCount: 1 + linkCount: 0 + lineCount: 1 + pageCount: 1 + materialCount: 1 + m_havePropertiesChanged: 0 + m_isUsingLegacyAnimationComponent: 0 + m_isVolumetricText: 0 + m_spriteAnimator: {fileID: 0} + m_isInputParsingRequired: 0 + m_inputSource: 0 + m_hasFontAssetChanged: 0 + m_subTextObjects: + - {fileID: 0} + - {fileID: 0} + - {fileID: 0} + - {fileID: 0} + - {fileID: 0} + - {fileID: 0} + - {fileID: 0} + - {fileID: 0} + m_baseMaterial: {fileID: 0} + m_maskOffset: {x: 0, y: 0, z: 0, w: 0} +--- !u!1 &1344542118785669924 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 1344542118785669944} + - component: {fileID: 1344542118785669947} + - component: {fileID: 1344542118785669946} + - component: {fileID: 5991087490704382741} + - component: {fileID: 7005754773134850036} + - component: {fileID: 7751499904472810060} + m_Layer: 5 + m_Name: RaceCountdownCanvas + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!224 &1344542118785669944 +RectTransform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1344542118785669924} + m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} + m_LocalPosition: {x: 0, y: 0, z: 0} + m_LocalScale: {x: 0, y: 0, z: 0} + m_Children: + - {fileID: 1344542117541120524} + - {fileID: 6377345260507859207} + - {fileID: 5273314513439912550} + - {fileID: 2447754628354730173} + m_Father: {fileID: 0} + m_RootOrder: 0 + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} + m_AnchorMin: {x: 0, y: 0} + m_AnchorMax: {x: 0, y: 0} + m_AnchoredPosition: {x: 0, y: 0} + m_SizeDelta: {x: 0, y: 0} + m_Pivot: {x: 0, y: 0} +--- !u!223 &1344542118785669947 +Canvas: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1344542118785669924} + m_Enabled: 1 + serializedVersion: 3 + m_RenderMode: 0 + m_Camera: {fileID: 0} + m_PlaneDistance: 100 + m_PixelPerfect: 0 + m_ReceivesEvents: 1 + m_OverrideSorting: 0 + m_OverridePixelPerfect: 0 + m_SortingBucketNormalizedSize: 0 + m_AdditionalShaderChannelsFlag: 25 + m_SortingLayerID: 0 + m_SortingOrder: 0 + m_TargetDisplay: 0 +--- !u!114 &1344542118785669946 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1344542118785669924} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 1980459831, guid: f70555f144d8491a825f0804e09c671c, type: 3} + m_Name: + m_EditorClassIdentifier: + m_UiScaleMode: 0 + m_ReferencePixelsPerUnit: 100 + m_ScaleFactor: 1 + m_ReferenceResolution: {x: 800, y: 600} + m_ScreenMatchMode: 0 + m_MatchWidthOrHeight: 0 + m_PhysicalUnit: 3 + m_FallbackScreenDPI: 96 + m_DefaultSpriteDPI: 96 + m_DynamicPixelsPerUnit: 1 +--- !u!320 &5991087490704382741 +PlayableDirector: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1344542118785669924} + m_Enabled: 1 + serializedVersion: 3 + m_PlayableAsset: {fileID: 11400000, guid: ef59465c823e959448bdf40fa6e69b5d, type: 2} + m_InitialState: 1 + m_WrapMode: 2 + m_DirectorUpdateMode: 1 + m_InitialTime: 0 + m_SceneBindings: + - key: {fileID: 114232313673077036, guid: ef59465c823e959448bdf40fa6e69b5d, type: 2} + value: {fileID: 0} + - key: {fileID: 114943284557119080, guid: ef59465c823e959448bdf40fa6e69b5d, type: 2} + value: {fileID: 0} + - key: {fileID: 114680697759565596, guid: ef59465c823e959448bdf40fa6e69b5d, type: 2} + value: {fileID: 0} + - key: {fileID: 114544521468371282, guid: ef59465c823e959448bdf40fa6e69b5d, type: 2} + value: {fileID: 0} + - key: {fileID: 114957938880747642, guid: ef59465c823e959448bdf40fa6e69b5d, type: 2} + value: {fileID: 0} + - key: {fileID: 114978033096453796, guid: ef59465c823e959448bdf40fa6e69b5d, type: 2} + value: {fileID: 0} + m_ExposedReferences: + m_References: + - c8bf5a7fe3a364647befc34f5003dc27: {fileID: 0} +--- !u!95 &7005754773134850036 +Animator: + serializedVersion: 3 + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1344542118785669924} + m_Enabled: 1 + m_Avatar: {fileID: 0} + m_Controller: {fileID: 0} + m_CullingMode: 0 + m_UpdateMode: 0 + m_ApplyRootMotion: 0 + m_LinearVelocityBlending: 0 + m_WarningMessage: + m_HasTransformHierarchy: 1 + m_AllowConstantClipSamplingOptimization: 1 + m_KeepAnimatorControllerStateOnDisable: 0 +--- !u!114 &7751499904472810060 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1344542118785669924} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: e33e70a327b92644fad5763a83b55c50, type: 3} + m_Name: + m_EditorClassIdentifier: + director: {fileID: 5991087490704382741} + events: + - time: 3 + timedEvent: + m_PersistentCalls: + m_Calls: + - m_Target: {fileID: 0} + m_MethodName: StartRace + m_Mode: 1 + m_Arguments: + m_ObjectArgument: {fileID: 0} + m_ObjectArgumentAssemblyTypeName: UnityEngine.Object, UnityEngine + m_IntArgument: 0 + m_FloatArgument: 0 + m_StringArgument: + m_BoolArgument: 0 + m_CallState: 2 + m_TypeName: UnityEngine.Events.UnityEvent, UnityEngine.CoreModule, Version=0.0.0.0, + Culture=neutral, PublicKeyToken=null +--- !u!1 &1464191339390486027 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 2447754628354730173} + - component: {fileID: 4251324590727403258} + - component: {fileID: 3817363056526040563} + m_Layer: 5 + m_Name: GoText + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!224 &2447754628354730173 +RectTransform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1464191339390486027} + m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} + m_LocalPosition: {x: 0, y: 0, z: 0} + m_LocalScale: {x: 1, y: 1, z: 1} + m_Children: [] + m_Father: {fileID: 1344542118785669944} + m_RootOrder: 3 + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} + m_AnchorMin: {x: 0, y: 0} + m_AnchorMax: {x: 1, y: 1} + m_AnchoredPosition: {x: 0, y: 0} + m_SizeDelta: {x: 0, y: 0} + m_Pivot: {x: 0.5, y: 0.5} +--- !u!222 &4251324590727403258 +CanvasRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1464191339390486027} + m_CullTransparentMesh: 0 +--- !u!114 &3817363056526040563 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1464191339390486027} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: f4688fdb7df04437aeb418b961361dc5, type: 3} + m_Name: + m_EditorClassIdentifier: + m_Material: {fileID: 0} + m_Color: {r: 1, g: 1, b: 1, a: 1} + m_RaycastTarget: 1 + m_OnCullStateChanged: + m_PersistentCalls: + m_Calls: [] + m_TypeName: UnityEngine.UI.MaskableGraphic+CullStateChangedEvent, UnityEngine.UI, + Version=1.0.0.0, Culture=neutral, PublicKeyToken=null + m_text: GO! + m_isRightToLeft: 0 + m_fontAsset: {fileID: 11400000, guid: 8f586378b4e144a9851e7b34d9b748ee, type: 2} + m_sharedMaterial: {fileID: 2180264, guid: 8f586378b4e144a9851e7b34d9b748ee, type: 2} + m_fontSharedMaterials: [] + m_fontMaterial: {fileID: 0} + m_fontMaterials: [] + m_fontColor32: + serializedVersion: 2 + rgba: 4294967295 + m_fontColor: {r: 1, g: 1, b: 1, a: 1} + m_enableVertexGradient: 0 + m_colorMode: 3 + m_fontColorGradient: + topLeft: {r: 1, g: 1, b: 1, a: 1} + topRight: {r: 1, g: 1, b: 1, a: 1} + bottomLeft: {r: 1, g: 1, b: 1, a: 1} + bottomRight: {r: 1, g: 1, b: 1, a: 1} + m_fontColorGradientPreset: {fileID: 0} + m_spriteAsset: {fileID: 0} + m_tintAllSprites: 0 + m_overrideHtmlColors: 0 + m_faceColor: + serializedVersion: 2 + rgba: 4294967295 + m_outlineColor: + serializedVersion: 2 + rgba: 4278190080 + m_fontSize: 200 + m_fontSizeBase: 200 + m_fontWeight: 400 + m_enableAutoSizing: 0 + m_fontSizeMin: 18 + m_fontSizeMax: 72 + m_fontStyle: 0 + m_textAlignment: 514 + m_isAlignmentEnumConverted: 1 + m_characterSpacing: 0 + m_wordSpacing: 0 + m_lineSpacing: 0 + m_lineSpacingMax: 0 + m_paragraphSpacing: 0 + m_charWidthMaxAdj: 0 + m_enableWordWrapping: 1 + m_wordWrappingRatios: 0.4 + m_overflowMode: 0 + m_firstOverflowCharacterIndex: -1 + m_linkedTextComponent: {fileID: 0} + m_isLinkedTextComponent: 0 + m_isTextTruncated: 0 + m_enableKerning: 1 + m_enableExtraPadding: 0 + checkPaddingRequired: 0 + m_isRichText: 1 + m_parseCtrlCharacters: 1 + m_isOrthographic: 1 + m_isCullingEnabled: 0 + m_ignoreRectMaskCulling: 0 + m_ignoreCulling: 1 + m_horizontalMapping: 0 + m_verticalMapping: 0 + m_uvLineOffset: 0 + m_geometrySortingOrder: 0 + m_firstVisibleCharacter: 0 + m_useMaxVisibleDescender: 1 + m_pageToDisplay: 1 + m_margin: {x: 0, y: 0, z: 0, w: 0} + m_textInfo: + textComponent: {fileID: 3817363056526040563} + characterCount: 3 + spriteCount: 0 + spaceCount: 0 + wordCount: 1 + linkCount: 0 + lineCount: 1 + pageCount: 1 + materialCount: 1 + m_havePropertiesChanged: 0 + m_isUsingLegacyAnimationComponent: 0 + m_isVolumetricText: 0 + m_spriteAnimator: {fileID: 0} + m_isInputParsingRequired: 0 + m_inputSource: 0 + m_hasFontAssetChanged: 0 + m_subTextObjects: + - {fileID: 0} + - {fileID: 0} + - {fileID: 0} + - {fileID: 0} + - {fileID: 0} + - {fileID: 0} + - {fileID: 0} + - {fileID: 0} + m_baseMaterial: {fileID: 0} + m_maskOffset: {x: 0, y: 0, z: 0, w: 0} +--- !u!1 &2307677542838934300 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 6377345260507859207} + - component: {fileID: 6532130230569041637} + - component: {fileID: 642987968668172917} + m_Layer: 5 + m_Name: TwoText + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!224 &6377345260507859207 +RectTransform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 2307677542838934300} + m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} + m_LocalPosition: {x: 0, y: 0, z: 0} + m_LocalScale: {x: 1, y: 1, z: 1} + m_Children: [] + m_Father: {fileID: 1344542118785669944} + m_RootOrder: 1 + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} + m_AnchorMin: {x: 0, y: 0} + m_AnchorMax: {x: 1, y: 1} + m_AnchoredPosition: {x: 0, y: 0} + m_SizeDelta: {x: 0, y: 0} + m_Pivot: {x: 0.5, y: 0.5} +--- !u!222 &6532130230569041637 +CanvasRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 2307677542838934300} + m_CullTransparentMesh: 0 +--- !u!114 &642987968668172917 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 2307677542838934300} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: f4688fdb7df04437aeb418b961361dc5, type: 3} + m_Name: + m_EditorClassIdentifier: + m_Material: {fileID: 0} + m_Color: {r: 1, g: 1, b: 1, a: 1} + m_RaycastTarget: 1 + m_OnCullStateChanged: + m_PersistentCalls: + m_Calls: [] + m_TypeName: UnityEngine.UI.MaskableGraphic+CullStateChangedEvent, UnityEngine.UI, + Version=1.0.0.0, Culture=neutral, PublicKeyToken=null + m_text: 2 + m_isRightToLeft: 0 + m_fontAsset: {fileID: 11400000, guid: 8f586378b4e144a9851e7b34d9b748ee, type: 2} + m_sharedMaterial: {fileID: 2180264, guid: 8f586378b4e144a9851e7b34d9b748ee, type: 2} + m_fontSharedMaterials: [] + m_fontMaterial: {fileID: 0} + m_fontMaterials: [] + m_fontColor32: + serializedVersion: 2 + rgba: 4294967295 + m_fontColor: {r: 1, g: 1, b: 1, a: 1} + m_enableVertexGradient: 0 + m_colorMode: 3 + m_fontColorGradient: + topLeft: {r: 1, g: 1, b: 1, a: 1} + topRight: {r: 1, g: 1, b: 1, a: 1} + bottomLeft: {r: 1, g: 1, b: 1, a: 1} + bottomRight: {r: 1, g: 1, b: 1, a: 1} + m_fontColorGradientPreset: {fileID: 0} + m_spriteAsset: {fileID: 0} + m_tintAllSprites: 0 + m_overrideHtmlColors: 0 + m_faceColor: + serializedVersion: 2 + rgba: 4294967295 + m_outlineColor: + serializedVersion: 2 + rgba: 4278190080 + m_fontSize: 200 + m_fontSizeBase: 200 + m_fontWeight: 400 + m_enableAutoSizing: 0 + m_fontSizeMin: 18 + m_fontSizeMax: 72 + m_fontStyle: 0 + m_textAlignment: 514 + m_isAlignmentEnumConverted: 1 + m_characterSpacing: 0 + m_wordSpacing: 0 + m_lineSpacing: 0 + m_lineSpacingMax: 0 + m_paragraphSpacing: 0 + m_charWidthMaxAdj: 0 + m_enableWordWrapping: 1 + m_wordWrappingRatios: 0.4 + m_overflowMode: 0 + m_firstOverflowCharacterIndex: -1 + m_linkedTextComponent: {fileID: 0} + m_isLinkedTextComponent: 0 + m_isTextTruncated: 0 + m_enableKerning: 1 + m_enableExtraPadding: 0 + checkPaddingRequired: 0 + m_isRichText: 1 + m_parseCtrlCharacters: 1 + m_isOrthographic: 1 + m_isCullingEnabled: 0 + m_ignoreRectMaskCulling: 0 + m_ignoreCulling: 1 + m_horizontalMapping: 0 + m_verticalMapping: 0 + m_uvLineOffset: 0 + m_geometrySortingOrder: 0 + m_firstVisibleCharacter: 0 + m_useMaxVisibleDescender: 1 + m_pageToDisplay: 1 + m_margin: {x: 0, y: 0, z: 0, w: 0} + m_textInfo: + textComponent: {fileID: 642987968668172917} + characterCount: 1 + spriteCount: 0 + spaceCount: 0 + wordCount: 1 + linkCount: 0 + lineCount: 1 + pageCount: 1 + materialCount: 1 + m_havePropertiesChanged: 0 + m_isUsingLegacyAnimationComponent: 0 + m_isVolumetricText: 0 + m_spriteAnimator: {fileID: 0} + m_isInputParsingRequired: 0 + m_inputSource: 0 + m_hasFontAssetChanged: 0 + m_subTextObjects: + - {fileID: 0} + - {fileID: 0} + - {fileID: 0} + - {fileID: 0} + - {fileID: 0} + - {fileID: 0} + - {fileID: 0} + - {fileID: 0} + m_baseMaterial: {fileID: 0} + m_maskOffset: {x: 0, y: 0, z: 0, w: 0} +--- !u!1 &4648791341004341439 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 5273314513439912550} + - component: {fileID: 340709114427155762} + - component: {fileID: 7000690479517655175} + m_Layer: 5 + m_Name: OneText + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!224 &5273314513439912550 +RectTransform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 4648791341004341439} + m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} + m_LocalPosition: {x: 0, y: 0, z: 0} + m_LocalScale: {x: 1, y: 1, z: 1} + m_Children: [] + m_Father: {fileID: 1344542118785669944} + m_RootOrder: 2 + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} + m_AnchorMin: {x: 0, y: 0} + m_AnchorMax: {x: 1, y: 1} + m_AnchoredPosition: {x: 0, y: 0} + m_SizeDelta: {x: 0, y: 0} + m_Pivot: {x: 0.5, y: 0.5} +--- !u!222 &340709114427155762 +CanvasRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 4648791341004341439} + m_CullTransparentMesh: 0 +--- !u!114 &7000690479517655175 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 4648791341004341439} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: f4688fdb7df04437aeb418b961361dc5, type: 3} + m_Name: + m_EditorClassIdentifier: + m_Material: {fileID: 0} + m_Color: {r: 1, g: 1, b: 1, a: 1} + m_RaycastTarget: 1 + m_OnCullStateChanged: + m_PersistentCalls: + m_Calls: [] + m_TypeName: UnityEngine.UI.MaskableGraphic+CullStateChangedEvent, UnityEngine.UI, + Version=1.0.0.0, Culture=neutral, PublicKeyToken=null + m_text: 1 + m_isRightToLeft: 0 + m_fontAsset: {fileID: 11400000, guid: 8f586378b4e144a9851e7b34d9b748ee, type: 2} + m_sharedMaterial: {fileID: 2180264, guid: 8f586378b4e144a9851e7b34d9b748ee, type: 2} + m_fontSharedMaterials: [] + m_fontMaterial: {fileID: 0} + m_fontMaterials: [] + m_fontColor32: + serializedVersion: 2 + rgba: 4294967295 + m_fontColor: {r: 1, g: 1, b: 1, a: 1} + m_enableVertexGradient: 0 + m_colorMode: 3 + m_fontColorGradient: + topLeft: {r: 1, g: 1, b: 1, a: 1} + topRight: {r: 1, g: 1, b: 1, a: 1} + bottomLeft: {r: 1, g: 1, b: 1, a: 1} + bottomRight: {r: 1, g: 1, b: 1, a: 1} + m_fontColorGradientPreset: {fileID: 0} + m_spriteAsset: {fileID: 0} + m_tintAllSprites: 0 + m_overrideHtmlColors: 0 + m_faceColor: + serializedVersion: 2 + rgba: 4294967295 + m_outlineColor: + serializedVersion: 2 + rgba: 4278190080 + m_fontSize: 200 + m_fontSizeBase: 200 + m_fontWeight: 400 + m_enableAutoSizing: 0 + m_fontSizeMin: 18 + m_fontSizeMax: 72 + m_fontStyle: 0 + m_textAlignment: 514 + m_isAlignmentEnumConverted: 1 + m_characterSpacing: 0 + m_wordSpacing: 0 + m_lineSpacing: 0 + m_lineSpacingMax: 0 + m_paragraphSpacing: 0 + m_charWidthMaxAdj: 0 + m_enableWordWrapping: 1 + m_wordWrappingRatios: 0.4 + m_overflowMode: 0 + m_firstOverflowCharacterIndex: -1 + m_linkedTextComponent: {fileID: 0} + m_isLinkedTextComponent: 0 + m_isTextTruncated: 0 + m_enableKerning: 1 + m_enableExtraPadding: 0 + checkPaddingRequired: 0 + m_isRichText: 1 + m_parseCtrlCharacters: 1 + m_isOrthographic: 1 + m_isCullingEnabled: 0 + m_ignoreRectMaskCulling: 0 + m_ignoreCulling: 1 + m_horizontalMapping: 0 + m_verticalMapping: 0 + m_uvLineOffset: 0 + m_geometrySortingOrder: 0 + m_firstVisibleCharacter: 0 + m_useMaxVisibleDescender: 1 + m_pageToDisplay: 1 + m_margin: {x: 0, y: 0, z: 0, w: 0} + m_textInfo: + textComponent: {fileID: 7000690479517655175} + characterCount: 1 + spriteCount: 0 + spaceCount: 0 + wordCount: 1 + linkCount: 0 + lineCount: 1 + pageCount: 1 + materialCount: 1 + m_havePropertiesChanged: 0 + m_isUsingLegacyAnimationComponent: 0 + m_isVolumetricText: 0 + m_spriteAnimator: {fileID: 0} + m_isInputParsingRequired: 0 + m_inputSource: 0 + m_hasFontAssetChanged: 0 + m_subTextObjects: + - {fileID: 0} + - {fileID: 0} + - {fileID: 0} + - {fileID: 0} + - {fileID: 0} + - {fileID: 0} + - {fileID: 0} + - {fileID: 0} + m_baseMaterial: {fileID: 0} + m_maskOffset: {x: 0, y: 0, z: 0, w: 0} diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Prefabs/RaceCountdownCanvas.prefab.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Prefabs/RaceCountdownCanvas.prefab.meta" new file mode 100644 index 00000000..c2c805ac --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Prefabs/RaceCountdownCanvas.prefab.meta" @@ -0,0 +1,7 @@ +fileFormatVersion: 2 +guid: f29c8f9af0e64ab48a6c306b16e4a8fd +PrefabImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Prefabs/StartFinishLine.prefab" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Prefabs/StartFinishLine.prefab" new file mode 100644 index 00000000..ab34d8bd --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Prefabs/StartFinishLine.prefab" @@ -0,0 +1,155 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!1 &8703922469202860465 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 8703922469203281297} + - component: {fileID: 8703922469201986993} + - component: {fileID: 8703922469200856945} + m_Layer: 0 + m_Name: StartFinishLine + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &8703922469203281297 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 8703922469202860465} + m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} + m_LocalPosition: {x: 16, y: 0, z: 2} + m_LocalScale: {x: 1, y: 1, z: 1} + m_Children: + - {fileID: 1634089789674906150} + m_Father: {fileID: 0} + m_RootOrder: 0 + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!33 &8703922469201986993 +MeshFilter: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 8703922469202860465} + m_Mesh: {fileID: 4300000, guid: b974c5c08f684144a8c03f16eb4ad6b1, type: 3} +--- !u!23 &8703922469200856945 +MeshRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 8703922469202860465} + m_Enabled: 1 + m_CastShadows: 1 + m_ReceiveShadows: 1 + m_DynamicOccludee: 1 + m_MotionVectors: 1 + m_LightProbeUsage: 1 + m_ReflectionProbeUsage: 1 + m_RenderingLayerMask: 1 + m_RendererPriority: 0 + m_Materials: + - {fileID: 2100000, guid: d11179e416c9b394c8176d36a0dcae52, type: 2} + m_StaticBatchInfo: + firstSubMesh: 0 + subMeshCount: 0 + m_StaticBatchRoot: {fileID: 0} + m_ProbeAnchor: {fileID: 0} + m_LightProbeVolumeOverride: {fileID: 0} + m_ScaleInLightmap: 1 + m_PreserveUVs: 0 + m_IgnoreNormalsForChartDetection: 0 + m_ImportantGI: 0 + m_StitchLightmapSeams: 0 + m_SelectedEditorRenderState: 3 + m_MinimumChartSize: 4 + m_AutoUVMaxDistance: 0.5 + m_AutoUVMaxAngle: 89 + m_LightmapParameters: {fileID: 0} + m_SortingLayerID: 0 + m_SortingLayer: 0 + m_SortingOrder: 0 +--- !u!1001 &2335447174783677318 +PrefabInstance: + m_ObjectHideFlags: 0 + serializedVersion: 2 + m_Modification: + m_TransformParent: {fileID: 8703922469203281297} + m_Modifications: + - target: {fileID: 301968402025351761, guid: 4ca810eee207a9c47a8ce33ea21c709d, + type: 3} + propertyPath: m_Name + value: Checkpoint + objectReference: {fileID: 0} + - target: {fileID: 3946376847079625120, guid: 4ca810eee207a9c47a8ce33ea21c709d, + type: 3} + propertyPath: m_LocalPosition.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 3946376847079625120, guid: 4ca810eee207a9c47a8ce33ea21c709d, + type: 3} + propertyPath: m_LocalPosition.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 3946376847079625120, guid: 4ca810eee207a9c47a8ce33ea21c709d, + type: 3} + propertyPath: m_LocalPosition.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 3946376847079625120, guid: 4ca810eee207a9c47a8ce33ea21c709d, + type: 3} + propertyPath: m_LocalRotation.x + value: -0 + objectReference: {fileID: 0} + - target: {fileID: 3946376847079625120, guid: 4ca810eee207a9c47a8ce33ea21c709d, + type: 3} + propertyPath: m_LocalRotation.y + value: -0 + objectReference: {fileID: 0} + - target: {fileID: 3946376847079625120, guid: 4ca810eee207a9c47a8ce33ea21c709d, + type: 3} + propertyPath: m_LocalRotation.z + value: -0 + objectReference: {fileID: 0} + - target: {fileID: 3946376847079625120, guid: 4ca810eee207a9c47a8ce33ea21c709d, + type: 3} + propertyPath: m_LocalRotation.w + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 3946376847079625120, guid: 4ca810eee207a9c47a8ce33ea21c709d, + type: 3} + propertyPath: m_RootOrder + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 3946376847079625120, guid: 4ca810eee207a9c47a8ce33ea21c709d, + type: 3} + propertyPath: m_LocalEulerAnglesHint.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 3946376847079625120, guid: 4ca810eee207a9c47a8ce33ea21c709d, + type: 3} + propertyPath: m_LocalEulerAnglesHint.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 3946376847079625120, guid: 4ca810eee207a9c47a8ce33ea21c709d, + type: 3} + propertyPath: m_LocalEulerAnglesHint.z + value: 0 + objectReference: {fileID: 0} + m_RemovedComponents: [] + m_SourcePrefab: {fileID: 100100000, guid: 4ca810eee207a9c47a8ce33ea21c709d, type: 3} +--- !u!4 &1634089789674906150 stripped +Transform: + m_CorrespondingSourceObject: {fileID: 3946376847079625120, guid: 4ca810eee207a9c47a8ce33ea21c709d, + type: 3} + m_PrefabInstance: {fileID: 2335447174783677318} + m_PrefabAsset: {fileID: 0} diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Prefabs/StartFinishLine.prefab.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Prefabs/StartFinishLine.prefab.meta" new file mode 100644 index 00000000..e919d09b --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Prefabs/StartFinishLine.prefab.meta" @@ -0,0 +1,7 @@ +fileFormatVersion: 2 +guid: 08627a91b0a679a47a06bf34443532a3 +PrefabImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Prefabs/TimeDisplayCanvas.prefab" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Prefabs/TimeDisplayCanvas.prefab" new file mode 100644 index 00000000..701a0931 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Prefabs/TimeDisplayCanvas.prefab" @@ -0,0 +1,260 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!1 &3109687787520293601 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 3109687787520293600} + - component: {fileID: 3109687787520293606} + - component: {fileID: 3109687787520293607} + m_Layer: 0 + m_Name: LapText + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!224 &3109687787520293600 +RectTransform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 3109687787520293601} + m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} + m_LocalPosition: {x: 0, y: 0, z: 0} + m_LocalScale: {x: 1, y: 1, z: 1} + m_Children: [] + m_Father: {fileID: 3109687788032145149} + m_RootOrder: 0 + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} + m_AnchorMin: {x: 0.67, y: 0} + m_AnchorMax: {x: 1, y: 1} + m_AnchoredPosition: {x: 0, y: 0} + m_SizeDelta: {x: 0, y: 0} + m_Pivot: {x: 1, y: 1} +--- !u!222 &3109687787520293606 +CanvasRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 3109687787520293601} + m_CullTransparentMesh: 0 +--- !u!114 &3109687787520293607 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 3109687787520293601} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: f4688fdb7df04437aeb418b961361dc5, type: 3} + m_Name: + m_EditorClassIdentifier: + m_Material: {fileID: 0} + m_Color: {r: 1, g: 1, b: 1, a: 1} + m_RaycastTarget: 1 + m_OnCullStateChanged: + m_PersistentCalls: + m_Calls: [] + m_TypeName: UnityEngine.UI.MaskableGraphic+CullStateChangedEvent, UnityEngine.UI, + Version=1.0.0.0, Culture=neutral, PublicKeyToken=null + m_text: LAP INFORMATION + m_isRightToLeft: 0 + m_fontAsset: {fileID: 11400000, guid: 8f586378b4e144a9851e7b34d9b748ee, type: 2} + m_sharedMaterial: {fileID: 2180264, guid: 8f586378b4e144a9851e7b34d9b748ee, type: 2} + m_fontSharedMaterials: [] + m_fontMaterial: {fileID: 0} + m_fontMaterials: [] + m_fontColor32: + serializedVersion: 2 + rgba: 4294956544 + m_fontColor: {r: 0, g: 0.8392157, b: 1, a: 1} + m_enableVertexGradient: 0 + m_colorMode: 3 + m_fontColorGradient: + topLeft: {r: 1, g: 1, b: 1, a: 1} + topRight: {r: 1, g: 1, b: 1, a: 1} + bottomLeft: {r: 1, g: 1, b: 1, a: 1} + bottomRight: {r: 1, g: 1, b: 1, a: 1} + m_fontColorGradientPreset: {fileID: 0} + m_spriteAsset: {fileID: 0} + m_tintAllSprites: 0 + m_overrideHtmlColors: 0 + m_faceColor: + serializedVersion: 2 + rgba: 4294967295 + m_outlineColor: + serializedVersion: 2 + rgba: 4278190080 + m_fontSize: 24 + m_fontSizeBase: 36 + m_fontWeight: 400 + m_enableAutoSizing: 1 + m_fontSizeMin: 10 + m_fontSizeMax: 24 + m_fontStyle: 1 + m_textAlignment: 257 + m_isAlignmentEnumConverted: 1 + m_characterSpacing: 0 + m_wordSpacing: 0 + m_lineSpacing: 0 + m_lineSpacingMax: 0 + m_paragraphSpacing: 0 + m_charWidthMaxAdj: 0 + m_enableWordWrapping: 1 + m_wordWrappingRatios: 0.4 + m_overflowMode: 0 + m_firstOverflowCharacterIndex: -1 + m_linkedTextComponent: {fileID: 0} + m_isLinkedTextComponent: 0 + m_isTextTruncated: 0 + m_enableKerning: 1 + m_enableExtraPadding: 0 + checkPaddingRequired: 0 + m_isRichText: 1 + m_parseCtrlCharacters: 1 + m_isOrthographic: 1 + m_isCullingEnabled: 0 + m_ignoreRectMaskCulling: 0 + m_ignoreCulling: 1 + m_horizontalMapping: 0 + m_verticalMapping: 0 + m_uvLineOffset: 0 + m_geometrySortingOrder: 0 + m_firstVisibleCharacter: 0 + m_useMaxVisibleDescender: 1 + m_pageToDisplay: 1 + m_margin: {x: 20, y: 20, z: 20, w: 20} + m_textInfo: + textComponent: {fileID: 3109687787520293607} + characterCount: 15 + spriteCount: 0 + spaceCount: 1 + wordCount: 2 + linkCount: 0 + lineCount: 1 + pageCount: 1 + materialCount: 1 + m_havePropertiesChanged: 0 + m_isUsingLegacyAnimationComponent: 0 + m_isVolumetricText: 0 + m_spriteAnimator: {fileID: 0} + m_isInputParsingRequired: 0 + m_inputSource: 0 + m_hasFontAssetChanged: 0 + m_subTextObjects: + - {fileID: 0} + - {fileID: 0} + - {fileID: 0} + - {fileID: 0} + - {fileID: 0} + - {fileID: 0} + - {fileID: 0} + - {fileID: 0} + m_baseMaterial: {fileID: 0} + m_maskOffset: {x: 0, y: 0, z: 0, w: 0} +--- !u!1 &3109687788032145145 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 3109687788032145149} + - component: {fileID: 3109687788032145150} + - component: {fileID: 3109687788032145151} + - component: {fileID: 3109687788032145148} + m_Layer: 5 + m_Name: TimeDisplayCanvas + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!224 &3109687788032145149 +RectTransform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 3109687788032145145} + m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} + m_LocalPosition: {x: 0, y: 0, z: 0} + m_LocalScale: {x: 0, y: 0, z: 0} + m_Children: + - {fileID: 3109687787520293600} + m_Father: {fileID: 0} + m_RootOrder: 0 + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} + m_AnchorMin: {x: 0, y: 0} + m_AnchorMax: {x: 0, y: 0} + m_AnchoredPosition: {x: 0, y: 0} + m_SizeDelta: {x: 0, y: 0} + m_Pivot: {x: 0, y: 0} +--- !u!223 &3109687788032145150 +Canvas: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 3109687788032145145} + m_Enabled: 1 + serializedVersion: 3 + m_RenderMode: 0 + m_Camera: {fileID: 0} + m_PlaneDistance: 100 + m_PixelPerfect: 0 + m_ReceivesEvents: 1 + m_OverrideSorting: 0 + m_OverridePixelPerfect: 0 + m_SortingBucketNormalizedSize: 0 + m_AdditionalShaderChannelsFlag: 25 + m_SortingLayerID: 0 + m_SortingOrder: 0 + m_TargetDisplay: 0 +--- !u!114 &3109687788032145151 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 3109687788032145145} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 1980459831, guid: f70555f144d8491a825f0804e09c671c, type: 3} + m_Name: + m_EditorClassIdentifier: + m_UiScaleMode: 0 + m_ReferencePixelsPerUnit: 100 + m_ScaleFactor: 1 + m_ReferenceResolution: {x: 800, y: 600} + m_ScreenMatchMode: 0 + m_MatchWidthOrHeight: 0 + m_PhysicalUnit: 3 + m_FallbackScreenDPI: 96 + m_DefaultSpriteDPI: 96 + m_DynamicPixelsPerUnit: 1 +--- !u!114 &3109687788032145148 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 3109687788032145145} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 923988891dedec44e8ef297eacc10c58, type: 3} + m_Name: + m_EditorClassIdentifier: + initialDisplayOptions: 040000000200000005000000 + trackManager: {fileID: 0} + textComponent: {fileID: 3109687787520293607} + initialRacer: {fileID: 0} diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Prefabs/TimeDisplayCanvas.prefab.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Prefabs/TimeDisplayCanvas.prefab.meta" new file mode 100644 index 00000000..3543117e --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Prefabs/TimeDisplayCanvas.prefab.meta" @@ -0,0 +1,7 @@ +fileFormatVersion: 2 +guid: 8d79384b550589d498c55817e4277af2 +PrefabImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Prefabs/TrackCamber.prefab" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Prefabs/TrackCamber.prefab" new file mode 100644 index 00000000..9f9a5695 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Prefabs/TrackCamber.prefab" @@ -0,0 +1,232 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!1 &3428233201268248688 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 3428233201268345936} + - component: {fileID: 3428233201271213168} + - component: {fileID: 3428233201270247088} + - component: {fileID: 8577849258008703004} + - component: {fileID: 7363526067255286694} + m_Layer: 0 + m_Name: Fence + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 4294967295 + m_IsActive: 1 +--- !u!4 &3428233201268345936 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 3428233201268248688} + m_LocalRotation: {x: 0, y: -0, z: -0, w: 1} + m_LocalPosition: {x: 0, y: 0, z: 0} + m_LocalScale: {x: 1, y: 1, z: 1} + m_Children: [] + m_Father: {fileID: 3428233201268345940} + m_RootOrder: 0 + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!33 &3428233201271213168 +MeshFilter: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 3428233201268248688} + m_Mesh: {fileID: 4300002, guid: 127b92ea3636da5478d4347afe2fb698, type: 3} +--- !u!23 &3428233201270247088 +MeshRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 3428233201268248688} + m_Enabled: 1 + m_CastShadows: 1 + m_ReceiveShadows: 1 + m_DynamicOccludee: 1 + m_MotionVectors: 1 + m_LightProbeUsage: 1 + m_ReflectionProbeUsage: 1 + m_RenderingLayerMask: 1 + m_RendererPriority: 0 + m_Materials: + - {fileID: 2100000, guid: d11179e416c9b394c8176d36a0dcae52, type: 2} + m_StaticBatchInfo: + firstSubMesh: 0 + subMeshCount: 0 + m_StaticBatchRoot: {fileID: 0} + m_ProbeAnchor: {fileID: 0} + m_LightProbeVolumeOverride: {fileID: 0} + m_ScaleInLightmap: 1 + m_PreserveUVs: 0 + m_IgnoreNormalsForChartDetection: 0 + m_ImportantGI: 0 + m_StitchLightmapSeams: 0 + m_SelectedEditorRenderState: 3 + m_MinimumChartSize: 4 + m_AutoUVMaxDistance: 0.5 + m_AutoUVMaxAngle: 89 + m_LightmapParameters: {fileID: 0} + m_SortingLayerID: 0 + m_SortingLayer: 0 + m_SortingOrder: 0 +--- !u!64 &8577849258008703004 +MeshCollider: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 3428233201268248688} + m_Material: {fileID: 0} + m_IsTrigger: 0 + m_Enabled: 1 + serializedVersion: 3 + m_Convex: 0 + m_CookingOptions: 14 + m_Mesh: {fileID: 4300000, guid: f5a44503c018d324580820af937c9987, type: 3} +--- !u!114 &7363526067255286694 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 3428233201268248688} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: ca4c92f9d8625e04b85d2ad57bf3ecbd, type: 3} + m_Name: + m_EditorClassIdentifier: + bounciness: 0.1 +--- !u!1 &3428233201268248690 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 3428233201268345938} + - component: {fileID: 3428233201271213170} + - component: {fileID: 3428233201270247090} + - component: {fileID: 5967161288331140915} + m_Layer: 9 + m_Name: Track + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 4294967295 + m_IsActive: 1 +--- !u!4 &3428233201268345938 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 3428233201268248690} + m_LocalRotation: {x: 0, y: -0, z: -0, w: 1} + m_LocalPosition: {x: 0, y: 0, z: 0} + m_LocalScale: {x: 1, y: 1, z: 1} + m_Children: [] + m_Father: {fileID: 3428233201268345940} + m_RootOrder: 1 + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!33 &3428233201271213170 +MeshFilter: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 3428233201268248690} + m_Mesh: {fileID: 4300000, guid: 127b92ea3636da5478d4347afe2fb698, type: 3} +--- !u!23 &3428233201270247090 +MeshRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 3428233201268248690} + m_Enabled: 1 + m_CastShadows: 1 + m_ReceiveShadows: 1 + m_DynamicOccludee: 1 + m_MotionVectors: 1 + m_LightProbeUsage: 1 + m_ReflectionProbeUsage: 1 + m_RenderingLayerMask: 1 + m_RendererPriority: 0 + m_Materials: + - {fileID: 2100000, guid: d11179e416c9b394c8176d36a0dcae52, type: 2} + m_StaticBatchInfo: + firstSubMesh: 0 + subMeshCount: 0 + m_StaticBatchRoot: {fileID: 0} + m_ProbeAnchor: {fileID: 0} + m_LightProbeVolumeOverride: {fileID: 0} + m_ScaleInLightmap: 1 + m_PreserveUVs: 0 + m_IgnoreNormalsForChartDetection: 0 + m_ImportantGI: 0 + m_StitchLightmapSeams: 0 + m_SelectedEditorRenderState: 3 + m_MinimumChartSize: 4 + m_AutoUVMaxDistance: 0.5 + m_AutoUVMaxAngle: 89 + m_LightmapParameters: {fileID: 0} + m_SortingLayerID: 0 + m_SortingLayer: 0 + m_SortingOrder: 0 +--- !u!64 &5967161288331140915 +MeshCollider: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 3428233201268248690} + m_Material: {fileID: 0} + m_IsTrigger: 0 + m_Enabled: 1 + serializedVersion: 3 + m_Convex: 0 + m_CookingOptions: 14 + m_Mesh: {fileID: 4300000, guid: 74fd08689db02b94a8cac89c8bb7f35c, type: 3} +--- !u!1 &3428233201268248692 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 3428233201268345940} + m_Layer: 0 + m_Name: Track_Camber + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 4294967295 + m_IsActive: 1 +--- !u!4 &3428233201268345940 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 3428233201268248692} + m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} + m_LocalPosition: {x: 0, y: 0, z: 0} + m_LocalScale: {x: 1, y: 1, z: 1} + m_Children: + - {fileID: 3428233201268345936} + - {fileID: 3428233201268345938} + m_Father: {fileID: 0} + m_RootOrder: 0 + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Prefabs/TrackCamber.prefab.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Prefabs/TrackCamber.prefab.meta" new file mode 100644 index 00000000..1bafd670 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Prefabs/TrackCamber.prefab.meta" @@ -0,0 +1,7 @@ +fileFormatVersion: 2 +guid: f202d1d38db456740b720ff202853bb1 +PrefabImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Prefabs/TrackCamberCurve.prefab" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Prefabs/TrackCamberCurve.prefab" new file mode 100644 index 00000000..750b2463 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Prefabs/TrackCamberCurve.prefab" @@ -0,0 +1,232 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!1 &7615689106536464776 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 7615689106536570280} + - component: {fileID: 7615689106535275912} + - component: {fileID: 7615689106534276936} + - component: {fileID: 1842496610595476793} + m_Layer: 9 + m_Name: Track + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 4294967295 + m_IsActive: 1 +--- !u!4 &7615689106536570280 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 7615689106536464776} + m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} + m_LocalPosition: {x: 0, y: 0, z: 0} + m_LocalScale: {x: 1, y: 1, z: 1} + m_Children: [] + m_Father: {fileID: 7615689106536570284} + m_RootOrder: 1 + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!33 &7615689106535275912 +MeshFilter: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 7615689106536464776} + m_Mesh: {fileID: 4300002, guid: 3a78ab987181dc945be82cdb21028861, type: 3} +--- !u!23 &7615689106534276936 +MeshRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 7615689106536464776} + m_Enabled: 1 + m_CastShadows: 1 + m_ReceiveShadows: 1 + m_DynamicOccludee: 1 + m_MotionVectors: 1 + m_LightProbeUsage: 1 + m_ReflectionProbeUsage: 1 + m_RenderingLayerMask: 1 + m_RendererPriority: 0 + m_Materials: + - {fileID: 2100000, guid: d11179e416c9b394c8176d36a0dcae52, type: 2} + m_StaticBatchInfo: + firstSubMesh: 0 + subMeshCount: 0 + m_StaticBatchRoot: {fileID: 0} + m_ProbeAnchor: {fileID: 0} + m_LightProbeVolumeOverride: {fileID: 0} + m_ScaleInLightmap: 1 + m_PreserveUVs: 0 + m_IgnoreNormalsForChartDetection: 0 + m_ImportantGI: 0 + m_StitchLightmapSeams: 0 + m_SelectedEditorRenderState: 3 + m_MinimumChartSize: 4 + m_AutoUVMaxDistance: 0.5 + m_AutoUVMaxAngle: 89 + m_LightmapParameters: {fileID: 0} + m_SortingLayerID: 0 + m_SortingLayer: 0 + m_SortingOrder: 0 +--- !u!64 &1842496610595476793 +MeshCollider: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 7615689106536464776} + m_Material: {fileID: 0} + m_IsTrigger: 0 + m_Enabled: 1 + serializedVersion: 3 + m_Convex: 0 + m_CookingOptions: 14 + m_Mesh: {fileID: 4300000, guid: 120e82693d1e13644a7f5b990e783b01, type: 3} +--- !u!1 &7615689106536464780 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 7615689106536570284} + m_Layer: 0 + m_Name: Track_CamberCurve + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 4294967295 + m_IsActive: 1 +--- !u!4 &7615689106536570284 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 7615689106536464780} + m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} + m_LocalPosition: {x: 0, y: 0, z: 0} + m_LocalScale: {x: 1, y: 1, z: 1} + m_Children: + - {fileID: 7615689106536570286} + - {fileID: 7615689106536570280} + m_Father: {fileID: 0} + m_RootOrder: 0 + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!1 &7615689106536464782 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 7615689106536570286} + - component: {fileID: 7615689106535275918} + - component: {fileID: 7615689106534276942} + - component: {fileID: 4566121029341651658} + - component: {fileID: 957098524720228105} + m_Layer: 0 + m_Name: Fence + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 4294967295 + m_IsActive: 1 +--- !u!4 &7615689106536570286 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 7615689106536464782} + m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} + m_LocalPosition: {x: 0, y: 0, z: 0} + m_LocalScale: {x: 1, y: 1, z: 1} + m_Children: [] + m_Father: {fileID: 7615689106536570284} + m_RootOrder: 0 + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!33 &7615689106535275918 +MeshFilter: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 7615689106536464782} + m_Mesh: {fileID: 4300004, guid: 3a78ab987181dc945be82cdb21028861, type: 3} +--- !u!23 &7615689106534276942 +MeshRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 7615689106536464782} + m_Enabled: 1 + m_CastShadows: 1 + m_ReceiveShadows: 1 + m_DynamicOccludee: 1 + m_MotionVectors: 1 + m_LightProbeUsage: 1 + m_ReflectionProbeUsage: 1 + m_RenderingLayerMask: 1 + m_RendererPriority: 0 + m_Materials: + - {fileID: 2100000, guid: d11179e416c9b394c8176d36a0dcae52, type: 2} + m_StaticBatchInfo: + firstSubMesh: 0 + subMeshCount: 0 + m_StaticBatchRoot: {fileID: 0} + m_ProbeAnchor: {fileID: 0} + m_LightProbeVolumeOverride: {fileID: 0} + m_ScaleInLightmap: 1 + m_PreserveUVs: 0 + m_IgnoreNormalsForChartDetection: 0 + m_ImportantGI: 0 + m_StitchLightmapSeams: 0 + m_SelectedEditorRenderState: 3 + m_MinimumChartSize: 4 + m_AutoUVMaxDistance: 0.5 + m_AutoUVMaxAngle: 89 + m_LightmapParameters: {fileID: 0} + m_SortingLayerID: 0 + m_SortingLayer: 0 + m_SortingOrder: 0 +--- !u!64 &4566121029341651658 +MeshCollider: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 7615689106536464782} + m_Material: {fileID: 0} + m_IsTrigger: 0 + m_Enabled: 1 + serializedVersion: 3 + m_Convex: 0 + m_CookingOptions: 14 + m_Mesh: {fileID: 4300000, guid: 7d98a46148b6a8843ac25d814f897473, type: 3} +--- !u!114 &957098524720228105 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 7615689106536464782} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: ca4c92f9d8625e04b85d2ad57bf3ecbd, type: 3} + m_Name: + m_EditorClassIdentifier: + bounciness: 0.1 diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Prefabs/TrackCamberCurve.prefab.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Prefabs/TrackCamberCurve.prefab.meta" new file mode 100644 index 00000000..497216e6 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Prefabs/TrackCamberCurve.prefab.meta" @@ -0,0 +1,7 @@ +fileFormatVersion: 2 +guid: e5173aaa61cc2574392f31de57e2dad6 +PrefabImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Prefabs/TrackCurveBig.prefab" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Prefabs/TrackCurveBig.prefab" new file mode 100644 index 00000000..4af25bff --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Prefabs/TrackCurveBig.prefab" @@ -0,0 +1,232 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!1 &4960254935943731137 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 4960254935943498721} + - component: {fileID: 4960254935946890177} + - component: {fileID: 4960254935945922817} + - component: {fileID: 7676860086544529814} + - component: {fileID: 8974547615999416303} + m_Layer: 0 + m_Name: Fence + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 4294967295 + m_IsActive: 1 +--- !u!4 &4960254935943498721 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 4960254935943731137} + m_LocalRotation: {x: 0, y: -0, z: -0, w: 1} + m_LocalPosition: {x: -0, y: 0, z: 0} + m_LocalScale: {x: 1, y: 1, z: 1} + m_Children: [] + m_Father: {fileID: 4960254935943498725} + m_RootOrder: 0 + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!33 &4960254935946890177 +MeshFilter: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 4960254935943731137} + m_Mesh: {fileID: 4300002, guid: ea8028981c410bd43a9a7467f73c6591, type: 3} +--- !u!23 &4960254935945922817 +MeshRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 4960254935943731137} + m_Enabled: 1 + m_CastShadows: 1 + m_ReceiveShadows: 1 + m_DynamicOccludee: 1 + m_MotionVectors: 1 + m_LightProbeUsage: 1 + m_ReflectionProbeUsage: 1 + m_RenderingLayerMask: 1 + m_RendererPriority: 0 + m_Materials: + - {fileID: 2100000, guid: d11179e416c9b394c8176d36a0dcae52, type: 2} + m_StaticBatchInfo: + firstSubMesh: 0 + subMeshCount: 0 + m_StaticBatchRoot: {fileID: 0} + m_ProbeAnchor: {fileID: 0} + m_LightProbeVolumeOverride: {fileID: 0} + m_ScaleInLightmap: 1 + m_PreserveUVs: 0 + m_IgnoreNormalsForChartDetection: 0 + m_ImportantGI: 0 + m_StitchLightmapSeams: 0 + m_SelectedEditorRenderState: 3 + m_MinimumChartSize: 4 + m_AutoUVMaxDistance: 0.5 + m_AutoUVMaxAngle: 89 + m_LightmapParameters: {fileID: 0} + m_SortingLayerID: 0 + m_SortingLayer: 0 + m_SortingOrder: 0 +--- !u!64 &7676860086544529814 +MeshCollider: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 4960254935943731137} + m_Material: {fileID: 0} + m_IsTrigger: 0 + m_Enabled: 1 + serializedVersion: 3 + m_Convex: 0 + m_CookingOptions: 14 + m_Mesh: {fileID: 4300000, guid: 844655fa88a548c4badc07cc3d5c09e8, type: 3} +--- !u!114 &8974547615999416303 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 4960254935943731137} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: ca4c92f9d8625e04b85d2ad57bf3ecbd, type: 3} + m_Name: + m_EditorClassIdentifier: + bounciness: 0.1 +--- !u!1 &4960254935943731139 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 4960254935943498723} + - component: {fileID: 4960254935946890179} + - component: {fileID: 4960254935945922819} + - component: {fileID: 7284331028959317943} + m_Layer: 9 + m_Name: Track + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 4294967295 + m_IsActive: 1 +--- !u!4 &4960254935943498723 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 4960254935943731139} + m_LocalRotation: {x: 0, y: -0, z: -0, w: 1} + m_LocalPosition: {x: -0, y: 0, z: 0} + m_LocalScale: {x: 1, y: 1, z: 1} + m_Children: [] + m_Father: {fileID: 4960254935943498725} + m_RootOrder: 1 + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!33 &4960254935946890179 +MeshFilter: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 4960254935943731139} + m_Mesh: {fileID: 4300000, guid: ea8028981c410bd43a9a7467f73c6591, type: 3} +--- !u!23 &4960254935945922819 +MeshRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 4960254935943731139} + m_Enabled: 1 + m_CastShadows: 1 + m_ReceiveShadows: 1 + m_DynamicOccludee: 1 + m_MotionVectors: 1 + m_LightProbeUsage: 1 + m_ReflectionProbeUsage: 1 + m_RenderingLayerMask: 1 + m_RendererPriority: 0 + m_Materials: + - {fileID: 2100000, guid: d11179e416c9b394c8176d36a0dcae52, type: 2} + m_StaticBatchInfo: + firstSubMesh: 0 + subMeshCount: 0 + m_StaticBatchRoot: {fileID: 0} + m_ProbeAnchor: {fileID: 0} + m_LightProbeVolumeOverride: {fileID: 0} + m_ScaleInLightmap: 1 + m_PreserveUVs: 0 + m_IgnoreNormalsForChartDetection: 0 + m_ImportantGI: 0 + m_StitchLightmapSeams: 0 + m_SelectedEditorRenderState: 3 + m_MinimumChartSize: 4 + m_AutoUVMaxDistance: 0.5 + m_AutoUVMaxAngle: 89 + m_LightmapParameters: {fileID: 0} + m_SortingLayerID: 0 + m_SortingLayer: 0 + m_SortingOrder: 0 +--- !u!64 &7284331028959317943 +MeshCollider: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 4960254935943731139} + m_Material: {fileID: 0} + m_IsTrigger: 0 + m_Enabled: 1 + serializedVersion: 3 + m_Convex: 0 + m_CookingOptions: 14 + m_Mesh: {fileID: 4300000, guid: e7dd2bb6af3d71e419b224eeb9a39dd5, type: 3} +--- !u!1 &4960254935943731141 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 4960254935943498725} + m_Layer: 0 + m_Name: TrackCurveBig + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 4294967295 + m_IsActive: 1 +--- !u!4 &4960254935943498725 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 4960254935943731141} + m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} + m_LocalPosition: {x: 0, y: 0, z: 0} + m_LocalScale: {x: 1, y: 1, z: 1} + m_Children: + - {fileID: 4960254935943498721} + - {fileID: 4960254935943498723} + m_Father: {fileID: 0} + m_RootOrder: 0 + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Prefabs/TrackCurveBig.prefab.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Prefabs/TrackCurveBig.prefab.meta" new file mode 100644 index 00000000..779de128 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Prefabs/TrackCurveBig.prefab.meta" @@ -0,0 +1,7 @@ +fileFormatVersion: 2 +guid: 215971d3cbf499546bc64d67613d3c81 +PrefabImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Prefabs/TrackCurveMedium.prefab" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Prefabs/TrackCurveMedium.prefab" new file mode 100644 index 00000000..54c41f6e --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Prefabs/TrackCurveMedium.prefab" @@ -0,0 +1,232 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!1 &2901048828853111960 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 2901048828853342392} + m_Layer: 0 + m_Name: Track_CurveMedium + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 4294967295 + m_IsActive: 1 +--- !u!4 &2901048828853342392 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 2901048828853111960} + m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} + m_LocalPosition: {x: 0, y: 0, z: 0} + m_LocalScale: {x: -1, y: 1, z: 1} + m_Children: + - {fileID: 2901048828853342396} + - {fileID: 2901048828853342398} + m_Father: {fileID: 0} + m_RootOrder: 0 + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!1 &2901048828853111964 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 2901048828853342396} + - component: {fileID: 2901048828854112412} + - component: {fileID: 2901048828855112284} + - component: {fileID: 8518793970101709501} + - component: {fileID: 3329734581713383381} + m_Layer: 0 + m_Name: Fence + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 4294967295 + m_IsActive: 1 +--- !u!4 &2901048828853342396 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 2901048828853111964} + m_LocalRotation: {x: 0, y: -0, z: -0, w: 1} + m_LocalPosition: {x: 0, y: 0, z: 0} + m_LocalScale: {x: 1, y: 1, z: 1} + m_Children: [] + m_Father: {fileID: 2901048828853342392} + m_RootOrder: 0 + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!33 &2901048828854112412 +MeshFilter: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 2901048828853111964} + m_Mesh: {fileID: 4300002, guid: cf8b46f3b71641b42b2e8cf974e9c644, type: 3} +--- !u!23 &2901048828855112284 +MeshRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 2901048828853111964} + m_Enabled: 1 + m_CastShadows: 1 + m_ReceiveShadows: 1 + m_DynamicOccludee: 1 + m_MotionVectors: 1 + m_LightProbeUsage: 1 + m_ReflectionProbeUsage: 1 + m_RenderingLayerMask: 1 + m_RendererPriority: 0 + m_Materials: + - {fileID: 2100000, guid: d11179e416c9b394c8176d36a0dcae52, type: 2} + m_StaticBatchInfo: + firstSubMesh: 0 + subMeshCount: 0 + m_StaticBatchRoot: {fileID: 0} + m_ProbeAnchor: {fileID: 0} + m_LightProbeVolumeOverride: {fileID: 0} + m_ScaleInLightmap: 1 + m_PreserveUVs: 0 + m_IgnoreNormalsForChartDetection: 0 + m_ImportantGI: 0 + m_StitchLightmapSeams: 0 + m_SelectedEditorRenderState: 3 + m_MinimumChartSize: 4 + m_AutoUVMaxDistance: 0.5 + m_AutoUVMaxAngle: 89 + m_LightmapParameters: {fileID: 0} + m_SortingLayerID: 0 + m_SortingLayer: 0 + m_SortingOrder: 0 +--- !u!64 &8518793970101709501 +MeshCollider: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 2901048828853111964} + m_Material: {fileID: 0} + m_IsTrigger: 0 + m_Enabled: 1 + serializedVersion: 3 + m_Convex: 0 + m_CookingOptions: 14 + m_Mesh: {fileID: 4300000, guid: 9d5b4d3ee36fe2248b8f8178ea494662, type: 3} +--- !u!114 &3329734581713383381 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 2901048828853111964} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: ca4c92f9d8625e04b85d2ad57bf3ecbd, type: 3} + m_Name: + m_EditorClassIdentifier: + bounciness: 0.1 +--- !u!1 &2901048828853111966 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 2901048828853342398} + - component: {fileID: 2901048828854112414} + - component: {fileID: 2901048828855112286} + - component: {fileID: 4324192154363245002} + m_Layer: 9 + m_Name: Track + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 4294967295 + m_IsActive: 1 +--- !u!4 &2901048828853342398 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 2901048828853111966} + m_LocalRotation: {x: 0, y: -0, z: -0, w: 1} + m_LocalPosition: {x: 0, y: 0, z: 0} + m_LocalScale: {x: 1, y: 1, z: 1} + m_Children: [] + m_Father: {fileID: 2901048828853342392} + m_RootOrder: 1 + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!33 &2901048828854112414 +MeshFilter: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 2901048828853111966} + m_Mesh: {fileID: 4300000, guid: cf8b46f3b71641b42b2e8cf974e9c644, type: 3} +--- !u!23 &2901048828855112286 +MeshRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 2901048828853111966} + m_Enabled: 1 + m_CastShadows: 1 + m_ReceiveShadows: 1 + m_DynamicOccludee: 1 + m_MotionVectors: 1 + m_LightProbeUsage: 1 + m_ReflectionProbeUsage: 1 + m_RenderingLayerMask: 1 + m_RendererPriority: 0 + m_Materials: + - {fileID: 2100000, guid: d11179e416c9b394c8176d36a0dcae52, type: 2} + m_StaticBatchInfo: + firstSubMesh: 0 + subMeshCount: 0 + m_StaticBatchRoot: {fileID: 0} + m_ProbeAnchor: {fileID: 0} + m_LightProbeVolumeOverride: {fileID: 0} + m_ScaleInLightmap: 1 + m_PreserveUVs: 0 + m_IgnoreNormalsForChartDetection: 0 + m_ImportantGI: 0 + m_StitchLightmapSeams: 0 + m_SelectedEditorRenderState: 3 + m_MinimumChartSize: 4 + m_AutoUVMaxDistance: 0.5 + m_AutoUVMaxAngle: 89 + m_LightmapParameters: {fileID: 0} + m_SortingLayerID: 0 + m_SortingLayer: 0 + m_SortingOrder: 0 +--- !u!64 &4324192154363245002 +MeshCollider: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 2901048828853111966} + m_Material: {fileID: 0} + m_IsTrigger: 0 + m_Enabled: 1 + serializedVersion: 3 + m_Convex: 0 + m_CookingOptions: 14 + m_Mesh: {fileID: 4300000, guid: 4dab2a37e1d72794cbd731aacb7847dd, type: 3} diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Prefabs/TrackCurveMedium.prefab.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Prefabs/TrackCurveMedium.prefab.meta" new file mode 100644 index 00000000..e1a942fe --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Prefabs/TrackCurveMedium.prefab.meta" @@ -0,0 +1,7 @@ +fileFormatVersion: 2 +guid: 19855eab27bbfcb40bdc747ff5a0806d +PrefabImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Prefabs/TrackCurveSmall.prefab" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Prefabs/TrackCurveSmall.prefab" new file mode 100644 index 00000000..65390278 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Prefabs/TrackCurveSmall.prefab" @@ -0,0 +1,232 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!1 &397754956270080315 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 397754956270439707} + m_Layer: 0 + m_Name: Track_CurveSmall + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 4294967295 + m_IsActive: 1 +--- !u!4 &397754956270439707 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 397754956270080315} + m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} + m_LocalPosition: {x: 0, y: 0, z: 0} + m_LocalScale: {x: 1, y: 1, z: 1} + m_Children: + - {fileID: 397754956270439711} + - {fileID: 397754956270439709} + m_Father: {fileID: 0} + m_RootOrder: 0 + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!1 &397754956270080317 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 397754956270439709} + - component: {fileID: 397754956269145405} + - component: {fileID: 397754956268146685} + - component: {fileID: 8226952079009128058} + m_Layer: 9 + m_Name: Track + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 4294967295 + m_IsActive: 1 +--- !u!4 &397754956270439709 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 397754956270080317} + m_LocalRotation: {x: 0, y: -0, z: -0, w: 1} + m_LocalPosition: {x: 0, y: 0, z: 0} + m_LocalScale: {x: 1, y: 1, z: 1} + m_Children: [] + m_Father: {fileID: 397754956270439707} + m_RootOrder: 1 + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!33 &397754956269145405 +MeshFilter: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 397754956270080317} + m_Mesh: {fileID: 4300000, guid: 6aba5d5cbbb6df346ba45c2991fcaf00, type: 3} +--- !u!23 &397754956268146685 +MeshRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 397754956270080317} + m_Enabled: 1 + m_CastShadows: 1 + m_ReceiveShadows: 1 + m_DynamicOccludee: 1 + m_MotionVectors: 1 + m_LightProbeUsage: 1 + m_ReflectionProbeUsage: 1 + m_RenderingLayerMask: 1 + m_RendererPriority: 0 + m_Materials: + - {fileID: 2100000, guid: d11179e416c9b394c8176d36a0dcae52, type: 2} + m_StaticBatchInfo: + firstSubMesh: 0 + subMeshCount: 0 + m_StaticBatchRoot: {fileID: 0} + m_ProbeAnchor: {fileID: 0} + m_LightProbeVolumeOverride: {fileID: 0} + m_ScaleInLightmap: 1 + m_PreserveUVs: 0 + m_IgnoreNormalsForChartDetection: 0 + m_ImportantGI: 0 + m_StitchLightmapSeams: 0 + m_SelectedEditorRenderState: 3 + m_MinimumChartSize: 4 + m_AutoUVMaxDistance: 0.5 + m_AutoUVMaxAngle: 89 + m_LightmapParameters: {fileID: 0} + m_SortingLayerID: 0 + m_SortingLayer: 0 + m_SortingOrder: 0 +--- !u!64 &8226952079009128058 +MeshCollider: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 397754956270080317} + m_Material: {fileID: 0} + m_IsTrigger: 0 + m_Enabled: 1 + serializedVersion: 3 + m_Convex: 0 + m_CookingOptions: 14 + m_Mesh: {fileID: 4300000, guid: 7a12252bdee88de449f5e72aa3547da4, type: 3} +--- !u!1 &397754956270080319 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 397754956270439711} + - component: {fileID: 397754956269145407} + - component: {fileID: 397754956268146687} + - component: {fileID: 1668959004661353503} + - component: {fileID: 3139136489436413413} + m_Layer: 0 + m_Name: Fence + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 4294967295 + m_IsActive: 1 +--- !u!4 &397754956270439711 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 397754956270080319} + m_LocalRotation: {x: 0, y: -0, z: -0, w: 1} + m_LocalPosition: {x: 0, y: 0, z: 0} + m_LocalScale: {x: 1, y: 1, z: 1} + m_Children: [] + m_Father: {fileID: 397754956270439707} + m_RootOrder: 0 + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!33 &397754956269145407 +MeshFilter: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 397754956270080319} + m_Mesh: {fileID: 4300002, guid: 6aba5d5cbbb6df346ba45c2991fcaf00, type: 3} +--- !u!23 &397754956268146687 +MeshRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 397754956270080319} + m_Enabled: 1 + m_CastShadows: 1 + m_ReceiveShadows: 1 + m_DynamicOccludee: 1 + m_MotionVectors: 1 + m_LightProbeUsage: 1 + m_ReflectionProbeUsage: 1 + m_RenderingLayerMask: 1 + m_RendererPriority: 0 + m_Materials: + - {fileID: 2100000, guid: d11179e416c9b394c8176d36a0dcae52, type: 2} + m_StaticBatchInfo: + firstSubMesh: 0 + subMeshCount: 0 + m_StaticBatchRoot: {fileID: 0} + m_ProbeAnchor: {fileID: 0} + m_LightProbeVolumeOverride: {fileID: 0} + m_ScaleInLightmap: 1 + m_PreserveUVs: 0 + m_IgnoreNormalsForChartDetection: 0 + m_ImportantGI: 0 + m_StitchLightmapSeams: 0 + m_SelectedEditorRenderState: 3 + m_MinimumChartSize: 4 + m_AutoUVMaxDistance: 0.5 + m_AutoUVMaxAngle: 89 + m_LightmapParameters: {fileID: 0} + m_SortingLayerID: 0 + m_SortingLayer: 0 + m_SortingOrder: 0 +--- !u!64 &1668959004661353503 +MeshCollider: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 397754956270080319} + m_Material: {fileID: 0} + m_IsTrigger: 0 + m_Enabled: 1 + serializedVersion: 3 + m_Convex: 0 + m_CookingOptions: 14 + m_Mesh: {fileID: 4300000, guid: c9da9a4eb5561534cb8d191a9e1d31da, type: 3} +--- !u!114 &3139136489436413413 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 397754956270080319} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: ca4c92f9d8625e04b85d2ad57bf3ecbd, type: 3} + m_Name: + m_EditorClassIdentifier: + bounciness: 0.1 diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Prefabs/TrackCurveSmall.prefab.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Prefabs/TrackCurveSmall.prefab.meta" new file mode 100644 index 00000000..0e42dea1 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Prefabs/TrackCurveSmall.prefab.meta" @@ -0,0 +1,7 @@ +fileFormatVersion: 2 +guid: f1a85f852a83aad4d9ceccf7929b3513 +PrefabImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Prefabs/TrackManager.prefab" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Prefabs/TrackManager.prefab" new file mode 100644 index 00000000..c1d9a80c --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Prefabs/TrackManager.prefab" @@ -0,0 +1,78 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!1 &9084884021648134802 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 9084884021648134800} + - component: {fileID: 9084884021648134801} + - component: {fileID: 9084884021648134807} + - component: {fileID: 9084884021648134806} + m_Layer: 0 + m_Name: TrackManager + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &9084884021648134800 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 9084884021648134802} + m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} + m_LocalPosition: {x: 14.688076, y: 10.422963, z: 140.82053} + m_LocalScale: {x: 1, y: 1, z: 1} + m_Children: [] + m_Father: {fileID: 0} + m_RootOrder: 0 + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!114 &9084884021648134801 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 9084884021648134802} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: c1f49c35970eda249befce5d24455eb3, type: 3} + m_Name: + m_EditorClassIdentifier: + trackName: ArtTest + raceLapTotal: 3 + checkpoints: + - {fileID: 0} + kartRepositioner: {fileID: 9084884021648134807} +--- !u!114 &9084884021648134807 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 9084884021648134802} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: bc8057417ab61c94ba1339339f9745cb, type: 3} + m_Name: + m_EditorClassIdentifier: +--- !u!114 &9084884021648134806 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 9084884021648134802} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: f04a008d6bb17dc4aaaeb69485deb658, type: 3} + m_Name: + m_EditorClassIdentifier: + movable: {fileID: 0} + trackManager: {fileID: 9084884021648134801} diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Prefabs/TrackManager.prefab.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Prefabs/TrackManager.prefab.meta" new file mode 100644 index 00000000..9ba39b3f --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Prefabs/TrackManager.prefab.meta" @@ -0,0 +1,7 @@ +fileFormatVersion: 2 +guid: 1a27545505a30d6479abf78847244a72 +PrefabImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Prefabs/TrackStraightShort.prefab" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Prefabs/TrackStraightShort.prefab" new file mode 100644 index 00000000..300da8c0 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Prefabs/TrackStraightShort.prefab" @@ -0,0 +1,232 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!1 &7267178570433466096 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 7267178570433368784} + m_Layer: 0 + m_Name: TrackStraightShort + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 4294967295 + m_IsActive: 1 +--- !u!4 &7267178570433368784 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 7267178570433466096} + m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} + m_LocalPosition: {x: 0, y: 0, z: 0} + m_LocalScale: {x: 1, y: 1, z: 1} + m_Children: + - {fileID: 7267178570433368788} + - {fileID: 7267178570433368790} + m_Father: {fileID: 0} + m_RootOrder: 0 + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!1 &7267178570433466100 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 7267178570433368788} + - component: {fileID: 7267178570436793076} + - component: {fileID: 7267178570435661876} + - component: {fileID: 370362633443524844} + - component: {fileID: 2361427384526281747} + m_Layer: 0 + m_Name: Fence + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 4294967295 + m_IsActive: 1 +--- !u!4 &7267178570433368788 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 7267178570433466100} + m_LocalRotation: {x: 0, y: -0, z: -0, w: 1} + m_LocalPosition: {x: -0, y: 0, z: 0} + m_LocalScale: {x: 1, y: 1, z: 1} + m_Children: [] + m_Father: {fileID: 7267178570433368784} + m_RootOrder: 0 + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!33 &7267178570436793076 +MeshFilter: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 7267178570433466100} + m_Mesh: {fileID: 4300002, guid: c536be666f60a094ca84fdea79a89adb, type: 3} +--- !u!23 &7267178570435661876 +MeshRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 7267178570433466100} + m_Enabled: 1 + m_CastShadows: 1 + m_ReceiveShadows: 1 + m_DynamicOccludee: 1 + m_MotionVectors: 1 + m_LightProbeUsage: 1 + m_ReflectionProbeUsage: 1 + m_RenderingLayerMask: 1 + m_RendererPriority: 0 + m_Materials: + - {fileID: 2100000, guid: d11179e416c9b394c8176d36a0dcae52, type: 2} + m_StaticBatchInfo: + firstSubMesh: 0 + subMeshCount: 0 + m_StaticBatchRoot: {fileID: 0} + m_ProbeAnchor: {fileID: 0} + m_LightProbeVolumeOverride: {fileID: 0} + m_ScaleInLightmap: 1 + m_PreserveUVs: 0 + m_IgnoreNormalsForChartDetection: 0 + m_ImportantGI: 0 + m_StitchLightmapSeams: 0 + m_SelectedEditorRenderState: 3 + m_MinimumChartSize: 4 + m_AutoUVMaxDistance: 0.5 + m_AutoUVMaxAngle: 89 + m_LightmapParameters: {fileID: 0} + m_SortingLayerID: 0 + m_SortingLayer: 0 + m_SortingOrder: 0 +--- !u!64 &370362633443524844 +MeshCollider: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 7267178570433466100} + m_Material: {fileID: 0} + m_IsTrigger: 0 + m_Enabled: 1 + serializedVersion: 3 + m_Convex: 0 + m_CookingOptions: 14 + m_Mesh: {fileID: 4300000, guid: 71fb4b36fc973904c8f15d164c0e48ae, type: 3} +--- !u!114 &2361427384526281747 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 7267178570433466100} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: ca4c92f9d8625e04b85d2ad57bf3ecbd, type: 3} + m_Name: + m_EditorClassIdentifier: + bounciness: 0.1 +--- !u!1 &7267178570433466102 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 7267178570433368790} + - component: {fileID: 7267178570436793078} + - component: {fileID: 7267178570435661878} + - component: {fileID: 7403524533343976297} + m_Layer: 9 + m_Name: Track + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 4294967295 + m_IsActive: 1 +--- !u!4 &7267178570433368790 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 7267178570433466102} + m_LocalRotation: {x: 0, y: -0, z: -0, w: 1} + m_LocalPosition: {x: -0, y: 0, z: 0} + m_LocalScale: {x: 1, y: 1, z: 1} + m_Children: [] + m_Father: {fileID: 7267178570433368784} + m_RootOrder: 1 + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!33 &7267178570436793078 +MeshFilter: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 7267178570433466102} + m_Mesh: {fileID: 4300000, guid: c536be666f60a094ca84fdea79a89adb, type: 3} +--- !u!23 &7267178570435661878 +MeshRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 7267178570433466102} + m_Enabled: 1 + m_CastShadows: 1 + m_ReceiveShadows: 1 + m_DynamicOccludee: 1 + m_MotionVectors: 1 + m_LightProbeUsage: 1 + m_ReflectionProbeUsage: 1 + m_RenderingLayerMask: 1 + m_RendererPriority: 0 + m_Materials: + - {fileID: 2100000, guid: d11179e416c9b394c8176d36a0dcae52, type: 2} + m_StaticBatchInfo: + firstSubMesh: 0 + subMeshCount: 0 + m_StaticBatchRoot: {fileID: 0} + m_ProbeAnchor: {fileID: 0} + m_LightProbeVolumeOverride: {fileID: 0} + m_ScaleInLightmap: 1 + m_PreserveUVs: 0 + m_IgnoreNormalsForChartDetection: 0 + m_ImportantGI: 0 + m_StitchLightmapSeams: 0 + m_SelectedEditorRenderState: 3 + m_MinimumChartSize: 4 + m_AutoUVMaxDistance: 0.5 + m_AutoUVMaxAngle: 89 + m_LightmapParameters: {fileID: 0} + m_SortingLayerID: 0 + m_SortingLayer: 0 + m_SortingOrder: 0 +--- !u!64 &7403524533343976297 +MeshCollider: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 7267178570433466102} + m_Material: {fileID: 0} + m_IsTrigger: 0 + m_Enabled: 1 + serializedVersion: 3 + m_Convex: 0 + m_CookingOptions: 14 + m_Mesh: {fileID: 4300000, guid: c26a2ada60c256142a8586788911a9ce, type: 3} diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Prefabs/TrackStraightShort.prefab.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Prefabs/TrackStraightShort.prefab.meta" new file mode 100644 index 00000000..a8e6905e --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Prefabs/TrackStraightShort.prefab.meta" @@ -0,0 +1,7 @@ +fileFormatVersion: 2 +guid: ad9b18b5e2bf23940b0adbbbbd09655f +PrefabImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Prefabs/TrackToCamber.prefab" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Prefabs/TrackToCamber.prefab" new file mode 100644 index 00000000..dac63adb --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Prefabs/TrackToCamber.prefab" @@ -0,0 +1,232 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!1 &1588026163378520113 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 1588026163378494481} + m_Layer: 0 + m_Name: Track_ToCamber + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 4294967295 + m_IsActive: 1 +--- !u!4 &1588026163378494481 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1588026163378520113} + m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} + m_LocalPosition: {x: 0, y: 0, z: 0} + m_LocalScale: {x: 1, y: 1, z: 1} + m_Children: + - {fileID: 1588026163378494483} + - {fileID: 1588026163378494485} + m_Father: {fileID: 0} + m_RootOrder: 0 + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!1 &1588026163378520115 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 1588026163378494483} + - component: {fileID: 1588026163375627315} + - component: {fileID: 1588026163376594675} + - component: {fileID: 7499111911012526464} + - component: {fileID: 6090537190351603301} + m_Layer: 0 + m_Name: Fence + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 4294967295 + m_IsActive: 1 +--- !u!4 &1588026163378494483 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1588026163378520115} + m_LocalRotation: {x: 0, y: -0, z: -0, w: 1} + m_LocalPosition: {x: -0, y: 0, z: 0} + m_LocalScale: {x: 1, y: 1, z: 1} + m_Children: [] + m_Father: {fileID: 1588026163378494481} + m_RootOrder: 0 + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!33 &1588026163375627315 +MeshFilter: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1588026163378520115} + m_Mesh: {fileID: 4300004, guid: d64d45aad01a61a419213469c5e6094b, type: 3} +--- !u!23 &1588026163376594675 +MeshRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1588026163378520115} + m_Enabled: 1 + m_CastShadows: 1 + m_ReceiveShadows: 1 + m_DynamicOccludee: 1 + m_MotionVectors: 1 + m_LightProbeUsage: 1 + m_ReflectionProbeUsage: 1 + m_RenderingLayerMask: 1 + m_RendererPriority: 0 + m_Materials: + - {fileID: 2100000, guid: d11179e416c9b394c8176d36a0dcae52, type: 2} + m_StaticBatchInfo: + firstSubMesh: 0 + subMeshCount: 0 + m_StaticBatchRoot: {fileID: 0} + m_ProbeAnchor: {fileID: 0} + m_LightProbeVolumeOverride: {fileID: 0} + m_ScaleInLightmap: 1 + m_PreserveUVs: 0 + m_IgnoreNormalsForChartDetection: 0 + m_ImportantGI: 0 + m_StitchLightmapSeams: 0 + m_SelectedEditorRenderState: 3 + m_MinimumChartSize: 4 + m_AutoUVMaxDistance: 0.5 + m_AutoUVMaxAngle: 89 + m_LightmapParameters: {fileID: 0} + m_SortingLayerID: 0 + m_SortingLayer: 0 + m_SortingOrder: 0 +--- !u!64 &7499111911012526464 +MeshCollider: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1588026163378520115} + m_Material: {fileID: 0} + m_IsTrigger: 0 + m_Enabled: 1 + serializedVersion: 3 + m_Convex: 0 + m_CookingOptions: 14 + m_Mesh: {fileID: 4300000, guid: caf6e7e523c6b9a44896f63539e75677, type: 3} +--- !u!114 &6090537190351603301 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1588026163378520115} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: ca4c92f9d8625e04b85d2ad57bf3ecbd, type: 3} + m_Name: + m_EditorClassIdentifier: + bounciness: 0.1 +--- !u!1 &1588026163378520117 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 1588026163378494485} + - component: {fileID: 1588026163375627317} + - component: {fileID: 1588026163376594677} + - component: {fileID: 3819961639279004789} + m_Layer: 9 + m_Name: Track + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 4294967295 + m_IsActive: 1 +--- !u!4 &1588026163378494485 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1588026163378520117} + m_LocalRotation: {x: 0, y: -0, z: -0, w: 1} + m_LocalPosition: {x: -0, y: 0, z: 0} + m_LocalScale: {x: 1, y: 1, z: 1} + m_Children: [] + m_Father: {fileID: 1588026163378494481} + m_RootOrder: 1 + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!33 &1588026163375627317 +MeshFilter: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1588026163378520117} + m_Mesh: {fileID: 4300002, guid: d64d45aad01a61a419213469c5e6094b, type: 3} +--- !u!23 &1588026163376594677 +MeshRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1588026163378520117} + m_Enabled: 1 + m_CastShadows: 1 + m_ReceiveShadows: 1 + m_DynamicOccludee: 1 + m_MotionVectors: 1 + m_LightProbeUsage: 1 + m_ReflectionProbeUsage: 1 + m_RenderingLayerMask: 1 + m_RendererPriority: 0 + m_Materials: + - {fileID: 2100000, guid: d11179e416c9b394c8176d36a0dcae52, type: 2} + m_StaticBatchInfo: + firstSubMesh: 0 + subMeshCount: 0 + m_StaticBatchRoot: {fileID: 0} + m_ProbeAnchor: {fileID: 0} + m_LightProbeVolumeOverride: {fileID: 0} + m_ScaleInLightmap: 1 + m_PreserveUVs: 0 + m_IgnoreNormalsForChartDetection: 0 + m_ImportantGI: 0 + m_StitchLightmapSeams: 0 + m_SelectedEditorRenderState: 3 + m_MinimumChartSize: 4 + m_AutoUVMaxDistance: 0.5 + m_AutoUVMaxAngle: 89 + m_LightmapParameters: {fileID: 0} + m_SortingLayerID: 0 + m_SortingLayer: 0 + m_SortingOrder: 0 +--- !u!64 &3819961639279004789 +MeshCollider: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1588026163378520117} + m_Material: {fileID: 0} + m_IsTrigger: 0 + m_Enabled: 1 + serializedVersion: 3 + m_Convex: 0 + m_CookingOptions: 14 + m_Mesh: {fileID: 4300000, guid: ee53d570b8e99754889811c75e57f688, type: 3} diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Prefabs/TrackToCamber.prefab.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Prefabs/TrackToCamber.prefab.meta" new file mode 100644 index 00000000..2248c718 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Prefabs/TrackToCamber.prefab.meta" @@ -0,0 +1,7 @@ +fileFormatVersion: 2 +guid: 8a6e80e5d3c417340b1843b94b07fa82 +PrefabImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Prefabs/UI Canvas.prefab" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Prefabs/UI Canvas.prefab" new file mode 100644 index 00000000..faea1177 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Prefabs/UI Canvas.prefab" @@ -0,0 +1,1563 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!1 &876742143 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 876742144} + - component: {fileID: 876742146} + - component: {fileID: 876742147} + m_Layer: 5 + m_Name: Buttons + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!224 &876742144 +RectTransform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 876742143} + m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} + m_LocalPosition: {x: 0, y: 0, z: 0} + m_LocalScale: {x: 1, y: 1, z: 1} + m_Children: + - {fileID: 9051402262044422234} + - {fileID: 2722743759761485157} + - {fileID: 2821225496618436147} + - {fileID: 4858264531726499593} + m_Father: {fileID: 4009130065698333725} + m_RootOrder: 4 + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} + m_AnchorMin: {x: 0, y: 0} + m_AnchorMax: {x: 1, y: 0} + m_AnchoredPosition: {x: 0, y: 0} + m_SizeDelta: {x: -500, y: 100} + m_Pivot: {x: 0.5, y: 0} +--- !u!222 &876742146 +CanvasRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 876742143} + m_CullTransparentMesh: 0 +--- !u!114 &876742147 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 876742143} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: -405508275, guid: f70555f144d8491a825f0804e09c671c, type: 3} + m_Name: + m_EditorClassIdentifier: + m_Padding: + m_Left: 20 + m_Right: 20 + m_Top: 20 + m_Bottom: 20 + m_ChildAlignment: 4 + m_Spacing: 5 + m_ChildForceExpandWidth: 1 + m_ChildForceExpandHeight: 1 + m_ChildControlWidth: 1 + m_ChildControlHeight: 1 +--- !u!1 &4009130065698333721 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 4009130065698333725} + - component: {fileID: 4009130065698333722} + - component: {fileID: 4009130065698333723} + - component: {fileID: 4009130065698333720} + - component: {fileID: 4009130065698333724} + m_Layer: 5 + m_Name: UI Canvas + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!224 &4009130065698333725 +RectTransform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 4009130065698333721} + m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} + m_LocalPosition: {x: 0, y: 0, z: 0} + m_LocalScale: {x: 0, y: 0, z: 0} + m_Children: + - {fileID: 4009130065122623658} + - {fileID: 407490711998329187} + - {fileID: 1321983555675855210} + - {fileID: 8066716576335473869} + - {fileID: 876742144} + m_Father: {fileID: 0} + m_RootOrder: 0 + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} + m_AnchorMin: {x: 0, y: 0} + m_AnchorMax: {x: 0, y: 0} + m_AnchoredPosition: {x: 0, y: 0} + m_SizeDelta: {x: 0, y: 0} + m_Pivot: {x: 0, y: 0} +--- !u!223 &4009130065698333722 +Canvas: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 4009130065698333721} + m_Enabled: 1 + serializedVersion: 3 + m_RenderMode: 0 + m_Camera: {fileID: 0} + m_PlaneDistance: 100 + m_PixelPerfect: 0 + m_ReceivesEvents: 1 + m_OverrideSorting: 0 + m_OverridePixelPerfect: 0 + m_SortingBucketNormalizedSize: 0 + m_AdditionalShaderChannelsFlag: 25 + m_SortingLayerID: 0 + m_SortingOrder: 0 + m_TargetDisplay: 0 +--- !u!114 &4009130065698333723 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 4009130065698333721} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 1980459831, guid: f70555f144d8491a825f0804e09c671c, type: 3} + m_Name: + m_EditorClassIdentifier: + m_UiScaleMode: 0 + m_ReferencePixelsPerUnit: 100 + m_ScaleFactor: 1 + m_ReferenceResolution: {x: 800, y: 600} + m_ScreenMatchMode: 0 + m_MatchWidthOrHeight: 0 + m_PhysicalUnit: 3 + m_FallbackScreenDPI: 96 + m_DefaultSpriteDPI: 96 + m_DynamicPixelsPerUnit: 1 +--- !u!114 &4009130065698333720 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 4009130065698333721} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 1301386320, guid: f70555f144d8491a825f0804e09c671c, type: 3} + m_Name: + m_EditorClassIdentifier: + m_IgnoreReversedGraphics: 1 + m_BlockingObjects: 0 + m_BlockingMask: + serializedVersion: 2 + m_Bits: 4294967295 +--- !u!114 &4009130065698333724 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 4009130065698333721} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: e09ef6147e73a43349cab2d3a335fe07, type: 3} + m_Name: + m_EditorClassIdentifier: + panels: + - {fileID: 4009130065122623659} + - {fileID: 407490711998329186} + - {fileID: 1321983555675855211} + - {fileID: 8066716576335473868} +--- !u!1001 &459709280615059010 +PrefabInstance: + m_ObjectHideFlags: 0 + serializedVersion: 2 + m_Modification: + m_TransformParent: {fileID: 4009130065698333725} + m_Modifications: + - target: {fileID: 7607579068174295694, guid: a7699e394e3ea4941b8b3b315a2280cc, + type: 3} + propertyPath: m_Name + value: Credits + objectReference: {fileID: 0} + - target: {fileID: 7607579068174295694, guid: a7699e394e3ea4941b8b3b315a2280cc, + type: 3} + propertyPath: m_IsActive + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 7607579068174295695, guid: a7699e394e3ea4941b8b3b315a2280cc, + type: 3} + propertyPath: m_LocalPosition.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 7607579068174295695, guid: a7699e394e3ea4941b8b3b315a2280cc, + type: 3} + propertyPath: m_LocalPosition.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 7607579068174295695, guid: a7699e394e3ea4941b8b3b315a2280cc, + type: 3} + propertyPath: m_LocalPosition.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 7607579068174295695, guid: a7699e394e3ea4941b8b3b315a2280cc, + type: 3} + propertyPath: m_LocalRotation.x + value: -0 + objectReference: {fileID: 0} + - target: {fileID: 7607579068174295695, guid: a7699e394e3ea4941b8b3b315a2280cc, + type: 3} + propertyPath: m_LocalRotation.y + value: -0 + objectReference: {fileID: 0} + - target: {fileID: 7607579068174295695, guid: a7699e394e3ea4941b8b3b315a2280cc, + type: 3} + propertyPath: m_LocalRotation.z + value: -0 + objectReference: {fileID: 0} + - target: {fileID: 7607579068174295695, guid: a7699e394e3ea4941b8b3b315a2280cc, + type: 3} + propertyPath: m_LocalRotation.w + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 7607579068174295695, guid: a7699e394e3ea4941b8b3b315a2280cc, + type: 3} + propertyPath: m_RootOrder + value: 3 + objectReference: {fileID: 0} + - target: {fileID: 7607579068174295695, guid: a7699e394e3ea4941b8b3b315a2280cc, + type: 3} + propertyPath: m_LocalEulerAnglesHint.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 7607579068174295695, guid: a7699e394e3ea4941b8b3b315a2280cc, + type: 3} + propertyPath: m_LocalEulerAnglesHint.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 7607579068174295695, guid: a7699e394e3ea4941b8b3b315a2280cc, + type: 3} + propertyPath: m_LocalEulerAnglesHint.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 7607579068174295695, guid: a7699e394e3ea4941b8b3b315a2280cc, + type: 3} + propertyPath: m_AnchoredPosition.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 7607579068174295695, guid: a7699e394e3ea4941b8b3b315a2280cc, + type: 3} + propertyPath: m_AnchoredPosition.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 7607579068174295695, guid: a7699e394e3ea4941b8b3b315a2280cc, + type: 3} + propertyPath: m_SizeDelta.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 7607579068174295695, guid: a7699e394e3ea4941b8b3b315a2280cc, + type: 3} + propertyPath: m_SizeDelta.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 7607579068174295695, guid: a7699e394e3ea4941b8b3b315a2280cc, + type: 3} + propertyPath: m_AnchorMin.x + value: 0.13 + objectReference: {fileID: 0} + - target: {fileID: 7607579068174295695, guid: a7699e394e3ea4941b8b3b315a2280cc, + type: 3} + propertyPath: m_AnchorMin.y + value: 0.215 + objectReference: {fileID: 0} + - target: {fileID: 7607579068174295695, guid: a7699e394e3ea4941b8b3b315a2280cc, + type: 3} + propertyPath: m_AnchorMax.x + value: 0.87 + objectReference: {fileID: 0} + - target: {fileID: 7607579068174295695, guid: a7699e394e3ea4941b8b3b315a2280cc, + type: 3} + propertyPath: m_AnchorMax.y + value: 0.785 + objectReference: {fileID: 0} + - target: {fileID: 7607579068174295695, guid: a7699e394e3ea4941b8b3b315a2280cc, + type: 3} + propertyPath: m_Pivot.x + value: 0.5 + objectReference: {fileID: 0} + - target: {fileID: 7607579068174295695, guid: a7699e394e3ea4941b8b3b315a2280cc, + type: 3} + propertyPath: m_Pivot.y + value: 0.5 + objectReference: {fileID: 0} + - target: {fileID: 7607579068389748888, guid: a7699e394e3ea4941b8b3b315a2280cc, + type: 3} + propertyPath: m_text + value: Credits + objectReference: {fileID: 0} + - target: {fileID: 7607579068389748888, guid: a7699e394e3ea4941b8b3b315a2280cc, + type: 3} + propertyPath: m_textInfo.characterCount + value: 7 + objectReference: {fileID: 0} + - target: {fileID: 7607579068389748888, guid: a7699e394e3ea4941b8b3b315a2280cc, + type: 3} + propertyPath: m_havePropertiesChanged + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 7607579068389748888, guid: a7699e394e3ea4941b8b3b315a2280cc, + type: 3} + propertyPath: m_isInputParsingRequired + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 9031310948966901772, guid: a7699e394e3ea4941b8b3b315a2280cc, + type: 3} + propertyPath: m_text + value: '[This is your Fourth Menu Screen] + + + You could use this area to display game credits or other information.' + objectReference: {fileID: 0} + - target: {fileID: 9031310948966901772, guid: a7699e394e3ea4941b8b3b315a2280cc, + type: 3} + propertyPath: m_textInfo.characterCount + value: 104 + objectReference: {fileID: 0} + - target: {fileID: 9031310948966901772, guid: a7699e394e3ea4941b8b3b315a2280cc, + type: 3} + propertyPath: m_textInfo.spaceCount + value: 18 + objectReference: {fileID: 0} + - target: {fileID: 9031310948966901772, guid: a7699e394e3ea4941b8b3b315a2280cc, + type: 3} + propertyPath: m_textInfo.wordCount + value: 18 + objectReference: {fileID: 0} + - target: {fileID: 9031310948966901772, guid: a7699e394e3ea4941b8b3b315a2280cc, + type: 3} + propertyPath: m_textInfo.lineCount + value: 3 + objectReference: {fileID: 0} + - target: {fileID: 9031310948966901772, guid: a7699e394e3ea4941b8b3b315a2280cc, + type: 3} + propertyPath: m_havePropertiesChanged + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 9031310948966901772, guid: a7699e394e3ea4941b8b3b315a2280cc, + type: 3} + propertyPath: m_isInputParsingRequired + value: 1 + objectReference: {fileID: 0} + m_RemovedComponents: [] + m_SourcePrefab: {fileID: 100100000, guid: a7699e394e3ea4941b8b3b315a2280cc, type: 3} +--- !u!1 &8066716576335473868 stripped +GameObject: + m_CorrespondingSourceObject: {fileID: 7607579068174295694, guid: a7699e394e3ea4941b8b3b315a2280cc, + type: 3} + m_PrefabInstance: {fileID: 459709280615059010} + m_PrefabAsset: {fileID: 0} +--- !u!224 &8066716576335473869 stripped +RectTransform: + m_CorrespondingSourceObject: {fileID: 7607579068174295695, guid: a7699e394e3ea4941b8b3b315a2280cc, + type: 3} + m_PrefabInstance: {fileID: 459709280615059010} + m_PrefabAsset: {fileID: 0} +--- !u!1001 &1204196349390909417 +PrefabInstance: + m_ObjectHideFlags: 0 + serializedVersion: 2 + m_Modification: + m_TransformParent: {fileID: 876742144} + m_Modifications: + - target: {fileID: 3854812128510395023, guid: a52712b80a6dbc0418a24741c5a70352, + type: 3} + propertyPath: m_Name + value: Button + objectReference: {fileID: 0} + - target: {fileID: 3854812128510395020, guid: a52712b80a6dbc0418a24741c5a70352, + type: 3} + propertyPath: m_LocalPosition.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 3854812128510395020, guid: a52712b80a6dbc0418a24741c5a70352, + type: 3} + propertyPath: m_LocalPosition.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 3854812128510395020, guid: a52712b80a6dbc0418a24741c5a70352, + type: 3} + propertyPath: m_LocalPosition.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 3854812128510395020, guid: a52712b80a6dbc0418a24741c5a70352, + type: 3} + propertyPath: m_LocalRotation.x + value: -0 + objectReference: {fileID: 0} + - target: {fileID: 3854812128510395020, guid: a52712b80a6dbc0418a24741c5a70352, + type: 3} + propertyPath: m_LocalRotation.y + value: -0 + objectReference: {fileID: 0} + - target: {fileID: 3854812128510395020, guid: a52712b80a6dbc0418a24741c5a70352, + type: 3} + propertyPath: m_LocalRotation.z + value: -0 + objectReference: {fileID: 0} + - target: {fileID: 3854812128510395020, guid: a52712b80a6dbc0418a24741c5a70352, + type: 3} + propertyPath: m_LocalRotation.w + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 3854812128510395020, guid: a52712b80a6dbc0418a24741c5a70352, + type: 3} + propertyPath: m_RootOrder + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 3854812128510395020, guid: a52712b80a6dbc0418a24741c5a70352, + type: 3} + propertyPath: m_LocalEulerAnglesHint.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 3854812128510395020, guid: a52712b80a6dbc0418a24741c5a70352, + type: 3} + propertyPath: m_LocalEulerAnglesHint.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 3854812128510395020, guid: a52712b80a6dbc0418a24741c5a70352, + type: 3} + propertyPath: m_LocalEulerAnglesHint.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 3854812128510395020, guid: a52712b80a6dbc0418a24741c5a70352, + type: 3} + propertyPath: m_AnchoredPosition.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 3854812128510395020, guid: a52712b80a6dbc0418a24741c5a70352, + type: 3} + propertyPath: m_AnchoredPosition.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 3854812128510395020, guid: a52712b80a6dbc0418a24741c5a70352, + type: 3} + propertyPath: m_SizeDelta.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 3854812128510395020, guid: a52712b80a6dbc0418a24741c5a70352, + type: 3} + propertyPath: m_SizeDelta.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 3854812128510395020, guid: a52712b80a6dbc0418a24741c5a70352, + type: 3} + propertyPath: m_AnchorMin.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 3854812128510395020, guid: a52712b80a6dbc0418a24741c5a70352, + type: 3} + propertyPath: m_AnchorMin.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 3854812128510395020, guid: a52712b80a6dbc0418a24741c5a70352, + type: 3} + propertyPath: m_AnchorMax.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 3854812128510395020, guid: a52712b80a6dbc0418a24741c5a70352, + type: 3} + propertyPath: m_AnchorMax.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 3854812128510395020, guid: a52712b80a6dbc0418a24741c5a70352, + type: 3} + propertyPath: m_Pivot.x + value: 0.5 + objectReference: {fileID: 0} + - target: {fileID: 3854812128510395020, guid: a52712b80a6dbc0418a24741c5a70352, + type: 3} + propertyPath: m_Pivot.y + value: 0.5 + objectReference: {fileID: 0} + - target: {fileID: 3854812128510395021, guid: a52712b80a6dbc0418a24741c5a70352, + type: 3} + propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[0].m_Target + value: + objectReference: {fileID: 4009130065698333724} + - target: {fileID: 3854812128510395021, guid: a52712b80a6dbc0418a24741c5a70352, + type: 3} + propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[0].m_Arguments.m_IntArgument + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 3854812130382821519, guid: a52712b80a6dbc0418a24741c5a70352, + type: 3} + propertyPath: m_text + value: 'Settings + +' + objectReference: {fileID: 0} + - target: {fileID: 3854812130382821519, guid: a52712b80a6dbc0418a24741c5a70352, + type: 3} + propertyPath: m_fontColor32.rgba + value: 4284831820 + objectReference: {fileID: 0} + - target: {fileID: 3854812130382821519, guid: a52712b80a6dbc0418a24741c5a70352, + type: 3} + propertyPath: m_textInfo.characterCount + value: 9 + objectReference: {fileID: 0} + - target: {fileID: 3854812130382821519, guid: a52712b80a6dbc0418a24741c5a70352, + type: 3} + propertyPath: m_textInfo.spaceCount + value: 1 + objectReference: {fileID: 0} + m_RemovedComponents: [] + m_SourcePrefab: {fileID: 100100000, guid: a52712b80a6dbc0418a24741c5a70352, type: 3} +--- !u!224 &2722743759761485157 stripped +RectTransform: + m_CorrespondingSourceObject: {fileID: 3854812128510395020, guid: a52712b80a6dbc0418a24741c5a70352, + type: 3} + m_PrefabInstance: {fileID: 1204196349390909417} + m_PrefabAsset: {fileID: 0} +--- !u!1001 &1321818109837657279 +PrefabInstance: + m_ObjectHideFlags: 0 + serializedVersion: 2 + m_Modification: + m_TransformParent: {fileID: 876742144} + m_Modifications: + - target: {fileID: 3854812128510395023, guid: a52712b80a6dbc0418a24741c5a70352, + type: 3} + propertyPath: m_Name + value: Button + objectReference: {fileID: 0} + - target: {fileID: 3854812128510395020, guid: a52712b80a6dbc0418a24741c5a70352, + type: 3} + propertyPath: m_LocalPosition.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 3854812128510395020, guid: a52712b80a6dbc0418a24741c5a70352, + type: 3} + propertyPath: m_LocalPosition.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 3854812128510395020, guid: a52712b80a6dbc0418a24741c5a70352, + type: 3} + propertyPath: m_LocalPosition.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 3854812128510395020, guid: a52712b80a6dbc0418a24741c5a70352, + type: 3} + propertyPath: m_LocalRotation.x + value: -0 + objectReference: {fileID: 0} + - target: {fileID: 3854812128510395020, guid: a52712b80a6dbc0418a24741c5a70352, + type: 3} + propertyPath: m_LocalRotation.y + value: -0 + objectReference: {fileID: 0} + - target: {fileID: 3854812128510395020, guid: a52712b80a6dbc0418a24741c5a70352, + type: 3} + propertyPath: m_LocalRotation.z + value: -0 + objectReference: {fileID: 0} + - target: {fileID: 3854812128510395020, guid: a52712b80a6dbc0418a24741c5a70352, + type: 3} + propertyPath: m_LocalRotation.w + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 3854812128510395020, guid: a52712b80a6dbc0418a24741c5a70352, + type: 3} + propertyPath: m_RootOrder + value: 2 + objectReference: {fileID: 0} + - target: {fileID: 3854812128510395020, guid: a52712b80a6dbc0418a24741c5a70352, + type: 3} + propertyPath: m_LocalEulerAnglesHint.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 3854812128510395020, guid: a52712b80a6dbc0418a24741c5a70352, + type: 3} + propertyPath: m_LocalEulerAnglesHint.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 3854812128510395020, guid: a52712b80a6dbc0418a24741c5a70352, + type: 3} + propertyPath: m_LocalEulerAnglesHint.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 3854812128510395020, guid: a52712b80a6dbc0418a24741c5a70352, + type: 3} + propertyPath: m_AnchoredPosition.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 3854812128510395020, guid: a52712b80a6dbc0418a24741c5a70352, + type: 3} + propertyPath: m_AnchoredPosition.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 3854812128510395020, guid: a52712b80a6dbc0418a24741c5a70352, + type: 3} + propertyPath: m_SizeDelta.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 3854812128510395020, guid: a52712b80a6dbc0418a24741c5a70352, + type: 3} + propertyPath: m_SizeDelta.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 3854812128510395020, guid: a52712b80a6dbc0418a24741c5a70352, + type: 3} + propertyPath: m_AnchorMin.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 3854812128510395020, guid: a52712b80a6dbc0418a24741c5a70352, + type: 3} + propertyPath: m_AnchorMin.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 3854812128510395020, guid: a52712b80a6dbc0418a24741c5a70352, + type: 3} + propertyPath: m_AnchorMax.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 3854812128510395020, guid: a52712b80a6dbc0418a24741c5a70352, + type: 3} + propertyPath: m_AnchorMax.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 3854812128510395020, guid: a52712b80a6dbc0418a24741c5a70352, + type: 3} + propertyPath: m_Pivot.x + value: 0.5 + objectReference: {fileID: 0} + - target: {fileID: 3854812128510395020, guid: a52712b80a6dbc0418a24741c5a70352, + type: 3} + propertyPath: m_Pivot.y + value: 0.5 + objectReference: {fileID: 0} + - target: {fileID: 3854812128510395021, guid: a52712b80a6dbc0418a24741c5a70352, + type: 3} + propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[0].m_Target + value: + objectReference: {fileID: 4009130065698333724} + - target: {fileID: 3854812128510395021, guid: a52712b80a6dbc0418a24741c5a70352, + type: 3} + propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[0].m_Arguments.m_IntArgument + value: 2 + objectReference: {fileID: 0} + - target: {fileID: 3854812130382821519, guid: a52712b80a6dbc0418a24741c5a70352, + type: 3} + propertyPath: m_text + value: Controls + objectReference: {fileID: 0} + - target: {fileID: 3854812130382821519, guid: a52712b80a6dbc0418a24741c5a70352, + type: 3} + propertyPath: m_fontColor32.rgba + value: 4284831820 + objectReference: {fileID: 0} + - target: {fileID: 3854812130382821519, guid: a52712b80a6dbc0418a24741c5a70352, + type: 3} + propertyPath: m_textInfo.characterCount + value: 8 + objectReference: {fileID: 0} + m_RemovedComponents: [] + m_SourcePrefab: {fileID: 100100000, guid: a52712b80a6dbc0418a24741c5a70352, type: 3} +--- !u!224 &2821225496618436147 stripped +RectTransform: + m_CorrespondingSourceObject: {fileID: 3854812128510395020, guid: a52712b80a6dbc0418a24741c5a70352, + type: 3} + m_PrefabInstance: {fileID: 1321818109837657279} + m_PrefabAsset: {fileID: 0} +--- !u!1001 &5251761574412677846 +PrefabInstance: + m_ObjectHideFlags: 0 + serializedVersion: 2 + m_Modification: + m_TransformParent: {fileID: 876742144} + m_Modifications: + - target: {fileID: 3854812128510395023, guid: a52712b80a6dbc0418a24741c5a70352, + type: 3} + propertyPath: m_Name + value: Button + objectReference: {fileID: 0} + - target: {fileID: 3854812128510395020, guid: a52712b80a6dbc0418a24741c5a70352, + type: 3} + propertyPath: m_LocalPosition.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 3854812128510395020, guid: a52712b80a6dbc0418a24741c5a70352, + type: 3} + propertyPath: m_LocalPosition.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 3854812128510395020, guid: a52712b80a6dbc0418a24741c5a70352, + type: 3} + propertyPath: m_LocalPosition.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 3854812128510395020, guid: a52712b80a6dbc0418a24741c5a70352, + type: 3} + propertyPath: m_LocalRotation.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 3854812128510395020, guid: a52712b80a6dbc0418a24741c5a70352, + type: 3} + propertyPath: m_LocalRotation.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 3854812128510395020, guid: a52712b80a6dbc0418a24741c5a70352, + type: 3} + propertyPath: m_LocalRotation.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 3854812128510395020, guid: a52712b80a6dbc0418a24741c5a70352, + type: 3} + propertyPath: m_LocalRotation.w + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 3854812128510395020, guid: a52712b80a6dbc0418a24741c5a70352, + type: 3} + propertyPath: m_RootOrder + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 3854812128510395020, guid: a52712b80a6dbc0418a24741c5a70352, + type: 3} + propertyPath: m_LocalEulerAnglesHint.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 3854812128510395020, guid: a52712b80a6dbc0418a24741c5a70352, + type: 3} + propertyPath: m_LocalEulerAnglesHint.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 3854812128510395020, guid: a52712b80a6dbc0418a24741c5a70352, + type: 3} + propertyPath: m_LocalEulerAnglesHint.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 3854812128510395020, guid: a52712b80a6dbc0418a24741c5a70352, + type: 3} + propertyPath: m_AnchoredPosition.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 3854812128510395020, guid: a52712b80a6dbc0418a24741c5a70352, + type: 3} + propertyPath: m_AnchoredPosition.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 3854812128510395020, guid: a52712b80a6dbc0418a24741c5a70352, + type: 3} + propertyPath: m_SizeDelta.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 3854812128510395020, guid: a52712b80a6dbc0418a24741c5a70352, + type: 3} + propertyPath: m_SizeDelta.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 3854812128510395020, guid: a52712b80a6dbc0418a24741c5a70352, + type: 3} + propertyPath: m_AnchorMin.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 3854812128510395020, guid: a52712b80a6dbc0418a24741c5a70352, + type: 3} + propertyPath: m_AnchorMin.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 3854812128510395020, guid: a52712b80a6dbc0418a24741c5a70352, + type: 3} + propertyPath: m_AnchorMax.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 3854812128510395020, guid: a52712b80a6dbc0418a24741c5a70352, + type: 3} + propertyPath: m_AnchorMax.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 3854812128510395020, guid: a52712b80a6dbc0418a24741c5a70352, + type: 3} + propertyPath: m_Pivot.x + value: 0.5 + objectReference: {fileID: 0} + - target: {fileID: 3854812128510395020, guid: a52712b80a6dbc0418a24741c5a70352, + type: 3} + propertyPath: m_Pivot.y + value: 0.5 + objectReference: {fileID: 0} + - target: {fileID: 3854812128510395021, guid: a52712b80a6dbc0418a24741c5a70352, + type: 3} + propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[0].m_Target + value: + objectReference: {fileID: 4009130065698333724} + - target: {fileID: 3854812130382821519, guid: a52712b80a6dbc0418a24741c5a70352, + type: 3} + propertyPath: m_fontColor32.rgba + value: 4284831820 + objectReference: {fileID: 0} + m_RemovedComponents: [] + m_SourcePrefab: {fileID: 100100000, guid: a52712b80a6dbc0418a24741c5a70352, type: 3} +--- !u!224 &9051402262044422234 stripped +RectTransform: + m_CorrespondingSourceObject: {fileID: 3854812128510395020, guid: a52712b80a6dbc0418a24741c5a70352, + type: 3} + m_PrefabInstance: {fileID: 5251761574412677846} + m_PrefabAsset: {fileID: 0} +--- !u!1001 &6787142713713156645 +PrefabInstance: + m_ObjectHideFlags: 0 + serializedVersion: 2 + m_Modification: + m_TransformParent: {fileID: 4009130065698333725} + m_Modifications: + - target: {fileID: 7607579068174295694, guid: a7699e394e3ea4941b8b3b315a2280cc, + type: 3} + propertyPath: m_Name + value: Main + objectReference: {fileID: 0} + - target: {fileID: 7607579068174295695, guid: a7699e394e3ea4941b8b3b315a2280cc, + type: 3} + propertyPath: m_LocalPosition.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 7607579068174295695, guid: a7699e394e3ea4941b8b3b315a2280cc, + type: 3} + propertyPath: m_LocalPosition.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 7607579068174295695, guid: a7699e394e3ea4941b8b3b315a2280cc, + type: 3} + propertyPath: m_LocalPosition.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 7607579068174295695, guid: a7699e394e3ea4941b8b3b315a2280cc, + type: 3} + propertyPath: m_LocalRotation.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 7607579068174295695, guid: a7699e394e3ea4941b8b3b315a2280cc, + type: 3} + propertyPath: m_LocalRotation.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 7607579068174295695, guid: a7699e394e3ea4941b8b3b315a2280cc, + type: 3} + propertyPath: m_LocalRotation.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 7607579068174295695, guid: a7699e394e3ea4941b8b3b315a2280cc, + type: 3} + propertyPath: m_LocalRotation.w + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 7607579068174295695, guid: a7699e394e3ea4941b8b3b315a2280cc, + type: 3} + propertyPath: m_RootOrder + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 7607579068174295695, guid: a7699e394e3ea4941b8b3b315a2280cc, + type: 3} + propertyPath: m_LocalEulerAnglesHint.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 7607579068174295695, guid: a7699e394e3ea4941b8b3b315a2280cc, + type: 3} + propertyPath: m_LocalEulerAnglesHint.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 7607579068174295695, guid: a7699e394e3ea4941b8b3b315a2280cc, + type: 3} + propertyPath: m_LocalEulerAnglesHint.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 7607579068174295695, guid: a7699e394e3ea4941b8b3b315a2280cc, + type: 3} + propertyPath: m_AnchoredPosition.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 7607579068174295695, guid: a7699e394e3ea4941b8b3b315a2280cc, + type: 3} + propertyPath: m_AnchoredPosition.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 7607579068174295695, guid: a7699e394e3ea4941b8b3b315a2280cc, + type: 3} + propertyPath: m_SizeDelta.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 7607579068174295695, guid: a7699e394e3ea4941b8b3b315a2280cc, + type: 3} + propertyPath: m_SizeDelta.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 7607579068174295695, guid: a7699e394e3ea4941b8b3b315a2280cc, + type: 3} + propertyPath: m_AnchorMin.x + value: 0.13 + objectReference: {fileID: 0} + - target: {fileID: 7607579068174295695, guid: a7699e394e3ea4941b8b3b315a2280cc, + type: 3} + propertyPath: m_AnchorMin.y + value: 0.215 + objectReference: {fileID: 0} + - target: {fileID: 7607579068174295695, guid: a7699e394e3ea4941b8b3b315a2280cc, + type: 3} + propertyPath: m_AnchorMax.x + value: 0.87 + objectReference: {fileID: 0} + - target: {fileID: 7607579068174295695, guid: a7699e394e3ea4941b8b3b315a2280cc, + type: 3} + propertyPath: m_AnchorMax.y + value: 0.785 + objectReference: {fileID: 0} + - target: {fileID: 7607579068174295695, guid: a7699e394e3ea4941b8b3b315a2280cc, + type: 3} + propertyPath: m_Pivot.x + value: 0.5 + objectReference: {fileID: 0} + - target: {fileID: 7607579068174295695, guid: a7699e394e3ea4941b8b3b315a2280cc, + type: 3} + propertyPath: m_Pivot.y + value: 0.5 + objectReference: {fileID: 0} + - target: {fileID: 7607579068389748888, guid: a7699e394e3ea4941b8b3b315a2280cc, + type: 3} + propertyPath: m_text + value: Kart Game Template + objectReference: {fileID: 0} + - target: {fileID: 7607579068389748888, guid: a7699e394e3ea4941b8b3b315a2280cc, + type: 3} + propertyPath: m_textInfo.characterCount + value: 18 + objectReference: {fileID: 0} + - target: {fileID: 7607579068389748888, guid: a7699e394e3ea4941b8b3b315a2280cc, + type: 3} + propertyPath: m_textInfo.spaceCount + value: 2 + objectReference: {fileID: 0} + - target: {fileID: 7607579068389748888, guid: a7699e394e3ea4941b8b3b315a2280cc, + type: 3} + propertyPath: m_textInfo.wordCount + value: 3 + objectReference: {fileID: 0} + - target: {fileID: 9031310948966901772, guid: a7699e394e3ea4941b8b3b315a2280cc, + type: 3} + propertyPath: m_text + value: '[This is your First Menu Screen] + + + The controls for this template are: + + + - Arrow keys to Move + + - Space bar to Jump + + - Hold the Space bar to Drift + + - Press the R key to Reset the Kart if you get stuck + + + - Press Escape to unpause and start playing!' + objectReference: {fileID: 0} + - target: {fileID: 9031310948966901772, guid: a7699e394e3ea4941b8b3b315a2280cc, + type: 3} + propertyPath: m_fontSize + value: 21.55 + objectReference: {fileID: 0} + - target: {fileID: 9031310948966901772, guid: a7699e394e3ea4941b8b3b315a2280cc, + type: 3} + propertyPath: m_textInfo.characterCount + value: 240 + objectReference: {fileID: 0} + - target: {fileID: 9031310948966901772, guid: a7699e394e3ea4941b8b3b315a2280cc, + type: 3} + propertyPath: m_textInfo.spaceCount + value: 52 + objectReference: {fileID: 0} + - target: {fileID: 9031310948966901772, guid: a7699e394e3ea4941b8b3b315a2280cc, + type: 3} + propertyPath: m_textInfo.wordCount + value: 50 + objectReference: {fileID: 0} + - target: {fileID: 9031310948966901772, guid: a7699e394e3ea4941b8b3b315a2280cc, + type: 3} + propertyPath: m_textInfo.lineCount + value: 10 + objectReference: {fileID: 0} + m_RemovedComponents: [] + m_SourcePrefab: {fileID: 100100000, guid: a7699e394e3ea4941b8b3b315a2280cc, type: 3} +--- !u!1 &4009130065122623659 stripped +GameObject: + m_CorrespondingSourceObject: {fileID: 7607579068174295694, guid: a7699e394e3ea4941b8b3b315a2280cc, + type: 3} + m_PrefabInstance: {fileID: 6787142713713156645} + m_PrefabAsset: {fileID: 0} +--- !u!224 &4009130065122623658 stripped +RectTransform: + m_CorrespondingSourceObject: {fileID: 7607579068174295695, guid: a7699e394e3ea4941b8b3b315a2280cc, + type: 3} + m_PrefabInstance: {fileID: 6787142713713156645} + m_PrefabAsset: {fileID: 0} +--- !u!1001 &7796925573671392236 +PrefabInstance: + m_ObjectHideFlags: 0 + serializedVersion: 2 + m_Modification: + m_TransformParent: {fileID: 4009130065698333725} + m_Modifications: + - target: {fileID: 7607579068174295694, guid: a7699e394e3ea4941b8b3b315a2280cc, + type: 3} + propertyPath: m_Name + value: Settings + objectReference: {fileID: 0} + - target: {fileID: 7607579068174295694, guid: a7699e394e3ea4941b8b3b315a2280cc, + type: 3} + propertyPath: m_IsActive + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 7607579068174295695, guid: a7699e394e3ea4941b8b3b315a2280cc, + type: 3} + propertyPath: m_LocalPosition.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 7607579068174295695, guid: a7699e394e3ea4941b8b3b315a2280cc, + type: 3} + propertyPath: m_LocalPosition.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 7607579068174295695, guid: a7699e394e3ea4941b8b3b315a2280cc, + type: 3} + propertyPath: m_LocalPosition.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 7607579068174295695, guid: a7699e394e3ea4941b8b3b315a2280cc, + type: 3} + propertyPath: m_LocalRotation.x + value: -0 + objectReference: {fileID: 0} + - target: {fileID: 7607579068174295695, guid: a7699e394e3ea4941b8b3b315a2280cc, + type: 3} + propertyPath: m_LocalRotation.y + value: -0 + objectReference: {fileID: 0} + - target: {fileID: 7607579068174295695, guid: a7699e394e3ea4941b8b3b315a2280cc, + type: 3} + propertyPath: m_LocalRotation.z + value: -0 + objectReference: {fileID: 0} + - target: {fileID: 7607579068174295695, guid: a7699e394e3ea4941b8b3b315a2280cc, + type: 3} + propertyPath: m_LocalRotation.w + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 7607579068174295695, guid: a7699e394e3ea4941b8b3b315a2280cc, + type: 3} + propertyPath: m_RootOrder + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 7607579068174295695, guid: a7699e394e3ea4941b8b3b315a2280cc, + type: 3} + propertyPath: m_LocalEulerAnglesHint.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 7607579068174295695, guid: a7699e394e3ea4941b8b3b315a2280cc, + type: 3} + propertyPath: m_LocalEulerAnglesHint.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 7607579068174295695, guid: a7699e394e3ea4941b8b3b315a2280cc, + type: 3} + propertyPath: m_LocalEulerAnglesHint.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 7607579068174295695, guid: a7699e394e3ea4941b8b3b315a2280cc, + type: 3} + propertyPath: m_AnchoredPosition.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 7607579068174295695, guid: a7699e394e3ea4941b8b3b315a2280cc, + type: 3} + propertyPath: m_AnchoredPosition.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 7607579068174295695, guid: a7699e394e3ea4941b8b3b315a2280cc, + type: 3} + propertyPath: m_SizeDelta.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 7607579068174295695, guid: a7699e394e3ea4941b8b3b315a2280cc, + type: 3} + propertyPath: m_SizeDelta.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 7607579068174295695, guid: a7699e394e3ea4941b8b3b315a2280cc, + type: 3} + propertyPath: m_AnchorMin.x + value: 0.13 + objectReference: {fileID: 0} + - target: {fileID: 7607579068174295695, guid: a7699e394e3ea4941b8b3b315a2280cc, + type: 3} + propertyPath: m_AnchorMin.y + value: 0.215 + objectReference: {fileID: 0} + - target: {fileID: 7607579068174295695, guid: a7699e394e3ea4941b8b3b315a2280cc, + type: 3} + propertyPath: m_AnchorMax.x + value: 0.87 + objectReference: {fileID: 0} + - target: {fileID: 7607579068174295695, guid: a7699e394e3ea4941b8b3b315a2280cc, + type: 3} + propertyPath: m_AnchorMax.y + value: 0.785 + objectReference: {fileID: 0} + - target: {fileID: 7607579068174295695, guid: a7699e394e3ea4941b8b3b315a2280cc, + type: 3} + propertyPath: m_Pivot.x + value: 0.5 + objectReference: {fileID: 0} + - target: {fileID: 7607579068174295695, guid: a7699e394e3ea4941b8b3b315a2280cc, + type: 3} + propertyPath: m_Pivot.y + value: 0.5 + objectReference: {fileID: 0} + - target: {fileID: 7607579068389748888, guid: a7699e394e3ea4941b8b3b315a2280cc, + type: 3} + propertyPath: m_text + value: Settings + objectReference: {fileID: 0} + - target: {fileID: 7607579068389748888, guid: a7699e394e3ea4941b8b3b315a2280cc, + type: 3} + propertyPath: m_havePropertiesChanged + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 7607579068389748888, guid: a7699e394e3ea4941b8b3b315a2280cc, + type: 3} + propertyPath: m_isInputParsingRequired + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 9031310948966901772, guid: a7699e394e3ea4941b8b3b315a2280cc, + type: 3} + propertyPath: m_text + value: '[This is your Second Menu Screen] + + + You could use this area to implement a UI for changing settings.' + objectReference: {fileID: 0} + - target: {fileID: 9031310948966901772, guid: a7699e394e3ea4941b8b3b315a2280cc, + type: 3} + propertyPath: m_textInfo.characterCount + value: 99 + objectReference: {fileID: 0} + - target: {fileID: 9031310948966901772, guid: a7699e394e3ea4941b8b3b315a2280cc, + type: 3} + propertyPath: m_textInfo.spaceCount + value: 18 + objectReference: {fileID: 0} + - target: {fileID: 9031310948966901772, guid: a7699e394e3ea4941b8b3b315a2280cc, + type: 3} + propertyPath: m_textInfo.wordCount + value: 18 + objectReference: {fileID: 0} + - target: {fileID: 9031310948966901772, guid: a7699e394e3ea4941b8b3b315a2280cc, + type: 3} + propertyPath: m_textInfo.lineCount + value: 3 + objectReference: {fileID: 0} + - target: {fileID: 9031310948966901772, guid: a7699e394e3ea4941b8b3b315a2280cc, + type: 3} + propertyPath: m_havePropertiesChanged + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 9031310948966901772, guid: a7699e394e3ea4941b8b3b315a2280cc, + type: 3} + propertyPath: m_isInputParsingRequired + value: 1 + objectReference: {fileID: 0} + m_RemovedComponents: [] + m_SourcePrefab: {fileID: 100100000, guid: a7699e394e3ea4941b8b3b315a2280cc, type: 3} +--- !u!1 &407490711998329186 stripped +GameObject: + m_CorrespondingSourceObject: {fileID: 7607579068174295694, guid: a7699e394e3ea4941b8b3b315a2280cc, + type: 3} + m_PrefabInstance: {fileID: 7796925573671392236} + m_PrefabAsset: {fileID: 0} +--- !u!224 &407490711998329187 stripped +RectTransform: + m_CorrespondingSourceObject: {fileID: 7607579068174295695, guid: a7699e394e3ea4941b8b3b315a2280cc, + type: 3} + m_PrefabInstance: {fileID: 7796925573671392236} + m_PrefabAsset: {fileID: 0} +--- !u!1001 &8508160532066680197 +PrefabInstance: + m_ObjectHideFlags: 0 + serializedVersion: 2 + m_Modification: + m_TransformParent: {fileID: 876742144} + m_Modifications: + - target: {fileID: 3854812128510395023, guid: a52712b80a6dbc0418a24741c5a70352, + type: 3} + propertyPath: m_Name + value: Button + objectReference: {fileID: 0} + - target: {fileID: 3854812128510395020, guid: a52712b80a6dbc0418a24741c5a70352, + type: 3} + propertyPath: m_LocalPosition.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 3854812128510395020, guid: a52712b80a6dbc0418a24741c5a70352, + type: 3} + propertyPath: m_LocalPosition.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 3854812128510395020, guid: a52712b80a6dbc0418a24741c5a70352, + type: 3} + propertyPath: m_LocalPosition.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 3854812128510395020, guid: a52712b80a6dbc0418a24741c5a70352, + type: 3} + propertyPath: m_LocalRotation.x + value: -0 + objectReference: {fileID: 0} + - target: {fileID: 3854812128510395020, guid: a52712b80a6dbc0418a24741c5a70352, + type: 3} + propertyPath: m_LocalRotation.y + value: -0 + objectReference: {fileID: 0} + - target: {fileID: 3854812128510395020, guid: a52712b80a6dbc0418a24741c5a70352, + type: 3} + propertyPath: m_LocalRotation.z + value: -0 + objectReference: {fileID: 0} + - target: {fileID: 3854812128510395020, guid: a52712b80a6dbc0418a24741c5a70352, + type: 3} + propertyPath: m_LocalRotation.w + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 3854812128510395020, guid: a52712b80a6dbc0418a24741c5a70352, + type: 3} + propertyPath: m_RootOrder + value: 3 + objectReference: {fileID: 0} + - target: {fileID: 3854812128510395020, guid: a52712b80a6dbc0418a24741c5a70352, + type: 3} + propertyPath: m_LocalEulerAnglesHint.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 3854812128510395020, guid: a52712b80a6dbc0418a24741c5a70352, + type: 3} + propertyPath: m_LocalEulerAnglesHint.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 3854812128510395020, guid: a52712b80a6dbc0418a24741c5a70352, + type: 3} + propertyPath: m_LocalEulerAnglesHint.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 3854812128510395020, guid: a52712b80a6dbc0418a24741c5a70352, + type: 3} + propertyPath: m_AnchoredPosition.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 3854812128510395020, guid: a52712b80a6dbc0418a24741c5a70352, + type: 3} + propertyPath: m_AnchoredPosition.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 3854812128510395020, guid: a52712b80a6dbc0418a24741c5a70352, + type: 3} + propertyPath: m_SizeDelta.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 3854812128510395020, guid: a52712b80a6dbc0418a24741c5a70352, + type: 3} + propertyPath: m_SizeDelta.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 3854812128510395020, guid: a52712b80a6dbc0418a24741c5a70352, + type: 3} + propertyPath: m_AnchorMin.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 3854812128510395020, guid: a52712b80a6dbc0418a24741c5a70352, + type: 3} + propertyPath: m_AnchorMin.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 3854812128510395020, guid: a52712b80a6dbc0418a24741c5a70352, + type: 3} + propertyPath: m_AnchorMax.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 3854812128510395020, guid: a52712b80a6dbc0418a24741c5a70352, + type: 3} + propertyPath: m_AnchorMax.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 3854812128510395020, guid: a52712b80a6dbc0418a24741c5a70352, + type: 3} + propertyPath: m_Pivot.x + value: 0.5 + objectReference: {fileID: 0} + - target: {fileID: 3854812128510395020, guid: a52712b80a6dbc0418a24741c5a70352, + type: 3} + propertyPath: m_Pivot.y + value: 0.5 + objectReference: {fileID: 0} + - target: {fileID: 3854812128510395021, guid: a52712b80a6dbc0418a24741c5a70352, + type: 3} + propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[0].m_Target + value: + objectReference: {fileID: 4009130065698333724} + - target: {fileID: 3854812128510395021, guid: a52712b80a6dbc0418a24741c5a70352, + type: 3} + propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[0].m_Arguments.m_IntArgument + value: 3 + objectReference: {fileID: 0} + - target: {fileID: 3854812130382821519, guid: a52712b80a6dbc0418a24741c5a70352, + type: 3} + propertyPath: m_text + value: 'Credits + +' + objectReference: {fileID: 0} + - target: {fileID: 3854812130382821519, guid: a52712b80a6dbc0418a24741c5a70352, + type: 3} + propertyPath: m_fontColor32.rgba + value: 4284831820 + objectReference: {fileID: 0} + - target: {fileID: 3854812130382821519, guid: a52712b80a6dbc0418a24741c5a70352, + type: 3} + propertyPath: m_textInfo.characterCount + value: 8 + objectReference: {fileID: 0} + - target: {fileID: 3854812130382821519, guid: a52712b80a6dbc0418a24741c5a70352, + type: 3} + propertyPath: m_textInfo.spaceCount + value: 1 + objectReference: {fileID: 0} + m_RemovedComponents: [] + m_SourcePrefab: {fileID: 100100000, guid: a52712b80a6dbc0418a24741c5a70352, type: 3} +--- !u!224 &4858264531726499593 stripped +RectTransform: + m_CorrespondingSourceObject: {fileID: 3854812128510395020, guid: a52712b80a6dbc0418a24741c5a70352, + type: 3} + m_PrefabInstance: {fileID: 8508160532066680197} + m_PrefabAsset: {fileID: 0} +--- !u!1001 &8920273863645756389 +PrefabInstance: + m_ObjectHideFlags: 0 + serializedVersion: 2 + m_Modification: + m_TransformParent: {fileID: 4009130065698333725} + m_Modifications: + - target: {fileID: 7607579068174295694, guid: a7699e394e3ea4941b8b3b315a2280cc, + type: 3} + propertyPath: m_Name + value: Controls + objectReference: {fileID: 0} + - target: {fileID: 7607579068174295694, guid: a7699e394e3ea4941b8b3b315a2280cc, + type: 3} + propertyPath: m_IsActive + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 7607579068174295695, guid: a7699e394e3ea4941b8b3b315a2280cc, + type: 3} + propertyPath: m_LocalPosition.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 7607579068174295695, guid: a7699e394e3ea4941b8b3b315a2280cc, + type: 3} + propertyPath: m_LocalPosition.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 7607579068174295695, guid: a7699e394e3ea4941b8b3b315a2280cc, + type: 3} + propertyPath: m_LocalPosition.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 7607579068174295695, guid: a7699e394e3ea4941b8b3b315a2280cc, + type: 3} + propertyPath: m_LocalRotation.x + value: -0 + objectReference: {fileID: 0} + - target: {fileID: 7607579068174295695, guid: a7699e394e3ea4941b8b3b315a2280cc, + type: 3} + propertyPath: m_LocalRotation.y + value: -0 + objectReference: {fileID: 0} + - target: {fileID: 7607579068174295695, guid: a7699e394e3ea4941b8b3b315a2280cc, + type: 3} + propertyPath: m_LocalRotation.z + value: -0 + objectReference: {fileID: 0} + - target: {fileID: 7607579068174295695, guid: a7699e394e3ea4941b8b3b315a2280cc, + type: 3} + propertyPath: m_LocalRotation.w + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 7607579068174295695, guid: a7699e394e3ea4941b8b3b315a2280cc, + type: 3} + propertyPath: m_RootOrder + value: 2 + objectReference: {fileID: 0} + - target: {fileID: 7607579068174295695, guid: a7699e394e3ea4941b8b3b315a2280cc, + type: 3} + propertyPath: m_LocalEulerAnglesHint.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 7607579068174295695, guid: a7699e394e3ea4941b8b3b315a2280cc, + type: 3} + propertyPath: m_LocalEulerAnglesHint.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 7607579068174295695, guid: a7699e394e3ea4941b8b3b315a2280cc, + type: 3} + propertyPath: m_LocalEulerAnglesHint.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 7607579068174295695, guid: a7699e394e3ea4941b8b3b315a2280cc, + type: 3} + propertyPath: m_AnchoredPosition.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 7607579068174295695, guid: a7699e394e3ea4941b8b3b315a2280cc, + type: 3} + propertyPath: m_AnchoredPosition.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 7607579068174295695, guid: a7699e394e3ea4941b8b3b315a2280cc, + type: 3} + propertyPath: m_SizeDelta.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 7607579068174295695, guid: a7699e394e3ea4941b8b3b315a2280cc, + type: 3} + propertyPath: m_SizeDelta.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 7607579068174295695, guid: a7699e394e3ea4941b8b3b315a2280cc, + type: 3} + propertyPath: m_AnchorMin.x + value: 0.13 + objectReference: {fileID: 0} + - target: {fileID: 7607579068174295695, guid: a7699e394e3ea4941b8b3b315a2280cc, + type: 3} + propertyPath: m_AnchorMin.y + value: 0.215 + objectReference: {fileID: 0} + - target: {fileID: 7607579068174295695, guid: a7699e394e3ea4941b8b3b315a2280cc, + type: 3} + propertyPath: m_AnchorMax.x + value: 0.87 + objectReference: {fileID: 0} + - target: {fileID: 7607579068174295695, guid: a7699e394e3ea4941b8b3b315a2280cc, + type: 3} + propertyPath: m_AnchorMax.y + value: 0.785 + objectReference: {fileID: 0} + - target: {fileID: 7607579068174295695, guid: a7699e394e3ea4941b8b3b315a2280cc, + type: 3} + propertyPath: m_Pivot.x + value: 0.5 + objectReference: {fileID: 0} + - target: {fileID: 7607579068174295695, guid: a7699e394e3ea4941b8b3b315a2280cc, + type: 3} + propertyPath: m_Pivot.y + value: 0.5 + objectReference: {fileID: 0} + - target: {fileID: 7607579068389748888, guid: a7699e394e3ea4941b8b3b315a2280cc, + type: 3} + propertyPath: m_text + value: Controls + objectReference: {fileID: 0} + - target: {fileID: 7607579068389748888, guid: a7699e394e3ea4941b8b3b315a2280cc, + type: 3} + propertyPath: m_havePropertiesChanged + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 7607579068389748888, guid: a7699e394e3ea4941b8b3b315a2280cc, + type: 3} + propertyPath: m_isInputParsingRequired + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 9031310948966901772, guid: a7699e394e3ea4941b8b3b315a2280cc, + type: 3} + propertyPath: m_text + value: '[This is your Third Menu Screen] + + + You could use this area to implement a UI for changing or explaining game + controls.' + objectReference: {fileID: 0} + - target: {fileID: 9031310948966901772, guid: a7699e394e3ea4941b8b3b315a2280cc, + type: 3} + propertyPath: m_textInfo.characterCount + value: 117 + objectReference: {fileID: 0} + - target: {fileID: 9031310948966901772, guid: a7699e394e3ea4941b8b3b315a2280cc, + type: 3} + propertyPath: m_textInfo.spaceCount + value: 21 + objectReference: {fileID: 0} + - target: {fileID: 9031310948966901772, guid: a7699e394e3ea4941b8b3b315a2280cc, + type: 3} + propertyPath: m_textInfo.wordCount + value: 21 + objectReference: {fileID: 0} + - target: {fileID: 9031310948966901772, guid: a7699e394e3ea4941b8b3b315a2280cc, + type: 3} + propertyPath: m_textInfo.lineCount + value: 4 + objectReference: {fileID: 0} + - target: {fileID: 9031310948966901772, guid: a7699e394e3ea4941b8b3b315a2280cc, + type: 3} + propertyPath: m_havePropertiesChanged + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 9031310948966901772, guid: a7699e394e3ea4941b8b3b315a2280cc, + type: 3} + propertyPath: m_isInputParsingRequired + value: 1 + objectReference: {fileID: 0} + m_RemovedComponents: [] + m_SourcePrefab: {fileID: 100100000, guid: a7699e394e3ea4941b8b3b315a2280cc, type: 3} +--- !u!1 &1321983555675855211 stripped +GameObject: + m_CorrespondingSourceObject: {fileID: 7607579068174295694, guid: a7699e394e3ea4941b8b3b315a2280cc, + type: 3} + m_PrefabInstance: {fileID: 8920273863645756389} + m_PrefabAsset: {fileID: 0} +--- !u!224 &1321983555675855210 stripped +RectTransform: + m_CorrespondingSourceObject: {fileID: 7607579068174295695, guid: a7699e394e3ea4941b8b3b315a2280cc, + type: 3} + m_PrefabInstance: {fileID: 8920273863645756389} + m_PrefabAsset: {fileID: 0} diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Prefabs/UI Canvas.prefab.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Prefabs/UI Canvas.prefab.meta" new file mode 100644 index 00000000..cde64118 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Prefabs/UI Canvas.prefab.meta" @@ -0,0 +1,7 @@ +fileFormatVersion: 2 +guid: 7f02e158c0e4d4ab09f78bb31f78bab8 +PrefabImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Prefabs/UI Panel.prefab" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Prefabs/UI Panel.prefab" new file mode 100644 index 00000000..6c299b46 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Prefabs/UI Panel.prefab" @@ -0,0 +1,443 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!1 &7607579068174295694 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 7607579068174295695} + - component: {fileID: 7607579068174295689} + - component: {fileID: 7607579068174295688} + m_Layer: 5 + m_Name: UI Panel + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!224 &7607579068174295695 +RectTransform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 7607579068174295694} + m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} + m_LocalPosition: {x: 0, y: 0, z: 0} + m_LocalScale: {x: 1, y: 1, z: 1} + m_Children: + - {fileID: 7607579068860310097} + - {fileID: 7607579068389748895} + m_Father: {fileID: 0} + m_RootOrder: 0 + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} + m_AnchorMin: {x: 0.13, y: 0.215} + m_AnchorMax: {x: 0.87, y: 0.785} + m_AnchoredPosition: {x: 0, y: 0} + m_SizeDelta: {x: 0, y: 0} + m_Pivot: {x: 0.5, y: 0.5} +--- !u!222 &7607579068174295689 +CanvasRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 7607579068174295694} + m_CullTransparentMesh: 0 +--- !u!114 &7607579068174295688 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 7607579068174295694} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: -765806418, guid: f70555f144d8491a825f0804e09c671c, type: 3} + m_Name: + m_EditorClassIdentifier: + m_Material: {fileID: 0} + m_Color: {r: 0.2830189, g: 0.30352214, b: 0.3773585, a: 0.5882353} + m_RaycastTarget: 1 + m_OnCullStateChanged: + m_PersistentCalls: + m_Calls: [] + m_TypeName: UnityEngine.UI.MaskableGraphic+CullStateChangedEvent, UnityEngine.UI, + Version=1.0.0.0, Culture=neutral, PublicKeyToken=null + m_Sprite: {fileID: 0} + m_Type: 1 + m_PreserveAspect: 0 + m_FillCenter: 1 + m_FillMethod: 4 + m_FillAmount: 1 + m_FillClockwise: 1 + m_FillOrigin: 0 + m_UseSpriteMesh: 0 +--- !u!1 &7607579068389748894 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 7607579068389748895} + - component: {fileID: 7607579068389748889} + - component: {fileID: 7607579068389748888} + m_Layer: 5 + m_Name: Header + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!224 &7607579068389748895 +RectTransform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 7607579068389748894} + m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} + m_LocalPosition: {x: 0, y: 0, z: 0} + m_LocalScale: {x: 1, y: 1, z: 1} + m_Children: [] + m_Father: {fileID: 7607579068174295695} + m_RootOrder: 1 + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} + m_AnchorMin: {x: 0, y: 1} + m_AnchorMax: {x: 1, y: 1} + m_AnchoredPosition: {x: 0, y: 0} + m_SizeDelta: {x: 0, y: 82} + m_Pivot: {x: 0.5, y: 1} +--- !u!222 &7607579068389748889 +CanvasRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 7607579068389748894} + m_CullTransparentMesh: 0 +--- !u!114 &7607579068389748888 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 7607579068389748894} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: f4688fdb7df04437aeb418b961361dc5, type: 3} + m_Name: + m_EditorClassIdentifier: + m_Material: {fileID: 0} + m_Color: {r: 1, g: 1, b: 1, a: 1} + m_RaycastTarget: 1 + m_OnCullStateChanged: + m_PersistentCalls: + m_Calls: [] + m_TypeName: UnityEngine.UI.MaskableGraphic+CullStateChangedEvent, UnityEngine.UI, + Version=1.0.0.0, Culture=neutral, PublicKeyToken=null + m_text: '[Header]' + m_isRightToLeft: 0 + m_fontAsset: {fileID: 11400000, guid: 8f586378b4e144a9851e7b34d9b748ee, type: 2} + m_sharedMaterial: {fileID: 2180264, guid: 8f586378b4e144a9851e7b34d9b748ee, type: 2} + m_fontSharedMaterials: [] + m_fontMaterial: {fileID: 0} + m_fontMaterials: [] + m_fontColor32: + serializedVersion: 2 + rgba: 4294967295 + m_fontColor: {r: 1, g: 1, b: 1, a: 1} + m_enableVertexGradient: 0 + m_colorMode: 3 + m_fontColorGradient: + topLeft: {r: 1, g: 1, b: 1, a: 1} + topRight: {r: 1, g: 1, b: 1, a: 1} + bottomLeft: {r: 1, g: 1, b: 1, a: 1} + bottomRight: {r: 1, g: 1, b: 1, a: 1} + m_fontColorGradientPreset: {fileID: 0} + m_spriteAsset: {fileID: 0} + m_tintAllSprites: 0 + m_overrideHtmlColors: 0 + m_faceColor: + serializedVersion: 2 + rgba: 4294967295 + m_outlineColor: + serializedVersion: 2 + rgba: 4278190080 + m_fontSize: 55.5 + m_fontSizeBase: 72 + m_fontWeight: 400 + m_enableAutoSizing: 1 + m_fontSizeMin: 18 + m_fontSizeMax: 72 + m_fontStyle: 0 + m_textAlignment: 258 + m_isAlignmentEnumConverted: 1 + m_characterSpacing: 0 + m_wordSpacing: 0 + m_lineSpacing: 0 + m_lineSpacingMax: 0 + m_paragraphSpacing: 0 + m_charWidthMaxAdj: 0 + m_enableWordWrapping: 1 + m_wordWrappingRatios: 0.4 + m_overflowMode: 0 + m_firstOverflowCharacterIndex: -1 + m_linkedTextComponent: {fileID: 0} + m_isLinkedTextComponent: 0 + m_isTextTruncated: 0 + m_enableKerning: 1 + m_enableExtraPadding: 0 + checkPaddingRequired: 0 + m_isRichText: 1 + m_parseCtrlCharacters: 1 + m_isOrthographic: 1 + m_isCullingEnabled: 0 + m_ignoreRectMaskCulling: 0 + m_ignoreCulling: 1 + m_horizontalMapping: 0 + m_verticalMapping: 0 + m_uvLineOffset: 0 + m_geometrySortingOrder: 0 + m_firstVisibleCharacter: 0 + m_useMaxVisibleDescender: 1 + m_pageToDisplay: 1 + m_margin: {x: 10, y: 10, z: 10, w: 10} + m_textInfo: + textComponent: {fileID: 7607579068389748888} + characterCount: 8 + spriteCount: 0 + spaceCount: 0 + wordCount: 1 + linkCount: 0 + lineCount: 1 + pageCount: 1 + materialCount: 1 + m_havePropertiesChanged: 0 + m_isUsingLegacyAnimationComponent: 0 + m_isVolumetricText: 0 + m_spriteAnimator: {fileID: 0} + m_isInputParsingRequired: 0 + m_inputSource: 0 + m_hasFontAssetChanged: 0 + m_subTextObjects: + - {fileID: 0} + - {fileID: 0} + - {fileID: 0} + - {fileID: 0} + - {fileID: 0} + - {fileID: 0} + - {fileID: 0} + - {fileID: 0} + m_baseMaterial: {fileID: 0} + m_maskOffset: {x: 0, y: 0, z: 0, w: 0} +--- !u!1 &7607579068860310096 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 7607579068860310097} + - component: {fileID: 7607579068860310099} + m_Layer: 5 + m_Name: Content + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!224 &7607579068860310097 +RectTransform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 7607579068860310096} + m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} + m_LocalPosition: {x: 0, y: 0, z: 0} + m_LocalScale: {x: 1, y: 1, z: 1} + m_Children: + - {fileID: 7670383620096750307} + m_Father: {fileID: 7607579068174295695} + m_RootOrder: 0 + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} + m_AnchorMin: {x: 0, y: 0} + m_AnchorMax: {x: 1, y: 0.7} + m_AnchoredPosition: {x: 0, y: 0} + m_SizeDelta: {x: 0, y: 0} + m_Pivot: {x: 0.5, y: 0.5} +--- !u!222 &7607579068860310099 +CanvasRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 7607579068860310096} + m_CullTransparentMesh: 0 +--- !u!1 &7734467087014069534 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 7670383620096750307} + - component: {fileID: 1419833503999611979} + - component: {fileID: 9031310948966901772} + m_Layer: 5 + m_Name: Text + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!224 &7670383620096750307 +RectTransform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 7734467087014069534} + m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} + m_LocalPosition: {x: 0, y: 0, z: 0} + m_LocalScale: {x: 1, y: 1, z: 1} + m_Children: [] + m_Father: {fileID: 7607579068860310097} + m_RootOrder: 0 + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} + m_AnchorMin: {x: 0, y: 0} + m_AnchorMax: {x: 1, y: 1} + m_AnchoredPosition: {x: 0, y: 0} + m_SizeDelta: {x: 0, y: 0} + m_Pivot: {x: 0.5, y: 0.5} +--- !u!222 &1419833503999611979 +CanvasRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 7734467087014069534} + m_CullTransparentMesh: 0 +--- !u!114 &9031310948966901772 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 7734467087014069534} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: f4688fdb7df04437aeb418b961361dc5, type: 3} + m_Name: + m_EditorClassIdentifier: + m_Material: {fileID: 0} + m_Color: {r: 1, g: 1, b: 1, a: 1} + m_RaycastTarget: 1 + m_OnCullStateChanged: + m_PersistentCalls: + m_Calls: [] + m_TypeName: UnityEngine.UI.MaskableGraphic+CullStateChangedEvent, UnityEngine.UI, + Version=1.0.0.0, Culture=neutral, PublicKeyToken=null + m_text: '[Content]' + m_isRightToLeft: 0 + m_fontAsset: {fileID: 11400000, guid: 8f586378b4e144a9851e7b34d9b748ee, type: 2} + m_sharedMaterial: {fileID: 2180264, guid: 8f586378b4e144a9851e7b34d9b748ee, type: 2} + m_fontSharedMaterials: [] + m_fontMaterial: {fileID: 0} + m_fontMaterials: [] + m_fontColor32: + serializedVersion: 2 + rgba: 4294769916 + m_fontColor: {r: 0.990566, g: 0.990566, b: 0.990566, a: 1} + m_enableVertexGradient: 0 + m_colorMode: 3 + m_fontColorGradient: + topLeft: {r: 1, g: 1, b: 1, a: 1} + topRight: {r: 1, g: 1, b: 1, a: 1} + bottomLeft: {r: 1, g: 1, b: 1, a: 1} + bottomRight: {r: 1, g: 1, b: 1, a: 1} + m_fontColorGradientPreset: {fileID: 0} + m_spriteAsset: {fileID: 0} + m_tintAllSprites: 0 + m_overrideHtmlColors: 0 + m_faceColor: + serializedVersion: 2 + rgba: 4294967295 + m_outlineColor: + serializedVersion: 2 + rgba: 4278190080 + m_fontSize: 24 + m_fontSizeBase: 24 + m_fontWeight: 400 + m_enableAutoSizing: 1 + m_fontSizeMin: 7 + m_fontSizeMax: 24 + m_fontStyle: 0 + m_textAlignment: 257 + m_isAlignmentEnumConverted: 1 + m_characterSpacing: 0 + m_wordSpacing: 0 + m_lineSpacing: 0 + m_lineSpacingMax: 0 + m_paragraphSpacing: 0 + m_charWidthMaxAdj: 0 + m_enableWordWrapping: 1 + m_wordWrappingRatios: 0.4 + m_overflowMode: 0 + m_firstOverflowCharacterIndex: -1 + m_linkedTextComponent: {fileID: 0} + m_isLinkedTextComponent: 0 + m_isTextTruncated: 0 + m_enableKerning: 1 + m_enableExtraPadding: 0 + checkPaddingRequired: 0 + m_isRichText: 1 + m_parseCtrlCharacters: 1 + m_isOrthographic: 1 + m_isCullingEnabled: 0 + m_ignoreRectMaskCulling: 0 + m_ignoreCulling: 1 + m_horizontalMapping: 0 + m_verticalMapping: 0 + m_uvLineOffset: 0 + m_geometrySortingOrder: 0 + m_firstVisibleCharacter: 0 + m_useMaxVisibleDescender: 1 + m_pageToDisplay: 1 + m_margin: {x: 20, y: 20, z: 20, w: 20} + m_textInfo: + textComponent: {fileID: 9031310948966901772} + characterCount: 9 + spriteCount: 0 + spaceCount: 0 + wordCount: 1 + linkCount: 0 + lineCount: 1 + pageCount: 1 + materialCount: 1 + m_havePropertiesChanged: 0 + m_isUsingLegacyAnimationComponent: 0 + m_isVolumetricText: 0 + m_spriteAnimator: {fileID: 0} + m_isInputParsingRequired: 0 + m_inputSource: 0 + m_hasFontAssetChanged: 0 + m_subTextObjects: + - {fileID: 0} + - {fileID: 0} + - {fileID: 0} + - {fileID: 0} + - {fileID: 0} + - {fileID: 0} + - {fileID: 0} + - {fileID: 0} + m_baseMaterial: {fileID: 0} + m_maskOffset: {x: 0, y: 0, z: 0, w: 0} diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Prefabs/UI Panel.prefab.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Prefabs/UI Panel.prefab.meta" new file mode 100644 index 00000000..883f9626 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Prefabs/UI Panel.prefab.meta" @@ -0,0 +1,7 @@ +fileFormatVersion: 2 +guid: a7699e394e3ea4941b8b3b315a2280cc +PrefabImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Scenes.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Scenes.meta" new file mode 100644 index 00000000..0b2191dc --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Scenes.meta" @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 2d9368ff4695049bc9d47fc5d53d88a0 +folderAsset: yes +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Scenes/SampleScene.unity" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Scenes/SampleScene.unity" new file mode 100644 index 00000000..f1782358 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Scenes/SampleScene.unity" @@ -0,0 +1,18015 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!29 &1 +OcclusionCullingSettings: + m_ObjectHideFlags: 0 + serializedVersion: 2 + m_OcclusionBakeSettings: + smallestOccluder: 5 + smallestHole: 0.25 + backfaceThreshold: 100 + m_SceneGUID: 00000000000000000000000000000000 + m_OcclusionCullingData: {fileID: 0} +--- !u!104 &2 +RenderSettings: + m_ObjectHideFlags: 0 + serializedVersion: 9 + m_Fog: 0 + m_FogColor: {r: 0.5, g: 0.5, b: 0.5, a: 1} + m_FogMode: 3 + m_FogDensity: 0.01 + m_LinearFogStart: 0 + m_LinearFogEnd: 300 + m_AmbientSkyColor: {r: 0.8204432, g: 0.8945878, b: 0.9716981, a: 1} + m_AmbientEquatorColor: {r: 0.64328945, g: 0.82804716, b: 0.9811321, a: 1} + m_AmbientGroundColor: {r: 0, g: 0.2943397, b: 0.735849, a: 1} + m_AmbientIntensity: 1 + m_AmbientMode: 1 + m_SubtractiveShadowColor: {r: 0.42, g: 0.478, b: 0.627, a: 1} + m_SkyboxMaterial: {fileID: 0} + m_HaloStrength: 0.5 + m_FlareStrength: 1 + m_FlareFadeSpeed: 3 + m_HaloTexture: {fileID: 0} + m_SpotCookie: {fileID: 10001, guid: 0000000000000000e000000000000000, type: 0} + m_DefaultReflectionMode: 0 + m_DefaultReflectionResolution: 128 + m_ReflectionBounces: 1 + m_ReflectionIntensity: 1 + m_CustomReflection: {fileID: 0} + m_Sun: {fileID: 0} + m_IndirectSpecularColor: {r: 0, g: 0, b: 0, a: 1} + m_UseRadianceAmbientProbe: 0 +--- !u!157 &3 +LightmapSettings: + m_ObjectHideFlags: 0 + serializedVersion: 11 + m_GIWorkflowMode: 1 + m_GISettings: + serializedVersion: 2 + m_BounceScale: 1 + m_IndirectOutputScale: 1 + m_AlbedoBoost: 1 + m_EnvironmentLightingMode: 0 + m_EnableBakedLightmaps: 0 + m_EnableRealtimeLightmaps: 0 + m_LightmapEditorSettings: + serializedVersion: 10 + m_Resolution: 2 + m_BakeResolution: 40 + m_AtlasSize: 1024 + m_AO: 1 + m_AOMaxDistance: 1 + m_CompAOExponent: 1 + m_CompAOExponentDirect: 0 + m_Padding: 2 + m_LightmapParameters: {fileID: 0} + m_LightmapsBakeMode: 1 + m_TextureCompression: 1 + m_FinalGather: 0 + m_FinalGatherFiltering: 1 + m_FinalGatherRayCount: 256 + m_ReflectionCompression: 2 + m_MixedBakeMode: 2 + m_BakeBackend: 1 + m_PVRSampling: 1 + m_PVRDirectSampleCount: 32 + m_PVRSampleCount: 500 + m_PVRBounces: 2 + m_PVRFilterTypeDirect: 0 + m_PVRFilterTypeIndirect: 0 + m_PVRFilterTypeAO: 0 + m_PVRFilteringMode: 1 + m_PVRCulling: 1 + m_PVRFilteringGaussRadiusDirect: 1 + m_PVRFilteringGaussRadiusIndirect: 5 + m_PVRFilteringGaussRadiusAO: 2 + m_PVRFilteringAtrousPositionSigmaDirect: 0.5 + m_PVRFilteringAtrousPositionSigmaIndirect: 2 + m_PVRFilteringAtrousPositionSigmaAO: 1 + m_ShowResolutionOverlay: 1 + m_LightingDataAsset: {fileID: 0} + m_UseShadowmask: 1 +--- !u!196 &4 +NavMeshSettings: + serializedVersion: 2 + m_ObjectHideFlags: 0 + m_BuildSettings: + serializedVersion: 2 + agentTypeID: 0 + agentRadius: 0.5 + agentHeight: 2 + agentSlope: 45 + agentClimb: 0.4 + ledgeDropHeight: 0 + maxJumpAcrossDistance: 0 + minRegionArea: 2 + manualCellSize: 0 + cellSize: 0.16666667 + manualTileSize: 0 + tileSize: 256 + accuratePlacement: 0 + debug: + m_Flags: 0 + m_NavMeshData: {fileID: 0} +--- !u!1 &23283998 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 23283999} + m_Layer: 0 + m_Name: Environment + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &23283999 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 23283998} + m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} + m_LocalPosition: {x: 0, y: 0, z: 0} + m_LocalScale: {x: 1, y: 1, z: 1} + m_Children: + - {fileID: 1645660025} + - {fileID: 77662693} + - {fileID: 286898288} + - {fileID: 1889916056} + - {fileID: 807038590} + - {fileID: 638981063} + - {fileID: 101095727} + m_Father: {fileID: 0} + m_RootOrder: 17 + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!4 &25114349 stripped +Transform: + m_CorrespondingSourceObject: {fileID: 400012, guid: 0829d76c4806eb54b8b2f17eec10f4e6, + type: 3} + m_PrefabInstance: {fileID: 1396237454} + m_PrefabAsset: {fileID: 0} +--- !u!1001 &62682349 +PrefabInstance: + m_ObjectHideFlags: 0 + serializedVersion: 2 + m_Modification: + m_TransformParent: {fileID: 77662693} + m_Modifications: + - target: {fileID: 100000, guid: 9f1e50f73a529a448b004add5bec5d80, type: 3} + propertyPath: m_Name + value: TreeBox (19) + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 9f1e50f73a529a448b004add5bec5d80, type: 3} + propertyPath: m_LocalPosition.x + value: -106.50922 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 9f1e50f73a529a448b004add5bec5d80, type: 3} + propertyPath: m_LocalPosition.y + value: -0.49866438 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 9f1e50f73a529a448b004add5bec5d80, type: 3} + propertyPath: m_LocalPosition.z + value: 121.81922 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 9f1e50f73a529a448b004add5bec5d80, type: 3} + propertyPath: m_LocalRotation.x + value: -0 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 9f1e50f73a529a448b004add5bec5d80, type: 3} + propertyPath: m_LocalRotation.y + value: -0.39853132 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 9f1e50f73a529a448b004add5bec5d80, type: 3} + propertyPath: m_LocalRotation.z + value: -0 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 9f1e50f73a529a448b004add5bec5d80, type: 3} + propertyPath: m_LocalRotation.w + value: 0.9171547 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 9f1e50f73a529a448b004add5bec5d80, type: 3} + propertyPath: m_RootOrder + value: 38 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 9f1e50f73a529a448b004add5bec5d80, type: 3} + propertyPath: m_LocalEulerAnglesHint.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 9f1e50f73a529a448b004add5bec5d80, type: 3} + propertyPath: m_LocalEulerAnglesHint.y + value: -46.973003 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 9f1e50f73a529a448b004add5bec5d80, type: 3} + propertyPath: m_LocalEulerAnglesHint.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 9f1e50f73a529a448b004add5bec5d80, type: 3} + propertyPath: m_LocalScale.x + value: 3.31176 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 9f1e50f73a529a448b004add5bec5d80, type: 3} + propertyPath: m_LocalScale.y + value: 3.31175 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 9f1e50f73a529a448b004add5bec5d80, type: 3} + propertyPath: m_LocalScale.z + value: 3.31176 + objectReference: {fileID: 0} + - target: {fileID: 2300000, guid: 9f1e50f73a529a448b004add5bec5d80, type: 3} + propertyPath: m_Materials.Array.data[0] + value: + objectReference: {fileID: 2100000, guid: d11179e416c9b394c8176d36a0dcae52, type: 2} + m_RemovedComponents: [] + m_SourcePrefab: {fileID: 100100000, guid: 9f1e50f73a529a448b004add5bec5d80, type: 3} +--- !u!1001 &68686922 +PrefabInstance: + m_ObjectHideFlags: 0 + serializedVersion: 2 + m_Modification: + m_TransformParent: {fileID: 822690626} + m_Modifications: + - target: {fileID: 1579282987822437358, guid: 941fac9249b6442cdb2d3f23472128e2, + type: 3} + propertyPath: m_Name + value: ModularTrackStraight (6) + objectReference: {fileID: 0} + - target: {fileID: 1579282987822796750, guid: 941fac9249b6442cdb2d3f23472128e2, + type: 3} + propertyPath: m_LocalPosition.x + value: -14 + objectReference: {fileID: 0} + - target: {fileID: 1579282987822796750, guid: 941fac9249b6442cdb2d3f23472128e2, + type: 3} + propertyPath: m_LocalPosition.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 1579282987822796750, guid: 941fac9249b6442cdb2d3f23472128e2, + type: 3} + propertyPath: m_LocalPosition.z + value: 57 + objectReference: {fileID: 0} + - target: {fileID: 1579282987822796750, guid: 941fac9249b6442cdb2d3f23472128e2, + type: 3} + propertyPath: m_LocalRotation.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 1579282987822796750, guid: 941fac9249b6442cdb2d3f23472128e2, + type: 3} + propertyPath: m_LocalRotation.y + value: 0.7071068 + objectReference: {fileID: 0} + - target: {fileID: 1579282987822796750, guid: 941fac9249b6442cdb2d3f23472128e2, + type: 3} + propertyPath: m_LocalRotation.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 1579282987822796750, guid: 941fac9249b6442cdb2d3f23472128e2, + type: 3} + propertyPath: m_LocalRotation.w + value: 0.7071068 + objectReference: {fileID: 0} + - target: {fileID: 1579282987822796750, guid: 941fac9249b6442cdb2d3f23472128e2, + type: 3} + propertyPath: m_RootOrder + value: 7 + objectReference: {fileID: 0} + - target: {fileID: 1579282987822796750, guid: 941fac9249b6442cdb2d3f23472128e2, + type: 3} + propertyPath: m_LocalEulerAnglesHint.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 1579282987822796750, guid: 941fac9249b6442cdb2d3f23472128e2, + type: 3} + propertyPath: m_LocalEulerAnglesHint.y + value: 90 + objectReference: {fileID: 0} + - target: {fileID: 1579282987822796750, guid: 941fac9249b6442cdb2d3f23472128e2, + type: 3} + propertyPath: m_LocalEulerAnglesHint.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 1644974464755198482, guid: 941fac9249b6442cdb2d3f23472128e2, + type: 3} + propertyPath: bounciness + value: 0.1 + objectReference: {fileID: 0} + m_RemovedComponents: + - {fileID: 1579282987816156490, guid: 941fac9249b6442cdb2d3f23472128e2, type: 3} + m_SourcePrefab: {fileID: 100100000, guid: 941fac9249b6442cdb2d3f23472128e2, type: 3} +--- !u!4 &68686923 stripped +Transform: + m_CorrespondingSourceObject: {fileID: 1579282987822796750, guid: 941fac9249b6442cdb2d3f23472128e2, + type: 3} + m_PrefabInstance: {fileID: 68686922} + m_PrefabAsset: {fileID: 0} +--- !u!1 &77662692 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 77662693} + m_Layer: 0 + m_Name: Trees + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &77662693 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 77662692} + m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} + m_LocalPosition: {x: 0, y: 0, z: 0} + m_LocalScale: {x: 1, y: 1, z: 1} + m_Children: + - {fileID: 1555499288} + - {fileID: 1448653045} + - {fileID: 295791437} + - {fileID: 668239317} + - {fileID: 545441865} + - {fileID: 1611566367} + - {fileID: 1892013764} + - {fileID: 715507816} + - {fileID: 1100055148} + - {fileID: 636407410} + - {fileID: 518492378} + - {fileID: 912427264} + - {fileID: 1501329462} + - {fileID: 1581658821} + - {fileID: 1630197999} + - {fileID: 1699416849} + - {fileID: 1767071607} + - {fileID: 190675042} + - {fileID: 2124150255} + - {fileID: 1733798794} + - {fileID: 1297151559} + - {fileID: 729327320} + - {fileID: 1477802856} + - {fileID: 830488553} + - {fileID: 1485692695} + - {fileID: 1743341119} + - {fileID: 83238441} + - {fileID: 793644371} + - {fileID: 779150869} + - {fileID: 1693743625} + - {fileID: 2080326895} + - {fileID: 1343796070} + - {fileID: 1192398534} + - {fileID: 1385839211} + - {fileID: 1803420843} + - {fileID: 1045665709} + - {fileID: 781479590} + - {fileID: 1550973660} + - {fileID: 1741129050} + - {fileID: 545310876} + m_Father: {fileID: 23283999} + m_RootOrder: 1 + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!4 &83238441 stripped +Transform: + m_CorrespondingSourceObject: {fileID: 400000, guid: 9f1e50f73a529a448b004add5bec5d80, + type: 3} + m_PrefabInstance: {fileID: 1268325793} + m_PrefabAsset: {fileID: 0} +--- !u!1001 &83338720 +PrefabInstance: + m_ObjectHideFlags: 0 + serializedVersion: 2 + m_Modification: + m_TransformParent: {fileID: 807038590} + m_Modifications: + - target: {fileID: 667086550830086704, guid: 3796997fde0c29b4180a4ec756403b34, + type: 3} + propertyPath: m_LocalPosition.x + value: 4 + objectReference: {fileID: 0} + - target: {fileID: 667086550830086704, guid: 3796997fde0c29b4180a4ec756403b34, + type: 3} + propertyPath: m_RootOrder + value: 3 + objectReference: {fileID: 0} + - target: {fileID: 667086550830086704, guid: 3796997fde0c29b4180a4ec756403b34, + type: 3} + propertyPath: m_LocalPosition.y + value: -0.04767394 + objectReference: {fileID: 0} + - target: {fileID: 667086550830086704, guid: 3796997fde0c29b4180a4ec756403b34, + type: 3} + propertyPath: m_LocalPosition.z + value: 78 + objectReference: {fileID: 0} + - target: {fileID: 667086550830086704, guid: 3796997fde0c29b4180a4ec756403b34, + type: 3} + propertyPath: m_LocalRotation.x + value: -0 + objectReference: {fileID: 0} + - target: {fileID: 667086550830086704, guid: 3796997fde0c29b4180a4ec756403b34, + type: 3} + propertyPath: m_LocalRotation.y + value: -0.056109123 + objectReference: {fileID: 0} + - target: {fileID: 667086550830086704, guid: 3796997fde0c29b4180a4ec756403b34, + type: 3} + propertyPath: m_LocalRotation.z + value: -0 + objectReference: {fileID: 0} + - target: {fileID: 667086550830086704, guid: 3796997fde0c29b4180a4ec756403b34, + type: 3} + propertyPath: m_LocalRotation.w + value: 0.99842465 + objectReference: {fileID: 0} + - target: {fileID: 667086550830086704, guid: 3796997fde0c29b4180a4ec756403b34, + type: 3} + propertyPath: m_LocalEulerAnglesHint.y + value: -6.433 + objectReference: {fileID: 0} + - target: {fileID: 667086550830086704, guid: 3796997fde0c29b4180a4ec756403b34, + type: 3} + propertyPath: m_LocalScale.x + value: 7.9455 + objectReference: {fileID: 0} + - target: {fileID: 667086550830086704, guid: 3796997fde0c29b4180a4ec756403b34, + type: 3} + propertyPath: m_LocalScale.y + value: 7.9455 + objectReference: {fileID: 0} + - target: {fileID: 667086550830086704, guid: 3796997fde0c29b4180a4ec756403b34, + type: 3} + propertyPath: m_LocalScale.z + value: 7.9455 + objectReference: {fileID: 0} + - target: {fileID: 5742194636018856674, guid: 3796997fde0c29b4180a4ec756403b34, + type: 3} + propertyPath: m_Materials.Array.data[0] + value: + objectReference: {fileID: 2100000, guid: 7ac0824dbec4c864aa5fbd7b3321d6d6, type: 2} + - target: {fileID: 5742194636018856685, guid: 3796997fde0c29b4180a4ec756403b34, + type: 3} + propertyPath: m_Name + value: StoneFlat (3) + objectReference: {fileID: 0} + - target: {fileID: 7265208955801587247, guid: 3796997fde0c29b4180a4ec756403b34, + type: 3} + propertyPath: m_Materials.Array.data[0] + value: + objectReference: {fileID: 2100000, guid: d11179e416c9b394c8176d36a0dcae52, type: 2} + - target: {fileID: 7265208955802684655, guid: 3796997fde0c29b4180a4ec756403b34, + type: 3} + propertyPath: m_Mesh + value: + objectReference: {fileID: 4300002, guid: c80f31023dcf9b34cbd0044505be4806, type: 3} + - target: {fileID: 7265208955803586799, guid: 3796997fde0c29b4180a4ec756403b34, + type: 3} + propertyPath: m_Name + value: StoneVariant1 (5) + objectReference: {fileID: 0} + - target: {fileID: 7265208955804011727, guid: 3796997fde0c29b4180a4ec756403b34, + type: 3} + propertyPath: m_LocalPosition.x + value: -26.81 + objectReference: {fileID: 0} + - target: {fileID: 7265208955804011727, guid: 3796997fde0c29b4180a4ec756403b34, + type: 3} + propertyPath: m_LocalPosition.y + value: -0.93000007 + objectReference: {fileID: 0} + - target: {fileID: 7265208955804011727, guid: 3796997fde0c29b4180a4ec756403b34, + type: 3} + propertyPath: m_LocalPosition.z + value: -43.84 + objectReference: {fileID: 0} + - target: {fileID: 7265208955804011727, guid: 3796997fde0c29b4180a4ec756403b34, + type: 3} + propertyPath: m_LocalRotation.x + value: -0 + objectReference: {fileID: 0} + - target: {fileID: 7265208955804011727, guid: 3796997fde0c29b4180a4ec756403b34, + type: 3} + propertyPath: m_LocalRotation.y + value: -0.056109615 + objectReference: {fileID: 0} + - target: {fileID: 7265208955804011727, guid: 3796997fde0c29b4180a4ec756403b34, + type: 3} + propertyPath: m_LocalRotation.z + value: -0 + objectReference: {fileID: 0} + - target: {fileID: 7265208955804011727, guid: 3796997fde0c29b4180a4ec756403b34, + type: 3} + propertyPath: m_LocalRotation.w + value: 0.9984246 + objectReference: {fileID: 0} + - target: {fileID: 7265208955804011727, guid: 3796997fde0c29b4180a4ec756403b34, + type: 3} + propertyPath: m_RootOrder + value: 4 + objectReference: {fileID: 0} + - target: {fileID: 7265208955804011727, guid: 3796997fde0c29b4180a4ec756403b34, + type: 3} + propertyPath: m_LocalEulerAnglesHint.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 7265208955804011727, guid: 3796997fde0c29b4180a4ec756403b34, + type: 3} + propertyPath: m_LocalEulerAnglesHint.y + value: -6.433 + objectReference: {fileID: 0} + - target: {fileID: 7265208955804011727, guid: 3796997fde0c29b4180a4ec756403b34, + type: 3} + propertyPath: m_LocalEulerAnglesHint.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 7265208955804011727, guid: 3796997fde0c29b4180a4ec756403b34, + type: 3} + propertyPath: m_LocalScale.x + value: 7.9455 + objectReference: {fileID: 0} + - target: {fileID: 7265208955804011727, guid: 3796997fde0c29b4180a4ec756403b34, + type: 3} + propertyPath: m_LocalScale.y + value: 7.94548 + objectReference: {fileID: 0} + - target: {fileID: 7265208955804011727, guid: 3796997fde0c29b4180a4ec756403b34, + type: 3} + propertyPath: m_LocalScale.z + value: 7.9455 + objectReference: {fileID: 0} + m_RemovedComponents: [] + m_SourcePrefab: {fileID: 100100000, guid: 3796997fde0c29b4180a4ec756403b34, type: 3} +--- !u!1001 &99488150 +PrefabInstance: + m_ObjectHideFlags: 0 + serializedVersion: 2 + m_Modification: + m_TransformParent: {fileID: 807038590} + m_Modifications: + - target: {fileID: 667086550830086704, guid: 3796997fde0c29b4180a4ec756403b34, + type: 3} + propertyPath: m_LocalPosition.x + value: -23 + objectReference: {fileID: 0} + - target: {fileID: 667086550830086704, guid: 3796997fde0c29b4180a4ec756403b34, + type: 3} + propertyPath: m_RootOrder + value: 8 + objectReference: {fileID: 0} + - target: {fileID: 667086550830086704, guid: 3796997fde0c29b4180a4ec756403b34, + type: 3} + propertyPath: m_LocalPosition.y + value: 0.062326193 + objectReference: {fileID: 0} + - target: {fileID: 667086550830086704, guid: 3796997fde0c29b4180a4ec756403b34, + type: 3} + propertyPath: m_LocalPosition.z + value: 42 + objectReference: {fileID: 0} + - target: {fileID: 667086550830086704, guid: 3796997fde0c29b4180a4ec756403b34, + type: 3} + propertyPath: m_LocalRotation.x + value: -0 + objectReference: {fileID: 0} + - target: {fileID: 667086550830086704, guid: 3796997fde0c29b4180a4ec756403b34, + type: 3} + propertyPath: m_LocalRotation.y + value: -0.6654193 + objectReference: {fileID: 0} + - target: {fileID: 667086550830086704, guid: 3796997fde0c29b4180a4ec756403b34, + type: 3} + propertyPath: m_LocalRotation.z + value: -0 + objectReference: {fileID: 0} + - target: {fileID: 667086550830086704, guid: 3796997fde0c29b4180a4ec756403b34, + type: 3} + propertyPath: m_LocalRotation.w + value: 0.74646986 + objectReference: {fileID: 0} + - target: {fileID: 667086550830086704, guid: 3796997fde0c29b4180a4ec756403b34, + type: 3} + propertyPath: m_LocalEulerAnglesHint.y + value: -83.429 + objectReference: {fileID: 0} + - target: {fileID: 667086550830086704, guid: 3796997fde0c29b4180a4ec756403b34, + type: 3} + propertyPath: m_LocalScale.x + value: 12.148676 + objectReference: {fileID: 0} + - target: {fileID: 667086550830086704, guid: 3796997fde0c29b4180a4ec756403b34, + type: 3} + propertyPath: m_LocalScale.y + value: 12.14867 + objectReference: {fileID: 0} + - target: {fileID: 667086550830086704, guid: 3796997fde0c29b4180a4ec756403b34, + type: 3} + propertyPath: m_LocalScale.z + value: 12.148676 + objectReference: {fileID: 0} + - target: {fileID: 5742194636018856674, guid: 3796997fde0c29b4180a4ec756403b34, + type: 3} + propertyPath: m_Materials.Array.data[0] + value: + objectReference: {fileID: 2100000, guid: c99104857011a3d478b482de4b0de308, type: 2} + - target: {fileID: 5742194636018856685, guid: 3796997fde0c29b4180a4ec756403b34, + type: 3} + propertyPath: m_Name + value: StoneFlat (7) + objectReference: {fileID: 0} + - target: {fileID: 7265208955801587247, guid: 3796997fde0c29b4180a4ec756403b34, + type: 3} + propertyPath: m_Materials.Array.data[0] + value: + objectReference: {fileID: 2100000, guid: d11179e416c9b394c8176d36a0dcae52, type: 2} + - target: {fileID: 7265208955803586799, guid: 3796997fde0c29b4180a4ec756403b34, + type: 3} + propertyPath: m_Name + value: StoneVariant1 (9) + objectReference: {fileID: 0} + - target: {fileID: 7265208955804011727, guid: 3796997fde0c29b4180a4ec756403b34, + type: 3} + propertyPath: m_LocalPosition.x + value: -77.248 + objectReference: {fileID: 0} + - target: {fileID: 7265208955804011727, guid: 3796997fde0c29b4180a4ec756403b34, + type: 3} + propertyPath: m_LocalPosition.y + value: -0.89 + objectReference: {fileID: 0} + - target: {fileID: 7265208955804011727, guid: 3796997fde0c29b4180a4ec756403b34, + type: 3} + propertyPath: m_LocalPosition.z + value: -18.243 + objectReference: {fileID: 0} + - target: {fileID: 7265208955804011727, guid: 3796997fde0c29b4180a4ec756403b34, + type: 3} + propertyPath: m_LocalRotation.x + value: -0 + objectReference: {fileID: 0} + - target: {fileID: 7265208955804011727, guid: 3796997fde0c29b4180a4ec756403b34, + type: 3} + propertyPath: m_LocalRotation.y + value: -0.4134799 + objectReference: {fileID: 0} + - target: {fileID: 7265208955804011727, guid: 3796997fde0c29b4180a4ec756403b34, + type: 3} + propertyPath: m_LocalRotation.z + value: -0 + objectReference: {fileID: 0} + - target: {fileID: 7265208955804011727, guid: 3796997fde0c29b4180a4ec756403b34, + type: 3} + propertyPath: m_LocalRotation.w + value: 0.9105133 + objectReference: {fileID: 0} + - target: {fileID: 7265208955804011727, guid: 3796997fde0c29b4180a4ec756403b34, + type: 3} + propertyPath: m_RootOrder + value: 8 + objectReference: {fileID: 0} + - target: {fileID: 7265208955804011727, guid: 3796997fde0c29b4180a4ec756403b34, + type: 3} + propertyPath: m_LocalEulerAnglesHint.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 7265208955804011727, guid: 3796997fde0c29b4180a4ec756403b34, + type: 3} + propertyPath: m_LocalEulerAnglesHint.y + value: -48.847004 + objectReference: {fileID: 0} + - target: {fileID: 7265208955804011727, guid: 3796997fde0c29b4180a4ec756403b34, + type: 3} + propertyPath: m_LocalEulerAnglesHint.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 7265208955804011727, guid: 3796997fde0c29b4180a4ec756403b34, + type: 3} + propertyPath: m_LocalScale.x + value: 9.623448 + objectReference: {fileID: 0} + - target: {fileID: 7265208955804011727, guid: 3796997fde0c29b4180a4ec756403b34, + type: 3} + propertyPath: m_LocalScale.y + value: 9.623424 + objectReference: {fileID: 0} + - target: {fileID: 7265208955804011727, guid: 3796997fde0c29b4180a4ec756403b34, + type: 3} + propertyPath: m_LocalScale.z + value: 9.623448 + objectReference: {fileID: 0} + m_RemovedComponents: [] + m_SourcePrefab: {fileID: 100100000, guid: 3796997fde0c29b4180a4ec756403b34, type: 3} +--- !u!1001 &101095724 +PrefabInstance: + m_ObjectHideFlags: 0 + serializedVersion: 2 + m_Modification: + m_TransformParent: {fileID: 23283999} + m_Modifications: + - target: {fileID: 100000, guid: 21fe29e73ae4cc842b0d5e9ca6e345f9, type: 3} + propertyPath: m_Name + value: GroundPlane + objectReference: {fileID: 0} + - target: {fileID: 100000, guid: 21fe29e73ae4cc842b0d5e9ca6e345f9, type: 3} + propertyPath: m_StaticEditorFlags + value: 4294967295 + objectReference: {fileID: 0} + - target: {fileID: 100000, guid: 21fe29e73ae4cc842b0d5e9ca6e345f9, type: 3} + propertyPath: m_Layer + value: 9 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 21fe29e73ae4cc842b0d5e9ca6e345f9, type: 3} + propertyPath: m_LocalPosition.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 21fe29e73ae4cc842b0d5e9ca6e345f9, type: 3} + propertyPath: m_LocalPosition.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 21fe29e73ae4cc842b0d5e9ca6e345f9, type: 3} + propertyPath: m_LocalPosition.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 21fe29e73ae4cc842b0d5e9ca6e345f9, type: 3} + propertyPath: m_LocalRotation.x + value: -0 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 21fe29e73ae4cc842b0d5e9ca6e345f9, type: 3} + propertyPath: m_LocalRotation.y + value: -0 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 21fe29e73ae4cc842b0d5e9ca6e345f9, type: 3} + propertyPath: m_LocalRotation.z + value: -0 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 21fe29e73ae4cc842b0d5e9ca6e345f9, type: 3} + propertyPath: m_LocalRotation.w + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 21fe29e73ae4cc842b0d5e9ca6e345f9, type: 3} + propertyPath: m_RootOrder + value: 6 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 21fe29e73ae4cc842b0d5e9ca6e345f9, type: 3} + propertyPath: m_LocalEulerAnglesHint.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 21fe29e73ae4cc842b0d5e9ca6e345f9, type: 3} + propertyPath: m_LocalEulerAnglesHint.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 21fe29e73ae4cc842b0d5e9ca6e345f9, type: 3} + propertyPath: m_LocalEulerAnglesHint.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 21fe29e73ae4cc842b0d5e9ca6e345f9, type: 3} + propertyPath: m_LocalScale.x + value: 3.5000005 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 21fe29e73ae4cc842b0d5e9ca6e345f9, type: 3} + propertyPath: m_LocalScale.y + value: 2 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 21fe29e73ae4cc842b0d5e9ca6e345f9, type: 3} + propertyPath: m_LocalScale.z + value: 3.5000005 + objectReference: {fileID: 0} + - target: {fileID: 2300000, guid: 21fe29e73ae4cc842b0d5e9ca6e345f9, type: 3} + propertyPath: m_Materials.Array.data[0] + value: + objectReference: {fileID: 2100000, guid: 7ac0824dbec4c864aa5fbd7b3321d6d6, type: 2} + m_RemovedComponents: [] + m_SourcePrefab: {fileID: 100100000, guid: 21fe29e73ae4cc842b0d5e9ca6e345f9, type: 3} +--- !u!1 &101095725 stripped +GameObject: + m_CorrespondingSourceObject: {fileID: 100000, guid: 21fe29e73ae4cc842b0d5e9ca6e345f9, + type: 3} + m_PrefabInstance: {fileID: 101095724} + m_PrefabAsset: {fileID: 0} +--- !u!64 &101095726 +MeshCollider: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 101095725} + m_Material: {fileID: 0} + m_IsTrigger: 0 + m_Enabled: 1 + serializedVersion: 3 + m_Convex: 0 + m_CookingOptions: 14 + m_Mesh: {fileID: 4300000, guid: 21fe29e73ae4cc842b0d5e9ca6e345f9, type: 3} +--- !u!4 &101095727 stripped +Transform: + m_CorrespondingSourceObject: {fileID: 400000, guid: 21fe29e73ae4cc842b0d5e9ca6e345f9, + type: 3} + m_PrefabInstance: {fileID: 101095724} + m_PrefabAsset: {fileID: 0} +--- !u!1001 &119561715 +PrefabInstance: + m_ObjectHideFlags: 0 + serializedVersion: 2 + m_Modification: + m_TransformParent: {fileID: 77662693} + m_Modifications: + - target: {fileID: 100000, guid: dca6189290e8c16479a364fa6d80b6b8, type: 3} + propertyPath: m_Name + value: TreeRound (3) + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: dca6189290e8c16479a364fa6d80b6b8, type: 3} + propertyPath: m_LocalPosition.x + value: 5.8707924 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: dca6189290e8c16479a364fa6d80b6b8, type: 3} + propertyPath: m_LocalPosition.y + value: 5.0626717 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: dca6189290e8c16479a364fa6d80b6b8, type: 3} + propertyPath: m_LocalPosition.z + value: -14.361549 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: dca6189290e8c16479a364fa6d80b6b8, type: 3} + propertyPath: m_LocalRotation.x + value: 0.00000008146034 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: dca6189290e8c16479a364fa6d80b6b8, type: 3} + propertyPath: m_LocalRotation.y + value: -0 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: dca6189290e8c16479a364fa6d80b6b8, type: 3} + propertyPath: m_LocalRotation.z + value: -0 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: dca6189290e8c16479a364fa6d80b6b8, type: 3} + propertyPath: m_LocalRotation.w + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: dca6189290e8c16479a364fa6d80b6b8, type: 3} + propertyPath: m_RootOrder + value: 3 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: dca6189290e8c16479a364fa6d80b6b8, type: 3} + propertyPath: m_LocalEulerAnglesHint.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: dca6189290e8c16479a364fa6d80b6b8, type: 3} + propertyPath: m_LocalEulerAnglesHint.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: dca6189290e8c16479a364fa6d80b6b8, type: 3} + propertyPath: m_LocalEulerAnglesHint.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: dca6189290e8c16479a364fa6d80b6b8, type: 3} + propertyPath: m_LocalScale.x + value: 2.3049 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: dca6189290e8c16479a364fa6d80b6b8, type: 3} + propertyPath: m_LocalScale.y + value: 2.3049 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: dca6189290e8c16479a364fa6d80b6b8, type: 3} + propertyPath: m_LocalScale.z + value: 2.3049 + objectReference: {fileID: 0} + - target: {fileID: 2300000, guid: dca6189290e8c16479a364fa6d80b6b8, type: 3} + propertyPath: m_Materials.Array.data[0] + value: + objectReference: {fileID: 2100000, guid: d11179e416c9b394c8176d36a0dcae52, type: 2} + - target: {fileID: 2300002, guid: dca6189290e8c16479a364fa6d80b6b8, type: 3} + propertyPath: m_Materials.Array.data[0] + value: + objectReference: {fileID: 2100000, guid: 6c378a7b0da21d443a337061a33da161, type: 2} + m_RemovedComponents: [] + m_SourcePrefab: {fileID: 100100000, guid: dca6189290e8c16479a364fa6d80b6b8, type: 3} +--- !u!1001 &122768566 +PrefabInstance: + m_ObjectHideFlags: 0 + serializedVersion: 2 + m_Modification: + m_TransformParent: {fileID: 1889916056} + m_Modifications: + - target: {fileID: 100012, guid: 0829d76c4806eb54b8b2f17eec10f4e6, type: 3} + propertyPath: m_Name + value: Cloud (1) + objectReference: {fileID: 0} + - target: {fileID: 100012, guid: 0829d76c4806eb54b8b2f17eec10f4e6, type: 3} + propertyPath: m_StaticEditorFlags + value: 4294967295 + objectReference: {fileID: 0} + - target: {fileID: 400012, guid: 0829d76c4806eb54b8b2f17eec10f4e6, type: 3} + propertyPath: m_LocalPosition.x + value: -408.00003 + objectReference: {fileID: 0} + - target: {fileID: 400012, guid: 0829d76c4806eb54b8b2f17eec10f4e6, type: 3} + propertyPath: m_LocalPosition.y + value: 66 + objectReference: {fileID: 0} + - target: {fileID: 400012, guid: 0829d76c4806eb54b8b2f17eec10f4e6, type: 3} + propertyPath: m_LocalPosition.z + value: 325 + objectReference: {fileID: 0} + - target: {fileID: 400012, guid: 0829d76c4806eb54b8b2f17eec10f4e6, type: 3} + propertyPath: m_LocalRotation.x + value: -0 + objectReference: {fileID: 0} + - target: {fileID: 400012, guid: 0829d76c4806eb54b8b2f17eec10f4e6, type: 3} + propertyPath: m_LocalRotation.y + value: -0.4437124 + objectReference: {fileID: 0} + - target: {fileID: 400012, guid: 0829d76c4806eb54b8b2f17eec10f4e6, type: 3} + propertyPath: m_LocalRotation.z + value: -0 + objectReference: {fileID: 0} + - target: {fileID: 400012, guid: 0829d76c4806eb54b8b2f17eec10f4e6, type: 3} + propertyPath: m_LocalRotation.w + value: 0.89616925 + objectReference: {fileID: 0} + - target: {fileID: 400012, guid: 0829d76c4806eb54b8b2f17eec10f4e6, type: 3} + propertyPath: m_RootOrder + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 400012, guid: 0829d76c4806eb54b8b2f17eec10f4e6, type: 3} + propertyPath: m_LocalEulerAnglesHint.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 400012, guid: 0829d76c4806eb54b8b2f17eec10f4e6, type: 3} + propertyPath: m_LocalEulerAnglesHint.y + value: -52.682003 + objectReference: {fileID: 0} + - target: {fileID: 400012, guid: 0829d76c4806eb54b8b2f17eec10f4e6, type: 3} + propertyPath: m_LocalEulerAnglesHint.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 400012, guid: 0829d76c4806eb54b8b2f17eec10f4e6, type: 3} + propertyPath: m_LocalScale.x + value: 6.47062 + objectReference: {fileID: 0} + - target: {fileID: 400012, guid: 0829d76c4806eb54b8b2f17eec10f4e6, type: 3} + propertyPath: m_LocalScale.y + value: 6.4706197 + objectReference: {fileID: 0} + - target: {fileID: 400012, guid: 0829d76c4806eb54b8b2f17eec10f4e6, type: 3} + propertyPath: m_LocalScale.z + value: 6.47062 + objectReference: {fileID: 0} + - target: {fileID: 2300000, guid: 0829d76c4806eb54b8b2f17eec10f4e6, type: 3} + propertyPath: m_Materials.Array.data[0] + value: + objectReference: {fileID: 2100000, guid: c1fb7d3a27a67b947bb2b2ab391072b0, type: 2} + - target: {fileID: 2300002, guid: 0829d76c4806eb54b8b2f17eec10f4e6, type: 3} + propertyPath: m_Materials.Array.data[0] + value: + objectReference: {fileID: 2100000, guid: c1fb7d3a27a67b947bb2b2ab391072b0, type: 2} + - target: {fileID: 2300004, guid: 0829d76c4806eb54b8b2f17eec10f4e6, type: 3} + propertyPath: m_Materials.Array.data[0] + value: + objectReference: {fileID: 2100000, guid: c1fb7d3a27a67b947bb2b2ab391072b0, type: 2} + - target: {fileID: 2300006, guid: 0829d76c4806eb54b8b2f17eec10f4e6, type: 3} + propertyPath: m_Materials.Array.data[0] + value: + objectReference: {fileID: 2100000, guid: c1fb7d3a27a67b947bb2b2ab391072b0, type: 2} + - target: {fileID: 2300008, guid: 0829d76c4806eb54b8b2f17eec10f4e6, type: 3} + propertyPath: m_Materials.Array.data[0] + value: + objectReference: {fileID: 2100000, guid: c1fb7d3a27a67b947bb2b2ab391072b0, type: 2} + - target: {fileID: 2300010, guid: 0829d76c4806eb54b8b2f17eec10f4e6, type: 3} + propertyPath: m_Materials.Array.data[0] + value: + objectReference: {fileID: 2100000, guid: c1fb7d3a27a67b947bb2b2ab391072b0, type: 2} + - target: {fileID: 2300012, guid: 0829d76c4806eb54b8b2f17eec10f4e6, type: 3} + propertyPath: m_Materials.Array.data[0] + value: + objectReference: {fileID: 2100000, guid: d11179e416c9b394c8176d36a0dcae52, type: 2} + m_RemovedComponents: [] + m_SourcePrefab: {fileID: 100100000, guid: 0829d76c4806eb54b8b2f17eec10f4e6, type: 3} +--- !u!4 &122768567 stripped +Transform: + m_CorrespondingSourceObject: {fileID: 400012, guid: 0829d76c4806eb54b8b2f17eec10f4e6, + type: 3} + m_PrefabInstance: {fileID: 122768566} + m_PrefabAsset: {fileID: 0} +--- !u!1001 &130582065 +PrefabInstance: + m_ObjectHideFlags: 0 + serializedVersion: 2 + m_Modification: + m_TransformParent: {fileID: 807038590} + m_Modifications: + - target: {fileID: 40299501215355906, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_RootOrder + value: 34 + objectReference: {fileID: 0} + - target: {fileID: 40299501215355906, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_LocalPosition.x + value: 28.395756 + objectReference: {fileID: 0} + - target: {fileID: 40299501215355906, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_LocalPosition.y + value: -0.03467399 + objectReference: {fileID: 0} + - target: {fileID: 40299501215355906, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_LocalPosition.z + value: 9.776177 + objectReference: {fileID: 0} + - target: {fileID: 40299501215355906, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_LocalRotation.y + value: 0.9071285 + objectReference: {fileID: 0} + - target: {fileID: 40299501215355906, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_LocalRotation.z + value: -0 + objectReference: {fileID: 0} + - target: {fileID: 40299501215355906, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_LocalRotation.w + value: 0.42085382 + objectReference: {fileID: 0} + - target: {fileID: 40299501215355906, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_LocalEulerAnglesHint.y + value: 130.223 + objectReference: {fileID: 0} + - target: {fileID: 40299501215355906, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_LocalScale.x + value: 1.9931517 + objectReference: {fileID: 0} + - target: {fileID: 40299501215355906, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_LocalScale.y + value: 1.99315 + objectReference: {fileID: 0} + - target: {fileID: 40299501215355906, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_LocalScale.z + value: 1.9931517 + objectReference: {fileID: 0} + - target: {fileID: 40299501215355906, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_LocalRotation.x + value: -0 + objectReference: {fileID: 0} + - target: {fileID: 2057621013554333680, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_LocalPosition.x + value: 54.58 + objectReference: {fileID: 0} + - target: {fileID: 2057621013554333680, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_LocalPosition.y + value: -1.04 + objectReference: {fileID: 0} + - target: {fileID: 2057621013554333680, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_LocalPosition.z + value: -52.38 + objectReference: {fileID: 0} + - target: {fileID: 2057621013554333680, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_LocalRotation.x + value: -0 + objectReference: {fileID: 0} + - target: {fileID: 2057621013554333680, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_LocalRotation.y + value: -0 + objectReference: {fileID: 0} + - target: {fileID: 2057621013554333680, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_LocalRotation.z + value: -0 + objectReference: {fileID: 0} + - target: {fileID: 2057621013554333680, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_LocalRotation.w + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 2057621013554333680, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_RootOrder + value: 35 + objectReference: {fileID: 0} + - target: {fileID: 2057621013554333680, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_LocalEulerAnglesHint.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 2057621013554333680, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_LocalEulerAnglesHint.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 2057621013554333680, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_LocalEulerAnglesHint.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 2057621013554333680, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_LocalScale.x + value: 2.3006 + objectReference: {fileID: 0} + - target: {fileID: 2057621013554333680, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_LocalScale.y + value: 2.3006 + objectReference: {fileID: 0} + - target: {fileID: 2057621013554333680, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_LocalScale.z + value: 2.3006 + objectReference: {fileID: 0} + - target: {fileID: 2057621013554699216, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_Name + value: StoneVariant2 (25) + objectReference: {fileID: 0} + - target: {fileID: 2057621013556626704, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_Materials.Array.data[0] + value: + objectReference: {fileID: 2100000, guid: d11179e416c9b394c8176d36a0dcae52, type: 2} + - target: {fileID: 2057621013557757904, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_Mesh + value: + objectReference: {fileID: 4300002, guid: 5e6dd9e33a8a1c748a582c8565e5f95f, type: 3} + - target: {fileID: 6182327852661155845, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_Name + value: StoneRound (21) + objectReference: {fileID: 0} + m_RemovedComponents: [] + m_SourcePrefab: {fileID: 100100000, guid: 230dd9257fca2c249b555f6edd3c8e14, type: 3} +--- !u!1001 &160924792 +PrefabInstance: + m_ObjectHideFlags: 0 + serializedVersion: 2 + m_Modification: + m_TransformParent: {fileID: 77662693} + m_Modifications: + - target: {fileID: 100000, guid: dca6189290e8c16479a364fa6d80b6b8, type: 3} + propertyPath: m_Name + value: TreeRound (18) + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: dca6189290e8c16479a364fa6d80b6b8, type: 3} + propertyPath: m_LocalPosition.x + value: -82.70921 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: dca6189290e8c16479a364fa6d80b6b8, type: 3} + propertyPath: m_LocalPosition.y + value: 4.081336 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: dca6189290e8c16479a364fa6d80b6b8, type: 3} + propertyPath: m_LocalPosition.z + value: 122.31922 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: dca6189290e8c16479a364fa6d80b6b8, type: 3} + propertyPath: m_LocalRotation.x + value: 0.000000003687177 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: dca6189290e8c16479a364fa6d80b6b8, type: 3} + propertyPath: m_LocalRotation.y + value: 0.9989751 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: dca6189290e8c16479a364fa6d80b6b8, type: 3} + propertyPath: m_LocalRotation.z + value: 0.000000081376875 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: dca6189290e8c16479a364fa6d80b6b8, type: 3} + propertyPath: m_LocalRotation.w + value: 0.045263793 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: dca6189290e8c16479a364fa6d80b6b8, type: 3} + propertyPath: m_RootOrder + value: 18 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: dca6189290e8c16479a364fa6d80b6b8, type: 3} + propertyPath: m_LocalEulerAnglesHint.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: dca6189290e8c16479a364fa6d80b6b8, type: 3} + propertyPath: m_LocalEulerAnglesHint.y + value: 174.811 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: dca6189290e8c16479a364fa6d80b6b8, type: 3} + propertyPath: m_LocalEulerAnglesHint.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: dca6189290e8c16479a364fa6d80b6b8, type: 3} + propertyPath: m_LocalScale.x + value: 1.7392111 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: dca6189290e8c16479a364fa6d80b6b8, type: 3} + propertyPath: m_LocalScale.y + value: 1.7392083 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: dca6189290e8c16479a364fa6d80b6b8, type: 3} + propertyPath: m_LocalScale.z + value: 1.7392111 + objectReference: {fileID: 0} + - target: {fileID: 2300000, guid: dca6189290e8c16479a364fa6d80b6b8, type: 3} + propertyPath: m_Materials.Array.data[0] + value: + objectReference: {fileID: 2100000, guid: d11179e416c9b394c8176d36a0dcae52, type: 2} + - target: {fileID: 2300002, guid: dca6189290e8c16479a364fa6d80b6b8, type: 3} + propertyPath: m_Materials.Array.data[0] + value: + objectReference: {fileID: 2100000, guid: d11179e416c9b394c8176d36a0dcae52, type: 2} + m_RemovedComponents: [] + m_SourcePrefab: {fileID: 100100000, guid: dca6189290e8c16479a364fa6d80b6b8, type: 3} +--- !u!4 &163268473 stripped +Transform: + m_CorrespondingSourceObject: {fileID: 2497398649778501837, guid: 88017844a1245554fb36a6790969f12e, + type: 3} + m_PrefabInstance: {fileID: 321836945} + m_PrefabAsset: {fileID: 0} +--- !u!4 &163532130 stripped +Transform: + m_CorrespondingSourceObject: {fileID: 667086550830086704, guid: 3796997fde0c29b4180a4ec756403b34, + type: 3} + m_PrefabInstance: {fileID: 1785482982} + m_PrefabAsset: {fileID: 0} +--- !u!1 &166865639 +GameObject: + m_ObjectHideFlags: 3 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 166865640} + - component: {fileID: 166865643} + - component: {fileID: 166865641} + - component: {fileID: 166865642} + m_Layer: 0 + m_Name: cm + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &166865640 +Transform: + m_ObjectHideFlags: 3 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 166865639} + m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} + m_LocalPosition: {x: 34, y: -0.72100735, z: 21.893852} + m_LocalScale: {x: 1, y: 1, z: 1} + m_Children: [] + m_Father: {fileID: 1175779214} + m_RootOrder: 0 + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!114 &166865641 +MonoBehaviour: + m_ObjectHideFlags: 3 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 166865639} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: fa7155796051b734daa718462081dc5f, type: 3} + m_Name: + m_EditorClassIdentifier: + m_BindingMode: 1 + m_FollowOffset: {x: 0, y: 1.25, z: -5} + m_XDamping: 2 + m_YDamping: 0 + m_ZDamping: 0.75 + m_AngularDampingMode: 0 + m_PitchDamping: 0 + m_YawDamping: 0 + m_RollDamping: 0 + m_AngularDamping: 0 +--- !u!114 &166865642 +MonoBehaviour: + m_ObjectHideFlags: 3 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 166865639} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: f4044717213e31446939f7bd49c896ea, type: 3} + m_Name: + m_EditorClassIdentifier: + m_TrackedObjectOffset: {x: 0, y: -0.25, z: 0} + m_LookaheadTime: 0 + m_LookaheadSmoothing: 3 + m_LookaheadIgnoreY: 1 + m_HorizontalDamping: 5 + m_VerticalDamping: 0 + m_ScreenX: 0.5 + m_ScreenY: 0.8 + m_DeadZoneWidth: 0 + m_DeadZoneHeight: 0 + m_SoftZoneWidth: 0 + m_SoftZoneHeight: 0 + m_BiasX: 0 + m_BiasY: 0 + m_CenterOnActivate: 1 +--- !u!114 &166865643 +MonoBehaviour: + m_ObjectHideFlags: 3 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 166865639} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: ac0b09e7857660247b1477e93731de29, type: 3} + m_Name: + m_EditorClassIdentifier: +--- !u!4 &178641664 stripped +Transform: + m_CorrespondingSourceObject: {fileID: 40299501215355906, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + m_PrefabInstance: {fileID: 1118694668} + m_PrefabAsset: {fileID: 0} +--- !u!1001 &187641028 +PrefabInstance: + m_ObjectHideFlags: 0 + serializedVersion: 2 + m_Modification: + m_TransformParent: {fileID: 807038590} + m_Modifications: + - target: {fileID: 40299501215355906, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_LocalPosition.x + value: -0.01424408 + objectReference: {fileID: 0} + - target: {fileID: 40299501215355906, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_RootOrder + value: 15 + objectReference: {fileID: 0} + - target: {fileID: 40299501215355906, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_LocalPosition.z + value: -57.363823 + objectReference: {fileID: 0} + - target: {fileID: 40299501215355906, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_LocalRotation.x + value: -0 + objectReference: {fileID: 0} + - target: {fileID: 40299501215355906, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_LocalPosition.y + value: -0.15767384 + objectReference: {fileID: 0} + - target: {fileID: 2057621013554333680, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_LocalPosition.x + value: 38.8 + objectReference: {fileID: 0} + - target: {fileID: 2057621013554333680, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_LocalPosition.y + value: -1.04 + objectReference: {fileID: 0} + - target: {fileID: 2057621013554333680, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_LocalPosition.z + value: -52.2 + objectReference: {fileID: 0} + - target: {fileID: 2057621013554333680, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_LocalRotation.x + value: -0 + objectReference: {fileID: 0} + - target: {fileID: 2057621013554333680, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_LocalRotation.y + value: -0 + objectReference: {fileID: 0} + - target: {fileID: 2057621013554333680, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_LocalRotation.z + value: -0 + objectReference: {fileID: 0} + - target: {fileID: 2057621013554333680, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_LocalRotation.w + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 2057621013554333680, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_RootOrder + value: 16 + objectReference: {fileID: 0} + - target: {fileID: 2057621013554333680, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_LocalEulerAnglesHint.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 2057621013554333680, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_LocalEulerAnglesHint.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 2057621013554333680, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_LocalEulerAnglesHint.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 2057621013554333680, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_LocalScale.x + value: 2.3006 + objectReference: {fileID: 0} + - target: {fileID: 2057621013554333680, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_LocalScale.y + value: 2.3006 + objectReference: {fileID: 0} + - target: {fileID: 2057621013554333680, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_LocalScale.z + value: 2.3006 + objectReference: {fileID: 0} + - target: {fileID: 2057621013554699216, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_Name + value: StoneVariant2 (2) + objectReference: {fileID: 0} + - target: {fileID: 2057621013556626704, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_Materials.Array.data[0] + value: + objectReference: {fileID: 2100000, guid: d11179e416c9b394c8176d36a0dcae52, type: 2} + - target: {fileID: 2057621013557757904, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_Mesh + value: + objectReference: {fileID: 4300002, guid: 5e6dd9e33a8a1c748a582c8565e5f95f, type: 3} + - target: {fileID: 6182327852661155845, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_Name + value: StoneRound (1) + objectReference: {fileID: 0} + m_RemovedComponents: [] + m_SourcePrefab: {fileID: 100100000, guid: 230dd9257fca2c249b555f6edd3c8e14, type: 3} +--- !u!4 &190675042 stripped +Transform: + m_CorrespondingSourceObject: {fileID: 400000, guid: dca6189290e8c16479a364fa6d80b6b8, + type: 3} + m_PrefabInstance: {fileID: 826804888} + m_PrefabAsset: {fileID: 0} +--- !u!4 &203187189 stripped +Transform: + m_CorrespondingSourceObject: {fileID: 667086550830086704, guid: 3796997fde0c29b4180a4ec756403b34, + type: 3} + m_PrefabInstance: {fileID: 1364508378} + m_PrefabAsset: {fileID: 0} +--- !u!4 &232587116 stripped +Transform: + m_CorrespondingSourceObject: {fileID: 400000, guid: 92bb9994204d1d44cb6223c53e4f84f8, + type: 3} + m_PrefabInstance: {fileID: 1633696157} + m_PrefabAsset: {fileID: 0} +--- !u!1001 &244402944 +PrefabInstance: + m_ObjectHideFlags: 0 + serializedVersion: 2 + m_Modification: + m_TransformParent: {fileID: 807038590} + m_Modifications: + - target: {fileID: 40299501215355906, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_RootOrder + value: 27 + objectReference: {fileID: 0} + - target: {fileID: 40299501215355906, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_LocalPosition.x + value: -34.314243 + objectReference: {fileID: 0} + - target: {fileID: 40299501215355906, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_LocalPosition.y + value: -0.03467399 + objectReference: {fileID: 0} + - target: {fileID: 40299501215355906, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_LocalPosition.z + value: -53.26382 + objectReference: {fileID: 0} + - target: {fileID: 40299501215355906, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_LocalRotation.y + value: 0.12080388 + objectReference: {fileID: 0} + - target: {fileID: 40299501215355906, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_LocalRotation.z + value: -0 + objectReference: {fileID: 0} + - target: {fileID: 40299501215355906, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_LocalRotation.w + value: 0.9926764 + objectReference: {fileID: 0} + - target: {fileID: 40299501215355906, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_LocalEulerAnglesHint.y + value: 13.877 + objectReference: {fileID: 0} + - target: {fileID: 40299501215355906, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_LocalScale.x + value: 1.9931502 + objectReference: {fileID: 0} + - target: {fileID: 40299501215355906, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_LocalScale.y + value: 1.99315 + objectReference: {fileID: 0} + - target: {fileID: 40299501215355906, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_LocalScale.z + value: 1.9931502 + objectReference: {fileID: 0} + - target: {fileID: 40299501215355906, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_LocalRotation.x + value: -0 + objectReference: {fileID: 0} + - target: {fileID: 2057621013554333680, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_LocalPosition.x + value: 45 + objectReference: {fileID: 0} + - target: {fileID: 2057621013554333680, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_LocalPosition.y + value: -0.91700006 + objectReference: {fileID: 0} + - target: {fileID: 2057621013554333680, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_LocalPosition.z + value: 19.6 + objectReference: {fileID: 0} + - target: {fileID: 2057621013554333680, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_LocalRotation.x + value: -0 + objectReference: {fileID: 0} + - target: {fileID: 2057621013554333680, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_LocalRotation.y + value: 0.907129 + objectReference: {fileID: 0} + - target: {fileID: 2057621013554333680, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_LocalRotation.z + value: -0 + objectReference: {fileID: 0} + - target: {fileID: 2057621013554333680, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_LocalRotation.w + value: 0.42085275 + objectReference: {fileID: 0} + - target: {fileID: 2057621013554333680, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_RootOrder + value: 30 + objectReference: {fileID: 0} + - target: {fileID: 2057621013554333680, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_LocalEulerAnglesHint.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 2057621013554333680, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_LocalEulerAnglesHint.y + value: 130.223 + objectReference: {fileID: 0} + - target: {fileID: 2057621013554333680, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_LocalEulerAnglesHint.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 2057621013554333680, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_LocalScale.x + value: 1.9931493 + objectReference: {fileID: 0} + - target: {fileID: 2057621013554333680, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_LocalScale.y + value: 1.99315 + objectReference: {fileID: 0} + - target: {fileID: 2057621013554333680, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_LocalScale.z + value: 1.9931493 + objectReference: {fileID: 0} + - target: {fileID: 2057621013554699216, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_Name + value: StoneVariant2 (20) + objectReference: {fileID: 0} + - target: {fileID: 2057621013556626704, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_Materials.Array.data[0] + value: + objectReference: {fileID: 2100000, guid: d11179e416c9b394c8176d36a0dcae52, type: 2} + - target: {fileID: 2057621013557757904, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_Mesh + value: + objectReference: {fileID: 4300002, guid: 5e6dd9e33a8a1c748a582c8565e5f95f, type: 3} + - target: {fileID: 6182327852661155845, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_Name + value: StoneRound (14) + objectReference: {fileID: 0} + m_RemovedComponents: [] + m_SourcePrefab: {fileID: 100100000, guid: 230dd9257fca2c249b555f6edd3c8e14, type: 3} +--- !u!4 &256071243 stripped +Transform: + m_CorrespondingSourceObject: {fileID: 40299501215355906, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + m_PrefabInstance: {fileID: 808917339} + m_PrefabAsset: {fileID: 0} +--- !u!1001 &264899791 +PrefabInstance: + m_ObjectHideFlags: 0 + serializedVersion: 2 + m_Modification: + m_TransformParent: {fileID: 77662693} + m_Modifications: + - target: {fileID: 100000, guid: dca6189290e8c16479a364fa6d80b6b8, type: 3} + propertyPath: m_Name + value: TreeRound + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: dca6189290e8c16479a364fa6d80b6b8, type: 3} + propertyPath: m_LocalPosition.x + value: -92.63565 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: dca6189290e8c16479a364fa6d80b6b8, type: 3} + propertyPath: m_LocalPosition.y + value: 4 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: dca6189290e8c16479a364fa6d80b6b8, type: 3} + propertyPath: m_LocalPosition.z + value: 93.01725 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: dca6189290e8c16479a364fa6d80b6b8, type: 3} + propertyPath: m_LocalRotation.x + value: 0.000000003687177 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: dca6189290e8c16479a364fa6d80b6b8, type: 3} + propertyPath: m_LocalRotation.y + value: 0.9989751 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: dca6189290e8c16479a364fa6d80b6b8, type: 3} + propertyPath: m_LocalRotation.z + value: 0.000000081376875 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: dca6189290e8c16479a364fa6d80b6b8, type: 3} + propertyPath: m_LocalRotation.w + value: 0.045263793 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: dca6189290e8c16479a364fa6d80b6b8, type: 3} + propertyPath: m_RootOrder + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: dca6189290e8c16479a364fa6d80b6b8, type: 3} + propertyPath: m_LocalEulerAnglesHint.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: dca6189290e8c16479a364fa6d80b6b8, type: 3} + propertyPath: m_LocalEulerAnglesHint.y + value: 174.811 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: dca6189290e8c16479a364fa6d80b6b8, type: 3} + propertyPath: m_LocalEulerAnglesHint.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: dca6189290e8c16479a364fa6d80b6b8, type: 3} + propertyPath: m_LocalScale.x + value: 1.7392111 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: dca6189290e8c16479a364fa6d80b6b8, type: 3} + propertyPath: m_LocalScale.y + value: 1.7392083 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: dca6189290e8c16479a364fa6d80b6b8, type: 3} + propertyPath: m_LocalScale.z + value: 1.7392111 + objectReference: {fileID: 0} + - target: {fileID: 2300000, guid: dca6189290e8c16479a364fa6d80b6b8, type: 3} + propertyPath: m_Materials.Array.data[0] + value: + objectReference: {fileID: 2100000, guid: d11179e416c9b394c8176d36a0dcae52, type: 2} + - target: {fileID: 2300002, guid: dca6189290e8c16479a364fa6d80b6b8, type: 3} + propertyPath: m_Materials.Array.data[0] + value: + objectReference: {fileID: 2100000, guid: d11179e416c9b394c8176d36a0dcae52, type: 2} + m_RemovedComponents: [] + m_SourcePrefab: {fileID: 100100000, guid: dca6189290e8c16479a364fa6d80b6b8, type: 3} +--- !u!1 &286898287 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 286898288} + m_Layer: 0 + m_Name: Hills + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &286898288 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 286898287} + m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} + m_LocalPosition: {x: 0, y: 0, z: 0} + m_LocalScale: {x: 1, y: 1, z: 1} + m_Children: + - {fileID: 958580491} + - {fileID: 897357394} + - {fileID: 1045649162} + - {fileID: 1872410836} + - {fileID: 831267668} + - {fileID: 336301938} + - {fileID: 1226212857} + - {fileID: 232587116} + - {fileID: 439151644} + - {fileID: 433840811} + - {fileID: 616742102} + - {fileID: 972888048} + - {fileID: 461693128} + - {fileID: 1419231053} + - {fileID: 1903448819} + m_Father: {fileID: 23283999} + m_RootOrder: 2 + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!1001 &287520745 +PrefabInstance: + m_ObjectHideFlags: 0 + serializedVersion: 2 + m_Modification: + m_TransformParent: {fileID: 77662693} + m_Modifications: + - target: {fileID: 100000, guid: dca6189290e8c16479a364fa6d80b6b8, type: 3} + propertyPath: m_Name + value: TreeRound (2) + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: dca6189290e8c16479a364fa6d80b6b8, type: 3} + propertyPath: m_LocalPosition.x + value: -72.94211 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: dca6189290e8c16479a364fa6d80b6b8, type: 3} + propertyPath: m_LocalPosition.y + value: 5.066078 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: dca6189290e8c16479a364fa6d80b6b8, type: 3} + propertyPath: m_LocalPosition.z + value: -4.573883 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: dca6189290e8c16479a364fa6d80b6b8, type: 3} + propertyPath: m_LocalRotation.x + value: 0.00000008146034 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: dca6189290e8c16479a364fa6d80b6b8, type: 3} + propertyPath: m_LocalRotation.y + value: -0 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: dca6189290e8c16479a364fa6d80b6b8, type: 3} + propertyPath: m_LocalRotation.z + value: -0 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: dca6189290e8c16479a364fa6d80b6b8, type: 3} + propertyPath: m_LocalRotation.w + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: dca6189290e8c16479a364fa6d80b6b8, type: 3} + propertyPath: m_RootOrder + value: 2 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: dca6189290e8c16479a364fa6d80b6b8, type: 3} + propertyPath: m_LocalEulerAnglesHint.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: dca6189290e8c16479a364fa6d80b6b8, type: 3} + propertyPath: m_LocalEulerAnglesHint.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: dca6189290e8c16479a364fa6d80b6b8, type: 3} + propertyPath: m_LocalEulerAnglesHint.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: dca6189290e8c16479a364fa6d80b6b8, type: 3} + propertyPath: m_LocalScale.x + value: 3.6468127 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: dca6189290e8c16479a364fa6d80b6b8, type: 3} + propertyPath: m_LocalScale.y + value: 3.6468127 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: dca6189290e8c16479a364fa6d80b6b8, type: 3} + propertyPath: m_LocalScale.z + value: 3.6468127 + objectReference: {fileID: 0} + - target: {fileID: 2300000, guid: dca6189290e8c16479a364fa6d80b6b8, type: 3} + propertyPath: m_Materials.Array.data[0] + value: + objectReference: {fileID: 2100000, guid: d11179e416c9b394c8176d36a0dcae52, type: 2} + - target: {fileID: 2300002, guid: dca6189290e8c16479a364fa6d80b6b8, type: 3} + propertyPath: m_Materials.Array.data[0] + value: + objectReference: {fileID: 2100000, guid: 6c378a7b0da21d443a337061a33da161, type: 2} + m_RemovedComponents: [] + m_SourcePrefab: {fileID: 100100000, guid: dca6189290e8c16479a364fa6d80b6b8, type: 3} +--- !u!1001 &289270467 +PrefabInstance: + m_ObjectHideFlags: 0 + serializedVersion: 2 + m_Modification: + m_TransformParent: {fileID: 807038590} + m_Modifications: + - target: {fileID: 40299501215355906, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_RootOrder + value: 37 + objectReference: {fileID: 0} + - target: {fileID: 40299501215355906, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_LocalPosition.x + value: 21.785755 + objectReference: {fileID: 0} + - target: {fileID: 40299501215355906, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_LocalPosition.y + value: -0.15767384 + objectReference: {fileID: 0} + - target: {fileID: 40299501215355906, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_LocalPosition.z + value: -36.56382 + objectReference: {fileID: 0} + - target: {fileID: 40299501215355906, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_LocalRotation.y + value: 0.9071285 + objectReference: {fileID: 0} + - target: {fileID: 40299501215355906, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_LocalRotation.z + value: -0 + objectReference: {fileID: 0} + - target: {fileID: 40299501215355906, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_LocalRotation.w + value: 0.42085382 + objectReference: {fileID: 0} + - target: {fileID: 40299501215355906, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_LocalEulerAnglesHint.y + value: 130.223 + objectReference: {fileID: 0} + - target: {fileID: 40299501215355906, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_LocalScale.x + value: 2.3006017 + objectReference: {fileID: 0} + - target: {fileID: 40299501215355906, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_LocalScale.y + value: 2.3006 + objectReference: {fileID: 0} + - target: {fileID: 40299501215355906, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_LocalScale.z + value: 2.3006017 + objectReference: {fileID: 0} + - target: {fileID: 40299501215355906, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_LocalRotation.x + value: -0 + objectReference: {fileID: 0} + - target: {fileID: 2057621013554333680, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_LocalPosition.x + value: 60.6 + objectReference: {fileID: 0} + - target: {fileID: 2057621013554333680, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_LocalPosition.y + value: -1.04 + objectReference: {fileID: 0} + - target: {fileID: 2057621013554333680, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_LocalPosition.z + value: -31.4 + objectReference: {fileID: 0} + - target: {fileID: 2057621013554333680, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_LocalRotation.x + value: -0 + objectReference: {fileID: 0} + - target: {fileID: 2057621013554333680, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_LocalRotation.y + value: -0 + objectReference: {fileID: 0} + - target: {fileID: 2057621013554333680, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_LocalRotation.z + value: -0 + objectReference: {fileID: 0} + - target: {fileID: 2057621013554333680, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_LocalRotation.w + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 2057621013554333680, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_RootOrder + value: 37 + objectReference: {fileID: 0} + - target: {fileID: 2057621013554333680, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_LocalEulerAnglesHint.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 2057621013554333680, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_LocalEulerAnglesHint.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 2057621013554333680, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_LocalEulerAnglesHint.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 2057621013554333680, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_LocalScale.x + value: 2.3006 + objectReference: {fileID: 0} + - target: {fileID: 2057621013554333680, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_LocalScale.y + value: 2.3006 + objectReference: {fileID: 0} + - target: {fileID: 2057621013554333680, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_LocalScale.z + value: 2.3006 + objectReference: {fileID: 0} + - target: {fileID: 2057621013554699216, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_Name + value: StoneVariant2 (27) + objectReference: {fileID: 0} + - target: {fileID: 2057621013556626704, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_Materials.Array.data[0] + value: + objectReference: {fileID: 2100000, guid: d11179e416c9b394c8176d36a0dcae52, type: 2} + - target: {fileID: 2057621013557757904, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_Mesh + value: + objectReference: {fileID: 4300002, guid: 5e6dd9e33a8a1c748a582c8565e5f95f, type: 3} + - target: {fileID: 6182327852661155845, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_Name + value: StoneRound (24) + objectReference: {fileID: 0} + m_RemovedComponents: [] + m_SourcePrefab: {fileID: 100100000, guid: 230dd9257fca2c249b555f6edd3c8e14, type: 3} +--- !u!4 &289270468 stripped +Transform: + m_CorrespondingSourceObject: {fileID: 40299501215355906, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + m_PrefabInstance: {fileID: 289270467} + m_PrefabAsset: {fileID: 0} +--- !u!1001 &294940160 +PrefabInstance: + m_ObjectHideFlags: 0 + serializedVersion: 2 + m_Modification: + m_TransformParent: {fileID: 1889916056} + m_Modifications: + - target: {fileID: 100012, guid: 0829d76c4806eb54b8b2f17eec10f4e6, type: 3} + propertyPath: m_Name + value: Cloud (9) + objectReference: {fileID: 0} + - target: {fileID: 100012, guid: 0829d76c4806eb54b8b2f17eec10f4e6, type: 3} + propertyPath: m_StaticEditorFlags + value: 4294967295 + objectReference: {fileID: 0} + - target: {fileID: 400012, guid: 0829d76c4806eb54b8b2f17eec10f4e6, type: 3} + propertyPath: m_LocalPosition.x + value: 199.83609 + objectReference: {fileID: 0} + - target: {fileID: 400012, guid: 0829d76c4806eb54b8b2f17eec10f4e6, type: 3} + propertyPath: m_LocalPosition.y + value: 59 + objectReference: {fileID: 0} + - target: {fileID: 400012, guid: 0829d76c4806eb54b8b2f17eec10f4e6, type: 3} + propertyPath: m_LocalPosition.z + value: 113.30352 + objectReference: {fileID: 0} + - target: {fileID: 400012, guid: 0829d76c4806eb54b8b2f17eec10f4e6, type: 3} + propertyPath: m_LocalRotation.x + value: -0 + objectReference: {fileID: 0} + - target: {fileID: 400012, guid: 0829d76c4806eb54b8b2f17eec10f4e6, type: 3} + propertyPath: m_LocalRotation.y + value: 0.58861417 + objectReference: {fileID: 0} + - target: {fileID: 400012, guid: 0829d76c4806eb54b8b2f17eec10f4e6, type: 3} + propertyPath: m_LocalRotation.z + value: -0 + objectReference: {fileID: 0} + - target: {fileID: 400012, guid: 0829d76c4806eb54b8b2f17eec10f4e6, type: 3} + propertyPath: m_LocalRotation.w + value: 0.80841416 + objectReference: {fileID: 0} + - target: {fileID: 400012, guid: 0829d76c4806eb54b8b2f17eec10f4e6, type: 3} + propertyPath: m_RootOrder + value: 9 + objectReference: {fileID: 0} + - target: {fileID: 400012, guid: 0829d76c4806eb54b8b2f17eec10f4e6, type: 3} + propertyPath: m_LocalEulerAnglesHint.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 400012, guid: 0829d76c4806eb54b8b2f17eec10f4e6, type: 3} + propertyPath: m_LocalEulerAnglesHint.y + value: 72.117004 + objectReference: {fileID: 0} + - target: {fileID: 400012, guid: 0829d76c4806eb54b8b2f17eec10f4e6, type: 3} + propertyPath: m_LocalEulerAnglesHint.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 400012, guid: 0829d76c4806eb54b8b2f17eec10f4e6, type: 3} + propertyPath: m_LocalScale.x + value: 6.470622 + objectReference: {fileID: 0} + - target: {fileID: 400012, guid: 0829d76c4806eb54b8b2f17eec10f4e6, type: 3} + propertyPath: m_LocalScale.y + value: 6.4706197 + objectReference: {fileID: 0} + - target: {fileID: 400012, guid: 0829d76c4806eb54b8b2f17eec10f4e6, type: 3} + propertyPath: m_LocalScale.z + value: 6.470622 + objectReference: {fileID: 0} + - target: {fileID: 2300000, guid: 0829d76c4806eb54b8b2f17eec10f4e6, type: 3} + propertyPath: m_Materials.Array.data[0] + value: + objectReference: {fileID: 2100000, guid: c1fb7d3a27a67b947bb2b2ab391072b0, type: 2} + - target: {fileID: 2300002, guid: 0829d76c4806eb54b8b2f17eec10f4e6, type: 3} + propertyPath: m_Materials.Array.data[0] + value: + objectReference: {fileID: 2100000, guid: c1fb7d3a27a67b947bb2b2ab391072b0, type: 2} + - target: {fileID: 2300004, guid: 0829d76c4806eb54b8b2f17eec10f4e6, type: 3} + propertyPath: m_Materials.Array.data[0] + value: + objectReference: {fileID: 2100000, guid: c1fb7d3a27a67b947bb2b2ab391072b0, type: 2} + - target: {fileID: 2300006, guid: 0829d76c4806eb54b8b2f17eec10f4e6, type: 3} + propertyPath: m_Materials.Array.data[0] + value: + objectReference: {fileID: 2100000, guid: c1fb7d3a27a67b947bb2b2ab391072b0, type: 2} + - target: {fileID: 2300008, guid: 0829d76c4806eb54b8b2f17eec10f4e6, type: 3} + propertyPath: m_Materials.Array.data[0] + value: + objectReference: {fileID: 2100000, guid: c1fb7d3a27a67b947bb2b2ab391072b0, type: 2} + - target: {fileID: 2300010, guid: 0829d76c4806eb54b8b2f17eec10f4e6, type: 3} + propertyPath: m_Materials.Array.data[0] + value: + objectReference: {fileID: 2100000, guid: c1fb7d3a27a67b947bb2b2ab391072b0, type: 2} + - target: {fileID: 2300012, guid: 0829d76c4806eb54b8b2f17eec10f4e6, type: 3} + propertyPath: m_Materials.Array.data[0] + value: + objectReference: {fileID: 2100000, guid: d11179e416c9b394c8176d36a0dcae52, type: 2} + m_RemovedComponents: [] + m_SourcePrefab: {fileID: 100100000, guid: 0829d76c4806eb54b8b2f17eec10f4e6, type: 3} +--- !u!4 &295791437 stripped +Transform: + m_CorrespondingSourceObject: {fileID: 400000, guid: dca6189290e8c16479a364fa6d80b6b8, + type: 3} + m_PrefabInstance: {fileID: 287520745} + m_PrefabAsset: {fileID: 0} +--- !u!1001 &304557107 +PrefabInstance: + m_ObjectHideFlags: 0 + serializedVersion: 2 + m_Modification: + m_TransformParent: {fileID: 286898288} + m_Modifications: + - target: {fileID: 100000, guid: 92bb9994204d1d44cb6223c53e4f84f8, type: 3} + propertyPath: m_Name + value: Hill (6) + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 92bb9994204d1d44cb6223c53e4f84f8, type: 3} + propertyPath: m_LocalPosition.x + value: 111.339874 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 92bb9994204d1d44cb6223c53e4f84f8, type: 3} + propertyPath: m_LocalPosition.y + value: -7.1489043 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 92bb9994204d1d44cb6223c53e4f84f8, type: 3} + propertyPath: m_LocalPosition.z + value: 130.19064 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 92bb9994204d1d44cb6223c53e4f84f8, type: 3} + propertyPath: m_LocalRotation.x + value: -0 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 92bb9994204d1d44cb6223c53e4f84f8, type: 3} + propertyPath: m_LocalRotation.y + value: -0 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 92bb9994204d1d44cb6223c53e4f84f8, type: 3} + propertyPath: m_LocalRotation.z + value: -0 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 92bb9994204d1d44cb6223c53e4f84f8, type: 3} + propertyPath: m_LocalRotation.w + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 92bb9994204d1d44cb6223c53e4f84f8, type: 3} + propertyPath: m_RootOrder + value: 6 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 92bb9994204d1d44cb6223c53e4f84f8, type: 3} + propertyPath: m_LocalEulerAnglesHint.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 92bb9994204d1d44cb6223c53e4f84f8, type: 3} + propertyPath: m_LocalEulerAnglesHint.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 92bb9994204d1d44cb6223c53e4f84f8, type: 3} + propertyPath: m_LocalEulerAnglesHint.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 92bb9994204d1d44cb6223c53e4f84f8, type: 3} + propertyPath: m_LocalScale.x + value: 7.3455596 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 92bb9994204d1d44cb6223c53e4f84f8, type: 3} + propertyPath: m_LocalScale.y + value: 10.787737 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 92bb9994204d1d44cb6223c53e4f84f8, type: 3} + propertyPath: m_LocalScale.z + value: 7.3455596 + objectReference: {fileID: 0} + m_RemovedComponents: [] + m_SourcePrefab: {fileID: 100100000, guid: 92bb9994204d1d44cb6223c53e4f84f8, type: 3} +--- !u!4 &307944688 stripped +Transform: + m_CorrespondingSourceObject: {fileID: 667086550830086704, guid: 3796997fde0c29b4180a4ec756403b34, + type: 3} + m_PrefabInstance: {fileID: 904496424} + m_PrefabAsset: {fileID: 0} +--- !u!1001 &309236780 +PrefabInstance: + m_ObjectHideFlags: 0 + serializedVersion: 2 + m_Modification: + m_TransformParent: {fileID: 807038590} + m_Modifications: + - target: {fileID: 667086550830086704, guid: 3796997fde0c29b4180a4ec756403b34, + type: 3} + propertyPath: m_LocalPosition.x + value: -65.624245 + objectReference: {fileID: 0} + - target: {fileID: 667086550830086704, guid: 3796997fde0c29b4180a4ec756403b34, + type: 3} + propertyPath: m_RootOrder + value: 4 + objectReference: {fileID: 0} + - target: {fileID: 667086550830086704, guid: 3796997fde0c29b4180a4ec756403b34, + type: 3} + propertyPath: m_LocalPosition.y + value: -0.047674 + objectReference: {fileID: 0} + - target: {fileID: 667086550830086704, guid: 3796997fde0c29b4180a4ec756403b34, + type: 3} + propertyPath: m_LocalPosition.z + value: -49.003822 + objectReference: {fileID: 0} + - target: {fileID: 667086550830086704, guid: 3796997fde0c29b4180a4ec756403b34, + type: 3} + propertyPath: m_LocalRotation.x + value: -0 + objectReference: {fileID: 0} + - target: {fileID: 667086550830086704, guid: 3796997fde0c29b4180a4ec756403b34, + type: 3} + propertyPath: m_LocalRotation.y + value: -0.056109123 + objectReference: {fileID: 0} + - target: {fileID: 667086550830086704, guid: 3796997fde0c29b4180a4ec756403b34, + type: 3} + propertyPath: m_LocalRotation.z + value: -0 + objectReference: {fileID: 0} + - target: {fileID: 667086550830086704, guid: 3796997fde0c29b4180a4ec756403b34, + type: 3} + propertyPath: m_LocalRotation.w + value: 0.99842465 + objectReference: {fileID: 0} + - target: {fileID: 667086550830086704, guid: 3796997fde0c29b4180a4ec756403b34, + type: 3} + propertyPath: m_LocalEulerAnglesHint.y + value: -6.433 + objectReference: {fileID: 0} + - target: {fileID: 667086550830086704, guid: 3796997fde0c29b4180a4ec756403b34, + type: 3} + propertyPath: m_LocalScale.x + value: 7.9455 + objectReference: {fileID: 0} + - target: {fileID: 667086550830086704, guid: 3796997fde0c29b4180a4ec756403b34, + type: 3} + propertyPath: m_LocalScale.y + value: 7.9455 + objectReference: {fileID: 0} + - target: {fileID: 667086550830086704, guid: 3796997fde0c29b4180a4ec756403b34, + type: 3} + propertyPath: m_LocalScale.z + value: 7.9455 + objectReference: {fileID: 0} + - target: {fileID: 5742194636018856685, guid: 3796997fde0c29b4180a4ec756403b34, + type: 3} + propertyPath: m_Name + value: StoneFlat (4) + objectReference: {fileID: 0} + - target: {fileID: 7265208955801587247, guid: 3796997fde0c29b4180a4ec756403b34, + type: 3} + propertyPath: m_Materials.Array.data[0] + value: + objectReference: {fileID: 2100000, guid: d11179e416c9b394c8176d36a0dcae52, type: 2} + - target: {fileID: 7265208955802684655, guid: 3796997fde0c29b4180a4ec756403b34, + type: 3} + propertyPath: m_Mesh + value: + objectReference: {fileID: 4300002, guid: c80f31023dcf9b34cbd0044505be4806, type: 3} + - target: {fileID: 7265208955803586799, guid: 3796997fde0c29b4180a4ec756403b34, + type: 3} + propertyPath: m_Name + value: StoneVariant1 (6) + objectReference: {fileID: 0} + - target: {fileID: 7265208955804011727, guid: 3796997fde0c29b4180a4ec756403b34, + type: 3} + propertyPath: m_LocalPosition.x + value: -23.91 + objectReference: {fileID: 0} + - target: {fileID: 7265208955804011727, guid: 3796997fde0c29b4180a4ec756403b34, + type: 3} + propertyPath: m_LocalPosition.y + value: -0.82 + objectReference: {fileID: 0} + - target: {fileID: 7265208955804011727, guid: 3796997fde0c29b4180a4ec756403b34, + type: 3} + propertyPath: m_LocalPosition.z + value: -50.46 + objectReference: {fileID: 0} + - target: {fileID: 7265208955804011727, guid: 3796997fde0c29b4180a4ec756403b34, + type: 3} + propertyPath: m_LocalRotation.x + value: -0 + objectReference: {fileID: 0} + - target: {fileID: 7265208955804011727, guid: 3796997fde0c29b4180a4ec756403b34, + type: 3} + propertyPath: m_LocalRotation.y + value: -0.6999503 + objectReference: {fileID: 0} + - target: {fileID: 7265208955804011727, guid: 3796997fde0c29b4180a4ec756403b34, + type: 3} + propertyPath: m_LocalRotation.z + value: -0 + objectReference: {fileID: 0} + - target: {fileID: 7265208955804011727, guid: 3796997fde0c29b4180a4ec756403b34, + type: 3} + propertyPath: m_LocalRotation.w + value: 0.7141916 + objectReference: {fileID: 0} + - target: {fileID: 7265208955804011727, guid: 3796997fde0c29b4180a4ec756403b34, + type: 3} + propertyPath: m_RootOrder + value: 5 + objectReference: {fileID: 0} + - target: {fileID: 7265208955804011727, guid: 3796997fde0c29b4180a4ec756403b34, + type: 3} + propertyPath: m_LocalEulerAnglesHint.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 7265208955804011727, guid: 3796997fde0c29b4180a4ec756403b34, + type: 3} + propertyPath: m_LocalEulerAnglesHint.y + value: -88.846 + objectReference: {fileID: 0} + - target: {fileID: 7265208955804011727, guid: 3796997fde0c29b4180a4ec756403b34, + type: 3} + propertyPath: m_LocalEulerAnglesHint.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 7265208955804011727, guid: 3796997fde0c29b4180a4ec756403b34, + type: 3} + propertyPath: m_LocalScale.x + value: 12.148669 + objectReference: {fileID: 0} + - target: {fileID: 7265208955804011727, guid: 3796997fde0c29b4180a4ec756403b34, + type: 3} + propertyPath: m_LocalScale.y + value: 12.148639 + objectReference: {fileID: 0} + - target: {fileID: 7265208955804011727, guid: 3796997fde0c29b4180a4ec756403b34, + type: 3} + propertyPath: m_LocalScale.z + value: 12.148669 + objectReference: {fileID: 0} + m_RemovedComponents: [] + m_SourcePrefab: {fileID: 100100000, guid: 3796997fde0c29b4180a4ec756403b34, type: 3} +--- !u!4 &311425289 stripped +Transform: + m_CorrespondingSourceObject: {fileID: 400012, guid: 0829d76c4806eb54b8b2f17eec10f4e6, + type: 3} + m_PrefabInstance: {fileID: 664799114} + m_PrefabAsset: {fileID: 0} +--- !u!1001 &312985616 +PrefabInstance: + m_ObjectHideFlags: 0 + serializedVersion: 2 + m_Modification: + m_TransformParent: {fileID: 822690626} + m_Modifications: + - target: {fileID: 4478061287446689989, guid: 06604f26f581c4de08c3f45572924c7d, + type: 3} + propertyPath: bounciness + value: 0.1 + objectReference: {fileID: 0} + - target: {fileID: 6602977218683501769, guid: 06604f26f581c4de08c3f45572924c7d, + type: 3} + propertyPath: m_Name + value: ModularTrackCurveLarge (2) + objectReference: {fileID: 0} + - target: {fileID: 6602977218683986153, guid: 06604f26f581c4de08c3f45572924c7d, + type: 3} + propertyPath: m_LocalPosition.x + value: -44 + objectReference: {fileID: 0} + - target: {fileID: 6602977218683986153, guid: 06604f26f581c4de08c3f45572924c7d, + type: 3} + propertyPath: m_LocalPosition.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 6602977218683986153, guid: 06604f26f581c4de08c3f45572924c7d, + type: 3} + propertyPath: m_LocalPosition.z + value: -23 + objectReference: {fileID: 0} + - target: {fileID: 6602977218683986153, guid: 06604f26f581c4de08c3f45572924c7d, + type: 3} + propertyPath: m_LocalRotation.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 6602977218683986153, guid: 06604f26f581c4de08c3f45572924c7d, + type: 3} + propertyPath: m_LocalRotation.y + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 6602977218683986153, guid: 06604f26f581c4de08c3f45572924c7d, + type: 3} + propertyPath: m_LocalRotation.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 6602977218683986153, guid: 06604f26f581c4de08c3f45572924c7d, + type: 3} + propertyPath: m_LocalRotation.w + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 6602977218683986153, guid: 06604f26f581c4de08c3f45572924c7d, + type: 3} + propertyPath: m_RootOrder + value: 16 + objectReference: {fileID: 0} + - target: {fileID: 6602977218683986153, guid: 06604f26f581c4de08c3f45572924c7d, + type: 3} + propertyPath: m_LocalEulerAnglesHint.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 6602977218683986153, guid: 06604f26f581c4de08c3f45572924c7d, + type: 3} + propertyPath: m_LocalEulerAnglesHint.y + value: 180 + objectReference: {fileID: 0} + - target: {fileID: 6602977218683986153, guid: 06604f26f581c4de08c3f45572924c7d, + type: 3} + propertyPath: m_LocalEulerAnglesHint.z + value: 0 + objectReference: {fileID: 0} + m_RemovedComponents: + - {fileID: 6602977218685588073, guid: 06604f26f581c4de08c3f45572924c7d, type: 3} + m_SourcePrefab: {fileID: 100100000, guid: 06604f26f581c4de08c3f45572924c7d, type: 3} +--- !u!4 &312985617 stripped +Transform: + m_CorrespondingSourceObject: {fileID: 6602977218683986153, guid: 06604f26f581c4de08c3f45572924c7d, + type: 3} + m_PrefabInstance: {fileID: 312985616} + m_PrefabAsset: {fileID: 0} +--- !u!4 &317952401 stripped +Transform: + m_CorrespondingSourceObject: {fileID: 5538800703641817082, guid: 45c52fcc7429b214c8f9a6d85321ba77, + type: 3} + m_PrefabInstance: {fileID: 1730811158} + m_PrefabAsset: {fileID: 0} +--- !u!1001 &321836945 +PrefabInstance: + m_ObjectHideFlags: 0 + serializedVersion: 2 + m_Modification: + m_TransformParent: {fileID: 1645660025} + m_Modifications: + - target: {fileID: 46373737012076927, guid: 88017844a1245554fb36a6790969f12e, + type: 3} + propertyPath: m_Materials.Array.data[0] + value: + objectReference: {fileID: 2100000, guid: d11179e416c9b394c8176d36a0dcae52, type: 2} + - target: {fileID: 46373737254155819, guid: 88017844a1245554fb36a6790969f12e, + type: 3} + propertyPath: m_Materials.Array.data[0] + value: + objectReference: {fileID: 2100000, guid: d11179e416c9b394c8176d36a0dcae52, type: 2} + - target: {fileID: 46373737633271978, guid: 88017844a1245554fb36a6790969f12e, + type: 3} + propertyPath: m_Materials.Array.data[0] + value: + objectReference: {fileID: 2100000, guid: d11179e416c9b394c8176d36a0dcae52, type: 2} + - target: {fileID: 46373738205708166, guid: 88017844a1245554fb36a6790969f12e, + type: 3} + propertyPath: m_Materials.Array.data[0] + value: + objectReference: {fileID: 2100000, guid: d11179e416c9b394c8176d36a0dcae52, type: 2} + - target: {fileID: 46373738349565148, guid: 88017844a1245554fb36a6790969f12e, + type: 3} + propertyPath: m_Materials.Array.data[0] + value: + objectReference: {fileID: 2100000, guid: d11179e416c9b394c8176d36a0dcae52, type: 2} + - target: {fileID: 218232888287208289, guid: 88017844a1245554fb36a6790969f12e, + type: 3} + propertyPath: m_Materials.Array.data[0] + value: + objectReference: {fileID: 2100000, guid: d11179e416c9b394c8176d36a0dcae52, type: 2} + - target: {fileID: 299805843874572193, guid: 88017844a1245554fb36a6790969f12e, + type: 3} + propertyPath: m_Materials.Array.data[0] + value: + objectReference: {fileID: 2100000, guid: d11179e416c9b394c8176d36a0dcae52, type: 2} + - target: {fileID: 333744217364764395, guid: 88017844a1245554fb36a6790969f12e, + type: 3} + propertyPath: m_Materials.Array.data[0] + value: + objectReference: {fileID: 2100000, guid: d11179e416c9b394c8176d36a0dcae52, type: 2} + - target: {fileID: 423002203898637631, guid: 88017844a1245554fb36a6790969f12e, + type: 3} + propertyPath: m_Materials.Array.data[0] + value: + objectReference: {fileID: 2100000, guid: d11179e416c9b394c8176d36a0dcae52, type: 2} + - target: {fileID: 428339810338883131, guid: 88017844a1245554fb36a6790969f12e, + type: 3} + propertyPath: m_Materials.Array.data[0] + value: + objectReference: {fileID: 2100000, guid: d11179e416c9b394c8176d36a0dcae52, type: 2} + - target: {fileID: 430681935413503253, guid: 88017844a1245554fb36a6790969f12e, + type: 3} + propertyPath: m_Materials.Array.data[0] + value: + objectReference: {fileID: 2100000, guid: d11179e416c9b394c8176d36a0dcae52, type: 2} + - target: {fileID: 526038968797245091, guid: 88017844a1245554fb36a6790969f12e, + type: 3} + propertyPath: m_Materials.Array.data[0] + value: + objectReference: {fileID: 2100000, guid: d11179e416c9b394c8176d36a0dcae52, type: 2} + - target: {fileID: 639357975159421801, guid: 88017844a1245554fb36a6790969f12e, + type: 3} + propertyPath: m_Materials.Array.data[0] + value: + objectReference: {fileID: 2100000, guid: d11179e416c9b394c8176d36a0dcae52, type: 2} + - target: {fileID: 691697187753555196, guid: 88017844a1245554fb36a6790969f12e, + type: 3} + propertyPath: m_Materials.Array.data[0] + value: + objectReference: {fileID: 2100000, guid: d11179e416c9b394c8176d36a0dcae52, type: 2} + - target: {fileID: 1246257324978450940, guid: 88017844a1245554fb36a6790969f12e, + type: 3} + propertyPath: m_Materials.Array.data[0] + value: + objectReference: {fileID: 2100000, guid: d11179e416c9b394c8176d36a0dcae52, type: 2} + - target: {fileID: 1260854839713246060, guid: 88017844a1245554fb36a6790969f12e, + type: 3} + propertyPath: m_Materials.Array.data[0] + value: + objectReference: {fileID: 2100000, guid: d11179e416c9b394c8176d36a0dcae52, type: 2} + - target: {fileID: 1318219099959988150, guid: 88017844a1245554fb36a6790969f12e, + type: 3} + propertyPath: m_Materials.Array.data[0] + value: + objectReference: {fileID: 2100000, guid: d11179e416c9b394c8176d36a0dcae52, type: 2} + - target: {fileID: 1420777222818499236, guid: 88017844a1245554fb36a6790969f12e, + type: 3} + propertyPath: m_Materials.Array.data[0] + value: + objectReference: {fileID: 2100000, guid: d11179e416c9b394c8176d36a0dcae52, type: 2} + - target: {fileID: 1894838902361001192, guid: 88017844a1245554fb36a6790969f12e, + type: 3} + propertyPath: m_Materials.Array.data[0] + value: + objectReference: {fileID: 2100000, guid: d11179e416c9b394c8176d36a0dcae52, type: 2} + - target: {fileID: 1962872846680376036, guid: 88017844a1245554fb36a6790969f12e, + type: 3} + propertyPath: m_Materials.Array.data[0] + value: + objectReference: {fileID: 2100000, guid: d11179e416c9b394c8176d36a0dcae52, type: 2} + - target: {fileID: 2403669229154501099, guid: 88017844a1245554fb36a6790969f12e, + type: 3} + propertyPath: m_Materials.Array.data[0] + value: + objectReference: {fileID: 2100000, guid: d11179e416c9b394c8176d36a0dcae52, type: 2} + - target: {fileID: 2460278847542185445, guid: 88017844a1245554fb36a6790969f12e, + type: 3} + propertyPath: m_Materials.Array.data[0] + value: + objectReference: {fileID: 2100000, guid: d11179e416c9b394c8176d36a0dcae52, type: 2} + - target: {fileID: 2497398649778501837, guid: 88017844a1245554fb36a6790969f12e, + type: 3} + propertyPath: m_LocalPosition.x + value: 32 + objectReference: {fileID: 0} + - target: {fileID: 2497398649778501837, guid: 88017844a1245554fb36a6790969f12e, + type: 3} + propertyPath: m_LocalPosition.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 2497398649778501837, guid: 88017844a1245554fb36a6790969f12e, + type: 3} + propertyPath: m_LocalPosition.z + value: 39.5 + objectReference: {fileID: 0} + - target: {fileID: 2497398649778501837, guid: 88017844a1245554fb36a6790969f12e, + type: 3} + propertyPath: m_LocalRotation.x + value: -0 + objectReference: {fileID: 0} + - target: {fileID: 2497398649778501837, guid: 88017844a1245554fb36a6790969f12e, + type: 3} + propertyPath: m_LocalRotation.y + value: 0.7071068 + objectReference: {fileID: 0} + - target: {fileID: 2497398649778501837, guid: 88017844a1245554fb36a6790969f12e, + type: 3} + propertyPath: m_LocalRotation.z + value: -0 + objectReference: {fileID: 0} + - target: {fileID: 2497398649778501837, guid: 88017844a1245554fb36a6790969f12e, + type: 3} + propertyPath: m_LocalRotation.w + value: 0.7071068 + objectReference: {fileID: 0} + - target: {fileID: 2497398649778501837, guid: 88017844a1245554fb36a6790969f12e, + type: 3} + propertyPath: m_RootOrder + value: 5 + objectReference: {fileID: 0} + - target: {fileID: 2497398649778501837, guid: 88017844a1245554fb36a6790969f12e, + type: 3} + propertyPath: m_LocalEulerAnglesHint.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 2497398649778501837, guid: 88017844a1245554fb36a6790969f12e, + type: 3} + propertyPath: m_LocalEulerAnglesHint.y + value: 90 + objectReference: {fileID: 0} + - target: {fileID: 2497398649778501837, guid: 88017844a1245554fb36a6790969f12e, + type: 3} + propertyPath: m_LocalEulerAnglesHint.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 2497398649778501837, guid: 88017844a1245554fb36a6790969f12e, + type: 3} + propertyPath: m_LocalScale.x + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 2497398649778501837, guid: 88017844a1245554fb36a6790969f12e, + type: 3} + propertyPath: m_LocalScale.z + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 2506353074744204732, guid: 88017844a1245554fb36a6790969f12e, + type: 3} + propertyPath: m_Materials.Array.data[0] + value: + objectReference: {fileID: 2100000, guid: d11179e416c9b394c8176d36a0dcae52, type: 2} + - target: {fileID: 2598259380642447900, guid: 88017844a1245554fb36a6790969f12e, + type: 3} + propertyPath: m_Materials.Array.data[0] + value: + objectReference: {fileID: 2100000, guid: d11179e416c9b394c8176d36a0dcae52, type: 2} + - target: {fileID: 2854160943120624426, guid: 88017844a1245554fb36a6790969f12e, + type: 3} + propertyPath: m_Materials.Array.data[0] + value: + objectReference: {fileID: 2100000, guid: d11179e416c9b394c8176d36a0dcae52, type: 2} + - target: {fileID: 3115298266906799279, guid: 88017844a1245554fb36a6790969f12e, + type: 3} + propertyPath: m_Materials.Array.data[0] + value: + objectReference: {fileID: 2100000, guid: d11179e416c9b394c8176d36a0dcae52, type: 2} + - target: {fileID: 3218146186907249425, guid: 88017844a1245554fb36a6790969f12e, + type: 3} + propertyPath: m_Materials.Array.data[0] + value: + objectReference: {fileID: 2100000, guid: d11179e416c9b394c8176d36a0dcae52, type: 2} + - target: {fileID: 3369942445597377545, guid: 88017844a1245554fb36a6790969f12e, + type: 3} + propertyPath: m_Materials.Array.data[0] + value: + objectReference: {fileID: 2100000, guid: d11179e416c9b394c8176d36a0dcae52, type: 2} + - target: {fileID: 3723960058750782487, guid: 88017844a1245554fb36a6790969f12e, + type: 3} + propertyPath: m_Materials.Array.data[0] + value: + objectReference: {fileID: 2100000, guid: d11179e416c9b394c8176d36a0dcae52, type: 2} + - target: {fileID: 3931977635855689576, guid: 88017844a1245554fb36a6790969f12e, + type: 3} + propertyPath: m_Materials.Array.data[0] + value: + objectReference: {fileID: 2100000, guid: d11179e416c9b394c8176d36a0dcae52, type: 2} + - target: {fileID: 4011596710851554885, guid: 88017844a1245554fb36a6790969f12e, + type: 3} + propertyPath: m_Materials.Array.data[0] + value: + objectReference: {fileID: 2100000, guid: d11179e416c9b394c8176d36a0dcae52, type: 2} + - target: {fileID: 4043950925802789657, guid: 88017844a1245554fb36a6790969f12e, + type: 3} + propertyPath: m_Materials.Array.data[0] + value: + objectReference: {fileID: 2100000, guid: d11179e416c9b394c8176d36a0dcae52, type: 2} + - target: {fileID: 4272809561492498949, guid: 88017844a1245554fb36a6790969f12e, + type: 3} + propertyPath: m_Materials.Array.data[0] + value: + objectReference: {fileID: 2100000, guid: d11179e416c9b394c8176d36a0dcae52, type: 2} + - target: {fileID: 4273410173650878010, guid: 88017844a1245554fb36a6790969f12e, + type: 3} + propertyPath: m_Materials.Array.data[0] + value: + objectReference: {fileID: 2100000, guid: d11179e416c9b394c8176d36a0dcae52, type: 2} + - target: {fileID: 4379265909730506343, guid: 88017844a1245554fb36a6790969f12e, + type: 3} + propertyPath: m_Materials.Array.data[0] + value: + objectReference: {fileID: 2100000, guid: d11179e416c9b394c8176d36a0dcae52, type: 2} + - target: {fileID: 4383059984436420910, guid: 88017844a1245554fb36a6790969f12e, + type: 3} + propertyPath: m_Materials.Array.data[0] + value: + objectReference: {fileID: 2100000, guid: d11179e416c9b394c8176d36a0dcae52, type: 2} + - target: {fileID: 4574291707951619024, guid: 88017844a1245554fb36a6790969f12e, + type: 3} + propertyPath: m_Materials.Array.data[0] + value: + objectReference: {fileID: 2100000, guid: d11179e416c9b394c8176d36a0dcae52, type: 2} + - target: {fileID: 4756946650016959826, guid: 88017844a1245554fb36a6790969f12e, + type: 3} + propertyPath: m_Materials.Array.data[0] + value: + objectReference: {fileID: 2100000, guid: d11179e416c9b394c8176d36a0dcae52, type: 2} + - target: {fileID: 4785473629720818429, guid: 88017844a1245554fb36a6790969f12e, + type: 3} + propertyPath: m_Materials.Array.data[0] + value: + objectReference: {fileID: 2100000, guid: d11179e416c9b394c8176d36a0dcae52, type: 2} + - target: {fileID: 4814537077428045437, guid: 88017844a1245554fb36a6790969f12e, + type: 3} + propertyPath: m_Materials.Array.data[0] + value: + objectReference: {fileID: 2100000, guid: d11179e416c9b394c8176d36a0dcae52, type: 2} + - target: {fileID: 4912888378975855435, guid: 88017844a1245554fb36a6790969f12e, + type: 3} + propertyPath: m_Materials.Array.data[0] + value: + objectReference: {fileID: 2100000, guid: d11179e416c9b394c8176d36a0dcae52, type: 2} + - target: {fileID: 5050379983934888249, guid: 88017844a1245554fb36a6790969f12e, + type: 3} + propertyPath: m_Materials.Array.data[0] + value: + objectReference: {fileID: 2100000, guid: d11179e416c9b394c8176d36a0dcae52, type: 2} + - target: {fileID: 5177324599066764680, guid: 88017844a1245554fb36a6790969f12e, + type: 3} + propertyPath: m_Materials.Array.data[0] + value: + objectReference: {fileID: 2100000, guid: d11179e416c9b394c8176d36a0dcae52, type: 2} + - target: {fileID: 5178039946430869077, guid: 88017844a1245554fb36a6790969f12e, + type: 3} + propertyPath: m_Materials.Array.data[0] + value: + objectReference: {fileID: 2100000, guid: d11179e416c9b394c8176d36a0dcae52, type: 2} + - target: {fileID: 5580644410192114215, guid: 88017844a1245554fb36a6790969f12e, + type: 3} + propertyPath: m_Materials.Array.data[0] + value: + objectReference: {fileID: 2100000, guid: d11179e416c9b394c8176d36a0dcae52, type: 2} + - target: {fileID: 5648124457286827678, guid: 88017844a1245554fb36a6790969f12e, + type: 3} + propertyPath: m_Materials.Array.data[0] + value: + objectReference: {fileID: 2100000, guid: d11179e416c9b394c8176d36a0dcae52, type: 2} + - target: {fileID: 5851913886341052439, guid: 88017844a1245554fb36a6790969f12e, + type: 3} + propertyPath: m_Materials.Array.data[0] + value: + objectReference: {fileID: 2100000, guid: d11179e416c9b394c8176d36a0dcae52, type: 2} + - target: {fileID: 5907845348717842955, guid: 88017844a1245554fb36a6790969f12e, + type: 3} + propertyPath: m_Materials.Array.data[0] + value: + objectReference: {fileID: 2100000, guid: d11179e416c9b394c8176d36a0dcae52, type: 2} + - target: {fileID: 5946054915489237165, guid: 88017844a1245554fb36a6790969f12e, + type: 3} + propertyPath: m_Materials.Array.data[0] + value: + objectReference: {fileID: 2100000, guid: d11179e416c9b394c8176d36a0dcae52, type: 2} + - target: {fileID: 6009878823096877755, guid: 88017844a1245554fb36a6790969f12e, + type: 3} + propertyPath: m_Materials.Array.data[0] + value: + objectReference: {fileID: 2100000, guid: d11179e416c9b394c8176d36a0dcae52, type: 2} + - target: {fileID: 6552931955781067994, guid: 88017844a1245554fb36a6790969f12e, + type: 3} + propertyPath: m_Materials.Array.data[0] + value: + objectReference: {fileID: 2100000, guid: d11179e416c9b394c8176d36a0dcae52, type: 2} + - target: {fileID: 6552931956253127441, guid: 88017844a1245554fb36a6790969f12e, + type: 3} + propertyPath: m_Materials.Array.data[0] + value: + objectReference: {fileID: 2100000, guid: d11179e416c9b394c8176d36a0dcae52, type: 2} + - target: {fileID: 6609041542102146617, guid: 88017844a1245554fb36a6790969f12e, + type: 3} + propertyPath: m_Materials.Array.data[0] + value: + objectReference: {fileID: 2100000, guid: d11179e416c9b394c8176d36a0dcae52, type: 2} + - target: {fileID: 6685594166410967271, guid: 88017844a1245554fb36a6790969f12e, + type: 3} + propertyPath: m_Materials.Array.data[0] + value: + objectReference: {fileID: 2100000, guid: d11179e416c9b394c8176d36a0dcae52, type: 2} + - target: {fileID: 6707746243830551971, guid: 88017844a1245554fb36a6790969f12e, + type: 3} + propertyPath: m_Materials.Array.data[0] + value: + objectReference: {fileID: 2100000, guid: d11179e416c9b394c8176d36a0dcae52, type: 2} + - target: {fileID: 6822934373829363744, guid: 88017844a1245554fb36a6790969f12e, + type: 3} + propertyPath: m_Materials.Array.data[0] + value: + objectReference: {fileID: 2100000, guid: d11179e416c9b394c8176d36a0dcae52, type: 2} + - target: {fileID: 6873381381823902372, guid: 88017844a1245554fb36a6790969f12e, + type: 3} + propertyPath: m_Materials.Array.data[0] + value: + objectReference: {fileID: 2100000, guid: d11179e416c9b394c8176d36a0dcae52, type: 2} + - target: {fileID: 6913552614746802685, guid: 88017844a1245554fb36a6790969f12e, + type: 3} + propertyPath: m_Materials.Array.data[0] + value: + objectReference: {fileID: 2100000, guid: d11179e416c9b394c8176d36a0dcae52, type: 2} + - target: {fileID: 7092965558436691583, guid: 88017844a1245554fb36a6790969f12e, + type: 3} + propertyPath: m_Materials.Array.data[0] + value: + objectReference: {fileID: 2100000, guid: d11179e416c9b394c8176d36a0dcae52, type: 2} + - target: {fileID: 7572935844198154494, guid: 88017844a1245554fb36a6790969f12e, + type: 3} + propertyPath: m_Materials.Array.data[0] + value: + objectReference: {fileID: 2100000, guid: d11179e416c9b394c8176d36a0dcae52, type: 2} + - target: {fileID: 7694279864449676718, guid: 88017844a1245554fb36a6790969f12e, + type: 3} + propertyPath: m_Materials.Array.data[0] + value: + objectReference: {fileID: 2100000, guid: d11179e416c9b394c8176d36a0dcae52, type: 2} + - target: {fileID: 7784393464487004480, guid: 88017844a1245554fb36a6790969f12e, + type: 3} + propertyPath: m_Materials.Array.data[0] + value: + objectReference: {fileID: 2100000, guid: d11179e416c9b394c8176d36a0dcae52, type: 2} + - target: {fileID: 8059612223435062565, guid: 88017844a1245554fb36a6790969f12e, + type: 3} + propertyPath: m_Materials.Array.data[0] + value: + objectReference: {fileID: 2100000, guid: d11179e416c9b394c8176d36a0dcae52, type: 2} + - target: {fileID: 8116394776219856171, guid: 88017844a1245554fb36a6790969f12e, + type: 3} + propertyPath: m_Materials.Array.data[0] + value: + objectReference: {fileID: 2100000, guid: d11179e416c9b394c8176d36a0dcae52, type: 2} + - target: {fileID: 8132725113250841959, guid: 88017844a1245554fb36a6790969f12e, + type: 3} + propertyPath: m_Materials.Array.data[0] + value: + objectReference: {fileID: 2100000, guid: c99104857011a3d478b482de4b0de308, type: 2} + - target: {fileID: 8293323167804209131, guid: 88017844a1245554fb36a6790969f12e, + type: 3} + propertyPath: m_Materials.Array.data[0] + value: + objectReference: {fileID: 2100000, guid: d11179e416c9b394c8176d36a0dcae52, type: 2} + - target: {fileID: 8352668421666403931, guid: 88017844a1245554fb36a6790969f12e, + type: 3} + propertyPath: m_Materials.Array.data[0] + value: + objectReference: {fileID: 2100000, guid: d11179e416c9b394c8176d36a0dcae52, type: 2} + - target: {fileID: 8380204797770729804, guid: 88017844a1245554fb36a6790969f12e, + type: 3} + propertyPath: m_Materials.Array.data[0] + value: + objectReference: {fileID: 2100000, guid: d11179e416c9b394c8176d36a0dcae52, type: 2} + - target: {fileID: 8516545549071803223, guid: 88017844a1245554fb36a6790969f12e, + type: 3} + propertyPath: m_Materials.Array.data[0] + value: + objectReference: {fileID: 2100000, guid: d11179e416c9b394c8176d36a0dcae52, type: 2} + - target: {fileID: 8580114164594801850, guid: 88017844a1245554fb36a6790969f12e, + type: 3} + propertyPath: m_Materials.Array.data[0] + value: + objectReference: {fileID: 2100000, guid: d11179e416c9b394c8176d36a0dcae52, type: 2} + - target: {fileID: 8620048557865049399, guid: 88017844a1245554fb36a6790969f12e, + type: 3} + propertyPath: m_Name + value: BuildingMedium (1) + objectReference: {fileID: 0} + - target: {fileID: 8786141096403078399, guid: 88017844a1245554fb36a6790969f12e, + type: 3} + propertyPath: m_Materials.Array.data[0] + value: + objectReference: {fileID: 2100000, guid: d11179e416c9b394c8176d36a0dcae52, type: 2} + - target: {fileID: 8863704496000794120, guid: 88017844a1245554fb36a6790969f12e, + type: 3} + propertyPath: m_Materials.Array.data[0] + value: + objectReference: {fileID: 2100000, guid: d11179e416c9b394c8176d36a0dcae52, type: 2} + - target: {fileID: 8969240725847418666, guid: 88017844a1245554fb36a6790969f12e, + type: 3} + propertyPath: m_Materials.Array.data[0] + value: + objectReference: {fileID: 2100000, guid: d11179e416c9b394c8176d36a0dcae52, type: 2} + - target: {fileID: 9006713803739917230, guid: 88017844a1245554fb36a6790969f12e, + type: 3} + propertyPath: m_Materials.Array.data[0] + value: + objectReference: {fileID: 2100000, guid: d11179e416c9b394c8176d36a0dcae52, type: 2} + - target: {fileID: 9035044020047828406, guid: 88017844a1245554fb36a6790969f12e, + type: 3} + propertyPath: m_Materials.Array.data[0] + value: + objectReference: {fileID: 2100000, guid: d11179e416c9b394c8176d36a0dcae52, type: 2} + - target: {fileID: 9043660922605410153, guid: 88017844a1245554fb36a6790969f12e, + type: 3} + propertyPath: m_Materials.Array.data[0] + value: + objectReference: {fileID: 2100000, guid: d11179e416c9b394c8176d36a0dcae52, type: 2} + - target: {fileID: 9090198466121521807, guid: 88017844a1245554fb36a6790969f12e, + type: 3} + propertyPath: m_Materials.Array.data[0] + value: + objectReference: {fileID: 2100000, guid: d11179e416c9b394c8176d36a0dcae52, type: 2} + - target: {fileID: 9143864053789931241, guid: 88017844a1245554fb36a6790969f12e, + type: 3} + propertyPath: m_Materials.Array.data[0] + value: + objectReference: {fileID: 2100000, guid: d11179e416c9b394c8176d36a0dcae52, type: 2} + m_RemovedComponents: [] + m_SourcePrefab: {fileID: 100100000, guid: 88017844a1245554fb36a6790969f12e, type: 3} +--- !u!1001 &335966567 +PrefabInstance: + m_ObjectHideFlags: 0 + serializedVersion: 2 + m_Modification: + m_TransformParent: {fileID: 77662693} + m_Modifications: + - target: {fileID: 100000, guid: 9f1e50f73a529a448b004add5bec5d80, type: 3} + propertyPath: m_Name + value: TreeBox (18) + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 9f1e50f73a529a448b004add5bec5d80, type: 3} + propertyPath: m_LocalPosition.x + value: -90.00921 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 9f1e50f73a529a448b004add5bec5d80, type: 3} + propertyPath: m_LocalPosition.y + value: -0.49866438 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 9f1e50f73a529a448b004add5bec5d80, type: 3} + propertyPath: m_LocalPosition.z + value: 139.51923 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 9f1e50f73a529a448b004add5bec5d80, type: 3} + propertyPath: m_LocalRotation.x + value: -0 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 9f1e50f73a529a448b004add5bec5d80, type: 3} + propertyPath: m_LocalRotation.y + value: -0.39853132 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 9f1e50f73a529a448b004add5bec5d80, type: 3} + propertyPath: m_LocalRotation.z + value: -0 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 9f1e50f73a529a448b004add5bec5d80, type: 3} + propertyPath: m_LocalRotation.w + value: 0.9171547 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 9f1e50f73a529a448b004add5bec5d80, type: 3} + propertyPath: m_RootOrder + value: 37 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 9f1e50f73a529a448b004add5bec5d80, type: 3} + propertyPath: m_LocalEulerAnglesHint.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 9f1e50f73a529a448b004add5bec5d80, type: 3} + propertyPath: m_LocalEulerAnglesHint.y + value: -46.973003 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 9f1e50f73a529a448b004add5bec5d80, type: 3} + propertyPath: m_LocalEulerAnglesHint.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 9f1e50f73a529a448b004add5bec5d80, type: 3} + propertyPath: m_LocalScale.x + value: 3.31176 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 9f1e50f73a529a448b004add5bec5d80, type: 3} + propertyPath: m_LocalScale.y + value: 3.31175 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 9f1e50f73a529a448b004add5bec5d80, type: 3} + propertyPath: m_LocalScale.z + value: 3.31176 + objectReference: {fileID: 0} + - target: {fileID: 2300000, guid: 9f1e50f73a529a448b004add5bec5d80, type: 3} + propertyPath: m_Materials.Array.data[0] + value: + objectReference: {fileID: 2100000, guid: d11179e416c9b394c8176d36a0dcae52, type: 2} + m_RemovedComponents: [] + m_SourcePrefab: {fileID: 100100000, guid: 9f1e50f73a529a448b004add5bec5d80, type: 3} +--- !u!4 &336301938 stripped +Transform: + m_CorrespondingSourceObject: {fileID: 400000, guid: 92bb9994204d1d44cb6223c53e4f84f8, + type: 3} + m_PrefabInstance: {fileID: 1670235909} + m_PrefabAsset: {fileID: 0} +--- !u!1001 &353447888 +PrefabInstance: + m_ObjectHideFlags: 0 + serializedVersion: 2 + m_Modification: + m_TransformParent: {fileID: 1889916056} + m_Modifications: + - target: {fileID: 100012, guid: 0829d76c4806eb54b8b2f17eec10f4e6, type: 3} + propertyPath: m_Name + value: Cloud (8) + objectReference: {fileID: 0} + - target: {fileID: 100012, guid: 0829d76c4806eb54b8b2f17eec10f4e6, type: 3} + propertyPath: m_StaticEditorFlags + value: 4294967295 + objectReference: {fileID: 0} + - target: {fileID: 400012, guid: 0829d76c4806eb54b8b2f17eec10f4e6, type: 3} + propertyPath: m_LocalPosition.x + value: -488.131 + objectReference: {fileID: 0} + - target: {fileID: 400012, guid: 0829d76c4806eb54b8b2f17eec10f4e6, type: 3} + propertyPath: m_LocalPosition.y + value: -13.468663 + objectReference: {fileID: 0} + - target: {fileID: 400012, guid: 0829d76c4806eb54b8b2f17eec10f4e6, type: 3} + propertyPath: m_LocalPosition.z + value: -211.67987 + objectReference: {fileID: 0} + - target: {fileID: 400012, guid: 0829d76c4806eb54b8b2f17eec10f4e6, type: 3} + propertyPath: m_LocalRotation.x + value: -0 + objectReference: {fileID: 0} + - target: {fileID: 400012, guid: 0829d76c4806eb54b8b2f17eec10f4e6, type: 3} + propertyPath: m_LocalRotation.y + value: -0.8293074 + objectReference: {fileID: 0} + - target: {fileID: 400012, guid: 0829d76c4806eb54b8b2f17eec10f4e6, type: 3} + propertyPath: m_LocalRotation.z + value: -0 + objectReference: {fileID: 0} + - target: {fileID: 400012, guid: 0829d76c4806eb54b8b2f17eec10f4e6, type: 3} + propertyPath: m_LocalRotation.w + value: 0.5587927 + objectReference: {fileID: 0} + - target: {fileID: 400012, guid: 0829d76c4806eb54b8b2f17eec10f4e6, type: 3} + propertyPath: m_RootOrder + value: 8 + objectReference: {fileID: 0} + - target: {fileID: 400012, guid: 0829d76c4806eb54b8b2f17eec10f4e6, type: 3} + propertyPath: m_LocalEulerAnglesHint.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 400012, guid: 0829d76c4806eb54b8b2f17eec10f4e6, type: 3} + propertyPath: m_LocalEulerAnglesHint.y + value: -112.05501 + objectReference: {fileID: 0} + - target: {fileID: 400012, guid: 0829d76c4806eb54b8b2f17eec10f4e6, type: 3} + propertyPath: m_LocalEulerAnglesHint.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 400012, guid: 0829d76c4806eb54b8b2f17eec10f4e6, type: 3} + propertyPath: m_LocalScale.x + value: 6.4706206 + objectReference: {fileID: 0} + - target: {fileID: 400012, guid: 0829d76c4806eb54b8b2f17eec10f4e6, type: 3} + propertyPath: m_LocalScale.y + value: 6.4706197 + objectReference: {fileID: 0} + - target: {fileID: 400012, guid: 0829d76c4806eb54b8b2f17eec10f4e6, type: 3} + propertyPath: m_LocalScale.z + value: 6.4706206 + objectReference: {fileID: 0} + - target: {fileID: 2300000, guid: 0829d76c4806eb54b8b2f17eec10f4e6, type: 3} + propertyPath: m_Materials.Array.data[0] + value: + objectReference: {fileID: 2100000, guid: c1fb7d3a27a67b947bb2b2ab391072b0, type: 2} + - target: {fileID: 2300002, guid: 0829d76c4806eb54b8b2f17eec10f4e6, type: 3} + propertyPath: m_Materials.Array.data[0] + value: + objectReference: {fileID: 2100000, guid: c1fb7d3a27a67b947bb2b2ab391072b0, type: 2} + - target: {fileID: 2300004, guid: 0829d76c4806eb54b8b2f17eec10f4e6, type: 3} + propertyPath: m_Materials.Array.data[0] + value: + objectReference: {fileID: 2100000, guid: c1fb7d3a27a67b947bb2b2ab391072b0, type: 2} + - target: {fileID: 2300006, guid: 0829d76c4806eb54b8b2f17eec10f4e6, type: 3} + propertyPath: m_Materials.Array.data[0] + value: + objectReference: {fileID: 2100000, guid: c1fb7d3a27a67b947bb2b2ab391072b0, type: 2} + - target: {fileID: 2300008, guid: 0829d76c4806eb54b8b2f17eec10f4e6, type: 3} + propertyPath: m_Materials.Array.data[0] + value: + objectReference: {fileID: 2100000, guid: c1fb7d3a27a67b947bb2b2ab391072b0, type: 2} + - target: {fileID: 2300010, guid: 0829d76c4806eb54b8b2f17eec10f4e6, type: 3} + propertyPath: m_Materials.Array.data[0] + value: + objectReference: {fileID: 2100000, guid: c1fb7d3a27a67b947bb2b2ab391072b0, type: 2} + - target: {fileID: 2300012, guid: 0829d76c4806eb54b8b2f17eec10f4e6, type: 3} + propertyPath: m_Materials.Array.data[0] + value: + objectReference: {fileID: 2100000, guid: d11179e416c9b394c8176d36a0dcae52, type: 2} + m_RemovedComponents: [] + m_SourcePrefab: {fileID: 100100000, guid: 0829d76c4806eb54b8b2f17eec10f4e6, type: 3} +--- !u!114 &358165370 stripped +MonoBehaviour: + m_CorrespondingSourceObject: {fileID: 4009130065698333724, guid: 7f02e158c0e4d4ab09f78bb31f78bab8, + type: 3} + m_PrefabInstance: {fileID: 8473932218178274596} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: e09ef6147e73a43349cab2d3a335fe07, type: 3} + m_Name: + m_EditorClassIdentifier: +--- !u!1001 &363564943 +PrefabInstance: + m_ObjectHideFlags: 0 + serializedVersion: 2 + m_Modification: + m_TransformParent: {fileID: 822690626} + m_Modifications: + - target: {fileID: 1579282987822437358, guid: 941fac9249b6442cdb2d3f23472128e2, + type: 3} + propertyPath: m_Name + value: ModularTrackStraight (12) + objectReference: {fileID: 0} + - target: {fileID: 1579282987822796750, guid: 941fac9249b6442cdb2d3f23472128e2, + type: 3} + propertyPath: m_LocalPosition.x + value: -44 + objectReference: {fileID: 0} + - target: {fileID: 1579282987822796750, guid: 941fac9249b6442cdb2d3f23472128e2, + type: 3} + propertyPath: m_LocalPosition.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 1579282987822796750, guid: 941fac9249b6442cdb2d3f23472128e2, + type: 3} + propertyPath: m_LocalPosition.z + value: -13.000001 + objectReference: {fileID: 0} + - target: {fileID: 1579282987822796750, guid: 941fac9249b6442cdb2d3f23472128e2, + type: 3} + propertyPath: m_LocalRotation.x + value: -0 + objectReference: {fileID: 0} + - target: {fileID: 1579282987822796750, guid: 941fac9249b6442cdb2d3f23472128e2, + type: 3} + propertyPath: m_LocalRotation.y + value: -0 + objectReference: {fileID: 0} + - target: {fileID: 1579282987822796750, guid: 941fac9249b6442cdb2d3f23472128e2, + type: 3} + propertyPath: m_LocalRotation.z + value: -0 + objectReference: {fileID: 0} + - target: {fileID: 1579282987822796750, guid: 941fac9249b6442cdb2d3f23472128e2, + type: 3} + propertyPath: m_LocalRotation.w + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 1579282987822796750, guid: 941fac9249b6442cdb2d3f23472128e2, + type: 3} + propertyPath: m_RootOrder + value: 14 + objectReference: {fileID: 0} + - target: {fileID: 1579282987822796750, guid: 941fac9249b6442cdb2d3f23472128e2, + type: 3} + propertyPath: m_LocalEulerAnglesHint.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 1579282987822796750, guid: 941fac9249b6442cdb2d3f23472128e2, + type: 3} + propertyPath: m_LocalEulerAnglesHint.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 1579282987822796750, guid: 941fac9249b6442cdb2d3f23472128e2, + type: 3} + propertyPath: m_LocalEulerAnglesHint.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 1644974464755198482, guid: 941fac9249b6442cdb2d3f23472128e2, + type: 3} + propertyPath: bounciness + value: 0.1 + objectReference: {fileID: 0} + m_RemovedComponents: + - {fileID: 1579282987816156490, guid: 941fac9249b6442cdb2d3f23472128e2, type: 3} + m_SourcePrefab: {fileID: 100100000, guid: 941fac9249b6442cdb2d3f23472128e2, type: 3} +--- !u!4 &363564944 stripped +Transform: + m_CorrespondingSourceObject: {fileID: 1579282987822796750, guid: 941fac9249b6442cdb2d3f23472128e2, + type: 3} + m_PrefabInstance: {fileID: 363564943} + m_PrefabAsset: {fileID: 0} +--- !u!1001 &392884236 +PrefabInstance: + m_ObjectHideFlags: 0 + serializedVersion: 2 + m_Modification: + m_TransformParent: {fileID: 822690626} + m_Modifications: + - target: {fileID: 1579282987822437358, guid: 941fac9249b6442cdb2d3f23472128e2, + type: 3} + propertyPath: m_Name + value: ModularTrackStraight (4) + objectReference: {fileID: 0} + - target: {fileID: 1579282987822796750, guid: 941fac9249b6442cdb2d3f23472128e2, + type: 3} + propertyPath: m_LocalPosition.x + value: 16 + objectReference: {fileID: 0} + - target: {fileID: 1579282987822796750, guid: 941fac9249b6442cdb2d3f23472128e2, + type: 3} + propertyPath: m_LocalPosition.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 1579282987822796750, guid: 941fac9249b6442cdb2d3f23472128e2, + type: 3} + propertyPath: m_LocalPosition.z + value: 17 + objectReference: {fileID: 0} + - target: {fileID: 1579282987822796750, guid: 941fac9249b6442cdb2d3f23472128e2, + type: 3} + propertyPath: m_LocalRotation.x + value: -0 + objectReference: {fileID: 0} + - target: {fileID: 1579282987822796750, guid: 941fac9249b6442cdb2d3f23472128e2, + type: 3} + propertyPath: m_LocalRotation.y + value: -0 + objectReference: {fileID: 0} + - target: {fileID: 1579282987822796750, guid: 941fac9249b6442cdb2d3f23472128e2, + type: 3} + propertyPath: m_LocalRotation.z + value: -0 + objectReference: {fileID: 0} + - target: {fileID: 1579282987822796750, guid: 941fac9249b6442cdb2d3f23472128e2, + type: 3} + propertyPath: m_LocalRotation.w + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 1579282987822796750, guid: 941fac9249b6442cdb2d3f23472128e2, + type: 3} + propertyPath: m_RootOrder + value: 4 + objectReference: {fileID: 0} + - target: {fileID: 1579282987822796750, guid: 941fac9249b6442cdb2d3f23472128e2, + type: 3} + propertyPath: m_LocalEulerAnglesHint.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 1579282987822796750, guid: 941fac9249b6442cdb2d3f23472128e2, + type: 3} + propertyPath: m_LocalEulerAnglesHint.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 1579282987822796750, guid: 941fac9249b6442cdb2d3f23472128e2, + type: 3} + propertyPath: m_LocalEulerAnglesHint.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 1644974464755198482, guid: 941fac9249b6442cdb2d3f23472128e2, + type: 3} + propertyPath: bounciness + value: 0.1 + objectReference: {fileID: 0} + m_RemovedComponents: + - {fileID: 1579282987816156490, guid: 941fac9249b6442cdb2d3f23472128e2, type: 3} + m_SourcePrefab: {fileID: 100100000, guid: 941fac9249b6442cdb2d3f23472128e2, type: 3} +--- !u!4 &392884237 stripped +Transform: + m_CorrespondingSourceObject: {fileID: 1579282987822796750, guid: 941fac9249b6442cdb2d3f23472128e2, + type: 3} + m_PrefabInstance: {fileID: 392884236} + m_PrefabAsset: {fileID: 0} +--- !u!1001 &393423008 +PrefabInstance: + m_ObjectHideFlags: 0 + serializedVersion: 2 + m_Modification: + m_TransformParent: {fileID: 807038590} + m_Modifications: + - target: {fileID: 40299501215355906, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_RootOrder + value: 24 + objectReference: {fileID: 0} + - target: {fileID: 40299501215355906, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_LocalPosition.x + value: -106.21425 + objectReference: {fileID: 0} + - target: {fileID: 40299501215355906, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_LocalPosition.y + value: -0.03467399 + objectReference: {fileID: 0} + - target: {fileID: 40299501215355906, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_LocalPosition.z + value: -55.76382 + objectReference: {fileID: 0} + - target: {fileID: 40299501215355906, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_LocalRotation.y + value: 0.12080388 + objectReference: {fileID: 0} + - target: {fileID: 40299501215355906, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_LocalRotation.z + value: -0 + objectReference: {fileID: 0} + - target: {fileID: 40299501215355906, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_LocalRotation.w + value: 0.9926764 + objectReference: {fileID: 0} + - target: {fileID: 40299501215355906, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_LocalEulerAnglesHint.y + value: 13.877 + objectReference: {fileID: 0} + - target: {fileID: 40299501215355906, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_LocalScale.x + value: 1.9931502 + objectReference: {fileID: 0} + - target: {fileID: 40299501215355906, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_LocalScale.y + value: 1.99315 + objectReference: {fileID: 0} + - target: {fileID: 40299501215355906, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_LocalScale.z + value: 1.9931502 + objectReference: {fileID: 0} + - target: {fileID: 40299501215355906, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_LocalRotation.x + value: -0 + objectReference: {fileID: 0} + - target: {fileID: 2057621013554333680, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_LocalPosition.x + value: -18.3 + objectReference: {fileID: 0} + - target: {fileID: 2057621013554333680, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_LocalPosition.y + value: -0.91700006 + objectReference: {fileID: 0} + - target: {fileID: 2057621013554333680, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_LocalPosition.z + value: -25.5 + objectReference: {fileID: 0} + - target: {fileID: 2057621013554333680, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_LocalRotation.x + value: -0 + objectReference: {fileID: 0} + - target: {fileID: 2057621013554333680, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_LocalRotation.y + value: 0.120803885 + objectReference: {fileID: 0} + - target: {fileID: 2057621013554333680, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_LocalRotation.z + value: -0 + objectReference: {fileID: 0} + - target: {fileID: 2057621013554333680, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_LocalRotation.w + value: 0.9926764 + objectReference: {fileID: 0} + - target: {fileID: 2057621013554333680, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_RootOrder + value: 27 + objectReference: {fileID: 0} + - target: {fileID: 2057621013554333680, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_LocalEulerAnglesHint.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 2057621013554333680, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_LocalEulerAnglesHint.y + value: 13.877001 + objectReference: {fileID: 0} + - target: {fileID: 2057621013554333680, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_LocalEulerAnglesHint.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 2057621013554333680, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_LocalScale.x + value: 1.9931502 + objectReference: {fileID: 0} + - target: {fileID: 2057621013554333680, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_LocalScale.y + value: 1.99315 + objectReference: {fileID: 0} + - target: {fileID: 2057621013554333680, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_LocalScale.z + value: 1.9931502 + objectReference: {fileID: 0} + - target: {fileID: 2057621013554699216, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_Name + value: StoneVariant2 (15) + objectReference: {fileID: 0} + - target: {fileID: 2057621013556626704, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_Materials.Array.data[0] + value: + objectReference: {fileID: 2100000, guid: d11179e416c9b394c8176d36a0dcae52, type: 2} + - target: {fileID: 2057621013557757904, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_Mesh + value: + objectReference: {fileID: 4300002, guid: 5e6dd9e33a8a1c748a582c8565e5f95f, type: 3} + - target: {fileID: 6182327852661155845, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_Name + value: StoneRound (11) + objectReference: {fileID: 0} + m_RemovedComponents: [] + m_SourcePrefab: {fileID: 100100000, guid: 230dd9257fca2c249b555f6edd3c8e14, type: 3} +--- !u!1001 &394059448 +PrefabInstance: + m_ObjectHideFlags: 0 + serializedVersion: 2 + m_Modification: + m_TransformParent: {fileID: 807038590} + m_Modifications: + - target: {fileID: 40299501215355906, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_RootOrder + value: 28 + objectReference: {fileID: 0} + - target: {fileID: 40299501215355906, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_LocalPosition.x + value: -156.71425 + objectReference: {fileID: 0} + - target: {fileID: 40299501215355906, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_LocalPosition.y + value: -0.27547383 + objectReference: {fileID: 0} + - target: {fileID: 40299501215355906, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_LocalPosition.z + value: -26.563822 + objectReference: {fileID: 0} + - target: {fileID: 40299501215355906, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_LocalRotation.y + value: 0.12080388 + objectReference: {fileID: 0} + - target: {fileID: 40299501215355906, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_LocalRotation.z + value: -0 + objectReference: {fileID: 0} + - target: {fileID: 40299501215355906, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_LocalRotation.w + value: 0.9926764 + objectReference: {fileID: 0} + - target: {fileID: 40299501215355906, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_LocalEulerAnglesHint.y + value: 13.877 + objectReference: {fileID: 0} + - target: {fileID: 40299501215355906, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_LocalScale.x + value: 3.3050427 + objectReference: {fileID: 0} + - target: {fileID: 40299501215355906, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_LocalScale.y + value: 3.305042 + objectReference: {fileID: 0} + - target: {fileID: 40299501215355906, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_LocalScale.z + value: 3.3050427 + objectReference: {fileID: 0} + - target: {fileID: 40299501215355906, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_LocalRotation.x + value: -0 + objectReference: {fileID: 0} + - target: {fileID: 2057621013554333680, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_LocalPosition.x + value: 67.21 + objectReference: {fileID: 0} + - target: {fileID: 2057621013554333680, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_LocalPosition.y + value: -0.91700006 + objectReference: {fileID: 0} + - target: {fileID: 2057621013554333680, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_LocalPosition.z + value: 14.94 + objectReference: {fileID: 0} + - target: {fileID: 2057621013554333680, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_LocalRotation.x + value: -0 + objectReference: {fileID: 0} + - target: {fileID: 2057621013554333680, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_LocalRotation.y + value: 0.907129 + objectReference: {fileID: 0} + - target: {fileID: 2057621013554333680, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_LocalRotation.z + value: -0 + objectReference: {fileID: 0} + - target: {fileID: 2057621013554333680, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_LocalRotation.w + value: 0.42085275 + objectReference: {fileID: 0} + - target: {fileID: 2057621013554333680, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_RootOrder + value: 31 + objectReference: {fileID: 0} + - target: {fileID: 2057621013554333680, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_LocalEulerAnglesHint.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 2057621013554333680, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_LocalEulerAnglesHint.y + value: 130.223 + objectReference: {fileID: 0} + - target: {fileID: 2057621013554333680, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_LocalEulerAnglesHint.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 2057621013554333680, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_LocalScale.x + value: 1.9931505 + objectReference: {fileID: 0} + - target: {fileID: 2057621013554333680, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_LocalScale.y + value: 1.99315 + objectReference: {fileID: 0} + - target: {fileID: 2057621013554333680, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_LocalScale.z + value: 1.9931505 + objectReference: {fileID: 0} + - target: {fileID: 2057621013554699216, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_Name + value: StoneVariant2 (21) + objectReference: {fileID: 0} + - target: {fileID: 2057621013556626704, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_Materials.Array.data[0] + value: + objectReference: {fileID: 2100000, guid: d11179e416c9b394c8176d36a0dcae52, type: 2} + - target: {fileID: 2057621013557757904, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_Mesh + value: + objectReference: {fileID: 4300002, guid: 5e6dd9e33a8a1c748a582c8565e5f95f, type: 3} + - target: {fileID: 6182327852661155845, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_Name + value: StoneRound (15) + objectReference: {fileID: 0} + m_RemovedComponents: [] + m_SourcePrefab: {fileID: 100100000, guid: 230dd9257fca2c249b555f6edd3c8e14, type: 3} +--- !u!1001 &407332377 +PrefabInstance: + m_ObjectHideFlags: 0 + serializedVersion: 2 + m_Modification: + m_TransformParent: {fileID: 1645660025} + m_Modifications: + - target: {fileID: 3420580296371496975, guid: 6e78c73d0c22422438a45bea2842fcfb, + type: 3} + propertyPath: m_Name + value: BuildingThin (1) + objectReference: {fileID: 0} + - target: {fileID: 8822636336882126325, guid: 6e78c73d0c22422438a45bea2842fcfb, + type: 3} + propertyPath: m_LocalPosition.x + value: 2 + objectReference: {fileID: 0} + - target: {fileID: 8822636336882126325, guid: 6e78c73d0c22422438a45bea2842fcfb, + type: 3} + propertyPath: m_LocalPosition.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 8822636336882126325, guid: 6e78c73d0c22422438a45bea2842fcfb, + type: 3} + propertyPath: m_LocalPosition.z + value: -79 + objectReference: {fileID: 0} + - target: {fileID: 8822636336882126325, guid: 6e78c73d0c22422438a45bea2842fcfb, + type: 3} + propertyPath: m_LocalRotation.x + value: -0 + objectReference: {fileID: 0} + - target: {fileID: 8822636336882126325, guid: 6e78c73d0c22422438a45bea2842fcfb, + type: 3} + propertyPath: m_LocalRotation.y + value: -0.018558338 + objectReference: {fileID: 0} + - target: {fileID: 8822636336882126325, guid: 6e78c73d0c22422438a45bea2842fcfb, + type: 3} + propertyPath: m_LocalRotation.z + value: -0 + objectReference: {fileID: 0} + - target: {fileID: 8822636336882126325, guid: 6e78c73d0c22422438a45bea2842fcfb, + type: 3} + propertyPath: m_LocalRotation.w + value: 0.9998278 + objectReference: {fileID: 0} + - target: {fileID: 8822636336882126325, guid: 6e78c73d0c22422438a45bea2842fcfb, + type: 3} + propertyPath: m_RootOrder + value: 7 + objectReference: {fileID: 0} + - target: {fileID: 8822636336882126325, guid: 6e78c73d0c22422438a45bea2842fcfb, + type: 3} + propertyPath: m_LocalEulerAnglesHint.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 8822636336882126325, guid: 6e78c73d0c22422438a45bea2842fcfb, + type: 3} + propertyPath: m_LocalEulerAnglesHint.y + value: -2.127 + objectReference: {fileID: 0} + - target: {fileID: 8822636336882126325, guid: 6e78c73d0c22422438a45bea2842fcfb, + type: 3} + propertyPath: m_LocalEulerAnglesHint.z + value: 0 + objectReference: {fileID: 0} + m_RemovedComponents: [] + m_SourcePrefab: {fileID: 100100000, guid: 6e78c73d0c22422438a45bea2842fcfb, type: 3} +--- !u!1001 &408555097 +PrefabInstance: + m_ObjectHideFlags: 0 + serializedVersion: 2 + m_Modification: + m_TransformParent: {fileID: 807038590} + m_Modifications: + - target: {fileID: 40299501215355906, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_RootOrder + value: 29 + objectReference: {fileID: 0} + - target: {fileID: 40299501215355906, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_LocalPosition.x + value: 18.985756 + objectReference: {fileID: 0} + - target: {fileID: 40299501215355906, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_LocalPosition.y + value: 0.020326138 + objectReference: {fileID: 0} + - target: {fileID: 40299501215355906, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_LocalPosition.z + value: 88.736176 + objectReference: {fileID: 0} + - target: {fileID: 40299501215355906, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_LocalRotation.y + value: 0.9071285 + objectReference: {fileID: 0} + - target: {fileID: 40299501215355906, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_LocalRotation.z + value: -0 + objectReference: {fileID: 0} + - target: {fileID: 40299501215355906, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_LocalRotation.w + value: 0.42085382 + objectReference: {fileID: 0} + - target: {fileID: 40299501215355906, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_LocalEulerAnglesHint.y + value: 130.223 + objectReference: {fileID: 0} + - target: {fileID: 40299501215355906, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_LocalScale.x + value: 1.2849009 + objectReference: {fileID: 0} + - target: {fileID: 40299501215355906, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_LocalScale.y + value: 1.2849 + objectReference: {fileID: 0} + - target: {fileID: 40299501215355906, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_LocalScale.z + value: 1.2849009 + objectReference: {fileID: 0} + - target: {fileID: 40299501215355906, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_LocalRotation.x + value: -0 + objectReference: {fileID: 0} + - target: {fileID: 2057621013554333680, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_LocalPosition.x + value: 60.6 + objectReference: {fileID: 0} + - target: {fileID: 2057621013554333680, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_LocalPosition.y + value: -1.04 + objectReference: {fileID: 0} + - target: {fileID: 2057621013554333680, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_LocalPosition.z + value: -31.4 + objectReference: {fileID: 0} + - target: {fileID: 2057621013554333680, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_LocalRotation.x + value: -0 + objectReference: {fileID: 0} + - target: {fileID: 2057621013554333680, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_LocalRotation.y + value: -0 + objectReference: {fileID: 0} + - target: {fileID: 2057621013554333680, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_LocalRotation.z + value: -0 + objectReference: {fileID: 0} + - target: {fileID: 2057621013554333680, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_LocalRotation.w + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 2057621013554333680, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_RootOrder + value: 37 + objectReference: {fileID: 0} + - target: {fileID: 2057621013554333680, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_LocalEulerAnglesHint.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 2057621013554333680, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_LocalEulerAnglesHint.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 2057621013554333680, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_LocalEulerAnglesHint.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 2057621013554333680, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_LocalScale.x + value: 2.3006 + objectReference: {fileID: 0} + - target: {fileID: 2057621013554333680, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_LocalScale.y + value: 2.3006 + objectReference: {fileID: 0} + - target: {fileID: 2057621013554333680, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_LocalScale.z + value: 2.3006 + objectReference: {fileID: 0} + - target: {fileID: 2057621013554699216, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_Name + value: StoneVariant2 (27) + objectReference: {fileID: 0} + - target: {fileID: 2057621013556626704, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_Materials.Array.data[0] + value: + objectReference: {fileID: 2100000, guid: d11179e416c9b394c8176d36a0dcae52, type: 2} + - target: {fileID: 2057621013557757904, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_Mesh + value: + objectReference: {fileID: 4300002, guid: 5e6dd9e33a8a1c748a582c8565e5f95f, type: 3} + - target: {fileID: 6182327852661155845, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_Name + value: StoneRound (16) + objectReference: {fileID: 0} + m_RemovedComponents: [] + m_SourcePrefab: {fileID: 100100000, guid: 230dd9257fca2c249b555f6edd3c8e14, type: 3} +--- !u!4 &408555098 stripped +Transform: + m_CorrespondingSourceObject: {fileID: 40299501215355906, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + m_PrefabInstance: {fileID: 408555097} + m_PrefabAsset: {fileID: 0} +--- !u!1001 &409335563 +PrefabInstance: + m_ObjectHideFlags: 0 + serializedVersion: 2 + m_Modification: + m_TransformParent: {fileID: 1889916056} + m_Modifications: + - target: {fileID: 100012, guid: 0829d76c4806eb54b8b2f17eec10f4e6, type: 3} + propertyPath: m_Name + value: Cloud (14) + objectReference: {fileID: 0} + - target: {fileID: 100012, guid: 0829d76c4806eb54b8b2f17eec10f4e6, type: 3} + propertyPath: m_StaticEditorFlags + value: 4294967295 + objectReference: {fileID: 0} + - target: {fileID: 400012, guid: 0829d76c4806eb54b8b2f17eec10f4e6, type: 3} + propertyPath: m_LocalPosition.x + value: 264.29077 + objectReference: {fileID: 0} + - target: {fileID: 400012, guid: 0829d76c4806eb54b8b2f17eec10f4e6, type: 3} + propertyPath: m_LocalPosition.y + value: 88.431335 + objectReference: {fileID: 0} + - target: {fileID: 400012, guid: 0829d76c4806eb54b8b2f17eec10f4e6, type: 3} + propertyPath: m_LocalPosition.z + value: -86.380775 + objectReference: {fileID: 0} + - target: {fileID: 400012, guid: 0829d76c4806eb54b8b2f17eec10f4e6, type: 3} + propertyPath: m_LocalRotation.x + value: -0 + objectReference: {fileID: 0} + - target: {fileID: 400012, guid: 0829d76c4806eb54b8b2f17eec10f4e6, type: 3} + propertyPath: m_LocalRotation.y + value: 0.7564422 + objectReference: {fileID: 0} + - target: {fileID: 400012, guid: 0829d76c4806eb54b8b2f17eec10f4e6, type: 3} + propertyPath: m_LocalRotation.z + value: -0 + objectReference: {fileID: 0} + - target: {fileID: 400012, guid: 0829d76c4806eb54b8b2f17eec10f4e6, type: 3} + propertyPath: m_LocalRotation.w + value: 0.6540606 + objectReference: {fileID: 0} + - target: {fileID: 400012, guid: 0829d76c4806eb54b8b2f17eec10f4e6, type: 3} + propertyPath: m_RootOrder + value: 14 + objectReference: {fileID: 0} + - target: {fileID: 400012, guid: 0829d76c4806eb54b8b2f17eec10f4e6, type: 3} + propertyPath: m_LocalEulerAnglesHint.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 400012, guid: 0829d76c4806eb54b8b2f17eec10f4e6, type: 3} + propertyPath: m_LocalEulerAnglesHint.y + value: 98.303 + objectReference: {fileID: 0} + - target: {fileID: 400012, guid: 0829d76c4806eb54b8b2f17eec10f4e6, type: 3} + propertyPath: m_LocalEulerAnglesHint.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 400012, guid: 0829d76c4806eb54b8b2f17eec10f4e6, type: 3} + propertyPath: m_LocalScale.x + value: 6.4706235 + objectReference: {fileID: 0} + - target: {fileID: 400012, guid: 0829d76c4806eb54b8b2f17eec10f4e6, type: 3} + propertyPath: m_LocalScale.y + value: 6.4706197 + objectReference: {fileID: 0} + - target: {fileID: 400012, guid: 0829d76c4806eb54b8b2f17eec10f4e6, type: 3} + propertyPath: m_LocalScale.z + value: 6.4706235 + objectReference: {fileID: 0} + - target: {fileID: 2300000, guid: 0829d76c4806eb54b8b2f17eec10f4e6, type: 3} + propertyPath: m_Materials.Array.data[0] + value: + objectReference: {fileID: 2100000, guid: c1fb7d3a27a67b947bb2b2ab391072b0, type: 2} + - target: {fileID: 2300002, guid: 0829d76c4806eb54b8b2f17eec10f4e6, type: 3} + propertyPath: m_Materials.Array.data[0] + value: + objectReference: {fileID: 2100000, guid: c1fb7d3a27a67b947bb2b2ab391072b0, type: 2} + - target: {fileID: 2300004, guid: 0829d76c4806eb54b8b2f17eec10f4e6, type: 3} + propertyPath: m_Materials.Array.data[0] + value: + objectReference: {fileID: 2100000, guid: c1fb7d3a27a67b947bb2b2ab391072b0, type: 2} + - target: {fileID: 2300006, guid: 0829d76c4806eb54b8b2f17eec10f4e6, type: 3} + propertyPath: m_Materials.Array.data[0] + value: + objectReference: {fileID: 2100000, guid: c1fb7d3a27a67b947bb2b2ab391072b0, type: 2} + - target: {fileID: 2300008, guid: 0829d76c4806eb54b8b2f17eec10f4e6, type: 3} + propertyPath: m_Materials.Array.data[0] + value: + objectReference: {fileID: 2100000, guid: c1fb7d3a27a67b947bb2b2ab391072b0, type: 2} + - target: {fileID: 2300010, guid: 0829d76c4806eb54b8b2f17eec10f4e6, type: 3} + propertyPath: m_Materials.Array.data[0] + value: + objectReference: {fileID: 2100000, guid: c1fb7d3a27a67b947bb2b2ab391072b0, type: 2} + - target: {fileID: 2300012, guid: 0829d76c4806eb54b8b2f17eec10f4e6, type: 3} + propertyPath: m_Materials.Array.data[0] + value: + objectReference: {fileID: 2100000, guid: d11179e416c9b394c8176d36a0dcae52, type: 2} + m_RemovedComponents: [] + m_SourcePrefab: {fileID: 100100000, guid: 0829d76c4806eb54b8b2f17eec10f4e6, type: 3} +--- !u!4 &409335564 stripped +Transform: + m_CorrespondingSourceObject: {fileID: 400012, guid: 0829d76c4806eb54b8b2f17eec10f4e6, + type: 3} + m_PrefabInstance: {fileID: 409335563} + m_PrefabAsset: {fileID: 0} +--- !u!1001 &416464281 +PrefabInstance: + m_ObjectHideFlags: 0 + serializedVersion: 2 + m_Modification: + m_TransformParent: {fileID: 77662693} + m_Modifications: + - target: {fileID: 100000, guid: dca6189290e8c16479a364fa6d80b6b8, type: 3} + propertyPath: m_Name + value: TreeRound (10) + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: dca6189290e8c16479a364fa6d80b6b8, type: 3} + propertyPath: m_LocalPosition.x + value: -54.40921 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: dca6189290e8c16479a364fa6d80b6b8, type: 3} + propertyPath: m_LocalPosition.y + value: 3.831336 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: dca6189290e8c16479a364fa6d80b6b8, type: 3} + propertyPath: m_LocalPosition.z + value: 119.619225 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: dca6189290e8c16479a364fa6d80b6b8, type: 3} + propertyPath: m_LocalRotation.x + value: 0.000000003687177 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: dca6189290e8c16479a364fa6d80b6b8, type: 3} + propertyPath: m_LocalRotation.y + value: 0.9989751 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: dca6189290e8c16479a364fa6d80b6b8, type: 3} + propertyPath: m_LocalRotation.z + value: 0.000000081376875 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: dca6189290e8c16479a364fa6d80b6b8, type: 3} + propertyPath: m_LocalRotation.w + value: 0.045263793 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: dca6189290e8c16479a364fa6d80b6b8, type: 3} + propertyPath: m_RootOrder + value: 10 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: dca6189290e8c16479a364fa6d80b6b8, type: 3} + propertyPath: m_LocalEulerAnglesHint.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: dca6189290e8c16479a364fa6d80b6b8, type: 3} + propertyPath: m_LocalEulerAnglesHint.y + value: 174.811 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: dca6189290e8c16479a364fa6d80b6b8, type: 3} + propertyPath: m_LocalEulerAnglesHint.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: dca6189290e8c16479a364fa6d80b6b8, type: 3} + propertyPath: m_LocalScale.x + value: 1.7392111 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: dca6189290e8c16479a364fa6d80b6b8, type: 3} + propertyPath: m_LocalScale.y + value: 1.7392083 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: dca6189290e8c16479a364fa6d80b6b8, type: 3} + propertyPath: m_LocalScale.z + value: 1.7392111 + objectReference: {fileID: 0} + - target: {fileID: 2300000, guid: dca6189290e8c16479a364fa6d80b6b8, type: 3} + propertyPath: m_Materials.Array.data[0] + value: + objectReference: {fileID: 2100000, guid: d11179e416c9b394c8176d36a0dcae52, type: 2} + - target: {fileID: 2300002, guid: dca6189290e8c16479a364fa6d80b6b8, type: 3} + propertyPath: m_Materials.Array.data[0] + value: + objectReference: {fileID: 2100000, guid: d11179e416c9b394c8176d36a0dcae52, type: 2} + m_RemovedComponents: [] + m_SourcePrefab: {fileID: 100100000, guid: dca6189290e8c16479a364fa6d80b6b8, type: 3} +--- !u!4 &421160775 stripped +Transform: + m_CorrespondingSourceObject: {fileID: 8822636336882126325, guid: 6e78c73d0c22422438a45bea2842fcfb, + type: 3} + m_PrefabInstance: {fileID: 1055019279} + m_PrefabAsset: {fileID: 0} +--- !u!1001 &426602534 +PrefabInstance: + m_ObjectHideFlags: 0 + serializedVersion: 2 + m_Modification: + m_TransformParent: {fileID: 77662693} + m_Modifications: + - target: {fileID: 100000, guid: dca6189290e8c16479a364fa6d80b6b8, type: 3} + propertyPath: m_Name + value: TreeRound (12) + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: dca6189290e8c16479a364fa6d80b6b8, type: 3} + propertyPath: m_LocalPosition.x + value: 31.29079 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: dca6189290e8c16479a364fa6d80b6b8, type: 3} + propertyPath: m_LocalPosition.y + value: 5.131336 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: dca6189290e8c16479a364fa6d80b6b8, type: 3} + propertyPath: m_LocalPosition.z + value: 128.67223 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: dca6189290e8c16479a364fa6d80b6b8, type: 3} + propertyPath: m_LocalRotation.x + value: 0.00000008146034 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: dca6189290e8c16479a364fa6d80b6b8, type: 3} + propertyPath: m_LocalRotation.y + value: -0 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: dca6189290e8c16479a364fa6d80b6b8, type: 3} + propertyPath: m_LocalRotation.z + value: -0 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: dca6189290e8c16479a364fa6d80b6b8, type: 3} + propertyPath: m_LocalRotation.w + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: dca6189290e8c16479a364fa6d80b6b8, type: 3} + propertyPath: m_RootOrder + value: 12 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: dca6189290e8c16479a364fa6d80b6b8, type: 3} + propertyPath: m_LocalEulerAnglesHint.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: dca6189290e8c16479a364fa6d80b6b8, type: 3} + propertyPath: m_LocalEulerAnglesHint.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: dca6189290e8c16479a364fa6d80b6b8, type: 3} + propertyPath: m_LocalEulerAnglesHint.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: dca6189290e8c16479a364fa6d80b6b8, type: 3} + propertyPath: m_LocalScale.x + value: 2.01331 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: dca6189290e8c16479a364fa6d80b6b8, type: 3} + propertyPath: m_LocalScale.y + value: 2.0380738 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: dca6189290e8c16479a364fa6d80b6b8, type: 3} + propertyPath: m_LocalScale.z + value: 2.01331 + objectReference: {fileID: 0} + - target: {fileID: 2300000, guid: dca6189290e8c16479a364fa6d80b6b8, type: 3} + propertyPath: m_Materials.Array.data[0] + value: + objectReference: {fileID: 2100000, guid: d11179e416c9b394c8176d36a0dcae52, type: 2} + - target: {fileID: 2300002, guid: dca6189290e8c16479a364fa6d80b6b8, type: 3} + propertyPath: m_Materials.Array.data[0] + value: + objectReference: {fileID: 2100000, guid: d11179e416c9b394c8176d36a0dcae52, type: 2} + m_RemovedComponents: [] + m_SourcePrefab: {fileID: 100100000, guid: dca6189290e8c16479a364fa6d80b6b8, type: 3} +--- !u!1 &427176848 stripped +GameObject: + m_CorrespondingSourceObject: {fileID: 2307677542838934300, guid: f29c8f9af0e64ab48a6c306b16e4a8fd, + type: 3} + m_PrefabInstance: {fileID: 1348019049} + m_PrefabAsset: {fileID: 0} +--- !u!4 &433840811 stripped +Transform: + m_CorrespondingSourceObject: {fileID: 400000, guid: 92bb9994204d1d44cb6223c53e4f84f8, + type: 3} + m_PrefabInstance: {fileID: 451870824} + m_PrefabAsset: {fileID: 0} +--- !u!4 &439151644 stripped +Transform: + m_CorrespondingSourceObject: {fileID: 400000, guid: 92bb9994204d1d44cb6223c53e4f84f8, + type: 3} + m_PrefabInstance: {fileID: 1383909175} + m_PrefabAsset: {fileID: 0} +--- !u!1001 &448553352 +PrefabInstance: + m_ObjectHideFlags: 0 + serializedVersion: 2 + m_Modification: + m_TransformParent: {fileID: 77662693} + m_Modifications: + - target: {fileID: 100000, guid: 9f1e50f73a529a448b004add5bec5d80, type: 3} + propertyPath: m_Name + value: TreeBox (12) + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 9f1e50f73a529a448b004add5bec5d80, type: 3} + propertyPath: m_LocalPosition.x + value: -67.74921 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 9f1e50f73a529a448b004add5bec5d80, type: 3} + propertyPath: m_LocalPosition.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 9f1e50f73a529a448b004add5bec5d80, type: 3} + propertyPath: m_LocalPosition.z + value: 17.779224 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 9f1e50f73a529a448b004add5bec5d80, type: 3} + propertyPath: m_LocalRotation.x + value: -0.11755329 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 9f1e50f73a529a448b004add5bec5d80, type: 3} + propertyPath: m_LocalRotation.y + value: -0.5178465 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 9f1e50f73a529a448b004add5bec5d80, type: 3} + propertyPath: m_LocalRotation.z + value: 0.015928134 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 9f1e50f73a529a448b004add5bec5d80, type: 3} + propertyPath: m_LocalRotation.w + value: 0.84720874 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 9f1e50f73a529a448b004add5bec5d80, type: 3} + propertyPath: m_RootOrder + value: 31 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 9f1e50f73a529a448b004add5bec5d80, type: 3} + propertyPath: m_LocalEulerAnglesHint.x + value: -10.526001 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 9f1e50f73a529a448b004add5bec5d80, type: 3} + propertyPath: m_LocalEulerAnglesHint.y + value: -63.673004 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 9f1e50f73a529a448b004add5bec5d80, type: 3} + propertyPath: m_LocalEulerAnglesHint.z + value: 8.701 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 9f1e50f73a529a448b004add5bec5d80, type: 3} + propertyPath: m_LocalScale.x + value: 3.1630414 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 9f1e50f73a529a448b004add5bec5d80, type: 3} + propertyPath: m_LocalScale.y + value: 3.1630409 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 9f1e50f73a529a448b004add5bec5d80, type: 3} + propertyPath: m_LocalScale.z + value: 3.1630414 + objectReference: {fileID: 0} + - target: {fileID: 2300000, guid: 9f1e50f73a529a448b004add5bec5d80, type: 3} + propertyPath: m_Materials.Array.data[0] + value: + objectReference: {fileID: 2100000, guid: d11179e416c9b394c8176d36a0dcae52, type: 2} + m_RemovedComponents: [] + m_SourcePrefab: {fileID: 100100000, guid: 9f1e50f73a529a448b004add5bec5d80, type: 3} +--- !u!1001 &451870824 +PrefabInstance: + m_ObjectHideFlags: 0 + serializedVersion: 2 + m_Modification: + m_TransformParent: {fileID: 286898288} + m_Modifications: + - target: {fileID: 100000, guid: 92bb9994204d1d44cb6223c53e4f84f8, type: 3} + propertyPath: m_Name + value: Hill (9) + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 92bb9994204d1d44cb6223c53e4f84f8, type: 3} + propertyPath: m_LocalPosition.x + value: -33.060127 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 92bb9994204d1d44cb6223c53e4f84f8, type: 3} + propertyPath: m_LocalPosition.y + value: -5.5859046 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 92bb9994204d1d44cb6223c53e4f84f8, type: 3} + propertyPath: m_LocalPosition.z + value: -93.50935 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 92bb9994204d1d44cb6223c53e4f84f8, type: 3} + propertyPath: m_LocalRotation.x + value: -0 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 92bb9994204d1d44cb6223c53e4f84f8, type: 3} + propertyPath: m_LocalRotation.y + value: -0 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 92bb9994204d1d44cb6223c53e4f84f8, type: 3} + propertyPath: m_LocalRotation.z + value: -0 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 92bb9994204d1d44cb6223c53e4f84f8, type: 3} + propertyPath: m_LocalRotation.w + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 92bb9994204d1d44cb6223c53e4f84f8, type: 3} + propertyPath: m_RootOrder + value: 9 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 92bb9994204d1d44cb6223c53e4f84f8, type: 3} + propertyPath: m_LocalEulerAnglesHint.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 92bb9994204d1d44cb6223c53e4f84f8, type: 3} + propertyPath: m_LocalEulerAnglesHint.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 92bb9994204d1d44cb6223c53e4f84f8, type: 3} + propertyPath: m_LocalEulerAnglesHint.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 92bb9994204d1d44cb6223c53e4f84f8, type: 3} + propertyPath: m_LocalScale.x + value: 5.2088823 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 92bb9994204d1d44cb6223c53e4f84f8, type: 3} + propertyPath: m_LocalScale.y + value: 5.311538 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 92bb9994204d1d44cb6223c53e4f84f8, type: 3} + propertyPath: m_LocalScale.z + value: 5.2088823 + objectReference: {fileID: 0} + m_RemovedComponents: [] + m_SourcePrefab: {fileID: 100100000, guid: 92bb9994204d1d44cb6223c53e4f84f8, type: 3} +--- !u!114 &456848481 stripped +MonoBehaviour: + m_CorrespondingSourceObject: {fileID: 1593944921, guid: 8a2015a9601d162459389c9b9d1437fc, + type: 3} + m_PrefabInstance: {fileID: 1388116303} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1388116304} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 7182949d2a8e7604abfc172a14ac5d7c, type: 3} + m_Name: + m_EditorClassIdentifier: +--- !u!114 &456848484 stripped +MonoBehaviour: + m_CorrespondingSourceObject: {fileID: 3763822634849867138, guid: 8a2015a9601d162459389c9b9d1437fc, + type: 3} + m_PrefabInstance: {fileID: 1388116303} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1388116304} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 53099c8bf5564a54caebda5331b303b6, type: 3} + m_Name: + m_EditorClassIdentifier: +--- !u!1001 &461693127 +PrefabInstance: + m_ObjectHideFlags: 0 + serializedVersion: 2 + m_Modification: + m_TransformParent: {fileID: 286898288} + m_Modifications: + - target: {fileID: 100000, guid: 92bb9994204d1d44cb6223c53e4f84f8, type: 3} + propertyPath: m_Name + value: Hill (12) + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 92bb9994204d1d44cb6223c53e4f84f8, type: 3} + propertyPath: m_LocalPosition.x + value: -31.360125 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 92bb9994204d1d44cb6223c53e4f84f8, type: 3} + propertyPath: m_LocalPosition.y + value: -3.2859044 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 92bb9994204d1d44cb6223c53e4f84f8, type: 3} + propertyPath: m_LocalPosition.z + value: 164.49066 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 92bb9994204d1d44cb6223c53e4f84f8, type: 3} + propertyPath: m_LocalRotation.x + value: -0 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 92bb9994204d1d44cb6223c53e4f84f8, type: 3} + propertyPath: m_LocalRotation.y + value: -0 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 92bb9994204d1d44cb6223c53e4f84f8, type: 3} + propertyPath: m_LocalRotation.z + value: -0 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 92bb9994204d1d44cb6223c53e4f84f8, type: 3} + propertyPath: m_LocalRotation.w + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 92bb9994204d1d44cb6223c53e4f84f8, type: 3} + propertyPath: m_RootOrder + value: 12 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 92bb9994204d1d44cb6223c53e4f84f8, type: 3} + propertyPath: m_LocalEulerAnglesHint.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 92bb9994204d1d44cb6223c53e4f84f8, type: 3} + propertyPath: m_LocalEulerAnglesHint.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 92bb9994204d1d44cb6223c53e4f84f8, type: 3} + propertyPath: m_LocalEulerAnglesHint.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 92bb9994204d1d44cb6223c53e4f84f8, type: 3} + propertyPath: m_LocalScale.x + value: 5.22806 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 92bb9994204d1d44cb6223c53e4f84f8, type: 3} + propertyPath: m_LocalScale.y + value: 8.937951 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 92bb9994204d1d44cb6223c53e4f84f8, type: 3} + propertyPath: m_LocalScale.z + value: 5.22806 + objectReference: {fileID: 0} + - target: {fileID: 2300000, guid: 92bb9994204d1d44cb6223c53e4f84f8, type: 3} + propertyPath: m_Materials.Array.data[0] + value: + objectReference: {fileID: 2100000, guid: 5304db1f3e113764fae919908740f4ba, type: 2} + m_RemovedComponents: [] + m_SourcePrefab: {fileID: 100100000, guid: 92bb9994204d1d44cb6223c53e4f84f8, type: 3} +--- !u!4 &461693128 stripped +Transform: + m_CorrespondingSourceObject: {fileID: 400000, guid: 92bb9994204d1d44cb6223c53e4f84f8, + type: 3} + m_PrefabInstance: {fileID: 461693127} + m_PrefabAsset: {fileID: 0} +--- !u!4 &483190912 stripped +Transform: + m_CorrespondingSourceObject: {fileID: 40299501215355906, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + m_PrefabInstance: {fileID: 130582065} + m_PrefabAsset: {fileID: 0} +--- !u!1001 &484879890 +PrefabInstance: + m_ObjectHideFlags: 0 + serializedVersion: 2 + m_Modification: + m_TransformParent: {fileID: 1645660025} + m_Modifications: + - target: {fileID: 1861639547071064576, guid: 45c52fcc7429b214c8f9a6d85321ba77, + type: 3} + propertyPath: m_Name + value: BuildingShort (2) + objectReference: {fileID: 0} + - target: {fileID: 5538800703641817082, guid: 45c52fcc7429b214c8f9a6d85321ba77, + type: 3} + propertyPath: m_LocalPosition.x + value: 49.852486 + objectReference: {fileID: 0} + - target: {fileID: 5538800703641817082, guid: 45c52fcc7429b214c8f9a6d85321ba77, + type: 3} + propertyPath: m_LocalPosition.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 5538800703641817082, guid: 45c52fcc7429b214c8f9a6d85321ba77, + type: 3} + propertyPath: m_LocalPosition.z + value: -33.794632 + objectReference: {fileID: 0} + - target: {fileID: 5538800703641817082, guid: 45c52fcc7429b214c8f9a6d85321ba77, + type: 3} + propertyPath: m_LocalRotation.x + value: -0 + objectReference: {fileID: 0} + - target: {fileID: 5538800703641817082, guid: 45c52fcc7429b214c8f9a6d85321ba77, + type: 3} + propertyPath: m_LocalRotation.y + value: 0.70710754 + objectReference: {fileID: 0} + - target: {fileID: 5538800703641817082, guid: 45c52fcc7429b214c8f9a6d85321ba77, + type: 3} + propertyPath: m_LocalRotation.z + value: -0 + objectReference: {fileID: 0} + - target: {fileID: 5538800703641817082, guid: 45c52fcc7429b214c8f9a6d85321ba77, + type: 3} + propertyPath: m_LocalRotation.w + value: 0.7071061 + objectReference: {fileID: 0} + - target: {fileID: 5538800703641817082, guid: 45c52fcc7429b214c8f9a6d85321ba77, + type: 3} + propertyPath: m_RootOrder + value: 2 + objectReference: {fileID: 0} + - target: {fileID: 5538800703641817082, guid: 45c52fcc7429b214c8f9a6d85321ba77, + type: 3} + propertyPath: m_LocalEulerAnglesHint.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 5538800703641817082, guid: 45c52fcc7429b214c8f9a6d85321ba77, + type: 3} + propertyPath: m_LocalEulerAnglesHint.y + value: 90.00001 + objectReference: {fileID: 0} + - target: {fileID: 5538800703641817082, guid: 45c52fcc7429b214c8f9a6d85321ba77, + type: 3} + propertyPath: m_LocalEulerAnglesHint.z + value: 0 + objectReference: {fileID: 0} + m_RemovedComponents: [] + m_SourcePrefab: {fileID: 100100000, guid: 45c52fcc7429b214c8f9a6d85321ba77, type: 3} +--- !u!4 &484879891 stripped +Transform: + m_CorrespondingSourceObject: {fileID: 5538800703641817082, guid: 45c52fcc7429b214c8f9a6d85321ba77, + type: 3} + m_PrefabInstance: {fileID: 484879890} + m_PrefabAsset: {fileID: 0} +--- !u!1001 &506199214 +PrefabInstance: + m_ObjectHideFlags: 0 + serializedVersion: 2 + m_Modification: + m_TransformParent: {fileID: 286898288} + m_Modifications: + - target: {fileID: 100000, guid: 92bb9994204d1d44cb6223c53e4f84f8, type: 3} + propertyPath: m_Name + value: Hill (2) + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 92bb9994204d1d44cb6223c53e4f84f8, type: 3} + propertyPath: m_LocalPosition.x + value: -48.524338 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 92bb9994204d1d44cb6223c53e4f84f8, type: 3} + propertyPath: m_LocalPosition.y + value: -0.7759042 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 92bb9994204d1d44cb6223c53e4f84f8, type: 3} + propertyPath: m_LocalPosition.z + value: -50.3253 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 92bb9994204d1d44cb6223c53e4f84f8, type: 3} + propertyPath: m_LocalRotation.x + value: -0 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 92bb9994204d1d44cb6223c53e4f84f8, type: 3} + propertyPath: m_LocalRotation.y + value: -0.59996915 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 92bb9994204d1d44cb6223c53e4f84f8, type: 3} + propertyPath: m_LocalRotation.z + value: -0 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 92bb9994204d1d44cb6223c53e4f84f8, type: 3} + propertyPath: m_LocalRotation.w + value: 0.80002314 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 92bb9994204d1d44cb6223c53e4f84f8, type: 3} + propertyPath: m_RootOrder + value: 2 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 92bb9994204d1d44cb6223c53e4f84f8, type: 3} + propertyPath: m_LocalEulerAnglesHint.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 92bb9994204d1d44cb6223c53e4f84f8, type: 3} + propertyPath: m_LocalEulerAnglesHint.y + value: -73.735 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 92bb9994204d1d44cb6223c53e4f84f8, type: 3} + propertyPath: m_LocalEulerAnglesHint.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 92bb9994204d1d44cb6223c53e4f84f8, type: 3} + propertyPath: m_LocalScale.x + value: 1.4285799 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 92bb9994204d1d44cb6223c53e4f84f8, type: 3} + propertyPath: m_LocalScale.y + value: 0.79124 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 92bb9994204d1d44cb6223c53e4f84f8, type: 3} + propertyPath: m_LocalScale.z + value: 1.4285799 + objectReference: {fileID: 0} + m_RemovedComponents: [] + m_SourcePrefab: {fileID: 100100000, guid: 92bb9994204d1d44cb6223c53e4f84f8, type: 3} +--- !u!1 &509748178 stripped +GameObject: + m_CorrespondingSourceObject: {fileID: 1344542117541120527, guid: f29c8f9af0e64ab48a6c306b16e4a8fd, + type: 3} + m_PrefabInstance: {fileID: 1348019049} + m_PrefabAsset: {fileID: 0} +--- !u!4 &510474145 stripped +Transform: + m_CorrespondingSourceObject: {fileID: 40299501215355906, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + m_PrefabInstance: {fileID: 514914688} + m_PrefabAsset: {fileID: 0} +--- !u!1001 &514914688 +PrefabInstance: + m_ObjectHideFlags: 0 + serializedVersion: 2 + m_Modification: + m_TransformParent: {fileID: 807038590} + m_Modifications: + - target: {fileID: 40299501215355906, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_LocalPosition.x + value: 29.185757 + objectReference: {fileID: 0} + - target: {fileID: 40299501215355906, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_RootOrder + value: 20 + objectReference: {fileID: 0} + - target: {fileID: 40299501215355906, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_LocalPosition.y + value: -0.14767385 + objectReference: {fileID: 0} + - target: {fileID: 40299501215355906, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_LocalPosition.z + value: 71.736176 + objectReference: {fileID: 0} + - target: {fileID: 40299501215355906, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_LocalRotation.y + value: -0.17252214 + objectReference: {fileID: 0} + - target: {fileID: 40299501215355906, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_LocalRotation.z + value: -0 + objectReference: {fileID: 0} + - target: {fileID: 40299501215355906, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_LocalRotation.w + value: 0.9850057 + objectReference: {fileID: 0} + - target: {fileID: 40299501215355906, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_LocalEulerAnglesHint.y + value: -19.869 + objectReference: {fileID: 0} + - target: {fileID: 40299501215355906, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_LocalScale.x + value: 2.9231408 + objectReference: {fileID: 0} + - target: {fileID: 40299501215355906, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_LocalScale.y + value: 2.92314 + objectReference: {fileID: 0} + - target: {fileID: 40299501215355906, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_LocalScale.z + value: 2.9231408 + objectReference: {fileID: 0} + - target: {fileID: 40299501215355906, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_LocalRotation.x + value: -0 + objectReference: {fileID: 0} + - target: {fileID: 2057621013554333680, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_LocalPosition.x + value: 68 + objectReference: {fileID: 0} + - target: {fileID: 2057621013554333680, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_LocalPosition.y + value: -1.03 + objectReference: {fileID: 0} + - target: {fileID: 2057621013554333680, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_LocalPosition.z + value: 76.9 + objectReference: {fileID: 0} + - target: {fileID: 2057621013554333680, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_LocalRotation.x + value: -0 + objectReference: {fileID: 0} + - target: {fileID: 2057621013554333680, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_LocalRotation.y + value: -0.17252184 + objectReference: {fileID: 0} + - target: {fileID: 2057621013554333680, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_LocalRotation.z + value: -0 + objectReference: {fileID: 0} + - target: {fileID: 2057621013554333680, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_LocalRotation.w + value: 0.98500574 + objectReference: {fileID: 0} + - target: {fileID: 2057621013554333680, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_RootOrder + value: 21 + objectReference: {fileID: 0} + - target: {fileID: 2057621013554333680, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_LocalEulerAnglesHint.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 2057621013554333680, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_LocalEulerAnglesHint.y + value: -19.869001 + objectReference: {fileID: 0} + - target: {fileID: 2057621013554333680, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_LocalEulerAnglesHint.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 2057621013554333680, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_LocalScale.x + value: 2.92314 + objectReference: {fileID: 0} + - target: {fileID: 2057621013554333680, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_LocalScale.y + value: 2.9231398 + objectReference: {fileID: 0} + - target: {fileID: 2057621013554333680, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_LocalScale.z + value: 2.92314 + objectReference: {fileID: 0} + - target: {fileID: 2057621013554699216, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_Name + value: StoneVariant2 (7) + objectReference: {fileID: 0} + - target: {fileID: 2057621013556626704, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_Materials.Array.data[0] + value: + objectReference: {fileID: 2100000, guid: d11179e416c9b394c8176d36a0dcae52, type: 2} + - target: {fileID: 2057621013557757904, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_Mesh + value: + objectReference: {fileID: 4300002, guid: 5e6dd9e33a8a1c748a582c8565e5f95f, type: 3} + - target: {fileID: 6182327852661155845, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_Name + value: StoneRound (6) + objectReference: {fileID: 0} + m_RemovedComponents: [] + m_SourcePrefab: {fileID: 100100000, guid: 230dd9257fca2c249b555f6edd3c8e14, type: 3} +--- !u!4 &518492378 stripped +Transform: + m_CorrespondingSourceObject: {fileID: 400000, guid: dca6189290e8c16479a364fa6d80b6b8, + type: 3} + m_PrefabInstance: {fileID: 416464281} + m_PrefabAsset: {fileID: 0} +--- !u!1001 &533151610 +PrefabInstance: + m_ObjectHideFlags: 0 + serializedVersion: 2 + m_Modification: + m_TransformParent: {fileID: 807038590} + m_Modifications: + - target: {fileID: 40299501215355906, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_LocalPosition.x + value: -51 + objectReference: {fileID: 0} + - target: {fileID: 40299501215355906, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_RootOrder + value: 14 + objectReference: {fileID: 0} + - target: {fileID: 40299501215355906, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_LocalPosition.z + value: -36 + objectReference: {fileID: 0} + - target: {fileID: 40299501215355906, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_LocalRotation.x + value: -0 + objectReference: {fileID: 0} + - target: {fileID: 40299501215355906, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_LocalPosition.y + value: -0.15767384 + objectReference: {fileID: 0} + - target: {fileID: 2057621013554333680, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_LocalPosition.x + value: 7.18 + objectReference: {fileID: 0} + - target: {fileID: 2057621013554333680, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_LocalPosition.y + value: -1.04 + objectReference: {fileID: 0} + - target: {fileID: 2057621013554333680, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_LocalPosition.z + value: -22.58 + objectReference: {fileID: 0} + - target: {fileID: 2057621013554333680, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_LocalRotation.x + value: -0 + objectReference: {fileID: 0} + - target: {fileID: 2057621013554333680, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_LocalRotation.y + value: -0 + objectReference: {fileID: 0} + - target: {fileID: 2057621013554333680, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_LocalRotation.z + value: -0 + objectReference: {fileID: 0} + - target: {fileID: 2057621013554333680, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_LocalRotation.w + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 2057621013554333680, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_RootOrder + value: 15 + objectReference: {fileID: 0} + - target: {fileID: 2057621013554333680, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_LocalEulerAnglesHint.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 2057621013554333680, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_LocalEulerAnglesHint.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 2057621013554333680, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_LocalEulerAnglesHint.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 2057621013554333680, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_LocalScale.x + value: 2.3006 + objectReference: {fileID: 0} + - target: {fileID: 2057621013554333680, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_LocalScale.y + value: 2.3006 + objectReference: {fileID: 0} + - target: {fileID: 2057621013554333680, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_LocalScale.z + value: 2.3006 + objectReference: {fileID: 0} + - target: {fileID: 2057621013554699216, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_Name + value: StoneVariant2 (1) + objectReference: {fileID: 0} + - target: {fileID: 2057621013556626704, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_Materials.Array.data[0] + value: + objectReference: {fileID: 2100000, guid: d11179e416c9b394c8176d36a0dcae52, type: 2} + - target: {fileID: 2057621013557757904, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_Mesh + value: + objectReference: {fileID: 4300002, guid: 5e6dd9e33a8a1c748a582c8565e5f95f, type: 3} + - target: {fileID: 6182327852661155845, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_Name + value: StoneRound + objectReference: {fileID: 0} + m_RemovedComponents: [] + m_SourcePrefab: {fileID: 100100000, guid: 230dd9257fca2c249b555f6edd3c8e14, type: 3} +--- !u!1001 &533325049 +PrefabInstance: + m_ObjectHideFlags: 0 + serializedVersion: 2 + m_Modification: + m_TransformParent: {fileID: 1889916056} + m_Modifications: + - target: {fileID: 100012, guid: 0829d76c4806eb54b8b2f17eec10f4e6, type: 3} + propertyPath: m_Name + value: Cloud (6) + objectReference: {fileID: 0} + - target: {fileID: 100012, guid: 0829d76c4806eb54b8b2f17eec10f4e6, type: 3} + propertyPath: m_StaticEditorFlags + value: 4294967295 + objectReference: {fileID: 0} + - target: {fileID: 400012, guid: 0829d76c4806eb54b8b2f17eec10f4e6, type: 3} + propertyPath: m_LocalPosition.x + value: -343.4812 + objectReference: {fileID: 0} + - target: {fileID: 400012, guid: 0829d76c4806eb54b8b2f17eec10f4e6, type: 3} + propertyPath: m_LocalPosition.y + value: 34.531338 + objectReference: {fileID: 0} + - target: {fileID: 400012, guid: 0829d76c4806eb54b8b2f17eec10f4e6, type: 3} + propertyPath: m_LocalPosition.z + value: 532.00073 + objectReference: {fileID: 0} + - target: {fileID: 400012, guid: 0829d76c4806eb54b8b2f17eec10f4e6, type: 3} + propertyPath: m_LocalRotation.x + value: -0 + objectReference: {fileID: 0} + - target: {fileID: 400012, guid: 0829d76c4806eb54b8b2f17eec10f4e6, type: 3} + propertyPath: m_LocalRotation.y + value: -0.19821142 + objectReference: {fileID: 0} + - target: {fileID: 400012, guid: 0829d76c4806eb54b8b2f17eec10f4e6, type: 3} + propertyPath: m_LocalRotation.z + value: -0 + objectReference: {fileID: 0} + - target: {fileID: 400012, guid: 0829d76c4806eb54b8b2f17eec10f4e6, type: 3} + propertyPath: m_LocalRotation.w + value: 0.98015934 + objectReference: {fileID: 0} + - target: {fileID: 400012, guid: 0829d76c4806eb54b8b2f17eec10f4e6, type: 3} + propertyPath: m_RootOrder + value: 6 + objectReference: {fileID: 0} + - target: {fileID: 400012, guid: 0829d76c4806eb54b8b2f17eec10f4e6, type: 3} + propertyPath: m_LocalEulerAnglesHint.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 400012, guid: 0829d76c4806eb54b8b2f17eec10f4e6, type: 3} + propertyPath: m_LocalEulerAnglesHint.y + value: -22.865002 + objectReference: {fileID: 0} + - target: {fileID: 400012, guid: 0829d76c4806eb54b8b2f17eec10f4e6, type: 3} + propertyPath: m_LocalEulerAnglesHint.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 400012, guid: 0829d76c4806eb54b8b2f17eec10f4e6, type: 3} + propertyPath: m_LocalScale.x + value: 6.47062 + objectReference: {fileID: 0} + - target: {fileID: 400012, guid: 0829d76c4806eb54b8b2f17eec10f4e6, type: 3} + propertyPath: m_LocalScale.y + value: 6.4706197 + objectReference: {fileID: 0} + - target: {fileID: 400012, guid: 0829d76c4806eb54b8b2f17eec10f4e6, type: 3} + propertyPath: m_LocalScale.z + value: 6.47062 + objectReference: {fileID: 0} + - target: {fileID: 2300000, guid: 0829d76c4806eb54b8b2f17eec10f4e6, type: 3} + propertyPath: m_Materials.Array.data[0] + value: + objectReference: {fileID: 2100000, guid: c1fb7d3a27a67b947bb2b2ab391072b0, type: 2} + - target: {fileID: 2300002, guid: 0829d76c4806eb54b8b2f17eec10f4e6, type: 3} + propertyPath: m_Materials.Array.data[0] + value: + objectReference: {fileID: 2100000, guid: c1fb7d3a27a67b947bb2b2ab391072b0, type: 2} + - target: {fileID: 2300004, guid: 0829d76c4806eb54b8b2f17eec10f4e6, type: 3} + propertyPath: m_Materials.Array.data[0] + value: + objectReference: {fileID: 2100000, guid: c1fb7d3a27a67b947bb2b2ab391072b0, type: 2} + - target: {fileID: 2300006, guid: 0829d76c4806eb54b8b2f17eec10f4e6, type: 3} + propertyPath: m_Materials.Array.data[0] + value: + objectReference: {fileID: 2100000, guid: c1fb7d3a27a67b947bb2b2ab391072b0, type: 2} + - target: {fileID: 2300008, guid: 0829d76c4806eb54b8b2f17eec10f4e6, type: 3} + propertyPath: m_Materials.Array.data[0] + value: + objectReference: {fileID: 2100000, guid: c1fb7d3a27a67b947bb2b2ab391072b0, type: 2} + - target: {fileID: 2300010, guid: 0829d76c4806eb54b8b2f17eec10f4e6, type: 3} + propertyPath: m_Materials.Array.data[0] + value: + objectReference: {fileID: 2100000, guid: c1fb7d3a27a67b947bb2b2ab391072b0, type: 2} + - target: {fileID: 2300012, guid: 0829d76c4806eb54b8b2f17eec10f4e6, type: 3} + propertyPath: m_Materials.Array.data[0] + value: + objectReference: {fileID: 2100000, guid: d11179e416c9b394c8176d36a0dcae52, type: 2} + m_RemovedComponents: [] + m_SourcePrefab: {fileID: 100100000, guid: 0829d76c4806eb54b8b2f17eec10f4e6, type: 3} +--- !u!4 &545310876 stripped +Transform: + m_CorrespondingSourceObject: {fileID: 400000, guid: 9f1e50f73a529a448b004add5bec5d80, + type: 3} + m_PrefabInstance: {fileID: 1277693331} + m_PrefabAsset: {fileID: 0} +--- !u!4 &545441865 stripped +Transform: + m_CorrespondingSourceObject: {fileID: 400000, guid: dca6189290e8c16479a364fa6d80b6b8, + type: 3} + m_PrefabInstance: {fileID: 1012193179} + m_PrefabAsset: {fileID: 0} +--- !u!1001 &548986095 +PrefabInstance: + m_ObjectHideFlags: 0 + serializedVersion: 2 + m_Modification: + m_TransformParent: {fileID: 1645660025} + m_Modifications: + - target: {fileID: 1900073827432455217, guid: 041b3704a3df0fd4a8e325e3044c3b5e, + type: 3} + propertyPath: m_Name + value: BuildingTall (1) + objectReference: {fileID: 0} + - target: {fileID: 5716881834153654731, guid: 041b3704a3df0fd4a8e325e3044c3b5e, + type: 3} + propertyPath: m_LocalPosition.x + value: 31.282486 + objectReference: {fileID: 0} + - target: {fileID: 5716881834153654731, guid: 041b3704a3df0fd4a8e325e3044c3b5e, + type: 3} + propertyPath: m_LocalPosition.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 5716881834153654731, guid: 041b3704a3df0fd4a8e325e3044c3b5e, + type: 3} + propertyPath: m_LocalPosition.z + value: -57.594627 + objectReference: {fileID: 0} + - target: {fileID: 5716881834153654731, guid: 041b3704a3df0fd4a8e325e3044c3b5e, + type: 3} + propertyPath: m_LocalRotation.x + value: -0 + objectReference: {fileID: 0} + - target: {fileID: 5716881834153654731, guid: 041b3704a3df0fd4a8e325e3044c3b5e, + type: 3} + propertyPath: m_LocalRotation.y + value: -0.9597256 + objectReference: {fileID: 0} + - target: {fileID: 5716881834153654731, guid: 041b3704a3df0fd4a8e325e3044c3b5e, + type: 3} + propertyPath: m_LocalRotation.z + value: -0 + objectReference: {fileID: 0} + - target: {fileID: 5716881834153654731, guid: 041b3704a3df0fd4a8e325e3044c3b5e, + type: 3} + propertyPath: m_LocalRotation.w + value: -0.28093904 + objectReference: {fileID: 0} + - target: {fileID: 5716881834153654731, guid: 041b3704a3df0fd4a8e325e3044c3b5e, + type: 3} + propertyPath: m_RootOrder + value: 10 + objectReference: {fileID: 0} + - target: {fileID: 5716881834153654731, guid: 041b3704a3df0fd4a8e325e3044c3b5e, + type: 3} + propertyPath: m_LocalEulerAnglesHint.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 5716881834153654731, guid: 041b3704a3df0fd4a8e325e3044c3b5e, + type: 3} + propertyPath: m_LocalEulerAnglesHint.y + value: -212.633 + objectReference: {fileID: 0} + - target: {fileID: 5716881834153654731, guid: 041b3704a3df0fd4a8e325e3044c3b5e, + type: 3} + propertyPath: m_LocalEulerAnglesHint.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 5716881834153654731, guid: 041b3704a3df0fd4a8e325e3044c3b5e, + type: 3} + propertyPath: m_LocalScale.x + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 5716881834153654731, guid: 041b3704a3df0fd4a8e325e3044c3b5e, + type: 3} + propertyPath: m_LocalScale.z + value: 1 + objectReference: {fileID: 0} + m_RemovedComponents: [] + m_SourcePrefab: {fileID: 100100000, guid: 041b3704a3df0fd4a8e325e3044c3b5e, type: 3} +--- !u!4 &548986096 stripped +Transform: + m_CorrespondingSourceObject: {fileID: 5716881834153654731, guid: 041b3704a3df0fd4a8e325e3044c3b5e, + type: 3} + m_PrefabInstance: {fileID: 548986095} + m_PrefabAsset: {fileID: 0} +--- !u!1001 &582113425 +PrefabInstance: + m_ObjectHideFlags: 0 + serializedVersion: 2 + m_Modification: + m_TransformParent: {fileID: 1889916056} + m_Modifications: + - target: {fileID: 100012, guid: 0829d76c4806eb54b8b2f17eec10f4e6, type: 3} + propertyPath: m_Name + value: Cloud (3) + objectReference: {fileID: 0} + - target: {fileID: 100012, guid: 0829d76c4806eb54b8b2f17eec10f4e6, type: 3} + propertyPath: m_StaticEditorFlags + value: 4294967295 + objectReference: {fileID: 0} + - target: {fileID: 400012, guid: 0829d76c4806eb54b8b2f17eec10f4e6, type: 3} + propertyPath: m_LocalPosition.x + value: -338.00003 + objectReference: {fileID: 0} + - target: {fileID: 400012, guid: 0829d76c4806eb54b8b2f17eec10f4e6, type: 3} + propertyPath: m_LocalPosition.y + value: 66 + objectReference: {fileID: 0} + - target: {fileID: 400012, guid: 0829d76c4806eb54b8b2f17eec10f4e6, type: 3} + propertyPath: m_LocalPosition.z + value: 18 + objectReference: {fileID: 0} + - target: {fileID: 400012, guid: 0829d76c4806eb54b8b2f17eec10f4e6, type: 3} + propertyPath: m_LocalRotation.x + value: -0 + objectReference: {fileID: 0} + - target: {fileID: 400012, guid: 0829d76c4806eb54b8b2f17eec10f4e6, type: 3} + propertyPath: m_LocalRotation.y + value: -0.74623704 + objectReference: {fileID: 0} + - target: {fileID: 400012, guid: 0829d76c4806eb54b8b2f17eec10f4e6, type: 3} + propertyPath: m_LocalRotation.z + value: -0 + objectReference: {fileID: 0} + - target: {fileID: 400012, guid: 0829d76c4806eb54b8b2f17eec10f4e6, type: 3} + propertyPath: m_LocalRotation.w + value: 0.66568035 + objectReference: {fileID: 0} + - target: {fileID: 400012, guid: 0829d76c4806eb54b8b2f17eec10f4e6, type: 3} + propertyPath: m_RootOrder + value: 3 + objectReference: {fileID: 0} + - target: {fileID: 400012, guid: 0829d76c4806eb54b8b2f17eec10f4e6, type: 3} + propertyPath: m_LocalEulerAnglesHint.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 400012, guid: 0829d76c4806eb54b8b2f17eec10f4e6, type: 3} + propertyPath: m_LocalEulerAnglesHint.y + value: -96.531006 + objectReference: {fileID: 0} + - target: {fileID: 400012, guid: 0829d76c4806eb54b8b2f17eec10f4e6, type: 3} + propertyPath: m_LocalEulerAnglesHint.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 400012, guid: 0829d76c4806eb54b8b2f17eec10f4e6, type: 3} + propertyPath: m_LocalScale.x + value: 6.470626 + objectReference: {fileID: 0} + - target: {fileID: 400012, guid: 0829d76c4806eb54b8b2f17eec10f4e6, type: 3} + propertyPath: m_LocalScale.y + value: 6.4706197 + objectReference: {fileID: 0} + - target: {fileID: 400012, guid: 0829d76c4806eb54b8b2f17eec10f4e6, type: 3} + propertyPath: m_LocalScale.z + value: 6.470626 + objectReference: {fileID: 0} + - target: {fileID: 2300000, guid: 0829d76c4806eb54b8b2f17eec10f4e6, type: 3} + propertyPath: m_Materials.Array.data[0] + value: + objectReference: {fileID: 2100000, guid: c1fb7d3a27a67b947bb2b2ab391072b0, type: 2} + - target: {fileID: 2300002, guid: 0829d76c4806eb54b8b2f17eec10f4e6, type: 3} + propertyPath: m_Materials.Array.data[0] + value: + objectReference: {fileID: 2100000, guid: c1fb7d3a27a67b947bb2b2ab391072b0, type: 2} + - target: {fileID: 2300004, guid: 0829d76c4806eb54b8b2f17eec10f4e6, type: 3} + propertyPath: m_Materials.Array.data[0] + value: + objectReference: {fileID: 2100000, guid: c1fb7d3a27a67b947bb2b2ab391072b0, type: 2} + - target: {fileID: 2300006, guid: 0829d76c4806eb54b8b2f17eec10f4e6, type: 3} + propertyPath: m_Materials.Array.data[0] + value: + objectReference: {fileID: 2100000, guid: c1fb7d3a27a67b947bb2b2ab391072b0, type: 2} + - target: {fileID: 2300008, guid: 0829d76c4806eb54b8b2f17eec10f4e6, type: 3} + propertyPath: m_Materials.Array.data[0] + value: + objectReference: {fileID: 2100000, guid: c1fb7d3a27a67b947bb2b2ab391072b0, type: 2} + - target: {fileID: 2300010, guid: 0829d76c4806eb54b8b2f17eec10f4e6, type: 3} + propertyPath: m_Materials.Array.data[0] + value: + objectReference: {fileID: 2100000, guid: c1fb7d3a27a67b947bb2b2ab391072b0, type: 2} + - target: {fileID: 2300012, guid: 0829d76c4806eb54b8b2f17eec10f4e6, type: 3} + propertyPath: m_Materials.Array.data[0] + value: + objectReference: {fileID: 2100000, guid: d11179e416c9b394c8176d36a0dcae52, type: 2} + m_RemovedComponents: [] + m_SourcePrefab: {fileID: 100100000, guid: 0829d76c4806eb54b8b2f17eec10f4e6, type: 3} +--- !u!4 &582113426 stripped +Transform: + m_CorrespondingSourceObject: {fileID: 400012, guid: 0829d76c4806eb54b8b2f17eec10f4e6, + type: 3} + m_PrefabInstance: {fileID: 582113425} + m_PrefabAsset: {fileID: 0} +--- !u!4 &588385495 stripped +Transform: + m_CorrespondingSourceObject: {fileID: 40299501215355906, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + m_PrefabInstance: {fileID: 1369617640} + m_PrefabAsset: {fileID: 0} +--- !u!4 &598479454 stripped +Transform: + m_CorrespondingSourceObject: {fileID: 40299501215355906, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + m_PrefabInstance: {fileID: 533151610} + m_PrefabAsset: {fileID: 0} +--- !u!1001 &611497298 +PrefabInstance: + m_ObjectHideFlags: 0 + serializedVersion: 2 + m_Modification: + m_TransformParent: {fileID: 822690626} + m_Modifications: + - target: {fileID: 1579282987822437358, guid: 941fac9249b6442cdb2d3f23472128e2, + type: 3} + propertyPath: m_Name + value: ModularTrackStraight (3) + objectReference: {fileID: 0} + - target: {fileID: 1579282987822437358, guid: 941fac9249b6442cdb2d3f23472128e2, + type: 3} + propertyPath: m_IsActive + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 1579282987822796750, guid: 941fac9249b6442cdb2d3f23472128e2, + type: 3} + propertyPath: m_LocalPosition.x + value: 16 + objectReference: {fileID: 0} + - target: {fileID: 1579282987822796750, guid: 941fac9249b6442cdb2d3f23472128e2, + type: 3} + propertyPath: m_LocalPosition.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 1579282987822796750, guid: 941fac9249b6442cdb2d3f23472128e2, + type: 3} + propertyPath: m_LocalPosition.z + value: 7 + objectReference: {fileID: 0} + - target: {fileID: 1579282987822796750, guid: 941fac9249b6442cdb2d3f23472128e2, + type: 3} + propertyPath: m_LocalRotation.x + value: -0 + objectReference: {fileID: 0} + - target: {fileID: 1579282987822796750, guid: 941fac9249b6442cdb2d3f23472128e2, + type: 3} + propertyPath: m_LocalRotation.y + value: -0 + objectReference: {fileID: 0} + - target: {fileID: 1579282987822796750, guid: 941fac9249b6442cdb2d3f23472128e2, + type: 3} + propertyPath: m_LocalRotation.z + value: -0 + objectReference: {fileID: 0} + - target: {fileID: 1579282987822796750, guid: 941fac9249b6442cdb2d3f23472128e2, + type: 3} + propertyPath: m_LocalRotation.w + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 1579282987822796750, guid: 941fac9249b6442cdb2d3f23472128e2, + type: 3} + propertyPath: m_RootOrder + value: 3 + objectReference: {fileID: 0} + - target: {fileID: 1579282987822796750, guid: 941fac9249b6442cdb2d3f23472128e2, + type: 3} + propertyPath: m_LocalEulerAnglesHint.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 1579282987822796750, guid: 941fac9249b6442cdb2d3f23472128e2, + type: 3} + propertyPath: m_LocalEulerAnglesHint.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 1579282987822796750, guid: 941fac9249b6442cdb2d3f23472128e2, + type: 3} + propertyPath: m_LocalEulerAnglesHint.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 1644974464755198482, guid: 941fac9249b6442cdb2d3f23472128e2, + type: 3} + propertyPath: bounciness + value: 0.1 + objectReference: {fileID: 0} + m_RemovedComponents: + - {fileID: 1579282987816156490, guid: 941fac9249b6442cdb2d3f23472128e2, type: 3} + m_SourcePrefab: {fileID: 100100000, guid: 941fac9249b6442cdb2d3f23472128e2, type: 3} +--- !u!4 &611497299 stripped +Transform: + m_CorrespondingSourceObject: {fileID: 1579282987822796750, guid: 941fac9249b6442cdb2d3f23472128e2, + type: 3} + m_PrefabInstance: {fileID: 611497298} + m_PrefabAsset: {fileID: 0} +--- !u!4 &616742102 stripped +Transform: + m_CorrespondingSourceObject: {fileID: 400000, guid: 92bb9994204d1d44cb6223c53e4f84f8, + type: 3} + m_PrefabInstance: {fileID: 1703346254} + m_PrefabAsset: {fileID: 0} +--- !u!4 &636407410 stripped +Transform: + m_CorrespondingSourceObject: {fileID: 400000, guid: dca6189290e8c16479a364fa6d80b6b8, + type: 3} + m_PrefabInstance: {fileID: 978205907} + m_PrefabAsset: {fileID: 0} +--- !u!1001 &638981062 +PrefabInstance: + m_ObjectHideFlags: 0 + serializedVersion: 2 + m_Modification: + m_TransformParent: {fileID: 23283999} + m_Modifications: + - target: {fileID: 100000, guid: 18f9f64257e02ef41831fe2f867cb118, type: 3} + propertyPath: m_Name + value: Horizon + objectReference: {fileID: 0} + - target: {fileID: 100000, guid: 18f9f64257e02ef41831fe2f867cb118, type: 3} + propertyPath: m_StaticEditorFlags + value: 4294967295 + objectReference: {fileID: 0} + - target: {fileID: 100000, guid: 18f9f64257e02ef41831fe2f867cb118, type: 3} + propertyPath: m_IsActive + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 18f9f64257e02ef41831fe2f867cb118, type: 3} + propertyPath: m_LocalPosition.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 18f9f64257e02ef41831fe2f867cb118, type: 3} + propertyPath: m_LocalPosition.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 18f9f64257e02ef41831fe2f867cb118, type: 3} + propertyPath: m_LocalPosition.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 18f9f64257e02ef41831fe2f867cb118, type: 3} + propertyPath: m_LocalRotation.x + value: -0 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 18f9f64257e02ef41831fe2f867cb118, type: 3} + propertyPath: m_LocalRotation.y + value: -0 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 18f9f64257e02ef41831fe2f867cb118, type: 3} + propertyPath: m_LocalRotation.z + value: -0 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 18f9f64257e02ef41831fe2f867cb118, type: 3} + propertyPath: m_LocalRotation.w + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 18f9f64257e02ef41831fe2f867cb118, type: 3} + propertyPath: m_RootOrder + value: 5 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 18f9f64257e02ef41831fe2f867cb118, type: 3} + propertyPath: m_LocalEulerAnglesHint.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 18f9f64257e02ef41831fe2f867cb118, type: 3} + propertyPath: m_LocalEulerAnglesHint.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 18f9f64257e02ef41831fe2f867cb118, type: 3} + propertyPath: m_LocalEulerAnglesHint.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 18f9f64257e02ef41831fe2f867cb118, type: 3} + propertyPath: m_LocalScale.x + value: 3.5 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 18f9f64257e02ef41831fe2f867cb118, type: 3} + propertyPath: m_LocalScale.y + value: 2 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 18f9f64257e02ef41831fe2f867cb118, type: 3} + propertyPath: m_LocalScale.z + value: 3.5 + objectReference: {fileID: 0} + - target: {fileID: 2300000, guid: 18f9f64257e02ef41831fe2f867cb118, type: 3} + propertyPath: m_Materials.Array.data[0] + value: + objectReference: {fileID: 2100000, guid: 5304db1f3e113764fae919908740f4ba, type: 2} + m_RemovedComponents: [] + m_SourcePrefab: {fileID: 100100000, guid: 18f9f64257e02ef41831fe2f867cb118, type: 3} +--- !u!4 &638981063 stripped +Transform: + m_CorrespondingSourceObject: {fileID: 400000, guid: 18f9f64257e02ef41831fe2f867cb118, + type: 3} + m_PrefabInstance: {fileID: 638981062} + m_PrefabAsset: {fileID: 0} +--- !u!4 &639990488 stripped +Transform: + m_CorrespondingSourceObject: {fileID: 40299501215355906, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + m_PrefabInstance: {fileID: 393423008} + m_PrefabAsset: {fileID: 0} +--- !u!1001 &648339626 +PrefabInstance: + m_ObjectHideFlags: 0 + serializedVersion: 2 + m_Modification: + m_TransformParent: {fileID: 807038590} + m_Modifications: + - target: {fileID: 40299501215355906, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_RootOrder + value: 33 + objectReference: {fileID: 0} + - target: {fileID: 40299501215355906, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_LocalPosition.x + value: 24.185757 + objectReference: {fileID: 0} + - target: {fileID: 40299501215355906, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_LocalPosition.y + value: -0.15767384 + objectReference: {fileID: 0} + - target: {fileID: 40299501215355906, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_LocalPosition.z + value: -67.46382 + objectReference: {fileID: 0} + - target: {fileID: 40299501215355906, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_LocalRotation.y + value: -0 + objectReference: {fileID: 0} + - target: {fileID: 40299501215355906, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_LocalRotation.z + value: -0 + objectReference: {fileID: 0} + - target: {fileID: 40299501215355906, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_LocalRotation.w + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 40299501215355906, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_LocalEulerAnglesHint.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 40299501215355906, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_LocalScale.x + value: 2.3006 + objectReference: {fileID: 0} + - target: {fileID: 40299501215355906, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_LocalScale.y + value: 2.3006 + objectReference: {fileID: 0} + - target: {fileID: 40299501215355906, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_LocalScale.z + value: 2.3006 + objectReference: {fileID: 0} + - target: {fileID: 40299501215355906, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_LocalRotation.x + value: -0 + objectReference: {fileID: 0} + - target: {fileID: 2057621013554333680, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_LocalPosition.x + value: 60.6 + objectReference: {fileID: 0} + - target: {fileID: 2057621013554333680, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_LocalPosition.y + value: -1.04 + objectReference: {fileID: 0} + - target: {fileID: 2057621013554333680, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_LocalPosition.z + value: -31.4 + objectReference: {fileID: 0} + - target: {fileID: 2057621013554333680, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_LocalRotation.x + value: -0 + objectReference: {fileID: 0} + - target: {fileID: 2057621013554333680, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_LocalRotation.y + value: -0 + objectReference: {fileID: 0} + - target: {fileID: 2057621013554333680, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_LocalRotation.z + value: -0 + objectReference: {fileID: 0} + - target: {fileID: 2057621013554333680, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_LocalRotation.w + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 2057621013554333680, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_RootOrder + value: 37 + objectReference: {fileID: 0} + - target: {fileID: 2057621013554333680, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_LocalEulerAnglesHint.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 2057621013554333680, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_LocalEulerAnglesHint.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 2057621013554333680, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_LocalEulerAnglesHint.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 2057621013554333680, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_LocalScale.x + value: 2.3006 + objectReference: {fileID: 0} + - target: {fileID: 2057621013554333680, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_LocalScale.y + value: 2.3006 + objectReference: {fileID: 0} + - target: {fileID: 2057621013554333680, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_LocalScale.z + value: 2.3006 + objectReference: {fileID: 0} + - target: {fileID: 2057621013554699216, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_Name + value: StoneVariant2 (27) + objectReference: {fileID: 0} + - target: {fileID: 2057621013556626704, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_Materials.Array.data[0] + value: + objectReference: {fileID: 2100000, guid: d11179e416c9b394c8176d36a0dcae52, type: 2} + - target: {fileID: 2057621013557757904, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_Mesh + value: + objectReference: {fileID: 4300002, guid: 5e6dd9e33a8a1c748a582c8565e5f95f, type: 3} + - target: {fileID: 6182327852661155845, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_Name + value: StoneRound (20) + objectReference: {fileID: 0} + m_RemovedComponents: [] + m_SourcePrefab: {fileID: 100100000, guid: 230dd9257fca2c249b555f6edd3c8e14, type: 3} +--- !u!4 &648339627 stripped +Transform: + m_CorrespondingSourceObject: {fileID: 40299501215355906, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + m_PrefabInstance: {fileID: 648339626} + m_PrefabAsset: {fileID: 0} +--- !u!4 &658455613 stripped +Transform: + m_CorrespondingSourceObject: {fileID: 40299501215355906, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + m_PrefabInstance: {fileID: 1349346426} + m_PrefabAsset: {fileID: 0} +--- !u!4 &661043607 stripped +Transform: + m_CorrespondingSourceObject: {fileID: 40299501215355906, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + m_PrefabInstance: {fileID: 244402944} + m_PrefabAsset: {fileID: 0} +--- !u!1001 &664799114 +PrefabInstance: + m_ObjectHideFlags: 0 + serializedVersion: 2 + m_Modification: + m_TransformParent: {fileID: 1889916056} + m_Modifications: + - target: {fileID: 100012, guid: 0829d76c4806eb54b8b2f17eec10f4e6, type: 3} + propertyPath: m_Name + value: Cloud (11) + objectReference: {fileID: 0} + - target: {fileID: 100012, guid: 0829d76c4806eb54b8b2f17eec10f4e6, type: 3} + propertyPath: m_StaticEditorFlags + value: 4294967295 + objectReference: {fileID: 0} + - target: {fileID: 400012, guid: 0829d76c4806eb54b8b2f17eec10f4e6, type: 3} + propertyPath: m_LocalPosition.x + value: 447.79077 + objectReference: {fileID: 0} + - target: {fileID: 400012, guid: 0829d76c4806eb54b8b2f17eec10f4e6, type: 3} + propertyPath: m_LocalPosition.y + value: 6.531336 + objectReference: {fileID: 0} + - target: {fileID: 400012, guid: 0829d76c4806eb54b8b2f17eec10f4e6, type: 3} + propertyPath: m_LocalPosition.z + value: -107.380775 + objectReference: {fileID: 0} + - target: {fileID: 400012, guid: 0829d76c4806eb54b8b2f17eec10f4e6, type: 3} + propertyPath: m_LocalRotation.x + value: -0 + objectReference: {fileID: 0} + - target: {fileID: 400012, guid: 0829d76c4806eb54b8b2f17eec10f4e6, type: 3} + propertyPath: m_LocalRotation.y + value: 0.80621105 + objectReference: {fileID: 0} + - target: {fileID: 400012, guid: 0829d76c4806eb54b8b2f17eec10f4e6, type: 3} + propertyPath: m_LocalRotation.z + value: -0 + objectReference: {fileID: 0} + - target: {fileID: 400012, guid: 0829d76c4806eb54b8b2f17eec10f4e6, type: 3} + propertyPath: m_LocalRotation.w + value: 0.591628 + objectReference: {fileID: 0} + - target: {fileID: 400012, guid: 0829d76c4806eb54b8b2f17eec10f4e6, type: 3} + propertyPath: m_RootOrder + value: 11 + objectReference: {fileID: 0} + - target: {fileID: 400012, guid: 0829d76c4806eb54b8b2f17eec10f4e6, type: 3} + propertyPath: m_LocalEulerAnglesHint.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 400012, guid: 0829d76c4806eb54b8b2f17eec10f4e6, type: 3} + propertyPath: m_LocalEulerAnglesHint.y + value: 107.455 + objectReference: {fileID: 0} + - target: {fileID: 400012, guid: 0829d76c4806eb54b8b2f17eec10f4e6, type: 3} + propertyPath: m_LocalEulerAnglesHint.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 400012, guid: 0829d76c4806eb54b8b2f17eec10f4e6, type: 3} + propertyPath: m_LocalScale.x + value: 6.4706187 + objectReference: {fileID: 0} + - target: {fileID: 400012, guid: 0829d76c4806eb54b8b2f17eec10f4e6, type: 3} + propertyPath: m_LocalScale.y + value: 6.4706197 + objectReference: {fileID: 0} + - target: {fileID: 400012, guid: 0829d76c4806eb54b8b2f17eec10f4e6, type: 3} + propertyPath: m_LocalScale.z + value: 6.4706187 + objectReference: {fileID: 0} + - target: {fileID: 2300000, guid: 0829d76c4806eb54b8b2f17eec10f4e6, type: 3} + propertyPath: m_Materials.Array.data[0] + value: + objectReference: {fileID: 2100000, guid: c1fb7d3a27a67b947bb2b2ab391072b0, type: 2} + - target: {fileID: 2300002, guid: 0829d76c4806eb54b8b2f17eec10f4e6, type: 3} + propertyPath: m_Materials.Array.data[0] + value: + objectReference: {fileID: 2100000, guid: c1fb7d3a27a67b947bb2b2ab391072b0, type: 2} + - target: {fileID: 2300004, guid: 0829d76c4806eb54b8b2f17eec10f4e6, type: 3} + propertyPath: m_Materials.Array.data[0] + value: + objectReference: {fileID: 2100000, guid: c1fb7d3a27a67b947bb2b2ab391072b0, type: 2} + - target: {fileID: 2300006, guid: 0829d76c4806eb54b8b2f17eec10f4e6, type: 3} + propertyPath: m_Materials.Array.data[0] + value: + objectReference: {fileID: 2100000, guid: c1fb7d3a27a67b947bb2b2ab391072b0, type: 2} + - target: {fileID: 2300008, guid: 0829d76c4806eb54b8b2f17eec10f4e6, type: 3} + propertyPath: m_Materials.Array.data[0] + value: + objectReference: {fileID: 2100000, guid: c1fb7d3a27a67b947bb2b2ab391072b0, type: 2} + - target: {fileID: 2300010, guid: 0829d76c4806eb54b8b2f17eec10f4e6, type: 3} + propertyPath: m_Materials.Array.data[0] + value: + objectReference: {fileID: 2100000, guid: c1fb7d3a27a67b947bb2b2ab391072b0, type: 2} + - target: {fileID: 2300012, guid: 0829d76c4806eb54b8b2f17eec10f4e6, type: 3} + propertyPath: m_Materials.Array.data[0] + value: + objectReference: {fileID: 2100000, guid: d11179e416c9b394c8176d36a0dcae52, type: 2} + m_RemovedComponents: [] + m_SourcePrefab: {fileID: 100100000, guid: 0829d76c4806eb54b8b2f17eec10f4e6, type: 3} +--- !u!4 &668239317 stripped +Transform: + m_CorrespondingSourceObject: {fileID: 400000, guid: dca6189290e8c16479a364fa6d80b6b8, + type: 3} + m_PrefabInstance: {fileID: 119561715} + m_PrefabAsset: {fileID: 0} +--- !u!1001 &679038435 +PrefabInstance: + m_ObjectHideFlags: 0 + serializedVersion: 2 + m_Modification: + m_TransformParent: {fileID: 1889916056} + m_Modifications: + - target: {fileID: 100012, guid: 0829d76c4806eb54b8b2f17eec10f4e6, type: 3} + propertyPath: m_Name + value: Cloud (4) + objectReference: {fileID: 0} + - target: {fileID: 100012, guid: 0829d76c4806eb54b8b2f17eec10f4e6, type: 3} + propertyPath: m_StaticEditorFlags + value: 4294967295 + objectReference: {fileID: 0} + - target: {fileID: 400012, guid: 0829d76c4806eb54b8b2f17eec10f4e6, type: 3} + propertyPath: m_LocalPosition.x + value: 29 + objectReference: {fileID: 0} + - target: {fileID: 400012, guid: 0829d76c4806eb54b8b2f17eec10f4e6, type: 3} + propertyPath: m_LocalPosition.y + value: 66 + objectReference: {fileID: 0} + - target: {fileID: 400012, guid: 0829d76c4806eb54b8b2f17eec10f4e6, type: 3} + propertyPath: m_LocalPosition.z + value: -252 + objectReference: {fileID: 0} + - target: {fileID: 400012, guid: 0829d76c4806eb54b8b2f17eec10f4e6, type: 3} + propertyPath: m_LocalRotation.x + value: -0 + objectReference: {fileID: 0} + - target: {fileID: 400012, guid: 0829d76c4806eb54b8b2f17eec10f4e6, type: 3} + propertyPath: m_LocalRotation.y + value: -0.9815829 + objectReference: {fileID: 0} + - target: {fileID: 400012, guid: 0829d76c4806eb54b8b2f17eec10f4e6, type: 3} + propertyPath: m_LocalRotation.z + value: -0 + objectReference: {fileID: 0} + - target: {fileID: 400012, guid: 0829d76c4806eb54b8b2f17eec10f4e6, type: 3} + propertyPath: m_LocalRotation.w + value: -0.191037 + objectReference: {fileID: 0} + - target: {fileID: 400012, guid: 0829d76c4806eb54b8b2f17eec10f4e6, type: 3} + propertyPath: m_RootOrder + value: 4 + objectReference: {fileID: 0} + - target: {fileID: 400012, guid: 0829d76c4806eb54b8b2f17eec10f4e6, type: 3} + propertyPath: m_LocalEulerAnglesHint.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 400012, guid: 0829d76c4806eb54b8b2f17eec10f4e6, type: 3} + propertyPath: m_LocalEulerAnglesHint.y + value: -202.027 + objectReference: {fileID: 0} + - target: {fileID: 400012, guid: 0829d76c4806eb54b8b2f17eec10f4e6, type: 3} + propertyPath: m_LocalEulerAnglesHint.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 400012, guid: 0829d76c4806eb54b8b2f17eec10f4e6, type: 3} + propertyPath: m_LocalScale.x + value: 6.4706454 + objectReference: {fileID: 0} + - target: {fileID: 400012, guid: 0829d76c4806eb54b8b2f17eec10f4e6, type: 3} + propertyPath: m_LocalScale.y + value: 6.4706197 + objectReference: {fileID: 0} + - target: {fileID: 400012, guid: 0829d76c4806eb54b8b2f17eec10f4e6, type: 3} + propertyPath: m_LocalScale.z + value: 6.4706454 + objectReference: {fileID: 0} + - target: {fileID: 2300000, guid: 0829d76c4806eb54b8b2f17eec10f4e6, type: 3} + propertyPath: m_Materials.Array.data[0] + value: + objectReference: {fileID: 2100000, guid: c1fb7d3a27a67b947bb2b2ab391072b0, type: 2} + - target: {fileID: 2300002, guid: 0829d76c4806eb54b8b2f17eec10f4e6, type: 3} + propertyPath: m_Materials.Array.data[0] + value: + objectReference: {fileID: 2100000, guid: c1fb7d3a27a67b947bb2b2ab391072b0, type: 2} + - target: {fileID: 2300004, guid: 0829d76c4806eb54b8b2f17eec10f4e6, type: 3} + propertyPath: m_Materials.Array.data[0] + value: + objectReference: {fileID: 2100000, guid: c1fb7d3a27a67b947bb2b2ab391072b0, type: 2} + - target: {fileID: 2300006, guid: 0829d76c4806eb54b8b2f17eec10f4e6, type: 3} + propertyPath: m_Materials.Array.data[0] + value: + objectReference: {fileID: 2100000, guid: c1fb7d3a27a67b947bb2b2ab391072b0, type: 2} + - target: {fileID: 2300008, guid: 0829d76c4806eb54b8b2f17eec10f4e6, type: 3} + propertyPath: m_Materials.Array.data[0] + value: + objectReference: {fileID: 2100000, guid: c1fb7d3a27a67b947bb2b2ab391072b0, type: 2} + - target: {fileID: 2300010, guid: 0829d76c4806eb54b8b2f17eec10f4e6, type: 3} + propertyPath: m_Materials.Array.data[0] + value: + objectReference: {fileID: 2100000, guid: c1fb7d3a27a67b947bb2b2ab391072b0, type: 2} + - target: {fileID: 2300012, guid: 0829d76c4806eb54b8b2f17eec10f4e6, type: 3} + propertyPath: m_Materials.Array.data[0] + value: + objectReference: {fileID: 2100000, guid: d11179e416c9b394c8176d36a0dcae52, type: 2} + m_RemovedComponents: [] + m_SourcePrefab: {fileID: 100100000, guid: 0829d76c4806eb54b8b2f17eec10f4e6, type: 3} +--- !u!4 &679038436 stripped +Transform: + m_CorrespondingSourceObject: {fileID: 400012, guid: 0829d76c4806eb54b8b2f17eec10f4e6, + type: 3} + m_PrefabInstance: {fileID: 679038435} + m_PrefabAsset: {fileID: 0} +--- !u!1001 &708546276 +PrefabInstance: + m_ObjectHideFlags: 0 + serializedVersion: 2 + m_Modification: + m_TransformParent: {fileID: 1889916056} + m_Modifications: + - target: {fileID: 100012, guid: 0829d76c4806eb54b8b2f17eec10f4e6, type: 3} + propertyPath: m_Name + value: Cloud (2) + objectReference: {fileID: 0} + - target: {fileID: 100012, guid: 0829d76c4806eb54b8b2f17eec10f4e6, type: 3} + propertyPath: m_StaticEditorFlags + value: 4294967295 + objectReference: {fileID: 0} + - target: {fileID: 400012, guid: 0829d76c4806eb54b8b2f17eec10f4e6, type: 3} + propertyPath: m_LocalPosition.x + value: -576.99994 + objectReference: {fileID: 0} + - target: {fileID: 400012, guid: 0829d76c4806eb54b8b2f17eec10f4e6, type: 3} + propertyPath: m_LocalPosition.y + value: 71 + objectReference: {fileID: 0} + - target: {fileID: 400012, guid: 0829d76c4806eb54b8b2f17eec10f4e6, type: 3} + propertyPath: m_LocalPosition.z + value: 96 + objectReference: {fileID: 0} + - target: {fileID: 400012, guid: 0829d76c4806eb54b8b2f17eec10f4e6, type: 3} + propertyPath: m_LocalRotation.x + value: -0 + objectReference: {fileID: 0} + - target: {fileID: 400012, guid: 0829d76c4806eb54b8b2f17eec10f4e6, type: 3} + propertyPath: m_LocalRotation.y + value: -0.68190056 + objectReference: {fileID: 0} + - target: {fileID: 400012, guid: 0829d76c4806eb54b8b2f17eec10f4e6, type: 3} + propertyPath: m_LocalRotation.z + value: -0 + objectReference: {fileID: 0} + - target: {fileID: 400012, guid: 0829d76c4806eb54b8b2f17eec10f4e6, type: 3} + propertyPath: m_LocalRotation.w + value: 0.7314449 + objectReference: {fileID: 0} + - target: {fileID: 400012, guid: 0829d76c4806eb54b8b2f17eec10f4e6, type: 3} + propertyPath: m_RootOrder + value: 2 + objectReference: {fileID: 0} + - target: {fileID: 400012, guid: 0829d76c4806eb54b8b2f17eec10f4e6, type: 3} + propertyPath: m_LocalEulerAnglesHint.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 400012, guid: 0829d76c4806eb54b8b2f17eec10f4e6, type: 3} + propertyPath: m_LocalEulerAnglesHint.y + value: -85.985 + objectReference: {fileID: 0} + - target: {fileID: 400012, guid: 0829d76c4806eb54b8b2f17eec10f4e6, type: 3} + propertyPath: m_LocalEulerAnglesHint.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 400012, guid: 0829d76c4806eb54b8b2f17eec10f4e6, type: 3} + propertyPath: m_LocalScale.x + value: 6.4706244 + objectReference: {fileID: 0} + - target: {fileID: 400012, guid: 0829d76c4806eb54b8b2f17eec10f4e6, type: 3} + propertyPath: m_LocalScale.y + value: 6.4706197 + objectReference: {fileID: 0} + - target: {fileID: 400012, guid: 0829d76c4806eb54b8b2f17eec10f4e6, type: 3} + propertyPath: m_LocalScale.z + value: 6.4706244 + objectReference: {fileID: 0} + - target: {fileID: 2300000, guid: 0829d76c4806eb54b8b2f17eec10f4e6, type: 3} + propertyPath: m_Materials.Array.data[0] + value: + objectReference: {fileID: 2100000, guid: c1fb7d3a27a67b947bb2b2ab391072b0, type: 2} + - target: {fileID: 2300002, guid: 0829d76c4806eb54b8b2f17eec10f4e6, type: 3} + propertyPath: m_Materials.Array.data[0] + value: + objectReference: {fileID: 2100000, guid: c1fb7d3a27a67b947bb2b2ab391072b0, type: 2} + - target: {fileID: 2300004, guid: 0829d76c4806eb54b8b2f17eec10f4e6, type: 3} + propertyPath: m_Materials.Array.data[0] + value: + objectReference: {fileID: 2100000, guid: c1fb7d3a27a67b947bb2b2ab391072b0, type: 2} + - target: {fileID: 2300006, guid: 0829d76c4806eb54b8b2f17eec10f4e6, type: 3} + propertyPath: m_Materials.Array.data[0] + value: + objectReference: {fileID: 2100000, guid: c1fb7d3a27a67b947bb2b2ab391072b0, type: 2} + - target: {fileID: 2300008, guid: 0829d76c4806eb54b8b2f17eec10f4e6, type: 3} + propertyPath: m_Materials.Array.data[0] + value: + objectReference: {fileID: 2100000, guid: c1fb7d3a27a67b947bb2b2ab391072b0, type: 2} + - target: {fileID: 2300010, guid: 0829d76c4806eb54b8b2f17eec10f4e6, type: 3} + propertyPath: m_Materials.Array.data[0] + value: + objectReference: {fileID: 2100000, guid: c1fb7d3a27a67b947bb2b2ab391072b0, type: 2} + - target: {fileID: 2300012, guid: 0829d76c4806eb54b8b2f17eec10f4e6, type: 3} + propertyPath: m_Materials.Array.data[0] + value: + objectReference: {fileID: 2100000, guid: d11179e416c9b394c8176d36a0dcae52, type: 2} + m_RemovedComponents: [] + m_SourcePrefab: {fileID: 100100000, guid: 0829d76c4806eb54b8b2f17eec10f4e6, type: 3} +--- !u!4 &708546277 stripped +Transform: + m_CorrespondingSourceObject: {fileID: 400012, guid: 0829d76c4806eb54b8b2f17eec10f4e6, + type: 3} + m_PrefabInstance: {fileID: 708546276} + m_PrefabAsset: {fileID: 0} +--- !u!4 &715507816 stripped +Transform: + m_CorrespondingSourceObject: {fileID: 400000, guid: dca6189290e8c16479a364fa6d80b6b8, + type: 3} + m_PrefabInstance: {fileID: 1931383003} + m_PrefabAsset: {fileID: 0} +--- !u!1001 &718790844 +PrefabInstance: + m_ObjectHideFlags: 0 + serializedVersion: 2 + m_Modification: + m_TransformParent: {fileID: 807038590} + m_Modifications: + - target: {fileID: 40299501215355906, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_RootOrder + value: 36 + objectReference: {fileID: 0} + - target: {fileID: 40299501215355906, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_LocalPosition.x + value: 24.285755 + objectReference: {fileID: 0} + - target: {fileID: 40299501215355906, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_LocalPosition.y + value: 0.020326138 + objectReference: {fileID: 0} + - target: {fileID: 40299501215355906, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_LocalPosition.z + value: 70.236176 + objectReference: {fileID: 0} + - target: {fileID: 40299501215355906, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_LocalRotation.y + value: 0.9071285 + objectReference: {fileID: 0} + - target: {fileID: 40299501215355906, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_LocalRotation.z + value: -0 + objectReference: {fileID: 0} + - target: {fileID: 40299501215355906, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_LocalRotation.w + value: 0.42085382 + objectReference: {fileID: 0} + - target: {fileID: 40299501215355906, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_LocalEulerAnglesHint.y + value: 130.223 + objectReference: {fileID: 0} + - target: {fileID: 40299501215355906, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_LocalScale.x + value: 1.2849009 + objectReference: {fileID: 0} + - target: {fileID: 40299501215355906, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_LocalScale.y + value: 1.2849 + objectReference: {fileID: 0} + - target: {fileID: 40299501215355906, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_LocalScale.z + value: 1.2849009 + objectReference: {fileID: 0} + - target: {fileID: 40299501215355906, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_LocalRotation.x + value: -0 + objectReference: {fileID: 0} + - target: {fileID: 2057621013554333680, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_LocalPosition.x + value: 60.6 + objectReference: {fileID: 0} + - target: {fileID: 2057621013554333680, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_LocalPosition.y + value: -1.04 + objectReference: {fileID: 0} + - target: {fileID: 2057621013554333680, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_LocalPosition.z + value: -31.4 + objectReference: {fileID: 0} + - target: {fileID: 2057621013554333680, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_LocalRotation.x + value: -0 + objectReference: {fileID: 0} + - target: {fileID: 2057621013554333680, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_LocalRotation.y + value: -0 + objectReference: {fileID: 0} + - target: {fileID: 2057621013554333680, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_LocalRotation.z + value: -0 + objectReference: {fileID: 0} + - target: {fileID: 2057621013554333680, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_LocalRotation.w + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 2057621013554333680, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_RootOrder + value: 37 + objectReference: {fileID: 0} + - target: {fileID: 2057621013554333680, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_LocalEulerAnglesHint.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 2057621013554333680, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_LocalEulerAnglesHint.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 2057621013554333680, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_LocalEulerAnglesHint.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 2057621013554333680, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_LocalScale.x + value: 2.3006 + objectReference: {fileID: 0} + - target: {fileID: 2057621013554333680, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_LocalScale.y + value: 2.3006 + objectReference: {fileID: 0} + - target: {fileID: 2057621013554333680, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_LocalScale.z + value: 2.3006 + objectReference: {fileID: 0} + - target: {fileID: 2057621013554699216, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_Name + value: StoneVariant2 (27) + objectReference: {fileID: 0} + - target: {fileID: 2057621013556626704, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_Materials.Array.data[0] + value: + objectReference: {fileID: 2100000, guid: d11179e416c9b394c8176d36a0dcae52, type: 2} + - target: {fileID: 2057621013557757904, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_Mesh + value: + objectReference: {fileID: 4300002, guid: 5e6dd9e33a8a1c748a582c8565e5f95f, type: 3} + - target: {fileID: 6182327852661155844, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_Materials.Array.data[0] + value: + objectReference: {fileID: 2100000, guid: c99104857011a3d478b482de4b0de308, type: 2} + - target: {fileID: 6182327852661155845, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_Name + value: StoneRound (23) + objectReference: {fileID: 0} + m_RemovedComponents: [] + m_SourcePrefab: {fileID: 100100000, guid: 230dd9257fca2c249b555f6edd3c8e14, type: 3} +--- !u!4 &728358784 stripped +Transform: + m_CorrespondingSourceObject: {fileID: 2497398649778501837, guid: 88017844a1245554fb36a6790969f12e, + type: 3} + m_PrefabInstance: {fileID: 811687083} + m_PrefabAsset: {fileID: 0} +--- !u!1001 &729327319 +PrefabInstance: + m_ObjectHideFlags: 0 + serializedVersion: 2 + m_Modification: + m_TransformParent: {fileID: 77662693} + m_Modifications: + - target: {fileID: 100000, guid: 9f1e50f73a529a448b004add5bec5d80, type: 3} + propertyPath: m_Name + value: TreeBox (1) + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 9f1e50f73a529a448b004add5bec5d80, type: 3} + propertyPath: m_LocalPosition.x + value: -26.882658 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 9f1e50f73a529a448b004add5bec5d80, type: 3} + propertyPath: m_LocalPosition.y + value: -0.46866417 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 9f1e50f73a529a448b004add5bec5d80, type: 3} + propertyPath: m_LocalPosition.z + value: -29.763573 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 9f1e50f73a529a448b004add5bec5d80, type: 3} + propertyPath: m_LocalRotation.x + value: -0 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 9f1e50f73a529a448b004add5bec5d80, type: 3} + propertyPath: m_LocalRotation.y + value: 0.9131142 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 9f1e50f73a529a448b004add5bec5d80, type: 3} + propertyPath: m_LocalRotation.z + value: -0 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 9f1e50f73a529a448b004add5bec5d80, type: 3} + propertyPath: m_LocalRotation.w + value: 0.4077039 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 9f1e50f73a529a448b004add5bec5d80, type: 3} + propertyPath: m_RootOrder + value: 21 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 9f1e50f73a529a448b004add5bec5d80, type: 3} + propertyPath: m_LocalEulerAnglesHint.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 9f1e50f73a529a448b004add5bec5d80, type: 3} + propertyPath: m_LocalEulerAnglesHint.y + value: 131.87901 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 9f1e50f73a529a448b004add5bec5d80, type: 3} + propertyPath: m_LocalEulerAnglesHint.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 9f1e50f73a529a448b004add5bec5d80, type: 3} + propertyPath: m_LocalScale.x + value: 3.1220646 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 9f1e50f73a529a448b004add5bec5d80, type: 3} + propertyPath: m_LocalScale.y + value: 3.1220646 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 9f1e50f73a529a448b004add5bec5d80, type: 3} + propertyPath: m_LocalScale.z + value: 3.1220646 + objectReference: {fileID: 0} + - target: {fileID: 2300000, guid: 9f1e50f73a529a448b004add5bec5d80, type: 3} + propertyPath: m_Materials.Array.data[0] + value: + objectReference: {fileID: 2100000, guid: d11179e416c9b394c8176d36a0dcae52, type: 2} + m_RemovedComponents: [] + m_SourcePrefab: {fileID: 100100000, guid: 9f1e50f73a529a448b004add5bec5d80, type: 3} +--- !u!4 &729327320 stripped +Transform: + m_CorrespondingSourceObject: {fileID: 400000, guid: 9f1e50f73a529a448b004add5bec5d80, + type: 3} + m_PrefabInstance: {fileID: 729327319} + m_PrefabAsset: {fileID: 0} +--- !u!1001 &749586224 +PrefabInstance: + m_ObjectHideFlags: 0 + serializedVersion: 2 + m_Modification: + m_TransformParent: {fileID: 807038590} + m_Modifications: + - target: {fileID: 40299501215355906, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_RootOrder + value: 38 + objectReference: {fileID: 0} + - target: {fileID: 40299501215355906, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_LocalPosition.x + value: 15.7657585 + objectReference: {fileID: 0} + - target: {fileID: 40299501215355906, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_LocalPosition.y + value: -0.15767384 + objectReference: {fileID: 0} + - target: {fileID: 40299501215355906, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_LocalPosition.z + value: -57.543823 + objectReference: {fileID: 0} + - target: {fileID: 40299501215355906, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_LocalRotation.y + value: -0 + objectReference: {fileID: 0} + - target: {fileID: 40299501215355906, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_LocalRotation.z + value: -0 + objectReference: {fileID: 0} + - target: {fileID: 40299501215355906, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_LocalRotation.w + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 40299501215355906, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_LocalEulerAnglesHint.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 40299501215355906, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_LocalScale.x + value: 2.3006 + objectReference: {fileID: 0} + - target: {fileID: 40299501215355906, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_LocalScale.y + value: 2.3006 + objectReference: {fileID: 0} + - target: {fileID: 40299501215355906, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_LocalScale.z + value: 2.3006 + objectReference: {fileID: 0} + - target: {fileID: 40299501215355906, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_LocalRotation.x + value: -0 + objectReference: {fileID: 0} + - target: {fileID: 2057621013554333680, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_LocalPosition.x + value: 60.6 + objectReference: {fileID: 0} + - target: {fileID: 2057621013554333680, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_LocalPosition.y + value: -1.04 + objectReference: {fileID: 0} + - target: {fileID: 2057621013554333680, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_LocalPosition.z + value: -31.4 + objectReference: {fileID: 0} + - target: {fileID: 2057621013554333680, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_LocalRotation.x + value: -0 + objectReference: {fileID: 0} + - target: {fileID: 2057621013554333680, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_LocalRotation.y + value: -0 + objectReference: {fileID: 0} + - target: {fileID: 2057621013554333680, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_LocalRotation.z + value: -0 + objectReference: {fileID: 0} + - target: {fileID: 2057621013554333680, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_LocalRotation.w + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 2057621013554333680, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_RootOrder + value: 37 + objectReference: {fileID: 0} + - target: {fileID: 2057621013554333680, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_LocalEulerAnglesHint.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 2057621013554333680, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_LocalEulerAnglesHint.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 2057621013554333680, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_LocalEulerAnglesHint.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 2057621013554333680, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_LocalScale.x + value: 2.3006 + objectReference: {fileID: 0} + - target: {fileID: 2057621013554333680, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_LocalScale.y + value: 2.3006 + objectReference: {fileID: 0} + - target: {fileID: 2057621013554333680, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_LocalScale.z + value: 2.3006 + objectReference: {fileID: 0} + - target: {fileID: 2057621013554699216, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_Name + value: StoneVariant2 (27) + objectReference: {fileID: 0} + - target: {fileID: 2057621013556626704, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_Materials.Array.data[0] + value: + objectReference: {fileID: 2100000, guid: d11179e416c9b394c8176d36a0dcae52, type: 2} + - target: {fileID: 2057621013557757904, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_Mesh + value: + objectReference: {fileID: 4300002, guid: 5e6dd9e33a8a1c748a582c8565e5f95f, type: 3} + - target: {fileID: 6182327852661155845, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_Name + value: StoneRound (7) + objectReference: {fileID: 0} + m_RemovedComponents: [] + m_SourcePrefab: {fileID: 100100000, guid: 230dd9257fca2c249b555f6edd3c8e14, type: 3} +--- !u!4 &749586225 stripped +Transform: + m_CorrespondingSourceObject: {fileID: 40299501215355906, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + m_PrefabInstance: {fileID: 749586224} + m_PrefabAsset: {fileID: 0} +--- !u!114 &779111620 stripped +MonoBehaviour: + m_CorrespondingSourceObject: {fileID: 7751499904472810060, guid: f29c8f9af0e64ab48a6c306b16e4a8fd, + type: 3} + m_PrefabInstance: {fileID: 1348019049} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: e33e70a327b92644fad5763a83b55c50, type: 3} + m_Name: + m_EditorClassIdentifier: +--- !u!1001 &779150868 +PrefabInstance: + m_ObjectHideFlags: 0 + serializedVersion: 2 + m_Modification: + m_TransformParent: {fileID: 77662693} + m_Modifications: + - target: {fileID: 100000, guid: 9f1e50f73a529a448b004add5bec5d80, type: 3} + propertyPath: m_Name + value: TreeBox (8) + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 9f1e50f73a529a448b004add5bec5d80, type: 3} + propertyPath: m_LocalPosition.x + value: 28 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 9f1e50f73a529a448b004add5bec5d80, type: 3} + propertyPath: m_LocalPosition.y + value: -1.1500006 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 9f1e50f73a529a448b004add5bec5d80, type: 3} + propertyPath: m_LocalPosition.z + value: 15 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 9f1e50f73a529a448b004add5bec5d80, type: 3} + propertyPath: m_LocalRotation.x + value: -0 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 9f1e50f73a529a448b004add5bec5d80, type: 3} + propertyPath: m_LocalRotation.y + value: 0.86342466 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 9f1e50f73a529a448b004add5bec5d80, type: 3} + propertyPath: m_LocalRotation.z + value: -0 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 9f1e50f73a529a448b004add5bec5d80, type: 3} + propertyPath: m_LocalRotation.w + value: 0.5044778 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 9f1e50f73a529a448b004add5bec5d80, type: 3} + propertyPath: m_RootOrder + value: 28 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 9f1e50f73a529a448b004add5bec5d80, type: 3} + propertyPath: m_LocalEulerAnglesHint.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 9f1e50f73a529a448b004add5bec5d80, type: 3} + propertyPath: m_LocalEulerAnglesHint.y + value: 119.407005 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 9f1e50f73a529a448b004add5bec5d80, type: 3} + propertyPath: m_LocalEulerAnglesHint.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 9f1e50f73a529a448b004add5bec5d80, type: 3} + propertyPath: m_LocalScale.x + value: 4.4788113 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 9f1e50f73a529a448b004add5bec5d80, type: 3} + propertyPath: m_LocalScale.y + value: 4.4788113 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 9f1e50f73a529a448b004add5bec5d80, type: 3} + propertyPath: m_LocalScale.z + value: 4.4788113 + objectReference: {fileID: 0} + - target: {fileID: 2300000, guid: 9f1e50f73a529a448b004add5bec5d80, type: 3} + propertyPath: m_Materials.Array.data[0] + value: + objectReference: {fileID: 2100000, guid: c99104857011a3d478b482de4b0de308, type: 2} + m_RemovedComponents: [] + m_SourcePrefab: {fileID: 100100000, guid: 9f1e50f73a529a448b004add5bec5d80, type: 3} +--- !u!4 &779150869 stripped +Transform: + m_CorrespondingSourceObject: {fileID: 400000, guid: 9f1e50f73a529a448b004add5bec5d80, + type: 3} + m_PrefabInstance: {fileID: 779150868} + m_PrefabAsset: {fileID: 0} +--- !u!4 &781479590 stripped +Transform: + m_CorrespondingSourceObject: {fileID: 400000, guid: 9f1e50f73a529a448b004add5bec5d80, + type: 3} + m_PrefabInstance: {fileID: 2070064943} + m_PrefabAsset: {fileID: 0} +--- !u!1001 &793644370 +PrefabInstance: + m_ObjectHideFlags: 0 + serializedVersion: 2 + m_Modification: + m_TransformParent: {fileID: 77662693} + m_Modifications: + - target: {fileID: 100000, guid: 9f1e50f73a529a448b004add5bec5d80, type: 3} + propertyPath: m_Name + value: TreeBox (7) + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 9f1e50f73a529a448b004add5bec5d80, type: 3} + propertyPath: m_LocalPosition.x + value: -10.162209 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 9f1e50f73a529a448b004add5bec5d80, type: 3} + propertyPath: m_LocalPosition.y + value: -1.2686644 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 9f1e50f73a529a448b004add5bec5d80, type: 3} + propertyPath: m_LocalPosition.z + value: -57.633774 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 9f1e50f73a529a448b004add5bec5d80, type: 3} + propertyPath: m_LocalRotation.x + value: -0 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 9f1e50f73a529a448b004add5bec5d80, type: 3} + propertyPath: m_LocalRotation.y + value: 0.31272215 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 9f1e50f73a529a448b004add5bec5d80, type: 3} + propertyPath: m_LocalRotation.z + value: -0 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 9f1e50f73a529a448b004add5bec5d80, type: 3} + propertyPath: m_LocalRotation.w + value: 0.94984466 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 9f1e50f73a529a448b004add5bec5d80, type: 3} + propertyPath: m_RootOrder + value: 27 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 9f1e50f73a529a448b004add5bec5d80, type: 3} + propertyPath: m_LocalEulerAnglesHint.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 9f1e50f73a529a448b004add5bec5d80, type: 3} + propertyPath: m_LocalEulerAnglesHint.y + value: 36.447002 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 9f1e50f73a529a448b004add5bec5d80, type: 3} + propertyPath: m_LocalEulerAnglesHint.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 9f1e50f73a529a448b004add5bec5d80, type: 3} + propertyPath: m_LocalScale.x + value: 4.120429 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 9f1e50f73a529a448b004add5bec5d80, type: 3} + propertyPath: m_LocalScale.y + value: 4.1204286 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 9f1e50f73a529a448b004add5bec5d80, type: 3} + propertyPath: m_LocalScale.z + value: 4.120429 + objectReference: {fileID: 0} + - target: {fileID: 2300000, guid: 9f1e50f73a529a448b004add5bec5d80, type: 3} + propertyPath: m_Materials.Array.data[0] + value: + objectReference: {fileID: 2100000, guid: d11179e416c9b394c8176d36a0dcae52, type: 2} + m_RemovedComponents: [] + m_SourcePrefab: {fileID: 100100000, guid: 9f1e50f73a529a448b004add5bec5d80, type: 3} +--- !u!4 &793644371 stripped +Transform: + m_CorrespondingSourceObject: {fileID: 400000, guid: 9f1e50f73a529a448b004add5bec5d80, + type: 3} + m_PrefabInstance: {fileID: 793644370} + m_PrefabAsset: {fileID: 0} +--- !u!1001 &801682767 +PrefabInstance: + m_ObjectHideFlags: 0 + serializedVersion: 2 + m_Modification: + m_TransformParent: {fileID: 286898288} + m_Modifications: + - target: {fileID: 100000, guid: 92bb9994204d1d44cb6223c53e4f84f8, type: 3} + propertyPath: m_Name + value: Hill (4) + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 92bb9994204d1d44cb6223c53e4f84f8, type: 3} + propertyPath: m_LocalPosition.x + value: 75.339874 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 92bb9994204d1d44cb6223c53e4f84f8, type: 3} + propertyPath: m_LocalPosition.y + value: -1.0859046 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 92bb9994204d1d44cb6223c53e4f84f8, type: 3} + propertyPath: m_LocalPosition.z + value: 31.29065 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 92bb9994204d1d44cb6223c53e4f84f8, type: 3} + propertyPath: m_LocalRotation.x + value: -0 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 92bb9994204d1d44cb6223c53e4f84f8, type: 3} + propertyPath: m_LocalRotation.y + value: -0 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 92bb9994204d1d44cb6223c53e4f84f8, type: 3} + propertyPath: m_LocalRotation.z + value: -0 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 92bb9994204d1d44cb6223c53e4f84f8, type: 3} + propertyPath: m_LocalRotation.w + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 92bb9994204d1d44cb6223c53e4f84f8, type: 3} + propertyPath: m_RootOrder + value: 4 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 92bb9994204d1d44cb6223c53e4f84f8, type: 3} + propertyPath: m_LocalEulerAnglesHint.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 92bb9994204d1d44cb6223c53e4f84f8, type: 3} + propertyPath: m_LocalEulerAnglesHint.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 92bb9994204d1d44cb6223c53e4f84f8, type: 3} + propertyPath: m_LocalEulerAnglesHint.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 92bb9994204d1d44cb6223c53e4f84f8, type: 3} + propertyPath: m_LocalScale.x + value: 5.13891 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 92bb9994204d1d44cb6223c53e4f84f8, type: 3} + propertyPath: m_LocalScale.y + value: 6.559221 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 92bb9994204d1d44cb6223c53e4f84f8, type: 3} + propertyPath: m_LocalScale.z + value: 5.13891 + objectReference: {fileID: 0} + m_RemovedComponents: [] + m_SourcePrefab: {fileID: 100100000, guid: 92bb9994204d1d44cb6223c53e4f84f8, type: 3} +--- !u!1001 &802795529 +PrefabInstance: + m_ObjectHideFlags: 0 + serializedVersion: 2 + m_Modification: + m_TransformParent: {fileID: 77662693} + m_Modifications: + - target: {fileID: 100000, guid: 9f1e50f73a529a448b004add5bec5d80, type: 3} + propertyPath: m_Name + value: TreeBox (16) + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 9f1e50f73a529a448b004add5bec5d80, type: 3} + propertyPath: m_LocalPosition.x + value: 45.89078 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 9f1e50f73a529a448b004add5bec5d80, type: 3} + propertyPath: m_LocalPosition.y + value: 9 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 9f1e50f73a529a448b004add5bec5d80, type: 3} + propertyPath: m_LocalPosition.z + value: 85.71922 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 9f1e50f73a529a448b004add5bec5d80, type: 3} + propertyPath: m_LocalRotation.x + value: -0.12486496 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 9f1e50f73a529a448b004add5bec5d80, type: 3} + propertyPath: m_LocalRotation.y + value: 0.6298799 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 9f1e50f73a529a448b004add5bec5d80, type: 3} + propertyPath: m_LocalRotation.z + value: -0.10354612 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 9f1e50f73a529a448b004add5bec5d80, type: 3} + propertyPath: m_LocalRotation.w + value: -0.7595645 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 9f1e50f73a529a448b004add5bec5d80, type: 3} + propertyPath: m_RootOrder + value: 35 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 9f1e50f73a529a448b004add5bec5d80, type: 3} + propertyPath: m_LocalEulerAnglesHint.x + value: 18.671001 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 9f1e50f73a529a448b004add5bec5d80, type: 3} + propertyPath: m_LocalEulerAnglesHint.y + value: 280.66498 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 9f1e50f73a529a448b004add5bec5d80, type: 3} + propertyPath: m_LocalEulerAnglesHint.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 9f1e50f73a529a448b004add5bec5d80, type: 3} + propertyPath: m_LocalScale.x + value: 4.47881 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 9f1e50f73a529a448b004add5bec5d80, type: 3} + propertyPath: m_LocalScale.y + value: 4.4788094 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 9f1e50f73a529a448b004add5bec5d80, type: 3} + propertyPath: m_LocalScale.z + value: 4.478808 + objectReference: {fileID: 0} + - target: {fileID: 2300000, guid: 9f1e50f73a529a448b004add5bec5d80, type: 3} + propertyPath: m_Materials.Array.data[0] + value: + objectReference: {fileID: 2100000, guid: d11179e416c9b394c8176d36a0dcae52, type: 2} + m_RemovedComponents: [] + m_SourcePrefab: {fileID: 100100000, guid: 9f1e50f73a529a448b004add5bec5d80, type: 3} +--- !u!1 &807038589 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 807038590} + m_Layer: 0 + m_Name: Stones + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &807038590 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 807038589} + m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} + m_LocalPosition: {x: 0, y: 0, z: 0} + m_LocalScale: {x: 1, y: 1, z: 1} + m_Children: + - {fileID: 1077540087} + - {fileID: 1131154813} + - {fileID: 1994140137} + - {fileID: 1650421504} + - {fileID: 1955145323} + - {fileID: 163532130} + - {fileID: 1819256880} + - {fileID: 203187189} + - {fileID: 1622123119} + - {fileID: 1006557885} + - {fileID: 1282969509} + - {fileID: 307944688} + - {fileID: 1059123846} + - {fileID: 1281384708} + - {fileID: 598479454} + - {fileID: 2102440739} + - {fileID: 1804671056} + - {fileID: 588385495} + - {fileID: 658455613} + - {fileID: 178641664} + - {fileID: 510474145} + - {fileID: 862090340} + - {fileID: 1332395070} + - {fileID: 256071243} + - {fileID: 639990488} + - {fileID: 891323378} + - {fileID: 2046379624} + - {fileID: 661043607} + - {fileID: 925689491} + - {fileID: 408555098} + - {fileID: 1760155733} + - {fileID: 1848610967} + - {fileID: 1422716774} + - {fileID: 648339627} + - {fileID: 483190912} + - {fileID: 978599813} + - {fileID: 2142695954} + - {fileID: 289270468} + - {fileID: 749586225} + m_Father: {fileID: 23283999} + m_RootOrder: 4 + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!1001 &808917339 +PrefabInstance: + m_ObjectHideFlags: 0 + serializedVersion: 2 + m_Modification: + m_TransformParent: {fileID: 807038590} + m_Modifications: + - target: {fileID: 40299501215355906, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_RootOrder + value: 23 + objectReference: {fileID: 0} + - target: {fileID: 40299501215355906, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_LocalPosition.x + value: -85.24524 + objectReference: {fileID: 0} + - target: {fileID: 40299501215355906, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_LocalPosition.y + value: -0.03467387 + objectReference: {fileID: 0} + - target: {fileID: 40299501215355906, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_LocalPosition.z + value: 91.996185 + objectReference: {fileID: 0} + - target: {fileID: 40299501215355906, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_LocalRotation.y + value: 0.12080388 + objectReference: {fileID: 0} + - target: {fileID: 40299501215355906, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_LocalRotation.z + value: -0 + objectReference: {fileID: 0} + - target: {fileID: 40299501215355906, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_LocalRotation.w + value: 0.9926764 + objectReference: {fileID: 0} + - target: {fileID: 40299501215355906, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_LocalEulerAnglesHint.y + value: 13.877 + objectReference: {fileID: 0} + - target: {fileID: 40299501215355906, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_LocalScale.x + value: 1.993151 + objectReference: {fileID: 0} + - target: {fileID: 40299501215355906, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_LocalScale.y + value: 1.993151 + objectReference: {fileID: 0} + - target: {fileID: 40299501215355906, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_LocalScale.z + value: 1.993151 + objectReference: {fileID: 0} + - target: {fileID: 40299501215355906, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_LocalRotation.x + value: -0 + objectReference: {fileID: 0} + - target: {fileID: 2057621013554333680, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_LocalPosition.x + value: -67.4 + objectReference: {fileID: 0} + - target: {fileID: 2057621013554333680, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_LocalPosition.y + value: -0.91700006 + objectReference: {fileID: 0} + - target: {fileID: 2057621013554333680, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_LocalPosition.z + value: -50.6 + objectReference: {fileID: 0} + - target: {fileID: 2057621013554333680, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_LocalRotation.x + value: -0 + objectReference: {fileID: 0} + - target: {fileID: 2057621013554333680, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_LocalRotation.y + value: 0.120803885 + objectReference: {fileID: 0} + - target: {fileID: 2057621013554333680, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_LocalRotation.z + value: -0 + objectReference: {fileID: 0} + - target: {fileID: 2057621013554333680, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_LocalRotation.w + value: 0.9926764 + objectReference: {fileID: 0} + - target: {fileID: 2057621013554333680, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_RootOrder + value: 25 + objectReference: {fileID: 0} + - target: {fileID: 2057621013554333680, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_LocalEulerAnglesHint.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 2057621013554333680, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_LocalEulerAnglesHint.y + value: 13.877001 + objectReference: {fileID: 0} + - target: {fileID: 2057621013554333680, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_LocalEulerAnglesHint.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 2057621013554333680, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_LocalScale.x + value: 1.9931502 + objectReference: {fileID: 0} + - target: {fileID: 2057621013554333680, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_LocalScale.y + value: 1.99315 + objectReference: {fileID: 0} + - target: {fileID: 2057621013554333680, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_LocalScale.z + value: 1.9931502 + objectReference: {fileID: 0} + - target: {fileID: 2057621013554699216, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_Name + value: StoneVariant2 (13) + objectReference: {fileID: 0} + - target: {fileID: 2057621013556626704, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_Materials.Array.data[0] + value: + objectReference: {fileID: 2100000, guid: d11179e416c9b394c8176d36a0dcae52, type: 2} + - target: {fileID: 2057621013557757904, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_Mesh + value: + objectReference: {fileID: 4300002, guid: 5e6dd9e33a8a1c748a582c8565e5f95f, type: 3} + - target: {fileID: 6182327852661155845, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_Name + value: StoneRound (10) + objectReference: {fileID: 0} + m_RemovedComponents: [] + m_SourcePrefab: {fileID: 100100000, guid: 230dd9257fca2c249b555f6edd3c8e14, type: 3} +--- !u!114 &810926067 stripped +MonoBehaviour: + m_CorrespondingSourceObject: {fileID: 9084884021648134801, guid: 1a27545505a30d6479abf78847244a72, + type: 3} + m_PrefabInstance: {fileID: 954295207} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: c1f49c35970eda249befce5d24455eb3, type: 3} + m_Name: + m_EditorClassIdentifier: +--- !u!1001 &811687083 +PrefabInstance: + m_ObjectHideFlags: 0 + serializedVersion: 2 + m_Modification: + m_TransformParent: {fileID: 1645660025} + m_Modifications: + - target: {fileID: 2497398649778501837, guid: 88017844a1245554fb36a6790969f12e, + type: 3} + propertyPath: m_LocalPosition.x + value: -10 + objectReference: {fileID: 0} + - target: {fileID: 2497398649778501837, guid: 88017844a1245554fb36a6790969f12e, + type: 3} + propertyPath: m_LocalPosition.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 2497398649778501837, guid: 88017844a1245554fb36a6790969f12e, + type: 3} + propertyPath: m_LocalPosition.z + value: 116 + objectReference: {fileID: 0} + - target: {fileID: 2497398649778501837, guid: 88017844a1245554fb36a6790969f12e, + type: 3} + propertyPath: m_LocalRotation.x + value: -0 + objectReference: {fileID: 0} + - target: {fileID: 2497398649778501837, guid: 88017844a1245554fb36a6790969f12e, + type: 3} + propertyPath: m_LocalRotation.y + value: 0.18125586 + objectReference: {fileID: 0} + - target: {fileID: 2497398649778501837, guid: 88017844a1245554fb36a6790969f12e, + type: 3} + propertyPath: m_LocalRotation.z + value: -0 + objectReference: {fileID: 0} + - target: {fileID: 2497398649778501837, guid: 88017844a1245554fb36a6790969f12e, + type: 3} + propertyPath: m_LocalRotation.w + value: 0.983436 + objectReference: {fileID: 0} + - target: {fileID: 2497398649778501837, guid: 88017844a1245554fb36a6790969f12e, + type: 3} + propertyPath: m_RootOrder + value: 4 + objectReference: {fileID: 0} + - target: {fileID: 2497398649778501837, guid: 88017844a1245554fb36a6790969f12e, + type: 3} + propertyPath: m_LocalEulerAnglesHint.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 2497398649778501837, guid: 88017844a1245554fb36a6790969f12e, + type: 3} + propertyPath: m_LocalEulerAnglesHint.y + value: 20.886002 + objectReference: {fileID: 0} + - target: {fileID: 2497398649778501837, guid: 88017844a1245554fb36a6790969f12e, + type: 3} + propertyPath: m_LocalEulerAnglesHint.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 8132725113250841959, guid: 88017844a1245554fb36a6790969f12e, + type: 3} + propertyPath: m_Materials.Array.data[0] + value: + objectReference: {fileID: 2100000, guid: c99104857011a3d478b482de4b0de308, type: 2} + - target: {fileID: 8620048557865049399, guid: 88017844a1245554fb36a6790969f12e, + type: 3} + propertyPath: m_Name + value: BuildingMedium + objectReference: {fileID: 0} + m_RemovedComponents: [] + m_SourcePrefab: {fileID: 100100000, guid: 88017844a1245554fb36a6790969f12e, type: 3} +--- !u!1 &822690625 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 822690626} + m_Layer: 0 + m_Name: ModularTrack + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &822690626 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 822690625} + m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} + m_LocalPosition: {x: 0, y: 0, z: 0} + m_LocalScale: {x: 1, y: 1, z: 1} + m_Children: + - {fileID: 1842916674} + - {fileID: 2126731994} + - {fileID: 919539589} + - {fileID: 611497299} + - {fileID: 392884237} + - {fileID: 1636226116} + - {fileID: 1009162156} + - {fileID: 68686923} + - {fileID: 1382268769} + - {fileID: 1108453783} + - {fileID: 849316180} + - {fileID: 1440797753} + - {fileID: 1937061326} + - {fileID: 1536282711} + - {fileID: 363564944} + - {fileID: 1135141576} + - {fileID: 312985617} + - {fileID: 952604763} + - {fileID: 1969992149} + - {fileID: 1125976069} + m_Father: {fileID: 0} + m_RootOrder: 16 + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!1001 &826804888 +PrefabInstance: + m_ObjectHideFlags: 0 + serializedVersion: 2 + m_Modification: + m_TransformParent: {fileID: 77662693} + m_Modifications: + - target: {fileID: 100000, guid: dca6189290e8c16479a364fa6d80b6b8, type: 3} + propertyPath: m_Name + value: TreeRound (17) + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: dca6189290e8c16479a364fa6d80b6b8, type: 3} + propertyPath: m_LocalPosition.x + value: -94.70921 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: dca6189290e8c16479a364fa6d80b6b8, type: 3} + propertyPath: m_LocalPosition.y + value: 4.0613356 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: dca6189290e8c16479a364fa6d80b6b8, type: 3} + propertyPath: m_LocalPosition.z + value: 116.21922 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: dca6189290e8c16479a364fa6d80b6b8, type: 3} + propertyPath: m_LocalRotation.x + value: 0.000000003687177 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: dca6189290e8c16479a364fa6d80b6b8, type: 3} + propertyPath: m_LocalRotation.y + value: 0.9989751 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: dca6189290e8c16479a364fa6d80b6b8, type: 3} + propertyPath: m_LocalRotation.z + value: 0.000000081376875 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: dca6189290e8c16479a364fa6d80b6b8, type: 3} + propertyPath: m_LocalRotation.w + value: 0.045263793 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: dca6189290e8c16479a364fa6d80b6b8, type: 3} + propertyPath: m_RootOrder + value: 17 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: dca6189290e8c16479a364fa6d80b6b8, type: 3} + propertyPath: m_LocalEulerAnglesHint.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: dca6189290e8c16479a364fa6d80b6b8, type: 3} + propertyPath: m_LocalEulerAnglesHint.y + value: 174.811 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: dca6189290e8c16479a364fa6d80b6b8, type: 3} + propertyPath: m_LocalEulerAnglesHint.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: dca6189290e8c16479a364fa6d80b6b8, type: 3} + propertyPath: m_LocalScale.x + value: 1.7392111 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: dca6189290e8c16479a364fa6d80b6b8, type: 3} + propertyPath: m_LocalScale.y + value: 1.7392083 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: dca6189290e8c16479a364fa6d80b6b8, type: 3} + propertyPath: m_LocalScale.z + value: 1.7392111 + objectReference: {fileID: 0} + - target: {fileID: 2300000, guid: dca6189290e8c16479a364fa6d80b6b8, type: 3} + propertyPath: m_Materials.Array.data[0] + value: + objectReference: {fileID: 2100000, guid: d11179e416c9b394c8176d36a0dcae52, type: 2} + - target: {fileID: 2300002, guid: dca6189290e8c16479a364fa6d80b6b8, type: 3} + propertyPath: m_Materials.Array.data[0] + value: + objectReference: {fileID: 2100000, guid: d11179e416c9b394c8176d36a0dcae52, type: 2} + m_RemovedComponents: [] + m_SourcePrefab: {fileID: 100100000, guid: dca6189290e8c16479a364fa6d80b6b8, type: 3} +--- !u!1001 &830488552 +PrefabInstance: + m_ObjectHideFlags: 0 + serializedVersion: 2 + m_Modification: + m_TransformParent: {fileID: 77662693} + m_Modifications: + - target: {fileID: 100000, guid: 9f1e50f73a529a448b004add5bec5d80, type: 3} + propertyPath: m_Name + value: TreeBox (3) + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 9f1e50f73a529a448b004add5bec5d80, type: 3} + propertyPath: m_LocalPosition.x + value: -105.20921 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 9f1e50f73a529a448b004add5bec5d80, type: 3} + propertyPath: m_LocalPosition.y + value: -1.1199999 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 9f1e50f73a529a448b004add5bec5d80, type: 3} + propertyPath: m_LocalPosition.z + value: -35.280777 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 9f1e50f73a529a448b004add5bec5d80, type: 3} + propertyPath: m_LocalRotation.x + value: -0 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 9f1e50f73a529a448b004add5bec5d80, type: 3} + propertyPath: m_LocalRotation.y + value: -0.20550784 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 9f1e50f73a529a448b004add5bec5d80, type: 3} + propertyPath: m_LocalRotation.z + value: -0 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 9f1e50f73a529a448b004add5bec5d80, type: 3} + propertyPath: m_LocalRotation.w + value: 0.9786555 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 9f1e50f73a529a448b004add5bec5d80, type: 3} + propertyPath: m_RootOrder + value: 23 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 9f1e50f73a529a448b004add5bec5d80, type: 3} + propertyPath: m_LocalEulerAnglesHint.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 9f1e50f73a529a448b004add5bec5d80, type: 3} + propertyPath: m_LocalEulerAnglesHint.y + value: -23.718 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 9f1e50f73a529a448b004add5bec5d80, type: 3} + propertyPath: m_LocalEulerAnglesHint.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 9f1e50f73a529a448b004add5bec5d80, type: 3} + propertyPath: m_LocalScale.x + value: 4.319851 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 9f1e50f73a529a448b004add5bec5d80, type: 3} + propertyPath: m_LocalScale.y + value: 4.31985 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 9f1e50f73a529a448b004add5bec5d80, type: 3} + propertyPath: m_LocalScale.z + value: 4.319851 + objectReference: {fileID: 0} + - target: {fileID: 2300000, guid: 9f1e50f73a529a448b004add5bec5d80, type: 3} + propertyPath: m_Materials.Array.data[0] + value: + objectReference: {fileID: 2100000, guid: d11179e416c9b394c8176d36a0dcae52, type: 2} + m_RemovedComponents: [] + m_SourcePrefab: {fileID: 100100000, guid: 9f1e50f73a529a448b004add5bec5d80, type: 3} +--- !u!4 &830488553 stripped +Transform: + m_CorrespondingSourceObject: {fileID: 400000, guid: 9f1e50f73a529a448b004add5bec5d80, + type: 3} + m_PrefabInstance: {fileID: 830488552} + m_PrefabAsset: {fileID: 0} +--- !u!4 &831267668 stripped +Transform: + m_CorrespondingSourceObject: {fileID: 400000, guid: 92bb9994204d1d44cb6223c53e4f84f8, + type: 3} + m_PrefabInstance: {fileID: 801682767} + m_PrefabAsset: {fileID: 0} +--- !u!1001 &849316179 +PrefabInstance: + m_ObjectHideFlags: 0 + serializedVersion: 2 + m_Modification: + m_TransformParent: {fileID: 822690626} + m_Modifications: + - target: {fileID: 1579282987822437358, guid: 941fac9249b6442cdb2d3f23472128e2, + type: 3} + propertyPath: m_Name + value: ModularTrackStraight (8) + objectReference: {fileID: 0} + - target: {fileID: 1579282987822796750, guid: 941fac9249b6442cdb2d3f23472128e2, + type: 3} + propertyPath: m_LocalPosition.x + value: -44 + objectReference: {fileID: 0} + - target: {fileID: 1579282987822796750, guid: 941fac9249b6442cdb2d3f23472128e2, + type: 3} + propertyPath: m_LocalPosition.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 1579282987822796750, guid: 941fac9249b6442cdb2d3f23472128e2, + type: 3} + propertyPath: m_LocalPosition.z + value: 27 + objectReference: {fileID: 0} + - target: {fileID: 1579282987822796750, guid: 941fac9249b6442cdb2d3f23472128e2, + type: 3} + propertyPath: m_LocalRotation.x + value: -0 + objectReference: {fileID: 0} + - target: {fileID: 1579282987822796750, guid: 941fac9249b6442cdb2d3f23472128e2, + type: 3} + propertyPath: m_LocalRotation.y + value: -0 + objectReference: {fileID: 0} + - target: {fileID: 1579282987822796750, guid: 941fac9249b6442cdb2d3f23472128e2, + type: 3} + propertyPath: m_LocalRotation.z + value: -0 + objectReference: {fileID: 0} + - target: {fileID: 1579282987822796750, guid: 941fac9249b6442cdb2d3f23472128e2, + type: 3} + propertyPath: m_LocalRotation.w + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 1579282987822796750, guid: 941fac9249b6442cdb2d3f23472128e2, + type: 3} + propertyPath: m_RootOrder + value: 10 + objectReference: {fileID: 0} + - target: {fileID: 1579282987822796750, guid: 941fac9249b6442cdb2d3f23472128e2, + type: 3} + propertyPath: m_LocalEulerAnglesHint.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 1579282987822796750, guid: 941fac9249b6442cdb2d3f23472128e2, + type: 3} + propertyPath: m_LocalEulerAnglesHint.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 1579282987822796750, guid: 941fac9249b6442cdb2d3f23472128e2, + type: 3} + propertyPath: m_LocalEulerAnglesHint.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 1644974464755198482, guid: 941fac9249b6442cdb2d3f23472128e2, + type: 3} + propertyPath: bounciness + value: 0.1 + objectReference: {fileID: 0} + m_RemovedComponents: + - {fileID: 1579282987816156490, guid: 941fac9249b6442cdb2d3f23472128e2, type: 3} + m_SourcePrefab: {fileID: 100100000, guid: 941fac9249b6442cdb2d3f23472128e2, type: 3} +--- !u!4 &849316180 stripped +Transform: + m_CorrespondingSourceObject: {fileID: 1579282987822796750, guid: 941fac9249b6442cdb2d3f23472128e2, + type: 3} + m_PrefabInstance: {fileID: 849316179} + m_PrefabAsset: {fileID: 0} +--- !u!4 &862090340 stripped +Transform: + m_CorrespondingSourceObject: {fileID: 40299501215355906, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + m_PrefabInstance: {fileID: 1604134371} + m_PrefabAsset: {fileID: 0} +--- !u!1 &881448475 stripped +GameObject: + m_CorrespondingSourceObject: {fileID: 1464191339390486027, guid: f29c8f9af0e64ab48a6c306b16e4a8fd, + type: 3} + m_PrefabInstance: {fileID: 1348019049} + m_PrefabAsset: {fileID: 0} +--- !u!4 &891323378 stripped +Transform: + m_CorrespondingSourceObject: {fileID: 40299501215355906, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + m_PrefabInstance: {fileID: 2004811380} + m_PrefabAsset: {fileID: 0} +--- !u!4 &897357394 stripped +Transform: + m_CorrespondingSourceObject: {fileID: 400000, guid: 92bb9994204d1d44cb6223c53e4f84f8, + type: 3} + m_PrefabInstance: {fileID: 1374517811} + m_PrefabAsset: {fileID: 0} +--- !u!1001 &904496424 +PrefabInstance: + m_ObjectHideFlags: 0 + serializedVersion: 2 + m_Modification: + m_TransformParent: {fileID: 807038590} + m_Modifications: + - target: {fileID: 667086550830086704, guid: 3796997fde0c29b4180a4ec756403b34, + type: 3} + propertyPath: m_LocalPosition.x + value: -132.70424 + objectReference: {fileID: 0} + - target: {fileID: 667086550830086704, guid: 3796997fde0c29b4180a4ec756403b34, + type: 3} + propertyPath: m_RootOrder + value: 11 + objectReference: {fileID: 0} + - target: {fileID: 667086550830086704, guid: 3796997fde0c29b4180a4ec756403b34, + type: 3} + propertyPath: m_LocalPosition.y + value: 0.23608613 + objectReference: {fileID: 0} + - target: {fileID: 667086550830086704, guid: 3796997fde0c29b4180a4ec756403b34, + type: 3} + propertyPath: m_LocalPosition.z + value: -7.223822 + objectReference: {fileID: 0} + - target: {fileID: 667086550830086704, guid: 3796997fde0c29b4180a4ec756403b34, + type: 3} + propertyPath: m_LocalRotation.x + value: -0 + objectReference: {fileID: 0} + - target: {fileID: 667086550830086704, guid: 3796997fde0c29b4180a4ec756403b34, + type: 3} + propertyPath: m_LocalRotation.y + value: -0.58397347 + objectReference: {fileID: 0} + - target: {fileID: 667086550830086704, guid: 3796997fde0c29b4180a4ec756403b34, + type: 3} + propertyPath: m_LocalRotation.z + value: -0 + objectReference: {fileID: 0} + - target: {fileID: 667086550830086704, guid: 3796997fde0c29b4180a4ec756403b34, + type: 3} + propertyPath: m_LocalRotation.w + value: 0.8117728 + objectReference: {fileID: 0} + - target: {fileID: 667086550830086704, guid: 3796997fde0c29b4180a4ec756403b34, + type: 3} + propertyPath: m_LocalEulerAnglesHint.y + value: -71.46101 + objectReference: {fileID: 0} + - target: {fileID: 667086550830086704, guid: 3796997fde0c29b4180a4ec756403b34, + type: 3} + propertyPath: m_LocalScale.x + value: 3.914271 + objectReference: {fileID: 0} + - target: {fileID: 667086550830086704, guid: 3796997fde0c29b4180a4ec756403b34, + type: 3} + propertyPath: m_LocalScale.y + value: 3.914268 + objectReference: {fileID: 0} + - target: {fileID: 667086550830086704, guid: 3796997fde0c29b4180a4ec756403b34, + type: 3} + propertyPath: m_LocalScale.z + value: 3.914271 + objectReference: {fileID: 0} + - target: {fileID: 5742194636018856685, guid: 3796997fde0c29b4180a4ec756403b34, + type: 3} + propertyPath: m_Name + value: StoneFlat (10) + objectReference: {fileID: 0} + - target: {fileID: 7265208955801587247, guid: 3796997fde0c29b4180a4ec756403b34, + type: 3} + propertyPath: m_Materials.Array.data[0] + value: + objectReference: {fileID: 2100000, guid: d11179e416c9b394c8176d36a0dcae52, type: 2} + - target: {fileID: 7265208955803586799, guid: 3796997fde0c29b4180a4ec756403b34, + type: 3} + propertyPath: m_Name + value: StoneVariant1 (12) + objectReference: {fileID: 0} + - target: {fileID: 7265208955804011727, guid: 3796997fde0c29b4180a4ec756403b34, + type: 3} + propertyPath: m_LocalPosition.x + value: 27.445702 + objectReference: {fileID: 0} + - target: {fileID: 7265208955804011727, guid: 3796997fde0c29b4180a4ec756403b34, + type: 3} + propertyPath: m_LocalPosition.y + value: -0.78 + objectReference: {fileID: 0} + - target: {fileID: 7265208955804011727, guid: 3796997fde0c29b4180a4ec756403b34, + type: 3} + propertyPath: m_LocalPosition.z + value: -55.359253 + objectReference: {fileID: 0} + - target: {fileID: 7265208955804011727, guid: 3796997fde0c29b4180a4ec756403b34, + type: 3} + propertyPath: m_LocalRotation.x + value: -0 + objectReference: {fileID: 0} + - target: {fileID: 7265208955804011727, guid: 3796997fde0c29b4180a4ec756403b34, + type: 3} + propertyPath: m_LocalRotation.y + value: 0.58107924 + objectReference: {fileID: 0} + - target: {fileID: 7265208955804011727, guid: 3796997fde0c29b4180a4ec756403b34, + type: 3} + propertyPath: m_LocalRotation.z + value: -0 + objectReference: {fileID: 0} + - target: {fileID: 7265208955804011727, guid: 3796997fde0c29b4180a4ec756403b34, + type: 3} + propertyPath: m_LocalRotation.w + value: 0.81384706 + objectReference: {fileID: 0} + - target: {fileID: 7265208955804011727, guid: 3796997fde0c29b4180a4ec756403b34, + type: 3} + propertyPath: m_RootOrder + value: 11 + objectReference: {fileID: 0} + - target: {fileID: 7265208955804011727, guid: 3796997fde0c29b4180a4ec756403b34, + type: 3} + propertyPath: m_LocalEulerAnglesHint.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 7265208955804011727, guid: 3796997fde0c29b4180a4ec756403b34, + type: 3} + propertyPath: m_LocalEulerAnglesHint.y + value: 71.053 + objectReference: {fileID: 0} + - target: {fileID: 7265208955804011727, guid: 3796997fde0c29b4180a4ec756403b34, + type: 3} + propertyPath: m_LocalEulerAnglesHint.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 7265208955804011727, guid: 3796997fde0c29b4180a4ec756403b34, + type: 3} + propertyPath: m_LocalScale.x + value: 5.3793097 + objectReference: {fileID: 0} + - target: {fileID: 7265208955804011727, guid: 3796997fde0c29b4180a4ec756403b34, + type: 3} + propertyPath: m_LocalScale.y + value: 5.3792996 + objectReference: {fileID: 0} + - target: {fileID: 7265208955804011727, guid: 3796997fde0c29b4180a4ec756403b34, + type: 3} + propertyPath: m_LocalScale.z + value: 5.3793097 + objectReference: {fileID: 0} + m_RemovedComponents: [] + m_SourcePrefab: {fileID: 100100000, guid: 3796997fde0c29b4180a4ec756403b34, type: 3} +--- !u!1001 &905377463 +PrefabInstance: + m_ObjectHideFlags: 0 + serializedVersion: 2 + m_Modification: + m_TransformParent: {fileID: 77662693} + m_Modifications: + - target: {fileID: 100000, guid: dca6189290e8c16479a364fa6d80b6b8, type: 3} + propertyPath: m_Name + value: TreeRound (6) + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: dca6189290e8c16479a364fa6d80b6b8, type: 3} + propertyPath: m_LocalPosition.x + value: -60.40921 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: dca6189290e8c16479a364fa6d80b6b8, type: 3} + propertyPath: m_LocalPosition.y + value: 5.372672 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: dca6189290e8c16479a364fa6d80b6b8, type: 3} + propertyPath: m_LocalPosition.z + value: 11.418451 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: dca6189290e8c16479a364fa6d80b6b8, type: 3} + propertyPath: m_LocalRotation.x + value: -0.000000024640086 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: dca6189290e8c16479a364fa6d80b6b8, type: 3} + propertyPath: m_LocalRotation.y + value: -0.95315593 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: dca6189290e8c16479a364fa6d80b6b8, type: 3} + propertyPath: m_LocalRotation.z + value: -0.0000000776444 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: dca6189290e8c16479a364fa6d80b6b8, type: 3} + propertyPath: m_LocalRotation.w + value: -0.30247954 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: dca6189290e8c16479a364fa6d80b6b8, type: 3} + propertyPath: m_RootOrder + value: 6 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: dca6189290e8c16479a364fa6d80b6b8, type: 3} + propertyPath: m_LocalEulerAnglesHint.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: dca6189290e8c16479a364fa6d80b6b8, type: 3} + propertyPath: m_LocalEulerAnglesHint.y + value: -215.213 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: dca6189290e8c16479a364fa6d80b6b8, type: 3} + propertyPath: m_LocalEulerAnglesHint.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: dca6189290e8c16479a364fa6d80b6b8, type: 3} + propertyPath: m_LocalScale.x + value: 2.3049033 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: dca6189290e8c16479a364fa6d80b6b8, type: 3} + propertyPath: m_LocalScale.y + value: 2.3049 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: dca6189290e8c16479a364fa6d80b6b8, type: 3} + propertyPath: m_LocalScale.z + value: 2.3049033 + objectReference: {fileID: 0} + - target: {fileID: 2300000, guid: dca6189290e8c16479a364fa6d80b6b8, type: 3} + propertyPath: m_Materials.Array.data[0] + value: + objectReference: {fileID: 2100000, guid: d11179e416c9b394c8176d36a0dcae52, type: 2} + - target: {fileID: 2300002, guid: dca6189290e8c16479a364fa6d80b6b8, type: 3} + propertyPath: m_Materials.Array.data[0] + value: + objectReference: {fileID: 2100000, guid: 6c378a7b0da21d443a337061a33da161, type: 2} + m_RemovedComponents: [] + m_SourcePrefab: {fileID: 100100000, guid: dca6189290e8c16479a364fa6d80b6b8, type: 3} +--- !u!4 &912427264 stripped +Transform: + m_CorrespondingSourceObject: {fileID: 400000, guid: dca6189290e8c16479a364fa6d80b6b8, + type: 3} + m_PrefabInstance: {fileID: 1011628028} + m_PrefabAsset: {fileID: 0} +--- !u!1001 &919539588 +PrefabInstance: + m_ObjectHideFlags: 0 + serializedVersion: 2 + m_Modification: + m_TransformParent: {fileID: 822690626} + m_Modifications: + - target: {fileID: 1579282987822437358, guid: 941fac9249b6442cdb2d3f23472128e2, + type: 3} + propertyPath: m_Name + value: ModularTrackStraight (2) + objectReference: {fileID: 0} + - target: {fileID: 1579282987822437358, guid: 941fac9249b6442cdb2d3f23472128e2, + type: 3} + propertyPath: m_IsActive + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 1579282987822796750, guid: 941fac9249b6442cdb2d3f23472128e2, + type: 3} + propertyPath: m_LocalPosition.x + value: 16 + objectReference: {fileID: 0} + - target: {fileID: 1579282987822796750, guid: 941fac9249b6442cdb2d3f23472128e2, + type: 3} + propertyPath: m_LocalPosition.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 1579282987822796750, guid: 941fac9249b6442cdb2d3f23472128e2, + type: 3} + propertyPath: m_LocalPosition.z + value: -3 + objectReference: {fileID: 0} + - target: {fileID: 1579282987822796750, guid: 941fac9249b6442cdb2d3f23472128e2, + type: 3} + propertyPath: m_LocalRotation.x + value: -0 + objectReference: {fileID: 0} + - target: {fileID: 1579282987822796750, guid: 941fac9249b6442cdb2d3f23472128e2, + type: 3} + propertyPath: m_LocalRotation.y + value: -0 + objectReference: {fileID: 0} + - target: {fileID: 1579282987822796750, guid: 941fac9249b6442cdb2d3f23472128e2, + type: 3} + propertyPath: m_LocalRotation.z + value: -0 + objectReference: {fileID: 0} + - target: {fileID: 1579282987822796750, guid: 941fac9249b6442cdb2d3f23472128e2, + type: 3} + propertyPath: m_LocalRotation.w + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 1579282987822796750, guid: 941fac9249b6442cdb2d3f23472128e2, + type: 3} + propertyPath: m_RootOrder + value: 2 + objectReference: {fileID: 0} + - target: {fileID: 1579282987822796750, guid: 941fac9249b6442cdb2d3f23472128e2, + type: 3} + propertyPath: m_LocalEulerAnglesHint.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 1579282987822796750, guid: 941fac9249b6442cdb2d3f23472128e2, + type: 3} + propertyPath: m_LocalEulerAnglesHint.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 1579282987822796750, guid: 941fac9249b6442cdb2d3f23472128e2, + type: 3} + propertyPath: m_LocalEulerAnglesHint.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 1644974464755198482, guid: 941fac9249b6442cdb2d3f23472128e2, + type: 3} + propertyPath: bounciness + value: 0.1 + objectReference: {fileID: 0} + m_RemovedComponents: + - {fileID: 1579282987816156490, guid: 941fac9249b6442cdb2d3f23472128e2, type: 3} + m_SourcePrefab: {fileID: 100100000, guid: 941fac9249b6442cdb2d3f23472128e2, type: 3} +--- !u!4 &919539589 stripped +Transform: + m_CorrespondingSourceObject: {fileID: 1579282987822796750, guid: 941fac9249b6442cdb2d3f23472128e2, + type: 3} + m_PrefabInstance: {fileID: 919539588} + m_PrefabAsset: {fileID: 0} +--- !u!4 &925689491 stripped +Transform: + m_CorrespondingSourceObject: {fileID: 40299501215355906, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + m_PrefabInstance: {fileID: 394059448} + m_PrefabAsset: {fileID: 0} +--- !u!1001 &943674754 +PrefabInstance: + m_ObjectHideFlags: 0 + serializedVersion: 2 + m_Modification: + m_TransformParent: {fileID: 1889916056} + m_Modifications: + - target: {fileID: 100012, guid: 0829d76c4806eb54b8b2f17eec10f4e6, type: 3} + propertyPath: m_Name + value: Cloud (5) + objectReference: {fileID: 0} + - target: {fileID: 100012, guid: 0829d76c4806eb54b8b2f17eec10f4e6, type: 3} + propertyPath: m_StaticEditorFlags + value: 4294967295 + objectReference: {fileID: 0} + - target: {fileID: 400012, guid: 0829d76c4806eb54b8b2f17eec10f4e6, type: 3} + propertyPath: m_LocalPosition.x + value: 29.790794 + objectReference: {fileID: 0} + - target: {fileID: 400012, guid: 0829d76c4806eb54b8b2f17eec10f4e6, type: 3} + propertyPath: m_LocalPosition.y + value: 54.531338 + objectReference: {fileID: 0} + - target: {fileID: 400012, guid: 0829d76c4806eb54b8b2f17eec10f4e6, type: 3} + propertyPath: m_LocalPosition.z + value: 529.6192 + objectReference: {fileID: 0} + - target: {fileID: 400012, guid: 0829d76c4806eb54b8b2f17eec10f4e6, type: 3} + propertyPath: m_LocalRotation.x + value: -0 + objectReference: {fileID: 0} + - target: {fileID: 400012, guid: 0829d76c4806eb54b8b2f17eec10f4e6, type: 3} + propertyPath: m_LocalRotation.y + value: 0.085740976 + objectReference: {fileID: 0} + - target: {fileID: 400012, guid: 0829d76c4806eb54b8b2f17eec10f4e6, type: 3} + propertyPath: m_LocalRotation.z + value: -0 + objectReference: {fileID: 0} + - target: {fileID: 400012, guid: 0829d76c4806eb54b8b2f17eec10f4e6, type: 3} + propertyPath: m_LocalRotation.w + value: 0.99631745 + objectReference: {fileID: 0} + - target: {fileID: 400012, guid: 0829d76c4806eb54b8b2f17eec10f4e6, type: 3} + propertyPath: m_RootOrder + value: 5 + objectReference: {fileID: 0} + - target: {fileID: 400012, guid: 0829d76c4806eb54b8b2f17eec10f4e6, type: 3} + propertyPath: m_LocalEulerAnglesHint.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 400012, guid: 0829d76c4806eb54b8b2f17eec10f4e6, type: 3} + propertyPath: m_LocalEulerAnglesHint.y + value: 9.837001 + objectReference: {fileID: 0} + - target: {fileID: 400012, guid: 0829d76c4806eb54b8b2f17eec10f4e6, type: 3} + propertyPath: m_LocalEulerAnglesHint.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 400012, guid: 0829d76c4806eb54b8b2f17eec10f4e6, type: 3} + propertyPath: m_LocalScale.x + value: 6.4706197 + objectReference: {fileID: 0} + - target: {fileID: 400012, guid: 0829d76c4806eb54b8b2f17eec10f4e6, type: 3} + propertyPath: m_LocalScale.y + value: 6.4706197 + objectReference: {fileID: 0} + - target: {fileID: 400012, guid: 0829d76c4806eb54b8b2f17eec10f4e6, type: 3} + propertyPath: m_LocalScale.z + value: 6.4706197 + objectReference: {fileID: 0} + - target: {fileID: 2300000, guid: 0829d76c4806eb54b8b2f17eec10f4e6, type: 3} + propertyPath: m_Materials.Array.data[0] + value: + objectReference: {fileID: 2100000, guid: c1fb7d3a27a67b947bb2b2ab391072b0, type: 2} + - target: {fileID: 2300002, guid: 0829d76c4806eb54b8b2f17eec10f4e6, type: 3} + propertyPath: m_Materials.Array.data[0] + value: + objectReference: {fileID: 2100000, guid: c1fb7d3a27a67b947bb2b2ab391072b0, type: 2} + - target: {fileID: 2300004, guid: 0829d76c4806eb54b8b2f17eec10f4e6, type: 3} + propertyPath: m_Materials.Array.data[0] + value: + objectReference: {fileID: 2100000, guid: c1fb7d3a27a67b947bb2b2ab391072b0, type: 2} + - target: {fileID: 2300006, guid: 0829d76c4806eb54b8b2f17eec10f4e6, type: 3} + propertyPath: m_Materials.Array.data[0] + value: + objectReference: {fileID: 2100000, guid: c1fb7d3a27a67b947bb2b2ab391072b0, type: 2} + - target: {fileID: 2300008, guid: 0829d76c4806eb54b8b2f17eec10f4e6, type: 3} + propertyPath: m_Materials.Array.data[0] + value: + objectReference: {fileID: 2100000, guid: c1fb7d3a27a67b947bb2b2ab391072b0, type: 2} + - target: {fileID: 2300010, guid: 0829d76c4806eb54b8b2f17eec10f4e6, type: 3} + propertyPath: m_Materials.Array.data[0] + value: + objectReference: {fileID: 2100000, guid: c1fb7d3a27a67b947bb2b2ab391072b0, type: 2} + - target: {fileID: 2300012, guid: 0829d76c4806eb54b8b2f17eec10f4e6, type: 3} + propertyPath: m_Materials.Array.data[0] + value: + objectReference: {fileID: 2100000, guid: 5304db1f3e113764fae919908740f4ba, type: 2} + m_RemovedComponents: [] + m_SourcePrefab: {fileID: 100100000, guid: 0829d76c4806eb54b8b2f17eec10f4e6, type: 3} +--- !u!1001 &952604762 +PrefabInstance: + m_ObjectHideFlags: 0 + serializedVersion: 2 + m_Modification: + m_TransformParent: {fileID: 822690626} + m_Modifications: + - target: {fileID: 1579282987822437358, guid: 941fac9249b6442cdb2d3f23472128e2, + type: 3} + propertyPath: m_Name + value: ModularTrackStraight (14) + objectReference: {fileID: 0} + - target: {fileID: 1579282987822796750, guid: 941fac9249b6442cdb2d3f23472128e2, + type: 3} + propertyPath: m_LocalPosition.x + value: -24 + objectReference: {fileID: 0} + - target: {fileID: 1579282987822796750, guid: 941fac9249b6442cdb2d3f23472128e2, + type: 3} + propertyPath: m_LocalPosition.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 1579282987822796750, guid: 941fac9249b6442cdb2d3f23472128e2, + type: 3} + propertyPath: m_LocalPosition.z + value: -43 + objectReference: {fileID: 0} + - target: {fileID: 1579282987822796750, guid: 941fac9249b6442cdb2d3f23472128e2, + type: 3} + propertyPath: m_LocalRotation.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 1579282987822796750, guid: 941fac9249b6442cdb2d3f23472128e2, + type: 3} + propertyPath: m_LocalRotation.y + value: 0.7071068 + objectReference: {fileID: 0} + - target: {fileID: 1579282987822796750, guid: 941fac9249b6442cdb2d3f23472128e2, + type: 3} + propertyPath: m_LocalRotation.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 1579282987822796750, guid: 941fac9249b6442cdb2d3f23472128e2, + type: 3} + propertyPath: m_LocalRotation.w + value: 0.7071068 + objectReference: {fileID: 0} + - target: {fileID: 1579282987822796750, guid: 941fac9249b6442cdb2d3f23472128e2, + type: 3} + propertyPath: m_RootOrder + value: 17 + objectReference: {fileID: 0} + - target: {fileID: 1579282987822796750, guid: 941fac9249b6442cdb2d3f23472128e2, + type: 3} + propertyPath: m_LocalEulerAnglesHint.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 1579282987822796750, guid: 941fac9249b6442cdb2d3f23472128e2, + type: 3} + propertyPath: m_LocalEulerAnglesHint.y + value: 90 + objectReference: {fileID: 0} + - target: {fileID: 1579282987822796750, guid: 941fac9249b6442cdb2d3f23472128e2, + type: 3} + propertyPath: m_LocalEulerAnglesHint.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 1644974464755198482, guid: 941fac9249b6442cdb2d3f23472128e2, + type: 3} + propertyPath: bounciness + value: 0.1 + objectReference: {fileID: 0} + m_RemovedComponents: + - {fileID: 1579282987816156490, guid: 941fac9249b6442cdb2d3f23472128e2, type: 3} + m_SourcePrefab: {fileID: 100100000, guid: 941fac9249b6442cdb2d3f23472128e2, type: 3} +--- !u!4 &952604763 stripped +Transform: + m_CorrespondingSourceObject: {fileID: 1579282987822796750, guid: 941fac9249b6442cdb2d3f23472128e2, + type: 3} + m_PrefabInstance: {fileID: 952604762} + m_PrefabAsset: {fileID: 0} +--- !u!1001 &954295207 +PrefabInstance: + m_ObjectHideFlags: 0 + serializedVersion: 2 + m_Modification: + m_TransformParent: {fileID: 0} + m_Modifications: + - target: {fileID: 9084884021648134800, guid: 1a27545505a30d6479abf78847244a72, + type: 3} + propertyPath: m_LocalPosition.x + value: 14.688076 + objectReference: {fileID: 0} + - target: {fileID: 9084884021648134800, guid: 1a27545505a30d6479abf78847244a72, + type: 3} + propertyPath: m_LocalPosition.y + value: 10.422963 + objectReference: {fileID: 0} + - target: {fileID: 9084884021648134800, guid: 1a27545505a30d6479abf78847244a72, + type: 3} + propertyPath: m_LocalPosition.z + value: 140.82053 + objectReference: {fileID: 0} + - target: {fileID: 9084884021648134800, guid: 1a27545505a30d6479abf78847244a72, + type: 3} + propertyPath: m_LocalRotation.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 9084884021648134800, guid: 1a27545505a30d6479abf78847244a72, + type: 3} + propertyPath: m_LocalRotation.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 9084884021648134800, guid: 1a27545505a30d6479abf78847244a72, + type: 3} + propertyPath: m_LocalRotation.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 9084884021648134800, guid: 1a27545505a30d6479abf78847244a72, + type: 3} + propertyPath: m_LocalRotation.w + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 9084884021648134800, guid: 1a27545505a30d6479abf78847244a72, + type: 3} + propertyPath: m_RootOrder + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 9084884021648134800, guid: 1a27545505a30d6479abf78847244a72, + type: 3} + propertyPath: m_LocalEulerAnglesHint.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 9084884021648134800, guid: 1a27545505a30d6479abf78847244a72, + type: 3} + propertyPath: m_LocalEulerAnglesHint.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 9084884021648134800, guid: 1a27545505a30d6479abf78847244a72, + type: 3} + propertyPath: m_LocalEulerAnglesHint.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 9084884021648134801, guid: 1a27545505a30d6479abf78847244a72, + type: 3} + propertyPath: checkpoints.Array.size + value: 4 + objectReference: {fileID: 0} + - target: {fileID: 9084884021648134801, guid: 1a27545505a30d6479abf78847244a72, + type: 3} + propertyPath: checkpoints.Array.data[0] + value: + objectReference: {fileID: 1314102254} + - target: {fileID: 9084884021648134801, guid: 1a27545505a30d6479abf78847244a72, + type: 3} + propertyPath: checkpoints.Array.data[1] + value: + objectReference: {fileID: 1892083138} + - target: {fileID: 9084884021648134801, guid: 1a27545505a30d6479abf78847244a72, + type: 3} + propertyPath: checkpoints.Array.data[2] + value: + objectReference: {fileID: 1935923473} + - target: {fileID: 9084884021648134801, guid: 1a27545505a30d6479abf78847244a72, + type: 3} + propertyPath: checkpoints.Array.data[3] + value: + objectReference: {fileID: 980867891} + - target: {fileID: 9084884021648134802, guid: 1a27545505a30d6479abf78847244a72, + type: 3} + propertyPath: m_Name + value: TrackManager + objectReference: {fileID: 0} + - target: {fileID: 9084884021648134806, guid: 1a27545505a30d6479abf78847244a72, + type: 3} + propertyPath: movable + value: + objectReference: {fileID: 456848484} + m_RemovedComponents: [] + m_SourcePrefab: {fileID: 100100000, guid: 1a27545505a30d6479abf78847244a72, type: 3} +--- !u!4 &958580491 stripped +Transform: + m_CorrespondingSourceObject: {fileID: 400000, guid: 92bb9994204d1d44cb6223c53e4f84f8, + type: 3} + m_PrefabInstance: {fileID: 2088909034} + m_PrefabAsset: {fileID: 0} +--- !u!4 &964432010 stripped +Transform: + m_CorrespondingSourceObject: {fileID: 400012, guid: 0829d76c4806eb54b8b2f17eec10f4e6, + type: 3} + m_PrefabInstance: {fileID: 353447888} + m_PrefabAsset: {fileID: 0} +--- !u!1 &972543487 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 972543490} + - component: {fileID: 972543489} + - component: {fileID: 972543488} + m_Layer: 0 + m_Name: EventSystem + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!114 &972543488 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 972543487} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 1077351063, guid: f70555f144d8491a825f0804e09c671c, type: 3} + m_Name: + m_EditorClassIdentifier: + m_HorizontalAxis: Horizontal + m_VerticalAxis: Vertical + m_SubmitButton: Submit + m_CancelButton: Cancel + m_InputActionsPerSecond: 10 + m_RepeatDelay: 0.5 + m_ForceModuleActive: 0 +--- !u!114 &972543489 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 972543487} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: -619905303, guid: f70555f144d8491a825f0804e09c671c, type: 3} + m_Name: + m_EditorClassIdentifier: + m_FirstSelected: {fileID: 0} + m_sendNavigationEvents: 1 + m_DragThreshold: 10 +--- !u!4 &972543490 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 972543487} + m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} + m_LocalPosition: {x: 0, y: 0, z: 0} + m_LocalScale: {x: 1, y: 1, z: 1} + m_Children: [] + m_Father: {fileID: 0} + m_RootOrder: 10 + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!1001 &972888047 +PrefabInstance: + m_ObjectHideFlags: 0 + serializedVersion: 2 + m_Modification: + m_TransformParent: {fileID: 286898288} + m_Modifications: + - target: {fileID: 100000, guid: 92bb9994204d1d44cb6223c53e4f84f8, type: 3} + propertyPath: m_Name + value: Hill (11) + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 92bb9994204d1d44cb6223c53e4f84f8, type: 3} + propertyPath: m_LocalPosition.x + value: 66.339874 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 92bb9994204d1d44cb6223c53e4f84f8, type: 3} + propertyPath: m_LocalPosition.y + value: -7.593904 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 92bb9994204d1d44cb6223c53e4f84f8, type: 3} + propertyPath: m_LocalPosition.z + value: -79.60935 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 92bb9994204d1d44cb6223c53e4f84f8, type: 3} + propertyPath: m_LocalRotation.x + value: -0 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 92bb9994204d1d44cb6223c53e4f84f8, type: 3} + propertyPath: m_LocalRotation.y + value: -0 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 92bb9994204d1d44cb6223c53e4f84f8, type: 3} + propertyPath: m_LocalRotation.z + value: -0 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 92bb9994204d1d44cb6223c53e4f84f8, type: 3} + propertyPath: m_LocalRotation.w + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 92bb9994204d1d44cb6223c53e4f84f8, type: 3} + propertyPath: m_RootOrder + value: 11 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 92bb9994204d1d44cb6223c53e4f84f8, type: 3} + propertyPath: m_LocalEulerAnglesHint.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 92bb9994204d1d44cb6223c53e4f84f8, type: 3} + propertyPath: m_LocalEulerAnglesHint.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 92bb9994204d1d44cb6223c53e4f84f8, type: 3} + propertyPath: m_LocalEulerAnglesHint.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 92bb9994204d1d44cb6223c53e4f84f8, type: 3} + propertyPath: m_LocalScale.x + value: 5.22806 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 92bb9994204d1d44cb6223c53e4f84f8, type: 3} + propertyPath: m_LocalScale.y + value: 12.29311 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 92bb9994204d1d44cb6223c53e4f84f8, type: 3} + propertyPath: m_LocalScale.z + value: 5.22806 + objectReference: {fileID: 0} + m_RemovedComponents: [] + m_SourcePrefab: {fileID: 100100000, guid: 92bb9994204d1d44cb6223c53e4f84f8, type: 3} +--- !u!4 &972888048 stripped +Transform: + m_CorrespondingSourceObject: {fileID: 400000, guid: 92bb9994204d1d44cb6223c53e4f84f8, + type: 3} + m_PrefabInstance: {fileID: 972888047} + m_PrefabAsset: {fileID: 0} +--- !u!4 &977882338 stripped +Transform: + m_CorrespondingSourceObject: {fileID: 400012, guid: 0829d76c4806eb54b8b2f17eec10f4e6, + type: 3} + m_PrefabInstance: {fileID: 294940160} + m_PrefabAsset: {fileID: 0} +--- !u!1001 &978205907 +PrefabInstance: + m_ObjectHideFlags: 0 + serializedVersion: 2 + m_Modification: + m_TransformParent: {fileID: 77662693} + m_Modifications: + - target: {fileID: 100000, guid: dca6189290e8c16479a364fa6d80b6b8, type: 3} + propertyPath: m_Name + value: TreeRound (9) + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: dca6189290e8c16479a364fa6d80b6b8, type: 3} + propertyPath: m_LocalPosition.x + value: 27.626572 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: dca6189290e8c16479a364fa6d80b6b8, type: 3} + propertyPath: m_LocalPosition.y + value: 5.066078 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: dca6189290e8c16479a364fa6d80b6b8, type: 3} + propertyPath: m_LocalPosition.z + value: 64.71709 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: dca6189290e8c16479a364fa6d80b6b8, type: 3} + propertyPath: m_LocalRotation.x + value: 0.00000004002316 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: dca6189290e8c16479a364fa6d80b6b8, type: 3} + propertyPath: m_LocalRotation.y + value: 0.8709789 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: dca6189290e8c16479a364fa6d80b6b8, type: 3} + propertyPath: m_LocalRotation.z + value: -0.000000070950236 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: dca6189290e8c16479a364fa6d80b6b8, type: 3} + propertyPath: m_LocalRotation.w + value: 0.49132052 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: dca6189290e8c16479a364fa6d80b6b8, type: 3} + propertyPath: m_RootOrder + value: 9 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: dca6189290e8c16479a364fa6d80b6b8, type: 3} + propertyPath: m_LocalEulerAnglesHint.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: dca6189290e8c16479a364fa6d80b6b8, type: 3} + propertyPath: m_LocalEulerAnglesHint.y + value: 121.145004 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: dca6189290e8c16479a364fa6d80b6b8, type: 3} + propertyPath: m_LocalEulerAnglesHint.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: dca6189290e8c16479a364fa6d80b6b8, type: 3} + propertyPath: m_LocalScale.x + value: 2.3049016 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: dca6189290e8c16479a364fa6d80b6b8, type: 3} + propertyPath: m_LocalScale.y + value: 2.3049 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: dca6189290e8c16479a364fa6d80b6b8, type: 3} + propertyPath: m_LocalScale.z + value: 2.3049016 + objectReference: {fileID: 0} + - target: {fileID: 2300000, guid: dca6189290e8c16479a364fa6d80b6b8, type: 3} + propertyPath: m_Materials.Array.data[0] + value: + objectReference: {fileID: 2100000, guid: d11179e416c9b394c8176d36a0dcae52, type: 2} + - target: {fileID: 2300002, guid: dca6189290e8c16479a364fa6d80b6b8, type: 3} + propertyPath: m_Materials.Array.data[0] + value: + objectReference: {fileID: 2100000, guid: 5304db1f3e113764fae919908740f4ba, type: 2} + m_RemovedComponents: [] + m_SourcePrefab: {fileID: 100100000, guid: dca6189290e8c16479a364fa6d80b6b8, type: 3} +--- !u!4 &978599813 stripped +Transform: + m_CorrespondingSourceObject: {fileID: 40299501215355906, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + m_PrefabInstance: {fileID: 1284808343} + m_PrefabAsset: {fileID: 0} +--- !u!1001 &980867890 +PrefabInstance: + m_ObjectHideFlags: 0 + serializedVersion: 2 + m_Modification: + m_TransformParent: {fileID: 0} + m_Modifications: + - target: {fileID: 301968402025351761, guid: 4ca810eee207a9c47a8ce33ea21c709d, + type: 3} + propertyPath: m_Name + value: Checkpoint (2) + objectReference: {fileID: 0} + - target: {fileID: 3946376847079625120, guid: 4ca810eee207a9c47a8ce33ea21c709d, + type: 3} + propertyPath: m_LocalPosition.x + value: -11 + objectReference: {fileID: 0} + - target: {fileID: 3946376847079625120, guid: 4ca810eee207a9c47a8ce33ea21c709d, + type: 3} + propertyPath: m_LocalPosition.y + value: -0.09 + objectReference: {fileID: 0} + - target: {fileID: 3946376847079625120, guid: 4ca810eee207a9c47a8ce33ea21c709d, + type: 3} + propertyPath: m_LocalPosition.z + value: -43 + objectReference: {fileID: 0} + - target: {fileID: 3946376847079625120, guid: 4ca810eee207a9c47a8ce33ea21c709d, + type: 3} + propertyPath: m_LocalRotation.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 3946376847079625120, guid: 4ca810eee207a9c47a8ce33ea21c709d, + type: 3} + propertyPath: m_LocalRotation.y + value: 0.7071068 + objectReference: {fileID: 0} + - target: {fileID: 3946376847079625120, guid: 4ca810eee207a9c47a8ce33ea21c709d, + type: 3} + propertyPath: m_LocalRotation.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 3946376847079625120, guid: 4ca810eee207a9c47a8ce33ea21c709d, + type: 3} + propertyPath: m_LocalRotation.w + value: 0.7071068 + objectReference: {fileID: 0} + - target: {fileID: 3946376847079625120, guid: 4ca810eee207a9c47a8ce33ea21c709d, + type: 3} + propertyPath: m_RootOrder + value: 5 + objectReference: {fileID: 0} + - target: {fileID: 3946376847079625120, guid: 4ca810eee207a9c47a8ce33ea21c709d, + type: 3} + propertyPath: m_LocalEulerAnglesHint.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 3946376847079625120, guid: 4ca810eee207a9c47a8ce33ea21c709d, + type: 3} + propertyPath: m_LocalEulerAnglesHint.y + value: 90 + objectReference: {fileID: 0} + - target: {fileID: 3946376847079625120, guid: 4ca810eee207a9c47a8ce33ea21c709d, + type: 3} + propertyPath: m_LocalEulerAnglesHint.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 8450129487767892674, guid: 4ca810eee207a9c47a8ce33ea21c709d, + type: 3} + propertyPath: isStartFinishLine + value: 0 + objectReference: {fileID: 0} + m_RemovedComponents: [] + m_SourcePrefab: {fileID: 100100000, guid: 4ca810eee207a9c47a8ce33ea21c709d, type: 3} +--- !u!114 &980867891 stripped +MonoBehaviour: + m_CorrespondingSourceObject: {fileID: 8450129487767892674, guid: 4ca810eee207a9c47a8ce33ea21c709d, + type: 3} + m_PrefabInstance: {fileID: 980867890} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: bbae15ab488cd06418614cdb83952550, type: 3} + m_Name: + m_EditorClassIdentifier: +--- !u!1001 &996772129 +PrefabInstance: + m_ObjectHideFlags: 0 + serializedVersion: 2 + m_Modification: + m_TransformParent: {fileID: 807038590} + m_Modifications: + - target: {fileID: 40299501215355906, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_RootOrder + value: 30 + objectReference: {fileID: 0} + - target: {fileID: 40299501215355906, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_LocalPosition.x + value: -140.31424 + objectReference: {fileID: 0} + - target: {fileID: 40299501215355906, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_LocalPosition.y + value: -0.094193876 + objectReference: {fileID: 0} + - target: {fileID: 40299501215355906, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_LocalPosition.z + value: -7.163822 + objectReference: {fileID: 0} + - target: {fileID: 40299501215355906, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_LocalRotation.y + value: 0.59888387 + objectReference: {fileID: 0} + - target: {fileID: 40299501215355906, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_LocalRotation.z + value: -0 + objectReference: {fileID: 0} + - target: {fileID: 40299501215355906, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_LocalRotation.w + value: 0.8008359 + objectReference: {fileID: 0} + - target: {fileID: 40299501215355906, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_LocalEulerAnglesHint.y + value: 73.58 + objectReference: {fileID: 0} + - target: {fileID: 40299501215355906, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_LocalScale.x + value: 2.317296 + objectReference: {fileID: 0} + - target: {fileID: 40299501215355906, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_LocalScale.y + value: 2.317296 + objectReference: {fileID: 0} + - target: {fileID: 40299501215355906, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_LocalScale.z + value: 2.317296 + objectReference: {fileID: 0} + - target: {fileID: 40299501215355906, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_LocalRotation.x + value: -0 + objectReference: {fileID: 0} + - target: {fileID: 2057621013554333680, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_LocalPosition.x + value: 65.21 + objectReference: {fileID: 0} + - target: {fileID: 2057621013554333680, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_LocalPosition.y + value: -0.862 + objectReference: {fileID: 0} + - target: {fileID: 2057621013554333680, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_LocalPosition.z + value: 16.84 + objectReference: {fileID: 0} + - target: {fileID: 2057621013554333680, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_LocalRotation.x + value: -0 + objectReference: {fileID: 0} + - target: {fileID: 2057621013554333680, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_LocalRotation.y + value: 0.907129 + objectReference: {fileID: 0} + - target: {fileID: 2057621013554333680, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_LocalRotation.z + value: -0 + objectReference: {fileID: 0} + - target: {fileID: 2057621013554333680, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_LocalRotation.w + value: 0.42085275 + objectReference: {fileID: 0} + - target: {fileID: 2057621013554333680, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_RootOrder + value: 32 + objectReference: {fileID: 0} + - target: {fileID: 2057621013554333680, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_LocalEulerAnglesHint.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 2057621013554333680, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_LocalEulerAnglesHint.y + value: 130.223 + objectReference: {fileID: 0} + - target: {fileID: 2057621013554333680, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_LocalEulerAnglesHint.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 2057621013554333680, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_LocalScale.x + value: 1.2849044 + objectReference: {fileID: 0} + - target: {fileID: 2057621013554333680, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_LocalScale.y + value: 1.2849041 + objectReference: {fileID: 0} + - target: {fileID: 2057621013554333680, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_LocalScale.z + value: 1.2849044 + objectReference: {fileID: 0} + - target: {fileID: 2057621013554699216, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_Name + value: StoneVariant2 (22) + objectReference: {fileID: 0} + - target: {fileID: 2057621013556626704, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_Materials.Array.data[0] + value: + objectReference: {fileID: 2100000, guid: d11179e416c9b394c8176d36a0dcae52, type: 2} + - target: {fileID: 2057621013557757904, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_Mesh + value: + objectReference: {fileID: 4300002, guid: 5e6dd9e33a8a1c748a582c8565e5f95f, type: 3} + - target: {fileID: 6182327852661155845, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_Name + value: StoneRound (17) + objectReference: {fileID: 0} + m_RemovedComponents: [] + m_SourcePrefab: {fileID: 100100000, guid: 230dd9257fca2c249b555f6edd3c8e14, type: 3} +--- !u!4 &1006557885 stripped +Transform: + m_CorrespondingSourceObject: {fileID: 667086550830086704, guid: 3796997fde0c29b4180a4ec756403b34, + type: 3} + m_PrefabInstance: {fileID: 1411612671} + m_PrefabAsset: {fileID: 0} +--- !u!1001 &1009162155 +PrefabInstance: + m_ObjectHideFlags: 0 + serializedVersion: 2 + m_Modification: + m_TransformParent: {fileID: 822690626} + m_Modifications: + - target: {fileID: 4478061287446689989, guid: 06604f26f581c4de08c3f45572924c7d, + type: 3} + propertyPath: bounciness + value: 0.1 + objectReference: {fileID: 0} + - target: {fileID: 6602977218683501769, guid: 06604f26f581c4de08c3f45572924c7d, + type: 3} + propertyPath: m_Name + value: ModularTrackCurveLarge + objectReference: {fileID: 0} + - target: {fileID: 6602977218683986153, guid: 06604f26f581c4de08c3f45572924c7d, + type: 3} + propertyPath: m_LocalPosition.x + value: 16 + objectReference: {fileID: 0} + - target: {fileID: 6602977218683986153, guid: 06604f26f581c4de08c3f45572924c7d, + type: 3} + propertyPath: m_LocalPosition.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 6602977218683986153, guid: 06604f26f581c4de08c3f45572924c7d, + type: 3} + propertyPath: m_LocalPosition.z + value: 37 + objectReference: {fileID: 0} + - target: {fileID: 6602977218683986153, guid: 06604f26f581c4de08c3f45572924c7d, + type: 3} + propertyPath: m_LocalRotation.x + value: -0 + objectReference: {fileID: 0} + - target: {fileID: 6602977218683986153, guid: 06604f26f581c4de08c3f45572924c7d, + type: 3} + propertyPath: m_LocalRotation.y + value: -0 + objectReference: {fileID: 0} + - target: {fileID: 6602977218683986153, guid: 06604f26f581c4de08c3f45572924c7d, + type: 3} + propertyPath: m_LocalRotation.z + value: -0 + objectReference: {fileID: 0} + - target: {fileID: 6602977218683986153, guid: 06604f26f581c4de08c3f45572924c7d, + type: 3} + propertyPath: m_LocalRotation.w + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 6602977218683986153, guid: 06604f26f581c4de08c3f45572924c7d, + type: 3} + propertyPath: m_RootOrder + value: 6 + objectReference: {fileID: 0} + - target: {fileID: 6602977218683986153, guid: 06604f26f581c4de08c3f45572924c7d, + type: 3} + propertyPath: m_LocalEulerAnglesHint.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 6602977218683986153, guid: 06604f26f581c4de08c3f45572924c7d, + type: 3} + propertyPath: m_LocalEulerAnglesHint.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 6602977218683986153, guid: 06604f26f581c4de08c3f45572924c7d, + type: 3} + propertyPath: m_LocalEulerAnglesHint.z + value: 0 + objectReference: {fileID: 0} + m_RemovedComponents: + - {fileID: 6602977218685588073, guid: 06604f26f581c4de08c3f45572924c7d, type: 3} + m_SourcePrefab: {fileID: 100100000, guid: 06604f26f581c4de08c3f45572924c7d, type: 3} +--- !u!4 &1009162156 stripped +Transform: + m_CorrespondingSourceObject: {fileID: 6602977218683986153, guid: 06604f26f581c4de08c3f45572924c7d, + type: 3} + m_PrefabInstance: {fileID: 1009162155} + m_PrefabAsset: {fileID: 0} +--- !u!1001 &1011628028 +PrefabInstance: + m_ObjectHideFlags: 0 + serializedVersion: 2 + m_Modification: + m_TransformParent: {fileID: 77662693} + m_Modifications: + - target: {fileID: 100000, guid: dca6189290e8c16479a364fa6d80b6b8, type: 3} + propertyPath: m_Name + value: TreeRound (11) + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: dca6189290e8c16479a364fa6d80b6b8, type: 3} + propertyPath: m_LocalPosition.x + value: -1.8092098 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: dca6189290e8c16479a364fa6d80b6b8, type: 3} + propertyPath: m_LocalPosition.y + value: 5.0626717 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: dca6189290e8c16479a364fa6d80b6b8, type: 3} + propertyPath: m_LocalPosition.z + value: 101.23845 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: dca6189290e8c16479a364fa6d80b6b8, type: 3} + propertyPath: m_LocalRotation.x + value: 0.00000008146034 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: dca6189290e8c16479a364fa6d80b6b8, type: 3} + propertyPath: m_LocalRotation.y + value: -0 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: dca6189290e8c16479a364fa6d80b6b8, type: 3} + propertyPath: m_LocalRotation.z + value: -0 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: dca6189290e8c16479a364fa6d80b6b8, type: 3} + propertyPath: m_LocalRotation.w + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: dca6189290e8c16479a364fa6d80b6b8, type: 3} + propertyPath: m_RootOrder + value: 11 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: dca6189290e8c16479a364fa6d80b6b8, type: 3} + propertyPath: m_LocalEulerAnglesHint.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: dca6189290e8c16479a364fa6d80b6b8, type: 3} + propertyPath: m_LocalEulerAnglesHint.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: dca6189290e8c16479a364fa6d80b6b8, type: 3} + propertyPath: m_LocalEulerAnglesHint.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: dca6189290e8c16479a364fa6d80b6b8, type: 3} + propertyPath: m_LocalScale.x + value: 3.2098038 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: dca6189290e8c16479a364fa6d80b6b8, type: 3} + propertyPath: m_LocalScale.y + value: 3.2098038 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: dca6189290e8c16479a364fa6d80b6b8, type: 3} + propertyPath: m_LocalScale.z + value: 3.2098038 + objectReference: {fileID: 0} + - target: {fileID: 2300000, guid: dca6189290e8c16479a364fa6d80b6b8, type: 3} + propertyPath: m_Materials.Array.data[0] + value: + objectReference: {fileID: 2100000, guid: d11179e416c9b394c8176d36a0dcae52, type: 2} + - target: {fileID: 2300002, guid: dca6189290e8c16479a364fa6d80b6b8, type: 3} + propertyPath: m_Materials.Array.data[0] + value: + objectReference: {fileID: 2100000, guid: 6c378a7b0da21d443a337061a33da161, type: 2} + m_RemovedComponents: [] + m_SourcePrefab: {fileID: 100100000, guid: dca6189290e8c16479a364fa6d80b6b8, type: 3} +--- !u!1001 &1012193179 +PrefabInstance: + m_ObjectHideFlags: 0 + serializedVersion: 2 + m_Modification: + m_TransformParent: {fileID: 77662693} + m_Modifications: + - target: {fileID: 100000, guid: dca6189290e8c16479a364fa6d80b6b8, type: 3} + propertyPath: m_Name + value: TreeRound (4) + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: dca6189290e8c16479a364fa6d80b6b8, type: 3} + propertyPath: m_LocalPosition.x + value: -91.50921 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: dca6189290e8c16479a364fa6d80b6b8, type: 3} + propertyPath: m_LocalPosition.y + value: 5.031336 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: dca6189290e8c16479a364fa6d80b6b8, type: 3} + propertyPath: m_LocalPosition.z + value: -35.480774 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: dca6189290e8c16479a364fa6d80b6b8, type: 3} + propertyPath: m_LocalRotation.x + value: 0.00000008146034 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: dca6189290e8c16479a364fa6d80b6b8, type: 3} + propertyPath: m_LocalRotation.y + value: -0 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: dca6189290e8c16479a364fa6d80b6b8, type: 3} + propertyPath: m_LocalRotation.z + value: -0 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: dca6189290e8c16479a364fa6d80b6b8, type: 3} + propertyPath: m_LocalRotation.w + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: dca6189290e8c16479a364fa6d80b6b8, type: 3} + propertyPath: m_RootOrder + value: 4 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: dca6189290e8c16479a364fa6d80b6b8, type: 3} + propertyPath: m_LocalEulerAnglesHint.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: dca6189290e8c16479a364fa6d80b6b8, type: 3} + propertyPath: m_LocalEulerAnglesHint.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: dca6189290e8c16479a364fa6d80b6b8, type: 3} + propertyPath: m_LocalEulerAnglesHint.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: dca6189290e8c16479a364fa6d80b6b8, type: 3} + propertyPath: m_LocalScale.x + value: 2.3049 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: dca6189290e8c16479a364fa6d80b6b8, type: 3} + propertyPath: m_LocalScale.y + value: 2.3049 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: dca6189290e8c16479a364fa6d80b6b8, type: 3} + propertyPath: m_LocalScale.z + value: 2.3049 + objectReference: {fileID: 0} + - target: {fileID: 2300000, guid: dca6189290e8c16479a364fa6d80b6b8, type: 3} + propertyPath: m_Materials.Array.data[0] + value: + objectReference: {fileID: 2100000, guid: d11179e416c9b394c8176d36a0dcae52, type: 2} + - target: {fileID: 2300002, guid: dca6189290e8c16479a364fa6d80b6b8, type: 3} + propertyPath: m_Materials.Array.data[0] + value: + objectReference: {fileID: 2100000, guid: d11179e416c9b394c8176d36a0dcae52, type: 2} + m_RemovedComponents: [] + m_SourcePrefab: {fileID: 100100000, guid: dca6189290e8c16479a364fa6d80b6b8, type: 3} +--- !u!4 &1013600836 stripped +Transform: + m_CorrespondingSourceObject: {fileID: 400012, guid: 0829d76c4806eb54b8b2f17eec10f4e6, + type: 3} + m_PrefabInstance: {fileID: 1984506498} + m_PrefabAsset: {fileID: 0} +--- !u!4 &1045649162 stripped +Transform: + m_CorrespondingSourceObject: {fileID: 400000, guid: 92bb9994204d1d44cb6223c53e4f84f8, + type: 3} + m_PrefabInstance: {fileID: 506199214} + m_PrefabAsset: {fileID: 0} +--- !u!4 &1045665709 stripped +Transform: + m_CorrespondingSourceObject: {fileID: 400000, guid: 9f1e50f73a529a448b004add5bec5d80, + type: 3} + m_PrefabInstance: {fileID: 802795529} + m_PrefabAsset: {fileID: 0} +--- !u!1001 &1055019279 +PrefabInstance: + m_ObjectHideFlags: 0 + serializedVersion: 2 + m_Modification: + m_TransformParent: {fileID: 1645660025} + m_Modifications: + - target: {fileID: 3420580296371496975, guid: 6e78c73d0c22422438a45bea2842fcfb, + type: 3} + propertyPath: m_Name + value: BuildingThin + objectReference: {fileID: 0} + - target: {fileID: 8822636336882126325, guid: 6e78c73d0c22422438a45bea2842fcfb, + type: 3} + propertyPath: m_LocalPosition.x + value: 96.682495 + objectReference: {fileID: 0} + - target: {fileID: 8822636336882126325, guid: 6e78c73d0c22422438a45bea2842fcfb, + type: 3} + propertyPath: m_LocalPosition.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 8822636336882126325, guid: 6e78c73d0c22422438a45bea2842fcfb, + type: 3} + propertyPath: m_LocalPosition.z + value: -6.1946297 + objectReference: {fileID: 0} + - target: {fileID: 8822636336882126325, guid: 6e78c73d0c22422438a45bea2842fcfb, + type: 3} + propertyPath: m_LocalRotation.x + value: -0 + objectReference: {fileID: 0} + - target: {fileID: 8822636336882126325, guid: 6e78c73d0c22422438a45bea2842fcfb, + type: 3} + propertyPath: m_LocalRotation.y + value: 0.022155186 + objectReference: {fileID: 0} + - target: {fileID: 8822636336882126325, guid: 6e78c73d0c22422438a45bea2842fcfb, + type: 3} + propertyPath: m_LocalRotation.z + value: -0 + objectReference: {fileID: 0} + - target: {fileID: 8822636336882126325, guid: 6e78c73d0c22422438a45bea2842fcfb, + type: 3} + propertyPath: m_LocalRotation.w + value: 0.99975455 + objectReference: {fileID: 0} + - target: {fileID: 8822636336882126325, guid: 6e78c73d0c22422438a45bea2842fcfb, + type: 3} + propertyPath: m_RootOrder + value: 6 + objectReference: {fileID: 0} + - target: {fileID: 8822636336882126325, guid: 6e78c73d0c22422438a45bea2842fcfb, + type: 3} + propertyPath: m_LocalEulerAnglesHint.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 8822636336882126325, guid: 6e78c73d0c22422438a45bea2842fcfb, + type: 3} + propertyPath: m_LocalEulerAnglesHint.y + value: 2.539 + objectReference: {fileID: 0} + - target: {fileID: 8822636336882126325, guid: 6e78c73d0c22422438a45bea2842fcfb, + type: 3} + propertyPath: m_LocalEulerAnglesHint.z + value: 0 + objectReference: {fileID: 0} + m_RemovedComponents: [] + m_SourcePrefab: {fileID: 100100000, guid: 6e78c73d0c22422438a45bea2842fcfb, type: 3} +--- !u!1001 &1056904171 +PrefabInstance: + m_ObjectHideFlags: 0 + serializedVersion: 2 + m_Modification: + m_TransformParent: {fileID: 807038590} + m_Modifications: + - target: {fileID: 667086550830086704, guid: 3796997fde0c29b4180a4ec756403b34, + type: 3} + propertyPath: m_LocalPosition.x + value: -31.045067 + objectReference: {fileID: 0} + - target: {fileID: 667086550830086704, guid: 3796997fde0c29b4180a4ec756403b34, + type: 3} + propertyPath: m_RootOrder + value: 2 + objectReference: {fileID: 0} + - target: {fileID: 667086550830086704, guid: 3796997fde0c29b4180a4ec756403b34, + type: 3} + propertyPath: m_LocalPosition.y + value: -0.20767379 + objectReference: {fileID: 0} + - target: {fileID: 667086550830086704, guid: 3796997fde0c29b4180a4ec756403b34, + type: 3} + propertyPath: m_LocalPosition.z + value: -16.617998 + objectReference: {fileID: 0} + - target: {fileID: 667086550830086704, guid: 3796997fde0c29b4180a4ec756403b34, + type: 3} + propertyPath: m_LocalRotation.x + value: -0 + objectReference: {fileID: 0} + - target: {fileID: 667086550830086704, guid: 3796997fde0c29b4180a4ec756403b34, + type: 3} + propertyPath: m_LocalRotation.y + value: -0.42275524 + objectReference: {fileID: 0} + - target: {fileID: 667086550830086704, guid: 3796997fde0c29b4180a4ec756403b34, + type: 3} + propertyPath: m_LocalRotation.z + value: -0 + objectReference: {fileID: 0} + - target: {fileID: 667086550830086704, guid: 3796997fde0c29b4180a4ec756403b34, + type: 3} + propertyPath: m_LocalRotation.w + value: 0.9062439 + objectReference: {fileID: 0} + - target: {fileID: 667086550830086704, guid: 3796997fde0c29b4180a4ec756403b34, + type: 3} + propertyPath: m_LocalEulerAnglesHint.y + value: -50.017002 + objectReference: {fileID: 0} + - target: {fileID: 667086550830086704, guid: 3796997fde0c29b4180a4ec756403b34, + type: 3} + propertyPath: m_LocalScale.x + value: 7.9454985 + objectReference: {fileID: 0} + - target: {fileID: 667086550830086704, guid: 3796997fde0c29b4180a4ec756403b34, + type: 3} + propertyPath: m_LocalScale.y + value: 7.945497 + objectReference: {fileID: 0} + - target: {fileID: 667086550830086704, guid: 3796997fde0c29b4180a4ec756403b34, + type: 3} + propertyPath: m_LocalScale.z + value: 7.9454985 + objectReference: {fileID: 0} + - target: {fileID: 5742194636018856685, guid: 3796997fde0c29b4180a4ec756403b34, + type: 3} + propertyPath: m_Name + value: StoneFlat (13) + objectReference: {fileID: 0} + - target: {fileID: 7265208955801587247, guid: 3796997fde0c29b4180a4ec756403b34, + type: 3} + propertyPath: m_Materials.Array.data[0] + value: + objectReference: {fileID: 2100000, guid: d11179e416c9b394c8176d36a0dcae52, type: 2} + - target: {fileID: 7265208955802684655, guid: 3796997fde0c29b4180a4ec756403b34, + type: 3} + propertyPath: m_Mesh + value: + objectReference: {fileID: 4300002, guid: c80f31023dcf9b34cbd0044505be4806, type: 3} + - target: {fileID: 7265208955803586799, guid: 3796997fde0c29b4180a4ec756403b34, + type: 3} + propertyPath: m_Name + value: StoneVariant1 (3) + objectReference: {fileID: 0} + - target: {fileID: 7265208955804011727, guid: 3796997fde0c29b4180a4ec756403b34, + type: 3} + propertyPath: m_LocalPosition.x + value: 30.742 + objectReference: {fileID: 0} + - target: {fileID: 7265208955804011727, guid: 3796997fde0c29b4180a4ec756403b34, + type: 3} + propertyPath: m_LocalPosition.y + value: -1.09 + objectReference: {fileID: 0} + - target: {fileID: 7265208955804011727, guid: 3796997fde0c29b4180a4ec756403b34, + type: 3} + propertyPath: m_LocalPosition.z + value: -30.033 + objectReference: {fileID: 0} + - target: {fileID: 7265208955804011727, guid: 3796997fde0c29b4180a4ec756403b34, + type: 3} + propertyPath: m_LocalRotation.x + value: -0 + objectReference: {fileID: 0} + - target: {fileID: 7265208955804011727, guid: 3796997fde0c29b4180a4ec756403b34, + type: 3} + propertyPath: m_LocalRotation.y + value: -0.056109615 + objectReference: {fileID: 0} + - target: {fileID: 7265208955804011727, guid: 3796997fde0c29b4180a4ec756403b34, + type: 3} + propertyPath: m_LocalRotation.z + value: -0 + objectReference: {fileID: 0} + - target: {fileID: 7265208955804011727, guid: 3796997fde0c29b4180a4ec756403b34, + type: 3} + propertyPath: m_LocalRotation.w + value: 0.9984246 + objectReference: {fileID: 0} + - target: {fileID: 7265208955804011727, guid: 3796997fde0c29b4180a4ec756403b34, + type: 3} + propertyPath: m_RootOrder + value: 3 + objectReference: {fileID: 0} + - target: {fileID: 7265208955804011727, guid: 3796997fde0c29b4180a4ec756403b34, + type: 3} + propertyPath: m_LocalEulerAnglesHint.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 7265208955804011727, guid: 3796997fde0c29b4180a4ec756403b34, + type: 3} + propertyPath: m_LocalEulerAnglesHint.y + value: -6.433 + objectReference: {fileID: 0} + - target: {fileID: 7265208955804011727, guid: 3796997fde0c29b4180a4ec756403b34, + type: 3} + propertyPath: m_LocalEulerAnglesHint.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 7265208955804011727, guid: 3796997fde0c29b4180a4ec756403b34, + type: 3} + propertyPath: m_LocalScale.x + value: 7.9454966 + objectReference: {fileID: 0} + - target: {fileID: 7265208955804011727, guid: 3796997fde0c29b4180a4ec756403b34, + type: 3} + propertyPath: m_LocalScale.y + value: 7.945482 + objectReference: {fileID: 0} + - target: {fileID: 7265208955804011727, guid: 3796997fde0c29b4180a4ec756403b34, + type: 3} + propertyPath: m_LocalScale.z + value: 7.9454966 + objectReference: {fileID: 0} + m_RemovedComponents: [] + m_SourcePrefab: {fileID: 100100000, guid: 3796997fde0c29b4180a4ec756403b34, type: 3} +--- !u!4 &1059123846 stripped +Transform: + m_CorrespondingSourceObject: {fileID: 667086550830086704, guid: 3796997fde0c29b4180a4ec756403b34, + type: 3} + m_PrefabInstance: {fileID: 2039196227} + m_PrefabAsset: {fileID: 0} +--- !u!4 &1077540087 stripped +Transform: + m_CorrespondingSourceObject: {fileID: 667086550830086704, guid: 3796997fde0c29b4180a4ec756403b34, + type: 3} + m_PrefabInstance: {fileID: 1288142032} + m_PrefabAsset: {fileID: 0} +--- !u!4 &1100055148 stripped +Transform: + m_CorrespondingSourceObject: {fileID: 400000, guid: dca6189290e8c16479a364fa6d80b6b8, + type: 3} + m_PrefabInstance: {fileID: 1715571282} + m_PrefabAsset: {fileID: 0} +--- !u!1001 &1108453782 +PrefabInstance: + m_ObjectHideFlags: 0 + serializedVersion: 2 + m_Modification: + m_TransformParent: {fileID: 822690626} + m_Modifications: + - target: {fileID: 4478061287446689989, guid: 06604f26f581c4de08c3f45572924c7d, + type: 3} + propertyPath: bounciness + value: 0.1 + objectReference: {fileID: 0} + - target: {fileID: 6602977218683501769, guid: 06604f26f581c4de08c3f45572924c7d, + type: 3} + propertyPath: m_Name + value: ModularTrackCurveLarge (1) + objectReference: {fileID: 0} + - target: {fileID: 6602977218683986153, guid: 06604f26f581c4de08c3f45572924c7d, + type: 3} + propertyPath: m_LocalPosition.x + value: -24 + objectReference: {fileID: 0} + - target: {fileID: 6602977218683986153, guid: 06604f26f581c4de08c3f45572924c7d, + type: 3} + propertyPath: m_LocalPosition.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 6602977218683986153, guid: 06604f26f581c4de08c3f45572924c7d, + type: 3} + propertyPath: m_LocalPosition.z + value: 57 + objectReference: {fileID: 0} + - target: {fileID: 6602977218683986153, guid: 06604f26f581c4de08c3f45572924c7d, + type: 3} + propertyPath: m_LocalRotation.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 6602977218683986153, guid: 06604f26f581c4de08c3f45572924c7d, + type: 3} + propertyPath: m_LocalRotation.y + value: -0.7071068 + objectReference: {fileID: 0} + - target: {fileID: 6602977218683986153, guid: 06604f26f581c4de08c3f45572924c7d, + type: 3} + propertyPath: m_LocalRotation.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 6602977218683986153, guid: 06604f26f581c4de08c3f45572924c7d, + type: 3} + propertyPath: m_LocalRotation.w + value: 0.7071068 + objectReference: {fileID: 0} + - target: {fileID: 6602977218683986153, guid: 06604f26f581c4de08c3f45572924c7d, + type: 3} + propertyPath: m_RootOrder + value: 9 + objectReference: {fileID: 0} + - target: {fileID: 6602977218683986153, guid: 06604f26f581c4de08c3f45572924c7d, + type: 3} + propertyPath: m_LocalEulerAnglesHint.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 6602977218683986153, guid: 06604f26f581c4de08c3f45572924c7d, + type: 3} + propertyPath: m_LocalEulerAnglesHint.y + value: -90 + objectReference: {fileID: 0} + - target: {fileID: 6602977218683986153, guid: 06604f26f581c4de08c3f45572924c7d, + type: 3} + propertyPath: m_LocalEulerAnglesHint.z + value: 0 + objectReference: {fileID: 0} + m_RemovedComponents: + - {fileID: 6602977218685588073, guid: 06604f26f581c4de08c3f45572924c7d, type: 3} + m_SourcePrefab: {fileID: 100100000, guid: 06604f26f581c4de08c3f45572924c7d, type: 3} +--- !u!4 &1108453783 stripped +Transform: + m_CorrespondingSourceObject: {fileID: 6602977218683986153, guid: 06604f26f581c4de08c3f45572924c7d, + type: 3} + m_PrefabInstance: {fileID: 1108453782} + m_PrefabAsset: {fileID: 0} +--- !u!1 &1113462048 stripped +GameObject: + m_CorrespondingSourceObject: {fileID: 4648791341004341439, guid: f29c8f9af0e64ab48a6c306b16e4a8fd, + type: 3} + m_PrefabInstance: {fileID: 1348019049} + m_PrefabAsset: {fileID: 0} +--- !u!1001 &1118694668 +PrefabInstance: + m_ObjectHideFlags: 0 + serializedVersion: 2 + m_Modification: + m_TransformParent: {fileID: 807038590} + m_Modifications: + - target: {fileID: 40299501215355906, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_LocalPosition.x + value: 23.885757 + objectReference: {fileID: 0} + - target: {fileID: 40299501215355906, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_RootOrder + value: 19 + objectReference: {fileID: 0} + - target: {fileID: 40299501215355906, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_LocalPosition.y + value: -0.27187383 + objectReference: {fileID: 0} + - target: {fileID: 40299501215355906, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_LocalPosition.z + value: 52.936176 + objectReference: {fileID: 0} + - target: {fileID: 40299501215355906, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_LocalRotation.y + value: -0.17252214 + objectReference: {fileID: 0} + - target: {fileID: 40299501215355906, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_LocalRotation.z + value: -0 + objectReference: {fileID: 0} + - target: {fileID: 40299501215355906, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_LocalRotation.w + value: 0.9850057 + objectReference: {fileID: 0} + - target: {fileID: 40299501215355906, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_LocalEulerAnglesHint.y + value: -19.869 + objectReference: {fileID: 0} + - target: {fileID: 40299501215355906, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_LocalScale.x + value: 2.9231408 + objectReference: {fileID: 0} + - target: {fileID: 40299501215355906, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_LocalScale.y + value: 2.92314 + objectReference: {fileID: 0} + - target: {fileID: 40299501215355906, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_LocalScale.z + value: 2.9231408 + objectReference: {fileID: 0} + - target: {fileID: 40299501215355906, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_LocalRotation.x + value: -0 + objectReference: {fileID: 0} + - target: {fileID: 2057621013554333680, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_LocalPosition.x + value: 62.7 + objectReference: {fileID: 0} + - target: {fileID: 2057621013554333680, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_LocalPosition.y + value: -1.1541998 + objectReference: {fileID: 0} + - target: {fileID: 2057621013554333680, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_LocalPosition.z + value: 58.1 + objectReference: {fileID: 0} + - target: {fileID: 2057621013554333680, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_LocalRotation.x + value: -0 + objectReference: {fileID: 0} + - target: {fileID: 2057621013554333680, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_LocalRotation.y + value: -0.17252184 + objectReference: {fileID: 0} + - target: {fileID: 2057621013554333680, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_LocalRotation.z + value: -0 + objectReference: {fileID: 0} + - target: {fileID: 2057621013554333680, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_LocalRotation.w + value: 0.98500574 + objectReference: {fileID: 0} + - target: {fileID: 2057621013554333680, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_RootOrder + value: 20 + objectReference: {fileID: 0} + - target: {fileID: 2057621013554333680, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_LocalEulerAnglesHint.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 2057621013554333680, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_LocalEulerAnglesHint.y + value: -19.869001 + objectReference: {fileID: 0} + - target: {fileID: 2057621013554333680, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_LocalEulerAnglesHint.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 2057621013554333680, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_LocalScale.x + value: 2.92314 + objectReference: {fileID: 0} + - target: {fileID: 2057621013554333680, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_LocalScale.y + value: 2.9231398 + objectReference: {fileID: 0} + - target: {fileID: 2057621013554333680, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_LocalScale.z + value: 2.92314 + objectReference: {fileID: 0} + - target: {fileID: 2057621013554699216, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_Name + value: StoneVariant2 (6) + objectReference: {fileID: 0} + - target: {fileID: 2057621013556626704, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_Materials.Array.data[0] + value: + objectReference: {fileID: 2100000, guid: d11179e416c9b394c8176d36a0dcae52, type: 2} + - target: {fileID: 2057621013557757904, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_Mesh + value: + objectReference: {fileID: 4300002, guid: 5e6dd9e33a8a1c748a582c8565e5f95f, type: 3} + - target: {fileID: 6182327852661155844, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_Materials.Array.data[0] + value: + objectReference: {fileID: 2100000, guid: c99104857011a3d478b482de4b0de308, type: 2} + - target: {fileID: 6182327852661155845, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_Name + value: StoneRound (5) + objectReference: {fileID: 0} + m_RemovedComponents: [] + m_SourcePrefab: {fileID: 100100000, guid: 230dd9257fca2c249b555f6edd3c8e14, type: 3} +--- !u!1001 &1124465530 +PrefabInstance: + m_ObjectHideFlags: 0 + serializedVersion: 2 + m_Modification: + m_TransformParent: {fileID: 77662693} + m_Modifications: + - target: {fileID: 100000, guid: dca6189290e8c16479a364fa6d80b6b8, type: 3} + propertyPath: m_Name + value: TreeRound (19) + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: dca6189290e8c16479a364fa6d80b6b8, type: 3} + propertyPath: m_LocalPosition.x + value: -91.60921 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: dca6189290e8c16479a364fa6d80b6b8, type: 3} + propertyPath: m_LocalPosition.y + value: 3.831336 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: dca6189290e8c16479a364fa6d80b6b8, type: 3} + propertyPath: m_LocalPosition.z + value: 129.41922 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: dca6189290e8c16479a364fa6d80b6b8, type: 3} + propertyPath: m_LocalRotation.x + value: 0.000000003687177 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: dca6189290e8c16479a364fa6d80b6b8, type: 3} + propertyPath: m_LocalRotation.y + value: 0.9989751 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: dca6189290e8c16479a364fa6d80b6b8, type: 3} + propertyPath: m_LocalRotation.z + value: 0.000000081376875 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: dca6189290e8c16479a364fa6d80b6b8, type: 3} + propertyPath: m_LocalRotation.w + value: 0.045263793 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: dca6189290e8c16479a364fa6d80b6b8, type: 3} + propertyPath: m_RootOrder + value: 19 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: dca6189290e8c16479a364fa6d80b6b8, type: 3} + propertyPath: m_LocalEulerAnglesHint.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: dca6189290e8c16479a364fa6d80b6b8, type: 3} + propertyPath: m_LocalEulerAnglesHint.y + value: 174.811 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: dca6189290e8c16479a364fa6d80b6b8, type: 3} + propertyPath: m_LocalEulerAnglesHint.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: dca6189290e8c16479a364fa6d80b6b8, type: 3} + propertyPath: m_LocalScale.x + value: 1.7392111 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: dca6189290e8c16479a364fa6d80b6b8, type: 3} + propertyPath: m_LocalScale.y + value: 1.7392083 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: dca6189290e8c16479a364fa6d80b6b8, type: 3} + propertyPath: m_LocalScale.z + value: 1.7392111 + objectReference: {fileID: 0} + - target: {fileID: 2300000, guid: dca6189290e8c16479a364fa6d80b6b8, type: 3} + propertyPath: m_Materials.Array.data[0] + value: + objectReference: {fileID: 2100000, guid: d11179e416c9b394c8176d36a0dcae52, type: 2} + - target: {fileID: 2300002, guid: dca6189290e8c16479a364fa6d80b6b8, type: 3} + propertyPath: m_Materials.Array.data[0] + value: + objectReference: {fileID: 2100000, guid: d11179e416c9b394c8176d36a0dcae52, type: 2} + m_RemovedComponents: [] + m_SourcePrefab: {fileID: 100100000, guid: dca6189290e8c16479a364fa6d80b6b8, type: 3} +--- !u!1001 &1125976068 +PrefabInstance: + m_ObjectHideFlags: 0 + serializedVersion: 2 + m_Modification: + m_TransformParent: {fileID: 822690626} + m_Modifications: + - target: {fileID: 4478061287446689989, guid: 06604f26f581c4de08c3f45572924c7d, + type: 3} + propertyPath: bounciness + value: 0.1 + objectReference: {fileID: 0} + - target: {fileID: 6602977218683501769, guid: 06604f26f581c4de08c3f45572924c7d, + type: 3} + propertyPath: m_Name + value: ModularTrackCurveLarge (3) + objectReference: {fileID: 0} + - target: {fileID: 6602977218683986153, guid: 06604f26f581c4de08c3f45572924c7d, + type: 3} + propertyPath: m_LocalPosition.x + value: -4 + objectReference: {fileID: 0} + - target: {fileID: 6602977218683986153, guid: 06604f26f581c4de08c3f45572924c7d, + type: 3} + propertyPath: m_LocalPosition.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 6602977218683986153, guid: 06604f26f581c4de08c3f45572924c7d, + type: 3} + propertyPath: m_LocalPosition.z + value: -43 + objectReference: {fileID: 0} + - target: {fileID: 6602977218683986153, guid: 06604f26f581c4de08c3f45572924c7d, + type: 3} + propertyPath: m_LocalRotation.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 6602977218683986153, guid: 06604f26f581c4de08c3f45572924c7d, + type: 3} + propertyPath: m_LocalRotation.y + value: 0.7071068 + objectReference: {fileID: 0} + - target: {fileID: 6602977218683986153, guid: 06604f26f581c4de08c3f45572924c7d, + type: 3} + propertyPath: m_LocalRotation.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 6602977218683986153, guid: 06604f26f581c4de08c3f45572924c7d, + type: 3} + propertyPath: m_LocalRotation.w + value: 0.7071068 + objectReference: {fileID: 0} + - target: {fileID: 6602977218683986153, guid: 06604f26f581c4de08c3f45572924c7d, + type: 3} + propertyPath: m_RootOrder + value: 19 + objectReference: {fileID: 0} + - target: {fileID: 6602977218683986153, guid: 06604f26f581c4de08c3f45572924c7d, + type: 3} + propertyPath: m_LocalEulerAnglesHint.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 6602977218683986153, guid: 06604f26f581c4de08c3f45572924c7d, + type: 3} + propertyPath: m_LocalEulerAnglesHint.y + value: 90 + objectReference: {fileID: 0} + - target: {fileID: 6602977218683986153, guid: 06604f26f581c4de08c3f45572924c7d, + type: 3} + propertyPath: m_LocalEulerAnglesHint.z + value: 0 + objectReference: {fileID: 0} + m_RemovedComponents: + - {fileID: 6602977218685588073, guid: 06604f26f581c4de08c3f45572924c7d, type: 3} + m_SourcePrefab: {fileID: 100100000, guid: 06604f26f581c4de08c3f45572924c7d, type: 3} +--- !u!4 &1125976069 stripped +Transform: + m_CorrespondingSourceObject: {fileID: 6602977218683986153, guid: 06604f26f581c4de08c3f45572924c7d, + type: 3} + m_PrefabInstance: {fileID: 1125976068} + m_PrefabAsset: {fileID: 0} +--- !u!4 &1131154813 stripped +Transform: + m_CorrespondingSourceObject: {fileID: 667086550830086704, guid: 3796997fde0c29b4180a4ec756403b34, + type: 3} + m_PrefabInstance: {fileID: 2115399483} + m_PrefabAsset: {fileID: 0} +--- !u!1001 &1135141575 +PrefabInstance: + m_ObjectHideFlags: 0 + serializedVersion: 2 + m_Modification: + m_TransformParent: {fileID: 822690626} + m_Modifications: + - target: {fileID: 1579282987822437358, guid: 941fac9249b6442cdb2d3f23472128e2, + type: 3} + propertyPath: m_Name + value: ModularTrackStraight (13) + objectReference: {fileID: 0} + - target: {fileID: 1579282987822796750, guid: 941fac9249b6442cdb2d3f23472128e2, + type: 3} + propertyPath: m_LocalPosition.x + value: -44 + objectReference: {fileID: 0} + - target: {fileID: 1579282987822796750, guid: 941fac9249b6442cdb2d3f23472128e2, + type: 3} + propertyPath: m_LocalPosition.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 1579282987822796750, guid: 941fac9249b6442cdb2d3f23472128e2, + type: 3} + propertyPath: m_LocalPosition.z + value: -23 + objectReference: {fileID: 0} + - target: {fileID: 1579282987822796750, guid: 941fac9249b6442cdb2d3f23472128e2, + type: 3} + propertyPath: m_LocalRotation.x + value: -0 + objectReference: {fileID: 0} + - target: {fileID: 1579282987822796750, guid: 941fac9249b6442cdb2d3f23472128e2, + type: 3} + propertyPath: m_LocalRotation.y + value: -0 + objectReference: {fileID: 0} + - target: {fileID: 1579282987822796750, guid: 941fac9249b6442cdb2d3f23472128e2, + type: 3} + propertyPath: m_LocalRotation.z + value: -0 + objectReference: {fileID: 0} + - target: {fileID: 1579282987822796750, guid: 941fac9249b6442cdb2d3f23472128e2, + type: 3} + propertyPath: m_LocalRotation.w + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 1579282987822796750, guid: 941fac9249b6442cdb2d3f23472128e2, + type: 3} + propertyPath: m_RootOrder + value: 15 + objectReference: {fileID: 0} + - target: {fileID: 1579282987822796750, guid: 941fac9249b6442cdb2d3f23472128e2, + type: 3} + propertyPath: m_LocalEulerAnglesHint.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 1579282987822796750, guid: 941fac9249b6442cdb2d3f23472128e2, + type: 3} + propertyPath: m_LocalEulerAnglesHint.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 1579282987822796750, guid: 941fac9249b6442cdb2d3f23472128e2, + type: 3} + propertyPath: m_LocalEulerAnglesHint.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 1644974464755198482, guid: 941fac9249b6442cdb2d3f23472128e2, + type: 3} + propertyPath: bounciness + value: 0.1 + objectReference: {fileID: 0} + m_RemovedComponents: + - {fileID: 1579282987816156490, guid: 941fac9249b6442cdb2d3f23472128e2, type: 3} + m_SourcePrefab: {fileID: 100100000, guid: 941fac9249b6442cdb2d3f23472128e2, type: 3} +--- !u!4 &1135141576 stripped +Transform: + m_CorrespondingSourceObject: {fileID: 1579282987822796750, guid: 941fac9249b6442cdb2d3f23472128e2, + type: 3} + m_PrefabInstance: {fileID: 1135141575} + m_PrefabAsset: {fileID: 0} +--- !u!1001 &1170209342 +PrefabInstance: + m_ObjectHideFlags: 0 + serializedVersion: 2 + m_Modification: + m_TransformParent: {fileID: 807038590} + m_Modifications: + - target: {fileID: 40299501215355906, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_RootOrder + value: 32 + objectReference: {fileID: 0} + - target: {fileID: 40299501215355906, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_LocalPosition.x + value: 6.1857567 + objectReference: {fileID: 0} + - target: {fileID: 40299501215355906, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_LocalPosition.y + value: -0.03467399 + objectReference: {fileID: 0} + - target: {fileID: 40299501215355906, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_LocalPosition.z + value: 14.436178 + objectReference: {fileID: 0} + - target: {fileID: 40299501215355906, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_LocalRotation.y + value: 0.9071285 + objectReference: {fileID: 0} + - target: {fileID: 40299501215355906, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_LocalRotation.z + value: -0 + objectReference: {fileID: 0} + - target: {fileID: 40299501215355906, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_LocalRotation.w + value: 0.42085382 + objectReference: {fileID: 0} + - target: {fileID: 40299501215355906, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_LocalEulerAnglesHint.y + value: 130.223 + objectReference: {fileID: 0} + - target: {fileID: 40299501215355906, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_LocalScale.x + value: 1.993151 + objectReference: {fileID: 0} + - target: {fileID: 40299501215355906, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_LocalScale.y + value: 1.993149 + objectReference: {fileID: 0} + - target: {fileID: 40299501215355906, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_LocalScale.z + value: 1.993151 + objectReference: {fileID: 0} + - target: {fileID: 40299501215355906, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_LocalRotation.x + value: -0 + objectReference: {fileID: 0} + - target: {fileID: 2057621013554333680, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_LocalPosition.x + value: 57.8 + objectReference: {fileID: 0} + - target: {fileID: 2057621013554333680, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_LocalPosition.y + value: -0.862 + objectReference: {fileID: 0} + - target: {fileID: 2057621013554333680, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_LocalPosition.z + value: 93.9 + objectReference: {fileID: 0} + - target: {fileID: 2057621013554333680, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_LocalRotation.x + value: -0 + objectReference: {fileID: 0} + - target: {fileID: 2057621013554333680, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_LocalRotation.y + value: 0.907129 + objectReference: {fileID: 0} + - target: {fileID: 2057621013554333680, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_LocalRotation.z + value: -0 + objectReference: {fileID: 0} + - target: {fileID: 2057621013554333680, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_LocalRotation.w + value: 0.42085275 + objectReference: {fileID: 0} + - target: {fileID: 2057621013554333680, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_RootOrder + value: 34 + objectReference: {fileID: 0} + - target: {fileID: 2057621013554333680, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_LocalEulerAnglesHint.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 2057621013554333680, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_LocalEulerAnglesHint.y + value: 130.223 + objectReference: {fileID: 0} + - target: {fileID: 2057621013554333680, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_LocalEulerAnglesHint.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 2057621013554333680, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_LocalScale.x + value: 1.2849003 + objectReference: {fileID: 0} + - target: {fileID: 2057621013554333680, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_LocalScale.y + value: 1.2849 + objectReference: {fileID: 0} + - target: {fileID: 2057621013554333680, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_LocalScale.z + value: 1.2849003 + objectReference: {fileID: 0} + - target: {fileID: 2057621013554699216, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_Name + value: StoneVariant2 (24) + objectReference: {fileID: 0} + - target: {fileID: 2057621013556626704, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_Materials.Array.data[0] + value: + objectReference: {fileID: 2100000, guid: d11179e416c9b394c8176d36a0dcae52, type: 2} + - target: {fileID: 2057621013557757904, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_Mesh + value: + objectReference: {fileID: 4300002, guid: 5e6dd9e33a8a1c748a582c8565e5f95f, type: 3} + - target: {fileID: 6182327852661155845, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_Name + value: StoneRound (19) + objectReference: {fileID: 0} + m_RemovedComponents: [] + m_SourcePrefab: {fileID: 100100000, guid: 230dd9257fca2c249b555f6edd3c8e14, type: 3} +--- !u!1 &1175779212 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 1175779214} + - component: {fileID: 1175779213} + - component: {fileID: 1175779215} + m_Layer: 0 + m_Name: CinemachineVirtualCamera + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!114 &1175779213 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1175779212} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 45e653bab7fb20e499bda25e1b646fea, type: 3} + m_Name: + m_EditorClassIdentifier: + m_ExcludedPropertiesInInspector: + - m_Script + m_LockStageInInspector: + m_StreamingVersion: 20170927 + m_Priority: 10 + m_StandbyUpdate: 2 + m_LookAt: {fileID: 1928990893} + m_Follow: {fileID: 1928990893} + m_Lens: + FieldOfView: 40 + OrthographicSize: 10 + NearClipPlane: 0.1 + FarClipPlane: 5000 + Dutch: 0 + LensShift: {x: 0, y: 0} + m_Transitions: + m_BlendHint: 0 + m_InheritPosition: 0 + m_OnCameraLive: + m_PersistentCalls: + m_Calls: [] + m_LegacyBlendHint: 0 + m_ComponentOwner: {fileID: 166865640} +--- !u!4 &1175779214 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1175779212} + m_LocalRotation: {x: 0.038215775, y: 0.0000000019252349, z: -0.00000049926905, w: 0.99926955} + m_LocalPosition: {x: 16, y: 2.05, z: -5} + m_LocalScale: {x: 1, y: 1, z: 1} + m_Children: + - {fileID: 166865640} + m_Father: {fileID: 0} + m_RootOrder: 13 + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!114 &1175779215 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1175779212} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: e501d18bb52cf8c40b1853ca4904654f, type: 3} + m_Name: + m_EditorClassIdentifier: + m_CollideAgainst: + serializedVersion: 2 + m_Bits: 1 + m_IgnoreTag: + m_TransparentLayers: + serializedVersion: 2 + m_Bits: 0 + m_MinimumDistanceFromTarget: 0.1 + m_AvoidObstacles: 1 + m_DistanceLimit: 0 + m_MinimumOcclusionTime: 0 + m_CameraRadius: 0.1 + m_Strategy: 0 + m_MaximumEffort: 10 + m_SmoothingTime: 0.5 + m_Damping: 2 + m_DampingWhenOccluded: 1 + m_OptimalTargetDistance: 0 +--- !u!1 &1176067594 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 1176067596} + - component: {fileID: 1176067595} + m_Layer: 8 + m_Name: PostProcessVolume + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!114 &1176067595 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1176067594} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 8b9a305e18de0c04dbd257a21cd47087, type: 3} + m_Name: + m_EditorClassIdentifier: + sharedProfile: {fileID: 11400000, guid: 38c256f7cfdc9494788a6a863582f97d, type: 2} + isGlobal: 1 + blendDistance: 0 + weight: 1 + priority: 0 +--- !u!4 &1176067596 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1176067594} + m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} + m_LocalPosition: {x: 14.06, y: 0.59799755, z: -0.11515212} + m_LocalScale: {x: 1, y: 1, z: 1} + m_Children: [] + m_Father: {fileID: 0} + m_RootOrder: 14 + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!1001 &1181224050 +PrefabInstance: + m_ObjectHideFlags: 0 + serializedVersion: 2 + m_Modification: + m_TransformParent: {fileID: 807038590} + m_Modifications: + - target: {fileID: 40299501215355906, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_RootOrder + value: 31 + objectReference: {fileID: 0} + - target: {fileID: 40299501215355906, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_LocalPosition.x + value: -35 + objectReference: {fileID: 0} + - target: {fileID: 40299501215355906, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_LocalPosition.y + value: -0.03467393 + objectReference: {fileID: 0} + - target: {fileID: 40299501215355906, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_LocalPosition.z + value: -27 + objectReference: {fileID: 0} + - target: {fileID: 40299501215355906, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_LocalRotation.y + value: 0.9071285 + objectReference: {fileID: 0} + - target: {fileID: 40299501215355906, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_LocalRotation.z + value: -0 + objectReference: {fileID: 0} + - target: {fileID: 40299501215355906, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_LocalRotation.w + value: 0.42085382 + objectReference: {fileID: 0} + - target: {fileID: 40299501215355906, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_LocalEulerAnglesHint.y + value: 130.223 + objectReference: {fileID: 0} + - target: {fileID: 40299501215355906, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_LocalScale.x + value: 1.9931517 + objectReference: {fileID: 0} + - target: {fileID: 40299501215355906, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_LocalScale.y + value: 1.99315 + objectReference: {fileID: 0} + - target: {fileID: 40299501215355906, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_LocalScale.z + value: 1.9931517 + objectReference: {fileID: 0} + - target: {fileID: 40299501215355906, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_LocalRotation.x + value: -0 + objectReference: {fileID: 0} + - target: {fileID: 2057621013554333680, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_LocalPosition.x + value: 63.1 + objectReference: {fileID: 0} + - target: {fileID: 2057621013554333680, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_LocalPosition.y + value: -0.862 + objectReference: {fileID: 0} + - target: {fileID: 2057621013554333680, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_LocalPosition.z + value: 75.4 + objectReference: {fileID: 0} + - target: {fileID: 2057621013554333680, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_LocalRotation.x + value: -0 + objectReference: {fileID: 0} + - target: {fileID: 2057621013554333680, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_LocalRotation.y + value: 0.907129 + objectReference: {fileID: 0} + - target: {fileID: 2057621013554333680, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_LocalRotation.z + value: -0 + objectReference: {fileID: 0} + - target: {fileID: 2057621013554333680, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_LocalRotation.w + value: 0.42085275 + objectReference: {fileID: 0} + - target: {fileID: 2057621013554333680, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_RootOrder + value: 33 + objectReference: {fileID: 0} + - target: {fileID: 2057621013554333680, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_LocalEulerAnglesHint.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 2057621013554333680, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_LocalEulerAnglesHint.y + value: 130.223 + objectReference: {fileID: 0} + - target: {fileID: 2057621013554333680, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_LocalEulerAnglesHint.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 2057621013554333680, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_LocalScale.x + value: 1.2849003 + objectReference: {fileID: 0} + - target: {fileID: 2057621013554333680, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_LocalScale.y + value: 1.2849 + objectReference: {fileID: 0} + - target: {fileID: 2057621013554333680, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_LocalScale.z + value: 1.2849003 + objectReference: {fileID: 0} + - target: {fileID: 2057621013554699216, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_Name + value: StoneVariant2 (23) + objectReference: {fileID: 0} + - target: {fileID: 2057621013556626704, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_Materials.Array.data[0] + value: + objectReference: {fileID: 2100000, guid: d11179e416c9b394c8176d36a0dcae52, type: 2} + - target: {fileID: 2057621013557757904, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_Mesh + value: + objectReference: {fileID: 4300002, guid: 5e6dd9e33a8a1c748a582c8565e5f95f, type: 3} + - target: {fileID: 6182327852661155845, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_Name + value: StoneRound (18) + objectReference: {fileID: 0} + m_RemovedComponents: [] + m_SourcePrefab: {fileID: 100100000, guid: 230dd9257fca2c249b555f6edd3c8e14, type: 3} +--- !u!4 &1192398534 stripped +Transform: + m_CorrespondingSourceObject: {fileID: 400000, guid: 9f1e50f73a529a448b004add5bec5d80, + type: 3} + m_PrefabInstance: {fileID: 1285409554} + m_PrefabAsset: {fileID: 0} +--- !u!1001 &1196346769 +PrefabInstance: + m_ObjectHideFlags: 0 + serializedVersion: 2 + m_Modification: + m_TransformParent: {fileID: 1645660025} + m_Modifications: + - target: {fileID: 1861639547071064576, guid: 45c52fcc7429b214c8f9a6d85321ba77, + type: 3} + propertyPath: m_Name + value: BuildingShort (3) + objectReference: {fileID: 0} + - target: {fileID: 4353122324495461665, guid: 45c52fcc7429b214c8f9a6d85321ba77, + type: 3} + propertyPath: m_Materials.Array.data[0] + value: + objectReference: {fileID: 2100000, guid: c99104857011a3d478b482de4b0de308, type: 2} + - target: {fileID: 5538800703641817082, guid: 45c52fcc7429b214c8f9a6d85321ba77, + type: 3} + propertyPath: m_LocalPosition.x + value: 42.48249 + objectReference: {fileID: 0} + - target: {fileID: 5538800703641817082, guid: 45c52fcc7429b214c8f9a6d85321ba77, + type: 3} + propertyPath: m_LocalPosition.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 5538800703641817082, guid: 45c52fcc7429b214c8f9a6d85321ba77, + type: 3} + propertyPath: m_LocalPosition.z + value: -4.6946297 + objectReference: {fileID: 0} + - target: {fileID: 5538800703641817082, guid: 45c52fcc7429b214c8f9a6d85321ba77, + type: 3} + propertyPath: m_LocalRotation.x + value: -0 + objectReference: {fileID: 0} + - target: {fileID: 5538800703641817082, guid: 45c52fcc7429b214c8f9a6d85321ba77, + type: 3} + propertyPath: m_LocalRotation.y + value: 0.70710754 + objectReference: {fileID: 0} + - target: {fileID: 5538800703641817082, guid: 45c52fcc7429b214c8f9a6d85321ba77, + type: 3} + propertyPath: m_LocalRotation.z + value: -0 + objectReference: {fileID: 0} + - target: {fileID: 5538800703641817082, guid: 45c52fcc7429b214c8f9a6d85321ba77, + type: 3} + propertyPath: m_LocalRotation.w + value: 0.7071061 + objectReference: {fileID: 0} + - target: {fileID: 5538800703641817082, guid: 45c52fcc7429b214c8f9a6d85321ba77, + type: 3} + propertyPath: m_RootOrder + value: 3 + objectReference: {fileID: 0} + - target: {fileID: 5538800703641817082, guid: 45c52fcc7429b214c8f9a6d85321ba77, + type: 3} + propertyPath: m_LocalEulerAnglesHint.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 5538800703641817082, guid: 45c52fcc7429b214c8f9a6d85321ba77, + type: 3} + propertyPath: m_LocalEulerAnglesHint.y + value: 90.00001 + objectReference: {fileID: 0} + - target: {fileID: 5538800703641817082, guid: 45c52fcc7429b214c8f9a6d85321ba77, + type: 3} + propertyPath: m_LocalEulerAnglesHint.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 5538800703641817082, guid: 45c52fcc7429b214c8f9a6d85321ba77, + type: 3} + propertyPath: m_LocalScale.x + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 5538800703641817082, guid: 45c52fcc7429b214c8f9a6d85321ba77, + type: 3} + propertyPath: m_LocalScale.z + value: 1 + objectReference: {fileID: 0} + m_RemovedComponents: [] + m_SourcePrefab: {fileID: 100100000, guid: 45c52fcc7429b214c8f9a6d85321ba77, type: 3} +--- !u!4 &1196346770 stripped +Transform: + m_CorrespondingSourceObject: {fileID: 5538800703641817082, guid: 45c52fcc7429b214c8f9a6d85321ba77, + type: 3} + m_PrefabInstance: {fileID: 1196346769} + m_PrefabAsset: {fileID: 0} +--- !u!4 &1226212857 stripped +Transform: + m_CorrespondingSourceObject: {fileID: 400000, guid: 92bb9994204d1d44cb6223c53e4f84f8, + type: 3} + m_PrefabInstance: {fileID: 304557107} + m_PrefabAsset: {fileID: 0} +--- !u!1001 &1227090948 +PrefabInstance: + m_ObjectHideFlags: 0 + serializedVersion: 2 + m_Modification: + m_TransformParent: {fileID: 1889916056} + m_Modifications: + - target: {fileID: 100012, guid: 0829d76c4806eb54b8b2f17eec10f4e6, type: 3} + propertyPath: m_Name + value: Cloud (12) + objectReference: {fileID: 0} + - target: {fileID: 100012, guid: 0829d76c4806eb54b8b2f17eec10f4e6, type: 3} + propertyPath: m_StaticEditorFlags + value: 4294967295 + objectReference: {fileID: 0} + - target: {fileID: 400012, guid: 0829d76c4806eb54b8b2f17eec10f4e6, type: 3} + propertyPath: m_LocalPosition.x + value: 215.79077 + objectReference: {fileID: 0} + - target: {fileID: 400012, guid: 0829d76c4806eb54b8b2f17eec10f4e6, type: 3} + propertyPath: m_LocalPosition.y + value: 6.531336 + objectReference: {fileID: 0} + - target: {fileID: 400012, guid: 0829d76c4806eb54b8b2f17eec10f4e6, type: 3} + propertyPath: m_LocalPosition.z + value: -187.38077 + objectReference: {fileID: 0} + - target: {fileID: 400012, guid: 0829d76c4806eb54b8b2f17eec10f4e6, type: 3} + propertyPath: m_LocalRotation.x + value: -0 + objectReference: {fileID: 0} + - target: {fileID: 400012, guid: 0829d76c4806eb54b8b2f17eec10f4e6, type: 3} + propertyPath: m_LocalRotation.y + value: 0.86507314 + objectReference: {fileID: 0} + - target: {fileID: 400012, guid: 0829d76c4806eb54b8b2f17eec10f4e6, type: 3} + propertyPath: m_LocalRotation.z + value: -0 + objectReference: {fileID: 0} + - target: {fileID: 400012, guid: 0829d76c4806eb54b8b2f17eec10f4e6, type: 3} + propertyPath: m_LocalRotation.w + value: 0.50164574 + objectReference: {fileID: 0} + - target: {fileID: 400012, guid: 0829d76c4806eb54b8b2f17eec10f4e6, type: 3} + propertyPath: m_RootOrder + value: 12 + objectReference: {fileID: 0} + - target: {fileID: 400012, guid: 0829d76c4806eb54b8b2f17eec10f4e6, type: 3} + propertyPath: m_LocalEulerAnglesHint.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 400012, guid: 0829d76c4806eb54b8b2f17eec10f4e6, type: 3} + propertyPath: m_LocalEulerAnglesHint.y + value: 119.782005 + objectReference: {fileID: 0} + - target: {fileID: 400012, guid: 0829d76c4806eb54b8b2f17eec10f4e6, type: 3} + propertyPath: m_LocalEulerAnglesHint.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 400012, guid: 0829d76c4806eb54b8b2f17eec10f4e6, type: 3} + propertyPath: m_LocalScale.x + value: 6.4706187 + objectReference: {fileID: 0} + - target: {fileID: 400012, guid: 0829d76c4806eb54b8b2f17eec10f4e6, type: 3} + propertyPath: m_LocalScale.y + value: 6.4706197 + objectReference: {fileID: 0} + - target: {fileID: 400012, guid: 0829d76c4806eb54b8b2f17eec10f4e6, type: 3} + propertyPath: m_LocalScale.z + value: 6.4706187 + objectReference: {fileID: 0} + - target: {fileID: 2300000, guid: 0829d76c4806eb54b8b2f17eec10f4e6, type: 3} + propertyPath: m_Materials.Array.data[0] + value: + objectReference: {fileID: 2100000, guid: c1fb7d3a27a67b947bb2b2ab391072b0, type: 2} + - target: {fileID: 2300002, guid: 0829d76c4806eb54b8b2f17eec10f4e6, type: 3} + propertyPath: m_Materials.Array.data[0] + value: + objectReference: {fileID: 2100000, guid: c1fb7d3a27a67b947bb2b2ab391072b0, type: 2} + - target: {fileID: 2300004, guid: 0829d76c4806eb54b8b2f17eec10f4e6, type: 3} + propertyPath: m_Materials.Array.data[0] + value: + objectReference: {fileID: 2100000, guid: c1fb7d3a27a67b947bb2b2ab391072b0, type: 2} + - target: {fileID: 2300006, guid: 0829d76c4806eb54b8b2f17eec10f4e6, type: 3} + propertyPath: m_Materials.Array.data[0] + value: + objectReference: {fileID: 2100000, guid: c1fb7d3a27a67b947bb2b2ab391072b0, type: 2} + - target: {fileID: 2300008, guid: 0829d76c4806eb54b8b2f17eec10f4e6, type: 3} + propertyPath: m_Materials.Array.data[0] + value: + objectReference: {fileID: 2100000, guid: c1fb7d3a27a67b947bb2b2ab391072b0, type: 2} + - target: {fileID: 2300010, guid: 0829d76c4806eb54b8b2f17eec10f4e6, type: 3} + propertyPath: m_Materials.Array.data[0] + value: + objectReference: {fileID: 2100000, guid: c1fb7d3a27a67b947bb2b2ab391072b0, type: 2} + - target: {fileID: 2300012, guid: 0829d76c4806eb54b8b2f17eec10f4e6, type: 3} + propertyPath: m_Materials.Array.data[0] + value: + objectReference: {fileID: 2100000, guid: d11179e416c9b394c8176d36a0dcae52, type: 2} + m_RemovedComponents: [] + m_SourcePrefab: {fileID: 100100000, guid: 0829d76c4806eb54b8b2f17eec10f4e6, type: 3} +--- !u!1001 &1268325793 +PrefabInstance: + m_ObjectHideFlags: 0 + serializedVersion: 2 + m_Modification: + m_TransformParent: {fileID: 77662693} + m_Modifications: + - target: {fileID: 100000, guid: 9f1e50f73a529a448b004add5bec5d80, type: 3} + propertyPath: m_Name + value: TreeBox (6) + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 9f1e50f73a529a448b004add5bec5d80, type: 3} + propertyPath: m_LocalPosition.x + value: -107.49921 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 9f1e50f73a529a448b004add5bec5d80, type: 3} + propertyPath: m_LocalPosition.y + value: -0.058664322 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 9f1e50f73a529a448b004add5bec5d80, type: 3} + propertyPath: m_LocalPosition.z + value: 93.229225 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 9f1e50f73a529a448b004add5bec5d80, type: 3} + propertyPath: m_LocalRotation.x + value: -0 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 9f1e50f73a529a448b004add5bec5d80, type: 3} + propertyPath: m_LocalRotation.y + value: -0.39853132 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 9f1e50f73a529a448b004add5bec5d80, type: 3} + propertyPath: m_LocalRotation.z + value: -0 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 9f1e50f73a529a448b004add5bec5d80, type: 3} + propertyPath: m_LocalRotation.w + value: 0.9171547 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 9f1e50f73a529a448b004add5bec5d80, type: 3} + propertyPath: m_RootOrder + value: 26 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 9f1e50f73a529a448b004add5bec5d80, type: 3} + propertyPath: m_LocalEulerAnglesHint.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 9f1e50f73a529a448b004add5bec5d80, type: 3} + propertyPath: m_LocalEulerAnglesHint.y + value: -46.973003 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 9f1e50f73a529a448b004add5bec5d80, type: 3} + propertyPath: m_LocalEulerAnglesHint.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 9f1e50f73a529a448b004add5bec5d80, type: 3} + propertyPath: m_LocalScale.x + value: 3.31176 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 9f1e50f73a529a448b004add5bec5d80, type: 3} + propertyPath: m_LocalScale.y + value: 3.31175 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 9f1e50f73a529a448b004add5bec5d80, type: 3} + propertyPath: m_LocalScale.z + value: 3.31176 + objectReference: {fileID: 0} + - target: {fileID: 2300000, guid: 9f1e50f73a529a448b004add5bec5d80, type: 3} + propertyPath: m_Materials.Array.data[0] + value: + objectReference: {fileID: 2100000, guid: d11179e416c9b394c8176d36a0dcae52, type: 2} + m_RemovedComponents: [] + m_SourcePrefab: {fileID: 100100000, guid: 9f1e50f73a529a448b004add5bec5d80, type: 3} +--- !u!1001 &1277693331 +PrefabInstance: + m_ObjectHideFlags: 0 + serializedVersion: 2 + m_Modification: + m_TransformParent: {fileID: 77662693} + m_Modifications: + - target: {fileID: 100000, guid: 9f1e50f73a529a448b004add5bec5d80, type: 3} + propertyPath: m_Name + value: TreeBox (20) + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 9f1e50f73a529a448b004add5bec5d80, type: 3} + propertyPath: m_LocalPosition.x + value: -60.40921 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 9f1e50f73a529a448b004add5bec5d80, type: 3} + propertyPath: m_LocalPosition.y + value: -0.49866438 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 9f1e50f73a529a448b004add5bec5d80, type: 3} + propertyPath: m_LocalPosition.z + value: 128.11923 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 9f1e50f73a529a448b004add5bec5d80, type: 3} + propertyPath: m_LocalRotation.x + value: -0 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 9f1e50f73a529a448b004add5bec5d80, type: 3} + propertyPath: m_LocalRotation.y + value: -0.39853132 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 9f1e50f73a529a448b004add5bec5d80, type: 3} + propertyPath: m_LocalRotation.z + value: -0 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 9f1e50f73a529a448b004add5bec5d80, type: 3} + propertyPath: m_LocalRotation.w + value: 0.9171547 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 9f1e50f73a529a448b004add5bec5d80, type: 3} + propertyPath: m_RootOrder + value: 39 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 9f1e50f73a529a448b004add5bec5d80, type: 3} + propertyPath: m_LocalEulerAnglesHint.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 9f1e50f73a529a448b004add5bec5d80, type: 3} + propertyPath: m_LocalEulerAnglesHint.y + value: -46.973003 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 9f1e50f73a529a448b004add5bec5d80, type: 3} + propertyPath: m_LocalEulerAnglesHint.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 9f1e50f73a529a448b004add5bec5d80, type: 3} + propertyPath: m_LocalScale.x + value: 3.31176 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 9f1e50f73a529a448b004add5bec5d80, type: 3} + propertyPath: m_LocalScale.y + value: 3.31175 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 9f1e50f73a529a448b004add5bec5d80, type: 3} + propertyPath: m_LocalScale.z + value: 3.31176 + objectReference: {fileID: 0} + - target: {fileID: 2300000, guid: 9f1e50f73a529a448b004add5bec5d80, type: 3} + propertyPath: m_Materials.Array.data[0] + value: + objectReference: {fileID: 2100000, guid: d11179e416c9b394c8176d36a0dcae52, type: 2} + m_RemovedComponents: [] + m_SourcePrefab: {fileID: 100100000, guid: 9f1e50f73a529a448b004add5bec5d80, type: 3} +--- !u!4 &1281384708 stripped +Transform: + m_CorrespondingSourceObject: {fileID: 667086550830086704, guid: 3796997fde0c29b4180a4ec756403b34, + type: 3} + m_PrefabInstance: {fileID: 1606700685} + m_PrefabAsset: {fileID: 0} +--- !u!4 &1282969509 stripped +Transform: + m_CorrespondingSourceObject: {fileID: 667086550830086704, guid: 3796997fde0c29b4180a4ec756403b34, + type: 3} + m_PrefabInstance: {fileID: 1360103340} + m_PrefabAsset: {fileID: 0} +--- !u!1001 &1284808343 +PrefabInstance: + m_ObjectHideFlags: 0 + serializedVersion: 2 + m_Modification: + m_TransformParent: {fileID: 807038590} + m_Modifications: + - target: {fileID: 40299501215355906, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_RootOrder + value: 35 + objectReference: {fileID: 0} + - target: {fileID: 40299501215355906, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_LocalPosition.x + value: 26.395756 + objectReference: {fileID: 0} + - target: {fileID: 40299501215355906, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_LocalPosition.y + value: 0.020326138 + objectReference: {fileID: 0} + - target: {fileID: 40299501215355906, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_LocalPosition.z + value: 11.676178 + objectReference: {fileID: 0} + - target: {fileID: 40299501215355906, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_LocalRotation.y + value: 0.9071285 + objectReference: {fileID: 0} + - target: {fileID: 40299501215355906, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_LocalRotation.z + value: -0 + objectReference: {fileID: 0} + - target: {fileID: 40299501215355906, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_LocalRotation.w + value: 0.42085382 + objectReference: {fileID: 0} + - target: {fileID: 40299501215355906, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_LocalEulerAnglesHint.y + value: 130.223 + objectReference: {fileID: 0} + - target: {fileID: 40299501215355906, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_LocalScale.x + value: 1.284905 + objectReference: {fileID: 0} + - target: {fileID: 40299501215355906, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_LocalScale.y + value: 1.284904 + objectReference: {fileID: 0} + - target: {fileID: 40299501215355906, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_LocalScale.z + value: 1.284905 + objectReference: {fileID: 0} + - target: {fileID: 40299501215355906, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_LocalRotation.x + value: -0 + objectReference: {fileID: 0} + - target: {fileID: 2057621013554333680, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_LocalPosition.x + value: 63 + objectReference: {fileID: 0} + - target: {fileID: 2057621013554333680, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_LocalPosition.y + value: -1.04 + objectReference: {fileID: 0} + - target: {fileID: 2057621013554333680, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_LocalPosition.z + value: -62.3 + objectReference: {fileID: 0} + - target: {fileID: 2057621013554333680, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_LocalRotation.x + value: -0 + objectReference: {fileID: 0} + - target: {fileID: 2057621013554333680, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_LocalRotation.y + value: -0 + objectReference: {fileID: 0} + - target: {fileID: 2057621013554333680, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_LocalRotation.z + value: -0 + objectReference: {fileID: 0} + - target: {fileID: 2057621013554333680, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_LocalRotation.w + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 2057621013554333680, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_RootOrder + value: 36 + objectReference: {fileID: 0} + - target: {fileID: 2057621013554333680, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_LocalEulerAnglesHint.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 2057621013554333680, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_LocalEulerAnglesHint.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 2057621013554333680, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_LocalEulerAnglesHint.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 2057621013554333680, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_LocalScale.x + value: 2.3006 + objectReference: {fileID: 0} + - target: {fileID: 2057621013554333680, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_LocalScale.y + value: 2.3006 + objectReference: {fileID: 0} + - target: {fileID: 2057621013554333680, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_LocalScale.z + value: 2.3006 + objectReference: {fileID: 0} + - target: {fileID: 2057621013554699216, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_Name + value: StoneVariant2 (26) + objectReference: {fileID: 0} + - target: {fileID: 2057621013556626704, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_Materials.Array.data[0] + value: + objectReference: {fileID: 2100000, guid: d11179e416c9b394c8176d36a0dcae52, type: 2} + - target: {fileID: 2057621013557757904, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_Mesh + value: + objectReference: {fileID: 4300002, guid: 5e6dd9e33a8a1c748a582c8565e5f95f, type: 3} + - target: {fileID: 6182327852661155845, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_Name + value: StoneRound (22) + objectReference: {fileID: 0} + m_RemovedComponents: [] + m_SourcePrefab: {fileID: 100100000, guid: 230dd9257fca2c249b555f6edd3c8e14, type: 3} +--- !u!1001 &1285409554 +PrefabInstance: + m_ObjectHideFlags: 0 + serializedVersion: 2 + m_Modification: + m_TransformParent: {fileID: 77662693} + m_Modifications: + - target: {fileID: 100000, guid: 9f1e50f73a529a448b004add5bec5d80, type: 3} + propertyPath: m_Name + value: TreeBox (13) + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 9f1e50f73a529a448b004add5bec5d80, type: 3} + propertyPath: m_LocalPosition.x + value: 30 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 9f1e50f73a529a448b004add5bec5d80, type: 3} + propertyPath: m_LocalPosition.y + value: -0.85376406 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 9f1e50f73a529a448b004add5bec5d80, type: 3} + propertyPath: m_LocalPosition.z + value: -67 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 9f1e50f73a529a448b004add5bec5d80, type: 3} + propertyPath: m_LocalRotation.x + value: -0 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 9f1e50f73a529a448b004add5bec5d80, type: 3} + propertyPath: m_LocalRotation.y + value: 0.9004273 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 9f1e50f73a529a448b004add5bec5d80, type: 3} + propertyPath: m_LocalRotation.z + value: -0 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 9f1e50f73a529a448b004add5bec5d80, type: 3} + propertyPath: m_LocalRotation.w + value: -0.4350067 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 9f1e50f73a529a448b004add5bec5d80, type: 3} + propertyPath: m_RootOrder + value: 32 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 9f1e50f73a529a448b004add5bec5d80, type: 3} + propertyPath: m_LocalEulerAnglesHint.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 9f1e50f73a529a448b004add5bec5d80, type: 3} + propertyPath: m_LocalEulerAnglesHint.y + value: 231.571 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 9f1e50f73a529a448b004add5bec5d80, type: 3} + propertyPath: m_LocalEulerAnglesHint.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 9f1e50f73a529a448b004add5bec5d80, type: 3} + propertyPath: m_LocalScale.x + value: 3.8512077 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 9f1e50f73a529a448b004add5bec5d80, type: 3} + propertyPath: m_LocalScale.y + value: 3.851201 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 9f1e50f73a529a448b004add5bec5d80, type: 3} + propertyPath: m_LocalScale.z + value: 3.8512077 + objectReference: {fileID: 0} + - target: {fileID: 2300000, guid: 9f1e50f73a529a448b004add5bec5d80, type: 3} + propertyPath: m_Materials.Array.data[0] + value: + objectReference: {fileID: 2100000, guid: d11179e416c9b394c8176d36a0dcae52, type: 2} + m_RemovedComponents: [] + m_SourcePrefab: {fileID: 100100000, guid: 9f1e50f73a529a448b004add5bec5d80, type: 3} +--- !u!1001 &1288142032 +PrefabInstance: + m_ObjectHideFlags: 0 + serializedVersion: 2 + m_Modification: + m_TransformParent: {fileID: 807038590} + m_Modifications: + - target: {fileID: 667086550830086704, guid: 3796997fde0c29b4180a4ec756403b34, + type: 3} + propertyPath: m_LocalRotation.x + value: -0 + objectReference: {fileID: 0} + - target: {fileID: 667086550830086704, guid: 3796997fde0c29b4180a4ec756403b34, + type: 3} + propertyPath: m_LocalRotation.y + value: -0.25032923 + objectReference: {fileID: 0} + - target: {fileID: 667086550830086704, guid: 3796997fde0c29b4180a4ec756403b34, + type: 3} + propertyPath: m_LocalRotation.w + value: 0.96816075 + objectReference: {fileID: 0} + - target: {fileID: 667086550830086704, guid: 3796997fde0c29b4180a4ec756403b34, + type: 3} + propertyPath: m_LocalPosition.x + value: -24.114243 + objectReference: {fileID: 0} + - target: {fileID: 667086550830086704, guid: 3796997fde0c29b4180a4ec756403b34, + type: 3} + propertyPath: m_LocalPosition.y + value: 0.0023261309 + objectReference: {fileID: 0} + - target: {fileID: 667086550830086704, guid: 3796997fde0c29b4180a4ec756403b34, + type: 3} + propertyPath: m_LocalPosition.z + value: -60.26382 + objectReference: {fileID: 0} + - target: {fileID: 667086550830086704, guid: 3796997fde0c29b4180a4ec756403b34, + type: 3} + propertyPath: m_LocalScale.x + value: 7.295459 + objectReference: {fileID: 0} + - target: {fileID: 667086550830086704, guid: 3796997fde0c29b4180a4ec756403b34, + type: 3} + propertyPath: m_LocalScale.y + value: 7.295455 + objectReference: {fileID: 0} + - target: {fileID: 667086550830086704, guid: 3796997fde0c29b4180a4ec756403b34, + type: 3} + propertyPath: m_LocalScale.z + value: 7.295459 + objectReference: {fileID: 0} + - target: {fileID: 667086550830086704, guid: 3796997fde0c29b4180a4ec756403b34, + type: 3} + propertyPath: m_RootOrder + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 667086550830086704, guid: 3796997fde0c29b4180a4ec756403b34, + type: 3} + propertyPath: m_LocalEulerAnglesHint.y + value: -28.994 + objectReference: {fileID: 0} + - target: {fileID: 667086550830086704, guid: 3796997fde0c29b4180a4ec756403b34, + type: 3} + propertyPath: m_LocalRotation.z + value: -0 + objectReference: {fileID: 0} + - target: {fileID: 5742194636018856685, guid: 3796997fde0c29b4180a4ec756403b34, + type: 3} + propertyPath: m_Name + value: StoneFlat + objectReference: {fileID: 0} + - target: {fileID: 7265208955801587247, guid: 3796997fde0c29b4180a4ec756403b34, + type: 3} + propertyPath: m_Materials.Array.data[0] + value: + objectReference: {fileID: 2100000, guid: d11179e416c9b394c8176d36a0dcae52, type: 2} + - target: {fileID: 7265208955802684655, guid: 3796997fde0c29b4180a4ec756403b34, + type: 3} + propertyPath: m_Mesh + value: + objectReference: {fileID: 4300002, guid: c80f31023dcf9b34cbd0044505be4806, type: 3} + - target: {fileID: 7265208955803586799, guid: 3796997fde0c29b4180a4ec756403b34, + type: 3} + propertyPath: m_Name + value: StoneVariant1 (1) + objectReference: {fileID: 0} + - target: {fileID: 7265208955804011727, guid: 3796997fde0c29b4180a4ec756403b34, + type: 3} + propertyPath: m_LocalPosition.x + value: 14.7 + objectReference: {fileID: 0} + - target: {fileID: 7265208955804011727, guid: 3796997fde0c29b4180a4ec756403b34, + type: 3} + propertyPath: m_LocalPosition.y + value: -0.88 + objectReference: {fileID: 0} + - target: {fileID: 7265208955804011727, guid: 3796997fde0c29b4180a4ec756403b34, + type: 3} + propertyPath: m_LocalPosition.z + value: -55.1 + objectReference: {fileID: 0} + - target: {fileID: 7265208955804011727, guid: 3796997fde0c29b4180a4ec756403b34, + type: 3} + propertyPath: m_LocalRotation.x + value: -0 + objectReference: {fileID: 0} + - target: {fileID: 7265208955804011727, guid: 3796997fde0c29b4180a4ec756403b34, + type: 3} + propertyPath: m_LocalRotation.y + value: -0.25032562 + objectReference: {fileID: 0} + - target: {fileID: 7265208955804011727, guid: 3796997fde0c29b4180a4ec756403b34, + type: 3} + propertyPath: m_LocalRotation.z + value: -0 + objectReference: {fileID: 0} + - target: {fileID: 7265208955804011727, guid: 3796997fde0c29b4180a4ec756403b34, + type: 3} + propertyPath: m_LocalRotation.w + value: 0.9681617 + objectReference: {fileID: 0} + - target: {fileID: 7265208955804011727, guid: 3796997fde0c29b4180a4ec756403b34, + type: 3} + propertyPath: m_RootOrder + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 7265208955804011727, guid: 3796997fde0c29b4180a4ec756403b34, + type: 3} + propertyPath: m_LocalEulerAnglesHint.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 7265208955804011727, guid: 3796997fde0c29b4180a4ec756403b34, + type: 3} + propertyPath: m_LocalEulerAnglesHint.y + value: -28.994001 + objectReference: {fileID: 0} + - target: {fileID: 7265208955804011727, guid: 3796997fde0c29b4180a4ec756403b34, + type: 3} + propertyPath: m_LocalEulerAnglesHint.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 7265208955804011727, guid: 3796997fde0c29b4180a4ec756403b34, + type: 3} + propertyPath: m_LocalScale.x + value: 7.295459 + objectReference: {fileID: 0} + - target: {fileID: 7265208955804011727, guid: 3796997fde0c29b4180a4ec756403b34, + type: 3} + propertyPath: m_LocalScale.y + value: 7.2954545 + objectReference: {fileID: 0} + - target: {fileID: 7265208955804011727, guid: 3796997fde0c29b4180a4ec756403b34, + type: 3} + propertyPath: m_LocalScale.z + value: 7.295459 + objectReference: {fileID: 0} + m_RemovedComponents: [] + m_SourcePrefab: {fileID: 100100000, guid: 3796997fde0c29b4180a4ec756403b34, type: 3} +--- !u!4 &1297151559 stripped +Transform: + m_CorrespondingSourceObject: {fileID: 400000, guid: 9f1e50f73a529a448b004add5bec5d80, + type: 3} + m_PrefabInstance: {fileID: 1562696022} + m_PrefabAsset: {fileID: 0} +--- !u!114 &1314102254 stripped +MonoBehaviour: + m_CorrespondingSourceObject: {fileID: 6137789652727152964, guid: 08627a91b0a679a47a06bf34443532a3, + type: 3} + m_PrefabInstance: {fileID: 915320295786218630} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: bbae15ab488cd06418614cdb83952550, type: 3} + m_Name: + m_EditorClassIdentifier: +--- !u!4 &1332395070 stripped +Transform: + m_CorrespondingSourceObject: {fileID: 40299501215355906, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + m_PrefabInstance: {fileID: 2125807644} + m_PrefabAsset: {fileID: 0} +--- !u!4 &1343796070 stripped +Transform: + m_CorrespondingSourceObject: {fileID: 400000, guid: 9f1e50f73a529a448b004add5bec5d80, + type: 3} + m_PrefabInstance: {fileID: 448553352} + m_PrefabAsset: {fileID: 0} +--- !u!1001 &1348019049 +PrefabInstance: + m_ObjectHideFlags: 0 + serializedVersion: 2 + m_Modification: + m_TransformParent: {fileID: 0} + m_Modifications: + - target: {fileID: 642987968668172917, guid: f29c8f9af0e64ab48a6c306b16e4a8fd, + type: 3} + propertyPath: m_havePropertiesChanged + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 642987968668172917, guid: f29c8f9af0e64ab48a6c306b16e4a8fd, + type: 3} + propertyPath: m_isInputParsingRequired + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 1344542117541120514, guid: f29c8f9af0e64ab48a6c306b16e4a8fd, + type: 3} + propertyPath: m_havePropertiesChanged + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 1344542117541120514, guid: f29c8f9af0e64ab48a6c306b16e4a8fd, + type: 3} + propertyPath: m_isInputParsingRequired + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 1344542117541120524, guid: f29c8f9af0e64ab48a6c306b16e4a8fd, + type: 3} + propertyPath: m_LocalScale.x + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 1344542117541120524, guid: f29c8f9af0e64ab48a6c306b16e4a8fd, + type: 3} + propertyPath: m_LocalScale.y + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 1344542117541120524, guid: f29c8f9af0e64ab48a6c306b16e4a8fd, + type: 3} + propertyPath: m_LocalScale.z + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 1344542117541120527, guid: f29c8f9af0e64ab48a6c306b16e4a8fd, + type: 3} + propertyPath: m_IsActive + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 1344542118785669924, guid: f29c8f9af0e64ab48a6c306b16e4a8fd, + type: 3} + propertyPath: m_Name + value: RaceCountdownCanvas + objectReference: {fileID: 0} + - target: {fileID: 1344542118785669924, guid: f29c8f9af0e64ab48a6c306b16e4a8fd, + type: 3} + propertyPath: m_IsActive + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 1344542118785669944, guid: f29c8f9af0e64ab48a6c306b16e4a8fd, + type: 3} + propertyPath: m_LocalPosition.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 1344542118785669944, guid: f29c8f9af0e64ab48a6c306b16e4a8fd, + type: 3} + propertyPath: m_LocalPosition.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 1344542118785669944, guid: f29c8f9af0e64ab48a6c306b16e4a8fd, + type: 3} + propertyPath: m_LocalPosition.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 1344542118785669944, guid: f29c8f9af0e64ab48a6c306b16e4a8fd, + type: 3} + propertyPath: m_LocalRotation.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 1344542118785669944, guid: f29c8f9af0e64ab48a6c306b16e4a8fd, + type: 3} + propertyPath: m_LocalRotation.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 1344542118785669944, guid: f29c8f9af0e64ab48a6c306b16e4a8fd, + type: 3} + propertyPath: m_LocalRotation.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 1344542118785669944, guid: f29c8f9af0e64ab48a6c306b16e4a8fd, + type: 3} + propertyPath: m_LocalRotation.w + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 1344542118785669944, guid: f29c8f9af0e64ab48a6c306b16e4a8fd, + type: 3} + propertyPath: m_RootOrder + value: 8 + objectReference: {fileID: 0} + - target: {fileID: 1344542118785669944, guid: f29c8f9af0e64ab48a6c306b16e4a8fd, + type: 3} + propertyPath: m_LocalEulerAnglesHint.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 1344542118785669944, guid: f29c8f9af0e64ab48a6c306b16e4a8fd, + type: 3} + propertyPath: m_LocalEulerAnglesHint.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 1344542118785669944, guid: f29c8f9af0e64ab48a6c306b16e4a8fd, + type: 3} + propertyPath: m_LocalEulerAnglesHint.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 1344542118785669944, guid: f29c8f9af0e64ab48a6c306b16e4a8fd, + type: 3} + propertyPath: m_AnchoredPosition.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 1344542118785669944, guid: f29c8f9af0e64ab48a6c306b16e4a8fd, + type: 3} + propertyPath: m_AnchoredPosition.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 1344542118785669944, guid: f29c8f9af0e64ab48a6c306b16e4a8fd, + type: 3} + propertyPath: m_SizeDelta.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 1344542118785669944, guid: f29c8f9af0e64ab48a6c306b16e4a8fd, + type: 3} + propertyPath: m_SizeDelta.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 1344542118785669944, guid: f29c8f9af0e64ab48a6c306b16e4a8fd, + type: 3} + propertyPath: m_AnchorMin.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 1344542118785669944, guid: f29c8f9af0e64ab48a6c306b16e4a8fd, + type: 3} + propertyPath: m_AnchorMin.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 1344542118785669944, guid: f29c8f9af0e64ab48a6c306b16e4a8fd, + type: 3} + propertyPath: m_AnchorMax.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 1344542118785669944, guid: f29c8f9af0e64ab48a6c306b16e4a8fd, + type: 3} + propertyPath: m_AnchorMax.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 1344542118785669944, guid: f29c8f9af0e64ab48a6c306b16e4a8fd, + type: 3} + propertyPath: m_Pivot.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 1344542118785669944, guid: f29c8f9af0e64ab48a6c306b16e4a8fd, + type: 3} + propertyPath: m_Pivot.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 1464191339390486027, guid: f29c8f9af0e64ab48a6c306b16e4a8fd, + type: 3} + propertyPath: m_IsActive + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 2307677542838934300, guid: f29c8f9af0e64ab48a6c306b16e4a8fd, + type: 3} + propertyPath: m_IsActive + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 2447754628354730173, guid: f29c8f9af0e64ab48a6c306b16e4a8fd, + type: 3} + propertyPath: m_LocalScale.x + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 2447754628354730173, guid: f29c8f9af0e64ab48a6c306b16e4a8fd, + type: 3} + propertyPath: m_LocalScale.y + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 2447754628354730173, guid: f29c8f9af0e64ab48a6c306b16e4a8fd, + type: 3} + propertyPath: m_LocalScale.z + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 3817363056526040563, guid: f29c8f9af0e64ab48a6c306b16e4a8fd, + type: 3} + propertyPath: m_havePropertiesChanged + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 3817363056526040563, guid: f29c8f9af0e64ab48a6c306b16e4a8fd, + type: 3} + propertyPath: m_isInputParsingRequired + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 4648791341004341439, guid: f29c8f9af0e64ab48a6c306b16e4a8fd, + type: 3} + propertyPath: m_IsActive + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 5273314513439912550, guid: f29c8f9af0e64ab48a6c306b16e4a8fd, + type: 3} + propertyPath: m_LocalScale.x + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 5273314513439912550, guid: f29c8f9af0e64ab48a6c306b16e4a8fd, + type: 3} + propertyPath: m_LocalScale.y + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 5273314513439912550, guid: f29c8f9af0e64ab48a6c306b16e4a8fd, + type: 3} + propertyPath: m_LocalScale.z + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 5991087490704382741, guid: f29c8f9af0e64ab48a6c306b16e4a8fd, + type: 3} + propertyPath: m_SceneBindings.Array.size + value: 6 + objectReference: {fileID: 0} + - target: {fileID: 5991087490704382741, guid: f29c8f9af0e64ab48a6c306b16e4a8fd, + type: 3} + propertyPath: m_SceneBindings.Array.data[0].value + value: + objectReference: {fileID: 1354110302} + - target: {fileID: 5991087490704382741, guid: f29c8f9af0e64ab48a6c306b16e4a8fd, + type: 3} + propertyPath: m_SceneBindings.Array.data[1].key + value: + objectReference: {fileID: 114943284557119080, guid: ef59465c823e959448bdf40fa6e69b5d, + type: 2} + - target: {fileID: 5991087490704382741, guid: f29c8f9af0e64ab48a6c306b16e4a8fd, + type: 3} + propertyPath: m_SceneBindings.Array.data[1].value + value: + objectReference: {fileID: 509748178} + - target: {fileID: 5991087490704382741, guid: f29c8f9af0e64ab48a6c306b16e4a8fd, + type: 3} + propertyPath: m_SceneBindings.Array.data[2].key + value: + objectReference: {fileID: 114680697759565596, guid: ef59465c823e959448bdf40fa6e69b5d, + type: 2} + - target: {fileID: 5991087490704382741, guid: f29c8f9af0e64ab48a6c306b16e4a8fd, + type: 3} + propertyPath: m_SceneBindings.Array.data[2].value + value: + objectReference: {fileID: 427176848} + - target: {fileID: 5991087490704382741, guid: f29c8f9af0e64ab48a6c306b16e4a8fd, + type: 3} + propertyPath: m_SceneBindings.Array.data[3].key + value: + objectReference: {fileID: 114544521468371282, guid: ef59465c823e959448bdf40fa6e69b5d, + type: 2} + - target: {fileID: 5991087490704382741, guid: f29c8f9af0e64ab48a6c306b16e4a8fd, + type: 3} + propertyPath: m_SceneBindings.Array.data[3].value + value: + objectReference: {fileID: 1113462048} + - target: {fileID: 5991087490704382741, guid: f29c8f9af0e64ab48a6c306b16e4a8fd, + type: 3} + propertyPath: m_SceneBindings.Array.data[4].key + value: + objectReference: {fileID: 114957938880747642, guid: ef59465c823e959448bdf40fa6e69b5d, + type: 2} + - target: {fileID: 5991087490704382741, guid: f29c8f9af0e64ab48a6c306b16e4a8fd, + type: 3} + propertyPath: m_SceneBindings.Array.data[4].value + value: + objectReference: {fileID: 881448475} + - target: {fileID: 5991087490704382741, guid: f29c8f9af0e64ab48a6c306b16e4a8fd, + type: 3} + propertyPath: m_SceneBindings.Array.data[5].key + value: + objectReference: {fileID: 114978033096453796, guid: ef59465c823e959448bdf40fa6e69b5d, + type: 2} + - target: {fileID: 6377345260507859207, guid: f29c8f9af0e64ab48a6c306b16e4a8fd, + type: 3} + propertyPath: m_LocalScale.x + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 6377345260507859207, guid: f29c8f9af0e64ab48a6c306b16e4a8fd, + type: 3} + propertyPath: m_LocalScale.y + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 6377345260507859207, guid: f29c8f9af0e64ab48a6c306b16e4a8fd, + type: 3} + propertyPath: m_LocalScale.z + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 7000690479517655175, guid: f29c8f9af0e64ab48a6c306b16e4a8fd, + type: 3} + propertyPath: m_havePropertiesChanged + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 7000690479517655175, guid: f29c8f9af0e64ab48a6c306b16e4a8fd, + type: 3} + propertyPath: m_isInputParsingRequired + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 7751499904472810060, guid: f29c8f9af0e64ab48a6c306b16e4a8fd, + type: 3} + propertyPath: events.Array.data[0].timedEvent.m_PersistentCalls.m_Calls.Array.data[0].m_Target + value: + objectReference: {fileID: 810926067} + - target: {fileID: 7751499904472810060, guid: f29c8f9af0e64ab48a6c306b16e4a8fd, + type: 3} + propertyPath: events.Array.data[0].timedEvent.m_PersistentCalls.m_Calls.Array.data[0].m_MethodName + value: StartRace + objectReference: {fileID: 0} + m_RemovedComponents: + - {fileID: 1344542117541120515, guid: f29c8f9af0e64ab48a6c306b16e4a8fd, type: 3} + - {fileID: 4815240034201123493, guid: f29c8f9af0e64ab48a6c306b16e4a8fd, type: 3} + - {fileID: 2489648052663460448, guid: f29c8f9af0e64ab48a6c306b16e4a8fd, type: 3} + - {fileID: 7463576483890933258, guid: f29c8f9af0e64ab48a6c306b16e4a8fd, type: 3} + m_SourcePrefab: {fileID: 100100000, guid: f29c8f9af0e64ab48a6c306b16e4a8fd, type: 3} +--- !u!1001 &1349346426 +PrefabInstance: + m_ObjectHideFlags: 0 + serializedVersion: 2 + m_Modification: + m_TransformParent: {fileID: 807038590} + m_Modifications: + - target: {fileID: 40299501215355906, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_LocalPosition.x + value: 5.6857567 + objectReference: {fileID: 0} + - target: {fileID: 40299501215355906, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_RootOrder + value: 18 + objectReference: {fileID: 0} + - target: {fileID: 40299501215355906, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_LocalPosition.z + value: -18.163822 + objectReference: {fileID: 0} + - target: {fileID: 40299501215355906, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_LocalPosition.y + value: -0.27187383 + objectReference: {fileID: 0} + - target: {fileID: 40299501215355906, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_LocalRotation.y + value: -0.17252214 + objectReference: {fileID: 0} + - target: {fileID: 40299501215355906, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_LocalRotation.z + value: -0 + objectReference: {fileID: 0} + - target: {fileID: 40299501215355906, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_LocalRotation.w + value: 0.9850057 + objectReference: {fileID: 0} + - target: {fileID: 40299501215355906, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_LocalEulerAnglesHint.y + value: -19.869 + objectReference: {fileID: 0} + - target: {fileID: 40299501215355906, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_LocalScale.x + value: 2.9231408 + objectReference: {fileID: 0} + - target: {fileID: 40299501215355906, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_LocalScale.y + value: 2.92314 + objectReference: {fileID: 0} + - target: {fileID: 40299501215355906, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_LocalScale.z + value: 2.9231408 + objectReference: {fileID: 0} + - target: {fileID: 40299501215355906, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_LocalRotation.x + value: -0 + objectReference: {fileID: 0} + - target: {fileID: 2057621013554333680, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_LocalPosition.x + value: 44.5 + objectReference: {fileID: 0} + - target: {fileID: 2057621013554333680, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_LocalPosition.y + value: -1.1541998 + objectReference: {fileID: 0} + - target: {fileID: 2057621013554333680, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_LocalPosition.z + value: -13 + objectReference: {fileID: 0} + - target: {fileID: 2057621013554333680, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_LocalRotation.x + value: -0 + objectReference: {fileID: 0} + - target: {fileID: 2057621013554333680, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_LocalRotation.y + value: -0.17252184 + objectReference: {fileID: 0} + - target: {fileID: 2057621013554333680, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_LocalRotation.z + value: -0 + objectReference: {fileID: 0} + - target: {fileID: 2057621013554333680, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_LocalRotation.w + value: 0.98500574 + objectReference: {fileID: 0} + - target: {fileID: 2057621013554333680, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_RootOrder + value: 19 + objectReference: {fileID: 0} + - target: {fileID: 2057621013554333680, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_LocalEulerAnglesHint.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 2057621013554333680, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_LocalEulerAnglesHint.y + value: -19.869001 + objectReference: {fileID: 0} + - target: {fileID: 2057621013554333680, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_LocalEulerAnglesHint.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 2057621013554333680, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_LocalScale.x + value: 2.9231398 + objectReference: {fileID: 0} + - target: {fileID: 2057621013554333680, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_LocalScale.y + value: 2.9231398 + objectReference: {fileID: 0} + - target: {fileID: 2057621013554333680, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_LocalScale.z + value: 2.9231398 + objectReference: {fileID: 0} + - target: {fileID: 2057621013554699216, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_Name + value: StoneVariant2 (5) + objectReference: {fileID: 0} + - target: {fileID: 2057621013556626704, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_Materials.Array.data[0] + value: + objectReference: {fileID: 2100000, guid: d11179e416c9b394c8176d36a0dcae52, type: 2} + - target: {fileID: 2057621013557757904, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_Mesh + value: + objectReference: {fileID: 4300002, guid: 5e6dd9e33a8a1c748a582c8565e5f95f, type: 3} + - target: {fileID: 6182327852661155845, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_Name + value: StoneRound (4) + objectReference: {fileID: 0} + m_RemovedComponents: [] + m_SourcePrefab: {fileID: 100100000, guid: 230dd9257fca2c249b555f6edd3c8e14, type: 3} +--- !u!95 &1354110302 stripped +Animator: + m_CorrespondingSourceObject: {fileID: 7005754773134850036, guid: f29c8f9af0e64ab48a6c306b16e4a8fd, + type: 3} + m_PrefabInstance: {fileID: 1348019049} + m_PrefabAsset: {fileID: 0} +--- !u!1001 &1360103340 +PrefabInstance: + m_ObjectHideFlags: 0 + serializedVersion: 2 + m_Modification: + m_TransformParent: {fileID: 807038590} + m_Modifications: + - target: {fileID: 667086550830086704, guid: 3796997fde0c29b4180a4ec756403b34, + type: 3} + propertyPath: m_LocalPosition.x + value: -114.60425 + objectReference: {fileID: 0} + - target: {fileID: 667086550830086704, guid: 3796997fde0c29b4180a4ec756403b34, + type: 3} + propertyPath: m_RootOrder + value: 10 + objectReference: {fileID: 0} + - target: {fileID: 667086550830086704, guid: 3796997fde0c29b4180a4ec756403b34, + type: 3} + propertyPath: m_LocalPosition.y + value: -0.12767386 + objectReference: {fileID: 0} + - target: {fileID: 667086550830086704, guid: 3796997fde0c29b4180a4ec756403b34, + type: 3} + propertyPath: m_LocalPosition.z + value: -18.633823 + objectReference: {fileID: 0} + - target: {fileID: 667086550830086704, guid: 3796997fde0c29b4180a4ec756403b34, + type: 3} + propertyPath: m_LocalRotation.x + value: -0 + objectReference: {fileID: 0} + - target: {fileID: 667086550830086704, guid: 3796997fde0c29b4180a4ec756403b34, + type: 3} + propertyPath: m_LocalRotation.y + value: 0.25315014 + objectReference: {fileID: 0} + - target: {fileID: 667086550830086704, guid: 3796997fde0c29b4180a4ec756403b34, + type: 3} + propertyPath: m_LocalRotation.z + value: -0 + objectReference: {fileID: 0} + - target: {fileID: 667086550830086704, guid: 3796997fde0c29b4180a4ec756403b34, + type: 3} + propertyPath: m_LocalRotation.w + value: 0.967427 + objectReference: {fileID: 0} + - target: {fileID: 667086550830086704, guid: 3796997fde0c29b4180a4ec756403b34, + type: 3} + propertyPath: m_LocalEulerAnglesHint.y + value: 29.328 + objectReference: {fileID: 0} + - target: {fileID: 667086550830086704, guid: 3796997fde0c29b4180a4ec756403b34, + type: 3} + propertyPath: m_LocalScale.x + value: 5.548687 + objectReference: {fileID: 0} + - target: {fileID: 667086550830086704, guid: 3796997fde0c29b4180a4ec756403b34, + type: 3} + propertyPath: m_LocalScale.y + value: 5.548688 + objectReference: {fileID: 0} + - target: {fileID: 667086550830086704, guid: 3796997fde0c29b4180a4ec756403b34, + type: 3} + propertyPath: m_LocalScale.z + value: 5.548687 + objectReference: {fileID: 0} + - target: {fileID: 5742194636018856685, guid: 3796997fde0c29b4180a4ec756403b34, + type: 3} + propertyPath: m_Name + value: StoneFlat (9) + objectReference: {fileID: 0} + - target: {fileID: 7265208955801587247, guid: 3796997fde0c29b4180a4ec756403b34, + type: 3} + propertyPath: m_Materials.Array.data[0] + value: + objectReference: {fileID: 2100000, guid: d11179e416c9b394c8176d36a0dcae52, type: 2} + - target: {fileID: 7265208955803586799, guid: 3796997fde0c29b4180a4ec756403b34, + type: 3} + propertyPath: m_Name + value: StoneVariant1 (11) + objectReference: {fileID: 0} + - target: {fileID: 7265208955804011727, guid: 3796997fde0c29b4180a4ec756403b34, + type: 3} + propertyPath: m_LocalPosition.x + value: -93.89 + objectReference: {fileID: 0} + - target: {fileID: 7265208955804011727, guid: 3796997fde0c29b4180a4ec756403b34, + type: 3} + propertyPath: m_LocalPosition.y + value: -0.64624 + objectReference: {fileID: 0} + - target: {fileID: 7265208955804011727, guid: 3796997fde0c29b4180a4ec756403b34, + type: 3} + propertyPath: m_LocalPosition.z + value: -2.06 + objectReference: {fileID: 0} + - target: {fileID: 7265208955804011727, guid: 3796997fde0c29b4180a4ec756403b34, + type: 3} + propertyPath: m_LocalRotation.x + value: -0 + objectReference: {fileID: 0} + - target: {fileID: 7265208955804011727, guid: 3796997fde0c29b4180a4ec756403b34, + type: 3} + propertyPath: m_LocalRotation.y + value: -0.583975 + objectReference: {fileID: 0} + - target: {fileID: 7265208955804011727, guid: 3796997fde0c29b4180a4ec756403b34, + type: 3} + propertyPath: m_LocalRotation.z + value: -0 + objectReference: {fileID: 0} + - target: {fileID: 7265208955804011727, guid: 3796997fde0c29b4180a4ec756403b34, + type: 3} + propertyPath: m_LocalRotation.w + value: 0.8117716 + objectReference: {fileID: 0} + - target: {fileID: 7265208955804011727, guid: 3796997fde0c29b4180a4ec756403b34, + type: 3} + propertyPath: m_RootOrder + value: 10 + objectReference: {fileID: 0} + - target: {fileID: 7265208955804011727, guid: 3796997fde0c29b4180a4ec756403b34, + type: 3} + propertyPath: m_LocalEulerAnglesHint.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 7265208955804011727, guid: 3796997fde0c29b4180a4ec756403b34, + type: 3} + propertyPath: m_LocalEulerAnglesHint.y + value: -71.461006 + objectReference: {fileID: 0} + - target: {fileID: 7265208955804011727, guid: 3796997fde0c29b4180a4ec756403b34, + type: 3} + propertyPath: m_LocalEulerAnglesHint.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 7265208955804011727, guid: 3796997fde0c29b4180a4ec756403b34, + type: 3} + propertyPath: m_LocalScale.x + value: 3.9142678 + objectReference: {fileID: 0} + - target: {fileID: 7265208955804011727, guid: 3796997fde0c29b4180a4ec756403b34, + type: 3} + propertyPath: m_LocalScale.y + value: 3.9142535 + objectReference: {fileID: 0} + - target: {fileID: 7265208955804011727, guid: 3796997fde0c29b4180a4ec756403b34, + type: 3} + propertyPath: m_LocalScale.z + value: 3.9142678 + objectReference: {fileID: 0} + m_RemovedComponents: [] + m_SourcePrefab: {fileID: 100100000, guid: 3796997fde0c29b4180a4ec756403b34, type: 3} +--- !u!1001 &1364508378 +PrefabInstance: + m_ObjectHideFlags: 0 + serializedVersion: 2 + m_Modification: + m_TransformParent: {fileID: 807038590} + m_Modifications: + - target: {fileID: 667086550830086704, guid: 3796997fde0c29b4180a4ec756403b34, + type: 3} + propertyPath: m_LocalPosition.x + value: -11 + objectReference: {fileID: 0} + - target: {fileID: 667086550830086704, guid: 3796997fde0c29b4180a4ec756403b34, + type: 3} + propertyPath: m_RootOrder + value: 7 + objectReference: {fileID: 0} + - target: {fileID: 667086550830086704, guid: 3796997fde0c29b4180a4ec756403b34, + type: 3} + propertyPath: m_LocalPosition.y + value: -0.20767379 + objectReference: {fileID: 0} + - target: {fileID: 667086550830086704, guid: 3796997fde0c29b4180a4ec756403b34, + type: 3} + propertyPath: m_LocalPosition.z + value: -29 + objectReference: {fileID: 0} + - target: {fileID: 667086550830086704, guid: 3796997fde0c29b4180a4ec756403b34, + type: 3} + propertyPath: m_LocalRotation.x + value: -0 + objectReference: {fileID: 0} + - target: {fileID: 667086550830086704, guid: 3796997fde0c29b4180a4ec756403b34, + type: 3} + propertyPath: m_LocalRotation.y + value: -0.056109123 + objectReference: {fileID: 0} + - target: {fileID: 667086550830086704, guid: 3796997fde0c29b4180a4ec756403b34, + type: 3} + propertyPath: m_LocalRotation.z + value: -0 + objectReference: {fileID: 0} + - target: {fileID: 667086550830086704, guid: 3796997fde0c29b4180a4ec756403b34, + type: 3} + propertyPath: m_LocalRotation.w + value: 0.99842465 + objectReference: {fileID: 0} + - target: {fileID: 667086550830086704, guid: 3796997fde0c29b4180a4ec756403b34, + type: 3} + propertyPath: m_LocalEulerAnglesHint.y + value: -6.433 + objectReference: {fileID: 0} + - target: {fileID: 667086550830086704, guid: 3796997fde0c29b4180a4ec756403b34, + type: 3} + propertyPath: m_LocalScale.x + value: 7.945497 + objectReference: {fileID: 0} + - target: {fileID: 667086550830086704, guid: 3796997fde0c29b4180a4ec756403b34, + type: 3} + propertyPath: m_LocalScale.y + value: 7.945497 + objectReference: {fileID: 0} + - target: {fileID: 667086550830086704, guid: 3796997fde0c29b4180a4ec756403b34, + type: 3} + propertyPath: m_LocalScale.z + value: 7.945497 + objectReference: {fileID: 0} + - target: {fileID: 5742194636018856685, guid: 3796997fde0c29b4180a4ec756403b34, + type: 3} + propertyPath: m_Name + value: StoneFlat (2) + objectReference: {fileID: 0} + - target: {fileID: 7265208955801587247, guid: 3796997fde0c29b4180a4ec756403b34, + type: 3} + propertyPath: m_Materials.Array.data[0] + value: + objectReference: {fileID: 2100000, guid: d11179e416c9b394c8176d36a0dcae52, type: 2} + - target: {fileID: 7265208955802684655, guid: 3796997fde0c29b4180a4ec756403b34, + type: 3} + propertyPath: m_Mesh + value: + objectReference: {fileID: 4300002, guid: c80f31023dcf9b34cbd0044505be4806, type: 3} + - target: {fileID: 7265208955803586799, guid: 3796997fde0c29b4180a4ec756403b34, + type: 3} + propertyPath: m_Name + value: StoneVariant1 (3) + objectReference: {fileID: 0} + - target: {fileID: 7265208955804011727, guid: 3796997fde0c29b4180a4ec756403b34, + type: 3} + propertyPath: m_LocalPosition.x + value: 30.742 + objectReference: {fileID: 0} + - target: {fileID: 7265208955804011727, guid: 3796997fde0c29b4180a4ec756403b34, + type: 3} + propertyPath: m_LocalPosition.y + value: -1.09 + objectReference: {fileID: 0} + - target: {fileID: 7265208955804011727, guid: 3796997fde0c29b4180a4ec756403b34, + type: 3} + propertyPath: m_LocalPosition.z + value: -30.033 + objectReference: {fileID: 0} + - target: {fileID: 7265208955804011727, guid: 3796997fde0c29b4180a4ec756403b34, + type: 3} + propertyPath: m_LocalRotation.x + value: -0 + objectReference: {fileID: 0} + - target: {fileID: 7265208955804011727, guid: 3796997fde0c29b4180a4ec756403b34, + type: 3} + propertyPath: m_LocalRotation.y + value: -0.056109615 + objectReference: {fileID: 0} + - target: {fileID: 7265208955804011727, guid: 3796997fde0c29b4180a4ec756403b34, + type: 3} + propertyPath: m_LocalRotation.z + value: -0 + objectReference: {fileID: 0} + - target: {fileID: 7265208955804011727, guid: 3796997fde0c29b4180a4ec756403b34, + type: 3} + propertyPath: m_LocalRotation.w + value: 0.9984246 + objectReference: {fileID: 0} + - target: {fileID: 7265208955804011727, guid: 3796997fde0c29b4180a4ec756403b34, + type: 3} + propertyPath: m_RootOrder + value: 3 + objectReference: {fileID: 0} + - target: {fileID: 7265208955804011727, guid: 3796997fde0c29b4180a4ec756403b34, + type: 3} + propertyPath: m_LocalEulerAnglesHint.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 7265208955804011727, guid: 3796997fde0c29b4180a4ec756403b34, + type: 3} + propertyPath: m_LocalEulerAnglesHint.y + value: -6.433 + objectReference: {fileID: 0} + - target: {fileID: 7265208955804011727, guid: 3796997fde0c29b4180a4ec756403b34, + type: 3} + propertyPath: m_LocalEulerAnglesHint.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 7265208955804011727, guid: 3796997fde0c29b4180a4ec756403b34, + type: 3} + propertyPath: m_LocalScale.x + value: 7.9454966 + objectReference: {fileID: 0} + - target: {fileID: 7265208955804011727, guid: 3796997fde0c29b4180a4ec756403b34, + type: 3} + propertyPath: m_LocalScale.y + value: 7.945482 + objectReference: {fileID: 0} + - target: {fileID: 7265208955804011727, guid: 3796997fde0c29b4180a4ec756403b34, + type: 3} + propertyPath: m_LocalScale.z + value: 7.9454966 + objectReference: {fileID: 0} + m_RemovedComponents: [] + m_SourcePrefab: {fileID: 100100000, guid: 3796997fde0c29b4180a4ec756403b34, type: 3} +--- !u!1001 &1369617640 +PrefabInstance: + m_ObjectHideFlags: 0 + serializedVersion: 2 + m_Modification: + m_TransformParent: {fileID: 807038590} + m_Modifications: + - target: {fileID: 40299501215355906, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_LocalPosition.x + value: 28.775784 + objectReference: {fileID: 0} + - target: {fileID: 40299501215355906, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_RootOrder + value: 17 + objectReference: {fileID: 0} + - target: {fileID: 40299501215355906, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_LocalPosition.z + value: -9.386177 + objectReference: {fileID: 0} + - target: {fileID: 40299501215355906, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_LocalPosition.y + value: -0.27187383 + objectReference: {fileID: 0} + - target: {fileID: 40299501215355906, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_LocalRotation.y + value: -0.17252214 + objectReference: {fileID: 0} + - target: {fileID: 40299501215355906, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_LocalRotation.z + value: -0 + objectReference: {fileID: 0} + - target: {fileID: 40299501215355906, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_LocalRotation.w + value: 0.9850057 + objectReference: {fileID: 0} + - target: {fileID: 40299501215355906, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_LocalEulerAnglesHint.y + value: -19.869 + objectReference: {fileID: 0} + - target: {fileID: 40299501215355906, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_LocalScale.x + value: 2.923142 + objectReference: {fileID: 0} + - target: {fileID: 40299501215355906, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_LocalScale.y + value: 2.923142 + objectReference: {fileID: 0} + - target: {fileID: 40299501215355906, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_LocalScale.z + value: 2.923142 + objectReference: {fileID: 0} + - target: {fileID: 40299501215355906, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_LocalRotation.x + value: -0 + objectReference: {fileID: 0} + - target: {fileID: 2057621013554333680, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_LocalPosition.x + value: 67.59003 + objectReference: {fileID: 0} + - target: {fileID: 2057621013554333680, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_LocalPosition.y + value: -1.1541998 + objectReference: {fileID: 0} + - target: {fileID: 2057621013554333680, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_LocalPosition.z + value: -4.222355 + objectReference: {fileID: 0} + - target: {fileID: 2057621013554333680, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_LocalRotation.x + value: -0 + objectReference: {fileID: 0} + - target: {fileID: 2057621013554333680, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_LocalRotation.y + value: -0.17252183 + objectReference: {fileID: 0} + - target: {fileID: 2057621013554333680, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_LocalRotation.z + value: -0 + objectReference: {fileID: 0} + - target: {fileID: 2057621013554333680, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_LocalRotation.w + value: 0.9850057 + objectReference: {fileID: 0} + - target: {fileID: 2057621013554333680, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_RootOrder + value: 18 + objectReference: {fileID: 0} + - target: {fileID: 2057621013554333680, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_LocalEulerAnglesHint.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 2057621013554333680, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_LocalEulerAnglesHint.y + value: -19.869001 + objectReference: {fileID: 0} + - target: {fileID: 2057621013554333680, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_LocalEulerAnglesHint.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 2057621013554333680, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_LocalScale.x + value: 2.9231424 + objectReference: {fileID: 0} + - target: {fileID: 2057621013554333680, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_LocalScale.y + value: 2.9231424 + objectReference: {fileID: 0} + - target: {fileID: 2057621013554333680, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_LocalScale.z + value: 2.9231424 + objectReference: {fileID: 0} + - target: {fileID: 2057621013554699216, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_Name + value: StoneVariant2 (4) + objectReference: {fileID: 0} + - target: {fileID: 2057621013556626704, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_Materials.Array.data[0] + value: + objectReference: {fileID: 2100000, guid: d11179e416c9b394c8176d36a0dcae52, type: 2} + - target: {fileID: 2057621013557757904, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_Mesh + value: + objectReference: {fileID: 4300002, guid: 5e6dd9e33a8a1c748a582c8565e5f95f, type: 3} + - target: {fileID: 6182327852661155845, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_Name + value: StoneRound (3) + objectReference: {fileID: 0} + m_RemovedComponents: [] + m_SourcePrefab: {fileID: 100100000, guid: 230dd9257fca2c249b555f6edd3c8e14, type: 3} +--- !u!1001 &1374517811 +PrefabInstance: + m_ObjectHideFlags: 0 + serializedVersion: 2 + m_Modification: + m_TransformParent: {fileID: 286898288} + m_Modifications: + - target: {fileID: 100000, guid: 92bb9994204d1d44cb6223c53e4f84f8, type: 3} + propertyPath: m_Name + value: Hill (1) + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 92bb9994204d1d44cb6223c53e4f84f8, type: 3} + propertyPath: m_LocalPosition.x + value: -43.060123 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 92bb9994204d1d44cb6223c53e4f84f8, type: 3} + propertyPath: m_LocalPosition.y + value: -1.5859046 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 92bb9994204d1d44cb6223c53e4f84f8, type: 3} + propertyPath: m_LocalPosition.z + value: -63.40935 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 92bb9994204d1d44cb6223c53e4f84f8, type: 3} + propertyPath: m_LocalRotation.x + value: -0 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 92bb9994204d1d44cb6223c53e4f84f8, type: 3} + propertyPath: m_LocalRotation.y + value: -0.59996915 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 92bb9994204d1d44cb6223c53e4f84f8, type: 3} + propertyPath: m_LocalRotation.z + value: -0 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 92bb9994204d1d44cb6223c53e4f84f8, type: 3} + propertyPath: m_LocalRotation.w + value: 0.80002314 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 92bb9994204d1d44cb6223c53e4f84f8, type: 3} + propertyPath: m_RootOrder + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 92bb9994204d1d44cb6223c53e4f84f8, type: 3} + propertyPath: m_LocalEulerAnglesHint.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 92bb9994204d1d44cb6223c53e4f84f8, type: 3} + propertyPath: m_LocalEulerAnglesHint.y + value: -73.735 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 92bb9994204d1d44cb6223c53e4f84f8, type: 3} + propertyPath: m_LocalEulerAnglesHint.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 92bb9994204d1d44cb6223c53e4f84f8, type: 3} + propertyPath: m_LocalScale.x + value: 1.93556 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 92bb9994204d1d44cb6223c53e4f84f8, type: 3} + propertyPath: m_LocalScale.y + value: 1.6653299 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 92bb9994204d1d44cb6223c53e4f84f8, type: 3} + propertyPath: m_LocalScale.z + value: 1.93556 + objectReference: {fileID: 0} + m_RemovedComponents: [] + m_SourcePrefab: {fileID: 100100000, guid: 92bb9994204d1d44cb6223c53e4f84f8, type: 3} +--- !u!1001 &1382268768 +PrefabInstance: + m_ObjectHideFlags: 0 + serializedVersion: 2 + m_Modification: + m_TransformParent: {fileID: 822690626} + m_Modifications: + - target: {fileID: 1579282987822437358, guid: 941fac9249b6442cdb2d3f23472128e2, + type: 3} + propertyPath: m_Name + value: ModularTrackStraight (7) + objectReference: {fileID: 0} + - target: {fileID: 1579282987822796750, guid: 941fac9249b6442cdb2d3f23472128e2, + type: 3} + propertyPath: m_LocalPosition.x + value: -24 + objectReference: {fileID: 0} + - target: {fileID: 1579282987822796750, guid: 941fac9249b6442cdb2d3f23472128e2, + type: 3} + propertyPath: m_LocalPosition.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 1579282987822796750, guid: 941fac9249b6442cdb2d3f23472128e2, + type: 3} + propertyPath: m_LocalPosition.z + value: 57 + objectReference: {fileID: 0} + - target: {fileID: 1579282987822796750, guid: 941fac9249b6442cdb2d3f23472128e2, + type: 3} + propertyPath: m_LocalRotation.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 1579282987822796750, guid: 941fac9249b6442cdb2d3f23472128e2, + type: 3} + propertyPath: m_LocalRotation.y + value: 0.7071068 + objectReference: {fileID: 0} + - target: {fileID: 1579282987822796750, guid: 941fac9249b6442cdb2d3f23472128e2, + type: 3} + propertyPath: m_LocalRotation.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 1579282987822796750, guid: 941fac9249b6442cdb2d3f23472128e2, + type: 3} + propertyPath: m_LocalRotation.w + value: 0.7071068 + objectReference: {fileID: 0} + - target: {fileID: 1579282987822796750, guid: 941fac9249b6442cdb2d3f23472128e2, + type: 3} + propertyPath: m_RootOrder + value: 8 + objectReference: {fileID: 0} + - target: {fileID: 1579282987822796750, guid: 941fac9249b6442cdb2d3f23472128e2, + type: 3} + propertyPath: m_LocalEulerAnglesHint.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 1579282987822796750, guid: 941fac9249b6442cdb2d3f23472128e2, + type: 3} + propertyPath: m_LocalEulerAnglesHint.y + value: 90 + objectReference: {fileID: 0} + - target: {fileID: 1579282987822796750, guid: 941fac9249b6442cdb2d3f23472128e2, + type: 3} + propertyPath: m_LocalEulerAnglesHint.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 1644974464755198482, guid: 941fac9249b6442cdb2d3f23472128e2, + type: 3} + propertyPath: bounciness + value: 0.1 + objectReference: {fileID: 0} + m_RemovedComponents: + - {fileID: 1579282987816156490, guid: 941fac9249b6442cdb2d3f23472128e2, type: 3} + m_SourcePrefab: {fileID: 100100000, guid: 941fac9249b6442cdb2d3f23472128e2, type: 3} +--- !u!4 &1382268769 stripped +Transform: + m_CorrespondingSourceObject: {fileID: 1579282987822796750, guid: 941fac9249b6442cdb2d3f23472128e2, + type: 3} + m_PrefabInstance: {fileID: 1382268768} + m_PrefabAsset: {fileID: 0} +--- !u!1001 &1383909175 +PrefabInstance: + m_ObjectHideFlags: 0 + serializedVersion: 2 + m_Modification: + m_TransformParent: {fileID: 286898288} + m_Modifications: + - target: {fileID: 100000, guid: 92bb9994204d1d44cb6223c53e4f84f8, type: 3} + propertyPath: m_Name + value: Hill (8) + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 92bb9994204d1d44cb6223c53e4f84f8, type: 3} + propertyPath: m_LocalPosition.x + value: -62.560127 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 92bb9994204d1d44cb6223c53e4f84f8, type: 3} + propertyPath: m_LocalPosition.y + value: -2.3026042 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 92bb9994204d1d44cb6223c53e4f84f8, type: 3} + propertyPath: m_LocalPosition.z + value: -137.30936 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 92bb9994204d1d44cb6223c53e4f84f8, type: 3} + propertyPath: m_LocalRotation.x + value: -0 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 92bb9994204d1d44cb6223c53e4f84f8, type: 3} + propertyPath: m_LocalRotation.y + value: -0 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 92bb9994204d1d44cb6223c53e4f84f8, type: 3} + propertyPath: m_LocalRotation.z + value: -0 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 92bb9994204d1d44cb6223c53e4f84f8, type: 3} + propertyPath: m_LocalRotation.w + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 92bb9994204d1d44cb6223c53e4f84f8, type: 3} + propertyPath: m_RootOrder + value: 8 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 92bb9994204d1d44cb6223c53e4f84f8, type: 3} + propertyPath: m_LocalEulerAnglesHint.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 92bb9994204d1d44cb6223c53e4f84f8, type: 3} + propertyPath: m_LocalEulerAnglesHint.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 92bb9994204d1d44cb6223c53e4f84f8, type: 3} + propertyPath: m_LocalEulerAnglesHint.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 92bb9994204d1d44cb6223c53e4f84f8, type: 3} + propertyPath: m_LocalScale.x + value: 8.500685 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 92bb9994204d1d44cb6223c53e4f84f8, type: 3} + propertyPath: m_LocalScale.y + value: 8.668222 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 92bb9994204d1d44cb6223c53e4f84f8, type: 3} + propertyPath: m_LocalScale.z + value: 8.500685 + objectReference: {fileID: 0} + m_RemovedComponents: [] + m_SourcePrefab: {fileID: 100100000, guid: 92bb9994204d1d44cb6223c53e4f84f8, type: 3} +--- !u!4 &1385839211 stripped +Transform: + m_CorrespondingSourceObject: {fileID: 400000, guid: 9f1e50f73a529a448b004add5bec5d80, + type: 3} + m_PrefabInstance: {fileID: 1884244635} + m_PrefabAsset: {fileID: 0} +--- !u!4 &1387898599 stripped +Transform: + m_CorrespondingSourceObject: {fileID: 8822636336882126325, guid: 6e78c73d0c22422438a45bea2842fcfb, + type: 3} + m_PrefabInstance: {fileID: 407332377} + m_PrefabAsset: {fileID: 0} +--- !u!1001 &1388116303 +PrefabInstance: + m_ObjectHideFlags: 0 + serializedVersion: 2 + m_Modification: + m_TransformParent: {fileID: 0} + m_Modifications: + - target: {fileID: 3763822634849867143, guid: 8a2015a9601d162459389c9b9d1437fc, + type: 3} + propertyPath: m_LocalPosition.x + value: 16 + objectReference: {fileID: 0} + - target: {fileID: 3763822634849867143, guid: 8a2015a9601d162459389c9b9d1437fc, + type: 3} + propertyPath: m_LocalPosition.y + value: 0.8 + objectReference: {fileID: 0} + - target: {fileID: 3763822634849867143, guid: 8a2015a9601d162459389c9b9d1437fc, + type: 3} + propertyPath: m_LocalPosition.z + value: -0 + objectReference: {fileID: 0} + - target: {fileID: 3763822634849867143, guid: 8a2015a9601d162459389c9b9d1437fc, + type: 3} + propertyPath: m_LocalRotation.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 3763822634849867143, guid: 8a2015a9601d162459389c9b9d1437fc, + type: 3} + propertyPath: m_LocalRotation.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 3763822634849867143, guid: 8a2015a9601d162459389c9b9d1437fc, + type: 3} + propertyPath: m_LocalRotation.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 3763822634849867143, guid: 8a2015a9601d162459389c9b9d1437fc, + type: 3} + propertyPath: m_LocalRotation.w + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 3763822634849867143, guid: 8a2015a9601d162459389c9b9d1437fc, + type: 3} + propertyPath: m_RootOrder + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 3763822634849867143, guid: 8a2015a9601d162459389c9b9d1437fc, + type: 3} + propertyPath: m_LocalEulerAnglesHint.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 3763822634849867143, guid: 8a2015a9601d162459389c9b9d1437fc, + type: 3} + propertyPath: m_LocalEulerAnglesHint.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 3763822634849867143, guid: 8a2015a9601d162459389c9b9d1437fc, + type: 3} + propertyPath: m_LocalEulerAnglesHint.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 3763822634849867148, guid: 8a2015a9601d162459389c9b9d1437fc, + type: 3} + propertyPath: m_Name + value: Kart + objectReference: {fileID: 0} + m_RemovedComponents: [] + m_SourcePrefab: {fileID: 100100000, guid: 8a2015a9601d162459389c9b9d1437fc, type: 3} +--- !u!1 &1388116304 stripped +GameObject: + m_CorrespondingSourceObject: {fileID: 3763822634849867148, guid: 8a2015a9601d162459389c9b9d1437fc, + type: 3} + m_PrefabInstance: {fileID: 1388116303} + m_PrefabAsset: {fileID: 0} +--- !u!114 &1388116305 +MonoBehaviour: + m_ObjectHideFlags: 2 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1388116304} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: c8534e17a0f90604c9afd4f5c73d829f, type: 3} + m_Name: + m_EditorClassIdentifier: + m_Id: b813da5b-b190-4543-a594-de3a2cdd433a +--- !u!1001 &1396237454 +PrefabInstance: + m_ObjectHideFlags: 0 + serializedVersion: 2 + m_Modification: + m_TransformParent: {fileID: 1889916056} + m_Modifications: + - target: {fileID: 100012, guid: 0829d76c4806eb54b8b2f17eec10f4e6, type: 3} + propertyPath: m_Name + value: Cloud (7) + objectReference: {fileID: 0} + - target: {fileID: 100012, guid: 0829d76c4806eb54b8b2f17eec10f4e6, type: 3} + propertyPath: m_StaticEditorFlags + value: 4294967295 + objectReference: {fileID: 0} + - target: {fileID: 400012, guid: 0829d76c4806eb54b8b2f17eec10f4e6, type: 3} + propertyPath: m_LocalPosition.x + value: -662.20917 + objectReference: {fileID: 0} + - target: {fileID: 400012, guid: 0829d76c4806eb54b8b2f17eec10f4e6, type: 3} + propertyPath: m_LocalPosition.y + value: -54.468662 + objectReference: {fileID: 0} + - target: {fileID: 400012, guid: 0829d76c4806eb54b8b2f17eec10f4e6, type: 3} + propertyPath: m_LocalPosition.z + value: 211.21027 + objectReference: {fileID: 0} + - target: {fileID: 400012, guid: 0829d76c4806eb54b8b2f17eec10f4e6, type: 3} + propertyPath: m_LocalRotation.x + value: -0 + objectReference: {fileID: 0} + - target: {fileID: 400012, guid: 0829d76c4806eb54b8b2f17eec10f4e6, type: 3} + propertyPath: m_LocalRotation.y + value: -0.6797475 + objectReference: {fileID: 0} + - target: {fileID: 400012, guid: 0829d76c4806eb54b8b2f17eec10f4e6, type: 3} + propertyPath: m_LocalRotation.z + value: -0 + objectReference: {fileID: 0} + - target: {fileID: 400012, guid: 0829d76c4806eb54b8b2f17eec10f4e6, type: 3} + propertyPath: m_LocalRotation.w + value: 0.73344624 + objectReference: {fileID: 0} + - target: {fileID: 400012, guid: 0829d76c4806eb54b8b2f17eec10f4e6, type: 3} + propertyPath: m_RootOrder + value: 7 + objectReference: {fileID: 0} + - target: {fileID: 400012, guid: 0829d76c4806eb54b8b2f17eec10f4e6, type: 3} + propertyPath: m_LocalEulerAnglesHint.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 400012, guid: 0829d76c4806eb54b8b2f17eec10f4e6, type: 3} + propertyPath: m_LocalEulerAnglesHint.y + value: -85.648 + objectReference: {fileID: 0} + - target: {fileID: 400012, guid: 0829d76c4806eb54b8b2f17eec10f4e6, type: 3} + propertyPath: m_LocalEulerAnglesHint.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 400012, guid: 0829d76c4806eb54b8b2f17eec10f4e6, type: 3} + propertyPath: m_LocalScale.x + value: 6.470623 + objectReference: {fileID: 0} + - target: {fileID: 400012, guid: 0829d76c4806eb54b8b2f17eec10f4e6, type: 3} + propertyPath: m_LocalScale.y + value: 6.4706197 + objectReference: {fileID: 0} + - target: {fileID: 400012, guid: 0829d76c4806eb54b8b2f17eec10f4e6, type: 3} + propertyPath: m_LocalScale.z + value: 6.470623 + objectReference: {fileID: 0} + - target: {fileID: 2300000, guid: 0829d76c4806eb54b8b2f17eec10f4e6, type: 3} + propertyPath: m_Materials.Array.data[0] + value: + objectReference: {fileID: 2100000, guid: c1fb7d3a27a67b947bb2b2ab391072b0, type: 2} + - target: {fileID: 2300002, guid: 0829d76c4806eb54b8b2f17eec10f4e6, type: 3} + propertyPath: m_Materials.Array.data[0] + value: + objectReference: {fileID: 2100000, guid: c1fb7d3a27a67b947bb2b2ab391072b0, type: 2} + - target: {fileID: 2300004, guid: 0829d76c4806eb54b8b2f17eec10f4e6, type: 3} + propertyPath: m_Materials.Array.data[0] + value: + objectReference: {fileID: 2100000, guid: c1fb7d3a27a67b947bb2b2ab391072b0, type: 2} + - target: {fileID: 2300006, guid: 0829d76c4806eb54b8b2f17eec10f4e6, type: 3} + propertyPath: m_Materials.Array.data[0] + value: + objectReference: {fileID: 2100000, guid: c1fb7d3a27a67b947bb2b2ab391072b0, type: 2} + - target: {fileID: 2300008, guid: 0829d76c4806eb54b8b2f17eec10f4e6, type: 3} + propertyPath: m_Materials.Array.data[0] + value: + objectReference: {fileID: 2100000, guid: c1fb7d3a27a67b947bb2b2ab391072b0, type: 2} + - target: {fileID: 2300010, guid: 0829d76c4806eb54b8b2f17eec10f4e6, type: 3} + propertyPath: m_Materials.Array.data[0] + value: + objectReference: {fileID: 2100000, guid: c1fb7d3a27a67b947bb2b2ab391072b0, type: 2} + - target: {fileID: 2300012, guid: 0829d76c4806eb54b8b2f17eec10f4e6, type: 3} + propertyPath: m_Materials.Array.data[0] + value: + objectReference: {fileID: 2100000, guid: d11179e416c9b394c8176d36a0dcae52, type: 2} + m_RemovedComponents: [] + m_SourcePrefab: {fileID: 100100000, guid: 0829d76c4806eb54b8b2f17eec10f4e6, type: 3} +--- !u!1001 &1399002330 +PrefabInstance: + m_ObjectHideFlags: 0 + serializedVersion: 2 + m_Modification: + m_TransformParent: {fileID: 1889916056} + m_Modifications: + - target: {fileID: 100012, guid: 0829d76c4806eb54b8b2f17eec10f4e6, type: 3} + propertyPath: m_Name + value: Cloud + objectReference: {fileID: 0} + - target: {fileID: 100012, guid: 0829d76c4806eb54b8b2f17eec10f4e6, type: 3} + propertyPath: m_StaticEditorFlags + value: 4294967295 + objectReference: {fileID: 0} + - target: {fileID: 400012, guid: 0829d76c4806eb54b8b2f17eec10f4e6, type: 3} + propertyPath: m_LocalPosition.x + value: -64 + objectReference: {fileID: 0} + - target: {fileID: 400012, guid: 0829d76c4806eb54b8b2f17eec10f4e6, type: 3} + propertyPath: m_LocalPosition.y + value: 94 + objectReference: {fileID: 0} + - target: {fileID: 400012, guid: 0829d76c4806eb54b8b2f17eec10f4e6, type: 3} + propertyPath: m_LocalPosition.z + value: 423 + objectReference: {fileID: 0} + - target: {fileID: 400012, guid: 0829d76c4806eb54b8b2f17eec10f4e6, type: 3} + propertyPath: m_LocalRotation.x + value: -0 + objectReference: {fileID: 0} + - target: {fileID: 400012, guid: 0829d76c4806eb54b8b2f17eec10f4e6, type: 3} + propertyPath: m_LocalRotation.y + value: -0 + objectReference: {fileID: 0} + - target: {fileID: 400012, guid: 0829d76c4806eb54b8b2f17eec10f4e6, type: 3} + propertyPath: m_LocalRotation.z + value: -0 + objectReference: {fileID: 0} + - target: {fileID: 400012, guid: 0829d76c4806eb54b8b2f17eec10f4e6, type: 3} + propertyPath: m_LocalRotation.w + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 400012, guid: 0829d76c4806eb54b8b2f17eec10f4e6, type: 3} + propertyPath: m_RootOrder + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 400012, guid: 0829d76c4806eb54b8b2f17eec10f4e6, type: 3} + propertyPath: m_LocalEulerAnglesHint.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 400012, guid: 0829d76c4806eb54b8b2f17eec10f4e6, type: 3} + propertyPath: m_LocalEulerAnglesHint.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 400012, guid: 0829d76c4806eb54b8b2f17eec10f4e6, type: 3} + propertyPath: m_LocalEulerAnglesHint.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 400012, guid: 0829d76c4806eb54b8b2f17eec10f4e6, type: 3} + propertyPath: m_LocalScale.x + value: 6.4706197 + objectReference: {fileID: 0} + - target: {fileID: 400012, guid: 0829d76c4806eb54b8b2f17eec10f4e6, type: 3} + propertyPath: m_LocalScale.y + value: 6.4706197 + objectReference: {fileID: 0} + - target: {fileID: 400012, guid: 0829d76c4806eb54b8b2f17eec10f4e6, type: 3} + propertyPath: m_LocalScale.z + value: 6.4706197 + objectReference: {fileID: 0} + - target: {fileID: 2300000, guid: 0829d76c4806eb54b8b2f17eec10f4e6, type: 3} + propertyPath: m_Materials.Array.data[0] + value: + objectReference: {fileID: 2100000, guid: c1fb7d3a27a67b947bb2b2ab391072b0, type: 2} + - target: {fileID: 2300002, guid: 0829d76c4806eb54b8b2f17eec10f4e6, type: 3} + propertyPath: m_Materials.Array.data[0] + value: + objectReference: {fileID: 2100000, guid: c1fb7d3a27a67b947bb2b2ab391072b0, type: 2} + - target: {fileID: 2300004, guid: 0829d76c4806eb54b8b2f17eec10f4e6, type: 3} + propertyPath: m_Materials.Array.data[0] + value: + objectReference: {fileID: 2100000, guid: c1fb7d3a27a67b947bb2b2ab391072b0, type: 2} + - target: {fileID: 2300006, guid: 0829d76c4806eb54b8b2f17eec10f4e6, type: 3} + propertyPath: m_Materials.Array.data[0] + value: + objectReference: {fileID: 2100000, guid: c1fb7d3a27a67b947bb2b2ab391072b0, type: 2} + - target: {fileID: 2300008, guid: 0829d76c4806eb54b8b2f17eec10f4e6, type: 3} + propertyPath: m_Materials.Array.data[0] + value: + objectReference: {fileID: 2100000, guid: c1fb7d3a27a67b947bb2b2ab391072b0, type: 2} + - target: {fileID: 2300010, guid: 0829d76c4806eb54b8b2f17eec10f4e6, type: 3} + propertyPath: m_Materials.Array.data[0] + value: + objectReference: {fileID: 2100000, guid: c1fb7d3a27a67b947bb2b2ab391072b0, type: 2} + - target: {fileID: 2300012, guid: 0829d76c4806eb54b8b2f17eec10f4e6, type: 3} + propertyPath: m_Materials.Array.data[0] + value: + objectReference: {fileID: 2100000, guid: 7ac0824dbec4c864aa5fbd7b3321d6d6, type: 2} + m_RemovedComponents: [] + m_SourcePrefab: {fileID: 100100000, guid: 0829d76c4806eb54b8b2f17eec10f4e6, type: 3} +--- !u!4 &1399002331 stripped +Transform: + m_CorrespondingSourceObject: {fileID: 400012, guid: 0829d76c4806eb54b8b2f17eec10f4e6, + type: 3} + m_PrefabInstance: {fileID: 1399002330} + m_PrefabAsset: {fileID: 0} +--- !u!1001 &1411612671 +PrefabInstance: + m_ObjectHideFlags: 0 + serializedVersion: 2 + m_Modification: + m_TransformParent: {fileID: 807038590} + m_Modifications: + - target: {fileID: 667086550830086704, guid: 3796997fde0c29b4180a4ec756403b34, + type: 3} + propertyPath: m_LocalPosition.x + value: -116.06224 + objectReference: {fileID: 0} + - target: {fileID: 667086550830086704, guid: 3796997fde0c29b4180a4ec756403b34, + type: 3} + propertyPath: m_RootOrder + value: 9 + objectReference: {fileID: 0} + - target: {fileID: 667086550830086704, guid: 3796997fde0c29b4180a4ec756403b34, + type: 3} + propertyPath: m_LocalPosition.y + value: -0.0076738596 + objectReference: {fileID: 0} + - target: {fileID: 667086550830086704, guid: 3796997fde0c29b4180a4ec756403b34, + type: 3} + propertyPath: m_LocalPosition.z + value: -23.406822 + objectReference: {fileID: 0} + - target: {fileID: 667086550830086704, guid: 3796997fde0c29b4180a4ec756403b34, + type: 3} + propertyPath: m_LocalRotation.x + value: -0 + objectReference: {fileID: 0} + - target: {fileID: 667086550830086704, guid: 3796997fde0c29b4180a4ec756403b34, + type: 3} + propertyPath: m_LocalRotation.y + value: -0.41347787 + objectReference: {fileID: 0} + - target: {fileID: 667086550830086704, guid: 3796997fde0c29b4180a4ec756403b34, + type: 3} + propertyPath: m_LocalRotation.z + value: -0 + objectReference: {fileID: 0} + - target: {fileID: 667086550830086704, guid: 3796997fde0c29b4180a4ec756403b34, + type: 3} + propertyPath: m_LocalRotation.w + value: 0.9105142 + objectReference: {fileID: 0} + - target: {fileID: 667086550830086704, guid: 3796997fde0c29b4180a4ec756403b34, + type: 3} + propertyPath: m_LocalEulerAnglesHint.y + value: -48.847 + objectReference: {fileID: 0} + - target: {fileID: 667086550830086704, guid: 3796997fde0c29b4180a4ec756403b34, + type: 3} + propertyPath: m_LocalScale.x + value: 9.623448 + objectReference: {fileID: 0} + - target: {fileID: 667086550830086704, guid: 3796997fde0c29b4180a4ec756403b34, + type: 3} + propertyPath: m_LocalScale.y + value: 9.623448 + objectReference: {fileID: 0} + - target: {fileID: 667086550830086704, guid: 3796997fde0c29b4180a4ec756403b34, + type: 3} + propertyPath: m_LocalScale.z + value: 9.623448 + objectReference: {fileID: 0} + - target: {fileID: 5742194636018856685, guid: 3796997fde0c29b4180a4ec756403b34, + type: 3} + propertyPath: m_Name + value: StoneFlat (8) + objectReference: {fileID: 0} + - target: {fileID: 7265208955801587247, guid: 3796997fde0c29b4180a4ec756403b34, + type: 3} + propertyPath: m_Materials.Array.data[0] + value: + objectReference: {fileID: 2100000, guid: d11179e416c9b394c8176d36a0dcae52, type: 2} + - target: {fileID: 7265208955803586799, guid: 3796997fde0c29b4180a4ec756403b34, + type: 3} + propertyPath: m_Name + value: StoneVariant1 (10) + objectReference: {fileID: 0} + - target: {fileID: 7265208955804011727, guid: 3796997fde0c29b4180a4ec756403b34, + type: 3} + propertyPath: m_LocalPosition.x + value: -75.79 + objectReference: {fileID: 0} + - target: {fileID: 7265208955804011727, guid: 3796997fde0c29b4180a4ec756403b34, + type: 3} + propertyPath: m_LocalPosition.y + value: -1.01 + objectReference: {fileID: 0} + - target: {fileID: 7265208955804011727, guid: 3796997fde0c29b4180a4ec756403b34, + type: 3} + propertyPath: m_LocalPosition.z + value: -13.47 + objectReference: {fileID: 0} + - target: {fileID: 7265208955804011727, guid: 3796997fde0c29b4180a4ec756403b34, + type: 3} + propertyPath: m_LocalRotation.x + value: -0 + objectReference: {fileID: 0} + - target: {fileID: 7265208955804011727, guid: 3796997fde0c29b4180a4ec756403b34, + type: 3} + propertyPath: m_LocalRotation.y + value: 0.2531536 + objectReference: {fileID: 0} + - target: {fileID: 7265208955804011727, guid: 3796997fde0c29b4180a4ec756403b34, + type: 3} + propertyPath: m_LocalRotation.z + value: -0 + objectReference: {fileID: 0} + - target: {fileID: 7265208955804011727, guid: 3796997fde0c29b4180a4ec756403b34, + type: 3} + propertyPath: m_LocalRotation.w + value: 0.9674261 + objectReference: {fileID: 0} + - target: {fileID: 7265208955804011727, guid: 3796997fde0c29b4180a4ec756403b34, + type: 3} + propertyPath: m_RootOrder + value: 9 + objectReference: {fileID: 0} + - target: {fileID: 7265208955804011727, guid: 3796997fde0c29b4180a4ec756403b34, + type: 3} + propertyPath: m_LocalEulerAnglesHint.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 7265208955804011727, guid: 3796997fde0c29b4180a4ec756403b34, + type: 3} + propertyPath: m_LocalEulerAnglesHint.y + value: 29.328001 + objectReference: {fileID: 0} + - target: {fileID: 7265208955804011727, guid: 3796997fde0c29b4180a4ec756403b34, + type: 3} + propertyPath: m_LocalEulerAnglesHint.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 7265208955804011727, guid: 3796997fde0c29b4180a4ec756403b34, + type: 3} + propertyPath: m_LocalScale.x + value: 5.5486884 + objectReference: {fileID: 0} + - target: {fileID: 7265208955804011727, guid: 3796997fde0c29b4180a4ec756403b34, + type: 3} + propertyPath: m_LocalScale.y + value: 5.5486712 + objectReference: {fileID: 0} + - target: {fileID: 7265208955804011727, guid: 3796997fde0c29b4180a4ec756403b34, + type: 3} + propertyPath: m_LocalScale.z + value: 5.5486884 + objectReference: {fileID: 0} + m_RemovedComponents: [] + m_SourcePrefab: {fileID: 100100000, guid: 3796997fde0c29b4180a4ec756403b34, type: 3} +--- !u!1001 &1419231052 +PrefabInstance: + m_ObjectHideFlags: 0 + serializedVersion: 2 + m_Modification: + m_TransformParent: {fileID: 286898288} + m_Modifications: + - target: {fileID: 100000, guid: 92bb9994204d1d44cb6223c53e4f84f8, type: 3} + propertyPath: m_Name + value: Hill (13) + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 92bb9994204d1d44cb6223c53e4f84f8, type: 3} + propertyPath: m_LocalPosition.x + value: -5.260124 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 92bb9994204d1d44cb6223c53e4f84f8, type: 3} + propertyPath: m_LocalPosition.y + value: -7.593904 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 92bb9994204d1d44cb6223c53e4f84f8, type: 3} + propertyPath: m_LocalPosition.z + value: -126.10935 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 92bb9994204d1d44cb6223c53e4f84f8, type: 3} + propertyPath: m_LocalRotation.x + value: -0 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 92bb9994204d1d44cb6223c53e4f84f8, type: 3} + propertyPath: m_LocalRotation.y + value: -0 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 92bb9994204d1d44cb6223c53e4f84f8, type: 3} + propertyPath: m_LocalRotation.z + value: -0 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 92bb9994204d1d44cb6223c53e4f84f8, type: 3} + propertyPath: m_LocalRotation.w + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 92bb9994204d1d44cb6223c53e4f84f8, type: 3} + propertyPath: m_RootOrder + value: 13 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 92bb9994204d1d44cb6223c53e4f84f8, type: 3} + propertyPath: m_LocalEulerAnglesHint.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 92bb9994204d1d44cb6223c53e4f84f8, type: 3} + propertyPath: m_LocalEulerAnglesHint.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 92bb9994204d1d44cb6223c53e4f84f8, type: 3} + propertyPath: m_LocalEulerAnglesHint.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 92bb9994204d1d44cb6223c53e4f84f8, type: 3} + propertyPath: m_LocalScale.x + value: 5.22806 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 92bb9994204d1d44cb6223c53e4f84f8, type: 3} + propertyPath: m_LocalScale.y + value: 12.29311 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 92bb9994204d1d44cb6223c53e4f84f8, type: 3} + propertyPath: m_LocalScale.z + value: 5.22806 + objectReference: {fileID: 0} + m_RemovedComponents: [] + m_SourcePrefab: {fileID: 100100000, guid: 92bb9994204d1d44cb6223c53e4f84f8, type: 3} +--- !u!4 &1419231053 stripped +Transform: + m_CorrespondingSourceObject: {fileID: 400000, guid: 92bb9994204d1d44cb6223c53e4f84f8, + type: 3} + m_PrefabInstance: {fileID: 1419231052} + m_PrefabAsset: {fileID: 0} +--- !u!4 &1422716774 stripped +Transform: + m_CorrespondingSourceObject: {fileID: 40299501215355906, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + m_PrefabInstance: {fileID: 1170209342} + m_PrefabAsset: {fileID: 0} +--- !u!1001 &1440797752 +PrefabInstance: + m_ObjectHideFlags: 0 + serializedVersion: 2 + m_Modification: + m_TransformParent: {fileID: 822690626} + m_Modifications: + - target: {fileID: 1579282987822437358, guid: 941fac9249b6442cdb2d3f23472128e2, + type: 3} + propertyPath: m_Name + value: ModularTrackStraight (9) + objectReference: {fileID: 0} + - target: {fileID: 1579282987822796750, guid: 941fac9249b6442cdb2d3f23472128e2, + type: 3} + propertyPath: m_LocalPosition.x + value: -44 + objectReference: {fileID: 0} + - target: {fileID: 1579282987822796750, guid: 941fac9249b6442cdb2d3f23472128e2, + type: 3} + propertyPath: m_LocalPosition.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 1579282987822796750, guid: 941fac9249b6442cdb2d3f23472128e2, + type: 3} + propertyPath: m_LocalPosition.z + value: 17 + objectReference: {fileID: 0} + - target: {fileID: 1579282987822796750, guid: 941fac9249b6442cdb2d3f23472128e2, + type: 3} + propertyPath: m_LocalRotation.x + value: -0 + objectReference: {fileID: 0} + - target: {fileID: 1579282987822796750, guid: 941fac9249b6442cdb2d3f23472128e2, + type: 3} + propertyPath: m_LocalRotation.y + value: -0 + objectReference: {fileID: 0} + - target: {fileID: 1579282987822796750, guid: 941fac9249b6442cdb2d3f23472128e2, + type: 3} + propertyPath: m_LocalRotation.z + value: -0 + objectReference: {fileID: 0} + - target: {fileID: 1579282987822796750, guid: 941fac9249b6442cdb2d3f23472128e2, + type: 3} + propertyPath: m_LocalRotation.w + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 1579282987822796750, guid: 941fac9249b6442cdb2d3f23472128e2, + type: 3} + propertyPath: m_RootOrder + value: 11 + objectReference: {fileID: 0} + - target: {fileID: 1579282987822796750, guid: 941fac9249b6442cdb2d3f23472128e2, + type: 3} + propertyPath: m_LocalEulerAnglesHint.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 1579282987822796750, guid: 941fac9249b6442cdb2d3f23472128e2, + type: 3} + propertyPath: m_LocalEulerAnglesHint.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 1579282987822796750, guid: 941fac9249b6442cdb2d3f23472128e2, + type: 3} + propertyPath: m_LocalEulerAnglesHint.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 1644974464755198482, guid: 941fac9249b6442cdb2d3f23472128e2, + type: 3} + propertyPath: bounciness + value: 0.1 + objectReference: {fileID: 0} + m_RemovedComponents: + - {fileID: 1579282987816156490, guid: 941fac9249b6442cdb2d3f23472128e2, type: 3} + m_SourcePrefab: {fileID: 100100000, guid: 941fac9249b6442cdb2d3f23472128e2, type: 3} +--- !u!4 &1440797753 stripped +Transform: + m_CorrespondingSourceObject: {fileID: 1579282987822796750, guid: 941fac9249b6442cdb2d3f23472128e2, + type: 3} + m_PrefabInstance: {fileID: 1440797752} + m_PrefabAsset: {fileID: 0} +--- !u!1001 &1448653044 +PrefabInstance: + m_ObjectHideFlags: 0 + serializedVersion: 2 + m_Modification: + m_TransformParent: {fileID: 77662693} + m_Modifications: + - target: {fileID: 100000, guid: dca6189290e8c16479a364fa6d80b6b8, type: 3} + propertyPath: m_Name + value: TreeRound (1) + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: dca6189290e8c16479a364fa6d80b6b8, type: 3} + propertyPath: m_LocalPosition.x + value: 4.690792 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: dca6189290e8c16479a364fa6d80b6b8, type: 3} + propertyPath: m_LocalPosition.y + value: 5.0626717 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: dca6189290e8c16479a364fa6d80b6b8, type: 3} + propertyPath: m_LocalPosition.z + value: 18.63845 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: dca6189290e8c16479a364fa6d80b6b8, type: 3} + propertyPath: m_LocalRotation.x + value: 0.00000008146034 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: dca6189290e8c16479a364fa6d80b6b8, type: 3} + propertyPath: m_LocalRotation.y + value: -0 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: dca6189290e8c16479a364fa6d80b6b8, type: 3} + propertyPath: m_LocalRotation.z + value: -0 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: dca6189290e8c16479a364fa6d80b6b8, type: 3} + propertyPath: m_LocalRotation.w + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: dca6189290e8c16479a364fa6d80b6b8, type: 3} + propertyPath: m_RootOrder + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: dca6189290e8c16479a364fa6d80b6b8, type: 3} + propertyPath: m_LocalEulerAnglesHint.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: dca6189290e8c16479a364fa6d80b6b8, type: 3} + propertyPath: m_LocalEulerAnglesHint.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: dca6189290e8c16479a364fa6d80b6b8, type: 3} + propertyPath: m_LocalEulerAnglesHint.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: dca6189290e8c16479a364fa6d80b6b8, type: 3} + propertyPath: m_LocalScale.x + value: 2.3049 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: dca6189290e8c16479a364fa6d80b6b8, type: 3} + propertyPath: m_LocalScale.y + value: 2.3049 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: dca6189290e8c16479a364fa6d80b6b8, type: 3} + propertyPath: m_LocalScale.z + value: 2.3049 + objectReference: {fileID: 0} + - target: {fileID: 2300000, guid: dca6189290e8c16479a364fa6d80b6b8, type: 3} + propertyPath: m_Materials.Array.data[0] + value: + objectReference: {fileID: 2100000, guid: d11179e416c9b394c8176d36a0dcae52, type: 2} + - target: {fileID: 2300002, guid: dca6189290e8c16479a364fa6d80b6b8, type: 3} + propertyPath: m_Materials.Array.data[0] + value: + objectReference: {fileID: 2100000, guid: 6c378a7b0da21d443a337061a33da161, type: 2} + m_RemovedComponents: [] + m_SourcePrefab: {fileID: 100100000, guid: dca6189290e8c16479a364fa6d80b6b8, type: 3} +--- !u!4 &1448653045 stripped +Transform: + m_CorrespondingSourceObject: {fileID: 400000, guid: dca6189290e8c16479a364fa6d80b6b8, + type: 3} + m_PrefabInstance: {fileID: 1448653044} + m_PrefabAsset: {fileID: 0} +--- !u!1001 &1477802855 +PrefabInstance: + m_ObjectHideFlags: 0 + serializedVersion: 2 + m_Modification: + m_TransformParent: {fileID: 77662693} + m_Modifications: + - target: {fileID: 100000, guid: 9f1e50f73a529a448b004add5bec5d80, type: 3} + propertyPath: m_Name + value: TreeBox (2) + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 9f1e50f73a529a448b004add5bec5d80, type: 3} + propertyPath: m_LocalPosition.x + value: -59.40321 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 9f1e50f73a529a448b004add5bec5d80, type: 3} + propertyPath: m_LocalPosition.y + value: -0.4286642 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 9f1e50f73a529a448b004add5bec5d80, type: 3} + propertyPath: m_LocalPosition.z + value: -39.496773 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 9f1e50f73a529a448b004add5bec5d80, type: 3} + propertyPath: m_LocalRotation.x + value: -0 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 9f1e50f73a529a448b004add5bec5d80, type: 3} + propertyPath: m_LocalRotation.y + value: -0.20550784 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 9f1e50f73a529a448b004add5bec5d80, type: 3} + propertyPath: m_LocalRotation.z + value: -0 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 9f1e50f73a529a448b004add5bec5d80, type: 3} + propertyPath: m_LocalRotation.w + value: 0.9786555 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 9f1e50f73a529a448b004add5bec5d80, type: 3} + propertyPath: m_RootOrder + value: 22 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 9f1e50f73a529a448b004add5bec5d80, type: 3} + propertyPath: m_LocalEulerAnglesHint.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 9f1e50f73a529a448b004add5bec5d80, type: 3} + propertyPath: m_LocalEulerAnglesHint.y + value: -23.718 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 9f1e50f73a529a448b004add5bec5d80, type: 3} + propertyPath: m_LocalEulerAnglesHint.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 9f1e50f73a529a448b004add5bec5d80, type: 3} + propertyPath: m_LocalScale.x + value: 3.163039 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 9f1e50f73a529a448b004add5bec5d80, type: 3} + propertyPath: m_LocalScale.y + value: 3.1630373 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 9f1e50f73a529a448b004add5bec5d80, type: 3} + propertyPath: m_LocalScale.z + value: 3.163039 + objectReference: {fileID: 0} + - target: {fileID: 2300000, guid: 9f1e50f73a529a448b004add5bec5d80, type: 3} + propertyPath: m_Materials.Array.data[0] + value: + objectReference: {fileID: 2100000, guid: d11179e416c9b394c8176d36a0dcae52, type: 2} + m_RemovedComponents: [] + m_SourcePrefab: {fileID: 100100000, guid: 9f1e50f73a529a448b004add5bec5d80, type: 3} +--- !u!4 &1477802856 stripped +Transform: + m_CorrespondingSourceObject: {fileID: 400000, guid: 9f1e50f73a529a448b004add5bec5d80, + type: 3} + m_PrefabInstance: {fileID: 1477802855} + m_PrefabAsset: {fileID: 0} +--- !u!1001 &1485692694 +PrefabInstance: + m_ObjectHideFlags: 0 + serializedVersion: 2 + m_Modification: + m_TransformParent: {fileID: 77662693} + m_Modifications: + - target: {fileID: 100000, guid: 9f1e50f73a529a448b004add5bec5d80, type: 3} + propertyPath: m_Name + value: TreeBox (4) + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 9f1e50f73a529a448b004add5bec5d80, type: 3} + propertyPath: m_LocalPosition.x + value: -63.82921 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 9f1e50f73a529a448b004add5bec5d80, type: 3} + propertyPath: m_LocalPosition.y + value: -0.058664322 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 9f1e50f73a529a448b004add5bec5d80, type: 3} + propertyPath: m_LocalPosition.z + value: 91.229225 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 9f1e50f73a529a448b004add5bec5d80, type: 3} + propertyPath: m_LocalRotation.x + value: -0 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 9f1e50f73a529a448b004add5bec5d80, type: 3} + propertyPath: m_LocalRotation.y + value: -0.39853132 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 9f1e50f73a529a448b004add5bec5d80, type: 3} + propertyPath: m_LocalRotation.z + value: -0 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 9f1e50f73a529a448b004add5bec5d80, type: 3} + propertyPath: m_LocalRotation.w + value: 0.9171547 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 9f1e50f73a529a448b004add5bec5d80, type: 3} + propertyPath: m_RootOrder + value: 24 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 9f1e50f73a529a448b004add5bec5d80, type: 3} + propertyPath: m_LocalEulerAnglesHint.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 9f1e50f73a529a448b004add5bec5d80, type: 3} + propertyPath: m_LocalEulerAnglesHint.y + value: -46.973003 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 9f1e50f73a529a448b004add5bec5d80, type: 3} + propertyPath: m_LocalEulerAnglesHint.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 9f1e50f73a529a448b004add5bec5d80, type: 3} + propertyPath: m_LocalScale.x + value: 3.3117604 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 9f1e50f73a529a448b004add5bec5d80, type: 3} + propertyPath: m_LocalScale.y + value: 3.3117526 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 9f1e50f73a529a448b004add5bec5d80, type: 3} + propertyPath: m_LocalScale.z + value: 3.3117604 + objectReference: {fileID: 0} + - target: {fileID: 2300000, guid: 9f1e50f73a529a448b004add5bec5d80, type: 3} + propertyPath: m_Materials.Array.data[0] + value: + objectReference: {fileID: 2100000, guid: d11179e416c9b394c8176d36a0dcae52, type: 2} + m_RemovedComponents: [] + m_SourcePrefab: {fileID: 100100000, guid: 9f1e50f73a529a448b004add5bec5d80, type: 3} +--- !u!4 &1485692695 stripped +Transform: + m_CorrespondingSourceObject: {fileID: 400000, guid: 9f1e50f73a529a448b004add5bec5d80, + type: 3} + m_PrefabInstance: {fileID: 1485692694} + m_PrefabAsset: {fileID: 0} +--- !u!1001 &1495106826 +PrefabInstance: + m_ObjectHideFlags: 0 + serializedVersion: 2 + m_Modification: + m_TransformParent: {fileID: 807038590} + m_Modifications: + - target: {fileID: 667086550830086704, guid: 3796997fde0c29b4180a4ec756403b34, + type: 3} + propertyPath: m_LocalPosition.x + value: -63.431904 + objectReference: {fileID: 0} + - target: {fileID: 667086550830086704, guid: 3796997fde0c29b4180a4ec756403b34, + type: 3} + propertyPath: m_RootOrder + value: 6 + objectReference: {fileID: 0} + - target: {fileID: 667086550830086704, guid: 3796997fde0c29b4180a4ec756403b34, + type: 3} + propertyPath: m_LocalPosition.y + value: -0.047674 + objectReference: {fileID: 0} + - target: {fileID: 667086550830086704, guid: 3796997fde0c29b4180a4ec756403b34, + type: 3} + propertyPath: m_LocalPosition.z + value: 0.94680405 + objectReference: {fileID: 0} + - target: {fileID: 667086550830086704, guid: 3796997fde0c29b4180a4ec756403b34, + type: 3} + propertyPath: m_LocalRotation.x + value: -0 + objectReference: {fileID: 0} + - target: {fileID: 667086550830086704, guid: 3796997fde0c29b4180a4ec756403b34, + type: 3} + propertyPath: m_LocalRotation.y + value: 0.31035286 + objectReference: {fileID: 0} + - target: {fileID: 667086550830086704, guid: 3796997fde0c29b4180a4ec756403b34, + type: 3} + propertyPath: m_LocalRotation.z + value: -0 + objectReference: {fileID: 0} + - target: {fileID: 667086550830086704, guid: 3796997fde0c29b4180a4ec756403b34, + type: 3} + propertyPath: m_LocalRotation.w + value: 0.9506214 + objectReference: {fileID: 0} + - target: {fileID: 667086550830086704, guid: 3796997fde0c29b4180a4ec756403b34, + type: 3} + propertyPath: m_LocalEulerAnglesHint.y + value: 36.161 + objectReference: {fileID: 0} + - target: {fileID: 667086550830086704, guid: 3796997fde0c29b4180a4ec756403b34, + type: 3} + propertyPath: m_LocalScale.x + value: 7.9455004 + objectReference: {fileID: 0} + - target: {fileID: 667086550830086704, guid: 3796997fde0c29b4180a4ec756403b34, + type: 3} + propertyPath: m_LocalScale.y + value: 7.9455 + objectReference: {fileID: 0} + - target: {fileID: 667086550830086704, guid: 3796997fde0c29b4180a4ec756403b34, + type: 3} + propertyPath: m_LocalScale.z + value: 7.9455004 + objectReference: {fileID: 0} + - target: {fileID: 5742194636018856685, guid: 3796997fde0c29b4180a4ec756403b34, + type: 3} + propertyPath: m_Name + value: StoneFlat (6) + objectReference: {fileID: 0} + - target: {fileID: 7265208955801587247, guid: 3796997fde0c29b4180a4ec756403b34, + type: 3} + propertyPath: m_Materials.Array.data[0] + value: + objectReference: {fileID: 2100000, guid: d11179e416c9b394c8176d36a0dcae52, type: 2} + - target: {fileID: 7265208955802684655, guid: 3796997fde0c29b4180a4ec756403b34, + type: 3} + propertyPath: m_Mesh + value: + objectReference: {fileID: 4300002, guid: c80f31023dcf9b34cbd0044505be4806, type: 3} + - target: {fileID: 7265208955803586799, guid: 3796997fde0c29b4180a4ec756403b34, + type: 3} + propertyPath: m_Name + value: StoneVariant1 (8) + objectReference: {fileID: 0} + - target: {fileID: 7265208955804011727, guid: 3796997fde0c29b4180a4ec756403b34, + type: 3} + propertyPath: m_LocalPosition.x + value: -15.07 + objectReference: {fileID: 0} + - target: {fileID: 7265208955804011727, guid: 3796997fde0c29b4180a4ec756403b34, + type: 3} + propertyPath: m_LocalPosition.y + value: -0.81999993 + objectReference: {fileID: 0} + - target: {fileID: 7265208955804011727, guid: 3796997fde0c29b4180a4ec756403b34, + type: 3} + propertyPath: m_LocalPosition.z + value: 14.19 + objectReference: {fileID: 0} + - target: {fileID: 7265208955804011727, guid: 3796997fde0c29b4180a4ec756403b34, + type: 3} + propertyPath: m_LocalRotation.x + value: -0 + objectReference: {fileID: 0} + - target: {fileID: 7265208955804011727, guid: 3796997fde0c29b4180a4ec756403b34, + type: 3} + propertyPath: m_LocalRotation.y + value: -0.6654222 + objectReference: {fileID: 0} + - target: {fileID: 7265208955804011727, guid: 3796997fde0c29b4180a4ec756403b34, + type: 3} + propertyPath: m_LocalRotation.z + value: -0 + objectReference: {fileID: 0} + - target: {fileID: 7265208955804011727, guid: 3796997fde0c29b4180a4ec756403b34, + type: 3} + propertyPath: m_LocalRotation.w + value: 0.74646723 + objectReference: {fileID: 0} + - target: {fileID: 7265208955804011727, guid: 3796997fde0c29b4180a4ec756403b34, + type: 3} + propertyPath: m_RootOrder + value: 7 + objectReference: {fileID: 0} + - target: {fileID: 7265208955804011727, guid: 3796997fde0c29b4180a4ec756403b34, + type: 3} + propertyPath: m_LocalEulerAnglesHint.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 7265208955804011727, guid: 3796997fde0c29b4180a4ec756403b34, + type: 3} + propertyPath: m_LocalEulerAnglesHint.y + value: -83.429 + objectReference: {fileID: 0} + - target: {fileID: 7265208955804011727, guid: 3796997fde0c29b4180a4ec756403b34, + type: 3} + propertyPath: m_LocalEulerAnglesHint.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 7265208955804011727, guid: 3796997fde0c29b4180a4ec756403b34, + type: 3} + propertyPath: m_LocalScale.x + value: 12.148671 + objectReference: {fileID: 0} + - target: {fileID: 7265208955804011727, guid: 3796997fde0c29b4180a4ec756403b34, + type: 3} + propertyPath: m_LocalScale.y + value: 12.14864 + objectReference: {fileID: 0} + - target: {fileID: 7265208955804011727, guid: 3796997fde0c29b4180a4ec756403b34, + type: 3} + propertyPath: m_LocalScale.z + value: 12.148671 + objectReference: {fileID: 0} + m_RemovedComponents: [] + m_SourcePrefab: {fileID: 100100000, guid: 3796997fde0c29b4180a4ec756403b34, type: 3} +--- !u!4 &1501329462 stripped +Transform: + m_CorrespondingSourceObject: {fileID: 400000, guid: dca6189290e8c16479a364fa6d80b6b8, + type: 3} + m_PrefabInstance: {fileID: 426602534} + m_PrefabAsset: {fileID: 0} +--- !u!1001 &1536282710 +PrefabInstance: + m_ObjectHideFlags: 0 + serializedVersion: 2 + m_Modification: + m_TransformParent: {fileID: 822690626} + m_Modifications: + - target: {fileID: 1579282987822437358, guid: 941fac9249b6442cdb2d3f23472128e2, + type: 3} + propertyPath: m_Name + value: ModularTrackStraight (11) + objectReference: {fileID: 0} + - target: {fileID: 1579282987822796750, guid: 941fac9249b6442cdb2d3f23472128e2, + type: 3} + propertyPath: m_LocalPosition.x + value: -44 + objectReference: {fileID: 0} + - target: {fileID: 1579282987822796750, guid: 941fac9249b6442cdb2d3f23472128e2, + type: 3} + propertyPath: m_LocalPosition.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 1579282987822796750, guid: 941fac9249b6442cdb2d3f23472128e2, + type: 3} + propertyPath: m_LocalPosition.z + value: -3 + objectReference: {fileID: 0} + - target: {fileID: 1579282987822796750, guid: 941fac9249b6442cdb2d3f23472128e2, + type: 3} + propertyPath: m_LocalRotation.x + value: -0 + objectReference: {fileID: 0} + - target: {fileID: 1579282987822796750, guid: 941fac9249b6442cdb2d3f23472128e2, + type: 3} + propertyPath: m_LocalRotation.y + value: -0 + objectReference: {fileID: 0} + - target: {fileID: 1579282987822796750, guid: 941fac9249b6442cdb2d3f23472128e2, + type: 3} + propertyPath: m_LocalRotation.z + value: -0 + objectReference: {fileID: 0} + - target: {fileID: 1579282987822796750, guid: 941fac9249b6442cdb2d3f23472128e2, + type: 3} + propertyPath: m_LocalRotation.w + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 1579282987822796750, guid: 941fac9249b6442cdb2d3f23472128e2, + type: 3} + propertyPath: m_RootOrder + value: 13 + objectReference: {fileID: 0} + - target: {fileID: 1579282987822796750, guid: 941fac9249b6442cdb2d3f23472128e2, + type: 3} + propertyPath: m_LocalEulerAnglesHint.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 1579282987822796750, guid: 941fac9249b6442cdb2d3f23472128e2, + type: 3} + propertyPath: m_LocalEulerAnglesHint.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 1579282987822796750, guid: 941fac9249b6442cdb2d3f23472128e2, + type: 3} + propertyPath: m_LocalEulerAnglesHint.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 1644974464755198482, guid: 941fac9249b6442cdb2d3f23472128e2, + type: 3} + propertyPath: bounciness + value: 0.1 + objectReference: {fileID: 0} + m_RemovedComponents: + - {fileID: 1579282987816156490, guid: 941fac9249b6442cdb2d3f23472128e2, type: 3} + m_SourcePrefab: {fileID: 100100000, guid: 941fac9249b6442cdb2d3f23472128e2, type: 3} +--- !u!4 &1536282711 stripped +Transform: + m_CorrespondingSourceObject: {fileID: 1579282987822796750, guid: 941fac9249b6442cdb2d3f23472128e2, + type: 3} + m_PrefabInstance: {fileID: 1536282710} + m_PrefabAsset: {fileID: 0} +--- !u!4 &1550973660 stripped +Transform: + m_CorrespondingSourceObject: {fileID: 400000, guid: 9f1e50f73a529a448b004add5bec5d80, + type: 3} + m_PrefabInstance: {fileID: 335966567} + m_PrefabAsset: {fileID: 0} +--- !u!4 &1555499288 stripped +Transform: + m_CorrespondingSourceObject: {fileID: 400000, guid: dca6189290e8c16479a364fa6d80b6b8, + type: 3} + m_PrefabInstance: {fileID: 264899791} + m_PrefabAsset: {fileID: 0} +--- !u!1001 &1562696022 +PrefabInstance: + m_ObjectHideFlags: 0 + serializedVersion: 2 + m_Modification: + m_TransformParent: {fileID: 77662693} + m_Modifications: + - target: {fileID: 100000, guid: 9f1e50f73a529a448b004add5bec5d80, type: 3} + propertyPath: m_Name + value: TreeBox + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 9f1e50f73a529a448b004add5bec5d80, type: 3} + propertyPath: m_LocalPosition.x + value: -73.10921 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 9f1e50f73a529a448b004add5bec5d80, type: 3} + propertyPath: m_LocalPosition.y + value: -0.49866438 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 9f1e50f73a529a448b004add5bec5d80, type: 3} + propertyPath: m_LocalPosition.z + value: 114.519226 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 9f1e50f73a529a448b004add5bec5d80, type: 3} + propertyPath: m_LocalRotation.x + value: -0 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 9f1e50f73a529a448b004add5bec5d80, type: 3} + propertyPath: m_LocalRotation.y + value: -0.39853132 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 9f1e50f73a529a448b004add5bec5d80, type: 3} + propertyPath: m_LocalRotation.z + value: -0 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 9f1e50f73a529a448b004add5bec5d80, type: 3} + propertyPath: m_LocalRotation.w + value: 0.9171547 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 9f1e50f73a529a448b004add5bec5d80, type: 3} + propertyPath: m_RootOrder + value: 20 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 9f1e50f73a529a448b004add5bec5d80, type: 3} + propertyPath: m_LocalEulerAnglesHint.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 9f1e50f73a529a448b004add5bec5d80, type: 3} + propertyPath: m_LocalEulerAnglesHint.y + value: -46.973003 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 9f1e50f73a529a448b004add5bec5d80, type: 3} + propertyPath: m_LocalEulerAnglesHint.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 9f1e50f73a529a448b004add5bec5d80, type: 3} + propertyPath: m_LocalScale.x + value: 3.31176 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 9f1e50f73a529a448b004add5bec5d80, type: 3} + propertyPath: m_LocalScale.y + value: 3.31175 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 9f1e50f73a529a448b004add5bec5d80, type: 3} + propertyPath: m_LocalScale.z + value: 3.31176 + objectReference: {fileID: 0} + - target: {fileID: 2300000, guid: 9f1e50f73a529a448b004add5bec5d80, type: 3} + propertyPath: m_Materials.Array.data[0] + value: + objectReference: {fileID: 2100000, guid: d11179e416c9b394c8176d36a0dcae52, type: 2} + m_RemovedComponents: [] + m_SourcePrefab: {fileID: 100100000, guid: 9f1e50f73a529a448b004add5bec5d80, type: 3} +--- !u!1 &1565471365 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 1565471367} + - component: {fileID: 1565471366} + m_Layer: 0 + m_Name: DirectionalLight + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!108 &1565471366 +Light: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1565471365} + m_Enabled: 1 + serializedVersion: 8 + m_Type: 1 + m_Color: {r: 0.990566, g: 0.990566, b: 0.990566, a: 1} + m_Intensity: 0.5 + m_Range: 10 + m_SpotAngle: 30 + m_CookieSize: 10 + m_Shadows: + m_Type: 2 + m_Resolution: -1 + m_CustomResolution: -1 + m_Strength: 1 + m_Bias: 0.05 + m_NormalBias: 0.06 + m_NearPlane: 0.2 + m_Cookie: {fileID: 0} + m_DrawHalo: 0 + m_Flare: {fileID: 0} + m_RenderMode: 0 + m_CullingMask: + serializedVersion: 2 + m_Bits: 4294967295 + m_Lightmapping: 4 + m_LightShadowCasterMode: 0 + m_AreaSize: {x: 1, y: 1} + m_BounceIntensity: 1 + m_ColorTemperature: 6570 + m_UseColorTemperature: 0 + m_ShadowRadius: 0 + m_ShadowAngle: 0 +--- !u!4 &1565471367 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1565471365} + m_LocalRotation: {x: -0.27855396, y: 0.73258173, z: -0.16366923, w: -0.5991194} + m_LocalPosition: {x: 0, y: 3, z: 0} + m_LocalScale: {x: 1, y: 1, z: 1} + m_Children: [] + m_Father: {fileID: 0} + m_RootOrder: 15 + m_LocalEulerAnglesHint: {x: 35, y: -466.2, z: -15} +--- !u!1001 &1581658820 +PrefabInstance: + m_ObjectHideFlags: 0 + serializedVersion: 2 + m_Modification: + m_TransformParent: {fileID: 77662693} + m_Modifications: + - target: {fileID: 100000, guid: dca6189290e8c16479a364fa6d80b6b8, type: 3} + propertyPath: m_Name + value: TreeRound (13) + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: dca6189290e8c16479a364fa6d80b6b8, type: 3} + propertyPath: m_LocalPosition.x + value: -10.1269455 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: dca6189290e8c16479a364fa6d80b6b8, type: 3} + propertyPath: m_LocalPosition.y + value: 5.531336 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: dca6189290e8c16479a364fa6d80b6b8, type: 3} + propertyPath: m_LocalPosition.z + value: 71.481705 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: dca6189290e8c16479a364fa6d80b6b8, type: 3} + propertyPath: m_LocalRotation.x + value: 0.00000006431914 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: dca6189290e8c16479a364fa6d80b6b8, type: 3} + propertyPath: m_LocalRotation.y + value: 0.6136526 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: dca6189290e8c16479a364fa6d80b6b8, type: 3} + propertyPath: m_LocalRotation.z + value: 0.00000004998835 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: dca6189290e8c16479a364fa6d80b6b8, type: 3} + propertyPath: m_LocalRotation.w + value: 0.7895762 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: dca6189290e8c16479a364fa6d80b6b8, type: 3} + propertyPath: m_RootOrder + value: 13 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: dca6189290e8c16479a364fa6d80b6b8, type: 3} + propertyPath: m_LocalEulerAnglesHint.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: dca6189290e8c16479a364fa6d80b6b8, type: 3} + propertyPath: m_LocalEulerAnglesHint.y + value: 75.708 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: dca6189290e8c16479a364fa6d80b6b8, type: 3} + propertyPath: m_LocalEulerAnglesHint.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: dca6189290e8c16479a364fa6d80b6b8, type: 3} + propertyPath: m_LocalScale.x + value: 2.3049002 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: dca6189290e8c16479a364fa6d80b6b8, type: 3} + propertyPath: m_LocalScale.y + value: 2.3049 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: dca6189290e8c16479a364fa6d80b6b8, type: 3} + propertyPath: m_LocalScale.z + value: 2.3049002 + objectReference: {fileID: 0} + - target: {fileID: 2300000, guid: dca6189290e8c16479a364fa6d80b6b8, type: 3} + propertyPath: m_Materials.Array.data[0] + value: + objectReference: {fileID: 2100000, guid: d11179e416c9b394c8176d36a0dcae52, type: 2} + - target: {fileID: 2300002, guid: dca6189290e8c16479a364fa6d80b6b8, type: 3} + propertyPath: m_Materials.Array.data[0] + value: + objectReference: {fileID: 2100000, guid: d11179e416c9b394c8176d36a0dcae52, type: 2} + m_RemovedComponents: [] + m_SourcePrefab: {fileID: 100100000, guid: dca6189290e8c16479a364fa6d80b6b8, type: 3} +--- !u!4 &1581658821 stripped +Transform: + m_CorrespondingSourceObject: {fileID: 400000, guid: dca6189290e8c16479a364fa6d80b6b8, + type: 3} + m_PrefabInstance: {fileID: 1581658820} + m_PrefabAsset: {fileID: 0} +--- !u!1001 &1604134371 +PrefabInstance: + m_ObjectHideFlags: 0 + serializedVersion: 2 + m_Modification: + m_TransformParent: {fileID: 807038590} + m_Modifications: + - target: {fileID: 40299501215355906, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_LocalPosition.x + value: 26.085758 + objectReference: {fileID: 0} + - target: {fileID: 40299501215355906, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_RootOrder + value: 21 + objectReference: {fileID: 0} + - target: {fileID: 40299501215355906, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_LocalPosition.y + value: -0.0016738772 + objectReference: {fileID: 0} + - target: {fileID: 40299501215355906, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_LocalPosition.z + value: 73.43617 + objectReference: {fileID: 0} + - target: {fileID: 40299501215355906, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_LocalRotation.y + value: 0.21291947 + objectReference: {fileID: 0} + - target: {fileID: 40299501215355906, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_LocalRotation.z + value: -0 + objectReference: {fileID: 0} + - target: {fileID: 40299501215355906, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_LocalRotation.w + value: 0.9770698 + objectReference: {fileID: 0} + - target: {fileID: 40299501215355906, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_LocalEulerAnglesHint.y + value: 24.587 + objectReference: {fileID: 0} + - target: {fileID: 40299501215355906, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_LocalScale.x + value: 1.8643444 + objectReference: {fileID: 0} + - target: {fileID: 40299501215355906, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_LocalScale.y + value: 1.864344 + objectReference: {fileID: 0} + - target: {fileID: 40299501215355906, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_LocalScale.z + value: 1.8643444 + objectReference: {fileID: 0} + - target: {fileID: 40299501215355906, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_LocalRotation.x + value: -0 + objectReference: {fileID: 0} + - target: {fileID: 2057621013554333680, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_LocalPosition.x + value: 37.9 + objectReference: {fileID: 0} + - target: {fileID: 2057621013554333680, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_LocalPosition.y + value: -1.03 + objectReference: {fileID: 0} + - target: {fileID: 2057621013554333680, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_LocalPosition.z + value: 102.3 + objectReference: {fileID: 0} + - target: {fileID: 2057621013554333680, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_LocalRotation.x + value: -0 + objectReference: {fileID: 0} + - target: {fileID: 2057621013554333680, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_LocalRotation.y + value: -0.17252184 + objectReference: {fileID: 0} + - target: {fileID: 2057621013554333680, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_LocalRotation.z + value: -0 + objectReference: {fileID: 0} + - target: {fileID: 2057621013554333680, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_LocalRotation.w + value: 0.98500574 + objectReference: {fileID: 0} + - target: {fileID: 2057621013554333680, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_RootOrder + value: 23 + objectReference: {fileID: 0} + - target: {fileID: 2057621013554333680, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_LocalEulerAnglesHint.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 2057621013554333680, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_LocalEulerAnglesHint.y + value: -19.869001 + objectReference: {fileID: 0} + - target: {fileID: 2057621013554333680, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_LocalEulerAnglesHint.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 2057621013554333680, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_LocalScale.x + value: 2.92314 + objectReference: {fileID: 0} + - target: {fileID: 2057621013554333680, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_LocalScale.y + value: 2.9231398 + objectReference: {fileID: 0} + - target: {fileID: 2057621013554333680, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_LocalScale.z + value: 2.92314 + objectReference: {fileID: 0} + - target: {fileID: 2057621013554699216, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_Name + value: StoneVariant2 (9) + objectReference: {fileID: 0} + - target: {fileID: 2057621013556626704, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_Materials.Array.data[0] + value: + objectReference: {fileID: 2100000, guid: d11179e416c9b394c8176d36a0dcae52, type: 2} + - target: {fileID: 2057621013557757904, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_Mesh + value: + objectReference: {fileID: 4300002, guid: 5e6dd9e33a8a1c748a582c8565e5f95f, type: 3} + - target: {fileID: 6182327852661155844, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_Materials.Array.data[0] + value: + objectReference: {fileID: 2100000, guid: c99104857011a3d478b482de4b0de308, type: 2} + - target: {fileID: 6182327852661155845, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_Name + value: StoneRound (8) + objectReference: {fileID: 0} + m_RemovedComponents: [] + m_SourcePrefab: {fileID: 100100000, guid: 230dd9257fca2c249b555f6edd3c8e14, type: 3} +--- !u!1001 &1606700685 +PrefabInstance: + m_ObjectHideFlags: 0 + serializedVersion: 2 + m_Modification: + m_TransformParent: {fileID: 807038590} + m_Modifications: + - target: {fileID: 667086550830086704, guid: 3796997fde0c29b4180a4ec756403b34, + type: 3} + propertyPath: m_LocalPosition.x + value: -77.21425 + objectReference: {fileID: 0} + - target: {fileID: 667086550830086704, guid: 3796997fde0c29b4180a4ec756403b34, + type: 3} + propertyPath: m_LocalPosition.z + value: 136.03618 + objectReference: {fileID: 0} + - target: {fileID: 667086550830086704, guid: 3796997fde0c29b4180a4ec756403b34, + type: 3} + propertyPath: m_RootOrder + value: 13 + objectReference: {fileID: 0} + - target: {fileID: 667086550830086704, guid: 3796997fde0c29b4180a4ec756403b34, + type: 3} + propertyPath: m_LocalPosition.y + value: -1.3176739 + objectReference: {fileID: 0} + - target: {fileID: 667086550830086704, guid: 3796997fde0c29b4180a4ec756403b34, + type: 3} + propertyPath: m_LocalScale.x + value: 13.907369 + objectReference: {fileID: 0} + - target: {fileID: 667086550830086704, guid: 3796997fde0c29b4180a4ec756403b34, + type: 3} + propertyPath: m_LocalScale.y + value: 13.907365 + objectReference: {fileID: 0} + - target: {fileID: 667086550830086704, guid: 3796997fde0c29b4180a4ec756403b34, + type: 3} + propertyPath: m_LocalScale.z + value: 13.907369 + objectReference: {fileID: 0} + - target: {fileID: 667086550830086704, guid: 3796997fde0c29b4180a4ec756403b34, + type: 3} + propertyPath: m_LocalRotation.y + value: -0.97584456 + objectReference: {fileID: 0} + - target: {fileID: 667086550830086704, guid: 3796997fde0c29b4180a4ec756403b34, + type: 3} + propertyPath: m_LocalRotation.w + value: 0.21846616 + objectReference: {fileID: 0} + - target: {fileID: 667086550830086704, guid: 3796997fde0c29b4180a4ec756403b34, + type: 3} + propertyPath: m_LocalEulerAnglesHint.y + value: -154.76201 + objectReference: {fileID: 0} + - target: {fileID: 5742194636018856685, guid: 3796997fde0c29b4180a4ec756403b34, + type: 3} + propertyPath: m_Name + value: StoneFlat (12) + objectReference: {fileID: 0} + - target: {fileID: 7265208955801587247, guid: 3796997fde0c29b4180a4ec756403b34, + type: 3} + propertyPath: m_Materials.Array.data[0] + value: + objectReference: {fileID: 2100000, guid: d11179e416c9b394c8176d36a0dcae52, type: 2} + - target: {fileID: 7265208955802684655, guid: 3796997fde0c29b4180a4ec756403b34, + type: 3} + propertyPath: m_Mesh + value: + objectReference: {fileID: 4300002, guid: c80f31023dcf9b34cbd0044505be4806, type: 3} + - target: {fileID: 7265208955803586799, guid: 3796997fde0c29b4180a4ec756403b34, + type: 3} + propertyPath: m_Name + value: StoneVariant1 (14) + objectReference: {fileID: 0} + - target: {fileID: 7265208955804011727, guid: 3796997fde0c29b4180a4ec756403b34, + type: 3} + propertyPath: m_LocalPosition.x + value: -30 + objectReference: {fileID: 0} + - target: {fileID: 7265208955804011727, guid: 3796997fde0c29b4180a4ec756403b34, + type: 3} + propertyPath: m_LocalPosition.y + value: -1.75 + objectReference: {fileID: 0} + - target: {fileID: 7265208955804011727, guid: 3796997fde0c29b4180a4ec756403b34, + type: 3} + propertyPath: m_LocalPosition.z + value: 137.7 + objectReference: {fileID: 0} + - target: {fileID: 7265208955804011727, guid: 3796997fde0c29b4180a4ec756403b34, + type: 3} + propertyPath: m_LocalRotation.x + value: -0 + objectReference: {fileID: 0} + - target: {fileID: 7265208955804011727, guid: 3796997fde0c29b4180a4ec756403b34, + type: 3} + propertyPath: m_LocalRotation.y + value: -0.6654222 + objectReference: {fileID: 0} + - target: {fileID: 7265208955804011727, guid: 3796997fde0c29b4180a4ec756403b34, + type: 3} + propertyPath: m_LocalRotation.z + value: -0 + objectReference: {fileID: 0} + - target: {fileID: 7265208955804011727, guid: 3796997fde0c29b4180a4ec756403b34, + type: 3} + propertyPath: m_LocalRotation.w + value: 0.74646723 + objectReference: {fileID: 0} + - target: {fileID: 7265208955804011727, guid: 3796997fde0c29b4180a4ec756403b34, + type: 3} + propertyPath: m_RootOrder + value: 13 + objectReference: {fileID: 0} + - target: {fileID: 7265208955804011727, guid: 3796997fde0c29b4180a4ec756403b34, + type: 3} + propertyPath: m_LocalEulerAnglesHint.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 7265208955804011727, guid: 3796997fde0c29b4180a4ec756403b34, + type: 3} + propertyPath: m_LocalEulerAnglesHint.y + value: -83.429 + objectReference: {fileID: 0} + - target: {fileID: 7265208955804011727, guid: 3796997fde0c29b4180a4ec756403b34, + type: 3} + propertyPath: m_LocalEulerAnglesHint.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 7265208955804011727, guid: 3796997fde0c29b4180a4ec756403b34, + type: 3} + propertyPath: m_LocalScale.x + value: 12.148671 + objectReference: {fileID: 0} + - target: {fileID: 7265208955804011727, guid: 3796997fde0c29b4180a4ec756403b34, + type: 3} + propertyPath: m_LocalScale.y + value: 12.14864 + objectReference: {fileID: 0} + - target: {fileID: 7265208955804011727, guid: 3796997fde0c29b4180a4ec756403b34, + type: 3} + propertyPath: m_LocalScale.z + value: 12.148671 + objectReference: {fileID: 0} + m_RemovedComponents: [] + m_SourcePrefab: {fileID: 100100000, guid: 3796997fde0c29b4180a4ec756403b34, type: 3} +--- !u!4 &1611566367 stripped +Transform: + m_CorrespondingSourceObject: {fileID: 400000, guid: dca6189290e8c16479a364fa6d80b6b8, + type: 3} + m_PrefabInstance: {fileID: 1697772597} + m_PrefabAsset: {fileID: 0} +--- !u!4 &1622123119 stripped +Transform: + m_CorrespondingSourceObject: {fileID: 667086550830086704, guid: 3796997fde0c29b4180a4ec756403b34, + type: 3} + m_PrefabInstance: {fileID: 99488150} + m_PrefabAsset: {fileID: 0} +--- !u!1001 &1630197998 +PrefabInstance: + m_ObjectHideFlags: 0 + serializedVersion: 2 + m_Modification: + m_TransformParent: {fileID: 77662693} + m_Modifications: + - target: {fileID: 100000, guid: dca6189290e8c16479a364fa6d80b6b8, type: 3} + propertyPath: m_Name + value: TreeRound (14) + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: dca6189290e8c16479a364fa6d80b6b8, type: 3} + propertyPath: m_LocalPosition.x + value: -64.43967 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: dca6189290e8c16479a364fa6d80b6b8, type: 3} + propertyPath: m_LocalPosition.y + value: 27 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: dca6189290e8c16479a364fa6d80b6b8, type: 3} + propertyPath: m_LocalPosition.z + value: -127.82725 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: dca6189290e8c16479a364fa6d80b6b8, type: 3} + propertyPath: m_LocalRotation.x + value: 0.07221522 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: dca6189290e8c16479a364fa6d80b6b8, type: 3} + propertyPath: m_LocalRotation.y + value: -0.4256333 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: dca6189290e8c16479a364fa6d80b6b8, type: 3} + propertyPath: m_LocalRotation.z + value: -0.11371782 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: dca6189290e8c16479a364fa6d80b6b8, type: 3} + propertyPath: m_LocalRotation.w + value: 0.8948126 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: dca6189290e8c16479a364fa6d80b6b8, type: 3} + propertyPath: m_RootOrder + value: 14 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: dca6189290e8c16479a364fa6d80b6b8, type: 3} + propertyPath: m_LocalEulerAnglesHint.x + value: 1.8590001 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: dca6189290e8c16479a364fa6d80b6b8, type: 3} + propertyPath: m_LocalEulerAnglesHint.y + value: -51.129 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: dca6189290e8c16479a364fa6d80b6b8, type: 3} + propertyPath: m_LocalEulerAnglesHint.z + value: -15.374001 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: dca6189290e8c16479a364fa6d80b6b8, type: 3} + propertyPath: m_LocalScale.x + value: 2.3049 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: dca6189290e8c16479a364fa6d80b6b8, type: 3} + propertyPath: m_LocalScale.y + value: 2.3049004 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: dca6189290e8c16479a364fa6d80b6b8, type: 3} + propertyPath: m_LocalScale.z + value: 2.3048997 + objectReference: {fileID: 0} + - target: {fileID: 2300000, guid: dca6189290e8c16479a364fa6d80b6b8, type: 3} + propertyPath: m_Materials.Array.data[0] + value: + objectReference: {fileID: 2100000, guid: d11179e416c9b394c8176d36a0dcae52, type: 2} + - target: {fileID: 2300002, guid: dca6189290e8c16479a364fa6d80b6b8, type: 3} + propertyPath: m_Materials.Array.data[0] + value: + objectReference: {fileID: 2100000, guid: d11179e416c9b394c8176d36a0dcae52, type: 2} + m_RemovedComponents: [] + m_SourcePrefab: {fileID: 100100000, guid: dca6189290e8c16479a364fa6d80b6b8, type: 3} +--- !u!4 &1630197999 stripped +Transform: + m_CorrespondingSourceObject: {fileID: 400000, guid: dca6189290e8c16479a364fa6d80b6b8, + type: 3} + m_PrefabInstance: {fileID: 1630197998} + m_PrefabAsset: {fileID: 0} +--- !u!1001 &1633696157 +PrefabInstance: + m_ObjectHideFlags: 0 + serializedVersion: 2 + m_Modification: + m_TransformParent: {fileID: 286898288} + m_Modifications: + - target: {fileID: 100000, guid: 92bb9994204d1d44cb6223c53e4f84f8, type: 3} + propertyPath: m_Name + value: Hill (7) + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 92bb9994204d1d44cb6223c53e4f84f8, type: 3} + propertyPath: m_LocalPosition.x + value: -147.06012 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 92bb9994204d1d44cb6223c53e4f84f8, type: 3} + propertyPath: m_LocalPosition.y + value: -5.1239047 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 92bb9994204d1d44cb6223c53e4f84f8, type: 3} + propertyPath: m_LocalPosition.z + value: -114.50935 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 92bb9994204d1d44cb6223c53e4f84f8, type: 3} + propertyPath: m_LocalRotation.x + value: -0 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 92bb9994204d1d44cb6223c53e4f84f8, type: 3} + propertyPath: m_LocalRotation.y + value: -0 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 92bb9994204d1d44cb6223c53e4f84f8, type: 3} + propertyPath: m_LocalRotation.z + value: -0 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 92bb9994204d1d44cb6223c53e4f84f8, type: 3} + propertyPath: m_LocalRotation.w + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 92bb9994204d1d44cb6223c53e4f84f8, type: 3} + propertyPath: m_RootOrder + value: 7 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 92bb9994204d1d44cb6223c53e4f84f8, type: 3} + propertyPath: m_LocalEulerAnglesHint.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 92bb9994204d1d44cb6223c53e4f84f8, type: 3} + propertyPath: m_LocalEulerAnglesHint.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 92bb9994204d1d44cb6223c53e4f84f8, type: 3} + propertyPath: m_LocalEulerAnglesHint.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 92bb9994204d1d44cb6223c53e4f84f8, type: 3} + propertyPath: m_LocalScale.x + value: 7.3455596 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 92bb9994204d1d44cb6223c53e4f84f8, type: 3} + propertyPath: m_LocalScale.y + value: 9.37575 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 92bb9994204d1d44cb6223c53e4f84f8, type: 3} + propertyPath: m_LocalScale.z + value: 7.3455596 + objectReference: {fileID: 0} + m_RemovedComponents: [] + m_SourcePrefab: {fileID: 100100000, guid: 92bb9994204d1d44cb6223c53e4f84f8, type: 3} +--- !u!1001 &1636226115 +PrefabInstance: + m_ObjectHideFlags: 0 + serializedVersion: 2 + m_Modification: + m_TransformParent: {fileID: 822690626} + m_Modifications: + - target: {fileID: 1579282987822437358, guid: 941fac9249b6442cdb2d3f23472128e2, + type: 3} + propertyPath: m_Name + value: ModularTrackStraight (5) + objectReference: {fileID: 0} + - target: {fileID: 1579282987822796750, guid: 941fac9249b6442cdb2d3f23472128e2, + type: 3} + propertyPath: m_LocalPosition.x + value: 16 + objectReference: {fileID: 0} + - target: {fileID: 1579282987822796750, guid: 941fac9249b6442cdb2d3f23472128e2, + type: 3} + propertyPath: m_LocalPosition.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 1579282987822796750, guid: 941fac9249b6442cdb2d3f23472128e2, + type: 3} + propertyPath: m_LocalPosition.z + value: 27 + objectReference: {fileID: 0} + - target: {fileID: 1579282987822796750, guid: 941fac9249b6442cdb2d3f23472128e2, + type: 3} + propertyPath: m_LocalRotation.x + value: -0 + objectReference: {fileID: 0} + - target: {fileID: 1579282987822796750, guid: 941fac9249b6442cdb2d3f23472128e2, + type: 3} + propertyPath: m_LocalRotation.y + value: -0 + objectReference: {fileID: 0} + - target: {fileID: 1579282987822796750, guid: 941fac9249b6442cdb2d3f23472128e2, + type: 3} + propertyPath: m_LocalRotation.z + value: -0 + objectReference: {fileID: 0} + - target: {fileID: 1579282987822796750, guid: 941fac9249b6442cdb2d3f23472128e2, + type: 3} + propertyPath: m_LocalRotation.w + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 1579282987822796750, guid: 941fac9249b6442cdb2d3f23472128e2, + type: 3} + propertyPath: m_RootOrder + value: 5 + objectReference: {fileID: 0} + - target: {fileID: 1579282987822796750, guid: 941fac9249b6442cdb2d3f23472128e2, + type: 3} + propertyPath: m_LocalEulerAnglesHint.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 1579282987822796750, guid: 941fac9249b6442cdb2d3f23472128e2, + type: 3} + propertyPath: m_LocalEulerAnglesHint.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 1579282987822796750, guid: 941fac9249b6442cdb2d3f23472128e2, + type: 3} + propertyPath: m_LocalEulerAnglesHint.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 1644974464755198482, guid: 941fac9249b6442cdb2d3f23472128e2, + type: 3} + propertyPath: bounciness + value: 0.1 + objectReference: {fileID: 0} + m_RemovedComponents: + - {fileID: 1579282987816156490, guid: 941fac9249b6442cdb2d3f23472128e2, type: 3} + m_SourcePrefab: {fileID: 100100000, guid: 941fac9249b6442cdb2d3f23472128e2, type: 3} +--- !u!4 &1636226116 stripped +Transform: + m_CorrespondingSourceObject: {fileID: 1579282987822796750, guid: 941fac9249b6442cdb2d3f23472128e2, + type: 3} + m_PrefabInstance: {fileID: 1636226115} + m_PrefabAsset: {fileID: 0} +--- !u!4 &1643111114 stripped +Transform: + m_CorrespondingSourceObject: {fileID: 8822636336882126325, guid: 6e78c73d0c22422438a45bea2842fcfb, + type: 3} + m_PrefabInstance: {fileID: 2135973453} + m_PrefabAsset: {fileID: 0} +--- !u!1 &1645660024 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 1645660025} + m_Layer: 0 + m_Name: Buildings + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &1645660025 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1645660024} + m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} + m_LocalPosition: {x: 0, y: 0, z: 0} + m_LocalScale: {x: 1, y: 1, z: 1} + m_Children: + - {fileID: 317952401} + - {fileID: 1758092377} + - {fileID: 484879891} + - {fileID: 1196346770} + - {fileID: 728358784} + - {fileID: 163268473} + - {fileID: 421160775} + - {fileID: 1387898599} + - {fileID: 1643111114} + - {fileID: 4802209837285806718} + - {fileID: 548986096} + m_Father: {fileID: 23283999} + m_RootOrder: 0 + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!4 &1650421504 stripped +Transform: + m_CorrespondingSourceObject: {fileID: 667086550830086704, guid: 3796997fde0c29b4180a4ec756403b34, + type: 3} + m_PrefabInstance: {fileID: 83338720} + m_PrefabAsset: {fileID: 0} +--- !u!1001 &1670235909 +PrefabInstance: + m_ObjectHideFlags: 0 + serializedVersion: 2 + m_Modification: + m_TransformParent: {fileID: 286898288} + m_Modifications: + - target: {fileID: 100000, guid: 92bb9994204d1d44cb6223c53e4f84f8, type: 3} + propertyPath: m_Name + value: Hill (5) + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 92bb9994204d1d44cb6223c53e4f84f8, type: 3} + propertyPath: m_LocalPosition.x + value: 26.839878 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 92bb9994204d1d44cb6223c53e4f84f8, type: 3} + propertyPath: m_LocalPosition.y + value: -3.0859046 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 92bb9994204d1d44cb6223c53e4f84f8, type: 3} + propertyPath: m_LocalPosition.z + value: 106.29064 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 92bb9994204d1d44cb6223c53e4f84f8, type: 3} + propertyPath: m_LocalRotation.x + value: -0 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 92bb9994204d1d44cb6223c53e4f84f8, type: 3} + propertyPath: m_LocalRotation.y + value: -0 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 92bb9994204d1d44cb6223c53e4f84f8, type: 3} + propertyPath: m_LocalRotation.z + value: -0 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 92bb9994204d1d44cb6223c53e4f84f8, type: 3} + propertyPath: m_LocalRotation.w + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 92bb9994204d1d44cb6223c53e4f84f8, type: 3} + propertyPath: m_RootOrder + value: 5 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 92bb9994204d1d44cb6223c53e4f84f8, type: 3} + propertyPath: m_LocalEulerAnglesHint.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 92bb9994204d1d44cb6223c53e4f84f8, type: 3} + propertyPath: m_LocalEulerAnglesHint.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 92bb9994204d1d44cb6223c53e4f84f8, type: 3} + propertyPath: m_LocalEulerAnglesHint.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 92bb9994204d1d44cb6223c53e4f84f8, type: 3} + propertyPath: m_LocalScale.x + value: 2.5378263 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 92bb9994204d1d44cb6223c53e4f84f8, type: 3} + propertyPath: m_LocalScale.y + value: 2.8544831 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 92bb9994204d1d44cb6223c53e4f84f8, type: 3} + propertyPath: m_LocalScale.z + value: 2.5378263 + objectReference: {fileID: 0} + - target: {fileID: 2300000, guid: 92bb9994204d1d44cb6223c53e4f84f8, type: 3} + propertyPath: m_Materials.Array.data[0] + value: + objectReference: {fileID: 2100000, guid: 6c378a7b0da21d443a337061a33da161, type: 2} + m_RemovedComponents: [] + m_SourcePrefab: {fileID: 100100000, guid: 92bb9994204d1d44cb6223c53e4f84f8, type: 3} +--- !u!1001 &1687223860 +PrefabInstance: + m_ObjectHideFlags: 0 + serializedVersion: 2 + m_Modification: + m_TransformParent: {fileID: 807038590} + m_Modifications: + - target: {fileID: 40299501215355906, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_LocalPosition.x + value: 26.98576 + objectReference: {fileID: 0} + - target: {fileID: 40299501215355906, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_RootOrder + value: 16 + objectReference: {fileID: 0} + - target: {fileID: 40299501215355906, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_LocalPosition.z + value: -6.5638223 + objectReference: {fileID: 0} + - target: {fileID: 40299501215355906, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_LocalRotation.x + value: -0 + objectReference: {fileID: 0} + - target: {fileID: 40299501215355906, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_LocalPosition.y + value: -0.15767384 + objectReference: {fileID: 0} + - target: {fileID: 2057621013554333680, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_LocalPosition.x + value: 65.8 + objectReference: {fileID: 0} + - target: {fileID: 2057621013554333680, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_LocalPosition.y + value: -1.04 + objectReference: {fileID: 0} + - target: {fileID: 2057621013554333680, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_LocalPosition.z + value: -1.4 + objectReference: {fileID: 0} + - target: {fileID: 2057621013554333680, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_LocalRotation.x + value: -0 + objectReference: {fileID: 0} + - target: {fileID: 2057621013554333680, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_LocalRotation.y + value: -0 + objectReference: {fileID: 0} + - target: {fileID: 2057621013554333680, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_LocalRotation.z + value: -0 + objectReference: {fileID: 0} + - target: {fileID: 2057621013554333680, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_LocalRotation.w + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 2057621013554333680, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_RootOrder + value: 17 + objectReference: {fileID: 0} + - target: {fileID: 2057621013554333680, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_LocalEulerAnglesHint.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 2057621013554333680, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_LocalEulerAnglesHint.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 2057621013554333680, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_LocalEulerAnglesHint.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 2057621013554333680, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_LocalScale.x + value: 2.3006 + objectReference: {fileID: 0} + - target: {fileID: 2057621013554333680, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_LocalScale.y + value: 2.3006 + objectReference: {fileID: 0} + - target: {fileID: 2057621013554333680, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_LocalScale.z + value: 2.3006 + objectReference: {fileID: 0} + - target: {fileID: 2057621013554699216, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_Name + value: StoneVariant2 (3) + objectReference: {fileID: 0} + - target: {fileID: 2057621013556626704, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_Materials.Array.data[0] + value: + objectReference: {fileID: 2100000, guid: d11179e416c9b394c8176d36a0dcae52, type: 2} + - target: {fileID: 2057621013557757904, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_Mesh + value: + objectReference: {fileID: 4300002, guid: 5e6dd9e33a8a1c748a582c8565e5f95f, type: 3} + - target: {fileID: 6182327852661155845, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_Name + value: StoneRound (2) + objectReference: {fileID: 0} + m_RemovedComponents: [] + m_SourcePrefab: {fileID: 100100000, guid: 230dd9257fca2c249b555f6edd3c8e14, type: 3} +--- !u!1 &1687723346 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 1687723348} + - component: {fileID: 1687723347} + m_Layer: 0 + m_Name: BackgroundMusic + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!82 &1687723347 +AudioSource: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1687723346} + m_Enabled: 1 + serializedVersion: 4 + OutputAudioMixerGroup: {fileID: 0} + m_audioClip: {fileID: 8300000, guid: 1939f7149c0fae14a891ac314cb2e8f3, type: 3} + m_PlayOnAwake: 1 + m_Volume: 0.4 + m_Pitch: 1 + Loop: 1 + Mute: 0 + Spatialize: 0 + SpatializePostEffects: 0 + Priority: 128 + DopplerLevel: 1 + MinDistance: 1 + MaxDistance: 500 + Pan2D: 0 + rolloffMode: 0 + BypassEffects: 0 + BypassListenerEffects: 0 + BypassReverbZones: 0 + rolloffCustomCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + panLevelCustomCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + spreadCustomCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + reverbZoneMixCustomCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 +--- !u!4 &1687723348 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1687723346} + m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} + m_LocalPosition: {x: 0, y: 0, z: 0} + m_LocalScale: {x: 1, y: 1, z: 1} + m_Children: [] + m_Father: {fileID: 0} + m_RootOrder: 11 + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!1001 &1691938355 +PrefabInstance: + m_ObjectHideFlags: 0 + serializedVersion: 2 + m_Modification: + m_TransformParent: {fileID: 807038590} + m_Modifications: + - target: {fileID: 40299501215355906, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_RootOrder + value: 26 + objectReference: {fileID: 0} + - target: {fileID: 40299501215355906, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_LocalPosition.x + value: -57.114243 + objectReference: {fileID: 0} + - target: {fileID: 40299501215355906, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_LocalPosition.y + value: -0.03467399 + objectReference: {fileID: 0} + - target: {fileID: 40299501215355906, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_LocalPosition.z + value: -30.663822 + objectReference: {fileID: 0} + - target: {fileID: 40299501215355906, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_LocalRotation.y + value: 0.12080388 + objectReference: {fileID: 0} + - target: {fileID: 40299501215355906, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_LocalRotation.z + value: -0 + objectReference: {fileID: 0} + - target: {fileID: 40299501215355906, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_LocalRotation.w + value: 0.9926764 + objectReference: {fileID: 0} + - target: {fileID: 40299501215355906, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_LocalEulerAnglesHint.y + value: 13.877 + objectReference: {fileID: 0} + - target: {fileID: 40299501215355906, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_LocalScale.x + value: 1.9931502 + objectReference: {fileID: 0} + - target: {fileID: 40299501215355906, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_LocalScale.y + value: 1.99315 + objectReference: {fileID: 0} + - target: {fileID: 40299501215355906, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_LocalScale.z + value: 1.9931502 + objectReference: {fileID: 0} + - target: {fileID: 40299501215355906, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_LocalRotation.x + value: -0 + objectReference: {fileID: 0} + - target: {fileID: 2057621013554333680, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_LocalPosition.x + value: 25.772045 + objectReference: {fileID: 0} + - target: {fileID: 2057621013554333680, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_LocalPosition.y + value: -0.91700006 + objectReference: {fileID: 0} + - target: {fileID: 2057621013554333680, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_LocalPosition.z + value: -31.875946 + objectReference: {fileID: 0} + - target: {fileID: 2057621013554333680, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_LocalRotation.x + value: -0 + objectReference: {fileID: 0} + - target: {fileID: 2057621013554333680, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_LocalRotation.y + value: 0.90712893 + objectReference: {fileID: 0} + - target: {fileID: 2057621013554333680, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_LocalRotation.z + value: -0 + objectReference: {fileID: 0} + - target: {fileID: 2057621013554333680, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_LocalRotation.w + value: 0.42085272 + objectReference: {fileID: 0} + - target: {fileID: 2057621013554333680, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_RootOrder + value: 29 + objectReference: {fileID: 0} + - target: {fileID: 2057621013554333680, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_LocalEulerAnglesHint.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 2057621013554333680, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_LocalEulerAnglesHint.y + value: 130.223 + objectReference: {fileID: 0} + - target: {fileID: 2057621013554333680, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_LocalEulerAnglesHint.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 2057621013554333680, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_LocalScale.x + value: 1.9931502 + objectReference: {fileID: 0} + - target: {fileID: 2057621013554333680, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_LocalScale.y + value: 1.99315 + objectReference: {fileID: 0} + - target: {fileID: 2057621013554333680, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_LocalScale.z + value: 1.9931502 + objectReference: {fileID: 0} + - target: {fileID: 2057621013554699216, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_Name + value: StoneVariant2 (19) + objectReference: {fileID: 0} + - target: {fileID: 2057621013556626704, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_Materials.Array.data[0] + value: + objectReference: {fileID: 2100000, guid: d11179e416c9b394c8176d36a0dcae52, type: 2} + - target: {fileID: 2057621013557757904, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_Mesh + value: + objectReference: {fileID: 4300002, guid: 5e6dd9e33a8a1c748a582c8565e5f95f, type: 3} + - target: {fileID: 6182327852661155845, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_Name + value: StoneRound (13) + objectReference: {fileID: 0} + m_RemovedComponents: [] + m_SourcePrefab: {fileID: 100100000, guid: 230dd9257fca2c249b555f6edd3c8e14, type: 3} +--- !u!1001 &1693743624 +PrefabInstance: + m_ObjectHideFlags: 0 + serializedVersion: 2 + m_Modification: + m_TransformParent: {fileID: 77662693} + m_Modifications: + - target: {fileID: 100000, guid: 9f1e50f73a529a448b004add5bec5d80, type: 3} + propertyPath: m_Name + value: TreeBox (9) + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 9f1e50f73a529a448b004add5bec5d80, type: 3} + propertyPath: m_LocalPosition.x + value: 12.601051 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 9f1e50f73a529a448b004add5bec5d80, type: 3} + propertyPath: m_LocalPosition.y + value: -1.1500006 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 9f1e50f73a529a448b004add5bec5d80, type: 3} + propertyPath: m_LocalPosition.z + value: 90.221596 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 9f1e50f73a529a448b004add5bec5d80, type: 3} + propertyPath: m_LocalRotation.x + value: -0 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 9f1e50f73a529a448b004add5bec5d80, type: 3} + propertyPath: m_LocalRotation.y + value: 0.92137223 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 9f1e50f73a529a448b004add5bec5d80, type: 3} + propertyPath: m_LocalRotation.z + value: -0 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 9f1e50f73a529a448b004add5bec5d80, type: 3} + propertyPath: m_LocalRotation.w + value: 0.38868138 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 9f1e50f73a529a448b004add5bec5d80, type: 3} + propertyPath: m_RootOrder + value: 29 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 9f1e50f73a529a448b004add5bec5d80, type: 3} + propertyPath: m_LocalEulerAnglesHint.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 9f1e50f73a529a448b004add5bec5d80, type: 3} + propertyPath: m_LocalEulerAnglesHint.y + value: 134.255 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 9f1e50f73a529a448b004add5bec5d80, type: 3} + propertyPath: m_LocalEulerAnglesHint.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 9f1e50f73a529a448b004add5bec5d80, type: 3} + propertyPath: m_LocalScale.x + value: 4.4788113 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 9f1e50f73a529a448b004add5bec5d80, type: 3} + propertyPath: m_LocalScale.y + value: 4.4788113 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 9f1e50f73a529a448b004add5bec5d80, type: 3} + propertyPath: m_LocalScale.z + value: 4.4788113 + objectReference: {fileID: 0} + - target: {fileID: 2300000, guid: 9f1e50f73a529a448b004add5bec5d80, type: 3} + propertyPath: m_Materials.Array.data[0] + value: + objectReference: {fileID: 2100000, guid: 6c378a7b0da21d443a337061a33da161, type: 2} + m_RemovedComponents: [] + m_SourcePrefab: {fileID: 100100000, guid: 9f1e50f73a529a448b004add5bec5d80, type: 3} +--- !u!4 &1693743625 stripped +Transform: + m_CorrespondingSourceObject: {fileID: 400000, guid: 9f1e50f73a529a448b004add5bec5d80, + type: 3} + m_PrefabInstance: {fileID: 1693743624} + m_PrefabAsset: {fileID: 0} +--- !u!1001 &1697772597 +PrefabInstance: + m_ObjectHideFlags: 0 + serializedVersion: 2 + m_Modification: + m_TransformParent: {fileID: 77662693} + m_Modifications: + - target: {fileID: 100000, guid: dca6189290e8c16479a364fa6d80b6b8, type: 3} + propertyPath: m_Name + value: TreeRound (5) + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: dca6189290e8c16479a364fa6d80b6b8, type: 3} + propertyPath: m_LocalPosition.x + value: -123.6992 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: dca6189290e8c16479a364fa6d80b6b8, type: 3} + propertyPath: m_LocalPosition.y + value: 5.0613356 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: dca6189290e8c16479a364fa6d80b6b8, type: 3} + propertyPath: m_LocalPosition.z + value: -24.820778 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: dca6189290e8c16479a364fa6d80b6b8, type: 3} + propertyPath: m_LocalRotation.x + value: 0.00000006145132 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: dca6189290e8c16479a364fa6d80b6b8, type: 3} + propertyPath: m_LocalRotation.y + value: -0.6564484 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: dca6189290e8c16479a364fa6d80b6b8, type: 3} + propertyPath: m_LocalRotation.z + value: -0.000000053474512 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: dca6189290e8c16479a364fa6d80b6b8, type: 3} + propertyPath: m_LocalRotation.w + value: 0.7543709 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: dca6189290e8c16479a364fa6d80b6b8, type: 3} + propertyPath: m_RootOrder + value: 5 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: dca6189290e8c16479a364fa6d80b6b8, type: 3} + propertyPath: m_LocalEulerAnglesHint.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: dca6189290e8c16479a364fa6d80b6b8, type: 3} + propertyPath: m_LocalEulerAnglesHint.y + value: -82.059006 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: dca6189290e8c16479a364fa6d80b6b8, type: 3} + propertyPath: m_LocalEulerAnglesHint.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: dca6189290e8c16479a364fa6d80b6b8, type: 3} + propertyPath: m_LocalScale.x + value: 2.3049014 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: dca6189290e8c16479a364fa6d80b6b8, type: 3} + propertyPath: m_LocalScale.y + value: 2.3049 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: dca6189290e8c16479a364fa6d80b6b8, type: 3} + propertyPath: m_LocalScale.z + value: 2.3049014 + objectReference: {fileID: 0} + - target: {fileID: 2300000, guid: dca6189290e8c16479a364fa6d80b6b8, type: 3} + propertyPath: m_Materials.Array.data[0] + value: + objectReference: {fileID: 2100000, guid: d11179e416c9b394c8176d36a0dcae52, type: 2} + - target: {fileID: 2300002, guid: dca6189290e8c16479a364fa6d80b6b8, type: 3} + propertyPath: m_Materials.Array.data[0] + value: + objectReference: {fileID: 2100000, guid: d11179e416c9b394c8176d36a0dcae52, type: 2} + m_RemovedComponents: [] + m_SourcePrefab: {fileID: 100100000, guid: dca6189290e8c16479a364fa6d80b6b8, type: 3} +--- !u!4 &1699416849 stripped +Transform: + m_CorrespondingSourceObject: {fileID: 400000, guid: dca6189290e8c16479a364fa6d80b6b8, + type: 3} + m_PrefabInstance: {fileID: 1967685626} + m_PrefabAsset: {fileID: 0} +--- !u!1001 &1703346254 +PrefabInstance: + m_ObjectHideFlags: 0 + serializedVersion: 2 + m_Modification: + m_TransformParent: {fileID: 286898288} + m_Modifications: + - target: {fileID: 100000, guid: 92bb9994204d1d44cb6223c53e4f84f8, type: 3} + propertyPath: m_Name + value: Hill (10) + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 92bb9994204d1d44cb6223c53e4f84f8, type: 3} + propertyPath: m_LocalPosition.x + value: 51.939877 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 92bb9994204d1d44cb6223c53e4f84f8, type: 3} + propertyPath: m_LocalPosition.y + value: -5.5859046 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 92bb9994204d1d44cb6223c53e4f84f8, type: 3} + propertyPath: m_LocalPosition.z + value: 89.69065 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 92bb9994204d1d44cb6223c53e4f84f8, type: 3} + propertyPath: m_LocalRotation.x + value: -0 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 92bb9994204d1d44cb6223c53e4f84f8, type: 3} + propertyPath: m_LocalRotation.y + value: -0 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 92bb9994204d1d44cb6223c53e4f84f8, type: 3} + propertyPath: m_LocalRotation.z + value: -0 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 92bb9994204d1d44cb6223c53e4f84f8, type: 3} + propertyPath: m_LocalRotation.w + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 92bb9994204d1d44cb6223c53e4f84f8, type: 3} + propertyPath: m_RootOrder + value: 10 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 92bb9994204d1d44cb6223c53e4f84f8, type: 3} + propertyPath: m_LocalEulerAnglesHint.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 92bb9994204d1d44cb6223c53e4f84f8, type: 3} + propertyPath: m_LocalEulerAnglesHint.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 92bb9994204d1d44cb6223c53e4f84f8, type: 3} + propertyPath: m_LocalEulerAnglesHint.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 92bb9994204d1d44cb6223c53e4f84f8, type: 3} + propertyPath: m_LocalScale.x + value: 5.20888 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 92bb9994204d1d44cb6223c53e4f84f8, type: 3} + propertyPath: m_LocalScale.y + value: 5.3115396 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 92bb9994204d1d44cb6223c53e4f84f8, type: 3} + propertyPath: m_LocalScale.z + value: 5.20888 + objectReference: {fileID: 0} + - target: {fileID: 2300000, guid: 92bb9994204d1d44cb6223c53e4f84f8, type: 3} + propertyPath: m_Materials.Array.data[0] + value: + objectReference: {fileID: 2100000, guid: 5304db1f3e113764fae919908740f4ba, type: 2} + m_RemovedComponents: [] + m_SourcePrefab: {fileID: 100100000, guid: 92bb9994204d1d44cb6223c53e4f84f8, type: 3} +--- !u!1001 &1715571282 +PrefabInstance: + m_ObjectHideFlags: 0 + serializedVersion: 2 + m_Modification: + m_TransformParent: {fileID: 77662693} + m_Modifications: + - target: {fileID: 100000, guid: dca6189290e8c16479a364fa6d80b6b8, type: 3} + propertyPath: m_Name + value: TreeRound (8) + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: dca6189290e8c16479a364fa6d80b6b8, type: 3} + propertyPath: m_LocalPosition.x + value: -52.842113 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: dca6189290e8c16479a364fa6d80b6b8, type: 3} + propertyPath: m_LocalPosition.y + value: 4 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: dca6189290e8c16479a364fa6d80b6b8, type: 3} + propertyPath: m_LocalPosition.z + value: -18.77388 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: dca6189290e8c16479a364fa6d80b6b8, type: 3} + propertyPath: m_LocalRotation.x + value: 0.00000006145132 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: dca6189290e8c16479a364fa6d80b6b8, type: 3} + propertyPath: m_LocalRotation.y + value: -0.6564484 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: dca6189290e8c16479a364fa6d80b6b8, type: 3} + propertyPath: m_LocalRotation.z + value: -0.000000053474512 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: dca6189290e8c16479a364fa6d80b6b8, type: 3} + propertyPath: m_LocalRotation.w + value: 0.7543709 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: dca6189290e8c16479a364fa6d80b6b8, type: 3} + propertyPath: m_RootOrder + value: 8 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: dca6189290e8c16479a364fa6d80b6b8, type: 3} + propertyPath: m_LocalEulerAnglesHint.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: dca6189290e8c16479a364fa6d80b6b8, type: 3} + propertyPath: m_LocalEulerAnglesHint.y + value: -82.059006 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: dca6189290e8c16479a364fa6d80b6b8, type: 3} + propertyPath: m_LocalEulerAnglesHint.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: dca6189290e8c16479a364fa6d80b6b8, type: 3} + propertyPath: m_LocalScale.x + value: 1.8545924 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: dca6189290e8c16479a364fa6d80b6b8, type: 3} + propertyPath: m_LocalScale.y + value: 1.8545916 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: dca6189290e8c16479a364fa6d80b6b8, type: 3} + propertyPath: m_LocalScale.z + value: 1.8545924 + objectReference: {fileID: 0} + - target: {fileID: 2300000, guid: dca6189290e8c16479a364fa6d80b6b8, type: 3} + propertyPath: m_Materials.Array.data[0] + value: + objectReference: {fileID: 2100000, guid: d11179e416c9b394c8176d36a0dcae52, type: 2} + - target: {fileID: 2300002, guid: dca6189290e8c16479a364fa6d80b6b8, type: 3} + propertyPath: m_Materials.Array.data[0] + value: + objectReference: {fileID: 2100000, guid: 6c378a7b0da21d443a337061a33da161, type: 2} + m_RemovedComponents: [] + m_SourcePrefab: {fileID: 100100000, guid: dca6189290e8c16479a364fa6d80b6b8, type: 3} +--- !u!1001 &1730811158 +PrefabInstance: + m_ObjectHideFlags: 0 + serializedVersion: 2 + m_Modification: + m_TransformParent: {fileID: 1645660025} + m_Modifications: + - target: {fileID: 1861639547071064576, guid: 45c52fcc7429b214c8f9a6d85321ba77, + type: 3} + propertyPath: m_Name + value: BuildingShort + objectReference: {fileID: 0} + - target: {fileID: 4353122324495461665, guid: 45c52fcc7429b214c8f9a6d85321ba77, + type: 3} + propertyPath: m_Materials.Array.data[0] + value: + objectReference: {fileID: 2100000, guid: c99104857011a3d478b482de4b0de308, type: 2} + - target: {fileID: 5538800703641817082, guid: 45c52fcc7429b214c8f9a6d85321ba77, + type: 3} + propertyPath: m_LocalPosition.x + value: -5 + objectReference: {fileID: 0} + - target: {fileID: 5538800703641817082, guid: 45c52fcc7429b214c8f9a6d85321ba77, + type: 3} + propertyPath: m_LocalPosition.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 5538800703641817082, guid: 45c52fcc7429b214c8f9a6d85321ba77, + type: 3} + propertyPath: m_LocalPosition.z + value: 40 + objectReference: {fileID: 0} + - target: {fileID: 5538800703641817082, guid: 45c52fcc7429b214c8f9a6d85321ba77, + type: 3} + propertyPath: m_LocalRotation.x + value: -0 + objectReference: {fileID: 0} + - target: {fileID: 5538800703641817082, guid: 45c52fcc7429b214c8f9a6d85321ba77, + type: 3} + propertyPath: m_LocalRotation.y + value: -0.70710576 + objectReference: {fileID: 0} + - target: {fileID: 5538800703641817082, guid: 45c52fcc7429b214c8f9a6d85321ba77, + type: 3} + propertyPath: m_LocalRotation.z + value: -0 + objectReference: {fileID: 0} + - target: {fileID: 5538800703641817082, guid: 45c52fcc7429b214c8f9a6d85321ba77, + type: 3} + propertyPath: m_LocalRotation.w + value: 0.70710784 + objectReference: {fileID: 0} + - target: {fileID: 5538800703641817082, guid: 45c52fcc7429b214c8f9a6d85321ba77, + type: 3} + propertyPath: m_RootOrder + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 5538800703641817082, guid: 45c52fcc7429b214c8f9a6d85321ba77, + type: 3} + propertyPath: m_LocalEulerAnglesHint.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 5538800703641817082, guid: 45c52fcc7429b214c8f9a6d85321ba77, + type: 3} + propertyPath: m_LocalEulerAnglesHint.y + value: -90.00001 + objectReference: {fileID: 0} + - target: {fileID: 5538800703641817082, guid: 45c52fcc7429b214c8f9a6d85321ba77, + type: 3} + propertyPath: m_LocalEulerAnglesHint.z + value: 0 + objectReference: {fileID: 0} + m_RemovedComponents: [] + m_SourcePrefab: {fileID: 100100000, guid: 45c52fcc7429b214c8f9a6d85321ba77, type: 3} +--- !u!4 &1733798794 stripped +Transform: + m_CorrespondingSourceObject: {fileID: 400000, guid: dca6189290e8c16479a364fa6d80b6b8, + type: 3} + m_PrefabInstance: {fileID: 1124465530} + m_PrefabAsset: {fileID: 0} +--- !u!4 &1741129050 stripped +Transform: + m_CorrespondingSourceObject: {fileID: 400000, guid: 9f1e50f73a529a448b004add5bec5d80, + type: 3} + m_PrefabInstance: {fileID: 62682349} + m_PrefabAsset: {fileID: 0} +--- !u!1001 &1743341118 +PrefabInstance: + m_ObjectHideFlags: 0 + serializedVersion: 2 + m_Modification: + m_TransformParent: {fileID: 77662693} + m_Modifications: + - target: {fileID: 100000, guid: 9f1e50f73a529a448b004add5bec5d80, type: 3} + propertyPath: m_Name + value: TreeBox (5) + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 9f1e50f73a529a448b004add5bec5d80, type: 3} + propertyPath: m_LocalPosition.x + value: 24.190792 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 9f1e50f73a529a448b004add5bec5d80, type: 3} + propertyPath: m_LocalPosition.y + value: -0.40266418 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 9f1e50f73a529a448b004add5bec5d80, type: 3} + propertyPath: m_LocalPosition.z + value: -30.650772 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 9f1e50f73a529a448b004add5bec5d80, type: 3} + propertyPath: m_LocalRotation.x + value: -0 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 9f1e50f73a529a448b004add5bec5d80, type: 3} + propertyPath: m_LocalRotation.y + value: -0.10785355 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 9f1e50f73a529a448b004add5bec5d80, type: 3} + propertyPath: m_LocalRotation.z + value: -0 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 9f1e50f73a529a448b004add5bec5d80, type: 3} + propertyPath: m_LocalRotation.w + value: 0.9941668 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 9f1e50f73a529a448b004add5bec5d80, type: 3} + propertyPath: m_RootOrder + value: 25 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 9f1e50f73a529a448b004add5bec5d80, type: 3} + propertyPath: m_LocalEulerAnglesHint.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 9f1e50f73a529a448b004add5bec5d80, type: 3} + propertyPath: m_LocalEulerAnglesHint.y + value: -12.383 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 9f1e50f73a529a448b004add5bec5d80, type: 3} + propertyPath: m_LocalEulerAnglesHint.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 9f1e50f73a529a448b004add5bec5d80, type: 3} + propertyPath: m_LocalScale.x + value: 3.9938438 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 9f1e50f73a529a448b004add5bec5d80, type: 3} + propertyPath: m_LocalScale.y + value: 3.9938443 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 9f1e50f73a529a448b004add5bec5d80, type: 3} + propertyPath: m_LocalScale.z + value: 3.9938438 + objectReference: {fileID: 0} + - target: {fileID: 2300000, guid: 9f1e50f73a529a448b004add5bec5d80, type: 3} + propertyPath: m_Materials.Array.data[0] + value: + objectReference: {fileID: 2100000, guid: c99104857011a3d478b482de4b0de308, type: 2} + m_RemovedComponents: [] + m_SourcePrefab: {fileID: 100100000, guid: 9f1e50f73a529a448b004add5bec5d80, type: 3} +--- !u!4 &1743341119 stripped +Transform: + m_CorrespondingSourceObject: {fileID: 400000, guid: 9f1e50f73a529a448b004add5bec5d80, + type: 3} + m_PrefabInstance: {fileID: 1743341118} + m_PrefabAsset: {fileID: 0} +--- !u!4 &1758092377 stripped +Transform: + m_CorrespondingSourceObject: {fileID: 5538800703641817082, guid: 45c52fcc7429b214c8f9a6d85321ba77, + type: 3} + m_PrefabInstance: {fileID: 1852283853} + m_PrefabAsset: {fileID: 0} +--- !u!4 &1760155733 stripped +Transform: + m_CorrespondingSourceObject: {fileID: 40299501215355906, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + m_PrefabInstance: {fileID: 996772129} + m_PrefabAsset: {fileID: 0} +--- !u!4 &1767071607 stripped +Transform: + m_CorrespondingSourceObject: {fileID: 400000, guid: dca6189290e8c16479a364fa6d80b6b8, + type: 3} + m_PrefabInstance: {fileID: 2001032885} + m_PrefabAsset: {fileID: 0} +--- !u!1001 &1785482982 +PrefabInstance: + m_ObjectHideFlags: 0 + serializedVersion: 2 + m_Modification: + m_TransformParent: {fileID: 807038590} + m_Modifications: + - target: {fileID: 667086550830086704, guid: 3796997fde0c29b4180a4ec756403b34, + type: 3} + propertyPath: m_LocalPosition.x + value: -62.724243 + objectReference: {fileID: 0} + - target: {fileID: 667086550830086704, guid: 3796997fde0c29b4180a4ec756403b34, + type: 3} + propertyPath: m_RootOrder + value: 5 + objectReference: {fileID: 0} + - target: {fileID: 667086550830086704, guid: 3796997fde0c29b4180a4ec756403b34, + type: 3} + propertyPath: m_LocalPosition.y + value: 0.062326133 + objectReference: {fileID: 0} + - target: {fileID: 667086550830086704, guid: 3796997fde0c29b4180a4ec756403b34, + type: 3} + propertyPath: m_LocalPosition.z + value: -55.62382 + objectReference: {fileID: 0} + - target: {fileID: 667086550830086704, guid: 3796997fde0c29b4180a4ec756403b34, + type: 3} + propertyPath: m_LocalRotation.x + value: -0 + objectReference: {fileID: 0} + - target: {fileID: 667086550830086704, guid: 3796997fde0c29b4180a4ec756403b34, + type: 3} + propertyPath: m_LocalRotation.y + value: -0.6999501 + objectReference: {fileID: 0} + - target: {fileID: 667086550830086704, guid: 3796997fde0c29b4180a4ec756403b34, + type: 3} + propertyPath: m_LocalRotation.z + value: -0 + objectReference: {fileID: 0} + - target: {fileID: 667086550830086704, guid: 3796997fde0c29b4180a4ec756403b34, + type: 3} + propertyPath: m_LocalRotation.w + value: 0.71419173 + objectReference: {fileID: 0} + - target: {fileID: 667086550830086704, guid: 3796997fde0c29b4180a4ec756403b34, + type: 3} + propertyPath: m_LocalEulerAnglesHint.y + value: -88.846 + objectReference: {fileID: 0} + - target: {fileID: 667086550830086704, guid: 3796997fde0c29b4180a4ec756403b34, + type: 3} + propertyPath: m_LocalScale.x + value: 12.14867 + objectReference: {fileID: 0} + - target: {fileID: 667086550830086704, guid: 3796997fde0c29b4180a4ec756403b34, + type: 3} + propertyPath: m_LocalScale.y + value: 12.14867 + objectReference: {fileID: 0} + - target: {fileID: 667086550830086704, guid: 3796997fde0c29b4180a4ec756403b34, + type: 3} + propertyPath: m_LocalScale.z + value: 12.14867 + objectReference: {fileID: 0} + - target: {fileID: 5742194636018856685, guid: 3796997fde0c29b4180a4ec756403b34, + type: 3} + propertyPath: m_Name + value: StoneFlat (5) + objectReference: {fileID: 0} + - target: {fileID: 7265208955801587247, guid: 3796997fde0c29b4180a4ec756403b34, + type: 3} + propertyPath: m_Materials.Array.data[0] + value: + objectReference: {fileID: 2100000, guid: d11179e416c9b394c8176d36a0dcae52, type: 2} + - target: {fileID: 7265208955802684655, guid: 3796997fde0c29b4180a4ec756403b34, + type: 3} + propertyPath: m_Mesh + value: + objectReference: {fileID: 4300002, guid: c80f31023dcf9b34cbd0044505be4806, type: 3} + - target: {fileID: 7265208955803586799, guid: 3796997fde0c29b4180a4ec756403b34, + type: 3} + propertyPath: m_Name + value: StoneVariant1 (7) + objectReference: {fileID: 0} + - target: {fileID: 7265208955804011727, guid: 3796997fde0c29b4180a4ec756403b34, + type: 3} + propertyPath: m_LocalPosition.x + value: -24.617657 + objectReference: {fileID: 0} + - target: {fileID: 7265208955804011727, guid: 3796997fde0c29b4180a4ec756403b34, + type: 3} + propertyPath: m_LocalPosition.y + value: -0.93000007 + objectReference: {fileID: 0} + - target: {fileID: 7265208955804011727, guid: 3796997fde0c29b4180a4ec756403b34, + type: 3} + propertyPath: m_LocalPosition.z + value: 6.110626 + objectReference: {fileID: 0} + - target: {fileID: 7265208955804011727, guid: 3796997fde0c29b4180a4ec756403b34, + type: 3} + propertyPath: m_LocalRotation.x + value: -0 + objectReference: {fileID: 0} + - target: {fileID: 7265208955804011727, guid: 3796997fde0c29b4180a4ec756403b34, + type: 3} + propertyPath: m_LocalRotation.y + value: 0.31035224 + objectReference: {fileID: 0} + - target: {fileID: 7265208955804011727, guid: 3796997fde0c29b4180a4ec756403b34, + type: 3} + propertyPath: m_LocalRotation.z + value: -0 + objectReference: {fileID: 0} + - target: {fileID: 7265208955804011727, guid: 3796997fde0c29b4180a4ec756403b34, + type: 3} + propertyPath: m_LocalRotation.w + value: 0.9506217 + objectReference: {fileID: 0} + - target: {fileID: 7265208955804011727, guid: 3796997fde0c29b4180a4ec756403b34, + type: 3} + propertyPath: m_RootOrder + value: 6 + objectReference: {fileID: 0} + - target: {fileID: 7265208955804011727, guid: 3796997fde0c29b4180a4ec756403b34, + type: 3} + propertyPath: m_LocalEulerAnglesHint.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 7265208955804011727, guid: 3796997fde0c29b4180a4ec756403b34, + type: 3} + propertyPath: m_LocalEulerAnglesHint.y + value: 36.161003 + objectReference: {fileID: 0} + - target: {fileID: 7265208955804011727, guid: 3796997fde0c29b4180a4ec756403b34, + type: 3} + propertyPath: m_LocalEulerAnglesHint.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 7265208955804011727, guid: 3796997fde0c29b4180a4ec756403b34, + type: 3} + propertyPath: m_LocalScale.x + value: 7.9455 + objectReference: {fileID: 0} + - target: {fileID: 7265208955804011727, guid: 3796997fde0c29b4180a4ec756403b34, + type: 3} + propertyPath: m_LocalScale.y + value: 7.94548 + objectReference: {fileID: 0} + - target: {fileID: 7265208955804011727, guid: 3796997fde0c29b4180a4ec756403b34, + type: 3} + propertyPath: m_LocalScale.z + value: 7.9455 + objectReference: {fileID: 0} + m_RemovedComponents: [] + m_SourcePrefab: {fileID: 100100000, guid: 3796997fde0c29b4180a4ec756403b34, type: 3} +--- !u!1001 &1799171678 +PrefabInstance: + m_ObjectHideFlags: 0 + serializedVersion: 2 + m_Modification: + m_TransformParent: {fileID: 286898288} + m_Modifications: + - target: {fileID: 100000, guid: 92bb9994204d1d44cb6223c53e4f84f8, type: 3} + propertyPath: m_Name + value: Hill (3) + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 92bb9994204d1d44cb6223c53e4f84f8, type: 3} + propertyPath: m_LocalPosition.x + value: 88.939865 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 92bb9994204d1d44cb6223c53e4f84f8, type: 3} + propertyPath: m_LocalPosition.y + value: -5.536905 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 92bb9994204d1d44cb6223c53e4f84f8, type: 3} + propertyPath: m_LocalPosition.z + value: -43.609352 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 92bb9994204d1d44cb6223c53e4f84f8, type: 3} + propertyPath: m_LocalRotation.x + value: -0 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 92bb9994204d1d44cb6223c53e4f84f8, type: 3} + propertyPath: m_LocalRotation.y + value: -0 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 92bb9994204d1d44cb6223c53e4f84f8, type: 3} + propertyPath: m_LocalRotation.z + value: -0 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 92bb9994204d1d44cb6223c53e4f84f8, type: 3} + propertyPath: m_LocalRotation.w + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 92bb9994204d1d44cb6223c53e4f84f8, type: 3} + propertyPath: m_RootOrder + value: 3 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 92bb9994204d1d44cb6223c53e4f84f8, type: 3} + propertyPath: m_LocalEulerAnglesHint.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 92bb9994204d1d44cb6223c53e4f84f8, type: 3} + propertyPath: m_LocalEulerAnglesHint.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 92bb9994204d1d44cb6223c53e4f84f8, type: 3} + propertyPath: m_LocalEulerAnglesHint.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 92bb9994204d1d44cb6223c53e4f84f8, type: 3} + propertyPath: m_LocalScale.x + value: 5.1389117 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 92bb9994204d1d44cb6223c53e4f84f8, type: 3} + propertyPath: m_LocalScale.y + value: 4.421451 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 92bb9994204d1d44cb6223c53e4f84f8, type: 3} + propertyPath: m_LocalScale.z + value: 5.1389117 + objectReference: {fileID: 0} + m_RemovedComponents: [] + m_SourcePrefab: {fileID: 100100000, guid: 92bb9994204d1d44cb6223c53e4f84f8, type: 3} +--- !u!1001 &1803420842 +PrefabInstance: + m_ObjectHideFlags: 0 + serializedVersion: 2 + m_Modification: + m_TransformParent: {fileID: 77662693} + m_Modifications: + - target: {fileID: 100000, guid: 9f1e50f73a529a448b004add5bec5d80, type: 3} + propertyPath: m_Name + value: TreeBox (15) + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 9f1e50f73a529a448b004add5bec5d80, type: 3} + propertyPath: m_LocalPosition.x + value: -106.399216 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 9f1e50f73a529a448b004add5bec5d80, type: 3} + propertyPath: m_LocalPosition.y + value: -0.2286644 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 9f1e50f73a529a448b004add5bec5d80, type: 3} + propertyPath: m_LocalPosition.z + value: -61.04078 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 9f1e50f73a529a448b004add5bec5d80, type: 3} + propertyPath: m_LocalRotation.x + value: -0.03236963 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 9f1e50f73a529a448b004add5bec5d80, type: 3} + propertyPath: m_LocalRotation.y + value: 0.9103881 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 9f1e50f73a529a448b004add5bec5d80, type: 3} + propertyPath: m_LocalRotation.z + value: -0.087035224 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 9f1e50f73a529a448b004add5bec5d80, type: 3} + propertyPath: m_LocalRotation.w + value: -0.40320042 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 9f1e50f73a529a448b004add5bec5d80, type: 3} + propertyPath: m_RootOrder + value: 34 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 9f1e50f73a529a448b004add5bec5d80, type: 3} + propertyPath: m_LocalEulerAnglesHint.x + value: 10.636001 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 9f1e50f73a529a448b004add5bec5d80, type: 3} + propertyPath: m_LocalEulerAnglesHint.y + value: 227.83699 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 9f1e50f73a529a448b004add5bec5d80, type: 3} + propertyPath: m_LocalEulerAnglesHint.z + value: 0.656 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 9f1e50f73a529a448b004add5bec5d80, type: 3} + propertyPath: m_LocalScale.x + value: 3.5139036 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 9f1e50f73a529a448b004add5bec5d80, type: 3} + propertyPath: m_LocalScale.y + value: 3.5139012 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 9f1e50f73a529a448b004add5bec5d80, type: 3} + propertyPath: m_LocalScale.z + value: 3.5139017 + objectReference: {fileID: 0} + - target: {fileID: 2300000, guid: 9f1e50f73a529a448b004add5bec5d80, type: 3} + propertyPath: m_Materials.Array.data[0] + value: + objectReference: {fileID: 2100000, guid: d11179e416c9b394c8176d36a0dcae52, type: 2} + m_RemovedComponents: [] + m_SourcePrefab: {fileID: 100100000, guid: 9f1e50f73a529a448b004add5bec5d80, type: 3} +--- !u!4 &1803420843 stripped +Transform: + m_CorrespondingSourceObject: {fileID: 400000, guid: 9f1e50f73a529a448b004add5bec5d80, + type: 3} + m_PrefabInstance: {fileID: 1803420842} + m_PrefabAsset: {fileID: 0} +--- !u!4 &1804671056 stripped +Transform: + m_CorrespondingSourceObject: {fileID: 40299501215355906, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + m_PrefabInstance: {fileID: 1687223860} + m_PrefabAsset: {fileID: 0} +--- !u!4 &1805987571 stripped +Transform: + m_CorrespondingSourceObject: {fileID: 400012, guid: 0829d76c4806eb54b8b2f17eec10f4e6, + type: 3} + m_PrefabInstance: {fileID: 1227090948} + m_PrefabAsset: {fileID: 0} +--- !u!1001 &1811561753 +PrefabInstance: + m_ObjectHideFlags: 0 + serializedVersion: 2 + m_Modification: + m_TransformParent: {fileID: 1889916056} + m_Modifications: + - target: {fileID: 100012, guid: 0829d76c4806eb54b8b2f17eec10f4e6, type: 3} + propertyPath: m_Name + value: Cloud (13) + objectReference: {fileID: 0} + - target: {fileID: 100012, guid: 0829d76c4806eb54b8b2f17eec10f4e6, type: 3} + propertyPath: m_StaticEditorFlags + value: 4294967295 + objectReference: {fileID: 0} + - target: {fileID: 400012, guid: 0829d76c4806eb54b8b2f17eec10f4e6, type: 3} + propertyPath: m_LocalPosition.x + value: 272.79077 + objectReference: {fileID: 0} + - target: {fileID: 400012, guid: 0829d76c4806eb54b8b2f17eec10f4e6, type: 3} + propertyPath: m_LocalPosition.y + value: 115.73133 + objectReference: {fileID: 0} + - target: {fileID: 400012, guid: 0829d76c4806eb54b8b2f17eec10f4e6, type: 3} + propertyPath: m_LocalPosition.z + value: -158.38077 + objectReference: {fileID: 0} + - target: {fileID: 400012, guid: 0829d76c4806eb54b8b2f17eec10f4e6, type: 3} + propertyPath: m_LocalRotation.x + value: -0 + objectReference: {fileID: 0} + - target: {fileID: 400012, guid: 0829d76c4806eb54b8b2f17eec10f4e6, type: 3} + propertyPath: m_LocalRotation.y + value: 0.7564422 + objectReference: {fileID: 0} + - target: {fileID: 400012, guid: 0829d76c4806eb54b8b2f17eec10f4e6, type: 3} + propertyPath: m_LocalRotation.z + value: -0 + objectReference: {fileID: 0} + - target: {fileID: 400012, guid: 0829d76c4806eb54b8b2f17eec10f4e6, type: 3} + propertyPath: m_LocalRotation.w + value: 0.6540606 + objectReference: {fileID: 0} + - target: {fileID: 400012, guid: 0829d76c4806eb54b8b2f17eec10f4e6, type: 3} + propertyPath: m_RootOrder + value: 13 + objectReference: {fileID: 0} + - target: {fileID: 400012, guid: 0829d76c4806eb54b8b2f17eec10f4e6, type: 3} + propertyPath: m_LocalEulerAnglesHint.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 400012, guid: 0829d76c4806eb54b8b2f17eec10f4e6, type: 3} + propertyPath: m_LocalEulerAnglesHint.y + value: 98.303 + objectReference: {fileID: 0} + - target: {fileID: 400012, guid: 0829d76c4806eb54b8b2f17eec10f4e6, type: 3} + propertyPath: m_LocalEulerAnglesHint.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 400012, guid: 0829d76c4806eb54b8b2f17eec10f4e6, type: 3} + propertyPath: m_LocalScale.x + value: 5.0638413 + objectReference: {fileID: 0} + - target: {fileID: 400012, guid: 0829d76c4806eb54b8b2f17eec10f4e6, type: 3} + propertyPath: m_LocalScale.y + value: 5.0638423 + objectReference: {fileID: 0} + - target: {fileID: 400012, guid: 0829d76c4806eb54b8b2f17eec10f4e6, type: 3} + propertyPath: m_LocalScale.z + value: 5.0638413 + objectReference: {fileID: 0} + - target: {fileID: 2300000, guid: 0829d76c4806eb54b8b2f17eec10f4e6, type: 3} + propertyPath: m_Materials.Array.data[0] + value: + objectReference: {fileID: 2100000, guid: c1fb7d3a27a67b947bb2b2ab391072b0, type: 2} + - target: {fileID: 2300002, guid: 0829d76c4806eb54b8b2f17eec10f4e6, type: 3} + propertyPath: m_Materials.Array.data[0] + value: + objectReference: {fileID: 2100000, guid: c1fb7d3a27a67b947bb2b2ab391072b0, type: 2} + - target: {fileID: 2300004, guid: 0829d76c4806eb54b8b2f17eec10f4e6, type: 3} + propertyPath: m_Materials.Array.data[0] + value: + objectReference: {fileID: 2100000, guid: c1fb7d3a27a67b947bb2b2ab391072b0, type: 2} + - target: {fileID: 2300006, guid: 0829d76c4806eb54b8b2f17eec10f4e6, type: 3} + propertyPath: m_Materials.Array.data[0] + value: + objectReference: {fileID: 2100000, guid: c1fb7d3a27a67b947bb2b2ab391072b0, type: 2} + - target: {fileID: 2300008, guid: 0829d76c4806eb54b8b2f17eec10f4e6, type: 3} + propertyPath: m_Materials.Array.data[0] + value: + objectReference: {fileID: 2100000, guid: c1fb7d3a27a67b947bb2b2ab391072b0, type: 2} + - target: {fileID: 2300010, guid: 0829d76c4806eb54b8b2f17eec10f4e6, type: 3} + propertyPath: m_Materials.Array.data[0] + value: + objectReference: {fileID: 2100000, guid: c1fb7d3a27a67b947bb2b2ab391072b0, type: 2} + - target: {fileID: 2300012, guid: 0829d76c4806eb54b8b2f17eec10f4e6, type: 3} + propertyPath: m_Materials.Array.data[0] + value: + objectReference: {fileID: 2100000, guid: d11179e416c9b394c8176d36a0dcae52, type: 2} + m_RemovedComponents: [] + m_SourcePrefab: {fileID: 100100000, guid: 0829d76c4806eb54b8b2f17eec10f4e6, type: 3} +--- !u!4 &1811561754 stripped +Transform: + m_CorrespondingSourceObject: {fileID: 400012, guid: 0829d76c4806eb54b8b2f17eec10f4e6, + type: 3} + m_PrefabInstance: {fileID: 1811561753} + m_PrefabAsset: {fileID: 0} +--- !u!4 &1819256880 stripped +Transform: + m_CorrespondingSourceObject: {fileID: 667086550830086704, guid: 3796997fde0c29b4180a4ec756403b34, + type: 3} + m_PrefabInstance: {fileID: 1495106826} + m_PrefabAsset: {fileID: 0} +--- !u!1001 &1842916673 +PrefabInstance: + m_ObjectHideFlags: 0 + serializedVersion: 2 + m_Modification: + m_TransformParent: {fileID: 822690626} + m_Modifications: + - target: {fileID: 1579282987822437358, guid: 941fac9249b6442cdb2d3f23472128e2, + type: 3} + propertyPath: m_Name + value: ModularTrackStraight + objectReference: {fileID: 0} + - target: {fileID: 1579282987822437358, guid: 941fac9249b6442cdb2d3f23472128e2, + type: 3} + propertyPath: m_IsActive + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 1579282987822796750, guid: 941fac9249b6442cdb2d3f23472128e2, + type: 3} + propertyPath: m_LocalPosition.x + value: 16 + objectReference: {fileID: 0} + - target: {fileID: 1579282987822796750, guid: 941fac9249b6442cdb2d3f23472128e2, + type: 3} + propertyPath: m_LocalPosition.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 1579282987822796750, guid: 941fac9249b6442cdb2d3f23472128e2, + type: 3} + propertyPath: m_LocalPosition.z + value: -23 + objectReference: {fileID: 0} + - target: {fileID: 1579282987822796750, guid: 941fac9249b6442cdb2d3f23472128e2, + type: 3} + propertyPath: m_LocalRotation.x + value: -0 + objectReference: {fileID: 0} + - target: {fileID: 1579282987822796750, guid: 941fac9249b6442cdb2d3f23472128e2, + type: 3} + propertyPath: m_LocalRotation.y + value: -0 + objectReference: {fileID: 0} + - target: {fileID: 1579282987822796750, guid: 941fac9249b6442cdb2d3f23472128e2, + type: 3} + propertyPath: m_LocalRotation.z + value: -0 + objectReference: {fileID: 0} + - target: {fileID: 1579282987822796750, guid: 941fac9249b6442cdb2d3f23472128e2, + type: 3} + propertyPath: m_LocalRotation.w + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 1579282987822796750, guid: 941fac9249b6442cdb2d3f23472128e2, + type: 3} + propertyPath: m_RootOrder + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 1579282987822796750, guid: 941fac9249b6442cdb2d3f23472128e2, + type: 3} + propertyPath: m_LocalEulerAnglesHint.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 1579282987822796750, guid: 941fac9249b6442cdb2d3f23472128e2, + type: 3} + propertyPath: m_LocalEulerAnglesHint.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 1579282987822796750, guid: 941fac9249b6442cdb2d3f23472128e2, + type: 3} + propertyPath: m_LocalEulerAnglesHint.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 1644974464755198482, guid: 941fac9249b6442cdb2d3f23472128e2, + type: 3} + propertyPath: bounciness + value: 0.1 + objectReference: {fileID: 0} + m_RemovedComponents: + - {fileID: 1579282987816156490, guid: 941fac9249b6442cdb2d3f23472128e2, type: 3} + m_SourcePrefab: {fileID: 100100000, guid: 941fac9249b6442cdb2d3f23472128e2, type: 3} +--- !u!4 &1842916674 stripped +Transform: + m_CorrespondingSourceObject: {fileID: 1579282987822796750, guid: 941fac9249b6442cdb2d3f23472128e2, + type: 3} + m_PrefabInstance: {fileID: 1842916673} + m_PrefabAsset: {fileID: 0} +--- !u!4 &1848610967 stripped +Transform: + m_CorrespondingSourceObject: {fileID: 40299501215355906, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + m_PrefabInstance: {fileID: 1181224050} + m_PrefabAsset: {fileID: 0} +--- !u!1001 &1852283853 +PrefabInstance: + m_ObjectHideFlags: 0 + serializedVersion: 2 + m_Modification: + m_TransformParent: {fileID: 1645660025} + m_Modifications: + - target: {fileID: 1861639547071064576, guid: 45c52fcc7429b214c8f9a6d85321ba77, + type: 3} + propertyPath: m_Name + value: BuildingShort (1) + objectReference: {fileID: 0} + - target: {fileID: 5538800703641817082, guid: 45c52fcc7429b214c8f9a6d85321ba77, + type: 3} + propertyPath: m_LocalPosition.x + value: -31.917511 + objectReference: {fileID: 0} + - target: {fileID: 5538800703641817082, guid: 45c52fcc7429b214c8f9a6d85321ba77, + type: 3} + propertyPath: m_LocalPosition.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 5538800703641817082, guid: 45c52fcc7429b214c8f9a6d85321ba77, + type: 3} + propertyPath: m_LocalPosition.z + value: 81.20537 + objectReference: {fileID: 0} + - target: {fileID: 5538800703641817082, guid: 45c52fcc7429b214c8f9a6d85321ba77, + type: 3} + propertyPath: m_LocalRotation.x + value: -0 + objectReference: {fileID: 0} + - target: {fileID: 5538800703641817082, guid: 45c52fcc7429b214c8f9a6d85321ba77, + type: 3} + propertyPath: m_LocalRotation.y + value: -0.70710576 + objectReference: {fileID: 0} + - target: {fileID: 5538800703641817082, guid: 45c52fcc7429b214c8f9a6d85321ba77, + type: 3} + propertyPath: m_LocalRotation.z + value: -0 + objectReference: {fileID: 0} + - target: {fileID: 5538800703641817082, guid: 45c52fcc7429b214c8f9a6d85321ba77, + type: 3} + propertyPath: m_LocalRotation.w + value: 0.70710784 + objectReference: {fileID: 0} + - target: {fileID: 5538800703641817082, guid: 45c52fcc7429b214c8f9a6d85321ba77, + type: 3} + propertyPath: m_RootOrder + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 5538800703641817082, guid: 45c52fcc7429b214c8f9a6d85321ba77, + type: 3} + propertyPath: m_LocalEulerAnglesHint.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 5538800703641817082, guid: 45c52fcc7429b214c8f9a6d85321ba77, + type: 3} + propertyPath: m_LocalEulerAnglesHint.y + value: -90.00001 + objectReference: {fileID: 0} + - target: {fileID: 5538800703641817082, guid: 45c52fcc7429b214c8f9a6d85321ba77, + type: 3} + propertyPath: m_LocalEulerAnglesHint.z + value: 0 + objectReference: {fileID: 0} + m_RemovedComponents: [] + m_SourcePrefab: {fileID: 100100000, guid: 45c52fcc7429b214c8f9a6d85321ba77, type: 3} +--- !u!4 &1872410836 stripped +Transform: + m_CorrespondingSourceObject: {fileID: 400000, guid: 92bb9994204d1d44cb6223c53e4f84f8, + type: 3} + m_PrefabInstance: {fileID: 1799171678} + m_PrefabAsset: {fileID: 0} +--- !u!1001 &1884244635 +PrefabInstance: + m_ObjectHideFlags: 0 + serializedVersion: 2 + m_Modification: + m_TransformParent: {fileID: 77662693} + m_Modifications: + - target: {fileID: 100000, guid: 9f1e50f73a529a448b004add5bec5d80, type: 3} + propertyPath: m_Name + value: TreeBox (14) + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 9f1e50f73a529a448b004add5bec5d80, type: 3} + propertyPath: m_LocalPosition.x + value: -38.609318 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 9f1e50f73a529a448b004add5bec5d80, type: 3} + propertyPath: m_LocalPosition.y + value: 0.7347355 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 9f1e50f73a529a448b004add5bec5d80, type: 3} + propertyPath: m_LocalPosition.z + value: 132.17068 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 9f1e50f73a529a448b004add5bec5d80, type: 3} + propertyPath: m_LocalRotation.x + value: -0 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 9f1e50f73a529a448b004add5bec5d80, type: 3} + propertyPath: m_LocalRotation.y + value: -0.91892236 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 9f1e50f73a529a448b004add5bec5d80, type: 3} + propertyPath: m_LocalRotation.z + value: -0 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 9f1e50f73a529a448b004add5bec5d80, type: 3} + propertyPath: m_LocalRotation.w + value: -0.39443853 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 9f1e50f73a529a448b004add5bec5d80, type: 3} + propertyPath: m_RootOrder + value: 33 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 9f1e50f73a529a448b004add5bec5d80, type: 3} + propertyPath: m_LocalEulerAnglesHint.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 9f1e50f73a529a448b004add5bec5d80, type: 3} + propertyPath: m_LocalEulerAnglesHint.y + value: 493.53802 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 9f1e50f73a529a448b004add5bec5d80, type: 3} + propertyPath: m_LocalEulerAnglesHint.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 9f1e50f73a529a448b004add5bec5d80, type: 3} + propertyPath: m_LocalScale.x + value: 2.4959722 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 9f1e50f73a529a448b004add5bec5d80, type: 3} + propertyPath: m_LocalScale.y + value: 2.49597 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 9f1e50f73a529a448b004add5bec5d80, type: 3} + propertyPath: m_LocalScale.z + value: 2.4959722 + objectReference: {fileID: 0} + - target: {fileID: 2300000, guid: 9f1e50f73a529a448b004add5bec5d80, type: 3} + propertyPath: m_Materials.Array.data[0] + value: + objectReference: {fileID: 2100000, guid: d11179e416c9b394c8176d36a0dcae52, type: 2} + m_RemovedComponents: [] + m_SourcePrefab: {fileID: 100100000, guid: 9f1e50f73a529a448b004add5bec5d80, type: 3} +--- !u!1 &1889916055 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 1889916056} + m_Layer: 0 + m_Name: Clouds + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &1889916056 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1889916055} + m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} + m_LocalPosition: {x: 0, y: 0, z: 0} + m_LocalScale: {x: 1, y: 1, z: 1} + m_Children: + - {fileID: 1399002331} + - {fileID: 122768567} + - {fileID: 708546277} + - {fileID: 582113426} + - {fileID: 679038436} + - {fileID: 1907707580} + - {fileID: 1897799973} + - {fileID: 25114349} + - {fileID: 964432010} + - {fileID: 977882338} + - {fileID: 1013600836} + - {fileID: 311425289} + - {fileID: 1805987571} + - {fileID: 1811561754} + - {fileID: 409335564} + m_Father: {fileID: 23283999} + m_RootOrder: 3 + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!4 &1892013764 stripped +Transform: + m_CorrespondingSourceObject: {fileID: 400000, guid: dca6189290e8c16479a364fa6d80b6b8, + type: 3} + m_PrefabInstance: {fileID: 905377463} + m_PrefabAsset: {fileID: 0} +--- !u!1001 &1892083137 +PrefabInstance: + m_ObjectHideFlags: 0 + serializedVersion: 2 + m_Modification: + m_TransformParent: {fileID: 0} + m_Modifications: + - target: {fileID: 301968402025351761, guid: 4ca810eee207a9c47a8ce33ea21c709d, + type: 3} + propertyPath: m_Name + value: Checkpoint + objectReference: {fileID: 0} + - target: {fileID: 3946376847079625120, guid: 4ca810eee207a9c47a8ce33ea21c709d, + type: 3} + propertyPath: m_LocalPosition.x + value: -12 + objectReference: {fileID: 0} + - target: {fileID: 3946376847079625120, guid: 4ca810eee207a9c47a8ce33ea21c709d, + type: 3} + propertyPath: m_LocalPosition.y + value: 2 + objectReference: {fileID: 0} + - target: {fileID: 3946376847079625120, guid: 4ca810eee207a9c47a8ce33ea21c709d, + type: 3} + propertyPath: m_LocalPosition.z + value: 56 + objectReference: {fileID: 0} + - target: {fileID: 3946376847079625120, guid: 4ca810eee207a9c47a8ce33ea21c709d, + type: 3} + propertyPath: m_LocalRotation.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 3946376847079625120, guid: 4ca810eee207a9c47a8ce33ea21c709d, + type: 3} + propertyPath: m_LocalRotation.y + value: 0.7071068 + objectReference: {fileID: 0} + - target: {fileID: 3946376847079625120, guid: 4ca810eee207a9c47a8ce33ea21c709d, + type: 3} + propertyPath: m_LocalRotation.z + value: -0 + objectReference: {fileID: 0} + - target: {fileID: 3946376847079625120, guid: 4ca810eee207a9c47a8ce33ea21c709d, + type: 3} + propertyPath: m_LocalRotation.w + value: -0.7071068 + objectReference: {fileID: 0} + - target: {fileID: 3946376847079625120, guid: 4ca810eee207a9c47a8ce33ea21c709d, + type: 3} + propertyPath: m_RootOrder + value: 3 + objectReference: {fileID: 0} + - target: {fileID: 3946376847079625120, guid: 4ca810eee207a9c47a8ce33ea21c709d, + type: 3} + propertyPath: m_LocalEulerAnglesHint.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 3946376847079625120, guid: 4ca810eee207a9c47a8ce33ea21c709d, + type: 3} + propertyPath: m_LocalEulerAnglesHint.y + value: 270 + objectReference: {fileID: 0} + - target: {fileID: 3946376847079625120, guid: 4ca810eee207a9c47a8ce33ea21c709d, + type: 3} + propertyPath: m_LocalEulerAnglesHint.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 8400165572302042033, guid: 4ca810eee207a9c47a8ce33ea21c709d, + type: 3} + propertyPath: m_Size.y + value: 10 + objectReference: {fileID: 0} + - target: {fileID: 8450129487767892674, guid: 4ca810eee207a9c47a8ce33ea21c709d, + type: 3} + propertyPath: isStartFinishLine + value: 0 + objectReference: {fileID: 0} + m_RemovedComponents: [] + m_SourcePrefab: {fileID: 100100000, guid: 4ca810eee207a9c47a8ce33ea21c709d, type: 3} +--- !u!114 &1892083138 stripped +MonoBehaviour: + m_CorrespondingSourceObject: {fileID: 8450129487767892674, guid: 4ca810eee207a9c47a8ce33ea21c709d, + type: 3} + m_PrefabInstance: {fileID: 1892083137} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: bbae15ab488cd06418614cdb83952550, type: 3} + m_Name: + m_EditorClassIdentifier: +--- !u!4 &1897799973 stripped +Transform: + m_CorrespondingSourceObject: {fileID: 400012, guid: 0829d76c4806eb54b8b2f17eec10f4e6, + type: 3} + m_PrefabInstance: {fileID: 533325049} + m_PrefabAsset: {fileID: 0} +--- !u!1001 &1903448818 +PrefabInstance: + m_ObjectHideFlags: 0 + serializedVersion: 2 + m_Modification: + m_TransformParent: {fileID: 286898288} + m_Modifications: + - target: {fileID: 100000, guid: 92bb9994204d1d44cb6223c53e4f84f8, type: 3} + propertyPath: m_Name + value: Hill (14) + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 92bb9994204d1d44cb6223c53e4f84f8, type: 3} + propertyPath: m_LocalPosition.x + value: -40.080124 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 92bb9994204d1d44cb6223c53e4f84f8, type: 3} + propertyPath: m_LocalPosition.y + value: -0.9297042 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 92bb9994204d1d44cb6223c53e4f84f8, type: 3} + propertyPath: m_LocalPosition.z + value: 134.47064 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 92bb9994204d1d44cb6223c53e4f84f8, type: 3} + propertyPath: m_LocalRotation.x + value: -0 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 92bb9994204d1d44cb6223c53e4f84f8, type: 3} + propertyPath: m_LocalRotation.y + value: -0 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 92bb9994204d1d44cb6223c53e4f84f8, type: 3} + propertyPath: m_LocalRotation.z + value: -0 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 92bb9994204d1d44cb6223c53e4f84f8, type: 3} + propertyPath: m_LocalRotation.w + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 92bb9994204d1d44cb6223c53e4f84f8, type: 3} + propertyPath: m_RootOrder + value: 14 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 92bb9994204d1d44cb6223c53e4f84f8, type: 3} + propertyPath: m_LocalEulerAnglesHint.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 92bb9994204d1d44cb6223c53e4f84f8, type: 3} + propertyPath: m_LocalEulerAnglesHint.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 92bb9994204d1d44cb6223c53e4f84f8, type: 3} + propertyPath: m_LocalEulerAnglesHint.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 92bb9994204d1d44cb6223c53e4f84f8, type: 3} + propertyPath: m_LocalScale.x + value: 1.1166732 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 92bb9994204d1d44cb6223c53e4f84f8, type: 3} + propertyPath: m_LocalScale.y + value: 0.5999449 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 92bb9994204d1d44cb6223c53e4f84f8, type: 3} + propertyPath: m_LocalScale.z + value: 1.1166732 + objectReference: {fileID: 0} + m_RemovedComponents: [] + m_SourcePrefab: {fileID: 100100000, guid: 92bb9994204d1d44cb6223c53e4f84f8, type: 3} +--- !u!4 &1903448819 stripped +Transform: + m_CorrespondingSourceObject: {fileID: 400000, guid: 92bb9994204d1d44cb6223c53e4f84f8, + type: 3} + m_PrefabInstance: {fileID: 1903448818} + m_PrefabAsset: {fileID: 0} +--- !u!4 &1907707580 stripped +Transform: + m_CorrespondingSourceObject: {fileID: 400012, guid: 0829d76c4806eb54b8b2f17eec10f4e6, + type: 3} + m_PrefabInstance: {fileID: 943674754} + m_PrefabAsset: {fileID: 0} +--- !u!4 &1928990893 stripped +Transform: + m_CorrespondingSourceObject: {fileID: 3763822634849867143, guid: 8a2015a9601d162459389c9b9d1437fc, + type: 3} + m_PrefabInstance: {fileID: 1388116303} + m_PrefabAsset: {fileID: 0} +--- !u!1001 &1931383003 +PrefabInstance: + m_ObjectHideFlags: 0 + serializedVersion: 2 + m_Modification: + m_TransformParent: {fileID: 77662693} + m_Modifications: + - target: {fileID: 100000, guid: dca6189290e8c16479a364fa6d80b6b8, type: 3} + propertyPath: m_Name + value: TreeRound (7) + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: dca6189290e8c16479a364fa6d80b6b8, type: 3} + propertyPath: m_LocalPosition.x + value: -42.609207 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: dca6189290e8c16479a364fa6d80b6b8, type: 3} + propertyPath: m_LocalPosition.y + value: 11 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: dca6189290e8c16479a364fa6d80b6b8, type: 3} + propertyPath: m_LocalPosition.z + value: -75.76155 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: dca6189290e8c16479a364fa6d80b6b8, type: 3} + propertyPath: m_LocalRotation.x + value: 0.00000003240185 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: dca6189290e8c16479a364fa6d80b6b8, type: 3} + propertyPath: m_LocalRotation.y + value: -0.9174885 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: dca6189290e8c16479a364fa6d80b6b8, type: 3} + propertyPath: m_LocalRotation.z + value: -0.00000007473892 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: dca6189290e8c16479a364fa6d80b6b8, type: 3} + propertyPath: m_LocalRotation.w + value: 0.39776227 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: dca6189290e8c16479a364fa6d80b6b8, type: 3} + propertyPath: m_RootOrder + value: 7 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: dca6189290e8c16479a364fa6d80b6b8, type: 3} + propertyPath: m_LocalEulerAnglesHint.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: dca6189290e8c16479a364fa6d80b6b8, type: 3} + propertyPath: m_LocalEulerAnglesHint.y + value: -133.123 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: dca6189290e8c16479a364fa6d80b6b8, type: 3} + propertyPath: m_LocalEulerAnglesHint.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: dca6189290e8c16479a364fa6d80b6b8, type: 3} + propertyPath: m_LocalScale.x + value: 2.3049002 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: dca6189290e8c16479a364fa6d80b6b8, type: 3} + propertyPath: m_LocalScale.y + value: 2.3049 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: dca6189290e8c16479a364fa6d80b6b8, type: 3} + propertyPath: m_LocalScale.z + value: 2.3049002 + objectReference: {fileID: 0} + - target: {fileID: 2300000, guid: dca6189290e8c16479a364fa6d80b6b8, type: 3} + propertyPath: m_Materials.Array.data[0] + value: + objectReference: {fileID: 2100000, guid: d11179e416c9b394c8176d36a0dcae52, type: 2} + - target: {fileID: 2300002, guid: dca6189290e8c16479a364fa6d80b6b8, type: 3} + propertyPath: m_Materials.Array.data[0] + value: + objectReference: {fileID: 2100000, guid: d11179e416c9b394c8176d36a0dcae52, type: 2} + m_RemovedComponents: [] + m_SourcePrefab: {fileID: 100100000, guid: dca6189290e8c16479a364fa6d80b6b8, type: 3} +--- !u!1001 &1935923472 +PrefabInstance: + m_ObjectHideFlags: 0 + serializedVersion: 2 + m_Modification: + m_TransformParent: {fileID: 0} + m_Modifications: + - target: {fileID: 301968402025351761, guid: 4ca810eee207a9c47a8ce33ea21c709d, + type: 3} + propertyPath: m_Name + value: Checkpoint (1) + objectReference: {fileID: 0} + - target: {fileID: 3946376847079625120, guid: 4ca810eee207a9c47a8ce33ea21c709d, + type: 3} + propertyPath: m_LocalPosition.x + value: -45 + objectReference: {fileID: 0} + - target: {fileID: 3946376847079625120, guid: 4ca810eee207a9c47a8ce33ea21c709d, + type: 3} + propertyPath: m_LocalPosition.y + value: -0.15 + objectReference: {fileID: 0} + - target: {fileID: 3946376847079625120, guid: 4ca810eee207a9c47a8ce33ea21c709d, + type: 3} + propertyPath: m_LocalPosition.z + value: 10 + objectReference: {fileID: 0} + - target: {fileID: 3946376847079625120, guid: 4ca810eee207a9c47a8ce33ea21c709d, + type: 3} + propertyPath: m_LocalRotation.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 3946376847079625120, guid: 4ca810eee207a9c47a8ce33ea21c709d, + type: 3} + propertyPath: m_LocalRotation.y + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 3946376847079625120, guid: 4ca810eee207a9c47a8ce33ea21c709d, + type: 3} + propertyPath: m_LocalRotation.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 3946376847079625120, guid: 4ca810eee207a9c47a8ce33ea21c709d, + type: 3} + propertyPath: m_LocalRotation.w + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 3946376847079625120, guid: 4ca810eee207a9c47a8ce33ea21c709d, + type: 3} + propertyPath: m_RootOrder + value: 4 + objectReference: {fileID: 0} + - target: {fileID: 3946376847079625120, guid: 4ca810eee207a9c47a8ce33ea21c709d, + type: 3} + propertyPath: m_LocalEulerAnglesHint.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 3946376847079625120, guid: 4ca810eee207a9c47a8ce33ea21c709d, + type: 3} + propertyPath: m_LocalEulerAnglesHint.y + value: 180 + objectReference: {fileID: 0} + - target: {fileID: 3946376847079625120, guid: 4ca810eee207a9c47a8ce33ea21c709d, + type: 3} + propertyPath: m_LocalEulerAnglesHint.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 8450129487767892674, guid: 4ca810eee207a9c47a8ce33ea21c709d, + type: 3} + propertyPath: isStartFinishLine + value: 0 + objectReference: {fileID: 0} + m_RemovedComponents: [] + m_SourcePrefab: {fileID: 100100000, guid: 4ca810eee207a9c47a8ce33ea21c709d, type: 3} +--- !u!114 &1935923473 stripped +MonoBehaviour: + m_CorrespondingSourceObject: {fileID: 8450129487767892674, guid: 4ca810eee207a9c47a8ce33ea21c709d, + type: 3} + m_PrefabInstance: {fileID: 1935923472} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: bbae15ab488cd06418614cdb83952550, type: 3} + m_Name: + m_EditorClassIdentifier: +--- !u!1001 &1937061325 +PrefabInstance: + m_ObjectHideFlags: 0 + serializedVersion: 2 + m_Modification: + m_TransformParent: {fileID: 822690626} + m_Modifications: + - target: {fileID: 1579282987822437358, guid: 941fac9249b6442cdb2d3f23472128e2, + type: 3} + propertyPath: m_Name + value: ModularTrackStraight (10) + objectReference: {fileID: 0} + - target: {fileID: 1579282987822796750, guid: 941fac9249b6442cdb2d3f23472128e2, + type: 3} + propertyPath: m_LocalPosition.x + value: -44 + objectReference: {fileID: 0} + - target: {fileID: 1579282987822796750, guid: 941fac9249b6442cdb2d3f23472128e2, + type: 3} + propertyPath: m_LocalPosition.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 1579282987822796750, guid: 941fac9249b6442cdb2d3f23472128e2, + type: 3} + propertyPath: m_LocalPosition.z + value: 7 + objectReference: {fileID: 0} + - target: {fileID: 1579282987822796750, guid: 941fac9249b6442cdb2d3f23472128e2, + type: 3} + propertyPath: m_LocalRotation.x + value: -0 + objectReference: {fileID: 0} + - target: {fileID: 1579282987822796750, guid: 941fac9249b6442cdb2d3f23472128e2, + type: 3} + propertyPath: m_LocalRotation.y + value: -0 + objectReference: {fileID: 0} + - target: {fileID: 1579282987822796750, guid: 941fac9249b6442cdb2d3f23472128e2, + type: 3} + propertyPath: m_LocalRotation.z + value: -0 + objectReference: {fileID: 0} + - target: {fileID: 1579282987822796750, guid: 941fac9249b6442cdb2d3f23472128e2, + type: 3} + propertyPath: m_LocalRotation.w + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 1579282987822796750, guid: 941fac9249b6442cdb2d3f23472128e2, + type: 3} + propertyPath: m_RootOrder + value: 12 + objectReference: {fileID: 0} + - target: {fileID: 1579282987822796750, guid: 941fac9249b6442cdb2d3f23472128e2, + type: 3} + propertyPath: m_LocalEulerAnglesHint.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 1579282987822796750, guid: 941fac9249b6442cdb2d3f23472128e2, + type: 3} + propertyPath: m_LocalEulerAnglesHint.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 1579282987822796750, guid: 941fac9249b6442cdb2d3f23472128e2, + type: 3} + propertyPath: m_LocalEulerAnglesHint.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 1644974464755198482, guid: 941fac9249b6442cdb2d3f23472128e2, + type: 3} + propertyPath: bounciness + value: 0.1 + objectReference: {fileID: 0} + m_RemovedComponents: + - {fileID: 1579282987816156490, guid: 941fac9249b6442cdb2d3f23472128e2, type: 3} + m_SourcePrefab: {fileID: 100100000, guid: 941fac9249b6442cdb2d3f23472128e2, type: 3} +--- !u!4 &1937061326 stripped +Transform: + m_CorrespondingSourceObject: {fileID: 1579282987822796750, guid: 941fac9249b6442cdb2d3f23472128e2, + type: 3} + m_PrefabInstance: {fileID: 1937061325} + m_PrefabAsset: {fileID: 0} +--- !u!4 &1955145323 stripped +Transform: + m_CorrespondingSourceObject: {fileID: 667086550830086704, guid: 3796997fde0c29b4180a4ec756403b34, + type: 3} + m_PrefabInstance: {fileID: 309236780} + m_PrefabAsset: {fileID: 0} +--- !u!1001 &1967685626 +PrefabInstance: + m_ObjectHideFlags: 0 + serializedVersion: 2 + m_Modification: + m_TransformParent: {fileID: 77662693} + m_Modifications: + - target: {fileID: 100000, guid: dca6189290e8c16479a364fa6d80b6b8, type: 3} + propertyPath: m_Name + value: TreeRound (15) + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: dca6189290e8c16479a364fa6d80b6b8, type: 3} + propertyPath: m_LocalPosition.x + value: -3 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: dca6189290e8c16479a364fa6d80b6b8, type: 3} + propertyPath: m_LocalPosition.y + value: 8 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: dca6189290e8c16479a364fa6d80b6b8, type: 3} + propertyPath: m_LocalPosition.z + value: 4 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: dca6189290e8c16479a364fa6d80b6b8, type: 3} + propertyPath: m_LocalRotation.x + value: -0.0070030643 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: dca6189290e8c16479a364fa6d80b6b8, type: 3} + propertyPath: m_LocalRotation.y + value: 0.114390865 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: dca6189290e8c16479a364fa6d80b6b8, type: 3} + propertyPath: m_LocalRotation.z + value: 0.14605828 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: dca6189290e8c16479a364fa6d80b6b8, type: 3} + propertyPath: m_LocalRotation.w + value: 0.98261523 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: dca6189290e8c16479a364fa6d80b6b8, type: 3} + propertyPath: m_RootOrder + value: 15 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: dca6189290e8c16479a364fa6d80b6b8, type: 3} + propertyPath: m_LocalEulerAnglesHint.x + value: -2.7040002 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: dca6189290e8c16479a364fa6d80b6b8, type: 3} + propertyPath: m_LocalEulerAnglesHint.y + value: 12.886001 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: dca6189290e8c16479a364fa6d80b6b8, type: 3} + propertyPath: m_LocalEulerAnglesHint.z + value: 16.604 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: dca6189290e8c16479a364fa6d80b6b8, type: 3} + propertyPath: m_LocalScale.x + value: 3.64681 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: dca6189290e8c16479a364fa6d80b6b8, type: 3} + propertyPath: m_LocalScale.y + value: 3.6468098 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: dca6189290e8c16479a364fa6d80b6b8, type: 3} + propertyPath: m_LocalScale.z + value: 3.6468108 + objectReference: {fileID: 0} + - target: {fileID: 2300000, guid: dca6189290e8c16479a364fa6d80b6b8, type: 3} + propertyPath: m_Materials.Array.data[0] + value: + objectReference: {fileID: 2100000, guid: d11179e416c9b394c8176d36a0dcae52, type: 2} + - target: {fileID: 2300002, guid: dca6189290e8c16479a364fa6d80b6b8, type: 3} + propertyPath: m_Materials.Array.data[0] + value: + objectReference: {fileID: 2100000, guid: 6c378a7b0da21d443a337061a33da161, type: 2} + m_RemovedComponents: [] + m_SourcePrefab: {fileID: 100100000, guid: dca6189290e8c16479a364fa6d80b6b8, type: 3} +--- !u!1001 &1969992148 +PrefabInstance: + m_ObjectHideFlags: 0 + serializedVersion: 2 + m_Modification: + m_TransformParent: {fileID: 822690626} + m_Modifications: + - target: {fileID: 1579282987822437358, guid: 941fac9249b6442cdb2d3f23472128e2, + type: 3} + propertyPath: m_Name + value: ModularTrackStraight (15) + objectReference: {fileID: 0} + - target: {fileID: 1579282987822796750, guid: 941fac9249b6442cdb2d3f23472128e2, + type: 3} + propertyPath: m_LocalPosition.x + value: -14 + objectReference: {fileID: 0} + - target: {fileID: 1579282987822796750, guid: 941fac9249b6442cdb2d3f23472128e2, + type: 3} + propertyPath: m_LocalPosition.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 1579282987822796750, guid: 941fac9249b6442cdb2d3f23472128e2, + type: 3} + propertyPath: m_LocalPosition.z + value: -43 + objectReference: {fileID: 0} + - target: {fileID: 1579282987822796750, guid: 941fac9249b6442cdb2d3f23472128e2, + type: 3} + propertyPath: m_LocalRotation.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 1579282987822796750, guid: 941fac9249b6442cdb2d3f23472128e2, + type: 3} + propertyPath: m_LocalRotation.y + value: 0.7071068 + objectReference: {fileID: 0} + - target: {fileID: 1579282987822796750, guid: 941fac9249b6442cdb2d3f23472128e2, + type: 3} + propertyPath: m_LocalRotation.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 1579282987822796750, guid: 941fac9249b6442cdb2d3f23472128e2, + type: 3} + propertyPath: m_LocalRotation.w + value: 0.7071068 + objectReference: {fileID: 0} + - target: {fileID: 1579282987822796750, guid: 941fac9249b6442cdb2d3f23472128e2, + type: 3} + propertyPath: m_RootOrder + value: 18 + objectReference: {fileID: 0} + - target: {fileID: 1579282987822796750, guid: 941fac9249b6442cdb2d3f23472128e2, + type: 3} + propertyPath: m_LocalEulerAnglesHint.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 1579282987822796750, guid: 941fac9249b6442cdb2d3f23472128e2, + type: 3} + propertyPath: m_LocalEulerAnglesHint.y + value: 90 + objectReference: {fileID: 0} + - target: {fileID: 1579282987822796750, guid: 941fac9249b6442cdb2d3f23472128e2, + type: 3} + propertyPath: m_LocalEulerAnglesHint.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 1644974464755198482, guid: 941fac9249b6442cdb2d3f23472128e2, + type: 3} + propertyPath: bounciness + value: 0.1 + objectReference: {fileID: 0} + m_RemovedComponents: + - {fileID: 1579282987816156490, guid: 941fac9249b6442cdb2d3f23472128e2, type: 3} + m_SourcePrefab: {fileID: 100100000, guid: 941fac9249b6442cdb2d3f23472128e2, type: 3} +--- !u!4 &1969992149 stripped +Transform: + m_CorrespondingSourceObject: {fileID: 1579282987822796750, guid: 941fac9249b6442cdb2d3f23472128e2, + type: 3} + m_PrefabInstance: {fileID: 1969992148} + m_PrefabAsset: {fileID: 0} +--- !u!1001 &1984506498 +PrefabInstance: + m_ObjectHideFlags: 0 + serializedVersion: 2 + m_Modification: + m_TransformParent: {fileID: 1889916056} + m_Modifications: + - target: {fileID: 100012, guid: 0829d76c4806eb54b8b2f17eec10f4e6, type: 3} + propertyPath: m_Name + value: Cloud (10) + objectReference: {fileID: 0} + - target: {fileID: 100012, guid: 0829d76c4806eb54b8b2f17eec10f4e6, type: 3} + propertyPath: m_StaticEditorFlags + value: 4294967295 + objectReference: {fileID: 0} + - target: {fileID: 400012, guid: 0829d76c4806eb54b8b2f17eec10f4e6, type: 3} + propertyPath: m_LocalPosition.x + value: 310.79077 + objectReference: {fileID: 0} + - target: {fileID: 400012, guid: 0829d76c4806eb54b8b2f17eec10f4e6, type: 3} + propertyPath: m_LocalPosition.y + value: 6.531336 + objectReference: {fileID: 0} + - target: {fileID: 400012, guid: 0829d76c4806eb54b8b2f17eec10f4e6, type: 3} + propertyPath: m_LocalPosition.z + value: 50.619225 + objectReference: {fileID: 0} + - target: {fileID: 400012, guid: 0829d76c4806eb54b8b2f17eec10f4e6, type: 3} + propertyPath: m_LocalRotation.x + value: -0 + objectReference: {fileID: 0} + - target: {fileID: 400012, guid: 0829d76c4806eb54b8b2f17eec10f4e6, type: 3} + propertyPath: m_LocalRotation.y + value: 0.58861417 + objectReference: {fileID: 0} + - target: {fileID: 400012, guid: 0829d76c4806eb54b8b2f17eec10f4e6, type: 3} + propertyPath: m_LocalRotation.z + value: -0 + objectReference: {fileID: 0} + - target: {fileID: 400012, guid: 0829d76c4806eb54b8b2f17eec10f4e6, type: 3} + propertyPath: m_LocalRotation.w + value: 0.80841416 + objectReference: {fileID: 0} + - target: {fileID: 400012, guid: 0829d76c4806eb54b8b2f17eec10f4e6, type: 3} + propertyPath: m_RootOrder + value: 10 + objectReference: {fileID: 0} + - target: {fileID: 400012, guid: 0829d76c4806eb54b8b2f17eec10f4e6, type: 3} + propertyPath: m_LocalEulerAnglesHint.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 400012, guid: 0829d76c4806eb54b8b2f17eec10f4e6, type: 3} + propertyPath: m_LocalEulerAnglesHint.y + value: 72.117004 + objectReference: {fileID: 0} + - target: {fileID: 400012, guid: 0829d76c4806eb54b8b2f17eec10f4e6, type: 3} + propertyPath: m_LocalEulerAnglesHint.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 400012, guid: 0829d76c4806eb54b8b2f17eec10f4e6, type: 3} + propertyPath: m_LocalScale.x + value: 6.470624 + objectReference: {fileID: 0} + - target: {fileID: 400012, guid: 0829d76c4806eb54b8b2f17eec10f4e6, type: 3} + propertyPath: m_LocalScale.y + value: 6.4706197 + objectReference: {fileID: 0} + - target: {fileID: 400012, guid: 0829d76c4806eb54b8b2f17eec10f4e6, type: 3} + propertyPath: m_LocalScale.z + value: 6.470624 + objectReference: {fileID: 0} + - target: {fileID: 2300000, guid: 0829d76c4806eb54b8b2f17eec10f4e6, type: 3} + propertyPath: m_Materials.Array.data[0] + value: + objectReference: {fileID: 2100000, guid: c1fb7d3a27a67b947bb2b2ab391072b0, type: 2} + - target: {fileID: 2300002, guid: 0829d76c4806eb54b8b2f17eec10f4e6, type: 3} + propertyPath: m_Materials.Array.data[0] + value: + objectReference: {fileID: 2100000, guid: c1fb7d3a27a67b947bb2b2ab391072b0, type: 2} + - target: {fileID: 2300004, guid: 0829d76c4806eb54b8b2f17eec10f4e6, type: 3} + propertyPath: m_Materials.Array.data[0] + value: + objectReference: {fileID: 2100000, guid: c1fb7d3a27a67b947bb2b2ab391072b0, type: 2} + - target: {fileID: 2300006, guid: 0829d76c4806eb54b8b2f17eec10f4e6, type: 3} + propertyPath: m_Materials.Array.data[0] + value: + objectReference: {fileID: 2100000, guid: c1fb7d3a27a67b947bb2b2ab391072b0, type: 2} + - target: {fileID: 2300008, guid: 0829d76c4806eb54b8b2f17eec10f4e6, type: 3} + propertyPath: m_Materials.Array.data[0] + value: + objectReference: {fileID: 2100000, guid: c1fb7d3a27a67b947bb2b2ab391072b0, type: 2} + - target: {fileID: 2300010, guid: 0829d76c4806eb54b8b2f17eec10f4e6, type: 3} + propertyPath: m_Materials.Array.data[0] + value: + objectReference: {fileID: 2100000, guid: c1fb7d3a27a67b947bb2b2ab391072b0, type: 2} + - target: {fileID: 2300012, guid: 0829d76c4806eb54b8b2f17eec10f4e6, type: 3} + propertyPath: m_Materials.Array.data[0] + value: + objectReference: {fileID: 2100000, guid: d11179e416c9b394c8176d36a0dcae52, type: 2} + m_RemovedComponents: [] + m_SourcePrefab: {fileID: 100100000, guid: 0829d76c4806eb54b8b2f17eec10f4e6, type: 3} +--- !u!4 &1994140137 stripped +Transform: + m_CorrespondingSourceObject: {fileID: 667086550830086704, guid: 3796997fde0c29b4180a4ec756403b34, + type: 3} + m_PrefabInstance: {fileID: 1056904171} + m_PrefabAsset: {fileID: 0} +--- !u!1001 &2001032885 +PrefabInstance: + m_ObjectHideFlags: 0 + serializedVersion: 2 + m_Modification: + m_TransformParent: {fileID: 77662693} + m_Modifications: + - target: {fileID: 100000, guid: dca6189290e8c16479a364fa6d80b6b8, type: 3} + propertyPath: m_Name + value: TreeRound (16) + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: dca6189290e8c16479a364fa6d80b6b8, type: 3} + propertyPath: m_LocalPosition.x + value: 3.2907906 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: dca6189290e8c16479a364fa6d80b6b8, type: 3} + propertyPath: m_LocalPosition.y + value: 5.531336 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: dca6189290e8c16479a364fa6d80b6b8, type: 3} + propertyPath: m_LocalPosition.z + value: 48 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: dca6189290e8c16479a364fa6d80b6b8, type: 3} + propertyPath: m_LocalRotation.x + value: 0.00000008146034 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: dca6189290e8c16479a364fa6d80b6b8, type: 3} + propertyPath: m_LocalRotation.y + value: -0 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: dca6189290e8c16479a364fa6d80b6b8, type: 3} + propertyPath: m_LocalRotation.z + value: -0 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: dca6189290e8c16479a364fa6d80b6b8, type: 3} + propertyPath: m_LocalRotation.w + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: dca6189290e8c16479a364fa6d80b6b8, type: 3} + propertyPath: m_RootOrder + value: 16 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: dca6189290e8c16479a364fa6d80b6b8, type: 3} + propertyPath: m_LocalEulerAnglesHint.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: dca6189290e8c16479a364fa6d80b6b8, type: 3} + propertyPath: m_LocalEulerAnglesHint.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: dca6189290e8c16479a364fa6d80b6b8, type: 3} + propertyPath: m_LocalEulerAnglesHint.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: dca6189290e8c16479a364fa6d80b6b8, type: 3} + propertyPath: m_LocalScale.x + value: 2.3049 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: dca6189290e8c16479a364fa6d80b6b8, type: 3} + propertyPath: m_LocalScale.y + value: 2.3049 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: dca6189290e8c16479a364fa6d80b6b8, type: 3} + propertyPath: m_LocalScale.z + value: 2.3049 + objectReference: {fileID: 0} + - target: {fileID: 2300000, guid: dca6189290e8c16479a364fa6d80b6b8, type: 3} + propertyPath: m_Materials.Array.data[0] + value: + objectReference: {fileID: 2100000, guid: d11179e416c9b394c8176d36a0dcae52, type: 2} + - target: {fileID: 2300002, guid: dca6189290e8c16479a364fa6d80b6b8, type: 3} + propertyPath: m_Materials.Array.data[0] + value: + objectReference: {fileID: 2100000, guid: 6c378a7b0da21d443a337061a33da161, type: 2} + m_RemovedComponents: [] + m_SourcePrefab: {fileID: 100100000, guid: dca6189290e8c16479a364fa6d80b6b8, type: 3} +--- !u!1001 &2004811380 +PrefabInstance: + m_ObjectHideFlags: 0 + serializedVersion: 2 + m_Modification: + m_TransformParent: {fileID: 807038590} + m_Modifications: + - target: {fileID: 40299501215355906, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_RootOrder + value: 25 + objectReference: {fileID: 0} + - target: {fileID: 40299501215355906, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_LocalPosition.x + value: -77.414246 + objectReference: {fileID: 0} + - target: {fileID: 40299501215355906, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_LocalPosition.y + value: -0.03467399 + objectReference: {fileID: 0} + - target: {fileID: 40299501215355906, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_LocalPosition.z + value: -22.563822 + objectReference: {fileID: 0} + - target: {fileID: 40299501215355906, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_LocalRotation.y + value: 0.12080388 + objectReference: {fileID: 0} + - target: {fileID: 40299501215355906, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_LocalRotation.z + value: -0 + objectReference: {fileID: 0} + - target: {fileID: 40299501215355906, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_LocalRotation.w + value: 0.9926764 + objectReference: {fileID: 0} + - target: {fileID: 40299501215355906, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_LocalEulerAnglesHint.y + value: 13.877 + objectReference: {fileID: 0} + - target: {fileID: 40299501215355906, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_LocalScale.x + value: 1.9931502 + objectReference: {fileID: 0} + - target: {fileID: 40299501215355906, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_LocalScale.y + value: 1.99315 + objectReference: {fileID: 0} + - target: {fileID: 40299501215355906, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_LocalScale.z + value: 1.9931502 + objectReference: {fileID: 0} + - target: {fileID: 40299501215355906, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_LocalRotation.x + value: -0 + objectReference: {fileID: 0} + - target: {fileID: 2057621013554333680, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_LocalPosition.x + value: 4.5 + objectReference: {fileID: 0} + - target: {fileID: 2057621013554333680, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_LocalPosition.y + value: -0.91700006 + objectReference: {fileID: 0} + - target: {fileID: 2057621013554333680, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_LocalPosition.z + value: -48.1 + objectReference: {fileID: 0} + - target: {fileID: 2057621013554333680, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_LocalRotation.x + value: -0 + objectReference: {fileID: 0} + - target: {fileID: 2057621013554333680, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_LocalRotation.y + value: 0.120803885 + objectReference: {fileID: 0} + - target: {fileID: 2057621013554333680, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_LocalRotation.z + value: -0 + objectReference: {fileID: 0} + - target: {fileID: 2057621013554333680, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_LocalRotation.w + value: 0.9926764 + objectReference: {fileID: 0} + - target: {fileID: 2057621013554333680, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_RootOrder + value: 28 + objectReference: {fileID: 0} + - target: {fileID: 2057621013554333680, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_LocalEulerAnglesHint.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 2057621013554333680, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_LocalEulerAnglesHint.y + value: 13.877001 + objectReference: {fileID: 0} + - target: {fileID: 2057621013554333680, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_LocalEulerAnglesHint.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 2057621013554333680, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_LocalScale.x + value: 1.9931502 + objectReference: {fileID: 0} + - target: {fileID: 2057621013554333680, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_LocalScale.y + value: 1.99315 + objectReference: {fileID: 0} + - target: {fileID: 2057621013554333680, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_LocalScale.z + value: 1.9931502 + objectReference: {fileID: 0} + - target: {fileID: 2057621013554699216, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_Name + value: StoneVariant2 (16) + objectReference: {fileID: 0} + - target: {fileID: 2057621013556626704, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_Materials.Array.data[0] + value: + objectReference: {fileID: 2100000, guid: d11179e416c9b394c8176d36a0dcae52, type: 2} + - target: {fileID: 2057621013557757904, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_Mesh + value: + objectReference: {fileID: 4300002, guid: 5e6dd9e33a8a1c748a582c8565e5f95f, type: 3} + - target: {fileID: 6182327852661155845, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_Name + value: StoneRound (12) + objectReference: {fileID: 0} + m_RemovedComponents: [] + m_SourcePrefab: {fileID: 100100000, guid: 230dd9257fca2c249b555f6edd3c8e14, type: 3} +--- !u!1001 &2039196227 +PrefabInstance: + m_ObjectHideFlags: 0 + serializedVersion: 2 + m_Modification: + m_TransformParent: {fileID: 807038590} + m_Modifications: + - target: {fileID: 667086550830086704, guid: 3796997fde0c29b4180a4ec756403b34, + type: 3} + propertyPath: m_LocalPosition.x + value: -11.368544 + objectReference: {fileID: 0} + - target: {fileID: 667086550830086704, guid: 3796997fde0c29b4180a4ec756403b34, + type: 3} + propertyPath: m_RootOrder + value: 12 + objectReference: {fileID: 0} + - target: {fileID: 667086550830086704, guid: 3796997fde0c29b4180a4ec756403b34, + type: 3} + propertyPath: m_LocalPosition.y + value: 0.102326155 + objectReference: {fileID: 0} + - target: {fileID: 667086550830086704, guid: 3796997fde0c29b4180a4ec756403b34, + type: 3} + propertyPath: m_LocalPosition.z + value: -60.52307 + objectReference: {fileID: 0} + - target: {fileID: 667086550830086704, guid: 3796997fde0c29b4180a4ec756403b34, + type: 3} + propertyPath: m_LocalRotation.x + value: -0 + objectReference: {fileID: 0} + - target: {fileID: 667086550830086704, guid: 3796997fde0c29b4180a4ec756403b34, + type: 3} + propertyPath: m_LocalRotation.y + value: 0.5810794 + objectReference: {fileID: 0} + - target: {fileID: 667086550830086704, guid: 3796997fde0c29b4180a4ec756403b34, + type: 3} + propertyPath: m_LocalRotation.z + value: -0 + objectReference: {fileID: 0} + - target: {fileID: 667086550830086704, guid: 3796997fde0c29b4180a4ec756403b34, + type: 3} + propertyPath: m_LocalRotation.w + value: 0.8138469 + objectReference: {fileID: 0} + - target: {fileID: 667086550830086704, guid: 3796997fde0c29b4180a4ec756403b34, + type: 3} + propertyPath: m_LocalEulerAnglesHint.y + value: 71.053 + objectReference: {fileID: 0} + - target: {fileID: 667086550830086704, guid: 3796997fde0c29b4180a4ec756403b34, + type: 3} + propertyPath: m_LocalScale.x + value: 5.379312 + objectReference: {fileID: 0} + - target: {fileID: 667086550830086704, guid: 3796997fde0c29b4180a4ec756403b34, + type: 3} + propertyPath: m_LocalScale.y + value: 5.37931 + objectReference: {fileID: 0} + - target: {fileID: 667086550830086704, guid: 3796997fde0c29b4180a4ec756403b34, + type: 3} + propertyPath: m_LocalScale.z + value: 5.379312 + objectReference: {fileID: 0} + - target: {fileID: 5742194636018856685, guid: 3796997fde0c29b4180a4ec756403b34, + type: 3} + propertyPath: m_Name + value: StoneFlat (11) + objectReference: {fileID: 0} + - target: {fileID: 7265208955801587247, guid: 3796997fde0c29b4180a4ec756403b34, + type: 3} + propertyPath: m_Materials.Array.data[0] + value: + objectReference: {fileID: 2100000, guid: d11179e416c9b394c8176d36a0dcae52, type: 2} + - target: {fileID: 7265208955802684655, guid: 3796997fde0c29b4180a4ec756403b34, + type: 3} + propertyPath: m_Mesh + value: + objectReference: {fileID: 4300002, guid: c80f31023dcf9b34cbd0044505be4806, type: 3} + - target: {fileID: 7265208955803586799, guid: 3796997fde0c29b4180a4ec756403b34, + type: 3} + propertyPath: m_Name + value: StoneVariant1 (13) + objectReference: {fileID: 0} + - target: {fileID: 7265208955804011727, guid: 3796997fde0c29b4180a4ec756403b34, + type: 3} + propertyPath: m_LocalPosition.x + value: -10.6 + objectReference: {fileID: 0} + - target: {fileID: 7265208955804011727, guid: 3796997fde0c29b4180a4ec756403b34, + type: 3} + propertyPath: m_LocalPosition.y + value: -1.2 + objectReference: {fileID: 0} + - target: {fileID: 7265208955804011727, guid: 3796997fde0c29b4180a4ec756403b34, + type: 3} + propertyPath: m_LocalPosition.z + value: 91.92 + objectReference: {fileID: 0} + - target: {fileID: 7265208955804011727, guid: 3796997fde0c29b4180a4ec756403b34, + type: 3} + propertyPath: m_LocalRotation.x + value: -0 + objectReference: {fileID: 0} + - target: {fileID: 7265208955804011727, guid: 3796997fde0c29b4180a4ec756403b34, + type: 3} + propertyPath: m_LocalRotation.y + value: 0.31035224 + objectReference: {fileID: 0} + - target: {fileID: 7265208955804011727, guid: 3796997fde0c29b4180a4ec756403b34, + type: 3} + propertyPath: m_LocalRotation.z + value: -0 + objectReference: {fileID: 0} + - target: {fileID: 7265208955804011727, guid: 3796997fde0c29b4180a4ec756403b34, + type: 3} + propertyPath: m_LocalRotation.w + value: 0.9506217 + objectReference: {fileID: 0} + - target: {fileID: 7265208955804011727, guid: 3796997fde0c29b4180a4ec756403b34, + type: 3} + propertyPath: m_RootOrder + value: 12 + objectReference: {fileID: 0} + - target: {fileID: 7265208955804011727, guid: 3796997fde0c29b4180a4ec756403b34, + type: 3} + propertyPath: m_LocalEulerAnglesHint.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 7265208955804011727, guid: 3796997fde0c29b4180a4ec756403b34, + type: 3} + propertyPath: m_LocalEulerAnglesHint.y + value: 36.161003 + objectReference: {fileID: 0} + - target: {fileID: 7265208955804011727, guid: 3796997fde0c29b4180a4ec756403b34, + type: 3} + propertyPath: m_LocalEulerAnglesHint.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 7265208955804011727, guid: 3796997fde0c29b4180a4ec756403b34, + type: 3} + propertyPath: m_LocalScale.x + value: 7.9455 + objectReference: {fileID: 0} + - target: {fileID: 7265208955804011727, guid: 3796997fde0c29b4180a4ec756403b34, + type: 3} + propertyPath: m_LocalScale.y + value: 7.94548 + objectReference: {fileID: 0} + - target: {fileID: 7265208955804011727, guid: 3796997fde0c29b4180a4ec756403b34, + type: 3} + propertyPath: m_LocalScale.z + value: 7.9455 + objectReference: {fileID: 0} + m_RemovedComponents: [] + m_SourcePrefab: {fileID: 100100000, guid: 3796997fde0c29b4180a4ec756403b34, type: 3} +--- !u!4 &2046379624 stripped +Transform: + m_CorrespondingSourceObject: {fileID: 40299501215355906, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + m_PrefabInstance: {fileID: 1691938355} + m_PrefabAsset: {fileID: 0} +--- !u!1001 &2070064943 +PrefabInstance: + m_ObjectHideFlags: 0 + serializedVersion: 2 + m_Modification: + m_TransformParent: {fileID: 77662693} + m_Modifications: + - target: {fileID: 100000, guid: 9f1e50f73a529a448b004add5bec5d80, type: 3} + propertyPath: m_Name + value: TreeBox (17) + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 9f1e50f73a529a448b004add5bec5d80, type: 3} + propertyPath: m_LocalPosition.x + value: 23.170792 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 9f1e50f73a529a448b004add5bec5d80, type: 3} + propertyPath: m_LocalPosition.y + value: 4.4713354 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 9f1e50f73a529a448b004add5bec5d80, type: 3} + propertyPath: m_LocalPosition.z + value: 104.85922 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 9f1e50f73a529a448b004add5bec5d80, type: 3} + propertyPath: m_LocalRotation.x + value: 0.017610261 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 9f1e50f73a529a448b004add5bec5d80, type: 3} + propertyPath: m_LocalRotation.y + value: 0.85286814 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 9f1e50f73a529a448b004add5bec5d80, type: 3} + propertyPath: m_LocalRotation.z + value: 0.01696205 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 9f1e50f73a529a448b004add5bec5d80, type: 3} + propertyPath: m_LocalRotation.w + value: -0.52155364 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 9f1e50f73a529a448b004add5bec5d80, type: 3} + propertyPath: m_RootOrder + value: 36 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 9f1e50f73a529a448b004add5bec5d80, type: 3} + propertyPath: m_LocalEulerAnglesHint.x + value: -2.7110002 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 9f1e50f73a529a448b004add5bec5d80, type: 3} + propertyPath: m_LocalEulerAnglesHint.y + value: 242.87698 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 9f1e50f73a529a448b004add5bec5d80, type: 3} + propertyPath: m_LocalEulerAnglesHint.z + value: 0.708 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 9f1e50f73a529a448b004add5bec5d80, type: 3} + propertyPath: m_LocalScale.x + value: 3.2154753 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 9f1e50f73a529a448b004add5bec5d80, type: 3} + propertyPath: m_LocalScale.y + value: 3.2154717 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 9f1e50f73a529a448b004add5bec5d80, type: 3} + propertyPath: m_LocalScale.z + value: 3.2154744 + objectReference: {fileID: 0} + - target: {fileID: 2300000, guid: 9f1e50f73a529a448b004add5bec5d80, type: 3} + propertyPath: m_Materials.Array.data[0] + value: + objectReference: {fileID: 2100000, guid: 6c378a7b0da21d443a337061a33da161, type: 2} + m_RemovedComponents: [] + m_SourcePrefab: {fileID: 100100000, guid: 9f1e50f73a529a448b004add5bec5d80, type: 3} +--- !u!1001 &2080326894 +PrefabInstance: + m_ObjectHideFlags: 0 + serializedVersion: 2 + m_Modification: + m_TransformParent: {fileID: 77662693} + m_Modifications: + - target: {fileID: 100000, guid: 9f1e50f73a529a448b004add5bec5d80, type: 3} + propertyPath: m_Name + value: TreeBox (10) + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 9f1e50f73a529a448b004add5bec5d80, type: 3} + propertyPath: m_LocalPosition.x + value: -31.47681 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 9f1e50f73a529a448b004add5bec5d80, type: 3} + propertyPath: m_LocalPosition.y + value: -0.25866413 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 9f1e50f73a529a448b004add5bec5d80, type: 3} + propertyPath: m_LocalPosition.z + value: 109.84722 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 9f1e50f73a529a448b004add5bec5d80, type: 3} + propertyPath: m_LocalRotation.x + value: -0 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 9f1e50f73a529a448b004add5bec5d80, type: 3} + propertyPath: m_LocalRotation.y + value: 0.744024 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 9f1e50f73a529a448b004add5bec5d80, type: 3} + propertyPath: m_LocalRotation.z + value: -0 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 9f1e50f73a529a448b004add5bec5d80, type: 3} + propertyPath: m_LocalRotation.w + value: -0.6681529 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 9f1e50f73a529a448b004add5bec5d80, type: 3} + propertyPath: m_RootOrder + value: 30 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 9f1e50f73a529a448b004add5bec5d80, type: 3} + propertyPath: m_LocalEulerAnglesHint.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 9f1e50f73a529a448b004add5bec5d80, type: 3} + propertyPath: m_LocalEulerAnglesHint.y + value: 263.849 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 9f1e50f73a529a448b004add5bec5d80, type: 3} + propertyPath: m_LocalEulerAnglesHint.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 9f1e50f73a529a448b004add5bec5d80, type: 3} + propertyPath: m_LocalScale.x + value: 3.37098 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 9f1e50f73a529a448b004add5bec5d80, type: 3} + propertyPath: m_LocalScale.y + value: 3.3709774 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 9f1e50f73a529a448b004add5bec5d80, type: 3} + propertyPath: m_LocalScale.z + value: 3.37098 + objectReference: {fileID: 0} + - target: {fileID: 2300000, guid: 9f1e50f73a529a448b004add5bec5d80, type: 3} + propertyPath: m_Materials.Array.data[0] + value: + objectReference: {fileID: 2100000, guid: d11179e416c9b394c8176d36a0dcae52, type: 2} + m_RemovedComponents: [] + m_SourcePrefab: {fileID: 100100000, guid: 9f1e50f73a529a448b004add5bec5d80, type: 3} +--- !u!4 &2080326895 stripped +Transform: + m_CorrespondingSourceObject: {fileID: 400000, guid: 9f1e50f73a529a448b004add5bec5d80, + type: 3} + m_PrefabInstance: {fileID: 2080326894} + m_PrefabAsset: {fileID: 0} +--- !u!1001 &2088909034 +PrefabInstance: + m_ObjectHideFlags: 0 + serializedVersion: 2 + m_Modification: + m_TransformParent: {fileID: 286898288} + m_Modifications: + - target: {fileID: 100000, guid: 92bb9994204d1d44cb6223c53e4f84f8, type: 3} + propertyPath: m_Name + value: Hill + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 92bb9994204d1d44cb6223c53e4f84f8, type: 3} + propertyPath: m_LocalPosition.x + value: -74.660126 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 92bb9994204d1d44cb6223c53e4f84f8, type: 3} + propertyPath: m_LocalPosition.y + value: -0.5816045 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 92bb9994204d1d44cb6223c53e4f84f8, type: 3} + propertyPath: m_LocalPosition.z + value: 170.79065 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 92bb9994204d1d44cb6223c53e4f84f8, type: 3} + propertyPath: m_LocalRotation.x + value: -0 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 92bb9994204d1d44cb6223c53e4f84f8, type: 3} + propertyPath: m_LocalRotation.y + value: -0 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 92bb9994204d1d44cb6223c53e4f84f8, type: 3} + propertyPath: m_LocalRotation.z + value: -0 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 92bb9994204d1d44cb6223c53e4f84f8, type: 3} + propertyPath: m_LocalRotation.w + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 92bb9994204d1d44cb6223c53e4f84f8, type: 3} + propertyPath: m_RootOrder + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 92bb9994204d1d44cb6223c53e4f84f8, type: 3} + propertyPath: m_LocalEulerAnglesHint.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 92bb9994204d1d44cb6223c53e4f84f8, type: 3} + propertyPath: m_LocalEulerAnglesHint.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 92bb9994204d1d44cb6223c53e4f84f8, type: 3} + propertyPath: m_LocalEulerAnglesHint.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 92bb9994204d1d44cb6223c53e4f84f8, type: 3} + propertyPath: m_LocalScale.x + value: 4.760022 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 92bb9994204d1d44cb6223c53e4f84f8, type: 3} + propertyPath: m_LocalScale.y + value: 1.9659978 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 92bb9994204d1d44cb6223c53e4f84f8, type: 3} + propertyPath: m_LocalScale.z + value: 4.760022 + objectReference: {fileID: 0} + m_RemovedComponents: [] + m_SourcePrefab: {fileID: 100100000, guid: 92bb9994204d1d44cb6223c53e4f84f8, type: 3} +--- !u!1 &2093240584 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 2093240586} + - component: {fileID: 2093240585} + m_Layer: 0 + m_Name: MetaGameController + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!114 &2093240585 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 2093240584} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 70f11795bf0cd4fdeb9f0739ce30e21e, type: 3} + m_Name: + m_EditorClassIdentifier: + mainMenu: {fileID: 358165370} + raceCountdownTrigger: {fileID: 779111620} + gamePlayCanvas: [] +--- !u!4 &2093240586 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 2093240584} + m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} + m_LocalPosition: {x: 0, y: 0, z: 0} + m_LocalScale: {x: 1, y: 1, z: 1} + m_Children: [] + m_Father: {fileID: 0} + m_RootOrder: 7 + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!4 &2102440739 stripped +Transform: + m_CorrespondingSourceObject: {fileID: 40299501215355906, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + m_PrefabInstance: {fileID: 187641028} + m_PrefabAsset: {fileID: 0} +--- !u!1 &2110853102 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 2110853105} + - component: {fileID: 2110853104} + - component: {fileID: 2110853103} + - component: {fileID: 2110853106} + - component: {fileID: 2110853107} + m_Layer: 0 + m_Name: MainCamera + m_TagString: MainCamera + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!81 &2110853103 +AudioListener: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 2110853102} + m_Enabled: 1 +--- !u!20 &2110853104 +Camera: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 2110853102} + m_Enabled: 1 + serializedVersion: 2 + m_ClearFlags: 1 + m_BackGroundColor: {r: 0.8160377, g: 0.8852941, b: 1, a: 0} + m_projectionMatrixMode: 1 + m_SensorSize: {x: 36, y: 24} + m_LensShift: {x: 0, y: 0} + m_GateFitMode: 2 + m_FocalLength: 50 + m_NormalizedViewPortRect: + serializedVersion: 2 + x: 0 + y: 0 + width: 1 + height: 1 + near clip plane: 0.1 + far clip plane: 5000 + field of view: 40 + orthographic: 0 + orthographic size: 5 + m_Depth: -1 + m_CullingMask: + serializedVersion: 2 + m_Bits: 4294967295 + m_RenderingPath: -1 + m_TargetTexture: {fileID: 0} + m_TargetDisplay: 0 + m_TargetEye: 3 + m_HDR: 1 + m_AllowMSAA: 1 + m_AllowDynamicResolution: 0 + m_ForceIntoRT: 1 + m_OcclusionCulling: 1 + m_StereoConvergence: 10 + m_StereoSeparation: 0.022 +--- !u!4 &2110853105 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 2110853102} + m_LocalRotation: {x: 0.038215775, y: 0.0000000019252349, z: -0.00000049926905, w: 0.99926955} + m_LocalPosition: {x: 16, y: 2.05, z: -5} + m_LocalScale: {x: 1, y: 1, z: 1} + m_Children: [] + m_Father: {fileID: 0} + m_RootOrder: 12 + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!114 &2110853106 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 2110853102} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 72ece51f2901e7445ab60da3685d6b5f, type: 3} + m_Name: + m_EditorClassIdentifier: + m_ShowDebugText: 0 + m_ShowCameraFrustum: 1 + m_IgnoreTimeScale: 0 + m_WorldUpOverride: {fileID: 0} + m_UpdateMethod: 2 + m_DefaultBlend: + m_Style: 1 + m_Time: 2 + m_CustomCurve: + serializedVersion: 2 + m_Curve: [] + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + m_CustomBlends: {fileID: 0} + m_CameraCutEvent: + m_PersistentCalls: + m_Calls: [] + m_CameraActivatedEvent: + m_PersistentCalls: + m_Calls: [] +--- !u!114 &2110853107 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 2110853102} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 948f4100a11a5c24981795d21301da5c, type: 3} + m_Name: + m_EditorClassIdentifier: + volumeTrigger: {fileID: 2110853105} + volumeLayer: + serializedVersion: 2 + m_Bits: 256 + stopNaNPropagation: 1 + finalBlitToCameraTarget: 1 + antialiasingMode: 1 + temporalAntialiasing: + jitterSpread: 0.75 + sharpness: 0.25 + stationaryBlending: 0.95 + motionBlending: 0.85 + subpixelMorphologicalAntialiasing: + quality: 2 + fastApproximateAntialiasing: + fastMode: 1 + keepAlpha: 0 + fog: + enabled: 1 + excludeSkybox: 1 + debugLayer: + lightMeter: + width: 512 + height: 256 + showCurves: 1 + histogram: + width: 512 + height: 256 + channel: 3 + waveform: + exposure: 0.12 + height: 256 + vectorscope: + size: 256 + exposure: 0.12 + overlaySettings: + linearDepth: 0 + motionColorIntensity: 4 + motionGridSize: 64 + colorBlindnessType: 0 + colorBlindnessStrength: 1 + m_Resources: {fileID: 11400000, guid: d82512f9c8e5d4a4d938b575d47f88d4, type: 2} + m_ShowToolkit: 1 + m_ShowCustomSorter: 1 + breakBeforeColorGrading: 0 + m_BeforeTransparentBundles: [] + m_BeforeStackBundles: [] + m_AfterStackBundles: [] +--- !u!1001 &2115399483 +PrefabInstance: + m_ObjectHideFlags: 0 + serializedVersion: 2 + m_Modification: + m_TransformParent: {fileID: 807038590} + m_Modifications: + - target: {fileID: 667086550830086704, guid: 3796997fde0c29b4180a4ec756403b34, + type: 3} + propertyPath: m_LocalPosition.x + value: -20.633303 + objectReference: {fileID: 0} + - target: {fileID: 667086550830086704, guid: 3796997fde0c29b4180a4ec756403b34, + type: 3} + propertyPath: m_RootOrder + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 667086550830086704, guid: 3796997fde0c29b4180a4ec756403b34, + type: 3} + propertyPath: m_LocalPosition.y + value: 0.102326155 + objectReference: {fileID: 0} + - target: {fileID: 667086550830086704, guid: 3796997fde0c29b4180a4ec756403b34, + type: 3} + propertyPath: m_LocalPosition.z + value: -58.240753 + objectReference: {fileID: 0} + - target: {fileID: 667086550830086704, guid: 3796997fde0c29b4180a4ec756403b34, + type: 3} + propertyPath: m_LocalRotation.x + value: -0 + objectReference: {fileID: 0} + - target: {fileID: 667086550830086704, guid: 3796997fde0c29b4180a4ec756403b34, + type: 3} + propertyPath: m_LocalRotation.y + value: -0.056109123 + objectReference: {fileID: 0} + - target: {fileID: 667086550830086704, guid: 3796997fde0c29b4180a4ec756403b34, + type: 3} + propertyPath: m_LocalRotation.z + value: -0 + objectReference: {fileID: 0} + - target: {fileID: 667086550830086704, guid: 3796997fde0c29b4180a4ec756403b34, + type: 3} + propertyPath: m_LocalRotation.w + value: 0.99842465 + objectReference: {fileID: 0} + - target: {fileID: 667086550830086704, guid: 3796997fde0c29b4180a4ec756403b34, + type: 3} + propertyPath: m_LocalEulerAnglesHint.y + value: -6.433 + objectReference: {fileID: 0} + - target: {fileID: 667086550830086704, guid: 3796997fde0c29b4180a4ec756403b34, + type: 3} + propertyPath: m_LocalScale.x + value: 5.3793087 + objectReference: {fileID: 0} + - target: {fileID: 667086550830086704, guid: 3796997fde0c29b4180a4ec756403b34, + type: 3} + propertyPath: m_LocalScale.y + value: 5.3793 + objectReference: {fileID: 0} + - target: {fileID: 667086550830086704, guid: 3796997fde0c29b4180a4ec756403b34, + type: 3} + propertyPath: m_LocalScale.z + value: 5.3793 + objectReference: {fileID: 0} + - target: {fileID: 5742194636018856685, guid: 3796997fde0c29b4180a4ec756403b34, + type: 3} + propertyPath: m_Name + value: StoneFlat (1) + objectReference: {fileID: 0} + - target: {fileID: 7265208955801587247, guid: 3796997fde0c29b4180a4ec756403b34, + type: 3} + propertyPath: m_Materials.Array.data[0] + value: + objectReference: {fileID: 2100000, guid: d11179e416c9b394c8176d36a0dcae52, type: 2} + - target: {fileID: 7265208955802684655, guid: 3796997fde0c29b4180a4ec756403b34, + type: 3} + propertyPath: m_Mesh + value: + objectReference: {fileID: 4300002, guid: c80f31023dcf9b34cbd0044505be4806, type: 3} + - target: {fileID: 7265208955803586799, guid: 3796997fde0c29b4180a4ec756403b34, + type: 3} + propertyPath: m_Name + value: StoneVariant1 (2) + objectReference: {fileID: 0} + - target: {fileID: 7265208955804011727, guid: 3796997fde0c29b4180a4ec756403b34, + type: 3} + propertyPath: m_LocalPosition.x + value: 18.180943 + objectReference: {fileID: 0} + - target: {fileID: 7265208955804011727, guid: 3796997fde0c29b4180a4ec756403b34, + type: 3} + propertyPath: m_LocalPosition.y + value: -0.78 + objectReference: {fileID: 0} + - target: {fileID: 7265208955804011727, guid: 3796997fde0c29b4180a4ec756403b34, + type: 3} + propertyPath: m_LocalPosition.z + value: -53.07693 + objectReference: {fileID: 0} + - target: {fileID: 7265208955804011727, guid: 3796997fde0c29b4180a4ec756403b34, + type: 3} + propertyPath: m_LocalRotation.x + value: -0 + objectReference: {fileID: 0} + - target: {fileID: 7265208955804011727, guid: 3796997fde0c29b4180a4ec756403b34, + type: 3} + propertyPath: m_LocalRotation.y + value: -0.056109615 + objectReference: {fileID: 0} + - target: {fileID: 7265208955804011727, guid: 3796997fde0c29b4180a4ec756403b34, + type: 3} + propertyPath: m_LocalRotation.z + value: -0 + objectReference: {fileID: 0} + - target: {fileID: 7265208955804011727, guid: 3796997fde0c29b4180a4ec756403b34, + type: 3} + propertyPath: m_LocalRotation.w + value: 0.9984246 + objectReference: {fileID: 0} + - target: {fileID: 7265208955804011727, guid: 3796997fde0c29b4180a4ec756403b34, + type: 3} + propertyPath: m_RootOrder + value: 2 + objectReference: {fileID: 0} + - target: {fileID: 7265208955804011727, guid: 3796997fde0c29b4180a4ec756403b34, + type: 3} + propertyPath: m_LocalEulerAnglesHint.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 7265208955804011727, guid: 3796997fde0c29b4180a4ec756403b34, + type: 3} + propertyPath: m_LocalEulerAnglesHint.y + value: -6.433 + objectReference: {fileID: 0} + - target: {fileID: 7265208955804011727, guid: 3796997fde0c29b4180a4ec756403b34, + type: 3} + propertyPath: m_LocalEulerAnglesHint.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 7265208955804011727, guid: 3796997fde0c29b4180a4ec756403b34, + type: 3} + propertyPath: m_LocalScale.x + value: 5.3793077 + objectReference: {fileID: 0} + - target: {fileID: 7265208955804011727, guid: 3796997fde0c29b4180a4ec756403b34, + type: 3} + propertyPath: m_LocalScale.y + value: 5.3792996 + objectReference: {fileID: 0} + - target: {fileID: 7265208955804011727, guid: 3796997fde0c29b4180a4ec756403b34, + type: 3} + propertyPath: m_LocalScale.z + value: 5.3793077 + objectReference: {fileID: 0} + m_RemovedComponents: [] + m_SourcePrefab: {fileID: 100100000, guid: 3796997fde0c29b4180a4ec756403b34, type: 3} +--- !u!4 &2124150255 stripped +Transform: + m_CorrespondingSourceObject: {fileID: 400000, guid: dca6189290e8c16479a364fa6d80b6b8, + type: 3} + m_PrefabInstance: {fileID: 160924792} + m_PrefabAsset: {fileID: 0} +--- !u!1001 &2125807644 +PrefabInstance: + m_ObjectHideFlags: 0 + serializedVersion: 2 + m_Modification: + m_TransformParent: {fileID: 807038590} + m_Modifications: + - target: {fileID: 40299501215355906, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_RootOrder + value: 22 + objectReference: {fileID: 0} + - target: {fileID: 40299501215355906, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_LocalPosition.x + value: -12.001244 + objectReference: {fileID: 0} + - target: {fileID: 40299501215355906, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_LocalPosition.y + value: -0.038673878 + objectReference: {fileID: 0} + - target: {fileID: 40299501215355906, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_LocalPosition.z + value: 80.37018 + objectReference: {fileID: 0} + - target: {fileID: 40299501215355906, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_LocalRotation.y + value: 0.12080388 + objectReference: {fileID: 0} + - target: {fileID: 40299501215355906, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_LocalRotation.z + value: -0 + objectReference: {fileID: 0} + - target: {fileID: 40299501215355906, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_LocalRotation.w + value: 0.9926764 + objectReference: {fileID: 0} + - target: {fileID: 40299501215355906, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_LocalEulerAnglesHint.y + value: 13.877 + objectReference: {fileID: 0} + - target: {fileID: 40299501215355906, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_LocalScale.x + value: 2.234945 + objectReference: {fileID: 0} + - target: {fileID: 40299501215355906, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_LocalScale.y + value: 2.234945 + objectReference: {fileID: 0} + - target: {fileID: 40299501215355906, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_LocalScale.z + value: 2.234945 + objectReference: {fileID: 0} + - target: {fileID: 40299501215355906, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_LocalRotation.x + value: -0 + objectReference: {fileID: 0} + - target: {fileID: 2057621013554333680, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_LocalPosition.x + value: 26.813 + objectReference: {fileID: 0} + - target: {fileID: 2057621013554333680, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_LocalPosition.y + value: -0.921 + objectReference: {fileID: 0} + - target: {fileID: 2057621013554333680, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_LocalPosition.z + value: 85.534 + objectReference: {fileID: 0} + - target: {fileID: 2057621013554333680, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_LocalRotation.x + value: -0 + objectReference: {fileID: 0} + - target: {fileID: 2057621013554333680, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_LocalRotation.y + value: 0.120803885 + objectReference: {fileID: 0} + - target: {fileID: 2057621013554333680, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_LocalRotation.z + value: -0 + objectReference: {fileID: 0} + - target: {fileID: 2057621013554333680, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_LocalRotation.w + value: 0.9926764 + objectReference: {fileID: 0} + - target: {fileID: 2057621013554333680, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_RootOrder + value: 24 + objectReference: {fileID: 0} + - target: {fileID: 2057621013554333680, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_LocalEulerAnglesHint.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 2057621013554333680, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_LocalEulerAnglesHint.y + value: 13.877001 + objectReference: {fileID: 0} + - target: {fileID: 2057621013554333680, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_LocalEulerAnglesHint.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 2057621013554333680, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_LocalScale.x + value: 2.2349453 + objectReference: {fileID: 0} + - target: {fileID: 2057621013554333680, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_LocalScale.y + value: 2.234945 + objectReference: {fileID: 0} + - target: {fileID: 2057621013554333680, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_LocalScale.z + value: 2.2349453 + objectReference: {fileID: 0} + - target: {fileID: 2057621013554699216, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_Name + value: StoneVariant2 (10) + objectReference: {fileID: 0} + - target: {fileID: 2057621013556626704, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_Materials.Array.data[0] + value: + objectReference: {fileID: 2100000, guid: d11179e416c9b394c8176d36a0dcae52, type: 2} + - target: {fileID: 2057621013557757904, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_Mesh + value: + objectReference: {fileID: 4300002, guid: 5e6dd9e33a8a1c748a582c8565e5f95f, type: 3} + - target: {fileID: 6182327852661155845, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + propertyPath: m_Name + value: StoneRound (9) + objectReference: {fileID: 0} + m_RemovedComponents: [] + m_SourcePrefab: {fileID: 100100000, guid: 230dd9257fca2c249b555f6edd3c8e14, type: 3} +--- !u!1001 &2126731993 +PrefabInstance: + m_ObjectHideFlags: 0 + serializedVersion: 2 + m_Modification: + m_TransformParent: {fileID: 822690626} + m_Modifications: + - target: {fileID: 1579282987816156492, guid: 941fac9249b6442cdb2d3f23472128e2, + type: 3} + propertyPath: m_Convex + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 1579282987822437358, guid: 941fac9249b6442cdb2d3f23472128e2, + type: 3} + propertyPath: m_Name + value: ModularTrackStraight (1) + objectReference: {fileID: 0} + - target: {fileID: 1579282987822796750, guid: 941fac9249b6442cdb2d3f23472128e2, + type: 3} + propertyPath: m_LocalPosition.x + value: 16 + objectReference: {fileID: 0} + - target: {fileID: 1579282987822796750, guid: 941fac9249b6442cdb2d3f23472128e2, + type: 3} + propertyPath: m_LocalPosition.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 1579282987822796750, guid: 941fac9249b6442cdb2d3f23472128e2, + type: 3} + propertyPath: m_LocalPosition.z + value: -13.000001 + objectReference: {fileID: 0} + - target: {fileID: 1579282987822796750, guid: 941fac9249b6442cdb2d3f23472128e2, + type: 3} + propertyPath: m_LocalRotation.x + value: -0 + objectReference: {fileID: 0} + - target: {fileID: 1579282987822796750, guid: 941fac9249b6442cdb2d3f23472128e2, + type: 3} + propertyPath: m_LocalRotation.y + value: -0 + objectReference: {fileID: 0} + - target: {fileID: 1579282987822796750, guid: 941fac9249b6442cdb2d3f23472128e2, + type: 3} + propertyPath: m_LocalRotation.z + value: -0 + objectReference: {fileID: 0} + - target: {fileID: 1579282987822796750, guid: 941fac9249b6442cdb2d3f23472128e2, + type: 3} + propertyPath: m_LocalRotation.w + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 1579282987822796750, guid: 941fac9249b6442cdb2d3f23472128e2, + type: 3} + propertyPath: m_RootOrder + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 1579282987822796750, guid: 941fac9249b6442cdb2d3f23472128e2, + type: 3} + propertyPath: m_LocalEulerAnglesHint.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 1579282987822796750, guid: 941fac9249b6442cdb2d3f23472128e2, + type: 3} + propertyPath: m_LocalEulerAnglesHint.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 1579282987822796750, guid: 941fac9249b6442cdb2d3f23472128e2, + type: 3} + propertyPath: m_LocalEulerAnglesHint.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 1644974464755198482, guid: 941fac9249b6442cdb2d3f23472128e2, + type: 3} + propertyPath: bounciness + value: 0.1 + objectReference: {fileID: 0} + m_RemovedComponents: + - {fileID: 1579282987816156490, guid: 941fac9249b6442cdb2d3f23472128e2, type: 3} + m_SourcePrefab: {fileID: 100100000, guid: 941fac9249b6442cdb2d3f23472128e2, type: 3} +--- !u!4 &2126731994 stripped +Transform: + m_CorrespondingSourceObject: {fileID: 1579282987822796750, guid: 941fac9249b6442cdb2d3f23472128e2, + type: 3} + m_PrefabInstance: {fileID: 2126731993} + m_PrefabAsset: {fileID: 0} +--- !u!1001 &2135973453 +PrefabInstance: + m_ObjectHideFlags: 0 + serializedVersion: 2 + m_Modification: + m_TransformParent: {fileID: 1645660025} + m_Modifications: + - target: {fileID: 3420580296371496975, guid: 6e78c73d0c22422438a45bea2842fcfb, + type: 3} + propertyPath: m_Name + value: BuildingThin (2) + objectReference: {fileID: 0} + - target: {fileID: 8822636336882126325, guid: 6e78c73d0c22422438a45bea2842fcfb, + type: 3} + propertyPath: m_LocalPosition.x + value: 29 + objectReference: {fileID: 0} + - target: {fileID: 8822636336882126325, guid: 6e78c73d0c22422438a45bea2842fcfb, + type: 3} + propertyPath: m_LocalPosition.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 8822636336882126325, guid: 6e78c73d0c22422438a45bea2842fcfb, + type: 3} + propertyPath: m_LocalPosition.z + value: -81 + objectReference: {fileID: 0} + - target: {fileID: 8822636336882126325, guid: 6e78c73d0c22422438a45bea2842fcfb, + type: 3} + propertyPath: m_LocalRotation.x + value: -0 + objectReference: {fileID: 0} + - target: {fileID: 8822636336882126325, guid: 6e78c73d0c22422438a45bea2842fcfb, + type: 3} + propertyPath: m_LocalRotation.y + value: -0.018558338 + objectReference: {fileID: 0} + - target: {fileID: 8822636336882126325, guid: 6e78c73d0c22422438a45bea2842fcfb, + type: 3} + propertyPath: m_LocalRotation.z + value: -0 + objectReference: {fileID: 0} + - target: {fileID: 8822636336882126325, guid: 6e78c73d0c22422438a45bea2842fcfb, + type: 3} + propertyPath: m_LocalRotation.w + value: 0.9998278 + objectReference: {fileID: 0} + - target: {fileID: 8822636336882126325, guid: 6e78c73d0c22422438a45bea2842fcfb, + type: 3} + propertyPath: m_RootOrder + value: 8 + objectReference: {fileID: 0} + - target: {fileID: 8822636336882126325, guid: 6e78c73d0c22422438a45bea2842fcfb, + type: 3} + propertyPath: m_LocalEulerAnglesHint.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 8822636336882126325, guid: 6e78c73d0c22422438a45bea2842fcfb, + type: 3} + propertyPath: m_LocalEulerAnglesHint.y + value: -2.127 + objectReference: {fileID: 0} + - target: {fileID: 8822636336882126325, guid: 6e78c73d0c22422438a45bea2842fcfb, + type: 3} + propertyPath: m_LocalEulerAnglesHint.z + value: 0 + objectReference: {fileID: 0} + m_RemovedComponents: [] + m_SourcePrefab: {fileID: 100100000, guid: 6e78c73d0c22422438a45bea2842fcfb, type: 3} +--- !u!4 &2142695954 stripped +Transform: + m_CorrespondingSourceObject: {fileID: 40299501215355906, guid: 230dd9257fca2c249b555f6edd3c8e14, + type: 3} + m_PrefabInstance: {fileID: 718790844} + m_PrefabAsset: {fileID: 0} +--- !u!1001 &915320295786218630 +PrefabInstance: + m_ObjectHideFlags: 0 + serializedVersion: 2 + m_Modification: + m_TransformParent: {fileID: 0} + m_Modifications: + - target: {fileID: 1634089789674906150, guid: 08627a91b0a679a47a06bf34443532a3, + type: 3} + propertyPath: m_LocalPosition.y + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 2619373687018011095, guid: 08627a91b0a679a47a06bf34443532a3, + type: 3} + propertyPath: m_Name + value: Checkpoint0 + objectReference: {fileID: 0} + - target: {fileID: 6137789652727152964, guid: 08627a91b0a679a47a06bf34443532a3, + type: 3} + propertyPath: isStartFinishLine + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 8703922469202860465, guid: 08627a91b0a679a47a06bf34443532a3, + type: 3} + propertyPath: m_Name + value: StartFinishLine + objectReference: {fileID: 0} + - target: {fileID: 8703922469203281297, guid: 08627a91b0a679a47a06bf34443532a3, + type: 3} + propertyPath: m_LocalPosition.x + value: 16 + objectReference: {fileID: 0} + - target: {fileID: 8703922469203281297, guid: 08627a91b0a679a47a06bf34443532a3, + type: 3} + propertyPath: m_LocalPosition.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 8703922469203281297, guid: 08627a91b0a679a47a06bf34443532a3, + type: 3} + propertyPath: m_LocalPosition.z + value: 2 + objectReference: {fileID: 0} + - target: {fileID: 8703922469203281297, guid: 08627a91b0a679a47a06bf34443532a3, + type: 3} + propertyPath: m_LocalRotation.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 8703922469203281297, guid: 08627a91b0a679a47a06bf34443532a3, + type: 3} + propertyPath: m_LocalRotation.y + value: -0 + objectReference: {fileID: 0} + - target: {fileID: 8703922469203281297, guid: 08627a91b0a679a47a06bf34443532a3, + type: 3} + propertyPath: m_LocalRotation.z + value: -0 + objectReference: {fileID: 0} + - target: {fileID: 8703922469203281297, guid: 08627a91b0a679a47a06bf34443532a3, + type: 3} + propertyPath: m_LocalRotation.w + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 8703922469203281297, guid: 08627a91b0a679a47a06bf34443532a3, + type: 3} + propertyPath: m_RootOrder + value: 2 + objectReference: {fileID: 0} + - target: {fileID: 8703922469203281297, guid: 08627a91b0a679a47a06bf34443532a3, + type: 3} + propertyPath: m_LocalEulerAnglesHint.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 8703922469203281297, guid: 08627a91b0a679a47a06bf34443532a3, + type: 3} + propertyPath: m_LocalEulerAnglesHint.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 8703922469203281297, guid: 08627a91b0a679a47a06bf34443532a3, + type: 3} + propertyPath: m_LocalEulerAnglesHint.z + value: 0 + objectReference: {fileID: 0} + m_RemovedComponents: [] + m_SourcePrefab: {fileID: 100100000, guid: 08627a91b0a679a47a06bf34443532a3, type: 3} +--- !u!1001 &1005026033483787189 +PrefabInstance: + m_ObjectHideFlags: 0 + serializedVersion: 2 + m_Modification: + m_TransformParent: {fileID: 1645660025} + m_Modifications: + - target: {fileID: 155743295427205761, guid: 041b3704a3df0fd4a8e325e3044c3b5e, + type: 3} + propertyPath: m_Materials.Array.data[0] + value: + objectReference: {fileID: 2100000, guid: c99104857011a3d478b482de4b0de308, type: 2} + - target: {fileID: 1900073827432455217, guid: 041b3704a3df0fd4a8e325e3044c3b5e, + type: 3} + propertyPath: m_Name + value: BuildingTall + objectReference: {fileID: 0} + - target: {fileID: 5716881834153654731, guid: 041b3704a3df0fd4a8e325e3044c3b5e, + type: 3} + propertyPath: m_LocalPosition.x + value: 23.282486 + objectReference: {fileID: 0} + - target: {fileID: 5716881834153654731, guid: 041b3704a3df0fd4a8e325e3044c3b5e, + type: 3} + propertyPath: m_LocalPosition.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 5716881834153654731, guid: 041b3704a3df0fd4a8e325e3044c3b5e, + type: 3} + propertyPath: m_LocalPosition.z + value: 135.80537 + objectReference: {fileID: 0} + - target: {fileID: 5716881834153654731, guid: 041b3704a3df0fd4a8e325e3044c3b5e, + type: 3} + propertyPath: m_LocalRotation.x + value: -0 + objectReference: {fileID: 0} + - target: {fileID: 5716881834153654731, guid: 041b3704a3df0fd4a8e325e3044c3b5e, + type: 3} + propertyPath: m_LocalRotation.y + value: 0.25843188 + objectReference: {fileID: 0} + - target: {fileID: 5716881834153654731, guid: 041b3704a3df0fd4a8e325e3044c3b5e, + type: 3} + propertyPath: m_LocalRotation.z + value: -0 + objectReference: {fileID: 0} + - target: {fileID: 5716881834153654731, guid: 041b3704a3df0fd4a8e325e3044c3b5e, + type: 3} + propertyPath: m_LocalRotation.w + value: 0.9660295 + objectReference: {fileID: 0} + - target: {fileID: 5716881834153654731, guid: 041b3704a3df0fd4a8e325e3044c3b5e, + type: 3} + propertyPath: m_RootOrder + value: 9 + objectReference: {fileID: 0} + - target: {fileID: 5716881834153654731, guid: 041b3704a3df0fd4a8e325e3044c3b5e, + type: 3} + propertyPath: m_LocalEulerAnglesHint.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 5716881834153654731, guid: 041b3704a3df0fd4a8e325e3044c3b5e, + type: 3} + propertyPath: m_LocalEulerAnglesHint.y + value: 29.954 + objectReference: {fileID: 0} + - target: {fileID: 5716881834153654731, guid: 041b3704a3df0fd4a8e325e3044c3b5e, + type: 3} + propertyPath: m_LocalEulerAnglesHint.z + value: 0 + objectReference: {fileID: 0} + m_RemovedComponents: [] + m_SourcePrefab: {fileID: 100100000, guid: 041b3704a3df0fd4a8e325e3044c3b5e, type: 3} +--- !u!1001 &3109687787081122147 +PrefabInstance: + m_ObjectHideFlags: 0 + serializedVersion: 2 + m_Modification: + m_TransformParent: {fileID: 0} + m_Modifications: + - target: {fileID: 3109687787520293607, guid: 8d79384b550589d498c55817e4277af2, + type: 3} + propertyPath: m_havePropertiesChanged + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 3109687787520293607, guid: 8d79384b550589d498c55817e4277af2, + type: 3} + propertyPath: m_isInputParsingRequired + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 3109687788032145145, guid: 8d79384b550589d498c55817e4277af2, + type: 3} + propertyPath: m_Name + value: TimeDisplayCanvas + objectReference: {fileID: 0} + - target: {fileID: 3109687788032145145, guid: 8d79384b550589d498c55817e4277af2, + type: 3} + propertyPath: m_IsActive + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 3109687788032145148, guid: 8d79384b550589d498c55817e4277af2, + type: 3} + propertyPath: trackManager + value: + objectReference: {fileID: 810926067} + - target: {fileID: 3109687788032145148, guid: 8d79384b550589d498c55817e4277af2, + type: 3} + propertyPath: initialRacer + value: + objectReference: {fileID: 456848481} + - target: {fileID: 3109687788032145149, guid: 8d79384b550589d498c55817e4277af2, + type: 3} + propertyPath: m_LocalPosition.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 3109687788032145149, guid: 8d79384b550589d498c55817e4277af2, + type: 3} + propertyPath: m_LocalPosition.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 3109687788032145149, guid: 8d79384b550589d498c55817e4277af2, + type: 3} + propertyPath: m_LocalPosition.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 3109687788032145149, guid: 8d79384b550589d498c55817e4277af2, + type: 3} + propertyPath: m_LocalRotation.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 3109687788032145149, guid: 8d79384b550589d498c55817e4277af2, + type: 3} + propertyPath: m_LocalRotation.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 3109687788032145149, guid: 8d79384b550589d498c55817e4277af2, + type: 3} + propertyPath: m_LocalRotation.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 3109687788032145149, guid: 8d79384b550589d498c55817e4277af2, + type: 3} + propertyPath: m_LocalRotation.w + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 3109687788032145149, guid: 8d79384b550589d498c55817e4277af2, + type: 3} + propertyPath: m_RootOrder + value: 9 + objectReference: {fileID: 0} + - target: {fileID: 3109687788032145149, guid: 8d79384b550589d498c55817e4277af2, + type: 3} + propertyPath: m_LocalEulerAnglesHint.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 3109687788032145149, guid: 8d79384b550589d498c55817e4277af2, + type: 3} + propertyPath: m_LocalEulerAnglesHint.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 3109687788032145149, guid: 8d79384b550589d498c55817e4277af2, + type: 3} + propertyPath: m_LocalEulerAnglesHint.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 3109687788032145149, guid: 8d79384b550589d498c55817e4277af2, + type: 3} + propertyPath: m_AnchoredPosition.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 3109687788032145149, guid: 8d79384b550589d498c55817e4277af2, + type: 3} + propertyPath: m_AnchoredPosition.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 3109687788032145149, guid: 8d79384b550589d498c55817e4277af2, + type: 3} + propertyPath: m_SizeDelta.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 3109687788032145149, guid: 8d79384b550589d498c55817e4277af2, + type: 3} + propertyPath: m_SizeDelta.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 3109687788032145149, guid: 8d79384b550589d498c55817e4277af2, + type: 3} + propertyPath: m_AnchorMin.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 3109687788032145149, guid: 8d79384b550589d498c55817e4277af2, + type: 3} + propertyPath: m_AnchorMin.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 3109687788032145149, guid: 8d79384b550589d498c55817e4277af2, + type: 3} + propertyPath: m_AnchorMax.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 3109687788032145149, guid: 8d79384b550589d498c55817e4277af2, + type: 3} + propertyPath: m_AnchorMax.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 3109687788032145149, guid: 8d79384b550589d498c55817e4277af2, + type: 3} + propertyPath: m_Pivot.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 3109687788032145149, guid: 8d79384b550589d498c55817e4277af2, + type: 3} + propertyPath: m_Pivot.y + value: 0 + objectReference: {fileID: 0} + m_RemovedComponents: [] + m_SourcePrefab: {fileID: 100100000, guid: 8d79384b550589d498c55817e4277af2, type: 3} +--- !u!4 &4802209837285806718 stripped +Transform: + m_CorrespondingSourceObject: {fileID: 5716881834153654731, guid: 041b3704a3df0fd4a8e325e3044c3b5e, + type: 3} + m_PrefabInstance: {fileID: 1005026033483787189} + m_PrefabAsset: {fileID: 0} +--- !u!1001 &8473932218178274596 +PrefabInstance: + m_ObjectHideFlags: 0 + serializedVersion: 2 + m_Modification: + m_TransformParent: {fileID: 0} + m_Modifications: + - target: {fileID: 2550566963638454825, guid: 7f02e158c0e4d4ab09f78bb31f78bab8, + type: 3} + propertyPath: m_havePropertiesChanged + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 2550566963638454825, guid: 7f02e158c0e4d4ab09f78bb31f78bab8, + type: 3} + propertyPath: m_isInputParsingRequired + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 2722743759761485157, guid: 7f02e158c0e4d4ab09f78bb31f78bab8, + type: 3} + propertyPath: m_AnchorMin.y + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 2722743759761485157, guid: 7f02e158c0e4d4ab09f78bb31f78bab8, + type: 3} + propertyPath: m_AnchorMax.y + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 2722743759761485157, guid: 7f02e158c0e4d4ab09f78bb31f78bab8, + type: 3} + propertyPath: m_AnchoredPosition.x + value: 369.625 + objectReference: {fileID: 0} + - target: {fileID: 2722743759761485157, guid: 7f02e158c0e4d4ab09f78bb31f78bab8, + type: 3} + propertyPath: m_AnchoredPosition.y + value: -50 + objectReference: {fileID: 0} + - target: {fileID: 2722743759761485157, guid: 7f02e158c0e4d4ab09f78bb31f78bab8, + type: 3} + propertyPath: m_SizeDelta.x + value: 229.75 + objectReference: {fileID: 0} + - target: {fileID: 2722743759761485157, guid: 7f02e158c0e4d4ab09f78bb31f78bab8, + type: 3} + propertyPath: m_SizeDelta.y + value: 60 + objectReference: {fileID: 0} + - target: {fileID: 2722743761088141158, guid: 7f02e158c0e4d4ab09f78bb31f78bab8, + type: 3} + propertyPath: m_havePropertiesChanged + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 2722743761088141158, guid: 7f02e158c0e4d4ab09f78bb31f78bab8, + type: 3} + propertyPath: m_isInputParsingRequired + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 2821225496360582192, guid: 7f02e158c0e4d4ab09f78bb31f78bab8, + type: 3} + propertyPath: m_havePropertiesChanged + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 2821225496360582192, guid: 7f02e158c0e4d4ab09f78bb31f78bab8, + type: 3} + propertyPath: m_isInputParsingRequired + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 2821225496618436147, guid: 7f02e158c0e4d4ab09f78bb31f78bab8, + type: 3} + propertyPath: m_AnchorMin.y + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 2821225496618436147, guid: 7f02e158c0e4d4ab09f78bb31f78bab8, + type: 3} + propertyPath: m_AnchorMax.y + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 2821225496618436147, guid: 7f02e158c0e4d4ab09f78bb31f78bab8, + type: 3} + propertyPath: m_AnchoredPosition.x + value: 604.375 + objectReference: {fileID: 0} + - target: {fileID: 2821225496618436147, guid: 7f02e158c0e4d4ab09f78bb31f78bab8, + type: 3} + propertyPath: m_AnchoredPosition.y + value: -50 + objectReference: {fileID: 0} + - target: {fileID: 2821225496618436147, guid: 7f02e158c0e4d4ab09f78bb31f78bab8, + type: 3} + propertyPath: m_SizeDelta.x + value: 229.75 + objectReference: {fileID: 0} + - target: {fileID: 2821225496618436147, guid: 7f02e158c0e4d4ab09f78bb31f78bab8, + type: 3} + propertyPath: m_SizeDelta.y + value: 60 + objectReference: {fileID: 0} + - target: {fileID: 4009130065698333721, guid: 7f02e158c0e4d4ab09f78bb31f78bab8, + type: 3} + propertyPath: m_Name + value: MainMenuCanvas + objectReference: {fileID: 0} + - target: {fileID: 4009130065698333721, guid: 7f02e158c0e4d4ab09f78bb31f78bab8, + type: 3} + propertyPath: m_IsActive + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4009130065698333725, guid: 7f02e158c0e4d4ab09f78bb31f78bab8, + type: 3} + propertyPath: m_LocalPosition.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4009130065698333725, guid: 7f02e158c0e4d4ab09f78bb31f78bab8, + type: 3} + propertyPath: m_LocalPosition.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4009130065698333725, guid: 7f02e158c0e4d4ab09f78bb31f78bab8, + type: 3} + propertyPath: m_LocalPosition.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4009130065698333725, guid: 7f02e158c0e4d4ab09f78bb31f78bab8, + type: 3} + propertyPath: m_LocalRotation.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4009130065698333725, guid: 7f02e158c0e4d4ab09f78bb31f78bab8, + type: 3} + propertyPath: m_LocalRotation.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4009130065698333725, guid: 7f02e158c0e4d4ab09f78bb31f78bab8, + type: 3} + propertyPath: m_LocalRotation.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4009130065698333725, guid: 7f02e158c0e4d4ab09f78bb31f78bab8, + type: 3} + propertyPath: m_LocalRotation.w + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 4009130065698333725, guid: 7f02e158c0e4d4ab09f78bb31f78bab8, + type: 3} + propertyPath: m_RootOrder + value: 6 + objectReference: {fileID: 0} + - target: {fileID: 4009130065698333725, guid: 7f02e158c0e4d4ab09f78bb31f78bab8, + type: 3} + propertyPath: m_LocalEulerAnglesHint.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4009130065698333725, guid: 7f02e158c0e4d4ab09f78bb31f78bab8, + type: 3} + propertyPath: m_LocalEulerAnglesHint.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4009130065698333725, guid: 7f02e158c0e4d4ab09f78bb31f78bab8, + type: 3} + propertyPath: m_LocalEulerAnglesHint.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4009130065698333725, guid: 7f02e158c0e4d4ab09f78bb31f78bab8, + type: 3} + propertyPath: m_AnchoredPosition.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4009130065698333725, guid: 7f02e158c0e4d4ab09f78bb31f78bab8, + type: 3} + propertyPath: m_AnchoredPosition.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4009130065698333725, guid: 7f02e158c0e4d4ab09f78bb31f78bab8, + type: 3} + propertyPath: m_SizeDelta.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4009130065698333725, guid: 7f02e158c0e4d4ab09f78bb31f78bab8, + type: 3} + propertyPath: m_SizeDelta.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4009130065698333725, guid: 7f02e158c0e4d4ab09f78bb31f78bab8, + type: 3} + propertyPath: m_AnchorMin.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4009130065698333725, guid: 7f02e158c0e4d4ab09f78bb31f78bab8, + type: 3} + propertyPath: m_AnchorMin.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4009130065698333725, guid: 7f02e158c0e4d4ab09f78bb31f78bab8, + type: 3} + propertyPath: m_AnchorMax.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4009130065698333725, guid: 7f02e158c0e4d4ab09f78bb31f78bab8, + type: 3} + propertyPath: m_AnchorMax.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4009130065698333725, guid: 7f02e158c0e4d4ab09f78bb31f78bab8, + type: 3} + propertyPath: m_Pivot.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4009130065698333725, guid: 7f02e158c0e4d4ab09f78bb31f78bab8, + type: 3} + propertyPath: m_Pivot.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 4009130065942123197, guid: 7f02e158c0e4d4ab09f78bb31f78bab8, + type: 3} + propertyPath: m_havePropertiesChanged + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 4009130065942123197, guid: 7f02e158c0e4d4ab09f78bb31f78bab8, + type: 3} + propertyPath: m_isInputParsingRequired + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 4009130065942123197, guid: 7f02e158c0e4d4ab09f78bb31f78bab8, + type: 3} + propertyPath: m_text + value: ZYW's Game + objectReference: {fileID: 0} + - target: {fileID: 4858264529848534282, guid: 7f02e158c0e4d4ab09f78bb31f78bab8, + type: 3} + propertyPath: m_havePropertiesChanged + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 4858264529848534282, guid: 7f02e158c0e4d4ab09f78bb31f78bab8, + type: 3} + propertyPath: m_isInputParsingRequired + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 4858264531726499593, guid: 7f02e158c0e4d4ab09f78bb31f78bab8, + type: 3} + propertyPath: m_AnchorMin.y + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 4858264531726499593, guid: 7f02e158c0e4d4ab09f78bb31f78bab8, + type: 3} + propertyPath: m_AnchorMax.y + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 4858264531726499593, guid: 7f02e158c0e4d4ab09f78bb31f78bab8, + type: 3} + propertyPath: m_AnchoredPosition.x + value: 839.125 + objectReference: {fileID: 0} + - target: {fileID: 4858264531726499593, guid: 7f02e158c0e4d4ab09f78bb31f78bab8, + type: 3} + propertyPath: m_AnchoredPosition.y + value: -50 + objectReference: {fileID: 0} + - target: {fileID: 4858264531726499593, guid: 7f02e158c0e4d4ab09f78bb31f78bab8, + type: 3} + propertyPath: m_SizeDelta.x + value: 229.75 + objectReference: {fileID: 0} + - target: {fileID: 4858264531726499593, guid: 7f02e158c0e4d4ab09f78bb31f78bab8, + type: 3} + propertyPath: m_SizeDelta.y + value: 60 + objectReference: {fileID: 0} + - target: {fileID: 9051402262044422234, guid: 7f02e158c0e4d4ab09f78bb31f78bab8, + type: 3} + propertyPath: m_AnchorMin.y + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 9051402262044422234, guid: 7f02e158c0e4d4ab09f78bb31f78bab8, + type: 3} + propertyPath: m_AnchorMax.y + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 9051402262044422234, guid: 7f02e158c0e4d4ab09f78bb31f78bab8, + type: 3} + propertyPath: m_AnchoredPosition.x + value: 134.875 + objectReference: {fileID: 0} + - target: {fileID: 9051402262044422234, guid: 7f02e158c0e4d4ab09f78bb31f78bab8, + type: 3} + propertyPath: m_AnchoredPosition.y + value: -50 + objectReference: {fileID: 0} + - target: {fileID: 9051402262044422234, guid: 7f02e158c0e4d4ab09f78bb31f78bab8, + type: 3} + propertyPath: m_SizeDelta.x + value: 229.75 + objectReference: {fileID: 0} + - target: {fileID: 9051402262044422234, guid: 7f02e158c0e4d4ab09f78bb31f78bab8, + type: 3} + propertyPath: m_SizeDelta.y + value: 60 + objectReference: {fileID: 0} + - target: {fileID: 9051402262856616537, guid: 7f02e158c0e4d4ab09f78bb31f78bab8, + type: 3} + propertyPath: m_havePropertiesChanged + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 9051402262856616537, guid: 7f02e158c0e4d4ab09f78bb31f78bab8, + type: 3} + propertyPath: m_isInputParsingRequired + value: 1 + objectReference: {fileID: 0} + m_RemovedComponents: [] + m_SourcePrefab: {fileID: 100100000, guid: 7f02e158c0e4d4ab09f78bb31f78bab8, type: 3} diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Scenes/SampleScene.unity.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Scenes/SampleScene.unity.meta" new file mode 100644 index 00000000..7d51c3e7 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Scenes/SampleScene.unity.meta" @@ -0,0 +1,7 @@ +fileFormatVersion: 2 +guid: f8c7069e6d9b2124b861144ca83d31e8 +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Scenes/SampleSceneProfiles.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Scenes/SampleSceneProfiles.meta" new file mode 100644 index 00000000..4e252e59 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Scenes/SampleSceneProfiles.meta" @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 7b0b998cae1e9f54c997c311b34039bb +folderAsset: yes +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Scenes/SampleSceneProfiles/PostProcessVolume Profile.asset" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Scenes/SampleSceneProfiles/PostProcessVolume Profile.asset" new file mode 100644 index 00000000..53118972 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Scenes/SampleSceneProfiles/PostProcessVolume Profile.asset" @@ -0,0 +1,113 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!114 &11400000 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 8e6292b2c06870d4495f009f912b9600, type: 3} + m_Name: PostProcessVolume Profile + m_EditorClassIdentifier: + settings: + - {fileID: 114714704474358142} + - {fileID: 114934171140021752} +--- !u!114 &114714704474358142 +MonoBehaviour: + m_ObjectHideFlags: 3 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: c1cb7e9e120078f43bce4f0b1be547a7, type: 3} + m_Name: AmbientOcclusion + m_EditorClassIdentifier: + active: 1 + enabled: + overrideState: 1 + value: 1 + mode: + overrideState: 1 + value: 0 + intensity: + overrideState: 1 + value: 1 + color: + overrideState: 1 + value: {r: 0.28835884, g: 0.32125312, b: 0.4528302, a: 1} + ambientOnly: + overrideState: 0 + value: 1 + noiseFilterTolerance: + overrideState: 0 + value: 0 + blurTolerance: + overrideState: 0 + value: -4.6 + upsampleTolerance: + overrideState: 0 + value: -12 + thicknessModifier: + overrideState: 1 + value: 2.33 + directLightingStrength: + overrideState: 0 + value: 0 + radius: + overrideState: 1 + value: 0.5 + quality: + overrideState: 1 + value: 1 +--- !u!114 &114934171140021752 +MonoBehaviour: + m_ObjectHideFlags: 3 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 48a79b01ea5641d4aa6daa2e23605641, type: 3} + m_Name: Bloom + m_EditorClassIdentifier: + active: 1 + enabled: + overrideState: 1 + value: 1 + intensity: + overrideState: 1 + value: 3 + threshold: + overrideState: 1 + value: 1 + softKnee: + overrideState: 1 + value: 0.5 + clamp: + overrideState: 1 + value: 65472 + diffusion: + overrideState: 1 + value: 5 + anamorphicRatio: + overrideState: 0 + value: 0 + color: + overrideState: 0 + value: {r: 1, g: 1, b: 1, a: 1} + fastMode: + overrideState: 1 + value: 1 + dirtTexture: + overrideState: 0 + value: {fileID: 0} + defaultState: 1 + dirtIntensity: + overrideState: 0 + value: 0 diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Scenes/SampleSceneProfiles/PostProcessVolume Profile.asset.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Scenes/SampleSceneProfiles/PostProcessVolume Profile.asset.meta" new file mode 100644 index 00000000..dad241c0 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Scenes/SampleSceneProfiles/PostProcessVolume Profile.asset.meta" @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 38c256f7cfdc9494788a6a863582f97d +NativeFormatImporter: + externalObjects: {} + mainObjectFileID: 11400000 + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Scripts.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Scripts.meta" new file mode 100644 index 00000000..a907cfc5 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Scripts.meta" @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: be811868f362849ba9f53bd143281996 +folderAsset: yes +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Scripts/KartSystems.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Scripts/KartSystems.meta" new file mode 100644 index 00000000..f8d4f26e --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Scripts/KartSystems.meta" @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: aca815be79b22ef46ada315cf36b0e61 +folderAsset: yes +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Scripts/KartSystems/Inputs.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Scripts/KartSystems/Inputs.meta" new file mode 100644 index 00000000..55318894 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Scripts/KartSystems/Inputs.meta" @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 388d7848cc7573948929116b48eda9bd +folderAsset: yes +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Scripts/KartSystems/Inputs/GamepadInput.cs" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Scripts/KartSystems/Inputs/GamepadInput.cs" new file mode 100644 index 00000000..76f4ef30 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Scripts/KartSystems/Inputs/GamepadInput.cs" @@ -0,0 +1,76 @@ +using UnityEngine; + +namespace KartGame.KartSystems +{ + /// + /// A basic gamepad implementation of the IInput interface for all the input information a kart needs. + /// + public class GamepadInput : MonoBehaviour, IInput + { + public float Acceleration + { + get { return m_Acceleration; } + } + public float Steering + { + get { return m_Steering; } + } + public bool BoostPressed + { + get { return m_BoostPressed; } + } + public bool FirePressed + { + get { return m_FirePressed; } + } + public bool HopPressed + { + get { return m_HopPressed; } + } + public bool HopHeld + { + get { return m_HopHeld; } + } + + float m_Acceleration; + float m_Steering; + bool m_HopPressed; + bool m_HopHeld; + bool m_BoostPressed; + bool m_FirePressed; + + bool m_FixedUpdateHappened; + + void Update () + { + if (Input.GetButton ("Brake")) + m_Acceleration = -1f; + else if (Input.GetButton ("Accelerate")) + m_Acceleration = 1f; + else + m_Acceleration = 0f; + + m_Steering = Input.GetAxis ("Horizontal"); + + m_HopHeld = Input.GetButton ("Hop"); + + if (m_FixedUpdateHappened) + { + m_FixedUpdateHappened = false; + + m_HopPressed = false; + m_BoostPressed = false; + m_FirePressed = false; + } + + m_HopPressed |= Input.GetButtonDown ("Hop"); + m_BoostPressed |= Input.GetButtonDown ("Boost"); + m_FirePressed |= Input.GetButtonDown ("Fire"); + } + + void FixedUpdate () + { + m_FixedUpdateHappened = true; + } + } +} \ No newline at end of file diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Scripts/KartSystems/Inputs/GamepadInput.cs.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Scripts/KartSystems/Inputs/GamepadInput.cs.meta" new file mode 100644 index 00000000..3a1b1a95 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Scripts/KartSystems/Inputs/GamepadInput.cs.meta" @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: b465c33664cb50e4e8c1ba2c937b27f9 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Scripts/KartSystems/Inputs/IInput.cs" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Scripts/KartSystems/Inputs/IInput.cs" new file mode 100644 index 00000000..6d8d0387 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Scripts/KartSystems/Inputs/IInput.cs" @@ -0,0 +1,40 @@ +using UnityEngine; + +namespace KartGame.KartSystems +{ + /// + /// An interface representing the input controls a kart needs. + /// + public interface IInput + { + /// + /// Used for determining whether the kart should increase its forward speed. + /// + float Acceleration { get; } + + /// + /// Used for turning the kart left and right. + /// + float Steering { get; } + + /// + /// Not implemented by this template. Potentially used for activating a boost. + /// + bool BoostPressed { get; } + + /// + /// Not implemented by this template. Potentially used for activating weapons/pickups. + /// + bool FirePressed { get; } + + /// + /// Used for determining when the kart should hop. Also used to initiate a drift. + /// + bool HopPressed { get; } + + /// + /// Used to determine when a drift should continue. + /// + bool HopHeld { get; } + } +} \ No newline at end of file diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Scripts/KartSystems/Inputs/IInput.cs.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Scripts/KartSystems/Inputs/IInput.cs.meta" new file mode 100644 index 00000000..75b39ab0 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Scripts/KartSystems/Inputs/IInput.cs.meta" @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 7a15cc26383ce5a47b722077c945de4a +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Scripts/KartSystems/Inputs/KeyboardInput.cs" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Scripts/KartSystems/Inputs/KeyboardInput.cs" new file mode 100644 index 00000000..fae74fc5 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Scripts/KartSystems/Inputs/KeyboardInput.cs" @@ -0,0 +1,83 @@ +using System.Collections; +using System.Collections.Generic; +using UnityEngine; + +namespace KartGame.KartSystems +{ + /// + /// A basic keyboard implementation of the IInput interface for all the input information a kart needs. + /// + public class KeyboardInput : MonoBehaviour, IInput + { + public float Acceleration + { + get { return m_Acceleration; } + } + public float Steering + { + get { return m_Steering; } + } + public bool BoostPressed + { + get { return m_BoostPressed; } + } + public bool FirePressed + { + get { return m_FirePressed; } + } + public bool HopPressed + { + get { return m_HopPressed; } + } + public bool HopHeld + { + get { return m_HopHeld; } + } + + float m_Acceleration; + float m_Steering; + bool m_HopPressed; + bool m_HopHeld; + bool m_BoostPressed; + bool m_FirePressed; + + bool m_FixedUpdateHappened; + + void Update () + { + if (Input.GetKey (KeyCode.UpArrow)) + m_Acceleration = 1f; + else if (Input.GetKey (KeyCode.DownArrow)) + m_Acceleration = -1f; + else + m_Acceleration = 0f; + + if (Input.GetKey (KeyCode.LeftArrow) && !Input.GetKey (KeyCode.RightArrow)) + m_Steering = -1f; + else if (!Input.GetKey (KeyCode.LeftArrow) && Input.GetKey (KeyCode.RightArrow)) + m_Steering = 1f; + else + m_Steering = 0f; + + m_HopHeld = Input.GetKey (KeyCode.Space); + + if (m_FixedUpdateHappened) + { + m_FixedUpdateHappened = false; + + m_HopPressed = false; + m_BoostPressed = false; + m_FirePressed = false; + } + + m_HopPressed |= Input.GetKeyDown (KeyCode.Space); + m_BoostPressed |= Input.GetKeyDown (KeyCode.RightShift); + m_FirePressed |= Input.GetKeyDown (KeyCode.RightControl); + } + + void FixedUpdate () + { + m_FixedUpdateHappened = true; + } + } +} \ No newline at end of file diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Scripts/KartSystems/Inputs/KeyboardInput.cs.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Scripts/KartSystems/Inputs/KeyboardInput.cs.meta" new file mode 100644 index 00000000..e95e6704 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Scripts/KartSystems/Inputs/KeyboardInput.cs.meta" @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 7f292ffb948323c49ac31e54ff737ea2 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Scripts/KartSystems/KartAnimation.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Scripts/KartSystems/KartAnimation.meta" new file mode 100644 index 00000000..c10fce44 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Scripts/KartSystems/KartAnimation.meta" @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 8c28b51a68d30a54fae72d59bdc4f3e0 +folderAsset: yes +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Scripts/KartSystems/KartAnimation/KartAnimation.cs" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Scripts/KartSystems/KartAnimation/KartAnimation.cs" new file mode 100644 index 00000000..a234907f --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Scripts/KartSystems/KartAnimation/KartAnimation.cs" @@ -0,0 +1,181 @@ +using System; +using UnityEngine; +using Object = UnityEngine.Object; + +namespace KartGame.KartSystems +{ + /// + /// This class handles all the canned and procedural animation for the kart, giving it a more pleasing appearance. + /// + [DefaultExecutionOrder(100)] + public class KartAnimation : MonoBehaviour + { + /// + /// A class representing an individual wheel on a kart. This can be used to represent either front or back wheels. + /// + [Serializable] public class Wheel + { + [Tooltip ("A reference to the transform of the wheel.")] + public Transform wheelTransform; + [Tooltip ("A vector representing the axel around which the wheel turns as the kart moves forward and backward. This is relative to the wheel.")] + public Vector3 axelAxis; + [Tooltip ("A vector around which the wheel will turn as the kart steers. This is relative to the kart and will be ignored for the back wheels.")] + public Vector3 steeringAxis; + + Vector3 m_NormalizedAxelAxis; + Vector3 m_NormalizedSteeringAxis; + Quaternion m_SteerlessLocalRotation; + + /// + /// This initialises the cached values that the Wheel uses for various operations and should be called once before any other methods. + /// + public void Setup () + { + m_NormalizedAxelAxis = axelAxis.normalized; + m_NormalizedSteeringAxis = steeringAxis.normalized; + m_SteerlessLocalRotation = wheelTransform.localRotation; + } + + /// + /// Some rotations are made relative to a default rotation. This should be called to store that rotation. + /// + public void StoreDefaultRotation () + { + m_SteerlessLocalRotation = wheelTransform.localRotation; + } + + /// + /// Some rotations are made relative to a default rotation. This restores that default rotation. + /// + public void SetToDefaultRotation () + { + wheelTransform.localRotation = m_SteerlessLocalRotation; + } + + /// + /// Rotates the wheel around its axel. + /// + /// The angle in degrees by which the wheel rotates. + public void TurnWheel (float rotationAngle) + { + wheelTransform.Rotate (m_NormalizedAxelAxis, rotationAngle, Space.Self); + } + + /// + /// Rotates the wheel around its steering axis. + /// + /// The angle from a neutral position that the wheel should face. + public void SteerWheel (float rotationAngle) + { + wheelTransform.Rotate (m_NormalizedSteeringAxis, rotationAngle, Space.World); + } + } + + + [Tooltip ("A reference to the input that the kart being animated is using for movement. This must implement IInput.")] + [RequireInterface (typeof(IInput))] + public Object input; + [Tooltip ("A reference to the animator of the humanoid character driving the kart.")] + public Animator playerAnimator; + [Tooltip ("A reference to a script that provides information about the kart's movement, usually the KartMovmeent script. This must implement IKartInfo.")] + [RequireInterface (typeof(IKartInfo))] + public Object kartMovement; + + [Space] + [Tooltip ("The damping for the appearance of steering compared to the input. The higher the number the less damping.")] + public float steeringAnimationDamping = 10f; + + [Space] + [Tooltip ("A reference to the transform that represents the steering wheel.")] + public Transform steeringWheel; + [Tooltip ("The maximum angle in degrees that the steering wheel can be turned away from its default position, when the Steering input is either 1 or -1.")] + public float maxSteeringWheelAngle = 90f; + [Tooltip ("The axis, local to the steering wheel, around which the steering wheel should turn when steering.")] + public Vector3 steeringWheelRotationAxis; + + [Space] + [Tooltip ("The radius of the front wheels of the kart. Used to calculate how far the front wheels need to turn given the speed of the kart.")] + public float frontWheelRadius; + [Tooltip ("The radius of the rear wheels of the kart. Used to calculate how far the rear wheels need to turn given the speed of the kart.")] + public float rearWheelRadius; + [Tooltip ("The maximum angle in degrees that the front wheels can be turned away from their default positions, when the Steering input is either 1 or -1.")] + public float maxSteeringAngle; + [Tooltip ("Information referring to the front left wheel of the kart.")] + public Wheel frontLeftWheel; + [Tooltip ("Information referring to the front right wheel of the kart.")] + public Wheel frontRightWheel; + [Tooltip ("Information referring to the rear left wheel of the kart.")] + public Wheel rearLeftWheel; + [Tooltip ("Information referring to the rear right wheel of the kart.")] + public Wheel rearRightWheel; + + IInput m_Input; + IKartInfo m_KartMovement; + Quaternion m_DefaultSteeringWheelLocalRotation; + Vector3 m_NormalizedSteeringWheelRotationAxis; + float m_InverseFrontWheelRadius; + float m_InverseRearWheelRadius; + float m_SmoothedSteeringInput; + + static readonly int k_HashSteering = Animator.StringToHash ("Steering"); + static readonly int k_HashGrounded = Animator.StringToHash ("Grounded"); + + void Start () + { + frontLeftWheel.Setup (); + frontRightWheel.Setup (); + rearLeftWheel.Setup (); + rearRightWheel.Setup (); + + m_KartMovement = kartMovement as IKartInfo; + + m_Input = input as IInput; + m_DefaultSteeringWheelLocalRotation = steeringWheel.localRotation; + m_NormalizedSteeringWheelRotationAxis = steeringWheelRotationAxis.normalized; + m_InverseFrontWheelRadius = 1f / frontWheelRadius; + m_InverseRearWheelRadius = 1f / rearWheelRadius; + } + + void FixedUpdate () + { + m_SmoothedSteeringInput = Mathf.MoveTowards (m_SmoothedSteeringInput, m_Input.Steering, steeringAnimationDamping * Time.deltaTime); + + playerAnimator.SetFloat (k_HashSteering, m_SmoothedSteeringInput); + playerAnimator.SetBool (k_HashGrounded, m_KartMovement.IsGrounded); + } + + void LateUpdate () + { + SteeringWheelRotation (); + RotateWheels (); + } + + void SteeringWheelRotation () + { + Vector3 axisRotation = maxSteeringWheelAngle * m_SmoothedSteeringInput * m_NormalizedSteeringWheelRotationAxis; + steeringWheel.localRotation = m_DefaultSteeringWheelLocalRotation * Quaternion.Euler (axisRotation); + } + + void RotateWheels () + { + frontLeftWheel.SetToDefaultRotation (); + frontRightWheel.SetToDefaultRotation (); + + float speed = m_KartMovement.LocalSpeed; + float rotationAngle = speed * Time.deltaTime * m_InverseFrontWheelRadius * Mathf.Rad2Deg; + frontLeftWheel.TurnWheel (rotationAngle); + frontRightWheel.TurnWheel (rotationAngle); + + rotationAngle = speed * Time.deltaTime * m_InverseRearWheelRadius * Mathf.Rad2Deg; + rearLeftWheel.TurnWheel (rotationAngle); + rearRightWheel.TurnWheel (rotationAngle); + + frontLeftWheel.StoreDefaultRotation (); + frontRightWheel.StoreDefaultRotation (); + + rotationAngle = m_SmoothedSteeringInput * maxSteeringAngle; + frontLeftWheel.SteerWheel (rotationAngle); + frontRightWheel.SteerWheel (rotationAngle); + } + } +} \ No newline at end of file diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Scripts/KartSystems/KartAnimation/KartAnimation.cs.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Scripts/KartSystems/KartAnimation/KartAnimation.cs.meta" new file mode 100644 index 00000000..b3361d25 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Scripts/KartSystems/KartAnimation/KartAnimation.cs.meta" @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 28e237446f589d9458c806d922e78789 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Scripts/KartSystems/KartAudio.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Scripts/KartSystems/KartAudio.meta" new file mode 100644 index 00000000..249a8b15 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Scripts/KartSystems/KartAudio.meta" @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: ea767585e95c8c045b40ccf97c630adc +folderAsset: yes +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Scripts/KartSystems/KartAudio/EngineAudio.Stroke.cs" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Scripts/KartSystems/KartAudio/EngineAudio.Stroke.cs" new file mode 100644 index 00000000..ee7bf4ee --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Scripts/KartSystems/KartAudio/EngineAudio.Stroke.cs" @@ -0,0 +1,50 @@ +using UnityEngine; + +namespace KartGame.KartSystems +{ + public partial class EngineAudio + { + /// + /// Represents audio data for a single stroke of an engine (2 strokes per revolution) + /// + [System.Serializable] public struct Stroke + { + public AudioClip clip; + [Range (0, 1)] + public float gain; + internal float[] buffer; + internal int position; + + internal void Reset () => position = 0; + + internal float Sample () + { + if (position < buffer.Length) + { + var s = buffer[position]; + position++; + return s * gain; + } + + return 0; + } + + internal void Init () + { + //if no clip is available use a noisy sine wave as a place holder. + //else initialise buffer of samples from clip data. + if (clip == null) + { + buffer = new float[4096]; + for (var i = 0; i < buffer.Length; i++) + buffer[i] = Mathf.Sin (i * (1f / 44100) * 440) + Random.Range (-1, 1) * 0.05f; + } + else + { + buffer = new float[clip.samples]; + clip.GetData (buffer, 0); + } + } + } + } +} \ No newline at end of file diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Scripts/KartSystems/KartAudio/EngineAudio.Stroke.cs.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Scripts/KartSystems/KartAudio/EngineAudio.Stroke.cs.meta" new file mode 100644 index 00000000..2e7f60ec --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Scripts/KartSystems/KartAudio/EngineAudio.Stroke.cs.meta" @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 0640bbd2b878a4d168505f3ed4c32fd4 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Scripts/KartSystems/KartAudio/EngineAudio.cs" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Scripts/KartSystems/KartAudio/EngineAudio.cs" new file mode 100644 index 00000000..38468144 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Scripts/KartSystems/KartAudio/EngineAudio.cs" @@ -0,0 +1,174 @@ +using UnityEngine; + +namespace KartGame.KartSystems +{ + /// + /// A class which produces audio based on the speed that the kart is going. + /// + public partial class EngineAudio : MonoBehaviour + { + [RequireInterface(typeof(IKartInfo))] + public Object kartInfo; + + [Range(0, 1)] + public float RPM; + [Space] + [Tooltip("The minimum possible RPM of the engine.")] + public float minRPM = 900; + [Tooltip("The maximum possible RPM of the engine.")] + public float maxRPM = 10000; + [Space] + [Tooltip("Increases randomness in engine audio.")] + public float lumpyCamFactor = 0.05f; + [Space] + [Tooltip("Volume when at mininum RPM")] + public float minVolume = 0.2f; + [Tooltip("Volume when at maximum RPM")] + public float maxVolume = 1.2f; + [Space] + [Tooltip("Smoothing of wave when a new stroke begins.")] + public float strokeDamping = 0.1f; + [Space] + [Tooltip("Audio configuration for each engine stroke.")] + public Stroke intake, compression, combustion, exhaust; + [Tooltip("Map RPM to RPM^3")] + public bool usePow = false; + + IKartInfo m_KartInfo; + float m_NextStrokeTime; + float m_Time; + float m_SecondsPerSample; + int m_Stroke; + float[] m_RandomBuffer; + float m_DeltaRPM; + float m_LastRPM; + float m_LastSampleL, m_LastSampleR; + float m_Damper = 1f; + float m_Volume = 1; + + void Awake() + { + m_KartInfo = kartInfo as IKartInfo; + m_RandomBuffer = new float[97]; + for (var i = 0; i < m_RandomBuffer.Length; i++) + m_RandomBuffer[i] = Random.Range(-1, 1); + intake.Init(); + compression.Init(); + combustion.Init(); + exhaust.Init(); + + m_Stroke = 0; + m_Time = 0; + m_SecondsPerSample = 1f / AudioSettings.outputSampleRate; + } + + void Update() + { + RPM = m_KartInfo.LocalSpeed / m_KartInfo.CurrentStats.topSpeed; + m_DeltaRPM = RPM - m_LastRPM; + + //damp the movement of m_LastRPM + m_LastRPM = Mathf.Lerp(m_LastRPM, RPM, Time.deltaTime * 100); + if (Time.timeScale < 1) + m_Volume = 0; + else + m_Volume = 1; + } + + void OnAudioFilterRead(float[] data, int channels) + { + if (channels != 2) + return; + var r = usePow ? m_LastRPM * m_LastRPM * m_LastRPM : m_LastRPM; + var gain = Mathf.Lerp(minVolume, maxVolume, r); + + //4 strokes per revolution + var strokeDuration = 1f / ((Mathf.Lerp(minRPM, maxRPM, r) / 60f) * 2); + + for (var i = 0; i < data.Length; i += 2) + { + m_Time += m_SecondsPerSample; + + //a small random value use to mimic a "lumpy cam". + var rnd = m_RandomBuffer[i % 97] * lumpyCamFactor; + + //is it time for the next stroke? + if (m_Time >= m_NextStrokeTime) + { + switch (m_Stroke) + { + case 0: + intake.Reset(); + break; + case 1: + compression.Reset(); + break; + case 2: + combustion.Reset(); + break; + case 3: + exhaust.Reset(); + break; + } + + //increase the stroke counter + m_Stroke++; + if (m_Stroke >= 4) m_Stroke = 0; + + //next stroke time has lump cam factor applied when rpm is decreasing (throttling down). + m_NextStrokeTime += strokeDuration + (strokeDuration * rnd * (m_DeltaRPM < 0 ? 1 : 0)); + + //damping resets every stroke, helps removes clicks and improves transition between strokes. + m_Damper = 0; + } + + var sampleL = 0f; + var sampleR = 0f; + + //In a 4 cylinder engine, all strokes would be playing simulataneously. + switch (m_Stroke) + { + case 0: + sampleL += intake.Sample() * rnd; + sampleR += compression.Sample(); + sampleL += combustion.Sample(); + sampleR += exhaust.Sample(); + break; + case 1: + sampleR += intake.Sample(); + sampleL += compression.Sample() * rnd; + sampleR += combustion.Sample(); + sampleL += exhaust.Sample(); + break; + case 2: + sampleR += intake.Sample(); + sampleR += compression.Sample(); + sampleL += combustion.Sample() * rnd; + sampleL += exhaust.Sample(); + break; + case 3: + sampleL += intake.Sample(); + sampleL += compression.Sample(); + sampleR += combustion.Sample(); + sampleR += exhaust.Sample() * rnd; + break; + } + + m_Damper += strokeDamping; + if (m_Damper > 1) m_Damper = 1; + + //smooth out samples between strokes + sampleL = m_LastSampleL + (sampleL - m_LastSampleL) * m_Damper; + sampleR = m_LastSampleR + (sampleR - m_LastSampleR) * m_Damper; + sampleL = Mathf.Clamp(sampleL * gain, -1, 1); + sampleR = Mathf.Clamp(sampleR * gain, -1, 1); + data[i + 0] += sampleL + (sampleR * 0.75f); + data[i + 0] *= m_Volume; + data[i + 1] += sampleR + (sampleL * 0.75f); + data[i + 1] *= m_Volume; + m_LastSampleL = sampleL; + m_LastSampleR = sampleR; + } + } + } +} \ No newline at end of file diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Scripts/KartSystems/KartAudio/EngineAudio.cs.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Scripts/KartSystems/KartAudio/EngineAudio.cs.meta" new file mode 100644 index 00000000..78194b73 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Scripts/KartSystems/KartAudio/EngineAudio.cs.meta" @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 5a8d3b9b9ede9455fb5b3aa0b44ed515 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Scripts/KartSystems/KartColliders.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Scripts/KartSystems/KartColliders.meta" new file mode 100644 index 00000000..c12a4ae9 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Scripts/KartSystems/KartColliders.meta" @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 7139987e89ea1414a8c99904dd567fe7 +folderAsset: yes +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Scripts/KartSystems/KartColliders/IKartCollider.cs" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Scripts/KartSystems/KartColliders/IKartCollider.cs" new file mode 100644 index 00000000..49e59ee5 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Scripts/KartSystems/KartColliders/IKartCollider.cs" @@ -0,0 +1,18 @@ +using UnityEngine; + +namespace KartGame.KartSystems +{ + /// + /// Should be implemented by MonoBehaviours which are on objects with which a kart can collide. + /// + public interface IKartCollider + { + /// + /// Should be used to change the velocity of a kart when it collides with this object. + /// + /// The kart colliding with this object. + /// Data about the collision. + /// The velocity of the kart after it has been modified by this collision. + Vector3 ModifyVelocity (IKartInfo collidingKart, RaycastHit collisionHit); + } +} \ No newline at end of file diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Scripts/KartSystems/KartColliders/IKartCollider.cs.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Scripts/KartSystems/KartColliders/IKartCollider.cs.meta" new file mode 100644 index 00000000..8e78ee57 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Scripts/KartSystems/KartColliders/IKartCollider.cs.meta" @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: e75498d5401813d479ee582ab027b040 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Scripts/KartSystems/KartColliders/WallCollider.cs" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Scripts/KartSystems/KartColliders/WallCollider.cs" new file mode 100644 index 00000000..ed7ba595 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Scripts/KartSystems/KartColliders/WallCollider.cs" @@ -0,0 +1,28 @@ +using UnityEngine; + +namespace KartGame.KartSystems +{ + /// + /// This class should be placed on all wall gameobjects such that the kart can react correctly to them. + /// + [RequireComponent (typeof(Collider))] public class WallCollider : MonoBehaviour, IKartCollider + { + [Tooltip ("The amount by which the kart bounces off the wall. A value of 0.1 means 1.1 times the velocity into the wall is the velocity away from the wall. A minimum value of 0.1 is suggested.")] + public float bounciness = 0.1f; + + public Vector3 ModifyVelocity (IKartInfo collidingKart, RaycastHit collisionHit) + { + //if the normal of collision points almost straight up or down, don't bounce + if (Mathf.Abs(Vector3.Dot(collisionHit.normal, Vector3.up)) > .2f) return collidingKart.Velocity; + + Vector3 modifiedVelocity = collidingKart.Velocity; + + if (collidingKart.IsGrounded) + modifiedVelocity = Vector3.ProjectOnPlane (modifiedVelocity, collidingKart.CurrentGroundInfo.normal); + + modifiedVelocity -= Vector3.Project (modifiedVelocity, collisionHit.normal) * (1f + bounciness); + + return modifiedVelocity; + } + } +} \ No newline at end of file diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Scripts/KartSystems/KartColliders/WallCollider.cs.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Scripts/KartSystems/KartColliders/WallCollider.cs.meta" new file mode 100644 index 00000000..6feb6816 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Scripts/KartSystems/KartColliders/WallCollider.cs.meta" @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: ca4c92f9d8625e04b85d2ad57bf3ecbd +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Scripts/KartSystems/KartModifiers.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Scripts/KartSystems/KartModifiers.meta" new file mode 100644 index 00000000..2744bf66 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Scripts/KartSystems/KartModifiers.meta" @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: f9225183045742e408081177cc989c4e +folderAsset: yes +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Scripts/KartSystems/KartModifiers/AddativeKartModifier.cs" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Scripts/KartSystems/KartModifiers/AddativeKartModifier.cs" new file mode 100644 index 00000000..dcaef360 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Scripts/KartSystems/KartModifiers/AddativeKartModifier.cs" @@ -0,0 +1,77 @@ +using System; +using UnityEngine; + +namespace KartGame.KartSystems +{ + /// + /// A plain serializable class that takes the current stats and adds to each. + /// + [Serializable] public class AddativeKartModifier : IKartModifier + { + [Tooltip ("The stats to be added to the current stats.")] + public KartStats modifiers; + + /// + /// Initialises the KartStats to a default value of 0. + /// + public AddativeKartModifier () + { + modifiers = new KartStats (0f); + } + + public float ModifyAcceleration (float acceleration) + { + return modifiers.acceleration + acceleration; + } + + public float ModifyBraking (float braking) + { + return modifiers.braking + braking; + } + + public float ModifyCoastingDrag (float coastingDrag) + { + return modifiers.coastingDrag + coastingDrag; + } + + public float ModifyGravity (float gravity) + { + return modifiers.gravity + gravity; + } + + public float ModifyGrip (float grip) + { + return modifiers.grip + grip; + } + + public float ModifyHopHeight (float hopHeight) + { + return modifiers.hopHeight + hopHeight; + } + + public float ModifyReverseAcceleration (float reverseAcceleration) + { + return modifiers.reverseAcceleration + reverseAcceleration; + } + + public float ModifyReverseSpeed (float reverseSpeed) + { + return modifiers.reverseSpeed + reverseSpeed; + } + + public float ModifyTopSpeed (float topSpeed) + { + return modifiers.topSpeed + topSpeed; + } + + public float ModifyTurnSpeed (float turnSpeed) + { + return modifiers.turnSpeed + turnSpeed; + } + + public float ModifyWeight (float weight) + { + return modifiers.weight + weight; + } + } +} \ No newline at end of file diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Scripts/KartSystems/KartModifiers/AddativeKartModifier.cs.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Scripts/KartSystems/KartModifiers/AddativeKartModifier.cs.meta" new file mode 100644 index 00000000..5488e18a --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Scripts/KartSystems/KartModifiers/AddativeKartModifier.cs.meta" @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 13d90280eb98de543912c65b4cd09d06 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Scripts/KartSystems/KartModifiers/AddativeKartModifierAsset.cs" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Scripts/KartSystems/KartModifiers/AddativeKartModifierAsset.cs" new file mode 100644 index 00000000..c9063c91 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Scripts/KartSystems/KartModifiers/AddativeKartModifierAsset.cs" @@ -0,0 +1,68 @@ +using UnityEngine; + +namespace KartGame.KartSystems +{ + /// + /// A ScriptableObject that takes the current stats and adds to each. + /// + [CreateAssetMenu] public class AddativeKartModifierAsset : ScriptableObject, IKartModifier + { + [Tooltip ("The stats to be added to the current stats.")] + public KartStats statAdditions = new KartStats (0f); + + public float ModifyAcceleration (float acceleration) + { + return acceleration + statAdditions.acceleration; + } + + public float ModifyBraking (float braking) + { + return braking + statAdditions.braking; + } + + public float ModifyCoastingDrag (float coastingDrag) + { + return coastingDrag + statAdditions.coastingDrag; + } + + public float ModifyGravity (float gravity) + { + return gravity + statAdditions.gravity; + } + + public float ModifyGrip (float grip) + { + return grip + statAdditions.grip; + } + + public float ModifyHopHeight (float hopHeight) + { + return hopHeight + statAdditions.hopHeight; + } + + public float ModifyReverseAcceleration (float reverseAcceleration) + { + return reverseAcceleration + statAdditions.reverseAcceleration; + } + + public float ModifyReverseSpeed (float reverseSpeed) + { + return reverseSpeed + statAdditions.reverseSpeed; + } + + public float ModifyTopSpeed (float topSpeed) + { + return topSpeed + statAdditions.topSpeed; + } + + public float ModifyTurnSpeed (float turnSpeed) + { + return turnSpeed + statAdditions.turnSpeed; + } + + public float ModifyWeight (float weight) + { + return weight + statAdditions.weight; + } + } +} \ No newline at end of file diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Scripts/KartSystems/KartModifiers/AddativeKartModifierAsset.cs.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Scripts/KartSystems/KartModifiers/AddativeKartModifierAsset.cs.meta" new file mode 100644 index 00000000..b5ff5999 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Scripts/KartSystems/KartModifiers/AddativeKartModifierAsset.cs.meta" @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: b167315e8d96ede4ea334116b76fadf0 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Scripts/KartSystems/KartModifiers/DefaultKartModifier.cs" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Scripts/KartSystems/KartModifiers/DefaultKartModifier.cs" new file mode 100644 index 00000000..1a322c4b --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Scripts/KartSystems/KartModifiers/DefaultKartModifier.cs" @@ -0,0 +1,65 @@ +using UnityEngine; + +namespace KartGame.KartSystems +{ + /// + /// This can work as a placeholder for kart modifiers that have yet to be created. It does not modify the stats at all. + /// + public struct DefaultKartModifier : IKartModifier + { + public float ModifyAcceleration (float acceleration) + { + return acceleration; + } + + public float ModifyBraking (float braking) + { + return braking; + } + + public float ModifyCoastingDrag (float coastingDrag) + { + return coastingDrag; + } + + public float ModifyGravity (float gravity) + { + return gravity; + } + + public float ModifyGrip (float grip) + { + return grip; + } + + public float ModifyHopHeight (float hopHeight) + { + return hopHeight; + } + + public float ModifyReverseAcceleration (float reverseAcceleration) + { + return reverseAcceleration; + } + + public float ModifyReverseSpeed (float reverseSpeed) + { + return reverseSpeed; + } + + public float ModifyTopSpeed (float topSpeed) + { + return topSpeed; + } + + public float ModifyTurnSpeed (float turnSpeed) + { + return turnSpeed; + } + + public float ModifyWeight (float weight) + { + return weight; + } + } +} \ No newline at end of file diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Scripts/KartSystems/KartModifiers/DefaultKartModifier.cs.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Scripts/KartSystems/KartModifiers/DefaultKartModifier.cs.meta" new file mode 100644 index 00000000..a706eaba --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Scripts/KartSystems/KartModifiers/DefaultKartModifier.cs.meta" @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 76e1af9940339e84b85831eee3cfc7f3 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Scripts/KartSystems/KartModifiers/IKartModifier.cs" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Scripts/KartSystems/KartModifiers/IKartModifier.cs" new file mode 100644 index 00000000..dc9deaa7 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Scripts/KartSystems/KartModifiers/IKartModifier.cs" @@ -0,0 +1,88 @@ +using UnityEngine; + +namespace KartGame.KartSystems +{ + /// + /// Should be implemented by anything wishing to modify the stats of a kart. This can be anything from a patch of mud on the ground to pickups to the driver of the kart. + /// Each function should return the adjusted relevant kart stat. + /// + public interface IKartModifier + { + /// + /// Used to change the current acceleration from one value to another, usually by multiplying or adding to it. + /// + /// The current acceleration. + /// The changed acceleration. + float ModifyAcceleration (float acceleration); + + /// + /// Used to change the current braking from one value to another, usually by multiplying or adding to it. + /// + /// The current braking. + /// The changed braking. + float ModifyBraking (float braking); + + /// + /// Used to change the current coastingDrag from one value to another, usually by multiplying or adding to it. + /// + /// The current coastingDrag. + /// The changed coastingDrag. + float ModifyCoastingDrag (float coastingDrag); + + /// + /// Used to change the current gravity from one value to another, usually by multiplying or adding to it. + /// + /// The current gravity. + /// The changed gravity. + float ModifyGravity (float gravity); + + /// + /// Used to change the current grip from one value to another, usually by multiplying or adding to it. + /// + /// The current grip. + /// The changed grip. + float ModifyGrip (float grip); + + /// + /// Used to change the current acceleration from one value to another, usually by multiplying or adding to it. + /// + /// The current acceleration. + /// The changed acceleration. + float ModifyHopHeight (float hopHeight); + + /// + /// Used to change the current reverseAcceleration from one value to another, usually by multiplying or adding to it. + /// + /// The current reverseAcceleration. + /// The changed reverseAcceleration. + float ModifyReverseAcceleration (float reverseAcceleration); + + /// + /// Used to change the current reverseSpeed from one value to another, usually by multiplying or adding to it. + /// + /// The current reverseSpeed. + /// The changed reverseSpeed. + float ModifyReverseSpeed (float reverseSpeed); + + /// + /// Used to change the current topSpeed from one value to another, usually by multiplying or adding to it. + /// + /// The current topSpeed. + /// The changed topSpeed. + float ModifyTopSpeed (float topSpeed); + + /// + /// Used to change the current turnSpeed from one value to another, usually by multiplying or adding to it. + /// + /// The current turnSpeed. + /// The changed turnSpeed. + float ModifyTurnSpeed (float turnSpeed); + + /// + /// Used to change the current weight from one value to another, usually by multiplying or adding to it. + /// + /// The current weight. + /// The changed weight. + float ModifyWeight (float weight); + } +} \ No newline at end of file diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Scripts/KartSystems/KartModifiers/IKartModifier.cs.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Scripts/KartSystems/KartModifiers/IKartModifier.cs.meta" new file mode 100644 index 00000000..47083e14 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Scripts/KartSystems/KartModifiers/IKartModifier.cs.meta" @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: c413e7f789cfe3e4988a53e734fe6fbd +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Scripts/KartSystems/KartModifiers/ModifierAssets.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Scripts/KartSystems/KartModifiers/ModifierAssets.meta" new file mode 100644 index 00000000..63023ddc --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Scripts/KartSystems/KartModifiers/ModifierAssets.meta" @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 535d4fc2a2c7be44db103b9ed0f957cc +folderAsset: yes +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Scripts/KartSystems/KartModifiers/ModifierAssets/AirborneKartModifier.asset" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Scripts/KartSystems/KartModifiers/ModifierAssets/AirborneKartModifier.asset" new file mode 100644 index 00000000..8bd8ecc3 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Scripts/KartSystems/KartModifiers/ModifierAssets/AirborneKartModifier.asset" @@ -0,0 +1,26 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!114 &11400000 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: af7559f8f535a944494b7e0bd32e1a9e, type: 3} + m_Name: AirborneKartModifier + m_EditorClassIdentifier: + statMultipliers: + acceleration: 1 + braking: 1 + coastingDrag: 1 + gravity: 1 + grip: 1 + hopHeight: 1 + reverseAcceleration: 1 + reverseSpeed: 1 + topSpeed: 1 + turnSpeed: 3 + weight: 1 diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Scripts/KartSystems/KartModifiers/ModifierAssets/AirborneKartModifier.asset.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Scripts/KartSystems/KartModifiers/ModifierAssets/AirborneKartModifier.asset.meta" new file mode 100644 index 00000000..ff9d65ff --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Scripts/KartSystems/KartModifiers/ModifierAssets/AirborneKartModifier.asset.meta" @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 6f9e02ce4637faf498063afb4aa37a22 +NativeFormatImporter: + externalObjects: {} + mainObjectFileID: 11400000 + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Scripts/KartSystems/KartModifiers/ModifierAssets/DefaultKartModifier.asset" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Scripts/KartSystems/KartModifiers/ModifierAssets/DefaultKartModifier.asset" new file mode 100644 index 00000000..d2c94a75 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Scripts/KartSystems/KartModifiers/ModifierAssets/DefaultKartModifier.asset" @@ -0,0 +1,26 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!114 &11400000 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: b167315e8d96ede4ea334116b76fadf0, type: 3} + m_Name: DefaultKartModifier + m_EditorClassIdentifier: + statAdditions: + acceleration: 0 + braking: 0 + coastingDrag: 0 + gravity: 0 + grip: 0 + hopHeight: 0 + reverseAcceleration: 0 + reverseSpeed: 0 + topSpeed: 0 + turnSpeed: 0 + weight: 0 diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Scripts/KartSystems/KartModifiers/ModifierAssets/DefaultKartModifier.asset.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Scripts/KartSystems/KartModifiers/ModifierAssets/DefaultKartModifier.asset.meta" new file mode 100644 index 00000000..7c0752f6 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Scripts/KartSystems/KartModifiers/ModifierAssets/DefaultKartModifier.asset.meta" @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 1389bd2457379f74483c87fbf12258ea +NativeFormatImporter: + externalObjects: {} + mainObjectFileID: 11400000 + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Scripts/KartSystems/KartModifiers/ModifierAssets/DriverKartModifier.asset" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Scripts/KartSystems/KartModifiers/ModifierAssets/DriverKartModifier.asset" new file mode 100644 index 00000000..a5ce977d --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Scripts/KartSystems/KartModifiers/ModifierAssets/DriverKartModifier.asset" @@ -0,0 +1,26 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!114 &11400000 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: b167315e8d96ede4ea334116b76fadf0, type: 3} + m_Name: DriverKartModifier + m_EditorClassIdentifier: + statAdditions: + acceleration: 0 + braking: 0 + coastingDrag: 0 + gravity: 0 + grip: 0 + hopHeight: 0 + reverseAcceleration: 0 + reverseSpeed: 0 + topSpeed: 0 + turnSpeed: 0 + weight: 0 diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Scripts/KartSystems/KartModifiers/ModifierAssets/DriverKartModifier.asset.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Scripts/KartSystems/KartModifiers/ModifierAssets/DriverKartModifier.asset.meta" new file mode 100644 index 00000000..d506b648 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Scripts/KartSystems/KartModifiers/ModifierAssets/DriverKartModifier.asset.meta" @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 9b3f9157348e2f746bc71583f86aabc7 +NativeFormatImporter: + externalObjects: {} + mainObjectFileID: 11400000 + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Scripts/KartSystems/KartModifiers/MultiplicativeKartModifier.cs" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Scripts/KartSystems/KartModifiers/MultiplicativeKartModifier.cs" new file mode 100644 index 00000000..f585598d --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Scripts/KartSystems/KartModifiers/MultiplicativeKartModifier.cs" @@ -0,0 +1,77 @@ +using System; +using UnityEngine; + +namespace KartGame.KartSystems +{ + /// + /// A plain serializable class that takes the current stats and multiplies each. + /// + [Serializable] public class MultiplicativeKartModifier : IKartModifier + { + [Tooltip ("The stats to be multiplied by the current stats.")] + public KartStats modifiers; + + /// + /// Initialises the KartStats to a default value of 1. + /// + public MultiplicativeKartModifier () + { + modifiers = new KartStats (1f); + } + + public float ModifyAcceleration (float acceleration) + { + return modifiers.acceleration * acceleration; + } + + public float ModifyBraking (float braking) + { + return modifiers.braking * braking; + } + + public float ModifyCoastingDrag (float coastingDrag) + { + return modifiers.coastingDrag * coastingDrag; + } + + public float ModifyGravity (float gravity) + { + return modifiers.gravity * gravity; + } + + public float ModifyGrip (float grip) + { + return modifiers.grip * grip; + } + + public float ModifyHopHeight (float hopHeight) + { + return modifiers.hopHeight * hopHeight; + } + + public float ModifyReverseAcceleration (float reverseAcceleration) + { + return modifiers.reverseAcceleration * reverseAcceleration; + } + + public float ModifyReverseSpeed (float reverseSpeed) + { + return modifiers.reverseSpeed * reverseSpeed; + } + + public float ModifyTopSpeed (float topSpeed) + { + return modifiers.topSpeed * topSpeed; + } + + public float ModifyTurnSpeed (float turnSpeed) + { + return modifiers.turnSpeed * turnSpeed; + } + + public float ModifyWeight (float weight) + { + return modifiers.weight * weight; + } + } +} \ No newline at end of file diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Scripts/KartSystems/KartModifiers/MultiplicativeKartModifier.cs.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Scripts/KartSystems/KartModifiers/MultiplicativeKartModifier.cs.meta" new file mode 100644 index 00000000..1b9ecc9c --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Scripts/KartSystems/KartModifiers/MultiplicativeKartModifier.cs.meta" @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: e665c468488a8df40a8aa02dd9427cf8 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Scripts/KartSystems/KartModifiers/MultiplicativeKartModifierAsset.cs" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Scripts/KartSystems/KartModifiers/MultiplicativeKartModifierAsset.cs" new file mode 100644 index 00000000..ed166e65 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Scripts/KartSystems/KartModifiers/MultiplicativeKartModifierAsset.cs" @@ -0,0 +1,68 @@ +using UnityEngine; + +namespace KartGame.KartSystems +{ + /// + /// A ScriptableObject that takes the current stats and multiplies each. + /// + [CreateAssetMenu] public class MultiplicativeKartModifierAsset : ScriptableObject, IKartModifier + { + [Tooltip ("The stats to be multiplied by the current stats.")] + public KartStats statMultipliers = new KartStats (1f); + + public float ModifyAcceleration (float acceleration) + { + return acceleration * statMultipliers.acceleration; + } + + public float ModifyBraking (float braking) + { + return braking * statMultipliers.braking; + } + + public float ModifyCoastingDrag (float coastingDrag) + { + return coastingDrag * statMultipliers.coastingDrag; + } + + public float ModifyGravity (float gravity) + { + return gravity * statMultipliers.gravity; + } + + public float ModifyGrip (float grip) + { + return grip * statMultipliers.grip; + } + + public float ModifyHopHeight (float hopHeight) + { + return hopHeight * statMultipliers.hopHeight; + } + + public float ModifyReverseAcceleration (float reverseAcceleration) + { + return reverseAcceleration * statMultipliers.reverseAcceleration; + } + + public float ModifyReverseSpeed (float reverseSpeed) + { + return reverseSpeed * statMultipliers.reverseSpeed; + } + + public float ModifyTopSpeed (float topSpeed) + { + return topSpeed * statMultipliers.topSpeed; + } + + public float ModifyTurnSpeed (float turnSpeed) + { + return turnSpeed * statMultipliers.turnSpeed; + } + + public float ModifyWeight (float weight) + { + return weight * statMultipliers.weight; + } + } +} \ No newline at end of file diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Scripts/KartSystems/KartModifiers/MultiplicativeKartModifierAsset.cs.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Scripts/KartSystems/KartModifiers/MultiplicativeKartModifierAsset.cs.meta" new file mode 100644 index 00000000..68108b34 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Scripts/KartSystems/KartModifiers/MultiplicativeKartModifierAsset.cs.meta" @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: af7559f8f535a944494b7e0bd32e1a9e +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Scripts/KartSystems/KartMovement.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Scripts/KartSystems/KartMovement.meta" new file mode 100644 index 00000000..f9363311 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Scripts/KartSystems/KartMovement.meta" @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 33695ce18ca62f044ae361619edf8973 +folderAsset: yes +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Scripts/KartSystems/KartMovement/Editor.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Scripts/KartSystems/KartMovement/Editor.meta" new file mode 100644 index 00000000..690a3e9e --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Scripts/KartSystems/KartMovement/Editor.meta" @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 75e4289a83e71e24abaa07d9e8a47c42 +folderAsset: yes +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Scripts/KartSystems/KartMovement/Editor/KartMovementEditor.cs" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Scripts/KartSystems/KartMovement/Editor/KartMovementEditor.cs" new file mode 100644 index 00000000..6e06bcfa --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Scripts/KartSystems/KartMovement/Editor/KartMovementEditor.cs" @@ -0,0 +1,127 @@ +using UnityEditor; +using UnityEngine; + +namespace KartGame.KartSystems +{ + /// + /// Editor for the KartMovement MonoBehaviour. + /// + [CustomEditor (typeof(KartMovement))] public class KartMovementEditor : Editor + { + SerializedProperty m_ScriptProp; + SerializedProperty m_KartProp; + SerializedProperty m_DriverProp; + SerializedProperty m_AirborneModifierProp; + SerializedProperty m_InputProp; + SerializedProperty m_FrontLeftGroundRaycastProp; + SerializedProperty m_FrontRightGroundRaycastProp; + SerializedProperty m_RearLeftGroundRaycastProp; + SerializedProperty m_RearRightGroundRaycastProp; + SerializedProperty m_DefaultStatsProp; + SerializedProperty m_GroundLayersProp; + SerializedProperty m_AllCollidingLayersProp; + SerializedProperty m_AirborneOrientationSpeedProp; + SerializedProperty m_MinDriftingSteeringProp; + SerializedProperty m_RotationCorrectionSpeedProp; + SerializedProperty m_MinDriftStartAngleProp; + SerializedProperty m_MaxDriftStartAngleProp; + SerializedProperty m_KartToKartBumpProp; + SerializedProperty m_OnBecomeAirborneProp; + SerializedProperty m_OnBecomeGroundedProp; + SerializedProperty m_OnHopProp; + SerializedProperty m_OnDriftStartedProp; + SerializedProperty m_OnDriftStoppedProp; + SerializedProperty m_OnKartCollisionProp; + + GUIContent m_RaycastPositionsContent = new GUIContent ("Raycast Positions"); + GUIContent m_OtherSettingsContent = new GUIContent ("Other Settings", "These settings control how the kart behaves but are not part of its stat block. It is recommended you don't adjust these without careful understanding of what they do."); + GUIContent m_EventsContent = new GUIContent ("Events"); + + void OnEnable () + { + m_ScriptProp = serializedObject.FindProperty ("m_Script"); + m_KartProp = serializedObject.FindProperty ("kart"); + m_DriverProp = serializedObject.FindProperty ("driver"); + m_AirborneModifierProp = serializedObject.FindProperty ("airborneModifier"); + m_InputProp = serializedObject.FindProperty ("input"); + m_FrontLeftGroundRaycastProp = serializedObject.FindProperty ("frontGroundRaycast"); + m_FrontRightGroundRaycastProp = serializedObject.FindProperty ("rightGroundRaycast"); + m_RearLeftGroundRaycastProp = serializedObject.FindProperty ("leftGroundRaycast"); + m_RearRightGroundRaycastProp = serializedObject.FindProperty ("rearGroundRaycast"); + m_DefaultStatsProp = serializedObject.FindProperty ("defaultStats"); + m_GroundLayersProp = serializedObject.FindProperty ("groundLayers"); + m_AllCollidingLayersProp = serializedObject.FindProperty ("allCollidingLayers"); + m_AirborneOrientationSpeedProp = serializedObject.FindProperty ("airborneOrientationSpeed"); + m_MinDriftingSteeringProp = serializedObject.FindProperty ("minDriftingSteering"); + m_RotationCorrectionSpeedProp = serializedObject.FindProperty ("rotationCorrectionSpeed"); + m_MinDriftStartAngleProp = serializedObject.FindProperty ("minDriftStartAngle"); + m_MaxDriftStartAngleProp = serializedObject.FindProperty ("maxDriftStartAngle"); + m_KartToKartBumpProp = serializedObject.FindProperty ("kartToKartBump"); + m_OnBecomeAirborneProp = serializedObject.FindProperty ("OnBecomeAirborne"); + m_OnBecomeGroundedProp = serializedObject.FindProperty ("OnBecomeGrounded"); + m_OnHopProp = serializedObject.FindProperty ("OnHop"); + m_OnDriftStartedProp = serializedObject.FindProperty ("OnDriftStarted"); + m_OnDriftStoppedProp = serializedObject.FindProperty ("OnDriftStopped"); + m_OnKartCollisionProp = serializedObject.FindProperty ("OnKartCollision"); + } + + public override void OnInspectorGUI () + { + serializedObject.Update (); + + GUI.enabled = false; + EditorGUILayout.PropertyField (m_ScriptProp); + GUI.enabled = true; + + EditorGUILayout.PropertyField (m_KartProp); + EditorGUILayout.PropertyField (m_DriverProp); + EditorGUILayout.PropertyField (m_AirborneModifierProp); + EditorGUILayout.PropertyField (m_InputProp); + + m_FrontLeftGroundRaycastProp.isExpanded = EditorGUILayout.Foldout (m_FrontLeftGroundRaycastProp.isExpanded, m_RaycastPositionsContent); + + if (m_FrontLeftGroundRaycastProp.isExpanded) + { + EditorGUI.indentLevel++; + EditorGUILayout.PropertyField (m_FrontLeftGroundRaycastProp); + EditorGUILayout.PropertyField (m_FrontRightGroundRaycastProp); + EditorGUILayout.PropertyField (m_RearLeftGroundRaycastProp); + EditorGUILayout.PropertyField (m_RearRightGroundRaycastProp); + EditorGUI.indentLevel--; + } + + EditorGUILayout.PropertyField (m_DefaultStatsProp, true); + + EditorGUILayout.PropertyField (m_GroundLayersProp); + EditorGUILayout.PropertyField (m_AllCollidingLayersProp); + + m_AirborneOrientationSpeedProp.isExpanded = EditorGUILayout.Foldout (m_AirborneOrientationSpeedProp.isExpanded, m_OtherSettingsContent); + + if (m_AirborneOrientationSpeedProp.isExpanded) + { + EditorGUI.indentLevel++; + EditorGUILayout.PropertyField (m_AirborneOrientationSpeedProp); + EditorGUILayout.PropertyField (m_MinDriftingSteeringProp); + EditorGUILayout.PropertyField (m_RotationCorrectionSpeedProp); + EditorGUILayout.PropertyField (m_MinDriftStartAngleProp); + EditorGUILayout.PropertyField (m_MaxDriftStartAngleProp); + EditorGUILayout.PropertyField (m_KartToKartBumpProp); + EditorGUI.indentLevel--; + } + + m_OnBecomeAirborneProp.isExpanded = EditorGUILayout.Foldout (m_OnBecomeAirborneProp.isExpanded, m_EventsContent); + + if (m_OnBecomeAirborneProp.isExpanded) + { + EditorGUILayout.PropertyField (m_OnBecomeAirborneProp); + EditorGUILayout.PropertyField (m_OnBecomeGroundedProp); + EditorGUILayout.PropertyField (m_OnHopProp); + EditorGUILayout.PropertyField (m_OnDriftStartedProp); + EditorGUILayout.PropertyField (m_OnDriftStoppedProp); + EditorGUILayout.PropertyField (m_OnKartCollisionProp); + } + + serializedObject.ApplyModifiedProperties (); + } + } +} \ No newline at end of file diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Scripts/KartSystems/KartMovement/Editor/KartMovementEditor.cs.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Scripts/KartSystems/KartMovement/Editor/KartMovementEditor.cs.meta" new file mode 100644 index 00000000..21af9a07 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Scripts/KartSystems/KartMovement/Editor/KartMovementEditor.cs.meta" @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 3f6cde0716ed463458c3ef22ed06e665 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Scripts/KartSystems/KartMovement/GroundInfo.cs" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Scripts/KartSystems/KartMovement/GroundInfo.cs" new file mode 100644 index 00000000..73cac89c --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Scripts/KartSystems/KartMovement/GroundInfo.cs" @@ -0,0 +1,27 @@ +using UnityEngine; + +namespace KartGame.KartSystems +{ + /// + /// For storing information about ground underneath a kart. + /// + public struct GroundInfo + { + /// + /// Whether or not the capsule is actually touching the ground. Used to determine whether gravity should be applied or not. + /// + public bool isCapsuleTouching; + /// + /// Whether or not the capsule is close enough to the ground to be treated as though on the ground. Used to determine most ground based things such as whether on not the input adjusts the velocity of the kart. + /// + public bool isGrounded; + /// + /// Whether or not the kart is close enough to the ground to start behaving like it will when on the ground. Used for adjusting the orientation of the kart. + /// + public bool isCloseToGround; + /// + /// The current normal of the ground. + /// + public Vector3 normal; + } +} \ No newline at end of file diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Scripts/KartSystems/KartMovement/GroundInfo.cs.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Scripts/KartSystems/KartMovement/GroundInfo.cs.meta" new file mode 100644 index 00000000..394ed3f9 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Scripts/KartSystems/KartMovement/GroundInfo.cs.meta" @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 232492a100a71fe4298f8f7e4772e521 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Scripts/KartSystems/KartMovement/IControllable.cs" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Scripts/KartSystems/KartMovement/IControllable.cs" new file mode 100644 index 00000000..fd0d66ff --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Scripts/KartSystems/KartMovement/IControllable.cs" @@ -0,0 +1,26 @@ +using UnityEngine; + +namespace KartGame.KartSystems +{ + /// + /// Should be implemented by things that are controlled by user input when that control can be turned on or off. + /// + public interface IControllable + { + /// + /// Should be used to allow user input control. + /// + void EnableControl (); + + /// + /// Should be used to stop user input control. + /// + void DisableControl (); + + /// + /// Should be used to check whether the user currently has control. + /// + /// Whether or not the user currently has control. + bool IsControlled (); + } +} \ No newline at end of file diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Scripts/KartSystems/KartMovement/IControllable.cs.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Scripts/KartSystems/KartMovement/IControllable.cs.meta" new file mode 100644 index 00000000..1a7622eb --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Scripts/KartSystems/KartMovement/IControllable.cs.meta" @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 53daecabe43b86c40937c2a5d94edecc +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Scripts/KartSystems/KartMovement/IKartInfo.cs" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Scripts/KartSystems/KartMovement/IKartInfo.cs" new file mode 100644 index 00000000..ee1859f3 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Scripts/KartSystems/KartMovement/IKartInfo.cs" @@ -0,0 +1,43 @@ +using UnityEngine; + +namespace KartGame.KartSystems +{ + /// + /// An interface representing all the information about the movement of a kart that is used to make decisions about things such as animation. + /// + public interface IKartInfo + { + /// + /// The current position of the kart. + /// + Vector3 Position { get; } + /// + /// The current rotation of the kart. + /// + Quaternion Rotation { get; } + /// + /// The current stats of the kart. + /// + KartStats CurrentStats { get; } + /// + /// The current velocity of the kart in meters per second. + /// + Vector3 Velocity { get; } + /// + /// The actual amount moved by the kart in the last FixedUpdate. + /// + Vector3 Movement { get; } + /// + /// The current speed the kart is moving forwards in meters per second. + /// + float LocalSpeed { get; } + /// + /// Whether or not the kart is currently on the ground. + /// + bool IsGrounded { get; } + /// + /// More detailed information about the ground the kart is currently on. + /// + GroundInfo CurrentGroundInfo { get; } + } +} \ No newline at end of file diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Scripts/KartSystems/KartMovement/IKartInfo.cs.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Scripts/KartSystems/KartMovement/IKartInfo.cs.meta" new file mode 100644 index 00000000..4cfc3f6a --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Scripts/KartSystems/KartMovement/IKartInfo.cs.meta" @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: cbaaad954da33e54db9a0c98d06745b9 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Scripts/KartSystems/KartMovement/IMovable.cs" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Scripts/KartSystems/KartMovement/IMovable.cs" new file mode 100644 index 00000000..55735dbc --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Scripts/KartSystems/KartMovement/IMovable.cs" @@ -0,0 +1,33 @@ +using System.Collections; +using System.Collections.Generic; +using KartGame.KartSystems; +using KartGame.Track; +using UnityEngine; + +namespace KartGame.KartSystems +{ + /// + /// Should be implemented by things that are controlled by user input that can be moved by something other than the user. + /// + public interface IMovable : IControllable + { + /// + /// Should be used to move the implementing object by an amount. + /// + /// The change in position. + /// The change in rotation. + void ForceMove (Vector3 positionDelta, Quaternion rotationDelta); + + /// + /// Finds the racer timing information for this movable. + /// + /// Returns null if no IRacer implementation is relevant. + IRacer GetRacer (); + + /// + /// Finds the kart info for this movable. + /// + /// Returns null if no IKartInfo implementation is relevant. + IKartInfo GetKartInfo (); + } +} \ No newline at end of file diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Scripts/KartSystems/KartMovement/IMovable.cs.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Scripts/KartSystems/KartMovement/IMovable.cs.meta" new file mode 100644 index 00000000..4d562b4d --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Scripts/KartSystems/KartMovement/IMovable.cs.meta" @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 1864ad8e497f7694ca4efa1240ebd9bc +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Scripts/KartSystems/KartMovement/KartMovement.cs" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Scripts/KartSystems/KartMovement/KartMovement.cs" new file mode 100644 index 00000000..0259794c --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Scripts/KartSystems/KartMovement/KartMovement.cs" @@ -0,0 +1,699 @@ +using System; +using System.Collections.Generic; +using KartGame.Track; +using UnityEngine; +using UnityEngine.Events; +using Object = UnityEngine.Object; + +namespace KartGame.KartSystems +{ + /// + /// This class is responsible for all aspects of the kart's movement. It uses a kinematic rigidbody and a capsule collider + /// to simulate the presence of the kart but does not use the internal physics solver and instead uses its own solver. + /// The movement of the kart depends on the KartStats. These have a default value but can be adjusted by anything implementing + /// the IKartModifier interface. + /// + [RequireComponent (typeof(IInput))] [RequireComponent (typeof(Rigidbody))] + public class KartMovement : MonoBehaviour, IKartCollider, IMovable, IKartInfo + { + enum DriftState + { + NotDrifting, + FacingLeft, + FacingRight + } + + + [RequireInterface (typeof(IKartModifier))] + [Tooltip ("A reference to the stats modification due to the type of kart being moved. This can be either a Component or ScriptableObject.")] + public Object kart; + [RequireInterface (typeof(IKartModifier))] + [Tooltip ("A reference to the stats modification due to the driver of kart being moved. This can be either a Component or ScriptableObject.")] + public Object driver; + [RequireInterface (typeof(IKartModifier))] + [Tooltip ("A reference to the stats modification due to the kart being airborne. This can be either a Component or ScriptableObject.")] + public Object airborneModifier; + [RequireInterface (typeof(IInput))] + [Tooltip ("A reference to the an object implementing the IInput class to be used to control the kart.")] + public Object input; + + [Tooltip ("A reference to a transform representing the origin of a ray to help determine if the kart is grounded. This is the front of a diamond formation.")] + public Transform frontGroundRaycast; + [Tooltip ("A reference to a transform representing the origin of a ray to help determine if the kart is grounded. This is the right of a diamond formation.")] + public Transform rightGroundRaycast; + [Tooltip ("A reference to a transform representing the origin of a ray to help determine if the kart is grounded. This is the left of a diamond formation.")] + public Transform leftGroundRaycast; + [Tooltip ("A reference to a transform representing the origin of a ray to help determine if the kart is grounded. This is the rear of a diamond formation.")] + public Transform rearGroundRaycast; + [Tooltip ("A reference to the default stats for all karts. Modifications to these are typically made using the kart and driver fields or by using the AddKartModifier function.")] + public KartStats defaultStats; + [Tooltip ("The layers which represent any ground the kart can drive on.")] + public LayerMask groundLayers; + [Tooltip ("The layers which represent anything the kart can collide with. This should include the ground layers.")] + public LayerMask allCollidingLayers; + [Tooltip ("How fast the kart levels out when airborne.")] + public float airborneOrientationSpeed = 60f; + [Tooltip ("The minimum value for the input's steering when the kart is drifting.")] + public float minDriftingSteering = 0.2f; + [Tooltip ("How fast the kart's rotation gets corrected. This is used for smoothing the karts rotation and returning to normal driving after a drift")] + public float rotationCorrectionSpeed = 180f; + [Tooltip ("The smallest allowed angle for a kart to be turned from the velocity direction in order to a drift to start.")] + public float minDriftStartAngle = 15f; + [Tooltip ("The largest allowed angle for a kart to be turned from the velocity direction in order to a drift to start.")] + public float maxDriftStartAngle = 90f; + [Tooltip ("When karts collide the movement is based on their weight difference and this additional velocity change.")] + public float kartToKartBump = 10f; + + public UnityEvent OnBecomeAirborne; + public UnityEvent OnBecomeGrounded; + public UnityEvent OnHop; + public UnityEvent OnDriftStarted; + public UnityEvent OnDriftStopped; + public UnityEvent OnKartCollision; + + IInput m_Input; + Vector3 m_RigidbodyPosition; + Vector3 m_Velocity; + Vector3 m_Movement; + bool m_IsGrounded; + GroundInfo m_CurrentGroundInfo; + Rigidbody m_Rigidbody; + CapsuleCollider m_Capsule; + IRacer m_Racer; + List m_CurrentModifiers = new List (16); // The karts stats are based on a list of modifiers. Each affects the results of the previous until the modified stats are calculated. + List m_TempModifiers = new List (8); + KartStats m_ModifiedStats; // The stats that are used to calculate the kart's velocity. + RaycastHit[] m_RaycastHitBuffer = new RaycastHit[8]; + Collider[] m_ColliderBuffer = new Collider[8]; + Quaternion m_DriftOffset = Quaternion.identity; + DriftState m_DriftState; + bool m_HasControl; + float m_SteeringInput; + float m_AccelerationInput; + bool m_HopPressed; + bool m_HopHeld; + Vector3 m_RepositionPositionDelta; + Quaternion m_RepositionRotationDelta = Quaternion.identity; + + const int k_MaxPenetrationSolves = 3; + const float k_GroundToCapsuleOffsetDistance = 0.025f; + const float k_Deadzone = 0.01f; + const float k_VelocityNormalAirborneDot = 0.5f; + + // These properties are part of the IKartInfo interface. + public Vector3 Position => m_RigidbodyPosition; + public Quaternion Rotation => m_Rigidbody.rotation; + public KartStats CurrentStats => m_ModifiedStats; + public Vector3 Velocity => m_Velocity; + public Vector3 Movement => m_Movement; + public float LocalSpeed => (Quaternion.Inverse (m_Rigidbody.rotation) * Quaternion.Inverse (m_DriftOffset) * m_Velocity).z; + public bool IsGrounded => m_IsGrounded; + public GroundInfo CurrentGroundInfo => m_CurrentGroundInfo; + + void Reset () + { + groundLayers = LayerMask.GetMask ("Default"); + allCollidingLayers = LayerMask.GetMask ("Default"); + } + + void Start () + { + m_Input = input as IInput; + m_Rigidbody = GetComponent (); + m_Capsule = GetComponent (); + m_Racer = GetComponent (); + + if (kart != null) + m_CurrentModifiers.Add ((IKartModifier)kart); + + if (driver != null) + m_CurrentModifiers.Add ((IKartModifier)driver); + } + + void FixedUpdate () + { + if(Mathf.Approximately (Time.timeScale, 0f)) + return; + + if (m_RepositionPositionDelta.sqrMagnitude > float.Epsilon || m_RepositionRotationDelta != Quaternion.identity) + { + m_Rigidbody.MovePosition (m_Rigidbody.position + m_RepositionPositionDelta); + m_Rigidbody.MoveRotation (m_RepositionRotationDelta * m_Rigidbody.rotation); + m_RepositionPositionDelta = Vector3.zero; + m_RepositionRotationDelta = Quaternion.identity; + return; + } + + m_RigidbodyPosition = m_Rigidbody.position; + + KartStats.GetModifiedStats (m_CurrentModifiers, defaultStats, ref m_ModifiedStats); + ClearTempModifiers (); + + Quaternion rotationStream = m_Rigidbody.rotation; + + float deltaTime = Time.deltaTime; + + m_CurrentGroundInfo = CheckForGround (deltaTime, rotationStream, Vector3.zero); + + Hop (rotationStream, m_CurrentGroundInfo); + + if (m_CurrentGroundInfo.isGrounded && !m_IsGrounded) + OnBecomeGrounded.Invoke (); + + if (!m_CurrentGroundInfo.isGrounded && m_IsGrounded) + OnBecomeAirborne.Invoke (); + + m_IsGrounded = m_CurrentGroundInfo.isGrounded; + + ApplyAirborneModifier (m_CurrentGroundInfo); + + GroundInfo nextGroundInfo = CheckForGround (deltaTime, rotationStream, m_Velocity * deltaTime); + + GroundNormal (deltaTime, ref rotationStream, m_CurrentGroundInfo, nextGroundInfo); + TurnKart (deltaTime, ref rotationStream); + + StartDrift (m_CurrentGroundInfo, nextGroundInfo, rotationStream); + StopDrift (deltaTime); + + CalculateDrivingVelocity (deltaTime, m_CurrentGroundInfo, rotationStream); + + Vector3 penetrationOffset = SolvePenetration (rotationStream); + penetrationOffset = ProcessVelocityCollisions (deltaTime, rotationStream, penetrationOffset); + + rotationStream = Quaternion.RotateTowards (m_Rigidbody.rotation, rotationStream, rotationCorrectionSpeed * deltaTime); + + AdjustVelocityByPenetrationOffset (deltaTime, ref penetrationOffset); + + m_Rigidbody.MoveRotation (rotationStream); + m_Rigidbody.MovePosition (m_RigidbodyPosition + m_Movement); + } + + /// + /// Removes all the temporary modifiers added through velocity collisions. They will be re-added in ProcessVelocityCollisions if they still apply. + /// + void ClearTempModifiers () + { + for (int i = 0; i < m_TempModifiers.Count; i++) + { + m_CurrentModifiers.Remove (m_TempModifiers[i]); + } + + m_TempModifiers.Clear (); + } + + /// + /// Determines how much the kart should be moved due to its collider overlapping with others. + /// + Vector3 SolvePenetration (Quaternion rotationStream) + { + Vector3 summedOffset = Vector3.zero; + for (var solveIterations = 0; solveIterations < k_MaxPenetrationSolves; solveIterations++) + { + summedOffset = ComputePenetrationOffset (rotationStream, summedOffset); + } + + return summedOffset; + } + + /// + /// Computes the penetration offset for a single iteration. + /// + /// The current rotation of the kart. + /// How much the kart's capsule is offset so far. + /// How much the kart's capsule should be offset after this solve. + Vector3 ComputePenetrationOffset (Quaternion rotationStream, Vector3 summedOffset) + { + var capsuleAxis = rotationStream * Vector3.forward * m_Capsule.height * 0.5f; + var point0 = m_RigidbodyPosition + capsuleAxis + summedOffset; + var point1 = m_RigidbodyPosition - capsuleAxis + summedOffset; + var kartCapsuleHitCount = Physics.OverlapCapsuleNonAlloc (point0, point1, m_Capsule.radius, m_ColliderBuffer, allCollidingLayers, QueryTriggerInteraction.Ignore); + + for (int i = 0; i < kartCapsuleHitCount; i++) + { + var hitCollider = m_ColliderBuffer[i]; + if (hitCollider == m_Capsule) + continue; + + var hitColliderTransform = hitCollider.transform; + if (Physics.ComputePenetration (m_Capsule, m_RigidbodyPosition + summedOffset, rotationStream, hitCollider, hitColliderTransform.position, hitColliderTransform.rotation, out Vector3 separationDirection, out float separationDistance)) + { + Vector3 offset = separationDirection * (separationDistance + Physics.defaultContactOffset); + if (Mathf.Abs (offset.x) > Mathf.Abs (summedOffset.x)) + summedOffset.x = offset.x; + if (Mathf.Abs (offset.y) > Mathf.Abs (summedOffset.y)) + summedOffset.y = offset.y; + if (Mathf.Abs (offset.z) > Mathf.Abs (summedOffset.z)) + summedOffset.z = offset.z; + } + } + + return summedOffset; + } + + /// + /// Checks whether or not the kart is grounded given a rotation and offset. + /// + /// The time between frames. + /// The rotation the kart will have. + /// The offset from the kart's current position. + /// Information about the ground from the offset position. + GroundInfo CheckForGround (float deltaTime, Quaternion rotationStream, Vector3 offset) + { + GroundInfo groundInfo = new GroundInfo (); + Vector3 defaultPosition = offset + m_Velocity * deltaTime; + Vector3 direction = rotationStream * Vector3.down; + + float capsuleRadius = m_Capsule.radius; + float capsuleTouchingDistance = capsuleRadius + Physics.defaultContactOffset; + float groundedDistance = capsuleTouchingDistance + k_GroundToCapsuleOffsetDistance; + float closeToGroundDistance = Mathf.Max (groundedDistance + capsuleRadius, m_Velocity.y); + + int hitCount = 0; + + Ray ray = new Ray (defaultPosition + frontGroundRaycast.position, direction); + + bool didHitFront = GetNearestFromRaycast (ray, closeToGroundDistance, groundLayers, QueryTriggerInteraction.Ignore, out RaycastHit frontHit); + if (didHitFront) + hitCount++; + + ray.origin = defaultPosition + rightGroundRaycast.position; + + bool didHitRight = GetNearestFromRaycast (ray, closeToGroundDistance, groundLayers, QueryTriggerInteraction.Ignore, out RaycastHit rightHit); + if (didHitRight) + hitCount++; + + ray.origin = defaultPosition + leftGroundRaycast.position; + + bool didHitLeft = GetNearestFromRaycast (ray, closeToGroundDistance, groundLayers, QueryTriggerInteraction.Ignore, out RaycastHit leftHit); + if (didHitLeft) + hitCount++; + + ray.origin = defaultPosition + rearGroundRaycast.position; + + bool didHitRear = GetNearestFromRaycast (ray, closeToGroundDistance, groundLayers, QueryTriggerInteraction.Ignore, out RaycastHit rearHit); + if (didHitRear) + hitCount++; + + groundInfo.isCapsuleTouching = frontHit.distance <= capsuleTouchingDistance || rightHit.distance <= capsuleTouchingDistance || leftHit.distance <= capsuleTouchingDistance || rearHit.distance <= capsuleTouchingDistance; + groundInfo.isGrounded = frontHit.distance <= groundedDistance || rightHit.distance <= groundedDistance || leftHit.distance <= groundedDistance || rearHit.distance <= groundedDistance; + groundInfo.isCloseToGround = hitCount > 0; + + // No hits - normal = Vector3.up + if (hitCount == 0) + { + groundInfo.normal = Vector3.up; + } + + // 1 hit - normal = hit.normal + else if (hitCount == 1) + { + if (didHitFront) + groundInfo.normal = frontHit.normal; + else if (didHitRight) + groundInfo.normal = rightHit.normal; + else if (didHitLeft) + groundInfo.normal = leftHit.normal; + else if (didHitRear) + groundInfo.normal = rearHit.normal; + } + + // 2 hits - normal = hits average + else if (hitCount == 2) + { + groundInfo.normal = (frontHit.normal + rightHit.normal + leftHit.normal + rearHit.normal) * 0.5f; + } + + // 3 hits - normal = normal of plane from 3 points + else if (hitCount == 3) + { + if (!didHitFront) + groundInfo.normal = Vector3.Cross (rearHit.point - rightHit.point, leftHit.point - rightHit.point); + + if (!didHitRight) + groundInfo.normal = Vector3.Cross (rearHit.point - frontHit.point, leftHit.point - frontHit.point); + + if (!didHitLeft) + groundInfo.normal = Vector3.Cross (rightHit.point - frontHit.point, rearHit.point - frontHit.point); + + if (!didHitRear) + groundInfo.normal = Vector3.Cross (leftHit.point - rightHit.point, frontHit.point - rightHit.point); + } + + // 4 hits - normal = average of normals from 4 planes + else + { + Vector3 normal0 = Vector3.Cross (rearHit.point - rightHit.point, leftHit.point - rightHit.point); + Vector3 normal1 = Vector3.Cross (rearHit.point - frontHit.point, leftHit.point - frontHit.point); + Vector3 normal2 = Vector3.Cross (rightHit.point - frontHit.point, rearHit.point - frontHit.point); + Vector3 normal3 = Vector3.Cross (leftHit.point - rightHit.point, frontHit.point - rightHit.point); + + groundInfo.normal = (normal0 + normal1 + normal2 + normal3) * 0.25f; + } + + if (groundInfo.isGrounded) + { + float dot = Vector3.Dot (groundInfo.normal, m_Velocity.normalized); + if (dot > k_VelocityNormalAirborneDot) + { + groundInfo.isGrounded = false; + } + } + + return groundInfo; + } + + /// + /// Gets information about the nearest object hit by a raycast. + /// + bool GetNearestFromRaycast (Ray ray, float rayDistance, int layerMask, QueryTriggerInteraction query, out RaycastHit hit) + { + int hits = Physics.RaycastNonAlloc (ray, m_RaycastHitBuffer, rayDistance, layerMask, query); + + hit = new RaycastHit (); + hit.distance = float.PositiveInfinity; + + bool hitSelf = false; + for (int i = 0; i < hits; i++) + { + if (m_RaycastHitBuffer[i].collider == m_Capsule) + { + hitSelf = true; + continue; + } + + if (m_RaycastHitBuffer[i].distance < hit.distance) + hit = m_RaycastHitBuffer[i]; + } + + if (hitSelf) + hits--; + + return hits > 0; + } + + /// + /// Checks and applies the modifier to the kart's stats if the kart is not grounded. + /// + void ApplyAirborneModifier (GroundInfo currentGroundInfo) + { + if (airborneModifier != null) + { + if (m_CurrentModifiers.Contains ((IKartModifier)airborneModifier) && currentGroundInfo.isGrounded) + m_CurrentModifiers.Remove ((IKartModifier)airborneModifier); + else if (!m_CurrentModifiers.Contains ((IKartModifier)airborneModifier) && !currentGroundInfo.isGrounded) + m_CurrentModifiers.Add ((IKartModifier)airborneModifier); + } + } + + /// + /// Affects the rotation stream so that the kart is level with the ground. + /// + void GroundNormal (float deltaTime, ref Quaternion rotationStream, GroundInfo currentGroundInfo, GroundInfo nextGroundInfo) + { + Vector3 rigidbodyUp = m_Rigidbody.rotation * Vector3.up; + Quaternion currentTargetRotation = Quaternion.FromToRotation (rigidbodyUp, currentGroundInfo.normal); + Quaternion nextTargetRotation = Quaternion.FromToRotation (rigidbodyUp, nextGroundInfo.normal); + if (nextGroundInfo.isCloseToGround) + rotationStream = Quaternion.RotateTowards (currentTargetRotation, nextTargetRotation, 0.5f) * rotationStream; + else + rotationStream = Quaternion.RotateTowards (rotationStream, nextTargetRotation, airborneOrientationSpeed * deltaTime); + } + + /// + /// Affects the rotation stream based on the steering input. + /// + void TurnKart (float deltaTime, ref Quaternion rotationStream) + { + Vector3 localVelocity = Quaternion.Inverse (rotationStream) * Quaternion.Inverse (m_DriftOffset) * m_Velocity; + float forwardReverseSwitch = Mathf.Sign (localVelocity.z); + float modifiedSteering = m_HasControl ? m_Input.Steering * forwardReverseSwitch : 0f; + if (m_DriftState == DriftState.FacingLeft) + modifiedSteering = Mathf.Clamp (modifiedSteering, -1f, -minDriftingSteering); + else if (m_DriftState == DriftState.FacingRight) + modifiedSteering = Mathf.Clamp (modifiedSteering, minDriftingSteering, 1f); + + float speedProportion = m_Velocity.sqrMagnitude > 0f ? 1f : 0f; + float turn = m_ModifiedStats.turnSpeed * modifiedSteering * speedProportion * deltaTime; + Quaternion deltaRotation = Quaternion.Euler (0f, turn, 0f); + rotationStream = rotationStream * deltaRotation; + } + + /// + /// Calculates the velocity of the kart. + /// + void CalculateDrivingVelocity (float deltaTime, GroundInfo groundInfo, Quaternion rotationStream) + { + Vector3 localVelocity = Quaternion.Inverse (rotationStream) * Quaternion.Inverse (m_DriftOffset) * m_Velocity; + if (groundInfo.isGrounded) + { + localVelocity.x = Mathf.MoveTowards (localVelocity.x, 0f, m_ModifiedStats.grip * deltaTime); + + float acceleration = m_HasControl ? m_Input.Acceleration : localVelocity.z > 0.05f ? -1f : 0f; + + if(acceleration > -k_Deadzone && acceleration < k_Deadzone) // No acceleration input. + localVelocity.z = Mathf.MoveTowards (localVelocity.z, 0f, m_ModifiedStats.coastingDrag * deltaTime); + else if (acceleration > k_Deadzone) // Positive acceleration input. + localVelocity.z = Mathf.MoveTowards (localVelocity.z, m_ModifiedStats.topSpeed, acceleration * m_ModifiedStats.acceleration * deltaTime); + else if (localVelocity.z > k_Deadzone) // Negative acceleration input and going forwards. + localVelocity.z = Mathf.MoveTowards (localVelocity.z, 0f, -acceleration * m_ModifiedStats.braking * deltaTime); + else // Negative acceleration input and not going forwards. + localVelocity.z = Mathf.MoveTowards (localVelocity.z, -m_ModifiedStats.reverseSpeed, -acceleration * m_ModifiedStats.reverseAcceleration * deltaTime); + } + + if (groundInfo.isCapsuleTouching) + localVelocity.y = Mathf.Max (0f, localVelocity.y); + + m_Velocity = m_DriftOffset * rotationStream * localVelocity; + + if (!groundInfo.isCapsuleTouching) + m_Velocity += Vector3.down * m_ModifiedStats.gravity * deltaTime; + } + + /// + /// Affects the velocity of the kart if it hops. + /// + void Hop (Quaternion rotationStream, GroundInfo currentGroundInfo) + { + if (currentGroundInfo.isGrounded && m_Input.HopPressed && m_HasControl) + { + m_Velocity += rotationStream * Vector3.up * m_ModifiedStats.hopHeight; + + OnHop.Invoke (); + } + } + + /// + /// Starts a drift if the kart lands with a sufficient turn. + /// + void StartDrift (GroundInfo currentGroundInfo, GroundInfo nextGroundInfo, Quaternion rotationStream) + { + if (m_Input.HopHeld && !currentGroundInfo.isGrounded && nextGroundInfo.isGrounded && m_HasControl && m_DriftState == DriftState.NotDrifting) + { + Vector3 kartForward = rotationStream * Vector3.forward; + kartForward.y = 0f; + kartForward.Normalize (); + Vector3 flatVelocity = m_Velocity; + flatVelocity.y = 0f; + flatVelocity.Normalize (); + + float signedAngle = Vector3.SignedAngle (kartForward, flatVelocity, Vector3.up); + + if (signedAngle > minDriftStartAngle && signedAngle < maxDriftStartAngle) + { + m_DriftOffset = Quaternion.Euler (0f, signedAngle, 0f); + m_DriftState = DriftState.FacingLeft; + + OnDriftStarted.Invoke (); + } + else if (signedAngle < -minDriftStartAngle && signedAngle > -maxDriftStartAngle) + { + m_DriftOffset = Quaternion.Euler (0f, signedAngle, 0f); + m_DriftState = DriftState.FacingRight; + + OnDriftStarted.Invoke (); + } + } + } + + /// + /// Stops a drift if the hop input is no longer held. + /// + void StopDrift (float deltaTime) + { + if (!m_Input.HopHeld || !m_HasControl) + { + m_DriftOffset = Quaternion.RotateTowards (m_DriftOffset, Quaternion.identity, rotationCorrectionSpeed * deltaTime); + m_DriftState = DriftState.NotDrifting; + + OnDriftStopped.Invoke (); + } + } + + /// + /// Changes the velocity of the kart and processes collisions based on the velocity of the kart. + /// + Vector3 ProcessVelocityCollisions (float deltaTime, Quaternion rotationStream, Vector3 penetrationOffset) + { + Vector3 rayDirection = m_Velocity * deltaTime + penetrationOffset; + float rayLength = rayDirection.magnitude + .2f; + Ray sphereCastRay = new Ray (m_RigidbodyPosition, rayDirection); + int hits = Physics.SphereCastNonAlloc (sphereCastRay, 0.75f, m_RaycastHitBuffer, rayLength, allCollidingLayers, QueryTriggerInteraction.Collide); + + for (int i = 0; i < hits; i++) + { + if (m_RaycastHitBuffer[i].collider == m_Capsule) + continue; + + + IKartModifier kartModifier = m_RaycastHitBuffer[i].collider.GetComponent (); + if (kartModifier != null) + { + m_CurrentModifiers.Add (kartModifier); + m_TempModifiers.Add (kartModifier); + } + + IKartCollider kartCollider = m_RaycastHitBuffer[i].collider.GetComponent (); + if (Mathf.Approximately (m_RaycastHitBuffer[i].distance, 0f)) + if (Physics.Raycast (m_RigidbodyPosition, rotationStream * Vector3.down, out RaycastHit hit, rayLength + 0.5f, allCollidingLayers, QueryTriggerInteraction.Collide)) + m_RaycastHitBuffer[i] = hit; + + if (kartCollider != null) + { + m_Velocity = kartCollider.ModifyVelocity (this, m_RaycastHitBuffer[i]); + + if (Mathf.Abs(Vector3.Dot(m_RaycastHitBuffer[i].normal, Vector3.up)) <= .2f){ + OnKartCollision.Invoke (); + } + } + else + { + penetrationOffset = ComputePenetrationOffset (rotationStream, penetrationOffset); + } + } + + return penetrationOffset; + } + + /// + /// So that the velocity doesn't keep forcing a kart into a collider, the velocity is reduced by the penetrationOffset without flipping the direction of the velocity. + /// + /// The time between frames. + /// The amount the kart needs to be moved in order to not overlap other colliders. + void AdjustVelocityByPenetrationOffset (float deltaTime, ref Vector3 penetrationOffset) + { + // Find how much of the velocity is in the penetration offset's direction. + Vector3 penetrationProjection = Vector3.Project (m_Velocity * deltaTime, penetrationOffset); + + // If the projection and offset are in opposite directions (more than 90 degrees between the velocity and offset) ... + if (Vector3.Dot (penetrationOffset, penetrationProjection) < 0f) + { + // ... and if the offset is larger than the projection... + if (penetrationOffset.sqrMagnitude > penetrationProjection.sqrMagnitude) + { + // ... then reduce the velocity by the equivalent velocity of the projection and the the offset by the projection. + m_Velocity -= penetrationProjection / deltaTime; + penetrationOffset += penetrationProjection; + } + else // If the offset is smaller than the projection... + { + // ... then reduce the velocity by the equivalent velocity of the offset and then there is the offset remaining. + m_Velocity += penetrationOffset / deltaTime; + penetrationOffset = Vector3.zero; + } + } + + m_Movement = m_Velocity * deltaTime + penetrationOffset; + } + + /// + /// This adds a modifier to the karts stats. This might be something like a speed boost pickup being activated. + /// + /// The modifier to the kart's stats. + public void AddKartModifier (IKartModifier kartModifier) + { + m_CurrentModifiers.Add (kartModifier); + } + + /// + /// This removes a previously added modifier to the karts stats. This might be something like a speed boost that has just run out. + /// + /// + public void RemoveKartModifier (IKartModifier kartModifier) + { + m_CurrentModifiers.Remove (kartModifier); + } + + /// + /// This exists as part of the IKartCollider interface. It is called when a kart collides with this kart. + /// + /// The kart that has collided with this kart. + /// Data for the collision. + /// The velocity of the colliding kart once it has been modified. + public Vector3 ModifyVelocity (IKartInfo collidingKart, RaycastHit collisionHit) + { + float weightDifference = collidingKart.CurrentStats.weight - m_ModifiedStats.weight; + if (weightDifference <= 0f) + { + Vector3 toCollidingKart = (collidingKart.Position - m_RigidbodyPosition).normalized; + return collidingKart.Velocity + toCollidingKart * (kartToKartBump - weightDifference); + } + + return collidingKart.Velocity; + } + + /// + /// This exists as part of the IMovable interface. Typically it is called by the TrackManager when the race starts. + /// + public void EnableControl () + { + m_HasControl = true; + } + + /// + /// This exists as part of the IMovable interface. Typically it is called by the TrackManager when the kart finishes its final lap. + /// + public void DisableControl () + { + m_HasControl = false; + m_DriftState = DriftState.NotDrifting; + } + + /// + /// This exists as part of the IMovable interface. Typically it is called by the TrackManager to determine whether control should be re-enabled after a reposition. + /// + /// + public bool IsControlled () + { + return m_HasControl; + } + + /// + /// This exists as part of the IMovable interface. It is used to move the kart to a specific position for example to replace it when the kart falls off the track. + /// + public void ForceMove (Vector3 positionDelta, Quaternion rotationDelta) + { + m_Velocity = Vector3.zero; + m_DriftState = DriftState.NotDrifting; + m_RepositionPositionDelta = positionDelta; + m_RepositionRotationDelta = rotationDelta; + } + + /// + /// This exists as part of the IMovable interface. + /// + /// The racer component implementation of the IRacer interface. + public IRacer GetRacer () + { + return m_Racer; + } + + /// + /// This exists as part of the IMovable interface. + /// + /// The implementation of IKartInfo for this script. + public IKartInfo GetKartInfo () + { + return this; + } + } +} \ No newline at end of file diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Scripts/KartSystems/KartMovement/KartMovement.cs.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Scripts/KartSystems/KartMovement/KartMovement.cs.meta" new file mode 100644 index 00000000..d12dc891 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Scripts/KartSystems/KartMovement/KartMovement.cs.meta" @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 53099c8bf5564a54caebda5331b303b6 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Scripts/KartSystems/KartMovement/KartStats.cs" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Scripts/KartSystems/KartMovement/KartStats.cs" new file mode 100644 index 00000000..3c6ef99b --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Scripts/KartSystems/KartMovement/KartStats.cs" @@ -0,0 +1,90 @@ +using System; +using System.Collections.Generic; +using UnityEngine; + +namespace KartGame.KartSystems +{ + /// + /// A class representing the fundamental stats required to move the kart. They are separated in this way in order to easily adjust any part of how the kart behaves. + /// + [Serializable] public struct KartStats + { + [Tooltip ("The rate at which the kart increases its forward speed when the accelerate button is held and the brake button isn't held.")] + public float acceleration; + [Tooltip ("The rate at which the kart decreases its forward speed when the brake button is held.")] + public float braking; + [Tooltip ("The rate at which the kart decreases its forward speed when neither the accelerate nor the brake button is held.")] + public float coastingDrag; + [Tooltip ("The rate at which the kart decreases its vertical speed when not on the ground.")] + public float gravity; + [Tooltip ("The rate at which the kart changes its lateral speed towards zero.")] + public float grip; + [Tooltip ("The speed given to the kart when a hop is performed.")] + public float hopHeight; + [Tooltip ("The rate at which the kart increases its backward speed when the brake button is held.")] + public float reverseAcceleration; + [Tooltip ("The maximum speed the kart can travel backwards.")] + public float reverseSpeed; + [Tooltip ("The maximum speed the kart can travel forwards.")] + public float topSpeed; + [Tooltip ("The rate at which the kart changes its rotation around its local y axis.")] + public float turnSpeed; + [Tooltip ("Used for determining which kart bounces off the other when two karts collide.")] + public float weight; + + /// + /// Used to assign a default value to all of the stats. + /// + /// The value to be given to each stat. + public KartStats (float defaultValue) + { + acceleration = defaultValue; + braking = defaultValue; + coastingDrag = defaultValue; + gravity = defaultValue; + grip = defaultValue; + hopHeight = defaultValue; + reverseAcceleration = defaultValue; + reverseSpeed = defaultValue; + topSpeed = defaultValue; + turnSpeed = defaultValue; + weight = defaultValue; + } + + /// + /// A method for applying a collection of modifications to some stats. + /// + /// A collection of modifiers to the kart stats to be applied in order. + /// The initial stats to be modified. + /// The result of modifying the starting stats. + public static void GetModifiedStats (List modifiers, KartStats startingStats, ref KartStats modifiedStats) + { + modifiedStats.acceleration = startingStats.acceleration; + modifiedStats.braking = startingStats.braking; + modifiedStats.coastingDrag = startingStats.coastingDrag; + modifiedStats.gravity = startingStats.gravity; + modifiedStats.grip = startingStats.grip; + modifiedStats.hopHeight = startingStats.hopHeight; + modifiedStats.reverseAcceleration = startingStats.reverseAcceleration; + modifiedStats.reverseSpeed = startingStats.reverseSpeed; + modifiedStats.topSpeed = startingStats.topSpeed; + modifiedStats.turnSpeed = startingStats.turnSpeed; + modifiedStats.weight = startingStats.weight; + + for (int i = 0; i < modifiers.Count; i++) + { + modifiedStats.acceleration = modifiers[i].ModifyAcceleration (modifiedStats.acceleration); + modifiedStats.braking = modifiers[i].ModifyBraking (modifiedStats.braking); + modifiedStats.coastingDrag = modifiers[i].ModifyCoastingDrag (modifiedStats.coastingDrag); + modifiedStats.gravity = modifiers[i].ModifyGravity (modifiedStats.gravity); + modifiedStats.grip = modifiers[i].ModifyGrip (modifiedStats.grip); + modifiedStats.hopHeight = modifiers[i].ModifyHopHeight (modifiedStats.hopHeight); + modifiedStats.reverseAcceleration = modifiers[i].ModifyReverseAcceleration (modifiedStats.reverseAcceleration); + modifiedStats.reverseSpeed = modifiers[i].ModifyReverseSpeed (modifiedStats.reverseSpeed); + modifiedStats.topSpeed = modifiers[i].ModifyTopSpeed (modifiedStats.topSpeed); + modifiedStats.turnSpeed = modifiers[i].ModifyTurnSpeed (modifiedStats.turnSpeed); + modifiedStats.weight = modifiers[i].ModifyWeight (modifiedStats.weight); + } + } + } +} \ No newline at end of file diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Scripts/KartSystems/KartMovement/KartStats.cs.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Scripts/KartSystems/KartMovement/KartStats.cs.meta" new file mode 100644 index 00000000..3510ab8b --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Scripts/KartSystems/KartMovement/KartStats.cs.meta" @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: ec8880f312bfae644ad110c3d348d1e2 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Scripts/Timeline.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Scripts/Timeline.meta" new file mode 100644 index 00000000..0cabf5fd --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Scripts/Timeline.meta" @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: bda68105bd3fb4240a1ff7a8b4f5a936 +folderAsset: yes +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Scripts/Timeline/DirectorTrigger.cs" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Scripts/Timeline/DirectorTrigger.cs" new file mode 100644 index 00000000..d20fd3bd --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Scripts/Timeline/DirectorTrigger.cs" @@ -0,0 +1,98 @@ +using System; +using UnityEngine; +using UnityEngine.Events; +using UnityEngine.Playables; + +namespace KartGame.Timeline +{ + /// + /// A MonoBehaviour that has UnityEvents for when a timeline starts and ends which are triggered automatically. + /// + public class DirectorTrigger : MonoBehaviour + { + /// + /// Contains an UnityEvent and a time at which it is triggered. + /// + [Serializable] + public class TimelineEvent + { + [Tooltip("The time through the timeline at which the event will trigger.")] + public float time; + public UnityEvent timedEvent; + + bool m_Triggered; + + /// + /// Call this to check whether the event should be triggered yet and if so, trigger it. + /// + /// The current time of the timeline playing. + public void CheckAndTriggerEvent (float currentTime) + { + if (!m_Triggered && currentTime >= time) + { + timedEvent.Invoke (); + m_Triggered = true; + } + } + + /// + /// Allows for the event to be triggered again. This should be called at the end of a timeline if it loops or otherwise needs to be called again. + /// + public void Reset () + { + m_Triggered = false; + } + } + + + [Tooltip("The playable director to be played.")] + public PlayableDirector director; + [Tooltip("These events will be triggered at their corresponding time through the duration of the timeline.")] + public TimelineEvent[] events; + + bool m_StartTimer; + float m_Timer; + + void Awake () + { + ResetTrigger (); + } + + void Update () + { + if (m_StartTimer) + { + for (int i = 0; i < events.Length; i++) + { + events[i].CheckAndTriggerEvent (m_Timer); + } + + m_Timer += Time.deltaTime; + } + } + + /// + /// Starts the Playable Director and triggers the events over its duration. + /// + public void TriggerDirector () + { + director.Play(); + m_StartTimer = true; + } + + /// + /// Stops the Playable Director and resets all the events. + /// + public void ResetTrigger () + { + director.Stop (); + m_StartTimer = false; + m_Timer = 0f; + + for (int i = 0; i < events.Length; i++) + { + events[i].Reset (); + } + } + } +} \ No newline at end of file diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Scripts/Timeline/DirectorTrigger.cs.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Scripts/Timeline/DirectorTrigger.cs.meta" new file mode 100644 index 00000000..ab3f4e0c --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Scripts/Timeline/DirectorTrigger.cs.meta" @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: e33e70a327b92644fad5763a83b55c50 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Scripts/Track.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Scripts/Track.meta" new file mode 100644 index 00000000..ce5e8502 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Scripts/Track.meta" @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 9cbebfbc87f7af44eb71a816684dd0f4 +folderAsset: yes +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Scripts/Track/Checkpoint.cs" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Scripts/Track/Checkpoint.cs" new file mode 100644 index 00000000..c29255ec --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Scripts/Track/Checkpoint.cs" @@ -0,0 +1,70 @@ +using System; +using UnityEngine; + +namespace KartGame.Track +{ + /// + /// This is used to mark out key points on the track that a racer must pass through in order to count as having completed a lap. + /// + [RequireComponent (typeof(BoxCollider))] + public class Checkpoint : MonoBehaviour + { + /// + /// This is subscribed to by the TrackManager in order to measure a racer's progress around the track. + /// + public event Action OnKartHitCheckpoint; + + [Tooltip ("Whether or not this checkpoint is the start/finish line.")] + public bool isStartFinishLine; + [Tooltip ("The layers to check for a kart passing through this trigger.")] + public LayerMask kartLayers; + [Tooltip("The layers to check for the ground. Used to determine where the reset position for a kart is.")] + public LayerMask groundLayers; + + Vector3 m_ResetPosition; + Quaternion m_ResetRotation; + + public Vector3 ResetPosition => m_ResetPosition; + public Quaternion ResetRotation => m_ResetRotation; + + void Reset () + { + GetComponent ().isTrigger = true; + kartLayers = LayerMask.GetMask ("Default"); + } + + void Start () + { + float boxColliderHeight = GetComponent ().size.y; + Ray ray = new Ray(transform.position + Vector3.up * boxColliderHeight * 0.5f, -Vector3.up); + + RaycastHit[] hits = Physics.RaycastAll (ray, boxColliderHeight, groundLayers, QueryTriggerInteraction.Ignore); + + if (hits.Length == 0) + throw new UnityException ("This checkpoint is not above ground and has no set reset position."); + + RaycastHit closestGround = new RaycastHit (); + closestGround.distance = float.PositiveInfinity; + + for (int i = 0; i < hits.Length; i++) + { + if (hits[i].distance < closestGround.distance) + closestGround = hits[i]; + } + + m_ResetPosition = closestGround.point; + + m_ResetRotation = Quaternion.LookRotation (transform.forward, closestGround.normal); + } + + void OnTriggerEnter (Collider other) + { + if (kartLayers.ContainsGameObjectsLayer (other.gameObject)) + { + IRacer racer = other.GetComponent (); + if (racer != null) + OnKartHitCheckpoint?.Invoke (racer, this); + } + } + } +} \ No newline at end of file diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Scripts/Track/Checkpoint.cs.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Scripts/Track/Checkpoint.cs.meta" new file mode 100644 index 00000000..c455eed1 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Scripts/Track/Checkpoint.cs.meta" @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: bbae15ab488cd06418614cdb83952550 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Scripts/Track/IRacer.cs" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Scripts/Track/IRacer.cs" new file mode 100644 index 00000000..16c8288b --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Scripts/Track/IRacer.cs" @@ -0,0 +1,52 @@ +using System.Collections.Generic; +using KartGame.KartSystems; +using UnityEngine; + +namespace KartGame.Track +{ + /// + /// Should be implemented by things that take part in a race. Allows for data to be collected about the timings of the race. Default implementation is the Racer MonoBehaviour. + /// + public interface IRacer : IControllable + { + /// + /// Stop the race timer from counting up. + /// + void PauseTimer (); + + /// + /// Resume the race timer counting up. + /// + void UnpauseTimer (); + + /// + /// Called by the TrackManager when the racer has hit the start/finish line. + /// + void HitStartFinishLine (); + + /// + /// Gets the current lap the racer is on, starting at 1 once the racer crosses the start line. + /// + int GetCurrentLap (); + + /// + /// Gets all the lap times for this racer for their current race. + /// + List GetLapTimes (); + + /// + /// Gets the current lap time. + /// + float GetLapTime (); + + /// + /// Gets the total time spent in the race so far. + /// + float GetRaceTime (); + + /// + /// Gets the name of the racer for scoreboards and records. + /// + string GetName (); + } +} \ No newline at end of file diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Scripts/Track/IRacer.cs.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Scripts/Track/IRacer.cs.meta" new file mode 100644 index 00000000..43ec1d6d --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Scripts/Track/IRacer.cs.meta" @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 921107b8cada3d84d9542def7091ab19 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Scripts/Track/InstantKartRepositioner.cs" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Scripts/Track/InstantKartRepositioner.cs" new file mode 100644 index 00000000..334ee285 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Scripts/Track/InstantKartRepositioner.cs" @@ -0,0 +1,32 @@ +using System.Collections; +using System.Collections.Generic; +using KartGame.KartSystems; +using UnityEngine; + +namespace KartGame.Track +{ + /// + /// A child class of KartRepositioner that positions a kart without any delay. + /// + public class InstantKartRepositioner : KartRepositioner + { + /// + public override void Reposition (Checkpoint lastCheckpoint, IMovable movable, bool isControlled) + { + IKartInfo kartInfo = movable.GetKartInfo (); + + if (kartInfo == null) + { + RepositionComplete (movable, isControlled); + return; + } + + Vector3 kartToResetPosition = lastCheckpoint.ResetPosition - kartInfo.Position; + Quaternion kartToResetRotation = lastCheckpoint.ResetRotation * Quaternion.Inverse (kartInfo.Rotation); + + movable.ForceMove (kartToResetPosition, kartToResetRotation); + + RepositionComplete (movable, isControlled); + } + } +} \ No newline at end of file diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Scripts/Track/InstantKartRepositioner.cs.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Scripts/Track/InstantKartRepositioner.cs.meta" new file mode 100644 index 00000000..18ac568b --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Scripts/Track/InstantKartRepositioner.cs.meta" @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: bc8057417ab61c94ba1339339f9745cb +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Scripts/Track/KartRepositionTrigger.cs" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Scripts/Track/KartRepositionTrigger.cs" new file mode 100644 index 00000000..7d7aa044 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Scripts/Track/KartRepositionTrigger.cs" @@ -0,0 +1,35 @@ +using System.Collections; +using System.Collections.Generic; +using KartGame.KartSystems; +using UnityEngine; + +namespace KartGame.Track +{ + /// + /// This class exists only as a way of triggering a kart reset in the template and should not be used as part of a full game. + /// A replacement for a full game would detect when the kart was stuck/out of bounds/any other requirement and then replace it. + /// + public class KartRepositionTrigger : MonoBehaviour + { + [Tooltip("A reference to the KartMovement script of the kart.")] + [RequireInterface (typeof(IMovable))] + public Object movable; + [Tooltip("A reference to the TrackManager script for this track.")] + public TrackManager trackManager; + + IMovable m_Movable; + + void Awake () + { + m_Movable = (IMovable)movable; + } + + void Update () + { + if (Input.GetButtonDown ("Reset")) + { + trackManager.ReplaceMovable (m_Movable); + } + } + } +} \ No newline at end of file diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Scripts/Track/KartRepositionTrigger.cs.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Scripts/Track/KartRepositionTrigger.cs.meta" new file mode 100644 index 00000000..e71e8ad1 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Scripts/Track/KartRepositionTrigger.cs.meta" @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: f04a008d6bb17dc4aaaeb69485deb658 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Scripts/Track/KartRepositioner.cs" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Scripts/Track/KartRepositioner.cs" new file mode 100644 index 00000000..e6a376c3 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Scripts/Track/KartRepositioner.cs" @@ -0,0 +1,37 @@ +using System; +using System.Collections; +using System.Collections.Generic; +using KartGame.KartSystems; +using UnityEngine; + +namespace KartGame.Track +{ + /// + /// A abstract class that deals with the repositioning of karts when they get stuck, fall off the track, etc. + /// Derive from this to implement a way of repositioning karts. + /// + public abstract class KartRepositioner : MonoBehaviour + { + /// + /// This event is called when the Reposition function is finished. + /// + public event Action OnRepositionComplete; + + /// + /// Should be called to reposition a kart to the last checkpoint it passed through. + /// This must be overriden by a child class and can perform any operation over any period of time but must call RepositionComplete immediately before returning. + /// + /// The last checkpoint the kart passed through. + /// The IMovable implementation representing the kart. + /// Whether or not the kart is being controlled. This informs whether control should be re-enabled after the reposition. + public abstract void Reposition (Checkpoint lastCheckpoint, IMovable movable, bool isControlled); + + /// + /// This function called immediately before the overriden Reposition function returns. + /// + protected void RepositionComplete (IMovable movable, bool doEnableControl) + { + OnRepositionComplete?.Invoke (movable, doEnableControl); + } + } +} \ No newline at end of file diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Scripts/Track/KartRepositioner.cs.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Scripts/Track/KartRepositioner.cs.meta" new file mode 100644 index 00000000..aeb8f821 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Scripts/Track/KartRepositioner.cs.meta" @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: ec2596742a15d654eabe2b0ea130d7e1 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Scripts/Track/Racer.cs" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Scripts/Track/Racer.cs" new file mode 100644 index 00000000..0061ef23 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Scripts/Track/Racer.cs" @@ -0,0 +1,100 @@ +using System.Collections.Generic; +using KartGame.KartSystems; +using UnityEngine; + +namespace KartGame.Track +{ + /// + /// The default implementation of the IRacer interface. This is a representation of all the timing information for a particular kart as it goes through a race. + /// + public class Racer : MonoBehaviour, IRacer + { + [Tooltip ("A reference to the IControllable for the kart. Normally this is the KartMovement script.")] + [RequireInterface (typeof(IControllable))] + public Object kartMovement; + + IControllable m_KartMovement; + bool m_IsTimerPaused = true; + float m_Timer = 0f; + int m_CurrentLap = 0; + List m_LapTimes = new List (9); + + void Awake () + { + m_KartMovement = kartMovement as IControllable; + } + + void Update () + { + if (m_CurrentLap > 0 && !m_IsTimerPaused) + m_Timer += Time.deltaTime; + } + + public void PauseTimer () + { + m_IsTimerPaused = true; + } + + public void UnpauseTimer () + { + m_IsTimerPaused = false; + } + + public void HitStartFinishLine () + { + if (m_CurrentLap > 0) + { + m_LapTimes.Add (m_Timer); + m_Timer = 0f; + } + + m_CurrentLap++; + } + + public int GetCurrentLap () + { + return m_CurrentLap; + } + + public List GetLapTimes () + { + return m_LapTimes; + } + + public float GetLapTime () + { + return m_Timer; + } + + public float GetRaceTime () + { + float raceTime = m_Timer; + for (int i = 0; i < m_LapTimes.Count; i++) + { + raceTime += m_LapTimes[i]; + } + + return raceTime; + } + + public void EnableControl () + { + m_KartMovement.EnableControl (); + } + + public void DisableControl () + { + m_KartMovement.DisableControl (); + } + + public bool IsControlled () + { + return m_KartMovement.IsControlled (); + } + + public string GetName () + { + return name; + } + } +} \ No newline at end of file diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Scripts/Track/Racer.cs.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Scripts/Track/Racer.cs.meta" new file mode 100644 index 00000000..b50ba007 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Scripts/Track/Racer.cs.meta" @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 7182949d2a8e7604abfc172a14ac5d7c +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Scripts/Track/TimeDisplay.cs" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Scripts/Track/TimeDisplay.cs" new file mode 100644 index 00000000..d0f6565a --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Scripts/Track/TimeDisplay.cs" @@ -0,0 +1,301 @@ +using System; +using System.Collections.Generic; +using System.Text; +using TMPro; +using UnityEngine; +using Object = UnityEngine.Object; + +namespace KartGame.Track +{ + /// + /// A class to display information about a particular racer's timings. WARNING: This class uses strings and creates a small amount of garbage each frame. + /// + public class TimeDisplay : MonoBehaviour + { + /// + /// The different information that can be displayed on screen. + /// + public enum DisplayOptions + { + /// + /// Displays the total time of the current race. + /// + Race, + /// + /// Displays the time for all complete and non-complete laps. + /// + AllLaps, + /// + /// Displays the time for all the complete laps. + /// + FinishedLaps, + /// + /// Displays the time for all the complete laps and the current lap. + /// + FinishedAndCurrentLaps, + /// + /// Displays the time for the current lap. + /// + CurrentLap, + /// + /// Displays the time for the best lap since the session started. + /// + SessionBestLap, + /// + /// Displays the time for the best race since the session started. + /// + SessionBestRace, + /// + /// Displays the time for the best lap ever. + /// + HistoricalBestLap, + /// + /// Displays the time for the best race ever. + /// + HistoricalBestRace, + } + + + [Tooltip("The timings to be displayed and the order to display them.")] + public List initialDisplayOptions = new List(); + [Tooltip("A reference to the track manager.")] + public TrackManager trackManager; + [Tooltip("A reference to the TextMeshProUGUI to display the information.")] + public TextMeshProUGUI textComponent; + [Tooltip("A reference to the racer to display the information for.")] + [RequireInterface(typeof(IRacer))] + public Object initialRacer; + + List m_DisplayCalls = new List(); + IRacer m_Racer; + StringBuilder m_StringBuilder = new StringBuilder(0, 300); + + void Awake() + { + for (int i = 0; i < initialDisplayOptions.Count; i++) + { + switch (initialDisplayOptions[i]) + { + case DisplayOptions.Race: + m_DisplayCalls.Add(DisplayRaceTime); + break; + case DisplayOptions.AllLaps: + m_DisplayCalls.Add(DisplayAllLapTimes); + break; + case DisplayOptions.FinishedLaps: + m_DisplayCalls.Add(DisplayFinishedLapTimes); + break; + case DisplayOptions.FinishedAndCurrentLaps: + m_DisplayCalls.Add(DisplayFinishedAndCurrentLapTimes); + break; + case DisplayOptions.CurrentLap: + m_DisplayCalls.Add(DisplayCurrentLapTime); + break; + case DisplayOptions.SessionBestLap: + m_DisplayCalls.Add(DisplaySessionBestLapTime); + break; + case DisplayOptions.SessionBestRace: + m_DisplayCalls.Add(DisplaySessionBestRaceTime); + break; + case DisplayOptions.HistoricalBestLap: + m_DisplayCalls.Add(DisplayHistoricalBestLapTime); + break; + case DisplayOptions.HistoricalBestRace: + m_DisplayCalls.Add(DisplayHistoricalBestRaceTime); + break; + default: + throw new ArgumentOutOfRangeException(); + } + } + + m_Racer = (IRacer)initialRacer; + } + + void Update() + { + m_StringBuilder.Clear(); + + for (int i = 0; i < m_DisplayCalls.Count; i++) + { + m_DisplayCalls[i].Invoke(); + } + + textComponent.text = m_StringBuilder.ToString(); + } + + void DisplayRaceTime() + { + m_StringBuilder.AppendLine($"Total: {m_Racer.GetRaceTime():.##}"); + } + + void DisplayAllLapTimes() + { + List lapTimes = m_Racer.GetLapTimes(); + int lapTotal = trackManager.raceLapTotal; + + for (int i = 0; i < lapTotal; i++) + { + m_StringBuilder.Append("Lap "); + m_StringBuilder.Append(i + 1); + m_StringBuilder.Append(": "); + + if (i < lapTimes.Count) + { + m_StringBuilder.AppendFormat(lapTimes[i].ToString(".##")); + } + else + { + m_StringBuilder.Append("--:--"); + } + + m_StringBuilder.Append('\n'); + } + + } + + void DisplayFinishedLapTimes() + { + List lapTimes = m_Racer.GetLapTimes(); + for (int i = 0; i < lapTimes.Count; i++) + { + m_StringBuilder.Append("Lap "); + m_StringBuilder.Append(i + 1); + m_StringBuilder.Append(": "); + m_StringBuilder.Append(lapTimes[i].ToString(".##")); + m_StringBuilder.Append('\n'); + } + } + + void DisplayFinishedAndCurrentLapTimes() + { + List lapTimes = m_Racer.GetLapTimes(); + for (int i = 0; i < lapTimes.Count; i++) + { + m_StringBuilder.Append("Lap "); + m_StringBuilder.Append(i + 1); + m_StringBuilder.Append(": "); + m_StringBuilder.Append(lapTimes[i].ToString(".##")); + m_StringBuilder.Append('\n'); + } + + float currentLapTime = m_Racer.GetLapTime(); + if (Mathf.Approximately(currentLapTime, 0f)) + return; + + m_StringBuilder.Append("Lap "); + m_StringBuilder.Append(lapTimes.Count + 1); + m_StringBuilder.Append(": "); + m_StringBuilder.Append(currentLapTime.ToString(".##")); + m_StringBuilder.Append('\n'); + } + + void DisplayCurrentLapTime() + { + float currentLapTime = m_Racer.GetLapTime(); + if (Mathf.Approximately(currentLapTime, 0f)) + return; + + m_StringBuilder.Append("Current: "); + m_StringBuilder.Append(currentLapTime.ToString(".##")); + m_StringBuilder.Append('\n'); + } + + void DisplaySessionBestLapTime() + { + float bestLapTime = trackManager.SessionBestLap; + if (Mathf.Approximately(bestLapTime, -1f)) + return; + + m_StringBuilder.Append("Session Best Lap: "); + m_StringBuilder.Append(bestLapTime.ToString(".##")); + m_StringBuilder.Append('\n'); + } + + void DisplaySessionBestRaceTime() + { + float bestLapTime = trackManager.SessionBestRace; + if (Mathf.Approximately(bestLapTime, -1f)) + return; + + m_StringBuilder.Append("Session Best Race: "); + m_StringBuilder.Append(bestLapTime.ToString(".##")); + m_StringBuilder.Append('\n'); + } + + void DisplayHistoricalBestLapTime() + { + float bestLapTime = trackManager.HistoricalBestLap; + if (Mathf.Approximately(bestLapTime, -1f)) + return; + + m_StringBuilder.Append("Best Lap Ever: "); + m_StringBuilder.Append(bestLapTime.ToString(".##")); + m_StringBuilder.Append('\n'); + } + + void DisplayHistoricalBestRaceTime() + { + float bestLapTime = trackManager.HistoricalBestRace; + if (Mathf.Approximately(bestLapTime, -1f)) + return; + + m_StringBuilder.Append("Best Race Ever: "); + m_StringBuilder.Append(bestLapTime.ToString(".##")); + m_StringBuilder.Append('\n'); + } + + /// + /// Call this function to change what information is currently being displayed. This causes a GCAlloc. + /// + /// A collection of the new options for the display. + /// One or more of the display options is not valid. + public void RebindDisplayOptions(List newDisplay) + { + m_DisplayCalls.Clear(); + + for (int i = 0; i < newDisplay.Count; i++) + { + switch (newDisplay[i]) + { + case DisplayOptions.Race: + m_DisplayCalls.Add(DisplayRaceTime); + break; + case DisplayOptions.AllLaps: + m_DisplayCalls.Add(DisplayAllLapTimes); + break; + case DisplayOptions.FinishedLaps: + m_DisplayCalls.Add(DisplayFinishedLapTimes); + break; + case DisplayOptions.FinishedAndCurrentLaps: + m_DisplayCalls.Add(DisplayFinishedAndCurrentLapTimes); + break; + case DisplayOptions.CurrentLap: + m_DisplayCalls.Add(DisplayCurrentLapTime); + break; + case DisplayOptions.SessionBestLap: + m_DisplayCalls.Add(DisplaySessionBestLapTime); + break; + case DisplayOptions.SessionBestRace: + m_DisplayCalls.Add(DisplaySessionBestRaceTime); + break; + case DisplayOptions.HistoricalBestLap: + m_DisplayCalls.Add(DisplayHistoricalBestLapTime); + break; + case DisplayOptions.HistoricalBestRace: + m_DisplayCalls.Add(DisplayHistoricalBestRaceTime); + break; + default: + throw new ArgumentOutOfRangeException(); + } + } + } + + /// + /// Call this function to change the racer about which the information is being displayed. + /// + public void RebindRacer(IRacer newRacer) + { + m_Racer = newRacer; + } + } +} \ No newline at end of file diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Scripts/Track/TimeDisplay.cs.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Scripts/Track/TimeDisplay.cs.meta" new file mode 100644 index 00000000..1595212e --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Scripts/Track/TimeDisplay.cs.meta" @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 923988891dedec44e8ef297eacc10c58 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Scripts/Track/TrackManager.cs" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Scripts/Track/TrackManager.cs" new file mode 100644 index 00000000..1dd35cd5 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Scripts/Track/TrackManager.cs" @@ -0,0 +1,267 @@ +using System.Collections; +using System.Collections.Generic; +using System.Linq; +using KartGame.KartSystems; +using UnityEngine; + +namespace KartGame.Track +{ + /// + /// A MonoBehaviour to deal with all the time and positions for the racers. + /// + public class TrackManager : MonoBehaviour + { + [Tooltip ("The name of the track in this scene. Used for track time records. Must be unique.")] + public string trackName; + [Tooltip ("Number of laps for the race.")] + public int raceLapTotal; + [Tooltip ("All the checkpoints for the track in the order that they should be completed starting with the start/finish line checkpoint.")] + public List checkpoints = new List (); + [Tooltip("Reference to an object responsible for repositioning karts.")] + public KartRepositioner kartRepositioner; + + bool m_IsRaceRunning; + Dictionary m_RacerNextCheckpoints = new Dictionary (16); + TrackRecord m_SessionBestLap = TrackRecord.CreateDefault (); + TrackRecord m_SessionBestRace = TrackRecord.CreateDefault (); + TrackRecord m_HistoricalBestLap; + TrackRecord m_HistoricalBestRace; + + public bool IsRaceRunning => m_IsRaceRunning; + + /// + /// Returns the best lap time recorded this session. If no record is found, -1 is returned. + /// + public float SessionBestLap + { + get + { + if (m_SessionBestLap != null && m_SessionBestLap.time < float.PositiveInfinity) + return m_SessionBestLap.time; + return -1f; + } + } + + /// + /// Returns the best race time recorded this session. If no record is found, -1 is returned. + /// + public float SessionBestRace + { + get + { + if (m_SessionBestRace != null && m_SessionBestRace.time < float.PositiveInfinity) + return m_SessionBestRace.time; + return -1f; + } + } + + /// + /// Returns the best lap time ever recorded. If no record is found, -1 is returned. + /// + public float HistoricalBestLap + { + get + { + if (m_HistoricalBestLap != null && m_HistoricalBestLap.time < float.PositiveInfinity) + return m_HistoricalBestLap.time; + return -1f; + } + } + + /// + /// Returns the best race time ever recorded. If no record is found, -1 is returned. + /// + public float HistoricalBestRace + { + get + { + if (m_HistoricalBestRace != null && m_HistoricalBestRace.time < float.PositiveInfinity) + return m_HistoricalBestRace.time; + return -1f; + } + } + + void Awake () + { + if(checkpoints.Count < 3) + Debug.LogWarning ("There are currently " + checkpoints.Count + " checkpoints set on the Track Manager. A minimum of 3 is recommended but kart control will not be enabled with 0."); + + m_HistoricalBestLap = TrackRecord.Load (trackName, 1); + m_HistoricalBestRace = TrackRecord.Load (trackName, raceLapTotal); + } + + void OnEnable () + { + for (int i = 0; i < checkpoints.Count; i++) + { + checkpoints[i].OnKartHitCheckpoint += CheckRacerHitCheckpoint; + } + } + + void OnDisable () + { + for (int i = 0; i < checkpoints.Count; i++) + { + checkpoints[i].OnKartHitCheckpoint -= CheckRacerHitCheckpoint; + } + } + + void Start () + { + if(checkpoints.Count == 0) + return; + + Object[] allRacerArray = FindObjectsOfType ().Where (x => x is IRacer).ToArray (); + + for (int i = 0; i < allRacerArray.Length; i++) + { + IRacer racer = allRacerArray[i] as IRacer; + m_RacerNextCheckpoints.Add (racer, checkpoints[0]); + racer.DisableControl (); + } + } + + /// + /// Starts the timers and enables control of all racers. + /// + public void StartRace () + { + m_IsRaceRunning = true; + + foreach (KeyValuePair racerNextCheckpoint in m_RacerNextCheckpoints) + { + racerNextCheckpoint.Key.EnableControl (); + racerNextCheckpoint.Key.UnpauseTimer (); + } + } + + /// + /// Stops the timers and disables control of all racers, also saves the historical records. + /// + public void StopRace () + { + m_IsRaceRunning = false; + + foreach (KeyValuePair racerNextCheckpoint in m_RacerNextCheckpoints) + { + racerNextCheckpoint.Key.DisableControl (); + racerNextCheckpoint.Key.PauseTimer (); + } + + TrackRecord.Save (m_HistoricalBestLap); + TrackRecord.Save (m_HistoricalBestRace); + } + + void CheckRacerHitCheckpoint (IRacer racer, Checkpoint checkpoint) + { + if (!m_IsRaceRunning) + { + StartCoroutine (CallWhenRaceStarts (racer, checkpoint)); + return; + } + + if (m_RacerNextCheckpoints.ContainsKeyValuePair (racer, checkpoint)) + { + m_RacerNextCheckpoints[racer] = checkpoints.GetNextInCycle (checkpoint); + RacerHitCorrectCheckpoint (racer, checkpoint); + } + else + { + RacerHitIncorrectCheckpoint (racer, checkpoint); + } + } + + IEnumerator CallWhenRaceStarts (IRacer racer, Checkpoint checkpoint) + { + while (!m_IsRaceRunning) + { + yield return null; + } + + CheckRacerHitCheckpoint (racer, checkpoint); + } + + void RacerHitCorrectCheckpoint (IRacer racer, Checkpoint checkpoint) + { + if (checkpoint.isStartFinishLine) + { + int racerCurrentLap = racer.GetCurrentLap (); + if (racerCurrentLap > 0) + { + float lapTime = racer.GetLapTime (); + + if (m_SessionBestLap.time > lapTime) + m_SessionBestLap.SetRecord (trackName, 1, racer, lapTime); + + if (m_HistoricalBestLap.time > lapTime) + m_HistoricalBestLap.SetRecord (trackName, 1, racer, lapTime); + + if (racerCurrentLap == raceLapTotal) + { + float raceTime = racer.GetRaceTime (); + + if (m_SessionBestRace.time > raceTime) + m_SessionBestRace.SetRecord (trackName, raceLapTotal, racer, raceTime); + + if (m_HistoricalBestRace.time > raceTime) + m_HistoricalBestLap.SetRecord (trackName, raceLapTotal, racer, raceTime); + + racer.DisableControl (); + racer.PauseTimer (); + } + } + + if (CanEndRace ()) + StopRace (); + + racer.HitStartFinishLine (); + } + } + + bool CanEndRace () + { + foreach (KeyValuePair racerNextCheckpoint in m_RacerNextCheckpoints) + { + if (racerNextCheckpoint.Key.GetCurrentLap () < raceLapTotal) + return false; + } + + return true; + } + + void RacerHitIncorrectCheckpoint (IRacer racer, Checkpoint checkpoint) + { + // No implementation required by template. + } + + /// + /// This function should be called when a kart gets stuck or falls off the track. + /// It will find the last checkpoint the kart went through and reposition it there. + /// + /// The movable representing the kart. + public void ReplaceMovable (IMovable movable) + { + IRacer racer = movable.GetRacer (); + + if(racer == null) + return; + + Checkpoint nextCheckpoint = m_RacerNextCheckpoints[racer]; + int lastCheckpointIndex = (checkpoints.IndexOf (nextCheckpoint) + checkpoints.Count - 1) % checkpoints.Count; + Checkpoint lastCheckpoint = checkpoints[lastCheckpointIndex]; + + bool isControlled = movable.IsControlled (); + movable.DisableControl (); + kartRepositioner.OnRepositionComplete += ReenableControl; + + kartRepositioner.Reposition (lastCheckpoint, movable, isControlled); + } + + void ReenableControl (IMovable movable, bool doEnableControl) + { + if(doEnableControl) + movable.EnableControl (); + kartRepositioner.OnRepositionComplete -= ReenableControl; + } + } +} \ No newline at end of file diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Scripts/Track/TrackManager.cs.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Scripts/Track/TrackManager.cs.meta" new file mode 100644 index 00000000..bb060b28 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Scripts/Track/TrackManager.cs.meta" @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: c1f49c35970eda249befce5d24455eb3 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Scripts/Track/TrackRecord.cs" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Scripts/Track/TrackRecord.cs" new file mode 100644 index 00000000..a39fc1d9 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Scripts/Track/TrackRecord.cs" @@ -0,0 +1,117 @@ +using System; +using System.IO; +using System.Runtime.Serialization.Formatters.Binary; +using UnityEngine; + +namespace KartGame.Track +{ + /// + /// A serializable record for the time on a track. + /// + [Serializable] + public class TrackRecord + { + /// + /// The name of the track this record belongs to. + /// + public string trackName; + /// + /// The number of laps this record is for. + /// + public int laps; + /// + /// The time of this record. + /// + public float time; + /// + /// The name of the racer who recorded this time. + /// + public string name; + + const float k_DefaultTime = float.PositiveInfinity; + const string k_FolderName = "BinaryTrackRecordData"; + const string k_FileExtension = ".dat"; + + /// + /// Set all the information in a record. + /// + /// The new name of the track. + /// The new lap count. + /// The new racer whose name will be recorded. + /// The new time for the record. + public void SetRecord(string track, int lapCount, IRacer racer, float newTime) + { + trackName = track; + laps = lapCount; + name = racer.GetName(); + time = newTime; + } + + /// + /// Creates a TrackRecord with default values. + /// + public static TrackRecord CreateDefault() + { + TrackRecord defaultRecord = new TrackRecord(); + defaultRecord.time = k_DefaultTime; + return defaultRecord; + } + + /// + /// Saves a record using a file name based on the track name and number of laps. + /// + public static void Save(TrackRecord record) + { + string folderPath = Path.Combine(Application.persistentDataPath, k_FolderName); + + if (!Directory.Exists(folderPath)) + Directory.CreateDirectory(folderPath); + + string dataPath = Path.Combine(folderPath, record.trackName + record.laps + k_FileExtension); + + BinaryFormatter binaryFormatter = new BinaryFormatter(); + + using (FileStream fileStream = File.Open(dataPath, FileMode.OpenOrCreate)) + { + binaryFormatter.Serialize(fileStream, record); + } + } + + /// + /// Finds and loads a TrackRecord file. + /// + /// The name of the track to be loaded. + /// The number of laps of the record to be loaded. + /// The loaded record. + public static TrackRecord Load(string track, int lapCount) + { + string folderPath = Path.Combine(Application.persistentDataPath, k_FolderName); + + if (!Directory.Exists(folderPath)) + Directory.CreateDirectory(folderPath); + + string dataPath = Path.Combine(folderPath, track + lapCount + k_FileExtension); + + BinaryFormatter binaryFormatter = new BinaryFormatter(); + + using (FileStream fileStream = File.Open(dataPath, FileMode.OpenOrCreate)) + { + if (fileStream.Length == 0) + return CreateDefault(); + + try + { + TrackRecord loadedRecord = binaryFormatter.Deserialize(fileStream) as TrackRecord; + + if (loadedRecord == null) + return CreateDefault(); + return loadedRecord; + } + catch (Exception) + { + return CreateDefault(); + } + } + } + } +} \ No newline at end of file diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Scripts/Track/TrackRecord.cs.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Scripts/Track/TrackRecord.cs.meta" new file mode 100644 index 00000000..9aee167a --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Scripts/Track/TrackRecord.cs.meta" @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 6a35e9eb179d20c4db0006d40c96f81c +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Scripts/UI.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Scripts/UI.meta" new file mode 100644 index 00000000..a6734b8b --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Scripts/UI.meta" @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 0294f59cceb019b43953bcfa7d10dfb8 +folderAsset: yes +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Scripts/UI/MainUIController.cs" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Scripts/UI/MainUIController.cs" new file mode 100644 index 00000000..986a2700 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Scripts/UI/MainUIController.cs" @@ -0,0 +1,34 @@ +using System.Collections; +using System.Collections.Generic; +using UnityEngine; + +namespace KartGame.UI +{ + /// + /// A MonoBehaviour for controlling the different panels of the main menu. + /// + public class MainUIController : MonoBehaviour + { + [Tooltip("A collection of UI panels, one of which will be active at a time.")] + public GameObject[] panels; + + /// + /// Turns off all the panels except the one at the given index which is turned on. + /// + public void SetActivePanel(int index) + { + for (var i = 0; i < panels.Length; i++) + { + bool active = i == index; + GameObject panel = panels[i]; + if (panel.activeSelf != active) + panel.SetActive(active); + } + } + + void OnEnable() + { + SetActivePanel(0); + } + } +} \ No newline at end of file diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Scripts/UI/MainUIController.cs.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Scripts/UI/MainUIController.cs.meta" new file mode 100644 index 00000000..6ca2d6d9 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Scripts/UI/MainUIController.cs.meta" @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: e09ef6147e73a43349cab2d3a335fe07 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Scripts/UI/MetaGameController.cs" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Scripts/UI/MetaGameController.cs" new file mode 100644 index 00000000..73f5dd2c --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Scripts/UI/MetaGameController.cs" @@ -0,0 +1,82 @@ +using KartGame.Timeline; +using UnityEngine; + +namespace KartGame.UI +{ + /// + /// The MetaGameController is responsible for switching control between the high level + /// contexts of the application, eg the Main Menu and Gameplay systems. + /// + public class MetaGameController : MonoBehaviour + { + [Tooltip("A reference to the main menu.")] + public MainUIController mainMenu; + [Tooltip("A reference to the race countdown director trigger.")] + public DirectorTrigger raceCountdownTrigger; + [Tooltip("The UI canvases used for game play.")] + public Canvas[] gamePlayCanvas; + + bool m_ShowMainCanvas = true; + bool m_FirstTime = true; + + void OnEnable() + { + _ToggleMainMenu(m_ShowMainCanvas); + } + + void Start() + { + //Start the game immediately rather than show the pause menu. + HandleMenuButton(); + } + + /// + /// Turns the main menu on or off. + /// + public void ToggleMainMenu(bool show) + { + if (m_ShowMainCanvas != show) + { + _ToggleMainMenu(show); + } + } + + void _ToggleMainMenu(bool show) + { + if (show) + { + // WORKAROUND: This is due to a problem where setting the time scale to 0 causes audio to stop playing. + Time.timeScale = 0.00001f; + mainMenu.gameObject.SetActive(true); + foreach (var i in gamePlayCanvas) i.gameObject.SetActive(false); + } + else + { + Time.timeScale = 1; + mainMenu.gameObject.SetActive(false); + foreach (var i in gamePlayCanvas) i.gameObject.SetActive(true); + } + m_ShowMainCanvas = show; + } + + void Update() + { + if (Input.GetButtonDown("Menu")) + { + HandleMenuButton(); + } + } + + void HandleMenuButton() + { + ToggleMainMenu(show: !m_ShowMainCanvas); + Time.timeScale = m_ShowMainCanvas ? 0f : 1f; + + if (m_FirstTime) + { + raceCountdownTrigger.TriggerDirector(); + m_FirstTime = false; + } + } + } +} diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Scripts/UI/MetaGameController.cs.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Scripts/UI/MetaGameController.cs.meta" new file mode 100644 index 00000000..ad1fcf24 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Scripts/UI/MetaGameController.cs.meta" @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 70f11795bf0cd4fdeb9f0739ce30e21e +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Scripts/Utilities.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Scripts/Utilities.meta" new file mode 100644 index 00000000..1a283acc --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Scripts/Utilities.meta" @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 4c9ad4561c553a147bf8fc3b00164ff0 +folderAsset: yes +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Scripts/Utilities/DictionaryExtensions.cs" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Scripts/Utilities/DictionaryExtensions.cs" new file mode 100644 index 00000000..a3546327 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Scripts/Utilities/DictionaryExtensions.cs" @@ -0,0 +1,17 @@ +using System.Collections.Generic; +using UnityEngine; + +public static class DictionaryExtensions +{ + /// + /// Checks to see if a dictionary contains a specific key and value together. + /// + /// The dictionary to check. + /// The key part of the pair to check the dictionary for. + /// The value part of the pair to check the dictionary for. + /// Returns true if the dictionary contains the key and that key has the given value. Otherwise returns false. + public static bool ContainsKeyValuePair (this Dictionary dictionary, TKey key, TValue value) + { + return dictionary.TryGetValue (key, out TValue outValue) && value.Equals(outValue); + } +} diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Scripts/Utilities/DictionaryExtensions.cs.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Scripts/Utilities/DictionaryExtensions.cs.meta" new file mode 100644 index 00000000..86812230 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Scripts/Utilities/DictionaryExtensions.cs.meta" @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 11fe23075ef154a4d936c79ec4a2579e +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Scripts/Utilities/Editor.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Scripts/Utilities/Editor.meta" new file mode 100644 index 00000000..efbdf673 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Scripts/Utilities/Editor.meta" @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 4332f17bcda9caf449cb63d4b4bedc0b +folderAsset: yes +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Scripts/Utilities/Editor/RequireInterfaceAttributeDrawer.cs" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Scripts/Utilities/Editor/RequireInterfaceAttributeDrawer.cs" new file mode 100644 index 00000000..8e79fb01 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Scripts/Utilities/Editor/RequireInterfaceAttributeDrawer.cs" @@ -0,0 +1,38 @@ +using System; +using UnityEditor; +using UnityEngine; +using Object = UnityEngine.Object; + +/// +/// A drawer for an attribute that forces a public field to implement an interface. +/// +[CustomPropertyDrawer(typeof (RequireInterfaceAttribute))] +sealed class RequireInterfaceAttributeDrawer : PropertyDrawer +{ + public override void OnGUI(Rect position, SerializedProperty property, GUIContent label) + { + if (property.propertyType != SerializedPropertyType.ObjectReference) + { + Debug.LogError("RequireInterfaceAttribute can only be used on fields of type UnityEngine.Object or one of its subclasses!"); + return; + } + + Object propertyObject = property.objectReferenceValue; + if (propertyObject != null) + { + Type interfaceType = ((RequireInterfaceAttribute)attribute).type; + Type propertyType = propertyObject.GetType (); + + if (propertyType.IsAssignableFrom (interfaceType)) + { + Debug.LogError (propertyObject + " does not implement " + interfaceType.Name); + property.objectReferenceValue = null; + } + } + + EditorGUI.PropertyField(position, property, label); + + if (property.objectReferenceValue is GameObject) + property.objectReferenceValue = ((GameObject)property.objectReferenceValue).GetComponent (((RequireInterfaceAttribute)attribute).type); + } +} \ No newline at end of file diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Scripts/Utilities/Editor/RequireInterfaceAttributeDrawer.cs.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Scripts/Utilities/Editor/RequireInterfaceAttributeDrawer.cs.meta" new file mode 100644 index 00000000..9b7ec3ed --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Scripts/Utilities/Editor/RequireInterfaceAttributeDrawer.cs.meta" @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 6a9fdc706947520498fbdc89e2af304b +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Scripts/Utilities/LayerMaskExtensions.cs" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Scripts/Utilities/LayerMaskExtensions.cs" new file mode 100644 index 00000000..6eced63f --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Scripts/Utilities/LayerMaskExtensions.cs" @@ -0,0 +1,12 @@ +using UnityEngine; + +public static class LayerMaskExtensions +{ + /// + /// Checks whether a LayerMask contains the layer that the given gameobject is on. + /// + public static bool ContainsGameObjectsLayer (this LayerMask layerMask, GameObject gameObject) + { + return layerMask == (layerMask | (1 << gameObject.layer)); + } +} diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Scripts/Utilities/LayerMaskExtensions.cs.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Scripts/Utilities/LayerMaskExtensions.cs.meta" new file mode 100644 index 00000000..eb3248f2 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Scripts/Utilities/LayerMaskExtensions.cs.meta" @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 7e98241038f15f845b45d5dc82d63f1e +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Scripts/Utilities/ListExtensions.cs" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Scripts/Utilities/ListExtensions.cs" new file mode 100644 index 00000000..cdc53b6c --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Scripts/Utilities/ListExtensions.cs" @@ -0,0 +1,16 @@ +using System.Collections.Generic; +using UnityEngine; + +public static class ListExtensions +{ + /// + /// Gets the next element in a list including cycling back to the 0th element if at the end of the list. + /// + /// The next element in the cycle. + public static TElement GetNextInCycle (this List list, TElement element) + { + int index = list.IndexOf (element); + index = (index + 1) % list.Count; + return list[index]; + } +} diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Scripts/Utilities/ListExtensions.cs.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Scripts/Utilities/ListExtensions.cs.meta" new file mode 100644 index 00000000..47c27d6d --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Scripts/Utilities/ListExtensions.cs.meta" @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: da017f93199f63f468161bc28ada025b +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Scripts/Utilities/QuaternionExtensions.cs" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Scripts/Utilities/QuaternionExtensions.cs" new file mode 100644 index 00000000..1e4990ba --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Scripts/Utilities/QuaternionExtensions.cs" @@ -0,0 +1,28 @@ +using System.Collections; +using System.Collections.Generic; +using UnityEngine; + +public static class QuaternionExtensions +{ + /// + /// Scales a quaternion (including the w component) by a float. Used for weighting rotation collections. WARNING: The returned quaternion is NOT normalised. + /// Note that in order to get a weighted average for quaternions, they should be individually scaled, added and then the result should be normalised. + /// When adding weighted quaternions make sure their dot product is positive, if not scale the weighted quaternion by -1. + /// + /// Returns the scaled non-normalised quaternion. + public static Quaternion Scale (this Quaternion quaternion, float scale) + { + return new Quaternion(quaternion.x * scale, quaternion.y * scale, quaternion.z * scale, quaternion.w * scale); + } + + /// + /// Adds one quaternion to another component-wise. Used for summing weighted rotation collections. WARNING: The returned quaternion is NOT normalised. + /// Note that in order to get a weighted average for quaternions, they should be individually scaled, added and then the result should be normalised. + /// When adding weighted quaternions make sure their dot product is positive, if not scale the weighted quaternion by -1. + /// + /// Returns the a non-normalised quaternion with added components. + public static Quaternion Add (this Quaternion quaternion, Quaternion toAdd) + { + return new Quaternion(quaternion.x + toAdd.x, quaternion.y + toAdd.y, quaternion.z + toAdd.z, quaternion.w + toAdd.w); + } +} diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Scripts/Utilities/QuaternionExtensions.cs.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Scripts/Utilities/QuaternionExtensions.cs.meta" new file mode 100644 index 00000000..37bfee2b --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Scripts/Utilities/QuaternionExtensions.cs.meta" @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: e4535f1259c0759469cb747fe1bbdcb3 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Scripts/Utilities/RequireInterfaceAttribute.cs" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Scripts/Utilities/RequireInterfaceAttribute.cs" new file mode 100644 index 00000000..5d5ea363 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Scripts/Utilities/RequireInterfaceAttribute.cs" @@ -0,0 +1,20 @@ +using System; +using UnityEngine; + +/// +/// An attribute that forces a public field to implement an interface. +/// +[AttributeUsage(AttributeTargets.Field)] +public sealed class RequireInterfaceAttribute : PropertyAttribute +{ + public readonly Type type; + + public RequireInterfaceAttribute(Type value) + { + if (!value.IsInterface) + { + throw new Exception("Type must be an interface!"); + } + type = value; + } +} \ No newline at end of file diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Scripts/Utilities/RequireInterfaceAttribute.cs.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Scripts/Utilities/RequireInterfaceAttribute.cs.meta" new file mode 100644 index 00000000..c529dcb5 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Scripts/Utilities/RequireInterfaceAttribute.cs.meta" @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: dda0276f511bcf94c802f7dd670e218f +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/TextMesh Pro.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/TextMesh Pro.meta" new file mode 100644 index 00000000..22f96d64 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/TextMesh Pro.meta" @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 55ccb5e44285caf43bc10f1ff2504da2 +folderAsset: yes +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/TextMesh Pro/Documentation.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/TextMesh Pro/Documentation.meta" new file mode 100644 index 00000000..dbeac5bf --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/TextMesh Pro/Documentation.meta" @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 4565de5c2c2cffe4d89c02245f409c66 +folderAsset: yes +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/TextMesh Pro/Documentation/TextMesh Pro User Guide 2016.pdf" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/TextMesh Pro/Documentation/TextMesh Pro User Guide 2016.pdf" new file mode 100644 index 00000000..c2ea2d27 Binary files /dev/null and "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/TextMesh Pro/Documentation/TextMesh Pro User Guide 2016.pdf" differ diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/TextMesh Pro/Documentation/TextMesh Pro User Guide 2016.pdf.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/TextMesh Pro/Documentation/TextMesh Pro User Guide 2016.pdf.meta" new file mode 100644 index 00000000..e4afeef8 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/TextMesh Pro/Documentation/TextMesh Pro User Guide 2016.pdf.meta" @@ -0,0 +1,7 @@ +fileFormatVersion: 2 +guid: 1b8d251f9af63b746bf2f7ffe00ebb9b +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/TextMesh Pro/Resources.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/TextMesh Pro/Resources.meta" new file mode 100644 index 00000000..f8923906 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/TextMesh Pro/Resources.meta" @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 56ca747f2446abd4e8c6a8b0ca76d710 +folderAsset: yes +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/TextMesh Pro/Resources/Fonts & Materials.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/TextMesh Pro/Resources/Fonts & Materials.meta" new file mode 100644 index 00000000..96c92741 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/TextMesh Pro/Resources/Fonts & Materials.meta" @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 6bb433df532aeeb409dcca346abed1b3 +folderAsset: yes +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/TextMesh Pro/Resources/Fonts & Materials/LiberationSans SDF.asset" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/TextMesh Pro/Resources/Fonts & Materials/LiberationSans SDF.asset" new file mode 100644 index 00000000..14e9edad --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/TextMesh Pro/Resources/Fonts & Materials/LiberationSans SDF.asset" @@ -0,0 +1,8644 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!21 &2180264 +Material: + serializedVersion: 6 + m_ObjectHideFlags: 1 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_Name: LiberationSans SDF Material + m_Shader: {fileID: 4800000, guid: fe393ace9b354375a9cb14cdbbc28be4, type: 3} + m_ShaderKeywords: UNDERLAY_ON _EMISSION + m_LightmapFlags: 1 + m_EnableInstancingVariants: 0 + m_DoubleSidedGI: 0 + m_CustomRenderQueue: -1 + stringTagMap: {} + disabledShaderPasses: [] + m_SavedProperties: + serializedVersion: 3 + m_TexEnvs: + - _BumpMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _Cube: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _DetailAlbedoMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _DetailMask: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _DetailNormalMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _EmissionMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _FaceTex: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _MainTex: + m_Texture: {fileID: 2846298} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _MetallicGlossMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _OcclusionMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _OutlineTex: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _ParallaxMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + m_Floats: + - _Ambient: 0.5 + - _Bevel: 0.5 + - _BevelClamp: 0 + - _BevelOffset: 0 + - _BevelRoundness: 0 + - _BevelWidth: 0 + - _BumpFace: 0 + - _BumpOutline: 0 + - _BumpScale: 1 + - _ColorMask: 15 + - _Cutoff: 0.5 + - _DetailNormalMapScale: 1 + - _Diffuse: 0.5 + - _DstBlend: 0 + - _FaceDilate: 0.2 + - _FaceUVSpeedX: 0 + - _FaceUVSpeedY: 0 + - _GlossMapScale: 1 + - _Glossiness: 0.5 + - _GlossyReflections: 1 + - _GlowInner: 0.05 + - _GlowOffset: 0 + - _GlowOuter: 0.05 + - _GlowPower: 0.75 + - _GradientScale: 10 + - _LightAngle: 3.1416 + - _MaskSoftnessX: 0 + - _MaskSoftnessY: 0 + - _Metallic: 0 + - _Mode: 0 + - _OcclusionStrength: 1 + - _OutlineSoftness: 0 + - _OutlineUVSpeedX: 0 + - _OutlineUVSpeedY: 0 + - _OutlineWidth: 0.07 + - _Parallax: 0.02 + - _PerspectiveFilter: 0.875 + - _Reflectivity: 10 + - _ScaleRatioA: 0.9 + - _ScaleRatioB: 0.73125 + - _ScaleRatioC: 0.55125 + - _ScaleX: 1 + - _ScaleY: 1 + - _ShaderFlags: 0 + - _SmoothnessTextureChannel: 0 + - _SpecularHighlights: 1 + - _SpecularPower: 2 + - _SrcBlend: 1 + - _Stencil: 0 + - _StencilComp: 8 + - _StencilOp: 0 + - _StencilReadMask: 255 + - _StencilWriteMask: 255 + - _TextureHeight: 1024 + - _TextureWidth: 1024 + - _UVSec: 0 + - _UnderlayDilate: -1 + - _UnderlayOffsetX: 1 + - _UnderlayOffsetY: -1 + - _UnderlaySoftness: 0.682 + - _VertexOffsetX: 0 + - _VertexOffsetY: 0 + - _WeightBold: 0.75 + - _WeightNormal: 0 + - _ZWrite: 1 + m_Colors: + - _ClipRect: {r: -32767, g: -32767, b: 32767, a: 32767} + - _Color: {r: 1, g: 1, b: 1, a: 1} + - _EmissionColor: {r: 0, g: 0, b: 0, a: 1} + - _EnvMatrixRotation: {r: 0, g: 0, b: 0, a: 0} + - _FaceColor: {r: 1, g: 1, b: 1, a: 1} + - _GlowColor: {r: 0, g: 1, b: 0, a: 0.5} + - _MaskCoord: {r: 0, g: 0, b: 32767, a: 32767} + - _OutlineColor: {r: 0, g: 0, b: 0, a: 1} + - _ReflectFaceColor: {r: 0, g: 0, b: 0, a: 1} + - _ReflectOutlineColor: {r: 0, g: 0, b: 0, a: 1} + - _SpecularColor: {r: 1, g: 1, b: 1, a: 1} + - _UnderlayColor: {r: 0, g: 0, b: 0, a: 0.5} +--- !u!28 &2846298 +Texture2D: + m_ObjectHideFlags: 1 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_Name: LiberationSans SDF Atlas + m_ImageContentsHash: + serializedVersion: 2 + Hash: 00000000000000000000000000000000 + m_ForcedFallbackFormat: 4 + m_DownscaleFallback: 0 + serializedVersion: 2 + m_Width: 1024 + m_Height: 1024 + m_CompleteImageSize: 1048576 + m_TextureFormat: 1 + m_MipCount: 1 + m_IsReadable: 0 + m_StreamingMipmaps: 0 + m_StreamingMipmapsPriority: 0 + m_AlphaIsTransparency: 0 + m_ImageCount: 1 + m_TextureDimension: 2 + m_TextureSettings: + serializedVersion: 2 + m_FilterMode: 1 + m_Aniso: 1 + m_MipBias: 0 + m_WrapU: 0 + m_WrapV: 0 + m_WrapW: 0 + m_LightmapFormat: 0 + m_ColorSpace: 0 + image data: 1048576 + _typelessdata: 0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000204050607080909090908080706050402010000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000020202020202020201000000000000000000000000000000000000000000000000020406070808070706040100000000000000000000000000000000010305070708080706050300000000000000000000000000000000000000000000000004070808080808080808080807050200000000000000000000000000000000000000000000000001050708080808080808080808080808080808080808080808080808080808080808080808080808080808080808070501000000000000000000000000000000000000000000000000000000000000020608080808080808080808080807040000000000000000000000000000000000000000020507080808080808080808080807040000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000102020202020202020000000000000000000000000000000000000000000000000000000000000001040607080808080705030100000000000000000000000000000000000000000000000000000000000000000000000004060808080808080808070502000000000000000000000000000000000003060707070707070707070707070707070707070707070707070707070503000000000000000000000000000000000000000000000000000004060808080808080808070502000000000000000000000000000000000000000000000000000000000000020507070707070707070502000000000000000000000000000000000000000000000000000000000005090c0e0f0f0f0f0f0f0f0e0c080300000000000000000000000000000000000000000000000000000002070a0d0d0d0d0d0d0d0d0c090500000000000000000000000000000002070b0e101010101010101010100e0c07020000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000010407090b0c0e0f1010111110100f0e0d0c0a0806030000000000000000000000000000000000000000000000000000000000000000000005090c0e0e0e0e0e0e0e0e0e0e0d0a07020000000000000000000000000000000000000000000000000000000000000001060a0c0e0e0e0e0e0e0e0e0e0e0c090500000000000000000000000000000000000000000000000000000000000000030507080808080808080808060300000000000000000000000000000000000000000000000000000000000000000000000000000205080a0d0f1012131415151515151515141312100f0d0b09070402000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001060a0d0e0f0f0f0f0f0f0f0e0c080300000000000000000000000000000000000005090c0f1113141415141312100e0b07030000000000000000000003070a0d1012131415141413110f0d090601000000000000000000000000000000000000060c10131515151515151515151514110e0902000000000000000000000000000000000000000002080d11141515151515151515151515151515151515151515151515151515151515151515151515151515151515151514110d08020000000000000000000000000000000000000000000000000000040a0e1214151515151515151515151513100c060000000000000000000000000000000003090e1214151515151515151515151513110c070000000000000000000000000000000000000000000000000000000000000000000000000000000003080b0e0f0f0f0f0f0f0f0e0d0a060100000000000000000000000000000000000000000000000002070a0e101214151515141312100d0a060200000000000000000000000000000000000000000000000000000000000000060b1013151515151515151514110e080200000000000000000000000000060c1012141414141414141414141414141414141414141414141414141414120f0b0500000000000000000000000000000000000000000000060b1013151515151515151514110e08020000000000000000000000000000000000000000000000000000040a0e111314141414141413110e090400000000000000000000000000000000000000000000000000030a1015191b1b1b1b1b1b1b1b1a18140f0801000000000000000000000000000000000000000000000000070e1317191a1a1a1a1a1a1a1815110b04000000000000000000000000060d13181b1d1d1d1d1d1d1d1d1d1d1b18130d060000000000000001040607090a0a0b0b0b0b0b0a090807050301000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000003070b0e11131517191a1c1c1d1d1d1d1d1c1b1a181714120f0c09050100000000000000000000000000000000000000000000000000000000040b1115191a1a1a1a1a1a1a1a1a1a1917130d070000000000000000000000000000000000000000000000000000000000060c1216191a1a1a1a1a1a1a1a1a1a1916110b05000000000000000000000000000000000000000000000000000105090d101213141515151515151515130f0b0500000000000000000000000000000000000000000000000000000000000000000004080b0f121417191b1d1e20212122222222222121201e1d1c1a181613110e0b080501000000000000000000000000000000000000000000000000000000000000000000000000000000050c12161a1b1b1b1b1b1b1b1b1a18140f08010000000000000000000000000001070c1115181b1e1f21212121201f1d1a17140f0b05000000000000040a0f13171a1c1f2021212121201e1c1916120d08020000000000000000000000000000020a11181c2021222222222222222222211e19140d05000000000000000000000000000000000000050d13191e2022222222222222222222222222222222222222222222222222222222222222222222222222222222222222201e19130d05000000000000000000000000000000000000000000000000070e151a1e212222222222222222222221201c18110a0200000000000000000000000000060e151a1e212222222222222222222222201d18120b0300000000000000000000000000000000000000000000000000000000000000000000000001080f14181a1b1b1b1b1b1b1b1b1a17120c0600000000000000000000000000000000000000000004090e13171a1d1f2021222221201e1c1916120d0803000000000000000000000000000000000000000000000000000000010911171c1f2122222222222222201e19140d0500000000000000000000030a11171c1f2020202020202020202020202020202020202020202020202020201f1b17110a02000000000000000000000000000000000000010911171c1f2122222222222222201e19140d05000000000000000000000000000000000000000000000000080f151a1e20202020202020201e1a150e070000000000000000000000000000000000000000000000050d151c212527282828282828282724201a130b02000000000000000000000000000000000000000000010a12191f23262727272727272725211c160f06000000000000000000000810181e2427292a2a2a2a2a2a2a2a2927241f18110800000205080b0e10121415161718181818181716151312100d0b0804010000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000002070b0f13171a1d202224262728292a2a2a2a2a2928272523211f1c1915120d090500000000000000000000000000000000000000000000000000060e161c21252727272727272727272726231e1811090000000000000000000000000000000000000000000000000000000810171d22262727272727272727272725221d160f070000000000000000000000000000000000000000000001070d1115191c1e202122222222222222211f1b161009000000000000000000000000000000000000000000000000000000000002070c1014171b1e212326282a2b2c2d2e2f2f2f2f2e2e2d2c2b2a28262422201d1b1814110e0a060200000000000000000000000000000000000000000000000000000000000000000000000710171d222628282828282828282724201a130b020000000000000000000000060d13181d2125282a2c2d2e2e2e2d2b292724201b16110a040000030910151a1f2326292b2d2e2e2e2d2c2b2825221e19130e07000000000000000000000000020b141c23282c2e2e2e2e2e2e2e2e2e2e2d2a251f170f0600000000000000000000000000000000050e171e252a2d2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2d2a251e170e050000000000000000000000000000000000000000000007101920262b2e2e2e2e2e2e2e2e2e2e2e2e2c28231c140b02000000000000000000000007101820262a2d2e2e2e2e2e2e2e2e2e2e2e2c29231d150c0300000000000000000000000000000000000000000000000000000000000000000000020b131a202427282828282828282826231e17100700000000000000000000000000000000000002090f151a1f2326292b2d2e2e2e2e2d2b2926221e19140e0801000000000000000000000000000000000000000000000000010a131b22282c2e2e2e2e2e2e2e2e2d2a251f170f050000000000000000030c151c23282b2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2b27221b140b0200000000000000000000000000000000010a131b22282c2e2e2e2e2e2e2e2e2d2a251f170f050000000000000000000000000000000000000000000009111920262a2d2d2d2d2d2d2d2d2a2620191108000000000000000000000000000000000000000000030d171f272d31343535353535353534302b251d140b0100000000000000000000000000000000000000000a131c242a2f3234343434343433312d2820180f06000000000000000007111a222a2f343636363636363636363634302a221a11070a0e1215181a1d1f202223242425252524242322201e1c1a1714110d090500000000000000000000000000000000000000000000000000000000000000000000000000000000000000000003090e13171c1f2326292c2f3132343536363737373636353332302e2b2825211e1a15100b0600000000000000000000000000000000000000000000050f1820272d3134343434343434343434332f2a231b12090000000000000000000000000000000000000000000000000007111a22292e3234343434343434343434322e28211910060000000000000000000000000000000000000000060c13181d2225282b2d2e2e2e2e2e2e2e2e2e2b27211a1209000000000000000000000000000000000000000000000000000004090e13181c2024272a2d3032343638393a3b3b3c3c3c3b3b3a3938363533312f2c2a2724211d1a16120e0a05010000000000000000000000000000000000000000000000000000000000000006101921292e32353535353535353534302b251d140b010000000000000000020a11181e24292d313437393a3b3b3a3a383633302c27221c150e07060d141b21262b2f333538393a3b3b3a393735322e29241f19120b03000000000000000000000a141d262e34383b3b3b3b3b3b3b3b3b3b3a36302921180e030000000000000000000000000000030d1720293036393b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3936302920170d030000000000000000000000000000000000000000051019222b31373a3b3b3b3b3b3b3b3b3b3b3b38342e261d140a00000000000000000000050f19222a31363a3b3b3b3b3b3b3b3b3b3b3b39352e271e150b000000000000000000000000000000000000000000000000000000000000000000000a141d242b30343535353535353535332f292219100700000000000000000000000000000000050d141a20262b2f3336383a3b3b3b3b393835322e2a251f19120b04000000000000000000000000000000000000000000000009131c252d33383b3b3b3b3b3b3b3b3a36302921170d03000000000000000b151e262e34383a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a37332d251d13090000000000000000000000000000000009131c252d33383b3b3b3b3b3b3b3b3a36302921170d03000000000000000000000000000000000000000007111b232b3237393a3a3a3a3a3a3936312b231a100600000000000000000000000000000000000000000b151f2931383e4142424242424242403c362f261d12080000000000000000000000000000000000000007121c252e353b3f404040404040403e39322a21170d02000000000000030e18232c343b4043434343434343434343403b342c231912161a1e212427292b2d2f30313132323231302f2e2d2b292623201d1915110c07020000000000000000000000000000000000000000000000000000000000000000000000000000000002090e14191f23282c2f3336393b3d3f40424343444443434241403e3c3a3734312e2a26211c17110c0600000000000000000000000000000000000000020d17212a32393e404141414141414141413f3b352d241b11060000000000000000000000000000000000000000000000040f19232c343a3e414141414141414141403e39332b22180d020000000000000000000000000000000000010910171e24292e323537393b3b3b3b3b3b3b3b3b38332c241b1208000000000000000000000000000000000000000000000003090f151a1f23282c3033373a3c3f4143444647484848484848484746454341403e3b393633302d2a26221e1a16110c080200000000000000000000000000000000000000000000000000000000030e18222b333a3f4142424242424242403c362f261d120800000000000000030c141b23292f34393d41434547474847464542403c38332d2720191110181f262c32373b3f424446474847474644413e3a35302a241d150d05000000000000000006111c262f383f454848484848484848484846423b332a1f150a000000000000000000000000000009141f29323b41464848484848484848484848484848484848484848484848484848484848484848484848484848484848484846413b32291f140900000000000000000000000000000000000000010c17222b343c43474848484848484848484848453f382f261c11060000000000000000000b16212b343c4246484848484848484848484845403930271d1207000000000000000000000000000000000000000000000000000000000000000007121c262f363c4042424242424242413f3a332b22190e040000000000000000000000000000070f171e252c31373b3f424546484848474644423e3a36302a241d160e05000000000000000000000000000000000000000000040f1a252e373f44474848484848484846413b33291f150a00000000000007121d2730383f44474747474747474747474747474747474747474747474747474746443e372f251b10050000000000000000000000000000040f1a252e373f44474848484848484846413b33291f150a00000000000000000000000000000000000000020e19232d353d434647474747474746423c352c22180d0200000000000000000000000000000000000005111c27313b43494d4e4e4e4e4e4e4e4d4841382f24190f040000000000000000000000000000000000020d18232e3740474b4d4d4d4d4d4d4d4a443c33291f140800000000000009141f2a343e464c4f50505050505050504f4c463e352b211e22262a2e313336383a3b3c3d3e3e3e3e3e3d3c3b39373533302d2925211d18130d070200000000000000000000000000000000000000000000000000000000000000000000000000070d141a20252a2f34383c3f4245484a4c4d4e4f50505050504f4e4d4b494744413e3a36312d28221d17110a03000000000000000000000000000000000008131e29333c444a4d4d4d4d4d4d4d4d4d4d4b463f362d22170c00000000000000000000000000000000000000000000000a15202b353e454b4d4d4d4d4d4d4d4d4d4d4a443d342a1f140800000000000000000000000000000000020a131b22292f353a3e414446474848484848484847443e362d24190e03000000000000000000000000000000000000000001080e141a20252b2f34383c404346494b4e5051535454555555555554535251504e4c4a484543403d3936322e2a26221d18130e0903000000000000000000000000000000000000000000000000000009141f2a343d454b4e4e4e4e4e4e4e4e4d4841382e24190f040000000000030d151e262d343a4045494d50525354545453514f4c48433e38322b231b1a222931373d43474b4e51535454545352504d4a46413b352e271f170e05000000000000000b17222d38424a5154555555555555555555524d453c31261b1004000000000000000000000000030e1a26313b444c5255555555555555555555555555555555555555555555555555555555555555555555555555555555555555524c443b31261a0e0300000000000000000000000000000000000006121d28333d464e535555555555555555555554514a42382d22170b000000000000000005111c28333d464e535555555555555555555554514b42392e23180c00000000000000000000000000000000000000000000000000000000000000020d19242e3841484c4e4e4e4e4e4e4e4e4b453d342b20150b00000000000000000000000000071019212930373d42474b4f51535455555453514e4a46413c352f2720170f0600000000000000000000000000000000000000000915212c364049505455555555555555524c453b31261b110600000000000c18232e39424a50535353535353535353535353535353535353535353535353535353504941372d22160b00000000000000000000000000000915212c364049505455555555555555524c453b31261b110600000000000000000000000000000000000008141f2a353f474e52535353535353524e473e34291e13070000000000000000000000000000000000000a16222d39434d555a5b5b5b5b5b5b5b59534a40362b20150b000000000000000000000000000000000006121e2a35404952585a5a5a5a5a5a59554e453b3025190d0100000000000d1925313c4650575c5d5d5d5d5d5d5d5d5c5850473d332a2a2e33363a3d4042454648494a4b4b4b4b4b4a49484644423f3c3935312d28241e19130d0600000000000000000000000000000000000000000000000000000000000000000000030b12181f252b31363b4044484b4f525456585a5b5c5d5d5d5d5c5c5b59575553504d4a46423d39332e28221c150e07000000000000000000000000000000000c1824303b454e555a5a5a5a5a5a5a5a5a5a5751493f34281d1105000000000000000000000000000000000000000000030f1b26323d4750565a5a5a5a5a5a5a5a5a5a564f463b3025190d010000000000000000000000000000010b141c252c343a40454a4e51535455555555555555544f483f352b20140800000000000000000000000000000000000000050c131920262b31363b4044484c4f5355585a5c5e5f6061626262626161605f5e5c5b595754524f4c4946423e3a36322e29241f1a140f09030000000000000000000000000000000000000000000000010d1925313c464f565b5b5b5b5b5b5b5b59534a40362b20160b00000000020c151f2730383f454c5155595c5f60616161605e5b58544f4a433c352d24232c343b42494e53575b5d5f616161605f5d5a56524c474039312920170e040000000000000f1b27333f4a545c616161616161616161615e574d43372c20150a00000000000000000000000006131f2b37424d565e616161616161616161616161616161616161616161616161616161616161616161616161616161616161615e564d42372b1f13060000000000000000000000000000000000000a16222e3a454f585f61616161616161616161615c544a3f33271b0f03000000000000000915212d39444f585f61616161616161616161615c544b4034281c100400000000000000000000000000000000000000000000000000000000000006121e2a35404a52595b5b5b5b5b5b5b5b574f463c32271c12070000000000000000000000071019222b333a42484e53575b5e60616161615f5d5a57524d474039312921180f05000000000000000000000000000000000000000d1a26323d48525b60616161616161615e574d43382d22170d0200000004101d2934404a545c6060606060606060606060606060606060606060606060606060605b53493e33271b0f03000000000000000000000000000d1a26323d48525b60616161616161615e574d43382d22170d0200000000000000000101010101010101010c1824303c4751595f6060606060605f5950463b2f23170b0000000000000000000000000000000000000d1a26323e4a555f6668686868686868645c52473d32271c1106000000000001050707070707070707070916222e3b46515b636767676767676660574d4135291d10040000000000101d2935414d58626869696969696969696862594f453b32363a3f4346494c4f5153555657575858585757565453514e4c4845413d39342f2a241e18110a0300000000000000000000000000000000000000000000000000000000000000060e151c232a30363c42474b5054585b5e616365676869696a6a6a696867666462605d5956524e49443f39332d272019110a020000000000000000000000000000101c2935414c576066676767676767676767635b5045392d21160a00000000000000000000000000000000000000000008141f2b37434e59616767676767676767676661574d4135291d110400000000000000000000000000000a131d262e373e454c51565a5d5f6161616161616161605a51473c3025180c0000000000000000000000000000000000010810171e242b31373d42474c5054585c5f626467696a6c6d6e6e6f6f6f6e6e6d6c6b69676563615e5c5955524e4b47423e3935302b25201a140e080200000000000000000000000000000000000000000004111d2936424d58616768686868686868645c52473d32271d12070000000a141e273139424950575d6166696b6d6d6e6d6c6a6864605b554e473f372e2c353d454d545a5f64676a6c6d6e6e6d6b6966625d58524b433b322920160c020000000000121e2b37434f5b666d6e6e6e6e6e6e6e6e6e695f54493d32261b0f0400000000000000000000000915222f3b47535e686e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e685e53473b2f2215090000000000000000000000000000000000010d1a26323e4a56616a6e6e6e6e6e6e6e6e6e6e6d665b5044372b1f1306000000000000000c1925313d4a55616a6e6e6e6e6e6e6e6e6e6e6d665c5145382c2014070000000000000000000000000000000000000000000000000000000000000916222e3b46525c64686868686868686761584e43392e23190e03000000000000000000050f18222b343d454c53595f63676a6c6e6e6e6d6c6a67635e58524b433b332a21170d03000000000000000000000000000000000000101d2936424e5a646c6e6e6e6e6e6e6e695f54493f34291e13080000000713202c3945515c666c6d6d6d6d6d6d6d6d6d6d6d6d6d6d6d6d6d6d6d6d6d6d6d6d6d6c655b4f43372b1e120500000000000000000000000000101d2936424e5a646c6e6e6e6e6e6e6e695f54493f34291e1308000000000004090c0d0e0e0e0e0e0e0e0e0f1b2834404c58636b6d6d6d6d6d6d6a62574c4033271a0e0100000000000000000000000000000000000f1c2935424e5b6671757575757575756e64594e43382e23180d02000003090d11131414141414141414141825313e4a57636d73737373737372695e5145392c1f13060000000000121f2c3845515e6a747676767676767676746b61574d443c42464b4f5256595b5e6061636364656565646362615f5d5b5855514d4945403b352f29231c150e0600000000000000000000000000000000000000000000000000000000000810181f272e353b42474d52575c6064676a6d70727375757677777676757473716f6c6966625e5a55504a453f38312a231c140c0400000000000000000000000000121f2b3844515d69727474747474747474746c61564a3e32261a0e0300000000000000000000000000000000000000000c1824303c48545f6b73747474747474747472695e5245392c1f13060000000000000000000000000007111c252f38404850575d6266696c6d6e6e6e6e6e6e6e6c63594d4134281b0f00000000000000000000000000000000030b131a21282f363c42484e53585c6064686b6e71737577797a7b7b7b7b7b7b7a7a7977767472706d6b6865625e5b57534e4a45403b36312b251f19130c05000000000000000000000000000000000000000006131f2c3945525e6a73757575757575756e64594e44392e24190e040007121c263039434b545b62686d727578797a7b7a797774706c66605951494036353e474f575f656b707476797a7b7a7a7876726e69635c554d443b32281e1409000000000013202c3946525f6c777b7b7b7b7b7b7b7b7b7065594e42372c20150900000000000000000000000a1724303d4a56636f7a7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7a6f63564a3d3024170a000000000000000000000000000000000005111d2936424e5a67737b7b7b7b7b7b7b7b7b7b786c6053473b2e22160a00000000000003101c2834414d5966727b7b7b7b7b7b7b7b7b7b786d6154483c3023170b0000000000000000000000000000000000000000000000000000000000000b1825313e4a57636e74757575757575736a60554a40352a20150a0000000000000000010c16212a343d464f575e656a6f7377797a7b7b7a7976736e69635d554d453c33291f150b000000000000000000000000000000000000111e2b3744515e6a767b7b7b7b7b7b7a71665b50453a30251a0f0400000815212e3b4854616d787a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a776c5f5346392d20130600000000000000000000000000111e2b3744515e6a767b7b7b7b7b7b7a71665b50453a30251a0f040000030a1015181a1a1a1a1a1a1a1a1a1a1d293643505c69747a7a7a7a7a7a74685b4f4235291c0f070000000000000000000000000000000000101c2936434f5c697681828282828280756b60554a3f342a1f140900060d14191d202121212121212121212126323f4c5965727f8181818181796d6053463a2d20150f0700000000121f2c3945525f6b7882838383838383837d73695f564c484d52575b5f6265686a6c6e6f707171717171706f6e6c6a6764615e5a55514c46413b342e272018110900000000000000000000000000000000000000000000000000000009111a222a313840464d53595e63686c7074777a7c7e808182838484838382817f7d7b7875726e6a66615b56504a433c352d261e160d05000000000000000000000000131f2c3946525f6c7981818181818181817e72665a4e42372b1f13070000000000000000000000000000000000000005111d2935404c5864707c8181818181818181796d6053463a2d201307000000000000000000000000030e19232d37414a525a62686e7276787a7b7b7b7b7b7b7b75695c5043362a1d10000000000000000000000000000000040c151d242c333a41474e53595e63686c7174787b7d80828485868788888888888786858482817e7c7a7774716e6a67635f5a56514c47423c37312b241e170f07000000000000000000000000000000000000000713202d3a4653606d7982828282828280756b60554b40352b20150b030e19232e38424b555d656d73797e8284868788878684817c77716a635b52483f3d475059616970767b8083858787878685827e7a746e675f564d443a30251b100500000000131f2c3945525e6b76828888888888888882766b5f54483d31261a0f03000000000000000000000a1724303d4a5763707d88888888888888888888888888888888888888888888888888888888888888888888888888888888887d7063574a3d3024170a00000000000000000000000000000000000815212d3946525e6a76838888888888888888887c6f63574a3e3226190d01000000000007131f2c3844505d6975828888888888888888887d7064584c3f33271b0f0200000000000000000000000000000000000000000000000000000000000c1825323f4b5865727e8282828282827c71675c51473c31271c11070000000000000008131e28323c464f58616870767b8083868788888785837f7a756e675f574e453b31271c12070000000000000000000000000000000000111e2a3744505d69747f888888888882776c62574c41362c21160b00000915222f3c4855626f7b87878787878787878787878787878787878787878787878786796d6053463a2d20130700000000000000000000000000111e2a3744505d69747f888888888882776c62574c41362c21160b00050d151b212527272727272727272727272a3643505d697683878787878275695c4f4236291f19120a010000000000000000000000000000000f1b2835414d5965707a858e8e8e8e877c71665c51463b30261b10060f181f252a2d2e2e2e2e2e2e2e2e2e2e2e323f4c5965727f8c8d8d8d86796d6053463a2d2620191108000000111e2a37434f5b66707a848d909090908f857b71675e5454595e63676b6e727477797b7c7d7e7e7e7e7d7d7c7a787674716d6a66615c57524c463f38312a221b120a0200000000000000000000000000000000000000000000000009121b232c343b434a51585e646a6f74787c808386898b8d8e8f90909090908f8d8c8a8885827e7a76716c67615b554e473f3830281f170e050000000000000000000000121e2b3844505d6874808c8e8e8e8e8e8e83776b5f53473b2f24180c000000000000000000000000000000000000000a16212d3945515d6975818c8e8e8e8e8e8d8175695d5145382c1f13060000000000000000000000000a15202b353f49535c646c73797e8285878888888888888376695d5043362a1d100000000000000000000000000000050e161e272e363e454c52595f656a6f74787d8184878a8d8f909293949595959595949392918f8d8b898684817e7a77736f6b66625d58534d48423c362f292119100600000000000000000000000000000000000006121f2c3845515d68737d888e8e8e8e877c72675c52473c32271c1209141f2a35404a545d676f777e858a8e919394949492908d88837c756d645a5147454f59626b737b82878c909294949493918e8b86807871685f564c42372c21160b00000000111d2a36424e5965707c87939595959593877b7065594e42372b201409000000000000000000000a1724303d4a5763707d8a9595959595959595959595959595959595959595959595959595959595959595959595959595958a7d7063574a3d3024170a00000000000000000000000000000000000c1824313d4955626e7a8693959595959595958b7f73665a4e4235291d100400000000000a16232f3b4754606c798591959595959595958d8174685c4f43372b1e120600000000000000000000000000000000000000000000000000000000000b1724313d4a56616c77828c8e8e8e8e83786e63584e43382e23180e030000000000030f1a252f3a444e58616a737a81878c909294959594928f8b868079716960574d43382e23180d02000000000000000000000000000000000f1c2835414d58636e78838e959594897e73685e53483d32281d1207000916222f3c4855626f7b88949494949494949494949494949494949494949494949386796d6053463a2d201307000000000000000000000000000f1c2835414d58636e78838e959594897e73685e53483d32281d12070d171f262d313334343434343434343434343643505d6976839094948f8275695c4f42362f2a241c130a0000000000000000000000000000000c1925313d48535e69747e89949b998e83786d62584d42372c21170e1821293036393a3a3a3a3a3a3a3a3a3a3a3a3f4c5965727f8c999a9386796d6053463a37322b231a110600000f1b27333f4a545e68727b858f999d9d978d837970665c5f656a6f73777b7e81848687898a8a8b8b8b8a8a88878583807d7a76726d68635d57514a433c342c241c140b020000000000000000000000000000000000000000000008121b242d353d464d555c63696f757b8084898c90939597999b9c9c9d9d9d9c9b9a989794918e8b87827d78726c665f58514a423a312920170d0400000000000000000000101c2834404c58646f7b87939a9a9a9a93877b6f64584c4034281c11050000000000000000000000000000000000020e1a26323e4a56616d7985919a9a9a9a94887c7064584d4135291d1004000000000000000000000004101b26313c47515b656e767e858a8e92949595959595908376695d5043362a1d1000000000000000000000000000050e172028303940484f565d646a70767b8085898d909496999b9d9fa0a1a2a2a2a2a1a1a09f9d9c9a989593908d8a87837f7b77726e69645e59534d47413a332b22180d02000000000000000000000000000000000004101c2935404c56616c76818c969b998e83796e63594e43392e23190e1a25313c47515c666f79818990969a9d9d9b9b9b9e9c99948e877e766c63594e4c56616b747d858d93989c9f9c9b9b9c9e9b96918a837a71685e53493e33281c11050000000e1a26323d48545f6b76828d99a2a2a2988d81766a5f53483c31251a0e030000000000000000000a1724303d4a5763707d8a97a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2978a7d7063574a3d3024170a0000000000000000000000000000000003101c2834414d5965717e8a96a2a2a2a2a2a29b8f82766a5d5145392c20140700000000010d1a26323f4b5763707c8895a1a2a2a2a2a29c9084786b5f53473a2e22160a00000000000000000000000000000000000000000000000000000000000915212d3945505a65707a85909b9b958a80756a5f554a3f352a1f150a00000000000914202b36414c56606a737c858c92989c9d9a99999a9d9b97918b837b72695f554a40352a1f1308000000000000000000000000000000000c1824303b46515c67727c87929d9b90857a6f645a4f44392e23190e030916222f3c4955626f7c8996a0a0a09e9b9b9b9b9b9b9b9b9b9b9b9b9b9b9b9b9b9386796d6053463a2d201307000000000000000000000000000c1824303b46515c67727c87929d9b90857a6f645a4f44392e23190e151f2931383d4041414141414141414141414143505d697683909d9c8f8275695c4f423f3b352e251b110700000000000000000000000000000915202c37424c57626d78838d989f948a7f74695e53493e33281d16202a333b4246474747474747474747474747474c5965727f8c99a09386796d60534746433d352c23180d02000b17222d38424c566069737d87919ba49f958b82786e646a70757a7f83878a8d90929495969798989897969594928f8d8986827e79746e68625c554e463e362e261d140b02000000000000000000000000000000000000000007111a242d363f474f575f666e747b81868b9095989c9fa2a4a6a7a8a9a9a8a9a9a8a7a5a3a19e9a97938e89847e77716a635b544b433b32291f160d030000000000000000000c18242f3b47535f6b76828e9aa6a7a4988c8074685c5145392d211509000000000000000000000000000000000007131f2b37424e5a66727e8a96a2a7a79b8f83776b5f54483c3024180d0000000000000000000000000915212c38434e59636d77808890969b9ea0a1a2a2a29d908376695d5043362a1d10000000000000000000000000040e172029323a424a525a61686f757b81878c9195999da0a29f9c9a99979696959595969697989a9c9da0a29f9d9a96938f8b87837e79746f6a645e58524c453d34291f13080000000000000000000000000000000000000c18242f3a454f5a656f7a858f9aa0958b80756a60554a40352a20151f2b36424d58636d78828b939ba19a94918f8e8f91969c9f9891887e756a6055535d68737d868f979e9d97928f8e8e9093989f9c958c837a70655a4f44392d22160a0000000915202c37434e5a65717c88939faaa99e92877b7064594d42362b1f14080000000000000000000a1724303d4a5763707d8a97a4aeaeaea8a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a4978a7d7063574a3d3024170a0000000000000000000000000000000007131f2c3844505d6975818e9aa6aeaeacaeab9e9286796d6155483c3023170b0000000004111d2936424e5b6773808c98a4aeacacaeaca094887b6f63574a3e3226190d010000000000000000000000000000000000000000000000000000000005111d28333e49535e69747e89949e9c91867c71665c51463c31261c1106000000030e1a26313c48535d68727c868e969e9b95918d8c8c8e91969c9c958d847a71665c51463b3024190d0200000000000000000000000000000008141f2a35404a55606b76818b96a1968c81766b60554b40352a1f150a091623303c4956636f7c8996a2a89d938e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e86796d6053463a2d2013070000000000000000000000000008141f2a35404a55606b76818b96a1968c81766b60554b40352a1f151c27313b43494d4d4d4d4d4d4d4d4d4d4d4d4d4d505d697683909d9c8f8275695c4f4d4c4740372d23180d0100000000000000000000000000040f1a25303b46505b66717c87919c9b90867b70655a4f453a2f241c27323c454d5254545454545454545454545454545965727f8c99a09386796d605454534e473e342a1e13070006111c26303a444e58616b757f89929ca69d948a80766f757b81868b8f93979a9c9fa1a2a3a4a4a5a4a4a3a2a09e9c9996928e8a85807a746d665f58504840382f261d140a00000000000000000000000000000000000000050f19232c363f485159616971787f868c92979ca1a5a8a9a6a3a19f9d9c9c9c9c9c9e9fa1a3a6a9a7a39e9a958f89837c756d655d554d443b31281e150b01000000000000000007131f2b37424e5a66727d8995a1ada89c9185796d6155493d32261a0e02000000000000000000000000000000000c18232f3b47535f6b77838e9aa6aea2968a7e72675b4f43372b2014080000000000000000000000020e1a26313d49545f6a757f89929aa1a7a8a29d99979696908376695d5043362a1d100000000000000000000000030d162029323b444c545c646c737a80878d92979ca1a09c989592908e8c8a8a89888888898a8a8c8d8f919395989b9ea19f9b97938f8a85807b75706a645d574f463b3024190c00000000000000000000000000000000000007131e28333e48535e68737e89939e9c91877c71675c51473c31271c24303c47535e6974808a949d9f978f8984828182858a9199a29a91877c71665b59646f7a858f98a19b938c8683818283878d959e9e958c81776c61554a3e33271b0f030000040f1b26323d4954606b76828e99a4afa3988c81756a5e53473c3025190e0200000000000000000a1724303d4a5763707d8a97a4b0afa59d9898989898989898989898989898989898989898989898989898989898989898978a7d7063574a3d3024170a000000000000000000000000000000000b17232f3b4854606c7985919daaa8a19fa2a8a295897d7164584c3f33271b0e020000000814202d3945525e6a76838f9ba8a5a09fa3aba4978b7f73665a4e4235291d110500000000000000000000000000000000000000000000000000000000000c17222c37424c57626c77828d97a2988d83786d63584d43382d23180d03000007131f2b37424e59646f7a848e98a099918a84817f7f81858b929b9f968d83786e63584c41352a1e1206000000000000000000000000000000020e18232e39444e59646f7a858f9a9d92887d72675c51473c31261b10091623303c4956626f7b87929da5988c82828282828282828282828282828282828282796d6053463a2d20130700000000000000000000000000020e18232e39444e59646f7a858f9a9d92887d72675c51473c31261b222e39434d54595a5a5a5a5a5a5a5a5a5a5a5a5a5a5d697683909d9c8f8275695c5a5a5852493f34291d1206000000000000000000000000000009141e29343f4a555f6a75808b95a0978c82766c61564b40362b212d38444e575e61616161616161616161616161616165727f8c99a09386796d6161615f5950463b2f24170b00000a141e28323c464f59636d77818a949ea69c92887e7a81878d92979ba0a3a6a9a8a6a4a2a2a1a1a1a2a3a4a6a8a8a5a29e9a95908b857e78716a625a524a41382f261c12080000000000000000000000000000000000020d17212b353e48515a636b737b838a91979da3a8aba6a19d9996949291908f8f8f90919294979a9da1a6aaa5a09a948d867f776f675f564d433a30271d13080000000000000000020e1a26323d4955616d7884909ca8ada195897d72665a4e42362a1f130700000000000000000000000000000004101c2834404c58636f7b87939faba99d9185796e62564a3e32271b0f03000000000000000000000006121e2a36424e5a65717c87919ba4aca59d96918d8b8a89898376695d5043362a1d1000000000000000000000010b151e28323b444d565e666e767d858b92989ea39e9994908c898683817f7e7d7c7b7b7b7c7d7e7f81828487898c8f9295999da19f9b96918c86817b756f6861574c4135291c10030000000000000000000000000000000000010c17212c37414c57616c77828c97a1988e83786e63584e43382e232834404c58646f7b86919ca1978d857d78757475797f87909aa2988e83776c605e6a75818b96a19c9289817a767575777c838c959f9e93887d72665b4f43372b1f13070000000a15212c38434f5a66717c88949faaa99d92867b6f64584d41362a1f130800000000000000000a1724303d4a5763707d8a97a4b0aa9e938c8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8a7d7063574a3d3024170a000000000000000000000000000000020e1a27333f4b5864707c8995a1aa9f9692969fa5998d8174685b4f43362a1e12050000000b1724303c4955616d7a86929fa69b949399a3a79b8f83766a5e5145392d211408000000000000000000000000000000000000000000000000000000000006101b25303b46505b65707b86909b9f948a7f746a5f544a3f342a1f140a00000c1824303c47535f6a75818b96a09a90877f7974727275798089929c9f958a7f74695d52463b2f23170b0000000000000000000000000000000007121c27323d48525d68737e89939e998e84796e63584d42382d22170c15222e3b47535f6a75818c97a19a8f84787575757575757575757575757575757575736a5e5245392c1f1306000000000000000000000000000007121c27323d48525d68737e89939e998e84796e63584d42382d2227333f4a555f65676767676767676767676767676767697683909d9c8f827569676767635b51463a2e2215090000000000000000000000000000020d18232d38434e59636e79848f9a9e93887d73685d52473c3227313d495560696d6d6d6d6d6d6d6d6d6d6d6d6d6d6d6d727f8c99a09386796d6d6d6d6b62574c4033271a0e0000030c16202a343d47515b656e78828c96a0a49a9086858c92989ea3a7aba6a29f9c99979695949494959697999c9ea2a6aaa6a19c96908a837b746c645c534a41382e241a1006000000000000000000000000000000000a141f29333d47505a636c757d858d959ca2a8aba59f9a95918d8a87858483828282838486888a8d91959a9fa5aba59f989189817971685f564c42392f241a100500000000000000000915212d3944505c6874808b97a3afa69a8e82766a5f53473b2f23170b0000000000000000000000000000000915212d3944505c6874808c98a4afa4988c8175695d51453a2e22160a0000000000000000000000000915222e3a46525e6a76828d98a3ada59c938b85817e7d7c7c7c76695c5043362a1d100000000000000000000008131d27303a444d565f68707880888f969da39e98928d8884807c7977747371706f6f6f6f6f7071727476787a7c7f8285898d9195999ea29d97928c86807a73695d5144382b1e120500000000000000000000000000000000000005101a25303a45505a65707a85909b9f958a80756a5f554a3f352a2c3845515d6975818c97a29b90857b736c6967696e757e89939f9f94897d7165636f7a86929da1958b80776f6a68686b7179838e99a49a8f83776b5f53473b2f23160a00000004101b27323d4954606b77828e99a5aea3978c8075695e52473b3024190d02000000000000000a1724303d4a5763707d8a97a4b0a99c8f827e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7d7063574a3d3024170a00000000000000000000000000000006121e2a36434f5b6774808c98a5a6998d868e9aa69c9084776b5f52463a2e2115090000020e1b2733404c5865717d8a96a2a1958987929eab9f92867a6e6155493d3024180c00000000000000000000000000000000000000000000000000000000000009141f29343f49545f69747e89949f9b91867b71665b51463b31261b110604101c2834404c5864707b87929d9f93897e756d686666686e76808a95a09c91857a6e63574b3f33271b0f03000000000000000000000000000000000b16202b36414c57616c77828d97a0958a80746a5f54493e34291e13121f2b37424e59646f7a858f9aa0958a80766c6868686868686868686868686868686761584d4236291d11040000000000000000000000000000000b16202b36414c57616c77828d97a0958a80746a5f54493e34292936424f5b6771747474747474747474747474747474747683909d9c8f8275747474746d62564a3d3124170b00000000000000000000000000000006111c27313c47525d67727d88939e9a8f84796e64594e43382d333f4c5965717a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7f8c99a093867a7a7a7a7a74685b4f4235291c0f000000040e18222c353f49535d66707a848e97a1a2989190979da3a9aaa49f9a96938f8d8b898888878888898b8d8f92969a9ea3a9a7a19b948d867e766e655c534a40362c22180e03000000000000000000000000000006101b26303b454f59626c757e878f979fa6ada7a09a948e8985817d7b7977767575757677797b7e8185898e949aa0a7aaa39b938b837a71685e544b41362c21170c010000000000000005101c2834404b57636f7b87929eaaaa9f93877b6f63574b4034281c100400000000000000000000000000020e1a25313d4955616d7985919ca8ab9f94887c7064584c4135291d11050000000000000000000000000c1825313e4a56636f7b87939eaaa99e948a817a7571706f6f6f6d64594d4135281c0f00000000000000000005101a242f39424c565f68717a828a929aa1a099928c87817c7874706d6a68666463626262626363646667696b6d707376797c8184898d92979ca19d97918b83786b5f5245382c1f12050000000000000000000000000000000000000009131e29333e49535e69737e89949e9c91867c71665c51463c31303c4855616d7985919da1968a7e7369615c5b5d636c77828e99a59a8e82766967737f8b97a39c9084796e655e5b5b5f67717c88939f9f94887c7064574b3f32261a0d010000000a16212d38434f5a66717d88949faba89d91867a6f63584c41352a1e1307040404040404040a1724303d4a5763707d8a97a4b0a99c8f82757171717171717171717171717171717171717171717171717171717171717171716b6054483c2f2316090000000000000000000000000000000915222e3a46535f6b7784909ca8a3968a7e8b97a4a093877b6e62564a3d3125180c000006121e2a37434f5c6874818d99a69f9286828f9ba7a2968a7d7165594c4034281c0f030000000000000000000000000000000000000000000000000000000000020d18222d38424d58626d78828d98a2988d82786d62584d42382d22180d0713202c3844505c6874818c98a3998d82776c635c59595d646e78838f9aa2978b8073685c4f43372b1f130600000000000000000000000000000000040f1a252f3a45505b65707b86919c9c91867b70665b50453a30251a0f1a26313d48535e69737d88929b9c92887e756c645c5b5b5b5b5b5b5b5b5b5b5b5b5b564f463c3125190d01000000000000000000000000000000040f1a252f3a45505b65707b86919c9c91867b70665b50453a302a3744505d6a77818181818181818181818181818181818184909d9c8f83818181817e7165584b3e3225180b000000000000000000000000000000000a15202b35404b56616b76818c97a1968b80756a60554a3f3433404c5966738087878787878787878787878787878787878e9aa1958a878787878275695c4f4236291c0f0000000006101a232d37414b545e68727c868f99a3a29d9ca1a8aca59f99948e8a8683817e7c7b7b7a7b7b7c7e8083868a8e93989ea4aba69f98908880776e655c52483e342a20150a00000000000000000000000000010c17222d38424c57616b747e879099a1a9ada59d968f88837d7975716e6c6a69696969696b6c6f7175797d83898f969da5ada59d958c837a70665c52483e33281e130800000000000000000c17232f3b47525e6a76828e99a5afa3978c8074685c5044382d21150a0a0a0a0a0a0a0a0a0a0a0a0a0a0a121e2a36424e5a65717d8995a1ada69b8f83776b5f54483c3024180d010000000000000000000000000e1b2734404d5966727e8b97a3afa3988d82786f696563636363615b52483d3125190c0000000000000000010c17212c36404a545e68717a838c949ca49c958e87817b76716c6864615e5b59585756555555565758595b5c5f616366696d7074787d81868b90959ba095897e72675b4f43372a1e110400000000000000000000000000000000000000020c17222c37424c57626c77828d97a2988d83786d63584d4338333f4b5864717d8995a29d9185796d6257504e515b65717d8995a19e9286796d6a77838f9ba4978b7f73685d534e4f55606b77838f9ba4988c8073675b4e4235291c100300000004101b27323e4955606c77838e9aa5aea2978b8074695d52463b2f24181111111111111111111724303d4a5763707d8a97a4b0a99c8f827569656565656565656565656565656565656565656565656565656565656565656461594f44382c2014070000000000000000000000000000000d1925313e4a56626f7b8793a0aca094877b8894a1a3978a7e7266594d4134281c0f03000915212e3a46535f6b7884909da89c8f837f8c98a4a69a8d8175695c5044382b1f130700000000000000000000000000000000000000000000000000000000000006111b26313b46515b66717b86919b9f94897e74695f54493f34291f140a16232f3c4854606d7985919da194887c71655b514c4d525c67727e8a96a29c9084786c6053473b2f22160a000000000000000000000000000000000008131e29333e49545f69747f8a95a0988d82776c61574c41362b211615202b36414c57616c768089939c9a90877e766e665e564e4e4e4e4e4e4e4e4e4e4e4b453d342a1f1409000000000000000000000000000000000008131e29333e49545f69747f8a95a0988d82776c61574c41362b3744505d6a77848e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e95a09f958e8e8e8e8b7e7165584b3e3225180b00000000000000000000000000000000030e19242f39444f5a65707a85909b9c92877c71665b51463b33404c596673808c9494949494949494949494949494949498a0a69c959494948f8275695c4f4236291c0f000000000008111b252f39424c56606a737d87919ca9a9a9adaaa29b948e88837e7a777471706f6e6e6e6f70717476797d82878d9399a0a8aaa29a928980776d645a50463c31271c110600000000000000000000000007121e29343e49545e69737d879099a2abaca39b938b847d77726d6865625f5e5d5c5c5c5d5e606265696d72777d848b939ba3aca79e958c82786e645a4f453a2f24190e030000000000000007131e2a36424e5965717d8995a0aca89c9084786d6155493d31251917171717171717171717171717171717232f3b47525e6a76828e9aa6ada2968a7e72665b4f43372b1f140800000000000000000000000000101d2936434f5c6875828e9aa7ab9e93877b70665d585656565655504940362b201409000000000000000008131e28333e48525c66707a838c959ea29a928b837c76706a65605c5854514f4d4b4a49484849494a4b4c4e505254575a5d6064686c71757a7f848a8f958f84786d61564a3f33271b0f02000000000000000000000000000000000000000005101b25303b45505b65707b86909b9f948a7f746a5f544a3f35424e5b6774808c99a59a8e8275695d5145414955616d7985929ea295897c706d7a86939fa194887b6f63574b42434f5a66737f8b98a49c8f83766a5d5144382b1f1205000000000a16212d38444f5b66727d8994a0aba89c91857a6e63574c4035291e1e1e1e1e1e1e1e1e1e1e24303d4a5763707d8a97a4b0a99c8f8275695c58585858585858585858585858585858585858585858585858585858585858554f473d32271b1004000000000000000000000000000004101d2935414d5a66727e8b97a3aa9d91857985929ea69a8e8275695d5044382b1f1307000c1925313d4a56626f7b8794a0a5998c807c8995a1a99d9185786c6054473b2f23170a000000000000000000000000000000000000000000000000000000000000000a141f2a343f4a545f6a747f8a949f9b90867b70665b50463b30261b101926323f4b5764707c8995a19d9184786c60544940404a56616d7985929ea094887c6f63574a3e3225190c0000000000000000000000000000000000010c17222d37424d58636e78838e999e94897e73685d53483d32271d121a25303b45505a646e77818a939b99918880776f686058504842424242424242413f3a332b22180e030000000000000000000000000000000000010c17222d37424d58636e78838e999e94897e73685d53483d323744505d6a7784909a9a9a9a9a9a9a9a9a9a9a9a9a9a9a9b9fa7a79f9b9a9a988b7e7165584b3e3225180b000000000000000000000000000000000007121d28333e48535e69747e89949f988e83786d62574d4237404c596673808c99a1a09c9b9b9b9b9b9b9b9b9b9b9b9b9ea5aaa19c9b9b9b8f8275695c4f4236291c0f00000000000009131d27313b45505a646e78828e9aa7b4b6ada2989089827c77726e6a67656362616161626365676a6d71767b81888f969ea6aca49b928980766c62584d43382e23180d0200000000000000000000020d18242f3a45505b65707a858f98a2abaca39a91898179726c66615c59555351504f4f4f50515356595d61666c72798189919aa3aca79e948a80766c61564c41362b1f140900000000000000020e1a25313d4955606c7884909ca7ada195897d7165594e42362a232323232323232323232323232323232328333f4b57636f7b87929eaaa99d9185796d62564a3e32271b0f0300000000000000000000000000111e2b3744515e6a7784909da9a79b8e82766a5f544c4a49494948453f372e241a0f0400000000000000030e19242f3a454f5a646e78828c959ea29990888079726b655e5954504b484542403e3d3c3c3c3c3c3d3e40414345484b4d5154585c6065696e73797e848a897e72675b5045392e22170b0000000000000000000000000000000000000000000009141f29343e49545f69747e89949f9b91867b71665b51463b43505d6976838f9ca4988b7e7266594d413844515d6976828f9ca5988c7f72707c8995a29e9285786c5f53473b3e4a5763707c8995a29e9285796c5f53463a2d2014070000000005101c27333e4a55616c77838f9aa5ada2968b8074685d51463a2f2a2a2a2a2a2a2a2a2a2a2a2a303d4a5763707d8a97a4b0a99c8f8275695c4f4b4b4b4b4b4b4b4b4b4b4b4b4b4b4b4b4b4b4b4b4b4b4b4b4b4b4b4b4b4b49443d352b21160b0000000000000000000000000000000814202c3945515d6a76828e9ba7a79b8e8276828f9ba89e9185796c6054473b2f23160a03101c2834414d5966727e8b97a3a3968a7d7986929faba195887c7064574b3f33261a0e02000000000000000000000000000000000000000000000000000000000000030d18232d38434d58636d78838d98a2978d82776d62574d42372d22171c2835414e5a6773808c98a59a8d8175685c5044383945515d6975828e9ba4988c7f73665a4d4134281b0f02000000000000000000000000000000000005101b26313c46515c67727c87929d9a90857a6f64594f44392e2318131e29333e48525c656f788189929a9a928a8179726a625a534b443c3535353535322e29211910060000000000000000000000000000000000000005101b26313c46515c67727c87929d9a90857a6f64594f44393744505d6a7784909da199959595959595959595959595959aa4a39a959595958b7e7165584b3e3225180b0000000000000000000000000000000000010c16212c37424c57626d78838d989f948a7e74695e53483e404c596673808c99a1968f8e8e8e8e8e8e8e8e8e8e8e8e939da398908e8e8e8e8275695c4f4236291c0f0000000000000a16212c37424c57626c76818a949eaab6b6a99d91867e77716b66625e5b5856555454545556585b5e61656a70767d848c949da6ada49b92887e746a5f554a3f34291e13070000000000000000000007131e2a35404b57616c77828c96a1aaaea49a91887f776f67615b55504c49464443424243434547494d51555b61676f777f88919aa4aea69c92887d73685d52473c31251a0e03000000000000000915212c3844505c67737f8b97a3aea59a8e82766a5e52463b303030303030303030303030303030303030303844505c6873808b97a3afa4988c8175695d5145392e22160a0000000000000000000000000000121f2c3845525f6b7885929eaba4988b7f72665a4e423d3c3c3c3c39342d251c130800000000000000000914202b36414c56616c76808a949ea29990877e766e676059534e48443f4042444545454543413f3c3834333537393b3e4144484c5054595e63686d73787e84786d61564a3f34281d110600000000000000000000000000000000000000000000020d17222d38424d58626d77828d98a2988d82786d62584d4245525e6b7884919ea396897d7063574a3e35414e5b6774818d9aa69a8e8174717e8b97a49c9083766a5d5144373b4854616d7a8793a0a194877b6e6155483b2f22150800000000000b16222d39444f5b66727d8994a0aba79c9085796e62574b4037373737373737373737373737373d4a5763707d8a97a4b0a99c8f8275695c4f423e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3d39332b23190f040000000000000000000000000000000b1824303c4855616d7986929eaaa4988b7f73808c98a5a195887c7063574b3f32261a0d07131f2c3844505d6975828e9aa7a093877a76838f9ca8a4988c8073675b4f42362a1e12050000000000000000000000000000000000000000000000000000000000000006111c26313c46515c66717c86919c9e94897e74695e54493e34291e1e2a3744505d6976828f9ba4978b7e7265594c403435414d5a66737f8c98a59b8e8275695c5043372a1e11040000000000000000000000000000000000000a141f2a35404a55606b76818b96a1968b81766b60554b40352a1f1417222c36404a535d666f77808890989b938b847c746c655d554e463e362d282826221d1710070000000000000000000000000000000000000000000a141f2a35404a55606b76818b96a1968b81766b60554b403744505d6a7784909c9b8f88888888888888888888888889929e9d9189888888887e7165584b3e3225180b00000000000000000000000000000000000005101a25303b46505b66717c87919c9b90857a70655a4f44404c596673808b959e91858282828282828282828282828c99a09387828282828275695c4f4236291c0f000000000004101b27323d48535e69737e88929ca6b0b3b2aa9d91877d7369605a56524e4c4a48484748484a4c4e51555a5f656b727a828b949da6ada49a90867b71665c51463b2f24190d020000000000000000010c18242f3b46515d68737e89949ea8b0a69c92887f766d655d564f4944403d3a383636363637383a3d40454a4f565d656d767f88929ca6aea49a8f857a6f64584d42362b1f14080000000000000004101c28333f4b57636e7a86929ea9aa9e92867a6f63574b3f3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d4954606c7884909ca8ab9f93887c7064584c4035291d11050000000000000000000000000000131f2c3946525f6c7986929faca296897c7063574a3e323030302f2d28231b130a0100000000000000030f1a26313c47525d68737d88929ca39a90877e756c645d554e484242464a4d4f5152525251504e4b4844403b36302c2f3235383c41464a4d52575c61676d737873675c5045392e241d160e060000000000000000000000000000000000000000000006101b26313b46505b66717b86919b9f94897f74695f54494653606c7986939fa195887b6f6255493c33404c5966727f8c98a59c8f827573808c99a69b8e8275685c4f42363946525f6c7985929fa295897c6f6256493c3023160a000000000005111c28333e4a55616c78838f9aa6ada1968a7f73685c51454444444444444444444444444444444a5763707d8a97a4b0a99c8f8275695c4f423632323232323232323232323232323232323232323232323232323232302d2821191007000000000000000000000000000000030f1b2734404c5865717d8996a2aea195887c707d8995a2a4988c8073675a4e4236291d110a16232f3b4754606c7985919ea99d90847773808c99a5a89c9083776b5e52463a2e21150900000000000000000000000000000000000000000000000000000000000000000a151f2a353f4a555f6a75808a959f9b90857b70655b50453b30251f2c3945525f6b7885919ea295897c6f63564a3d31323e4b5764707d8996a39d9184786b5e5245392c1f1306000000000000000000000000000000000000030e18232e39444e59646f7a858f9a9d92877c72675c51463c31261b101a242e38414b545d656e767e878e969d958e867e766f67605850483f372e241b16120c0500000000000000000000000000000000000000000000030e18232e39444e59646f7a858f9a9d92877c72675c51463c43505d6975808a959a8d827b7b7b7b7b7b7b7b7b7b7b83909d9c8f827b7b7b7b7b7164584b3e3125180b0000000000000000000000000000000000000009141e29343f4a545f6a75808b95a0978c81766c61564b404b57636e79838e9894897f757575757575757575757f8c99a09386797575757571665a4e4135281b0f00000000000a15212c38434e5a65707a85909aa4aeada7a5a7a2988f857b71675e544a423f3d3c3b3b3b3c3d3f4245494e535a61687078828b949ea8aca2988d83786d62574c41352a1e1307000000000000000005111d2934404c57636e79848f9aa5b0a99e948a80766d645b534b443e3934302d2b2a2929292a2c2e3134393e444b535b646d76808a949faaaba1968b80756a5e53473c3025190d01000000000000000b17232f3a46525e6a75818d99a5afa3978b7f73675c504a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4d5965717d8995a0aca69a8f83776b5f53483c3024180c010000000000000000000000000000131f2c3946525f6c7986929faca194887b6e6255483c2f23232322201d1711090100000000000000000914202b37424d59646f7a858f9aa49c92887e756b635a524b4442484e5256595c5d5e5f5f5e5d5a5854504c47413b352e303840474d52565a5c5e5f5f5e62686c6961564b433d362f2720180f07000000000000000000000000000000000000000000000a141f2a343f4a545f6a747f8a949f9b90867b70665b504754616d7a8794a0a194877a6e6154473b323e4b5865717e8b98a49d90837673818d9aa79a8e8174675b4e41343845515e6b7784919ea3968a7d7063574a3d3024170a0000000000000b16222d3944505b67727e8995a0aca79b9085796d625651515151515151515151515151515151515763707d8a97a4b0a99c8f8275695c4f42362925252525252525252525252525252525252525252525252525252524211c160f070000000000000000000000000000000006131f2b3743505c6874818d99a5ab9e9286796d7a86939fa89b8f83766a5e5245392d20140d1a26323f4b5763707c8895a1a69a8d8174717d8996a2ac9f93877a6e62564a3d3125190c00000000000000000000000000000000000000000000000000000000000306090b0e18232e38434e58636e78838e98a2978c82776c62574c42372c222e3a4754606d7a8693a0a194877a6e6154483b2f2f3c4855626e7b8894a19f9386796d6054473a2e2114080000000000000000000000000000000000000007121c27323d48525d68737e89939e998e83786e63584d42382d2217121c262f38424b535c646c757c848c949b9890888179716a625a514940372d241a100600000000000000000000000000000000000000000000000007121c27323d48525d68737e89939e998e83786e63584d42414d59636e78838d98948a7f746e6e6e6e6e6e6e6e7683909d9c8f82756e6e6e6e696054483c3023170a000000000000000000000000000000010407090a0d18222d38434e59636e79848f999e93887d72685d524747525c67717c87919b90867b7168686868686868727f8c99a09386796d686868665f554a3e3226190d00000000030f1b26323d4954606b76818c97a1acada39b989ba3a1978d83796f665c52483e352f2e2e2e2f303335393d42484f565e666f79828c96a1aba99f948a7e73685d52463b2f24180c00000000000000000a16222e3945515d68747f8b96a1acada2978d82786e645b5249413a332d2824211f1d1c1c1c1d1f2124282d33394149525b646e78838d98a3aea89d92867b6f64584d41352a1e12060000000000000006121e2a36414d5965717c8894a0aca79c9084786c6056565656565656565656565656565656565656565656565e6a75828d99a5ada2968a7e72665a4f43372b1f1408000000000000000000000000000000131f2c3946525f6c7986929faca194877a6d6154473a2e2116161614100c06000000000000000000020e1a25313c48535f6a75808b96a19e948a80766c6259514840474e54595e6266686a6b6b6b6b696764615c58524d46403839424a52585e6366696b6b6b6b6a6865625e59544e474139322a21191007000000000000000000000000000000000000000000030d18232d38434d58636d78838d98a2978d82776d62574d54616d7a8794a1a094877a6d6053473a313e4b5764717d8a97a49d90847774818e9aa79a8d8173675a4d41343744515d6a7784919ea4978a7d7164574a3e3124170b00000000000005111c28333f4a56616d78848f9ba6aca1968a7e73675d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d63707d8a97a4b0a99c8f8275695c4f4236291c18181818181818181818181818181818181818181818181818181714100b0500000000000000000000000000000000000a16222f3b47535f6c7884919da9a89b8f83766a7783909ca89f92867a6d6155493c302417111d2936424e5b6773808c98a4a3978a7e716e7a87939faca3978a7e7266594d4135291c10040000000000000000000000000000000000000000000000000001060b0f121518191b1c27313c47515c67717c87919c9e93897e73695e53493e33292f3b4855626e7b8894a19f9386796c6053463a2d2e3a4754606d7a8693a0a194887b6e6255483b2f22150900000000000004080b0c0d0d0d0d0d0d0d0d0d0d0d16202b36414c57616c77828d97a0958a7f746a5f54493e33291e13141d262f38414a525a636b727a828991989a938b837c746b635b52493f362c22180e030000000000000000000004080b0c0d0d0d0d0d0d0d0d0d0d0d16202b36414c57616c77828d97a0958a7f746a5f54493e47525c67717c86919b91867c71676161616161697683909d9c8f8275696161615e574e43382c20140800000000000000000000000001060a0e1113151718191c27313c47525d67727d88939e9a8f84796e63594e434b55606a757f8a94988d83786e635b5b5b5b65727f8c99a09386796d605b5b5a544d43382d21160a0000000008141f2b37434e5a65717c88939ea8b1a69b918c919ba59f958b82786e645a50473d33292122222426292d31373d444c555d67707a858f9aa5b0a69b90857a6e63574c4034291d1105000000000000020e1a26323e4a56626d7985909ca7b2a79c91867b70665c524940372f28221c181412100f0f10111215181c22282f374049525c66717b87929da8aea3978c8175695e52463a2e22160a00000000000000020d1925313d4854606c78848f9ba7aca094897d71656363636363636363636363636363636363636363636363636e7a86929eaaa99d9185796d62564a3e32261b0f03000000000000000000000000000000131f2c3946525f6c7986929faca094877a6d6053473a2d201409090704000000000000000000000007131e2a36424d5964707b87929da2988d82786e645a5047414951585f656a6e727577787878777673706d68635e58514a43424b545c63696e7275777878787775726e6a655f59524b443c332b2219100600000000000000000000000000000000000000000006111c26313c46515c66717c86919c9e94897e74695e5454616e7b8894a1a094877a6d6053473a313e4a5764717d8a97a49d90847774818e9aa79a8d8173675a4d40343744515d6a7784919ea4978a7d7164574a3e3124170b000000000000000b17222e3945505c67727e8a95a1aca69b9084786d6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a707d8a97a4b0a99c8f8275695c4f4236291c0f0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0a0804000000000000000000000000000000000000010e1a26323e4b57636f7c8894a0ada5988c80736774808d99a5a2968a7d7165584c4033271b14202d3945525e6a76838f9ba8a094877b6e6b7784909ca9a69a8e8275695d5145382c201407000000000000000000000000000000000000000000000000070d12171b1f2224262728282a35404a55606a75808b95a09a90857a70655a50453a30303c4956636f7c8996a29e9285786b5f5245392c2c3946535f6c7986929fa296897c6f6356493c3023160a00000000030a101417191919191919191919191919191a242f3a45505b65707b86919c9c91867b70655b50453a2f251a0f141d262f3840495159616870777f868e959d958d867d756d645b51483e342a1f150a0000000000000000030a101417191919191919191919191919191a242f3a45505b65707b86919c9c91867b70655b5045404a555f6a747f8994988e83796e645955555d697683909d9c8f8275695c5555524d453c32271b10040000000000000000000002080d12161a1d202224252626262b35404b56616b76818c97a0968b80756a5f554a434e58636d78828d97958a80756b60564e5965727f8c99a09386796d60534e4d49433a31271c1105000000000c1824303c48535f6b76828d99a4afaa9f948a7f89939ca69d948a80766c62594f453b31281e16171a1d21262c333a434b555e69737d88939ea9aca1968b8074685d5145392d21160a00000000000006121e2a36424e5a66727e8a96a1adaca1968a7f74695f544a40372e251d16110c0805030000000406080c11161d252e37404a555f6a75808c97a3aea99d91867a6e62564a3e32261a0e02000000000000000814202c38444f5b67737e8a96a2aea5998d817570707070707070707070707070707070707070707070707070737f8b97a2aea4988c8175695d5145392d22160a00000000000000000000000000000000131f2c3946525f6c7986929faca094877a6d6053473a2d20140700000000000000000000000000000b17232f3b47525e6a75818c98a39c91867b70665c5248414a535b636a70767a7e81838585858482807d79746f69635c554d4a545d666e757a7e828485858583817e7a76706a645d554e453d342b22180f050000000000000000000000000000000000000000000a151f2a353f4a555f6a75808a959f9b90857b70655b54616d7a8794a1a094877a6d6154473a313e4b5764717e8b97a49d90847774818e9aa79a8e8174675a4d41343844515e6b7784919ea4978a7d7063574a3d3024170a0000000000000006111d28343f4a56616d78848f9ba6aca1958a7e777777777777777777777777777777777777777777777d8a97a4b0a99c8f8275695c4f4236291c0f0300000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005111d2a36424e5a67737f8b98a4aea295897c7064717d8a96a2a6998d8174685c4f43372b1e1724303c4955616d7a86929fa99d9184786b6874818d99a6aa9e9285796d6154483c3024170b00000000000000000000000000000000000000000000040b12181e23272b2e3133343535343439434e59636e79848e99a1978c81766c61574c4137303d4a5663707d8a96a39e9184776b5e5145382b2c3845525f6b7885929ea3968a7d7063574a3d3024170a000000050e151b202426262626262626262626262626262629333e49545f69747f8a95a0988d82776c61574c41362b20160b141d262e373f474f565e666d747c838b939b9890877e766d635a50463c31261c1106000000000000050e151b202426262626262626262626262626262629333e49545f69747f8a95a0988d82776c61574c41434e58636d77828d97958a80756b6056505d697683909d9c8f8275695c4f4846423b332a20150a00000000000000000000070d13191e2226292c2f3032333333333239444f5a65707a85909b9c91877c71665b504647515c66717b86909b91877c72675d525965727f8c99a09386796d605346413d3831281f150a0000000004101c2834404c5864707c87939faab0a4998e8378818a949ea59c92887e746b61574d433a30261c120d10151a21283139434d57616c76828d98a4afa79c9085796d62564a3e32261a0e0200000000000916222e3a47535f6b77838f9ba6b2a79c9085796e63584d42382e251c130c050000000000000000000000050c131b252e38434e59646f7a86929da9aea2968b7f73675b4f43362a1e120600000000000000040f1b27333f4a56626e7a86919da9aa9e92867d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d848f9ba7ab9f93877b7064584c4035291d110500000000000000000000000000000000131f2c3946525f6c7986929faca094877a6d6053473a2d20140700000000000000000000000000030f1b28343f4b57636f7b86929ea1968b80746a5f544a404a535c656d757b82878b8e90919292918f8c8985807a746e665f57515c666f7880868b8e91929291908e8a86817c756f675f574f463d342a20170c020000000000000000000000000000000000000000030e18232e38434e58636e78838e98a2978c82776c6257606d7a8693a0a194887b6e6155483b323f4b5865717e8b98a59c90837673808d99a69b8e8174685b4e42353845525e6b7885919ea396897c7063564a3d3023170a00000000000000000c17232e3945505c67737e8a95a1aca69b8f8584848484848484848484848484848484848484848484848b97a4b1a99c8f8275695c4f4236291c0f060606060606060606060606060606060606060606050200000000000000000000000000000000000000000000000815212d3946525e6a77838f9ba8ab9e9286796d616e7a87939fa99d9084786b5f53463a2e221b2733404c5865717d8a96a2a69a8d81756865717d8a96a3aea295897d7164584c4033271b0f020000000000000000000000000000000000000000070e161d23292f33373b3d3f41414241403f3c47525c67727c87929d9e93887d73685e53483e333d4a5763707d8a97a49e9184776b5e5144382b2b3845515e6b7784919ea4978a7d7164574a3e3124170b0000050e1720272c30333333333333333333333333333333333337424d58636d78838e999e93897e73685d52483d32271c1212141c252d353d454c545b626a71798189929a9991887f756c62584d43382d22170b0000000000050e1720272c30333333333333333333333333333333333337424d58636d78838e999e93897e73685d52483d46515b66707b85909a92877d72685d535d697683909d9c8f8275695c4f423a36312921180e040000000000000000020a11181f242a2e3236393b3d3e3f4040403f3e3d48535e69747e89949f988d83786d62574c424a545f69747e8993998e84796f645a5965727f8c99a09386796d6053463a312d261f160d03000000000714202c3844515d6975818c98a4b0ab9f94887d7178828c96a0a49a90867c73695f554b42382e241a1107090f161f27313b454f5a65707b87939eaaada1968a7e72665a4e42362a1e120500000000000d1925323e4a56636f7b87939fabaea2978b7f73685c51463b31261c130a01000000000000000000000000000109131c27313c47525e6975818d99a5b1a79b8f83776b5f53463a2e22150900000000000000000b16222e3a46525d6975818d98a4aea2978d8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8b94a0aca69a8f83776b5f53473c3024180c0000000000000000000000000000000000131f2c3946525f6c7986929faca094877a6d6053473a2d2014070000000000000000000000000007131f2c3844505c6874808b97a39c9085796e63584d4348525c656e777f868d92979a9d9e9f9f9d9c9995918c867f7871696058626d78818a91979b9d9e9f9e9d9a97928d878079716961584f463c32281e140900000000000000000000000000000000000000000007111c27313c47515c67717c87919c9e93897e73695e5f6c7985929fa295897c6f6256493c33404d596673808c99a59b8e8275727f8c98a59c8f8275695c4f43363a46535f6c7986929fa195887b6f6255493c2f231609000000000000000006111d28343f4b56626d7984909ba7aca097919191919191919191919191919191919191919191919191949da8b3a99c8f8275695c4f4236291c13131313131313131313131313131313131313131313110f0a050000000000000000000000000000000000000000000c1825313d4955626e7a86939faba89b8f83766a5e6b7783909ca8a094877b6f62564a3e31251e2a37434f5c6874818d99a5a3978a7e7265616e7a87939faba5998d8174685c4f43372b1e12060000000000000000000000000000000000000008101820272e353a3f43474a4c4d4e4e4e4d4b49464b55606b75808b96a09a8f857a6f645a4f453a3d4a5763707d8a97a49e9184776a5d5144372a2b3844515e6b7784919ea4978a7d7164574a3e3124170b00010c17202931383d3f40404040404040404040404040404040404046515c67727c87929d9a8f857a6f64594e44392e231b1e202122232b333a4249515860676f778088919a9a91877e746a5f544a3f33281d1105000000010c17202931383d3f40404040404040404040404040404040404046515c67727c87929d9a8f857a6f64594e443f4a545f69737e8993998e84796f645a5d697683909d9c8f8275695c4f42362a251f170f060000000000000000040c141c232a30353a3e4245484a4b4c4c4d4c4c4a49464c57626d78838d989f94897e74695e5348434d58626d77828c97958b81766b615965727f8c99a09386796d6053463a2d211c150d0400000000000b1724303c4854616d7985919da9b1a69a8e82776b707a848e98a1a2988f857b71675d544a40362c23190f05050d151f29333e49545f6a76828e99a5b1a69a8e83766a5e52463a2e2115090000000003101c2935414e5a66737f8b97a3afaa9e92867a6e63574b40352a1f140a01000000000000000000000000000000010b15202b36414d5964707c8894a1adab9f93877b6f62564a3e3125180c000000000000000006121d2935414d5864707c88949faba89f98969696969696969696969696969696969696969696969696969696979da6ada1968a7e72665a4f43372b1f13080000000000000000000000000000000000131f2c3946525f6c7986929faca094877a6d6053473a2d201407000000000000000000000000000b17232f3c4854606c7884909ca3978b8074685d5247444f5a646e77818991989ea3a5a09d9b9a9a9b9c9f9c97918a837b736a6168737f8a949ca3a29c97959596999d9e98928b837b736a61584e443a30261b10060000000000000000000000000000000000000000000a15202a35404a55606a75808a95a09a90857a70655e6a7784909da3978a7d7164584b3f35424e5b6874818d9aa6998d8073717d8a97a39d9084776a5e5145383c4855616e7a8794a0a093867a6d6154473b2e2115080000000000000000000c17232e3a45515c68737e8a96a1aca9a19e9e9e9e9e9e9e9e9e9e9e9e9e9e9e9e9e9e9e9e9e9e9e9e9fa6aeb5a99c8f8275695c4f42362920202020202020202020202020202020202020202020201e1b1610090100000000000000000000000000000000000003101c2834414d5965727e8a96a3afa4988c8073675b6774808c99a5a3978b7e72665a4d413528212e3a46535f6b7884909da9a093877b6e625e6b7783909ca8a99c9084786b5f53473b2e22160a00000000000000000000000000000000000008111a222a323940464b4f5356595a5b5b5b5a5855524e4e59646e79848f99a1968c81766c61564c413d4a5763707d8a97a49e9184776a5e5144372b2b3844515e6b7784919ea4978a7d7164574a3e3124170b0007131e29323b43494c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c55606b76818b96a1968b81766b60554a3f352a272b2d2e2f30303132383f464e555d656d767f88929b9990867b71665b5044392d22160a00000007131e29323b43494c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c55606b76818b96a1968b81766b60554a3f424d57626c77818c96968b81766c615d697683909d9c8f8275695c4f4236291c140d060000000000000000040d161e262e353b41464a4e52545658595959595857555350505b66717c87919c9b90857a70655a4f4446505b65707a858f9a92887d73685e65727f8c99a09386796d6053463a2d20130a030000000000010e1a27333f4c5864717d8995a1adada195897d726668727c869099a3a1978d83796f665c52483e352b21170d04030d17212c37424e5a65717d8995a1adab9f93877a6e62564a3d3125180c0000000006131f2b3844515d6a76828f9ba7b3a69a8e82766a5e52463a2f23180d030000000000000000000000000000000000030e1925303c4854606c7884919da9afa3978b7e7266594d4134281b0f0200000000000000010d1924303c48545f6b77838f9ba6b1a9a4a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a4a8afa99d9185796d61564a3e32261a0f030000000000000000000000000000000000131f2c3946525f6c7986929faca094877a6d6053473a2d201407000000000000000000000000010e1a27333f4b5864707c8895a19e92867a6f63574c404b56616b76808a939ba3a69f9994918e8d8d8e9093969b9c948d857c736a6c7884909ba6a198908b89888a8c91969d9d958d857c736a60564c42372d22170c010000000000000000000000000000000000000000030e19232e39434e59636e79838e99a1978c81776c616875828e9ba5998c8073675a4e423b45515e6a7683909ca3978b7e716f7b8894a19f9286796d6154483c3f4b5764707d8996a29d9184786b5f5245392c20130600000000000000000006121d2934404b57626d7985909ca7b2adaaaaa7a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a6abb3b5a99c8f8275695c4f42362c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2a27211b130b0100000000000000000000000000000000000713202c3844505d6975818e9aa6aea195897c70635864717d8996a2a79a8e8275695d5144382c25313d4a56626f7b8794a0a99d9084786b5f5b6774808c98a5aca094887b6f63574a3e3226190d010000000000000000000000000000000006101a232c343c444b51575b5f6365676868676664625e5a54525d67727d88929d9d93887d73685d53483d4a5763707d8a96a39e9184776b5e5144382b2b3845515e6b7885929ea3968a7d7063574a3d3024170a000c18242f3a444d545859595959595959595959595959595959595959595959646f7a858f9a9d92877c72675c51463b3132373a3b3c3c3d3e3e3e3b3c434b535b646d768089949e988d83776c61564a3e32261a0e0200000c18242f3a444d545859595959595959595959595959595959595959595959646f7a858f9a9d92877c72675c51463b46505a656f7a858f9993887d73695e697683909d9c8f8275695c4f4236291c0f030000000000000000020c161f2830383f464c52575b5e616364656666666564625f5c58545f6a75808b95a0978c81766b61564b4049545e69737d8893998f857a6f6565727f8c99a09386796d6053463a2d20130700000000000004111d2a36434f5b6874818d99a5b1a99d9185796d61606a747d87919ba59f958b81776e645a50463d33291f150c0205101b26323d4955616c7885919da9afa3978a7e7266594d4134281b0f020000000915222e3b4754606d7985929eabafa3978a7e7266594d41352a1e1207000000000000000000000000000000000000000814202c3844505c6874818d99a6b2a79a8e8275695c5043372a1e110500000000000000000814202b37434f5b66727e8a96a2adb4b1a9a29f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9fa1a7afb3b0a4988c8074695d5145392d22160a000000000000000000000000000000000000131f2c3946525f6c7986929faca094877a6d6053473a2d20140700000000000000000000000004111d2a36424f5b6774808c98a59a8e82766a5e524645515c67727d88929ca5a59c948e88848281818183868a8f959b978e857c726f7b8894a1a59a8f867f7c7b7d81858b929a9f978e857c72685e54493e34291e130700000000000000000000000000000000000005090d11131c27323c47525c67727c87929d9e93887e736866737f8b98a49b8f83766a5e5349484a55616d7986929fa094887b6f6c7985919ea295897c7064594d4848505b6773808c98a59a8e8275695c5043372a1e1105000000000000000000010c18232f3a45515c68737f8a96a1adb8aea49c9898989898989898989898989898989898989898989aa1abb5a99c8f8275695c4f423939393939393939393939393939393939393939393939393937332d251d130900000000000000000000000000000000000b17232f3c4854606c7985919daaaa9e9285796d6055616d7a86929faa9e9285796d6054483b2f2834414d5966727e8b97a3a6998d8174685c5864707c8995a1aea4978b7f73665a4e4236291d1105000000000000000000000000000000040e18222c353e464e555c62676c6f727374757473716e6a65605a56616b76818b96a19a8f84796f645a4f444956636f7c8996a29e9285786b5f5245382c2c3945525f6c7885929fa396897c6f6356493d3023160a00101c2935404c565f65666666666666666666666666666666666666666666666668737e89939e998e83786d63584d42373d43464848494a4b4b4a4640394149525b646d77828d989f94897d72665a4e42362a1e12050000101c2935404c565f65666666666666666666666666666666666666666666666668737e89939e998e83786d63584d423e49535e68737d88929a8f857a7065697683909d9c8f8275695c4f4236291c0f0300000000000000000a141e28313a424a51585d62676a6d6f717273737372706e6c68645f59636e79848f999e93887d72675d5247424c57616c76818b96968c81776c65727f8c99a09386796d6053463a2d2013070000000000000713202c3945525e6b7784909ca9b2a6998d8175685c58626b757f89939da79d938a80766c62584f453b31271e140a000a15212c3844505c6875818d9aa6b2a69a8e8275695c5043372b1e12050000000b1724303d4a56636f7c8895a1aeaca093877b6e6256493d3125190d0100000000000000000000000000000000000000030f1b2734404c5865717d8a97a3afaa9d9185786b5f5246392d2014070000000000000000030f1b27323e4a56626d7985919da9b4aba0979292929292929292929292929292929292929292929292959ea8b4ab9f93877b7064584c4035291d1105000000000000000000000000000000000000131f2c3946525f6c7986929faca094877a6d6053473a2d2014070000000000000000000000000714202d3945525e6b7783909ca2968a7e7165594d414a56626d79848f9aa4a79c938a837c7875737375777a7e848a9097978e847a707d8a96a3a094897d746f6f71747a80889099a0978e847a70655b50453a2f24190d02000000000000000000000000000000050b1015191d2022242b35404b55606b75808b96a09a8f857a6f656f7c8894a09f93877b6f645b5654565c67727e8a96a29c9084786c6975828e9aa5998d81756a5f58555558616c7884909ca2968a7e7266594d4134281b0f020000000000000000000007121e2935404b57626e7985909ca7b3a99d928b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8f9aa5b2a99c8f8275695c4f4646464646464646464646464646464646464646464646464646433e372f251b1005000000000000000000000000000000020e1a27333f4b5864707c8995a1ada79a8e8275695d515e6a76838f9ba7a195897c7064574b3f322c3844505d6975828e9aa7a2968a7d71655954616d7986929eaaa79b8f83766a5e5245392d2114080000000000000000000000000000000b16202a343e47505860676e73787b7e81818281807d7a76716b645d5a646f79848f9aa1968b81766b61564b4855626f7b8895a29f9286796c5f5346392d2d3a4653606c7986939fa295887b6f6255493c2f22160900121f2b3844515d68717373737373737373737373737373737373737373737373726c77828d97a0958a7f74695f54493f484f5354555657575857524a41384049525c66707b87929e9a8f83776b5f52463a2d2114080000121f2b3844515d68717373737373737373737373737373737373737373737373726c77828d97a0958a7f74695f54493e414c56616b76818b95978c82776d697683909d9c8f8275695c4f4236291c0f030000000000000007111c26303a434c545c63696e73777a7c7e7f8080807e7d7b7874706a645d67727d88939e998f84796e63584e43454f5a646f79848e9993897e7469727f8c99a09386796d6053463a2d2013070000000000000916222f3b4854616d7a86939facafa2968a7d716558505a636d77818b959ea59b92887e746a61574d433930261c120804101c2834404c5965717e8a96a3afaa9d9185786c5f53463a2d2014070000000d1926323f4c5865717e8b97a4b0aa9d9184786b5f52463a2d2115090000000000000000000000000000000000000000000b1824303d4955626e7b8794a1adada093877a6e6155483b2f2216090000000000000000000a16222e3945515d6974808c98a4afa79b8f86868686868686868686868686868686868686868686868c98a4b1a69a8e83776b5f53473c3024180c00000000000000000000000000000000000000131f2c3946525f6c7986929faca094877a6d6053473a2d2014070000000000000000000000000916222f3c4855616d7a86939f9f93867a6e615549434f5b67737e8a95a0aa9f958b8178716c686767686a6e73787e868d95968c82777d8a97a49d9184786c636264696f767e879099a0968c82776c62574c40352a1e130700000000000000000000000000020a10161c2125292c2f31323339444e59646e79848e99a1968c81766c6b78848f9ba3978c81766d66626162676e78838f9aa3978c80746865717d8995a19d92867b7169646161646a737e8994a09d92867a6e62564a3d3125180c0000000000000000000000010c18232f3a46515d68747f8b96a2ada89b8e827e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e8a97a4b0a99c8f8275695c5353535353535353535353535353535353535353535353535353524f4941372d22160b00000000000000000000000000000006121e2a37434f5b6774808c98a5afa3978b7e7266594e5a67737f8c98a4a5988c8073675b4e42362f3b4754606c7985919eaa9f93867a6e6155515d6976828e9ba7ab9f92867a6e6155493d3024180c000000000000000000000000000007121d27323c465059626a72797f84888b8d8e8e8e8c8a86827c766f675e5d68737d88939d9d92887d72675d524854616d7a8794a0a093877a6d6154473b2e2e3b4854616e7a8794a0a094877a6d6154473b2e2115080013202c3946535f6c7980808080808080808080808080808080808080808080807e71707b86919b9b91867b70655a5047515a5f616262636465635c53483d37404a545f6a76828e9a9f93877b6e6255493c3023170a000013202c3946535f6c7980808080808080808080808080808080808080808080807e71707b86919b9b91867b70655a50453a454f5a646f79848e9993897e74697683909d9c8f8275695c4f4236291c0f03000000000000020d18232e38424c555e666d747a7f8386898b8c8c8c8c8b8a8784817b766f67616b76818c97a0958b80756a5f544a3f48535d68727d87929a90857b70727f8c99a09386796d6053463a2d2013070000000000000b1824313d4a5763707c8995a2aeaca093877a6e615549515b656f79838c96a0a49a90867c73695f554b42382e241a11070c1824303d4955626e7b8794a0adada094877b6e6155483c2f2316090000000e1b2834414e5a6773808d99a6b2a89b8e8275695c5043372a1e11050000000000000000000000000000000000000000000814212d3a46535f6c7985929eabafa296897c7063574a3d3124170b00000000000000000005111d2935404c5864707b87939faba79b8f83797979797979797979797979797979797979797979808c98a4ada1968a7e72665a4e43372b1f130700000000000000000000000000000000000000131f2c3946525f6c7986929faca094877a6d6053473a2d2014070000000000000000000000000b1825313e4a5763707d8996a29c9083776a5e524547535f6b77838f9ba6a5998e83786f66605c5a5a5b5e62676d747b838c9494897e7d8a96a39c8f8276695c55585d646c747e87919b9e93897e73685d52463b2f24180d010000000000000000000000050d141b22282d3135393b3d3f40404047525d67727d88929d9d93887d7368737e8a95a09d92887f77726f6e6f7278818a95a09d92877b6f63616d78848f9aa3988d837b74706e6e70757c858f9aa2978c8175695e52463a2d21150900000000000000000000000007121e2935404c57636e7a85919ca8aa9e92877b7171717171717171717171717171717171717d8a97a4b0a99c8f8275695f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5a53493e33271b0f0300000000000000000000000000000915222e3a46535f6b7784909ca8aca093877b6e62564b57636f7c8895a1a89c8f83776a5e524539323f4b5763707c8895a1a89b8f83776a5e524d5a66727e8b97a4aea2968a7d7165594d4034281c0f03000000000000000000000000010d18232e39434e58626b747c848a9094979a9b9b9a9996938e88817970675e616c76818c96a1998f84796f64594e535f6c7985929fa195887b6f6256493c30303d4956626f7c8895a29f9285796c5f5346392d2013070013202c3946535f6c79868c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8b7e7169747f8a959f978d82776c61564d59636b6e6e6f7071716e655a4e413538424d5965727e8b97a3978a7d7164584b3e3225180c000013202c3946535f6c79868c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8b7e7169747f8a959f978d82776c61564c413d48525d67727c87919b90867b707683909d9c8f8275695c4f4236291c0f0300000000000008131e2a353f4a545e6770787f858b8f93959798999999989694918c8781797169656f7a85909b9c91877c71665b5045414b56606b75808a95978c8277727f8c99a09386796d6053463a2d2013070000000000000d1926333f4c5865727e8b98a4b1aa9d9184776b5e524649535d67717a848e98a2a2988e857b71675d534a40362c22190f0814212d3a46535f6c7885919eabafa396897d7064574a3e3124180b000000101c2936424f5c6875828e9ba8b2a6998c8073675a4d4134281b0f0200000000000000000000000000000000000000000005121f2b3844515d6a7784909da9b1a4978b7e7165584b3f3225190c000000000000000000010c1824303c47535f6b77838e9aa6ab9f93877b706c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6d7884909ca8a89d9185796d61564a3e32261a0f0300000000000000000000000000000000000000131f2c3946525f6c7986929faca094877a6d6053473a2d2014070000000000000000000000000d1a2733404c5966727f8b98a59a8d8174675b4f424a56636f7b8794a0aba094887c71675d55504d4d4f52565c6269717a828b9590857c8996a39c8f8275695c4f4c525a626b75808a949f9b9085796e63574c4035291d110600000000000000000000060f171f262d33383d4245484a4c4c4c4c4b4b56606b76818b96a19a8f847a6f6d78838e98a29a9189837e7b7b7b7e838a939c9f958b80756a5e5c68737e89939d9f958d86807c7b7b7d81868e97a19a90867b7064594d4135291d1105000000000000000000000000010d18242f3b46525d6974808b97a2ada3988c817569656565656565656565656565656565707d8a97a4b0a99c8f82756c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6b655b4f44372b1f120500000000000000000000000000010d1925323e4a56626f7b8793a0aca89c9084776b5f524754606c7885919daa9f93867a6e6155493d36424e5a6773808c98a4a4988c8073675b4e4a56636f7b8894a0ada69a8d8175695c5044382b1f130700000000000000000000000007131e2935404b55606a747d868e959b9f9a96949495979b9e99928b837970665c656f7a858f9aa0968b80756b6055515e6a7783909ca3978a7d7164584b3f32333f4b5864717d8a97a39c9083776a5d5144382b1e12050013202c3946535f6c79869399999999999999999999999999999999999999988b7e71646d78838e999e93897e73685d525d69757a7b7c7d7d7e76695d504437333d4a5663707d8a96a3988c7f7265594c3f3326190c000013202c3946535f6c79869399999999999999999999999999999999999999988b7e71646d78838e999e93897e73685d52483d414b56606b75808a95978c82777683909d9c8f8275695c4f4236291c0f030000000000010d1824303b46515c667079828a91969b9c97949291919193959a9d98928b837b716769747e89949f988d82776d62574c41444f59646e79838e9893897e737f8c99a09386796d6053463a2d2013070000000000000e1b2734414d5a6773808d99a6b3a89b8e8275695c4f43414b555f68727c86909aa3a0978d83796f655c52483e342b21170d121e2b3744515d6a7683909ca9b1a5988b7e7265594c3f3326190d000000111d2a3744505d6a7683909da9b1a4988b7e7165584b3f3226190c0000000000000000000000000000000000000000000003101d2936434f5c6975828f9ba8b2a6998c807366594d4033271a0d0000000000000000000008131f2b37434e5a66727e8995a1ada4988c8074685f5f5f5f5f5f5f5f5f5f5f5f5f5f5f65717d8995a1ada4988c8074685d5145392d21160a0000000000000000000000000000000000000003131f2c3946525f6c7986929faca094877a6d6053473a2d2014070000000000000000000000000f1c2835424e5b6774818d9aa4978b7e7265584c404d5965727e8b97a3a89b8f83776b60554b43414142464b51585f687079838c968c818996a29c908376695c504348505a636d78838d98a1968b8074685d51453a2e22160a000000000000000000060f18212930383e44494e5154575859595958575459646f79848f9aa1968b81766b727c8690989f9b948e8a8888888b8f959c9e968d83796f645956616c77818b949c9f97918c898888898c9198a09a92887e74695e53483c3125190d010000000000000000000000000007131e2a35414c57636e7a85919ca8a99d92867a6f635858585858585858585858585863707d8a97a4b0a99c8f827979797979797979797979797979797979797979797979797979797979776c6053463a2d2014070000000000000000000000000004101d2935414e5a66727e8b97a3b0a5998c8074685b4f44505c6975818e9aa6a2968a7d7165594c403945525e6a76838f9ba8a195887c7063574b47535f6c7884919da9a99d9185786c6054483b2f23170a0000000000000000000000000c18232f3a46515c67717c868f98a09a938e8a8887888b90969d9d958b82786d635e68737e88939e9d92877c72675d525b6874818d9aa5998c8073675b4e423636424e5b6773808d99a69a8d8174685b4f4236291c10030013202c3946535f6c79869292929292929292949ca69e9592929292929292928b7e716467717c87929d9a8f84796f64595d69768388898a8a85786c6054494240414a5764707d8a96a3998c7f7266594c403326190d000013202c3946535f6c79869292929292929292949ca69e9592929292929292928b7e716467717c87929d9a8f84796f64594e4339444e59636e78838d9893897e7683909d9c8f8275695c4f4236291c0f03000000000005111d2935414c57636d78828b949b9d96908b888584848586898e949b9d958d83796f646d78828d989f94897e73695e53483d47525c67717c86919a8f857a7f8c99a09386796d6053463a2d2013070000000000000f1c2935424f5b6875828e9ba8b3a6998d8073675a4d4139434d57606a747e88919ba59f958b81776e645a50463d33291f15101c2935424f5b6875818e9ba7b3a69a8d8173675a4d4134271b0e010000121e2b3845515e6b7784919eaab0a3968a7d7063574a3d3124170b00000000000000000000000000000000000000000000000e1b2835414e5b6774818e9aa7b4a79a8d8174675a4e4134281b0e00000000000000000000030f1a26323e4a55616d7985919ca8a89d9185796d61555252525252525252525252525e6a76828e99a5ab9f93877b7064584c4034291d11050000000000000000000000000000000000000005131f2c3946525f6c7986929faca094877a6d6053473a2d201407000000000000000000000000101d2a3643505c6976828f9ca296897c7063564a424f5b6874818e9aa7a4988c7f73675b4f44393434363a3f464d565e67717a848e938e919aa59d9084776a5e51443e48515c66717c87929e9c9185796e62564a3e32261a0e0200000000000000040e18212a333b42494f555a5e6163656666666563615d5d68737d88939d9d92887d726a747d868e949a9e9a97959495979b9d99938c847b71675d52505b656f79828a91979c9c9896949496999d9b96908880766c62584d42372b2014080000000000000000000000000000020d1924303b46525d6974808b97a2aea3978c8074695d524b4b4b4b4b4b4b4b4b4b5763707d8a97a4b0a99d918786868686868686868686868686868686868686868686868686868686867a6d6053473a2d201407000000000000000000000000000814202d3945515d6a76828e9ba7aea195897d7064584c414d5965727e8a97a3a6998d8174685c50433c4955616d7a86929faa9e9185796c60544743505c6875818d99a6ada195887c7064574b3f33261a0e020000000000000000000005111d2834404c57626d78838e98a1999089827d7b7a7b7f848b949d9d948a7f74695e616c77818c97a1998e84796e63595965727e8a97a39c8f83776a5e52473c3c47525e6a77838f9ca3968a7e7165594c4033271a0e010013202c3946535f6c798686868686868686868a96a2988c8686868686868686867e7164606b75818b96a1968b80756b605b6773808c969694887c70655b534e4c4d515b67737f8c98a4988b7e7265584c3f3225190c000013202c3946535f6c798686868686868686868a96a2988c8686868686868686867e7164606b75818b96a1968b80756b60554a3f3d47525c66717b86909a8f847983909c9c8f8275695c4f4236291c0f0300000000000915222e3a46515d69747f8a949d9d948b857f7b797777787a7d8289929b9f958b80756966717c87919c9b90857a6f645a4f44404b55606a747f8a94968b807e8c98a09386796d6053463a2d201307000000000000101d2a3643505d697683909ca9b1a5988b7e7265594c3f323b454e58626c768089939da79d938980766c62584f453b31271e141a2734414d5a6773808d99a6b3a89b8e8275685b4f4235281c0f020000121f2c3945525f6b7885929eabafa296897c6f6256493c3023160900000000000000000000000000000000000000000000000d1a2734404d5a6673808d9aa6b3a89b8e8275685b4e4235281c0f00000000000000000000000a16212d3945515c6874808c97a3ada195897d72665a4e4646464646464646464b57636e7a86929eaaa69a8e83776b5f53473b3024180c00000000000000000000000000000000000000010613202c3946535f6c7986929faca094877a6d6053473a2d201407000000000000000000000000111e2b3744515d6a7784909da194877b6e61554844515d6a7683909ca9a295897c7063574b3e3327272a2e343c444c555f68727c87919b9ca3ab9e9285786c5f5246393f4a555f6b76818d98a1968a7e73675b4f43372b1e1206000000000000020c16202a333c454d545b60666a6d707273737371706d6965616c76818c96a1998f84796f6b747c83898e9295969898989694918d88817a72695f554b49535d67707880868c9093969798989796938f8b857e766d645a50463b30251a0f0300000000000000000000000000000007131e2a35414c58636f7a86919da8a89c91857a6e63574c403e3e3e3e3e3e3e4a5763707d8a97a4b0ada2989393939393939393939393939393939393939393939393939393939393877a6d6053473a2d201407000000000000000000000000000b1824303c4955616d7986929eaaaa9e9286796d6154483d4956626e7b8793a0a99d9184786c5f5347404c5865717d8a96a2a69a8e8275695d5044404c5965717d8a96a2afa4988c8073675b4f42362a1e1205000000000000000000000915212d3945515c68737f8a959f9c91877e77716e6d6f7379828b95a09b91867a6f635a65707a85909aa0958b80756a6056626e7b87939f9f93877b6f63584e49484e58636f7b87939f9f93877a6e6256493d3024180b0000131f2c3946525f6b7679797979797979797b8895a2978a7d7979797979797979786f6359646f7a858f9a9d92877c71675c64707c8894a0998d82776d645e5a595a5d636d77838f9ba295897c7063574a3e3124180b0000131f2c3946525f6b7679797979797979797b8895a2978a7d7979797979797979786f6359646f7a858f9a9d92877c71675c51463b404a555f6a747f8994968b80828f9c9c8f8275695c4f4236291c0f0300000000000c1925313e4a56626e7a85919b9f958b8179736f6c6b6a6b6d71778089949f9d92867a6e626a75808b95a0978c81766b60564b40434e58636d78828d9792877e8b98a09386796d6053463a2d201307000000000000111e2a3744515d6a7784909daab0a4978a7d7164574b3e31333c46505a646d77818b959fa59b92887e746a60574d43392f261c1926333f4c5966727f8c99a5b2a99c8f8275695c4f4336291c10030000131f2c3946525f6c7986929facaea295887b6f6255483c2f22150900000000000000000000000000000000000000000000000d192633404c596673808c99a6b3a89c8f8275685c4f4235291c0f000000000000000000000005111d2834404c58636f7b87939eaaa69a8e82766a5e53473b393939393939444f5b67737f8b97a3ada1958a7e72665a4e43372b1f13070000000000000000000000000000000002070b0e1014202d3a4653606d798693a0aca094877a6d6053473a2d201407000000000000000000000000121f2c3845525e6b7885919ea09386796d60534745525f6b7885919eaba093877a6d6154483b2f221a1d232a323a434d56606a75808a95a0abada093877a6d6154483b38434e5965707c88939f9b8f83776b5f53473b2e22160a00000000000009131e28323c454e575e666c71767a7c7e8080807e7c7976716b656f7a858f9aa0968b80766b6a71787d8285888a8b8b8b8a8885817c76706860574d44414b555e666e757b808487898a8b8b8a8987837f7a736c645b52493f342a1f140900000000000000000000000000000000020d1924303b47525e6975808c97a3ada2968b7f74685c51453a32323232323d4a5763707d8a97a4b0b4aaa3a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a094877a6d6053473a2d201407000000000000000000000000030f1b2734404c5865717d8996a2aea79b8e8276695d51453a46525f6b7784909ca8a094887b6f63564a434f5c6874818d99a5a3978a7e7265594d413d4955616e7a86939faba89c9083776b5f52463a2e211509000000000000000000000d1925313d4955616d7985909ba0958a7f756c65626163687079848f9aa2978c8074685d5e69737e89939e9c92877c71675c5f6b77838f9ba3978c80756a6059555558606974808b97a39a8e82766a5e52463a2d2115080000111e2a36434f5a646b6c6c6c6c6c6c6c6e7b8895a2978a7d716c6c6c6c6c6c6c6c675e535d68737e89939e998e83786d62606c78838e999e93897f766f6a676667696d757e8994a09d9286796d6154483b2f2216090000111e2a36434f5a646b6c6c6c6c6c6c6c6e7b8895a2978a7d716c6c6c6c6c6c6c6c675e535d68737e89939e998e83786d62584d4239434d58626d77828c979186828f9c9c8f8275695c4f4236291c0f0300000000000f1c2835414d5a66727e8a96a2998e83786f6863605e5d5e61666d77828d99a3978b7e7266636e79848f999d93887d72675c52473c47515c66717b8690988d828b98a09386796d6053463a2d201307000000000000111e2b3844515e6b7784919eaab0a3968a7d7063574a3d302a343e48525c656f79838d96a0a49a90867c72695f554b41382e241a25323f4b5865727e8b98a5b2a99d908376695d5043362a1d1003000013202c3946535f6c798693a0acaea295887b6e6155483b2e22150800000000000000000000000000000000000000000000000c1926323f4c5965727f8c99a6b2a99c8f8275695c4f4236291c0f0000000000000000000000000c18232f3b47535f6a76828e9aa5aa9e93877b6f63574b3f332c2c2c303c4854606c7884909ba7a89c9185796d61554a3e32261a0e03000000000000000000000000000000060d13171b1c1e232f3c4855616e7b8794a1ada094877a6d6053473a2d201407000000000000000000000000131f2c3946525f6c7985929f9f9286796c5f534646535f6c7986929fac9f9286796c5f5346392d201312182028313b444e59636e79848f9aa6aea295897c6f63564a3d323d48545f6b77838f9b9f93877b6f63574b3e32261a0d0100000000040f1a25303a444e57606970777d8286898b8c8c8c8b8986827c766f68737e88939e9d92877d7267666c7276797b7d7e7e7e7d7b7975716b655e564e453b39434c545c63696f74777a7c7d7e7e7d7c7a77736e68625a524940372d22180d02000000000000000000000000000000000008131f2a36414d58646f7a86929da8a79c9085796d62564b3f34282525303d4a5763707d8a97a4b0b8afa9a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a094877a6d6053473a2d20140700000000000000000000000006131f2b3744505c6874818d99a5b0a3978b7e72665a4d4136434f5b6774808c99a5a3978b7e72665a4d46535f6b7884909da9a093877b6e6256493d3946525e6a77838f9ca8ac9f93877b6e62564a3d3125190d00000000000000000004101c2935414d5a66727e8a95a19b9084786d635a5554565e67727d8994a09c9185796d6157626c77828c97a2998e83786e635b66727e8a95a19c91867c726a656262646a727b86919ca095897d72665a4e42362a1e110500000e1a26323d48525a5e5f5f5f5f5f5f616e7b8895a2978a7d71645f5f5f5f5f5f5f5c554c56616c77828d979f958a7f74695e66727d88929c9b9188817b7674737375797f87909ba1978c8175695d5145392c20130700000e1a26323d48525a5e5f5f5f5f5f5f616e7b8895a2978a7d71645f5f5f5f5f5f5f5c554c56616c77828d979f958a7f74695e54493e3c46515b66707b8590988d88919d9c8f8275695c4f4236291c0f030000000000111e2b3744505d6975828e969795897d71675d5753515152555b66717d8995a29a8e8175685d67727d88939e998e84796e63584d433f4a545f69747e8993948f929ca09386796d6053463a2d201307000000000000121e2b3845515e6b7884919eabb0a396897c6f6356493d30232c36404a535d67717b858e98a2a2988e857a71675d534a40362c2225323e4b5864717e8b98a4b1aa9d9084776a5d5044372a1d1104000013202c3946535f6c7986939facaea295887b6e6155483b2e22150800000000000000000000000000000000000000000000000c1926333f4c5965727f8c99a6b2a99c8f8275695c4f4236291c0f00000000000000000000000007131f2a36424e5a65717d8995a1aca3978b8074685c5044382c202935414d5965717c8894a0aca4988c8074685d5145392d21160a0000000000000000000000000000000810181e2327292a2d343f4b5764707d8996a2aca09386796d6053473a2d20140700000000000000000000000013202c3946535f6c7986929f9f9285786b5f52454653606d798693a0ab9e9285786b5e5245382c1f12060e161f29323c47515c67727e8995a0aca4978b7e7265584c3f3337434f5b66727e8b97a3988b7f73675a4e4235291d1004000000000a15202c36414c566069727a82898e9296989999999895928d888179716c77818c97a1998e84796e646166696d6f70717171706f6c6965605a534c443c33313a424a52585e63686b6e7071717171706e6b67625d57504840372e251b1106000000000000000000000000000000000000020e1925303c47535e6975818c97a3ada1968a7e73675c5045392e2224303d4a5763707d8a97a4b0b0a69d9999999999999999999999999999999999999999999999999999999994877a6d6053473a2d2014070000000000000000000000000a16222f3b4753606c7884919da9aca094877b6f62564a3e333f4c5864707d8995a2a79b8e8276695d514a56626f7b8794a0a89c9084776b5f52463a36424e5b6773808c98a4afa3978b7e72665a4d4135291c100400000000000000000713202c3845515d6a76828e9aa3978b7f73675c5149474c56616c7884909ca195897d7165595b65707b85909b9f958a80756a60626d79848f9aa3988e857c75716f6f70757b848d98a29a8f84786d61554a3e32261a0e0100000a16212c3640484e52525252525255616e7b8895a2978a7d716457525252525252504b45505b65707b86919b9b90867b7065616b76808a939b9a938c878381808082858a9199a1998f857b6f64594d4135291d100400000a16212c3640484e52525252525255616e7b8895a2978a7d716457525252525252504b45505b65707b86919b9b90867b70655a4f453a3f49545e69737e889397959aa39c8f8275695c4f4236291c0f030000000000131f2c3946525f6b788588898a8c85786c60554c474544454955616d7a8693a09c9083766a5d616b76818c97a0958a80756a5f54493f434d58626c77828c969b9da4a09386796d6053463a2d201307000000000000121e2b3845515e6b7885929eabb0a396897c6f6356493c3023242e38414b555f69737c86909aa4a0968d83796f655c52483e342a24313e4b5764717e8b98a4b1aa9d9084776a5d5044372a1d11040000131f2c3946525f6c7986929facafa295887b6f6255483c2f22160900000000000000000000000000000000000000000000000d1a2633404d596673808c99a6b3a89c8f8275685b4f4235291c0f000000000000000000000000020e1a26313d4955616c7884909ca8a89c9084786c6054493d31252e3a46515d6975818d99a5ab9f93877b6f64584c4034281d1105000000000000000000000000000007111a22292f333637393d45505b6773808c98a5aa9e9184786b5f5245392c1f130600000000000000000000000013202c3946535f6c798693a09f9285786b5f52454653606d798693a0ab9e9285786b5e5145382b1e1205040d17202b35404b56616d78848f9ba7a69a8d8174675b4e4235323e4a56626e7a87939f9b8f83766a5e5145382c201307000000040f1b26323d48535e68727b848c949a9e9c98969696989c9e99938b837a71707a85909aa0958b80756b60595d6062646565656462605d59544f49423a322a28303840474d53575b5f61636465656463615e5b57524c453e362e251c1309000000000000000000000000000000000000000008141f2b36414d58646f7b86929da9a79b9084786d61564a3f332824303d4a5763707d8a97a4b0ab9f948c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c877a6d6053473a2d2014070000000000000000000000010e1a26323f4b57636f7c8894a0ada99c9084786b5f53463a303c4854616d7986929eaa9e9285796d60544d5966727e8b97a3a5998c8074675b4f4336323f4b5764707c8995a1ada79a8e8276695d5145382c20140800000000000000000916222f3b4854616d7986929ea094877b6f63574b403b44505c6874808c99a5998d8174685c545e69747e89949e9c91877c71665c68737e88939ca0978e87817d7b7b7d81868d969f9c92887d72675c5045392d21150900000004101a242e363d4245464646464855616e7b8895a2978a7d7164574a4646464645443f3e49545f69747f8a959f978c82776c61646e78818a91989d97938f8d8c8d8e91969b9d978f877d73695e53483c3025190c00000004101a242e363d4245464646464855616e7b8895a2978a7d7164574a4646464645443f3e49545f69747f8a959f978c82776c61564b4138424d57626c77818c96a1a5a59c8f8275695c4f4236291c0f030000000000131f2c3946525f6b767a7b7c7d7e8076695d50443a38373945525f6b7885929f9d9184776a5d5a656f7a85909b9c91867b71665b50453b46505b65707a858f9a9f9f9f9386796d6053463a2d201307000000000000121e2b3844515e6b7784919eabb0a396897d7063564a3d30231c262f39434d57616a747e88929ca59f958b81776d645a50463c3329323e4b5865717e8b98a5b1aa9d9083766a5d5044372a1d11040000121f2c3845525f6b7885929eabafa296897c6f6356493d3023160a00000000000000000000000000000000000000000000000e1a2734414d5a6773818d9aa6b3a89b8e8275685b4e4235281b0f000000000000000000000000000915212d3844505c6873808b97a3aca095897d7165594d41352a323e4a56626e7a86929da9a69a8e82766b5f53473b3024180c0000000000000000000000000000030e19232c343b40424345494f57616d7884909ca8a69a8e8275695c5043372a1e110400000000000000000000000013202c3946525f6c7986929f9f9285786b5f52454653606c798693a0ab9e9285786b5f5245382c1f120500050f19242e3945505b67737e8a96a2a89c8f83766a5d5144382e3a46525e6b7783909c9f9286796d6154483b2f2216090000000814202c37434e59646f7a848d969e9d96908c8a898a8c91979e9d958c83796e737e89939e9c92877c72675c52545657585858575553504d48433d373028201e262e353c42474b4f525556575858575654524f4b46413a342c241c130a010000000000000000000000000000000000000000030e1925303c47535e6a75818c98a3aca095897e72675b5044382d24303d4a5763707d8a97a4b0a99c8f827f7f7f7f7f7f7f7f7f7f7f7f7f7f7f7f7f7f7f7f7f7f7f7f7f7f7f7f7f7a6d6053473a2d201407000000000000000000000005111d2a36424e5b6773808c98a4b0a5998d8174685c4f43372c3845515d6a76828e9ba7a195897c706457505d6975828e9aa7a195897d7064584b3f332f3b4854606c7985919eaaaa9e9286796d6155483c3024170b00000000000000000c1825313e4a5763707c8995a29d9184786b5f53463a333f4b5864707d8996a29d9084776b5f5257626d77828d98a2988e83786d63616c76818a939ba098928d8a8888898c91989f9b938a80766b61564a3f34281c11050000000008121c242c3236383939393b4855616e7b8895a2978a7d7164574a3e39393939373437424d58636d78838e999e93887d73685d666f7780878d92979a9c9a99999b9c9a96918c857d746b61574d42372b2014080000000008121c242c3236383939393b4855616e7b8895a2978a7d7164574a3e39393939373437424d58636d78838e999e93887d73685d52473d3b45505a656f7a848f989898988f8275695c4f4236291c0f030000000000111e2a37434f5a646b6d6e7071727370665a4e413c3c3d3f45525f6b7885929f9d9084776a5d535e69747e89949f988d82776c62574c413f49535e68737d88929292929286796d6053463a2d201307000000000000111e2b3744515e6a7784919eaab0a3978a7d7063574a3d3124171e27313b454f58626c76808a939da79d938980766c62584e453b31323f4c5965727e8c98a5b2a99c908376695d5043362a1d10030000121e2b3844515e6b7784919eaab0a3978a7d7064574a3e3124180b00000000000000000000000000000000000000000000010f1c2835424e5b6874818e9ba7b3a79a8d8174675a4e4134271b0e0000000000000000000000000004101c28343f4b57636f7a86929eaaa5998d82756a5e52463a2e37434f5b67727e8a96a2ada1958a7e72665a4e42372b1f130700000000000000000000000000000914202a353e464c4f5052555a6169737e8995a0aca1968a7e7266594d4134281b0f02000000000000000000000000121f2c3945525f6c7885929f9f9286796c5f534646525f6c7985929fac9f9286796c5f5346392d201306000007121d28343f4b56626e7a86929eaa9f9286796d6054473b2e36424f5b6774808d99a295897c7063574a3e3125180b0000000c1925313c48545f6b76818b969f9d948b85807d7c7d80858c959e9e958b80756c77828c97a2998e83796e63594e494a4b4b4b4a494744413d38322c251e16141c242a30363b3f4346484a4b4b4b4b4a4846423f3a352f29221a120a010000000000000000000000000000000000000000000008141f2b36424d5964707b87929ea9a69a8f83786c6155493e3227303d4a5763707d8a97a4b0a99c8f82757272727272727272727272727272727272727272727272727272727271695d5145392c20130600000000000000000000000915212d3946525e6a77838f9ba8aea295897d7164584c40332935414e5a66727e8b97a4a5988c8073675b54606c7985919eaa9e9286796d6154483c2f2c3844505d6975828e9aa7aea295897d7164584c4033271b0f03000000000000000d1a2733404d5966727e8b98a49b8e8275695c5043372f3c4855616e7a8793a0a093877a6d6154505b66707b86919b9f958a7f746a5f656f78818991979c9d9996959596999d9c97918981786e645a4f44392e23170c0000000000000a121a21262a2c2c2c2e3b4855616e7b8895a2978a7d7164574a3e312c2c2c2b28313b46515c67717c87929d9a8f84796f645d656e757c82878b8e9091929291908d8a86817a736b625950453b30251a0f0300000000000a121a21262a2c2c2c2e3b4855616e7b8895a2978a7d7164574a3e312c2c2c2b28313b46515c67717c87929d9a8f84796f64594e43383e49535e68737d888c8c8c8c8c8275695c4f4236291c0f0300000000000e1a26323e48525a5f616263646567655e5449484848494b4f56626e7a8793a09b8f8275695c4f57626d78828d989f94897e73685e53483d424c57616c7681858585858585796d6053463a2d201307000000000000111d2a3744505d6a7683909da9b1a4978b7e7164584b3e322518151f29333d46505a646e78818b959fa59b91887e746a60574d433933404d596673808c99a6b2a89c8f8275695c4f4236291c10030000111d2a3743505d697683909ca9b1a4988b7e7265584c3f3326190d0000000000000000000000000000000000000000000004111d2a3743505d6976838f9ca9b2a5998c807366594d4033261a0d00000000000000000000000000000b17232f3b46525e6a76828d99a5aa9e92867a6e62564b3f333c48535f6b77838f9ba7a89c9185796d61554a3e32261a0e0200000000000000000000000000000d1925313c4650575c5d5e61656b737b85909aa6a59a9085796d6156493d3125190c00000000000000000000000000121f2b3845515e6b7885919ea09386796d60534745515e6b7784919eaaa093877a6d6154473b2e2115080000000c17232e3a46525e6a76828e9ba7a195887c6f63564a3e31333f4c5864717d8a96a3988b7e7266594c4033271a0d010004101d2935414d5965707c87929da0958b827a74706f70747a838c96a19c92877b6f707b85909ba0958a80756a60554a403e3e3e3e3c3a3834302c27211b140c0a12191f252a2f3336393b3d3e3e3e3e3d3b3936332e29241e171008000000000000000000000000000000000000000000000000030e1a25313c48535f6a75818d98a3aba094897d71665a4f43382c303d4a5763707d8a97a4b0a99c8f827569656565656565656565656565656565656565656565656565656565655f574c4135291d110400000000000000000000000c1825313d4956626e7a87939fabab9e9286796d6155483c3025323e4a56636f7b8894a0a89c8f83776a5e5763707c8895a1a79b8e8276695d5145382c2835414d5966727e8b97a3afa5998d8174685c4f43372b1f1206000000000000000f1c2835424e5b6874818d9aa6998c8073665a4d41342d3946525f6b7885919ea295897c6f63564a545f69747f8a949f9c91867b71665d666f777f868c909497989999989794918c867f776f665c52483d33281d110600000000000000080f151a1d1f1f222e3b4855616e7b8895a2978a7d7164574a3e31241f1f1e1f2a353f4a55606b75818b96a1968b80756a605c636a70767b7e81838585858483817e7a756f68615950473e34291f140900000000000000080f151a1d1f1f222e3b4855616e7b8895a2978a7d7164574a3e31241f1f1e1f2a353f4a55606b75818b96a1968b80756a60554a3f37414c56616b767e7e7e7e7e7e7e75695c4f4236291c0f0300000000000a16212c3740484f5354555657595a5953535555555556585b6068737e8a96a2978b7f73665a4d505b66717c87919c9b90857a6f645a4f443a454f5a646f78787878787878766b5f5246392c201306000000000000101d2936434f5c6975828f9ca8b2a5988c7f7266594c4033261a0d17212b353e48525c666f79838d97a1a39a90867c72695f554b4137424e5b6774818e9aa7b4a79a8e8174685b4e4135281b0f0200000f1c2935424f5b6875828e9ba7b3a6998d8073675a4e4135281c0f030000000000000000000000000000000000000000000713202c3945525e6b7884919daab0a4978b7e7164584b3e3225180c000000000000000000000000000007121e2a36424d5965717d8994a0aca2978b7f73675b4f4337404c5864707c88949faba3988c8074685c5145392d21150a000000000000000000000000000000111d2936424d5862686a6b6e71767d858e97a1a59c93897e73685c5145392d21150900000000000000000000000000111e2b3744515d6a7784909da194877b6e61554843505d6976838f9ca9a195887b6f6256493d3023170b00000006121d2935414e5a66727e8b97a4a4988b7e7266594d4034303c4955626e7b8894a19a8d8174685b4e4235281c0f02000714202c3945515d6975818d98a49a8f8479706864636469707a85909ba3988c807469747e89949e9c91877c71675c51473c323231302e2b2824201b1610090200070e141a1f23272a2d2f3031323231302f2d2a26221e19130c0600000000000000000000000000000000000000000000000000000914202b37424e5965707b87929ea9a59a8e83776b6054493d32303d4a5763707d8a97a4b0a99c8f8275695c595959595959595959595959595959595959595959595959595958544e453b3025190d010000000000000000000004101c2834414d5965727e8a96a3afa79b8f82766a5d5145392c222e3a47535f6c7884909da99f93867a6e615a6773808c98a4a3978b7e72665a4d41352925313d4a56626f7b8793a0aca99d9084786c5f53473b2e22160a00000000000000101d2a3643505d6976838f9ca4988b7e7165584b3f322a3744505d6a7683909ca4978a7e7164584b4d58626d78838d98a2988d83786d625d666d747b8084888a8c8c8c8c8a8884807b746d655d544a40362c21160b000000000000000000040a0e111215222e3b4855616e7b8895a2978a7d7164574a3e312417131218232e39444e59646f7a858f9a9d92877c71665c595f656a6e727577787878787674716e69645e574f473e352c22180d020000000000000000040a0e111215222e3b4855616e7b8895a2978a7d7164574a3e312417131218232e39444e59646f7a858f9a9d92877c71665c51463b3a454f5a646e727272727272726e65594d4134281b0f02000000000005101a252e373e434647484a4b4c4d4e575f626262626364676b727a858f9b9c91867b6f63574a4a545f6a75808b95a0968c81766b60554b403e48535d666b6b6b6b6b6b6b6a645a4f43372a1e11050000000000000f1b2835424e5b6874818e9aa7b3a79a8d8174675b4e4235281c0f0f19232c36404a545d67717b858f98a2a2988e847a71675d53494043505d6976828f9ca8b2a6998c8073665a4d4034271a0e0100000e1b2734414d5a6673808c99a6b2a89b8f8276695d5044372b1e12060000000000000000000000000000000000000000000a16232f3b4854616d7a8693a0acaea295897c6f63564a3d3024170a0000000000000000000000000000020e1925313d4954606c78848f9ba7a79b8f83776c6054483c45515d6974818c98a4ab9f93877b6f63584c4034281d1105000000000000000000000000000000121f2c3945525e6a7476787a7d82888f97a0a29b938a81776c62574b4034291d110500000000000000000000000000101d293643505c6976828f9ca295897c6f635649424e5b6874818e9aa7a3978a7d7164584c3f33261a0e010000010d1925313e4a56636f7b8894a1a79a8e8275695c5043372d3a4753606c7986929f9c8f8376695d5043372a1d1104000a17232f3c4855616d7986929ea195897d72675e5756585e68737e8a96a29d9185786c6d77828d97a2988e83786e63584e43382e2423211f1c1814100a050000000003090e13171b1e202224242525252422201d1a16120d0701000000000000000000000000000000000000000000000000000000030f1a26313c48535f6a76818d98a4ab9f94887c71655a4e4337303d4a5763707d8a97a4b0a99c8f8275695c4f4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c49433c33291e130800000000000000000000000713202c3844515d6975828e9aa6b0a4978b7f72665a4e4135291e2b3743505c6874818d99a6a2968a7d71655e6a76838f9ba8a094877b6f63564a3e3125212e3a46535f6b7784909ca9aca094887b6f63574a3e32261a0d01000000000000111e2b3844515e6a7784919da3978a7d7064574a3d312936424f5c6875828f9ba5988c7f7266594c46515b66717b86919c9f948a7f74695f5c63696f74787b7d7e80807f7d7b78746f69635b534b42382e241a1005000000000000000000000000000815222e3b4855616e7b8895a2978a7d7164574a3e3124170b07121c27323d48525d68737e89939e998e83786d625754595e6266686a6b6b6b6b6a6865625d58534c453d352c231a1006000000000000000000000000000815222e3b4855616e7b8895a2978a7d7164574a3e3124170b07121c27323d48525d68737e89939e998e83786d62574d42373d48525c6365656565656565635c53483d3125190c0000000000000009131c252c3237393a3c3d3e3f485460696f6f6f6f6f7173777d848d969c948a80756a5e5247434e58636e79848f999d92887d72675c51473c414b545b5f5f5f5f5f5f5f5e5a52483e32271b0e020000000000000d1a2733404d596673808c99a5b2a89c8f8276695d5044372b1e1207111a242e38424c555f69737d87909aa4a0968c83796f655b524846525f6b7884919eaab1a4978b7e7165584c3f3226190c0000000c1926323f4b5865717e8a97a3b0aa9e9185786c5f53473a2e22160a0000000000000000000000000000000000000000020e1a26323f4b5764707c8995a2aeaca093877a6d6154483b2e2215090000000000000000000000000000000915202c3844505b67737f8b96a2aca094887c7064584d414a55616d7985919da9a69a8e82766b5f53473b2f24180c0000000000000000000000000000000013202c3946535f6c798384878a8e93999f9b96908981786f655b50453a2f23180c00000000000000000000000000000f1c2835424e5b6874818e9aa3978a7d7164584b404c5966727e8b98a4a6998d8074675b4e42362a1d11050000000915222e3a4753606c7885919eaa9d9184786b5f53463a2d3845515e6b7784919d9e9184776b5e5145382b1f1205000d1926323f4b5864707d8995a29d9185796d61564c494c57626e7a86929fa195887c7066707b86909b9f958a80746a5f554a3f352a1f15120f0c0804000000000000000002070b0e1114161718181818171514110e0a06010000000000000000000000000000000000000000000000000000000000000914202b37424e5965707c87939eaaa4998d82766b5f54483c313d4a5763707d8a97a4b0a99c8f8275695c4f423f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3d38322a21170d0200000000000000000000000b17232f3c4854606d7985919eaaaca094887b6f63564a3e32251b2734404c5865717d8a96a2a6998d817468616d7a86929fa99d9084786b5f53473a2e221e2a37434f5b6874818d99a5b0a4988b7f73675a4e4236291d1105000000000000121f2c3845525f6b7885929ea296897c6f6356493d302835414e5b6774818e9ba69a8d8073675a4d404a545f6a747f8a959f9b90867b70665b585e63686c6f7172737372716f6c68635e58514941392f261d130800000000000000000000000000010815222e3b4855616e7b8895a2978a7d7164574a3e3124170b000b16202b36414c56616c77828d979f948a7f74695e534e5256595c5d5e5f5f5e5d5b5955514d47413a332b231a110800000000000000000000000000010815222e3b4855616e7b8895a2978a7d7164574a3e3124170b000b16202b36414c56616c77828d979f948a7f74695e53493e36404a51575858585858585857524a41372c20150900000000000000010a131b21272b2d2e2f30313e4b5864717b7b7b7b7c7d8083888e9698928a82786e63594d423c47525d67727d88939d998e84796e63584d4239424a4f52525252525252514e4840362c21160a000000000000000c1825323e4b5864717d8a97a3b0aa9e9185786c5f53473a2e22150909121c26303a434d57616b747e88929ca69e958b81776d645a504955616e7a8793a0acaea295897c7063564a3d3124170b0000000a1724303d4956626f7b8894a1adada094887b6f63564a3e32261a0e030000000000000000000000000000000000000007121e2a36424e5b6773808c98a5b1a99d9084776b5e5245392c20130700000000000000000000000000000004101c27333f4b57626e7a86929da9a4998d8175695d51454e5a66727e8a96a1ada195897d72665a4e42372b1f13070000000000000000000000000000000013202c3946535f6c79869193969a9f9a938f8b857f776f665d53493e34291e120700000000000000000000000000000d1a2733404d5966727f8c98a5998c8073665a4d414a57636f7c8895a1a89c9083776a5e52463a2e22160a00000006121f2b3744505d6976828f9ca8a094877b6e6255493d303743505d697683909c9f9285796c5f5246392c201306000f1b2834414e5a6773808c99a59b8e8275695d50443c46525e6a76838f9ca4988b7f726669747f8a949f9c91867b71665c51463c31261c11060000000000000000000000000000020507090a0b0b0b0b0a09070501000000000000000000000000000000000000000000000000000000000000000000030f1a26313d48545f6b76828d99a4aa9e93877b7065594d42363d4a5763707d8a97a4b0a99c8f8275695c4f4236323232323232323232323232323232323232323232323232302c2720180f050000000000000000000000020e1b27333f4b5864707c8995a1ada99d9084786c5f53473a2e221824303c4955616d7a86929fa99c9084776b64717d8996a2a5998d8174685c4f43372b1e1b27333f4c5864717d8996a2aea79b8f83766a5e5245392d211508000000000000131f2c3946525f6c7986929fa295887c6f6255493c2f2734414d5a6774818d9aa79a8e8174675a4d41434d58636e78838e98a2988d82776d625753585c5f62646566666564625f5c58534d463f372f261d140b010000000000000000000000050a0d0f15222e3b4855616e7b8895a2978a7d7164574a3e3124170b00040f1a242f3a45505b65707b86919b9b90867b70655a4f464a4d4f5152525251504f4c4945413c36302921191108000000000000000000000000050a0d0f15222e3b4855616e7b8895a2978a7d7164574a3e3124170b00040f1a242f3a45505b65707b86919b9b90867b70655a4f453a3840464a4c4c4c4c4c4c4c4b4740382f251a0f040000000000000000010910161b1e20212225323e4b5865717e888888898a8c8f9493908c8780786f665c52473c35404b56616b76818c97a0958a80746a5f54493e383f434545454545454545423d362e241a1005000000000000000a1723303c4955626f7b8894a1adada094887b6f62564a3e3125190d020a141e28313b454f59626c76808a949da79d938980756c62584e5865717d8a96a2afac9f93867a6d6154483b2f2215090000000815212e3a4753606c7885919eaab0a3978b7e73665a4e42372b1f1409000000000000000000000000000000000000020d18232f3b47525e6b77838f9ba8b2a69a8d8175685c4f43362a1d1104000000000000000000000000000000000b17232e3a46525e6975818d99a4a99d9185796e62564a535f6b76828e9aa6a89c9185796d6155493e32261a0e020000000000000000000000000000000013202c3946535f6c798693a0a2a69f9388837f7a746d655d544b41372d22170c0100000000000000000000000000000c1825323e4b5764707d8a96a39b8e8275695c50434754606d7985929eaa9f93877a6e62564a3e32271b10040000030f1c2835414e5a6774818d99a6a3968a7d7165584c3f3335424f5c6875828f9ba09386796d6053473a2d20140700101d2936434f5c6975828f9ba5988c7f73665a4d4135424e5b6774808d99a69a8e817468626d78838d98a3988d83786d62584d43382d23180d03000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000915202c37434e5a65707c88939eaaa4988d81756a5e53473c3d4a5763707d8a97a4b0a99c8f8275695c4f423629262626262626262626262626262626262626262626262524201b150e0600000000000000000000000006121e2a37434f5b6874808c99a5b1a5998d8174685c5043372b1e14202d3945525e6a76838f9ba8a093877b6e6774808c99a5a296897d7165584c4033271b1723303c4855616d7986929eabab9f93867a6e6255493d3124180c00000000000013202c3946535f6c798693a0a295887b6f6255483c2f2734404d5a6773818d9aa79b8e8174675b4e413c47515c67717c87919c9e94897e74695e544c5053565759595959585653504c47423b352d261d140b0200000000000000000000030a11161a1c1c222e3b4855616e7b8895a2978a7d7164574a3e3124170b000008131e29333e49545f69747f8a959f978c81766c61564b40404244454545454442403d3935302b251e170f070000000000000000000000030a11161a1c1c222e3b4855616e7b8895a2978a7d7164574a3e3124170b000008131e29333e49545f69747f8a959f978c81766c61564b4036353a3e3f3f3f3f3f3f3f3e3b362f261d13090000000000000000000000050a0f1213141825323e4b5865717e8b959596979990898784817b756e665d544a40362f39444f5a656f7a85909b9c91867b70665b50453a3337383838383838383836322c241c120800000000000000000814212e3a4753606c7885919eaab0a3978b7e72665a4e42362a1e1307020c161f29333d47515a646e78828c959fa59b91887e746a60565c6874818d99a5b2a99c9084776b5e5245392c20130700000006121f2b3844505d6975828e9aa6b3a79b8f83776b5f53473c30251a0f05000000000000000000000000000000000009131e2934404b57636f7b87939fabafa3968a7e7265594c4034271b0e020000000000000000000000000000000006121e2935414d5965707c8894a0aba2968a7e72665a4f57636f7b87939faba3988c8074685c5045392d21150a000000000000000000000000000000000013202c3946535f6c7986939da0a49f938884807a746d655d544b41372d22170c0100000000000000000000000000000a1623303c4955626e7b8794a09d9184786b5f524644515d6975828e9aa6a3978a7e72665a4f43372c21160b0100000d1926333f4c5965727e8b98a5a6998d8174685b4f423635414e5b6774818e9ba094877a6d6154473a2e21140700111e2b3744515e6a7784909da4978a7d7164574b3e333f4c5865727e8b98a49c908376695d66717b86919c9f948a7f746a5f544a3f342a1f140a00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000040f1b26323d4954606b76828d99a4a99e92877b6f64584d413d4a5763707d8a97a4b0a99c8f8275695c4f4236291c191919191919191919191919191919191919191919191714100a04000000000000000000000000000916222e3a46535f6b7784909ca8aea2968a7d7165584c4033271b111d2936424e5a67737f8c98a4a3978a7e716a7783909ca89f92867a6d6155493c30241714202c3945515d6a76828f9ba7afa2968a7d7165594d4034281c0f03000000000013202c3946535f6c798693a0a295887b6f6255483c2f2734404d5a6773818d9aa79b8e8174675b4e4135404a55606a75808a95a09b90867b70655b504547494b4c4c4c4c4b494744403b36302a231c140b0200000000000000000000040d151c22262829282e3b4855616e7b8895a2978a7d7164574a3e3124170b0000010c17222d37424d58636d78838e999e93887d72685d52473c363738383838373533312d29251f1a130d050000000000000000000000040d151c22262829282e3b4855616e7b8895a2978a7d7164574a3e3124170b0000010c17222d37424d58636d78838e999e93887d72685d52473c322e3132323232323232312f2a241d140b010000000000000000000000060c1216191b1c25323e4b5865717e8b9898999a9a8d827f7b76706a645c544b42382e28333d48535e69737e89949f988d82776c61574c41362b2c2c2c2c2c2c2c2b2a26211a120a00000000000000000006121f2b3744505d6975828e9ba7b3a79a8e82766a5e52463b2f24180e03040e17212b353f48525c667079838d97a1a39990867c72685f606c7884919da9b2a5998d8174685b4f43362a1d1104000000030f1c2834414d5966727e8a96a3afab9f93877b6f64584d42372c21170d0400000000000000000000000000000008111b25303b46515c6874808b97a3afab9f93867a6e6256493d3124180b0000000000000000000000000000000000010d1925313c4854606b77838f9ba7a69b8f83776b5f535c6874808c98a3aa9f93877b6f63584c4034281c1105000000000000000000000000000000000013202c3946535f6c79868f9194989c9a93908b857f776f665d53493e34291e120700000000000000000000000000000814212d3a46535f6c7885919ea093877a6e625549414d5965727e8a96a2a79b8f83776b5f54493d32271d130a02000b1824313e4b5764717d8a97a4a99c9083776a5e52453934414e5a6774818e9aa194877b6e6154483b2e21150800121f2c3845525f6b7885929ea296897c6f6356493d313e4a5764707d8a97a39e9184776b5e5f6a747f8a959f9b91867b71665b50463b31261b1106000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000a15212c37434e5a65717c88939faaa3978c8175695e52473d4a5763707d8a97a4b0a99c8f8275695c4f4236291c0f0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0b08040000000000000000000000000000010d1925323e4a56636f7b8794a0acab9f92867a6d6155493c3024180d1a26323e4b57636f7c8894a1a69a8d81746d7986929fa79b8f83766a5e5145392d2014101d2935424e5a66737f8b98a4b0a69a8d8175695c5044382c1f1307000000000013202c3946535f6c7986929fa295887b6f6255483c2f2734404d5a6773818d9aa79a8e8174675b4e413439434e59636e79838e99a2978c82776c62574c423c3e3f40403f3e3d3a37342f2b251f18110a0200000000000000000000030d161f272d32353635313b4855616e7b8895a2978a7d7164574a3e3124170b00000005101b26313b46515c67717c87929d9a8f84796e64594e43382d2c2c2c2b2a292724211d19140e08020000000000000000000000030d161f272d32353635313b4855616e7b8895a2978a7d7164574a3e3124170b00000005101b26313b46515c67717c87929d9a8f84796e64594e43382d252525252525252525221e19120b0200000000000000000000000810171e222627292a323e4b5865717e8b8b8b8c8e91948f8b87827b746b62594e44392e232c37414c57626d77828d989e94897e73685d53483d32271f1f1f1f1f1f1f1d1a150f0800000000000000000000030f1c2835414d5a66727e8b97a3afaa9e92867a6e63574c40352a1f150b02050f19232d36404a545e68717b858f99a3a2988e847a716765717d8995a1adaea296897d7165584c4033271a0e02000000000c1925313d4a56626e7a86929eaaafa3988c8075695e53483d33291f160e070100000000000000000000000309111a232d37414c57626d7985909ca8b2a69a8e82766a5e5246392d2115080000000000000000000000000000000000000814202c37434f5b67737e8a96a2ab9f93877b6f6458616d7884909ca8a69a8e82766a5f53473b2f23180c00000000000000000000000000000000000013202c3946535f6c79818284878c91979f9c97908981786f655b50453a2f23180c000000000000000000000000000005121e2b3744505d6975828e9ba3968a7e7165594d404955616d7985919da89f93887c70655a4f44392f251c140e0c0d1824313e4a5764717d8a97a4ab9f93867a6d6154483c34414d5a6774818e9aa194887b6e6154483b2e2115080013202c3946535f6c7986929fa295887b6f6255493c303d495663707c8996a39e9285786b5e58636d78838e98a2988d82776d62584d42382d22180d0200000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000004101b26323d4954606b77828e99a5a89d91867a6e63574c404a5763707d8a97a4b0a99c8f8275695c4f4236291c0f0d0d0d0d0d0d0d0d0d0d0d0d0d0d0d0d0d0d0d0d0d0d0d0c0a0703000000000000000000000004111d2935414e5a66727e8b97a3b0a79b8f83766a5e5145392d20140a16222f3b4753606c7885919da99c908477707c8995a2a4988b7f73675a4e4235291d110d1926323e4a57636f7b8894a0adaa9d9185796c6054483b2f23170a0000000000131f2c3946525f6c7885929fa296897c6f6255493c2f2734414d5a6774818e9aa79a8d8174675a4d4134323c47525c67727c87929c9e93897e73695e53493e333233333232302e2b28241f1a140e070000000000000000000000000a151f2831383e4243413d3b4855616e7b8895a2978a7d7164574a3e3124170b0000000009141f2a353f4a55606b75818b96a0968b80756a60554a3f34291f1f1f1e1c1a1815110d0803000000000000000000000000000a151f2831383e4243413d3b4855616e7b8895a2978a7d7164574a3e3124170b0000000009141f2a353f4a55606b75818b96a0968b80756a60554a3f34291f1919191919191816130e0801000000000000000000000007111a22292e32343536383e4b5865717e7e7e7e7f81858a9097938d867d746a60554a3f342825303b46505b66717c87919c9a90857a6f64594f44392e23181212121212110e09040000000000000000000000000c1925313e4a56626e7b87939fabafa3978b8074685d51463c31271d140b0307111b252e38424c565f69737d87919aa4a0968c83796f6b76828d99a5b1a99d9285796d6155493c3024170b00000000000915212d3a46525e6a76828e99a5b1a89d91867a6f645a4f453b31282019120d08050201000000010306090e141b232c353f49535e68737e8a96a1adada1968a7e72665a4e42362a1d1105000000000000000000000000000000000000030f1b27333f4a56626e7985919da9a4988c8074685c65717d8995a1ada195897d72665a4e42362b1f1307000000000000000000000000000000000000121f2c3845515d69727475787b80868d959ea29b938a81776c61574b4034291d110500000000000000000000000000030f1c2834414d5a66727e8b97a49a8d8175695c504445515d6974808c97a3a4998d82766b60554b41372e251e1a18191e2733404c5865727e8b98a4aea295897d7064574b3e34414e5b6774818e9aa194877a6e6154473b2e2114080013202c3946535f6c798693a0a295887b6f6255483c303c4956636f7c8996a29f9285786b5f525c66717c87919c9f94897e74695f54493f34291f1409000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000a15212c38434f5a66717d88949faba2978b8074685d51464a5763707d8a97a4b0a99c8f8275695c4f4236291c1a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1917130e08010000000000000000000814202d3945515d6a76828e9ba7b0a4988b7f73665a4e4235291d1106131f2b3844505c6975818d9aa69f93877a737f8c98a5a194887c6f63574b3e3226190d0a16222e3b4753606c7885919da9ada195887c7064574b3f33271a0e0200000000121f2b3845525e6b7885919ea396897c7063564a3d302835424e5b6874818e9ba6998c807366594d40332b35404b55606b75808b95a09b90857a70655a50453a302626262523211f1b17130e090300000000000000000000000004101b26313a434a4e4f4e49424855616e7b8895a2978a7d7164574a3e3124170b00000000030d18232e39444e59646f7a848f9a9c92877c71665b51463b30251a1211100e0b080501000000000000000000000000000004101b26313a434a4e4f4e49424855616e7b8895a2978a7d7164574a3e3124170b00000000030d18232e39444e59646f7a848f9a9c92877c71665b51463b30251a100c0c0c0c0b0a0602000000000000000000000000040f19232c343a3f41424344454955616b717171717375797e858e979890867c72675c5045392d2129343f4a545f6a75808b95a0968b81766b60554a40352a1f140a000000000000000000000000000000000000000915222e3a46525e6a76838e9aa6b2a79c9085796e63584d43392f261d150e0809131c26303a444d57616b757e89929ca69e958b8177707c87939eaab0a5998d8175695d5145392d201408000000000005111d2936424e5965717d8994a0abaea3978c81766b61574d433a322a231d1814110f0d0d0c0d0e0f12151a1f262d353e47515b656f7a85909ba7b2a79c9085796d61564a3e3226190d01000000000000000000000000000000000000000a16222e3a45515d6975818c98a4a89c9084786c606a76828e9aa6a89c9085796d6155493d32261a0e02000000000000000000000000000000000000101d2935414c57606667696b6f747b838c96a0a59c93897e73685c5145392d21150900000000000000000000000000000c1925313e4a56636f7b8894a09d9185796d615549404c58646f7b87929da89e93887c72675d53494037302a26252629303944505c6874818d9aa6b1a5988c8073675a4e4135424f5b6875828e9ba094877a6d6054473a2e2114070013202c3946535f6c798693a0a295887b6f6255483c303c4956636f7c8996a39f9285786b5f5255606a75808a95a09b90867b70655b50463b30261b100600000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000004101b27323e4955606b77838e9aa5a89c9185796e62574b4a5763707d8a97a4b0a99c8f8275695c4f4236292626262626262626262626262626262626262626262626262626231f19130b0200000000000000000b1824303c4955616d7a86929eabada094887b6f63574a3e3226190d030f1c2834404d5965717e8a96a3a296897d75828f9ba79d9185786c6053473b2f22160a06121f2b3744505c6875818d9aa6b1a5988c8074675b4f43362a1e120500000000111e2b3744515d6a7784909da4978a7d7164574b3e312936434f5c6975828f9ca5988c7e7265594c3f32262e39444e59646e79848e99a1978c81776c61574c41372c2119181715120f0b070200000000000000000000000000000915212d38434c555a5c5a534c4855616e7b8895a2978a7d7164574a3e3124170b000000000007111c27323d48525d68737e89939e988e83786d62574c42372c21160c01000000000000000000000000000000000000000915212d38434c555a5c5a534c4855616e7b8895a2978a7d7164574a3e3124170b000000000007111c27323d48525d68737e89939e988e83786d62574c42372c21160c010000000000000000000000000000000000000a16212b353e454b4e4f505152535459616565656566696d747c85909b988e84786d6155493d3125222d38434e58636e79848f999d92877c72675c51463c31261b100600000000000000000000000000000000000006121e2a36424e5a66727e8a95a1acada1968a8074695f554b41382f27201914100c141e28323c454f59636d76808a949ea69d93897f77828d98a4afab9f94887c7165594d4135291c10040000000000010d1925313d4955606c78838f9aa5b0a89d92887d73695f564d443c352f2924211e1c1a1919191a1c1e22262b31373f475059636c77818c96a1acaca1968b8074685c5145392d211509000000000000000000000000000000000000000006111d2935414c5864707c88939faba195897d71656e7a86929eaaa3978c8074685c5045392d211509000000000000000000000000000000000000000d1924303b454e565a5b5c5f6369717a848e99a5a59a9084796d6156493d3125190c00000000000000000000000000000916222e3a47535f6b7784909ca195897d7165594d4247535e6a75818c97a2a4998e83796e655b5249423b36333233353a424b55606c7884909ca9b4a89b8f8276695d50443843505d6976838f9c9f9386796c6053463a2d20130700131f2c3946525f6c7986929fa295887c6f6255493c303d4a5663707d8996a39e9185786b5e514e59636e79838e99a2978d82776c62574c42372d22170d020000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000a16212d38444f5b66717d89949faba2968a7f73685c514a5763707d8a97a4b0a99c8f8275695c4f42363333333333333333333333333333333333333333333333333333322f2b241d140b01000000000000030f1b2834404c5965717d8996a2aea99d9184786c5f53473b2e22160a000c1824313d4955626e7a87939fa5998c807885919ea69a8d8175695c5044372b1f1306030f1b2834404c5965717d8a96a2afa89c9083776b5f52463a2e22150900000000101d2936434f5c6975828f9ba5988b7e7265594c3f332b3744515d6a7783909da3978a7d7164574b3e312527323d47525d67727d87929d9e93897e73685e53483e33281e130a08060300000000000000000000000000000000000c1825313d49545f6669655e575055616e7b8895a2978a7d7164574a3e3124170b0000000000000b16202b36414c56616c77828d979f94897e74695e53483e33281d1208000000000000000000000000000000000000000c1825313d49545f6669655e575055616e7b8895a2978a7d7164574a3e3124170b0000000000000b16202b36414c56616c77828d979f94897e74695e53483e33281d12080000000000000000000000000000000000030f1b27323d4750575a5b5d5e5f60615e5758585858595c626a737e8a96a095897d7265594d4034281c26313c47525d67727d88939d998e83786e63584d42382d22170c010000000000000000000000000000000000020e1a26323e4a56616d7984909ba6b2a79c91867b71665d534a4139312b25201c191716202a333d47515b646e78828c969fa59b91877e89939ea9b0a59a8e83776c6054483c3025180c000000000000000915212c3844505b66727d89949fa9afa4998f857b71685f564e47403a35302d2a282726262627292b2e32363c42495159626b757e89939da8b1a69b90857a6e63574c4034291d11050000000000000000000000000000000000000000010d1824303c48535f6b77838f9aa6a5998d817569727e8a97a3aa9f93877b6f63574c4034281c10050000000000000000000000000000000000000008131f29333c444a4d4e5053585f68727d88949faba1968a7e7266594d4134281b0f020000000000000000000000000006121e2b37434f5b6773808c98a4998d82766a5e5247424d59646f7a85909ba5a0958b81766d645b534c46423f3e3f41454c545d67727d8994a0a4a8aa9e9285796c6053473a45525e6b7784919d9e9185786b5f5245392c1f120600121f2c3845525e6b7885919ea396897c7063564a3d313e4a5764717d8a97a49d9084776a5e5147525c67727c87929c9e94897e74695e53493e34291e140900000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005101c27333e4955606c77838e9aa5a79b9084796d62564a5763707d8a97a4b0a99c8f8275695c4f424040404040404040404040404040404040404040404040404040403f3b362f261d130800000000000006131f2b3744505c6875818d99a6b2a6998d8175685c5044372b1f1206000815212d3946525e6b77838f9ca89b8f837b8794a0a3968a7e7165594d4034281b0f03000c1824303d4955626e7a87939fabaca093877b6e62564a3e3125190d000000000f1b2835414e5a6774818d9aa6998d8174675a4e41352d3946525f6c7885919ea195887b6f6256493c3023202b36404b56606b76818b96a09a8f857a6f655a4f453a2f251a0f05000000000000000000000000000000000000000e1a2734404d596571767069615a55616e7b8895a2978a7d7164574a3e3124170b000000000000040f1a242f3a45505a65707b86919b9b90857a70655a4f443a2f24190e030000000000000000000000000000000000000e1a2734404d596571767069615a55616e7b8895a2978a7d7164574a3e3124170b000000000000040f1a242f3a45505a65707b86919b9b90857a70655a4f443a2f24190e030000000000000000000000000000000006131f2b37434e59626768696a6b6d6d6960554b4b4b4d5158626d7986929f9a8e8275695c5043362a1d202a35404b56616b76818c97a0958a7f746a5f54493e33291e13080000000000000000000000000000000000000a16212d3945515c68737e8a95a0abada2988d83786e655c534b433c36302c2825232221212b353f49535c66707a848d97a1a399908a909aa5b0aa9f94897d72665b4f43382c2014080000000000000004101c27333f4a55616c77828d98a2acaba1978d837a71686058514b45413d393735343332333435373a3e42474d545b636b747d87909aa5afa99f948a7e73685d52463b2f24180c0000000000000000000000000000000000000000000008141f2b37434f5a66727e8a96a1a99d9185796d76838f9ba7a69a8e82766a5f53473b2f23180c0000000000000000000000000000000000000000020d17212a32393e404143474d56606b77838f9ba7a69a8e8275695c5043372a1e110500000000000000000000000000020f1b27333f4b57636f7b87939f9e92867a6f63584c4148535e69747e89949ea79c92897f766d655e57524e4c4b4c4e51575d666f79838e9a97989ea8a194887b6f63564a3d4754606d7986939f9d9083776a5d5144372b1e110500111e2b3744515d6a7783909da4978a7e7164584b3f333f4c5865727e8b98a59c8f8276695c50434b55606b75808b95a09b90857a70655b50453a30251b10050000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000b16222d38444f5b66727d8994a0aba1958a7e73675b505763707d8a97a4b0a99c8f8275695c4f4d4d4d4d4d4d4d4d4d4d4d4d4d4d4d4d4d4d4d4d4d4d4d4d4d4d4d4d4b4741382f241a0e0300000000000a16232f3b4753606c7885919da9afa2968a7d7165594c4034281b0f030005111d2a36424f5b6773808c98a59e92857e8a97a39f93877a6e6255493d3124180c00000814212d3946525e6a77838f9ca8afa3978b7e72665a4d4135291c10040000000d1a26333f4c5865727e8b97a49b8f8276695d504438303c4855616e7a8793a09f9286796d6054473b2e2119242f39444f59646f79848f99a1968c81766c61564c41362c21160c010000000000000000000000000000000000000e1b2834414e5b6774817a736c655e616e7b8895a2978a7d7164574a3e3124170b0000000000000008131e28333e49545f69747f8a959f978c81766c61564b40352b20150a0000000000000000000000000000000000000e1b2834414e5b6774817a736c655e616e7b8895a2978a7d7164574a3e3124170b0000000000000008131e28333e49545f69747f8a959f978c81766c61564b40352b20150a000000000000000000000000000000000815212e3b4753606b7375767778797a7165594c3f3f4046515e6a7784909d9d9184776b5e5145382b1f19242f39444f5a656f7a85909b9c91867b70655b50453a2f251a0f04000000000000000000000000000000000005111d2834404b57626d79848f9aa4afa99f948a81776e655d554e47413c383432302e2e2d2e2f37414a545e68727b858f99a3a29a969aa2acada3988d82776c61554a3e33271b0f0400000000000000000b17222d39444f5b66717b86909ba5afa89f958c837a726a635c56514d4946434140403f40404244464a4e53585e656d757d868f99a2acaca2978d83786d62574c41352a1e130700000000000000000000000000000000000000000000030f1b26323e4a56616d7985919ca8a295897d717a87939faba195897d71665a4e42362a1f1307000000000000000000000000000000000000000000060f1821282d323435373b444f5b67737f8b98a4aa9e9185786b5f5245392c1f130600000000000000000000000000000b17232f3b47535f6b77828e9aa3978b8074695d5247414d57626d77828c96a0a49b918880777069635e5b5958595a5d62686f78818b95928a8c96a2a4978b7e7265594d404a56636f7c8895a19b8e8175685b4f4236291c100300101d2936424f5c6875828e9ba5998c8073665a4d4135424e5b6774818d99a69a8d8174675b4e42444e59646e79848e99a2978c82776c61574c42372c22170c02000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005101c27333e4a55616c78838f9aa6a69b8f84786c61555763707d8a97a4b0a99c8f8275695c595959595959595959595959595959595959595959595959595959595958524a41362b1f140800000000010e1a26323f4b57636f7c8894a1adab9f93867a6e6155493d3024180b0000010e1a26333f4b5764707c8995a1a19588818d99a69c8f83776a5e5246392d211508000005111d2a36424e5b6773808c98a4b1a79a8e8276695d5145392c2014080000000b1824313d4a56636f7b8894a19e9185786c6054473c34404c5864707d8996a29c9083776a5e5145382c1f131d28323d48525d68727d88929d9d93887d73685d53483d33281d13080000000000000000000000000000000000000e1b2834414e5b677481857e766f68616e7b8895a2978a7d7164574a3e3124170b00000000000000010c17222d37424d58636d78838e999e93887d72675d52473c31271c110600000000000000000000000000000000000e1b2834414e5b677481857e766f68616e7b8895a2978a7d7164574a3e3124170b00000000000000010c17222d37424d58636d78838e999e93887d72675d52473c31271c11060000000000000000000000000000000915222f3c4855626f7b82838485868074675b4f443f3f44515d6a7784909d9f9285786b5f5245382c1f121d28333d48535e69737e89949f988d82776c61574c41362b20160b0000000000000000000000000000000000000c18232f3a45515c67727d88929da7b0a69c938980776f675f58524d4844413e3c3b3a3a3a3b3d3f424c566069737d87919ba5a5a3a5abafa59b91867b71665b4f44392d22160a00000000000000000006111c28333e49545f6a747e89939da6afa79e958c847c746e68625d595552504e4d4c4c4c4d4e5053565a5e646970777e878f98a1abada39a90867b71665b51463a2f24190d0200000000000000000000000000000000000000000000000a16222d3945515d6874808c98a3a69a8d81757e8b97a3a89c9084786d6155493d32261a0e0200000000000000000000000000000000000000000000060f161d222527282b323e4a5763707c8995a2aca09386796d6053473a2d201407000000000000000000000000000007131f2b37424e5a66727d8995a09c91857a6e63584d4246515b66707a848e97a0a39a9189817a746f6a67656565676a6e737a818a93978c8186929fa79a8e8175685c50434d5a66727e8b97a4988c7f7366594d4034271b0e01000e1b2734414d5a6673808c98a59b8f8276695d51454045515e6a76838f9ca4978b7e7265594c403d47525d67727d87929d9e93897e73685e53493e33281e13090000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000b16222d3944505b66727d8995a0aba095897d7266616163707d8a97a4b0a99c8f827569666666666666666666666666666666666666666666666666666666666666645c52473c3024170b0000000005111e2a36424e5b6773808c98a4b0a89b8f83766a5e5245392d2114080000000a17232f3b4854606c7985919ea4978c86909ca5988c8073675b4f42362a1d11050000010e1a26323f4b5764707c8995a1adaa9e9286796d6155483c3024170b0000000915222e3b4753606c7885919da194887c7064584d424045505c6874808c99a5998c8074675b4f4236291d1016212b36414b56616b76818b96a19a8f847a6f645a4f443a2f241a0f0400000000000000000000000000000000000e1b2834414e5b6774818e88817a736b6e7b8895a2978a7d7164574a3e3124170b000000000000000005101b26313b46515c67717c87929d9a8f84796e63594e43382d22180d02000000000000000000000000000000000e1b2834414e5b6774818e88817a736b6e7b8895a2978a7d7164574a3e3124170b000000000000000005101b26313b46515c67717c87929d9a8f84796e63594e43382d22180d0200000000000000000000000000000815212e3b4754606d79868f91928f83776b60564f4c4c4e55606c7885919e9e9285786b5f5245382c1f1216212c37414c57626d77828d989e93897e73685d52483d32271c1207000000000000000000000000000000000007121e2934404b56616b76818b959fa9aea49b92898178716a635e5954504d4b494847474748494b4e51555a616b757f89939fabb0b2b1a79d94897f746a5f54493e33281c1105000000000000000000000b17222d38434d58626d77818b949da6afa79e968e868079736e6965615f5c5b5a5959595a5b5d5f62666a6f757b82899199a1aaaca49b91887e74695f554a3f34291e130700000000000000000000000000000000000000000000000005111d2934404c58646f7b87939faa9d918579828e9ba7a3978c8074685c5044392d211509000000000000000000000000000000000000000000000000040b1116191a1b222f3b4854616e7a8794a0ada094877a6d6053473a2d2014070000000000000000000000000000020e1a26323e4a55616d78848f9ba2968b8074695e53483f49545e68727b858e979fa39b938c85807a777472717273767a7e858b939b91867b838f9ca89d9184786b5f5246515d6976828e9ba295897c7064574b3e3225180c00000c1925323e4b5764707c8995a19e9285796d62574f4d4e57626e7a86929ea094887b6f63564a3d36404b56606b76818b96a09a90857a6f655a4f453a30251a1005000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005111c28333f4a56616c78848f9aa6a59a8e83776e6e6e6e707d8a97a4b0a99c8f8275737373737373737373737373737373737373737373737373737373737373736e64584c4033261a0d000000000915212d3a46525e6a77838f9ba8b0a4988c8073675a4e4236291d110500000007131f2c3844505d6975828e9aa69d959398a1a195897c7064574b3f33261a0e010000000a16232f3b4854606c7985919eaaaea295897d7164584c4034271b0f03000006121f2b3844505c6975818d99a4988c8075695e544e4d4f57616d7884909ca094897c7064584c3f33271a0e0f1a242f3a444f5a646f7a858f9aa1968b81766b61564b41362b21160b01000000000000000000000000000000000e1b2834414e5b6774818e938b847d766f7b8895a2978a7d7164574a3e3124170b00000000000000000009141f2a353f4a55606b75818b96a0968b80756a5f554a3f34291e1409000000000000000000000000000000000e1b2834414e5b6774818e938b847d766f7b8895a2978a7d7164574a3e3124170b00000000000000000009141f2a353f4a55606b75818b96a0968b80756a5f554a3f34291e1409000000000000000000000000000006131f2c3845515e6a76838f9b9e93887c7168605b59595a5e67717c8894a19d9084776a5e5144382b1e120f1a25303b46505b66717c87919c9a8f857a6f64594e44392e23180d0300000000000000000000000000000000010c18232e39444f5a646f79838d97a0a9ada49b938a837b756f6964605d5a5756555453545556585a5e61666b70777d85919daab7b7ab9f958c82776d63584e43382d22160b000000000000000000000005101b26313c46515b656f78828b949da5ada8a098918a847e7975716e6b69676666656667686a6c6f72767b80868c939ba3ababa39a92897f766c62584d43382d23180d02000000000000000000000000000000000000000000000000000c1824303b47535f6b76828e9aa6a195897d86929faa9e93877b6f63574c4034281c1005000000000000000000000000000000000000000000000000000005090c0e13202d3a4653606c798693a0aca094877a6d6053473a2d2014070000000000000000000000000000000a16212d3944505c67737e8a95a09c91867b70655a4f45424c566069737c858d959da49e97918b8783817f7e7e8082868a90969d948a7f74808c99a5a093877a6e62554a56616d7986929e9f92867a6d6154483b2f23160a00000a16232f3b4854606d7985919da2968a7e7368605b595a5f68737e8a96a29c9084786c5f53473a2f39444f59646f79848f99a1978c81766c61564c41372c21170c0100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000b17222e3944505b67727e8995a0ab9f93887c7b7b7b7b7b7d8a97a4b0a99c8f83808080808080808080808080808080808080808080808080808080808080808074675a4d4134271a0e010000000c1825313d4956626e7a87939fabada194887c6f63574b3e32261a0d0100000003101c2834414d5966727e8a97a3a7a1a0a3aa9e9185796d6054483b2f23170a0000000007131f2c3844505d6975828e9aa6b2a5998d8174685c5043372b1f12060000030f1c2834404d5965717d8994a09d91867a70665f5b595b6069737e8995a19b9084786c6054483c3023170b08131d28333d48535d68737d88939e9d92887d72685d52483d32281d1208000000000000000000000000000000000e1b2834414e5b6774818e97968f8881797b8895a2978a7d7164574a3e3124170b000000000000000000030d18232e39444e59646f7a848f9a9c91877c71665b50463b30251a10050000000000000000000000000000000e1b2834414e5b6774818e97968f8881797b8895a2978a7d7164574a3e3124170b000000000000000000030d18232e39444e59646f7a848f9a9c91877c71665b50463b30251a10050000000000000000000000000004101d2936424e5a67737e8a96a1998e837a726b676565676a7078838e99a4998d8174685c4f4336291d1009141e29343f4a545f6a75808b95a0968b81766b60554a3f352a1f1409000000000000000000000000000000000007121d28333d48535d67717b858e97a0a8ada59c958d86807a75706c6966646261616061616364676a6d72767c82888f97a1adb8b4a79b8e837970665b51473c31261c12080000000000000000000000000a151f2a343f49535d667079828b939ba3abaaa39c958f8a85817d7a78767473737273737476787b7e82878c91979ea5ada8a199918980766d645a50463c31271c1106000000000000000000000000000000000000000000000000000007131f2b37424e5a66727d8995a1a5998d818a96a3a59a8e82766a5e53473b2f23170c0000000000000000000000000000000000000000000000000000000000000613202c3946525f6c7986929faca094877a6d6053473a2d20140700000000000000000000000000000005111c28343f4b56616d78848f9aa2978c81766c61574c42444e57616a737b838b9299a0a29c97938f8d8c8b8c8d8f92969b9c948b8278707d8996a2a3968a7d7164584f5b66727e8a96a29b8f83766a5e5145392c201307000007131f2c3844505c6874808c97a39b8f857a726b6766676b717a85909ba2978b8073685b4f43372b323d48525d68727d88929d9e93887d73685e53483d33281e1308000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000006111d28333f4a56616d78848f9ba6a4998d888888888888888d98a5b1ab9f948d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8174675a4d4134271a0e01000004101c2835414d5965727e8a96a3afa99d9185786c6054473b2f22160a00000000000c1825313d4a56626e7b8793a0acadacafa79a8e8275695d5044382c1f13070000000003101c2834414d5966727e8a97a3afa99d9084786c5f53473b2e22160a0000000c1824303c4854606c78838f9aa2978c8278706a6766676b727b858f9aa0958a7f73675c5044382c201307010c16212c36414c56616c76818c97a1998f84796f64594f44392f24190f040000000000000000000000000000000e1b2834414e5b67747e858c9399928b847c8895a2978a7d7164574a3e3124170b0000000000000000000007111c27323d48525d68737e89939e988d83786d62574c42372c21160b0100000000000000000000000000000e1b2834414e5b67747e858c9399928b847c8895a2978a7d7164574a3e3124170b0000000000000000000007111c27323d48525d68737e89939e988d83786d62574c42372c21160b01000000000000000000000000010d1a26323e4a56626e79848f9a9f958c847c7774727273767b828b959f9e93887c7064584c4033271b0e020d18222d38434e58636e79848f999d92877c72675c51463b31261b100500000000000000000000000000000000000b16212c36414b555f69737c858e979fa7aea69f98918b86817c797573716f6e6d6d6d6e6f7173767a7d82878d939aa1a9aeababa89c90867c72685e554b41372d241a10060000000000000000000000030e18232d37414b555e677079818a9199a0a7ada7a19b96918d8a87848281807f7f8080818385888b8e93979da3a9aba49e968f877f766d645b52483e342a1f150a000000000000000000000000000000000000000000000000000000020e1a26323e4955616d7884909ca89d928c909ba6a195897d71655a4e42362a1f130700000000000000000000000000000000000000000000000000000000000005131f2c3946525f6c7986929faca094877a6d6053473a2d201407000000000000000000000000000000000b17232e3a45505c67727d88939e9e93887d73685e544a41454f586169717981888e949a9fa39f9c9a989898999b9e9e99928a82796f6d7a86929fa0998d8074675b54606b77838e9aa3978b7e72665a4e4235291d1004000004101c2834404c58646f7b86919ca1968c847c77747374767c838c96a19b90857a6e63574b3f33272b36414b56616b76818b96a19a8f857a6f645a4f443a2f241a0f0400000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000b17222e3945505c67737e8a95a1aa9f9795959595959595979fa9b5b0a69e9a9a9a9a9a9a9a9a9a9a9a9a9a9a9a9a9a9a9a9a9a9a9a9a9a9a9a9a9a9a9a8e8174675a4d4134271a0e0100000713202c3844515d6975828e9aa6b2a69a8d8175695c5044382b1f130600000000000915212e3a46525f6b7784909ca8b5b9afa3978b7e7266594d4135281c100300000000000c1825313d4a56626e7b8793a0acaca094887b6f63574b3e32261a0d0100000814202c3844505b67727d88939d9e948b827b77747374777d848d97a1998f84796e62574b3f33271b0f030005101a252f3a454f5a65707a85909aa0968b81766b60564b40362b20160b0000000000000000000000000000000d1a26333f4b57636c737a81888f96968e878a96a2978a7d7164574a3e3124170b00000000000000000000000b16202b36414c56616c77828c979f94897e74695e53483d33281d120700000000000000000000000000000d1a26333f4b57636c737a81888f96968e878a96a2978a7d7164574a3e3124170b00000000000000000000000b16202b36414c56616c77828c979f94897e74695e53483d33281d1207000000000000000000000000000a16222e3a46515d68737d88919a9e958e8883817f7e8082878c949d9e958c82766b6054483c3024180b0006111c26313c47525d67727d88939d998e83786d63584d42372d22170b000000000000000000000000000000000005101a252f39434d57616a737c858d959ca4aaaaa39d97928d898582807d7c7b7a7a7a7b7c7e8083868a8e93989ea5aba9a39e9fa4a2988e847a70675d53493f362c22180e05000000000000000000000006111b252f39434c555e676f7880878e959ba1a7aca7a29d999693918f8e8d8c8c8c8d8e8f9194979b9fa3a8aaa59f99938c857d756d645b524940362c22180e03000000000000000000000000000000000000000000000000000000000915212d3944505c6874808b97a3a49c999ba2a89c9084786d6155493d31261a0e0200000000000000000000000000000000000000000000000000000000000003131f2c3946525f6c7986929faca094877a6d6053473a2d2014070000000000000000000000000000000006121d28343f4a56616c77828d97a29a8f857a70665c524940464e575f676f767d83898e93979a9c9e9e9e9e9c9a97928d87807870676a7783909393939083776a5e5b66717c88949f9e92867a6e62564a3e3226190d010000000c1824303c47535e6a75808a949d9e968e888381808183878d959e9d93897e74695d52463b2f23242f3a444f5a646f7a858f9aa1968c81766b61564c41362b21160b000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000006111d28343f4b56626d7884909ba6a9a3a2a2a2a2a2a2a2a3a9acacacaca9a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a69a8e8174675a4d4134271a0e0100000b1723303c4854606d7985919eaaaca3968a7e7165594d4034281b0f03000000000005121e2a36434f5b6774808c99a5acacaca093877b6e62564a3d3125190c0000000000000915212e3a46525f6b7784909ca9aca4988b7f73675a4e4236291d1105000004101c27333f4a56616c76818b959d9d948d878381808183888e969f9a91877d72675c51463a2f23170b00000009131e28333e49535e68737e89939e9d92877d72675d52473d32271d110600000000000000000000000000000b17232f3b46515a61686f767d848b929993959ca4978a7d7164574a3e3124170b0000000000000000000000040f1a242f3a45505a65707b86919b9b90857a6f655a4f44392f24180d01000000000000000000000000000b17232f3b46515a61686f767d848b929993959ca4978a7d7164574a3e3124170b0000000000000000000000040f1a242f3a45505a65707b86919b9b90857a6f655a4f44392f24180d0100000000000000000000000006121d2935404b56616c767f8890979e9994908d8c8c8d8f92989e9b948c837a70655a4f43382c20140800000a15202a35404b56616b76818c97a0958a7f74695f54493e33281c1004000000000000000000000000000000000008131d27313b454e58616a727b838b92999fa6aba8a29d9995918e8c8a898887878788898a8c8f92969a9fa4a9aaa59e9892939ba4a0968c83786f655b51483e342a20170d03000000000000000000000009131d27313a434c555d666e757c848a90969ba0a5a9a9a6a2a09d9c9a999999999a9b9c9ea0a3a7aba7a39e99948e88817a736b635b524940372e241a1006000000000000000000000000000000000000000000000000000000000005101c2834404b57636f7b87929ea7a7a6a7a7a3978b8074685c5044392d2115090000000000000000000000000000000000000000000000000000000000000000131f2c3946525f6c7986929faca094877a6d6053473a2d20140700000000000000000000000000000000010c17232e39444f5a65707b86909ba1968c82786e645b524940454d555d646b72787d82878a8d8f91929291908d8a87827c756e665e677480868686868686796d61616c77828e99a4998d82766a5e52463a2e22160a0000000008131f2b36424d58636e78828b939aa09993908d8d8d8f93989f9a938a81776d62574c41352a1e1d28333d48535d68737d88939e9d93887d72685d52483d32271b0f0300000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000c17232e3a45515c67737e8a96a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a09a8e8174675a4d4134271a0e0100000e1b27333f4c5864707c8995a0a0a09f93877a6e6255493d3124180c000000000000020e1a27333f4b5864707c8995a0a0a0a09c9084776b5f53463a2e21150900000000000005121e2a36434f5b6874808c99a0a0a09b8f83766a5e5246392d2115080000000b17222e39444f5a656f79838b949b9e98938f8d8d8d9094999f9891887f756b61564b4035291e1206000000020c17222c37424c57616c77828c97a2998e84796e64594e44392e22170b000000000000000000000000000007131e2a353f4850575e656c737a81888f969da0a0978a7d7164574a3e3124170b00000000000000000000000008131e28333e49545e69747f8a959f978c81766b61564b4035291d11050000000000000000000000000007131e2a353f4850575e656c737a81888f969da0a0978a7d7164574a3e3124170b00000000000000000000000008131e28333e49545e69747f8a959f978c81766b61564b4035291d1105000000000000000000000000010d18242f3a454f5a646d767e868c92979a9c9a9898999b9c9995908a827a71685e53493e32271b0f040000030e19242f39444f5a656f7a8590999991867b70655a5044392d2014080000000000000000000000000000000000010b162029333d464f586069717980878e949aa0a5a9a9a5a19e9b99979594949494949597999b9ea2a6aaa9a49f99938d8689929ca69e948b81776d635a50463c32281f150b0100000000000000000000010b151f28313a434b545c636b72797f858a9094999ca0a3a5a8a9a8a7a6a6a6a6a6a7a9a9a7a5a29f9b97938e89837d7670686159514940372e251c1208000000000000000000000000000000000000000000000000000000000000000c17232f3b47525e6a76828e999a9a9a9a9a9a92877b6f63574b4034281c10040000000000000000000000000000000000000000000000000000000000000000131f2c3946525f6c7986929faca094877a6d6053473a2d201407000000000000000000000000000000000006121d28333e49545f69747e89939e9e948a80766d645b524941434b535a60676c72767a7e81838485858483817e7a76716b645c58647079797979797979776d6068737e89949f9f94887c7165594e42362a1e120600000000030e1a25313c47515c66707981898f95999c9c9a9a9a9c9c99958f8981786f655b51463b30241916212c36414c56616c76818c9799998f84796f64594f44382c1f1307000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000006121d29343f4b56626d7984909393939393939393939393939393939393939393939393939393939393939393939393939393939393939393939393938e8174675a4d4134271a0e010000111e2a37434f5b6874808c93939393938f83776a5e5246392d211508000000000000000b17232f3c4854606d79859293939393938d8074685b4f43372a1e1205000000000000020e1a27333f4c5864707d89939393939393867a6e6255493d3124180b00000006111d28333e49535d67717982898f95999c9c9a9a9a9c9b98938d877f766d63594f443a2f23180d010000000005101b25303b45505b65707b85909999958b80756b60554a3f33271b0e0200000000000000000000000000020d18232d363e454c535a61686f767d848b929393938a7d7164574a3e3124170b000000000000000000000000010c17222c37424d58636d78838e939393887d72675d5145392d20140700000000000000000000000000020d18232d363e454c535a61686f767d848b929393938a7d7164574a3e3124170b000000000000000000000000010c17222c37424d58636d78838e939393887d72675d5145392d2014070000000000000000000000000007121e29333e48525b646c747b81868a8e9092939392918f8d89847e7870685f564c42372c21160a0000000007121d28333d48535e69737e898c8c8c8c82776c6155493c2f23160a000000000000000000000000000000000000040e17212b343d464e575f676e757c83898f94999da1a5a8aaa7a5a3a2a1a0a0a0a1a2a4a5a8aaa7a4a19c98938e88827b818a949ea69d93897f756b62584e443a31271d13090000000000000000000000030c161f283139424a525960676e74797f84888c909496999b9d9e9fa0a0a0a0a09f9e9c9a9895928f8b87827d77726b655e574f473f372e251c130a000000000000000000000000000000000000000000000000000000000000000007131e2a36424e5965717d898d8d8d8d8d8d8d8d82766a5e52473b2f23170c000000000000000000000000000000000000000000000000000000000000000000131f2c3946525f6c7986929faca094877a6d6053473a2d2014070000000000000000000000000000000000000b17222d37424d58626d77818c96a09c92897f766d645b534b4341484f555b61666a6e717476777878777674726e6a655f5952545f686c6c6c6c6c6c6c6c6566707a858f9aa4998e82776b6054493d3125190d01000000000009141f2a35404a545e676f777e84898d8f9192939392908d89847e776f665d53493f34291e130f1a252f3a454f5a656f7a858c8c8c8c8b81766b6054483b2f2215090000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000010c18232e3a45515c68737f86868686868686868686868686868686868686868686868686868686868686868686868686868686868686868686868686868174675a4d4134271a0e010000131f2c3946525f6b7784868686868686868073675b4e42362a1d1105000000000000000713202c3844515d697682868686868686867d7064584c3f33271b0e02000000000000000b1723303c4854616d7986868686868686867e7165594c3f3326190c000000000b16212c37414b555f6770777e84898d9091929392918f8c88827c756d645b51473d33281d120700000000000009141e29343e49545e69747e898c8c8c8c877c72675b4f43362a1d1004000000000000000000000000000007111b242c343a41484f565d646b72798086868686867d7164574a3e3124170b0000000000000000000000000005101b26313b46515c67717c868686868684796e6155483b2f221508000000000000000000000000000007111b242c343a41484f565d646b72798086868686867d7164574a3e3124170b0000000000000000000000000005101b26313b46515c67717c868686868684796e6155483b2f22150800000000000000000000000000010c17222c364049525a626970757a7e8184858686868583817d78736d665e564d443a30251b100500000000010b16212c37414c57626d778080808080807d7063574a3d3024170a00000000000000000000000000000000000000050f19222b343c454d555d646b71787d83888d9195989b9ea0a2a3a4a5a6a6a6a5a4a3a2a09e9b9894918c87827d777078828c96a0a59b91877d746a60564c43392f251b10050000000000000000000000040d161f27303840474e555c62686e73787c8184878a8c8e90919293949494939291908e8c8986837f7b76716c66605a534c453d352d251c130a010000000000000000000000000000000000000000000000000000000000000000020e1a25313d4955606c788181818181818181817d71655a4e42362a20170c020000000000000000000000000000000000000000000000000000000000000000131f2c3946525f6c7986929faca094877a6d6053473a2d20140700000000000000000000000000000000000005101b26313b46515b65707a848e97a19b91887f766d655d554e4740444a50555a5e626567696b6b6b6b6a6865625e5a544e484d565d5f5f5f5f5f5f5f5f646e78828c96a19d93887c71665a4f43382c201509000000000000030e19242e38424c555d656c73787d8083858686868583817d78736c655d544b41382d23180d08131e28333e48535e68737e8080808080807c6f6356493c3023160900000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000006121d2934404b57626e7879797979797979797979797979797979797979797979797979797979797979797979797979797979797979797979797979797972665a4d4034271a0e010000131f2c3946525f6b767979797979797979797064574b3f32261a0e010000000000000004101c2935414d5a66727979797979797979776d6155483c3023170b00000000000000000714202c3845515d6a757979797979797979797165584c3f3326190c0000000005101b252f39434c555e656d73787d8183858686868583807c77716a635b52493f362b21160c01000000000000020d17222d37424d57626d7780808080808080776a5d5144372a1e110400000000000000000000000000000009121a222930373e454c535a61686f757979797979796f63574a3d3124170a000000000000000000000000000009141f2a353f4a55606b75797979797979786d6155483b2f22150800000000000000000000000000000009121a222930373e454c535a61686f757979797979796f63574a3d3124170a000000000000000000000000000009141f2a353f4a55606b75797979797979786d6155483b2f221508000000000000000000000000000005101a242e37404850585e656a6e72757778797979787674716d68625c544d443b32281e1409000000000000050f1a25303b45505b6670737373737373726b6155483c2f2316090000000000000000000000000000000000000000071019222a333b434b525960666c72777c8185898c8f9193959698989999999898969593918e8c8884807b77716b66707a848e97a1a3998f867c72685e554b41372d22160b000000000000000000000000040d151e262e353d444b51575d62676c7074787b7d80828485868687878786868483817f7c7a76736f6a65605b554f48423a332b231b130a01000000000000000000000000000000000000000000000000000000000000000000000915212c3844505c6771737373737373737373736c615549423b32291e13080000000000000000000000000000000000000000000000000000000000000000131f2c3946525f6c7986929faca094877a6d6053473a2d2014070000000000000000000000000000000000000009141f2a343f49535e68727c858f98a29a918880776f675f58514b443f44494e5256595b5d5e5e5e5e5d5b5956524e49433d444b515353535353545c646d76808a949ea1968c81766b6055493e32271b10040000000000000007121c26303a434b535b61676c70747678797979787674716d67615b534b42392f261b1106010c17222c37414c57616c72737373737373726b6054483b2f221509000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000010c18232f3a46515c666c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6960564a3e3225190c000000111e2a37434f5a646b6c6c6c6c6c6c6c6c6c675e53473b2f23160a0000000000000000000c1925313d4a5560696c6c6c6c6c6c6c6c6c665c5145382c201407000000000000000004101c2935414d59636b6c6c6c6c6c6c6c6c6c685f54493d3024170b000000000009131e27313a434c545b62676c71747678797979787673706b665f59514940372d241a0f05000000000000000006101b26303b46505b666f7373737373737370675b4f4336291d1004000000000000000000000000000000000910171e252c333a41484f565d646b6c6c6c6c6c6c675e53473b2e2216090000000000000000000000000000030d18232e39434e59636b6c6c6c6c6c6c6c665c5145392d201407000000000000000000000000000000000910171e252c333a41484f565d646b6c6c6c6c6c6c675e53473b2e2216090000000000000000000000000000030d18232e39434e59636b6c6c6c6c6c6c6c665c5145392d20140700000000000000000000000000000008121c252e363f464d53595e6266686a6c6c6c6c6b6a6764615c57514a433b322920160c020000000000000009131e29343f4a545e646666666666666662594f44382c2014070000000000000000000000000000000000000000000710182129313940484e555b61676c7075797c80828587888a8b8c8c8c8c8c8b8a888784827f7c7874706b66605e68727c868f99a0a0988e847a70665d53493e33271b0f02000000000000000000000000030c141c242b323940464c51575c6064686b6e717375777879797a7a7a797978767472706d6a66635e5a554f4a443d3730292119110901000000000000000000000000000000000000000000000000000000000000000000000004101c28333f4b555f6567676767676767676766625a57534d443a3025190d0100000000000000000000000000000000000000000000000000000000000000131f2c3946525f6c7986929faca094877a6d6053473a2d20140700000000000000000000000000000000000000030d18232d37424c56606a737d869099a19a92898179716a635c564f4a443f4246494c4e5051515151504f4c4a46423d38323a404446464950575e666e768089929ca3998f857a6f645a4e43382d21160a0000000000000000000a141e283139414950565c6064676a6b6c6c6c6b6a6864615c565049413930271e140a000005101b25303a45505a62666666666666666661594f43382c1f13070000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000007121e2935404a545b5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5d574e44392d2216090000000e1a26323e48525a5f5f5f5f5f5f5f5f5f5f5c554c42372b1f13070000000000000000000915212d39444e575d5f5f5f5f5f5f5f5f5f5b544a3f34281c10040000000000000000000d1925313c4751595e5f5f5f5f5f5f5f5f5f5d564d43382c2014080000000000010c161f28313a424950565c6064676a6b6c6c6c6b6967635f5a544e473f372e251b12080000000000000000000009141f29343f49545d6466666666666666645e554a3f33271a0e020000000000000000000000000000000000060d131a21282f363d444b52595e5f5f5f5f5f5f5c554c41362b1f120600000000000000000000000000000007111c27323d4751595e5f5f5f5f5f5f5f5b544a4034291d11040000000000000000000000000000000000060d131a21282f363d444b52595e5f5f5f5f5f5f5c554c41362b1f120600000000000000000000000000000007111c27323d4751595e5f5f5f5f5f5f5f5b544a4034291d1104000000000000000000000000000000000a131c252d343b42484d5256595c5e5f5f5f5f5e5d5b5855504b453f38312920170e040000000000000000020d18222d38424c5358595959595959595650473e33281c100400000000000000000000000000000000000000000000060f171f272f363d444a50565b6064696c707376787a7c7d7e7e7f807f7e7e7d7c7a7875736f6c68645f5a5556606a737d8791939393938c82786f655b4f43372b1e120500000000000000000000000000020a121921282e353b40464b53595c5c5f626467686a6b6c6d6d6d6d6d6c6b6a686663615e5c5b575049443e38322c251e170f0800000000000000000000000000000000000000000000000000000000000000000000000000000b17232e39434d54595a5a5a5a5a5c626464646464635f564c4135291d110500000000000000000000000000000000000000000000000000000000000000131f2c3946525f6c7986929faca094877a6d6053473a2d201407000000000000000000000000000000000000000006111b26303a444e58616b747d878f98a09b938b837c746e67615b55504b47433f404243444545454442403d3a3635373a3d41454a4f555b616870788089929ba49b91877d73685e53483d32271c1005000000000000000000020c161f2730373e454b5054585b5d5f5f5f5f5f5d5b5855504b453e372f271e150c0200000009141e29343e4850565959595959595959564f473d32271b0f0300000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000010d18232e38424a5052535353535353535353535353535353535353535353535353535353535353535353535353535353535353535353535353535353514c453c32281d11050000000a16212c3740484f52535353535353535353504b433a30251a0e0300000000000000000005111c27323c454c515353535353535353524f4a42382e23180c000000000000000000000914202b353f474e52535353535353535353514c443b31271b1004000000000000040d161f2830383f454b5054585b5d5f5f5f5f5e5d5a57534f49433c352d251c13090000000000000000000000020d18222d38424b53585959595959595958544c43392e22160a00000000000000000000000000000000000000020910171e252c333a41484e52535353535353504b433a30251a0e02000000000000000000000000000000000b16202b363f484e5253535353535352504a42382e23180c00000000000000000000000000000000000000020910171e252c333a41484e52535353535353504b433a30251a0e02000000000000000000000000000000000b16202b363f484e5253535353535352504a42382e23180c0000000000000000000000000000000000010a131b222a31373c42464a4d4f515253535352504e4c4844403a342e261f170e050000000000000000000006111c26303a42484b4c4c4c4c4c4c4c4a453e352c21160b000000000000000000000000000000000000000000000000050d151d242b32393f444a4f54585c606467696b6d6f7071727273727271706f6d6b696663605c58534e494e58626b757f8686868686868681776c5f5346392d201306000000000000000000000000000000080f161d23292f3a46525c656969696969696969655f60606160606067696969696969696862584d42362d27211a140c0500000000000000000000000000000000000000000000000000000000000000000000000000000006121d27323b43494c4d4d50575f666d717171717170685e5246392d20130700000000000000000000000000000000000000000000000000000000000000131f2c3946525f6c7986929faca094877a6d6053473a2d20140700000000000000000000000000000000000000000009141e28323c464f59626b747d868e979f9d958d867f78726c66615c57534f4c48464341403f3e3d3d3d3e3f40424446494d51565b60666c737a828a929ba49c92897f756b61574c41372c21160a0000000000000000000000040d151e252d343a3f44484c4e505253535352514f4c48443f3a332d251d150c0300000000020d17222c363e454a4c4c4c4c4c4c4c4c4a453e352b21160a00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000007121c2630383f434646464646464646464646464646464646464646464646464646464646464646464646464646464646464646464646464646464645413b332a21160b0000000005101a252e373e434646464646464646464644403931281e140900000000000000000000000b16202a333b4145464646464646464646433f382f261c110600000000000000000000030e19232d363d424546464646464646464644403a322920150a0000000000000000040d161e262d343a3f44484c4e515253535352504e4b47433e38322b231b130a0100000000000000000000000006111b26303941484b4c4c4c4c4c4c4c4c48423a31271c1106000000000000000000000000000000000000000000050c131a21282f363d424546464646464644403931281e13080000000000000000000000000000000000040f19242d363d424546464646464646433f3830261c1207000000000000000000000000000000000000000000050c131a21282f363d424546464646464644403931281e13080000000000000000000000000000000000040f19242d363d424546464646464646433f3830261c1207000000000000000000000000000000000000010911181f262b31363a3d404344454646464544423f3c38342f29231c150d050000000000000000000000000a141e2830373c3f4040404040403f3e3a342c231a100500000000000000000000000000000000000000000000000000030b121a20272d33393e43484c5054575a5d5f616264656565666565656462615f5c5a5754504c47433e465059636d767979797979797979766b5f5346392d20130600000000000000000000000000000000040b121824313e4a57636e75757575757575756f64585354535c687275757575757575736a5e5245382c1f16100902000000000000000000000000000000000000000000000000000000000000000000000000000000030a1119202931383d454c535a626970787d7d7d7d7d7a6e6154473b2e21140800000000000000000000000000000000000000000000000000000000000000131f2c3946525f6c7986929faca094877a6d6053473a2d201407000000000000000000000000000000000000000000020c16202a343d475059626b747c858d959c9f98918a847d77726d68635f5b585552504e4c4b4a4a4a4a4a4b4c4e505356595d61666b71777e858c949ca49b938a80776d63594f453a30251a0f04000000000000000000000000030c141b22282e33383c3f4244454646464544423f3c38342e28221b130b0300000000000006101a242c343a3e404040404040403f3e39332c23190f04000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000b151e262d3337393939393939393939393939393939393939393939393939393939393939393939393939393939393939393939393939393939393835302921180f04000000000009131c252c32373939393939393939393938342f281f160c020000000000000000000000040e18212930353839393939393939393937332d261d140a00000000000000000000000007111b242b32363939393939393939393938352f2920170e03000000000000000000040c141b22292e34383c3f4244454646464544413f3b37322d27201911090100000000000000000000000000000a141e2730363c3f404040404040403f3c3730281f150b000000000000000000000000000000000000000000000001080f161d242b32363939393939393938342e271f160c0200000000000000000000000000000000000008121b242b3236393939393939393937332d261e140b000000000000000000000000000000000000000000000001080f161d242b32363939393939393938342e271f160c0200000000000000000000000000000000000008121b242b3236393939393939393937332d261e140b000000000000000000000000000000000000000000060d141a20252a2e313436383939393938373533302c28231e18110a0300000000000000000000000000030c161e252b303233333333333333312e29221a110800000000000000000000000000000000000000000000000000000001080f161c22282e33383c4044484b4e50525456575859595959585857565452504d4a4744403c37343e47515b646b6c6c6c6c6c6c6c6c6b645a4f43372b1e12050000000000000000000000000000000000000b1825323e4b5865717e828282828282807366594d47515d6a7782828282828282796c5f5346392c20130600000000000000000000000000000000000000000000000000000000000000000000000000000000060d141c232a323940484f565e656c747b828a8a8a8a857b6e6154483b2e21150800000000000000000000000000000000000000000000000000000000000000131f2c3946525f6c7986929faca094877a6d6053473a2d20140700000000000000000000000000000000000000000000040e18222b353e475059626a737b838b9299a09c958f89837d78746f6b6764615f5c5b5958575756575758595b5d5f6265696d72777c82898f969ea29a928981776e655b51473d33291e13090000000000000000000000000000020910171d23282c303335373839393939373633302c28231d17100901000000000000000008121a22292e313333333333333333312e28211a11070000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000030c141c22272b2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c29241f170f06000000000000010a131a21262a2c2c2c2c2c2c2c2c2c2c2b28231d160d0400000000000000000000000000060f171e24292c2c2c2c2c2c2c2c2c2c2b27221c140b020000000000000000000000000009121a20262a2c2c2c2c2c2c2c2c2c2c2b29241e170e050000000000000000000000020a11171d23282c3033353739393939383735322f2b26211b150e0700000000000000000000000000000000020c151e252b30323333333333333332302c261e160d0300000000000000000000000000000000000000000000000000050c131a20262a2c2c2c2c2c2c2c2b28231d150d04000000000000000000000000000000000000000009121a21262a2c2c2c2c2c2c2c2c2b27221c140c0200000000000000000000000000000000000000000000000000050c131a20262a2c2c2c2c2c2c2c2b28231d150d04000000000000000000000000000000000000000009121a21262a2c2c2c2c2c2c2c2c2b27221c140c020000000000000000000000000000000000000000000003090f14191e212527292b2c2c2c2c2c2a292623201c17120d0600000000000000000000000000000000040c141a1f23262626262626262625221d171008000000000000000000000000000000000000000000000000000000000000040b11171d22272c3034383b3e41444648494a4b4c4c4c4c4c4b4a49474643413e3b38342f2b2c353f49525a5f5f5f5f5f5f5f5f5f5f5a52493e33271b0f020000000000000000000000000000000000000b1825323e4b5865717e8b8f8f8f8f8d807366594d44515d6a77848f8f8f8f8f86796c5f5346392c2013060000000000000000000000000000000000000000000000000000000000000000000000000000000910181f262e353c434b525961686f777e858d94978f867c736a5f52463a2d20140700000000000000000000000000000000000000000000000000000000000000131f2c3946525f6c7986929faca094877a6d6053473a2d21140b0b09060200000000000000000000000000000000000000061019232c353e4750586169717880888f959ca09a948e8984807b7774716e6b696766656463636364656667696c6e7275797e83888e949aa19f97908880776e655c53493f362b21170c0200000000000000000000000000000000060c12171c202326292a2c2c2c2c2c2b292724201c17120c0600000000000000000000000810171d2225262626262626262625221d17100800000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000020a11171b1e202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020201f1d19130d060000000000000000010910161a1e1f2020202020202020201f1c18120b04000000000000000000000000000000050d13191c1f2020202020202020201e1b17110a02000000000000000000000000000000080f151a1d1f2020202020202020201f1c18130c050000000000000000000000000000060c12171c202326292b2c2c2c2c2c2a2826231f1b16100a04000000000000000000000000000000000000030c131a1f2326262626262626262624201b140c0400000000000000000000000000000000000000000000000000000001080f151a1d1f2020202020201f1c17120b0400000000000000000000000000000000000000000000080f151a1e1f202020202020201e1b17110a0200000000000000000000000000000000000000000000000000000001080f151a1d1f2020202020201f1c17120b0400000000000000000000000000000000000000000000080f151a1e1f202020202020201e1b17110a020000000000000000000000000000000000000000000000000004090d1215181b1d1e1f2020201f1e1c1a1714100c070100000000000000000000000000000000000002090f141719191919191919191816110c06000000000000000000000000000000000000000000000000000000000000000000060b11161b2024282c2f323537393b3c3d3e3f3f403f3f3e3d3c3b393734322f2b28241f242d3740494f525353535353535353524f4940372c21160a000000000000000000000000000000000000000b1825323e4b5865717e8b989c9c9a8d807366594d44515d6a7784919c9c9c9386796c5f5346392c201306000000000000000000000000000000000000000000000000000000000000000000000000000009121b222931383f474e555d646b727a81899097998f867d736a61584d42362a1e120500000000000000000000000000000000000000000000000000000000000000131f2c3946525f6c7986929faca194877a6d6154473b2e2118181816120e080100000000000000000000000000000000000007111a232c353e464f575f676e767d848b91979d9f9a95908c8784807d7a7876747371717070707171737476787b7e82858a8e94999fa19b948d867e766e655c534a41372e241a0f0500000000000000000000000000000000000001060b1014171a1c1e1f2020201f1e1c1a1714100b060100000000000000000000000000060c12161819191919191919191815110c0500000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000060b0f121313131313131313131313131313131313131313131313131313131313131313131313131313131313131313131313131313131312100d08020000000000000000000000050a0e111313131313131313131312100c0701000000000000000000000000000000000002080d1012131313131313131313120f0b0600000000000000000000000000000000000004090e111313131313131313131312100c07010000000000000000000000000000000001060b1014171a1c1e1f2020201f1e1c1916130f0a0500000000000000000000000000000000000000000002090f131719191919191919191917140f090200000000000000000000000000000000000000000000000000000000000004090e1113131313131313120f0c0700000000000000000000000000000000000000000000000000040a0e111313131313131313120f0b060000000000000000000000000000000000000000000000000000000000000004090e1113131313131313120f0c0700000000000000000000000000000000000000000000000000040a0e111313131313131313120f0b0600000000000000000000000000000000000000000000000000000000000105090c0e10121313131312110f0d0b0804000000000000000000000000000000000000000000000003070a0c0d0d0d0d0d0d0d0c090601000000000000000000000000000000000000000000000000000000000000000000000000050b0f14181c1f2326282b2c2e30313232323332323231302e2c2a2825221f1b17131b252e373e4346464646464646464646433e372e251b1005000000000000000000000000000000000000000b1825323e4b5865717e8b98a5a69a8d807366594d44515d6a7784919ea9a09386796c5f5346392c2013060000000000000000000000000000000000000000000000000000000000000000000000000007121b242c343b424a515860676e767d848c939a9990877d746b61584f463c31261a0e0200000000000000000000000000000000000000000000000000000000000000131f2c3946525f6c7986929faca195887b6e6255483c2f25252524221e19130b0300000000000000000000000000000000000008111a232c343d454d555c646b727980868c92979da19c9894908c8a878482817f7e7d7d7d7d7d7e7f818385878a8e92969a9fa19c969089827b746c645c534a41382f251c12080000000000000000000000000000000000000000000004070b0d0f11121313131211100e0b080400000000000000000000000000000000000106090c0d0d0d0d0d0d0d0d0b0905000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000004070b0d10111213131312110f0d0a07030000000000000000000000000000000000000000000000000003070a0c0d0d0d0d0d0d0d0c0b08030000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000003080c101316191c1e2022232425262626262625242321201e1b1916130f0b09131c252c32373939393939393939393937322c251c130900000000000000000000000000000000000000000b1825323e4b5865717e8b98a5a69a8d807366594d44515d6a7784919eaaa09386796c5f5346392c201306000000000000000000000000000000000000000000000000000000000000000000000000020e19232d363e464d545c636a717980878f969d9990877d746b62594f463d342a1f14090000000000000000000000000000000000000000000000000000000000000000131f2c3946525f6c7986929faca396897d7064574b3e32323232312f2a241d150c0200000000000000000000000000000000000008111a222b333b434b525961676e747b81868c91969a9fa09c999693918f8d8c8b8a8a8a8a8a8b8c8d8f9194979a9ea29f9a95908a857e777169625a524a41382f261d130a000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001040608090a0b0b0c0c0c0b0a09080604020000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000306080b0d0f101112131313131212100f0d0b0907040000000000000000000000000000000000000000000000000000000000000000000000000000000104070808080808080808080806040000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000002070b0e101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010100e0b0702000000000000000000000000000000000000000000000005080b0c0c0c0c0c0c0c0c0c0c0b090501000000000000000000000005080b0c0c0c0c0c0c0c0c0c0c0b09050100000000000000000000000000000000000000000000000000040708080808080808080808070400000000000000000000000000000000000000000000000000030608080808080808080808080807050100000000000000000000000000000000000000000000000000000000000000000003070a0d0f11131516171819191919191817161513110f0c0a060300010a131b21272a2c2c2c2c2c2c2c2c2c2c2a27211b130a0100000000000000000000000000000000000000000b1825323e4b5865717e8b98a0a09a8d807366594d44515d6a7784919ea0a09386796c5f5346392c20130600000000000000000000000000000000000000000000000000000000000000000000000007131f2a353f4850575f666d747c838b9299a09a90877e756b625950473d342b22180e030000000000000000000000000000000000000000000000000000000000000000121f2c3845525f6b7885929eaba5988c7f73665a4e433f3e3e3e3e3b362f271e1409000000000000000000000000000000000000000810192129313940484f565d63696f757b80858a8e93969a9da0a09e9c9a9998979796969798999a9c9ea0a19e9a97938e8a857f79736d665f58504840382f261d140b0100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001040608090a0b0b0c0c0c0b0a0908060402000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000105080b0e101214161718181919181817161513110f0c090602000000000000000000000000000000000000000000000000000000000000000000000000000000000004080c0f1215171a1b1d1e1f1f20201f1f1e1d1c1a181613100d09050100000000000000000000000000000000000000000000000000000000000000000001070c11131515151515151515151513100b060000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000306080a0c0d0e0f0f0f0f0f0e0d0c0a080502000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000060d13171b1c1c1c1c1c1c1c1c1c1c1c1c1c1c1c1c1c1c1c1c1c1c1c1c1c1c1c1c1c1c1c1c1c1c1c1c1c1c1c1c1c1c1c1c1c1c1c1c1c1c1c1c1c1c1c1c1c1c1c1c1c1c1c1c1c1c1c1c1c1c1c1c1c1c1c1c1c1c1c1c1c1c1c1c1c1c1c1c1b17130d060000000000000000000000000000000000000000050b111517181919191919191919191815110c060000000000000000050c111517181919191919191919181815110c0600000000000000000000000000000000000000000000060c10131515151515151515151513100c06000000000000000000000000000000000000000000040a0f1214151515151515151515151514110d08020000000000000000000000000000000000000000000000000000000000000000000000020507080a0b0c0c0c0d0c0c0b0b0a08060502000000000000010910161b1e1f20202020202020201f1e1b161009010000000000000000000000000000000000000000000b1825323e4b5865717e8b939393938d807366594d44515d6a7784919393939386796c5f5346392c2013060000000000000000000000000000000000000000000000000000000000000000000000000b1824303c47515a626970787f868e959ca39a91887e756c625950473e352b22191006000000000000000000000000000000000000000000000000000000000000000000111e2b3744515d6a7783909da9a79b8f83776b5f554e4c4b4b4b4a47413930261b100400000000000000000000000000000000000000070f171f272e363d444b52585e646a6f74797e82868a8e919496989a9c9d9e9fa0a0a09f9e9d9c9b999794918e8b87827e79736e68625b544d463e362e261d140b020000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000105080b0e101214161718181919181817161513110f0c0906020000000000000000000000000000000000000000000000000000000000000000000000000000000004090d1114181a1d1f212224242525252525242321201d1b1815120e0a0601000000000000000000000000000000000000000000000000000000000000000000000001060b1014181b1f212426282a2b2c2c2c2c2c2c2b2a282725221f1c1915110d0803000000000000000000000000000000000000000000000000000000000000030b12181d20222222222222222222211f1c17110a010000000000000000000000000000000000000000000000000000000000000000000000000000000206090d10121517191a1b1c1c1c1c1c1b1a181614120f0c080501000000000000000000000000000000000000000000000000000000000000000000000000000000000000000810181e23272929292929292929292929292929292929292929292929292929292929292929292929292929292929292929292929292929292929292929292929292929292929292929292929292929292929292929292929292929292927231e181008000000000000000000000000000000000000070f161c21242525252525252525252524221d1811090000000000000810171d21242525252525252525252524211d17100900000000000000000000000000000000000000020a11181c2021222222222222222221201c18110a02000000000000000000000000000000000000070f151b1f212222222222222222222222201e19130d0500000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000050a0e1113131313131313131313110e0a0500000000000000000000000000000000000000000000000b1825323e4b5865717e868686868686807366594d44515d6a7784868686868686796c5f5346392c2013060000000000000000000000000000000000000000000000000000000000000000000000000e1a2733404c58636c747b828a91989fa09a91887e756c635a50473e352c2319100700000000000000000000000000000000000000000000000000000000000000000000101d2936424f5c6875818e9aa7ab9f93877c71675f5a5858585857524b42372c2115090000000000000000000000000000000000000000050d151d242b333940474d53595e64696d72767a7e8184878a8c8e8f909292939393929291908e8c8a8885827e7a76726d68625d57504a433b342c241c140b02000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000004090d1114181a1d1f212224242525252525242321201d1b1815120e0a06010000000000000000000000000000000000000000000000000000000000000000000000060b1015191d212427292c2e2f30313232323231312f2e2c2a2825221e1a16120d08020000000000000000000000000000000000000000000000000000000000000001070c12171c2024282b2e313335363738393939393838363533312f2c2925211d18140e0903000000000000000000000000000000000000000000000000000000030d151d24292d2e2e2e2e2e2e2e2e2e2e2c28221b130b0100000000000000000000000000000000000000000000000000000000000000000000000005090e1216191c1f2123252728292929292828262523211e1b1815110d08040000000000000000000000000000000000000000000000000000000000000000000000000000000007111a22292f3336363636363636363636363636363636363636363636363636363636363636363636363636363636363636363636363636363636363636363636363636363636363636363636363636363636363636363636363636363636332f29221a11070000000000000000000000000000000007101921282d3032323232323232323232312e29221b12090000000008111a22282d3132323232323232323232312e29221b12090000000000000000000000000000000000020b141c23282c2e2e2e2e2e2e2e2e2e2e2c28231c140b020000000000000000000000000000000008111920262b2e2e2e2e2e2e2e2e2e2e2e2e2d2a251e170e0500000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000b1825313e4b57647079797979797979797165594c44505d697579797979797979766b5f5246392c1f13060000000000000000000000000000000000000000000000000000000000000000000000000f1c2835424f5b68747e858d939393939392887f766c635a51483e352c231a100700000000000000000000000000000000000000000000000000000000000000000000000e1b2734404d5966727e8b97a3afa4998d8379706a6765656565635d53493d3226190d000000000000000000000000000000000000000000030b121a21282f353c42484d53585d62666a6e7275787b7d7f81828485868686868685848381807d7b7875726e6a66615c57514b453f38312a221a120a0200000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000060b1015191d212427292c2e2f30313232323231312f2e2c2a2825221e1a16120d080200000000000000000000000000000000000000000000000000000000000000050c11171c2125292d303336383a3c3d3e3e3f3f3e3e3d3c3b393734312e2a27221e19130e080200000000000000000000000000000000000000000000000000000000050c12181d23272c3034373a3d3f414344454646464645444342403e3b3835312d29241f1a140e0801000000000000000000000000000000000000000000000000010b151f272f35393b3b3b3b3b3b3b3b3b3b38332d251d130900000000000000000000000000000000000000000000000000000000000000000001060c11151a1e2225282b2e3032333535363636353433312f2d2b2824211d19140f0a0500000000000000000000000000000000000000000000000000000000000000000000000000030e19232c343b4042434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434342403b342c23190e030000000000000000000000000000040f19232b33393d3f3f3f3f3f3f3f3f3f3f3d3a342d241b1106000005101a232c33393d3f3f3f3f3f3f3f3f3f3f3d3a342c241b1006000000000000000000000000000000000a141d262e34383b3b3b3b3b3b3b3b3b3b38342e261d140a00000000000000000000000000000007101a232b32373a3b3b3b3b3b3b3b3b3b3b3b3936302920170d03000000000000000004070808080808080808080807050200000000000000000000000000000000000000000000000000000000000000000001040708080808080808080808070400000000000000000000000000000000000000000000000000000000000a16232f3c48535e686c6c6c6c6c6c6c6c68605549414d58636a6c6c6c6c6c6c6c6b645a4f43372a1e11050000000000000000000000000000000000000000000000000000000000000000000000000f1c2835424f5b687582868686868686868680766d645b51483f362c231a11080000000000000000000000000000000000000000000000000000000000000000000000000c1825313d4a56626e7b87939eaaaa9f958b827b7673727171716f655a4e4235281c0f0000000000000000000000000000000000000000000001080f161d242a30363c42474c51565a5e6265696b6e70727476777879797979797877767573716f6c6966625e5a56514b46403a342d261f18100800000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000050c11171c2125292d303336383a3c3d3e3e3f3f3e3e3d3c3b393734312e2a27221e19130e0802000000000000000000000000000000000000000000000000000000030a11171d22282d3135393d40424547484a4b4b4c4c4b4b4a49474543413e3a37332e29241f19130c0600000000000000000000000000000000000000000000000000020910171d23292e33383c404447494c4e505152525353525251504e4c4a4845413d3935302b251f19130c05000000000000000000000000000000000000000000000007121d273139404548484848484848484847443f372f251b100400000000000000000000000000000000000000000000000000000000000000060c12171c21262a2e3235383a3d3f4041424242424241403e3c3a3734312d2925201b16100b0500000000000000000000000000000000000000000000000000000000000000000000000914202a353e464c4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4c463e352a20140900000000000000000000000000000a16212b353d44494b4c4c4c4c4c4c4c4c4c4a453f362d23180c01000b16212c353e45494b4c4c4c4c4c4c4c4c4b4a453e362c22170c01000000000000000000000000000006111c262f383f4548484848484848484848453f382f261c110600000000000000000000000000050f19222c353d4347484848484848484848484846413b32291f1409000000000000060c10131515151515151515151514110e0802000000000000000000000000000000000000000000000000000000000001070d11141515151515151515151513100c0700000000000000000000000000000000000000000000000000000007131f2b37424d565c5f5f5f5f5f5f5f5f5d574e433c4751595e5f5f5f5f5f5f5f5f5a52483e32261a0e020000000000000000000000000000000000000000000000000000000000000000000000000f1b2835424e5b6773797979797979797979766d645b52493f362d241a1108000000000000000000000000000000000000000000000000000000000000000000000000000915222e3a46525e6a76828d98a3ada79d948d8783807e7e7e7e76695d5043362a1d10000000000000000000000000000000000000000000000000050b12191f252b31363c40454a4e5256595c5f62646668696a6b6c6c6c6c6c6b6b6968666462605d5956524e4a45403a352f29221c150d06000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000030a11171d22282d3135393d40424547484a4b4b4c4c4b4b4a49474543413e3a37332e29241f19130c0600000000000000000000000000000000000000000000000000060d151b22282e33383d4145494c4f5153555657585858585757555452504d4a47433f3a35302a241e1710090200000000000000000000000000000000000000000000040c131b22282e343a3f44484c505356585a5c5e5f5f5f5f5f5f5e5d5b595754514d4a45413c36312b241d160f07000000000000000000000000000000000000000000000c18232f39434b5154555555555555555554504941372c21150a0000000000000000000000000000000000000000000000000000000000040b11171d23282d32363a3e414447494b4d4e4f4f4f4f4f4e4c4b494643403d3935302c27211c161009030000000000000000000000000000000000000000000000000000000000000000000d1925313c4650575c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5750463c3125190d0000000000000000000000000004101b27323d474f55585858585858585858585650483f34291d120604101c28333d474f56585858585858585858585650483e34291d110500000000000000000000000000000b17222d38424a5154555555555555555554514a42382d22170b000000000000000000000000030d17212b343e474e535555555555555555555555524c443b31261a0e03000000020a11171c2021222222222222222222201e19140d05000000000000000000000000000000000000000000000000000000030b12181d2022222222222222222221201c18120a0200000000000000000000000000000000000000000000000000030f1a26303b444b505353535353535353514c453c353f474e5253535353535353524f4840372c21160a000000000000000000000000000000000000000000000000000000000000000000000000000d1a26333f4b5761696c6c6c6c6c6c6c6c6c6b645b524940362d241b1208000000000000000000000000000000000000000000000000000000000000000000000000000006121e2a36424e5a65707c87919ba4aba69e98938f8d8b8b8b8376695d5043362a1d100000000000000000000000000000000000000000000000000001070e141a20252b3035393e4246494d50535557595b5c5e5e5f5f5f5f5f5f5e5d5b5a585653504d4a46423e39342f29241e17110a03000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000060d151b22282e33383d4145494c4f5153555657585858585757555452504d4a47433f3a35302a241e17100902000000000000000000000000000000000000000000000810181f262d33393f44494d5255595b5e6062636465656565646362605e5c5956534f4b46413b362f29221b140c040000000000000000000000000000000000000000060e161e252c333a40454b5054585c5f626567696a6b6c6c6c6c6b6a69686663605d5a56514c47423c362f2821191109010000000000000000000000000000000000000004101d2934404b555d616161616161616161605b53493d32261a0e01000000000000000000000000000000000000000000000000000001080f161c23282e34393e42464a4e51535658595b5b5c5c5c5b5a59575553504d4945413c37322d27211b140e070000000000000000000000000000000000000000000000000000000000000000111d2936424d58626869696969696969696969696969696969696969696969696969696969696969696969696969696969696969696969696969696969696969696969696969696969696969696969696969696969696969696969696969696862584d4236291d11000000000000000000000000000713202c38434e596165656565656565656565625a50453a2e2216090814212d39444f596165656565656565656565625a50453a2e21150900000000000000000000000000000f1b27333f4a545c616161616161616161615c544a3f33271b0f0300000000000000000000020b151f29333c4650595f61616161616161616161615e564d42372b1f13060000020b141c23282c2e2e2e2e2e2e2e2e2e2e2d2a251f170f0500000000000000000000000000000000000000000000000000030d151d24292d2e2e2e2e2e2e2e2e2e2e2c28231c140c020000000000000000000000000000000000000000000000000009141f29323a4044464646464646464645413a332d353d42454646464646464646433e372e251a1005000000000000000000000000000000000000000000000000000000000000000000000000000a17232f3a454f585e5f5f5f5f5f5f5f5f5f5f5a524940372e241b1209000000000000000000000000000000000000000000000000000000000000000000000000000000020e1a26313d49545f6a757f89929aa0a5a9a39f9b999898908376695d5043362a1d1000000000000000000000000000000000000000000000000000000003090f141a1f24292d32363a3d404346494b4d4e50515252535353525251504f4d4b494744413e3a36322d28231e18120c06000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000810181f262d33393f44494d5255595b5e6062636465656565646362605e5c5956534f4b46413b362f29221b140c0400000000000000000000000000000000000000010a121a222a31383e454a5055595e6265686a6d6e70717172727171706f6d6b6966635f5b56524c47413a342d251e160e05000000000000000000000000000000000000060f18202830373e454b51565c6064686c6f7274757778797979797877767472706d6a66625d58534d47413a332b231b130a010000000000000000000000000000000000000713202c3945515c676d6e6e6e6e6e6e6e6e6d655a4e4236291d100400000000000000000000000000000000000000000000000000040c131a21272e343a3f44494e52565a5d60626466676869696968676664625f5c5955514d48433e38322c261f18110a03000000000000000000000000000000000000000000000000000000000000121f2c3945525e6a747676767676767676767676767676767676767676767676767676767676767676767676767676767676767676767676767676767676767676767676767676767676767676767676767676767676767676767676767676746a5e5245392c1f12000000000000000000000000000b17232f3c4854606b717272727272727272726c62564a3e3125190c0b1724303c4955616b727272727272727272726c62564a3e3125190c0000000000000000000000000000121e2b37434f5b666d6e6e6e6e6e6e6e6e6d665b4f43372b1e1205000000000000000000000a141d27313b454e58626b6e6e6e6e6e6e6e6e6e6e6e685e53473b2f221509000009141d262e34383b3b3b3b3b3b3b3b3b3b3a36302921170d030000000000000000000000000000000000000000000000010b151f272f35393b3b3b3b3b3b3b3b3b3b39342e261e140a00000000000000000000000000000000000000000000000000020d1720282f3438393939393939393938353029232b313639393939393939393937322c251c1309000000000000000000000000000000000000000000000000000000000000000000000000000006121e29333d464d51535353535353535353524f4940372e251c120900000000000000000000000000000000000000000000000000000000000000000000000000000000000915212c37434e58636d7680888f95999c9e9fa0a0a09d908376695d5043362a1d10000000000000000000000000000000000000000000000000000000000003090e13181d21262a2d3134373a3c3e4042434445464646464645444342403f3c3a3734312e2a26211d18120d0701000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000010a121a222a31383e454a5055595e6265686a6d6e70717172727171706f6d6b6966635f5b56524c47413a342d251e160e050000000000000000000000000000000000010a131c242c343b434950565b61656a6e717477797b7c7d7e7e7e7e7e7d7b7a7875726f6b67625d58524c453e37302820170e0500000000000000000000000000000000060f18212a323a41494f565c62676c7175787b7e8182848586868686858483817e7c7976726e69645e58524b443d352d251c130a0100000000000000000000000000000000000814212e3b4754616d797b7b7b7b7b7b7b7b766a5e5145382b1e1205000000000000000000000000000000000000000000000000070e161d252c32393f454b50555a5e6266696c6f71737475757575757472706e6c6965615d59544f49443e37312a231c140d05000000000000000000000000000000000000000000000000000000000013202c3946535f6c798383838383838383838383838383838383838383838383838383838383838383838383838383838383838383838383838383838383838383838383838383838383838383838383838383838383838383838383838383796c5f5346392c2013000000000000000000000000020e1a27333f4b5864707c7e7e7e7e7e7e7e7e7e72665a4d4135281c100e1a2733404c5865717d7e7e7e7e7e7e7e7e7e72665a4d4135291c10040000000000000000000000000013202c3946525f6c777b7b7b7b7b7b7b7b776c5f5246392c20130600000000000000000008121c252f39434d57606a747b7b7b7b7b7b7b7b7b7b7a6f63564a3d3024170a0005101b262f383f454748484848484848484846413b33291f1409000000000000000000000000000000000000000000000007121d27313940454848484848484848484845403830261c110600000000000000000000000000000000000000000000000000050e161d23282b2c2c2c2c2c2c2c2c2b29241e1920262a2c2c2c2c2c2c2c2c2c2a26211a130a010000000000000000000000000000000000000000000000000000000000000000000000000000010c17212b343c414546464646464646464646433e372e251c130a00000000000000000000000000000000000000000000000000000000000000000000000000000000000004101b26313c47515b646d767d84898d90929393939393908376695d5043362a1d100000000000000000000000000000000000000000000000000000000000000003080c1115191d2124282a2d2f3233353637383939393939383837353432302e2b2825211e1a15110c070100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000010a131c242c343b434950565b61656a6e717477797b7c7d7e7e7e7e7e7d7b7a7875726f6b67625d58524c453e37302820170e05000000000000000000000000000000000a131c252e363e464d545b61676c71767a7d81848688898a8b8c8c8b8a8a888684827e7b77736e69635d575049413a322920170e050000000000000000000000000000050f18212a333c444c535a61676d73787c8185888b8d8f90929293939292918f8d8b8986827e7a756f6a635d564f473f372e251c130a00000000000000000000000000000000000815212e3b4854616e7b8888888888888885786b5e5145382b1e1205000000000000000000000000000000000000000000000008111820282f363d444a50565c61666a6e7276797b7e80818282828282817f7d7b7875716d6965605a554f49423c352e261f170f060000000000000000000000000000000000000000000000000000000013202c3946535f6c798690909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909086796c5f5346392c201300000000000000000000000005111e2a36434f5b6774808c8c8c8c8c8c8c8c8276695d5044382b1f13111d2a36434f5b6874818c8c8c8c8c8c8c8c8276695d5145382c2014070000000000000000000000000013202c3946535f6c798688888888888886796c5f5346392c201306000000000000000006101a242e37414b555f69727c86888888888888888882786e6256493d3023170a000a16222d37414a5054555555555555555555524c453b31261b0f03000000000000000000000000000000000000000000010d18242f39434b5154555555555555555554514a42382d22170b0000000000000000000000000000000000000000000000000000040c12181c1f20202020202020201f1c18130f151a1d1f202020202020201f1e1a1610090100000000000000000000000000000000000000000000000000000000000000000000000000000000051019222a3035383939393939393939393937322c251c130a01000000000000000000000000000000000000000000000000000000000000000000000000000000000000000a15202a353f49525b646c72787d8183858686868686868376695d5043362a1d100000000000000000000000000000000000000000000000000000000000000000000105090d1115181b1e21232527282a2b2c2c2c2c2c2c2c2b2a29272523211f1c1915120e0905000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000a131c252e363e464d545b61676c71767a7d81848688898a8b8c8c8b8a8a888684827e7b77736e69635d575049413a322920170e05000000000000000000000000000008121c252e37404850585f666c72787d82868a8d90929496979898989897969593918e8b87837f7a746f68625b534c433b322920170d04000000000000000000000000030d17212a333c454e565d656c72797e84898d919497999b9d9e9fa0a09f9e9d9c9a9895928e8a85817b756e686159514940372e251c1208000000000000000000000000000000000815212e3b4854616e7b8894959595959285786b5e5145382b1e12050000000000000000000000000000000000000000000109121a222a323a41484f555c61676d72767b7e8285888a8c8e8f8f8f8f8e8d8c8a8785817d7975706b66605a544d463f3830292118100700000000000000000000000000000000000000000000000000000013202c3946535f6c7986939c9c9c9c9c9c9c9c9c9c9c9c9c9c9c9c9c9c9c9c9c9c9c9c9c9c9c9c9c9c9c9c9c9c9c9c9c9c9c9c9c9c9c9c9c9c9c9c9c9c9c9c9c9c9c9c9c9c9c9c9c9c9c9c9c9c9c9c9c9c9c9c9c9c9c9c9c9c9c9c9c9c9386796c5f5346392c20130000000000000000000000000915212d3a46525f6b7784909898989898989285796c6054473b2f221614212d3946525e6b7784909898989898989285796d6154483c3023170b0000000000000000000000000013202c3946535f6c798693959595959386796c5f5346392c20130600000000000000050e18222c364049535d67717a848e9595959595958d847a70665d52463a2e211508000e1b27333e49535c616161616161616161615e574d42372b1f140800000000000000000000000000000000000000000006111d2935404b555d616161616161616161615c544a3f33281b0f03000000000000000000000000000000000000000000000000000001070c1012131313131313131312100c0804090e11131313131313131313110e0a05000000000000000000000000000000000000000000000000000000000000000000000000000000000000000710181f25292c2c2c2c2c2c2c2c2c2c2c2a27211b130a010000000000000000000000000000000000000000000000000000000000000000000000000000000000000000030e19232d374049525a61676c717477787979797979797974685c4f4336291d100000000000000000000000000000000000000000000000000000000000000000000000000105080c0f121416181a1c1d1e1f1f2020201f1f1e1d1c1b191715120f0c090502000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000008121c252e37404850585f666c72787d82868a8d90929496979898989897969593918e8b87837f7a746f68625b534c433b322920170d0400000000000000000000000006101a242e374049525a626971777d84898e92969a9c9fa1a3a4a5a5a5a5a4a3a1a09d9a97948f8b85807a736c655d554d443b32291f160c0100000000000000000000000a151f29333c454e575f676f767d848a8f94999da1a3a6a8a9a7a6a6a6a6a7a9a9a7a4a19e9a96918c868079726b635b524940372e241a10060000000000000000000000000000000815212e3b4854616e7b8894a1a2a29e9285786b5e5145382b1e12050000000000000000000000000000000000000000010a131b242c343c444b535a60676d73787d82878b8e9295979997969696969698989694918d8a86817c77716b655f58514a423b332a22191108000000000000000000000000000000000000000000000000000013202c3946535f6c798693a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a09386796c5f5346392c20130000000000000000000000000c1825313d4956626e7a87939fa5a5a5a5a195887c6f63574a3e3225191724303c4955616e7a87939fa5a5a5a5a195897d7064584c3f33271b0e0200000000000000000000000013202c3946535f6c798693a0a2a2a09386796c5f5346392c201306000000000000030d17202a343e48515b656f79838c96a0a2a2a2988f857b72685e544b40352a1e120500111e2a37434f5b656d6e6e6e6e6e6e6e6e6e695f54483c3024180c0000000000000000000000000000000000000000000a16222e3a46515d676e6e6e6e6e6e6e6e6e6d665b5044372b1f12050000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000060e14191d1f2020202020202020201f1e1b161009010000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000007111b252e3740484f565c6165686a6b6c6c6c6c6c6c6c6a62584c4034271b0e000000000000000000000000000000000000000000000000000000000000000000000000000000000205080a0c0e0f10111213131313131211110f0e0c0a080603000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000006101a242e374049525a626971777d84898e92969a9c9fa1a3a4a5a5a5a5a4a3a1a09d9a97948f8b85807a736c655d554d443b32291f160c0100000000000000000000030e18222c364049525b646c747b82898f949a9ea2a6a9a7a5a3a2a1a0a0a1a2a3a5a7aaa7a3a09b96918b857e776f675f564d443b31271d13090000000000000000000007121c27313b454e576069717981888f959ba0a5a9a7a4a09e9c9b9a99999a9a9c9ea0a3a7aaa6a29d97918b847d756d645b524940362c22170d0200000000000000000000000000000815212e3b4854616e7b8894a1aeab9e9285786b5e5145382b1e120500000000000000000000000000000000000000000a131c252d363e464e565d646b72787e84898e93979793908e8c8a898989898a8b8c8f91949896928d88827d76706a635c544c453c342c231a11070000000000000000000000000000000000000000000000000013202c3946535f6c798693939393939393939393939393939393939393939393939393939393939393939393939393939393939393939393939393939393939393939393939393939393939393939393939393939393939393939393939386796c5f5346392c20130000000000000000000000030f1c2834414d5965727e8a97a3a39f9fa4a4988c7f73665a4e4135291c1a27333f4c5865717d8a96a3a49e9ea2a5998c8074685b4f43372a1e120600000000000000000000000013202c3946535f6c798693a0acaca09386796c5f5346392c2013060000000000010b151f29323c46505a636d77818b959ea8ada49a90877d736960564c42392f24190d0100121f2c3945525f6b777b7b7b7b7b7b7b7b7a7064584c4035291d110500000000000000000000000000000000000000030f1b27323e4a56626e797b7b7b7b7b7b7b7b786c5f5346392d20130600000000000000040708080808080808080807040100000000000000000000000004060808080808080808060300000000000000000000000003060808080808080808080806020000000000000000000000000000000000000000000000000000000000000000000003080d101213131313131313131313110e0a050000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000009131c252e363e444a5055585b5d5f5f5f5f5f5f5f5f5e5950463b3024180c000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000030e18222c364049525b646c747b82898f949a9ea2a6a9a7a5a3a2a1a0a0a1a2a3a5a7aaa7a3a09b96918b857e776f675f564d443b31271d1309000000000000000000000a151f2a343e48525b646d767e868d949aa0a5aaa6a29e9b999795949494949596989b9ea1a5aaa7a29c969089817971685f564d43392f251b10050000000000000000030e19232e38434d576069727b838b939aa0a6aba5a09b9794918f8e8d8d8d8d8e8f9194979a9fa4a9a8a39c968f877f766d645b52483e34291f140900000000000000000000000000000815212e3b4854616e7b8894a1aeab9e9285786b5e5145382b1e12050000000000000000000000000000000000000009121c252e374048505860686f767d83898f9597938e8a8784817f7e7d7c7c7c7d7e808285888b8f9499938e88827b746d665e564e463e352c2319100600000000000000000000000000000000000000000000000013202c3946535f6c798686868686868686868686868686868686868686868686868686868686868686868686868686868686868686868686868686868686868686868686868686868686868686868686868686868686868686868686868686796c5f5346392c2013000000000000000000000007131f2c3844505d6975828e9aa39992939aa49b8f82766a5d5145382c1f1d2a36424f5b6874818d99a59a929198a29c9084776b5f53463a2e22150900000000000000000000000013202c3946535f6c798693a0acaca09386796c5f5346392c201306000000000009131d27313a444e58626c758089939da7afa59b92887e746b61574e443a31271d12070000121f2c3845525e6a7682888888888888888175695d5145392d22160a0000000000000000000000000000000000000008141f2b37434f5b67737e8888888888888883776b5f5246392c2013060000000000060c101315151515151515151513110c07010000000000000000060c10131515151515151514120f0a040000000000000000040a0f1214151515151515151514120e090300000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000010a131c242c33393f44484c4f515253535353535353524e473e342a1f13070000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000002040608090a0a0a0a09080705030100000000000000000000000000000000000000000000000000000002040607080808080806050300000000000000000000000000000000000000000000000000000000000000000000000000000000000000000a151f2a343e48525b646d767e868d949aa0a5aaa6a29e9b999795949494949596989b9ea1a5aaa7a29c969089817971685f564d43392f251b1005000000000000000006111c26313c46505a646d76808890979fa5aba6a09b96928f8c8a8888878787888a8c8e91959a9fa4aaa8a19a938b837a71685f554b41372c22170c010000000000000009141f2a35404a555f68727b858d959da5aba6a099948f8b8885838181808081818385878a8e93989ea4aba7a099918980766d645a50453b30261b1005000000000000000000000000000815212e3b4854616e7b8894a1aeab9e9285786b5e5145382b1e120500000000000000000000000000000000000007111b242e374049525a626a727981888e9597918c87827e7a77757371706f6f6f70717375787b7f83888d9298938d867f787068605850473e352b22180f050000000000000000000000000000000000000000000000131f2c3946525f6b767979797979797979797979797979797979797979797979797979797979797979797979797979797979797979797979797979797979797979797979797979797979797979797979797979797979797979797979797979766b5f5246392c1f1300000000000000000000000a16232f3b4754606c7985919e9f93878894a09e9285796d6054483b2f23202d3946525e6b7784909ca1958986919ea093877b6f62564a3e3125190d00000000000000000000000013202c3946535f6c798693a0acaca09386796c5f5346392c2013060000000008111b252f39434c56606a747e87919ba5afa69d938980766c62594f453c32281f150b010000111d2a36424e5a66717d8995959595959185796d62564a3e32261a0e030000000000000000000000000000000000000c1824303c48545f6b77838f95959595958a7e72665a4f43372a1e1105000000020a11181c20212222222222222222201d18120b030000000000020a11171c2021222222222222211f1b160f08000000000000080f161b1f212222222222222222211e1a150e0700000000000000000000000000000000020608080808080808080808080808080808080808080808080808080706050402000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000010a121a21282e34383c404244454646464646464645423c352c22180d020000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000003070b0e111315161717171716151312100d0b080400000000000000000000000000000000000000000004080c0f111214141515151413110f0c09050000000000000000000000000000000000000000000000000000000000000000000000000000000006111c26313c46505a646d76808890979fa5aba6a09b96928f8c8a8888878787888a8c8e91959a9fa4aaa8a19a938b837a71685f554b41372c22170c01000000000000000c17222d38434d58626c768089919aa2a9a9a29b958f8a8682807d7c7b7a7a7b7b7d7f8285898e93999fa7aca59d958d847a71675d53493e33281d1207000000000000040f1a26313c47515c66707a848e979fa7aca39c958e89837f7b787674737373737476787b7e82878d939aa1a9aba39b928980766c61574d42372c21160b000000000000000000000000000815212e3b4854616e7b8894a1aeab9e9285786b5e5145382b1e12050000000000000000000000000000000000050f19232d364049525b646c747c848b9298918b85807b76726e6b68666463626263636567696c6f73777c81878d9398918a827a726a625950473e342a21170d0200000000000000000000000000000000000000000000111e2a37434f5a646b6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6b645a4f43372a1e1100000000000000000000010e1a26323f4b5764707c8895a19d908484919da195897c7064574b3e322623303c4955616e7a87939f9e9285828f9ba3978b7e72665a4d4135291c1004000000000000000000000013202c3946535f6c798693a0acaca09386796c5f5346392c20130600000006101a232d37414b555e68727c869099a3ada89e948b81776e645a50473d332a20160d030000000e1a26323d4955616d7884909ca2a2a2968a7e72665a4e43372b1f1307000000000000000000000000000000000005111d2935404c5864707c8894a0a2a29d9185796d61564a3e32261a0e020000020b141c23282c2e2e2e2e2e2e2e2e2e2d29241d150d03000000010b141c22282c2e2e2e2e2e2e2e2e2b27211a12090000000009121a21272b2e2e2e2e2e2e2e2e2e2d2b26201810070000000000000000000000000003090e121415151515151515151515151515151515151515151515151515141312100e0c0a0704010000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000810171d23282c3033363839393939393939393936312b231a1106000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000050a0f13171a1d202123232424232322201e1c1a1714100b05000000000000000000000000000000000001080f14181b1d1f202122222221201e1c1915110c0701000000000000000000000000000000000000000000000000000000000000000000000000000c17222d38434d58626c768089919aa2a9a9a29b958f8a8682807d7c7b7a7a7b7b7d7f8285898e93999fa7aca59d958d847a71675d53493e33281d120700000000000006111d28343f4a545f6a747e88919ba3aca89f979089837e7a7673716f6e6d6d6e6f707375797d82888e959ca4ada79f968d83796f655a50453a2f24180d0200000000000915202b37424d58636e78828c96a0a9aba29a928a837d77736f6c69686766666768696b6e72767b81888f979fa8ada49b91887e73695e53493d32271c10050000000000000000000000000815212e3b4854616e7b8894a1aeab9e9285786b5e5145382b1e120500000000000000000000000000000000020d17212b353f48525b646d757e868e96948d87807a746f6a66625f5c59585656555657585a5c5f63676b70767b82888f96948c847c736b625950463c33291e140a000000000000000000000000000000000000000000000e1a26323e48525a5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5a52483e32261a0e0000000000000000000005111d2a36424e5b6773808c98a49a8d81818e9aa5988c8073675a4e42352927333f4c5864717d8a96a29b8f82808c98a59a8e8276695d5145382c201407000000000000000000000013202c3946535f6c798693a0acaca09386796c5f5346392c2013060000040e18222c353f49535d67707a848e98a2aba9a0968c83796f655c52483e352b21180e04000000000915212d3944505c6874808b97a3aea69a8f83776b5f53473b3024180c00000000000000000000000000000000000a16212d3945515d6975818c98a4aea4988c8174695d5145392d22160a0000000a141d262e34383b3b3b3b3b3b3b3b3b39352f271f150b01000009131d262d34383b3b3b3b3b3b3b3a37322c241b1107000007111b242c32373a3b3b3b3b3b3b3b3b3a37312a22190f050000000000000000000000070e151a1e212222222222222222222222222222222222222222222222222121201e1d1b191614110d09050100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000050c11171c202427292b2c2c2c2c2c2c2c2c2c2a25201911080000000000000000000000000000000000000000000000000000000000000000000000000000000000000000040b10161b1f23272a2c2e2f303030302f2e2d2b292624211c160f07000000000000000000000000000000020b131a2025282a2c2d2e2e2e2e2e2c2b2825211d18130d06000000000000000000000000000000000000000000000000000000000000000000000006111d28343f4a545f6a747e88919ba3aca89f979089837e7a7673716f6e6d6d6e6f707375797d82888e959ca4ada79f968d83796f655a50453a2f24180d0200000000000b17232e3945505b66717b86909aa3ada89e968d867e78726e6a66646261616161626466696d71767c838b929ba4ada89f958b81766c61564b40352a1e130700000000020e1a26313d48535f6a75808a949ea8ada39990888078726c67635f5d5b5a59595a5b5d5f62666b70767d858d959ea8ada39a8f857b70655a4f44382d21150a0000000000000000000000000815212e3b4854616e7b8894a1aeab9e9285786b5e5145382b1e1205000000000000000000000000000000000a141f29333d47515a646d767f889098918a837b756f69635e5a56524f4d4b4a4a4a4a4a4b4d5053575b60656a70767d848b93968e867d746b61584e443b30261c11070000000000000000000000000000000000000000000a16212c3740484f525353535353535353535353535353535353535353535353535353535353535353535353535353535353535353535353535353535353535353535353535353535353535353535353535353535353535353535353535353524f4840372c21160a000000000000000000000814212d3946525e6a77838f9ca4978b7e7e8b97a49b8f83766a5e5145382c2a36424f5b6774818d99a5988c807c8995a29e9286796d6154483c3023170b000000000000000000000013202c3946535f6c798693a0acaca09386796c5f5346392c20130600030c16202a343e47515b656f78828c96a0aaaba1978e847a70675d534a40362d23190f06000000000005101c2834404b57636f7b87929eaaab9f93877b7064584c4034281c1105000000000000000000000000000000020e1a26323e4a56616d7985919da9ab9f93877b7064584c4035291d1105000006111c262f383f4548484848484848484845403931271d12070005101b252f383f444748484848484847433d362d23180d02020d18232d363d4347484848484848484847423c342b21170c0000000000000000000007101820262b2d2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2d2c2b2a282523201d1915110d080300000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000060b1014171a1c1e1f202020202020201f1d1a140e070000000000000000000000000000000000000000000000000000000000000000000000000000000000000001080f161c22272b2f3336393b3c3d3d3d3d3c3b39383533302d282119100700000000000000000000000000000a141d252b313437383a3b3b3b3b3b393734312d29241e18110a030000000000000000000000000000000000000000000000000000000000000000000b17232e3945505b66717b86909aa3ada89e968d867e78726e6a66646261616161626466696d71767c838b929ba4ada89f958b81766c61564b40352a1e13070000000004101c28333f4a56616c77828d98a2aca99f968c847b746d67625d5a57565454545455575a5d61656b71788089929ba4aea79d93887e73685d51463a2f23180c0000000007131f2b36424e5965707b86919ca6b0a59b91877e766e67605b5753504e4d4d4d4d4e5053565a5f656b737b838c96a0aaaba1978c82766b6055493e32261a0e0300000000000000000000000815212e3b4854616e7b8894a1aeab9e9285786b5e5145382b1e120500000000000000000000000000000006111b26303b454f59636c767f8891988f878078716a635d58534e4a4d50535556575757575554514e4b4f54595f656b7279818991988f867d736a60564c42382e23180e03000000000000000000000000000000000000000005101a252e373e4346464646464646464646464646464646464646464646464646464646464646464646464646464646464646464646464646464646464646464646464646464646464646464646464646464646464646464646464646464646433e372e251a1005000000000000000000000c1824303d4955626e7a86939fa195887c7b8894a19e9286796d6154483c2f2d3945525e6a7783909ca295897c7a86939fa295897d7064584c3f33271b0e020000000000000000000013202c3946535f6c798693a0acaca09386796c5f5346392c201306010b151e28323c464f59636d77818a949ea8aca2998f857c72685e554b41382e241b1107000000000000000c17232f3b47525e6a76828d99a5b0a4988c8074685c5145392d21150900000000000000000000000000000007131f2b37424e5a66727e8a96a2ada69a8e83776b5f53473c3024180c0000000b17222d38424a51545555555555555554514b43392f23180c000a16212c37414a5054555555555555534f483f352a1f130707131e2a353f484f535555555555555555534e463d33281d11050000000000000000050f19222a31373a3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3a39383634322f2c2926221d19140f09040000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000004080b0e1011121313131313131313110d090300000000000000000000000000000000000000000000000000000000000000000000000000000000000000030b131a21272d32373c3f434547494a4a4a4a49484644423f3d39332b23190f0400000000000000000000000007121c262f363d4143454647484848474644413d39342f29231c150d050000000000000000000000000000000000000000000000000000000000000004101c28333f4a56616c77828d98a2aca99f968c847b746d67625d5a57565454545455575a5d61656b71788089929ba4aea79d93887e73685d51463a2f23180c000000000915212d3844505c67727e89949fa9ada2978d847a7169625b56514e4b4948474748494b4d51555a60676e768089929ca7afa59a8f84796e63574b4034281c10040000000b17232f3b47535e6a76818d98a3ada99e93897f756c645c554f4a474442414040404244464a4e545a6169717a848e98a3ada99e93887c71665a4e43372b1f130700000000000000000000000815212e3b4854616e7b8894a1aeab9e9285786b5e5145382b1e12050000000000000000000000000000010c17222d38424d57616b757e8891978e867d756e665f58524c4d52565a5d5f61636364646362605e5b57524d4e545a61686f777f8790988f867c72685e544a3f352a1f140900000000000000000000000000000000000000000009131c252c32373939393939393939393939393939393939393939393939393939393939393939393939393939393939393939393939393939393939393939393939393939393939393939393939393939393939393939393939393939393937322c251c130900000000000000000000030f1b2834404c5965717d8a96a29e9286797885919da295897d7064574b3f32303c4855616e7a86939f9f9286797784909ca5998c8074685b4f43372a1e12060000000000000000000013202c3946535f6c798693a0acaca09386796c5f5346392c20130609131d26303a444e58616b757f89939ca6aea49a90877d736a60564c43392f261c1209000000000000000007131e2a36424e5965717d8994a0aca89d9185796d6155493e32261a0e0200000000000000000000000000000c18232f3b47535f6b77838e9aa6ada1968a7e72665a4f43372b1f13080000000f1b27333f4a545c6161616161616161615d554b4034291d10040f1b27323e49535b61616161616161605951463b3024180c0b17232f3b4651596061616161616161615f584f44392d22150900000000000000000c17212b343c42474848484848484848484848484848484848484848484848484847464443413e3c3935322e2925201a150f0902000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000040d151d242c32383e43484c4f52545556575756555453514e4c49443d352b21160b0000000000000000000000020d19242e3841484d505253545555555452504d4945403a342d261f170f060000000000000000000000000000000000000000000000000000000000000915212d3844505c67727e89949fa9ada2978d847a7169625b56514e4b4948474748494b4d51555a60676e768089929ca7afa59a8f84796e63574b4034281c10040000000d1925313d4955616c78848f9aa5b0a69b90867b71685f57504a45413e3c3b3a3a3b3c3e4144494f555c656d76808b95a0abaca1968a7f73685c5045392d2115090000020f1b27333f4b57636f7b87929ea9aea3978c82776d635a524a443f3a37353433333435373a3e42484f575f68727c86919ca7afa4998e82766b5f53473b2f23170b00000000000000000000000815212e3b4854616e7b8894a1aeab9e9285786b5e5145382b1e1205000000000000000000000000000008131e29343f49545e69737d8791988e857c746b635c544e4c53585e6266696c6e6f707171706f6d6a67635e59534c4f565d656d757e8790988e847a70665b51463c31261b10040000000000000000000000000000000000000000010a131a21262a2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2a26211a130a010000000000000000000006121f2b3744505c6875818d9aa69c8f837675818e9aa5988c8073675b4e4236333f4b5864717d8a96a29c8f837674818d99a69c9084776b5f53463a2e2215090000000000000000000013202c3946535f6c798693a0acaca09386796c5f5346392c201307111b252f38424c56606a737d87919ba5aea59c92887e756b61584e443b31271d140a000000000000000000020e1a25313d4955606c7884909ba7ada195897d72665a4e42362a1f13070404040404040404040404040404101c2834404c58636f7b87939faba89d9185796d61564a3e32261a0f03000000121e2b37434f5b666d6e6e6e6e6e6e6e6d675c5145392c201307131f2b37434f5a656d6e6e6e6e6e6e6b63584c4034281c100e1a2733404c57626b6e6e6e6e6e6e6e6e6a61564a3e3125180c0000000000000005111d28333d464e53555555555555555555555555555555555555555555555555545353514f4d4b4845423e3a35302b26201a140d06000000000000000000000000000000000000000000000000000000000205090b0e0f101010100f0d0b0905020000000105080a0c0d0d0d0c0a08050200000000000000000000000000000000000000000000000000000000000000000000000000000000000000040d161f272f363d44494f54585b5e60626363636362615f5d5b58554f473d32271b10040000000000000000000006121e2a35404a53595c5e6061616161615f5d5956514c463f38312921180f0600000000000000000000000000000000000000000000000000000000000d1925313d4955616c78848f9aa5b0a69b90867b71685f57504a45413e3c3b3a3a3b3c3e4144494f555c656d76808b95a0abaca1968a7f73685c5045392d211509000004101d2935414d5965717d8995a0acaca0958a7e746960564d463f393532302e2e2e2e2f3234383d444b535b656e79838e99a4b0a79c9085796d6155493d3125190c000006121e2b37434f5c6874808c97a3afa99d92867b70655b51484039332e2b2927262627282a2e32373d454d56606a74808b96a1adaa9f93877b6f64574b3f33271b0e02000000000000000000000815212e3b4854616e7b8894a1aeab9e9285786b5e5145382b1e120500000000000000000000000000020e19242f3a45505b66707a858f998f867c736a6259524a50575e64696e7276787b7c7d7d7d7d7b7976736f6a645e57504b535b636c757e8791968c82786d63584d42372c21160a000000000000000000000000000000000000000000010910161a1e1f20202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020201f1e1a1610090100000000000000000000000a16222e3b4753606c7885919da5998d8074727e8a97a39c8f83766a5e51453936424f5b6774808c99a5998c8073717d8a96a3a094877b6f62564a3e3125190d0000000000000000000013202c3946535f6c798693a0acaca09386796c5f5346392c20130f19232d37414a545e68727c858f99a3ada79d938a80766c63594f463c32291f150b02000000000000000000000915212c3844505c67737f8b97a2aea69a8e82766a5f53473b2f231711111111111111111111111111111115212d3944505c6874808c98a4afa4988c8074695d5145392d21160a0000000013202c3946525f6c777b7b7b7b7b7b7b796d6154473b2e21140c1824303c48535f6b777b7b7b7b7b7b74685c5145392d21150f1c2835424e5b68747b7b7b7b7b7b7b7b7266594c4033261a0d000000000000000915222d39444f585f61616161616161616161616161616161616161616161616161605f5e5c5a5755514e4a46413c37312b251f18110a0200000000000000000000000000000000000000000000000004090e1215181a1c1d1d1d1c1b1a1815120e0a05080d111417191a1a1a181714120e0a0500000000000000000000000000000000000000000000000000000000000000000000000000000000030d161f28313941484f555b6064686b6d6f707070706f6e6c6a676561594f44382c201407000000000000000000000916222e3a46525c64696b6c6d6e6e6e6d6c6966615c57514a423b332a21180f0500000000000000000000000000000000000000000000000000000004101d2935414d5965717d8995a0acaca0958a7e746960564d463f393532302e2e2e2e2f3234383d444b535b656e79838e99a4b0a79c9085796d6155493d3125190c00000713202c3845515d6976828e9aa5b1a79b8f84786d62584e443c342e292523222121212325282d32394149535c67727d88939fabada195897d7165594d4135281c1003000915222e3a47535f6c7884909ca8b0a4988c8175695e54493f362e27221e1c1a1a1a1a1c1e21262c333b444e58636e7985909ca8b0a4988c8074685b4f43372a1e1105000000000000000000000815212e3b4854616e7b8894a1aeab9e9285786b5e5145382b1e12050000000000000000000000000008131f2a35414c57626d77828c9791877d736a6158504a525a62696f757a7e828587898a8a8a8a8886837f7b756f69615a5149515a626b757e8993948a7f74695f54493d32271c100500000000000000000000000000000000000000000000050a0e1113131313131313131313131313131313131313131313131313131313131313131313131313131313131313131313131313131313131313131313131313131313131313131313131313131313131313131313131313131313110e0a05000000000000000000000000010d1926323e4a57636f7b8894a0a2968a7d716e7b8794a09f92867a6d6155483c3945525e6a7783909ca296897d706e7a87939fa3978b7e72665a4d4135291c100400000000000000000013202c3946535f6c798693a0acaca09386796c5f5346392c201318212b353f49535c66707a848e97a1aba89e958b81776e645a51473d342a20170d03000000000000000000000004101c27333f4b57636e7a86929ea9ab9f93877b6f63574c4034281e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e25313d4955616d7985919ca8ab9f93877b7064584c4034291d11050000000013202c3946535f6c79868888888888887b6e6154483b2e2115111c2834404c5864707c888888888885796d6155493d3125190f1c2835424f5b687582888888888888807366594d4033261a0d000000000000000c1825313e4a56616a6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6d6c6a696664615e5a56524d48423d373029231b140c0400000000000000000000000000000000000000000002090f151a1e21242728292a2a29282624211e1a151014191d2123252626262523211e1b1610090100000000000000000000000000000000000000000000000000000000000000000000000000010b151f28313a434b525a60666b7074777a7b7d7d7d7d7b7a787674716b6054483c2f231609000000000000000000000b1824313e4a56636e7577797a7b7b7b7a7875726d68625b544d453c332a21170e0400000000000000000000000000000000000000000000000000000713202c3845515d6976828e9aa5b1a79b8f84786d62584e443c342e292523222121212325282d32394149535c67727d88939fabada195897d7165594d4135281c1003000a16232f3c4854616d7986929eaaaea2968a7e73675c51463c322a221d19161514141516191c21272f37414b55606b77828e9aa6b2a69a8e8275695d5144382c1f1306000b1824313d4a56626f7b8894a0acaca094887c7064584d42372d241c16120f0e0d0d0e0f12151b2129323c47525d6874808b97a4b0a89c9084776b5f52463a2d211408000000000000000000000815212e3b4854616e7b8894a1aeab9e9285786b5e5145382b1e1205000000000000000000000000020d1925303b47525d68737e899494897f756b62584f4a535c646c747a81868b8e9294969797979695928f8b86817a736c635b5248505a636d76818b9591867b70655a4f43382d21160a0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000004101d2935424e5a66737f8b98a49f93877a6e6b7884909da296897d7064584b3f3c4855616d7a86939f9f92867a6d6b7784909ca79b8e8276695d5145382c20140700000000000000000013202c3946535f6c798693a0acaca09386796c5f5346392c2016202a333d47515b646e78828c969fa9aaa0968c83796f665c52483f352b22180e05000000000000000000000000000b17232f3a46525e6975818d99a5afa3978c8074685c5044382d2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a36424e5a66717d8995a1ada69a8e83776b5f53473c3024180c000000000013202c3946535f6c79869395959594887b6e6154483b2e211515212d3945515d6874818c95959595897d71665a4e42362a1e121c2835424f5b6875828f959595958d807366594d4033261a0d000000000000000d1a2633404c5966727b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7a79777573706d6a66625d59534e48423b342d261e160e0600000000000000000000000000000000000000060d141a20252a2e313335363636363533312e2a26211c1f25292d303233333332302d2a27211b130a0100000000000000000000000000000000000000000000000000000000000000000000000009131d27313a434c555d646b71777c80848688898a8a8988878583817d7063574a3d3024170a000000000000000000000b1825323e4b5865717e8486878888888785827e79736d665e574e453c332920160c01000000000000000000000000000000000000000000000000000a16232f3c4854616d7986929eaaaea2968a7e73675c51463c322a221d19161514141516191c21272f37414b55606b77828e9aa6b2a69a8e8275695d5144382c1f1306000c1925323e4b5764707d8995a2aeab9f92867a6e62564b3f342a2018110d0a080707080a0c10161d252f39444f5a66727d8a96a2aeaa9e9285796d6054473b2e221509000d1a2733404c5965727e8b97a3b0a99d9084786c5f54483c31261b120b06030000000002050a1017202a35404c57636f7b8794a0acaca093877b6e6255493c3023170a000000000000000000000815212e3b4854616e7b8894a1aeab9e9285786b5e5145382b1e120500000000000000000000000007131e2a35414c58636e7a8590978c82776d63595048525c656e767e858c92979b9b98959493939496999b97928c857d756d645a5148515b656f79848e988d82766b6055493e32271b0f0300000000000000000000000000000000000001060a0c0d0d0d0d0d0d0d0c0a06010000000000000002070a0c0d0d0d0d0d0d0d0b0804000004080b0d0d0d0d0d0d0c0a0703000004080b0d0d0d0d0d0d0d0c0a060200000000000000000000000004070809090909090807050100000000000000000000000000000000000000000814202d3945515e6a76838f9ba79c9084776b6874818d99a5998c8074675b4f423f4b5864707d8996a29c8f83766a6874818d99a59e9286796d6154483c3023170b00000000000000000013202c3946535f6c798693a0acaca09386796c5f5346392c201e28323c454f59636d76808a949ea8aba1988e847a71675d544a40362d23191006000000000000000000000000000006121e2a35414d5965717c8894a0aca89c9084786d6155493d373737373737373737373737373737373737373b47525e6a76828e9aa6ada1968a7e72665a4e43372b1f1307000000000013202c3946535f6c798693a0a2a194887b6e6154483b2e21151a26323d4955616d7985919da2a29a8e82766a5e52463a2e23171c2835424f5b6875828f9ca2a29a8d807366594d4033261a0d000000000000000d1a2633404d5966738088888888888888888888888888888888888888888888888786858482807d7a76726e69645f59534d463f38302820180f0600000000000000000000000000000000000710171f252c31363a3d40424343434341403d3a36322d272a3035393c3e4040403e3c3a37322c251c1309000000000000000000000000000000000000000000000000000000000000000000000006101b252f39434c565e676e767d83888c90939596979796959492908a7d7063574a3d3024170a000000000000000000000b1825323e4b5865717e8b939494959493918e8a857e78706860574e453b32281d1309000000000000000000000000000000000000000000000000000c1925323e4b5764707d8995a2aeab9f92867a6e62564b3f342a2018110d0a080707080a0c10161d252f39444f5a66727d8a96a2aeaa9e9285796d6054473b2e221509000e1b2734414d5a6673808c98a5b1a89b8f83766a5e52463a2e23180e060100000000000000040b131d27323e4955616d7986929eabada195887c6f63564a3d3124180b000f1c2835424e5b6774818d9aa6b3a69a8d8174685c4f43372b20140900000000000000000000050e19242f3b47535f6b7784909da9afa3968a7d7164584b3f3225190c000000000000000000000815212e3b4854616e7b8894a1aeab9e9285786b5e5145382b1e12050000000000000000000000000b17232f3b46525e6974808b9691867b70665b5147505a646e77808890979d99938f8b89878686888a8d91979d978f877f766c63594e49535d67727c879293887c71665a4f43372c2014080000000000000000000000000000000000060c1216191a1a1a1a1a1a1a1916120c060000000000070d1316191a1a1a1a1a1a191814100a0a101518191a1a1a1a1a1917130e080a101418191a1a1a1a1a1a1916120d07000000000000000000070c10141515151515151514110d08010000000000000000000000000000000000000b1724303c4855616d7a86929ea6998d81746865717d8a96a29c9083776a5e5245424e5b6774808c99a5988c80736764717d8a96a2a295897d7064584c3f33271b0e02000000000000000013202c3946535f6c798693a0acaca09386796c5f5346392c2026303a444d57616b757e89929ca6aca3998f867c72685f554b42382e251b1107000000000000000000000000000000010d1925313c4854606c77838f9ba7ada195897d71655a4e4444444444444444444444444444444444444444444b57636f7b87929eaaa89d9185796d61564a3e32261a0e03000000000013202c3946535f6c798693a0aca194887b6e6154483b2e21151e2a36424e5a66727d8995a1adaa9e92877a6f63574b3f33271b1c2835424f5b6875828f9ca8a69a8d807366594d4033261a0d000000000000000d1a2633404d596673808d95959595959595959595959595959595959595959595949392908e8c8986827e7a75706a645e575049423a322a21180f06000000000000000000000000000000081119222930373d42464a4c4e4f50504f4e4c4a46423e3832353c4145494b4c4d4c4b4946433e372e251b1005000000000000000000000000000000000000000000000000000000000000000000010c17222c37414b555e68707981888e94989c9fa1a3a4a3a3a2a09e978a7d7063574a3d3024170a000000000000000000000b1825323e4b5865717e8b98a0a1a2a1a09e9a96908a827a726960574d44392f251a10050000000000000000000000000000000000000000000000000e1b2734414d5a6673808c98a5b1a89b8f83766a5e52463a2e23180e060100000000000000040b131d27323e4955616d7986929eabada195887c6f63564a3d3124180b00101c2936424f5c6875828e9ba7b2a5998c8073675a4e4235291d120600000000000000000000010b16212d3945515d6a76828f9ba8b0a4978b7e7265594c3f33261a0d00111d2a3743505d6976838f9ca8b1a4978b7e7265594c4033271b0f03000000000000000000000007131e2a37434f5c6874818d9aa7b2a5998c8073665a4d4034271a0e000000000000000000000815212e3b4854616e7b8894a1aeab9e9285786b5e5145382b1e1205000000000000000000000004101c2834404b57636e7a8691968a7f74695e54494d57626c768089929a9c958e88837e7c7a79797b7d81868c929a9991887e746a60564b4b55606b76818c978e82776b5f54483c3024180c000000000000000000000000000000000810181e22252626262626262625221e1810080000010a12191e23252626262626262624201b15151b212426262626262626231f1a13151b20242626262626262625221e181109000000000000020a12181d2022222222222222211d19130c0400000000000000000000000000000000020f1b2733404c5864717d8996a2a2968a7d7164616e7a87939f9f93867a6e61554845515e6a77838f9ca295897d7064616e7a86939fa5998d8174685b4f43372a1e1206000000000000000013202c3946535f6c798693a0acaca09386796c5f5346392c252e38424c565f69737d87919aa4aea49a91877d746a60564d433930261c130900000000000000000000000000000000000814202c38434f5b67737e8a96a2aea59a8e82766a5e52515151515151515151515151515151515151515151515c6873808b97a3afa4988c8074685d5145392d21160a00000000000013202c3946535f6c798693a0aca194887b6e6154483b2e2117232f3b47525e6a76828e9aa6b2afa3978b7f73675b4f43372c201c2835424f5b6875828f9ca8a69a8d807366594d4033261a0d000000000000000d1a2633404d596673808d9aa2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a1a1a09f9d9b9896928e8a86817b756f69625b544c443c332a21180f050000000000000000000000000007101a232b333b42484e5256595b5c5d5d5c5b5956524e49443d40474d5155585959595855534f4940372c21160a00000000000000000000000000000000000000000000000000000000000000000008131e29343e49535d67707a828b92999fa4a9aaa6a29f9d9c9c9c9d978a7d7063574a3d3024170a000000000000000000000b1825323e4b5865717e8b989c9c9d9fa2a6a6a19b948c847b72695f554b41372c22170c010000000000000000000000000000000000000000000000101c2936424f5c6875828e9ba7b2a5998c8073675a4e4235291d120600000000000000000000010b16212d3945515d6a76828f9ba8b0a4978b7e7265594c3f33261a0d00111e2b3744515d6a7783909da9b0a3978a7d7164584b3f3226190d01000000000000000000000005111d2935414e5a6773808c99a6b2a69a8d8174675a4e4134281b0e00121e2b3845515e6b7784919daaafa296897c7063564a3d3124180b000000000000000000000000020e1b2733404c5965727e8b98a5b1a79b8e8175685b4f4235281c0f000000000000000000000815212e3b4854616e7b8894a1aeab9e9285786b5e5145382b1e120500000000000000000000000814202c3844505c6874808b979084796e63584d48535e69747e88929b9c938b837c77726f6d6d6d6e71757a818890999a90877c72675d52474e5964707b869293887c7064594d4135291d1004000000000000000000000000000008121a22292e3233333333333333322e29221a1208000a131c232a2f3233333333333333302c261f1f272c31333333333333322f2b241d1f262c3033333333333333322f2a231b120900000000020b141c23292c2f2f2f2f2f2f2f2d2a241e160d0400000000000000000000000000000006121e2b37434f5c6874818d99a59f93877a6e615e6b7783909ca2968a7d7164584c4855616d7a86929f9f9286796d615e6a7783909ca89c9084776b5f53463a2e221509000000000000000013202c3946535f6c798693a0acaca09386796c5f5346392c2d36404a545e68717b858f99a3aca69c92897f756b62584e443b31271e140a010000000000000000000000000000000000040f1b27333f4a56626e7a86919da9aa9e92877b6f635d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d606c7884909ca8ab9f93877b6f64584c4034291d110500000000000013202c3946535f6c798693a0aca194887b6e6154483b2e211c27333f4b57636f7b87939faaa8a8a79b9084786c6054483c30241c2835424f5b6875828f9ca8a69a8d807366594d4033261a0d000000000000000d1a2633404d596673808d9aa6aeaeaba5a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a4a4a6a8aaa8a5a29e9b96928c87817a746d655e564e453c332a21170e040000000000000000000000040e18222c353d454d53595e626568696969696765625e5a554f484a52585d616466666664625f5a52493e33271b0f0200000000000000000000000000000000000000000000000000000000000000030e19242f3a45505a656f79838c949ca4aaaba49e9a9692908f8f8f90918a7d7063574a3d3024170a000000000000000000000b1825323e4b5865717e8b908f8f9092969ba0a7a69e968e857b71675d53483e33281d12070000000000000000000000000000000000000000000000111e2b3744515d6a7783909da9b0a3978a7d7164584b3f3226190d01000000000000000000000005111d2935414e5a6773808c99a6b2a69a8d8174675a4e4134281b0e00121f2c3845525e6b7885919eabaea295887b6f6256493c3023170a000000000000000000000000000d1926323f4b5865717e8b97a4b0a89b8f8275685c4f4236291c1000121f2c3945525f6b7885929fabaea194887b6e6155483b2f221509000000000000000000000000000b1824313e4a5764707d8a96a3b0a99c8f8376695c5043362a1d10000000000000000000000815212e3b4854616e7b8894a1aeab9e9285786b5e5145382b1e120500000000000000000000000c1824303c4855616c788490968a7e73685c51464e5964707b86909a9d938a8178716b66636160606265696f767e87909a988e84796e63584d48535e6975818c988d8175695d5145392d2114080000000000000000000000000005101a242c343a3e404040404040403e3a342c241a1007111c252e353b3f4040404040403f3d3831292931383d4040404040403f3c362f262931383d3f4040404040403e3a352d241b11060000000a141d262e34393b3c3c3c3c3c3b39352f281f160c0100000000000000000000000000000915222e3a46535f6b7884909da99c9084776b5e5b6774808c99a5998d8174675b4f4b5864707d8996a29b8f83766a5e5b6774808c99a5a094877b6f63564a3e3125190d000000000000000013202c3946535f6c798693a0acaca09386796c5f5346392f353f48525c667079838d97a1aba79d948a80766d635950463c32291f150c02000000000000000000000000000000000000000b16222e3a46515d6975818c98a4afa3978b80736a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a717d8995a0aca69a8e83776b5f53473b3024180c0000000000000013202c3946535f6c798693a0aca194887b6e6154483b2e21202c3844505c6873808b97a3a09b9ba1a094887c7064584c4035291d2835424f5b6875828f9ca8a69a8d807366594d4033261a0d000000000000000d1a2633404d596673808d9aa6b3aca29a9696969696969696969696969696969798999b9ea1a4a8aba7a29d98928c857e77706860574e453c332920160c02000000000000000000000b16202a343e474f575e656a6e72747676767574726f6b66605a52545c63696e71737373716e6b645a4f43372b1e12050000000000000000000000000000000000000000000000000000000000000008141f2a36414c57626c77818b959ea6aea8a099938e8986848282828385877d7063574a3d3024170a000000000000000000000b1825323e4b5865717e8483828284868a8f959ca4a8a0978d83796f655a4f453a2f24180d0200000000000000000000000000000000000000000000121f2c3845525e6b7885919eabaea295887b6f6256493c3023170a000000000000000000000000000d1926323f4b5865717e8b97a4b0a89b8f8275685c4f4236291c1000131f2c3946525f6c7986929facada194877a6e6154483b2e211508000000000000000000000000000a1724303d4a5663707c8996a2afa99c908376695d5043372a1d100013202c3946535f6c7986929facada094877a6d6054473a2e211407000000000000000000000000000916232f3c4956626f7c8895a2afaa9d9084776a5d5044372a1d11000000000000000000000815212e3b4854616e7b8894a1aeab9e9285786b5e5145382b1e120500000000000000000000030f1b2834404c5965717d89959185796e62574b47535e6a76818c97a0968b81786f67605a5654535355595e646c757e88929d968b80756a5f53484d5864707b87939185796d6155493d3024180b000000000000000000000000000b17222c363e454a4d4d4d4d4d4d4d4a453e362c22170d18232e3740464b4d4d4d4d4d4d4c49433b32323b43494c4d4d4d4d4d4b4741382f323b43494c4d4d4d4d4d4d4b463f372d23180c010005111b262f383f454848484848484846413a31281e130800000000000000000000000000000d1925313e4a56636f7b8794a0a6998d8174685b5864707d8995a29c9083776b5e524e5b6773808c99a5988c8073675a5864707d8995a2a3978b7e72665a4d4135291c10040000000000000013202c3946535f6c798693a0acaca09386796c5f534841393d47515a646e78828c959fa9a89f958b82786e645b51473e342a21170d03000000000000000000000000000000000000000006121d2935414d5864707c88949faba89c9084787777777777777777777777777777777777777777777777777777828d99a5ada1958a7e72665a4e42372b1f13070000000000000013202c3946535f6c798693a0aca194887b6e6154483b2e2125313d4854606c7884909ca1968f8f98a3998d8175695d5145392d212835424f5b6875828f9ca8a69a8d807366594d4033261a0d000000000000000d1a2633404d596673808d9aa6b3a79b908a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8b8d8f9194989ca0a5aba9a39d979089827a726960574e453b32281e130900000000000000000006111c27323c465059616970767a7e8182838382817e7b76716b645d5d666e757a7d8080807d7b766b5f5346392d201306000000000000000000000000000000000000000000000000000000000002050e1925303c47525d68737e89939da7b0a89e968f88827d797776757576787a7b7063564a3d3024170a000000000000000000000b1825313e4b5764707877767575777a7e848a929aa2a89f958b81766c61564b40352a1e130800000000000000000000000000000000000000000000131f2c3946525f6c7986929facada194877a6e6154483b2e211508000000000000000000000000000a1724303d4a5663707c8996a2afa99c908376695d5043372a1d100013202c3946535f6c7986939facada093877a6d6053473a2d201407000000000000000000000000000916222f3c4855626f7b8895a2aeaa9d9084776a5d5144372a1e110013202c3946535f6c798693a0acada09386796d6053463a2d201407000000000000000000000000000815222f3b4855616e7b8895a2aeaa9e9184776a5d5144372a1e11000000000000000000000815212e3b4854616e7b8894a1aeab9e9285786b5e5145382b1e12050000000000000000000006121f2b3744505c6975818d998d8175695d51464b57636f7b87929e9a8f84796f665d554f4a474647494d535a636c76818b95928e867b7064574b48535f6b77838f968a7d7165594c4034271b0f02000000000000000000000004101c28333e485056595959595959595650483e33281c121e2a353f49515759595959595959544d44393a444d5459595959595958524b413639444d54595959595959595751493f34291d1105000b16222d38414a5154555555555555524c433a2f251a0e0300000000000000000000000004101c2935414d5a66727e8b97a3a3968a7d71645855616d7986929f9f93877a6e6155515e6a76838f9ca295897c70645754616d7986929fa79b8e82766a5d5145382c2014070000000000000013202c3946535f6c798693a0acaca09386796c625a524b43454f59626c76808a949da7aaa0968d83796f665c52493f352c22180f05000000000000000000000000000000000000000000010d1924303c48545f6b77838f9aa6aca0958984848484848484848484848484848484848484848484848484848487929eaaa89c9185796d61554a3e32261a0e030000000000000013202c3946535f6c798693a0aca194887b6e6154483b2e212935414d5965717d8994a09e92858793a09d9185796d61564a3e32262835424f5b6875828f9ca8a69a8d807366594d4033261a0d000000000000000d1a2633404d596673808d9aa6b2a6998c7f7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7e808285888b90949a9fa5aca8a29b938c847b726a60574d443a2f251b100600000000000000000c17232e39444e58626b737b81878b8d8f90908f8d8b87827c766e66656f7880868a8c8d8c8a86796d6053463a2d201307000000000000000000000000000000000000000000000000000004080b0f11141f2a36414d58636f7a85909aa5afa89f958c847d76716d6a6968696a6b6e6f695f53473b2f221609000000000000000000000a16232f3b48535e676c6b6969696a6e727980889099a3a79d93887d73685d51463b3024190d0200000000000000000000000000000000000000000013202c3946535f6c7986939facada093877a6d6053473a2d201407000000000000000000000000000916222f3c4855626f7b8895a2aeaa9d9084776a5d5144372a1e110013202c3946535f6c798693a0acada09386796d6053463a2d201307000000000000000000000000000815222e3b4855616e7b8894a1aeaa9e9184776a5d5144372a1e110013202c3946535f6c798693a0acada09386796d6053463a2d201307000000000000000000000000000815212e3b4854616e7b8894a1aeaa9e9184776a5d5144372a1e11000000000000000000000815212e3b4854616e7b8894a1aeab9e9285786b5e5145382b1e1205000000000000000000000915222e3a4753606c78859195897c7064584c434f5b6874808c98a094897d72685d544b433e3b3a3a3c4148515a646f7a858986827e7a7164584b424e5a66727e8b978d8175685c5043372a1e110500000000000000000000000714202c38444f5a6266666666666666625a4f44382c2016222e3a46515b63666666666666655f564b40404b565f656666666666645d53483c404b565f65666666666666635b50453a2e211509000f1b27333e49545c616262626262625d564c41362b2014090000000000000000000000000713202c3845515d6976828e9ba79f93877a6e6155515e6a76838f9ba2968a7d71655854616d7986929f9e9286796d6154515e6a76838f9ba89e9286796d6155483c3023170b0000000000000013202c3946535f6c798693a0acaca093867b746c645d554d4d57616b747e88929ca6aba2988e857b71675e544a40372d231a100600000000000000000000000000000000000000000000000814202b37434f5b66727e8a96a2ada59b939191919191919191919191919191919191919191919191919191919299a3aea4988c8074685c5145392d21160a000000000000000013202c3946535f6c798693a0aca194887b6e6154483b2e222e3a46525d6975818d99a59b8f8284909da2968a7e72665a4e42362a2835424f5b6875828f9ca8a69a8d807366594d4033261a0d000000000000000d1a2633404d596673808d9aa6b2a6998c7f727070707070707070707070707071727375787b8084898e949aa1a8ada59e968d857c72695f554b41372c22170c0100000000000004101c28343f4a55606a747d858c92979a9c9d9d9c9a97938e8881786f6c77818a9196999a999386796d6053463a2d201307000000000000000000000000000000000000000000000003080c1014181b1e20242f3b47525e6975808b96a1acaba1978d837a726b65615e5c5b5c5d5f61625e574d42372b1f13070000000000000000000007131f2b37424c555c5f5e5d5c5c5e62676e767e87919ba5a49a8f84796e63574c41352a1e130700000000000000000000000000000000000000000013202c3946535f6c798693a0acada09386796d6053463a2d201307000000000000000000000000000815222e3b4855616e7b8894a1aeaa9e9184776a5d5144372a1e110013202c3946535f6c798693a0acada09386796d6053463a2d201307000000000000000000000000000815212e3b4854616e7b8894a1aeaa9e9184776a5d5144372a1e110013202c3946535f6c798693a0acada09386796d6053463a2d201307000000000000000000000000000815212e3b4854616e7b8894a1aeaa9e9184776a5d5144372a1e11000000000000000000000815212e3b4854616e7b8894a1aeab9e9285786b5e5145382b1e1205000000000000000000000b1824313d4a56636f7b88949185796c60544846535f6b7884909c9b9084786c61564b4239322e2d2d30363f48535d68737f7d7976726e695f54483e4a56626e7b87939184786b5f5246392d20140700000000000000000000000916232f3c4855616c737373737373736c6155483c2f231825313e4a57636d73737373737371675c504345515c687173737373736f64594d4143505c67717373737373736d62564a3d3124170b00111e2a37434f5b666d6f6f6f6f6f6e685d52473c31251a0f0300000000000000000000000b17232f3c4854616d7985929ea99c9084776b5e524e5a6773808c98a4998d8174685b5764707d8995a29b8f83766a5d514e5a6773808c98a5a295897d7164584c4033271b0f0200000000000013202c3946535f6c798693a0acaea2978d867e766e675f57555f69737c87909aa4ada39990867c72695f554c42382e251b1108000000000000000000000000000000000000000000000000030f1b27323e4a56626d7985919da8ada49f9e9e9e9e9e9e9e9e9e9e9e9e9e9e9e9e9e9e9e9e9e9e9e9e9e9e9e9ea3abab9f93877b6f64584c4034281d1105000000000000000013202c3946535f6c798693a0aca194887b6e6154483b2e27323e4a56626e7a86929ea4988c7f818d99a69a8e82766a5f53473b2f2835424f5b6875828f9ca8a69a8d807366594d4033261a0d000000000000000d1a2633404d596673808d9aa6b2a6998c7f7265636363636363636363636363646567696c6f73787d838990979ea6aea89f978e857b71675d53493e34291e13080000000000000815212d3944505c67727c868f979ea29c9793929192939699928a8278727d89939ca29d97949386796d6053463a2d201307000000000000000000000000000000000000000000040a0f14181d2124272a2d2f34404c58636f7a86919da8afa49a8f857b7168615a55514f4f4f50525555534d453b31261a0f0300000000000000000000030f1a25303a434b505251504f4f51565c646c757f89939da8a1968a8074695d52463b2f24180d01000000000000000000000000000000000000000013202c3946535f6c798693a0acada09386796d6053463a2d201307000000000000000000000000000815212e3b4854616e7b8894a1aeaa9e9184776a5d5144372a1e110013202c3946535f6c798693a0acada09386796d6053463a2d201307000000000000000000000000000815212e3b4854616e7b8894a1aeaa9e9184776a5d5144372a1e110013202c3946535f6c798693a0acada09386796d6053463a2d201307000000000000000000000000000815212e3b4854616e7b8894a1aeaa9e9184776a5d5144372a1e11000000000000000000000815212e3b4854616e7b8894a1aeab9e9285786b5e5145382b1e1205000000000000000000000d1a2633404c5965727e8b978e8275695d50444956626e7b8794a0988b7f73675b50443a3027222021252d36414c57626d73716d6966625e574d433a46525f6b77849094877a6e6155483c2f23160900000000000000000000000a1724303d4a5763707d80808080807d7063574a3d30241926323f4c5965727f8080808080786b5e51454955616d79808080808075695d524645515e6b7880808080807e7165584b3e3225180b00121f2c3945525f6b777b7b7b7b7b7a6f64594d42372b1f140800000000000000000000020e1a27333f4b5864707c8995a1a6998d8174685b4f4b5763707c8995a19c9084776b5e5a6773808c98a4988c8073675a4e4b5764707c8995a1a5998d8174685c4f43372b1e120600000000000013202c3946535f6c798693a0acb3a89f98908881797169615d67717b858f98a2aca49b91877d746a60574d433a30261d130900000000000000000000000000000000000000000000000000000a16222e3945515d6974808c98a4afafabaaa7a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a6aaabaeb2a69a8e82766b5f53473b2f24180c00000000000000000013202c3946535f6c798693a0aca194887b6e6154483b2e2b37434f5b67737e8a96a2a195887c7d8a96a29f93877b6f63574b3f332835424f5b6875828f9ca8a69a8d807366594d4033261a0d000000000000000d1a2633404d596673808d9aa6b2a6998c7f726559565656565656565656565657585a5c5f63676c72777e858c949ca5aea9a0978d83796f655a50453a2f24190e0300000000000c1825313d4955616d78838e98a1a198918b87858485878a8e93948a8176838f9aa59c938c878786796d6053463a2d20130700000000000000000000000000000000000000040a10151b2024292d303437393c3e45515c6874808b97a2aea99e93887d73695f564f49454342434446484947423b33291f150900000000000000000000000009141e28313940444645434343454b525a636d77818c96a1a79c91857a6e63574c4035291d1206000000000000000000000000000000000000000013202c3946535f6c798693a0acada09386796d6053463a2d201307000000000000000000000000000815212e3b4854616e7b8894a1aeaa9e9184776a5d5144372a1e110013202c3946535f6c798693a0acada09386796d6053463a2d201307000000000000000000000000000815212e3b4854616e7b8894a1aeaa9e9184776a5d5144372a1e110013202c3946535f6c798693a0acada09386796d6053463a2d201307000000000000000000000000000815212e3b4854616e7b8894a1aeaa9e9184776a5d5144372a1e11000000000000000000000815212e3b4854616e7b8894a1aeab9e9285786b5e5145382b1e1205000000000000000000000f1c2835424e5b6774818d988c7f73665a4d414b5865717d8a97a194887c6f63574b3f33281e1613141b252f3a46515b636765615d5956524d453c36434f5c6875818e96897d7064574a3e3125180b00000000000000000000000a1724303d4a5763707d8a8d8d8d8a7d7063574a3d30241926323f4c5965727f8c8d8d8d85786b5e51454e5a66727d898d8d8d867a6e62564b45515e6b78858d8d8d8b7e7165584b3e3225180b00121f2c3845525e6a75808888888881756a5e53483c3024180d0100000000000000000005111e2a36434f5b6774808c99a5a3968a7d7165584c4754606d7985929e9f93877a6e625e6a76838f9ca195897c7063574b4854606d7986929ea99c9084786b5f53473a2e22160900000000000013202c3946535f6c798693a0acb9b1a9a29a928b837b736c666f79838d97a1aaa69c92897f756b62584e453b31281e140b01000000000000000000000000000000000000000000000000000005111d2935404c5864707b87939fabb6aea49c98989898989898989898989898989898989898989898989aa1abb6ada195897d72665a4e42372b1f130700000000000000000013202c3946535f6c798693a0aca194887b6e6154483b2e303c47535f6b77838f9ba79e9185797a86929ea3978b8073685c5044382c35424f5b6875828f9ca8a69a8d807366594d4033261a0d000000000000000d1a2633404d596673808d9aa6b2a6998c7f7265594c4a4a4a4a4a4a4a4a4a4a4a4c4e5053575b61666c737a828a939ca5aea89f958b81776c61574c41362b1f140900000000000f1b2834404d5965717d8995a0a4998f86807a7877787a7d82888f92887d86929fa2968b817b7a7c796c6053463a2d201307000000000000000000000000000000000001080f151b21262c3035393d404346484a4c55616d7985919ca8afa4988d82766c61574d443d3936353637393b3c3a36312921170e03000000000000000000000000020d161f272e34373938373636394048515b656f7a85909ba6a2968b8074685d51463a2e23170b000000000000000000000000000000000000000013202c3946535f6c798693a0acada09386796d6053463a2d201307000000000000000000000000000815212e3b4854616e7b8894a1aeaa9e9184776a5d5144372a1e110013202c3946535f6c798693a0acada09386796d6053463a2d201307000000000000000000000000000815212e3b4854616e7b8894a1aeaa9e9184776a5d5144372a1e110013202c3946535f6c798693a0acada09386796d6053463a2d201307000000000000000000000000000815212e3b4854616e7b8894a1aeaa9e9184776a5d5144372a1e11000000000000000000000815212e3b4854616e7b8894a1aeab9e9285786b5e5145382b1e120500000000000000000000111d2a3743505d6976838f968a7d7064574b414d5a6673808c999e9285796c6053473b2f23170c0709131e29343f4951575a5855514d4a46413b3334404d5966727f8c988b7e7265594c3f3326190d00000000000000000000000a1724303d4a5763707d8a979a978a7d7063574a3d30241926323f4c5965727f8c999a9285786b5e5147535f6b76828e9a9a968b7e73675b4f45515e6b7885929a988b7e7165584b3e3225180b00111d2936424e59636e79848f9592877b7064584d4135291d11050000000000000000000915212d3a46525f6b7784909ca89f93877a6e61554944515d6976828e9ba3968a7d7165616d7986929f9e9285796d60544845515d6a76828f9ba7a094877b6f63564a3e3225190d00000000000013202c3946535f6c798693a0acb9b0a9a5a49c958d857d766e77818b959fa9a79d948a81776d635a50463c33291f160c02000000000000000000000000000000000000000000000000000000000c1824303c47535f6b76828e9aa6b2a89c928b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8f9aa5b2a89c9185796d6155493e32261a0e0200000000000000000013202c3946535f6c798693a0aca194887b6e6154483b2e34404c5864707c88949fa69a8e827576828e9ba79c9084786c6054483c3035424f5b6875828f9ca8a69a8d807366594d4033261a0d000000000000000d1a2633404d596673808d9aa6b2a6998c7f7265594c3f3d3d3d3d3d3d3d3d3d3e3f4144474b50555b61697078818a939ca6b0a79d93897e73685d52473c30251a0e0200000000111d2a3643505c6975818e9aa69e93887d746e6b6b6b6e71767d848d8e838794a19e9285796f6d7070685d5145382c1f120600000000000000000000000000000000050c131a20262c32373c4145494c50525557595a66727d8a95a1adaa9e93877b70655a4f46423e39342f292a2d2f2f2e2a251f170f060000000000000000000000000000040d161d23282b2c2b2a29292e363f49535e68737e8a95a0a89c9185796e62564b3f33271c10040000000000000000000000000000000000000013202c3946535f6c798693a0acada09386796d6053463a2d201307000000000000000000000000000815212e3b4854616e7b8894a1aeaa9e9184776a5d5144372a1e110013202c3946535f6c798693a0acada09386796d6053463a2d201307000000000000000000000000000815212e3b4854616e7b8894a1aeaa9e9184776a5d5144372a1e110013202c3946535f6c798693a0acada09386796d6053463a2d201307000000000000000000000000000815212e3b4854616e7b8894a1aeaa9e9184776a5d5144372a1e11000000000000000000000815212e3b4854616e7b8894a1aeab9e9285786b5e5145382b1e120500000000000000000000121e2b3845515e6b77849194887b6e625549424f5b6875828e9b9d9083776a5d5144382b1f130600010d18232d373f464b4d4c4845413d3a363029323e4b5764717d8a978d8173675a4d4134271b0e00000000000000000000000a1724303d4a5763707d8a97a4978a7d7063574a3d30241926323f4c5965727f8c999e9285786b5e514c57636f7b87939fa69b8f84786c605448515e6b7885929e988b7e7165584b3e3225180b000d1a25313c47525d68737e8994988c8175695d5145392d2115080000000000000000000c1825313d4956626e7a87939fa99c9084776b5e5246414d5a66727e8b97a4998d81746864707c8995a29b8f82766a5d5144414e5a66737f8c98a4a3978b7e72665a4e4135291d1004000000000013202c3946535f6c798693a0acb2a89e98989e9f978f888078808a939da7a99f958c82786e655b51483e342a21170d04000000000000000000000000000000000000000000000000000000000007131f2b37424e5a66727d8995a1ada79a8d817e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e8a97a4afa3988c8074685c5145392d21150a0000000000000000000013202c3946535f6c798693a0aca194887b6e6154483b2e3945515d6874808c98a4a3968a7e72727e8b97a3a094897c7165594d413535424f5b6875828f9ca8a69a8d807366594d4033261a0d000000000000000d1a2633404d596673808d9aa6b2a6998c7f7265594c3f323030303030303030313234373b3f444a50575e666f77818a949ea8afa59a90857a6f64584d42362b1f130800000000121f2b3845525e6b7784919da79a8e82766b635f5e5f61666b727a838d8e9099a49c8f8276696064645e564b4034281c1004000000000000000000000000000000070f161e252b32383d43484d5155595c5f616465676a76828e9aa6b2a69a8e82766b5f5956524e49453f3a342e272222211e1a140d0500000000000000000000000000000000040b12171c1e1f1f1d1c1d242d37414c57626d78848f9ba6a1968a7e73675b5044382c2015090000000000000000000000000000000000000013202c3946535f6c798693a0acada09386796d6053463a2d201307000000000000000000000000000815212e3b4854616e7b8894a1aeaa9e9184776a5d5144372a1e110013202c3946535f6c798693a0acada09386796d6053463a2d201307000000000000000000000000000815212e3b4854616e7b8894a1aeaa9e9184776a5d5144372a1e110013202c3946535f6c798693a0acada09386796d6053463a2d201307000000000000000000000000000815212e3b4854616e7b8894a1aeaa9e9184776a5d5144372a1e11000000000000000000000815212e3b4854616e7b8894a1aeab9e9285786b5e5145382b1e120500000000000000000000121f2c3945525f6c78859293877a6d60544743505c6976838f9c9b8f8275695c4f4236291d1003000006111b252d353b3f403f3c3935312d2a2523303d4956636f7c89968e8175685b4e4235281b0f00000000000000000000000a1724303d4a5763707d8a97a4978a7d7063574a3d30241926323f4c5965727f8c999e9285786b5e51505c6874808c98a3a8a094887c7165594d515e6b7885929e988b7e7165584b3e3225180b000915202b36404b56616c78848f9b9185796d6155493d3124180c0000000000000000030f1c2834414d5965727e8a97a3a6998d8174685b4f433e4a56636f7b8894a19c9084776b6773808c98a4988c7f73665a4e413e4a57636f7c8895a1a79b8e82766a5d5145392c201408000000000013202c3946535f6c798693a0acaea2968d8c959ea19a928a8288929ba5aaa0978d837970665c53493f362c22180f05000000000000000000000000000000000000000000000000000000000000030e1a26323e4955616d7985909ca8a99d9185797171717171717171717171717171717171717176828e9aa6ab9f93877b6f63584c4034281c11050000000000000000000013202c3946535f6c798693a0aca194887b6e6154483b313d4955616d7985919da99f93877a6e6e7a87939fa5998d8175695d51453a35424f5b6875828f9ca8a69a8d807366594d4033261a0d000000000000000d1a2633404d596673808d9aa6b2a6998c7f7265594c3f3226232323232323232426282b2f33383f454c545d656f78828c97a1acaca1968b8075695e53473b3024180c0000000013202c3946535f6c7986929fa4988b7e72665a525152555a6169717b85909ba2a79a8e8174675b5757534c443a2f24180c00000000000000000000000000000109111921282f363d43494e54595d6165686b6e707273757a86929eaaada195897d716b6865625e5a55504b453f39322b241d150e090300000000000000000000000000000000000001070c0f1213121010121b25303a45505c67737e8a96a1a79b8f84786c6055493d3125190d0200000000000000000000000000000000000013202c3946535f6c798693a0acada09386796d6053463a2d201307000000000000000000000000000815212e3b4854616e7b8894a1aeaa9e9184776a5d5144372a1e110013202c3946535f6c798693a0acada09386796d6053463a2d201307000000000000000000000000000815212e3b4854616e7b8894a1aeaa9e9184776a5d5144372a1e110013202c3946535f6c798693a0acada09386796d6053463a2d201307000000000000000000000000000815212e3b4854616e7b8894a1aeaa9e9184776a5d5144372a1e11000000000000000000000815212e3b4854616e7b8894a1aeab9e9285786b5e5145382b1e12050000000000000000000013202c3946535f6c7986939386796c5f534644505d6a7783909d9b8e8174675b4e4135281b0e0200000009131b232a2f323433302c2925211e19222f3c4855626f7b88958f8275685b4f4235291c0f00000000000000000000000a1724303d4a5763707d8a97a4978a7d7063574a3d30241926323f4c5965727f8c999e9285786b5e5155616d7985909c9e9b9e998d81756a5e52515e6b7885929e988b7e7165584b3e3225180b00040f19242f3a45505b67727e8a96968a7e7165594d4034281b0f020000000000000007131f2c3844505d6975828e9aa6a3968a7d7165584c3f3b4753606c7885919da093877a6e6a76838f9ba195887c7063574a3e3b4754606c7985919eaa9e9286796d6155483c3024170b000000000013202c3946535f6c798693a0acaca09386838c959ea49c948e919aa4aba2988e857b71685e544a41372d241a100700000000000000000000000000000000000000000000000000000000000000000a15212d3945505c6874808c97a3aea2968a7e7266656565656565656565656565656565656f7b87939faba69a8e82766b5f53473b2f24180c000000000000000000000013202c3946535f6c798693a0aca194887b6e6154483b36424e5a66727d8995a1a79b8f83776a6a77838f9ba79d92867a6e62564a3e35424f5b6875828f9ca8a69a8d807366594d4033261a0d000000000000000d1a2633404d596673808d9aa6b2a6998c7f7265594c3f32261917171717171718191c1f23282d343b424b535d66707a858f9aa5b0a89d91867b6f63584c4035291d110500000013202c3946535f6c798693a0a4978a7d7063574a4446494f575f69737e8995a1a79a8e8174675a4d4a47423b32281d120700000000000000000000000000010a131b232b333a41484e545a5f64696d7175787a7d7e8182828a96a2aeab9e92857c7a7875726e6a66615c56514a443d362e271f160e0500000000000000000000000000000000000000000000000000000109131e29343f4a56626d7985919ca8a094897d7165594d42362a1e120600000000000000000000000000000000000013202c3946535f6c798693a0acada09386796d6053463a2d201307000000000000000000000000000815212e3b4854616e7b8894a1aeaa9e9184776a5d5144372a1e110013202c3946535f6c798693a0acada09386796d6053463a2d201307000000000000000000000000000815212e3b4854616e7b8894a1aeaa9e9184776a5d5144372a1e110013202c3946535f6c798693a0acada09386796d6053463a2d201307000000000000000000000000000815212e3b4854616e7b8894a1aeaa9e9184776a5d5144372a1e11000000000000000000000815212e3b4854616e7b8894a1aeab9e9285786b5e5145382b1e12050000000000000000000013202c3946535f6c7986939286796c5f524644505d6a7784909d9a8e8174675a4d4134271b0e01000000010911191e2326272624201c19151115222e3b4855616e7b88958f8275695c4f4236291c0f00000000000000000000000a1724303d4a5763707d8a97a4978a7d7063574a3d30241926323f4c5965727f8c999e9285786b5e515a65717d89959d938e939d92867a6e6357515e6b7885929e988b7e7165584b3e3225180b000008121d28333f4a56626e7986929a8e8175695c5043372a1e1105000000000000000a16232f3b4754606c7985919eaaa093877a6e6255493c3744505c6975818e9aa3968a7d716d7986929e9e9285796c6054473b3844505d6975828e9ba7a295897d7164584c4033271b0f020000000013202c3946535f6c798693a0acaca093867a838c969fa69f9b9ca3aca39990867c73695f564c42382f251b120800000000000000000000000000000000000000000000000000000000000000000005111c2834404c57636f7b87939eaaa69a8f83776b5f585858585858585858585858585c6874808c97a3ada195897d72665a4e42362b1f1307000000000000000000000013202c3946535f6c798693a0aca194887b6e6154483b3b47525e6a76828e9aa6a3978b7f736666727e8a96a2a2968a7e72665a4e4337424f5b6875828f9ca8a69a8d807366594d4033261a0d000000000000000d1a2633404d596673808d9aa6b2a6998c7f7265594c3f3226190c0a0a0a0a0a0b0d0f12171c22293039414b545e69737e89949faaaea3978c8074695d5145392d21150900000013202c3946525f6c7985929fa4978a7d7064574a43403f454d57626d7884909da79a8e8174675a4d413b37302920160c01000000000000000000000000010a131c252d353d444c52595f656b7075797d818487898b8d8e8f929ba6b2aca0948b898784817e7a76726d68625c554f484039312820170f050000000000000000000000000000000000000000000000000000020c17232e3a45515d6874808c98a4a5998d82766a5e52463a2e23170b00000000000000000000000000000000000013202c3946535f6c798693a0acada09386796d6053463a2d201307000000000000000000000000000815212e3b4854616e7b8894a1aeaa9e9184776a5d5144372a1e110013202c3946535f6c798693a0acada09386796d6053463a2d201307000000000000000000000000000815212e3b4854616e7b8894a1aeaa9e9184776a5d5144372a1e110013202c3946535f6c798693a0acada09386796d6053463a2d201307000000000000000000000000000815212e3b4854616e7b8894a1aeaa9e9184776a5d5144372a1e11000000000000000000000815212e3b4854616e7b8894a1aeab9e9285786b5e5145382b1e12050000000000000000000013202c3946535f6c7986939386796c5f534644505d6a7784909d9a8e8174675b4e4134281b0e01000000070f171d2226282826231f1c18151115222f3c4855626e7b88958f8275685c4f4236291c0f00000000000000000000000a1724303d4a5763707d8a97a4978a7d7063574a3d30241926323f4c5965727f8c999e9285786b5e525e6a76828e9a988c818c98978b7f73675c515e6b7885929e988b7e7165584b3e3225180b00030e19242d363e45515d6975828e9a9184786b5f5246392c201307000000000000010e1a26323f4b5764707c8895a1a99c9084776b5e52463934404d5965727e8a97a3998d8174707c8995a19b8e8276695d51443835414d5a66727e8b97a4a5998d8174685c4f43372b1e12060000000013202c3946535f6c798693a0acaca09386797a848d969fa8a7a8ada59b91887e746a61574d443a30261d130900000000000000000000000000000000000000000000000000000000000000000000000c18232f3b47535e6a76828e9aa5ab9f93877b6f64584c4b4b4b4b4b4b4b4b4b4b55616c7884909ca8a89c9085796d6155493e32261a0e02000000000000000000000013202c3946535f6c798693a0aca194887b6e6154483b3f4b57636f7b87939eaa9e92867a6f63626e7a86929ea79b8f83776b5f53473b424f5b6875828f9ca8a69a8d807366594d4033261a0d000000000000000d1a2633404d596673808d9aa6b2a6998c7f7265594c3f3226190c0000000000000003060b11171f272f39424c57616c77828e99a5b0a89d9185796d6155493d3125190d010000121f2b3845515e6a7784909da5988c7f73675b534f4d4b4a4a505c6874818d9aa69a8e8174675a4d41342b251f170e04000000000000000000000000000a131c252e363f474f565d646b71767c81858a8d919396989a9b9c9ea4adb4b1a69d979593918e8a87827d78736d676059524a433a322921170e05000000000000000000000000000000000000000000000000000006121d2934404c58646f7b8793a0aa9e92867a6e63574b3f33271b0f03000000000000000000000000000000000013202c3946535f6c798693a0acada09386796d6053463a2d201307000000000000000000000000000815212e3b4854616e7b8894a1aeaa9e9184776a5d5144372a1e110013202c3946535f6c798693a0acada09386796d6053463a2d201307000000000000000000000000000815212e3b4854616e7b8894a1aeaa9e9184776a5d5144372a1e110013202c3946535f6c798693a0acada09386796d6053463a2d201307000000000000000000000000000815212e3b4854616e7b8894a1aeaa9e9184776a5d5144372a1e11000000000000000000000815212e3b4854616e7b8894a1aeab9e9285786b5e5145382b1e120500000000000000000000131f2c3946525f6c79859293867a6d60534743505d697683909c9b8e8275685b4f4235281c0f02000006101921282e323535322f2b2824211d1823303c4956626f7c89958e8275685b4f4235281c0f00000000000000000000000a1724303d4a5763707d8a97a4978a7d7063574a3d30241926323f4c5965727f8c999e9285786b5e57636f7b87939e94887c87939c9084786c60555e6b7885929e988b7e7165584b3e3225180b0008141f2b353f484f545966727e8b9893877a6d6154483b2e22150800000000000005111d2a36424e5b6773808c98a4a6998d8174685b4f4336313d4956626e7b8794a09c908477737f8c98a4988b7f73665a4d4135313e4a56636f7b8894a1a99c9084786b5f53473a2e2216090000000013202c3946535f6c798693a0acaca0938679717a848d96a0a9b2ab9e93897f756c62584f453b32281e150b01000000000000000000000000000000000000000000000000000000000000000000000007131f2a36424e5a65717d8995a1aca4988c8074685c50453e3e3e3e3e3e3e424d5965717d8995a1ada3988c8074685c5045392d21150900000000000000000000000013202c3946535f6c798693a0aca194887b6e6154483b44505c6773808b97a3a69a8e82766a5e5d6975818d99a59f93877b6f63584c40424f5b6875828f9ca8a69a8d807366594d4033261a0d000000000000000d1a2633404d596673808d9aa6b2a6998c7f7265594c3f3226190c06060606060606060604060d151d27303b45505b66717c88949fabada2968a7e72665a4d4135291d10040000101d2a36434f5c6875818d99a59b8f83786d645f5c59585756565965727f8c98a59a8e8174675a4d4134271a140d050000000000000000000000000008121c252e374048515960686f767c82888d91969a9da0a2a5a6a8a9a8a8a7a8a8a9a8a4a2a09d9a97938e89847e78726b645c554c443b332920170d030000000000000000000000000000000000000000000000000006121e2935414d5965707c8894a0ada3978b7f73675b4f43382c201408000000000000000000000000000000000013202c3946535f6c798693a0acada09386796d6053463a2d201307000000000000000000000000000815212e3b4854616e7b8894a1aeaa9e9184776a5d5144372a1e110013202c3946535f6c798693a0acada09386796d6053463a2d201307000000000000000000000000000815212e3b4854616e7b8894a1aeaa9e9184776a5d5144372a1e110013202c3946535f6c798693a0acada09386796d6053463a2d201307000000000000000000000000000815212e3b4854616e7b8894a1aeaa9e9184776a5d5144372a1e11000000000000000000000815212e3b4854616e7b8894a1aeab9e9285786b5e5145382b1e120500000000000000000000121f2b3845515e6b78849194887b6e615548424f5c6975828f9b9c8f8376695d5043372a1d110400020d18222b333a3f41413f3b3834312d292324313e4a5764707d8a968d8174675a4e4134281b0e00000000000000000000000a1724303d4a5763707d8a97a4978a7d7063574a3d30241926323f4c5965727f8c999e9285786b5e5c6874808b979b8f8377838f9a95897d7165595e6b7885929e988b7e7165584b3e3225180b000c1824303c47515a6062636f7c899595887c6f6256493c3023160a0000000000000814212d3946525e6a77838f9ca8a3968a7d7165584c40332e3a46535f6b7884909d9f93877a75828e9ba195887c6f63574a3e322e3b4753606c7885919daaa094877b6f63564a3e3225190d0100000013202c3946535f6c798693a0acaca09386796c727b848e97a0a9aa9d90847a71685f564d443b32291f160d040000000000000000000000000000000000000000000000000000000000000000000000020e1a26313d4955616c7884909ca7a89c9185796d6155493d32323232323a46525e6a76828e99a5aa9f93877b6f63584c4034281c110500000000000000000000000013202c3946535f6c798693a0aca194887b6e6154483d4854606c7884909ca8a195897d71655a5965717d8995a1a4988c8074685c5044424f5b6875828f9ca8a69a8d807366594d4033261a0d0000000000050a0e1a2633404d596673808d9aa6b2a6998c7f7265594c3f32261913131313131313131312100c080b151f29333e4955606b77838f9ba7b2a69a8e82766a5d5145392c20140700000e1b2734404c5965717d89949fa094897f76706b6866656363636265727e8c98a59a8e8174675a4d4134271a0e020000000000000000000000000006101a242e374049525a636b727981878d93989da2a6a9a8a5a29f9d9c9b9b9a9b9b9c9ea0a2a5a8a6a39f9a95908a837d766e665e564d453b32291f150b010000000000000000000000000000000000000000000000000b16222e3a46525d6975818d99a5b1a79b9084786c6054483c3024180d010000000000000000000000000000000013202c3946535f6c798693a0acada09386796d6053463a2d201307000000000000000000000000000815212e3b4854616e7b8894a1aeaa9e9184776a5d5144372a1e110013202c3946535f6c798693a0acada09386796d6053463a2d201307000000000000000000000000000815212e3b4854616e7b8894a1aeaa9e9184776a5d5144372a1e110013202c3946535f6c798693a0acada09386796d6053463a2d201307000000000000000000000000000815212e3b4854616e7b8894a1aeaa9e9184776a5d5144372a1e11000000000000000000000815212e3b4854616e7b8894a1aeab9e9285786b5e5145382b1e120500000000000000000000111e2a3744505d6a76839096897c7063574a414e5b6774818d9a9d9184786b5e5245392d2014080508141f2a343d454b4e4e4b4744403d39342e2733404c5965727e8b988c7f7266594c4033261a0d00000000000000000000000a1724303d4a5763707d8a97a4978a7d7063574a3d30241926323f4c5965727f8c999e9285786b5e616c7884909c968b7e737e8a96998e82766a5e5e6b7885929e988b7e7165584b3e3225180b000e1b2834404d58636c6f6f6f7a8794968a7d7064574a3d3124170b0000000000000c1824303d4955626e7a86939faba093877a6e6255493c302a37434f5c6874818d99a296897d7884919d9e9185796c6053473b2e2b3744505c6975828e9aa7a3978b7e72665a4e4135291d100400000013202c3946535f6c798693a0acaca09386796c69727b858e97a0a9a0968d847a71685f564d443b31281f160d0400000000000000000000000000000000000000000000000000000000000000000000000915212d3844505c68737f8b97a3ada195897d71665a4e42362a2527333f4b57636e7a86929eaaa69a8e82766a5f53473b2f23180c0000000000000000000000000013202c3946535f6c798693a0aca194887b6e615448414d5965717d8994a0a89c9185796d615554606c7884909ca89c9084786c615549424f5b6875828f9ca8a69a8d807366594d4033261a0d000000010910161a1e2633404d596673808d9aa6b2a6998c7f7265594c3f3226202020202020202020201f1c18130d0d17222d38434f5b66727e8a96a2aeaa9e9286796d6154483c2f23170a00000b1824303c4854606c77838d97a19b9188817b7875737170706f6f6f727e8c98a59a8e8174675a4d4134271a0e01000000000000000000000000030e18222c364049525b646c757c848b92999fa4a9aaa4a09c989593918f8e8e8e8e8f90919396999ca0a5aaa6a19b958e87807870685f574d443b31271d13090000000000000000000000000000000000000000000000030f1b27333f4b56626e7a86929ea9b5aca094887c7064594d4135291d11050000000000000000000000000000000013202c3946535f6c798693a0acada09386796d6053463a2d201307000000000000000000000000000815212e3b4854616e7b8894a1aeaa9e9184776a5d5144372a1e110013202c3946535f6c798693a0acada09386796d6053463a2d201307000000000000000000000000000815212e3b4854616e7b8894a1aeaa9e9184776a5d5144372a1e110013202c3946535f6c798693a0acada09386796d6053463a2d201307000000000000000000000000000815212e3b4854616e7b8894a1aeaa9e9184776a5d5144372a1e11000000000000000000000815212e3b4854616e7b8894a1aeab9e9285786b5e5145382b1e1205000000000000000000000f1c2935424f5b6874818e988b7e7265594d404c5966727e8b989f93867a6d6155483c3025191312131a25303b464f565a5b5754504d49453f382f36424f5b6874818d978a7d7164584b3e3225180c00000000000000000000000a1724303d4a5763707d8a97a4978a7d7063574a3d30241926323f4c5965727f8c999e9285786b5e65717d89959e92867a6e7985919d92877b6f635e6b7885929e988b7e7165584b3e3225180b00101c2936434f5c69757b7b7b7b8793988b7e7164584b3e3225180b0000000000030f1b2834404c5965717d8a96a2a99c9084776b5e5246392d2733404c5865717d8a96a2988c807a8794a09b8e8275695d5044382b2834414d5966727e8b97a3a79b8e82766a5d5145392c20140800000013202c3946535f6c798693a0acaca09386796c6069727c858e97a0a89f968d837a71685f564d433a31281f160d040000000000000000000000000000000000000000000000000000000000000000000004101c28343f4b57636f7a86929eaaa69a8e82766a5e52473b2f232c38444f5b67737f8b97a3ada195897d71665a4e42362b1f13070000000000000000000000000013202c3946535f6c798693a0aca194887b6e61544846525d6975818d99a5a4988c8074685c50505c6874808c98a4a195897d7165594d424f5b6875828f9ca8a69a8d807366594d4033261a0d0000010a131a21262a2c33404d596673808d9aa6b2a6998c7f7265594c3f322c2c2c2c2c2c2c2c2c2c2c2b29241e170f101c27333e4a56626e7a86929fabaea295897d7064584b3f3226190d00000814202c38444f5b66717b858f979e9a938c888481807e7d7d7c7c7b7b7e8c98a59a8e8174675a4d4134271a0e010000000000000000000000000b15202a343e48525b646d767e878e969da4aaaaa49e9994908c898684838281818182838587898c9094999ea4aaa6a099928a827a71695f564d43392f251b1006000000000000000000000000000000000000000000000814202c38434f5b67737e8b96a2aeb8b0a5998d8175695d5145392d22160a0000000000000000000000000000000013202c3946535f6c798693a0acada09386796d6053463a2d201307000000000000000000000000000815212e3b4854616e7b8894a1aeaa9e9184776a5d5144372a1e110013202c3946535f6c798693a0acada09386796d6053463a2d201307000000000000000000000000000815212e3b4854616e7b8894a1aeaa9e9184776a5d5144372a1e110013202c3946535f6c798693a0acada09386796d6053463a2d201307000000000000000000000000000815212e3b4854616e7b8894a1aeaa9e9184776a5d5144372a1e11000000000000000000000815212e3b4854616e7b8894a1aeab9e9285786b5e5145382b1e1205000000000000000000000e1a2734404d5966727f8b988e8175685c50434a5763707c8995a296897d7165594d41362b23201e1f242c36414d5861676764605c5955514941363945525e6a77839094887b6f6256493c3023170a00000000000000000000000a1724303d4a5763707d8a97a4978a7d7063574a3d30241926323f4c5965727f8c999e9285786b5e6a76828e99998d81756975818d99978b8074685e6b7885929e988b7e7165584b3e3225180b00101c2936434f5c6976838888888b95988b7e7265584c3f3225190c000000000006121f2b3744505c6875818d9aa6a6998d8174685b4f43362a24303c4955616e7a87939f9b8f827d8a96a3978b7e72665a4d41342825313d4a56626f7b8794a0aa9e9286796d6155483c3024170b00000013202c3946535f6c798693a0acaca09386796c5f606a737c858e98a1a89f958c837a71685f564d433a31281f160d04000000000000000000000000000000000000000000000000000000000000000000000b17232f3b46525e6a76828d99a5aa9e93877b6f63574b3f3328303c4854606c7884909ba7a89c9085796d6155493d32261a0e020000000000000000000000000013202c3946535f6c798693a0aca194887b6e6154484a56626e7a86929ea99f93877b7064584c4b57636f7b87939fa5998d82766a5e52464f5b6875828f9ca8a69a8d807366594d4033261a0d000009131c252c32373939404d596673808d9aa6b2a6998c7f7265594c3f3939393939393939393939393835302921180e16222e3a46525e6a76838f9ba8b1a5998c8073675a4e4135281c0f020004101c27333e4a555f6a737c858c93989d9894908e8c8b8a8a89898888888e9aa69a8e8174675a4d4134271a0e01000000000000000000000007121c27313c46505a646d7680889099a0a8aea69f99938d8884807c7a7776757474747576787a7d8084888d93999fa6aba49c948c847b71685f554b41372d22170d020000000000000000000000000000000000000000010d1925303c4854606c77838f9ba7aeacada99d9185796e62564a3e32261a0e0200000000000000000000000000000013202c3946535f6c798693a0acada09386796d6053463a2d201307000000000000000000000000000815212e3b4854616e7b8894a1aeaa9e9184776a5d5144372a1e110013202c3946535f6c798693a0acada09386796d6053463a2d201307000000000000000000000000000815212e3b4854616e7b8894a1aeaa9e9184776a5d5144372a1e110013202c3946535f6c798693a0acada09386796d6053463a2d201307000000000000000000000000000815212e3b4854616e7b8894a1aeaa9e9184776a5d5144372a1e11000000000000000000000815212e3b4854616e7b8894a1aeab9e9285786b5e5145382b1e1205000000000000000000000c1825313e4a5763707c89959184786c5f53474854616d7986929e998d8175695e52473d352f2c2b2c2f353e48535e697373706c6965625b52483d3d4955616e7a86939185796c6053473a2e21150800000000000000000000000a1724303d4a5763707d8a97a4978a7d7063574a3d30241926323f4c5965727f8c999e9285786b636e7a86929e94887c7165707c88949c9084786d616b7885929e988b7e7165584b3e3225180b00101c2936434f5c697683909595969d988c7e7265584c3f3225190c00000000000a16222e3b4753606c7885919da9a3968a7d7165584c403327212d3946525e6b7783909c9e9185808c99a194887b6f63564a3e3125212e3a47535f6c7884919da9a296897d7164584c4033271b0f02000013202c3946535f6c798693a0acaca09386796c5f57616a737c868f98a1a89e958c837a71685f554c433a31281f160d0400000000000000000000000000000000000000000000000000000000000000000006121e2a36424d5965717d8894a0aca3978b8073685c5044382c35414d5965707c8894a0aca3978c8074685c5044392d211509000000000000000000000000000013202c3946535f6c798693a0aca194887b6e6154484f5b67727e8a96a2a79b8f83776b5f534747535f6b77838f9ba79e92867a6e62564a4f5b6875828f9ca8a69a8d807366594d4033261a0d0005101a252e373e434646464d596673808d9aa6b2a6998c7f7265594c4646464646464646464646464645413a332a2015111d2935424e5a6773808c98a5b1a89b8f8276695d5043372a1e110400000b16222d38434d58616a737b82888c919496989999989796969695959498a0a79a8e8174675a4d4134271a0e0100000000000000000000020d18232e39434e58626c767f89929aa2aaaca49c958e87827c7773706d6b6968676767686a6b6e7074787c82878e959ca4aca69e968d847a71675d53493e34291e1309000000000000000000000000000000000000000006121d2935414d5965707c8894a0aaa39fa0a6a2968a7e72665a4e43372b1f130700000000000000000000000000000013202c3946535f6c798693a0acada09386796d6053463a2d201307000000000000000000000000000815212e3b4854616e7b8894a1aeaa9e9184776a5d5144372a1e110013202c3946535f6c798693a0acada09386796d6053463a2d201307000000000000000000000000000815212e3b4854616e7b8894a1aeaa9e9184776a5d5144372a1e110013202c3946535f6c798693a0acada09386796d6053463a2d201307000000000000000000000000000815212e3b4854616e7b8894a1aeaa9e9184776a5d5144372a1e11000000000000000000000815212e3b4854616e7b8894a1aeab9e9285786b5e5145382b1e1205000000000000000000000916222f3b4854606d79869294887b6f63574b45515d6976828e9a9d91867a6f64594f47403b3938393b4047505a646f7a807c7875716d64594d41414d5965717d8a968e8276695d5044382b1f120600000000000000000000000a1724303d4a5763707d8a97a4978a7d7063574a3d30241926323f4c5965727f8c999e9285786b67737f8b979b8f84786c606c78848f9b95897d71666b7885929e988b7e7165584b3e3225180b00101c2936434f5c697683909ca2a3a5988c7e7265584c3f3225190c00000000010d1926323e4a57636f7b8894a0aca093877a6e6255493d30241d2a36424f5b6774808c99a19488838f9b9e9185786c6053473b2e221e2b3743505c6875818d9aa6a5998d8174685c4f43372b1e1206000013202c3946535f6c798693a0acaca09386796c5f5358616a737d868f98a2a79e958c837a71675e554c433a31281f160c030000000000000000000000000000000000000000000000000000000000000000020e1925313d4854606c78848f9ba7a89c9084786c6054493d313a46515d6975818d99a5aa9e93877b6f63574c4034281c1005000000000000000000000000000013202c3946535f6c798693a0aca194887b6e615448535f6b77838f9ba7a2968a7e72665a4f43424e5a66727e8a96a2a2968b7e73675b4f4f5b6875828f9ca8a69a8d807366594d4033261a0d000a16212c3740484f52535353596673808d9aa6b2a6998c7f7265595353535353535353535353535353514c453c32271c101926323e4b5764707d8996a2afaa9e9185786b5f5245392c201306000005111c27313c464f58616970767c8184878a8b8c8d8d8e8e8e8e8f8f8f949da79a8e8174675a4d4134271a0e010000000000000000000008131f2a353f4a555f6a747e88919ba4acaba29a928a837c76706c6764615e5d5b5b5b5b5c5d5f6164686c71767c838a929aa2aba89f968c83796f655a50453b30251a0f04000000000000000000000000000000000000000a16222e3a46525d6975818d99a5a19892949da69a8f83776b5f53473b2f23180c00000000000000000000000000000013202c3946535f6c798693a0acada09386796d6053463a2d201307000000000000000000000000000815212e3b4854616e7b8894a1aeaa9e9184776a5d5144372a1e110013202c3946535f6c798693a0acada09386796d6053463a2d201307000000000000000000000000000815212e3b4854616e7b8894a1aeaa9e9184776a5d5144372a1e110013202c3946535f6c798693a0acada09386796d6053463a2d201307000000000000000000000000000815212e3b4854616e7b8894a1aeaa9e9184776a5d5144372a1e11000000000000000000000815212e3b4854616e7b8894a1aeab9e9285786b5e5145382b1e12050000000000000000000007131f2c3845515d6976828e988c8074685c50454d5966717d8995a0978b80756b6159514b48454545474c5159626b76818c8885817e76695d504346525e6a76828e978b7e72665a4d4135281c0f0300000000000000000000000a1724303d4a5763707d8a97a4978a7d7063574a3d30241926323f4c5965727f8c999e9285786b6c7884909c978b7f73675b67737f8b979a8e82766b6b7885929e988b7e7165584b3e3225180b00101c2936434f5c697683909ca9afa5988c7e7265584c3f3225190c0000000004101d2935424e5a66737f8b98a4a99d9084776b5f5246392d211a26333f4b5864707d8995a2978d8a939e9a8e8275695c5044372b1f1b2734404c5965727e8a97a3a99d9084786b5f53473a2e221609000013202c3946535f6c798693a0acaca09386796c5f534f58616b747d879099a2a79e958c837970675e554c433a31281e150c0300000000000000000000000000000000000000000000000000000000000000000914202c3844505b67737f8b96a2aca095897d7165594d41353e4a56626e7a86929da9a69a8e82766a5f53473b2f23180c00000000000000000000000000000013202c3946535f6c798693a0aca194887b6e61544c5864707c88949fa99d92867a6e62564a3e3e4a56626e7a86929ea79b8f83776b5f534f5b6875828f9ca8a69a8d807366594d4033261a0d000e1a26323e48525a5f5f5f5f5f6673808d9aa6b2a6998c7f72655f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5d574e43382d211516232f3c4855616e7a8794a0adaca093867a6d6054473a2e2114080000030e1a242f3840474f575e656b7074787b7d7e808181818182828282838c99a59a8e8174675a4d4134271a0e01000000000000000000030e1925303b46515c67717b86909aa3adaba29990888078716b65605b575452504f4e4e4e4f505255585b60656b717880889099a2aba89e958b81776c62574c41362b201509000000000000000000000000000000000000030f1b27333f4a56626e7a86929da99c90868b96a29f93877b6f63584c4034281c1004000000000000000000000000000013202c3946535f6c798693a0acada09386796d6053463a2d201307000000000000000000000000000815212e3b4854616e7b8894a1aeaa9e9184776a5d5144372a1e110013202c3946535f6c798693a0acada09386796d6053463a2d201307000000000000000000000000000815212e3b4854616e7b8894a1aeaa9e9184776a5d5144372a1e110013202c3946535f6c798693a0acada09386796d6053463a2d201307000000000000000000000000000815212e3b4854616e7b8894a1aeaa9e9184776a5d5144372a1e11000000000000000000000815212e3b4854616e7b8894a1aeab9e9285786b5e5145382b1e12050000000000000000000004101c2935414d5a66727e8a969084786d61564a4955616d78848f9a9d92877d736b635c575452515254575c636b747d889295918a7e73685c4f424c57636e7a869293877a6e62564a3e3125190c0000000000000000000000000a1724303d4a5763707d8a97a4978a7d7063574a3d30241926323f4c5965727f8c999e9285786b717d89949e92867a6e6257636e7a86929e93877b6f6b7885929e988b7e7165584b3e3225180b00101c2936434f5c697683909ca9b2a5988c7e7265584c3f3225190c000000000814202d3945515e6a76838f9ba7a6998d8174685c4f43362a1e1723303c4855616d7986929f9f98969ba4978b7e7266594d4134281c1824313d4956626e7b8793a0aca094887b6f63564a3e3225190d010013202c3946535f6c798693a0acaca09386796c5f53464f59626b747d879099a2a79e958c837970675e554c433a30271e150c030000000000000000000000000000000000000000000000000000000000000004101c27333f4b56626e7a86929da9a5998d81756a5e52463a434f5b67727e8a96a2ada195897d71665a4e42362a1f130700000000000000000000000000000013202c3946535f6c798693a0aca194887b6e6154515c6874808c98a4a5998d8175695d51453a3a45515d6975818d99a5a094887c7064584f5b6875828f9ca8a69a8d807366594d4033261a0d00111e2a37434f5a646b6c6c6c6c6c73808d9aa6b2a6998c7f726c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c686055493d31241814202d3946535f6c7885929eabaea195887b6f6255483c2f221609000008141f2b36404a5257595a5b5f64686b6e70727373747474757575757e8c98a59a8e8174675a4d4134271a0e0100000000000000000008141f2a36414c58636d78838d98a2acada39990877e766e666059544f4b48454342414141424446484b4f545a60666e767e879099a3ada79d93897e73695e53483d31261b0f0400000000000000000000000000000000000814202c37434f5b67737e8a96a2a5998d8186929ea4988c8074685c5044382d211509000000000000000000000000000013202c3946535f6c798693a0acada09386796d6053463a2d201307000000000000000000000000000815212e3b4854616e7b8894a1aeaa9e9184776a5d5144372a1e110013202c3946535f6c798693a0acada09386796d6053463a2d201307000000000000000000000000000815212e3b4854616e7b8894a1aeaa9e9184776a5d5144372a1e110013202c3946535f6c798693a0acada09386796d6053463a2d201307000000000000000000000000000815212e3b4854616e7b8894a1aeaa9e9184776a5d5144372a1e11000000000000000000000815212e3b4854616e7b8894a1aeab9e9285786b5e5145382b1e120500000000000000000000000d1925313d4956626e79859195897d72665b5045505c67737e89949e998f867c746e6863605f5e5f6064686e757d868f99998e84786d62574b47525d6874808b978e82766a5e52463a2e2215090000000000000000000000000a1724303d4a5763707d8a97a4978a7d7063574a3d30241926323f4c5965727f8c999e9285786b75818d99998d81756a5e525e6a75818d99988c80746b7885929e988b7e7165584b3e3225180b00101c2936434f5c697683909ca9aca5988c7e7265584c3f3225190c000000000b1724303c4855616d7a86929eaba3968a7d7165584c4033271b14202c3945515e6a76838f9ba8a4a3a6a094887b6f63564a3e31251815212d3a46525f6b7784909da9a4978b7e73665a4e4135291d10040013202c3946535f6c798693a0acaca09386796c5f5346475059626b757e879099a3a79e958c827970675e554c423930271e150c03000000000000000000000000000000000000000000000000000000000000000b17222e3a46525d6975818d99a4aa9e92867a6e62564b3f48535f6b77838f9ba7a89c9084786d6155493d31261a0e0200000000000000000000000000000013202c3946535f6c798693a0aca194887b6e615455616d7985919da9a094887c7165594d413535414d5965717d8995a0a4988c8074685c515b6875828f9ca8a69a8d807366594d4033261a0d00131f2c3946525f6b76797979797979808d9aa6b2a6998c7f79797979797979797979797979797979797165594c40332619121e2b3844515e6a7784909daaafa396897c706356493d3023170a00000b1824303c47525c6366676868696a6b6864656667676767686868727e8c98a59a8e8174675a4d4134271a0e010000000000000000010d1924303c47525e69747f8a959faaafa59b91877e756c645c554e48433f3b3937353434353537393c3f44494e555c646c757e87919ba5afa59a90857a6f64594e42372c20150900000000000000000000000000000000010d1924303c4854606c77838f9ba7a195897c828e9aa69c9085786d6155493d3125190d020000000000000000000000000013202c3946535f6c798693a0acada09386796d6053463a2d201307000000000000000000000000000815212e3b4854616e7b8894a1aeaa9e9184776a5d5144372a1e110013202c3946535f6c798693a0acada09386796d6053463a2d201307000000000000000000000000000815212e3b4854616e7b8894a1aeaa9e9184776a5d5144372a1e110013202c3946535f6c798693a0acada09386796d6053463a2d201307000000000000000000000000000815212e3b4854616e7b8894a1aeaa9e9184776a5d5144372a1e11000000000000000000000815212e3b4854616e7b8894a1aeab9e9285786b5e5145382b1e120500000000000000000000000915212d3945515d6975818c988f83786c61564b4b56616c77828c969f988f877f7974706d6b6b6b6d70747980878f989b91877c72675c51454d58636e7a859195897d72665a4e42362a1e12060000000000000000000002020a1724303d4a5763707d8a97a4978a7d7063574a3d30241926323f4c5965727f8c999e9285786e7a86929e94897d7165594d5965717c88949c9185796d7885929e988b7e7165584b3e3225180b00101c2936434f5c697683909ca0a0a0988c7e7265584c3f3225190c000000000f1b2733404c5864717d8996a0a0a093877a6e6255493d302417101d2935424e5a6773808c98a0a0a0a09d9185786c5f53473a2e2215121e2a37434f5c6874818d99a0a09b8f82766a5d5145392c2014080013202c3946535f6c798693a0acaca09386796c5f53463e475059626c757e87919aa3a79e948b827970675e544b423930271e150c0300000000000000000000000000000000000000000000000000000000000006121e2935414d5964707c8894a0aba2978b7f73675b4f434c5864707c88949faba3978b8074685c5044392d2115090000000000000000000000000000000013202c3946535f6c798693a0aca194887b6e61545a66727d8995a1a79c9084786c6054483c30313c4854606c7884909ca89d9185796d61555b6875828f9ca8a69a8d807366594d4033261a0d0013202c3946535f6c79868686868686868e9aa7b3a69a8e8686868686868686868686868686868686807366594d4033261a101d2a3643505d697683909ca9b0a4978a7d7164574a3e3124170b00000d1a2733404c58646e7373747576777872675a595a5a5a5b5b5b65727e8c98a59a8d8174675a4d4134271a0e01000000000000000006121e2935414c58636f7a85919ba6b1a89e93897f756c635a524a433d38332f2c2a29282828292a2d2f33383d434a525a636c758089949ea9aca1978c81766a5f54483d31251a0e0200000000000000000000000000000006121d2935414d5964707c8894a0a99d9185787d8a96a2a195897d7165594e42362a1e12060000000000000000000000000013202c3946535f6c798693a0acada09386796d6053463a2d201307000000000000000000000000000815212e3b4854616e7b8894a1aeaa9e9184776a5d5144372a1e110013202c3946535f6c798693a0acada09386796d6053463a2d201307000000000000000000000000000815212e3b4854616e7b8894a1aeaa9e9184776a5d5144372a1e110013202c3946535f6c798693a0acada09386796d6053463a2d201307000000000000000000000000000815212e3b4854616e7b8894a1aeaa9e9184776a5d5144372a1e11000000000000000000000815212e3b4854616e7b8894a1aeab9e9285786b5e5145382b1e1205000000000000000000000005111d2935414d5864707b879294897e73685d5248505b65707a848d969e98918a84807c7a7878787a7c80858a91999a92897f756b60564b4a545f6a75808b968f84786d6155493d32261a0e0200000000000001060a0d0e0f0f1724303d4a5763707d8a97a4978a7d7063574a3d30241926323f4c5965727f8c999e928578727e8a969c9084786c60544854606c78848f9b958a7e727885929e988b7e7165584b3e3225180b00101c2936434f5c6976839093939393938c7e7265584c3f3225190c00000000111e2a37434f5c6874818d939393939084776b5f5246392d21140d1926323e4b5763707c899393939393938e8275695c5044372b1f120e1b2733404c5865717d8a939393939286796d6155483c3023170a0013202c3946535f6c798693a0acaca09386796c5f5346393e47505a636c757e88919aa3a69d948b827970665d544b423930271e150b020000000000000000000000000000000000000000000000000000000000010d1925303c4854606b77838f9ba7a79b8f83776c605448515d6974818c98a4aa9e93877b6f63574c4034281c10040000000000000000000000000000000013202c3946535f6c798693a0aca194887b6e61545e6a76828e9aa6a3978b7f73675b5044382c2c3844505c6874808c97a3a195897d71655a5b6875828f9ca8a69a8d807366594d4033261a0d0013202c3946535f6c798693939393939397a0abb6aa9f97939393939393939393939393939393938d807366594d4033261a0f1c2936424f5c6875828f9ca8b1a4988b7e7164574b3e3124180b00000e1b2834414e5b67748081818283848275695c504d4d4e4e4e5966737f8c99a59a8d8073675a4d4034271a0d0100000000000000000b17222e3a46525d6975808c97a2adaca1978c82776d635a51484039322c2723201d1c1b1b1b1c1e2023272c32384048515a636d77828d97a2ada89d92877b7065594d42362a1e12070000000000000000000000000000000a16222e3a46515d6975818d99a4a5998c81747985919da59a8e82766a5e52463a2e22170b0000000000000000000000000013202c3946535f6c798693a0acada09386796d6053463a2d201307000000000000000000000000000815212e3b4854616e7b8894a1aeaa9e9184776a5d5144372a1e110013202c3946535f6c798693a0acada09386796d6053463a2d201307000000000000000000000000000815212e3b4854616e7b8894a1aeaa9e9184776a5d5144372a1e110013202c3946535f6c798693a0acada09386796d6053463a2d201307000000000000000000000000000815212e3b4854616e7b8894a1aeaa9e9184776a5d5144372a1e11000000000000000000000815212e3b4854616e7b8894a1aeab9e9285786b5e5145382b1e12050000000000000000000000010d1824303c48535f6a76818c988f84796f645a5049545e68727b848c949b9c95908c898685858586898c90969c98918980766d63594f47515c66717b8691958a7e73675c5044392d211509000000000000050c1216191b1b1b1b24303d4a5763707d8a97a4978a7d7063574a3d30241b26323f4c5965727f8c999e92857877838f9b978b7f73675c50444f5b67737e8a969a8e83777885929e988b7e7165584b3e3225180b00101c2936434f5c697683868686868686867e7265584c3f3225190c0000000013202c3946525f6b78848686868686868174685c4f43362a1e110a16232f3b4754606d7985868686868686867e7265594d4034281b0f0b1724303d4955626e7a868686868686867d7164584b3e3225180c0013202c3946535f6c798693a0acaca09386796c5f534639353e48515a636c767f88919ba4a69d948b82786f665d544b423930271d140b0200000000000000000000000000000000000000000000000000000000000814202c37434f5b67727e8a96a2aca094887c7064584c55616d7985919da9a59a8e82766a5e53473b2f23170c000000000000000000000000000000000013202c3946535f6c798693a0aca194887b6e6157636f7b87939eaa9e92877b6f63574b3f332728333f4b57636f7b87939fa69a8e82766a5e5b6875828f9ca8a69a8d807366594d4033261a0d0013202c3946535f6c798693a0a0a0a0a0a2a9b2bcb1a8a2a0a0a0a0a0a0a0a0a0a0a0a0a0a0a09a8d807366594d4033261a0f1c2835424f5b6875828e9ba8b1a4988b7e7165584b3e3225180b00000d1a2733404d5966727e8b8e8f909084786c60544c4a494a505c6875818e9aa5988c7f7266594c403326190d0000000000000000030f1b27333f4b57626e7a86919da8b2a69b90857a70655b51483f362e27201b1713110f0e0e0e0f1114171b21272e363f48515b66707b86919ca8afa3988d81766a5e52473b2f23170b0000000000000000000000000000030f1b27333f4a56626e7a86919da9a194887c7075818d99a59e92867a6e63574b3f33271b0f0300000000000000000000000013202c3946535f6c798693a0acada09386796d6053463a2d201307000000000000000000000000000815212e3b4854616e7b8894a1aeaa9e9184776a5d5144372a1e110013202c3946535f6c798693a0acada09386796d6053463a2d201307000000000000000000000000000815212e3b4854616e7b8894a1aeaa9e9184776a5d5144372a1e110013202c3946535f6c798693a0acada09386796d6053463a2d201307000000000000000000000000000815212e3b4854616e7b8894a1aeaa9e9184776a5d5144372a1e11000000000000000000000815212e3b4854616e7b8894a1aeab9e9285786b5e5145382b1e120500000000000000000000000008141f2b37424e5965707b8691968b81766c61584e4c566069727a828990959a9c9895939292929395989c99938d867e766e645b51475059636d78828d988e83786d61564b3f34281c10050000000000070f171d22262828282828303d4a5763707d8a97a4978a7d7063574a3d30282828323f4c5965727f8c999e9285787b87939e92867a6e63574b3f4a56626e7a86919d93877b7885929e988b7e7165584b3e3225180b00101c2936424f5c68747979797979797979797064584b3e3225180c00000000131f2c3946525f6b7679797979797979797165594c4033271b0e07131f2c3844515d69757979797979797979786e62564a3d3125180c0814212d3946525e6b7679797979797979797064584b3e3225180c0013202c3946535f6c798693a0acaca09386796c5f5346392c363f48515a646d768089929ba4a69d948b82786f665d544b42392f261d140b0200000000000000000000000000000000000000000000000000000000030f1b27333e4a56626e7985919da9a4988d8175695d515a66727e8a96a1ada195897d71655a4e42362a1e1307000000000000000000000000000000000013202c3946535f6c798693a0aca194887b6e615c6773808b97a3a69a8e82766a5e52463b2f23232f3b47535f6b77838e9aa69e92867a6e635b6875828f9ca8a69a8d807366594d4033261a0d0013202c3946535f6c798693a0a6a6a6a6a8aeb6bfb5ada8a6a6a6a6a6a6a6a6a6a6a6a6a6a6a69a8d807366594d4033261a0f1c2835424f5b6875828e9ba8b1a5988b7e7165584b3e3225180b00000c1825313e4a56636f7b87939b9c94887c71665d585656575a626d7884909da296897d7064574b3e3125180b000000000000000006131f2b37434f5b67737f8b96a2aeaca1958a7e73695e53493f362d241c150f0b0704010000000205070b10151c242d36404a545f6974808b96a2aea99e92877b6f63574b3f33271b0f03000000000000000000000000000814202b37434f5b67737e8a96a2a89c9084786c717d8995a1a3978b7f73675b4f43382c20140800000000000000000000000013202c3946535f6c798693a0acada09386796d6053463a2d201307000000000000000000000000000815212e3b4854616e7b8894a1aeaa9e9184776a5d5144372a1e110013202c3946535f6c798693a0acada09386796d6053463a2d201307000000000000000000000000000815212e3b4854616e7b8894a1aeaa9e9184776a5d5144372a1e110013202c3946535f6c798693a0acada09386796d6053463a2d201307000000000000000000000000000815212e3b4854616e7b8894a1aeaa9e9184776a5d5144372a1e11000000000000000000000815212e3b4854616e7b8894a1aeab9e9285786b5e5145382b1e1205000000000000000000000000030f1a26313d48535f6a75808b9592887d736960564d4e57606870787e848a8e92959798999999989694918d88827b746d645c52494f58626b75808a9492887d72675c50453a2e23170b000000000006101921282e323535353535353d4a5763707d8a97a4978a7d7063574a3d35353535353f4c5965727f8c999e928578808c98998d82766a5e52463a46525d6975818d98988c817885929e988b7e7165584b3e3225180b000e1b2733404c57626a6c6c6c6c6c6c6c6c6c685f54483c3023170a00000000111e2a37434f5a646b6c6c6c6c6c6c6c6c685f54493d3024180b03101c2835414d58636a6c6c6c6c6c6c6c6c6c675d52463a2e21150905111d2a36424e5a646b6c6c6c6c6c6c6c6c685f54483c3023170a0013202c3946535f6c798693a0acaca09386796c5f5346392c2d363f48525b646d768089929ba4a69d948b81786f665d544b42392f261d140b02000000000000000000000000000000000000000000000000000000000a16222e3a45515d6975818c98a4a99d9185796d62565f6b76828e9aa6a89c9084786d6155493d31261a0e02000000000000000000000000000000000013202c3946535f6c798693a0aca194887b6e61606c7884909ca8a195897d71665a4e42362a1e1f2a36424e5a66727e8a96a2a3978b7f73675b6875828f9ca8a69a8d807366594d4033261a0d0013202c3946535f6c79869399999999999ca4aeb8ada39c999999999999999999999999999999998d807366594d4033261a0f1c2936424f5c6875828f9ca8b1a4988b7e7164574b3e3124180b00000915222e3b47535f6b77838e99a4998d82786f6965636364666b747e8995a19d9286796d6155483c2f23160a00000000000000000a16222f3b47535f6b77848f9ba7b3a79b8f84786d62574c42372d241b120b040000000000000000000000040b121b242e38424d58636e7a85919da9afa3978b8073675b4f43372b1f1206000000000000000000000000010d1924303c4854606b77838f9ba7a4988c8074686c7885919da79b9084786c6054483c3024180d01000000000000000000000013202c3946535f6c798693a0acada09386796d6053463a2d201307000000000000000000000000000815212e3b4854616e7b8894a1aeaa9e9184776a5d5144372a1e110013202c3946535f6c798693a0acada09386796d6053463a2d201307000000000000000000000000000815212e3b4854616e7b8894a1aeaa9e9184776a5d5144372a1e110013202c3946535f6c798693a0acada09386796d6053463a2d201307000000000000000000000000000815212e3b4854616e7b8894a1aeaa9e9184776a5d5144372a1e11000000000000000000000815212e3b4854616e7b8894a1aeab9e9285786b5e5145382b1e1205000000000000000000000000000915202b37424d58636e79848e988f857b72685f564e4e565e666d73797e8285888a8b8c8c8c8b8a8785817c77716a635b524a5058616a747d8791968b81766b60554a3f34281d120600000000020d18222b333a3f414242424242424a5763707d8a97a4978a7d7063574a424242424242414c5965727f8c999e92857884909c95897d7165594d4236414d5964707c88949d91857985929e988b7e7165584b3e3225180b000b17232f3b4650585e5f5f5f5f5f5f5f5f5f5d564d42372c201407000000000e1a26323e48525a5f5f5f5f5f5f5f5f5f5d564d43382c201408000c1925303c4751595e5f5f5f5f5f5f5f5f5f5c554b41352a1e1206020e1a26323d48525a5f5f5f5f5f5f5f5f5f5d564d42372c2014070013202c3946535f6c798693a0acaca09386796c5f5346392c242d364049525b646d768089929ca5a69d948a81786f665d544b41382f261d140b0200000000000000000000000000000000000000000000000000000006111d2935414c5864707c87939faba2968a7e72665a636f7b87939faba3978b8074685c5044392d21150900000000000000000000000000000000000013202c3946535f6c798693a0aca194887b6e6165717c8994a0a89d9185796d6155493d31251a1a26323e4a56626e7986919da79b9084786c606875828f9ca8a69a8d807366594d4033261a0d0013202c3946535f6c79868c8c8c8c8c8c929ca8b4a89c918c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c807366594d4033261a101d2a3643505c6976838f9ca9b0a4978a7d7164574a3e3124170b000006121e2b37434f5b66727d88939c9f948a817a7571706f7072777d86909aa2978c8175695d5145392c20140700000000000000010d1a26323f4b57636f7b8894a0acaea2968a7e73675c51463b30261b120900000000000000000000000000000009121c26313b47525d6975818c98a4b0a89c9084786b5f53473b2e22160900000000000000000000000006111d2935414d5864707c8894a0aba094887c70646874808c98a4a094887c7064584d4135291d1105000000000000000000000013202c3946535f6c798693a0acada09386796d6053463a2d201307000000000000000000000000000815212e3b4854616e7b8894a1aeaa9e9184776a5d5144372a1e110013202c3946535f6c798693a0acada09386796d6053463a2d201307000000000000000000000000000815212e3b4854616e7b8894a1aeaa9e9184776a5d5144372a1e110013202c3946535f6c798693a0acada09386796d6053463a2d201307000000000000000000000000000815212e3b4854616e7b8894a1aeaa9e9184776a5d5144372a1e11000000000000000000000815212e3b4854616e7b8894a1aeab9e9285786b5e5145382b1e120500000000000000000000000000040f1a26313c47525c67727c8791978e847a71686058504d545b62686d7276797b7d7e8080807e7d7b7875706b655f58514a5159626a737c868f988e84796f645a4f44392e23170c010000000008141f2a343d454b4e4e4e4e4e4e4e4e5763707d8a97a4978a7d7063574e4e4e4e4e4e4e4e4c5965727f8c999e92857d89959c9084786c6055493d313c48545f6b77838f9b968a7e85929e988b7e7165584b3e3225180b0007131e29343e464d52535353535353535353514b443b31261b0f03000000000a16212c3740484f525353535353535353514c443b31261b10040008141f2a353f474e52535353535353535353504a43392f24190d02000a15212c3640484f525353535353535353514b443b31261b0f030013202c3946535f6c798693a0acaca09386796c5f5346392c20242e374049525b656e77808a939ca5a69d948a81786f665d534a41382f261d140b020000000000000000000000000000000000000000000000000000010d1824303c48535f6b77838e9aa6a69a8e82766a5e6874808c98a3aa9e92877b6f63574b4034281c100400000000000000000000000000000000000013202c3946535f6c798693a0aca194887b6e616975818d99a5a4988c8074685c5145392d211516212d3945515d6975818d99a5a094887c70646875828f9ca8a69a8d807366594d4033261a0d0013202c3946535f6c797f7f7f7f7f7f808d9aa6b2a6998c7f7f7f7f7f7f7f7f7f7f7f7f7f7f7f7f7f7f7366594d4033261a121e2b3844515e6a7784909daaafa396897c7063564a3d3023170a0000020e1a26323e4a55606b76818a949c9c938b85817e7c7c7d7f83888f98a19990867b7064594d4135291d10040000000000000004101d2935424e5a6773808c98a4b0aa9e92867a6e62564b3f34291e140a00000000000000000000000000000000000a141f2a35414c5864707c8894a0acaca094887b6f63574a3e3225190d0000000000000000000000000a16222e3a46515d6975818d98a4a89c9084786c6064707c8894a0a5998d8175695d5145392d22160a000000000000000000000013202c3946535f6c798693a0acada09386796d6053463a2d201307000000000000000000000000000815212e3b4854616e7b8894a1aeaa9e9184776a5d5144372a1e110013202c3946535f6c798693a0acada09386796d6053463a2d201307000000000000000000000000000815212e3b4854616e7b8894a1aeaa9e9184776a5d5144372a1e110013202c3946535f6c798693a0acada09386796d6053463a2d201307000000000000000000000000000815212e3b4854616e7b8894a1aeaa9e9184776a5d5144372a1e11000000000000000000000815212e3b4854616e7b8894a1aeab9e9285786b5e5145382b1e1205000000000000000000000000000009141f2a35404b55606a757f8993968d837a726a615a524c50575c6166696c6f717273737372706e6c6864605a544e4d545c636b747c858e9890867c72685d53483d32271c110600000000000d1925303b464f565a5b5b5b5b5b5b5b5b63707d8a97a4978a7d70635b5b5b5b5b5b5b5b5b585965727f8c999f9285818d99978b8073685c5044382c37434f5b67727e8a969a8e8285929e988b7e7165584b3e3225180b00020d18222c353c424546464646464646464644403a32291f140a000000000005101a252e373e4346464646464646464644403a32291f150a0000030e19232d353d4245464646464646464646443f3931271d13080000040f1a242e363d4346464646464646464644403a32291f140a000013202c3946535f6c798693a0acaca09386796c5f5346392c201b252e374049535c656e77818a939ca6a59c938a81786f655c534a41382f261d140a01000000000000000000000000000000000000000000000000000008141f2b37434f5a66727e8a95a1ab9f93877b6f636c7884909ca8a59a8e82766a5e52473b2f23170b0000000000000000000000000000000000000013202c3946535f6c798693a0aca194887b6e626e7a86929ea99f93887b7064584c4034281c10111d2935414d5965717c8894a0a4998d8175696875828f9ca8a69a8d807366594d4033261a0d00121f2b3844515d6871727272727273808d9aa6b2a6998c7f72727272727272727272727272727272726d63574b3f32251914202d3946535f6c7885929eabaea195887b6f6255493c2f2216090000000a16222d39444f5a646f78828a92999d96918d8b89898a8b8e93999d9790877e74695e53483c3025190d000000000000000006131f2c3845515e6a76838f9ba8b2a69a8e8275695d51463a2e23180d020000000000000000000000000000000000030e1924303c48535f6c7884909ca9b0a4988b7f73665a4d4135281c0f0300000000000000000000030f1b27333e4a56626e7a86919da9a4988c8074685b606c7884909ca89d9185796e62564a3e32261a0e020000000000000000000013202c3946535f6c798693a0acada09386796d6053463a2d201307000000000000000000000000000815212e3b4854616e7b8894a1aeaa9e9184776a5d5144372a1e110013202c3946535f6c798693a0acada09386796d6053463a2d201307000000000000000000000000000815212e3b4854616e7b8894a1aeaa9e9184776a5d5144372a1e110013202c3946535f6c798693a0acada09386796d6053463a2d201307000000000000000000000000000815212e3b4854616e7b8894a1aeaa9e9184776a5d5144372a1e11000000000000000000000815212e3b4854616e7b8894a1aeab9e9285786b5e5145382b1e12050000000000000000000000000000030e19242f39444e59636d77818a94958d847b736c645d56504b5155595d606264656666666564625f5c58544f4c52585f666d757d868e9791887e746a60564c41362c21160b000000000000101d2935414d586167686868686868686868707d8a97a4978a7d7068686868686868686868635a65727f8c999f938686929e92877b6f63574b3f3328333e4a56626e7985919d938785929e988b7e7165584b3e3225180b000006101a232a31363939393939393939393938342f2820170d0300000000000009131c252c323739393939393939393938342f2820170d0300000007111b232b31363939393939393939393937342e271f150c0100000008121c242c323639393939393939393938342f2820170d03000013202c3946535f6c798693a0acaca09386796c5f5346392c20131c252e37414a535c656f78818a949da6a59c938a81776e655c534a41382f261c130a0100000000000000000000000000000000000000000000000000030f1b26323e4a56616d7985919ca8a3978b7f7367717c8995a1aca195897d71655a4e42362a1e13070000000000000000000000000000000000000013202c3946535f6c798693a0aca194887b6e67727e8a96a2a79b8f83776b5f53473b3024180c0d1924303c4854606c7884909ca89d9185796d6875828f9ca8a69a8d807366594d4033261a0d00101c2834404c565f65656565656673808d9aa6b2a6998c7f7265656565656565656565656565656565635b51463b2f231616232f3c4855616e7a8794a0adaca093867a6d6054473a2e21140800000005111c27333e48535d666f7880878e93979b9997969696989b9a96928c857e756c62584d42372b20140800000000000000000915222e3b4754606d7986929fabafa3968a7e7165594d4135291d12060000000000000000000000000000000000000008131f2b37434f5c6874818d99a6b2a79b8f8276695d5044372b1e1205000000000000000000000814202b37434f5b67737e8a96a2aca094887b6f63575c6874808c98a4a2968a7e72665a4e43372b1f13070000000000000000000013202c3946535f6c798693a0acada09386796d6053463a2d201307000000000000000000000000000815212e3b4854616e7b8894a1aeaa9e9184776a5d5144372a1e110013202c3946535f6c798693a0acada09386796d6053463a2d201307000000000000000000000000000815212e3b4854616e7b8894a1aeaa9e9184776a5d5144372a1e110013202c3946535f6c798693a0acada09386796d6053463a2d201307000000000000000000000000000815212e3b4854616e7b8894a1aeaa9e9184776a5d5144372a1e11000000000000000000000815212e3b4854616e7b8894a1aeab9e9285786b5e5145382b1e120500000000000000000000000000000007121d27323c47515b656e78818a94968e857d766f68615b56504c4d515356575959595958575553504c4d52575d6369707880878f9891887f756c62584e443a2f251a0f05000000000000121f2c3845515e6973757575757575757575757d8a97a4978a7d75757575757575757575746c6165727f8c99a3978f8f979a8e82766a5e52463b2f232e3945515d6975818c98988f8f96a1988b7e7165584b3e3225180b0000000811192025292c2c2c2c2c2c2c2c2c2c2b28241d160e0500000000000000010a131a21262a2c2c2c2c2c2c2c2c2c2b28241e160e05000000000009111920262a2c2c2c2c2c2c2c2c2c2c2b28231c150d0300000000000a121a21262a2c2c2c2c2c2c2c2c2c2b28241d160e0500000013202c3946535f6c798693a0acaca09386796c5f5346392c2013131c252f38414a535d666f78818b949da6a59c938a81776e655c534a41382e251c130a01000000000000000000000000000000000000000000000000000a16212d3945515d6874808c98a3a79b8f83776b75818d99a5a89c9084786c6155493d31251a0e020000000000000000000000000000000000000013202c3946535f6c798693a0aca194887b6e6b77838f9ba7a2968a7e72675b4f43372b1f13070814202c3844505c6773808b97a3a2968a7e726875828f9ca8a69a8d807366594d4033261a0d000c18242f3a444d5458595959596673808d9aa6b2a6998c7f726559595959595959595959595959595957514940352a1e131a26323f4b5764707d8996a2afaa9e9185786b5f5246392c201306000000000b16212c37414b545d666e767c82878b8e909293939291908d8a86817a736c635a50463b30251a0f0300000000000000000b1824313d4a56636f7c8995a1aeaca093877a6e6255493d3125190d0100000000000000000000000000000000000000030f1b27333f4c5864717d8a96a3afaa9e9185786c5f53463a2d211407000000000000000000010d1824303c48545f6b77838f9ba7a79b8f83776b5f5357636f7c8894a0a69a8f83776b5f53473b2f23170c0000000000000000000013202c3946535f6c798693a0acada09386796d6053463a2d201307000000000000000000000000000815212e3b4854616e7b8894a1aeaa9e9184776a5d5144372a1e110013202c3946535f6c798693a0acada09386796d6053463a2d201307000000000000000000000000000815212e3b4854616e7b8894a1aeaa9e9184776a5d5144372a1e110013202c3946535f6c798693a0acada09386796d6053463a2d201307000000000000000000000000000815212e3b4854616e7b8894a1aeaa9e9184776a5d5144372a1e11000000000000000000000815212e3b4854616e7b8894a1aeab9e9285786b5e5145382b1e1205000000000000000000000000000000010b16202b353f49535c666f78818a92978f888179736d67615c5853504d4a4b4c4c4c4c4c4a4b4d5154595d62686e747b828a919890887f766d635a50463c32281e13080000000000000013202c3946535f6c7982828282828282828282828a97a4978a82828282828282828282827d706365727f8c99a6a19b9ba095897d71655a4e42362a1e2935404c5864707b87939f9b9ba0a5988b7e7165584b3e3225180b00000000070e14191d1f2020202020202020201f1c18120c04000000000000000000010910161a1e1f20202020202020201f1c18130c0500000000000000070f151a1d1f2020202020202020201e1c17120b03000000000000000810161a1e1f20202020202020201f1c18120c040000000013202c3946535f6c798693a0acaca09386796c5f5346392c20130a131d262f38414b545d666f78828b949da7a59c938a80776e655c534a40372e251c130a0000000000000000000000000000000000000000000000000005111d2834404c58636f7b87939faaa094887b6f7985919da9a3978b8074685c5044382d211509000000000000000000000000000000000000000013202c3946535f6c798693a0aca194887b6e707c88939fa99e92867a6e62564a3e32261b0f0304101b27333f4b57636f7b87939fa69a8e82766a75828f9ca8a69a8d807366594d4033261a0d0007131e28323b43484b4c4c4d596673808d9aa6b2a6998c7f7265594c4c4c4c4c4c4c4c4c4c4c4c4c4c4a463f372e2319121e2a36424e5b6773808c98a5b1a89b8f8276695d5044372a1e11050000000005101a252f39424b545c646b71767b7f8284858686868583817e7a756f69625a51483e342a1f14090000000000000000000d1926333f4c5865727e8b97a4b1aa9d9084776b5f5246392d2115080000000000000000000000000000000000000000000b1724303c4955626e7b8794a0adada094877b6e6255483c2f23160900000000000000000005111d2935414d5864707c8894a0aba3978b7f73675b4f535f6b7784909ca89f93877b6f63584c4034281c100400000000000000000013202c3946535f6c798693a0acada09386796d6053463a2d201307000000000000000000000000000815212e3b4854616e7b8894a1aeaa9e9184776a5d5144372a1e110013202c3946535f6c798693a0acada09386796d6053463a2d201307000000000000000000000000000815212e3b4854616e7b8894a1aeaa9e9184776a5d5144372a1e110013202c3946535f6c798693a0acada09386796d6053463a2d201307000000000000000000000000000815212e3b4854616e7b8894a1aeaa9e9184776a5d5144372a1e11000000000000000000000815212e3b4854616e7b8894a1aeab9e9285786b5e5145382b1e120500000000000000000000000000000000040e19232d37414a545d666f7881899198928b847e78726d6864605c595755545353535456575a5d6165696e737980868d94968f877e766d645b51483e342b20160c010000000000000013202c3946535f6c79868e8e8e8e8e8e8e8e8e8e929ba79b928e8e8e8e8e8e8e8e8e8e8a7d706365727f8c99a6aca8a89c9084786d6155493d31251a24303c48535f6b77838e9aa6a8aba5988b7e7165584b3e3225180b000000000003090d111213131313131313131312100c0701000000000000000000000000050a0e1113131313131313131312100c070100000000000000000004090e1113131313131313131313120f0b0600000000000000000000040a0e1113131313131313131312100c0701000000000013202c3946535f6c798693a0acaca09386796c5f5346392c2013060b141d262f39424b545d666f79828b959ea7a59c928980776e655c524940372e251c1208000000000000000000000000000000000000000000000000000c18242f3b47535f6b76828e9aa6a4988c80737d8995a1aa9e92877b6f63574b3f34281c1004000000000000000000000000000000000000000013202c3946535f6c798693a0aca194877a6e74808c98a4a5998d8175695d51463a2e22160a00000b17232f3b47535f6a76828e9aa69f93877b6f75828f9ca8a69a8d807366594d4033261a0d00010c16202931383c3f3f404d596673808d9aa6b2a6998c7f7265594c3f3f3f3f3f3f3f3f3f3f3f3f3f3e3a352e251c1218232f3a46525e6a77838f9ba8b1a5988c8073675a4e4135281c0f03000000000009131d273039424b525960666b6f72757778797979787674716e69645e5750483f362c22180d030000000000000000000e1b2834414e5a6774818d9aa6b3a79b8e8275685c4f43362a1e11050000000000000000000000000000000000000000000814212d3a46535f6c7885929eabafa396897d7063574a3d3124180b0000000000000000000a16222e3a45515d6975818d98a4aa9e92867a6e62564b4f5b6773808b98a4a4988c8074685c5044382d21150900000000000000000013202c3946535f6c798693a0acada09386796d6053463a2d201307000000000000000000000000000815212e3b4854616e7b8894a1aeaa9e9184776a5d5144372a1e110013202c3946535f6c798693a0acada09386796d6053463a2d201307000000000000000000000000000815212e3b4854616e7b8894a1aeaa9e9184776a5d5144372a1e110013202c3946535f6c798693a0acada09386796d6053463a2d201307000000000000000000000000000815212e3b4854616e7b8894a1aeaa9e9184776a5d5144372a1e11000000000000000103050815212e3b4854616e7b8894a1aeab9e9285786b5e5145382b1e1205050300000000000000000000000000000007111b252f38424b545d666e777f878e95968f89837e78746f6c6866636261605f6061626466696d71757a7f858b9198938c847c746c645b52493f362c23190f04000000000000000013202c3946535f6c7986939b9b9b9b9b9b9b9b9b9da0a0a09d9b9b9b9b9b9b9b9b9b968a7d706365727f8c99a0a0a0a0978b8074685c5044382d21151f2b37434e5a66727e8a95a0a0a0a0988b7e7165584b3e3225180b00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000013202c3946535f6c798693a0acaca09386796c5f5346392c201306020b141d263039424b545d677079838c959ea7a49b928980776e645b524940372e241a0f0400000000000000000000000000000000000000000000000007131f2b36424e5a66717d8995a1a89c908477818d99a5a5998e82766a5e52473b2f23170b00000000000000000000000000000000000000000013202c3946535f6c798693a0aca194877a6d7884909ca8a094897c7165594d4135291d1106000007121e2a36424e5a66727e8a96a2a3978b807375828f9ca8a69a8d807366594d4033261a0d0000050e171f262c303233404d596673808d9aa6b2a6998c7f7265594c3f323232323232323232323232312e2a231c13141e2934404b57636f7b87939fabaea295897d7064574b3f3226190d000000000000010b151e27303940484e555a5f6366696a6c6c6c6c6b6a6865625d59534d463e362d241a100600000000000000000000101c2936434f5c6975828f9ba8b2a6998c8073665a4d4134271b0e0200000000000000000000000000000000000000000005121e2b3744515d6a7783909da9b1a4988b7e7265584c3f3226190c0000000000000000030f1b27323e4a56626e7a85919da9a59a8e82766a5e52464b57636f7b8793a0a89c9085786d6155493d3125190d02000000000000000013202c3946535f6c798693a0acada09386796d6053463a2d201307000000000000000000000000000815212e3b4854616e7b8894a1aeaa9e9184776a5d5144372a1e110013202c3946535f6c798693a0acada09386796d6053463a2d20130b0b0b0b0b0a09060200000000000815212e3b4854616e7b8894a1aeaa9e9184776a5d5144372a1e110013202c3946535f6c798693a0acaca09386796d6053463a2d20130d0803000000000000000000040a0e15212e3b4854616e7b8894a1acaa9e9184776a5d5144372a1e11000000000004090d10121215212e3b4854616e7b8894a1acab9e9285786b5e5145382b1e121211100c08020000000000000000000000000009131d263039424b545c656d747c838a9197948f8984807c787572706e6d6d6c6d6d6f717376797d81868b9096968f89817a726b625a524940372d241a110700000000000000000013202c3946535f6c7986939393939393939393939393939393939393939393939393938a7d706365727f8c939393939393877b6f63574b4034281c101a26323e4a56616d79859193939393938b7e7165584b3e3225180b00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000010407090b0d0e1011111212121111100f0e0d0b09070402000000000000000000000000000000000000000000000000000000000000000000000000000013202c3946535f6c798693a0acaca09386796c5f5346392c20130600020b141e273039424b555e677079838c959ea8a49b928980766d645b524940362c211509000000000000000000000000000000000000000000000000020e1a26323d4955616d7884909ca8a094877b85919da9a195897d7165594e42362a1e120700000000000000000000000000000000000000000013202c3946535f6c798693a0aca094877a707c8894a0a89c9084786c6054483c3125190d010000020e1a26323e4a56616d7985919da89c90847775828f9ca8a69a8d807366594d4033261a0d000000050d151b20242633404d596673808d9aa6b2a6998c7f7265594c3f32262626262626262626262625221e1811121c25303a45515c68737f8b97a3afaa9e9285796d6154483c2f23160a00000000000000030c151e272f363d43494e53575a5c5e5f5f5f5f5e5d5b5955524d47423b342c241b12080000000000000000000000111e2a3744505d6a7783909da9b1a4978b7e7165584b3f3225190c0000000000000000000000000000000000000000000003101c2936424f5c6875828f9ba8b3a6998c8073665a4d4033271a0d000000000000000008141f2b37434f5b67727e8a96a2ada195897d7165594d4147535f6b77838f9ba7a195897d7165594d42362a1e1206000000000000000013202c3946535f6c798693a0acada09386796d6053463a2d20130700000000000005080a0b0b0b0b0b15212e3b4854616e7b8894a1aeaa9e9184776a5d5144372a1e110013202c3946535f6c798693a0a7a7a09386796d6053463a2d201717171717171715120e08010000000815212e3b4854616e7b8894a1a7a79e9184776a5d5144372a1e110013202c3946535f6c798693a0a0a0a09386796d6053463a2d201c19140e08010000000000020910151a1d212e3b4854616e7b8894a0a0a09e9184776a5d5144372a1e1100000000080f15191d1e1e1e212e3b4854616e7b8894a0a0a09e9285786b5e5145382b1e1e1e1e1c19140d06000000000000000000000000010b141e273039424a535b636a727980868c929895908c8885817e7d7b7a7979797a7b7d808285898d919696918b847e7770686159514840372e251b12080000000000000000000013202c3946535f6c798686868686868686868686868686868686868686868686868686867d706365727f8686868686868682766a5e53473b2f23170b16212d3945515d687480868686868686867e7165584b3e3225180b0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000003070b0e111316181a1b1c1d1e1e1e1e1e1e1d1c1b19181613110e0b0804010000000000000000000000000000000000000000000000000000000000000000000013202c3946535f6c798693a0a0a0a09386796c5f5346392c2013060000020c151e27303a434c555e67717a838c959fa0a09b928980766d645b52483d32261a0e010000000000000000000000000000000000000000000000000915212d3944505c6874808b97a3a3978b7f8995a1a89c9084786c6155493d31251a0e0200000000000000000000000000000000000000000013202c3946535f6c798693a0aca093867974808c98a4a3978b8073675c5044382c201408000000000915212d3945515d6975818d99a5a094887b75828e9ba8a69a8d807366594d4033261a0d00000000030a10141a2633404d596673808d9aa6b2a6998c7f7265594c3f3226191919191919191919191816120d141c242d37424c57626d7984909ca7b1a5998d8275695d5145382c2013070000000000000000030c151d242b32383e42474a4d4f515253535352504f4c4945413c363029221a1209000000000000000000000000121e2b3845515e6b7784919eaab0a3968a7d7063574a3d3124170b00000000000000000000000000000000000000000000000e1b2834414e5b6774818e9aa7b4a79a8e8174675b4e4134281b0e00000000000000010c1824303c48545f6b77838f9ba7a89c9085786d6155493d434f5b67737f8b97a3a59a8e82766a5e52463a2e22170b000000000000000013202c3946535f6c798693a0a7a7a09386796d6053463a2d20130700000000050c111417171717171717212e3b4854616e7b8894a1a7a79e9184776a5d5144372a1e110013202c3946535f6c7986939a9a9a9a9386796d6053463a2d2224242424242424221e19130c0400000815212e3b4854616e7b88949a9a9a9a9184776a5d5144372a1e110013202c3946535f6c798693939393939386796d6053463a2d2b29251f19120c05000000060d141b2126292b2e3b4854616e7b8893939393939184776a5d5144372a1e110000000912192025292b2b2b2b2e3b4854616e7b8893939393939285786b5e5145382b2b2b2b2b28241f181007000000000000000000000000020c151e2730384149515860676e757b81878c91969894918e8b89888786868687888a8c8f92959994908b858079736c655e564f473f362e251c13090000000000000000000000131f2c3946525f6b76797979797979797979797979797979797979797979797979797979786e62657179797979797979797971665a4e42362a1e1307111d2834404c58636f7979797979797979797064574b3e3125180b0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000002070b0f13171a1d2022242628292a2b2b2b2b2b2a2a2927262422201d1b1814110d0905000000000000000000000000000000000000000000000000000000000000000013202c3946535f6c798693939393939386796c5f5346392c201306000000030c151e27313a434c555f68717a838d9393939393928980766d645a4e42362a1d110400000000000000000000000000000000000000000000000005101c2834404b57636f7b87929ea79b8f878d99a5a3978b8073685c5044382c2115090000000000000000000000000000000000000000000013202c3946535f6c798693a0aca09386797884909ca89e93877b6f63574b3f33271c10040000000005111d2935414d5864707c8894a0a4988c8075828e9ba8a69a8d807366594d4033261a0d000000000000040d1a2633404d596673808d9aa6b2a6998c7f7265594c3f3226190c0c0c0c0c0c0c0c0c0b0d12181e252d364049535e68737e8a95a1acaca095897d7165594d4135291c1004000000000000000000030b131a21272d32363b3e41434445464646454442403d3935302b251f18100800000000000000000000000000121f2c3945525f6b7885929fabafa296897c6f6256493c3023160900000000000000000000000000000000000000000000000d1a2733404d5a6673808d9aa6b3a89b8e8275685b4f4235281c0f0000000000000005111d2935414c5864707c88949faba4988c8074685c5044383f4b57636f7b87939faa9e92867a6e63574b3f33271b0f030000000000000013202c3946535f6c7986939a9a9a9a9386796d6053463a2d2013070000020910171c2123242424242424232e3b4854616e7b88949a9a9a9a9184776a5d5144372a1e110013202c3946535f6c79868d8d8d8d8d8d86796d6053463a2d2e303131313131302e2a241d160f07000815212e3b4854616e7b888d8d8d8d8d8d84776a5d5144372a1e110013202c3946535f6c798686868686868686796d6053463a383835312a241d17100a030a11181e252c323638383b4854616e7b8686868686868684776a5d5144372a1e11000008121b242b313538383838383b4854616e7b8686868686868685786b5e514538383838383735302a221a1006000000000000000000000000030c151e262f373f474e555c636970757b81858a8e92959898969494939393949596999794918d89847f7a746e68615a534c453d352d241c130a010000000000000000000000111e2a37434f5a646b6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c675d5f686c6c6c6c6c6c6c6c6c686055493d31261a0e020c18242f3b47535e676c6c6c6c6c6c6c6c6c685e53483c2f23160a000000000000000000000000000000000000000000000000000000000000000000000000000000000000000003080e12171b1f23272a2c2f313334363737383838383736353433312f2c2a2724211d1915100c0702000000000000000000000000000000000000000000000000000000000013202c3946535f6c798686868686868686796c5f5346392c20130600000000030c151f28313a434d565f68717a84868686868686868680766a5e5145382b1f1205000000000000000000000000000000000000000000000000000c17232f3b47525e6a76828e99a5a19893969fa99e92867a6f63574b3f34281c10040000000000000000000000000000000000000000000013202c3946535f6c798693a0aca09386797c8894a0a69a8e82766a5e52473b2f23170b0000000000000c1824303c4854606c7884909ca89c908377818e9ba7a69a8d807366594d4033261a0d000000000000000d1a2633404d596673808d9aa6b2a6998c7f7265594c3f3226190c0b0b0c0c0d0e101316191e232930374048525b656f7a85909ba6b2a79b9084786c6155493d3125190c000000000000000000000001080f161c21262a2e313436383939393938373533302d2925201a140d060000000000000000000000000000131f2c3946525f6c7986929facaea295887b6f6255483c2f22150900000000000000000000000000000000000000000000000d192633404c596673808c99a6b2a89c8f8275685c4f4236291c0f000000000000000a16222e3945515d6975818c98a4ab9f93877b6f64584c40343a46535f6b77838f9ba7a3978b7f73675b4f43382c2014080000000000000013202c3946535f6c79868d8d8d8d8d8d86796d6053463a2d20130700050c131b22282d303131313131312f2e3b4854616e7b888d8d8d8d8d8d84776a5d5144372a1e110013202c3946535f6c798181818181818181796d6053463a363a3d3e3e3e3e3e3d3a362f282019120b0815212e3b4854616e7b8181818181818181776a5d5144372a1e1100131f2c3946525f6b767979797979797979766b5f5346454544413c352f28221b150e151c222930373d424545454754606d77797979797979797975695d5044372a1d1100040f1a242d363d424445454545454754606d777979797979797979756a5e5144454545454544413b342c22180d02000000000000000000000000030c141d252d353c444b52585e646a7075797e8285888b8d8f919292929292908f8d8a8884817c78736e69635d565049423a332b231b120a010000000000000000000000000e1a26323e48525a5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5c55565d5f5f5f5f5f5f5f5f5f5d574e43382d2115090007131f2b36414c555c5f5f5f5f5f5f5f5f5f5c564d42372b1f130700000000000000000000000000000000000000000000000000000000000000000000000000000000000002080e14191e23272c2f3336393b3e3f4142434445454544444342413f3d3b393633302d2925211c18130e0802000000000000000000000000000000000000000000000000000000131f2c3946525f6b767979797979797979766b5f5246392c1f13060000000000030d161f28313a444d565f687279797979797979797979766a5e5145382b1f12050000000000000000000000000000000000000000000000000007131e2a36424e5965717d8994a0aaa3a0a2a8a5998e82766a5e52463b2f23170b000000000000000000000000000000000000000000000013202c3946535f6c798693a0ac9f928679808c98a4a195897d72665a4e42362a1e12060000000000000814202c38444f5b6773808b97a3a093877b818d9aa7a69a8d807366594d4033261a0d000000000000000d1a2633404d596673808d9aa6b2a6998c7f7265594c3f32261918181818191a1b1d1f22252a2e343a4249525a646d77818c96a1acaca0958a7e73675c5044382c20140800000000000000000000000000040a10151a1e2225282a2b2c2c2c2c2c2a292724211d19140e090200000000000000000000000000000013202c3946535f6c798693a0acaea295887b6e6155483b2e22150800000000000000000000000000000000000000000000000c1926323f4c5965727f8c99a6b2a99c8f8275695c4f4236291c0f000000000000030f1b27323e4a56626e7985919da9a79b8f83776b5f53473b2f36424e5a66737e8b97a3a79b8f84786c6054483c3024180c0100000000000013202c3946535f6c798181818181818181796d6053463a2d201307080f161e252c33393c3e3e3e3e3e3d3c383b4854616e7b8181818181818181776a5d5144372a1e1100121f2c3845515d6972737373737373737372695e51453941464a4a4a4a4a4a4a46413a322b241c150e14202d3a46535f6a72737373737373737371675b4f43362a1d1000111e2a37434f5a646b6c6c6c6c6c6c6c6c6b645a51515151514d47403a332d2620191f262d343b42484e51515151515b656c6c6c6c6c6c6c6c6c6a63584d4135281c0f000a15212b363f474e5151515151514f505b656c6c6c6c6c6c6c6c6c6b63594e505151515151514d463e34291e130700000000000000000000000000020b131b232b323940474d53595f64696d7275797c7e81838485868686858482817e7b7874706c67625d57524b453e3730292119110900000000000000000000000000000a16212c3740484f5253535353535353535353535353535353535353535353535353535353504a4c51535353535353535353514c453c32271c100400020e1a25303a434b50535353535353535353504b443b30261a0f030000000000000000000000000000000000000000000000000000000000000000000000000000000000060d13191f252a2f33383c3f4245484a4c4e4f50515151515151504f4e4c4a484543403d3935312d28231e19130e080100000000000000000000000000000000000000000000000000111e2a37434f5a646b6c6c6c6c6c6c6c6c6b645a4f43372a1e1105000000000000040d161f28323b444d5660686c6c6c6c6c6c6c6c6c6c6b64594e4236291d100400000000000000000000000000000000000000000000000000020e1a25313d4955606c7884909ca0a0a0a0a0a095897d7165594e42362a1e1207000000000000000000000000000000000000000000000013202c3946535f6c798693a0ac9f92857984909ca89d9185796d6155493d31261a0e02000000000000030f1b27333f4b57636f7b87939fa3978b7e808d9aa6a69a8d807366594d4033261a0d000000000000000d1a2633404d596673808d9aa6b2a6998c7f7265594c3f32262525252525262628292b2e32363a3f454c535b646c757f89939ea8afa59a8f84796d62564b3f34281c1004000000000000000000000000000000050a0e1216191b1d1e1f2020201f1e1c1a1815110d0803000000000000000000000000000000000013202c3946535f6c7986929facaea295887b6e6155483b2f22150800000000000000000000000000000000000000000000000d1926333f4c5966727f8c99a6b2a99c8f8275695c4f4236291c0f00000000000008141f2b37434f5b66727e8a96a2aea2968a7e72665a4f43372b323e4a56626e7a87939faba094887c7064584d4135291d1105000000000000121f2c3845515d6972737373737373737372695e5145392c1f130b121a212830373e45494a4a4a4a4a4a48433c46535f6a72737373737373737371675b4f43362a1d1000101c2935414c57606667676767676767676660574d41424b5256575757575756524b443d352e271f18121e2a36424e5861666767676767676767655f554a3f33271b0e000e1a26323e48525a5f5f5f5f5f5f5f5f5f5f5c5e5e5e5e5e5d58524b453e38312b242a31383f464c535a5e5e5e5e5e5e5b5f5f5f5f5f5f5f5f5f5e5951473c3025190c000e1a26323d4851595e5e5e5e5e5e5b55535b5f5f5f5f5f5f5f5f5f5e5951575c5e5e5e5e5e5d5850463b3024180c00000000000000000000000000000109111920272e353c42484e53585d6165696d6f727476777879797978777574716f6c6864605c57524c46403a332c251e170f0700000000000000000000000000000005101a252e373e434646464646464646464646464646464646464646464646464646464646443f404446464646464646464645413a332a20150b00000008131e283139404446464646464646464644403a32291f140900000000000000000000000000000000000000000000000000000000000000000000000000000000030a11181e252b30363b3f44484b4f525457595a5c5d5e5e5e5e5e5d5d5c5a595754524f4c4945413d39342f2a251f19130c060000000000000000000000000000000000000000000000000e1a26323e48525a5f5f5f5f5f5f5f5f5f5f5a52483e32261a0e0200000000000000040d162029323b444e565d5f5f5f5f5f5f5f5f5f5f5f5a52483d31261a0e0100000000000000000000000000000000000000000000000000000915212c3844505c67737f8b939393939393939084786c6055493d3125190e02000000000000000000000000000000000000000000000013202c3946535f6c798693a0ab9f92857b8794a0a4988c8174685d5145392d21150900000000000000000b17232f3b47525e6a76828e9aa69b8e82808c99a6a69a8d807366594d4033261a0d000000000000000d1a2633404d596673808d9aa6b2a6998c7f7265594c3f3232323232323232333436383b3e42464b51575e656d757e88919ba5afa89e93887d73675c51453a2e23170b0000000000000000000000000000000000000206090c0e1012131313131211100e0b08050100000000000000000000000000000000000000131f2c3946525f6c7986929facafa295887b6f6255493c2f22160900000000000000000000000000000000000000000000000d1a2633404d596673808c99a6b3a89c8f8275685b4f4235281c0f0000000000010c1824303c48535f6b77838f9ba6a99d92867a6e62564a3e32262e3a46525e6a76828e9ba7a5998d8175695d5145392d22160a000000000000101c2935414c57606667676767676767676660574d4135291d10151d242b333a41495055575757575757544e46424e5861666767676767676767655f554a3f33271b0e000d1924303b454e55595a5a5a5a5a5a5a5a59554e453f4a545d636464646464635d564e474038312a231b1a26313c464f565a5a5a5a5a5a5a5a5a59544d43392e22170b000a16212c3740484f5253535353535353545f676b6b6b6b6b6a635d565049433c352f353c434a50575e656a6b6b6b6b6b665d5353535353535353524e473f352a1f140800111e2a36424e59636a6b6b6b6b6b67605a5352535353535353535352545b61686b6b6b6b6b6962574c4034281b0f00000000000000000000000000000000070e161d242a31373c42474c5155595d60636668696b6b6c6c6c6b6a696765625f5c5854504b46413b352f28221b140c05000000000000000000000000000000000009131c252c32373939393939393939393939393939393939393939393939393939393939373434383939393939393939393835302921180e04000000020c161f272e343839393939393939393938342f2820170d02000000000000000000000000000000000000000000000000000000000000000000000000000000050d151c232930363c41464b5054585b5e61636567686a6a6b6b6b6b6a6968676563615e5c5855514d4945403b36302a241e17110a03000000000000000000000000000000000000000000000a16212c3740484f525353535353535353524f4840372c21160a000000000000000000040e172029323c444c5153535353535353535353524e4840362b20150900000000000000000000000000000000000000000000000000000004101c28333f4b57636e7a8686868686868686867f73675c5044382c21150900000000000000000000000000000000000000000000000013202c3946535f6c798693a0ab9e92857e8b97a3a094887c7064584c4034281c1105000000000000000006121e2a36424e5a66727e8a96a29e92867f8c98a5a69a8d807366594d4033261a0d000000000000000d1a2633404d596673808d9aa6b2a6998c7f7265594c3f3e3e3e3e3e3e3f3f40414345474a4e52575c626870777f88919aa3adaaa0968c81776c61564b4034291e12060000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000121f2c3845525f6b7885929eabafa296897c6f6356493d3023160a00000000000000000000000000000000000000000000000e1b2734414d5a6773818d9aa6b3a89b8e8175685b4e4235281b0f000000000005111d2935404c5864707c88949faba5998d8175695d51453a2e222a36424e5a66727e8a96a2a99d9185796d62564a3e32261a0e0200000000000d1924303b454e55595a5a5a5a5a5a5a5a59554e453b3025191920272e363d444c535a6164646464646460584e43464f565a5a5a5a5a5a5a5a5a59544d43392e22170b0008131e29333c444a4d4d4d4d4d4d4d4d4d4d4a443c434f5b666f71717171716f676059524a433c342d261e202a343d454a4d4d4d4d4d4d4d4d4d4c49433b31271d11060005101a252e373e43464646464646464c5865707878787878756e68615b544e47403a40474d545b6269707678787878776e62564946464646464645423d352d23190e0300131f2c3945525e6b757878787878726b645e57514a464646464a51585f656c73787878787874685c5043362a1d100000000000000000000000000000000000040b12191f252b31373c4145494d515457595b5d5e5f5f5f5f5f5e5c5a585653504c48443f3a35302a241d17100902000000000000000000000000000000000000010a131a21262a2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2b28282b2c2c2c2c2c2c2c2c2c2b29241e170f060000000000040d151d23282b2c2c2c2c2c2c2c2c2c2b28231d160e05000000000000000000000000000000000000000000000000000000000000000000000000000000070f171f262d343b41474d52575c6064676b6d707274757677777878777776757372706d6b6865615d5955504c47413b352f29221b140d0500000000000000000000000000000000000000000005101a252e373e4346464646464646464646433e372e251a100500000000000000000000050e17202a323a40444646464646464646464645433d362e241a0f04000000000000000000000000000000000000000000000000000000000b17232f3a46525e6a75797979797979797979786e63574b3f33281c100400000000000000000000000000000000000000000000000013202c3946535f6c798693a0ab9e9184828f9ba79b8f83776b5f53483c3024180c000000000000000000020e1a26323e4955616d7985919da295897e8b98a5a69a8d807366594d4033261a0d000000000000000d1a2633404d596673808d9aa6b2a6998c7f7265594c4b4b4b4b4b4b4b4b4c4d4e4f5154565a5e62676d737a8189919aa3acaaa1988e847a70655a50453a2e23180c010000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000111e2b3844515e6b7784919daab0a3978a7d7064574a3e3124180b00000000000000000000000000000000000000000000020f1c2835424f5b6875818e9ba7b3a69a8d8174675a4d4134271b0e00000000000a16222e3945515d6975818c98a4aca094887c7165594d4135291d26323e4a56626e7a86929eaaa2968a7e72665a4e42372b1f1307000000000008131e29333c444a4d4d4d4d4d4d4d4d4d4d4a443c33291f1c232a323940484f565e656c7171717171706a5f54473d454a4d4d4d4d4d4d4d4d4d4c49433b31271d110600020d17212a32393d404040404040404040403e393845515e6b777d7d7d7d7d79726b635c554d463f37302922222b33393e404040404040404040403d3831291f160b00000009131c252c3237393939393939404c59667380858585858079736c665f58524b454b51585f666d747a81858585857d7063574a3d39393939393936312b231b1107000013202c3946535f6c7985858585837c766f69625c554f48474e555c626970777e8585858584776a5d5044372a1d1100000000000000000000000000000000000000070e141a20262b3035393d4144474a4c4e5051525253525251504e4c494743403c38332f29241e19120c05000000000000000000000000000000000000000000010910161a1e1f202020202020202020202020202020202020202020202020202020201e1c1c1f2020202020202020201f1c18130d0500000000000000040b12171c1f2020202020202020201f1c18120c04000000000000000000000000000000000000000000000000000000000000000000000000000000081119212931383f464c53585e63686c7074777a7c7e8182838484858584848382817e7c7a7774716d6a65615c57524c47413a342d261f17100800000000000000000000000000000000000000000009131c252c32373939393939393939393937322c251c1309000000000000000000000000050e1820292f3538393939393939393939393936322c241b1208000000000000000000000000000000000000000000000000000000000006121e2a36414d58636a6c6c6c6c6c6c6c6c6c6c675d52463b2f23170b0000000000000000000000000000000000000000000000000013202c3946535f6c798693a0aa9e918486929fa2968a7e73675b4f43372b1f1307000000000000000000000915212d3945515d6975818d99a4998d818a97a4a69a8d807366594d4033261a0d000000000000000d1a2633404d596673808d9aa6b2a6998c7f72655958585858585858585859595a5c5e6063666a6e73787e858c939ba3aca9a1988f867c72685e53493e33281d1207000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000111d2a3743505d697683909ca9b1a5988b7e7265594c3f33261a0d0000000000000000000000000000000000000000000005111e2a3743505d6976838f9ca9b2a5998c7f7266594c4033261a0d00000000030f1b26323e4a56626d7985919da9a89c9084786c6054483c302519222e3a46525e6a76828e9aa6a69a8f83776b5f53473b2f23170c0000000000020d17212a32393d404040404040404040403e39322a211f262d353c434b525961686f767d7d7d7d7d7c706356493d393e404040404040404040403d3831291f160b000000050f1820272d3133343434343434343433312d3845515e6b78838a8a8a8a847c756e665f585149423b332c2521282e3233343434343434343433312c261f170d04000000010a131a21262a2c2c2c2c2c323f4c5865717a848d92918b847e77716a635d5650555c636a71777e858c92928b82786e6256493d302c2c2c2c2c2a2620191109000000131f2c3945525f6b767f8891928e88817a746d67605a53525960666d747b82898f9290877d74695c5043362a1d10000000000000000000000000000000000000000003090f141a1f24292d3135383b3e4042434445464646454443413f3d3a3734302c27231e19130d0701000000000000000000000000000000000000000000000000050a0e111313131313131313131313131313131313131313131313131313131313120f101213131313131313131312100c080200000000000000000000070c0f1213131313131313131312100c070100000000000000000000000000000000000000000000000000000000000000000000000000000008111a232b333b424a51575e64696f74787c808386898b8d8f90919192929190908e8d8b898784817d7a76716d68635e58524c453f383029211a11090100000000000000000000000000000000000000010a131a21262a2c2c2c2c2c2c2c2c2c2c2a26211a130a0100000000000000000000000000060e171e24292b2c2c2c2c2c2c2c2c2c2c2c2a26211a1209000000000000000000000000000000000000000000000000000000000000010d1925313c4751595e5f5f5f5f5f5f5f5f5f5f5c554b41352a1e12060000000000000000000000000000000000000000000000000013202c3946535f6c798693a0ab9f93898b96a29e92867a6e62564a3e32271b0f030000000000000000000005111d2935404c5864707c8894a09c90888d98a4a69a8d807366594d4033261a0d000000000000000d1a2633404d596673808d9aa6b2a6998c7f726565656565656565656565656667686a6d6f72767a7f848a90969ea5ada8a0978f867d736a60564c42372c22170c010000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000f1c2935424f5b6875818e9ba7b3a69a8d8174675a4e4135281c0f030000000000000000000000000000000000000000000714202c3946525f6b7884919eaab0a4978a7e7164584b3e3225180c0000000008131f2b37434f5a66727e8a96a2ada3978b8073675c5044382c20141d2935424e5a66727e8a96a2ab9f93877b6f63584c4034281c10040000000000050f1820272d3133343434343434343433312d2820222931383f474e555c646b727a81888a8a8a877d7063564a3d303233343434343434343433312c261f170d0400000000060e161c212527272727272727272727252a3743505c67717a848d96968e878078716a625b544c453e362f282022252727272727272727272624211b150d050000000000010910161a1e1f20202024303c48545f68717a848d96968f89827b756e68615b60676e757b82899097958c837970675d52463a2e212020201f1d1a150f0700000000111e2a36434e5a646d7680899299928c857f78726b645e5d636a71787f868d939a91877e756b62584c4034281b0f0000000000000000000000000000000000000000000003090e14181d2125282c2e3133353738393939393837363533302e2b2724201c17120d0802000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000008111a232c353d454d545b62696f757a8084888c909395989a9b9c9d9e9e9e9e9d9c9b99989593908d8a86827d79746e69635d575049423b332b231b130a0100000000000000000000000000000000000000010910161a1e1f20202020202020201f1e1a16100901000000000000000000000000000000050c13181c1f202020202020202020201f1e1a150f0800000000000000000000000000000000000000000000000000000000000000000814202b353f474e5253535353535353535353504a43392f24190d020000000000000000000000000000000000000000000000000013202c3946535f6c798693a0aca49b95969da5998d8175695d52463a2e22160a0000000000000000000000000c1824303c4854606c7884909ba29994979fa9a69a8d807366594d4033261a0d000000000000000d1a2633404d596673808d9aa6b2a6998c7f7271717171717171717171727273747577797c7e82868b90959ba1a8aba59d968e867d746b62584e443a30251b1005000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000e1b2734404d5a6673808c99a5b2a89c8f8276695d5044372b1f12060000000000000000000000000000000000000000000a17232f3c4855616d7a8793a0acaea295897c6f6356493d3023170a000000000c1824303c48535f6b77838f9ba6aa9f93877b6f63574b3f33271b101925313d4956626e7a86929eaaa4988c8074685c5044382d211509000000000000060e161c21252727272727272727272725211e252c343b424a515860676e757d848b939790877e756b6054483c2f252727272727272727272624211b150d05000000000000040b1115181a1a1a1a1a1a1a1a1a1a1b2834404b565f68717b848d9799918a837b746d655e574f48413a322b241c1a1a1a1a1a1a1a1a1a1a1815100a030000000000000000050a0e1113131314202c38434d565f68727b848d969a948d878079736c666b727880868d949b968d837a71675e554b41352a1e13131313110e090400000000000e1a26323d48525b646d768089929b97908a837d766f69676e757c838a90979b91887e756c625950463b3024180c00000000000000000000000000000000000000000000000003080c1115191c1f222527282a2b2c2c2c2c2c2b2a282624211e1b1814100b0601000000000000000000000000000000000000000000000000000000000000000000000000000000040a0e1112131313131313131313131313131313131313131313131313131313131313131313131313131313131313131313131312100c080200000000000000000000000002040607070808080807060401000000000000000000000000000000000000000000000007111a232c353e474f575f666d747a80868b9094989c9fa2a4a6a8a9a8a8a7a7a8a8a9a8a6a4a29f9d9996928e8985807a746e68625b544d453d352d251c130a010000000000000000000000000000000000000000050a0e1113131313131313131313110e0a0500000000000000000000000000000000000001070c10121313131313131313131313110e0a04000000000000000000000000000000000000000000000000000000000000000000030e19232d353d424546464646464646464646443f3931271d1308000000000000000000000000000000000000000000000000000013202c3946535f6c798693a0acada6a2a3a7a095897d7165594d4135291d12060000000000000000000000000814202c37434f5b67737f8b97a3a4a1a2a8b1a69a8d807366594d4033261a0d000000000000000d1a2633404d596673808d9aa6b2a6998c7f7e7e7e7e7e7e7e7e7e7e7e7e7e8081828486888b8e92979ba1a6aca6a09a938b847c736b625950463c32281e140900000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000c1925323f4b5864717d8a97a3b0aa9e9185786c6053473b2e22160a0000000000000000000000000000000000000000020e1a26333f4b5764707d8996a2afac9f93867a6d6154473b2e22150800000005111d2935404c5864707c88939faba69a8e82766a5e52473b2f23170b15212d3945515d6976828e9aa6a89c9085786d6155493d3125190d01000000000000040b1115181a1a1a1a1a1a1a1a1a1a19212830373e454d545b636a717980878f969a91887e756c62594f44382c201a1a1a1a1a1a1a1a1a1a1815100a0300000000000000000005090c0d0d0d0d0d0d0d0d0d0d17232e39444d565f69727b858e979c958d867e777069615a534b443d352e261d140d0d0d0d0d0d0d0d0b08040000000000000000000000000205060606101b26313b444d576069727b848e979f98918b847e7771767c838a91989f978d847a71685f554c43392f24190d0606060401000000000000000a15212c364049525b646d768089929b9b958e88817a74727980878e949b9b92897f766c635a50473e342a1f130800000000000000000000000000000000000000000000000000000005090c101316181a1c1d1e1f1f201f1f1e1d1b191715120f0b08040000000000000000000000000000000000000000000000000000000000000000000000000000000000080f151a1d1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1c18130d05000000000000000002070c0f11121314151515151412100e0b070200000000000000000000000000000000000000050f19232c353e475059616970787f858c91979ca0a5a8a9a6a3a09e9d9c9b9a9b9b9c9d9ea0a2a4a7a9a6a29e9a95908b86807a736d665e574f473f372e251c1309000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000007111b232b3136393939393939393939393937342e271f150c01000000000000000000000000000000000000000000000000000013202c3946535f6c798693a0acacacacaca89c9084786c6054483d3125190d01000000000000000000000000030f1b27333f4b57636f7b87939eaaacacacaca69a8d807366594d4033261a0d000000000000000d1a2633404d596673808d9aa6b3a79b918b8b8b8b8b8b8b8b8b8b8b8b8b8c8c8d8e909295979b9ea3a7aba6a19b958f88817a726a615950473e342a20160c0200000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000a1723303c4955626f7b8894a0adada194887b6f63574b3e32261b0f030000000000000000000000000000000000000007131f2b37434f5b6773808c98a5b1a99d9084776b5e5245392c2013060000000a16222d3945515d6975818c98a4ada1958a7e72665a4e42362a1e1206111d2935414d5965717d8a96a2ada195897d7165594d42362a1e1206000000000000000005090c0d0d0d0d0d0d0d0d101a232b333a414950575f666d747c838b92999a91887e756c635a50473d33271c100d0d0d0d0d0d0d0d0d0b0804000000000000000000000000000000000000000000000007121d28323b444d576069727b858e979f989089827a736c645d564e4740382f251b100500000000000000000000000000000000000000000000000000000a151f29323b454e576069727b858e97a09c968f89827b81878e959ca0978e857b72685f564d433a31271d1308000000000000000000000000040f1a242e374049525b646d778089929ba099938c857f7d848b92989f9c938980766d645b51483f352c22180d020000000000000000000000000000000000000000000000000000000000000306090b0d0f1112121313131211100f0d0b080603000000000000000000000000000000000000000000000000000000000000000000000000000000000000000a121a21262a2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2b29241e170f06000000000000060d13181b1d1f202121222222211f1d1a17130e090300000000000000000000000000000000020c17212b343e475059626b737b828a90979da2a8aba6a19d99969492908f8e8e8e8e8f90919395989b9ea2a6aaa6a19c97918b857e7770696159514940372e251b110600000000000000000508090a0a0a0a0a0a0a0a0908050000000000000000000000000407090a0a0a0a0a0a0a0a0a08050200000000000000000000000206090a0a0a0a0a0a0a0a0a090603000000000000000000000000000000000000000000000000000000000000000000000009111920262a2c2c2c2c2c2c2c2c2c2c2c2b28231c150d0300000000000000000000000000000000000000000000000000000013202c3946535f6c798693a0a0a0a0a0a0a0978b8074685c5044382c20140800000000000000000000000000000b17232e3a46525e6a76828e9aa0a0a0a0a0a09a8d807366594d4033261a0d000000000000000d1a2633404d596673808d9aa6b3ada39b9898989898989898989898989898999a9b9d9fa1a4a7aaa6a39f9a95908a847d766f6860584f473e352c22180e040000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000814212e3a46535f6c7885919daab0a4988b7f73675b4f43372b201409000000000000000000000000000000000000020d18242f3b47535f6b7783909ca8b2a69a8d8174685c4f43362a1d11040000030f1a26323e4a56616d7985919da9a99d9185796d6155493d32261a0e020d1925313d4955616d7985929eaaa59a8e82766a5e52463a2e22170b0000000000000000000000000000000000010c17222c353d444c535a626970787f868e959c9b92887f766c635a51483e352c21160b0000000000000000000000000000000000000000000000000000000000000000000000010c162029323b454e576069737c858e98a19b938c857d766f676059524a41372d21160a0000000000000000000000000000000000000000000000000000030d172029333c454e576069727c858e97a0a19a948d878b9299a0a1988e857c726960564d443a31281f150b010000000000000000000000000008121c252e374049525b656e778089939ca49d97908a888f959ca39d938a81776e645b52493f362d231a10060000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000008121c242c32363839393939393939393939393939393939393939393939393939393939393939393939393939393939393939393939393835302921180e04000000000811181f24282a2c2d2e2e2e2e2e2d2c2927231f1a140e0700000000000000000000000000000009141e29333d465059626b747d858d949ba2a8aca59f9a95918d8a878583828181818282838587898b8e92969a9ea3a8a8a29c969089827b736b635b524940372d22170b000000000000060c11141617171717171717171614110c060000000000000000040b10131617171717171717171615120d08010000000000000003090e131516171717171717171615130f090300000000000000000000000000000000000000000000000000000000000000000000070f151a1d1f202020202020202020201e1c17120b030000000000000000000000000000000000000000000000000000000013202c3946535f6c7986939393939393939393877b6f63574b3f33281c1004000000000000000000000000000006121e2a36424e5a66727d8a93939393939393938d807366594d4033261a0d000000000000000d1a2633404d596673808d9aa6acacaca7a5a5a5a5a5a5a5a5a5a5a5a5a5a5a6a7a8a9a7a5a3a09d9a97938e89847e79726c655e564e463d352c231910060000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005121e2b3744505c6975828e9aa6b2a79b8f83776b5f53483c31261b100600000000000000000000000000000000000a141f2a35404c58636f7b8793a0acaea2968a7d7165594c4033271b0e02000007131f2b37434f5a66727e8a96a2ada4988c8175695d5145392d211509000915212d3945515d6975818d99a5aa9e92867a6e63574b3f33271b0f030000000000000000000000000000000006121d29343e474f565e656c737b828991989f9b928980766d645a51483f362c231a0f05000000000000000000000000000000000000000000000000000000000000000000000000040e172029333c454e57616a737c868f98a19e978f888179726b635c53493e32261a0e020000000000000000000000000000000000000000000000000000050e17202a333c454e57606a737c858e97a0a59f9894969da4a2988f867c736a60574e443b32281f160d030000000000000000000000000000000a131c252e374049535c656e77818a939ca5a29b959499a0a69d948a81786e655c524940362d241b11080000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000407080808080808080808080808080808080808080704000000000000000004101a242e363d4245464646464646464646464646464646464646464646464646464646464646464646464646464646464646464646464644413b332a20160b00000007111a222a30343738393a3b3b3b3b3a3836332f2b251f19120a0200000000000000000000000006101b26303a454f58626b757e868f979ea6ada8a19a948f8985817d7b787775747474757576787a7c7f8286898e92979da2a8a8a19b948c857d756d645b52493f33281c1004000000010a11181d2123232323232323232323211d18110a010000000000070f161b2022232323232323232323211e19130c030000000000050d141a1f22232323232323232323221f1a140d050000000000000000000000000000000000000000000000000000000000000000000004090e111313131313131313131313120f0b0600000000000000000000000000000000000000000000000000000000000013202c3946535f6c798686868686868686868682766a5e53473b2f23170b000000000000000000000000000000020e1a26313d4955616d7985868686868686868686807366594d4033261a0d000000000000000d1a2633404d596673808d9aa0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a09f9f9e9d9c9a999694918e8a87827d78736d67615a534c443c342b231a11070000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000030f1b2834414d5965727e8a96a2aeab9f93887c7064594d42372c22180e0500000000000000000000000000000009121c26303b46515d6874808c98a4b0aa9e92867a6e6155493d3024180b0000000c1824303c47535f6b77838f9aa6aca094887c7064584c4034281d11050005101d2935414d5965717d8995a1ada3978b7f73675b4f43372c201408000000000000000000000000000000000916222e3a45505961686f767e858d949ba29b928980766d645b52483f362d241a11080000000000000000000000000000000000000000000000000000000000000000000000000000050e17212a333c454e58616a737c868f98a0a09a928b847c756e655a4f42362a1d1004000000000000000000000000000000000000000000000000000000050e18212a333c454e57616a737c858e97a0a0a0a0a0a0a09990877d746a61584e453c322920160d0400000000000000000000000000000000010a131c252e37414a535c656e77818a939ca0a0a0a0a0a09e948b82786f665c534a40372e241b12090000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000060c10131515151515151515151515151515151515151513100c070000000000000a16212c3640484e525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252514c453c32271c110500030e19232c343b4043454647484848484745423f3b36312a241c140c0300000000000000000000010c17222d37424c57616a747e879098a1a9ada59d968f89837d7975716e6c6a6968676768696a6b6d707376797d82878c91979ea4aba59e978f877f766d645b5044382c1f13060000010a131b23292d2f30303030303030302f2d29231b130a0100000008111921272c2f3030303030303030302e2a241d150d03000000050f171f262b2e3030303030303030302e2b261f170f0500000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000131f2c3946525f6b76797979797979797979797971665a4e42362a1e1207000000000000000000000000000000000915212d3945515d697479797979797979797979797165594c403326190d000000000000000d1a2633404d596673808d93939393939393939393939393939393939393939291908f8e8c8a8785827e7a76726d68625c564f49413a322a22191108000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000c1825313d4955626e7a86929eaab0a4988c81756a5f54493e342a20170f08020000000000000000000000040a121b242d38424d58636e7985919ca8b1a69a8e82766a5e5245392d211408000005111d2934404c5864707b87939faba79b8f83776b5f54483c3024180c0200000c1825313d4955616d7985919da9a79b8f84786c6054483c3024180c010000000000000000000000000000000c1825323e4a56616b727a818890979ea09c938980776d645b524940362d241b120800000000000000000000000000000000000000000000000000000000000000000000000000000000050f18212a333c464f58616a747d869093939393938e8780776b5e5145382b1e120500000000000000000000000000000000000000000000000000000000060f18212a333c454e58616a737c858f9393939393939390877e746b62584f463c332a20170e04000000000000000000000000000000000000010a131c252f38414a535c656e78818a93939393939393938c827970665d544a41382e251c120900000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000020a11181c2021222222222222222222222222222222222221201d18120b03000000000e1a26323d48525a5e5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5d574e44392d211509000914202b353e464c505253545455555453514f4b47423c352e261e150c0200000000000000000007121e29343e49545e68727c869099a2aaaca49b938c847e77726d6965625f5d5c5b5b5b5b5c5d5f616366696d71767b80868c939aa1a9a9a199918980766c6054473b2e211508000008121c252d34393c3d3d3d3d3d3d3d3d3c39342d251c1208000005101a232b32383b3d3d3d3d3d3d3d3d3c3a352f271f150b0000020d17212931373b3d3d3d3d3d3d3d3d3d3b37312921170d03000000000000000000000000000000000000000000000000000000000000000003060808080808080808080807050200000000000000000000000000000000000000000000000000000000000000000000111e2a37434f5a646b6c6c6c6c6c6c6c6c6c6c6c686055493e32261a0e020000000000000000000000000000000005111d2834404c58626a6c6c6c6c6c6c6c6c6c6c6c686055493d3124180b000000000000000d1a2633404d596673808686868686868686868686868686868686868686868585848381807d7b7875726e6a66615c57514b443e3730282018100700000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000915212d3945515d6975818d99a5b0a99d92877b70655a50463c3229211a130e090603020101010204070a0f151c242d363f49545e6974808b96a1adaca195897d71665a4d4135291d110500000a16212d3945515d6974818c98a4aea3978b7e73675b4f43372b1f13110f0b070814202c3845515d6975818d99a5aca094887c7064584d4135291d11050000000000000000000000000000000d1a2633404d5966737d848b9393939393938a81776e655b524940372e241b1209000000000000000000000000000000000000000000000000000000000000000000000000000000000000060f18212a343d464f58626b747d868686868686868685786b5e5145382b1e12050000000000000000000000000000000000000000000000000000000000060f18212a333c464f58616a737c8686868686868686867e756b625950463d342a21180e050000000000000000000000000000000000000000010a131d262f38414a535d666f78818686868686868686837a70675e544b42382f261c130a00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000020b141c23282c2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2c29231d150c03000000111e2a36434f5a646b6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6960554a3e3125190c000d1a25313c4750585c5e606161616161605e5b57534d47403830271e140a0000000000000000020d18242f3a45505b65707a848e98a2abada39a9289817a736c66615c595553514f4e4e4e4e4f505254575a5d61656a6f757b81888f979fa7aba39a92887b6e6155483b2e22150800030f1a242e373f45494a4a4a4a4a4a4a4a49453f372e241a0f03000c17212c353d44484a4a4a4a4a4a4a4a4946413931271c12060009141f29333b4247494a4a4a4a4a4a4a4947423b33291f1409000000000000000000000000000000000000000000000000000000000000050b10131515151515151515151514120e090300000000000000000000000000000000000000000000000000000000000000000e1a26323e48525a5f5f5f5f5f5f5f5f5f5f5f5f5d574e44382d2115090000000000000000000000000000000000000c1824303b4650595e5f5f5f5f5f5f5f5f5f5f5f5d574e43382d211509000000000000000d192633404c59657179797979797979797979797979797979797979797979797877767473716e6c6966625e5a55504b454039332c251e160e0600000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005111d2935414d5965717c88949fabaea3988d82776c62584e443b332b241e191512100f0e0d0e0f1113161b20272e363f48515b65707b86919ca7b2a79b9084786d6155493d3125190d0100000e1a26323e4a56616d7985919da1a19e92867a6e62564a3f33271e1e1d1b17120c101c2834404c5865717d8995a1a1a1998d8175695d5145392d2115090000000000000000000000000000000d1a2633404d59667380868686868686868681776e655c534940372e251b12090000000000000000000000000000000000000000000000000000000000000000000000000000000000000000060f18222b343d475059626b75797979797979797979756a5e5144382b1e1205000000000000000000000000000000000000000000000000000000000000060f18212a343d464f58616a73797979797979797979756c635950473e342b22180f0600000000000000000000000000000000000000000000010b141d262f38414a545d666f7879797979797979797971685e554c423930261d140a01000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000a141d262e34383b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b39342e271e150a000000131f2c3946525f6b76797979797979797979797979797979797979797979797979797979797979797979797979797979797979797979797972665a4d4034271a0e00111d2a36424e5962686b6c6d6e6e6e6e6d6a67635e58524a423930261c11070000000000000007131e2a35404b57616c77828c96a0aaaea49b918880776f68615b55514c4946444242414142434446484a4d5155595e646970767d858d959ea8aca295887b6e6155483b2e221508000814202b3640495155565656565656565655514940362b20140805111d28333d474f54565656565656565656524b43392e23170b020e1a25303b454d53565656565656565656534d453b31261a0e02000000000000000000000000000000000000000000000000000000010910171c1f21222222222222222222211e1a140e06000000000000000000000000000000000000000000000000000000000000000a16212c3740484f525353535353535353535353514c453c32271c110500000000000000000000000000000000000008131f2a343e474e525353535353535353535353514c453c32271c1004000000000000000b1824313d495560686c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6b6a69686664625f5c5956524e4945403a342e28211b130c0400000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000010d1925313d4854606b77838e99a4afa99e93887e746960564d453d36302a25221f1d1b1a1a1b1c1d2023272c32384048515a636d77828c97a2adaca1968a7f73685c5045392d211509000000111e2a36434e5a66727e8a94949494948e82766a5e52463a2e2b2b2b2a28231e170f1824303c4854606c788591949494949185796d62564a3e3125190c0000000000000000000000000000000d192633404c596571797979797979797979786f665c534a41372e251c130900000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000061019222b343e475059626a6c6c6c6c6c6c6c6c6c6b63594e4235291d100300000000000000000000000000000000000000000000000000000000000000060f18222b343d464f5861696c6c6c6c6c6c6c6c6c6b635a51483e352c22191006000000000000000000000000000000000000000000000000020b141d262f38424b545d666c6c6c6c6c6c6c6c6c6c685f564c433a30271e140b020000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000006111c262f383f454848484848484848484848484848484848484845403930261c1106000013202c3946535f6c79868686868686868686868686868686868686868686868686868686868686868686868686868686868686868686868174675a4d4134271a0e00131f2c3945525e6a7477797a7b7b7b7b7977746f6a635c544b42382e23180d020000000000010c18242f3b46515d68737e89939ea8b0a69c92897f766d655e56504a45403d3a3736353434353637393b3e4145494e53585e656c737b838c97a4aea295887b6e6155483b2e221508000c1825313c48525b616363636363636363615b52483c3125180c0915212d39454f59606363636363636363625d554a3f34281c0f06121e2a36424d575f6363636363636363635f574d42372b1f12060000000000000000000000000000000000000000000000000000000a131b22282c2e2e2e2e2e2e2e2e2e2e2d2a261f18100600000000000000000000000000000000000000000000000000000000000005101a252e373e4346464646464646464646464645413a332a20160b00000000000000000000000000000000000000020d18222c353c4245464646464646464646464645413a332a20150b00000000000000000915212d38434e575d5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5e5d5c5b59575553504d4a46423e39342f29231d171009020000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000814202c38434f5b66717d88939ea9afa59a90857b72685f574f48413b36322e2b2928272727282a2c2f33373d434a525a626c757f89949ea9b0a59a8f84796e62574b4034281c1005000000131f2c3945525f6b7783888888888888887d7165594d41383838383837342f28211814202c3844505c687481888888888888887e72665a4d4034271a0e0000000000000000000000000000000b1824313d495560686c6c6c6c6c6c6c6c6c6c665d544a41382f251c130a010000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000071019222c353e4750595e5f5f5f5f5f5f5f5f5f5e5951473d3125190d010000000000000000000000000000000000000000000000000000000000000000061019222b343d464f585e5f5f5f5f5f5f5f5f5f5e5951483f362c231a10070000000000000000000000000000000000000000000000000000020b141d262f39424b545b5f5f5f5f5f5f5f5f5f5f5c564d433a31281e150c0200000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000b17222d38424a5154555555555555555555555555555555555554514a42382e23170c000013202c3946535f6c798692929292929292929292929292929292929292929292929292929292929292929292929292929292929292928e8174675a4d4134271a0e0013202c3946535f6c79848687888888878684807b756e665d544a3f352a1f1308000000000005111d2935404c57636e79848f9aa5b0a99e948a80766d645b534c453e3934302d2b2928282828292b2c2f3235393d42474d535a6169717c8996a3aea295887b6e6155483b2e221508000f1b2834414d59646d70707070707070706d64594d4134281b0f0b1824313d4a56616b70707070707070706e675c5044372b1e120815212e3a46535e696f707070707070706f695f53473b2e221508000000000000000000000000000000000000000000000000000008121c252d33383b3b3b3b3b3b3b3b3b3b3a36312a22180f0400000000000000000000000000000000000000000000000000000000000009131c252c32373939393939393939393939393835302921180e04000000000000000000000000000000000000000006111a232b31363939393939393939393939393835302921180e04000000000000000004101c27323c454c5153535353535353535353535353535353535353535353525251504e4d4b494644413d3a36322d28231e18120c05000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000004101b27333e4955606b76828c97a1acaca1978d847a71696159524c47423e3a3836353434343536383b3f43484e555c646c757e87919ba5b0a99e94897e73685c51463a2f23170c0000000013202c3946525f6c777b7b7b7b7b7b7b7b786d61554942444444444443403a332a221a1c2834404c5864707a7b7b7b7b7b7b7b7b73665a4d4134271a0e0000000000000000000000000000000915212d38434e575d5f5f5f5f5f5f5f5f5f5f5b544b42382f261d130a010000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000007101a232c353e474e52535353535353535353524e483f362b20150900000000000000000000000000000000000000000000000000000000000000000000071019222b343d464d51535353535353535353524e483f362d241a110800000000000000000000000000000000000000000000000000000000020b141d273039424a5052535353535353535353504b443b31281f160c030000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000f1b27333f4a545c616161616161616161616161616161616161615c544a3f34281c10030013202c3946535f6c7986939f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9a8e8174675a4d4134271a0e0013202c3946535f6c798692949495959493908c8680786f665c51463b3025190d02000000000a16222e3a45515d68747f8b96a1acada2978d82786e645b5249413a332d2824211e1c1b1b1b1b1c1e202225292d31363c42484f57636f7c8996a3aea295887b6e6155483b2e22150800101c2936434f5c69757d7d7d7d7d7d7d7d75695c4f4336291c100c1926323f4c5965727c7d7d7d7d7d7d7d786c5f5346392c20130916222f3c4955626f7b7d7d7d7d7d7d7d7b6f6256493c3023160900000000000000000000000000000000000000000000000000040f1a242e373e444748484848484848484846423c342a20160b000000000000000000000000000000000000000000000000000000000000010a131a21262a2c2c2c2c2c2c2c2c2c2c2c2c2b29241e170f060000000000000000000000000000000000000000000008111920252a2c2c2c2c2c2c2c2c2c2c2c2c2b29241e170f06000000000000000000000b15202a333a4145464646464646464646464646464646464646464646464645444342403e3c3a3734312d2a26211c17120c0701000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000a16222d38444f5a65707b85909aa4aea99f968d847b736b645d57524e4a47444341414041424345484b4f545960666e767e879099a3adaba1978c82776c61564b4035291e120700000000111e2b37434f5b656d6e6e6e6e6e6e6e6e6d665c50494f5151515151504b443c342c241c24303c48545f696e6e6e6e6e6e6e6e6e6a61564a3e3225190c00000000000000000000000000000004101c27323c454c5153535353535353535352504a42392f261d140b0100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000008111a232c353c424546464646464646464645423d362d24190f040000000000000000000000000000000000000000000000000000000000000000000000071019222b343c414546464646464646464645423d362d241b1208000000000000000000000000000000000000000000000000000000000000020b151e2730383f434646464646464646464644403a32291f160d0400000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000121e2b37434f5b666d6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6d665c5044382b1f12060013202c3946535f6c798693a0acacacaca8a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a79a8e8174675a4d4134271a0e0013202c3946535f6c798693a0a1a2a2a19f9c97918a81776d63584c41352a1e1206000000020e1a26323e4a56626d7985909ca7b2a79c91867b70665c524940383028221c181412101013151515151516191d21252b30373e4956636f7c8996a3aea295887b6e6155483b2e22150800101c2936434f5c6976838a8a8a8a8a8a8376695c4f4336291c100c1926323f4c5965727f8a8a8a8a8a8a86796c5f5346392c20130916222f3c4955626f7c898a8a8a8a8a897c6f6356493c30231609000000000000000000000000000000000000000000000000000915202c3640495054555555555555555555534d463c32271c1005000000000000000000000000000000000000000000000000000000000000010910161a1e1f20202020202020202020201f1c18130d05000000000000000000000000000000000000000000000000070e141a1d1f20202020202020202020201f1c18130d050000000000000000000000040e1821293035383939393939393939393939393939393939393939393939383736353432302d2b2825211e1a15110c070100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005101c27323e49535e69737e88929ca5afa89f968d857d756f69635e5a5653514f4e4d4d4d4e505254575b60656b717880889099a2abaca2998f857b70665b50453a2f23180d01000000000f1b27333e49535b606161616161616161605c544b545b5e5e5e5e5e5c564e463e362d25202c37434d575e6161616161616161615f584f453a2e22160a000000000000000000000000000000000b15202a333a414546464646464646464646433f3830271d140b02000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000008111a232b3136393939393939393939393936322b241b120800000000000000000000000000000000000000000000000000000000000000000000000000071019222a3035383939393939393939393936322b241b12090000000000000000000000000000000000000000000000000000000000000000030c151e262d33373939393939393939393938342f2820170d04000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000013202c3946525f6c777b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b786c6053473a2d2014070013202c3946535f6c798693a0acb4a9a19b9a9a9a9a9a9a9a9a9a9a9a9a9a9a9a9a9a9a9a9a9a9a9a9a9a9a9a9a9a9a9a9a9a9a9a9a9a8e8174675a4d4134271a0e0013202c3946535f6c7986939d9d9fa2a6aca8a39c938a7f74695e52463a2e22160a00000006121e2a37434f5b67727e8a96a1adaca1968a7f74695f544a40372e261e17110c0a11171c20222222222222222222222225303c4956636f7c8996a3aea295887b6e6155483b2e22150800101c2936434f5c6976839096969696908376695c4f4336291c100c1926323f4c5965727f8c969696969386796c5f5346392c20130916222f3c4955626f7c899696969696897c6f6356493c30231609000000000000000000000000000000000000000000000000020e1a26313d48525b606161616161616161615f584e44382d21150a0000000000000000000000000000000000000000000000000000000000000000050a0e1113131313131313131313131312100c0802000000000000000000000000000000000000000000000000000003090d1113131313131313131313131312100c080200000000000000000000000000060f171e24292b2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2b2a28272523211e1b1815110d0905000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000b16212c37424d57626c76808a939da6aea89f978f87807a746f6a6663605e5c5b5a5a5a5b5c5e6164676b70767c838a929aa2ababa39a90877d73695e54493e34291d120700000000000b16222d38414a5054545454545454545454504a525c666a6b6b6b6b68605850483f372f2726313b454c52545454545454545454534e463d33281d120600000000000000000000000000000000040e1821293035383939393939393939393937332d261e150b020000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000008111920262a2c2c2c2c2c2c2c2c2c2c2c2a26211a12090000000000000000000000000000000000000000000000000000000000000000000000000000000710181f25292c2c2c2c2c2c2c2c2c2c2c2a26211a120900000000000000000000000000000000000000000000000000000000000000000000030c141c22272b2c2c2c2c2c2c2c2c2c2c2b28231d160e0500000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000013202c3946535f6c7986888888888888888888888888888888877a6d6053473a2d2014070013202c3946535f6c798693a0acafa3978f8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8174675a4d4134271a0e0013202c3946535f6c798691909192969ba1a9aea59b91867a6e63574b3e32261a0d0100000a16222e3b47535f6b77838f9ba6b2a79c9085796e63584d43382e251c140c050b141c23282c2e2f2f2f2f2f2f2f2f2f2f2f303c4956636f7c8996a3aea295887b6e6155483b2e22150800101c2936434f5c697683909ca3a39c908376695c4f4336291c100c1926323f4c5965727f8c99a3a3a09386796c5f5346392c20130916222f3c4955626f7c8996a2a3a396897c6f6356493c3023160900000000000000000000000000000000000000000000000007131f2b36424e59646c6e6e6e6e6e6e6e6e6e6a6055493e32261a0e020000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000050d13181c1f202020202020202020202020202020202020202020201f1f1e1d1c1a181714120f0c09050100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005101b26303b46505a646e78818a949ca4aca9a199928b85807a76726f6c6a696767676768696b6d7073777c81878e949ca3acaaa29991887e756b61574d42382d22170c01000000000005111b262f383f4447484848484848484847454956626e7777777777726a625a51494139312829333b414647484848484848484846423c342b22170c010000000000000000000000000000000000060f171e24292b2c2c2c2c2c2c2c2c2c2c2b27221c140c03000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000070e151a1d1f2020202020202020201f1e1a150f080000000000000000000000000000000000000000000000000000000000000000000000000000000000060e14191d1f2020202020202020201f1e1a150f08000000000000000000000000000000000000000000000000000000000000000000000000020a11171b1e202020202020202020201f1c18120c040000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000013202c3946535f6c7986939595959595959595959595959594877a6d6053473a2d2014070013202c3946535f6c798693a0acaca0938681818181818181818181818181818181818181818181818181818181818181818181818181818174675a4d4134271a0e0013202c3946535f6c7986858484868a8f97a0aaada2978b7f73675b4e4236291d100400000d1926323e4a57636f7b87939fabaea2978b7f73685c51463b31261c130a0209131d262d34393b3c3c3c3c3c3c3c3c3c3c3c3c3c4956636f7c8996a3aea295887b6e6155483b2e22150800101c2936434f5c697683909ca9a99c908376695c4f4336291c100c1926323f4c5965727f8c99a6aca09386796c5f5346392c20130916222f3c4955626f7c8996a2afa396897c6f6356493c302316090000000000000000000000000000000000000000000000000c18242f3b47535f6a767b7b7b7b7b7b7b7b7b72665a4e42372b1f13070000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000306090b0d0e0f10111212121111100f0d0c09070401000000000000000000000000000000000000000000000000000000000000000000000000000000000002080c101213131313131313131313131313131313131313131313131211100f0e0c0a080503000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000009141f29343e48525c666f78818a929ba2aaaba49d96918b86827e7b79777574747374747677797c8083888d92999fa6aea7a09890887f766c63594f453b30261b1006000000000000000a141d262d34383a3b3b3b3b3b3b3b3b3b3d4a5763707d848484847c746c635b534b423a322a293036393b3b3b3b3b3b3b3b3b3a37312b2219100500000000000000000000000000000000000000050d13181c1f202020202020202020201e1b17110a02000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000003090e111313131313131313131313110e0a040000000000000000000000000000000000000000000000000000000000000000000000000000000000000003080d101213131313131313131313110e0a04000000000000000000000000000000000000000000000000000000000000000000000000000000060b0f121313131313131313131312100c0701000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000013202c3946535f6c798693a0a2a2a2a2a2a2a2a2a2a2a2a094877a6d6053473a2d2014070013202c3946535f6c798693a0acaca093867974747474747474747474747474747474747474747474747474747474747474747474747474746f64584c4033261a0d0013202c3946525f6b7779787777797e858e99a4afa79b8f83766a5e5145382c1f13060004101c2935424e5a66737f8b97a4b0aa9e92867a6e63574b40352a1f150b0105101b252f383f4548484848484848484848484848484956636f7c8996a3aea295887b6e6155483b2e22150800101c2936434f5c697683909ca9a99c908376695c4f4336291c100c1926323f4c5965727f8c99a6aca09386796c5f5346392c20130916222f3c4955626f7c8996a2afa396897c6f6356493c30231609000000000000000000000000000000000000000000000005111d2834404c58636f7b878888888888888882766b5f53473b3024180c00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000206090d10131517191b1c1d1e1e1e1e1e1e1d1b1a181613110e0a0602000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000020d18222c36404a545d666f78818990989fa5aca8a29c97928e8b888684828181818181828486898c9094999ea4aaa9a39d958e867e756d645a51473d33291f140a0000000000000000020b141c23282c2e2e2e2e2e2e2e2e2e303d4a56636f79848e918e867e756d655d544c443c342b252a2d2e2e2e2e2e2e2e2e2e2d2a262019100700000000000000000000000000000000000000000002080c101213131313131313131313120f0b060000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000013202c3946535f6c7986939696969696969696989fa9ada094877a6d6053473a2d2014070013202c3946535f6c798693a0acaca09386796c67676767676767676767676767676767676767676767676767676767676767676767676767645d53483c3024180b00111e2a37434f5a656c6d6b6a6a6d737c87939fabab9f9286796d6054473a2e2115080006131f2c3845515d6a76838f9ba7b2a69a8e82766a5e52463a2f23180d03000a16212c37414a5054555555555555555555555555555556636f7c8996a3aea295887b6e6155483b2e22150800101c2936434f5c697683909ca9a99c908376695c4f4336291c100c1926323f4c5965727f8c99a6aca09386796c5f5346392c20130916222f3c4955626f7c8996a2afa396897c6f6356493c3023160900000000000000000000000000000000000000000000000a16212d3945515c6874808c95959595959593877b6f64584c4034291d1105000000000000000000000000000000000000000000000000000000000000000000000000000000000000000004090e1216191c1f22242627292a2b2b2b2b2b2a2928272522201d1a16120e0a0500000000000000000000000000000000000000000000000000000407080808080808080808080806040000000000000000000000000000000000000000000000000000000000010507080808080808080808080806020000000000000000000000000205080a0a0a0a0a0a0a0a0a09070400000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000006101a242e38424b545d666e777e868d949aa0a6aba8a39e9b979492908f8e8d8d8d8e8f919395989ca0a4a9a9a49e98928b847c746c635b52483f352b21170d02000000000000000000020a11171c1f2121212121212121222e3a47525d68727c86909890877f776f665e564e463d352d2520212121212121212121211e1a150e07000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000306080a0c0d0e0f0f0f0f0f0e0d0c0a080502000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000305080a0c0e0f1011111212121111100e0d0b0907040100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000002040608090a0a0b0b0a0a080705030000000000000000000000000000000002040506060606050403010000000000000000000013202c3946535f6c79868989898989898989898d98a4ada094877a6d6053473a2d2014070013202c3946535f6c798693a0acaca09386796c5f5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a58534b41372b201408000f1b27333e49535b60605f5d5e616b76828e9ba7aea195887b6f6255493c2f231609000915222e3b4754606d7986929eabafa3968a7e7265594d41352a1e120700000e1a26323e49535b61626262626262626262626262626262636f7c8996a3aea295887b6e6155483b2e22150800101c2936434f5c697683909ca9a99c908376695c4f4336291c100c1926323f4c5965727f8c99a6aca09386796c5f5346392c20130916222f3c4955626f7c8996a2afa396897c6f6356493c3023160900000000000000000000000000000000000000000000030f1a26323e4a55616d7985919ca2a2a2a2a2988c8074685d5145392d22160a000000000000000000000000000000000000000000000000000000000000000000000000000000000000050b10151a1e2225292c2e3032343637373838383837363533312f2c2926231e1a16110c0600000000000000000000000000000000000000000000060c1013151515151515151515151513100b060000000000000000000000000000000000000000000000000002080d11141515151515151515151514120f0a04000000000000000001080d12151617171717171717171614100b05000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000008131c263039424b545c656d747b83898f959a9fa4a7aba7a4a19f9d9c9b9a9a9a9b9c9d9fa2a4a8aaa6a29d98938d878079726a625a514940362d23190f05000000000000000000000000060c101314151515151515151e2a36414c56606a747e89939991898178706860584f473f372e261e161515151515151514120e0903000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000407080808080808080808080808080808080808080704000000000000000000000000000000000000000000000000000000000000000000000206090d10121517191a1b1c1c1c1c1c1b1a181614120f0c08050100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005080c0f121417191a1c1d1e1e1e1e1e1e1d1c1b1a181613100d0a070300000000000000000000000000000000000000000000000000000000000000000000000000000000000206090c0f111314161717171717161514120f0d0a060300000000000000000206090c0e10121313131312110f0d0a07040000000000000013202c3946535f6c787c7c7c7c7c7c7c7c7c7c8996a2ada094877a6d6053473a2d2014070013202c3946535f6c798693a0acaca09386796c5f534d4d4d4d4d4d4d4d4d4d4d4d4d4d4d4d4d4d4d4d4d4d4d4d4d4d4d4d4d4d4d4d4d4d4d4c4841392f251a0f03000a16212d3741494f53535251515a66727f8c98a5b0a3968a7d7063574a3d3124170a000b1724313d4a56636f7c8895a1aeaca093877a6e6256493d3125190d010000101d2a36424e5a656d6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f7c8996a3aea295887b6e6155483b2e22150800101c2936434f5c697683909ca9a99c908376695c4f4336291c100c1926323f4c5965727f8c99a6aca09386796c5f5346392c20130916222f3c4955626f7c8996a2afa396897c6f6356493c302316090000000000000000000000000000000000000000000008131f2b37434e5a66727e8a95a1adadacaea89d9185796d61564a3e32261b0f03000000000000000000000000000000000000000000000000000000000000000000000000000000050b11161c21252a2e3235383b3d3f4142434444454544444341403e3c3936322f2b26211c17110b05000000000000000000000000000000000000020a11181c2021222222222222222222211f1c1711090100000000000000000000000000000000000000000000040c13191d2022222222222222222222211f1b150f07000000000000030c13191e2123232323232323232322201c16100800000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000010a141e273039424a535b626a71787e84898f93979b9fa2a4a6a8a9a8a7a7a7a7a8a8a9a8a6a3a19d9a96918d87827c756e67605850483f372e241b11070000000000000000000000000000000406080808080808080e19252f3a444e58626d77818b959b938a827a726a615951494038302820170f080808080807050200000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000060c10131515151515151515151515151515151515151513110c0700000000000000000000000000000000000000000000000000000000000005090e1216191c1f2123252728292929292828262523211e1b1815110d08040000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000003080c1114181b1e2123252728292a2b2b2b2b2b2a2928262422201d1a16130f0a0601000000000000000000000000000000000000000000000000000000000000000000000000050a0e1215191b1e20212223242424242322201e1c1916120f0a0601000000050a0e1216191b1d1e1f2020201f1e1c1a1714100b060000000000121e2b3744505c666e6f6f6f6f6f6f6f6f6f7c8996a2ada094877a6d6053473a2d2014070013202c3946535f6c798693a0acaca09386796c5f534641414141414141414141414141414141414141414141414141414141414141414141403c372f271d1309000005101b252f373e44464645444a5764707d8a96a3b0a4978b7e7164574b3e3124180b000d1926333f4c5865727e8b97a4b0aa9d9184786b5f52463a2d211509000000121e2b3845515e6b777b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7c8996a3aea295887b6e6155483b2e22150800101c2936434f5c697683909ca9a99c908376695c4f4336291c100c1926323f4c5965727f8c99a6aca09386796c5f5346392c20130916222f3c4955626f7c8996a2afa396897c6f6356493c30231609000000000000000000000000000000000000000000010c1824303c47535f6b77838e9aa6a7a19fa2a9a1968a7e72665a4f43372b1f140800000000000000000000000000000000000000000000000000000000000000000000000000020910161c22272d31363a3e4144474a4c4d4f505151515151504f4e4c4a4845423f3b37322d28221d17100a03000000000000000000000000000000020b141c23282c2e2e2e2e2e2e2e2e2e2e2e2c28221b130a010000000000000000000000000000000000000000040e161e24292d2e2e2e2e2e2e2e2e2e2e2e2b262019110800000000030d151d242a2e3030303030303030302f2c28211a120800000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000020c151e273038414951585f666d73787e83878b8f9295989a9c9d9e9f9f9f9f9f9e9d9b999794918e8a86817c76706a645d564e463e362d241b12090000000000000000000000000000000000000000000000000008131e28323c46515b656f79848e989c948c847b736b635b524a423a3229211910070000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000020a11181c2021222222222222222222222222222222222222201d18120b030000000000000000000000000000000000000000000000000001060c11151a1e2225282b2e3032333535363636353433312f2d2b2824211d19140f0a05000000000000000000000000000000000000000000000000000000000000000000000000000000000000040a0f14181d2124282b2d303234353637383838383837363433312f2c2926231f1b16110c07010000000000000000000000000000000000000000000000000000000000000000060b11161a1e2225282a2c2e2f3031313130302e2d2b2825221f1b16120d07060c11161a1e2225282a2b2c2c2c2c2b2a282623201c17110a020000000f1b28333f4a545d6263636363636363636f7c8996a2ada094877a6d6053473a2d2014070013202c3946535f6c798693a0acaca09386796c5f53463934343434343434343434343434343434343434343434343434343434343434343433302b251d150b0100000009131d252d33373a3a393c4956626f7c8895a2afa5988b7e7165584b3e3225180b000e1b2834414e5a6773808d99a6b3a79b8e8275695c5043372a1e1105000000121e2b3845515e6b788588888888888888888888888888888888888d98a4aea295887b6e6155483b2e22150800101c2936434f5c697683909ca9a99c908376695c4f4336291c100c1926323f4c5965727f8c99a6aca09386796c5f5346392c20130916222f3c4955626f7c8996a2afa396897c6f6356493c3023160900000000000000000000000000000000000000000005111d2935404c5864707b87939fa89e959297a0a69a8f83776b5f53483c3024180d010000000000000000000000000000000000000000000000000000000000000000000000050d141b21272d33383d42464a4e515456585a5c5d5d5e5e5e5e5d5c5b595754524e4b47433e39342e28221b140d0600000000000000000000000000000a141d262e34383b3b3b3b3b3b3b3b3b3b3b38332d251c130900000000000000000000000000000000000000020c1620282f35393b3b3b3b3b3b3b3b3b3b3a37322b231a10060000000b151f272f353a3c3d3d3d3d3d3d3d3d3c38332c241a110600000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000030c151e262f373f464d545b61676d72777b7f8386898b8d8f9091929292929291908e8d8a8885827e7975706b655f59524b443c342c241b12090000000000000000000000000000000000000000000000000000010c16202a353f49535d67727c86909a9e968e857d756d645c544c443b332b22190f05000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000020b141c23282c2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2c29231d150c030000000000000000000000000000000000000000000000060c12171c21262a2e3235383a3d3f4041424242424241403e3c3a3734312d2925201b16100b050000000000000000000000000000000000000000000000000000000000000000000000000000030a10151b2024292d3134373a3c3e4042434444454545444342413f3e3b3936322f2b27221d18120d070000000000000000000000000000000000000000000000000000000000040b11171c21262a2e313437393a3c3d3d3e3e3d3c3b393735322f2b27221d181311171d22262b2e313436383939393938373533302c28221b140b0100000b17232e38424b525556565656565656626f7c8996a2ada094877a6d6053473a2d2014070013202c3946535f6c798693a0acaca09386796c5f5346392c27272727272727272727272727272727272727272727272727272727272727272624201a130b0300000000010b131b22272b2d2d2f3b4855626e7b8895a2aea5988b7e7165584b3e3225180b00101c2936424f5c6875828f9ba8b2a6998c8073665a4d4134281b0f02000000121e2b3845515e6b78859295959595959595959595959595959595979fa9aea295887b6e6155483b2e22150800101c2936434f5c697683909ca9a99c908376695c4f4336291c100c1926323f4c5965727f8c99a6aca09386796c5f5346392c20130916222f3c4955626f7c8996a2afa396897c6f6356493c302316090000000000000000000000000000000000000000000a16222e3945515d6974818c98a4a4988c868f9ba79f93887c7064584c4135291d1106000000000000000000000000000000000000000000000000000000000000000000000810171e252c33393e44494e52565a5d6063656768696a6b6b6b6b6a69676663615e5b57534e4a453f39332d261f18100800000000000000000000000006111c262f383f454848484848484848484847443f372e251a100500000000000000000000000000000000000009141e28323a41464848484848484848484847433d352c22170c010006121c2731394146494a4a4a4a4a4a4a4a48443e362c22180d0100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000030c151d252d343c434a50565c61666b6f7376797c7e818284858586868685848382807e7b7875726d69645f5a544e474139322a231a120900000000000000000000000000000000000000000000000000000000040e19232d37414b56606a747e89939d9f978f877e766e665e554d453d352b21170c0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000a141d262e34383b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b39352e271e150b000000000000000000000000000000000000000000040b11171d23282d32363a3e414447494b4d4e4f4f4f4f4f4e4c4b494643403d3935302c27211c161009030000000000000000000000000000000000000000000000000000000000000000000001080e151b21262b3035393d404346494b4d4e50515151515151504f4e4c4a4845423f3b37332e29231e18120b040000000000000000000000000000000000000000000000000000070f151c22282d32363a3e4143454749494a4a4a4a49484644413e3b37332e29241e1c22282e32373b3e414344454646464543423f3c38332d261d1309000006111c27303940464949494949494955626f7c8996a2ada094877a6d6053473a2d2014070013202c3946535f6c798693a0acaca09386796c5f5346392c201a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1a18140f0901000000000000010910161b1f20222e3b4855616e7b8895a2aea5988b7e7165584b3e3225180b00111e2a3744505d6a7683909da9b1a4978b7e7165584b3f3226190c00000000121e2b3845515e6b7885929ea2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a3a9b1aea295887b6e6155483b2e22150800101c2936434f5c697683909ca9a99c908376695c4f4336291c100c1926323f4c5965727f8c99a6aca09386796c5f5346392c20130916222f3c4955626f7c8996a2afa396897c6f6356493c302316090000000000000000000000000000000000000000030f1b27323e4a56626d7985919da9a093877f8b97a3a4988c8175695d51453a2e22160a0000000000000000000000000000000000000000000000000000000000000000010a121a222930373e444a4f555a5e62666a6d6f71737576777778787777757472706d6a67635f5a55504a443e383129221a120a02000000000000000000000b17222d38424a515455555555555555555554504940362c22170d020000000000000000000000000000000006111b26303a444c5255555555555555555555534e473e34291d1206000b17232e39434b52565656565656565656554f483e34291e12060000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000030b131b232a31383f454b50565a5f63676a6d707274757778787979797877767573716f6c6965615d59544e49433c362f282019110800000000000000000000000000000000000000000000000000000000000007111b252f39444e58626c76818b959fa1999188807870675f574f473d33281d11050000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000006111c262f383f454848484848484848484848484848484848484845403930271d120700000000000000000000000000000000000001080f161c23282e34393e42464a4e51535658595b5b5c5c5c5b5a59575553504d4945413c37322d27211b140e070000000000000000000000000000000000000000000000000000000000000000040c131920262c32373c4145494d50535558595b5c5d5e5e5e5e5e5d5c5a595754514e4b47433e3a342f29231d160f080100000000000000000000000000000000000000000000010a111920272d33393e42464a4d505254555657575757565453504e4a47433f3a352f2a272e34393e43474a4d4f515253535252504e4b48443f372f251b100500000a151e272f353a3c3c3c3c3c3c4955626f7c8996a2ada094877a6d6053473a2d2014070013202c3946535f6c798693a0acaca09386796c5f5346392c20130e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0d0b080300000000000000000000050b0f1215222e3b4855616e7b8895a2aea5988b7e7165584b3e3225180b00121e2b3845515e6b7784919eaab0a3968a7d7063574a3d3124170b00000000121e2b3845515e6b7885929ea6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a295887b6e6155483b2e22150800101c2936434f5c697683909ca9a99c908376695c4f4336291c100c1926323f4c5965727f8c99a6aca09386796c5f5346392c20130916222f3c4955626f7c8996a2afa396897c6f6356493c3023160900000000000000000000000000000000000000000814202b37434f5b66727e8a96a2a89b8f837b87939fa99d91857a6e62564a3f33271b0f03000000000000000000000000000000000000000000000000000000000000020b131c242c333b42494f555b60656a6e7276797c7e80828384848585848482817f7d7a77736f6b66615b565049423b342c241c140b020000000000000000000f1b27333f4a545c61616161616161616161605b52483e33291f140a000000000000000000000000000000030d18222d37424c565d616161616161616161615f5950453a2e22160a000f1c28343f4a555d626363636363636363615a50463a2e22160a0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000109111820272d343a3f454a4e53575a5e61636567696a6b6c6c6c6c6b6b6a68676562605c5955514d48433d37312b241d160e07000000000000000000000000000000000000000000000000000000000000000009131d28323c46505a656f79838d98a2a39a928a8279716961594f45392d211509000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000b17222d38424a5154555555555555555555555555555555555554514b42392e23180c0000000000000000000000000000000000040c131a21272e343a3f44494e52565a5d60626466676869696968676664625f5c5955514d48433e38322c261f18110a030000000000000000000000000000000000000000000000000000000000070e161d242b31373d43484d5155595c5f62646668696a6b6b6b6b6a6a69676563615e5b57534f4a45403a342e28211a120b030000000000000000000000000000000000000000020b131b232b32383f444a4e5356595c5f6062636364646362615f5d5a57534f4b46403b3532393f454a4f53575a5c5e5f5f5f5f5e5d5b5854504941372d22160a0000030c151d24292d2f303030303c4955626f7c8996a2ada094877a6d6053473a2d2014070013202c3946535f6c798693a0acaca09386796c5f5346392c201306000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000030815222e3b4855616e7b8895a2aea5988b7e7165584b3e3225180b00121f2c3945525f6b7885929fabafa296897c6f6256493c3023160900000000121e2b3845515e6b7885929a9a9a9a9a9a9a9a9a9a9a9a9a9a9a9a9a9a9a9a9a95887b6e6155483b2e22150800101c2936434f5c697683909ca9a99c908376695c4f4336291c100c1926323f4c5965727f8c99a6aca09386796c5f5346392c20130916222f3c4955626f7c8996a2afa396897c6f6356493c3023160900000000000000000000000000000000000000010d1924303c48545f6b77838f9ba6a3978b7f77838f9ba7a2968a7e73675b4f43382c2014080000000000000000000000000000000000000000000000000000000000020b141d252e363e454c535a60666c71767a7e8285888b8d8e909191929191908f8d8b898683807b77726d67615b544d463e362e261d140b020000000000000000121e2b37434f5b666d6e6e6e6e6e6e6e6e6e6c645a50453b30261b110700000000000000000000000000000a141f29343e49545e686e6e6e6e6e6e6e6e6e6e6b61564b3e3226190c00121e2b3744505c676e70707070707070706c62574b3e3225190c0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000070e151c22282e34393e43474b4e515457595b5c5d5e5f5f5f5f5f5e5d5c5a585653504d4945413c37322c262019130b04000000000000000000000000000000000000000000000000000000000000000000010c16202a343e49535d67717b86909aa0a09c948b837b736a61564a3d3125180b000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000f1b27333f4a545c616161616161616161616161616161616161615c544b4034281c1004000000000000000000000000000000070e161d252c32393f454b50555a5e6266696c6f71737475757575757472706e6c6965615d59544f49443e37312a231c140d0500000000000000000000000000000000000000000000000000000009111920282f363c43494e54585d6165696c6e7173747677777878777776757472706d6a67635f5b56514b464039322b241d150d04000000000000000000000000000000000000020b141d252d353c434a50555a5f6366696b6d6f70707171706f6e6c6966635f5b56514c46403c434a50565b5f6366696a6c6c6c6c6b696764605b53493e33271b0f000000030b12191d21232323232f3c4955626f7c8996a2ada094877a6d6053473a2d2014070013202c3946535f6c798693a0acaca09386796c5f5346392c201306040404040404040404040404040404040404040404040404040301000000000000000000000000000000000000000815222e3b4855616e7b8895a2aea5988b7e7165584b3e3225180b00131f2c3946525f6c7986929facaea295887b6f6255483c2f22150900000000121e2b3845515e6b78858d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d887b6e6155483b2e22150800101c2936434f5c697683909ca9a99c908376695c4f4336291c100c1926323f4c5965727f8c99a6aca09386796c5f5346392c20130916222f3c4955626f7c8996a2afa396897c6f6356493c302316090000000000000000000000000000000000000006121d2935414d5964707c88949fab9f93877b737f8b97a3a79b8f83776c6054483c3125190d01000000000000000000000000000000000000000000000000000000010a141d262f3740484f575e656b72777d82878b8e929597999b9c9d9e9e9e9e9d9c9a9896938f8b87837d78726c655f57504840382f261d140b020000000000000013202c3946525f6c777b7b7b7b7b7b7b7b7b766c61574c42382d23180e0300000000000000000000000007111c26313b46505b65707a7b7b7b7b7b7b7b7b7b73675a4d4134271a0e0013202c3946535f6c787d7d7d7d7d7d7d7d73665a4d4034271a0d010000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000030a11171d23282d32373b3e4245484a4c4e4f5151525253525251504f4d4c494744413d3935302b26211b150e08010000000000000000000000000000000000000000000000000000000000000000000000040e18222d37414b555f6a747e889293939393938d857c7266594c3f3326190c00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000121e2b37434f5b666d6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6d665c5145382c1f1306000000000000000000000000000008111820282f363d444a50565c61666a6e7276797b7e80818282828282817f7d7b7875716d6965605a554f49423c352e261f170f060000000000000000000000000000000000000000000000000109121a232b323941474e545a5f64696d7175787b7d8081828484858584848382817e7c7a77736f6b67625c57514b443d362e271f160e0500000000000000000000000000000000000a141d262f373f474e555b61666b6f7275787a7b7c7d7d7d7d7c7a7876736f6b67625d57514b474e555b61666b6f72757778797979787674706c655b4f43372a1e110000000001070d1114161616222f3c4955626f7c8996a2ada094877a6d6053473a2d2014070013202c3946535f6c798693a0acaca09386796c5f5346392c20131111111111111111111111111111111111111111111111111111100d0a0500000000000000000000000000000000000815222e3b4855616e7b8895a2aea5988b7e7165584b3e3225180b0013202c3946535f6c7986939facaea295887b6e6155483b2e22150800000000121e2b3845515e6b78808080808080808080808080808080808080808080808080807b6e6155483b2e22150800101c2936434f5c697683909ca9a99c908376695c4f4336291c100c1926323f4c5965727f8c99a6aca09386796c5f5346392c20130916222f3c4955626f7c8996a2afa396897c6f6356493c30231609000000000000000000000000000000000000000b16222e3a46525d6975818d98a4a79b8f83776e7b87939faba094887c7065594d41352a1e120600000000000000000000000000000000000000000000000000000009131c262f384149525a616970767d83898e92979b9ea1a4a6a8a9aaa9a8a8a9a9a8a7a5a29f9b98938e89847d777069625a524a41392f261d140a00000000000000131f2c3945525e6b758088888888888888887e73695e54493f342a20150b0000000000000000000000030e18232d38424d57626c778288888888888888867c7166594d4034271a0d0013202c3946535f6c79868a8a8a8a8a8a8173675a4d4034271a0d0100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000060c12171d22262a2e3236393b3e40414344454546464645454442413f3d3a3734312d2924201b15100a03000000000000000000000000000000000000000000000000000000000000000000000000000006111b252f39434e58626c76818686868686868686807366594c403326190d0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000013202c3946525f6c777b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b786d6054473a2d2114070000000000000000000000000109121a222a323a41484f555c61676d72767b7e8285888a8c8e8f8f8f8f8e8d8c8a8785817d7975706b66605a544d463f3830292118100700000000000000000000000000000000000000000000000a131b242c353c444b52595f656b7075797d8185878a8c8e8f909191929191908f8d8b898683807b77736d68625c564f484039312820170f0600000000000000000000000000000008121c262f384149515960666c72777b7e82848688898a8a8a8a898785827f7b77736e68635c56515960666d72777b7f8284858686868483807c776b5f5246392c2013000000000000010508090916222f3c4955626f7c8996a2ada094877a6d6053473a2d2014070013202c3946535f6c798693a0acaca09386796c5f5346392c201d1d1d1d1d1d1d1d1d1d1d1d1d1d1d1d1d1d1d1d1d1d1d1d1d1d1d1c1a151009020000000000000000000000000000000815222e3b4855616e7b8895a2aea5988b7e7165584b3e3225180b0013202c3946535f6c7986929facaea295887b6e6155483b2f22150800000000111e2a3743505c677173737373737373737373737373737373737373737373737373726a5f53473a2d21140800101c2936434f5c697683909ca9a99c908376695c4f4336291c100c1926323f4c5965727f8c99a6aca09386796c5f5346392c20130916222f3c4955626f7c8996a2afa396897c6f6356493c3023160900000000000000000000000000000000000004101b27333f4b56626e7a86919da9a3978b7f736a77838f9ba7a4998d8175695e52463a2e23170b000000000000000000000000000000000000000000000000000007111b252e38414a535b646b737a81888e94999ea3a7aaa9a6a3a09f9d9c9c9c9c9d9ea0a2a5a9a8a49f9a958f89827b746c645c534b42382f261c1208000000000000111d2a36424e59646e78838d95959595958f857a70665b51463c31271c1208000000000000000000000b15202a353f4a545f69747e89939595959594897f746a6055493d3125180c0013202c3946535f6c798693969696968d8173675a4d4034271a0d01000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001060c11161a1e2226292c2f31333536373839393939393837363432302e2b2825211d19140f0a04000000000000000000000000000000000000000000000000000000000000000000000000000000000009131d27323c46505a646f787979797979797979797165584c3f3326190c0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000013202c3946535f6c7986888888888888888888888888888888877a6d6154473a2e2114070000000000000000000000010a131b242c343c444b535a60676d73787d82878b8e9295979997969696969698989694918d8a86817c77716b655f58514a423b332a2219110800000000000000000000000000000000000000000009121c252e363e464e565d646a70767c81858a8d919496999a9c9d9e9e9e9e9e9d9b9a9895928f8c88837e79736d676059524a433a322921180e050000000000000000000000000005101a242e38414a535b636a71787d83878b8e91939596979797969594918f8b88837e79746e67615b636a71787e83878b8e9092939392918f8c86796c5f5346392c2013000000000000000000000916222f3c4955626f7c8996a2ada094877a6d6053473a2d2014070013202c3946535f6c798693a0acaca09386796c5f5346392c2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2926211b140c0300000000000000000000000000000815222e3b4855616e7b8895a2aea5988b7e7165584b3e3225180b00131f2c3946525f6c7986929facafa295887b6f6255493c2f221609000000000f1b2834404b565f65666666666666666666666666666666666666666666666666666661584e42372b1e120600101c2936434f5c697683909ca9a99c908376695c4f4336291c100c1926323f4c5965727f8c99a6aca09386796c5f5346392c20130916222f3c4955626f7c8996a2afa396897c6f6356493c302316090000000000000000000000000000000000000914202c38444f5b67737e8a96a2ab9f93877b6f66737e8b97a3a99e92867a6e62574b3f33271c1004000000000000000000000000000000000000000000000000040f19232d37404a535c656d757d858c93999fa5aaaba6a19d9a969492908f8f8f8f90919396999da1a6aba6a09a948d857e766e655d544b41382e241a100500000000000e1a26323d48525c66717b85909aa2a2a1978c82776d62584e43392e24190f04000000000000000007121c27313c46515b66707b86909ba2a2a1978c82776d63584e43382d2115090013202c3946535f6c798693a0a3a39a8d8173675a4d4034271a0d010000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000050a0e12161a1d2022242628292b2b2c2c2c2c2c2b2a29282624211f1c1815110d080300000000000000000000000000000000000000000000000000000000000000000000000000000000000000010b16202a343e48535d666c6c6c6c6c6c6c6c6c6c685f54493d3024170b0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000013202c3946535f6c7986939595959595959595959595959594877a6d6154473a2e21140700000000000000000000000a131c252d363e464e565d646b72787e84898e93979793908e8c8a898989898a8b8c8f91949896928d88827d76706a635c544c453c342c231a11070000000000000000000000000000000000000008121b242e374048505860676f757c82878d91969a9da0a3a5a7a9a9a8a8a7a8a8a9a8a6a4a29f9c98948f8a857f78726b645c554c443b332a20170d040000000000000000000000010c17212c36404a535c656d757c83898e93979b9da0a1a3a2a2a2a2a2a09e9b98948f8a857f79726b656d757c83898f93979b9d9fa0a09f9e9c9386796c5f5346392c2013000000000000000000000916222f3c4955626f7c8996a2ada094877a6d6053473a2d2014070013202c3946535f6c798693a0acaca09386796c5f534639373737373737373737373737373737373737373737373737373737373735322c261e150b01000000000000000000000000000815222e3b4855616e7b8895a2aea5988b7e7165584b3e3225180b00121f2c3845525f6b7885929eabafa296897c6f6356493d3023160a000000000b17232e39444d54595959595959595959595959595959595959595959595959595959564f463c31261a0e0200101c2936434f5c697683909ca9a99c908376695c4f4336291c100c1926323f4c5965727f8c99a6aca09386796c5f5346392c20130916222f3c4955626f7c8996a2afa396897c6f6356493c302316090000000000000000000000000000000000020d1925313d4854606c78848f9ba7a79b8f83776b626e7a87939faba2968b7f73675b5044382c2015090000000000000000000000000000000000000000000000010b16202b353f49525c656e7780878f979ea4abaca6a09a95918d8a878584838282828385878a8d91959aa0a6aba59e97908880776f665d534a40362c22170d02000000000915202b36404a555f69737e88929da7a89e94897e746a5f554a40362b21160c01000000000000040f19242e39434e58636d78828d97a2aca49a8f857b70665b51473c32271c11050013202c3946535f6c798693a0aca79a8d8173675a4d4034271a0d010000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000002060a0d101316181a1b1d1e1f1f1f201f1f1e1e1c1b191715120f0c09050100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000040e18222c37414b545b5f5f5f5f5f5f5f5f5f5f5d564d43382c2014080000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000013202c3946535f6c798693a0a2a2a2a2a2a2a2a2a2a2a2a194877a6d6154473a2e2114070000000000000000000009121c252e374048505860686f767d83898f9597938e8a8784817f7e7d7c7c7c7d7e808285888b8f9499938e88827b746d665e564e463e352c23191006000000000000000000000000000000000006101a242d374049525a626a727980878d93989da2a6a9a8a5a29f9d9c9b9b9a9b9b9c9ea0a2a5a8a8a4a09b96908a847d766e665e564d453c32291f150c010000000000000000000007121e28333e48525c656e777f878e949a9fa3a39f9c99979695959597999b9fa3a09b96918a847d756e777f878e949a9fa4a7a5a2a09f9e9fa09386796c5f5346392c2013000000000000000000000916222f3c4955626f7c8996a2ada094877a6d6053473a2d2014070013202c3946535f6c798693a0acaca09386796c5f5346444444444444444444444444444444444444444444444444444444444444423e3730271d1208000000000000000000000000000815222e3b4855616e7b8895a2aea5988b7e7165584b3e3225180b00111e2b3844515e6b7784919daab0a3978a7d7064574a3e3124180b0000000007121d28323b43494c4d4d4d4d4d4d4d4d4d4d4d4d4d4d4d4d4d4d4d4d4d4d4d4d4d4c4a443d342a2015090000101c2936434f5c697683909ca9a99c908376695c4f4336291c100c1926323f4c5965727f8c99a6aca09386796c5f5346392c20130916222f3c4955626f7c8996a2afa396897c6f6356493c30231609000000000000000000000000000000000006121e2a36414d5965717c8894a0aca3978b7f73675e6a76838f9ba7a79b9084786c6054493d3125190e020000000000000000000000000000000000000000000008121d28323d47515b646e7780899199a1a8afa8a19b948f8a85817d7b79777675757577787a7d8185898f949ba1a9a9a29a928981786f655c52483e33291f140900000000040f1a242e38434d57626c76818b959faaa59b90867b71675c52473d32281e13090000000000010b16202b35404a555f6a747f89949ea9a79d93887e73695e544a3f352a20150b000013202c3946535f6c798693a0aca79a8d8173675a4d4034271a0d0100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000010407090b0d0f10111213131313121211100e0d0b08060300000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000006101a252f39424a5053535353535353535353514c443b31271b10040000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000013202c3946535f6c798693a0acaaa098969696969696969694877a6d6154473a2e21140700000000000000000007111b242e374049525a626a727981888e9597918c87827e7a77757371706f6f6f70717375787b7f83888d9298938d867f787068605850473e352b22180f05000000000000000000000000000000030d18222c363f49525b646c747c848b92989ea4a9aaa4a09c989593918f8e8e8e8e8f90919396999ca0a5aaa6a19b958e87807870685f574e443b31271d1309000000000000000000010d18242f3a454f5a646e77808991989fa5a39d98938f8c8a898888898a8c8f93979ca1a29c958f878078818991989fa6a7a19c989593929292939386796c5f5346392c2013000000000000000000000916222f3c4955626f7c8996a2ada094877a6d6053473a2d2014070013202c3946535f6c798693a0acaca09386796c5f53505050505050505050505050505050505050505050505050505050505050504e4942392f24190d020000000000000000000000000815222e3b4855616e7b8895a2aea5988b7e7165584b3e3225180b00111d2a3743505d697683909ca9b1a5988b7e7265594c3f3326190d00000000010c16202931383d3f40404040404040404040404040404040404040404040404040403e39332b22180e030000101c2936434f5c697683909ca9a99c908376695c4f4336291c100c1926323f4c5965727f8c99a6aca09386796c5f5346392c20130916222f3c4955626f7c8996a2afa396897c6f6356493c3023160900000000000000000000000000000000000b17232f3a46525e6a75818d99a5ab9f93877b6f635a66727e8b97a3aca094897d7165594d42362a1e1207000000000000000000000000000000000000000000030e19242f39444e59636d768089929ba3abaea69e979089837e7975716e6c6a696968696a6c6e7174797e838990979ea6aca49b938a81776d645a4f453b30261b10050000000008121c27313b46505a646f79838e98a2aca2988d83786e63594f443a2f251a10060000000008121d27323c47515c66717c86919ba6aaa0968b81766c61574d42382d23190e04000013202c3946535f6c798693a0aca79a8d8173675a4d4034271a0d01000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000009131d2730383f444646464646464646464644403a322920150a000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000013202c3946535f6c798693a0aca5998e898989898989898989877a6d6154473a2e2114070000000000000000050f19232d364049525b646c747c848b9298918b85807b76726e6b68666463626263636567696c6f73777c81878d9398918a827a726a625950473e342a21170d0200000000000000000000000000000a151f29343e48515b646d767e868e959da3a9aaa49e9994908c898684838281818182838587898c9094999ea4aaa6a099928a827a716960564d43392f251b1006000000000000000007121e2a35404b56616c768089929ba3a8a099928c8783807d7c7b7b7c7d8083878b90959ba2a099928a828a939ba3aaa39c96918c8986858585868886796c5f5346392c2013000000000000000000000916222f3c4955626f7c8996a2ada094877a6d6053473a2d2014070013202c3946535f6c798693a0acaca09386796c5f5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5a544b40352a1e12060000000000000000000000000815222e3b4855616e7b8895a2aea5988b7e7165584b3e3225180b000f1c2935424f5b6875828e9ba7b3a6998d8074675a4e4135281c0f0300000000040e171f262c30333333333333333333333333333333333333333333333333333333312d2821191007000000101c2936434f5c697683909ca9a99c908376695c4f4336291c100c1926323f4c5965727f8c99a6aca09386796c5f5346392c20130916222f3c4955626f7c8996a2afa396897c6f6356493c302316090000000000000000000000000000000004101c28333f4b57636e7a86929eaaa69a8f83776b5e56626e7a86929eaaa5998d82766a5e52463b2f23170b00000000000000000000000000000000000000000009141f2a35404b56606a757f89929ba4adada49c948c857e78726d6965625f5e5c5c5b5c5d5f6165686d72787e858d949ca5ada59c938980766c61574c42372c21160b00000000000b151f29343e48535d67717c86909ba5aa9f958a80756b60564c41372c22170d020000050f1a242f39444e59636e78838d98a2ada3998e84796f645a50453b30261c110700000013202c3946535f6c798693a0aca79a8d8173675a4d4034271a0d01000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000103050608090a0a0b0b0b0a09080706040200000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000010b151e262e33373939393939393939393938352f2920170e03000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000013202c3946535f6c798693a0aca4978a7d7c7c7c7c7c7c7c7c7c796d6054473a2e21140700000000000000020d17212b353f48525b646d757e868e96948d87807a746f6a66625f5c59585656555657585a5c5f63676b70767b82888f96948c847c736b625950463c33291e140a0000000000000000000000000006111c26313b465059636d767f889098a0a7aea69f99938d8884807c7a7776757474747576787a7d8084888d93999fa6aba49c948c847b72685f554b41372d22170d02000000000000000b17232f3a46515d68737d88929ba4a79e968e87817b7773716f6f6e6f7173767a7f848a91979fa49c948f939ca5a8a098918b85807c7a7878797a7c7e796c5f5346392c2013000000000000000000000916222f3c4955626f7c8996a2ada094877a6d6053473a2d2014070013202c3946535f6c798693a0acaca09386796c6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a655d52463a2e2215090000000000000000000000000815222e3b4855616e7b8895a2aea5988b7e7165584b3e3225180b000e1b2734414d5a6673808c99a6b2a89b8f8276695d5044372b1e12060000000000050d151b202426262626262626262626262626262626262626262626262626262625221d170f0700000000101c2936434f5c697683909ca9a99c908376695c4f4336291c100c1926323f4c5965727f8c99a6aca09386796c5f5346392c20130916222f3c4955626f7c8996a2afa396897c6f6356493c30231609000000000000000000000000000000000915212c3844505c67737f8b97a3ada2968a7e72665a525e6a76828e99a5aa9e92867a6f63574b3f34281c100400000000000000000000000000000000000000030f1a25313c47525d67727c87919aa4adada49b928a827a736d67615d59555351504f4f4f515255585c61676d737b828a939ca5aea59b92887d73695e53493e33281d110600000000030d18222c36414b55606a747e89939da8a69c92877d72685d53483e34291f140a00010c16212b36404b55606a75808a959faaa69c91877c72685d53483e33291f140a0000000013202c3946535f6c798693a0aca79a8d8173675a4d4034271a0d090907050300000000000000000001040608090a0a090806040100000000000000000000000000000000000000000000000000000000000000000000000105080b0d101113151616171717171716151412110f0c09060300000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000030c141c22272b2c2c2c2c2c2c2c2c2c2c2b29241e170e0500000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000013202c3946535f6c798693a0aca4978a7d706f6f6f6f6f6f6f6f6e675d5145392c201306000000000000000a141f29333d47515a646d767f889098918a837b756f69635e5a56524f4d4b4a4949494a4b4d5053575b60656a70767d848b93968e867d746b61584e443b30261c11070000000000000000000000020d18232d38434d57626b757f88919aa2aaaca49c958e87827c7773706d6b6968676767686a6b6e7074787c82878e959ca4aca69e968d847a71675d53493e34291e1308000000000000030f1c28343f4b57636e79848f9aa4a99f958c847c756f6b67646362626264676a6e73797f868d959da69e9c9ea5a79e968e86807974706d6b6b6c6d6f7272695d5145382c1f12000000000000000000000916222f3c4955626f7c8996a2ada094877a6d6053473a2d2014070013202c3946535f6c798693a0acaca0938679777777777777777777777777777777777777777777777777777777777777777777766e63564a3d3124170b0000000000000000000000000815222e3b4855616e7b8895a2aea5988b7e7165584b3e3225180b000c1926323f4b5865717e8a97a3b0aa9e9185786c5f53473a2e221609000000000000030a101418191a1a1a1a1a1a1a1a1a1a1a1b22282c2f2f2e2a2723201c1a1a1a1815110c050000000000101c2936434f5c697683909ca9a99c908376695c4f4336291c100c1926323f4c5965727f8c99a6aca09386796c5f5346392c20130916222f3c4955626f7c8996a2afa396897c6f6356493c30231609000000000000000000000000000000020e1a25313d4955606c7884909ca7a99d9185796d61564d5965717d8995a1aca3978b8073685c5044382d211509000000000000000000000000000000000000000914202b37424d58636e79848e98a3acafa59b928980787068625b56514c494644434242434446494c50565b62697078818a939ca5ada3998f857a70655a4f44392e23170c000000000006101a252f39434e58626d77818c96a0aaa3998e84796f655a50453b30261c110709131e28333d48525d67727c87919ca6a99f948a80756b60564b41372c22170d020000000013202c3946535f6c798693a0aca79a8d8173675a4d4034271a17161514120f0c080400000000050a0d111315161717161413100d0a0702000000000000000000000000000000000000000000000000000000000001060a0e1114171a1c1e2021222324242424242322211f1d1b1916130f0c08040000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000020a11171b1e202020202020202020201f1c18130c050000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000013202c3946535f6c798693a0aca4978a7d706363636363636363625d554b4035291d100400000000000006111b26303b454f59636c767f8891988f878078716a635d58535252514c453e3d3c3c3c3d3f4144494f5254595f656b7279818991988f867d736a60564c42382e23180e030000000000000000000008131e29343f4a545f69737d87919aa3acaba29a928a837c76706c6764615e5d5b5b5b5b5c5d5f6164686c71767c838a929aa2aba89f968c83796f655b50453b30251a0f04000000000007131f2c3844505c68737f8b96a1aba1978d837a726a645f5b5856555556585a5e63686e747b838b949faaa8aaa99e958c847c756e6864605f5f5f6063666660574c4135291d10000000000000000000000916222f3c4955626f7c8996a2ada094877a6d6053473a2d2014070013202c3946535f6c798693a0acada09387848484848484848484848484848484848484848484848484848484848484848484847e7164574b3e3124180b0000000000000000000000000815222e3b4855616e7b8895a2aea5988b7e7165584b3e3225180b000a1724303d4956626f7b8894a1adada094887b6f63564a3e32261a0e020000000000000004080b0d0d0d0d0d0d0d0d0d0d131c252d34393b3c3a37332f2c2825211d19140e07000000000000101c2936434f5c697683909ca9a99c908376695c4f4336291c100c1926323f4c5965727f8c99a6aca09386796c5f5346392c20130916222f3c4955626f7c8996a2afa396897c6f6356493c3023160900000000000000000000000000000007131e2a36424e5965717d8995a0aca4988c8175695d514955616c7884909ca8a89c9084786d6155493d31261a0e020000000000000000000000000000000000020e1a25313c48535e6a75808b95a0aab1a79d938980776e665e57504a45403d3a383636353637393c40454a50575f666f77818a949da7aba1978c82776c61564a3f34281d1105000000000009131d27323c46515b656f7a848e99a3aba0968b81766c61574d42382d23180e101a252f3a444f59646e79838e98a3aca2978d83786e63594e443a2f251a1006000000000013202c3946535f6c798693a0aca79a8d8173675a4d40342723232322201e1c1814100b05050b11161a1d202223232323211f1d1a16130e08010000000000000000000000000000000000000000000000000003080d12161a1d212426292b2c2e2f303031313130302f2d2c2a2825221f1c1814100b060100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000060b0f121313131313131313131312100c0701000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000013202c3946535f6c798693a0aca4978a7d70635756565656565656524c43392f24180c000000000000010c17222d38424d57616b757e8891978e867d756e665f5f5f5f5f5f5f5d574f453a302f303135404a535b5e5f5f5f5f61686f777f8790988f867c72685e544a3f352a1f1409000000000000000000020e1924303b46515b66717b858f99a3acaba29990888078716b65605b575452504f4e4e4e4f505255585b60656b717880889099a2aba89f958b81776c62574c41362b20150900000000000a16232f3b4854606c7884909ca7a69b90857b71686059534e4b494848494b4e52575c62697179828f9ba8b5b1a5988c837a726a635d585452525254565a5a564e453b3024190d000000000000000000000916222f3c4955626f7c8996a2ada094877a6d6053473a2d2014070013202c3946535f6c798693a0acafa499929090909090909090909090909090909090909090909090909090909090909090908b7e7164574b3e3124180b0000000000000000000000000815222e3b4855616e7b8895a2aea5988b7e7165584b3e3225180b000815212e3a4753606c7985919eaab0a3978b7e72665a4e42362b1f1308000000000000000000000000000000000000040f1a242e373f45484946433f3c3834312d2925201911080000000000101c2936434f5c697683909ca9a99c908376695c4f4336291c100c1926323f4c5965727f8c99a6aca09386796c5f5346392c20130916222f3c4955626f7c8996a2afa396897c6f6356493c302316090000000000000000000000000000000c17232f3b47525e6a76828e99a5ab9f94887c7064584c44505c6874808b97a3aca195897d71655a4e42362a1f1307000000000000000000000000000000000007131f2a36424d5964707b86919ca7b2aa9f958b81776e655c544c453f3934302d2b2a2929292b2d3034393f454d545d656e78828b95a0aaa89e93887d72675b5045392d2115080000000000010b16202a343f49535e68727c87919ba6a79d93887e73695e54493f352a201517222c37414c56616b76808b95a0aaa59a90867b71665c51473d32281d130900000000000013202c3946535f6c798693a0aca79a8d8173675a4d40342f3030302f2d2b2824201c161110171c2126292c2e2f30302f2e2c2926231f19120b020000000000000000000000000000000000000000000003090f14191e22262a2d30333537393b3c3d3d3e3e3d3d3c3b3a383634322f2b2824201b17110c0600000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000013202c3946535f6c798693a0aca4978a7d7063574a49494949494946413a31281d120700000000000008131e29343f49545e69737d8791988e857c746b6360696b6b6b6b6b6b6961564b3f332625303b46515c656b6b6b6b6b6b6b6a6d757e8790988e847a70665b51463c31261b1004000000000000000008131f2a35414c57626d78838d97a1abada39990877e766e666059544f4b48454342414141424446484b4f545a60666e767e879099a3ada79d93897e73695e53483d31261a0f03000000000d1926323f4b5764707c8895a1aca1958a7e73695f564e47423f3d3c3c3d3f42464d57616b757e88929daab1b1a4988c81766c6158524c48454546474a4d4d4a443c33291f1308000000000000000000000916222f3c4955626f7c8996a2ada094877a6d6053473a2d2014070013202c3946535f6c798693a0acb5aba39e9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d988b7e7164574b3e3124180b0000000000000000000000000815222e3b4855616e7b8895a2aea5988b7e7165584b3e3225180b0006121f2b3844505d6975828e9aa7b3a79b8f83766a5f53473b30251a0f0500000000000000000000000000000000000a15202c364049505555534f4b4844413d3936312b231a110700000000101c2936434f5c697683909ca9a99c908376695d5043362a1d100c1926323f4c5965727f8c99a6aca09386796c5f5346392d20130916222f3c4955626f7c8996a2afa396897c6f6356493c30231609000000000000000000000000000005101c2834404b57636f7b87929eaaa79b8f83776b5f54483f4b57636f7b87939faaa59a8e82766a5f53473b2f23180c00000000000000000000000000000000000b17232f3b47525e6a75818c98a3aeaea3988e83796f655c534a423a342e2824211e1d1c1c1d1e2024282e343b434b535c666f79848e98a3aaa49a8f83786d6156493d3124170b000000000000040e18232d37414c56606b757f8a949ea8a49a8f857b70665b51463c32271d1e29333e48535d68727d87929ca7a89d93897e74695f544a40352b20160c0100000000000013202c3946535f6c798693a0aca79a8d8173675a4d403b3c3d3d3c3b3a3734302c27221c1b22282d3236393b3c3d3d3c3a3836322f2a241d140b010000000000000000000000000000000000000002080f141a20252a2e3236393c3f4244464748494a4a4a4a4a4948474543413e3b3834302c27221d17120b050000000000000000000000000000000000000000000000000407080808080808080808080602000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000002050708080808080808080706030000000000000013202c3946535f6c798693a0aca4978a7d7063574a3d3c3c3c3c3c3a362f281f160b010000000000020e19242f3a45505b66707a858f998f867c736a625a677278787878787873675b4e4235282c37424d58636e7778787878787874696c757e8791968c82786d63584d42372c21160a00000000000000010d1824303b47525d68747e8a949fa9afa59b91877e756c645c554e48433f3b3937353434353537393c3f44494e555c646c757e87919ba5afa59a90857a6f64594e42372b201409000000000f1b2835414e5a6773808c98a5a89c9084786d62574d443c3732302f2f3037414b555f69737d87909aa4a8a4a5a89e93887d73685d52473c3938393b3e40403e39322a21170d02000000000000000000000916222f3c4955626f7c8996a2ada094877a6d6053473a2d2014070013202c3946535f6c798693a0acb9b3aca8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a4988b7e7164574b3e3124180b0000000000000000000000000815222e3b4855616e7b8895a2aea5988b7e7165584b3e3225180b00030f1c2835414d5a66727e8b97a3afab9f93877b6f63584c41362b21170d0400000000000000000000000000000007111c26313d48525b61625f5b5854504d4946423c352c23190e03000000101c2936434f5c697683909ca9aa9d9083766a5d5044372a1d110c1926323f4c5965727f8c99a6ada09386796d6053473a2d20140916222f3c4955626f7c8996a2afa396897c6f6356493c3023160900000000000000000000000000000915212d3944505c6874808b97a3aea2968a7e72675b4f433b47535e6a76828e9aa6aa9e93877b6f63584c4034281d1105000000000000000000000000000000030f1b2834404b57636f7b86929da9b3a89d92877c71675d534a41383029221d181412100f0f101114181d22293139414a545e67727c87919c9e99938d887e7265584b3f3225180c0000000000000006111b25303a444e59636d78828c97a1aba1978c82776d63584e43392e2425303a454f5a646f79848f99a4aba0968c81776c62584d43382e23190f040000000000000013202c3946535f6c798693a0aca79a8d8173675a4d454749494a49484644403d38332d27252c33393e424547494a4a494745423f3b362e261d1309000000000000000000000000000000000000060d131a20262b31353a3e4246494c4e5152545556575757575756555352504d4a4744403c38332e28231d171009020000000000000000000000000000000000000000060c101315151515151515151514120e0a040000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000003090e1214151515151515151514120f0a05000000000013202c3946535f6c798693a0aca4978a7d7063574a3d303030302f2e2a241e160d0400000000000008131f2a35414c57626d77828c9791877d736a61585b687582858585858275685b4f423528323d48535e69747f858585858581766a626b757e8993948a7f74695f54493d32271c100500000000000006121d2935414c58636e7a85909ba6b0a89e93897f756c635a524a433d38332f2c2a29282828292a2d2f33383d434a525a636c758089949ea9aca1978c81756a5f53483c3125190e02000000111d2a3743505c6976828f9ba8a5998c8074685c51453b322b2623222a343e49535d67717b858f99a2a69e98989ea49a8f84796e63584d42372c2c2e323434322d2821180f0600000000000000000000000916222f3c4955626f7c8996a2ada094877a6d6053473a2d2014070013202c3946535f6c798693a0acb4aaa19c9b9b9b9b9b9b9b9b9b9b9b9b9b9b9b9b9b9b9b9b9b9b9b9b9b9b9b9b9b9b9b9b988b7e7164574b3e3124180b0000000000000000000000000815222e3b4855616e7b8895a2aea5988b7e7165584b3e3225180b00000c1925313e4a56626e7a87939eaaafa3978c8074695e53483d33281f160e0701000000000000000000000002081019232d38434e59646d6f6b6864605d5955524e473e352a1f1408000000101c2936434f5c697683909ca9aa9e9184776b5e5145382b1f120c1926323f4c5965727f8c99a6ada194877a6e6154483b2e22150916222f3c4955626f7c8996a2afa396897c6f6356493c3023160900000000000000000000000000020e1a26323e4955616d7884909ca8a99d91867a6e62564a3e36424e5a66727d8995a1ada3978c8074685c5145392d21160a00000000000000000000000000000007131f2c3844505c6874808b97a3aeada2968b80756a60554b41382f261e17110c08050300000205080c11171f272f38424c56606a75808a95938d88827c766f63574b3e3125180b000000000000000009141e28323d47515c66707a858f99a4a99e94897f746a5f554b40362b2d37424c57616c76818b96a0aba3998f847a6f655b50463b31271c1207000000000000000013202c3946535f6c798693a0aca79a8d8173675a4f5254555656565553504d49443e39322f373e444a4e52545656565554514e4b4740382f251a0f04000000000000000000000000000000010910171e252b31373c41464a4e5255585b5d5f61626363646464636261605e5c5a5754504c48443f3a342e28211b140c050000000000000000000000000000000000020a11181c20212222222222222222211e1a150e070000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000060e141a1e202121212121212121211f1b1610080000000013202c3946535f6c798693a0aca4978a7d7063574a3d3024232323211e19130c04000000000000020d1925303b47525d68737e899494897f756b62584f5b6875828e92928f8275685b4f42352e39444f5a65707b869192928f857a6f645a636d76818b9591867b70655a4f43382d21160a0000000000000a16222e3a46515d6974808b96a1adaca1978c82776d635a51484039322c2723201d1c1b1b1b1c1e2023272c32384048515a636d77828d97a2ada89d92877b7065594d42362a1e1206000000121f2b3845515e6b7784919daaa3968a7d7064584c403429201a1d27323c46505a656f79838d97a1a89e958c8c96a0a1968b80756a5f54483d32262225272725221d160f060000000000000000000000000916222f3c4955626f7c8996a2ada094877a6d6053473a2d2014070013202c3946535f6c798693a0acafa398908e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8b7e7164574b3e3124180b0000000000000000000000000815222e3b4855616e7b8895a2aea5988b7e7165584b3e3225180b00000915222e3a46525e6a76828e9aa5b1a89d91867a6f64594f443a31282018120d08050302010101020406090e131a222b353f4a545f6a767b7774706d6965625e5950473c3024180c000000101c2936434f5c697683909ca9ab9f9286796c6053463a2d21140d1926333f4c5966727f8c99a6afa295897c6f6356493d3024170b1623303c4956636f7c8996a2afa396897c6f6356493c302316090000000000000000000000000007131f2b37424e5a66727d8995a1ada5998d8175695d51463a323d4955616d7985919ca8a89c9185796d61554a3e32261a0f0300000000000000000000000000000b17232f3c4854606c7884909ca8b4a89c91857a6f64594e44392f261d140d0600000000000000000000060d151d26303a444e59636e79848d88827c76716b655d52473b2f22160a0000000000000000020c16212b353f4a545e69737d88929ca6a59b91867c71675c52473d33343e49535e68737d88939da8a79c92877d72685e53493e342a1f150a00000000000000000013202c3946535f6c798693a0aca79a8d8173675a5b5e6162636363615f5c59554f4a443d39414950555a5e6162636362605e5b57524a41362b2014080000000000000000000000000000030b131b222930363c42484d52565a5e6265676a6c6d6f6f70717170706f6e6d6b696663605c58544f4a453f39332c251e170f07000000000000000000000000000000020b141c23282c2e2e2e2e2e2e2e2e2e2e2b26201910070000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000710181f262a2d2e2e2e2e2e2e2e2e2d2b27211a120900000013202c3946535f6c798693a0aca4978a7d7063574a3d302417161615120d08010000000000000007131e2a35414c58636e7a8590978c82776d6359504e5b6875828e9b9c8f8275685b4f4235343f4a55606b76818c979e93897e73685d535b656f79848e988d82766b6055493e32271b0f0300000000020e1b27333f4a56626e7a85919ca8b2a69b90857a70655b51483f362e27201b1713110f0e0e0e0f1114171b21272e363f48515b66707b86919ca8afa3988d81756a5e52463b2f23170b000000131f2c3946525f6c7985929faba194887b6e6255483c3023181a242f39434e58626c76818b959fa9a0968c83848e99a49c91867b70655a4e43382c21191a1a1916110b04000000000000000000000000000916222f3c4955626f7c8996a2ada094877a6d6053473a2d2014070013202c3946535f6c798693a0acaca09386828282828282828282828282828282828282828282828282828282828282828282827e7164574b3e3124180b0000000000000000000000000815222e3b4855616e7b8895a2aea5988b7e7165584b3e3225180b000005121e2a36424e5a66717d8995a0acaea2978c81766b60564c433a322a231d191512100e0e0d0e0f101216191e252c343d47515b66717c8784807c7975726e6a62584d4135281c0f030000101c2936434f5c697683909ca9ada194877b6e6255493c3024180d1a2733404d596673808c99a6b0a4978a7e7165584c3f33271a0e1723303d4a5663707d8996a3b0a396897c6f6356493c30231609000000000000000000000000000c1824303b47535f6b76828e9aa6aca094887c7064594d41352d3945515c6874808c98a4ada195897e72665a4e43372b1f130800000000000000000000000000010e1a27333f4b5864707c8895a1adafa3978b8074695d52473c32271d140b02000000000000000000000000030b141e28323c47525c68737e827c76716b65605a534b41362a1f1307000000000000000000040f19232e38424c57616b76808a959fa9a2988d83786e64594f443a3b46505b65707a858f9aa4aa9f958a80756b61564c41372d22180d0300000000000000000013202c3946535f6c798693a0aca79a8d81736764686b6d6f70706f6e6c6965605b554e47424b535a61666a6d6f70706f6d6a67635c53483c3124180c00000000000000000000000000040d151d252c343a41484e53595e62676a6e717476787a7b7c7d7d7d7d7d7c7b79777573706c6965605b56504b443e3730292119110900000000000000000000000000000a141d262e34383b3b3b3b3b3b3b3b3b3a37312b2219100500000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000060f19222a31363a3b3b3b3b3b3b3b3b3a37322c241b1207000013202c3946535f6c798693a0aca4978a7d7063574a3d3024170a090805020000000000000000000b17232f3b46525e6974808b9691867b70665b51474e5b6875828e9b9c8f8275685b4f42353b46515c67727d88939e978d82776c61574c535d67727c879293887c71665a4f43372c2014080000000006121f2b37434f5b67737e8a96a2adaca1958a7e73695e53493f362d241c150f0b0704010000000205070b10151c242d36404a545f6974808b96a2aea99e92867a6f63574b3f33271b0e02000013202c3946535f6c798693a0aca094877a6d6054473a2d2117212c36414b555f6a747e88939da7a1978e847a7d88939ea3988d81766b6054493d32261b0f0e0c09050000000000000000000000000000000916222f3c4955626f7c8996a2ada094877a6d6053473a2d2014070013202c3946535f6c798693a0acaca0938679757575757575757575757575757575757575757575757575757575757575757575746d62564a3d3024170a0000000000000000000000000815222e3b4855616e7b8895a2aea5988b7e7165584b3e3225180b0000010d1a26313d4955616c78848f9aa5b1a89d92877d72685e554c443c352e2925211e1c1b1a1a1b1c1d1f22252a30363e464f59636d77828d908c8985817e7a74695d5044372a1d11040000101c2936434f5c697683909ca9afa3968a7d7165584c4034291d131b2834414e5a6774818d9aa7b2a6998d8174675b4f43372b1f151824313e4b5764717d8a97a4afa296897c6f6256493c2f23160900000000000000000000000005111d2934404c58646f7b87939faaa79b8f84786c6054483c302834404c58646f7b87939faba69a8e83776b5f53473c3024180c0100000000000000000000000004111d2a36424f5b6774808c98a5b1ab9e93877b6f63584c41362b20160c020000000000000000000000000000020c16202b35404b56616d7776716b65605a544e4941392f24190e020000000000000000000007111c26303b454f5a646e78838d97a2aa9f958a80756b61564c41424d57626c77818c96a1aba2988d83786e64594f443a30251b10060000000000000000000013202c3946535f6c798693a0aca79a8d81736a7074777a7b7c7d7c7b7875716c666059514a545d656c72767a7c7d7c7b7976736e64594d4034271b0e000000000000000000000000050d161f272f373e454c53595f64696e73777a7d8183858788898a8a8a8a8a89888684827f7c7975716c67615c564f49423a332b231b120900000000000000000000000006111c262f383f4548484848484848484847433c342b21170c010000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000050e18212b343c4246484848484848484847433e362d23190e030013202c3946535f6c798693a0aca4978a7d7063574a3d3024170a00000000000000000000000004101c2834404b57636e7a8691968a7f74695e5449424e5b6875828e9b9c8f8275685b4f4236414c57626d78838e999b91867b70655b50454b55606b76818c978e82776b5f54483c3024180c000000000a16222f3b47535f6b77838f9ba7b3a79b8f84786d62574c42372d241b120b040000000000000000000000040b121b242e38424d58636e7a85919da9aea3978b7f73675b4f43372b1e1206000013202c3946535f6c798693a0aca094877a6d6053473a2d211e28333d48525d67717c86909aa4a3998f857b7276818c97a39e93877c71655a4e43372c2015090000000000000000000000000000000000000916222f3c4955626f7c8996a2ada094877a6d6053473a2d2014070013202c3946535f6c798693a0acaca09386796c686868686868686868686868686868686868686868686868686868686868686868645b51463a2e2115090000000000000000000000000815222e3b4855616e7b8895a2aea5988b7e7165584b3e3225180b0000000915212d3944505c67727e89949faaaea4998e847a70675e554d46403a35312d2b2928272727282a2c2e32363b41485058616b757f89949c9995918e8a81766a5d5044372a1e11040000101c2936434f5c697683909ca9b2a6998d8175685d51453a2f251f1e2936424f5c6875828e9ba8b4a89c9084776b5f53473c31271f1e26333f4c5965727e8b98a5aea295887b6f6255483c2f2216090000000000000000000000000a16222d3945515d6874808c98a3aea2978b7f73675b4f43382c242f3b47535f6b77838f9aa6ab9f93877b7064584c4035291d11050000000000000000000000000713202c3945525e6b7783909ca8b3a79a8e82766a5e52473b3024190e0400000000000000000000000000000000040e19242f3a45505b656b6b65605a544e49433d3730271d13080000000000000000000000000a141f29333d48525c67717b86909aa4a79c92877d72685d53494a545f69747e89939ea8a59b90867c71675c52483d33281e1309000000000000000000000013202c3946535f6c798693a0aca79a8d8173767b80848688898a898785817d77716b635b535c666f777d83868889898886838075685b4f4235281c0f0000000000000000000000040e171f283139414850575e646a70757a7e83878a8d8f929395969697979796959493918e8c8885817c78736d67615a534c453d352d241b120900000000000000000000000b17222d38424a51545555555555555555534e463d33281d110600000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000030d17202a333d464d525454545454545454534f483f352b1f14080013202c3946535f6c798693a0aca4978a7d7063574a3d3024170a0000000000000000000000000814202c3844505c6874808b979084796e63584d42424e5b6875828e9b9c8f8275685b4f423d48535e69747e8a959f958a7f74695f54493e444e5964707b869293887c7064594d4135291d10040000000d1926323e4b57636f7b8894a0abaea2968a7e73675c51463b30261b120900000000000000000000000000000009121c26313b47525d6975818c98a4b0a79c9084776b5f53473b2e2216090000131f2c3946525f6c7985929faba194877b6e6155483b2f2225303a454f5a646e79838d98a2a59b91877d736a707b86919da4998d82766b5f54483d31251a0e0200000000000000000000000000000000000916222f3c4955626f7c8996a2ada094877a6d6053473a2d2014070013202c3946535f6c798693a0acaca09386796c5f5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5852493f35291d11050000000000000000000000000815222e3b4855616e7b8895a2aea5988b7e7165584b3e3225180b00000005101c28333f4a56616c78838e98a3adaba0968c837970675f58514b45413d3a3736353434343536383b3e42474c535a626a737d87919ba6a5a19d92877b7065594d4135291c0f030000101c2936434f5c697683909ca9b5a99d9185796d61564b41372f2b2b2c3845515e6a7784909da9b6aca094877b7064584d4239302c2a2b35424e5b6774818d9aa6ada194877a6e6154483b2e2115080000000000000000000000030f1b26323e4a56616d7985919ca8aa9e92867a6e62564b3f33271f2b37434e5a66727e8a96a2aea4988c8074695d5145392e22160a0000000000000000000000000916222f3b4854616d7a86939facafa3978a7e72665a4e42362a1f130800000000000000000000000000000000000007121d28343f49535b5f5f5a544e49433d38322c251e150b01000000000000000000000000020d17212c36404a555f69747e88939da7a3998f847a6f655a50515b66707b85909aa5a89e93897e746a5f554b40362b21160c02000000000000000000000013202c3946535f6c798693a0aca79a8d817a81878c90939596969694918d89837c756d655c646e7881898e9395969695928f8275685b4f4235281c0f00000000000000000000030d162029313a434b535a61686f757b81868b8f9396999c9ea0a1a2a3a4a4a4a3a2a19f9d9b9895918d88847e78726c655e574f473f362e241b1209000000000000000000000f1b27333f4a545c6161616161616161615f584f453a2e221609000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000010b151f29323c454f585f6161616161616161605a51473c3024180c0013202c3946535f6c798693a0aca4978a7d7063574a3d3024170a0000000000000000000000000c1824303c4855616c788490968a7e73685c51463b424e5b6875828e9b9c8f8275685b4f42434e59646f7a85909b998e83786d63584d42373d48535e6975818c988d8175695d5145392d211408000004101c2935424e5a67737f8b98a4b0aa9e92867a6e62564b3f34291e140a00000000000000000000000000000000000a141f2a35414c5864707c8894a0acaca094887b6f63564a3e3125190c0000121f2b3845515e6b7784919daaa296897c7063574b3e33272c37414c56616b76808b959fa79d93897f756b616975808b97a29e93887c7065594e42362a1f130700000000000000000000000000000000000916222f3c4955626f7c8996a2ada094877a6d6053473a2d2014070013202c3946535f6c798693a0acaca09386796c5f534e4e4e4e4e4e4e4e4e4e4e4e4e4e4e4e4e4e4e4e4e4e4e4e4e4e4e4e4e4e4e4c4740372e23180d010000000000000000000000000815222e3b4855616e7b8895a2aea5988b7e7165584b3e3225180b000000000b17232e3945505b66717c87919ba5afa89e948b8279716a635c56514d4946444241414041424345474a4e52575d646c747c858f99a3adaca1968c81756a5f54483d3125190d000000101c2936434f5c697683909ca9b4aca1958a7e73685d5349413b3837383d4854616d7986929fabb2aaa4988c81756a5f544b423c3837383b45515e6a76838f9ca8ac9f9286796c6053463a2d201407000000000000000000000008141f2b37434f5a66727e8a96a1ada5998d81756a5e52463a2e221a26323e4a56626d7985919da9a99d9185796d62564a3e32271b0f0300000000000000000000000b1825313e4a5763707c8996a2aeaca094877b6e62564a3e32261a0e02000000000000000000000000000000000000010c17222d3841494f52524e49433d38322c26211b140c030000000000000000000000000000050f1a242e39434d57626c76818b95a0aaa0968b81766c625758626d77828d97a2aba1978c82776d62584e43392e241a0f0500000000000000000000000013202c3946535f6c798693a0aca79a8d81838b92989c9fa2a3a3a2a09d99948e8780776e656a75808a939a9fa2a3a3a19c8f8275685b4f4235281c0f000000000000000000010b151f28323b434c555d656c737a81878c92979b9fa3a6a8a9a6a5a3a2a2a2a2a2a3a5a7a9a7a4a19d99948f8a847d7770686159514840372d241b1107000000000000000000121e2b37434f5b666d6e6e6e6e6e6e6e6e6a61564a3e3225190c00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000009131d27313b444e57616a6e6e6e6e6e6e6e6e6b63584d4134281b0f0013202c3946535f6c798693a0aca4978a7d7063574a3d3024170a0000000000000000000000030f1b2834404c5965717d89959185796e62574b4035424e5b6875828e9b9c8f8275685b4f424a55606b76818c979d92877c71675c51463b3137424d5864707b87939185796d6155493d3024180b000006131f2c3845515d6a76838f9ba7b2a69a8e8275695d51463a2e23180d020000000000000000000000000000000000030e1924303c48535f6c7884909ca9b0a4978b7f72665a4d4134281c0f0300101d2a3643505c6975828e9ba7a4988c7f73675b4f43382e333e48535e68737d88929da7a0958b81776d6359636f7a86919da4998d81766a5e53473b2f23180c00000000000000000000000000000000000916222f3c4955626f7c8996a2ada094877a6d6053473a2d2014070013202c3946535f6c798693a0acaca09386796c5f5346424242424242424242424242424242424242424242424242424242424242403c362e251c1107000000000000000000000000000815222e3b4855616e7b8895a2aea5988b7e7165584b3e3225180b0000000006111d28333f4a55606a757f89939da7b0a69d948c837b746d67625d595653514f4e4d4d4d4e505154565a5e63696f767e868e97a1aaaea49a8f857a6f64594e42372c201409000000101c2936434f5c697683909ca9ada29b988f84796f655b534c47454445484e5965717d8995a2aeaaa0999892867b70665d544d48454445474c56626e7a86929fabaa9d9084776b5e5145382c1f120600000000000000000000010d1824303c48535f6b77838f9aa6aca094897d7165594d41352a1e16222d3945515d6975818c98a4ada2968a7e72665b4f43372b20140800000000000000000000000d1a2633404c5966727e8b98a4b1aa9d9184786b5f53463a2e211509000000000000000000000000000000000000000006111c262f373e434645433d38322c26211b151009020000000000000000000000000000000008121d27313b46505a656f79838e98a2a89d93887e73695f5f6a747f89949ea9a49a8f857a70655b51463c31271d12080000000000000000000000000013202c3946535f6c798693a0aca79b8f868c959da4a29f9c9b9a9a9b9c9e9f99918981776e6f7b87929ca5ababa49f9c9b8f8275685b4f4235281c0f00000000000000000009131d27313a444d565e676f767e858c92989da2a7aba7a39f9c9a9896969595959697989a9da0a3a7a9a5a09b958f88817a736b635a52493f362d23190f05000000000000000013202c3946525f6c777b7b7b7b7b7b7b7b73665a4d4033271a0d010000000000000000000000000000000000000000000000000000000000000000000000000000000000000007111b252f39434d56606a737b7b7b7b7b7b7b7b75695c504336291d100013202c3946535f6c798693a0aca4978a7d7063574a3d3024170a000000000000000000000006121f2b3744505c6975818d998d8175695d51463a35424e5b6875828e9b9c8f8275685b4f45505b66717c87929d968b80756b60554a3f352a303c48535f6b77838f968a7d7165594c4034271b0f02000915222e3b4754606d7986929eabafa3968a7e7165594d4135291d12060000000000000000000000000000000000000008131f2b37434f5c6874818d99a6b2a79b8e8275695d5044372b1e1205000f1b2834414d5a66727f8b97a4a89b8f83776b60554a40363a454f5a656f7a858f99a4a2988e84796f655b525e6975808c98a39e92877b6f63584c4034281c1004000000000000000000000000000000000916222f3c4955626f7c8996a2ada094877a6d6053473a2d2014070013202c3946535f6c798693a0acaca09386796c5f534639353535353535353535353535353535353535353535353535353535353533302b241c130a00000000000000000000000000000815222e3b4855616e7b8895a2aea5988b7e7165584b3e3225180b00000000000c17222d38434e58636d77818b959ea7afa69e958d867f78736e6965625f5d5c5b5a5a5a5b5c5e6063666a6f747a81889098a0a9afa69c92887d73685e53483c31261b0f04000000101c2936434f5c697683909ca9a79b908b908b81766d655d57535151525459606a75818d99a5b0a4988e8b928d82786f665e585452515153575e68737e8a96a2aea79a8e8275685c4f43362a1d10040000000000000000000006111d2935414c5864707c88939faba79c9084786c6054483d312519111d2935414c5864707c8894a0aba69b8f83776b5f54483c3024190d01000000000000000000000f1b2835414e5b6774818d9aa7b3a79b8e8275695c5043372a1e12050000000000000000000000000000000000000000000a141d252d3337393936322c26211b15100a04000000000000000000000000000000000000000b151f2a343e48535d67727c86919ba5a59a90857b706666717b86909ba6a79d92887d73685e54493f342a20150b000000000000000000000000000013202c3946535f6c798693a0acaba09792969ea19b9692908e8d8d8e8f92959a9b9389807673808c97a3aeaba29a938f8e8f8275685b4f4235281c0f000000000000000006111b252f39434c565f687078818890969da3a9aaa49f9b9793908d8b8a89888888898a8c8e9093979ba0a5aaa6a09a938c857d756c645b51483f352b21170c020000000000000013202c3946535f6c79868888888888888173675a4d4034271a0d01000000000000000000000000000000000000000000000000000000000000000000000000000000000000040f19232d37414b555f68727c858888888888877d73685c4f4336291d100013202c3946535f6c798693a0aca4978a7d7063574a3d3024170a00000000000000000000000915222e3a4753606c78859195897c7064584c403535424e5b6875828e9b9c8f8275685b4f4c57626d78838e999a8f84796e64594e43392e232b37424e5a66727e8b978d8175685c5043372a1e1105000b1824313d4a56636f7c8895a1aeaca093877a6e6255493d3125190d0100000000000000000000000000000000000000030f1b27333f4c5864717d8a96a3afaa9e9185786c5f53463a2d201407000c1925313e4a56636f7b87939faba094887c71665c52483f414b56616c76818c96a1a59b91867c72675d534d58646f7b87939ea3978c8074685c5044382d211509000000000000000000000000000000000916222f3c4955626f7c8996a2ada094877a6d6053473a2d2014070013202c3946535f6c798693a0acaca09386796c5f5346392c2828282828282828282828282828282828282828282828282828282827241f19120a0100000000000000000000000000000815222e3b4855616e7b8895a2aea5988b7e7165584b3e3225180b000000000006111c27323c47515b656f79838c959da6aea79f98918a847e7975726e6c6a686767676768696a6d6f72767a80858b929aa2aaaea69d948a80766c61574c41362b20150900000000101c2936434f5c697683909ca9a5998c7f89928980766f6863605e5d5e60646a727c87929ea9aca09488818c948a8178706964605e5d5e606368707a848f9ba7afa3978b7e7266594d4034271b0e02000000000000000000000a16222e3a45515d6975818c98a4afa3978b7f73675c5044382c20140c1824303c48545f6b77838f9ba7ab9f94887c7064584d4135291d120600000000000000000000101d293643505c6975828f9ca8b2a6998c8073665a4d4134281b0f02000000000000000000000000000000000000000000020b131b22272a2c2c2a26211b15100a04000000000000000000000000000000000000000000030d18222c37414b55606a747e89939ea8a1978d82786d6e78838d98a2aaa0958b81766c61574c42382d23180e03000000000000000000000000000013202c3946535f6c798693a0acb2a9a29fa19e96908a8683818181818386898e949a92887e76838f9ca8b0a49a90888382828275685b4f4235281c0f00000000000000030d18222d37414b555e68717a828b939aa1a8aca59f99948f8a8783817e7d7c7b7b7b7c7d7f8184878b8f94999fa5aba59e968f877e766d635a51473d33281e13090000000000000013202c3946535f6c798693959595958d8173675a4d4034271a0d010000000000000000000000000000000000000000000000000000000000000000000000000000000000010c16202b353f49535d67717a848e94949492887e756b61574c4034271b0e0013202c3946535f6c798693a0aca4978a7d7063574a3d3024170a00000000000000000000000b1824313d4a56636f7b88949185796c6054483c3035424e5b6875828e9b9c8f8275685b50525d68737e89949e93887d72685d52473d32271c26323e4a56626e7b87939184786b5f5246392d201407000d1926333f4c5865727e8b97a4b0aa9d9084776b5f5246392d2115080000000000000000000000000000000000000000000b1724303c4955626e7b8794a0adada094877a6e6155483c2f221609000916222e3a47535f6b77838e9aa5a4998e83786e645a514947525d68737d88939da89e93897f746a60564c47535f6a76828e9aa59c9085796d6155493d3125190d000000000000000000000000000000000916222f3c4955626f7c8996a2ada094877a6d6053473a2d2014070013202c3946535f6c798693a0acaca09386796c5f5346392c201b1b1b1b1b1b1b1b1b1b1b1b1b1b1b1b1b1b1b1b1b1b1b1b1b1b1b1a18140e08000000000000000000000000000000000815222e3b4855616e7b8895a2aea5988b7e7165584b3e3225180b0000000000000a15202a353f4a545d67707a838b949ca3aba9a29b958f8a86817e7b78777574737374747577797c7e82878b91969da4abaca49c948b81786e645a4f453a30251a0f0300000000101d2a3643505d697683909da9a5988c7e838e9289817a746f6c6b6a6b6d70757c858e98a3afa89c90847b8691938a827b75706d6b6a6b6c6f747a828c96a1acab9f93877b6f63564a3e3125180c00000000000000000000030f1b27333f4a56626e7985919da9aa9e92867a6f63574b3f33271c1008141f2b37434f5b67737e8a96a2aea4988d8175695d52463a2e22160b00000000000000000000111e2b3744515d6a7784909daab1a4978b7e7165584b3f3225190c0000000000000000000000000000000000000000000000010910161b1e201f1e1a15100a0400000000000000000000000000000000000000000000000006101a252f39444e58626d77818c96a0a99e94897f7475808a949fa9a3988e83796f645a4f453b30261b110700000000000000000000000000000013202c3946535f6c798693a0acb9b3aea79d948c847e7a777573737476797d838990988f857a85929eabab9f93887e7775767873675b4e4235281b0f0000000000000009141f2a343f49535d67707a838c949da4aca9a29b948e88837e7a777472706f6f6e6f6f717275777b7e83888e949ba2a9a8a19990887f756c62594f453a30251b100500000000000013202c3946535f6c798693a0a2a29a8d8173675a4d4034271a0d01000000000000000000000000000000000000000000000000000000000000000000000000000000000008131d28323d47515b656f79838c96a09e948a80766c63594f453b2f23170b0013202c3946535f6c798693a0aca4978a7d7063574a3d3024170a00000000000000000000000d1a2633404c5965727e8b978e8275695d5044382c35424e5b6875828e9b9c8f8275685d5d5d646f7a85909b978c81766c61564b41362b2016222e3a46525f6b77849094877a6e6155483c2f231609000e1b2834414e5a6774818d99a6b3a79b8e8275685c4f43362a1e11050000000000000000000000000000000000000000000814212d3a46535f6c7885929eabafa296897d7063574a3d3124170b0006121e2a37434e5a66727d89949fa99f948a80756c635b534e59646f79848f9aa4a1978c82776d63584e44424e5a65717d8995a1a195897d7165594d4135291d11040000000000000000000000000000000916222f3c4955626f7c8996a2ada094877a6d6053473a2d2014070013202c3946535f6c798693a0acaca09386796c5f5346392c20130f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0e0b080300000000000000000000000000000000000815222e3b4855616e7b8895a2aea5988b7e7165584b3e3225180b000000000000040e19232d38424b555e687179828a9299a0a6aca6a19b96928e8a878583828181818181828486888b8e92979ca2a8afa8a29a928a82786f665c52483e33291e13080000000000101d2a3643505d697683909daaa5988b7e7c8792938b85807b79777778797c81878e97a0aaada2978b80747f8994948c86817c79787777797b80858c949ea8b0a59a8e83776b5f53463a2e221509000000000000000000000814202c37434f5b67737e8a96a2aea59a8e82766a5e52463b2f23170b030f1b27333f4a56626e7a86929ea9a99d91867a6e62564a3f33271b1004000000000000000000121f2c3845525e6b7885919eabb0a396897d7063574a3d3124170a00000000000000000000000000000000000000000000000000050a0f111313110e0a0400000000000000000000000000000000000000000000000000000009131d28323c46515b65707a848e99a3a69b91867c7c87919ca6a69b91877c72675d52483e33291e140a0000000000000000000000000000000013202c3946535f6c798693a0acb9b5aa9f958b827a736e6a686767686a6d71777e868e978c818693a0ada79b8e82766c68696c6961564b3f33261a0d00000000000004101b26303b46505b656f79838c959ea6aea89f979089827c77726e6b68656463626262636466686b6e73777d838990979fa8aba29a91887e746b61564c41372c21160b00000000000013202c3946535f6c798693a0aca79a8d8173675a4d4034271a0d0100000000000000000000000000000000000000000000000000000000000000000000000000000000050f1a252f3a444e59636d77818b959ea1968c82786e645a51473d34291e13070013202c3946535f6c798693a0aca4978a7d7063574a3d3024170a00000000000000000000000f1c2835424e5b6774818d988c7f73665a4d41342835424e5b6875828e9b9c8f82756a6a6a6a6a75808b969b90857a70655a4f453a30281e151e2a36434f5c6875818e96897d7064574a3e3125180b00101c2936434f5c6975828f9ba8b2a6998c8073665a4d4134271b0e0200000000000000000000000000000000000000000005121e2b3744515d6a7783909da9b1a4988b7e7265584c3f3226190c00020e1a26323e4a55616c77828d98a2a69c91887e756d655e575f6a75808b96a1a59a90857a70655b51463c3d4955616d7985919da59a8e8275695d5145392d2114080000000000000000000000000000000916222f3c4955626f7c8996a2ada094877a6d6053473a2d2014070013202c3946535f6c798693a0acaca09386796c5f5346392c20130b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0a0906020000000000000000000000000000000815222e3b4855616e7b8895a2aea5988b7e7165584b3e3225180b0000000000000007111c263039434c565f67707880878e959ba1a7aba7a29e9a979492908f8e8d8d8e8e8f909295979b9ea3a8ada9a39d97908881786f665d544a40362c22170c020000000000101d2a3743505d6a7683909daaa4988b7e75808a9496908c888684848586898c9298a0a9aea59b90857a6e78828c9597918c888684848486888b90979ea6b0a79e93887d72665a4e42362a1e1206000000000000000000010d1925313c4854606b77838f9ba7ada195897d7165594e42362a1e1206000a16222e3a46525d6975818d99a5aea2968a7e73675b4f44382c201408000000000000000000131f2c3946525f6c7985929facafa295887c6f6255493c2f2316090000000000000000000000000000000000000000000000000000000205060605020000000000000000000000000000000000000000000000000000000000010b16202a353f49535e68727d87919ca6a2988e83838e98a3a99e948a7f756a60554b41362c21170d020000000000000000000000000000000013202c3946535f6c798693a0acb9afa4988e83797068625e5b5a5a5b5d61666c747c858f92898b95a1aea4988b7e72665b5d5f5d584f453a2e23170a0000000000000a16212c37424d58626d77818b959ea7b0a79e968d867e77716b66625e5b5957565555555657595c5f62676c71777e868d959ea7aca39a90877c72685e53493e33281d1106000000000013202c3946535f6c798693a0aca79a8d8173675a4d4034271a0d01000000000000000000000000000000000000000000000000000000000000000000000000000000010c16212c36414b56606a757f89939da4998f857a70665c52483f352b22170d020013202c3946535f6c798693a0aca4978a7d7063574a3d3024170a0000000000000000000000111d2a3743505d6976838f968a7d7064574b3e322835424e5b6875828e9b9c8f827777777777777c87929d94897e74695f59524a423a30271d1b2734404d5966727f8c988b7e7265594c3f3326190d00111e2a3744505d6a7783909da9b1a4978b7e7165584b3f3225190c0000000000000000000000000000000000000000000003101c2936424f5c6875828f9ba8b2a6998c8073665a4d4033271a0d00000a16212d39444f5b66717b86909aa3a39a90877f776f686266717c87929da79e93897e73695e54493f353844505c6874818d99a59e9286796d6155493d3024180c0000000000000000000000000000000916222f3c4955626f7c8996a2ada094877a6d6053473a2d2014070013202c3946535f6c798693a0acaca09386796c5f5346392c2017171717171717171717171717171717171717171717171717171717171715120d0801000000000000000000000000000815222e3b4855616e7b8895a2aea5988b7e7165584b3e3225180b00000000000000000a141e27313a434d555e666e757c848a90969ba0a4a8aaa6a3a09e9d9b9a9a9a9a9b9c9d9fa1a4a7aba9a6a29d98928c857e766e665d544b42382e241a1005000000000000111d2a3744505d6a7784909daaa4978a7d7178828c959c9894929191919395999da3aaaba49c93897f7469707a838d959d9895929191919294989ca1a8aca69e958c82776c6055493e32261a0e0200000000000000000006121e2935414d5965707c8894a0aba89c9084786c6155493d3125190e020006121d2935414d5965717c8894a0aca79b8f84786c6054483d3125190d02000000000000000013202c3946535f6c7986939facaea295887b6e6155483b2f221508000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000040e18232d37424c56606b75808a949ea99f958c8c95a0aaa1978d82786d63584e44392f241a1005000000000000000000000000000000000013202c3946535f6c798693a0acb6aa9e93877c71675e56524f4d4d4e51555b626a737d879295969da6afa396897d7063575052514d463d33291d1206000000000005101b27323d48535e69747e89939da6b0a89e958c847b746d66605b56524f4c4a49484849494b4d4f52565b60666c747b848c959ea8aca2988f847a6f655a4f44392e23170c000000000013202c3946535f6c798693a0aca79a8d8173675a4d4034271a0d0100000000000000000000000000000000000000000000000000000000000000000000000000000007121d28333d48535d68727c87919ba59c92877d73685e544a40362d23191006000013202c3946535f6c798693a0aca4978a7d7063574a3d3024170a0000000000000000000000121e2b3845515e6b77849194887b6e6255493c2f2835424e5b6875828e9b9c8f84848484848484848d989b8e827975706a645c544c42392f251a25323e4b5764717d8a978d8173675a4d4134271b0e00121e2b3845515e6b7784919eaab0a3968a7d7063574a3d3124170b00000000000000000000000000000000000000000000000e1b2834414e5b6774818e9aa7b4a79a8e8174675b4e4134281b0e000005111c28333e49545f69747e88919ba3a2999189817a736d6c77828d98a3a2978c82776c61574c42382d34404c5864707c8995a1a2968a7d7165594d4034281b0f0300000000000000000000000000000916222f3c4955626f7c8996a2ada094877a6d6053473a2d2014070013202c3946535f6c798693a0acaca09386796c5f5346392c24242424242424242424242424242424242424242424242424242424242424221e19130b030000000000000000000000000815222e3b4855616e7b8895a2aea5988b7e7165584b3e3225180b0000000000000000020c151f28313a434c545c636b72787f858a8f94989c9fa2a4a7a8a9a8a7a7a7a7a8a8aaa9a7a5a3a09d9a96918c87817a746c655c544b423930261c120800000000000000111e2b3744515d6a7784919ea2a2968a7d70707a838b939a9f9f9e9e9e9fa1a5a9a7a49f99928a81776d6268717a838b93999f9f9e9e9e9fa1a4a8a8a5a09b948c837a70655a4f44382d21160a000000000000000000000b17232e3a46525e6975818d99a4afa3978b8074685c5044382d2115090000010d1925313c4854606c7884909ca7aca094887c7165594d41362a1e1206000000000000000013202c3946535f6c798693a0acaea194887b6e6155483b2e2215080000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000007111b25303a444f59636e78828c97a1a79e98989ea7a49a90857b70665c51473c32271d130800000000000000000000000000000000000013202c3946535f6c798693a0acb2a69a8e82766b60554c454241414245495058616b75808b96a2a7afafa295887b6f6255494645413b342b21170c0100000000000a16212d38434f5a65707b86909ba5afa99f968c837a7269625b554f4a4642403e3c3c3c3c3d3e4043464a4f555b6269717a838c96a0aaaaa0968c81766c61564a3f34281d11060000000013202c3946535f6c798693a0aca79a8d8173675a4d4034271a0d010000000000000000000000000000000000000000000000000000000000000000000000000000030e19242f39444f5a646f79848e98a3a0958b80756b61574c42382e251b110800000013202c3946535f6c798693a0aca4978a7d7063574a3d3024170a0000000000000000000000121f2c3945525f6c78859293877a6d6054473a2e2835424e5b6875828e9ba0969190909090909090959f9c908986817c756e665e544b41372c2123303d4956636f7c89968e8175685b4e4235281b0f00121f2c3945525f6b7885929fabafa296897c6f6256493c3023160900000000000000000000000000000000000000000000000d1a2733404d5a6673808d9aa6b3a89b8e8275685b4f4235281c0f0000000b16222d38434d58626c768089919aa2a39b938c857e78737d89949fa69b91867b70655b50453b3026303c4854606c7985919da69a8d8175695c5044372b1f120600000000000000000000000000000916222f3c4955626f7c8996a2ada094877a6d6053473a2d2014070013202c3946535f6c798693a0acaca09386796c5f53463931313131313131313131313131313131313131313131313131313131313131302e2a241d150c0200000000000000000000000815222e3b4855616e7b8895a2aea5988b7e7165584b3e3225180b000000000000000000030d161f28313a424a525960676d73797e83888c8f9395989a9c9d9e9f9f9f9f9f9e9d9c9a999694918d8a85817b756f69625a534b423930271e140a0100000000000000121e2b3845515e6b77849195959595897c6f68717981888e94989b9d9f9f9f9f9d9b98948e8881786f655b5f68717981888e93979b9d9e9f9f9f9e9b99959089827a71685e53493e33271c110500000000000000000004101c27333f4b57626e7a86929da9aa9f93877b6f63574b4034281c10040000000814202c3844505b67737f8b97a3afa5998d81756a5e52463a2f23170b000000000000000013202c3946535f6c798693a0acaea195887b6e6155483b2e221508000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000009141e28333d47515c66707b858f9aa4a8a4a4a8a79d93887e73695f544a3f352b20160b0100000000000000000000000000000000000013202c3946535f6c798693a0acafa2968a7d71655a4e433a36343435393e464f59636e7a85919da9b5aea295887b6e6155483b3835302a22190f050000000000030f1b26323e4954606b76828c97a2acaca2988e847a716860585049433e3a363331302f2f2f303134363a3e444950585f68717a848e98a2ada89e93887d72675c5045392e22170b0000000013202c3946535f6c798693a0aca79a8d8173675a4d4034271a0d05060708080808070504010000000000000000000000000000000000000000000000000000000009141f2a35404b56616b76818b96a0a4998e84796e64594f453b30261c13090000000013202c3946535f6c798693a0aca4978a7d7063574a3d3024170a000000000000000000000013202c3946535f6c7986939386796c5f5346392d2835424e5b6875828e9ba39a96969696969696969696989a95928d87807870665d53483e3327222f3c4855626f7b88958f8275685b4f4235291c0f00131f2c3946525f6c7986929facaea295887b6f6255483c2f22150900000000000000000000000000000000000000000000000d192633404c596673808c99a6b2a89c8f8275685c4f4236291c0f00000005101b26313c46505a646d7680889098a0a59d96908a847e848f9aa5a0958a7f74695e54493e3429212c3844505c6975818e9a9c989185786c6053473b2e22150800000000000000000000000000000916222f3c4955626f7c8996a2ada094877a6d6053473a2d2014070013202c3946535f6c798693a0acaca09386796c5f53463e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3d3a352f271e140a00000000000000000000000815222e3b4855616e7b8895a2aea5988b7e7165584b3e3225180b00000000000000000000040d161f28303840474e555c62686d73777c808386898b8d8f9091929293929291908f8e8c8a8785817d7975706a645e575049413930271e150c020000000000000000131f2c3946525f6c78858888888888887b6f62676f777d83888c8f9192939292918e8c88837d766e665d53565f676f767d82878b8e9092929392918f8c89847e7870685f564c42372c21160b000000000000000000000915202c3844505b67737f8b96a2aea69a8e82766a5e53473b2f23170b0000000004101b27333f4b57636e7a86929eaaa99e92867a6e63574b3f33281c10040000000000000013202c3946535f6c7986929facaea295887b6f6255483c2f2215090000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000020c16212b35404a545e69737d88929da8b1b1aba0968b81766c62574d42382e23190e040000000000000000000000000000000000000013202c3946535f6c798693a0acaca093877a6e6155493d32292727292d343d47525d6974808c98a4b1aea295887b6e6155483b2e29251f18100700000000000008141f2b37434e5a66717c88939ea9b0a59b90867c72685f564e463f38322e2a2724232222222325272a2e33383f464e565f68727c86919ba6afa49a8f84786d61564a3f33271c100400000013202c3946535f6c798693a0aca79a8d8173675a4d4034271a10121314151515141312100e0b0804000000000000000000000000000000000000000000000000040f1a25313c47525d67727d88929da79d92877c72675d52483d33291f140a010000000013202c3946535f6c798693a0aca4978a7d7063574a3d3024170a000000000000000000000013202c3946535f6c7986939286796c5f5246392c2835424e5b6875828e9b9d91898989898989898989898b8e939998928a82786f655a4f44382d222e3b4855616e7b88958f8275695c4f4236291c0f0013202c3946535f6c798693a0acaea295887b6e6155483b2e22150800000000000000000000000000000000000000000000000c1926323f4c5965727f8c99a6b2a99c8f8275695c4f4236291c0f000000000a151f2a343e48525b646d767e868e959ca3a19b958f8a8b95a0a59a8f84786d63584d443e38332d2834404d5965717e8a94908c89857c6f6256493c3023160900000000000000000000000000000916222f3c4955626f7c8996a2ada094877a6d6053473a2d2014070013202c3946535f6c798693a0acaca09386796c5f534a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a46413930261c1105000000000000000000000815222e3b4855616e7b8895a2aea5988b7e7165584b3e3225180b0000000000000000000000040d161e262e363d444b51575c62676b6f73777a7c7e81828485858686868585848381807d7b7875716d69645f59534c463e372f271e150c0300000000000000000013202c3946525f6c777b7b7b7b7b7b7b796d615d656c72777c7f82848586868584827f7c77726b645c544b4d565d656b71767b7e8284858686858482807c78736d665e564d443a30251b1005000000000000000000020e1925313d4954606c7884909ba7ada195897d72665a4e42362a1e130700000000000b17232f3a46525e6a76828e99a5aea3978b7f73675c5044382c21150900000000000000121f2c3945525f6b7885929fabafa296897c6f6356493c3023160a000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000050f19232e38424d57616b76808c99a6b3b5a89c8f84796f655a50453b31261c1107000000000000000000000000000000000000000013202c3946535f6c798693a0acaa9d9184786b5f5246392d211b1a1c222b36414c5864707c8895a1adaea295887b6e6155483b2e2219140d06000000000000000c1824303c48545f6b76828e99a4afaa9f94897e746a60564d443c342d27221d1a181615151617181b1e22272d343c444d56606a747f8a94a0ababa095897e72675b4f44382c20140800000013202c3946535f6c798693a0aca79a8d8173675a4d4034271a1c1e202121222221201f1d1a1714100c07010000000000000000000000000000000000000000000915202b37424d58636e79848f99a4a2978c81766b60554b40362b21170d03000000000013202c3946535f6c798693a0aca4978a7d7063574a3d3024170a000000000000000000000013202c3946535f6c7986939386796c5f5346392c2835424e5b6875828e9b9c8f827c7c7c7c7c7c7c7c7d7e82888f979c948b81766c60554a3e32262f3c4855626e7b88958f8275685c4f4236291c0f0013202c3946535f6c7986929facaea295887b6e6155483b2f22150800000000000000000000000000000000000000000000000d1926333f4c5966727f8c99a6b2a99c8f8275695c4f4236291c0f00000000030e18222c364049525b646c747c838b91989ea4a09b96969da79f93887d7267605a554f4a443e3831313d4956626e7a878784807c79756c6155483c2f22160900000000000000000000000000000916222f3c4955626f7c8996a2ada094877a6d6053473a2d2014070013202c3946535f6c798693a0acaca09386796c5f5757575757575757575757575757575757575757575757575757575757575757575756524b42382d22160a000000000000000000000815222e3b4855616e7b8895a2aea5988b7e7165584b3e3225180b000000000000000000000000040c141c242b323940464c51565b5f63676a6d70727475777878797979787877767473716e6c6865615d58534e48423b342c251d150c0300000000000000000000121e2b37434f5b666d6e6e6e6e6e6e6e6d675c535a61666b6f737577787979787775736f6b66605a534a42444c535a60666b6f72757778797979777673706c67625b544c443b32281e14090000000000000000000007121e2a36424d5965717d8994a0aca89c9185796d6155493d32261a0e02000000000006121e2a36424d5965717d8995a1ada79c9084786c6055493d31251a0e02000000000000121e2b3845515e6b7784919eaab0a3968a7d7064574a3e3124180b0000000000000000000000000000000000000000000000000003060809080502000000000000000000000000000000000000000000000000000000000000000000010b151f2a343e49535d67727c86919ca8b4b5a99c90867b71675c52483d33291e140a000000000000000000000000000000000000000013202c3946535f6c798693a0aca99c8f8376695d5043372a1e110e101924303c4854606c7985929eaaaea295887b6e6155483b2e221508020000000000000004101c2834404c5864707c88939faaafa4988d82776c62584e443b322a221c16110e0b0a0909090a0c0e12161c222a323b444e58626d78838e9aa5b1a69a8f83786c6054483c3024180c00000013202c3946535f6c798693a0aca79a8d8173675a4d40342726292b2c2e2e2e2e2e2d2b292724201c17120d0700000000000000000000000000000000000000040f1b26313d48535e6975808b95a0a79b90857a6f64594f44392f241a0f0500000000000013202c3946535f6c798693a0aca4978a7d7063574a3d3024170a0000000000000000000000131f2c3946525f6c79859293867a6d6053473a2d2835424e5b6875828e9b9c8f82756f6f6f6f6f6f6f7072767d858e989d93887d72665a4e42362a303c4956626f7c89958e8275685b4f4235281c0f00131f2c3946525f6c7986929facafa295887b6f6255493c2f22160900000000000000000000000000000000000000000000000d1a2633404d596673808c99a6b3a89c8f8275685b4f4235281c0f000000000006101a242e374049525a626a727980878d93999ea3a2a3a7a89b8f827a75706b66605b554f49433c353a46525f6b777e7b7774706c69645b5044392c20140700000000000000000000000000000916222f3c4955626f7c8996a2ada094877a6d6053473a2d2014070013202c3946535f6c798693a0acaca09386796c6464646464646464646464646464646464646464646464646464646464646464646464635d54493e32261a0e020000000000000000000815222e3b4855616e7b8895a2aea5988b7e7165584b3e3225180b00000000000000000000000000020a121921272e343a40454a4f53575b5e61636567696a6b6c6c6c6c6c6b6a69686664625f5c5955514c48423c363029221b130b0300000000000000000000000f1b27333f4a545c6161616161616161615d554b4f555b5f6366696b6c6c6c6b6a6966635f5b554f4841383a41484f555a5f6366686a6b6c6c6c6b696764605c56504a423b322920160c02000000000000000000000b17232f3b46525e6a76828d99a5afa4988c8074685c5045392d211509000000000000020d1925313d4955616c7884909ca8aca095897d7165594e42362a1e1307000000000000111d2a3744505d6a7683909ca9b1a4988b7e7265584c3f3326190d0000000000000000000000000000000000000000000000050b0f13151514120e0a060200000000000000000000000000000000000000000000000000000000000008121d27313c46505a656f79848e98a3adaaaaada2988d83786e64594f453a30261b11070000000000000000000000000000000000000013202c3946535f6c798693a0aca89b8e8275685b4f4235281c0f0208131f2b3844505d6976838f9ca8aea295887b6e6155483b2e22150800000000000000000814202c3945515d6975818c98a4b0aa9e93877c71665b50463c32292018110a05010000000000000002060b11182029323c46515c67727d8994a0ababa094887d7165594d4135281c1004000013202c3946535f6c798693a0aca79a8d8173675a4d403430333538393a3b3b3b3b39383633302c28231e18120b0400000000000000000000000000000000000915202c37424e5964707b86919ca7a1968a7f74695e53483d32271d12080000000000000013202c3946535f6c798693a0aca4978a7d7063574a3d3024170a0000000000000000000000121f2b3845515e6b78849194887b6e6155483b2f2835424e5b6875828e9b9c8f82756862626262626263666b737c86919c9a8e83776b5e5246392d313e4a5764707d8a968d8174675a4e4134281b0e00121f2c3845525f6b7885929eabafa296897c6f6356493d3023160a00000000000000000000000000000000000000000000000e1b2734414d5a6773818d9aa6b3a89b8e8175685b4e4235281b0f00000000000008121c252e374048505860676e757b82888d9398a1acb3aa9d928b86817c77716c66605a544e474039434f5b6770726f6b6764605d5952493e33281c100400000000000000000000000000000916222f3c4955626f7c8996a2ada094877a6d6053473a2d2014070013202c3946535f6c798693a0acaca09386797171717171717171717171717171717171717171717171717171717171717171717171716e665b4f42362a1d10040000000000000000000815222e3b4855616e7b8895a2aea5988b7e7165584b3e3225180b000000000000000000000000000000080f161d23292f353a3f43474b4e525457595b5c5d5e5f5f5f5f5f5e5d5c5b59575553504d4945403c37312b251e181009010000000000000000000000000b17222d38424a51545555555555555554514b43444a4f53575a5c5e5f5f5f5f5e5c5a57534f4a443d362f2f373d44494e5356595c5e5f5f5f5f5e5d5a5854504b453f38312920170e040000000000000000000004101c28343f4b57636f7a86929eaaab9f93877b6f64584c4034281c1005000000000000000915212c3844505c6874808c97a3afa5998e82766a5e52473b2f23170c000000000000101c2936424f5c6875828e9ba8b3a6998d8074675a4e4135281c0f030000000000000000000000000000000000000000000810161b1f2122211e1a16120e0a0602000000000000000000000000000000000000000000000000000005101a242e39434d58626c76818b95a0aaa39e9ea2a99f958a80766b61574c42372d23180e0400000000000000000000000000000000000013202c3946535f6c798693a0aca79a8e8174675b4e4134281b0e01030f1c2835424e5b6774818d9aa7aea295887b6e6155483b2e22150800000000000000000b1824303c4955616d7985919da9b1a5998d82766b5f54493f342a20170e0600000000000000000000000000060e17202a353f4a55606c77838f9ba7b1a5998d8175695d5145382c201407000013202c3946535f6c798693a0aca79a8d8173675a4d40383c3f4244464748484847464542403c38342f29231d160e06000000000000000000000000000000030e1a26313d48545f6a76818c97a2a69b9084796e62574c41362b21160b010000000000000013202c3946535f6c798693a0aca4978a7d7063574a3d3024170a0000000000000000000000111e2a3744505d6a76839096897c7063574a3e312835424e5b6875828e9b9c8f8275685b5555555555575a616a74808b979f93877a6e6255493c3033404c5965727e8b988c7f7266594c4033261a0d00111e2b3844515e6b7784919daab0a3978a7d7064574a3e3124180b00000000000000000000000000000000000000000000020f1c2835424f5b6875818e9ba7b3a69a8d8174675a4d4134271b0e000000000000000a131c252e363e464e555d636a70767c8287909ca8aca7a49c97928d88827d77726c655f58524b433f4a555e6566635f5b5854504d4740372d22170c0000000000000000000000000000000916222f3c4955626f7c8996a2ada094877a6d6053473a2d2014070013202c3946535f6c798693a0acaca093867d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d776a5e5144382b1e11050000000000000000000815222e3b4855616e7b8895a2aea5988b7e7165584b3e3225180b00000000000000000000000000000000040b12181e24292e33373b3f4245484a4c4e4f515152525352525251504e4d4b494643403d3935302b26201a140d06000000000000000000000000000006111c262f383f45484848484848484848454039393e43474b4d50515253535251504d4b47433e39332c25252c32383e42474a4d4f515253535251504e4b48443f3a342d261f170e0500000000000000000000000915212d3844505c6873808b97a3afa69a8e83776b5f53473b2f24180c000000000000000004101c2834404b57636f7b87939faaaa9e92877b6f63574b4034281c100500000000000e1b2734414d5a6773808d99a6b2a89b8f8276695d5044372b1f1206000000000000000000000000000000000000000009121a21272c2e2f2e2a26221e1a16120e0a060100000000000000000000000000000000000000000000030d17212c36404b555f69747e88939da7a399929199a3a79c92877d73685e54493f352a20160b01000000000000000000000000000000000013202c3946535f6c798693a0aca79a8e8174675a4d4134271a0e01000d1a2633404c596673808c99a6aea295887b6e6155483b2e22150800000000000000020e1b2733404c5865717d8995a1adaca094887c7165594e43382d22180e05000000000000000000000000000000050e18232e39444f5b67727e8a96a2aea99d9185796d6155483c3023170b000013202c3946535f6c798693a0aca79a8d8173675a4d4044484c4f5152545455555453514f4c4844403a352e2720181008000000000000000000000000000008131f2b36424e5965707b87929ea9a1958a7e73685c51463b30251a0f04000000000000000013202c3946535f6c798693a0aca4978a7d7063574a3d3024170a00000000000000000000000f1c2935424f5b6874818e988b7e7265594d40342835424e5b6875828e9b9c8f8275685b4f494949494a4f58636f7b8794a0968a7d7164574b3e3236424f5b6874818d978a7d7164584b3e3225180c00111d2a3743505d697683909ca9b1a5988b7e7265594c3f33261a0d0000000000000000000000000000000000000000000005111e2a3743505d6976838f9ca9b2a5998c7f7266594c4033261a0d00000000000000010a131c242d343c444b52585f656b7178838f9ba8a19b9a9ea29e99938e89837d77716a635c554d45434c54585956534f4b4844413c362e251b10060000000000000000000000000000000916222f3c4955626f7c8996a2ada094877a6d6053473a2d2014070013202c3946535f6c798693a0acaea1968c8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a84776b5e5144382b1e11050000000000000000000815222e3b4855616e7b8895a2aea5988b7e7165584b3e3225180b000000000000000000000000000000000000070d13181d22272b2f3236393b3e4041434445454646464545444342403e3c3a3734302d29241f1a150f0902000000000000000000000000000000000a141d262e34383b3b3b3b3b3b3b3b3b39352f2d32373b3e414345464646454443413e3b37322d28211a1a21272d32363a3e414344454646464543413f3c38332e29231c150d050000000000000000000000020e1a26313d4955616c7884909ca8ada2968a7e72665a4e42372b1f13070000000000000000000b17232f3b47535f6a76828e9aa6afa3978b8074685c5044392d21150900000000000c1926323f4b5865717e8a97a3b0aa9e9185786c6053473b2e22160a0000000000000000000000000000000000000007111b242c33383b3c3a36322e2a26221e1a16120c050000000000000000000000000000000000000000000a141f29333e48525c67717b86909aa5a69c928787919ca6a4998f857a70655b51463c32271d1308000000000000000000000000000000000013202c3946535f6c798693a0aca79a8e8174675a4d4134271a0e01000c1925323f4c5865727e8b98a5aea295887b6e6155483b2e2215080000000000000005111e2a37434f5c6874818d99a5b2a89c9084786c6054493d32261b1106000000000000000000000000000000000007111c27333f4a56626e7a86929eabaea295897d7164584c3f33261a0e010013202c3946535f6c798693a0aca79a8d8173675a4d4c5054585b5d5f60616161615f5e5b5855504b464039322a221a1108000000000000000000000000010c1824303c47535f6a76818d98a4a79c9084796d62564b4035291e130800000000000000000013202c3946535f6c798693a0aca4978a7d7063574a3d3024170a00000000000000000000000e1a2734404d5966727f8b988e8175685c5043372b35424e5b6875828e9b9c8f8275685b4f423c3c3c3e46535f6b7885919e988c7f7266594c3f333945525e6a77839094887b6f6256493c3023170a000f1c2935424f5b6875818e9ba7b3a69a8d8174675a4e4135281c0f030000000000000000000000000000000000000000000714202c3946525f6b7884919eaab0a4978a7e7164584b3e3225180c0000000000000000010a121b232a323940474d545a66717d8994a0a4988f8d92979ca19f9a948e88827b756e675f574f4742484c4d4a46433f3c3834302b241c1309000000000000000000000000000000000916222f3c4955626f7c8996a2ada094877a6d6053473a2d2014070013202c3946535f6c798693a0acb2a79e9897979797979797979797979797979797979797979797979797979797979797979797979184776b5e5144382b1e11050000000000000000000815222e3b4855616e7b8895a2aea5988b7e7165584b3e3225180b0000000000000000000000000000000000000001070c12161b1f2326292c2f3133353637383939393939383736353432302d2b2824211d18140f0904000000000000000000000000000000000000020b141c23282c2e2e2e2e2e2e2e2e2e2d292422272b2f3234363839393939383634322f2b27221c161010161c21262a2e3134363839393939383735322f2c28231d18110a0300000000000000000000000007131f2a36424e5a65717d8995a1aca99d9185796d61564a3e32261a0e0200000000000000000007131f2a36424e5a66727d8995a1ada89c9084786d6155493d32261a0e02000000000a1724303d4956626f7b8894a1adada194887b6f63574b3e32261b0f030000000000000000000000000000000000020e19232d363e44474846433e3a36322e2a26221d160f060000000000000000000000000000000000000007121c26303b454f5a646e78838d97a2a99f958a807f8a949fa9a1968c82776d62584e43392f241a10050000000000000000000000000000000013202c3946535f6c798693a0aca79a8e8174675a4d4134271a0e01000b1825323e4b5865717e8b98a5aea295887b6e6155483b2e221508000000000000000714202d3946525f6b7884909da9b1a4988c8074675b4f44382c20150a000000000000000000000000000000000000000b16222e3a46525e6a76828f9ba7b1a5998d8074675b4f4236291d10040013202c3946535f6c798693a0aca79a8d8173675a51575c6164676a6c6d6e6e6e6d6c6a6865615c57514b443c342c231a1107000000000000000000000005111d2935404c58646f7b87929ea9a2968b7f73685c51453a2f23180d0200000000000000000013202c3946535f6c798693a0aca4978a7d7063574a3d3024170a00000000000000000000000c1825313e4a5763707c89959184786c5f53473b2f35424e5b6875828e9b9c8f8275685b4f42352f2f3744505d6a7784909d998d807366594d40333d4955616e7a86939185796c6053473a2e211508000e1b2734404d5a6673808c99a5b2a89c8f8276695d5044372b1f12060000000000000000000000000000000000000000000a17232f3c4855616d7a8793a0acaea295897c6f6356493d3023170a0000000000000000000009111920272f353c46525e6a76828e9aa59e938782868b91969ba19f99938d8780787169615950473e3f403e3a37332f2c28242019120a01000000000000000000000000000000000916222f3c4955626f7c8996a2ada094877a6d6053473a2d2014070013202c3946535f6c798693a0acafafa9a5a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a49e9184776b5e5144382b1e11050000000000000000000815222e3b4855616e7b8895a2aea5988b7e7165584b3e3225180b00000000000000000000000000000000000000000001060a0f13161a1d2022242628292b2b2c2c2c2c2c2b2b2a28272523211e1b1814100c0803000000000000000000000000000000000000000000020a11181c20212222222222222222201d18161b1f2225282a2b2c2c2c2c2b2a2825221f1b16110b05050b10151a1e222527292b2c2c2c2c2b2a282623201c17120c0600000000000000000000000000000c18232f3b47535f6a76828e9aa5b0a4988c8175695d5145392d21160a00000000000000000000020e1a26323d4955616d7985919da8ada195897d72665a4e42372b1f1307000000000815212e3a4753606c7985919eaab0a4988b7f73675b4f43372b201409000000000000000000000000000000000008131f2a353f484f5455534f4b47433e3b37332e2821180f050000000000000000000000000000000000050f19232e38424d57616b76808a959fa9a2988d837878838d98a2a89e93897f746a60554b41362c22170d0200000000000000000000000000000013202c3946535f6c798693a0aca79a8e8174675a4d4134271a0e01000b1825323e4b5865717e8b98a5aea295887b6e6155483b2e221508000000000000000a16232f3c4855616e7a8793a0acaea195897c7064574b3f33271b10040000000000000000000000000000000000000006111d2935424e5a66737f8b98a4b1a89c9083776a5e5145382c1f13060013202c3946535f6c798693a0aca79a8d8173675a5d63686d717476787a7b7b7b7a797774716d68625c554e463e352c23191006000000000000000000000916212d3945515d6975808c98a3a99d91867a6e62574b4034291d12070000000000000000000013202c3946535f6c798693a0aca4978a7d7063574a3d3024170a00000000000000000000000916222f3b4854606d79869294887b6f63574b403435424e5b6875828e9b9c8f8275685b4f423b3b3c3e44515d6a7784909d998d807366594d4036414d5965717d8a968e8276695d5044382b1f1206000c1925323f4b5864717d8a97a3b0aa9e9185786c6053473b2e22160a0000000000000000000000000000000000000000020e1a26333f4b5764707d8996a2afac9f93867a6d6154473b2e2215080000000000000000000000070e161d26323e4a57636f7b87939fa5998d82767b80858a8f959ba19e98918a837b736b625950463c33312e2a2723201c18140e080000000000000000000000000000000000000916222f3c4955626f7c8996a2ada094877a6d6053473a2d2014070013202c3946535f6c798693a0a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a29e9184776b5e5144382b1e11050000000000000000000815222e3b4855616e7b8895a2aea5988b7e7165584b3e3225180b00000000000000000000000000000000000000000000000003070a0e111316181a1b1d1e1f1f1f201f1f1f1e1d1c1a191714120f0c08040000000000000000000000000000000000000000000000000000060c101315151515151515151513110c0a0f1316191b1d1e1f20201f1e1d1b1916130f0a0500000000050a0e1216181b1d1e1f20201f1f1d1c191713100b0601000000000000000000000000000005111d2834404c58636f7b87939eaaab9f94887c7064584c4035291d110500000000000000000000000915212d3945515c6874808c98a4b0a69a8e82766b5f53473b3024180c0000000006121f2b3844505d6975828e9aa7b3a79b8f83776b5f54483c31261b1006000000000000000000000000000000020d1824303b47515a60625f5b57534f4b47433f3a332a21170d02000000000000000000000000000000020c16212b35404a545e69737d88929ca7a59b90867b71717b86909ba5a59b91867c71675d52483e33291f140a00000000000000000000000000000013202c3946535f6c798693a0aca79a8e8174675a4d4134271a0e01000b1825323e4b5865717e8b98a5aea295887b6e6155483b2e221508000000000000000c1825323e4b5764707d8a96a3afab9e9286796d6054483b2f23170b0000000000000000000000000000000000000000010d1925323e4a5763707c8995a2aeab9f9286796d6054473a2e2115080013202c3946535f6c798693a0aca79a8d81736761686e74797d81838587888888878683817d78736d67605850473e352b22170d030000000000000000020e1a26323e4a56626d7985919da8a5998d8175695d52463a2f23180c010000000000000000000013202c3946535f6c798693a0aca4978a7d7063574a3d3024170a000000000000000000000007131f2c3845515d6976828e988c8074685c50453935424e5b6875828e9b9c8f8275685b4f484848484a4e56616d7985929e988c7e7265594c3f3b46525e6a76828e978b7e72665a4d4135281c0f03000a1723303c4955626f7b8894a0adada194887b6f63574b3e32261b0f030000000000000000000000000000000000000007131f2b37434f5b6773808c98a5b1a99d9084776b5e5245392c20130600000000000000000000000005111d2a36424e5a67737f8b97a3a094887c716f74797e848a90969da39c958d857d746b62584e43392e231e1b1713100c0803000000000000000000000000000000000000000916222f3c4955626f7c8996a2ada094877a6d6053473a2d2014070013202c3946535f6c79869395959595959595959595959595959595959595959595959595959595959595959595959595959595959184776b5e5144382b1e11050000000000000000000815222e3b4855616e7b8895a2aea5988b7e7165584b3e3225180b000000000000000000000000000000000000000000000000000000010407090b0d0f10111212131313131211100f0e0c0a0805020000000000000000000000000000000000000000000000000000000000000004070808080808080808080704010003060a0c0f11121313131212100f0c0a060300000000000000000206090c0e10121213131312110f0d0a070400000000000000000000000000000000000a16212d3945515c6874808c97a3afa79b8f83776b5f53483c3024180c00000000000000000000000005111c2834404c5864707b87939fabaa9f93877b6f64584c4034291d1105000000030f1c2835414d5a66727e8a97a3afab9f93887c7064594d42372c22180e0500000000000000000000000000010a141f2a35404c58636c6e6b67635f5b57534f4b443c33291e130700000000000000000000000000000009141e28323d47515c66707a858f99a4a89e93897e746a69747e89949ea9a2988e83796e645a4f453b30261c1107000000000000000000000000000013202c3946535f6c798693a0aca79a8e8174675a4d4134271a0e01000b1825323e4b5865717e8b98a5aea295887b6e6155483b2e221508000000000000000e1a2733404d5966727f8c98a5b1a99c8f83766a5d5144382c1f13070000000000000000000000000000000000000000000916222f3b4854616d7a86939facaea195887b6f6256493c3023170a0013202c3946535f6c798693a0aca79a8d8173676b72797f85898d9092939495949492908d89847f78726a625950473d33291f140a000000000000000005121e2a36424e5a66727e8a96a2aca094887c7064594d41352a1e1207000000000000000000000013202c3946535f6c798693a0aca4978a7d7063574a3d3024170a000000000000000000000004101c2935414d5a66727e8a969084786d61564a3f35424e5b6875828e9b9c8f8275685b5555555555575a6068727d8995a196897d7064574b3e414c57636e7a869293877a6e62564a3e3125190c00000814212e3a46535f6c7885919daab0a4988b7f73675b4f43372b201409000000000000000000000000000000000000020d18242f3b47535f6b7783909ca8b2a69a8d8174685c4f43362a1d11040000000000000000000000000814202d3946525e6a77838f9ba79c9084786c63686d73787e858b9299a19f978f867d746a60554b4035291e130b0703000000000000000000000000000000000000000000000916222f3c4955626f7c8996a2ada094877a6d6053473a2d2014070013202c3946535f6c79868888888888888888888888888888888888888888888888888888888888888888888888888888888888888884776b5e5144382b1e11050000000000000000000815222e3b4855616e7b8895a2aea5988b7e7165584b3e3225180b0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000030f1a26323e4a55616d7985919ca8aea2968a7e72675b4f43372b1f1308000000000000000000000000000c1824303b47535f6b77838f9aa6afa3988c8074685d5145392d22160a000000000c1925313d4a56626e7a86929eaab0a4988d81756a5f54493e342a20170f070100000000000000000000040b131c26303b46515d69747b77736f6b67635f5b564e453b2f24180c000000000000000000000000000007111b25303a444f59636d78828c97a1aba1968c82776d62626d77828c97a1aa9f958b80766c61574d42382e23190e040000000000000000000000000013202c3946535f6c798693a0aca79a8e8174675a4d4134271a0e01000b1825323e4b5865717e8b98a5aea295887b6e6155483b2e221508000000000000000f1c2835424e5b6874818e9aa7b3a79a8d8174675b4e4235291c10030000000000000000000000000000000000000000000713202c3945525e6b7884919daab0a3978a7d7164574b3e3125180b0013202c3946535f6c798693a0aca79a8d81736c757d848b9095999c9ea0a1a2a1a09f9c9995908a837c746b62594f453b31261b1005000000000000000915222e3a46525e6a76838e9aa6a89c9084786c6054483c3025190d01000000000000000000000013202c3946535f6c798693a0aca4978a7d7063574a3d3024170a0000000000000000000000000d1925313d4956626e79859195897d72665b50453a424e5b6875828e9b9c8f82756861616161616263666b717a848f9a9d9186796d6155483c47525d6874808b978e82766a5e52463a2e221509000005121e2b3744505c6975828e9aa6b2a79b8f83776b5f53483c31261b100600000000000000000000000000000000000a141f2a35404c58636f7b8793a0acaea2968a7d7165594c4033271b0e020000000000000000000000000a1723303c4955616e7a87939fa4988c8073675b5d62676d737980878f97a0a1988f867c71675c51463a2f23180c0000000000000000000000000000000000000000000000000916222f3c4955626f7c8996a2ada094877a6d6053473a2d2014070013202c3946525f6c787b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b766a5e5144372b1e11050000000000000000000815222e3b4855616e7b8895a2aea5988b7e7165584b3e3225180b000000000000000000000000000000000000000000000000000000000001050708080808080808080808060300000000000000000000000000000000000000000000000000000000000000000000000004070808080808080808080807040000000000000000000000000000000000000000000000000000000105070808080808080808080808070400000000000000000000000000000000000000000008131f2b37434e5a66727e8995a1ada99d91867a6e62564a3e32271b0f030000000000000000000000000007131f2b37434f5a66727e8a96a2aea89c9185796d61564a3e32261b0f030000000915212e3a46525e6a76828e9aa5b1a99d92877b70655a50463c32292119120d0805030101010203060a0f151c252e38424c57636e7985837f7b77736f6b6760574c4034281c0f03000000000000000000000000040e18232d37424c56606b75808a949ea8a4998f857a70655b5b65707a85909aa5a79d92887d73695e544a3f352b20160c0100000000000000000000000013202c3946535f6c798693a0aca79a8e8174675a4d4134271a0e01000b1825323e4b5865717e8b98a5aea295887b6e6155483b2e22150800000000000000101d2a3643505c6976838f9ca9b2a5988c7f7266594c4033271a0d0100000000000000000000000000000000000000000004111d2a3743505d6976838f9ca9b2a5988c7f7266594c3f3326190d0013202c3946535f6c798693a0aca79a8d8173757e878f969c9e9c9a999898999b9ea2a7a5a19b958e867d746b61574d42382d22170b000000000000000d1925313e4a56626e7a87939faba4988c8074685c5044382c20140800000000000000000000000013202c3946535f6c798693a0aca4978a7d7063574a3d3024170a0000000000000000000000000915212d3945515d6975818c988f83786c61564b41424e5b6875828e9b9c8f82756e6e6e6e6e6e6e7072767c838c96a0978c8175695d5145434d58636e7a859195897d72665a4e42362a1e12060000030f1b2834414d5965727e8a96a2aeab9f93887c7064594d42372c22180e0500000000000000000000000000000009121c26303b46515d6874808c98a4b0aa9e92867a6e6155493d3024180b000000000000000000000000000d1926333f4b5864717d8a96a2a194887c6f635751565c62686f767d858e97a0a1988e83786e62574b4034281c100400000000000000000000000000000000000000000000000916222f3c4955626f7c8996a2ada094877a6d6053473a2d20140700121e2b3743505b666d6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6d655a4e4236291d10030000000000000000000815222e3b4855616e7b8895a2aea5988b7e7165584b3e3225180b00000000000000000000000000000000000000000000000000000001080d111415151515151515151514130f0b050000000000000000000000000000000000000000000000000000000000000000060c10131515151515151515151513100c06000000000000000000000000000000000000000000000001070d1114151515151515151515151513100c07000000000000000000000000000000000000010c1824303c47535f6b77838e9aa6b0a4998d8175695d51453a2e22160a0000000000000000000000000000030f1a26323e4a56626d7985919da9ada1968a7e72665a4f43372b1f140800000005111d2a36424e5a65717d8994a0abaea3988d82776c62584e443b332b241e1915110f0e0e0e0e1013161b20272e374049545e69747f8b8f8b87837f7b7772685d5044372b1e11050000000000000000000000010b16202a343f49535e68727c87919ba6a79c92887d73685e54545e69737e88939da8a49a8f857a70665b51473c32281d130900000000000000000000000013202c3946535f6c798693a0aca79a8e8174675a4d4134271a0e01000b1825323e4b5865717e8b98a5aea295887b6e6155483b2e22150800000000000000111e2b3744515e6a7784909daab0a4978a7d7164574b3e3125180b00000000000000000000000000000000000000000000010f1c2835424e5b6875818e9ba7b3a69a8d8173675a4d4134271a0e0013202c3946535f6c798693a0aca79a8d81747e8890999a96928f8d8c8c8c8d8f92969ba1a8a6a09890877d73695f54493e33281c1105000000000004101c2935414e5a66727e8b97a3ada194887c7064584b3f33271b0f0300000000000000000000000013202c3946535f6c798693a0aca4978a7d7063574a3d3024170a00000000000000000000000005111d2935414d5864707b879294897e73685d5248424e5b6875828e9b9c8f827b7b7b7b7b7b7b7b7c7e82878e959e988f857a6f64584d414a545f6a75808b968f84786d6155493d32261a0e020000000c1825313d4955626e7a86929eaab0a4988c81756a5f54493e342a20170f08020000000000000000000000040a121b242d38424d58636e7985919ca8b1a69a8e82766a5e5245392d211408000000000000000000000000000f1c2835414e5a6774808d99a59e9185786c6053474b51575d646b737c858e98a39f958a7f73685c5045382c20140800000000000000000000000000000000000000000000000916222f3c4955626f7c8996a2ada094877a6d6053473a2d201407000f1b27333f4a545c61626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262615b53483d32261a0d010000000000000000000815222e3b4855616e7b8895a1a1a1988b7e7165584b3e3225180b0000000000000000000000000000000000000000000000000000040c13191d20222222222222222222211f1b1610080000000000000000000000000000000000000000000000000000000000020a11181c2021222222222222222221201c18110a020000000000000000000000000000000000000000040c13191d202222222222222222222221201c18120a020000000000000000000000000000000005111d2935404c5864707b87939fabaca094887c7064584d4135291d11050000000000000000000000000000000a16222d3945515d6975818d98a4b0a69a8e83776b5f53483c3024180d010000010d1925313d4955616c78838f9aa5b0a99e93897e746960564d453d352f2925211e1c1b1a1a1b1d1f22262b32394049525b65707a85909b97938f8b8783786b5e5145382b1e1205000000000000000000000009131d27323c46515b656f7a848e99a3aa9f958b80766b61574c4d57616c76818c96a1aba1978c82786d63594e44392f251a1006000000000000000000000013202c3946535f6c798693a0aca79a8e8174675a4d4134271a0e01000b1825323e4b5865717e8b98a5aea295887b6e6155483b2e22150800000000000000121f2c3845525e6b7885929eabafa396897c706356493d3023170a00000000000000000000000000000000000000000000000e1b2734414d5a6773818d9aa6b3a79b8e8174685b4e4135281b0f0013202c3946535f6c798693a0aca69a8d807b869099958f8a8683817f7e7f8082868a90979ea7aaa2998f857b70665b5044392d22160b00000000000713202c3845515d6a76828e9ba7aa9d9185786c6054483b2f23170b0000000000000000000000000013202c3946535f6c798693a0aca4978a7d7063574a3d3024170a000000000000000000000000010d1824303c48535f6a76818c988f84796f645a50464e5b6875828e9b9d91888888888888888888898b8e93999c968f867d73695e534747515c66717b8691958a7e73675c5044392d211509000000000915212d3945515d6975818d99a5b0a99d92877b70655a50463c3229211a130e090603020101010204070a0f151c242d363f49545e6974808b96a1adaca195897d71665a4d4135291d110500000000000000000000000002111d2a3743505c6976828f9ca89b8f8276695d50443f454c5259616a737c86919ca69b9085796d6155493c3024170b00000000000000000000000000000000000000000000000916222f3c4955626f7c8996a2ada094877a6d6053473a2d201407000b17222d38424a515555555555555555555c646869696969696969665e5555555556606769696969696969686259555555555555555554504941372c211509000000000000000000000815222e3b4855616e7b8894949494948b7e7165584b3e3225180b00000000000000000000000000000000000000000000000000040d161e24292d2e2e2e2e2e2e2e2e2e2e2b27211a1209000000000000000000000000000000000000000000000000000000020b141c23282c2e2e2e2e2e2e2e2e2e2e2c28231c140b02000000000000000000000000000000000000040d161d24292d2e2e2e2e2e2e2e2e2e2e2e2c28231c140c020000000000000000000000000000000a16222e3945515d6974808c98a4aca79b8f83776c6054483c3024190d0100000000000000000000000000000005111d2935414c5864707c8894a0acab9f93887c7064584c4135291d11060000000915212d3844505b67727d89949faab0a59a90857b72685f574e47403a35312d2b2928272728292b2e32373d434a525b646d77828c97a2a39f9b958a7e73675b4f43372a1d11040000000000000000000006101a252f39444e58626d77818c96a0aaa2988e83796e645a4f4545505a656f7a848f99a4a89e94897f756a60564b41372c22180d030000000000000000000013202c3946535f6c798693a0aca79a8e8174675a4d4134271a0e01000b1825323e4b5865717e8b98a5aea295887b6e6155483b2e22150800000000000000131f2c3946525f6c7985929facafa295887b6f6255493c2f22160900000000000000000000000000000000000000000000000d1a2633404d596673808c99a6b3a89b8f8275685b4f4235281c0f0013202c3946535f6c798693a0aca6998c80828d98918a837e79767472727273767a7e858c959ea7aba1978d82776c61554a3e33271b0f04000000000a16232f3b4854616d7986929eaaa69a8e8175695c5044382b1f13070000000000000000000000000013202c3946535f6c798693a0aca4978a7d7063574a3d3024170a0000000000000000000000000008141f2b37424e5965707b8691968b81766c61584e4e5b6875828e9b9f9a95959595959595959596989b9996918b847d746b61574c465059636d78828d988e83786d61564b3f34281c10050000000005111d2935414d5965717c88949fabaea3988d82776c62584e443b332b241e191512100f0e0d0e0f1113161b20272e363f48515b65707b86919ca7b2a79b9084786d6155493d3125190d0100000000000000000000000005121f2b3845515e6b7784919da69a8d8174675a4e41353a41484f58616a75808b96a2a195897d7164584c3f33261a0d01000000000000000000000000000000000000000000000916222f3c4955626f7c8996a2ada094877a6d6053473a2d2014070006111c2630384045484848484848484956626d75757575757575757065594c484f5b677275757575757575746a5f524848484848484848443f372f251a1004000000000000000000000815222e3b4855616e7b888888888888887e7165584b3e3225180b000000000000000000000000000000000000000000000000020c161f282f35393b3b3b3b3b3b3b3b3b3a38332c241b110700000000000000000000000000000000000000000000000000000a141d262e34383b3b3b3b3b3b3b3b3b3b38342e261d140a0000000000000000000000000000000000010c161f282f35393b3b3b3b3b3b3b3b3b3b3b39342e261e140a0000000000000000000000000000000e1b27323e4a56626d7985919da0a0a0968b7e73675b4f43372c20140800000000000000000000000000000000010c1824303c4854606b77838f9ba0a0a0988c8175695d51453a2e22160a00000004101c28333f4a56616c77828d98a2adaca1978d847a71696059524b46413d3a37353434343536383b3e43484e555c646d768089939ea8b0a59a8f84796d62564b3f33271b0e02000000000000000000030d18222c36414b55606a747e89939da8a69b91867c71675d52483d3e49535e68737d88929da7a69b91877c72675d53483e34291f150a0000000000000000000013202c3946535f6c798693a0aca79a8e8174675a4d4134271a0e01000b1825323e4b5865717e8b98a5aea295887b6e6155483b2e2215080000000000000013202c3946535f6c7986929facaea295887b6e6255483b2f22150800000000000000000000000000000000000000000000000d192633404c5966727f8c99a6b2a89c8f8275695c4f4236291c0f0013202c3946535f6c798693a0aca5988c7f899490878078726d6a67666565676a6e737a838c959faaa99e94897d72665b4f44382c201408000000000c1925323e4b5764707c8995a2aea3978a7e7265594d4034281c0f030000000000000000000000000013202c3946535f6c798693a0aca4978a7d7063574a3d3024170a00000000000000000000000000030f1a26313d48535f6a75808b9592887d736960564e5b6875828e92929292929292929292929292918f8d8985807a736b62594f464f58626b75808a9492887d72675c50453a2e23170b0000000000010d1925313d4854606b77838e99a4afa99e93887e746960564d453d36302a25221f1d1b1a1a1b1c1d2023272c32384048515a636d77828c97a2adaca1968a7f73685c5045392d211509000000000000000000000000000613202c3946525f6c7986929fa5998c7f7266594c40332f363d464f58636e7a86929ea5998d8174675b4e4235281c0f02000000000000000000000000000000000000000000000916222f3c4955626f7c8996a2ada094877a6d6053473a2d20140700000a141e262e34393b3c3c3c3c3c3e4a5764717d8282828282828174675a4d43505d6976828282828282827a6d6053473c3c3c3c3c3c3b38342d251d130900000000000000000000000815222e3b4854616d797b7b7b7b7b7b7b7a7164584b3e3125180b00000000000000000000000000000000000000000000000008131e28313a414648484848484848484847443e362d23190e0300000000000000000000000000000000000000000000000006111c262f383f4548484848484848484848453f382f261c11060000000000000000000000000000000008131e28313a4045484848484848484848484845403830261c11060000000000000000000000000000111e2a37434f5b66727e8a939393939392867a6e62564a3f33271b0f0300000000000000000000000000000000000814202b37434f5b67737e8a93939393939185796e62564a3e3225190c000000000b17222e3944505b66717b86919ba5afa99f968c837a726a635d57514d49464442414041414345474b4f545960666e767f88919ba5b0a99e94897e73685c51453a2e22170b000000000000000000000b151f29343e48535d67717c86909ba5a99e94897f746a60554b403637414c56616b76818b95a0aaa3988e84796f655a50453b31261c120700000000000000000013202c3946535f6c798693a0aca79a8e8174675a4d4134271a0e01000b1825323e4b5865717e8b98a5aea295887b6e6155483b2e2215080000000000000013202c3946535f6c798693a0acaea295887b6e6155483b2e22150800000000000000000000000000000000000000000000000c1926323f4c5965727f8c99a6b2a99c8f8275695c4f4236291c0f0013202c3946535f6c798693a0aca69a8f898e92887e756d67615d5b5958595a5d62697079838d98a3aea59a8f83776c6054483c3024180c000000020f1b2834414d5a6673808c98a5ada094887b6f6256493d3124180c000000000000000000000000000013202c3946535f6c798693a0aca4978a7d7063574a3d3024170a00000000000000000000000000000915202b37424d58636e79848e988f857b72685f565b68758286868686868686868686868686858483807d79746f68615950475058616a747d8791968b81766b60554a3f34281d12060000000000000814202c38434f5b66717d88939ea9afa59a90857b72685f574f48413b36322e2b2928272727282a2c2f33373d434a525a626c757f89949ea9b0a59a8f84796e62574b4034281c1005000000000000000000000000000613202c3946535f6c798693a0a5988b7e7265584b3f32252c343d47525d6976828f9ba89c8f8376695d5043362a1d1004000000000000000000000000000000000000000000000916222f3c4955626f7c8996a2ada094877a6d6053473a2d2014070000020c141c23292d2f2f2f2f2f313e4a5764717d8a8f8f8f8f8e8174675a4d43505d6976838f8f8f8f8f877a6d6053473a2f2f2f2f2f2e2c28221b130b0100000000000000000000000713202d3945515d676d6e6e6e6e6e6e6e6e695f54483c3023170a0000000000000000000000000000000000000000000000010d1925303a434c52555555555555555555544f483f352a1f14080000000000000000000000000000000000000000000000000b17222d38424a5154555555555555555554514a42382d22170b000000000000000000000000000000040f1a252f3a434b515455555555555555555554514a42382d22170b0000000000000000000000000000131f2c3946525f6b7783868686868686868175695e52463a2e22160b000000000000000000000000000000000000030f1b27333f4a56626e7a86868686868686867e73665a4d4034271a0e0000000006111d28333e49545f6a747f89939da6b0a89e958d847c756e68625d595552504f4e4d4d4e4f5154575b5f656b71788088919aa3adaba1978d82776c61564b4034291d120600000000000000000008121c27313b46505a646f79838e98a2aca1978c82776d63584e44392f303a454f5a646f79848e99a3aaa0958b81766c62574d43382e23190f04000000000000000013202c3946535f6c798693a0aca79a8e8174675a4d4134271a0e01000b1825323e4b5865717e8b98a5aea295887b6e6155483b2e2215080000000000000013202c3946525f6c7986929facaea295887b6f6255483c2f22150900000000000000000000000000000000000000000000000d192633404c596673808c99a6b2a89c8f8275695c4f4236291c0f0013202c3946535f6c798693a0acaba19996968b80766c635c56514e4c4c4c4e51575e67717b86919da8aba094887c7065584c4034281c0f03000005111e2a3743505c6975828f9ba7aa9e9185786c5f53473a2e211508000000000000000000000000000013202c3946535f6c798693a0aca4978a7d7063574a3d3024170a0000000000000000000000000000040f1a26313c47525c67727c8791978e847a7168605a6773797979797979797979797979797978777674716d69635d564f4a5159626a737c868f988e84796f645a4f44392e23170c0100000000000004101b27333e4955606b76828c97a1acaca1978d847a71696159524c47423e3a3836353434343536383b3f43484e555c646c757e87919ba5b0a99e94897e73685c51463a2f23170c00000000000000000000000000000613202c3946535f6c7986939fa5988c7e7265594c3f3226222b35414e5a6774818d9aa79d9084776a5d5144372a1e1104000000000000000000000000000000000000000000000916222f3c4955626f7c8996a2ada094877a6d6053473a2d201407000000020b12181d202222222224313e4a5764717d8a979c9c9a8e8174675a4d43505d697683909c9c9c94877a6d6053473a2d2222222222201c17110a0100000000000000000000000004111d2935404b555c6161616161616161615e574d43382c201407000000000000000000000000000000000000000000000005121e2a36414c565d616161616161616161605a51473c3024180c0000000000000000000000000000000000000000000000000f1b27333f4a545c616161616161616161615c544a3f33271b0f0300000000000000000000000000000b16212b36414c555d61616161616161616161615c544a3f33281b0f0300000000000000000000000000131f2c3946525f6b767979797979797979797165594d4135291e1206000000000000000000000000000000000000000a16222e3a46525d697579797979797979797972665a4d4034271a0e00000000000b17222d38434d58636d77818b949ea7afa89f968e878079736e6965625f5d5b5b5a5a5b5c5e6063676b70767c838a929aa3acaca2998f857b70665b50453a2f23180c010000000000000000050f1a242e38434d57626c76818b959faaa49a8f857a70665b51473c322728333d48525d67727c87919ca6a79d93887e73695f544a40352b21160c020000000000000013202c3946535f6c798693a0aca79a8e8174675a4d4134271a0e01000b1825323e4b5865717e8b98a5aea295887b6e6155483b2e22150800000000000000121f2c3945525f6c7885929facafa295897c6f6255493c2f23160900000000000000000000000000000000000000000000000d1a2733404d5a6673808d99a6b3a89b8e8275685b4f4235281c0f0013202c3946535f6c798693a0acb3aaa59b9084796e645a514a4541403f3f41464d555f6a75808c98a3afa5998d8175695c5044382b1f130600000714202d3946525f6b7885919eaaa89b8f8276695d5044372b1e1206000000000000000000000000000013202c3946535f6c798693a0aca4978a7d7063574a3d3024170a00000000000000000000000000000009141f2a35404b55606a757f8993968d837a726a6161696c6c6c6c6c6c6c6c6c6c6c6c6c6c6b6b696764615d58524c4d545c636b747c858e9890867c72685d53483d32271c110600000000000000000a16222d38444f5a65707b85909aa4aea99f968d847b736b645d57524e4a47444341414041424345484b4f545960666e767e879099a3adaba1978c82776c61564b4035291e1207000000000000000000000000000006121f2c3945525f6b7885929ea6998d8073675a4e42362f2e2e34414d5a6773818d9aa69d9184776a5d5144372a1e1104000000000000000000000000000000000000000000000916222f3c4955626f7c8996a2ada094877a6d6053473a2d2014070000000000070c11141515151724313e4a5764717d8a97a4a79a8e8174675a4d43505d697683909da9a094877a6d6053473a2d201515151513100c060000000000000000000000000000010c18242f39434b51545454545454545454524d453c31261b0f0400000000000000000000000000000000000000000000000814212d3a46525d686e6e6e6e6e6e6e6e6e6c63584c4034281b0e020000000000000000000000000000000000000000000000121e2b37434f5b666d6e6e6e6e6e6e6e6e6d665b4f43372b1e12050000000000000000000000000007121c27323d48535d676e6e6e6e6e6e6e6e6e6e6d665b5044372b1f120500000000000000000000000000111e2a37434f5a646b6c6c6c6c6c6c6c6c6c685f54483d3125190d010000000000000000000000000000000000000006121d2935414d58636a6c6c6c6c6c6c6c6c6c6960564a3e3225190c000000000005101b26313c46515b656f79828c959da6aea8a098918b847e7a75716e6c6a6867676767696a6c6f73777c81878e959ca4acaba29a90877d73695f54493e33281d12070000000000000000020d17212b36404a555f69737e88929da7a79d92887e73695e544a3f352a20212c36414b56606b75808a959faaa49a90857b71665c51473d32281e13090000000000000013202c3946535f6c798693a0aca79a8e8174675a4d4134271a0e01000b1825323e4b5865717e8b98a5aea295887b6e6155483b2e22150800000000000000121f2b3845515e6b7884919eabb0a396897d7063564a3d3024170a00000000000000000000000000000000000000000000000e1b2834414e5b6774818d9aa7b4a79a8e8174675b4e4135281b0e0013202c3946535f6c798693a0acb9aea2968a7e73685d5248403935333233353b434d58646f7b87939faba99d9185786c6054473b2f22160900000916222f3b4854616e7a8793a0ada6998d8073675a4e4135281c0f03000000000000000000000000000013202c3946535f6c798693a0aca4978a7d7063574a3d3024170a000000000000000000000000000000030e19242f39444e59636d77818a94958d847b736c645d5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5e5d5b5855514c4c52585f666d757d868e9791887e746a60564c41362c21160b00000000000000000005101c27323e49535e69737e88929ca5afa89f968d857d756f69635e5a5653514f4e4d4d4d4e505254575b60656b717880889099a2abaca2998f857b70665b50453a2f23180d01000000000000000000000000000004111e2b3844515d6a7783909da89b8f82766a5e52473f3b3a3b3e46515c6975828e9ba79c908376695d5043372a1d1004000000000000000000000000000000000000000000000916222f3c4955626f7c8996a2ada094877a6d6053473a2d20140700000000000000040708090b1724313e4a5764717d8a97a4a79a8e8174675a4d43505d697683909daaa094877a6d6053473a2d20140909080704000000000000000000000000000000000007121d273139404547484848484848484846413b332a20150a0000000000000000000000000000000000000000000000000916222f3c4955626e7a7b7b7b7b7b7b7b7b75695c4f4336291c1003000000000000000000000000000000000000000000000013202c3946525f6c777b7b7b7b7b7b7b7b776c5f5246392c201306000000000000000000000000030e18232e39444e59646f797b7b7b7b7b7b7b7b7b786c5f5346392d201306000000000000000000000000000e1a26323e48525a5f5f5f5f5f5f5f5f5f5f5d564d43382c2014080000000000000000000000000000000000000000010d1925303c4751595e5f5f5f5f5f5f5f5f5f5d574e44392d2216090000000000000a15202a353f49535d677079838b949ca4abaaa39c96908a86817e7b787675747373747577797c7f83888d92989fa6aea9a19990887e756b61574d42382d22170c0100000000000000000a141e29333d48525c66717b85909aa4aaa0958b81766c61574d42382d23191a242f39444e59636e78838d98a2aca1978d82786e63594f443a30251b100600000000000013202c3946535f6c798693a0aca79a8e8174675a4d4134271a0e01000b1825323e4b5865717e8b98a5aea295887b6e6155483b2e22150800000000000000111e2b3744515d6a7784909daab1a4978a7e7164584b3e3225180c0000000000000000000000000000000000000000000003101d2936424f5c6875828f9ba8b3a6998d8073665a4d4034271a0e0013202c3946535f6c798693a0acb6aa9e92867a6e62564b40362e2926252629313c47535f6b77838f9ba8ada195887c7063574a3e3125190c00000b1724313d4a5663707c8996a2afa4978b7e7165584c3f3226190d00000000000000000000000000000013202c3946535f6c798693a0aca4978a7d7063574a3d3024170a0000000000000000000000000000000007121d27323c47515b656e78818a94968e857d766f68615b5652525252525252525252525251504e4c494d52575d6369707880878f9891887f756c62584e443a2f251a0f05000000000000000000000b16212c37424d57626c76808a939da6aea89f978f87807a746f6a6663605e5c5b5a5a5a5b5c5e6164676b70767c838a929aa2ababa39a90877d73695e54493e34291d120700000000000000000000000000000001101d2936424f5b6874818d9aa69e92867a6f6459514b4847484a5058626d7985919da79a8e8175685b4f4235291c1003000000000000000000000000000000000000000000000916222f3c4955626f7c8996a2ada094877a6d6053473a2d20140700000000000000000000000b1724313e4a5764717d8a97a0a09a8e8174675a4d43505d697683909da0a094877a6d6053473a2d20140700000000000000000000000000000000000000000008131e28313a414649494949494949494947423c342a20160a0000000000000000000000000000000000000000000000000916222f3c4955626f7c888888888888888376695c4f4336291c1003000000000000000000000000000000000000000000000013202c3946535f6c798688888888888886796c5f5346392c2013060000000000000000000000000a141f2a35404a55606b7681888888888888888881766b5f5246392c201306000000000000000000000000000a16212c3740484f52535353535353535353514c443b31261b100400000000000000000000000000000000000000000008141f2a353f474e52535353535353535353514c453c32281d1105000000000000030e18232d37414b555e677079828a9299a0a7ada7a19b96928d8a8785838281818181828486888b8f93989ea4aaaca59e978f877e756c63594f453b31261b1106000000000000000007111c26303a454f59646e78838d97a1aca3998e84796f645a50453b30261c11131d28323d47525c67717c86919ba6a99f948a80756b60564c41372d22180e03000000000013202c3946535f6c798693a0aca79a8e8174675a4d4134271a0e01000b1825323e4b5865717e8b98a5aea295887b6e6155483b2e22150800000000000000101d2936434f5c6975828f9ca8b2a5998c7f7366594d4034271a0e0100000000000000000000000000000000000000000006121f2b3844515e6a7783909da9b1a5988b7e7265594c3f3226190c0013202c3946535f6c798693a0acb3a79a8e8276695d51463a2f241d1a1919202b36424e5b6773808c98a5b1a4988b7f72665a4d4134271b0e02000c1926323f4c5865717e8b97a4afa295897c6f63564a3d3024170b00000000000000000000000000000013202c3946535f6c798693a0aca4978a7d7063574a3d3024170a00000000000000000000000000000000010b16202b353f49535c666f78818a92978f888179736d67615c5853504d4a484746464647494b4d5154595d62686e747b828a919890887f766d635a50463c32281e1308000000000000000000000005101b26303b46505a646e78818a949ca4aca9a199928b85807a76726f6c6a696767676768696b6d7073777c81878e949ca3acaaa29991887e756b61574d42382d22170c01000000000000000000000000000000000e1a2733404c5965717e8a96a2a3978b80756b635c57555454565b616a747e8a95a1a3978b7e7266594d4034271a0e0100000000000000000000000000000000000003070a0b0b16222f3c4955626f7c8996a2ada094877a6d6053473a2d20140700000000000000000000000b1724313e4a5764717d8a939393938e8174675a4d43505d6976839093939393877a6d6053473a2d2014070000000000000000000000000000000000000000010d19242f3a434c52555555555555555555534e463c32271c100400000000000000000000000000000000000000000000000916222f3c4955626f7c899595959595908376695c4f4336291c1003000000000000000000000000000000000000000000000013202c3946535f6c798693959595959386796c5f5346392c201306000000000000000000000006101b26313c46515c67727c879295959595958f857a6f645a4f43372a1e11050000000000000000000000000005101a252e373e434646464646464646464644403a32291f150a00000000000000000000000000000000000000000000030e19232d353d424546464646464646464645413b332a21160b000000000000000007111b252f39434c555e67707880888f959ca2a7aca7a29e9a969491908e8e8d8d8e8f909295989b9fa4a9aba6a09a948d857d756c635a51473d33291f140a0000000000000000040e19232d38424c57616b75808a949fa9a69c91877c72675d53483e33291f140a0b16202b35404a555f6a747f8a949ea9a69c91877c72685d53493e342a1f150b000000000013202c3946535f6c798693a0aca79a8e8174675a4d4134271a0e01000b1825323e4b5865717e8b98a5aea295887b6e6155483b2e221508000000000000000f1b2835414e5b6774818d9aa7b3a79a8e8175685b4f4236291d11040000000000000000000000000000000000000000000815212e3a4753606c7985929fabafa3968a7d7064574a3e3124180b0013202c3946535f6c798693a0acb0a4978b7e72665a4d4135291e120d0c0e1a26323f4b5764707d8996a2afa79b8e8275685c4f43362a1d1004000e1a2734404d5a6673808c99a6ada094877a6e6154483b2f22150900000000000000000000000000000013202c3946535f6c798693a0aca4978a7d7063574a3d3024170a0000000000000000000000000000000000040e19232d37414a545d666f7881899198928b847e78726d6864605c595755545353535456575a5d6165696e737980868d94968f877e766d645b51483e342b20160c0100000000000000000000000009141f29343e48525c666f78818a929ba2aaaba49d96918b86827e7b79777574747374747677797c8083888d92999fa6aea7a09890887f766c63594f453b30261b100600000000000000000000000000000000000b1824313d4955616d7985919ca79d92877d746d676361616163676c737c86909ba69e92877b6e62564a3d3125180c000000000000000000000000000000000002090f1316181818222f3c4955626f7c8996a2ada094877a6d6053473a2d20140700000000000000000000000b1724313e4a5764717d8686868686868174675a4d43505d6976838686868686867a6d6053473a2d201407000000000000000000000000000000000000000005111d2935414c565d6262626262626262625f584e43382c20140800000000000000000000000000000000000000000000000916222f3c4955626f7c8996a2a2a29c908376695c4f4336291c1003000000000000000000000000000000000000000000000013202c3946535f6c798693a0a2a2a09386796c5f5346392c20130600000000000000000000010c17222d38424d58636e78838e99a2a2a29d93887d73685d53483d32261a0e02000000000000000000000000000009131c252c32373939393939393939393938342f2820170d03000000000000000000000000000000000000000000000007111b232b3136393939393939393939393835302921180f0400000000000000000009141d27313a434c555e666e767d848b91969ca1a5a9aaa6a3a09e9c9b9a9a9a9a9b9d9fa1a4a7aba8a49f9a958f89827b736b635a51483f352b21170d0300000000000000010c16202b353f49545e68737d87929ca6a99f948a80756a60564b41362c22170d02040f19242e39434e58636d78828d97a2aca3998e847a6f655b50463b31271c12080000000013202c3946535f6c798693a0aca79a8e8174675a4d4134271a0e01000b1825323e4b5865717e8b98a5aea295887b6e6155483b2e221508000000000000000d1a2633404c5965727e8b98a4b1a99d9084776a5e5245392c2014080000000000000000000000000000000000000000000c1824313d4956626f7b8894a1adada194887b6e6255493c2f23160a0013202c3946535f6c798693a0acaea195887c6f63564a3e3125190d01000a16232f3c4855616e7a8793a0adaa9d9084776b5e5145382c1f1206000f1c2835424e5b6875818e9ba7ac9f9286796c6053463a2d20140700000000000000000000000000000013202c3946535f6c798693a0aca4978a7d7063574a3d3024170a00000000000000000000000000000000000007111b252f38424b545d666e777f878e95968f89837e78746f6c6866636261605f6061626466696d71757a7f858b9198938c847c746c645b52493f362c23190f0400000000000000000000000000020d18222c36404a545d666f78818990989fa5aca8a29c97928e8b888684828181818181828486898c9094999ea4aaa9a39d958e867e756d645a51473d33291f140a0000000000000000000000000000000000000815212d3945515d6974808b96a0a39990877e7873706e6d6e6f73777e858e98a2a2978c81766a5e52463a2e22150900000000000000000000000000000000050d141a1f23252525252f3c4955626f7c8996a2ada094877a6d6053473a2d20140700000000000000000000000a1724313d4a57636f797979797979797972665a4d434f5c687479797979797979776c6053463a2d20140700000000000000000000000000000000000000000714202d3946525d686e6f6f6f6f6f6f6f6f6a6055493c3023170a00000000000000000000000000000000000000000000000916222f3c4955626f7c8996a2aea99c908376695c4f4336291c1003000000000000000000000000000000000000000000000013202c3946535f6c798693a0acaca09386796c5f5346392c2013060000000000000000000008131e29333e49545f6a747f8a95a0aaaca1968c81766c61564c41372c21160a000000000000000000000000000000010a131a21262a2c2c2c2c2c2c2c2c2c2c2b28241e160e050000000000000000000000000000000000000000000000000009111920262a2c2c2c2c2c2c2c2c2c2c2c29241f170f0600000000000000000000020c151f28313a434c545c646b727980858b9095999da0a3a5a7a9a9a8a7a7a7a7a8a9a9a7a5a29f9c98948f8a847e777069615951483f362d23191005000000000000000008131e28323c47515b66707a858f99a3aca2978d82786e63594e44392f251a1005000007121c27323c46515b66707b86909ba5aaa0968b81776c62584d43392e24190f0300000013202c3946535f6c798693a0aca79a8e8174675a4d4134271a0e01000b1825323e4b5865717e8b98a5aea295887b6e6155483b2e221508000000000000000b1825313e4a5763707c8996a2aeac9f93867a6d6155483c3024180c000000000000000000000000000000000000000004101c2834404d5965727e8a97a3b0ab9e9285796c6053463a2d2114080013202c3946535f6c798693a0acac9f9386796d6054473b2e22150900000714202d3946525f6c7885919eabac9f9286796c6053463a2d20140700101d293643505c6976828f9ca9aa9e9184786b5e5245382b1f120500000000000000000000000000000013202c3946535f6c798693a0aca4978a7d7063574a3d3024170a0000000000000000000000000000000000000009131d263039424b545c656d747c838a9197948f8984807c787572706e6d6d6c6d6d6f717376797d81868b9096968f89817a726b625a524940372d241a110700000000000000000000000000000006101a242e38424b545d666e777e868d949aa0a6aba8a39e9b979492908f8e8d8d8d8e8f919395989ca0a4a9a9a49e98928b847c746c635b52483f352b21170d0200000000000000000000000000000000000005111d2935414c58636e79848e98a1a299908a84807c7b7a7a7c7e83898f97a0a29990857b7065594e42362a1e1206000000000000000000000000000000040e171f262b2f31323232323c4955626f7c8996a2ada094877a6d6053473a2d20140700000000000000000000000916222e3b47535e676c6c6c6c6c6c6c6c6960564a404c58626a6c6c6c6c6c6c6c6b655b4f44372b1f120500000000000000000000000000000000000000000815222e3b4855616e7a7c7c7c7c7c7c7c7b7164584b3e3225180b00000000000000000000000000000000000000000000000916222f3c4955626f7c8996a2afa99c908376695c4f4336291c1003000000000000000000000000000000000000000000000013202c3946535f6c798693a0acaca09386796c5f5346392c201306000000000000000000040f1a252f3a45505b65707b86919ca6afa59a8f857a6f655a4f453a2f251a0f0400000000000000000000000000000000010910161a1e1f2020202020202020201f1c18130c05000000000000000000000000000000000000000000000000000000070f151a1d1f2020202020202020201f1d19130d06000000000000000000000000030d161f28313a424a525961676e747a7f84898d909496999b9c9e9e9f9f9f9f9e9d9c9a989693908c88837e78736c665f574f473f362d241b11080000000000000000010d19242f3a444e59636d77828c96a1aba59a90857b71665c51473d32281d1309000000000b15202a353f4a545f69747e89939ea8a89d93897e74695f554a40362b20140900000013202c3946535f6c798693a0aca79a8e8174675a4d4134271a0e01000b1825323e4b5865717e8b98a5aea295887b6e6155483b2e221508000000000000000916222f3b4854616d7a86939facaea296897d7165584c4034281d1106000000000000000000000000000000000000000a15212d3844515d6975818e9aa6b3a89b8f83766a5d5144382b1f12050013202c3946535f6c798693a0acaa9e9184786b5e5245382c1f1306000005111e2b3744515d6a7783909da9ada194877b6e6155483b2f22150800111e2a3744515d6a7784909daaa99d9083776a5d5044372a1e110400000000000000000000000000000013202c3946535f6c798693a0aca4978a7d7063574a3d3024170a00000000000000000000000000000000000000010b141e273039424a535b636a727980868c929895908c8885817e7d7b7a7979797a7b7d808285898d919696918b847e7770686159514840372e251b1208000000000000000000000000000000000008131c263039424b545c656d747b83898f959a9fa4a7aba7a4a19f9d9c9b9a9a9a9b9c9d9fa2a4a8aaa6a29d98938d878079726a625a514940362d23190f0500000000000000000000000000000000000000010d1824303b47525d68727c868f979fa29b95908c89888787898b8f949aa1a09890877e74695e53483d31251a0e020000000000000000000000000000010c16202930373c3e3e3e3e3e3e4955626f7c8996a2ada094877a6d6053473a2d201407000000000000000000000006121f2b36414c555c5f5f5f5f5f5f5f5f5d574e443b4650595e5f5f5f5f5f5f5f5f5a53493e33271b0f0300000000000000000000000000000000000000000815222e3b4855616e7b888989898989897e7165584b3e3225180b00000000000000000000000000000000000000000000000916222f3c4955626f7c8996a2afa99c908376695c4f4336291c1003000000000000000000000000000000000000000000000013202c3946535f6c798693a0acaca09386796c5f5346392c2013060000000000000000000b16212b36414c57616c77828d98a2ada89e93887e73685e53483e33281e130900000000000000000000000000000000000000050a0e111313131313131313131312100c0701000000000000000000000000000000000000000000000000000000000004090e111313131313131313131312100d08020000000000000000000000000000040d161f28303840484f565d63696e73787c8184878a8c8e9091929292929292908f8e8c898683807c77726d67615b544d453d352d241b120900000000000000000005121e2a35414b56606a757f89949ea0a09d93897e74695f544a40352b20160c0100000000040e19232e38424d58626c77828c97a0a0a09a90867b71675c52473c3125190d01000013202c3946535f6c798693a0aca79a8e8174675a4d4134271a0e01000b1825323e4b5865717e8b98a5aea295887b6e6155483b2e221508000000000000000713202c3945525e6a7783909ca8b2a5998d8175695d5145392e22170c02000000000000000000000000000000000005101b26323d4955616d7985919daab1a4988c8073675a4e4135291c10030013202c3946535f6c798693a0aca99c908376695d5043372a1d1104000002101c2936434f5c6975828f9ca8afa295897c6f6256493c3023160a00121e2b3845515e6b7884919eaba99c8f8275695c4f4336291d100300000000000000000000000000000013202c3946535f6c798693a0aca4978a7d7063574a3d3024170a0000000000000000000000000000000000000000020c151e2730384149515860676e757b81878c91969894918e8b89888786868687888a8c8f92959994908b858079736c655e564f473f362e251c1309000000000000000000000000000000000000010a141e273039424a535b626a71787e84898f93979b9fa2a4a6a8a9a8a7a7a7a7a8a8a9a8a6a3a19d9a96918d87827c756e67605850483f372e241b110700000000000000000000000000000000000000000008131f2a36414b56606a747d858d949a9fa09c989694949495989b9fa09b958e867e756c62574d42372b20150900000000000000000000000000000007121d28323b42484b4b4b4b4b4b4b55626f7c8996a2ada094877a6d6053473a2d2014070000000000000000000000020e1a25303a434b505353535353535353514c453c343e474e5253535353535353524f4941372d22160b0000000000000000000000000000000000000000000815222e3b4855616e7b8895969696968b7e7165584b3e3225180b00000000000000000000000000000000000000000000000916222f3c4955626f7c8996a2afa99c908376695c4f4336291c1003000000000000000000000000000000000000000000000013202c3946535f6c798693a0acaca09386796c5f5346392c201306000000000000000007121d27323d48535d68737e89949ea9aca1978c81776c61574c41372c21170c010000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000040d161e262e363d444b51575d63686c7074787b7d808283848586868685858483817f7d7a77736f6b67615c565049423b332b231b1209000000000000000000000814212d3a46525d68727c879193939393938b81776c62574d43382e23190f0400000000000007111c26313b46505b65707a858f93939393938d83786e64594d4135291c1003000013202c3946535f6c798693a0aca79a8e8174675a4d4134271a0e01000b1825323e4b5865717e8b98a5aea295887b6e6155483b2e2215080000000000000004111d2a36424f5b6774808c98a4b1a99d9185796d61564a3f34291e130900000000000000000000000000000000040d17222d38434e5a65717d8995a1adada194887c7063574b3e3226190d000013202c3946535f6c798693a0aca89b8f8275685c4f4235291c0f030000000f1b2835414e5b6774818e9ba7b0a3968a7d7063574a3d3124170a00121f2c3945525f6b7885929faba89b8e8275685b4f4235281c0f0200000000000000000000000000000013202c3946535f6c798693a0aca4978a7d7063574a3d3024170a000000000000000000000000000000000000000000030c151e262f373f474e555c636970757b81858a8e92959898969494939393949596999794918d89847f7a746e68615a534c453d352d241c130a0100000000000000000000000000000000000000020c151e273038414951585f666d73787e83878b8f9295989a9c9d9e9f9f9f9f9f9e9d9b999794918e8a86817c76706a645d564e463e362d241b120900000000000000000000000000000000000000000000020e19242f3a444e58626b737b83898f93979a9d9e9fa09f9e9d9b98948f8a837c746c635a50463b30261a0f040000000000000000000000000000000c18232f3a444d535758585858585858626f7c8996a2ada094877a6d6053473a2d20140700000000000000000000000008131e2831394044464646464646464645413b332c353c42454646464646464646433e372f251b10050000000000000000000000000000000000000000000815222e3b4855616e7b8895a2a2a2988b7e7165584b3e3225180b00000000000000000000000000000000000000000000000916222f3c4955626f7c8996a2afa99c908376695c4f4336291c1003000000000000000000000000000000000000000000000013202c3946535f6c798693a0acaca09386796c5f5346392c20130600000000000000030e19232e39444f59646f7a858f9aa5b0a59a90857a70655a50453a30251a100500000000000000000003070a0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0b09050100000000000000000000000000000000000000000000000000000000000000000000040c141c242b333a40464c52575c6064686b6e717375767778797979797877767472706d6a67635f5b56514b453e383129211a110900000000000000000000000916232f3c4955626e798486868686868686847a6f655a50463b31261c120700000000000000000a151f2a343f49545e69737e868686868686868680756a5d5144372b1e1104000013202c3946535f6c798693a0aca79a8e8174675a4d4134271a0e01000b1825323e4b5865717e8b98a5aea295887b6e6155483b2e22150800000000000000010e1a26333f4b5864707c8894a0acada1958a7e72675b50453a30251b120a0200000000000000000000000000050d161f29333e49545f6b76828e9aa5b1a89c9084786c6054473b2f23160a000013202c3946535f6c798693a0aca79b8e8174675b4e4135281b0e020000000e1a2734414d5a6773818d9aa7b1a4978a7e7164574b3e3124180b0013202c3946525f6c7986929faca89b8e8174675b4e4135281b0e0200000000000000000000000000000013202c3946535f6c798693a0aca4978a7d7063574a3d3024170a00000000000000000000000000000000000000000000030c141d252d353c444b52585e646a7075797e8285888b8d8f919292929292908f8d8a8884817c78736e69635d565049423a332b231b120a01000000000000000000000000000000000000000000030c151e262f373f464d545b61676d72777b7f8386898b8d8f9091929292929291908e8d8a8885827e7975706b655f59524b443c342c241b120900000000000000000000000000000000000000000000000008131d28323d465059616971787e83878b8e909192939392908e8c88847e78726a625a51483e34291f140900000000000000000000000000000000101c2834404b565e6465656565656565656f7c8996a2ada094877a6d6053473a2d201407000000000000000000000000020c161f272e3438393939393939393938353029232b313639393939393939393937332d251d1309000000000000000000000000000000000000000000000815222e3b4855616e7b8895a2aca5988b7e7165584b3e3225180b00000000000000000000000000000000000000000000000916222f3c4955626f7c8996a2afa99c908376695c4f4336291c1003000000000000000000000000000000000000000000000013202c3946535f6c798693a0acaca09386796c5f5346392c201306000000000000000a141f2a35404b55606b76818b96a1aca99e93897e73695e53493e33291e13090000000000000000030a0f141718191919191919191919191919191919191919191919191919191919191919191919191919191919191919191919191919191919181815110c0600000000000000000000000000000000000000000000000000000000000000000000020a121a21282f353b41464b5054585c5f62646668696b6b6c6c6c6c6b6a69686664615e5b57534f4a453f3a332d261f1710080000000000000000000000000916232f3c4955626e7879797979797979797972685d53493e34291f150a000000000000000000030d18222d37424c57616c76797979797979797979756a5d5144372b1e1104000013202c3946535f6c798693a0aca79a8e8174675a4d4134271a0e01000b1825323e4b5865717e8b98a5aca295887b6e6155483b2e22150800000000000000000b17232f3b4854606c7884909ca7b2a69a8f83786c61564c41372d241c140d070200000000000000000004090f161f28313b45505a65717c87939faaafa4988c8074685c5044382b1f1307000013202c3946535f6c798693a0aca79a8e8174675a4d4134271b0e010000000d1a2733404d596673808d9aa6b1a5988b7e7165584b3e3225180b0013202c3946535f6c798693a0aca79a8e8174675a4e4134281b0e0100000000000000000000000000000013202c3946535f6c798693a0aca4978a7d7063574a3d3024170a0000000000000000000000000000000000000000000000020b131b232b323940474d53595f64696d7275797c7e81838485868686858482817e7b7874706c67625d57524b453e37302921191109000000000000000000000000000000000000000000000000030c151d252d343c434a50565c61666b6f7376797c7e818284858586868685848382807e7b7875726d69645f5a544e474139322a231a120900000000000000000000000000000000000000000000000000010c16212b343e474f585f666c72777b7e8183858686868584827f7c78736d67605850483f362c22180d0300000000000000000000000000000000121f2b3844505c68707171717171717171717c8996a2ada094877a6d6053473a2d20140700000000000000000000000000040d151d23282b2c2c2c2c2c2c2c2c2c29241f1920252a2c2c2c2c2c2c2c2c2c2a27211b130b01000000000000000000000000000000000000000000000815222e3b4855616e7b8895a0a0a0988b7e7165584b3e3225180b00000000000000000000000000000000000000000000000916222f3c4955626f7c8996a2afa99c908376695c4f4336291c1003000000000000000000000000000000000000000000000013202c3946535f6c798693a0acaca09386796c5f5346392c20130600000000000006101b26313c46515c67727c87929da8aca1978c82776c62574c42372c22170c0200000000000000050d141b2023252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252524211d1710090000000000000000000000000000000000000000000000000000000000000000000000080f161d242a30353a3f44484c4f5255585a5b5d5e5f5f5f5f5f5e5e5c5b595755524f4b47433e39342e28221b140d05000000000000000000000000000814212d3a46525d666c6c6c6c6c6c6c6c6c6c6960564c41372c22180d030000000000000000000006111b26303b45505a646b6c6c6c6c6c6c6c6c6c6b63594d4135291c1003000013202c3946535f6c798693a0a0a09a8e8174675a4d4134271a0e01000b1825323e4b5865717e8b98a0a0a095887b6e6155483b2e221508000000000000000007131f2b3744505c67737f8b97a2aeaba094897e73685d53493f362e251e18130f0b090707060708090c10141a2128313a434d57616c77828d99a4afaa9e93877b6f64584c4034271b0f03000013202c3946535f6c798693a0aca79a8d8173675a4d4034271a0e010000000d1a2633404c596673808c99a6b2a5988c7e7265584c3f3225190c0013202c3946535f6c798693a0aca79a8e8174675a4d4134271a0e0100000000000000000000000000000013202c3946535f6c798693a0aca4978a7d7063574a3d3024170a0000000000000000000000000000000000000000000000000109111920272e353c42484e53585d6165696d6f727476777879797978777574716f6c6864605c57524c46403a332c251e170f070000000000000000000000000000000000000000000000000000030b131b232a31383f454b50565a5f63676a6d707274757778787979797877767573716f6c6965615d59544e49433c362f2820191108000000000000000000000000000000000000000000000000000000050f19222c353d464d555b61666b6f72757778797979787775736f6c67625c554e463e362d241a1006000000000000000000000000000000000013202c3946535f6c797e7e7e7e7e7e7e7e7e7e8996a2ada094877a6d6053473a2d2014070000000000000000000000000000040b12171c1f20202020202020201f1d19130e141a1d1f20202020202020201e1b1610090100000000000000000000000000000000000000000000000815222e3b4855616e7b8893939393938b7e7165584b3e3225180b00000000000000000000000000000000000000000000000916222f3c4955626f7c8996a2afa99c908376695c4f4336291c1003000000000000000000000000000000000000000000000013202c3946535f6c798693a0acaca09386796c5f5346392c2013060000000000020c17222d38424d58636e78838e99a4afa59b90857a70655b50453b30251b100500000000000000040e171f262c303232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232312e29221b12090000000000000000000000000000000000000000000000000000000000000000000000050c12191e242a2f34383c404346494b4d4f505152525352525251504e4d4b4845423f3b37322e28231d17100a03000000000000000000000000000005111d2935404b545c5f5f5f5f5f5f5f5f5f5f5d574e443a30251b100600000000000000000000000009141e29333e48525a5f5f5f5f5f5f5f5f5f5f5e5951473c3125190d00000013202c3946535f6c798693939393938e8174675a4d4134271a0e01000b1825323e4b5865717e8b9393939393887b6e6155483b2e2215080000000000000000030f1b27333f4b57636e7a86919da8b1a69a8f857a6f655b514840373029231f1b1816141313131416191c20252b323a434c555f69737e89939eaaafa4998d82766b5f53473b2f23170b00000013202c3946535f6c798693a0aca79a8d8173675a4d4134271a0e010000000d192633404c596673808c99a6b2a5988c7e7265584c3f3225190c0013202c3946535f6c798693a0aca79a8e8174675a4d4134271a0e0100000000000000000000000000000013202c3946535f6c798693a0aca4978a7d7063574a3d3024170a0000000000000000000000000000000000000000000000000000070e161d242a31373c42474c5155595d60636668696b6b6c6c6c6b6a696765625f5c5854504b46413b352f28221b140c05000000000000000000000000000000000000000000000000000000000109111820272d343a3f454a4e53575a5e61636567696a6b6c6c6c6c6b6b6a68676562605c5955514d48433d37312b241d160e07000000000000000000000000000000000000000000000000000000000007101a232b343c434a50565b5f6366686a6b6c6c6c6c6a6966635f5b56514a443c352c241b120800000000000000000000000000000000000013202c3946535f6c79868b8b8b8b8b8b8b8b8b8f99a4ada094877a6d6053473a2d20140700000000000000000000000000000000070c0f12131313131313131312100d0803090d11131313131313131313110f0a05000000000000000000000000000000000000000000000000000815222e3b4855616e7b868686868686867e7165584b3e3225180b00000000000000000000000000000000000000000000000916222f3c4955626f7c8996a2afa99c908376695c4f4336291c1003000000000000000000000000000000000000000000000013202c3946535f6c798693a0acaca09386796c5f5346392c201306000000000008131e29343e49545f6a74808a95a0aba99e93897e73695e54493e34291e140900000000000000010c16202931373c3e3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3d3a342c241b1006000000000000000000000000000000000000000000000000000000000000000000000001070d13191e23282c3033373a3c3e40424344454646464645444342403e3c3936332f2b27221d18120c0600000000000000000000000000000000010d19242f39424a5053535353535353535353514c453c32281e130900000000000000000000000000020d17222c3640484f52535353535353535353524e473f352b20140900000013202c3946535f6c79868686868686868174675a4d4134271a0e01000b1825323e4b5865717e868686868686867b6e6155483b2e2215080000000000000000000b17232f3b46525e6975808b97a2adaca1968b81776d635a5249423b352f2b27242221202020212325282c31363d444c555e67717b858f9aa5b0a99e93887c71655a4e42372b1f130700000013202c3946535f6c798693a0aca79a8e8174675a4e4134271b0e010000000d1a2633404c596673808c99a6b2a5988c7e7265584c3f3225190c0013202c3946535f6c798693a0aca79a8e8174675b4e4134281b0e0100000000000000000000000000000013202c3946535f6c798693a0aca4978a7d7063574a3d3024170a000000000000000000000000000000000000000000000000000000040b12191f252b31373c4145494d515457595b5d5e5f5f5f5f5f5e5c5a585653504c48443f3a35302a241d1710090200000000000000000000000000000000000000000000000000000000000000070e151c22282e34393e43474b4e515457595b5c5d5e5f5f5f5f5f5e5d5c5a585653504d4945413c37322c262019130b0400000000000000000000000000000000000000000000000000000000000000081119222a31383f454a4f5356595b5d5f5f5f5f5f5e5c5a57534f4b453f39322b231a12090000000000000000000000000000000000000013202c3946535f6c79869398989898989898989aa1aaaca094877a6d6053473a2d20140700000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000815212e3b4854616d7779797979797979797064574b3e3125180b00000000000000000000000000000000000000000000000916222f3c4955626f7c8996a2afa99c908376695c4f4336291c1003000000000000000000000000000000000000000000000013202c3946535f6c798693a0acaca09386796c5f5346392c20130600000000040f1a25303a45505b66707b86919ca6aca2978c82776c62574c42372d22170d020000000000000007121d28323b42484b4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4b4a453e362c22170c0100000000000000000000000000000000000000000000000000000000000000000000000002080d12171c2024272a2d30323435373838393939393837363533312f2d2a26231f1b16110c060100000000000000000000000000000000000007121d2730383f444646464646464646464645413b332a21160c02000000000000000000000000000005101a242e363d434646464646464646464645423d362d23190e03000000131f2c3946525f6b76797979797979797972665a4d4034271a0e01000b1825313e4b5764707979797979797979776d6154483b2e21150800000000000000000006121e2a36414d58636f7a85909ba6b0a89d93897f756c645b534c46403b3733312f2e2d2c2d2e2f3134383c42484f565e677079838d97a1acada2978d82766b6054493d32261a0e0300000013202c3946535f6c798693a0aca89b8e8174685b4e4135281b0f020000000d1a2733404d5a6673808d9aa6b2a5988b7e7165584b3e3225180c0013202c3946525f6c7986929faca89b8e8174685b4e4135281b0f0200000000000000000000000000000013202c3946535f6c798693a0aca4978a7d7063574a3d3024170a0000000000000000000000000000000000000000000000000000000000070e141a20262b3035393d4144474a4c4e5051525253525251504e4c494743403c38332f29241e19120c0500000000000000000000000000000000000000000000000000000000000000000000030a11171d23282d32373b3e4245484a4c4e4f5151525253525251504f4d4c494744413d3935302b26211b150e08010000000000000000000000000000000000000000000000000000000000000000000710181f272d33393e43474a4d4f515253535352514f4d4a47433f3a342e2720191108000000000000000000000000000000000000000013202c3946535f6c798693a0a0a0a0a0a0a0a0a0a0a0a0a094877a6d6053473a2d20140700000000000000040708080808080808080808080808080808080808080808080808080808080808080808080808080808080808080808080808060200000000000000000000000000000713202c3845515c666c6c6c6c6c6c6c6c6c685e53483c2f23160a00000000000000000000000000000000000000000000000916222f3c4955626f7c8996a2afa99c908376695c4f4336291c1003000000000000000000000000000000000000000000000013202c3946535f6c798693a0acaca09386796c5f5346392c201306000000000b16212b36414c57616c77828d98a2ada59b90857b70655b50463b30261b100600000000000000000c18242f3a444d5458585858585858585858585858585858585858585858585858585858585858585858585858585858585858585858585858585858585650483e34291d1105000000000000000000000000000000000000000000000000000000000000000000000000000002070b1014171b1e21232527292a2b2c2c2c2c2c2c2b2a28272523201d1a17130f0a05000000000000000000000000000000000000000000010b151e272e3337393939393939393939393835302921180f050000000000000000000000000000000009121c242c3236393939393939393939393936322b241b110700000000111e2a37434f5a646b6c6c6c6c6c6c6c6c6960564a3e3225190c00000a16232f3c48535e686c6c6c6c6c6c6c6c6c665c5145382c201307000000000000000000020d1925303c47525e69747e89949ea8afa59b91887e756d655e57514c4743403d3c3a3a393a3b3c3e4144484d535960687079828b959fa9afa59b91867b70655a4f43382c2115090000000013202c3946535f6c798693a0aca89b8f8275685c4f4236291c0f030000000e1b2734414d5a6774818d9aa7b1a4978b7e7164574b3e3125180b00121f2c3845525f6b7885929faba89b8f8275685b4f4235291c0f0200000000000000000000000000000013202c3946535f6c798693a0aca4978a7d7063574a3d3024170a00000000000000000000000000000000000000000000000000000000000003090f141a1f24292d3135383b3e4042434445464646454443413f3d3a3734302c27231e19130d070100000000000000000000000000000000000000000000000000000000000000000000000000060c12171d22262a2e3236393b3e40414344454546464645454442413f3d3a3734312d2924201b15100a03000000000000000000000000000000000000000000000000000000000000000000000000060e151c22282d32373a3e40424445464646454443413e3b37332e29231c160e0700000000000000000000000000000000000000000013202c3946535f6c7986939393939393939393939393939393877a6d6053473a2d2014070000000000060c101315151515151515151515151515151515151515151515151515151515151515151515151515151515151515151515151514120f0a0400000000000000000000000004101c28343f4a545b5f5f5f5f5f5f5f5f5f5c564d42372b1f130700000000000000000000000000000000000000000000000916222f3c4955626f7c8996a2afa99c908376695c4f4336291c1003000000000000000000000000000000000000000000000013202c3946535f6c798693a0acaca09386796c5f5346392c20130601010107121d27323d48535d68737e89949ea9a99e94897e74695e54493e34291f1409000000000000000000101c2834404b565f6465656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565625a50453a2e211509000000000000000000000000000000000000000000000000000000000000000000000000000000000004070b0e111417191b1c1d1e1f1f201f1f1f1e1d1c1a181614110e0a0703000000000000000000000000000000000000000000000000030c151c23282b2c2c2c2c2c2c2c2c2c2c2c29241f170f060000000000000000000000000000000000000a121a21262a2c2c2c2c2c2c2c2c2c2c2c2a26201a120900000000000e1a26323e48525a5f5f5f5f5f5f5f5f5f5d574e44392d221609000007131f2b37424d565c5f5f5f5f5f5f5f5f5f5b544a3f34281c10040000000000000000000008141f2a36414c57626d77828c96a0aaada39a91887f777069625c57534f4c4a484746464647494a4d5054595e646b727a828b949da7b0a79d93897f74695f54493d32271b10040000000013202c3946535f6c798693a0aca99c9083766a5d5043372a1e11040000000f1b2835424e5b6874818e9ba7b0a3978a7d7064574a3e3124170b00121e2b3845515e6b7784919eaaa99c8f8276695c4f4336291d100300000000000000000000000000000013202c3946535f6c798693a0aca4978a7d7063574a3d3024170a000000000000000000000000000000000000000000000000000000000000000003090e14181d2125282c2e3133353738393939393837363533302e2b2724201c17120d08020000000000000000000000000000000000000000000000000000000000000000000000000000000001060c11161a1e2226292c2f31333536373839393939393837363432302e2b2825211d19140f0a04000000000000000000000000000000000000000000000000000000000000000000000000000000030a11171d22262a2e313436373839393939383634322f2b27221d18110b040000000000000000000000000000000000000000000013202c3946535f6c7986868686868686868686868686868686867a6d6053473a2d201407000000020a11181c20212222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222211f1b150f070000000000000000000000000c18232e38424a4f525353535353535353504b443b30261a0f0300000000000000000000000000000000000000000000000916222f3c4955626f7c8996a2afa99c908376695c4f4336291c1003000000000000000000000000000000000000000000000013202c3946535f6c798693a0acaca09386796c5f5346392c20130e0e0e0e0e19232e39444f59646f7a858f9aa5ada2978d82776d62574d42382d22180d02000000000000000000121f2b3844515d6870727272727272727272727272727272727272727272727272727272727272727272727272727272727272727272727272727272726c62564a3d3124180b00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000205080a0c0e0f111212131313131211100f0d0c0a07040100000000000000000000000000000000000000000000000000000000030a11171b1e202020202020202020201f1d19130d0600000000000000000000000000000000000000000810161a1e1f2020202020202020201f1d1a150f080000000000000a16212c3740484f525353535353535353514c453c32281d11050000030f1a26303b444b505353535353535353524f4a42382e23180c0000000000000000000000030e1925303b46515b66707a858e98a2abaca39a9189817a746d68635f5c595755545353535455575a5d60656a6f767d848c949da6afa89f958b82776d62584d42372c21160a000000000013202c3946535f6c798693a0acaa9e9184786b5e5245382c1f1306000003101d2936434f5c6975828f9ca8afa296897c6f6356493d3023160a00111e2a3744515d6a7784909daaaa9d9084776a5d5144372a1e110400000000000000000000000000000013202c3946535f6c798693a0aca4978a7d7063574a3d3024170b0b0a070300000000000000000000000000000000000000000000000000000000000003080c1115191c1f222527282a2b2c2c2c2c2c2b2a282624211e1b1814100b0601000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000050a0e12161a1d2022242628292b2b2c2c2c2c2c2b2a29282624211f1c1815110d080300000000000000000000000000000000000000000000000000000000000000000000000000000000000000060c11161a1e222527292b2c2c2c2c2c2b2a2825221f1b17120c06000000000000000000000000000000000000000000000000131f2c3946525f6b767979797979797979797979797979797979776c6053463a2d2014070000020b141c23282c2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2b2620191108000000000000000000000006111c262f383f4346464646464646464644403a32291f14090000000000000000000000000000000000000000000000000916222f3c4955626f7c8996a2afa99c908376695c4f4336291c1003000000000000000000000000000000000000000000000013202c3946535f6c798693a0acaca09386796c5f5346392c201a1a1a1a1a1a1f2a35404b55606b76818b96a1aca69b90867b70665b50463b30261b10060000000000000000000013202c3946535f6c797e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7265584b3f3225180c0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000060b0f121313131313131313131312100d080200000000000000000000000000000000000000000000040a0e111313131313131313131313110e09040000000000000005101a252e373e4346464646464646464645413b332a21160b0000000009141f29323a4044464646464646464646433f382f261c110600000000000000000000000008131e29343f4a545e69737c869099a1aaaca39b938c857f79746f6b6865636260605f6061626466696c71757b81878e969ea6afa79f968d837970655b51463b31261b1004000000000013202c3946535f6c798693a0acac9f9386796d6054473b2e221509000005121f2b3844515e6a7784909daaaea194887b6e6255483c2f22150900101d2936434f5c6976828f9ca8ab9e9185786b5e5245382c1f120600000000000000000000000000000013202c3946535f6c798693a0aca4978a7d7063574a3d302418181817140f0a030000000000000000000000000000000000000000000000000000000000000005090c101316181a1c1d1e1f1f201f1f1e1d1b191715120f0b0804000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000002060a0d101316181a1b1d1e1f1f1f201f1f1e1e1c1b191715120f0c0905010000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000050a0e1215181b1c1e1f2020201f1e1d1b1916130f0b060100000000000000000000000000000000000000000000000000111e2a37434f5a646b6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6b655b4f44372b1f120500000a141d262e34383b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3a37322b231a100600000000000000000000000a141d262d333739393939393939393938342f2820170d020000000000000000000000000000000000000000000000000916222f3c4955626f7c8996a2afa99c908376695c4f4336291c1003000000000000000000000000000000000000000000000013202c3946535f6c798693a0acaca09386796c5f5346392c2727272727272727313c47515c67727d87929da8a99f94897e74695f54493f34291f140a000000000000000000000013202c3946535f6c79868c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c7e7265584c3f3225190c0000000000000004070808080808080808080808080808080808080808080808080808070604030100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000009131c252c32373939393939393939393835302921180f0400000000020d1720282f343839393939393939393937332d261d140a00000000000000000000000000020d18232d38424d57616a747d878f98a0a8ada59e97908a85807b787472706e6d6d6c6d6d6f707275797d81868c9299a0a8ada69e958d847a71675e54493f352a1f140900000000000013202c3946535f6c798693a0acaea195887b6f63564a3d3125180c00000814212d3a46535f6c7985929fabaca09386796d6054473a2e211408000f1c2835424e5b6874818e9aa7ac9f9286796c6053463a2d20140700000000000000000000000000000013202c3946535f6c798693a0aca4978a7d7063574a3d302525252523201b150e050000000000000000000000000000000000000000000000000000000000000000000306090b0d0f1112121313131211100f0d0b0806030000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000010407090b0d0f10111213131313121211100e0d0b08060300000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000206090c0e1011121313131212100e0c0a0603000000000000000000000000000000000000000000000000000000000e1a26323e48525a5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5a53493e33271b0f030006111c262f383f4548484848484848484848484848484848484848484848484848484848484848484848484848484848484848484848484847433d352c22170c0100000000000000000000020b141c22272b2c2c2c2c2c2c2c2c2c2b28231d160e05000000000000000000000000000000000000000000000000000916222f3c4955626f7c8996a2afa99c908376695c4f4336291c1003000000000000000000000000000000000000000000000013202c3946535f6c798693a0acaca09386796c5f53463934343434343434343438424d58636e78838e99a4ada2988d82786d62584d42382d22180d02000000000000000000000013202c3946535f6c7986939290909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090968c7e7265584c3f3225190c0000000000060c101315151515151515151515151515151515151515151515151515141412110f0d0b090603000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000010406080a0c0e0f101111121212121111100f0e0c0a08060401000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000010a131a21262a2c2c2c2c2c2c2c2c2c2c29241f170f06000000000000050e161d23282b2c2c2c2c2c2c2c2c2c2b27221c140b02000000000000000000000000000006111c26303b454f58626b747d868e969ea5aca8a29b96908c8884817e7c7b7a7979797a7b7d7f8285898d92979da4aba9a39b948c837a72685f564c42382d23180e0300000000000013202c3946535f6c798693a0acb0a4978b7e7265594d4134281c1106050b1724303c4955626e7b8794a0adaa9e9184786b5f5245392c1f1306000e1a2734404d5a6673808c99a6ada194877b6e6155483b2f22160900000000000000000000000000000013202c3946535f6c798693a0aca4978a7d7063574a3d3232323231302c261f170e0500000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000a16212c3740484f525353535353535353535353535353535353524f4941372d22160b00000b17222d38424a51545555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555534e473e34291d12060000000000000000000000020a11171b1e2020202020202020201f1c18120c0400000000000000000000000000000000000000000000000000000916222f3c4955626f7c8996a2afa99c908376695c4f4336291c1003000000000000000000000000000000000000000000000013202c3946535f6c798693a0acaca09386796c5f5346414141414141414141414149545f6a74808a95a0aba69b91867b71665b51463b31261b110600000000000000000000000013202c3946535f6c7986938983838383838383838383838383838383838383838383838383838383838383838383838383838383838383838384908c7e7265584c3f3225190c000000020a11181c202122222222222222222222222222222222222222222222222221201f1e1c1a1815120f0b070300000000000000000000000000000000000000000000000000000000000000000000000000000000000003060a0d10131517191a1c1d1d1e1e1e1e1e1e1d1d1c1a19171513100d0a060300000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000010910161a1e1f20202020202020201f1d19130d060000000000000000040c12181c1f2020202020202020201e1b17110a02000000000000000000000000000000000a141f29333d465059626b747c848c939aa1a7aca7a19c9894908d8b89888786868687888a8c8e9195999ea3a9aaa59e98918a827a716960574d443a30261b11070000000000000013202c3946535f6c798693a0acb3a69a8e8175695d5145392d22171312131c2834404c5865717d8a96a3afa89b8f8276695d5043372a1e1104000c1925323f4b5865717e8b97a4afa296897c7063564a3d3124170b00000000000000000000000000000013202c3946535f6c798693a0aca4978a7d7063574a3e3e3e3e3e3e3c37312921170d0200000000000002070b0e101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010100e0b07020000000000000000000000040708090909090909090908070501000000000000000000000000030608090909090909090909080502000000000000000000000000030608090909090909090909080603000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005101a252e373e4346464646464646464646464646464646464646433e372f251b100500000f1b27333f4a545c6161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161615f5950453a2e22160a00000000000000000000000000060b0f1213131313131313131312100c07010000000000000000000000000000000000000000000000000000000916222f3c4955626f7c8996a2afa99c908376695c4f4336291c1003000000000000000000000000000000000000000000000013202c3946535f6c798693a0acaca09386796c5f534d4d4d4d4d4d4d4d4d4d4d4d505b66707b86919ca7aa9f948a7f746a5f544a3f342a1f140a0000000000000000000000000013202c3946535f6c798693887b767676767676767676767676767676767676767676767676767676767676767676767676767676767676767683908c7e7265584c3f3225190c0000020b141c23282c2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2d2c2a292724221f1b18140f0b060100000000000000000000000000000000000000000000000000000000000000000000000001060a0f13161a1c1f2124252728292a2b2b2b2b2b2b2a2928272524211f1c1916130f0a0601000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000050a0e1113131313131313131312100d08020000000000000000000001070c1012131313131313131313120f0b06000000000000000000000000000000000000030d17212b343e475059626a727a82898f969ba1a6aaa8a4a09d9a98969493939393949596989b9ea1a5a9a9a49f99938d867f7870685f574e453b32281e140a000000000000000013202c3946535f6c798693a0acb6aa9d9185796d61554a3e342922201f1f232d3844505c6874818d99a6b2a5998c8073675a4e4135281c0f02000b1724303d4a5663707c8995a2afa4978b7e7265584c3f33261a0d01000000000000000000000000000013202c3946535f6c798693a0aca4978a7d7063574b4b4b4b4b4b4b48433b33291e13080000000000060d13171b1c1c1c1c1c1c1c1c1c1c1c1c1c1c1c1c1c1c1c1c1c1c1c1c1c1c1c1c1c1c1c1c1c1c1c1c1c1c1c1c1c1c1c1c1c1c1c1c1c1c1c1c1c1c1c1c1c1c1c1c1c1c1c1c1c1c1c1c1c1c1c1c1c1c1c1c1c1c1c1c1c1c1c1c1c1c1c1c1b17130d060000000000000000070c11141515151515151515151514110d08010000000000000000050b0f131515151515151515151514120e09030000000000000000040a0f121515151515151515151515130f0a040000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000009131c252c32373939393939393939393939393939393939393937332d251d1309000000121e2b37434f5b666d6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6b61564b3e3226190c000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000916222f3c4955626f7c8996a2afa99c908376695c4f4336291c1004000000000000000000000000000000000000000000000013202c3946535f6c798693a0acaca09386796c5f5a5a5a5a5a5a5a5a5a5a5a5a5a5a626c77828d98a2ada2988d83786d62584d43382d23180f070000000000000000000000000013202c3946535f6c798693887b6f6969696969696969696969696969696969696969696969696969696969696969696969696969696969697683908c7e7265584c3f3225190c00000a141d262e34383b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3a3a39373533312e2b2724201b17120c0701000000000000000000000000000000000000000000000000000000000000000002070d12161b1f2226292c2e3032343536373738383838383736353432302e2c2926221f1b16120d0701000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000050f19222c353e475058606870777e848a90959a9ea2a6a9a9a6a4a2a1a0a0a0a0a0a1a3a5a7aaa8a4a19d98938e88827b746d665e564d453c332920160c02000000000000000013202c3946535f6c798693a0acb9ada195897d72665b50453b332f2c2c2c2e353f4955606c7884909da9aea296897d7064584b3f3226190d00000915222f3b4854616e7a8793a0aca69a8d8174675b4e4235291c1003000000000000000000000000000013202c3946535f6c798693a0aca4978a7d70635858585858585857544d453b3025190d010000000810181e23272929292929292929292929292929292929292929292929292929292929292929292929292929292929292929292929292929292929292929292929292929292929292929292929292929292929292929292929292929292927231e1810080000000000020b12181d2022222222222222222222211d19130c040000000000000810161b1f21222222222222222222211e1a140d06000000000000070e151a1f21222222222222222222211f1b160f08000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000010a131a21262a2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2a27211b130b0100000013202c3946525f6c777b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b73675a4d4134271a0e00000000000000030507080909090909080706040100000000000000000000000000000000000000000000000000000000000000000000000005101a25303c4955626f7c8996a2afa99c908376695c4f43362b20150b000000000000000000000000000000000000000000000013202c3946535f6c798693a0acaca09386796c67676767676767676767676767676768737e89949ea9a69c91867b71665c51463c362f282119110900000000000000000000000013202c3946535f6c798693887b6f625c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c697683908c7e7265584c3f3225190c0006111c262f383f45484848484848484848484848484848484848484848484848484746454442403d3a3734302c27221d18120c06000000000000000000000000000000000000000000000000000000000000070d13181d22272b2f3235383b3d3f40424344444445454544444342403f3d3b3835322f2b27221d18130d0600000000000000000000000000000000000000040708080808080808080808070400000000000000000000000000000000000000000000000000000407080808080808080808080704000000000000000000000000000000000000000000000000000000000000000000000007101a232c353e464e565e656c73797f84898e9296999c9fa1a3a4a5a6a6a6a6a6a5a4a2a09e9b9895918c87827d77706a635b544c443b332a20170e0400000000000000000013202c3946535f6c798693a0acb8b1a69a8e83776c61574d453f3b3938393b3f47505b66717d8995a1adaa9e92867a6d6155483c3023170a00000713202d3946525f6b7884919daaa89c8f83766a5d5144382b1f1206000000000000000000000000000013202c3946535f6c798693a0aca4978a7d706565656565656565645f574c4135291d1104000007111a22292f3336363636363636363636363636363636363636363636363636363636363636363636363636363636363636363636363636363636363636363636363636363636363636363636363636363636363636363636363636363636332f29221a1107000000020c141c23292d2f2f2f2f2f2f2f2f2f2f2d2a241e160d040000000009121a21272c2e2f2f2f2f2f2f2f2f2f2e2a251f180f060000000007101920262b2e2f2f2f2f2f2f2f2f2f2e2b27211a1108000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000010910161a1e1f2020202020202020202020202020202020201e1b161009010000000013202c3946535f6c79868888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888174675a4d4134271a0e0000000000050b0f1214151516161615151412100e0b08040000000000000000000000000000000000000000000000000000000000000000010c17212c37414c56626f7c8996a2afa99c908376695c51473c32271c12070000000000000000000000000000000000000000000013202c3946535f6c798693a0acaca093867974747474747474747474747474747474747a85909aa5aa9f948a7f746a5f57524d47413a332b231b1209000000000000000000000013202c3946535f6c798693887b6f62554f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f5c697683908c7e7265584c3f3225190c000b17222d38424a5154555555555555555555555555555555555555555555555555545352504e4c4a4743403c38332e29231d17110a030000000000000000000000000000000000000000000000000000040b12181e24292e33373b3e424547494b4d4e4f50515151515151504f4e4d4b494745423e3b37332e29241e18110b04000000000000000000000000000000060c10131515151515151515151513100c0600000000000000000000000000000000000000000000060c10131515151515151515151513100c070000000000000000000000000000000000000000000000000000000000000000000008111a232c343c444c535b61686e73797d82868a8d909294969798999a9a9a9998979694918f8c8885817c77716b655f58514a423a322921180e050000000000000000000013202c3946535f6c798693a0acafa69f9d94897e73695f57504b47464545474b5159626d77838e99a5b1a69a8e82766a5d5145392c201407000005111e2a3743505c6975828e9ba7ab9e9285796c6053473a2e221509000000000000000000000000000013202c3946535f6c798693a0aca4978a7d71717171717171717170695e5245392c20130700030e19232c343b4042434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434342403b342c23190e0300000a141e262e34393b3c3c3c3c3c3c3c3c3b39352f281f160c01000007111b242c33383b3c3c3c3c3c3c3c3c3c3a36312921180e030000050f19222a31373a3c3c3c3c3c3c3c3c3c3b37322b231a100600000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000050a0e1113131313131313131313131313131313131313110f0a0500000000000013202c3946535f6c798693959595959595959595959595959595959595959595959595959595959595959595959595959595959595958e8174675a4d4134271a0e000000010910161b1f2022222222222221201f1d1a1714100b0600000000000000000000000000000000000000000000000000000000000008131e28333e48535e68737d8996a2afa99c9083786e63594e43392e23190e0300000000000000000000000000000000000000000013202c3946535f6c798693a0acaca09386818181818181818181818181818181818181818c96a1aca4988d83786f6b67635e58524c453d352d241b12090000000000000000000013202c3946535f6c798693887b6f6255484343434343434343434343434343434343434343434343434343434343434343434343434f5c697683908c7e7265584c3f3225190c000f1b27333f4a545c6161616161616161616161616161616161616161616161616161605f5d5b595653504c48443f3a342f28221c150d06000000000000000000000000000000000000000000000000070e151c23292f353a3f43474b4e515456585a5b5c5d5e5e5e5e5e5e5d5c5b5a585654514e4b47433f3a352f29231c150e06000000000000000000000000020a11181c2021222222222222222221201c18110a02000000000000000000000000000000000000020a11181c2021222222222222222221201c18120a0200000000000000000000000000000000000000000000000000000000000000000008111a222b333a424950565c62686d72767a7d81838688898b8c8c8d8d8d8c8c8a89878582807c7874706b66605a544d473f38302820170f06000000000000000000000013202c3946535f6c798693a0aca89d94909490857b7169615b575452525254575c636b747e89949faaaca195897d72665a4d4135291d10040000020f1b2834414d5a66737f8c98a4ada194887b6f63564a3e3125190c000000000000000000000000000013202c3946535f6c798693a0aca4978a7e7e7e7e7e7e7e7e7e7e7a6d6154473a2e211407000914202a353e464c4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4c463e352a2014090006111c26303840454848484848484848484846413a31281e130800020d18232d363e444748484848484848484846423b332a20150a00000b16212b343c434748484848484848484847433d352c22180d0100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000013202c3946535f6c798693a0a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a29a8e8174675a4d4134271a0e0000010b131b22272b2d2e2f2f2f2f2f2e2d2b292724201c17110b05000000000000000000000000000000000000000000000000000000050f1a252f3a454f5a646f7a858f9aa5b1aca0958a80756a60554a40352a20150a00000000000000000000000000000000000000000013202c3946535f6c798693a0acafa3978f8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e939da8b0a3968a817e7b78736f69635d564f473f372e241b120800000000000000000013202c3946535f6c798693887b6f6255483c36363636363636363636363636363636363636363636363636363636363636363636434f5c697683908c7e7265584c3f3225190c00121e2b37434f5b666d6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6d6d6b6a6865635f5c58544f4a45403a342d261f1810080000000000000000000000000000000000000000000009111920272e353b40464b4f53575a5d6062646668696a6a6b6b6b6b6a6a6968666563605d5a57534f4a45403a342e272018100800000000000000000000020b141c23282c2e2e2e2e2e2e2e2e2e2e2c28231c140b0200000000000000000000000000000000020b141c23282c2e2e2e2e2e2e2e2e2e2e2c28231c140c02000000000000000000000000000000000000000000000000000000000000000000081019212830373e454b51575c61666a6e717477797b7d7e7f80808180807e7d7c7a787673706c68645f5a554f49433c352e261e160e0500000000000000000000000013202c3946535f6c798693a0aca5988c848b968d847b736c6763615f5f5f6063676d757d87909ba5b0a69b9084796d6155493d3125190d010000000c1925323e4a5763707c8995a1aea4978b7e7266594d4135281c10040000000000000000000000000013202c3946535f6c798693a0aca59a8f8b8b8b8b8b8b8b8b8b877a6d6154473a2e211407000d1925313c4650575c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5750463c3125190d000b17222d38424a5155555555555555555555524c433a2f24190d0107131f2a353f484f54555555555555555555534d453c31261b0f0305111c28333d464e53555555555555555555544f473e34291e120600000000000000000000000000000000000000000000000000000000000000010305060708080808070604020000000000000000000000000000000102030303020100000000000000000000000000000013202c3946535f6c798693a0acaeaea9a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a59a8e8174675a4d4134271a0e000009131d252d33373a3b3c3c3c3c3c3b3a383633302c27221d160f0800000000000000000000000000000000000000000000000000010c16212c36414c56616b76818c96a1acb6b1a69c91877c71675c51473c31271c1107000000000000000000000000000000000000000013202c3946535f6c798693a0acb4a9a19b9a9a9a9a9a9a9a9a9a9a9a9a9a9a9a9a9a9a9a9ea5afb2a69b918e8b8884807a756f686159514940372d231a0f05000000000000000013202c3946535f6c798693887b6f6255483c2f292929292929292929292929292929292929292929292929292929292929292936434f5c697683908c7e7265584c3f3225190c0013202c3946525f6c777b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7a79787674726f6c6864605b56514b453f38312a221a120a020000000000000000000000000000000000000009121a232a323940464c51565b5f63676a6d6f717374757677777878777777767473716f6d6a67635f5b56514c463f39312a221a12090000000000000000000a141d262e34383b3b3b3b3b3b3b3b3b3b38342e261d140a000000000000000000000000000000000a141d262e34383b3b3b3b3b3b3b3b3b3b39342e261e140a00000000000000000000000000000000000000000000000000000000000000000000070f171e25303a444c535656565a5e6165686a6c6e707172737373737372716f6e6c696763605c58534e49443e38312a231c140c040000000000000000000000000013202c3946535f6c798693a0aca5988c7e8590968d857d78736f6d6c6b6b6d6f73787f878f98a2acaa9f958a7e73685c5045392d211509000000000a16222f3b4754606d7985929eaaa79a8e8275695d5144382c2014070000000000000000000000000013202c3946535f6c798693a0acaba19a989898989898989894877a6d6154473a2e21140700111d2936424d58626869696969696969696969696969696969696969696969696969696969696969696969696969696969696969696969696969696969696969696969696969696969696969696969696969696969696969696969696969696862584d4236291d11000f1b27333f4a545c616262626262626262625d564c41352a1d11050b17242f3b46515a606262626262626262625e574e43382c2014070915212d39444f585f626262626262626262605950463a2f23170a0000000000000000000000000000000000000000000000000000000003070a0d0f111314151515141412110f0c090602000000000000000206090c0d0f0f0f0f0f0e0d0b0906030000000000000000000013202c3946535f6c798693a0acb3a89f99989898989898989898989898989898989898989898989898989898989898989898989898988e8174675a4d4134271a0e0005101b252f373e444648484949494848464542403c38332e28211a120900000000000000000000000000000000000000000000000008131d28333d48535d68737d88939da8aeababaea3988e83786e63584e43382e23180e030000000000000000000000000000000000000013202c3946535f6c798693a0acb9b2aca8a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a9a9aaabaca39d9a9794908b868079736b635b52493f352c21170d020000000000000013202c3946535f6c798693887b6f6255483c2f221c1c1c1c1c1c1c1c1c1c1c1c1c1c1c1c1c1c1c1c1c1c1c1c1c1c1c1c1c1c2936434f5c697683908c7e7265584c3f3225190c0013202c3946535f6c7986888888888888888888888888888888888888888888888887868583817e7b7874706c67625c565049433b342c241c140b02000000000000000000000000000000000009121b242c343c434a51575d62676b6f7376797b7e80818283848485858484838281807e7c7976736f6b67625d57514a433c342c241b12090000000000000006111c262f383f4548484848484848484848453f382f261c1106000000000000000000000000000006111c262f383f454848484848484848484845403830261c11060000000000000000000000000000000000000000000000000000000000000000000005111e2a36414c565e6263636363605a5b5e606263656566666766666564636362605e5954504c48433e38322c261f19110a02000000000000000000000000000013202c3946535f6c798693a0aca6998c7f7f8a94968f89837f7c7a797878797c7f848a9199a1aaaba1988d83786d62574b4034281c11050000000007131f2c3844515d6975828e9aa6aa9e9185796d6054483c3024180c0000000000000000000000000013202c3946535f6c798693a0a0a0a0a0a0a0a0a0a0a0a0a094877a6d6154473a2e21140700121f2c3945525e6a747676767676767676767676767676767676767676767676767676767676767676767676767676767676767676767676767676767676767676767676767676767676767676767676767676767676767676767676767676746a5e5245392c1f1200121e2b3743505b666d6f6f6f6f6f6f6f6f6e685d5246392d2114070e1a2733404c58636c6f6f6f6f6f6f6f6f6e695f54483c2f23160a0b1824313d4a55616a6f6f6f6f6f6f6f6f6f6b62574b3f3326190d0000000000000000000000000000000000000000000000000000050a0f1316191c1e202121222221201f1d1b1916120e0a0500000003090e1215181a1b1c1c1c1c1b19171513100c06000000000000000013202c3946535f6c798693a0acaea2968d8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8174675a4d4134271a0e000a16212d3741494f535455555555555453514f4c48443f39332c241b120900000000000000000000000000000000000000000000040f1a242f3a444f5a646f79848f9aa4aaa29e9fa4aa9f958a80756a5f554a3f352a1f150a0000000000000000000000000000000000000013202c3946535f6c798693a0acb5aba29d9c9c9c9c9c9c9c9c9c9c9c9c9c9c9c9c9c9c9c9c9d9d9fa0a3a6a7a4a09c97918b847d756d645b51473d33291e13080000000000000013202c3946535f6c798693887b6f6255483c2f2215101010101010101010101010101010101010101010101010101010101c2936434f5c697683908c7e7265584c3f3225190c0013202c3946535f6c79869395959595959595959595959595959595959595959594949391908d8b8884817c78736d68615b544d463e362e261d140b0200000000000000000000000000000008121b242d363e464e555c62686e73777b808386888a8c8e8f90919192929191908f8e8c8a888683807b77736e68625c554e463e362d241b11080000000000000b17222d38424a5154555555555555555554514a42382d22170b00000000000000000000000000000b17222d38424a5154555555555555555554514a42382d22170b000000000000000000000000000000000000000000000000000000000000000000000714212d3a46525e686f6f6f6f6f6c635751535557585959595b61666a6d6f6f6f6d6a655f5851483f362d27211b150e070000000000000000000000000000000013202c3946535f6c798693a0aca6998c8078828c969a948f8b898785858586888b90959ba3aba9a19990867c71675c51453a2f23170c000000000003101c2835414d5966727e8a96a3ada195897c7064584c4034281c100400000000000000000000000013202c3946535f6c7986939393939393939393939393939393877a6d6154473a2e2114070013202c3946535f6c798383838383838383838383838383838383838383838383838383838383838383838383838383838383838383838383838383838383838383838383838383838383838383838383838383838383838383838383838383796c5f5346392c20130013202c3946525f6c787b7b7b7b7b7b7b7b7a6e6255483b2f2215080f1c2835424f5b68747b7b7b7b7b7b7b7b7b7064574b3e3124180b0c1926333f4c5965727b7b7b7b7b7b7b7b7b73675a4e4134281b0e000000000000000000000000000000000000000000000000040a10161a1f2326292b2c2d2e2e2e2e2d2c2a2825221e1a16110b05080f141a1e2225272829292928272624221f1c17120b0300000000000013202c3946535f6c798693a0acaca093867e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e74675a4d4134271a0e000f1b27333e49535b6061626262626261605e5b5854504a443d362d241b12080000000000000000000000000000000000000000010b16212b36414b56616b76818b96a1aba29891939ba5a69c91867c71665c51463c31261c110700000000000000000000000000000000000013202c3946535f6c798693a0acafa39991909090909090909090909090909090909090909090919294969a9ea2a8a8a39d968f877e766d63594f453a30251a0f0300000000000013202c3946535f6c798693887b6f6255483c2f2215090000000000000000000000000000000000000000000000000000101c2936434f5c697683908c7e7265584c3f3225190c0013202c3946535f6c798693a0a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a1a09f9e9c9a9794918d88847e79736c665f58504840382f261d140a010000000000000000000000000006101a242d374048505860676d74797e83888c8f929597999a9c9d9e9e9e9e9e9e9d9c9b999795928f8c88837e79736d665f5850483f362d231a100500000000000f1b27333f4a545c616161616161616161615c544a3f33271b0f03000000000000000000000000030f1b27333f4a545c616161616161616161615c544a3f33281b0f030000000000000000000000000000000000000000000000000000000000000000000915222f3b4855626e7a7c7c7c7c74675b4e47484a4e545b61666c7176797c7c7b7976716a635a51483e33291e120a03000000000000000000000000000000000013202c3946535f6c798693a0aca69a8d80737a848d969e9b9895939292929395989ba0a6aba59f978f877d746a5f554a3f34291e12070000000000000c1925313d4a56626e7a86929eaaa5998d8174685c5044382c20150900000000000000000000000013202c3946535f6c7986868686868686868686868686868686867a6d6154473a2e2114070013202c3946535f6c798690909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909086796c5f5346392c20130013202c3946535f6c7986888888888888887b6f6255483c2f2215090f1c2835424f5b687582888888888888887e7164574b3e3124180b0d192633404c59667380888888888888888174675b4e4134281b0e0000000000000000000000000000000000000000000000080f151c21262b2f323537393a3b3b3b3b3a383734312e2a26211c1610131a20252a2e313335363636353432312e2c28231c150c03000000000013202c3946535f6c798693a0acaca093867971717171717171717171717171717171717171717171717171717171717171717171717171716d63584c3f33261a0d00111e2a37434f5a656c6e6f6f6f6f6f6e6c6a6864605b564f483f372d241a0f040000000000000000000000000000000000000008121d28323d48525d68727d88929da8a69b908689949ea9a3988d83786d63584d43382d23180e03000000000000000000000000000000000013202c3946535f6c798693a0acaca093878383838383838383838383838383838383838383838485878a8d92979ca3aaa8a19991887f756b61574c41362b20140900000000000013202c3946535f6c798693887b6f6255483c2f2215090000000000000000000000000000000000000000000000000000101c2936434f5c697683908c7e7265584c3f3225190c0013202c3946535f6c798693a0acaeaea8a4a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a4a5a7a9a9a6a4a09d99948f8a847e777169625a524a41382f261c1309000000000000000000000000030e18222c363f49525a626a71787f858a8f94989b9ea1a4a5a7a7a6a5a4a4a4a4a5a5a6a7a6a4a19e9b98948f8a857e78716a625a51483f352c22170d0200000000121e2b37434f5b666d6e6e6e6e6e6e6e6e6d665b4f43372b1e120500000000000000000000000005121e2b37434f5b666d6e6e6e6e6e6e6e6e6d665b5044372b1f12050000000000000000000000000000000000000000000000000000000000000000000815222e3b4854616e7a87898983766a5e52494d53595f666c72787d828688898886827c756c635a4f453a2f23180d01000000000000000000000000000000000013202c3946535f6c798693a0aca79a8d8173727b848c93999ea2a09f9e9f9fa1a4a8a6a39f9a948d867d756b62584e43392e23180c010000000000000915212d3a46525e6a76828e9aa6a99d9185786c6155493d3125190e020000000000000000000000131f2c3946525f6b767979797979797979797979797979797979776c6053473a2d2114070013202c3946535f6c7986939c9c9c9c9c9c9c9c9c9c9c9c9c9c9c9c9c9c9c9c9c9c9c9c9c9c9c9c9c9c9c9c9c9c9c9c9c9c9c9c9c9c9c9c9c9c9c9c9c9c9c9c9c9c9c9c9c9c9c9c9c9c9c9c9c9c9c9c9c9c9c9c9c9c9c9c9c9c9c9c9c9c9386796c5f5346392c20130013202c3946535f6c7986939595959595887b6f6255483c2f2215090f1c2835424f5b6875828f95959595958b7e7164574b3e3124180b0d192633404c596673808c95959595958e8174675b4e4134281b0e000000000000000000000000000000000000000000020a121920272d32373b3f4244464748484847464543413e3a36322d28221b1d252b31363a3e404242424242413f3d3b38342e271e150b010000000013202c3946535f6c798693a0acaca09386796c65656565656565656565656565656565656565656565656565656565656565656565656565625b52473b2f23170b0013202c3946525f6b777b7b7c7c7c7b7a797774716c67615951493f362b21160b000000000000000000000000000000000000040f19242f39444f59646f79848f99a4aa9f948a7e828d98a2aa9f948a7f746a5f544a3f352a1f150a000000000000000000000000000000000013202c3946535f6c798693a0acaca0938679767676767676767676767676767676767676767677797b7e81868b9198a0a8aba39a91877d73685e53483c31261a0e03000000000013202c3946535f6c798693887b6f6255483c2f2215090000000000000000000000000000000000000000000000000000101c2936434f5c697683908c7e7265584c3f3225190c0013202c3946535f6c798693a0acb2a79d9796969696969696969696969696969697989a9c9fa2a6aaa9a5a09b958f89827b746c645c534a41382e251b110700000000000000000000000a151f2a343e48515b646c747c838a90969ba0a4a8a8a5a19f9d9b99989898979898999a9b9da0a3a6a8a4a09b96908a837c746c635a51473e33291e14090000000013202c3946525f6c777b7b7b7b7b7b7b7b776c5f5246392c2013060000000000000000000000000613202c3946525f6c777b7b7b7b7b7b7b7b786c5f5346392d2013060000000000000000000000000000000000000000000000000000000000000000000714202d3a46535f6c79859293867a6e635956595e646b71777d83898e92959695928d877e756c61564b4035291d1206000000000000000000000000000000000013202c3946535f6c798693a0aca79a8d817369727a81888e9396999c9d9e9e9e9d9c9a97938e89827b746b625950463c32271c11060000000000000005111d2936424e5a66727d8995a1ada195897d7165594d42362a1f13070000000000000000000000111e2a37434f5a646b6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6b655b5044382b1f12060013202c3946535f6c798693a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a09386796c5f5346392c20130013202c3946535f6c798693a0a2a2a295887b6f6255483c2f2215090f1c2835424f5b6875828f9ca2a2a2988b7e7164574b3e3124180b0d192633404c596673808c99a2a2a29b8e8174675b4e4134281b0e0000000000000000000000000000000000000000020b141c242b32383e43474b4e505254545555545352504d4a47423e39332d26272f363c42464a4d4e4f4f4f4e4d4c4a47443f3930271d12070000000013202c3946535f6c798693a0acaca09386796c5f58585858585858585858585858585858585858585858585858585858585858585858585856514940352a1f13070013202c3946535f6c79868889898988878684817d78726b635b51483d32271c110500000000000000000000000000000000000b16202b36404b56606b75808b96a0aba3988d83787b86919ba6a69b91867b71665b51463b31261c11060000000000000000000000000000000013202c3946535f6c798693a0acaca09386796c696969696969696969696969696969696969696a6c6e71757a80878e969fa8aca3998f857a6f64594e42372b1f1307000000000013202c3946535f6c798693887b6f6255483c2f2215090000000000000000000000000000000000000000000000000000101c2936434f5c697683908c7e7265584c3f3225190c0013202c3946535f6c798693a0acada1958c8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8c8d909296999ea2a8aca6a19a948d867e766e655c534a40372d23190f0400000000000000000006111c26313c46505a636d757e868e959ba1a7aba6a19c989592908e8d8c8b8b8a8b8b8c8d8f9193969a9ea2a8a7a19b958d867e756c63594f453b30251a0f0400000013202c3946535f6c798688888888888886796c5f5346392c2013060000000000000000000000000613202c3946535f6c798688888888888886796d6053463a2d20130700000000000000000000000000000000000000000000000000000000000000000005121f2b3844515d6a778390978b80746b6563656a70767c82898f949a9ea2a3a29e9890877d73685c51463a2e22160a000000000000000000000000000000000013202c3946535f6c798693a0aca79a8d817367686f767d82878a8d8f90919292918f8d8a87837d777169625950473e342a20150b0000000000000000010d1925313d4955616d7985919ca8a5998d82766a5e52473b3024180d02000000000000000000000e1a26323e48525a5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5b53493f33281c0f030013202c3946535f6c798693939393939393939393939393939393939393939393939393939393939393939393939393939393939393939393939393939393939393939393939393939393939393939393939393939393939393939393939386796c5f5346392c20130013202c3946535f6c798693a0acafa295887b6f6255483c2f2215090f1c2835424f5b6875828f9ca8afa4988b7e7164574b3e3124180b0d192633404c596673808c99a6afa89b8e8174675b4e4134281b0e00000000000000000000000000000000000000010b141d262e363d43494f53575a5d5f6061616161605e5c5a56534e4a443e3831313941484e5256595b5c5c5c5b5a585654504a42392f24180d0100000013202c3946535f6c798693a0acaca09386796c5f534b4b4b4b4b4b4b4b4b4b4b4b4b4b4b4b4b4b4b4b4b4b4b4b4b4b4b4b4b4b4b4b4b4b4b4a463f372e24190e020013202c3946535f6c798693969696959492908d89847d756d63594f44382d22160a0000000000000000000000000000000007121d27323d47525d67727d87929da7a79c91877c71747f8a959faaa2988d83786d62584d43382d23180d0300000000000000000000000000000013202c3946535f6c798693a0acaca09386796c5f5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5d5e5f6265696f757c848d96a0aaaba1978c81756a5f53473b2f24170b000000000013202c3946535f6c798693887b6f6255483c2f2215090000000000000000000000000000000000000000000000000000101c2936434f5c697683908c7e7265584c3f3225190c0013202c3946535f6c798693a0acaca093867d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7e7f818386898d92979ca2a8aca59f97908880776e655c52493f352b20160b0100000000000000000b17222d38434d58626c757f8890989fa6ada6a09a95908c89868482807f7e7e7d7e7e7f818284878a8e92979ca3a9a69f9890877e756b61574c42372c20150900000013202c3946535f6c798693959595959386796c5f5346392c2013060000000000000000000000000613202c3946535f6c798693959595959386796d6053463a2d20130700000000000000000000000000000000000000000000000000000000000000000003101c2936424f5b6874818d9991867d75716f71757b81878d949aa0a5a2a0a0a1a4a2998f84796e62564a3e32261a0e020000000000000000000000000000000013202c3946535f6c798693a0aca79a8d8173675e656b71767a7e8182848585858483817e7b77726c665f5850473e352c22180e040000000000000000000915212d3945515c6874808b97a3aa9e92867b6f63584c41352a1e1308000000000000000000000a16212c3740484f525353535353535353535353535353535353524f4941372d22170b000013202c3946535f6c798686868686868686868686868686868686868686868686868686868686868686868686868686868686868686868686868686868686868686868686868686868686868686868686868686868686868686868686868686796c5f5346392c20130013202c3946535f6c798693a0acafa295887b6f6255483c2f2215090f1c2835424f5b6875828f9ca8b1a4988b7e7164574b3e3124180b0d192633404c596673808c99a6b3a89b8e8174675b4e4134281b0e0000000000000000000000000000000000000009131d262f3840474e555a5f63676a6c6d6e6e6e6d6d6b6966635f5a554f49423b3a434b53595e63666869696968676563605c544b4035291d110500000013202c3946535f6c798693a0acaca09386796c5f53463e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3d3a342d251c1207000013202c3946535f6c7986919190909193969a99948f877f756b60554a3e32261a0e020000000000000000000000000000040e19242e39444e59646e79848e99a4aba0958a80756a6d78838e99a3a99f948a7f74695f544a3f342a1f140a00000000000000000000000000000013202c3946535f6c798693a0acaca09386796c5f534f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f50515355595e636a727b848e99a3aea89d92877b6f64584c4034281b0f030000000013202c3946535f6c798693887b6f6255483c2f2215090000000000000000000000000000000000000000000000000000101c2936434f5c697683908c7e7265584c3f3225190c0013202c3946535f6c798693a0acaca09386797070707070707070707070707070717274777a7d81868b91979ea5aca9a29a928981776e645b51473c32281d12070000000000000005111d28333e4a545f6a747e88919aa2aaaba39c958f8984807c79777573727171717171727475787a7d82868b91989fa7aaa29990877d73695e53483d31261a0e03000013202c3946535f6c798693a0a2a2a09386796c5f5346392c2013060000000000000000000000000613202c3946535f6c798693a0a2a2a09386796d6053463a2d201307000000000000000000000000000000000000000000000000000000000000000000000e1a2733404c5865717d8a96988f87817d7c7d81868c92989fa59f9a96939394979ca1968a7e73675b4f42362a1e11050000000000000000000000000000000013202c3946535f6c798693a0aca79a8d8173675a5a60656a6e71747677787878777674726e6b66615b544d463e352c231a10060000000000000000000005111c2834404c57636f7a86929da9a3978b8074685d51463b2f24190e0300000000000000000005101a252e373e4346464646464646464646464646464646464646433e372f261b11060000131f2c3946525f6b767979797979797979797979797979797979797979797979797979797979797979797979797979797979797979797979797979797979797979797979797979797979797979797979797979797979797979797979797979766b5f5246392c1f130013202c3946535f6c798693a0acaca295887b6f6255483c2f2215090f1c2835424f5b6875828f9ca8aca4988b7e7164574b3e3124180b0d192633404c596673808c99a6aca89b8e8174675b4e4134281b0e00000000000000000000000000000000000007111b252f38414a525960666b6f7376787a7b7b7b7a797775726f6b66615b544d45434c555d646a6f72747575757573726f6d665d5145392d20140700000013202c3946535f6c798693a0acaca09386796c5f534639323232323232323232323232323232323232323232323232323232323232323232312e29231b130a00000013202c3946535f6c79868584848485868a8e959d9991877d72665a4e42362a1e110500000000000000000000000000000b15202b35404b55606b75808b95a0aba4998e84796e6367717c87929ca7a69b91867b71665b51463b31261b1106000000000000000000000000000013202c3946535f6c798693a0acaca09386796c5f5346434343434343434343434343434343434446494d52596069727c87929da8afa3988c8074685c5044372b1f12060000000013202c3946535f6c798693887b6f6255483c2f2215090000000000000000000000000000000000000000000000000000101c2936434f5c697683908c7e7265584c3f3225190c0013202c3946535f6c798693a0acaca09386796c636363636363636363636363636466686a6d71757a80868c939aa2aaaca49b938980766d63594e44392f24190e030000000000000b16222e3944505b66717b86909aa3acaaa199918a837d7874706d6a68676565646464656667696b6e71757a80868d959ea7aba2998f857a7065594e42372b1f1307000013202c3946535f6c798693a0acaca09386796c5f5346392c2013060000000000000000000000000613202c3946535f6c798693a0acada09386796d6053463a2d201307000000000000000000000000000000000000000000000000000000000000000000000b1724303d4955616e7a86929d99928d8a898a8d92979ea4a09a948e898786888b91999b8f83776b5e52463a2d2114080000000000000000000000000000000013202c3946535f6c798693a0aca79a8d8173675a4f555a5e626567696a6b6b6b6b696865625e5a555049433b342c231a11080000000000000000000000000c18242f3b47525e6975818c97a3a89c9185796e63574c41352a1f14090000000000000000000009131c252c32373939393939393939393939393939393939393937332d251d140a000000111e2a37434f5a646b6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6b645a4f43372a1e110013202c3946535f6c798693a0a0a0a095887b6f6255483c2f2215090f1c2835424f5b6875828f9ca0a0a0988b7e7164574b3e3124180b0d192633404c596673808c99a0a0a09b8e8174675b4e4134281b0e0000000000000000000000000000000000030e18232d37414a535c636b71777b80838586888888878684827e7b77726c665f574f4b555e676f757b7e8182828281807e7c786e6155483b2f22150800000013202c3946535f6c798693a0acaca09386796c5f5346392c252525252525252525252525252525252525252525252525252525252525252524221d18110a0100000013202c3946525f6b777978777777787a7d838b949f998e83776b5e5246392d2014070000000000000000000000000007121c27323c47525c67727c87929ca7a89d92877c72675c606a75808b96a0aba2988d82776d62584d42382d22180d020000000000000000000000000013202c3946535f6c798693a0acaca09386796c5f534639363636363636363636363636363637383a3d41474e57606a75818c98a3afa89c9184786c6053473a2e2215090000000013202c3946535f6c798693887b6f6255483c2f2215090000000000000000000000000000000000000000000000000000101c2936434f5c697683908c7e7265584c3f3225190c0013202c3946535f6c798693a0acaca09386796c5f56565656565656565656565758595b5e6165696f747a81889098a0a9ada49b92897e756a60564b40352a1f14090000000000030f1b27333e4a56616c77828d98a2acaba2988f877f78726d6864605e5c5a595857575758595a5c5f6265696f757b838c959ea8aba1978c81766a5f53473b2f23170b000013202c3946535f6c798693a0acaca09386796c5f5346392c2013060000000000000000000000000613202c3946535f6c798693a0acada09386796d6053463a2d201307000000000000000000000000000000000000000000000000000000000000000000000814212d3945515d6975818c97a19d99979697999ea3a19b958f88827d7a797b8087909a93877a6e6255493d3024170b0000000000000000000000000000000013202c3946535f6c798693a0aca79a8d8173675a4d494e5255585b5c5d5e5e5e5e5d5b5956524e4a443e38312a221a11080000000000000000000000000007131f2a36424d59646f7b86929da8a2968b7f74685d52473c31261b1005000000000000000000010a131a21262a2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2a27221b130b020000000e1a26323e48525a5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5a52483e32261a0e0013202c3946535f6c7986939393939393887b6f6255483c2f2215090f1c2835424f5b6875828f93939393938b7e7164574b3e3124180b0d192633404c596673808c93939393938e8174675b4e4134281b0e000000000000000000000000000000000009141f2a353f49535c656e757c82878c8f91939495949493918e8b87837d7770696159525c67707981878b8e8f8f8f8e8d8b887b6f6255483c2f22150900000013202c3946535f6c798693a0acaca09386796c5f5346392c20181818181818181818181818181818181818181818181818181818181818181715120d070000000000111e2a37434f5a656c6c6b6a6a6a6b6d7278828d999f93877a6e6155483b2f221509000000000000000000000000030e19232e39434e59636e79838e99a3aba1968b81766b605559646e79848f99a4a99f94897e74695f54493f34291f14090000000000000000000000000013202c3946535f6c798693a0acaca09386796c5f5346392c292929292929292929292929292a2b2d31363c454e59646f7b87939facada194887b6f63564a3d3124170b0000000013202c3946535f6c798693887b6f6255483c2f2215090000000000000000000000000000000000000000000000000000101c2936434f5c697683908c7e7265584c3f3225190c0013202c3946535f6c798693a0acaca09386796c5f534a4a4a4a4a4a4a4a4a4a4a4b4c4f5155595e636970767e868e97a0a9ada49a91877c72675d52473c31251a0f030000000007131f2b37434f5b67727d89949fa9aea49990867d756d67615c5854514f4d4c4b4b4b4b4b4c4e505255595e636a7179838c96a1aca89e92877b7064584c4033271b0f020013202c3946535f6c798693a0acaca09386796c5f5346392c2013060000000000000000000000000613202c3946535f6c798693a0acada09386796d6053463a2d2013070000000000000000000000000000000000000000000000000000000000000000000005111d2935414d58646f7a858f99a2a6a3a3a3a6a29c96908a837d77716d6d6f757e8893968a7d7165584c3f3326190d0000000000000000000000000000000013202c3946535f6c798693a0aca79a8d8173675a4d404246494c4e505151515151504e4c4946423e39332d261f1810080000000000000000000000000000020e1925313c47535e6a75808c97a2a79c90857a6e63584d42372c21170c01000000000000000000010910161a1e1f2020202020202020202020202020202020201e1b16100901000000000a16212c3740484f525353535353535353535353535353535353535353535353535353535353535353535353535353535353535353535353535353535353535353535353535353535353535353535353535353535353535353535353535353524f4840372c21160a0013202c3946535f6c7986868686868686867b6f6255483c2f2215090f1c2835424f5b687582868686868686867e7164574b3e3124180b0d192633404c59667380868686868686868174675b4e4134281b0e00000000000000000000000000000000040f1a26313c46515b656e7780878e93989b9ea0a1a2a1a19f9d9b97938e89827b736b6259636e78838b92979a9c9c9c9b9995887b6f6255483c2f22150900000013202c3946535f6c798693a0acaca09386796c5f5346392c20130b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0906010000000000000f1b27333e49535b60605e5d5d5d5f6167717d8a96a296897c6f6356493d3023160a0000000000000000000000000a15202a35404a55606a75808a95a0aaa59a8f84796f64594f525d68727d88939da8a69b90867b70665b50463b30261b100600000000000000000000000013202c3946535f6c798693a0acaca09386796c5f5346392c201c1c1c1c1c1c1c1c1c1c1c1c1d1e21252b333d47535f6b7783909ca8b0a4978b7e7265584c3f3326190d0000000013202c3946535f6c798693887b6f6255483c2f2215090000000000000000000000000000000000000000000000000000101c2936434f5c697683908c7e7265584c3f3225190c0013202c3946535f6c798693a0acaca09386796c5f53463d3d3d3d3d3d3d3d3d3d3e404245494d52585e656c747c858e97a1abaca3988e84796e63584d42372b201409000000000b1723303c4854606c77838f9aa5b0a79d92887e746b635c56504b484542413f3e3e3e3e3f40414346494d52585f67707a85909ba6afa3988c8074685c5043372b1e12050013202c3946535f6c798693a0acaca09386796c5f5346392c2013060000000000000000000000000613202c3946535f6c798693a0acada09386796d6053463a2d20130700000000000000000000000000000000000000000000000000000000000000000000010d1925303c47535e69737d8790979c9fa09e9b96918b857e78726c666160636c76818d998d8074675a4e4135281c0f0200000000000000000000000000000013202c3946535f6c798693a0aca79a8d8173675a4d40363a3d3f414344454545444342403d3a36322d28221c150e06000000000000000000000000000000000914202b36424d59646f7a85909ba6a1968b8075695e53493e33281e13090000000000000000000000050a0e1113131313131313131313131313131313131313110f0a0500000000000005101a252e373e4346464646464646464646464646464646464646464646464646464646464646464646464646464646464646464646464646464646464646464646464646464646464646464646464646464646464646464646464646464646433e372e251a100500131f2c3946525f6b767979797979797979786d6155483b2f2215080f1b2835424e5b67737979797979797979797063574a3e3124170b0c1926333f4c58657179797979797979797972675a4d4134271b0e000000000000000000000000000000000914202b37424d58636d77818991999fa4a8a5a19d9b9a9a9a9b9c9f9f9a948d857d746b626974808a949da3a7a6a09b989795887b6f6255483c2f22150900000013202c3946535f6c798693a0acaca09386796c5f5346392c2013060000000000000000000000000000000000000000000000000000000000000000000000000000000a16212d3741494f53575a5a5a5a5b5d636f7c8996a2968a7d7063564a3d3023170a000000000000000000000007111c27313c47515c67717c87919ca7a89e93887d73685d52484b56616b76818c97a1aca2978d82776d62574d42372d22170d02000000000000000000000013202c3946535f6c798693a0acaca09386796c5f5346392c2013101010101010101010101010121519212b36424f5b6774818d9aa6b3a6998d8073675a4d4134271b0e0100000013202c3946535f6c798693887b6f6255483c2f2215090000000000000000000000000000000000000000000000000000101c2936434f5c697683908c7e7265584c3f3225190c0013202c3946535f6c798693a0acaca09386796c5f534639303030303030303030323336393d41474d535a626a737c858f99a3adaaa0958b8075695e53483c3125190e020000000e1b27333f4c5864707c8894a0abada1968b80766c6259514a443f3b383634333231313132333437393d41474d555e68737e8a96a1ada89c9084786b5f53463a2d2114080013202c3946535f6c798693a0acaca09386796c5f5346392c2013060000000000000000000000000613202c3946535f6c798693a0acada09386796d6053463a2d20130700000000000000000000000000000000000000000000000000000000000000000000000814202b36424c57626b757e868c909293918f8a85807a736d67615b55535a65717d89938f8276695c5043372a1d110400000000000000000000000000000013202c3946535f6c798693a0aca79a8d8173675a4d40342d303335363738383838373533312e2a26211c17110a030000000000000000000000000000000000030e1a25313c47525e69747f8a959fa79c91867b70655a4f453a2f251a1006000000000000000000000000000000000000000000000000000000000000000000000000000000000000000009131c252c32373939393939393939393939393939393939393939393939393939393939393939393939393939393939393939393939393939393939393939393939393939393939393939393939393939393939393939393939393939393937322c251c13090000111e2a37434f5a646b6c6c6c6c6c6c6c6c6c665c5145392d2014070d1a26333f4b5761696c6c6c6c6c6c6c6c6c675e53473b2f2216090b1724303d49545f686c6c6c6c6c6c6c6c6c6961564a3e3226190d000000000000000000000000000000010d1925313d48535f6a747f89939ba3aaa7a09a95918e8d8d8d8e9092969a9e978f877d746a6d7985919ca6afa59c958f8c8a8b887b6f6255483c2f22150900000013202c3946535f6c798693a0acaca09386796c5f5346392c20130606060606060606060606060606060606060606060606060606050300000000000000000000000005101b252f37434f59626767676767696d75808b98a195887c6f6256493c3023160900000000000000000000030e18232e38434e58636e78838e98a3aca2978c81766c61564c41444f5a656f7a85909aa5a99e94897e74695e54493e34291f1409000000000000000000000013202c3946535f6c798693a0acaca09386796c5f5346392c201306000000000000000000000305080f1a26333f4c5965727e8b98a5b2a89b8e8275685b4e4235281c0f0200000013202c3946535f6c798693887b6f6255483c2f2215090000000000000000000000000000000000000000000000000000101c2936434f5c697683908c7e7265584c3f3225190c0013202c3946535f6c798693a0acaca09386796c5f5346392c23232323232323242527292d31363b42495058616a737d87919ba6b1a79c91867b7064594d42362a1e1307000000111e2a36434f5c6874818c989d9fa29c9085796e645a50473f39342f2c292726252424242526282a2d31363c434c57626d7985919eaaaca094877b6e6255493c2f23160a0013202c3946535f6c798693a0acaca09386796c5f5346392c2013060000000000000000000000000613202c3946535f6c798693a0acada09386796d6053463a2d2013070000000000000000000000000000000000000000000000000000000000000000000000030e1a25303b45505a636c747b8084868685827e79746e68625c564f494854616d7986868684776b5e5145382b1f120500000000000000000000000000000013202c3946535f6c798693a0aca79a8d8173675a4d4034272426282a2b2b2b2b2b2a282724211e1a16110b0500000000000000000000000000000000000000000914202b36414c57626d78838e99a3a2978c82766c61564c41372c22180e0300000000000000000000000000000000000000000000000000000000000000000000000000000000000000010a131a21262a2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2a26211a130a0100000e1a26323e48525a5f5f5f5f5f5f5f5f5f5f5b544a4034291d11040a17232f3a454f585e5f5f5f5f5f5f5f5f5f5c554c42372b1f13070814202c38434d565d5f5f5f5f5f5f5f5f5f5d574f44392e22160a00000000000000000000000000000005111d2a36414d5965707b86919ba5ada69d958f8985828180808183868a8e93999990867c72717d8a96a2ada99e938a837f7d7e807b6f6255483c2f22150900000013202c3946535f6c798693a0acaca09386796c5f5346392c2013131313131313131313131313131313131313131313131313131312100c0701000000000000000000000915212e3b4754606b737473737476797f87919c9c9185796d6054473b2e221508000000000000000000000a151f2a353f4a555f6a75808a959faaa59b90857a70655a4f453a3d48535e68737e89949ea9a59b90857b70655b50453b30251b10060000000000000000000013202c3946535f6c798693a0acaca09386796c5f5346392c201306000000000000000000000000000b1825313e4b5764717e8b98a4b1a89c8f8275685b4f4235291c0f0200000013202c3946535f6c798693887b6f6255483c2f2215090000000000000000000000000000000000000000000000000000101c2936434f5c697683908c7e7265584c3f3225190c0013202c3946535f6c798693a0acaca09386796c5f5346392c2017171717171717181a1d20252a30373e464f58616b757f8a949faaaea3978c81756a5e52473b2f23170b000000131f2c3945525f6b77848b8e909395978b8074685d52483e352e2823201d1b1918181818181a1b1e21252a313a45515d6975828e9ba7afa3968a7d7064574a3e3124180b0013202c3946535f6c798693a0acaca09386796c5f5346392c2013060000000000000000000000000613202c3946535f6c798693a0acada09386796d6053463a2d20130700000000000000000000000000000000000000000000000000000000000000000000000009141f29343e48515a62696f747779797876726e68635d57514a443e45525e6a7679797979766a5e5145382b1f120500000000000000000000000000000013202c3946535f6c798693a0aca79a8d8173675a4d4034271a1a1b1d1e1e1e1e1e1d1c1a1815120e0a0500000000000000000000000000000000000000000000030e1925303b46515c67717c87919ca69e93887d73685d53483e342a1f150b0200000000000000000000000000000000000000000000000000000000000000000000000000000000000000010910161a1e1f20202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020201f1e1a161009010000000a16212c3740484f52535353535353535352504a42382e23180c0006121e29333d464d51535353535353535353504b433a30251a0e0304101b27313b444c51535353535353535353514d453d33281d11060000000000000000000000000000000915212d3a46525e6a75818d98a2ada89e948b847d787573737375777a7d82888e95988e847a74818d99a6afa3988c827873717173746b6054473b2e21150800000013202c3946535f6c798693a0acaca09386796c5f5346392c202020202020202020202020202020202020202020202020202020201f1c18120b040000000000000000000915222f3c4855626f7b8181818182858a91999d948b8074695d5144382c1f130600000000000000000006111c26313c46515c66717c86919ca6a99f94897e74695e53493e3337414c57626c77828d98a2aca2978c82776c62574c42372d22170d0200000000000000000013202c3946535f6c798693a0acaca09386796c5f5346392c201306000000000000000000000001040b1825313e4b5764717e8b98a4b1a89c8f8275685b4f4235291c0f0200000013202c3946535f6c798693887b6f6255483c2f2215090000000000000000000000000000000000000000000000000000101c2936434f5c697683908c7e7265584c3f3225190c0013202c3946535f6c798693a0acaca09386796c5f5346392c20130a0a0a0a0a0a0c0e1114191f252c343d464f59636d78838e99a4b0a99d92867a6f63574b3f34271b0f03000013202c3946525f6c777c7e818486898b877b6f63574c41362c231d1713100e0d0c0b0b0b0c0d0f1115191f2934414d5a6673808c99a6b1a5988b7e7265584c3f3226190c0013202c3946535f6c798693a0acaca09386796c5f5346392c2013060000000000000000000000000613202c3946535f6c798693a0acada09386796d6053463a2d201307000000000000000000000000000000000000000000000000000000000000000000000000020d17222c363f4850585e64686a6c6c6b6966625d57524c463f3936424e59646b6c6c6c6c6b64594e4236291d100400000000000000000000000000000013202c3946535f6c798693a0aca79a8d8173675a4d4034271a0d0f101112121211110f0d0b0805020000000000000000000000000000000000000000000000000008131e29343f4a55606a75808a959fa59a8f847a6f655a50463b31271d130a000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000050a0e1113131313131313131313131313131313131313131313131313131313131313131313131313131313131313131313131313131313131313131313131313131313131313131313131313131313131313131313131313131313110e0a05000000000005101a252e373e4346464646464646464646433f3830261c120700010c17212b343c414546464646464646464644403931281e140900000a152029323a404446464646464646464645413b342b21160c000000000000000000000000000000000c1824313d4956626e7a86929ea9aca1968c8279726c69676667686a6d71767c838a92968c8177838f9ca9ac9f93877b706764656767625a4f43382b1f130600000013202c3946535f6c798693a0acaca09386796c5f5346392c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2b28231d160d0400000000000000000814212e3a47535f6b77838d8d8e8f92969a96928b82796e63584c4034281c10040000000000000000030d18232d38434d58636d78838d98a3ada2988d82776d62574c42372c303b45505b66707b86919ba6a99e93897e73695e53493e34291e140900000000000000000013202c3946535f6c798693a0acaca09386796c5f5346392c20130b0b0b0b0b0b0b0b0b0b0c0c0e10141b2733404c5965727e8b98a5b2a89b8e8275685b4f4235281c0f0200000013202c3946535f6c798693887b6f6255483c2f2215090000000000000000000000000000000000000000000000000000101c2936434f5c697683908c7e7265584c3f3225190c0013202c3946535f6c798693a0acaca09386796c5f5346392c2013060000000000000104080e141b222b343d47515c66717c88939eaaaea3978b8074685c5044382c1f13070000111e2b37434f5b656d707275777a7c7e81776b5f53473b2f241a110b070401000000000000000205080e1926323f4c5865727e8c98a5b2a6998c807366594c403326190d0013202c3946535f6c798693a0acaca09386796c5f5346392c2013060000000000000000000000000613202c3946535f6c798693a0acada09386796d6053463a2d2013070000000000000000000000000000000000000000000000000000000000000000000000000006101a242d363e464d53585b5e5f5f5f5d5a56514c46413b342e313d48525a5f5f5f5f5f5f5a52483d31261a0e0100000000000000000000000000000013202c3946535f6c798693a0aca79a8d8173675a4d4034271a0d010000000000000000000000000000000000000000000000000000000000000000000000000000020d18232e39434e59636e78838d98a2a1968b81766c62574d43392f251c1208000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000009131c252c32373939393939393939393937332d261e140b000000051019222a30353839393939393939393938342f281f160c020000030e1720292f35383939393939393939393835302922190f05000000000000000000000000000000000e1b2734404d5965727e8a97a3aea79b90857a7067615c5a595a5b5e61666b717880889193887d84919eaaa99c9083776b5f57585a5b5750483d32271b0f0300000013202c3946535f6c798693a0acaca09386796c5f534639393939393939393939393939393939393939393939393939393939393938342f281f160c020000000000000006121e2b37434f5b67737e8b979a94908f8d8a86807970675d52473b3024180c0000000000000000000a141f2a343f4a545f6a747f8a949faaa69c91867b71665b50463b302529343e49545f69747f8a959faaa59b90857a70655b50453b30251b1005000000000000000013202c3946535f6c798693a0acaca09386796c5f5346392c20181818181818181818181818191a1d20252d38434f5b6874818d9aa6b3a69a8d8174675a4e4134271b0e0100000013202c3946535f6c798693887b6f6255483c2f2215090000000000000000000000000000000000000000000000000000101c2936434f5c697683908c7e7265584c3f3225190c0013202c3946535f6c798693a0acaca09386796c5f5346392c20130600000000000000000002091019222b353f4a55606b76828d99a5b1a89c9084786c6054483c2f23170b00000f1b27333e49535b616366686b6d70727571675b4f42362a1e130800000000000000000306090c1014181e26333f4c5965727e8c98a5b2a6998c807366594c403326190d0013202c3946535f6c798693a0acaca09386796c5f5346392c2013060000000000000000000000000613202c3946535f6c798693a0acada09386796d6053463a2d201307000000000000000000000000000000000000000000000000000000000000000000000000000008121b242c343b42474c4f51535352504e4a46403b352f29232b3640484e5253535353524e4840362b2015090000000000000000000000000000000013202c3946535f6c798693a0aca79a8d8173675a4d4034271a0d0100000000000000000000000000000000000000000000000000000000000000000000000000000006111c27323d47525c67717b86909aa49d93887e74695f554b41372e241a110700000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001030506070808080807060402000000000000000000000000000000010203030302010000000000000000000000000000000000000000000000000000000000010a131a21262a2c2c2c2c2c2c2c2c2c2c2b27221c140c02000000000710181f25292c2c2c2c2c2c2c2c2c2c2b28231d160d0400000000050e171e24292b2c2c2c2c2c2c2c2c2c2c29251f1810070000000000000000000000000000000000101d2936424f5b6875818e9aa6afa3978b7f73685e56504d4d4d4f51555a60666e767f88928f8486929faba79a8e8174685b4f4b4e4e4b463f362c21160a0000000013202c3946535f6c798693a0acaca09386796c5f534646464646464646464646464646464646464646464646464646464646464644403931281e140900000000000000020e1a26323e4a56626e7a8692988c8382817e7a756e675e554b40352a1f1308000000000000000006111b26313b46515b66717b86919ba6aa9f958a7f746a5f54493f34291f222d38424d58636d78838e99a3aca1978c82776c61574c42372c22170c020000000000000013202c3946535f6c798693a0acaca09386796c5f5346392c252525252525252525252525252627292c31373f4954606b7784909ca9b1a4988b7e7265594c3f33261a0d0000000013202c3946535f6c798693887b6f6255483c2f2215090000000000000000000000000000000000000000000000000000101c2936434f5c697683908c7e7265584c3f3225190c0013202c3946535f6c798693a0acaca09386796c5f5346392c2013060000000000000000000000071019232e38434f5a65717d8894a0acaca194887c7064584b3f33261a0e01000b16222d38414a505457595c5e61636668665f564a3f33271a0e020000000104070a0c0f1215181c2024293038424e5b6774808d99a6b2a5998c7f7266594c3f3326190d0013202c3946535f6c798693a0acaca09386796c5f5346392c2013060000000000000000000000000613202c3946535f6c798693a0acada09386796d6053463a2d20130700000000000000000000000000000000000000000000000000000000000000000000000000000009121a222a30363b3f424546464544413e3a352f2a241e1a242e363d43454646464645433d362e241a0f040000000000000000000000000000000013202c3946535f6c798693a0aca79a8d8173675a4d4034271a0d01000000000000000000000000000000000000000000000000000000000000000000000000000000000b16202b36404b555f6a747e88929ca49a90857b71675d534940362c23180e02000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000003070a0d0f111314151515141412110f0c090602000000000000000206090c0d0f0f0f0f0f0e0d0b09060300000000000000000000000000000000000000000000000000010910161a1e1f2020202020202020201e1b17110a02000000000000060e14191d1f2020202020202020201f1c18120b04000000000000050c13181c1f2020202020202020201f1d19140d06000000000000000000000000000000000000111e2b3744515d6a7783909da9aca093877a6e62574c444140404245494e555c646d76808a948f8f97a2aea6998c807366594d4041413f3b342d241a0f050000000013202c3946535f6c798693a0acaca09386796c5f5353535353535353535353535353535353535353535353535353535353535353504b433a30251a0e03000000000000000a16222e3a46525e6a76828e998d827674726e69645d554c43392f24190e0200000000000000020d18222d38424d58626d78828d98a2ada3998e83786e63584d43382d22181b26313c46515c67717c87929ca7a99e93897e73695e53493e33291e13090000000000000013202c3946535f6c798693a0acaca09386796c5f5346393232323232323232323232323232323436383c4249515b66717c8894a0acada195897c7063574a3e3124180b0000000013202c3946535f6c798693887b6f6255483c2f2215090000000000000000000000000000000000000000000000000000101c2936434f5c697683908c7e7265584c3f3225190c0013202c3946535f6c798693a0acaca09386796c5f5346392c20130600000000000000000000000007111c27323d4954606c7884909ca8b1a5988c8074675b4f42362a1d11040005111b262f383f44484a4d4f525457595b5a554d44392e22170a0205080b0d101316191c1f2225282c30353b414a545f6a76838f9ca8b1a4978b7e7165584b3f3225190c0013202c3946535f6c798693a0acaca09386796c5f5346392c2013060000000000000000000000000613202c3946535f6c798693a0acada09386796d6053463a2d201307000000000000000000000000000000000000000000000000000000000000000000000000000000000810181f252b2f3336383939393735322e29241e1913121b242c323639393939393936322c241b1208000000000000000000000000000000000013202c3946535f6c798693a0aca79a8d8173675a4d4034271a0d0100000000000000000000000000000000000000000000000000000000000000000000000000000000040f19242e39434d58626c76808a949da1978d83796f655b52483e352a1f1308000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000050a0f1316191c1e202121222221201f1d1b1916120e0a0500000003090e1215181a1b1c1c1c1c1b19171513100c0600000000000000000000000000000000000000000000000000050a0e1113131313131313131313120f0b0600000000000000000003080d101213131313131313131312100c0701000000000000000001070c101213131313131313131312100d080200000000000000000000000000000000000000121f2c3945525f6b7885929eabaa9e9184786b5f52463a34333436393d434a525b646d78828d989ba0a9b2a6998c7f7265594c3f3435332f2a231b1208000000000013202c3946535f6c798693a0acaca09386796c5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5c554c42372b1f13070000000000000006121e2a36424e5a66727e8a9692867a6e65625e58524b433a31271d1208000000000000000009141f29343f49545f69747f89949fa9a79c92877c71675c51463c31261c11141f2a353f4a55606a75808b96a0aba59a90857a70655a50453a30251a100500000000000013202c3946535f6c798693a0acaca09386796c5f53463e3e3e3e3e3e3e3e3e3e3e3e3e3e3f3f404245484d535b636d77828d99a4b0a99d9185796d6054473b2f2216090000000013202c3946535f6c798693887b6f6255483c2f2215090000000000000000000000000000000000000000000000000000101c2936434f5c697683908c7e7265584c3f3225190c0013202c3946535f6c798693a0acaca09386796c5f5346392c201306000000000000000000000000000b16212c3844505b6774808c98a4b1a89c9083776a5e5245392c20130700000a141d262d34383b3e404345484a4d4f4e4a443b32281d110b0e1114171a1d1f2225282b2e3134383c41464c535c66707b87939fabaea295897c7063564a3d3124170b0013202c3946535f6c798693a0acaca09386796c5f5346392c2013060000000000000000000000000613202c3946535f6c798693a0acada09386796d6053463a2d2013070000000000000000000000000000000000000000000000000000000000000000000000000000000000060d141a1f2327292b2c2c2c2b2825221d18130d0809121a21262a2c2c2c2c2c2c2a26211a120900000000000000000000000000000000000013202c3946535f6c798693a0a0a09a8d8173675a4d4034271a0d01000000000000000000000000000000000000000000000000000000000000000000000000000000000008121d27313c46505a646e78828b959f9f958b81776d645a50463b3024180c00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000040a10161a1f2326292b2c2d2e2e2e2e2d2c2a2825221e1a16110b05080f141a1e2225272829292928272624221f1c17120b030000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000013202c3946535f6c7986929facaa9d9083766a5d5044372a2627292d32394049525c66707b86929da9b2b2a6998c7f7265594c3f322826231e18110900000000000013202c3946535f6c798693a0acaca09386796c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c675e53473b2f22160900000000000000010d1925313d4956626d798692938b7f73675b524d47403931281f150b010000000000000006101b26303b46505b66707b86909ba6aba0968b80756b60554a40352a1f150a0e18232e39434e59646e79848f99a4aca1978c81776c61574c41372c21170c01000000000013202c3946535f6c798693a0acaca09386796c5f534b4b4b4b4b4b4b4b4b4b4b4b4b4b4b4b4c4d4f5154595e656d757f89949faaafa4998d8175695d5144382c1f13070000000013202c3946535f6c798693887b6f6255483c2f2215090000000000000000000000000000000000000000000000000000101c2936434f5c697683908c7e7265584c3f3225190c0013202c3946535f6c798693a0acaca09386796c5f5346392c2013060000000000000000000000000004101c27333f4b5763707c8895a1adac9f93867a6d6154483b2f2216090000020b141c23282c2f313436393b3e4042413e393229201614171a1d202326292c2f3235383a3d4144484c51575e656e77828d98a3afab9f92867a6d6154483b2f2216090013202c3946535f6c798693a0acaca09386796c5f5346392c2013060000000000000000000000000613202c3946535f6c798693a0acada09386796d6053463a2d20130700000000000000000000000000000000000000000000000000000000000000000000000000000000000002090e13171a1d1f20201f1e1c1916110d07020000080f151a1e1f202020201f1e1a150f080000000000000000000000000000000000000013202c3946535f6c798693939393938d8173675a4d4034271a0d010000000000000000000000000000000000000000000000000000000000000000000000000000000000000b15202a343e48525c667079838d939393938980766c62584c4034281b0f000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000080f151c21262b2f323537393a3b3b3b3b3a383734312e2a26211c1610131a20252a2e313335363636353432312e2c28231c150c0300000000000000000004070808080808080808080704010000000000000000000000000000000000000000000000000306080808080808080808080808070400000000000000000000000000000407080808080808080808060300000000000000000000000000000000000000000000000013202c3946535f6c798693a0acaa9d908376695d5043362a1d1a1d21272e37404a545f6a75818c98a3afb2a6998c7f7265594c3f32261a17130d060000000000000013202c3946535f6c798693a0acaca0938679797979797979797979797979797979797979797979797979797979797979797979797063574a3e3124170b00000000000000000915212d3945515d69758186868684786c5f53463c362f271f160d0300000000000000020d17222d37424d57626d77828d97a2ada4998f84796e64594e43392e23190e0307111c27323c47525d68727d88939da8a89e93887e73685e53483e33281e1309000000000013202c3946535f6c798693a0acaca09386796c5f5858585858585858585858585858585858595a5b5e61656a70777f88919ba5b0a99e93887c7065594d4034281c10030000000013202c3946535f6c798693887b6f6255483c2f2215090000000000000000000000000000000000000000000000000000101c2936434f5c697683908c7e7265584c3f3225190c0013202c3946535f6c798693a0acaca09386796c5f5346392c20130600000000000000000000000000000b17232f3b4754606c7985929eabaea295897c7063574a3e3124180b000000020a11171c202225272a2c2f31343535322d2720181c2023272a2d303335383b3e4144474a4d5054585d62686f77808a949ea9b2a69a8e83766a5e5245392c2013070013202c3946535f6c798693a0acaca09386796c5f5346392c2013060303030303030303030303030613202c3946535f6c798693a0acada09386796d6053463a2d201307000000000000000000000000000000000000000000000000000000000000000000000000000000000000000002070b0e1012131313110f0d0906010000000000040a0e11131313131313110e0a04000000000000000000000000000000000000000013202c3946535f6c79868686868686868173675a4d4034271a0d01000000000000000000000000000000000000000000000000000000000000000000000000000000000000030e18222c36404a545e67717a848686868686867e74695c4f4336291d1000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000020a121920272d32373b3f4244464748484847464543413e3a36322d28221b1d252b31363a3e404242424242413f3d3b38342e271e150b01000000000000060c101315151515151515151513110c07010000000000000000000000000000000000000000040a0f1214151515151515151515151513100c0700000000000000000000060c1013151515151515151515130f0b050000000000000000000000000000000000000000000013202c3946535f6c7986929facaa9d9084776a5d5144382b1f1a18161c252e38424d58646f7b87939fabb2a6998c7f7265594c3f3226190c0702000000000000000013202c3946535f6c798693a0acada09489868686868686868686868686868686868686868686868686868686868686868686867e7164574b3e3124180b000000000000000005111d2935414d5965717979797979766b5f5346392d241d150d04000000000000000009141e29343e49545e69747e89949ea9a89d93887d72685d52473d32271c120700000b15202b36404b56616b76818c97a1aca59a8f857a6f655a4f453a2f251a10050000000013202c3946535f6c798693a0acaca09386796c6565656565656565656565656565656565656566686a6d71757b8189919aa3adaba1978d82766b6054483c3024180c000000000013202c3946535f6c798693887b6f6255483c2f2215090000000000000000000000000000000000000000000000000000101c2936434f5c697683908c7e7265584c3f3225190c0013202c3946535f6c798693a0acaca09386796c5f5346392c201306000000000000000000000000000007131f2b3844515d6976838f9ca8b1a4988b7e7265594c3f33261a0d0000000000060c101316181b1d20222527282826221c2125282c303336393c3f4245484a4d505356595c6064696e737a8189929ba5b0aba0958a7e72665a4e4236291d11040013202c3946535f6c798693a0acaca09386796c5f5346392c2013101010101010101010101010101013202c3946535f6c798693a0acada09386796d6053463a2d2013070000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000131f2c3946525f6b7679797979797979797266594d4033271a0d000000000000000000000000000000000000000000000000000000000000000000000000000000000000000006101a242e38424c555f6872797979797979797974685c4f4336291d10000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000020b141c242b32383e43474b4e505254545555545352504d4a47423e39332d26272f363c42464a4d4e4f4f4f4e4d4c4a47443f3930271d120700000000020a11181c20212222222222222222201d18120b03000000000000000000000000000000000000070f151b1f212222222222222222222221201c18120a02000000000000020a11181c202122222222222222211f1c161009010000000000000000000000000000000000000000121f2c3845525e6b7884919eaaab9e9285796c6053473b312b272423222126313c47535f6b77838f9ca8b2a6998c7f7265594c3f3226190c0000000000000000000013202c3946535f6c798693a0acb0a59b949393939393939393939393939393939393939393939393939393939393939393938b7e7164574b3e3124180b0000000000000000010d1925313d49545f686c6c6c6c6c6b645a4f43372b1e120b03000000000000000005101b25303b45505b65707b85909ba5aca1968c81766b61564b40362b20160b000000040f19242f3a444f5a656f7a85909aa5aca1968c81766c61564c41372c21170c0100000013202c3946535f6c798693a0acaca09386797171717171717171717171717171717171717272737476797d81868c939ba3acaca39990857b70655a4e43372c201408000000000013202c3946535f6c798693887b6f6255483c2f2215090000000000000000000000000000000000000000000000000000101c2936434f5c697683908c7e7265584c3f3225190c0013202c3946535f6c798693a0acaca09386796c5f5346392c201306000000000000000000000000000003101c2835414e5a6774818d99a6b3a69a8d8174675a4e4135281b0f000000000000000407090c0e111316181a1c1b1f24282d3135383c3f4246494c4e5154575a5d606366696c70757a7f858c939ba4adaea49a8f84786d61564a3e32261a0d010013202c3946535f6c798693a0acaca09386796c5f5346392c201c1c1c1c1c1c1c1c1c1c1c1c1c1c1c1c202c3946535f6c798693a0acada09386796d6053463a2d2013070000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000002040608090a0b0b0c0c0c0b0b0a0807050301000000000000000000000000000000000000000000000000000000000000111e2a37434f5a646b6c6c6c6c6c6c6c6c6960554a3d3125180c00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000008121c26303a434d5760686c6c6c6c6c6c6c6c6a62584c4034271b0e0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000010b141d262e363d43494f53575a5d5f6061616161605e5c5a56534e4a443e3831313941484e5256595b5c5c5c5b5a585654504a42392f24180d010000020b141c23282c2e2e2e2e2e2e2e2e2e2d29241d150d030000000000000000000000000000000008111920262b2e2e2e2e2e2e2e2e2e2e2e2e2c28231c140c0200000000020b141c23282c2e2e2e2e2e2e2e2e2e2c27221b130a0000000000000000000000000000000000000000111e2a3744505d6976838f9ca8ada194887c6f63584d433c3633312f2e2e2d2d37424e5b6773808c99a5b2a6998c7f7265594c3f3226190c0000000000000000000013202c3946535f6c798693a0acb7ada5a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0988b7e7164574b3e3124180b0000000000000000000814202c38434d565d5f5f5f5f5f5f5a52493e33271b0f020000000000000000020c17222c37424c57626c77828c97a2aca59a90857a6f655a4f443a2f24190f040000000008121d28333d48535e68737e89949ea9a89d93887d73685d53483d33281e130800000013202c3946535f6c798693a0acaca093867e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e80818386898d92979ea5acaaa29a91877e74695f54493d32261b0f03000000000013202c3946535f6c798693887b6f6255483c2f2215090000000000000000000000000000000000000000000000000000101c2936434f5c697683908c7e7265584c3f3225190c0013202c3946535f6c798693a0acaca09386796c5f5346392c2013060000000000000000000000000000000d1926333f4c5865727e8b98a4b1a89b8f8275695c4f4336291c1000000000000000000000000104070c13191f252a2f34393d4145484c4f5255585b5e606366696c6f7275797c81858a90969da5adaea59c92887d72675c5145392d211609000013202c3946535f6c798693a0acaca09386796c5f5346392c2929292929292929292929292929292929292c3946535f6c798693a0acada09386796d6053463a2d2013070000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000306090c0e11131416171818191918181716151412100d0b08040100000000000000000000000000000000000000000000000000000e1a26323e48525a5f5f5f5f5f5f5f5f5f5d574e44392d211509000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000010a141e28313b454e575d5f5f5f5f5f5f5f5f5e5950463b3024180c000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000009131d262f3840474e555a5f63676a6c6d6e6e6e6d6d6b6966635f5a554f49423b3a434b53595e63666869696968676563605c544b4035291d110500000a141d262e34383b3b3b3b3b3b3b3b3b39352f271f150b01000000000000000000000000000006101a232b32373a3b3b3b3b3b3b3b3b3b3b3b39342e261e140a000000000a141d262e34383b3b3b3b3b3b3b3b3b38332c251c1208000000000000000000000000000000000000000f1c2835424e5b6774808c99a5b0a4988c8074695f554d4743403e3c3b3a3a3a3a3f4b5864717d8a97a3b0a6998c7f7265594c3f3226190c0000000000000000000013202c3946535f6c798693a0acb9b1aaa6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a4988b7e7164574b3e3124180b00000000000000000004101b26313b444c515353535353524f4940372c21160a00000000000000000009131e29333e49535e69737e89939ea9a99e93897e73685e53483d33281d13080000000000010c16212c37414c57626c77828d98a2ada49a8f857a6f645a4f453a2f251a0f05000013202c3946535f6c798693a0acaea2968d8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8c8c8e909295999ea3a9aca69f9890887e756c62574d42372c21150a00000000000013202c3946535f6c798693887b6f6255483c2f2215090000000000000000000000000000000000000000000000000000101c2936434f5c697683908c7e7265584c3f3225190c0013202c3946535f6c798693a0acaca09386796c5f5346392c2013060000000000000000000000000000000b1824313e4a5764707d8a96a3b0a99d9083766a5d5044372a1d110000000000000000000000010810171e242a30363b4045494d5154585b5e6164676a6d707376787b7e8285898d91969ca1a8afaca49c938a80766c61564b3f34281d1105000013202c3946535f6c798693a0acaca09386796c5f53463936363636363636363636363636363636363636363946535f6c798693a0acada09386796d6053463a2d20130700000000000000000000000000000000000000000000000000000000000000000000000000000000000002070b0f1215181b1d1f212224242525252525242322201e1c1a1714110d09050000000000000000000000000000000000000000000000000a16212c3740484f525353535353535353514c453c32271c110500000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000020c161f29333c454c515353535353535353524e473e342a1f13070000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000007111b252f38414a525960666b6f7376787a7b7b7b7a797775726f6b66615b544d45434c555d646a6f72747575757573726f6d665d5145392d2014070006111c262f383f4548484848484848484845403931271d120700000000000000000000000000020d18222c353d4347484848484848484848484845403830261c1106000006111c262f383f45484848484848484847443e372e241a0f030000000000000000000000000000000000000d1a26333f4b5864707c8995a1aca89c91867b71675f58534f4c4a494847474646464956626f7c8996a2afa6998c7f7265594c3f3226190c0000000000000000000013202c3946535f6c798693a0acb3a89f9a9999999999999999999999999999999999999999999999999999999999999999988b7e7164574b3e3124180b000000000000000000000a151f29323a4044464646464646433e372e251b1005000000000000000004101a25303a45505a65707a85909aa5ada2978d82776c62574c41372c21160c0100000000000005101a25303b45505b66707b86919ba6aba1968b81766b61564c41362c21160b000013202c3946535f6c798693a0acb3a89f99989898989898989898989898989898989898989898999a9c9fa2a5a9aaa5a09b948d867e756d635a50463b31261b100400000000000013202c3946535f6c798693887b6f6255483c2f2215090000000000000000000000000000000000000000000000000000101c2936434f5c697683908c7e7265584c3f3225190c0013202c3946535f6c798693a0acaca09386796c5f5346392c201306000000000000000000000000000000091623303c4956626f7c8995a2afaa9e9184776b5e5144382b1e1100000000000000000000020a131a22292f363c41474c5155595d6164676b6e717476797c7f8285888b8e9195999da2a7adada7a19a928a81786e645a4f45392e23180c00000013202c3946535f6c798693a0acaca09386796c5f53464343434343434343434343434343434343434343434346535f6c798693a0acada09386796d6053463a2d2013070000000000000000000000000000000000000000000000000000000000000000000000000000000004090e13171b1f2225272a2c2e2f3031323232323231302e2d2b292623201d1915110c070200000000000000000000000000000000000000000005101a252e373e4346464646464646464645413b332a20160b000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000040d17202a333a4145464646464646464645423c352c22180d02000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000030e18232d37414a535c636b71777b80838586888888878684827e7b77726c665f574f4b555e676f757b7e8182828281807e7c786e6155483b2f221508000b17222d38424a51545555555555555554514b43392f23180c0000000000000000000000000009141f29343e474e535555555555555555555554514a42382d22170b00000b17222d38424a515455555555555555544f4940362b2014090000000000000000000000000000000000000a1723303c4854606c7884909ba6aea2978d8379716a635f5b5957555554535353535255626f7b8895a2afa6998c7f7265594c3f3226190c0000000000000000000013202c3946535f6c798693a0acaea2978e8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8b7e7164574b3e3124180b00000000000000000000030d1720282f343839393939393937322c251c13090000000000000000000a16212c37414c57616c77818c97a1aca69b90867b70655b50453a30251a1005000000000000000009131e29343e49545f69747f8a959faaa89d93887d73685d53483d33281d11050013202c3946535f6c798693a0acacaca9a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a6a7a9a8a6a4a19d99958f89837c746c635b51483e34291f14090000000000000013202c3946535f6c798693887b6f6255483c2f2215090909090909090909090909090909090909090909090909090909101c2936434f5c697683908c7e7265584c3f3225190c0013202c3946535f6c798693a0acaca09386796c5f5346392c2013060000000000000000000000000000000915222f3c4855626e7b8895a2aeab9e9285786b5e5145382b1e12000000000000000000020b141c242c333a41474d52585c6165696d7074777a7d808386898c8e9194979a9da1a5a9aeaca7a29c968f8880786f665c52483e33281d120600000013202c3946535f6c798693a0acaca09386796c5f534f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f535f6c798693a0acada09386796d6053463a2d2013070000000000000000000000000000000000000000000000000000000000000000000000000000040a10151a1f23272b2e313436393a3c3d3e3e3f3f3f3e3e3d3b3a383533302d2925211d18130d0701000000000000000000000000000000000000000009131c252c32373939393939393939393835302921180e0400000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000050e18212930353839393939393939393936312b231a11060000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000009141f2a353f49535c656e757c82878c8f91939495949493918e8b87837d7770696159525c67707981878b8e8f8f8f8e8d8b887b6f6255483c2f221509000f1b27333f4a545c6161616161616161615d554b4034291d1004000000000000000000000005101b25303b4650595f61616161616161616161615c544a3f33281b0f03000f1b27333f4a545c6161616161616161605a52483c3125190d0000000000000000000000000000000000000714202c3844505c68737e8a959fa9a99f958c837b756f6b6865636261616060605f5f5f626f7b8895a2afa6998c7f7265594c3f3226190c0000000000000000000013202c3946535f6c798693a0acaca093867f7f7f7f7f7f7f7f7f7f7f7f7f7f7f7f7f7f7f7f7f7f7f7f7f7f7f7f7f7f7f7f7f7f7e7164574b3e3124180b0000000000000000000000050e161e24282b2c2c2c2c2c2c2a27211b130a010000000000000000000e1a26323d48535e68737e89939ea0a09f948a7f74695f54493e34291e1309000000000000000000020d17222d38424d58636d78838e99a0a0a09a8f84796f645a4f44392e2216090013202c3946535f6c798693a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a09f9e9d9c9a9895918d89847e78716a625a51493f362c22180d030000000000000013202c3946535f6c798693887b6f6255483c2f2215151515151515151515151515151515151515151515151515151515151c2936434f5c697683908c7e7265584c3f3225190c0013202c3946535f6c798693a0acaca09386796c5f5346392c2013060000000000000000000000000000000815222e3b4855616e7b8894a1aeab9e9285786b5f5245382c1f120000000000000000020b141d262e363e454c52585e63686d7175797d8084878a8d8f9295989b9ea1a4a7aaadada9a5a09b96918b857e766e665d544a40362c21170c0100000013202c3946535f6c798693a0acaca09386796c5f5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5f6c798693a0acada09386796d6053463a2d201307000000000000000000000000000000000000000000000000000000000000000000000000030910161b21262b2f33373b3e40434547484a4b4b4c4c4b4b4a49484644423f3c3935312d28231e18130d0600000000000000000000000000000000000000010a131a21262a2c2c2c2c2c2c2c2c2c2c29241e170f06000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000060f171e24292b2c2c2c2c2c2c2c2c2c2a252019110800000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000040f1a26313c46515b656e7780878e93989b9ea0a1a2a1a19f9d9b97938e89827b736b6259636e78838b92979a9c9c9c9b9995887b6f6255483c2f22150900121e2b37434f5b666d6e6e6e6e6e6e6e6d675c5145392c20130700000000000000000000010c17212c37424d57626b6e6e6e6e6e6e6e6e6e6e6d665b5044372b1f120500121e2b37434f5b666d6e6e6e6e6e6e6e6c64594d4135291c1004000000000000000000000000000000000004101c28343f4b57626d78838d97a1a9a79e958d86807b777472706f6e6d6d6d6d6c6c6c6b6f7b8895a2afa6998c7f7265594c3f3226190c0000000000000000000013202c3946535f6c798693a0acaca0938679727272727272727272727272727272727272727272727272727272727272727272726c6155493d3023170a000000000000000000000000050c13181c1f20202020201f1e1b1610090100000000000000000000111d2a36434e5a656f7a858f93939393938d83786d62584d42382d22170d020000000000000000000006101b26313c46515c67717c879293939393938b81766b61564a3e3225190c0013202c3946535f6c7986939393939393939393939393939393939393939393939393939393939292918f8d8b8885817d78736d665f5850483f372d241a1006000000000000000013202c3946535f6c798693887b6f6255483c2f222222222222222222222222222222222222222222222222222222222222222936434f5c697683908c7e7265584c3f3225190c0013202c3946535f6c798693a0acaca09386796c5f5346392c2013060000000000000000000000000000000815222e3b4855616e7b8894a1aeab9f9285786b5f5245382c1f1200000000000000000a141d262f38404850575d63696f74797d8285898c909396999c9fa1a4a7aaadadaaa7a4a19d9994908b858079736c645c544b42382f251a10050000000013202c3946535f6c798693a0acaca09386796c696969696969696969696969696969696969696969696969696969696c798693a0acada09386796d6053463a2d2013070000000000000000000000000000000000000000000000000000000000000000000000070e141b21272c32373b3f43474a4d4f5254555657585858585857565453514e4c4945413d39342f2a241e18110a03000000000000000000000000000000000000010910161a1e1f20202020202020201f1c19130d050000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000050d13181c1f20202020202020201f1d1a140e0700000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000914202b37424d58636d77818991999fa4a8a5a19d9b9a9a9a9b9c9f9f9a948d857d746b626974808a949da3a7a6a09b989795887b6f6255483c2f2215090013202c3946525f6c777b7b7b7b7b7b7b796d6154473b2e2114080000000000000000000008131d28333e49535e69747b7b7b7b7b7b7b7b7b7b786c5f5346392d2013060013202c3946525f6c777b7b7b7b7b7b7b75695d5145382c2013070000000000000000000000000000000000000b17232f3a45515c67717b858f979fa6a79f98918c8784817e7d7c7b7a7a797979797978787b8895a2afa6998c7f7265594c3f3226190c0000000000000000000013202c3946535f6c798693a0acaca09386796c656565656565656565656565656565656565656565656565656565656565656565625a5045392d2114080000000000000000000000000001070c1012131313131313110e0a05000000000000000000000000121f2c3945525e6b768186868686868686867c71665c51463b31261b10060000000000000000000000000a141f2a353f4a55606a758086868686868686867d72665a4d4034271a0e0013202c3946535f6c79868686868686868686868686868686868686868686868686868686868686858482817e7c7975716c67615b554e463e362d241b120800000000000000000013202c3946535f6c798693887b6f6255483c2f2f2f2f2f2f2f2f2f2f2f2f2f2f2f2f2f2f2f2f2f2f2f2f2f2f2f2f2f2f2f2f2f36434f5c697683908c7e7265584c3f3225190c0013202c3946535f6c798693a0acaca09386796c5f5346392c2013060000000000000000000000000000000915222f3c4855626e7b8895a2aeab9e9285786b5e5145382b1e120000000000000007121c262f38414a525a61686f757a8085898e9295999c9fa2a5a8abaeadaaa7a4a19e9b9894918d88847f7a746e68615a524a423930261d1308000000000013202c3946535f6c798693a0acaca0938679767676767676767676767676767676767676767676767676767676767676798693a0acada09386796d6053463a2d201307000000000000000000000000000000000000000000000000000000000000000000020a11181f262c32383d42474b4f5356595c5e6062636465656565646463615f5d5b5855514d4945403b352f29231c150d0600000000000000000000000000000000000000050a0e1113131313131313131312100d08020000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000002080c1012131313131313131313110d09030000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000010d1925313d48535f6a747f89939ba3aaa7a09a95918e8d8d8d8e9092969a9e978f877d746a6d7985919ca6afa59c958f8c8a8b887b6f6255483c2f2215090013202c3946535f6c79868888888888887b6e6154483b2e211508000000000000000000040f19242f3a454f5a65707a85888888888888888886796d6053463a2d20130700131f2c3945525e6b7784888888888885796d6054483c2f23170a00000000000000000000000000000000000006121e29343f4a555f69737c858d959ca1a6a39d9893908d8b8a8888878786868686868585858a96a2afa6998c7f7265594c3f3226190c0000000000000000000013202c3946535f6c798693a0acaca09386796c5f59595959595959595959595959595959595959595959595959595959595959595650483e33281d110500000000000000000000000000000000000000000000000000000000000000000000000000000000121f2c3845525e6b76797979797979797979756a5f554a3f352a1f140a00000000000000000000000000030e18232e39434e59646e7879797979797979797972665a4d4034271a0e00131f2c3946525f6b7679797979797979797979797979797979797979797979797979797979797978777674726f6c6965605c56504a433c342c241b12090000000000000000000013202c3946535f6c798693887b6f6255483c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c434f5c697683908c7e7265584c3f3225190c0013202c3946535f6c798693a0acaca09386796c5f5346392c201306000000000000000000000000000000091623303c4956626f7c8995a2afaa9e9184776b5e5144382b1e11000000000000040e19232e38414a535c646c737a80868b91959a9ea1a5a8acafaca9a6a3a09d9a9895928f8b8884817c78736e69635d575048403830271e140b01000000000013202c3946535f6c798693a0acaca0938783838383838383838383838383838383838383838383838383838383838383838793a0acada09386796d6053463a2d2013070000000000000000000000000000000000000000000000000000000000000000040c141c232a31373d43494e53575c5f6366686b6d6e70717172727171706f6e6c6a6764615e5a55514c46403a342d261f18100800000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005111d2a36414d5965707b86919ba5ada69d958f8985828180808183868a8e93999990867c72717d8a96a2ada99e938a837f7d7e807b6f6255483c2f2215090013202c3946535f6c79869395959594887b6e6154483b2e2115080000000000000000000b15202b36404b56616c76818c959595959595959386796d6053463a2d20130700111e2a36434f5b6774808c95959595897c7064574b3f33261a0e010000000000000000000000000000000000010c18232e39434d57616a737b838a90969b9fa2a3a09c9a9896959494949393939292929291939ca6b2a6998c7f7265594c3f3226190c0000000000000000000013202c3946535f6c798693a0acaca09386796c5f534c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4a453e362c22170c0000000000000000000000000407080909090909090909080705010000000000000000000000000000111d2a36424e5a646b6c6c6c6c6c6c6c6c6c6a63594e43382e23180d03000000000000000000000000000007111c27323c47525d666c6c6c6c6c6c6c6c6c6c6960564a3e3225190c00111e2a37434f5a646b6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6b6a69676563605d5955504b453f38312a221a1209000000000000000000000013202c3946535f6c798693887b6f6255484848484848484848484848484848484848484848484848484848484848484848484848484f5c697683908c7e7265584c3f3225190c0013202c3946535f6c798693a0acaca09386796c5f5346392c2013060000000000000000000000000000000b1824313d4a5763707d8a96a3b0a99d9083766a5d5044372a1d110000000000000a15202b353f49535c656e767e858b91979ca1a6aaaeaca9a6a29f9c999794918e8b8885827f7c7874706c67625d57524c453e362f261e150c0200000000000013202c3946535f6c798693a0acafa3999190909090909090909090909090909090909090909090909090909090909090909199a3afada09386796d6053463a2d20130700000000000000000000000000000000000000000000000000000000000000050e161e262d353c42494f545a5f63686c6f727577797b7c7d7e7e7e7e7e7d7c7a797674716d6a66615c57514c453f38312a221a120a01000000000000000000000000000000000000000004070a0c0d0e0f1010100f0e0c0a0704000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000002070b0d0e0e0e0e0e0e0e0e0e0d0b08030000000000000000000000000000000000000000000000000103050708080909080706050300000000000000000000000000000001020303030202000000000000000000000000000915212d3a46525e6a75818d98a2ada89e948b847d787573737375777a7d82888e95988e847a74818d99a6afa3988c827873717173746b6054473b2e2115080013202c3946535f6c798693a0a2a194887b6e6154483b2e211508000000000000000007111c27323c47525d68727d88939ea2a2a2a2a2a09386796d6053463a2d201307000e1a27333f4c5864707d8995a2a2988c8073675b4e42362a1d110500000000000000000000000000000000000006111c27313c464f58616971787f858a8f9296999b9d9fa0a1a2a1a0a0a0a0a09f9f9f9e9e9fa5aeb2a6998c7f7265594c3f3226190c0000000000000000000013202c3946535f6c798693a0acaca09386796c5f53463f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3e3a342c241a100500000000000000000000070c11141515151515151515151514110d08010000000000000000000000000e1a26323d48525a5f5f5f5f5f5f5f5f5f5f5e5951473c32271c1107000000000000000000000000000000000b15202b36404b545c5f5f5f5f5f5f5f5f5f5f5d574e44392d221609000e1a26323e48525a5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5e5c5b595654504d49443f3a342d272018100800000000000000000000000013202c3946535f6c798693887b6f625555555555555555555555555555555555555555555555555555555555555555555555555555555c697683908c7e7265584c3f3225190c0013202c3946535f6c798693a0acaca09386796c5f5346392c2013060000000000000000000000000000000d1a26333f4c5865727e8b98a4b1a89b8f8275695c4f4336291c10000000000005101c27323c47515b656e7780888f969da3a8adada8a4a09d999693908d8a8785827e7c7976736f6c6864605b57524c46403a332c251d140c030000000000000013202c3946535f6c798693a0acb5aba29d9c9c9c9c9c9c9c9c9c9c9c9c9c9c9c9c9c9c9c9c9c9c9c9c9c9c9c9c9c9c9c9c9da2abb5ada09386796d6053463a2d201307000000000000000000000000000000000000000000000000000000000000060e17202830383f464d545a60656b6f74787b7e82848688898a8b8b8c8b8b8a89878583817d7a76726d68635d57504a433b342c241c130a010000000000000000000000000000000000040a101316181a1b1c1c1c1c1c1b191714100c070200000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000080e13171a1a1a1a1a1a1a1a1a1a1a18140f09010000000000000000000000000000000000000003070a0d10121314151515151413110f0d0a0602000000000000000206090c0e0f1010100f0e0d0b09070400000000000000000c1824313d4956626e7a86929ea9aca1968c8279726c69676667686a6d71767c838a92968c8177838f9ca9ac9f93877b706764656767625a4f43382b1f13060013202c3946535f6c798693a0aca194887b6e6154483b2e21150800000000000000030d18232e38434e59646e79848f9aa4aeaeaeaeada09386796d6053463a2d201307000b1723303c4854616d7986929ea89c8f83776a5e5246392d211408000000000000000000000000000000000000000b15202a343d464f585f676e74797e83868a8c8f919293949596969696969797979898989aa0aab2a6998c7f7265594c3f3226190c0000000000000000000013202c3946535f6c798693a0acaca09386796c5f5346393232323232323232323232323232323232323232323232323232323232312e29221a1208000000000000000000020b12181d2022222222222222222222211d19130c0400000000000000000000000a15212c3640484f52535353535353535353524e473f352b20150a0000000000000000000000000000000000040f19242f39424a5053535353535353535353514c453c32281d1105000a16212c3740484f525353535353535353535353535353535353535353535353535353535353535251504e4c4a4744413d38332e28221c150e060000000000000000000000000013202c3946535f6c798693887b6f6262626262626262626262626262626262626262626262626262626262626262626262626262626262697683908c7e7265584c3f3225190c0013202c3946535f6c798693a0acaca09386796c5f5346392c201306000000000000000000000000000003101c2935424e5b6774818d99a6b3a69a8d8174675b4e4135281b0f00000000000a16212d38434e59636d77818a929aa1a8aeaca6a19c9894908d8a8784817e7b7875726f6c696663605c5854504b46413b352f29221a130b02000000000000000013202c3946535f6c798693a0acb9b4adaaa9a9a9a9a9a9a9a9a9a9a9a9a9a9a9a9a9a9a9a9a9a9a9a9a9a9a9a9a9a9a9a9aaadb4b9ada09386796d6053463a2d2013070000000000000000000000000000000000000000000000000000000000050e182029323a424951585f656b71767b8084888b8e91939496979898989898979594928f8d8a86827d79746e68625b544d463e362e251c130a01000000000000000000000000000000070f161b20232527282929292929272523201c18130e0802000000000000000000000000000000000000000000000000000000000000000000000000000000000000010a12191f23262727272727272727272624201a130b0300000000000000000000000000000000050a0f13171a1c1e202122222222211f1e1c1916130e0a0500000004090e1216181b1c1c1c1c1c1b1a181613100c070000000000000e1b2734404d5965727e8a97a3aea79b90857a7067615c5a595a5b5e61666b717880889193887d84919eaaa99c9083776b5f57585a5b5750483d32271b0f030013202c3946535f6c798693a0aca194887b6e6154483b2e2115080000000000000009141f2a343f4a55606a75808b96a0abb1b0b3b8ada09386796d6053463a2d201307000714202c3845515d6a76828f9ba79f93877a6e6155493d3024180b00000000000000000000000000000000000000030e18222b343d464e555c62686d72767a7d808284868788888989898a8a8a8a8a8b8b8b8e98a4b0a6998c7f7265594c3f3226190c0000000000000000000013202c3946535f6c798693a0acaca09386796c5f5346392c2626262626262626262626262626262626262626262626262626262624221d171008000000000000000000020c141c23292d2f2f2f2f2f2f2f2f2f2f2d2a241e160d0400000000000000000000040f1a242e363d434646464646464646464645423d352d23190e0400000000000000000000000000000000000008121d2730383f444646464646464646464645413b332a21160b000005101a252e373e434646464646464646464646464646464646464646464646464646464646464645444342403d3b3834302c28231d17110a03000000000000000000000000000013202c3946535f6c798693887b6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f7683908c7e7265584c3f3225190c0013202c3946535f6c798693a0acaca09386796c5f5346392c201306000000000000000000000000000007131f2c3844515d6a76838f9ca8b1a4988b7e7265594c4033261a0d00000000030f1b27323e4955606a758089939ca4acafa8a19b95908c8884817d7a7774716e6c696663605d5a5753504c48443f3a35302a241e1710090100000000000000000013202c3946535f6c798693a0acb6ada5a09f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9fa0a5adb6ada09386796d6053463a2d20130700000000000000000000000000000000000000000000000000000000040e17202a323b444c545b626970767c82878c9094979a9d9fa1a3a4a4a5a5a5a4a3a2a09e9c9996928e8a857f79736d665f58504840372e251c1309000000000000000000000000000007101920272c2f313335353636363534322f2c28241f19130d0600000000000000000000000000000000000000000000000000000000000000000000000000000000000a131c242a2f3334343434343434343433302b251d150b0100000000000000000000000000040b11161b1f2326292b2d2e2f2f2f2e2d2c2a2825221f1b16110b06090f151a1e222527292929292928262422201c18120b0300000000101d2936424f5b6875818e9aa6afa3978b7f73685e56504d4d4d4f51555a60666e767f88928f8486929faba79a8e8174685b4f4b4e4e4b463f362c21160a000013202c3946535f6c798693a0aca194887b6e6154483b2e21150800000000000005101b26303b46515c66717c87929ca7aaa5a4a7adada09386796d6053463a2d2013070004101d2935414e5a66737f8b98a4a2968a7d7165594c4034271b0f02000000000000000000000000000000000000030d161e252b343c434b51575d62666a6e71737577797a7b7b7c7c7d7d7d7d7d7d7e7e7e8895a2afa6998c7f7265594c3f3226190c0000000000000000000013202c3946535f6c798693a0acaca09386796c5f5346392c201919191919191919191919191919191919191919191919191919191815110c06000000000000000000000a141e262e34393b3c3c3c3c3c3c3c3c3b39352f281f160c010000000000000000000008121c242c3236393939393939393939393936312b231b110700000000000000000000000000000000000000010b151e272e3337393939393939393939393835302921180f0400000009131c252c3237393939393939393939393939393939393939393939393939393939393939393938363533312e2b2824201c17120c060000000000000000000000000000000013202c3946535f6c798693887b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b83908c7e7265584c3f3225190c0013202c3946535f6c798693a0acaca09386796c5f5346392c20130600000000000000000000000000010c1824303c4854606d7985929eabaea295897c7063574a3e3124180b000000000714202c37434f5a66717c87919ba5aeada59d968f8a84807c7874716e6b6865625f5c595653514e4a4744403c38332e29241e19130c05000000000000000000000013202c3946535f6c798693a0acb0a59b949292929292929292929292929292929292929292929292929292929292929292949ba5b0ada09386796d6053463a2d201307000000000000000000000000000000000000000000000000000000020c162029323c444d565e656d747b82888d93989ca0a4a7aaa8a5a3a2a1a1a0a1a1a2a4a6a8a8a5a29e9a95908b857e787169625a524940372e251b1208000000000000000000000000040f19222b32383c3e40414243434342413f3c3834302a251e17100901000000000000000000000000000000000000000000000000000000000000000000000000000007121c252e353b3f414141414141414141403c372f271d1309000000000000000000000000080f161c22272b2f333538393b3b3c3c3b3a393735322f2b26221d1711131a20262b2e313435363636353433312f2c28231d150d03000000111e2b3744515d6a7783909da9aca093877a6e62574c444140404245494e555c646d76808a948f8f97a2aea6998c807366594d4041413f3b342d241a0f05000013202c3946535f6c798693a0aca194887b6e6154483b2e2115080000000000010c17222c37424d58626d78838e98a3aaa099979ba4ada09386796d6053463a2d20130700000d1925323e4a57636f7c8894a1a6998d8174685c5043372b1e12060000000000000000000000000000000000000b151f282f363a3d3e40464c51565a5e616467696b6c6d6e6f6f6f70707070717171717b8895a2afa6998c7f7265594c3f3226190c0000000000000000000013202c3946535f6c798693a0acaca09386796c5f5346392c20130c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0b0905010000000000000000000006111c26303840454848484848484848484846413a31281e130800000000000000000000000a121a21262a2c2c2c2c2c2c2c2c2c2c2c2a2620191109000000000000000000000000000000000000000000030c151c23282b2c2c2c2c2c2c2c2c2c2c2c29241f170f0600000000010a131a21262a2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2b2a282724221f1c1814100b0601000000000000000000000000000000000013202c3946535f6c7986938c88888888888888888888888888888888888888888888888888888888888888888888888888888888888888888889928c7e7265584c3f3225190c0013202c3946535f6c798693a0acaca09386796c5f5346392c2013060000000000000000000000000007121d2834404c5864707c8995a1aeab9f93867a6d6154483b2f221609000000000b1724303c4854606b77828e98a3adada49b938b847e78746f6c6865615e5b585553504d4a4744413e3b3734302c27231e1a181614110f0d0a06010000000000000013202c3946535f6c798693a0acada0948986868686868686868686868686868686868686868686868686868686868686868994a0adada09386796d6053463a2d2013070000000000000000000000000000000000000000000000000000000a141e28323b444e565f6770777f868d93999ea3a8aaa6a29e9b99979594949494949697999b9ea2a6aaa6a19c969089827b746c645b524940372d241a100600000000000000000000000b16212b343d43484b4d4e4f4f4f4f4f4d4b4845403b363029221b130b02000000000000000000000000000000000000000000000000000000000000000000000000010d18232e3740474c4d4d4d4d4d4d4d4d4d4c4841392f251a0f03000000000000000000020a121a21272d32373b3f4244464748484848474544413e3b37322d28221c1e252c31363b3e404243434342413f3e3b38342e271f150b010000121f2c3945525f6b7885929eabaa9e9184786b5f52463a34333436393d434a525b646d78828d989ba0a9b2a6998c7f7265594c3f3435332f2a231b120800000013202c3946535f6c798693a0aca194887b6e6154483b2e211508000000000008131e28333e49545e69747f8a949faaa3988e8a929eaaa09386796d6053463a2d20130700000a16222e3b4753606c7885919da99d9084786b5f53473a2e221509000000000000000000000000000000000006121d27313a41474a4b4c4d4e4f50525355585a5c5e5f6161626363636363636464646f7b8895a2afa6998c7f7265594c3f3226190c0000000000000000000013202c3946535f6c798693a0acaca09386796c5f5346392c20130d0d0d0d0d0d0d0d0d0d0d0d0d0d0d0d0d0d0d0d0d0d0d0d0d0d0d0d0d0b080400000000000000000b17222d38424a5155555555555555555555524c433a2f24190d0100000000000000000000000810161a1e1f2020202020202020201f1d1a150f070000000000000000000000000000000000000000000000030a11171b1e202020202020202020201f1d19130d06000000000000010910161a1e1f2020202020202020202020202020202020202020202020202020202020201f1e1d1c1a181513100c0804000000000000000000000000000000000000000013202c3946535f6c7986939393939393939393939393939393939393939393939393939393939393939393939393939393939393939393939393938c7e7265584c3f3225190c0013202c3946535f6c798693a0acaca09386796c5f5346392c201306000000000000000000000000040e18232e3945515c6874808c98a5b1a89c9083776a5e5245392c201307000000010e1b2733404c5864707c88949faab0a59b92898179736d68635f5c5855524f4c494643413e3b3835322f2b282a2c2c2b29272422201e1c1916120c0600000000000013202c3946535f6c798693a0acaca0938679797979797979797979797979797979797979797979797979797979797979798693a0acada09386796d6053463a2d201307000000000000000000000000000000000000000000000000000007111c26303a444d5660687179828991979ea4aaa9a39e9a95928f8c8a898887878788898a8d8f92969a9ea4a9a7a19b948d867e756d645b52493f362c22170d0200000000000000000004101c27323d464e5457595b5c5c5c5c5b5a5854514c47413b342c251d140b02000000000000000000000000000000000000000000000000000000000000000000000006121e2a35404952585a5a5a5a5a5a5a5a5a58534b41372b2014080000000000000000020b141c242b32383e43474b4e515354555555555452504e4b47433e39332d262830373d42474a4d4f4f4f4f4f4e4c4a4845403931271d1207000013202c3946535f6c7986929facaa9d9083766a5d5044372a2627292d32394049525c66707b86929da9b2b2a6998c7f7265594c3f322826231e1811090000000013202c3946535f6c798693a0aca194887b6e6154483b2e21150800000000040f1a242f3a45505a65707b86909ba6a79c9287828f9ca8a09386796d6053463a2d201307000006121f2b3744505c6975818d9aa6a094877b6f62564a3e3125190c00000000000000000000000000000000000b17232e39434c525657595a5b5c5d5e5f5e59515051535455555656565657575757626f7b8895a2afa5998c7f7265594c3f3226190c0000000000000000000013202c3946535f6c798693a0acaca09386796c5f5346392c201a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1a191814100a030000000000000f1b27333f4a545c616262626262626262625d564c41352a1d1105000000000000000000000000040a0e111313131313131313131313110e09040000000000000000000000000000000000000000000000000000060b0f121313131313131313131312100d0802000000000000000000050a0e11131313131313131313131313131313131313131313131313131313131313131212100f0d0b090603000000000000000000000000000000000000000000000013202c3946535f6c798686868686868686868686868686868686868686868686868686868686868686868686868686868686868686868686868686867e7265584c3f3225190c0013202c3946535f6c798693a0acaca09386796c5f5346392c2013060000000000000000000000050d16202a35404b56616d7985919da9b0a4988c8073675b4f4236291d110400000004111d2a36434f5c6874818d99a4b0a99e938980776f68615c5753504c494642403d3a3734312e2b2825232b31363939383533312f2d2a2826231e171008000000000013202c3946535f6c798693a0acaca09386796c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c798693a0acada09386796d6053463a2d20130700000000000000000000000000000000000000000000000000030e19232e38424c565f68727a838b939ba2a9aba49e98928e898582807d7c7b7a7a7a7b7c7e8083868a8e93989ea4aba69f9790887f766d645b51483e33291f140a0000000000000000000814202d38444f586064666768696969686664615d58524c453e372f261d140b02000000000000000000000000000000000000000000000000000000000000000000000916222e3a46515b63676767676767676767645d53483c3024180b00000000000000020b141d262e363d444a4f54585b5d5f6161626261605f5d5a57534f4a443f3831313a41484e5357595b5c5c5c5b5a595754514b43392f24180d010013202c3946535f6c798693a0acaa9d908376695d5043362a1d1a1d21272e37404a545f6a75818c98a3afb2a6998c7f7265594c3f32261a17130d06000000000013202c3946535f6c798693a0aca194887b6e6154483b2e211508000000000b16202b36414c56616c77828c97a2aba0968b8083909ca9a09386796d6053463a2d2013070000030f1b2834404d5965717e8a96a3a3978b7e7266594d4135281c1003000000000000000000000000000000030f1c28343f4b555d6364656667696a6b6c6b63594e454647484949494a4a4a4a4a56636f7c8996a2afa5988c7e7265584c3f3225190c0000000000000000000013202c3946535f6c798693a0acaca09386796c5f5346392c2626262626262626262626262626262626262626262626262626262626262624201b150d050000000000121e2b3743505b666d6f6f6f6f6f6f6f6f6e685d5246392d2114070000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000131f2c3946525f6b76797979797979797979797979797979797979797979797979797979797979797979797979797979797979797979797979797979797064584b3e3225180c0013202c3946535f6c798693a0acaca09386796c5f5346392c201306000000000000000000040910171f28323c46515c67727e8a95a1adaca094887c7064574b3f33261a0e0100000006131f2c3945525e6b7784909ca9b0a4988d82776e655d56504b4743403c393633302d2b2825221f1c222c353c4245464442403e3b393735322e29221a11070000000013202c3946535f6c798693a0acaca09386796c5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f6c798693a0acada09386796d6053463a2d201307000000000000000000000000000000000000000000000000000a15202a353f4a545e68717a848d959da5ada8a19a938d87827d797673716f6e6d6d6d6e6f717376797d82878d939aa1a8a9a299918980766d63594f453b30261b100500000000000000000a1723303c4955606a707274757676767573706d69635e57504941382f261d140a010000000000000000000000000000000000000000000000000000000000000000000b1824313e4a57636d7474747474747474746f64584c4033261a0d000000000000000a141d262f3840484f555b5f64676a6c6d6e6f6f6e6d6b6966635f5b56504a433b3a434c53595f63666869696968676563615c554b4035291d11050013202c3946535f6c7986929facaa9d9084776a5d5144382b1f1a18161c252e38424d58646f7b87939fabb2a6998c7f7265594c3f3226190c070200000000000013202c3946535f6c798693a0aca194887b6e6154483b2e21150800000007121c27323d48525d68737e88939ea9a49a8f847984909daaa09386796d6053463a2d2013070000000c1824313d4956626e7a87939fa79a8e8275695d5044382c1f130700000000000000000000000000000005121e2b3844505c676f7172737475777879756a5e5145393a3b3c3c3c3d3d3d3e4b5864717d8a97a4b0a4988b7e7165584b3e3225180b0000000000000000000013202c3946535f6c798693a0acaca09386796c5f5346393333333333333333333333333333333333333333333333333333333333333333302c261f170e040000000013202c3946525f6c787b7b7b7b7b7b7b7b7a6e6255483b2f2215080000000000000000000000000000000000000000000000000000000000000000000000000000000000030608080808080808080808070501000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000306080b0d0f101112131313131212100f0d0b09070400000000000000000000000000000000000000000000000000111e2a37434f5a646b6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c685f54483c3023170a0013202c3946535f6c798693a0acaca09386796c5f5346392c20130600000000010205070b0f141b2129313a444e58636e78848f9ba6b2a79b8f83776b5f53473b2f23170a000000000814212e3a4754606d7a86939facaca093877b70655c534c45403b3734302d2a2724211e1b1815131f2a343e474e5253514f4c4a484644413f3a342c23190f0400000013202c3946535f6c798693a0acaca09386796c5f53525252525252525252525252525252525252525252525252535f6c798693a0acada09386796d6053463a2d20130700000000000000000000000000000000000000000000000005101b26313c47515b66707a838d969fa7afa79e968f88817b76716d6966646261616161626365676a6d71767b82888f969ea7aba39b92897f756b61574d42382d22170c01000000000000000b1825323e4b5864717c7f818282838382807d79746f69625a534a42392f261c13080000000000000000000000000000000000000000000000000000000000000000000c1925323f4c5865727e818181818181818174675a4d4134271a0e01000000000007111c262f39424a525960666b707376797a7b7b7b7b7a7876736f6b66615b544d46434d555e656a6f7275767676757472706d675d5145392d20140700121f2c3845525e6b7884919eaaab9e9285796c6053473b312b272423222126313c47535f6b77838f9ca8b2a6998c7f7265594c3f3226190c000000000000000013202c3946535f6c798693a0aca194887b6e6154483b2e2115080000030e18232e39444e59646f7a848f9aa5a89e93887d7784919eaba09386796d6053463a2d2013070000000815212d3a46525e6b7783909ca89e9285796c6054483b2f23160a0000000000000000000000000000000613202c3946535f6c787d7e808182838486796c6053473b302f2f3030303036424e5a6773808c99a5afa396897d7063574a3d3124170b0000000000000000000013202c3946535f6c798693a0acaca09386796c5f534640404040404040404040404040404040404040404040404040404040404040403f3d38312920160b0000000013202c3946535f6c7986888888888888887b6f6255483c2f221509000000000000000000000000000000000000000000000000000000000000000000000000000000040a0f121415151515151515151514110d0802000000000000000000000000000000000000000000000000000000000000000000000000000000000000000004080c0f1215171a1b1d1e1f1f20201f1f1e1d1c1a181613100d0905010000000000000000000000000000000000000000000e1a26323e48525a5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5d564d42372c2014070013202c3946535f6c798693a0acaca09386796c5f5346392c20130b0b0b0c0c0e0f1114171b20262c333b434d56606a747f8a95a0acada1968a7e73675b4f43372b1f1307000000000915222f3c4855626e7b8895a1aea99c9084776b5f544a413a342f2b2724211d1a1714120f0c0c1824303b4650595e5f5d5b59575452504e4b453e352b20150a00000013202c3946535f6c798693a0acaca09386796c5f53464646464646464646464646464646464646464646464646535f6c798693a0acada09386796d6053463a2d2013070000000000000000000000000000000000000000000000000b16212d38434d58636d77828c959fa8afa69d958c857d76706a65615d5a5856555454545556585a5d61656a70767d858c959da6ada49b91877d73695e54493e33281d1207000000000000000b1825323e4b5865717e8b8d8f8f908f8e8c8985807a736c645c544b41382e241a100600000000000000000000000000000000000000000000000000000000000000000c1925323f4c5865727e8c8e8e8e8e8e8e8174675a4d4134271a0e0100000000030e19232d38414b545c646b71777c80838587888888888685827f7b77726c665f58504b555f676f767b7f8183838382817e7c796e6155483b2f22150800111e2a3744505d6976838f9ca8ada194887c6f63584d433c3633312f2e2e2d2d37424e5b6773808c99a5b2a6998c7f7265594c3f3226190c000000000000000013202c3946535f6c798693a0aca194887b6e6154483b2e21150800000a141f2a35404a55606b75818b96a1aca2978c81767885929eaba09386796d6053463a2d20130700000005111e2a36424f5b6774808c99a5a195897c7064574b3f32261a0d01000000000000000000000000000006121f2c3845525e6b77848b8d8e8f9091887c6f63574c413c39373737383a3f47525e6a76828f9ba8ada094877b6e6255483c2f2316090000000000000000000013202c3946535f6c798693a0acaca09386796c5f534d4d4d4d4d4d4d4d4d4d4d4d4d4d4d4d4d4d4d4d4d4d4d4d4d4d4d4d4d4d4d4d4d4c49433b32271d120600000013202c3946535f6c7986939595959595887b6f6255483c2f2215090000000000000000000000000000000000000000000000000000000000000000000000000000080f161b1f21222222222222222222201e19130d050000000000000000000000000000000000000000000000000000000000000000000000000000000001060b1014181b1f212426282a2b2c2c2c2c2c2c2b2a282725221f1c1915110d0803000000000000000000000000000000000000000a16212c3740484f5253535353535353535353535353535353535353535353535353535353535353535353535353535353535353535353535353535353514b443b31261b0f030013202c3946535f6c798693a0acaca09386796c5f5346392c201818181819191a1c1e2023272c31373e454d565f68727c86919ca6b1a69b9085796e62564a3f33271b0f03000000000916222f3c4955626f7c8996a2afa79b8e8175685b4f43382f29231f1b1814110e0b08050205101c2834404c58626a6c6a686563615f5d5a5750473c32261a0e02000013202c3946535f6c798693a0acaca09386796c5f53463939393939393939393939393939393939393939393946535f6c798693a0acada09386796d6053463a2d201307000000000000000000000000000000000000000000000005111c27333e49545f6a747f89949ea7b1a79d948b837a736c655f5a55514e4b4948474747484a4b4e51555a5f656b737a838b949da7ada3998f857b70655b50453a2e23180c010000000000000b1825323e4b5865717e8b989b9c9c9c9b9995918b857e766e665d534a40362c22180d02000000000000000000000000000000000000000000000000000000000000000c1925323f4c5865727e8c989a9a9a9a8e8174675a4d4134271a0e01000000000915202a353f49535d666e767d83888c8f92949595959493918f8b88837d7771696259525d67717981878b8e8f908f8e8d8b887b6f6255483c2f221509000f1c2835424e5b6774808c99a5b0a4988c8074695f554d4743403e3c3b3a3a3a3a3f4b5864717d8a97a3b0a6998c7f7265594c3f3226190c000000000000000013202c3946535f6c798693a0aca194887b6e6154483b2e2115080006101b26313c46515c67727c87929da8a59b90857a707986929faca09386796d6053463a2d201307000000020e1a27333f4b5864707d8995a2a4988c8073675b4e4236291d1104000000000000000000000000000004111d2a36434f5c6874818d999a9c9d988c8074685d534c484644444444464a5059646f7a86929faba99d9185786c5f53463a2d2114080000000000000000000013202c3946535f6c798693a0acaca09386796c5f5959595959595959595959595959595959595959595959595959595959595959595959544d43392e23170b00000013202c3946535f6c798693a0a2a2a295887b6f6255483c2f2215090000000000000000000000000000000000000000000000000000000000000000000000000009121a21272b2e2e2e2e2e2e2e2e2e2e2d2a251e170e050000000000000000000000000000000000000000000000000000000000000000000000000001070c12171c2024282b2e313335363738393939393838363533312f2c2925211d18140e0903000000000000000000000000000000000005101a252e373e43464646464646464646464646464646464646464646464646464646464646464646464646464646464646464646464646464646464644403a32291f140a000013202c3946535f6c798693a0acaca09386796c5f5346392c2525252525252627282a2d3033383d42484f575f68717a848e98a2adaaa0958a7f73685d51453a2e22160b00000000000916222f3c4955626f7c8996a2afa79a8e8174675a4d4134271e17130f0b08070708080a0d1117212d3844505c697479767472706e6b696762594e43372b1e1205000013202c3946535f6c798693a0acaca09386796c5f5346392c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c3946535f6c798693a0acada09386796d6053463a2d20130700000000000000000000000000000000000000000000000a16222d38444f5a66717b86919ba5b0a99f958b82797169615a544e4945413e3d3b3a3a3b3b3d3f4245494e545a61687179828b959fa9aba1978c82776c61564b4034291d12060000000000000b1825323e4b5865717e8b98a1a1a2a4a7a5a19c97908880786f655c52483e34291f1409000000000000000000000000000000000000000000000000000000000000000c1925323f4c5865727e8c98a5a7a79a8e8174675a4d4134271a0e01000000040f1b26313c47515b656f7880878e94989c9ea0a1a2a2a1a09e9b98948f89827b746b6259636e79838b92979b9c9c9c9b9a95887b6f6255483c2f221509000d1a26333f4b5864707c8995a1aca89c91867b71675f58534f4c4a494847474646464956626f7c8996a2afa6998c7f7265594c3f3226190c000000000000000013202c3946535f6c798693a0aca194887b6e6154483b2e211508020c17222d38424d58636e78838e99a4aa9f94897e746d798693a0aca09386796d6053463a2d201307000000000b17232f3c4854616d7986929ea89b8f83766a5e5245392d2014080000000000000000000000000000010e1b2733404c5965717d8995a1a8a89c90857a6f655d5854525150505153565b626b75808c97a3afa5998d8175695c5044372b1e12050000000000000000000013202c3946535f6c798693a0acaca09386796c6666666666666666666666666666666666666666666666666666666666666666666666655f554b3f33271b0e02000013202c3946535f6c798693a0acafa295887b6f6255483c2f22150900000000000000000000000000000000000000000000000000000000000000000000000007111b242c32373a3b3b3b3b3b3b3b3b3b3936302920170d030000000000000000000000000000000000000000000000000000000000000000000000050c12181d23272c3034373a3d3f414344454646464645444342403e3b3835312d29241f1a140e08010000000000000000000000000000000009131c252c3237393939393939393939393939393939393939393939393939393939393939393939393939393939393939393939393939393939393938342f2820170d03000013202c3946535f6c798693a0acaca09386796c5f5346393232323232323233343537393c3f44484e535a6169717a838c96a0aaada3998e83786d62574c4035291d120600000000000916222f3c4955626f7b8895a2aea79a8e8174685b4e423529221d191715141414141517191d2229333e4955606c788583817e7c7a7876736a5f53463a2d211407000013202c3946535f6c798693a0acaca09386796c5f5346392c201f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f202c3946535f6c798693a0acada09386796d6053463a2d20130700000000000000000000000000000000000000000000040f1b27323e4a55606c77828d98a3adaca1978d837970675f574f48423d393532302f2e2e2e2f303235393d42484f575f677079838d97a2aca99e94897e73675c51453a2e23170b0000000000000b1825323e4b5865717e8b95949495989b9fa5a8a19a928a81776e645a50463b30261b10050000000000000000000000000000000000000000000000000000000000000c1925323f4c5865727e8c98a5b2a79a8e8174675a4d4134271a0e010000000915202c37424d58636d77818a92999fa4a8a5a09d9b9999999a9c9e9f9a948d867d756b626974808b959da3a7a69f9b989795887b6f6255483c2f221509000a1723303c4854606c7884909ba6aea2978d8379716a635f5b5957555554535353535255626f7b8895a2afa6998c7f7265594c3f3226190c000000000000000013202c3946535f6c798693a0aca194887b6e6154483b2e21150808131e29343e49545f69747f8a95a0aaa3988d82776d6d7a8794a0ada09386796d6053463a2d201307000000000714202c3845515d6a76828f9ba79f92867a6d6155493c3024170b0000000000000000000000000000000b1824303d4955616d7985909ba7ada1968b81776f6964615f5e5d5d5e5f62676d747d87929da8aba094897d7165594d4034281b0f030000000000000000000013202c3946535f6c798693a0acaca093867973737373737373737373737373737373737373737373737373737373737373737373737371675c4f43362a1d1104000013202c3946535f6c798693a0acafa295887b6f6255483c2f2215090000000000000000000000000000000000000000000000000000000000000000000000020d18232d363d434748484848484848484846413b32291f1409000000000000000000000000000000000000000000000000000000000000000000020910171d23292e33383c404447494c4e505152525353525251504e4c4a4845413d3935302b251f19130c05000000000000000000000000000000010a131a21262a2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2b28241d160e0500000013202c3946535f6c798693a0acaca09386796c5f53463e3e3e3e3e3e3e3f3f40424346484c4f54595f656c737b838c959ea8afa59b91877c72675c51463a2f24180d0100000000000815212e3b4854616e7a8794a0ada99c8f83766a5d51463b332d2926242221212021222326292d333b454f5a65717d89908d8b898785827a6e6154483b2e211508000013202c3946535f6c798693a0acaca09386796c5f5346392c2013131313131313131313131313131313202c3946535f6c798693a0acada09386796d6053463a2d201307000000000000000000000000000000000000000000000814202c38434f5b66727d88939fa9afa59a8f857b71675e554d453e37312d29252322212121222426292d32373e454d555e67717b85909ba5b0a59a8f84796d62564b3f33281c100400000000000b1825323e4b5865717e89888888898b8f949aa0a8a49c938a80766c62574d42372c21160b0000000000000000000000000000000000000000000000000000000000000c1925323f4c5865727e8c98a5b2a79a8e8174675a4d4134271a0e010000010d1925313d48545f6a757f89939ca4aaa7a09994918e8c8c8c8e8f9295999e978f877e746b6d7985919ca7afa59c948f8b8a8a887b6f6255483c2f221509000714202c3844505c68737e8a959fa9a99f958c837b756f6b6865636261616060605f5f5f626f7b8895a2afa6998c7f7265594c3f3226190c000000000000000013202c3946535f6c798693a0aca194887b6e6154483b2e2115080f1a25303a45505b65707b86919ca6a79c91867b71666e7b8794a1ada09386796d6053463a2d2013070000000004101c2935414e5a66737f8b98a4a2968a7d7164584c4033271b0e0200000000000000000000000000000814202c3945505c68737f8a959fa9a89d938a817a74706d6b6a6a6a6a6c6f72787e868f99a3aea4998e83786c6054483c3024180c000000000000000000000013202c3946535f6c798693a0acaca0938680808080808080808080808080808080808080808080808080808080808080808080808080776b5e5144382b1e1105000013202c3946535f6c798693a0acaca295887b6f6255483c2f221509000000000000000000000000000000000000000000000000000000000000000000000007131e2a353f484f53555555555555555555524c443b31261a0e0300000000000000000000000000000000000000000000000000000000000000040c131b22282e343a3f44484c505356585a5c5e5f5f5f5f5f5f5e5d5b595754514d4a45413c36312b241d160f07000000000000000000000000000000010910161a1e1f202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020201f1c18120c040000000013202c3946535f6c798693a0acaca09386796c5f534b4b4b4b4b4b4b4b4c4c4d4e505255585c60656a70767d858d959ea7afa69d938980756b60554a3f34291e13070000000000000713202d3946525f6c7885919eaaab9e92867a6e62574d453e393532302f2e2d2d2e2f303235393e454d57616c77828e999a9896938f83776a5e5246392d201407000013202c3946535f6c798693a0acaca09386796c5f5346392c2013060000000000000000000000000613202c3946535f6c798693a0acada09386796d6053463a2d201307000000000000000000000000000000000000000000000d1925303c4854606b77838e9aa5b0a99e93887e73695f554c433b332c26211c1917151414141517191d21262c333b434c555f69747e89949faaaca1958a7e73675c5044382c21150900000000000b1825323e4b5865717d7c7b7b7b7c7f83888f969ea6a59c92887e73695e53493e32271c110500000000000000000000000000000000000000000000000000000000000c1925323f4c5865727e8c98a5b2a79a8e8174675a4d4134271a0e01000005111e2a36424d5965707b86919ba5aea69d958e898481808080818386898e93999990867c73717d8a96a2aea99e938a837e7d7d807b6f6255483c2f2215090004101c28343f4b57626d78838d97a1a9a79e958d86807b777472706f6e6d6d6d6d6c6c6c6b6f7b8895a2afa6998c7f7265594c3f3226190c000000000000000013202c3946535f6c798693a0aca194887b6e6154483b2e21150b16212c36414c57616c77828d98a2aba0958a80756a616e7b8895a1ada09386796d6053463a2d20130700000000000d1925323e4a57636f7b8894a0a5998d8174685c4f43372a1e1205000000000000000000000000000004101c2834404b57626e78838e98a1aaa59c938b85817d7a7877767777797b7e83899098a1aba59c92887d72665b5044382c201408000000000000000000000013202c3946535f6c798693a0acaea2978e8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d84776b5e5144382b1e1105000013202c3946535f6c798693a0a0a0a095887b6f6255483c2f22150900000000000000000000000000000000000000000000000000000000000000000000000b17232f3b465159606161616161616161615e564d42372b1f1306000000000000000000000000000000000000000000000000000000000000060e161e252c333a40454b5054585c5f626567696a6b6c6c6c6c6b6a69686663605d5a56514c47423c362f282119110901000000000000000000000000000000050a0e11131313131313131313131313131313131313131313131313131313131313131313131313131313131313131313131313131313131312100c0701000000000013202c3946535f6c798693a0acaca09386796c5f58585858585858585858595a5b5d5f6164686c70757b81888f979fa7aea69d948b81776d63594e44392e23180d0100000000000005111e2b3744505d6975828e9aa6aea2968a7f74695f574f4a45423f3d3b3b3a3a3a3b3d3f41454a50575f69737d88939fa7a4a2968a7e72665a4e42362a1e1105000013202c3946535f6c798693a0acaca09386796c5f5346392c2013060000000000000000000000000613202c3946535f6c798693a0acada09386796d6053463a2d20130700000000000000000000000000000000000000000004111d2935414d5965707c88949fabafa3988d82766c61574d433a3129211b15100d0a08080708090a0d10151b2129313a434d57626c77838e99a4b0a69b8f84786c6155493d3125190d00000000000a1724303d4955616b71706f6e6e6f73777d848c949da6a49a90857b70655a4f44392d22160b00000000000000000000000000000000000000000000000000000000000c1925323f4c5865727e8c98a5b2a79a8e8174675a4d4134271a0e0100000915212e3a46525e6a76818d98a3ada89e948b837d78757373737476797d82878d94988f857a74818d9aa6afa3978c817872707173736b6054473b2e21150800000b17232f3a45515c67717b858f979fa6a79f98918c8784817e7d7c7b7a7a797979797978787b8895a2afa6998c7f7265594c3f3226190c000000000000000013202c3946535f6c798693a0aca194887b6e6154483b2e2115121d27323d48535d68737e89949ea9a4998e84796e63626f7b8895a2ada09386796d6053463a2d20130700000000000916222e3b4753606c7885919da99c9084776b5f53463a2e2115090000000000000000000000000000000c18232f3a46515c67717c868f98a0a7a59d96918c8987858483838485878b8f949ba2aaa49c938a80766b60554a3f33271c1004000000000000000000000013202c3946535f6c798693a0acb3a9a09a9a9a9a9a9a9a9a9a9a9a9a9a9a9a9a9a9a9a9a9a9a9a9a9a9a9a9a9a9a9a9a9a9a9a9a9184776b5e5144382b1e1105000013202c3946535f6c7986939393939393887b6f6255483c2f22150900000000000000000000000000000000000000000000000000000000000000000000000e1a2733404c57626b6e6e6e6e6e6e6e6e6e685e53473b2f2215090000000000000000000000000000000000000000000000000000000000060f18202830373e454b51565c6064686c6f7274757778797979797877767472706d6a66625d58534d47413a332b231b130a0100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000013202c3946535f6c798693a0acaca09386796c6565656565656565656565656668696b6e7174787c81878d939aa1a9aca49c948b82786f655b51473d32271d120700000000000000020f1c2834414d5966727e8a96a1ada79b90857b7169615b55514e4b4a484747474748494b4e51555b6169717b858f9aa5b0a89c91857a6e62564a3e32261a0e02000013202c3946535f6c798693a0acaca09386796c5f5346392c2013060000000000000000000000000613202c3946535f6c798693a0acada09386796d6053463a2d2013070000000000000000000000000000000000000000000814212d3945515d6975818d99a4b0a99e92877b70655a50453b31281f17100904000000000000000001040910171f28313b46505b66717c88949fabaca095897d7165594d4135291d1004000000000815212d39444f5961646362616163666c727a828b949ea8a1978c82766b60554a3e33281c1105000000000000000000000000000000000000000000000000000000000c1925323f4c5865727e8c98a5b2a79a8e8174675a4d4134271a0e0100000c1825313d4a56626e7a86929ea9aca1968c8279726c68666666686a6d71767c838a92968c8277838f9ca9ac9f93877b70666464666762594f43372b1f1306000006121e29343f4a555f69737c858d959ca1a6a39d9893908d8b8a8888878786868686868585858a96a2afa6998c7f7265594c3f3226190c000000000000000013202c3946535f6c798693a0aca194887b6e6154483b2e211519232e39444f59646f7a858f9aa5a89d92887d72675c626f7b8895a2ada09386796d6053463a2d201307000000000006121f2b3744505c6875818d9aa6a094877b6e62564a3d3125180c00000000000000000000000000000007121e2935404b55606a737d868e959ca2a7a29d99959392919090919294979ba0a5a6a09a928a81786e645a4f44392d22170b00000000000000000000000013202c3946535f6c798693a0acacacaba7a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a69e9184776b5e5144382b1e1105000013202c3946535f6c7986868686868686867b6f6255483c2f22150900000000000000000000000000000000000000000000000000000000000000000000000f1c2835424e5b68747b7b7b7b7b7b7b7b7a6f63564a3d3024170a00000000000000000000000000000000000000000000000000000000060f18212a323a41494f565c62676c7175787b7e8182848586868686858483817e7c7976726e69645e58524b443d352d251c130a01000000000000000000000000000000000000000000000000000000000000000000000306080808080808080808080603000000000000000000000000000000000000000000000000000000000000000013202c3946535f6c798693a0acaca093867971717171717171717171717272737476787a7d8184888d92989ea4aba8a19a928a827970665d534a3f352b20160b0000000000000000000c1925313d4956626d7985909ba6ada2978d837a736c66615d5a585655545353545556585a5d61666c737b838d96a1abaca1968b8074695d51463a2e22160a00000013202c3946535f6c798693a0acaca09386796c5f5346392c2013060000000000000000000000000613202c3946535f6c798693a0acada09386796d6053463a2d2013070000000000000000000000000000000000000000000c1824303d4955616d7986929da9b0a4988d81756a5f54493e33291f160d0500000000000000000000000000050d161f29343f4a55606b77838e9aa6b1a5998e8275695d5145392d2014080000000005111c28333e474f555756555555565b61687079828c96a0a99e93887d72665b4f44392d22160a000000000000000000000000000000000000000000000000000000000c1925323f4c5865727e8c98a5b2a79a8e8174675a4d4134271a0e0100000e1b2734404d5965727e8a97a3afa79b90857a7067605c5a59595b5d61656b717880889193897d84919eaaa99c9083776b5e57585a5a5750473d32271b0f030000010c18232e39434d57616a737b838a90969b9fa2a3a09c9a9896959494949393939292929291939ca6b2a6998c7f7265594c3f3226190c000000000000000013202c3946535f6c798693a0aca194887b6e6154483b2e21151f2a35404b55606b76818b96a1aca1968b81766b6055626f7b8895a2ada09386796d6053463a2d2013070000000000030f1b2834404d5965717e8a96a3a3978b7e7266594d4134281c0f030000000000000000000000000000010d18232e39434e58616b737c838a91969b9fa3a5a2a09e9d9d9d9d9fa0a3a5a29f9a958f8880786f665c52483d32271c110600000000000000000000000013202c3946535f6c798693a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a09e9184776b5e5144382b1e11050000131f2c3946525f6b767979797979797979786d6155483b2f22150800000000000000000000000000000000000000000000000000000000000000000000000f1c2835424f5b687582888888888888887d7063574a3d3024170a000000000000000000000000000000000000000000000000000000050f18212a333c444c535a61676d73787c8185888b8d8f90929293939292918f8d8b8986827e7a756f6a635d564f473f372e251c130a0000000000000000000000000000000000000000000000000000000000000000050b0f1314151515151515151514120f0a0500000000000000000000000000000000000000000000000000000000000013202c3946535f6c798693a0acaca093867e7e7e7e7e7e7e7e7e7e7e7e7e7f8081838487898d9094999ea3a9aaa49d978f8880786f675e544b41382e23190f040000000000000000000915212d3945515d68747f8a959fa9a99f958c857d77726d6a6765636261606061616364676a6d72777d858d959fa8aea49a90857a6e63584c4135291d110600000013202c3946535f6c798693a0acaca09386796c5f5346392c2013060000000000000000000000000613202c3946535f6c798693a0acada09386796d6053463a2d2013070000000000000000000000000000000000000000020f1b2734404c5965717d8a96a2aeaca094887c7065594e42372c22170d04000000000000000000000000000000040e18222d38434f5b66727e8a96a2aeaa9e9286796d6155493c3024170b00000000000b17212c353d44494b4a4848484a4f565e67707a848f99a4a4998e83776c61554a3e33271b10040000000000000000000000000000000000000000000000000000000c1925323f4c5865727e8c98a5b2a79a8e8174675a4d4134271a0e010000101d2936424f5c6875818e9aa6afa3978b7e73685e55504d4c4d4e51555a5f666e767e88918f8486929faba79a8e8174685b4f4b4d4e4b463e352b21160a0000000006111c27313c464f58616971787f858a8f9296999b9d9fa0a1a2a1a0a0a0a0a09f9f9f9e9e9fa5aeb2a6998c7f7265594c3f3226190c000000000000000013202c3946535f6c798693a0aca194887b6e6154483b2e211b26313c47515c67727d88929da8a59a8f857a6f645955626f7b8895a2ada09386796d6053463a2d2013070000000000000c1824313d4955626e7a87939fa69a8e8275695d5044382b1f130600000000000000000000000000000007121d27323c464f59616a727980858a8f9396999b9c9e9e9f9f9f9e9d9b9996938e89847d766e665d544a40362c21160b0000000000000000000000000013202c3946535f6c79869393939393939393939393939393939393939393939393939393939393939393939393939393939393939184776b5e5144382b1e11050000111e2a37434f5a646b6c6c6c6c6c6c6c6c6c665c5145392d20140700000000000000000000000000000000000000000000000000000000000000000000000f1c2835424f5b6875828f95959595958a7d7063574a3d3024170a0000000000000000000000000000000000000000000000000000030d17212a333c454e565d656c72797e84898d919497999b9d9e9fa0a09f9e9d9c9a9895928e8a85817b756e686159514940372e251c12080000000000000000000000000000000000000000000000000000000000000810161b1f212222222222222222211f1b160f08000000000000000000000000000000000000000000000000000000000013202c3946535f6c798693a0acaea2968d8b8b8b8b8b8b8b8b8b8b8b8b8c8c8d8e8f919396999ca0a5a9a8a39e98928c857e766e665d554c42392f261c12070000000000000000000005111d2935404c57626d78838d97a0a9a89f968f88837e797673716f6e6d6d6d6d6e6f717376797e83898f979fa8aea69c92887e73685d52473b3024180d0100000013202c3946535f6c798693a0acaca09386796c5f5346392c2013060000000000000000000000000613202c3946535f6c798693a0acada09386796d6053463a2d201307000000000000000000000000000000000000000005121e2a3743505c6875818d9aa6b2a89c9083776b5f54483c31261b1005000000000000000000000000000000000006111c27323e4a56616d7986929eaaaea296897d7165584c3f33271a0e010000000005101a232c33393c3e3d3c3b3b3e444c555e68727d88929da89f94897d72665b4f43382c2015090000000000000000000000000000000000000000000000000000000c1925323f4c5865727e8c98a5b2a79a8e8174675a4d4134271a0e010000111e2b3844515d6a7784909da9aca093877a6e62574c444040404245494e555c646c758089948f9097a2aea6998c807366594d4041413f3a342c231a0f0400000000000b15202a343d464f585f676e74797e83868a8c8f919293949596969696969797979898989aa0aab2a6998c7f7265594c3f3226190c000000000000000013202c3946535f6c798693a0aca194887b6e6154483b2e21222d38434d58636e79848e99a4a99e93897e73685d5355626f7b8895a2ada09386796d6053463a2d2013070000000000000815212d3946525e6b7783909ca89e9185786c6054473b2f22160a000000000000000000000000000000000b16202a343d474f5860676e747a7e83878a8c8e90919292929291908f8c8a86827d78726b645c544b42382e241a0f040000000000000000000000000013202c3946535f6c79868686868686868686868686868686868686868686868686868686868686868686868686868686868686868684776b5e5144382b1e110500000e1a26323e48525a5f5f5f5f5f5f5f5f5f5f5b544a4034291d110400000000000000000000000000000000000000000000000000000000000000000000000f1c2835424f5b6875828f9ca2a2a2978a7d7063574a3d3024170a00000000000000000000000000000000000000000000000000000a151f29333c454e575f676f767d848a8f94999da1a3a6a8a9a7a6a6a6a6a7a9a9a7a4a19e9a96918c868079726b635b524940372e241a10060000000000000000000000000000000000000000000000000000000009121a21272b2e2e2e2e2e2e2e2e2e2e2b27211a12090000000000000000000000000000000000000000000000000000000013202c3946535f6c798693a0acb3a89f999898989898989898989898989899999a9c9ea0a2a5a9a8a5a19c98938d87817a736c645c544b433a30271e140a0000000000000000000000000c18242f3b46515c67717b858e979fa6a8a19a948e8a8683807e7c7b7a7a7a7a7b7c7d8082868a8e949aa1a9aca59c948a81766c61574c41352a1f13080000000013202c3946535f6c798693a0acaca09386796c5f5346392c2013060000000000000000000000000613202c3946535f6c798693a0acada09386796d6053463a2d20130700000000000000000000000000000000000000000814212d3a46535f6b7884919da9b0a4988c8073675b4f43372c201409000000000000000000000000000000000000000a16222d3945515d6976828e9ba7b2a5998d8174685b4f4236291d1004000000000008111a21282d3031312f2e2f333a434c56616b76818c97a3a59a8e83776c6054493d31251a0e0200000000000000000000000000000000000000000000000000000c1925323f4c5865727e8c98a5b2a79a8e8174675a4d4134271a0e010000121f2c3945525f6b7885929eabaa9e9184786b5f52463a34333335383d434a525a646d77828d979ca1a9b2a6998c7f7265594c3f3434332f29221a1108000000000000030e18222b343d464e555c62686d72767a7d808284868788888989898a8a8a8a8a8b8b8b8e98a4b0a6998c7f7265594c3f3226190c000000000000000013202c3946535f6c798693a0aca194887b6e6154483b2e2129343f49545f6a75808a95a0aba2978d82776c61574c55626f7b8895a2ada09386796d6053463a2d20130700000000000005111e2a36424f5b6774808c99a5a195887c6f63574b3e3226190d01000000000000000000000000000000040e18222b353d464e555c63696e73777a7d8082838485858685848382807d7a76726d67615a524a423930261c12080000000000000000000000000000131f2c3946525f6b76797979797979797979797979797979797979797979797979797979797979797979797979797979797979797979756a5d5144372b1e110400000a16212c3740484f52535353535353535352504a42382e23180c0000000000000000000000000000000000000000000000000000000000000000000000000f1c2835424f5b6875828f9ca8aea4978a7d7063574a3d3024170a0000000000000000000000000000000000000000000000000007121c27313b454e576069717981888f959ba0a5a9a7a4a09e9c9b9a99999a9a9c9ea0a3a7aaa6a29d97918b847d756d645b524940362c22170d02000000000000000000000000000000000000000000000000000007111b242c33383a3b3b3b3b3b3b3b3b3a37322c241b110700000000000000000000000000000000000000000000000000000013202c3946535f6c798693a0acacaca9a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a6a7a9a8a6a4a29f9c9995918c87827c766f69615a524a423931281e150c0200000000000000000000000007131e2935404a555f69737c858d959ca2a8a59f9a96928f8c8a89888787878788898a8c8f92969a9fa5aca8a19a938a81786e655a50453a2f24190e020000000013202c3946535f6c798693a0acaca09386796c5f5346392c2013060000000000000000000000000613202c3946535f6c798693a0acada09386796d6053463a2d20130700000000000000000000000000000000000000000a1623303c4955626e7b8794a0acada195887c6f63574b3f33271b0f030000000000000000000000000000000000000005111d2935414d5a66727e8b98a4b0a99c9084776a5e5145382c1f13060000000000000810161c2123242422222228313a444f5a646f7b86919da89f94887c7165594e42362a1f130700000000000000000000000000000000000000000000000000000c1925323f4c5865727e8c98a5b2a79a8e8174675a4d4134271a0e01000013202c3946535f6c7986929facaa9d9083766a5d5043372a2627292c32384048525b66707b86919da8b3b2a6998c7f7265594c3f322826231e18100800000000000000030d161e252b343c434b51575d62666a6e71737577797a7b7b7c7c7d7d7d7d7d7d7e7e7e8895a2afa6998c7f7265594c3f3226190c000000000000000013202c3946535f6c798693a0aca194887b6e6154483b2e25303b45505b66717b86919ca7a69b91867b70655b504855626f7b8895a2ada09386796d6053463a2d201307000000000000020e1a26333f4b5864707d8995a2a4988c7f73675a4e4235291d100400000000000000000000000000000000061019232b343c444b52575d62676a6e71737576777879797878777573716e6a66615c564f48403830271e140a010000000000000000000000000000111e2a37434f5a646b6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6b63594d4135291c1003000005101a252e373e4346464646464646464646433f3830261c12070000000000000000000000000000000000000000000000000000000000000000000000000f1c2835424f5b6875828f9ca8b0a4978a7d7063574a3d3024170a000000000000000000000000000000000000000000000000030e19232e38434d576069727b838b939aa0a6aba5a09b9794918f8e8d8d8d8d8e8f9194979a9fa4a9a8a39c968f877f766d645b52483e34291f140900000000000000000000000000000000000000000000000000030e19232d363e4447484848484848484847433d362d23190e02000000000000000000000000000000000000000000000000000013202c3946535f6c798693a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a09f9f9e9d9b9a989593908c8985807b76706b645e575048403830271f160c0300000000000000000000000000020d18232e39434d57616a737b838a91979ca1a6a6a29e9b9997969594949494949597999b9ea2a6a9a6a19c96908981786f665d53483e34291e1308000000000013202c3946535f6c798693a0acaca09386796c5f5346392c2013060000000000000000000000000613202c3946535f6c798693a0acada09386796d6053463a2d20130700000000000000000000000000000000000000000c1925323e4b5764717d8a96a3afab9e9285796c6054473b2f23160a0000000000000000000000000000000000000000010d1925313e4a56636f7c8895a1aeac9f9386796d6054473b2e22150800000000000000050b10141718171615161f28333d48535e6975818c98a3a5998d82766a5e53473b2f23170c00000000000000000000000000000000000000000000000000000c1925323f4c5865727e8c98a5b2a79a8e8174675a4d4134271a0e01000013202c3946535f6c798693a0acaa9d908376695d5043362a1d1a1c21272e364049545f6a75808c98a3afb2a6998c7f7265594c3f32261917120d0600000000000000000b151f282f363a3d3e40464c51565a5e616467696b6c6d6e6f6f6f70707070717171717b8895a2afa6998c7f7265594c3f3226190c000000000000000013202c3946535f6c798693a0aca194887b6e6154483b2e2c37414c57626d77828d98a3aa9f958a7f74695f54494855626f7b8895a2ada09386796d6053463a2d201307000000000000000b17232f3c4854616d7986929ea79b8f83766a5e5145392c2014070000000000000000000000000000000000071019222a323940464c52565a5e616466686a6b6b6c6c6b6b6a686764615e5a55504a443d362f261e150c020000000000000000000000000000000e1a26323e48525a5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5e5951473c3125190d0000000009131c252c32373939393939393939393937332d261e140b000000000000000000000000000000000000000000000000000000000000000000000000000f1c2835424f5b6875828f9ca8b0a4978a7d7063574a3d3024170a00000000000000000000000000000000000000000000000009141f2a35404a555f68727b858d959da5aba6a099948f8b8885838181808081818385878a8e93989ea4aba7a099918980766d645a50453b30261b100500000000000000000000000000000000000000000000000008141f2a353f484f545555555555555555534f483f352a1f1307000000000000000000000000000000000000000000000000000013202c3946535f6c79869393939393939393939393939393939393939393929291908f8d8b898683807c78746f6a655f59534c453e362e261e150d0400000000000000000000000000000007121c27313b454e58616971787f868c91959a9da1a3a6a6a4a2a1a1a0a0a1a1a2a3a5a7a5a3a09d9a95918b857e776f665d544b41372c22170c01000000000013202c3946535f6c798693a0acaca09386796c5f5346392c2013060000000000000000000000000613202c3946535f6c798693a0acada09386796d6053463a2d20130700000000000000000000000000000000000000000e1a2734404d596673808c99a5b2a89c8f83766a5d5144382b1f13060000000000000000000000000000000000000000000916222e3b4754606d7986939facaea195887c6f6256493d3023170a00000000000000000004080a0b0b09080d16212c37424d58646f7b87939eaa9e92877b6f63574c4034281c1004000000000000000000000000000000000000000000000000000c1925323f4c5865727e8c98a5b2a79a8e8174675a4d4134271a0e01000013202c3946535f6c7986929facaa9d9084776a5e5144382b201b18161c242e38424d58646f7b87939fabb2a6998c7f7265594c3f3226190c0601000000000000000006121d27313a41474a4b4c4d4e4f50525355585a5c5e5f6161626363636363636464646f7b8895a2afa6998c7f7265594c3f3226190c000000000000000013202c3946535f6c798693a0aca194887b6e6154483b2e333d48535e69737e89949fa9a3998e83786d63584d424855626f7b8895a2ada09386796d6053463a2d201307000000000000000713202c3845515d6a76828f9ba79f9286796d6155483c3023170b00000000000000000000000000000000000007101820272e353b41464a525d666a6b6b6b6b68605f5f5e5d5c5a5855524e4a453f39332c241d140c03000000000000000000000000000000000a16212c3740484f52535353535353535353535353535353535353535353535353535353535353535353535353535353535353535353524e473f352b20140900000000010a131a21262a2c2c2c2c2c2c2c2c2c2c2b27221c140c02000000000000000000000000000000000000000000000000000000000000000000000000000f1c2835424f5b6875828f9ca8b0a4978a7d7063574a3d3024170a0000000000000000000000000000000000000000000000040f1a26313c47515c66707a848e979fa7aca39c958e89837f7b787674737373737476787b7e82878d939aa1a9aba39b928980766c61574d42372c21160b0000000000000000000000000000000000000000000000000c1824303c47515a606161616161616161605a51473b3024180b000000000000000000000000000000000000000000000000000013202c3946535f6c798686868686868686868686868686868686868686868685848382817e7c7a7774706c68645f5a544e48413b332c241c140c0300000000000000000000000000000000000b151f29333c464e575f666e747a8085898d919497999b9c9d9e9f9f9f9f9f9e9d9c9b999794918d8985807a736c655d544b42392f251b100600000000000013202c3946535f6c798693a0acaca09386796c5f5346392c2013060000000000000000000000000613202c3946535f6c798693a0acada09386796d6053463a2d20130700000000000000000000000000000000000000000f1c2835424e5b6874818e9aa7b3a69a8d8174675b4e4235291c100300000000000000000000000000000000000000000006131f2c3845525e6b7784919daab0a3978a7d7164584b3e3225180c00000000000000000000000000000000050f1a25303c47535f6a76828e9aa6a3978c8074685c5044382d211509000000000000000000000000000000000000000000000000000c1925323f4c5865727e8c98a5b2a79a8e8174675a4d4134271a0e010000121f2c3845525e6b7884919eaaab9e9285796c6053473c322b272523222126313c47535f6b77838f9ba8b2a6998c7f7265594c3f3226190c000000000000000000000b17232e39434c525657595a5b5c5d5e5f5e59515051535455555656565657575757626f7b8895a2afa5998c7f7265594c3f3226190c000000000000000013202c3946535f6c798693a0aca194887b6e6154483b2f39444f5a646f7a85909ba5a79d92877c71675c51463c4855626f7b8895a2ada09386796d6053463a2d2013070000000000000004101c2935414e5a66737f8b97a4a296897d7164584c3f33271a0e02000000000000000000000000000000000000060e161d242a30353d4a56636e7777777777726a625951514f4d4b4945423e39342e28211a130b02000000000000000000000000000000000005101a252e373e434646464646464646464646464646464646464646464646464646464646464646464646464646464646464646464645423d362d23190e030000000000010910161a1e1f2020202020202020201e1b17110a0200000000000000000000000000000000000000000000000000000000000000000000000000000f1c2835424f5b6875828f9ca8b0a4978a7d7063574a3d3024170a00000000000000000000000000000000000000000000000915202b37424d58636e78828c96a0a9aba29a928a837d77736f6c69686766666768696b6e72767b81888f979fa8ada49b91887e73695e53493d32271c100500000000000000000000000000000000000000000000000e1b2834404c58636c6e6e6e6e6e6e6e6e6b63584c4034271b0e0100000000000000000000000000000000000000000000000000131f2c3946525f6b7679797979797979797979797979797979797979797979787776757472706d6a6764605c58534e49433d363029221a130b02000000000000000000000000000000000000030d17212b343c454d555c63696f74797d8185888a8c8e909192929292929291908f8e8c8a8785817d79746e68625b534b423930271d13090000000000000013202c3946535f6c798693a0acaca09386796c5f5346392c2013060000000000000000000000000613202c3946535f6c798693a0acada09386796d6053463a2d2013070000000000000000000000000000000000000000101d2a3643505d6976838f9ca9b1a5988b7e7265594c4033261a0d0100000000000000000000000000000000000000000004111d2a3643505c6976828f9ca8b2a5988c7f7266594c4033261a0d000000000000000000000000000000000009141f2b36424e5a65717d8995a1a89c9084786d6155493d3125190d020000000000000000000000000000000000000000000000000c1925323f4c5865727e8c98a5b2a79a8e8174675a4d4134271a0e010000111e2a3744505d6976838f9ca8ada194887c7064584d443c373431302f2e2e2d36424e5b6773808c99a5b2a6998c7f7265594c3f3226190c000000000000000000030f1c28343f4b555d6364656667696a6b6c6b63594e454647484949494a4a4a4a4a56636f7c8996a2afa5988c7e7265584c3f3225190c000000000000000013202c3946535f6c798693a0aca194887b6e6154483b35404b56616b76818c97a1aba1968b80756b60554a3f3c4855626f7b8895a2ada09386796d6053463a2d20130700000000000000000d1925323e4a57636f7b8894a0a5998d8074685b4f43362a1e110500000000000000000000000000000000000000040b12191e24313e4a5764717d848484847c746b635b534a423f3c3936322d28231d161008010000000000000000000000000000000000000009131c252c3237393939393939393939393939393939393939393939393939393939393939393939393939393939393939393939393936322b241b11070000000000000000050a0e1113131313131313131313120f0b06000000000000000000000000000000000000000000000000000000000000000000000000000000000f1c2835424f5b6875828f9ca8b0a4978a7d7063574a3d3024170a00000000000000000000000000000000000000000000020e1a26313d48535f6a75808a949ea8ada39990888078726c67635f5d5b5a59595a5b5d5f62666b70767d858d959ea8ada39a8f857b70655a4f44382d21150a0000000000000000000000000000000000000000000000101c2936434f5c69757b7b7b7b7b7b7b7b74685c4f4235291c0f0300000000000000000000000000000000000000000000000000111e2a37434f5a646b6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6b6b6a68676563615e5b5854504c47423d37322b251e171008010000000000000000000000000000000000000000050f19222a333b434a51585e63686d7175787b7d8082838485868686868585848381807d7b7875716d68635d575049413930271e150b010000000000000013202c3946535f6c798693a0acaca09386796c5f5346392c2013060000000000000000000000000613202c3946535f6c798693a0acaca09386796d6053463a2d2013070000000000000000000000000000000000000000111e2b3844515e6a7784919daab0a3978a7d7164574b3e3125180b00000000000000000000000000000000000000000000010f1c2835424e5b6874818e9ba7b3a69a8d8173675a4d4134271b0e000000000000000000000000000000000004101c27333f4b57636e7a8693a0aca195897d7165594e42362a1e12060000000000000000000000000000000000000000000000000c1925323f4c5865727e8c98a5b2a79a8e8174675a4d4134271a0e0100000f1c2835424e5b6773808c99a5b0a4988c8075695f564e4743403e3d3c3b3a3a3a3f4b5764717d8a97a3b0a6998c7f7265594c3f3226190c00000000000000000005121e2b3844505c676f7172737475777879756a5e5145393a3b3c3c3c3d3d3d3e4b5864717d8a97a4b0a4988b7e7165584b3e3225180b000000000000000013202c3946535f6c798693a0aca194887b6e6154483b3c47525d67727d88939da8a59a8f84796f64594e43393c4855626f7b8895a2ada09386796d6053463a2d20130700000000000000000916222e3b47535f6c7884919da99c9084776b5f52463a2d211508000000000000000000000000000000000000000001070d1724313d4a57636f7a848e918e867d756d655c544c443c332b26211c17110b05000000000000000000000000000000000000000000010a131a21262a2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2a26201a1209000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000f1c2835424f5b6875828f9ca8b0a4978a7d7063574a3d3024170a0000000000000000000000000000000000000000000007131f2b36424e5965707b86919ca6b0a59b91877e766e67605b5753504e4d4d4d4d4e5053565a5f656b737b838c96a0aaaba1978c82766b6055493e32261a0e0300000000000000000000000000000000000000000000101c2936434f5c6976838888888888888275695c4f4236291c0f03000000000000000000000000000000000000000000000000000e1a26323e48525a5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5e5d5c5a595654524f4b4844403b37312c26201a130d0500000000000000000000000000000000000000000000000710182129313940464d52585d6165696c6f71737576777879797979787877767473716e6c6965615c57524c453e372f271e150c03000000000000000013202c3946535f6c798693a0a0a0a09386796c5f5346392c2013060000000000000000000000000613202c3946535f6c798693a0a0a0a09386796d6053463a2d2013070000000000000000000000000000000000000000121f2c3845525f6b7885929eabafa296897c6f6356493d3023170a00000000000000000000000000000000000000000000000e1a2734414d5a6773818d9aa6b3a79b8e8174685b4e4235281b0f00000000000000000000000000000000000915202c3844505c67737f8b97a3afa59a8e82766a5e52463a2e22170b0000000000000000000000000000000000000000000000000c1925323f4c5865727e8c98a5b2a79a8e8174675a4d4134271a0e0100000d1a26333f4b5864707c8995a0aca89d91867b71685f59534f4d4b494848474747464956626f7c8995a2afa6998c7f7265594c3f3226190c0000000000000000000613202c3946535f6c787d7e808182838486796c6053473b302f2f3030303036424e5a6773808c99a5afa396897d7063574a3d3124170b000000000000000013202c3946535f6c798693a0aca194887b6e6154483b434e58636e79848f99a4a89e93887d73685d52473d323c4855626f7b8895a2ada09386796d6053463a2d201307000000000000000006121f2b3743505c6875818d9aa6a093877a6e6256493d3124180c000000000000000000000000000000000000000000000916222e3b47535e68727c8791988f877f766e665e564e453d352d241c140c040000000000000000000000000000000000000000000000010910161a1e1f2020202020202020202020202020202020202020202020202020202020202020202020202020202020202020201f1d1a150f0800000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000f1c2835424f5b6875828f9ca8b0a4978a7d7063574a3d3024170a000000000000000000000000000000000000000000000b17232f3b47535e6a76818d98a3ada99e93897f756c645c554f4a474442414040404244464a4e545a6169717a848e98a3ada99e93887c71665a4e43372b1f130700000000000000000000000000000000000000000000101c2936434f5c69768390959595958f8275695c4f4236291c0f03000000000000000000000000000000000000000000000000000a16212c3740484f52535353535353535353535353535353535353535353535251504f4e4c4a4845423f3c38342f2b26211b150f090200000000000000000000000000000000000000000000000000060f171f272e353b41474c5155595c5f62646668696b6b6c6c6c6c6b6b6a69686664625f5c5955514c46413a342d251d150c0300000000000000000013202c3946535f6c798693939393939386796c5f5346392c2013060000000000000000000000000613202c3946535f6c798693939393939386796d6053463a2d2013070000000000000000000000000000000000000000131f2c3946525f6c7986929facafa295887b6f6255493c2f22160900000000000000000000000000000000000000000000000d1a2633404d596673808c99a6b3a89b8f8275685b4f4235281c0f00000000000000000000000000000000020d1925313d4954606c7884909ca7b3aa9e92867a6e63574b3f33271b0f0300000000000000000000000000000000000000000000000c1925323f4c5865727e8c98a5b2a79a8e8174675a4d4134271a0e0100000a17232f3c4854606c7884909ba6aea2988d837a716a645f5c5957565554545353535355626f7b8895a2afa6998c7f7265594c3f3226190c00000000000000000006121f2c3845525e6b77848b8d8e8f9091887c6f63574c413c39373737383a3f47525e6a76828f9ba8ada094877b6e6255483c2f231609000000000000000013202c3946535f6c798693a0aca194887b6e6154483f4a545f6a75808b95a0aba2978c81766c61564b41362f3c4855626f7b8895a2ada09386796d6053463a2d2013070000000000000000030f1b2834404c5965717e8a96a3a3978a7e7265594d4034281b0f0300000000000000000000000000000000000000000006121f2b36414c56606a757f8993999189817870685f574f473f362e261e160d05000000000000000000000000000000000000000000000000050a0e111313131313131313131313131313131313131313131313131313131313131313131313131313131313131313131313110e09040000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000f1c2835424f5b6875828f9ca8b0a4978a7d7063574a3d3024170a000000000000000000000000000000000000000000020f1b27333f4b57636f7b87929ea9aea3978c82776d635a524a443f3a37353433333435373a3e42484f575f68727c86919ca7afa4998e82766b5f53473b2f23170b00000000000000000000000000000000000000000000101c2936434f5c697683909ca2a29c8f8275695c4f4236291c0f030000000000000000000000000000000000000000000000000005101a252e373e43464646464646464646464646464646464646464646464645454442413f3d3b3936332f2c28241f1a15100a0400000000000000000000000000000000000000000000000000000000050d151c232a30363b4045494d505356585a5b5d5e5f5f5f5f5f5f5e5d5d5b5a585553504d4945403b352f29221b130b030000000000000000000013202c3946535f6c798686868686868686796c5f5346392c2013060000000000000000000000000613202c3946535f6c798686868686868686796d6053463a2d201307000000000000000000000000000000000000000013202c3946535f6c7986929facaea295887b6e6155483b2f22150800000000000000000000000000000000000000000000000d1926333f4c5966727f8c99a6b2a99c8f8275695c4f4236291c0f0000000000000000000000000000000006121e2a36414d5965717d8994a0acb8afa3978b7f73675b4f43382c20140800000000000000000000000000000000000000000000000c1925323f4c5865727e8c98a5b2a79a8e8174675a4d4134271a0e0100000713202c3844505c67737e8a949fa9a99f958c837c75706b686664636261616060605f5f626f7b8895a2afa6998c7f7265594c3f3226190c00000000000000000004111d2a36434f5c6874818d999a9c9d988c8074685d534c484644444444464a5059646f7a86929faba99d9185786c5f53463a2d211408000000000000000013202c3946535f6c798693a0aca194887b6e61544846505b66717c87919ca7a69b90857a70655a4f453a2f2f3c4855626f7b8895a2ada09386796d6053463a2d2013070000000000000000000c1824303d4955626e7a87939fa69a8e8175695c5044372b1f1206000000000000000000000000000000000000000000020e1a25303a444e59636d77818b969b928a827a716961595148403830281f170f070000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000f1c2835424f5b6875828f9ca8b0a4978a7d7063574a3d3024170a00000000000000000000000000000000000000000006121e2b37434f5c6874808c97a3afa99d92867b70655b51484039332e2b2927262627282a2e32373d454d56606a74808b96a1adaa9f93877b6f64574b3f33271b0e020000000000000000000002070a0b0c0c0c0c0c0c0c101c2936434f5c697683909ca9a99c8f8275695c4f4236291c0f0c0c0c0c0c0c0c0b0a07020000000000000000000000000000000009131c252c32373939393939393939393939393939393939393939393939393837363433312f2c292623201c18130e090400000000000000000000000000000000000000000000000000000000000000030b12181f252a3034393d404447494b4d4f50515252525352525151504f4d4b494644403d39342f2a241e171009010000000000000000000000131f2c3946525f6b767979797979797979766b5f5246392c1f130600000000000000000000000006131f2c3946525f6b767979797979797979766b5f5346392d201306000000000000000000000000000000000000000013202c3946535f6c798693a0acaea295887b6e6155483b2e22150800000000000000000000000000000000000000000000000c1926323f4c5965727f8c99a6b2a99c8f8275695c4f4236291c0f000000000000000000000000000000000b17232f3a46525e6a76828d99a5b1b1b2a79b9084786c6054483c3024180c01000000000000000000000000000000000000000000000c1925323f4c5865727e8c98a5b2a79a8e8174675a4d4134271a0e010000030f1c28333f4b56626d78838d97a0a9a79e958d87817b787572716f6e6e6d6d6d6d6c6c6c6f7b8895a2afa6998c7f7265594c3f3226190c000000000000000000010e1b2733404c5965717d8995a1a8a89c90857a6f655d5854525150505153565b626b75808c97a3afa5998d8175695c5044372b1e1205000000000000000013202c3946535f6c798693a0aca194887b6e6154484c57626d78838d98a3aa9f94897e74695e53493e33282f3c4855626f7b8895a2ada09386796d6053463a2d2013070000000000000000000815212d3946525e6b7783909ca89d9185786c6053473b2e2216090000000000000000000000000000000000000000000008131e28323d47515b656f7a848e989c948c847b736b635a524a423a31292119100700000000000000000000000000000000000000000000000000000000000000000000010407090a0b0c0c0c0c0b0a080604010000000000000000000000000305060707070605040200000000000000000000000000000000000000000000000000000000000000000000040608080808080808080806040000000000000000000000000000000000000000000000000000000f1c2835424f5b6875828f9ca8b0a4978a7d7063574a3d3024170a0000000000000000000000000000000000000000000915222e3a47535f6c7884909ca8b0a4988c8175695e54493f362e27221e1c1a1a1a1a1c1e21262c333b444e58636e7985909ca8b0a4988c8074685b4f43372a1e1105000000000000000001080e13161819191919191919191c2936434f5c697683909ca9a99c8f8275695c4f4236291c19191919191919191816130e08010000000000000000000000000000010a131a21262a2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2b2a2928262422201d1a1713100b07030000000000000000000000000000000000000000000000000000000000000000000000070d14191f24282d3134373a3d3f4142434445464646464545444342403e3c3a3734302d28241e19130d0600000000000000000000000000111e2a37434f5a646b6c6c6c6c6c6c6c6c6b645a4f43372a1e110500000000000000000000000005111e2a37434f5a646b6c6c6c6c6c6c6c6c6b645a4f43372b1e12050000000000000000000000000000000000000000131f2c3946525f6c7986929facaea295887b6f6255483c2f22150900000000000000000000000000000000000000000000000d192633404c596673808c99a6b2a89c8f8275685c4f4236291c0f00000000000000000000000000000004101c27333f4b57636e7a86929eaaa7a4a5aaa094887c7064584d4135291d1105000000000000000000000000000000000000000000000c1925323f4c5865727e8c98a5b2a79a8e8174675a4d4134271a0e010000000b17232e3a45515c66717b858e979fa6a79f98928c8884817f7d7c7b7b7a7a7a79797979787b8895a2afa6998c7f7265594c3f3226190c000000000000000000000b1824303d4955616d7985909ba7ada1968b81776f6964615f5e5d5d5e5f62676d747d87929da8aba094897d7165594d4034281b0f03000000000000000013202c3946535f6c798693a0aca194887b6e615448535e69747e89949faaa3988d83786d62574d42372c222f3c4855626f7b8895a2ada09386796d6053463a2d20130700000000000000000005111d2a36424f5b6774808c98a5a194887b6f63574a3e3225190d00000000000000000000000000000000000000000000020c16212b353f49535e68727c86909b9e958d857d756c645c544b433b332b22190f0500000000000000000000000000000000000000000000000000000000000002060a0e11131517181919191818161513100d0a0602000000000001060a0d0f11131313131312100f0d0a070300000000000000000000000000000000000000000000000000000000060b101315151515151515151513100b06000000000000000000000000000000000000000000000000000f1c2835424f5b6875828f9ca8b0a4978a7d7063574a3d3024170a0000000000000000000000000000000000000000000b1824313d4a56626f7b8894a0acaca094887c7064584d42372d241c16120f0e0d0d0e0f12151b2129323c47525d6874808b97a4b0a89c9084776b5f52463a2d21140800000000000000030b13191f22252525252525252525252936434f5c697683909ca9a99c8f8275695c4f42362925252525252525252525231f1a130c030000000000000000000000000000010910161a1e1f202020202020202020202020202020202020202020201f1e1e1c1b19181513110e0b070300000000000000000000000000000000000000000000000000000000000000000000000000000002080e13181c2124282b2e303234353738383939393939383736353432302d2b2824201c18130d080200000000000000000000000000000e1a26323e48525a5f5f5f5f5f5f5f5f5f5f5a52483e32261a0e02000000000000000000000000020e1a26323e48525a5f5f5f5f5f5f5f5f5f5f5a52493e33271b0f020000000000000000000000000000000000000000121f2c3945525f6b7885929fabafa295897c6f6256493c2f23160900000000000000000000000000000000000000000000000d1a2734404d5a6673808d9aa6b3a89b8e8275685b4f4235281c0f0000000000000000000000000000000914202c3844505c67737f8b97a3a59c9799a0a5998d8175695d5145392d22160a000000000000000000000000000000000000000000000c1925323f4c5865727e8c98a5b2a79a8e8174675a4d4134271a0e0100000006121d29343f4a555f69737c858d959ba1a6a39d9894908e8c8a8988888787878686868685858a96a2afa6998c7f7265594c3f3226190c000000000000000000000814202c3945505c68737f8a959fa9a89d938a817a74706d6b6a6a6a6a6c6f72787e868f99a3aea4998e83786c6054483c3024180c00000000000000000013202c3946535f6c798693a0aca194887b6e61544f5a65707a85909ba6a79c91877c71665b50463b3025222f3c4855626f7b8895a2ada09386796d6053463a2d201307000000000000000000010e1a26333f4b5864707c8995a1a4988b7f73665a4e4135291c100400000000000000000000000000000000000000000000050f19232d37414c56606a747e89939d9f978f877e766e665d554d453d342b21160b0000000000000000000000000000000000000000000000000000000003080e12161a1d20222425252626252423211f1c1916120d09030001070d1216191c1e1f202020201f1d1b1917140f0a03000000000000000000000000000000000000000000000000010a11171c1f2122222222222222211f1c1711090100000000000000000000000000000000000000000000000f1c2835424f5b6875828f9ca8b0a4978a7d7063574a3d3024170a0000000000000000000000000000000000000000000d1a2733404c5965727e8b97a3b0a99d9084786c5f54483c31261b120b06030000000002050a1017202a35404c57636f7b8794a0acaca093877b6e6255493c3023170a000000000000020c151d242a2f313232323232323232323236434f5c697683909ca9a99c8f8275695c4f423632323232323232323232312f2b251e150c02000000000000000000000000000000050a0e111313131313131313131313131313131313131313131313121211100e0d0b09070401000000000000000000000000000000000000000000000000000000000000000000000000000000000000000002070c1015181c1e21232627292a2b2c2c2c2c2c2c2b2b2a28272523211e1b1814100c0702000000000000000000000000000000000a16212c3740484f525353535353535353524f4840372c21160a00000000000000000000000000000a16212c3740484f525353535353535353524f4940372c21160a000000000000000000000000000000000000000000121f2b3845515e6b7884919eabb0a3968a7d7063574a3d3024170a00000000000000000000000000000000000000000000000f1b2835414e5b6774818e9aa7b4a79a8e8174675b4e4134281b0e0000000000000000000000000000010d1925313d4854606c7884909ca79e938b8e98a49d9185796d62564a3e32261a0e020000000000000000000000000000000000000000000c1925323f4c5865727e8c98a5b2a79a8e8174675a4d4134271a0e01000000010c18232e38434d57616a737b838a90959a9ea2a4a09d9a9897969594949493939393929292949ca6b2a6998c7f7265594c3f3226190c0000000000000000000004101c2834404b57626e78838e98a1aaa59c938b85817d7a7877767777797b7e83899098a1aba59c92887d72665b5044382c20140800000000000000000013202c3946535f6c798693a0aca194887b6e615456616c76818c97a2aba0958b80756a5f544a3f34291f222f3c4855626f7b8895a2ada09386796d6053463a2d201307000000000000000000000a17232f3c4854616d7986929ea79b8f82766a5d5145382c201307000000000000000000000000000000000000000000000007111b25303a444e58626d77818b95a0a199908880786f675f574f463d33281c11050000000000000000000000000000000000000000000000000000070e14191e23262a2c2f30313232323231302e2c2926221e19140f090c12181d2226282b2c2d2d2d2c2b2a282623201b150e0600000000000000000000000000000000000000000000010b131b22282c2e2e2e2e2e2e2e2e2e2c28221b130a01000000000000000000000000000000000000000000000f1c2835424f5b6875828f9ca8b0a4978a7d7063574a3d3024170a0000000000000000000000000000000000000000000f1c2835424e5b6774818d9aa6b3a69a8d8174685c4f43372b20140900000000000000000000050e19242f3b47535f6b7784909da9afa3968a7d7164584b3f3225190c00000000000009141e272f363b3e3f3f3f3f3f3f3f3f3f3f3f434f5c697683909ca9a99c8f8275695c4f423f3f3f3f3f3f3f3f3f3f3f3e3b362f271e140a0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000004080c0f121517191b1c1d1e1f1f20201f1f1f1e1d1c1a191714120f0c08040000000000000000000000000000000000000005101a252e373e4346464646464646464646433e372e251a1005000000000000000000000000000005101a252e373e4346464646464646464646433e372e251b1005000000000000000000000000000000000000000000111e2a3744515d6a7784909daab1a4978b7e7165584b3f3225190c0000000000000000000000000000000000000000000003101d2936434f5c6975828f9ba8b3a6998c8073665a4d4034271a0d000000000000000000000000000006121e2a36414d5965717d8994a0a69a8e828894a0a2968a7e72665a4e42372b1f13070000000000000000000000000000000000000000000c1925323f4c5865727e8c98a5b2a79a8e8174675a4d4134271a0e010000000006111c27313b454f58616971787e858a8e9295989b9d9ea0a1a2a2a1a1a0a0a0a09f9f9f9fa0a5aeb2a6998c7f7265594c3f3226190c00000000000000000000000c18232f3a46515c67717c868f98a0a7a59d96918c8987858483838485878b8f949ba2aaa49c938a80766b60554a3f33271c100400000000000000000013202c3946535f6c798693a0aca194887b6e61545d68727d88939ea8a4998e84796e63584e43382d2318222f3c4855626f7b8895a2ada09386796d6053463a2d201307000000000000000000000713202c3845515d6976828e9ba79e9286796d6154483c2f23170a00000000000000000000000000000000000000000000000009141e28323c46515b656f79848e98a2a29a928a8179716960584f44392d211508000000000000000000000000000000000000000000000000030b12191f252a2f3336393b3d3e3f3f3f3f3e3c3a3835322e2a25201a14161d23292e323537393a3a3a3938363532302c2620180f0600000000000000000000000000000000000000000009131d252d33383b3b3b3b3b3b3b3b3b38332d251c1309000000000000000000000000000000000000000000000f1c2835424f5b6875828f9ca8b0a4978a7d7063574a3d3024170a000000000000000000000000000000000000000000111d2a3743505d6976838f9ca8b1a4978b7e7265594c4033271b0f03000000000000000000000007131e2a37434f5c6874818d9aa7b2a5998c8073665a4d4034271a0e000000000004101b25303941474b4c4c4c4c4c4c4c4c4c4c4c4c4f5c697683909ca9a99c8f8275695c4f4c4c4c4c4c4c4c4c4c4c4c4c4b47413930261b1005000000000000000000000004080a0c0c0c0c0c0c0c0c0c0b0804000000000000000000000102030303020100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000306080a0c0e0f11111213131313121211100f0e0c0a080503000000000000000000000000000000000000000000000009131c252c32373939393939393939393937322c251c13090000000000000000000000000000000009131c252c32373939393939393939393937322c251c130900000000000000000000000000000000000000000000101d2936434f5c6975828f9ba8b2a5998c8073665a4d4034271b0e0200000000000000000000000000000000000000000006121f2b3845515e6a7784909da9b1a4988b7e7265584c3f3226190c00000000000000000000000000000b17232e3a46525e6a75818d99a5a2968a7e84909ca69a8f83776b5f53473b2f23170c0000000000000000000000000000000000000000000c1925323f4c5865727e8c98a5b2a79a8e8174675a4d4134271a0e0100000000000a151f29333d464f575f666d73797e8286898c8e9092939495959696969696979797979899a0aab2a6998c7f7265594c3f3226190c000000000000000000000007121e2935404b55606a737d868e959ca2a7a29d99959392919090919294979ba0a5a6a09a928a81786e645a4f44392d22170b0000000000000000000013202c3946535f6c798693a0aca194887b6e6159646e79848f9aa4a89d92887d72675c52473c31271c15222f3c4855626f7b8895a2ada09386796d6053463a2d2013070000000000000000000004101c2935414d5a66727e8b97a4a295897d7064584b3f33261a0e010000000000000000000000000000000000000000000000020c16202a353f49535d67727c86909aa0a09c938b837b726a6155493d3124180b0000000000000000000000000000000000000000000000050d151d242a30363b3f4245484a4b4c4c4c4b4a494745423e3a36312b251f21282f353a3e414446464646464543413f3c38312a21180d030000000000000000000000000000000000000004101b252f373f44474848484848484847443f372e251a0f040000000000000000000000000000000000000000000f1c2835424f5b6875828f9ca8b0a4978a7d7063574a3d3024170a000000000000000000000000000000000000000000121e2b3845515e6b7784919daaafa296897c7063564a3d3124180b000000000000000000000000020e1b2733404c5965727e8b98a5b1a79b8e8175685b4f4235281c0f00000000000915212c37414b5257585858585858585858585858585c697683909ca9a99c8f8275695c5858585858585858585858585857534b42382d21160a000000000000000000030a0f14171919191919191919191714100a0300000205080a0c0d0e0f0f0f0f0f0e0d0b090705020000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000010a131a21262a2c2c2c2c2c2c2c2c2c2c2a26211a130a0100000000000000000000000000000000010a131a21262a2c2c2c2c2c2c2c2c2c2c2a27211b130a01000000000000000000000000000000000000000000000f1b2835414e5a6774818d9aa6b3a79b8e8175685c4f43362a1d11050000000000000000000000000000000000000000000915212e3a4753606c7986929fabafa396897d7063574a3e3124180b0000000000000000000000000004101b27333f4b57636e7a86929eaa9e92867a808b97a39f93877b6f63584c4034281c100400000000000000000000000000000000000000000c1925323f4c5865727e8c98a5b2a79a8e8174675a4d4134271a0e010000000000030e18212b343d454d555c62686d7276797d8082848586878888898989898a8a8a8a8a8b8e98a4b0a6998c7f7265594c3f3226190c0000000000000000000000010d18232e39434e58616b737c838a91969b9fa3a5a2a09e9d9d9d9d9fa0a3a5a29f9a958f8880786f665c52483d32271c11060000000000000000000013202c3946535f6c798693a0aca194887b6e61606a75808b96a0aba1968c81766b60564b40352a201515222f3c4855626f7b8895a2ada09386796d6053463a2d20130700000000000000000000000d1925323e4a56636f7b8894a0a5998c8074675b4f42362a1d1105000000000000000000000000000000000000000000000000040e19232d37414b56606a747e899393939393938d857c7265584c3f3226190c00000000000000000000000000000000000000000000050e171f272e353c41464b4f5254565858595958575654514e4a46423c3730292b323a40464a4e50525353535251504e4b48433c33291f1409000000000000000000000000000000000000000a15212c37414950545555555555555554504940362c2115090000000000000000000000000000000000000000000f1c2835424f5b6875828f9ca8b0a4978a7d7063574a3d3024170a000000000000000000000000000000000000000000121f2c3945525f6b7885929fabaea194887b6e6155483b2f221509000000000000000000000000000b1824313e4a5764707d8a96a3b0a99c8f8376695c5043362a1d1000000000000d1925313d49535d636565656565656565656565656565697683909ca9a99c8f8275696565656565656565656565656565645d54493e32261a0d0100000000000000050d151b202425262626262626262524201b150e070b0e111416181a1b1c1c1c1c1c1b19181614110e0a0602000000000000000000000000000000000000000000000000000000000407080808080808080808080808080808080808080808080808080808080808080808080808080808080808080808080808080704010000000000000000000000000000000000010910161a1e1f20202020202020201f1e1a16100901000000000000000000000000000000000000010910161a1e1f20202020202020201f1e1b1610090100000000000000000000000000000000000000000000000d1a26333f4c5965727e8b98a4b1a99d9084776b5e5245392d2014080000000000000000000000000000000000000000000c1825313d4a56626f7b8894a1adada094877b6e6255483c2f231609000000000000000000000000000814202c3844505b67737f8b97a3a69a8e82767b87939fa4988c8074685c5044382d21150900000000000000000000000000000000000000000c1925323f4c5865727e8c98a5b2a79a8e8174675a4d4134271a0e010000000000040d161e252b333b434a51575c61666a6d7073757778797b7b7b7c7c7c7d7d7d7d7d7d7e8895a2afa6998c7f7265594c3f3226190c00000000000000000000000007121d27323c464f59616a727980858a8f9396999b9c9e9e9f9f9f9e9d9b9996938e89847d766e665d544a40362c21160b000000000000000000000013202c3946535f6c798693a0aca194877a6d6166717c87929ca7a59a90857a6f645a4f44392f24190e15222f3c4855626f7b8895a2ada09386796d6053463a2d20130700000000000000000000000916222e3b47535f6c7884919da89c9083776b5e5246392d2114080000000000000000000000000000000000000000000000000007111b252f3a444e58626c778186868686868686867f7265594c3f3226190c000000000000000000000000000000000000000000040e172029313940474d52575b5e616364656565656462605e5a56524d48423b34343c444b51565a5d5f6060605f5e5c5a58544e453b31251a0e020000000000000000000000000000000000020e1a26323d49535b6061616161616161605b52483d32261a0d0000000000000000000000000000000000000000000f1c2835424f5b6875828f9ca8b0a4978a7d7063574a3d3024170a00000000000000000000000000000000000000000013202c3946535f6c7986929facada094877a6d6054473a2e211407000000000000000000000000000916232f3c4956626f7c8895a2afaa9d9084776a5d5044372a1d1100000000000f1c2835414e5a656f7272727272727272727272727272727683909ca9a99c8f82757272727272727272727272727272726f665a4e4235291c1003000000000000040e171f262c30323232323232323232302c27201713171b1e2123252628282929292827262423201d1a17130e0904000000000000000000000000000000000000000000000000060c10131515151515151515151515151515151515151515151515151515151515151515151515151515151515151515151515151513110c07010000000000000000000000000000000000050a0e1113131313131313131313110e0a0500000000000000000000000000000000000000000000050a0e1113131313131313131313110e0a05000000000000000000000000000000000000000000000000000b1824313e4a5763707c8995a2aeac9f93877a6e6155493d3024180c010000000000000000000000000000000000000005111d2935414d5966727e8b97a3b0aa9e9185786c5f53463a2d211407000000000000000000000000010d1925313d4854606c7884909ba7a2968a7e7277838f9ba79c9085786d6155493d3125190d02000000000000000000000000000000000000000c1925323f4c5865727e8c98a5b2a79a8e8174675a4d4134271a0e0100000000000b151f2830363b3d3e40464b51555a5d616466686a6c6d6e6e6f6f6f6f7070707071717b8895a2afa6998c7f7265594c3f3226190c000000000000000000000000000b16202a343d474f5860676e747a7e83878a8c8e90919292929291908f8c8a86827d78726b645c544b42382e241a0f04000000000000000000000013202c3946535f6c798693a0aca094877a6d626d78838e98a3a99e94897e73685e53483d32281d120915222f3c4855626f7b8895a2ada09386796d6053463a2d201307000000000000000000000006121f2b3743505c6875818d9aa69f93877a6e6255493d3024180b000000000000000000000000000000000000000000000000000009131e28323c46505b656f787979797979797979797165584b3f3225190c0000000000000000000000000000000000000000020c162029323b434b52585e63676b6d707172727271706f6d6a67635e59534d463e3d464e565c6266696c6d6d6d6c6b6967645f574d42362a1e1205000000000000000000000000000000000005111e2a36424e5a656d6e6e6e6e6e6e6e6c645a4e4236291d100000000000000000000000000000000000000000000f1c2835424f5b6875828f9ca8b0a4978a7d7063574a3d3024170a00000000000000000000000000000000000000000013202c3946535f6c798693a0acada09386796d6053463a2d201407000000000000000000000000000815222f3b4855616e7b8895a2aeaa9e9184776a5d5144372a1e110000000000101c2936434f5c69767e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e83909ca9a99c8f827e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e766a5d5044372a1d11040000000000010c16202931373c3f3f3f3f3f3f3f3f3f3c383129211f23272a2d2f31333435363636353433312f2d2a26231f1a15100a040000000000000000000000000000000000000000020a11181c2021222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222201d18120b030000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000916222f3b4854616d7a86929fabafa2968a7d7165594d4135291d1206000000000000000000000000000000000000000a16212d3945515d6975828e9aa6b3a79b8f8276695d5044372b1e120500000000000000000000000006121e2a35414d5965717c8894a0aa9e92867a6e727e8b97a3a195897d7165594d42362a1e1206000000000000000000000000000000000000000c1925323f4c5865727e8c98a5b2a79a8e8174675a4d4134271a0e010000000007121d27313a41474a4b4c4d4f5051525354575a5c5e5f6061626262636363636363646f7b8895a2afa6998c7f7265594c3f3226190c00000000000000000000000000040e18222b353d464e555c63696e73777a7d8082838485858685848382807d7a76726d67615a524a423930261c120800000000000000000000000013202c3946535f6c798693a0aca09386796d69747f8a949faaa2988d82776c62574c41362c21160b0915222f3c4855626f7b8895a2ada09386796d6053463a2d2013070000000000000000000000030f1b2734404c5965717d8a96a3a3968a7d7165594c4034271b0f0200000000000000000000000000000000000000000000000000010c16202a343f49535d666c6c6c6c6c6c6c6c6c6c685f54483c3024170b000000000000000000000000000000000000000009141e28323b444d555c63696f73777a7c7e7e7f7f7e7d7b7976736e6a645e575049454f5860686e7376787979797977757370695e53463a2e21140800000000000000000000000000000000000815212d3946525e6b767b7b7b7b7b7b7b766a5e5144372b1e110000000000000000000000000000000000000000000f1c2835424f5b6875828f9ca8b0a4978a7d7063574a3d3024170a00000000000000000000000000000000000000000013202c3946535f6c798693a0acada09386796d6053463a2d201307000000000000000000000000000815212e3b4854616e7b8894a1aeaa9e9184776a5d5144372a1e110000000000101c2936434f5c6976838c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c949fabaa9e938c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c84776a5d5044372a1d1104000000000007121d28323b43484b4c4c4c4c4c4c4c4c49433b33292b2f3336393c3e40414242424242413f3e3c3936332f2b26211b150f08010000000000000000000000000000000000020b141c23282c2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2d29241d150d0300000000000000000004070808080808080808080808080808080808080808080808080808080807060503010000000000000000000000000000000000000000000000000000000000000407080808080808080808080704010000000000000000000713202c3945515e6a77838f9ca8b2a6998d8175695d51453a2e23180d02000000000000000000000000000000000006111c27323e4a55616d7985929eaab0a4988b7f73665a4e4135281c0f030000000000000000000000000b17222e3a46525e6a75818d99a5a69a8e82766a6e7a86929ea59a8e82766a5e52463a2e22170b000000000000000000000000000000000000000c1925323f4c5865727e8c98a5b2a79a8e8174675a4d4134271a0e01000000000c17232e39434c535758595a5b5c5d5f605f5a524f51525354555555565656565757626f7b8895a2afa5998c7f7265594c3f3226190c0000000000000000000000000000061019232b343c444b52575d62676a6e71737576777879797878777573716e6a66615c564f48403830271e140a0100000000000000000000000013202c3946535f6c798693a0aca09386796c707b86909ba6a69c91867b70665b50453a30251a0f050915222f3c4855626f7b8895a2ada09386796d6053463a2d2013070000000000000000000000000b1824303d4955626e7a87939fa69a8d8175685c5043372b1e12060000000000000000000000000000000000000000000000000000040e18222d37414b545c5f5f5f5f5f5f5f5f5f5f5d564d43382c2014080000000000000000000000000000000000000005101b25303a444d565f676e757a7f8386898a8c8c8c8b8a8886837f7a756f69625a524d57616a72797e8285868686858482807b6e6255483c2f22150900000000000000000000000000000000000c1824313d4955626e7a87888888888882766a5d5144372b1e110000000000000000000000000000000000000000000f1c2835424f5b6875828f9ca8b0a4978a7d7063574a3d3024170a00000000000000000000000000000000000000000013202c3946535f6c798693a0acada09386796d6053463a2d201307000000000000000000000000000815212e3b4854616e7b8894a1aeaa9e9184776a5d5144372a1e110000000000101c2936434f5c697683909898989898989898989898989898999da6b0b0a59d9998989898989898989898989898989084776a5d5044372a1d110400000000000c18232f3a444d54585959595959595958544d453b32373b3f4346494b4c4e4f4f4f4f4e4d4c4a4846423f3b36312c262019120b03000000000000000000000000000000000a141d262e34383b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b39352f271f150b01000000000000060c101315151515151515151515151515151515151515151515151515151514141311100e0c090703000000000000000000000000000000000000000000000000060c10131515151515151515151513110c07010000000000000004101d2936424e5b6773808c98a4b0a99d9185796e62564b3f34291e140a01000000000000000000000000000000040e18222d38434f5a66727d8a96a2aeaca094887c6f63574a3e3225190d00000000000000000000000004101b27333f4b57626e7a86929eaaa2968a7e72656a76828e9aa69e92867a6e63574b3f33271b0f030000000000000000000000000000000000000c1925323f4c5865727e8c98a5b2a79a8e8174675a4d4134271a0e01000000030f1c2834404b555e6364666768696a6b6d6b64594e4446474848494949494a4a4a56636f7c8996a2afa5988c7e7265584c3f3225190c000000000000000000000000000000071019222a323940464c52565a5e616466686a6b6b6c6c6b6b6a686764615e5a55504a443d362f261e150c020000000000000000000000000013202c3946535f6c798693a0ac9f9286796c77828c97a2aaa0958a7f746a5f54493e34291e1309000915222f3c4855626f7b8895a2ada09386796d6053463a2d2013070000000000000000000000000814212d3946525e6b7783909ca89d9184786c5f53473a2e22150900000000000000000000000000000000000000000000000000000006111b252f39424a5053535353535353535353514c443b31261b1004000000000000000000000000000000000000000b16212c37414c565f68717880868b90939597989998989795928f8b86817b746c645c545e69737c848a8f9193939392918f887b6f6255483c2f22150900000000000000000000000000000000030f1b2834404c5965717e8a959595958b7f72665a4e4135291c100000000000000000000000000000000000000000000f1c2835424f5b6875828f9ca8b0a4978a7d7063574a3d3024170a00000000000000000000000000000000000000000013202c3946535f6c798693a0acada09386796d6053463a2d201307000000000000000000000000000815212e3b4854616e7b8894a1aeaa9e9184776a5d5144372a1e110000000000101c2936434f5c697683909c9e9e9e9e9e9e9e9e9e9e9e9e9e9fa2aab3b3aaa29f9e9e9e9e9e9e9e9e9e9e9e9e9e9d9084776a5d5044372a1d110400000000000f1c2834404b565f6465656565656565655f574d433d43474b4f525557595a5b5c5c5c5b5a595755524f4b47423d37312b241d150d05000000000000000000000000000006111c262f383f454848484848484848484848484848484848484848484848484848484848484848484848484848484848484848484848484845403931271d120700000000020a11181c2021222222222222222222222222222222222222222222222222222221201f1e1c1b181613100c080400000000000000000000000000000000000000020a11181c2021222222222222222222201d18120b03000000000000010d1a26323f4b57636f7c8894a0acaea2968a7e73675c51463b30261c130a0300000000000000000000000000050d16202a343f4a55606b77838e9aa6b2a89c9084786c5f53473b2f22160a0000000000000000000000000814202c38444f5b67737f8b97a2aa9e9286796d6166727e8a96a2a3978b7f73675b4f43382c2014080000000000000000000000000000000000000c1925323f4c5865727e8c98a5b2a79a8e8174675a4d4134271a0e0100000005121f2b3844505c676f7172737576777879766a5e5145393a3b3c3c3c3c3c3d3f4b5864717d8a97a4b0a4978b7e7165584b3e3225180b0000000000000000000000000000000007101820272e353b41464a4e5255585a5c5d5e5f5f5f676b6b6b6b6b675e544a453f39332c241d140c03000000000000000000000000000013202c3946535f6c798693a0ac9f928578737d88939ea9a4998e83786e63584d42382d22170d02000915222f3c4855626f7b8895a2ada09386796d6053463a2d20130700000000000000000000000005111d2a36424f5b6773808c98a5a094887b6f63564a3e3125190c0000000000000000000000000000000000000000000000000000000009131d2730383f444646464646464646464644403a32291f150a0000000000000000000000000000000000000005111c28333e49535e68717a838a91979c9fa2a4a5a4a2a2a2a19f9b97928c867e766e655c65707b858e969b9ea0a0a09f9d95887b6f6255483c2f2215090000000000000000000000000000000006121f2b3743505c6875818d9aa2a094887b6f63564a3e3225190d0000000000000000000000000000000000000000000f1c2835424f5b6875828f9ca8b0a4978a7d7063574a3d3024170a00000000000000000000000000000000000000000013202c3946535f6c798693a0acada09386796d6053463a2d201307000000000000000000000000000815212e3b4854616e7b8894a1aeaa9e9184776a5d5144372a1e110000000000101c2936434f5c6976839092929292929292929292929292929298a2adada1989292929292929292929292929292929084776a5d5044372a1d11040000000000121e2b3844505c68707272727272727271695f554c494e53575b5f626466676869696868676563615e5b57534e49433c362f271f170f06000000000000000000000000000b17222d38424a5154555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555554514b43392f23180c000000020b141c23282c2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2d2c2b292725221f1c1814100b0601000000000000000000000000000000020b141c23282c2e2e2e2e2e2e2e2e2e2e2d29241d150d030000000000000a16232f3b47535f6b77848f9ba7b2a69b8f84786d62574c42382e251c150e0804000000000000000001050a10171f28323c46505b66717c88939fabafa3978c8074685b4f43372b1f13060000000000000000000000010d1925313d4854606c78848f9ba7a69a8d8275695d616d7986929ea79b8f84786c6054483c3024180c0100000000000000000000000000000000000c1925323f4c5865727e8c98a5b2a79a8e8174675a4d4134271a0e010000000613202c3946535f6c797e7f818283848586796c6053473b302e2f2f2f303036424e5a6773808c99a5afa396897d7063574a3d3124170b0000000000000000000000000000000000060e161d242a30353a3e4246494b4d4f50515860697177777777777065584c3f342e28211a130b0200000000000000000000000000000013202c3946535f6c798693a0ab9e92857879848f9aa5a79d92877c72675c51463c31261b100600000915222f3c4855626f7b8895a2ada09386796d6053463a2d201307000000000000000000000000010e1a26333f4b5864707c8995a1a4978b7e72665a4d4135281c1004000000000000000000000000000000000000000000000000000000010b151e272e33373939393939393939393938342f2820170d03000000000000000000000000000000000000000a16222d39444f5a656f79838c959ca2a8a8a29d999796969697989b9e9d97908880776e656a76828c97a0a7aba39c97949394887b6f6255483c2f221509000000000000000000000000000000000916222e3b47535f6c7884919da99d9184786c5f53473b2e2216090000000000000000000000000000000000000000000f1c2835424f5b6875828f9ca8b0a4978a7d7063574a3d3024170a00000000000000000000000000000000000000000013202c3946535f6c798693a0acada09386796d6053463a2d201307000000000000000000000000000815212e3b4854616e7b8894a1aeaa9e9184776a5d5144372a1e110000000000101c2936434f5c69768385858585858585858585858585858586919da9a99c908685858585858585858585858585858584776a5d5044372a1d11040000000000131f2c3946525f6c797f7f7f7f7f7f7f7a71675e54545a5f64686b6e70727475757575757372706e6b67635f5a544e474039312921180f060000000000000000000000000f1b27333f4a545c616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161615d554b4034291d100400000a141d262e34383b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3a39373634312f2c2824201c17120c0600000000000000000000000000000a141d262e34383b3b3b3b3b3b3b3b3b3b39352f271f150b01000000000007131f2b37434f5b67737f8b96a2adaca0958a7e73695e544a40372e261f1914100c0a09080708090b0d11151b2229313a444e58626d77838e99a4b0a99e92877b6f63574b3f33271b0f03000000000000000000000006121e2935414d5965717c8894a0aca195897d7165595d6975828e9aa6a094887c7064584d4135291d110500000000000000000000000000000000000c1925323f4c5865727e8c98a5b2a79a8e8174675a4d4134271a0e0100000006121f2c3845525e6b77848c8d8e8f9092887c6f63574c423c39383737383a3f48535e6a76838f9ba8ada094877b6e6255483c2f231609000000000000000000000000000000000000040b12191e24292e3236393c3f4149515a626a727a83848484807366594c4033261d161008010000000000000000000000000000000013202c3946535f6c798693a0aa9e918477808b96a1aca1968b80756b60554a40352a1f140a0000000915222f3c4855626f7b8895a2ada09386796d6053463a2d201307000000000000000000000000000a17232f3c4854606d7985929ea79b8e8276695d5144382c1f130700000000000000000000000000000000000000000000000000000000030c151c23282b2c2c2c2c2c2c2c2c2c2c2b28241e160e0500000000000000000000000000000000000000030f1b27323e4a55616c77818b959ea7ada49d96918d8a8989898a8c8e92969b9a928980766d6f7b87929ea9ada399918b888687887b6f6255483c2f221509000000000000000000000000000000000d1925323e4a56636f7b8894a0a69a8d8175685c5043372b1f12060000000000000000000000000000000000000000000f1c2835424f5b6875828f9ca8b0a4978a7d7063574a3d3024170a00000000000000000000000000000000000000000013202c3946535f6c798693a0acada09386796d6053463a2d201307000000000000000000000000000815212e3b4854616e7b8894a1aeaa9e9184776a5d5144372a1e1100000000000f1c2936424f5b68737878787878787878787878787878787883909ca9a99c8f827878787878787878787878787878787874685c5043362a1d10040000000000121f2b3844515d69737c868c8c8c8c8c837970665c5f656b6f74777a7d7f818282828282817e7d7a77736f6a655f59524b433b332a21180e040000000000000000000000121e2b37434f5b666d6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6d675c5145392c2013070006111c262f383f454848484848484848484848484848484848484848484848484848484747454442403e3b3834302c28231d17110a03000000000000000000000006111c262f383f454848484848484848484845403931271d12070000000000030f1b27333f4b57626e7a85919ca7b1a69b90857a70665c52494038312a25201c19171515141516171a1d21262c333b434c565f6a747e89949faaafa4988d82766a5e53473b2f23170b0000000000000000000000000b17222e3a46525e6975818d99a5a99d9185796d61555965717d8996a2a5998d8175695d5145392d22160a00000000000000000000000000000000000c1925323f4c5865727e8c98a5b2a79a8e8174675a4d4134271a0e0100000004111d2a36434f5c6874818d999b9c9d988c8074685d544c484645444445474a5159646f7b87939faba99d9185786c5f53463a2d2114070000000000000000000000000000000000000001070d13191d22262a323a424b535b636c747c848c9190867b7165584c3f3326190c0500000000000000000000000000000000000013202c3946535f6c798693a0aa9d90837c87929da7a59a8f84796f64594e44392e23180e030000000915222f3c4855626f7b8895a2ada09386796d6053463a2d201307000000000000000000000000000713202c3845515d6976828e9ba79e9285796d6054483b2f23160a0000000000000000000000000000000000000000000000000000000000030a11171b1e202020202020202020201f1c18130c05000000000000000000000000000000000000000006131f2b37434f5b66727d88939da7ada49b928b85817e7c7c7c7d7f82868a8f959b92897f75727e8b97a3afa79c9187807b797a7c7b6e6255483c2f22150900000000000000000000000000000004101c2935414d5a66727e8b97a4a3968a7e7165594c4034281b0f030000000000000000000000000000000000000000000f1c2835424f5b6875828f9ca8b0a4978a7d7063574a3d3024170a00000000000000000000000000000000000000000013202c3946535f6c798693a0acada09386796d6053463a2d201307000000000000000000000000000815212e3b4854616e7b8894a1aeaa9e9184776a5d5144372a1e1100000000000e1a27333f4b5761696b6b6b6b6b6b6b6b6b6b6b6b6b6b6b75828f9ca9a99c8f82756b6b6b6b6b6b6b6b6b6b6b6b6b6b6b6962574c4034281b0f020000000000101c2935414c57616a747e87919999958b82786e656b71767b8084878a8c8d8e8f8f8f8e8d8b898783807b76706a645d554d453c332a20160c020000000000000000000013202c3946525f6c777b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b796d6154473b2e211408000b17222d38424a51545555555555555555555555555555555555555555555555555554545352514f4d4a4744413d38332e28221c150e07000000000000000000000b17222d38424a5154555555555555555554514b43392f23180c0000000000000b17222e3a46525d6974808b96a1acaca1978c82786e645b524a433c36302c28252322212121222426292d32383e454d565e68717b86909ba5b0a89d92877c7065594e42362a1f13070000000000000000000000040f1b27333f4b56626e7a86929ea9a4998d8175695d5155616d7985919da99d9185796d62564a3e32261a0e02000000000000000000000000000000000c1925323f4c5865727e8c98a5b2a79a8e8174675a4d4134271a0e01000000010e1b2733404c5865717d8995a1a9a89c90857a6f665e5855535151515153565b626b75818c97a3afa5998d8175685c5044372b1e1205000000000000000000000000000000000000000000020b131b232b343c444c545d656d757e868e9692887e74695f54493d3024170b0000000000000000000000000000000000000013202c3946535f6c798693a0a99c9083838e99a3a99e93887d73685d52483d32271c1207000000000915222f3c4855626f7b8895a2ada09386796d6053463a2d2013070000000000000000000000000004101c2935414d5a66727e8b97a4a195897c7064574b3f32261a0e01000000000000000000000000000000000000000000000000000000000000060b0f121313131313131313131312100c07010000000000000000000000000000000000000000000a16222f3b47535f6b77838e9aa5afa69b9289817a75716f6f6f7173767a7e848a919991877c75818e9aa7aea2968a7f756f6d6d6f70695e53463a2d2114080000000000000000000000000000000713202c3845515d6976828e9ba79f93877a6e6255493d3024180c000000000000000000000000000000000000000000000f1c2835424f5b6875828f9ca8b0a4978a7d7063574a3d3024170a00000000000000000000000000000000000000000013202c3946535f6c798693a0acada09386796d6053463a2d201307000000000000000000000000000815212e3b4854616e7b8894a1aeaa9e9184776a5d5144372a1e1100000000000b17232f3a454f575d5e5e5e5e5e5e5e5e5e5e5e5e5e5e6975828f9ca9a99c8f8275695e5e5e5e5e5e5e5e5e5e5e5e5e5e5d5850463b3024180c0000000000000c1824303b454f58626c757f89929c9d948a80766e757c82878c909396989a9b9c9c9c9b9a989693908c87827c756e675f574e453c32281e140a0000000000000000000013202c3946535f6c7986888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888887b6e6154483b2e211508000f1b27333f4a545c61616161616161616161616161616161616161616161616161616161605f5d5b595754504d49443f3a342d27201811090000000000000000000f1b27333f4a545c616161616161616161615d554b4034291d1004000000000006121e2935414c57636e79858f9aa5afa89e948a80766d645c544d47413c383532302f2e2e2e2f303336393e434950575f68707a838d98a2acaca2978c81766b5f54483d31251a0e0200000000000000000000000814202c38444f5b67737f8b96a2aca094887c7064584c515d6975818d99a5a2968a7e72665a4e42372b1f1307000000000000000000000000000000000c1925323f4c5865727e8c98a5b2a79a8e8174675a4d4134271a0e01000000000b1824303c4955616d7884909ba6ada1968b81786f6964615f5e5d5d5e6063676d747d87929da8ab9f94887d7165594c4034281b0f030000000000000000000000000000000000000000040c141d252d353d464e565e666f777f879098958b81766c62584d43382c2014080000000000000000000000000000000000000013202c3946535f6c798693a0a99c90858a959faaa2978c82776c61564c41362b20160b00000000000915222f3c4855626f7b8895a2ada09386796d6053463a2d20130700000000000000000000000000000d1925313e4a56636f7b8894a0a5988c8073675b4e4236291d1105000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000c1925323e4a57636f7b88949fabab9f948a80766f69656362636466696e737980878f978e847983909da9ab9e92867a6e63606163635f574d42362a1e12050000000000000000000000000000000a17232f3c4854606d7985929ea89c9083776b5e5246392d211408000000000000000000000000000000000000000000000f1c2835424f5b6875828f9ca8b0a4978a7d7063574a3d3024170a00000000000000000000000000000000000000000013202c3946535f6c798693a0acada09386796d6053463a2d201307000000000000000000000000000815212e3b4854616e7b8894a1aeaa9e9184776a5d5144372a1e1100000000000a16222d38434c54595b5b5b5b5b5b5b5b5b5b5b5b5b5c6975828f9ca8a99c8f8275695c5b5b5b5b5b5b5b5b5b5b5b5b5b5a554d44392e22170b00000000000008131e29333d46505a636d76808a949d9c92897f7980878d93989ca0a3a3a09f9e9e9e9fa1a3a29f9c98938d878079716960574e443a30261b110600000000000000000013202c3946535f6c7986939595959595959595959595959595959595959595959595959595959595959595959595959595959595959594887b6e6154483b2e21150800121e2b37434f5b666d6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6d6d6b6a686663605d5955504a453f38312a231b120a0100000000000000121e2b37434f5b666d6e6e6e6e6e6e6e6e6d675c5145392c2013070000000000010d1924303b46525d68737e89939ea8b0a69c928980766e665f58524d4844413f3d3b3b3a3b3c3d3f4245494e545a6169717a838c959fa9afa59a90857a6f64594e43372c2015090000000000000000000000010d1925313c4854606c78848f9ba7a79b8f84786c6054484d5965717d8995a1a69a8f83776b5f53473b2f23170c000000000000000000000000000000000c1925323f4c5865727e8c98a5b2a79a8e8174675a4d4134271a0e01000000000814202c3844505c68737e8a959fa9a89d938a817a75716e6c6b6a6a6b6c6f73787e879099a3aea3998e83776c6054483c3024180c0000000000000000000000000000000000000000050e161e262e373f474f586068707881899199978d83796e645a50463c31271b10040000000000000000000000000000000000000013202c3946535f6c798693a0aca19791939ca6a69b90867b70655a4f453a2f241a0f0400000000000915222f3c4855626f7b8895a2ada09386796d6053463a2d20130700000000000000000000000000000916222e3a47535f6c7884919da89c8f83776a5e5245392d20140800000000000000000000000003090d0f111111111111100e0b06000000000000050a0d10111111111111100d0a050000000000000000000000000000000000000000000000000f1b2834414d5a66737f8b98a4b0a69a8e83786d645d58565556575a5d62676e757d858e958a8085919eaba89c8f83766a5d53545657544d453b30251a0e020000000000000000000000000000010e1a26333f4b5764707c8995a1a5988c8074675b4f42362a1d1105000000000000000000000000000000000000000000000f1c2835424f5b6875828f9ca8b0a4978a7d7063574a3d3024170a00000000000000000000000000000000000000000013202c3946535f6c798693a0acada09386796d6053463a2d201307000000000000000000000000000815212e3b4854616e7b8894a1aeaa9e9184776a5d5144372a1e1100000000000d1a26323e4a555f6567676767676767676767676767676875828f9ca8a99c8f8275696767676767676767676767676767665f554a3f33271a0e010000000000020d17212b343e48515b656e78828b959f9b9187838b92999ea4a39e9a9694929191929394979a9ea4a39e98928b837b726960564c42382d22170c01000000000000000013202c3946535f6c798693a0a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a194887b6e6154483b2e2115080013202c3946525f6c777b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7a7978777572706d6965605b56504a433c342d241c130a0100000000000013202c3946525f6c777b7b7b7b7b7b7b7b796d6154473b2e21140800000000000008131e2a35404c57616c77818c96a0a9aea49b92898078716a635e5854504d4b4948484748484a4c4e51555a5f656c737b838c959ea7b0a69d93897e74695e53483d32261b0f04000000000000000000000006121e2935414d5965707c8894a0aca3978b7f73675b4f434955616d7985919da99f93877b6f63584c4034281c10040000000000000000000000000000000c1925323f4c5865727e8c98a5b2a79a8e8174675a4d4134271a0e010000000004101c2834404b57626d78838d97a1a9a59c938c86817d7a7977777777797b7f84899099a2aba59c92877d72665b4f44382c20140800000000000000000000000000000000000000060f172028303840495159616a727a828a939b9a90857b71675d52483e342a20150a000000000000000000000000000000000000000013202c3946535f6c798693a0aca9a19d9fa5aa9f948a7e74695e53493e33281e13080000000000000915222f3c4855626f7b8895a2ada09386796d6053463a2d201307000000000000000000000000000006121e2b3743505c6875818d9aa69f93867a6e6155493c3024170b0000000000000000000000080f14191c1e1e1e1e1e1e1d1a17110b030000020910161a1c1e1e1e1e1e1e1c1a1610090200000000000000000000000000000000000000000000101d2a3643505c6975828e9ba7aea296897d72665c524c4949494b4d51565c636b737c858f918788939faca79a8d8174675b4e474a4a48433b33291f140900000000000000000000000000000005111d2a36424e5b6773808c98a5a195897c7064584b3f33261a0e01000000000000000000000000000000000000000000000f1c2835424f5b6875828f9ca8b0a4978a7d7063574a3d3024170a00000000000000000000000000000000000000000013202c3946535f6c798693a0acada09386796d6053463a2d201307000000000000000000000000000815212e3b4854616e7b8894a1aeaa9e9184776a5d5144372a1e1100000000000f1c2835424e5a667174747474747474747474747474747475828f9ca8a99c8f827574747474747474747474747474747471675b4f4236291d1003000000000000050f19222c363f49535c667079838d96a099918e959ca3a69f98928e8a878584848586888a8e93989ea5a39c958d847b72685e54493f34291e1207000000000000000013202c3946535f6c798693a0acaeaeaeaaa6a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a194887b6e6154483b2e2115080013202c3946535f6c79868888888888888888888888888888888888888888888888888887868583817f7c7975716c67615b554e463f362e251c130900000000000013202c3946535f6c7986888888888888887b6e6154483b2e211508000000000000020d19242f3a45505b65707a848e97a1aaada49b928a827b756e6964605d5a5856555454545556585b5e61666b70777e858d959ea7b0a79e948b81776c62574c42372b20150a0000000000000000000000000b16222e3a46525d6975818d99a5aa9e92867a6e63574b3f44505c6975818d99a5a4988c8074685c5044382d2115090000000000000000000000000000000c1925323f4c5865727e8c98a5b2a79a8e8174675a4d4134271a0e0100000000000c17232f3a46515c67717b858f979fa6a59e97918d8987858484848486888b8f959ba2aba49c938a80756b60554a3e33271c1004000000000000000000000000000000000000030e172129323a424a525b636b737b848c949c9c92887e73695f554b41362c22180e03000000000000000000000000000000000000000013202c3946535f6c798693a0acb3adaaabaea3988d83786d62574d42372c22170c010000000000000915222f3c4855626f7b8895a2ada09386796d6053463a2d2013070000000000000000000000000000020f1b2734404c5965717d8a96a2a2968a7d7165584c4033271b0f020000000000000000000912192025292a2a2a2a2a2a2a27221c150d04020b141b2126292a2a2a2a2a2a2926211b140b02000000000000000000000000000000000000000000121e2b3845515e6b7784919daaac9f9286796d61554a413d3c3d3e41454b5259616a737d879292939aa4afa6998c807366594c403d3d3b37312a21170d030000000000000000000000000000000814212d3946525e6a77838f9ca89e9285796d6154483c2f23170a00000000000000000000000000000000000000000000000f1c2835424f5b6875828f9ca8b0a4978a7d7063574a3d3024170a00000000000000000000000000000000000000000013202c3946535f6c798693a0acada09386796d6053463a2d201307000000000000000000000000000815212e3b4854616e7b8894a1aeaa9e9184776a5d5144372a1e110000000000101c2936434f5c697681818181818181818181818181818181828f9ba8a99c8f8381818181818181818181818181818181776a5d5044372a1d11040000000000000007101a242d37414a545e67717b858e98a19c9b9fa7a59c948d87827e7b79787778797b7e82878d949ba4a79f968d847a70655b50453a2f24180d010000000000000013202c3946535f6c798693a0acb7b4a9a09998989898989898989898989898989898989898989898989898989898989898989898989894887b6e6154483b2e2115080013202c3946535f6c798693959595959595959595959595959595959595959595959594949392908e8b8985817d78736d665f58504840372e251b1107000000000013202c3946535f6c7986939595959594887b6e6154483b2e2115080000000000000007131e29343e49535e68727c858f98a0a9ada49c948d86807a75706c6966646362616161626365676a6e72767c82888f979fa7afa69e958c83796f655a50463b30251a0f040000000000000000000000030f1b27333f4b56626e7a86929ea9a69a8e82766a5e52463a404c5864707c8995a1a89c9084786d6155493d3125190d0100000000000000000000000000000c1925323f4c5865727e8c98a5b2a79a8e8174675a4d4134271a0e01000000000007121e29343f4a555f69737c858d959ca1a7a29d99969492919090919294979ba0a6a5a099928a81786e64594f44392d22160b0000000000000000000000000000000000000009151f29333b444c545c646d757d858e969e9f958a80766c62574d43392f251a100600000000000000000000000000000000000000000013202c3946535f6c798693a0acb9b9b7b2a79c91877c71665b51463b30261b1005000000000000000915222f3c4855626f7b8895a2ada09386796d6053463a2d2013070000000000000000000000000000000b1824303d4955626e7a87939fa6998d8174685c4f43372a1e1206000000000000000008121b242b313537373737373736332e271f160d0b141d252c323637373737373736322c251d140b000000000000000000000000000000000000000000131f2c3946525f6c7885929fabaa9d9184776b5e514539302f3032353a40474f58616b75808b969fa4acb2a6998c7f7265594c3f32312f2b261f180f05000000000000000000000000000000000b1824303d4955616e7a87939fa79b8e8276695d5145382c20130700000000000000000000000000000000000000000000000f1c2835424f5b6875828f9ca8b0a4978a7d7063574a3d3024170a00000000000000000000000000000000000000000013202c3946535f6c798693a0acada09386796d6053463a2d201307000000000000000000000000000815212e3b4854616e7b8894a1aeaa9e9184776a5d5144372a1e110000000000101c2936434f5c6976838e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e949faaab9f958e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e84776a5d5044372a1d1104000000000000000008121b252f38424c555f69727c868f9aa5a8aba69c938a827b76716e6c6b6b6b6c6f72767b8289929ba4a89f968c82776c62574b4035291e12060000000000000013202c3946535f6c7986919ba5b0b0a4988e8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b887b6e6154483b2e2115080013202c3946535f6c798693a0a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a1a0a09e9d9a9895918d89847e78716a625a524940372d23190e040000000013202c3946535f6c798693a0a2a2a194887b6e6154483b2e21150800000000000000010c17222d37424c56606a737c868e979fa7aea69f98918b86817c797673716f6e6e6d6e6f707174767a7e82878d939aa1a9aca59d948c837a70675d53493e34291e14090000000000000000000000000814202c38434f5b67737e8b96a2ada195897d7165594e42363c4854606c7885919da9a195897d7165594d42362a1e120600000000000000000000000000000c1925323f4c5865727e8c98a5b2a79a8e8174675a4d4134271a0e010000000000010d18232e39434e58616a737b838a90969b9fa2a5a2a09f9e9d9d9e9fa1a4a5a29e9a948e8880786f665c52483d32271c1105000000000000000000000000000000000000030f1a26313b454d555e666e767e878f979fa1978d83786e645a50463b31271d13080000000000000000000000000000000000000000000013202c3946535f6c798693a0acacacacaba0958b80756a5f554a3f342a1f140900000000000000000915222f3c4855626f7b8895a2aca09386796d6053463a2d2013070000000000000000000000000000000814212d3946525e6a77838f9ca89d9084786b5f53463a2e2115090000000000000005101a242d363c41444444444444433f3931281f14121c262f373e42444444444444423e372f261c1207000000000000000000000000000000000000000013202c3946535f6c798693a0acaa9d908376695d5043372a222325292e353d464f59636e7984909ba7b3b2a6998c7f7265594c3f3226231f1b150e0600000000000000000000000000000000020f1b2734404c5965717d8a96a2a4978b7e72665a4d4135291c100400000000000000000000000000000000000000000000000f1c2835424f5b6875828f9ca8b0a4978a7d7063574a3d3024170a00000000000000000000000000000000000000000013202c3946535f6c798693a0acada09386796d6053463a2d201307000000000000000000000000000815212e3b4854616e7b8894a1aeaa9e9184776a5d5144372a1e110000000000101c2936434f5c697683909b9b9b9b9b9b9b9b9b9b9b9b9b9b9b9fa6b0b1a79f9b9b9b9b9b9b9b9b9b9b9b9b9b9b9b9084776a5d5044372a1d110400000000000000000009131d26303a434d57606a747d8a96a3b0aa9f948a8178716a65625f5e5e5e6062666a70778089929ca6a89e93897e73685d51463a2e23170b00000000000000131f2c3945525e6a75808a949ea8aea295887e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7a6e6154483b2e2115080013202c3946535f6c798693a0acaeaea8a4a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a4a4a5a7a9a7a4a19d99948f89837c746c645b52493f352b20150b0000000013202c3946535f6c798693a0acaea194887b6e6154483b2e211508000000000000000006101b25303a444e58616a737c858d959da4aba9a39c97918d898582807d7c7b7a7a7b7b7c7e8083868a8e93999ea5aca8a29a938b837a71685e554b41372d22180d020000000000000000000000010d1925303c4854606c77838f9ba7a89c9185796d6155493d313844505c6874818c98a5a59a8e82766a5e52463a2e22170b00000000000000000000000000000c1925323f4c5865727e8c98a5b2a79a8e8174675a4d4134271a0e0100000000000007121c27323c464f58616971787f858a8f9296989a9c9d9e9e9f9e9e9c9b9896928e89837d766e665d544a40362b21160b0000000000000000000000000000000000000007131f2b37424d575f67707880889199a1a4998f857b71675c52483e34291f150b010000000000000000000000000000000000000000000013202c3946535f6c798693a0a0a0a0a0a0998f84796e63594e43382d23180d0200000000000000000915222f3c4855626f7b8895a0a0a09386796d6053463a2d20130700000000000000000000000000000005111d2a36424e5b6773808c98a5a094877b6f62564a3d3125190c000000000000000a16212c3640474d5051515151514f4a433a31261b18242e3841494e5151515151514e4941382e24180d010000000000000000000000000000000000000013202c3946535f6c798693a0acaa9d908376695d5043372a1d16191d242b343d47525d68737f8a96a2aeb2a6998c7f7265594c3f322619130f0a03000000000000000000000000000000000006121e2b3743505c6874818d99a6a094887b6f63564a3e3225190d0000000000000000000000000000000000000000000000000f1c2835424f5b6875828f9ca8b0a4978a7d7063574a3d3024170a00000000000000000000000000000000000000000013202c3946535f6c798693a0acada09386796d6053463a2d201307000000000000000000000000000815212e3b4854616e7b8894a1aeaa9e9184776a5d5144372a1e110000000000101c2936434f5c697683909b9b9b9b9b9b9b9b9b9b9b9b9da3a8aab0b7b8b1aba8a49d9b9b9b9b9b9b9b9b9b9b9b9b9084776a5d5044372a1d1104000000000000000000010b141e28323e4955616c78838e99a5b1a89c8f82786f665f59555351515253565a5f666d76808a95a0aba59b9085796e62574b3f33271b0f03000000000000111d2a36424e59636d77828c96a0aaa4998e847a71717171717171717171717171717171717171717171717171717171717171717171717171695e5246392d2014070013202c3946535f6c798693a0acb2a79d9796969696969696969696969696969696969798999b9da0a3a7aaa5a09a948d867e766d645b51473c32271c110600000013202c3946535f6c798693a0acaea194887b6e6154483b2e21150800000000000000000009141e28323c464f58616a737b838b9299a0a6aba8a29d9995918f8c8a898887878888898b8d8f92969a9fa4aaa9a49d979089817970685f564c43392f251b100600000000000000000000000006121d2935414d5965707c8894a0aca4988c8074685c5044392d34404c5864707c8894a0aa9e92867a6e63574b3f33271b0f03000000000000000000000000000c1925323f4c5865727e8c98a5b2a79a8e8174675a4d4134271a0e01000000000000000b15202a343d464f585f676e74797e8386898c8e8f919192929291908e8c8986827d78726b645c544b42382e241a0f04000000000000000000000000000000000000000916222f3b47535f697179828a929aa0a09c92887d73695f554a40362c22180e03000000000000000000000000000000000000000000000013202c3946535f6c79869393939393939393887d72675d52473c31271c11060000000000000000000915222f3c4855626f7b88939393939386796d6053463a2d201307000000000000000000000000000000010e1a26333f4b5764707c8995a1a3978b7e7266594d4134281c10030000000000030f1b27323e4852595d5d5d5d5d5d5b554c42372c201e2935404a535a5d5d5d5d5d5d5a534a4035291e120500000000000000000000000000000000000000131f2c3946525f6c7985929fabaa9d9184776b5e5145382c231e1c1a19222b36404b57626e7a86929eaab2a6998c7f7265594c3f3226190c03000000000000000000000000000000000000000915222e3a47535f6b7884909da99d9184786c5f53473a2e2216090000000000000000000000000000000000000000000000000f1c2835424f5b6875828f9ca8b0a4978a7d7063574a3d3024170a00000000000000000000000000000000000000000013202c3946535f6c798693a0acada09386796d6053463a2d201307000000000000000000000000000815212e3b4854616e7b8894a1aeaa9e9184776a5d5144372a1e110000000000101c2936434f5c6976838e8e8e8e8e8e8e8e8e8e8e8e8e919ba6b2aeababafb3a79b928e8e8e8e8e8e8e8e8e8e8e8e8e84776a5d5044372a1d11040000000000000000000006121e2a36424e5a66727d8994a0abb6aa9e93897f756c62584f46454445474a4e545c646e78838e99a5aca1968a7f73675b5044382b1f13070000000000000e1a26313d47515c66707a848e98a2aaa0968c82786e65656565656565656565656565656565656565656565656565656565656565656565645f574d41362a1e11050013202c3946535f6c798693a0acada1958c8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8b8c8e9093979ba0a6aca69f98908880766d63594e43392d22170b00000013202c3946535f6c798693a0a3a3a194887b6e6154483b2e211508000000000000000000020c16202a343d464f586169717981888e949aa0a5a9a9a5a19e9b99979695949494959697999c9fa2a6aba7a39e98928c857e776f675e564d443a31271d1309000000000000000000000000000a16222e3a46525d6975818d99a5ab9f93877b7064584c403428303c4854606c7884909ca8a3978b7f73675b4f43372c201408000000000000000000000000000c1925323f4c5865727e8c98a5b2a79a8e8174675a4d4134271a0e0100000000000000040e18222b343d464e555c63686e72767a7d7f81838485858585848382807d7a76716c676059524a42392f261c120800000000000000000000000000000000000000000a1724303d4a5663707b838b9393939393938a80766b61574d43392e241a100600000000000000000000000000000000000000000000000013202c3946535f6c7986868686868686868681766b61564b40352b20150a000000000000000000000915222f3c4855626f7b86868686868686796d6053463a2d201307000000000000000000000000000000000a17232f3b4854606d7985929ea79a8e8275695d5044382b1f1307000000000005121e2b37434f5a646a6a6a6a6a6a675e54483d3024212e3a46515c656a6a6a6a6a6a655c51463a2e21150900000000000000000000000000000000000000121f2b3845515e6b7784919daaac9f9286796d6154493d342e2b28272625242f3a46515d6976828e9ba7b2a6998c7f7265594c3f3226190c00000000000000000000000000000000000000000c1925313e4a56626f7b8794a0a69a8d8175685c5043372b1f12060000000000000000000000000000000000000000000000000f1c2835424f5b6875828f9ca8b0a4978a7d7063574a3d3024170a00000000000000000000000000000000000000000013202c3946535f6c798693a0acada09386796d6053463a2d201307000000000000000000000000000815212e3b4854616e7b8894a1aeaa9e9184776a5d5144372a1e110000000000101c2936434f5c697681818181818181818181818181818a97a4aba39e9ea3aca4978b8181818181818181818181818181776a5d5044372a1d1104000000000000000000000916222e3a46525e6a76828e9aa5b1b0aca59b91887e746a61574d443a383a3d424a525c67727d8994a0aca79b9084786c6054483c2f23170b0000000000000915202b36404a545e68727c86909aa5a89e948a80756b61585858585858585858585858585858585858585858585858585858585858585858544d453b3025190d010013202c3946535f6c798693a0acaca093867d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7e808184878b8f959ba2aaaaa29a92887e756a60554a3f33281c1105000013202c3946535f6c7986939696969694887b6e6154483b2e21150800000000000000000000040e18222b343d464f575f676f767d83898f94999da1a4a8aaa8a5a4a2a1a1a1a1a2a2a4a6a8a9a6a3a09c97928d87817a746c655d554c443b32281f150b01000000000000000000000000030f1b27333f4a56626e7a86929da9a79b8f83776b5f53473b2f242b3844505c6874808c98a4a79b8f84786c6054483c3024180c010000000000000000000000000c1925323f4c5865727e8c98a5b2a79a8e8174675a4d4134271a0e010000000000000000061019222b343c434b51575d62666a6d70737476777878787877767573706d6a66615b554f4840382f261d140a0000000000000000000000000000000000000000000a1724303d4a5763707d868686868686868682786e645a4f453b31271d120800000000000000000000000000000000000000000000000000131f2c3946525f6b76797979797979797979796f655a4f44392f24190e04000000000000000000000815222f3b4855616d7879797979797979766b5f5346392d201306000000000000000000000000000000000713202c3844515d6976828e9ba79e9185796c6054473b2f22160a00000000000714202d3a46535f6b7577777777777065594c40332723303d4956626e7777777777776e62564a3d3124180b00000000000000000000000000000000000000111d2a3643505c6975828e9ba7aea295897d71655a4f463f3a3735333232313135414d5a66727f8b98a4b1a6998c7f7265594c3f3226190c0000000000000000000000000000000000000003101c2835414d5966727e8b97a3a3968a7d7165594c4034271b0f030000000000000000000000000000000000000000000000000f1c2835424f5b6875828f9ca8b0a4978a7d7063574a3d3024170a00000000000000000000000000000000000000000013202c3946535f6c798693a0acada09386796d6053463a2d201307000000000000000000000000000815212e3b4854616e7b8894a1aeaa9e9184776a5d5144372a1e1100000000000f1c2835424e5a667174747474747474747474747478838e99a5a39992929aa4a69a8e847874747474747474747474747471675b4f4236291d1003000000000000000000000c1925313e4a56626f7b87939fabada59f9ea29a90867c73695f564c42392f3138404a55606c77838f9ba7aca094887c7064584b3f33271a0e020000000000040f19242e38424c56606a747e89939da7a69c92887d73695f554b4b4b4b4b4b4b4b4b4b4b4b4b4b4b4b4b4b4b4b4b4b4b4b4b4b4b4b4b4b4b48433c33291f1408000013202c3946535f6c798693a0acaca09386797070707070707070707070707070707070717375777b7f848a9098a0a9aca49a91877c71665b5044392d21150a000013202c3946535f6c79868a8a8a8a8a8a887b6e6154483b2e2115080000000000000000000000061019222b343d454d555d646b72787e83888d9195989b9ea0a1a3a4a5a5a5a5a5a4a2a19f9d9a9793908b86817b766f69625a534b433a322920160d03000000000000000000000000000814202c37434f5b67737e8a96a2aea2968a7e72665b4f43372b1f27333f4b5864707c8894a0aca094887c7064584d4135291d11050000000000000000000000000c1925323f4c5865727e8c98a5b2a79a8e8174675a4d4134271a0e01000000000000000000071019222a323940464c51565a5e616466686b6e6f70706f6c6a686664615e5a55504a443d362e261d140b020000000000000000000000000000000000000000000a1723303d4a56636f7879797979797979797970665c52483e33291f150b0100000000000000000000000000000000000000000000000000111e2a37434f5a646b6c6c6c6c6c6c6c6c6c6c675e53483d33281d120800000000000000000000000714202d3945515c666c6c6c6c6c6c6c6c6b645a4f43372b1e12050000000000000000000000000000000004101c2835414d5a66727e8b97a0a095887c7063574b3e32261a0d00000000000714212e3a4754606d79848484848174685b4f42362924303d4a5663707c848484847e7265594c4033271a0e010000000000000000000000000000000000000f1b2834414d5a66737f8b98a4b0a5998d82766b6158514b464442403f3e3e3e3e3e4a5763707d8a96a3b0a6998c7f7265594c3f3226190c0000000000000000000000000000000000000007131f2c3844505d6975828e9aa79f93877a6e6255493d3024180b000000000000000000000000000000000000000000000000000f1c2835424f5b6875828f9ca8b0a4978a7d7063574a3d3024170a00000000000000000000000000000000000000000013202c3946535f6c798693a0acada09386796d6053463a2d201307000000000000000000000000000815212e3b4854616e7b8894a1aeaa9e9184776a5d5144372a1e1100000000000d1a26323e4a555f656767676767676767676769747f8a95a0a89d928788939ea9a0958a7f746967676767676767676767665f554a3f33271a0e01000000000000000000030f1c2835414d5a66727e8b97a3afa69b939298a1988f857b71685e544b41372e2e39444f5b67737f8b97a3b0a5988c8074675b4f42362a1d110400000000000008121c26303a444e58626c77818b959fa9a3998f857b71675d53483e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3c38312a21170d02000013202c3946535f6c798693a0acaca09386796c636363636363636363636363636363646566686b6e73787e868e97a1abaca3988e83786c61554a3e32261a0e010013202c3946535f6c787d7d7d7d7d7d7d7d7a6e6154473b2e211408000000000000000000000000071019222b333c434b525a60676d72777c8185898c8f9193959697989898989897969492908e8b87837f7a76706a645e5750494139312820170e0400000000000000000000000000010d1924303c4854606c77838f9ba7a99e92867a6e62564a3e32261a232f3b47535f6b7884909ca8a4998d8175695d5145392d21160a0000000000000000000000000c1925323f4c5865727e8c98a5b2a79a8e8174675a4d4134271a0e010000000000000000000007101820272e353b40454a505860676d73777a7c7d7d7b7975706a635c544d49443f39322b241c140b02000000000000000000000000000000000000000000000915222e3a47525d676c6c6c6c6c6c6c6c6c6c685f544a40362c22170d0300000000000000000000000000000000000000000000000000000e1a26323e48525a5f5f5f5f5f5f5f5f5f5f5f5c554c41372c21160b01000000000000000000000004111d2934404a545b5f5f5f5f5f5f5f5f5f5a52493e33271b0f0200000000000000000000000000000000000d1925313e4a56636f7b88939393938c8073675a4e4235291c10000000000006131f2c3845515e6a778390919083776a5e5145382c222f3b4854616d798691918d8174685b4f42362a1d11040000000000000000000000000000000000000c1925323e4a57636f7b87939fabaa9e93887d736a625c5753504e4d4c4b4b4a4a4a4a55626f7c8895a2afa6998c7f7265594c3f3226190c000000000000000000000000000000000000000a16232f3b4854606c7985919ea89c9083776a5e5246392d211408000000000000000000000000000000000000000000000000000f1c2835424f5b6875828f9ca8b0a4978a7d7063574a3d3024170a00000000000000000000000000000000000000000013202c3946535f6c798693a0acada09386796d6053463a2d201307000000000000000000000000000815212e3b4854616e7b8894a1aeaa9e9184776a5d5144372a1e1100000000000a16222d38434c54595b5b5b5b5b5b5b5b5b65707a86909ba6a1968b80828c97a3a69c91867b70655b5b5b5b5b5b5b5b5b5a554d44392e22170b0000000000000000000005121f2b3744505d6976828e9ba7aea2958a868f99a1978d837a70665d534940362c333f4a57636f7b8794a0ada89c9084776b5e5245392c201307000000000000000a141e28323c46515b656f79838d97a1aba1978d83796f645a50463c323232323232323232323232323232323232323232323232323231302c2620180f0500000013202c3946535f6c798693a0acaca09386796c5f565656565656565656565656565657585a5c5f62676d747c858f99a4afaa9f94897d72665a4e42362a1e110500121e2b3744505c676e70707070707070706f685d5145392d20130700000000000000000000000000071019212a323941484f555b61676c7075797c80828586888a8b8b8c8c8c8b8a89888684817e7b77736f6a655f59534c463e372f271f160e05000000000000000000000000000006121d2935414d5964707c8894a0aca5998d8175695d51463a2e22161f2b37434f5b6773808c98a4a99d9185796d62564a3e32261a0e0200000000000000000000000c1925323f4c5865727e8c98a5b2a79a8e8174675a4d4134271a0e010000000000000000000000060e151d232a323d465059626a72787e8387898a898885817b756e665d544b41372e27211a120a02000000000000000000000000000000000000000000000006121e2a36414c555c5f5f5f5f5f5f5f5f5f5f5c564d43382e241a10060000000000000000000000000000000000000000000000000000000a16212c3740484f5253535353535353535353504b433a30251a0f05000000000000000000000000000c18232e38424a505253535353535353524f4940372c21160a0000000000000000000000000000000000000915222e3a47535f6c7884868686868683766a5d5144372b1e11000000000004101d2936424f5b6874818d9a9286796d6054473b2f222c3945515e6a7783909c9084776a5e5245392c2013070000000000000000000000000000000000000916222e3b47535f6b77828e99a4afa49a8f857c746d67635f5d5b595958575757575656626f7b8895a2afa6998c7f7265594c3f3226190c000000000000000000000000000000000000010d1a26323f4b5764707c8995a1a5988c8073675b4f42362a1d1105000000000000000000000000000000000000000000000000000f1c2835424f5b6875828f9ca8b0a4978a7d7063574a3d3024170a00000000000000000000000000000000000000000013202c3946535f6c798693a0acada09386796d6053463a2d201307000000000000000000000000000815212e3b4854616e7b8894a1aeaa9e9184776a5d5144372a1e11000000000005111c27313a43494d4e4e4e4e4e4e4e55606b76818c97a2a69b90857a7b86919ca7a2978c81766b61564e4e4e4e4e4e4e4d49433b32271d1106000000000000000000000814212d3a4653606c7885919eaaab9f92867d87919a9f958c82786f655b52483e352e3a47535f6b7884919daaac9f93867a6d6154483b2f22160900000000000000020c16202b353f49535d67717b858f9aa4a99f958b81766c62584e443a302625252525252525252525252525252525252525252525252523201b150e060000000013202c3946535f6c798693a0acaca09386796c5f534a4a4a4a4a4a4a4a4a4a4a4a4a4a4b4d4f52565c626a737d87929da9b1a69a8e83766a5e5246392d211408000f1c28343f4a555d626363636363636363635e564c4135291d11040000000000000000000000000000070f1820272f363d444a50565b6065696c707376787a7b7d7e7e7e7f7e7e7d7c7b797775726f6b67635e59544e48423b342d251d150d040000000000000000000000000000000a16222e3a46515d6975818d99a4aca094897d7165594d4135291d111b27333f4b57636f7b8894a0aca2968a7e72665a4e42372b1f130700000000000000000000000c1925323f4c5865727e8c98a5b2a79a8e8174675a4d4134271a0e01000000000000000000000000040d18242f3a444e58626b747c848a8f9395969694918d8780786f665d53493f34291e130800000000000000000000000000000000000000000000000000020e19252f3a434b5053535353535353535353504b443b31271c12080000000000000000000000000000000000000000000000000000000005101a252e373e43464646464646464646464644403931281e1309000000000000000000000000000007121c2630383f43464646464646464646433e372e251b100500000000000000000000000000000000000006121e2b3743505c687479797979797979756a5d5144372b1e110000000000010e1a2733404c5965727e8b9795897c7063574a3e31252936424f5b6874818d9a93867a6d6154483b2f22160a00000000000000000000000000000000000006121e2b37434e5a66717d88929da7aba1978e867e78736f6c6967666565646464636363636f7b8895a2afa6998c7f7265594c3f3226190c00000000000000000000000000000000000004111d2936424e5b6773808c98a4a195897c7064584b3f33261a0e010000000000000000000004090b0d0d0d0d0d0d0d0d0d0d0d0d0f1c2835424f5b6875828f9ca8b0a4978a7d7063574a3d3024170d0d0d0d0d0d0d0d0d0d0d0d0c0a070300000000000013202c3946535f6c798693a0acada09386796d6053463a2d201307000000000000000000000000000815212e3b4854616e7b8894a1aeaa9e9184776a5d5144372a1e110000000000000a151f2831383d40414141414146515c67727d88939ea8a0958a7e7475808b96a1a99e93887d72675c51464141414141413d38312920160b00000000000000000000000a16232f3c4955626e7b8894a1ada99c9083777e88929c9e948a81776d645a50473d333743505c6975828e9ba8aea295897c7063574a3d3124180b0000000000000000040f19232d37414b555f69737d88929ca6a79c92887e746a60564c42372d23191818181818181818181818181818181818181818181817140f0a03000000000013202c3946535f6c798693a0acaca09386796c5f53463d3d3d3d3d3d3d3d3d3d3d3d3e3f4043464b5158616b76818c98a4afab9f93877a6e6255493d3024170a000b17232e39434b5256565656565656565656534c443a2f24190d01000000000000000000000000000000060e161d242c32393f454a4f54585c606466696b6d6f7071727272727171706e6d6b6865625f5b57524d48423d373029221b130b03000000000000000000000000000000030f1b27333f4a56626e7a86919da9a89c9084786c6054483d3125190d17232f3b47535f6b77838f9ba8a69a8e83776b5f53473b2f23170c00000000000000000000000c1925323f4c5865727e8c98a5b2a79a8e8174675a4d4134271a0e0100000000000000000000000007121e2a35404b56606a747d868e959b98959495979a98918a82786f655b50453a2f24180c000000000000000000000000000000000000000000000000000008131e2831393f444646464646464646464644403a32291f150a00000000000000000000000000000000000000000000000000000000000009131c252c3237393939393939393939393938342e271f160c020000000000000000000000000000000b141e262d333739393939393939393937322c251c130900000000000000000000000000000000000000020f1b2734404c57626a6c6c6c6c6c6c6c6b63594d4135291c100000000000000b1824313d4a56636f7c8895988b7e7266594d4034272733404c5965727e8b9795897c7063574b3e3225190c000000000000000000000000000000000000020e1a26323e4955606b76818b959ea6a9a098908a847f7b7876747372717171717070706f6f7b8895a2afa6998c7f7265594c3f3226190c0000000000000000000000000000000000000814202d3945525e6a76838f9ba89e9285796d6054483c2f23170a000000000000000000040b101518191a1a1a1a1a1a1a1a1a1a1a1a1c2835424f5b6875828f9ca8b0a4978a7d7063574a3d30241a1a1a1a1a1a1a1a1a1a1a1a1a1917130e08010000000013202c3946535f6c798693a0acada09386796d6053463a2d201307000000000000000000000000000815212e3b4854616e7b8894a1aeaa9e9184776a5d5144372a1e11000000000000030d161f262d313434343437424d58636d78838e99a4a5998e83786d6e79848f9aa5a4998f84796e63584d423734343434312d271f170e0400000000000000000000000b1825313e4b5764707d8a96a3afa79a8e817476808a939d9c938980766c62594f453c34414d5a6673808c99a6b1a4988b7e7265584c3f3326190d00000000000000000007111b252f39434d57616c76808a949ea8a49a90867c72685d53493f352b21170d0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0a07040000000000000013202c3946535f6c798693a0acaca09386796c5f5346393030303030303030303030313234363a3f464f5964707b87939facafa3968a7d7165584b3f3226190d0006121c2731394146494c4c4c4c4c4c4c4c4a47423a32281e13080000000000000000000000000000000000040b131a21272e34393f44484c5054575a5c5f6162636465656565656464646464615b56534f4b46423d37312b251e18100901000000000000000000000000000000000814202b37434f5b67737e8a96a2aea3978b8074685c5044382c201408131f2b37434f5b67737f8b97a3ab9f93877b6f63584c4034281c1004000000000000000000000c1925323f4c5865727e8c98a5b2a79a8e8174675a4d4134271a0e010000000000000000000000000b17232f3b46515d68727c86909898918c8988888a8e949c948b81776d62574c4034291d110500000000000000000000000000000000000000000000000000010c161f272e34383939393939393939393938342f2820170d03000000000000000000000000000000000000000000000000000000000000010a131a21262a2c2c2c2c2c2c2c2c2c2c2c2b28231d150d0400000000000000000000000000000000020c141c22272b2c2c2c2c2c2c2c2c2c2a27211b130a0100000000000000000000000000000000000000000b17232f3b4650585e5f5f5f5f5f5f5f5e5951473c3125190d0000000000000915222e3b4754606d7986929a8e8175685c4f43362a24313d4a56636f7b8895988c7f73665a4d4134281b0f020000000000000000000000000000000000000a16212d38444f5a646f79838c949ca3a9a29b958f8b87858281807e7e7e7d7d7d7d7d7c7c7c8895a2afa6998c7f7265594c3f3226190c0000000000000000000000000000000000000b1724303c4955616d7a86929fa79b8e8276695d5144382c2013070000000000000000060e151c212426262626262626262626262626262835424f5b6875828f9ca8b0a4978a7d7063574a3d30262626262626262626262626262626231f1a130b0200000013202c3946535f6c798693a0acada09386796d6053463a2d201307000000000000000000000000000815212e3b4854616e7b8894a1aeaa9e9184776a5d5144372a1e1100000000000000040d151b2125272828323d48535e69747f8a95a0a99e93887d726768737e89949faaa0958a8074695e54493e3328282725211c150d050000000000000000000000000d1926333f4c5965727e8c98a5b1a5998c7f736e78818b959e9b91887e746b61574e443a3f4b5865717e8b97a4b1a6998d8073675a4d4134271b0e0100000000000000000009131d27313b46505a646e78828c96a0aaa2988e84796f655b51473d33291f140a000000000000000000000000000000000000000000000000000000000013202c3946535f6c798693a0acaca09386796c5f5346392c232323232323232323232425272a2e343d48535f6b7783909ca8b2a6998d8073675a4d4134271b0e00000b17232e39444d5458595959595959595650473d32271c100400000000000000000000000000000000000001080f161c22282e33383c4044484b4d505254555757585b626a7071717171716c63574b433f3b36312c26201a140d060000000000000000000000000000000000010d1924303c4854606b77838f9ba7ab9f93877b6f63574b3f33271c10040e1b27333f4b57636f7b87939faba4988c8074685c5044382c211509000000000000000000000c1925323f4c5865727e8c98a5b2a79a8e8174675a4d4134271a0e010000000000000000000000030f1b27333f4b57636e79848e98968d86807c7b7b7e838a929b93897e73685d5145392d2115090000000000000000000000000000000000000000000000000000040d151d23282b2c2c2c2c2c2c2c2c2c2c2b28231d160e050000000000000000000000000000000000000000000000000000000000000000010910161a1e1f202020202020202020201f1c17120b04000000000000000000000000000000000000020a11171b1e20202020202020201f1e1b1610090100000000000000000000000000000000000000000007131e29343e464d5253535353535353524e473f352b20140900000000000006131f2b3845515e6a7683909c9084776b5e5245392c212e3a4753606c7985929b8e8275695c5043372b1e120500000000000000000000000000000000000005101c27323d48535d67707a828a92989ea3a6a09b9794918f8e8c8c8b8b8a8a8a8a898989898c97a3b0a6998c7f7265594c3f3226190c0000000000000000000000000000000000020e1b2733404c5864717d8a96a2a4978b7e72665a4d4135291c100400000000000000050f1820272d3133333333333333333333333333333335424f5b6875828f9ca8b0a4978a7d7063574a3d333333333333333333333333333333322f2b241d140b01000013202c3946535f6c798693a0acada09386796d6053463a2d201307000000000000000000000000000815212e3b4854616e7b8894a1aeaa9e9184776a5d5144372a1e110000000000000000030a1015181a232e39444f5a65707b86919ba6a3988d82776c61616c77838e99a4a79c91867b70655a4f44392e241a1915100a03000000000000000000000000000e1b2734414d5a6773818d9aa6b1a4978b7e71666f79838c96a09a90867d736960564c433d4a5763707d8996a3b0a89b8e8275685b4f4235291c0f02000000000000000000010b151f2a343e48525c66707a848f99a3aaa0968b81776d63594f453b30261c12080000000000000000000000000000000000000000000000000000000013202c3946535f6c798693a0acaca09386796c5f5346392c2017171717171717171717191b1e232b37424f5b6774818d9aa6b3a89b8e8275685b4f4235291c0f00000f1b28343f4b555f656666666666666661594f44382c2013070000000000000000000000000000000000000000040b11171d22272c3034383b3e414346474950575e666d747c7d7d7d7d7d74675a4d41342f2a25201b150f090200000000000000000000000000000000000006111d2935414d5864707c8894a0aba69a8e82766a5e53473b2f23170b000a16222e3b47535f6b77838f9ba7a89c9084786d6155493d3125190d010000000000000000000c1925323f4c5865727e8c98a5a7a79a8e8174675a4d4134271a0e01000000000000000000000006121f2b3743505c68737f8b96988e847b74706e6e72788089939b9085796d6155493d3125180c000000000000000000000000000000000000000000000000000000030b12171c1e202020202020202020201f1c18120c040000000000000000000000000000000000000000000000000000000000000000000000050a0e111313131313131313131313120f0c0700000000000000000000000000000000000000000000060b0f12131313131313131313110e0a050000000000000000000000000000000000000000000000020d18222c353c42454646464646464645423d362d23190e0300000000000003101c2935424e5b6774818d9993867a6d6154483b2f222b3844515d6a76838f9c9185786b5f53463a2d211408030303030201000000000000000000000000000b16212c36414b555e68707880878d92979b9ea1a3a09e9c9a999898989797979696969695979ea8b2a6998c7f7265594c3f3226190c000000000000000000000000000000000005121e2a37434f5c6874818d99a5a094887b6f63564a3e3125190d00000000000000020d17212a32383d40404040404040404040404040404040424f5b6875828f9ca8b0a4978a7d7063574a404040404040404040404040404040403f3c362f261d1309000013202c3946535f6c798693a0acada09386796d6053463a2d201307000000000000000000000000000815212e3b4854616e7b8894a1aeaa9e9184776a5d5144372a1e11000000000000000000000409141f2a35404b55606b76818c97a2a89d92877b70655a5b66717c87929da8a2978c82766c61564b40352a1f1409050000000000000000000000000000000f1b2835424e5b6875818e9ba8b0a3968a7d706367717a848e97a1988f857b72685e554b414955626f7b8895a2afa99c8f8376695c504336291d100300000000000000000000040e18222c36404a545e68727c87919ba5a79d93897f756b61574c42382e241a100600000000000000000000000000000000000000000000000000000013202c3946535f6c798693a0acaca09386796c5f5346392c20130a0a0a0a0a0a0a0a0b0c0e121a26333f4c5965727e8b98a5b1a99c8f8376695c4f4336291c100000111e2b3744505c6770737373737373726b6054483c2f23160900000000000000000000000000000000000000000000060c11161b2024282c2f32363d444c535a616970777f868a8a8a8a8174675a4d4134271e19140f090400000000000000000000000000000000000000000a16222e3a46515d6975818d98a4ada2968a7e72665a4e42362a1e12070006121e2a36424e5b67737f8b97a3ada195897d7165594d42362a1e12060000000000000000000c1925323f4c5865727e8c989a9a9a9a8e8174675a4d4134271a0e0100000000000000000000000815212e3a47535f6c7884909c91867c7269636162666e77818c97968a7e7265594d4034271b0e0200000000000000000000000000000000000000000000000000000000060b0f121313131313131313131312100c07010000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000006101a232a313639393939393939393936322b241b110700000000000001070d1a26333f4c5865717e8a9795897c7063574a3e31252935424e5b6774808d9994877b6e6255493c3023170f0f0f0f0f0f0d0b060100000000000000000000040f1a252f39434c565e666e757b81868b8f929597999b9c9d9e9e9f9f9f9fa0a0a0a0a0a1a2a7afb2a6998c7f7265594c3f3226190c00000000000000000000000000000000000915212e3a46535f6b7784909ca99d9184786c5f53473a2e2216090000000000000008131e29333c43494c4d4d4d4d4d4d4d4d4d4d4d4d4d4d4d4d4f5b6875828f9ca8b0a4978a7d7063574d4d4d4d4d4d4d4d4d4d4d4d4d4d4d4d4d4b4741382f251a0f030013202c3946535f6c798693a0acada09386796d6053463a2d201307000000000000000000000000000815212e3b4854616e7b8894a1aeaa9e9184776a5d5144372a1e110000000000000000000005101a25303b46515c67727d88939ea9a1968b80756a5f5455606b76818c97a2a99e93887d72675c51473c31261b10050000000000000000000000000000000f1c2936424f5c6975828f9ca8afa296897c6f635f68727c858f99a1978d847a70675d534a4855616e7b8894a1aeaa9d9083776a5d5044372a1d1104000000000000000000000006101a242e38424c57616b757f89939da7a59b91877d73685e544a40362c22180e03000000000000000000000000000000000000000000000000000013202c3946535f6c798693a0acaca09386796c5f5346392c201306000000000000000000020b1824313e4b5764717d8a97a4b1a99c908376695c4f4336291c100001121f2c3845525f6b788080808080807d7063574a3d3024170a000000000000000000000000000000000000000000000000060b0f141c232a313940474f565d656c737a82899197938a81776e64584c4033261a0e0904000000000000000000000000000000000000000000030f1b27333e4a56626e7a86919da9a99d9185796d61554a3e32261a0e0200020e1a26323e4a56626e7b87939faba5998e82766a5e52463a2e22170b0000000000000000000c1925323f4c5865727e8c8d8d8d8d8d8d8174675a4d4134271a0e0200000000000000000000000a1723303d4956626f7b8894988c80756a605854565c65707b87939a8e8175685c4f4336291d1003000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000002070c0e1010101010100f0d090400060a0e101010101010100e0a06000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000811192025292c2c2c2c2c2c2c2c2c2a26201a1209000000000000060d12171a24303d4956626f7b8894988c7f72665a4d41342826333f4c5864717d8a96968a7d7164584b3f33261c1c1c1c1c1c1c1a17120c050000000000000000000008131d27313a434c545c636a70767a7e8286888b8d8e9090919292929292939393949494969da8b2a6998c7f7265594c3f3226190c00000000000000000000000000000000000c1825313d4a56626e7b8794a0a6998d8175685c5043372b1e1206000000000000000c1824303a454e555959595959595959595959595959595959595b6875828f9ca8b0a4978a7d706359595959595959595959595959595959595958524b41362b2014080013202c3946535f6c798693a0acada09386796d6053463a2d201307000000000000000000000000000815212e3b4854616e7b8894a1aeaa9e9184776a5d5144372a1e11000000000000000000000b16212c37424d58636e78848e99a4a69b90857a6f64594d4e59646f7a85919ca7a59a8f84796e63584d42372c21170c010000000000000000000000000000101c2936434f5c6976838f9ca9afa295887b6f6256606a737d87909a9f968c82786f655c524854616e7a8794a1aeaa9d9184776a5d5144372a1e110400000000000000000000000008121c26303b454f59636d77818b959faaa3998f857a70665c52483e34291f150b010000000000000000000000000000000000000000000000000013202c3946535f6c798693a0acaca09386796c5f5346392c201306000000000000000002050b1824313e4b5764717d8a97a4b1a99c8f8376695c4f4336291c100004121f2c3945525f6b78858c8c8c8c8a7d7063574a3d3124170a000000000000000000000000000000000000000000000000050e171f262d353c434b525960686f767e858c949b948a81786f655c52473c3024170b00000000000000000000000000000000000000000000000814202b37434f5b67737e8a96a2aea4988c8175695d5145392d2115090000000a16222e3a46525e6a76838f9ba7aa9e92867a6e62574b3f33271b0f0300000000000000000c1925323f4c5865727e818181818181818174675a4d4134271d140900000000000000000000000b1825313e4b5764717d8a9795897c7064584e484a535e6a7783909c9084776a5d5144372b1e110500000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000060d13181b1d1d1d1d1d1d1c19150f0b11161a1c1d1d1d1d1d1c1a16110b04000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000070e14191d1f202020202020201f1d1a150f080000000000000710171e2327292e3a4753606c7985929b8e8275695c5043372a29303c4955626e7b8794998d8074675b4e4235292929292929292826231d170f07000000000000000000010b151f28313a424a52595f656a6e7276797c7e808283848485858586868686868787878b97a3afa6998c7f7265594c3f3226190c00000000000000000000000000000000030f1c2834414d5966727e8b97a3a2968a7d7165594c4034271b0f0200000000000000101c2935414c5760656666666666666666666666666666666666666875828f9ca8b0a4978a7d7066666666666666666666666666666666666666645d53483c3024180b0013202c3946535f6c798693a0acada09386796d6053463a2d201307000000000000000000000000000815212e3b4854616e7b8894a1aeaa9e9184776a5d5144372a1e1100000000000000000007121d28333d48535e69747f8a95a0aba0958a7e73685d524748535e69747f8a95a0aba0958a80746a5f54493e33281d12070000000000000000000000000000101c2936434f5c697683909ca9afa295887b6f625558616b757e88929b9e948b81776d645a5054616d7a8794a1aeaa9e9184776a5d5144372a1e1104000000000000000000000000000a141f29333d47515b656f79848e98a2aba0968c82786e645a50453b31271d13090000000000000000000000000000000000000000000000000013202c3946535f6c798693a0acaca09386796c5f5346392c20130b0b0b0b0b0b0b0c0d0f11151b26333f4c5865727e8b98a4b1a79b8e8275685b4f4235291c0f0006131f2c3946525f6c7986929999978a7d7164574a3e3124170b0000000000000000000000000000000000000000000000020d17202930383f464e555c646b727981888f979d948b81786f665d534a41362b1f140800000000000000000000000000000000000000000000000c1824303c48545f6b77838f9ba6a6a094887c7064584c4035291d11090401060b121e2a36424e5a66727e8a97a3a6a3978b7f73675b4f43372c20140800000000000000000b1824313e4a56626d7373737373737373736f64584c40382f251b1004000000000000000000000b1825323e4b5865717e8b9894877a6d6154473c424e5b6875818e9b9185786b5e5145382b1e12050000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000811181f2427292a2a2a2a2a2825201a151c2226292a2a2a2a2a2926221d160e0500000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000003090d11121313131313131313110e090400000000000006101922292f3335363844515d6a76838f9c9184786b5f5246393636363a46535f6c7885919c8f83766a5d5144383636363636363635332e2821190f06000000000000000006101921282e323940474e54595e62666a6d6f71737576777778787979797979797a7a7b8895a2afa6998c7f7265594c3f3226190c0000000000000000000000000000000006131f2b3844505d6975828e9aa69f93877a6e6155493d3024180b0000000000000000121f2b3845515d68717373737373737373737373737373737373737375828f9ca8b0a4978a7d73737373737373737373737373737373737373736f64594c4033271a0d0013202c3946535f6c798693a0acada09386796d6053463a2d201307000000000000000000000000000815212e3b4854616e7b8894a1aeaa9e9184776a5d5144372a1e110000000000000000020d18232e39444f5a65707b86919ca6a4998e83786d62574c41414c58636e79848f9aa5a79c91867b70655a4f443a2f24190e0300000000000000000000000000101c2936434f5c697683909ca9afa295887b6f62554f59636c768089939d9d938980766c625954616d7a8794a1aeaa9e9184776a5d5144372a1e110400000000000000000000000000030d17212b353f49535d67727c86909aa4a89e948a80766c61574d43392f251b110700000000000000000000000000000000000000000000000013202c3946535f6c798693a0acaca09386796c5f5346392c201818181818181818191a1b1e21262d37434f5b6774808d99a6b1a5988c8073665a4d4134271b0e000613202c3946535f6c7986939fa4978b7e7164574b3e3124180b000000000000000000000000000000000000000000000009141f29323b424951585f676e757d848b939a9e948b82786f665d544b41382f241a0e030000000000000000000000000000000000000000000000101c2935414d5864707c88949a9a9a9a8f84776c6054483c30241b19150f0c12171a1c26323e4a56626e7a86929a9a9a9a8f84786c6054483c3024170b00000000000000000916222e3a46515b63676767676767676767645d56524a41372c211509000000000000000000000b1825323e4b5865717e8b9894877a6e61554940444f5c6875828e9b9184786b5e5145382b1e1205000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000007111a222a303436363636363635312c251f272e3336363636363636332e2720170e04000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000030e18222c343a3f424242424e5b6774808d9993877a6e615548424242424244505d6975828f9b9285796d6054474242424242424242423f3a332b21170d02000000000000020d18222b33393e41424344484d52565a5d6063656768696a6b6b6b6c6c6c6c6d6d6d6f7b8895a2afa6998c7f7265594c3f3226190c000000000000000000000000000000000a16222f3b4754606c7885919ea89c8f83776a5e5246392d211408000000000000000013202c3946535f6c798080808080808080808080808080808080808080828f9ca8b0a4978a80808080808080808080808080808080808080808074675b4e4134281b0e0013202c3946535f6c798693a0acada09386796d6053463a2d201307000000000000000000000000000815212e3b4854616e7b8894a1aeaa9e9184776a5d5144372a1e11000000000000000009141f2a35404b56606b76818c97a2a99e93887d72675c51453a3b46515c67727d88939ea9a2988d82776c61564b40352a1f140a00000000000000000000000000101c2936434f5c6976828f9ca9afa295887c6f625549515a646e77818b959e9b92887e746b6157616e7a8794a1aeaa9d9084776a5d5144372a1e11040000000000000000000000000000050f19232d37414c56606a747e88929ca6a69c92887d73695f554b41372d23180e04000000000000000000000000000000000000000000000013202c3946535f6c798693a0acaca09386796c5f5346392c2525252525252525252526282a2d31373f49545f6b7783909ca8ada195897d7064574b3e3225190c000713202d3a4653606d798693a0a4988b7e7165584b3e3225180b00000000000000000000000000000000000000000000020e1a25303b444d545b626a717880878e969d9e958c827970665d544b42392f261d1308000000000000000000000000000000000000000000000000121f2b3845515d6975818d8d8d8d8d8d8b7f73675b4f43372b292825201a171e232729292e3a46525e6a76828d8d8d8d8d8d887c7064584c4033261a0d000000000000000006121e29353f4951575a5a5a5a5e636464646464625c53493d3226190d000000000000000000000b1824313e4a5764707d8a9696897d71655a514d4e56606c7884909c9083766a5d5044372a1e110400000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000030e19232c343b40434343434343413d362f2931393f424343434343423f39322920150b00000000000000000000000000000004070809090909090909090807050507080909090909090909080705010000000000000000000000000000000000000000000000000000000000000009141f2a343e454b4f4f4f4f4f5864717d8a9696897d7064574f4f4f4f4f4f4f4f5a6673808c9895887c6f63564f4f4f4f4f4f4f4f4f4e4b453d33291e130800000000000008141f29343d444a4d4f50515253545657565456585a5b5d5d5e5f5f5f5f5f5f6060626f7b8895a2afa6998c7f7265594c3f3226190c000000000000000000000000000000010d1926323e4b57636f7c8895a1a5988c8073675b4e42362a1d1105000000000000000013202c3946535f6c79868d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d949faab2a69a918d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8174675b4e4134281b0e0013202c3946535f6c798693a0acada09386796d6053463a2d201307000000000000000000000000000815212e3b4854616e7b8894a1aeaa9e9184776a5d5144372a1e110000000000000005101b25303b46515c67727d88939ea9a3988d82766b60554a3f3435404b56616c77828d98a3a99e93887d72675d52473c31261b10050000000000000000000000000f1c2935424f5c6875828f9ca8afa296897c6f63564948525c656f79838c96a09a90877d736960616e7b8894a1aeaa9d9083766a5d5043372a1d110400000000000000000000000000000007111b25303a444e58626c76808a949fa9a4998f857b71675d53493f342a20160c020000000000000000000000000000000000000000000013202c3946535f6c798693a0acaca09386796c5f5346393232323232323232323232333437393d4249515b65707b87939faba89d9185796d6154483c2f23160a000714202d3a4753606d798693a0a5988b7e7165584b3f3225180c0000000000000000000000000000000000000000000005121e2a36424c565e666d747c838a9299a09e958c837970675e544b423930261d140b0100000000000000000000000000000000000000000000000013202c3946535f6c7980808080808080807a6e62574b3f36363634312c2521292f3335363636424e5a66727e808080808080808074675a4d4134271a0e0000000000000002091018232d3740474b4d525a61686f71717171716e655a4e4235291c10000000000000000000000a16232f3c4955626e7a8793998d82776c635c595a6068727d8894998d8174685b4f4235291c1003000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000914202b353e464c4f50505050504d484138313b434a4f50505050504f4a443b31271c1105000000000000000000000000070c111415151515151515151515141111141515151515151515151514110d070100000000000000000000000000000000000000000000000000000000000d1925313c4650575b5c5c5c5c5c626e7b8794988c8073665c5c5c5c5c5c5c5c5c5c64707d8996978b7e72655c5c5c5c5c5c5c5c5c5c5b564f453b3024180c0000000000010d1925303b454f565a5b5d5e5f60616263625d544c4d4f5051515252525253535355626f7c8995a2afa5988c7f7265594c3f3226190c00000000000000000000000000000004101d2935424e5a67737f8c98a4a195897c7064574b3f33261a0e01000000000000000013202c3946535f6c7986939a9a9a9a9a9a9a9a9a9a9a9a9a9a9a9a9a9a9a9ea6b0b7aca29c9a9a9a9a9a9a9a9a9a9a9a9a9a9a9a9a9a9a9a8e8174675b4e4134281b0e0013202c3946535f6c798693a0acada09386796d6053463a2d201307000000000000000000000000000815212e3b4854616e7b8894a1aeaa9e9184776a5d5144372a1e11000000000000000b16212c37424d58636e78848e99a4a89c91867b70655a4f44392e2e39444f5a65707b87929da8a59a8f84796e63584d42372d22170c0100000000000000000000000f1b2835414e5b6874818e9ba7b0a3978a7d7064574a404a535d67707a848e97a1998f857b7268626f7c8895a2afa99c8f8276695c4f4336291d10030000000000000000000000000000000009141e28323c46505a646e78838d97a1aba1978d83796f655a50463c32281e140a0000000000000000000000000000000000000000000013202c3946535f6c798693a0acaca09386796c5f53463e3e3e3e3e3e3e3e3e3e3e3f40414346494e545b636c77828d98a4ada2978c8075695d5145382c201407000714202d3a4753606d7a8794a0a5988c7e7265584c3f3225190c000000000000000000000000000000000000000000000814212e3a46525e6870777f868d959ca09f958c837a70675e554c423930271e140b0200000000000000000000000000000000000000000000000000121f2b3845515d6871737373737373737372695e524642424242413d372f2b333a3f42424242424a56616c7373737373737373736e64584c4033261a0d000000000000050c141b222a31383f474e555d646b737a7d7d7d7d7d766a5d5043372a1d11000000000000000000000814212d3a46525f6b77838f9a93887e756e6866676b727a848e9994897c7164584c3f33271a0e01000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000d1a25313c4750585c5d5d5d5d5d59524a3f38434d555b5d5d5d5d5d5b554d43392d22160a00000000000000000000020b12181d2022222222222222222222211d1d2022222222222222222222201d18120b0300000000000000000000000000000000000000000000000000000000111d2936424d5862686969696969696c7885919b8e82756969696969696969696969696e7a87939a8e817569696969696969696969696761574c4034281c0f030000000004101d2935414d57616768696a6b6d6e6f706e665b4f43424344454545464646464a5663707d8996a3b0a5988b7e7265584c3f3225190c0000000000000000000000000000000714202c3945515e6a76838f9ba79e9285796d6054483b2f23170a00000000000000000013202c3946535f6c798693a0a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a9acacacacaca8a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a69b8e8174675b4e4134281b0e0013202c3946535f6c798693a0acaca09386796d6053463a2d201307000000000000000000000000000815212e3b4854616e7b8894a1acaa9e9184776a5d5144372a1e1100000000000007121d28333e48535e69747f8a95a0aba1968b80756a5f54493e322728333e49545f6a75808b96a1aba0958b80756a5f54493e33281d120700000000000000000000000e1a2734404d5a6773808d99a6b1a4988b7e7165584b3f414b555e68727b858f99a1978d847a7067707d8a96a3b0a89b8e8275685b4f4235281c0f0200000000000000000000000000000000020c16202a343e48525c67717b858f99a3a99f958b81766c62584e443a30261c110700000000000000000000000000000000000000000013202c3946535f6c798693a0acaca09386796c5f534b4b4b4b4b4b4b4b4b4b4b4b4c4c4e5052555a5f656d757e89939ea9a59b91867b6f64584c4034281c1004000714212e3a4754616d7a8794a1a5998c7f7265594c3f3226190c000000000000000000000000000000000000000000000916222f3c4955626f7a82899193939393938d837a71685e554c433a30271e150c020000000000000000000000000000000000000000000000000000101c2935414c57606566666666666666666660574f4f4f4f4f4f4d484138343d454b4f4f4f4f4f4f505a62666666666666666666645c52473c3024170b0000000001080f171e252d343b434a515960676e767d858a8a8a8a83776a5d5044372a1d110000000000000000000005111e2a36434f5b66727e89949a90878079757373777c848c96988e83776c6054483c3024170b0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000111d2a36424e5962686969696969645c51453d49555f676969696969675f554a3e32261a0d010000000000000000020c141c23292d2f2f2f2f2f2f2f2f2f2f2d2a292d2f2f2f2f2f2f2f2f2f2f2d29241d150d03000000000000000000000000000000000000000000000000000000121f2c3845525e6a737575757575757576828f9b918578757575757575757575757575757884919d908477757575757575757575757573695d5044372b1e11050000000006121f2c3845515d697275767778797a7c7d776b5e52453936373838383939393f4c5865717e8b97a4b0a4978a7e7164574b3e3125180b0000000000000000000000000000000b1723303c4855616d7986929fa79b8e8276695d5144382c1f130700000000000000000013202c3946535f6c798693a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a09b8e8174675b4e4134281b0e0013202c3946535f6c798693a0a0a0a09386796d6053463a2d201307000000000000000000000000000815212e3b4854616e7b8894a0a0a09e9184776a5d5144372a1e110000000000030d18232e39444f5a65707b86919ca7a69b90857a6e63584d42372c21212c38434e59646f7a85909ba6a79c91867b70655a50453a2f24190e03000000000000000000000c1926333f4c5965727e8b98a5b1a6998c8073665a4d4039434d56606a737d87909a9f968c83796f717e8b98a4b1a6998d8073675a4d4134271b0e010000000000000000000000000000000000040e18222c36404b555f69737d87919ba5a79d93887e746a60564c42382d23190f05000000000000000000000000000000000000000013202c3946535f6c798693a0acaca09386796c5f5858585858585858585858585858595a5c5f62666a70777e87919aa5a69d93897f74695e53473c3024180c00000815212e3b4854616e7b8794a1a6998c7f7366594c403326190d000000000000000000000000000000000000000000000916222f3c4955626f7c8686868686868686847a71685f564c433a31281e150c030000000000000000000000000000000000000000000000000000000c1824303a454e555959595959595959595a5c5c5c5c5c5c5c5c59534a403b464f575b5c5c5c5c5c5c5c5b59595959595959595958524a41362b1f1408000000030b131a212930373e464d545c636a727980888f96958c837970665b4f4236291c1000000000000000000000020e1a26323e4a56616c77828c9699918a8581808183888e969a91877c71665b4f44382c2014080000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000131f2c3945525e6a7476767676766d625649404d596671767676767671665a4e4236291d110500000000000000000a141e262e34393b3c3c3c3c3c3c3c3c3b393535393b3c3c3c3c3c3c3c3c3b39352f271f150b00000000000000000000000000000000000000000000000000000013202c3946535f6c798282828282828282838e9a9487828282828282828282828282828282838f9c9387828282828282828282828282786b5e5145382b1e1205000000000613202c3946535f6c7982838485868788867a6d6154483c33302f2e2e2f3238434f5b6774818d99a6afa295897c7063564a3d3024170a0000000000000000000000000000020e1a27333f4c5864717d8996a2a3978b7e72665a4d4135281c100400000000000000000013202c3946535f6c7986939393939393939393939393939393939393939393939393939393939393939393939393939393939393939393938e8174675b4e4134281b0e0013202c3946535f6c798693939393939386796d6053463a2d201307000000000000000000000000000815212e3b4854616e7b8893939393939184776a5d5144372a1e11000000000009141f2a35404b56616b76818c97a2aba094897e73685d52473c31261b1b26313c47525d68737e8a94a0aba3988d82776c61564b40352a1f150a000000000000000000000b1824313e4a5764707d8996a3afa79b8e8275685c4f43363b444e58616b757e88929b9e948b817773808d99a6b1a4988b7e7265594c3f3326190d0000000000000000000000000000000000000006101a242f39434d57616b758089949ea8a49a90867c72685e54493f352b21170d030000000000000000000000000000000000000013202c3946535f6c798693a0acaca09386796c6565656565656565656565656565656667696b6e72767b82899199a2a49c948b81776d63584d42362b1f130800000815222e3b4855616e7b8894a1a6998c807366594c4033261a0d000000000000000000000000000000000000000000000916222f3c4855616e7879797979797979797971685f564d433a31281f160c030000000000000000000000000000000000000000000000000000000008131e29333c43494c4d4d4d4d4d4d535d656969696969696969655c5247414c576167696969696969696761574d4d4d4d4d4d4d4b4741382f241a0e030000030c151d242c333a424950585f666d757c838b9299968c837a71675e554a3e33261a0e00000000000000000000000a16222e3945505b66707a848d959c96918e8c8d8f93999991887e756a60554a3e33271c1004000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000013202c3946535f6c79838383837e7266594d414e5b67748183838383766a5e5246392d2115090000000000000006111c263038404548484848484848484848464140454848484848484848484845403931271d1207000000000000000000000000000000000000000000000000000013202c3946535f6c79868f8f8f8f8f8f8f8f949e99918f8f8f8f8f8f8f8f8f8f8f8f8f8f8f8f95a098918f8f8f8f8f8f8f8f8f8f8f85786b5e5145382b1e12050000000005121f2b3844515e6a76838f9092939495897d7165594e44403d3b3b3b3c3e424a54606b7784909ca9ac9f93877a6e6154483b2f221509000000000000000000000000000005111e2a36434f5b6874808d99a5a094887b6f63564a3e3125190c0000000000000000000013202c3946535f6c798686868686868686868686868686868686868686868686868686868686868686868686868686868686868686868686868174675b4e4134281b0e0013202c3946535f6c798686868686868686796d6053463a2d201307000000000000000000000000000815212e3b4854616e7b8686868686868684776a5d5144372a1e110000000005101b26303b46515c67727d88939ea9a4998e83786d62574c41362b1f1415202b36414c57626d78838e99a4a99e93897d73685d52473c31261b10050000000000000000000916232f3c4855626e7b8794a0ada99d9084776b5e524539323c464f59636c768089939d9d93898076828f9ba8afa296897c7063574a3e3124180b000000000000000000000000000000000000000008131d27313b454f59636d77828c96a0aaa2988e847a70655b51473d33291f150a0000000000000000000000000000000000000013202c3946535f6c798693a0acaca093867971717171717171717171717171717172737475787a7e82878d939ba3a09a928a82796f655b51463b30251a0e0300000815222e3b4855616e7b8895a2a69a8d807366594d4033261a0d000000000000000000000000000000000000000000000714202d3945515c666c6c6c6c6c6c6c6c6c6c685f564d443b31281f160d040000000000000000000000000000000000000000000000000000000000020d17212a32383d4040404040404b58646f75757575757575756e63574b44515d69737575757575757573695d504440404040403f3b362f261d13080000000a151e272f363d454c535b6269717880878e959d968d847a71685f554c43382d22160a000000000000000000000005111d28333f49545e68727b838b92979b9a999a9b99948e877e766c63594e44392d22160b000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000121f2b3844515e6a778490908e8275695d51454c5966727f8c9090867a6e6255493d3125180c000000000000000b17222d38424a5155555555555555555555524c4b5155555555555555555555514b43392e23180c000000000000000000000000000000000000000000000000000013202c3946535f6c7986939c9c9c9c9c9c9c9da0a29d9c9c9c9c9c9c9c9c9c9c9c9c9c9c9c9c9da1a29d9c9c9c9c9c9c9c9c9c9c9285786b5e5145382b1e12050000000003101c2935424e5b6773808c989ea0a1998d81756a5f56504c49484848484a4e545c66717c8894a0aca89c9084776b5e5246392d20130700000000000000000000000000000815212d3a46525f6b7784909ca99d9084786b5f53473a2e22150900000000000000000000131f2c3946525f6b767979797979797979797979797979797979797979797979797979797979797979797979797979797979797979797979797972675a4d4134271b0e00131f2c3946525f6b767979797979797979766b5f5346392d201306000000000000000000000000000814212e3a4754606d77797979797979797975695d5044372a1d11000000000b16212c37424d58636e79848f99a4a99e93887d72675b50453a2f24190e0e19242f3a45505b67727d88939ea9a59a8f84796e63584d43382d22170c0100000000000000000714212d3a46535f6c7885919eaaac9f93877a6e6155493d31343d47515a646e77818b949e9b92887e85919daaaca093877a6e6155483b2f2216090000000000000000000000000000000000000000010b151f29333d47515c66707a848e98a2aaa0968c81776d63594f453b31261c120800000000000000000000000000000000000013202c3946535f6c798693a0acaca093867e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e80818284878a8e92989e9f9a958f88817870675d544a3f352a1f14090000000915222f3c4855626f7b8895a2a79a8d8173675a4d4034271a0d0100000000000000000000000000000000000000000005111d2935404b545b5f5f5f5f5f5f5f5f5f5f5d564e443b32291f160d0400000000000000000000000000000000000000000000000000000000000000050f1820272d313333333333404c596673808282828282827e7265584c45525f6b7882828282828282786b5e51453833333333322f2b241d140b01000006111c27303941484f565e656c747b828a9198a0968d847a71685f564d433a31271c11050000000000000000000000000c17222d38424c566069717980878b8f919292908d89837c756c645b51473c32271c1105000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000101d2a3643505c6975828f9c9285796d6155484b5764717d8a97968a7e7265594d4135281c10040000000000000f1b27333f4a545c616262626262626262625d56545d616262626262626262615d554b4034281c10040000000000000000000000000000000000000000000000000013202c3946535f6c7986909090909090909090959f9a929090909090909090909090909090909196a099929090909090909090909085786b5e5145382b1e120500000000000d1a26333f4b5764707c88949faba99e92877c7168615c585655545455575a5f656e78828d99a4afa3988c8074675b4f43362a1d110500000000000000000000000000000c1824313d4956626e7a8793a0a6998d8174685c5043372b1e120600000000000000000000111e2a37434f5a646b6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6961564a3e3226190d00111e2a37434f5a646b6c6c6c6c6c6c6c6c6b645a4f43372b1e12050000000000000000000000000006131f2c3844505b656c6c6c6c6c6c6c6c6c6a63584d4135281c0f00000007121d28333e49535e69747f8a95a0aba3988d82766b60554a3f34291e130808131e29343f4a55606b76818c97a2aba1968b80756a5f54493e33281d1308000000000000000005121e2b3744505c6975828e9aa6afa2968a7d7165594d41362b353f48525c656f79828c969f9a90878894a0ada99d9084776b5f5246392d201407000000000000000000000000000000000000000000030d17212b35404a545e68727c86909aa5a89d93897f756b61574d42382e241a1006000000000000000000000000000000000013202c3946535f6c798693a0acaea2968d8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8c8c8d8f9193969a9d9a97938f8a847d766e665e554b42382d23180d020000000916222f3c4955626f7c8995a2a79a8d8174675a4d4134271a0e01000000000000000000000000000000000000000000010d18242e39424a5053535353535353535353514c443c322920170d04000000000000000000000000000000000000000000000000000000000000000000060e151c21242626262633404c596673808c8f8f8f8f8c7e7265584c45525f6b78858f8f8f8f8f85786b5e5145382b26262626231f19130b020000000b17232e38424b525a616870777e868d949ca0978e847b72685f564d443a31281f150b0000000000000000000000000006111b26303b444e575f676f757b808385868584817d78726b635b52493f352b20160b000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000f1b2835414e5b6774818d9a95897d7165584c4956636f7c89959a8e8275695d5145382c201408000000000000121e2b3743505b666d6f6f6f6f6f6f6f6f6e685d5c666e6f6f6f6f6f6f6f6f6e675c5145382c1f13060000000000000000000000000000000000000000000000000013202c3946535f6c79848484848484848484848e9a9589848484848484848484848484848484848f9c93878484848484848484848484786b5e5145382b1e120500000000000a17232f3b47545f6b77838e99a4aea3988d837a726c6865636161616263666a7077808a949faaa99e92877b6f63574b3f33271a0e0200000000000000000000000000030f1b2834404d5965727e8a97a3a2968a7d7165594c4034271b0f02000000000000000000000e1a26323e48525a5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5d574f44392e22160a000e1a26323e48525a5f5f5f5f5f5f5f5f5f5f5a52493e33271b0f020000000000000000000000000004101c28343f4a535b5f5f5f5f5f5f5f5f5f5e5951473c3025190c0000030e18232e39444f5a65707b86919ca7a79c91867b70655a4f44392e23170c01010d18232e39444f5a65707b86919ca7a79c91867b70665b50453a2f24190e0300000000000000030f1b2834414d5966727e8a96a3afa69a8d82756a5e52473c322d36404a535d67707a848d97a19992929aa4b0a5998d8174685c4f43362a1e110500000000000000000000000000000000000000000000050f19242e38424c56606a747e89939da7a59b91877d73695e544a40362c22180e040000000000000000000000000000000013202c3946535f6c798693a0acb3a89f999898989898989898989898989898989898999a9b9d9c9592908e8b87837e78726c645d544c433930261c110700000000091623303c4956626f7c8996a2a79a8e8174675a4e4134281b0e010000000000000000000000000000000000000000000007121d2730383f444646464646464646464644403a322a20170e050000000000000000000000000000000000000000000000000000000000000000000000040b101518191a1a2633404c596673808c999c9c988c7e7265584c45525f6b7885929c9c9c9285786b5e5145382b1e1a1a1917130e0801000000000f1b28333f4a545d646b737a818990979fa0978e857b726960574d443b32281f160d0300000000000000000000000000000a141f29323c454d555d646a6f73767879797775716c676059514940362d23190f04000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000d1a2633404c5966727f8c98998d8174685c504854616e7a87949e9285796d6154483c3024170b00000000000013202c3946525f6c787b7b7b7b7b7b7b7b7a6e62606d787b7b7b7b7b7b7b7b796d6054473a2e21140700000000000000000000000000000000000000000000000000131f2c3945525e6a747777777777777777777e8b9795897c7777777777777777777777777777808d9994877b7777777777777777777774695d5144372b1e1105000000000007131f2b37434f5b66727d88939da7aa9f958c847d7874716f6e6e6e6e7072767b8289929ba6aba1978c81766a5f53473b2f23170b000000000000000000000000000006121f2b3744505c6975818e9aa69f93867a6e6155493d3024180b00000000000000000000000a16212c3740484f5253535353535353535353535353535353535353535353535353535353535353535353535353535353535353535353535353514d453d33281d1106000a16212c3740484f525353535353535353524f4940372c21160a0000000000000000000000000000000c17232d3841494f525353535353535353524e473f352a1f1408000009141f2a35404b56616c76828c97a2aca1968b80756a5f54483d32271c1106000006111c27323d48535e6974808b96a1aca3988d82776c61564b40352b20150a00000000000000000c1825313d4a56626e7a86929eaaaa9e92867a6f64594e443c363238414b555e68727b858f98a29e9ea3acada195897d7164584c4033271b0e02000000000000000000000000000000000000000000000008121c26303a444e58626c76818b959fa9a3998f857a70665c52483e342a20150b0100000000000000000000000000000013202c3946535f6c798693a0acb9b1a9a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a6a6a8a1958a8684817e7b77726d67615a524b423a31271e140a00000000000a1623303c4956636f7c8996a3a89b8e8174675b4e4134281b0e0200000000000000000000000000000000000000000000000b151e262e33373939393939393939393938352f2920170e05000000000000000000000000000000000000000000000000000000000000000000000000000004090b0d0d192633404c596673808c99a6a5988c7e7265584c45525f6b7885929fa99e9285786b5e5145382b1e120d0c0a0703000000000000121e2b3744505c666e767d858c939aa0a0978e857c736960574e453b322920160d04000000000000000000000000000000030d17202a333b434b52595e63676a6b6c6c6b6865615b554e473f362e241b110700000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000c1825323e4b5764717d8a979d9184786c605447535f6c7986929f95897d7164584c4034271b0f03000000000013202c3946535f6c7986888888888888887b6f62606d7a87888888888888877a6d6154473a2e21140700000000000000000000000000000000000000000000000000111d2a36424e5962696a6a6a6a6a6a6a6a6f7c8895988c7f736a6a6a6a6a6a6a6a6a6a6a6a717d8a96968a7d716a6a6a6a6a6a6a6a6a6862584d4135281c10030000000000030f1b27323e4a55606c76818b959ea7a89e968f8984817e7c7b7a7b7b7d7f82878c939ba4aba2998f857b7065594e42372b1f130700000000000000000000000000000916222e3b4753606c7885919da89c8f83776a5e5245392d211408000000000000000000000005101a252e373e43464646464646464646464646464646464646464646464646464646464646464646464646464646464646464646464646464645413b342b21160c000005101a252e373e4346464646464646464646433e372e251b100500000000000000000000000000000006111c262f383e4346464646464646464645423d352d23190e030005101b26313b46515c67727d88939ea9a69b9085796e63584d42372c21160b000000000b16212c37424d58636e79848f9aa5a99e94897e73685d52473c31261b1005000000000000000915212d3a46525e6a76828d99a5aea3978c80756a60564e47423e3c3c434c566069737d87909aa3abafb3a89c9185796d6154483c3024170b000000000000000000000000000000000000000000000000000a141e28323c46505b656f79838d97a1aba1968c82786e645a50463b31271d130900000000000000000000000000000013202c3946535f6c798693a0acb5aba39e9e9e9e9e9e9e9e9e9e9e9e9e9e9e9e9e9fa1a3a5a1958984817c78726c66615c564f48413930281f150c0200000000000a1723303d4a5663707d8a96a3a89b8e8275685b4e4235281b0f020000000000000000000000000000000000000000000000030c141c22272b2c2c2c2c2c2c2c2c2c2c2b29241e170e05000000000000000000000000000000000000000000000000000000000000000000000000000000000000000d192633404c596673808c99a6a5988c7e7265584c45525f6b7885929fab9e9285786b5e5145382b1e12050000000000000000000013202c3946535f6c7880888f93939393938f857c736a61574e453c332920170e040000000000000000000000000000000000050e182129323941474d53575b5d5f5f5f5e5c5955504a443d352d241b12090000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000a1723303d4956636f7c8995a194887c7063574b515e6b7784919d998d8174685c5043372b1f1306000000000013202c3946535f6c7986939595959595887b6f62606d7a87949595959594877a6d6154473a2e211407000000000000000000000000000000000000000000000000000e1a26313c4750585c5d5d5d5d5d5d5d606d7986929b8e8275695d5d5d5d5d5d5d5d5d5d626e7b8794998d8073675d5d5d5d5d5d5d5d5c5750463b3024190c000000000000000a16222d39444f5a656f79838c959ca3a8a09a94908d8b8988878788898b8e93989ea5a8a19990877d73695e53483d31261a0e0200000000000000000000000000000d1925323e4a57636f7b8894a1a5988c8073675b4e42362a1d110500000000000000000000000009131c252c323739393939393939393939393939393939393939393939393939393939393939393939393939393939393939393939393939393835302922190f0500000009131c252c32373939393939393939393937322c251c130900000000000000000000000000000000000a141d262d33373939393939393939393936312b231b110700000a16212c37424d58636e79848f9aa4aa9f94897e73685d52473c31261b100400000000040f1a25313c47525d68737e89949faaa59a8f84796e63584e43382d22160b0000000000000005111d2a36424e5965717c88949faaa89d91877c72686058524e4b4948494a4e57616b747e88929ca8b5ada2978b8074685c5044382c20140800000000000000000000000000000000000000000000000000020c16202a353f49535d67717b858f99a4a89e948a80766c62574d43392f251b1107000000000000000000000000000013202c3946535f6c798693a0acb0a4999291919191919191919191919191919192939496999c9b94908d88837e77706961584f463c32281e160d030000000000000a1724303d4a5763707d8a96a3a89b8e8275685b4f4235281c0f02000000000000000000000000000000000000000000000000020a11171b1e202020202020202020201f1c18130c0500000000000000000000000000000000000000000000000000000000000000000000000000000000000000000d192633404c596673808c99a0a0988c7e7265584c45525f6b7885929fa09e9285786b5e5145382b1e12050000000000000000000013202c3946535f6c798686868686868686867c736a61574e453c332a20170e0500000000000000000000000000000000000000060f1720272f363c42474b4e51525352514f4c49443f39322b231b1209000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000815222e3b4854616e7a8794a0988c8073675b4f505c6976828f9c9d9084786c5f53473b2f23160a000000000013202c3946535f6c798693a0a2a2a295887b6f62606d7a8794a0a2a2a194877a6d6154473a2e211407000000000000000000000000000000000000000000000000000915202b353e464c50505050505050515d6a76838f9c9185786c5f5350505050505050535f6c7885919c8f83766a5d51505050505050504c463e342a1f14080000000000000005111c27333e48535d67717a838b92989ea3a5a09c9997969494949596989b9ea3a7a29d968f877e756b62574d42372c201509000000000000000000000000000004101c2935414e5a66737f8b98a4a195897c7064574b3f32261a0e01000000000000000000000000010a131a21262a2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c29251f18100700000000010a131a21262a2c2c2c2c2c2c2c2c2c2c2a27211b130a010000000000000000000000000000000000020b141b22272b2c2c2c2c2c2c2c2c2c2c2a26201911090000000e1a26323e49545e6974808a95a0a0a0998e83786d62574c40352a1f140900000000000009141f2a35404b56616c77828d99a0a0a0968b80756a5f54493e33271b0f02000000000000010d1925313d4954606b77828d98a3ada3988e847a726a635e5a5756555557595c61676f77818d9aa7b4a79c91867a6f63574c4034291f160c0200000000000000000000000000000000000000000000000000040e19232d37414b555f69737d88929ca6a69c92887e73695f554b41372d23190e040000000000000000000000000013202c3946535f6c798693a0acada093888484848484848484848484848484848586888a8d90959a9d99948f89827b736a61584e44392f24190e030000000000000b1724313e4a5764707d8a97a4a89c8f8275685c4f4236291c0f030000000000000000000000000000000000000000000000000000060b0f121313131313131313131312100c07010000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000d192633404c596673808c939393938c7e7265584c45525f6b7885929393939285786b5e5145382b1e120500000000000000000000131f2c3946525f6b76797979797979797979746a61584f463c332a21180e05000000000000000000000000000000000000000000050e161d242b31363b3f42444546464543403d38332e272019110900000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000714202d3a46535f6c7986929f9c9083776b5f534e5b6774818d9aa094887c6f63574b3f33261a0e020000000013202c3946535f6c798693a0acafa295887b6f62606d7a8794a0adaea194877a6d6154473a2e21140700000000000000000000000000000000000000000000000000030e19232c353b40434444444444444e5b6774818d9994877b6e625549444444444444505c6975828f9b9285796c605347444444444443403b342c22180d0200000000000000000b16212c37414b555f68717980878d93979b9fa1a4a4a2a1a1a1a1a2a4a4a19e9b96918b857d756c635a50453b30251a0f0400000000000000000000000000000713202c3845515d6a76828f9ba79e9285796d6054483b2f23160a0000000000000000000000000000010910161a1e1f202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020201f1d19140d06000000000000010910161a1e1f20202020202020201f1e1b1610090100000000000000000000000000000000000000020a11161b1e2020202020202020201f1d1a150f0700000000111e2a36434f5a65707b86919393939393887c71665b50453a2f24190e03000000000000030e19242f3a45505b66717c87929393939391877b71665b4f43372b1e1205000000000000000915212c38444f5a66717c87919ba5aaa0968c847c756f6a66646362626365686d7279818a939da9b2a5988c80756b62584e453b31281e140b010000000000000000000000000000000000000000000000000007111b252f39434d57616c76808a949ea8a49a8f857b71675d53493f352a20160c0200000000000000000000000013202c3946535f6c798693a0acaca0938679777777777777777777777777777778797b7d8184898f959ca09a948d857c736a60564b40362b1f14080000000000000b1724313e4a5764717d8a97a4a99c8f8275695c4f4236291c0f030000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000d192633404c596673808686868686867e7265584c45525f6b7885868686868685786b5e5145382b1e120500000000000000000000111e2a37434f5a646b6c6c6c6c6c6c6c6c6c6a62584f463d342a21180f060000000000000000000000000000000000000000000000040b131920252a2f323537393939383634302c28221c160f0700000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005121f2b3845515e6b7784919d9f93877b6f62564d5966727f8c98a4988c8073675b4f42362a1e12050000000013202c3946535f6c798693a0acaca295887b6f62606d7a8794a0adaca194877a6d6154473a2e211407000000000000000000000000000000000000000000000000000007111a232a30343637373737373f4c5865717d8a97968a7d7165584c3f37373737414d5a6673808c9894887b6f6256493d3737373736343029221a100600000000000000000005101a252f39434d565f676e757c82878b8f929597989a9a9b9b9b9a999795928f8b86807a736b635a51483e34291f14090000000000000000000000000000000a17232f3c4854616d7986929ea79b8e8275695d5144382c1f130700000000000000000000000000000000050a0e11131313131313131313131313131313131313131313131313131313131313131313131313131313131313131313131313131312100d0802000000000000000000050a0e1113131313131313131313110e0a050000000000000000000000000000000000000000000000050b0f1113131313131313131313110e09040000000000121f2c3945525f6b76828686868686868681766b60554a3f34291e1308000000000000000007121d28333e4954606b76818686868686868682776c5f5346392d2013060000000000000004101b27323e49545f6a758089939da6a89e968e86807a7673716f6f6f707274787d848b939ca5aba7a79b91877d746a60574d433a30261d1309000000000000000000000000000000000000000000000000000009131d27313b45505a646e78828c96a0aaa1978d83796f655b51463c32281e140a00000000000000000000000013202c3946535f6c798693a0acaca09386796c6a6a6a6a6a6a6a6a6a6a6a6a6b6b6d6e7174787d848b939ba59e978e857c72675d52473c3025190e0200000000000b1824313e4b5764717e8b98a4a99c908376695c4f4336291c1003000000000000000000000000000000000000000000000000000000000000000002040608090a0b0b0c0c0c0b0b0a08070503010000000000000000000000000000000000000000000000000000000000000000000000000000000c1926333f4c58657179797979797979797064584b45515e6a7679797979797979756a5e5144382b1e1205000000000000000000000e1a26323e48525a5f5f5f5f5f5f5f5f5f5f5e5850463d342b22180f060000000000000000000000000000000000000000000000000001080e141a1e2326292b2c2c2c2b2a2724201c17110b040000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000003101d2a3643505c6976828f9ca3978b7e72665a4e5864717d8a97a49c8f83776b5e52463a2e2215090000000013202c3946535f6c798693a0a2a0a095887b6f62606d7a8794a0a2a0a094877a6d6154473a2e2114070000000000000000000000000000000000000000000000000000000811181f24282a2a2a2a2a303d4956626e7b8794998d8174675b4e42352a2a323e4b5764707d8996978b7e7265594c40332a2a2a2a28241e181007000000000000000000000009131e28313b444c555d646b70767b7f8386888a8c8d8e8e8e8e8d8c8b8886837e7a756f68615951483f362c22180d020000000000000000000000000000010e1a26333f4b5864707d8995a2a3978b7e72665a4d4135281c100300000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000121f2c3845525e6b7679797979797979797970655a4f44392d22170c010000000000000000010c17222d38434e59646f787979797979797979766b5f5346392d20130600000000000000000b16212d38434e59636d77818b949ca4a89f98918b8682807d7c7b7c7d7e8184898f959da5a79f9b9ba1998f867c72695f554c42382f251b120800000000000000000000000000000000000000000000000000010b151f29343e48525c66707a848e99a3a99f958b81776c62584e443a30261c1207000000000000000000000013202c3946535f6c798693a0acaca09386796c5f5d5d5d5d5d5d5d5d5d5d5e5e5f606264686c72798189939da7a0978e84796e63584d41362a1e120600000000000b1825323e4b5865717e8b98a4a99c908376695d5043362a1d1003000000000000000000000000000000000000000000000000000000000306090c0e11131416171818191918181716151412100d0b08040100000000000000000000000000000000000000000000000000000000000000000000000b1724303d49545f686c6c6c6c6c6c6c6c685f5448424e59646b6c6c6c6c6c6c6c6b63594e4235291d1003000000000000000000000a16212c3740484f52535353535353535353524d463e342b221910060000000000000000000000000000000000000000000000000000000003090e12161a1c1e1f201f1f1d1b1814100b06000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000f1c2835424e5b6774818d9aa79b8e82766a5e5156636f7c8995a29f93877b6e62564a3e3125190d0100000013202c3946535f6c7986939f96939393887b6f62606d7a87949e96939393877a6d6154473a2e21140700000000000000000000000000000000000000000000000000000000070e14181b1d1d1d1d212d3a46535f6c7885919c8f83766a5e5145382c232f3c4855616e7a87939a8d8174685b4f4236291d1d1d1c1c1a17120c0600000000000000000000010c16212b343c434b52595f656a6f7376797c7d7f818182828181807e7c7976726e69635d564f473f362d241a100600000000000000000000000000000005111d2a36424f5b6774808c99a5a094877b6f63564a3e3125190c00000000000000000000000000000000000005090c0d0d0d0d0d0d0d0d0d0d0d0d0d0d0d0d0d0d0d0d0d0d0d0d0d0d0d0d0d0d0d0d0d0d0d0d0d0d0d0d0d0d0d0d0d0d0d0d0d0d0d0d0c090500000000000000000000000000040708080808080808080808070400000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000111d2a36424e5a646b6c6c6c6c6c6c6c6c6c675e53483d32271c11060000000000000000000006111c27323d48535e676c6c6c6c6c6c6c6c6c6b645a4f43372b1e1205000000000000000005101b26313c47515c666f78828a929aa0a7a39c97928f8c8a898888898b8d91959aa0a7a39c958e9098a1988e847a71675e544a41372d241a100600000000000000000000000000000000000000000000000000030e18222c36404a545e68727c87919ba5a79d93897e746a60564c42382e23190f050000000000000000000013202c3946535f6c798693a0acaca09386796c5f535151515151515151515151525355585c61676f77818b96a1a9a0958b8075695e52463b2e22160a00000000000c1825323f4b5865727e8b98a5aa9d9083766a5d5043372a1d11040000000000000000000000000000000000000000000000000002070b0f1215181b1d1f212224242525252525242322201e1c1a1714110d09050000000000000000000000000000000000000000000000000000000000000000000814202c38434d565d5f5f5f5f5f5f5f5f5d564d423d48525a5f5f5f5f5f5f5f5f5e5951473d3125190d010000000000000000000005101a252e373e434646464646464646464645423c342c221910070000000000000000000000000000000000000000000000000000000000000002060a0d101112131312100e0b08040000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000d1a2733404d5966737f8c99a59e92867a6d615555616e7a8794a1a3978b7e72665a4d4135291d110400000013202c3946535f6c798692998d868686867b6f62606d798693988d868686867a6d6154473a2e2114070000000000000000000000000000000000000000000000000000000000060e161d22262828282b3744505d6976828f9b9286796d6054473b2e282d3946525e6b7784909c9083776a5e5145382c282828282826231e17100700000000000000000005111c28333d464e535555555a5e63676a6d6f717273747575747473716f6d6a66625d585555524d453b31261a0f030000000000000000000000000000000814212d3946525e6b7783909ca89d9084786b5f53473a2e22150900000000000000000000000000000000040b1115181a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1816110b05000000000000000000060c10131515151515151515151513100c0600000000000000000000000000000000000000000000000000000000000000000000000000000000000000000e1a26323d48525a5f5f5f5f5f5f5f5f5f5f5c554c42372c21160b0000000000000000000000000a15202b36414c555c5f5f5f5f5f5f5f5f5f5f5a52493e33271b0f020000000000000000000a15202b353f4a545d666f7880888f959ba0a4a39e9b989796959596979a9da1a6a29d98928b83869099a0968d83796f665c53493f362c22180d020000000000000000000000000000000000000000000000000006101a242e38424c56616b757f89939da7a59a90867c72685e544a3f352b21170d0300000000000000000013202c3946535f6c798693a0acaca09386796c5f5346444444444444444444444547494c50565d656f7985909ca7a79c91867a6f63574b3f32261a0e01000000000c1925323f4c5865727e8c98a5aa9d9084776a5d5044372a1d1104000000000000000000000000000000000000000000000004090e13171b1f2225272a2c2e2f3031323232323231302e2d2b292623201d1915110c070200000000000000000000000000000000000000000000000000000000000004101b27313b444c515353535353535353514b443b3640484e5253535353535353524e483f362b20150900000000000000000000000009131c252c3237393939393939393939393836312a221a100700000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000c1825323e4b5864717e8a97a4a2968a7d71655953606c7986929fa79a8e82766a5d5145392d201408000000121f2c3945525f6b788592988c7f797979786d615f6c798692988b7e797979776c6053473a2d21140700000000000000000000000000000000000000000000000000000000050f1820282e323535353535414e5a6773808c9995887c6f63564a3e35353536434f5c6875818e9a9286796d6154483b353535353535332f292219100700000000000000000915212d39444f585f6262626262615b5e60626466676768686767666563605d6162626262625e574d42372b1f13060000000000000000000000000000000b1824303d4955626e7a87939fa6998d8174685c4f43372b1e1206000000000000000000000000000000060e161c21252727272727272727272727272727272727272727272727272727272727272727272727272727272727272727272727272727272725221d160f07000000000000020a11181c2021222222222222222221201c18110a020000000000000000000000000000000000000000000000000000000000000000000000000000000000000a15212c3640484f52535353535353535353504b433a30251a0f04000000000000000000000000040f1a25303a434b50535353535353535353524f4940372c21160a00000000000000000000030e19232e38424b545d666e767d848a8f94989c9fa1a2a3a2a2a2a3a3a19f9d9a96918c8780797e87919b9f958b82786e655b51483e34291e1307000000000000000000000000000000000000000000000000000008121c26303a454f59636d77818b959fa9a2988e847a70665b51473d33291f150b01000000000000000013202c3946535f6c798693a0acaca09386796c5f534639373737373737373838393a3c40444b535d68737f8b97a3aea3978b7f73675b4e4236291d1104000000000c1926323f4c5965727f8c99a6aa9e9184776a5d5144372a1e1104000000000000000000000000000000000000000000040a10151a1f23272b2e313436393a3c3d3e3e3f3f3f3e3e3d3b3a383533302d2925211d18130d070100000000000000000000000000000000000000000000000000000000000a152029323a4044464646464646464644403a322e363d43454646464646464645423d362d24190f04000000000000000000000000010a131a21262a2c2c2c2c2c2c2c2c2c2c2c29251f1810070000000000000000000000000000000000000000000000000000000000000000000001040608090b0c0c0d0d0d0d0d0c0b0a080604020000000000000000000000000000000000000000000000000000000000000000000000000000000003060809090909090909090907040000000000000000000000000000000000000000000000000000000000000000000a1723303d4956636f7c8995a2a69a8d8175695d515e6b7784919daa9e92867a6d6155493d3024180c000000121e2b3844515e6a778491998d80736c6c6c665c5e6b788591988c7f726c6c6b655b5044382b1f1206000000000000000000000000000000000000000000000000000000010c16212a32393e4142424242424b5764707d8996988b7e7266594d4242424242424d5966727e8b9895897c7063574a424242424242423f3a342b22180e03000000000000000b1824313d4a55616a6f6f6f6f6f6d665e575658595a5b5b5b5b5a59585860676e6f6f6f6f6e695f53473b2f2216090000000000000000000000000000020f1b2734404c5965717d8a96a3a2968a7d7165584c4033271b0f020000000000000000000000000000050f1820272d3133343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343433312e282119100600000000020b141c23282c2e2e2e2e2e2e2e2e2e2e2c28231c140b020000000000000000000000000000000000000000000000000000000000000000000000000000000000040f1a242e363d434646464646464646464644403931281e1409000000000000000000000000000008131e2831393f4446464646464646464646433e372e251b1005000000000000000000000007121c263039424b545c646c73797e84888c8f9294969798989897969593908d8a86817b756e757f89929c9d948a80766d635a50463b2f23170b00000000000000000004080b0d0d0d0d0d0d0d0d0d0d0d0d0d0d0d0d141e29333d47515b656f79838e98a2aaa0968c82776d63594f453b31271c1208000000000000000013202c3946535f6c798693a0acaca09386796c5f5346392c2a2a2a2a2a2a2b2b2c2d303439414c57636f7b8794a0ada79b8f83776a5e5245392c1f1306000000000d192633404c596673808c99a6aa9e9184776b5e5144382b1e110500000000000000000000000000000000000000030910161b21262b2f33373b3e40434547484a4b4b4c4c4b4b4a49484644423f3c3935312d28231e18130d0600000000000000000000000000000000000000000000000000000000030e1720292f3538393939393939393938342f28242c323639393939393939393936322b241b12080000000000000000000000000000010910161a1e1f2020202020202020201f1d19140e06000000000000000000000000000000000000000000000000000000000000000004080b0e101214161718191a1a1a1a191918161513110e0b07040000000000000000000000000000000000000000000000000000000000000000000000040a0f131516161616161616161514100c06000000000000000000000000000000000000000000000000000000000000000915222f3b4855616e7b8794a1aa9d9185796c60545c6976828f9ca8a2968a7d7165594c4034281c0f030000101d2a3643505c6976828f9b8e8275685f5f5b545d6a7683909a8d8174685f5f5b53493f33281c0f0300000000000000000000000000000000000000000000000000000007121d28323c444a4e4f4f4f4f4f4f55616e7a87939a8e8175685c4f4f4f4f4f4f4f4f57636f7c8995988b7e7266594f4f4f4f4f4f4f4e4b453e342a1f1409000000000000000c1926333f4c5965727b7b7b7b7b787069615a524c4d4e4e4e4e4d525a626a72797b7b7b7b7b7063564a3d3024170a000000000000000000000000000006121e2b3743505c6875818d9aa69f93867a6e6155493c3024180b0000000000000000000000000000020d17212a32393d404040404040404040404040404040404040404040404040404040404040404040404040404040404040404040404040404040403e39332b22180e030000000a141d262e34383b3b3b3b3b3b3b3b3b3b38342e261d140a00000000000000000000000000000000000000000000000000000000000000000000000000000000000008121c242c32363939393939393939393938342f281f160d020000000000000000000000000000020c161f272e34383939393939393939393937322c251c1309000000000000000000000000000a141e273039424a525a61676d73787c80838688898a8b8b8b8a8a888684817d7975706a646d77818a93939392897f756b62574c3f33271a0e00000000000000030a101518191a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1a212b353f49535d67717c86909aa4a89e93897f756b61574d43382e241a10060000000000000013202c3946535f6c798693a0acaca09386796c5f5346392c201e1e1e1e1e1e1e1f2123282f3a46535f6c7885919eabab9f93867a6d6054473b2e211508000000000d1a2633404d596673808c99a6ab9e9184776b5e5145382b1e1205000000000000000000000000000000000000070e141b21272c32373b3f43474a4d4f5254555657585858585857565453514e4c4945413d39342f2a241e18110a03000000000000000000000000000000000000000000000000000000050e171e24292b2c2c2c2c2c2c2c2c2b28241d1a21262a2c2c2c2c2c2c2c2c2c2a26211a12090000000000000000000000000000000000050a0e111313131313131313131312110d090300000000000000000000000000000000000000000000000000000000000002070c1014171a1d1f21232425262626262626252423211f1d1a1714100c070200000000000000000000000000000000000000000000000000000000000000070f151b1f22222222222222222222201c1711090100000000000000000000000000000000000000000000000000000000000714202d3a4653606c7986929faca195897c7064585b6874818e9aa7a6998d8175695c5044382c1f130700000f1c2835414e5b6774818d9a9184786b5f53504f5b6875818e9a9083776a5e524f4941372d22170b000000000000000000000000000000000000000000000000000000000b17232f3a444e565a5b5b5b5b5b5b5b5f6b7884919d9084786b5f5b5b5b5b5b5b5b5b5b606d7986929a8e8275685c5b5b5b5b5b5b5b5b5750463c3125190d010000000000000d192633404c5966738088888888827a736b645c554d4642454d555c646c747c84888888887d7063574a3d3024170a00000000000000000000000000000915222e3a47535f6c7884919da89c8f83776a5e5245392d211408000000000000000000000000000008131e29333c444a4d4d4d4d4d4d4d4d4d4d4d4d4d4d4d4d4d4d4d4d4d4d4d4d4d4d4d4d4d4d4d4d4d4d4d4d4d4d4d4d4d4d4d4d4d4d4d4d4d4d4d4d4a443d342a1f1409000006111c262f383f4548484848484848484848453f382f261c11060000000000000000000000000000000000000000000000000000000000000000000000000000000000000a121a21262a2c2c2c2c2c2c2c2c2c2c2b28231d160d0400000000000000000000000000000000040d151d23282b2c2c2c2c2c2c2c2c2c2c2a27211b130a0100000000000000000000000000020c151e27303941484f565c62676c707376797b7c7d7e7e7e7d7d7b7a7775716d69645f5b656e78828686868686867d74685b4f4235291c0f000000000000050e151b212426262626262626262626262626262626262626262d37414b56606a747e88929ca6a59b91877d73695f544a40362c22180e0400000000000013202c3946535f6c798693a0acaca09386796c5f5346392c20131111111111121214171e2b3744505d6a7683909da9aea195887b6f6256493c2f231609000000000d1a2733404d596673808d9aa6ab9e9285786b5e5145382b1f120500000000000000000000000000000000020a11181f262c32383d42474b4f5356595c5e6062636465656565646463615f5d5b5855514d4945403b352f29231c150d06000000000000000000000000000000000000000000000000000000050c13181c1f20202020202020201f1c18120f151a1e1f202020202020201f1e1a150f08000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000002080e13181c202427292c2e2f31323233333333333231302e2c2a2724201c17130d08010000000000000000000000000000000000000000000000000000000008111920272b2e2f2f2f2f2f2f2f2f2f2c28221b130a010000000000000000000000000000000000000000000000000000000006121f2c3845515e6b7784919daaa5998c8074685c596673808c99a5a99d9185786c6054483b2f23170b00000d1a26333f4c5865717e8a9794877b6f63574b4d5966727e8b9893877a6e62564a3e372f261b1106000000000000000000000000000000000000000000000000000000000f1b2734404b56606768686868686868686875828e9a93877a6e68686868686868686868686a7783909c9184786b68686868686868686761584d42362a1d11040000000000000c1925323f4b58646f78828c95948c857d766e675f5850494f575f676e767e868e95948a81766d6155493c3023160a00000000000000000000000000000c1925313e4a56636f7b8894a0a4988c8073675b4e4236291d110500000000000000000000000000000d1924303b454e55595a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a59564f463c31251a0e02000b17222d38424a5154555555555555555554514a42382d22170b000000000000000000000000000000000000000000000000000000000000000000000000000000000000000810161a1e1f2020202020202020201f1c18120b04000000000000000000000000000000000000030b12171c1e2020202020202020201f1e1b16100901000000000000000000000000000000030c151e272f363e454b51565b6064676a6c6e707171717171706f6d6b6865615d5853535c6670787979797979797973685b4f4235291c0f0000000000040e171f272c31333333333333333333333333333333333333333333333a444e58626c76808a949ea9a3998f857a70665c52483e342a20160b01000000000013202c3946535f6c798693a0acaca09386796c5f5346392c20130b0b0b0b0b0c0d0e111d2936434f5c697683909ca9b0a3968a7d7063574a3d3024170a000000000d1a2734404d5a6773818d9aa7ac9f9285786b5f5245382c1f1205000000000000000000000000000000040c141c232a31373d43494e53575c5f6366686b6d6e70717172727171706f6e6c6a6764615e5a55514c46403a342d261f18100800000000000000000000000000000000000000000000000000000001070c1012131313131313131312100c07040a0e11131313131313131313110e0a04000000000000000000000000000000000000000000000000000005090c0e0e0e0e0e0e0e0e0e0e0c09050000000000000000000000000000000000000000000000060d13191f24282c303336383a3c3d3e3f40404040403f3e3c3b393633302c28231e19130d06000000000000000000000000000000000000000000000000000005101a232b32373b3c3c3c3c3c3c3c3c3b39342d251c13080000000000000000000000000000000000000000000000000000000003111d2a3743505d6976838f9ca9a89c9084786b5f5864717e8a97a4aca195887c7064584b3f33271b0e02000b1724303d4956626f7b8794978b8073685c504a57636f7c8894978a7e72675b4f44382d22170c0200000000000000000000000000000000000000000000000000000000101d2a3643505c6872757575757575757575757f8b9896897d7575757575757575757575757575818d9a93877a757575757575757575736a5e5245392c1f13060000000000000a17232f3b47525d66707a838d97978f8880787169625a53596169717880889098968c82786e655b5045392d2114080000000000000000000000000004101c2835414d5a66727e8b97a4a195897c7064574b3f32261a0e010000000000000000000000000000101c2935414c57606667676767676767676767676767676767676767676767676767676767676767676767676767676767676767676767676767676661584d42362a1e1105000f1b27333f4a545c616161616161616161615c544a3f33271b0f0300000000000000000000000000000000000000000000000000000000000000000000000000000000000000040a0e111313131313131313131312100c0701000000000000000000000000000000000000000000060b0f1213131313131313131313110e0a05000000000000000000000000000000000000030c151d242c333a40454b4f54575b5d60626364646564646362605e5c5955514d484a545e676c6c6c6c6c6c6c6c6a62574b3f33271a0e00000000010c16202931383d40404040404040404040404040404040404040404040404046505a646e78838d97a1aba1978c82786e645a50463c32271d1309000000000013202c3946535f6c798693a0acaca09386796c5f5346392c2018181818181819191b1d212a3743505d697683909ca9b0a4978a7d7063574a3d3024170a000000000e1a2734414d5a6774818e9aa7ac9f9286796c5f5246392c1f13060000000000000000000000000000050e161e262d353c42494f545a5f63686c6f727577797b7c7d7e7e7e7e7e7d7c7a797674716d6a66615c57514c453f38312a221a120a010000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000050b1116191a1a1a1a1a1a1a1a1a1a1916110b0400000000000000000000000000000000000000020a11181f252a2f34383c3f424547494a4b4c4c4d4d4d4c4b4a494745423f3c38342f2a241e171009010000000000000000000000000000000000000000000000010c17222c353d4347494949494949494948453f372e241a0f04000000000000000000000000000000000000000000000000000000000f1c2835424e5b6874818e9aa0a0a094887b6f635763707c8996a0a0a0988c8074675b4f43372b1e1206000815212e3a46535f6b7784909b9084786d61564b54606c7885919b8f83776c60554a3e34291e130800000000000000000000000000000000000000000000000000000000111e2a3744515d6a7782828282828282828282828a97998c828282828282828282828282828282828c98968982828282828282828282796d6053463a2d20130700000000000007131f2b36414b545e68717b858e9899928a837b746c655d636b737b838a929a978e847a70665c53493f34281d11050000000000000000000000000007131f2c3844515d6976828e9ba79e9285796d6054483b2f23160a000000000000000000000000000000121f2c3845515d69727373737373737373737373737373737373737373737373737373737373737373737373737373737373737373737373737373726a5e5246392d20130700121e2b37434f5b666d6e6e6e6e6e6e6e6e6d665b4f43372b1e1205000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000030b131a21282e343a3f44484b4e515355565758585857575554524f4c4945413c424c555c5f5f5f5f5f5f5f5f5e5850453a2f23170b0000000007121d28323b43494c4d4d4d4d4d4d4d4d4d4d4d4d4d4d4d4d4d4d4d4d4d4d4d4d4d525c66717b858f99a3a89e948a80766c62584d43392f251b10050000000013202c3946535f6c798693a0acaca09386796c5f5346392c252525252525252526272a2d323a46525f6b7884919eaab0a3968a7d7063574a3d3024170a000000000e1b2834414e5b6774818e9aa7ac9f9286796c5f5346392c20130600000000000000000000000000060e17202830383f464d545a60656b6f74787b7e82848688898a8b8b8c8b8b8a89878583817d7a76726d68635d57504a433b342c241c130a01000000000000000000000000000000000004070808080808080808080808080808080808080808080808080808080808080808080808080808080808080808080808080806020000000000000000000000070f161d22252727272727272727272725221d160f060000000000000000000000000000000000030c141b232930363b4044484c4f515355575859595959595958575654524f4c4844403b352f29221b130b030000000000000000000000000000000000000000000005111d28333e474e54555555555555555555504940362c201509000000000000000000000000000000000000000000000000000000000e1a2733404d596673808c93939393938b7f73675a616e7b8793939393939084776b5f53473a2e2115080005121e2a37434f5b67737f8b9795897e72675c51505c6874808c9894887d71665b50453a3025190e02000000000000000000000000000000000000000000000000000000111e2a3744515d6a77848f8f8f8f8f8f8f8f8f8f929b9d938f8f8f8f8f8f8f8f8f8f8f8f8f8f8f8f939c9b928f8f8f8f8f8f8f8f8f86796d6053463a2d201307000000000000020e19242f39424c565f69737c8690999c958d867e766f676d757d858d959c998f857c72685e544b41372d22170c00000000000000000000000000000a16232f3b4854606d7985929ea79a8e8275695d5144382c1f130700000000000000000000000000000013202c3946535f6c7981818181818181818181818181818181818181818181818181818181818181818181818181818181818181818181818181817a6d6154473a2e2114070013202c3946525f6c777b7b7b7b7b7b7b7b776c5f5246392c20130600000000000000000000000000000000000000000000000000000000000000000000000000000000000000000407080808080808080808080704000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000010810171d23292e33373b3f424447484a4a4b4b4b4b4a49474543403d3935303a434b505353535353535353524d463e34291e1207000000000c18232f3a444d54595959595959595959595959595959595959595959595959595959595f69737d87919ba5a69c92887e74695f554b41372d22170b0000000013202c3946535f6c798693a0acaca09386796c5f534639323232323232323232333436393d434c57626e7a8793a0acafa295897c6f6356493d3023160a000000000e1b2835414e5b6774818e9ba8aca09386796c5f5346392d201306000000000000000000000000050e182029323a424951585f656b71767b8084888b8e91939496979898989898979594928f8d8a86827d79746e68625b544d463e362e251c130a010000000000000000000000000000060c101315151515151515151515151515151515151515151515151515151515151515151515151515151515151515151515151514120f0a04000000000000000006101921282e3234343434343434343434322d2821180f06000000000000000000000000000000040d151e262d343b41474c5055585b5e60626365656666666666656462605e5b5854504b46413a342d251d150d040000000000000000000000000000000000000000000916222e3a454f59606262626262626262615b52483d3125190d000000000000000000000000000000000000000000000000000000000c1925323f4b5864717e8686868686868683776a5e606c7986868686868686867b6f6356493d3023160a00020e1a27333f4b57636e7a86919a8f84786d63584d58646f7b8792998e83776c61574c41362a1e1206000000000000000000000000000000000000000000000000000000111e2a3744515d6a7784919c9c9c9c9c9c9c9c9c9da0a59e9c9c9c9c9c9c9c9c9c9c9c9c9c9c9c9c9ea0a39d9c9c9c9c9c9c9c9c9386796d6053463a2d2013070000000000000008131d27303a444d57616a747d87919a9f9790888179727880878f979f9b91877d736a60564c42392f251b110600000000000000000000000000010e1a26323f4b5764707c8995a1a3978b7e7266594d4135281c100300000000000000000000000000000013202c3946535f6c79868d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d877a6d6154473a2e2114070013202c3946535f6c798688888888888886796c5f5346392c201306000000000000000000000000000000000000000000000000000000000000000000000000000000000000060c10131515151515151515151513100c06000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000050c12181d23272b2f3335383a3c3d3e3e3e3e3e3d3c3a393634302d292831393f44464646464646464645423c342c22170d01000000000f1c2834404b565f6566666666666666666666666666666666666666666666666666666666666b758089939ea8a49a90867b71675d53493e33281c100300000013202c3946535f6c798693a0acaca09386796c5f53463e3e3e3e3e3e3e3e3e3f3f414345494e555e68737e8b97a3afaca094877a6e6154483b2f221509000000000f1b2835424e5b6875828e9ba8ada09386796d6053463a2d2013070000000000000000000000040e17202a323b444c545b626970767c82878c9094979a9d9fa1a3a4a4a5a5a5a4a3a2a09e9c9996928e8a857f79736d665f58504840372e251c1309000000000000000000000000020a11181c20212222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222211f1b150f07000000000000020d18222b33393e404141414141414141403e39322a21170d0200000000000000000000000000030c161f2730373f464c52585c6164686a6d6f707172737373737372706f6d6b6864615c57524c453e372f271f160d0300000000000000000000000000000000000000000c1825313e4a56616b6f6f6f6f6f6f6f6f6d64594d4135281c0f030000000000000000000000000000000000000000000000000000000a1724303d4a56636f787979797979797979756a5e5e6a767979797979797979786e6256493c3023160a00000a17232e3a46525e6975808b93938a7f74695f54535f6a76818d9393897e73685e52473b2e221509000000000000000000000000000000000000000000000000000000111e2a3744515d6a77849191919191919191919191949d9d9491919191919191919191919191919191959e9b93919191919191919186796d6053463a2d20130700000000000000010b151e28323b454f58626b757f89929ca29a938b847c828a9199a19c93897f756b61584e443a30271d1309000000000000000000000000000005111d2936424e5b6773808c98a5a094877b6f62564a3e3125190c0000000000000000000000000000000013202c3946535f6c7986939a9a9a9a9a9a9a9a9a9a9a9a9a9a9a9a9a9a9a9a9a9a9a9a9a9a9a9a9a9a9a9a9a9a9a9a9a9a9a9a9a9a9a9a9a9a94877a6d6154473a2e2114070013202c3946535f6c798693959595959386796c5f5346392c20130600000000000000000000000000000000000000000000000000000000000000000000000000000000020a11181c2021222222222222222221201c18110a02000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001070c12171b1f2326292b2d2f303131323231302f2e2c2a2724211d1f272e343839393939393939393836312a221910060000000000111e2b3744505c68717373737373737373737373737373737373737373737373737373737373737377828c96a1aca2978d83796f655b5044382c1f130600000013202c3946535f6c798693a0acaca09386796c5f534b4b4b4b4b4b4b4b4b4b4c4c4d4f52555a6067707a85909ba7b3a99d9184786b5f5246392d201407000000000f1c2835424f5b6875828f9ca8ada094877a6d6053473a2d20140700000000000000000000020c162029323c444d565e656d747b82888d93989ca0a4a7aaa8a5a3a2a1a1a0a1a1a2a4a6a8a8a5a29e9a95908b857e787169625a524940372e251b120800000000000000000000020b141c23282c2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2b2620191108000000000008141f2a343d444a4d4d4d4d4d4d4d4d4d4d4a443c33291f1308000000000000000000000000010b151e283139414951575e63686d717477797b7d7e7f808080807f7e7d7b797774716c68635d575049413931281f150b01000000000000000000000000000000000000000d1a2633404d5966727c7c7c7c7c7c7c7c76695d5043372a1d10040000000000000000000000000000000000000000000000000000000915222e3a47525d676c6c6c6c6c6c6c6c6c6b635959646b6c6c6c6c6c6c6c6c6c675d52463a2e211508000006121e2a35414d58636e7a85868686867b7064574e5965707b86868686857a6f63564a3d3023170a000000000000000000000000000000000000000000000000000000111e2a3744515d6a778484848484848484848484848b98978b848484848484848484848484848484848c99968a848484848484848484796d6053463a2d2013070000000000000000030c162029333d46505a636d76808a939da59d968e878c949ba39e948a81776d635950463c32281e150b0100000000000000000000000000000814202d3945525e6a77838f9ca89d9084786b5f53463a2e2215090000000000000000000000000000000013202c3946535f6c7986939e9e9e9e9e9e9e9e9e9e9e9e9e9e9e9e9e9e9e9e9e9e9e9e9e9e9e9e9e9e9e9e9e9e9e9e9e9e9e9e9e9e9e9e9e9e94877a6d6154473a2e2114070013202c3946535f6c798693a0a2a2a09386796c5f5346392c201306000000000000000000000000000000000000000000000000000000000000000000000000000000020b141c23282c2e2e2e2e2e2e2e2e2e2e2c28231c140b0200000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001060b0f13171a1c1f21222324252525242423211f1d1b181411151d23282b2c2c2c2c2c2c2c2c2c29251f181007000000000000121f2c3845525f6b7880808080808080808080808080808080808080808080808080808080808080808086929faca99f958b81776c6054473b2e21150800000013202c3946535f6c798693a0acaca09386796c5f585858585858585858585858595a5c5e61656b7179828c96a1acb0a4998d8174685c5043372a1e1105000000000f1c2936424f5c6975828f9ca8ada094877a6d6154473a2e211407000000000000000000000a141e28323b444e565f6770777f868d93999ea3a8aaa6a29e9b99979594949494949697999b9ea2a6aaa6a19c969089827b746c645b524940372d241a10060000000000000000000a141d262e34383b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3a37322b231a1006000000010d1925303b464f565a5a5a5a5a5a5a5a5a5a564e453b3024190d01000000000000000000000008131d27303a434b535b62696f74797d818386888a8b8c8c8d8d8d8c8b8a888684817d78746e68625b534b433a31271d1309000000000000000000000000000000000000000d192633404c5966738089898989898983776a5d5044372a1d110400000000000000000000000000000000000000000000000000000006121e2a36414c555c5f5f5f5f5f5f5f5f5f5e5951525a5f5f5f5f5f5f5f5f5f5f5c554b41352a1e12050000010d1925303c47525d68737979797979797064574b535f6a747979797979786f63564a3d3023170a000000000000000000000000000000000000000000000000000000111d2a3743505c697377777777777777777777777c8895988b7f77777777777777777777777777777d8a96968a7d7777777777777777756b5f5246392c201306000000000000000000040e17212b343e48515b646e78818b959ea7a09894969ea5a0968c82786f655b51473e342a20160d030000000000000000000000000000000b1724303c4955616e7a86939fa6998d8174685c4f43372b1e12060000000000000000000000000000000013202c3946535f6c7986929292929292929292929292929292929292929292929292929292929292929292929292929292929292929292929292877a6d6154473a2e2114070013202c3946535f6c798693a0acaca09386796c5f5346392c2013060000000000000000000000000000000000000000000000000000000000000000000000000000000a141d262e34383b3b3b3b3b3b3b3b3b3b38342e261d140a00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000003070a0d1012141617181818181817161513110e0b08050b12171c1e20202020202020201f1d19140e0600000000000000121f2c3845525f6b78858d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8e97a2aeb1a79d93887b6e6155483b2e22150800000013202c3946535f6c798693a0acaca09386796c656565656565656565656565656667686b6e71767c838b949ea8b2a99e93887c7064584c4034271b0f0200000000101c2936434f5c6975828f9ca9aea194877a6d6154473b2e21140800000000000000000007111c26303a444d5660687179828991979ea4aaa9a39e9a95928f8c8a898887878788898a8d8f92969a9ea4a9a7a19b948d867e756d645b52493f362c22170d020000000000000006111c262f383f4548484848484848484848484848484848484848484848484848484848484848484848484848484848484848484848484847433d352c22170c01000004111d2935414d57616667676767676767676660574c4135291d100400000000000000000000040f1a242f39424c555d656d747a8085898d909294969798999a9a999998979593908d8984807a736c655d554c43392f251a10050000000000000000000000000000000000000c1926323f4c5965727e8c96969696908376695c5043362a1d1003000000000000000000000000000000000000000000000000000000020e19252f3a434b50535353535353535353524e48484e52535353535353535353504a43392f24190d0200000008141f2a36414c5761696c6c6c6c6c6c685e53484d58626a6c6c6c6c6c6c675d52473a2e2215090000000000000000000000000000000000000000000000000000000f1b2834404c5761696a6a6a6a6a6a6a6a6a6a6d7986929b8e82756a6a6a6a6a6a6a6a6a6a6a6a6e7a8793998c80736a6a6a6a6a6a6a6963594e42362a1e110500000000000000000000050f19222c363f49525c666f79838c96a0a0a0a0a0a0a0988e847a70665d53493f352c22180e04000000000000000000000000000000000f1b2733404c5865717d8a96a0a0968a7d7165584c4033271b0f020000000000000000000000000000000013202c3946535f6c7985858585858585858585858585858585858585858585858585858585858585858585858585858585858585858585858585857a6d6154473a2e2114070013202c3946535f6c798693a0acaca09386796c5f5346392c201306000000000000000000000000000000000000000000000000000000000000000000000000000006111c262f383f4548484848484848484848453f382f261c1106000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000030607090a0b0b0b0b0b0a090806040100000000060b0f12131313131313131312110d09030000000000000000121f2c3845525f6b7885929a9a9a9a9a9a9a9a9a9a9a9a9a9a9a9a9a9a9a9a9a9a9a9a9a9a9a9a9a9a9a9aa0a9b3b9aea295887b6e6155483b2e22150800000013202c3946535f6c798693a0acaca09386797171717171717171717171717172727375777a7d82878e959da6afaba2988d82776b6054483c3024180b0000000000101d2936434f5c697683909ca9aea194887b6e6154483b2e2115080000000000000000030e19232e38424c565f68727a838b939ba2a9aba49e98928e898582807d7c7b7a7a7a7b7c7e8083868a8e93989ea4aba69f9790887f766d645b51483e33291f140a000000000000000b17222d38424a51545555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555534e473e34291d1206000006131f2c3945525e6972747474747474747472695d5145382c1f1206000000000000000000000b16212c36404b545e676f777e858b9195999c9fa1a3a1a0a09f9f9fa0a1a2a19f9c9995908b857e776f675e554b41372c21160b0000000000000000000000000000000000000c1825323f4b5865717e8b98a2a29c8f8275695c4f4236291c10030000000000000000000000000000000000000000000000000000000008131e2831393f4446464646464646464645423d3d4345464646464646464646443f3931271d130800000000030e19242f3a454f585e5f5f5f5f5f5f5c564d424650595e5f5f5f5f5f5f5c554c41362a1e12060000000000000000000000000000000000000000000000000000000c1824303b464f575c5d5d5d5d5d5d5d5d5d5e6a76838f9c9184786b5f5d5d5d5d5d5d5d5d5d5f6b7884919b8f83766a5d5d5d5d5d5d5d5951483d32261a0e02000000000000000000000007101a242d37404a545d67717a848e9393939393939390867c72685e554b41372d231a10060000000000000000000000000000000000111e2a37434f5c6874818d93939393867a6e6155493c3024170b0000000000000000000000000000000000131f2c3945525e6b757878787878787878787878787878787878787878787878787878787878787878787878787878787878787878787878787878766c6053473a2d2114070013202c3946535f6c798693a0acaca09386796c5f5346392c20130600000000000000000000000000000000000000000000000000000000000000000000000000000b17222d38424a5154555555555555555554514a42382d22170b000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000121f2c3845525f6b7885929fa6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a7abacacacaca295887b6e6155483b2e22150800000013202c3946535f6c798693a0acaca093867e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7f808284868a8e93999fa7afaaa29990867b70655a4f43372c2014080000000000101d2a3643505d697683909da9aea195887b6e6155483b2e22150800000000000000000a15202a353f4a545e68717a848d959da5ada8a19a938d87827d797673716f6e6d6d6d6e6f717376797d82878d939aa1a8a9a299918980766d63594f453b30261b10050000000000000f1b27333f4a545c6161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161615f5950453a2e22160a00000713202d3a4653606d798181818181818181796c5f5346392c20130600000000000000000005111c27323d48525c667079818990979ca1a49f9c9996959493929292939496989b9ea2a19c969089817970675d53483e33281d110600000000000000000000000000000000000b1824313e4b5764717e8b97a4a89b8e8275685b4f4235281c0f0200000000000000000000000000000000000000000000000000000000010c161f272e343839393939393939393939363232363939393939393939393937342e271f150c01000000000008131e29333d464d51535353535353504b443b3e474e52535353535353504b433a2f25190e0200000000000000000000000000000000000000000000000000000007131e29343d464c505151515151515151515b6774808d9993877a6e615551515151515151515c6975828e9a9285796c605351515151504d473f362b20150a0000000000000000000000000008121b252e38424b555f68727c8586868686868686867d746a60564c43392f251b120800000000000000000000000000000000000013202c3946525f6b7884868686868683766a5e5245392d2014080000000000000000000000000000000000111e2a36424e59636a6b6b6b6b6b6b6b6b6b6b6b6b6b6b6b6b6b6b6b6b6b6b6b6b6b6b6b6b6b6b6b6b6b6b6b6b6b6b6b6b6b6b6b6b6b6b6b6b6b6b6a645a4f44372b1f12060013202c3946535f6c798693a0acaca09386796c5f5346392c20130600000000000000000000000000000000000000000000000000000000000000000000000000000f1b27333f4a545c616161616161616161615c544a3f33271b0f0300000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000104070a0c0e10111112121111100f0d0b08050200000000000000000000000000000000000000000000000000000000121f2c3845525f6b7885929fa0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a095887b6e6155483b2e22150800000013202c3946535f6c798693a0acaea2968d8b8b8b8b8b8b8b8b8b8b8b8b8b8b8c8c8d8e9093969a9ea4aaaca69f9890877e74695f54493e32271b0f030000000000111d2a3744505d6a7783909daaaea295887b6f6255483c2f2215090000000000000005101b26313c47515b66707a838d969fa7afa79e968f88817b76716d6966646261616161626365676a6d71767b82888f969ea7aba39b92897f756b61574d42382d22170c010000000000121e2b37434f5b666d6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6b61564b3e3226190c00000713202d3a4653606d79868e8e8e8e8e8e86796c5f5346392c2013060000000000000000000b16222d39444f5a646e78828b939ba2a49e98938f8c8a8887868686868687898b8e92969ca2a19a938b82786f655a4f44392e22160b00000000000000000000000202010000000b1724313d4a5764707d8a97a4a89b8e8174675b4e4135281b0e020000010202010000000000000000000000000000000000000000000000040d151d23282b2c2c2c2c2c2c2c2c2c2c2a26262a2c2c2c2c2c2c2c2c2c2c2b28231c150d03000000000000010c17212b343b414546464646464644403a32353c4245464646464646443f3931281e130800000000000000000000000000000000000000000000000000000000020d18222b343b404344444444444444444c5865717d8a96968a7d7164584b4444444444444d5966727f8b9894887b6f63564a44444444413c352d241a0f04000000000000000000000000000009131d263039434d56606a73797979797979797979756b62584e443a31271d130900000000000000000000000000000000000000131f2c3946525f6b767979797979797973675b4e4236291d11040000000000000000000000000000000000121f2b3844515d6871727272727272727272727272727272727272727272727272727272727272727272727272727272727272727272727272727271695e5246392d2013070013202c3946535f6c798693a0acaca09386796c5f5346392c2013060000000000000000000000000000000000000000000000000000000000000000000000000000121e2b37434f5b666d6e6e6e6e6e6e6e6e6d665b4f43372b1e120500000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005090d111416191b1c1d1e1e1e1e1e1d1b191715110e0a060100000000000000000000000000000000000000000000000000121f2c3845525f6b788592939393939393939393939393939393939393939393939393939393939393939393939393939393887b6e6155483b2e22150800000013202c3946535f6c798693a0acb3a89f99989898989898989898989898989898999a9b9d9fa2a6aaa9a5a09b958e867e756b62584d43382c21160a000000000000111e2a3744515d6a7784909daaafa295887b6f6255493c2f221609000000000000000b16212d38434d58636d77828c959fa8afa69d958c857d76706a65615d5a5856555454545556585a5d61656a70767d858c959da6ada49b91877d73695e54493e33281d1207000000000013202c3946525f6c777b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b73675a4d4134271a0e00000713202d3a4653606d7986939a9a9a9a9386796c5f5346392c201306000000000000000004101b27333e4a55606b76808a949da5a29a938c8783807d7b7a79797979797b7c7e82868b90979fa59d948b81766c61564a3f33271b0f0300000000000001060a0d0e0e0e0d0c0b0a1723303d4a5663707d8a96a3a79a8d8174675a4d4134271b0e0a0b0c0d0e0f0d0b0702000000000000000000000000000000000000000000030b12171c1e2020202020202020201f1e1a1a1e1f2020202020202020201e1c17120b030000000000000000050f19222a30353839393939393938342f282b31363939393939393938342e271f160c0100000000000000000000000000000000000000000000000000000000000610192229303437373737373737373c4955626e7b8794998c8073675a4e42373737373e4a5763707c8995978b7e7265594c4037373735312b231b1208000000000000000000000000000000010b141e27313b444e5861696c6c6c6c6c6c6c6c6c6b635a50463c32281f150b0100000000000000000000000000000000000000111e2a37434f5a646b6c6c6c6c6c6c6c6961564a3e32261a0d01000000000000000000000000000000000013202c3946535f6c797f7f7f7f7f7f7f7f7f7f7f7f7f7f7f7f7f7f7f7f7f7f7f7f7f7f7f7f7f7f7f7f7f7f7f7f7f7f7f7f7f7f7f7f7f7f7f7f7f7f7a6d6154473a2e2114070013202c3946535f6c798693a0acaca09386796c5f5346392c201306000000000000000000000000000000000000000000000000000000000000000000000000000013202c3946525f6c777b7b7b7b7b7b7b7b776c5f5246392c20130600000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001060c1115191d20232527292a2b2b2b2b2a29282624211e1a16120d07020000000000000000000000000000000000000000000000121f2c3845525f6b788586868686868686868686868686868686868686868686868686868686868686868686868686868686867b6e6155483b2e22150800000013202c3946535f6c798693a0acacaca9a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a6a8a9a7a5a3a09d99948f8a837c746c635a50463b31261b1005000000000000111e2a3744515d6a7784919eaaaca296897c6f6255493c2f22160900000000000005111c27333e49545f6a747f89949ea7b1a79d948b837a736c655f5a55514e4b4948474747484a4b4e51555a5f656b737a838b949da7ada3998f857b70655b50453a2e23180c010000000013202c3946535f6c79868888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888174675a4d4134271a0e00000713202d3a4653606d798693a0a7a7a09386796c5f5346392c20130600000000000000000814202c38444f5b66727d88929ca6a2999088817b7773716f6d6c6c6c6c6d6e7072767a7f858d959ea69d93887d72675b4f44382b1f13070000000000050c1216191b1b1a191817161623303c4956636f7c8996a2a69a8d8073675a4d4034271a161718191a1b1b1a17130e0700000000000000000000000000000000000000000000060b0f1213131313131313131313110e0e1113131313131313131313120f0b0600000000000000000000000710181f25292c2c2c2c2c2c2c2b28231d20262a2c2c2c2c2c2c2c2b28231d150d04000000000000000000000000000000000000000000000000000000000000000710181e24282a2a2a2a2a2a2a2d3a46535f6c7885919c8f83766a5d5144382b2a2f3b4854606d7986929a8d8174685b4f42362a2a2825201911090000000000000000000000000000000000020c151f29323c464f585e5f5f5f5f5f5f5f5f5f5e5951483e342a20170d0300000000000000000000000000000000000000000e1a26323e48525a5f5f5f5f5f5f5f5f5d574f453a2e22160a00000000000000000000000000000000000013202c3946535f6c79868c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c877a6d6154473a2e2114070013202c3946535f6c798693a0acaca09386796c5f5346392c201306000000000000000000000000000000000000000000000000000000000000000000000000000013202c3946535f6c798688888888888886796c5f5346392c2013060000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000060c12171c2125292c2f323436373838383837363533302d2a26221d18130d0600000000000000000000000000000000000000000000121f2b3845515e6a76797979797979797979797979797979797979797979797979797979797979797979797979797979797979776d6154483b2e21150800000013202c3946535f6c798693a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a09f9e9e9c9b999794918d89847e78716a625a51483e342a1f150a00000000000000111e2b3844515e6b7784919ea0a0a096897c6f6356493c302316090000000000000a16222d38444f5a66717b86919ba5b0a99f958b82797169615a544e4945413e3d3b3a3a3b3b3d3f4245494e545a61687179828b959fa9aba1978c82776c61564b4034291d12060000000013202c3946535f6c798693959595959595959595959595959595959595959595959595959595959595959595959595959595959595958e8174675a4d4134271a0e00000713202d3a4653606d798693a0adaca09386796c5f5346392c20130600000000000000000c1824303c4854606c77838e99a4a59b90877e76706b67646261605f5f5f60616366696e747b838c96a0a49a8f83786c6054483c2f23170a00000000070f171d22262828272625242322222f3c4955626f7b8895a2a6998c807366594c403326222324252627282827241f1911090000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000060d14191d1f2020202020201f1c1812151a1d1f2020202020201e1c17120b03000000000000000000000000000000000000000000000000000000000000000000060d13181b1d1e1e1e1e1e1e2b3743505c6975828e9b9285796c6053473a2e222c3845515e6a7783909c9084776b5e5245392c201c19140e0700000000000000000000000000000000000000030d17202a343d464d51535353535353535353524e483f362c22180e050000000000000000000000000000000000000000000a16212c3740484f5253535353535353514d453d33281d120600000000000000000000000000000000000013202c3946535f6c7986939999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999994877a6d6154473a2e2114070013202c3946535f6c798693a0acaca09386796c5f5346392c201306000000000000000000000000000000000000000000000000000000000000000000000000000013202c3946535f6c798693959595959386796c5f5346392c201306000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000020a10171d23282d3135393c3e414243444545444443413f3d3a36322e29241e18110a030000000000000000000000000000000000000000101d2936424e59646b6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c665c5145382c20130700000013202c3946535f6c798693939393939393939393939393939393939393939393929291908e8c8a8784817d78736d67605850483f362c22180e0300000000000000121e2b3845515e6b7885919393939393897d7063564a3d3023170a0000000000040f1b27323e4a55606c77828d98a3adaca1978d837970675f574f48423d393532302f2e2e2e2f303235393d42484f575f677079838d97a2aca99e94897e73675c51453a2e23170b0000000013202c3946535f6c798693a0a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a29a8e8174675a4d4134271a0e00000713202d3a4653606d798693a0adaca09386796c5f5346392c20130600000000000000000f1b2834404c5965717c88949fa89f94897e756c655f5b585554535252535355575a5d6269717a848f9aa6a094887c7064584b3f3226190d00000006101921282e32353534333231302f2e2f3b4855616e7b8895a1a5988c7f7265594c3f322d2e2f30313233353533302a231b1209000000000000000000000000000000000000030608090a0a0a0908060300000000000000000000000000000000000000000000000000000000000000000000000002080d101213131313131312100c07090e1113131313131313120f0b0600000000000000000000000000000000000000000000000000000000000000000000000002070c0f1111111111111b2834414d5a66737f8c9894887b6f63564a3d31242936424f5b6874818d9993867a6d6154483b2f22160c0803000000000000000000000000000000000000000000050e18222b343c414546464646464646464645423d362d241a10060000000000000000000000000000000000000000000005101a252e373e43464646464646464645413b342b21170c0100000000000000000000000000000000000013202c3946535f6c798693a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a094877a6d6154473a2e2114070013202c3946535f6c798693a0acaca09386796c5f5346392c201306000000000000000000000000000000000000000000000000000000000000000000000000000013202c3946535f6c798693a0a2a2a09386796c5f5346392c2013060202020202020202020201000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000050d141b22282e34393d4245484b4d4f5051515151514f4e4c4946423e3a352f29231c150d05000000000000000000000000000000000000000e1a26313d48525a5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5b544a3f34281c100400000013202c3946535f6c7986868686868686868686868686868686868686868686868685848382807d7b7874716c67625c554e463e362d241a10060000000000000000121f2c3845525e6b7885868686868686867d7063564a3d3024170a00000000000814202c38434f5b66727d88939fa9afa59a8f857b71675e554d453e37312d29252322212121222426292d32373e454d555e67717b85909ba5b0a59a8f84796d62564b3f33281c100400000013202c3946535f6c798693a0acaeaea9a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a59a8e8174675a4d4134271a0e00000713202d3a4653606d798693a0adaca09386796c5f5346392c2013060000000000000000121e2b3744505c6975818d97999c998e82776c635a534e4b49474646464647484a4d52575f68727e8a96a2a5988c8073675a4e4135281c0f0200020d18222b333a3f4141403f3e3d3c3b3a393b4854616e7a8794a1a5988b7e7265584b3f393a3b3c3d3e3f404141403b352d241b1006000000000000000000000000000003080c0f121416171717161412100c080400000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000c1925323e4a5763707c8995978b7e7265594c40332727333f4c5865717e8a9795897c7063574b3e3225190c000000000000000000000000000000000000000000000000061019222a3035383939393939393939393936322b241b120800000000000000000000000000000000000000000000000009131c252c323739393939393939393835302922190f050000000000000000000000000000000000000013202c3946535f6c7986939393939393939393939393939393939393939393939393939393939393939393939393939393939393939393939393877a6d6154473a2e2114070013202c3946535f6c798693a0acaca09386796c5f5346392c201306000000000000000000000000000000000000000000000000000000000000000000000000000013202c3946535f6c798693a0acaca09386796c5f5346392c20130f0f0f0f0f0f0f0f0f0f0e0e0c0b090704010000000000000000000000000000000000000000000000000000000000000000000000000000070f171f262d333a3f45494e5155575a5c5d5e5e5e5e5d5c5a5856524f4a46403b342e271f170f070000000000000000000000000000000000000915202b3640484e52535353535353535353535353535353535353535353535353535353535353535353535353535353535353524f4a42382e23180c00000000131f2c3946525f6b767979797979797979797979797979797979797979797979797877767573716e6c6864605b56504a433c342c241b1208000000000000000000121f2b3845515e6a767979797979797979786f63564a3d3023170a00000000000d1925303c4854606b77838e9aa5b0a99e93887e73695f554c433b332c26211c1917151414141517191d21262c333b434c555f69747e89949faaaca1958a7e73675c5044382c21150900000013202c3946535f6c798693a0acb3a89f99989898989898989898989898989898989898989898989898989898989898989898989898988e8174675a4d4134271a0e00000713202d3a4653606d798693a0adaca09386796c5f5346392c201306000000000000000013202c3946535f6c7885888a8d8f92897d71665b5148433f3c3b3a3939393a3b3e41464d56616d7986929fa89b8f8276695c5043372a1d11040008141f2a343d454b4e4e4d4c4b4a49484746454754606d7a8794a0a4988b7e7164574b45464748494a4b4c4d4e4e4c473f362d22170c000000000000000000000000040a0f14181c1f212324242423211f1c1914100b050000000000000000000000000000000000000407080909090909080705010001050708090909090908070401000000000000000000000000000000000407080909090909080705010000000000000000000000000000000000000000000000000000000000000000000916222f3b4854616d7a86939a8d8174685b4f42362a24303d4956626f7b8894988c7f73665a4d4134281b0f020000000000000000000000000000000000000000000000000710181f25292c2c2c2c2c2c2c2c2c2c2c2a26211a120900000000000000000000000000000000000000000000000000010a131a21262a2c2c2c2c2c2c2c2c2c29251f181007000000000000000000000000000000000000000013202c3946535f6c7986868686868686868686868686868686868686868686868686868686868686868686868686868686868686868686868686867a6d6154473a2e2114070013202c3946535f6c798693a0acaca09386796c5f5346392c201307070707070707070707070605040200000000000000000000000000000000000000000000000013202c3946535f6c798693a0acaca09386796c5f5346392c201c1c1c1c1c1c1c1c1c1c1c1b1a19181613110e0a070200000000000000000000000000000000000000000000000000000000000000000000071019212930383e454b50555a5e616466686a6b6b6b6b6a696765625f5b56514c463f383129211910070000000000000000000000000000000000040f1a242e363d434546464646464646464646464646464646464646464646464646464646464646464646464646464646464646433f382f261c110600000000111e2a37434f5a646b6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6b6b6a686664625f5c5854504b453f39322a221a120900000000000000000000101d2936424e59646b6c6c6c6c6c6c6c6c6c675d52473a2e2215090000000004111d2935414d5965707c88949fabafa3988d82766c61574d433a3129211b15100d0a08080708090a0d10151b2129313a434d57626c77838e99a4b0a69b8f84786c6155493d3125190d00000013202c3946535f6c798693a0acaea2968d8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8174675a4d4134271a0e00000713202d3a4653606d798693a0adaca09386796c5f5346392c2013060000000000000000131f2c3945525e6b75797b7e81838585786c6054493f3732302e2d2c2c2c2d2f31353b45515e6a7784919daa9d9184776b5e5144382b1e1105000d1925303b464f565a5b5a59585756555453525153606d798693a0a4978a7d7164575051525354555757595a5b5b5851483e33281c100400000000000000000001080f151b2024282b2e2f3030302f2e2b2825201b161009020000000000000000000000000000070c11141515151515151514110d080d11141515151515151514110c0700000000000000000000000000070c11141515151515151514110d0801000000000000000000000000000000000000000000000000000000000000000713202c3945515e6a7783909c9084776b5e5245392c212e3a47535f6c7885919b8e8275695c5043372b1e120500000000000000000000000000000000000000000000000000060e14191d1f2020202020202020201f1e1a150f08000000000000000000000000000000000000000000000000000000010910161a1e1f202020202020201f1d19140d06000000000000000000000000000000000000000000131f2c3946525f6b767979797979797979797979797979797979797979797979797979797979797979797979797979797979797979797979797979776c6053473a2d2114070013202c3946535f6c798693a0acaca09386796c5f5346392c201414141414141414141414141312100f0c0a0704000000000000000000000000000000000000000013202c3946535f6c798693a0acaca09386796c5f5346392c2828282828282828282828282827262422201d1a17130e0a0500000000000000000000000000000000000000000000000000000000000000071019222b333b424950565c61666a6d7073757677787877777574716e6b67625d57514a433b332b22191006000000000000000000000000000000000008121b242c3236393939393939393939393939393939393939393939393939393939393939393939393939393939393939393937332d261d140a00000000000e1a26323e48525a5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5e5d5b5a585653504c48443f3a342e272018100800000000000000000000000e1a26313d48525a5f5f5f5f5f5f5f5f5f5f5c554c41362a1e1206000000000814212d3945515d6975818d99a4b0a99e92877b70655a50453b31281f17100904000000000000000001040910171f28313b46505b66717c88949fabaca095897d7165594d4135291d1004000013202c3946535f6c798693a0acaca093867e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e74675a4d4134271a0e00000713202d3a4653606d798693a0adaca09386796c5f5346392c2013060000000000000000111e2a36424e59636a6d6f717476797b75695c5044382d26232120201f202123292f3844515d6a7784909daa9e9285786b5e5145382b1e120500101d2935414d58616768676665636261605f5e5d5c5f6c7986929fa3968a7d70635c5d5e5f606162636465666768635a5045392d2014070000000000000000040b131a20262b3034383a3c3d3d3d3c3a3835312c27211b140d050000000000000000000000020b12181d2022222222222222201d1913181d2022222222222222201d18120b03000000000000000000020b12181d2022222222222222201d19130c0400000000000000000000000000000000000000000000000000000000000004101d2936424f5b6874818d9a93867a6d6154483b2f232b3744505d6976828f9b9185786c5f53463a2d211408000000000000000000000000000000000000000000000000000003080d101213131313131313131313110e0a04000000000000000000000000000000000000000000000000000000000000050a0e11131313131313131312100d080200000000000000000000000000000000000000000000111e2a37434f5a646b6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6b655b5044382b1f12060013202c3946535f6c798693a0acaca09386796c5f5346392c21212121212121212121212120201f1d1b191613100c0804000000000000000000000000000000000013202c3946535f6c798693a0acaca09386796c5f53463935353535353535353535353535353432312f2c2a26231f1a15100b0500000000000000000000000000000000000000000000000000000000061019222b343d454c545b61676d72767a7d808283848585848482807e7b77736e68625c554d453d342b22180e04000000000000000000000000000000000009121a21262a2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2b27221c140b0200000000000a16212c3740484f525353535353535353535353535353535353535353535353535251504f4d4b494643403c38332e29231c150e060000000000000000000000000915202b3640484e52535353535353535353504b433a2f25190e02000000000c1824303d4955616d7986929da9b0a4988d81756a5f54493e33291f160d0500000000000000000000000000050d161f29343f4a55606b77838e9aa6b1a5998e8275695d5145392d201408000013202c3946535f6c798693a0acaca093867971717171717171717171717171717171717171717171717171717171717171717171717171716d63584c3f33261a0d00000713202d3a4653606d798693a0adaca09386796c5f5346392c20130600000000000000000e1a26323d4851595e606265676a6c6e6c63584d4034281c17191c1f23262a2f343a414a54606c7985929eab9e9184786b5e5145382b1e120500121f2c3845515e697374737271706f6e6d6c6b6a69686b7885929fa296897c6f68696a6b6c6d6e6f7071727374746c6155483c2f23160900000000000000050e161d242b32373c404447494a4a4a494744413d38322c261f170f07000000000000000000020c141c23292d2f2f2f2f2f2f2f2d29241e24292d2f2f2f2f2f2f2f2d29231d150c0300000000000000020c141c23292d2f2f2f2f2f2f2f2d29241e160d040000000000000000000000000000000000000000000000000000000000010e1a2733404c5965717e8a9795897c7064574b3e32252835414e5a6773808c9994877b6e6255493c3023170b0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000e1a26323e48525a5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5b53493f33281c0f030013202c3946535f6c798693a0acaca09386796c5f5346392e2e2e2e2e2e2e2e2e2e2e2e2e2d2c2b2a282523201c18140f0a0500000000000000000000000000000013202c3946535f6c798693a0acaca09386796c5f5346424242424242424242424242424241403f3d3b3936332f2b26211c1610090200000000000000000000000000000000000000000000000000040e18222b343d464f575e656c73787d8286898c8e9091919291908f8d8a87837e79746d665f574f463d342a20160c010000000000000000000000000000000000080f151a1e1f202020202020202020202020202020202020202020202020202020202020202020202020202020202020201e1b17110a0200000000000005101a252e373e434646464646464646464646464646464646464646464646464645454342413f3c3a3734302c27231d17110b0400000000000000000000000000040f1a242e363d4345464646464646464646443f3931281e130800000000020f1b2734404c5965717d8a96a2aeaca094887c7065594e42372c22170d04000000000000000000000000000000040e18222d38434f5b66727e8a96a2aeaa9e9286796d6155493c3024170b000013202c3946535f6c798693a0acaca09386796c65656565656565656565656565656565656565656565656565656565656565656565656565625b52473b2f23170b00000713202d3a4653606d798693a0adaca09386796c5f5346392c20130600000000000000000a15212b363f474e515356585b5d6062605a51473c30241f2225282b2f33373b40454c535c66717c8895a1a99c9083766a5d5044372a1e11040013202c3946535f6c7981807f7e7d7c7b7a7978777675747885919ea295887c737475777779797b7c7d7e7e80817d7063564a3d3023170a000000000000050e171f272f363d43484c5053555657575553514d49443e3730292119100700000000000000000a141e262e34393b3c3c3c3c3c3b39352f282f35393b3c3c3c3c3c3b39352e271e140a000000000000000a141e262e34393b3c3c3c3c3c3b39352f281f160c0100000000000000000000000000000000000000000000000000000000000b1824303d4956626f7b8894988c7f73665a4d41342826323e4b5764707d8996968a7d7164584c3f33261a0d01000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000206090a0a0a0a0a0a0a0a0a0a080400000000000000000000000000000407090a0a0a0a0a0a0a0a0a0a090703000000000000000a16212c3740484f525353535353535353535353535353535353535353535353535353535353535353535353535353535353535353535353535353524f4941372d22170b000013202c3946535f6c798693a0acaca09386796c5f53463a3a3a3a3a3a3a3a3a3a3a3a3a3a3a39383634322f2c2824201b16100a040000000000000000000000000013202c3946535f6c798693a0acaca09386796c5f534f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4e4d4c4a4845423f3b37322d27211b140d060000000000000000000000000000000000000000000000010b16202a343d464f58606970777e84898e9296999b9c9e9e9e9e9d9b9997938f8a857f78716961584f463c32281d1308000000000000000000000000000000000000040a0e111313131313131313131313131313131313131313131313131313131313131313131313131313131313131313120f0b0600000000000000000009131c252c323739393939393939393939393939393939393939393939393939393837363432302d2b2724201c17120c060000000000000000000000000000000008121b242c32363939393939393939393938342e271f160c010000000005121e2a3743505c6875818d9aa6b2a89c9083776b5f54483c31261b1005000000000000000000000000000000000006111c27323e4a56616d7986929eaaaea296897d7165584c3f33271a0e010013202c3946535f6c798693a0acaca09386796c5f58585858585858585858585858585858585858585858585858585858585858585858585856514940352a1f130700000713202d3a4653606d798693a0adaca09386796c5f5346392c2013060000000000000000040f1a242d363d424547494c4e515355544f483f352b282b2e3134383b3f43474b50575d656e78828d99a5a6998d8174685b4f4236291c10030013202c3946535f6c79868d8c8b8a8988878685848382818084919ea295887f8181828384858687888a8a8c8c8a7d7063564a3d3023170a0000000000050e172029313941484e54585c606263636362605d59544f49423b332b2219100700000000000006111c26303840454848484848484846413a313940454848484848484845403930261c1106000000000006111c26303840454848484848484846413a31281e130800000000000000000000000000000000000000000000000000000000000815212e3a4753606c788591938e8275695c5043372b232f3c4855616e7a8793938d8074675b4e4235291c1003000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001080e12151717171717171717171614100b0500000000000000000000050b1014161717171717171717171716130f0a04000000000005101a252e373e4346464646464646464646464646464646464646464646464646464646464646464646464646464646464646464646464646464646433e372f261b1106000013202c3946535f6c798693a0acaca09386796c5f5347474747474747474747474747474747464543413e3c3835302c27211c150f0801000000000000000000000013202c3946535f6c798693a0acaca09386796c5f5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5a585754524f4b47423e38322c261f1710080000000000000000000000000000000000000000000008121d27323c454f58616a727a82898f959a9ea2a5a7a5a3a3a2a3a4a6a6a39f9b96908a837b736a61584e443a2f241a0f04000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000010a131a21262a2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2b2a29272623211e1b1814100b060100000000000000000000000000000000000009121a21262a2c2c2c2c2c2c2c2c2c2c2b28231d150d0400000000000814212d3a46535f6b7884919da9b0a4988c8073675b4f43372c201409000000000000000000000000000000000000000a16222d3945515d6976828e9ba7b2a5998d8174685b4f4236291d10040013202c3946535f6c798693a0acaca09386796c5f534b4b4b4b4b4b4b4b4b4b4b4b4b4b4b4b4b4b4b4b4b4b4b4b4b4b4b4b4b4b4b4b4b4b4b4a463f372e24190e0200000713202d3a4653606d798693a0adaca09386796c5f5346392c20130600000000000000000008121b242b3135383a3d3f4244464847443e362d3134383b3e4144474b4f53575c62686f77808a949faaa195897d7165594c4033271a0e010013202c3946535f6c7986939897969594939291908f8e8d8c8c95a0a4988e8c8d8e8f909192939495969798968a7d7063564a3d3023170a00000000030d172029323b434b52595f64696c6e7070706f6c6965605a544d453d342b22190f0500000000000b17222d38424a5155555555555555524b433a424b5155555555555555514b42382e23180d01000000000b17222d38424a5155555555555555524b433a2f24190e030000000000000000000000000000000000000000000000000000000006121f2b3744505d69768286868685786c5f5246392c202d3946525f6b778486868683766a5d5144372b1e110400000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000040c13191e2223242424242424242423201c17100800000000000000000810171c20232424242424242424242422201b150e07000000000009131c252c32373939393939393939393939393939393939393939393939393939393939393939393939393939393939393939393939393939393937332d251d140a00000013202c3946535f6c798693a0acaca09386796c5f54545454545454545454545454545454535351504d4b4845413c38322d27201a120b030000000000000000000013202c3946535f6c798693a0acaca09386796c686868686868686868686868686868686867676563615e5b57534e49443e373029221a12090000000000000000000000000000000000000000030e19242f39434e57616a737c858c949aa0a6a7a29e9b989796969697999ca0a5a7a19b948d857c736a60564b41362b20150a0000000000000000000000000000000000000205080a0b0c0d0d0d0d0c0a09070402000000000000000000000001040607070707070605030100000000000000000000000000000000000000000000010910161a1e1f2020202020202020202020202020202020202020202020201f1e1d1c1b191715120f0b080400000000000000000000000000000000000000000000080f151a1e1f2020202020202020201e1c17120b030000000000000a1623303c4955626e7b8794a0acada195887c6f63574b3f33271b0f030000000000000000000000000000000000000005111d2935414d5a66727e8b98a4b0a99c9084776a5e5145382c1f13060013202c3946535f6c798693a0acaca09386796c5f53463e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3d3a342d251c12070000000713202d3a4653606d798693a0adaca09386796c5f5346392c201306000000000000000000000912192025292b2e303335383a3c3b383335393d4144474a4d5054575b5f63686d737a8189929ba6a59a8f84786d6155493d3024180b000013202c3946535f6c798693a0a4a3a2a1a09f9e9d9c9b9a99999ea7aaa09a999a9b9c9d9e9fa0a1a2a3a4a3968a7d7063564a3d3023170a000000000a141f28323b444d555d646b7075787b7d7d7d7b7975716b655e574f463d342b21170c02000000000f1b27333f4a545c616262626262615d554b414a545d616262626262615c544a3f34291e1307000000000f1b27333f4a545c616262626262615d554b41362b20140900000000000000000000000000000000000000000000000000000000030f1c2835414e5a67727979797979766b5f5246392c1f2a36434f5c68747979797979756a5d5144372b1e1104000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000030d161e252a2e3030303030303030302f2d28221a120900000000000008121a22282c2f303030303030303030302f2c272019100700000000010a131a21262a2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2a27221b130b0200000013202c3946535f6c798693a0acaca09386796c6161616161616161616161616161616161605f5e5c5a5754514d48433e38322b241d150d0500000000000000000013202c3946535f6c798693a0acaca0938679757575757575757575757575757575757575747372706d6b67635f5a554f49423b342c241b1209000000000000000000000000000000000000000a15202b36404b555f69737c868e969ea5a8a29c96928f8c8a8989898b8d90959aa0a7a69f978e857c72685d52483d31261b0f04000000000000000000000000000002070b0f1214161819191a1a1918171513110e0b0702000000000002060a0e101214141414141311100d0b0804000000000000000000000000000000000000000000050a0e11131313131313131313131313131313131313131313131313131212110f0e0c0a0805020000000000000000000000000000000000000000000000000000040a0e1113131313131313131313120f0b0600000000000000000c1925323e4b5764717d8a96a3afab9e9285796c6054473b2f23160a0000000000000000000000000000000000000000010d1925313e4a56636f7c8895a1aeac9f9386796d6054473b2e2215080013202c3946535f6c798693a0acaca09386796c5f534639323232323232323232323232323232323232323232323232323232323232323232312e29231b130a000000000713202d3a4653606d798693a0adaca09386796c5f5346392c2013060000000000000000000000080f15191d1f212426292b2d2f33383d4146494d505356595d6064676b6f74787e858b939ba4a59c93897e73685c5045392d201408000013202c3946535f6c798693a09f9e9d9c9b9a999897969594959aa4a79d969495969798999a9b9c9d9e9fa0968a7d7063564a3d3023170a00000006111c26303a444d565f676f767c818588898a8a8885827c77706961584f463d33291e140900000000121e2b3743505b666d6f6f6f6f6f6e675d5247505c666e6f6f6f6f6f6d665c51463a2f24180d01000000121e2b3743505b666d6f6f6f6f6f6e675d52473c31251a0e03000000000000000000000000000000000000000000000000000000000d1926323e4a5661696c6c6c6c6c6b645a4f43372a1e2734404c57626a6c6c6c6c6c6b63594d4135291c10030000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000b151f282f363a3d3d3d3d3d3d3d3d3d3c39332c241b11060000000006111a242c33383c3d3d3d3d3d3d3d3d3d3d3b38322a22190f0400000000010910161a1e1f2020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020201e1b161009010000000013202c3946535f6c798693a0acaca09386796d6d6d6d6d6d6d6d6d6d6d6d6d6d6d6d6d6d6d6c6b696664615d59544f49433d362f271f170e05000000000000000013202c3946535f6c798693a0acaca093878282828282828282828282828282828282828281807e7c7a77736f6b66605a544d453e362d241b1209000000000000000000000000000000000004101b26313c47525d67717b858f98a0a8a69e97908b86827f7d7c7c7d7e8184898f969da6a9a0978e84796f64594e43372c20140900000000000000000000000003090e13171b1e2123242626262626252422201d1a17130e09040002080d12161a1d1f20212121201f1e1c1a1714100b0400000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000e1a2734404d596673808c99a5b2a89c8f83766a5d5144382b1f13060000000000000000000000000000000000000000000916222e3b4754606d7986939facaea195887c6f6256493d3023170a0013202c3946535f6c798693a0acaca09386796c5f5346392c252525252525252525252525252525252525252525252525252525252525252524221d18110a01000000000713202d3a4653606d798693a0adaca09386796c5f5346392c20130600000000000000000000000004090d1012151920272e343a3f44494d5256595d606366696c7073777b80848a90969da5a39b938a81776c61564b4034281c1004000013202c3946535f6c798693939291908f8e8d8c8c8b8a898889929fa2968b8788898a8b8c8d8e8f90919293948a7d7063564a3d3023170a0000010d18232d38424c565f68717981878d919496979694928d88827b736a61584f453a30251b0f0400000013202c3946525f6c787b7b7b7b7b796f64594d53606d787b7b7b7b7b786d62574c4035291e120600000013202c3946525f6c787b7b7b7b7b796f64594d42362b1f1408000000000000000000000000000000000000000000000000000000000a16222e39444f575d5f5f5f5f5f5f5a52483e32261a232f3b4650585e5f5f5f5f5f5e5951473c3125190d00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000006121d27313a41474a4a4a4a4a4a4a4a4a49443e362d23180d010000040e18222c363e44484a4a4a4a4a4a4a4a4a4a48433c342b20160a000000000000050a0e1113131313131313131313131313131313131313131313131313131313131313131313131313131313131313131313131313131313110f0a0500000000000013202c3946535f6c798693a0acaca093867a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7979777573706d6965605a554e484039312920170e050000000000000013202c3946535f6c798693a0acafa398908f8f8f8f8f8f8f8f8f8f8f8f8f8f8f8f8f8f8e8e8d8b898683807b76716b655e5750483f372e241b1107000000000000000000000000000000000a15212c37434e59646e79838d97a1aaa59c948c857f7a7673716f6f707174787d848b949da6a9a0968b81756a5f54483d3125190d0100000000000000000001080e141a1f23272a2d2f31323333333332302f2c2a27231f1a150f090c13191e2326292b2d2e2e2e2d2c2b292624201c160f060000000000000000000000000000000000000205080a0c0e0f1010100f0e0d0c0a070401000000000000000000010406080a0a0a0a0a090706040100000000000000000000000000000000000000000003080d10121313131313110e09030000000000000000000000000000000f1c2835424e5b6874818e9aa7b3a69a8d8174675b4e4235291c100300000000000000000000000000000000000000000006131f2c3845525e6b7784919daab0a3978a7d7164584b3e3225180c0013202c3946535f6c798693a0acaca09386796c5f5346392c20181818181818181818181818181818181818181818181818181818181818181715120d070000000000000713202d3a4653606d798693a0adaca09386796c5f5346392c2013060000000000000000000000000000010a131b232b32393f454b5055595e6265696c6f7275797c8083878b90959ba1a59f99918a81786f655b50453a2f23170c00000013202c3946535f6c79868786868484838281807e7e7d7c7b84909da194887b7b7d7d7e808181828384858687887d7063564a3d3023170a000007131e29343f4a545e68717a838b92989da1a3a4a3a19e99938c857c736a60574c42372c21150a000000131f2c3945525e6a75808888888880756a5e53535f6b7681888888887e73685d51463a2e23170b000000131f2c3945525e6a75808888888880756a5e53473c3024180c0000000000000000000000000000000000000000000000000000000006111d28333d454d515353535353524f4840372c21161e29343e464d525353535353524e473f352b2014090000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000b17232e39434c525657575757575757575550483f34291e120600010b15202a343e484f5557575757575757575757544e463c32271b1004000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000013202c3946535f6c798693a0acada1948a8787878787878787878787878787878787878786858482807c7975706b666059524b433b322920170e0400000000000013202c3946535f6c798693a0acb4aaa29c9c9c9c9c9c9c9c9c9c9c9c9c9c9c9c9c9c9c9b9a99989693908c87827d767069615a514940362d23190f050000000000000000000000000000030f1a26323d49545f6a75808b959fa9a69c938a827a746e6a666463626365686c7279828b949fa9a79d92877c7065594d4135291d11050000000000000000040c131a20262b2f33373a3c3e3f4040403f3f3d3b3936332f2b26201b14171e242a2f3336383a3a3a3a3a39373533302d2720181006000000000000000000000000000000050a0e111417191b1c1c1c1c1c1b1a181614110d0905000000000004090d1013151617171716151412100e0b07020000000000000000000000000000000000060e14191d1f202020201f1d1a150e070000000000000000000000000000101d2a3643505d6976838f9ca9b1a5988b7e7265594c4033261a0d0100000000000000000000000000000000000000000004111d2a3643505c6976828f9ca8b2a5988c7f7266594c4033261a0d0013202c3946535f6c798693a0acaca09386796c5f5346392c20130b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b090601000000000000000713202d3a4653606d798693a0adaca09386796c5f5346392c20130600000000000000000000000000000a131c252d353c434a50565c61656a6e7275787b7e8285888c9093979ca1a59f9a948e8780776f665d53493e34291d120700000013202c3946535f6c787b7b79797877767574737271706f76838f9ca093867a6f70717273747575767778797a7b7b6f6356493d3023160a00000c18242f3a46515b66707a848d959da4a9adafb0b0adaaa59e978e867c72685e53483d32261b0f040000111d2a36424e59646e79848f9592867b6f64584f5a646f7a8590959085796e62574b3f33271b0f030000111d2a36424e59646e79848f9592867b6f64584c4135291d1105000000000000000000000000000000000000000000000000000000000c16212b343b4145464646464646433e372e251a1018222c353c4245464646464645423d362d23190e030000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000f1c28343f4b555d636363636363636363615a51463a2f23160a0009131d27323c46505a616363636363636363636360584e43382c201407000000000000000104060707070707070707070707070707070707070707070707070707070707070706060402000000000000000000000000000000000000000000000000000013202c3946535f6c798693a0acb1a69c95949494949494949494949494949494949494949392918f8c8985817c77716b645d554d443b322920160c02000000000013202c3946535f6c798693a0acb9afa8a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a4a5a6a4a29f9c98938e88827b736c635b52483f352b21160c010000000000000000000000000008141f2b37434e5a65707c87929ca7a89e948a81787069635d5a57565656585c61687079838d98a3aea3988d81756a5e52463a2d21150900000000000000050e161d242b31363b3f4346494a4c4c4d4d4c4b4a4845423f3b36312c261f21292f353b3f42454647474747454442403d38322a22180e03000000000000000000000000060c11161a1e21232627282929292928272523201d1915110c0601040a1015191d1f22232424242322211f1d1a17130d060000000000000000000000000000000710181f25292c2c2c2c2c2c2a262019110800000000000000000000000000111e2b3844515e6a7784919daab0a3978a7d7164574b3e3125180b00000000000000000000000000000000000000000000010f1c2835424e5b6874818e9ba7b3a69a8d8173675a4d4134271b0e0013202c3946535f6c798693a0acaca09386796c5f5346392c201306000000000000000000000000000000000000000000000000000000000000000000000000000000000713202d3a4653606d798693a0adaca09386796c5f5346392c2013060000000000000000000000000008121c252e373f474e555b61676c71767a7e8285888b8e9195989ca0a4a8a59b948f89837c756e665d544b41372d22170c01000000121e2b3744505b666e6f6e6d6c6b6a696867666564636875828e9b9f9286796c636465666768696a6b6c6d6d6f6f695f53473b2e2215090005111d2934404c57626d78828c969fa7afb5b9bcbdbcbab6b0a9a0988e857a70655a4e43372c20140800000e1a26313d47525d68737e8995988c8175695d51535d68737e8a95968a7f73675b5044372b1f130700000e1a26313d47525d68737e8995988c8175695d5145392d21140800000000000000000000000000000000000000000000000000000000050f19222930353839393939393937322c251c1309101a232a31363939393939393936322b241b110700000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000121e2b3844505c676f70707070707070706c62574b3f3226190c06101a252f39434e58626c707070707070707070706a6054483c2f23160a000000000002080d1113141414141414141414141414141414141414141414141414141414141414141312110f0c0906020000000000000000000000000000000000000000000013202c3946535f6c798693a0acb7aea6a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1a0a09f9d9b9895918d88827c756e675f564d443b32281e1309000000000013202c3946535f6c798693a0acb2a79d9796969696969696969696969696969696969697989a9da1a5a8a49f99938c857d756d645a51473d33281d1308000000000000000000000000000c1824303c48535f6b76828d98a3aca1978c82786f665e57524d4b49494a4c50565e67717b86929da9a99e92867a6e62564a3d3125180c000000000000060f1720282f363c42474c4f5355575859595959585654524f4b47423d37312a2b333a41464b4f51535454545352504e4c49443c342a20150900000000000000000000030a11171c21262a2d30323435363636363533312f2c2925211d17120c0f151b2125292c2e30303030302f2d2b2927231e18110900000000000000000000000000051019222a303538393939393936312b231a1107000000000000000000000000121f2c3845525f6b7885929eabafa296897c6f6356493d3023170a00000000000000000000000000000000000000000000000e1a2734414d5a6773818d9aa6b3a79b8e8174685b4e4235281b0f0013202c3946535f6c798693a0acaca09386796c5f5346392c201306060606060606060606060606060606060606060606060606060503000000000000000000000000000713202d3a4653606d798693a0adaca09386796c5f5346392c20130600000000000000000000000006101a242e374049515860666d73787d82868a8e9194979b9ea1a4a8aaacada09489837d77716a635c544b42392f251b1006000000000f1b27333f4a545c616261605f5e5d5c5b5a5959585a6774818d9a9e9184786b5e5758595a5b5c5d5e5f606162625e574d42372b1f1306000915212d3945515d68737e8a949ea8b1b9c0c5c9cac9c6c1bab2aaa0968c81766b6054483c3024180c00000915202b36404b56616d78848f9b9185796d61554c57626d7984909b9084786c6054483b2f23160a00000915202b36404b56616d78848f9b9185796d6155493d3124180c00000000000000000000000000000000000000000000000000000000000710181f25292c2c2c2c2c2c2c2a26211a130a010811192025292c2c2c2c2c2c2c2a26201a1209000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000013202c3946535f6c787d7d7d7d7d7d7d7d73665a4d4034271a0d0e18222c36414b555f6a747d7d7d7d7d7d7d7d7d7c7064574a3e3124170b00000000060d14191d2020202020202020202020202020202020202020202020202020202020202020201f1d1b1916120e0904000000000000000000000000000000000000000013202c3946535f6c798693a0acb9afa8a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a4a5a6a9a8a5a19d99948e87807971685f564d433a2f251b10050000000013202c3946535f6c798693a0acada1958b8989898989898989898989898989898989898a8c8e9195999ea4aaa49e978f877f766c63594f443a2f24190e02000000000000000000000004101c2834404c5864707b87939ea9a69b90857a70665d544c46413e3d3c3d40444c555f6a75818d99a09f9e968a7e7266594d4134281b0f0000000000040e182129323941474e53585c5f626465666666666563615e5b57534e48423c35353d454c52575b5e60616161605f5d5b58554e463c31261a0e020000000000000000060e151c22282d3236393c3f41424243434241403e3c3935322d28231d171920272c3135383b3c3d3d3d3d3b3a3836332f2a231b12080000000000000000000000010c17212b343c41454646464645423c352c23180e020000000000000000000000131f2c3946525f6c7986929facafa295887b6f6255493c2f22160900000000000000000000000000000000000000000000000d1a2633404d596673808c99a6b3a89b8f8275685b4f4235281c0f0013202c3946535f6c798693a0acaca09386796c5f5346392c2013131313131313131313131313131313131313131313131313131312100c0701000000000000000000000713202d3a4653606d798693a0adaca09386796c5f5346392c2013060000000000000000000000020d17222c364049525b636a71787e84898e92969a9ea1a4a19e9b9b9c9d9fa2a0948984807b756f6860574e453c32281d1308000000000b17222e38424b5155555453535151504f4e4d4c4d596673808c999d9084776a5d514b4d4d4e4f50515253545555534d453b31261a0e02000c1825313d4955616d7985909ba6b0bac3cbd1d5d7d5d2ccc4bcb2a89e93887c7065594d4034281c0f0300040f19242f3a45505c67737e8a96968a7d7165594d515c68737f8b9794887c7064574b3f3226190d0000040f19242f3a45505c67737e8a96968a7d7165594d4034271b0f020000000000000000000000000000000000000000000000000000000000060d14191d1f20202020201f1e1a161009010000070e14191d1f20202020201f1d1a150f0800000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000013202c3946535f6c79868a8a8a8a8a8a8173675a4d4034271a0d151f2a343e48535d67717c868a8a8a8a8a8a8a82786d6256493d3023170a000000060f181f25292c2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2c2a2825221e1a15100a0400000000000000000000000000000000000013202c3946535f6c798693a0acb2a79d9796969696969696969696969696969696969697989a9c9fa3a7a9a49f99928b837a71685f554c41372c21170b0000000013202c3946535f6c798693a0acaca093867c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7d7d7f8285888d9399a0a7a9a19991887e756b61564b40352a1f140800000000000000000002040814202c3845515d6975818c98a4ada1968a7e73695e544b423b3532303030333a434d5964707c8994949392918e8275695c5043372a1e1100000000020c16202a333b444b52595e64686b6e70727373737271706d6b67635f59544d463f3e474f575d63676a6c6d6d6d6d6b6a676560584d42372b1e12060000000000000007101820272d34393e4246494b4d4e4f4f4f4f4e4d4b4845423e39342e2822232b32383d414547494a4a4a49484745423f3b342d241a0f050000000000000000000006121e29333d464d5153535353524e473e352a1f1408000000000000000000000013202c3946535f6c7986929facaea295887b6e6155483b2f22150800000000000000000000000000000000000000000000000d1926333f4c5966727f8c99a6b2a99c8f8275695c4f4236291c0f0013202c3946535f6c798693a0acaca09386796c5f5346392c202020202020202020202020202020202020202020202020202020201f1c18120b040000000000000000000713202d3a4653606d798693a0adaca09386796c5f5346392c201306000000000000000000000008131e29343e48525b646d747c83898f959a9ea2a4a09c9995928f8e8f909395999b93908c868079726961574e44392f24190e0300000006111c263039404548494847464544434241403f4c5865727e8b989c8f8276695c4f43404142434445454647484946423b33291f140900000f1b2834404d5965727e8a96a1adb7c2ccd5dce2e3e2ded6cec4baafa4998d8175695d5044372b1f1206000008121d28343f4a56626e7a86929a8d8175685c504b57636e7a8793988c8073675a4e4135281c0f03000008131d28343f4a56626e7a86929a8d8175685c5043372a1e110400000000000000000000000000000000000000000000000000000000000002080d1012131313131313110e0a05000000000003090d1112131313131313110e09040000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000013202c3946535f6c798693979797978d8173675a4d4034271a121d27313b46505a646f79838d97979797978f857a70665c51463a2e2115080000040f1821293036393a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a39383734322e2a26211b150e08000000000000000000000000000000000013202c3946535f6c798693a0acada1958b8989898989898989898989898989898989898a8b8d9093979ca1a7aaa49c958c847a71675d53493e33281d110600000013202c3946535f6c798693a0acaca09386796f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f70717275787c82878e959ea6aba39a91877d72685d52473b3025190d02000000000000040a0e11121724303c4855616d7985919da9a89c9085796d62574c4239302a2523232428313c4854606d798688878685848382786b5e5145382b1e120000000009141e28323c454d555d646a6f74787b7d7e8080807f7e7c7a77736f6a655f58514946505961686e7377797a7a7a79787674716a5f53473a2e211408000000000000071019222a31383f454a4e5255585a5b5c5c5c5c5b595755514e4a453f3a332c2d353d43494e515456575757565553514f4b463f362c21160a000000000000000000000a17232f3a454f585e5f5f5f5f5e5950463b3024180c000000000000000000000013202c3946535f6c798693a0acaea295887b6e6155483b2e22150800000000000000000000000000000000000000000000000c1926323f4c5965727f8c99a6b2a99c8f8275695c4f4236291c0f0013202c3946535f6c798693a0acaca09386796c5f5346392c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2b28231d160d0400000000000000000713202d3a4653606d798693a0adaca09386796c5f5346392c20130600000000000000000000020e1924303a45505a646d767e878e949ba0a5a19d9894908c89868282828486898d92979c97928b847b736960564b41362b201409000000000a141e272e35393c3c3b3a393837363534333e4b5764717d8a979b8e8275685b4f42353435363738393a3b3c3c3a36302921170d030000111d2a3643505c6975828e9aa6b2bec9d4dee7eef0eee8e0d6ccc1b5a99d9185786c6053473a2d21140800030e19242d363e46515d6976828e9b9184786b5f5246525e6a76838f9b8f8376695d5044372b1e110500030f1a242e373f45515d6976828e9b9184786b5f5245392c20130600000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000013202c3946535f6c798693a0a4a49a8d8173675a4d4034271a1a242e39434d58626c76818b959fa4a49c91877d73685e544a3f35291d110500000b16202a333b414547474747474747474747474747474747474747474747474747474747474747464543413e3a36322c262019120a0200000000000000000000000000000013202c3946535f6c798693a0acaca093867c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7d7e8183878b90969ca4aca79e968d83796f655a4f44392e23170c00000013202c3946535f6c798693a0acaca09386796c636363636363636363636363636363636466696c71767c848c949da7aca3998f84796e63584d41352a1e12060000000000080f151a1d1f1f2733404c5865717d8995a1ada4988c8074685c51463b30261f1f1f1f1f202c3845515e6a767c7b7a797877767572685c5044372b1e1100000005101b26303a444e575f676f757b8084878a8b8c8d8c8c8b898783807b76706a635b534d58626b737a808386878787868583817b6f6255483c2f2215090000000000061019232b343c434a50555a5e6264666869696968676664615e5a55504b453e37373f474e545a5e60626363636361605e5b5750483d32271b0f030000000000000000000d1a26333f4b5761696c6c6c6c6a62584c4034281b0f0200000000000000000000131f2c3946525f6c7986929facaea295887b6f6255483c2f22150900000000000000000000000000000000000000000000000d192633404c596673808c99a6b2a89c8f8275685c4f4236291c0f0013202c3946535f6c798693a0acaca09386796c5f534639393939393939393939393939393939393939393939393939393939393938342f281f160c02000000000000000713202d3a4653606d798693a0adaca09386796c5f5346392c2013060000000000000000000007131f2a36414c57616c767f8891989fa6a29c96918c8884807d79767576777a7d81868c939b9d968e857b72675d52473c31251a0e02000000020c151d24292d2f2f2e2d2c2b2a292928303d4a5663707c89969a8d8174675a4d41342728292a2b2c2d2e2f2f2e2a251f170f05000000121f2b3845515e6b7784919daab6c2cedae5f0f9fefaf2e8ddd2c6b9ada194887b6e6255483c2f2216090008141f2b353f484f545a66727e8b9893867a6d615450545a6773808c999185786c5f5246392d201307000814202b36404950555a66727e8b9893867a6d6154473b2e21150800000000000000000000000000000000000000000000000000000000000000000000010305060708080808080706050301000000000000000000000000000000000000000000000000000000000000000000000000000001030506070808080807060402000000000000000000000000000000000000000000000000000013202c3946535f6c798693a0aca79a8d8173675a4d4034271a222c36404b555f69747e88929da7a89e948a80756b61574c42382e23180d010005111c27323c454d52535353535353535353535353535353535353535353535353535353535353535352504d4a47423d38322b241c140c03000000000000000000000000000013202c3946535f6c798693a0acaca09386796f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f70717274777a7f858b929aa2aba89f958b81766c61564a3f34281c1005000013202c3946535f6c798693a0acaca09386796c5f56565656565656565656565656565657595c60656b7279828b959faaaba0968b8074695e52463a2f23170a000000000a121a21262a2c2c2c37434f5c6874818d99a5aca094877b6f63574b40342c2c2c2c2c2c2c2c2c36424e5a656d6f6e6d6c6b6a69696760574c4034281c0f0000000b17222d37424c566069717980878c90949698999a9999979593908c87827b746d655d545f69737d858b9092949494939190887b6f6255483c2f22150900000000040e18222b353d464d555b61666a6e717375757676757472706d6a66615c565049413f49515960656a6d6f7070706f6e6c6a68625a4f43382b1f13060000000000000000000f1b2835424e5b67737979797974695c5043362a1d100400000000000000000000121f2c3945525f6b7885929fabafa295897c6f6256493c2f23160900000000000000000000000000000000000000000000000d1a2734404d5a6673808d9aa6b3a89b8e8275685b4f4235281c0f0013202c3946535f6c798693a0acaca09386796c5f534646464646464646464646464646464646464646464646464646464646464644403931281e1409000000000000000713202d3a4653606d798693a0adaca09386796c5f5346392c201306000000000000000000000b17232f3b47525d68737e88919aa3a79f97918a85807c7874706d6a68696b6d71757b8289929ba0978d84796f64594d42362a1f130700000000030b12181d2022222221201f1e1d1c222f3c4955626f7b8895998c807366594c4033261c1d1d1e1f20212222211e1a140d050000000013202c3946535f6c7986929facb8c5d2deebf7fffffffaeee2d5c9bcafa396897c7063564a3d3023170a000c1824303c47515a606263707c899695887b6f62565b606264707d8a9693877a6d6154473b2e211508000c1825313c47525b616363707c899695887b6f6256493c2f231609000000000000000000000206090a0a0a0a0a0a0a0a0a0a080400000000000307090c0e1011131414151515151413110f0d0a0703000000000000000000000000000000000000000000000000000000000000000003070a0d10121314151515141412110f0c0905010004080a0a0a0a0a0a0a0a0a0a08050000000000000013202c3946535f6c798693a0aca79a8d8173675a4d4034271f29333e48525c67717b86909aa4aba1968c82786e63594f453a30261c110700000915212d39444e575e606060606060606060606060606060606060606060606060606060606060605f5e5c5a57534e49433c352e261e150c030000000000000000000000000013202c3946535f6c798693a0acaca09386796c636363636363636363636363636363636465686b6e737980889099a3ada79d93887d72675c5044392d211509000013202c3946535f6c798693a0acaca09386796c5f53494949494949494949494949494a4b4d50545960687079838d98a3aea79c91867a6e63574b3f33271a0e02000008121c242c32363839393946525f6b7884909da9a99c9084776b5f53473b39393939393939393939383d48535c61636261605f5e5d5c5a564e453a2f24180c000005111d28333e49545e68727b838b92989ca0a3a5a5a3a2a2a2a29f9c98938d867f776e665d65707b868f969c9fa0a1a0a09e95887b6f6255483c2f221509000000000b16202a343e474f585f666d72777a7d808182838382817f7d7a76726d67615a534b47515b636b7176797c7d7d7d7c7b7977746b6054473b2e2115080000000000000000000f1c2835424f5b687582868684776a5d5044372a1d110400000000000000000000121f2b3845515e6b7884919eabb0a3968a7d7063574a3d3024170a00000000000000000000000000000000000000000000000f1b2835414e5b6774818e9aa7b4a79a8e8174675b4e4134281b0e0013202c3946535f6c798693a0acaca09386796c5f5353535353535353535353535353535353535353535353535353535353535353504b433a30251a0e030000000000000713202d3a4653606d798693a0adaca09386796c5f5346392c201306000000000000000000030f1b2834404c57636f7a858f9aa3a69d958d867f7974706c6864615d5b5c5e61656a70778089939e9f958b80756a5e53473b2f23170a000000000000070d1114161615141312111015212e3b4854616e7a8794988b7e7265584b3f322519101112131415161615120e0902000000000013202c3946535f6c798693a0acb9c6d3dfecf9fffffffdf0e3d6cabdb0a3978a7d7063574a3d3024170a000e1b2834404d58636c6f6f6f7b8894968a7d706359646c6f6f6f7b889595887b6f6255493c2f231609000f1b2834414d59646d6f6f6f7b8794968a7d7063574a3d3124170a000000000000000001080e12151717171717171717171614100b0504080c101316181b1d1e1f20212122222121201e1c1a17130f0b0601000000000000000000000000000000000000000000000000000000060b0f13171a1c1e202121222221201f1d1b1815120d0b10141617171717171717171614110c06000000000013202c3946535f6c798693a0aca79a8d8173675a4d40342727313b45505a646e78838d97a2aca3998f857a70665c51473d33291e140a0000000b1825313d495560696d6d6d6d6d6d6d6d6d6d6d6d6d6d6d6d6d6d6d6d6d6d6d6d6d6d6d6d6d6d6d6c6b6966635f5a544e47403830271e150b0100000000000000000000000013202c3946535f6c798693a0acaca09386796c5f56565656565656565656565656565657595b5e63686e767e87919ba6afa59a8f84786d6155493d3125190d010013202c3946535f6c798693a0acaca09386796c5f53463c3c3c3c3c3c3c3c3c3c3c3c3d3e4044484e565e67717b86919da8aea2978b7f73675b4f43372a1e12050004101a242e363d42454646464855616e7a8793a0aca6998d8174685b4f4646464646464646464646464541414a5155565554535251504f4e4a443c33291e130700000a16222e3944505b65707a848d959da3a8a7a19c999695959596989a9d9e98918981786f656b76828d97a1a7aba39c97939293887b6f6255483c2f22150900000007121d27323c465059616a71787d83878a8c8e8f908f8f8d8c8986827e78736c655d554f59636d757c8286888a8a8a898886837b6f6255483c2f2215090000000000000000000f1c2835424f5b6875828f9084776a5d5044372a1d110400000000000000000000111e2a3744515d6a7784909daab1a4978b7e7165584b3f3225190c0000000000000000000000000000000000000000000003101d2936434f5c6975828f9ba8b3a6998c8073665a4d4034271a0d0013202c3946535f6c798693a0acaca09386796c5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5c554c42372b1f13070000000000000713202d3a4653606d798693a0adaca09386796c5f5346392c20130600000000000000000006121f2b3744505c6874808b96a1a99e958b837b746e68645f5c5854514e505155595e656e77818c97a39d92867b6f63574b3f33261a0e01000000000000010507090908070605030714202d3a4753606d798693978a7d7164574a3e3124180b020506070809090806020000000000000013202c3946535f6c7986929facb8c5d1deeaf6fffffff8ede1d5c8bcafa396897c706356493d3023170a00101c2936434f5c69757b7b7b7b8794978b7e71645d69767b7b7b7b889496897c706356493d3023160a00101c2936434f5c69757c7c7c7c8794978b7e7164574b3e3125180b00000000000000040c13191e2223242424242424242423201c17101014181c1f222527292b2c2d2e2e2e2e2e2d2c2b2926231f1b17120c07000000000000000000000000000000000000000000000000060c11161b1f2326292b2c2e2e2e2e2e2d2c2a2825211e19171c2023242424242424242423211d1711090100000013202c3946535f6c798693a0aca79a8d8173675a4d4034272e38434d57616c76808b959fa9a69c91877d73685e544a40352b21170d020000000d1a2633404c5966727a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a797875736f6a655f59524a423930271d130900000000000000000000000013202c3946535f6c798693a0acaca09386796c5f53494949494949494949494949494a4b4c4f52575d646c757f8a949fababa095897d72665a4e4135291d11040013202c3946535f6c798693a0acaca09386796c5f5346393030303030303030303030303234383d444c555f6a75808c98a3afa79c9084776b5f53463a2d211508000a16212c3640484e52525252525764707d8a96a3afa3978a7e71655852525252525252525252525252514d463f45484948474645444342413e39322a21170c0100030f1b27333e4a56616c77828c969fa7aca39c96908c8a888888898b8e91959a9b938a81776d6f7b87939ea9ada299918b878686887b6f6255483c2f2215090000010d18232e39444e58616b737b83898e9396999b9c9c9c9b9a9896928e8a847e776f675f56606b757f878d9295969796969492887b6f6255483c2f2215090000000000000000000f1c2835424f5b6875828f9084776a5d5044372a1d110400000000000000000000101d2936434f5c6975828f9ba8b2a5998c8073665a4d4034271b0e0200000000000000000000000000000000000000000006121f2b3845515e6a7784909da9b1a4988b7e7265584c3f3226190c0013202c3946535f6c798693a0acaca09386796c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c675e53473b2f2216090000000000000713202d3a4653606d798693a0adaca09386796c5f5346392c2013060000000000000000000815212e3a4753606c7884909ca8a2978d83797169635d58534f4c4845424345484d545c65707b87929fa3978c8073675b4f4236291d10040000000000000000000000000000000006131f2c3946525f6c78859296897c6f6356493d3023170a0000000000000000000000000000000000121f2b3845515e6b7784909da9b6c2cedae4eef6f8f6f0e7dcd1c5b9ada094877b6e6255483c2f22160900101c2936434f5c6976838888888b96988b7e71655d6a77848888888c96978a7d7063574a3d3024170a00101c2936434f5c6976838989898c96988b7e7165584b3e3225180b000000000000030d161e252a2e3030303030303030302f2d28221a1c2024282c2f31343637393a3a3b3b3b3b3a393735322f2c27231e18120b040000000000000000000000000000000000000000030a11171d22272b2f323537393a3b3b3b3b3a383634312e2a2522282d2f3030303030303030302d28221b130a00000013202c3946535f6c798693a0aca79a8d8173675a4d40342b36404a555f69737d88929ca7a89e948a80756b61574c42382e24190f05000000000d1a2633404d596673808787878787878787878787878787878787878787878787878787878787878684827f7b76716a635c544b42392f251b1106000000000000000000000013202c3946535f6c798693a0acaca09386796c5f53463c3c3c3c3c3c3c3c3c3c3c3c3d3e4042464b525a636d78838e9aa5b1a69a8e82766a5e5145392c2014070013202c3946535f6c798693a0acaca09386796c5f5346392c232323232323232323232325282c323a434d58646f7b87939facaca093877b6e6256493d3024170a000e1a26323d48525a5e5f5f5f5f5f66737f8c98a5aea195887b6f625f5f5f5f5f5f5f5f5f5f5f5f5f5f5e5850463b3c3c3b3a393938373635322e2820180f05000007131f2b37434f5b67727d89939ea8ada39a928a85807d7b7b7b7c7e8185898f959b93898075727e8b97a3afa79b91877f7a79797b7a6e6255483c2f221509000007121e2935404b55606a737d858d949a9fa3a5a6a2a09f9f9fa0a19e9a958f89817971685f66727d8791999ea2a3a4a09d9c95887b6f6255483c2f2215090000000000000000000f1c2835424f5b6875828f9084776a5d5044372a1d1104000000000000000000000f1b2835414e5a6774818d9aa6b3a79b8e8175685c4f43362a1d11050000000000000000000000000000000000000000000915212e3a4753606c7986929fabafa396897d7063574a3e3124180b0013202c3946535f6c798693a0acaca0938679797979797979797979797979797979797979797979797979797979797979797979797063574a3e3124170b0000000000000713202d3a4653606d798693a0adaca09386796c5f5346392c2013060000000000000000000a1723303d4956626f7b8894a1a99d91867b70675f58514c47433f3c383536393c424a535e6a76838f9ba89c9083776a5e5145382c1f12060000000000000000000000000000000005121e2b3845515e6b77849195887b6f6255483c2f2216090000000000000000000000000000000000101d2a36434f5c6875818e9aa6b2bdc8d3dce4eaeceae5ded5cbc0b5a99d9185786c5f53463a2d21140700101c2936434f5c697683909595969d988c7e72655d6a7784909595979e978a7d7164574a3e3124170b00101c2936434f5c697683909696979e988c7e7265584c3f3225190c0000000000000b151f282f363a3d3d3d3d3d3d3d3d3d3c39332c24272c3034383b3e40424445474748484848474644423f3c38332e29231d160e07000000000000000000000000000000000000050d141c22282e33373b3f4244464748484847464543403d3a36312c33393c3d3d3d3d3d3d3d3d3c39342d251c1207000013202c3946535f6c798693a0aca79a8d8173675a4d4034333d48525c66717b858f9aa4aba1968c82786e63594f453b30261c120800000000000d1a2633404d596673808d949494949494949494949494949494949494949494949494949494949392918e8b87827c756e665d544b41372d22180d020000000000000000000013202c3946535f6c798693a0acaca09386796c5f5346393030303030303030303030303133363a4048515c66727d8995a1adaa9e92867a6d6155483c2f23160a0013202c3946535f6c798693a0acaca09386796c5f5346392c2016161616161616161617181b2028313c47535f6b7783909ca9afa3978a7e7165584b3f3226190c00111e2a36434f5a646b6c6c6c6c6c6c75818e9ba7ac9f9386796d6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6a62574c4034302f2e2d2c2b2a292826221d160f060000000a16222f3b47535f6b77838f9aa5b0a59b9188807974706f6e6f707275797e838a919891877d75828e9aa7aea2968a7f756e6c6d6e6f685e52463a2d21140800000b17232f3a46515c67727c868f979fa6aba49e9a96939292929395979b9f9a938b837a71676c77838e99a3aaa9a09994919090887b6f6255483c2f2215090000000000000000000f1c2835424f5b6875828f9084776a5d5044372a1d1104000000000000000000000d1a26333f4c5965727e8b98a4b1a99d9084776b5e5245392d2014080000000000000000000000000000000000000000000c1825313d4a56626f7b8894a1adada094877b6e6255483c2f2316090013202c3946535f6c798693a0acada09489868686868686868686868686868686868686868686868686868686868686868686867e7164574b3e3124180b0000000000000713202d3a4653606d798693a0adaca09386796c5f5346392c2013060000000000000000000b1825313e4b5764717d8a97a3a6998d8175695f554d46403b3733302c292a2c3138424e5a6773808d99a69f9286796d6053473a2d2114070000000000000000000000000000000002111d2a3743505d6a76839094877a6d6154473b2e21150800000000000000000000000000000000000e1b2734404d5965717d8995a1acb6c1cad2d9dedfdedad4ccc3b9aea3988c8175685c5044372b1e120500101c2936434f5c697683909ca2a3a5988c7e72655d6a7784909da2a3a4978a7d7164574a3e3124170b00101c2936434f5c697683909ca3a4a5988c7e7265584c3f3225190c000000000006121d27313a41474a4a4a4a4a4a4a4a4a49443e362d33383c4144484a4d4f51525354545555545352504e4b48443f3a342e272019110800000000000000000000000000000000070f171f262d33393f43484b4e515254545555545352504d4a46423d373e44494a4a4a4a4a4a4a4a49453f372e24190e020013202c3946535f6c798693a0aca79a8d8173675a4d40343b454f59646e78838d97a1aba3998f857a70665c51473d33291e140a0000000000000d1a2633404d596673808d9aa0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a09f9d9b97938d8780786f665d53493f34291e13080000000000000000000013202c3946535f6c798693a0acaca09386796c5f5346392c232323232323232323232324272a2f363f4a55616d7985919daaaea296897d7064574b3e3225180c0013202c3946535f6c798693a0acaca09386796c5f5346392c201309090909090909090a0c0f16202b36424f5b6774818d9aa6b2a6998d8073675a4d4134271b0e00131f2c3946525f6b767979797979797983909ca9aa9e9184797979797979797979797979797979797974685c5044382c2221201f1e1d1c1b1916110b04000000000c1925323e4b57636f7c8894a0abaa9f94897f766e68646261626365696d72787f868e978f847984909da9aa9e9286796d635f6062635e564c41362a1e12050004101c2834404b57626d78838e98a1a9aaa19a938e8a8785858586888b8e93989d958c83796f707c8894a0ababa1978e88848383857b6f6255483c2f2215090000000000000000000f1c2835424f5b6875828f9084776a5d5044372a1d1104000000000000000000000b1824313e4a5763707c8995a2aeac9f93877a6e6155493d3024180c010000000000000000000000000000000000000005111d2935414d5966727e8b97a3b0aa9e9185786c5f53463a2d2114070013202c3946535f6c798693a0acb0a59b949393939393939393939393939393939393939393939393939393939393939393938b7e7164574b3e3124180b0000000000000713202d3a4653606d798693a0adaca09386796c5f5346392c2013060000000000000000000b1825323e4b5865717e8b98a5a4978a7e7165584d433b35302b2723201c1f242b333f4c5966727f8c99a6a194877b6e6154483b2e2215080000000000000000000000000000000003111e2a3744515d6a77849094877b6e6155483b2e22150800000000000000000000000000000000000c1824313d4955616d79848f9aa5afb8c0c8ced1d2d1cec9c2bab1a79d92877b7064584c4034281b0f0300101c2936434f5c697683909ca9afa5988c7e72655d6a7784909daaafa4978a7d7164574a3e3124170b00101c2936434f5c697683909ca9b0a5988c7e7265584c3f3225190c00000000000b17232e39434c525657575757575757575550483f373e44484d515457595c5d5f606161616161605f5d5b5854504b454039322b231a11080000000000000000000000000000071019212931383f454a4f54575b5d5f6061616161605e5c5956524d4842485055575757575757575755504940352a1f13070013202c3946535f6c798693a0aca79a8d8173675a4d4038424d57616b75808a949fa9a69c91877d73695e544a40352b21170d020000000000000d1a2633404d596673808d9aa6adadaba6a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a6a8aaa7a39e98918a81786f655b50463b3024190d0200000000000000000013202c3946535f6c798693a0acaca09386796c5f5346392c2016161616161616161617181a1e242e3944505d6975828e9ba7b1a5988c7f7266594d4033271a0d0013202c3946535f6c798693a0acaca09386796c5f5346392c201306000000000000000000040e1a26333f4c5965727e8b98a5b1a89b8e8275685b4f4235291c0f0013202c3946525f6c788486868686868687929eabaa9e92878686868686868686868686868686868685786c6054483c2f231713121110100f0d0a060000000000000f1b2834414d5a6673808c98a4b0a59a8e82776d645c5855555557595d61676d747c858e968b8085919eaba89b8f8276695d53535556534d443b3025190e02000714202c3844505c68737f8a95a0aaaba1988f88827d7a7978797a7c7e82878c9299958b817773808c98a4b0a59a8f857d78767678786e6155483b2f2215080000000000000000000f1c2835424f5b6875828f9084776a5d5044372a1d1104000000000000000000000916222f3b4854616d7a86929fabafa2968a7d7165594d4135291d1206000000000000000000000000000000000000000a16212d3945515d6975828e9aa6b3a79b8f8276695d5044372b1e12050013202c3946535f6c798693a0acb7ada5a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0988b7e7164574b3e3124180b0000000000000713202d3a4653606d798693a0adaca09386796c5f5346392c2013060000000000000000000b1825323e4b5865717e8b98a4a4978a7d7063574a3d312a241f1b1f23272b30363d454f5b6774818d9aa6a295887b6e6155483b2e2215080000000000000000000000000000000005121f2b3845525e6b78849195887c6f6255493c2f23160900000000000000000000000000000000000815212d3945505c68737e89939da6aeb6bdc2c5c5c5c2beb7b0a89e958b80756a5f53483c3024180c0000101c2936434f5c697683909ca9aca5988c7e72655d6a7784909daaaca4978a7d7164574a3e3124170b00101c2936434f5c697683909ca9aca5988c7e7265584c3f3225190c00000000000f1c28343f4b555d636363636363636363615a514640484f54595d606366686a6b6d6d6e6e6e6e6d6b6a6764605c57514b443c352c231a1108000000000000000000000000060f19222b333b424950565b6064676a6c6d6e6e6e6d6c6b6966625e59544e515a616363636363636363615b51473b3024170b0013202c3946535f6c798693a0aca79a8d8173675a4d40404a545e69737d87929ca6a89e948a80756b61574c42382e24190f05000000000000000d1a2633404d596673808d9aa6afaba19a98989898989898989898989898989898989898989898999b9ea3a8aaa39c938a81776d62574c41352a1e130700000000000000000013202c3946535f6c798693a0acaca09386796c5f5346392c201309090909090909090a0b0e121c2834414d5a6673808c99a5b2a79a8e8174675b4e4135281b0f0013202c3946535f6c798693a0acaca09386796c5f5346392c201306000000000000000000000b1824313e4a5764717d8a97a4b0a99c8f8276695c4f4336291c1000111e2b37434f5c6874808c92929292929399a3aeaea3999392929292929292929292929292929292887c7064584b3f33271b0f0604010000000000000000000000111d2a3643505c6975828f9ba8aea295897d71665b524c4948484a4d51565c636a727b858e918788939faca69a8d8174675a4e47494947423b32291e140800000a1723303c4854606c7884909ba7afa4998f867d76716e6c6b6c6d6f72767b81878e9693897e75828f9ba8ada195897d736b696a6c6d665d5145392d2014070000000000000000000f1c2835424f5b6875828f9084776a5d5044372a1d1104000000000000000000000713202c3945515e6a77838f9ca8b2a6998d8175695d51453a2e23180d02000000000000000000000000000000000006111c27323e4a55616d7985929eaab0a4988b7f73665a4e4135281c0f030013202c3946535f6c798693a0acb9b1aaa6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a4988b7e7164574b3e3124180b0000000000000713202d3a4653606d798693a0adaca09386796c5f5346392c2013060000000000000000000b1824313e4a5764707d8a96a3a4978b7e7165584c40352e2926282b2f33373c41474e57616c7783909ca8a194877b6e6154483b2e221508000000000000000000000000000000000613202c3946535f6c79869296897d7063574a3d3024170a000000000000000000000000000000000004101c2834404b56616c77818b949da4acb1b5b8b9b8b6b2aca69e958c83796f64594e42372b1f14080000101c2936434f5c697683909ca0a0a0988c7e72655d6a7784909da0a0a0978a7d7164574a3e3124170b00101c2936434f5c697683909ca0a0a0988c7e7265584c3f3225190c0000000000121e2b3844505c676f70707070707070706c62574b48525a6065696d7072757778797a7b7b7b7b7a787673706c67625c554e463e352c2319100500000000000000000000040e18212b343d454d545b61676c707376787a7b7b7b7a797775726e6a655f5957626c70707070707070706d63584c4033271a0e0013202c3946535f6c798693a0aca79a8d8173675a4d4047515c66707a858f99a3aba1968c82786e63594f453b30261c120800000000000000000d1a2633404d596673808d969da5a5998f8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8c8f92979da4aca59d93897e74695d52463b2f23170b00000000000000000013202c3946535f6c798693a0acaca09386796c5f5346392c201306000000000000000000020c1925323e4b5864717e8b97a4b1a89c8f8275695c4f4236291c100013202c3946535f6c798693a0acaca09386796c5f5346392c201306000000000000000000000a1724303d4a5763707d8a97a4b0a99c908376695c4f4336291c10000f1b27333f4c5864707c89959f9f9f9fa0a4abb5b4aba39f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f988c8074685b4f43372b1f120600000000000000000000000000121f2b3845515e6b7784919daaab9f9286796d615549403c3b3c3d40454a51586069737c879193949aa4b0a6998c807366594c403c3d3b36302920170d0200000d1a26333f4b5864707c8995a1aca99e92887d746c65615f5f5f6063666a70767c848c9590867b84909daaaa9d9185786c615d5d5f605c544b4035291d11050000000000000000000f1c2835424f5b6875828f9084776a5d5044372a1d11040000000000000000000004101d2936424e5b6773808c98a4b0a99d9185796e62564b3f34291e140a01000000000000000000000000000000040e18222d38434f5a66727d8a96a2aeaca094887c6f63574a3e3225190d000013202c3946535f6c798693a0acb3a89f9a9999999999999999999999999999999999999999999999999999999999999999988b7e7164574b3e3124180b0000000000000713202d3a4653606d798693a0adaca09386796c5f5346392c2013060000000000000000000916232f3c4855616e7a87939fa6998d8174685c51473f39353334373b3f43474c52596069737d8994a0ab9f9286796c6053473a2d21140700000000000004080a0c0c0b0a0908070714212d3a4754606d7a8693978a7d7164574b3e3125180b0708090a0b0c0c0b080500000000000000000c17232f3a45505b656f78828b939aa0a5a9abacaba9a6a19b948c847a71675d52473d31261a0f030000101c2936434f5c6976839093939393938c7e72655d6a77849093939393938a7d7164574a3e3124170b00101c2936434f5c6976839093939393938c7e7265584c3f3225190c000000000013202c3946535f6c787d7d7d7d7d7d7d7d73665a4d4e59646c7175797c7f818385868788888887868583807c78736d67605850473e352b21170d020000000000000000010b16202a333d464f575f666c72787c80838587888888878684827e7a76706a635c67737d7d7d7d7d7d7d7d74685b4e4135281b0f0013202c3946535f6c798693a0aca79a8d8173675a4d454f59636e78828c97a1aba3998f857a70665c52473d33291f140a0000000000000000000d1a2633404d5966737e858c939ba4978a807e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e8082868c929aa2aba59b90857a6e63574b4034281c0f03000000000000000013202c3946535f6c798693a0acaca09386796c5f5346392c201306000000000000000000000a1724313d4a5763707d8a97a4b0a99c908376695c4f4336291c100013202c3946535f6c798693a0acaca09386796c5f5346392c201306000000000000000000000b1824313e4a5764717d8a97a4b0a99c908376695c4f4336291c10000b1723303c4854606c798591989898989ba2abb6ada39b98989898989898989898989898989898989084786b5f53473b2e22160900000000000000000000000000131f2c3946525f6c7985929fabaa9d9084776a5e5145382f2e2f3134393f464e57616a75808a95a0a5acb2a6998c7f7265594c3f32302e2b251f170e050000000f1c2835424e5b6773808c99a5b1a5988d81766b625a5553525254565a5f646b727a838c958c8185929eaba89b8e8275695c50505353504a42392f24180d010000000000000000000f1c2835424f5b6875828f9084776a5d5044372a1d110400000000000000000000010d1a26323f4b57636f7c8894a0acaea2968a7e73675c51463b30261c130a0300000000000000000000000000050d16202a343f4a55606b77838e9aa6b2a89c9084786c5f53473b2f22160a000013202c3946535f6c798693a0acaea2978e8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8b7e7164574b3e3124180b0000000000000713202d3a4653606d798693a0adaca09386796c5f5346392c2013060000000000000000000714202d3946525e6a76838e9aa59c9085796e6359514a45413f4044474b4f53585d646a727b858f9aa5a79b8f83766a5e5145382b1f120600000000030a0f1417191918171615141315222e3b4855616e7b8894988b7e7265594c3f32261913141516161718181715110b0500000000000007121d28333e49535d66707881888f95999d9f9f9f9d9a959089827a71685f554b41362b201509000000101c2936434f5c697683868686868686867e72655d6a7784868686868686867d7164574a3e3124170b00101c2936434f5c697683868686868686867e7265584c3f3225190c000000000013202c3946535f6c79868a8a8a8a8a8a8173675a4d515d6a767d8185898c8e909293949495959493918f8c88847e78726a625950473d33291e1308000000000000000007121d27323c454f58616970777e83888c8f92939495949493918e8b86817b756e666875828a8a8a8a8a8a8174675a4e4134281b0e0013202c3946535f6c798693a0aca79a8d8173675a524c56616b75808a949ea8a69c91877d73695e544a40362b21170d020000000000000000000c1925323e4b57636d737a8189929b9b918b837b7371717171717171717171717171717171717173767a81889099a3aca2968b8074685c5044382c1f1307000000000000000013202c3946535f6c798693a0acaca09386796c5f5346392c201306000000000000000000000a1724303d4a5763707d8a97a4b0a99c908376695c4f4336291c100013202c3946535f6c798693a0acaca09386796c5f5346392c201306010101010101010204070f1a26333f4c5865727e8b98a4b1a89c8f8275695c4f4236291c0f000713202c3844505c6975818c8c8c8c8c909aa6b2a79c918c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c887b6f63574a3e3125180b0000000000000000000000000013202c3946535f6c798693a0acaa9d908376695d5043362a222225282e353c454f59636e79848f9ba7b2b2a6998c7f7265594c3f3226221f1a140d0500000000111e2a3743505d6976838f9ca8ada195887c7065595049464546474a4e535960687079838d938a8b94a0ada69a8d8073675a4d444647443f3930271d1207000000000000000000000f1c2835424f5b6875828f9084776a5d5044372a1d110400000000000000000000000a16232f3b47535f6b77848f9ba7b2a69b8f84786d62574c42382e251c150e0804000000000000000001050a10171f28323c46505b66717c88939fabafa3978c8074685b4f43372b1f1306000013202c3946535f6c798693a0acaca093867f7f7f7f7f7f7f7f7f7f7f7f7f7f7f7f7f7f7f7f7f7f7f7f7f7f7f7f7f7f7f7f7f7f7e7164574b3e3124180b0000000000000713202d3a4653606d798693a0adaca09386796c5f5346392c20130600000000000000000005111d2a36424e5a66727d89949ea1968a80756b635c56514e4c4d5053575b5f64696f757c858d97a1aba0968a7e72665a4e4235291c1003000000050d151b202425252424232221201f232f3c4956626f7c8895998c807366594d4033271e1f2021222324252524211c170f080000000000010c17222d37414b545e666f767d84898d90929392908e8a857e7870685f564d43392f241a0f04000000101c2936424f5c687479797979797979797970645c69747979797979797979796f63574a3d3124170a00101c2936424f5c68747979797979797979797064584b3e3225180c000000000013202c3946535f6c798693979797978d8173675a4d515e6b77848d9195989b9d9ea0a0a1a2a1a1a09e9c9894908a847c746b62594f453b30251a0e03000000000000030e19242f39434e57616a737b82898f94989c9ea0a1a2a1a09f9d9a97928d8780786f6976838f979797978d8073665a4d4033271a0d0013202c3946535f6c798693a0aca79a8d81746c645c545e68727d87919ca6a89e948a80756b61574c42382e24190f05000000000000000000000a16222f3a46515b62686f778089929b9c958d857b726864646464646464646464646464646465666a6f767e87919ca7a89c9084786c6054483b2f23160a000000000000000013202c3946535f6c798693a0acaca09386796c5f5346392c201306000000000000000001040c1825323e4b5764717d8a97a4b1a99c8f8276695c4f4336291c100013202c3946535f6c798693a0acaca09386796c5f5346392c20130d0d0d0d0d0d0e0e0f101318202b37434f5b6774818d99a6b3a79a8d8174675b4e4135281b0f0003101c2834404c5965717d7e7e7e7e7e8a97a4b0a5988c7f7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7265584b3f3225180c0000000000000000000000000013202c3946535f6c798693a0acaa9d908376695d5043372a1d16181d232b333d47515c67737e8a96a2aeb2a6998c7f7265594c3f322619120e09020000000000121f2b3845525e6b7884919eaaab9e9285796c6054483e3938393b3e42484f565e67717b859096969ca6b1a6998c7f7266594c3f393a38342e271e150b01000000000000000000000f1c2835424f5b6875828f9084776a5d5044372a1d1104000000000000000000000007131f2b37434f5b67737f8b96a2adaca0958a7e73695e544a40372e261f1914100c0a09080708090b0d11151b2229313a444e58626d77838e99a4b0a99e92877b6f63574b3f33271b0f03000013202c3946535f6c798693a0acaca0938679727272727272727272727272727272727272727272727272727272727272727272726c6155493d3023170a0000000000000713202d3a4653606d798693a0adaca09386796c5f5346392c201306000000000000000000010e1a26323e4a55616c77828c96a09c91877e756d67615d5a58595c6063676b70757a80878e969fa9a3998f84796d62564a3e3226190d010000040e171f262c30323231302f2e2d2c2b2b303d4a5763707d8a969a8d8174675b4e41342a2b2c2d2e2f30313232312d2821191107000000000006101b252f39424c545d656c72787d818485868584817d79736d665e564d443b31271d1308000000000e1b2733404c57626a6c6c6c6c6c6c6c6c6c685f58626a6c6c6c6c6c6c6c6c6c675e53473b2e221609000e1b2733404c57626a6c6c6c6c6c6c6c6c6c685f54483c3023170a000000000013202c3946535f6c798693a0a4a49a8d8173675a4d515e6b7885929da1a4a7a5a3a1a09f9e9e9fa1a3a7a5a09b958e867e756b61574c41362b20140800000000000009141f2a35404b555f69737c858d949aa0a4a8a6a29f9d9c9c9c9d9ea19e98918a81786f7784909da4a4998c807366594c403326190d0013202c3946535f6c798693a0aca89b90877e766e665e66707a848f99a3aba1978c82786e63594f453b30261c1208000000000000000000000006121e2a353f4951575e656d76808a949e9f978d84796f645957575757575757575757575757585a5e646c75808a96a1ada195887c7064574b3e3225190c000000000000000013202c3946535f6c798693a0acaca09386796c5f5346392c20130b0b0b0b0b0b0b0c0c0e10141c2834404d5966727f8c98a5b2a89b8e8275685b4f4235291c0f0013202c3946535f6c798693a0acaca09386796c5f5346392c201a1a1a1a1a1a1a1a1a1b1d1f232a323c47535f6b7783909ca8b1a5988c7f7266594d4033271a0d00000c1824303d4955616b72727272727d8a97a4b0a4988b7e727272727272727272727272727272727272726c62564a3d3124180b00000000000000000000000000131f2c3946525f6c7885929fabaa9d9184776b5e5245392c231f1c1b1a212b35404b56626e7986929eaab2a6998c7f7265594c3f3226190c020000000000000013202c3946525f6c7986929facaa9d9084776a5d5144382d2c2c2e32373d444c555f69737e89949fa7aeb2a6998c7f7265594c3f322d2b28231c150c0300000000000000000000000f1c2835424f5b6875828f9084776a5d5044372a1d11040000000000000000000000030f1b27333f4b57626e7a85919ca7b1a69b90857a70665c52494038312a25201c19171515141516171a1d21262c333b434c565f6a747e89949faaafa4988d82766a5e53473b2f23170b00000013202c3946535f6c798693a0acaca09386796c656565656565656565656565656565656565656565656565656565656565656565625a5045392d2114080000000000000713202d3a4653606d798693a0adaca09386796c5f5346392c201306000000000000000000000a16212d3944505b66707a858e979f9990877f78726d6a676566696c6f73777b81868b9299a0a8a29a91877d72685c51453a2e22160a0000010c16202931373c3f3f3e3d3c3b3a393837363e4b5864717e8a979b8e8275685b4f42363738393a3b3c3d3e3f3f3d39332b23190f04000000000009131d27303a424b535a61676d7175777879797775716d68625b544c443b32291f150b01000000000b17232f3b4650585e5f5f5f5f5f5f5f5f5f5d5650595e5f5f5f5f5f5f5f5f5f5c554c41362b1f1206000b17232f3b4650585e5f5f5f5f5f5f5f5f5f5d564d42372c201407000000000013202c3946535f6c798693a0aca79a8d8173675a4d515e6b7885929ea29f9b999694939292929294979ba0a6a6a09890877d73695e53473c3125190d0100000000030e1a25303c47525d67717b858e979ea5aba6a09b9693918f8f8f909294989c9c938a81777784919eaba6998c7f7265594c3f3226190c0013202c3946535f6c798693a0acaca2989088807870686d77828c96a0aba3998f857a70665c52473d33291f140a000000000000000000000000020d18232d373f464c535b646e78828d98a39f968b81766b5f544b4b4b4b4b4b4b4b4b4b4b4b4b4e535a636e7984909ca5a4988c8073665a4d4134281b0f000000000000000013202c3946535f6c798693a0acaca09386796c5f5346392c20181818181818181819191a1d20262e3944505c6975828e9aa7b2a6998d8073675a4d4134271b0e0013202c3946535f6c798693a0acaca09386796c5f5346392c2727272727272727272728292c2f343c444e5964707b87939facaea295897c7063574a3e3125180c00030e18222d39444f596165656565717e8b98a4b0a4978a7d71656565656565656565656565656565656565625a50453a2e21150900000000000000000000000000121e2b3845515e6b7784919daaac9f93867a6d6155493e352f2b29272626252e3a45515d6975828e9aa7b2a6998c7f7265594c3f3226190c000000000000000013202c3946535f6c798693a0acaa9d908376695d5043362a1f2022262b323a434d57616c77838e9aa5b1b2a6998c7f7265594c3f32261f1c17120b030000000000000000000000000f1c2835424f5b6875828f9084776a5d5044372a1d11040000000000000000000000000b17222e3a46525d6974808b96a1acaca1978c82786e645b524a433c36302c28252322212121222426292d32383e454d565e68717b86909ba5b0a89d92877c7065594e42362a1f130700000013202c3946535f6c798693a0acaca09386796c5f59595959595959595959595959595959595959595959595959595959595959595650483e33281d11050000000000000713202d3a4653606d798693a0adaca09386796c5f5346392c2013060000000000000000000005111c28333e49545e69737c858e959c99918a837e797673727275787c8083888c91979da3a7a09890887f756b61564b4034291d1106000007121d28323b43484b4c4b4a49484746454443424c5965727e8c989c8f8376695d504343444546474748494a4b4b49443d352b21160b0000000000010b151e283039414950565c6165686a6c6c6c6a6865615c57514a423a322920170d04000000000007131e29343e464d52535353535353535353514b474e52535353535353535353504b433a30251a0e020007131e29343e464d52535353535353535353514b443b31261b0f03000000000013202c3946535f6c798693a0aca79a8d8173675a4d525f6b7885929a96928f8c8a888685858586888b8f959ca3aaa2998f857a6f64594d41362a1e12050000000008131f2b36424d58636e79838d97a0a9aca39c958f8a86848282828385888c90969c93897e7885929eaba5988c7e7265584c3f3225190c0013202c3946535f6c798693a0acb3aaa29a928a827a71757f89949ea8a69c91877d73695e544a40362b21170d030000000000000000000000000007111b242d343a4149525c66707b86929da79d92877c7065594e423e3e3e3e3e3e3e3e3e3e3f4248525c6874808c989997968f8275695c5043362a1d11000000000000000013202c3946535f6c798693a0acaca09386796c5f5346392c252525252525252525252627292c3138404a55616d7985919daab0a3978a7e7165584c3f3226190d0013202c3946535f6c798693a0acaca09386796c5f53463934343434343434343434343536383b40464e56606a75818c98a4b0aa9e9286796d6154483b2f2216090008141f2a343d454b4f5658585865727e8b98a5b0a4978a7d706358585858585858585858585858585858585650483e34291d110500000000000000000000000000101d2a3643505c6975828e9ba7aea295897d71655a5047403b3836343332323235414d5966727e8b98a4b1a6998c7f7265594c3f3226190c000000000000000013202c3946535f6c7986939facaa9d9083766a5d5044372a1e15151a2128313b45505b66727d8995a1adb2a6998c7f7265594c3f322619100c0600000000000000000000000000000f1c2835424f5b6875828f9084776a5d5044372a1d110400000000000000000000000006121e2935414c57636e79858f9aa5afa89e948a80766d645c544d47413c383532302f2e2e2e2f303336393e434950575f68707a838d98a2acaca2978c81766b5f54483d31251a0e0200000013202c3946535f6c798693a0acaca09386796c5f534c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4a453e362c22170c000000000000000713202d3a4653606d798693a0adaca09386796c5f5346392c20130600000000000000000000000b17222d38424d57606a737b848b91979b958f8a8682807e7e8185888c9094989da2a7a29c958e877e766d63594f443a2f23180c0100000c18232f3a444d5458585756555553535251504f4e5a6673808c999d9084776a5d514e4f50515253545556575858554f473d32271c10040000000000030c161e272f373e454b5055595c5e5f5f5f5e5c5955514b453f38302820170e05000000000000020d18222c353c424546464646464646464644403c424546464646464646464644403931281e13080000020d18222c353c424546464646464646464644403a32291f140a00000000000013202c3946535f6c798693a0aca79a8d8173675a4d525f6b7885928e8a8683807d7b79787878797b7e848a919aa3aba1978c8175695e52463a2e221509000000000c1824303c47535e6975808b959fa9aca39a918a847e7a7776757576787b80858b929a90867a86929faca5988c7e7265584c3f3225190c0013202c3946535f6c798693a0acb9b4aca49c948c847b7c87919ba5a89e948a80756b61574d42382e24190f0500000000000000000000000000000009121b23293037404a545f6a75818c98a4a4998d82766a5e52463a3131313131313131313236404b57636f7c888d8c8b898884776b5e5145382b1e12000000000000000013202c3946535f6c798693a0acaca09386796c5f5346393232323232323232323232333436393d4249525c67727d8995a1adaca094877b6f6256493d3024170b0013202c3946535f6c798693a0acaca09386796c5f5346404040404040404040404041414345484c51585f68727c87929da9b0a5998d8275695d5145382c201307000d1925303c464f575b5b5b5b5b65717e8b98a4b0a4978a7d70635b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5a554d453e362c22170c01000000000000000000000000000f1b2834414d5a66727f8b97a3afa5998e82776c6259514b47444241403f3f3e3e3e4a5763707d8996a3afa6998c7f7265594c3f3226190c0000000000000000121f2c3945525f6b7885929eabaa9e9184786b5f5246392e26221f1e1c1f29343e4a55616d7885919da9b2a6998c7f7265594c3f3226190c000000000000000000000000000000000f1c2835424f5b6875828f9084776a5d5044372a1d1104000000000000000000000000010d1924303b46525d68737e89939ea8b0a69c928980766e665f58524d4844413f3d3b3b3a3b3c3d3f4245494e545a6169717a838c959fa9afa59a90857a6f64594e43372c2015090000000013202c3946535f6c798693a0acaca09386796c5f53463f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3e3a342c241a1005000000000000000713202d3a4653606d798693a0adaca09386796c5f5346392c201306000000000000000000000005101b26303b454e58616a727980868b90949a96928f8d8b8b8e9194989ca0a4a4a09b96918a847c756c645b51473d33281d12070000000f1c2834404b565f646564636261605f5e5d5c5b5b5b6774818e9a9e9185786b5f5a5b5c5d5e5f6061626364656561594f44382c201407000000000000040c151d252c333a3f44494c4f51525352514f4d4945403a342d261e160e05000000000000000006101a232a313639393939393939393939383431363939393939393939393938342e271f160c0200000006101a232a31363939393939393939393938342f2820170d0300000000000013202c3946535f6c798693a0aca79a8d8173675a4d525f6b788586827d7a7673716e6d6c6b6b6c6f73788088919ca6a89d92867a6e62564a3e3125180c00000004101d2935404c58646f7b86919ca7afa49a91888078726e6b6968696a6c6f7479808891978c8186929faca5988b7e7165584b3f3225180c0013202c3946535f6c798693a0acb3aaa3a1a39e958d85848e98a3aba1978c82786e63594f453b30261c120800000000000000000000000000000000000911181e252e38424d5964707c8894a0aa9e92877b6f63564a3e322524242424242424252f3b4753606c798281807e7d7b7a756a5e5144382b1e12000000000000000013202c3946535f6c798693a0acaca09386796c5f53463e3e3e3e3e3e3e3e3e3e3e3f3f404245494e545b646e78838f9aa6b1a89c9084786b5f53463a2e2115080013202c3946535f6c798693a0acaca09386796c5f534d4d4d4d4d4d4d4d4d4d4d4d4d4e4f5154585c6269717a848e99a3aeaa9f94897d7165594d4135291c100400101d2935414d5861676868686868717e8a97a4b0a4978a7d7068686868686868686868686868686868665f564a3f33271b100600000000000000000000000000000c1925313e4a57636f7b87939faaaa9f93887e746b635c5754514f4e4d4c4c4b4b4b4a55626f7b8895a2afa6998c7f7265594c3f3226190c0000000000000000111e2b3844515e6a7784909da9aca093877a6e62564a4037322e2c2a2928282d3944505c6875818d9aa6b2a6998c7f7265594c3f3226190c000000000000000000000000000000000f1c2835424f5b6875828f9084776a5d5044372a1d11040000000000000000000000000008131e2a35404c57616c77818c96a0a9aea49b92898078716a635e5854504d4b4948484748484a4c4e51555a5f656c737b838c959ea7b0a69d93897e74695e53483d32261b0f040000000013202c3946535f6c798693a0acaca09386796c5f5346393232323232323232323232323232323232323232323232323232323232312e29221a120800000000000000000713202d3a4653606d798693a0adaca09386796c5f5346392c2013060000000000000000000000000a141f29333d464f5760676e757a808488929e9e9b9998989a9da1a4a3a09c98948f8a857f79726a635a52493f352b21160c01000000121e2b3844505c68707271706f6e6d6c6b6a696867666875828e9b9f9286796c666768696a6b6c6d6e6f6f7071726b6054483c2f23160900000000000000030b131b22282e34383d4043444646464543403d39342f29231c140d04000000000000000000000811192025292c2c2c2c2c2c2c2c2c2c2b28262a2c2c2c2c2c2c2c2c2c2c2b28231d150d0400000000000811192025292c2c2c2c2c2c2c2c2c2c2b28241d160e050000000000000013202c3946535f6c798693a0aca79a8d8173675a4d525f6c79807a76716d6a676462605f5e5e6062676d76808a95a0aca3978b7e7266594d4134281b0f0200000814212d3945515d6974808c97a3aea89d93887e766e67625e5c5b5c5d6063686f767e889192888994a0aca5988b7e7165584b3e3225180b0013202c3946535f6c798693a0acaca19894979f9f978f8e96a0aaa3998f857a70665c52473d33291f140a00000000000000000000000000000000000000060d141c26313c4854606c7884919da9a3978b7f73665a4e4135291c1818181818181f2b3844515d697375747371706e6d6b63594e4235291d10000000000000000013202c3946535f6c798693a0acaca09386796c5f534b4b4b4b4b4b4b4b4b4b4b4b4c4c4d4f5155595f656d76808a95a0abaea2978b8073675b4f43372b1e12050013202c3946535f6c798693a0acaca09386796c5f5a5a5a5a5a5a5a5a5a5a5a5a5a5a5b5c5e6064686d747b848c96a0aaada3998e83776c6055493d3125190d0000121f2c3845515e69737575757575757d8a97a4b0a4978a7e757575757575757575757575757575757571675b4f43372b1e120600000000000000000000000000000916222e3a47535f6b76828e99a4aea59a90867d756e6863605d5c5a5959585858575757626f7b8895a2afa6998c7f7265594c3f3226190c0000000000000000101d2936424f5c6875818e9aa6afa3968a7e72675c5249423e3b38373635353534404c5965727e8b97a4b1a6998c7f7265594c3f3226190c000000000000000000000000000000000f1c2835424f5b6875828f9084776a5d5044372a1d110400000000000000000000000000020d19242f3a45505b65707a848e97a1aaada49b928a827b756e6964605d5a5856555454545556585b5e61666b70777e858d959ea7b0a79e948b81776c62574c42372b20150a000000000013202c3946535f6c798693a0acaca09386796c5f5346392c2626262626262626262626262626262626262626262626262626262624221d1710080000000000000000000713202d3a4653606d798693a0adaca09386796c5f5346392c201306000000000000000000000000030e18232d37414a535b636a71777d8287929eaba8a6a5a4a3a09d9a9793908c88837e79746e676059514840372d23190f0500000000131f2c3946525f6c797e7d7d7b7b7a79787776757473727683909ca093877a7273747575777778797a7b7c7d7e7d7063574a3d3024170a0000000000000000010910171d23282c30343638393939383634312d28231e18110a02000000000000000000000000070e14191d1f2020202020202020201f1c1a1d1f2020202020202020201f1c17120b0400000000000000070e14191d1f2020202020202020201f1c18120c04000000000000000013202c3946535f6c798693a0aca79a8d8173675a4d515e6a74756f6a65615e5a58555352515253565c646e7884909ca8a79a8e8275695c5043362a1d110400000c1824313d4955616d7985919da8aea2978c81766d645c5652504f4f5153575d646c76808a9593949ba5b0a5988b7e7165584b3e3225180b0013202c3946535f6c798693a0aca89b8f878d97a0a19b9a9fa8a69c92877d73695e544a40362b21170d030000000000000000000000000000000000000000020a14202b3743505c6875818e9aa7a79b8f82766a5d5144382b1f120b0b0b0b101c2935414d586168696766656362605e5951473d3125190d000000000000000013202c3946535f6c798693a0acaca09386796c5f5858585858585858585858585858595a5b5e61656a70778089929ca6b1a79c91867a6f63574b3f33271b0f020013202c3946535f6c798693a0acaca09386796c67676767676767676767676767676767696a6d7074797f868d969ea8aea59b91877c71665b4f44382c201509000013202c3946535f6c79828282828282828a97a4b0a5988c828282828282828282828282828282828282776b5f53473a2e22160a000000000000000000000000000006121e2a36424e5a66717c87929ca6aca2988f878079746f6c6a68676665656565646464636f7b8895a2afa6998c7f7265594c3f3226190c00000000000000000e1b2734404d5965727e8a96a2aea69a8f83786e645b544e4a4745444342424141414a5663707c8996a2afa6998c7f7265594c3f3226190c000000000000000000000000000000000f1c2835424f5b6875828f9084776a5d5044372a1d1104000000000000000000000000000007131e29343e49535e68727c858f98a0a9ada49c948d86807a75706c6966646362616161626365676a6e72767c82888f979fa7afa69e958c83796f655a50463b30251a0f04000000000013202c3946535f6c798693a0acaca09386796c5f5346392c201919191919191919191919191919191919191919191919191919191815110c06000000000000000000000713202d3a4653606d798693a0adaca09386796c5f5346392c20130600000000000000000000000009141f2a353f49535c656d757c83898e9299a3a9a5a19d9a9794918e8a8784807c77736e68635c564e473f362e241b12080000000000131f2c3946525f6c79868a89888786868584838281807e7e84909da194887d7e80818282838485868788898a8a7d7063574a3d3024170a00000000000000000000050c12171c202427292b2c2c2c2b2a2724211d18120d0600000000000000000000000000000003090d111213131313131313131312100e1113131313131313131313120f0c070000000000000000000003090d111213131313131313131312100c070100000000000000000013202c3946535f6c798693a0aca79a8d8173675a4d4d58626869635e5955514e4b4947454545474a525c6773808c98a5aa9d9184776b5e5145382b1f120500030f1b2834404d5965717d8a96a2ada99d91867a6f655b524a4543424244474c525a646e78838e9aa0a5adb2a5988b7e7165584b3e3225180b0013202c3946535f6c798693a0aca79a8d81858e98a1a8a7aba89e948a80756b61574d42382e241a0f0500000000000000000000000000000000000000000000030f1b2734404d5966727f8c98a5ab9e9285796c6053463a2d2114070404040d1925303b464f575b5c5b5958565554524e483f362b201509000000000000000013202c3946535f6c798693a0acaca09386796c6565656565656565656565656565656566686a6d71767b8289929ba4aeaaa0958b8075695e52473b2f23170b000013202c3946535f6c798693a0acaca093867973737373737373737373737373737374747577797c80858a90979fa8ada59c938980756b60554a3e33271c10040000121f2b3844515d6975818d8f8f8f8f8f929ba7b3a89d938f8f8f8f8f8f8f8f8f8f8f8f8f8f8f8f8f877b6f63574a3e32261a0e0200000000000000000000000000020e1a26323d4954606b76808a949da6aaa199918a84807c79777574737272717171717170707b8895a2afa6998c7f7265594c3f3226190c00000000000000000c1824313d4a56626e7a86929ea9aba0958a80766d655f5a565452504f4f4e4e4e4d4d55626f7b8895a2afa6998c7f7265594c3f3226190c000000000000000000000000000000000f1c2835424f5b6875828f9084776a5d5044372a1d11040000000000000000000000000000010c17222d37424c56606a737c868e979fa7aea69f98918b86817c797673716f6e6e6d6e6f707174767a7e82878d939aa1a9aca59d948c837a70675d53493e34291e140900000000000013202c3946535f6c798693a0acaca09386796c5f5346392c20130c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0b09050100000000000000000000000713202d3a4653606d798693a0adaca09386796c5f5346392c2013060000000000000000000000040f1b26313c46515b656e777f878e94999ea3a29d9995918e8a8784817e7b7774706b67625d57514b443d352d241b1209000000000000131f2c3946525f6c798692969594939291908f8e8e8c8c8b8b949fa3978d8a8b8c8d8e8f90919293949596978a7d7063574a3d3024170a000000000000000000000001060b1014181b1d1e1f201f1e1d1b1815110c0701000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000013202c3946535f6c798693a0aca79a8d8173675a4d4650575c5c58524d4945423f3c3a3938383a404b5764707d8996a3ac9f9286796c5f5346392c2013060005121e2b3743505c6975818d9aa6b1a5998d8175695e53494039363536373b4148525c67727d8994a0acb6b2a5988b7e7165584b3e3225180b0013202c3946535f6c798693a0aca79a8d817c868f99a2abaea2978c82786e64594f453b30261c120800000000000000000000000000000000000000000002080c0f1825313e4b5764717d8a97a3ada194877b6e6155483c2f22161111111111141f2a343d454b4f4f4e4d4b4a484745423d362d24190f04000000000000000013202c3946535f6c798693a0acaca09386797171717171717171717171717171717272737577797d81878d949ba4adaaa1988e84796e63584d41362a1e1207000013202c3946535f6c798693a0acaca09386818181818181818181818181818181818181828486898c90969ba2a9aaa39b938a81776d63594e43382d22160b000000101c2834414d5965717d8a969c9c9c9c9ea4adb8aea59e9c9c9c9c9c9c9c9c9c9c9c9c9c9c9c9c978b7f73675a4e42362a1e120500000000000000000000000000000a15212d38434e59646e78828b949ba2a9a39c96908c8885838281807f7e7e7e7e7d7d7d7d7d8895a2afa6998c7f7265594c3f3226190c00000000000000000915212d3a46525e6a75818c97a2aca69c91887f77706a6663605e5d5c5b5b5b5b5a5a5a626f7b8895a2afa6998c7f7265594c3f3226190c000000000000000000000000000000000f1c2835424f5b6875828f9084776a5d5044372a1d110400000000000000000000000000000006101b25303a444e58616a737c858d959da4aba9a39c97918d898582807d7c7b7a7a7b7b7c7e8083868a8e93999ea5aca8a29a938b837a71685e554b41372d22180d0200000000000013202c3946535f6c798693a0acaca09386796c5f5346392c20130d0d0d0d0d0d0d0d0d0d0d0d0d0d0d0d0d0d0d0d0d0d0d0d0d0d0d0d0d0b08040000000000000000000713202d3a4653606d798693a0adaca09386796c5f5346392c20130600000000000000000000000914202c37424d58636d76808991989fa5a29c96918d8985827e7b7875726e6b67645f5b56514c464039322b231b120900000000000000131f2c3946525f6c7986929fa2a1a09f9e9d9c9b9a999897979da6a99f989798999a9b9c9d9e9fa0a1a2a2978a7d7063574a3d3024170a000000000000000000000000000004080b0e101213131312100e0c0805000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000013202c3946535f6c798693a0aca79a8d8173675a4d40464c4f504d47423d393532302e2c2b2c2f3c4955626f7b8895a2ada09386796d6053463a2d201307000814212d3a46535f6c7885919da9ada195897c7064584d41372e2a28292b2f36404a55606c7884909ca8b4b2a5988b7e7165584b3e3225180b0013202c3946535f6c798693a0aca79a8d81737d879099a3ac9f92867a70675e544b42392f261d140a0100000000000000000000000000000000000000070e14181b1d23303d4956636f7c8996a2afa296897c706356493d30231d1d1d1d1d1d1d1d222b343a3f424341403e3d3c3a3936322b241b120800000000000000000013202c3946535f6c798693a0acaca093867e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7f80818386898d92989ea5ada8a0988f867c72675d52473c3025190e02000013202c3946535f6c798693a0acaea2978f8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8e8e8f909295989ca1a7aaa49f98918981786f655c51473d32271c11050000000c1824313d4955616d7a86929b9b9b9b9ca1a9b3b1a79f9b9b9b9b9b9b9b9b9b9b9b9b9b9b9b9b9b8f83776a5e52463a2e211509040302010000000000000000000004101b27323d48525c667079828a91979da2a6a19c989592908e8d8c8c8c8b8b8b8a8a8a8a8a8d97a3b0a6998c7f7265594c3f3226190c000000000000000005111d2935414d5964707b86909ba4ada39a9189827b76726f6d6b6a6968686767676767666f7b8895a2afa6998c7f7265594c3f3226190c000000000000000000000000000000000f1c2835424f5b6875828f9084776a5d5044372a1d11040000000000000000000000000000000009141e28323c464f58616a737b838b9299a0a6aba8a29d9995918f8c8a898887878888898b8d8f92969a9fa4aaa9a49d979089817970685f564c43392f251b10060000000000000013202c3946535f6c798693a0acaca09386796c5f5346392c201a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1a191814100a03000000000000000713202d3a4653606d798693a0adaca09386796c5f5346392c20130600000000000000000000010d1925313d48545f6a747f89929ba3a69e97908a85817c7975726f6b6865625f5b57534f4b46403b352e28201d1a161009010000000000131f2c3946525f6c7986929fa1a09f9e9d9c9b9a99989796969ca5a89e97969798999a9b9c9d9e9fa0a1a2978a7d7063574a3d3024170a0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000013202c3946535f6c798693a0aca79a8d8173675a4d403b404343403c36312d292623211f1f28313d4956636f7c8995a2ada09386796d6053463a2d201307000a1723303c4955626e7b8794a0adaa9e9185796c6054483c30251d1c1c1f242e3944505b6773808c98a4b0b2a5988b7e7165584b3e3225180b0013202c3946535f6c798693a0aca79a8d8173747e87919aa4a1968c827970665d544b41382f261c130a0000000000000000000000000000000000000811181f24282a2a2f3c4955626f7b8895a2afa4978a7d7164574a3e312a2a2a2a2a2a2a2a2a2a2a292f333636353332302f2e2c2a26211a12090000000000000000000013202c3946535f6c798693a0acaea2968d8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8c8d8e909295999ea3a9aba59e968e867d746a60564b40352a1f140800000013202c3946535f6c798693a0acb4a9a09b9a9a9a9a9a9a9a9a9a9a9a9a9a9a9a9a9a9b9b9d9fa1a4a8a6a29e99938d867f776f665d534a40352b20150a000000000814212d3945515d6a76828e8e8e8e8e8f97a2aeaba0958f8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e877a6e62564a3d31241811100f0e0d0c090400000000000000000a15212b36404b545e6770787f868c91969a9ea1a3a19f9d9b9a9998989898989797979696989fa9b2a6998c7f7265594c3f3226190c0000000000000000010d1925313c48535e69747e89929ba3aba39b938d87827e7c797876757575747474737373737b8895a2afa6998c7f7265594c3f3226190c000000000000000000000000000000000f1c2835424f5b6875828f9084776a5d5044372a1d110400000000000000000000000000000000020c16202a343d464f586169717981888e949aa0a5a9a9a5a19e9b99979695949494959697999c9fa2a6aba7a39e98928c857e776f675e564d443a31271d1309000000000000000013202c3946535f6c798693a0acaca09386796c5f5346392c2626262626262626262626262626262626262626262626262626262626262624201b150d050000000000000713202d3a4653606d798693a0adaca09386796c5f5346392c2013060000000000000000000005111d2935414d5965707b86919ba4a59c948c857f7975706c6965625f5c5956524f4b47433f3a3532302f2d2c2a26211b130b0200000000131f2c3946525f6c7986929695949292908f8e8d8c8b8a898a939fa3978c898a8b8c8d8e8f909192939495968a7d7063574a3d3024170a0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000013202c3946535f6c798693a0aca79a8d8173675a4d403434363634302a25211d1a171a2129313a434e5965727e8a97a4ac9f9286796c5f5346392c201306000c1925323e4b5864717d8a96a3afa89b8f8276695d5044382c20140f10131c27333f4b57636f7c8894a1adb2a5988b7e7165584b3e3225180b0013202c3946535f6c798693a0aca79a8d81736c757f88929ba59e948b82786f665d534a41382e251c12090000000000000000000000000000000007111a232a30343637373c4855626f7b8895a2afa4978b7e7164574b3e37373737373737373737373736322d2929282725242221201e1a150f08000000000000000000000013202c3946535f6c798693a0acb3a89f99989898989898989898989898989898989898999b9c9fa2a5aaa9a49f9a938c857c746b62584e44392f24190e0300000013202c3946535f6c798693a0acb9b1aaa6a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a4a4a3a19f9d9a96928d88827b746d655d544b41382e24190f040000000004111d2935414d5a66727e828282828285929eaba99c8f838282828282828282828282828282828282827e7265584b3f32251f1e1d1c1b1a1815100a03000000000000040f1a242f39424c555e666d747b81868a8e919496989a9b9c9d9e9e9e9e9e9f9f9f9fa0a0a1a7afb2a6998c7f7265594c3f3226190c0000000000000000000814202b37424d58626d7680899199a0a6a59e98938e8b8886848382828281818181818080808895a2afa6998c7f7265594c3f3226190c000000000000000000000000000000000f1c2835424f5b6875828f9084776a5d5044372a1d11040000000000000000000000000000000000040e18222b343d464f575f676f767d83898f94999da1a4a8aaa8a5a4a2a1a1a1a1a2a2a4a6a8a9a6a3a09c97928d87817a746c655d554c443b32281f150b01000000000000000013202c3946535f6c798693a0acaca09386796c5f5346393333333333333333333333333333333333333333333333333333333333333333302c261f170e0400000000000713202d3a4653606d798693a0adaca09386796c5f5346392c201306000000000000000000000814202d3945525e6a76818d98a2a79d938a827a746e6964605d595653504d4a46433f3e424342403f3d3b3a3836322c251d140a00000000131f2c3946525f6c79868a898887868584838281807e7d7d84919ea295887c7d7e808181828484868688888a8a7d7063574a3d3024170a0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000013202c3946535f6c798693a0aca79a8d8173675a4d403427292928241f191511171e252c333b434c555f6a76828e9aa6a99d9084776b5e5145382b1f1205000e1a2734404d596673808c99a5b2a5998c8073665a4d4135281c1003030b17232f3b4753606c7985929eabb2a5988b7e7165584b3e3225180b0013202c3946535f6c798693a0aca79a8d8173676d768089939ca69d948b81786f655c534a40372e241b12090000000000000000000000000000030e19232c353b40434444444855626f7b8895a2afa4988b7e7164574b44444444444444444444444444423e3831281e1a1817161413110e0a0400000000000000000000000013202c3946535f6c798693a0acacaca9a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a6a7a9a8a6a4a19d99948e88827a736a625950463c32281d12080000000013202c3946535f6c798693a0acb3a89f999898989898989898989898989898989898989897969492908d8a86827c77716a635b534b42392f261c12070000000000010d1925313d4a56626d74757575757783909da9aa9d9084777575757575757575757575757575757575746e63574a3e312d2c2b2a29282725211b150d0400000000000008121d27303a434c545c63696f757a7e8285888a8c8d8f90909191919292929292939393959da7b2a6998c7f7265594c3f3226190c000000000000000000030f1a25313b46515b656e7780878e959a9fa4a39f9b97959391908f8f8e8e8e8e8d8d8d8c8c8f99a4b0a6998c7f7265594c3f3226190c000000000000000000000000000000000f1c2835424f5b6875828f9084776a5d5044372a1d1104000000000000000000000000000000000000061019222b343d454d555d646b72787e83888d9195989b9ea0a1a3a4a5a5a5a5a5a4a2a19f9d9a9793908b86817b766f69625a534b433a322920160d0300000000000000000013202c3946535f6c798693a0acaca09386796c5f534640404040404040404040404040404040404040404040404040404040404040403f3d38312920160b00000000000713202d3a4653606d798693a0adaca09386796c5f5346392c201306000000000000000000000a1723303c4955616e7a86929ea9a1968b81787069635d5854504d4a4643403d3a3a42494e4f4e4d4b4a484745423e372f261c1106000000131f2c3946525f6c787e7d7c7b7a7978777675747372717885929ea295897c7171737375767778797a7b7c7d7e7d7063574a3d3024170a0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000013202c3946535f6c798693a0aca79a8d8173675a4d4034271d1d1b18140e141b22292f363d454d555e67717c87929eaaa69a8e8175685c4f43362a1d1004000f1c2835424e5b6874818e9aa7b0a4978a7d7164584b3f3226190c000006131f2b3844505d6976838f9ca8b2a5988b7e7165584b3e3225180b0013202c3946535f6c798693a0aca79a8d817367646e77818a949da69d938a81776e655c524940372d241b1108000000000000000000000000000915202b353e464c505050505055626f7b8895a2afa4988b7e71645750505050505050505050505050504f4a433a30251a0f0a0908060402000000000000000000000000000013202c3946535f6c798693a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a09f9e9d9c9a9794918d88837d777068615850473e342a20160b010000000013202c3946535f6c798693a0acaea2968d8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8b8b8a89888684817d7a75716b655f585149413930271d140a000000000000000915212d3a45515b63686868686875828e9ba7ab9f9285796c6868686868686868686868686868686868645c52463b3a39383736353433312c261f160d030000000000010b151e28313a424a51585e64696e7275787b7d7f8182838484848485858586868686868b96a3afa6998c7f7265594c3f3226190c0000000000000000000009141f2a343f49535c656d757d848a8f93979b9ea0a2a19f9e9d9c9b9b9b9a9a9a9a9a99999aa1aab2a6998c7f7265594c3f3226190c000000000000000000000000000000000f1c2835424f5b6875828f9084776a5d5044372a1d110400000000000000000000000000000000000000071019222b333c434b525a60676d72777c8185898c8f9193959697989898989897969492908e8b87837f7a76706a645e5750494139312820170e040000000000000000000013202c3946535f6c798693a0acaca09386796c5f534d4d4d4d4d4d4d4d4d4d4d4d4d4d4d4d4d4d4d4d4d4d4d4d4d4d4d4d4d4d4d4d4d4c49433b32271d1206000000000713202d3a4653606d798693a0adaca09386796c5f5346392c201306000000000000000000000c1825323e4b5764717d8a96a2a79b8f84796f665e57514c4844413d3a37343137424c545a5c5b5958565553524f4941382d23170c000000121e2b3744505c677071706f6e6d6c6b6a69686766656c7885929fa396897c6f65666768696a6b6c6d6e6f7071726b6054483c2f2316090000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000013202c3946535f6c798693a0aca79a8d8173675a4d4034271a100f0c0f171e262d343a41484f575f677079838d98a4ada2968a7e7165594d4034271b0e0200101d2a3643505d6976838f9ca9afa295897c6f6356493d3023170a0000030f1c2835424e5b6774818d9aa6b2a5988b7e7165584b3e3225180b0013202c3946535f6c798693a0aca79a8d8173675c656f78828b949ea59c938a80776d645b52493f362d231a11080000000000000000000000000e1a26313c4750585c5d5d5d5d5d626f7b8895a2afa4988b7e71645d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5b554c42372b2014070000000000000000000000000000000000000013202c3946535f6c7986939393939393939393939393939393939393939393939393939292918f8d8b8885817c77726c655e574f463e352c22180e04000000000013202c3946535f6c798693a0acaca093867e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7d7c7b797774716e6a65605a544e473f372f271e150b020000000000000005111d29343f4952585b5b5b5b66737f8c98a5ada194887b6e625b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b59524a474847464544434241403d3831281f150b000000000006101921292f33383f464d53585d6266696c6e717274757677777778787878797979797b8895a2afa6998c7f7265594c3f3226190c00000000000000000000030d18232d37414a535b646b72787e83878b8f91949697999a9a9b9b9b9c9c9c9c9c9d9d9d9fa4adb2a6998c7f7265594c3f3226190c000000000000000000000000000000000f1c2835424f5b6875828f9084776a5d5044372a1d11040000000000000000000000000000000000000000071019212a323941484f555b61676c7075797c80828586888a8b8b8c8c8c8b8a89888684817e7b77736f6a655f59534c463e372f271f160e05000000000000000000000013202c3946535f6c798693a0acaca09386796c5f5959595959595959595959595959595959595959595959595959595959595959595959544d43392e23170b000000000713202d3a4653606d798693a0adaca09386796c5f5346392c201306000000000000000000000d1a2633404c5966727f8c99a5a4988b7f73685d544c46413c3834312e2a27313d48545e66696866656361605e5a534a3f34281c100400000f1c2834404b565e646564636261605f5e5d5b5a595f6c7986929fa3968a7d7063595a5b5c5d5e5f60616263646561594f44382c2014070000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000013202c3946535f6c798693a0aca79a8d8173675a4d4034271a0d071018212830373e454c535a61697179828b959faaa79c9185796d6155493d3124180c0000111e2b3744515e6a7784909daaaea194887b6e6155483b2f2215090000000d1a2633404c5965727e8c98a5b1a5988b7e7165584b3e3225180b0013202c3946535f6c798693a0aca79a8d8173675a5d666f79838c959fa59c928980766d645b51483f352c231a10070000000000000000000000111d2a36424e5962696a6a6a6a6a6a6f7b8895a2afa4988b7e716a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a665e53483c3023170b0000000000000000000000000000000000000013202c3946535f6c79868686868686868686868686868686868686868686868686868686858482817e7b7875706b66605a534c453d342c231a100600000000000013202c3946535f6c798693a0acaca093867972727272727272727272727272727272727171706e6d6a6865625d59544f49433c352d251d150c030000000000000000010c18232d3740474c4e4e4e5764707d8996a2afa3968a7d7165584e4e4e4e4e4e4e4e4e4e4e4e4e4e4e4c4a50545554535251504f4e4d49433a31271c1105000000030e18222b333a3f42434445474d5156595d5f6264666769696a6b6b6b6b6b6b6c6c6c6f7b8895a2afa6998c7f7265594c3f3226190c000000000000000000000006111b252f384149525960676d72777b7f828587898b8c8d8e8e8e8e8f8f8f8f90909090939ba6b2a6998c7f7265594c3f3226190c000000000000000000000000000000000f1c2835424f5b6875828f9084776a5d5044372a1d1104000000000000000000000000000000000000000000070f1820272f363d444a50565b6065696c707376787a7b7d7e7e7e7f7e7e7d7c7b797775726f6b67635e59544e48423b342d251d150d0400000000000000000000000013202c3946535f6c798693a0acaca09386796c6666666666666666666666666666666666666666666666666666666666666666666666655f554b3f33271b0e020000000713202d3a4653606d798693a0adaca09386796c5f5346392c201306000000000000000000000d1a2633404d596673808d9aa6a295897c6f63574b423b35302c282627282c34404c59657076747371706e6c6b655b5045392c20130700000c18232f39444d54585857565554535251504f4e53606d798693a0a4978a7d7164574d4e4f515153545556575858554f473d32271c10040000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000013202c3946535f6c798693a0aca79a8d8173675a4d4034271a0d1019222a323a424950575d646b737a838b949da7aba1968b8074695d5145392d2115080000121f2c3845525e6b7885929eabada093867a6d6053473a2d2114070000000b1825313e4b5764717d8a97a4b0a5988b7e7165584b3e3225180b0013202c3946535f6c798693a0aca79a8d8173675a545d67707a838d96a0a49b92897f766d635a51473e352c2219100700000000000000000000131f2c3945525e6a74777777777777777b8895a2afa4988b7e77777777777777777777777777777777777064584c3f3226190c00000000000000000000000000000000000000131f2c3946525f6b7679797979797979797979797979797979797979797979797979797978777674726f6c6864605b554f49423a332b221a11070000000000000013202c3946535f6c798693a0acaca09386796c6565656565656565656565656565656565646362605e5c5955514d48433e38312a231b130b030000000000000000000006111b252e363c4042424855616e7a86939faca6998d8174685c4f434242424242424242424242424249535c6161605f5e5d5d5b5b59544c43392d22160a00000008141f2a343d454b4e4f5152535455565757535557595b5c5d5d5e5e5e5e5f5f5f5f626f7b8895a2afa6998c7f7265594c3f3226190c00000000000000000000000009131d262f3840484f565c61666b6f7376787a7c7e7f808181828282828283838383848996a2afa6998c7f7265594c3f3226190c000000000000000000000000000000000f1c2835424f5b6875828f9084776a5d5044372a1d110400000000000000000000000000000000000000000000060e161d242c32393f454a4f54585c606466696b6d6f7071727272727171706e6d6b6865625f5b57524d48423d373029221b130b030000000000000000000000000013202c3946535f6c798693a0acaca093867973737373737373737373737373737373737373737373737373737373737373737373737371675c4f43362a1d11040000000713202d3a4653606d798693a0adaca09386796c5f5346392c201306000000000000000000000d1a2633404d596673808c99a6a295887b6f6255493e3936343332323335383d45505c68758181807e7c7b79776d6154483b2e221508000007121d28323b42484b4b4a49484746454443424754616d7a8794a0a4988b7e7164584b42434445464748494a4b4b49443d352b21160b000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000013202c3946535f6c798693a0aca79a8d8173675a4d4034271a0f19222b343c444c545b62686f767d858c959da6ada3998f84796e63584c4035291d11050000131f2c3946525f6c7986929facac9f9286796c5f5346392d2013060000000a1723303d4a5663707c8996a3afa5988b7e7165584b3e3225180b0013202c3946535f6c798693a0aca79a8d8173675a4d555e68717b848e97a1a49b91887e756c635950473e342b22190f0600000000000000000013202c3946535f6c7984848484848484848996a2afa5988c8484848484848484848484848484848484807366594c403326190d00000000000000000000000000000000000000111e2a37434f5a646b6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6b6a69676563605c58544f4a443e37302921191008000000000000000013202c3946535f6c798693a0acaca09386796c5f5858585858585858585858585858585857565553514f4c4945413d38322d262019110a0200000000000000000000000009131c242b3033353945525e6a7783909ca8a99c9084786b5f53473c3535353535353535353537434f5b656d6e6d6c6b6a696867655e554a3e32261a0d0000010d1925303c464f575b5c5d5e6061626364635d544b4d4e4f50515151515152525255626f7c8995a2afa5988c7e7265594c3f3226190c000000000000000000000008121b242b3135383d444a50565b5f6366696c6e7071727374747575757575767676767b8895a2afa6998c7f7265594c3f3226190c000000000000000000000000000000000f1c2835424f5b6875828f9084776a5d5044372a1d11040000000000000000000000000000000000000000000000040b131a21272e34393f44484c5054575e6364646464646565656565646362605e5c5956534f4b46423d37312b251e18100901000000000000000000000000000013202c3946535f6c798693a0acaca0938680808080808080808080808080808080808080808080808080808080808080808080808080776b5e5144382b1e11050000000713202d3a4653606d798693a0adaca09386796c5f5346392c201306000000000000000000000c1926323f4c5865727e8b98a4a3968a7d716559504a454241403f3f404244484e57616d78848e8c8b8987867a6e6155483b2f2215080000010c16202931373c3e3f3e3d3c3a393837363b4854616e7b8894a1a5988b7e7265584c3f363738393a3b3c3d3e3f3d39332b23190f04000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000013202c3946535f6c798693a0aca79a8d8173675a4d4034271a17212b343d464e565e656c737a81888f969ea7aca49b91877d73685d52473b3024180c00000013202c3946535f6c7986939facac9f9285786c5f5246392c1f13060000000916232f3c4955626f7c8895a2afa5988b7e7165584b3e3225180b0013202c3946535f6c798693a0aca79a8d8173675a4d4c565f69727c858f98a2a39a91877e756b625950463d342b21180f06000000000000000013202c3946535f6c798690909090909090939ba6b2a89d94909090909090909090909090909090908c807366594c403326190d000000000000000000000000000000000000000e1a26323e48525a5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5e5c5b595653504c48433e39332c251e170f0700000000000000000013202c3946535f6c798693a0acaca09386796c5f534c4c4c4c4c4c4c4c4c4c4c4c4c4c4b4b4a48474543403d3935312c27211b150e070000000000000000000000000000010a12191f24272a36424f5b6773808c98a4aca094887c7064584c41362b282828282828282d3946525f6b777b7a79787776757470665b4e4235291c10000004101d2935414d586167696a6b6c6d6f70716f665b4f43414243444444454545454a5763707d8996a3b0a5988b7e7265584c3f3225190c00000000000000000000040f1a242d363d4244464748494a4f53575a5d5f6163656667676868686869696969696f7b8895a2afa6998c7f7265594c3f3226190c000000000000000000000000000000000f1c2835424f5b6875828f9084776a5d5044372a1d110400000000000000000000000000000000000000000000000001080f161c22282e33383c4044505c676f71717171716e6760585857565553514f4d4a46433f3b36312c26201a140d060000000000000000000000000000000013202c3946535f6c798693a0acaea2978e8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d84776b5e5144382b1e11050000000713202d3a4653606d798693a0a7a7a09386796c5f5346392c201306000000000000000000000b1824313e4a5763707c8995a1a5998d81766b625b55524f4d4c4c4c4d4e5054596069737e89959997968f83776b5f5246392d201407000000040e171f262b30323231302f2e2d2c2b2f3b4855626e7b8895a2a5998c7f7265594c3f332a2b2c2d2e2f313232312d282119110700000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000013202c3946535f6c798693a0aca79a8d8173675a4d4034271a1f29333d464f58606870777e858b9299a1a8aba39a92897f756b61564b40352a1f130700000013202c3946535f6c798693a0acac9f9285786b5f5245382c1f12050000000915222f3c4855626f7b8895a2aea5988b7e7165584b3e3225180b0013202c3946535f6c798693a0aca79a8d8173675a4d444d57606a737c869099a2a39990877e746b62584f463d332a21180e050000000000000013202c3946535f6c7986939d9d9d9d9d9d9fa4adb7afa69f9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d998c807366594c403326190d000000000000000000000000000000000000000a16212c3740484f525353535353535353535353535353535353535353535353535353535251504e4c4a4744403c37332d27211b140d050000000000000000000013202c3946535f6c798693a0acaca09386796c5f53463f3f3f3f3f3f3f3f3f3f3f3f3f3e3e3d3c3a383633302d2925201b16100a030000000000000000000000000000000000080e13181a26333f4b5764707c8894a0aca4988c8074695d52473d332b262322222428323d4955626e7a878786858483828176695d5043362a1d10000006121f2c3845515e6973757778797a7b7c7d786b5e52453936363738383838383f4c5865727e8b97a4b0a4978a7d7164574b3e3125180b000000000000000000000a15212b363f474e51525355565758595a595553555658595a5b5b5b5b5b5c5c5c5c626f7b8895a2afa6998c7f7265594c3f3226190c000000000000000000000000000000000f1c2835424f5b6875828f9084776a5d5044372a1d11040000000000000000000000000000000000000000000000000000040b11171d22272c303945525f6c787d7d7d7d7d79726a635c544d48474543403d3a37332f2a25201b150f0902000000000000000000000000000000000013202c3946535f6c798693a0acb3a9a09a9a9a9a9a9a9a9a9a9a9a9a9a9a9a9a9a9a9a9a9a9a9a9a9a9a9a9a9a9a9a9a9a9a9a9a9184776b5e5144382b1e11050000000713202d3a4653606d7986939a9a9a9a9386796c5f5346392c201306000000000000000000000916222f3b4854616d7985919da99e92887d746c66615e5c5a595959595b5d60656b727b858f9aa5a2968b7f73675b4f43362a1e110500000000050d141b2023252524232221201f222f3c4955626f7c8895a2a6998c807366594d4033261f2021222324252524211c170f080000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000013202c3946535f6c798693a0aca79a8d8173675a4d4034271c26313b454f58616a727a828990969da4aba8a199918980766d63594f453a2f24190e0200000013202c3946535f6c798693a0acac9f9285786b5f5245382c1f12050000000815222e3b4855616e7b8895a2aea5988b7e7165584b3e3225180b0013202c3946535f6c798693a0aca79a8d8173675a4d40454e58616a747d87909aa3a29990877d746a61584f453c332a20170e0500000000000013202c3946535f6c7986939a9a9a9a9a9a9ca2abb6ada49d9a9a9a9a9a9a9a9a9a9a9a9a9a9a9a998c807366594c403326190d0000000000000000000000000000000000000005101a252e373e434646464646464646464646464646464646464646464646464646464645444342403d3a3734302c27221c16100902000000000000000000000013202c3946535f6c798693a0acaca09386796c5f5346393232323232323232323232323231302f2e2c2a2724211d1914100a05000000000000000000000000000000000000000003080b17232f3b47535f6c78848f9ba7a99d91857a6f64594f453d3632302e2f30333a444e5a65717e8a93929190908d8174675b4f4235291c1000000613202c3946535f6c7982848586878889867a6d6155483d34312f2f2f303238434f5b6874818d9aa6aea295897c6f63564a3d3023170a000000000000000000020e1a26323d4851595e5f606162636566676660564b4a4b4c4d4e4e4e4f4f4f4f4f56626f7c8996a2afa5988c7e7265584c3f3226190c000000000000000000000000000000000f1c2835424f5b6875828f9084776a5d5044372a1d110400000000000000000000000000000000000000000000000000000000060c11161b202c3946525f6c79848a8a8a8a837c756d665f575049413a34312e2a27231e19140f09040000000000000000000000000000000000000013202c3946535f6c798693a0acacacaba7a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a69e9184776b5e5144382b1e11050000000713202d3a4653606d79868d8d8d8d8d8d86796c5f5346392c201306000000000000000000000713202c3845515d6975818c97a2a4998f867e77726e6a68676665656667696c70767c848d97a1a59b90857a6e62574b3f33271a0e02000000000003090f1417181817161514131623303c4956636f7c8996a2a69a8d8173675a4d4034271a131415161718181715110b05000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000013202c3946535f6c798693a0aca79a8d8173675a4d403427222d38434d57616a737c848c939aa1a8aca49d968f877f766d645b51473d33281e13080000000013202c3946535f6c798693a0acac9f9285786b5f5245382c1f12050000000815222e3b4855616e7b8895a2aea5988b7e7165584b3e3225180b0013202c3946535f6c798693a0aca79a8d8173675a4d403c464f58626b757e88919ba4a2998f867c736a61574e453c322920170d04000000000013202c3946535f6c79868e8e8e8e8e8e8e9099a5b1a79b928e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8c807366594c403326190d000000000000000000000000000000000000000009131c252c3237393939393939393939393939393939393939393939393939393939393938363533312e2b2824201b16110b050000000000000000000000000013202c3946535f6c798693a0acaca09386796c5f5346392c252525252525252525252525242422211f1d1b1814110d090400000000000000000000000000000000000000000000000007131f2b37434f5b67737e8a96a1ada2978b80756b61574f48423e3c3b3b3d3f444c55606b76828e9a9f9e9d95897d7164584c3f33261a0d000005121f2b3844515d6a76838f9192949596897d7165594e45403e3c3c3c3c3f434a55606c7884909ca9ac9f93867a6d6154483b2f22150900000000000000000004111e2a36424e59636a6c6d6e6f7071737471685c50443e4040414242424242424a5764707d8a96a3b0a5988b7e7265584b3f3225180c000000000000000000000000000000000f1c2835424f5b6875828f9084776a5d5044372a1d1104000000000000000000000000000000000000000000000000000000000000060b121e2b3844515d68727b848e97958e877f787069625b534c453d362f272019120e090400000000000000000000000000000000000000000013202c3946535f6c798693a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a09e9184776b5e5144382b1e11050000000b15202d3a4653606d798181818181818181796c5f5346392c2013060000000000000000000004101c2835414d5864707b86919ba4a1989089837e7a777573737272737476797c81878e969fa69d93897e74685d52463a2e22160a000000000000000003070a0c0c0b0a09080a1724303d4a5763707d8a96a3a79a8e8174675a4e4134281b0e0708090a0b0c0b08050000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000013202c3946535f6c798693a0aca79a8d8173675a4d40342728333f4a545f69737c858e969ea5aca8a19a938c847d756d645b52493f362b21170c010000000013202c3946525f6c7986929facac9f9285796c5f5246392c1f13060000000915222f3c4855626f7b8895a2aea5988b7e7165584b3e3225180b0013202c3946535f6c798693a0aca79a8d8173675a4d40343d475059636c768089929ca5a1988f857c736960574e443b32291f160d030000000013202c3946535f6c7981818181818181818995a2afa4988b8181818181818181818181818181818181807366594c403326190d0000000000000000000000000000000000000000010a131a21262a2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2b2a282624221f1b18140f0a0500000000000000000000000000000013202c3946535f6c798693a0a0a0a09386796c5f5346392c2019191919191919191919181817161413100e0b0805010000000000000000000000000000000000000000000000000000030f1b27333f4b56626e7985909ca7a89d92877d73696159534e4b494848494c50565e67717c87939eaaa89d9185796d6155483c3024170b000003101c2935424e5b6773808c989fa0a1998d81766b6057514d4a494848494b4f545c66717c8894a0aca89c9083776b5e5245392c20130700000000000000000006131f2c3945525e6b7578797b7c7d7e7f81786b5f5246393334343535353536404d5965727e8b98a4b0a3978a7d7164574b3e3124180b000000000000000000000000000000000f1c2835424f5b6875828f9084776a5d5044372a1d11040000000000000000000000000000000000000000000000000000000000000000101c2834404c566069727b858e9798918a827b746c655e564f484039322a231c140b0100000000000000000000000000000000000000000013202c3946535f6c79869393939393939393939393939393939393939393939393939393939393939393939393939393939393939184776b5e5144382b1e1105000007121d27313a45515e6972737373737373737372695d5145382c1f120600000000000000000000000c1824303c48535e69747e89929ba3a29a948e8a86848280807f7f80818385898d9299a0a49c948b81776d62574c41352a1e120600000000000000000000000000000000000b1724313e4a5764717d8a97a4a89b8e8174685b4e4235281b0f0200000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000013202c3946535f6c798693a0aca79a8d8173675a4d4034272e3945505b66707b858e97a0a8ada59e968f88817a736b635b524940372d241a0f050000000000121f2c3845525f6b7885929eabac9f9386796c5f5346392d2013060000000916232f3c4956626f7c8995a2afa5988b7e7165584b3e3225180b0013202c3946535f6c798693a0aca79a8d8173675a4d4034343e47515a646d77808a939da6a1978e857b726960564d443b31281f150c01000000121f2c3845515d6972747474747474747b8895a2afa4988b7e74747474747474747474747474747474746e63574b3e3225190c000000000000000000000000000000000000000000010910161a1e1f2020202020202020202020202020202020202020202020202020201f1e1d1c1a1815120f0c0803000000000000000000000000000000000013202c3946535f6c798693939393939386796c5f5346392c20130c0c0c0c0c0c0c0c0c0b0b0a0908060401000000000000000000000000000000000000000000000000000000000000000b17222e3a46515d68747f8a95a0aba3998f857b736b645f5a5756555556585c61687079838e99a4aea3978c8175695d5145392c2014080000000d1a26323f4b57636f7b88939faaaa9e92877c7269625c595756555556585b5f666e78838e99a5afa3978c8073675b4f42362a1d11040000000000000000000613202c3946525f6c78858687898a8b8c877a6e6255493e373432323233353a45505c6875818e9aa7aea195887c6f6256493d3023170a000000000000000000000000000000000f1c2835424f5b6875828f9084776a5d5044372a1d110400000000000000000000000000000000000000000000000000000000000000000c18242f3a444e576069737c858e979b948d857e776f686159524b443c352e261d130900000000000000000000000000000000000000000013202c3946535f6c79868686868686868686868686868686868686868686868686868686868686868686868686868686868686868684776b5e5144382b1e110500000c17232e39434c5357606667676767676767676660574c4135291c1004000000000000000000000008141f2b37424d58626d76808991989fa59f9a9693908e8d8c8c8c8c8d8f9295999ea4a099928a82796f655b50463b2f24190d0100000000000000000000000000000000000b1825313e4b5764717e8b98a4a89b8f8275685b4f4235291c0f0200000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000013202c3946535f6c798693a0aca79a8d8173675a4d403427323e4a56616c77828d97a0a9aba39b938c857d766f686159514940372e251b1208000000000000121e2b3845515e6b7784919eaaada093877a6d6054473a2e2114070000000a1724303d4a5763707d8a96a3b0a5988b7e7165584b3e3225180b0013202c3946535f6c798693a0aca79a8d8173675a4d40342c353f48525b656e78818b949da7a0978e847b72685f564d433a31271e1308000000101d2935414c5760666767676767676f7b8895a2afa4988b7e7167676767676767676767676767676767645c52473b2f23160a0000000000000000000000000000000000000000000000050a0e11131313131313131313131313131313131313131313131313131313131212100f0d0b090603000000000000000000000000000000000000000013202c3946535f6c798686868686868686796c5f5346392c201306000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000006121e2935404c57636e79848e99a3aba0978e857d756f6a67646261616365686c727a828b959faaa79c91867b6f64584c4034281c10040000000a16232f3b47535f6b77838e99a4aea4998e847b736d6966646262626264676b7178818a949faaa89d92877b6f63574b3f33261a0e0200000000000000000005111e2b3744505d6976828f94959698968a7e72665b504843403f3e3e3f41454c56616d7985919da9ab9f9286796d6054473b2e221508000000000000000000000000000000000f1c2835424f5b6875828f9084776a5d5044372a1d1104000000000000000000000000000000000000000000000000000000000000000007131e28323c454e57616a737c858f989e979089817a736b645d554e473f382f251a0f040000000000000000000000000000000000000000131f2c3946525f6b76797979797979797979797979797979797979797979797979797979797979797979797979797979797979797979756a5d5144372b1e110400000f1c2834404b555e636464646464625c5a5a5a59554e453b3024190d000000000000000000000000030f1a25313c46515b656e777f878d94999da1a29f9d9b9a999999999a9c9ea1a29e9a948e88817870675d53493f34291e13070000000000000000000000000000000000000c1825323f4b5865727e8b98a0a09c8f8275695c4f4336291c100300000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000013202c3946535f6c798693a0aca79a8d8173675a4d40342a36434f5b66727e89949ea9aba2999189817a736c655e564f473f372e251c130900000000000000111d2a3744505d6a7683909ca9aea194887b6e6155483b2f2215090000000c1825323e4b5864717e8b97a4b1a5988b7e7165584b3e3225180b0013202c3946535f6c798693a0aca79a8d8173675a4d4034272d364049535c666f78828b959ea8a0968d847a71685f554c43392f25190e0200000d1924303b454e565a5a5a5a5a5a626f7b8895a2afa4988b7e71645a5a5a5a5a5a5a5a5a5a5a5a5a5a5a58524a40352a1f1307000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000131f2c3946525f6b767979797979797979766b5f5246392c1f13060000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000010d18242f3b46515c67727c87919ba4a9a0978f87817b7673706f6e6e6f7174787d848c949da7a99f958b80756a5e53473c3024180c0000000007131f2b37434f5a66717d88929da6aaa0968d857e797572706f6f6f6f7173777c828a939ca6aba1978c81756a5e53473b2f23170a00000000000000000000020f1c2835414d5a66737f8b97a2a3a49a8e82776c6259534f4d4c4b4b4c4e51575e68727e8995a1ada79b8f83766a5e5145382c1f1306000000000000000000000000000000000f1c2835424f5b6875828f9084776a5d5044372a1d11040000000000000000000000000000000000000000000000000000000000000000010c17202a333c454e57616a737c868f98a19a938c847d766e676058514a41372c2115090000000000000000000000000000000000000000111e2a37434f5a646b6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6b63594d4135291c10030000121f2b3844505c676f71717171716e676058514d4a443c33291e160f0800000000000000000000000009141f2a353f49535c656d757c82888d9195989a9c9e9f9fa0a09f9e9d9b9996928e89837d766e665e554b42382d23180d020000000000000000000000000000000000000c1926323f4c5965727f8c93939393908376695d5043362a1d100300000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000013202c3946535f6c798693a0aca79a8d8173675a4d40342d3a46525f6b77838f9aa5aca29990877f777068615a534c453d352d251c130a0100000000000000101c2936424f5c6875828e9ba8afa296897c6f63564a3d3024170a0000010e1a2734404d5966737f8c99a5b2a5988b7e7165584b3e3225180b0013202c3946535f6c798693a0aca79a8d8173675a4d403427242e37414a545d667079838c969fa19f968d837a71675e554b41362a1f1306000008131f29333c444a4d4d4d4d4d55626f7b8895a2afa4988b7e7164574d4d4d4d4d4d4d4d4d4d4d4d4d4d4c4740382e24190e020000000000000000000000000000000000000000000104060708090a0a0a090806040100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000111e2a37434f5a646b6c6c6c6c6c6c6c6c6b645a4f43372a1e110500000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000007131e2a35404b56606b757f89929ba4a9a099928c8783807d7c7b7b7c7d8184898f969ea6a8a0978d83796e63584d42362b1f130800000000030f1b26323e4955606b76818b949da6a89f978f8a85817e7d7c7b7b7c7d8083888d949ca5aaa2998f857a6f64594e42362a1f130700000000000000000000000d1925323e4a56636f7b87929ea9ab9f94897e746b645f5c5a585858595a5d6268707a848f9aa6ada2968b7e73665a4e4235291d1004000000000000000000000000000000000f1c2835424f5b6875828f9084776a5d5044372a1d1104000000000000000000000000000000000000000000000000000000000000000000050e18212a333c464f58616a747d868f99a29d968f888079726a635c53483d3126190d01000000000000000000000000000000000000000e1a26323e48525a5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5e5951473c3125190d00000013202c3946535f6c797d7d7d7d7d79716a635b544d453e372f28211a120b0400000000000000000000030e18232d37414a535b636a71777c8185898b8e9091929293939291908e8c8986827d78726b645d544c433930261b1106000000000000000000000000000000000000000d1a2633404c5966738086868686868684776a5d5044372a1d110400000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000013202c3946535f6c798693a0aca79a8d8173675a4d4034303c4955626e7b87939faba59a90877d756d655e574f48413a332b231b130a0100000000000000000e1b2834414e5a6773808d99a6b0a4978b7e7165584b3f3226190d000004111d2a36424f5b6874818e9aa7b2a5988b7e7165584b3e3225180b0013202c3946535f6c798693a0aca79a8d8173675a4d4034271c252f38424b545e67717a848d94949494948c837970675d53473b2f2216090000020d17212a32393e404141414855626f7b8895a2afa4988b7e7164574b414141414141414141414141413f3c362f261c12080000000000000000000000000000000000000000050a0e1012141516161717161513110e0a0602000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000e1a26323e48525a5f5f5f5f5f5f5f5f5f5f5a52483e32261a0e02000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000020d18232e39444f59636d778089929aa1a8a49d98938f8c8a888888898a8d90959aa0a8a69f978e857b71675d52473c31251a0e0300000000000a16212d38444f5a646f79828c949ca3a9a19b95918e8b8a898888898a8c8f93999fa6a7a09890877d73695e53483c31251a0e0200000000000000000000000916222e3a46525e6a76818d98a2ada59a90867d75706b686665656565676a6e737a838c96a0aba79c91857a6e62564a3e3226190d01000000000000000000000000000000000f1c2835424f5b6875828f9084776a5d5044372a1d110400000000000000000000000000000000000000000000000000000000000000000000060f18212a343d464f58626b747d879099a0a099928b837c756d655a4e4235291c1003000000000000000000000000000000000000000a16212c3740484f525353535353535d666b6b6b6b6b6a655e575353535353535353535353565d646a6b6b6b6b6b675f545353535353524e473f352b20140900000013202c3946535f6c79848a8a8a8a837c746d665e575049413a332b241d150e070000000000000000000007111b252f384149515960666b7175797c7f8183848586868686858482807d7a76716c67605a524b423a31271e140a00000000000000000000000000000000000000000d192633404c596571797979797979797974695c5043362a1d100400000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000013202c3946535f6c798693a0aca79a8d8173675a4d4034323e4b5864717d8a96a3ab9f94887e746b635b534c453e37302821191109010000000000000000000d1926333f4c5865727e8b97a4b0a6998d8073675a4e4135291c1004020915212d3945525e6a7784909ca9b2a5988b7e7165584b3e3225180b0013202c3946535f6c798693a0aca79a8d8173675a4d4034271a1d263039424c555f68727b858888888888888882796f63574a3d3124170b000000060f1821282d323434343c4855626f7b8895a2afa4988b7e7164574b3e34343434343434343434343433302b241d140a00000000000000000000000000000000000000020a10161a1d1f2122232323232321201d1a17120e090300000000000000000000000000000000000000000000000000000000000000000000000000000000000000000a16212c3740484f525353535353535353524f4840372c21160a000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000007121d28323d47515b656e77808890979da3a8a39f9b98969595959597999ca0a5a7a29b948d857c73695f554b40352a1f140900000000000005101c27323d48525d677079828a91989ea2a6a19d9a98969595959597999b9fa4a6a19c968e867e756b61574c41362b20140900000000000000000000000006121e2a36424e5965707b86919ba4aca2988f87817b787573727171727376797e858c959ea8a99f958a8074695d52463a2e22160a00000000000000000000000000000000000f1c2835424f5b6875828f9084776a5d5044372a1d11040000000000000000000000000000000000000000000000000000000000000000000000060f18222b343d465059626b747e879093939393938e877f766a5d5144372a1e11040000000000000000000000000000000000000005101a252e373e4346464646464956626e7778787878767069625c554f48464646464c535a61676e7578787878787065584c4646464645423d362d23190e03000000121f2b3845515d68727b858e97958e867f777069625a534c443d362e272018110a0100000000000000000009131d262f373f474e545a6065696d7072747677787979797978777573706d6a65615b554f48413930281f150c0200000000000000000000000000000000000000000b1824313d495560686c6c6c6c6c6c6c6c6a62584c4034281b0f0200000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000013202c3946535f6c798693a0aca79a8d8173675a4d4034333f4c5966727f8c98a5a89c8f83776c62595149423a332c251e170f0700000000000000000000000b1724313d4a56636f7c8895a1aea89b8f82766a5d5145382c20140e0f111a25313d4955616e7a86939facb2a5988b7e7165584b3e3225180b0013202c3946535f6c798693a0aca79a8d8173675a4d4034271a141e27303a434d566069737b7b7b7b7b7b7b7b7b7a7064574a3e3124180b00000000060f161d222527272f3c4855626f7b8895a2afa4988b7e7164574b3e31272727272727272727272726241f19130b02000000000000000000000000000000000000030c141b2126292c2d2f2f3030302f2e2c2a26231e19140e080100000000000000000000000000000000000000000000000000000000000000000000000000000000000005101a252e373e4346464646464646464646433e372e251a10050000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000b16212b353f49535c656e767e858c92989ca1a4a7a5a3a2a2a2a2a3a6a7a4a09b96908a837b726a61574d43392f24190e03000000000000000b16212c36414b555e67707880868c92979a9ea1a3a4a3a2a2a2a2a3a5a3a19e9a96918b847c746b62594f453b30251a0f03000000000000000000000000020e1a25313d48545f6a747f89929ba4aaa199928c888482807e7e7e7e8082868a90969ea7a8a0978d83796e63584c4135291e120600000000000000000000000000000000000f1c2835424f5b6875828f9084776a5d5044372a1d1104000000000000000000000000000000000000000000000000000000000000000000000000061019222b343e475059626b757e868686868686868684776a5d5144372a1e1104000000000000000000000000000000000000000009131c252c3237393939393d4a5763707d85858585817a746d67605a534d464950575e656b72798085858585807366594c403939393936322b241b110700000000101c2935414c576069727c858e97989189827b736c655d564f484039322a231c130a010000000000000000010b141d252d353c43494f54595d60636668696b6b6c6c6c6c6b6a686664615d5955504a443d362f271e160d030000000000000000000000000000000000000000000915212d38434e575d5f5f5f5f5f5f5f5f5e5950463b3024180c0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000013202c3946535f6c798693a0aca79a8d8173675a4d403433404c596673808c99a6a69a8d8174675b50473f373029221a130c050000000000000000000000000915222e3b4754606d7986929eabab9e9285796d6154483d31251d1b1b1d222c36424d5965717d8a96a2afb2a5988b7e7165584b3e3225180b0013202c3946535f6c798693a0aca79a8d8173675a4d4034271a0d151e28313b444e57616a6e6e6e6e6e6e6e6e6e6e695f54483c2f23160a0000000000040b1116191a222f3c4855626f7b8895a2afa4988b7e7164574b3e31241a1a1a1a1a1a1a1a1a1a1a17130e0905010000000000000000000000000000000000010b151e262d3236383a3b3c3d3d3d3c3b3936332f2a251f19120b0400000000000000000000000000000000000000000000000000000000000000000000000000000000000009131c252c32373939393939393939393937322c251c130900000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000040f19232d37414a535c646c737a81878c9094989a9c9e9f9f9f9f9e9c9a9794908b857f78716960574e453b31271d12070000000000000000040f1a252f39434c555e666e757b81868a8e91949698999a9a9a9a99989694918e8a858079726a625950473d33291e140900000000000000000000000000000915202c37424d58636d7781899299a0a6a39d9894908e8c8b8b8b8c8d8f92969ba1a8a59e968e857b71675c52463b3024190d0100000000000000000000000000000000000f1c2835424f5b6875828f9084776a5d5044372a1d110400000000000000000000000000000000000000000000000000000000000000000000000000071019222c353e475059636c7579797979797979797975695d5044372a1d11040000000000000000000000000000000000000000010a131a21262a2c2c2c303d4956626e79828b92928c857f78726b655e5851545b62696f767d848b92928d847a7165584c3f322c2c2c2a26201a120900000000000c1824303a454e57606a737c858e989b948c857e766f686159524b433c352d251c1308000000000000000000020b131b232b32383e43484d515457595b5d5e5f5f5f5f5f5e5d5c5a5755514d49443f39332c241d150c040000000000000000000000000000000000000000000004101c27323c454c515353535353535353524e473e352a1f14080000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000013202c3946535f6c798693a0aca79a8d8173675a4d403433404c5966737f8c99a5a79a8d8174685c524940372e261d140b020000000000000000000000000006131f2c3845515d6a76838f9ba7aea195897d7165594d42372e2928282a2e343e48535e6a76828e9aa6b2b2a5988b7e7165584b3e3225180b0013202c3946535f6c798693a0aca79a8d8173675a4d4034271a0d0c161f29323c454f585e616161616161616161615e574d43372b1f13070000000000000005090c15222f3c4855626f7b8895a2afa4988b7e7164574b3e3124180e0e0e0e0e141a1d20201f1d1915110d090501000000000000000000000000000008131d2730383e4245474849494a4a494745423f3b36302b241d160e060000000000000000000000000000000000000000000000000000000000000000000000000000000000010a131a21262a2c2c2c2c2c2c2c2c2c2c2a26211a130a01000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000007121b252f38414a525a62696f757b8084888b8e90919292929291908d8b88847f7a746d665f574e453c332a20150b0100000000000000000008131d27313a434c545c636a70757a7e8285878a8b8c8d8d8e8d8c8b8a8885827e79746e67605950473e352b21170d020000000000000000000000000000040f1b26313c46515b656e7780888f959ba0a4a4a09d9b9998989898999b9ea2a7a39f99938c847c73695f554b40352a1f130800000000000000000000000000000004080b0f1c2835424f5b6875828f9084776a5d5044372a1d110b0905000000000000000000000000000000000000000000000000000000000000000000000000071019232c353e47515a636b6c6c6c6c6c6c6c6c6c6a63584d4135281c0f03000000000000000000000000000000000000000000010910161a1e1f20212e3a46525d677079828b9497908a837d767069625c5f666c737a81888f96978e857b72685f54483c3024201f1d1a150f0800000000000008131e29333c454e57616a737c868f989e979088817a726b645c554e463f372e241a0f040000000000000000000109111920272d32383c4044474a4d4f5051525353535252514f4d4b4845413d38332e28211a130b030000000000000000000000000000000000000000000000000b15202a333a4145464646464646464645423c352c23180e020000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000013202c3946535f6c798693a0aca79a8d8173675a4d4034323e4b5864717d8a97a3a99c9084786e645b524940382f261d140b0100000000000000000000000004101c2935424e5a66737f8b97a3afa5998d81756a5e53494039363435363a3f464f5a646f7b87929eaab6b2a5988b7e7165584b3e3225180b0013202c3946535f6c798693a0aca79a8d8173675a4d4034271a0d040d17202a333d464d5254545454545454545454524c453b31261b0f030000000000000000000915222f3c4855626f7b8895a2afa4988b7e7164574b3e3124180b000710181f252a2c2d2c2925211d1915110d09050000000000000000000000020e19242f3942494e515355565656565554524f4b47423c362f28201810070000000000000000000000000000000000000000000000000000000000000000000000000000000000010910161a1e1f20202020202020201f1e1a16100901000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000a131d262f38404850575e646a6f74787c7e818384858686858483817e7b77736e69625c554d453c332a21180e0400000000000000000000010b15202a333c424a51585f646a6e7276787b7d7e8081818181807e7d7b7875726d68635d564e473e352c23190f050000000000000000000000000000000009141f2a353f49535c656e767d848a8f94989b9ea0a2a3a4a4a4a4a3a2a09e9b97938e88827a726a61574d43392e24190d0200000000000000000000000000030a101417191c2835424f5b6875828f9084776a5d5044372a1d191815110b04000000000000000000000000000000000000000000000000000000000000000000000007111a232c353f4851595e5f5f5f5f5f5f5f5f5f5e5951473c3025190c000000000000000000000000000000000000000000000000050a0e1113131e2a35414b555e677079828c959b958e88817a746d676a70777e858c9399988e857c726960564d43382c201413110e090400000000000000020d17212a333c454f58616a737d868f98a19a938b847d756e676058514940362c2015090000000000000000000000070e151c21272c3034383b3e404243454546464646454443413e3c3935312d28221c160f080100000000000000000000000000000000000000000000000000040e18212930353839393939393939393936312b231a1107000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000013202c3946535f6c798693a0aca79a8d8173675a4d4034303d4956626e7b87939faaa1958a80766d645b524a41382f261d1309000000000000000000000000000d1926323e4a57636f7b87939faba99e92867b70655b524a4542414243464a5058616b76818c97a1a6aeb2a5988b7e7165584b3e3225180b0013202c3946535f6c798693a0aca79a8d8173675a4d4034271a0d01050e18212b343c42464848484848484848484746413b33291f150a000000000000000000000915222f3c4855626f7b8895a2afa4988b7e7164574b3e3124180b050f19222a3136393a3935312d2925211d1915100a0300000000000000000006131f2a36414b545a5e60616263636362615e5b57524d474039322a22191007000000000000000000000000000000000000000000000000000000000000000000000000000000000000050a0e1113131313131313131313110e0a05000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000010b141d262e363e454c53595f64686c6f7274767878797978787674726f6b67625d57514a433b332a21180f060000000000000000000000030f1b26323c454d53565656595e6266696c6e707273737474737372706e6c6966615d57524b443d352c231a11070000000000000000000000000000000000030e18232d37414a535c646b72797e84888c8f9193959697979897969594918f8b87827d77706860574e453c32271d120700000000000000000000000000050e151b202426262835424f5b6875828f9084776a5d5044372a262624211c160f07000000000000000000000000000000000000000000000000000000000000000000000008111a232d363f474e52535353535353535353524e473f352a1f140800000000000000000000000000000000000000000000000000000205060d19242f39434c555e677079838c959e99938c867f7872747b828990979d988f867c736a60574e443b31261b1006040200000000000000000000050f18212a333d464f58616b747d879099a29d968f878079716a635b52483d3125190d000000000000000000000000040a10161b2024282c2f3133353738393939393938373634322f2c2925211c17110b0500000000000000000000000000000000000000000000000000000000060f171e24292b2c2c2c2c2c2c2c2c2c2a262019110800000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000013202c3946535f6c798693a0aca79a8d8173675a4d40342d3a46525e6a76828e99a4a69c92887f766d645c534a41382f251b11060000000000000000000000000a16222e3a47535f6b76828e9aa5aea3978c81776d645c56514f4e4e5052565b626a737d889294959ca6b1a5988b7e7165584b3e3225180b0013202c3946535f6c798693a0aca79a8d8173675a4d4034271a0d0100060f19222a31363a3b3b3b3b3b3b3b3b3b3b3936302921170d03000000000000000000000915222f3c4855626f7b8895a2afa4988b7e7164574b3e3124180b0c17212b343c42464745413d3935312d2926211c150d0400000000000000000916222f3b47525d666a6c6e6f7070706f6d6b67635e58524b443c342b22191006000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000020b141c242c343b42484e53585c606366686a6b6c6c6c6c6b6a6865635f5b57524c463f38312921180f060000000000000000000000000713202c38434e575f6363636363605a5d5f626365666767676766656462626362605d59534d463e352c22180e0400000000000000000000000000000000000007111b252f38414a525a61676d73777c7f82858788898a8b8b8a8a898785827f7b77716c655e564e453c332a20150b00000000000000000000000000050e1720272c3033333335424f5b6875828f9084776a5d504437333333312d2721191006000000000000000000000000000000000000000000000000000000000000000000000008111b242d363d424546464646464646464645423d352d23190e03000000000000000000000000000000000000000000000000000000000008131d27313a434c555e67707a838c959e9e97908a837d7f868d949ba19990867d736a61574e453c32291f150a0000000000000000000000000000060f18212b343d464f59626b747d879099a0a099928a837c746d64594d4135281c0f0000000000000000000000000000050a0f14181c1f222527292a2b2c2c2c2c2c2c2b29282523201d1915100b0600000000000000000000000000000000000000000000000000000000000000050d13181c1f20202020202020201f1d1a150e070000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000013202c3946535f6c798693a0aca79a8d8173675a4d40342a36424e5a66717c87929ca6a49a91887f766e655c534a41372d22180d02000000000000000000000006121e2a36424e5a66727d89949faaa99e93897f766e67615e5c5b5b5c5e62676d747c868f92888a95a1aea5988b7e7165584b3e3225180b0013202c3946535f6c798693a0aca79a8d8173675a4d4034271a0d0100000710181f252a2d2e2e2e2e2e2e2e2e2e2e2d2a251e170f0500000000000000000000000915222f3c4855626f7b8895a2aea4988b7e7164584b3e3225180b121d28333d464d5253514d4946423e3a36322d271f160d03000000000000000b1824313e4a57636f77797b7c7c7d7d7b7a77736f69635d564e463d342b22180f05000000000000000000000000000000000000000000000000000000000000000004070808080808080808080807040000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000020a131a222930373c42474c505357595b5d5e5f5f5f5f5e5d5b5956534f4b46413b352e271f170f06000000000000000000000000000916232f3c48545f6a6f6f6f6f6f6b615653555758595a5a5a5c61666a6d6f6f6f6d69645e5750473e342a20150a0000000000000000000000000000000000000009131d262f3840484f565c62676b6f7376787a7b7d7d7e7e7d7d7c7a7876736f6b66605a534c443c332a21180e04000000000000000000000000010c17202931383d3f404040424f5b6875828f9084776a5d50444040403f3d39322b22180e03000000000000000000000000000000000000000000000000000000000000000000000009121b242b3236393939393939393939393936312b231b1107000000000000000000000000000000000000000000000000000000000000010b151f28313a434c555e68717a838c959ea29b958e888a91989ea39a90877e746b62584f463c332a20170d03000000000000000000000000000000060f19222b343d475059626b757e879093939393938e867f76695d5043372a1d100000000000000000000000000000000004080c101316181a1c1d1e1f2020201f1f1e1d1b191614100d09040000000000000000000000000000000000000000000000000000000000000000000002080c1012131313131313131313110e0903000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000013202c3946535f6c798693a0aca79a8d8173675a4d403427323e4954606b75808a949da6a39a918980776e655c53493f342a1f14090000000000000000000000020e1a26323e4955616c77838e99a3ada59b91888078726d6a686768696b6e72787e868e978c818794a0ada5988b7e7165584b3e3225180b0013202c3946535f6c798693a0aca79a8d8173675a4d4034271a0d01000000060e141a1e2021212121212121212121201d19130d050000000000000000000000000815222e3b4854616e7b8794a1ada5988c7e7265594c3f33261a1618222e3a454f585e605d5a56524e4a46423e3831281f150a000000000000000b1825323e4b5865717e868889898a89888683807a756e6760584f463d342a21170d020000000000000000000000000000000000000000000000000000000000060c10131515151515151515151513100c0600000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000010910171f252b31363b4044474a4d4f50515252525251504f4c4a47433f3a353029231c150d0500000000000000000000000000000b1724313d4a5764707b7c7c7c7c7266594c494a4b4f555c62686d72777a7c7c7b79757069615950463c32271c1105000000000000000000000000000000000000010b141d262e363d454b51565b5f6366696c6d6f7071717171706f6e6c6966635f5a554f49423a332a21180f060000000000000000000000000007131e29323b43494c4c4c4c4c4f5b6875828f9084776a5d504c4c4c4c4c49443c342a1f140900000000000000000000000000000000000000000000000000000000000000000000000009121a20262a2c2c2c2c2c2c2c2c2c2c2c2a26201911090000000000000000000000000000000000000000000000000000000000000000030d161f28313a434c565f68717a838c969fa6a09994959ca2a49a91887e756b625950463d342a21180e050000000000000000000000000000000000071019222b353e475059626c757e868686868686868684776a5d5044372a1d11000000000000000000000000000000000000000307090c0e0f111212131313131211100e0c0a070401000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000013202c3946535f6c798693a0aca79a8d8173675a4d4034272d38434e59646e78828b949ca4a39b928981776e645b50463b30251a0f0300000000000000000000000a15212d39444f5b66717c87919ba5ada39a928a837e7a7775747575777a7e8389909890857a8794a1aea5988b7e7165584b3e3225180b0013202c3946535f6c798693a0aca79a8d8173675a4d4034271a0d010000000003090e11141515151515151515151514110d0802000000000000000000000000000714212d3a4753606d7986939faca69a8d8174675b4e42352924232429333f4b56616a6d6a66625e5a56524e49433a31271c10050000000000000b1825323e4b5865717e8b94959696969593908b868079726a61584f463c33291e140a000000000000000000000000000000000000000000000000000000020a11181c2021222222222222222221201c18110a0200000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000060d141a20262b2f34373b3e4042444545464646454442403d3a37332e2a241e18110a030000000000000000000000000000000a1724303d4a5663707c8989898175685c50494e545a60676d73787e838689898885817b736b62584e43382d22160b00000000000000000000000000000000000000020c1824303b454f565b5c5c5c5c5c5d5f616263646464646362615f5d5c5c5c5c5c5a544b41362b1f130700000000000000000000000000000c18242f3a444d545859595959595b6875828f9084776a5d595959595959554e463c31251a0e02000000000000000000000000000000000000000000000000000000000000000000000000080f151a1d1f2020202020202020201f1d1a150f0700000000000000000000000000000000000000000000000000000000000000000000040d161f28313a434d565f68717a848d969fa0a0a0a0a0a09b92887f756c635950473e342b22180f0600000000000000000000000000000000000000071019232c353e47505a636c7579797979797979797974695c5043362a1d100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000002050707070707070707070705020000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000013202c3946535f6c798693a0aca79a8d8173675a4d40342727323d48525c667079828a929ba4a49b938a80766c62584d42372b201409000000000000000000000005101c28333e4a55606a758089939ca5aca39c958f8a86838281818284878a8f949b92887e7a8794a1aea5988b7e7165584b3e3225180b0013202c3946535f6c798693a0aca79a8d8173675a4d4034271a0d010000000000000205070808080808080808080807050100000000000000000000000000000006131f2c3945525e6b7884919daaa89c8f83766a5e52463b34313030343b45505b67737a76726e6a66625e5a554d43382d2115090000000000000b1825323e4b5865717e8b98a2a3a3a3a29f9c97918b847c736a61584e453a30261b110600000000000000000000000000000000000000000000000000020b141c23282c2e2e2e2e2e2e2e2e2e2e2c28231c140b020000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000002090f141a1f23282b2e31333537383939393938373533312e2b27231e19130d0700000000000000000000000000000000000916222f3c4855616e7b87949185786d6158565a5f656c72787e848a8f93959695928c857d746a60554a3e33271c1004000000000000000000000000000000000000000f1c2834404c57616769696969696969686258575757575c646869696969696969655d53473c2f23170a0000000000000000000000000000101c2935404c565f656666666666666875828f9084776a6666666666666560584d42362a1e11050000000000000000000000000000000000000000000000000000000000000000000000000004090e111313131313131313131313110e0904000000000000000000000000000000000000000000000000000000000000000000000000040d161f28313a444d565f68717a848d93939393939393928980766d635a51473e352c2219100600000000000000000000000000000000000000000007101a232c353e48515a636b6c6c6c6c6c6c6c6c6c6a62584c4034281b0f0000000000000000000000000000000000000000000000000000000000000000000000000000000406070707070707070502000000000000000000000000000000000000000000000000000000040a0e1113141414141414141413120e0a04000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000013202c3946535f6c798693a0aca79a8d8173675a4d403427202b36404a545e6770788189929ba4a59c92897e74695e53483c3125190e0200000000000000000000000b16222d38434e59636d77818a939aa2a8a6a09a9692908e8e8e8f9193969b9a928980767b8894a1aea5988b7e7165584b3e3225180b0013202c3946535f6c798693a0aca79a8d8173675a4d4034271a0d010000000000000000000000000000000000000000000000000000000000000000000000000004111d2a3743505c6975828e9ba7ab9f92867a6e62574d45403d3c3d40454d57616c7883827e7a76726e6a665f55493e3225190d0000000000000b1825323e4b5865717e8b989a9a9b9da1a5a8a39c958e857c736a60564c42382d22180d020000000000000000000000000000000000000000000000000a141d262e34383b3b3b3b3b3b3b3b3b3b38342e261d140a00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000003090e13171b1f222527292a2b2c2c2c2c2b2a292724221e1b17120d08020000000000000000000000000000000000000714202d3a46535f6c79859295897e73696463656b71777d838a8f959a9fa2a3a19d978f867c71665b4f44382c20140800000000000000000000000000000000000000111e2b3744505d697375757575757575746a5e524b4b56626d75757575757575756f64584b3f3225190c0000000000000000000000000000121f2b3844515d68717373737373737375828f90847773737373737373726a5e52463a2d201407000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000040d161f28323b444d565f68717b84868686868686868680766d645b51483f352c23191007000000000000000000000000000000000000000000000008111a232c363f4851595e5f5f5f5f5f5f5f5f5f5e5950463b3024180c00000000000000000000000000000000000000000000000000000000000000000000000001070c101314141414141413110e0903000000000000000000000000000000000000000000000000070f151a1e202020202020202020201e1a150f080000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000013202c3946535f6c798693a0aca79a8d8173675a4d4034271a242e38424c555e666e778089929ba5a49a90867b7064594d42362a1e1206000000000000000000000005111c27323c47515c656f78818990979ca1a5a6a29f9d9b9b9b9c9d9f9c968f8880776e7b8894a1aea5988b7e7165584b3e3225180b0013202c3946535f6c798693a0aca79a8d8173675a4d4034271a0d0100000000000000000000000000000000000000000000000000000000000000000000000000010f1b2834414d5a66727e8b97a3aea2968a7f73695f56504c4a49494c51575f68737d898e8a86827e7a7671665a4e4134281b0e0200000000000b1825323e4b5865717e8b8e8e8e8f9195999fa5a7a0978f867c72685e54493f34291e1308000000000000000000000000000000000000000000000006111c262f383f4548484848484848484848453f382f261c11060000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000002070b0f1316181a1c1e1f1f20201f1f1e1c1a1815120f0b0601000000000000000000000000000000000000000005121e2b3844515d6a76838f9a8f857b74717072767c82888e959ba1a5a1a0a0a1a4a1988e83776c6054493d3024180c00000000000000000000000000000000000000121e2b3845515e6b7882828282828282796d6053464a5764717d828282828282807366594c403326190d000000000000000000000000000013202c3946535f6c798080808080808080828f908480808080808080807b6e6154483b2e21150800000000000000000000000000000000000000000000000000000000010406090b0d0f10111213131313121211100e0c0a080502000000000000000000000000000000000000000000000000000000000000000000000000000000000000040d162029323b444d565f6972797979797979797979776e655b52493f362d231a11070000000000000000000000000000000000000000000000000008111a242d363f484e52535353535353535353524e473e352a1f14080000000000000000000000000000000000000000000000000000000000000000000000040c13181d20212121212121201e1a140e060000000000000000000000000000000000000000000008111920262a2d2d2d2d2d2d2d2d2d2d2a26211a120900000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000013202c3946535f6c798693a0aca79a8d8173675a4d4134271a1c26303a434c545d656d768089939ea9a2978c81756a5e52463a2e2216090000000000000000000000000a15202b35404a535d666f777e858b9195999b9d9e9f9f9e9d9b9895908b857e766e6e7b8895a2aea5988b7e7165584b3e3225180b0013202c3946535f6c798693a0aca79a8d8173675a4d4034271a0d0100000000000000000000000000000000000000000000000000000000000000000000000000000c1925313e4a56636f7b87939faba79b90857a7168615c59575656585c6269717a858f9a96928e8a868175685b4f4235281c0f0200000000000b1825323e4b5865717e828181818285898e949ba2a9a1988e847a70665b50453b3024190e03000000000000000000000000000000000000000000000b17222d38424a5154555555555555555554514a42382d22170b000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000306090c0e0f11121313131312110f0e0b090602000000000000000000000000000000000000000000000003101c2935424e5a6773808c98978e86807d7c7e82878d9399a0a49e9995939395989d9f94897d7165594d4134281c0f03000000000000000000000000000000000000121e2b3845515e6b78858f8f8f8f8f86796d6053464a5764717d8a8f8f8f8f8c807366594c403326190d0000000000000000000000000000121f2c3845515d69747f8a8c8c8c8c8c8c8d94958d8c8c8c8c8c8c8c81756a5f53463a2d201407000000000000000000000000000000000000000000000000000206090d101315181a1b1d1e1f1f2020201f1e1e1c1b191714120f0b080400000000000000000000000000000000000000000000000000000000000000000000000000000000040e172029323b444e5760686c6c6c6c6c6c6c6c6c6b655c534940372d241b110800000000000000000000000000000000000000000000000000000008121b242d363d424546464646464646464645423c352c23180e0200000000000000000000000000000000000000000000000000000000000000000000040d161d24292c2e2e2e2e2e2e2d2a251f181007000000000000000000000000000000000000000007111a232b3236393a3a3a3a3a3a3a3a3937322b241b1107000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000013202c3946525f6c7986929faca79a8e8174675b4e4135281b141e28313a424b535b646e77828c97a2a99e92867a6f63564a3e3225190c000000000000000000000000040f19232e38414b545d656c747a8085898c8f9192929291908e8c8884807a736c646e7b8895a2aea5988b7e7165584b3e3225180b0013202c3946535f6c798693a0aca79a8d8173675a4d4034271a0d0100000000000000000000000000000000000000000000000000000000000000000000000000000916222e3a47535f6b77828e9aa5ada1978c837a736d686563636365686d737b838c96a1a29e9a94897d7165594d4034271b0e0100000000000b1824313e4a57636f777675747475787d82899099a1aaa0968c82776d62574c41362a1f1408000000000000000000000000000000000000000000000f1b27333f4a545c616161616161616161615c544a3f33271b0f0300000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000d1926323f4b57636f7b88939f97918c8a898b8e93989ea59f99938d898686888c929a998d8175695d5044382b1f1306000000000000000000000000000000000000121e2b3845515e6b7885929c9c9c9386796d6053464a5764717d8a979c9c998c807366594c403326190d0000000000000000000000000000101c2935414c57636e79848f9999999999999d9e9a999999999991867a6f64594e42362a1e1205000000000000000000000000000000000000000000000004090e1216191c1f222426282a2b2c2c2c2c2c2c2b2a29272623211e1b1814100b07020000000000000000000000000000000000000000000000000000000000000000000000000000050e172029323c454e565d5f5f5f5f5f5f5f5f5f5f5b534a41372e251b1209000000000000000000000000000000000000000000000000000000000009121b242b3236393939393939393939393936312b231a110700000000000000000000000000000000000000000000000000000000000000000000020c161f282f35393a3a3a3a3a3a3936312a22190f05000000000000000000000000000000000000020d18232c353d4246474747474747474746433d362d23190e03000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000050a0d0f0f0f0f0f0f0d0a05000000000000000000000000000000000000000000000000000000050a0d0f0f0f0f0f0f0d0a050000000000000000000000000000000000000004080b0c0d0d0d0d0c0a0602000000000000121f2c3845525e6b7885919eaba89c8f8275695c4f43362a1d11161f2830394149525c66707b86919da9a3978b7e73665a4d4135281c0f0200000000000000000000000007121c262f39424b535b62696f74797d8082848586858584827f7c78746e6861616e7b8895a2aea5988b7e7165584b3e3225180b0013202c3946535f6c798693a0a0a09a8d8173675a4d4034271a0d01000000000000000000000000000000000000000000000000000000000000000000000000000006121e2a36424e5a66727d88939ea8a89e958c847d787472706f6f7174787e858d959ea8ada3998e83776c6054483c3024180c0000000000000916222f3b47525d666a69686767696c71777e878f98a2a89e94897e73685d52473c3025190e03000000000000000000000000000000000000000000121e2b37434f5b666d6e6e6e6e6e6e6e6e6d665b4f43372b1e1205000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000205080b0d0f101112121211100f0d0b0805020000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000a16232f3b47535f6b77828e99a29d999796979a9ea4a09a948e87827c79797c8188919b9185796c6053473b2e221509000000000000000000000000000000000000121e2b3845515e6b7885929ea9a09386796d6053464a5764717d8a97a4a6998c807366594c403326190d00000000000000000000000000000d1924303b46515c68737e8995a0a6a6a6a6a9aaa6a6a6a6a1968b8074695e53483c31261a0e02000000000000000000000000000000000000000000050b10151a1e2225292c2e31333536373839393939393837363432302d2a2724201c17130d080200000000000000000000000000000000000000000000000000000000000000000000000000050e17202a333c444c51535353535353535353524f4941382f251c13090000000000000000000000000000000000000000000000000000000000000009121a21262a2c2c2c2c2c2c2c2c2c2c2c2a2620191108000000000000000000000000000000000000000000000000000000000000000000000008131e28313a404547474747474746423c342b21160b00000000000000000000000000000000000007131f2a343e474e525353535353535353534e483f352a1f140800000000000000000000000000000000000000000000000000000000000000000000000000000000000000040b11161a1c1c1c1c1c1c1a16110b040000000000000000000000000000000000000000000000040b11161a1c1c1c1c1c1c1a16110b04000000000000000000000000000000030a10141719191919191816120d070000000000111e2b3744515d6a7783909da9aa9d9084776b5e5245392c20140d161e272f37404a545e6975818d99a6a79b8f8276695d5043372a1e1104000000000000000000000000000a141d273038414950575e63686d7073767778797878777573706c68635d57616e7b8895a2aea5988b7e7165584b3e3225180b0013202c3946535f6c798693939393938d8173675a4d4034271a0d010000000000000000000000000000000000000000000000000000000000000000000000000000020e1a26323e4955606c77828c96a0a9a79e968f8984817e7d7c7c7e81848a90979fa8ada49b91877c71665b4f44382c20140800000000000006131f2a36414b545b5d5c5b5a5b5c60666d757d86909aa4a59b90857a6f63584d41362b1f140800000000000000000000000000000000000000000013202c3946525f6c777b7b7b7b7b7b7b7b776c5f5246392c2013060000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001060a0e1215181a1c1d1e1e1e1e1e1d1b1a1714110e0a050000000000000000000000000000000000000000000000000000000000000000000000000000000000000007131f2b37434f5a66717c87919ba3a5a3a3a4a6a19b958f89827c76716d6d70767f899495887c6f63564a3d3124180b000000000000000000000000000000000000121e2b3845515e6b7885929eaba09386796d6053464a5764717d8a97a4a6998c807366594c403326190d000000000000000000000000000008131e2a35404b56626d78838f9aa5b0b3b3b5b5b3b3b1a69b9085796e63584d41362b2015090000000000000000000000000000000000000000050b11161c21252a2e3235383b3d40414344454646464645454442413f3c3a3734302c28231e19130e0801000000000000000000000000000000000000000000000000000000000000000000000000050e17212a323a404446464646464646464646433e372f261d130a010000000000000000000000000000000000000000000000000000000000000000080f151a1e1f2020202020202020201f1d1a150e070000000000000000000000000000000000000000000000000000000000000000000000020e1925303a434b51545454545454524d463d33281d110500000000000000000000000000000000000b1824303b4650595f60606060606060605f5951473c3024180c000000000000000000000000000000000000000000000000000000000000000000000000000000000000050e161c222628292929292826221c160e05000000000000000000000000000000000000000000050e161c222628292929292826221c160e0500000000000000000000000000050e151b2024262626262625221e18120a01000000101d2936424f5c6875828e9ba7ac9f93867a6d6155483c30251a1513151d252e38424d5865717d8a97a3aa9e9184786b5e5245382c1f120600000000000000000000000000020b151e262f373f464c52585c616467696b6b6c6c6b6a686663605c575255616e7b8895a2aea5988b7e7165584b3e3225180b0013202c3946535f6c79868686868686868173675a4d4034271a0d010000000000000000000000000000000000000000000000000000000000000000000000000000000a16212d38444f5a65707a858e97a0a7a8a19a95908d8b8a89898a8d90959ba1a9aaa39b928980756b60554a3e33271c1004000000000000020e19252f39424a4f51504e4e4e50545b636b747e88929da7a1968b8075695e53473c3025190d02000000000000000000000000000000000000000013202c3946535f6c798688888888888886796c5f5346392c201306000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001070d12161a1e212426282a2b2b2b2b2b29282624211e1a16110c060100000000000000000000000000000000000000000000000000000000000000000000000000000000030f1b26323e4955606a757f8991989d9f9f9e9a95908a847d77716b656060646d78838f978b7e7265584c3f33261a0d000000000000000000000000000000000000121e2b3845515e6b7885929ea0a09386796d6053464a5764717d8a97a0a0998c807366594c403326190d0000000000000000000000000000020d18242f3a45505c67727d89949faab5c0c1c2c0b7aba0958a7e73685d52473b30251a0f03000000000000000000000000000000000000020910161c22272c31363a3e4145474a4c4e505152525353535251504f4d4b494643403c38342f2a251f19130c05000000000000000000000000000000000000000000000000000000000000000000000000050f1820292f35383939393939393939393937332d251d140b0100000000000000000000000000000000000000000000000000000000000000000000040a0e111313131313131313131313110e090300000000000000000000000000000000000000000000000000000000000000000000000006121e2a36414c555d6061616161615e584f44392e22160900000000000000000000000000000000000e1b2734404c58626b6d6d6d6d6d6d6d6d6b63584d4134281c0f0200000000000000000000000000000000000000000000000000000000000000000000000000000000040e1720272e32353636363635322e2720170e0400000000000000000000000000000000000000040e1720272e32353636363635322e2720170e040000000000000000000000050e1720272c303333333333322f2a231c130a0000000e1b2734414d5a6673808c98a5aea295897d7164584d41362c25211f1f1f2126303c4956626f7c8895a2ac9f9386796c5f5346392d2013060000000000000000000000000000030c141d252d343b41474c5154585a5c5e5f5f5f5e5d5c5a5754504b4855616e7b8895a2aea5988b7e7165584b3e3225180b00131f2c3946525f6b7679797979797979797266594d4033271a0d0000000000000000000000000000000000000000000000000000000000000000000000000000000005101c27333e49545e69727c858e969da3a9a6a19d9a9896969697999ca1a6aaa59f98918980776d63594e44382d22160b000000000000000008131d2730383e42444342414144495159626c76808b96a0a89d91867a6f64584d41352a1e1207000000000000000000000000000000000000000013202c3946535f6c798693959595959386796c5f5346392c20130600000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000060d13181d22272a2e313335363738383837363533302d2a26221d18120c05000000000000000000000000000000000000000000000000000000000000000000000000000000000a16212d38434e59636d767f878d909293918e89847e79726c66605a54535b67727e8b938d8174675a4e4135281b0f020000000000000000000000000000000000121e2b3845515e6b7885929393939386796d6053464a5764717d8a939393938c807366594c403326190d00000000000000000000000000000007121d29343f4a55616c77828e99a4afbac5c7bcb1a59a8f84786d62574c40352a1f1408000000000000000000000000000000000000050d141a21272d33383d42464a4e515456595b5c5d5e5f5f5f5f5f5e5d5c5a585553504c4844403b36302a241e171009010000000000000000000000000000000000000000000000000000000000000000000000060e171e24292b2c2c2c2c2c2c2c2c2c2c2a27221b130b020000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000815212e3a47525e676d6d6d6d6d6d6a61564a3e3125180c0000000000000000000000000000000000101c2936424f5c68747a7a7a7a7a7a7a7a75695d5043372a1d1004000000000000000000000000000000000000000000000000000000000000000000000000000000000b16202932393e4242424242423e39322920160b000000000000000000000000000000000000000b16202932393e4242424242423e39322920160b00000000000000000000010c17202931383d3f404040403e3b352e251c120700000c1925323e4b5764707d8995a2aea5998d8175695e52483e36312e2c2c2c2d30363e4956626f7c8995a2ada09386796d6053463a2d201307000000000000000000000000000000020b131b222930363b4044484b4e505152525252514f4d4b47443f4855616e7b8895a2aea5988b7e7165584b3e3225180b00111e2a37434f5a646b6c6c6c6c6c6c6c6c6960554a3d3125180c00000000000000000000000000000000000000000000000000000000000000000000000000000000000b16212c37424c57606a737c848b92989da1a5a7a6a4a3a2a3a4a6a8a5a29e99948e877f776e655b51473d32271c11050000000000000000010c151e262d32363736353434383f47505a646e79848f9aa5a3978c8075695d52463b2f23170c000000000000000000000000000000000000000013202c3946535f6c798693a0a2a2a09386796c5f5346392c2013060000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000030a11181e24292e33373a3d404243444545454443413f3d3a36322d29231d17100902000000000000000000000000000000000000000000000000000000000000000000000000000005101c27323c47515b646d757b8184868685827e78736d67615b544e484a56636f7b8686868275695c4f4336291d10030000000000000000000000000000000000121e2b3845515e6b7885868686868686796d6053464a5764717d868686868686807366594c403326190d000000000000000000000000000000010c17232e39444f5b66717c87939ea9b4bfc1b6aa9f94897d72675c51463a2f24190e020000000000000000000000000000000000080f171e252c32383e44494e52565a5d60636567696a6b6c6c6c6c6b6b6a686664625f5c5854504b46413b352f29221b130c040000000000000000000000000000000000000000000000000000000000000000000000050c13181c1f202020202020202020201e1b16100901000000000000000000000000000000000000000000000000000000000000000000000000000000000406080808080808080808070501000000000000000000000000000000000000000000000000000000000000000000000000000a1623303d4956636f797a7a7a7a7a7266594d4033271a0d0000000000000000000000000000000000101c2936434f5c69768387878787878784776a5d5044372a1d110400000000000000000000000000000000000000000000000000000000000000000000000000000006111d27323b444a4e4f4f4f4f4e4a443b32271d1106000000000000000000000000000000000006111d27323b444a4e4f4f4f4f4e4a443b32271d110600000000000000000007131e29323b43494c4c4c4c4c4b463f372e23180d02000a16232f3c4854616d7986929eaaa99d91867a6f64595048413d3a3938393a3d4147505a66727e8a97a4ac9f9386796c5f5346392d20130600000000000000000000000000000000010911181e252a3034383c3f414344454646454443413e3b383b4855616e7b8895a2aea5988b7e7165584b3e3225180b000e1a26323e48525a5f5f5f5f5f5f5f5f5f5d574e44392d211509000000000000000000000000000000000000000000000000000000000000000000000000000000000005101b26303b454f58616a727981878c9195989b9d9e9f9f9f9e9d9b9996928e89837c756d655c534940352b20160b00000000000000000000030c141c2226292a2a2828282d353e48525d67727d89949fa89d91867a6e63574b4034281c10050000000000000000000000000000000000000013202c3946535f6c798693a0acaca09386796c5f5346392c20130600000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000050d141c23292f353a3f4346494c4e505151515151504e4c4946423e39342e28221b140c0400000000000000000000000000000000000000000000000000000000000000000000000000000a15202b353f49525b636a70747779797875726d68625c565049433d4754606c777979797974685c4f4336291d10030000000000000000000000000000000000121e2b3844515e6a7579797979797979766b5f53464a57636f79797979797979797165584c3f3326190c0000000000000000000000000000000006111c28333e4954606b76818d98a3aeb9bbb0a4998e83776c61564b3f34291e1307000000000000000000000000000000000109121a212930373d444a4f555a5e62666a6d6f7274757778797979797877767573716e6b6864605c57524c47413a332c251e160e05000000000000000000000000000000000000000000000000000000000000000000000001070c101213131313131313131313110f0a0500000000000000000000000000000000000000000000000000000000000000000000000000000000060c101314151515151515151413110d080200000000000000000000000000000000000000000000000000000000000000000000000a1724303d4a5763707d878787878173675a4d4034271a0d0100000000000000000000000000000000101c2936434f5c69768390949494949084776a5d5044372a1d11040000000000000000000000000000000000000000000000000000000000000000000000000000000a16222e39444d555b5c5c5c5c5b554d44392e22160a00000000000000000000000000000000000a16222e39444d555b5c5c5c5c5b554d44392e22160a0000000000000000000c18242f3a444d5458595959595751493f352a1e1206000713202c3845515d6975818d99a5aea2978b80766b6259524d494745454547494d5259626c76828e9aa6aa9d9184786b5e5245382c1f1206000000000000000000000000000000000000060d13191f24282c303235363838393938373634322f2e3b4855616e7b8895a2aea5988b7e7165584b3e3225180b000a16212c3740484f525353535353535353514c453c32271c110500000000000000000000000000000000000000000000000000000000000000000000000000000000000009141f29333d464f5860686f757b8185898c8e909192929292918f8d8a86827d77716a635b534a41372e24190f040000000000000000000000020a11161a1d1e1d1c1b1c232c36404b56616c77838f9aa6a2978b7f73685c5044392d2115090000000000000000000000000000000000000013202c3946535f6c798693a0acaca09386796c5f5346392c201306000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000060f171f262d343a40464b4f5356595b5c5d5e5e5e5d5c5a5855524e4a453f3a332d251e160e0500000000000000000000000000000000000000000000000000000000000000000000000000040f19232d37404951595f64686b6c6c6b6966615c57514b453e383844505b656b6c6c6c6c6a62584c4034271b0e020000000000000000000000000000000000101d2935424e59636b6c6c6c6c6c6c6c6b645a4f4347535e676c6c6c6c6c6c6c6c685f54493d3024170b00000000000000000000000000000000000b16222d38434e5a65707b87929da8b3b5a99e93887d71665b5045392e23180d01000000000000000000000000000000020a131b242b333a42484f555b60656a6e7276797c7e818284858686868685848382807d7b7874716c68635e58524c453e372f2820170f0600000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000020a11171c1f212121212121212121201d19130c04000000000000000000000000000000000000000000000000000000000000000000000a1724303d4a5763707d8a94948d8174675a4d4134271a0e0100000000000000000000000000000000101c2936434f5c697683909ca0a09d9084776a5d5044372a1d11040000000000000000000000000000000000000000000000000000000000000000000000000000000d1a26333f4a555f6769696969675f554a3f33261a0d01000000000000000000000000000000000d1a26333f4a555f6769696969675f554a3f33261a0d010000000000000000101c2935404c565f6566666666635b51463b2f22160a0004101c2935414d5965717d88949faaa89d92877d746b645e5956535252525355595d646b747d88939faaa69a8e8275695c5043372a1e11040000000000000000000000000000000000000002080e13181c202326282a2b2c2c2c2c2b292725222e3b4855616e7b8895a2aea5988b7e7165584b3e3225180b0005101a252e373e4346464646464646464645413b332a20160b00000000000000000000000000000000000000000000000000000000000000000000000000000000000000020d17212b343d464e565d646a7075797c80828485868686858482807d7a76716c666059514941382f251c12080000000000000000000000000000050a0e1011100f0e111a242f3a45505b66727d8995a1a79c9084786d6155493d32261a0e0200000000000000000000000000000000000013202c3946535f6c798693a0acaca09386796c5f5346392c2013060000000000000000000000000000000000000000000000000000000000000000000000000000000000000000060f18212931383f464c51565b5f626567696a6b6b6b6a696765625e5a56514b453e37302820170f060000000000000000000000000000000000000000000000000000000000000000000000000007111b252e373f474e54585c5e5f5f5f5d5955504b45403a332d333f49535b5f5f5f5f5f5e5950463b3024180c0000000000000000000000000000000000000d1925313d4751595e5f5f5f5f5f5f5f5f5a52493e414c555c5f5f5f5f5f5f5f5f5d564d43382c201408000000000000000000000000000000000005101b27323d48535f6a75808c97a2adafa3988d82766b60554a3e33281d1206000000000000000000000000000000010b141c252d353d454c535a60666c71767a7e8286898b8d8f9091929393929291908e8c8a8784817d78746e69635d575049413a322921180f060000000000000000000000000000000005090c0e0e0e0e0e0e0e0e0e0e0d0a07020000000000000000000000000000000000000000000000000000000000000001060a0c0e0e0e0e0e0e0e0e0e0e0c09050000000000000000020b141c23282c2e2e2e2e2e2e2e2e2e2d29241e160e050000000000000000000000000000000000000000000000000000000000000000000b1724313e4a5764717d8a979a8e8174675a4d4134271b0e0100000000000000000000000000000000101c2936434f5c697683909ca9aa9d9084776a5d5044372a1d11040000000000000000000000000000000000000000000000000000000000000000000000000000000f1c2935424e5b67717575757571675b4e4235291c0f03000000000000000000000000000000000f1c2935424e5b67717575757571675b4e4235291c0f030000000000000000121f2b3844515d6871737373736d63574b3e3225180c00000c1925313d4954606c77838e99a3aea4998f867d756f696562605f5f5f606265696f757d868f9aa4aca1968a7e7266594d4134281b0f0200000000000000000000000000000000000000000002070c101417191b1d1e1f1f1f1f1e1d1b19222e3b4855616e7b8895a2aea5988b7e7165584b3e3225180b000009131c252c32373939393939393939393835302921180e040000000000000000000000000000000000000000000000000000000000000000000000000000000000000000050f19222b343c444c52595f64696d707375777879797978777673716e6a65605b554e473f372f261d130a000000000000000000000000000000000000000000000008121d28333e4a55616d7884909ca8a195897d72665a4e42362a1f130700000000000000000000000000000000000013202c3946535f6c798693a0acaca09386796c5f5346392c20130600000000000000000000000000000000000000000000000000000000000000000000000000000000000000060f18212a333b424a51575d62676b6f72747677777877777574716e6a66615c565049423a322921180e050000000000000000000000000000000000000000000000000000000000000000000000000009131c252d353c42484c4f52535352504d4945403a342e28222d3741494f5253535353524e473e342a1f13070000000000000000000000000000000000000915202b363f484e5253535353535353524f4940373a434b505353535353535353514c443b31271b10040000000000000000000000000000000000000a15212c37424d59646f7a85919ca7a89d92877b70655a4f44382d22170c000000000000000000000000000000000a131d262e373f474f575e656b71777d82878b8f9295989a9c9d9e9f9fa09f9f9e9c9b999694908d8984807a746e68615a534b443b332a21180f0600000000000000000000000000040b1115191a1a1a1a1a1a1a1a1a1a1917130d070000000000000000000000000000000000000000000000000000000000060c1216191a1a1a1a1a1a1a1a1a1a1916110b050000000000000a141d262d34383a3b3b3b3b3b3b3b3b3935302820170e0400000000000000000000000000000000000000000000000000000000000000000b1824313e4a5764717d8a979b8e8174675b4e4134281b0e0100000000000000000000000000000000101c2936434f5c697683909ca9aa9d9084776a5d5044372a1d1104000000000000000000000000000000000000000000000000000000000000000000000000000000101c2936434f5c69768282828276695c4f4336291c100300000000000000000000000000000000101c2936434f5c69768282828276695c4f4336291c1003000000000000000013202c3946535f6c79808080807366594c403326190d00000814202c38444f5b66717c87929ca6aba1988f87817a75716f6d6c6b6b6d6e71757a80878f98a1aba59a9084796d6156493d3125180c0000000000000000000000000000000000000000000000000004070a0d0f10121213131211100e15222e3b4855616e7b8895a2aea5988b7e7165584b3e3225180b0000010a131a21262a2c2c2c2c2c2c2c2c2c2c29241e170f0600000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000071019222a323a41484e53585d606466686a6b6c6c6c6b6a696764615e59554f49433c352d251d140b010000000000000000000000000000000000000000000000010c17222d3945505c6874808b97a3a69a8e82766a5f53473b2f23170b00000000000000000000000000000000000013202c3946535f6c798693a0acaca09386796c5f5346392c201306000000000000000000000000000000000000000000000000000000000000000000000000000000000000040e18212a333c454d545b62686e73777b7e8182848485848482817e7a77726d67615b534c443b332a20170d03000000000000000000000000000000000000000000000000000000000000000000000000010a131b232b31373c40434546464543413d39342f29231d1b262f373e43464646464645423c352c22180d02000000000000000000000000000000000000040f19242d363d42454646464646464646433e372e31394044464646464646464644403a322920150a00000000000000000000000000000000000000040f1a26313c47525e6974808b96a1a2978c81756a5f54493d32271c110500000000000000000000000000000009121c252f3840495159616870767d83888e92979b9ea1a4a6a8a9a8a7a6a6a6a7a8a9a7a5a3a09d9995908b86807a736c655d554d453c332a21180e040000000000000000000000060e161c21252727272727272727272726231e1811090000000000000000000000000000000000000000000000000000000810171d22262727272727272727272725221d160f070000000005111b262f383f4447484848484848484745413a322920160c03000000000000000000000000000000000000000000000000000000000000000b1824313e4b5764717e8b989b8e8174685b4e4135281b0f0200000000000000000000000000000000101c2936434f5c697683909ca9aa9d9084776a5d5044372a1d1104000000000000000000000000000000000000000000000000000000000000000000000000000000101c2936434f5c6976838f8f8376695c4f4336291c100300000000000000000000000000000000101c2936434f5c6976838f8f8376695c4f4336291c1003000000000000000013202c3946535f6c79868c8c807366594c403326190d000004101c27333e4a55606b75808a949da5aaa199928c86817e7b79787878797b7d81868b9299a1aaa59c93897e73685c5145392d21150900000000000000000000000000000000000000000000000000000000000000000000000000000815222e3b4855616e7b8895a2aea5988b7e7165584b3e3225180b000000010910161a1e1f20202020202020201f1c19130d0500000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000007101820282f363c42484c5154575a5c5d5e5f5f5f5f5e5c5a5855514d49443e38322b231b130b020000000000000000000000000000000000000000000000000005111c2834404b57636f7b8793a0aa9f93877b6f63574b3f34281c1004000000000000000000000000000000000013202c3946535f6c798693a0acaca09386796c5f5346392c2013060000000000000000000000000000000000000000000000000000000000000000000000000000000000020c16202a333c454e575e666d73797e83878b8d8f90919291908f8d8a87837e78736c655e564d453c32291f150b010000000000000000000000000000000000000000000000000000000000000000000000000109111920262b303436383939393734312d28231e1812141d252d333739393939393936312b231a1106000000000000000000000000000000000000000008121b242b323639393939393939393937322c25272e3438393939393939393938352f2920170e0300000000000000000000000000000000000000000914202b36414c58636e7984909b9c91867b6f64594e43372c21160b00000000000000000000000000000006111b242e37414a525b636b737a81888e94999ea3a7aba7a3a19e9c9b9a9a999a9a9b9d9fa1a4a7a9a5a19c97918b857e776f675f574e453c332a20160c02000000000000000000050f1820272d3134343434343434343434332f2a231b12090000000000000000000000000000000000000000000000000007111a22292e3234343434343434343434322e28211910060000000b16222d38414a50545454545454545454524c443b32281e150b010000000000000000000000000000000000000000000000000000000000000b1825323e4b5865717e8b989b8e8275685b4e4235281b0f0200000000000000000000000000000000101c2936434f5c697683909ca9aa9d9084776a5d5044372a1d1104000000000000000000000000000000000000000000000000000000000000000000000000000000101c2936434f5c69768390908376695c4f4336291c100300000000000000000000000000000000101c2936434f5c69768390908376695c4f4336291c1003000000000000000013202c3946535f6c7986938c807366594c403326190d0000000b16222d38434e59646e78828b949ca3aaa49d97928e8a888685858586888a8d92979da3aaa39b938a81776c62574b4034291d110500000000000000000000000000000000000000000000000000000000000000000000000000000815222e3b4855616e7b8895a2aea5988b7e7165584b3e3225180b0000000000050a0e1113131313131313131312100d08020000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000060e161e252b31373c4044484b4d4f51525253525251504e4b4945413d38332d272019110901000000000000000000000000000000000000000000000000000006121e2a36424e5965717d8995a1ada3978c8074685c5044382c201409000000000000000000000000000000000013202c3946535f6c798693a0acaca09386796c5f5346392c201306000000000000000000000000000000000000000000000000000000000000000000000000000000000009131e28323c454e57606870787e858a8f93979a9c9d9e9e9e9d9c9996938f8a847e776f685f574e443b31271d13080000000000000000000000000000000000000000000000000000000000000000000000000000070e151b2024272a2c2c2c2c2a2825211d17120c070b131b22272a2c2c2c2c2c2c2a25201911080000000000000000000000000000000000000000000009121a21262a2c2c2c2c2c2c2c2c2c2a27211b1d23282b2c2c2c2c2c2c2c2c2b29241e170e05000000000000000000000000000000000000000000030e1925303b46515d68737e8a95968b8074695e53483d31261b10050000000000000000000000000000040e18232d364049535c646d757d858c93999fa5aaa8a39f9b979492908e8d8d8c8d8d8e909295989b9fa4a9a8a29c968f888179716960574e453c32281e140a0000000000000000020d17212a32393e404141414141414141413f3b352d241b11060000000000000000000000000000000000000000000000040f19232c343a3e414141414141414141403e39332b22180d0200000f1b27333e49535b6061616161616161615d564d433a30271d13090000000000000000000000000000000000000000000000000000000000000b1825323e4b5865717e8b989b8f8275685b4f4235281c0f0200000000000000000000000000000000101c2936434f5c697683909ca9aa9d9084776a5d5044372a1d1104050607070707060503010000000000000000000000000000000000000000000000000000000000101c2936434f5c69768390908376695c4f4336291c100300000000000000000000000000000000101c2936434f5c69768390908376695c4f4336291c1003000000000000000013202c3946535f6c7986938c807366594c403326190d00000005111c27323d47525c666f78818a91989fa4a8a29e9a9794939292929394969a9da2a8a49f98918981786f655b50453a2f23180c0000000000000000000000000000000000000000000000000000000000000000000000000000000815222e3b4855616e7b8895a2aea5988b7e7165584b3e3225180b0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000040c131a20262b3034383b3e41434445464646454443413f3c3935312c27221c150e07000000000000000000000000000000000000000000000000000000000b17232f3b46525e6a76828e99a5b1a89c9084786c6055493d3125190d010000000000000000000000000000000013202c3946535f6c798693a0acaca09386796c5f5346392c2013060000000000000000000000000000000000000000000000000000000000000000000000000000000005101a25303a444e57616a727a828990969ba0a3a6a6a4a3a3a3a4a6a6a39f9a958f898179716960564d43392f241a0f04000000000000000000000000000000000000000000000000000000000000000000000000000003090f14181b1d1f20201f1e1c1915110c070100010910161b1e20202020201f1d1a140e07000000000000000000000000000000000000000000000000080f151a1e1f202020202020201f1e1b161012171c1f20202020202020201f1c18130c05000000000000000000000000000000000000000000000008131f2a35404b57626d78848f90857a6e63584d42362b20150a0000000000000000000000000000000b15202a343e48525b656e767f878f969ea4aba9a39d98938e8b888583828180808081828385888b8f93989da3a9a7a19a938b837b726a61574e443a30261c11060000000000000008131e29333c444a4d4d4d4d4d4d4d4d4d4d4b463f362d22170c00000000000000000000000000000000000000000000000a15202b353e454b4d4d4d4d4d4d4d4d4d4d4a443d342a1f14080000111e2b37434f5b656d6e6e6e6e6e6e6e6e685f564c42392f251b110700000000000000000000000000000000000000000000000000000000000c1925323f4c5865727e8c989c8f8275685b4f4235291c0f0200000000000000000000000000000000101c2936434f5c697683909ca9aa9d9084776a5d5044372a1d11101213131414131311100d0b07040000000000000000000000000000000000000000000000000000101c2936434f5c69768390908376695c4f4336291c100300000000000000000000000000000000101c2936434f5c69768390908376695c4f4336291c1003000000000000000013202c3946535f6c7986938c807366594c403326190d000000000b16202b36404a545d666f7880878d93999da1a4a6a3a1a09f9e9f9fa1a3a6a4a19d99938d8780776f665d53493e34291e12070000000000000000000000000000000000000000000000000000000000000000000000000000000815222e3b4855616e7b8895a2aca5988b7e7165584b3e3225180b00000000000000000508090a0a0a0a0a0a0a0a09080501000000000000000000000000000206080a0a0a0a0a0a0a0a0a09070400000000000000000000000000000000000000000000000001080f151a1f24282c2f32343637383939393938363532302d2925211c16110a040000000000000000000000000000000000000000000000000000000004101c28333f4b57636f7a86929eaab6aca195897d7165594d4135291e12060000000000000000000000000000000013202c3946535f6c798693a0acaca09386796c5f5346392c201306000000000000000000000000000000000000000000000000000000000000000000000000000000000b16212c37414c566069737c848c949ba1a7a5a19d9a98969696989a9da1a6a6a19a938b837b72685f554b41362c21160b0000000000000000000000000000000000000000000000000000000000000000000000000000000003080b0e1112131312110f0c0905000000000000050a0f11131313131313110d09030000000000000000000000000000000000000000000000000000040a0e11131313131313131313110e0a05070c0f12131313131313131312100c0701000000000000000000000000000000000000000000000000020d19242f3a45515c67727d898a7f73685d52473c30251a0f04000000000000000000000000000007121d27323c46505a646d7780899199a1a8ada59e98928c87837e7b78767574737373747577797c7f83878c92989ea5aca59d958d857c736960564c42382d23180d030000000000000c1824303b454e555a5a5a5a5a5a5a5a5a5a5751493f34281d1105000000000000000000000000000000000000000000030f1b26323d4750565a5a5a5a5a5a5a5a5a5a564f463b3025190d010013202c3946525f6c777b7b7b7b7b7b7b7a71685e544b41372d23190f05000000000000000000000000000000000000000000000000000000000c1926323f4c5865727e8c989c8f8275695c4f4236291c0f0300000000000000000000000000000000101c2936434f5c697683909ca9aa9d9084776a5d5044372a1d1b1d1e1f202020201f1e1c1a1714100c07020000000000000000000000000000000000000000000000101c2936434f5c69768390908376695c4f4336291c100300000000000000000000000000000000101c2936434f5c69768390908376695c4f4336291c1003000000000000000013202c3946535f6c7986938c807366594c403326190d00000000040f19242e38424b545d666e757c82888d9195989a9c9e9f9fa09f9f9e9c9a9895918d88827c756d655d544b41372d22170c010000000000000000000000000000000000000000000000000000000000000000000000000000000815222e3b4855616e7b8895a0a0a0988b7e7165584b3e3225180b000000000000060c11141617171717171717171614110c070000000000000000000002080e12151617171717171717171614100b0500000000000000000000000000000000000000000000000003090f14181c20232527292b2c2c2c2c2c2b2a282623201d1915100b050000000000000000000000000000000000000000000000000000000000000915202c3844505c6773808b97a3afb7b1a5998d82756a5e52463a2e22160a0000000000000000000000000000000013202c3946535f6c798693a0acaca09386796c5f5346392c20130600000000000000000000000000000000000000000000000000000000000000000000000000000006121d28333e48535d68727b858e969ea6a7a09a95918d8b8a8a8a8b8d91959aa0a7a59d958d847a71675d52483d32271c1106000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000007121e29343f4a56616c778284796d62574c41352a1f14090000000000000000000000000000020d18232e39434e58626c768089929ba3ababa39b948d86817b76726f6c6a686766666667686a6c6f73777b81868d949ba3aba79f978e857b72685e54493f342a1f1409000000000000101c2935414c576066676767676767676767635b5045392d21160a00000000000000000000000000000000000000000008141f2b37434e59616767676767676767676661574d4135291d110400131f2c3945525e6b757f888888888888837a70665d53493f352b21170c020000000000000000000000000000000000000000000000000000000c1926323f4c5965727f8c999c8f8276695c4f4336291c100300000000000000000000000000000000101c2936434f5c697683909ca9aa9d9084776a5d5044372a2527292b2c2d2d2d2d2c2b292623201c18130d0701000000000000000000000000000000000000000000101c2936434f5c69768390908376695c4f4336291c100300000000000000000000000000000000101c2936434f5c69768390908376695c4f4336291c1003000000000000000013202c3946535f6c7986938c807366594c403326190d000000000008121c263039424b545c636a71777c8185888b8e9091929293939291908e8b8985817c77716a635c534b42392f251b1006000000000000000000000000000000000000000000000000000000000000000000000000000000000815222e3b4855616e7b8893939393938b7e7165584b3e3225180b00000000010a11181d2123232323232323232323211d18110a0200000000000000040c13191e2123232323232323232322201c160f080000000000000000000000000000000000000000000000000003080c101316191b1d1e1f1f201f1f1e1d1b191714110d090400000000000000000000000000000000000000000000000000000000000000020e1925313d4955606c7884909ca8adaaabaa9e92867a6e62564a3f33271b0f0300000000000000000000000000000013202c3946535f6c798693a0acaca09386796c5f5346392c2013060000000000000000000000000000000000000000000000000000000000000000000000000000010c18232e39444f5a656f79848d97a0a8a49c958f8984817e7d7d7d7e8184898f959da5a79f968c83796f645a4f44392e23170c0000000000000000000000000000000000000000000000000000000306070707070707070707070603000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000010304050607070707060504030100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000010c18232e39444f5b66717c7e72675c51463a2f24190e02000000000000000000000000000008141f2a35404a55606a747e88929ba4adaaa1999189827b756f6a66625f5d5b5a59595a5a5c5d6063666b70757b82899199a1aaa9a0978d847a70665b51463b31261a0f040000000000121f2b3844515d69727474747474747474746c61564a3e32261a0e0300000000000000000000000000000000000000000c1824303c48545f6b73747474747474747472695e5245392c1f130600111e2a36424e59636d77818a949494948c82786f655b51473d33291e14090000000000000000000000000000000000000000000000000000000d192633404c596673808c999c908376695c4f4336291d100300000000000000000000000000000000101c2936434f5c697683909ca9aa9d9084776a5d5044372e31343638393a3a3a3a39373533302c28231e18120c050000000000000000000000000000000000000000101c2936434f5c69768390908376695c4f4336291c100300000000000000000000000000000000101c2936434f5c69768390908376695c4f4336291c1003000000000000000013202c3946535f6c7986938c807366594c403326190d0000000000000a141e273039424a52595f666b7075797c7e81838485868686858483817f7c7975706b665f59514a413930271d130900000000000000000000000000000000000000000000000000000000000000000000000000000000000815222e3b4855616e7b868686868686867e7165584b3e3225180b000000010a131b23292d2f3030303030303030302d29231c140b010000000000040d161e252a2e3030303030303030302f2c27211a110800000000000000000000000000000000000000000000000000000004070a0c0e1011121313131212100f0d0a08040100000000000000000000000000000000000000000000000000000000000000000006121e2a36424d5965717d8995a0a9a19d9fa5a2968b7e73675b4f43372b1f140800000000000000000000000000000013202c3946535f6c798693a0acaca09386796c5f5346392c201309090909090909090909090909090909090909090909090908070401000000000000000000000006121d29343f4b56616c76818b969fa9a49b928b837d7874727070707274787d848b939ba4a89f958b81766b60554a3f34281d1106000000000000000000000000000000000000000000000000060b0f1214141414141414141414120f0b060000000000000000000000000000000000000000000000000000000000000000000000000000000000000206090b0d0f111213131414131312110f0d0b0906020000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000006111d28333e4955606b76776c61564b4034291e13080000000000000000000000000000030e1925303b46515c67717c86909aa4adaba1988f877f77706a645f5a5653514f4d4d4d4d4e4f5153575a5f646a70777f878f98a1aba99f968c82776d62584d42372c21150a0000000000131f2c3946525f6c7981818181818181817e72665a4e42372b1f13070000000000000000000000000000000000000005111d2935404c5864707c8181818181818181796d6053463a2d201307000e1a26323d48515b656e78828c96a09e948a81776d63594f453a30261b110600000000000000000000000000000000000000000000000000000d192633404c596673808c999d908376695d5043362a1d100300000000000000000000000000000000101c2936434f5c697683909ca9aa9d9084776a5d5044373a3d40424446464747464544423f3c38342f2a241d160f0700000000000000000000000000000000000000101c2936434f5c69768390908376695c4f4336291c100300000000000000000000000000000000101c2936434f5c69768390908376695c4f4336291c1003000000000000000013202c3946535f6c7986938c807366594c403326190d000000000000020c151e27303840474e545a6064696c6f72747677787979797978767572706c6964605a544e47403830271e150b0100000000000000000000000000000000000000000000000000000000000000000000000000000000000815212e3b4854616d7779797979797979797064574b3e3125180b00000008121c252d34393c3d3d3d3d3d3d3d3d3c39342e261d130900000000010b161f2830363a3d3d3d3d3d3d3d3d3d3c38332c231a1006000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000b17232f3a46525e6a76828d99a5a19791939ca69b8f83776b5f54483c3024180c00000000000000000000000000000013202c3946535f6c798693a0acaca09386796c5f5346392c20151515151515151515151515151515151515151515151515151514110c07000000000000000000000b17222e3a45515c67727d88939da7a59b92898079726c686564636365686d72798189929ca6a79d92887d72675c5045392e22170b00000000000000000000000000000000000000000000020a11171c1f202020202020202020201f1b17110a020000000000000000000000000000000000000000000000000000000000000000000000000002070b0f1215181a1c1d1f2020202020201f1e1c1a1815120f0b070200000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000b17222d38434f5a646b6b655b50453a2e23180d02000000000000000000000000000008141f2b36414d58636e78838e98a2acaca2998f867d756d655f58534e4a47444241404040414244474a4e53595f656d757d868f99a2aca89e94897f74695e53483d32261b100400000000121e2b3844505d6874808c8e8e8e8e8e8e83776b5f53473b2f24180c000000000000000000000000000000000000000a16212d3945515d6975818c8e8e8e8e8e8d8175695d5145382c1f1306000a15212b363f49535c66707a848e99a39c93897f756b61564c42372d22180d02000000000000000000000000000000000000000000000000000d1a2633404d596673808d9a9d9083766a5d5043372a1d100400000000000000000000000000000000101c2936434f5c697683909ca9aa9d9084776a5d504442464a4d4f51525353535352504e4c4844403b352f2821191109000000000000000000000000000000000000101c2936434f5c69768390908376695c4f4336291c100300000000000000000000000000000000101c2936434f5c69768390908376695c4f4336291c1003000000000000000013202c3946535f6c7986938c807366594c403326190d00000000000000030c151e262e353c43494f54585c60636668696b6c6c6c6c6c6b6a686663605d58544f49433c352e261e150c030000000000000000000000000000000000000000000000000000000000000000000000000000000000000713202c3845515c666c6c6c6c6c6c6c6c6c685e53483c2f23160a0000030f1a242e373f45494a4a4a4a4a4a4a4a49453f382f251a0f0400000007121d27313a4146494a4a4a4a4a4a4a4a48443d352c22170c01000000000000000407080808080808080807050100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000004101c27333f4b57636e7a86929ea89c90858a96a2a094887c7064584c4034291d1105000000000000000000000000000013202c3946535f6c798693a0acaca09386796c5f5346392c222222222222222222222222222222222222222222222222222222201d18120b030000000000000004101c27333f4b56626d78848f9aa4a99e948980766e67615c59575657595c61676f77808a949ea9a4998e83786d61564a3f33271c10040000000000000000000000000000000000000000020c141c23282b2d2d2d2d2d2d2d2d2d2d2b27221c140b020000000000000000000000000000000000000000000000000000000000000000000004090e13171b1e222427282a2b2c2d2d2d2d2c2b2a292724211e1b17130e090300000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005101c27323d48525a5f5f5b53493f33281d12070000000000000000000000000000010d1925303c47535e69747f8a959faaafa49a90877d746b635b544d47423e3a3735343333333436383b3e42474d545b636b747d87909ba5afa59b90867b70655a4e43372c20150900000000101c2834404c58646f7b87939a9a9a9a93877b6f64584c4034281c11050000000000000000000000000000000000020e1a26323e4a56616d7985919a9a9a9a94887c7064584d4135291d100400040f1a242d37414a545e68727c87919ba59b91877d72685e54493f34291f1409000000000000000000000000000000000000000000000000000d1a2734404d5a6773808d9a9d9084776a5d5044372a1d110400000000000000000000000000000000101c2936434f5c697683909ca9aa9d9084776a5d50494e5256595c5e5f606060605f5d5b5854504b46403a332b231b12090000000000000000000000000000000000101c2936434f5c69768390908376695c4f4336291c100300000000000000000000000000000000101c2936434f5c69768390908376695c4f4336291c1003000000000000000013202c3946535f6c7986938c807366594c403326190d0000000000000000030c141c242b32383e43484c505457595b5d5e5f5f5f5f5f5e5d5b595754504c48433e38312b231c140c030000000000000000000000000000000000000000000000000000000000000000000000000000000000000004101c28343f4a545b5f5f5f5f5f5f5f5f5f5c564d42372b1f130700000814202b3640495155565656565656565655514a41372c2115090000000c18232f39434c52565656565656565656544f473e34291d12060000000000060c1013151515151515151514110d0801000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000914202c3844505c67737f8b97a3a4988c8086929ea4988c8175695d5145392d211509000000000000000000000000000013202c3946535f6c798693a0acaca09386796c5f5346392f2f2f2f2f2f2f2f2f2f2f2f2f2f2f2f2f2f2f2f2f2f2f2f2f2f2f2f2d29231d150c030000000000000814202c3844505b67737e8a95a0aba2978c82776e655c55504c4a4a4a4c50565d656e78828d98a3aba095897e72675b5044382c20140800000000000000000000000000000000000000000a141e262e34383a3a3a3a3a3a3a3a3a3a38332d261d140a000000000000000000000000000000000000000000000000000000000000000003090f151a1f23272b2e3133353738393a3a3a3a3938373533312e2b27231e1a140f090200000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000a16212c3640484f52524f4941372d22170c01000000000000000000000000000006121e2a35414d58646f7a86919ca6b1a89d93887e756b62595149423c36322e2b292727262728292b2e32373c42495159626b757e89939ea8ada2978c81766b5f54493d31261a0e020000000c18242f3b47535f6b76828e9aa6a7a4988c8074685c5145392d211509000000000000000000000000000000000007131f2b37424e5a66727e8a96a2a7a79b8f83776b5f54483c3024180d00000008121b252f39424c56606b757f8a949ea3998f847a70655b50463b30261b10050000000000000000000000000000000000000000000000000d1a2734404d5a6773818d9a9d9184776a5d5144372a1e110400000000000000000000000000000000101c2936434f5c697683909ca9aa9d9084776a5d50555a5e6266686a6c6d6d6d6c6b6a6764615c57514b443d352d241b120900000000000000000000000000000000101c2936434f5c69768390908376695c4f4336291c100300000000000000000000000000000000101c2936434f5c69768390908376695c4f4336291c1003000000000000000013202c3946535f6c7986938c807366594c403326190d000000000000000000020a121920272d32373c4044474a4d4f5051525353535251504f4d4a4744403c37322d262019120a020000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000c18232e38424a4f525353535353535353504b443b30261a0f0300000c1825313c48525b616363636363636363625c53483d3125190d010004101c2834404b555e626363636363636363605950453a2e221609000000020a11181c202122222222222222201d19130c040000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000020d1925313d4954606c7884909ca7a094887c818d99a59d9185796d61554a3e32261a0e020000000000000000000000000013202c3946535f6c798693a0acaca09386796c5f53463c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3b39352e271e140a0000000000000c1824303c4854606c78848f9ba6a89c91867b70665c534b44403d3d3d40444b535c66707b86919da8a69a8f84786c6054483c3024180c0000000000000000000000000000000000000006111c2630383f4447474747474747474746443f382f261c1106000000000000000000000000000000000000000000000000000000000000070e141b20262b2f33373a3d40424345464647474646454442403d3a37332f2a25201a140d0600000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000040f1a242e363d434646433e372f261b11060000000000000000000000000000000b17232e3a46525e6975808c97a2adaca1968b81766c635950473f38312b26221e1c1b1a1a1a1b1d1f22262b31383f475059636d77818c97a2ada99e93877c7065594e42362a1f130700000007131f2b37424e5a66727d8995a1ada89c9185796d6155493d32261a0e02000000000000000000000000000000000c18232f3b47535f6b77838e9aa6aea2968a7e72675b4f43372b2014080000000009131d27303a444f59636d78828d97a2a0968c82776d62574d42372c21160b0000000000000000000000000000000000000000000000000e1a2734414d5a6774818e9a9e9184776a5d5144372b1e110400000000000000000000000000000000101c2936434f5c697683909ca9aa9d9084776a5d5a60666a6e72757778797a7a79787674716d68635d564f473f372e241b1107000000000000000000000000000000101c2936434f5c69768390908376695c4f4336291c100300000000000000000000000000000000101c2936434f5c69768390908376695c4f4336291c1003000000000000000013202c3946535f6c7986938c807366594c403326190d0000000000000000000000070e151b21272c3034383b3e404243454546464646454442403e3b3834302c27211b150e07000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000006111c262f383f4346464646464646464644403a32291f14090000000f1b2834414d59646d70707070707070706d655a4e4235291c0f030006131f2c3845515c676f70707070707070706b62564a3e3225180c0000020b141c23282c2e2e2e2e2e2e2e2e2d29241e160d040000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000006121e2a36414d5965717d8994a0a89c9084787d8995a1a1968a7e72665a4e42362a1e13070000000000000000000000000013202c3946535f6c798693a0acaca09386796c5f5348484848484848484848484848484848484848484848484848484848484845403930261c11060000000004101c2834404d5965717d8994a0aca3978b8074695e544a4139343130313439414a545f6a75808c97a3aba094897d7165594d4135281c10040000000000000000000000000000000000000c17232e38424a5053535353535353535353504941382d22170b00000000000000000000000000000000000000000000000000000000020a11191f262c31363b3f43474a4c4e505152535353535352504e4c4a47433f3b36312b251f1811090200000000000000000000000000000000000000000000000000000000000000000000000000000000000000000008121c242c3236393937332d251d140a000000000000000000000000000000030f1b27333f4b57636e7a86919da8b1a69a8f847a6f655a51473e352d261f1a1612100e0d0d0d0e1012161a20262d353e47515b65707a85909ca7afa4998d82766a5e53473b2f23170b000000020e1a26323d4955616d7884909ca8ada195897d72665a4e42362a1f130700000000000000000000000000000004101c2834404c58636f7b87939faba99d9185796e62564a3e32271b0f0300000000010b151f29333d47515c66707b86909ba69e93897e74695e54493e33281d120700000000000000000000000000000000000000000000000e1b2834414e5a6774818e9a9e9184776b5e5144382b1e110500000000000000000000000000000000101c2936434f5c697683909ca9aa9d9084776a5e656b71767b7e818485868787868583807d78746e686159514940372d23190f050000000000000000000000000000101c2936434f5c69768390908376695c4f4336291c100300000000000000000000000000000000101c2936434f5c69768390908376695c4f4336291c1003000000000000000013202c3946535f6c7986938c807366594c403326190d000000000000000000000000040a10161b2024282b2f3133353738393939393938373534312f2c2824201b16100a03000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000a141d262d333739393939393939393938342f2820170d02000000101c2936434f5c69757d7d7d7d7d7d7d7d766a5d5043372a1d1004000714202d3a4753606d797d7d7d7d7d7d7d7d7366594d4033261a0d00000a141d262e34383b3b3b3b3b3b3b3b39352f281f160c020000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000b17232f3a46525e6a76828d99a5a4988c80747985919da69a8e82766a5f53473b2f23170b0000000000000000000000000013202c3946535f6c798693a0acaca09386796c5f55555555555555555555555555555555555555555555555555555555555555514b42382e23170b000000000713202c3844515d6975818d99a5aa9e92867a6f63584d42382f28242324282f38434d58646f7b87929eaaa5998d8175695d5145382c201407000000000000000000000000000000000004101c28343f4a545c606060606060606060605b53493f33271b0f030000000000000000000000000000000000000000000000000000040c141c232a31373d42474b4f5356595b5d5e5f606060605f5e5d5b5956534f4b47423c363029231b130b030000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000a121a21262a2c2c2a27221b130b0200000000000000000000000000000007131f2b37434f5b67737f8b97a2aeaba095897e73685d53493f352c231b140e090603000000000003060a0e141b232c353f49535e69747f8a96a1adaa9e92877b6f63574b3f33271b0f030000000915212d3944505c6874808b97a3afa69a8e82766a5f53473b2f23170b0000000000000000000000000000000915212d3944505c6874808c98a4afa4988c8175695d51453a2e22160a000000000000030d17212b353f4a545f69747f8a949fa59b90867b70655a4f44392e23180d01000000000000000000000000000000000000000000000e1b2834414e5b6774818e9b9e9184786b5e5145382b1e120500000000000000000000000000000000101c2936434f5c697683909ca9aa9d9084776a6870767d82878b8e909293949393918f8d89857f79726b635b52493f352b21160c0100000000000000000000000000101c2936434f5c69768390908376695c4f4336291c100300000000000000000000000000000000101c2936434f5c69768390908376695c4f4336291c1003000000000000000013202c3946535f6c7986938c807366594c403326190d0000000000000000000000000000050a0f14181c1f222527292a2b2c2c2c2c2c2b2a292725221f1c18140f0a05000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000020b141c22272b2c2c2c2c2c2c2c2c2c2b28231d160e0500000000101c2936434f5c6976838a8a8a8a8a8a84776a5d5044372a1d1104000714202d3a4753606d7a878a8a8a8a8a8a807366594d4033261a0d0006111c262f383f45484848484848484846413a31281e1309000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000004101c27333f4b57636e7a86929eaaa094887c7074818d99a59f93877b6f63574b3f34281c100400000000000000000000000013202c3946535f6c798693a0acaca09386796c62626262626262626262626262626262626262626262626262626262626262615c544a3f34281c0f030000000a17232f3c4854606d7985919da9a69a8e82766a5e52473b30261d1817181d26313c47535e6a76828e9aa6a99d9185796d6154483c3023170b000000000000000000000000000000000006131f2c3845505c666c6d6d6d6d6d6d6d6d6c655b5044382b1f120600000000000000000000000000000000000000000000000000040d161e262e353c42484e53585c5f626567696b6c6d6d6d6d6c6b696865625f5b57524d48423b342d251d150d040000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000810161a1e1f201e1b16100901000000000000000000000000000000000a16232f3b47535f6c7884909ba7b2a69b8f84786d61564c41372d231a110a030000000000000000000000030a111a232d37424c57636e7985919ca8afa3978c8074685c4f43372b1f130600000005101c2834404b57636f7b87929eaaaa9f93877b6f63574b4034281c100400000000000000000000000000020e1a25313d4955616d7985919ca8ab9f94887c7064584c4135291d110500000000000000050f19232e38434d58626d78838e99a4a2978c82776c61564b4034291e1307000000000000000000000000000000000000000000000f1b2835424e5b6875818e9b9e9285786b5e5145382b1e120500000000000000000000000000000000101c2936434f5c697683909ca9aa9d9084776a727a81888e93979a9d9ea0a0a09f9e9c9995908b847d756d645b51473d33281d120700000000000000000000000000101c2936434f5c69768390908376695c4f4336291c100300000000000000000000000000000000101c2936434f5c69768390908376695c4f4336291c1003000000000000000013202c3946535f6c7986938c807366594c403326190d0000000000000000000000000000000003080c0f1316181a1c1d1e1f2020201f1f1e1c1a181613100c0803000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000020a11171b1e2020202020202020201f1c18120c040000000000101c2936434f5c69768390969696969084776a5d5044372a1d1104000714202d3a4753606d7a8794969696968d807366594d4033261a0d000b17222d38424a515455555555555555524c433a30251a0f04000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000914202c3844505c67737f8b97a3a89c9084786c707c8894a0a3978b8074685c5044382c20140900000000000000000000000013202c3946535f6c798693a0acaca09386796f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6d665c5044382b1f12050000000d1a26323f4b5764707c8995a1ada2968a7e7165594d41362a1f140b0a0b151f2b36424e5a66727e8a96a3aea195897d7064584b3f33261a0e01000000000000000000000000000000000814212e3b4754606d787a7a7a7a7a7a7a7a776c6053463a2d201407000000000000000000000000000000000000000000000000040d161f2830383f474d54595f63686c6f7274767779797a7a7979787674726f6b67635e59534d463f372f271f160d03000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000040a0e111313110f0a050000000000000000000000000000000000010d1a26323f4b57636f7c8894a0acaea2968a7e72675b50453a2f251b110800000000000000000000000000000008111b25303b46515d6874808c98a4b0a89c9084786c5f53473b2f22160a000000000c17232f3b47525e6a76828e99a5afa3978c8074685c5044382d21150a0a0a0a0a0a0a0a0a0a0a0a0a0a0a121e2a36424e5a65717d8995a1ada69b8f83776b5f54483c3024180d01000000000000000007111c26313b46515c66717c88939ea99e93887d72675c51463a2f24180d010000000000000000000000000000000000000000000f1b2835424e5b6875828e9b9f9285786b5f5245382c1f120500000000000000000000000000000000101c2936434f5c697683909ca9aa9d908477727b848c93999f9d9b9a9a9a9a9c9fa2a7a5a19c968f877f766d63594f443a2f24190e02000000000000000000000000101c2936434f5c69768390908376695c4f4336291c100300000000000000000000000000000000101c2936434f5c69768390908376695c4f4336291c1003000000000000000013202c3946535f6c7986938c807366594c403326190d000000000000000000000000000000000000000306090c0e0f111212131313131211100e0c0907030000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000060b0f1213131313131313131312100c0701000000000000101c2936434f5c697683909ca3a39d9084776a5d5044372a1d1104000714202d3a4753606d7a8794a0a3a39a8d807366594d4033261a0d000f1b27333f4a545c61616161616161615d564c41362c21160b000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000010d1925313d4854606c7884909ca7a4988c8073676c7884909ca89c9084786c6054493d3125190d01000000000000000000000013202c3946535f6c798693a0acaca093867b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b786c605346392d201307000003101c2935424e5b6773808c98a5ac9f93877a6e6255493d3125190e0200030e1a25313d4956626e7a87939faca5998c8074675b4f4236291d1004000000000000000000000000000000000815212e3b4854616e7b87878787878787877a6d6053473a2d2014070000000000000000000000000000000000000000000000020c161f28313a424a51585f656a6f74787b7e8183848586868786868483817e7b78736f6a645e575049413931281f160c02000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000004101d2936424e5b6773808c98a4b0a99d9185796d62564a3f34291e1309000000000000000000000000000000000009141e2a35404c58636f7b8794a0acaca094887c6f63574a3e3225190d0000000007131e2a36424e5965717d8995a0aca89c9084786d6155493d31251917171717171717171717171717171717232f3b47525e6a76828e9aa6ada2968a7e72665b4f43372b1f1408000000000000000000000a151f2a343f4a55606b76818d98a3a59a8f84786d62574c4035291e12070000000000000000000000000000000000000000000f1c2835424f5b6875828f9c9f9285786b5f5245392c1f120600000000000000000000000000000000101c2936434f5c697683909ca9aa9d9084777b848d969d9894918f8d8d8d8e8f92969ba1a8a7a09991887e756b61564b40352a1f1308000000000000000000000000101c2936434f5c69768390908376695c4f4336291c100300000000000000000000000000000000101c2936434f5c69768390908376695c4f4336291c1003000000000000000013202c3946535f6c7986938c807366594c403326190d000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000101c2936434f5c697683909ca9aa9d9084776a5d5044372a1d1104000714202d3a4753606d7a8794a0ada69a8d807366594d4033261a0d00121e2b37434f5b666d6e6e6e6e6e6e6e685e53483d32281d1207000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000006121e2a36414d5965717d8994a0aca094887b6f636874808c98a4a195897d7165594d4135291e1206000000000000000000000013202c3946535f6c798693a0acada1958b888888888888888888888888888888888888888888888888888888888888888886796d6053463a2d201307000006121f2b3844515d6a76838f9ca8a99c9084776b5e5246392d2115090000000915212d3a46525e6b7784909ca9a89c9083776a5e5145382c1f1306000000000000000000000000000000000815212e3b4854616e7b88949494949494877a6d6053473a2d20140700000000000000000000000000000000000000000000000a141e28313a434c545c636a70767b8084888b8d8f91929393939392918f8d8b8784807b756f69625b534b433a31281e140a00000000000000000000000000040708090909090909090909090909090909090909090909090909090909090909090909090909090909090909080704000000000000000000000713202c3845515e6a76838f9ca8b2a6998d8175695d5145392e22170c010000000000000000000000000000000000020d18242f3b47535f6b7784909ca8b0a4988b7f73665a4e4135281c0f03000000020e1a25313d4955606c7884909ca7ada195897d7165594e42362a232323232323232323232323232323232328333f4b57636f7b87929eaaa99d9185796d62564a3e32271b0f0300000000000000000000030d18232e39444f5a65707b87929da9a0958a7e73685d51463a2f23180c0000000000000000000000000000000000000000000f1c2936424f5c6875828f9c9f9286796c5f5246392c1f130600000000000000000000000000000000101c2936434f5c697683909ca9aa9d908378838d9697918c8884828180808183868a8f969da5aba39a91877d72685d52473b3024190d010000000000000000000000101c2936434f5c69768390908376695c4f4336291c100300000000000000000000000000000000101c2936434f5c69768390908376695c4f4336291c1003000000000000000013202c3946535f6c7986938c807366594c403326190d000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000002070b0d0f0e0c09050000000000000000000001060a0d0e0e0d0a06010000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000101c2936434f5c697683909ca9aa9d9084776a5d5044372a1d1104000714202d3a4753606d7a8794a0ada69a8d807366594d4033261a0d0013202c3946525f6c777b7b7b7b7b7b7a6f645a4f44392e23190e03000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000b17232e3a46525e6a75818d99a5a89b9083776b5f636f7b8894a0a5998d81756a5e52463a2e22160a000000000000000000000013202c3946535f6c798693a0acb1a69d96959595959595959595959595959595959595959595959595959595959595959386796d6053463a2d20130700000814212e3a4753606c7985929eaba69a8d8174685b4f42362a1d110500000005111e2a36434f5b6874818d9aa6ab9f9286796d6054473b2e221509000000000000000000000000000000000815212e3b4854616e7b8894a0a0a0a094877a6d6053473a2d2014070000000000000000000000000000000000000000000007111c26303a434d555e666d747b81878c9094979a9c9e9fa0a0a0a09f9e9c9a9794908b86817a746d655d554c433a30261c120700000000000000000000070c1114151515151515151515151515151515151515151515151515151515151515151515151515151515151515151513100b0500000000000000000916222f3b4854616d7986929fabafa2968a7d7165594d4135291d11060000000000000000000000000000000000000007131f2b37434f5b6774808c99a5b2a79b8f8276695d5044372b1e1205000000000915212c3844505c67737f8b97a3aea59a8e82766a5e52463b303030303030303030303030303030303030303844505c6873808b97a3afa4988c8175695d5145392e22160a00000000000000000000000007111c27323d48535f6a75818c98a3a69b9085796e62574b4034281d110500000000000000000000000000000000000000000f1c2936424f5c6975828f9c9f9286796c5f5346392c20130600000000000000000000000000000000101c2936434f5c697683909ca9a99c90837f8a94948d86807b787574737374767a7e848b939ca5aca3998f84796e63584c41352a1e12060000000000000000000000101c2936434f5c69768390908376695c4f4336291c100300000000000000000000000000000000101c2936434f5c69768390908376695c4f4336291c1003000000000000000013202c3946535f6c7986938c807366594c403326190d00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000004090e13171a1b1b1915110b0300000000000000050c1216191b1b1a16120d0803000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000101c2936434f5c697683909ca9aa9d9084776a5d5044372a1d1104000714202d3a4753606d7a8794a0ada69a8d807366594d4033261a0d00131f2c3945525e6b7681888888888881766b60564b40352a1f150a00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000004101b27333f4b57636e7a86929eaaa3978b7f73675b5f6b7784909ca89e92867a6e62564a3f33271b0f030000000000000000000013202c3946535f6c798693a0acb8afa7a3a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a09386796d6053463a2d20130700000a1623303c4955626f7b8894a1ada4988b7e7265594c4033271a0e01000000020e1a2733404c5965727e8b98a4aea195887c6f6356493d3024170b000000000000000000000000000000000815212e3b4854616e7b8894a1adada094877a6d6053473a2d201407000000000000000000000000000000000000000000030e19232e38424c555f6770787f868d92989ca0a3a6a9aaa9a8a8a8a8a9aaa9a6a3a09c97928c867e776f675e554c42382e24190f0400000000000000020b12181d2022222222222222222222222222222222222222222222222222222222222222222222222222222222222222221f1c171009010000000000000b1824313d4a5763707c8995a2aeac9f93877a6e6155493d3024180c0100000000000000000000000000000000000000020e1b27333f4b5864717d8a96a3afaa9e9185786c5f53463a2d2114070000000004101c28333f4b57636e7a86929ea9aa9e92867a6f63574b3f3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d4954606c7884909ca8ab9f93887c7064584c4035291d1105000000000000000000000000000b16212c37424e5964707b87929eaaa1968a7f73685c5145392d22160a0000000000000000000000000000000000000000101c2936434f5c6976838f9ca09386796c5f5346392c20130600000000000000000000000000000000101c2936434f5c697683909ca9a89b8f828590948a827b756f6c69676666686a6e7379818a939da8aba0968b8074695d52463a2e22170a0000000000000000000000101c2936434f5c69768390908376695c4f4336291c100300000000000000000000000000000000101c2936434f5c69768390908376695c4f4336291c1003000000000000000013202c3946535f6c7986938c807366594c403326190d00000000000000000000000000000000000000000000000000000000000000000000000000000000000001060b10151a1f2427282825211c150e050000000000070f171d2226282826221e19140f0a0500000000000000000000000000000000000000000000000000000000000000000000000000000000000000101c2936434f5c697683909ca9aa9d9084776a5d5044372a1d1104000714202d3a4753606d7a8794a0ada69a8d807366594d4033261a0d00111d2a36424e59646f7a858f959592887d72675c51473c31261b110600000000000000000000000000000000000000000000000000000000000000000000000000000000000000000814202c3844505b67737f8b97a3ab9f93877b6f63575b6773808b97a4a2968b7e73675b4f43372b1f14080000000000000000000013202c3946535f6c798693a0acb9b1aaa6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a09386796d6053463a2d20130700000c1825313e4b5764717d8a96a3afa296897c7063574a3e3124180b00000000000b1824313d4a5763707c8996a2afa4978b7e7165584b3f3226190c000000000000000000000000000000000815212e3b4854616e7b8894a1aeada094877a6d6053473a2d20140700000000000000000000000000000000000000000009141f2a353f4a545e677179828a91989ea3a8aca7a4a19e9d9c9b9b9c9d9ea1a4a7aca8a39d979089817970675e544a40352b20150a000000000000020c141c23292d2f2f2f2f2f2f2f2f2f2f2f2f2f2f2f2f2f2f2f2f2f2f2f2f2f2f2f2f2f2f2f2f2f2f2f2f2f2f2f2f2f2f2f2e2c28221b130a0000000000000d1a26333f4c5965727e8b98a4b1a99d9084776b5e5245392d2014080000000000000000000000000000000000000000000b1723303c4855616e7a8794a0adada094877b6e6255483c2f23160900000000000b17232f3a46525e6a75818d99a5afa3978b7f73675c504a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4d5965717d8995a0aca69a8f83776b5f53483c3024180c0100000000000000000000000000040f1b26313c48535f6a76828d99a5a79b9084796d61564a3e32261b0f0300000000000000000000000000000000000000101d293643505c697683909ca09386796d6053463a2d20130700000000000000000000000000000000101c2936434f5c697683909ca9a99c91888b958b81787069645f5c5a595a5b5e62686f78818b96a1aca79c91857a6e62574b3f33271b0e0200000000000000000000101c2936434f5c69768390908376695c4f4336291c100300000000000000000000000000000000101c2936434f5c69768390908376695c4f4336291c1003000000000000000013202c3946535f6c7986938c807366594c403326190d0000000000000000000000000000000000000000000000000000000000000000000000000000000003080d12171c21262b30333534322d271f170e0400000006101921282e323535322e2925201b16110c070200000000000000000000000000000000000000000000000000000000000000000000000000000000101c2936434f5c697683909ca9aa9d9084776a5d5044372a1d1104000714202d3a4753606d7a8794a0ada69a8d807366594d4033261a0d000e1a26323d48525d68737e89939e998e84796e63584d43382d22170c02000000000000000000000000000000000000000000000000000000000000000000000000000000000000010d1925313d4854606c7884909ba7a79b8f83776b5f5357636f7b87939fa79b8f83776b5f54483c3024180c0000000000000000000013202c3946535f6c798693a0acb3a89f9a999999999999999999999999999999999999999999999999999999999999999386796d6053463a2d20130700000d1a2633404c5966727f8c98a5ada194877b6e6155483c2f22160900000000000916222f3b4855616e7b8794a1ada6998c8073665a4d4134271b0e010000000000000000000000000000000815212e3b4854616e7b8894a1a4a4a094877a6d6053473a2d2014070000000000000000000000000000000000000000030e1a25313c47515c667079838b949ba3a9aca5a09b979492908f8f8f8f909294989ba0a6aca8a29b938b82796f665c52473c32271c100500000000000a141e262e34393b3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3b38332d251c120800000000000f1b2835414e5a6774818d9aa6b3a79b8e8275685c4f43362a1d11050000000000000000000000000000000000000000000814202d3946535f6c7885919eabafa396897d7063574a3e3124180b000000000006121e2a36414d5965717c8894a0aca79c9084786c6056565656565656565656565656565656565656565656565e6a75828d99a5ada2968a7e72665a4f43372b1f14080000000000000000000000000000000914202b37424e5965717c8894a0aca1958a7e72665b4f43372b1f130700000000000000000000000000000000000000101d2a3643505d697683909da09386796d6053473a2d20140700000000000000000000000000000000101c2936434f5c697683909ca9ada29a95968e83796f665f5853504e4d4d4e51565d666f79848f9aa6ada2968b7f73675b4f43372b1e120600000000000000000000101c2936434f5c69768390908376695c4f4336291c100300000000000000000000000000000000101c2936434f5c69768390908376695c4f4336291c1003000000000000000013202c3946535f6c7986938c807366594c403326190d0000000000000000000000000000000000000000000000000000000000000000000000000000050a0f14191e23282d31363b4041413e38312920160b0000020d18222b333a3f41413f3a35302b26221d18130e09040000000000000000000000000000000000000000000000000000000000000000000000000000101c2936434f5c697683909ca9aa9d9084776a5d5044372a1d1104000714202d3a4753606d7a8794a0ada69a8d807366594d4033261a0d000915202b36414c57616c77828d97a0958a80756a5f54493e34291e130800000000000000000000000000000000000000000000000000000000000000000000000000000000000006121e2a35414d5965717c8894a0aca2968a7e72665a4e535f6b77838f9ba7a094887c7064584c4034291d110500000000000000000013202c3946535f6c798693a0acaea2978e8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c86796d6053463a2d20130700000e1b2835414e5b6774818d9aa7ac9f9386796d6053473a2d21140700000000000714202d3a4653606c7986929faca79b8e8275685b4f4235291c0f030000000000000000000000000000000815212e3b4854616e7b88949898989894877a6d6053473a2d201407000000000000000000000000000000000000000008141f2b36424d58636d78828c959da6ada8a19a948f8b888584828282828485888b8f949aa1a8aca59d948b82786e63594e43382d22160b0000000006111c26303840454848484848484848484848484848484848484848484848484848484848484848484848484848484848484848443e372e24190e0300000000101d2936434f5c6975828f9ba8b2a5998c8073665a4d4034271b0e0200000000000000000000000000000000000000000005121e2b3744515d6a7683909ca9b1a4988b7e7265584c3f3226190c0000000000020d1925313d4854606c78848f9ba7aca094897d71656363636363636363636363636363636363636363636363636e7a86929eaaa99d9185796d62564a3e32261b0f03000000000000000000000000000000030f1a26313d4854606c77838f9ba7a69a8f83776b5f53473b2f23170b00000000000000000000000000000000000000111d2a3744505d6a7683909da094877a6d6053473a2d20140700000000000000000000000000000000101c2936434f5c697683909ca9b4aba59f93887c72675d544d474341404042454c545d68737e8a95a1ada79b8f84776b5f53473b2e22160900000000000000000000101c2936434f5c69768390908376695c4f4336291c100300000000000000000000000000000000101c2936434f5c69768390908376695c4f4336291c1003000000000000000013202c3946535f6c7986938c807366594c403326190d000000000000000000000000000000000000000000000000000000000000000000000002070c11161b20252a2e33383d42474c4e4d4a433b32271d11060008141f2a343d454b4e4e4b46413c37322d28231f1a15100b06010000000000000000000000000000000000000000000000000000000000000000000000101c2936434f5c697683909ca9aa9d9084776a5d5044372a1d1104000714202d3a4753606d7a8794a0ada69a8d807366594d4033261a0d00040f1a252f3a45505b65707b86919c9c91867b71665b50453a30251a0f0400000000000000000000000000000000000000000000000000000000000000000000000000000000000b17222e3a46525e6a75818d99a5a99d92867a6e62564a4f5b67737f8b97a3a4988c8175695d5145392d21150900000000000000000013202c3946535f6c798693a0acaca093867f7f7f7f7f7f7f7f7f7f7f7f7f7f7f7f7f7f7f7f7f7f7f7f7f7f7f7f7f7f7f7f7f796d6053463a2d2013070000101c2936424f5c6975828f9ba8ab9e9285786b5f5245392c1f1206000000000006121f2c3845525e6b7884919eaba99c908376695d5043372a1d11040000000000000000000000000000000815212e3b4854616e7b888b8b8b8b8b8b877a6d6053473a2d20140700000000000000000000000000000000000000000c1824303c47535e69747f8a949ea7afa69e968f89847f7b79777575757577797b7f84898f969ea6afa69d948a80756a6055493e33271c10040000000b17222d38424a515555555555555555555555555555555555555555555555555555555555555555555555555555555555555554504940362b20140800000000111e2a3744515d6a7783909da9b1a4978b7e7165584b3f3225190c0000000000000000000000000000000000000000000002101c2936424f5c6875828e9ba8b3a6998c8073665a4d4034271a0d0000000000000814202c38444f5b67737e8a96a2aea5998d817570707070707070707070707070707070707070707070707070737f8b97a2aea4988c8175695d5145392d22160a00000000000000000000000000000000000915202c38434f5b67737f8b97a3ab9f93887b7064584c4034271b0f03000000000000000000000000000000000000111d2a3744505d6a7784909da094877a6d6154473a2e21140700000000000000000000000000000000101c2936434f5c697683909ca9b6b2a59a8e82766b60554b423c37343334353a424c56616d7985919da9aca094887b6f63564a3e3125190c00000000000000000000101c2936434f5c69768390908376695c4f4336291c100300000000000000000000000000000000101c2936434f5c69768390908376695c4f4336291c1003000000000000000013202c3946535f6c7986938c807366594c403326190d00000000000000000000000000000000000000000000000000000000000000000004090e13181d22272b30353a3f44494e53585b5a554d44392e22160a000d1925303b464f565a5b57524d48433e39342f2a25201c17120d0803000000000000000000000000000000000000000000000000000000000000000000101c2936434f5c697683909ca9aa9d9084776a5d5044372a1d1104000714202d3a4753606d7a8794a0ada69a8d807366594d4033261a0d000008131e29333e49545f69747f8a95a0988d82776c62574c41362c21160b0000000000000000000000000000000000000000000000000000000000000000000000000000000004101b27333f4b57626e7a86929eaaa5998d8175695d51454a57636f7b87939fa99d9185796d6155493e32261a0e02000000000000000013202c3946535f6c798693a0acaca0938679727272727272727272727272727272727272727272727272727272727272727271685d5145382c1f13060000111d2a3743505d6a7683909da9aa9d9084776a5d5144372b1e1105000000000004111e2a3744515d6a7784909daaaa9d9184776b5e5144382b1e12050000000000000000000000000000000815212e3b4754616e7a7e7e7e7e7e7e7e7e796d6053473a2d2014070000000000000000000000000000000000000004101d2935414d58646f7b86919ca6afa79d948c847d78736f6c6a696868696a6c6f73787e848c949da6afa69c91877c71665b4f44382c2115090000000f1b27333f4a545c61626262626262626262626262626262626262626262626262626262626262626262626262626262626262605a52473c3125190c00000000121f2b3845515e6b7884919eabb0a3968a7d7063574a3d3024170a00000000000000000000000000000000000000000000000e1b2834414e5a6774818d9aa7b4a79a8e8174675b4e4134281b0e000000000000040f1b27333f4a56626e7a86919da9aa9e92867d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d848f9ba7ab9f93877b7064584c4035291d11050000000000000000000000000000000000040f1b27333f4a56626e7a86939faba4988c8074685c5044382b1f1307000000000000000000000000000000000000111e2a3744515d6a7784919da194877a6d6154473b2e21140800000000000000000000000000000000101c2936434f5c697683909ca9b6aea195897d71655a4f4439312b28272729303a45505c6874818c99a5b0a4978b7e72665a4d4134281b0f02000000000000000000101c2936434f5c69768390908376695c4f4336291c100300000000000000000000000000000000101c2936434f5c69768390908376695c4f4336291c1003000000000000000013202c3946535f6c7986938c807366594c403326190d00000000000000000000000000000000000000000000000000000000000001060b10151a1f23282d32373c41464b50555a5f6468665f554a3f33261a0e00101d2935414d58616767625d59544f4a45403b36312c27221d18140f0a0500000000000000000000000000000000000000000000000000000000000000101c2936434f5c697683909ca9aa9d9084776a5d5044372a1d1104000714202d3a4753606d7a8794a0ada69a8d807366594d4033261a0d0000010c17222d37424d58636e78838e999f94897e73685e53483d32271d12070000000000000000000000000000000000000000000000000000000000000000000000000000000814202c38444f5b67737f8b97a2aca094897c7165594d4146525e6a77838f9ba7a1968a7e72665a4e42362a1e1307000000000000000013202c3946535f6c798693a0acaca09386796c65656565656565656565656565656565656565656565656565656565656565655f564c4135291d10040000121e2b3844515e6b7784919eaaa99c908376695d5043362a1d1004000000000000101d293643505c6976838f9ca9ab9e9285786b5f5245392c1f12060000000000000000000000000000000714202d3946525e6970717171717171717170685d5145382c1f1306000000000000000000000000000000000000000814202d3945515d6975818c97a2ada99f958b827a736c6763605d5c5b5b5c5d6063676c737a828a949da7aea3988e82776c6055493d3125190d010000121e2b3743505b666d6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6c64594d4134281b0f00000000121f2c3945525f6b7885929fabafa295897c6f6256493c2f23160900000000000000000000000000000000000000000000000d1a2733404d596673808d99a6b3a89b8e8275685b4f4235281c0f000000000000000b16222e3a46525d6975818d98a4aea2978d8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8b94a0aca69a8f83776b5f53473c3024180c000000000000000000000000000000000000000b16222e3a46525e6a76828e9ba7a89c9084786c6054473b2f23170a000000000000000000000000000000000000111e2b3744515e6a7784919ea194887b6e6154483b2e21150800000000000000000000000000000000101c2936434f5c697683909ca9b6aa9e9285796d6155493d32271f1b1a1a1e2834404c5864707d8995a2aea79b8e8275695c5043372a1e1105000000000000000000101c2936434f5c69768390908376695c4f4336291c100300000000000000000000000000000000101c2936434f5c69768390908376695c4f4336291c1003000000000000000013202c3946535f6c7986938c807366594c403326190d0000000000000000000000000000000000000000000000000000000003080d12171c20252a2f34393e43484d52575c61656a6f7471675b4f4236291c1000121f2c3845515e6973736e69645f5a55514c47423d38332e29241f1a15100c070200000000000000000000000000000000000000000000000000000000101c2936434f5c697683909ca9aa9d9084776a5d5044372a1d1104000714202d3a4753606d7a8794a0ada69a8d807366594d4033261a0d00000005101b26313c46515c67727c87929d9a90857a6f64594f44392e23190e0300000000000000000000000000000000000000000000000000000000000000000000000000010d1925313d4854606c78848f9ba7a89c9084786c6054483c424e5a66727e8b97a3a69a8e82766a5f53473b2f23170b000000000000000013202c3946535f6c798693a0acaca09386796c5f59595959595959595959595959595959595959595959595959595959595958544d443a3024180d000000121f2c3845525f6b7885929eaba89c8f8275695c4f4236291c10030000000000000f1c2935424f5b6875828f9ba8ac9f9286796c5f5346392d20130600000000000000000000000000000005111d2a36414c575f646464646464646464645f564c4135291d1004000000000000000000000000000000000000000b1724303c4955616d7985919da9aea2988d83797068615b5753514f4f4f4f5153575b61687078828b95a0abaa9f94887d7165594e4236291d1105000013202c3946525f6c787b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b75695c5043362a1d100000000013202c3946525f6c7986929facaea295887b6f6255483c2f22150900000000000000000000000000000000000000000000000d192633404c596673808c99a6b2a89c8f8275685c4f4236291c0f0000000000000006121d2935414d5864707c88949faba89f98969696969696969696969696969696969696969696969696969696979da6ada1968a7e72665a4f43372b1f13080000000000000000000000000000000000000006121e2a36424e5a66727e8b97a3ada194887c7064574b3f33261a0e010000000000000000000000000000000000111e2b3844515e6b7784919ea194887b6e6155483b2e22150800000000000000000000000000000000101c2936434f5c697683909ca9b4a79b8e8275695d5145382d21160f0d0d1824303c4854616d7a86939facaa9e9185786b5f5246392d201307000000000000000000101c2936434f5c69768390908376695c4f4336291c100300000000000000000000000000000000101c2936434f5c69768390908376695c4f4336291c1003000000000000000013202c3946535f6c7986938c807366594c403326190d0000000000000000000000000000000000000000000000000000050a0f14181d22272c31363b40454a4f54595d62676c71767b8076695d5043362a1d100013202c3946535f6c797f7a75706b66615c57524e49443f3a35302b26211c17120d09040000000000000000000000000000000000000000000000000000101c2936434f5c697683909ca9aa9d9084776a5d5044372a1d1104000714202d3a4753606d7a8794a0ada69a8d807366594d4033261a0d000000000a141f2a35404a55606b76818b96a1968c81766b60554b40352a1f140a0000000000000000000000000000000000000000000000000000000000000000000000000006121e2935414d5965717c8894a0aca3978b8073675c5044383e4a56626e7a86939fab9f93877b6f63574b3f34281c10040000000000000013202c3946535f6c798693a0acaca09386796c5f534c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c49433b32291e1308000000131f2c3946525f6c7986929faca89b8e8275685b4f4235281c0f020000000000000f1b2835424e5b6875818e9ba8ada09386796d6053473a2d201407000000000000000000000000000000010d1925303b454d5457575757575757575757534d443a2f24180d00000000000000000000000000000000000000000d1a26333f4c5865717d8a96a2aea89d91867b71675e56504b47444342424344474b50565e666f79848e99a4b0a5998e82766a5e5246392d211508000013202c3946535f6c7986888888888888888888888888888888888888888888888888888888888888888888888888888888888376695d5043362a1d100000000013202c3946535f6c798693a0acaea295887b6e6155483b2e22150800000000000000000000000000000000000000000000000c1926323f4c5965727f8c99a6b2a99c8f8275695c4f4236291c0f00000000000000010d1924303c48545f6b77838f9ba6b1a9a4a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a4a8afa99d9185796d61564a3e32261a0f0300000000000000000000000000000000000000010d1926323e4a56626f7b8793a0aca4988c8073675b4e4236291d11040000000000000000000000000000000000121e2b3845515e6b7885919ea295887b6e6155483b2e22150800000000000000000000000000000000101c2936434f5c697683909ca9b1a5988c7f73665a4d4135281c1004000714202c3945525e6b7784909daaaca093877a6e6154483b2f221509000000000000000000101c2936434f5c69768390908376695c4f4336291c100300000000000000000000000000000000101c2936434f5c69768390908376695c4f4336291c1003000000000000000013202c3946535f6c7986938c807366594c403326190d000000000000000000000000000000000000000000000002070c11151a1f24292e33383d42474c51565a5f64696e73787d82878376695d5043362a1d100013202c3946535f6c798686817c77726d68635e59544f4a46413c37322d28231e19140f0a06010000000000000000000000000000000000000000000000101c2936434f5c697683909ca9aa9d9084776a5d5044372a1d1104000714202d3a4753606d7a8794a0ada69a8d807366594d4033261a0d00000000030e18232e39444e59646f7a858f9a9d92887d72675c51463c31261b10060000000000000000000000000000000000000000000000000000000000000000000000000b17222e3a46525e6975818d99a5aa9f93877b6f63574b3f333a46525e6a76828e9aa6a3978b8074685c5044382c2014080000000000000013202c3946535f6c798693a0acaca09386796c5f53463f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3c38312920170c0200000013202c3946535f6c7986939faca89b8e8275685b4e4235281b0f020000000000000e1b2834414e5b6774818e9ba7ada094877a6d6053473a2d211407000000000000000000000000000000000915202c36404950555555555555555555544e473e33281e130700000000000000000000000000000000000000000f1c2935424e5b6774818d99a6b0a4988c8075695f554c453f3b3836353536383b3f454c545d67727d88939faaaa9e92867a6e6256493d3124180b000013202c3946535f6c7986939595959595959595959595959595959595959595959595959595959595959595959595959595908376695d5043362a1d100000000013202c3946535f6c7986929facaea295887b6e6155483b2f22150800000000000000000000000000000000000000000000000d192633404c5966727f8c99a6b2a89c8f8275695c4f4236291c0f00000000000000000814202b37434f5b66727e8a96a2adb4b1a9a29f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9fa1a7afb3b0a4988c8074695d5145392d22160a0000000000000000000000000000000000000000000916222e3a46535f6b7784909ca9a89c8f83776a5e5245392d2014070000000000000000000000000000000000121f2b3845515e6b7885929ea295887b6f6255483c2f22150900000000000000000000000000000000101c2936434f5c697683909ca9afa396897d7064574b3e3225190c000004111d2a36434f5c6975828f9ba8afa295897c6f63564a3d3024170a000000000000000000101c2936434f5c69768390908376695c4f4336291c100300000000000000000000000000000000101c2936434f5c69768390908376695c4f4336291c1003000000000000000013202c3946535f6c7986938c807366594c403326190d00000000000000000000000000000000000000000004090e12171c21262b30353a3f44494e52575c61666b70757a7f84898e908376695d5043362a1d100013202c3946535f6c7986928d88837e79746f6a65605b56514c48433e39342f2a25201b16110c0703000000000000000000000000000000000000000000101c2936434f5c697683909ca9aa9d9084776a5d5044372a1d1104000714202d3a4753606d7a8794a0ada69a8d807366594d4033261a0d000000000007121c27323d48525d68737e89939e998e83786e63584d42382d22170c0100000000000000000000000000000000000000000000000000000000000000000000040f1b27333f4b56626e7a86929ea9a69a8e82766a5e53473b2f36424e5a66727e8a96a2a89c9084786c6054493d3125190d0100000000000013202c3946535f6c798693a0acaca09386796c5f53463932323232323232323232323232323232323232323232323232323232302c2720170e050000000013202c3946535f6c798693a0aca89b8e8174675b4e4134281b0e020000000000000e1a2734414d5a6774818e9aa7aea194877a6d6154473a2e211407000000000000000000000000000000000d1925313d48525b61626262626262626260594f453a2e2216090000000000000000000000000000000000000000111e2a3744505d6a76838f9ca8ada094887b6f64584d433a332e2b292828292b2e333a424b56606b76828e9aa6afa3968a7e7265594c4034271b0e020013202c3946535f6c798693a0a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a29d908376695d5043362a1d1000000000131f2c3946525f6c7986929facafa295887b6f6255493c2f22160900000000000000000000000000000000000000000000000d1a2633404d596673808c99a6b3a89b8f8275685b4f4235281c0f0000000000000000030f1b27323e4a56626d7985919da9b4aba0979292929292929292929292929292929292929292929292959ea8b4ab9f93877b7064584c4035291d110500000000000000000000000000000000000000000006121e2a37434f5b6874818d99a6ab9f93867a6d6155483c2f23160a0000000000000000000000000000000001121f2c3845525f6b7885929fa295887b6f6255493c2f22160900000000000000000000000000000000101c2936434f5c697683909ca9aea194887b6e6255483c2f23160a0000010e1b2834414e5a6773818d9aa6b0a4978a7e7164584b3e3225180c000000000000000000101c2936434f5c69768390908376695c4f4336291c100300000000000000000000000000000000101c2936434f5c69768390908376695c4f4336291c1003000000000000000013202c3946535f6c7986938c807366594c403326190d00000000000000000000000000000000000001060a0f14191e23282d32373c41464b4f54595e63686d72777c81868b909599908376695d5043362a1d100013202c3946535f6c79869398938e8a85807b76716c67625d58534e4944403b36312c27221d18130e090400000000000000000000000000000000000000101c2936434f5c697683909ca9aa9d9084776a5d5044372a1d1104000714202d3a4753606d7a8794a0ada69a8d807366594d4033261a0d0000000000000b16202b36414c57616c77828d97a0958a80746a5f54493e33291e1308000000000000000000000000000000000000000000000000000000000000000000000814202c38434f5b67737f8b96a2ada1968a7e72665a4e42362a323e4a56626e7a86929eaaa195897d7165594d4135291e120600000000000013202c3946535f6c798693a0acaca09386796c5f5346392c26262626262626262626262626262626262626262626262626262524201b150e05000000000013202c3946535f6c798693a0aca89b8e8174675b4e4134281b0e010000000000000e1a2734414d5a6774818e9aa7aea194877a6d6154473a2e211407000000000000000000000000000000000f1c2835414d59646d6f6f6f6f6f6f6f6f6b61564a3e3225190c0000000000000000000000000000000000000000121f2c3845525e6b7884919eaaaa9d9184786b5f53473c3128221f1d1c1c1d1f2228303a444f5a66717d8a96a2a5a49a8d8175685c4f43362a1d11040013202c3946535f6c7986939e9e9e9e9e9e9e9e9e9e9e9e9e9e9e9e9e9e9e9e9e9e9e9e9e9e9e9e9e9e9e9e9e9e9e9e9e9d908376695d5043362a1d1000000000121f2c3845525f6b7885929eabafa296897c6f6356493d3023170a00000000000000000000000000000000000000000000000e1b2734414d5a6774818d9aa7b3a79b8e8174685b4e4235281b0f0000000000000000000a16222e3945515d6974808c98a4afa79b8f86868686868686868686868686868686868686868686868c98a4b1a69a8e83776b5f53473c3024180c00000000000000000000000000000000000000000000020e1b2733404c5865717e8a97a3afa296897d7064574b3e3225190c0000000000000000000000000000000004131f2c3945525f6c7885929fa296897c6f6255493c2f22160900000000000000000000000000000000101c2936434f5c697683909ca9aca09386796d6053473a2d2114070000000d1926333f4c5965727f8c98a5b2a5988c7f7266594c3f3326190d000000000000000000101c2936434f5c69768390908376695c4f4336291c100300000000000000000000000000000000101c2936434f5c69768390908376695c4f4336291c1003000000000000000013202c3946535f6c7986938c807366594c403326190d0000000000000000000000000000000003070c11161b20252a2f34393e43484c51565b60656a6f74797e83888d92969ba09d908376695d5043362a1d100013202c3946535f6c798693a09f9a95908b87827d78736e69645f5a55504b46413d38332e29241f1a15100b060100000000000000000000000000000000101c2936434f5c697683909ca9aa9d9084776a5d5044372a1d1104000714202d3a4753606d7a8794a0ada69a8d807366594d4033261a0d000000000000040f1a252f3a45505b65707b86919c9c91867b70665b50453a2f251a0f040000000000000000000000000000000000000000000000000000000000000000010d1925313c4854606c78848f9ba7a99d9185796d6155493d32262d3946525e6a76828e9aa6a5998d8175695e52463a2e22160a00000000000013202c3946535f6c798693a0acaca09386796c5f5346392c2019191919191919191919191919191919191919191919191919191714100a0300000000000013202c3946535f6c798693a0aca89b8e8174675b4e4134281b0e010000000000000e1a2734414d5a6774818e9aa7aea194877a6d6154473a2e21140700000000000000000000000000000000101d2a3743505d69767c7c7c7c7c7c7c7c73665a4d4033271a0d010000000000000000000000000000000000000013202c3946525f6c7986929faca89c8f8276695c5043372b1f1712100f0f1012171e28323d4955616d7a8692999998979084776b5e5245382c1f13060013202c3946535f6c7986929292929292929292929292929292929292929292929292929292929292929292929292929292908376695d5043362a1d1000000000111e2b3844515e6a7784919daab0a3978a7d7164574b3e3125180b00000000000000000000000000000000000000000000020f1c2935424f5b6875828e9ba8b3a69a8d8173675a4d4134271b0e00000000000000000005111d2935404c5864707b87939faba79b8f83797979797979797979797979797979797979797979808c98a4ada1968a7e72665a4e43372b1f130700000000000000000000000000000000000000000000000b1724303d4955626e7b8794a0ada5998c8073665a4d4134281b0f0200000000000000000000000000000006131f2c3946525f6c7986929fa296897c6f6356493c3023160900000000000000000000000000000000101c2936434f5c697683909ca9ab9f9285786c5f5245392c1f13060000000b1825323e4b5864717e8b98a4b1a69a8d8073675a4d4034271a0e000000000000000000101c2936434f5c69768390908376695c4f4336291c100300000000000000000000000000000000101c2936434f5c69768390908376695c4f4336291c1003000000000000000013202c3946535f6c7986938c807366594c403326190d000000000000000000000000000004090e13181d22272c31363b4044494e53585d62676c71767b80858a8e93989da2a49f9a908376695d5043362a1d100013202c3946535f6c7986939ba0a5a19c97928d88847e7a75706b66615c57524d48433e3935302b26211c17120d08030000000000000000000000000000101c2936434f5c697683909ca9aa9d9084776a5d5044372a1d1104000714202d3a4753606d7a8794a0ada69a8d807366594d4033261a0d0000000000000008131e29333e49545f69747f8a95a0988d82776c61574c41362b21160b000000000000000000000000000000000000000000000000000000000000000006121e2935414d5965707c8894a0aca4988c8175695d5145392d212935414d5966727e8a96a2aa9e92867a6e62564a3f33271b0f03000000000013202c3946535f6c798693a0acaca09386796c5f5346392c20130c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0b0804000000000000000013202c3946535f6c798693a0aca89b8e8275685b4e4235281b0f020000000000000e1b2834414e5b6774818e9aa7ada094877a6d6054473a2e21140700000000000000000000000000000000101d2a3643505d6976838989898989898174675a4e4135281c10060000000000000000000000000000000000000013202c3946535f6c798693a0aca89b8e8275685b4e4235281c0f0603000003060c16212d3945515e6a77838e8d8c8b8a8986796d6053473a2d2114070013202c3946535f6c7985858585858585858585858585858585858585858585858585858585858585858585858585858585858376695d5043362a1d1000000000101d2a3743505d6976838f9ca9b1a5988b7e7265594c4033261a0d0100000000000000000000000000000000000000000005111e2a3744505d697683909ca9b2a5988c7f7266594c4033261a0d000000000000000000010c1824303c47535f6b77838e9aa6ab9f93877b706c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6d7884909ca8a89d9185796d61564a3e32261a0f0300000000000000000000000000000000000000000000000814212d3a46535f6c7885919eaba89b8f8275695c5043372a1e11040000000000000000000000000000000613202c3946535f6c7986939fa396897c6f6356493c3023160a00000000000000000000000000000000101c2936434f5c697683909ca9ab9e9184776b5e5145382b1e12050000000b1724313e4a5764707d8a97a4b0a79a8e8174675b4e4134281b0e000000000000000000101c2936434f5c69768390908376695c4f4336291c100300000000000000000000000000000000101c2936434f5c69768390908376695c4f4336291c1003000000000000000013202c3946535f6c7986938c807366594c403326190d000000000000000000000001060b10151a1f24292e33383d41464b50555a5f64696e73787d82878b90959a9fa4a29d98938e898376695d5043362a1d100013202c3946535f6c79858a8f94999ea3a39e99948f8a85817b76726d68635e59544f4a45403b36322d28231e19140f0a05000000000000000000000000101c2936434f5c697683909ca9aa9d9084776a5d5044372a1d1104000714202d3a4753606d7a8794a0ada69a8d807366594d4033261a0d00000000000000010c17222d37424d58636d78838e999e94897e73685d53483d32271c1207000000000000000000000000000000000000000000000000000000000000000b16222e3a46525d6975818d99a5aca094887c7064584c4034291d25313d4955616d7a86929eaaa2968b7e73675b4f43372b1f1308000000000013202c3946535f6c798693a0acaca09386796c5f5346392c2013060000000000000000000000000000000000000000000000000000000000000000000000131f2c3946525f6c7986929faca89b8e8275685b4f4235281c0f020000000000000e1b2835414e5b6874818e9ba8ada093867a6d6053473a2d20140700000000000000000000000000000000101c2936424f5c6875828e969696968f8276695d5044382d22180f0700000000000000000000000000000000000013202c3946535f6c7986929faca89b8e8275685b4e4235281c0f02000000000005101d2936424f5b68758181807f7e7d7d7c786d6054473a2d21140700131f2c3945525e6b7578787878787878787878787878787878787878787878787878787878787878787878787878787878787873685c4f4336291d10000000000f1c2935424f5b6874818e9ba7b3a69a8d8174675b4e4235291c10030000000000000000000000000000000000000000000714202d3946525f6b7885919eaab0a3978a7d7164584b3e3225180c0000000000000000000008131f2b37434e5a66727e8995a1ada4988c8074685f5f5f5f5f5f5f5f5f5f5f5f5f5f5f65717d8995a1ada4988c8074685d5145392d21160a00000000000000000000000000000000000000000000000005121e2b3744505d6976838f9ca8aa9d9184786b5f5245392c20130600000000000004080b0c0c0b0a09080713202d3946535f6c798693a0a3968a7d7063564a3d3023170a08090a0b0c0c0b080500000000000000101c2936434f5c697683909ca9aa9e9184776a5d5144372b1e11040000000a1723303d4a5663707d8a96a3b0a89b8e8275685b4e4235281b0f000000000000000000101c2936434f5c69768390908376695c4f4336291c100300000000000000000000000000000000101c2936434f5c69768390908376695c4f4336291c1003000000000000000013202c3946535f6c7986938c807366594c403326190d00000000000000000003080d12171c21262b30353a3e43484d52575c61666b70757a7e84898d92979ca1a5a09b96918c87827d7872675b4f4236291c1000131f2c3945525e6a74797e84898e93989da2a5a09b96918c87827d78736f6a65605b56514c47423d38332f2a25201b16110c0702000000000000000000101c2936434f5c697683909ca9aa9d9084776a5d5044372a1d1104000714202d3a4753606d7a8794a0ada69a8d807366594d4033261a0d000000000000000005101b26313b46515c67727c87929d9a8f857a6f64594e44392e23180e030000000000000000000000000000000000000000000000000000000000030f1b27333f4a56626e7a86929ea9a79b8f83776b5f54483c302418212d3945515d6975828e9aa6a79b8f83776b5f54483c3024180c000000000013202c3946535f6c798693a0acaca09386796c5f5346392c2013060000000000000000000000000000000000000000000000000000000000000000000000121f2c3845525f6b7885929eaba89c8f8275695c4f4236291c0f030000000000000f1c2835424f5b6875828e9ba8aca09386796c605346392d201307000000000000000000000000000000000e1b2834414e5a6773808c99a2a29e9185796c6155493e342a211911090200000000000000000000000000000000121f2c3945525f6b7885929eaba89c8f8276695c5043372a1e13080000000000010e1a2734404d596570757473727171706f6d665c5145382c1f130600111e2a36424e59636a6b6b6b6b6b6b6b6b6b6b6b6b6b6b6b6b6b6b6b6b6b6b6b6b6b6b6b6b6b6b6b6b6b6b6b6b6b6b6b6b6b6b6961574c4034271b0e000000000e1a2734404d5a6673808c99a5b2a89c8f83766a5d5144382b1f13060000000000000000000000000000000000000000000b1723303c4855616e7a8793a0acaea195887c6f6256493d3023170a00000000000000000000030f1a26323e4a55616d7985919ca8a89d9185796d61555252525252525252525252525e6a76828e99a5ab9f93877b7064584c4034291d1105000000000000000000000000000000000000000000000000030f1c2835424e5b6774818d9aa6aca093867a6d6054473b2e21150800000000030a1014171919181716151413202d3a4653606d798693a0a3968a7d7063574a3d302417141516161718181715110b050000000000101c2936434f5c697683909ca9aa9d9084776a5d5044372a1e11040000000a1623303d4956636f7c8996a3b0a89b8f8275685b4f4235281c0f000000000000000000101c2936434f5c69768390908376695c4f4336291c100300000000000000000000000000000000101c2936434f5c69768390908376695c4f4336291c1003000000000000000013202c3946535f6c7986938c807366594c403326190d00000000000000050a0f14191e23282d32373b40454a4f54595e63686d72767b81858a8f94999ea3a49f9a95908b86817b76726d6760564b3f33271a0e00111d2a36424e5962696e73787d82878c91969ba0a5a29d98938e8984807a75706c67625d58534e49443f3a35302b27221d18130e090400000000000000101c2936434f5c697683909ca9aa9d9084776a5d5044372a1d1104000714202d3a4753606d7a8794a0ada69a8d807366594d4033261a0d00000000000000000009141f2a35404a55606b76818b96a1968b81766b60554a40352a1f140900000000000000000000000000000000000000000000000000000000000814202c38434f5b67737e8b96a2aea3978b7f73675b4f43372b1f141d2935414d5965717d8996a2aba094887c7064584c4034291d11050000000013202c3946535f6c798693a0acaca09386796c5f5346392c2013060000000000000000000000000000000000000000000000000000000000000000000000121e2b3845515e6b7784919eaaa99c908376695c5043362a1d1003000000000000101c2936434f5c6975828f9ca8ab9f9285786c5f5246392c1f1306000000000000000000000000000000000d1926323f4b5864717d8a96a2ada195897d71665b50463c332b231b130c04000000000000000000000000000000111e2b3744515d6a7783909ca9aa9d9184786b5f53473b2f241a110801000000000c1825313d49545e656867666665646362615c544b4034281c1004000e1a26323d4851595e5e5e5e5e5e5e5e5e5e5e5e5e5e5e5e5e5e5e5e5e5e5e5e5e5e5e5e5e5e5e5e5e5e5e5e5e5e5e5e5e5e5e5d584f453b2f23170b000000000c1925323e4b5864717d8a96a3afab9e9285796c6054473b2f23160a0000000000000000000000000000000000000000030f1b27333f4b5864707d8996a2afac9f9386796d6054473b2e22150800000000000000000000000a16212d3945515c6874808c97a3ada195897d72665a4e4646464646464646464b57636e7a86929eaaa69a8e83776b5f53473b3024180c00000000000000000000000000000000000000000000000000000d1a2633404c5965727e8b98a5aea195887b6f6256493c3023160a000000050d151b20242525242323222120202d3a4753606d7a8693a0a4978a7d7063574a3d30241f2021222324252524211c160f0700000000101c2936434f5c697683909ca9aa9d9084776a5d5044372a1e1104000000091623303c4956636f7c8996a3b0a89c8f8275685b4f4235281c0f000000000000000000101c2936434f5c69768390908376695c4f4336291c100300000000000000000000000000000000101c2936434f5c69768390908376695c4f4336291c1003000000000000000013202c3946535f6c7986938c807366594c403326190d0000000000060c11161b20252a2f33383d42474c51565b60656a6f74787d82878c91969ba0a5a29d98938e89847f7a75706b66615c564e443a2e23170b000d1a25313c4750585d62676c71767b80858a8f94999ea3a49f9a95908b86817c77726d69645f5a55504b46413c37322d28241f1a15100b050000000000101c2936434f5c697683909ca9aa9d9084776a5d5044372a1d1104000714202d3a4753606d7a8794a0ada69a8d807366594d4033261a0d000000000000000000030e18232e39444e59646f7a858f9a9d92877c72675c51463b31261b1005000000000000000000000000000000000000000000000000000000010d1925303c4854606c77838f9ba7aa9e92867a6e62564b3f33271b0f1925313d4955616d7985919da9a4988c8175695d5145392d2115090000000013202c3946535f6c798693a0acaca09386796c5f5346392c20130d0d0d0d0d0d0d0d0d0d0d0d0d0d0d0d0d0d0d0d0d0d0d0d0d0d0b090500000000000000111e2a3744505d6a7784909daaaa9d9084776a5d5144372a1e1104000000000002111d2a3743505d697683909ca9aa9e9184776b5e5145382b1f1205000000000000000000000000000000000a1723303c4955616e7a86929ea9a5998e82776c62584e453d342d251e160f070000000000000000000000000000101c2936424f5b6874818d9aa6aca093877b6f63574c41362c231a130b030000000814202c37424c54595b5b5a595857565555514b42392e23180c00000a15212b363f474e51515151515151515151515151515151565e62626262626262615c54515151515151515151515151515151514c463d34291e1307000000000a1723303c4955626e7b8794a0adada195887c6f63574b3f33271b0f040000000000000000000000000000000000000008131f2b37434f5b6774808c99a5b2a99c9084776a5e5145382c1f1306000000000000000000000005111d2834404c58636f7b87939eaaa69a8e82766a5e53473b393939393939444f5b67737f8b97a3ada1958a7e72665a4e43372b1f130700000000000000000000000000000000000000000000000000000b1824313e4a5764707d8a96a3b0a3978a7d7064574b3e3124180b0000050e171f262c30323231302f2e2d2c2b2d3a4753606d7a8794a0a4978a7d7164574a3e312b2c2d2e2f30313232302d2821191007000000101c2936434f5c697683909ca9aa9e9184776a5d5144372b1e11040000000a1623303d4956636f7c8996a3b0a89c8f8275685b4f4235281c0f000000000000000000101c2936434f5c69768390908376695c4f4336291c100300000000000000000000000000000000101c2936434f5c69768390908376695c4f4336291c1003000000000000000013202c3946535f6c7986938c807366594c403326190d000000020a11181d22272c30353a3f44494e53585d62676c71757a8084898e93989da2a5a09b96918c87827d78736e69645f5a55504b443c33281d1206000914202b353e464c51565b60656a6f74797e84898d92989da2a6a19c97928d88837e79746f6a65615c57524d48433e39342f2a25211c16100900000000101c2936434f5c697683909ca9aa9d9084776a5d5044372a1d1104000714202d3a4753606d7a8794a0ada69a8d807366594d4033261a0d0000000000000000000007121c27323d48525d68737e89939e998e83786e63584d42372d22170c01000000000000000000000000000000000000000000000000000006121d2935414d5965707c8894a0aca5998e82766a5e52463a2e22160a15212d3945515d6975818d99a5a99d9185796d6155493e32261a0e0200000013202c3946535f6c798693a0acaca09386796c5f5346392c201a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1815100b040000000000101d2936434f5c6976828f9ca8ab9e9184786b5e5245382b1f1205000000000005121e2b3844515e6b7784919daaa99d9083776a5d5044372a1e1104000000000000000000000000000000000814202d3945515d6975818d98a4aa9f94897e746a60574e463f3730282019110a020000000000000000000000000e1a2733404c5965717d8a96a2aea3978b8074685d52483e352c241d150e06000004101b26303a42494d4e4e4d4c4b4b4a494845403930271d12070000040f1a242d363d42444545454545454545454545454546525e686e6f6f6f6f6f6f6e665b50454545454545454545454545454544413b342b22170d02000000000814212d3a46535f6c7884919da9b0a4988c8073675b4f43372c20150a000000000000000000000000000000000000030e1924303c47535f6b7784909ca8b2a6998d8174685b4f4236291d10040000000000000000000000000c18232f3b47535f6a76828e9aa5aa9e93877b6f63574b3f332c2c2c303c4854606c7884909ba7a89c9185796d61554a3e32261a0e0300000000000000000000000000000000000000000000000000000a1623303c4955626f7b8895a2aea5988b7e7265594c3f3226190c00010c16202931383c3f3f3e3d3c3b3a3938373a4754616d7a8794a1a4978a7d7164574b3e3738393a3b3c3d3e3f3f3d39332b23190f040000101c2936434f5c697683909ca9ab9e9184776b5e5145382b1e12050000000a1723303d4a5663707d8a96a3b0a89b8e8275685b4e4235281c0f000000000000000000101c2936434f5c69768390908376695c4f4336291c100300000000000000000000000000000000101c2936434f5c69768390908376695c4f4336291c1003000000000000000013202c3946535f6c7986938c807366594c403326190d0000020b141c23282d32373c41464b50555a5f64696d72777c81868b90959a9fa4a49f9a95908b86817b76716c67625d58534e49443f3a332a21170c0100030e19232c343b40464b50555a5f64696e73787d82878c91969ba0a5a39e99948f8a85807b76716c67625e59544f4a45403b36312c27211a1209000000101c2936434f5c697683909ca9aa9d9084776a5d5044372a1d1104000714202d3a4753606d7a8794a0ada69a8d807366594d4033261a0d00000000000000000000000b16202b36414c57616c77828d97a0958a7f74695f54493e33291e130800000000000000000000000000000000000000000000000000000a16222e3a46525d6975818d99a5ada195897d7165594d41362a1e1206101c2935414d5965717d8995a1ada1968a7e72665a4e42362a1e130700000013202c3946535f6c798693a0acaca09386796c5f5346392c2626262626262626262626262626262626262626262626262626262624211c160e06000000000f1c2835424e5b6874818e9aa7ac9f9286796c5f5346392d20130700000000000613202c3946525f6c7885929eaba89b8f8275695c4f4336291c10030000000000000000000000000000000004111d2935414d5965707c87929da8a59a90867c726960585149413a322b231c140c0400000000000000000000000b1824303d4955616d7985919da8a89c91857a6f645a50473e362f2720181109020009141e2830373d414241403f3f3e3d3c3b39352e271e150b0000000008121b242b3135383838383838383838383838383b4855626e7a7c7c7c7c7c7c786c5f5346393838383838383838383838383735302a22191006000000000005121e2b3743505c6875818d9aa6b2a89c9084776b6054483d31261b110700000000000000000000000000000000010a151f2a35414c5864707c8894a0acaea296897d7165584c3f33271a0e0100000000000000000000000007131f2a36424e5a65717d8995a1aca3978b8074685c5044382c202935414d5965717c8894a0aca4988c8074685d5145392d21160a0000000000000000000000000000000000000000000000000000000815212e3b4754616d7a8794a0ada6998d8073665a4d4034271a0e0007131e28323b43484b4c4b4a494847464544434754616e7a8794a1a4988b7e7164574b43434445464748494a4b4b49443d352b21160a0000101c2936434f5c697683909ca9ab9e9285786b5f5245392c1f13060000000b1724313e4a5764707d8a97a4b0a79b8e8174675b4e4135281b0e000000000000000000101c2936434f5c69768390908376695c4f4336291c100300000000000000000000000000000000101c2936434f5c69768390908376695c4f4336291c1003000000000000000013202c3946535f6c7986938c807366594c403326190d00000a141d262e34393e43484d52575c61666a6f74797e83888d92979ca1a6a29d98938e89847f7a75706b66615c57524d48433e39342e2821180f0500000007111a222a30353a3f44494e53585d62676c71767b80858a8f94999ea3a4a09b96918c87827d78736e69645f5b56514c47423d38332c241b12080000101c2936434f5c697683909ca9aa9d9084776a5d5044372a1d1104000714202d3a4753606d7a8794a0ada69a8d807366594d4033261a0d0000000000000000000000040f1a242f3a45505b65707b86919c9c91867b70655b50453a2f241a0f04000000000000000000000000000000000000000000000000030f1b27333f4a56626e7a86929da9a89c9084786d6155493d3125190d010c1824303c4955616d7985919da9a69a8e82766a5e53473b2f23170b00000013202c3946535f6c798693a0acaca09386796c5f5346393333333333333333333333333333333333333333333333333333333333312d2720180f050000000e1a2734404d5a6673808c99a6ada094877a6e6154483b2e22150800000000000815212e3a4754606d7a8693a0aca69a8d8174675a4e4134281b0e0200000000000000000000000000000000010d1925313c48545f6b76818b96a0aaa2988e847b736a625b534c443d352d261e160e05000000000000000000000814212d3945515d6975808c97a2ada2968b81766c625950484039312a221b140c04020c161e262c3134353434333231302f2f2d29231d150c0300000000000912192025292b2b2b2b2b2b2b2b2b2b2b2b2f3c4855626f7b888989898986796c5f5346392c2b2b2b2b2b2b2b2b2b2b2b2b28241f181007000000000000020f1b2834404d5965717d8a96a2aeaca094887c7065594e43382d23190f0600000000000000000000000000000109131c26313c47525d6975818c98a4b0aa9e9286796d6155493c3024170b00000000000000000000000000020e1a26313d4955616c7884909ca8a89c9084786c6054493d31252e3a46515d6975818d99a5ab9f93877b6f64584c4034281d11050000000000000000000000000000000000000000000000000000000713202d3a4653606c7986939faca79a8e8174675b4e4135281b0e000c18242f3a444d54585857565554535251504f4f54616e7b8894a1a4988b7e7165584e4f50515253545556575858554f473d32271b0f0300101c2936434f5c697683909ca9aca09386796d6053473a2d2114070000000c1825323e4b5864717e8b98a4b1a79a8d8174675a4d4134271b0e000000000000000000101c2936434f5c69768390908376695c4f4336291c100300000000000000000000000000000000101c2936434f5c69768390908376695c4f4336291c1003000000000000000013202c3946535f6c7986938c807366594c403326190d0006111c262f383f454a4f54595e63676c71767b80858a8f94999ea3a5a09b96918c87827d78736e69645f5a55504b46413c37322d28231d170f0600000000000811181f24292e33383d42474c51565b60656a6f74797e83888d92979ca1a6a29d98938e89847f7a75706b66615c58534e49443e362d24190e0300101c2936434f5c697683909ca9aa9d9084776a5d5044372a1d1104000714202d3a4753606d7a8794a0ada69a8d807366594d4033261a0d00000000000000000000000008131e29333e49545f69747f8a95a0978d82776c61564c41362b20160b0000000000000000000000000000000000000000000000000814202c37434f5b67737e8a96a2aea4988c8074685c5044382c211509000814202c3844505c6975818d99a5ab9f93877b6f63574b3f33281c1004000013202c3946535f6c798693a0acaca09386796c5f53464040404040404040404040404040404040404040404040404040404040403d38322a21170d0200000c1925323f4b5865717e8b97a4aea295887c6f6356493d3023170a00000000000a1623303c4955626f7b8895a1aea5988b7e7265594c4033261a0d0000000000000000000000000000000000000814202c37434e59646f7a848e98a1a9a0968d857c746d655e564e473f38302820170f0600000000000000000005111d2935414c58646f7a86919ba6a89d92887e746b625a524b433c342d251e160e06040c141b212527282827262524242322201d18120b0300000000000000080f15191d1e1e1e1e1e1e1e1e1e1e1e222f3c4855626f7b889596969386796c5f5346392c201e1e1e1e1e1e1e1e1e1e1e1c18130d0600000000000000000c1824303d4955616d7985919da9b0a4998d81766a5f54493f342b21181009030000000000000000000000050b131b252e38434d58636e7a85919da9b1a5998d8275695d5145392d20140800000000000000000000000000000915212d3844505c6873808b97a3aca095897d7165594d41352a323e4a56626e7a86929da9a69a8e82766b5f53473b3024180c0000000000000000000000000000000000000000000000000000000006121f2c3945525f6b7885929eaba89b8f8275685b4f4235291c0f00101c2834404c565f656564636261605f5e5d5c5b5a616e7b8895a1a5988b7e71655a5b5c5d5e5f6061626364656561594e43382c20130700101c2936434f5c697683909ca9ada194877b6e6155483b2f2216090000000d1a26333f4c5966727f8c98a5b2a6998c807366594d4033261a0d000000000000000000101c2936434f5c69768390908376695c4f4336291c100300000000000000000000000000000000101c2936434f5c69768390908376695c4f4336291c1003000000000000000013202c3946535f6c7986938c807366594c403326190d000b17222d38424a51565b5f64696e73787d82878c91969ba0a5a49f9a95908b86817b76716c67625d58534e49443f3a35302b26211c17120c0500000000000000060d13181d22272c31363b40454a4f545a5f64696e73787d82878c91969ba0a5a39e9a95908b86817c77726d68635e59544f483f352b20140800101c2936434f5c697683909ca9aa9d9184776a5e5144372b1e1105000714202d3a4753606d7a8794a0ada69a8d807366594d4033261a0d000000000000000000000000010c17222d37424d58636d78838e999e93897e73685d52483d32271c110700000000000000000000000000000000000000000000010d1924303c4854606c77838f9ba7ab9f93877b6f63584c4034281c10040004101c2834404c5864717c8995a1ada3978b8074685c5044382c201408000013202c3946535f6c798693a0acaca09386796c5f534d4d4d4d4d4d4d4d4d4d4d4d4d4d4d4d4d4d4d4d4d4d4d4d4d4d4d4d4d4d4c49443c33291e130800000b1724303d4a56636f7c8995a2aea4978a7e7164584b3f3226190d00000000000c1925323e4b5764717d8a96a3afa396897d7064574a3e3125180b000000000000000000000000000000000000040f1b26323d48535d68727c868f98a0a89f978e867e776f6860595149423a322921180f060000000000000000010d1824303c47535e69747f89949ea7a49a90877d746c645d554d463f3730282018100802091015181b1b1b1a19181817161514110c070000000000000000000004090d101212121212121212121215222f3c4855626f7b8895a2a09386796c5f5346392c201312121212121212121211100c08020000000000000000000814212d3945515d6975818d98a4b0a99e92877c71665b51463d332a221b140f0a0705030202020305080c10161d252d37404a545f6a75808b97a2aeaca095897d7165594d4135291d1004000000000000000000000000000004101c28343f4b57636f7a86929eaaa5998d82756a5e52463a2e37434f5b67727e8a96a2ada1958a7e72665a4e42372b1f13070000000000000000000000000000000000000000000000000000000004121e2b3845515e6b7784919eaba99c8f8276695c4f4336291c1000121f2b3844515d68717271706f6e6d6c6b6a696867666e7b8895a2a5988c7e72666768696a6b6b6d6d6f6f7071716b6054483b2f22160900101c2936434f5c697683909ca9afa296897c7063574a3d3124180b0000010f1b2834414e5a6774818d9aa6b1a4988b7e7265584c3f3225190c000000000000000000101c2936434f5c69768390908376695c4f4336291c100300000000000000000000000000000000101c2936434f5c69768390908376695c4f4336291c1003000000000000000013202c3946535f6c7986938c807366594c403326190d000f1b27333f4a545c61666b70757a7f84898e93989da2a6a29d98938e89847f7a75706b66615c57524d48433e39342f29251f1a15100b060100000000000000000002080d12171c21262b30353a3f44494e53585d62676c71767b80858a8f94999ea3a5a09b96928d88837e79746f6a65605a51473c3025180c00101c2936434f5c697683909ca9ab9e9285786b5f5245392c201306000714212d3a4753606d7a8794a0ada69a8d807366594d4033261a0d0000000000000000000000000005101b26313b46515c67727c87929d9a8f857a6f64594e44392e23180d0300000000000000000000000000000000000000000006121d2935414d5964707c8894a0aca69b8f83776b5f53473b2f23170c0000000c1824303c4854606c7885919da9a89c9084786c6054493d3125190d010013202c3946535f6c798693a0acaca09386796c5f5959595959595959595959595959595959595959595959595959595959595959554e453b3024190d01000915222e3b4854616d7a86939faca6998c8073675a4e4135281c1003000000030f1b2834414d5a6673808c99a5ada094877b6e6155483c2f231609000000000000000000000000000000000000000a15202b36414c56606a737d868e969ea6a0989089817a726a635b534c443b332a21180f06000000000000000008141f2b36414d58626d78828c959ea7a2998f877e766e675f585049413a322a221a12090004090c0e0f0e0d0d0c0b0a09080704010000000000000000000000000000000000000000000000000915222f3c4855626f7b8895a2a09386796c5f5346392c2013060000000000000000000000000000000000000000000004111d2935414d5964707c88939faaafa4988d82776d62584f453c342c25201b171311100f0f0f101214181c21282f373f49525c66717b86919ca8b1a69b8f84786c6155493d3125190d000000000000000000000000000000000b17232f3b46525e6a76828d99a5aa9e92867a6e62564b3f333c48535f6b77838f9ba7a89c9185796d61554a3e32261a0e020000000000000000000000000000000000000000000000000000000001111e2a3744515d6a7784919daaa99c908376695d5043362a1d100013202c3946535f6c797e7d7c7b7b7979787776757473727b8895a2a5988c7e7272737475767778797a7b7c7d7e7c7063564a3d3023170a00101c2936434f5c697683909ca9b1a4988b7e7265594c4034271b0f030004111d2a3643505c6975828f9ba8afa3968a7d7064574a3e3124180b000000000000010507101c2936434f5c69768390908376695c4f4336291c100705010000000000000000000000010507101c2936434f5c69768390908376695c4f4336291c1007050100000000000013202c3946535f6c7986938c807366594c403326190d00121e2b37434f5b666d72777c81868b90959a9ea3a5a09b96918c87827d78736e69645f5a55504b46413c37322d28231e19140f0a05000000000000000000000000000001060b10151a1f24292e33383d42474c51565b60656a6f74797e83888d92979ca1a6a29d98948f8a85807b76716c63594d4134281b0f00101c2936434f5c697683909ca9aca093867a6d6154473b2f22160a000714212e3a4754616d7a8794a1aea69a8d807366594d4033261a0d000000000000000000000000000009141f2a35404a55606b75818b96a1968b81756b60554a3f352a1f14090000000000000000000000000000000000000000000a16222e3a46515d6975818d99a4aca2968a7e72665a4e43372b1f13070000000814202c3844505c6874818c98a5aca095897d7165594d4135291d12060013202c3946535f6c798693a0acaca09386796c66666666666666666666666666666666666666666666666666666666666666666560574c4135291d1004000713202c3945525e6b7784909da9a89b8f8276695d5144382c1f130700000006121f2b3744505c6975828e9ba7aa9e9185786c5f53463a2d20140700000000000000000000000000000000000000040f1a252f3a444e58616b747c848c949ca3a29b938b847c756d655d554d453c332a21180e0400000000000000030e1a25303b46515b66707a838c959da6a19990888079716a625b534c443c342c241b1209000000000000000000000000000000000000000000000000000000000000000000000000000000000915222f3c4855626f7b8895a2a09386796c5f5346392c20130600000000000000000000000000000000000000000000000c1824303c48545f6b76828d99a4afaa9f94897e746a61574e463e37312b2723201e1c1c1b1c1d1e2124282d33394149515b646e78828d98a3aeaba0958a7e73675c5044382c2015090000000000000000000000000000000007121e2a36424d5965717d8994a0aca2978b7f73675b4f4337404c5864707c88949faba3988c8074685c5145392d21150a000000000000000000000000000000000000000000000000000000000000111d2a3744505d6a7784909daaaa9d9083766a5d5043372a1d100013202c3946535f6c79868a89888786858484828281807e7d8895a2a6998c7f7e7f818182838485868788898a8a7d7063564a3d3023170a00101c2936434f5c697683909ca9b3a79a8e8175685c5043372b1f1308040814202d3945525e6b7784919daaaea194887b6e6255493c2f2316090000000000070d1114161c2936434f5c69768390908376695c4f4336291c1614110d07000000000000000000070d1114161c2936434f5c69768390908376695c4f4336291c1614110d07000000000013202c3946535f6c7986938c807366594c403326190d0013202c3946525f6c777e83888d92979ba0a5a49f9a948f8a85817b76716c67625d58534e49443f3a35302b26211c17120d08030000000000000000000000000000000000000004090e13181d22272c31363b40454a4f54595e63686d73787d82878c91969ba0a5a49f9a95918c87827d75695c5043362a1d1000101c2936434f5c697683909ca9aea295897c6f63574a3e32261a0f060815222e3b4854616e7b8894a1aea69a8d807366594d4033261a0d0000000000000000000000000000030e18232e39444e59646f7a858f9a9d92877c71675c51463b31261b100500000000000000000000000000000000000000000f1b27333f4a56626e7a86919da0a09d92867a6e62564a3e32261a0e0200000004101c2834404c5864707c8894a0a0a0998d8175695e52463a2e22160a0013202c3946535f6c798693a0acaca093867973737373737373737373737373737373737373737373737373737373737373737372695d5145382c1f13060004111d2a36434f5c6875818e9aa6aa9e9285796c6054483b2f23170b0000000b17232f3b47535f6c7885919eaaa79b8e8275695c5044372b1e1205000000000000000000000000000000000000000008131e28323c464f59626a727a828a9299a1a59d968e877f776f675f574e453c332a20160b010000000000000008141f2a353f4a545e68717a838b949ca4a29a928b837b746d655e564e463e362d241b12080000000000000000000000000000000000000000000000000000000000000000000000000000000915222f3c4855626f7b8895a2a09386796c5f5346392c20130600000000000000000000000000000000000000000000000814202c37434f5a65717c87929da8b0a59b90867c736960585049423c37332f2d2b29282829292b2d3034383e444b535b636d76808a949fa9afa59a8f84786d62564b3f33281c100400000000000000000000000000000000020e1925313d4954606c78848f9ba7a79b8f83776c6054483c45515d6974818c98a4ab9f93877b6f63584c4034281d1105000000000000000000000000000000000000000000000000000000000000111d2a3744505d6a7783909daaaa9d9084776a5d5044372a1d110013202c3946535f6c798693969594939291908f8e8d8c8b8a8e98a4a79b908a8b8c8d8e8f90919293949596968a7d7063564a3d3023170a00101c2936434f5c697683909ca9b6a99d9084786c5f53473b3024191211111824303c4955616e7a87939facab9f9286796c6053473a2e211408000000030b12181d2022222936434f5c69768390908376695c4f4336292222201d18120b030000000000030b12181d2022222936434f5c69768390908376695c4f4336292222201d18120b0300000013202c3946535f6c7986938c807366594c403326190d0013202c3946535f6c79868f94989da2a7a29d98938e89847e7a75706b66615c57524d48423d39332e29241f1a15100b0601000000000000000000000000000000000000000000000003080d12171c21262b30353a3f44494e53585d62676c71767b80858a8f94999ea3a6a19c97928d8376695d5043362a1d1000101c2936434f5c697683909ca9b1a4988b7f73665a4e42372c2118121116232f3c4955626f7b8895a2aea6998c807366594c403326190d00000000000000000000000000000007121c27323d48525d68737e89939e998e83786d63584d42372c22170c0100000000000000000000000000000000000000111e2a37434f5b67737e8a93939393938d8175695d5145392e22160a00000000000b1824303c4854606c7884909393939392867a6e62564a3e3225190c0013202c3946535f6c798693a0acaca0938680808080808080808080808080808080808080808080808080808080808080808080796d6053463a2d20130700010e1b2734404d5965727e8a97a3ada195887c7064584b3f34281d120a0809111c27333f4b57636f7b8894a1ada4978b7e72665a4d4134281b0f030000000000000000000000000000000000000000010c16202a343d4750586068707880878f969ea5a09891898179716960574e453c32281d130800000000000000020d18232d38424c565f687179828a929aa1a49c958d867e776f68605850483f362d241a100600000000000000000000000000000000000000000000000000000000000101010101010101010915222f3c4855626f7b8895a2a09386796c5f5346392c2013060101010101010101010000000000000000000000000000030f1b26323d4954606b76818c96a1abaca2988e857b726a625a534d48433f3c39373635353536383a3c4044494f565d656d757f88929ca6b0a89e93887d72675c51453a2e23170b0000000000000000000000000000000000000915202c3844505b67737f8b96a2aca094887c7064584d414a55616d7985919da9a69a8e82766b5f53473b2f24180c00000000000000000000000000000000000000000000000000000000000000111d2a3744505d6a7784909daaaa9d9084776a5d5044372a1d110013202c3946535f6c798693a0a2a1a09f9e9d9c9b9a99989799a0a9aca29a9798999a9b9c9d9e9ea0a0a1a2968a7d7063564a3d3023170a00101c2936434f5c697683909ca9b6aca094887c7064584c41362b221f1e1e202a35414c5865717d8a96a2afa99c9083776a5e5145382b1f12060000020c151d24292d2f2f2f36434f5c69768390908376695c4f43362f2f2f2d29241d150c02000000020c151d24292d2f2f2f36434f5c69768390908376695c4f43362f2f2f2d29241d150c02000013202c3946535f6c7986938c807366594c403326190d0013202c3946535f6c7986939fa4a5a09b96918c87827d78736e69645f5a55504b46413c37322d28231e19140f0a050000000000000000000000000000000000000000000000000000000001060b10151a1f24292e33383d42474c51565b60656a6f74797e83888d92979ca1a7a39d908376695d5043362a1d1000101c2936434f5c697683909ca9b4a79b8f83776b5f53483d332a231f1e1e25313e4a5764707d8a96a3b0a5988c7e7265594c3f3226190c000000000000000000000000000000000b16202b36414c56616c77828d979f958a7f74695e54493e33281e13080000000000000000000000000000000000000013202c3946525f6b7783868686868686867c7165594d4135291d1105000000000007131f2b3844505c687480868686868686867e73665a4d4134271a0e0013202c3946535f6c798693a0acaea2978e8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d86796d6053463a2d20130700000c1824313d4956626e7b87939faba4988c8074685c5044392e231b16151619222d38444f5b6773808b98a4aca094877b6f63564a3e3125190c00000000000000000000000000000000000000000000040f18222b353e464e575e666e757d848c939ba2a39b938b837b726a60574d44392f241a0f040000000000000007111c26303a444d565f67707880888f979ea69f989089817a726a625a51483f362c22180e0300000000000000000000000000000000000000000000000000060a0d0e0e0e0e0e0e0e0e0e0e15222f3c4855626f7b8895a2a09386796c5f5346392c20130e0e0e0e0e0e0e0e0e0e0c09050000000000000000000000000a16212c38434e59646f7a858f99a3adaaa0978e857c746c655e59534f4b48464443424242434446494c50555a61676f767f88919aa4aeaaa0968c81766c61564b3f34291d120600000000000000000000000000000000000004101c27333f4b57626e7a86929da9a4998d8175695d51454e5a66727e8a96a1ada195897d72665a4e42372b1f130700000000000000000000000000000000000000000000000000000000000000111d2a3744505d6a7784909daaaa9d908376695d5043372a1d100013202c3946535f6c798693a0a1a09f9e9d9c9b9a99989796989fa9aca199969698989a9b9c9d9e9fa0a1a2968a7d7063564a3d3023170a00101c2936434f5c697683909ca9b6b0a4988c8074695d52473d342e2c2a2b2c323b46515d6975818d99a5b2a5998d8174675b4f4236291d100400000a141e272e35393c3c3c3c434f5c69768390908376695c4f433c3c3c3c39352e271e140a0000000a141e272e35393c3c3c3c434f5c69768390908376695c4f433c3c3c3c39352e271e140a000013202c3946535f6c7986938c807366594c403326190d0013202c3946535f6c798693a0a39a948f8a85817b76716c67625d58534e49443f3a35302b26211c17120d080300000000000000000000000000000000000000000000000000000000000000000004090e13181d22272c31363b40454a4f54595e63686d72777c82878c91969ca69d908376695d5043362a1d1000101c2936434f5c697683909ca9b6ab9f93877b70655a4f453c342e2b2a2b2c34414d5966727f8b98a5b0a4978a7e7164584b3e3125180b00000000000000000000000000000000040f1a242f3a45505b65707b86919b9b91867b70655a50453a2f24190f04000000000000000000000000000000000000131f2c3946525f6b767979797979797979776c6054483c3024190d010000000000030f1b27333f4c58647079797979797979797972665a4d4034271a0e0013202c3946535f6c798693a0acb3a9a09a9a9a9a9a9a9a9a9a9a9a9a9a9a9a9a9a9a9a9a9a9a9a9a9a9a9a9a9a9a9a9a9a9386796d6053463a2d20130700000915212e3a46525f6b77838f9ba7a89c9084786d61564a40352d26232222252b343f4955606c7884909ca8a89c9084776b5f53473a2e2215090000000000000000000000000000000000000000000000061019232c343d454d545c646b737a82899198a0a59d958d857c72695f554b41362b20150a00000000000000000a141e28323b444d555e666e767d858d949ca3a29b938b847c746c635a51483e342a1f150a0000000000000000000000000000000000000000000000050c1116191b1b1b1b1b1b1b1b1b1b1b222f3c4855626f7b8895a2a09386796c5f5346392c201b1b1b1b1b1b1b1b1b1b1a1815100a030000000000000000000004101b27323d48535e68737d87919ba4aea9a0978e867e76706a645f5b575452504f4f4e4f50515355585c61666c72798189919aa3acaba2988e847a6f655a4f44392e23180c01000000000000000000000000000000000000000b17232e3a46525e6975818d99a4a99d9185796e62564a535f6b76828e9aa6a89c9185796d6155493e32261a0e0200000000000000000000000000000000000000000000000000000000000002111e2b3744515d6a7784919eaaa99c908376695d5043362a1d100013202c3946535f6c7986939694939291908f8e8d8c8b8a898d98a4a79a8f898a8b8c8d8e8f909192939495968a7d7063564a3d3023170a00101c2936434f5c697683909ca9b6b4a89d91857a6e63594f463f3b383737393d444d58636e7985919da9aea295897d7164584c3f33261a0e010006111c263039404548494949494f5c69768390908376695c4f494949494845403930261c11060006111c263039404548494949494f5c69768390908376695c4f494949494845403930261c11060013202c3946535f6c7986938c807366594c403326190d0013202c3946535f6c798693a09e9289847e7a75706b66615c56514c47423d38332e29241f1a15100b06010000000000000000000000000000000000000000000000000000000000000000000000000002070c11161c21262b30353a3f44494e53585d62676c71767b80858a95a19d908376695d5043362a1d1000101c2936434f5c697683909ca9b4aca4988d81766b61574e463f3b383738393c45515d6975828e9aa7afa295897c7063564a3d3024170a000000000000000000000000000000000008131e29333e49545f69747f8a959f978c82776c61564b41362b20150b000000000000000000000000000000000000111e2a37434f5a646b6c6c6c6c6c6c6c6c6b655b4f44382c201408000000000000000b17232f3b47535e676c6c6c6c6c6c6c6c6c6960564a3e3225190c0013202c3946535f6c798693a0acacacaba7a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a09386796d6053463a2d201307000005121e2a36424f5b67737f8b97a3aca195897d72675c51473e37322f2e2f31363d46505b66717d8894a0aca3978b8073675b4f43372b1e120600000000000000000000000000000000010102030201000007101a222b333b424a5259616870777f878e97a0a79f968e857b71675d52483d32261b100400000000000000020c162029323b434c545c646c737b828a9199a0a59d968e867e756c635a50463c31261c1105000000000000000000000000000000000000000000070f161d22262728282828282828282828282f3c4855626f7b8895a2a09386796c5f5346392c28282828282828282828282725211c150d05000000000000000000000a15202c36414c57616b758089929ca5ada9a0989088817b75706b6764615f5d5c5b5b5b5c5e5f6265686d71777d848b929ba3acaba29990867c72685e53493e33281d1206000000000000000000000000000000000000000006121e2935414d5965707c8894a0aba2968a7e72665a4f57636f7b87939faba3988c8074685c5045392d21150a0000000000000000000000000000000000000000000000000000000000000004121e2b3845515e6b7784919eaba99c8f8275695c4f4336291c100013202c3946535f6c79868a898887868584828281807e7d7c8996a2a6998c807d7e7f8081828384858687888a8a7d7063564a3d3023170a00101c2936434f5c697683909ca9b3aaa29f968b80756b6158504b4745444445494e565f69747f8a96a2aea99d9185796d6155483c3023170b00000b17222e38424b515555555555555c69768390908376695c555555555555514b42382e22170b000b17222e38424b515555555555555c69768390908376695c555555555555514b42382e22170b0013202c3946535f6c7986938c807366594c403326190d0013202c3946535f6c798693a09d9085807a75706b66615c57524d48433e39342f2a25201b16110c070200000000000000000000000000000000000000000000000000000000000000000000000000000004090e13181d22272c31363b40454a4f54595e63686d72777c818793a09d908376695d5043362a1d1000101c2936434f5c697683909ca9ada29b9893887d73696057504b4745444446484d57626d7985919daaaca093877a6e6154483b2f2215090000000000000000000000000000000000010c17222d37424d58636d78838e999e93887d73685d52473d32271c110600000000000000000000000000000000000e1a26323e48525a5f5f5f5f5f5f5f5f5f5f5a53493e33271b10040000000000000007131f2b37424c555c5f5f5f5f5f5f5f5f5f5d574e44392d2216090013202c3946535f6c798693a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a09386796d6053463a2d2013070000020e1a26323e4b57636e7a86929ea9a69a8f83786e63595049423e3c3b3c3e41474f58626d77838e99a5a99e92877b6f63574b3f33271b0e020000000000000000010508090a0b0c0c0d0e0f0f0f0d0a05000710192129313840484f565e656d747c858e97a0a8a0978d83796f64594e43382c2115090000000000000000040e172029313a424a525a6169707880878f969fa7a09890877e756b62584d43382d22170b000000000000000000000000000000000000000006101921282e32343434343434343434343434343c4855626f7b8895a2a09386796c5f53463934343434343434343434343434312d271f170d04000000000000000000040f1a25303a454f59636d77818a939ba3abaaa29a938c86817b7773706e6b6a69686868696a6c6e7174787d82888f959da4aca9a19990877e746a60564c41372c21160b000000000000000000000000000000000000000000010d1925313c4854606b77838f9ba7a69b8f83776b5f535c6874808c98a3aa9f93877b6f63584c4034281c11050000000000000000000000000000000000000000000000000000000000000006131f2c3945525f6c7885929faba89b8e8275685b4f4235281c0f0013202c3946535f6c797e7d7c7b7a7978777675747371707d8a96a3a79a8d817471727374757677797a7b7c7d7e7c7063564a3d3023170a00101c2936434f5c697683909ca9ada298929392877d736a625b57535251515255596068717b86919ca7b0a4998d8175695d5145392c20140800000f1b27333f4a545c616262626262626976839090837669626262626262615c544a3f33271b0f000f1b27333f4a545c616262626262626976839090837669626262626262615c544a3f33271b0f0013202c3946535f6c7986938c807366594c403326190d0013202c3946535f6c798693a0a197908b86817c77726d68635e59544f4a45403b36312c27221d18130e09040000000000000000000000000000000000000000000000000000000000000000000000050a0f14191e23282d32373c41464b50555a5f64696e73787d82878c9199a49d908376695d5043362a1d1000101c2936434f5c697683909ca9a79b908b908f857b7269625c57535151515254585f69737e8a95a1ada99d9184786b5f5246392d20140700000000000000000000000000000000000005101b26313b46515c67717c87929d9a8f84796f64594e43392e23180d02000000000000000000000000000000000a16212c3740484f525353535353535353524f4941372d22160b0000000000000000030e1a25303a434b50535353535353535353514c453c32281d11050013202c3946535f6c79869393939393939393939393939393939393939393939393939393939393939393939393939393939386796d6053463a2d2013070000000a16222e3a46525e6a75818d98a3aba0958a80756b625a544e4b4948484a4d5259616a747e89949faaa4988d81766a5e52473b2f23170b0000000000000000070d111416171818191a1b1c1c1c1916110b04070f171f262e363d454c535b636a737c858e98a2a99f958b81766b6054493d32261a0e020000000000000000050e171f283038404850575f666e757d858c959ea7a29990877d74695f544a3e33281c1105000000000000000000000000000000000000020d18222b33393e41414141414141414141414141414855626f7b8895a2a09386796c5f534641414141414141414141414141403d3831291f150b0000000000000000000009131e29333d48515b656e778189929aa1a9aca59e97928c8883807d7a7877757575757677797b7d8185898e949aa0a7ada69f978f877e756b62584e443a30251b1005000000000000000000000000000000000000000000000814202c37434f5b67737e8a96a2ab9f93877b6f6458616d7884909ca8a69a8e82766a5f53473b2f23180c00000000000000000000000000000000000000000000000000000000000000000714202d3a4653606d798693a0aca79a8e8174675b4e4134281b0e00121f2b3844515d687071706f6e6d6c6b6a6968676665717e8b97a4a89b8e817568666768696a6b6c6d6e6f7071716b6054483b2f22160900101c2936434f5c697683909ca9a99d918689948f857c746d6763605e5d5d5f61656b727a838d97a2ada99e93887c7065594d4135291c10040000121e2b3744505b666e6f6f6f6f6f6f6f7683909083766f6f6f6f6f6f6f6e665b5044372b1e1200121e2b3744505b666e6f6f6f6f6f6f6f7683909083766f6f6f6f6f6f6f6e665b5044372b1e120013202c3946535f6c7986938c807366594c403326190d0013202c3946535f6c798693a0a8a19c97928d88837e79746f6a65605b56514c47423d38332e29241f1a15100b0601000000000000000000000000000000000000000000000000000000000002070c11161b20252a2f34393e43484d52575c61666b70757a7f84898e93989da3a79d908376695d5043362a1d1000101c2936434f5c697683909ca9a5998c7f89948d847b746d6763605e5d5e5f61646a717a85909ba6b1a5998d8175685c5043372a1e11050000000000000000000000000000000000000009141f2a353f4a55606b75818b96a1968b80756b60554a3f342a1f14090000000000000000000000000000000005101a252e373e4346464646464646464646433e372f251b100500000000000000000009141e283139404446464646464646464645413b332a21160b000013202c3946535f6c79868686868686868686868686868686868686868686868686868686868686868686868686868686868686796d6053463a2d20130700000006121e2a36414d5964707b87929da8a69c91877d746c655f5a5755555557595e646b737c86909ba5a89d92877c7065594d42362a1e1206000000000000030b12181d212323242526272828292826221c150e05050d151c242b333a42495159616a737c86919ba6a79d92877c71655a4e42362a1e1206000000000000000000050d161e262e363e454d545c636b727a838c959ea8a29990867b71665b5044392d22160a00000000000000000000000000000000000008141f29343d444a4d4e4e4e4e4e4e4e4e4e4e4e4e4e4e55626f7b8895a2a09386796c5f534e4e4e4e4e4e4e4e4e4e4e4e4e4e4d49433b31271c1106000000000000000000020c17212b364049535c656e7780888f979ea4aba9a39d9894908c8987858382828282828485878a8d91959a9fa5aba8a29c948d857d756c635950463d32281e14090000000000000000000000000000000000000000000000030f1b27333f4a56626e7985919da9a4988c8074685c65717d8995a1ada195897d72665a4e42362b1f130700000000000000000000000000000000000000000000000000000000000000000815222e3b4854616e7a8794a1ada6998c8073665a4d4033271a0d00101c2834404b565f6465646362615f5e5d5c5b5a5965727f8c98a5a89c8f8275695c5a5b5c5d5e5f60616263646561594e43382c20130700101c2936434f5c697683909ca9a99c8f82838e978e867e78736f6d6b6a6a6b6d71767c848c959fa9ada3988d82766b6054483c3024180c00000013202c3946535f6c787c7c7c7c7c7c7c7c839090837c7c7c7c7c7c7c7c786c5f5346392c20130013202c3946535f6c787c7c7c7c7c7c7c7c839090837c7c7c7c7c7c7c7c786c5f5346392c20130013202c3946535f6c7986938c807366594c403326190d0013202c3946535f6c798692979ca1a6a39e99948f8a85807b76716c67625d58534e49443f3a35302b26211c17120d08030000000000000000000000000000000000000000000000000004090e13181d22272c31363b40454a4f54595e63686d72777c81868b90959a9fa4a5a09b96908376695d5043362a1d1000101d2a3643505d697683909da9a5988c7e828d968d857e78736f6c6b6a6b6b6d70757b838d97a1acaca095897d7165594c4034271b0f0200000000000000000000000000000000000000030d18232e39444e59646f7a858f9a9d92877c71665c51463b30261b10050000000000000000000000000000000009131c252c32373939393939393939393937332d251d130900000000000000000000020c161f282f34383939393939393939393835302921180f040000131f2c3946525f6b76797979797979797979797979797979797979797979797979797979797979797979797979797979797979766b5f5346392d201306000000010d1925313c48535f6a75818b96a1aba39990877e77706b676462616263666a6f757d858e98a2aba1968c81766a5f54483d31251a0e020000000000020c151d24292d2f303132333334353635322d2720170e04030a121a212830373f474f57616a747f8a95a0aba4998d82766a5f53473b2e22160a00000000000000000000040c141c242c333b424a525961697179838c96a0aaa2978d82776c61554a3e32261a0e0200000000000000000000000000000000000d1925303b454f565a5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b626f7b8895a2a09386796c5f5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b59554d43392e22160a00000000000000000000050f1a242e37414a535c656d767e858c93999fa5aaa9a4a09c98969391908f8e8e8f8f90929496999da1a5aaa8a39d97918a837b736b625a51473e342b21170c020000000000000000000000000000000000000000000000000a16222e3a45515d6975818c98a4a89c9084786c606a76828e9aa6a89c9085796d6155493d32261a0e0200000000000000000000000000000000000000000000000000000000000000000a1623303c4956626f7c8895a2aea5988b7e7265584c3f3226190c000c18242f3a444d54585857565554535251504f4d5a6673808d99a6a99d9083766a5d504e4f505152535556575858554f473d32271b0f0300101d2936434f5c697683909ca9a89c8f827d8892989089847f7b79787777787a7d82878e969ea7aea59b91867b70655a4f43372c20140800000013202c3946535f6c798689898989898989899292898989898989898986796c5f5346392c20130013202c3946535f6c798689898989898989899292898989898989898986796c5f5346392c20130013202c3946535f6c7986938c807366594c403326190d0013202c3946535f6c7982878b90959a9fa4a49f9a95908b86827c77726d68635e59544f4a45403b36312c27221d18130e0904000000000000000000000000000000000000000000050a0f14191f23282d32383c42474b51555b6064696e73787d83888d92979ca1a6a39e99948f8a858176695d5043362a1d1000101d2a3643505d697683909daaa5988b7e7b8690979089847f7b79777777787a7d81868d959fa8afa59a8f84786c6155493c3024180b00000000000000000000000000000000000000000007121c27323d48525d68737e89939e998e83786d62584d42372c21170c01000000000000000000000000000000010a131a21262a2c2c2c2c2c2c2c2c2c2c2a27211b130b010000000000000000000000040d161d23282b2c2c2c2c2c2c2c2c2c2c29241f170f06000000111e2a37434f5a646b6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6b645a4f43372b1e1205000000000914202b37424e59646f7a858f99a3aba2999088827b7773706f6e6f7072767a80878f97a0aaa3998f857a6f64594e43372c2015090000000000000a141e272e35393c3d3e3e3f40414242423e39312920150b0000080f171e262d353d454f58636d78848f9aa6aa9e93877b6f63574b3e3225190d0000000000000000000000020a121a2229313840474f575f67717a848e99a4a99f94897d72665a4f43372b1e12060000000000000000000000000000000000101d2935414d576167676767676767676767676767676767676f7b8895a2a09386796c67676767676767676767676767676767665f554a3f33261a0e000000000000000000000008121c252f38414a535c646c737a82888e94999ea2a6aaa8a5a2a09e9d9c9b9b9b9c9d9ea0a3a6a9a9a5a19c97928c867f787169615950483f352c22190f050000000000000000000000000000000000000000000000000006111d2935414c5864707c88939faba195897d71656e7a86929eaaa3978c8074685c5045392d2115090000000000000000000000000000000000000000000000000000000000000000000b1825313e4b5764717d8a97a3b0a3968a7d7064574a3e3124180b0007121d28323b42484b4b4a49484746454443424e5b6774818e9aa7aa9e9184776b5e5145434445464748494a4b4b49443d352b21160a0000101d2a3643505d697683909da9a89b8e8276808b949b948f8b88868484848586898d9299a0a8aca49c93897f746a5f54493d32271b0f0300000013202c3946535f6c798693969494949494949494949494949494969386796c5f5346392c20130013202c3946535f6c798693949494949494949999949494949494949386796c5f5346392c20130013202c3946535f6c7986938c807366594c403326190d00121f2b3844515d6871767b80858a8f93989da2a6a19c97928d88837e79746f6a65605b56514c47423d38332e29241f1a15100b060100000000000000000000000000000002070c11161b20252a2f34393e43484d52575c61666b70757a8084898e93989da2a6a19c97928d88847e7a756f665a4e4235291c0f00101d2a3743505d6a7683909daaa4988b7e747e88929b958f8b88868484848587898d91989fa8afa79d93897e73675c5044382c201408000000000000000000000000000000000000000000000b16202b36414c56616c77828d979f948a7f74695e53493e33281d130800000000000000000000000000000000010910161a1e1f2020202020202020201e1b1610090100000000000000000000000000040b12181c1f2020202020202020201f1d19130d06000000000e1a26323e48525a5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5a52493e33271b0f0200000000030f1a26313c48535d68737d87919aa3aba29a938d8783807d7b7b7b7c7e82868c9299a1a9a39a91877d73685e53483d31261b0f04000000000006111c2630394046494a4a4b4c4d4e4f4f4e4a433b31271c11050000050c141b232b333d46515c67727e8a96a2aea3978b7f73665a4e4135281c0f030000000000000000000000000810171f262e353d454d555f68727c87929da9a59a8e83776b5f53473b2e2216090000000000000000000000000000000000121f2c3845515d697274747474747474747474747474747474747b8895a2a0938679747474747474747474747474747474747471675b4f4236291c100000000000000000000000000a131d262f38414a525a616970767d83888d92969a9ea1a3a5a7a8a9a8a8a8a8a9a9a8a7a5a29f9c9995908c86817b746d665f574f473e362d231a10070000000000000000000000000000000000000000000000000000010d1824303c48535f6b77838f9aa6a5998d817569727e8a97a3aa9f93877b6f63574c4034281c10050000000000000000000000000000000000000000000000000000000000000000000d1a2733404c5966727f8c98a5aea195887b6f6255493c2f23160a00010c16202931373c3e3f3d3c3b3a39383736424f5b6875828e9ba8ab9f9285786c5f5245393738393a3b3c3d3e3f3d39332b23190f040000111d2a3744505d6a7683909daaa79a8e817478828c959d9b979592919190919396999ea4aaa8a19a928a81776d63584e43382c21160a0000000013202c3946535f6c7986938d87878787878787878787878787878d9386796c5f5346392c20130013202c3946535f6c798687878787878787889191888787878787878786796c5f5346392c20130013202c3946535f6c7986938c807366594c403326190d00101c2834404c565f656a6f74797e83888d92979ba0a5a39e99948f8a85807b76716c67625d58534e49443f3a35302b26211c17120d0803000000000000000000000004090e13181d22272c31363b40454a4f54595e63686d72777c81868b90959a9fa4a49f9a95908c87827d78736e69645d54493e3226190d00111d2a3744505d6a7784909daaa4978a7d71768089929a9b979492919191929395999da3a9aaa49d958c82776c61564b3f34281c100400000000000000000000000000000000000000000000040f1a242f3a45505b65707b86919b9b90867b70655a4f453a2f24190e040000000000000000000000000000000000050a0e1113131313131313131313110f0a050000000000000000000000000000000001070c101213131313131313131312100d080200000000000a16212c3740484f52535353535353535353535353535353535353535353535353535353535353535353535353535353535353524f4940372c21160a0000000000000915202b36414c56616b757f889199a1a8a59e98938f8c8a888888898b8e92979da3a9a29a91897f756b61574c41362b20150a0000000000000b17222e38424b5155565758595a5a5b5c5a554d43392d22160a00000002091119212b353f4a56616d7986929eaba79b8f8276695d5044372a1e110500000000000000000000000000060d151c242b333b434d56606b75818c98a4ab9f93877b6f63574a3e3125180c000000000000000000000000000000000013202c3946535f6c798181818181818181818181818181818181818995a2a0938681818181818181818181818181818181818176695d5043362a1d10000000000000000000000000010b141d262f38404850575e656b72777d82868a8e919497999a9c9d9e9e9e9e9d9d9b9a989693908d8984807b756f69635c554d453d352c241b11080000000000000000000000000000000000000000000000000000000008141f2b37434f5a66727e8a96a1a99d9185796d76838f9ba7a69a8e82766a5f53473b2f23180c00000000000000000000000000000000000000000000000000000000000000000003101c2935424e5b6874818d9aa7ac9f9386796d6054473a2e2115080000040e171f262c30323231302f2e2d2c2b3643505c6976838f9ca9aca09386796d6053463a2d2b2c2d2e2f313232302d2821191007000000111e2a3744515d6a7784909da2a29a8d8073707a838b92999ea19f9e9d9d9ea0a2a5a8a5a19c96908980786e655b51473c31261b10040000000013202c3946535f6c7986938b7e7a7a7a7a7a7a7a7a7a7a7a7a7e8b9386796c5f5346392c20130013202c3946525f6b777a7a7a7a7a7a7a7a839090837a7a7a7a7a7a7a7a776b5f5246392c20130013202c3946535f6c7986938c807366594c403326190d000c18242f3a444d54595e63686d72777c81868b90959a9fa3a5a09b96918c87827c77736d69635e5a54504a45403b36312c27221d18130e080200000000000000030a10151a1f24292e33383d42474c51565b60656a6f74797e83888d92979ca1a6a29d98948f8a85807b76716c67625d58534b42382d21160a00111e2b3744515d6a7784919ea2a2968a7d706d7680888f969ca19f9e9e9e9ea0a2a5a9a6a39f99938b837970655b50453a2e23170b00000000000000000000000000000000000000000000000008131e29333e49545f69747f8a959f978c82776c61564b40362b20150a00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005101a252e373e434646464646464646464646464646464646464646464646464646464646464646464646464646464646464646433e372e251b1005000000000000030f1a252f3a454f59636d767f878f979da3a9a49f9b989695959596989a9ea3a8a49e9790887f766d63594f453a30251a0f040000000000000f1b27333f4a545c626364656566676869665f554a3e32261a0d0100000000070f19232e3945515d6a76838f9ca8aa9e9185786b5f5245392c1f13060000000000000000000000000000030a12192129313a444e5964707b8793a0aca4978b7e7266594d4034271b0e010000000000000000000000000000000013202c3946535f6c79868e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e919aa5a3988f8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8376695d5043362a1d1000000000000000000000000000020b141d262e363e454c535a60666c71767a7e8285888a8c8e8f909191919191908f8d8b898784817c78746f6a645e58514a433b332b231a12090000000000000000000000000000000000000000000000000000000000030f1b26323e4a56616d7985919ca8a295897d717a87939faba195897d71665a4e42362a1f130700000000000000000000000000000000000000000000000000000000000000000006121f2b3844515d6a7683909ca9aa9d9184776b5e5245392c1f1306000000050d141b2023252524232221201f2b3744515d6a7784909daaada094877a6d6154473b2e212021222324252524211c160f0700000000121e2b3844515e6b778491969696968c7f7368707981878d93979a9c9e9fa0a09f9e9c9995918b857e766e665d53493f352a20150a000000000013202c3946535f6c7986938b7e716d6d6d6d6d6d6d6d6d6d717e8b9386796c5f5346392c201300111e2a37434f5a656c6d6d6d6d6d6d6d7683909083766d6d6d6d6d6d6d6c655a4f43372a1e110013202c3946535f6c7986938c807366594c403326190d0007131e28323b43494e52575c61666b70757a7f84898e93989da2a6a19c97928d88837e79746f6a65605b56514c47423d38332e29241f1a130c030000000000050d151b20252a2f34393e43484d52575c61666b70757a80858a8e94999ea3a5a09c97928d88837e79746f6a65605b56514c47413930261b100500121e2b3845515e6b77849195959595897c6f646d767e858b9095989b9d9f9f9f9f9e9c9a97938e88817970675e54493f34281d1206000000000000000000000000000000000000000000000000010c17222d37424d58636d78838e999e93887d73685d52473c32271c11060000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000306090b0d0e0e0f0f0e0d0c0a080603000000000000000000000000000009131c252c3237393939393939393939393939393939393939393939393939393939393939393939393939393939393939393937322c251c1309000000000000000008131e28333d47515b646d757d858c92989da1a4a7a5a3a2a2a2a2a4a7a5a29d99938c857e766d645b51473d33291e130800000000000000121e2b3744505b666e707171727374757571665a4e4235281c0f03000000000007111d2935424e5b6774818e9aa7aca09386796d6053473a2d20140700000000000000000000000000000000070f171f28323d48535f6b7783909ca2a29a8e8275685c4f4236291c10030000000000000000000000000000000013202c3946535f6c7986939b9b9b9b9b9b9b9b9b9b9b9b9b9b9b9b9ca2abaaa19c9b9b9b9b9b9b9b9b9b9b9b9b9b9b9b9b908376695d5043362a1d100000000000000000000000000000020b141c242c343b42494f555b60656a6e7275787b7d8081828384848584848382817e7d7a7774706c68635e59534d464038312922191108000000000000000000000000000000000000000000000000000000000000000a16222d3945515d6874808c98a3a69a8d81757e8b97a3a89c9084786d6155493d32261a0e020000000000000000000000000000000000000000000000000000000000000000000815212e3a4753606c7985929eaba79b8e8275695c5043362a1d110400000000030a0f1417181817161514131f2c3845525e6b7885919eabaea195887b6e6255483c2f22151415161718181715110b050000000000131f2c3945525f6b78858989898989897e7165676f767c82878a8d909192939392918f8c8985807a736c655c544a41372d23190e03000000000013202c3946535f6c7986938b7e7165606060606060606065717e8b9386796c5f5346392c2013000f1b27333e49535b606060606060606976839090837669606060606060605b53493e33271b0f0013202c3946535f6c7986938c807366594c403326190d00010c16202931383d42474c51565b5f64696e73787d82878c91969ba0a5a39e99948f8a85807b76716c67625d58534e49443f3a35302b251e150c02000000050e171f262c31363b40454a4f54595e63686d72777c81868b90959a9fa4a39f9a95908b86817c77726d68635e59544f4b46413c362f271e140a0000131f2c3946525f6c78858888888888887b6f62646c737a8085898c8f919292939291908d8a87827c766f675e554c42382d22170c010000000000000000000000000000000000000000000000000005101b26313b46515c67717c87929d9a8f84796e64594e43382e23180d020000000000000000000000000000000004080b0c0c0b0804000000000000000000000000000000000105090d10131517191a1b1b1b1b1a191715120f0b07020000000000000000000000010a131a21262a2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2a27211b130a010000000000000000010c17212b353f49525b636b737a81878c9195989b9d9e9f9f9f9e9d9b9995928d88827b746c645b52493f362c21170c020000000000000013202c3946535f6c787c7d7e7f8081828276695d5044372b1e12060000000000000d1a2734404d5a6773808d9aa6ada194877a6d6154473a2e2114070000000000000000000000000000000000050d16202b37434f5b6874818d959595959083776a5d5044372a1e11040000000000000000000000000000000013202c3946535f6c798693a0a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a7abb3b1aaa6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a69d908376695d5043362a1d10000000000000000000000000000000020a121a222930373e444a4f54595e6266696c6f7173747677777778777776757472706e6b6864605c57524d47423b352e271f181007000000000000000000000000000000000000000000000000000000000000000005111d2934404c58646f7b87939faa9d918579828e9ba7a3978c8074685c5044392d211509000000000000000000000000000000000000000000000000000000000000000000000b1824313d4956626f7b8894a1ada5988c7f73665a4d4134281b0f0200000000000003070a0c0c0b0a090813202c3946535f6c7986929facafa296897c6f6356493d3023160a08090a0b0c0b08050000000000000013202c3946535f6c787c7c7c7c7c7c7c7b70635d646b71767a7e818385868686868482807d79746f69625a534a42382f251b110700000000000013202c3946535f6c7986938b7e7165585353535353535865717e8b9386796c5f5346392c2013000a16212d3741494f5353535353535c69768390908376695c5353535353534f4941372d21160a0013202c3946535f6c7986938c807366594c403326190d0000050e171f262c31363b40454a4f54595e63676c71767b80858a8f94999ea3a5a09b96918c87827d78736e69645f5a55504b46413c362f271e140a0000010c16202931383d42474c51565b60656a6f74797e83888d92979ca1a6a29d98938e89847f7a75706b66615c57524e49443f3a35302b251e150c02000013202c3946525f6c777b7b7b7b7b7b7b796d615a61686e74787c808284858686868483817e7b76716b645d554c433a30261b110600000000000000000000000000000000000000000000000000000009141f2a353f4a55606b75818b96a1968b80756a60554a3f34291f14090000000000000000000000000000030a10141719191815100a0400000000000000000000000105090d1115191c1f2224262728282828272524211f1b17130e090300000000000000000000010910161a1e1f2020202020202020202020202020202020202020202020202020202020202020202020202020202020201f1e1b1610090100000000000000000000050f19232d374049515a61696f767b8185898c8e909192929292908f8c8986817c767069625a524940372d241a0f050000000000000000131f2c3945525f6b78858a8b8c8d8d8e85786c5f53473a2e23170e0704030304060e1a2734404d5a6773818d9aa6aea194877a6d6154473a2e211407000000000000000000000000000000000000040f1a2733404c5966727f88888888888884776b5e5145382b1e12050000000000000000000000000000000013202c3946535f6c798693999999999999999999999999999999999aa1aaa89f9a99999999999999999999999999999999908376695d5043362a1d1000000000000000000000000000000000000810171f262c36414b545b5e5e5e5e5e5f62646668696a6a6b6b6b6a6a69676663615e5e5e5e5e5e5c554c42372b231c150d06000000000000000000000000000000000000000000000000000000000000000000000c1824303b47535f6b76828e9aa6a195897d86929faa9e93877b6f63574c4034281c1005000000000000000000000000000000000000000000000000000000000000000000020f1b2734404c5965727e8b97a3aea295897c7064574b3e3225190c0000000000000000000000000000000714212d3a4753606d7a8693a0adb0a3978a7d7064574a3d3124170b000000000000000000000000000000121e2b3744505b666e6f6f6f6f6f6f6f6f695f545960656a6e7274767879797979787673706d68635d57504941382f261d13090000000000000013202c3946535f6c7986938b7e7165584b474747474b5865717e8b9386796c5f5346392c20130005101b252f373e4446474747474f5c69768390908376695c4f4747474746443e372f251b10050013202c3946535f6c7986938c807366594c403326190d000000050d151b20252a2f34393e43484d52575c61666b6f74797e83888d92979ca1a6a29c97928d89847e79746f6a65605b56514c47413930261b10050007131e28323b43494e53585d62676c71767b80858a8f94999ea3a5a09b96918c87827d78736e69645f5b56514c47423d38332e29241f1a130c03000000121e2b37434f5b666d6e6e6e6e6e6e6e6d675c51575d63686c7073767778797979787674726e6a66605a534b433a31281e140a00000000000000000000000000000000000000000000000000000000030d18232e39444e59646f7a848f9a9c92877c71665b51463b30251b1005000000000000000000000000050e151b2024262624211c150e07010000000000000105090d1116191d2125292c2e313234353535343332302e2b27231f1a140e080100000000000000000000050a0e111313131313131313131313131313131313131313131313131313131313131313131313131313131313131313110e0a050000000000000000000000000007111b242e373f484f575e646a7074797c7f828385868686858482807d7975706b655e57504840372e251b1208000000000000000000111e2a3744505d6976828f9898999a94877b6f63574b3f34292018141110101113171f2a36424f5b6874818e9ba7ada094877a6d6154473a2e211407000000000000000000000000000000000000000c1825323f4b5865717b7b7b7b7b7b7b7b766a5e5145382b1e12050000000000000000000000000000000013202c3946535f6c79868c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8f99a4a2978e8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8376695d5043362a1d10000000000000000000000000000000000000060d16222f3b47535d666b6b6b6b6b6a645e595b5c5d5e5e5e5e5d5d5c5b595d646a6b6b6b6b6b675e53483c2f23160a03000000000000000000000000000000000000000000000000000000000000000000000007131f2b37424e5a66727d8995a1a5998d818a96a3a59a8e82766a5e53473b2f23170c0000000000000000000000000000000000000000000000000000000000000000000006121f2b3743505c6875818d9aa6ab9f9286796d6154483b2f23160a0000000000000000000000000000000815222e3b4855616e7b8894a1acaca4988b7e7165584b3e3225180c0000000000000000000000000000000f1b27333f4a545c6162626262626262625e574d4e545a5e6265686a6b6c6c6c6c6b696764615c58524c453e372f261d140b010000000000000013202c3946535f6c7986938b7e7165584b3e3a3a3e4b5865717e8b9386796c5f5346392c2013000009131d252d33373a3a3a3a434f5c69768390908376695c4f433a3a3a3a37332d251d1309000013202c3946535f6c7986938c807366594c403326190d00000000030a10151a1f23282d32373c41464b50555a5f64696e73777c81868b90959a9fa4a39e99948f8a85807b76716c67625d58534b42382d21160a000c18242f3a444d54595e63686d72777c81868b90959a9fa4a39e99948f8a85807b76716c67635e59544f4a45403b36312c27221d18140e0802000000000f1b27333f4a545c6161616161616161615d554b4c52575c606467696b6c6c6c6c6b6a6865625e5a554f48413931281f160c02000000000000000000000000000000000000000000000000000000000007121c27323d48525d68737e89939e988e83786d62574d42372c21160c0100000000000000000000050e1720272c303333312d272019120c07050405070a0d1115191d22262a2d3135383b3d3f4141424241403f3d3a37342f2a252019130c0500000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000009121c252d363e454c53595f64686c707375777879797978777573706d69655f5a544d463e362e251c1309000000000000000000000f1c2835414e5a6773808c98a5a6a3978b7f73675c50453b322a24201e1d1c1d1f2328313b46525e6a7783909ca9ac9f9286796c605346392d201307000000000000000000000000000000000000000a1724303c495560696e6e6e6e6e6e6e6e6d655a4e4236291d10040000000000000000000000000000000013202c3946535f6c797f7f7f7f7f7f7f7f7f7f7f7f7f7f7f7f7f7f8895a2a093867f7f7f7f7f7f7f7f7f7f7f7f7f7f7f7f7f7f76695d5043362a1d10000000000000000000000000000000000000000b1724313d4a57636f7878787878766f69625b5550515151515150535a61686f7678787878787064574b3e3225180b000000000000000000000000000000000000000000000000000000000000000000000000020e1a26323e4955616d7884909ca89d928c909ba6a195897d71655a4e42362a1f1307000000000000000000000000000000000000000000000000000000000000000000000a16222e3b47535f6c7884919da9a79b8f83766a5e5145382c2013070000000000000000000000000000000916232f3c4955626f7b8895a0a0a0a0988c7f7265594c3f3326190d0000000000000000000000000000000b17222e38424b51555555555555555555534d4543494e5256595b5d5e5f5f5f5f5e5d5b5854504c47413b342d251d140b02000000000000000013202c3946535f6c7986938b7e7165584b3e3d3d3e4b5865717e8b9386796c5f5346392c201300000b151f282f363a3d3d3d3d434f5c69768390908376695c4f43362d2d2d2b27221b130b01000013202c3946535f6c7986938c807366594c403326190d00000000000004090e13181d22272b30353a3f44494e53585d62676c71767a8084898e93989da2a5a09b96918c87827d78736e69645d54493e3226190d00101c2834404c565f656a6f74797e83888d92979ca1a6a19c97928d88837e79746f6b66615c57524d48433e39342f2a25201c17120d08030000000000000b17222d38424a51545555555555555554514b4341464c5054575a5c5e5f5f5f5f5e5d5b5956524e49443d372f271f160d04000000000000000000000000000000000000000000000000000000000000000b16202b36414c56616c77828d979f948a7e74695e53483e33281d1208000000000000000000010c17202931383d3f3f3d38322a241d181411111214171a1d21252a2e32363a3d4144474a4c4d4e4e4e4e4d4b494743403b36312b241e1710080000000000000000000000000000000000000000000000000000000003060707070707070707050300000000000000000000000000000000000000000000000000000000000000000000000a131b242c333b42484e53585c606366686a6b6c6c6c6b6a696764615d59544e48423b342c241c130a01000000000000000000000d1926323f4b5764707c8995a1ada79b8f84786d62574d443b35302c2a29292a2c2f333a434d57636e7a87939fabaa9d9184776b5e5245382c1f1206000000000000000000000000000000000000000814202c38434e575e6161616161616161605b53493d32261a0e0100000000000000000000000000000000121f2b3844515d687172727272727272727272727272727272727b8895a2a093867972727272727272727272727272727272726f665a4e4235291c0f000000000000000000000000000000000000000b1824313e4b5764717e85858585817a736d666059534c464a50575e656c737981858585857e7265584c3f3225190c000000000000000000000000000000000000000000000000000000000000000000000000000915212d3944505c6874808b97a3a49c999ba2a89c9084786d6155493d31261a0e02000000000000000000000000000000000000000000000000000000000000000000020e1a26323e4b57636f7b8894a0aca4988b7f73675a4e4235291d10040000000000000000000000000000000a1724303d4a5663707d899393939393938d8073675a4d4034271a0e01000000000000000000000000000006111c263039404548494949494949494947423b383d4246494c4f50525353535252504e4b4844403b363029221b130b0200000000000000000013202c3946535f6c7986938b7e7165584b4a4a4a4a4b5865717e8b9386796c5f5346392c20130006121d27313a41474a4a4a4a4a4f5c69768390908376695c4f43362920201f1b1610090100000013202c3946535f6c7986938c807366594c403326190d000000000000000002070c11161b20252a2f33383d42474c51565b60656a6f74797d83888c91969ba0a5a29d98938e89847e7a756f665a4e4235291c0f00121f2b3844515d6871767b80858a8f94999ea3a49f9a95908b86817c77736e69645f5a55504b46413c37322d28241f1a15100b0601000000000000000006111c262f383f45484848484848484848454039353b4044484b4e50515253535252504f4c4a46423d38322c251d150d040000000000000000000000000000000000000000000000000000000000000000040f1a242f3a45505a65707b86919b9b90857a70655a4f443a2f24190e03000000000000000007131e29323b43494c4c49433c352f2924201e1e1f202326292d31363a3e42464a4d515456585a5b5b5b5a59585653504c47423c362f28211a110800000000000000000000000000000000000000000000000000060c10121414141414141414120f0b050000000000000000000000000000000000000000000000000000000000000000000109121a222930373d42484c5054575a5c5d5e5f5f5f5f5e5c5a5855514d48433d373129221a120a0100000000000000000000000a16232f3b4854606c7985919da8aca095897e73695f564d46403c3937363637383b3f454c555e6974808b97a3afa79a8e8275695c5043362a1d11040000000000000000000000000000000000000006121d27323c454d53555555555555555554504941372c21150a0000000000000000000000000000000000101c2834404c565f65656565656565656565656565656565656f7b8895a2a09386796c65656565656565656565656565656565645d54493e3226190d000000000000000000000000000000000000000b1724313e4a57636f79838c92928c857e78716b645e5751545b626970777d848b92928d837a7064584b3e3225180c0000000000000000000000000000000000000000000000000000000000000000000000000005101c2834404b57636f7b87929ea7a7a6a7a7a3978b8074685c5044392d2115090000000000000000000000000000000000000000000000000000000000000000000007121e2a36424e5b67737f8b97a4aca094887b6f63574b3e3226190d010000000000000000000000000000000b1824313e4b5764717d86868686868686868174675b4e4135281b0e020000000000000000000000000000000a141e272e35393c3c3c3c3c3c3c3c3c3a36312c31363a3d40424445464646464543413f3c38342f2a241e171009010000000000000000000013202c3946535f6c7986938b7e7165585757575757575865717e8b9386796c5f5346392c2013000b17232e39434c525657575757575c69768390908376695c4f4336291c14120f0b05000000000013202c3946535f6c7986938c807366594c403326190d0000000000000000000000050a0f14191e23282d32373b40454a4f54595e63686d72777c81868b9094999ea3a39e99948f8a858176695d5043362a1d100013202c3946535f6c7982878c91969ba0a5a29d98938e8985807a76716c67625d58534e49443f3a35302b27221d18130e09040000000000000000000000000a141d262e34383b3b3b3b3b3b3b3b3b39352f2a2f34383c3f41434545464646454442403d3a36322d27211a130b030000000000000000000000000000000000000000000000000000000000000000000008131e28333e49545f69747f8a959f978c81766c61564b40362b20150a00000000000000000c18242f3a444d545859554e47403a34302d2b2a2b2d2f3236393d42464a4e5256595d60636567676868676664625f5c58534d47413a332c231a100500000000000000000000000000000000000000000000030b12171c1f20202020202020201f1b161009010000000000000000000000000000000000000000000000000000000000000000000810171e252b31373c4044484b4d4f51525253525251504e4b4845413c37322c261f1810080000000000000000000000000007131f2c3844505c6874808c98a3afa69b90857b71685f58514c48454443434345474b50565e67707a85909ca7afa3978b7e7266594d4134281b0f02000000000000000000000000000000000000000b17232e39434c5358585858585858585858554f463c32261b0f03000000000000000000000000000000000c18242f3a444d5458595959595959595959595959595959626f7b8895a2a09386796c5f59595959595959595959595959595958534b42382d21160a000000000000000000000000000000000000000916222f3b47535e677079838c9597908a837c766f69625b5f666d747a81888f96978d847a71685e53483c2f23170a00000000000000000000000000000000000000000000000000000000000000000000000000000c17232f3b47525e6a76828e999a9a9a9a9a9a92877b6f63574b4034281c1004000000000000000000000000000000000000000000000000000000000000000000000b17232f3b47535f6b77838f9ba7a89c9084786b5f53473b2f22160a000000000000000000000000000000000b1724313e4a5763707979797979797979797973675a4e4135281b0e02000000000000000000000000000000020c151d24292d2f2f2f2f2f2f2f2f2f2e2a2521262a2e31333637383939393938373532302c28241f19130d0600000000000000000000000013202c3946535f6c7986938b7e7165636363636363636365717e8b9386796c5f5346392c2013000f1c28343f4b555d6363636363636369768390908376695c4f4336291c1005030000000000000013202c3946535f6c79868686807366594c403326190d0000000000000000000000000003080d12171c21262b30353a3f43484d52575c61666b70757a7f84898e93989ca1a5a09b96908376695d5043362a1d100013202c3946535f6c798692979ca1a5a09b96918c88837d79746f6a65605b56514c47423d38332f2a25201b16110c07020000000000000000000000000000020b141c23282c2e2e2e2e2e2e2e2e2e2d29241e23282c2f323536383939393938373533312e2a26211c160f09010000000000000000000000000000000000000000000000000000000000000000000000010c17222d37424d58636d78838e999e93887d72685d52473c31271c110600000000000000101c2935404c565f65656058524b45403c393837383a3c3f4246494e52565a5e6266696d6f72737475747473716f6c68635e59524c453d352c22170c010000000000000000000000000000000000000000030c151c23282b2d2d2d2d2d2d2d2d2b27221b130b01000000000000000000000000000000000000000000000000000000000000000000050d141a20262b3034383b3e41424445464646454443413f3c3935302c26211b140d06000000000000000000000000000003101c2834404c58646f7b87929da8aca1978d837a7169635d585452504f4f505154575c61687079828c97a2ada99e92867a6e62564a3d3125180c00000000000000000000000000000000000000000f1b28343f4b555e6465656565656565656560584e43372b1f13060000000000000000000000000000000007131e28323b43484b4c4c4c4c4c4c4c4c4c4c4c4c4c4c55626f7b8895a2a09386796c5f534c4c4c4c4c4c4c4c4c4c4c4c4c4c4b47413930261b10050000000000000000000000000000000000000006131f2b36414c555e67717a838c959b948e87817a746d666a71787e858c939a978e857b72685f564c42372b1f1307000000000000000000000000000000000000000000000000000000000000000000000000000007131e2a36424e5965717d898d8d8d8d8d8d8d8d82766a5e52473b2f23170c0000000000000000000000000000000000000000000000000000000000000000000005101c28333f4b57636f7b87939faba3978b8073675b4f43372b1f1206000000000000000000000000000000000916222f3b47535e676c6c6c6c6c6c6c6c6c6c6961564b3f3226190d0000000000000000000000000000000000030b12181d20222222222222222222211e1a151a1e212427292a2c2c2c2c2c2b2a282623201c18130e08020000000000000000000000000013202c3946535f6c7986938b7e7170707070707070707070717e8b9386796c5f5346392c201300121e2b3844505c676f70707070707070768390908376695c4f4336291c10030000000000000000131f2c3946525f6b76797979797165584c3f3326190c00000000000000000000000000000001060b10151a1f24292e33383d42474b50555a5f64696e73787d82878c91969ba0a49d908376695d5043362a1d100013202c3946535f6c798693a0a39e9994908b86817c77726d68635e59544f4a45403b37322d28231e19140f0a05000000000000000000000000000000000000020a11181c20212222222222222222201d1813181c202326282a2b2c2c2c2c2b2a292724211e1a15100b04000000000000000000000000000000000000000000000000000000000000000000000000000005101b26313b46515c67717c87929d9a8f84796e63594e43382d23180d02000000000000121f2b3844515d6871716a635c56514c484644444546484b4e52565a5e62666a6e7276797c7e8081828181807e7b78746f6a645d564f473e33281d110500000000000000000000000000000000000000010b151e272e34383a3a3a3a3a3a3a3a37332d251d13090000000000000000000000000000000000000000000000000000000000000000000002090f151a1f24282c2f323436373839393939383634322f2c2925201b150f0903000000000000000000000000000000000c1824303b47535f6a75818c97a1aca99f958c837b746e6864615e5d5c5c5d5e6063676c737a828b949ea9aea3988d81766a5e52463a2e2115090000000000000000000000000000000000000000111e2b3744505c67707272727272727272716a6054473b2e22150900000000000000000000000000000000010c16202931383c3f3f3f3f3f3f3f3f3f3f3f3f3f3f4855626f7b8895a2a09386796c5f53463f3f3f3f3f3f3f3f3f3f3f3f3f3e3b362f271e140a0000000000000000000000000000000000000000020e1a25303a434c555f68717a838c959f99928c857e7871757c838990979e988e857c726960564d443a30261a0f030000000000000000000000000000000000000000000000000000000000000000000000000000020e1a25313d4955606c788181818181818181817d71655a4e42362a1e1307000000000000000000000000000000000000000000000000000000000000000000000a16212d3844505c6873808b97a3aa9f93877b6f63574b3f33271b0f030000000000000000000000000000000007131f2b37424c555c5f5f5f5f5f5f5f5f5f5f5e584f453a2e22160a00000000000000000000000000000000000000070d111416161616161616161615120e090e1115181a1c1e1f202020201f1d1c1a1714100c070200000000000000000000000000000013202c3946535f6c7986938b7e7d7d7d7d7d7d7d7d7d7d7d7d7e8b9386796c5f5346392c20130013202c3946535f6c787d7d7d7d7d7d7d7d8390908376695c4f4336291c10030000000000000000111e2a37434f5a646b6c6c6c6c685f54493d3024170b00000000000000000000000000000000000004090e13181d22272c31363b40454a4f54585d62676c71767b80858a8f94999d908376695d5043362a1d100013202c3946535f6c7986939c98938e89847f7a75706b66615c57524d48433f3a35302b26211c17120d080300000000000000000000000000000000000000000000060c101315151515151515151513110c070c101317191b1d1e1f20201f1f1e1c1a1815120e0904000000000000000000000000000000000000000000000000000000000000000000000000000000000009141f2a353f4a55606b75818b96a0968b80756a5f554a3f34291e140900000000000013202c3946535f6c797c756e68625c5855525151515355585b5e62666a6e72767a7e8285888b8d8e8e8e8d8c8a8884807b756f6861595045392e2215090000000000000000000000000000000000000007121d2730393f444747474747474746443e372f251b1005000000000000000000000000000000000000000000000000000000000000000000000004090f13181c1f222527292b2c2c2c2c2c2b2a282623201c19140f0a0400000000000000000000000000000000000007131f2b37424e59646f7a85909aa4aea79e958d867f7974706d6b6a6969696b6d6f73787e848c949da6b0a69c92877b7065594d42362a1e12050000000000000000000000000000000000000000121f2c3845525f6b787e7e7e7e7e7e7e7e7c6f6356493c302316090000000000000000000000000000000000050e171f262c30323232323232323232323232323c4855626f7b8895a2a09386796c5f534639323232323232323232323232322f2b251e150c0200000000000000000000000000000000000000000008131e28313a434d565f68717a838d969f9d97908a837c80868d949ba2988f867c736a60574e443b32281e1409000000000000000000000000000000000000000000000000000000000000000000000000000000000915212c3844505c6771737373737373737373736c6155493d31251a0e0200000000000000000000000000000000000000000000000000000000000000000004101b26323e4955616c7884909ca8a59a8e82766b5f53473b2f23170b0000000000000000000000000000000000030e1a25303a434b5053535353535353535353514d463d33281d12060000000000000000000000000000000000000000010507090909090909090909080602000205080b0e1011121313131312110f0d0a070400000000000000000000000000000000000013202c3946535f6c7986938f8a8a8a8a8a8a8a8a8a8a8a8a8a8a8f9386796c5f5346392c20130013202c3946535f6c79868a8a8a8a8a8a8a8b93908376695c4f4336291c100300000000000000000e1a26323e48525a5f5f5f5f5f5d564d43382c201408000000000000000000000000000000000000000003080c11161b20252a2f34393e43484d52575c60656a6f74797e83888d92908376695d5043362a1d100013202c3946535f6c798693918c87827d78736e69645f5a55504b47423d38332e29241f1a15100b060100000000000000000000000000000000000000000000000000000407080808080808080808070401000004070a0d0f1012121313131211100e0b09050200000000000000000000000000000000000000000000000000000000000000000000000000000000000000030d18232e39444e59646f7a848f9a9c91877c71665b50463b30251a1005000000000013202c3946535f6c79868079736d6864615f5e5d5e5f6164676a6e72767a7e82868a8e929597999b9b9b9a999794908c86807a736b61564a3e3125180b000000000000000000000000000000000000010d18242f39424a5053535353535353534f4941372d21160a0000000000000000000000000000000000000000000000000000000000000000000000000003080c101316191b1d1e1f1f201f1f1e1d1b191714100c08040000000000000000000000000000000000000000030e1a26313c48535e69747e88929ca5ada79f97918a85817d7a787676767677797c8084898f969ea6afa79e948a80756a5f54483d3125190d010000000000000000000000000000000000000000121f2c3845525f6b78858c8c8c8c8c8c897c6f6356493c30231609000000000000000000000000000000000000050d151b20242526262626262626262626262f3c4855626f7b8895a2a09386796c5f5346392c262626262626262626262625231f1a130c0300000000000000000000000000000000000000000000020c161f28313a434d565f68717a848d969fa29b948e878a91989fa29990867d746a61584e453c322920160d02000000000000000000000000000000000000000000000000000000000000000000000000000000020e1a25303b454d555f6567676767676767676766625a4f44382d211509000000000000000000000000000000000000000000000000000000000000000000000a15212c37434e5a66717d8995a0aca095897d71665a4e42362a1e130700000000000000000000000000000000000009141e28313940444646464646464646464645413b342b21170c010000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000013202c3946535f6c798693939393939393939393939393939393939386796c5f5346392c20130013202c3946535f6c7986939393939393939393908376695c4f4336291c100300000000000000000a16212c3740484f5253535353514c443b31271b10040000000000000000000000000000000000000000000001060b1014191e23282d32373c41464b50555a5f63686d72777c81868b8376695d5043362a1d100013202c3946535f6c79868a85807b76716c67625d58544f4a45403b36312c27221d18130e090400000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000007111c27323d48525d68737e89939e988d83786d62574c42372c21160b010000000013202c3946535f6c79868a847e7974706e6c6a6a6b6c6e7073777a7e82868a8f93969a9ea1a4a4a2a1a1a1a3a3a09c97928b857d7266594c3f3326190d00000000000000000000000000000000000005111d2935404b545c60606060606060605b53493e33271b0f0200000000000000000000000000000000000000000000000000000000000000000000000000000003070a0c0e1011121313131211100f0d0a07040000000000000000000000000000000000000000000000000914202b37424c57626c76808a939ba3aba9a29c96918c898684838383838486888c90959aa1a8ada69e958c82786e63594e43372c201509000000000000000000000000000000000000000000121f2c3845525f6b7885929898989896897c6f6356493c3023160900000000000000000000000000000000000000030a1014171919191919191919191919222f3c4855626f7b8895a2a09386796c5f5346392c20191919191919191919191817130e0802000000000000000000000000000000000000000000000000040d161f28313b444d565f68717a848d969fa69f9994959ca3a39a90877e746b62584f463c332a20170e040000000000000000000000000000000000000000000000000000000000000000000000000000000005121e2a36424d575f636464646464625b5a5a5a5a5750483e33281c100400000000000000000000000000000000000000000000000000000000000000000005101b27323d49545f6b76828e9aa5a69b8f84786c6155493d32261a0e02000000000000000000000000000000000000020c161f282f3438393939393939393939393835302a22190f050000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000050a0d0f0f0f0f0f0f0d0a0600000000000000000000000000000013202c3946535f6c798686868686868686868686868686868686868686796c5f5346392c20130013202c3946535f6c7986868686868686868686868376695c4f4336291c1003000000000000000005101a252e373e43464646464644403a322920150a000000000000000000000000000000000000000000000000000004090e13181c21262b30353a3f44494e53585d62676b70757a808376695d5043362a1d100013202c3946535f6c79837e79746f6a65605c57524d48433e39342f2a25201b16110c0803000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000206090a0a0a0a0a0a0a0a0a08060407090a0a0a0a0a0a0a0a090704000000000000000000000000000000000000000000000000000000000000000000000000000b16202b36414c56616c77828d979f94897e74695e53483d33281d12070000000013202c3946535f6c7986938f8a85817d7a78777777797a7d8083868a8e92979b9fa3a4a09d9a979594949496989b9ea39d968c807366594c403326190d0000000000000000000000000000000000000714202d3945515d666d6d6d6d6d6d6d6c655a4f43372a1e110500000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000030f1a25303b46505a646e7781899199a0a7ada7a19d9995939190909090919295989ca0a6aca9a39c948c837a70665c52473c31261b0f04000000000000000000000000000000000000000000121f2c3845525f6b7885929fa5a5a396897c6f6356493c3023160900000000000000000000000000000000000000000004080b0c0c0c0c0c0c0c0c0c0c15222f3c4855626f7b8895a2a09386796c5f5346392c20130c0c0c0c0c0c0c0c0c0c0a0703000000000000000000000000000000000000000000000000000000040d161f29323b444d565f68727b848d96a0a0a0a0a0a0a09a91887e756b625950463d342a21180e0500000000000000000000000000000000000000000000000000000000000000000000000000000000000814212d3a46535e697071717171716d655e574f4d4b463e362c21160e060000000000000000000000000000000000000000000000000000000000000000010c17222d38434e5a65707c88939faaa1958a7e73675c5044392d2115090000000000000000000000000000000000000000040d161d23282b2c2c2c2c2c2c2c2c2c2c2c29251f18100700000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000030b1116191c1c1c1c1c1c1a16110b0400000000000000000000000000131f2c3946525f6b767979797979797979797979797979797979797979766b5f5246392c1f1300131f2c3946525f6b7679797979797979797979797974685c4f4236291c100300000000000000000009131c252c3237393939393938352f2920170e030000000000000000000000000000000000000000000000000000000002070c11161b1f24292e33383d42474c51565b60656a6e737874685c4f4336291d1000131f2c3946525f6b7677726d68635f5a55504b46413c37322d28231e1914100b06010000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001080e1215171717171717171717151210141617171717171717171614100b050000000000000000000000000000000000000000000000000000000000000000000000040f1a242f3a45505a65707b86919b9b90857a70655a4f44392f24190e0300000013202c3946535f6c7986939b95918d8987858484848587898c8f93969a9ea3a4a09b9894918d8b89888788898b8e92979c998c807366594c403326190d0000000000000000000000000000000000000815222f3b4855616e787a7a7a7a7a7a776b5f5246392c2013060000000000000000000000000000000000000000000000000000000000000000000000000000000003070b0c0d0d0d0d0d0d0d0d0c0a060200000000000000000000000000000000000000000000000000000009141f29343e48525c656e7780878f969ca2a7aba9a5a2a09e9d9c9c9d9e9fa1a4a8aca8a39e98918a827a71685e554a40362b20150a00000000000000000000000000000000000000000000121f2c3845525f6b7885929facb0a396897c6f6356493c302316090000000000000000000000000000000000000000000000000000000000000000000915222f3c4855626f7b8895a2a09386796c5f5346392c20130600000000000000000000000000000000000000000000000000000000000000000000000000000000040d172029323b444d576069727b848e9393939393939392887f756c635950473e342b22180f060000000000000000000000000000000000000000000000000000000000000000000000000000000000000915222f3c4855626e7b7d7d7d7d7d777069615a534b443d352e271f18110a0200000000000000000000000000000000000000000000000000000000000007121d28333e4954606b76828d99a4a69a8f84786d62564b3f33281c1005000000000000000000000000000000000000000000040b12181c1f202020202020202020201f1d19140d0600000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000050d151c222628292929292826221d160e06000000000000000000000000111e2a37434f5a646b6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6b645a4f43372a1e1100111e2a37434f5a646b6c6c6c6c6c6c6c6c6c6c6c6c6a62574c4033271b0e01000000000000000000010a131a21262a2c2c2c2c2c2b29241e170e050000000000000000000000000000000000000000000000000000000000000000050a0f14191e23272c31363b40454a4f54595e63686c6a62584c4034271b0e00111e2a37434f5a646b6b67625d58534e49443f3a35302b26211c18130e0904000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000040c13191e22232424242424242423211e1c2023242424242424242423201c160f08000000000000000000000000000000000000000000000000000000000000000000000008131e28333e49545f69747f8a959f978c81766b61564b40352b20150a00000013202c3946535f6c7986939ca19d99969392919091929496999c9fa3a4a09c98948f8b8884817e7c7b7a7b7d7f82868b90968c807366594c403326190d0000000000000000000000000000000000000915222f3c4855626f7b878787878786796c5f5346392c201306000000000000000000000000000000000000000000000000000000000000000000000000000001080e1317191a1a1a1a1a1a1a1a1916120d070000000000000000000000000000000000000000000000000000020d18222c36404a535c656d757d848b91969b9fa2a5a8a9aaa9a9a9a9aaaaa8a6a3a09c97928c86807870685f564c43392e24190e0300000000000000000000000000000000000000000000121f2c3845525f6b7885929facaca396897c6f6356493c302316090000000000000000000000000000000000000000000000000000000000000000000915222f3c4855626f7b8895a2a09386796c5f5346392c2013060000000000000000000000000000000000000000000000000000000000000000000000000000000000050e172029323b454e576069727b85868686868686868680766d635a51473e352c22191006000000000000000000000000000000000000000000000000000000000000000000000000000000000000000915222f3c4855626f7b868a8a8a89827a736c645d564e474039312a231b140d0500000000000000000000000000000000000000000000000000000000040e19242f39444f5b66717c87939eaa9f94897e73675c51453a2e23170b000000000000000000000000000000000000000000000001070c10121313131313131313131312100d080200000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000030d171f272d32353636363635322e2820180f0500000000000000000000000e1a26323e48525a5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5a52483e32261a0e000e1a26323e48525a5f5f5f5f5f5f5f5f5f5f5f5f5f5e5850463b2f23170b0000000000000000000000010910161a1e1f202020201f1c18130c05000000000000000000000000000000000000000000000000000000000000000000000003080d12171c21262b2f34393e43484d52575c5f5e5950463b3024180c000e1a26323e48525a5f5f5b56514c47423d38332e2924201b16110c070200000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000030d161e252a2e3030303030303030302e2a272c2f30303030303030302f2c27211a110800000000000000000000000000000000000000000000000000000000000000000000010c17222d37424d58636d78838e999e93887d72675d52473c31261c1106000013202c3946535f6c79838b91979ca1a2a09e9e9d9e9fa0a2a5a39f9c9894908c88837f7b7875726f6e6e6e7073767a7f858b8c807366594c403326190d0000000000000000000000000000000000000915222f3c4855626f7b889494949386796c5f5346392c20130600000000000000000000000000000000000000000000000000000000000000000000000000030b131a1f2326262626262626262625221e181109000000000000000000000000000000000000000000000000000006101a242e38414a535c646b727980858a8f9396999b9d9e9f9f9f9f9e9d9b999793908b87817b746d665e564d443a31271d12080000000000000000000000000000000000000000000000121f2c3845525f6b7885929fa0a0a096897c6f6356493c302316090000000000000000000000000000000000000000000000000000000000000000000915222f3c4855626f7b8895a2a09386796c5f5346392c201306000000000000000000000000000000000000000000000000000000000000000000000000000000000000050e172029333c454e57606972797979797979797979766d645b51483f352c231a100700000000000000000000000000000000000000000000000000000000000000000000000000000000000000000815212e3a47535f6a747d869097938c857d766f686059524a433c342d261e1710080000000000000000000000000000000000000000000000000000010b15202b35404b56616c77828d99a4a4998e83786d61564b3f34291d120600000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000a151f2931393e4142424242423f39322a20160c01000000000000000000000a16212c3740484f525353535353535353535353535353535353535353524f4840372c21160a000a16212c3740484f52535353535353535353535353524d463e34291e130700000000000000000000000000050a0e11131313131312100c0701000000000000000000000000000000000000000000000000000000000000000000000000000001060b10151a1f24292e33383c41464b5053524e473e342a1f1307000a16212c3740484f52524f4a45403b36312c28231e19140f0a05000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000b151f282f363a3d3d3d3d3d3d3d3d3d3a3532383c3d3d3d3d3d3d3d3d3c38332b231a10050000000000000000000000000000000000000000000000000000000000000000000005101b26313b46515c67717c87929d998f84796e63584e43382d22170b0000121f2b3844515d68717980868c9195999b9d9fa0a09f9d9b9996938f8c8884807b77736f6c68656361616263666a6e73798087807366594c403326190d0000000000000000000000000000000000000915222f3c4855626f7b8895a0a09386796c5f5346392c201306000000000000000000000000000000000000000000000000000000000000000000000000020b151d252b30323333333333333333322f2a231b1209000000000000000000000000000000000000000000000000000009131c262f38414a525961686e74797e83868a8c8e90919292929291908f8d8a8784807b76706a635c544c443b32281f150b000000000000000000000000000000000000000000000000121f2c3845525f6b7885929393939393897c6f6356493c302316090000000000000000000000000000000000000000000000000000000000000000000915222f3c4855626f7b8895a2a09386796c5f5346392c20130600000000000000000000000000000000000000000000000000000000000000000000000000000000000000050e17202a333c454e5760696c6c6c6c6c6c6c6c6c6b645b52493f362d231a110700000000000000000000000000000000000000000000000000000000000000000000000000000000000000000006121f2b37434e58626b747d879099978f888179726b635c554d463f383029221a12080000000000000000000000000000000000000000000000000008121d27323c47525d67727d89949fa89d92887c71665b50453a2e23180c0100000000000000000000000000000000000000000000000000000000000000000004090b0d0d0d0d0d0d0d0d0d0b0804000000000000000000000004090b0d0d0d0d0d0d0d0d0d0b0804000000000000000000000000000005111c27313b434a4e4f4f4f4f4e4a443c32281d12060000000000000000000005101a252e373e4346464646464646464646464646464646464646464646433e372e251a10050005101a252e373e434646464646464646464646464645423c352c22180d02000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000004090e13181d22272c31363b40444645423c352c22180d020005101a252e373e434646433e3934302b26211c17120d0803000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000006121d27313a41474a4a4a4a4a4a4a4a4946403d44484a4a4a4a4a4a4a4a48443d352c22170c000000000000000000000000000000000000000000000000000000000000000000000009141f2a353f4a55606b75808b96a0958b80756a5f544a3f33271b0f0300101c2935404c565f676e757a8085898c8f9192939392918f8d8a8783807c78746f6b67635f5c5956555455575a5e63686e757c807366594c403326190d0000000000000000000000000000000000000915222f3c4855626f7b8895a2a09386796c5f5346392c20130600000000000000000000000000000000000000000000000000000000000000000000000009131d272f363c3f40404040404040403e3a352d241b110600000000000000000000000000000000000000000000000000010a141d262f3840484f565d63686e72767a7d8082838585868685858482807e7b77736f6a655f58514a423a322920160d03000000000000000000000000000000000000000000000000121f2c3845525f6b7885868686868686867c6f6356493c302316090000000000000000000000000000000000000000000000000000000000000000000915222f3c4855626f7b8895a0a09386796c5f5346392c2013060000000000000000000000000000000000000000000000000000000000000000000000000000000000000000050e18212a333c454e575d5f5f5f5f5f5f5f5f5f5f5a524940372d241b110800000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000030f1b26323c475059626b757e8790999a928b847c756e665f585149423b332c241a1106000000000000000000000000000000000000000000000006101a242f39434e59636e79848f9aa5a1968c81766b60554a3f34281d12060000000000000000000000000000000000000000000000000000000000000000040b101518191a1a1a1a1a1a1a191815100a0400000000000000040b101518191a1a1a1a1a1a1a191815100a040000000000000000000000000916212d38434d555a5c5c5c5c5b564e443a2f23170b000000000000000000000009131c252c32373939393939393939393939393939393939393939393937322c251c130900000009131c252c3237393939393939393939393939393936312a231a1006000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000002070c11161b20252a2f3438393936312b231a110600000009131c252c3237393937332e29241f1a15100b0601000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000b17232e39434c52565757575757575756524b474f545757575757575757554f473e33281d110500000000000000000000000000000000000000000000000000000000000000000000030d18232e39434e59646f79848f939391877c71665b5044382b1f1206000c18242f3a444e555c63696f74797c808284858686858482807d7a77736f6b67635f5b5753504c4a4847484a4e52575d646b72797165584c3f3226190c0000000000000000000000000000000000000915222f3c4855626f7b8895a2a09386796c5f5346392c2013060000000000000000000000000000000000000000000000000000000000000000000000040f1a252f3941474c4d4d4d4d4d4d4d4d4b463f372d23180c0100000000000000000000000000000000000000000000000000020b141d262e363d444b52575d62666a6e71737577787979797978777573716e6b67635e59534d474038302820170e0400000000000000000000000000000000000000000000000000121f2b3845515e6a767979797979797979786e6255493c2f2316090000000000000000000000000000000000000000000000000000000000000000000915222f3c4855626f7b889393939386796c5f5346392c201306000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000060f18212a333c454c51535353535353535353524f4940372e251b12090000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000a15202b343e475059626c757e87919a9d968e878078716a625b544c453e362c23180d02000000000000000000000000000000000000000000040e18222c36404b55606a75808b95a0a49a8f857a6f645a4f44392d22170c0100000000000000000000000000000000000000000000000000000000000000060e151c212426262626262626262624211c150e050000000000060e151c212426262626262626262624211c150e0500000000000000000000000d1925323e4a555f66696969696760564b3f33271b0e0200000000000000000000010a131a21262a2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2a26211a130a01000000010a131a21262a2c2c2c2c2c2c2c2c2c2c2c2c2c2c292520191108000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000050a0f14191e23282b2c2c2a252019110800000000010a131a21262a2c2c2a27221d18130e0904000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000f1c28343f4b555d6363636363636363625d544f5960636363636363636360595045392d211509000000000000000000000000000000000000000000000000000000000000000000000007111c27323d48525d68737e868686868682776c6053463a2d2014070007131e29323c434b52585e63686d7073767779797979777673716e6b67635f5b57534f4b4743403d3b3b3c3e42464c525960686c685f54493d3024170b0000000000000000000000000000000000000915222f3c4855626f7b8895a2a09386796c5f5346392c20130600000000000000000000000000000000000000000000000000000000000000000000000814202c37414b535859595959595959595751493f34291d11050000000000000000000000000000000000000000000000000000020b141c242b333a40464c51565a5e616466686a6b6c6c6c6c6b6a696765625f5b57534e48423c352e261e160e050000000000000000000000000000000000000000000000000000101d2936424e59646b6c6c6c6c6c6c6c6c6c665d52463a2d2114080000000000000000000000000000000000000000000000000000000000000000000915222f3c4855626f7b868686868686796c5f5346392c20130600000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000060f18212a333b414546464646464646464646433e372e251c130900000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000040f19222c353e47505a636c757e88919aa099918a837b746d655e574f483e34291e12070000000000000000000000000000000000000000020c161f29333e48525c67717c87919ca79d93887e73685e53483d32271c110600000000000000000000000000000000000000000000000000000000000000050f1820272d31333333333333333333312d2720170e05000000050f1820272d31333333333333333333312d2720170e05000000000000000000000e1b2835414e5a66717575757572685c4f4336291d10030000000000000000000000010910161a1e1f20202020202020202020202020202020202020201f1e1a161009010000000000010910161a1e1f2020202020202020202020201f1d19140e0700000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000004080d12171c1e201f1d1a140e07000000000000010910161a1e1f201e1b16110c0702000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000121e2b3844505c676f707070707070706e665b55616b70707070707070706b61564a3d3124180b0000000000000000000000000000000000000000000000000000000000000000000000000b16202b36414c56616c76797979797979776c6053463a2d20140700010c17202a323940474d53585c606467696b6c6c6c6c6b696764625e5b57534f4b47433f3b3734312f2e2f32363b41474f565d5f5d564d43382c2014080000000000000000000000000000000000000915222f3c4855626f7b8895a2a09386796c5f5346392c20130600000000000000000000000000000000000000000000000000000000000000000000000c1824313d48535d646666666666666666635b50453a2e211509000000000000000000000000000000000000000000000000000000020a121a21282f353b40454a4e5255585a5c5d5e5f5f5f5f5e5d5c5a5856534f4b47423d37312a231c140c040000000000000000000000000000000000000000000000000000000e1a26313d48525a5f5f5f5f5f5f5f5f5f5f5c544b4035291d11050000000000000000000000000000000000000000000000000000000000000000000815222f3b4855616d78797979797979766b5f5246392c1f13060000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000060f1821293035383939393939393939393937322c251c130a01000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000007101a232c353e48515a636c767f88919ba39c958d867e777069615a50463b2f23170a00000000000000000000000000000000000000010a141e28313b454f5a646e79838e98a3a0958b81766c61574c41362c21160b00000000000000000000000000000000000000000000000000000000000000020d17212a32383d4040404040404040403d38322920170c0100020d17212a32383d4040404040404040403d38322920170c010000000000000000000f1c2835424f5b687582828282776a5d5044372a1d110400000000000000000000000000050a0e1113131313131313131313131313131313131313131313110e0a05000000000000000000050a0e111313131313131313131313131312110d090300000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000002070b0f121313110d0903000000000000000000050a0e111313110f0a0501000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000013202c3946535f6c787d7d7d7d7d7d7d776b5e5865727d7d7d7d7d7d7d7d7265594c3f3226190c000000000000000000000000000000000000000000000000000000000000000000000000040f1a242f3a45505a646b6c6c6c6c6c6c6b655b4f44372b1f12050000050e1720272e353c41474c5054585a5c5e5f5f5f5f5e5c5a5855524f4b47433f3b37332e2b2724222122252a2f363d444c5152504b443b31261b10040000000000000000000000000000000000000915222f3c4855626f7b8895a2a09386796c5f5346392c20130600000000000000000000000000000000000000000000000000000000000000000000000e1b2734404d59656f73737373737373736d62564a3d3124170b0000000000000000000000000000000000000000000000000000000000080f161d242a2f353a3e4245484b4d4f51525253535252514f4e4c4946433f3b36312b261f19120a02000000000000000000000000000000000000000000000000000000000915202b3640484e52535353535353535353504a42392f24190d010000000000000000000000000000000000000000000000000000000000000000000714202d3945515c666c6c6c6c6c6c6c6b645a4f43372a1e1105000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000060f171e24292c2c2c2c2c2c2c2c2c2c2c2a27211b130a010000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000008111a232c363f48515a646d767f89929ba09f989089827a736c62574b3f33261a0d0000000000000000000000000000000000000009131c263039434d57616c76808b959fa2988e84796f655a50453a30251a0f040000000000000000000000000000000000000000000000000000000000000008131e29333c43494c4d4d4d4d4d4d4d4c49433b32281e13070008131e29333c43494c4d4d4d4d4d4d4d4c49433b32281e13070000000000000000000f1c2835424f5b6875828f8f84776a5d5044372a1d1104000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000013202c3946535f6c79868a8a8a8a8a85786b5e5865727e8a8a8a8a8a8a7f7265594c3f3226190c0000000000000000000000000000000000000000000000000000000000000000000000000008131e28333e49525a5f5f5f5f5f5f5f5f5a53493e33271b0f03000000050e161d242a30363b4044484b4e50515253535251504e4b4946423f3b37332f2b27221f1b18151416191e242b333a40444644403a32291f150a000000000000000003060707070707070707070915222f3c4855626f7b8895a2a09386796c5f5346392c20130707070707070707070705020000000000000000000000000000000000000000000000000f1b2835424e5b6875808080808080807e7165584b3e3225180b000000000000000000000000000000000000000000000000000000000000050c12191e24292e3236393c3f4143444546464646454443413f3d3a37332f2a25201a140e07000000000000000000000000000000000000000000000000000000000000040f1a242e363d4345464646464646464646443f3830271d12070000000000000000000000000000000000000000000000000000000000000000000004111d2934404a545b5f5f5f5f5f5f5f5f5a52483e32261a0e0200000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000050d13191c1f2020202020202020201f1e1b1610090100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000008111a242d363f48525b646d7680899293939393938c857d74675a4e4134281b0e01000000000000000000000000000000000004101a252e38424b555f69737d88929ca49a90867c72675d53483e33291e130900000000000000000000000000000000000000000000000000000000000000000c1824303a454e55595959595959595959554d443a2f24180c000c1824303a454e55595959595959595959554d443a2f24180c0000000000000000000f1c2835424f5b6875828f9084776a5d5044372a1d11040000000000000000000000000000000407080808080808080808080808080808080808080808080808080808080808080808080808080808070400000000000000000000000000000000000000000000000000000000000000000000000000000000000104070808080808080808080704000000000000000000000000000000000000000000000000000000000000000000000206080b0d0f101212131313131211100e0c0a0704000000000000000000000000000000000000000000000000000000000000000000000000000004070808080808080808080806030000000000000000000000000000000000000000000000000000000013202c3946535f6c7986939797979285786b5e5865727e8c979797978c7f7265594c3f3226190c00000000000000000000000000000000000000000000000000000000000000000000000000010c17222c3740494f52535353535353524f4941372d22160b0000000000040b12191f252a2f34383c3f414345464646464543413f3c3936332f2b27231f1b16120f0b0908090d131921282f34383938342f2820170d03000000000000060b0f121414141414141414141415222f3c4855626f7b8895a2a09386796c5f5346392c201414141414141414141414120f0a04000000000000000000000000000000000000000000000f1b2835424e5b6875828d8d8d8d8d8b7e7165584b3e3225180b0000000000000000000000000000000000000000000000000000000000000001070d13181d2226292d303234363738393939393837363433302d2a27231e1a150f0903000000000000000000000000000000000000000000000000000000000000000008121b242c32363939393939393939393937332e271e150b0100000000000000000000000000000000000000000000000000000000000000000000000c18232e38424a5052535353535353524f4840372c21160a00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000002080d101213131313131313131313110e0a0500000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000008121b242d364049525b646d778086868686868686868174675b4e4134281b0e0100000000000000000000000000000000000a16212c37404a545d67717b858f9aa49b92887e746a60564b41372c22170c020000000000000000000000000000000000000000000000000000000000000000101c2935414c57606566666666666666655f564c4034281c1000101c2935414c57606566666666666666655f564c4034281c100000000000000000000f1c2835424f5b6875828f9084776a5d5044372a1d110400000000000000000000000000060c101315151515151515151515151515151515151515151515151515151515151515151515151515151513100c070000000000000000000000000000000000000000000000000000000000000000000000000001070c111315151515151515151513100c07000000000000000000000000000000000000000000000000000000000002070b0f1215171a1c1d1e1f2020201f1f1e1c1b191613100d0904000000000000000000000000000000000000000000000000000000000000000000070c111315151515151515151515130f0b05000000000000000000000000000000000000000000000000000013202c3946535f6c798693a0a49e9285786b5e5865727e8c98a4a4998c7f7265594c3f3226190c000000000000000000000000000000000000000000000000000000000000000000000000000005101b252e373e434646464646464646433e372f251b100500000000000000070e14191f24282c2f323537383939393938363532302d2a26231f1b17130f0a06030000000002080f171e24282b2c2b28241e160e050000000000020a11171c1f2121212121212121212121222f3c4855626f7b8895a2a09386796c5f5346392c2121212121212121212121201e1b160f080000000000000000000000000000000000000000000f1b2835424e5b6875828e9a9a9a988b7e7165584b3e3225180b00000000000000000000000000000000000000000000000000000000000000000002070d11161a1d20232628292b2b2c2c2c2c2c2b29282624211e1b17130e0904000000000000000000000000000000000000000000000000000000000000000000000009121a21262a2c2c2c2c2c2c2c2c2c2c2b28231c150c0300000000000000000000000000000000000000000000000000000000000000000000000007121c2630383f434646464646464646433e372e251a1005000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000009121b242e374049525b656e7779797979797979797972675a4d4134271b0e0100000000000000000000000000000000000e1a26323d48525c666f79838d97a09d938980766c62584e44392f251a1005000000000000000000000000000000000000000000000000000000000000000000121f2b3845515d68717373737373737371685d5144382b1e1200121f2b3845515d68717373737373737371685d5144382b1e120000000000000000000f1c2835424f5b6875828f9084776a5d5044372a1d11040000000000000000000000020a11181c20212222222222222222222222222222222222222222222222222222222222222222222222222221201d18120b0300000000000000000000000000000000000000000000000000000000000000000000030b12181d20222222222222222221201c18120a020000000000000000000000000000000000000000000000000004090e13171b1e212426282a2b2c2c2c2c2c2b2a29272523201c1915100b060100000000000000000000000000000000000000000000000000000000030b12181d20222222222222222222211f1c1610090100000000000000000000000000000000000000000000000013202c3946535f6c798693a0ab9e9285786b5e5865727e8c98a5a6998c7f7265594c3f3226190c00000000000000000000000000000000000000000000000000000000000000000000000000000009131c252c3237393939393939393937332d251d130900000000000000000003080e13181c202326282a2b2c2c2c2c2b2a282623211d1a16130f0b0703000000000000000000050c13181c1e1f1e1c18130c040000000000010b141b22282b2d2e2e2e2e2e2e2e2e2e2e2e2f3c4855626f7b8895a2a09386796c5f5346392e2e2e2e2e2e2e2e2e2e2e2e2d2b27211a120900000000000000000000000000000000000000000f1b2835424e5b6875828e9ba6a5988b7e7165584b3e3225180b00000000000000000000000000000000000000000000000000000000000000000000000105090d111417191b1d1e1f1f20201f1f1e1d1b191715120e0b07020000000000000000000000000000000000000000000000000000000000000000000000000000080f151a1e1f2020202020202020201e1b17110a0300000000000000000000000000000000000000000000000000000000000000000000000000000b141e262d3337393939393939393937322c251c13090000000000000000000000000000000000000000000000000000000000040708080808080808080808070502000000000000000000000000000000000000000000000000000000000000000000010407080808080808080808080704000000000000000000000000000000000000000000000000000000000000000000000000000009121b252e374049535c656b6c6c6c6c6c6c6c6c6c6961564a3e3226190d000000000000000000000000000000000000111d2a36434e5a646e78818b939393938b81776e645a50463c32281d13090000000000000000000000000000000000000000000000000000000000000000000013202c3946535f6c7980808080808080796c5f5246392c1f130013202c3946535f6c7980808080808080796c5f5246392c1f130000000000000000000f1c2835424f5b6875828f9084776a5d5044372a1d110400000000000000000000020b141c23282c2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2c29231d150c030000000000000000000000000000000000000000000000000000000000000000030d151d24292d2e2e2e2e2e2e2e2e2e2c28231c140c020000000000000000000000000000000000000000000003090f151a1f23272b2e3133353638383939393938373634322f2c2925211c17120c060000000000000000000000000000000000000000000000000000030c151d23292c2e2e2e2e2e2e2e2e2e2e2c27221b130a00000000000000000000000000000000000000000000000013202c3946535f6c798693a0ab9e9285786b5e5865727e8c98a5a6998c7f7265594c3f3226190c000000000000000000000000000000000000000000000000000000000000000000000000000000010a131b21272a2c2c2c2c2c2c2c2c2a27211b130b01000000000000000000000002070c101317191c1d1f2020201f1f1d1b191714110e0a07030000000000000000000000000001070c10121312100c070100000000000009131d262d33383a3a3a3a3a3a3a3a3a3a3a3a3a3c4855626f7b8895a2a09386796c5f53463a3a3a3a3a3a3a3a3a3a3a3a3a3a37322c241b1107000000000000000000000000000000000000000f1b2835424e5b6875828e9ba8a5988b7e7165584b3e3225180b00000000000000000000000000000000000000000000000000000000000000000000000000000105080a0c0e101112131313131211100f0d0b080502000000000000000000000000000000000000000000000000000000000000000000000000000000000000040a0e1113131313131313131313120f0b0600000000000000000000000000000000000000000000000000000000000000000000000000000000020c141c22272b2c2c2c2c2c2c2c2c2a26211a130a01000000000000000000000000000000000000000000000000000000060c10131515151515151515151514110e0802000000000000000000000000000000000000000000000000000000000001070d11141515151515151515151513100c070000000000000000000000000000000000000000000000000000000000000000000000000009131c252e37414a535b5f5f5f5f5f5f5f5f5f5f5d574f44392e22160a000000000000000000000000000000000000121f2c3945525e6b768086868686868682786f655c52483e342a20160c010000000000000000000000000000000000000000000000000000000000000000000013202c3946535f6c79868d8d8d8d8d86796c5f5246392c1f130013202c3946535f6c79868d8d8d8d8d86796c5f5246392c1f130000000000000000000f1c2835424f5b6875828f9084776a5d5044372a1d1104000000000000000000000a141d262e34383b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b39342e271e150a00000000000000000000000000000000000000000000000000000000000000010b151f272f35393b3b3b3b3b3b3b3b3b39342e261e140a000000000000000000000000000000000000000000070e141a20262b2f33373a3d3f4143444546464646454442403e3c3835312d28231d17110a030000000000000000000000000000000000000000000000000b151e272e35393b3b3b3b3b3b3b3b3b3b38332c251c1208000000000000000000000000000000000000000000000013202c3946535f6c798693a0ab9e9285786b5e5865727e8c98a5a6998c7f7265594c3f3226190c00000000000000000000000000000000000000000000000000000000000000000000000000000000010910161b1e1f202020202020201e1b1610090100000000000000000000000000000004070a0d0f11121313131312110f0d0a080501000000000000000000000000000000000000000000000000000000000000000005101b252f373f4447474747474747474747474747474855626f7b8895a2a09386796c5f53474747474747474747474747474746433d362d23190e030000000000000000000000000000000000000f1b2835424e5b6875828e9ba2a2988b7e7165584b3e3225180b0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000020a11171b1e202020202020201f1e1a161009010000000000000000000000000000000000000000000000000000020a11171c2021222222222222222222201e19140d05000000000000000000000000000000000000000000000000000000030b12181d2022222222222222222221201c18120a020000000000000000000000000000000000000000000000000000000000000000000000010a131c252f3841494f52535353535353535353514d453d33281d1106000000000000000000000000000000000000121f2c3845525e6b76797979797979797870675d534a40362c22180e04000000000000000000000000000000000000000000000000000000000000000000000013202c3946535f6c7986939a9a9a9286796c5f5246392c1f130013202c3946535f6c7986939a9a9a9286796c5f5246392c1f130000000000000000000f1c2835424f5b6875828f9084776a5d5044372a1d110400000000000000000006111c262f383f4548484848484848484848484848484848484848484848484848484848484848484848484848484845403930261c110600000000000000000000000000000000000000000000000000000000000007121d273139404548484848484848484845403830261c1106000000000000000000000000000000000000020a11181f262b31363b3f4347494c4e5051525253535252504f4d4b4845413d39342e28221c150d060000000000000000000000000000000000000000000007121d273039404548484848484848484847443e372e241a0f030000000000000000000000000000000000000000000013202c3946535f6c798693a0ab9e9285786b5e5865727e8c98a5a6998c7f7265594c3f3226190c000000000000000000000000000000000000000000000000000000000000000000000000000000000000050a0e111313131313131313110f0a0500000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000a16222d3741495053545454545454545454545454545455626f7b8895a2a09386796c5f545454545454545454545454545454534f483f352a1f14080000000000000000000000000000000000000f1b2835424e5b6875828e959595958b7e7165584b3e3225180b0000000000000000000000000000000000000000000001070b0e0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0d0a06000000000000000000000000000000000000000000000000000205080a0c0e0f10111212121111100f0d0b0907040000000000000000000000000000000000000000000000000000000000000000000000000000000000000000060b0f121313131313131313110e0a05000000000000000000000000000000000000000000000000000000020b141c23282c2e2e2e2e2e2e2e2e2e2e2d2a251f170f0500000000000000000000000000000000000000000000000000030d151d24292d2e2e2e2e2e2e2e2e2e2e2c28231c140c020000000000000000000000000000000000000000000000000000000000000000000000010a131d262f373e434646464646464646464645413b342b21160c00000000000000000000000000000000000000111d2a36424e5a646b6c6c6c6c6c6c6c6c675e554b41382e241a100600000000000000000000000000000000000000000000000000000000000000000000000013202c3946535f6c798693a0a69f9286796c5f5246392c1f130013202c3946535f6c798693a0a69f9286796c5f5246392c1f130000000000000000000f1c2835424f5b6875828f9084776a5d5044372a1d11040000000000000000000b17222d38424a51545555555555555555555555555555555555555555555555555555555555555555555555555554514a42382e23170c0000000000000000000000000000000000000000000000000000000000000c18232f39434b51545555555555555554514a42382d22170b0000000000000000000000000000000000030c141b232a31373d42474b4f5356585b5c5e5f5f5f5f5f5e5d5c5a5754514d49443f3a342d261f1810080000000000000000000000000000000000000000000c18232e39424b51545555555555555555544f4940362b2014090000000000000000000000000000000000000000000013202c3946535f6c798693a0ab9e9285786b5e5865727e8c98a5a6998c7f7265594c3f3226190c0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000f1b27333e49535b60616161616161616161616161616161626f7b8895a2a09386796c616161616161616161616161616161615f5a51473c3024180c0000000000000307090b0b0b0b0b0b0b0b0b0f1b2835424e5b6875828888888888887e7165584b3e3225180b0b0b0b0b0b0b0b0b0b090602000000000000000000060d12171a1c1c1c1c1c1c1c1c1c1c1c1c1c1c1c1c1c1c1c1c1c1c1c1c1c1c1c1c1c1c1c1c1c1c1c1c1c1c1c1c1c1c1c1c1a16110b04000000000000000000000000000000000000000003070b0e121417191b1c1d1e1e1e1e1e1e1d1b1a181613100d090500000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000009141d262e34383b3b3b3b3b3b3b3b3b3b3a36302921170d030000000000000000000000000000000000000000000000010b151f272f35393b3b3b3b3b3b3b3b3b3b39342e261e140a000000000000000000000000000000000000000000000000000000000000000000000000010b141d252d3337393939393939393939393835302922190f05000000000000000000000000000000000000000e1a26323d48525a5f5f5f5f5f5f5f5f5f5c554c43392f261c12080000000000000000000000000000000000000000000000000000000000000000000000000013202c3946535f6c798693a0ac9f9286796c5f5246392c1f130013202c3946535f6c798693a0ac9f9286796c5f5246392c1f130000000000000000000f1c2835424f5b6875828f9084776a5d5044372a1d11040000000000000000000f1b27333f4a545c6161616161616161616161616161616161616161616161616161616161616161616161616161615c544a3f34281c10030000000000000000000000000000000000000000000000000000000004101d2934404b555d6161616161616161615c544a3f33281b0f03000000000000000000000000000000040d151e262d353c42484e53575b5f626567696a6b6c6c6c6c6b6a686664615d5955504b453f38312a221a11090000000000000000000000000000000000000004101c2834404b545c616161616161616161605a52483c3125190d0000000000000000000000000000000000000000000013202c3946535f6c798693a0ab9e9285786b5e5865727e8c98a5a6998c7f7265594c3f3226190c000000000000000000000000000000000000000000000106090b0c0c0c0c0c0c0c0c0c0c0b0905010000000000000000000000000000000000000000000000000000000003070a0c0c0c0c0c0c0c0c0c0c0a0804000000000000000000000000000000000005080b0c0c0c0c0c0c0c0c0c0c0a0804000000000000000000111e2a37434f5b656c6d6d6d6d6d6d6d6d6d6d6d6d6d6d6d6d6f7b8895a2a09386796d6d6d6d6d6d6d6d6d6d6d6d6d6d6d6d6d6b63584d4034281b0f0000000002090e1316171818181818181818181b2835414e5b67747b7b7b7b7b7b7b7b7164584b3e3125181818181818181818181715120d07010000000000000710171e2327292929292929292929292929292929292929292929292929292929292929292929292929292929292929292826221d160e060000000000000000000000000000000000050a0f13171b1e21232627292a2b2b2b2b2b2a29282624221f1c1915110c07020000000000000000000000000000000000000000000000000000000000000000010407090b0d0f10111112121211100f0e0c0a080502000000000000000000000000000000000000000000000000000005101b262f383f454748484848484848484846413b33291f1409000000000000000000000000000000000000000000000007121d27313940454848484848484848484845403830261c1106000000000000000000000000000000000000000000000000000000000000000000000000020b131b22272a2c2c2c2c2c2c2c2c2c2c2c29251f18100700000000000000000000000000000000000000000a15212c3640484f525353535353535353504b433a31271d140a000000000000000000000000000000000000000000000000000000000000000000000000000013202c3946535f6c798693a0ac9f9286796c5f5246392c1f130013202c3946535f6c798693a0ac9f9286796c5f5246392c1f130000000000000000000f1c2835424f5b6875828f9084776a5d5044372a1d1104000000000000000000121e2b37434f5b666d6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6d665c5044382b1f1206000000000000000000000000000000000000000000000000000000000713202c3945515c676d6e6e6e6e6e6e6e6d665b5044372b1f12050000000000000000000000000000030d161f2730383f464d53595e63686b6f72747677787979797978767573706d6965615c56504a433b342c231b120900000000000000000000000000000000000006131f2c3845515c666d6e6e6e6e6e6e6e6e6c64594d4135281c0f0300000000000000000000000000000000000000000013202c3946535f6c798693a0ab9e9285786b5e5865727e8c98a5a6998c7f7265594c3f3226190c000000000000000000000000000000000000000000060c121518191919191919191919191815110c0600000000000000000000000000000000000000000000000000030a0f1417181919191919191919181714100a0400000000000000000000000000050c111517181919191919191919181714100a030000000000000013202c3946525f6b777a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7b8895a2a093867a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a75695c504336291d10000000040c141a1f22242424242424242424242426333f4b57626b6e6e6e6e6e6e6e6e696054483c30242424242424242424242424221e19120b020000000006101922292f333536363636363636363636363636363636363636363636363636363636363636363636363636363636363635322e2820180e040000000000000000000000000000040b10161b1f23272a2d3032343537373838383837363533312f2c2925211d18130d07010000000000000000000000000000000000000000000000000000000005090d101316181a1b1d1e1e1e1e1e1e1d1c1b191714110e0b070300000000000000000000000000000000000000000000000a16222d37414a5054555555555555555555524c453b31261b0f03000000000000000000000000000000000000000000010d18242f39434b5154555555555555555554514a42382d22170b00000000000000000000000000000000000000000000000000000000000000000000000000010910161b1e202020202020202020201f1d19140d06000000000000000000000000000000000000000000040f1a242e363d43464646464646464646443f3931281f150b02000000000000000000000000000000000000000000000000000000000000000000000000000013202c3946535f6c798693a0ac9f9286796c5f5246392c1f130013202c3946535f6c798693a0ac9f9286796c5f5246392c1f130000000000000000000f1c2835424f5b6875828f9084776a5d5044372a1d110400000000000000000013202c3946525f6c777b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b786c6053473a2d201407000000000000000000000000000000000000000000000000000000000814212e3b4754616d797b7b7b7b7b7b7b786c5f5346392d20130600000000000000000000000000010b151f283139414951585e656a6f74787b7e81828485868686858483827f7c7976716d67615b544d463e352d241b110800000000000000000000000000000000000714212d3a4754606d787b7b7b7b7b7b7b7b75695d5043372a1d100400000000000000000000000000000000000000000013202c3946535f6c798693a0ab9e9285786b5e5865727e8c98a5a6998c7f7265594c3f3226190c00000000000000000000000000000000000000000911181d22242525252525252525252524221d1811090000000000000000000000000000000000000000000000050d141b20232525252525252525252524201c160e0600000000000000000000000810171d21242525252525252525252523201b150e0600000000000013202c3946535f6c798687878787878787878787878787878787878b97a3a1948a87878787878787878787878787878787878376695d5043362a1d100000040d161e252b2f313131313131313131313131313b4650595f61616161616161615e574e4338313131313131313131313131312e2a241d140b020000030e18222c343a3f42424242424242424242424242424242424242424242424242424242424242424242424242424242424242423e39322a20160b00000000000000000000000002090f161c21262b2f33373a3c3f4142434445454544444341403e3b3835312d29241e18120c0500000000000000000000000000000000000000000000000002070c1115191c2022252728292a2b2b2b2b2b2a29272523211e1b17130e0a040000000000000000000000000000000000000000000e1b27333e49535c616161616161616161615e574d42372b1f140800000000000000000000000000000000000000000006111d2935404b555d616161616161616161615c544a3f33281b0f030000000000000000000000000000000000000000000000000000000000000000000000000000050a0f111313131313131313131312100d0802000000000000000000000000000000000000000000000008121c242c323639393939393939393938342e271f160d0300000000000000000000000000000000000000000000000000000000000000000000000000000013202c3946535f6c798693a0ac9f9286796c5f5246392c1f130013202c3946535f6c798693a0ac9f9286796c5f5246392c1f130000000000000000000f1c2835424f5b6875828f9084776a5d5044372a1d110400000000000000000013202c3946535f6c79868888888888888888888888888888888888888888888888888888888888888888888888877a6d6053473a2d201407000000000000000000000000000000000000000000000000000000000815212e3b4854616e7b88888888888886796d6053463a2d2013070000000000000000000000000009131d27313a434b535b626970767b8084878b8d8f91929293939291908e8c8986827d78736d665f5750473f362d231a1006000000000000000000000000000000000714212e3a4754616d7a8788888888888884776a5d5044372a1d110400000000000000000000000000000000000000000013202c3946535f6c798693a0ab9e9285786b5e5865727e8c98a5a6998c7f7265594c3f3226190c0000000000000000000000000000000000000009121b23292e3132323232323232323232312e29221b1209000000000000000000000000000000000000000000040e171f262c3032323232323232323232302c2720180f0600000000000000000008111a22282d3132323232323232323232302c2720180f05000000000013202c3946535f6c79869394949494949494949494949494949494969da8a69c9594949494949494949494949494949494908376695d5043362a1d1000010b161f2830373b3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e474f535555555555555555524d453e3e3e3e3e3e3e3e3e3e3e3e3e3e3d3a352e261d1309000009141f2a343e454b4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4e4a443c32281d120600000000000000000000050c131a21272d32373b3f4346494b4d4f505151515151504f4e4c4a4845413d39342f2a241d160f0800000000000000000000000000000000000000000001070d13181d2125292c2f3133353637383838383737353432302d2a27231f1a15100a0400000000000000000000000000000000000000111e2a37434f5b656d6e6e6e6e6e6e6e6e6e695f54483c3024180c0000000000000000000000000000000000000000000a16222e3a46515d676e6e6e6e6e6e6e6e6e6d665b5044372b1f12050000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000a121a21262a2c2c2c2c2c2c2c2c2c2b28231d150d040000000000000000000000000000000000000000000000000000000000000000000000000000000013202c3946535f6c798693a0ac9f9286796c5f5246392c1f130013202c3946535f6c798693a0ac9f9286796c5f5246392c1f130000000000000000000f1c2835424f5b6875828f9084776a5d5044372a1d110400000000000000000013202c3946535f6c79869395959595959595959595959595959595959595959595959595959595959595959594877a6d6053473a2d201407000000000000000000000000000000000000000000000000000000000815212e3b4854616e7b88949595959386796d6053463a2d20130700000000000000000000000006101b252f39434c555d656d747b81878c9094979a9c9d9e9fa09f9f9e9d9b9895928e89847e777169625951483f352c22180d030000000000000000000000000000000714202d3a4753606d7a8794959595959184776a5d5144372a1e110400000000000000000000000000000000000000000013202c3946535f6c798693a0ab9e9285786b5e5865727e8c98a5a6998c7f7265594c3f3226190c00000000000000000000000000000000000007111b242d343a3d3f3f3f3f3f3f3f3f3f3f3d3a342d241b110600000000000000000000000000000000000000010c16202931373c3e3f3f3f3f3f3f3f3f3f3c38322a21180e030000000000000005101a232c33393d3f3f3f3f3f3f3f3f3f3f3c38312a21170d020000000013202c3946535f6c798693a0a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1a2a7afaea6a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1a19d908376695d5043362a1d100007121d28313a42474a4b4b4b4b4b4b4b4b4b4b4b4b4b4b4b4b4b4b4b4b4b4b4b4b4b4b4b4b4b4b4b4b4b4b4b4b4b4b4b4b4b4b4a4640382f251b1004000d1925313c4650575b5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5b564e44392e23170b000000000000000000070f171e252c32383e43474c4f5355585a5b5d5d5e5e5e5e5d5c5b595754514d4945403b352f282119120a01000000000000000000000000000000000000050c13191e24292d3135383b3e4041434444454545444342413f3c3a37332f2b26211b150f08010000000000000000000000000000000000121f2c3945525f6b777b7b7b7b7b7b7b7b7a7064584c4035291d110500000000000000000000000000000000000000030f1b27323e4a56626e797b7b7b7b7b7b7b7b786c5f5346392d2013060000000000040a0e1112131313131313131313120f0b0600000000000000000000000000000000000000000000000000000000000000050a0e1112131313131313131312110e0a04000000000000000000000810161a1e1f20202020202020201e1c17120b03000000000000000000000000000000000000000000000000000000000000000000000000000000000013202c3946535f6c798693a0ac9f9286796c5f5246392c1f130013202c3946535f6c798693a0ac9f9286796c5f5246392c1f130000000000000000000f1c2835424f5b6875828f9084776a5d5044372a1d110400000000000000000013202c3946535f6c798693a0a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a094877a6d6053473a2d201407000000000000000000000000000000000000000000000000000000000815212e3b4854616e7b8894a1a2a09386796d6053463a2d2013070000000000000000000000020d17222d37414b555e676f777f868c92979ca0a3a6a7a5a3a2a2a2a2a4a5a7a5a29e9a958f89827b736b635a51473e342a1f150a0000000000000000000000000000000713202d3a4653606d798693a0a2a29e9184776b5e5144382b1e110500000000000000000000000000000000000000000013202c3946535f6c798693a0ab9e9285786b5e5865727e8c98a5a6998c7f7265594c3f3226190c0000000000000000000000000000000000010d18232d373f454a4c4c4c4c4c4c4c4c4c4c4a453f362d23180c0100000000000000000000000000000000000007121d28323b42484b4c4c4c4c4c4c4c4c4b49433c332a1f150a000000000000010c17212c353e45494b4c4c4c4c4c4c4c4c4b48433c33291f14080000000013202c3946535f6c798693a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a1a7afada5a1a0a0a0a0a0a0a0a0a0a0a0a0a0a0a09d908376695d5043362a1d10000c18232f39434c535757575757575757575757575757575757575757575757575757575757575757575757575757575757575756524a41372c21150900111d2936424d5862686969696969696969696969696969696969696969696969696969696969696969696969696969696969696760564b3f33271a0e0000000000000000071019212830373d44494e53585c5f62646668696a6b6b6b6b6a69676563605d5a55514c46403a332b241c130a01000000000000000000000000000000000810171e242a2f35393d4145484a4c4e4f505151515151504f4d4b4946433f3b37322c26201a130b0400000000000000000000000000000000121f2c3845525e6a7682888888888888888175695d5145392d22160a0000000000000000000000000000000000000008141f2b37434f5b67737e8888888888888883776b5f5246392c20130600000000080f151a1d1f1f1f1f1f1f1f1f1f1f1e1b17120b03000000000000000000000000000000000000000000000000000000020910161b1e1f1f1f1f1f1f1f1f1f1f1d1a16100901000000000000000000040a0e11131313131313131313120f0b060000000000000000000000000000000000000000000000000000000000000000000000000000000000000013202c3946535f6c798693a0ac9f9286796c5f5246392c1f130013202c3946535f6c798693a0ac9f9286796c5f5246392c1f130000000000000000000f1c2835424f5b6875828f9084776a5d5044372a1d110400000000000000000013202c3946535f6c798693a0a3a3a3a3a3a3a3a3a3a3a3a3a4a8aeaeaeada6a3a3a3a3a3a3a3a3a3a3a3a3a094877a6d6053473a2d201407000000000000000001030303030303030303030303030303030303030815212e3b4854616e7b8894a1ada09386796d6053463a2d201307000000000000000000000008131e29343e49535d677079818991979ea3a8a7a29e9b98979695959697999c9fa4a9a5a09a948d857d756c635950463b31261c110600000000000000000000000000000613202c3946525f6c7985929facab9e9285786b5e5245382c1f120500000000000000000000000000000000000000000013202c3946535f6c798693a0ab9e9285786b5e5865727e8c98a5a6998c7f7265594c3f3226190c000000000000000000000000000000000006121e29343f495156585858585858585858585650483f34291d12060000000000000000000000000000000000000c18242f3a444d5458585858585858585858554e453c31261c1106000000000008131e28333d474f5658585858585858585858544e453b3025190d0100000013202c3946535f6c79869393939393939393939393939393939393959da7a59b9493939393939393939393939393939393908376695d5043362a1d1000101c2834404b555e63646464646464646464646464646464646464646464646464646464646464646464646464646464646464635c53493d3125190d00121f2c3845525e6a7375757575757575757575757575757575757575757575757575757575757575757575757575757575757572675b4f4236291c100000000000000007101a222b333a41484f555a5f64686b6e71737576777778787777757472706d6a66615d57514b443d352d251c130a0100000000000000000000000000020a121a21282f353b40454a4d515457595b5c5d5e5e5e5e5d5d5b5a5855524f4b47423d38322b241d150d05000000000000000000000000000000111d2a36424e5a66717d8995959595959185796d62564a3e32261a0e030000000000000000000000000000000000000c1824303c48545f6b77838f95959595958a7e72665a4f43372a1e110500000009121a21262a2c2c2c2c2c2c2c2c2c2c2b28231d150d0400000000000000000000000000000000000000000000000000020b141b22272a2c2c2c2c2c2c2c2c2c2c2a26211a130a01000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000013202c3946535f6c798693a0ac9f9286796c5f5246392c1f130013202c3946535f6c798693a0ac9f9286796c5f5246392c1f130000000000000000000f1c2835424f5b6875828f9084776a5d5044372a1d110400000000000000000013202c3946535f6c79869396969696969696969696969696979da6b1aea39b9796969696969696969696969694877a6d6053473a2d201407000000000002070b0e101010101010101010101010101010101010101015212e3b4854616e7b8894a1ada09386796d6053463a2d20130f0c090400000000000000020e1924303b45505b656f78828b939ba2a9a8a19b96928f8c8a898888898a8c8f93989da3aaa59f978f877e756b62574d43382d22170c010000000000000000000000000005121f2b3845515e6b7884919eaaac9f9286796c5f5346392c20130600000000000000000000000000000000000000000013202c3946535f6c798693a0ab9e9285786b5e5865727e8c98a5a6998c7f7265594c3f3226190c00000000000000000000000000000000000a16222e3a46515b6265656565656565656565625a50453a2e22160a000000000000000000000000000000000000101c2834404b565f6465656565656565656560574d43382d23180d03000000050f1a252f3a454f5961656565656565656565645f574c4135291d110400000013202c3946535f6c798686868686868686868686868686868686868b96a3a0948986868686868686868686868686868686868376695d5043362a1d1000121f2b3844505c67707171717171717171717171717171717171717171717171717171717171717171717171717171717171716e655a4e4135281c0f0013202c3946535f6c7982828282828282828282828282828282828282828282828282828282828282828282828282828282828276695d5043362a1d10000000000000061019232c343c444c535a60666b7074787b7d80828384848585848382817e7c7976726d68635d564f473f372e251c1309000000000000000000000000020b141c242c333a40464c51565a5d61636667696a6b6b6b6b6a69686664625f5b57534e49433d362f271f170f0600000000000000000000000000000e1a26323d4955616d7884909ca2a2a2968a7e72665a4e43372b1f1307000000000000000000000000000000000005111d2935404c5864707c8894a0a2a29d9185796d61564a3e32261a0e02000008121b242c32363839393939393939393937342e271f160c020000000000000000000000000000000000000000000000000a141d262d33373939393939393939393936322c251c13090000000000000000000000000000000000000000000000000000000001060a0d0e0e0e0e0e0e0e0d0a06010000000000000000000000000000000000000000000000000013202c3946535f6c798693a0ac9f9286796c5f5246392c1f130013202c3946535f6c798693a0ac9f9286796c5f5246392c1f130000000000000000000f1c2835424f5b6875828f9084776a5d5044372a1d110400000000000000000013202c3946535f6c79868a8a8a8a8a8a8a8a8a8a8a8a8a8a8b95a0ada99d928a8a8a8a8a8a8a8a8a8a8a8a8a8a877a6d6053473a2d20140700000000060d13171b1c1c1c1c1c1c1c1c1c1c1c1c1c1c1c1c1c1c1c1c1c212e3b4854616e7b8894a1ada09386796d6053463a2d201c1b19150f0901000000000007131f2a35414c57626c77818b949da5ada59e96908a8682807d7c7b7b7c7e8083878c9298a0a8a9a19990877d73695f544a3f34281d12060000000000000000000000000002111e2a3744505d6a7683909da9ada093867a6d6054473a2d21140700000000000000000000000000000000000000000013202c3946535f6c798693a0ab9e9285786b5e5865727e8c98a5a6998c7f7265594c3f3226190c00000000000000000000000000000000030f1b27333f4b57626d727272727272727272726c62564a3f33271b0f030000000000000000000000000000000000121f2b3844515d6870727272727272727271695f544a3f342a1f140a0000010c16212c36414c56616b72727272727272727271695e5245392c201307000000131f2c3946525f6b7679797979797979797979797979797979797b8895a2a0938679797979797979797979797979797979797974695c4f4336291d100013202c3946535f6c797e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e76695d5043362a1d100013202c3946535f6c79868f8f8f8f8f8f8f8f8f8f8f8f8f8f8f8f8f8f8f8f8f8f8f8f8f8f8f8f8f8f8f8f8f8f8f8f8f8f8f8f8376695d5043362a1d100000000000040e18222b353e464e565e656b71777c8084878a8c8e909191929191908f8d8b8986827e79746e686159514940372e251b110700000000000000000000020b141d262e363e454b52575d62666a6d70727475777778787777767573716e6b68645f5a544e484139312921180f05000000000000000000000000000915212d3944505c6874808b97a3aea69a8f83776b5f53473b3024180c00000000000000000000000000000000000a16212d3945515d6975818c98a4aea4988c8174695d5145392d22160a0000040f1a242e363d4245464646464646464645443f3931281e1308000000000000000000000000000000000000000000000006111c262f373e4345464646464646464645433d362e251b10050000000000000000000000000000000000000000000000000000060d1217191b1b1b1b1b1b1b1916120c0500000000000000000000000000000000000000000000000013202c3946535f6c798693a0ac9f9286796c5f5246392c1f130013202c3946535f6c798693a0ac9f9286796c5f5246392c1f130000000000000000000f1c2835424f5b6875828f9084776a5d5044372a1d110400000000000000000013202c3946535f6c787d7d7d7d7d7d7d7d7d7d7d7d7d7d7d85929faca89b8e827d7d7d7d7d7d7d7d7d7d7d7d7d7d796d6053473a2d2014070000000810181e2327292929292929292929292929292929292929292929292e3b4854616e7b8894a1ada09386796d6053463a2d29292825201a130b02000000000c18242f3b47525d68737e89939da6aea59c938c857f7a7673716f6f6f6f7173777b81878e969ea7aba2998f857b71665b50453a2e23170b0000000000000000000000000000101c2936424f5c6875828e9ba8aea194887b6e6155483b2f22150900000000000000000000000000000000000000000013202c3946535f6c798693a0ab9e9285786b5e5865727e8c98a5a6998c7f7265594c3f3226190c0000000000000000000000000000000007131f2b37434f5b67737e7e7e7e7e7e7e7e7e7e73675b4f43372b1f1307000000000000000000000000000000000013202c3946535f6c797e7e7e7e7e7e7e7e7b71665b51463b31261b11060008131d28333d48535d68737d7e7e7e7e7e7e7e7e7a6d6154473a2e211407000000111e2a37434f5a646b6d6d6d6d6d6d6d6d6d6d6d6d6d6d6d6d6f7b8895a2a09386796d6d6d6d6d6d6d6d6d6d6d6d6d6d6d6d6d6a62584c4034281b0f0013202c3946535f6c79868b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8376695d5043362a1d100013202c3946535f6c7986939c9c9c9c9c9c9c9c9c9c9c9c9c9c9c9c9c9c9c9c9c9c9c9c9c9c9c9c9c9c9c9c9c9c9c9c9c9c908376695d5043362a1d1000000000010b16202a343d47505860686f767c82878c909497999b9c9d9e9e9e9e9d9c9a9895928e8a857f79726b635b524940372d23190e030000000000000000010a141d262f3840484f565d63686d7276797c7e81828484858584848382807d7b77746f6b656059524b433b332a21170e0400000000000000000000000005101c2834404b57636f7b87929eaaab9f93877b7064584c4034281c1105000000000000000000000000000000020e1a26323e4a56616d7985919da9ab9f93877b7064584c4035291d110500000a15212c3640484e52525252525252525252504a433a3025190e02000000000000000000000000000000000000000000000c17232e3841494f525252525252525252524e4840372c21160a000000000000000000000000000000000000000000000000000810181e23262828282828282726221d170f07000000000000000000000000000000000000000000000013202c3946535f6c798693a0ac9f9286796c5f5246392c1f130013202c3946535f6c798693a0ac9f9286796c5f5246392c1f130000000000000000000f1c2835424f5b6875828f9084776a5d5044372a1d1104000000000000000000121e2b3744505c676e70707070707070707070707070707885929faca89b8e8275707070707070707070707070706f675c5145382c1f1306000007111a22292f3336363636363636363636363636363636363636363636363b4854616e7b8894a1ada09386796d6053463a36363634312c251d140a00000004101c2834404c58636e7a85909aa5afa69c938a817a736e6a66646362626364676b70757c848c959ea8aba1978d82786d61564b3f33281c1004000000000000000000000000000e1b2834414e5a6773808d99a6afa296897c6f6356493d3023170a00000000000000000000000000000000000000000013202c3946535f6c798693a0ab9e9285786b5e5865727e8c98a5a6998c7f7265594c3f3226190c000000000000000000000000000000000c18242f3b47535f6b77838c8c8c8c8c8c8c8c83776b5f53473c3024180c0000000000000000000000000000000000121f2c3845515d69737e898c8c8c8c8c8c82786d62584d42382d23180d040f1a242f3a444f5a646f7a848c8c8c8c8c8c8a7f746a5e5246392d2013070000000e1b27323e49525a5f606060606060606060606060606060626f7b8895a2a09386796c606060606060606060606060606060605e5950463b3024180c0013202c3946535f6c7986939898989898989898989898989898989898989898989898989898989898989898989898989898908376695d5043362a1d100013202c3946535f6c798693a0a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a69d908376695d5043362a1d100000000008121d28323c464f59626a727a81888e93989ca0a3a5a7a7a5a4a4a4a5a6a8a7a4a19e9a96908a847d756d645b52493f352a20150a000000000000000008131c262f39424a525a61686e74797e8286898b8d8f909192929190908e8c8a8784807b76716b645d554d453c332920160c010000000000000000000000000c17232f3b47525e6a76828d99a5b0a4988c8074685c5145392d21150900000000000000000000000000000007131f2b37424e5a66727e8a96a2ada69a8e83776b5f53473c3024180c0000000e1a26323d48525a5e5f5f5f5f5f5f5f5f5f5c554c41362a1f130700000000000000000000000000000000000000000005111c28343f4a535b5f5f5f5f5f5f5f5f5f5e5a52483e32271b0f02000000000000000000000000000000000000000000000008111a22292f3334343434343434322e28211910060000000000000000000000000000000000000000000013202c3946535f6c798693a0ac9f9286796c5f5246392c1f130013202c3946535f6c798693a0ac9f9286796c5f5246392c1f130000000000000000000f1c2835424f5b6875828f9084776a5d5044372a1d11040000000000000000000f1c28343f4a555d62636363636363636363636363636b7885929faca89b8e827568636363636363636363636363625e554b4034281c100400030e19232c343b404243434343434343434343434343434343434343434343434854616e7b8894a1ada09386796d60534643434343413d372f261c120700000814202d3945515d6874808b96a1aca99e948a81776f68625d5a5756555556585b5f646a727a838c96a0aba99f94897e73675c5044382c201408000000000000000000000000000d1926333f4c5865727e8b98a4b0a4978a7e7164584b3e3225190c00000000000000000000000000000000000000000013202c3946535f6c798693a0ab9e9285786b5e5865727e8c98a5a6998c7f7265594c3f3226190c00000000000000000000000000000004101c2834404c5864707c889498989898989894887c7064584c4034281c100400000000000000000000000000000000101d2935414c57626c77818c9698989894897f74695f54493f34291f140b16212b36414b56616b76818b96989898978d82786d63584d42362a1e11050000000a16212c3740494f53535353535353535353535353535355626f7b8895a2a09386796c5f535353535353535353535353535353524e473e352a1f13080013202c3946535f6c798693a0a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a49d908376695d5043362a1d100013202c3946535f6c7986939999999999999999999999999999999999999999999999999999999999999999999999999999908376695d5043362a1d10000000030e19242f39444e58616b747c848c93999fa4a8a7a29f9c9a9898979898999b9ea1a5aaa6a19c968f877f766d645b51463c31261b100500000000000005101a242e38424b545c646c737980858a8e9295989a9c9d9e9e9e9e9d9c9b999693908c87827c756f675f574e453b32281e130900000000000000000000000007131e2a36424e5965717d8994a0aca89d9185796d6155493e32261a0e0200000000000000000000000000000c18232f3b47535f6b77838e9aa6ada1968a7e72665a4f43372b1f1308000000111d2a36424e5a646b6c6c6c6c6c6c6c6c6c675e53473b2f23170b0000000000000000000000000000000000000000000915212d3945505c656b6c6c6c6c6c6c6c6c6b645a4f43372b1e120500000000000000000000000000000000000000000000040f1a232c343a3f414141414141413e3a332b22180e0300000000000000000000000000000000000000000013202c3946535f6c798693a0ac9f9286796c5f5246392c1f130013202c3946535f6c798693a0ac9f9286796c5f5246392c1f130000000000000000000f1c2835424f5b6875828f9084776a5d5044372a1d11040000000000000000000b17232e39434b52565656565656565656565656565f6b7885929faca89b8e8275685b565656565656565656565656524c43392f23180c00000914202a353e464c4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f54616e7b8894a1ada09386796d60534f4f4f4f4f4d4841382e23180d01000c1824303d4955616d7985919ca8aea2978c82786e665e57524e4b494848494b4f53596068717a848e99a4afa69a8f84786c6155493d3125180c000000000000000000000000000b1824313d4a5763707c8995a2afa5998c8073665a4d4034271b0e01000000000000000000000000000000000000000013202c3946535f6c798693a0ab9e9285786b5e5865727e8c98a5a6998c7f7265594c3f3226190c0000000000000000000000000000000814202c3844505c6874808c98a4a5a5a5a5a4988c8074685c5044382d211509000000000000000000000000000000000d1924303b46505a656f7a858f99a4a59b90867b70665b50463b31261b121d28323d48525d68727d88929da5a59a90857b70665b51473c31261a0e0200000005101b252e373e4346464646464646464646464646464855626f7b8895a2a09386796c5f53464646464646464646464646464646423d352c23180e020013202c3946535f6c7986939c9c9c9c9c9c9c9c9c9c9c9c9c9c9c9c9c9c9c9c9c9c9c9c9c9c9c9c9c9c9c9c9c9c9c9c9c9c908376695d5043362a1d100013202c3946535f6c79868c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8376695d5043362a1d1000000009141f2b35404b56606a737d868e969da4aaa6a09b9692908d8c8b8a8b8b8d8f92959a9fa5aba7a099918980766d63584e43382d21160b0000000000010c17212c36404a545d666e767d848b91969a9ea2a4a3a09e9d9d9d9d9e9fa1a4a3a09c98938d878079716960574d443a2f251a0f040000000000000000000000020e1a25313d4955606c7884909ba7ada195897d72665a4e42362a1f13070404040404040404040404040404101c2834404c58636f7b87939faba89d9185796d61564a3e32261a0f03000000121f2c3845525e6b767979797979797979786f63574b4034281c100400000000000000000000000000000000000000020e1a26323d4955616d777979797979797979766b5f5346392d201306000000000000000000000000000000000000000000000a16212b353e464b4e4e4e4e4e4e4e4a453d342a1f140800000000000000000000000000000000000000000013202c3946535f6c798693a0ac9f9286796c5f5246392c1f130013202c3946535f6c798693a0ac9f9286796c5f5246392c1f130000000000000000000f1c2835424f5b6875828f9084776a5d5044372a1d110400000000000000000006121c2731394146494a4a4a4a4a4a4a4a4a4a4a525f6b7885929faca89b8e8275685b4e4a4a4a4a4a4a4a4a4a4a4946413a31271d120700000d1925313c4650575c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c616e7b8894a1ada09386796d605c5c5c5c5c5c59534a4035291d1205000f1b2734404c5965717d8995a1a7a89d91867b70665c544c46413e3c3c3c3d3f42484e565f68727d88939ea9aca095897d7165594d4134281c10030000000000000000000000000916222f3b4854616e7a8793a0aca79b8e8175685b4f4236291d1004000000000000000000000000000000000000000013202c3946535f6c798693a0ab9e9285786b5e5865727e8c98a5a6998c7f7265594c3f3226190c0000000000000000000000000000010d1925313d4955616c7885919ca8a09a9aa0a99d9185796d6155493d3125190d0100000000000000000000000000000008131f29343e49535e68737d88929da7a2978d82776d62574d42382d2219242f39444f59646f79848f99a4a89d93897e74695f544a3f352a201409000000000009131c252c3337393a3a3a3a3a3a3a3a3a3a3a3a3c4855626f7b8895a2a09386796c5f53463a3a3a3a3a3a3a3a3a3a3a3a3a3936312b231a1107000013202c3946535f6c7986909090909090909090909090909090909090909090909090909090909090909090909090909090908376695d5043362a1d100013202c3946535f6c7980808080808080808080808080808080808080808080808080808080808080808080808080808080808076695d5043362a1d100000020e1a25303c47525d67727c868f98a0a8aaa39b958f8a8683817f7e7d7e7e808285898e939aa1a9aba39b92897e746a5f54493e33271b10040000000007121d28333e48525c666f7880888f969ca1a6a29e9996949290909090919295989ba0a5a49e99928b837b72695f564b41372c21160b0000000000000000000000000915212c3844505c67737f8b97a2aea69a8e82766a5f53473b2f231711111111111111111111111111111115212d3944505c6874808c98a4afa4988c8074695d5145392d21160a00000000121f2c3945525f6b7783868686868686868074685c5044382d2115090000000000000000000000000000000000000007131f2a36424e5a66727d8686868686868684786c5f5346392d201306000000000000000000000000000000000000000000030f1b27323d4750575a5b5b5b5b5b5a564f463b3025190d01000000000000000000000000000000000000000013202c3946535f6c798693a0ac9f9286796c5f5246392c1f130013202c3946535f6c798693a0ac9f9286796c5f5246392c1f130000000000000000000f1c2835424f5b6875828f9084776a5d5044372a1d1104000000000000000000000b151f272f353a3c3d3d3d3d3d3d3d3d3d3d45525f6b7885929faca89b8e8275685b4e423d3d3d3d3d3d3d3d3d3d3a3630281f160b010000111d2936424d58626869696969696969696969696969696969696969696969696969696e7b8894a1ada09386796d69696969696969645c51463a2e21150800111e2a3743505c6875818d97999a9b978c8075695e544a423a3532302f2f3033373c444d56606b76818d98a4b0a5998d8175695d5044382b1f13060000000000000000000000000713202d3946525f6b7884919daaa99d9083776a5e5145382c1f1306000000000000000000000000000000000000000013202c3946535f6c798693a0ab9e9285786b5e5865727e8c98a5a6998c7f7265594c3f3226190c000000000000000000000000000005111d2935414d5965717d8995a1a2968e8e97a2a195897d7165594d41352a1e1206000000000000000000000000000000020d18222c37414c56616b76818b95a0a99e94897e74695f54493f3429202b36404b56606b75808b96a0aba1968c81776c62574d42382e23190e030000000000010a131b21272b2d2d2d2d2d2d2d2d2d2d2d2d2f3c4855626f7b8895a2a09386796c5f5346392d2d2d2d2d2d2d2d2d2d2d2d2c2a262019110800000013202c3946535f6c7983838383838383838383838383838383838383838383838383838383838383838383838383838383838376695d5043362a1d1000121f2b3844515d687173737373737373737373737373737373737373737373737373737373737373737373737373737373737370665a4e4235291c0f000007131f2b36424d58636e79848e98a1aaaaa198918a847e7a777472717171727376797d82888f979fa8ada49a91867c71665a4f44382c201408000000010d18242f3a454f5a646e78818a929aa1a7a49d97928d8a8785848383838486888b8f949aa0a7a49d958d847b71675d53483d32271c1005000000000000000000000004101c27333f4b57636e7a86929ea9ab9f93877b6f63574c4034281e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e25313d4955616d7985919ca8ab9f93877b7064584c4034291d110500000000111e2a37434f5b67727e8a92929292929084786d6155493d3125190e020000000000000000000000000000000000000b17232f3b47535f6a76828e92929292928b7f73675b5044372b1e120500000000000000000000000000000000000000000006131f2b37434f59626767676767676761584d4136291d1104000000000000000000000000000000000000000013202c3946535f6c798693a0ac9f9286796c5f5246392c1f130013202c3946535f6c798693a0ac9f9286796c5f5246392c1f130000000000000000000f1c2835424f5b6875828f9084776a5d5044372a1d110400000000000000000000030d151d242a2e303030303030303030303845525f6b7885929faca89b8e8275685b4e42353030303030303030302e2a251e160d04000000121f2c3945525e6a747676767676767676767676767676767676767676767676767676767b8894a1ada093867976767676767676756e6256493d3024170a00131f2c3946525f6b7884898a8c8d8f90877b6f63584d423830292523222223262b323b444f5a65707c8894a0acaa9e9185796c6054473b2e22150900000000000000000000000005111e2a3743505c6975828e9ba7ab9f9286796d6054473b2e221509000000000000000000000000000000000000000013202c3946535f6c798693a0ab9e9285786b5e5865727e8c98a5a6998c7f7265594c3f3226190c00000000000000000000000000000915212d3945515d6975818d99a59e918586929ea59a8e82766a5e52463a2e22160a0000000000000000000000000000000006101b25303a454f5a646f79848e99a3a59b90867b70655b50463b3027323d47525d67727c87929da7a4998f847a6f655a50463b31261c110700000000000000010910161b1e2020202020202020202020222f3c4855626f7b8895a2a09386796c5f5346392c2020202020202020202020201e1a150f0700000000121f2c3945525e6a7476767676767676767676767676767676767676767676767676767676767676767676767676767676767672675b4f4236291c1000101c2935404c565f65666666666666666666666666666666666666666666666666666666666666666666666666666666666666645e54493e32261a0d00000c1824303b47535e6975808b95a0aaaba1988f877f78736e6a67666564646567696d71777d858d969fa9aca2988d82776c6054493d3125190d00000006121e2935404b56616c76808a939ca4aaa299928c86817d7a787776767777797c7f83898f969da6a79f968d83796f645a4f44382d21160a0000000000000000000000000b17232f3a46525e6975818d99a5afa3978c8074685c5044382d2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a36424e5a66717d8995a1ada69a8e83776b5f53473c3024180c00000000000e1b27333e4a56626e7985919d9f9f9f95897d7165594e42362a1e1206000000000000000000000000000000000004101c2834404b57636f7b87939f9f9f9e92867a6e62574b3f33271b0f0300000000000000000000000000000000000003070a0e15212e3b4754606b73747474747473695e5245392c1f130c090500000000000000000000000000000000000013202c3946535f6c798693a0ac9f9286796c5f5246392c1f130013202c3946535f6c798693a0ac9f9286796c5f5246392c1f130000000000000000000f1c2835424f5b6875828f9084776a5d5044372a1d11040000000000000000000000030c13191e212323232323232323232c3845525f6b7885929faca89b8e8275685b4e4235282323232323232323211e19130c040000000013202c3946535f6c79838383838383838383838383838383838383838383838383838383838895a1ada0948783838383838383837d7164574a3e3124170b0013202c3946525f6b777b7c7e7f81828483776b5f53473c31261e19161516171a2029323d48545f6b7784909ca9ada195887c6f63564a3d3124180b000000000000000000000000020f1b2834414d5966727e8b98a4aea195887c6f63564a3d3125180c000000000000000000000000000000000000000013202c3946535f6c798693a0ab9e9285786b5e5865727e8c98a5a6998c7f7265594c3f3226190c00000000000000000000000000020e1a26323e4a56626d7a86929ea69a8e82828f9ba79e92867a6e62564a3e32261b0f030000000000000000000000000000000009131e28333d48525d67727c87919ca6a2978d82776d62574d42372e39444e59636e79848e99a4a79c92887d73685e53493e34291f140a00000000000000000000050a0f121313131313131313131315222f3c4855626f7b8895a2a09386796c5f5346392c201313131313131313131313110e09040000000000111d2936424d5862686969696969696969696969696969696969696969696969696969696969696969696969696969696969696760564b3f33271a0e000c18242f3a444d545859595959595959595959595959595959595959595959595959595959595959595959595959595959595958534c42382d21160a0004101c2834404c58636f7b86919ca7afa4998f867d756d67625e5b59585757595a5d61666c737b848d97a2adaa9f94887c7165594d4135291c100400000b17232f3a46515d68737d88929ca5aba2989088817a75716e6c6a69696a6b6d6f73777d848b949da7a89f958b81766b6055493e32261b0f03000000000000000000000006121e2a35414d5965717c8894a0aca89c9084786d6155493d373737373737373737373737373737373737373b47525e6a76828e9aa6ada1968a7e72665a4e43372b1f130700000000000a16222e3945515d6975818c98a4aca59a8e82766a5e52463b2f23170b00000000000000000000000000000000000915212c3844505c6874808c97a3aca5998d8175695e52463a2e23170b0000000000000000000000000000000000050a0f13161a1d222f3c4855626f7b8181818181796d6053463a2d201c1815110c080300000000000000000000000000000013202c3946535f6c798693a0ac9f9286796c5f5246392c1f130013202c3946535f6c798693a0ac9f9286796c5f5246392c1f130000000000000000000f1c2835424f5b6875828f9084776a5d5044372a1d110400000000000000000000000001080d121516171717171717171f2c3845525f6b7885929faca89b8e8275685b4e4235281b1717171717171615120e0802000000000013202c3946535f6c7986909090909090909090909090909090909090909090909090909090929aa5b0a49991909090909090908a7d7164574a3e3124170b00111e2a37434f5a656c6e7071727475777872675b4e42362a1f140d0a09090a0f17212c37434f5b6874818d99a6b0a4978b7e7265584c3f3326190d000000000000000000000000000c1825313e4a57636f7c8895a1ada4978b7e7265594d4034281b0f030000000000000000000000000000000000000013202c3946535f6c798693a0ab9e9285786b5e5865727e8c98a5a6998c7f7265594c3f3226190c0000000000000000000000000006121e2a36424e5a66727e8a96a2a3978a7e7e8b97a3a2978b7e73675b4f43372b1f130700000000000000000000000000000000020c17212c36414b56606b75808a959fa99e94897e74695e54493e35404b55606a75808b95a0aaa0958b80766b61564c41372c22180d0300000000000000000000000002050607070707070707070915222f3c4855626f7b8895a2a09386796c5f5346392c2013070707070707070707060502000000000000000d1925313c4650575c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5b564e443a2e23170b0007131e29323b43494c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4b48423a30261c1005000713202c3844505c6874808c97a3aea89d92887d746b635c56524e4c4b4b4b4c4e51555a6169727b86909ba7b0a5998d8275695d5145382c20130700030f1b27333f4b57626e79848f9aa4aea49990867d766f6965615f5e5d5d5d5e6063676c7279828b959faaa79d93887d71665a4f43372b1f13070000000000000000000000010d1925313c4854606c77838f9ba7ada195897d71655a4e4444444444444444444444444444444444444444444b57636f7b87929eaaa89d9185796d61564a3e32261a0e03000000000005111d2935404c5864707b87939fabaa9e92877a6f63574b3f33271c1004000000000000000000000000000000020d1925313d4955616c7884909ca8aca094887c7165594d41352a1e1206000000000000000000000000000000060c11161b1f2326292c2f3c4855626f7b888e8e8e86796d6053463a2e2b2825211d18140e09030000000000000000000000000013202c3946535f6c798693a0ac9f9286796c5f5246392c1f130013202c3946535f6c798693a0ac9f9286796c5f5246392c1f130000000000000000000f1c2835424f5b6875828f9084776a5d5044372a1d110400000000000000000000000000000205080a0a0a0a0a0a0a121f2c3845525f6b7885929faca89b8e8275685b4e4235281b0f0a0a0a0a0a0a0806020000000000000013202c3946535f6c7986939c9c9c9c9c9c9c9c9c9c9c9c9c9c9c9c9c9c9c9c9c9c9c9c9c9c9ea3acb5aba29d9c9c9c9c9c9c978a7d7164574a3e3124170b000f1b27333e49535b606163646667696a6b6960564a3e32261a0e0300000000050f1b27333f4c5865717e8a97a3b0a6998d8073675a4e4134271b0e000000000000000000000000000916222e3b4753606c7985919eaaa79a8e8175685c5043372b1e12060000000000000000000000000000000000000013202c3946535f6c798693a0ab9e9285786b5e5865727e8c98a5a6998c7f7265594c3f3226190c000000000000000000000000000a16222e3a46525e6a76828e9aa69f93877b7b8793a0a79b8f83776b5f53473b2f23180c0000000000000000000000000000000000050f1a242f39444e59636e78838d98a2a59b90857b70655b50453c47515c67727c87929ca7a3988e83796e64594f453a30251b10060000000000000000000000000000000000000000000000000915222f3c4855626f7b8895a2a09386796c5f5346392c2013060000000000000000000000000000000000000914202a353e464c4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4b443c32281d120600010c17202931383d3f4040404040404040404040404040404040404040404040404040404040404040404040404040404040403f3c3730281e140a00000a17232f3c4854606c7985919ca8aea3978c81766b6259514a4642403e3e3e3f4145494f576069747f8a96a1adaa9e9286796d6154483b2f23160a0007131f2b3744505c67737f8a96a1aba89d92887d746b645e595553515050505254575b61687079838d98a4afa4998e83776b5f53473b2f23170a0000000000000000000000000814202c38434f5b67737e8a96a2aea59a8e82766a5e52515151515151515151515151515151515151515151515c6873808b97a3afa4988c8074685d5145392d21160a000000000000010c1824303c47535f6b77838e9aa6afa3978b7f73675c5044382c20140900000000000000000000000000000006121e2a36424d5965717d8995a1ada79b8f84786c6054483d3125190d0100000000000000000000000000040b11171d22262b2f3236393b3d4855626f7b88959b9386796d6053463c3a3734312d29241f1a140e0701000000000000000000000013202c3946535f6c798693a0ac9f9286796c5f5246392c1f130013202c3946535f6c798693a0ac9f9286796c5f5246392c1f130000000000000000000f1c2835424f5b6875828f9084776a5d5044372a1d1104000000000000000000000000000000000000000000000000121f2c3845525f6b7885929faca89b8e8275685b4e4235281b0f0200000000000000000000000000000013202c3946535f6c798693a0a9a9a7a3a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a3a8b0b8afa7a3a2a2a2a2a2a2978a7d7164574a3e3124170b000a16212d3741494f53555658595b5c5e5f5d574e44392e22160a0000000000000b1724303d4956626f7c8995a2afa89b8e8275685b4f4235291c0f0000000000000000000000000006131f2b3844505d6975828e9aa6a99d9184786c5f53473a2e2216090000000000000000000000000000000000000013202c3946535f6c798693a0ab9e9285786b5e5865727e8c98a5a6998c7f7265594c3f3226190c000000000000000000000000030f1b27333f4b57636f7b87939fa89c9083777784909ca89f94887b7064584c4034281c1004000000000000000000000000000000000008131d28323d47525c67717b86919ba5a2978c82776c62574c434e58636e78838e99a3a69b91877c72675d52483d33281e1309000000000000000000000000000000000000000000000000000915222f3c4855626f7b8895a2a09386796c5f5346392c201306000000000000000000000000000000000000030e19232c343b4042434343434343434343434343434343494d4f4f4f4f4f4f4f4f4d48434343434343434343434343434343423f39322a20160c010000050e1720272c303333333333333333333333333333333333333333333333333333333333333333333333333333333333333332302b251e160c0300000d1926323f4b5864707c8995a1ada99e92867a6f645a50473f3a36333231313335383e454e58626e7985919da9aea295897c7064574b3e3125180c000a16222f3b4754606c7884909ba7aea2978b80766b625a524d49464443434445474a4f565e67717c87929eaaaa9f93887c7064574b3f33261a0e010000000000000000000000040f1b27333f4a56626e7a86919da9aa9e92877b6f635d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d606c7884909ca8ab9f93877b6f64584c4034291d11050000000000000008131f2b37434e5a66727e8a95a1ada79c9084786c6054493d3125190d0100000000000000000000000000000b17232e3a46525e6a76828e99a5aea2968b7f73675b4f44382c20140800000000000000000000000001080f161c22282d32373b3f4245484a4c55626f7b8895a09386796d60534b494744413d3935302b251f19120b040000000000000000000013202c3946535f6c798693a0ac9f9286796c5f5246392c1f130013202c3946535f6c798693a0ac9f9286796c5f5246392c1f130000000000000000000f1c2835424f5b6875828f9084776a5d5044372a1d1104000000000000000000000000000000000000000000000000121f2c3845525f6b7885929faca89b8e8275685b4e4235281b0f0200000000000000000000000000000013202c3946535f6c798693a0aca69c96959595959595959595959595959595959595959595979ea8b2a79d96959595959595958a7d7164574a3e3124170b0005101b252f373e4447484a4b4c4e4f5152514c453c33281d11060000000000000815222e3b4855616e7b8894a1aea99c8f8376695c4f4336291c1000000000000000000000000000030f1c2834414d5966727e8a97a3ada094887b6f63564a3e3225190d0100000000000000000000000000000000000013202c3946535f6c798693a0ab9e9285786b5e5865727e8c98a5a6998c7f7265594c3f3226190c00000000000000000000000007131f2b37434f5b67737f8b97a3a5988c807474808c98a4a4988c8074685c5044382c2014090000000000000000000000000000000000010b16202b35404a555f6a747f89949ea99e93897e73695e534a55606a75808a95a0a99e948a7f756a60554b40362b21170c02000000000000000000000000000000000000000000000000000915222f3c4855626f7b8895a2a09386796c5f5346392c2013060000000000000000000000000000000000000007111a22292f333636363636363636363636363638424c545a5b5b5b5b5b5b5b5b59534a403636363636363636363636363635332e2820180e0500000000050e151b20242626262626262626262626262626262626262626262626262626262626262626262626262626262626262626231f1a140c040000000f1c2835424e5a6773808c99a5a6a5998d8175695e53483e352e292625242526282d333c46515d6975818d9aa6b1a5988c7f7266594d4033271a0d000c1925323e4b5763707c8894a0aca99d91867a6f645a5048413d3938373637383b3f444c555f6a76828d99a5b0a4988c8073675b4e4236291d10040000000000000000000000000b16222e3a46515d6975818c98a4afa3978b80736a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a717d8995a0aca69a8e83776b5f53473b3024180c0000000000000000030f1a26323e4a55616d7985919ca8aca094897d7165594d41352a1e12060202020202020202020202020204101b27333f4b57636e7a86929eaaa99e92867a6e62564b3f33271b10040000000000000000000000030b121a21272e34393e43474b4e515456585a626f7b8895a09386796d605a585653504d4945413c36312a241d160e0600000000000000000013202c3946535f6c798693a0ac9f9286796c5f5246392c1f130013202c3946535f6c798693a0ac9f9286796c5f5246392c1f130000000000000000000f1c2835424f5b6875828f9084776a5d5044372a1d1104000000000000000000000000000000000000000000000000121f2c3845525f6b7885929faca89b8e8275685b4e4235281b0f0200000000000000000000000000000013202c3946535f6c7986939ea9a0948a8888888888888888888888888888888888888888888c96a2aea1958b88888888888888887d7164574a3e3124170b000009131d252d33383a3b3d3e404143444544403b332a21160c000000000000000714212e3a4754616d7a8794a0ada99d908376695d5043362a1d1000000000000000000000000000000c1825313d4a56626e7a87939faba4978b7e72665a4e4235291d110500000000000000000000000000000000000013202c3946535f6c798693a0ab9e9285786b5e5865727e8c98a5a6998c7f7265594c3f3226190c0000000000000000000000000b17232f3b47535f6b77838f9ba7a195897c70707c8894a0a89c9185786d6155493d3125190d010000000000000000000000000000000000040f19242e39434d58626d77828c97a1a59a90857a70655a515c66717c87919ca7a2978d82786d63584e44392f241a0f0500000000000000000000000000000000000000000000000000000915222f3c4855626f7b8895a2a09386796c5f5346392c20130600000000000000000000000000000000000000000810181e2327292929292929292929292929313d49545e666868686868686868645c52463a2e29292929292929292929292926221d160e060000000000030b12181d202222222222222222222222222222222222222222222222222222222222222222222222222222222222222222201c17110901000000111e2b3744505d6976838f97989a9b96897d7165594d41362c231d1a181818191c212a35404c5965717e8a97a4b0a79a8e8174675b4e4135281b0f000f1b2834414d5a66737f8c98a4b0a6998d8175695e52483e36312d2b2a2a2a2c2e333a434e5965717d8995a2aea89c9083776a5e5145382c1f130600000000000000000000000006121d2935414d5864707c88949faba89c9084787777777777777777777777777777777777777777777777777777828d99a5ada1958a7e72665a4e42372b1f13070000000000000000000a16212d3945515c6874808c98a3afa5998d81756a5e52463a2e22170f0f0f0f0f0f0f0f0f0f0f0f0f0f0f14202c3844505b67737f8b97a3afa5998d8175695e52463a2e22170b0000000000000000000000040c151d242b32393f454a4f53575b5e61636567686f7b8895a09386796d686664625f5c5955514c47423c352f2720181007000000000000000013202c3946535f6c798693a0ac9f9286796c5f5246392c1f130013202c3946535f6c798693a0ac9f9286796c5f5246392c1f130000000000000000000f1c2835424f5b6875828f9084776a5d5044372a1d1104000000000000000000000000000000000000000000000000121f2c3845525f6b7885929faca89b8e8275685b4e4235281b0f0200000000000000000000000000000013202c3946525f6c77828d97a29f93877d7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b8894a1ada093867b7b7b7b7b7b7b7b7b7063574a3d3124170a0000010b131b22272b2d2f303233353638383835302921180f05000000000000000814212e3a4754616d7a8794a0adaa9d908376695d5043362a1d1000000000000000000000000000000915212d3a46525e6a77838f9ba7a79b8f82766a5e5245392d21150900000000000000000000000000000000000013202c3946535f6c798693a0ab9e9285786b5e5865727e8c98a5a6998c7f7265594c3f3226190c000000000000000000000004101c2834404c5864707c8894a0aa9e9185796c6c7884909ca8a195897d7165594d4135291d110600000000000000000000000000000000000007121c27313c46515b66707b85909aa5a1978c82776c6158636d78838e98a3a59a90857b70665c51473c32271d12080000000000000000000000000000000000000000000000000000000915222f3c4855626f7b8895a2a09386796c5f5346392c201306000000000000000000000000000000000000000000060d13171b1c1c1c1c1c1c1c1c1c1c1c2734414d5a667075757575757575756e63564a3e31241c1c1c1c1c1c1c1c1c1c1c1a17120c040000000000020c151d24292d2f2f2f2f2f2f2f2f2f2f2f2f2f2f2f2f2f2f2f2f2f2f2f2f2f2f2f2f2f2f2f2f2f2f2f2f2f2f2f2f2f2f2f2f2c28221b130a000000131f2c3946525f6b7885898b8c8d8e8f867a6d6155493c31251a110d0c0b0b0d101824303d4956626f7c8895a2aea89c8f8275695c4f4236291c1000101d2a36434f5c6975828e9ba7afa3968a7d7165594d41362c25211e1d1d1d1f2228323d4955616d7986929fabab9f9286796d6053473a2e211408000000000000000000000000010d1924303c48545f6b77838f9aa6aca0958984848484848484848484848484848484848484848484848484848487929eaaa89c9185796d61554a3e32261a0e0300000000000000000005111d2834404c58636f7b87939faaaa9e92867a6e62574b3f33271b1b1b1b1b1b1b1b1b1b1b1b1b1b1b1b1b25313c4854606c7884909ba7aca094887c7065594d4135291e120600000000000000000000040d161e262e363d444a50565b5f63676a6d70727375767b8895a0938679757473716f6c6965615d58534d474039322a221910070000000000000013202c3946535f6c798693a0ac9f9286796c5f5246392c1f130013202c3946535f6c798693a0ac9f9286796c5f5246392c1f130000000000000000000f1c2835424f5b6875828f9084776a5d5044372a1d1104000000000000000000000000000000000000000000000000121f2c3845525f6b7885929faca89b8e8275685b4e4235281b0f02000000000000000000000000000000111e2b37434f5b66707b85909ba3998f857a706f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f7b8894a1ada09386796f6f6f6f6f6f6f6e695f54483b2f231609000000010910161b2125292a2a2a2a2a2b2c2b2a2825201a120a020000000000000a16232f3c4855626e7b8894a1aea99c8f8376695c4f4336291d10000000000000000000000000000005111e2a36424e5a66737e8b97a3ab9e92867a6e6256493d3125190d01000000000000000000000000000000000013202c3946535f6c798693a0ab9e9285786b5e5865727e8c98a5a6998c7f7265594c3f3226190c00000000000000000000000814202c3844505c6874808c98a4a69a8e8275696874808c98a4a5998d82756a5e52463a2e22160a000000000000000000000000000000000000000b15202a353f4a545e69737e89939da89e93897e73685f6a747f8a959fa89e93897e74695f544a3f352a20160b010000000000000000000000000000000000000000000000000000000915222f3c4855626f7b8895a0a09386796c5f5346392c2013060000000000000000000000000000000000000000000002070b0e101010101010101010101b2835424e5b6875828282828282827e7165584b3e3225181010101010101010100f0e0a06000000000000000a141e272e35393c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3b38332d251c1208000013202c3946525f6c777b7d7e7f80818284776b5e5245392d20140801000000000815222e3b4854616e7b8794a1aea99c908376695c504336291d1000121e2b3844515e6a7784909daaada094877a6e6155493c30251a14121010111316202c3845515e6a7783909ca9aea194887b6f6255483c2f221609000000000000000000000000000814202b37434f5b66727e8a96a2ada59b939191919191919191919191919191919191919191919191919191919299a3aea4988c8074685c5145392d21160a00000000000000000000000c18242f3b47535f6a76828e9aa5aea2978b7f73675b4f43382c28282828282828282828282828282828282935414d5965717c8894a0aca79b8f84786c6054483c3125190d01000000000000000000030d161f28303840484f555b61666b6f73777a7c7e808283848996a09488838281807d7b7875726d69645e58524b433c342b2219100600000000000013202c3946535f6c798693a0ac9f9286796c5f5246392c1f130013202c3946535f6c798693a0ac9f9286796c5f5246392c1f130000000000000000000f1c2835424f5b6875828f9084776a5d5044372a1d1104000000000000000000000000000000000000000000000000121f2c3845525f6b7885929faca89b8e8275685b4e4235281b0f020000000000000000000000000000000f1b27333e49545f69747e89939ea1968c82776d6362626262626262626262626262626e7b8894a1ada09386796d626262626262625e574d43372b1f1307000000000a141d252c313537373737373737373735312b241c140d070301010207101a26323e4b5764707d8996a3afa89b8e8275685b4f4235291c0f0000000000000000000000000000010e1a26323e4a56626e7a87939faba2968a7e72665a4e42362a1e1206000000000000000000000000000000000013202c3946535f6c798693a0ab9e9285786b5e5865727e8c98a5a6998c7f7265594c3f3226190c00000000000000000000010d1925303c4854606c7884909ca8a2968a7e726564707c8894a0aa9e92867a6e62564a3e32261a0e02000000000000000000000000000000000000030e18232d38424d57626c77818c96a1a59a90857a7066717b86919ca6a1968c81776c62574d43382e23190e04000000000000000000000000000000000000000000000000000000000915222f3c4855626f7b889393939386796c5f5346392c20130600000000000000000000000000000000000000000000000000000000000000000000000f1b2835424e5b6875828e8f8f8f8f8b7e7165584b3e3225180b00000000000000000000000000000000000006111c26303940454849494949494949494949494949494949494949494949494949494949494949494949494949494949494948443f372e241a0f0300121e2b37434f5b666d6f7071727375767773685c5043362a1d110400000000020714212e3a4754616d7a8794a1aea99c908376695d5043362a1d1000131f2c3945525f6c7885929fabab9e9285786c5f5346392d2014080503010406101d2936424f5b6875828e9ba8afa396897c7063564a3d3023170a00000000000000000000000000030f1b27323e4a56626d7985919da8ada49f9e9e9e9e9e9e9e9e9e9e9e9e9e9e9e9e9e9e9e9e9e9e9e9e9e9e9e9ea3abab9f93877b6f64584c4034281d1105000000000000000000000007131f2b36424e5a66717d8995a1ada79b8f84786c6054483c353535353535353535353535353535353535353a46525d6975818d99a5aea2968b7e73675b4f43382c201408000000000000000000010b151f28313a424a525960676d72777b808386898b8d8e8f90939ba49992908f8e8c8a8885827e79756f69635d554e463d342b22180f04000000000013202c3946535f6c798693a0ac9f9286796c5f5246392c1f130013202c3946535f6c798693a0ac9f9286796c5f5246392c1f130000000000000000000f1c2835424f5b6875828f9084776a5d5044372a1d1104000000000000000000000000000000000000000000000000121f2c3845525f6b7885929faca89b8e8275685b4e4235281b0f020000000000000000000000000000000b16222d38424d57626c77828c97a19e94897f746a60555555555555555555555555616e7b8894a1ada09386796d60555555555555534d453b31261b0f0300000007111c262f373d42434444444444444443413c362e261e1813100e0e0f1219222c37424e5a67737f8c98a5b1a6998d8073675a4d4134271b0e0000000000000000000000000000000a16222e3a46525e6a76828e9aa6a69a8e82766a5e52463a2e22160b000000000000000000000000000000000013202c3946535f6c798693a0ab9e9285786b5e5865727e8c98a5a6998c7f7265594c3f3226190c0000000000000000000005111d2935414d5965717d8995a1aa9e92867a6e62606c7884909ca8a2968a7e72675b4f43372b1f13070000000000000000000000000000000000000007111c26313b45505a656f7a848f99a4a1978c81766d78838d98a2a4998f847a6f655b50463b31261c110700000000000000000000000000000000000000000000000000000000000915222f3c4855626f7b868686868686796c5f5346392c20130600000000000000000000000000000000000000000000000000000000000000000000000f1b2835424e5b6875828e9b9c9c988b7e7165584b3e3225180b0000000000000000000000000000000000000b17222e38424b515555555555555555555555555555555555555555555555555555555555555555555555555555555555555554504940362b201408000f1b27333f4a545c61626364666768696a6861574c4034271b0f09090a0a0c0f1219232f3b4855616e7b8894a1aea89c8f8275695c4f4336291c100013202c3946535f6c798693a0acaa9d9184776a5e5144382b1e120500000000010e1b2734414d5a6773818d9aa7b0a4978a7d7064574a3e3124170b00000000000000000000000000000a16222e3945515d6974808c98a4afafabaaa7a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a6aaabaeb2a69a8e82766b5f53473b2f24180c000000000000000000000000020e1a26323d4955616d7884909ca8aca094887c7065594d4242424242424242424242424242424242424242424a56626e7a86929ea9a99d92867a6e62564b3f33271b0f0400000000000000000009131d27313a434c545c646b72787e83888c8f929598999b9c9d9fa4aba39e9d9c9a999794918e8a85817b756e675f584f463d342a20160c010000000013202c3946535f6c798693a0ac9f9286796c5f5246392c1f130013202c3946535f6c798693a0a29f9286796c5f5246392c1f130000000000000000000f1c2835424f5b6875828f9084776a5d5044372a1d1104000000000000000000000000000000000000000000000000121f2c3845525f6b7885929faca89b8e8275685b4e4235281b0f0200000000000000000000000000000005111b26313b46505b65707a85909aa59b91867c71675c5248484848484848484854616e7b8894a1ada09386796d6053484848484846423b332a1f150a000000010c18232e3841484e5050505050505050504d4840383029231f1c1b1a1c1e232b343d48535f6b77838f9ba7b0a3978a7e7165584c3f3226190d00000000000000000000000000000006121e2a36424e5a66727e8a96a2aa9e92867a6e62564b3f33271b0f040000000000000000000000000000000013202c3946535f6c798693a0ab9e9285786b5e5865727e8c98a5a6998c7f7265594c3f3226190c000000000000000000000915212d3945515d6975818d99a5a69a8e82766a5e5c6874808c98a4a79b8f83776b5f53473b2f23170b00000000000000000000000000000000000000000a141f29343e49535e68737d88929da79e93887e747f8a949fa79d92887d73685e53493e34291f150a0000000000000000000000000000000000000000000000000000000000000815222f3b4855616d78797979797979766b5f5246392c1f130600000000000000000000000000000000000000000000000000000000000000000000000f1b2835424e5b6875828e9ba8a5988b7e7165584b3e3225180b0000000000000000000000000000000000000f1b27333f4a545c61626262626262626262626262626262626262626262626262626262626262626262626262626262626262615b52483c3125190c000b17222d38424a5154555758595a5b5c5d5c574f453b2f23181616161617191b1e232b343f4b5763707c8996a2afa79a8e8174685b4e4235281c0f0013202c3946535f6c798693a0acaa9d9084776a5d5044372a1d110400000000000d1a2633404d596673808d99a6b1a4978a7d7164574a3e3124170b000000000000000000000000000005111d2935404c5864707b87939fabb6aea49c98989898989898989898989898989898989898989898989aa1abb6ada195897d72665a4e42372b1f1307000000000000000000000000000915212d3944505c6874808b97a3afa5998d8175695d514e4e4e4e4e4e4e4e4e4e4e4e4e4e4e4e4e4e4e4e4e4f5b67737e8a96a2aea5998d8175695d52463a2e22160b00000000000000000005101b252f39434c555e666e767d83898f94989c9fa2a4a6a7a6a5a6abb0a9a5a4a5a7a5a3a19e9a96918c868079716a61584f463c32281e13080000000013202c3946535f6c798693a0ac9f9286796c5f5246392c1f130013202c3946535f6c7986939595959286796c5f5246392c1f130000000000000000000f1c2835424f5b6875828f9084776a5d5044372a1d1104000000000000000000000000000000000000000000000000121f2c3845525f6b7885929faca89b8e8275685b4e4235281b0f02000000000000000000000000000000000a141f29343e49545e69737e88939ea3988e83786e63594e443c3c3c3c3c3c4854616e7b8894a1ada09386796d6053463c3c3c3c3a36302921180e0300000005111d29343f4a535a5d5d5d5d5d5d5d5d5d59524a423b342f2b292727282b2f353d454f5a65707b87939fabaca094877b6f6256493d3024170b000000000000000000000000000000020e1a26323e4a55616d7985919da9a3978b7f73675b4f43382c2014090000000000000000000000000000000013202c3946535f6c798693a0ab9e9285786b5e5865727e8c98a5a6998c7f7265594c3f3226190c000000000000000000020e1a26323e4a56626d7986929da9a2968a7e72665a57646f7c8894a0ab9f93877b6f63584c4034281c100400000000000000000000000000000000000000030d18222c37414c56616b76818b95a0a59a8f857b86909ba6a0958b80766b61564c42372d22180d030000000000000000000000000000000000000000000000000000000000000714202d3945515c666c6c6c6c6c6c6c6b645a4f43372a1e110500000000000000000000000000000000000000000000000000000000000000000000000f1b2835424e5b6875828e9ba8a5988b7e7165584b3e3225180b000000000000000000000000000000000000121e2b3744505b666e6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6c64594d4135281c0f0006111c262f383f4548494a4b4c4d4f5051504c453d33292222222223232425272b2f353d46505c6773808c98a5b0a4988b7e7266594d4033271a0e0013202c3946535f6c7986929facaa9d9084776a5d5044372a1d110400000000000d1a2633404d596673808c99a6b0a3978a7d7063574a3d3124170a0000000000000000000000000000000c1824303c47535f6b76828e9aa6b2a89c928b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8f9aa5b2a89c9185796d6155493e32261a0e020000000000000000000000000004101c2834404b57636f7b86929eaaa99d92867a6e625b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5f6b77838f9ba7aca094887c7065594d4135291e12060000000000000000010c17222c37414b555e67707880878e959a9fa4a8a6a29f9c9b99989aa0a89e9898999a9c9fa2a6a6a29d97918b837b736a61584e443a2f251a0f0300000013202c3946535f6c798693a0ac9f9286796c5f5246392c1f130013202c3946535f6c7986888888888886796c5f5246392c1f130000000000000000000f1c2835424f5b6875828f9084776a5d5044372a1d1104000000000000000000000000000000000000000000000000121f2c3845525f6b7885929faca89b8e8275685b4e4235281b0f0200000000000000000000000000000000030d18222d37424c57616c77818c96a19f958a80756a60554b40362f2f2f3b4854616e7b8894a1ada09386796d6053463a2f2f2f2d2a251f170f06000000000814212d3945515c656a6a6a6a6a6a6a6a69645c544c46403b3835343435373b40474f57616b76818c98a4afa89c9084786b5f53463a2e211508000000000000000000000000000000000915212d3945515d6974808c98a4a79b8f83776c6054483c3125190e0200000000000000000000000000000013202c3946535f6c798693a0ab9e9285786b5e5865727e8c98a5a6998c7f7265594c3f3226190c00000000000000000006121e2a36424e5a66727e8a96a2aa9e92867a6e6256535f6b7784909ca8a4988c8074685c5044382c201408000000000000000000000000000000000000000006101b25303a454f5a646f79848e99a3a1968c848d97a2a3988e83796e645a4f453a30251b10060000000000000000000000000000000000000000000000000000000000000004111d2934404a545b5f5f5f5f5f5f5f5f5a52483e32261a0e0200000000000000000000000000000000000000000000000000000000000000000000000f1b2835424e5b6875828e9ba0a0988b7e7165584b3e3225180b00000000000000000000000000000000000013202c3946535f6c787c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c75695c5043362a1d1000000a141d262e34383b3c3d3e3f4142434443403b332c2f2f2f2f2f2f30313234373b40474e58626d7884909ca8aca094887b6f63564a3e3125180c00121f2c3845525e6b7885919eaaaa9e9184776b5e5145382c1f130905030304070f1b2834414e5a6774818d9aa6afa296897c6f6356493d3023160a00000000000000000000000000000007131f2b37424e5a66727d8995a1ada79a8d817e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e8a97a4afa3988c8074685c5145392d21150a0000000000000000000000000000000c17232f3b47525e6a76828d99a5aea2968a7e7368686868686868686868686868686868686868686868686868707c8894a0aba79b8f83776c6054483c3025190d01000000000000000007121e29333e49535d677079828a9299a0a6a9a39e999693908e8c8b8e98a2968c8b8c8e9092969a9ea4a8a39c958d857c736a60564c41362b20140900000013202c3946535f6c798693a0ac9f9286796c5f5246392c1f130013202c3946525f6c787b7b7b7b7b7b7b776b5f5245392c1f120000000000000000000f1c2835424f5b6875828f9084776a5d5044372a1d1104000000000000000000000000000000000000000000000000121f2c3845525f6b7885929faca89b8e8275685b4e4235281b0f02000000000000000000000000000000000006101b26303b45505a656f7a858f9aa49c91877c72675d52473d32282e3b4854616e7b8894a1ada09386796d6053463a2d2222211e1a140d050000000000091623303c4955626d7677777777777777756d665e57514b47444241414243474b5158616a737d88939ea9aea3978c8074685b4f43372b1e12050000000000000000000000000000000005111d2934404c5864707b87939eaaa094887c7065594d42362a1f130700000000000000000000000000000013202c3946535f6c798693a0ab9e9285786b5e5865727e8c98a5a6998c7f7265594c3f3226190c0000000000000000000a16222e3a46525e6a76828e9aa6a69a8e82766a5e524f5b6773808b97a3a89c9084786c6055493d3125190d01000000000000000000000000000000000000000009131e28333d48525d67727c87919ca69d9490959ea69c91877c72675d52483d33281e14090000000000000000000000000000000000000000000000000000000000000000000c18232e38424a5052535353535353524f4840372c21160a0000000000000000000000000000000000000000000000000000000000000000000000000f1b2835424e5b6875828e939393938b7e7165584b3e3225180b00000000000000000000000000000000000013202c3946535f6c7986898989898989898989898989898989898989898989898989898989898989898989898989898989898376695d5043362a1d100000020b141c23282c2e2f3032333435363737342f34393b3c3c3c3c3c3c3d3e4043474b5158616a747e8995a0aca69b8f83776b5f53473b2e22160900111e2a3744505d6976838f9ca8ac9f9286796d6054473b2f241a141110101113171f2b3743505c6975828e9ba8ada094877a6e6155483b2f221509000000000000000000000000000000030e1a26323e4955616d7985909ca8a99d9185797171717171717171717171717171717171717176828e9aa6ab9f93877b6f63584c4034281c110500000000000000000000000000000007121e2a36424e5965717d8994a0aca79b8f83777575757575757575757575757575757575757575757575757575818c98a4aea2968a7e73675b4f43382c2014080000000000000000010d18242f3a45505a656f78828b949ca4aba49d97928d89868381807e8895a093867e808183868a8e93989ea5a79f978f867c72685d53483c31261a0e03000013202c3946535f6c798693a0ac9f9286796c5f5246392c1f1300121e2b3743505b666d6f6f6f6f6f6f6f6d665b4f43372a1e110000000000000000000f1c2835424f5b6875828f9084776a5d5044372a1d1104000000000000000000000000000000000000000000000000121f2c3845525f6b7885929faca89b8e8275685b4e4235281b0f0200000000000000000000000000000000000009141e29343e49535e68737d88939da3998e83796e64594f44392f2e3b4854616e7b8894a1ada09386796d6053463a2d201514120e09030000000000000a1623303d495663707c8484848484848480777069625c5753514f4e4d4e5053575c636a737c858f99a4afa89d92867b6f63574b3f33271b0f0200000000000000000000000000000000000c1824303c47535f6b76828e99a5a5998d81756a5e52473b2f24180d01000000000000000000000000000013202c3946535f6c798693a0ab9e9285786b5e5865727e8c98a5a6998c7f7265594c3f3226190c0000000000000000030f1b27333f4b57636e7a87939faba2968a7e7266594d4b57636f7b87939faba195897d7165594d4135291d11050000000000000000000000000000000000000000020c17212c36414b56606b75808a959fa6a09da0a79f948a80756a60554b41362c21170c0200000000000000000000000000000000000000000000000000000000000000000007121c2630383f434646464646464646433e372e251a10050000000000000000000000000000000000000000000000000000000000000000000000000f1b2835424e5b6875828686868686867e7165584b3e3225180b00000000000000000000000000000000000013202c3946535f6c7986939696969696969696969696969696969696969696969696969696969696969696969696969696908376695d5043362a1d10000000020a11181c20212324252627282a2a2a2e373f45484949494949494a4b4d4f53575c636a737c86909ba6a99f94897e73675b4f43372b1f1206000f1c2835424e5b6773808c99a5aea195887c7064584c41362c25211e1d1d1e202329313c47535f6b7884919daaaa9d9185786c5f53463a2d201407000000000000000000000000000000000a15212d3945505c6874808c97a3aea2968a7e7266656565656565656565656565656565656f7b87939faba69a8e82766b5f53473b2f24180c00000000000000000000000000000000020e1925313d4954606c7884909ba7aba0948882828282828282828282828282828282828282828282828282828285919da9a99d92867a6e62564a3f33271b0f03000000000000000007121e2935404b56616c76818b949da6aaa19a938c86827d7a7775737b8895a09386797374777a7d82878d949ba3a9a1988e847a6f64594e42372b1f1307000013202c3946535f6c798693a0ac9f9286796c5f5246392c1f13000f1b27333f4a545c6162626262626262615c54493e33271b0f0000000000000000000f1c2835424f5b6875828f9084776a5d5044372a1d1104000000000000000000000000000000000000000000000000121f2c3845525f6b7885929faca89b8e8275685b4e4235281b0f02000000000000000000000000000000000000020d17222c37414c57616c76818b96a0a0958b80756b60564b41362e3b4854616e7b8894a1ada09386796d6053463a2d201308050200000000000000000916222f3c4955626f7b8890909090909089827a736d6863605d5b5a5a5b5d5f63686e747c858e97a1abaca1978c81756a5e53473b2f23170b00000000000000000000000000000000000008131f2b37424e5a65717d8994a0a99e92867a6f63584c4035291e1207000000000000000000000000000013202c3946535f6c798693a0ab9e9285786b5e5865727e8c98a5a6998c7f7265594c3f3226190c000000000000000007131f2b37434f5b67737f8b97a3aa9e92867a6e62554947535f6b77838f9ba7a5998d8175695d51463a2e22160a000000000000000000000000000000000000000000050f1a242f39444e59636e78838d98a2acaaaca2978d82786d63594e44392f241a0f0500000000000000000000000000000000000000000000000000000000000000000000000b141e262d3337393939393939393937322c251c1309000000000000000000000000000000000000000000000000000000000000000000000000000e1b2835414e5a677379797979797979797064574b3e3125180b00000000000000000000000000000000000013202c3946535f6c798693a0a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a29d908376695d5043362a1d100000000000060c101315161718191b1c1d202c364049505555555555565657585a5c5f63686e747c858e98a2aaa1988d83786d61564a3f33271b0f03000d1a26333f4b5864707c8995a0aca4988c8074685d52483e37312d2b2a2a2a2c2f343b434d58646f7b8894a0aca59a8d8175695c5044372b1e12050000000000000000000000000000000005111c2834404c57636f7b87939eaaa69a8f83776b5f585858585858585858585858585c6874808c97a3ada195897d72665a4e42362b1f130700000000000000000000000000000000000915202c3844505c67737f8b97a2aea499918e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8f97a2ada4998d8175695d52463a2e22160b0000000000000000000b17232f3a46515d68737e88939da6aaa1988f88817b76716d6a686f7b8895a09386796d686a6d71767b8289919aa4aaa0968b81756a5f53473c3024170b000013202c3946535f6c798693a0ac9f9286796c5f5246392c1f13000b17222d38424a51555555555555555554514a41382d22160b0000000000000000000f1c2835424f5b6875828f9084776a5d5044372a1d1104000000000000000000000000000000000000000000000000121f2c3845525f6b7885929faca89b8e8275685b4e4235281b0f020000000000000000000000000000000000000006101b25303a454f5a646f7a848f99a49c92877d72675d52483d333b4854616e7b8894a1ada09386796d6053463a2d201307000000000000000000000815222e3b4855616e7b88949d9d9d9d9b938c857e79746f6c6a68676768696c6f73797f868e97a0a9ada49a8f857a6f64594d42362a1f1307000000000000000000000000000000000000030e1a26323d4955606c77838f9aa6a3978b8074685d51463a2f23180d020000000000000000000000000013202c3946535f6c798693a0ab9e9285786b5e5865727e8c98a5a6998c7f7265594c3f3226190c00000000000000000b17232f3b47535f6b77838f9ba7a69a8e8276695d5145434e5b67737e8b97a3aa9e92867a6e62564a3e32261a0e0200000000000000000000000000000000000000000008131d28323d47525c67717b86929eabb6aa9d91867b71665c51473c32271d1308000000000000000000000000000000000000000000000000000000000000000000000000020c141c22272b2c2c2c2c2c2c2c2c2a26211a130a01000000000000000000000000000000000000000000000000000000000000000000000000000d1926323f4b5661696c6c6c6c6c6c6c6c685e53483c2f23160a00000000000000000000000000000000000013202c3946535f6c798693a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a09d908376695d5043362a1d1000000000000000040708090a0c0d0e0f1925313d48525b61626262626263636466686b6f73797f868e97a0a9a1988f867b71665b50453a2e22160b00000a17232f3c4854606c7884909ba6a89c91857a6e645a5048423d3937363637393b40454c555f6a75808c98a4aca095897d7165594d4034281b0f0300000000000000000000000000000000000c18232f3b47535e6a76828e9aa5ab9f93877b6f64584c4b4b4b4b4b4b4b4b4b4b55616c7884909ca8a89c9085796d6155493e32261a0e02000000000000000000000000000000000004101c27333f4b57626e7a86929ea9aba29c9b9b9b9b9b9b9b9b9b9b9b9b9b9b9b9b9b9b9b9b9b9b9b9b9b9b9b9ca1a9aba094887c7064594d4135291d1206000000000000000004101c28343f4b57626e79848f9aa4aca2988f867d76706a65615e626f7b8895a09386796d605e61656a70778088929ca6a89d92877b7064584c4034281b0f030013202c3946535f6c798693a0ac9f9286796c5f5246392c1f130006111c2630384045484848484848484848453f382f261b11050000000000000000000f1c2835424f5b6875828f9084776a5d5044372a1d1104000000000000000000000000000000000000000000000000121f2c3845525f6b7885929faca89b8e8275685b4e4235281b0f02000000000000000000000000000000000000000009141e29333e48535d68727d88929da3998e84796f645a4f443a3b4854616e7b8894a1ada09386796d6053463a2d201307000000000000000000000714212e3a4754616d7a8794a0aaaaaaa59e97908a84807c79767574747476787b80848a9198a0a9ada49b92887e73685e53473c31251a0e02000000000000000000000000000000000000000915212d38444f5b66727d8995a0a89c9185796e62574b4035291e13070000000000000000000000000013202c3946535f6c798693a0ab9e9285786b5e5865727e8c98a5a6998c7f7265594c3f3226190c0000000000000004101c2834404c5864707c8894a0aca2968a7d7265594d413e4a56626e7a87939faba2968a7e72665a4e43372b1f13070000000000000000000000000000000000000000000a141f29343e49535d68727d87929eabb1aa9d91867b71665c51473c32281d130800000000000000000000000000000000000000000000000000000000000000000000000000020a11171b1e202020202020201f1e1a1610090100000000000000000000000000000000000000000000000000000000000000000000000000000a16222e3a454f585e5f5f5f5f5f5f5f5f5c564d42372b1f130700000000000000000000000000000000000013202c3946535f6c7986939393939393939393939393939393939393939393939393939393939393939393939393939393908376695d5043362a1d100000000000000000000000000000000f1c2835414d59646d6f6f6f6f6f6f70717375787b80848a9198a0a59e978f867d746a5f554a3f34281d110600000713202c3844505c67737e8a95a0aaa1968b80766c625a534d49464443434445484b50575e67717b86919da8a59a8f84786d6155493d3124180c00000000000000000000000000000000000007131f2a36424e5a65717d8995a1aca4988c8074685c50453e3e3e3e3e3e3e424d5965717d8995a1ada3988c8074685c5045392d211509000000000000000000000000000000000000000b17232e3a46525e6975818d99a5b0ada9a8a8a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a8a8a8acb2a79b8f83776c6054483c3025190d0100000000000000000814202c3844505c68737f8a96a1aca59a90867c746c645e595555626f7b8895a09386796d6053555a5f666d76808a949faba3988c8074685c5044372b1e12060013202c3946535f6c798693a0ac9f9286796c5f5246392c1f1300000a141e262e34393b3c3c3c3c3c3c3c3b39342e261d140a000000000000000000000f1c2835424f5b6875828f9084776a5d5044372a1d1104000000000000000000000000000000000000000000000000121f2c3845525f6b7885929faca89b8e8275685b4e4235281b0f020000000000000000000000000000000000000000020c17212c37414c56616b76818b96a0a0968b81766b61564c413b4854616e7b8894a1ada09386796d6053463a2d201307000000000000000000000713202d3a4653606c798693a0acb0a7a09ea09b95908c888583828181818285878b90959ca2aaaba39b928980766c61574c41362b201409000000000000000000000000000000000000000004101c27333e4a56616d78848f9aa6a2968a7f73685c51463b2f24190e0200000000000000000000000013202c3946535f6c798693a0ab9e9285786b5e5865727e8c98a5a6998c7f7265594c3f3226190c000000000000000814202c3844505c6874808c98a4aa9e9286796d6155493d3a46525e6a76828e9aa7a79b8f83776b5f53473b2f23170b000000000000000000000000000000000000000007111c26303b45505a656f7a848f99a4a6a4a6a2978d83786e63594e44392f241a10050000000000000000000000000000000000000000000000000000000000000000000000000000060b0f121313131313131313110e0a050000000000000000000000000000000000000000000000000000000000000000000000000000000006121d28333d464d515353535353535353504b443b30261a0f0300000000000000000000000000000000000013202c3946535f6c7986868686868686868686868686868686868686868686868686868686868686868686868686868686868376695d5043362a1d10000000000000000000000000000000101d2a3743505d69767c7c7c7c7c7c7d7e808284878b90969ca29f99938c857d746b62584e43382e23170c010000030f1c28333f4b57626d78838e98a2a79c92887e756c655e595552515050515254575c62697079838d98a3a79e93897e73675c5044382d201408000000000000000000000000000000000000020e1a26313d4955616c7884909ca7a89c9185796d6155493d32323232323a46525e6a76828e99a5aa9f93877b6f63584c4034281c11050000000000000000000000000000000000000006121e2a35414d5965707c8894a0acb7afa59e9a9a9a9a9a9a9a9a9a9a9a9a9a9a9a9a9a9a9a9a9a9a9a9ca3acb7aea2968a7e73675b4f43372c2014080000000000000000000b1724303c4854606c7884909ca7aa9e93897e746a625a534d4955626f7b8895a09386796d6053494e545b646e78838e9aa6a99d9184786c5f53473a2e2115080013202c3946535f6c798693a0ac9f9286796c5f5246392c1f130000020c141c23292d2f2f2f2f2f2f2f2f2f2c29231c140b02000000000000000000000f1c2835424f5b6875828f9084776a5d5044372a1d1104000000000000000000000000000000000000020302010000121f2c3845525f6b7885929faca89b8e8275685b4e4235281b0f0200000000000000000000000000000000000000000005101a252f3a444f5a646f79848e99a39d92887d72685d53483e4854616e7b8894a1ada09386796d6053463a2d2013070000000000000000000006131f2c3945525f6c7885929faba99e9591959ca19c989492908e8e8e8e8f9194979ca1a7aca7a099918980776d645a50453b30251a0e030000000000000000000000000000000000000000000b16222d3944505b67727e8995a0a79c9085796e62574c41352a1f140900000000000000000000000013202c3946535f6c798693a0ab9e9285786b5e5865727e8c98a5a6998c7f7265594c3f3226190c000000000000000c1824303c4854606c7884909ca8a69a8e8275695d51453936424e5a66727e8a96a2ab9f93877b6f63574b3f34281c1004000000000000000000000000000000000000040e18232d38424d57626c76818b96a0a29a979ba39f948a80756a60564b41362c21170c02000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000010c17212b343b4145464646464646464644403a32291f140900000000000000000000000000000000000000131f2c3946525f6b7679797979797979797979797979797979797979797979797979797979797979797979797979797979797974685c4f4336291d10000000000000000000000000000000111d2a3744505d6a778489898989898a8b8c8e9194979c9d9a97938e88827b736b625950463c31271c1106000000000b17232f3a45515c67727c869099a2a49990877e766f6a65615f5d5d5d5d5f6164686d737a838b959fa79f958c82776c61564b3f34281c1004000000000000000000000000000000000000000915212d3844505c6873808b97a3ada195897d71665a4e42362a2527333f4b57636e7a86929eaaa69a8e82766a5f53473b2f23180c0000000000000000000000000000000000000000010d1925313c4854606c77838f9ba7b3a99e938e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e919ba6b2a99d91867a6e62564a3f33271b0f030000000000000000000e1b2733404c5864717d8995a1aca4998d82776c62585048424855626f7b8895a09386796d605346434a525c66727d8995a2ada094887b6f6256493c3023170a0013202c3946535f6c798693a0ac9f9286796c5f5246392c1f13000000020b12181d20222222222222222222201d18120a0200000000000000000000000f1c2835424f5b6875828f9084776a5d5044372a1d110400000000000000000000000000000003080c0e0f0f0d0a06121f2c3845525f6b7885929faca89b8e8275685b4e4235281b0f020000000000000000000000000000000000000000000009131e28333d48525d67727d87929ca4998f84796f645a4f454854616e7b8894a1ada09386796d6053463a2d2013070000000000000000000004121e2b3845515e6b7784919eaba6998d848b92989ea3a19e9c9b9a9a9b9c9ea0a4a8aaa6a19b958e877f776e655c52483e33291e13080000000000000000000000000000000000000000000005111d28343f4a56616d78838f9aa5a1968a7f73685d52473b30251a0f04000000000000000000000013202c3946535f6c798693a0ab9e9285786b5e5865727e8c98a5a6998c7f7265594c3f3226190c00000000000005111d2935414d5965717d8995a1ada2968a7d7165594d4135323e4a56626e7a86929eaaa4988c8074685c5044382c2014080000000000000000000000000000000000000b15202a353f4a545e69737e88939da59a908a919ba69c91877c72675d52483e33291e140900000000000000000000000000000000000000000000000000000000000000000000000000000000050a0c0e0e0e0e0e0e0e0e0e0e0c08040000000000000000000000000000000000000000000000000000000000000000000000000000050f19222a303538393939393939393938342f2820170d0200000000000000000000000000000000000000111e2a37434f5a646b6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6a62584c4034271b0e000000000000000000000000000000111d2a3744505d6a778490969696969697999b9d9a9593918e8b87827d777069615950473e342a20150b000000000006121e2934404b55606a747e879099a0a2999088817b75716e6b6a69696a6b6d7074787e858c959da49d958d837a70655b50453a2e23170b000000000000000000000000000000000000000004101c28343f4b57636f7a86929eaaa69a8e82766a5e52473b2f232c38444f5b67737f8b97a3ada195897d71665a4e42362b1f13070000000000000000000000000000000000000000000814202c38434f5b67737e8a96a2aea79a8d81818181818181818181818181818181818181818181818a97a4b0a4988d8175695d51463a2e22160a00000000000000000000111d2a36434f5c6874818d999fa29f93887c70655a50463e3c4855626f7b8895a09386796d6053463a404a55616d7986929faba3978a7d7164574b3e3125180b0013202c3946535f6c798693a0ac9f9286796c5f5246392c1f13000000070f171d222628282828282828282826221d170f0700000000000000000000000f1c2835424f5b6875828f9084776a5d5044372a1d11040000000000000000000000000000080e14181b1c1c1a1611121f2c3845525f6b7885929faca89b8e8275685b4e4235281b0f0200000000000000000000000000000000000000000000010c17212c36414b56606b75808b95a0a0968b81766c61564c4854616e7b8894a1ada09386796d6053463a2d2013070000000000000000000001111e2a3744515d6a7784909daaa6998c8080878d93989c9fa2a4a6a7a7a7a6a5a3a19d9a95908a847d756d655c534a40362c22170d0200000000000000000000000000000000000000000000000b17222e3945505b67727d89949fa79c90857a6e63584d42362b20150a000000000000000000000013202c3946535f6c798693a0ab9e9285786b5e5865727e8c98a5a6998c7f7265594c3f3226190c0000000000000915212d3945515d6975818d99a5aa9e9285796d6155493d312d3a46525e6a76828e9aa6a89c9084786c6054483d3125190d010000000000000000000000000000000008121d27313c46515b66707b85909aa59e93897f8a949fa3988e84796f645a4f453a30251b110600000000000000000000000000000000000000000000000000000000000000000000000000050b1116191b1b1b1b1b1b1b1b1b1a18140f0902000000000000000000000000000000000000000000000000000000000000000000000000000710181f25292c2c2c2c2c2c2c2c2c2b28231d160e0500000000000000000000000000000000000000000e1a26323e48525a5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5e5950463b3024180c000000000000000000000000000000111d2a3744505d6a7784909da2a2a3a3a4a5a79e92888684827e7b76716b655e574f473e352c22180e030000000000010c18232e39444e58626c757e878f969ca19a938c86817d7a7877767677787a7c80848a90979e9f99938b837a71685e54493e33281d12060000000000000000000000000000000000000000000b17232f3b46525e6a76828d99a5aa9e93877b6f63574b3f3328303c4854606c7884909ba7a89c9085796d6155493d32261a0e02000000000000000000000000000000000000000000040f1b27333f4a56626e7a85919da9a89c9085797474747474747474747474747474747474747475828d99a5aba094887c7064594d4135291d120600000000000000000000131f2c3945525e6b77848d909295988f83776b5f54493e343c4855626f7b8895a09386796d6053463a3945515e6a7784909da9a5988c7e7265594c3f3226190c0013202c3946535f6c798693a0ac9f9286796c5f5246392c1f13000006101921282e32353535353535353534322e2821190f06000000000000000000000f1c2835424f5b6875828f9084776a5d5044372a1d1104000000000000000000000000010a1219202427292826221d161f2c3845525f6b7885929faca89b8e8275685b4e4235281b0f020000000000000000000000000000000000000000000000050f1a242f3a444f59646e79848e99a39d92887d73685e534954616e7b8894a1ada09386796d6053463a2d2013070000000000000000000000101d2a3643505d697683909ca9a69a8d81757c82878c90939698999a9a9a99989794918e89847f79726b635b534a41382e241a100500000000000000000000000000000000000000000000000006111d28343f4a56616c77838e99a4a1968b8074695e53483d32271c11060000000000000000000013202c3946535f6c798693a0ab9e9285786b5e5865727e8c98a5a6998c7f7265594c3f3226190c0000000000020e1a26323d4955616d7985919da9a69a8d8175695d5145392d2935414d5966727e8a96a2aca195897d7165594d4135291d1105000000000000000000000000000000040f19242e39434e58636d77828c97a1a2978c8278838e98a3a0958b81766b61574c42372d22180d030000000000000000000000000000000000000000000000000000000000000000000000060f161d22252728282828282828282724201a140c0300000000000000000000000000000000000000000000000000000000000000000000000000060d14191d1f20202020202020201f1c18120c040000000000000000000000000000000000000000000a16212c3740484f52535353535353535353535353535353535353535353535353535353535353535353535353535353535353524e473e342a1f1307000000000000000000000000000000111d2a3744505d6a7784909da4a4a4a5a6a8a99d9084807d7975706a66605a544d453d352c231a10060000000000000007121d27323c47505a636c757d848b91969a9d97928d8a8785848383848586898c90959b9b98938e88817971685f564c42372d22170c0100000000000000000000000000000000000000000006121e2a36424d5965717d8894a0aca3978b8073685c5044382c35414d5965707c8894a0aca3978c8074685c5044392d21150900000000000000000000000000000000000000000000000b16222e3a46515d6975818c98a4ada195897d7167676767676767676767676767676767676e7a86929eaaa79b8f83776b6054483c3024190d010000000000000000000013202c3946535f6c787e818386898b8b7f73675b4f43372f3c4855626f7b8895a09386796d6053463a36434f5c6975828f9ca9a6998c807366594c403326190d0013202c3946535f6c798693a0ac9f9286796c5f5246392c1f1300020d18222b333a3f4142424242424242413e3a332b21180d020000000000000000000f1c2835424f5b6875828f9084776a5d5044372a1d110400000000000000000000000009131c242b30343635322e28201f2c3845525f6b7885929faca89b8e8275685b4e4235281b0f0200000000000000000000000000000000000000000000000008131d28323d48525d67727c87919ca49a8f857a6f655a5054616e7b8894a1ada09386796d6053463a2d20130700000000000000000000000f1c2936424f5c6975828f9ca8a79a8e817470767b808386898b8c8d8e8d8d8c8a8885827d79736e676059514941382f261c120800000000000000000000000000000000000000000000000000000c17222e3944505b66717d88939ea79c91867a6f64594e43382d22170c0100000000000000000013202c3946535f6c798693a0ab9e9285786b5e5865727e8c98a5a6998c7f7265594c3f3226190c000000000006121e2a36424e5a66727e8a96a2aea295897d7165594d41352925313d4955616d7986929eaaa5998d8175695d5145392e22160a0000000000000000000000000000010c16212b36404b555f6a747f89949ea69b90857b717c87919ca79d92887d73685e53493f342a1f150a00000000000000000000000000000000000000000000000000000000000000000000050f1821282e3234343434343434343433302c251e150c020000000000000000000000000000000000000000000000000000000000000000000000000002080d1012131313131313131312100c07010000000000000000000000000000000000000000000005101a252e373e434646464646464646464646464646464646464646464646464646464646464646464646464646464646464645423c352c22180d02000000000000000000000000000000111d2a3744505d6a7784909797979798999b9da0968f8c8985817b767069615951483f362c22170d0200000000000000000b16202b353e48515a636b727980858a8d90949c9996939190909090919395989c96928f8c87837d766f675f564d443a30261b100500000000000000000000000000000000000000000000020e1925313d4854606c78848f9ba7a89c9084786c6054493d313a46515d6975818d99a5aa9e93877b6f63574c4034281c1005000000000000000000000000000000000000000000000006121d2935414d5864707c88939faba59a8e82766a5e5a5a5a5a5a5a5a5a5a5a5a5a5a5b67737f8b97a2aea2968a7e73675b4f43372b2014080000000000000000000000121e2b3744505c666e7174777a7c7f827c6f63574a3e322f3c4855626f7b8895a09386796d6053463a36434f5c6976828f9ca9a6998c807366594c403326190d0013202c3946535f6c798693a0ac9f9286796c5f5246392c1f130008141f2a343d454b4e4e4e4e4e4e4e4e4e4a453d33291f13080000000000000000000f1c2835424f5b6875828f9084776a5d5044372a1d1104000000000000000000000006111b252e363c4042423e39322b232c3845525f6b7885929faca89b8e8275685b4e4235281b0f02000000000000000000000000000000000000000000000000010c16212b36404b55606b75808a959fa1968c81766c615754616e7b8894a1ada09386796d6053463a2d20130700000000000000000000000f1b2835424e5b6874818e9ba7a89b8f8275686a6f73777a7c7e80818181807f7d7b7875716d68625c564f473f372f261d140a00000000000000000000000000000000000000000000000000000006111d28333e4a55606b76828d98a3a2978c81766b5f54493e33281e130800000000000000000013202c3946535f6c798693a0ab9e9285786b5e5865727e8c98a5a6998c7f7265594c3f3226190c00000000000a16222e3a46525e6a76828e9aa6aa9d9185796d6155493d3125212d3945515d6975818d99a5a99e92867a6e62564a3e32261a0e020000000000000000000000000009131e28323d47525c67717c86919ba59f94897e746a75808b95a0a49a8f857a70655b50463b31271c12070000000000000000000000000000000000000000000000000000000000000000020d17212a32393e414141414141414141403d3730271e130900000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000009131c252c3237393939393939393939393939393939393939393939393939393939393939393939393939393939393939393936312b231a110600000000000000000000000000000000111d2a3744505d6a77848a8a8a8a8a8b8c8e9194989c9995918c87817a736b635a51483e34291f14090000000000000000040e19232c363f48515961686e74797d81848a96a3a2a09e9d9d9c9d9ea0a2a5988c8583807b77716b655d564d443b32281e14090000000000000000000000000000000000000000000000000914202c3844505b67737f8b96a2aca095897d7165594d41353e4a56626e7a86929da9a69a8e82766a5f53473b2f23180c000000000000000000000000000000000000000000000000010d1924303c48545f6b77838f9aa6aa9e92877a6f63574d4d4d4d4d4d4d4d4d4d4d54606c77848f9ba7a99d91857a6e62564a3e33271b0f0300000000000000000000000f1b28333f4a545d6265686a6d707375756c6054473b2e2f3c4855626f7b8895a09386796d6053463a3945515e6a7784909daaa5988c7f7265594c3f3226190c0013202c3946535f6c798693a0ac9f9286796c5f5246392c1f13000d1925303b464f565a5b5b5b5b5b5b5b5a564f453b3024190d0000000000000000000f1c2835424f5b6875828f9084776a5d5044372a1d110400000000000000000000000c17222d3740474d4f4e4a443c352e2c3845525f6b7885929faca89b8e8275685b4e4235281b0f0200000000000000000000000000000000000000000000000000040f1a242f39444e59636e78838e98a39d93887e73695e54616e7b8894a1ada09386796d6053463a2d20130700000000000000000000000e1b2734414d5a6774818d9aa7a99c8f8376695f63676b6d7072737374747372716f6c6965615c57514b443d352d251d140b02000000000000000000000000000000000000000000000000000000000b17222d38444f5a65707b86919ca89d92877c71665b50453a2f24190e03000000000000000013202c3946535f6c798693a0ab9e9285786b5e5865727e8c98a5a6998c7f7265594c3f3226190c00000000030f1b27333f4b57636e7a87939eaaa5998d8175695d5145392d201d2935414d5965717d8995a1ada2968a7e72665a4e42362b1f130700000000000000000000000005101a252f3a444f59636e78838d98a2a3988d82786d636e79848e99a4a1968c82776d62584d43382e23190f040000000000000000000000000000000000000000000000000000000000000008131e29333c444a4d4e4e4e4e4e4e4e4e4d48413930251a0f03000000000000000000000000000000000000000000000000000000000000000205080a0c0d0e0f1010100f0f0e0c0b090604010000000000000000000000000000000000000000000000000000010a131a21262a2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2a25201911080000000000000000000000000000000000111d2a3743505d6a767d7d7d7d7d7d7e808285888c91979e9d98928c857d756c635a50453b30251a0f03000000000000000007111a242e37414a535b636a71777c81848b96a3a5a2a09f9e9e9fa0a2a4a5988c84817d78726c655d554d443b322920160c0200000000000000000000000000000000000000000000000004101c27333f4b56626e7a86929da9a5998d81756a5e52463a434f5b67727e8a96a2ada195897d71665a4e42362a1f13070000000000000000000000000000000000000000000000000008141f2b37434f5b66727e8a96a1ada3978b7f73675c504441414141414141414d5864707c8894a0aca4988d8175695d51463a2e22160a0000000000000000000000000b17232e38424b5256585b5e6163666969635a4f44382b2f3c4855626f7b8895a09386796d6053463a424b56616d7a86929faba4978a7e7164584b3e3225180b0013202c3946535f6c798693a0ac9f9286796c5f5246392c1f1300101d2935414d586167686868686868686761574c4135291c100000000000000000000f1c2835424f5b6875828f9084776a5d5044372a1d11040000000000000000000004111d28343f4952595c5b564e473f38313845525f6b7885929faca89b8e8275685b4e4235281b0f02000000000000000000000000000000000000000000000000000008121d27323d47525c67717c87919ca59a8f857a70655b616e7b8894a1ada09386796d6053463a2d20130700000000000000000000000d1a2733404d596673808c99a6aa9d9083776a5d575b5e6163656667676766656462605d5955504b464039322b231b130b02000000000000000000000000000000000000000000000000000000000005111c27323d49545f6a75808b96a1a4998d82776c61564b40362b20150a000000000000000013202c3946535f6c798693a0ab9e9285786b5e5865727e8c98a5a6998c7f7265594c3f3226190c0000000007131f2b37434f5b67737f8b97a3ada195897d7165594d4135281c1925313d4955616d7985919da9a69b8f83776b5f53473b2f23170b0000000000000000000000020d17222c37414b56606b75808a959fa69c91867b71665d67727d88929da89e93897e74695f554a40352b20160b010000000000000000000000000000000000000000000000000000000000000c1824303b454e565a5b5b5b5b5b5b5b5b59534b41372b2014080000000000000000000000000000000000000000000000000000000003070b0e111416181a1b1c1c1c1c1c1b1a19171513100d090501000000000000000000000000000000000000000000000000010910161a1e1f2020202020202020202020202020202020202020202020202020202020202020202020202020202020201f1d1a140e070000000000000000000000000000000102030f1c2935424e5a656e707070707071727375787c81868c939ba49e978f877e756b61574c42372b20140900000000000000000b16202b353f49535c656d757c82888d91949c9c999694929292929395989b9d94908d89847e776f675f564c42382e23190e03000000000000000000000000000000000000000000000000000b17222e3a46525d6975818d99a4aa9e92867a6e62564b3f48535f6b77838f9ba7a89c9084786d6155493d31261a0e0200000000000000000000000000000000000000000000000000030f1b27323e4a56616d7985919da8a79c9084786c6054483d34343434343945515d6975818d99a4aba094887c7064584d4135291d110600000000000000000000000006111c2730394046494c4f5154575a5c5d5951483e33272f3c4855626f7b8895a09386796d605346464c545d67727e8a96a2aea195887c6f6356493d3023170a0013202c3946535f6c798693a0ac9f9286796c5f5246392c1f1300121f2c3845515e69737575757575757573695d5145382b1f120000000000000000000f1c2835424f5b6875828f9084776a5d5044372a1d1104000000000000000000000814202d3945505b6468676059514a423b3845525f6b7885929faca89b8e8275685b4e4235281b0f020000000000000000000000000000000000000000000000000000010b16202b35404b55606a75808a949fa1978c82776c62616e7b8894a1ada09386796d6053463a2d20130700000000000000000000000c1926323f4c5965727e8c98a5aa9e9184776b5e514f52545758595a5a5a5a59575553504d4945403a352e282119120a01000000000000000000000000000000000000000000000000000000000000000b16212c37424d58636f7a85909ba59f94897e73685d52473c31261c11060000000000000013202c3946535f6c798693a0ab9e9285786b5e5865727e8c98a5a6998c7f7265594c3f3226190c000000000b17232f3b47535f6b77838f9ba7a99d9185796d6155493d30241814202c3845515d6975818d99a5ab9f93877b6f63574b3f33271c1004000000000000000000000a141f29333e48535d68727d87929ca6a0958a80746a5f56606b76818c96a1a59b90867b71665c51473d32281d1308000000000000000000000000000000000000000000000000000000000000101c2935414c5760666767676767676767655d53483c3024180b0000000000000000000000000000000000000000000000000000040a0e13171b1e2123252728292929292928272624221f1c1916120d0803000000000000000000000000000000000000000000000000050a0e111313131313131313131313131313131313131313131313131313131313131313131313131313131313131313110d0903000000000000000000000003070a0c0d0e0f10111926323d49535c626363636363646567696c70757b8289929ba4a19991877d73695e53483c3125190e0200000000000006111c27323d47515b656e777f878e94999d9b96918c89878685858586888b8f93999d99958f89817971685e544a40352a1f14090000000000000000000000000000000000000000000000000006121e2935414d5964707c8894a0aba2978b7f73675b4f434c5864707c88949faba3978b8074685c5044392d2115090000000000000000000000000000000000000000000000000000000a16222d3945515d6974808c98a4aca094897c7165594d4135292727323e4a56626e7985919da9a79b8f83776b5f54483c3024180d01000000000000000000000000000a151e272f353a3d404245484a4d50504d473f362c222f3c4855626f7b8895a09386796d60534d51575e666f79848f9aa6aa9e9286796d6054473b2e2215080013202c3946535f6c798693a0ac9f9286796c5f5246392c1f130013202c3946535f6c7982828282828282796c5f5246392c1f13000000000000000005101c2835424f5b6875828f9084776a5d5044372a1d1106000000000000000000000916232f3c4955616d75726a635c544d453e45525f6b7885929faca89b8e8275685b4e4235281b0f02000000000000000000000000000000000000000000000000000000040f19242e39434e58636e78838d98a29e93897e7469616e7b8894a1ada09386796d6053463a2d20130700000000000000000000000b1825323e4b5865717e8b98a4ab9e9285786b5f524545484a4c4d4d4d4d4d4c4b494744413d39342f29231d160f0700000000000000000000000000000000000000000000000000000000000000000004101b26313c47525d68737e89949fa59a8f84796e63594e43382d22170d0200000000000013202c3946535f6c798693a0ab9e9285786b5e5865727e8c98a5a6998c7f7265594c3f3226190c00000004101c2834404c5864707b8894a0aca5998d8175695d5145382c2014101c2834404c5864707c8995a1ada3988c8074685c5044382c20140800000000000000000006111b26303b45505a646f79848e99a3a3998e83786e63584f5a646f7a858f9aa5a2978d83786e63594e44392f241a10050000000000000000000000000000000000000000000000000000000000121f2b3844515d697274747474747474746f64594c4033271a0d000000000000000000000000000000000000000000000000040a10151a1f23272a2d2f3233343536363636353432312e2c2926221d19140e08020000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000030a0f141718191a1b1c1d1e212c37414a5156575757575757585a5c60646970778089929ca7a3998f857a6f64594d42362a1e12060000000000000c17222e39444e59636d77808991989fa098908a85807d7a797878797a7c7e83888e949ca09a938b837a70665c51473c31251a0f03000000000000000000000000000000000000000000000000010d1925303c4854606b77838f9ba7a79b8f83776c605448515d6974818c98a4aa9e93877b6f63574c4034281c100400000000000000000000000000000000000000000000000000000005111d2934404c58646f7b87939faba5998d8175695d52463a2e222b37434f5a66727e8a96a2aea2968a7e72675b4f43372b2014080000000000000000000000000000030c151d242a2e303336393b3e414343413c362d24222f3c4855626f7b8895a09386796d6054595d62686f78818b95a0aba59a8e8276695d5145382c1f13060013202c3946535f6c798693a0ac9f9286796c5f5246392c1f130013202c3946535f6c79868e8e8e8e8e86796c5f5246392c1f1300000000000000000b16212c38434f5b6875828f9084776a5d5044392e23170c010000000000000000000a1723303d4a5663707d7c756d665f57504845525f6b7885929faca89b8e8275685b4e4235281b0f020000000000000000000000000000000000000000000000000000000007121d27323c47515c66717b86919ba59a90857b70666e7b8894a1ada09386796d6053463a2d20130700000000000000000000000b1724313e4a5764707d8a97a4ac9f9286796c5f5346393b3d3f40414141403f3e3c3a3734312d28231e18120b0400000000000000000000000000000000000000000000000000000000000000000000000914202b36414c57626c77828d98a3a1968b80756a5f544a3f34291e130900000000000013202c3946535f6c798693a0ab9e9285786b5e5865727e8c98a5a6998c7f7265594c3f3226190c0000000814202c3844505c6874808c98a4ada195897d7165594d4034281c100c1824303c4854606c7884919ca9a89c9084786c6054483c3024190d0100000000000000030e18232d38424c57616c76818b96a0a79d92877c72675c5148535e68737e89939ea99f948a80756a60564b41362c21170c0200000000000000000000000000000000000000000000000000000000131f2c3946525f6c79818181818181818174675a4d4134271a0e0100000000000000000000000000000000000000000001080f151b21262b2f3336393c3e4041424343434242403f3d3b3835322e29251f1a140d0600000000000000000000000000000000000000000000000000000000000000000306090b0c0e0f0f1010100f0e0d0b09070401000000000000000000000000000000000000000000000000000000000000050d141b202325262728292a2b2c2c2f384046494a4a4a4a4a4b4c4d5054585e656d76808b95a0aba1978c81756a5e52463a2e221609000000000005111c28343f4a55606b758089929ba3a0978e867f7974706e6c6b6b6c6d6f72777c838a939ca59d958c82786e63584d42372b201408000000000000000000000000000000000000000000000000000814202c37434f5b67727e8a96a2aca094887c7064584c55616d7985919da9a59a8e82766a5e53473b2f23170c00000000000000000000000000000000000000000000000000000000000c1824303b47535f6b76828e9aa6a99e92867a6e62564a3e3327303b47535f6b77838f9ba6a99d9185796e62564a3e33271b0f03000000000000000000000000000000030b13191e212427292c2f3234363735312b25292d303c4855626f7b8895a09386796d606165696e737a818a939da7aa9f94897d7165594d4135291c10040013202c3946535f6c798693a0ac9f9286796c5f5246392c1f130013202c3946535f6c7986939b9b9b9286796c5f5246392c1f130000000000000006111c27323e49545f6a76828f9084776c61554a3f34291d12070000000000000000000a1723303d4a5663707d877f787069615a534b525f6b7885929faca89b8e8275685b4e4235281b0f0200000000000000000000000000000000000000000000000000000000000b15202a35404a555f6a747f8a949fa2978c82776d6e7b8894a1ada09386796d6053463a2d20130700000000000000000000000a1723303d4a5663707c8996a3ada09386796d6053473a2f313233343434343331302e2b2825211c18120d0b0b0a080500000000000000000000000000000003070a0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0e19242f3a45505b66717c87919ca79c91877c71665b50453b30251a0f05000000000013202c3946535f6c798693a0ab9e9285786b5e5865727e8c98a5a6998c7f7265594c3f3226190c0000000c1824303c4854606c7884909ca8a99d9185796d6155483c3024180c0814202c3844505c6874808c98a4aca094897c7165594d4135291d1105000000000000000b151f2a343f49545e69737e88939da7a0968b80756b60554a414c57616c77828d97a2a69c91877c72675d52483e33291e140900000000000000000000000000000000000000000000000000000000131f2c3946525f6c79868e8e8e8e8e8e8174675a4d4134271a0e010000000000000000000000000000000000000000040b131a20262c32373b3f4346494b4d4e4f4f4f4f4f4e4d4c4a4745423e3a35302b251f1811090200000000000000000000000000000000000000000000000000000004080c0f121517191a1c1c1c1c1c1c1b19181613110d0a06010000000000000000000000000000000000000000000000000000040e171f262c303233343536373839393835353a3d3d3d3d3d3d3e3f4144484d545c646e79848f9ba6a89d92867a6f63564a3e3225190d00000000000915212d3944505b67727c87919ba4a2988e857c746d6864615f5f5e5f6063666b7178818a949ea79e948a80756a5e53483c3024190d00000000000000000000000000000000000000000000000000030f1b27333e4a56626e7985919da9a4988d8175695d515a66727e8a96a1ada195897d71655a4e42362a1e1307000000000000000000000000000000000000000000000000000000000007131f2b37424e5a66727d8995a1ada2968a7e73675b4f43372b34404c5864707b87939faba4988c8175695d51453a2e22160a000000000000000000000000000000000001080d1215171a1d202225282a2a28282d3135393d404855626f7b8895a09386796d696d7175797e858c939ca5aca3988e83786c6155493d3125190d000013202c3946535f6c798693a0ac9f9286796c5f5246392c1f130013202c3946535f6c798693a0a89f9286796c5f5246392c1f13000000000000000c17222d38444f5a65717c879294897d72675c50453a2f23180d0200000000000000000a1723303d4a5663707d8a8a827b736c645d56525f6b7885929faca89b8e8275685b4e4235281b0f020000000000000000000000000000000000000000000000000000000000040e19232e38434d58636d78828d97a29e94897e746e7b8894a1ada09386796d6053463a2d20130700000000000000000000000916232f3c4955626f7c8895a2ada194877a6e6154473b2e24262727272727262523211f1c18181818181818181714100b05000000000000000000000002090f13161818181818181818181818181818181818181e29343f4a545f6a75808b95a0a3988d82776d62574c41372c21160c010000000013202c3946535f6c798693a0ab9e9285786b5e5865727e8c98a5a6998c7f7265594c3f3226190c000005111d2935414d5965717d8995a1ada5998d8175695d5144382c20140804101c2834404c5864707c8894a0aca5998d8175695d5145392d21150a00000000000007121c27313c46515b65707a858f9aa4a49a8f84796e64594e443a45505b65707b86909ba6a3998e84796f645a4f453a30261b1106000000000000000000000000000000000000000000000000000000131f2c3946525f6c7986929b9b9b9a8e8174675a4d4134271a0e0100000000000000000000000000000000000000050e151d242b32383d42474b4f525557595b5b5c5c5c5c5b5a585654514e4a46413c36302a231b130b03000000000000000000000000000000000000000000000000060b1014181c1f2224262728292929292827262422201d1a16120d08030000000000000000000000000000000000000000000000010c16202931373c3e3f4041424344454645413b33303030303031313234373c424a525d67737e8a96a2aea3978b7f73665a4e4135281c0f03000000010d1a26323e4a55616d78838e99a3a79b90867c726a625c58555352525254565a60666f78828d98a3a69c91867b7064584d4135291d1104000000000000000000000000000000000000000000000000000a16222e3a45515d6975818c98a4a99d9185796d62565f6b76828e9aa6a89c9084786d6155493d31261a0e020000000000000000000000000000000000000000000000000000000000030e1a26323e4955616d7985909ca8a79b8f83776b5f54483c303945515c6874808c98a4ab9f94887c7064584c4135291d1106000000000000000000000000000000000000000105080b0e101316191d23292f34393d4145494c5055626f7b8895a09386797275797d81858a90969da5aca39a91877c71665b5044382d211509000013202c3946535f6c798693a0ac9f9286796c5f5246392c1f130013202c3946535f6c798693a0ac9f9286796c5f5246392c1f1300000000000006121d28333f4a55606b77828d989a8f83786d62564b40352a1e130800000000000000000a1723303d4a5663707d8a948d857e766f6760595f6b7885929faca89b8e8275685b4e4235281b0f0200000000000000000000000000000000000000000000000000000000000007121c27313c46515b66717b86909ba59b90867b707b8894a1ada09386796d6053463a2d20130700000000000000000000000815222e3b4855616e7b8894a1aea195887b6e6255483c2f25252525252525252525252525252525252525252524211c160f07000000000000000000050d141a1f2325252525252525252525252525252525252525252d38434e59636e79848f99a49f94897e73695e53483d33281d12080000000013202c3946535f6c798693a0ab9e9285786b5e5865727e8c98a5a6998c7f7265594c3f3226190c00000915212d3945515d6975818d99a5ada195897d7165584c4034281c1004000b17242f3c4854606c7884909ca8a99d9186796e62564a3e32261a0e0200000000040f19242e38434d58626d77828c97a1a89d93887d72685d52473d333e49545f69747f8a949faaa0958b81766c61574c42372d22180e030000000000000000000000000000000000000000000000000000131f2c3946525f6c7986929fa8a79a8e8174675a4d4134271a0e01000000000000000000000000000000000000060f171f272f363d43494e53575b5f62646667686969696968676563605d5a56524d47413b342d251d150c03000000000000000000000000000000000000000000060c11171c2024282b2e3032343536363636353433312f2c2926221e19140e090200000000000000000000000000000000000000000007121d28323b42484b4c4d4e4f50515253514c453c3228242424242426282b3038414b56626e7a86929faba79b8f8276695d5044372b1e110500000005111d2936424e5a66727d8994a0aaa1968a7f746a6058514c4846454546474a4f555d66707b87939eaaa3988c8175695d5145392d2014080000000000000000000000000000000000000000000000000006111d2935414c5864707c87939faba2968a7e72665a636f7b87939faba3978b8074685c5044392d211509000000000000000000000000000000000000000000000000000000000000000a15212d3945505c6874808c97a3aba094887c7064584c40353d4955616d7985919da8a69b8f83776b5f54483c3024180d010000000000000000000000000000000000000000000000020a121a21282e343a4044494d5155595c60636f7b8895a093867b7e8285898d91969ba1a8a9a19a91897f756a60554a3f33281c1004000013202c3946535f6c798693a0ac9f9286796c5f5246392c1f130013202c3946535f6c798693a0ac9f9286796c5f5246392c1f130000000000010d18232e3945505b66717d88939ea095897e73685c51463b3024190e03000000000000000a1723303d4a5663707d8a96978f888179726a635f6b7885929faca89b8e8275685b4e4235281b0f02000000000000000000000000000000000000000000000000000000000000000a15202a353f4a545f69747e89949ea2978d82777b8894a1ada09386796d6053463a2d20130700000000000000000000000814212e3a4754616d7a8794a0ada296897c6f6256493c32323232323232323232323232323232323232323232302d282119110700000000000000040e171f262b2f313232323232323232323232323232323232323232323c47525d67727d88929da59b90857a6f655a4f443a2f24190f0400000013202c3946535f6c798693a0ab9e9285786b5e5865727e8c98a5a6998c7f7265594c3f3226190c00020e1925313d4955616d7985919da9a99d9185796c6054483c3024180c000007131f2b37434f5b6874808c98a4aea2968a7e72665a4e42362a1e1207000000010c16202b35404a555f6a747e89949ea8a1968c81766b61564b41362d37424d58626d78838e98a3a79d92887d73685e53493f342a1f150a0000000000000000000000000000000000000000000000000000131f2c3946525f6c7986929faca79a8e8174675a4d4134271a0e010000000000000000000000000000000000060f182129313941484e545a5f63686b6e70727475757676757473726f6d6a66625d58534d463f372f271e150c03000000000000000000000000000000000000030a11171d23282c3034383b3d3f41424243434242413f3e3b3936322e2a25201a140d0600000000000000000000000000000000000000000c18242f3a444d5458595a5b5c5d5e5f5f5d574e44392e2217171718191b1f262f3a45525e6a7783909da9aa9e9185786b5f5246392c2013060000000714202d3945525e6a76828e9aa6a99d9185796e62584e46403c393838393b3e434b545f6a76828e9aa7a99d9186796d6155493c3024170b00000000000000000000000000000000000000000000000000010d1824303c48535f6b77838e9aa6a69a8e82766a5e6874808c98a3aa9e92877b6f63574b4034281c10040000000000000000000000000000000000000000000000000000000000000005111c2834404c57636f7b87929eaaa4988c8175695d514539424e5a66727d8995a1ada2968a7e72665b4f43372b1f14080000000000000000000000000000000000000000000000020b141c242b323940464b5055595d6165686c6f727b8895a19489878a8e9195999da2a7aaa49e97908880766d63594e43382d22170b00000013202c3946535f6c798693a0ac9f9286796c5f5246392c1f130013202c3946535f6c798693a0ac9f9286796c5f5246392c1f13000000000007131e29343f4b56616c78838e99a4a69b8f84796e63574c41362a1f1409000000000000000a1723303d4a5663707d8a96a19a928b847c756d666b7885929faca89b8e8275685b4e4235281b0f0200000000000000000000000000000000000000000000000000000000000000030e18232d38434d58626d77828c97a29e93887d7b8894a1ada09386796d6053463a2d20130700000000000000000000000713202d3a4653606d798693a0aca3968a7d7063574a3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3d39332b23190f050000000000010c16202930373c3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e404b56616b76818b96a1a1978c81766b61564b40362b20160b00000013202c3946535f6c798693a0ab9e9285786b5e5865727e8c98a5a6998c7f7265594c3f3226190c0006121e2a36424e5a66727e8a96a2aea5998d8175685c5044382c2014080000030f1b27333f4b57636f7b8894a0aca69a8e83766b5f53473b2f23170b00000008131d28323d47525c66717b86909ba5a59a90857a6f655a4f443a2f26313b46515c66717c87919ca7a49a8f857a70655b50463b31271c110600000000000000000000000000000000000000000000000000131f2c3946525f6c7986929faca79a8e8174675a4d4134271a0e0100000000000000000000000000000000040e18212a333b434b52595f656b6f74777a7d7f81828283838281807e7c7976726e69645e575049413930271e150b0100000000000000000000000000000000050d141b22282e33383d414447494c4d4e4f4f4f4f4f4e4c4a4845423e3a35302b251f18110902000000000000000000000000000000000003101c2834404b565f6466676769696b6b6c6960564a3e3225190c0a0b0c0f141d2936424f5c6875828f9ba8aca093867a6d6054473a2d2114070000000a16232f3c4855616e7a86939faba6998d8175685d51463c35302d2c2c2c2e3239424e5a66727e8b97a4aea2968a7d7165584c3f33261a0d000000000000000000000000000000000000000000000000000008141f2b37434f5a66727e8a95a1ab9f93877b6f636c7884909ca8a59a8e82766a5e52473b2f23170b0000000000000000000000000000000000000000000000000000000000000000000c18232f3b47535e6a76828e9aa5a99d9185796d61564a3e47535e6a76828e9aa6a99d9185796e62564a3e32271b0f0300000000000000000000000000000000000000000000020b141d262e363d444b51575c6165696d7175787b7f828996a29b9493979a9ea1a5a9a7a39e99938c857e766d645b51473c32271c110600000013202c3946535f6c798693a0ac9f9286796c5f5246392c1f130013202c3946535f6c798693a0ac9f9286796c5f5246392c1f1300000000020d19242f3a45515c67727e89949fabaca1968a7f74695d52473c31251a0f040000000000000a1723303d4a5663707d8a969da49d958e877f78706b7885929faca89b8e8275685b4e4235281b0f02000000000000000000000000000000000000000000000000000000000000000007111c26313b46505b66707b85909aa59a8f837b8894a1ada09386796d6053463a2d201307000000000000000000000006131f2c3946525f6c7985929faca4978a7d7164574b4b4b4b4b4b4b4b4b4b4b4b4b4b4b4b4b4b4b4b4b4b4b4b49443d352b21160b000000000007121d28323b42484b4b4b4b4b4b4b4b4b4b4b4b4b4b4b4b4b4b4b4b4b4b4b4b4b4f5a646f7a858f9aa49d93887d72675d52473d32271d1207000013202c3946535f6c798693a0a09e9285786b5e5865727e8c98a0a0998c7f7265594c3f3226190c000a16222e3a46525e6a76828e9aa6aca195897c7064584c4034281c10040000000b17232f3b47535f6b77838f9ba7ab9f93877b6f63574b3f33271b0f0300010d19242f39444e59636e78838d98a2a99e93897e73685e53483d33281f2a343f4a55606a75808b95a0aba1968c82776d62584d43382e23170c00000000000000000000000000000000000000000000000000131f2c3946525f6c7986929faca79a8e8174675a4d4134271a0e01000000000000000000000000000000020c16202a333c454d555d646b71767b8084878a8c8d8e8f908f8f8e8d8b8986827e7a756f69625b534b423930271d1309000000000000000000000000000000070f171f262d33393f44494d505356585a5b5c5c5c5c5b5a595754524e4a46413c36302a231b140c030000000000000000000000000000000005121f2b3844515d6870727374757677787972665a4d4134271b0e020000030f1b2835414e5b6874818e9ba8aea194877b6e6154483b2e2115080000000c1825323e4b5764707d8a96a2afa3978a7e7165584c40352a23201f1f202227313d4a56636f7c8895a2aea6998d8174675b4e4135281c0f0200000000000000000000000000000000000000000000000000030f1b26323e4a56616d7985919ca8a3978b7f7367717c8995a1aca195897d71655a4e42362a1e130700000000000000000000000000000000000000000000000000000000000000000007131f2a36424e5a65717d8995a0aca2968a7e72665a4e424b57636f7b87939faaa4988c8175695d5145392e22160a00000000000000000000000000000000000000000000000a141d262f3840484f565c62686d7176797d8185888b8e929ba6a5a0a0a3a6aaa7a39f9b97928d87817b746c645b52493f352b20150b0000000013202c3946535f6c798693a0ac9f9286796c5f5246392c1f130013202c3946535f6c798693a0ac9f9286796c5f5246392c1f130000000008141f2a35404c57626d78848f9aa5b1b2a79c90857a6f63584d42372b20150a0000000000000a1723303d495663707c848b939aa1a098918a827b737885929faca89b8e8275685b4e4235281b0f020000000000000000000000000000000000000000000000000000000000000000000a151f2a343f49545e69747e89939ea0958a7e8894a1ada09386796d6053463a2d201307000000000000000000000005121f2b3845515e6b7884919eaba4988b7e716558585858585858585858585858585858585858585858585858554f473d33271c1004000000000c18232f3a444d535758585858585858585858585858585858585858585858585858585d68737d88939da4998f84796e64594e44392e23180c000013202c3946535f6c7986939393939285786b5e5865727e8c939393938c7f7265594c3f3226190c000e1a27333f4a56626e7a87929ea0a09d9185786c6054483c3024180c0000000007131f2b37434f5b67737f8b97a0a0a0978b8073675c5044382c2014070005111e2a35414b56606b75808a959fa0a0978d82776c61574c41372c2118232e38434e59636e79848e99a0a09e93897e74695f554a3f34281c1004000000000000000000000000000000000000000000000000131f2c3946525f6c7986929faca79a8e8174675a4d4134271a0e010000000000000000000000000000000a141e28323c454e575f676f757c82878c909396989a9b9c9c9c9c9b999795928f8a86817a746d655d544b42392f251b100600000000000000000000000000071019212931383e454a5055595d60636567686969696968676563615e5a56524d47423b342d251e150d040000000000000000000000000000000613202c3946535f6c797f8081828384858275685c4f43362a1e130c0a090a101c2935424f5b6875828e9ba8aea194887b6e6154483b2e2115080000000d1a2633404c5966727f8c98a5aea295887c6f6256493d3024181412121316222e3b4754616d7a8793a0ada89c8f8276695c5043362a1d100400000000000000000000000000000000000000000000000000000a16212d3945515d6874808c98a3a79b8f83776b75818d99a5a89c9084786c6155493d31251a0e02000000000000000000000000000000000000000000000000000000000000000000020e1a26313d4955616c7884909ca7a69a8e83776b5f5347505c6874808b97a3ab9f93887c7064584c4135291d11050000000000000000000000000000000000000000000008121c262f38414a525960676d73787d82868a8d9194989b9ea4adaeaaa7a4a19e9a97938f8b87827c767069625a524940372d23190f040000000013202c3946535f6c798693a0ac9f9286796c5f5246392c1f130013202c3946535f6c798693a0ac9f9286796c5f5246392c1f13000000030e1a25303b46525d68737e8a95a0abb7b8ada2968b8075695e53483d31261b100500000000000916222f3b4854606a727a81888f979ea39b948d857e7885929faca89b8e8275685b4e4235281b0f02000000000000000000000000000000000000000000000000000000000000000000030d18232d38424d57626c77828c97a19b90848894a1ada09386796d6053463a2d201307000000000000000000000002111e2b3744515d6a7784909daaa5988c7f72656565656565656565656565656565656565656565656565656561594f44382c20140800000000101c2834404b565e64656565656565656565656565656565656565656565656565656565656c76818b96a1a0968b80756b60554b4034281c10040013202c3946535f6c7986868686868685786b5e5865727e8686868686867f7265594c3f3226190c00111e2a36434f5b67737f8b93939393938d8174685c5044382c20140800000000020e1b27333f4b57636f7b8793939393939084786c6054483c3023170a000814212d3a46525d67727c87919393939390867b70655b50453a30251a111c27323c47525d67727d88929393939390867b71665c5045382c1f1306000000000000000000000000000000000000000000000000131f2c3946525f6c7986929faca79a8e8174675a4d4134271a0e01000000000000000000000000000006111b26303a444e576069717980878d93989ca0a3a4a2a09f9f9f9fa1a3a4a19e9b96918c857e776f665d544b41372c22170c01000000000000000000000007101a222b333b424950565b6065696c6f71737475767675757472706d6a67625e59534d463f372f271f160d03000000000000000000000000000006121f2c3845525e6b78848d8e8f90919084776b5f52463a2f251d1816161719202c3844515d6a7683909ca9ada194877a6d6154473b2e2114080000000e1b2734414d5a6774818d9aa7aea194887b6e6154483b2e22150805050713202d3946535f6c798693a0acaa9d9084776a5d5144372a1e1104000000000000000000000000000000000000000000000000000005111d2834404c58636f7b87939faaa094887b6f7985919da9a3978b8074685c5044382d21150900000000000000000000000000000000000000000000000000000000000000000000000915212d3844505c68737f8b97a3ab9f93877b6f63584c55606c7884909ca8a69b8f83776b5f53483c3024180c01000000000000000000000000000000000000000000050f1a242e38414b535c646b72797f84898e9296999da1a4a7aaafaba39e9b9895918e8b87837f7b76706b655e57504840372e251b1107000000000013202c3946535f6c798693a0ac9f9286796c5f5246392c1f130013202c3946535f6c798693a0ac9f9286796c5f5246392c1f130000000914202b36414d58636e7985909ba6b2bdbeb3a89c91867b7064594e43382c21160b000000000007131f2c38434e5861686f767d858c939ba29e9790888185929faca89b8e8275685b4e4235281b0f020000000000000000000000000000000000000000000000000000000000000000000006111b26303b46505b65707a858f9aa1968e9099a4ada09386796d6053463a2d201307000000000000000000000000101d2a3643505d697683909ca9a6998d807371717171717171717171717171717171717171717171717171716b6055483c3023160a00000000121f2b3844505c68707171717171717171717171717171717171717171717171717171717171717a848f99a59c92877c72675c5145382c1f130600131f2c3946525f6b7679797979797979756a5e58647079797979797979797165584b3f3225190c00121f2c3945525f6b7783868686868686867c7064584c4034281c100400000000000a16222e3a47535f6b7783868686868686867c7064574b3e3125180b000916232f3c4955626e7984868686868686867f74695f54493e34291e130a15202b35404b56606b76818686868686868683786d6054473b2e211408000000000000000000000000000000000000000000000000131f2c3946525f6c7986929faca79a8e8174675a4d4134271a0e0100000000000000000000000000020d18222d38424c566069727b838b92999ea4a5a09b989593929292939496999ca0a5a29d97908981786f665d53493e34291e130700000000000000000000061019232c343d454d545b61676c7175797c7e80818283838282817e7c7a76736e69645e585149413931281f150c020000000000000000000000000004111d2a3743505c6975828e9a9c9c9d93877b6f63574c41372e2825232324262a323d4854606c7985929eabac9f9386796d6053473a2d2014070000000e1b2834414e5b6774818e9ba8aea194877a6d6154473b2e21140802020613202c3946535f6c7986929facab9e9184776b5e5144382b1e11050000000000000000000000000000000000000000000000000000000c18242f3b47535f6b76828e9aa6a4988c80737d8995a1aa9e92877b6f63574b3f34281c1004000000000000000000000000000000000000000000000000000000000000000000000004101c28343f4b57636e7a86929eaaa3988c8074685c505965717d8995a1aca2968a7e72665b4f43372b1f1408000000000000000000000000000000000000000000000b16212c36404a535d656e757d848a90959a9ea2a6a8a5a19fa0a5a499928e8b8885827e7b77736f6a655f5a534d463e362e251c130900000000000013202c3946535f6c798693a0ac9f9286796c5f5246392c1f130013202c3946535f6c798693a0ac9f9286796c5f5246392c1f130000040f1b26313c47535e6974808b96a1acb8c3c4b9aea3978c81766a5f54493e32271c110600000000030f1b27323d464f565d656c737a828990979ea19a938b8b94a0ada89b8e8275685b4e4235281b0f0200000000000000000000000000000000000000000000000000000000000000000000000a141f29343e49535e69737e88939d9f9b9ca2abada09386796d6053463a2d201307000000000000000000000000101c2936424f5c6975828f9ca8a79a8d817e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7d7064574a3e3124170b0000000013202c3946535f6c797e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e8996a2a3998e83786d6054473a2d21140700111e2a37434f5a646b6c6c6c6c6c6c6c6b6359545f686c6c6c6c6c6c6c6c685f54483c3024170b00121f2c3845525e6b767979797979797979776c6054483c3024180c00000000000006121e2a36424e5a66727979797979797979797064574b3e3125180b000916232f3c4955626e787979797979797979776d62584d42372d22170d040e19242f39444f5a646f787979797979797979776d6054473a2e211408000000000000000000000000000000000000000000000000131f2c3946525f6c7986929faca79a8e8174675a4d4134271a0e010000000000000000000000000007131e29343f49545e68727b848d959da4a7a09a948f8c89878585858687898c90959aa0a7a29b938b82786f655a50453a2f24190d020000000000000000040e18222b353e464f575f666c72787d8185888b8d8e8f90908f8e8d8b8986837f7a756f69625b534b433a31271e140a00000000000000000000000000010f1b2834414d5a66737f8b97a4a9a3978b7f73685d52494039343130303032363c444e5965707c8995a1adaa9d9184786b5e5245392c1f13060000000e1b2834414e5b6774818e9aa7aea194887b6e6155483b2f2216100f0f1014212d3a4753606d798693a0acaa9e9184776b5e5144382b1e110500000000000000000000000000000000000000000000000000000007131f2b36424e5a66717d8995a1a89c908477818d99a5a5998e82766a5e52473b2f23170b000000000000000000000000000000000000000000000000000000000000000000000000000b17232f3b46525e6a76818d99a5a89c9085786d61555e6a76828d99a5a99d9185796d62564a3e32261b0f0300000000000000000000000000000000000000000006121d28333d48525c656f7780878e959ba1a6a9a4a09c989592949ca09488827f7c7975726e6b67635e59544e48423b342c241c130a0100000000000013202c3946535f6c798693a0ac9f9286796c5f5246392c1f130013202c3946535f6c798693a0ac9f9286796c5f5246392c1f1300000a15212c37424d59646f7a86919ca7b2bec6c6bfb4a99d92877c70655a4f44382d22170c00000000000a15202b343d444c535a616870777e868d949ba29d97969ca6b1a89b8e8275685b4e4235281b0f020000000000000000000000000000000000000000000000000000000000000000000000020d18222d37424c57616c76818c96a1a7a8acb4ada09386796d6053463a2d2013070000000000000000000000000f1b2835424e5b6875818e9ba8a99d928b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8a7d7164574a3e3124170b0000000013202c3946535f6c79868b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8f99a4aaa094877a6d6154473a2e211407000e1a26323e48525a5f5f5f5f5f5f5f5f5e59514d565d5f5f5f5f5f5f5f5f5d564d43382c20140800111d2a36424e5a646b6c6c6c6c6c6c6c6c6b655b5044382c201407000000000000020e1a26323e4a5660696c6c6c6c6c6c6c6c6c685e53483c2f23160a000814212d3a46525d666c6c6c6c6c6c6c6c6c6c655b51463b31261b10060007121d28333d48535e676c6c6c6c6c6c6c6c6c6c655b5044382c1f1306000000000000000000000000000000000000000000000000131f2c3946525f6c7986929faca79a8e8174675a4d4134271a0e01000000000000000000000000020d19242f3a45505b66707a848d969fa7a69d968f89847f7c7a797878797b7d8084898f969da5a59d948a81766c61574c41352a1e130700000000000000000b15202a343d475058616970777e84898d919597999b9c9c9c9c9b9a9895938f8b86817a746d655d554c433930261c1107000000000000000000000000000c1925323e4a57636f7b87939faba79c9085796f645b524b45413e3d3c3d3f42464d56606b76818d99a5b1a79a8e8275695c5043372a1d11040000000e1a2734414d5a6773808d99a6afa296897c7063574a3e32261f1c1b1b1c1f24303c4955626e7b8794a1ada99d9083766a5d5044372a1d1104000000000000000000000000000000000000000000000000000000020e1a26323d4955616d7884909ca8a094877b85919da9a195897d7165594e42362a1e12070000000000000000000000000000000000000000000000000000000000000000000000000006121e2a36414d5965717c8894a0aca195897d716559636e7a86929eaaa4988c8175695d5145392e22160a000000000000000000000000000000000000000000000c17232e39444f5a646e7781899299a0a7a8a29d9894908c89868a96a0938679736f6c6966625e5b57524e48433d373029221a120a010000000000000013202c3946535f6c798693a0ac9f9286796c5f5246392c1f130013202c3946535f6c798693a0ac9f9286796c5f5246392c1f130005101b27323d48545f6a75818c97a2adb9b9b9b9b9b9afa4988d82766b60554a3f33281d120600000000040f19222b333a414850575e656c747b828991989fa3a3a7aeb5a89b8e8275685b4e4235281b0f0200000000000000000000000000000000000000000000000000000000000000000000000006101b25303b45505a656f7a858f9aa4afb8b9ada09386796d6053463a2d2013070000000000000000000000000e1b2734414d5a6774818d9aa7aea49c98989898989898989898989898989898989898989898989898978a7d7164574a3e3124170b0000000013202c3946535f6c7986939898989898989898989898989898989898989898989898989898989898989aa1aaaea194877a6d6154473a2e211407000a16212c3740484f5253535353535353524e48444b515353535353535353514c443b31261b1004000e1a26323d48525a5f5f5f5f5f5f5f5f5f5f5b53493f33281c0f03000000000000000a16222e39444e575d5f5f5f5f5f5f5f5f5f5c564d42372b1f13070005111d2935404b545c5f5f5f5f5f5f5f5f5f5f5b534a3f342a1f14090000010b16212c36414c555c5f5f5f5f5f5f5f5f5f5f5b534a3f34281c1004000000000000000000000000000000000000000000000000131f2c3946525f6c7986929faca79a8e8174675a4d4134271a0e0100000000000000000000000007121e2a35414c57626d77828c969fa8a69d948b847d7873706d6c6b6b6c6e7074787d848b939ba4a69c93887e73685d52463b2f23180c0000000000000007121d27313c464f59626a737b82898f95999da1a4a2a09e9e9e9e9fa1a4a29f9b97928c867e776f675e554b42382e23190e030000000000000000000000000916222e3b47535f6b77838f9aa6aca1968b81766d645c56514d4a49494a4b4e52585f68727c87929ea9aea3978b7e7266594d4134281b0f020000000d1926333f4c5965727e8b98a4b0a4988b7e72665a4e4238302b292828292b2f36414c5864717d8a96a3afa79b8e8275685c4f4236291c1003000000000000000000000000000000000000000000000000000000000915212d3944505c6874808b97a3a3978b7f8995a1a89c9084786c6155493d31251a0e0200000000000000000000000000000000000000000000000000000000000000000000000000020d1925313d4854606c78848f9ba7a59a8e82766a5e67737f8b97a3ab9f93887c7064584c4035291d110500000000000000000000000000000000000000000005111d28343f4b56616b76808a939ba3aba49d97918c8884807c7b8895a09386796d63605d5956524e4b46423d37322c251f18100800000000000000000013202c3946535f6c798693a0ac9f9286796c5f5246392c1f130013202c3946535f6c798693a0ac9f9286796c5f5246392c1f13000a16222d38434e5a65707b87929da8acacacacacacacacaa9e93887d71665b5045392e23170c000000000007101921282f373e454c535b626970787f868d959ca3aaacaca89b8e8275685b4e4235281b0f020000000000000000000000000000000000000000000000000000000000000000000000000009141e29333e49535e68737d88929da8acacaca09386796d6053463a2d2013070000000000000000000000000d1a2733404d596673808c99a6acaca7a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a4978a7d7164574a3e3124170b0000000013202c3946535f6c798693a0a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a6abacaca194877a6d6154473a2e2114070005101a252e373e43464646464646464645423d3a4044464646464646464644403a32291f150a00000a15212c3640484f525353535353535353524f4941372d22170b000000000000000005111d28323c454c51535353535353535353504b443b30261a0f0300010d19242f39424a50535353535353535353524f4941382d23180d03000000050f1a25303a434b50535353535353535353524f4941382d23170c00000000000000000000000000000000000000000000000000131f2c3946525f6c7986929faca79a8e8174675a4d4134271a0e010000000000000000000000000c17232f3b46525d68737e89949ea8a79d948a8179726c6763615f5f5f606164686c72798189929ca6a49a8f85796e63574c4034281c10040000000000020e19232e39434d57616b747c858d949aa0a5a29d999593919191919395979b9fa5a29d979089817970675d544a3f352a20150a00000000000000000000000006121e2b37434f5b66727e89949faaa79d92887f766e67615d5957565656585a5e6369717a848e99a4afa99e92867a6e62564a3e3125190c000000000b1824313d4a56636f7c8895a1ada79b8e82766a5f544a413c3836353536373b4048525d6975818d99a5b0a4988b7f73665a4d4034271b0e010000000000000000000000000000000000000000000000000000000005101c2834404b57636f7b87929ea79b8f878d99a5a3978b8073685c5044382c2115090000000000000000000000000000000000000000000000000000000000000000000000000000000914202c38444f5b67737e8b96a2aa9e92867a6e626b77848f9ba7a69a8f83776b5f53483c3024180c010000000000000000000000000000000000000000000915212d3945505c67727d88929ba5aba29a928c86817c7774707b8895a09386796d6054504d4a46423e3a36312c26211a1614110e0a050000000000000013202c3946535f6c798693a0ac9f9286796c5f5246392c1f130013202c3946535f6c798693a0ac9f9286796c5f5246392c1f13000f1b27333e4954606b76818d98a0a0a0a0a0a0a0a0a0a0a0a0998e83776c61564b3f34281c10040000000000070f161e252c333b424950575f666d747c838a9199a0a0a0a09b8e8275685b4e4235281b0f0200000000000000000000000000000000000000000000000000000000000000000000000000020d17222c37414c56616c76818b96a0a0a0a0a09386796d6053463a2d2013070000000000000000000000000c1926333f4c5965727f8c98a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0978a7d7164574a3e3124170b0000000013202c3946535f6c798693a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a094877a6d6154473a2e211407000009131c252c323739393939393939393936322f3438393939393939393938342f2820170d030000040f1a242e363d4346464646464646464646433e372f261b11060000000000000000000b16212a333b414546464646464646464644403a32291f140900000007121d2730383f4446464646464646464646433e382f261c1106000000000008131e2831393f4446464646464646464646433e382f261c110600000000000000000000000000000000000000000000000000131f2c3946525f6c7986929faca79a8e8174675a4d4134271a0e01000000000000000000000004101c2834404b57636e7a85909ba5aba0968b82786f68615b57545252525355585c61676f77808a949ea29f968b8074685c5145382c1f1306000000000008141f2a35404b555f69737d868f979ea5a49d97918c89868584848586888b8f9499a0a7a29b938b82796f665c51473c31261b10040000000000000000000000020e1a26323e4a56616d78838e99a3ada49a91888079726d69666463636364676a6e747b838c96a0aaada2978c81756a5e52463a2e221509000000000915222e3b4754606c7885919da8ab9f93877b70665c534c48444242424244474b525a646f7a85919da9aca094887c6f63574a3e3225190c0000000000000000000000000000000000000000000000000000000000000c17232f3b47525e6a76828e99a5a19893969fa99e92867a6f63574b3f34281c100400000000000000000000000000000000000000000000000000000000000000000000000000000004101b27333f4b56626e7a86929da9a2968a7e7266707c8894a0aca2968a7e72665a4f43372b1f1308000000000000000000000000000000000000000000000d1925313d4a55616d78848f99a4aca2999088817a75706b676f7b8895a09386796d605346413d3a363230302e2c2a272522201e1a16100902000000000013202c3946535f6c798693a0ac9f9286796c5f5246392c1f130013202c3946535f6c798693a0ac9f9286796c5f5246392c1f1300111e2a37434f5b66717c8793939393939393939393939393939393897d72675c5045382c1f1306000000000000050c131a222930373e464d545b636a717880878e93939393938e8275685b4e4235281b0f02000000000000000000000000000000000000000000000000000000000000000000000000000005101b25303a454f5a646f79848f93939393939386796d6053463a2d2013070000000000000000000000000c1825323e4b5865717e8b939393939393939393939393939393939393939393939393939393939393938a7d7164574a3e3124170b0000000013202c3946535f6c798693939393939393939393939393939393939393939393939393939393939393939393939393877a6d6154473a2e2114070000010a131a21262a2c2c2c2c2c2c2c2c2c2a2624282b2c2c2c2c2c2c2c2c2b28241e160e050000000008121c242c32363939393939393939393937332d251d140a00000000000000000000050f18212930353839393939393939393938342f2820170d02000000010b151e272e33373939393939393939393937332d261d140a000000000000020c161f272e34383939393939393939393937332d261d140a0000000000000000000000000000000000000000000000000000131f2c3946525f6c7986929faca79a8e8174675a4d4134271a0e0100000000000000000000000814202c3844505c68747f8b96a1aca59a8f84796f665d564f4b4846454546484b50565d656e78828d9896928f8b85796d6054473b2e21140800000000020e1925303b47515c67717b858f98a1a9a29a928b85817c7a78777778797b7e83888e959da6a59d948b81786d63584e43372c21150a0000000000000000000000000a16222e3945505b66717c87919ba4aca39a928a847e797572706f6f707173767a80868d959ea8aea49b90867b7064594d41362a1e12050000000006131f2b3844505c6874808c97a3aea3988d82776e655e5854514f4e4e4f5153575d646c76808b96a2ada69b8f84786c5f53473b2f22160900000000000000000000000000000000000000000000000000000000060b0e131e2a36424e5965717d8994a0aaa3a0a2a8a5998e82766a5e52463b2f23170f0b060000000000000000000000000000000000000000000000000000000000000000000000000000000b17222e3a46525d6975818d99a4a79b8f83766a74808c98a4a99d9185796d61564a3e32261b0f0300000000000000000000000000000000000000000003101c2935414d5a66727e8a95a0aba59b90877e766f69645f626f7b8895a09386796d6053463a3130363b3d3d3b383634312f2d2a27221b140b020000000013202c3946535f6c798693a0ac9f9286796c5f5246392c1f130013202c3946535f6c798693a0ac9f9286796c5f5246392c1f130013202c3946525f6b778286868686868686868686868686868686868684786d6054473b2e21140800000000000000010910171e252d343b424a51585f676e757c848686868686868275685b4e4235281b0f0200000000000000000000000000000000000000000000000000000000000000000000000000000009131e28333e48535d68727d8686868686868686796d6053463a2d2013070000000000000000000000000b1824313e4a5764717d8686868686868686868686868686868686868686868686868686868686868686867d7164574a3e3124170b0000000013202c3946535f6c798686868686868686868686868686868686868686868686868686868686868686868686868686867a6d6154473a2e211407000000010910161a1e1f202020202020201f1e1a181c1f20202020202020201f1c18130c050000000000000a121a21262a2c2c2c2c2c2c2c2c2c2c2a27221b130b020000000000000000000000060f171f24292c2c2c2c2c2c2c2c2c2c2b28231d160e050000000000030c151c23282b2c2c2c2c2c2c2c2c2c2c2b27221b140b0200000000000000040d151d23282b2c2c2c2c2c2c2c2c2c2c2b27221b140b020000000000000000000000000000000000000000000000000000131f2c3946525f6c7986929faca79a8e8174675a4d4134271a0e0100000000000000000000000c1824303c4955616d7884909ca7ab9f94887d72685e544c443f3b3938393a3c3f444b535c66707b878d8a86837f7c776d6054473a2e2114080000000008131f2b36414d58636e78838d97a1aaa3999088817a75706d6b6a6a6b6d6f72777d848b949da6a69d938a7f756a5f54493d32261b0f03000000000000000000000005111d28343f4a55606a757f89929ba3aba49c958f8985827f7d7c7c7d7e8082868b91989fa8aca49c92897e74695e53483c3125190d0100000000030f1c2834404c58646f7b86919ca6a99e948980776f6964605d5c5b5b5c5d6063686e767e88929da8aa9f958a7e73675b4f43372b1f13060000000000000000000000000000000000000000000000000000030a11171b1d1e25313d4955606c7884909ca0a0a0a0a0a095897d7165594e42362a1e1e1b17110b030000000000000000000000000000000000000000000000000000000000000000000000000006121e2935414d5964707c8894a0ab9f93877b6f7884909ca8a4988c8174695d5145392d22160a0000000000000000000000000000000000000000000006121f2b3844515d6a76828e9aa6aa9f94897e756c645e5855626f7b8895a09386796d6053463a323a42474a4a474543403e3b3936322d251d140a0000000013202c3946535f6c798693a0ac9f9286796c5f5246392c1f130013202c3946535f6c798693a0ac9f9286796c5f5246392c1f1300131f2c3946525f6b767979797979797979797979797979797979797979776d6054473a2e211408000000000000000000050d141b222931383f464e555c636a72797979797979797973675a4e4135281b0e02000000000000000000000000000000000000000000000000000000000000000000000000000000020c17212c36414c56616b767979797979797979766b5f5346392d2013060000000000000000000000000a1723303d4a56636f78797979797979797979797979797979797979797979797979797979797979797979796f63574a3d3124170a00000000131f2c3946525f6b76797979797979797979797979797979797979797979797979797979797979797979797979797979776c6053473a2d2114070000000000050a0e11131313131313131313110e0c1012131313131313131312100c070100000000000000000810161a1e1f2020202020202020201e1b1610090100000000000000000000000000060d13191d1f2020202020202020201f1c18120c0400000000000000030a11171b1e202020202020202020201e1b16110a02000000000000000000030b12171c1e202020202020202020201e1b16110a02000000000000000000000000000000000000000000000000000000131f2c3946525f6c7986929faca79a8e8174675a4d4134271a0e0100000000000000000000030f1b2834404c5965717d8995a1ada69a8e82776c61564c423a332f2c2c2c2d2f3339414a545f6a7581817d7a76736f6c655b5044382c1f1306000000000c1824303b47535e6974808a959fa9a59b91877e766f6964615f5e5d5e6063666b7279828b949ea9a59b91867b70655a4e43372c2014080000000000000000000000000c17222e39444e59636d7680899199a1a7a7a09a95918e8c8a8989898a8c8f92979ca2a9a9a29a928a81776d62584d42372b2014090000000000000c1824303c47535e6a75808a959ea8a59b9289817a74706c6a696868686a6c6f74798088909aa4aba2988e83786d61564a3f33271b0f0300000000000000000000000000000000000000000000000000030c151c22272a2b2b2c3844505c67737f8b939393939393939084786c6055493d312b2b2a27231c150d04000000000000000000000000000000000000000000000000000000000000000000000000010d1925303c4854606b77838f9ba7a3978b7f737c8894a0ab9f93877b7064584c4035291d1105000000000000000000000000000000000000000000000814212d3a4753606c7985929eaaa69a8e82776c635a534c55626f7b8895a09386796d6053463a3a444c53565654514f4d4a4846433e372f261c110600000013202c3946535f6c798693a0ac9f9286796c5f5246392c1f130013202c3946535f6c798693a0ac9f9286796c5f5246392c1f1300111e2a37434f5a646b6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c655b5044382c1f130600000000000000000000020910181f262d353c434a515960676c6c6c6c6c6c6c6c6961564b3f3226190d000000000000000000000000000000000000000000000000000000000000000000000000000000000005101a252f3a444f59646b6c6c6c6c6c6c6c6c6b645a4f43372b1e12050000000000000000000000000915222e3a47525d676c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c675e53473b2e22160900000000111e2a37434f5a646b6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6b655b5044382b1f1206000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000040a0e1113131313131313131313110f0a050000000000000000000000000000000002080d101213131313131313131312100c070100000000000000000000060b0f1213131313131313131313110f0b0500000000000000000000000000060b0f1213131313131313131313110f0b050000000000000000000000000000000000000000000000000000000000131f2c3946525f6c7986929faca79a8e8174675a4d4134271a0e010000000000000000000006121e2b3744505c6875818d99a5aea295897d72665a4f443a302822201f1f2023282f38424d5965707775716e6a6763605b534a3f34281c100400000005111d2935404c58646f7a86919ca7aa9f94897f756c645d58545251515253565b60676f78828d97a2ada3988d82766b5f54483c3024180c00000000000000000000000006111c27323c47515b656e7780878f969ca2a7a6a19d9a989796969697999b9ea3a8a8a39e97908980776e655b51463b31251a0f0300000000000007131f2b36424d58636e78838c969ea7a49b938c86807c79777575757576787b80858b929aa2aaa19990867c71665c50453a2e22160b00000000000000000000000000000000000000000000000000010c151e272e3337383838383f4b57636e7a8686868686868686867f73675c50443838383837332e271f160c020000000000000000000000000000000000000000000000000000000000000000000000000814202c37434f5b67727e8a96a2a79b8f8377808c98a4a69a8e83776b5f53473c3024180c00000000000000000000000000000000000000000000000916222f3c4855626e7b8894a1ada2968a7d71665b51484855626f7b8895a09386796d6053463a414c565e6363605e5c595754524f4941382e23180c00000013202c3946535f6c798693a0ac9f9286796c5f5246392c1f130013202c3946535f6c798693a0ac9f9286796c5f5246392c1f13000e1a26323e48525a5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5b534a3f34281c1004000000000000000000000000060d141c232a313940474e555c5f5f5f5f5f5f5f5f5e584f453a2e22160a00000000000000000000000000000000000000000000000000000000000000000000000000000000000008131e28333d48525a5f5f5f5f5f5f5f5f5f5f5a52493e33271b0f0200000000000000000000000006121e2a36414c555c5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5c554c41362b1f1206000000000e1a26323e48525a5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5b53493f33281c0f03000000000000010508090909090909070300000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000131f2c3946525f6c7986929faca79a8e8174675a4d4134271a0e01000000000000000000000815212e3a47535f6c7885919da9aa9e9285796d6155493e33281e1d1d1d1d1d1d1d26313d48545e676b6865615e5a5753504941382d23170c000000000915212d3945515d6974808c97a2ada4998d82776d635a534c4845444445474a4f555d66707b86919ca8a99e93887c7064594d4135291c10040000000000000000000000000b16202b353f49535c656d757d848b91979ba0a3a6a7a5a3a3a2a3a4a5a8a6a4a09c98928c867e776e655c53493f342a1f140900000000000000030e1a25313c47525c67717a848c959da4a59e97918c888583828282828385888b90969ca4a69f988f877d746a60554a3f34281d12060000000000000000000000000000000000000000000000000008131e2731383f43454545454546525e6a75797979797979797979786e63574b4545454545433f3931281e1409000000000000000000000000000000000000000000000000000000000000000000000000030f1b27333e4a56626e7985919da99f93877a84909ca8a1968a7e72665a4e43372b1f130800000000000000000000000000000000000000000000000a1723303d495663707c8996a3aca093877a6e6155493f4855626f7b8895a09386796d6053463a45515d686f6f6d6a686663615f5b534a3f34281c1004000013202c3946535f6c798693a0ac9f9286796c5f5246392c1f130013202c3946535f6c798693a0ac9f9286796c5f5246392c1f13000a16212c3740484f525353535353535353535353535353535353535353524f4941382d23170c0000000000000000000000000000030a111820272e353d444b505353535353535353514d463d33281d1206000000000000000000000000000000000000000000000000000000000000000000000000000000000000010c16212c3640484e525353535353535353524f4940372c21160a00000000000000000000000000020e19252f3a434b505353535353535353535353535353535353535353535353535353535353535353535353504b433a30251a0e02000000000a16212c3740484f52535353535353535353535353535353535353535353535353535353535353535353535353535353524f4941372d22170b000000000001070d1114161616161615130f0a04000000000000000000000000000000000000000000000000000000000000000000000000000000000000010406080a0b0c0c0c0c0c0b0a090705030000000000000000000000000000000000000000000000000000000000000407090a0a0a0a0a0a0a0a0a090602000000000000000000000000000000000000000000000000000000000000000000000000030709090909090908050100000000000000000000000000000000131f2c3946525f6c7986929faca79a8e8174675a4d4134271a0e01000000000000000000000a1724303d4956626f7b8894a0ada79b8e8275695d5145392d2a2a2a2a2a2a2a2a2a2a2c37424c555b5e5c5955524e4b47443f382f261c1106000000000c1925313d4955616d7985919da8aa9f93877c71665b5148413c393737383a3e444b555f6974808b97a3aea4988d8175695d5145392c201408000000000000000000000000040f19232d37414a535b646b737980868b9093979a9c9d9e9f9f9f9e9d9c9a9794908c87817b746d655c534a41372d23180d03000000000000000009141f2a35404a555f68717a838b92999fa5a29d989592908f8e8e8f909294989ca1a6a19b958d867d756b62584e43392e23170c01000000000000000000000000000000000000000000000000020e19252f39424a4f5151515151514e58636a6c6c6c6c6c6c6c6c6c6c675d525151515151514f4a433a30251a0f030000000000000000000000000000000000000000000000000000000000000000000000000a16222e3a45515d6975818c98a4a3978a7e8894a0a89d9185796d61564a3e32261a0f0300000000000000000000000000000000000000000000000a1724303d4a5763707d8a97a4ab9e9285786b5f52463c4855626f7b8895a09386796d6053463c4855616e7a7c79777572706e6b655c5145392c201307000013202c3946535f6c798693a0ac9f9286796c5f5246392c1f130013202c3946535f6c798693a0ac9f9286796c5f5246392c1f130005101a252e373e4346464646464646464646464646464646464646464646433e382f261c110600000000000000000000000000000000070e151c242b32394044464646464646464645413b342b21170c0100000000000000000000000000000000000000000000000000000000000000000000000000000000000000050f1a242e363d4345464646464646464646433e372e251b1005000000000000000000000000000008131e2831393f44464646464646464646464646464646464646464646464646464646464646464646464644403931281e1308000000000005101a252e373e434646464646464646464646464646464646464646464646464646464646464646464646464646464646433e372f261b110600000000030b12191d212323232323221f1b150f07000000000000000000000000000000000000000000000000000000000000000000000000000003070b0e1113151617181919191818171614120f0d0a0602000000000000000000000000000000000000000000000000050b10141617171717171717171715120e08020000000000000000000000000000000000000000000000000000000000000000040a0f1315161616161614110d07010000000000000000000000000000131f2c3946525f6c7986929faca79a8e8174675a4d4134271a0e01000000000000000000000c1926323f4b5865717e8a97a3b0a5988c7f72665a4d4136363636363636363636363636363a434a4f51504c4945423e3b3735312c251d140a00000003101c2835414d5965727e8a96a2ada69a8e82766b5f54493f36302c2b2b2c2e3239434d58636f7a86929eaaa99d9185796d6155483c3024170b0000000000000000000000000007111b252f384149525961686e757a7f84878a8d8f919292929292918f8d8b8884807b767069625b534a41382f251b1106000000000000000000030e19242e39434d565f68717981888e94999ea1a4a19e9d9c9b9b9c9d9ea1a4a29f9a96908a837c746b625950463c32271c11060000000000000000000000000000000000000000000000000006131f2a36414b545b5e5e5e5e5e5e5953595e5f5f5f5f5f5f5f5f5f5f5c55595e5e5e5e5e5e5c554c42372b1f130700000000000000000000000000000000000000000000000000000000000000000000000006111d2935404c5864707b87939fa79a8e848c98a4a4988c8074695d5145392d21160a0000000000000000000000000000000000000000000000000a1724303d4a5763707d8a97a4ab9e9285786b5e51453c4855626f7b8895a09386796d605346414d5965717d888684817f7c7a776d6154483b2e221508000013202c3946535f6c798693a0ac9f9286796c5f5246392c1f130013202c3946535f6c798693a0ac9f9286796c5f5246392c1f13000009131c252c32373939393939393939393939393939393939393939393937332d261d140a000000000000000000000000000000000000030b121920272e343839393939393939393835302a22190f0500000000000000000000000000000000000000000000000000000000000000000000000000000000000000000008121b242c32363939393939393939393937322c251c1309000000000000000000000000000000010c161f272e3438393939393939393939393939393939393939393939393939393939393939393939393938342e271f160c0200000000000009131c252c3237393939393939393939393939393939393939393939393939393939393939393939393939393939393937332d251d140a00000000030c151d24292d2f303030302f2b27201910070000000000000000000000000000000000000000000000000000000000000000000001060b0f14171a1d1f2123242526262625252422201e1c1916120e0a050000000000000000000000000000000000000000000810171c2023242424242424242423221e19130c04000000000000000000000000000000000000000000000000000000000000070f151b1f222323232323211d19120b0300000000000000000000000000131f2c3946525f6c7986929faca79a8e8174675a4d4134271a0e01000000000000000000000e1b2734414d5a6773808c99a6afa396897d7063574a43434343434343434343434343434343434343444343434343434343413d372f261c1207000006131f2b3844505d6975828e9aa6aea2968a7d72665a4e43382d25201e1e1f2227313b47525e6a76828e9aa6aea295897d7164584c3f33271a0e010000000000000000000000000009131d262f3740484f565d63696e73777b7e81828485868686858482817e7b78746f6a655e58504941382f261d1309000000000000000000000007121d27313b444d565f676f767d83888d9295989b9d9e9f9f9f9f9e9d9b9996938e8a857f78716a625950473e342a20150b00000000000000000000000000000000000000000000000000000916222f3b47535d666b6b6b6b6b6a645e575253535353535353535353565d646a6b6b6b6b6b675e53483c2f23160a000000000000000000000000000000000000000000000000000000000000000000000000010c1824303c48535f6b77838e9aa69f9691949da89f93877b7064584c4034291d11050000000000000000000000000000000000000000000000000a1724303d4a5763707d8a96a3ac9f9285796c5f53473c4855626f7b8895a09386796d60534647525d6975818d93908e8b89877a6e6255483b2f221508000013202c3946535f6c798693a0ac9f9286796c5f5246392c1f130013202c3946535f6c798693a0ac9f9286796c5f5246392c1f130000010a131a21262a2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2b27221b140b020000000000000000000000000000000000000000070f161d23282b2c2c2c2c2c2c2c2c2c29251f181007000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000009121a21262a2c2c2c2c2c2c2c2c2c2c2a27211b130a0100000000000000000000000000000000040d151d23282b2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2b28231d150d0400000000000000010a131a21262a2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2a27221b130b02000000000a151e272f353a3c3c3c3c3c3b37322b23190f050000000000000000000000000000000000000000000000000000000000000001070c12171b2023272a2c2e3031323232323231302f2d2b2825221e1a16110b0500000000000000000000000000000000000008121a22282c2f3030303030303030302e2a251e160d040000000000000000000000000000000000000000000000000000000007101920272b2f303030302f2d29241d150c03000000000000000000000000131f2c3946525f6c7986929faca79a8e8174675a4d4134271a0e0100000000000000000000101c2936424f5c6875828e9ba8aea194887b6e625550505050505050505050505050505050505050505050505050505050504e4841382e24180d01000915222e3b4754606c7985919eaaab9f92867a6d6155493d32261c13111112161f2a36414d5966727e8b97a3b0a5998d8174675b4f4236291d100400000000000000000000000000010b141d252e363d454c52585e63676b6f717476777879797978777674726f6c68645f59534d463f372f261d140b010000000000000000000000000b151f29323b444d555d646b72777d8185898c8e90919292929291908e8c8a86837e79736d675f5850473e352c22180e0400000000000000000000000000000000000000000000000000000b1724313d4a57636f7878787878766f69625b554e48464646464d535a61686f7678787878787064574b3e3225180b0000000000000000000000000000000000000000000000000000000000000000000000000008141f2b37434e5a66727e8a95a1a8a19ea0a6a69a8e83776b5f53473b3024180c000000000000000000000000000000000000000000000000000916232f3c4955626f7b8895a1ada094887b6f63574c434855626f7b8895a09386796d6053464f59646f7a86919d9d9a988f83776b5e5246392d211407000013202c3946535f6c798693a0ac9f9286796c5f5246392c1f130013202c3946535f6c798693a0ac9f9286796c5f5246392c1f13000000010910161a1e1f2020202020202020202020202020202020202020201e1b16110a0200000000000000000000000000000000000000000000040b12171c1f20202020202020201f1d19140d0600000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000080f151a1e1f20202020202020201f1e1b16100901000000000000000000000000000000000000030b12171c1e20202020202020202020202020202020202020202020202020202020202020202020201f1c17120b04000000000000000000010910161a1e1f202020202020202020202020202020202020202020202020202020202020202020202020202020201e1b161009010000000006111c2730394046494949494947433d352b21160b000000000000000000000000000000000000000000000000000000000000050c12181e23272c303336383b3c3e3e3f3f3f3f3e3d3b3a3735322e2a26211c16100a0300000000000000000000000000000006101a242c33383c3d3d3d3d3d3d3d3d3d3b3630281f150b010000000000000000000000000000000000000000000000000000050f19232b32373b3c3c3c3c3c3a352f271e150a000000000000000000000000131f2c3946525f6c7986929faca79a8e8174675a4d4134271a0e0100000000000000000000111d2a3744505d6a7683909da9ada093867a6d605d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5a534a4035291e1205000b1824313d4a56636f7c8895a1ada89c8f83766a5e5145392d21150a0404060e1925313d4a56626f7b8894a0ada99c9083776a5e5145382c1f12060000000000000000000000000000020b131c242c333a41474d52575b5f626567696b6b6c6c6c6b6a696765635f5c58534e48423b342d251d140b0200000000000000000000000000030d172029323b434b535a60666c7175797c7f82838485868685858482807d7a76726d68625c554e463e352c231a10060000000000000000000000000000000000000000000000000000000b1824313e4b5764717e85858585817a736d666059534c464a50575e656c737981858585857e7265584c3f3225190c000000000000000000000000000000000000000000000000000000000000000000000000060d121a26323e4a56616d7985919ca2a2a2a2a2a1958a7e72665a4e43372b1f140f090100000000000000000000000000000000000000000000000815212e3a4754606d7986929faba3978b7f74685e554e4955626f7b8895a09386796d60535158616b75808b97a2a9a2978b7f73675b4e42362a1e1105000013202c3946535f6c798693a0ac9f9286796c5f5246392c1f130013202c3946535f6c798693a0ac9f9286796c5f5246392c1f130000000000050a0e1113131313131313131313131313131313131313131313110f0b050000000000000000000000000000000000000000000000000001070c0f12131313131313131312100d0802000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000040a0e1113131313131313131313110e0a0500000000000000000000000000000000000000000000060b0f121313131313131313131313131313131313131313131313131313131313131313131313120f0c0700000000000000000000000000050a0e111313131313131313131313131313131313131313131313131313131313131313131313131313131313110f0a050000000000000b17232e38424b525556565656544e473d33281c1105000000000000000000000000000000000000000000000000000000010810171d23292e33383c3f424547494a4b4c4c4c4b4b4a484644413e3a36322d28221c150e0600000000000000000000000000010c18222c363e44484a4a4a4a4a4a4a4a4a47413a31271d120700000000000000000000000000000000000000000000000000000b16212b353d4347494949494946403930271c11060000000000000000000000131f2c3946525f6c7986929faca79a8e8174675a4d4134271a0e0100000000000000000000121e2b3845515e6b7784919eaaac9f9286796c69696969696969696969696969696969696969696969696969696969696969655c51463a2e211508000d1a26333f4c5865727e8b97a4b0a6998d8074675b4e4235291d11050000000915212e3a46535f6c7885929eabab9f9286796d6053473a2e211408000000000000000000000000000000010a121a21282f363c41464b4f5356585b5d5e5f5f5f5f5f5e5c5b595653504c47423d37312a231b130b02000000000000000000000000000000050e172029313941484f555b6065696d70737576787879797978777573716e6a66625c57514a433c342c231a1108000000000000000000000000000000000000000000000000000000000b1724313e4a57636f79838c92928c857e78716b645e5751545b626970777d848b92928d837a7064584b3e3225180c00000000000000000000000000000000000000000000000000000000000000000000000710171e23272d3945515c6874808c959595959595959185796d61564a3e322825201a130b020000000000000000000000000000000000000000000006131f2c3845515e6a76838f9ba6a79c90857a7067605a5555626f7b8895a09386796d60575c626a737d87929da8a89d91867a6e62564a3e32261a0e02000013202c3946535f6c798693a0ac9f9286796c5f5246392c1f130013202c3946535f6c798693a0ac9f9286796c5f5246392c1f13000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000f1b28333f4a545d626363636360594f44392d2115090000000000000000000000000000000000000000000000000000030b131a21282f343a3f44484c4f52545657585959595857565553504e4a47423e39332d262018110900000000000000000000000006121e29343e484f55575757575757575756524c43392f23180c0000000000000000000000000000000000000000000000000005111c28333d474e545656565655524b42382e23170b0000000000000000000000131f2c3946525f6c7986929faca79a8e8174675a4d4134271a0e0100000000000000000000121f2c3945525f6b7885929fabac9f92857876767676767676767676767676767676767676767676767676767676767676766e6256493d3024170a000f1b2835414e5a6774818d9aa6b0a4978b7e7165584c3f33261a0d0100000005121e2b3744515d6a7683909ca9aea194887b6f6255493c2f2316090000000000000000000000000000000000080f171e242a30353a3f4346494c4e5051525253525251504e4c4a47433f3b37312c261f181109010000000000000000000000000000000000050e171f272f363d444a4f54595d616466686a6b6c6c6c6c6b6a686764615e5a56514c463f39322a221a110800000000000000000000000000000000000000000000000000000000000916222f3b47535e677079838c9597908a837c766f69625b5f666d747a81888f96978d847a71685e53483c2f23170a0000000000000000000000000000000000000000000000000000000000000000000006101922292f333536404c58636f7b8788888888888888888074685d5145393634312c251d140b0000000000000000000000000000000000000000000004101d2935424e5a66727e8a96a1aca1978c8279716b65615e626f7b8895a09386796d6063676d747c858f99a3ada2978c8175695e52463a2e22160a00000013202c3946535f6c798693a0ac9f9286796c5f5246392c1f130013202c3946535f6c798693a0ac9f9286796c5f5246392c1f130000000000000000000000000000000000000000000000000000000000000000000000000000050a0d0f0f0f0f0f0f0d0a05000000000000000000000000000000000000000000000000000001070b0f1011111111110f0c070200000000000000000000000000000000000000000000000000000000000000000000000000020406070808080808070605030100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001030506070808080807070504020000000000000000000000000000000000000000000000000000000000000000000000000000000000020406070808080807070503010000000000000000000000000000000000000000000000000000121e2b3744505c666e6f6f6f6f6b6155493d3124180b00000000000000000000000000000000000000000000000000030c151d242c333a40454b5054585b5e60626465656565656463615f5d5a57534e49443e38312a221b120a01000000000000000000000a16222e3a45505a616363636363636363635e554b4034281c10030000000000000000000000000000000000000000000000000915212d39444f596063636363625d544a3f33281b0f0000000000000000000000131f2c3946525f6c7986929faca79a8e8174675a4d4134271a0e010000000000000000000013202c3946535f6c7986929facac9f928683838383838383838383838383838383838383838383838383838383838383837d7164574a3e3124170b00101d2936434f5c6975828f9ba8afa295897c6f6356493d3024170b0000000003101c2935424f5b6874818e9ba7b0a3968a7d7063574a3d3124170b000000000000000000000000000000000000050c13191f252a2e33373a3d3f4243444546464645444342403d3a37332f2b26201a140d060000000000000000000000000000000000000000050d151d252c32383e44494d5154575a5c5d5e5f5f5f5f5e5d5c5a5855524e4a45403a342e272018100800000000000000000000000000000000000000000000000000000000000006131f2b36414c555e67717a838c959b948e87817a746d666a71787e858c939a978e857b72685f564c42372b1f1307000000000000000000000000000000000000000000000000000000000000000000030e18222c343a3f42424247535f6a767b7b7b7b7b7b7b7b7b7a6f64584c424242413d372f261c1207000000000000000000000000000000000000000000000d1926323e4a56626d79848f9aa5a89e948b837c76716d6a686f7b8895a09386796d6b6f73787f868e97a1aba59b90867a6f64584d41352a1e120600000013202c3946535f6c798693a0ac9f9286796c5f5246392c1f130013202c3946535f6c798693a0ac9f9286796c5f5246392c1f13000000000000000000000000000000000000000000000000000000000000000000000000040b11161a1c1c1c1c1c1c1a16110b040000000000000000000000000000000000000000000000050c12171b1d1e1e1e1e1d1b18130d05000000000000000000000000000000000000000000000000000000000000000003070a0d0f1112131415151515141312100e0c090602000000000000000000000000000000000000000000000000000000000000000000000000000105080b0e1012131415151515141312100e0c0906030000000000000000000000000000000000000000000000000000000000000000000105090c0f11121414151515141312100d0b0704000005080a0a0a0a0a0a0a0a0a0907040000000000000013202c3946535f6c787c7c7c7c7265594c3f3226190c000000000000000000000000000000000000000000000000030c151e262f363e454b51575c6064686a6d6f70717272727271706e6c6966635f5a554f49433c342d241c130a000000000000000000000c1925323e4a56626c70707070707070706f675c5144382b1f12060000000000000000000000000000000000000000000000000b1824313d4955616b6f6f6f6f6e665c5044372b1e120000000000000000000000131f2c3946525f6c7986929faca79a8e8174675a4d4134271a0e010000000000000000000013202c3946535f6c798693a0acafa39891909090909090909090909090909090909090909090909090909090909090908a7d7164574a3e3124170b00111e2b3744515d6a7784909daaada194877b6e6155483b2f22150900000000000e1a2734404d5a6673808d99a6b1a4988b7e7165584b3f3225190c0000000000000000000000000000000000000001080e14191e22272a2e3033353638393939393838363533312e2b27231f1a150f090300000000000000000000000000000000000000000000030b131a21272d33383d4145484b4d4f50515253535252514f4d4b4945423e39342f29231c150e0600000000000000000000000000000000000000000000000000000000000000020e1a25303a434c555f68717a838c959f99928c857e7871757c838990979e988e857c726960564d443a30261a0f0300000000000000000000000000000000000000000000000000000000000000000009141f2a343e454b4f4f4f4f4f5a646d6f6f6f6f6f6f6f6f6f6e685e534f4f4f4f4d4841382e24190d020000000000000000000000000000000000000000000916222e3a45515c68737e89939ca5a69d958e87827d7a7775737b8895a093867975787b7f848a9198a0a9a69d93897e74695e53473c3025190d0100000013202c3946535f6c798693a0a09f9286796c5f5246392c1f130013202c3946535f6c798693a0a09f9286796c5f5246392c1f130000000000000000000000000000000000000000000000000000000000000000000000050e161c222628292929292826221c160e05000000000000000000000000000000000000000000060f171e23272a2a2a2a2a2a28241e170f070000000000000000000000000000000000000000000000000000000003070c101316191b1d1f20212222222121201e1c1a1815120e0a0601000000000000000000000000000000000000000000000000000000000000000004090d1114181a1c1e20212122222121201f1d1b1816120f0b06010000000000000000000000000000000000000000000000000000000004090d1215181b1d1f202122222221201e1c1a1714100b0c11141617171717171717171614100b05000000000013202c3946535f6c798689897f7265594c3f3226190c0000000000000000000000000000000000000000000000020c151e27303840484f565c62676c707477797b7d7e7e7f7f7e7d7c7b7876736f6b66615b544d463e362e251c12090000000000000000000d1a2633404d5966737d7d7d7d7d7d7d7d796c6053463a2d2013070000000000000000000000000000000000000000000000000c1926323f4c5965727c7c7c7c786c5f5346392c20130000000000000000000000131f2c3946525f6c7986929faca79a8e8174675a4d4134271a0e010000000000000000000013202c3946535f6c798693a0acb4aaa29d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d978a7d7164574a3e3124170b00121f2c3845525e6b7885919eabaca09386796d6053473a2d21140700000000000c1926333f4c5965727f8c98a5b2a5998c7f7366594c403326190d00000000000000000000000000000000000000000003080d12161a1e212426282a2b2c2c2c2c2c2b2a282624221f1b17130e09040000000000000000000000000000000000000000000000000001080f161c22272c3135383b3e4042444546464646454443413f3c3936322d29231e18110b0400000000000000000000000000000000000000000000000000000000000000000008131e28313a434d565f68717a838d969f9d97908a837c80868d949ba2988f867c736a60574e443b32281e1409000000000000000000000000000000000000000000000000000000000000000000010d1925313c4650575b5c5c5c5c5c5c61626262626262626262625e5c5c5c5c5c5c59534a40352a1e120600000000000000000000000000000000000000000005111d2935404b57616c77818a939ca3a79f99938e89868381807e8895a09386818284878b90959ba2aaa59d948b81776d62584d41362b1f14080000000013202c3946535f6c7986939393939286796c5f5246392c1f130013202c3946535f6c7986939393939286796c5f5246392c1f1300000000000000000000000000000000000000000000000000000000000000000000040e1720272e32353636363635322e2720170e0400000000000000000000000000000000000000050f1821282f34363737373737342f2921190f050000000000000000000000000000000000000000000000000003090e13181c202326282a2c2d2e2e2e2e2e2d2c2b292724221e1b16120d070200000000000000000000000000000000000000000000000000000000050b1015191d212427292b2c2d2e2e2e2e2e2d2b2a2725221f1b17120d080200000000000000000000000000000000000000000000000003090f15191e2125282a2c2d2e2e2e2e2e2d2b292623201c17171d2123242424242424242423201c1710080000000013202c3946535f6c7986938c7f7265594c3f3226190c00000000000000000000000000000000000000000000000a141e273039424a525a61686d73787c808386888a8b8c8c8c8b8a898785827f7b77726c665f58504840372e241b110700000000000000000d1a2633404d596673808a8a8a8a8a8a86796d6053463a2d2013070000000000000000000000000000000000000000000000000c1926323f4c5965727f898986796c5f5346392c20130000000000000000000000131f2c3946525f6c7986929faca79a8e8174675a4d4134271a0e010000000000000000000013202c3946535f6c7986929facb7ada5a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a2a8aaaaa3978a7d7063574a3d3024170a00131f2c3946525f6c7985929facac9f9286796c5f5346392c20130600000000000c1825323e4b5865717e8b98a4b1a69a8d8073665a4d4034271a0d000000000000000000000000000000000000000000000002060a0e1215171a1c1d1e1f1f201f1f1e1d1c1a1815120f0b07020000000000000000000000000000000000000000000000000000000000040b11161c2025292c2f3234363738393939393837363432302d2926221d18130d070000000000000000000000000000000000000000000000000000000000000000000000020c161f28313a434d565f68717a848d969fa29b948e878a91989fa29990867d746a61584e453c322920160d0200000000000000000000000000000000000000000000000000000000000000000004111d2936424d58626869696969696969676157555555555c656969696969696969655c52463a2e221609000000000000000000000000000000000000000000010c18232f3a45505a656f78818a9299a0a6a49e9a9692908e8c8c8e98a2978e8d8f9194979ba0a6a8a29b938b83796f655b51463b30251a0e030000000013202c3946535f6c7986868686868686796c5f5246392c1f130013202c3946535f6c7986868686868686796c5f5246392c1f13000000000000000000000000000000000000000000000000000000000000000000000b16202932393e4242424242423e39322920160b000000000000000000000000000000000000010c16212a333a40434444444443403a332b21170c010000000000000000000000000000000000000000000002080f141a1f24282c2f323537383a3b3b3b3b3b3a39383634312e2a27221e19130d0700000000000000000000000000000000000000000000000000030a10161c2125292d30333637393a3b3b3b3b3a39383634312e2b27231e19130d0700000000000000000000000000000000000000000000070e141a20252a2e313436383a3b3b3b3b3a39383533302c282322282d3030303030303030302f2c28221a120800000013202c3946535f6c7986938c7f7265594c3f3226190c0000000000000000000000000000000000000000000008121c263039424b545c646c72797e84898c909395969898999898979694928f8b87837d77716a625a524940362d23190e04000000000000000d1a2633404d596673808d979797979386796d6053463a2d2013070000000000000000000000000000000000000000000000000c1926323f4c5965727f8c9386796c5f5346392c20130000000000000000000000131f2c3946525f6c7986929faca79a8e8174675a4d4134271a0e0100000000000000000000121f2c3945525f6c7885929fabb1a59b9493939393939393939393939393939393939393939393939393979faaafa396897c6f6356493d3023160a0013202c3946535f6c798693a0acac9f9285786b5f5245392c1f120600000000000b1824313e4b5764717e8b97a4b1a79a8d8174675a4d4134271a0e00000000000000000000000000000000000000000000000000000205080b0d0f1012121313131212100f0d0b09060300000000000000000000000000000000000000000000000000000000000000000000050b1014181c20232527292a2b2c2c2c2c2c2b29282623201d1a16110c070100000000000000000000000000000000000000000000000000000000000000000000000000040d161f28313b444d565f68717a848d969fa69f9994959ca3a39a90877e746b62584f463c332a20170e040000000000000000000000000000000000000000000000000000000000000000000006121f2c3845525e6a737575757575757573695d51484b57636e75757575757575756e63574a3e3124180b0000000000000000000000000000000000000000000007121e29343e49535d666f7880878e949a9fa3a6a29f9c9b99989aa0a9a09a9a9b9da0a3a7a5a19c969089817970675d54493f342a1f14080000000000131f2c3946525f6b7679797979797979766b5e5245382c1f1200131f2c3946525f6b7679797979797979766b5e5245382c1f1200000000000000000000000000000000000000000000000000000000000000000006111d27323b444a4e4f4f4f4f4e4a443b32271d1106000000000000000000000000000000000006121d28323c454b5051515151504c453d33291e1207000000000000000000000000000000000000000000050c131a20252b3034383b3f41434546474848484847464442403d3a37332e29241e18120b0300000000000000000000000000000000000000000000070e151b22272c3135393d40424446474848484847464543403e3b37332e2a241e18120b03000000000000000000000000000000000000010911181f262c31363a3e4143454647484848474644423f3c38342f2d34393c3d3d3d3d3d3d3d3d3c38332c241a1006000013202c3946535f6c7986938c7f7265594c3f3226190c000000000000000000000000000000000000000000040f19242e38424b545d666e767d848a9094999c9fa1a3a3a2a2a2a3a4a2a09e9b97938e89827b746c645b52483f352a20150a000000000000000d1a2633404d596673808d9aa4a4a09386796d6053463a2d2013070000000000000000000000000000000000000000000000000c1926323f4c5965727f8c9386796c5f5346392c20130000000000000000000000131f2c3946525f6c7986929faca79a8e8174675a4d4134271a0e0100000000000000000000121e2b3845515e6b7784919eaaada19489868686868686868686868686868686868686868686868686868e9aa6aea295887b6f6255493c2f2216090013202c3946535f6c798693a0acac9f9285786b5f5245382c1f120500000000000b1724313e4a5764717d8a97a4b1a79a8e8174675a4d4134271a0e000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000004080c101316191b1c1e1f1f20201f1f1e1d1b191714110d09050000000000000000000000000000000000000000000000000000000000000000000000000000000000040d161f29323b444d565f68727b848d96a0a0a0a0a0a0a09a91887e756b625950463d342a21180e0500000000000000000000000000000000000000000000000000000000000000000000000613202c3946535f6c7982828282828282786b5f52454c5865727e8282828282827e7165584b3e3225180b00000000000000000000000000000000000000000000010c17222d37414b545d666e757d83898e93979a9da0a2a4a5a5a6abb2aba7a5a4a3a19f9c9995908b857e776f675e554b42382d23180d020000000000111e2a37434f5a646b6c6c6c6c6c6c6c6b645a4e42362a1d1100111e2a37434f5a646b6c6c6c6c6c6c6c6b645a4e42362a1d110000000000000000000000000000000000000000000000000000000000000000000a16222e39444d555b5c5c5c5c5b554d44392e22160a00000000000000000000000000000000000a16222e39444e565c5d5d5d5d5c574f453a2f23170b0000000000000000000000000000000000000000080f171e252b31363b4044484b4e50525354555555545352514f4d4a47433f3a352f29231c150d06000000000000000000000000000000000000000109111920262d33383d4246494c4f515253545555545453514f4d4a47433f3a35302a231c150e0600000000000000000000000000000000010a131b232a31373d42464a4d505253545555545453514f4c48443f3a363e45494a4a4a4a4a4a4a4a48443e362c22180c010013202c3946535f6c7986938c7f7265594c3f3226190c0000000000000000000000000000000000000000000b16202b36404a545d666f7880888f959ba0a5a39f9b99979696969698999ca0a4a39f9a948d867e766d645a51463c32271c11060000000000000d1a2633404d596673808d9aa6ada09386796d6053463a2d2013070000000000000000000000000000000000000000000000000c1926323f4c5965727f8c9386796c5f5346392c20130000000000000000000000131f2c3946525f6c7986929faca79a8e8174675a4d4134271a0e0100000000000000000000111e2a3744505d6a7683909ca9ada093867a7979797979797979797979797979797979797979797979808c99a6ada094877a6d6154473b2e2115080013202c3946535f6c798693a0acac9f9285786b5f5245382c1f120500000000000b1724313e4a5764717d8a97a4b1a79a8e8174675a4d4134271a0e000000000000000000000000000000000000000000000001030406070708080807060503010000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000004070a0c0e101112131313131211100e0c0a0805010000000000000000000000000000000000000000000000000000000000000000000000000000000000000000040d172029323b444d576069727b848e9393939393939392887f756c635950473e342b22180f060000000000000000000000000000000000000000000000000000000000000000000000000613202c3946535f6c79868f8f8f8f8f85786b5f52454c5865727e8c8f8f8f8f8b7e7165584b3e3225180b000000000000000000000000000000000000000000000006101b252f39424b545c646b72787d82878b8e9193959798999ba1a9a09a9998969592908d8985807a746d655d554c433a30261b11060000000000000e1a26323e48525a5f5f5f5f5f5f5f5f5f5a52483d32261a0e000e1a26323e48525a5f5f5f5f5f5f5f5f5f5a52483d32261a0e0000000000000000000000000000000000000000000000000000000000000000000d1a26333f4a555f6769696969675f554a3f33261a0d01000000000000000000000000000000000d1a26333f4b5660686a6a6a6a6861574b3f33271b0e0200000000000000000000000000000000000009111a212930363c42474c5054575a5c5e606161616161605f5d5b5956534f4b46413b352e271f170f070000000000000000000000000000000000020b131b232a31383e44494e5255595b5d5f6061616161615f5e5c5957534f4b46413b352e271f180f070000000000000000000000000000000a131c252d353c42484d5256595c5e6061616161615f5d5b5854504b453f4850555757575757575757554f483e34291e12060013202c3946535f6c7986938c7f7265594c3f3226190c000000000000000000000000000000000000000006111c27323d47525c666f78828a929aa0a7a39d97938f8c8a8989898a8b8d9093989da3a59f9890887f766c62584e43382d22170c0000000000000d1a2633404d596673808d9aa6ada09386796d6053463a2d2013070000000000000000000000000000000000000000000000000c1926323f4c5965727f8c9386796c5f5346392c20130000000000000000000000131f2c3946525f6c7986929faca79a8e8174675a4d4134271a0e0100000000000000000000101c2936424f5c6875828e9ba7aea194877b6e6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c74818e9aa7ab9f9285796c5f5346392d2013070013202c3946535f6c7986939facac9f9285786c5f5245392c1f120600000000000b1824313e4b5764717e8b98a4b1a79a8d8173675a4d4134271a0e000000000000000000000000000000000000000104080b0d0f11131414151514141312100e0c090602000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000050e172029323b454e576069727b85868686868686868680766d635a51473e352c22191006000000000000000000000000000000000000000000000000000000000000000000000000000613202c3946535f6c7986939c9c9c9285786b5f52454c5865727e8c989c9c988b7e7165584b3e3225180b00000000000000000000000000000000000000000000000009131d273039424a525960666c72767b7e828487898a8b8c8f99a2978e8c8b8a888683817d78746e69625b544b433a31271e140a000000000000000a16212c3740484f5253535353535353524f4840362c21150a000a16212c3740484f5253535353535353524f4840362c21150a0000000000000000000000000000000000000000000000000000000000000000000f1c2935424e5b67717575757571675b4e4235291c0f03000000000000000000000000000000000f1c2835424e5b67727777777773685c4f4336291d1003000000000000000000000000000000000009121b232b333a41484d53585c606467696b6c6d6e6e6e6e6d6c6a6865625f5b56514c463f38312921191007000000000000000000000000000000020b141d252d353c43494f55595e6265686a6c6d6e6e6e6e6d6c6a6866635f5b57524c464039312a211910070000000000000000000000000008121c252e373f464d53595e6266696b6c6d6e6e6e6d6c6a6764605c57514a515a616363636363636363615a50453a2e22160a0013202c3946535f6c7986938c7f7265594c3f3226190c00000000000000000000000000000000000000000c17222e39444e59646e78818b949ca4a8a099928c8783807d7c7c7c7d7e8184878c9299a0a8a29a91887e746a60554a3f34281d110600000000000d1a2633404d596673808d9aa6ada09386796d6053463a2d2013070000000000000000000000000000000000000000000000000c1926323f4c5965727f8c9386796c5f5346392c20130000000000000000000000131f2c3946525f6c7986929faca79a8e8174675a4d4134271a0e01000000000000000000000e1b2734414d5a6673808c99a5afa296897c70635f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f6a7683909ca9a99d9084776a5e5144382b1e120500131f2c3945525f6c7885929facac9f9286796c5f5346392d20130600000000000c1825323f4b5865717e8b98a5b1a6998d807366594d4033271a0d000000000000000000000000000000000004090d1114171a1c1e1f202121212120201e1d1b1815120e0a060100000000000000000000000000000000000000000000000305070707070707070707070707070707070707070707070707070707070707070707070707070707070706030000000000000000000000000000000000000000000000000000000000000000000000000000000000050e172029333c454e57606972797979797979797979766d645b51483f352c231a100700000000000000000000000000000000000000000000000000000000000000000000000000000613202c3946535f6c798693a0a99f9285786b5f52454c5865727e8c98a5a5988b7e7165584b3e3225180b000000000000000000000000000000000000000000000000010b151e27303840484f555b61666a6e7275787a7c7d7e808895a093867f7e7d7b797774706c68635d575049423a31281f160c020000000000000005101a252e373e43464646464646464646433d362e241a0f040005101a252e373e43464646464646464646433d362e241a0f04000000000000000000000000000000000000000000000000000000000000000000101c2936434f5c69768282828276695c4f4336291c1003000000000000000000000000000000000f1c2936424f5c69758284848376695d5043362a1d10030000000000000000000000000000000009121b242d353d454c53595e64686c70737678797a7b7b7b7a79787774726f6b67625d57514a433b332b2219100600000000000000000000000000010b141d262f373f474e545b60656a6e717476787a7b7b7b7b7a797775726f6b67635d57514a433b332b221a1007000000000000000000000005101a242e37404951585f656a6e727577797a7b7b7b7a797674706c68625c5558636c70707070707070706c62564a3e3225190c0013202c3946535f6c7986938c7f7265594c3f3226190c0000000000000000000000000000000000000005111d28343f4a55606b75808a949da6a89f968e87817b7673716f6f6f707274777b81878e969ea7a39a90867c71665b5045392e22160b00000000000d1a2633404d596673808d9aa6ada09386796d6053463a2d2013070000000000000000000000000000000000000000000000000c1926323f4c5965727f8c9386796c5f5346392c20130000000000000000000000131f2c3946525f6c7986929faca79a8e8174675a4d4134271a0e01000000000000000000000c1925323f4b5864717d8a96a3afa4988b7e7265595353535353535353535353535353535353606c7985929eaba79a8e8175685b4f4236291d100300121f2b3845515e6b7884919eaaada093877a6d6054473a2e21140700000000000d1926333f4c5966727f8c98a5b2a5998c7f7266594c3f3326190d000000000000000000000000000000050a1014191d202426292a2c2d2e2e2e2e2d2c2b292725221e1a16120d070200000000000000000000000000000000000000050b0f12141414141414141414141414141414141414141414141414141414141414141414141414141414141412100c0600000000000000000000000000000000000000000000000000000000000000000000000000000000050e17202a333c454e5760696c6c6c6c6c6c6c6c6c6b645b52493f362d231a11070000000000000000000000000000000000000000000000000000000000000000000000000000000613202c3946535f6c798693a0ac9f9285786b5f52454c5865727e8c98a5a5988b7e7165584b3e3225180b00000000000000000000000000000000000000000000000000030c151e262e363d444a50555a5e6266696b6e6f71727b8895a093867971706f6d6a6764605c57524c463f3830281f160d0400000000000000000009131c252c323739393939393939393936322c241c120800000009131c252c323739393939393939393936322c241c120800000000000000000000000000000000000000000000000000000000000000000000101c2936434f5c6976838f8f8376695c4f4336291c1003000000000000000000000000000000000f1c2936424f5c6975828f908376695d5043362a1d100300000000000000000000000000000008121b242e373f474f575e646a6f74797c808284868788888887868583817e7b77736e68625c554d453d342b22180e0400000000000000000000000009131d262f38414951585f666c71767a7e8183858687888888878684827e7b78736e69635c554d453d342c22190f05000000000000000000010c17222c364049525b626a70767a7e82848687888888878583807d78736d675f5b67747d7d7d7d7d7d7d7d7366594d4033261a0d0013202c3946535f6c7986938c7f7265594c3f3226190c000000000000000000000000000000000000000a16222e3945505b67727c87929ca5aaa0968d847c756f6a67646362626365676b70757c848c959ea8a2988e83786d61564a3f33271b0f03000000000d1a2633404d596673808d9aa6ada09386796d6053463a2d2013070000000000000000000000000000000000000000000000000c1926323f4c5965727f8c9386796c5f5346392c20130000000000000000000000131f2c3946525f6c7986929faca79a8e8174675a4d4134271a0e01000000000000000000000a1723303c4955626e7b8793a0aca69a8e8175695c5046464646464646464646464646464a57636f7b8894a1ada4978b7e7266594d4034271b0e0100111e2a3744505d6a7783909da9aea194887b6e6255483c2f22160900000000000e1b2734414d5a6773808d9aa6b1a4988b7e7165584b3f3225180c00000000000000000000000000030a10161b2025292d30333537393a3a3b3b3a3a39383634312e2a27221d18130d0600000000000000000000000000000000010910161b1f20202020202020202020202020202020202020202020202020202020202020202020202020202020201f1c17120b03000000000000000000000000000000000000000000000000000000000000000000000000000000050e18212a333c454e575d5f5f5f5f5f5f5f5f5f5f5a524940372d241b1108000000000000000000000000000000000000000000000000000000000000000000000000000000000613202c3946535f6c798693a0a09f9285786b5f52454c5865727e8c98a0a0988b7e7165584b3e3225180b0000000000000000000000000000000000000000000000000000030c141c242b32393f444a4e5256595c5f6163646f7b8895a09386796d6462605e5b5854504c46413b342d261e160d0400000000000000000000010a131a21262a2c2c2c2c2c2c2c2c2c2a26211a120a00000000010a131a21262a2c2c2c2c2c2c2c2c2c2a26211a120a0000000000000000000000000000000000000000000000000000000000000000000000101c2936434f5c69768390908376695c4f4336291c1003000000000000000000000000000000000f1c2936424f5c6975828f908376695d5043362a1d1003000000000000000000000000000005101a242d374049515961686f757b8085898c8f919394949594949392908e8b87837f7a746d665f574f463d342a20160c010000000000000000000007111b252f38414a535b636a71777d82868a8d909293949595949392908e8b88847f7a746d675f574f473e342b21170d03000000000000000007121e29333e48525b646d747b81868b8e9192949495949392908d89847e78716a616875828a8a8a8a8a8a7e7265594c3f3326190d0013202c3946535f6c7986938c7f7265594c3f3226190c000000000000000000000000000000000000030f1b27333e4a56616d78838e99a3ada2988e847b726a645e5a5856555657585b5f646a727a838c96a0a69f94897e72675b4f43372b1f1206000000000d1a2633404d596673808d9aa6ada09386796d6053463a2d2013070000000000000000000000000000000000000000000000000c1926323f4c5965727f8c9386796c5f5346392c20130000000000000000000000131f2c3946525f6c7986929faca79a8e8174675a4d4134271a0e01000000000000000000000814212d3a46525f6b7784909ca8a99d9185786c6155493e3939393939393939393939434f5b67737f8b98a4ada094887b6f63564a3e3125180c0000101c2936424f5c6875828e9ba8afa296897c7063564a3d3124180b0000000003101c2936424f5b6875828e9ba7afa3968a7d7063574a3d3124170b000000000000000000000000070e151b21272c3135393c3f424445464748484747464442403d3a37332e29241e18110a0300000000000000000000000000010b131b22272b2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2b28231c150c03000000000000000000000000000000000000000000000000000000000000000000000000000000060f18212a333c454c51535353535353535353524f4940372e251b120900000000000000000000000000000000000000000000000000000000000000000000000000000000000613202c3946535f6c7986939393939285786b5f52454c5865727e8c939393938b7e7165584b3e3225180b000000000000000000000000000000000000000000000000000000020a121a21272e33393e42464a4d50525456626f7b8895a09386796d605554514f4c4844403b353029231b140c04000000000000000000000000010910161a1e1f202020202020201f1e1a161008000000000000010910161a1e1f202020202020201f1e1a161008000000000000000000000000000000000000000000000000000000000000000000000000101c2936434f5c69768390908376695c4f4336291c1003000000000000000000000000000000000f1c2936424f5c6975828f908376695d5043362a1d100300000000000000000000000000020d17212c353f49525b636b737a81878c9195989b9d9fa0a1a2a1a1a09e9c9a97948f8a857f78716961584f463c32281e1308000000000000000000030e18232d37414a535c656d747c82888e92969a9c9ea0a1a1a2a1a09f9d9b9894908b857f787169615850463d33291f140a00000000000000010d18242f3a454f5a646d767e868d92979a9d9fa0a1a2a1a09e9c9995908a837b736b6976828f979797978b7e7165584b3e3225180b0013202c3946535f6c7986938c7f7265594c3f3226190c00000000000000000000000000000000000007131f2b37434f5b66727e8994a0aaa69b91867c72696059534e4b4949494a4c4f53596068717a848f9a9996928f83776c6053473a2d211407000000000d1a2633404d596673808d9aa6ada09386796d6053463a2d2013070000000000000000000000000000000000000000000000000c1926323f4c5965727f8c9386796c5f5346392c20130000000000000000000000131f2c3946525f6c7986929faca79a8e8174675a4d4134271a0e010000000000000000000005111e2a37434f5b6874808c98a4ada195897d71665a4f453b312c2c2c2c2c2c2c343e49545f6b77838f9ba7a99d9184786c6053473b2e22150900000e1b2834414e5a6773808d99a6b1a4988b7e7265594c4033271a0e0100000006121f2b3844515d6a7683909ca9aea194887b6e6255493c2f23160900000000000000000000010911181f262c32383d4145494c4e505253545454545352514f4d4a47433f3a352f29231c150d0500000000000000000000000009131d252d33373a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a38342e271e150b01000000000000000000000000000000000000000000000000000000000000000000000000000000060f18212a333b414546464646464646464646433e372e251c13090000000000000000000000000000000000000000000000000000000000000000000000000000000000000613202c3946535f6c7986868686868685786b5f52454c5865727e8686868686867e7165584b3e3225180b0000000000000000000000000000000000000000000000000000000000080f161c22282d32363a3e4143464855626f7b8893939386796d60534745423f3c38342f2a241e18110a02000000000000000000000000000000050a0e11131313131313131313110e0a04000000000000000000050a0e11131313131313131313110e0a0400000000000000000000000000000000000000000000000000000000000000000000000000101c2936434f5c69768390908376695c4f4336291c1003000000000000000000000000000000000f1c2936424f5c6975828f908376695d5043362a1d10030000000000000000000000000009141e29333d47515b646d757d858c92989da1a5a39f9d9b9a9a9a9a9b9da0a3a3a09b96908a837b736a61584e443a2f251a0f0400000000000000000a151f2a343f49535c656e777f868d94999ea2a4a09d9a999898999a9c9fa2a4a09b96908a837b736a62584f453b31261c110600000000000006121e2935404b56616c76808890989ea3a7a9a5a19f9d9c9c9c9c9ea09b958d857d746a7683909da4a4978a7d7164574b3e3124180b0013202c3946535f6c7986938c7f7265594c3f3226190c0000000000000000000000000000000000000b17232f3b47535f6b77838f9aa6aca1958a7f746a60574e47423f3d3c3c3d3f43484e565f68727d88918d8a86837f7a6e6154473b2e211408000000000d1a2633404d596673808d9aa6ada09386796d6053463a2d2013070000000000000000000000000000000000000000000000000c1926323f4c5965727f8c9386796c5f5346392c20130000000000000000000000131f2c3946525f6c7986929faca79a8e8174675a4d4134271a0e0100000000000000000000020e1b27333f4c5864707c88949faba59a8e82776c61574d433b3532302f3033373d46505a65707c88939faba4988c8074685c5044372b1f120600000d1926323f4c5865717e8a97a3b0a69a8d8174685b4f42362a1e12060000000915222e3a4753606c7985929eabab9f9286796d6053473a2e211408000000000000000000020a131b232a31383e43484d5155585b5d5f6061616161605f5d5b5956534f4a46403a342e271f170f070000000000000000000005101b252f373e444647474747474747474747474747474747474747474747474747474747474747474747474747474747443f3930271d120700000000000000000000000000000000000000000000000000000000000000000000000000000000060f1821293035383939393939393939393937322c251c130a0100000000000000000000000000000000000000000000000000000000000000000000000000000000000006131f2c3946525f6b7679797979797979766a5e51454b58647079797979797979797064574b3e3125180b000000000000000000000000000000000000000000000000000000000000040b11171c21262a2e3134373c4855626f7b8686868686796d6053463a3633302c28231e19130d0600000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000101c2936434f5c69768390908376695c4f4336291c1003000000000000000000000000000000000f1c2936424f5c6975828f908376695d5043362a1d1003000000000000000000000000040f1a25303b454f59636d767f878f969da3a7a19b9793908e8d8d8d8e8f9194979ca1a7a29b958d857c736a60564c41362b20150a0000000000000005101b26313c46515b656e77808991989fa5a39d9894908e8c8c8c8c8d8f92969ba0a6a29b958d857c746a61574d42382d22170c0100000000000a17222e3a46515d68737d88929aa2a9aba49e999592908f8f8f909194979c978f867c737784909daaa4978a7d7064574a3d3124170b0013202c3946535f6c7986938c7f7265594c3f3226190c0000000000000000000000000000000000020e1a27333f4b5864707c88949faba79b9084786d62584e453d3632302f303133373c444d56616c778384817d7a76736f685d5145392d201307000000000d1a2633404d596673808d9aa6ada09386796d6053463a2d2013070000000000000000000000000000000000000000000000000c1926323f4c5965727f8c9386796c5f5346392c20130000000000000004070809131f2c3946525f6c7986929faca79a8e8174675a4d4134271a0e0908070400000000000000000b17232f3b47545f6b77838f9aa5aa9f94887d73685f564d46413e3c3c3d3f43484f58626c77828d99a4aa9f93887c7064584c4034271b0f0300000b1724303d4956626f7b8894a1ada99c9083776b5e52463a2e22170d0a090a0e1a25313e4a56626f7b8894a1ada99c9083776a5e5145382c1f12060000000000000000020b141d252d343c43494f54595d6164676a6b6d6d6e6e6d6d6c6a6866635f5b56514c463f383129211910070000000000000000000a16212d3741494f5353535353535353535353535353535353535353535353535353535353535353535353535353535353504a42392f24180d0100000000000000000000000000000000000000000000000000000000000000000000000000000000060f171e24292c2c2c2c2c2c2c2c2c2c2c2a27211b130a010000000000000000000000000000000000000000000000000000000000000000000000000000000000000005111e2a37434f5a646b6c6c6c6c6c6c6c6b64594e4248545f686c6c6c6c6c6c6c6c685e53483c2f23160a0000000000000000000000000000000000000000000000000000000000000000060b11151a1e2225282f3b4855616d787979797979766b5f5346392d2723201c18130e080200000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000050a0d0f0f0f0f0f0f0d0a0500000000000000000000000000000000000000000000101c2936434f5c69768390908376695c4f4336291c1003000000000000000000000000000000000f1c2936424f5c6975828f908376695d5043362a1d10030000000000000000000000000a15202c37424c57616b757f889199a1a8a39c958f8a878482818080818284878b90959ca3a69f978e857c72685d53483d32261b10040000000000000b16212d38434d58626d76808a929ba3a8a099928c888481807e7e808183868a8f959ca3a69f978f867c73695f544a3f34291d120700000000020e1b27333f4b57626e79848f9aa3acaba29a938d8986848282828385878b9096988e857a7784919eaaa4978a7d7063574a3d3024170a0013202c3946535f6c7986938c7f7265594c3f3226190c000000000000000000000000000000000005111e2a36434f5b6774808c98a4afa3978b7f73675c51463c332b2623222324272b323b444f5a66727b7874716d6a67635e564c4135291d1104000000000d1a2633404d596673808d9aa6ada09386796d6053463a2d2013070000000000000000000000000000000000000000000000000c1926323f4c5965727f8c9386796c5f5346392c20130000000000070c11141515151f2c3946525f6c7986929faaa79a8e8174675a4d4134271a15151513100b0600000000000007131f2b37434f5b66727d89949faaa59a8f857a71685f58524d4b49494a4b4f535a616a747e88939eaaa4998e82776b5f53483c3024170b0000000815212e3a4753606c7885919daaac9f93877a6e62564a3f33281e1916161719202a36424e5a66727e8b97a3b0a6998d8174685b4f4236291d100400000000000000010a141d262f373f464d545a6065696d71747678797a7b7b7a79787775726f6b67625d57514a433b332b2219100700000000000000000f1b27333e49535b60606060606060606060606060606060606060606060606060606060606060606060606060606060605c544b4035291d11050000000000000000000000000000000000000000000000000000000000000000000000000000000000050d13191c1f2020202020202020201f1e1b161009010000000000000000000000000000000000000000000000000000000000000000000000000000000000000000020e1a26323e48525a5f5f5f5f5f5f5f5f5f5a52483d424d565d5f5f5f5f5f5f5f5f5c564d42372b1f130700000000000000000000000000000000000000000000000000000000000000000000050a0e121518202d3945515c666c6c6c6c6c6c6b645a4f43372b1e1714100c070200000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000040b11161a1c1c1c1c1c1c1a16110b040000000000000000000000000000000000000000101c2936434f5c69768390908376695c4f4336291c1003000000000000000000000000000000000f1c2936424f5c6975828f908376695d5043362a1d10030000000000000000000000040f1b26323d48535e69737d87919aa3aba299918a847e7a77757373737475787b7f848a9199a1a9a0978e84796f64594e43372c201509000000000005101c27333e49545f6a747e89929ca4a89f968e87817b78757372727374767a7e848a9199a2a9a1988e857b70665b50453a2f23180c0000000006121e2b37434f5b67737f8a96a1acada2999088817c797776757576787b80858b92968c827885929eaba3968a7d7063564a3d3023170a0013202c3946535f6c7986938c7f7265594c3f3226190c00000000000000000000000000000000000714202d3946525e6b7784909ca8ab9f93867a6e62574b40352a211a191919191a2029333e4a56616a6e6c6865615e5a57534c443a2f24190d01000000000d1a2633404d596673808d9aa6ada09386796d6053463a2d2013070000000000000000000000000000000000000000000000000c1926323f4c5965727f8c9386796c5f5346392c2013000000020b12181d20222222222c3946525f6c7986929d9d9d9a8e8174675a4d41342722222222201c1710090100000000030f1b27323e4a55616c77838e98a3aba1968c83797169635e5a57565556585b5f656b737c868f9aa5a89e93887d71665a4f43372b1f130700000006121f2b3744505c6975818d99a6afa3978b7e73675b50443a302925232223252a323c47525e6a76828e9aa7aea2968a7d7165584c3f33271a0e010000000000000009131c262f38414951585f656b71757a7d8183858687888887868583817e7b77736e68625c544d453d342b22190f0500000000000000111e2a37434f5a656c6d6d6d6d6d6d6d6d6d6d6d6d6d6d6d6d6d6d6d6d6d6d6d6d6d6d6d6d6d6d6d6d6d6d6d6d6d6d6d6d665d5145392d20140700000000000000000000000000000000000000000000000000000000000000000000000000000000000002080d101213131313131313131313110e0a0500000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000a16212c3740484f5253535353535353524e4840363b444b515353535353535353504b443b30261a0f03000000000000000000000000000000000000000000000000000000000000000000000000020609111d2934404a545b5f5f5f5f5f5f5f5a52493e33271b0f0704000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000050e161c222628292929292826221c160e0500000000000000000000000000000000000000101c2936434f5c69768390908376695c4f4336291c1003000000000000000000000000000000000f1c2936424f5c6975828f908376695d5043362a1d100300000000000000000000000915202c37434e5965707a858f99a3aca29990878079736e6b6867666667696b6f737980878f98a1a9a0968b81766b5f54493d31251a0e02000000000a15212d38444f5a66717b86909aa4aaa0968d847c75706b6866656566676a6e72787f879099a3aaa0978d82776d62564b4034291d11050000000915222e3a47535f6b77848f9ba7b1a69b90877e76716d6a696868696c6f737980889094897e85929eaba3968a7d7063564a3d3023170a0013202c3946535f6c7986938c7f7265594c3f3226190c00000000000000000000000000000000000a16232f3c4855616e7a8793a0aca89b8f83766a5e52463a2e262626262626262626262d39444f585f615f5c5955514e4a47423a32281e130800000000000d1a2633404d596673808d9aa6ada09386796d6053463a2d2013070000000000000000000000000000000000000000000000000c1926323f4c5965727f8c9386796c5f5346392c20130000020c141c23292d2f2f2f2f2f3946525f6c798690909090908e8174675a4d41342f2f2f2f2e2c28221b130a00000000000a16222d3944505b66717c87919ba5a89e958c837b746e6a666463626365676b70767d858e97a1aaa1968c81766b6055493e32261b0f03000000030f1c2834404d5965717d8995a1ada79b8f83786c61564c423a3532302f3032353b434d58636f7b87929eaaaa9e9286796d6155493c3024170b0000000000000006111b252e38414a525b626a70777c81868a8d8f9193949494949392908e8b87837e79736d665f574f463d342b21170d0200000000000013202c3946525f6b777a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a786e6155483b2f22150800000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005101a252e373e43464646464646464645433d362e323a4044464646464646464644403a32291f1409000000000000000000000000000000000000000000000000000000000000000000000000000000000c18232e38424a50525353535353524f4940372c21160a00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000040e1720272e32353636363635322e2720170e04000000000000000000000000000000000000101c2936434f5c69768390908376695c4f4336291c1003000000000000000000000000000000000f1c2936424f5c6975828f908376695d5043362a1d100300000000000000000000010d1925313d48545f6b76818c97a1aba49a90877e756e67625e5b5a595a5b5c5f63686e757d868f99a3a89d92877c7065594e42362a1e1105000000020e1a26323e4955606c77828d98a2aca3988e847a726b645f5c595858595b5e62676d757e87919ba6a99e94897e73685c5145392d22160a0000000b1824313d4a56626f7b8794a0acaba094897e746c65605e5c5b5c5d5f63686e767e8790908585929faca3968a7d7063564a3d3023170a0013202c3946535f6c7986938c7f7265594c3f3226190c00000000000000000000000000000000000c1825323e4b5764707d8a96a2afa5998c8073675a4e4236333333333333333333333333333d464e535553504c4945423e3b363029221a120800000000000d1a2633404d596673808d9aa6ada09386796d6053463a2d2013070000000000000000000000000000000000000000000000000c1926323f4c5965727f8c9386796c5f5346392c201300000a141e262e34393b3c3c3c3c3c46525f6c79848484848484848174675a4d413c3c3c3c3c3b38332d251c12080000000005111c28333e4a55606a757f89939ca5a79e958d86807a7673706f6f707174777b81888f97a0a9a2988f857a70655a4f44382d21160a00000000000c1824303d4955616d7985909ca8aba094897d72685e544c46413e3d3c3d3e41464d565f6a75808c97a3afa5998d8175695d5145392d201408000000000000030e18222d37404a535c646d747b82888d9296999c9e9fa0a1a1a1a09e9d9a97948f8a857e78716961584f463d33291f140a00000000000013202c3946535f6c798687878787878787878787878787878787878787878787878787878787878787878787878787877b6f6255483c2f2215090000000000000000000000000000000000000004080b0c0d0d0d0d0d0d0d0d0d0c090601000000000000000000000000000000000000000000000000000000000000000005090b0c0d0d0d0d0d0d0d0d0c0b08040000000000000000000000000000000000000000000000000009131c252c323739393939393939393936322c24282f3438393939393939393938342f2820170d020000000000000000000000000000000000000000000000000000000000000000000000000000000007121c2630383f4346464646464646433e372e251b1005000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000b16202932393e4242424242423e39322920160b000000000000000000000000000000000000101c2936434f5c69768390908376695c4f4336291c1003000000000000000000000000000000000f1c2936424f5c6975828f908376695d5043362a1d10030000000000000000000006121e2a36424d5965707c87939ea8a89d93887e756b635c56524f4d4d4d4e5053575c636b737d87919c9d9a968d82766a5e5246392d20140700000006121e2b36424e5a66717d88939fa9a79c91867c72696059534f4d4c4c4d4e51565c636c757f8a95a0aba59b8f84796d61564a3e32261a0e0200000d1a2733404c5965727e8b97a3b0a79b8f83786d625a54514f4f4f5053575d646c757e88938e8e96a2aea3968a7d7063564a3d3023170a0013202c3946535f6c7986938c7f7265594c3f3226190c00000000000000000000000000000000000e1a2734404d5966737f8c98a5b0a3968a7d7164584b404040404040404040404040404040404042464847434040404040403e3a342c241a1005000000000d1a2633404d596673808d9aa6ada09386796d6053463a2d2013070000000000000000000000000000000000000000000000000c1926323f4c5965727f8c9386796c5f5346392c20130006111c263038404548484848484847515e6a7477777777777777777165594d47484848484848443e372e241a0f04000000000b17222d38434e58636d77818a939ba3a79f98918b86827f7d7c7c7c7e8083878c9399a1a8a19890867c73685e53483d32271c100500000000000814202c3945505c6874808b96a1aca59a8f847970665e57514d4b4949494b4d52575f68717b86919da8aa9f94887c7165594d4135291d11040000000000000a141f2a343f49525c656e767e868d93999ea2a4a09d9b999999999a9c9fa2a3a09b96908a837b736a61584f453b30261b1106000000000013202c3946535f6c798693949494949494949494949494949494949494949494949494949494949494949494949494887b6f6255483c2f2215090000000000000000000000000000000000030a101417191919191919191919191816120c060000000000000000000000000000000000000000000000000000000000050b111518191919191919191919191815100a040000000000000000000000000000000000000000000000010a131a21262a2c2c2c2c2c2c2c2c2c2a26211a1d24282b2c2c2c2c2c2c2c2c2b28231d160e050000000000000000000000000000000000000000000000000000000000000000000000000000000000000b141e262d33373939393939393937322c251c13090000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000006111d27323b444a4e4f4f4f4f4e4a443b32271d11060000000000000000000000000000000000101c2936434f5c69768390908376695c4f4336291c1003000000000000000000000000000000000f1c2936424f5c6975828f908376695d5043362a1d1003000000000000000000000a16222e3a46525e6a76818d99a4aea2978c81766c625a524b46424140404143464b5159616b757f8a94918d8a86837a6e6154483b2e2115080000000a16232f3b47535f6b76828e99a5ada2968b80756a60574e4843403f3f4042454a515a636d78838f9aa6aca1958a7e72665a4e42362a1e120600000f1c2835424e5b6874818d9aa6b0a3978b7e73675b51484543424244474b525a636c76818c979aa0a8b0a3968a7d7063564a3d3023170a0013202c3946535f6c7986938c7f7265594c3f3226190c00000000000000000000000000000000000f1c2935424f5b6874818e9aa7aea195887b6f62554c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4a453e362c22170b000000000d1a2633404d596673808d9aa6ada09386796d6053463a2d2013070000000000000000000000000000000000000000000000000c1926323f4c5965727f8c9386796c5f5346392c2013000b17222d38424a51555555555555534d5862696a6a6a6a6a6a6a6a675f544f54555555555554504940362b2015090000000005111c27323c47515b656f7881899199a0a6a29c97928e8c8a8989898b8d9093989ea4a49e968f867d746b61574c42372c21160b00000000000004101c2834404c57636e7a85909ba5aba0968b82787068625d5a57565556575a5d6369717a838d98a3aea4998e83776c6054483d3125190d00000000000005101b26313b46505a646e77808990989ea4a49e9894918e8d8c8c8c8e9093969ba0a7a19b948d857c736a61574d42382d22170c010000000013202c3946535f6c798693a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a095887b6f6255483c2f22150900000000000000000000000000000000050d151b20242626262626262626262625221d171008000000000000000000000000000000000000000000000000000000070f161c21242626262626262626262624211c150e060000000000000000000000000000000000000000000000010910161a1e1f202020202020201f1e1a150f12181c1f20202020202020201f1c18120c0400000000000000000000000000000000000000000000000000000000000000000000000000000000000000020c141c22272b2c2c2c2c2c2c2c2a27211b130a01000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000a16222e39444d555b5c5c5c5c5b554d44392e22160a0000000000000000000000000000000000101c2936434f5c69768390908376695c4f4336291c1003000000000000000000000000000000000f1c2936424f5c6975828f908376695d5043362a1d1003000000000000000000010d1926323e4a56626e7a86929ea9a99d91867a6f655a5048403a3634333335373a40474f59636e79848885817e7a77736a5f53463a2d2114070000010e1a26323f4b57636f7b87939faaa89d91857a6e63584e453d373432323335393f48515c67727d8995a1ada69a8f83776b5f52463a2e2215090000111d2a3743505d6976838f9ca9ada094877b6f62564a3f38363536373b4048515a656f7a86919da9b1b0a3968a7d7063564a3d3023170a0013202c3946535f6c7986938c7f7265594c3f3226190c0000000000000000000000000000000000111d2a3743505d6976838f9ca9ada093877a6d615959595959595959595959595959595959595959595959595959595959595650483e33281c10040000000d1a2633404d596673808d9aa6ada09386796d6053463a2d2013070000000000000000000000000000000000000000000000000c1926323f4c5965727f8c9386796c5f5346392c2013000f1b27333f4a545c6162626262625f5850585c5d5d5d5d5d5d5d5d5b555259606262626262605b52483d3125190d00000000000a15202a353f49535d666f7780878e959aa0a4a29e9b989696969697999c9fa4a39e99938c857d746b62594f453a30251a1004000000000000000c18232f3b46525d68737e89949ea8a89d948a827a736e6966646362636466696e747b838c959faaa69c92877c71665b4f43382c2014080000000000000b16212c37424d58626c768089929aa2a8a099928d888482807f7f808183868a8f959ca3a69f978e867c73695e54493f34281d12060000000013202c3946535f6c798693a0acadadaba6a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a295887b6f6255483c2f221509000000000000000000000000000000040e171f262c3032333333333333333333312e29221a12080000000000000000000000000000000000000000000000000006101921282d3133333333333333333333312d2720180f05000000000000000000000000000000000000000000000000050a0e11131313131313131313110e0a04070c1012131313131313131312100c0701000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000020a11171b1e2020202020201f1e1b1610090100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000d1a26333f4a555f6769696969675f554a3f33261a0d0100000000000000000000000000000000101c2936434f5c69768390908376695c4f4336291c1003000000000000000000000000000000000f1c2936424f5c6975828f908376695d5043362a1d100300000000000000000004101d2935424e5a66737e8b97a3afa4988c8175695e53483f362e2a272627282a2f353d47515c68737f7c7875716e6a6761584e42372a1e1205000004111d2a36424f5b6773808b98a3afa4988c8074695d52473c332b27262527292e363f4a55616d7884909ca9ab9f93877b6f62564a3d3125180c0000121e2b3845515e6b7784919eaaab9e9285786c5f53463a2e2929292b2f363f48535e6975818c98a4b0b0a3968a7d7063564a3d3023170a0013202c3946535f6c7986938c7f7265594c3f3226190c0000000000000000000000000000000000121e2b3844515e6b7784919daaac9f9286796c66666666666666666666666666666666666666666666666666666666666666625a5044392d2114080000000d1a2633404d596673808d9aa6ada09386796d6053463a2d2013070000000000000000000000000000000000000000000000000c1926323f4c5965727f8c9386796c5f5346392c201300121e2b3743505b666d6f6f6f6f6f69625a535050505050505050504f545c646b6f6f6f6f6f6c64594d4135281c0f0000000000040e19232d37414b545d656d757c83898f94989b9ea1a2a3a2a2a3a3a2a09e9a97928d88817a736b625950473d33291e1409000000000000000007131e2a35414c57626d77828c959fa8a69d948c857e7a7573716f6f6f7173767a7f868d959ea7a79e948b80756b6055493e33271b1004000000000004101c27323e49545f69747e88929ba4a89f968e87817c78757372727374777a7e848a9199a2a9a0988e857a70665b50453a2e23170c0000000013202c3946535f6c798693a0acb6aba19a989898989898989898989898989898989898989898989898989898989895887b6f6255483c2f2215090000000000000000000000000000010c16202931383d3f4040404040404040403e3a342c241a10050000000000000000000000000000000000000000000000030e18222b33393d3f40404040404040403f3d38322a21170d020000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000060b0f1213131313131313110e0a05000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000f1c2935424e5b67717575757571675b4e4235291c0f0300000000000000000000000000000000101c2936434f5c69768390908376695c4f4336291c1003000000000000000000000000000000000f1c2936424f5c6975828f908376695d5043362a1d10030000000000000000000713202c3845515e6a76838f9ba7aca094887b7064584d42372d241d1b1a1a1b1e242b35404b57636d726f6c6965625e5b564f463c31261a0e0200000714202d3945525e6a77838f9ca8ada194887c7064584c41352a211b19191a1d242e3944505c6874818d99a5afa3978b7e7266594d4134281b0f0200121f2c3945525f6c7885929faba99d9083766a5d5144372b1e1c1c1e242d37414d5864707c8894a0adb0a3968a7d7063564a3d3023170a0013202c3946535f6c7986938c7f7265594c3f3226190c0000000000000000000000000000000000121f2c3845525f6b7885929eabac9f92857873737373737373737373737373737373737373737373737373737373737373726c6155493c3023170a0000000d1a2633404d596673808d9aa6ada09386796d6053463a2d2013070000000000000000000000000000000000000000000000000c1926323f4c5965727f8c9386796c5f5346392c20130013202c3946525f6c787b7b7b7b7b746c655d564e4744444444474e565e666e757b7b7b7b7b76695d5043372a1d1000000000000007111b252f38424b535b636b72787e83888c8f92949697979897969593918e8b87827c767068615950473e352b21170c020000000000000000020d19242f3b46505b66707a848d969ea6a69e96908a86827f7d7c7c7c7d7f82868b90979fa7a59d958c82786e64594e43382d22160a0000000000000915212d38444f5a65707b86909aa4aaa0968d857d76706c6967656566686a6e737880879099a3aaa0968c82776c61564b3f34281d110500000013202c3946535f6c7884909ba7b2a69a8f8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b887b6f6255483c2f221509000000000000000000000000000007131e28323b43494c4c4c4c4c4c4c4c4c4c4a453e362c22170b00000000000000000000000000000000000000000000000915202a343d44494c4c4c4c4c4c4c4c4c4c49433c33291e1308000000000000000000000000000000000000000000000000000000000001060a0d0e0e0e0e0e0e0e0e0e0d0c08040000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000101c2936434f5c69768282828276695c4f4336291c100300000000000000000000000000000000101c2936434f5c69768390908376695c4f4336291c1003000000000000000000000000000000000f1c2936424f5c6975828f908376695d5043362a1d10030000000000000000000916222f3b4854616d7986929eaba99c9084786b5f53473c30252222222222222222232f3b46515b626563605c5955524e4b453d342b2015090000000a16232f3c4855616e7a86939fabaa9d9185786c6054473b3024190f0c0c0d121c2834404c5864707d8996a2afa79a8e8275695c5043372a1e11050013202c3946535f6c7986929faca89b8f8275685c4f4236291c100f121b25303c4854606c7885919daab0a3968a7d7063564a3d3023170a0013202c3946535f6c7986938c7f7265594c3f3226190c0000000000000000000000000000000000131f2c3946525f6c7986929facac9f928580808080808080808080808080808080808080808080808080808080808080807d7164574a3e3124170b0000000d1a2633404d596673808d9aa6ada09386796d6053463a2d2013070000000000000000000000000000000000000000000000000c1926323f4c5965727f8c9386796c5f5346392c20130013202c3946535f6c7986888888867e776f686059514a424149515960687078808788888884776a5d5044372a1d110000000000000009131d262f394149515960676d72777c80838587898a8a8b8a8a888785827e7a76716b655e574f473e352c23190f050000000000000000000008131e29343f49545e68717b848c949ba2a8a19b96928e8c8a8989898a8c8e92969ca2a7a19b938b837a70675c52483d32271c10050000000000020e1a26323d4955606b77828d98a2aca3988e847b726b65605c5a59595a5b5e62676e757e87919ca6a89e94897e73675c5045392d21160a000000121e2b3744505c67737e8a96a1aca4978b7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7b6e6255483c2f22150900000000000000000000000000000c18242f3a444d54585959595959595959595650483e33281c1005000000000000000000000000000000000000000000030e1a26313c464f5559595959595959595959554e453b3024190d01000000000000000000000000000000000000000000000000000000060d1216191a1a1a1a1a1a1a1a1a1a1815100a0300000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000306090b0c0e0f1010111110100f0e0d0b09070401000000000000000000000000000000000000000000000000000000000000000000000000050a0e101111111111100d0904000000000000000000000000000000000000000000101c2936434f5c6976838f8f8376695c4f4336291c100300000000000000000000000000000000101c2936434f5c69768390908376695c4f4336291c1003000000000000000000000000000000000f1c2936424f5c6975828f908376695d5043362a1d10030000000000000000000b1824313e4a5763707c8995a2aea69a8d8174685c4f43372f2f2f2f2f2f2f2f2f2f2f2f353f495157595754504d4946423f3a332b22190f060000000c1825323e4b5764707d8996a2afa79b8e8275695c5044372b1f13070000010c1723303c4855616d7a86939facaa9d9184786b5f5246392c2013070013202c3946535f6c798693a0aca89b8e8174685b4e4135281b0f0209141f2b3744505c6975828e9ba7b0a3968a7d7063564a3d3023170a0013202c3946535f6c7986938c7f7265594c3f3226190c000000000000000000000000000000000013202c3946535f6c798693a0acada1968e8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8a7d7164574a3e3124170b0000000d1a2633404d596673808d9aa6ada09386796d6053463a2d2013070000000000000000000000000000000000000000000000000c1926323f4c5965727f8c9386796c5f5346392c201300121f2c3845515e69747d87919590898179726a635b544c4b535b636a727a828a91958f857b72675b4f4336291d1000000000000000010b141d262f3840474e555b61676b6f7376797b7c7d7d7e7d7d7c7a7875726e6a65605a534c453d352c231a11070000000000000000000000020d18222d38424c565f69717a828a90979ca1a5a29e9b989796969697989b9ea2a5a19c969089827971685e554b40362b20160a00000000000006121e2a36424e5a66717d88939ea9a89c91877c7269605954504d4c4c4d4f52565c636c75808a95a0aba59a8f84786d61564a3e32261a0e0200000f1c28343f4b57626e7985909ba6a69b8f8478717171717171717171717171717171717171717171717171717171717170695e53463a2e2114080000000000000000000000000000101c2834404b565f65666666666666666666625a5044392d21150900000000000000000000000000000000000000000007131f2b37424e58616566666666666666666560574c4135291d100400000000000000000000000000000000000000000000000000000810181e23262727272727272727272724201b140d040000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000106090d10131517191a1c1c1d1d1d1d1d1c1b19181613110e0a070300000000000000000000000000000000000000000000000000000000000000020a10161a1d1e1e1e1e1e1c19150f080000000000000000000000000000000000000000101c2936434f5c69768390908376695c4f4336291c100300000000000000000000000000000000101c2936434f5c69768390908376695c4f4336291c1003000000000000000000000000000000000f1c2936424f5c6975828f908376695d5043362a1d10030000000000000000000d1a2633404c5965727e8b98a4b0a4978b7e7165584c403c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3f464a4c4b4744403d3c3c3c3a36302921180e0300000e1a2733404d5966727f8c98a5b1a5988c7f73665a4d4134281b0f030000000714202c3945525e6b7784919daaaca093877a6d6154483b2e2215080013202c3946535f6c798693a0aca79a8e8174675a4e4134271b0e01030f1b2834414d5a6673808c99a6b0a3968a7d7063564a3d3023170a0013202c3946535f6c7986938c7f7265594c3f3226190c000000000000000000000000000000000013202c3946535f6c798693a0acb2a89f9a999999999999999999999999999999999999999999999999999999999999978a7d7164574a3e3124170b0000000d1a2633404d596673808d9aa6ada09386796d6053463a2d2013070000000000000000000000000000000000000000000000000c1926323f4c5965727f8c9386796c5f5346392c201300101d2935414d58626b757e88929a938b847c756d665e57555d656d747c848c949b91877d736960564b3f33271a0e0000000000000000020b141d262e3841484d50565b5f63676a6c6e6f70717171706f6d6b6966625e59544f4c463e352b231a11080000000000000000000000000006111b26303a444d575f6870787f858b9095999c9fa1a2a3a2a2a2a3a2a19e9c9895908b857e7770675f564c43392f241a0f040000000000000a16222e3b47535f6b76828e99a5ada2968b80756a60574f4843413f3f4042464b525a636e78848f9aa6aca1958a7e72665a4e42362a1e120500000b17232f3a46515c68737e8a95a0aba0958a7f7469646464646464646464646464646464646464646464646464646464645f574d42362a1e12050000000000000000000000000000121e2b3844505d68717373737373737373726c6155493d32261a0e0200000000000000000000000000000000000000000c18242f3b47535f6a72737373737373737371695d5145382c1f13060000000000000000000000000000000000000000000000000008111a22292f3234343434343434343433312c261f160d0300000000000000000000000000000000000000000000000000000000000000000000000000000000000004090d1216191c1f2224262728292a2a2a2a292927262422201d1a17130f0a0601000000000000000000000000000000000000000000000000000000030c141b2126292a2a2a2a2a2925201a120a01000000000000000000000000000000000000101c2936434f5c69768390908376695c4f4336291c100300000000000000000000000000000000101c2936434f5c69768390908376695c4f4336291c1003000000000000000000000000000000000f1c2936424f5c6975828f908376695d5043362a1d10030000000000000000000f1b2835414e5b6774818d9aa6aea295897c6f6356494848484848484848484848484848484848484848484848484848484846423b332a1f150a00000f1c2935424e5b6874818e9aa7b0a3968a7d7064574b3e3225190c0000000004111d2a3643505c6975828f9ba8aea295897c6f6356493d3023170a0013202c3946535f6c798693a0aca79a8e8174675a4d4134271a0e01000c1925323f4b5865717e8b98a4b0a3968a7d7063564a3d3023170a0013202c3946535f6c7986938c7f7265594c3f3226190c000000000000000000000000000000000013202c3946535f6c7986939facb9b0a8a4a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a5a6a6a6a4978a7d7063574a3d3124170a0000000d1a2633404d596673808d9aa6ada09386796d6053463a2d2013070000000000000000000000000000000000000000000000000c1926323f4c5965727f8c9386796c5f5346392c2013000d1925303b465059636c768089939d968e877f777068615f676f777f878e969c93897f756b61584e44392e23170b00000000000000000006121e2935404a53595c5c5c5c5c5c5d5f6163646464646362615f5c5c5c5c5c5c5b5750473c31251a0e0100000000000000000000000000000a141e28323b454d565e666d747a8085898d9092949697979897969594928f8c89847f7a736d655e554d433a31271d1208000000000000010e1a26323f4b57636f7b87939faaa99d91857a6e63584e453d3734333334363a4048515c67727d8995a1ada69a8e83776a5e52463a2e211509000006121e2935404b57626d78838e99a4a69b90867b71675d5757575757575757575757575757575757575757575757575757544e453b31251a0e020000000000000000000000000000131f2c3946525f6c7980808080808080807d72665a4e42362a1e13070000000000000000000000000000000000000005101c2834404c58646f7b8080808080808080796d6053463a2d201307000000000000000000000000000000000000000000000000050f1a232c343a3f414141414141414141403d3830281f150a00000000000000000000000000000000000000000000000000000000000000000000000000000000040a1015191e2225292c2e30323435363637373736353433312f2c2926231f1b16110c0701000000000000000000000000000000000000000000000000010b151e262d3236373737373735312b241c1309000000000000000000000000000000000000101c2936434f5c69768390908376695c4f4336291c100300000000000000000000000000000000101c2936434f5c69768390908376695c4f4336291c1003000000000000000000000000000000000f1c2936424f5c6975828f908376695d5043362a1d1003000000000000000000101d2a3643505c6976828f9ca8ada094877a6e61555555555555555555555555555555555555555555555555555555555555534d453b31261b0f0300111d2a3743505d6976838f9ca9aea195887b6f6255493c3023160a00000000010f1b2835414e5b6774818d9aa7b0a4978a7d7164574b3e3125180b0013202c3946535f6c798693a0aca79a8e8174675a4d4134271a0e01000b1724313e4a5764707d8a97a4b0a3968a7d7063564a3d3023170a0013202c3946535f6c7986938c7f7265594c3f3226190c0000000000000000000000000000000000131f2c3946525f6c7985929facb2a79e97969696969696969696969696969696969696969696969696969aa2acb0a396897d7063564a3d3023170a0000000d1a2633404d596673808d9aa6ada09386796d6053463a2d2013070000000000000000000000000000000000000000000000000c1926323f4c5965727f8c9386796c5f5346392c20130008141f2a343e47515a646e77818b949e989189827a736b6a7179818991989e948a81776d63594f463c32281d12060000000000000000000915222e3a46515c646969696969696969665e57575757576067696969696969696862584e42362a1d11040000000000000000000000000000020c162029333b444c545b62696e74797d81838688898a8a8b8a8a89878583807c78736e68625b544c433a31281f150b0100000000000004111d2936424e5b67737f8b97a3afa4988c8174695d52473c332b28262627292e36404a56616d7885919da9ab9f93877b6e62564a3d3125180c0000010d18232f3a45515c67727d88929da7a2978d83786e655b524b4b4b4b4b4b4b4b4b4b4b4b4b4b4b4b4b4b4b4b4b4b4b4b48433c33291f1409000000000000000000000000000000121f2b3844515d6975818c8c8c8c8c8c8c82766a5e53473b2f23170b000000000000000000000000000000000000000915212d3945505c6874808c8c8c8c8c8c8c8175695e5145392c1f13060000000000000000000000000000000000000000000000000a16212b353e464b4d4d4d4d4d4d4d4d4d4d49423a31271c110500000000000000000000000000000000000000000000000000000000000000000000000000030a10161b20252a2e3235383b3d3f404243434444434342413f3d3b3936332f2b27221d18120c06000000000000000000000000000000000000000000000007121d2730383e424444444444413d362e251b10050000000000000000000000000000000000101c2936434f5c69768390908376695c4f4336291c100300000000000000000000000000000000101c2936434f5c69768390908376695c4f4336291c1003000000000000000000000000000000000f1c2936424f5c6975828f908376695d5043362a1d1003000000000000000000111e2b3744515d6a7784909daaaca09386796d626262626262626262626262626262626262626262626262626262626262625e574d43372b1f130700121e2b3844515e6b7784919daaada094877a6d6154473b2e21150800000000000d1a2733404d596673808c99a6b2a5988b7e7265594c3f3226190c0013202c3946535f6c798693a0aca79a8e8174675a4d4134271a0e01000a1723303d4a5663707d8a96a3b0a3968a7d7063564a3d3023170a0013202c3946535f6c7986938c7f7265594c3f3226190c0000000000000000000000000000000000121f2b3845525e6b7885919eabaea2968c8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a909ba7afa295887c6f6255493c2f2316090000000d1a2633404d596673808d9aa6ada09386796d6053463a2d2013070000000000000000000000000000000000000000000000000c1926323f4c5965727f8c9386796c5f5346392c201300020d18222c353f48525c656f79828c969f9b948c857d76747b838b939ba0968c82786f655b51473d342a20160b000000000000000000000b1724313d4a56626e75757575757575757065594c4b4f5c687275757575757575746a5e5245392c201306000000000000000000000000000000040e172129323a424a51575d63686d707477797b7c7d7d7e7d7d7c7b797673706c68635d575049423a31281f160d03000000000000000714202c3945525e6a77838f9ba8ada194887c7064584c41352b211b19191a1d242e3945505c6874818d99a5afa3978b7e7266594d4034281b0f02000007121e29343f4a55606b76818b959fa99f958a81776d645a5148403e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3c38312a21180d03000000000000000000000000000000101c2935414c5864707c87939999999993877b6f63574b4034281c10040000000000000000000000000000000000020e1a26313d4955616d7985919999999994887c7065594d4135291d10040000000000000000000000000000000000000000000000030f1b27323d4750575a5a5a5a5a5a5a5a5a59544c43382d22160a000000000000000000000000000000000000000000000000000000000000000000000000070e151b21272c31363a3e414447494b4d4e4f505050504f4f4d4c4a4845423f3b37332e29231d17110a030000000000000000000000000000000000000000020d19242f3942494e51515151504e4840372d22170b0000000000000000000000000000000000101c2936434f5c69768390908376695c4f4336291c100300000000000000000000000000000000101c2936434f5c69768390908376695c4f4336291c1003000000000000000000000000000000000f1c2936424f5c6975828f908376695d5043362a1d1003000000000000000000121f2c3845525e6b7885919eabac9f9285796f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6e695f54483b2f23160900121f2c3845525f6b7885929eabaca09386796c6053463a2d20130700000000000c1925323f4c5865727e8b98a5b2a6998c807366594d4033261a0d0013202c3946535f6c798693a0aca79a8e8174675a4d4134271a0e01000a1723303d4a5663707d8a96a3b0a3968a7d7063564a3d3023170a0013202c3946535f6c7986938c7f7265594c3f3226190c0000000000000000000000000000000000111e2b3744515d6a7784909daaada093867d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7f8c99a6ada194877b6e6154483b2e2215080000000d1a2633404d596673808d9aa6ada09386796d6053463a2d2013070000000000000000000000000000000000000000000000000c1926323f4c5965727f8c9386796c5f5346392c2013000006101a232d37404a535d67707a848d97a19e968f87807e868d959da1988e847a70665d53493f352c22180e04000000000000000000000b1824313e4b5764717e8282828282828173675a4d44505d6a7782828282828282796d6053463a2d20130700000000000000000000000000000000050f172028303840474c52575c6164676a6c6e6f70717171706f6e6c6a6764605c57524c473f3730281f160d0400000000000000000a16232f3c4855616d7a86939fabaa9d9185786c6054483c3024190f0c0c0e121d2834404c5864717d8996a2afa79a8e8275695c5043372a1e11050000010c18232e39444f59646f79838e98a1a69c92897f766c635a52494038313131313131313131313131313131313131312f2c2620180f06000000000000000000000000000000000c1824303c48535f6b77838e9aa6a6a3978b8074685c5044382c211509000000000000000000000000000000000007121e2a36424e5a66717d8995a1a6a69b8f84786c6054483c3125190d01000000000000000000000000000000000000000000000006131f2c38434f5962676767676767676767655e554a3e32261a0d01000000000000000000000000000000000000000000000000000000000000000000020a11191f262c32383d42464a4e515456585a5b5c5d5d5d5d5c5b5a595754524f4b47433f3a342f28221b140d060000000000000000000000000000000000000006121e2a35404b545a5d5d5d5d5d5952493e33281c100300000000000000000000000000000000101c2936434f5c69768390908376695c4f4336291c100300000000000000000000000000000000101c2936434f5c69768390908376695c4f4336291c1003000000000000000000000000000000000f1c2936424f5c6975828f908376695d5043362a1d1003000000000000000000131f2c3946525f6c7985929facac9f92857b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7063574a3d3124170a0013202c3946535f6c7986929facac9f9286796c5f5246392c1f130600000000000b1825313e4b5864717e8b98a4b1a69a8d8173675a4d4034271a0d0013202c3946535f6c798693a0aca79a8e8174675a4d4134271a0e01000a1723303d4a5663707d8a96a3b0a3968a7d7063564a3d3023170a0013202c3946535f6c7986938c7f7265594c3f3226190c0000000000000000000000000000000000101d2936434f5c6975828f9ba8ada094877a7070707070707070707070707070707070707070707074818d9aa7ac9f9286796c6053463a2d2014070000000d1a2633404d596673808d9aa6ada09386796d6053463a2d2013070000000000000000000000000000000000000000000000000c1926323f4c5965727f8c9386796c5f5346392c201300000008111b252e38414b555e68727b858f98a2a199928a8890989fa3998f867c72685e544b41372d231a100600000000000000000000000b1824313e4b5764717e8b8f8f8f8f8d8173675a4d44505d6a77848f8f8f8f8f86796d6053463a2d201307000000000000000000000000000000000005101c28333e4952585c5c5c5c5c5c5e60626364646464636361605d5c5c5c5c5c5c5851483d32271b0f040000000000000000000c1825313e4b5764707d8996a2afa79b8e8275695c5044382b1f13080000010c1824303c4855616e7a8793a0acaa9d9184786b5f5246392c20130700000006111c27323d48525d67727c869099a3a49b91887e756c645b524a413930282424242424242424242424242424242423201b150e06000000000000000000000000000000000008141f2b37434f5a66727e8a95a1ada89c9084786c6155493d3125190e02000000000000000000000000000000000b17232f3b47535e6a76828e9aa6aea2968b7e73675b4f43382c2014080000000000000000000000000000000000000000000000000815222e3b4754606b73747474747474747470665a4e4235281c0f020000000000000000000000000000000000000000000000000000000000000000040c141c232a31373d43494d52565a5d606365666869696a6a696968676563615e5b57534f4a45403a342d261f1710070000000000000000000000000000000000000915222e3a46525d656a6a6a6a6a645b5044382c1f130600000000000000000000000000000000101c2936434f5c69768390908376695c4f4336291c100300000000000000000000000000000000101c2936434f5c69768390908376695c4f4336291c1003000000000000000000000000000000000f1c2936424f5c6975828f908376695d5043362a1d100300000000000000000013202c3946535f6c7986939facaca0948a88888888888888888888888888888888888888888888888888888888888888887d7164574a3e3124170b0013202c3946535f6c798693a0acac9f9285786b5f5245382c1f120500000000000b1824313e4b5764717d8a97a4b1a79a8e8174675a4d4134271a0e0013202c3946535f6c798693a0aca79a8e8174675a4d4134271a0e01000a1723303d4a5663707d8a96a3b0a3968a7d7063564a3d3023170a0013202c3946535f6c7986938c7f7265594c3f3226190c00000000000000000000000000000000000f1b2835414e5a6774818d99a6aea295887c6f63636363636363636363636363636363636363636976828f9ca8aa9d9184776b5e5145382c1f12060000000d1a2633404d596673808d9aa6ada09386796d6053463a2d2013070000000000000000000000000000000000000000000000000c1926323f4c5965727f8c9386796c5f5346392c20130000000009131c262f39434c566069737c869099a3a49c95949aa2a59b91877d746a60564c42392f251b11080000000000000000000000000b1824313e4b5764717e8b989c9c9a8d8173675a4d44505d6a7784909c9c9c9386796d6053463a2d20130700000000000000000000000000000000000714202c3944505b636869696969696969665f57575757575f666969696969696968635a4f43372b1f12060000000000000000000e1a2733404d5966727f8c98a5b1a5988c7f73665a4d4134281c0f030000000714202d3945525e6b7884919daaaca093877a6d6154483b2e221508000000000b16212b36414b55606a747d87919ba4a39a91887e766d645c534b423a322a221a1818181818181818181818181816140f0a03000000000000000000000000000000000000030f1b26323e4a56616d7985919ca8ada195897d7165594e42362a1e120600000000000000000000000000000004101c28343f4b57636f7b87939eaaa99d92867a6e62564b3f33271b0f040000000000000000000000000000000000000000000000000916222f3c4955626f7c818181818181818176695c4f4336291c100300000000000000000000000000000000000000000000000000000000000000040d161e262e353c43494f54595e62666a6d6f717375757677777676757372706d6a67645f5b56514b453f3831292119110900000000000000000000000000000000000a1724303d4a56636e77777777766c6054473b2e21150800000000000000000000000000000000101c2936434f5c69768390908376695c4f4336291c100300000000000000000000000000000000101c2936434f5c69768390908376695c4f4336291c1003000000000000000000000000000000000f1c2936424f5c6975828f908376695d5043362a1d100300000000000000000013202c3946535f6c798693a0acb1a69c96959595959595959595959595959595959595959595959595959595959595958a7d7164574a3e3124170b0013202c3946535f6c798693a0acac9f9285786b5f5245382c1f120500000000000b1724313e4a5764717d8a97a4b1a79a8e8174675a4d4134271a0e0013202c3946535f6c798693a0aca79a8e8174675a4d4134271a0e01000a1723303d4a5663707d8a96a3b0a3968a7d7063564a3d3023170a0013202c3946535f6c7986938c7f7265594c3f3226190c00000000000000000000000000000000000d1926333f4c5865717e8b97a4b0a3978a7e71655856565656565656565656565656565656565f6b7885919eaaa79b8e8275695c5043362a1d11040000000d1a2633404d596673808d9aa6ada09386796d6053463a2d2013070000000000000000000000000000000000000000000000000c1926323f4c5965727f8c9386796c5f5346392c201300000000010a141d27313a444e57616b747e88919ba0a0a0a0a0a09d93897f756b62584e443a31271d1309000000000000000000000000000b1824313e4b5764717e8b98a4a79a8d8173675a4d44505d6a7784909da9a09386796d6053463a2d20130700000000000000000000000000000000000916222f3c4855616c757575757575757571665a4e4b4e5a667175757575757575746b6053473a2e2114080000000000000000000f1c2835424e5b6874818e9aa7b0a3968a7d7064574b3e3225190c0000000004111d2a3743505c6975828f9ca8aea295897c6f6356493d3023170a00000000040f1a242f39444e58626b757f89929ba5a39a91887f766e655d544c443c342c241c130b0b0b0b0b0b0b0b0b0b0b0a07030000000000000000000000000000000000000000000a16212d3945515d6874808c98a3afa5998e82766a5e52463b2f23170b0000000000000000000000000000000915202c3844505c6874808b97a3afa5998d8175695d52463a2e22160b000000000000000000000000000000000000000000000000000916222f3c4955626f7c898e8e8e8e8e8e8376695c4f4336291c1003000000000000000000000000000000000000000000000000000000000000040d161f2830383f474d545a60656a6e7276797c7e808182838484838282807e7c7a7773706b67625c565049423b332b231b1209000000000000000000000000000000000b1724313e4a5764717d8484847b6e6155483b2e22150800000000000000000000000000000000101c2936434f5c69768390908376695c4f4336291c100300000000000000000000000000000000101c2936434f5c69768390908376695c4f4336291c1003000000000000000000000000000000000f1c2936424f5c6975828f908376695d5043362a1d100300000000000000000013202c3946535f6c798693a0acb7aea7a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2978a7d7064574a3e3124170b0013202c3946535f6c798693a0acac9f9285786b5f5245382c1f120500000000000b1824313e4b5764717d8a97a4b1a79a8e8174675a4d4134271a0e0013202c3946535f6c798693a0aca79a8e8174675a4d4134271a0e01000a1723303d4a5663707d8a96a3b0a3968a7d7063564a3d3023170a0013202c3946535f6c7986938c7f7265594c3f3226190c00000000000000000000000000000000000b1724303d4956626f7b8894a1ada6998d8174685b4f4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a56626e7b8794a0ada5988c8073665a4d4134281b0f020000000d1a2633404d596673808d9aa6ada09386796d6053463a2d2013070000000000000000000000000000000000000000000000000c1926323f4c5965727f8c9386796c5f5346392c20130000000000020b151f28323c454f59626c757f8992939393939393938b81776d635950463c32281f150b01000000000000000000000000000b1824313e4b5764717e8b98a4a79a8d8173675a4d44505d6a7784909daaa09386796d6053463a2d2013070000000000000000000000000000000000091623303c4956636f7c8282828282828275685b4f424f5b6875828282828282827b6e6155483b2e221508000000000000000000101d2a3743505d6976838f9ca9aea295887b6f6255493c3023160a00000000020f1b2835414e5b6774818d9aa7b0a3978a7d7164574b3e3125180b000000000008131d27323c46505a636d768089939ca5a39a918880776f665e564e463e362d251d150d04000000000000000000000000000000000000000000000000000000000000000005111d2834404c58636f7b87939faaaa9e92867a6f63574b3f33271c100400000000000000000000000000010d1925313d4955606c7884909ca8aca094887c7065594d4135291e1206000000000000000000000000000000000000000000000000000916222f3c4955626f7c89969a9a9a9a908376695c4f4336291c10030000000000000000000000000000000000000000000000000000000000030d161f28313a424a51585f656b71767a7e8285888b8c8e8f909090908f8e8d8b898683807c77726d68615b544d453d352d241b12080000000000000000000000000000000b1724313e4a5764717d8a91887b6e6155483b2e22150800000000000000000000000000000000101c2936434f5c69768390908376695c4f4336291c100300000000000000000000000000000000101c2936434f5c69768390908376695c4f4336291c1003000000000000000000000000000000000f1c2936424f5c6975828f908376695d5043362a1d1003000000000000000000131f2c3946525f6c7986929facb4aaa19b9a9a9a9a9a9a9a9a9a9a9a9a9a9a9a9a9a9a9a9a9a9a9a9a9a9da4aeafa3968a7d7063574a3d3024170a0013202c3946535f6c7986929facac9f9286796c5f5246392c1f130600000000000b1825323e4b5864717e8b98a4b1a69a8d8173675a4d4034271a0d0013202c3946535f6c798693a0aca79a8e8174675a4d4134271a0e01000a1723303d4a5663707d8a96a3b0a3968a7d7063564a3d3023170a0013202c3946535f6c7986938c7f7265594c3f3226190c00000000000000000000000000000000000815212e3a4753606c7885919da9a99c9084776b5f53483d3d3d3d3d3d3d3d3d3d3d3d424d5966727e8a97a3aea195897c7064574b3e3225190c000000000d1a2633404d596673808d9aa6ada09386796d6053463a2d2013070000000000000000000000000000000000000000000000000c1926323f4c5965727f8c9386796c5f5346392c2013000000000000030d16202a333d47505a636d7781868686868686868683786f655b51483e342a20160d0300000000000000000000000000000b1824313e4b5764717e8b98a0a09a8d8173675a4d44505d6a7784909da0a09386796d6053463a2d2013070000000000000000000000000000000000091623303c4956636f7c898f8f8f8f8f8275685b4f424f5b6875828f8f8f8f8f887b6e6155483b2e221508000000000000000000121e2b3844515e6b7784919daaada094877a6d6154473b2e21150800000000000d1a2733404d596673808c99a6b1a5988b7e7265594c3f3226190c0000000000010b16202a343e48515b646e77818a939ca5a39a928981787068605850483f372f271f160e0600000000000000000000000000000000000000000000000000000000000000000c18242f3b47535f6b76828e9aa6afa3978b7f73675c5044382c2014090909090909090909090909090909121e2a36414d5965717d8995a1aca79b8f83776c6054483c3025190d01000000000000000000000000000000000000000000000000000916222f3c4955626f7c8996a2a7a79c908376695c4f4336291c100300000000000000000000000000000000000000000000000000000000010b151f28313a434c545c636a70767c82868b8e929597999b9c9d9d9d9d9c9b99989593908c88837e79736c665f574f473f362d241a100700000000000000000000000000000b1724313e4a5764717d8a95887b6e6155483b2e22150800000000000000000000000000000000101c2936434f5c69768390908376695c4f4336291c100300000000000000000000000000000000101c2936434f5c69768390908376695c4f4336291c1003000000000000000000000000000000000f1c2936424f5c6975828f908376695d5043362a1d1003000000000000000000121f2c3845525f6b7885929eabafa3988f8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e929ca8afa296897c6f6356493c3023160900121f2c3845525f6b7885929eabaca09386796d6053463a2d20130700000000000c1925323f4c5865727e8b98a5b2a6998c807366594d4033261a0d0013202c3946535f6c798693a0aca79a8e8174675a4d4134271a0e01000a1723303d4a5663707d8a96a3b0a3968a7d7063564a3d3023170a0013202c3946535f6c7986938c7f7265594c3f3226190c000000000000000000000000000000000006121f2b3744505c6975818d99a5aca094887c7064594d43383030303030303030323c47525e6a76828e9aa6aa9e9285796d6054483b2f23160a000000000d1a2633404d596673808d9aa6ada09386796d6053463a2d2013070000000000000000000000000000000000000000000000000c1926323f4c5965727f8c9386796c5f5346392c201300000000000000040e18212b353e48515b656e7879797979797979797970675d53493f362c22180e040000000000000000000000000000000b1824313e4b5764717e8b939393938d8173675a4d44505d6a7784909393939386796d6053463a2d2013070000000000000000000000000000000000091623303c4956636f7c89969c9c9c8f8275685b4f424f5b6875828f9c9c9c95887b6e6155483b2e221508000000000000000000121f2c3845525f6b7885929eabaca09386796d6053463a2d20130700000000000c1925323f4c5865727e8b98a5b2a6998c807366594d4033261a0d000000000000040e18222c363f49525c656e78818a939ba4a49b938a827a726a625a51494139312820180f070000000000000000000000000000000000000000000000000000000000000007131f2b36424e5a66717d8995a1ada79c9084786c6054483d31251915151515151515151515151515151517222e3a46525e6a76828d99a5aea2968a7e73675b4f43382c20140800000000000000000000000000000000000000000000000000000916222f3c4955626f7c8996a2afa99c908376695c4f4336291c10030000000000000000000000000000000000000000000000000000000009131d27313a434d555e666d747b82888d92979b9ea1a4a6a7a9a9a8a8a9a9a8a6a4a29f9c98948f8a847e777069615951483f362c22190e04000000000000000000000000000b1724313e4a5764717d8a95887b6e6155483b2e22150800000000000000000000000000000000101c2936434f5c69768390908376695c4f4336291c100300000000000000000000000000000000101c2936434f5c69768390908376695c4f4336291c1003000000000000000000000000000000000f1c2936424f5c6975828f908376695d5043362a1d1003000000000000000000111e2b3844515e6a7784919daaada09387818181818181818181818181818181818181818181818181818c99a6aea194887b6e6155483b2f22150900121e2b3844515e6b7784919daaada094877a6d6154473b2e21150800000000000d1a2633404d596673808c99a6b2a5988c7e7265594c3f3226190c0013202c3946535f6c798693a0aca79a8e8174675a4d4134271a0e01000a1723303d4a5663707d8a96a3b0a3968a7d7063564a3d3023170a0013202c3946535f6c7986938c7f7265594c3f3226190c0000000000000000000000000000000000030f1c2834404d5965717d8995a1aca4988c81756a5f544a4139322e2c2c2d2f343b434e58636f7a86929eaaa5998d8275695d5145382c201307000000000d1a2633404d596673808d9aa6ada09386796d6053463a2d2013070000000000000000000000000000000000000000000000000c1926323f4c5965727f8c9386796c5f5346392c20130000000000000000060f19232c363f49535c666c6c6c6c6c6c6c6c6c6c685e554b41372d241a1006000000000000000000000000000000000b1824313e4b5764717e8686868686868173675a4d44505d6a7784868686868686796d6053463a2d2013070000000000000000000000000000000000091623303c4956636f7c8996a3a89c8f8275685b4f424f5b6875828f9ca8a295887b6e6155483b2e22150800000000000000000013202c3946535f6c7986929facac9f9286796c5f5246392c1f130600000000000b1825323e4b5864717e8b98a4b1a69a8d8173675a4d4034271a0d0000000000000006101a242d37404a535c666f788189929aa3a59c948c847c746b635b534b433a322a21191108000000000000000000000000000000000000000000000000000000000000020e1a26323d4955616d7884909ca8aca094897d7165594d41352a222222222222222222222222222222222227333f4b57626e7a86929eaaa99d92867a6e62564a3f33271b0f0300000000000000000000000000000000000000000000000000000916222f3c4955626f7c8996a2afa99c908376695c4f4336291c100300000000000000000000000000000000000000000000000000000006101b252f39434c565f6770777f868d93999ea3a7aaa6a3a09e9d9c9c9c9c9d9ea0a2a5a9a8a4a09b958f89827b736b635a51483e342a20160c010000000000000000000000000b1724313e4a5764717d8a95887b6e6155483b2e22150800000000000000000000000000000000101c2936434f5c69768390908376695c4f4336291c100300000000000000000000000000000000101c2936434f5c69768390908376695c4f4336291c1003000000000000000000000000000000000f1c2936424f5c6975828f908376695d5043362a1d1003000000000000000000101d2a3643505c6976838f9ca9ada094877a7474747474747474747474747474747474747474747474808d9aa6aca093867a6d6054473a2e21140700111d2a3743505d6976838f9ca9aea295887b6f6255493c3023160a00000000010f1b2835414e5a6774818d9aa7b0a4978a7d7164574b3e3125180b0013202c3946535f6c798693a0aca79a8e8174675a4d4134271a0e01000a1723303d4a5663707d8a96a3b0a3968a7d7063564a3d3023170a0013202c3946535f6c7986938c7f7265594c3f3226190c0000000000000000000000000000000000000c1824303d4955616d7884909ca7a99d92877b71665c534a433e3a3938393c3f454d565f6a75808c97a3aca095897d7165594d4135281c1004000000000d1a2633404d596673808d9aa6ada09386796d6053463a2d2013070000000000000000000000000000000000000000000000000c1926323f4c5965727f8c9386796c5f5346392c201300000000000000000007111a242e37414a545b5f5f5f5f5f5f5f5f5f5f5c564d43392f251b120800000000000000000000000000000000000b1724313e4a57637079797979797979797266594d43505c697479797979797979766b5f5346392d2013060000000000000000000000000000000000091623303c4956636f7c8996a3a89c8f8275685b4f424f5b6875828f9ca8a295887b6e6155483b2e22150800000000000000000013202c3946535f6c798693a0acac9f9285786b5f5245382c1f120500000000000b1824313e4b5764717d8a97a4b1a79a8e8174675a4d4134271a0e000000000000000008121b252e38414a545d666e7780899199a2a69e968e867d756d655d554c443c332b231a11090000000000000000000000000000000000000000000000000000000000000915212d3944505c6874808b97a3afa5998d81756a5e52463a2f2f2f2f2f2f2f2f2f2f2f2f2f2f2f2f2f2f2f38444f5b67737f8b97a3aea4998d8175695d52463a2e22160b0000000000000000000000000000000000000000000000000000000916222f3c4955626f7c8996a2afa99c908376695c4f4336291c10030000000000000000000000000000000000000000000000000000020d17222d37414b555e687179828a91989ea4aaa7a29d9a969492908f8f8f8f90929496999da1a6aba6a19a948d857d756c635a50463c32281d13080000000000000000000000000b1724313e4a5764717d8a95887b6e6155483b2e22150800000000000000000000000000000000101c2936434f5c69768390908376695c4f4336291c100300000000000000000000000000000000101c2936434f5c69768390908376695c4f4336291c1003000000000000000000000000000000000f1c2936424f5c6975828f908376695d5043362a1d10030000000000000000000f1c2835424e5b6874818d9aa7aea195887b6f67676767676767676767676767676767676767676875828e9ba8aa9e9185786b5f5245392c1f1306000f1c2935424e5b6874818e9aa7b0a3968a7d7064574b3e3225190c0000000004111d2a36434f5c6975828f9ba8afa295897c6f6356493d3023170a0013202c3946535f6c798693a0aca79a8e8174675a4d4134271a0e01000a1723303d4a5663707d8a96a3b0a3968a7d7063564a3d3023170a0013202c3946535f6c7986938c7f7265594c3f3226190c0000000000000000000000000000000000000814202c3844505c68737f8a96a1aca3988d82786e655c554f4a47464546484b50575f68717c86919da8a69b8f84786c6155493d3125190c00000000000d1a2633404d596673808d9aa6ada09386796d6053463a2d2013070000000000000000000000000000000000000000000000000c1926323f4c5965727f8c9386796c5f5346392c20130000000000000000000008121c252f38424a5052535353535353535353504b443b31271d13090000000000000000000000000000000000000916222f3b47535e676c6c6c6c6c6c6c6c6960554a404c58626a6c6c6c6c6c6c6c6b645a4f43372b1e12050000000000000000000000000000000000091623303c4956636f7c8996a0a09c8f8275685b4f424f5b6875828f9ca0a095887b6e6155483b2e22150800000000000000000013202c3946535f6c798693a0acac9f9285786b5f5245382c1f120500000000000b1724313e4a5764717d8a97a4b1a79a8e8174675a4d4134271a0e00000000000000000009131c262f38424b545c656e767f879098a0a8a0978f877f776f675e564e453d352c231b1209000000000000000000000000000000000000000000000000000000000005101c2834404b57636f7b87929eaaaa9e92867a6e62564b3f3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c4854606c78848f9ba7aba094887c7064594d4135291d12060000000000000000000000000000000000000000000000000000000916222f3c4955626f7c8996a2afa99c908376695c4f4336291c1003000000000000000000000000000000000000000000000000000008131e29343e49535d67707a838b949ba3a9a8a29c96918d8a878584838282838485878a8d91959aa0a6aca59e978f877e756c62584e443a2f24190e0300000000000000000000000b1724313e4a5764717d8a95887b6e6155483b2e22150800000000000000000000000000000000101c2936434f5c69768390908376695c4f4336291c100300000000000000000000000000000000101c2936434f5c69768390908376695c4f4336291c1003000000000000000000000000000000000f1c2936424f5c6975828f908376695d5043362a1d10030000000000000000000d1a2733404c5966727e8b98a4afa3968a7d70645a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5e6b7784909daaa89c8f8376695d5044372a1e1104000e1a2734404d5966737f8c98a5b1a5988c7f73665a4d4134281b0f030000000713202c3945525e6b7784919daaada094877a6e6154483b2f2215090013202c3946535f6c798693a0aca79a8e8174675a4d4134271a0e01000a1723303d4a5663707d8a96a3b0a3968a7d7063564a3d3023170a0013202c3946535f6c7986938c7f7265594c3f3226190c00000000000000000000000000000000000004101c2834404b57626e79848f9aa5a99f948a80776e67605a565452525354575c61687179838d98a3aaa0958a7e73675c5044382c20140800000000000d1a2633404d596673808d9aa6ada09386796d6053463a2d2013070000000000000000000000000000000000000000000000000c1926323f4c5965727f8c9386796c5f5346392c201300000000000000000000000a131d2630383f434646464646464646464644403a32291f150b0100000000000000000000000000000000000007131f2b37424c555c5f5f5f5f5f5f5f5f5d574e443b4650595e5f5f5f5f5f5f5f5f5a52493e33271b0f020000000000000000000000000000000000091623303c4956636f7c89939393938f8275685b4f424f5b6875828f93939393887b6e6155483b2e22150800000000000000000013202c3946535f6c798693a0acac9f9285786b5f5245382c1f120500000000000b1824313e4b5764717d8a97a4b1a79a8e8174675a4d4134271a0e000000000000000000010a141d262f39424a535c646d757e868e969fa7a19991898178706860574f473e352d241b120900000000000000000000000000000000000000000000000000000000000c17232f3b47525e6a76828e99a5aea2978b7f73675b4f4848484848484848484848484848484848484848484d5965707c8894a0aca79b8f83776c6054483c3025190d010000000000000000000000000000000000000000000000000000000916222f3c4955626f7c8996a2afa99c908376695c4f4336291c100300000000000000000000000000000000000000000000000000030e1925303b45505b656f79838c959da5ada59e97908b86817d7b78777675757677787a7d8185898f959ca3aaa9a19990877e746a60564b41362b20150900000000000000000000000b1724313e4a5764717d8a95887b6e6155483b2e22150800000000000000000000000000000000101c2936434f5c69768390908376695c4f4336291c100300000000000000000000000000000000101c2936434f5c69768390908376695c4f4336291c1003000000000000000000000000000000000f1c2936424f5c6975828f908376695d5043362a1d10030000000000000000000b1825313e4a5763707c8995a2aea5988c8073675a4e4d4d4d4d4d4d4d4d4d4d4d4d4d4d4d55616d7a86939faca6998d8074675b4e4235281c0f03000c1825323e4b5764707d8996a2afa79b8e8275695c5044372b1f13080201020b17232f3b4854616d7a86939facaa9e9185786c5f5346392d2014070013202c3946535f6c798693a0aca79a8e8174675a4d4134271a0e01000a1723303d4a5663707d8a96a3b0a3968a7d7063564a3d3023170a0013202c3946535f6c7986938c7f7265594c3f3226190c000000000000000000000000000000000000000c17232f3a46515d68737e89939da7a69c92898078716b6663605f5f5f6164686d737a838c959faaa3988e83786d62564b3f34281c100400000000000d1a2633404d596673808d9aa6ada09386796d6053463a2d2013070000000000000000000000000000000000000000000000000c1926323f4c5965727f8c9386796c5f5346392c20130000000000000000000000010b141e262d33373939393939393939393938342f2820170d0300000000000000000000000000000000000000030e1a25303a434b505353535353535353514c453c353e474e5253535353535353524f4940372c21160a000000000000000000000000000000000000091623303c4956636f7c8686868686868275685b4f424f5b6875828686868686867b6e6155483b2e22150800000000000000000013202c3946535f6c7986929facac9f9286796c5f5246392c1f130600000000000b1825323e4b5864717e8b98a4b1a69a8d8173675a4d4034271a0d00000000000000000000020b141d262f38414a525b636c747c858d959da5a39b938b827a7269615950473f362d241b12090000000000000000000000000000000000000000000000000000000007131e2a36424e5965717d8994a0aca79b8f84786c6055555555555555555555555555555555555555555555555d6975818d99a5aea2968a7e73675b4f43372c201408000000000000000000000000000000000000000000000000000000000916222f3c4955626f7c8996a2afa99c908376695c4f4336291c10030000000000000000000000000000000000000000000000000008141f2a36414c57626c77818b959ea7ada49b938c857f7a75716e6c6a696969696a6c6e7174797e848a9198a1a9aba29990867c72675d52473c31261b0f04000000000000000000000b1724313e4a5764717d8a95887b6e6155483b2e22150800000000000000000000000000000000101c2936434f5c69768390908376695c4f4336291c100300000000000000000000000000000000101c2936434f5c69768390908376695c4f4336291c1003000000000000000000000000000000000f1c2936424f5c6975828f908376695d5043362a1d10030000000000000000000916222f3b4854616d7986929eaba89b8f83766a5e5246414141414141414141414141414c5864717d8996a2aea2968a7d7164584c3f33261a0d01000a16232f3c4855616e7a87939facaa9d9185786c6054483c302419110f0e0f121c27333f4b5764707c8995a2aea79b8f8276695d5044372b1e12050013202c3946535f6c798693a0aca79a8e8174675a4d4134271a0e01000a1723303d4a5663707d8a96a3b0a3968a7d7063564a3d3023170a0013202c3946535f6c7986938c7f7265594c3f3226190c0000000000000000000000000000000000000007121e2935404b56616c77818b959ea8a49b928a837c77726f6d6c6b6c6e7074787e858c959ea7a49b91877c72675c51453a2e23170b0000000000000d1a2633404d596673808d9aa6ada09386796d6053463a2d2013070000000000000000000000000000000000000000000000000c1926323f4c5965727f8c9386796c5f5346392c2013000000000000000000000000020c141c22272b2c2c2c2c2c2c2c2c2c2c2b28231d160e0500000000000000000000000000000000000000000009141e2831394044464646464646464645413b332c353c42454646464646464646433e372e251b10050000000000000000000000000000000000000916232f3c4955626e787979797979797973675b4e424e5b677379797979797979776d6154483b2e211508000000000000000000121f2c3845525f6b7885929eabaca09386796c6053463a2d20130700000000000c1925323f4c5865727e8b98a5b2a6998c807366594d4033261a0d0000000000000000000000020b141d262f384049515a626a727a838b939ba3a59d948c847b736b6259514840372e241b1208000000000000000000000000000000000000000000000000000000020e1a25313d4955606c7884909ca7aca094887c70646262626262626262626262626262626262626262626262626e7a86929da9a99d91867a6e62564a3f33271b0f03000000000000000000000000000000000000000000000000000000000916222f3c4955626f7c8996a2afa99c908376695c4f4336291c1003000000000000000000000000000000000000000000000000010d1925303c47525d68737e89939da7aea49b928a827a746e6965625f5d5c5c5c5c5d5f6164686d72787f878f97a0a9aba2988e84796f64594e42372c201409000000000000000000000b1724313e4a5764717d8a95887b6e6155483b2e22150800000000000000000000000000000000101c2936434f5c69768390908376695c4f4336291c100300000000000000000000000000000000101c2936434f5c69768390908376695c4f4336291c1003000000000000000000000000000000000f1c2936424f5c6975828f908376695d5043362a1d10030000000000000000000713202c3845515d6a76828e9ba7ab9f92867a6e63574c40363434343434343434343a45515c6874818d99a5ab9f93877a6e6155493c3024170b00000714202d3946525e6b7783909ca8ada194887c7064584c41362b221e1c1b1c1e232d3844505b6774808c98a5b0a4988c7f73665a4e4135281c0f030013202c3946535f6c798693a0aca79a8e8174675a4d4134271a0e01000a1723303d4a5663707d8a96a3b0a3968a7d7063564a3d3023170a0013202c3946535f6c7986938c7f7265594c3f3226190c00000000000000000000000000000000000000010d18242f3a45505a656f79838c959ea6a49c958e88837e7b797878797a7c8084898f969ea7a39b92897f756a60554a3f34291d12060000000000000d1a2633404d596673808d9aa6ada09386796d6053463a2d2013070000000000000000000000000000000000000000000000000c1926323f4c5965727f8c9386796c5f5346392c201300000000000000000000000000020a11171b1e202020202020202020201f1c18120c0400000000000000000000000000000000000000000000020c161f282f3438393939393939393938353029232b313639393939393939393937322c251c1309000000000000000000000000000000000000000814212d3a46525d666c6c6c6c6c6c6c6c6961574b3f4b5761696c6c6c6c6c6c6c6c665c5145382c201307000000000000000000121e2b3844515e6b7784919daaada094877a6d6154473b2e21150800000000000d1a2633404d596673808c99a6b2a5988c7e7265594c3f3226190c000000000000000000000000020b141d262e373f4850586069717981899199a1a69e968d857c746b635a524940372d241a11070000000000000000000000000000000000000000000000000000000915212c3844505c67737f8b97a2aea5998d81756f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f727e8a96a2aea4988d8175695d51463a2e22160a00000000000000000000000000000000000000000000000000000000000916222f3c4955626f7c8996a2afa99c908376695c4f4336291c100300000000000000000000000000000000000000000000000006121e2a35414d58636f7a85909aa5afa69c928980777069635d59555351504f4f50515255585c61676d757d858e97a1abaaa0968b80756a5f54483d3125190e020000000000000000000b1724313e4a5764717d8a95887b6e6155483b2e22150800000000000000000000000000000000101c2936434f5c69768390908376695c4f4336291c100300000000000000000000000000000000101c2936434f5c69768390908376695c4f4336291c1003000000000000000000000000000000000f1c2936424f5c6975828f908376695d5043362a1d100300000000000000000004101d2935424e5a66727e8a96a2aea3978b7f73685d52483e352f2a2828292b3038414b56626d7985919da9a79b8f83766a5e5246392d211408000005111d2a36424f5b6773808c98a4b0a4988c8174695d52473d342e2a2828282a2e353f4955606c7884909ca8aca094887c6f63574b3e3225190d000013202c3946535f6c798693a0aca79a8e8174675a4d4134271a0e01000a1723303d4a5663707d8a96a3b0a3968a7d7063564a3d3023170a0013202c3946535f6c7986938c7f7265594c3f3226190c000000000000000000000000000000000000000007121e29333e49535d67717a838c949ca3a69f99938f8b888685858687898c90959aa1a7a199918980766d63594e44392e23180c010000000000000d1a2633404d596673808d9aa6ada09386796d6053463a2d2013070000000000000000000000000000000000000000000000000c1926323f4c5965727f8c9386796c5f5346392c2013000000000000000000000000000000060b0f121313131313131313131312100c0701000000000000000000000000000000000000000000000000040d161d23282b2c2c2c2c2c2c2c2c2c29241e1920262a2c2c2c2c2c2c2c2c2c2a27211b130a010000000000000000000000000000000000000005111d2935404b545c5f5f5f5f5f5f5f5f5e584f453a454f585e5f5f5f5f5f5f5f5f5b544a3f34281c1004000000000000000000111d2a3743505d6976838f9ca9aea195887b6f6255493c2f23160a00000000010f1b2834414e5a6774818d9aa7b0a4978a7d7164574b3e3125180b00000000000000000000000000020b141c252d363e464e575f676f777f878f979fa79f978f867e756c645b52493f362c23190f05000000000000000000000000000000000000000000000000000004101c28333f4b57636e7a86929ea9a99d91867b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b838f9ba7aba094887c7064594d4135291d120600000000000000000000000000000000000000000000000000000000000916222f3c4955626f7c8996a2afa99c908376695c4f4336291c10030000000000000000000000000000000000000000000000000a16222e3a46525e6975808b96a1acaa9f958a81776e665e57524d494644434242434446484c50565c636b737c858f99a4afa79d92877b7065594d42362a1e12060000000000000000000b1724313e4a5764717d8a95887b6e6155483b2e22150800000000000000000000000000000000101c2936434f5c69768390908376695c4f4336291c100300000000000000000000000000000000101c2936434f5c69768390908376695c4f4336291c1003000000000000000000000000000000000f1c2936424f5c6975828f908376695d5043362a1d1003000000000000000000010d1925323e4a56626e7a86929da9a79c9085796e645a5047403a37353435383c424a535d68737e8a95a1ada2968a7e72665a4e42362a1d11050000010e1a26333f4b57636f7b87939faba99d91857a6e64594f463f3a37353435373a3f47515b66717d8994a0aca89c9084786c6053473b2f22160a000013202c3946535f6c798693a0aca79a8e8174675a4d4134271a0e01000a1723303d4a5663707d8a96a3b0a3968a7d7063564a3d3023170a0013202c3946535f6c7986938c7f7265594c3f3226190c0000000000000000000000000000000000000000010c17222c37414b555f68717a828a91989ea3a49f9b9795939292929496989ca0a6a19c968f8780776e645b51473c32271c1106000000000000000d1a2633404d596673808d9aa1a1a09386796d6053463a2d2013070000000000000000000000000000000000000000000000000c1926323f4c5965727f8c9386796c5f5346392c20130000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000040b12181c1f20202020202020201f1c19130e151a1d1f202020202020201f1e1b161009010000000000000000000000000000000000000000010d19242f39424a505353535353535353514d463d333d464d5153535353535353524f4a42382e23180c000000000000000000000f1c2935424f5b6874818e9aa7b0a3968a7d7064574b3e3225180c0000000004111d2a36434f5c6975828f9ba8afa295897c6f63564a3d3023170a0000000000000000000000000000020a131b242c343d454d555d656d757d858d959da6a19890877e756d645b51483e352b21170d0200000000000000000000000000000000000000000000000000000b17232f3a46525e6a75818d99a5aea2968c8888888888888888888888888888888888888888888888888888888a949faba79b8f83776b6054483c3024190d0100000000000000000000000000000000000000000000000000000000000916222f3c4955626f7c8996a2afa99c908376695c4f4336291c10030000000000000000000000000000000000000000000000020e1a26333f4b57626e7a86919da8afa4998e83786e655c544c46413d3a383636363637393c40454a5159616a737d88929da8aea3988d81766a5e52463a2e22160a0000000000000000000b1724313e4a5764717d8a95887b6e6155483b2e22150800000000000000000000000000000000101c2936434f5c69768390908376695c4f4336291c100300000000000000000000000000000000101c2936434f5c69768390908376695c4f4336291c1003000000000000000000000000000000000f1c2936424f5c6975828f908376695d5043362a1d1003000000000000000000000916222e3a46525d6975818c98a3aca1968b80766c6259514b464342414244474d535c656f79848f9ba6a89d91867a6e62564a3e32261a0e010000000a17232f3b47535f6b77838e9aa5ada2968b80756b6158504a464342414243464b5159636d77838e99a5aea3978b8074685c4f43372b1f1306000013202c3946535f6c798693a0aca79a8e8174675a4d4134271a0e01000a1723303d4a5663707d8a96a3b0a3968a7d7063564a3d3023170a0013202c3946535f6c7986938c7f7265594c3f3226190c00000000000000000000000000000000000000000006101b252f3a434d565f68707880868c92979b9fa2a4a1a09f9f9fa0a2a4a19e9a96918b847d756d655c53493f352b20160b00000000000000000d1a2633404d596673808d949494949386796d6053463a2d2013070000000000000000000000000000000000000000000000000c1926323f4c5965727f8c9386796c5f5346392c2013000000000001070b0e0f0f0f0f0f0f0f0f0f0e0b060104090c0f0f0f0f0f0f0f0f0f0e0c09040000000000000000000000000000000000000000000001070c1012131313131313131312100d0803090e11131313131313131313110e0a05000000000000000000000000000000000000000000000007121d2730383f44464646464646464645413c342b343c41454646464646464646433f382f261c1106000000000000000000000e1a2734404d5966737f8c98a5b1a5988c7f7266594d4134281b0f030000000713202c3845525e6b7784909daaada094877a6e6154483b2f2215090000000000000000000000000000000109121a222b333b434b535b636b737b838b949da5a29990887f766d635a50473d33291e140a000000000000000000000000000000000000000000000000000006121e2a36414d5965717c8894a0aca89e97959595959595959595959595959595959595959595959595959595969ca5aea2968a7e73675b4f43372b2014080000000000000000000000000000000000000000000000000000000000000916222f3c4955626f7c8996a2afa99c908376695c4f4336291c1003000000000000000000000000000000000000000000000005111e2a36434f5b67737f8b97a2aeaa9e93877c71675c534a423b35302d2b2a2929292b2d3034393f474f58616b76818c97a2aea99e92867a6f63574b3e32261a0e0100000000000000000b1724313e4a5764717d8a95887b6e6155483b2e22150800000000000000000000000000000000101c2936434f5c69768390908376695c4f4336291c100300000000000000000000000000000000101c2936434f5c69768390908376695c4f4336291c1003000000000000000000000000000000000f1c2936424f5c6975828f908376695d5043362a1d10030000000000000000000005111d2935414d5964707b86919ca7a79d92887e746b635c5752504e4e4f5154585e656e77818b96a1aca2978c8075695d52463a2e22160a0000000007131f2b37434f5a66727d89949faaa89c92877d736a625b5652504e4e4e5052565c636b747e89949faaa89d91867a6f63574b3f33271b0f03000013202c3946535f6c798693a0aca79a8e8174675a4d4134271a0e01000a1723303d4a5663707d8a96a3b0a3968a7d7063564a3d3023170a0013202c3946535f6c7986938c7f7265594c3f3226190c0000000000000000000000000000000000000000000009131e28313b444d565e666e757b81868b8f929598999a9b9b9b9a999795928e8a858079736b645b534a41372d23190f040000000000000008121b2633404d5966738088888888888886796d6053463a2d2013070000000000000000000000000000000000000000000000000c1926323f4c5965727f8c9386796c5f5346392c201300000000060d12171a1c1c1c1c1c1c1c1c1c1a17120c0f15191b1c1c1c1c1c1c1c1c1b19140f09010000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000010b151e272e333739393939393939393835302a222a303538393939393939393937332d261d140a00000000000000000000000c1825323e4b5764707d8996a2afa79b8e8275695c5044372b1f13080201020b17232f3b4854616d7986939facaa9e9185786c5f5346392d2014070000000000000000000000000000000000081019212931394149515961697179828a939ca5a29a91887f756c62594f453b30261b110600000000000000000000000000000000000000000000000000010d1925313d4854606c78838f9ba7b0a8a3a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a6aea99d91857a6e62564a3e33271b0f030000000000000000000000000000000000000000000000000000000000000916222f3c4955626f7c8996a2afa99c908376695c4f4336291c100300000000000000000000000000000000000000000000000815212d3a46525f6b77838f9ba7b1a5998d82766b60554b4138302a24211e1d1c1c1d1e2024282e353d464f5a646f7a86919da9afa3978b7f73675b4e42362a1d110500000000000000000b1724313e4a5764717d8a95887b6e6155483b2e22150800000000000000000000000000000000101c2936434f5c69768390908376695c4f4336291c100300000000000000000000000000000000101c2936434f5c69768390908376695c4f4336291c1003000000000000000000000000000000000f1c2936424f5c6975828f908376695d5043362a1d100300000000000000000000010d1925303c48535e6a75808b95a0aaa49990867d756e68625f5c5b5b5b5d60646970778089939da7a59b90857a6f63584c4135291d120600000000030e1a26323e4a55616c77828d98a2aca3998f857c746d67625f5c5b5b5b5c5f62676d757d87909ba5aba1968b8075695e52463b2f23170b00000013202c3946535f6c798693a0aca79a8e8174675a4d4134271a0e01000a1723303d4a5663707d8a96a3b0a3968a7d7063564a3d3023170a0013202c3946535f6c7986938c7f7265594c3f3226190c00000000000000000000000000000000000000000000020c161f29323b444c545c636a70757a7f8386898b8c8e8e8e8e8d8c8a8885827e79746e686159524941382f251b110700000000000000040f1a242d35404c5966727b7b7b7b7b7b7b7b786c5f5346392d2013060000000000000000000000000000000000000000000000000c1926323f4c5965727f8c9386796c5f5346392c20130000000710171e232729292929292929292927231e171a20252829292929292929292825201a130b020000000000000000000000000000000000000000000000000000000508090a0a0a0a0a0a0a0a090805010000000000000000000000000000000000000000000000000000000000000000000000030c151c23282b2c2c2c2c2c2c2c2c2c29251f181f25292c2c2c2c2c2c2c2c2c2b27221c140b0200000000000000000000000a16232f3c4855616e7a87939facaa9d9185786c6054473b302419110f0e0f111b27333f4b5764707c8995a2aea89b8f8276695d5044372b1e1205000000000000000000000000000000000000070f171f272f373f474f575f677078818a939ca5a39a91887e746b61574c42382d22170c01000000000000000000000000000000000000000000000000000814202c38434f5b67737e8a96a2aeb3afaaa3a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a2a8afb2b0a4988d8175695d51463a2e22160a000000000000000000000000000000000000000000000000000000000000000916222f3c4955626f7c8996a2afa99c908376695c4f4336291c100300000000000000000000000000000000000000000000000b1724303d4956626e7b87939facada195897d7165594e43392f261e191412100f0f101114181d232b343e48535e6975818c98a4b0a79b8f83776a5e5245392d20140700000000000000000b1724313e4a5764717d8a95887b6e6155483b2e22150800000000000000000000000000000000101c2936434f5c69768390908376695c4f4336291c100300000000000000000000000000000000101c2936434f5c69768390908376695c4f4336291c1003000000000000000000000000000000000f1c2936424f5c6975828f908376695d5043362a1d100300000000000000000000000814202b37424d58636e79848e98a1aaa29890878079736e6b696867686a6c70757a8189929ba5a79d93897e74695e52473c3024190d0100000000000a16212d39444f5b66717c86909aa4aba1978e867e78736e6b69686768696b6e73787f879099a2aca3998f847a6f63584d41362a1e120700000013202c3946535f6c798693a0aca79a8e8174675a4d4134271a0e01000a1723303d4a5663707d8a96a3b0a3968a7d7063564a3d3023170a0013202c3946535f6c7986938c7f7265594c3f3226190c0000000000000000000000000000000000000000000000040d17202a333b424a51585f656a6f73777a7c7e808181828181807e7b7976726d68635d564f48423c342a20160b00000000000000000915202b363f474d56616a6e6e6e6e6e6e6e6e6d665b5044372b1e12050000000000000000000000000000000000000000000000000c1926323f4c5965727f8c9386796c5f5346392c2013000006101922292f33353636363636363635332f2921252c3134363636363636363634312c251d140b00000000000000000000000000000000000000000000000000060c11141617171717171717171614110c070000000000000000000000000000000000000000000000000000000000000000000000030a11171b1e20202020202020201f1d19140e14191d1f20202020202020201e1b17110a020000000000000000000000000714202d3946525e6b7783909ca8ada194887c7064584c41352b221d1b1a1b1d232d38444f5b6773808c98a5b0a4988c8073675a4e4135281c0f0300000000000000000000000000000000000000050d151d252d353d454d555e666f78818a939ca6a39a90877c73685e54493f34291e130700000000000000000000000000000000000000000000000000040f1b27333f4a56626e7a86919da9b5aca1989494949494949494949494949494949494949494949494969ea9b4aba094887c7064584d4135291d1106000000000000000000000000000000000000000000000000000000000000000916222f3c4955626f7c8996a2afa99c908376695c4f4336291c100300000000000000000000000000000000000000000000000d1a26333f4c5865717e8a97a3afaa9d9185786c6054493d32271d140d08050300000205080c1219222c36414d5864707c8894a0adab9f93877a6e6155483c2f23160a00000000000000000b1724313e4a5764717d8a95887b6e6155483b2e22150800000000000000000000000000000000101c2936434f5c69768390908376695c4f4336291c100300000000000000000000000000000000101c2936434f5c69768390908376695c4f4336291c1003000000000000000000000000000000000f1c2936424f5c6975828f908376695d5043362a1d10030000000000000000000000030f1a25313c47525d67727c868f98a1a9a199918a847f7b787574747576797c80868c939ba4a69e958b81776d62574c41362a1f140800000000000005111c28333e49545f6a747e89929ba4a9a0989089837e7a787675747576787b7e848a9199a2aba39a91877d73685d52473c3025190e0200000013202c3946535f6c798693a0aca79a8e8174675a4d4134271a0e01000a1723303d4a5663707d8a96a3b0a3968a7d7063564a3d3023170a0013202c3946535f6c7986938c7f7265594c3f3226190c0000000000000000000000000000000000000000000000030f1b26313c454d53555555595e63676a6d707273747475747473716f6c6966615d57555555534d463c32271c1004000000000000000e1a26323d4751595d5e5f6161616161616161605c544a3f33271b0f030000000000000000000000000000000000000000000000000c1926323f4c5965727f8c9386796c5f5346392c201300030e18222c343a3f4242424242424242423f3a332b2f373d414242424242424242413d372f261c120700000000000000000000000000000000000000000000010a11181d2123232323232323232323211d18110a020000000000000000000000000000000000000000000000000000000000000000000000060b0f12131313131313131312100d0803080d10121313131313131313120f0b06000000000000000000000000000005111d2a36424f5b6774808c98a4b0a4988c8074695d52473d342d2a2827282a2e353f4954606c7884909ca8aca094887c7063574b3e3226190d000000000000000000000000000000000000000000030b131b232b333b434c545d666e77818a949da7a2988f857a70655b50453a2f24190d02000000000000000000000000000000000000000000000000000b16222e3a46515d6975818d98a4b0a79b8f87878787878787878787878787878787878787878787878c98a4b1a79b8f83776b5f54483c3024190d01000000000000000000000000000000000000000000000000000000000000000916222f3c4955626f7c8996a2afa99c908376695c4f4336291c100300000000000000000000000000000000000000000000000f1b2835414e5b6774818d99a6b2a79a8e8175695c5044382c20150b0200000000000000000007101a25303c4854606c7884919daaafa296897d7064574b3e3225180c00000000000000000b1724313e4a5764717d8a95887b6e6155483b2e22150800000000000000000000000000000000101c2936434f5c69768390908376695c4f4336291c100300000000000000000000000000000000101c2936434f5c69768390908376695c4f4336291c1003000000000000000000000000000000000f1c2936424f5c6975828f908376695d5043362a1d10030000000000000000000000000914202b36404b55606a747d868f979fa6a39c95908b8784828181828385888c91979ea5a49c948c83796f655b50463b3025190e03000000000000000b16222d38434e58626d768089929aa1a8a29b948f8a8784828281828284878b8f959ba3a8a19991887f756b61564c41362b1f14080000000013202c3946535f6c798693a0aca79a8e8174675a4d4134271a0e01000a1723303d4a5663707d8a96a3b0a3968a7d7063564a3d3023170a0013202c3946535f6c7986938c7f7265594c3f3226190c00000000000000000000000000000000000000000000000714202c38434e575e6262626262615c5e616365666768686767666462605d5c6162626262625f584e44382d20140800000000000000111d2a36424e59636a6b6b6b6b69635b54545454504a42382d22170b000000000000000000000000000000000000000000000000000c1926323f4c5965727f8c9386796c5f5346392c20130009141f2a343e454b4f4f4f4f4f4f4f4f4f4b453d343841484d4f4f4f4f4f4f4f4f4d4841382e24190d020000000000000000000000000000000000000000010a131b23292d2f3030303030303030302d29231c140b01000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000020e1a27333f4b57636f7b88939faba89d91857a6e63594f463f3936353435363a3f47505b66717c8894a0aca89c9084786c6054473b2f22160a00000000000000000000000000000000000000000000010911192129313a424b545c656e78828b95a0aaa0968c82776c62574c40352a1e13070000000000000000000000000000000000000000000000000006121d2935414d5864707c88949faba79b8e827a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7f8b97a4aea2968a7e72675b4f43372b20140800000000000000000000000000000000000000000000000000000000000000000916222f3c4955626f7c8996a2afa99c908376695c4f4336291c10030000000000000000000000000000000000000000000000101d2a3643505c6976828f9ca8b1a4988b7e7266594d4034281c1004000000000000000000000008141f2b3744505c6875828e9aa7b1a5988c7f7366594d4033271a0e00000000000000000b1724313e4a5764717d8a95887b6e6155483b2e22150800000000000000000000000000000000101c2936434f5c69768390908376695c4f4336291c100300000000000000000000000000010507101c2936434f5c69768390908376695c4f4336291c1007050100000000000000000000000000000f1c2936424f5c6975828f908376695d5043362a1d1003000000000000000000000000030e19242f39444e58626b747d858d949ba1a6a19b9793918f8e8e8e909295989da2a59f99928b837a71675d53493f34291e1308000000000000000005101b26313c46515b646e77808890979da3a6a09b9793918f8e8e8e8f9193979ba0a6a39d968f877f766d63594f453a2f24190e030000000013202c3946535f6c798693a0aca79a8e8174675a4d4134271a0e01070b1723303d4a5663707d8a96a3aea3968a7d7063564a3d3023170a0013202c3946535f6c7986938c7f7265594c3f3226190c0a0a0a0a0a0a0a0a0906020000000000000000000000000a16232f3c48545f696e6f6f6f6f6d675f5856585a5a5b5b5b5a595856575f666d6f6f6f6f6f6a6055493d3024170b00000000000000131f2c3945525e6b7577777777756d645c544c47443f382f261c1106000000000000000000000000000000000000000000000000000c1926323f4c5965727f8c9386796c5f5346392c2013000d1925313c4650575b5c5c5c5c5c5c5c5b574f463b404a53595c5c5c5c5c5c5c5c59534a40352a1e1206000000000000000000000000000000000000000008121c252d34393c3d3d3d3d3d3d3d3d3c39342e261d130900000000000000000000000000000000000000000000000000000000000000000104070a0c0e0f111212131313131212100f0d0b0906030000000000000000000000000000000000000000000000000000000b17232f3b47535f6b77838e9aa5ada2968b80756b6158504a464341414143464a5159626c77828e99a5aea3978b8074685c5044372b1f1307000000000000000000000001020304050708090908050100070f171f283039424a535c666f79848e98a3a89e94897e73685d52463b2f24180c00000000000000000000000000000000000000000000000000010d1924303c48545f6b77838f9ba6ab9f93877b6f6d6d6d6d6d6d6d6d6d6d6d6d6d6d6d6d6d6d7884909ca8a99d9185796e62564a3e33271b0f0300000000000000000000000000000000000000000000000000000000000000000916222f3c4955626f7c8996a2afa99c908376695c4f4336291c10030000000000000000000000000000000000000000000000121e2b3844515e6a7784919daaafa396897d7063574a3e3125180c000000000000000000000000030f1b2834404d5966727f8c98a5b1a79a8e8174685b4e4235281c0f00000000000000000b1724313e4a5764717d8a95887b6e6155483b2e22150800000000000000000000000000000000101c2936434f5c69768390908376695c4f4336291c1003000000000000000000000000070d1114161c2936434f5c69768390908376695c4f4336291c1614110d07000000000000000000000000000f1c2936424f5c6975828f908376695d5043362a1d10030000000000000000000000000008121d28323c465059626b737b838a90969b9fa3a3a09d9c9b9b9b9c9ea1a4a29e99948e88817970685f554c42372d22180d020000000000000000000a15202a353f49525c656e767e858c92979ca0a3a3a09d9c9b9b9b9c9da0a3a3a09c97928c857d756d645b51473d33281e1308000000000013202c3946535f6c798693a0a1a19a8e8174675a4d4134271a0e0c12171b23303d4a5663707d8a96a1a1a1968a7d7063564a3d3023170a0013202c3946535f6c7986938c7f7265594c3f32261917171717171717171715120e0801000000000000000000000b1824313e4b5764707b7b7b7b7b787169625a534d4e4e4e4e4d4d5159616971787b7b7b7b7b7165584b3f3225180c0000000000000013202c3946535f6c79848484847e766e665e554d453d352c241c140c03000000000000000000000000000206090a0a0a0a0a0a0a0a0c1926323f4c5965727f8c9386796c5f5346392c201300111d2936424d586268696969696969696761574c4147525c656969696969696969655c52463a2e22160900000000000000000000000000000000000000030f1a242e373f45494a4a4a4a4a4a4a4a49453f382f251a0f040000000000000000000000000000000000000000000000000000000001060a0d111416191a1c1d1e1f1f20201f1f1e1d1c1a1815130f0c080400000000000000000000000000000000000000000000000007131f2b37434f5a66727d89949faaa79c91877c736a625b56524f4e4d4e4f52565c636b747e89949faaa89d92867a6f63574b3f33271b0f030000000000000002070a0c0d0f1011121315161614110d0701050e161e272f38414a545e67727c86919ca7a59b9085796e63574c4034281d1105000000000000000000000000000000000000000000000000000814202b37434f5b66727e8a96a2ada3978c80746860606060606060606060606060606065717d8994a0aca4988c8175695d51453a2e22160a0000000000000000000000000000000000000000000000000000000000000000000916222f3c4955626f7c8996a2afa99c908376695c4f4336291c10030000000000000000000000000000000000000000000000121f2c3945525f6b7885929eabaea195887b6e6255483c2f221609000000000000000000000000000c1825313e4b5764717d8a97a3b0a89c8f8276695c4f4336291d1000000000000000000b1724313e4a5764717d8a95887b6e6155483b2e22150800000000000000000000000000000000101c2936434f5c69768390908376695c4f4336291c100300000000000000000000030b12181d2022222936434f5c69768390908376695c4f4336292222201d18120b0300000000000000000000000f1c2936424f5c6975828f908376695d5043362a1d100300000000000000000000000000010b16202a343e475059616971787e858a8f9396999b9d9e9f9f9f9e9d9b9895928e89837d766e675e564d433a30261b110600000000000000000000030e18232d37404a535c646c737a81878c9094979a9c9d9e9f9f9f9e9d9b999794908b86817a736b635b52493f362b21170c01000000000013202c3946535f6c798693949494948e8174675a4d4134271a0f171e23282a303d4a5663707d8a94949494948a7d7063564a3d3023170a0013202c3946535f6c7986938c7f7265594c3f322624242424242424242423221e19130c040000000000000000000b1824313e4b5764717e88888888837b746c655d564e4742444c545c636b737b83888888887e7265584c3f3225190c00000000000000131f2c3946525f6b76818b919189807870675f574f473e362e261e150d050000000000000000000001080e12151717171717171717171926323f4c5965727f8c9386796c5f5346392c201300121f2c3845525e6a737575757575757573695d51444b57636e75757575757575756e63574a3e3124180b000000000000000000000000000000000000000814202b3640495155565656565656565655514a41372c211509000000000000000000000000000000000000000000000000000002080d12161a1d20232527292a2b2c2c2c2c2c2c2b2a282724221f1c18140f0b0500000000000000000000000000000000000000000000030f1b26323e4a55616c77838d98a3ada3998e857c746c66625e5c5b5a5b5c5e62676d747d86909ba5aba1968b8075695e52473b2f23170b00000000000001080e1317191a1b1d1e1f20212222211d19130b03040c151d262f38424c56606a75808a96a1aca1968b8074685c5145392d21150800000000000000000000000000000000000000000000000000030f1b27323e4a56626d7985919da9a89c9084786c61555353535353535353535353535e6975818d99a5ab9f94887c7064584c4135291d11060000000000000000000000000000000000000000000000000000000000000000010c16222f3c4955626f7c8996a2afa99c908376695c4f4336291c1107000000000000000000000000000000000000000000000013202c3946525f6c7986929facada094877a6d6154473a2e211408000000000000000000000000000a1623303c4956626f7c8995a2afaa9d9083776a5d5044372a1d1100000000000000000b1724313e4a5764717d8a95887b6e6155483b2e22150800000000000000000000000000000000101c2936434f5c69768390908376695c4f4336291c1003000000000000000000020c151d24292d2f2f2f36434f5c69768390908376695c4f43362f2f2f2d29241d150c02000000000000000000000f1c2936424f5c6975828f908376695d5043362a1d10030000000000000000000000000000040e18222c353e474f575f666d73797e83878a8d8f909292929291908e8c8986827d78726b645d554c433a31281e140900000000000000000000000007111b252e38414a525a62696f757b8084888b8d8f909292929291908f8d8a8784807a756f68615a514940372d241a0f0500000000000013202c3946535f6c79868888888888888174675a4d4134271a1821282f3437383d4a5663707d888888888888887d7063564a3d3023170a0013202c3946535f6c7986938c7f7265594c3f3230303030303030303030302e2a251e160d0300000000000000000a1724303d4a56626d77818a94958d867e776f686059514a4e565e666d757d858d94958b82786e63574a3e3125180b00000000000000111e2a37434f5a646f79838d97928a8279716961595048403830271f170f060000000000000000040c13191e222324242424242424242426323f4c5965727f8c9386796c5f5346392c20130013202c3946535f6c7982828282828282786b5f52454c5865727e8282828282827e7165584b3e3225180b000000000000000000000000000000000000000c1825313c48525b616363636363636363625c53483d3125190d01000000000000000000000000000000000000000000000001070e13191d2226292d2f323435373838393939393838363533312e2b2824201b16110b040000000000000000000000000000000000000000000a16222d3944505b66717c86919ba4aaa0978e867e77726e6b69676767696b6e72787f878f98a2aca3998f857a6f64584d42362a1e13070000000000020b13191f23262728292a2c2d2e2f2f2d29241d150d03030b141d26303a444e58636e7984909ba7a79c9085796d6155493d3125180c00000000000000000000000000000000000000000000000000000a16222e3945515d6974808c98a4ada195897d7165594d4747474747474747474a56626e7a86929eaaa69b8f83776b5f54483c3024180d01000000000000000000000000000000000000000000000000000000000000000008131d28333d4955626f7c8996a2afa99c908376695c4f43382e23180e030000000000000000000000000000000000000000000013202c3946535f6c798693a0acada09386796d6053473a2d201407000000000000000000000000000915222f3b4855626e7b8895a2aeaa9d9184776a5d5144372a1e1100000000000000000b1724313e4a5764717d8a95887b6e6155483b2e22150800000000000000000000000000000000101c2936434f5c69768390908376695c4f4336291c10030000000000000000000a141e272e35393c3c3c3c434f5c69768390908376695c4f433c3c3c3c39352e271e140a000000000000000000000f1c2936424f5c6975828f908376695d5043362a1d100300000000000000000000000000000006101a232c353d454d555c62686d72777a7d80828485858685848382807d7976716c66605a524b433a31281f160c020000000000000000000000000009131c262f38404850575e646a6f74787b7e81828485858685858482817e7b77736f69645e574f483f372e251b12080000000000000013202c3946525f6c777b7b7b7b7b7b7b7b73665a4d4134271a222a333a404344444956636f7a7b7b7b7b7b7b7b7a6f6356493d3023160a0013202c3946535f6c7986938c7f7265594c3f3d3d3d3d3d3d3d3d3d3d3d3d3a362f281f150b00000000000000000915212e3a46515c656f78828c959790898179726a635b54586068707780878f97978d837970665c52463b2e221609000000000000000e1a26323e48535d67717b86909a948b837b736b625a524a4139312921181008000000000000030d161e252a2e3030303030303030303030323f4c5965727f8c9386796c5f5346392c20130013202c3946535f6c79868f8f8f8f8f85786b5f52454c5865727e8c8f8f8f8f8b7e7165584b3e3225180b000000000000000000000000000000000000000f1b2834414d59646d70707070707070706d655a4e4235291c0f0300000000000000000000000000000000000000000000040c12191f24292e3236393c3e40424345454646464645444342403d3b3834302c27221c160f08010000000000000000000000000000000000000005111c28333e4a555f6a747f89929ba4a9a0989089837e7a777574747475777a7e848a9199a1aaa39b91887d73685d52473c3025190e0200000000010b141d242b2f323435363738393b3c3c39352f271f150b00020b141e28323c47515c68737f8b97a3ada1958a7d7165594d4134281b0f030000000000000000000000000000000000000000000000000005111d2935404c5864707b87939faba5998e82766a5e52463a3a3a3a3a3a3a434f5b67737e8a96a2aea2968a7e72665b4f43372b1f14080000000000000000000000000000000000000000000000000000000000000000040f1a242f3a444f5a646f7c8996a2afa99c9083766a5f554a3f352a1f150a0000000000000000000000000000000000000000000013202c3946535f6c798693a0acada09386796d6053463a2d201307000000000000000000000000000815212e3b4854616e7b8894a1aeaa9e9184776a5d5144372a1e1100000000000000000b1724313e4a5764717d8a95887b6e6155483b2e22150800000000000000000000000000000000101c2936434f5c69768390908376695c4f4336291c1003000000000000000006111c263039404548494949494f5c69768390908376695c4f494949494845403930261c11060000000000000000000f1c2936424f5c6975828f908376695d5043362a1d10030000000000000000000000000000000008111a232b343b434a51575d62666a6e717475777878797878777573706d6965605b554f48413931281f160d040000000000000000000000000000010a141d262e363e454c53595e63686b6f727476777878797878777574716e6b67635e58524c453e362d251c13090000000000000000111e2b37434f5b656d6e6e6e6e6e6e6e6e6a61564a3e3225242c343c444b50515151535e686e6e6e6e6e6e6e6e6e685e53473a2e2215080013202c3946535f6c7986938c7f7265594c4a4a4a4a4a4a4a4a4a4a4a4a4a47413a31271d12060000000000000005111d29353f4a535d66707a838d979a938b847c756d665e626a727a82899199998f857b71675e544a40352a1e1206000000000000000a16212c37414b555f69747e88929c958d857c746c645c534b433b332a221a120a01000000000b151f282f363a3d3d3d3d3d3d3d3d3d3d3d3d3f4c5965727f8c9386796c5f5346392c20130013202c3946535f6c7986939c9c9c9285786b5f52454c5865727e8c989c9c988b7e7165584b3e3225180b00000000000000000000000000000000000000101c2936434f5c69757d7d7d7d7d7d7d7d766a5d5043372a1d1004000000000000000000000000000000000000000000070f161d242a30353a3e4245484b4d4f505152525353525251504e4c4a4744403c38332d27211a130b03000000000000000000000000000000000000000b17222d38434e58636d778089929aa2a9a29a948f8a8784828181818284878a8f959ba2a8a19a91897f756b61574c41362b1f1409000000000009131d262f363b3f40414344454647484846403931271d120700020c16202a35404b57626e7a87939faca69a8e8275695c5044372b1e120500000000000000000000000000000000000000000000000000000c1824303c47535f6b77828e9aa6aa9e92867a6e63574b3f332d2d2d303c4854606b77838f9ba7a99d9185796e62564a3e32271b0f0300000000000000000000000000000000000000000000000000000000000000010b16212b36414b56616b76818b97a3b0aa9d91867b71665c51463c31261c110600000000000000000000000000000000000000000013202c3946535f6c798693a0acada09386796d6053463a2d201307000000000000000000000000000815212e3b4854616e7b8894a1aeaa9e9184776a5d5144372a1e1100000000000000000b1724313e4a5764717d8a95887b6e6155483b2e22150800000000000000000000000000000000101c2936434f5c69768390908376695c4f4336291c100300000000000000000b17222e38424b515555555555555c69768390908376695c555555555555514b42382e22170b0000000000000000000f1c2936424f5c6975828f908376695d5043362a1d10030000000000000000000000000000000000081119222a31383f464c51565a5e626567696a6b6c6c6b6b6a686664615d59554f4a443d362f271f160d0400000000000000000000000000000000020b141c242c343b41484d53575c5f626567696a6b6c6c6b6b6a696765625f5b57524d47413a332c241c130a0100000000000000000f1b27333e49535b6061616161616161615f584f453a2e252d363e464e565c5e5e5e5e5e5d6161616161616161615d564c42362a1e12060013202c3946535f6c7986938c7f7265595757575757575757575757575756524c43392e23170b00000000000000010d18232e38414b545e68717b858e989d968e877f7770686c747c848c949b9a90877d73695f564c42382e24190d020000000000000005101a252f39434d58626c76808b959f978f867e766e655d554d453c342c241b130a01000006121d27313a41474a4a4a4a4a4a4a4a4a4a4a4a4a4c5965727f8c9386796c5f5346392c20130013202c3946535f6c798693a0a99f9285786b5f52454c5865727e8c98a5a5988b7e7165584b3e3225180b00000000000000000000000000000000000000101c2936434f5c6976838a8a8a8a8a8a84776a5d5044372a1d1104000000000000000000000000000000000000000008101920282f353b41464a4e5255575a5b5d5e5f5f5f5f5f5f5e5d5b595654504c48433e38322c251d150d0500000000000000000000000000000000000005111c27313c47515b656e77808890979ea3a59f9a9693908f8e8e8e8f9193969ba0a6a39d97908880766d645a4f453a2f25190e0300000000030f1a252f3841474b4d4e4f505253545555524b43392e23180c0000040e19242f3a46525e6b7784909da9aa9d9185786c5f5346392d201407000000000000000000000000000000000000000000000000000008131f2b37434e5a66727d8995a1ada3978b7f73675b4f44382c202935404c5864707c8894a0aba4988c8175695d5145392e22160a000000000000000000000000000000000000000000000000000000000000000008121d28323d48525d68727d88929da8b3aea3988d83786d63584d43382d23180d03000000000000000000000000000000000000000013202c3946535f6c798693a0acada09386796d6053463a2d201307000000000000000000000000000815212e3b4854616e7b8894a1aeaa9e9184776a5d5144372a1e1100000000000000000b1724313e4a5764717d8a95887b6e6155483b2e22150800000000000000000000000000000000101c2936434f5c69768390908376695c4f4336291c100300000000000000000f1b27333f4a545c616262626262626976839090837669626262626262615c544a3f33271b0f000000000000000109121c2936424f5c6975828f908376695d5043362a1d120a0100000000000000000000000000000000000710181f272e343a40454a4e5255585a5c5e5e5f5f5f646a6b6b6b6b6962584d4139322c241d150d04000000000000000000000000000000000000020a121a222930363c42474b4f5356595b5c5e5e5f5f5f63696b6b6b6b6a63594e423c363029211a120a010000000000000000000b16222d38414a50545454545454545454534e463d33282f373f48505860686b6b6b6b6a665c5454545454545454514c443a30251a0e020013202c3946535f6c7986938c7f72656363636363636363636363636363635d554b3f34281c0f000000000000000007111c262f39424c565f69737c869099a0989189827a73777e868e969e9c92887e756b61574d443a30261c120700000000000000000009131d27313c46505a646e78838d97a198908880776f675f574e463e362d251c130800000b17232e39434c5256575757575757575757575757575965727f8c9386796c5f5346392c20130013202c3946535f6c798693a0ac9f9285786b5f52454c5865727e8c98a5a5988b7e7165584b3e3225180b00000000000000000000000000000000000000101c2936434f5c69768390969696969084776a5d5044372a1d11040000000000000000000000000000000000000008111a222b323940474c52565a5e61646668696b6b6c6c6c6c6b6b69686563605c59544f4a443d362f271f170e050000000000000000000000000000000000000a15202a353f49535c656e767e868c92989ca1a4a29f9d9b9a9a9b9b9d9fa3a3a09c97928c857e766d645b52483e33291e130800000000000814202b37414b52585a5b5c5d5e5f6162625d554b4034281c1004000007121e2a36424f5b6875818e9ba7ada094877a6e6154483b2e2215080000000000000000000000000000000000000000000000000000030e1a26323e4a55616d7985909ca8a79b9084786c6054483c30252d3945515d6975818c98a4ab9f93887c7064584c4135291d110500000000000000000000000000000000000000000000000000000000000000040f19242f39444f59646f79848f99a4afb2b2aa9f948a7f746a5f544a3f342a1f140a000000000000000000000000000000000000000013202c3946535f6c798693a0acada09386796d6053463a2d201307000000000000000000000000000815212e3b4854616e7b8894a1aeaa9e9184776a5d5144372a1e1100000000000000000b1724313e4a5764717d8a95887b6e6155483b2e22150800000000000000000000000000000000101c2936434f5c69768390908376695c4f4336291c10030000000000000000121e2b3744505b666e6f6f6f6f6f6f6f7683909083766f6f6f6f6f6f6f6e665b5044372b1e12000000000000010a131b242c36424f5c6975828f908376695d5043362d241c130b020000000000000000000000000000000000060e151c23292f353a3e4246494c4e505152555d656e767777777774695d5044372a211a130b030000000000000000000000000000000000000000000810171e252b31363b3f43474a4c4e505152545c646d7577777777756b5e5245392c251e171008000000000000000000000005111b262f383f4447484848484848484846423c342b31394149515a626a7277777777776e62564948484848484745413a32281e1409000013202c3946535f6c7986938c7f727070707070707070707070707070706f675c5044382b1e120000000000000000000a141d27313a444d57616a747e87919ba39b948c857d81899098a09e948a80766c63594f453b32281e140a00000000000000000000010b15202a343e48525c67717b858f9aa29a928981797168605850483f372e241a0f04000f1c28343f4b555d63636363636363636363636363636365727f8c9386796c5f5346392c20130013202c3946535f6c798693a0a09f9285786b5f52454c5865727e8c98a0a0988b7e7165584b3e3225180b00000000000000000000000000000000000000101c2936434f5c697683909ca3a39d9084776a5d5044372a1d110400000000000000000000000000000000000007101a232c343c444b52585d62666a6e7073757677787979797978777674726f6c6965605b554f484139312920170d030000000000000000000000000000000000040e19232d37414a535c646c747b81878c9194989a9c9e9f9fa09f9e9d9c9a9794908c87817a736c645b524940362c21170c0200000000000c1824303c48535d646667696a6b6c6d6f6e675c5145382c1f13060000020e1a2734404d5a6773808d9aa6afa295897c6f6256493c302316090000000000000000000000000000000000000000000000000000000a16212d3945505c6874808c97a3aca094887c7065594d413529323e4a56626d7985919da9a69b8f83776b5f53483c3024180c01000000000000000000000000000000000000000000000000000000000000000b16202b36404b56606b75808b96a0aba9a5a6aaa69b91867b71665b51463b31261b11060000000000000000000000000000000000000013202c3946535f6c798693a0acada09386796d6053463a2d201307000000000000000000000000000815212e3b4854616e7b8894a1aeaa9e9184776a5d5144372a1e1100000000000000000b1724313e4a5764717d8a95887b6e6155483b2e22150800000000000000000000000000000000101c2936434f5c69768390908376695c4f4336291c1003000000000000000013202c3946535f6c787c7c7c7c7c7c7c7c839090837c7c7c7c7c7c7c7c786c5f5346392c20130000000000020b131c252d363e47505c6975828f908376695d50483f362e251d140b030000000000000000000000000000000000030a11181e24292e3236393d3f41464e575f676f778084848484776b5e5144382b1e1108010000000000000000000000000000000000000000000000060d141a20252a2f33373a3d4042454d555e666e767e84848484796c5f5346392c20130c05000000000000000000000000000a141d262d34383a3b3b3b3b3b3b3b3b3a37312b323a424b535b636c747c848484847d7063574a3d3b3b3b3b3b39352f2820160c02000013202c3946535f6c7986938c7f7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d786c5f5346392c2013000000000000000000020b151e28323b454f58626c757f89929ca59e968f888b939aa29f968c82786e645b51473d332a20160c020000000000000000000000030e18222c36414b555f69737d88929ca49b938b837a726a625a514940362c20150900121e2b3844505c676f707070707070707070707070707070727f8c9386796c5f5346392c20130013202c3946535f6c7986939393939285786b5f52454c5865727e8c939393938b7e7165584b3e3225180b00000000000000000000000000000000000000101c2936434f5c697683909ca9aa9d9084776a5d5044372a1d11040000000000000000000000000000000000040f19222c353e464e565d63696e73777a7d808183848586868686858483817e7c7975716c66605a534b433b32291f150b01000000000000000000000000000000000007111b252f38414a525a626970767b8084888b8e8f919292939292918f8d8b8884807b756f69615a524940372e241a10050000000000000e1a2734404d59646f7374757778797a7b796d6054473a2e2115080000000d192633404c596673808c99a6b0a396897c7063564a3d3023170a00000000000000000000000000000000000000000000000000000005111c2834404c58636f7b87939eaaa5998d8175695d51463a2e37434e5a66727e8a96a2ada2968a7e72665b4f43372b1f14080000000000000000000000000000000000000000000000000000000000000007121d27323d47525d67727d87929da7a69e9899a0a9a2988d82786d62584d42382d23180d0300000000000000000000000000000000000013202c3946535f6c798693a0acada09386796d6053463a2d201307000000000000000000000000000815212e3b4854616e7b8894a1aeaa9e9184776a5d5144372a1e1100000000000000000b1724313e4a5764717d8a95887b6e6155483b2e22150800000000000000000000000000000000101c2936434f5c69768390908376695c4f4336291c1003000000000000000013202c3946535f6c798689898989898989899292898989898989898986796c5f5346392c201300000000030c141d252e373f485059626a75828f9083766b625a514840372f261d150c03000000000000000000000000000000000000060d13181d22262a2f373f4850586069717981899191897f756a5d5144372b1e11040000000000000000000000000000000000000000000000000002090f141a1f23272b2e363e474f575f677078808991918b81766b5f5246392c1f13060000000000000000000000000000020b141c23282c2e2e2e2e2e2e2e2e2e2d2a2b343c444c545d656d757e868e918e84796f63564a3d302e2e2e2e2d29241e160e0400000013202c3946535f6c798693908a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a86796c5f5346392c201300000000000000000000030d162029333d46505a636d76808a949da7a19994969da5a1978d847a70665c52493f352b21180e040000000000000000000000000006101a242f39434d57616c76808a949fa59d958c847c746b635b52483d3125190d0013202c3946535f6c787d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7f8c9386796c5f5346392c20130013202c3946535f6c7986868686868685786b5f52454c5865727e8686868686867e7165584b3e3225180b00000000000000000000000000000000000000101c2936434f5c697683909ca9aa9d9084776a5d5044372a1d110400000000000000000000000000000000010c16202b343e47505860676e747a7e8386898c8e9091929293939292918f8d8b8885817c77726b645d554d443b31271d130800000000000000000000000000000000000009131d262f38404950575e656a6f74787c7e81838485868686858483817e7b78746f6a645e57504840372e251c1208000000000000000f1b2835424e5b687580818283858687887b6f6256493d312519100b090a0e1a2734404d5a6673808d9aa6b0a396897c6f6356493c3023160a000000000000000000000000000000000000000000000000000000000c18232f3b47535e6a76828e9aa5a99d92867a6e62564a3e323b47535f6b77838e9aa6a99d9185796d62564a3e32261b0f03000000000000000000000000000000000000000000000000000000000000040e19242e39444e59646e79848e99a4aa9f948c8e97a2a99f94897f74695f54493f34291f140a00000000000000000000000000000000000013202c3946535f6c798693a0acada09386796d6053463a2d201307000000000000000000000000000815212e3b4854616e7b8894a1aeaa9e9184776a5d5144372a1e1100000000000000000b1724313e4a5764717d8a95887b6e6155483b2e22150800000000000000000000000000000000101c2936434f5c69768390908376695c4f4336291c1003000000000000000013202c3946535f6c798693969494949494949494949494949494949386796c5f5346392c2013000000040c151e262f374049515a626b747c859091867d746c635a524941382f271e150d0400000000000000000000000000000000000001071018202831394149515a626a727a838b93968c82776d63594d4135291c100300000000000000000000000000000000000000000000000000000003090f171f2730384048505961697179828a92978d83796f645a4f43372a1e1105000000000000000000000000000000020a11171c1f212121212121212121252d353d464e565e666f777f87909890867c72685d52473a2e22212121201d19130c040000000013202c3946535f6c798693939393939393939393939393939393939386796c5f5346392c20130000000000000000000000040e17212b343e48515b646e78818b959ea0a0a0a0a0a0998f857b72685e544a40372d23190f0600000000000000000000000000000008131d27313b45505a646e78838d97a0a09e968e867e756d64594d4135281c0f0013202c3946535f6c79868a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a909386796c5f5346392c201300131f2c3946525f6b7679797979797979766a5e51454b58647079797979797979797064574b3e3125180b00000000000000000000000000000000000000101c2936434f5c697683909ca9aa9d9084776a5d5044372a1d11040000000000000000000000000000000008131d28323d465059626a727980858a8f9396989b9c9e9e9fa0a09f9e9d9c9a9895918d88837d766f675f564d43392f241a0f040000000000000000000000000000000000010b141d262e373e464d53595f64686c6f727476777879797978777674726f6c68635e59534c453e362e251c130a00000000000000000e1b2734414d5a6673808c8f909192948a7e7265594d41362b211b171616191f2a36424f5b6874818e9aa7afa295887c6f6255493c2f2316090000000000000000000000000000000000000000000000000000000007131f2a36424e5a65717d8995a1aca2968a7e72675b4f4337404c58646f7b87939faba4988c8175695d5145392e22160a000000000000000000000000000000000000000000000000000000000000000b15202b35404b55606b75808b95a0aba3988d8386919ba6a69b90867b70665b50463b31261b1106000000000000000000000000000000000013202c3946535f6c798693a0acada09386796d6053463a2d201307000000000000000000000000000815212e3b4854616e7b8894a1aeaa9e9184776a5d5144372a1e1100000000000000000b1724313e4a5764717d8a95887b6e6155483b2e22150800000000000000000000000000000000101c2936434f5c69768390908376695c4f4336291c1003000000000000000013202c3946535f6c7986938d8787878787878787878787878787878786796c5f5346392c20130000030d161e272f384149525b636c757d868e94948f877e756c645b534a413930271f160d040000000000000000000000000000000001091119222a323a424b535b636c747c848c95998e847a70665b51473c3125190d0000000000000000000000000000000000000000000000000000000008101821293139414a525a626b737b838b949a90867b71675d53483e32261a0e020000000000000000000000000000000000060c1013141515151515161e262e373f474f58606870788189919993897e746a60564c41362a1e15151413110d0801000000000013202c3946535f6c798686868686868686868686868686868686868686796c5f5346392c2013000000000000000000000000050f19222c363f49535c666f79838c9393939393939391877d736960564c42382f251b110700000000000000000000000000000000010b151f29343e48525c66717b858f939393939390877f76695d5043372a1d100013202c3946535f6c798693939393939393939393939393939393939386796c5f5346392c201300111e2a37434f5a646b6c6c6c6c6c6c6c6b64594e4248545f686c6c6c6c6c6c6c6c685e53483c2f23160a00000000000000000000000000000000000000101c2936434f5c697683909ca9aa9d9084776a5d5044372a1d1104000000000000000000000000000000020e19242f3a444e58626b747c848b91969b9fa2a5a3a19f9e9d9c9c9d9d9fa0a2a4a19d99948e88817971685f554b41362b20150a000000000000000000000000000000000000020b141c252d343b42484e53585c60636568696b6c6c6c6c6b6b696765625f5c57534d48413b342c241c130a0100000000000000000c1925323f4b5864717d8a969d9e9f9a8e8275695e52473d332c272423232529313b46525e6b7783909ca9ada094877a6e6154483b2e22150800000000000000000000000000000000000000000000000000000000020e1a26313d4955616c7884909ca8a79b8f83776b5f53483c44505c6874808c98a4ab9f93887c7064584c4035291d110500000000000000000000000000000000000000000000000000000000000007121c27323c47525c67727c87929ca7a79c91867c7f8a959faaa2978d82776d62574d42382d22180d020000000000000000000000000000000013202c3946535f6c798693a0acada09386796d6053463a2d201307000000000000000000000000000815212e3b4854616e7b8894a1aeaa9e9184776a5d5144372a1e1100000000000000000b1724313e4a5764717d8a95887b6e6155483b2e22150800000000000000000000000000000000101c2936434f5c69768390908376695c4f4336291c1003000000000000000013202c3946535f6c7986938b7e7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a776b5f5246392c201300000b151f283039424a535b646d757e878f9289899190877e766d655c534b423931281f160c010000000000000000000000000000020b131b232b343c444c545d656d757e868e969b91877c72685e544a3f352b2014090000000000000000000000000000000000000000000000000000010a121a222a333b434b535c646c747c858d959c92887e74695f554b41372c21160a00000000000000000000000000000000000000000406080808080f172028303840495159616a727a828a939b958b81776d62584e443a2f25190e080807040100000000000000131f2c3946525f6b767979797979797979797979797979797979797979766b5f5246392c1f130000000000000000000000000007101a242d37414a545d67717a8486868686868686867f756b61574e443a30261d1309000000000000000000000000000000000000030d18222c36404a555f69737d868686868686868684776a5d5044372a1d110013202c3946535f6c798686868686868686868686868686868686868686796c5f5346392c2013000e1a26323e48525a5f5f5f5f5f5f5f5f5f5a52483d424d565d5f5f5f5f5f5f5f5f5c564d42372b1f130700000000000000000000000000000000000000101c2936434f5c697683909ca9aa9d9084776a5d5044372a1d110400000000000000000000000000000008131f2a35404b56606a747d868e969ca2a7a29e9a979492919090909091929496999da2a59f99928b837a71675d52483d32261b0f03000000000000000000000000000000000000020a131b222930373d42474c505356595b5d5e5f5f5f5f5f5e5d5b5956534f4b47423c363029221a120a010000000000000000000a1723303c4955616e7a87939fabaa9e92867a6f63594f453d373330303031353b434d57636f7a87939facab9e9285796c5f53463a2d20140700000000000000000000000000000000000000000000000000000000000915212d3844505c6873808b97a3ab9f94887c7064584c404955616d7985919ca8a69a8f83776b5f53483c3024180c010000000000000000000000000000000000000000000000000000000000030e19232e39434e59636e79838e99a3aba0958a807578838e98a3a99e94897e74695f54493f34291f14090000000000000000000000000000000013202c3946535f6c798693a0acada09386796d6053463a2d201307000000000000000000000000000815212e3b4854616e7b8894a1aeaa9e9184776a5d5144372a1e1100000000000000000b1724313e4a5764717d8a95887b6e6155483b2e22150800000000000000000000000000000000101c2936434f5c69768390908376695c4f4336291c1003000000000000000013202c3946535f6c7986938b7e716d6d6d6d6d6d6d6d6d6d6d6d6d6d6d6c655a4f43372a1e110006121d27313a424b545c656d767f87909088807f8790918880766e655d544b433a31281d120700000000000000000000000000020b141d252d353d464e565e666f777f8790989e93897f756b60564c42382e23190e0300000000000000000000000000000000000000000000000000010a131b242c343c454d555d656e767e868f979f958b80766c62584d43392f251a10050000000000000000000000000000000000000000000000000710192129323a424a525b636b737b848c949c988e83796f655b51463c32281e1308000000000000000000000000111e2a37434f5a646b6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6b645a4f43372a1e11000000000000000000000000000008121b252f38424b555f6872797979797979797979766d63594f453c32281e140b010000000000000000000000000000000000000006101a242e39434d57616b7579797979797979797974695c5043362a1d1000131f2c3946525f6b767979797979797979797979797979797979797979766b5f5246392c1f13000a16212c3740484f5253535353535353524e4840363b444b515353535353535353504b443b30261a0f0300000000000000000000000000000000000000101c2936434f5c697683909ca9aa9d9084776a5d5044372a1d11040000000000000000000000000000010d1924303b47525d68727c868f98a0a7a39c97928d8a878684838383838485878a8d91969ca4a49d958c83796f64594e43372c20140800000000000000000000000000000000000000010910181f252b31373b4044474a4c4f5051525353525251504e4c4a47433f3b36312b251e17100800000000000000000000000814202d3946525e6a76838f9aa6aea2978b80756a61574f48433f3d3c3d3e41464c555e6974808b97a3afa89b8f83766a5d5144382b1f1205000000000000000000000000000000000000000000000000000000000004101c28343f4b57636f7a86929eaaa4988c8174695d51454e5a65717d8995a1ada2968a7e72665a4f43372b1f13080000000000000000000000000000000000000000000000000000000000000a15202a35404a55606a75808a95a0aaa4998e83796e717c87929ca7a59b90867b70655b50463b30261b100600000000000000000000000000000013202c3946535f6c798693a0acada09386796d6053463a2d201307000000000000000000000000000815212e3b4854616e7b8894a1aeaa9e9184776a5d5144372a1e1100000000000000000b1724313e4a5764717d8a95887b6e6155483b2e22150800000000000000000000000000010507101c2936434f5c69768390908376695c4f4336291c1007050100000000000013202c3946535f6c7986938b7e71656060606060606060606060606060605b53493e33271b0f000b17232e39434c545d666e778088918f877e76757e868f918980776f665d554c433a2f24180c000000000000000000000000000a141d262e373f474f586068707881899199a0968c81776d63594f443a30261c1207000000000000000000000000000000000000000000000000000008131c252d363e464e575f676f7780889098a1978d83786e645a50463b31271d1309000000000000000000000000000000000000000000000000050f19222b333b444c545c646d757d858e969e9a90867c72675d53493f342a20160c010000000000000000000000000e1a26323e48525a5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5a52483e32261a0e00000000000000000000000000000009131d26303a434d5660696c6c6c6c6c6c6c6c6c6b645b51473d342a20160c0200000000000000000000000000000000000000000008121c27313b454f5a636b6c6c6c6c6c6c6c6c6c6a62584c4034281b0f00111e2a37434f5a646b6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6b645a4f43372a1e110005101a252e373e43464646464646464645433d362e323a4044464646464646464644403a32291f14090000000000000000000000000000000000000000101c2936434f5c697683909ca9aa9d9084776a5d5044372a1d1104000000000000000000000000000006121d2935414c58636e79848e98a1aaa199928b86817e7b79777676767677787a7d81858b929aa2a79e958b81756a5f54483c3024180c000000000000000000000000000000000000000000060d141a20262b2f34373b3d404243454546464645444342403d3a37332f2a25201a140d0600000000000000000000000005111d2a36424e5a66727e8a95a1aca89c91877c7369615a544f4c4a49494b4d51575e67707b85919ca8afa3978b7f73675a4e4235291c10030000000000000000000000000000000000000000000000000000000000000b17232f3b46525e6a76828d99a5a99d9185796d615549525e6a76828e9aa6a99d9185796d61564a3e32261b0f03000000000000000000000000000000000000000000000000000000000007111c27313c47515c67717c87919ca7a89d92877c72676a75808b96a0aba2978d82776d62574d42372d22170d02000000000000000000000000000013202c3946535f6c798693a0acada09386796d6053463a2d201307000000000000000000000000000815212e3b4854616e7b8894a1aeaa9e9184776a5d5144372a1e1100000000000000000b1724313e4a5764717d8a95887b6e6155483b2e221508000000000000000000000000070d1114161c2936434f5c69768390908376695c4f4336291c1614110d07000000000013202c3946535f6c7986938b7e71655853535353535353535353535353534f4941372d21160a000f1c28343f4b555e666f788089928e867d756c6c747d858e928a81786f675e554b4035291c1004000000000000000000000005101b262f3840495159616a727a828a939ba2988e847a70655b51473d33281e140a0000000000000000000000000000000000000000000000000000040f1a242e373f485058606871798189929aa29a8f857b71675c52483e342a1f150b010000000000000000000000000000000000000000000000000c17212b353d454d555e666e767e878f979f9d93887e746a60554b41372d23190e04000000000000000000000000000a16212c3740484f525353535353535353535353535353535353535353524f4840372c21160a000000000000000000000000000000010b141e27313b444e575d5f5f5f5f5f5f5f5f5f5f5a52493f352b22180e0400000000000000000000000000000000000000000000010b151f29333d4851595e5f5f5f5f5f5f5f5f5f5e5950463b3024180c000e1a26323e48525a5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5a52483e32261a0e000009131c252c323739393939393939393936322c24282f3438393939393939393938342f2820170d020000000000000000000000000000000000000000101c2936434f5c697683909ca9aa9d9084776a5d5044372a1d110400000000000000000000000000000a16222e3a46525d6974808b96a0aaa1988f87807a75716e6c6b6a69696a6a6c6e71757a8088909aa4a79d92877c7064594d4135281c100300000000000000000000000000000000000000000002090f151a1f23272b2e3133353738393939393938373533312e2b27231f1a140f090200000000000000000000000000010e1a26323e4a56616d79848f9ba5aea3988e857b736b655f5b5856565657595d62697079828c97a2adaa9e93877b6f63574b3e3226190d0100000000000000000000000000000000000000000000000000000000000007121e2a36424d5965717d8994a0aca1958a7e72665a4e57636f7b87929eaaa4988c8174695d5145392d22160a0000000000000000000000000000000000000000000000000000000000030e18232e38434e58636e78838e98a3aba1968b81766b60646e79848f99a4a99e94897e74695e54493e34291e1409000000000000000000000000000013202c3946535f6c798693a0acada09386796d6053463a2d201307000000000000000000000000000815212e3b4854616e7b8894a1aeaa9e9184776a5d5144372a1e1100000000000000000b1724313e4a5764717d8a95887b6e6155483b2e22150800000000000000000000030b12181d2022222936434f5c69768390908376695c4f4336292222201d18120b0300000013202c3946535f6c7986938b7e7165584b47474747474747474747474746443e372f251b100500121e2b3844505c677078818a928d857c746b63626b737c848d938a827970675d5145382c1f130600000000000000000000000a16222d38414a525b636b737b848c949ca59b91877c72685e54493f352b21170c0200000000000000000000000000000000000000000000000000000915202c364049515a626a727a838b939ba49c92887d73695f554b40362c22180e0300000000000000000000000000000000000000000000000005111d28333d474f575f67707880889199a19f958b81766c62584e44392f251b1107000000000000000000000000000005101a252e373e4346464646464646464646464646464646464646464646433e372e251a100500000000000000000000000000000000020c161f29323c454c51535353535353535353524f4940372d23191006000000000000000000000000000000000000000000000000030d17222c363f484e52535353535353535353524e473e352a1f1408000a16212c3740484f525353535353535353535353535353535353535353524f4840372c21160a0000010a131a21262a2c2c2c2c2c2c2c2c2c2a26211a1d24282b2c2c2c2c2c2c2c2c2b28231d160e05000000000000000000000000000000000000000000101c2936434f5c697683909ca9aa9d9084776a5d5044372a1d110400000000000000000000000000000d1926323e4a56626e7a86919ca7a4998f867d756f696562605e5d5d5c5d5e5f6164696e767e88939ea9a4988d8175695d5144382c1f1306000000000000000000000000000000000000000000000004090e13171b1f222427292a2b2c2c2c2c2c2b2a282624221e1b17130e0903000000000000000000000000000000000a16222d3945515c68737e89949ea8aaa0978e857d76706b67656363636466696e737a828b949ea9aea3988d82766a5f53473b2e22160a00000000000000000000000000000000000000000000000000000000000000020e1925313d4954606c78848f9ba7a69a8e82766a5f535c6773808b97a3ab9f93877b7064584c4035291d110500000000000000000000000000000000000000000000000000000000000a151f2a353f4a555f6a75808a959faaa59a8f84796f64595d67727d88939da8a59b90857b70655b50453b30251b10050000000000000000000000000013202c3946535f6c798693a0acada09386796d6053463a2d201307000000000000000000000000000815212e3b4854616e7b8894a1aeaa9e9184776a5d5144372a1e1100000000000000000b1724313e4a5764717d8a95887b6e6155483b2e221508000000000000000000020c151d24292d2f2f2f36434f5c69768390908376695c4f43362f2f2f2d29241d150c02000013202c3946535f6c7986938b7e7165584b3e3a3a3a3a3a3a3a3a3a3a3a3a37332d251d1309000013202c3946535f6c78828a9390847b736a625959616a727a838f948b82796d6053473a2d20140700000000000000000000000e1b27333e49535c646d757d858e969ea69d93897f746a60564c42382d23190f050000000000000000000000000000000000000000000000000000000d1925313d48525b636c747c848c959da59f948a80766c61574d43392f241a1006000000000000000000000000000000000000000000000000000915212d39454f5961697179828a929aa3a2988d83796f655a50463c32281d13090000000000000000000000000000000009131c252c32373939393939393939393939393939393939393939393937322c251c1309000000000000000000000000000000000000040d17202a333b414546464646464646464646433e372e251b1107000000000000000000000000000000000000000000000000000005101a242d363d424546464646464646464645423c352c23180e020005101a252e373e4346464646464646464646464646464646464646464646433e372e251a1005000000010910161a1e1f202020202020201f1e1a150f12181c1f20202020202020201f1c18120c0400000000000000000000000000000000000000000000101c2936434f5c697683909ca9aa9d9084776a5d5044372a1d11040000000000000000000000000000101d2935424e5a66727e8a96a1a49d92877d736b635e5956535150505050515355585d646c76818d98a4a99d9185796d6054473b2e2215090000000000000000000000000000000000000000000000000003070b0f1215181a1c1d1e1f2020201f1e1d1c1a1815120f0b070200000000000000000000000000000000000005111d2934404b56626c77828c969fa9a9a0978f88817c777471706f6f717275797e858c949da6afa69c91877c70655a4e42362a1e120600000000000000000000000000000000000000000000000000000000000000000915202c3844505b67737f8b96a2ab9f93877b6f6357606c7884909ca8a69a8e83776b5f53473c3024180c000000000000000000000000000000000000000000000000000000000006111c26313c46515c66717c86919ca6a89e93887d73685d5256616b76818c96a1aca2978c82776c62574c42372c22170d0200000000000000000000000013202c3946535f6c798693a0acada09386796d6053463a2d201307000000000000000000000000000815212e3b4854616e7b8894a1aeaa9e9184776a5d5144372a1e1100000000000000000b1724313e4a5764717d8a95887b6e6155483b2e2215080000000000000000000a141e272e35393c3c3c3c434f5c69768390908376695c4f433c3c3c3c39352e271e140a000013202c3946535f6c7986938b7e7165584b3e3d3d3d3d3d3d3d3d3d3d3d3d3a362f281f150b0000121f2c3945525e6a747c858e928981786f675e5e666f778089928e867d746b5f5246392d2013070000000000000000000000111d2a36434f5b656e767e878f979fa0a0968b81776d63584e443a30261b1107000000000000000000000000000000000000000000000000000000000f1c2835414d59646d757e868e969ea0a0978d83786e645a50453b31271d130800000000000000000000000000000000000000000000000000000b1825313d4a56616a737b838b949ca0a09a90867b71675d53493e342a20160c0100000000000000000000000000000000010a131a21262a2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2a26211a130a0100000000000000000000000000000000000000050e1821293035383939393939393939393937322c251c13090000000000000000000000000000000000000000000000000000000008121b242b3236393939393939393939393936312b231a110700000009131c252c32373939393939393939393939393939393939393939393937322c251c1309000000000000050a0e11131313131313131313110e0a04070c1012131313131313131312100c07010000000000000000000000000000000000000000000000101c2936434f5c697683909ca9aa9d9084776a5d5044372a1d11040000000000000000000000000000121f2c3845515e6a76838f929597978c81756b6159524d494645444343434446484c525a65707c8895a1ada195887c6f63564a3d3024170a000000000000000000000000000000000000000000000000000000000306090b0e0f1112121313131212100f0d0b090602000000000000000000000000000000000000000000000c18232f3a45505b66707a848d979fa7a9a199938d8884817e7d7c7c7d7f82868a90979ea6aea69d948a80756a5f54493d32261a0e02000000000000000000000000000000000000000000000000000000000000000004101c27333f4b57626e7a86929da9a3978b8073685c65717d8995a0aca1968a7e72665a4e43372b1f130800000000000000000000000000000000000000000000000000000000030d18232d38434d58636d78838d98a3aca2978c81766c61564c4f5a646f7a85909aa5a99e93897e73695e53493e33291e140900000000000000000000000013202c3946535f6c798693a0acada09386796d6053463a2d201307000000000000000000000000000815212e3b4854616e7b8894a1aeaa9e9184776a5d5144372a1e1100000000000000000b1724313e4a5764717d8a95887b6e6155483b2e221508000000000000000006111c263039404548494949494f5c69768390908376695c4f494949494845403930261c11060013202c3946535f6c7986938b7e7165584b4a4a4a4a4a4a4a4a4a4a4a4a4a47413a31271d120600111d2936424d58626a737c858d928a817970686770788189928e857c746b62594e42362a1e11050000000000000000000000121f2c3845525e6b7780889193939393938e84796f655b51473c32281e140a0000000000000000000000000000000000000000000000000000000000101d2a3743505d69767f879093939393938f857b71665c52483e34291f150b0100000000000000000000000000000000000000000000000000000c1926333f4c5966727c858d939393939392887e746a5f554b41372d22180e04000000000000000000000000000000000000010910161a1e1f20202020202020202020202020202020202020201f1e1a16100901000000000000000000000000000000000000000000060f171e24292c2c2c2c2c2c2c2c2c2c2c2a27211b130a01000000000000000000000000000000000000000000000000000000000009121a21262a2c2c2c2c2c2c2c2c2c2c2c2a262019110800000000010a131a21262a2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2a26211a130a01000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000101c2936434f5c697683909ca9aa9d9084776a5d5044372a1d1104000000000000000000000000000013202c3946535f6c79818386888b8d877b6f64594f47413d3a383736363738393c414854606c7985929faba4978b7e7165584b3e3225180c000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000007121d29343f49545e68727b858d959da4aba49e9894908d8b8989898a8c8e92969ba1a8aaa39c948b82786e63594e43382c211509000000000000000000000000000000000000000000000000000000000000000000000b17232e3a46525d6975818d99a4a89c9084786c606975818d99a5a89d9185796d61564a3e32261a0f03000000000000000000000000000000000000000000000000000000000a141f2a343f4a545f6a747f8a949faaa59b90857a70655a4f4548535e68737e89949ea9a59a90857a70655a50453a30251b1005000000000000000000000013202c3946535f6c798693a0acada09386796d6053463a2d201307000000000000000000000000000815212e3b4854616e7b8894a1aeaa9e9184776a5d5144372a1e1100000000000000000b1724313e4a5764717d8a95887b6e6155483b2e22150800000000000000000b17222e38424b515555555555555c69768390908376695c555555555555514b42382e22170b0013202c3946535f6c7986938b7e7165585757575757575757575757575756524c43392e23170b000d1925313c465059616a737b848d948b837a717179828a938d857c736a625950473d32261a0e020000000000000000000000121f2c3845525f6b788586868686868686867c72685d53493f352b20160c020000000000000000000000000000000000000000000000000000000000111d2a3744505d6a778486868686868686867d73695f554a40362c22180d030000000000000000000000000000000000000000000000000000000d192633404c59667380868686868686868681766c62584e43392f251b1106000000000000000000000000000000000000000000050a0e1113131313131313131313131313131313131313131313110e0a05000000000000000000000000000000000000000000000000050d13191c1f2020202020202020201f1e1b1610090100000000000000000000000000000000000000000000000000000000000000080f151a1e1f2020202020202020201f1d1a150e07000000000000010910161a1e1f20202020202020202020202020202020202020201f1e1a1610090100000000000000000000000000000000000000000000000407080808080808080808080704010000000003060808080808080808080807050100000000000000101c2936434f5c697683909ca9aa9d9084776a5d5044372a1d11040000000000000000000000000000121f2b3844515d68717477797c7e8183766a5e53483d36312d2b2a2a2a2a2b2d303845515e6b7784919eaba5988c7f7265594c3f3226190c000000000004090e10121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212100d090400000000000000010c17222d38424c566069727b838b93999fa5a9a4a09c999796969697989b9ea2a7a9a59f99928a82796f665c52473c31261b10040000000000000000000000000000000000000000000000000000000000000000000006121e2935414d5965707c8894a0aba094887c70646e7a86929eaaa4988c8074695d5145392d21160a0000000000000000000000000000000000000000000000000000000006111b26313b46515b66717b86919ba6a99f94897e74695e53493e414c57626c77828d97a2aca1978c81776c61574c41372c22170c020000000000000000000013202c3946535f6c798693a0acada09386796d6053463a2d201307000000000000000000000000000815212e3b4854616e7b8894a1aeaa9e9184776a5d5144372a1e1100000000000000000b1724313e4a5764717d8a95887b6e6155483b2e22150800000000000000000f1b27333f4a545c616262626262626976839090837669626262626262615c544a3f33271b0f0013202c3946535f6c7986938b7e71656363636363636363636363636363635d554b3f34281c0f000914202a353e474f586069727a838c948c837b7a838b948c847b726a615850473e352b20150a000000000000000000000000121f2b3845515e6a76797979797979797979746a60564c41372d23190f04000000000000000000000000000000000000000000000000000000000000101d2a3643505c6974797979797979797979756b61574d43392e241a1006000000000000000000000000000000000000000000000000000000000c1926333f4c586571797979797979797979786f645a50463c32271d1309000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000002080d101213131313131313131313110e0a0500000000000000000000000000000000000000000000000000000000000000000000040a0e111313131313131313131313110e0903000000000000000000050a0e1113131313131313131313131313131313131313131313110e0a050000000000000000000000000000000000000000000000060c10131515151515151515151513110c0701050b10131515151515151515151514110d08020000000000101c2936434f5c697683909ca9aa9d9084776a5d5044372a1d11040000000000000000000000000000101c2935404c565f65686a6d6f72747671665a4e42362b25211f2024272a2d32363d46525f6b7885919eaba6998c807366594c403326190d00000000080f151a1d1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1d19150f080000000000000006111b26303a444e576069717981888e94999ea2a5a8a6a4a3a2a3a3a5a7a7a4a19d99948e87807870675e544a40352b20150a0000000000000000000000000000000000000000000000000000000000000000000000010d1925313c4854606b77838f9ba7a5998d817568727e8a96a2ab9f93877b7064584c4034291d1105000000000000000000000000000000000000000000000000000000020d18222d38424d58626d78828d98a2ada2988d82776d62574c42373a45505b65707b86919ba6a89e93897e73685e53493e33291e13090000000000000000000013202c3946535f6c798693a0acada09386796d6053463a2d201307000000000000000000000000000815212e3b4854616e7b8894a1aeaa9e9184776a5d5144372a1e1100000000000000000b1724313e4a5764717d8a95887b6e6155483b2e2215080000000000000000121e2b3744505b666e6f6f6f6f6f6f6f7683909083766f6f6f6f6f6f6f6e665b5044372b1e120013202c3946535f6c7986938b7e717070707070707070707070707070706f675c5044382b1e1200030e19232c353d464e576068717a838b948d84848c948c837a726960584f463e352c23190f04000000000000000000000000101d2936424e59646b6c6c6c6c6c6c6c6c6c6a62584e443a30251b1107000000000000000000000000000000000000000000000000000000000000000f1b2834404c58626a6c6c6c6c6c6c6c6c6c6b635a4f453b31271c120800000000000000000000000000000000000000000000000000000000000b1724303d49545f686c6c6c6c6c6c6c6c6c6c665d53483e342a20150b010000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000020a11181c2021222222222222222222201d18120b10171c1f21222222222222222222201d19130c0500000000101c2936434f5c697683909ca9aa9d9084776a5d5044372a1d110400000000000000000000000000000c18242f3a444d55595b5e606365676a675f554a3e32262326292d3033363a3e42484e57626e7a8793a0aca5988c7e7265594c3f3226190c00000009121a2026292b2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2b292520191209000000000000000a141e28323c454e575f676f767d83898d9295989b9d9e9f9f9f9f9e9c9a9895918d88837c756e665e554c42382e24190e040000000000000000000000000000000000000000000000000000000000000000000000000814202c37434f5b67737e8a96a2a99d9185796d76828e9aa6a69a8e83776b5f53473b3024180c0000000000000000000000000000000000000000000000000000000009141f29343f49545f69747f89949fa9a69c91867b71665b50463b30343e49545f69747f8a959faaa59a8f857a6f655a50453a30251a100500000000000000000013202c3946535f6c798693a0acada09386796d6053463a2d201307000000000000000000000000000815212e3b4854616e7b8894a1aeaa9e9184776a5d5144372a1e1100000000000000000b1724313e4a5764717d8a95887b6e6155483b2e221508000000000000000013202c3946535f6c787c7c7c7c7c7c7c7c839090837c7c7c7c7c7c7c7c786c5f5346392c20130013202c3946535f6c7986938b7e7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d786c5f5346392c2013000007111a222b343c454e565f687079828a938f8e948b827a716860574e463d342c231a1107000000000000000000000000000e1a26313d48525a5f5f5f5f5f5f5f5f5f5f5e5950463c32281e140900000000000000000000000000000000000000000000000000000000000000000c1824303b4650595e5f5f5f5f5f5f5f5f5f5e5951483d33291f150b0000000000000000000000000000000000000000000000000000000000000814202c38434d565d5f5f5f5f5f5f5f5f5f5f5b544b41362c22180e0400000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000030507090a0b0c0c0c0c0b0b090806030100000000000000000000000000000000000000000000000000000000000000000000000307090a0a0a0a0a0a0a0a0a090703000000000000000000000000000000000000000000000000000306080a0b0c0c0c0c0b0a090705020000000000000101010101010101010100000000000000000000000000000206090a0a0a0a0a0a0a0a0a0a08040000000000000000020b141c23282c2e2e2e2e2e2e2e2e2e2e2d29241d151b22282c2e2e2e2e2e2e2e2e2e2e2d2a251e160e05000000101c2936434f5c697683909ca9aa9d9084776a5d5044372a1d1104000000000000000000000000000007131e29323b43494c4f515456585b5d5b564d44392d2c2f3236393c3f43464a4e53596069747f8a96a3afa3978a7d7164574b3e3125180b000008121b242b313638383838383838383838383838383838383838383838383838383838383838383838383838383838383838383838383838383836312b231b1208000000000000020c16202a333c454d565d646b72777d8286898c8e90919292929291908e8c8985817c77716b645c544c433a30261c120700000000000000000000000000000000000000000000000000000000000000000000000000030f1b27333e4a56626e7985919da9a195897d717a86929eaaa1958a7e72665a4e43372b1f130700000000000000000000000000000000000000000000000000000006101b26303b46505b66707b86909ba6aa9f958a7f746a5f54493f34292d38424d58636d78838e98a3aca1978c81766c61574c41372c21170c01000000000000000013202c3946535f6c798693a0acada09386796d6053463a2d201307000000000000000000000000000815212e3b4854616e7b8894a1aeaa9e9184776a5d5144372a1e1100000000000000000b1724313e4a5764717d8a95887b6e6155483b2e221508000000000000000013202c3946535f6c798689898989898989899292898989898989898986796c5f5346392c20130013202c3946535f6c7986938f8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a86796c5f5346392c2013000000081019222a333c444d565e677078818a92938a827970685f564e453c342b221a110800000000000000000000000000000915202b3640484e52535353535353535353524e473e352a20160c02000000000000000000000000000000000000000000000000000000000000000008141f2a353e474e52535353535353535353524e483f362c21170d0300000000000000000000000000000000000000000000000000000000000004101b27313b444c5153535353535353535353504a42392f251a1006000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000105090c0f1214151718191919191817161412100d0a0602000000000000000000000000000000000000000000000000000000000000030a0f131617171717171717171716130f0a04000000000000000000000000000000000000000105090d10121516181819191918171614110e0b070304080c0e0e0e0e0e0e0e0e0e0d0b080300000000000000000001080e12151717171717171717171614100b050000000000000a141d262e34383b3b3b3b3b3b3b3b3b3b39352f271f252d33383b3b3b3b3b3b3b3b3b3b3935302820170d020000101c2936434f5c697683909ca9aa9d9084776a5d5044372a1d11040000000000000000000000000000010c17202932383d404245474a4c4e504f4b443b3235383c3f4245484c4f52565a5f646b727b85909ba7aca094877b6f6256493c3023170a00040f1a242e363d42454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545423d352d23190f04000000000000050e18212a333b444b535a60666c7175797d80828485868686858483817f7c7975716c666059524a423a31281e140a0000000000000000000000000000000000000000000000000000000000000000000000000000000a16222e3a45515d6975818c98a4a5998d81757e8a96a2a89d9185796d61564a3e32261a0e030000000000000000000000000000000000000000000000000000020d17222d37424d57626d77828d97a2ada3998e83786e63584d43382d2226313b46515c66717c87929ca7a89e93887d73685e53483e33281e1308000000000000000013202c3946535f6c798693a0acada09386796d6053463a2d201307000000000000000000000000000815212e3b4854616e7b8894a1aeaa9e9184776a5d5144372a1e11000000000000040b111724313e4a5764717d8a95887b6e6155483b2e2215100a0200000000000013202c3946535f6c798693969696969696969b9b969696969696969386796c5f5346392c20130013202c3946535f6c798693939393939393939393939393939393939386796c5f5346392c201300000000071018212a323b444c555e666f7880898a81786f675e564d443c332a22191008000000000000000000000000000000040f1a242e363d434546464646464646464645423c352c23190e04000000000000000000000000000000000000000000000000000000000000000000020e18232c353c424546464646464646464645423d362d241a100500000000000000000000000000000000000000000000000000000000000000000a152029323a404446464646464646464646443f3830271d130900000000000000000000000000000000000000000000000000000000000000000000000000000000000000000003080d1115181b1e2022242525262625252423211f1c1a16130e0a05000000000000000000000000000000000000000000000000000000060e151b1f22242424242424242424221f1b150e060000000000000000000000000000000001070c1115191c1f21232425262626252422201e1b17140f0f14181a1b1b1b1b1b1b1b1b1a18140f0901000000000000040c13191e2223242424242424242423201c1710080000000006111c262f383f454848484848484848484845403931272e373e444748484848484848484846413a32291f14090000101c2936434f5c697683909ca9aa9d9084776a5d5044372a1d1104000000000000000000000000000000050e1720272d313336383b3d404244433f39393d4144484b4e5255585b5f62666a6f757c858d97a2ada79b9084786b5f53463a2e211508000a15212c3640484e5152525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252514e473f352b20150900000000000000060f182129323a41484f555b6065696d70737577787979797877767572706d6965605b554e47403830281f160c0200000000000000000000000000000000000000000000000000000000000000000000000000000006111d2935414c5864707c88939fa99d918579828e9aa6a4988c8074685d5145392d21160a00000000000000000000000000000000000000000000000000000009141e29343e49545e69747e89949ea9a79c92877c71675c51463c31261b1f2a353f4a55606a75808b96a0aba59a8f857a6f655a4f453a2f251a0f050000000000000013202c3946535f6c798693a0acada09386796d6053463a2d201307000000000000000000000000000815212e3b4854616e7b8894a1aeaa9e9184776a5d5144372a1e110000000000050e151c2226313e4a5764717d8a95887b6e6155483b2e25211b140c03000000000013202c3946535f6c798693a0a2a2a2a2a2a3a6a6a3a2a2a2a2a2a09386796c5f5346392c20130013202c3946535f6c798686868686868686868686868686868686868686796c5f5346392c20130000000000060f182029323a434c545d666e778080776f665d554c433b322a21181007000000000000000000000000000000000008121b242c3236393939393939393939393936312b231a1107000000000000000000000000000000000000000000000000000000000000000000000007111a232b3136393939393939393939393936322b241b1208000000000000000000000000000000000000000000000000000000000000000000030e1720292f35383939393939393939393937332e261e150b010000000000000000000000000000000000000000000000000000000000000000000000000000000000000002090e14181d2125282b2d2f30313232323232312f2e2b2926221f1a16110b05000000000000000000000000000000000000000000000000060f1820262b2f3030303030303030302f2c26201810060000000000000000000000000000060d13181d2125292b2e30313232323232312f2d2a27241f1b1b20242728282828282828282724201a130b0200000000030d161e252a2e3030303030303030302f2d28221a12090000000b17222d38424a5154555555555555555554514b43392f3640495054555555555555555555524c443b30251a0e0200101c2936434f5c697683909ca9aa9d9084776a5d5044372a1d110400000000000000000000000000000000050e151c212427292c2e31333537383d4145494d5154575b5e6164686b6e72767b81878e969fa9aba0968a7f73675b4f43372b1e1205000e1a26323d4852595e5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5e5951473d3125190d0000000000000000060f1720282f373d444a4f55595d616466686a6b6c6c6c6b6b6a686663605d59544f49433d362e261e160d0300000000000000000000000000000000000000000000000000000000000000000000000000000000010d1824303c48535f6b77838e9aa6a195897c86929eaa9f93877b6f64584c4034281d1105000000000000000000000000000000000000000000000000000005101b25303b45505b65707b85909ba5aba0968b80756b60554a40352a1f1518232e39434e59646e79848f99a4aca1968c81766c61564c41362c21160c0100000000000013202c3946535f6c798693a0acada09386796d6053463a2d201307000000000000000000000000000815212e3b4854616e7b8894a1aeaa9e9184776a5d5144372a1e1100000000050e1720272d32353e4a5764717d8a95887b6e6155483b35312c261e150c030000000013202c3946535f6c798693a0acafafafafafb2b2afafafafafaca09386796c5f5346392c201300131f2c3946525f6b767979797979797979797979797979797979797979766b5f5246392c1f13000000000000060e172028313a424b545c656d76776e655d544b433a312920180f060000000000000000000000000000000000000009121a21262a2c2c2c2c2c2c2c2c2c2c2c2a25201911080000000000000000000000000000000000000000000000000000000000000000000000000008111920262a2c2c2c2c2c2c2c2c2c2c2c2a26211a12090000000000000000000000000000000000000000000000000000000000000000000000050e171e24292b2c2c2c2c2c2c2c2c2c2c2b27221c140c0300000000000000000000000000000000000000000000000000000000000000000000000000000000000000070d141a1f24292d313437393b3d3e3f3f3f3f3e3d3c3a3835322f2b26221c17110a03000000000000000000000000000000000000000000030e18212a31373b3d3d3d3d3d3d3d3d3d3b37322a22180e040000000000000000000000020a11181e24292d3235383a3c3e3f3f3f3f3e3d3c393733302b27252c3134343434343434343433302b251d140b010000000b151f282f363a3d3d3d3d3d3d3d3d3d3c39332c241b110600000f1b27333f4a545c616161616161616161615d554b40343d48525b606161616161616161615e564c42362b1e120600101c2936434f5c697683909ca9aa9d9084776a5d5044372a1d11040000000000000000000000000000000000040a1015181a1d1f242c32383e44484d5155595d6064676a6d7174777a7e82878c9299a0a8aca3998f84796e62574b3f33271b0f0200111e2a36434e5a646a6b6b6b6b6b6b6b6b6b6b6b6b6b6b6b6b6b6b6b6b6b6b6b6b6b6b6b6b6b6b6b6b6b6b6b6b6b6b6b6b6b6b6b6b6b6b6b6b6b6a63594e4236291d10000000000000000000060e161d252c32393e44494d5154575a5c5d5e5f5f5f5f5e5d5b595754514d48433e38322b241c140c0400000000000000000000000000000000000000000000000000000000000000000000000000000000000008141f2b37434f5a66727e8a96a1a5998d818a96a2a69a8e82776b5f53473b3024180c0000000000000000000000000000000000000000000000000000020d17222c37424c57626c77828c97a2aca4998f84796e64594e43392e23180e111c27323c47525d67727d88939da8a89d93887d73685d53483d33281d130800000000000013202c3946535f6c798693a0acada09386796d6053463a2d201307000000000000000000000000000815212e3b4854616e7b8894a1aeaa9e9184776a5d5144372a1e11000000050e17202931393e42424a5764717d8a95887b6e61554842413d3730271e150c0300000013202c3946535f6c798693a0acb9bcbcbcbcbebebcbcbcbcb9aca09386796c5f5346392c201300111e2a37434f5a646b6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6b645a4f43372a1e1100000000000000050e161f283039424a535b646b6b655c534b423931281f170e05000000000000000000000000000000000000000000080f151a1e1f2020202020202020201f1d1a140e07000000000000000000000000000000000000000000000000000000000000000000000000000000070e151a1d1f2020202020202020201f1e1a150f0800000000000000000000000000000000000000000000000000000000000000000000000000050c13181c1f202020202020202020201e1b17110a02000000000000000000000000000000000000000000000000000000000000000000000000000000000000020a11181f252b3035393d414446484a4b4c4c4c4c4b4a494744423f3b37322d28221c150e07000000000000000000000000000000000000000009141f2a333c43484a4a4a4a4a4a4a4a4a48433c342a20150a00000000000000000000040c141c23292f35393e414447494a4b4c4c4c4b4a484643403c373230373d404141414141414141403c362f261d1308000006121d27313a41474a4a4a4a4a4a4a4a4a49443e362d23180d0100121e2b37434f5b666d6e6e6e6e6e6e6e6e6d675c514539414e59646c6e6e6e6e6e6e6e6e6e685e53473b2e22150800101c2936434f5c697683909ca9aa9d9084776a5d5044372a1d11040000000000000000000000000000000000000004080d161f272f363d444a4f54595d6265696d7073777a7d8184878a8e93989da3aaa9a29a91877d72685c51463a2f23170b0000131f2c3945525f6b7678787878787878787878787878787878787878787878787878787878787878787878787878787878787878787878787878756a5e5145382b1f1200000000000000000000040c131a21272d33383d4145484b4d4f51525253525251504f4d4a4844413c38332d272019120a0200000000000000000000000000000000000000000000000000000000000000000000000000000000000000030f1b26323e4a56616d7985919ca89d928b909aa6a1958a7e72665a4e42372b1f1307000000000000000000000000000000000000000000000000000009131e29333e49535e69737e89939ea9a89d93887d72685d52473d32271c12070b15202b36404b56616b76818c96a1aca49a8f847a6f645a4f443a2f241a0f05000000000013202c3946535f6c798693a0acada09386796d6053463a2d201307000000000000000000000000000815212e3b4854616e7b8894a1aeaa9e9184776a5d5144372a1e110000040e172029323b434a4e4f4d5764717d8a95887b6e61554d4f4d49423930271e150c02000013202c3946535f6c798693a0acb9c6c9c9c9cacac9c9c9c6b9aca09386796c5f5346392c2013000e1a26323e48525a5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5a52483e32261a0e0000000000000000040d161e272f384149525a5f5f5a534a413930271f160d050000000000000000000000000000000000000000000000040a0e111313131313131313131313110d0903000000000000000000000000000000000000000000000000000000000000000000000000000000000003090e111313131313131313131313110e0a0400000000000000000000000000000000000000000000000000000000000000000000000000000001070c101213131313131313131313120f0b0600000000000000000000000000000000000000000000000000000000000000000000000000000000000000040c141c232a30363c4145494d50535556575859595858575553514e4b47433e39332d2720181109010000000000000000000000000000000000030e1a26313b454d54575757575757575757544e463c32261b0f030000000000000000040d161e262d343a40454a4e5153565758595958585755524f4c48433e3942484d4e4e4e4e4e4e4e4e4c4841382f241a0e03000b17232e39434c525657575757575757575550483f34291e12060013202c3946525f6c777b7b7b7b7b7b7b7b796d6154473b44505d6a767b7b7b7b7b7b7b7b7a6f6356493d3023160a00101c2936434f5c697683909ca9aa9d9084776a5d5044372a1e110400000000000000000000000000000000000000030d161f28313941484f555b6065696e7275797c8083868a8d9093979a9fa3a9aaa59e9790887e756b61564b4035291e1206000013202c3946535f6c7985858585858585858585858585858585858585858585858585858585858585858585858585858585858585858585858585786b5f5245382c1f12000000000000000000000001090f161c22272c3135393c3e4143444546464645454442403e3b3835302c27221c150f08000000000000000000000000000000000000000000000000000000000000000000000000000000000000000003060a16222d3945515d6874808c98a3a49b989aa2a89c9185796d61554a3e32261a0e030000000000000000000000000000000000000000000000000005101a25303a45505a65707a85909aa5aca1968c81766b61564b40362b20150b00040e19242f39444f5a646f7a85909aa5aba1968b81766b61564b41362c21160c010000000013202c3946535f6c798693a0acada09386796d6053463a2d201307000000000000000000000000000815212e3b4854616e7b8894a1aeaa9e9184776a5d5144372a1e1100010c162029323b444d555a5c595764717d8a95887b6e61555a5c5a544b423930271e140a000013202c3946535f6c798693a0acb9c6d3d5d5d7d7d5d5d3c6b9aca09386796c5f5346392c2013000a16212c3740484f525353535353535353535353535353535353535353524f4840372c21160a000000000000000000040c151e262f3740484f52524f4941382f271e150d040000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000050e161e262e353b42474d5155595c5f61636465656565646362605d5a57534f4a443e38312a231b130a010000000000000000000000000000000006121f2b37424d575f6363636363636363635f584e43372c1f130700000000000000030d161f2830383f464c51565a5d606264656565656463615f5c58544f49434b53595b5b5b5b5b5b5b5b59534b41362b1f1307000f1c28343f4b555d636363636363636363615a51463a2f23160a0013202c3946535f6c7986888888888888887b6e6154483b44515d6a7784888888888888887d7063564a3d3023170a00101c2936434f5c697683909ca9aa9e9184776b5e5144382b1e1105000000000000000000000000000000000000010b151f28313a434b525a60666c71757a7e8285898c8f9396999ca0a3a7aba8a49f99938d867e756c63594f443a2f24180d01000013202c3946535f6c7986929292929292929292929292929292929292929292929292929292929292929292929292929292929292929292929285786b5f5245382c1f1200000000000000000000000000050b11161c2025292c2f32343637383939393938373534312f2c2824201b16100a0400000000000000000000000000000000000000000000000000000000000000000000000000000000000000040a0f1315161d2934404c58646f7b87939fa8a7a4a6a8a3988c8074685c5145392d21160a00000000000000000000000000000000000000000000000000020c17222c37414c57616c77828c97a1aca59a90857a6f655a4f443a2f24190f04000008121d28333d48535e68737e89949ea9a89d92887d72685d52483d33281d13080000000013202c3946535f6c798693a0acada09386796d6053463a2d201307000000000000000000000000000815212e3b4854616e7b8894a1aeaa9e9184776a5d5144372a1e110007121d28323b444d565f6668645c64717d8a95887b6e615d6569655d544b423930261b10050013202c3946535f6c798693a0acb9c6d3dfe2e3e3e2dfd3c6b9aca09386796c5f5346392c20130005101a252e373e4346464646464646464646464646464646464646464646433e372e251a100500000000000000000000030c141d252e373e434646433e372f261d150c030000000000000000000000000000000000000000000000000000000000000000000000000000000000000002040607080808080807060503010000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000103050607080808080707050402000000000000000000000000000000000000000000000000000000000000000000000000000000000002040607080808080707050301000000000000000000000000000000000000000000000000000000000000000000050e17202830383f464d53585d6265696c6e70717272727271706e6c6a67635f5a55504a433c342d251c130a010000000000000000000000000000000815222e3b47535f697070707070707070706a5f54483b2f221609000000000000000b151e28313a424a51575d62666a6d6f707172727271706e6b68645f5a544e535d656767676767676767645d52473c2f23170a00121e2b3844505c676f70707070707070706c62574b3f3226190c0013202c3946535f6c7986939595959594887b6e6154483b44515d6a77849195959595958a7d7063564a3d3023170a00101c2936434f5c697683909ca9ab9e9285786b5f5245392c1f130600000000000000000000000000000000000008131d27313a434c555d646b71777c81868a8e9295989c9fa2a5a9aaa7a4a09c98938e88827b746c635a51473d33281d120700000013202c3946535f6c7986939393939393939393939393939393939393939393939393939393939393939393939393939393939393939393939285786b5f5245382c1f12000000000000000000000000000000050b1015191d20232528292b2c2c2c2c2c2b2a292725221f1c1814100b050000000000000000000000000000000000000000000000000000000000000000000000000000000000000000070e151b1f22232324303b47535f6b76828e9a9b9b9b9b9b9b93877b6f64584c4034281d11050000000000000000000000000000000000000000000000000009131e28333e48535e68737e89939ea8a99e93897e73685e53483d33281d1208000000010c16212c37414c57626c77828d97a2ada4998f84796f64594f443a2f241a0f0400000013202c3946535f6c798693a0acada09386796d6053463a2d201307000000000000000000000000000815212e3b4854616e7b8894a1aeaa9e9184776a5d5144372a1e11000c18242f3a444d565f6871756e6564717d8a95887b6e61666f756f665d544b42382d21160a0013202c3946535f6c798693a0acb9c6d3dfecf0f0ecdfd3c6b9aca09386796c5f5346392c2013000009131c252c32373939393939393939393939393939393939393939393937322c251c1309000000000000000000000000020b131c252c3237393937332d251d140b030000000000000000000000000000000000000000000000000000000000000000000000000000000003070a0d0f1112131415151515141312100e0c090602000000000000000000000000000000000000000000000000000000000000000000000000000105080b0e1012131415151515141312100e0c0906030000000000000000000000000000000000000000000000000000000000000000000105090c0f11121414151515141312100d0b0704000005080a0a0a0a0a0a0a0a0a09070400000000000000000000000000040d172029323a424a51585e64696e7275787a7c7d7e7f7f7e7e7d7b7976736f6b66615b544e463f362e251c130a000000000000000000000000000000091623303c4956626f7b7d7d7d7d7d7d7d7c7063574a3d3024170a00000000000007121c27303a434c545b62686e7276797b7d7e7e7f7e7e7c7a7874706b665f5859656f74747474747474746f64584b3f3226190c0013202c3946535f6c787d7d7d7d7d7d7d7d73665a4d4034271a0d0013202c3946535f6c798693a0a2a2a194887b6e6154483b44515d6a7784919ea2a2a2968a7d7063564a3d3023170a00101c2936434f5c697683909ca9ac9f9386796d6053473a2d2114080000000000000000000000000000000000040f1a242f39434c565e676e767d83888d92969a9ea1a5a8aba8a5a19e9b9794908c87827d777069625a51483f352b21160c0100000013202c3946535f6c7986868686868686868686868686868686868686868686868686868686868686868686868686868686868686868686868685786b5f5245382c1f12000000000000000000000000000000000004090d101416191b1d1e1f1f201f1f1e1e1c1a181613100c080400000000000000000000000000000000000000000000000000000000000000000000000000000000000000000007101920262b2e3030303037424e5a66727d898e8e8e8e8e8e8e8e82766b5f53473b2f241a130d05000000000000000000000000000000000000000000000005101a252f3a454f5a656f7a858f9aa5ada2978d82776c62574c41372c21160c0100000000050f1a25303a45505b65707b86919ba6aba0968b81766b61564b41362b21160b01000013202c3946535f6c798693a0acada09386796d6053463a2d201307000000000000000000000000000815212e3b4854616e7b8894a1aeaa9e9184776a5d5144372a1e1100101c2834404b565f68717a80776d64717d8a95887b6e666f7882786f665d54493e32261a0d0013202c3946535f6c798693a0acb9c6d3dfececececdfd3c6b9aca09386796c5f5346392c20130000010a131a21262a2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2a26211a130a0100000000000000000000000000010a131a21262a2c2c2a27211b130b02000000000000000000000000000000000000000000000000000000000000000000000000000003070c101316191b1d1f20212222222121201e1c1a1815120e0a0601000000000000000000000000000000000000000000000000000000000000000004090d1114181a1c1e20212122222121201f1d1b1816120f0b06010000000000000000000000000000000000000000000000000000000004090d1215181b1d1f202122222221201e1c1a1714100b0c11141617171717171717171614100b0500000000000000000000010c151f29323b444c545c63696f757a7e828587898a8b8c8c8c8b89888583807b77726c665f58504840372e251c12080000000000000000000000000000091623303c4956636f7c898a8a8a8a8a8a7d7063574a3d3024170a0000000000030e19242e39424c555e666d73797e8285888a8b8c8c8c8b898784817c77716a635b687481818181818181807366594d4033261a0d0013202c3946535f6c79868a8a8a8a8a8a8173675a4d4034271a0d0013202c3946535f6c798693a0acaea194887b6e6154483b44515d6a7784919eaaaea3968a7d7063564a3d3023170a00101c2936434f5c697683909ca9ada194887b6e6255493c2f23170a00000000000000000000000000000000000a15202b36414b555e68707981888e94999ea2a6aaa8a5a29e9b9895928f8b8784807b76716c655f5850483f362d23190f0500000000131f2c3946525f6b7679797979797979797979797979797979797979797979797979797979797979797979797979797979797979797979797979766a5e5145382b1f12000000000000000000000000000000000000000004070a0c0e1011121313131212110f0e0c0907040000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000050f19222b32373b3c3c3c3c3c3d4955616d788282828282828282827d72665a4e4237302b251e170f07000000000000000000000000000000000000000000010c17212c37414c56616c76818c96a1aca69b90867b70655b50453a30251a100500000000000009131e29343e49545f69747f8a959faaa79d92887d72685d52483d32281d1208000013202c3946535f6c798693a0acada09386796d6053463a2d201307000000000000000000000000000815212e3b4854616e7b8894a1aeaa9e9184776a5d5144372a1e1100121f2b3844515d68717a838980766d717d8a95887b6e6f78818b82786f665a4e4235291c100013202c3946535f6c798693a0acb9c6d3dfdfdfdfdfdfd3c6b9aca09386796c5f5346392c2013000000010910161a1e1f20202020202020202020202020202020202020201f1e1a16100901000000000000000000000000000000010910161a1e1f201e1b161009010000000000000000000000000000000000000000000000000000000000000000000000000003090e13181c202326282a2c2d2e2e2e2e2e2d2c2b292724221e1b16120d070200000000000000000000000000000000000000000000000000000000050b1015191d212427292b2c2d2e2e2e2e2e2d2b2a2725221f1b17120d080200000000000000000000000000000000000000000000000003090f15191e2125282a2c2d2e2e2e2e2e2d2b292623201c17171d2123242424242424242423201c17100800000000000000000009131d27313b444d565e666d747b81858a8e9194969798999998979694928f8c87837d77716a625a524940372d241a0f0500000000000000000000000000091623303c4956636f7c8996979797978a7d7063574a3d3024170a00000000000914202b35404a545e6770777e858a8e92959698989998979694908c88827c746d646975828e8e8e8e8e8b7e7265584c3f3225190c0013202c3946535f6c798693979797978d8173675a4d4034271a0d0013202c3946535f6c798693a0acaea194887b6e6154483b44515d6a7784919eaab0a3968a7d7063564a3d3023170a00101c2936434f5c697683909ca9afa3968a7d7064584b3f32261a0e06080a0b0a0804000000000000000000030f1b26323d48525d67707a838b92999fa5aaa8a4a09c9995928f8c8986827f7b77736f6b66605a544d463e362d241b11080000000000111e2a37434f5a646b6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6b64594e4236291d100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000b16212b343c434749494949494744505c6872757575757575757575746c61554944403c36302921191007000000000000000000000000000000000000000007121d28333d48535d68737d88939ea8aa9f948a7f74695f54493e34291e130b0b0b0b0a080400020d17222d38424d58636d78838e98a3aea4998f84796f64594f44392f24190e030013202c3946535f6c798693a0acada09386796d6053463a2d201307000000000000000000000000000815212e3b4854616e7b8894a1aeaa9e9184776a5d5144372a1e110013202c3946535f6c79838c92898076717d8a95887b6f78818a948b82766a5d5044372a1d110013202c3946535f6c798693a0acb9c6d3d3d3d3d3d3d3d3c6b9aca09386796c5f5346392c20130000000000050a0e1113131313131313131313131313131313131313131313110e0a0500000000000000000000000000000000000000050a0e111313110f0a050000000000000000000000000000000000000000000000000000000000000000000000000002080f141a1f24282c2f323537383a3b3b3b3b3b3a39383634312e2a27221e19130d0700000000000000000000000000000000000000000000000000030a10161c2125292d30333637393a3b3b3b3b3a39383634312e2b27231e19130d0700000000000000000000000000000000000000000000070e141a20252a2e313436383a3b3b3b3b3a39383533302c282322282d3030303030303030302f2c28221a12080000000000000005101b252f39434d565f6870787f868c91969a9da0a2a3a2a1a1a2a3a3a19e9b98938e89827c746c645b52493f362b21170c01000000000000000000000000091623303c4956636f7c8996a3a4a4978a7d7063574a3d3024170a00000000030e1a25313c47525c667079828990969a9ea1a3a4a5a6a5a4a2a09d98938d867e766d697683909b9b9b988b7e7164574b3e3125180b0013202c3946535f6c798693a0a4a49a8d8173675a4d4034271a0d0013202c3946535f6c798693a0a3a3a194887b6e6154483b44515d6a7784919ea3a3a3968a7d7063564a3d3023170a00101c2936434f5c697683909ca9b2a5998c8073675b4e42362a1e13131417171714100b05000000000000000814202c37434e59646f79838c949ca4aba8a29c9894908c898683807c7976736f6b67635f5a554f49423b342c241b12090000000000000e1a26323e48525a5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5a52483d31261a0e0000000000000003090d10121212121212121211100c080200000000000000000000000000000000060b0e111212121212121212110f0b0701000000000000000000000000000000000000000000000000000000000004101c28333d464e545656565656534e4b56606668686868686868686868635a5553504c47413a332b22190f06000000000000000000000000000000000000000c18232f3a444f5a646f7a858f9aa4a7a3988d83786d62584d42382d221717171717171614100b0506101b26313b46515c66717c87929ca7a7a0968b80756b60564b40362b1f13070013202c3946535f6c798693a0acada09386796d6053463a2d201307030302000000000000010203030815212e3b4854616e7b8894a1aeaa9e9184776a5d5144372a1e1100121f2c3845515d69737c858e928980767d8a95887b78818a948c837a71675b4f4236291d100013202c3946535f6c798693a0acb9c6c6c6c6c6c6c6c6c6c6b9aca09386796c5f5346392c201300000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000050c131a20252b3034383b3f41434546474848484847464442403d3a37332e29241e18120b0300000000000000000000000000000000000000000000070e151b22272c3135393d40424446474848484847464543403e3b37332e2a241e18120b03000000000000000000000000000000000000010911181f262c31363a3e4143454647484848474644423f3c38342f2d34393c3d3d3d3d3d3d3d3d3c38332c241a10060000000000010c17222c37414b555f68717a828a91979da2a5a09c99979594949596989b9ea3a49f9a948d867e766d645b51483d33281e1308000000000000000000000000091623303c4956636f7c8996a3b0a4978a7d7063574a3d3024170a0000000008131f2b37424d58636e78828b949ba1a6aaa6a19e9b99989898989a9c9f98918980766d7783909da8a4978a7d7164574a3e3124170b0013202c3946535f6c798693a0aca79a8d8173675a4d4034271a0d0013202c3946535f6c7986939696969694887b6e6154483b44515d6a77849196969696968a7d7063564a3d3023170a00101c2936434f5c697683909ca9b4a89c8f83776a5e52463b2f251f1f21232423211c1710080000000000000c1824303c48545f6b76818b959ea6aca49d96918c8884807d797673706d6a66635f5b57534e49443e38312a221f1b160f0800000000000a16212c3740484f5253535353535353535353535353535353535353535353535353535353535353535353535353535353535353535353535353524e4840362b201509000000000000070e14191c1e1e1e1e1e1e1e1e1e1c19140d0600000000000000000000000000030a11171b1d1e1e1e1e1e1e1e1e1e1b17120c04000000000000000000000000000000000000000000000000000000000815212d39444f586063636363635f584e4e555a5b5b5b5b5b5b5b5b5e61636362605d58534c453d342b21170d030000000000000000000000000000000000000f1c2834404b56616b76818b969a9a9a9a91877c71665c51463b31262324242424242423201c1710080a141f2a353f4a55606a75808b969a9a9a9a92877d72675d52473c3023170b0013202c3946535f6c798693a0acada09386796d6053463a2d20130f0f0f0f0d090500060a0d0f0f0f0f15212e3b4854616e7b8894a1aeaa9e9184776a5d5144372a1e1100101d2935414c57616a737c858e9289807d8a95887b818a948c837a71685f554a3f33271a0e0013202c3946535f6c798693a0acb9b9b9b9b9b9b9b9b9b9b9b9aca09386796c5f5346392c2013000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000004070808080808080808080705010000000000000000000000000000000000080f171e252b31363b4044484b4e50525354555555545352514f4d4a47433f3a352f29231c150d06000000000000000000000000000000000000000109111920262d33383d4246494c4f515253545555545453514f4d4a47433f3a35302a231c150e0600000000000000000000000000000000010a131b232a31373d42464a4d505253545555545453514f4c48443f3a363e45494a4a4a4a4a4a4a4a48443e362c22180c010000000007121d28333e49535d67717a838c949ba2a7a09a94908c8a88888888898c8e92979ca3a59f98908880766d63594f453a2f24190e030000000000000000000000091623303c4956636f7c8996a3b0a4978a7d7063574a3d3024170a000000000c1824303c47535e6a75808a949da5ada8a19a95918e8c8b8b8b8c8d9094989a92897f757784919eaaa4978a7d7063574a3d3024170a0013202c3946535f6c798693a0aca79a8d8173675a4d4034271a0d0013202c3946535f6c79868a8a8a8a8a8a887b6e6154483b44515d6a77848a8a8a8a8a8a8a7d7063564a3d3023170a00101c2936434f5c697683909ca9b6ab9f93877b6f63574c41362e2c2c2d3031302d28221a120800000000020f1b2834404c5864707c87929da7ada39a928b85807b7874706d6a6764605d5a56534f4b47423e383432312f2e2b27211911080000000005101a252e373e43464646464646464646464646464646464646464646464646464646464646464646464646464646464646464646464646464645433d362e241a0f0400000000000911192025292b2b2b2b2b2b2b2b2b28241f1810070000000000000000000000030c151c22272a2b2b2b2b2b2b2b2b2a28231d160e050000000000000000000000000000000000000000000000000000000b1724303d4955606a6f6f6f6f6f6a6055494a4e4e4e4e51575c62676b6e6f6f6f6c69645e574f463d33291f1409000000000000000000000000000000000000121e2b3844505c68727d888d8d8d8d8d8d8b80756a5f554a3f352a2c2f313131313131302d28211a130c0e18232e39434e59646e79848d8d8d8d8d8d8d84796e64584c3f33261a0d0013202c3946535f6c798693a0a2a2a09386796d6053463a2d201c1c1c1c1b1915100b11161a1c1c1c1c1c212e3b4854616e7b8894a1a2a29e9184776a5d5144372a1e11000d1924303b454e57616a737c858e9289808a9588818a948c837a71685f564d43392e22160a0013202c3946535f6c798693a0acacacacacacacacacacacacacaca09386796c5f5346392c2013000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001070c101314151515151515151514110d0802000000000000000000000000000009111a212930363c42474c5054575a5c5e606161616161605f5d5b5956534f4b46413b352e271f170f070000000000000000000000000000000000020b131b232a31383e44494e5255595b5d5f6061616161615f5e5c5957534f4b46413b352e271f180f070000000000000000000000000000000a131c252d353c42484d5256595c5e6061616161615f5d5b5854504b453f4850555757575757575757554f483e34291e1206000000010c18232f3a45505a656f79838c959ea6a59d958f8984807d7b7b7b7b7d7f82868b9198a0a8a29a92897f756b61564c41362b1f14080000000000000000000000091623303c4956636f7c8996a3b0a4978a7d7063574a3d3024170a00000003101c2834404c58646f7b86919ca6afa89f968f898582807e7e7e7f8184878c929991877d7784919eaba3978a7d7063574a3d3024170a0013202c3946535f6c798693a0aca79a8d8173675a4d4034271a0d0013202c3946535f6c787d7d7d7d7d7d7d7d7a6e6154473b44515d6a767d7d7d7d7d7d7d7d7b6f6356493d3023160a00101c2936434f5c697683909ca9b0a7a0978b8074685d5348403a38393a3d3e3c39332c241a100600000005121e2b3743505c6975818d98a4aea59b9188817a746f6b6864615d5a5754514e4a47434345454442413f3d3c3a37322b231a11060000000009131c252c323739393939393939393939393939393939393939393939393939393939393939393939393939393939393939393939393939393936322c241b1208000000000008121b232b313538383838383838383735302a221a1006000000000000000000010c151e272e3337383838383838383837342e2820170d0300000000000000000000000000000000000000000000000000000c1825323f4b5865717c7c7c7c7c7164584b3f434950565c62686d73777a7c7c7b79756f6861584f453b31261b10040000000000000000000000000000000000131f2c3946525f6c79818181818181818181796e63594e43382e32383c3e3e3e3e3e3e3c39332c251d160f111c27323c47525d67727d81818181818181818074675a4d4134271a0e0013202c3946535f6c798693959595959386796d6053463a2d29292929292825211b161d22262829292929292e3b4854616e7b8894959595959184776a5d5144372a1e110008131f29333c454e57616a737b858e928b8f978d8b938c837a71685f564d443b31271c11060013202c3946535f6c798693a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a09386796c5f5346392c201300000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000030b12181d20212121212121212121201e19140d0500000000000000000000000009121b232b333a41484d53585c606467696b6c6d6e6e6e6e6d6c6a6865625f5b56514c463f38312921191007000000000000000000000000000000020b141d252d353c43494f55595e6265686a6c6d6e6e6e6e6d6c6a6866635f5b57524c464039312a211910070000000000000000000000000008121c252e373f464d53595e6266696b6c6d6e6e6e6d6c6a6764605c57514a515a616363636363636363615a50453a2e22160a00000006121d2934404b56616c76818b959ea7a59c938b847d7874716f6e6e6f7073767a80878e969fa8a49b91877d73685d52473c3025190e0200000000000000000000091623303c4956636f7c8996a3b0a4978a7d7063574a3d3024170a00000007131f2c3844505c6874818c98a3aeaaa0968d857e7975737271717274777b81878f968f847985929eaba3968a7d7063564a3d3023170a0013202c3946535f6c798693a0aca79a8d8173675a4d4034271a0d00121e2b3744505c676e70707070707070706f685d514539424e5a656e70707070707070706f695f53473b2e22150900101c2936434f5c697683909ca9a99e959190857a6f645a514a46454647494a49443e362c22170c0100000713202d3946535f6c7885919da9aa9e93897f766f69635f5b5854514e4b4845413e41494f5252504f4d4c4a4947433d352c22180d02000000010a131a21262a2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2a26211a12090000000000040f19242d353c42444545454545454544413b342c22180d02000000000000000008131e2731383f43454545454545454543403932291f150a00000000000000000000000000000000000000000000000000000b1825323e4b5864717d8989898073675b4f4a4f555b61676d73797e838789898885817a736a61574d42372c21150a0000000000000000000000000000000000121f2b3844515d687173737373737373737371675c52473c32343d44484a4a4a4a4a4a49443e362f2820191215202b36404b56616b737373737373737373736f64584c4033261a0d0013202c3946535f6c798688888888888886796d6053463a36363636363635322d2620282e32353636363636363b4854616e7b8888888888888884776a5d5144372a1e1100020d17212a333c454e576169727b858e979a9f99958c837a71685f564d443b32291f150b000013202c3946535f6c798693939393939393939393939393939393939386796c5f5346392c2013000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000030d151d23292c2e2e2e2e2e2e2e2e2e2d2a251f170f060000000000000000000009121b242d353d454c53595e64686c70737678797a7b7b7b7a79787774726f6b67625d57514a433b332b2219100600000000000000000000000000010b141d262f373f474e545b60656a6e717476787a7b7b7b7b7a797775726f6b67635d57514a433b332b221a1007000000000000000000000005101a242e37404951585f656a6e727577797a7b7b7b7a797674706c68625c5558636c70707070707070706c62564a3e3225190c0000000b17232e3a45515c68737d88939da7a79d938a8179726c67646261616263666a6f757c848d97a1aba3998f847a6f63584d41362a1e130700000000000000000000091623303c4956636f7c8996a3b0a4978a7d7063574a3d3024170a0000000a16222f3b4854606c7985919da9afa4998e847b736d696665646466686b70767d858d968b8085929faca3968a7d7063564a3d3023170a0013202c3946535f6c798693a0aca79a8d8173675a4d4034271a0d000f1c28343f4a555d626363636363636363635e564c41353d49535c626363636363636363635f574d42372b1f130600101c2936434f5c697683909ca9a6998d848c8b81766c635c565352525355575550483e34291d120600000815222e3b4854616e7a8794a0ada6998e82776d645d58534f4c4845423e3b38353f49535b5f5f5d5b5a585755534f473e342a1e130700000000010910161a1e1f202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020201f1e1a150f080000000000000915202b353f474d5151515151515151514d463e342a1f130800000000000000030e19252f39424a4f5151515151515151504b443b31261b1004000000000000000000000000000000000000000000000000000a1723303d4956636f7c89959083776b6057565a60666c72797f858a8f93959694918c857c73695f54493d32261a0f0300000000000000000000000000000000101c2835404c576066676767676767676767655f554b4035323d464e54575757575757554f484139322b241c1519242f39444f596266676767676767676767645d53483c3024170b0013202c3946525f6c787b7b7b7b7b7b7b7b786c60534642424242424242413d38302a32393f42424242424242424754616d797b7b7b7b7b7b7b7b766a5d5044372a1e110000060f18212a333c454e576069727b858e979f958c837a71685f564d443b322920170d04000013202c3946535f6c798686868686868686868686868686868686868686796c5f5346392c20130000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000010b151f272f34393b3b3b3b3b3b3b3b3b3936302921180e03000000000000000008121b242e373f474f575e646a6f74797c808284868788888887868583817e7b77736e68625c554d453d342b22180e0400000000000000000000000009131d262f38414951585f666c71767a7e8183858687888888878684827e7b78736e69635c554d453d342c22190f05000000000000000000010c17222c364049525b626a70767a7e82848687888888878583807d78736d675f5b67747d7d7d7d7d7d7d7d7366594d4033261a0d000004101c27333f4b56626d79848f9aa5aba0968b81786f67615b5856545455575a5e636a727b858f99a4aba1968b8075695e52473b2f23170b00000000000000000000091623303c4956636f7c8996a3b0a4978a7d7063574a3d3024170a0000000c1825323e4b5763707c8995a1adaa9e93877c7269615c5a585758595b5f646b727b848e928787939faca3968a7d7063564a3d3023170a0013202c3946535f6c798693a0aca79a8d8173675a4d4034271a0d000b17232e39434b5256565656565656565656534c443a2f37414a5155565656565656565656534d453c31261a0f0300101d2a3643505d697683909ca9a5998c7f8892887e756d6762605f5f606264615a50453a2e22160900000916222f3c4855626f7b8895a2aea3968a7d71655b534c47433f3c3835322f2c3844505b656b6b6a68676563625f5950463b2f23170b000000000000050a0e11131313131313131313131313131313131313131313131313131313131313131313131313131313131313131313131313131313110e0a04000000000000000e1a26313d4751595e5e5e5e5e5e5e5e5d5850463b3024190d0200000000000008141f2a36414b545b5e5e5e5e5e5e5e5e5c564d43382c201408000000000000000000000000000000000000000000000000000815222e3b4754616d7a869394887d72696463666b71777d848a90969b9fa2a3a19d968e857b70655a4e43372b1f1307000000000000000000000000000000000c18242f3a454e55595a5a5a5a5a5a5a5a5a59544d43392f38444e5860646464646464615a534b443d352e271f181d28333d4750575a5a5a5a5a5a5a5a5a5a58534b41362b20140800121e2b3743505b666d6f6f6f6f6f6f6f6f6d665c504f4f4f4f4f4f4f4f4e49423a323c444a4e4f4f4f4f4f4f4f4f515d676e6f6f6f6f6f6f6f6f6d64594e4235291c10000000060f18212a333c454e576069727b85929c8f837a71685f564d443b322920170e05000000131f2c3946525f6b767979797979797979797979797979797979797979766b5f5246392c1f13000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000007121d273139404547484848484848484846413b332a20150a0000000000000005101a242d374049515961686f757b8085898c8f919394949594949392908e8b87837f7a746d665f574f463d342a20160c010000000000000000000007111b252f38414a535b636a71777d82868a8d909293949595949392908e8b88847f7a746d675f574f473e342b21170d03000000000000000007121e29333e48525b646d747b81868b8e9192949495949392908d89847e78716a616875828a8a8a8a8a8a7e7265594c3f3326190d00000814202c3844505c67737e8a95a1aca69a8f84796f665d56504b494848494a4e52586069737d88939ea9a89d91867a6f63574b3f33271b0f03000000000000000000091623303c4956636f7c8996a3b0a4978a7d7063574a3d3024170a0000000e1b2734404d5966737f8c98a4b1a69a8e82766b6057504d4c4b4b4c4f53596169727c8690929299a3afa3968a7d7063564a3d3023170a0013202c3946535f6c798693a0aca79a8d8173675a4d4034271a0d0006121c2731394146494c4c4c4c4c4c4c4c4a47423a32282f384045494b4c4c4c4c4c4c4c4a47423c332a1f15090000101d2a3643505d697683909daaa5988c7e848f91888078736e6c6b6c6d6e716c62564a3e3125180c00000916222f3c4955626f7c8995a2aea295887b6e625549413b3733302c2a2b2e333c4854606c777876757372706e6b62574c3f33271a0e010000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000111d2a36424e59636a6b6b6b6b6b6b6b6962584c41352a1e13070000000000020e1925303c47535d666b6b6b6b6b6b6b6b675f54493d3024180b000000000000000000000000000000000000000000000000000613202c3945525e6b778490998e847a74707072767c83898f959ba1a5a1a0a0a1a5a0978d82766b5f53473b2f23170b0000000000000000000000000000000007131e29333c44494d4d4d4d4d4d4d4d4d4d4c49433b322f3c4854606a7071717171716c645d564e474038312a231b212c353e454b4d4d4d4d4d4d4d4d4d4d4c4741392f251a0f03000f1b27333f4a545c616262626262626262615c54595c5c5c5c5c5c5c5c5a544c423a444e565b5c5c5c5c5c5c5c5b57555d616262626262626262615b52483d3125190d0000040d161f28313a434c555e677079828b9591938980776e655c534b42392f261e150c020000111e2a37434f5a646b6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6b645a4f43372a1e1100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000010c18242f39434b51545454545454545454524d453c31261b0f040000000000020d17212c353f49525b636b737a81878c9195989b9d9fa0a1a2a1a1a09e9c9a97948f8a857f78716961584f463c32281e1308000000000000000000030e18232d37414a535c656d747c82888e92969a9c9ea0a1a1a2a1a09f9d9b9894908b857f787169615850463d33291f140a00000000000000010d18242f3a454f5a646d767e868d92979a9d9fa0a1a2a1a09e9c9995908a837b736b6976828f979797978b7e7165584b3e3225180b00000b1824303c4854606c7884909ba7aca094897d72685d544b443f3c3b3b3c3e42474e57616b76818d98a4aea3978b8074685c5044372b1f1307000000000000000000091623303c4956636f7c8996a3b0a4978a7d7063574a3d3024170a000000101c2936424f5b6875828e9ba7afa2968a7d7165594e45413f3e3e4043484f57606a747f8a959ea3abb0a3968a7d7063564a3d3023170a0013202c3946535f6c798693a0aca79a8d8173675a4d4034271a0d00000b17232e39444d5458595959595959595650473d32272d38424b5358595959595959595751493f34291d12060000111d2a3744505d6a7783909daaa4988b7e7f8b97918a847e7b797879797b7d7266594c403326190d00000915222f3c4855626e7b8895a1aea295887b6e6255483e3a3836363636383a3f454e5864707c858382807e7d7b74685b4e4235281c0f0200000000000004080b0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0b080400000000000000121f2c3845525e6a757878787878787874695d52463b2f24180d010000000008131f2a36414d58636f78787878787878787165594c3f3326190d0000000000000000000000000000000000000000000000000004111d2a36434f5c6874818d99968d85807d7c7e82888e949aa0a39e9895939395989e9e93877b7064584c3f33271b0e02000000000000000000000000000000020c17212a32383d40404040404040404040403d383129313e4a5764707c7d7d7d7d7d766f676059514a433c342d261e232c343a3e404040404040404040403f3c362f261d130800000b17222d38424a5155555555555555555555515c646969696969696969665e53483f4b566067696969696969696862585255555555555555555554504940362c20150900010b161f28313a434c555e677079828b948b858d928981776e655d544b423930271e140900000e1a26323e48525a5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5a52483e32261a0e0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000004111d2935404b555c6161616161616161615e574d43382c201407000000000009141e29333d47515b646d757d858c92989da1a5a39f9d9b9a9a9a9a9b9da0a3a3a09b96908a837b736a61584e443a2f251a0f0400000000000000000a151f2a343f49535c656e777f868d94999ea2a4a09d9a999898999a9c9fa2a4a09b96908a837b736a62584f453b31261c110600000000000006121e2935404b56616c76808890989ea3a7a9a5a19f9d9c9c9c9c9ea09b958d857d746a7683909da4a4978a7d7164574b3e3124180b00020f1b2734404c5864707c8994a0aca79b8f84786c61564c423933302e2e2f32363c454f5a65707c88939faba89c9084786c6054473b2f23160a000000000000000000091623303c4956636f7c8996a3b0a4978a7d7063574a3d3024170a000000111e2a3744505d6a7683909ca9aca093877a6e6155493d3432313233373d454e58626d7884909ba7b3b0a3968a7d7063564a3d3023170a0013202c3946535f6c798693a0aca79a8d8173675a4d4034271a0d00000f1b28343f4b555f656666666666666661594f44382c323e49545d6466666666666666625b51453a2e2215090000111e2a3744505d6a7784909daaa4978b7e7a86919c958f8b878685858688807366594c403326190d00000814212e3b4754616d7a8693a0aca396897d716459504a47444343424344474a5057606a75818c908e8d8b898074675b4e4235281b0f0200000000030a101417191919191919191919191919191919191919191919191919191919191919191919191919191919191919191919191919191919191714100a040000000000121f2c3945525f6b77838585858585857a6e63574c4035291e1307000000020d1924303b47525e6975808585858585857d7266594c4033261a0d00000000000000000000000000000000000000000000000000010e1b2733404c5864717d89949f97908c8a898b8e93999fa59e98928d888686888d939b988c8074685b4f43362a1e110500000000000000000000000000000000050f1820272d313334343434343434343433312c2624313e4a5764717d878a8a8a888179726b635c554d463f3730292122292e323434343434343434343433302b251d140b01000006111c26303840454848484848484848484a56626e75757575757575757065594c434f5c687275757575757575746a5e5248484848484848484848443f372e251a0f040007121d28313a434c555e677079828b948b827a848d938a81776f665d544b423930261b1005000a16212c3740484f525353535353535353535353535353535353535353524f4840372c21160a000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000713202d3945515d676d6e6e6e6e6e6e6e6e695f54483c3023170a00000000040f1a25303b454f59636d767f878f969da3a7a19b9793908e8d8d8d8e8f9194979ca1a7a29b958d857c736a60564c41362b20150a0000000000000005101b26313c46515b656e77808991989fa5a39d9894908e8c8c8c8c8d8f92969ba0a6a29b958d857c746a61574d42382d22170c0100000000000a17222e3a46515d68737d88929aa2a9aba49e999592908f8f8f909194979c978f867c737784909daaa4978a7d7064574a3d3124170b0005121e2b3743505c6874818d99a5afa3978b7f73675b50453a302823222123252a333d48545f6b77838f9ba7aca094887c7063574b3f3226190d000000000000000000091623303c4956636f7c8996a3b0a4978a7d7063574a3d3024170a000000121f2b3845525e6b7884919eabaa9e9184786b5f5246392d262525272b333c46515c67737f8b97a3afb0a3968a7d7063564a3d3023170a0013202c3946535f6c798693a0aca79a8d8173675a4d4034271a0d0000111e2b3744505c6770737373737373726b6054483c2f35424e5a666f737373737373736d62564a3e3124180b0000111e2b3744515d6a7784919eaaa4978a7d75808c97a09b9794929292938c807366594c403326190d00000613202c3945525f6b7884909da9a5998d81756b625b565351504f4f505153575b6169727c86929c9b9995897d7064584b3f33261a0d01000000050d151b20242526262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262626262524201c150e0600000000111e2a37434f5b66727d89929292928b8074685d51463a2f23180d01000008131e2a35414c58636f7a86919292928f83786c61564a3e3125180c00000000000000000000000000000000000000000000000000000b1724303c4854606c78848f9aa19c989696979a9fa4a099938d87817c79797c8189929c9084776b5f5246392d2014070000000000000000000000000000000000060e161c2125272727272727272727272624211b23303c4955616c757e889197928b847c756e665f585049423b332c251e22252727272727272727272726241f1a130b02000000000a141e262e34393b3c3c3c3c3c3c3c3e4b5764717e8282828282828173675a4d44505d6a7782828282828282796d6053463c3c3c3c3c3c3c3c3b38342d251c130800000c18232f39434d555e677079828b948b8279717a848d938a81786f665d544b42372c21150a0005101a252e373e4346464646464646464646464646464646464646464646433e372e251a1005000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000815222e3b4854616d797b7b7b7b7b7b7b7a7164584b3e3125180b000000000a15202c37424c57616b757f889199a1a8a39c958f8a878482818080818284878b90959ca3a69f978e857c72685d53483d32261b10040000000000000b16212d38434d58626d76808a929ba3a8a099928c888481807e7e808183868a8f959ca3a69f978f867c73695f544a3f34291d120700000000020e1b27333f4b57626e79848f9aa3acaba29a938d8986848282828385878b9096988e857a7784919eaaa4978a7d7063574a3d3024170a000814212d3a46535f6b7884919da9aca093877b6e62564b3f33281e1715151619212c37434f5b67737f8b98a4b0a4988c8073675a4e4135291c10030000000000000000091623303c4956636f7c8996a3b0a4978a7d7063574a3d3024170a000000131f2c3946525f6c7985929faca99c8f8376695d5043372a1e18181a212a343f4b57626e7b87939facb0a3968a7d7063564a3d3023170a0013202c3946535f6c798693a0aca79a8d8173675a4d4034271a0d0001121f2c3845525f6b788080808080807d7063574a3d303643505d69768080808080807e7265594c3f3226190c0000111e2b3844515e6b7784919eaba3968a7d707a85909aa4a3a19f9f9f998c807366594c403326190d000004111e2a37434f5c6874818d99a4a99d92877d736c6662605e5d5c5c5d5e6063676c737b848e98a3a79c9085796d6154483c3023170b000000050e171f262c3032323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232302c2720180f050000000e1b27333e4a55606c77838e9a9e9c9185796e62574c4035291e120700020d1924303b46525d6974808b979e9e94897d72675b5044392d21150900000000000000000000000000000000000000000000000000000814202c3844505b67727d88929ba4a5a3a3a4a5a09b958e88827b75706d6d7077808a9593877a6e6155483c2f23160a000000000000000000000000000000000000040b1015181a1a1a1a1a1a1a1a1a1a1a181514212d3945505a636c767f88919b958e878078716a625b544c453e362f2820191a1a1a1a1a1a1a1a1a1a1917130e08010000000000020c141c23292d2f2f2f2f2f2f2f313e4b5764717e8b8f8f8f8f8d8173675a4d44505d6a77848f8f8f8f8f86796d6053463a2f2f2f2f2f2f2f2e2c28221b130a010000101c2834404b555f677079838c948b82797068727b848d938a81786f665d54493e32261a0d000009131c252c32373939393939393939393939393939393939393939393937322c251c130900000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000815222e3b4855616e7b888888888888887e7165584b3e3225180b000000040f1b26323d48535e69737d87919aa3aba299918a847e7a77757373737475787b7f848a9199a1a9a0978e84796f64594e43372c201509000000000005101c27333e49545f6a747e89929ca4a89f968e87817b78757372727374767a7e848a9199a2a9a1988e857b70665b50453a2f23180c0000000006121e2b37434f5b67737f8a96a1acada2999088817c797776757576787b80858b92968c827885929eaba3968a7d7063564a3d3023170a000a1723303c4955626e7b8794a0aca99c9084776b5f52463a2e22170c0808090f1b26323e4b57636f7c8895a1aea89b8f82766a5d5144372b1e12050000000000000000091623303c4956636f7c8996a3b0a4978a7d7063574a3d3024170a00000013202c3946535f6c798693a0aca89b8e8275685b4f4235291c0f0b0f18232e3a46525e6b7784909ca9b0a3968a7d7063564a3d3023170a0013202c3946535f6c798693a0aca79a8d8173675a4d4034271a0d0004121f2c3945525f6b78858c8c8c8c8a7d7063574a3d313743505d6976838c8c8c8c8c7f7265594c3f3326190c0000121f2b3845515e6b7885929ea2a296897c6f747e89929ba2a7aaaca6998c807366594c403326190d0000020e1b2734404c5864707c88939ea9a3998f867e77726f6c6a696969696a6c6f73787e858d96a0aaa1968b8074685c5044382c2014070000010c16202931383c3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3d38322a21170d0200000a16222d38444f5b66727d89949fa1968b7f73685c51453a2f23180c0107131e2a35414c57636e7a85919ca59a8f83786c61564a3f33281d1105000000000000000000000000000000000000000000000000000004101c27333f4a56616b76808992999d9f9f9d9a958f89837d77706a646060656e798490968a7d7064574b3e3225180c000000000000000000000000000000000000000005090c0d0d0d0d0d0d0d0d0d0d0d0b08111c28333e48515a646d767f89929b99918a837b746d655e574f484139322b22190f0d0d0d0d0d0d0d0d0d0b07030000000000000000020b12181d2022222222222224313e4b5764717e8b989c9c9a8d8173675a4d44505d6a7784909c9c9c9386796d6053463a2d22222222222222201c17110901000000121f2b3844505c677179838c948b827970676069727b848d938a81786f655a4e4235291c100000010a131a21262a2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2a26211a130a0100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000815222e3b4855616e7b8894949494948b7e7165584b3e3225180b0000000915202c37434e5965707a858f99a3aca29990878079736e6b6867666667696b6f737980878f98a1a9a0968b81766b5f54493d31251a0e02000000000a15212d38444f5a66717b86909aa4aaa0968d847c75706b6866656566676a6e72787f879099a3aaa0978d82776d62564b4034291d11050000000915222e3a47535f6b77848f9ba7b1a69b90877e76716d6a696868696c6f737980889094897e85929eaba3968a7d7063564a3d3023170a000c1926323f4b5864717d8a97a3afa69a8d8174685b4f43362a1e12060000000a16222f3b4754606d7986929fabab9e9285786c5f53463a2d2014070000000000000000091623303c4956636f7c8996a3b0a4978a7d7063574a3d3024170a00000013202c3946535f6c798693a0aca79b8e8174675b4e4134281b0e0206121e2a36424f5b6874818e9aa7b0a3968a7d7063564a3d3023170a0013202c3946535f6c798693a0aca79a8d8173675a4d4034271a0d0006131f2c3946525f6c7986929999978a7d7164574a3e313744505d6a7784909999998c807366594c403326190d0000121f2c3945525f6b78859295959595887c6f6c76808990969b9d9fa0998c807366594c403326190d0000000b1824303c4854606b76828d97a1aaa1988f89837e7b79777675757677797b7f83898f979fa8a3998f84796e63574c4034281c1004000007131e28323b43484b4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c49433c33291f1408000005111c27333e4a55606c77838e9aa59c9085796e62574b4034291d12060d18242f3b46525d6974808b97a2a094897d72675b5044392e22170b000000000000000000000000000000000000000000000000000000000b17222e39444f5a646e7780878d919293918e89847e78726c655f5954545c6874808c938c7f7266594d4033271a0d0100000000000000000000000000000000000000000000000000000000000000000000000c17222c363f48525b646d768089929b9c948d867e777068615a534b443d342b21160b000000000000000000000000000000000000000000070c111415151515151824313e4b5764717e8b98a4a79a8d8173675a4d44505d6a7784909da9a09386796d6053463a2d2015151515151513100b06000000000013202c3946535f6c79838c948b827970675e576069727b848d938a81766a5d5044372a1d11000000010910161a1e1f20202020202020202020202020202020202020201f1e1a161009010000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000815222e3b4855616e7b8895a1a1a1988b7e7165584b3e3225180b0000010d1925313d48545f6b76818c97a1aba49a90877e756e67625e5b5a595a5b5c5f63686e757d868f99a3a89d92877c7065594e42362a1e1105000000020e1a26323e4955606c77828d98a2aca3988e847a726b645f5c595858595b5e62676d757e87919ba6a99e94897e73685c5145392d22160a0000000b1824313d4a56626f7b8794a0acaba094897e746c65605e5c5b5c5d5f63686e767e8790908585929faca3968a7d7063564a3d3023170a000e1b2734414d5a6773808c99a5b1a4988b7e7265594c4033271a0e0200000006131f2c3845515e6a7784909da9ada094877b6e6155483c2f2216090000000000000000091623303c4956636f7c8996a3b0a4978a7d7063574a3d3024170a00000013202c3946535f6c798693a0aca79a8e8174675a4d4134271a0e01020e1a2733404d5966727f8c98a5b0a3968a7d7063564a3d3023170a0013202c3946535f6c798693a0aca79a8d8173675a4d4034271a0d000613202c3946535f6c7986939fa4978b7e7164574b3e313744515d6a7784919da6998d807366594d4033261a0d000013202c3946535f6c79868888888888887b6e656e777e858b8e919293928c807366594c403326190d0000000814202c37434f5a65707b858f98a0a8a19a948f8b888584838282838486888b8f949aa1a9a29a91877d73685d52463b2f23180c0000000c18242f3a444d5458595959595959595959595959595959595959595959595959595959595959595959595959595959595959595959595959595958554e453b3025190d0100000b16222d38444f5b66727d89949fa1968a7e73685c51453a2e23170c131e2935404c57636e7a85919ca59a8f83786c61554a3f33281d11060000000000000000000000000000000000000000000000000000000006111d28333d48525c656e767c8184868684827d78736d67615a544e484b5764707d8686868174685b4e4235281c0f02000000000000000000000000000000000000000000000000000000000000000000000005101a242d364049525b646d768089929c9f989089827a736c645d564e463d33281c1105000000000000000000000000000000000000000000000407080909090b1824313e4b5764717e8b98a4a79a8d8173675a4d44505d6a7784909daaa09386796d6053463a2d20130909090908070400000000000000121f2c3845515e69737c868b827970675e554e576069727b848d847b71675b4f4336291d100000000000050a0e1113131313131313131313131313131313131313131313110e0a0500000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000815222e3b4855616e7b8895a2aea5988b7e7165584b3e3225180b000006121e2a36424d5965707c87939ea8a89d93887e756b635c56524f4d4d4d4e5053575c636b737d87919c9d9a968d82766a5e5246392d20140700000006121e2b36424e5a66717d88939fa9a79c91867c72696059534f4d4c4c4d4e51565c636c757f8a95a0aba59b8f84796d61564a3e32261a0e0200000d1a2733404c5965727e8b97a3b0a79b8f83786d625a54514f4f4f5053575d646c757e88938e8e96a2aea3968a7d7063564a3d3023170a00101c2936424f5c6875828e9ba8afa296897d7063574a3d3124180b0000000004101d2936424f5c6875828e9ba8afa296897c7063564a3d3024170a0000000000000000091623303c4956636f7c8996a3b0a4978a7d7063574a3d3024170a00000013202c3946535f6c798693a0aca79a8e8174675a4d4134271a0e01000c1825323e4b5864717e8a97a4b0a3968a7d7063564a3d3023170a0013202c3946535f6c798693a0aca79a8d8173675a4d4034271a0d000713202d3a4653606d798693a0a4988b7e7165584b3e323844515e6b7784919ea69a8d8073675a4d4034271a0d010013202c3946525f6c777b7b7b7b7b7b7b796d61656d747a7e828486868583807366594c403326190d000000030f1b27323e49545f69737d868e969da3a59f9b97949290908f8f90909294979ba0a5a49e9790887f756b61564c40352a1e1307000000101c2834404c565f6565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656560574d41362a1d1105000005111c27333e4a55606c77838e9aa59b9084796d62564b3f34281d1118242f3a46515d6874808b96a2a094897d72665b5044392e22170b0000000000000000000000000000000000000000000000000000000000000b16212c36404a535c646b71757879797875716c67615c554f49433d4855616d787979797973675b4e4235281b0f0200000000000000000000000000000000000000000000000000000000000000000000000008121b242e374049525b656e77808a939ca29b938c857d766f6760584f44392d211508000000000000000000000000000000000000000000000000000000000b1824313e4b5764717e8b98a0a09a8d8173675a4d44505d6a7784909da0a09386796d6053463a2d20130700000000000000000000000000101d2935414d58616a737c827970675e554c454e576069727b847b72695f564b3f33271a0e000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000815222e3b4855616e7b8895a2aea5988b7e7165584b3e3225180b00000a16222e3a46525e6a76818d99a4aea2978c81766c625a524b46424140404143464b5159616b757f8a94918d8a86837a6e6154483b2e2115080000000a16232f3b47535f6b76828e99a5ada2968b80756a60574e4843403f3f4042454a515a636d78838f9aa6aca1958a7e72665a4e42362a1e120600000f1c2835424e5b6874818d9aa6b0a3978b7e73675b51484543424244474b525a636c76818c979aa0a8b0a3968a7d7063564a3d3023170a00111e2a3744505d6a7683909da9aea194887b6e6255483c2f22160900000000000e1b2734414d5a6773818d9aa6b1a4978b7e7164584b3e3225180c0000000000000000091623303c4956636f7c8996a3b0a4978a7d7063574a3d3024170a00000013202c3946535f6c798693a0aca79a8e8174675a4d4134271a0e01000a1724313d4a5763707d8a97a3b0a3968a7d7063564a3d3023170a0013202c3946535f6c798693a0aca79a8d8173675a4d4034271a0d000714202d3a4753606d798693a0a5988b7e7165584b3f323845515e6b7784919ea79a8d8173675a4d4134271a0e0100121e2b37434f5b666d6e6e6e6e6e6e6e6d675c5b62696e72757779797877746e63574b3e3225190c000000000a16212c37424d57616b747c848b92979ca0a3a3a19f9d9c9c9c9c9d9fa1a4a4a19d98938d867e766d63594f453a2f24190d02000000121f2b3844515d6871727272727272727272727272727272727272727272727272727272727272727272727272727272727272727272727272727271695e5246392d2013070000000b16222d38444f5b66727d89949fa1958a7e73675c5045392e22171e2935404c57626e7985909ca59a8f83786c61554a3f33281c110600000000000000000000000000000000000000000000000000000000000005101a242e38414a52596065686b6c6c6b6965615c56504a443e373945515c666c6c6c6c6c6961574b3f33261a0d010000000000000000000000000000000000000000000000000000000000000000000000000009121b252e374049535c656e77818a939ca09e978f888179726a6155493d3124180b000000000000000000000000000000000000000000000000000000000b1824313e4b5764717e8b939393938d8173675a4d44505d6a7784909393939386796d6053463a2d201307000000000000000000000000000d1925303b464f58616a747870675e554c433c454e5760697279726960574d44392e23170b0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000050a0d0f0f0f0f0f0f0d0a0500000000000000000000000000000000000000000000000000000000000000000000000000000000000000000815222e3b4855616e7b8895a2aea5988b7e7165584b3e3225180b00010d1926323e4a56626e7a86929ea9a99d91867a6f655a5048403a3634333335373a40474f59636e79848885817e7a77736a5f53463a2d2114070000010e1a26323f4b57636f7b87939faaa89d91857a6e63584e453d373432323335393f48515c67727d8995a1ada69a8f83776b5f52463a2e2215090000111d2a3743505d6976838f9ca9ada094877b6f62564a3f38363536373b4048515a656f7a86919da9b1b0a3968a7d7063564a3d3023170a00121f2b3845515e6b7784919eaaada093877a6d6054473a2e21140800000000000d192633404c5966727f8c99a5b2a5988c7f7265594c3f3326190c0000000000000000091623303c4956636f7c8996a3b0a4978a7d7063574a3d3024170a00000013202c3946535f6c798693a0aca79a8e8174675a4d4134271a0e01000a1723303d4a5663707d8a96a3b0a3968a7d7063564a3d3023170a0013202c3946535f6c798693a0aca79a8d8173675a4d4034271a0d000714202d3a4753606d7a8794a0a5988c7e7265584c3f323845515e6b7885929ea79a8e8174675a4d4134271a0e01000f1b27333f4a545c6161616161616161615d5551575d6266696b6c6c6c6a68645c52473b2f23160a0000000005101b26313b454f59626a727980868b909497999b9d9e9f9fa09f9e9d9c9a9794918c87827b746c645b51483d33281e13070000000013202c3946535f6c797f7f7f7f7f7f7f7f7f7f7f7f7f7f7f7f7f7f7f7f7f7f7f7f7f7f7f7f7f7f7f7f7f7f7f7f7f7f7f7f7f7f7f7f7f7f7f7f7f7f7a6d6154473a2e21140700000005111c27333e4a55606c77838e9aa59b8f84786d61564a3f33281c232f3a46515c68737f8a96a19f94897d72665b5044392d22170b000000000000000000000000000000000000000000000000000000000000000008121c262f3840484e54595c5e5f5f5e5c5955504b453f39332c34404a545b5f5f5f5f5f5e584f453a2f23170a00000000000000000000000000000000000000000000000000000000000000000000000000000009131c252e37414a535c656f78818a9393939393928b847c7265584c3f3226190c000000000000000000000000000000000000000000000000000000000b1824313e4b5764717e8686868686868173675a4d44505d6a7784868686868686796d6053463a2d2013070000000000000000000000000008141f2a343d464f58626a6c675e554c433a333c454e5760686c6860574e453b32281d1206000000000000000000000000000000000000000000000000000000000000000000000000000000000000040b11161a1c1c1c1c1c1c1a16110b040000000000000000000000000000000000000000000000000000000000000000000000000000000000000815222e3b4855616e7b8895a2aea5988b7e7165584b3e3225180b0004101d2935424e5a66737e8b97a3afa4988c8175695e53483f362e2a272627282a2f353d47515c68737f7c7875716e6a6761584e42372a1e1205000004111d2a36424f5b6773808b98a3afa4988c8074695d52473c332b27262527292e363f4a55616d7884909ca9ab9f93877b6f62564a3d3125180c0000121e2b3845515e6b7784919eaaab9e9285786c5f53463a2e2929292b2f363f48535e6975818c98a4b0b0a3968a7d7063564a3d3023170a00121f2c3945525f6c7885929fabac9f9286796c5f5346392d20130600000000000c1825323f4b5865717e8b98a5b1a6998d807366594d4033271a0d0000000000000000091623303c4956636f7c8996a3b0a4978a7d7063574a3d3024170a00000013202c3946535f6c798693a0aca79a8e8174675a4d4134271a0e01000a1723303d4a5663707d8a96a3b0a3968a7d7063564a3d3023170a0013202c3946535f6c798693a0aca79a8d8173675a4d4034271a0d000714212e3a4754616d7a8794a1a5998c7f7265594c3f323845525f6b7885929fa79b8e8174675b4e4134281b0e01000b17222d38424a51545555555555555554514b464c52565a5c5e5f5f5f5e5b58524a40352a1e1307000000000009141f29333d47505860686f757a8084878a8d8f90929292939292918f8d8b8885817b767069625a52493f362c21170c010000000013202c3946535f6c79868c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c877a6d6154473a2e211407000000000b16222d38444f5b66727d89949fa095897e72675b5044392d222934404b57626e7985909ca59a8e83786c61554a3f33281c11060000000000000000000000000000000000000000000000000000000000000000010a141d262e363d43484d5052535352504d49443f3a342e28232e38424a505253535353514d463d33291e1206000000000000000000000000000000000000000000000000000000000000000000000000000000010a131c252f38414a535d666f788186868686868686867f7265594c3f3226190c000000000000000000000000000000000000000000000000000000000b1724313e4a57637079797979797979797266594d43505c697479797979797979766b5f5346392d20130600000000000000000000000000020d18222b343d4650585e5f5c554c433a312a333c454e565d5f5d574e453c332920160b000000000000000000000000000000000000000000000000000000000000000000000000000000000000050e161c222628292929292826221c160e0500000000000000000000000000000000000000000000000000000000000000030406070808080707050815222e3b4855616e7b8895a2aea5988b7e7165584b3e3225180b000713202c3845515e6a76838f9ba7aca094887b7064584d42372d241d1b1a1a1b1e242b35404b57636d726f6c6965625e5b564f463c31261a0e0200000714202d3945525e6a77838f9ca8ada194887c7064584c41352a211b19191a1d242e3944505c6874818d99a5afa3978b7e7266594d4134281b0f0200121f2c3945525f6c7885929faba99d9083766a5d5144372b1e1c1c1e242d37414d5864707c8894a0adb0a3968a7d7063564a3d3023170a0013202c3946535f6c7986929facac9f9285786c5f5245392c1f120600000000000b1824313e4b5764717e8b98a4b1a79a8d8173675a4d4034271a0e0000000000000000091623303c4956636f7c8996a3b0a4978a7d7063574a3d3024170a00000013202c3946535f6c798693a0aca79a8e8174675a4d4134271a0e01000a1723303d4a5663707d8a96a3b0a3968a7d7063564a3d3023170a0013202c3946535f6c798693a0aca79a8d8173675a4d4034271a0d000815212e3b4854616e7b8794a1a6998c7f7366594c40333946525f6c7985929fa89b8e8175685b4e4235281b0f020006111c262f383f4548484848484848484845403b41464a4d5052525352514f4c4740382e24190e020000000000030d17212b353e464e565d64696f73787b7e8182848586868686858483817e7c7874706b655f58504840372d241a0f05000000000013202c3946535f6c7986939999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999994877a6d6154473a2e2114070000000005111c27333e4a55606c77838e9aa59a8f84786c61554a3f33282f3a45515c68737f8a96a19f94897d72665b5044392d22170b00000000000000000000000000000000000000000000000000000000000000000000020b141c242b32383c40434546464543413d39332e28231c1c2630383f43464646464645413c342b21170c0100000000000000000000000000000000000000000000000000000000000000000000000000000000010a131d262f38414b545d666f787979797979797979797165584b3f3225190c000000000000000000000000000000000000000000000000000000000916222f3b47535e676c6c6c6c6c6c6c6c6960554a404c58626a6c6c6c6c6c6c6c6b645a4f43372b1e12050000000000000000000000000000061019222b343e464d5253504b433a3128212a333c444c5153514c453c332a21170e040000000000000000000000000000000000000000000000000000000000000000000000000000000000040e1720272e32353636363635322e2720170e04000000000000000000000000000000000000000000000000000003070a0d0f1113141415151413121015222e3b4855616e7b8895a2aea5988b7e7165584b3e3225180b000916222f3b4854616d7986929eaba99c9084786b5f53473c30252222222222222222232f3b46515b626563605c5955524e4b453d342b2015090000000a16232f3c4855616e7a86939fabaa9d9185786c6054473b3024190f0c0c0d121c2834404c5864707d8996a2afa79a8e8275695c5043372a1e11050013202c3946535f6c7986929faca89b8f8275685c4f4236291c100f121b25303c4854606c7885919daab0a3968a7d7063564a3d3023170a0013202c3946535f6c798693a0acac9f9285786b5f5245382c1f120500000000000b1724313e4a5764717d8a97a4b1a79a8e8174675a4d4134271a0e0000000000000000091623303c4956636f7c8996a3b0a4978a7d7063574a3d3024170a00000013202c3946535f6c798693a0aca79a8e8174675a4d4134271a0e01000a1723303d4a5663707d8a96a3b0a3968a7d7063564a3d3023170a0013202c3946535f6c798693a0aca79a8d8173675a4d4034271a0d000815222e3b4855616e7b8894a1a6998c807366594c40333946535f6c7986929fa89b8e8275685b4e4235281c0f0200000a141d262e34383b3b3b3b3b3b3b3b3b393530353a3e41434546464544423f3c362e261c120700000000000000060f19232c343d444c52585e63676b6f71747577787979797978777674726f6c68645f5a544d463e362e241b120800000000000013202c3946535f6c798693a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a094877a6d6154473a2e21140700000000000b16222d38444f5b66727d89949fa095897d72665b4f44392d343f4b56626d7984909ba59a8e83776c61554a3f33281c11060000000000000000000000000000000000000000000000000000000000000000000000020a121a20262c303437383939383734312d28231d1711141e262d333739393939393835302a22191005000000000000000000000000000000000000000000000000000000000000000000000000000000000000010b141d262f39424b545d666c6c6c6c6c6c6c6c6c6c685f54483c3024170b0000000000000000000000000000000000000000000000000000000007131f2b37424c555c5f5f5f5f5f5f5f5f5d574e443b4650595e5f5f5f5f5f5f5f5f5a52493e33271b0f02000000000000000000000000000000071019222c343c424546443f3931281f18212a323a40444645413a332a21180f050000000000000000000000000000000000000000000000000000000000000000000000000000000000000b16202932393e4242424242423e39322920160b000000000000000000000000000000000000000000000000050a0f1316191c1e1f2021212121201f1d1b222e3b4855616e7b8895a2aea5988b7e7165584b3e3225180b000b1824313e4a5763707c8995a2aea69a8d8174685c4f43372f2f2f2f2f2f2f2f2f2f2f2f353f495157595754504d4946423f3a332b22190f060000000c1825323e4b5764707d8996a2afa79b8e8275695c5044372b1f13070000010c1723303c4855616d7a86939facaa9d9184786b5f5246392c2013070013202c3946535f6c798693a0aca89b8e8174685b4e4135281b0f0209141f2b3744505c6975828e9ba7b0a3968a7d7063564a3d3023170a0013202c3946535f6c798693a0acac9f9285786b5f5245382c1f120500000000000b1724313e4a5764717d8a97a4b1a79a8e8174675a4d4134271a0e0000000000000000091623303c4956636f7c8996a3b0a4978a7d7063574a3d3024170a00000013202c3946535f6c798693a0aca79a8e8174675a4d4134271a0e01000a1723303d4a5663707d8a96a3b0a3968a7d7063564a3d3023170a0013202c3946535f6c798693a0aca79a8d8173675a4d4034271a0d000815222e3b4855616e7b8895a2a69a8d807366594d40333946535f6c798693a0a89c8f8275685b4f4235281c0f020000020b141c23282c2e2e2e2e2e2e2e2e2e2d2924292e31343738393939383633302b241c140a00000000000000000007101a222b323a41474d52575b5f626567696a6b6c6c6c6c6b6a69676563605c58534e48423b342c241b12090000000000000013202c3946535f6c7986939393939393939393939393939393939393939393939393939393939393939393939393939393939393939393939393877a6d6154473a2e211407000000000005111c27333e4a55606c77838e9aa59a8f83786c61554a3e333a45515c68737e8a96a19f94897d72665b4f44392d22170b0000000000000000000000000000000000000000000000000000000000000000000000000000080f151b2024282a2c2c2c2c2a2825211c17120c060c141c22272b2c2c2c2c2c2c29251f1810070000000000000000000000000000000000000000000000000000000000000000000000000000000000000000020b141d263039424b545c5f5f5f5f5f5f5f5f5f5f5d564d43382c20140800000000000000000000000000000000000000000000000000000000030e1a25303a434b505353535353535353514c453c353e474e5253535353535353524f4940372c21160a000000000000000000000000000000000007101a222a3136383938342e271f160f1820292f3538393835302921180f0600000000000000000000000000000000000000000000000000000000000000000000000000000000000006111d27323b444a4e4f4f4f4f4e4a443b32271d1106000000000000000000000000000000000000000000050b11161b1f2326282a2c2d2e2e2e2e2d2b2a27252e3b4855616e7b8895a2aea5988b7e7165584b3e3225180b000d1a2633404c5965727e8b98a4b0a4978b7e7165584c403c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3f464a4c4b4744403d3c3c3c3a36302921180e0300000e1a2733404d5966727f8c98a5b1a5988c7f73665a4d4134281b0f030000000714202c3945525e6b7784919daaaca093877a6d6154483b2e2215080013202c3946535f6c798693a0aca79a8e8174675a4e4134271b0e01030f1b2834414d5a6673808c99a6b0a3968a7d7063564a3d3023170a0013202c3946535f6c798693a0acac9f9285786b5f5245382c1f120600000000000b1824313e4b5764717e8b97a4b1a79a8d8174675a4d4134271a0e0000000000000000091623303c4956636f7c8996a3b0a4978a7d7063574a3d3024170a00000013202c3946535f6c798693a0aca79a8e8174675a4d4134271a0e01000a1723303d4a5663707d8a96a3b0a3968a7d7063564a3d3023170a0013202c3946535f6c798693a0aca79a8d8173675a4d4034271a0d000915222f3c4855626f7b8895a2a79a8d8173675a4d40343a4653606d798693a0a99c8f8275695c4f4236291c0f03000000020a11181c20212222222222222222201d191e2225282a2b2c2c2c2b2927231f19120a020000000000000000000007101921282f363c42474b4f5356585a5c5d5e5f5f5f5f5f5e5d5b595653504c48433d37312a221a1209000000000000000013202c3946535f6c7986868686868686868686868686868686868686868686868686868686868686868686868686868686868686868686868686867a6d6154473a2e2114070000000000000b16222d38444f5b66727d89949fa094897d72665b4f44383f4b56626d7884909ba59a8e83776c61554a3e33281c1106000000000000000000000000000000000000000000000000000000000000000000000000000000040a0f14181b1d1f20201f1e1b1815100b060100020a11171b1e20202020201f1d19140e0600000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000020b141e273039424a5053535353535353535353514c443b31261b1004000000000000000000000000000000000000000000000000000000000009141e2831394044464646464646464645413b332c353c42454646464646464646433e372e251b10050000000000000000000000000000000000000710181f25292c2c2b28231d150d060e171e24292b2c2b29241e170f06000000000000000000000000000000000000000000000000000000000000000000000000000000000000000a16222e39444d555b5c5c5c5c5b554d44392e22160a00000000000000000000000000000000000000020a10171c22272b2f323537393a3b3b3b3a39383634312e3b4855616e7b8895a2aea5988b7e7165584b3e3225180b000f1b2835414e5b6774818d9aa6aea295897c6f6356494848484848484848484848484848484848484848484848484848484846423b332a1f150a00000f1c2935424e5b6874818e9aa7b0a3968a7d7064574b3e3225190c0000000004111d2a3643505c6975828f9ba8aea295897c6f6356493d3023170a0013202c3946535f6c798693a0aca79a8e8174675a4d4134271a0e01000c1925323f4b5865717e8b98a4b0a3968a7d7063564a3d3023170a00131f2c3946525f6c7986929facac9f9286796c5f5346392c20130600000000000b1825323e4b5865717e8b98a4b1a69a8d8073675a4d4034271a0d0000000000000000091623303c4956636f7c8996a3b0a4978a7d7063574a3d3024170a00000013202c3946535f6c798693a0aca79a8e8174675a4d4134271a0e01000a1723303d4a5663707d8a96a3b0a3968a7d7063564a3d3023170a0013202c3946535f6c798693a0aca79a8d8173675a4d4034271a0d000916222f3c4955626f7c8995a2a79a8d8174675a4d41343a4753606d7a8793a0a99c8f8276695c4f4336291c10030000000000060c101315151515151515151513110d1216191b1d1f20201f1e1d1a17130e0800000000000000000000000000070f161e242b30363b3f4346494c4e505152525353525251504e4c4a4744403c37322c261f181008000000000000000000131f2c3946525f6b767979797979797979797979797979797979797979797979797979797979797979797979797979797979797979797979797979776c6053473a2d21140700000000000005111c27333e4a55606c77838e9aa59a8e83776c6055493e45505c67737e8a95a19f94897d72665b4f44392d22160b00000000000000000000000000000000000000000000000000000000000000000000000000000000000004080c0f1112131312110f0c0904000000000000060b0f12131313131312100d0803000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000020c151e2730383f444646464646464646464644403a32291f150a000000000000000000000000000000000000000000000000000000000000020c161f282f3438393939393939393938353029232b313639393939393939393937322c251c13090000000000000000000000000000000000000000060e14191d1f201e1c17120b0300050c13181c1f201f1c18130d0500000000000000000000000000000000000000000000000000000000000000000000000000000000000000000d1a26333f4a555f6769696969675f554a3f33261a0d010000000000000000000000000000000000050d141b22282d33373b3e4144454747484847464543403d3a3b4855616e7b8895a2aea5988b7e7165584b3e3225180b00101d2a3643505c6976828f9ca8ada094877a6e61555555555555555555555555555555555555555555555555555555555555534d453b31261b0f0300111d2a3743505d6976838f9ca9aea195887b6f6255493c3023160a00000000010f1b2835414e5b6774818d9aa7b0a4978a7d7164574b3e3125180b0013202c3946535f6c798693a0aca79a8e8174675a4d4134271a0e01000b1724313e4a5764707d8a97a4b0a3968a7d7063564a3d3023170a00121f2c3845525e6b7885919eabaca09386796d6053473a2d21140700000000000c1926323f4c5965727e8c98a5b2a6998c807366594c4033261a0d0000000000000000091623303c4956636f7c8996a3b0a4978a7d7063574a3d3024170a00000013202c3946535f6c798693a0aca79a8e8174675a4d4134271a0e01000a1723303d4a5663707d8a96a3b0a3968a7d7063564a3d3023170a0013202c3946535f6c798693a0aca79a8d8173675a4d4034271a0d00091623303c4956626f7c8996a2a79a8e8174675a4e41343a4754606d7a8794a0a99c908376695c5043362a1d100300000000000000040708080808080808080807040105090c0f111213131312100e0b0703000000000000000000000000000000050c13191f252a2f33373a3d3f414344454646464645444342403d3b3734302b26211b140d0600000000000000000000111e2a37434f5a646b6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6b655b5044382b1f1206000000000000000b16222d38444f5b66727d89949f9f94887d71665a4f434a56616d78848f9ba59a8e83776c61554a3e33281c11050000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000030c151e272e33373939393939393939393938342f2820170d0300000000000000000000000000000000000000000000000000000000000000040d161d23282b2c2c2c2c2c2c2c2c2c29241e1920262a2c2c2c2c2c2c2c2c2c2a27211b130a0100000000000000000000000000000000000000000003090d111213120f0b060000000001070c10121312100c08020000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000f1c2935424e5b67717575757571675b4e4235291c0f0300000000000000000000000000000000060f171f262d33393e43474b4e5052535454545453514f4d4a46424855616e7b8895a2aea5988b7e7165584b3e3225180b00111e2b3744515d6a7784909daaaca09386796d626262626262626262626262626262626262626262626262626262626262625e574d43372b1f130700121e2b3844515e6b7784919daaada094877a6d6154473b2e21150800000000000d1a2733404d596673808c99a6b2a5988b7e7265594c3f3226190c0013202c3946535f6c798693a0aca79a8e8174675a4d4134271a0e01000a1723303d4a5663707d8a96a3b0a3968a7d7063564a3d3023170a00111e2b3744515d6a7784909daaada194877b6e6154483b2e22150800000000000d1a2734404d5a6673808c99a6b1a5988b7e7265584b3f3225190c0000000000000000091623303c4956636f7c8996a3b0a4978a7d7063574a3d3024170a00000013202c3946535f6c798693a0aca79a8e8174675a4d4134271a0e01000a1723303d4a5663707d8a96a3b0a3968a7d7063564a3d3023170a0013202c3946535f6c798693a0aca79a8d8173675a4d4034271a0d000a1623303c4956636f7c8996a3a89b8e8174675b4e41343a4754616d7a8794a1aa9d908376695d5043362a1d10040000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001080e14191e23272b2e303335363738393939393838363533312e2b28241f1a150f090300000000000000000000000e1a26323e48525a5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5b53493f33281c0f030000000000000005111c27333e4a55606c77838e9aa5998e82776b605449505b67727e8995a09f94897d72665b4f44392d22160b00000000000000000000000000000000000000000000000000030507070707070707070707060400000000000000000000000000000000000000000000000000000000000000000000000306070707070707070707070503000000000000000000000000000000000000000000000000000000000000000000000000000000030c151c23282b2c2c2c2c2c2c2c2c2c2c2b28241e160e05000000000000000000000000000000000000000000000000000000000000000000040b12181c1f20202020202020201f1c19130e151a1d1f202020202020201f1e1b161009010000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000101c2936434f5c69768282828276695c4f4336291c1003000000000000000000000000000000060f18212930383e444a4f53575a5d5f60616161605f5e5c5956524d4855616e7b8895a2aea5988b7e7165584b3e3225180b00121f2c3845525e6b7885919eabac9f9285796f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6e695f54483b2f23160900121f2c3845525f6b7885929eabaca09386796c6053463a2d20130700000000000c1925323f4c5865727e8b98a5b2a6998c807366594d4033261a0d0013202c3946535f6c798693a0aca79a8e8174675a4d4134271a0e01000a1723303d4a5663707d8a96a3b0a3968a7d7063564a3d3023170a00101d293643505c6975828f9ca8afa295897c6f6356493d3024170a00000000020f1c2835424e5b6874818e9aa7b0a3978a7d7064574a3e3124180b0000000000000000091623303c4956636f7c8996a3b0a4978a7d7063574a3d3024170a00000013202c3946535f6c798693a0aca79a8e8174675a4d4134271a0e01000a1723303d4a5663707d8a96a3b0a3968a7d7063564a3d3023170a0013202c3946535f6c798693a0aca79a8d8173675a4d4034271a0d000a1723303d4a5663707d8a96a3a89b8e8275685b4e42353b4854616e7b8894a1aa9d9084776a5d5044372a1d110400000000000001060a0c0e0e0e0e0e0e0e0d0c090400000000000000000000000000000000000000000000000000000000000000000003090e13171b1e212426282a2b2c2c2c2c2c2c2b2a282724221f1b18130f0a04000000000000000000000000000a16212c3740484f525353535353535353535353535353535353535353535353535353535353535353535353535353535353535353535353535353524f4941372d22170b0000000000000000000b16222d38444f5b66727d89949f9f93887c71655a4e56616d78848f9aa59a8e83776c60554a3e33281c11050000000000000000000000000000000000000000000000050b0f121314141414141414141413100c0701000000000000000000000000000000000000000000000000000000000000060c101214141414141414141414120f0b050000000000000000000000000000000000000000000000000000000000000000000000000000030a11171b1e202020202020202020201f1c18130c05000000000000000000000000000000000000000000000000000000000000000000000001070c1012131313131313131312100d0803090e11131313131313131313110e0a0500000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000003080c0f1111111111100e0a05000000000000000000000000000000000000000000000000000000000000101c2936434f5c6976838f8f8376695c4f4336291c10030000000000000000000000000000050f18212a333b424950555b5f6367696b6d6d6e6e6d6c6b6866625e595455616e7b8895a2aea5988b7e7165584b3e3225180b00131f2c3946525f6c7985929facac9f92857b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7063574a3d3124170a0013202c3946535f6c7986929facac9f9286796c5f5246392c1f130600000000000b1825313e4b5864717e8b98a4b1a69a8d8173675a4d4034271a0d0013202c3946535f6c798693a0aca79a8e8174675a4d4134271a0e01000a1723303d4a5663707d8a96a3b0a3968a7d7063564a3d3023170a000f1b2835414e5b6774818d9aa6b0a4978a7e7164584b3f3226190d0100000005111e2a3744505d6976838f9ca9aea195887b6f6256493c3023160a0000000000000000091623303c4956636f7c8996a3b0a4978a7d7063574a3d3024170a00000013202c3946535f6c798693a0aca79a8e8174675a4d4134271a0e01000a1723303d4a5663707d8a96a3b0a3968a7d7063564a3d3023170a0013202c3946535f6c798693a0aca79a8d8173675a4d4034271a0d000a1724303d4a5763707d8a96a3a89b8e8275685b4f42353b4855616e7b8894a1aa9d9084776a5d5144372a1e11040000000000050c1216191a1a1a1a1a1a1a1a1815100a0300000000000000000000000000000000000000000000000000000000000000000002070b0f1215171a1b1d1e1f1f20201f1f1e1d1c1a1815120f0b070300000000000000000000000000000005101a252e373e4346464646464646464646464646464646464646464646464646464646464646464646464646464646464646464646464646464646433e372f261b110600000000000000000005111c27333e4a55606c77838e9aa4998d82766b5f545b67727e8995a09f94897d72665b4f44382d22160b00000000000000000000000000000000000000000000010910161b1e202020202020202020201f1d18130c04000000000000000000000000000000000000000000000000000000030a11171c1f202020202020202020201f1b17110a020000000000000000000000000000000000000000000000000000000000000000000000000000060b0f121313131313131313131312100c0701000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000070e14191c1d1e1e1e1e1d1a16110a0300000000000000000000000000000000000000000000000000000000101c2936434f5c69768390908376695c4f4336291c100300000000000000000000000000030e17212a333c454c545b61666b6f737678797a7b7b7a797775726e6a655f58616e7b8895a2aea5988b7e7165584b3e3225180b0013202c3946535f6c7986939facaca0948a88888888888888888888888888888888888888888888888888888888888888887d7164574a3e3124170b0013202c3946535f6c798693a0acac9f9285786b5f5245382c1f120500000000000b1824313e4b5764717d8a97a4b1a79a8e8174675a4d4134271a0e0013202c3946535f6c798693a0aca79a8e8174675a4d4134271a0e01000a1723303d4a5663707d8a96a3b0a3968a7d7063564a3d3023170a000d1a2633404c5965727e8b98a4b1a6998c8073675a4e4235291d10040000000814212d3946525f6b7885919eaaac9f93867a6d6054473b2e2115080000000000000000091623303c4956636f7c8996a3b0a4978a7d7063574a3d3024170a00000013202c3946535f6c798693a0aca79a8e8174675a4d4134271a0e01000a1723303d4a5663707d8a96a3b0a3968a7d7063564a3d3023170a0013202c3946535f6c798693a0aca79a8d8173675a4d4034271a0d000b1724313e4a5764707d8a97a4a89c8f8275685c4f42363c4855626e7b8895a2aa9e9184776a5e5144382b1e1105000000000710171d2225272727272727272725211b150d0400000000000000000000000000000000000000000000000000000000000000000000000205080b0d0f101112131313131212100f0d0b0906030000000000000000000000000000000000000009131c252c32373939393939393939393939393939393939393939393939393939393939393939393939393939393939393939393939393939393937332d251d140a00000000000000000000000b16222d38444f5b66727d89949f9e93887c706559616c78838f9aa59a8e83776c60554a3e33271c1105000000000000000000000000000000000000000000010a131b22272b2d2d2d2d2d2d2d2d2d2d2c29241e160e0400000000000000000000000000000000000000000000000000030c151c23282b2d2d2d2d2d2d2d2d2d2d2b27221b140b02000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000040709090909090909080501000105080909090909090907040000000000000000000000000000000911191f25282a2a2a2a2a2926221c150c03000000000000000000000000000000000000000000000000000000101c2936434f5c69768390908376695c4f4336291c1003000000000000000000000000000b151f29333c454e575e656c72777c80828586878887878684817e7a76706a63616e7b8895a2aea5988b7e7165584b3e3225180b0013202c3946535f6c798693a0acb1a69c96959595959595959595959595959595959595959595959595959595959595958a7d7164574a3e3124170b0013202c3946535f6c798693a0acac9f9285786b5f5245382c1f120500000000000b1724313e4a5764717d8a97a4b1a79a8e8174675a4d4134271a0e0013202c3946535f6c798693a0aca79a8e8174675a4d4134271a0e01000a1723303d4a5663707d8a96a3b0a3968a7d7063564a3d3023170a000b1824313d4a56636f7c8995a1aea89b8f83766a5d5145392d21150a0605060c1824303d4955626e7a8793a0aca99d9184776b5e5245392c2013060000000000000000091623303c4956636f7c8996a3b0a4978a7d7063574a3d3024170a00000013202c3946535f6c798693a0aca79a8e8174675a4d4134271a0e01000a1723303d4a5663707d8a96a3b0a3968a7d7063564a3d3023170a0013202c3946535f6c798693a0aca79a8d8173675a4d4034271a0d000b1724313e4a5764717d8a97a4a99c8f8275695c4f42363c4855626f7b8895a2ab9e9184776b5e5144382b1e110500000007101922282e323434343434343433312c261f160d03000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000010a131a21262a2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2a27221b130b02000000000000000000000005111c27333e4a55606c77838e9aa4998d82766b5f66727d8994a09f94897d72665b4f44382d22160b0000000000000000000000000000000000000000000009131c252d33373a3a3a3a3a3a3a3a3a3a38352f2820160d020000000000000000000000000000000000000000000000000b151e262e34383a3a3a3a3a3a3a3a3a3a37332d251d1309000000000000000004080b0c0d0d0d0d0d0d0d0c0b0905000000000000000000000000000000000000000000000002070a0c0d0d0d0d0d0d0d0d0d0d0c0b080400000000000000000000000000000000000000060b0f1213131313131313131312100d08020000000000000000000000000000000000000000000000000000000000000000060c11141616161616161614110d070d11141616161616161614100c0600000000000000000000000007111b232a3035373737373736322d261e160c020000000000000000000000000000000000000000000000000000101c2936434f5c69768390908376695c4f4336291c100300000000000000000000000007121d27313b454e57606870777d83888c8f91939494949392908e8b86817b746d656e7b8895a1aea5988b7e7165584b3e3225180b0013202c3946535f6c798693a0acb7aea7a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2978a7d7064574a3e3124170b0013202c3946535f6c798693a0acac9f9285786b5f5245382c1f120500000000000b1824313e4b5764717d8a97a4b1a79a8e8174675a4d4134271a0e0013202c3946535f6c798693a0aca79a8e8174675a4d4134271a0e01000a1723303d4a5663707d8a96a3b0a3968a7d7063564a3d3023170a000915222e3b4754606d7986929eaaab9e9286796d6155493d31261c15131213151e2935404c5965717d8a96a3afa69a8e8175685c4f43362a1d11040000000000000000091623303c4956636f7c8996a3b0a4978a7d7063574a3d3024170a00000013202c3946535f6c798693a0aca79a8e8174675a4d4134271a0e01000a1723303d4a5663707d8a96a3b0a3968a7d7063564a3d3023170a0013202c3946535f6c798693a0aca79a8d8173675a4d4034271a0d000b1824313e4b5764717e8b98a4a99c908376695c4f43363c4955626f7c8996a2ab9e9285786b5e5145382b1e12050000030e19222b333a3e41414141414141403d3831281f150b0000000000000002070b0e101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010100f0e0a06000000000000000000000000010910161a1e1f2020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020201e1b16100901000000000000000000000000000b16222d38444f5b66727d89949f9e93877b70656c77838f9aa5998e83776c60554a3e33271c110500000000000000000000000000000000000000000005101b252e373e434647474747474747474745403a32281e1409000000000000000000000000000000000000000000000007121d2730383f4447474747474747474746443e372f251b10050000000000030a1014171919191919191919191815110b040000000000000000000000000000000000000001080e13161919191919191919191919191815100a04000000000000000000000000000000030b12171b1e1f1f1f1f1f1f1f1f1f1f1c19140d060000000000000000000000000000000000000000000000000000000000010a11181d2022232323232323211d1812181d2123232323232322201c17110901000000000000000000040f19232d353c414444444444423e3830281e13090000000000000000000000000000000000000000000000000000101c2936434f5c69768390908376695c4f4336291c10030000000000000000000000020e19232e39434d57616a727a82898f94989b9ea0a1a1a1a09f9d9a97928d867f776e6e7b8894a1aea5988b7e7165584b3e3225180b00131f2c3946525f6c7986929facb4aaa19b9a9a9a9a9a9a9a9a9a9a9a9a9a9a9a9a9a9a9a9a9a9a9a9a9a9da4aeafa3968a7d7063574a3d3024170a0013202c3946535f6c7986929facac9f9286796c5f5246392c1f130600000000000b1825323e4b5864717e8b98a4b1a69a8d8173675a4d4034271a0d0013202c3946535f6c798693a0aca79a8e8174675a4d4134271a0e01000a1723303d4a5663707d8a96a3b0a3968a7d7063564a3d3023170a0006131f2c3845515d6a76828e9ba7aea296897d71655a4e43382e2622201f2022262f3a45515d6975818d99a6afa3978a7e7265594d4034271b0e020000000000000000091623303c4956636f7c8996a3b0a4978a7d7063574a3d3024170a00000013202c3946535f6c798693a0aca79a8e8174675a4d4134271a0e01000a1723303d4a5663707d8a96a3b0a3968a7d7063564a3d3023170a0013202c3946535f6c798693a0aca79a8d8173675a4d4034271a0d000b1825323e4b5865717e8b98a4a99c908376695d5043363c4956636f7c8996a2ab9e9285786b5f5245382c1f120500000915202b343d454a4d4d4d4d4d4d4d4d49433a31271c11060000000000060d13171b1c1c1c1c1c1c1c1c1c1c1c1c1c1c1c1c1c1c1c1c1c1c1c1c1c1c1c1c1c1c1c1c1c1c1c1c1c1c1c1c1c1c1c1c1c1c1c1c1c1c1a17120c04000000000000000000000000050a0e1113131313131313131313131313131313131313131313131313131313131313131313131313131313131313131313131313131313110f0a0500000000000000000000000000000005111c27333e4a55606c77838e9aa4988d81766a727d89949f9f94887d71665b4f44382d22160b000000000000000000000000000000000000000000000a16212c3740494f53535353535353535353514b443a30251a0e03000000000000000000000000000000000000000000000c18232e39424a5053535353535353535353504941372d22160b00000000050e151b202426262626262626262624211c160f070000000000000000000000000000000000020b12191f2325262626262626262626262624211c150e0600000000000000000000000000040d151d23282b2c2c2c2c2c2c2c2c2c2b29251f181007000000000000000000000000000000000000000000000000000000010b131c23282d2f30303030302f2d29241d24292d2f30303030302f2d28221b130a0000000000000000000915202b353f474d50515151514f4a423a30251a0e0300000000000000000000000000000000000000000000000000101c2936434f5c69768390908376695c4f4336291c1003000000000000000000000008141f2a35404b555f69737c848c949a9fa4a8a7a3a09e9c9c9c9d9fa19e98918981776e7a8794a1aea5988b7e7165584b3e3225180b00121f2c3845525f6b7885929eabafa3988f8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e929ca8afa296897c6f6356493c3023160900121f2c3845525f6b7885929eabaca09386796d6053463a2d20130700000000000c1925323f4c5865727e8b98a5b2a6998c807366594d4033261a0d0013202c3946535f6c798693a0aca79a8e8174675a4d4134271a0e01000a1723303d4a5663707d8a96a3b0a3968a7d7063564a3d3023170a0004101c2935414e5a66727e8a96a2aea69a8e82766a5f54494037322e2c2c2c2e3238414c57626d7985919da9ab9f93877b6e62564a3d3125180c000000000000000000091623303c4956636f7c8996a3b0a4978a7d7063574a3d3024170a00000013202c3946535f6c798693a0aca79a8e8174675a4d4134271a0e01000a1723303d4a5663707d8a96a3b0a3968a7d7063564a3d3023170a0013202c3946535f6c798693a0aca79a8d8173675a4d4034271a0d000c1825323f4b5865727e8b98a5aa9d9083766a5d5043373d495663707c8996a3ac9f9285786c5f5245392c1f120600020e1a26313c464f565a5a5a5a5a5a5a59544c43392e22160a000000000810181e2327292929292929292929292929292929292929292929292929292929292929292929292929292929292929292929292929292926221d160e060000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000b16222d38444f5b66727d89949f9e92877b7077838e9aa5998e83776c6055493e33271c1105000000000000000000000000000000000000000000000e1a26323e49525b5f6060606060606060605d564c42372b1f130700000000000000000000000000000000000000000005111d2934404a545c606060606060606060605b53493e33271b0f030000050e1720272c30333333333333333333312d2721191006000000000000000000000000000000010b141d242a2f323333333333333333333333312d2720180f050000000000000000000000020c161f272e34373939393939393939393835302a22190f05000000000000000000000000000000000000000000000000000009131d252d34393c3c3c3c3c3c3c39352e272f353a3c3c3c3c3c3c3c39342d251c120800000000000000000e1a26313d4751585d5d5d5d5d5b544c41362b1f130700000000000000000000000000000000000000000000000000101c2936434f5c69768390908376695c4f4336291c100300000000000000000000020e1925303b46515c67717b858e969ea5aba7a09b979391908f8f909295989d9b938980767a8794a0ada5988b7e7165584b3e3225180b00111e2b3844515e6a7784919daaada09387818181818181818181818181818181818181818181818181818c99a6aea194887b6e6155483b2f22150900121e2b3844515e6b7784919daaada094877a6d6154473b2e21150800000000000d1a2633404d596673808c99a6b2a5988c7e7265594c3f3226190c0013202c3946535f6c798693a0aca79a8e8174675a4d4134271a0e01000a1723303d4a5663707d8a96a3b0a3968a7d7063564a3d3023170a00000d1925323e4a56626e7a86929da9aa9e93877c70665b5249423e3b3938393b3e434a535d68737e8a96a2ada69a8f83776a5e52463a2e211509000000000000000000091623303c4956636f7c8996a3b0a4978a7d7063574a3d3024170a00000013202c3946535f6c798693a0aca79a8e8174675a4d4134271a0e01000a1723303d4a5663707d8a96a3b0a3968a7d7063564a3d3023170a0013202c3946535f6c798693a0aca79a8d8173675a4d4034271a0d000c1925323f4c5865727e8c98a5aa9d9084776a5d5044373d4a5663707d8a96a3ac9f9286796c5f5246392c1f13060005121e2a37424e586166676767676767655e554a3f33261a0e01000007111a22292f333636363636363636363636363636363636363636363636363636363636363636363636363636363636363636363636363635332e2820180e0500000000000002070b0e101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010100f0e0a06000000000000000000000000000000000000000000000005111c27333e4a55606c77838e9aa3988c81757d88949f9f94887d71665b4f44382d22160b0000000000000000000000000000000000000000000000111e2a36434f5a646c6d6d6d6d6d6d6d6d6d685e53473b2f24180c0000000000000000000000000000000000000000000a16222d3945515c666c6d6d6d6d6d6d6d6d6c655b4f43372b1e120500010c17202931383d3f404040404040403f3d39322b22180e03000000000000000000000000000009131d262f363b3f404040404040404040403f3d38322a21170d020000000000000000000008131e2831393f4445464646464646464645413b342b21170c01000000000000000000000000000000000000000000000000040f1a252f373f45484949494949494640393039404649494949494948453f372e241a0f0300000000000000111d2a36424e5963696a6a6a6a665d53473b2f23160a00000000000000000000000000000000000000000000000000101c2936434f5c69768390908376695c4f4336291c10030000000000000000000007131f2a36414d58636e78838d97a0a8aca49c958f8b87848382838486888c91979b92887e7a8693a0ada5988b7e7165584b3e3225180b00101d2a3643505c6976838f9ca9ada094877a7474747474747474747474747474747474747474747474808d9aa6aca093867a6d6054473a2e21140700111d2a3743505d6976838f9ca9aea295887b6f6255493c3023160a00000000010f1b2835414e5a6774818d9aa7b0a4978a7d7164574b3e3125180b0013202c3946535f6c798693a0aca79a8e8174675a4d4134271a0e01000a1723303d4a5663707d8a96a3b0a3968a7d7063564a3d3023170a00000915222e3a46525e6975818c98a3aea4988d82776d645b544e4a47464546474a4e545c656f7984909ba6aca1958a7e72665a4e42362a1e1205000000000000000000091623303c4956636f7c8996a3b0a4978a7d7063574a3d3024170a00000013202c3946535f6c798693a0aca79a8e8174675a4d4134271a0e01000a1723303d4a5663707d8a96a3b0a3968a7d7063564a3d3023170a0013202c3946535f6c798693a0aca79a8d8173675a4d4034271a0d000c1926323f4c5965727f8c99a6aa9e9184776a5d5144373d4a5763707d8a97a4aca09386796c5f5346392c201306000714212d3a46535f6a7374747474747470675b4f4236291d100300030e19232c343b4042434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343423f39322a20160c0100000000060d13171b1c1c1c1c1c1c1c1c1c1c1c1c1c1c1c1c1c1c1c1c1c1c1c1c1c1c1c1c1c1c1c1c1c1c1c1c1c1c1c1c1c1c1c1c1c1c1c1c1c1c1a17120c04000000000000000000000000000000000000000000000b16222d38444f5b66727d89949f9d92867b828e99a5998e83776c6055493e33271c10050000000000000000000000000000000000000000000000121f2c3945525f6b767a7a7a7a7a7a7a7a796f64584c4034281c110500000000000000000000000000000000000000030e1a26323e4a56626d787a7a7a7a7a7a7a7a776c5f5346392d2013060007131e29323b43494c4c4c4c4c4c4c4c4c49443c342a1f140900000000000000000000000000050f1a252f3840474b4c4c4c4c4c4c4c4c4c4c4c49433c33291e1308000000000000000000020e1925303a434a50525252525252525252514d463d33291d12060000000000000000000000000000000000000000000000000915202c3641495155565656565655514a4238424b5155565656565655504940362b20140800000000000000131f2c3945525e6a75777777776f64574b3e3225180b00000000000000000000000000000000000000000000000000101c2936434f5c69768390908376695c4f4336291c1003000000000000000000000c18242f3b47525e6974808a959fa9ada39a928a847e7a7876757677797c80858c939a8f857a8693a0ada5988b7e7165584b3e3225180b000f1c2835424e5b6874818d9aa7aea195887b6f67676767676767676767676767676767676767676875828e9ba8aa9e9185786b5f5245392c1f1306000f1c2935424e5b6874818e9aa7b0a3968a7d7064574b3e3225190c0000000004111d2a36434f5c6975828f9ba8afa295897c6f6356493d3023170a0013202c3946535f6c798693a0aca79a8e8174675a4d4134271a0e01000a1723303d4a5663707d8a96a3b0a3968a7d7063564a3d3023170a000005111d2935414d5964707b87929da7a99e948980766d655f5a565452525254565a5f666e77818b96a1aca59b8f84796d61564a3e32261a0e02000000000000000000091623303c4956636f7c8996a3b0a4978a7d7063574a3d3024170a00000013202c3946535f6c798693a0aca79a8e8174675a4d4134271a0e01000a1723303d4a5663707d8a96a3b0a3968a7d7063564a3d3023170a0013202c3946535f6c798693a0aca79a8d8173675a4d4034271a0d000d192633404c596673808c99a6aa9e9184776b5e5144383e4a5764717d8a97a4aca09386796d6053463a2d201307000815222e3b4855616e7b818181818181776a5d5044372a1d1104000914202a353e464c4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4b443c32281d12060000000810181e2327292929292929292929292929292929292929292929292929292929292929292929292929292929292929292929292929292926221d160e0600000000000000000000000000000000000000000005111c27333e4a55606c77838e9aa3978c8188949f9f94887d71665b4f44382d22160b000000000000000000000000000000000000000000000000121f2c3945525e6b7783878787878787878074685c5145392d2115090000000000000000000000000000000000000007131f2b37434e5a66727e8787878787878783776b5f5346392d201306000c18242f3a444d54585959595959595959554e463c31251a0e020000000000000000000000010b16212c37414a52575959595959595959595959554e453b3024190d01000000000000000006121e2a36414c555c5f5f5f5f5f5f5f5f5f5d584f453a2e23170a0000000000000000000000000000000000000000000000000d1925313d48535b616363636363625c544a3f4a545d626363636363615b52473c3125180c0000000000000013202c3946535f6c798484847e7265584c3f3225190c00000000000000000000000000000000000000000000000000101c2936434f5c69768390908376695c4f4336291c100300000000000000000004101c2834404c58636f7a86919ca7afa59b91888079736e6b6969696a6c70747a818992968b808693a0aca5988b7e7165584b3e3225180b000d1a2733404c5966727e8b98a4afa3968a7d70645a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5e6b7784909daaa89c8f8376695d5044372a1e1104000e1a2734404d5966737f8c98a5b1a5988c7f73665a4d4134281b0f030000000713202c3945525e6b7784919daaada094877a6e6154483b2f2215090013202c3946535f6c798693a0aca79a8e8174675a4d4134271a0e01000a1723303d4a5663707d8a96a3b0a3968a7d7063564a3d3023170a0000010d1925313c48535f6a75808b96a0aaa59b91887f77706a6663605f5f5f6063666b71788089939da8a99e94897e73685c5145392d22160a00000000000000000000091623303c4956636f7c8996a3b0a4978a7d7063574a3d3024170a00000013202c3946535f6c798693a0aca79a8e8174675a4d4134271a0e01000a1723303d4a5663707d8a96a3b0a3968a7d7063564a3d3023170a0013202c3946535f6c798693a0aca79a8d8173675a4d4034271a0d000d1a2633404d596673808c99a6ab9e9184776b5e5145383e4b5764717d8a97a4ada09386796d6053473a2d201407000915222f3c4855626f7b888e8e8e8e84776a5e5144382b1e1105000d1925313c4650575c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5b564e443a2e23170b000007111a22292f333636363636363636363636363636363636363636363636363636363636363636363636363636363636363636363636363635332e2820180e050000000000000000000000000000000000000000000b16222d38444f5b66727d89949f9d928a8e99a5998e82776c6055493e33271c1005000000000000000000000000000000000000000000000000111d2a36434e5a66727e8a94949494949185796d6155493e32261a0e020000000000000000000000000000000000000c18242f3b47535f6b77838f94949494948a7e73675b4f43372b1e120500101c2935404c565f65666666666666666560584d42362a1e1105000000000000000000000007121d28333d48535c63666666666666666666666560574c4135291d100400000000000000000915222e3b47535e676c6c6c6c6c6c6c6c6c6961564b3f33261a0d0100000000000000000000000000000000000000000000000f1c2935414e59646d6f6f6f6f6f6e665b4f434f5b666e6f6f6f6f6f6d64594d4134281b0f0200000000000013202c3946535f6c7986918c7e7265584c3f3225190c00000000000000000000000000000000000000000000000000101c2936434f5c69768390908376695c4f4336291c10030000000000000000000814202c3945515d6874808c97a2ada99e93897f766e67625f5d5c5c5e6064696f77808992928787939faca5988b7e7165584b3e3225180b000b1825313e4a5763707c8995a2aea5988c8073675a4e4d4d4d4d4d4d4d4d4d4d4d4d4d4d4d55616d7a86939faca6998d8074675b4e4235281c0f03000c1825323e4b5764707d8996a2afa79b8e8275695c5044372b1f13080201020b17232f3b4854616d7a86939facaa9e9185786c5f5346392d2014070013202c3946535f6c798693a0aca79a8e8174675a4d4134271a0e01000a1723303d4a5663707d8a96a3b0a3968a7d7063564a3d3023170a0000000814202b37424e59646f79848e98a1aaa39a9189827b76726f6d6c6b6c6d6f72767c828a929ba5a9a0978d82776d62564b4034281d110500000000000000000000091623303c4956636f7c8996a3b0a4978a7d7063574a3d3024170a00000013202c3946535f6c798693a0aca79a8e8174675a4d4134271a0e01000a1723303d4a5663707d8a96a3b0a3968a7d7063564a3d3023170a0013202c3946535f6c798693a0aca79a8d8173675a4d4034271a0d000d1a2733404d596673808d9aa6ab9e9285786b5e5145383e4b5764717e8b98a4ada094877a6d6053473a2d21140700091623303c4956626f7c89969a9a9185786b5e5145382b1f120500111d2936424d5862686969696969696969696969696969696969696969696969696969696969696969696969696969696969696969696969696760564b3f33271a0e00030e19232c343b4042434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343423f39322a20160c01000000000000000000000000000000000000000005111c27333e4a55606c77838e9aa09b9799a09f94887d71665a4f44382d22160b000000000000000000000000000000000000000000000000000e1a26323e4a55616d7985919ca0a0a095897d72665a4e42362a1f1307000000000000000000000000000000000005101c2834404c58646f7b87939fa0a09d91867a6e62564a3f33271b0f0200121f2b3844515d687173737373737373726a5e52463a2d20140700000000000000000000030e19242f39444f5a646e7373737373737373737371695d5145382c1f130600000000000000000a1724313d4a56636f78797979797979797973675b4e4235281b0f020000000000000000000000000000000000000000000000101d2a3743505d6a767c7c7c7c7c776b5e5245525f6b787c7c7c7c7c75695c4f4336291c100300000000000013202c3946535f6c7986938c7e7265584c3f3225190c00000000000000000000000000000000000000000000000000101c2936434f5c69768390908376695c4f4336291c10030000000000000000000b1824303c4955616d7985919ca8aea3978c81776d645c5652504f505154585e656d76818b96919299a3afa5988b7e7165584b3e3225180b000916222f3b4854616d7986929eaba89b8f83766a5e5246414141414141414141414141414c5864717d8996a2aea2968a7d7164584c3f33261a0d01000a16232f3c4855616e7a87939facaa9d9185786c6054483c302419110f0e0f121c27333f4b5764707c8995a2aea79b8f8276695d5044372b1e12050013202c3946535f6c798693a0aca79a8e8174675a4d4134271a0e01000a1723303d4a5663707d8a96a3b0a3968a7d7063564a3d3023170a000000030f1a26313c47525d68727c868f98a1a9a39b938d87827e7b7a7978797a7c7e83878d949ca4a8a0978e857b70665b50453a2f23180c0000000000000000000000091623303c4956636f7c8996a3b0a4978a7d7063574a3d3024170a00000013202c3946535f6c798693a0aca79a8e8174675a4d4134271a0e01000a1723303d4a5663707d8a96a3b0a3968a7d7063564a3d3023170a0013202c3946535f6c798693a0aca79a8d8173675a4d4034271a0d000d1a2734404d5a6773818d9aa7ac9f9285786b5f5245383e4b5865717e8b98a5aea194877a6d6154473a2e211407000a1723303d4a5663707d8a96a39f9285786c5f5246392c1f130600121f2c3945525e6a7476767676767676767676767676767676767676767676767676767676767676767676767676767676767676767676767672675b4f4236291c10000914202a353e464c4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4b443c32281d12060000000000000000000000000000000000000000000b16222d38444f5b66727d89939393939393938e82776b6055493e33271c1005000000000000000000000000000000000000000000000000000a16212d3945515c6874808c98a3ada69a8e82766a5f53473b2f23170c00000000000000000000000000000000000915212d3945505c6874808c98a4ada4988d8175695d51463a2e22160a000013202c3946535f6c79808080808080807b6e6154483b2e211508000000000000000000000a15202a35404b56606b7680808080808080808080796d6053463a2d20130700000000000000000b1724313e4a5764717d868686868686868275685b4f4235281c0f020000000000000000000000000000000000000000000000111d2a3744505d6a778489898985786b5f5246525f6c79868989898376695c4f4336291c100300000000000013202c3946535f6c7986938c7e7265584c3f3225190c00000000000000000000000000000000000000000000000000101c2936434f5c69768390908376695c4f4336291c10030000000000000000020f1b2734404c5965717d8995a1ada99d92867b70655b524b4643424344484c535b656f79848f9b9ea3abb2a5988b7e7165584b3e3225180b000713202c3845515d6a76828e9ba7ab9f92867a6e63574c40363434343434343434343a45515c6874818d99a5ab9f93877a6e6155493c3024170b00000714202d3946525e6b7783909ca8ada194887c7064584c41362b221e1c1b1c1e232d3844505b6774808c98a5b0a4988c7f73665a4e4135281c0f030013202c3946535f6c798693a0aca79a8e8174675a4d4134271a0e01000a1723303d4a5663707d8a96a3b0a3968a7d7063564a3d3023170a000000000915202b36414b56606a747d868f979ea5a59e98938e8b888686858686888b8e93999fa6a49e968e857c73695f544a3f34291d12070000000000000000000000091623303c4956636f7c8996a3aea4978a7d7063574a3d3024170a00000013202c3946535f6c798693a0aca79a8e8174675a4d4134271a0e01000a1723303d4a5663707d8a96a3b0a3968a7d7063564a3d3023170a0013202c3946535f6c798693a0aca79a8d8173675a4d4034271a0d000e1a2734414d5a6774818e9aa7ac9f9286796c5f5246393f4c5865727e8c98a5aea194887b6e6154483b2e211508000b1724313e4a5764707d8a97a49f9386796c5f5346392d2013060013202c3946535f6c7983838383838383838383838383838383838383838383838383838383838383838383838383838383838383838383838376695d5043362a1d10000d1925313c4650575c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5b564e443a2e23170b00000000000000000000000000000000000000000005111c27333e4a55606c778386868686868686867d71665a4f44382d21160b000000000000000000000000000000000000000000000000000005111d2834404c58636f7b87939faaab9f93877b6f63574c4034281c1004000000000000000000000000000000020e1a26313d4955616d7985919ca8aba094887c7064584d4135291d1206000013202c3946535f6c79868c8c8c8c8c887b6e6154483b2e21150800000000000000000006111c26313c47525c67727d888c8c8c8c8c8c8c8c86796d6053463a2d20130700000000000000000b1724313e4a5764717d8a92929292928f8275685b4f4235281c0f020000000000000000000000000000000000000000000000111d2a3744505d6a778490969285786b5f5246525f6c79869296908376695c4f4336291c100300000000000013202c3946535f6c7986938c7e7265584c3f3225190c00000000000000000000000000000000000000000000000000101c2936434f5c69768390908376695c4f4336291c1003000000000000000005121e2a3743505c6875818d99a6b1a5998d81756a5e5349403a373636383c4149535d68737e8a95a1adb4b2a5988b7e7165584b3e3225180b0004101d2935424e5a66727e8a96a2aea3978b7f73685d52483e352f2a2828292b3038414b56626d7985919da9a79b8f83766a5e5246392d211408000005111d2a36424f5b6773808c98a4b0a4988c8174695d52473d342e2a2828282a2e353f4955606c7884909ca8aca094887c6f63574b3e3225190d000013202c3946535f6c798693a0aca79a8e8174675a4d4134271a0e01000a1723303d4a5663707d8a96a3b0a3968a7d7063564a3d3023170a00000000030e19242f3a444e58626b747d858c939a9fa4a39f9a9795939292929395979b9fa4a49f99938c847c736a61574d42382d22170c010000000000000000000000091623303c4956636f7c8996a1a1a1978a7d7063574a3d3024170a00000013202c3946535f6c798693a0aaa79a8e8174675a4d4134271a0e01000a1723303d4a5663707d8a96a3aaa3968a7d7063564a3d3023170a0013202c3946535f6c798693a0a1a19a8d8173675a4d4034271a0d000e1b2834414e5b6774818e9aa7ac9f9286796c5f5346393f4c5965727f8c98a5aea194887b6e6155483b2e221508000b1825313e4b5764717e8b97a4a093867a6d6053473a2d2114070013202c3946535f6c7986909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090908376695d5043362a1d1000111d2936424d5862686969696969696969696969696969696969696969696969696969696969696969696969696969696969696969696969696760564b3f33271a0e000000000000000000000000000000000000000000000b16222d38444f5b6671797979797979797979766b6055493e32271c10050000000000000000000000000000000000000000000000000000000c18242f3b47535f6a76828e9aa6afa3978c8074685c5044382d21150900000000000000000000000000000007131e2a36424e5a66727d8995a1ada79b8f83776b6054483c3024190d01000013202c3946535f6c79869399999994887b6e6154483b2e2115080000000000000000020d18222d38434e58636e79848e999999999999999386796d6053463a2d20130700000000000000000b1724313e4a5764717d8a979f9f9f9c8f8275685b4f4235281c0f020000000000000000000000000000000000000000000000111d2a3744505d6a7784909d9285786b5f5246525f6c7986929c908376695c4f4336291c100300000000000013202c3946535f6c7986938c7e7265584c3f3225190c00000000000000000000000000000000000000000000000000101c2936434f5c69768390908376695c4f4336291c100300000000000000000814212d3a46535f6b7884919da9ada195897c7165594d42372e2a29292b3037414b56616d7985919ca9b5b2a5988b7e7165584b3e3225180b00010d1925323e4a56626e7a86929da9a79c9085796e645a5047403a37353435383c424a535d68737e8a95a1ada2968a7e72665a4e42362a1d11050000010e1a26333f4b57636f7b87939faba99d91857a6e64594f463f3a37353435373a3f47515b66717d8994a0aca89c9084786c6053473b2f22160a000013202c3946535f6c798693a0aca79a8e8174675a4d4134271a0e01000a1723303d4a5663707d8a96a3b0a3968a7d7063564a3d3023170a000000000008131d28323c465059626b737b82898e94989ca0a2a4a1a09f9f9fa0a1a4a29f9c98938e88817a726a61584f453b31261c1106000000000000000000000000091623303c4956636f7c8994949494948a7d7063574a3d3024170a00000013202c3946535f6c7986939d9d9d9a8e8174675a4d4134271a0e01000a1723303d4a5663707d8a969d9d9d968a7d7063564a3d3023170a0013202c3946535f6c798693949494948d8173675a4d4034271a0d000e1b2835414e5b6774818e9ba8aca09386796c5f5346393f4c5965727f8c99a6aea295887b6e6155483b2f221508000c1825323f4b5865727e8b98a5a194877a6e6154473b2e2114080013202c3946535f6c7986939c9c9c9c9c9c9c9c9c9c9c9c9c9c9c9c9c9c9c9c9c9c9c9c9c9c9c9c9c9c9c9c9c9c9c9c9c9c9c9c9c9c9c9c908376695d5043362a1d1000121f2c3945525e6a7476767676767676767676767676767676767676767676767676767676767676767676767676767676767676767676767672675b4f4236291c100000000000000000000000000000000000000000000005111c27333e4a5560686c6c6c6c6c6c6c6c6c6b645a4f44382d21160b0000000000000000000000000000000000000000000000000000000007131f2b36424e5a66717d8995a1ada89c9084786d6155493d31251a0e0200000000000000000000000000000b17232f3b47535e6a76828e9aa6aea2968a7e72675b4f43372b20140800000013202c3946535f6c798693a0a6a194887b6e6154483b2e211508000000000000000009141e29343f4a545f6a75808b95a0a6a6a6a6a6a09386796d6053463a2d20130700000000000000000b1724313e4a5764717d8a97a4aca89c8f8275685b4f4235281c0f020000000000000000000000000000000000000000000000111d2a3744505d6a7784909d9285786b5f5246525f6c7986929c908376695c4f4336291c100300000000000013202c3946535f6c7986938c7e7265584c3f3225190c00000000000000000000000000000000000000000000000000101c2936434f5c69768390908376695c4f4336291c100300000000000000000a1623303c4955626e7b8794a0acaa9e9285796d6054483c31251e1c1d1f252f3a45515c6874808c98a5b1b2a5988b7e7165584b3e3225180b00000916222e3a46525d6975818c98a3aca1968b80766c6259514b464342414244474d535c656f79848f9ba6a89d91867a6e62564a3e32261a0e010000000a17232f3b47535f6b77838e9aa5ada2968b80756b6158504a464342414243464b5159636d77838e99a5aea3978b8074685c4f43372b1f1306000013202c3946535f6c798693a0aca79a8e8174675a4d4134271a0e01000a1723303d4a5663707d8a96a3b0a3968a7d7063564a3d3023170a0000000000010c16202a343e475059616970777d83888c90939698999a9b9b9b9a99979593908c88837d76706860584f463d33291f140a00000000000000000000000000091623303c4956636f7c888888888888887d7063574a3d3024191006000013202c3946535f6c798690909090908e8174675a4d4134271a0e01000a1723303d4a5663707d8a90909090908a7d7063564a3d3023170a0013202c3946535f6c79868888888888888173675a4d4034271a0d000f1b2835424e5b6875828e9ba8ada09386796d6053463a404c596673808c99a6afa295887b6f6255483c2f221509000c1926333f4c5965727f8c99a5a194887b6e6155483b2f2215080013202c3946535f6c798693a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a09d908376695d5043362a1d100013202c3946535f6c7983838383838383838383838383838383838383838383838383838383838383838383838383838383838383838383838376695d5043362a1d1000000000000000000000000000000000000000000000000b16222d38444e575d5f5f5f5f5f5f5f5f5f5f5a52483e32271c100500000000000000000000000000000000000000000000000000000000020e1a26323d4955616d7884909ca8ada195897d71655a4e42362a1e12060303030303030303030303030304101c28343f4b57636f7b87939eaaa99d91857a6e62564a3e33271b0f0300000013202c3946535f6c798693a0aca194887b6e6154483b2e2115080000000000000005101a25303b46505b66717c87919ca7b2b3b3b3ada09386796d6053463a2d20130700000000000000000b1724313e4a5764717d8a97a4b1a89c8f8275685b4f4235281c0f020000000000000000000000000000000000000000000000111d2a3744505d6a7784909d9285786b5f5246525f6c7986929c908376695c4f4336291c100300000000000013202c3946535f6c7986938c7e7265584c3f3225190c00000000000000000000000000000000000000000000000000101c2936434f5c69768390908376695c4f4336291c100300000000000000000c1825323e4b5764717d8a96a3afa89b8f8276695d5144382c20140f10131d2834404c5864707c8995a1aeb2a5988b7e7165584b3e3225180b000005111d2935414d5964707b86919ca7a79d92887e746b635c5752504e4e4f5154585e656e77818b96a1aca2978c8075695d52463a2e22160a0000000007131f2b37434f5a66727d89949faaa89c92877d736a625b5652504e4e4e5052565c636b747e89949faaa89d91867a6f63574b3f33271b0f03000013202c3946535f6c798693a0aca79a8e8174675a4d4134271a0e01000a1723303d4a5663707d8a96a3b0a3968a7d7063564a3d3023170a000000000000040e18222c353e474f575e656c72777c808487898b8d8e8e8e8e8d8c8b898683807c77716b655e564e463d342b21170d03000000000000000000000000000916232f3c4956626f797b7b7b7b7b7b7b7a6f63564a3d342b22180d020013202c3946535f6c79848484848484848174675a4d4134271a0e06030b1723303d4a5663707d848484848484847d7063564a3d3023170a0013202c3946525f6c777b7b7b7b7b7b7b7b72665a4d4033271a0d000f1c2835424f5b6875828f9ca8ada094877a6d6053473a404d596673808d9aa6afa295897c6f6255493c2f221609000d1a2633404d596673808c99a6a295887b6f6255493c2f2216090013202c3946535f6c7986939393939393939393939393939393939393939393939393939393939393939393939393939393939393939393908376695d5043362a1d100013202c3946535f6c7986909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090908376695d5043362a1d10000000000000000000000000000000000000000000000005111c27323c454c51535353535353535353524f4840372c21160b0000000000000000000000000000000000000000000000000000000000000915212d3944505c6874808b97a3afa59a8e82766a5e52463b2f231710101010101010101010101010101015202c3844505c6874808b97a3afa4988c8175695d51453a2e22160a0000000013202c3946535f6c798693a0aca194887b6e6154483b2e211508000000000000010c16212c37424c57626d78828d98a3aeadacaeb4ada09386796d6053463a2d20130700000000000000000b1724313e4a5764717d8a97a4b1a89c8f8275685b4f4235281c0f020000000000000000000000000000000000000000000000111d2a3744505d6a7784909d9285786b5f5246525f6c7986929c908376695c4f4336291c100300000000000013202c3946535f6c7986938c7e7265584c3f3225190c00000000000000000000000000000000000000000000000000101c2936434f5c69768390908376695c4f4336291c100300000000000000000e1a2733404d5966737f8c99a5b2a6998c8073675a4e4135281c1004030c18232f3c4854606d7986929fabb2a5988b7e7165584b3e3225180b0000010d1925303c48535e6a75808b95a0aaa49990867d756e68625f5c5b5b5b5d60646970778089939da7a59b90857a6f63584c4135291d120600000000030e1a26323e4a55616c77828d98a2aca3998f857c746d67625f5c5b5b5b5c5f62676d757d87909ba5aba1968b8075695e52463b2f23170b00000013202c3946535f6c798693a0aca79a8e8174675a4d4134271a0e01000a1723303d4a5663707d8a96a3b0a3968a7d7063564a3d3023170a0000000000000007101a232c353d454d545a61666b7074777a7d7e808181828181807e7c7a7774706b66605a534c453c342b22190f0500000000000000000000000000000815212e3a46525e686d6e6e6e6e6e6e6e6e685e534c463d34291e130700131f2c3945525e6a7477777777777777777165594d4033271f17100d151d25303c4955626d7677777777777777766d6255493c3023160900111e2b37434f5b656d6e6e6e6e6e6e6e6e6a61564a3e3225190c000f1c2936424f5c6975828f9ca8ada094877a6d6154473a404d5a6773808d9aa6afa296897c6f6356493c30231609000e1a2734404d5a6773818d9aa6a396897c6f6356493d3023160a0013202c3946535f6c7986868686868686868686868686868686868686868686868686868686868686868686868686868686868686868686868376695d5043362a1d100013202c3946535f6c7986939c9c9c9c9c9c9c9c9c9c9c9c9c9c9c9c9c9c9c9c9c9c9c9c9c9c9c9c9c9c9c9c9c9c9c9c9c9c9c9c9c9c9c9c908376695d5043362a1d100000000000000000000000000000000000000000000000000b16202a333a414546464646464646464646433e372e251b100500000000000000000000000000000000000000000000000000000000000005101c2834404b57636f7b87929eaaaa9e92877b6f63574b3f33271c1c1c1c1c1c1c1c1c1c1c1c1c1c1c1c1c25313d4955606c7884909ca8ab9f94887c7064584d4135291d11060000000013202c3946535f6c798693a0aca194887b6e6154483b2e21150800000000000008121d28333e48535e69747e89949faaa7a19fa3aaada09386796d6053463a2d20130700000000000000000b1724313e4a5764717d8a97a4b1a89c8f8275685b4f4235281c0f020000000000000000000000000000000000000000000000111d2a3744505d6a7784909d9285786b5f5246525f6c7986929c908376695c4f4336291c100300000000000013202c3946535f6c7986938c7e7265584c3f3225190c00000000000000000000000000000000000000000000000000101c2936434f5c69768390908376695c4f4336291c100300000000000000000f1c2835424e5b6874818e9aa7b0a4978a7e7164584b3f3226190d00000713202c3845515d6a7683909ca9b2a5988b7e7165584b3e3225180b0000000814202b37424d58636e79848e98a1aaa29890878079736e6b696867686a6c70757a8189929ba5a79d93897e74695e52473c3024190d0100000000000a16212d39444f5b66717c86909aa4aba1978e867e78736e6b69686768696b6e73787f879099a2aca3998f847a6f63584d41362a1e120700000013202c3946535f6c798693a0aca79a8e8174675a4d4134271a0e01000a1723303d4a5663707d8a96a3b0a3968a7d7063564a3d3023170a0000000000000005111d28333d474e535555555b6064686b6e70727374747574747371706d6b67645f5a555555524c443b30251a0e02000000000000000000000000000005121e2a36414c565d6161616161616161615e5e5d574f463b2f24180c00111d2a36424e5962696a6a6a6a6a6a6a6a675f544940383129221a171f272f373e46515c656a6a6a6a6a6a6a6a6a655c5145392d211408000f1b27333e49535b6061616161616161615f584f45392e22160900101c2936434f5c6975828f9ca9aea194877a6d6154473b414d5a6773818d9aa7b0a396897c6f6356493d3023160a000e1b2834414e5b6774818e9aa7a3968a7d7063574a3d3024170a00131f2c3946525f6b7679797979797979797979797979797979797979797979797979797979797979797979797979797979797979797979797974685c4f4336291d100013202c3946535f6c798693a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a09d908376695d5043362a1d10000000000000000000000000000000000000000000000000040e1821293035383939393939393939393937322c251c130900000000000000000000000000000000000000000000000000000000000000000c17232f3b47525e6a76828d99a5afa3978b8073675c5044382c29292929292929292929292929292929292a36414d5965717d8995a1aca79b8f83776b5f54483c3024180d010000000013202c3946535f6c798693a0aca194887b6e6154483b2e2115080000000000040e19242f3a444f5a65707a85909ba6a89d959398a1ada09386796d6053463a2d20130700000000000000000b1724313e4a5764717d8a97a4b1a89c8f8275685b4f4235281c0f020000000000000000000000000000000000000000000000111d2a3744505d6a7784909d9285786b5f5246525f6c7986929c908376695c4f4336291c100300000000000013202c3946535f6c7986938c7e7265584c3f3225190c00000000000000000000000000000000000000000000000000101c2936434f5c69768390908376695c4f4336291c10030000000000000000101d2a3643505c6976838f9ca9afa295897c6f6356493d3024170a000004101c2935424e5b6874818d9aa7b2a5988b7e7165584b3e3225180b000000030f1a25313c47525d67727c868f98a1a9a199918a847f7b787574747576797c80868c939ba4a69e958b81776d62574c41362a1f140800000000000005111c28333e49545f6a747e89929ba4a9a0989089837e7a787675747576787b7e848a9199a2aba39a91877d73685d52473c3025190e0200000013202c3946535f6c798693a0aca79a8e8174675a4d4134271a0e01000a1723303d4a5663707d8a96a3b0a3968a7d7063564a3d3023170a000000000000000915222e39454f585f6262626262615b5f616365666768686767666563615e5d6162626262625e564d42362b1f12060000000000000000000000000000020e1925303a434c51545454545c646a6b6b6b6b6961574c4034281b0f000e1a26313c4750585c5d5d5d6062626262626059524a433b342c2521293139414850585f6262626262615d5d5d5d5a534a3f34291d1105000b16222d38414a50545454545454545454534e463d33281d110500101d2936434f5c697683909ca9aea194887b6e6154483b414d5a6774818e9aa7b0a3968a7d7063564a3d3023170a000f1c2835424e5b6875828e9ba8a4978a7d7164574b3e3124180b00111e2a37434f5a646b6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6a62584c4034271b0e0013202c3946535f6c7986939393939393939393939393939393939393939393939393939393939393939393939393939393939393939393908376695d5043362a1d1000000000000000000000000000000000000000000000000000060f171e24292b2c2c2c2c2c2c2c2c2c2c2a26211a130a01000000000000000000000000000000000000000000000000000000000000000007131e2a36424e5965717d8994a0aca89c9084786c6054493d363636363636363636363636363636363636363a46525e6a76828d99a5aea2968a7e72675b4f43372b201408000000000013202c3946535f6c798693a0aca194887b6e6154483b2e21150800000000000a15202b36404b56616c76818c97a2aca1968b86909ca9a09386796d6053463a2d20130700000000000000000b1724313e4a5764717d8a97a4b1a89c8f8275685b4f4235281c0f020000000000000000000000000000000000000000000000111d2a3744505d6a7784909d9285786b5f5246525f6c7986929c908376695c4f4336291c100300000000000013202c3946535f6c7986938c7e7265584c3f3225190c00000000000000000000000000000000000000000000000000101c2936434f5c69768390908376695c4f4336291c10030000000000000000111e2b3744515d6a7784909daaaea194887b6e6155483b2f2215090000000d1a2733404c5966727f8c98a5b2a5988b7e7165584b3e3225180b000000000914202b36404b55606a747d868f979fa6a39c95908b8784828181828385888c91979ea5a49c948c83796f655b50463b3025190e03000000000000000b16222d38434e58626d768089929aa1a8a29b948f8a8784828281828284878b8f959ba3a8a19991887f756b61564c41362b1f14080000000013202c3946535f6c798693a0aca79a8e8174675a4d4134271a0e02000a1723303d4a5663707d8a96a3b0a3968a7d7063564a3d3023170a000000000000000c1825313e4a56616a6f6f6f6f6f6d655e5757585a5b5b5b5b5a5958565860686e6f6f6f6f6e685e53473b2e22150900000000000000000000000000000008131e28313a4145474d565e666e767777777773685c5043362a1d10000915202b353e464c505059646c6f6f6f6f6f6b635c544d453e362f2c333b434b535a626a6f6f6f6f6f6d665b50504e4841382e23180c010005111b262f383f4447484848484848484846423c342b21170c0000101d2a3643505d697683909da9aea195887b6e6155483b414e5b6774818e9ba7b0a3978a7d7063574a3d3024170a000f1c2936424f5c6975828f9ca8a4988b7e7165584b3e3225180c000e1a26323e48525a5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5e5950463b3024180c0013202c3946535f6c7986868686868686868686868686868686868686868686868686868686868686868686868686868686868686868686868376695d5043362a1d100000000000000000000000000000000000000000000000000000050d13181c1f2020202020202020201f1e1a16100901000000000000000000000000000000000000000000000000000000000000000000020e1a25313d4955606c7884909ba7aca094897d7165594d4343434343434343434343434343434343434343434b57636e7a86929eaaa99d9185796e62564a3e32271b0f03000000000013202c3946535f6c798693a0aca194887b6e6154483b2e2115080000000006111c27323c47525d68727d88939ea8a59a8f85828f9ca9a09386796d6053463a2d20130700000000000000000b1724313e4a5764717d8a97a4b1a89c8f8275685b4f4235281c0f020000000000000000000000000000000000000000000000111d2a3744505d6a7784909d9285786b5f5246525f6c7986929c908376695c4f4336291c100300000000000013202c3946535f6c7986938c7e7265584c3f3225190c00000000000000000000000000000000000000000000000000101c2936434f5c69768390908376695c4f4336291c10030000000000000000121f2c3845525e6b7885919eabada093867a6d6054473a2d2114070000000c1825323e4b5864717d8a97a4b0a5988b7e7165584b3e3225180b00000000030e19242f39444e58626b747d858d949ba1a6a19b9793918f8e8e8e909295989da2a59f99928b837a71675d53493f34291e1308000000000000000005101b26313c46515b646e77808890979da3a6a09b9793918f8e8e8e8f9193979ba0a6a39d968f877f766d63594f453a2f24190e030000000013202c3946535f6c798693a0aca79a8e8174675a4d4134271a110f0b0a1723303d4a5663707d8a96a3aea3968a7d7063564a3d3023170a000000000000000d1a2633404d5966727b7b7b7b7b7770686159524d4e4e4e4e4e4d535a626a727a7b7b7b7b7a6f6356493d3023160a0000000000000000000000000000050d151e262e363e474f575f6770788084848484776a5d5044372a1d1100030e19232c353b4043505d69767b7b7b7b7b756e665f5750484139363d454d555d646c747b7b7b7b7b786c5f5246423d372f261c1107000006111c263039404548494949494949494947433d352c22170c0100111d2a3744505d6a7783909daaaea295887b6f6255483c424e5b6875828e9ba8b0a4978a7d7164574a3e3124170b00101d293643505c697683909ca9a5988c7e7265594c3f3226190c000a16212c3740484f52535353535353535353535353535353535353535353535353535353535353535353535353535353535353535353535353524e473e342a1f130700131f2c3946525f6b7679797979797979797979797979797979797979797979797979797979797979797979797979797979797979797979797974685c4f4336291d1000000000000000000000000000000000000000000000000000000002080c101213131313131313131313110e0a050000000000000000000000000000000000000000000000000000000000000000000000000915202c3844505c67737f8b97a2aea5998d82756a5e524f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f5b67737f8b97a3aea4988c8175695d51453a2e22160a00000000000013202c3946535f6c798693a0aca194887b6e6154483b2e211508000000020d18232e38434e59636e79848f9aa4a99e93897e83909da9a09386796d6053463a2d20130700000000000000000b1724313e4a5764717d8a97a4b1a89c8f8275685b4f4235281c0f020000000000000000000000000000000000000000000000111d2a3744505d6a7784909d9285786b5f5246525f6c7986929c908376695c4f4336291c100300000000000013202c3946535f6c7986938c7e7265584c3f3225190c00000000000000000000000000000000000000000000000000101c2936434f5c69768390908376695c4f4336291c10030000000000000000131f2c3946525f6c7985929facac9f9386796c5f5346392d2013060000000a1724303d4a5663707d8996a3b0a5988b7e7165584b3e3225180b000000000008121d28323c465059626b737b838a90969b9fa3a3a09d9c9b9b9b9c9ea1a4a29e99948e88817970685f554c42372d22180d020000000000000000000a15202a353f49525c656e767e858c92979ca0a3a3a09d9c9b9b9b9c9da0a3a3a09c97928c857d756d645b51473d33281e1308000000000013202c3946535f6c798693a0a1a19a8e8174675a4d4134271e1d1b17121723303d4a5663707d8a96a1a1a1968a7d7063564a3d3023170a000000000000000d1a2633404d5966738088888888827a736b645c554d4642454d555d656c747c84888888887d7063564a3d3023170a00000000000000000000000000060f171f2730384048505961697179828a9191897e74695c5043362a1d10000007111a232a303744505d6a77848888888780787069615a524b4340484f575f676e767e8688888886796c5f534639312c251d140a0000000b17222e38424b51555555555555555555544f473e34291d120600111e2a3744515d6a7784909daaafa295887b6f6255493c424f5b6875828e9ba8b1a4978a7d7164574b3e3124180b00111d2a3744505d6a7683909daaa6998c807366594c4033261a0d0005101a252e373e434646464646464646464646464646464646464646464646464646464646464646464646464646464646464646464646464645423c352c22180d0200111e2a37434f5a646b6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6a62584c4034271b0e0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000004101c27333f4b57636e7a86929ea9aa9e92867a6e625c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c606c7884909ba7ab9f94887c7064584c4135291d110500000000000013202c3946535f6c798693a0aca194887b6e6154483b2e21150800000009141f2a343f4a55606a75808b96a0aba2978c827784919daaa09386796d6053463a2d20130700000000000000000b1724313e4a5764717d8a97a4b1a89c8f8275685b4f4235281c0f020000000000000000000000000000000000000000000000111d2a3744505d6a7784909d9285786b5f5246525f6c7986929c908376695c4f4336291c100300000000000013202c3946535f6c7986938c7e7265584c3f3225190c00000000000000000000000000000000000000000000000000101c2936434f5c69768390908376695c4f4336291c1003000000000000000013202c3946535f6c7986939facac9f9285786c5f5246392c1f13060000000916232f3c4955626f7c8995a2afa5988b7e7165584b3e3225180b0000000000010b16202a343e475059616971787e858a8f9396999b9d9e9f9f9f9e9d9b9895928e89837d766e675e564d433a30261b110600000000000000000000030e18232d37404a535c646c737a81878c9094979a9c9d9e9f9f9f9e9d9b999794908b86817a736b635b52493f362b21170c01000000000013202c3946535f6c798693949494948e8174675a4d41342b2b2a27231d1723303d4a5663707d8a94949494948a7d7063564a3d3023170a000000000000000c1926323f4c58646f79828c95948c857d756e665f5750484f575f676f767e868e95948a80766c6155483c2f23160900000000000000000000000008101821293139414a525a626b737b838b94958b81776d63584c4034281b0f0000000811181f2936434f5b67727b858f95918a827b736c645d554e4a5259616971788188909591877d73695e5145382c211a130b020000000f1b27333f4a545c616262626262626262605950453a2e22160a00111e2a3744515d6a7784919eaaaca296897c6f6255493c424f5b6875828f9ca8aca4988b7e7164574b3e3124180b00111e2b3744515d6a7784919daaa69a8d8073675a4d4034271a0d000009131c252c3237393939393939393939393939393939393939393939393939393939393939393939393939393939393939393939393939393936312b231a110600000e1a26323e48525a5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5e5950463b3024180c000000000000000000000000000000000000000000000106090b0b0a0804000000000000000000000000000000000000000000000206090a0a09060200000000000000000000000000000000000000000000000b17232e3a46525e6975818d99a5aea2978b7f7369696969696969696969696969696969696969696969696969707c8894a0aca69b8f83776b5f54483c3024180d0100000000000013202c3946535f6c798693a0aca194887b6e6154483b2e211508000005101b26303b46515b66717c87929ca7a69b90867b7885919eaba09386796d6053463a2d20130700000000000000000b1724313e4a5764717d8a97a4b1a89c8f8275685b4f4235281c0f020000000000000000000000000000000000000000000000111d2a3744505d6a7784909d9285786b5f5246525f6c7986929c908376695c4f4336291c100300000000000013202c3946535f6c7986938c7e7265584c3f3225190c00000000000000000000000000000000000000000000000000101c2936434f5c69768390908376695c4f4336291c1003000000000000000013202c3946535f6c798693a0acac9f9285786b5f5245382c1f12050000000915222f3c4855626f7b8895a2aea5988b7e7165584b3e3225180b000000000000040e18222c353e474f575f666d73797e83878a8d8f909292929291908e8c8986827d78726b645d554c433a31281e140900000000000000000000000007111b252e38414a525a62696f757b8084888b8d8f909292929291908f8d8a8784807a756f68615a514940372d241a0f0500000000000013202c3946535f6c79868888888888888174675a4d4138383837332e282023303d4a5663707d888888888888887d7063564a3d3023170a000000000000000b1723303c47535d67707a848d97968f8780787169625a535a6169717981889098958c82786e645a5045392d20140700000000000000000000010a121a222a333b434b535c646c747c858d95988e84796f655b51463b3024180c00000000070e1a27333f4b566069737d86909a948d857e766f676058545c636b737b838b929a93897f756b62584d4135291d10090100000000121e2b3744505b666e6f6f6f6f6f6f6f6f6b62564a3e3225190c00111e2b3844515e6b7784919ea0a0a096897c6f6356493c424f5c6975828f9ca0a0a0988b7e7165584b3e3225180b00121e2b3845515e6b7884919ea0a09a8e8174675a4e4134281b0e0000010a131a21262a2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2a25201911080000000a16212c3740484f52535353535353535353535353535353535353535353535353535353535353535353535353535353535353535353535353524e473e342a1f1307000000000000000000000000000000000000000000070d121517181714100b0400000000000000000000000000000000000001080e1215171715120e080200000000000000000000000000000000000000000006121e2a35414d5965707c8894a0aca79b8f84787676767676767676767676767676767676767676767676767676818d99a5ada2968a7e72665b4f43372b1f14080000000000000013202c3946535f6c798693a0aca194887b6e6154483b2e21150800010c17222c37424d57626d78838e98a3aa9f948a7f747885929faca09386796d6053463a2d20130700000000000000000b1724313e4a5764717d8a97a4b1a89c8f8275685b4f4235281c0f020000000000000000000000000000000000000000000000111d2a3744505d6a7784909d9285786b5f5246525f6c7986929c908376695c4f4336291c100300000000000013202c3946535f6c7986938c7e7265584c3f3225190c00000000000000000000000000000000000000000000000000101c2936434f5c69768390908376695c4f4336291c1003000000000000000013202c3946535f6c798693a0acac9f9285786b5f5245382c1f12050000000815222e3b4855616e7b8895a2aea5988b7e7165584b3e3225180b0000000000000006101a232c353d454d555c62686d72777a7d80828485858685848382807d7976716c66605a524b433a31281f160c020000000000000000000000000009131c262f38404850575e646a6f74787b7e81828485858685858482817e7b77736f69645e574f483f372e251b12080000000000000013202c3946525f6c777b7b7b7b7b7b7b7b73665a4d44444444433f39322a23303d4956636f7a7b7b7b7b7b7b7b7a6f6356493d3023160a0000000000000007131f2b36414b555e68727b858f9899928a837b746c645d646b737b838b929a978d837a70665c52493e33281c1004000000000000000000030b131b242c343c454d555d656e767e868f979a90867c72675d53493f352a1f140800000000000b17232e39444e57616b747e88919b978f888179716a625e666e757d858d959c948b81776d635950463b3025190d01000000000013202c3946535f6c787c7c7c7c7c7c7c7c73665a4d4034271a0d00121e2b3845515e6b7885919393939393897d7063564a3d434f5c6976838f93939393938b7e7265584c3f3225190c00121f2c3945525f6b788592939393938e8275685b4e4235281b0f000000010910161a1e1f2020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020201f1d1a140e070000000005101a252e373e434646464646464646464646464646464646464646464646464646464646464646464646464646464646464646464646464645423c352c22180d0200000000000000000000000000000000000000020a12191e22242423201c160f0700000000000000000000000000000000030c13191e222323221e1a140c040000000000000000000000000000000000000000010d1925313c4854606c77838f9ba7aca0948883838383838383838383838383838383838383838383838383838386929da9a99d9185796d62564a3e32271b0f030000000000000013202c3946535f6c798693a0aca194887b6e6154483b2e2115080008131d28333e49535e69747e8a949faaa3988e83786d7986939faca09386796d6053463a2d20130700000000000000000b1724313e4a5764717d8a97a4b1a89c8f8275685b4f4235281c0f020000000000000000000000000000000000000000000000111d2a3744505d6a7784909d9285786b5f5246525f6c7986929c908376695c4f4336291c100300000000000013202c3946535f6c7986938c7e7265584c3f3225190c00000000000000000000000000000000000000000000000000101c2936434f5c69768390908376695c4f4336291c1003000000000000000013202c3946535f6c798693a0acac9f9285786b5f5245382c1f12050000000815222e3b4855616e7b8895a2aea5988b7e7165584b3e3225180b000000000000000008111a232b343b434a51575d62666a6e717475777878797878777573706d6965605b554f48413931281f160d040000000000000000000000000000010a141d262e363e454c53595e63686b6f727476777878797878777574716e6b67635e58524c453e362d251c13090000000000000000111e2b37434f5b656d6e6e6e6e6e6e6e6e6a61565151515151504b443c332b2e3a47535e686e6e6e6e6e6e6e6e6e685e53473a2e22150800000000000000030e1a252f39434c566069737c8690999c948d857e766f676e757d858d959d998f857b71685e544a40372d22170c000000000000000000020c151d252d363e464e575f676f77808890989d93897e746a60564b41372d23180e02000000000006121d28323c454f59626c768089939c9a928b837c746d68707880878f979f968c82786f655b51473e342a1f140800000000000013202c3946535f6c79868989898989898173675a4d4034271a0d00121f2c3845525e6b7885868686868686867d7063564a3d43505d697683868686868686867e7265584c3f3226190c0013202c3946535f6c79868686868686868275685c4f4236291c0f0000000000050a0e111313131313131313131313131313131313131313131313131313131313131313131313131313131313131313131313131313110d090300000000000009131c252c3237393939393939393939393939393939393939393939393939393939393939393939393939393939393939393939393939393936312b231a110600000000000000000000000000000000000000020b141c242a2e3131302c27211910070000000000000000000000000000040d151d242a2e30302e2a251e160d0400000000000000000000000000000000000000000814202c38434f5b67737e8a96a2aea59a929090909090909090909090909090909090909090909090909090909198a2aea4988c8175695d5145392e22160a000000000000000013202c3946535f6c798693a0aca194887b6e6154483b2e211508040f19242f3a454f5a65707b86909ba6a79c92877c716d7a8693a0ada09386796d6053463a2d20130700000000000000000b1724313e4a5764717d8a97a4b1a89c8f8275685b4f4235281c0f020000000000000000000000000000000000000000000000111d2a3744505d6a7784909d9285786b5f5246525f6c7986929c908376695c4f4336291c100300000000000013202c3946535f6c7986938c7e7265584c3f3225190c00000000000000000000000000000000000000000000000000101c2936434f5c69768390908376695c4f4336291c1003000000000000000013202c3946535f6c7986929facac9f9285796c5f5246392c1f13060000000915222f3c4855626f7b8895a2aea5988b7e7165584b3e3225180b000000000000000000081119222a31383f464c51565a5e626567696a6b6c6c6b6b6a686664615d59554f4a443d362f271f160d0400000000000000000000000000000000020b141c242c343b41484d53575c5f626567696a6b6c6c6b6b6a696765625f5b57524d47413a332c241c130a0100000000000000000f1b27333e49535b6061616161616161615f585b5e5e5e5e5e5c564e453d352d36424c565d6161616161616161615d564c42362a1e1206000000000000000008131d27313a444e57616a747e88919b9f9790888179727880878f979f9a91877d73695f564c42382e251b10060000000000000000000a141e272f373f485058606871798189929a9f958b81776c62584e443a2f251b1107000000000000000b16202a333d47505a646d77818a949d9d958e867e77727a828a9199a1988e847a70675d53493f352c22180d0200000000000013202c3946535f6c798693969696968d8173675a4d4034271a0d00121f2b3845515e6a767979797979797979786f63564a3d434f5c68747979797979797979797165584b3f3225190c00131f2c3946525f6b76797979797979797973685b4f4235291c0f000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000010a131a21262a2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2a252019110800000000000000000000000000000000000000020b141d262e353a3d3e3c38322b22191007000000000000000000000000040d161f272f363a3d3d3b3630281f160d0400000000000000000000000000000000000000040f1b27333f4a56626e7a86919da9aca39e9c9c9c9c9c9c9c9c9c9c9c9c9c9c9c9c9c9c9c9c9c9c9c9c9c9c9c9da2aaab9f93887c7064584c4035291d1105000000000000000013202c3946535f6c798693a0aca194887b6e6154483b2e2115080b15202b36414b56616c77828c97a2aba0968b80756a6d7a8794a0ada09386796d6053463a2d20130700000000000000000b1724313e4a5764717d8a97a4b1a89c8f8275685b4f4235281c0f020000000000000000000000000000000000000000000000111d2a3744505d6a7784909d9285786b5f5246525f6c7986929c908376695c4f4336291c100300000000000013202c3946535f6c7986938c7e7265584c3f3225190c00000000000000000000000000000000000000000000000000101c2936434f5c69768390908376695c4f4336291c10030000000000000000121f2c3945525f6b7885929eabac9f9386796c5f5346392d2013060000000916232f3c4956626f7c8995a2afa5988b7e7165584b3e3225180b000000000000000000000710181f272e343a40454a505b646a6b6b6b6b69625f5e5d5c5a5754514d49443f39322c241d150d04000000000000000000000000000000000000020a121a222930363c42474b545f676b6b6b6b6b665f5f5e5d5c5a5856534f4b46423c363029211a120a010000000000000000000b16222d38414a50545454545454545454535d666b6b6b6b6b6760574f473f36303a444c51545454545454545454514c443a30251a0e020000000000000000010b151f28323c454f59626c757f89929ca19a938b837c828a9299a19c92897e756b61574e443a30261d130900000000000000000006111c2630394149515a626a727a838b939ba2988d83796f655b50463c32281e13090000000000000000040e18212b353e48525b656f78828c959f9f989089817c848c949ca39990867c72685e554b41372d241a10060000000000000013202c3946535f6c798693a0a2a29a8d8173675a4d4034271a0d00101d2936424e59646b6c6c6c6c6c6c6c6c6c675d52473a404c58626a6c6c6c6c6c6c6c6c6c685f54483c3024170b00111e2a37434f5a646b6c6c6c6c6c6c6c6c6a62574b3f33271a0e000000000000000000000003070a0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0b080400000000000000000000000000000000010910161a1e1f2020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020201f1d1a140e0700000000000000000000000000000000000000020b141d262f3840464a4b49443d342b2219100700000000000000000000040d161f2831394146494a47413a31281f160d04000000000000000000000000000000000000000b16222e3a46515d6975818c98a4b0aeaaa9a8a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a7a9a9adb2a69a8f83776b5f53483c3024180c01000000000000000013202c3946535f6c798693a0aca194887b6e6154483b2e211508111c27323d47525d68737d88939ea9a49a8f84796e646e7b8894a1ada09386796d6053463a2d20130700000000000000000b1724313e4a5764717d8a97a4b1a89c8f8275685b4f4235281c0f020000000000000000000000000000000000000000000000111d2a3744505d6a7784909d9285786b5f5246525f6c7986929c908376695c4f4336291c100300000000000013202c3946535f6c7986938c7e7265584c3f3225190c00000000000000000000000000000000000000000000000000101c2936434f5c69768390908376695c4f4336291c10030000000000000000121e2b3845515e6b7784919eaaada093877a6d6054473a2e2114070000000a1724303d4a5763707d8a96a3b0a5988b7e7165584b3e3225180b0000000000000000000000060e151c23292f353b4754606c7677777777746b635b534f4d4b4845413d38332d27211a130b030000000000000000000000000000000000000000000810171e252b31363f4c596571777777777770686058514f4e4c4946433f3b36302b251e171008000000000000000000000005111b262f383f4447484848484848484a57636f77777777777169615951484038323a414547484848484848484745413a32281e140900000000000000000000030d16202a333d47505a636d77818a949da49d958e878c949ca39e948a80766d63594f453c32281e140b010000000000000000000b17222e38424b535b636c747c848c959da49a90867c71675d53493f342a20160c02000000000000000000060f19232c364049535d667079838d96a0a29b938c878e969ea59b91877e746a60564c43392f251b1208000000000000000013202c3946535f6c798693a0aca79a8d8173675a4d4034271a0d000e1a26313d48525a5f5f5f5f5f5f5f5f5f5f5c554c41363b4650595e5f5f5f5f5f5f5f5f5f5d564d43382c201408000e1a26323e48525a5f5f5f5f5f5f5f5f5f5e5850453a2f23170b000000000000000000030a0f1417181919191919191919191919191919191919191919191919191919191919191919191919181714100b0400000000000000000000000000000000050a0e111313131313131313131313131313131313131313131313131313131313131313131313131313131313131313131313131313110d090300000000000000000000000000000000000000010a141d262f38414a525657554f463d342b221910070000000000000000040d161f28313a434b525656534c433a31281f160d0400000000000000000000000000000000000006121d2935414d5864707c88949fabb7aea49d99999999999999999999999999999999999999999999999ba2acb7ada2968a7e72665a4f43372b1f140800000000000000000013202c3946535f6c798693a0aca194887b6e6154483b2e21150d18232e39434e59646f79848f9aa5a89e93887d7268616e7b8895a2ada09386796d6053463a2d20130700000000000000000b1724313e4a5764717d8a97a4b1a89c8f8275685b4f4235281c0f020000000000000000000000000000000000000000000000111d2a3744505d6a7784909d9285786b5f5246525f6c7986929c908376695c4f4336291c100300000000000013202c3946535f6c7986938c7e7265584c3f3225190c00000000000000000000000000000000000000000000000000101c2936434f5c69768390908376695c4f4336291c10030000000000000000111d2a3744505d6a7683909da9aea194887b6e6155483b2f2215090000000c1925323e4b5864717e8b97a4b1a5988b7e7165584b3e3225180b000000000000000000000000030a11181e242e3b4855616e7b848484847d756d655c544c443c3935312c27221c160f08010000000000000000000000000000000000000000000000060d141a202633404d59667380848484837a726a62595149413d3a37332f2a251f1a130c05000000000000000000000000000a141d262d34383a3b3b3b3b3b3b3e4b5865717e848484847b736b635a524a423a3135393b3b3b3b3b3b3b3b3b39352f2820160c020000000000000000000000040e18212b353e48515b656e78828b959fa7a09894979ea69f968c82786e655b51473d332a20160c02000000000000000000000f1b27333f4a545d656d757e868e969ea79d92887e746a5f554b41372d23180e04000000000000000000000007111a242e37414b545e67717b858e98a1a59e969498a0a79d938980756c62584e443b31271d130900000000000000000013202c3946535f6c798693a0a0a09a8d8173675a4d4034271a0d000915202b3640484e52535353535353535353504b433a2f343e474e52535353535353535353514c443b31261b1004000a16212c3740484f525353535353535353524d463e34291e12070000000000000000050d141b20232525252525252525252525252525252525252525252525252525252525252525252525252524211c160f0700000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000010a131c262f38414a535c636460584f463d342b22191007000000000000040d161f28313a434c555d63635e564d433a31281f160c030000000000000000000000000000000000010d1924303c48545f6b77838f9aa6b2a99d928c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c909aa6b2a99d9185796d62564a3e32261b0f0300000000000000000013202c3946535f6c798693a0aca194887b6e6154483b2e2115141f2a353f4a55606b75808b96a1aba2978c81766c61626f7b8895a2ada09386796d6053463a2d20130700000000000000000b1724313e4a5764717d8a97a4b1a89c8f8275685b4f4235281c0f020000000000000000000000000000000000000000000000111d2a3744505d6a7784909d9285786b5f5246525f6c7986929c908376695c4f4336291c100300000000000013202c3946535f6c7986938c7e7265584c3f3225190c00000000000000000000000000000000000000000000000000101c2936434f5c69768390908376695c4f4336291c10030000000000000000101c2936424f5c6875828e9ba8afa296897c7063564a3d3024170b0000010e1b2734404d596673808c99a5b2a5988b7e7165584b3e3225180b0000000000000000000000000000060d15212e3b4854616d78828c918f877f766e665e564e453d352d241c17110b04000000000000000000000000000000000000000000000000000002090f192633404c5965717c8690918c847c746b635b534a423a322a231e19140e08020000000000000000000000000000020b141c23282c2e2e2e2e2e2e313e4b5764707a858f918d857d756c645c544b433b332d2e2e2e2e2e2e2e2e2e2d29241e160e0400000000000000000000000000060f19232c363f49535c667079838d96a0a0a0a0a0a0a0978e847a70665c53493f352b22180e040000000000000000000000121e2b3744505b666f777f879098a0a09f958b81766c62584e44392f251b11060000000000000000000000000008121c252f39424c555f69727c868f99a0a0a0a0a0a09e958b81776d635a50463c32291f150b0100000000000000000013202c3946535f6c798693939393938d8173675a4d4034271a0d00040f1a242e363d4345464646464646464646443f3931282c353c424546464646464646464644403a32291f150a000005101a252e373e4346464646464646464645423c342c22170d0100000000000000040e171f262c3032323232323232323232323232323232323232323232323232323232323232323232323232302d27211910060000000000000000000000000106090b0b0a0804000000000000000000000000000000000000000000000206090a0a0906020000000000000000000000000000000003070a0c0c0c0c0c0c0c0c0c0c0b0804000000000000000009131c252e38414a535c656e716a61584f463d342b2219100700000000040d161f28313a434c555e676f6f685f554c433a31281e150b01000000000000000000000000000000000008141f2b37434f5b66727e8a96a1ada79a8d81808080808080808080808080808080808080808080808a97a4b0a4988c8175695d5145392d22160a0000000000000000000013202c3946535f6c798693a0aca194887b6e6154483b2e21151b26313b46515c67717c87929da7a59b90857a70655a626f7b8895a2ada09386796d6053463a2d20130700000000000000000b1724313e4a5764717d8a97a4b1a89c8f8275685b4f4235281c0f020000000000000000000000000000000000000000000000111d2a3744505d6a7784909d9285786b5f5246525f6c7986929c908376695c4f4336291c100300000000000013202c3946535f6c7986938c7e7265584c3f3225190c00000000000000000000000000000000000000000000000000101c2936434f5c69768390908376695c4f4336291c100300000000000000000e1b2834414e5a6773808d99a6b0a4978b7e7165584c3f3226190d000005111d2a36434f5c6875818e9aa7b2a5988b7e7165584b3e3225180b0000000000000000000000000000000713202c3845515c66707a858f999189817870685f574f473f362e261e160d05000000000000000000000000000000000000000000000000000000000b1824313d4955606a747e8993968e867d756d655c544c443c332b231b130a0200000000000000000000000000000000020a11171c1f2121212121232f3c48535e69737d8791978f877e766e665d554d453d342c2421212121212121201d19130c0400000000000000000000000000000007111a242d37414a545e67717a848e939393939393938f857b72685e544a41372d2319100600000000000000000000000013202c3946535f6c7881899193939393938d83796f655a50463c32271d13090000000000000000000000000000000a131d27303a434d57606a747d8791939393939393938c83796f655b51483e342a20170d030000000000000000000013202c3946535f6c79868686868686868173675a4d4034271a0d000008121b242c32363939393939393939393938342e271f232b31363939393939393939393938342f2820170d0300000009131c252c32373939393939393939393836312a2219100600000000000000010c16202931373c3e3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3d38322b22180e0300000000000000000000070d121517181714100b04000001040608090a0b0b0a0a08070502000001080e1215171715120e0802000000000000000000000000030a0f1417181919191919191919181714100b04000000000005101a252e37404a535c656e777c736a61584f463d342b231a10070000040d161f28313a434c555e6770797a71675e554c433a30271d13080000000000000000000000000000000000030f1b27323e4a56626d7985919da8a99d9185797373737373737373737373737373737373737376828e9aa6ab9f93877b7064584c4035291d11050000000000000000000013202c3946535f6c798693a0aca194887b6e6154483b2e2117222d37424d58636d78838e99a3a99f94897e74695e55626f7b8895a2ada09386796d6053463a2d20130700000000000000000b1724313e4a5764717d8a97a4b1a89c8f8275685b4f4235281c0f020000000000000000000000000000000000000000000000111d2a3744505d6a7784909d9285786b5f5246525f6c7986929c908376695c4f4336291c100300000000000013202c3946535f6c7986938c7e7265584c3f3225190c00000000000000000000000000000000000000000000000000101c2936434f5c69768390908376695c4f4336291c100300000000000000000d1926333f4c5865727e8b97a4b0a6998d8073675a4e4135291c1004020915212d3946525e6b7784909da9b2a5988b7e7165584b3e3225180b00000000000000000000000000000004101c28343f4a545e69737d87919b928a827a716961595148403830281f170f070000000000000000000000000000000000000000000000000000000915212d38434e58626c76818b95988f877f766e665e564e453d352d241c140c040000000000000000000000000000000000060c101314151515151f2b37424d57616b75808a9499908880786f675f574f463e362e251d151515151413110d0801000000000000000000000000000000000008121c252f38424c555f69727c8686868686868686867d736a60564c42382f251b11070000000000000000000000000013202c3946535f6c798686868686868686867b71675d53483e342a20160b01000000000000000000000000000000010b151e28323b454e58626b757e8686868686868686847a71675d53493f362c22180e050000000000000000000000131f2c3946525f6b7679797979797979797266594d4033271a0d00000009121a21262a2c2c2c2c2c2c2c2c2c2c2b28231d151920252a2c2c2c2c2c2c2c2c2c2c2b28241e160e0500000000010a131a21262a2c2c2c2c2c2c2c2c2c2c29251f181007000000000000000007121d28323b42484b4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4b49443d342a20150a0000000000000000020a12191e22242423201c160f070a0d1012141617171717161513110f0b080c13191e222323221e1a140c0400000000000000000000050d141b20232525252525252525252524201c160f06000000000a16212c374049525c656e7781867c736a61584f463d352c231a1007040d161f28313a434c555e67707982837970675e554c42392f24190d0200000000000000000000000000000000000a16222d3945515d6974808c98a4ada1958a7e7266666666666666666666666666666666666f7b87929eaaa69a8f83776b5f53473c3024180c000000000000000000000013202c3946535f6c798693a0aca194887b6e6154483b2e211e29333e49545f69747f8a959faaa3988d82776d625755626f7b8895a2ada09386796d6053463a2d20130700000000000000000b1724313e4a5764717d8a97a4b1a89c8f8275685b4f4235281c0f020000000000000000000000000000000000000000000000111d2a3744505d6a7784909d9285786b5f5246525f6c7986929c908376695c4f4336291c100300000000000013202c3946535f6c7986938c7e7265584c3f3225190c00000000000000000000000000000000000000000000000000101c2936434f5c69768390908376695c4f4336291c100300000000000000000b1724313d4a56636f7c8895a1aea89b8f83766a5d5145382c20140e0e111a26313d4955626e7a87939facb2a5988b7e7165584b3e3225180b000000000000000000000000000000000c18232e38424c57616b75808a949c948c847b736b635a524a423a312921191008000000000000000000000000000000000000000000000000000004101c27323c46505a656f79838d98999189817870685f574f473f362e261e160d050000000000000000000000000000000000000406080808080f1a26303b454f59636e78828c969a928a817971696058504840372f271f170e080807040100000000000000000000000000000000000000000a131d26303a434d57606a73797979797979797979756b61584e443a30261d13090000000000000000000000000000131f2c3946525f6b7679797979797979797974695f554b41372c22180e040000000000000000000000000000000000030c162029333c465059636d7679797979797979797972685f554b41372e241a1006000000000000000000000000111e2a37434f5a646b6c6c6c6c6c6c6c6c6960554a3d3125180c00000000080f151a1e1f2020202020202020201e1c17120b0e141a1d1f2020202020202020201f1c18130c05000000000000010910161a1e1f20202020202020201f1d19140e060000000000000000000c18242f3a444d5458585858585858585858585858585858585858585858585858585858585858585858585858554f463c31261b0f03000000000000020b141c242a2e3131302c27211912161a1c1f2123242424242322201e1b1814151d242a2e30302e2a251e160d040000000000000000040e171f262c3032323232323232323232302d27201810060000000e1a26323e48525b646e7780898f867c736a61584f473e352c231a100d161f28313a434c555e677079828b8c837970675e544b41352a1e1206000000000000000000000000000000000005111d2935404c58646f7b87939faba69a8e82766a5f595959595959595959595959595c67737f8b97a3ada1968a7e72665a4f43372b1f1308000000000000000000000013202c3946535f6c798693a0aca194887b6e6154483b2e21252f3a45505b65707b86919ba6a79c91867b71665b5055626f7b8895a2ada09386796d6053463a2d20130700000000000000000b1724313e4a5764717d8a97a4b1a89c8f8275685b4f4235281c0f020000000000000000000000000000000000000000000000111d2a3744505d6a7784909d9285786b5f5246525f6c7986929c908376695c4f4336291c100300000000000013202c3946535f6c7986938c7e7265584c3f3225190c00000000000000000000000000000000000000000000000000101c2936434f5c69768390908376695c4f4336291c100300000000000000000915222e3b4754606d7986929fabab9e9286796d6155483d31251c1b1b1d232c37424e5a66727e8a96a2afb2a5988b7e7165584b3e3225180b0000000000000000000000000000000006111c26303b454f59636d78828c969e958d857d756c645c544b433b332b221a120900000000000000000000000000000000000000000000000000000b15202a343e49535d67717b86909a9b928a827a716961595148403830281f170f05000000000000000000000000000000000000000000000009141f29333d47515c66707a858f999c938b837b736a625a524941393129201810060000000000000000000000000000000000000000000000010b141e28313b454e58626a6c6c6c6c6c6c6c6c6c6b63594f463c32281e150b010000000000000000000000000000111e2a37434f5a646b6c6c6c6c6c6c6c6c6c6a62584d43392f251b100600000000000000000000000000000000000000040e17212a343e47515b646b6c6c6c6c6c6c6c6c6c6960574d43392f251c1208000000000000000000000000000e1a26323e48525a5f5f5f5f5f5f5f5f5f5d574e44392d2115090000000000040a0e1113131313131313131313120f0b060003090d111313131313131313131312100c0701000000000000000000050a0e1113131313131313131312110d090300000000000000000000101c2834404b565f6465656565656565656565656565656565656565656565656565656565656565656565656560584e43372b1f12060000000000020b141d262e353a3d3e3c38322b221e2226292b2e2f30313131302e2d2a2724201f272f363a3d3d3b3630281f160d04000000000000010c16202931373c3e3f3f3f3f3f3f3f3f3f3d38322a22180e030000111e2a37434f5a646d76808992988f867c736a615950473e352c231a161f28313a434c555e677079828b94948b827970665d52463a2e2115080000000000000000000000000000000000000c1824303b47535f6b76828e9aa6ab9f93877b6f63574c4c4c4c4c4c4c4c4c4c4c54606c7884909ca7a99d9185796d61564a3e32261a0f03000000000000000000000013202c3946535f6c798693a0aca194887b6e6154483b2e212b36414c57616c77828d97a2aba0958a80756a5f544a55626f7b8895a2ada09386796d6053463a2d20130700000000000000000b1724313e4a5764717d8a97a4b1a89c8f8275685b4f4235281c0f020000000000000000000000000000000000000000000000111d2a3744505d6a7784909d9285786b5f5246525f6c7986929c908376695c4f4336291c100300000000000013202c3946535f6c7986938c7e7265584c3f3225190c00000000000000000000000000000000000000000000000000101c2936434f5c69768390908376695c4f4336291c1003000000000000000006131f2c3845515e6a76838f9ba7aea195897d7165594d42372e2927282a2e343e48535f6a76828e9aa6b2b2a5988b7e7165584b3e3225180b00000000000000000000000000000000000a141f29333d47515c66707a848f999f978f877e766e665d554d453d342c241b110700000000000000000000000000000000000000000000000000040e18222d37414b555f6a747e88929d9c948c847b736b635a524a423a312921170d0300000000000000000000000000000000000000000000020d17212b36404a545e68727d87919b9d958d857c746c645b534b433b322a22180e040000000000000000000000000000000000000000000000020c161f29333c4650585e5f5f5f5f5f5f5f5f5f5e5951473e342a20160c030000000000000000000000000000000e1a26323e48525a5f5f5f5f5f5f5f5f5f5f5e5850463c31271d1309000000000000000000000000000000000000000000050f18222c353f49525a5f5f5f5f5f5f5f5f5f5f5d574e453b31271d130a00000000000000000000000000000a16212c3740484f525353535353535353514c453c32271c11050000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000121f2b3844515d68707272727272727272727272727272727272727272727272727272727272727272727272716a5f53473b2e21150800000000020b141d262f3840464a4b49443d342b2a2e3235383a3c3d3e3e3d3d3b393734302c2831394146494a47413a31281f160d04000000000007121d28323b42484b4c4c4c4c4c4c4c4c4b49443c342a2015090000131f2c3946525f6b768089929ba1988f867c736b625950473e352c231f28313a434c555e677079828b949d9d948b82786e6256493d3023170a00000000000000000000000000000000000007131f2b37424e5a66727d8995a1ada3978c8074685c504440404040404040414d5965717c8994a0aca4988c8074695d5145392d22160a00000000000000000000000013202c3946535f6c798693a0aca194887b6e6154483b2e27323d48525d68737e89939ea9a4998e84796e63584d4855626f7b8895a2ada09386796d6053463a2d20130700000000000000000b1724313e4a5764717d8a97a4b1a89c8f8275685b4f4235281c0f020000000000000000000000000000000000000000000000111d2a3744505d6a7784909d9285786b5f5246525f6c7986929c908376695c4f4336291c100300000000000013202c3946535f6c7986938c7e7265584c3f3225190c00000000000000000000000000000000000000000000000000101c2936434f5c69768390908376695c4f4336291c1003000000000000000004101d2935424e5a67737f8b97a3afa5998d81756a5e5349403935343436393f47505a65707b87929eaab6b2a5988b7e7165584b3e3225180b0000000000000000000000000000000000030d17212b35404a545e68727d87919ba199908880786f675f574f463e362d23180d020000000000000000000000000000000000000000000000000006111b252f39434e58626c76818b959f9e958d857d756c645c544b433b33291f14090000000000000000000000000000000000000000000000050f19242e38424c57616b757f89949e9f968e867e766d655d554d443c342a20160a000000000000000000000000000000000000000000000000040d17212a343e464d52535353535353535353524e473f352c22180e04000000000000000000000000000000000a16212c3740484f52535353535353535353524d463e342a20150b010000000000000000000000000000000000000000000006101a232d3740484f52535353535353535353514c453c33291f150b02000000000000000000000000000005101a252e373e4346464646464646464645413b332a20160b00000000000000000000000000000000000000000000040a0e10121212121212121212110e0b060000000000000000000000000000000000000003070a0c0c0c0c0c0c0c0b08040000000000000000000013202c3946535f6c797e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7c6f6255493c2f221609000000010a141d262f38414a525657554f463d34363a3e424547494a4a4a4a49484643403c38343a434b525656534c433a31281f160d04000000000c18242f3a444d5458585858585858585858554e463c31261a0e0200131f2c3946525f6b768089929ba4a1988f867d746b625950473e352c28313a434c555e677079828b949da69e958c837a6f63564a3d3024170a000000000000000000000000000000000000030e1a26323e4955616d7985909ca8a89c9084786c6155493d33333333333a46525d6975818d99a5ab9f93877b7064584c4034291d110500000000000000000000000013202c3946535f6c798693a0aca194887b6e6154483b2e2e39444e59646f7a858f9aa5a89d92887d72675c51474855626f7b8895a2ada09386796d6053463a2d20130700000000000000000b1724313e4a5764717d8a97a4b1a89c8f8275685b4f4235281c0f020000000000000000000000000000000000000000000000111d2a3744505d6a7784909d9285786b5f5246525f6c7986929c908376695c4f4336291c100300000000000013202c3946535f6c7986938c7e7265584c3f3225190c00000000000000000000000000000000000000000000000000101c2936434f5c69768390908376695c4f4336291c10030000000000000000000d1926323e4b57636f7b87939fabaa9e92877b70655b524a4542414143454a5058626c76818c98a2a6aeb2a5988b7e7165584b3e3225180b000000000000000000000000000000000000050f19242e38424c56616b757f89949ea29a928a81797169605850483f352a1e1307000000000000000000000000000000000000000000000000000009131d27323c46505a646f79838d97a19f978f877e766e665d554d453b31261a0e02000000000000000000000000000000000000000000000008121c26303a454f59636d77828c96a0a098908880776f675e564e463c32271c1004000000000000000000000000000000000000000000000000050f18222c343c424546464646464646464645423d362d231a1006000000000000000000000000000000000005101a252e373e434646464646464646464645423c342c22180e0400000000000000000000000000000000000000000000000008111b252e373e434646464646464646464645413b332a21170d030000000000000000000000000000000009131c252c32373939393939393939393835302921180e040000000000000000000000000000000000000000010910151a1d1e1e1e1e1e1e1e1e1e1d1b17110b0300000000000000000000000000000003090f1417181919191919181714100b04000000000000000013202c3946535f6c79868c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c897c6f6255493c2f2216090000010a131c262f38414a535c636460584f463d42474b4e51535556575757565452504c48443f434c555d63635e564d433a31281f160c03000000101c2834404b565f6465656565656565656560584d42372b1e120600111e2a37434f5a646d768089929ba4a1988f867d746b625950473e35313a434c555e677079828b949da69e958c837a71685e53473b2e221509000000000000000000000000000000000000000a15212d3945505c6874808c97a3ada195897d7165594d42362a2627333f4a56626e7a86929ea9a69a8e83776b5f53473c3024180c0000000000000000000000000013202c3946535f6c798693a0aca194887b6e6154483b2e35404b55606b76818b96a1aca1968b81766b60554b404855626f7b8895a2ada09386796d6053463a2d20130700000000000000000b1724313e4a5764717d8a97a4b1a89c8f8275685b4f4235281c0f020000000000000000000000000000000000000000000000111d2a3744505d6a7784909d9285786b5f5246525f6c7986929c908376695c4f4336291c100300000000000013202c3946535f6c7986938c7e7265584c3f3225190c00000000000000000000000000000000000000000000000000101c2936434f5c69768390908376695c4f4336291c10030000000000000000000a16222e3b47535f6b77838e9aa5aea3988c81776d645c55514f4d4e4f52565b626a747e889395959ca6b2a5988b7e7165584b3e3225180b0000000000000000000000000000000000000008121c26303a454f59636d77828c96a0a49c938b837b726a625a51463b2f23170b0000000000000000000000000000000000000000000000000000010b16202a343e48535d67717b85909aa4a199908880786f675f574d42372b1f13060000000000000000000000000000000000000000000000000a141e29333d47515b66707a848e99a3a29a91898179706860584e43382c20140800000000000000000000000000000000000000000000000000061019222a3136383939393939393939393936322b241b11080000000000000000000000000000000000000009131c252c3237393939393939393939393836312a221a1006000000000000000000000000000000000000000000000000000009131c252c3237393939393939393939393835302921180f050000000000000000000000000000000000010a131a21262a2c2c2c2c2c2c2c2c2c2c29241e170f060000000000000000000000000000000000000000010b131b2126292b2b2b2b2b2b2b2b2b2a27221c150d0400000000000000000000000000050d141b20232525252525252524201c160f060000000000000013202c3946535f6c7986939898989898989898989898989898989898989898989898989898989898989896897c6f6255493c2f221609000009131c252e38414a535c656e716a61584f484e53575a5e60626364646363615f5c5955504b4c555e676f6f685f554c433a31281e150b010000121f2b3844515d68707272727272727272716a5f53473a2e211408000e1b27323e49525b646d768089929ba4a1988f867d746b625950473e3a434c555e677079828b949da69e958c837a71685f564d42362b1f13060000000000000000000000000000000000000005111c2834404c57636f7b87939eaaa5998e82766a5e52463a2e232b37434f5b67737e8a96a2ada1968a7e72665a4e43372b1f13070000000000000000000000000013202c3946535f6c798693a0aca194887b6e6154483b313c46515c67727c87929da8a59a8f857a6f64594f443c4855626f7b8895a2ada09386796d6053463a2d20130700000000000000000b1724313e4a5764717d8a97a4b1a89c8f8275685b4f4235281c0f020000000000000000000000000000000000000000000000111d2a3744505d6a7784909d9285786b5f5246525f6c7986929c908376695c4f4336291c100300000000000013202c3946535f6c7986938c7e7265584c3f3225190c00000000000000000000000000000000000000000000000000101c2936434f5c69768390908376695c4f4336291c100300000000000000000006121e2a36424e5a66727d89949faaa99e93897f766d66615d5b5a5b5c5e62666d747c869092898a95a1aea5988c7e7265584c3f3225190c00000000000000000000000000000000000000000a141e29333d47515b66707a848e98a0a09d958d857c746c63574c3f33261a0d010000000000000000000000000000000000000000000000000000040e18222c37414b555f69747e88929ca0a09a928a817971695f53473b2e221509000000000000000000000000000000000000000000000000020d17212b353f4a545e68727c87919ba0a09b938b837a726a6055493c3023170a00000000000000000000000000000000000000000000000000000710181f25292c2c2c2c2c2c2c2c2c2c2c2a26201a12090000000000000000000000000000000000000000010a131a21262a2c2c2c2c2c2c2c2c2c2c2c29251f181007000000000000000000000000000000000000000000000000000000010a131a21262a2c2c2c2c2c2c2c2c2c2c2c29241f170f0600000000000000000000000000000000000000010910161a1e1f20202020202020201f1c19130d050000000000000000000000000000000000000000000a131d252c323638383838383838383837332e271f160c020000000000000000000000040e171f262b3032323232323232302d272018100600000000000013202c3946535f6c798693a0a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a296897c6f6255493c2f2216090005101a252e37404a535c656e777c736a615854595e63676a6d6f707171706f6e6b6865615c57555e6770797a71675e554c433a30271d1308000013202c3946535f6c797e7e7e7e7e7e7e7e7b6f6255483c2f221509000a16212c374049525b646d768089929ba4a1988f867d746b62595047434c555e677079828b949da69e958c837a71685f564d443b30251a0e0200000000000000000000000000000000000000000c18232f3b47535e6a76828e9aa5aa9e92867a6e63574b3f3327303c48545f6b77838f9ba7a89d9185796d61564a3e32261a0f030000000000000000000000000013202c3946535f6c798693a0aca194887b6e6154483b38424d58636e78838e99a4a99e93897e73685d53483d3c4855626f7b8895a2ada09386796d6053463a2d20130700000000000000000b1724313e4a5764717d8a97a4b1a89c8f8275685b4f4235281c0f020000000000000000000000000000000000000000000000111d2a3744505d6a7784909d9285786b5f5246525f6c7986929c908376695c4f4336291c100300000000000013202c3946535f6c7986938c7e7265584c3f3225190c00000000000000000000000000000000000000000000000000101c2936434f5c69768390908376695c4f4336291c1003000000000000000000020e1a26323e4a55616c78838e99a3ada59b91888078726d6a686767686b6e72787e868f978c818794a0ada5988c7e7265584c3f3225190c0000000000000000000000000000000000000000020c17212b353f4a545e68727c879193939393938e867e74675b4e4135281b0e0200000000000000000000000000000000000000000000000000000006101a252f39434d58626c76808b9393939393938b837b6f6356493d3023160a00000000000000000000000000000000000000000000000000050f19232e38424c56606b757f899393939393938c847c7164584b3e3225180b000000000000000000000000000000000000000000000000000000060e14191d1f2020202020202020201f1d1a150f0800000000000000000000000000000000000000000000010910161a1e1f2020202020202020201f1d19140e060000000000000000000000000000000000000000000000000000000000010910161a1e1f2020202020202020201f1d19130d0600000000000000000000000000000000000000000000050a0e1113131313131313131312100d080200000000000000000000000000000000000000000006111b252f373d42454545454545454545433f3931281e130900000000000000000000010c16202931373c3e3f3f3f3f3f3f3d38322a22180e03000000000013202c3946535f6c798693a0acb2b2a79e9998989898989898989898989898989898989898989898989896897c6f6255493c2f221609000a16212c374049525c656e7780867c736a615f656a6f7376797b7d7d7d7d7c7a7875716d68625e67707982837970675e554c42392f24190d020013202c3946535f6c79868c8c8c8c8c8c887b6f6255483c2f2215090005101b252e374049525b646d768089929ba4a1988f867d746b6259504c555e677079828b949da69e958c837a71685f564d443b32291f140900000000000000000000000000000000000000000007131f2a36424e5a65717d8995a0aca3978b7f73675b4f44382c35404c5864707c8894a0aba4988c8074685d5145392d21160a000000000000000000000000000013202c3946535f6c798693a0aca194887b6e6154483b3e49545f6a74808a95a0aaa2978d82776c61574c41363c4855626f7b8895a2ada09386796d6053463a2d20130700000000000000000b1724313e4a5764717d8a97a4b1a89c8f8275685b4f4235281c0f020000000000000000000000000000000000000000000000111d2a3744505d6a7784909d9285786b5f5246525f6c7986929c908376695c4f4336291c100300000000000013202c3946535f6c7986938c7e7265584c3f3225190c00000000000000000000000000000000000000000000010507101c2936434f5c69768390908376695c4f4336291c1007050100000000000000000a16212d3944505b66717c87919ca5ada39a918a837d797675747475777a7e8389909890857a8693a0ada5988c7e7265584c3f3225190c000000000000000000000000000000000000000000050f19232d38424c56606a757f86868686868686868275685b4e4235281b0f020000000000000000000000000000000000000000000000000000000009131d27313b46505a646e788386868686868686867d7063564a3d3023170a000000000000000000000000000000000000000000000000000007111c26303a444f59636d778186868686868686867e7165584b3e3225180b0000000000000000000000000000000000000000000000000000000003090d111213131313131313131313110e090400000000000000000000000000000000000000000000000000050a0e111313131313131313131312110d09030000000000000000000000000000000000000000000000000000000000000000050a0e111313131313131313131312100d080200000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000b17222d3741494e5151515151515151514f4a433a30251a0e0300000000000000000007121d28323b42484b4c4c4c4c4c4b49443c342a20150a000000000013202c3946535f6c7986939faab4ada1958c8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b897c6f6255493c2f221609000e1a26323e48525b646e7780898f867c736a6a70767b7f838688898a8a8a898784817d78736e677079828b8c837970675e544b41352a1e12060013202c3946535f6c7986939898989895887b6f6255483c2f221509000009131c252e374049525b646d768089929ba4a1988f867d746b6259555e677079828b949da69e958c837a71685f564d443b322920170d02000000000000000000000000000000000000000000020e1a26313d4955616c7884909ca7a79b9084786c6054483c303945515d6975818c98a4ab9f93877b7064584c4034291d1105000000000000000000000000000013202c3946535f6c798693a0aca194887b6e6154483b45505b66707b86919ca6a69b91867b70655b50453a2f3c4855626f7b8895a2ada09386796d6053463a2d20130700000000000000000b1724313e4a5764717d8a97a4b1a89c8f8275685b4f4235281c0f020000000000000000000000000000000000000000000000111d2a3744505d6a7784909d9285786b5f5246525f6c7986929c908376695c4f4336291c100300000000000013202c3946535f6c7986938c7e7265584c3f3225190c000000000000000000000000000000000000000000070d1114161c2936434f5c69768390908376695c4f4336291c1614110d070000000000000005111c28333f4a55606b75808a939ca5aca39b948e8986838181818284868a8f949b92887e7986939faca6998c7f7265594c3f3226190c0000000000000000000000000000000000000000000007111c26303a444e59636d7779797979797979797973675a4e4135281b0e0200000000000000000000000000000000000000000000000000000000010b151f2a343e48525c6771797979797979797979786e6256493c3023160a0000000000000000000000000000000000000000000000000000000a141e28323d47515b6570787979797979797979797064574b3e3125180b0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000206090a0a0a0a0a0a0a0a0a0a0804000000000000000000000000000004101c28333f49535a5e5e5e5e5e5e5e5e5e5b554c41362b1f13070000000000000000000c18232f39444d5458585858585858554e463c31261b10050000000013202c3946535f6c79838e98a2acab9e92857e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7b6f6255493c2f22160900111e2a37434f5a646d76808992988f867c73757c82878b8f9294969797979593918d89847f797279828b94948b827970665d52463a2e2115080013202c3946535f6c798693a0a5a5a295887b6f6255483c2f2215090000010a131c252e374049525b646d768089929ba4a1988f867d746b625e677079828b949da69e958c837a71685f564d443b322920170e0500000000000000000000000000000000000000000000000915212d3844505c68737f8b97a3aca094887c7065594d41353e4a56616d7985919da9a69a8e83776b5f53473b3024180c00000000000000000000000000000013202c3946535f6c798693a0aca194887b6e615448414c57626c77828d98a2aa9f958a7f74695f54493e332f3c4855626f7b8895a2ada09386796d6053463a2d20130700000000000000000b1724313e4a5764717d8a97a4b1a89c8f8275685b4f4235281c0f02000000000000000000000000000000000000000002070b111d2a3744505d6a7784909d9285786b5f5246525f6c7986929c908376695c4f4336291c100300000000000013202c3946535f6c7986938c7e7265584c3f3225190c00000000000000000000000000000000000000030b12181d2022222936434f5c69768390908376695c4f4336292222201d18120b030000000000000b17222d39444e59636e78818a939ba2a8a69f9a9592908e8e8e8f9093969a9a928980767885929faca6998c807366594c403326190d00000000000000000000000000000000000000000000000a141e28323d47515b656b6c6c6c6c6c6c6c6c6c6961564b3f3226190d000000000000000000000000000000000000000000000000000000000000030e18222c36404b555f686c6c6c6c6c6c6c6c6c6c675d52463a2e211508000000000000000000000000000000000000000000000000000000020c17212b353f49535e676c6c6c6c6c6c6c6c6c6c685e53483c2f23160a00000000000000000000000000000000000000000000000000000000000000000306080a0b0c0d0d0d0d0c0b0a080604010000000000000000000000000000000000000000000000000000000000000000000003070809090909090909090907040000000000000000000000000000000000000000000206090a0a0a0a0a0a0a0a0a0a080400000000000000000000000000000307090a0a0a0a0a0a0a0a0a0907030000000000000000000001080e12151717171717171717171614100b0500000000000000000000000006131f2c3844505b656a6b6b6b6b6b6b6b6b675e53473b2f23160a0000000000000000000f1c2834404b565e6465656565656560584d43382c21160a00000000121f2b3844505c67717c86909aa5ada1968c8277717171717171717171717171717171717171717171717171716a5f53473a2e21150800131f2c3946525f6b768089929ba1988f867c80878d92979b9fa1a3a4a4a3a2a09d9995908a847d828b949d9d948b82786e6256493d3023170a0013202c3946535f6c798693a0acafa295887b6f6255483c2f221509000000010a131c252e374049525b646d768089929ba4a1988f867d746b677079828b949da69e958c837a71685f564d443b322920170e0500000000000000000000000000000000000000000000000004101c28343f4b57636e7a86929eaaa5998d8175695d51463a424e5a66727e8a96a2ada1958a7e72665a4e42372b1f130700000000000000000000000000000013202c3946535f6c798693a0aca194887b6e61544848535e68737e89949ea9a3998e83786d63584d42372d2f3c4855626f7b8895a2ada09386796d6053463a2d20130700000000000000000b1724313e4a5764717d8a97a4b1a89c8f8275685b4f4235281c0f0200000000000000000000000000000000000001070d13171c202a3744505d6a7784909d9285786b5f5246525f6c7986929c908376695c4f4336291c100300000000000013202c3946535f6c7986938c7e7265584c3f3225190c000000000000000000000000000000000000020c151d24292d2f2f2f36434f5c69768390908376695c4f43362f2f2f2d29241d150c02000000000006111c27323d47525c666f78818990979da2a5a6a29e9c9b9a9a9b9d9f9c97908880776e7885919ea9a6998c807366594d4033261a0d0000000000000000000000000000000000000000000000020c16212b353f49535a5f5f5f5f5f5f5f5f5f5f5e584f453a2e22160a0000000000000000000000000000000000000000000000000000000000000006101a242f39434d565d5f5f5f5f5f5f5f5f5f5f5c554b41352a1e120500000000000000000000000000000000000000000000000000000000050f19232d38424c555c5f5f5f5f5f5f5f5f5f5f5c564d42372b1f1307000000000000000000000000000000000000000000000000000000000106090d101214161819191a1a191918171513110e0b07030000000000000000000000000000000000000000000000000000000000050b0f131516161616161616161514110c07000000000000000000000000000000000001080e12151717171717171717171614100b0500000000000000000000040a0f131617171717171717171716130f0a0300000000000000040c13191e2223242424242424242423201c17100800000000000000000000000815212e3b4754606d7678787878787878786f64574b3e3125180b000000000000000000121e2b3744505c67707272727272716a5f54493e32271b10040000000f1c2834404b55606a747e89939da7a89e94897f756b656565656565656565656565656565656565656565656460584e42372b1f120600131f2c3946525f6b768089929ba4a1988f868b92989ea3a7a8a5a3a2a2a3a4a6a9a5a19b958f888b949da69e958c837a6f63564a3d3024170a0013202c3946535f6c798693a0acafa295887b6f6255483c2f22150900000000010a131c252e374049525b646d768089929ba4a1988f867d747079828b949da69e958c837a71685f564d443b322920170e0500000000000000000000000000000000000000000000000000000b17232f3b46525e6a76828d99a5a99d91867a6e62564a3e47535f6b77838e9aa6a89c9185796d61554a3e32261a0e0300000000000000000000000000000013202c3946535f6c798693a0aca194887b6e6154484f5a646f7a85909aa5a79d92877c71675c51463b31262f3c4855626f7b8895a2ada09386796d6053463a2d20130700000000000000000b1724313e4a5764717d8a97a4b1a89c8f8275685b4f4235281c0f020000000000000000000000000000000000050c13191e23282c2f3744505d6a7784909d9285786b5f5246525f6c7986929c908376695c4f4336291c100300000000000013202c3946535f6c7986938c7e7265584c3f3225190c0000000000000000000000000000000000000a141e272e35393c3c3c3c434f5c69768390908376695c4f433c3c3c3c39352e271e140a0000000000000b16202b36404a545d666f777e868c9196999c9e9fa09f9e9d9b9995918b857e766e6a7784919c9c9c9a8d8073675a4d4034271a0d000000000000000000000000000000000000000000000000050f19232d3741494f52535353535353535353514d463d33281d1206000000000000000000000000000000000000000000000000000000000000000008131d27313b444b5153535353535353535353504a43392f24190d02000000000000000000000000000000000000000000000000000000000007111b26303a434b5053535353535353535353504b443b30261a0f03000000000000000000000000000000000000000000000000000003090d1216191c1f212324252626262626252322201d1a17130f0b0601000000000000000000000000000000000000000000000000000810161b1f22222222222222222222201d18120a020000000000000000000000000000040c13191e2223242424242424242423201c1710080000000000000000060e151b1f22242424242424242424221f1b150e060000000000030d161e252a2e3030303030303030302f2d28221a1209000000000000000000000815222e3b4855616e7b858585858585857e7165584b3e3225180b000000000000000000131f2c3946525f6c787e7e7e7e7e7b71655a4f43382c2115090000000c17232e39444e58626c76818b959faaa59b91877d72685e585858585858585858585858585858585858585858554e463c31261a0f0300111e2a37434f5a646d768089929ba4a19893959ca3a9a49f9b9997969696979a9da1a6a7a09a94969da69e958c837a71685e53473b2e2215090013202c3946535f6c798693a0a3a3a295887b6f6255483c2f2215090000000000010a131c252e374049525b646d768089929ba4a1988f867d79828b949da69e958c837a71685f564d443b322920170e0500000000000000000000000000000000000000000000000000000006121e2a36424d5965717c8894a0aca2968a7e72675b4f434c58636f7b87939faba4988c8074685d5145392d21160a0000000000000000000000000000000013202c3946535f6c798693a0aca194887b6e61544b56606b76818c96a1aba1968b80756b60554a3f352a222f3c4855626f7b8895a2ada09386796d6053463a2d20130700000000000000000b1724313e4a5764717d8a97a4b1a89c8f8275685b4f4235281c0f02000000000000000000000000000000000810171e242a2f34383c3f44505d6a7784909d9285786b5f5246525f6c7986929c908376695c4f4336291c100300000000000013202c3946535f6c7986938c7e7265584c3f3225190c000000000000000000000000000000000006111c263039404548494949494f5c69768390908376695c4f494949494845403930261c11060000000000040f19242e38424b545d656d747a8085898d8f9192939292918f8c8985807a736c6469768390909090908e8174675b4e4134281b0e0000000000000000000000000000000000000000000000000007111b252f373e434646464646464646464645413b342b21170c010000000000000000000000000000000000000000000000000000000000000000010b151f29323a404446464646464646464646443f3931271d1308000000000000000000000000000000000000000000000000000000000000000a141e2831393f444646464646464646464644403a32291f14090000000000000000000000000000000000000000000000000003090f14191e2225292b2e303132333333333231302e2c2a27231f1b16110c06000000000000000000000000000000000000000000000008121a21272c2e2f2f2f2f2f2f2f2f2f2d29231c140b02000000000000000000000000030d161e252a2e3030303030303030302f2d28221a120900000000000006101820262c2f3030303030303030302f2b2620180f06000000000b151f282f363a3d3d3d3d3d3d3d3d3d3c39332c241b11060000000000000000000815222e3b4855616e7b8892929292928b7e7165584b3e3225180b000000000000000000121f2b3844515d69737e898c8c8c82776b6054493d31251a0e02000007121d27323c46505a656f79838e98a2aca3998f847a70665c514b4b4b4b4b4b4b4b4b4b4b4b4b4b4b4b4b4b4b49433c342a20150900000e1b27323e49525b646d768089929ba4a3a0a1a7a59e98938f8c8a8989898b8d91969ba1a8a4a1a2a79e958c837a71685f564d42362b1f13060013202c3946535f6c7986939696969695887b6f6255483c2f221509000000000000010a131c252e374049525b646d768089929ba4a1988f86828b949da69e958c837a71685f564d443b322920170e0500000000000000000000000000000000000000000000000000000000020d1925313d4854606c78848f9ba7a79b8f83776b5f5347505c6874808c98a4ab9f93877b6f64584c4034281d11050000000000000000000000000000000013202c3946535f6c798693a0aca194887b6e6154525c67727d88929da8a49a8f84796f64594e43392e23222f3c4855626f7b8895a2ada09386796d6053463a2d20130700000000000000000b1724313e4a5764717d8a97a4b1a89c8f8275685b4f4235281c0f020000000000000000000000000000020a121a22292f353b4044484b4e505d6a7784909d9285786b5f5246525f6c7986929c908376695c4f4336291c100300000000000013202c3946535f6c7986938c7e7265584c3f3225190c00000000000000000000000000000000000b17222e38424b515555555555555c69768390908376695c555555555555514b42382e22170b00000000000008121c263039424b535b62696f75797d818384868686858482807d79746f69625b6875818383838383838275685b4f4235281c0f00000000000000000000000000000000000000000000000000000a131d252d3337393939393939393939393835302a22190f0500000000000000000000000000000000000000000000000000000000000000000000030d1720282f34383939393939393939393937342e271f150c0100000000000000000000000000000000000000000000000000000000000000020c161f272e34383939393939393939393938342f2820170d02000000000000000000000000000000000000000000000000070e141a20252a2e3235383a3c3e3f404040403f3e3d3b3936332f2b27221d17110b04000000000000000000000000000000000000000006111a242c33383b3c3c3c3c3c3c3c3c3c39342e261d140a0000000000000000000000000b151f282f363a3d3d3d3d3d3d3d3d3d3c39332c241b110600000000040e18222a32373b3d3d3d3d3d3d3d3d3d3b37312a21180e03000006121d27313a41474a4a4a4a4a4a4a4a4a49443e362d23180d0100000000000000000815222e3b4855616e7b88959e9e9e988b7e7165584b3e3225180b000000000000000000101c2935414c57626c77828e9893887c71655a4e42362a1e12060000010b16202a343e49535d67717c86909aa5aba0968c82786d63594f453e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3c38322a22180e0300000a16212c374049525b646d768089929eaaaca9a19a938d8783807d7c7c7c7e81858a90969ea5aeaea3978c837a71685f564d443b30251a0e020013202c3946535f6c7986898989898989887b6f6255483c2f22150900000000000000010a131c252e374049525b646d768089929ba4a1988f8d949da69e958c837a71685f564d443b322920170e050000000000000000000000000000000000000000000000000000000000000914202c3844505b67737f8b96a2ab9f93887c7064584c55616d7985919ca8a69a8e82766b5f53473b3024180c000000000000000000000000000000000013202c3946535f6c798693a0aca194887b6e615458636e79848e99a4a89e93887d73685d52473d32271c222f3c4855626f7b8895a2ada09386796d6053463a2d20130700000000000000000b1724313e4a5764717d8a97a4b1a89c8f8275685b4f4235281c0f0200000000000000000000000000020b141c242c333a41464b5054575a5c5e6a7784909d9285786b5f5246525f6c7986929c908376695c4f4336291c100300000000000013202c3946535f6c7986938c7e7265584c3f3225190c00000000000000000000000000000000000f1b27333f4a545c616262626262626976839090837669626262626262615c544a3f33271b0f000000000000000a141e273039414951585e64696d7174767879797978777573706d68635e57596570767676767676767671665a4e4135281b0f0000000000000000000000000000000000000000000000000000010b131b21272a2c2c2c2c2c2c2c2c2c2c2c29251f181007000000000000000000000000000000000000000000000000000000000000000000000000050e161d24282b2c2c2c2c2c2c2c2c2c2c2b28231c150d03000000000000000000000000000000000000000000000000000000000000000000040d151d23282b2c2c2c2c2c2c2c2c2c2c2b28231d160e050000000000000000000000000000000000000000000000030b121920262b31363a3e414447494a4c4c4d4d4c4c4b494745423f3c38332e28231c160f07000000000000000000000000000000000000020d18232c363d44484949494949494949484540382f261b10050000000000000000000006121d27313a41474a4a4a4a4a4a4a4a4a49443e362d23180d010000000a15202a343c43484a4a4a4a4a4a4a4a4a48433c332a20150a00000b17232e39434c525657575757575757575550483f34291e120600000000000000000815222e3b4855616e7b8895a2aba5988b7e7165584b3e3225180b0000000000000000000c1824303b45505b66717c8893998d82766a5e52463a2e221609000000040e18222d37414b55606a747e89939da7a89e948a80756b61564c4238323232323232323232323232323232302c272018100600000005101b252e374049525b646e79838f9ca9a9a0989088827c7773716f6f707275797e858c939ca4ada195887d73685f564d443b32291f1409000013202c3946535f6c787c7c7c7c7c7c7c7c7a6e6255483b2f2215090000000000000000010a131c252e374049525b646d768089929ba4a19b999ea69e958c837a71685f564d443b322920170e050000000000000000000000000000000000000000000000000000000000000004101b27333f4b56626e7a86929da9a4988c8074685d515a65717d8995a1ada1958a7e72665a4e42372b1f1307000000000000000000000000000000000013202c3946535f6c798693a0aca194887b6e61545f6a75808a95a0aba2978c81766c61564b41362b2015222f3c4855626f7b8895a2ada09386796d6053463a2d20130700000000000000000b1724313e4a5764717d8a97a4b1a89c8f8275685b4f4235281c0f02000000000000000000000000010a141d262e363e454c52575c606467696b6c7784909d9285786b5f5246525f6c7986929c908376695c4f4336291c100300000000000013202c3946535f6c7986938c7e7265584c3f3225190c0000000000000000000000000000000000121e2b3744505b666e6f6f6f6f6f6f6f7683909083766f6f6f6f6f6f6f6e665b5044372b1e1200000000000000020c151e272f373f464d53585d616467696b6c6c6c6b6b696764615c58524c545e666969696969696969675f554a3e3226190d000000000000000000000000000000000000000000000000000000010910161b1e202020202020202020201f1d19140d060000000000000000000000000000000000000000000000000000000000000000000000000000040c12181c1f202020202020202020201e1c17120b030000000000000000000000000000000000000000000000000000000000000000000000030b12171c1e202020202020202020201f1c18120c040000000000000000000000000000000000000000000000050d151d242b31373c41464a4e51535557585959595959575654524f4c48433f39342e2720191109010000000000000000000000000000000007121e29343e484f54555555555555555555514a41382d22160a000000000000000000000b17232e39434c525657575757575757575550483f34291e12060000030f1b26323c464e54575757575757575757544e453c31261b0f03000f1c28343f4b555d636363636363636363615a51463a2f23160a00000000000000000815222e3b4855616e7b8895a2aea5988b7e7165584b3e3225180b00000000000000000008131e29343f4954606b76828e9992877b6e62564a3e3225190d0000000006111b252f39444e58626c76818b959faaa69b91877d72685e544a40352b2525252525252525252525252523201c160e06000000000009131c252f3b47525e6974808a95a0aaa0978e867e76706b676463626365696d737a818a929ba5a4998f84796e63584c41352920170d020000121e2b3744505c666e6f6f6f6f6f6f6f6f6f685e52463a2d211407000000000000000000010a131c252e374049525b646d768089929ba6a7a6a99f958c837a71685f564d443b322920170e050000000000000000000000000000000000000000000000000000000000000000000b17222e3a46525d6975818d99a4a99d9185796d61555e6a76828e9aa6a89c9185796d61554a3e32261a0e02000000000000000000000000000000000013202c3946535f6c798693a0aca194887b6e615b66717b86919ca7a69b90857a70655a4f453a2f241915222f3c4855626f7b8895a2ada09386796d6053463a2d20130700000000000000000b1724313e4a5764717d8a97a4b1a89c8f8275685b4f4235281c0f0200000000000000000000000009131d262f38404850575d63686c70737677797984909d9285786b5f5246525f6c7986929c908376695c4f4336291c100300000000000013202c3946535f6c7986938c7e7265584c3f3225190c000000000000000000000000000000000013202c3946535f6c787c7c7c7c7c7c7c7c839090837c7c7c7c7c7c7c7c786c5f5346392c20130000000000000000030c151d252d343b41474c5155585b5d5e5f5f5f5f5e5c5a5854504c47424c545a5c5c5c5c5c5c5c5c5b554d43392d22160a0000000000000000000000000000000000000000000000000000000000050a0f111313131313131313131312100d08020000000000000000000000000000000000000000000000000000000000000000000000000000000001070c101213131313131313131313120f0b06000000000000000000000000000000000000000000000000000000000000000000000000000000060b0f121313131313131313131312100c07010000000000000000000000000000000000000000000000060e171f272e353c42484d52565a5d6062646566666666656463615e5b58544f4a453f39322b231b130b020000000000000000000000000000000a17232f3b46505a606262626262626262615c53493e33271b0e020000000000000000000f1c28343f4b555d636363636363636363615a51463a2f23160a000007131f2c37434e585f6363636363636363635f574e43372b1f130600121e2b3844505c676f70707070707070706c62574b3f3226190c00000000000000000815222e3b4855616e7b8895a2aea5988b7e7165584b3e3225180b000000000000000000020d17222d38434e5a65717d8995978b7e72665a4d4135281c0f030000000009131d27323c46505a656f79838d98a2aca3998f847a70665c51473d33291e18181818181818181818181714100a04000000000000030f1b2834404b57636f7a86919ca7a2988e857c746c655f5b58565556595d626870778089939da7a1968b8074695d52463a2e22160a0000000f1b28333f4a545d626363636363636363625e564c41362a1e110500000000000000000000010a131c252e374049525b646d76808995a2afb3a79a8e837a71685f564d443b322920170e050000000000000000000000000000000000000000000000000000000000000000000006121e2935414d5964707c8894a0aba195897d72665a636f7b87929eaaa3988c8074685c5145392d21150a00000000000000000000000000000000000013202c3946535f6c798693a0aca194877b6e61626d77828d98a3aa9f94897e74695e53493e33281d1315222f3c4855626f7b8895a2ada09386796d6053463a2d20130700000000000000000b1724313e4a5764717d8a97a4b1a89c8f8275685b4f4235281c0f02000000000000000000000006101b252f38414a525a61686e74787c808284858687929e9285786b5f5246525f6c7986929c908376695c4f4336291c100300000000000013202c3946535f6c7986938c7e7265584c3f3225190c070200000000000000000000000000000013202c3946535f6c798689898989898989899292898989898989898986796c5f5346392c2013000000000000000000030b131b232a30363c4045494c4e50525253535251504e4b4844403b3a42494e4f4f4f4f4f4f4f4f4e4a433b31271c110500000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000050f182029313940474d53595e62666a6c6f70727373737372716f6d6b6764605b56504a443d352d251d140b0200000000000000000000000000000d1a26333f4b57626b6f6f6f6f6f6f6f6f6d655b4f43362a1d1104000000000000000000121e2b3844505c676f70707070707070706c62574b3f3226190c00000916222f3b48545f6a7070707070707070706a5f54473b2f2215090013202c3946535f6c787d7d7d7d7d7d7d7d73665a4d4034271a0d00000000000000000815222e3b4855616e7b8895a2aea5988b7e7165584b3e3225180b0000000000000000000009141e27323d4955616c7885919b8e8276695d5044372b1e120500000000010b16202a343e49535d67717c86909aa4aba0968c82786d63594f453a30261c120b0b0b0b0b0b0b0b0b0a0804000000000000000007131f2c3844505c6874808b97a2a59b90867c736a625a544f4b49494a4d51575e666e77818b95a0a79c91857a6e62564a3e32261a0e0100000b17232e38424b5255565656565656565656534c443a3025190d0100000000000000000000040d161f28313a434c555e677079828b96a2afafa89b8f867c736a615950473e352c231a100700000000000000000000000000000000000000000000000000000000000000000000010d1925303c4854606b77838f9ba7a69a8e82766a5e6773808b97a3ab9f93877b6f63584c4034281d110500000000000000000000000000000000000013202c3946535f6c798693a0aca094877a6d6169737e89949faaa3988d83786d62574c42372c21170c15222f3c4855626f7b8895a2ada09386796d6053463a2d20130700000000000000000b1724313e4a5764717d8a97a4b1a89c8f8275685b4f4235281c0f0200000000000000000000020d18222d37414a535c646c73798084898c8f91929393999f9285786b5f5246525f6c7986929c908376695c4f4336291c100300000000000013202c3946535f6c7986938c7e7265584c3f32251916130e08010000000000000000000000000013202c3946535f6c798693949494949494949494949494949494969386796c5f5346392c201300000000000000000000020911181f252b3035393c3f424445464646454443413f3c38342f31383e424343434343434343423e39322920150b000000000000000000000000000000000000000000000000000002050708090a0b0b0b0b0b0a090706030100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000305060708080808070604020000000000000000000000000000000000000000000000000000000000000000000000000000000306090c0e101112131313131212110f0d0b09060300000000000000000000000000000000000000000000000000040e17212a323b434a52585f656a6e7276797b7d7e808080807e7d7c7a7774706c67615c554e473f372f261d140a00000000000000000000000000000e1b2834414e5a67747c7c7c7c7c7c7c7c776b5e5245382c1f120500000000000000000013202c3946535f6c787d7d7d7d7d7d7d7d73665a4d4034271a0d01000a1724303d4a5763707c7d7d7d7d7d7d7d7c706356493d3023160a0013202c3946535f6c79868a8a8a8a8a8a8173675a4d4034271a0d00000000000000000815222e3b4855616e7b8895a2aea5988b7e7165584b3e3225180b00000000000000000004101b2530394147505c6875818d9a9185786c5f53463a2d2014070000000000040e18222d37414b55606a747e88939da7a89e948a80756b61574c42382e24190f050000000000000000000000000000000000000a16232f3b4854606c7884909ca89f94897e746a61585049433f3c3c3d40454c545c656f79848e99a5a2968a7e73675a4e4236291d1104000006111c27303940464949494949494949494947423b32281e130800000000000000000000040d161f28313a434c555e677079828b949da7a3a2a6a1988f867c736b625950473e352c231a1108000000000000000000000000000000000000000000000000000000000000000000000814202c37434f5b67727e8a96a2aa9e92867a6e626c7884909ca8a69a8e82766b5f53473b2f24180c0000000000000000000000000000000000000013202c3946535f6c798693a0aca093877a6d656f7a85909ba5a79c91877c71665b50463b30251b100915222f3c4855626f7b8895a2ada09386796d6053463a2d20130700000000000000000b1724313e4a5764717d8a97a4b1a89c8f8275685b4f4235281c0f020000000000000000000008131e29343e49525c656e767e858b9095989b9d9fa0a0a49f9285786b5f5246525f6c7986929c908376695c4f4336291c100300000000000013202c3946535f6c7986938c7e7265584c3f322625231f19120b0200000000000000000000000013202c3946535f6c7986878787878787878787878787878787878d9386796c5f5346392c2013000000000000000000000000060d14191f24292d303335373839393939383635322f2c2824262d3235363636363636363635322e2720170e04000000000000000000000000000000000000000000000105090c0f1113151617181818181717151412100d0a07030000000000000000000000000000000000000000000000000206090a0a0a0a0a0a0a0a0a0907030003070a0d0f111314151515151412110e0c090501000000000000000000000000000000000000000000000000000000000000000003080c101316181a1c1e1f1f2020201f1e1d1c1a1815120f0b0702000000000000000000000000000000000000000000020c162029333c444d555c636a70757a7e8285888a8b8c8d8d8c8c8a898684807c78726d676059514941382f261c1208000000000000000000000000000e1b2834414e5b67748189898989898985786b5f5245382c1f120500000000000000000013202c3946535f6c79868a8a8a8a8a8a8173675a4d4034271a0d01000a1724303d4a5763707d8a8a8a8a8a8a8a7d7063564a3d3023170a0013202c3946535f6c798693979797978d8173675a4d4034271a0d00000000000000000815222e3b4855616e7b8895a2aea5988b7e7165584b3e3225180b0000000000000000000915212c37414b52575965717e8a9794877a6e6155483b2f22150900000000000006111b252f39444e58626c76818b959faaa69b91877d73685e544a40352b21170d0200000000000000000000000000000000000d1926323e4b5764707c8895a1a59a8e83776d62584e463e3732302f31343a424a535d67727d8894a0a79b8f83776a5e5245392d2014070000000a151e272f353a3c3c3c3c3c3c3c3c3c3c3a36302920170c02000000000000000000040d161f28313a434c555e677079828b949da69d96959ba4a1988f867d746b625950473e352c231a1108000000000000000000000000000000000000000000000000000000000000000000030f1b27333e4a56626e7985919da9a3978b7e7367707c8894a0aca195897d72665a4e42372b1f13070000000000000000000000000000000000000013202c3946535f6c798693a0aca09386796d6b76818c97a1aba0958b80756a5f544a3f34291f14090915222f3c4855626f7b8895a2ada09386796d6053463a2d20130700000000000000000b1724313e4a5764717d8a97a4b1a89c8f8275685b4f4235281c0f02000000000000000000020e1925303b46505a646e7780888f969ca1a5a8aaabacadac9f9285786b5f5246525f6c7986929c908376695c4f4336291c100300000000000013202c3946535f6c7986938c7e7265584c3f3232322f2a241d140b02000000000000000000000013202c3946525f6b777a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7e8b9386796c5f5346392c20130000000000000000000000000002080e13181c202426282a2b2c2c2c2c2b2a282623201c181c21262829292929292929292926221c160e0500000000000000000000000000000000000000000004080d1115181b1e2021232424252525242322211f1c1a1713100b07020000000000000000000000000000000000000001080e121517171717171717171716130f0b0f1316191c1e202121222221201f1d1b1815110d080300000000000000000000000000000000000000000000000000000000040a0f14181c1f222527292a2b2c2c2c2c2c2b2a282724221f1b17130e09030000000000000000000000000000000000000009141e28323b454e565f676e757b81868b8f9294969899999a9998979593908c88847e78726a635b534a41382e241a10050000000000000000000000000e1b2834414e5b6774818e969696969285786b5f5245382c1f120500000000000000000013202c3946535f6c798693979797978d8173675a4d4034271a0d01000a1724303d4a5763707d8a97979797968a7d7063564a3d3023170a0013202c3946535f6c798693a0a4a49a8d8173675a4d4034271a0d00000000000000000815222e3b4855616e7b8895a2aea5988b7e7165584b3e3225180b0000000000000000000d1925313d49535d6365656f7c889596897c6f6356493d3023170a0000000000000009131d27323c46505a656f79838d98a2aca3998f857a70665c51473d33291e140a00000000000000000000000000000000000f1b2834414e5a6773808c98a5a195897d72665b50463c342c26232224293038414b55606c77838f9ba79f93867a6d6155483c2f221609000000030c151d24292d2f3030303030303030302e2a251e170e05000000000000000000040d161f28313a434c555e677079828b949da69d948b89929ba4a1988f867d746b625950473e352c231a11080000000000000000000000000000000000000000000000000000000000000000000a16222e3a45515d6975818c98a4a79b8f83776b74818c98a5a89c9185796d6155493e32261a0e020000000000000000000000000000000000000013202c3946535f6c798693a0ac9f9386796c727d88939ea8a4998e84796e63584e43382d23180d020915222f3c4855626f7b8895a2ada09386796d6053463a2d20130700000000000000000b1724313e4a5764717d8a97a4b1a89c8f8275685b4f4235281c0f0200000000000000000008131f2b36414c57626c768089929aa1a7adb1b4b7b8b9b8ac9f9285786b5f5246525f6c7986929c908376695c4f4336291c100300000000000013202c3946535f6c7986938c7e7265584c3f3e3f3e3b362e261d140b0200000000000000000000111e2a37434f5a656c6d6d6d6d6d6d6d6d6d6d6d6d6d6d6d717e8b9386796c5f5346392c201300000000000000000000000000000003080c1014171a1c1e1f1f20201f1e1d1b191713100c1016191c1c1c1c1c1c1c1c1c1c1a16110b040000000000000000000000000000000000000000040a0f14191d2125282a2c2e30313132323131302f2d2b292623201c17130d080200000000000000000000000000000000040c13191e22232424242424242424221f1b161b1f2326282b2c2d2e2e2e2e2d2c2a2725211d19140e080200000000000000000000000000000000000000000000000002090f151b1f24282c2f3134363738393939393938373533312e2b27231f1a140e08020000000000000000000000000000000006101b25303a444d576068717880878d92979b9ea1a3a2a1a0a0a1a2a4a29f9c98948f89837c756d655c534a40362c22170d0200000000000000000000000e1b2834414e5b6774818e9ba2a29f9285786b5f5245382c1f120500000000000000000013202c3946535f6c798693a0a4a49a8d8173675a4d4034271a0d01000a1724303d4a5763707d8a97a4a4a3968a7d7063564a3d3023170a0013202c3946535f6c798693a0aca79a8d8173675a4d4034271a0d00000000000000000815222e3b4855616e7b8895a2aea5988b7e7165584b3e3225180b0000000000000000000f1c2835414e5a656f7272727a8794978a7d7164574a3e3124180b00000000000000010b16202a343e49535d67717c86909aa4aba1968c82786e63594f453b30261c120800000000000000000000000000000002111d2a3643505c6975828f9ba89e9185796d61554a3f342b221b1716181e262f39444f5b67737f8b98a4a296897d7063574a3e3124180b00000000030b12191d2123232323232323232323211e1a140d05000000000000000000040d161f28313a434c555e677079828b949da69e958b828089929ba4a1988f867d746b625950473e352c231a1108000000000000000000000000000000000000000000000000000000000000000006111d2935414c5864707b87939fab9f93877b6f7885919da9a3988c8074685c5045392d21150a000000000000000000000000000000000000000013202c3946535f6c798693a0ac9f9286796e79848f99a4a89d92887d72675c52473c31271c1106000915222f3c4855626f7b8895a2ada09386796d6053463a2d20130700000000000000000b1724313e4a5764717d8a97a4b1a89c8f8275685b4f4235281c0f020000000000000000000c1824303c47535e69747e88929ba4acb2b8bdc1c3c5c5b8ac9f9285786b5f5246525f6c7986929c908376695c4f4336291c100300000000000013202c3946535f6c7986938c7e7265584c454a4c4b4740382f261d140b020000000000000000000f1b27333e49535b60606060606060606060606060606065717e8b9386796c5f5346392c201300000000000000000000000000000000000004080b0d0f11121313131212100f0d0a070400050a0d0f10101010101010100f0d0a06000000000000000000000000000000000000000002080f151b2025292d313437393b3c3d3e3e3e3e3e3d3b3a3835332f2c28231e19130d070000000000000000000000000000030d161e252a2e3030303030303030302f2c2622272b2f323537393a3b3b3b3b3a383634312d29241f19130d0600000000000000000000000000000000000000000000060d141b20262b3034383b3e404244454646464645454342403d3a37332f2a25201a130c050000000000000000000000000000010c17222d37424c565f69727a838a91989ea3a49f9b98969494949495979a9da2a5a09b958e877f776e655c52483e33291e130800000000000000000000000e1b2834414e5b6774818e9ba8ac9f9285786b5f5245382c1f120500000000000000000013202c3946535f6c798693a0aca79a8d8173675a4d4034271a0d01000a1724303d4a5763707d8a97a4b0a3968a7d7063564a3d3023170a0013202c3946535f6c798693a0aca79a8d8173675a4d4034271a0d00000000000000000815222e3b4855616e7b8895a2aea5988b7e7165584b3e3225180b000000000000000000101c2936434f5c69767e7e7e7e8693988b7e7165584b3e3225180b0000000000000000040e18222d37414b555f6a747e88939da7a89e948a80756b61574c42382e24190f05000000000000000000000000000004121f2b3845515e6b7784919da89b8f8276695d5144392d2219100a090c141d27333e4a57636f7c8895a2a4988b7e7265594c3f3326190c000000000001070d11141616161616161616161615120e0902000000000000000000040d161f28313a434c555e677079828b949da69e958c8379768089929ba4a1988f867d746b625950473e352c231a110800000000000000000000000000000000000000000000000000000000000000010d1824303c48535f6b77838e9aa6a3978b7f737c8895a1aa9f93877b6f63584c4034281c1105000000000000000000000000000000000000000013202c3946535f6c798693a0ab9f92857875808b95a0aba1968c81766b60564b40352a20150a00000915222f3c4855626f7b8895a2ada09386796d6053463a2d20130700000000000000000b1724313e4a5764717d8a97a4b1a89c8f8275685b4f4235281c0f02000000000000000004101c2935404c58636f7a85909aa4adb6bdc4c9cdd0d2c5b8ac9f9285786b5f5246525f6c7986929c908376695c4f4336291c100300000000000013202c3946535f6c7986938c7e7265584c50565957524a41382f261d140c0300000000000000000a16212d3741494f53535353535353535353535353535865717e8b9386796c5f5346392c2013000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000050c131a20262c3135393d40434547494a4b4b4b4b4a49484644423f3c38342f2a241e18110a030000000000000000000000000b151f282f363a3d3d3d3d3d3d3d3d3d3b37322e33373b3f4144464748484847474543403d3935302b251e17100800000000000000000000000000000000000000000810181f262c32373c4044474a4d4f5051525353535251504e4c4a47433f3b36312b251e170f070000000000000000000000000007121e29343e49535e68717b848c959ca3a69f99948f8c8988878787898b8e91969ca2a6a099918980776e645a50453a30251a0e03000000000000000000000e1b2834414e5b6774818e9ba8ac9f9285786b5f5245382c1f120500000000000000000013202c3946535f6c798693a0aca79a8d8173675a4d4034271a0d01000a1724303d4a5763707d8a97a4b0a3968a7d7063564a3d3023170a0013202c3946535f6c798693a0aca79a8d8173675a4d4034271a0d00000000000000000815222e3b4855616e7b8895a2aea5988b7e7165584b3e3225180b000000000000000000101c2936434f5c6976838c8c8c8e97988c7e7265584c3f3225190c00000000000000000006101b252f39434e58626c76818b959faaa69c91877d73685e544a40362b21170d030000000000000000000000000006131f2c3946525f6c7985929fa69a8d8073675a4e4135281c11070000020b16222e3b4754616d7a8793a0a6998d8073665a4d4034271a0d010000000000000105080909090909090909090908060200000000000000000000040d161f28313a434c555e677079828b949da69e958c8379706d768089929ba4a1988f867d746b625950473e352c231a11080000000000000000000000000000000000000000000000000000000000000008141f2b37434f5a66727e8a95a1a89b8f8377808c99a5a69a8e82766a5f53473b2f23180c00000000000000000000000000000000000000000013202c3946535f6c798693a0ab9e9184787c87919ca7a59a90857a6f645a4f44392e24190e0300000915222f3c4855626f7b8895a2ada09386796d6053463a2d20130700000000000000000b1724313e4a5764717d8a97a4b1a89c8f8275685b4f4235281c0f0200000000000000000814202d3945515d6974808c97a2acb6bfc8cfd5d9dcd2c5b8ac9f9285786b5f5246525f6c7986929c908376695c4f4336291c100300000000000013202c3946535f6c7986938c7e726558515a6265635c534a41392f261e150c030000000000000005101b252f373e44464747474747474747474747474b5865717e8b9386796c5f5346392c2013000000000000000000000000000000000000000000000004080a0b0c0c0d0d0d0c0b0a080604010000000000000000000000000000000000000000000000000000000000000000070f171e252b32373c4146494d50525456575758585757565553514e4b4844403b35302a231c150d050000000000000000000006121d27313a41474a4a4a4a4a4a4a4a4a48433c393f43474b4e5052535455555453524f4d4945413c363029221a120a01000000000000000000000000000000000109121a222930373d43484c505457595b5d5e5f5f5f5f5f5e5d5b595653504b47423c363029211911090000000000000000000000010d18242f3a45505b65707a838d969ea6a59c958e88837f7c7b7a7a7b7c7e81858b91989fa8a39b928980766c61574c41362b201409000000000000000000000e1b2834414e5b6774818e9ba8ac9f9285786b5f5245382c1f120500000000000000000013202c3946535f6c798693a0aca79a8d8173675a4d4034271a0d01000a1724303d4a5763707d8a97a4b0a3968a7d7063564a3d3023170a0013202c3946535f6c798693a0aca79a8d8173675a4d4034271a0d00000000000000000815222e3b4855616e7b8895a2aea5988b7e7165584b3e3225180b000000000000000000101c2936434f5c697683909898999f988c7e7265584c3f3225190c0000000000000000000009131d27323c46505a656f79838d98a2aca3998f857a70665c52473d33291f140a000000000000000000000000000613202c3946535f6c798693a0a6998c7f7266594c3f3326190d000000000613202c3946535f6c7986929fa79a8d8173675a4d4034271a0d0100000000000000000000000000000000000000000000000000000000000000040d161f28313a434c555e677079828b949da69e958c83797067646d768089929ba4a1988f867d746b625950473e352c231a1108000000000000000000000000000000000000000000000000000000000000030f1a26323e4a56616d7985919ca89f93877b84909ca9a195897d72665a4e42362b1f130700000000000000000000000000000000000000000013202c3946535f6c798693a0aa9d918478838d98a3a99e94897e73685e53483d32281d12070000000915222f3c4855626f7b8895a2ada09386796d6053463a2d20130700000000000000000b1724313e4a5764717d8a97a4b1a89c8f8275685b4f4235281c0f0200000000000000000b1724303c4955616d7985919da8b3bec8d1dae0e5dfd2c5b8ac9f9285786b5f5246525f6c7986929c908376695c4f4336291c100300000000000013202c3946535f6c7986938c7e7265585a636c726e655c534b423930271e150c030000000000000009131d252d33373a3a3a3a3a3a3a3a3a3a3a3a3e4b5865717e8b9386796c5f5346392c2013000000000000000000000000000000000000000000050b1014161819191919191918171513100d09050100000000000000000000000000000000000000000000000000000000081119212830363d43484d5256595c5f61626364656564646361605d5b5854504b46413b352e261f170f060000000000000000000b17232e39434c52565757575757575757544e46454a4f54575a5d5f6061616161605e5c5956514d47413b342c241c130a010000000000000000000000000000000a131b242c343b42484e54585c606366686a6b6c6c6c6c6c6b696865635f5c57534d47413a332b231b12090000000000000000000007121e2935404b57616c77818c959fa8a59b938a837c7773706e6d6d6e6f72757a7f868d969fa8a49b92887e73685e53473c31251a0e020000000000000000000e1b2834414e5b6774818e9ba8ac9f9285786b5f5245382c1f120500000000000000000013202c3946535f6c798693a0aca79a8d8173675a4d4034271a0d01000a1724303d4a5763707d8a97a4b0a3968a7d7063564a3d3023170a0013202c3946535f6c798693a0aca79a8d8173675a4d4034271a0d00000000000000000815222e3b4855616e7b8895a2aea5988b7e7165584b3e3225180b000000000000000000101c2936434f5c697683909ca5a6a5988c7e7265584c3f3225190c00000000000000000000010b16202a343e49535d67717c86909aa4aba1968c82786e63594f453b30261c12080000000000000000000000000613202c3946535f6c7986939fa6998c7f7266594c403326190d000000000713202d3946535f6c7986929fa79a8d8173675a4d4034271a0d01000000000000000000000000000000000000000000000000000000000000030c161f28313a434c555e677079828b949da69e958c837970675e5b646d768089929ba4a1988f867d746b625950473e352c231a11070000000000000000000000000000000000000000000000000000000000000a16212d3945515d6874808c98a3a3978b7e8894a0a89c9085796d6155493d32261a0e0200000000000000000000000000000000000000000013202c3946535f6c798693a0a99d90837e89949faaa2988d82776c62574c41362c21160b010000000915222f3c4855626f7b8895a2ada09386796d6053463a2d20130700000000000000000b1724313e4a5764717d8a97a4b1a89c8f8275685b4f4235281c0f0200000000000000000d1a26333f4c5864717d8996a2adb9c5d0dae3ebebdfd2c5b8ac9f9285786b5f5246525f6c7986929c908376695c4f4336291c100300000000000013202c3946535f6c7986938c7e72655a636c757e776e655d544b423930271e150c030000000000000b151f282f363a3d3d3d3d3d3d3d3d3d3d3d3d3e4b5865717e8b9386796c5f5346392c20130000000000000000000000000000000000000000070f161c2023252526262626262523221f1d1916110c07010000000000000000000000000000000000000000000000000008111a232b333a41484e54595e6265696b6d6f7071717171716f6e6c6a6764605c57524c463f38312921180f0600000000000000000f1c28343f4b555d6363636363636363635f584e50565b606467696b6d6e6e6e6e6d6b6865625d58534c453e362e251c130a000000000000000000000000000009121c252d363e464d53595f64696c70727576787979797978777674726f6c68635e59534c453d352d241b12080000000000000000000b17232f3a46515d68737e89939da7a79d93898178716b6763616060616365696e747b848c96a0aaa49a8f857a6f64594d42362a1f13070000000000000000000e1b2834414e5b6774818e9ba8ac9f9285786b5f5245382c1f120500000000000000000013202c3946535f6c798693a0aca79a8d8173675a4d4034271a0d01000a1724303d4a5763707d8a97a4b0a3968a7d7063564a3d3023170a0013202c3946535f6c798693a0aca79a8d8173675a4d4034271a0d00000000000000000815222e3b4855616e7b8895a2aea5988b7e7165584b3e3225180b000000000000000000101c2936434f5c697683909ca9b2a5988c7e7265584c3f3225190c0000000000000000000000040e18222d37414b555f6a747e88939da7a89e948a80756b61574c42382e241a0f05000000000000000000000006121f2c3945525f6b7885929ea69a8d8174675a4e4135281c11070000030c17232f3b4854616d7a8793a0a6998c807366594d4033271a0d000000000000000000000000000000000000000000000000000000000000000a151e28313a434c555e677079828b949da69e958c837a70675e55525b656e778089929ba4a1988f867d746b625950473e352c23190f04000000000000000000000000000000000000000000000000000000000005111d2834404c58636f7b87939fa79b8f858c98a4a3978c8074685c5045392d2115090000000000000000000000000000000000000000000013202c3946535f6c798693a0a99c8f8285909ba6a69c91867b70665b50453a30251a0f04000000000915222f3c4855626f7b8895a2ada09386796d6053463a2d20130700000000000000000b1724313e4a5764717d8a97a4b1a89c8f8275685b4f4235281c0f0200000000000000000f1c2935424e5b6774818d99a5b2becad6e1ecf5ebdfd2c5b8ac9f9285786b5f5246525f6c7986929c908376695c4f4336291c100300000000000013202c3946535f6c7986938c7e7265636c757e8781776f665d544b423930271e150c030000000006121d27313a41474a4a4a4a4a4a4a4a4a4a4a4a4a4b5865717e8b9386796c5f5346392c20130000000000000000000000000000000000000007111921272c303132333333333231302e2c2926221d18120c05000000000000000000000000000000000000000000000008111a232c353d454c53595f65696e7275787a7c7d7e7e7e7e7d7c7b797674706c68635d57514a433b332a21180f0500000000000000121e2b3844505c676f70707070707070706a5f545b61676c70737678797b7b7b7a797775726e69645e57504840372e251c120800000000000000000000000006111b242e37404850575e656b7075797c7f81838485868686858483817e7b78746f6a645e574f473f362d241a10060000000000000004101c28343f4b57626e79848f9aa5aba0958b81776e67605b575554535456595d6369717a848e99a4aca1968c81756a5e53473b2f23170b0000000000000000000e1b2834414e5b6774818e9ba8ac9f9285786b5f5245382c1f120500000000000000000013202c3946535f6c798693a0aca79a8d8173675a4d4034271a0d01000a1724303d4a5763707d8a97a4b0a3968a7d7063564a3d3023170a0013202c3946535f6c798693a0aca79a8d8173675a4d4034271a0d00000000000000000815222e3b4855616e7b8895a2aea5988b7e7165584b3e3225180b000000000000000000101c2936434f5c697683909ca9b0a5988c7e7265584c3f3225190c00000000000000000000000006101b252f39434e58626c76818b959faaa69c91877d73695e544a40362b21170d030000000000000000000004121e2b3844515e6a7784909da89b8f8276695d5145392e2319110b0a0d151e28333f4b5763707c8995a2a4978b7e7165584c3f3225190c00000000000000000000000000000000000000000000000000000000000006111c27313a434c555e677079828b949da69e958c837a71685e554c49535c656e778089929ba4a1988f867d746b625950473e352b21160b0000000000000000000000000000000000000000000000000000000000020d18242f3b47535f6a76828e9aa6a09792959ea99f93877b6f63574c4034281c10050000000000000000000000000000000000000000000013202c3946535f6c798693a0aa9d91898c97a2aa9f958a7f746a5f54493e34291e130900000000000915222f3c4855626f7b8895a2ada09386796d6053463a2d20130700000000000000000b1724313e4a5764717d8a97a4b1a89c8f8275685b4f4235281c0f020000000000000000111e2a3744505d6a76838f9ca8b5c1cedae6f2f8ebdfd2c5b8ac9f9285786b5f5246525f6c7986929c908376695c4f4336291c100300000000000013202c3946535f6c7986938c7e726568747e87908a81786f665d544b423930271e150d040000000b17232e39434c5256575757575757575757575757575865717e8b9386796c5f5346392c2013000000000000000000000000000000000000050f19232b33383c3e3f3f4040403f3e3d3b3835322e29231d160f0700000000000000000000000000000000000000000006101a232c353e474f565e646b70757a7e818487888a8b8b8b8b8a89878683807c78746e69625c544d453c332a21170d0300000000000013202c3946535f6c787d7d7d7d7d7d7d7c70645f666c72777c80838586878888878684817e7a756f69625a524940372e241a100500000000000000000000030e18222d364049525a626970767c8185888b8e90919293939292918f8d8b8884807b756f68615951483f362c22180e030000000000000814202c3844505c68737f8a96a1aca59a8f84796f655c554f4b484747484a4d51585f68727c87929ea9a89d92867b6f63584c4034281c0f0300000000000000000e1b2834414e5b6774818e9ba8ac9f9285786b5f5245382c1f120500000000000000000013202c3946535f6c798693a0aca79a8d8173675a4d4034271a0d01000a1724303d4a5763707d8a97a4b0a3968a7d7063564a3d3023170a0013202c3946535f6c798693a0aca79a8d8173675a4d4034271a0d00000000000000000815222e3b4855616e7b8895a2aea5988b7e7165584b3e3225180b000000000000000000101c2936434f5c697683909ca3a3a3988c7e7265584c3f3225190c0000000000000000000000000009131d27323c46505a656f79838d98a2aca3998f857a70665c52473d33291f140a0000000000000000000001101d2936434f5c6875828e9ba79e9285796d61554a3f352b231b1716191f27303a45505b6773808c98a4a195897c6f63564a3d3124170b0000000000000000000000000000000000000000000000000000000000000b17222e38424c555e677079828b949da69e958c837a71685f564c43414a535c656e778089929ba4a1988f867d746b625950473d32271b0f030000000000000000000000000000000000000000000000000000000008131e29333e47515a66717d8995a1a9a29fa1a7a69a8e82766a5f544a40362c21170b0000000000000000000000000000000000000000000013202c3946535f6c798693a0aca39a95979ea9a3998e83786e63584d42382d22170c0200000000000915222f3c4855626f7b8895a2ada09386796d6053463a2d20130700000000000000000b1724313e4a5764717d8a97a4b1a89c8f8275685b4f4235281c0f020000000000000000121f2c3845525e6b7885919eaab7c4d0dde9f6f8ebdfd2c5b8ac9f9285786b5f5246525f6c7986929c908376695c4f4336291c100300000000000013202c3946535f6c7986938c7e726567727b848d938a81786f665d544b423930271f160d0300000f1c28343f4b555d63636363636363636363636363636365717e8b9386796c5f5346392c20130000000000000000000000000000000000000b16212b353d44484b4c4c4c4c4c4c4b494745423e39342f282119110800000000000000000000000000000000000000030d18222c353e47505961686f767c81868a8e9193959697989898979694928f8c8984807a746d665f574e453c33291f150b000000000000121f2c3945525f6b78858a8a8a8a8a8a7e72656970777e83888c8f91939495959493918e8a86807a736c645b524940362c22170c020000000000000000000a151f2a343e48525b646c747b81878c9195989a9c9e9f9fa09f9f9e9c9a9794908c86817a736b635a51483e342a1f150a0000000000000c1824303c4854606c7884909ba7aba094897d72675d534b433e3b3a3a3b3d41464e56606b76818c98a4aea3978c8074685c5044382c1f130700000000000000000e1b2834414e5b6774818e9ba8ac9f9285786b5f5245382c1f120500000000000000000013202c3946535f6c798693a0aca79a8d8173675a4d4034271a0d01000a1724303d4a5763707d8a97a4b0a3968a7d7063564a3d3023170a0013202c3946535f6c798693a0aca79a8d8173675a4d4034271a0d00000000000000000815222e3b4855616e7b8895a2aea5988b7e7165584b3e3225180b000000000000000000101c2936434f5c6976839096969696968c7e7265584c3f3225190c00000000000000000000000000010b16202a343e49535d67717c86909aa4aba1968c82786e63594f453b30261c1208000000000000000000000e1b2734404d5966727e8b97a4a295897d72665b51473d352d272423252a3139424c56616c7884909ca89e9286796d6054473b2e2215090000000000000000000000000000000000000000000000000000000000000e1b27333f4a545e677079828b949da69e958c837a71685f564d433a38414a535c656e778089929ba4a1988f867d746b62594f44382c1f1307000000000000000000000000000000000000000000000000000000030e1925303b454f59636c757d86929fa4a2a1a1a3a4978b7f776f665c52483e33281d110600000000000000000000000000000000000000000013202c3946535f6c798693a0acaca5a2a3a8a79d92877c71675c51463c31261b10060000000000000915222f3c4855626f7b8895a2ada09386796d6053463a2d20130700000000000000000b1724313e4a5764717d8a97a4b1a89c8f8275685b4f4235281c0f02000000000000000013202c3946535f6c7986929facb8c5d2dfebf8f8ebdfd2c5b8ac9f9285786b5f5246525f6c7986929c908376695c4f4336291c100300000000000013202c3946535f6c7986938c7e72656069727a838c938a81786f665d544b423931281f150b0000121e2b3844505c676f707070707070707070707070707070717e8b9386796c5f5346392c2013000000000000000000000000000000000005101c28333d474f5557585959595958575654514e4a45403a332b231a11080000000000000000000000000000000000000a151f29343e475059626b727a81878d92969a9da0a2a3a2a2a2a2a3a2a19f9c9995908b857f78706960574e453b31271d12080000000000111e2b3844515e6b778491979797978c80736a727a82898f94989b9ea0a1a1a1a19f9d9a96918c857e766d645b52483e33291e1308000000000000000005101b26313c46505a646d757e858c93989da1a4a5a29f9e9d9c9c9d9fa1a5a4a09c97928c857d756c635a50463c31261b100500000000030f1b2834404c5865717d8995a1aca79b8f83776c61564b4139322f2e2d2e31353c444e5964707b87939faba89c9084786c6054483b2f23160a00000000000000000e1b2834414e5b6774818e9ba8ac9f9285786b5f5245382c1f120500000000000000000013202c3946535f6c798693a0aca79a8d8173675a4d4034271a0d01000a1724303d4a5763707d8a97a4b0a3968a7d7063564a3d3023170a0013202c3946535f6c798693a0aca79a8d8173675a4d4034271a0d00000000000000000815222e3b4855616e7b8895a2aea5988b7e7165584b3e3225180b000000000000000000101c2936434f5c697683898989898989897e7265584c3f3225190c0000000000000000000000000000040e18222d37414b555f6a747e88939da7a89e948a80756b61574d42382e241a0f050000000000000000000c1825313e4a56636f7b8894a0a69a8f83786d63594f473f3833303031353b424b545e68737d8994a0a69a8e8276695d5145382c1f1306000000000000000000000000000000000000000000000000000000000000111d2a37434f5b667079828b949da69e958c837a71685f564d433a312f38414a535c656e778089929ba4a1988f867d746b6054483b2f22150900000000000000000000000000000000000000000000000000000008131f2b36414c57616b757e878f979c98959495979b9b918981786e645a4f44392e23170b00000000000000000000000000000000000000000013202c3946535f6c798693a0acb6b1aeafaba1968b80756b60554a40352a1f140a000000000000000915222f3c4855626f7b8895a2ada09386796d6053463a2d20130700000000000000000b1724313e4a5764717d8a97a4b1a89c8f8275685b4f4235281c0f02000000000000000013202c3946535f6c798693a0acb9c6d3dfecf9f8ebdfd2c5b8ac9f9285786b5f5246525f6c7986929c908376695c4f4336291c100300000000000013202c3946535f6c7986938c7e72655e6068717a838c938a81786f665d544b433a31271c11060013202c3946535f6c787d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7e8b9386796c5f5346392c201300000000000000000000000000000000000814212d39444f5960646566666666656463605e5a56514b443d352c231a10060000000000000000000000000000000006111c26313b464f59626b747c848c92989ea2a4a09c99979695959697989b9ea1a5a19c97908a827a726960574d43392e24190e0300000000111e2a3744515d6a7784909da4a49a8d8173727c858d949a9f9c9a999898999b9da1a5a6a29d97908880766d645a4f453a2f24190e03000000000000000a16212d38434d58626c767f8890979ea4a8a29d99959391909090919295989da2a8a39d968f877e756c62584d43382d22160b0000000005121e2b3743505c6875818d99a5afa3978b7e73675b4f44392f2722212122242a323d48535f6b77838f9ba7ada195887c7064574b3f3226190d01000000000000000e1b2834414e5b6774818e9ba8ac9f9285786b5f5245382c1f120500000000000000000013202c3946535f6c798693a0aca79a8d8173675a4d4034271a0d01000a1724303d4a5763707d8a97a4b0a3968a7d7063564a3d3023170a0013202c3946535f6c798693a0aca79a8d8173675a4d4034271a0d00000000000000000815222e3b4855616e7b8895a2aea5988b7e7165584b3e3225180b000000000000000000101c2936434f5c69757c7c7c7c7c7c7c7c7c7165584b3f3225180c00000000000000000000000000000006101b252f39434e58626c76818b959fa9a69c91877d73695e544a40362b21170d0300000000000000000916222e3b47535f6b77838f9ba6a0948a7f746b61595049433f3d3c3e41464d545d66707a848f9aa6a195897d7266594d4135291c1004000000000000000000000000000000000000000000000000000000000000121e2b3845515e6b78828b949da69e958c837a71685f564d433a3128262f38414a535c656e778089929ba4a1988f867c6f6356493c302316090000000000000000000000000000000000000000000000000000000c1824303c47535e69737d87909997908b8988888a8f959b938a80766c61564a3f33281c1004000000000000000000000000000000000000000013202c3946535f6c798693a0acb5b5b5afa59a8f84796f64594e44392e23180e03000002050709090915222f3c4855626f7b8895a2ada09386796d6053463a2d201307000000000001070b0e1724313e4a5764717d8a97a4afa89c8f8275685b4f4235281c0f0c090400000000000013202c3946535f6c798693a0acb9c6d3dfecf9f8ebdfd2c5b8ac9f9285786b5f5246525f6c7986929c908376695c4f4336291c100300000000000013202c3946535f6c7986938c7e726b6b6b6b6b7179828b938a81786f665d554c43392e23170b0013202c3946535f6c79868a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8f9386796c5f5346392c201300000000000000000000000000000000000a1724303d4955616b70727273737372716f6d6a66625c564f473e352c22170d020000000000000000000000000000010c17222d38434d57616b757e868f969da4a59e9994908d8b898888898a8c8e91959aa0a6a29b948c847b72695f554b40352b20150900000000111d2a3743505d6a7683909daaa79a8e81747b858e969c9793908d8c8c8c8c8e91959aa0a7a8a19a928980766c61574c41362b1f1408000000000000040f1b27323e49545f6a747e88919aa2a9a59e97918d8986848383838486898c91979da4a8a19990877e74695f54493e33281c11050000000815212e3a46535f6c7884919da9ac9f93877a6e62564a3f33281d1614141518202b37434e5a66737f8b98a4b0a5988c8073675a4e4235291c1003000000000000000e1b2834414e5b6774818e9ba8ac9f9285786b5f5245382c1f120500000000000000000013202c3946535f6c798693a0aca79a8d8173675a4d4034271a0d01000a1724303d4a5763707d8a97a4b0a3968a7d7063564a3d3023170a0013202c3946535f6c798693a0aca79a8d8173675a4d4034271a0d00000000000000000815222e3b4855616e7b8895a2aea5988b7e7165584b3e3225180b0000000000000000000f1b2834414d59646d6f6f6f6f6f6f6f6f6f6a6055493d3024170b0000000000000000000204040404040409131d27323c46505a656f79838d98a2aca3998f857a70665c52483d33291f150a000000000000000006121e2b37434f5b67737e8a95a1a69b91877d736b625b544f4c4a494a4d52575e666f78828c96a1a69b9084786d6155493d3125190d00000000000000000000010202020202020202020201000000000000000000111e2b3744505d68737c858e979e958c837a71685f564d443a31281f1d262f38414a535c656e778089929b988f867d746b6054483b2f221509000000000000000000000000000000000000000000000000000004101c2835404c58646f7a858f99958d85807c7b7b7e848b939c92887d72675b5044382c201407000000000000000000000000000000000000000013202c3946535f6c798693a0a8a8a8a8a89e93887d73685d52483d32271c120701060a0e111415161616222f3c4855626f7b8895a2a8a09386796d6053463a2d20130700000000060d12171a1c24313e4a5764717d8a97a2a2a29c8f8275685b4f4235281c1b19140f09010000000013202c3946525f6c7985929facb8c5d2deebf8f8ebdfd2c5b8ac9f9285786b5f5246525f6c7986929c908376695c4f4336291c100300000000000013202c3946535f6c7986938c7e787878787878787879828b948a82786f675e554a3f33271b0f0013202c3946535f6c798693939393939393939393939393939393939386796c5f5346392c201300000000000000000000000000000000000b1825323e4b5865717d7e7f8080807e7d7c7976726d68615950473e34291e1308000000000000000000000000000006121d28343f4a545f69737d879098a0a8a29b938d8884817e7c7b7b7c7d7f8285898f959ca3a69e968e857b71675c52473c31261a0f04000000101d2a3643505d697683909da9a89b8e8278838d9796908b878381807e7e808285898e959ca4aca49b92887d73685d52473c3025190e0200000000000814202c38434f5a65717b86909aa3aca49b938c86817c797776767677797c80858c939ba3aba29990867b71665b4f44392d21160a0000000a1724303d4956626f7b8894a0ada99c9083776b5e52463a2e22160b0707090f1a26323e4a57636f7c8895a1aea89b8f83766a5d5144382b1f1205000000000000000e1b2834414e5b6774818e9ba8ac9f9285786b5f5245382c1f120500000000000000000013202c3946535f6c798693a0aca79a8d8173675a4d4034271a0d01000a1724303d4a5763707d8a97a4b0a3968a7d7063564a3d3023170a0013202c3946535f6c798693a0aca79a8d8173675a4d4034271a0d00000000000000000815222e3b4855616e7b8895a2aea5988b7e7165584b3e3225180b0000000000000000000c1825313c47525b6163636363636363636360584f44392d21150800000000000000060b0e101111111111111116202a343e48535d67717b86909aa4aba1978c82786e64594f453b31261c120800000000000000030e1b27333e4a56626d79848f9aa5a2988f857c746d66605b58565657595d63697078818a949da8a0958a7e73685c5045392d2115090000000000000001060a0d0f0f0f0f0f0f0f0f0f0f0e0b07020000000000000f1c2834404c57616a737c858e958c837a71685f564d443b32281f16141d262f38414a535c656e778089928f867d746b62594f43382c1f130700000000000000000000000000000000000000000000000000000713202c3845515d6975808c97978d837b746f6e6f7278818a949a8f84786c6054483c3023170b000000000000000000000000000000000000000013202c3946535f6c7986939b9b9b9b9b9b978c82776c61564c41362b20160b070d12171b1e2022232322222f3c4855626f7b88959b9b9b9386796d6053463a2d2013070000000710171e23272929313e4a5764717d8a95959595958f8275685b4f423529292825201a130b02000000121f2b3845515e6b7784919daab7c3d0dce9f5f8ebdfd2c5b8ac9f9285786b5f5246525f6c7986929c908376695c4f4336291c100902000000000013202c3946535f6c7986938d85858585858585858585858a95948b827870675c5044372b1e110013202c3946535f6c798686868686868686868686868686868686868686796c5f5346392c201300000000000000000000000000000000000b1825323e4b5865717e8b8c8c8c8c8b8a8886837e79726b625950453b3024190d02000000000000000000000000000b17232e3a45505b66717b858f99a2aaa2999089827c777471706f6f6f707275797d838a919aa2a8a0968d83796e63594d42372b201409000000101d2936434f5c697683909ca9a89c8f82808a95938c857f7a77747372727375787d838a929ba5ada39a8f857a6f64584d41362a1e120700000000000c1824303c4854606b77828d98a2aca59b9289817a75706d6b6a69696b6d70747a8189919aa4aba2988d82776c6155493e32261a0e0200000c1926323f4b5865717e8a97a3b0a69a8d8174685b4f42362a1e12060000000a16222e3b4754606c7986929fabab9e9285796c6053463a2d211407000000000000000e1b2834414e5b6774818e9ba8ac9f9285786b5f5245382c1f120500000000000000000013202c3946535f6c798693a0aca79a8d8173675a4d4034271a0d01000a1724303d4a5763707d8a97a4b0a3968a7d7063564a3d3023170a0013202c3946535f6c798693a0aca79a8d8173675a4d4034271a0d00000000000000000815222e3b4855616e7b8895a2aea5988b7e7165584b3e3225180b0000000000000000000814202b3640495055565656565656565656544e463d33281c10040000000000040b12171b1d1e1e1e1e1e1e1e1e1e222c37414b555f6a747e88939da7a89e948a80756b61574d42382e241a0f050000000000000a151e28313a45515c68737e89939eaaa1978f867e77716c676563636466696e747b828a939ca6a4998e83786d62574b40352c23190f040000000000050c12171a1b1c1c1c1c1c1c1c1c1c1a17130d0700000000000c18242f3b454e57616a727b858c837a71685f564d443b322920160d0b141d262f38414a535c656e778089867d746b625950473d32271b0f0300000000000000000000000000000000000000000000000000000916222f3b4854616d7985919c90857b7169636162676f78828d9995897d7164584c3f33261a0d000000000000000000000000000000000000000013202c3946535f6c79868e8e8e8e8e8e8e8e867b70655a4f453a2f241a0f0d13181e23272a2d2f30302f2d2f3c4855626f7b888e8e8e8e8e86796d6053463a2d201307000006101922292f333536363e4a5764717d888888888888888275685b4f4236363634312c251d140b000000111d2a3743505c6976828f9ba8b4c1cdd9e5f1f8ebdfd2c5b8ac9f9285786b5f5246525f6c7986929c908376695c4f4336291e1a140d050000000013202c3946535f6c798693959292929292929292929292949b9d948b82786c5f5245392c1f1200131f2c3946525f6b767979797979797979797979797979797979797979766b5f5246392c1f1300000000000000000000000000000000000b1825323e4b5865717e8b98999999989795928f8a847d756b62574c41352a1e120600000000000000000000000004101c28343f4b56616d77828d97a1aba39990877e77716b6765636262636466696d72788088909aa4a89f958b80756a5f53483d3125190e020000101c2936434f5c697683909ca9a99c8f838691938a817a736e6a6866656566696d72788089939da7aba1968b8075695e52463b2f23170b00000000030f1c2834404d5965707c88939fa9a99e938980776f6964615e5d5c5d5e6064696f767f89929da7a99f94897d72665a4e42362a1e120600000e1b2834414d5a6773808d99a6b1a4988b7e7265594c4033271a0e0200000006131f2b3844515e6a7783909da9ada194877b6e6255483c2f221609000000000000000e1b2834414e5b6774818e9ba8ac9f9285786b5f5245382c1f120500000000000000000013202c3946535f6c798693a0aca79a8d8173675a4d4034271a0d01000a1724303d4a5763707d8a97a4b0a3968a7d7063564a3d3023170a0013202c3946535f6c798693a0aca79a8d8173675a4d4034271a0d00000000000000000815222e3b4855616e7b8895a2aea5988b7e7165584b3e3225180b000000000000000000030f1a242e373f454849494949494949494947433c342b21160b0000000000050e161d23272a2a2a2a2a2a2a2a2a2a2a2a2f39434e58626c76818b959fa9a69c92877d73695e544a40362c21170d030000000006111c27313a434c555e677079838f9ca9a9a1989089827c787471706f7072757a7f858c949ca5aea296897d746b625950473e352b21160b000000000710171e23262828282828282828282827241f1811090000000007131e29333c454e576069727b837a71685f564d443b322920170e04020b141d262f38414a535c656e77807d746b625950473e352b21160a0000000000000000000000000000000000000000000000000000000b1824313e4a5763707c8995978b7f74695f5754565d66717c8894998d8074675b4e4135281c0f020000000000000000000000000000000000000013202c3946535f6c798282828282828282827e74695e53493e3329211712191e24292e3336393b3c3c3c3a373c4855626f7b82828282828282796d6053463a2d20130700030e18222c343a3f424242424a5763707b7b7b7b7b7b7b7b7b74685b4f42424242413d372f261c120700000f1c2835414e5a6773808c98a5b1bdc9d4e0eaf4ebdfd2c5b8ac9f9285786b5f5246525f6c7986929c908376695c4f43362e2b251f170e0500000013202c3946535f6c79868b8b8b8b8b8b8b8b8b8b8b8b8b8e98988f867d74695e5145382b1f1200111e2a37434f5a646b6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6b645a4f43372a1e1100000000000000000000000000000000000b1825323e4b5865717e8b8d8d8d8d8e9194999b958f877d73695d52463a2e22160a0000000000000000000000000915212d3844505c67737e89949fa9a79c91877e756d65605b585655555657595d61676e757e88929ca7a79c91877b7065594d42362a1e12060000101c2936434f5c697683909ca9aa9e928a8d958a81786f68635e5b5958595a5c61676e77818b95a0aba89d91867a6f63574b3f33271b0f0300000006121f2b3844505d6975818d999c9d9f988c82776e655e585452504f505154585e656d76808b96a1aca59a8e82776b5f53473a2e2216090000101c2936424f5c6875828e9ba8afa296897c7063574a3d3124180b0000000003101d2936424f5c6875828e9ba8afa396897d7063574a3d3124170a000000000000000e1b2834414e5b6774818e9ba8ac9f9285786b5f5245382c1f120500000000000000000013202c3946535f6c798693a0aca79a8d8173675a4d4034271a0d01000a1724303d4a5763707d8a97a4b0a3968a7d7063564a3d3023170a0013202c3946535f6c798693a0aca79a8d8173675a4d4034271a0d00000000000000000815222e3b4855616e7b8895a2aea5988b7e7165584b3e3225180b0000000000000000000008121c252d34393c3c3c3c3c3c3c3c3c3c3b37322b22190f0500000000030d1720282e3336373737373737373737373737373c46505a656f79838d98a2aca3998f857a70665c52483d33291f150a000000000b17222e38424c555e677079828b949faba9aaa29b948e8884807e7c7c7d7e82868b91979ea6aaaba59990877d746b625950473d32271b0f03000006101921292f3335353535353535353535332f2a231b1208000000020d17212a333c454e576069727971685f564d443b322920170e050000020b141d262f38414a535c656e76746b625950473e352c23190f040000000000000000000000000000000000000000000000000000000c1926333f4c5965727e8b9894877b6f63574d484b545f6b7884919c8f8276695c504336291d100300000000000000000000000000000000000000121f2c3845515e6973757575757575757575746d62574d47423b33291f1e242a2f353a3f4346484949484744404754606b7475757575757575736a5e5245392c1f13060009141f2a343e454b4f4f4f4f4f545f696e6f6f6f6f6f6f6f6f6c63584f4f4f4f4f4d4841382e24190d02000d1926323f4b5764707c8894a0acb8c3ced8e2eaebdfd2c5b8ac9f9285786b5f5246525f6c7986929c908376695c4f433d3b36302920160c02000013202c3946535f6c797e7e7e7e7e7e7e7e7e7e7e7e7e7e88958f867d746b62584d4135291d10000e1a26323e48525a5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5a52483e32261a0e00000000000000000000000000000000000b1825323e4b5865717e82818080818284888d959e998f857a6e63574b3e3226190d0000000000000000000000000c1925313d4955616c78848f9aa5aca1958a80756c635b544f4c4a4948494b4d51565c646c76808b96a1aca3988d81756a5e52463a2e22160a0000101c2936434f5c697683909ca9afa49b96988e83786f665e57524f4d4c4c4d50555c656f79848f9aa6aea3978b8073675b4f43372b1f13060000000714212e3a4753606c79858b8d8f919392877b70655c534d484543434345484c535b646e7984909ba7ab9f93877b6f63574a3e3225190d0000111e2a3744505d6a7683909da9aea194887b6e6255483c2f22160900000000000e1b2734414d5a6773808d9aa6b1a4978b7e7165584b3e3225180c000000000000000e1b2834414e5b6774818e9ba8ac9f9285786b5f5245382c1f120500000000000000000013202c3946535f6c798693a0aca79a8d8173675a4d4034271a0d01000a1724303d4a5763707d8a97a4b0a3968a7d7063564a3d3023170a0013202c3946535f6c798693a0aca79a8d8173675a4d4034271a0d00000000000000000815222e3b4855616e7b8895a2aea5988b7e7165584b3e3225180b00000000000000000000000a131b22282d2f3030303030303030302e2b262019100700000000000a151f2932393f4344444444444444444444444444444448535d67717b86909aa4aba1978c82786e64594f453b31261c12070000000e1b27333f4a545e677079828b949da6a09c9fa5a59f9994908d8a89898a8b8e92969ca2a9a29e9fa4a29990877d746b62594f44382c1f130700030e18222b333a3f42424242424242424242403b352d241a1005000000050f18212a333c454e5760696c685f564d443b322920170e0500000000020b141d262f38414a535c656a69625950473e352c231a1107000000000000000000000000000000000000000000000000000000000d192633404c596673808c999286796c5f53463b43505c6976838f9c9084776a5d5044372a1d110400000000000000000000000000000000000000101d2935414d58616768686868686868686868635b5656534d453b3126292f353b41464b4f525556565553504c474f5a6267686868686868686761584d4236291d1104000d1925313c4650575b5c5c5c5c5c5c5e626262626262626262605c5c5c5c5c5c5c59534a40352a1e1206000a16232f3b4854606c7884909ba7b2bcc6d0d8dfe4dfd2c5b8ac9f9285786b5f524a525f6c7986929c908376695c4f4a4947423b32281e13080000121f2b3844505c68707171717171717171717171757e878f8f867c746b625950463c3025190d000a16212c3740484f525353535353535353535353535353535353535353524f4840372c21160a00000000000000000000000000000000000b1824313e4a57636f76757473737475787c838c96a1978b7f73675a4e4135281c0f020000000000000000000004101c2935414d5965717d8995a0aca79b9084796e635a5149433f3d3c3c3c3e41454a525a646e7984909ba7a99e92867a6f63574b3e32261a0e0100101c2936434f5c697683909ca9b6ada69e93877c71675d544c4642403f3f41444b535d67727d8995a1ada89c9084786c5f53473b2f22160a0000000814212e3b4754616d797d7e818284868882766a5e544a423c38373637383c4149525d68737e8a96a2aea3978b7f73665a4d4135281c0f0300121f2b3845515e6b7884919eaaada093867a6d6054473a2e21140700000000000d1926333f4c5966727f8c99a5b2a5988c7f7266594c3f3326190c000000000000000e1b2834414e5b6774818e9ba8ac9f9285786b5f5245382c1f120500000000000000000013202c3946535f6c798693a0aca79a8d8173675a4d4034271a0d01000a1724303d4a5763707d8a97a4b0a3968a7d7063564a3d3023170a0013202c3946535f6c798693a0aca79a8d8173675a4d4034271a0d00000000000000000815222e3b4855616e7b8895a2aea5988b7e7165584b3e3225180b0000000000000000000000010911171c2022232323232323232323221f1b150e07000000000004101c27313b444b4f5151515151515151515151515151515151555f6a747e88939da7a89e948a80756b61574d42382e23180d010000111d2a37434f5b667079828b949da69e9590939aa1a7a5a09c9997969696989a9ea2a7a49e9791939ba4a29990877d746b6054483b2f2215090008141f2a343d454b4e4f4f4f4f4f4f4f4f4f4c463f362c21160b00000000060f18212a333c454e575d5f5c564d443b322920170e05000000000000020b141d262f38414a535a5e5d5850473e352c231a110800000000000000000000000000000000000000000000000000000000000d192633404c596673808c999386796d6054484045505d697683909c9083766a5d5044372a1d1104000000000000000000000000000000000000000d1925303b464f565a5b5b5b5b5b5b5b5b6063636363625f574d42372e343a40464c51575b5f61636362605c58524c50575b5b5b5b5b5b5b5b5b564f463c3125190d0100111d2936424d58626869696969696969676157555555555c656969696969696969655c52463a2e2216090007131f2c3844505c67737e8a95a0aab4bec6cdd4d8dcd2c5b8ac9f9285786b5f5656565f6c7986929c908376695c565656534c443a3025190d0100101c2834404b565e646565656565656565656d757e87908f867c736a625950473e342a1f14080005101a252e373e4346464646464646464646464646464646464646464646433e372e251a100500000000000000000000000000000000000916222f3b47525d65696867666667686b717a85919d9b8f8276695d5043372a1d1104000000000000000000000713202c3845515d6975828e9aa5aea2968a7e73685c52483f3833302f2f303134394048525d68737f8b96a3afa3978b7f73675b4e42362a1d110500101c2936434f5c697683909ca9b6b1a5998d82766b60554b423b363332323439414b56616d7884909ca8aca094887c6f63574a3e3225190c0000000713202c3945515d676e7072747678797b7d72665a4e4240403f3e3d3b393637414b56626e7a86929eaba79b8f8276695d5044372b1e120500131f2c3945525f6c7885929facac9f9286796c5f5346392d20130600000000000c1825323f4b5865717e8b98a5b1a6998d807366594d4033271a0d000000000000000e1b2834414e5b6774818e9ba8ac9f9285786b5f5245382c1f120500000000000000000013202c3946535f6c798693a0aca79a8d8173675a4d4034271a0d01000a1724303d4a5763707d8a97a4b0a3968a7d7063564a3d3023170a0013202c3946535f6c798693a0aca79a8d8173675a4d4034271a0d00000000000000000815222e3b4855616e7b8895a2aea5988b7e7165584b3e3225180b00000000000000000000000000060c10141616161616161616161615130f0a040000000000000915212d38434d565b5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d626c76818b959fa9a69c92877d73695f544a4035291d12050000121e2b3845515e6b78828b949da69e958c83898f969ca1a5a8a6a4a3a3a3a5a7a7a39e99938c8589929ba4a2998f867c6f6356493c30231609000d1925303c464f575b5b5b5b5b5b5b5b5b5b5851483e33271b0f0300000000060f18212a333c454c5152504b443b322920170e050000000000000000020b141d262f3841484e51504d463e352c231a11080000000000000000000000000000000000000000000000000000000000000c1925323f4c5865727e8b9795887c706459514d4f57616d7985919b8f8275695c4f4336291d10030000000000000000000000000000000000000008141f2a343d454b4e4e4e4e4e4e4e56616b6f6f6f6f6f695f53473b393f454b52575d62676b6e6f6f6e6c68635d564e4b4e4e4e4e4e4e4e4e4e4b453d342a1f14090000121f2c3845525e6a737575757575757573695d51484b57636e75757575757575756e63574a3e3124180b00030f1b27333f4b57626d79848e98a2acb4bcc2c8cccfd1c5b8ac9f9285786b63636363636c7986929c90837669636363635e564c41352a1d1105000c18232f3a444d53575858585858585c646d767f88908e867c736a615850473e352c22180e03000009131c252c32373939393939393939393939393939393939393939393937322c251c130900000000000000000000000000000000000006121e2a36414b535a5d5c5a5a595a5c606875828e9b9e9184776b5e5144382b1e1105000000000000000000000a16222f3b4854616d7985929eaaab9e92867a6e62564b40362d272422222325282e36404b57626e7a86929faba79b8f83776b5e5246392d20140700101c2936434f5c697683909ca9b6ada195897d71655a4e4339302a272526282f3944505c6874808c99a5b0a4988b7f73665a4d4135281c0f03000004111d2935404b555d62646667696b6d6f706b61564b4c4c4c4c4b4a4845423e3a46525e6a76828f9ba8aa9e9185786c5f5346392d2013070013202c3946535f6c7986939facac9f9285786b5f5245392c1f120600000000000b1824313e4b5764717e8b98a4b1a79a8d8173675a4d4134271a0e000000000000000e1b2834414e5b6774818e9ba8ac9f9285786b5f5245382c1f120500000000000000000013202c3946535f6c798693a0aca79a8d8173675a4d4034271a0d01000a1724303d4a5763707d8a97a4b0a3968a7d7063564a3d3023170a0013202c3946535f6c798693a0aca79a8d8173675a4d4034271a0d00000000000000000815222e3b4855616e7b8895a2aea5988b7e7165584b3e3225180b00000000000000000000000000000004070909090909090909090909060300000000000000000c1825313d49555f676a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6f79838d98a2ada3998f857b70665c51463a2e2115080000111e2b3744505d68737c858e979e958c837a7e858b9095999c9fa1a2a2a1a09e9b97938d88817b8089929b9990877d746b6054483b2f22150900101d2935414d586167686868686868686868635a4f44382c1f13060000000000060f18212a333b41444644403a322920170e0500000000000000000000020b141d262f373d424444413b342c231a1108000000000000000000000000000000000000000000000000000000000000000b1724313d4a56636f7c8894988c81766b635c595b6169737e8995988c8073665a4d4134281b0e0200000000000000000000000000000000000000020d18222b333a3f4142424242424d5966737c7c7c7c7b7063574a3e444a50575d63686e73777a7c7c7b78746f6860574e4442424242424242413f3a332b22180e03000013202c3946535f6c7982828282828282786b5f52454c5865727e8282828282827e7165584b3e3225180b00000b17232f3a46515c67727c87909aa2aab1b7bcc0c3c4c5b8ac9f928578707070707070707986929c908376707070706f685e5246392d2014070007121d28323b42484b4b4b4b4b4d59646e768088918e857c736a61584f463e352c231a1006000000010a131a21262a2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2a26211a130a01000000000000000000000000000000000000020e19242f3942494e565c5e5e5d5e5f626975828e9b9e9184776b5e5144382b1e1105000000000000000000000c1825323e4b5763707c8995a1aea89b8f82766a5e52463a2f241b17161516181d242f3a46525e6a76838f9ba8ab9f93877a6e6155483c2f23160a00101c2936434f5c697683909ca9b6aa9e9185796d6155493d32271e1a19191d2834404c5864707c8995a2aea79b8f8276695d5044372b1e11050000010d18242f39434c525557595b5c5e6062636059565758595959585654524e4a46414e5a6773808c99a5ada094877a6e6154483b2e2215080013202c3946535f6c798693a0acac9f9285786b5f5245382c1f120500000000000b1724313e4a5764717d8a97a4b1a79a8e8174675a4d4134271a0e000000000000000e1b2834414e5b6774818e9ba8ac9f9285786b5f5245382c1f120500000000000000000013202c3946535f6c798693a0aca79a8d8173675a4d4034271a0d01000a1724303d4a5763707d8a97a4b0a3968a7d7063564a3d3023170a0013202c3946535f6c798693a0aca79a8d8173675a4d4034271a0d00000000000000000815222e3b4855616e7b8895a2aea5988b7e7165584b3e3225180b00000000000000000000000000000000000000000000000000000000000000000000000000000d1a2734404d59667177777777777777777777777777777777777777777777777b86909ca8aba1978d82786e6256493d3024170a00000f1c2834404c57616a737c858e958c837a7173797f84898d90929495959493918e8b87827c76707680899290877d746b62594f43382c1f130700121f2c3845515e69737575757575757575746c6054473b2e211508000000000000060f1821293035383938342f2820170e05000000000000000000000000020b141d252c3236373735302a221a110800000000000000000000000000000000000000000000000000000000000000000915222e3b4753606c7884909b92877d746d6866676b727b858f9a93877b6f63574b3e3225190c00000000000000000000000000000000000000000006101921282e3235353535353f4c5965727e8989897e72665a4e4a4f555b62686e747a7f8487898988858079726960564c4136353535353535322e292119100600000013202c3946535f6c79868f8f8f8f8f85786b5f52454c5865727e8c8f8f8f8f8b7e7165584b3e3225180b000006121e2935404b56606b757e8890989fa6abb0b3b6b8b9b8ac9f92857d7d7d7d7d7d7d7d7d86929c90837d7d7d7d7d7a6e6155483b2e22150800010c16202930373c3e3e3e3e424f5b68758089918e857c736a61584f463d342c231a10070000000000010910161a1e1f20202020202020202020202020202020202020201f1e1a16100901000000000000000000000000000000000000000008131d27313d495560686b6a6a6b6c6e737b86919e9b8f8376695d5044372a1d1104000000000000000000000e1a2734404d5966727f8c98a5b1a5988c8073675a4e4235291d120b09090a0c121e2936424e5a6773808c99a5afa2968a7d7064574b3e3225190c00101c2936434f5c697683909ca9b4a79b8e8275695d5044382c21150e0c0c17232f3c4854616d7a86939facaa9e9185786c5f5246392d20140700000007131d28313a4146494a4c4e505253555a5d606264656666656463615e5a56524d4b5864717d8a97a3afa295897c6f6356493c3023160a0013202c3946535f6c798693a0acac9f9285786b5f5245382c1f120500000000000b1724313e4a5764717d8a97a4b1a79a8e8174675a4d4134271a0e000000000000000e1b2834414e5b6774818e9ba8ac9f9285786b5f5245382c1f120500000000000000000013202c3946535f6c798693a0aca79a8d8173675a4d4034271a0d01000a1724303d4a5763707d8a97a4b0a3968a7d7063564a3d3023170a0013202c3946535f6c798693a0aca79a8d8173675a4d4034271a0d00000000000000000815222e3b4855616e7b8895a2aea5988b7e7165584b3e3225180b00000000000000000000000000000000000000000000000000000000000000000000000000000e1a2734414d5a6774818484848484848484848484848484848484848484848484848f9ba8b3a99e948a7d7164574a3e3124170b00000c18242f3b454e57616a727b858c837a7168686e73787d818386878888888785827e7b76716b656d768089877d746b625950473d32271b0f030013202c3946535f6c7982828282828282827b6f6255483c2f22150900000000000000060f171e24292b2c2b28231d160e050000000000000000000000000000020b131a2126292b2a28241f18100800000000000000000000000000000000000000000000000000000000000000000006131f2b3844505c68737f8a959990877e78747374777d858d97988d82766b5f53473b2f22160a00000000000000000000000000000000000000000000070f171d222628282828313e4b5764707d8a968e82766a5f57565b60666d737980858b9093969694918b847b72685e53473c31282828282826221d1710070000000013202c3946535f6c7986939c9c9c9285786b5f52454c5865727e8c989c9c988b7e7165584b3e3225180b0000010d18232e39444e59636c757e868e959aa0a4a7a9abacacaca0958b8a8a8a8a8a8a8a8a8a8b959e938a8a8a8a8a887b6e6155483b2e2215080000040e171f262b2f31323234414d5a66707a838c857c736a61584f463d342b221a10070000000000000000050a0e1113131313131313131313131313131313131313131313110e0a0500000000000000000000000000000000000000000000010d1a2734404d59667178777777787a7e858d97a0968b7f73675a4e4235281c0f0300000000000000000000101c2935424f5b6875818e9aa7afa3968a7d7064574b3e3226190d01000000010d1926323e4b5764707d8a96a3b0a5998c8073665a4d4134271b0e00101c2936434f5c697683909ca9b1a5988c7f72665a4d4134281c1004000713202c3945515e6a7784909da9ada094877a6e6155483b2f221509000000010c161f282f353a3c3e414950565c6166696d6f7172727372716f6d6a67625e585256636f7c8995a2afa3978a7d7064574a3d3124170b0013202c3946535f6c798693a0acac9f9285786b5f5245392c1f120600000000000b1824313e4b5764717e8b97a4b1a79a8d8174675a4d4134271a0e000000000000000e1b2834414e5b6774818e9ba8ac9f9285786b5f5245382c1f120500000000000000000013202c3946535f6c798693a0aca79a8d8173675a4d4034271a0d01000a1724303d4a5763707d8a97a4b0a3968a7d7063564a3d3023170a0013202c3946535f6c798693a0aca79a8d8173675a4d4034271a0d00000000000000000815222e3b4855616e7b8895a2aea5988b7e7165584b3e3225180b00000000000000000000000000000000000000000000000000000000000000000000000000000e1a2734414d5a6774818e919191919191919191919191919191919191919191919196a0abb7b0a4978a7d7164574a3e3124170b000007131e29333c454e576069727b837a71685f5d63686c717477797a7b7b7b7a7876726f6a65605b646d76807d746b625950473e352b21160a000013202c3946535f6c79868f8f8f8f8f8f887b6f6255483c2f2215090000000000000000050d13181c1f1f1e1c18120c0400000000000000000000000000000000010910151a1d1e1e1c18140e0600000000000000000000000000000000000000000000000000000000000000000000030f1b27333f4b57626d78838d9799908a8481808183888f969990867b70655a4e43372b1f13060000000000000000000000000000000000000000000000050c1216191b1b1b232f3c4955626e7b889493877c71686463666c72787e848b91969ba0a2a2a19c968e847a6f64594d42362a1e1b1b1b1a16120c05000000000013202c3946535f6c798693a0a99f9285786b5f52454c5865727e8c98a5a5988b7e7165584b3e3225180b00000007121d28323d47515a636c747c83898f94989b9d9e9fa0a0a09d97969696969696969696979da09c9796969695887b6e6155483b2e221508000000050d141a1f23252525323e49545e68717a837c736a61584f463d342b2219100700000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000e1a2734414d5a67737f84848485878a90979d978e84796e63574b3e3226190d0100000000000000000000111e2a3744505d6a7683909ca9aea195887b6f6255493c2f23160a00000000000a16232f3c4955626f7b8895a1aea79b8e8275685c4f4236291c1000101c2936434f5c697683909ca9afa396897d7064574a3e3125190c000004101d2a36434f5c6875828e9ba8afa296897c7063564a3d3024170a00000000040d161e242a313a434b535b61676d7276797b7d7e7f807f7e7c7a77736e69635d56616e7b8894a1aea4978b7e7164574b3e3125180b00131f2c3946525f6c7985929facac9f9286796c5f5346392c20130600000000000c1825323e4b5865717e8b98a4b1a69a8d8073665a4d4034271a0d000000000000000e1b2834414e5b6774818e9ba8ac9f9285786b5f5245382c1f120500000000000000000013202c3946535f6c798693a0aca79a8d8173675a4d4034271a0d01000a1724303d4a5763707d8a97a4b0a3968a7d7063564a3d3023170a0013202c3946535f6c798693a0aca79a8d8173675a4d4034271a0d00000000000000000815222e3b4855616e7b8895a2aea5988b7e7165584b3e3225180b00000000000000000000000000000000000000000000000000000000000000000000000000000e1a2734414d5a6774818e9a9e9e9e9e9e9e9e9e9e9e9e9e9e9e9e9e9e9e9e9e9e9ea1a8acacaca4978a7d7164574a3e3124170b0000020d17212a333c454e576069727971685f5651575c6164686a6c6e6f6f6e6d6b6966635e5a54525b646d76756b625950473e352c23190f04000013202c3946535f6c7986939c9c9c9c95887b6f6255483c2f22150900000000000000000002080c101213120f0c07010000000000000000000000000000000000000004090d1011110f0c08020000000000000000000000000000000000000000000000000000000000000000000000000b17232f3a46515c67717b858e969b95908d8c8d8f94999890877e74695f54493d32261a0e0300000000000000000000000000000000000000000000000001060a0d0e0f14212d3a46535f6c788591988d837a73707072777d83898f969ca2a4a1a0a0a2a5a0968c81756a5e52463a2e22160f0e0d0a060100000000000013202c3946535f6c798693a0ac9f9285786b5f52454c5865727e8c98a5a5988b7e7165584b3e3225180b000000000b16212b353f48515a626a71787e83888b8e9092939393939393939393939393939393939393939393939393887b6e6155483b2e2215080000000002090f13161818212d38434c565f687179736a61584f463d342b221910070000000000000000000000000000000000000000000000050a0d0f0f0f0f0f0f0d0a050000000000000000000000000000000000000000000000000000040b111926323e4b57636f7b8791919294979895918c857c72685d52463a2e22160a0000000000000000000000121f2b3845515e6b7884919eaaada093877a6d6054473a2e21140800000000000814212e3a4754606d7a8793a0ada99c9083766a5d5044372a1e1100101c2936434f5c697683909ca9aea194887b6e6255483c2f2316090000010e1b2734414d5a6773808d9aa6b1a4978b7e7164584b3e3225180c000000000006111b253039434c555d656c73787e8285888a8b8c8c8c8b8986837f7a756e6861616e7b8894a1aea5988b7e7165584b3e3225180b00121f2c3845525e6b7885919eabaca09386796d6053473a2d21140700000000000c1926333f4c5965727e8c98a5b2a6998c807366594c403326190d000000000000000e1b2834414e5b6774818e9ba8ac9f9285786b5f5245382c1f120500000000000000000013202c3946535f6c798693a0aca79a8d8173675a4d4034271a0d01000a1724303d4a5763707d8a97a4b0a3968a7d7063564a3d3023170a0013202c3946535f6c798693a0aca79a8d8173675a4d4034271a0d00000000000000000815222e3b4855616e7b8895a2aea5988b7e7165584b3e3225180b00000000000000000000000000000000000000000000000000000000000000000000000000000e1a2734414d5a6774818e9aa0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0978a7d7164574a3e3124170b000000050f18212a333c454e5760696c685f564d464b5054585b5e6061626261615f5d5a56524e4949525b646a6a625950473e352c231a110700000013202c3946535f6c798693a0a8a8a295887b6f6255483c2f2215090000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000006121e2935404a555f69737c848c92989c9a999a9c99948d867e756c62584d42372c21150a00000000000000000000000000000000000000000000000000000000000005121e2b3744505d6975828e9a958c84807d7c7e83888e949ba1a39d9895939395999e9d92867a6f63574a3e3226190d010000000000000000000013202c3946535f6c798693a0a09f9285786b5f52454c5865727e8c98a0a0988b7e7165584b3e3225180b00000000040f19232d363f48505860676d72777b7f828485868686868686868686868686868686868686868686868686867b6e6155483b2e22150800000000000003070a0b101b26313a434d565f686c6961584f463d342b2219100700000000000000000000000000000000000000000000040b11161a1c1c1c1c1c1c1a16110b040000000000000000000000000000000000000000000000080f161c22282e3a46525e6a76828e9a978e8c8b8985817a736a60564c41352a1e12060000000000000000000000131f2c3946525f6c7985929facac9f9286796c5f5346392d20130600000000000613202d3946535f6c7986929facaa9e9184776b5e5145382b1f1200101c2936434f5c697683909ca9aca09386796d6053473a2d2114070000000d1926333f4c5965727e8c98a5b2a5988c7f7266594c403326190d00000000020d18222d37414b555e676f777e84898e929597989999989795938f8b868079726b626d7a8794a1aea5988b7e7165584b3e3225180b00111e2b3744515d6a7784909daaada194877b6e6155483b2f22150900000000000e1a2734404d5a6673808d99a6b1a4988b7e7265584b3f3225190c000000000000000e1b2834414e5b6774818e9ba8ac9f9285786b5f5245382c1f120500000000000000000013202c3946535f6c798693a0aca79a8d8174675a4d4134271b0e01000a1724303d4a5763707d8a97a4b0a3968a7d7063564a3d3023170a0013202c3946535f6c798693a0aca79a8d8173675a4d4034271a0d00000000000000000815222e3b4855616e7b8895a2aea5988b7e7165584b3e3225180b00000000000000000000000000000000000000000000000000000000000000000000000000000e1a2734414d5a6774818e9393939393939393939393939393939393939393939393939393939393938a7d7164574a3e3124170b00000000060f18212a333c454e575d5f5c564d443b4044484c4f5153545555555452504d4a46423d4049525a5e5d5850473e352c231a11080000000013202c3946535f6c798693a0acafa295887b6f6255483c2f221509000000000004090d10121212121212121212121212121212121212121212121212121212121212121212121212100d0904000000000000000000000000000000000000000000000000000000000000000000000000010d18232e39434d57616a727a81878c8f929292908d88837c746c635a50463b31261b1004000000000000000000000000000000000000000000000000000000000000030f1c2834414d5966727e8a969e96908c8a898b8f949aa0a49e98928c888686898d949c978b7f73675a4e4235291d10040000000000000000000013202c3946535f6c7986939393939285786b5f52454c5865727e8c939393938b7e7165584b3e3225180b000000000007111b242d363e464e555c61676b6f7275777879797979797979797979797979797979797979797979797979776d6154483b2e211508000000000000000000000a151f28313a434d565c5f5d574f463d342b2219100700000000000000000000000000000000000000000000050e161c222628292929292826221c160e050000000000000000000000000000000000000000020a121920272e33393e424e5a66727e8a969386807e7c79756f6961584e443a2f251e170f070000000000000000000013202c3946535f6c798693a0acac9f9285786b5f5245392c1f1206000000000005121f2c3945525f6b7885929facac9f9285786c5f5246392c1f1300101c2936434f5c697683909ca9ab9f9285786c5f5245392c1f13060000000b1825323e4b5864717e8b97a4b1a69a8d8073675a4d4034271a0e0000000008131e29343f49535d67707981898f959a9ea1a3a5a4a2a1a1a19f9b97918b847d746c6d7a8794a1aea5988b7e7165584b3e3225180b00101d2936434f5c6975828f9ba8afa295897c6f6356493d3024170b00000000020f1c2835424e5b6874818e9aa7b0a3968a7d7064574a3e3124180b000000000000000e1b2834414e5b6774818e9ba8ac9f9285786b5f5245382c1f120500000000000000000013202c3946535f6c798693a0aca79b8e8175685b4f4235291c0f03000a1724313d4a5763707d8a97a4b0a3968a7d7063564a3d3023170a0013202c3946535f6c798693a0aca79a8d8173675a4d4034271a0d00000000000000000815222e3b4855616e7b8895a2aea5988b7e7165584b3e3225180b00000000000000000000000000000000000000000000000000000000000000000000000000000e1a2734414d5a67748186868686868686868686868686868686868686868686868686868686868686867d7164574a3e3124170b0000000000060f18212a333c454c5152504b443b3234383c3f42454648484848474644413e3a36313740484e51514d473e352c231a1108000000000013202c3946535f6c798693a0acaca295887b6f6255483c2f22150900000000080f15191d1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1d1a150f0800000000000000000000000000000000000000000000000000000000000000000000000007121c27313b454e5760686f767b808385868584817c77716a625a51483e342a1f150a00000000000000000000000000000000000000000000000000000000000000000c1925313d4955616d7985909ba19c989696989b9fa59f99938c86817c797a7c828a939b8f83766a5e5145382c1f13060000000000000000000013202c3946535f6c7986868686868685786b5f52454c5865727e8686868686867e7165584b3e3225180b00000000000009121b242c353c434a50565b5f6366686a6b6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c665c5145382c20130700000000000000000000030d161f28313b444b5053514d453d342b2219100700000000000000000000000000000000000000000000040e1720272e32353636363635322e2720170e04000000000000000000000000000000000000030b141c242b32393f444a4e5256626e7a8692968a7e72706d69645e574f48433d3730292119110800000000000000000013202c3946535f6c798693a0acac9f9285786b5f5245382c1f1205000000000003121f2c3845525f6b7885929facac9f9386796c5f5346392c201300101c2936434f5c697683909ca9ab9e9184776b5e5145382b1e12050000000a1724313d4a5764707d8a97a4b0a79a8e8174675b4e4134281b0e000000020d19242f3b46505b656f79828b939aa1a6aaa49f9b989694949495989b9c968f877e756d7a8794a1aea5988b7e7165584b3e3225180b000f1b2835414e5b6774818d9aa6b0a4978b7e7165584c3f32261a0d0100000005111e2b3744505d6976838f9ca9aea195887b6f6256493c3023160a000000000000000e1b2834414e5b6774818e9ba8ac9f9285786b5f5245382c1f120500000000000000000013202c3946535f6c798693a0aca99c8f83766a5d5044372b1f1307000b1724313e4a5764717d8a97a4b0a3968a7d7063564a3d3023170a0013202c3946535f6c798693a0aca79a8d8173675a4d4034271a0d00000000000000000815222e3b4855616e7b8895a2aea5988b7e7165584b3e3225180b00000000000000000000000000000000000000000000000000000000000000000000000000000e1a2734404d5a6672797979797979797979797979797979797979797979797979797979797979797979796f63574a3d3124170a000000000000060f18212a333b41444644403a3229282c303336383a3b3c3c3b3a393735322e2a262e373d424544413c352c231a110800000000000013202c3946535f6c798693a0a0a0a095887b6f6255483c2f2215090000000912192025292b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2926201a120a0000000000000000000000000000000000000000000000000000000000000000000000000b15202a333c454e565e646a6f73767879797774716c665f5850483f362c22180e0300000000000000000000000000000000000000000000000000000000000000000915212d3945515c68737e89939ca4a5a3a3a4a5a09a948e88817b75706d6d7178818b969286796d6054473b2e22150900000000000000000000131f2c3946525f6b7679797979797979766a5e51454b58647079797979797979797064574b3e3125180b0000000000000009121b232a32393f454a4f5357595c5e5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5b544a3f34281c10040000000000000000000000040d161f29323a40444645413b342b2219100700000000000000000000000000000000000000000000000b16202932393e4242424242423e39322920160b0000000000000000000000000000000000030c151d262e363d444a50555a5e62656975828e9a8e83776c6a6865625d59544e48413a332b231a1108000000000000000013202c3946535f6c798693a0acac9f9285786b5f5245382c1f1205000000000005121f2c3845525f6b7885929facaca09386796c5f5346392c201300101c2936434f5c697683909ca9aa9e9184776a5d5144372a1e11040000000a1723303d4a5663707d8a96a3b0a89b8e8275685b4e4235281b0f00000007131e2a35414c57626d77818b949da5aca69f98938f8b89888787898b8f93999990877e747a8794a1aea5988b7e7165584b3e3225180b000d1a26333f4c5965727e8b97a4b0a6998d8073675b4e4235291d11050000000814212d3a46525f6c7885919eaaac9f93867a6d6054473b2e211508000000000000020e1b2834414e5b6774818e9ba8ac9f9285786b5f5245382c1f120908050100000000000013202c3946535f6c798693a0acab9e9185786c6053473b2f23180d060b1825313e4b5764717e8b97a4b0a3968a7d7063564a3d3023170a0013202c3946535f6c798693a0aca79a8d8173675a4d4034271a0d00000000000000000815222e3b4855616e7b8895a2aea5988b7e7165584b3e3225180b00000000000000000000000000000000000202020202020202020201000000000000000000000c1925323e4a5660696c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c675e53473b2e22160900000000000000060f1821293035383938342f28201c202427292b2d2e2f2f2f2e2c2b2825221e1c252c3236383835312a231a11080000000000000013202c3946535f6c7986939393939393887b6f6255483c2f221509000008121b242b313538383838383838383838383838383838383838383838383838383838383838383838383836312c241c12090000000000000000000000000000000000000000000000000000000000000000000000030e18212a333c444c53595f63676a6b6c6c6a6865605b554e463e362d241a100600000000000000000000000000000000000000000000000000000000000000000005111d2934404b57626c77818a93999d9f9f9d99948f89837c76706a646060666f7a859195887c6f63564a3d3024170b00000000000000000000111e2a37434f5a646b6c6c6c6c6c6c6c6b64594e4248545f686c6c6c6c6c6c6c6c685e53483c2f23160a000000000000000009111920272e34393e43474a4d4f515253535353535353535353535353535353535353535353535353524f4a42382e23180c00000000000000000000000000040d1720282f3438393835302922191007000000000000000000000000000000000000000000000006111d27323b444a4e4f4f4f4f4e4a443b32271d1106000000000000000000000000000000020b151e272f3840474e555b61666b6e7275777d899593877b797774716e69655f59534c453d352c231a11080000000000000013202c3946525f6c7986929facac9f9286796c5f5246392c20130600000000000613202c3946525f6c7986929facaca09386796c5f5346392c201300101c2936434f5c697683909ca9aa9d9084776a5d5044372a1e11040000000a1623303c4956636f7c8996a3b0a89b8f8275685b4f4235281c0f0000000c18232f3b46525d68737e89939da6aea59c948d87837f7c7b7a7b7c7e83878d949990867c7a8794a1aea5988b7e7165584b3e3225180b000b1824313d4a56636f7c8895a1aea89c8f83766a5e5145392d21150a0706070d1824313d4955626e7b8794a0ada99d9084776b5e5245392c1f13060000000001080d121b2834414e5b6774818e9ba8ac9f9285786b5f5245382c1f171614110c07000000000013202c3946535f6c798693a0acada194887b6f63574b3f34291f1712111926323f4c5865727e8b98a5afa396897c6f6356493c302316090013202c3946535f6c798693a0aca79a8d8173675a4d4034271a0d00000000000000000815222e3b4855616e7b8895a2aea5988b7e7165584b3e3225180b0000000000000000000000000000050a0d0f0f0f0f0f0f0f0f0f0f0e0c0804000000000000000916222d39444e575d5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5c554c41362b1f12060000000000000000060f171e24292b2c2b28231d161014171a1d1f202122222221201e1c191612131a2126292b2b29251f191108000000000000000013202c3946535f6c7986868686868686867b6f6255483c2f22150900040f1a242d363d42444545454545454545454545454545454545454545454545454545454545454545454544423d362e241a10050000000000000000000000000000000000000000000000000000000000000000000000060f18212a323a41484e53575b5d5f5f5f5e5c58544f4a433c342c241b120800000000000000000000000000000000000000000000000000000000000000000000000c18232f3a45505b656f7881888d919292918d89837d77716b655e5853545d6975818d938b7e7165584b3f3226190c000000000000000000000e1a26323e48525a5f5f5f5f5f5f5f5f5f5a52483d424d565d5f5f5f5f5f5f5f5f5c564d42372b1f1307000000000000000000070e151c23282e33373b3e404344454646464646464646464646464646464646464646464646464646433f382f261c11060000000000000000000000000000050e161d23282b2c2c29251f1810070000000000000000000000000000000000000000000000000a16222e39444d555b5c5c5c5c5b554d44392e22160a0000000000000000000000000000000a141d273039414a525960666c72777b7e8184858a95988c868583817e7a75706b645e564f473e352c231a1006000000000000121f2c3845525f6b7885919eabaca09386796d6053473a2d21140700000000000714212d3a4753606d798693a0acac9f9386796c5f5346392c201300101c2936434f5c697683909ca9aa9d9084776a5d5144372a1e1104000000091623303c4956636f7c8996a3b0a89c8f8275685b4f4235281c0f000004101c2834404c57636e7a85909ba5afa69c938a827c7673706e6d6e6f72777c828a92988d837a8794a1aea5988b7e7165584b3e3225180b000915222e3b4754606d7985929eaaab9f92867a6d6155493d32271c16141314161e2935414d5965717e8a96a3afa69a8e8175685c4f43362a1d1104000000030c13191e212834414e5b6774818e9ba8ac9f9285786b5f5245382c232323211d18110a0200000013202c3946535f6c798693a0acb0a4988c8073685c51463b3128221f1e1f2734414d5a6673808d99a6aea295887b6f6255493c2f2216090013202c3946535f6c798693a0aca79a8d8173675a4d4034271a0d00000000000000000815222e3b4855616e7b8895a2aea5988b7e7165584b3e3225180b000000000000000000000000040b1116191b1c1c1c1c1c1c1c1c1c1b18140f0901000000000005111d28323c454c5153535353535353535353535353535353535353535353535353535353535353535353504b433a30251a0e02000000000000000000050d13181c1f1f1e1c18120c04080b0e101214151515151413110f0c0906090f151a1d1e1e1c19140e07000000000000000000131f2c3946525f6b767979797979797979786d6155483b2f221508000a15212b363f474e5151515151515151515151515151515151515151515151515151515151515151515151514e4840362c21160a000000000000000000000000000000000000000000000000000000000000000000000000060f18202830373d42474b4e51525352514f4c48443e38312a221a120900000000000000000000000000000000000000000000000000000000000000000000000007121e29343e49535d666f767d8284868684817d78726c66605a534d474c5965717e8686868073665a4d4034271a0e010000000000000000000a16212c3740484f5253535353535353524e4840363b444b515353535353535353504b443b30261a0f0300000000000000000000040b11171d22272b2e3134363839393939393939393939393939393939393939393939393939393937332d261d140a00000000000000000000000000000000040c12181c1f201f1d19140d06000000000000000000000000000000000000000000000000000d1a26333f4a555f6769696969675f554a3f33261a0d010000000000000000000000000007111c252f39424b535c636b72787d83878b8e9092949c9e969392908d8a86817c766f68615950473e352c22180d030000000000111e2b3744515d6a7784909da9aea194887b6e6155483c2f22160900000000000916222f3b4855616e7b8794a1adac9f9285796c5f5246392c1f1300101c2936434f5c697683909ca9aa9e9184776a5d5144372b1e11040000000a1623303d4956636f7c8996a3b0a89c8f8275685b4f4235281c0f00000814202c3844505c6874808b96a1aca99e948a8178716b666361616163666b7178808891948a7e8794a1aea5988b7e7165584b3e3225180b0006131f2c3844515d6976828e9aa6aea2968a7d71665a4e43382e27222020202227303a46515d6975818d9aa6afa3978a7e7265594d4034271b0e020000030d151d242a2e3034414e5b6774818e9ba8ac9f9285786b5f524538303030302d29231c140b01000013202c3946535f6c798693a0acb4a89c9084786d62574d433a332e2c2b2c2e3743505c6875828e9ba7ada194877b6e6154483b2e2215080013202c3946535f6c798693a0aca79a8d8173675a4d4034271a0d00000000000000000815222e3b4855616e7b8895a2aea5988b7e7165584b3e3225180b0000000000000000000000050e151c2226282828282828282828282724201a130b0200000000000b16212a333b41454646464646464646464646464646464646464646464646464646464646464646464644403931281e1308000000000000000000000002080c101213120f0c070100000000040607080909080806050200000000040a0e101211100d080300000000000000000000111e2a37434f5a646b6c6c6c6c6c6c6c6c6c665c5145392d201407000e1a26323d4851595e5e5e5e5e5e5e5e5e5e5e5e5e5e5e5e5e5e5e5e5e5e5e5e5e5e5e5e5e5e5e5e5e5e5e5e5952483e32271b0f02000000000000000000000000000000000000000000000000000000000000000000000000060e161e252b31373b3f42444546464543403c38332d272018100800000000000000000000000000000000000000000000000000000000000000000000000000010c17222d37414b545d646b71757879797875716c67615b554e48423d4956626e787979797972665a4d4034271a0e0100000000000000000005101a252e373e43464646464646464645433d362e323a4044464646464646464644403a32291f140900000000000000000000000000060c11161b1f222527292b2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2b27221c140b02000000000000000000000000000000000001070c10121312100d080200000000000000000000000000000000000000000000000000000f1c2935424e5b67717575757571675b4e4235291c0f03000000000000000000000000040e19232d37414b545d656e757c83898e93979a9d9fa1a6a8a2a09f9c9a96928d87817a736b625950473e34291f150a0000000000101d2936434f5c6875828e9ba8afa296897c7063574a3e3125180c00000000000c1825313d4a5763707c8996a2afab9e9185786b5e5245382b1f1200101c2936434f5c697683909ca9ab9e9184776b5e5145382b1e12050000000a1724303d4a5663707d8a96a3b0a89b8e8275685b4e4235281b0f00000b1824303c4855616d7985909ca8aea3978c82786e665f5a57555454565a5f666e767f899390858894a1aea5988b7e7165584b3e3225180b0003101c2935414d5a66727e8a96a2aea69a8e82766b60554a4038322f2d2c2d2f3339424c57626e7a85919daaab9f93877a6e6256493d3124180c0000000b151f272f353a3c3d414e5b6774818e9ba8ac9f9285786b5f52453d3d3d3d3c39342e261d1309000013202c3946535f6c798693a0acb2aaa1958a7e73695f554c443e3a3838383a3e48535f6b7884919daaab9f9286796c6053463a2d2014070013202c3946535f6c798693a0aca79a8d8173675a4d4034271a0d000000000001070b0e15222e3b4855616e7b8895a2a6a5988b7e7165584b3e3225180e0c090400000000000000040e1720272d323535353535353535353534312b251d140b0000000000040f1821293035383939393939393939393939393939393939393939393939393939393939393939393938342e271f160c02000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000e1a26323e48525a5f5f5f5f5f5f5f5f5f5f5b544a4034291d110400111e2a36424e59636a6b6b6b6b6b6b6b6b6b6b6b6b6b6b6b6b6b6b6b6b6b6b6b6b6b6b6b6b6b6b6b6b6b6b6a645a4f43372b1e120500000000000000000000000000000000000000000000000000000000000000000000000000040c131a20262b2f333537393939383633302c27221c150e0600000000000000000000000000000000000000000000000000000000000000000000000000000006101b252f39424b535a6065696b6c6c6b6865605b56504a433d373a46525d676c6c6c6c6c6960564a3e3225190c000000000000000000000009131c252c323739393939393939393936322c24282f3438393939393939393938342f2820170d02000000000000000000000000000000060a0e1216181b1d1e1f20202020202020202020202020202020202020202020202020201e1b17110a0200000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000101c2936434f5c69768282828276695c4f4336291c10030000000000000000000000000a15202b353f49535d666f7780878e949a9fa3a6a3a19f9e9e9e9fa1a4a6a29e98928c857d746b62594f463b31261b1005000000000e1b2834414d5a6773808c99a5b1a4988b7e7266594d4134281c110a07070709101c2834404d5966727e8b98a4b1aa9d9084776a5d5144372b1e1100101c2936434f5c697683909ca9ab9f9285786c5f5245392c1f13060000000b1724313e4a5764717d8a97a4b0a79b8e8174675b4e4135281b0e00020f1b2734404c5865717d8995a1ada99d91867b70665c544e4a4847484a4e545c646d77818b96909199a4b0a5988b7e7165584b3e3225180b00000d1925313d4a56626e7a86919da9aa9f93877c71665c524a433e3b3a393a3b3f444b545e68737f8a96a2aea69a8e82766a5e52463a2d211508000006121c2731394146494a4a4e5b6774818e9ba8ac9f9285786b5f524a4a4a4a4a49453f382f251a0f040013202c3946535f6c798693a0acaaa0999790857b71675e564f4a47454445474a505964707b8894a0aca99d9084776a5e5145382b1f12060013202c3946535f6c798693a0aca79a8d8173675a4d4034271a0d00000000060d12171a1c222e3b4855616e7b88959a9a9a988b7e7165584b3e32251c1b19140f090100000000000b16202931393e41424242424242424242403c362f261d12080000000000060f171f24292c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2b28231d150d0400000000000000000000000000000000000000000000000000000000000000000002070c0e1010101010100f0d09040000000000000000000000000000000a16212c3740484f52535353535353535352504a42382e23180c0000131f2c3945525e6b7578787878787878787878787878787878787878787878787878787878787878787878766b5f53463a2d201307000000000000000000000000000000000000000000000000000000000000000000000000000002090f151a1f2326292b2c2c2c2b292724201b16110a03000000000000000000000000000000000000000000000000000000000000000000000000000000000009131d27303941484f55595c5e5f5f5e5c59554f4a443f38322c35414b555c5f5f5f5f5f5d574e44392d2216090000000000000000000000010a131a21262a2c2c2c2c2c2c2c2c2c2a26211a1d24282b2c2c2c2c2c2c2c2c2b28231d160e050000000000000000000000000000000000000206090c0e1011121313131313131313131313131313131313131313131313131313120f0b0600000000000000000000000000000000000000000000000000000000000000050a0e1011111111110f0c080300000000000000000000000000101c2936434f5c6976838f8f8376695c4f4336291c1003000000000000000000000005111c27323c47515b656f78818a9199a0a6a6a09b9794929191919395989ca2a8a49d968f877e756b61574d43382d22170b000000000c1926323f4b5864717d8a96a2afa79a8e8275695d5145392d221a161414141519212c3844505c6975818e9aa7b3a89c8f8276695c504336291d1000101c2936434f5c697683909ca9aca09386796d6053473a2d2114070000000c1825323e4b5865717e8b98a4b1a69a8d8173675a4d4134271a0e0005111e2a3743505c6874818d99a5b0a4988c8175695e544a433e3b3a3b3e434a525b656f79848f9b9da3abb2a5988b7e7165584b3e3225180b00000915212d3946515d6975818c98a3aea4998d83786e645c544f4b48474647484b4f555d66707a85909ba7aca095897d72665a4e42362a1e110500000b17232e39434b52565656565b6774818e9ba8ac9f9285786b5f56565656565655514a41372c2115090013202c3946535f6c798693a0aca4988e8b928d83797068615b565352515253565b626b76818c98a4b0a69a8d8175685c4f4336291d10040013202c3946535f6c798693a0aca79a8d8173675a4d4034271a0d0000000710171e232729292e3b4855616e7b888d8d8d8d8d8b7e7165584b3e3229292825201a130b0200000006111c27323b434a4e4f4f4f4f4f4f4f4f4f4d4841382e24190e020000000000060d13191d1f202020202020202020202020202020202020202020202020202020202020202020201f1c17120b04000000000000000000000000000000000000000000000000000000000000000000060d13181b1d1d1d1d1d1d1c19150f08010000000000000000000000000005101a252e373e4346464646464646464646433f3830261c1207000013202c3946535f6c79858585858585858585858585858585858585858585858585858585858585858585857a6d6053473a2d2014070000000000000000000000000000000000000000000000000000000000000000000000000000000004090e13171a1c1e1f201f1e1d1b1814100b0500000000000000000000000000000000000000000000000000000000000000000000000000000000000000010b151e272f373d44494d5052535352504d49443f39332d27242f39434a505353535353514c453c32281d1105000000000000000000000000010910161a1e1f202020202020201f1e1a150f12181c1f20202020202020201f1c18120c040000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000030a11161a1d1e1e1e1e1d1c19140e07000000000000000000000000101c2936434f5c69768390908376695c4f4336291c100300000000000000000000000b16222d38434e59636d77818a939ba3aaa29b958f8b888584848486898c91969da4a8a19890877d73695f54493e33281c11050000000a1723303c4955616e7a86939fabaa9e9185796d61554a3e342b262221202122252a333e4955606c7885919da9b3a79a8d8174675b4e4235281b0f00101c2936434f5c697683909ca9ada194887b6e6155483c2f2216090000000d1a2633404c5966727f8c99a5b2a6998c807366594c4033261a0d000814212d3946525f6b7884909da9ada094887c7064584d4238322f2e2e32384049535d68737e8a95a1adb4b2a5988b7e7165584b3e3225180b000005111d2935414d5864707b86919ca7aa9f948a80766e66605b575453535355575b60676f78818c96a1aca59a8f84786d61554a3e32261a0d0100000f1c28343f4a555d62636363636774818e9ba8ac9f9285786b63636363636363625c53483d3125190d0013202c3946535f6c798693a0aca29689818b958b827a726c6763605e5e5e6062666c747d87929da9aea2968a7e7165594c4034271b0e020013202c3946535f6c798693a0aca79a8d8173675a4d4034271a0d000006101922292f333536363b4855616e7b808080808080807e7165584b3e36363634312c251d140b0000000a16222e39434d555a5b5b5b5b5b5b5b5b5b59534a40352a1e120600000000000002080d101213131313131313131313131313131313131313131313131313131313131313131313120f0c07000000000000000000000000000000000000000000000000000000000000000000000811181f2427292a2a2a2a2a2825201a130a020000000000000000000000000009131c252c32373939393939393939393937332d261e140b00000013202c3946535f6c79869292929292929292929292929292929292929292929292929292929292929292877a6d6053473a2d20140700000000000000000000000000000000000000000000000000000000000000000000000000000000000003070a0d101112131312100e0b080400000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000030c151d252c32383d41434546464543403d38332e28221c1d2731393f44464646464645413b332a21160b000000000000000000000000000000050a0e11131313131313131313110e0a04070c1012131313131313131312100c07010000000000000000000000000000000000000000000000000000000000040708080808080808080706040200000000000000000000000000000000000000000000000000000000000000000000000000000000000000030c151c2226292a2a2a2a2a28251f1911090000000000000000000000101c2936434f5c69768390908376695c4f4336291c10030000000000000000000005111c28333e4a55606a757f89939ca5a9a0989089847f7b79777778797c80858b929aa2aaa2998f857b71665b5044392d22160a0000000814202d3946525e6a77838f9ba7ada195897d72665b50463d36322f2e2d2d2f31353c454f5a65717d8995a1adb1a5988c7f7266594d4033271a0d00101c2936434f5c697683909ca9afa296897c7063574a3e3125180c0000020f1b2835414e5a6774818d9aa6b1a4988b7e7165584b3f3225190c000a16232f3c4955626e7a8794a0aca99d9184786c6054483c3126222122262e37414c57626d7984909ca8b4b2a5988b7e7165584b3e3225180b0000010d1925303c47535e6a75808b959fa9a69c92898078716b676361605f606163676b7179818a939ea8a89e93897e73675c5045392d211509000000121e2b3744505c676e707070707074818e9ba8ac9f92857870707070707070706d655a4e4235291c0f0013202c3946535f6c798693a0aca3968a7d858f948c847d77736f6c6b6b6b6c6f72777e868f99a4afa99d92867a6e6255493d3124180b000013202c3946535f6c798693a0aca79a8d8173675a4d4034271a0d00030e18222c343a3f4242424247535f6a7273737373737373736d62564a42424242413d372f261c120700000d1a26323e4a555f66686868686868686868645c52473b2f2216090000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000007111a222a303436363636363635312c251d140a00000000000000000000000000010a131a21262a2c2c2c2c2c2c2c2c2c2c2b27221c140c0200000013202c3946535f6c7986939e9e9e9e9e9e9e9e9e9e9e9e9e9e9e9e9e9e9e9e9e9e9e9e9e9e9e9e9e9e94877a6d6053473a2d2014070000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000030b131a21272c313437383939383734302c27221d1711151f272e343739393939393835302921180f0400000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000060c101315151515151515151413110f0b0804000000000000000000000000000000000000000000000000000000000000000000000000000000020c161e262d3236373737373735302a231b110700000000000000000000101c2936434f5c69768390908376695c4f4336291c1003000000000000000000000a16212d39444f5b66717c87919ba5aba1978e867e78736f6c6b6a6b6d70747a8188909aa3aba1978d82776c61554a3e33271b0f03000005111d2a36424e5a66727e8a96a2ada69a8e83776c62584f48423e3c3a3a3a3b3e41474e57616c77828e99a5b1afa3968a7d7064574b3e3125180c00101c2936434f5c697683909ca9b1a4988b7e7266594d4034271b0f030005111e2a3743505c6975828f9ba8afa396897d7063574a3d3124170b000c1825323e4b5764707d8a96a3afa79a8e8175685c5043372b1f1614161c252f3a45515c6874808c98a4b0b2a5988b7e7165584b3e3225180b00000008141f2b37424d58636e79838e97a1aaa49b928a827c7773706e6d6c6d6e7073777d838b939ca5a9a0968c82776c61564b3f34281c110500000013202c3946535f6c787d7d7d7d7d7d818e9ba8ac9f92857d7d7d7d7d7d7d7d7d766a5d5043372a1d100013202c3946535f6c798693a0aca4978a7d7e8892968f89837e7b79787778797b7e83899098a1abada2988c8175695d5245392d211508000013202c3946535f6c798693a0aca79a8d8173675a4d4034271a0d0009141f2a343e454b4f4f4f4f4f4f5861666666666666666666635b504f4f4f4f4f4d4841382e24190d02000f1c2935424e5b67717575757575757575756e63574a3e3125180b00000000000000000000000000000000000000000000000000000000000000000000000000000000040a0e11131313131313131313131313131313131313131313131313131313120f0b06000000000000030e19232c343b40434343434343413d362f261c110700000000000000000000000000010910161a1e1f2020202020202020201e1b17110a020000000013202c3946535f6c79869393939393939393939393939393939393939393939393939393939393939393877a6d6053473a2d2014070000000000000000000000000000000000000000000000000000000000000000000000000000000003060809090a0a0a0a0908060502000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000010910161c2025282a2c2c2c2c2a2824201c16110b060d151c23282b2c2c2c2c2c2c29241f170f06000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000020a11181c202122222222222222211f1e1b1814100b050000000000000000000000000000000000000000000000000000000000000000000000000009131e2830383e424444444444413c352d23190f04000000000000000000101c2936434f5c69768390908376695c4f4336291c1003000000000000000000020e1a26323e4a55616c77838e98a3ada3998f857c746d6763605e5d5e6064686f767e88919ca6a99f94897d72665b4f43372b1f13070000010e1a26323e4a56626e7a85919ca7ab9f94897e746a6159534e4b48474647484a4d52586069737d88939faab6ada094877b6e6155483c2f23160a00101c2936434f5c697683909ca9b3a79a8e8175685c5043372b1f1308050814212d3946525f6b7884919daaada194877b6e6255483c2f221609000d1a2733404d5966727f8c98a5b1a4988b7e7265594d4034271b0f080a131e2934404b57636f7c8894a0adb2a5988b7e7165584b3e3225180b000000030f1a25313c47525d67727c858f98a0a8a49c948d88837f7c7a7979797b7c8083888e959ca5a79f978e847a70655b50453a2e23170c0000000013202c3946535f6c79868a8a8a8a8a8a919da9ada0958b8a8a8a8a8a8a8a8a84776a5d5044372a1d110013202c3946535f6c798693a0aca5988b7e76808a949a948f8b888685848586888b8e949aa2aaaca49b91867b7064594d4135291d1105000013202c3946535f6c798693a0aca79a8d8173675a4d4034271a0d000d1925313c4650575b5c5c5c5c5c5c5c5b59595959595959595c5c5c5c5c5c5c5c59534a40352a1e120600101c2936434f5c697682828282828282827e7265584c3f3225190c000000000000000000000000000000000000000000000000000000000000000000000000000000080f151a1e1f20202020202020202020202020202020202020202020202020201e1c17120b03000000000914202b353e464c4f50505050504d4841382e23180c010000000000000000000000000000050a0e1113131313131313131313120f0b0600000000000013202c3946535f6c79868686868686868686868686868686868686868686868686868686868686868686867a6d6053473a2d2014070000000000000000000000000000000000000000000000000000000000000000000000000000060b101315161617171716161513110f0c09050000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000050b1014181b1e1f20201f1d1b1814100b060000030b12171c1e20202020201f1d19130d06000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000020b141c23282c2e2e2e2e2e2e2e2e2e2c2a2724201b16100a0300000000000000000000000000000000000000000000000000000000000000000000030e1a25303a424a4f51515151504d473f352b201509000000000000000000101c2936434f5c69768390908376695c4f4336291c100300000000000000000007131f2b37434f5a66727d89949faaa89d92877d736a625b565351515254585d646c75808a95a0aca59a8f83776b5f53473b2f23160a0000000a16222e3a46515d6974808b96a0aba59a90867c736b645e5a57555453535556595e636a727b858f9aa4b0b6aa9d9185786b5f53463a2d20140700101c2936434f5c697683909ca9b6a99d9184786c5f53473c30241a1412121924303d4955616e7a8793a0acab9e9285796c6053463a2d211407000f1c2835424e5b6874818e9aa7afa296897c7063574a3e3124180c00010c18232f3b47535f6c7885919daab2a5988b7e7165584b3e3225180b0000000009141f2b35404b55606a737c868e969ea4a69f99938f8c898786868687898c8f94999fa7a49d968e857c72685e54493e33281d12060000000013202c3946535f6c79869396969696969ba3aeb1a69d97969696969696969084776a5d5044372a1d110013202c3946535f6c798693a0aca5988c7f7278818a939b9b9794929191929294979a9fa5aca8a29b92897f746a5f53483c3125190d01000013202c3946535f6c798693a0aca79a8d8173675a4d4034271a0d00111d2936424d586268696969696969696761574d4d4d525c656969696969696969655c52463a2e22160900101c2936434f5c6976838f8f8f8f8f8f8c7e7265584c3f3225190c000000000000000000000000000000000000000000000000000000000000000000000000000009121a21262a2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2b28231c150d030000000d1a25313c4750585c5d5d5d5d5d59524a3f34291d11050000000000000000000000000000000000000000000000000000000000000000000000000000131f2c3946525f6b7679797979797979797979797979797979797979797979797979797979797979797979776c6053463a2d201407000000000000000000000000000000000000000000000000000000000000000000000000020a11171c1f212223232323232221201e1b1815110c07010000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000004080c0f1112131312110f0c0804000000000000060b0f12131313131312100d0802000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000a141d262e34383b3b3b3b3b3b3b3b3a393734302c27221b150d0600000000000000000000000000000000000000000000000000000000000000000007131f2b36414c545b5d5d5d5d5d5851473d31261a0e000000000000000000101c2936434f5c69768390908376695c4f4336291c10030000000000000000000a17232f3b47535f6b77838e9aa5aea2978b80756b6158504a47454445484c525a646e78848f9ba7ab9f94887c7063574b3f32261a0d01000006111d2935414c57636e79848f99a3aca2988e857d766f6a666362606060616366696e757c848d97a1abb6b3a79a8e8275695c5043372a1e120500101c2936434f5c697683909ca9b6ada094887c7064584c41362c24201e1e212a35414d5965717d8a96a2afa89c8f83766a5d5144382b1f120500101d2a3643505c6976828f9ca8ada194877b6e6155483b2f221609000007131f2b3743505c6975828e9ba7b2a5988b7e7165584b3e3225180b00000000030e19242f39444e58616b737c848c93999fa4a49f9b9896949393939496989ba0a5a39e99928b847b736a60564c42372d22170c010000000013202c3946535f6c798693a0a2a2a2a2a5acb5b8aea7a3a2a2a2a2a2a29d9084776a5d5044372a1d110013202c3946535f6c798693a0aca6998c80736f78818990979da19f9e9e9e9fa1a3a7a8a5a29d97908980776d63584d42372b20140800000013202c3946535f6c798693a0aca79a8d8173675a4d4034271a0d00121f2c3845525e6a737575757575757573695d51444b57636e75757575757575756e63574a3e3124180b00101c2936434f5c697683909c9c9c9c988c7e7265584c3f3225190c0000000000000000000000000000000000000000000000000000000000000000000000000008121b242b323639393939393939393939393939393939393939393939393939393937342e271f150c010000111d2a36424e5962686969696969645c5145392d2115090000000000000000000000000000000000000000000000000000000000000000000000000000111e2a37434f5a646b6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6b655b4f44372b1f12050000000000000000000000000000000000000000000000000000000000000000000000010b141c22282c2e2f30303030302f2e2c2a2825211d18120c060000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000006111c262f383f454848484848484848474543403c38332d261f18100700000000000000000000000000000000000000000000000000000000000000000a16232f3b47535d666a6a6a6a6963594e42362a1d11000000000000000000101c2936434f5c69768390908376695c4f4336291c10030000000000000000010e1a26333f4b57636f7b87939faba99d91857a6f64594f463f3a3837383b4148525c67737e8a96a2a6a4988c8073675b4e4235291c10030000010d1824303b46525d68727d87919ba4aaa0978f87817b7673706e6d6d6d6e7072767a80868e969fa9b3bcafa3978b7e7266594d4134281b0f0200101c2936434f5c697683909ca9b6b0a4988c8074695d52483e35302d2b2b2d323b46525d6975818d99a6b1a5988c8073675b4e4235291c100300111e2b3744515d6a7784909daaac9f9386796d6053473a2d2114070000030f1b2834414d5a6673808c99a5b2a5988b7e7165584b3e3225180b000000000008121d27323c464f59616a727a81888e93989b9fa1a4a2a1a0a0a0a1a2a3a19e9b97938d878179726961574e443a30261b1005000000000013202c3946535f6c79869396969696969aa3adb1a69c96969696969696969084776a5d5044372a1d110013202c3946535f6c798693a0aca69a8d8073666f777f868c9195999b9d9e9f9f9e9d9b9995918c867e766e655b51463c31261a0f0300000013202c3946535f6c798693a0aca79a8d8173675a4d4034271a0d0013202c3946535f6c7982828282828282786b5f52454c5865727e8282828282827e7165584b3e3225180b00101c2936434f5c697683909ca8a8a5988c7e7265584c3f3225190c000000000000000000000000000000000000000000000000000000000000000000000000040f19242d363d42454646464646464646464646464646464646464646464646464646443f3931271d13080000131f2c3945525e6a7476767676766d6256493d3125190c00000000000000000000000000000000000000000000000000000000000000000000000000000e1a26323e48525a5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5a53493e33271b0f03000000000000000000000000000000000000000000000000000000000000000000000009131d262d33383b3c3c3d3d3d3c3c3b393734312d28231e171009010000000000000000000000000000000000000000000000000000000005090c0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0d0b0803000000000000000000000005090c0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0d0b08030000000000000b17222d38424a5154555555555555555452504c48443e38312922191007000000000000000000000000000000000000000000000000000000000000000b1825323e4b57646f77777777756a5e5245392c1f13000000000000000000101c2936434f5c69768390908376695c4f4336291c1003000000000000000004111d2a36424f5b6773808c98a4b0a4988c8175695d52473d342e2b2b2c3036404b56626e7a86939a9a99988f83766a5d5144382b1f120500000008131e2a35404b56616b757f89929aa2a9a199928c87837f7d7b7a797a7b7c7e82868b9198a0a8b1bbb8aca093877b6f62564a3d3125180c0000101c2936434f5c697683909ca9b6b2a99d91857a6f645a5047403c393838393d444d58636e7a86919da9ada195897c7064584b3f32261a0d0100121f2b3845515e6b7885919eabab9e9285786b5f5245392c1f13060000000c1925323e4b5864717d8a97a4b0a5988b7e7165584b3e3225180b0000000000010b16202a343d474f5860686f767c82878c8f929597989a9a9a9a99989795928f8b87827c766f6860574e453c32291e140900000000000013202c3946535f6c7986898989898989919ca9ada0948b898989898989898984776a5d5044372a1d110013202c3946535f6c798693a0aca69a8d807366656d747b8185898c8f9192929292908f8c8985817a746d655c53493f352a1f14090000000013202c3946535f6c798693a0aca79a8d8173675a4d4034271a0d0013202c3946535f6c79868f8f8f8f8f85786b5f52454c5865727e8c8f8f8f8f8b7e7165584b3e3225180b00101c2936434f5c697683909ca9b2a5988c7e7265584c3f3225190c0000000000000000000000000000000000000000000000000000000000000000000000000915202b363f484e525353535353535353535353535353535353535353535353535353504a43392f24190d020013202c3946535f6c79838383837e7266594d4135291c1004000000000000000000000000000000000000000000000000000000000000000000000000000a16212c3740484f5253535353535353535353535353535353535353535353535353535353535353535353524f4941372d22160b000000000000000000000000000000000000000000000000000000000000000000000005101b252f383f444748494a4a4a4948474543403d39342f29221b130a0100000000000000000000000000000000000000000000000000040b1116191a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1a18140f090100000000000000040b1116191a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1a18140f0901000000000f1b27333f4a545c6161616161616161605f5c58544f49433b342b221910060000000000000000000000000000000000000000000000000000000000000c1925323f4c5865727e848484796c5f5346392c2013000000000000000000101c2936434f5c69768390908376695c4f4336291c100300000000000000000714202d3945525e6b7783909ca8ada194887c7064584c41362b231f1e1f242e3a46525e6a77838e8e8d8c8b8a85796c6053463a2d201307000000020d19242f3a444f59636d76808991989fa5a49d97938f8c898887868787898b8e92979ca2a1a5adb6b4a89b8f83776b5f53463a2e2115090000101c2936434f5c697683909ca9b2a8a19d978b80766b6259524c4846454546494e565f6974808b96a2aea99d9185796c6054483c2f23170a0000131f2c3945525f6c7885929facaa9e9184776b5e5145382b1e12050000000a1723303d4956636f7c8996a2afa5988b7e7165584b3e3225180b000000000000040e18222b353d464e565e656b71767b808386888a8c8d8d8e8d8d8c8a8886837f7b76716b645d564e453c332a21170d0200000000000013202c3946535f6c787c7c7c7c7c7c818e9ba8ac9f92857c7c7c7c7c7c7c7c7c76695d5043372a1d100013202c3946535f6c798693a0aca79a8d8173675b62696f75797d808284858685858482807d79756f69625b534a41372d23180e030000000013202c3946535f6c798693a0aca79a8d8173675a4d4034271a0d0013202c3946535f6c7986939c9c9c9285786b5f52454c5865727e8c989c9c988b7e7165584b3e3225180b00101c2936434f5c697683909ca9aca5988c7e7265584c3f3225190c0000000000000000000000000000000000000000000000000000000000000000000000000d1925313d4751595e5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5c554b41352a1e120500121f2b3844515e6a778490908e8275695d5145382c2014080000000000000000000000000000000000000000000000000000000000000000000000000005101a252e373e43464646464646464646464646464646464646464646464646464646464646464646464646433e372f251b100500000000000000000000000000000000000000000000000000000000000000000000000a16212d3741495054555656565656555452504d4945403a342c251c130a010000000000000000000000000000000000000000000000060f161d22252727272727272727272727272727272727272727272727272727272727272727272727272727272727272727272727272624201a130b030000000000060f161d22252727272727272727272727272727272727272727272727272727272727272727272727272727272727272727272727272624201a130b03000000121e2b37434f5b666d6e6e6e6e6e6e6e6d6b6865605b544d453d342b22180e0300000000000000000000000000000000000000000000000000000000000c1925323f4c5865727e8c9186796c5f5346392c2013000000000000000000101c2936434f5c69768390908376695c4f4336291c100300000000000000000a16232f3c4855616e7a87939facaa9d9185786c6054483c3024191211131d2936424f5b6874818281807f7e7d7d796d6053473a2d2014070000000007121d28333d47515b646d767e868e949a9fa4a39f9b9896949493949496989a9ea19b95959ba4afafa3978b7f73675b4f43362a1e12050000101c2936434f5c697683909ca9aba096919392887d746b635d585552515153555a6068717b86919ca7afa3988c8174685c5044382c201307000013202c3946535f6c7986929facaa9d9084776a5d5144372a1e11040000000915222f3c4855626f7b8895a2aea5988b7e7165584b3e3225180b0000000000000009141f29323b42474c535a60666b6f7377797c7e7f80818181807e7d7b7976736f6a656059534c443c332a21180f0500000000000000121e2b3744505b666e6f6f6f6f6f74818e9ba8ac9f9285786f6f6f6f6f6f6f6f6d64594d4135281c0f0013202c3946535f6c798693a0aca79a8d8173675a585e64696d7173767778797978777573706d69645e58514941382f251b1107000000000013202c3946535f6c798693a0aca79a8d8173675a4d4034271a0d0013202c3946535f6c798693a0a99f9285786b5f52454c5865727e8c98a5a5988b7e7165584b3e3225180b00101c2936434f5c697683909ca0a0a0988c7e7265584c3f3225190c000000000000000000000000000000000000000000000000000000000000000000000000101d2935424e59636b6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c675d52463a2e21150800101d2a3643505c6975828f9c9285796d6155483c3024180b000000000000000000000000000000000000000000000000000000000000000000000000000009131c252c323739393939393939393939393939393939393939393939393939393939393939393939393937332d251d13090000000000000000000000000000000000000000000000000000000000000000000000000e1b27323e49535b6062636363636362615f5c5955514b453e372e251c130900000000000000000000000000000000000000000000060f1821282d3234343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343433302b251d150b01000000060f1821282d3234343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343433302b251d150b01000013202c3946525f6c777b7b7b7b7b7b7b7a7875716c665f574f463d342a1f150a00000000000000000000000000000000000000000000000000000000000c1925323f4c5865727e8c9386796c5f5346392c2013000000000000000000101c2936434f5c69768390908376695c4f4336291c100300000000000000000c1825313e4b5764707d8996a2afa79a8e8275695c5044372b1f1308040e1a2733404c59657076757473727271706e675c5144382c1f130600000000010c16212b363f49525b646d747c83898f94989c9fa1a3a3a1a0a0a0a1a2a19e9a96908a89939fabaa9f93877b6f63574b3f33261a0e020000101c2936434f5c697683909ca9a89c8f8489958f867d756e6964615f5e5e5f61656b727a838d98a2ada99e92877b7064584c4034281c1004000013202c3946535f6c798693a0acaa9d9084776a5d5044372a1d11040000000815212e3b4854616e7b8894a1aea5988b7e7165584b3e3225180b000000000000020e1a25303b444d53565656565a5f63676a6d6f7172737474737372716f6d6a67635e5a544e48413a322a21180f0600000000000000000f1b27333f4a545c61626262626774818e9ba8ac9f9285786b62626262626262615b52483d3125190d0013202c3946535f6c798693a0aca79a8d8173675a4d53585d616467696b6b6c6c6b6a696764615d58534d463f372f261d130900000000000013202c3946535f6c798693a0aca79a8d8173675a4d4034271a0d0013202c3946535f6c798693a0ac9f9285786b5f52454c5865727e8c98a5a5988b7e7165584b3e3225180b00101c2936434f5c6976839093939393938c7e7265584c3f3225190c000000000000000000000000000000000000000000000000000000000000000000000000121e2b3844515e6a7579797979797979797979797979797979797979797979797979786e6256493c3023160a000f1b2835414e5b6774818d9a95897d7165584c4034281b0f0300000000000000000000000000000000000000000000000000000000000000000000000000010a131a21262a2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2a27211b130b01000000000000000000000000000000000000000000000000000000000000000000000000111e2a37434f5b656c6f6f7070706f6f6d6b6965615c56504840372e241a10050000000000000000000000000000000000000000020d17212a32393e404141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141403c372f271d13090000020d17212a32393e404141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141403c372f271d1309000013202c3946535f6c79868888888888888684817c77716961584f463b31271c1106000000000000000000000000000000000000000000000000000000000c1925323f4c5865727e8c9386796c5f5346392c2013000000000000000000101c2936434f5c69768390908376695c4f4336291c100300000000000000000e1a2733404d5966727f8c98a5b1a5988c7f7266594d4034281b0f03000b1824303c48545e666968676766656463625d554b4034281c10040000000000050f1a242d374049525b636a71787d83888c8f92959798999a9a99989795928e8a857f86929eaba59a8e82766a5e53473b2e22160a000000101c2936434f5c697683909ca9a89b8f82838e988f87807974706e6c6b6b6c6e71767c848c959fa9aca2978c81766a5f53473c3024180c00000013202c3946535f6c798693a0acaa9d9084776a5d5044372a1d11040000000814212e3b4754616e7a8794a1aea5988b7e7165584b3e3225180b00000000000005121e2a36424c565e6263636363605a5b5e606364666667676766656462626362605d59544e463f362d231a0f060000000000000000000b17222e38424b51555555555b6774818e9ba8ac9f9285786b5f55555555555555504940362c2015090013202c3946535f6c798693a0aca79a8d8173675a4d474c5155585a5c5e5f5f5f5f5e5c5a5855514c47423b342d251d140b0100000000000013202c3946535f6c798693a0aca79a8d8173675a4d4034271a0d0013202c3946535f6c798693a0a09f9285786b5f52454c5865727e8c98a0a0988b7e7165584b3e3225180b00101c2936434f5c697683868686868686867e7265584c3f3225190c000000000000000000000000000000000000000000000000000000000000000000000000121f2c3845525f6b78858686868686868686868686868686868686868686868686867d7063564a3d3023170a000d1a2633404c5966727f8c98998d8174685c5044372b1f13070000000000000000000000000000000000000000000000000000000000000000000000000000010910161a1e1f20202020202020202020202020202020202020202020202020202020202020202020201e1b1610090100000000000000000000000000000000000000000000000000000000000000000000000000121f2c3945525f6b777b7c7d7d7d7c7b7a7875716d68615a524940362c22170c000000000000000000000000000000000000000008131f29333c444a4d4d4d4d4d4d4d4d4d4d4d4d4d4d4d4d4d4d4d4d4d4d4d4d4d4d4d4d4d4d4d4d4d4d4d4d4d4d4d4d4d4d4d4d4d4d4d4d4c4841392f251a0f030008131f29333c444a4d4d4d4d4d4d4d4d4d4d4d4d4d4d4d4d4d4d4d4d4d4d4d4d4d4d4d4d4d4d4d4d4d4d4d4d4d4d4d4d4d4d4d4d4d4d4d4d4c4841392f251a0f030013202c3946535f6c798693959595959493918d88827b736a61574d43382d22170b000000000000000000000000000000000000000000000000000000000c1925323f4c5865727e8c9386796c5f5346392c2013000000000000000000101c2936434f5c69768390908376695c4f4336291c100300000000000000000f1c2835424e5b6874818e9aa7afa3968a7d7064574a3e3125180c00000814202c37424c545a5c5b5b5a5958575655524b43392e23180c0000000000000008121c252e374049515860666c72777c808386888a8b8c8d8d8d8c8a8886827e79818c97a3aca095897d71665a4e42362a1e1206000000101c2936434f5c697683909ca9a99c8f827d889299918b85817d7a787777797a7d82888e969ea8ada49a90867b7065594e42372b1f130700000013202c3946535f6c798693a0acaa9d9084776a5d5044372a1d11040000000815212e3b4854616e7b8894a1aea5988b7e7165584b3e3225180b0000000000000814212e3a46525e686f6f6f6f6f6c625751545658595a5a5a5b61666a6d6f6f6f6d6a655f5851483f352b21170c01000000000000000006111c26303940454849494e5b6774818e9ba8ac9f9285786b5f52494949494948453f372e241a0f040013202c3946535f6c798693a0aca79a8d8173675a4d404045484b4e50515252525251504e4b4845403c36302a231b130b020000000000000013202c3946535f6c798693a0aca79a8d8173675a4d4034271a0d0013202c3946535f6c7986939393939285786b5f52454c5865727e8c939393938b7e7165584b3e3225180b00101c2936424f5c68747979797979797979797064584b3e3225180c000000000000000000000000000000000000000000000000000000000000000000000000121f2c3845525f6b788592939393939393939393939393939393939393939393938a7d7063564a3d3023170a000c1825323e4b5764717d8a979d9184786c6054473b2f23170a00000000000000000000000000000000000000000000000000000000000000000000000000000000050a0e11131313131313131313131313131313131313131313131313131313131313131313131313110f0a05000000000000000000000000000000000000000000000000000000000000000000000000000000131f2c3946525f6c7986898a8a8a89888684817d79736c645b52483e33281d1106000000000000000000000000000000000000000d1924303b454e565a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a58534b41372b201408000d1924303b454e565a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a58534b41372b2014080013202c3946535f6c798693a0a2a2a2a1a09d99948d857c73695f554a3f33281c11050000000000000000000000000000000000000000000000000000000c1925323f4c5865727e8c9386796c5f5346392c2013000000000000000000101c2936434f5c69768390908376695c4f4336291c10030000000000000000101d2a3643505d6976838f9ca9aea195887b6f6255493c2f23160a0000040f1b26303a42494e4f4f4e4d4c4b4b4a4946413a31271d120700000000000000000a131c252e373f474e555b61666b6f7376797b7d7e808080807f7e7c7976727b87929da9a69b8f84786c6155493d32261a0e02000000101c2936434f5c697683909ca9a99c908376818b949c96918c898785848485878a8e9399a0a8aca49b92897e74695e53483d31261a0f0300000013202c3946535f6c7986929facaa9d9084776a5d5144372a1e11040000000915222f3b4855626e7b8895a2aea5988b7e7165584b3e3225180b0000000000000916222f3c4955626f7a7c7c7c7c74675b4e47494b4e555b61676c72767a7c7c7b7976706a625a51473d33281d12070000000000000000000a141e272e35393c3c414e5b6774818e9ba8ac9f9286796c5f53463c3c3c3c3c39342d251d1309000013202c3946535f6c798693a0aca79a8d8173675a4d4035393c3f414344454646454443413f3c3835302b251f18110901000000000000000013202c3946535f6c798693a0aca79a8d8173675a4d4034271a0d0013202c3946535f6c7986868686868685786b5f52454c5865727e8686868686867e7165584b3e3225180b000e1b2733404c57626a6c6c6c6c6c6c6c6c6c685f54483c3023170a000000000000000000000000000000000000000000000000000000000000000000000000131f2c3946525f6c7986929fa0a0a09c9c9c9c9c9c9c9c9c9c9c9c9c9c9c9c9c968a7d7063564a3d3023170a000a1723303d4956636f7c8995a194887c7063574b3f33261a0e020000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000131f2c3946525f6c798692969696969593918e8a847e766d645a5045392e22160a00000000000000000000000000000000000000101d2935414c5760666767676767676767676767676767676767676767676767676767676767676767676767676767676767676767676767645d53483c3024180b00101d2935414c5760666767676767676767676767676767676767676767676767676767676767676767676767676767676767676767676767645d53483c3024180b0013202c3946535f6c7986939696989b9ea4a9a59f978f857b71665b5044392d2115090000000000000000000000000000000000000000000000000000000c1925323f4c5865727e8c9386796c5f5346392c2013000000000000000000101c2936434f5c69768390908376695c4f4336291c10030000000000000000111e2b3844515e6a7784919daaada093877a6d6154473a2e21140800000009141e2831383e4243424140403f3e3d3c3a352f281f150b010000000000000000010a131c252d353c434a50565b5f63676a6d6f71727373737372716f6d6c77828d98a3aba0958a7e73675c5044392d21150900000000101c2936434f5c697683909ca9aa9d90837679828c949c9d9996939291919294969a9ea4aba7a19a928980766c62584d42372c20150900000000121f2c3945525f6c7885929fabaa9e9184776b5e5144382b1e12050000000a1623303c4956636f7c8995a2afa5988b7e7165584b3e3225180b0000000000000915222f3b4855616e7b88898983766a5e52494d535960666c72787d828688898886827c746c63594f453a2f23180c010000000000000000020c151d24292d2f34414e5a6774818e9aa7ada093877a6d6154484546474948453f372f251a0f040013202c3946535f6c798693a0aca79a8d8173675a4d40342c30323536383839393838363532302c28241f1a140d060000000000000000000013202c3946535f6c798693a0aca79a8d8173675a4d4034271a0d00131f2c3946525f6b7679797979797979766a5e51454b58647079797979797979797064574b3e3125180b000b17232f3b4650585e5f5f5f5f5f5f5f5f5f5d564d42372c20140700000000000000000000000000000000000000000000000000000000000000000000000013202c3946535f6c7986929faba0958f8f8f8f8f8f8f8f8f8f8f8f8f8f8f8f8f8f8a7d7063564a3d3023170a000815222e3b4854616e7a8794a0988c8073675b4f43362a1e12060000000000000000000000000000000000000000000000000000000000000000000000000000000004080b0d0d0d0d0d0d0d0d0d0c0a0601000000000000000000000000040708090909090909090908070501000000000000000000000000000000000000000000000000000000000000000000000000000000131f2c3946525f6c798691909090909295999a958f8880766c61564a3f33271b0e02000000000000000000000000000000000000121f2c3845515d697274747474747474747474747474747474747474747474747474747474747474747474747474747474747474747474746f64584c4033261a0d00121f2c3845515d697274747474747474747474747474747474747474747474747474747474747474747474747474747474747474747474746f64584c4033261a0d0013202c3946535f6c798689898a8b8e9399a0a8a9a1978d83786c61554a3e3226190d0100000000000000000000000000000000000000000000000000000c1925323f4c5865727e8c9386796c5f5346392c2013000000000000000000101c2936434f5c69768390908376695c4f4336291c10030000000000000000121f2c3845525f6b7885929eabac9f9286796c5f5346392d201306000000020c161f262d323536353534333231302f2d2a241d160d0300000000000000000000010c17222d373f474c4e4d4f53575b5e606264656666676666646367727d88939ea9a59a8f84786d61564a3f33281c100500000000101c2936434f5c697683909ca9aa9d9084777079828a92989da2a09f9e9e9fa0a3a6a8a5a19c96908880776e655b50463b31251a0f0400000000121f2b3845515e6b7884919eabab9e9285786b5f5245392c1f13060000000c1825313e4b5764717d8a97a3b0a5988b7e7165584b3e3225180b0000000000000714212d3a4753606c79869292867a6e635956595f656b71777d83898e92959695928d867e756b61564b4034291d1105000000000000000000030b12181d202734404d5a6673808d99a6aea295897c706458535152545655514941362c2015090013202c3946535f6c798693a0aca79a8d8173675a4d4034272326282a2b2c2c2c2c2b2a282623201c18130e0902000000000000000000000013202c3946535f6c798693a0aca79a8d8173675a4d4034271a0d00111e2a37434f5a646b6c6c6c6c6c6c6c6b64594e4248545f686c6c6c6c6c6c6c6c685e53483c2f23160a0007131e29343e464d52535353535353535353514b443b31261b0f0300000000000000000000000000000000000000000000000000000000000000000000000013202c3946535f6c7984909ba69c8f838282828282828282828282828282828282827d7063564a3d3023170a000714202d3a46535f6c7986929f9c9083776b5f53463a2e2216090000000000000000000000000000000000000000000000000000000000000000000000000000030a1015181a1a1a1a1a1a1a1a1a1916120c06000000000000000000070c11141515151515151515151514110d080100000000000000000000000000000000000000000000000000000000000000000000000000131f2c3946525f6c7985848383838486898d949c9a92887d72675b4f43372a1e120500000000000000000000000000000000000013202c3946535f6c79818181818181818181818181818181818181818181818181818181818181818181818181818181818181818181818174675a4d4134271a0e0013202c3946535f6c79818181818181818181818181818181818181818181818181818181818181818181818181818181818181818181818174675a4d4134271a0e0013202c3946535f6c787c7c7c7d7e82878e969fa9a99f94897d72665a4e4236291d110400000000000000000000000000000000000000000000000000000c1925323f4c5865727e8c9386796c5f5346392c2013000000000000000000101c2936434f5c69768390908376695c4f4336291c10030000000000000000131f2c3946525f6c7986929facab9f9285786b5f5245392c1f120600000000040d151c212628292928272625242423211e19130c04000000000000000000000005111d29343f4951585b59544f4b4e515456575859595a595959636e79848f9aa5a99e94897d72675c50453a2e23170b0000000000101c2936434f5c697683909ca9aa9d9084776a707880878c9296999b9d9e9f9f9e9d9b9895908b857e766e655c53493f342a1f14090000000000111e2a3744515d6a7784909daaac9f9386796d6053473a2d2114070000020e1a2733404d5966727f8c98a5b1a5988b7e7165584b3e3225180b00000000000006121f2c3845515e6a778490968b7f746a6463656a70767c83898f949a9fa2a3a19e9890877d73685c5145392e22160a0000000000000000000000070d111926323f4c5865727e8b98a4b1a5988c81756a625f5e5f6062615b53483d3125190d0013202c3946535f6c798693a0aca79a8d8173675a4d4034271a191b1d1e1f1f1f1f1e1d1b191714100c08030000000000000000000000000013202c3946535f6c798693a0aca79a8d8173675a4d4034271a0d000e1a26323e48525a5f5f5f5f5f5f5f5f5f5a52483d424d565d5f5f5f5f5f5f5f5f5c564d42372b1f130700020d18222c353c424546464646464646464644403a32291f140a00000000000000000000000000000000000000000000000000000000000000000000000000121f2b3844505c68737e8a949f9d91867b7575757575757575757575757575757575756d6155493c2f2316090005121f2b3845515e6b7784919d9f93877b6f62564a3e3225190d01000000000000000000000000000000000000000000000000000000000000000000000000050d151b212426272727272727272725221d171008000000000000020b12181d2022222222222222222222211d19130c04000000000000000000000000000000000000000000000000000000000000000000000000121f2c3845525e6b76787776767677797c828a939e9a8f83776b5f53463a2d21140800000000000000000000000000000000000013202c3946535f6c79868e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8174675a4d4134271a0e0013202c3946535f6c79868e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8174675a4d4134271a0e00121e2b3744505c666e6f6f6f7072767c848d97a2ada59a8e82766a5e5245392d20140700000000000000000000000000000000000000000000000000000c1925323f4c5865727e8c9386796c5f5346392c2013000000000000000000101c2936434f5c69768390908376695c4f4336291c1003000000000000000013202c3946535f6c798693a0acab9e9285786b5e5145382b1e12050000000000030a1016191c1c1c1b1a191918171614120d08010000000000000000000000000815212d3945505b636765605b56514b47494b4c4c4d4d4d56606a75808b95a0aba2988d82776c61564a3f34281d12060000000000101c2936434f5c697683909ca9aa9d9084776a666e757b8186898c8f9192929292908f8c8984807a736c645c534a41372d22180d030000000000101d2936434f5c6975828f9ca8ada194877b6e6155483b2f221609000005111e2a36434f5b6874818e9aa7b2a5988b7e7165584b3e3225180b00000000000004101d2936434f5c6875818d9a91867c75716f71757b81878e949aa0a5a2a0a0a1a4a2998f84796d62564a3e32261a0e010000000000000000000000010b1824313d4a5763707c8995a2aea99d91867c746e6c6b6c6d6f6d64594e4135291c0f0013202c3946535f6c798693a0aca79a8d8173675a4d4034271a0d0f10121213131211100f0d0a07040000000000000000000000000000000013202c3946535f6c798693a0aca79a8d8173675a4d4034271a0d000a16212c3740484f5253535353535353524e4840363b444b515353535353535353504b443b30261a0f03000006101a232a31363939393939393939393938342f2820170d03000000000000000000000000000000000000000000000000000000000000000000000000000f1c2834404b57626d78838d98a2978c82786e69696969696969696969696969696968645b5045392d2014080003101d2a3643505c6976828f9ca3978b7e72665a4e4235291d11050000000000000000000000000000000000000000000000000000000000000000000000050e171f272c31333434343434343434322e29221a110700000000020c141c23292d2f2f2f2f2f2f2f2f2f2f2d2a241e160d040000000000000000000000000000000000000000000000000000000000000000000000111d2a36424e5a646b6c6a6969696a6d7178818d98a094877b6e6255493c2f23160900000000000000000000000000000000000013202c3946535f6c7986939a9a9a9a9a9a9a9a9a9a9a9a9a9a9a9a9a9a9a9a9a9a9a9a9a9a9a9a9a9a9a9a9a9a9a9a9a9a9a9a9a9a9a8e8174675a4d4134271a0e0013202c3946535f6c7986939a9a9a9a9a9a9a9a9a9a9a9a9a9a9a9a9a9a9a9a9a9a9a9a9a9a9a9a9a9a9a9a9a9a9a9a9a9a9a9a9a9a9a8e8174675a4d4134271a0e000f1b28333f4a545d6263636364666b727b85909ba7ab9f93867a6e6155483c2f23160a00000000000000000000000000000000000000000000000000000c1925323f4c5865727e8c9386796c5f5346392c2013000000000000000000101c2936434f5c69768390908376695c4f4336291c1003000000000000000013202c3946535f6c798693a0acab9e9285786b5e5145382b1e120500000000000000050a0d0f100f0e0e0d0c0b0a0908050100000000000000000000000000000a1723303d4955626d74716c67615c57524d4842404049535d67727c87919ca7a69b91867b70665b5044392e23170c010000000000101c2936434f5c697683909ca9aa9d9084776a5d636a7075797d808284858686858482807c78746e68615a524a41382f251b11060000000000000f1b2835414e5b6774818d9aa7afa296897c7063574a3e3125180c00000a16222e3a46525e6b7784909da9b2a5988b7e7165584b3e3225180b000000000000000e1b2734404c5965727e8a96988f87817d7c7e81878c92999fa59f9995939394979da1958a7e72665a4e42362a1d11050000000000000000000000000916222f3b4854616d7986929eaaaea3988e867f7b7978787a7c766a5d5043372a1d100013202c3946535f6c798693a0aca79a8d8173675a4d4034271a0d01000000000000000000000000000000000000000000000000000000000013202c3946535f6c798693a0aca79a8d8173675a4d4034271a0d0005101a252e373e43464646464646464645433d362e323a4044464646464646464644403a32291f1409000000000811192025292c2c2c2c2c2c2c2c2c2c2b28241d160e0500000000000000000000000000000000000000000000000000000000000000000000000000000c17232f3a45515b66717b8690999e948a80776e665d5c5c5c5c5c5c5c5c5c5c5c5c5c5952493f34281d110400000f1c2835424e5b6774818d9aa79b8e82766a5e5145392d21140800000000000000000000000000000000000000000000000000000000000000000000040d17202931383d4040404040404040403e3a342c23190f040000000a141e262e34393b3c3c3c3c3c3c3c3c3b39352f281f160c01000000000000000000000000000000000000000000000000000000000000000000000e1a26323d48525a5f5f5e5d5c5d5e6066707c8996a296897d7063574a3d3024170a00000000000000000000000000000000000013202c3946535f6c798693a0a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a79a8e8174675a4d4134271a0e0013202c3946535f6c798693a0a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a79a8e8174675a4d4134271a0e000b17232e38424b5255565656575a6069747f8a96a2aea296897d7064574b3e3125180b00000000000000000000000000000000000000000000000000000c1925323f4c5865727e8c9386796c5f5346392c2013000000000000000000101c2936434f5c69768390908376695c4f4336291c1003000000000000000013202c3946535f6c798693a0acab9e9285786b5e5145382b1e1205000000000000060c1013151514131211100f0e0d0b080400000000000000000000000000000b1724313e4a5764717d7d77726d68635e58534e4947515b656f79848e99a3a89e948a7f746a5f54493e33281d1206000000000000101c2936434f5c697683909ca9aa9d9084776a5d595f64696d7173767778797978777573706c68635d57504840382f261d1309000000000000000d1a2633404c5966727e8b98a5b1a4988b7e7265594d4034271b0f0306101b27323e4a56626e7a87939facb2a5988b7e7165584b3e3225180b000000000000000b1824313d4956626e7a86929e98928d8a898a8d92989ea4a099938e898686888c91999b8f83776a5e5246392d2014080000000000000000000000000713202c3845515d6975818d99a4aeaaa098908b878585858684776a5d5044372a1d110013202c3946535f6c798693a0aca79a8d8173675a4d4034271a0d01000000000000000000000000000000000000000000000000000000000013202c3946535f6c798693a0aca79a8d8173675a4d4034271a0d000009131c252c323739393939393939393936322c24282f3438393939393939393938342f2820170d020000000000070e14191d1f2020202020202020201f1c18120c0400000000000000000000000000000000000000000000000000000000000000000000000000000007121e29343f4a555f6a747e87919a9c928980776f675f574f4f4f4f4f4f4f4f4f4f4f4d4740372d22170c0000000d1a2733404d5966737f8c99a59e92867a6d6155493d3124180c000000000000000000000000000000000000000000000000000000000000000000030d161f29323b43494c4d4d4d4d4d4d4d4d4a453e352b21160a000006111c26303840454848484848484848484846413a31281e1308000000000000000000000000000000000000000000000000000000000000000000000a15212c3640484f52575b5b5b5b5c5e636f7c8895a2978a7d7063574a3d3024170a00000000000000000000000000000000000013202c3946535f6c798693a0acb4ada5a09f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9a8e8174675a4d4134271a0e0013202c3946535f6c798693a0acb4ada5a09f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9a8e8174675a4d4134271a0e0006111c2730394046494949494a4e57626e7a86929eaba5988c7f7266594c403326190d00000000000000000000000000000000000000000000000000000c1925323f4c5865727e8c9386796c5f5346392c2013000000000000000000101c2936434f5c69768390908376695c4f4336291c10030000000000000000131f2c3946525f6c7986929facab9e9285786b5f5245382c1f120500000000020a11171c20212221201f1e1d1c1b1a1814100a030000000000000000000000000b1724313e4a5764717d88837e79746e69645f5a555059636d77818b95a0aaa1978c82786d63584d43382d22170c00000000000000101c2936434f5c697683909ca9aa9d9084776a5d5053595d616467696a6b6c6c6b6a696664605c57524c453e362e261d140b01000000000000000b1825313e4a5763707d8996a2afa79a8e8175685c5043372b1f140f1018222d38434f5a66727e8a97a3afb2a5988b7e7165584b3e3225180b000000000000000815212d3946525e6a75818c97a29d999796979a9ea3a19b958e88827d7a797b8087909a93877a6e6155493c3023170a00000000000000000000000004101c2935414d5965717c87929ca5aca9a29c97949292929084776a5d5044372a1d110013202c3946535f6c798693a0aca79a8d8173675a4d4034271a0d01000000000000000000000000000000000000000000000000000000000013202c3946535f6c798693a0aca79a8d8173675a4d4034271a0d0000010a131a21262a2c2c2c2c2c2c2c2c2c2a26211a1d24282b2c2c2c2c2c2c2c2c2b28231d160e050000000000000003090d111213131313131313131312100c070100000000000000000000000000000000000000000000000000000000000000000000000000000000010c18232e38434d58626c757f88919a9b928a817971696159514a4242424242424242403c362e251b11060000000c1825323e4b5864717e8a97a4a2968a7d7165594d4034281c100300000000000000000000000000000000000000000000000000000000000000020c151f28313b444d54595a5a5a5a5a5a5a5a5650473d32271b0f03000b17222d38424a5155555555555555555555524c433a2f24190d01000000000000000000000000000000000000000000000000000000000000000000040f1a242e37434f596268686767686a6e75808b97a195897c6f6356493d3023170a00000000000000000000000000000000000013202c3946535f6c798693a0acb0a59b94929292929292929292929292929292929292929292929292929292929292929292929292928e8174675a4d4134271a0e0013202c3946535f6c798693a0acb0a59b94929292929292929292929292929292929292929292929292929292929292929292929292928e8174675a4d4134271a0e00000a151e272f353a3c3c3c3d3e46515d6a76838f9ba8a69a8d8173675a4d4134271a0e01000000000000000000000000000000000000000000000000000c1925323f4c5865727e8c9386796c5f5346392c2013000000000000000000101c2936434f5c69768390908376695c4f4336291c10030000000000000000121f2c3845525f6b7885929eabac9f9285796c5f5246392c1f1306000000010b141c22282c2e2e2d2c2c2b2a29282724201b140d0400000000000000000000000b1724313e4a5764717d8a8f8a85807a75706b65605b626b757f89939da7a2998f857a70665c51463c31261b100500000000000000101c2936434f5c697683909ca9aa9d9084776a5d50484d5155585a5c5e5f5f5f5f5e5c5a5754504b46413a342c241c140b0200000000000000000916232f3c4855616e7a87939faca99d9184786c6054483c30251d1b1c222a343e4954606b77838f9ba7b3b2a5988b7e7165584b3e3225180b0000000000000005111d2935414d5964707b869099a2a5a3a3a3a6a19c96908a837d77716d6d6f757e8893968a7d7164584b3f3226190d000000000000000000000000000d1925313d4854606b76808a939ba1a6a9a7a3a09f9e9d9084776a5d5044372a1d110013202c3946535f6c798693a0aca79a8d8173675a4d4034271a0d01000000000000000000000000000000000000000000000000000000000013202c3946535f6c798693a0a0a09a8d8173675a4d4034271a0d000000010910161a1e1f202020202020201f1e1a150f12181c1f20202020202020201f1c18120c04000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000006111c27313c46505a636d767f8890999c938b837b736b635c544c453d363636363634302b241c1309000000000a1723303d4956636f7c8995a2a69a8d8175695d5044382c201307000000000000000000000000000000000000000000000000000000000000020b141e27313a434d565f65676767676767676662594f43382b1f1306000f1b27333f4a545c616262626262626262625d564c41352a1d1105000000000000000000000000000000000000000000000000000000000000000000000814212e3a4753606b7475747475777a8087919c9c9185796d6054483b2e22150900000000000000000000000000000000000013202c3946535f6c798693a0acada0948986868686868686868686868686868686868686868686868686868686868686868686868686868174675a4d4134271a0e0013202c3946535f6c798693a0acada0948986868686868686868686868686868686868686868686868686868686868686868686868686868174675a4d4134271a0e0000030c151d24292d2f30303035414e5a6773808d99a6a79a8e8174675b4e4134281b0e01000000000000000000000000000000000000000000000000000c1925323f4c5865727e8c9386796c5f5346392c2013000000000000000000101c2936434f5c69768390908376695c4f4336291c10030000000000000000111e2b3744515e6a7784909daaaca09386796d6053473a2d20140700000009131d262d34383b3b3a39383736353433312c261f160d03000000000000000000000b1724313e4a5764717d8a9795908b86817b76716c676b747d87919ba5a39a90877d73695e544a3f352a1f150a0000000000000000101c2936434f5c697683909ca9aa9d9084776a5d50444145484b4e505152525252514f4d4b4844403b352f29221a130a020000000000000000000714202d3945525e6b7784909ca8ada094887c7064584d42372e2a28292d333c46505a65717c88939fabb7b2a5988b7e7165584b3e3225180b00000000000000010d1925313c48535e69747e8790979c9f9f9e9b96908b857e78726c666160636c76828d998c8073675a4d4134281b0f020000000000000000000000000814202c38434e59646e7881899095999c9e9fa0a09f9d9084776a5d5044372a1d110013202c3946535f6c798693a0a0a09a8d8173675a4d4034271a0d01000000000000000000000000000000000000000000000000000000000013202c3946535f6c798693939393938d8173675a4d4034271a0d0000000000050a0e11131313131313131313110e0a04070c1012131313131313131312100c0701000000000000000000000000000000000000000000000000000000000104060708090a0a0a0908070503000000000000000000000000000000000000000000000000000000000a15202a343e48515b646d767e878f979d958d857d756d665e574f473f372f292927242019120a01000000000915222f3b4855616e7b8794a1aa9d9185796c6054483c2f23170b0000000000000000000000000000000000000000000000000000000000010a141d263039434c555f687173737373737373736b6054473b2e22150800121e2b3743505b666d6f6f6f6f6f6f6f6f6e685d5246392d211407000000000000000000000000000000000000000000000000000000000000000004090e15222e3b4855616e7b8281818283868b91999c948a8074695d5145382c1f130700000000000000000000000000000000000013202c3946535f6c798693a0acaca0938679797979797979797979797979797979797979797979797979797979797979797979797979797972665a4d4034271a0e0013202c3946535f6c798693a0acaca0938679797979797979797979797979797979797979797979797979797979797979797979797979797972665a4d4034271a0e000000030b12191d2123232326333f4c5865727e8b98a5a89b8e8174675b4e4134281b0e01000000000000000000000000000000000000000000000000000c1925323f4c5865727e8c9386796c5f5346392c2013000000000000000000101c2936434f5c69768390908376695c4f4336291c10030000000000000000101d2a3643505c6976828f9ca8ada194877a6e6154483b2e221508000005101b252f383f44474847464544434241403d3831281f150b000000000000000000000b1724313e4a5764717d8a91969b97928c87827d7873737d868f99a3a49b92887e756b61574d42382e23180e030000000000000000101c2936434f5c697683909ca9aa9d9084776a5d504437393c3f414344454646454443413e3b38342f2a241e171009010000000000000000000004111d2a36434f5b6774808c98a5b0a4988c8175695e5349403a363535383e454e58626c77828d99a4abb2b2a5988b7e7165584b3e3225180b00000000000000000814202b37424d57626c757e868c909293918e8a858079736d67605a55535a65717d89938f8275695c4f43362a1d1004000000000000000000000000040f1b26323d48525c666f777e84898d909293939392918f84776a5d5044372a1d110013202c3946535f6c798693939393938d8173675a4d4034271a0d01000000000000000000000000000000000000000000000000000000000013202c3946535f6c79868686868686868173675a4d4034271a0d0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000003070b0e1012141516161716161513110f0c0905010206090b0c0c0c0c0c0c0c0c0b0906010000000000000000030e18222c363f49525b646c757d858d959d978f87807870686159514941382f261d18140e080000000000000714202d3a4653606c7986929faca195897c7064584c3f33271b0f02000000000000000000000000000000000000000000000000000000000a131c262f38424b555e67717a818181818181817c6f6255493c2f2216090013202c3946525f6c787b7b7b7b7b7b7b7b7a6e6255483b2f221508000000000000000000000000000000000000000000000000000000000000050b10151a1e222d3a46525e6a76828e8e8e9092969996918a82786e63584c4135281c100600000000000000000000000000000000000013202c3946535f6c798693a0acaca09386796c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6960554a3e3125190c0013202c3946535f6c798693a0acaca09386796c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6960554a3e3125190c0000000001070d111416161825313e4b5764717e8b97a4a89b8e8174675b4e4134281b0e01000000000000000000000000000000000000000000000000000c1925323f4c5865727e8c9386796c5f5346392c2013000000000000000000101c2936434f5c69768390908376695c4f4336291c100300000000000000000f1c2835424e5b6874818d9aa7afa295897c6f6256493d3023170a00000a16212c37414a50545554535251504f4e4c49423a31271c11060000000000000000000a1724313d4a5763707b80858a8f949998938e89837e7d868f98a1a49b928980766c63594f453b30261c130a020000000000000000101c2936434f5c697683909ca9aa9d9084776a5d5044372d303235363838393938373634322f2c28231e19130c06000000000000000000000000010e1a27333f4c5864707c8894a0aca99d91867a70655b524b4643424244494f576069737e89939a9aa0a9b2a5988b7e7165584b3e3225180b0000000000000000030f1a25303b46505a636c747b8084868685827e79746e68625c554f494955616d7a86868684776a5e5144382b1e1205000000000000000000000000000a15202b36404a545d656d73797d81838586868685848381776a5d5044372a1d110013202c3946535f6c79868686868686868173675a4d4034271a0d010000000000000000000000000000000000000000000000000000000000131f2c3946525f6b7679797979797979797266594d4033271a0d0000000000000000000000000000000000000000000000000000000003060809090909090807050301000000000000000000000000000000000000000000050a0f13171a1d1f2122232323232321201e1c1915110d0d12161819191919191919191815120d06000000000000000006101a242d374049525a636b737b838b929a99918a827a736b635b534a41382f261c12080000000000000006121f2c3845515e6b7784919daaa5998c8074685c4f43372b1f120600000000000000000000000000000000000000000000000000000009121c252e38414a545d677079838c8d8d8d8d8d887c6f6255493c2f2216090013202c3946535f6c7986888888888888887b6f6255483c2f22150900000000000000000000000000000000000000000000000000000000050b11161c21252a2e3236424e5a66727e8a969b948f8e8d8a85807870675c52473b30241c17110b050000000000000000000000000000000013202c3946535f6c798693a0acaca09386796c5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5d574e44392d2115090013202c3946535f6c798693a0acaca09386796c5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5d574e44392d211509000000000000010508090b1724313e4a5764717d8a97a4a89b8e8174675b4e4134281b0e01000000000000000000000000000000000000000000000000000c1925323f4c5865727e8c9386796c5f5346392c2013000000000000000000101c2936434f5c69768390908376695c4f4336291c100300000000000000000d1a2733404d5966727f8b98a4b0a3978a7d7164584b3f3226190d00020e1a26323e49535b6161605f5e5d5c5b5b59544c43392e22160a0000000000000000000916232f3b48545f696f74797e83888d929899948f8a878f98a1a49b928980766d645a51473d36312b241c140a0000000000000000101c2936434f5c697683909ca9aa9d9084776a5d5044372a2326282a2b2c2c2c2c2b292825231f1c17130d080100000000000000000000000000000b17232f3c4854606c78848f9ba7aea2978c81776d645c56524f4e4f51555a6169727b8590958d8e97a2afa5988b7e7165584b3e3225180b00000000000000000009141f29343e48515a62696f747779797876726e68635d57504a443e45525e6b7679797979756a5e5144382b1e120500000000000000000000000000040f1a242e38424b535b62686d717477787979797977767470665b4f4236291c1000131f2c3946525f6b7679797979797979797266594d4033271a0d000000000000000000000000000000000000000000000000000000000000111e2a37434f5a646b6c6c6c6c6c6c6c6c6960554a3d3125180c0000000000000000000000000000000000000000000000000004090d1012141616161616151412100e0b080501000000000000000000000000000000040b11161b1f2326292b2d2f303030302f2e2d2b2825211d19191e2225252525252525252524221e181109010000000000000008121b252e37404851596169717981888f979b948c857d756d655c534a41382e241a100500000000000003111d2a3743505d6976838f9ca9a89c9084786b5f53473b2e22160a000000000000000000000000000000000000000000000000000008111b242e37404a535c666f78828b959a9a9a92897f766c6054483b2f2215080013202c3946535f6c7986939595959595887b6f6255483c2f2215090000000000000000000000000000000000000000000000000000020910161c22272d31363a3e41444a56626e7a8692998c8282807d79746e665e554b4037322d28221d17100a03000000000000000000000000000013202c3946535f6c798693a0acaca09386796c5f535252525252525252525252525252525252525252525252525252525252525252525252514c453c32271c11050013202c3946535f6c798693a0acaca09386796c5f535252525252525252525252525252525252525252525252525252525252525252525252514c453c32271c1105000000000000000000000b1724313e4a5764717d8a97a4a89b8e8174675b4e4134281b0e01000000000000000000000000000000000000000000000000000c1925323f4c5865727e8c9386796c5f5346392c2013000000000000000000101c2936434f5c69768390908376695c4f4336291c100300000000000000000c1825313e4a5763707c8995a2aea5998c8073675a4e4135291c100605111e2a36434f5a656d6e6d6c6b6a696867655e554a3f33261a0e01000000000000000007131f2b37434d575e63686d73787d82878c91969b969398a1a89c928980776e645b56514c47423c362e261c120700000000000000101c2936434f5c697683909ca9aa9d9084776a5d5044372a1d191b1d1e1f1f1f1f1e1d1b1916130f0b07020000000000000000000000000000000007131f2b38444f5b67737e8a96a1aca89e93897f766e67625e5c5b5b5d61656c737b848e978f848693a0ada5988b7e7165584b3e3225180b000000000000000000020d18222c363f4850585e64686a6c6c6b6966625d57524c453f3936424e5a646b6c6c6c6c6b63594e4235291d1003000000000000000000000000000008121d263039414950575c6165686a6b6c6c6c6c6b6967655e554a3e32261a0e00111e2a37434f5a646b6c6c6c6c6c6c6c6c6960554a3d3125180c0000000000000000000000000000000000000000000000000000000000000e1a26323e48525a5f5f5f5f5f5f5f5f5f5d574e44392d2115090000000000000000000000000000000000000000000000050b1015191c1f21222323232221201f1d1a1815110d0701000000000000000000000000080f161c22272b2f3336383a3b3c3d3d3d3c3b393734312d2924232a2e313232323232323232312e29231b1309000000000000000009131c252e363f474f575f676f767e858c949c968f877f776e655c534a40362c22170c020000000000000f1c2835424e5b6874818e9aa0a0a094887b6f63574b3e32261a0e0000000000000000000000000000000000000000000000000007111a232d364049525c656e78818b949da59c938980766d645a4f44382c2013070013202c3946535f6c798693a0a2a2a295887b6f6255483c2f22150900000000000000000000000000000000000000000000000000050d141b21272d33383d42464a4e5154565d6975828e9a8e827673716d69635c544e4b47433e39342e28221b140d060000000000000000000000000013202c3946535f6c798693a0acaca09386796c5f53464646464646464646464646464646464646464646464646464646464646464646464644413b332a20160b000013202c3946535f6c798693a0acaca09386796c5f53464646464646464646464646464646464646464646464646464646464646464646464644413b332a20160b00000000000000000000000b1724313e4a5764717d8a97a4a89b8e8174675b4e4134281b0e01000000000000000000000000000000000000000000000000000c1925323f4c5865727e8c9386796c5f5346392c2013000000000000000000101c2936434f5c69768390908376695c4f4336291c100300000000000000000916222f3b4854616d7a86929faba89b8f82766a5d5145392d2116131214202d3946525f6b777b7a79787776757470675b4f4236291d10030000000000000000030f1b26313b454d53585d62676c71767b80858b97a2a0a3a6a69a8d807b76716c67625d57524d4840382e23180d01000000000000101c2936434f5c697683909ca9aa9d9084776a5d5044372a1d110f10121213131211100f0c0a070300000000000000000000000000000000000000030f1b27333f4b56626d79848f9aa4afa59b91888079736e6b6968686a6d71777d858d9694897e8693a0aca5988b7e7165584b3f3225180c0000000000000000000006101a242d363e464d53585b5e5f5f5f5d5a56514c46403a342e323d48525a5f5f5f5f5f5e5951473d3125190d010000000000000000000000000000010b141e272f373f454b5055585b5d5f5f5f5f5f5e5d5b58534c43382d22160a000e1a26323e48525a5f5f5f5f5f5f5f5f5f5d574e44392d2115090000000000000000000000000000000000000000000000000000000000000a16212c3740484f525353535353535353514c453c32271c1105000000000000000000000000000000000000000000010910161c2125292b2e2f3030302f2e2d2b292724211e19120b03000000000000000000020a121a21272d32373b3f4245464849494a4949474644413d3a35302e353a3e3f3f3f3f3f3f3f3f3e3a342d251b110700000000000000010a131b242d353d454d555d646c737a828a929a99918980776e655c52483e33291e13080000000000000e1a2733404d596673808c93939393938b7f73675a4e4236291d10000000000000000000000000000000000000000000000000071019232c353f48525b646e77818a939da69d948a81776e645b52483e33271c10040013202c3946535f6c798693a0acafa295887b6f6255483c2f2215090000000000000000000000000000000000000000000000000810171e252c33393e44494e52565a5d60636567717d899593877b6f69676663615e5b57534e4a453f39332d261f18100800000000000000000000000013202c3946535f6c798693a0acaca09386796c5f5346393939393939393939393939393939393939393939393939393939393939393939393835302921180e04000013202c3946535f6c798693a0acaca09386796c5f5346393939393939393939393939393939393939393939393939393939393939393939393835302921180e0400000000000000000000000b1724313e4a5764717d8a97a4a89b8e8174675b4e4134281b0e01000000000000000000000000000000000000000000000000000c1925323f4c5865727e8c9386796c5f5346392c2013000000000000000000101c2936434f5c69768390908376695c4f4336291c100300000000000000000713202c3945515e6a76838f9ba7ab9e9286796d6155493d3228221f1f2026313d4955616e7a8786868584838281776a5d5044372a1d11040000000000000000000a151f2a333b42474c51565b60656a7179818a96a2a39c999b9d928c87827d78726d68635e59524a4035291e1206000000000000101c2936434f5c697683909ca9aa9d9084776a5d5044372a1d11040000000000000000000000000000000000000000000000000000000000000000000b17232e3a45515c68737d88939da6ada39a928a847e7a7775757576797d82888f97978d837986929faca5988c7e7265584c3f3225190c000000000000000000000008121b242c343b42474c4f51535352504e4a45403b352f29232c3640484f5253535353524e483f362b20150900000000000000000000000000000000020c151d252d343a4045494c4f51525353535251504e4c48423a31271c1105000a16212c3740484f525353535353535353514c453c32271c110500000000000000000000000000000000000000000000000000000000000005101a252e373e4346464646464646464645413b332a20160b000000000000000000000000000000000000000000030b131a21272c3135383a3c3c3c3c3c3b3a383633312e29241d150c0200000000000000020b141c242b32383e43484b4f51535556565656555452504d4a46413c3840464a4c4c4c4c4c4c4c4c4a463f372d23180d02000000000002080d10131b232b333b434b535a61697078808890999b928a81776e645a50453a2f24190e0300000000000c1925323f4b5864717e8686868686868683776a5e5144382b1e120000000000000000000000000000000000000000000000060f19222b353e47515a646d768089939ca59e948b81786f655c524940362c22160b000013202c3946535f6c798693a0acaca295887b6f6255483c2f22150900000000000000000000000000000000000000000000010a121a222930373e444a4f555a5e62666a6d6f717375798591978b8077757472706d6a67635f5a55504a443e383129221a120a020000000000000000000013202c3946535f6c798693a0acaca09386796c5f5346392c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2b29241e170f0600000013202c3946535f6c798693a0acaca09386796c5f5346392c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2b29241e170f060000000000000000000000000b1724313e4a5764717d8a97a4a89b8e8174675b4e4134281b0e01000000000000000000000000000000000000000000000000000c1925323f4c5865727e8c9386796c5f5346392c2013000000000000000000101c2936434f5c69768390908376695c4f4336291c1003000000000000000004111d2936424e5a67737f8b97a3aea295897d71655a4e443a322e2c2c2d3038424e5965717d8a939291908f8d8174685b4f4236291d10030000000000000000030e18212a31373e444a51585f666d747b838b939ba099928c90959a98938d88837e79746f6a645c51463a2e221509000000000000101c2936434f5c697683909ca9aa9d9084776a5d5044372a1d110400000000000000000000000000000000000000000000000000000000000000000006121d2934404b56616c76818b949da5aca49c958f8a87848281828385898e939a988f857b7885929eaba5988c7e7265584c3f3225190c00000000000000000000000009121a222a30363b3f434546464544413e3a352f2a241e1a242e363d43464646464645423d362d24190f040000000000000000000000000000000000030b141b22292f34393c40424445464646464543423f3c3730281f150a000005101a252e373e4346464646464646464645413b332a20160b000000000000000000000000000000000000000000000000000000000000000009131c252c32373939393939393939393835302921180e040000000000000000000000000000000000000000030c151d252c32383d414447484949494948464442403d3a352f271e140a000000000000010b141d262e363d444a4f54585b5e60616263636362615f5d5956514c47414a515758585858585858585651493f352a1e120600000000060d14191d1f202122293139414850575e666e767e878f989c938980766c61574c41362a1f140800000000000a1724303d4a56636f787979797979797979756a5e5144382b1e1200000000000000000000000000000000000000000000050e18212b343d475059636c767f89929ba59e958c82796f665d534a40372e241a1005000013202c3946535f6c798693a0a2a0a095887b6f6255483c2f221509000000000000000000000000000000000000000000020b131c242c333b42494f555b60656a6e7276797c7e80828385909c90858482817f7d7a77736f6b66615b565049423b342c241c140b0200000000000000000013202c3946535f6c798693a0acaca09386796c5f5346392c201f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1c18130d050000000013202c3946535f6c798693a0acaca09386796c5f5346392c201f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1c18130d05000000000000000000000000000b1724313e4a5764717d8a97a4a89b8e8174675b4e4134281b0e01000000000000000000000000000000000000000000000000000c1925323f4c5865727e8c9386796c5f5346392c2013000000000000000000101c2936434f5c69768390908376695c4f4336291c10030000000000000000010d1a26323e4b57636f7b87939eaaa69a8e82766b60554c443e3a3938393c424a545f6a76818d999f9e9d968a7d7165584c4033271a0e0100000000000000000a15202a333c43494f555c636970777e868d959d9d968f878084898e939899948f8a85807a756e62564a3d3024170a000000000000101c2936434f5c697683909ca9aa9d9084776a5d5044372a1d1104000000000000000000000000000000000000000000000000000000000000000000010c18232f3a45505a656f78828b939ba2a8a7a09b9693908f8e8e8f9295999e978f867d737784919eaba6998c7f7265594c3f3226190c000000000000000000000000000810181f252b2f3336383939393735322e29241e1913121c242c323639393939393936322b241b120800000000000000000000000000000000000000020911171e23282c30333637393939393938373533302c261e160d0300000009131c252c32373939393939393939393835302921180e040000000000000000000000000000000000000000000000000000000000000000010a131a21262a2c2c2c2c2c2c2c2c2c2c29241e170f060000000000000000000000000000000000000000020b151e272f373d44494d515355565656555453514f4c4946403930261c1106000000000009131d262f3840484f555b5f64676a6c6e6f70706f6f6d6b6966625d58524c525c636565656565656565625b51463b2f23160a000000060f171f25292c2d2e2f2f3031363e454d545c646c747d8690999b92887d73685d52473c3024180d01000000000915222e3a47525d676c6c6c6c6c6c6c6c6c6b63594e4235291d10000000000000000000000000000000000000000000040e17202a333d464f59626b757e88919ba49f968c837970675d544b41382e251c120800000013202c3946535f6c7986939f96939393887b6f6255483c2f2215090000000000000000000000000000000000000000020b141d252e363e454c535a60666c71767a7e8285888b8d8e909197a19791908f8d8b898683807b77726d67615b544d463e362e261d140b02000000000000000013202c3946535f6c798693a0acaca09386796c5f5346392c201313131313131313131313131313131313131313131313131313131313131312100c0802000000000013202c3946535f6c798693a0acaca09386796c5f5346392c201313131313131313131313131313131313131313131313131313131313131312100c080200000000000000000000000000000b1724313e4a5764717d8a97a4a89b8e8174675b4e4134281b0e01000000000000000000000000000000000000000000000000000c1925323f4c5865727e8c9386796c5f5346392c2013000000000000000000101c2936434f5c69768390908376695c4f4336291c10030000000000000000000a16222e3a46525e6a76828d99a4aa9e93887c72675e554f4a47454546484d535c66707b87929eaaa99d9185796d6155493d3024170b0000000000000000030f1b26313c454e545a60676d747b828990989f98928b847d75787d82878c91969b96918b867e7164584b3e3125180b000000000000101c2936434f5c697683909ca9aa9d9084776a5d5044372a1d11040000000000000000000000000000000000000000000000000000000000000000000007121d28333e48535d677079818991979da1a5a7a39f9d9c9b9b9c9e9f9a948d857d746b7784909da3a3998c807366594c403326190d0000000000000000000000000000060d141a1f23272a2b2c2c2c2b2825221d18130d070a121a21262a2c2c2c2c2c2c2a26211a120900000000000000000000000000000000000000000000060c12181c202427292b2c2c2c2c2c2b2a282624201b140c0400000000010a131a21262a2c2c2c2c2c2c2c2c2c2c29241e170f0600000000000000000000000000000000000000000000000000000000000000000000010910161a1e1f20202020202020201f1c19130d0500000000000000000000000000000000000000000009141d27303941484f55595d606263636362615f5e5b5956524b42382d22160b0000000006111b252f38414a525960666b707477797b7c7c7d7c7b7a7875726e69635d5658646e72727272727272726d63574b3e3225190c0000040f1821293035393a3b3b3c3d3e3d3b3b424a525a626b747e87919c9a8f857a6f63584c4135291d11050000000006121e2a36414c555c5f5f5f5f5f5f5f5f5f5e5951473d3125190d0000000000000000000000000000000000000000040d162029323c454f58616b747e87909aa3a0978d847a71675e554b42382f261c130a0000000013202c3946535f6c798692998d868686867b6f6255483c2f22150900000000000000000000000000000000000000010a141d262f3740484f575e656b72777d82878b8e929597999b9c9da1a9a29e9d9c9a9896938f8b87837d78726c655f57504840382f261d140b020000000000000013202c3946535f6c798693a0acaca09386796c5f5346392c20130600000000000000000000000000000000000000000000000000000000000000000000000000000013202c3946535f6c798693a0acaca09386796c5f5346392c2013060000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000b1724313e4a5764717d8a97a4a89b8e8174675b4e4134281b0e01000000000000000000000000000000000000000000000000000c1925323f4c5865727e8c9386796c5f5346392c2013000000000000000000101c2936434f5c69768390908376695c4f4336291c100300000000000000000006121e2a36424e5a65717c88939ea9a4998e83797067605a565352525355585e656e78828d98a3aea3988c8175695d5145392d211408000000000000000007131f2b37434e575f656b72787f868d949b99938d878079726b6c71767b81868b90959a978b7e7165584b3e3225180b000000000000101c2936434f5c697683909ca0a09d9084776a5d5044372a1d110400000000000000000000000000000000000000000000000000000000000000000000010c17222c37414b555e676f777f868c9195999b9d9f9f9f9f9d9b98938e89827b736b69768390969696968d8073665a4d4034271a0d00000000000000000000000000000003090e13171a1d1f20201f1e1c1915110c070200000810161a1e1f202020201f1e1a150f0800000000000000000000000000000000000000000000000001070c1014171a1c1e1f2020201f1f1d1c1a17140f0902000000000000010910161a1e1f20202020202020201f1c19130d0500000000000000000000000000000000000000000000000000000000000000000000000000050a0e1113131313131313131312100d080200000000000000000000000000000000000000000006101b252f39424b535a6065696c6e6f6f6f6f6e6c6a6865625d544a3f33271b0e000000020d18222d37414a535c646b71777c8083868789898a89888785827e7a756f68615b68747e7e7e7e7e7e7e7e7366594d4033261a0d00000b16202a333b4145474748494a4a4a47413a40485059626b75808a95a1968b8075695d5145392d21140800000000020e19252f3a434b50535353535353535353524e483f362b20150900000000000000000000000000000000000000030c161f28323b444e57616a737d869099a2a1978e857b72685f554c433930261d140a0100000000121f2c3945525f6b788592988c7e797979786d6155483b2f2215080000000000000000000000000000000000000009131c262f384149525a616970767d83898e92979b9ea1a4a6a8a9aaa9a8a8a9a9a8a7a5a29f9b98938e89847d777069625a524a41392f261d140a0000000000000013202c3946535f6c798693a0acaca09386796c5f5346392c20130600000000000000000000000000000000000000000000000000000000000000000000000000000013202c3946535f6c798693a0acaca09386796c5f5346392c2013060000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000b1724313e4a5764717d8a97a4a89b8e8174675b4e4134281b0e01000000000000000000000000000000000000000000000000000c1925323f4c5865727e8c9386796c5f5346392c2013000000000000000000101c2936434f5c69768390908376695c4f4336291c1003000000000000000000020e1a26313d4954606b76828c97a2aaa0958b8279726b6662605f5f5f6164697077808a949ea9a79c92877b7064584d4135291d110400000000000000000916222f3b48545f6a70767d838a909090908e88827c756f686161666b70757a7f84898e938b7e7165584b3e3225180b000000000000101c2936434f5c69768390939393939084776a5d5044372a1d1104000000000000000000000000000000000000000000000000000000000000000000000005101a252f39434c555d666d747a8085898c8f9192929392908e8b87837d777069616875828a8a8a8a8a8a8174675a4e4134281b0e000000000000000000000000000000000003070b0e1012131313110f0d0905010000000000040a0e11131313131313110e0a040000000000000000000000000000000000000000000000000000000004080b0e1011121313131312110f0d0b080300000000000000000000050a0e1113131313131313131312100d080200000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000c17222d37414b545d656b7176797b7c7c7c7b7a797774726e665b4f43372a1e1100000008131e29343f49535c656e757c83888c909294959696969593918e8a86807a736b626875828c8c8c8c8c8c7e7265584c3f3226190c0005111c28323c454d5153545555565757534c43393e47505a636e79848f9b9d91857a6d6155493d3024170b000000000008131e2831393f4446464646464646464645423d362d24190f04000000000000000000000000000000000000000a151e28313a444d566069737c858f98a2a1988f857c726960564d433a31271e140b020000000000121e2b3844515e6b778491998c80736c6c6c665c5145392d20140700000000000000000000000000000000000007111b252e38414a535b646b737a81888e94999ea3a7aaa9a6a3a09f9d9c9c9c9c9d9ea0a2a5a9a8a49f9a958f89827b746c645c534b42382f261c120800000000000013202c3946535f6c798693a0acaca09386796c5f5346392c20130c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0b0905000000000000000000000013202c3946535f6c798693a0acaca09386796c5f5346392c20130c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0b090500000000000000000000000000000000000000000b1724313e4a5764717d8a97a4a89b8e8174675b4e4134281b0e01000000000000000000000000000000000000000000000000000c1925323f4c5865727e8c9386796c5f5346392c2013000000000000000000101c2936434f5c69768390908376695c4f4336291c1003000000000000000000000915212c38434f5a65707b86909aa4a79d948b837c77726f6d6c6b6c6e71757a8189929ca6a99f958b80756a5f53483c3024180c0000000000000000000a1724303d4a5763707c8283838383838383827d77716a645d56555a5f64696e73787d83888b7e7165584b3e3225180b000000000000101c2936434f5c69768386868686868684776a5d5044372a1d110400000000000000000000000000000000000000000000000000000000000000000000000009131d27313a434b545b62696f74797d8082848586868584827f7b77726c665f5a66737d7d7d7d7d7d7d7d74685b4e4135281b0f000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000206090a0a0a0a0a0a0a0a0a0a0906030000000000000000000000000006111d28333e49535d666f767d82858889898988878583817e786b5e5245382c1f120000020d1924303b46505b656e7780878e94989c9fa1a2a3a3a3a2a09e9a96918b847d756c6976838f989898988b7e7164584b3e3225180b000915212d39444e575e606161626364635e554b40353e48525c67737f8b97a2968a7d7165584c3f33261a0d0100000000010c161f272e34383939393939393939393936322b241b12080000000000000000000000000000000000000006111c26303a434c565f68727b858e97a1a2998f867c736a60574e443b31281f150c02000000000000101d2a3643505c6976828f9b8e8275685f5f5b544a4034291d11040000000000000000000000000000000000040f19232d37404a535c656d757d858c93999fa5aaaba6a19d9a969492908f8f8f8f90919396999da1a6aba6a09a948d857e766e655d544b41382e241a1005000000000013202c3946535f6c798693a0acaca09386796c5f5346392c201919191919191919191919191919191919191919191919191919181715110c0500000000000000000013202c3946535f6c798693a0acaca09386796c5f5346392c201919191919191919191919191919191919191919191919191919181715110c050000000000000000000000000000000000000b1724313e4a5764717d8a97a4a89b8e8174675b4e4134281b0e01000000000000000000000000000000000000000000000000000c1925323f4c5865727e8c9386796c5f5346392c2013000000000000000000101c2936434f5c69768390908376695c4f4336291c10030000000000000000000004101b27323d49545e69747e88929ba4a69d958e88837e7b797878797a7d81868c939ba4a8a0978d83796e64594d42372b1f14080000000000000000000a1623303c4956626d75767676767676767676716b665f59524b494e53585d63686d72777c817e7265584c3f3225190c000000000000101c2936424f5c6874797979797979797974695c5043362a1d1004000000000000000000000000000000000000000000000000000000000000000000000000010b151f283139424a51585e64696d70737677787979787775736f6b66615b5456626b70707070707070706c63584c4033271a0d000000000000000000000000000000000000000000000000000000000000000000000000000000000000000407090c0d0e0f1010100f0e0d0b08060200000000030405050505050505050402000000000000000000000000000000000000000000000000000206090c0e1011121313131312110f0d0a0704000000000000000000000000000000000000000000000000000407080808080808080808080705010000000000000000000001080e12151717171717171717171716130f090300000000000000000000000b17222e3945505b656f7881888e9294969696959492908d85786b5f5245382c1f12000007121e2a35414c57626d77818a92999fa4a8a8a3a09d9b9a9a9a9b9c9f9d968f877e756b7683909da5a4978a7d7164574a3e3124180b000c1825313e4a5560696d6d6e6f70716f675c50443836404b56636f7b8894a19a8d8174675b4e4135281b0f020000000000040d151d23282b2c2c2c2c2c2c2c2c2c2c2a26211a120900000000000000000000000000000000000000000b17222e38424c555e68717a848d97a0a39a90877d746a61584e453c32291f160d03000000000000000f1c2835414e5b6774818d9a9184786b5f53504a42382e23180c0000000000000000000000000000000000010b16202b353f49525c656e7780878f979ea4abaca6a09a95918d8a878584838282828385878a8d91959aa0a6aba59e97908880776f665d534a40362c22170d020000000013202c3946535f6c798693a0acaca09386796c5f5346392c2525252525252525252525252525252525252525252525252525252524211d171008000000000000000013202c3946535f6c798693a0acaca09386796c5f5346392c2525252525252525252525252525252525252525252525252525252524211d17100800000000000000000000000000000000000b1724313e4a5764717d8a97a4a89b8e8174675b4e4134281b0e01000000000000000000000000000000000000000000000000000c1925323f4c5865727e8c9386796c5f5346392c2013000000000000000000101c2936434f5c69768390908376695c4f4336291c100300000000000000000000000a16212c37424d57626c768089929aa2a7a099938e8b888685858687898d91979ea5a69f978e857b71675d52473c31261a0f030000000000000000000815212d3945515c646969696969696969696966605a544e47413e43484d52575c61666b7075797064584b3e3225180c0000000000000e1b2733404c57626a6c6c6c6c6c6c6c6c6a62584c4034281b0f0200000000000000000000000000000000000000000000000000000000000000000000000000030d161f2730383f464d53585d616467696b6c6c6c6c6a6966635f5b554f495059606363636363636363615a51473b3024170b0000000000000000000000000000000000000000000000000000000000000000000000000000000004090d101316181a1b1c1c1c1c1c1b191715120f0b06070c0f111212121212121212110f0b07010000000000000000000000000000000000000001060a0e1215181a1c1e1f1f20201f1e1d1b191714100c08030000000000000000000000000000000000000000060c10131515151515151515151514110d080200000000000000040c13191e2223242424242424242424221f1a140d05000000000000000000030f1b27333f4a56616c77818a93999ea1a2a3a2a2a09f9c9285786b5f5245382c1f1200000b17232f3b46525d69747e89939ca4aaaaa39c9793918f8e8d8d8e9092969a9990877d747784919daaa4978a7d7063574a3d3124170a000d1a2733404d596672797a7b7c7d7d796c6053473a323a4753606d798693a09c8f8275695c4f4236291c1003000000000000030b12171c1e2020202020202020201f1e1a150f080000000000000000000000000000000000000000000f1b27333f4a545e67707a838d969fa49a91887e756b62584f463c332a20170d0400000000000000000d1a26333f4c5865727e8a9794877b6f63574b3f3830261c1207000000000000000000000000000000000008121d28323d47515b646e7780899199a1a8afa8a19b948f8a85817d7b79777675757577787a7d8185898f949ba1a9a9a29a928981786f655c52483e33291f14090000000013202c3946535f6c798693a0acaca09386796c5f5346393232323232323232323232323232323232323232323232323232323232312d28221a11080000000000000013202c3946535f6c798693a0acaca09386796c5f5346393232323232323232323232323232323232323232323232323232323232312d28221a1108000000000000000000000000000000000b1724313e4a5764717d8a97a4a89b8e8174675b4e4134281b0e01000000000000000000000000000000000000000000000000000c1925323f4c5865727e8c9386796c5f5346392c2013000000000000000000101c2936434f5c69768390908376695c4f4336291c1003000000000000000000000004101b26313b46505a646d76808890979ea4a49f9b9795939292929496999da2a8a29b948d857c73695f554b40362b2014090000000000000000000005111d29343f4a52595c5c5c5c5c5c5c5c5c5c5a554f49433c3632373c41464b50555a5f64696c685f54483c3023170a0000000000000b17232f3b4650585e5f5f5f5f5f5f5f5f5e5950463b3024180c000000000000000000000000000000000000000000000000000000000000000000000000000000040d151e262d353b41474c5154585a5c5e5f5f5f5f5e5c5a57534f4a443e474f5456565656565656565550483f352a1f13070000000000000000000000000000000000000000000000000000000000000000000000000000050a1015191d20232526282929292928272624211e1b171213181c1e1e1e1e1e1e1e1e1e1e1b17120c040000000000000000000000000000000001070d12161b1e222527292a2c2c2c2c2c2b2a282623201c18140f090300000000000000000000000000000000020a11181c2021222222222222222222201d19130c040000000000030d161e252a2e303030303030303030302f2b261f170f05000000000000000006131f2b37434f5b67727e89939da4aaada7a29f9d9c9d9e9285786b5f5245382c1f1200030f1b27333f4b57636e7a85909ba5aea9a098918c8784828181818183868a8f94998f867b7784919eaba4978a7d7063574a3d3024170a000d1a2734404d5a66738087888989887b6f62564b423f3f4754606d7a8693a09c8f8276695c4f4336291c10030000000000000000060b0f1213131313131313131313110e0a0400000000000000000000000000000000000000000000121e2b3744505b667079838c959fa49b92887f756c635950473d342a21180e050000000000000000000b1724313d4956626f7b8794978b8073675c5045392e23180d0300000000000000000000000000000000030e19242f39444e59636d768089929ba3abaea69e979089837e7975716e6c6a696968696a6c6e7174797e838990979ea6aca49b938a81776d645a4f453b30261b100500000013202c3946535f6c798693a0acaca09386796c5f53463f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3d39332c231a100500000000000013202c3946535f6c798693a0acaca09386796c5f53463f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3d39332c231a10050000000000000000000000000000000b1724313e4a5764717d8a97a4a89b8e8174675b4e4134281b0e03010000000000000000000000000000000000000000000000000c1925323f4c5865727e8c9386796c5f5346392c2013000000000000000000101c2936434f5c69768390908376695c4f4336291c100300000000000000000000000009141f29343e48525b646d767e868d93989da2a5a3a1a09f9f9fa0a2a5a4a09c97918a837b726a61574d43392f24190e0300000000000000000000010c18232e3840484d4f4f4f4f4f4f4f4f4f4f4e49443e38312b262b30353a3f44494f54595d5f5d564d42372c20140700000000000007131e29343e464d525353535353535353524e473e352a1f140800000000000000000000000000000000000000000000000000000000000000000000000000000000030c141c232a30363b4045484b4e505152535352514f4d4a47433e39353d44484a4a4a4a4a4a4a4a48453e362d23190e02000000000000000000000000000000000000000000000000000000000000000000000000020910161b2025292c2f31333535363636353432302e2b27231e1e24282a2b2b2b2b2b2b2b2b2a28231d160e050000000000000000000000000000050c12181d22272b2e31343637383939393938363532302c2924201a150f080100000000000000000000000000020b141c23282c2e2e2e2e2e2e2e2e2e2e2d29241e160e04000000000b151f282f363a3d3d3d3d3d3d3d3d3d3d3b37312921170d02000000000000000916222e3b47535f6c78848f9aa5aeaca39c9692909090919285786b5f5245382c1f120006121f2b37434f5c6874808b97a2acaca1978e87807b787574737375767a7e838990978d837885929eaba3968a7d7063564a3d3023170a000c1925323f4b5864717d899495968b7e73675d544e4c4c4f58636f7c8895a19b8e8275685c4f4235291c0f0300000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000013202c3946535f6c78828b959ea69c928980766d635a51473e342b22180f05000000000000000000000815212e3a46535f6b7784909c9084786d61564b3f352a1f150a0000000000000000000000000000000009141f2a35404b56606a757f89929ba4adada49c948c857e78726d6965625f5e5c5c5b5c5d5f6165686d72787e858d949ca5ada59c938980766c61574c42372c21160b00000013202c3946535f6c798693a0acaca09386796c5f534c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4b4a453e352c22170b00000000000013202c3946535f6c798693a0acaca09386796c5f534c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4b4a453e352c22170b0000000000000000000000000000000b1724313e4a5764717d8a97a4a89b8e8275685b4f4235281c100f0d0a06000000000000000000000000000000000000000000000c1925323f4c5865727e8c9386796c5f5346392c2013000000000000000000101c2936434f5c69768390908376695c4f4336291c1003000000000000000000000000030d18222c364049525b646c747b82888d9195999b9d9e9fa09f9e9d9b9894908b857f78716960574e453c32271d120800000000000000000000000007111c262e363d4143434343434343434343413d38322d26201a1f252a2f34393e43484d5153514b443b31261b0f03000000000000020d18222c353c4245464646464646464645423c352c23180e020000000000000000000000000000000000000000000000000000000000000000000000000000000000020a11181f252b3034383c3f414345454646454443413e3b37322d2c33383c3d3d3d3d3d3d3d3d3c39332d241b1107000000000000000000000000000000000000000000000000000000000000000000000000050d141b21272c3135393b3e40414243434342413f3d3a37332f2a282f3437383838383838383837342e2820170d030000000000000000000000010910171d23292e33373a3d40424445464646454543413f3c3935302b26201a130c040000000000000000000000000a141d262e34383b3b3b3b3b3b3b3b3b3b39352f2820160c02000006121d27313a41474a4a4a4a4a4a4a4a4a4a47423b33291f1409000000000000000c1825313e4a57636f7c8894a0acaea49a918a86838383858685786b5f5245382c1f12000915222e3b4753606c7884909ca8b0a59a8f867c756f6b69676767686a6d72787e868f958a7f85929faba3968a7d7063564a3d3023170a000a1723303c4855616d7986919d9b8f84796f665f5a59595b606a74808c98a4998c8073675a4d4134281b0e020000000000000000000004080b0c0d0d0d0d0d0d0d0d0d0d0d0d0d0d0d0d0d0d0d0d0d0d0d0d0c09060100000000000013202c3946535f6c7986939da7a1958a81776d645b51483f352c22191006000000000000000000000005121e2a37434f5b67737f8b9795897e72675c51463b31261b0f030000000000000000000000000000030f1a25313c47525d67727c87919aa4adada49b928a827a736d67615d59555351504f4f4f515255585c61676d737b828a939ca5aea59b92887d73695e53493e33281d1106000013202c3946535f6c798693a0acaca09386796c5f58585858585858585858585858585858585858585858585858585858585858585650473e33281c1105000000000013202c3946535f6c798693a0acaca09386796c5f58585858585858585858585858585858585858585858585858585858585858585650473e33281c110500000000000000000000000000000b1724313e4a5764717d8a97a4a99c8f8376695d5043372b1f1d1c1a16110b0400000000000000000000000000000000000000000c1925323f4c5865727e8c9386796c5f5346392c2013000000000000000000101c2936434f5c69768390908376695c4f4336291c10030000000000000000000000000006101a242e374049525a626970767c8185898c8f909292939292908e8b8884807a746d665f574e453c332a20150b01000000000000000000000000000a141c252b31343636363636363636363635322d27211b150f14191e23282d32373c41454644403a32291f140a000000000000000006101a232a31363939393939393939393936312b231a11070000000000000000000000000000000000000000000000000000000000000000000000000000000000000000070d14191f24282c303235373839393939383634322e2b262221272c2f30303030303030302f2d28221b1209000000000000000000000000000000000000000000000000000000000000000000000000060f171f262c32383d4145484a4c4e4f4f4f4f4f4d4c4947433f3b35333a4044454545454545454543403932291f150a00000000000000000000030b131b22292f353a3f43474a4d4f50525253535251504e4b4845413c37312b241d160e060000000000000000000006111c262f383f454848484848484848484846413a32281e130800000b17232e39434c5256575757575757575756534d453b30251a0e020000000000000d1a2733404d5966727e8b98a4b0a89d9288807a777676787a7c786b5f5245382c1f12000c1825313e4a56636f7b8894a0acab9f94887e736a635f5c5b5a5a5b5e61666d747d868f908586929faca3968a7d7063564a3d3023170a000714202d3945515d6975818c97a1958b8178706a676565676b727b86919ca095897d7064584b3f3226190d000000000000000000030a101417191919191919191919191919191919191919191919191919191816120c06000000000013202c3946535f6c7986939fa8a194897f756c625950463d332a20170d040000000000000000000000020e1b27333f4b57636e7a86919a8f84786d62584d42372c20130700000000000000000000000000000914202b37424d58636e79848e98a3acafa59b928980787068625b56514c494644434242434446494c50565b62697078818a939ca5ada3998f857a70655a4f44392e23170c000013202c3946535f6c798693a0acaca09386796c65656565656565656565656565656565656565656565656565656565656565656561594f44392d211408000000000013202c3946535f6c798693a0acaca09386796c65656565656565656565656565656565656565656565656565656565656565656561594f44392d21140800000000000000000000000000000a1724313d4a5763707d8a96a3aa9e9185786b5f53473b302b2a2926221d160e05000000000000000000000000000000000000000c1925323f4c5865727e8c9386796c5f5346392c2013000000000000010507101c2936434f5c69768390908376695c4f4336291c1007050100000000000000000000000008121c252e37404850585f656b7075797d808284858686868584827f7c78736e69635c554d453c332a21180e040000000000000000000000000000020a131a202528292929292929292929292825211c16100a04080d12171c21262b3035383938342f2820170d030000000000000000000811192025292c2c2c2c2c2c2c2c2c2c2a26201911080000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000002080e13181c202326282a2b2c2c2c2c2b2a2825221e1a16161c2022232323232323232323201c171009000000000000000000000000000000000000000000000000000000000000000000000000060f18212930373e43494d515457595b5c5c5c5c5b5a5856534f4b46413c454c505151515151515151504b443b31261b10040000000000000000040d151d252c333a40454b4f5356595b5d5e5f5f5f5f5e5c5a5855514d48423c362f28201810070000000000000000000b17222d38424a5154555555555555555555524c443a3025190e02000f1c28343f4b555d636363636363636363635f574d42362a1e12050000000000000f1b2835424e5b6774818e9aa7b0a4988c80766e6a696a6b6d706e665b4f43372a1e11000e1a2733404d5966727e8b98a4b0a69a8e83776c615853504e4d4d4f51565b626b747d8792909097a2aea3968a7d7063564a3d3023170a0004101d2935414d58646f7b86909a9d938a827b7673727274777d848d98a29a8f84786c6054483c2f23170a0000000000000000050e151b20242626262626262626262626262626262626262626262626262625221d1811090000000013202c3946535f6c79848d96a0a59b91887e746b62584f453c32291f160c0300000000000000000000000a17232f3a46525e6975808b93938a7f74695f54483c2f23160a00000000000000000000000000020e1a25313c48535e6a75808b95a0aab1a79d938980776e665e57504a45403d3a383636353637393c40454a50575f666f77818a949da7aba1978c82776c61564a3f34281d11050013202c3946535f6c798693a0acaca0938679727272727272727272727272727272727272727272727272727272727272727272726b6155493d3023170a000000000013202c3946535f6c798693a0acaca0938679727272727272727272727272727272727272727272727272727272727272727272726b6155493d3023170a00000000000000000000000000000a1623303c4956626f7b8895a1ada094877b6f63574c423b383635332e2720170e040000000000000000000000000000000000000c1925323f4c5865727e8c9386796c5f5346392c20130000000000070d1114161c2936434f5c69768390908376695c4f4336291c1614110d070000000000000000000000000a131c252e363e464d545a5f64696d7073757778797979787775726f6c68635d57514a433b332a21180f060000000000000000000000000000000001080f14191b1c1c1c1c1c1c1c1c1c1c1c1915100b0500000001060c11161b2025292c2c2b28241d160e050000000000000000000000070e14191d1f20202020202020201f1d1a150e070000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000002070c101417191c1d1e1f20201f1e1d1b1916120e0a0b10141617171717171717171614100c06000000000000000000000000000000000000000000000000000000000000000000000000050f18212a333b42494f54595d6164666768696969686765625f5b57524c464e565c5e5e5e5e5e5e5e5e5c564d43382c20140800000000000000040d161f272f373e454b51565b5f6366686a6b6c6c6c6c6b696764615d58534e48413a322a2219100700000000000000000f1b27333f4a545c616161616161616161615d564c41362a1e120600121e2b3844505c676f707070707070707070695e52463a2d211408000000000000101c2936434f5c6975828f9ca8ada094887b6f645e5c5d5f6163625d544a3f33271b0f000f1c2935424f5b6874818e9aa7afa3978a7e72665b50474341404142454a5159626b75808b969ca1a9b0a3968a7d7063564a3d3023170a00000d1924303c47535e69747e88929a9c948d8783807e7f8183888e969f9b92887e73675c5044382c20140700000000000000050e1720272c3033333333333333333333333333333333333333333333333333312e29221b1208000000121f2b3844515d68717b858e97a1a39990877d736a61574e443b31281e150b020000000000000000000006121e2a35414d58636f7a85868686867b7064574b3e3125180b0000000000000000000000000007131f2a36424d5964707b86919ca7b2aa9f958b81776e655c544c453f3934302d2b2a2929292b2d3034393f454d545d656e78828b95a0aaa89e93887d72675b5045392d2115080013202c3946535f6c798693a0acaca093867e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7d7164574b3e3124180b000000000013202c3946535f6c798693a0acaca093867e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7d7164574b3e3124180b00000000000000000000000000000815212e3a4754606d7985929eaaa3978b8074685e544c474443423f39322920160b0000000000000000000000000000000000000c1925323f4c5865727e8c9386796c5f5346392c2013000000030b12181d2022222936434f5c69768390908376695c4f4336292222201d18120b0300000000000000000000010a131c242c343b42494e54595d616467696a6b6c6c6c6b6a686663605c57524c463f38312921180f060000000000000000000000000000000000000004090c0f101010101010101010100f0d09050000000000000000050a0f14191d1f201f1c18120c040000000000000000000000000003090d1112131313131313131313110e0903000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000004070a0d0f11121313131212100e0c09060200000407090a0a0a0a0a0a0a0a09070400000000000000000000000000000000000000000000000000000000000000000000000000020d17212a333c454c545a6065696d707274757676757573716f6b67635d57515560686b6b6b6b6b6b6b6b675f54493d3024180b000000000000020c161f283139414950565c62676b6f7274767879797978777673706d69645f59524b443c342b2219100600000000000000121e2b37434f5b666d6e6e6e6e6e6e6e6e6e685e52463a2e2115080013202c3946535f6c787d7d7d7d7d7d7d7d7b6e6255483c2f221509000000000000101c2936434f5c697683909ca9ab9e9285786c5f534f5052545656524b42382d22170b00111d2a3744505d697683909ca9ada094877a6e62564a3e3735343435393f475059646e7a85919ca8b3b0a3968a7d7063564a3d3023170a00000814202b36424d58626c76808890979e98938f8d8c8c8d8f94999f99928980766c61564b3f34281c1004000000000000010c17202931383d3f4040404040404040404040404040404040404040404040403e3a342d241a10060000101c2834404b565f69727c858f98a2a2998f867c736960564d433a30271d140a01000000000000000000020d1925303c47525d68737979797979797064574b3e3125180b000000000000000000000000000b17232f3b47525e6a75818c98a3aeaea3988e83796f655c534a423a342e2824211e1d1c1c1d1e2024282e343b434b535c666f79848e98a3aaa49a8f83786d6156493d3124170b0013202c3946535f6c798693a0acaea2968d8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8b7e7164574b3e3124180b000000000013202c3946535f6c798693a0acaea2968d8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8b7e7164574b3e3124180b000000000000000000000000000006121f2b3844515d6975828d99a4a89c90857a6f665e585451504e4a443b32271c110500000000000000000000000000000000000c1925323f4c5865727e8c9386796c5f5346392c20130000020c151d24292d2f2f2f36434f5c69768390908376695c4f43362f2f2f2d29241d150c0200000000000000000000010a121a222a31373d43484d5154575a5c5e5f5f5f5f5f5d5c5a5753504b46413b352e271f170f0600000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000003080d10121312100c070100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000009141f29333c454e575e656b7175797c7f818282838282807e7b78736e69625b5a667278787878787878787165594c3f3326190d0000000000000a141e28313a434b535a61686e73777b7e818385868686858482807d7975706a645d564e463d342b22180e0400000000000013202c3946525f6c777b7b7b7b7b7b7b7b7a6f6256493c2f2316090013202c3946535f6c79868a8a8a8a8a8a887b6f6255483c2f221509000000000000101c2936434f5c697683909ca9aa9d9084776a5e51444445484a4946413930261c110600121f2b3845515e6b7784919eaaab9e9185786b5f52463a2d282727292d353e48525d6874808c98a4b0b0a3968a7d7063564a3d3023170a0000030e1a25303b46505a646d767e868c92979a9b9998989a9c9b98938e8780776e645a50453a2e23170b0000000000000007131e29323b43494c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4a453f362c22170c00000c18242f3a444d57606a737d869099a3a1988e857b72685f554c42392f261c13090000000000000000000008141f2a36414c5761696c6c6c6c6c6c685e53483c2f23160a000000000000000000000000030f1b2834404b57636f7b86929da9b3a89d92877c71675d534a41383029221d181412100f0f101114181d22293139414a545e67727c87919c9e99938d887e7265584b3f3225180c0013202c3946535f6c798693a0acb3a89f999898989898989898989898989898989898989898989898989898989898989898988b7e7164574b3e3124180b000000000013202c3946535f6c798693a0acb3a89f999898989898989898989898989898989898989898989898989898989898989898988b7e7164574b3e3124180b000000000000000000000000000003101c2835414d5965717c88939ea8a1968c8178706964605e5d5b554d44392e22160a00000000000000000000000000000000000c1925323f4c5865727e8c9386796c5f5346392c201300000a141e272e35393c3c3c3c434f5c69768390908376695c4f433c3c3c3c39352e271e140a0000000000000000000000000910181f262c32373c4145484b4d4f515253535252514f4d4a47443f3b35302a231c150d0500000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000004080b0c0c0c0c0c0c0c0b08040000000000000000000000000000000000000000000000000000000004070808080808080808080808080808080808080808080808080808080808080808080808080808080806040000000000000000000000000004070808080808080808080807040000000000000000000005101b26303b454e57606970777c8286898c8d8f8f908f8e8d8b8884807a746d655d6875828585858585857f7266594c4033261a0d000000000007121c26303a434c555d656c73797e83888b8e909192939292918f8c8985817b756f6860584f463d342a20160c01000000000013202c3946535f6c7986888888888888887c6f6255493c2f2316090013202c3946535f6c7986939797979795887b6f6255483c2f221509000000000000101c2936434f5c697683909ca9aa9d9084776a5d504437393b3d3d3a352f271e150a0000131f2c3946525f6c7885929faba99c9083766a5d5044372b1e1a1a1d232c36414c58636f7b8894a0acb0a3968a7d7063564a3d3023170a00000009141f2a343e48525b646c747b81868b8e9092939392918f8c88837c756e655c53483e33281d1206000000000000000c18242f3a444d54585959595959595959595959595959595959595959595959595650483e34281d11050007121d28323b454e58616b747e87919aa3a0978d847a71675e544b41382e251b1209000000000000000000030e19242f3a454f585e5f5f5f5f5f5f5c564d42372b1f130700000000000000000000000007131f2c3844505c6874808b97a3aeada2968b80756a60554b41382f261e17110c08050300000205080c11171f272f38424c56606a75808a95938d88827c766f63574b3e3125180b0013202c3946535f6c798693a0acb9b1aaa6a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a4988b7e7164574b3e3124180b000000000013202c3946535f6c798693a0acb9b1aaa6a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a4988b7e7164574b3e3124180b0000000000000000000000000000000c1925313d4954606b77828c96a0a89d938a827a74706c6a69675f554a3e32261a0d00000000000000000000000000000000000c1925323f4c5865727e8c9386796c5f5346392c20130006111c263039404548494949494f5c69768390908376695c4f494949494845403930261c1106000000000000000000000000060d141b21262c3035383c3f41434445464646454443403e3b37332f2a241f18110a030000000000000000000000000000000000000000000000000000000000000104070a0c0e0f111112121211100e0d0a080401000000000000000000000000000000000000000000000000000000000000000000000000000000000000040a101417191919191919191715100b04000000000000000000000000000000000000000000000000060c10131515151515151515151515151515151515151515151515151515151515151515151515151515151513100b06000000000000000000060c10131515151515151515151513100c0700000000000000000b16212c37424d57606a727a82888d9295989a9b9c9c9c9b999794908b857f776f676975828f929292928b7e7165584b3f3225180c00000000030e19232e38424c555e676f777e848a8f94979a9c9e9fa09f9f9d9b9995918c878179726a61584f463c32281d13080000000000131f2c3946525f6c7985929595959595887b6f6255493c2f2216090013202c3946535f6c798693a0a4a4a295887b6f6255483c2f221509000000000000101c2936434f5c697683909ca9aa9d9084776a5d5044372c2f30302e2a241d150c03000013202c3946535f6c7986939faca89b8f8275685c4f4236291c100e111a242f3b47535f6b7884919da9b0a3968a7d7063564a3d3023170a000000020d18222d364049525a626970757a7e8284858686868482807c77716b645c534a41372c22170c0100000000000000101c2935404c565f65666666666666666666666666666666666666666666666666625a5045392d21150800010c162029333c464f59626b757e88929ba49f968c837970665d534a40372d241b110800000000000000000008131e29333d464d51535353535353504b443b30261a0f030000000000000000000000000b17232f3c4854606c7884909ca8b4a89c91857a6f64594e44392f261d140d0600000000000000000000060d151d26303a444e59636e79848d88827c76716b655d52473b2f22160a0013202c3946535f6c798693a0acb7ada5a1a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0988b7e7164574b3e3124180b000000000013202c3946535f6c798693a0acb7ada5a1a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0988b7e7164574b3e3124180b0000000000000000000000000000000914202c38444f5a65707a848e969ea49c948c85807c79777671675b4e4235281c0f00000000000000000000000000000000000c1925323f4c5865727e8c9386796c5f5346392c2013000b17222e38424b515555555555555c69768390908376695c555555555555514b42382e22170b0000000000000000000000000003090f151b2024292c2f323436383939393938373634312f2b27231e19130d0700000000000000000000000000000000000000000000000000000000000004090d101416191b1c1d1e1e1e1e1e1d1b191714110d0904000000000000000000000000000000000000000000000000000000000000000000000000000000060e151b20242526262626262624211c160f06000000000000000000000000000000000000000000020a11181c20212222222222222222222222222222222222222222222222222222222222222222222222222222211f1c17110a010000000000020a11181c2021222222222222222221201c18120a02000000000004101c27323e49545e69727c858c93999ea2a5a7a6a4a2a1a1a1a1a09c979089817970697683909c9e9e978b7e7164574b3e3124180b000000000a15202b35404a545e67707981888f969ba0a4a7a9a9a7a6a6a7a9a8a5a29d98928b847c736a61584e443a2f24190e0300000000121f2c3845525f6b7885929fa2a2a295887b6f6255483c2f2215090013202c3946535f6c798693a0acafa295887b6f6255483c2f221509000000000000101c2936434f5c697683909ca9aa9d9084776a5d5044372a222423211e19130b0300000013202c3946535f6c798693a0aca89b8e8174675b4e4135281b0e0208131f2b37434f5c6875828e9ba7b0a3968a7d7063564a3d3023170a0000000006101b242e37404850585e646a6e727577787979797876736f6b666059524a41382f251b10050000000000000000121f2b3844515d68717373737373737373737373737373737373737373737373726c6155493d3024170a0000040e17212a343d47505a636c768089929ca59e958b82786f655c52493f362d231a10070000000000000000010c17212b343b414546464646464644403a32291f1409000000000000000000000000010e1a27333f4b5864707c8895a1adafa3978b8074695d52473c32271d140b02000000000000000000000000030b141e28323c47525c68737e827c76716b65605a534b41362a1f13070013202c3946535f6c798693a0acb0a59b949393939393939393939393939393939393939393939393939393939393939393938b7e7164574b3e3124180b000000000013202c3946535f6c798693a0acb0a59b949393939393939393939393939393939393939393939393939393939393939393938b7e7164574b3e3124180b00000000000000000000000000000004101b27323e49545e68727b848c93989d9e97918c8886848275695c4f4236291c0f00000000000000000000000000000000000c1925323f4c5865727e8c9386796c5f5346392c2013000f1b27333f4a545c616262626262626976839090837669626262626262615c544a3f33271b0f000000000000000000000000000000040a0f14181c202326282a2b2c2c2c2c2c2b292725221f1b17120d08020000000000000000000000000000000000000000000000000000000000050b1015191d20232527292a2b2b2b2b2a29282623201d1915100b06000000000000000000000000000000000000000000000000000000000000000000000000050f1820272c3032323232323232302d272018100600000000000000000000000000000000000000020b141c23282c2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2c28221b130b01000000020b141c23282c2e2e2e2e2e2e2e2e2e2e2c28231c140c02000000000915212c38444f5a65707a858e969ea4aaa9a39e9a97959494949596999c9b938b82796f7784909daaa4978a7d7164574a3e3124170b00000004101b26313c47515c667079828b939aa1a7aca8a39f9c9a999a9a9c9fa4a9a9a39d968e867c736a60564b41362b20150900000000121f2b3845515e6b7885929eabaea195887b6e6155483b2e2215080013202c3946535f6c798693a0acafa295887b6f6255483c2f221509000000000000101c2936434f5c697683909ca9aa9d9084776a5d5044372a1d171715120d08010000000013202c3946535f6c798693a0aca79a8e8174675a4d4134271b0e01020f1b2734404d596673808c99a5b0a3968a7d7063564a3d3023170a000000000009121c252e363e464d53595e6266686a6c6c6c6c6b6967635f5a554e4840382f261d130900000000000000000013202c3946535f6c7980808080808080808080808080808080808080808080807e7164574b3e3124180b000000050f18222b353e48515a646d77808a939da69d948a81776e645b51483f352c22190f060000000000000000050f19222a30353839393939393938342f2820170d0200000000000000000000000004111d2a36424f5b6774808c98a5b1ab9e93877b6f63584c41362b20160c020000000000000000000000000000020c16202b35404b56616d7776716b65605a544e4941392f24190e020013202c3946535f6c798693a0acada09489868686868686868686868686868686868686868686868686868686868686868686867e7164574b3e3124180b000000000013202c3946535f6c798693a0acada09489868686868686868686868686868686868686868686868686868686868686868686867e7164574b3e3124180b000000000000000000000000000000000b16212c37424c566069727a81888d91949d9c9895928f8275695c4f4236291c0f00000000000000000000000000000000000c1925323f4c5865727e8c9386796c5f5346392c201300121e2b3744505b666e6f6f6f6f6f6f6f7683909083766f6f6f6f6f6f6f6e665b5044372b1e12000000000000000000000000000000000003080c101416191b1d1e1f2020201f1e1d1b1916130f0b07020000000000000000000000000000000000000000000000000000000000040a11161c2125292c2f323436373838383837363432302d2925211c17110b04000000000000000000000000000000000000000000000000000000000000000000020d17212a32383d3f3f3f3f3f3f3f3d38322a22180e030000000000000000000000000000000000000a141d262e34383b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b38332d251d13090000000a141d262e34383b3b3b3b3b3b3b3b3b3b39342e261e140a000000010d1925313d4954606b77828c96a0a8aea69e97928e8b89888787888a8c90959a948b81777784919eaaa4978a7d7063574a3d3024170a0000000a15212c38434e58636e78828b949da5acaaa39c9793908d8d8d8e9093989da4aba7a0988f857c72675d52473c31261a0f03000000121e2b3845515e6b7784919eabaea194887b6e6154483b2e2115080013202c3946535f6c798693a0ababa295887b6f6255483c2f221509000000000000101c2936434f5c697683909ca9aa9d9084776a5d5044372a1d110a08060200000000000013202c3946535f6c798693a0aca79a8e8174675a4d4134271a0e01000c1925323e4b5865717e8b97a4b0a3968a7d7063564a3d3023170a0000000000000a131c242c343b42484d5256595c5e5f5f5f5f5e5d5a57534f49443d362e261d140b0100000000000000000013202c3946535f6c79868c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8b7e7164574b3e3124180b00000000061019232c363f48525b656e78818b949ea69c938980766d635a50473e342b21180e0500000000000000000710181f25292c2c2c2c2c2c2c2b28231d160e05000000000000000000000000000713202c3945525e6b7783909ca8b3a79a8e82766a5e52473b3024190e0400000000000000000000000000000000040e19242f3a45505b656b6b65605a544e49433d3730271d1308000013202c3946535f6c798693a0acaca0938679797979797979797979797979797979797979797979797979797979797979797979797064574a3e3124180b000000000013202c3946535f6c798693a0acaca0938679797979797979797979797979797979797979797979797979797979797979797979797064574a3e3124180b0000000000000000000000000000000005101b26303a444e57606870767c81848b97a3a4a19c8f8275695c4f4236291c0f00000000000000000000000000000000000c1925323f4c5865727e8c9386796c5f5346392c20130013202c3946535f6c787c7c7c7c7c7c7c7c839090837c7c7c7c7c7c7c7c786c5f5346392c2013000000000000000000000000000000000000000004070a0d0f1011121313131211100e0c09060300000000000000000000000000000000000000000000000000000000000000070f151c22272d3135393c3e414243444545444443413f3c3935312d28221c160f08010000000000000000000000000000000000000000000000000000000000000008131e29333c43494c4c4c4c4c4c4c49443c342a1f1409000000000000000000000000000000000006111c262f383f4548484848484848484848484848484848484848484848484848484848484848484848484848484847443f372f251b10040006111c262f383f454848484848484848484845403830261c1106000004111d2935414d5965717d88939ea8b0a69c948c86827e7c7b7a7a7b7d8084898f9693897f7784919eaba3968a7d7063574a3d3024170a0000030f1b26323d49545f6a75808a949da6afa8a098918b87838180808184878c9299a1aaaaa1978e84796f64594e42372b201408000000111e2b3844515e6b7784919eaaaea194877a6d6154473b2e2114080013202c3946535f6c7986939e9e9e9e95887b6f6255483c2f221509000000000000101c2936434f5c697683909ca9aa9d9084776a5d5044372a1d110400000000000000000013202c3946535f6c798693a0aca79a8e8174675a4d4134271a0e01000b1724313d4a5763707d8a97a4b0a3968a7d7063564a3d3023170a000000000000010a121b222a30373c41464a4d4f515253535352504e4b47433e38322b241c140b020000000000000000000013202c3946535f6c79869399999999999999999999999999999999999999988b7e7164574b3e3124180b000000000007111a242d364049535c666f78828c959ea59b92897f756c625950463d332a20160c020000000000000000060d14191d1f2020202020201f1c18120c0400000000000000000000000000000916222f3b4854616d7a86939facafa3978a7e72665a4e42362a1f130800000000000000000000000000000000000007121d28343f49535b5f5f5a544e49433d38322c251e150b01000013202c3946535f6c798693a0acaca09386796d6d6d6d6d6d6d6d6d6d6d6d6d6d6d6d6d6d6d6d6d6d6d6d6d6d6d6d6d6d6d6d6d6c685e53473b2f231609000000000013202c3946535f6c798693a0acaca09386796d6d6d6d6d6d6d6d6d6d6d6d6d6d6d6d6d6d6d6d6d6d6d6d6d6d6d6d6d6d6d6d6d6c685e53473b2f2316090000000000000000000000000000000005101b25303a444e5760686f767c81858b97a3a29f9c8f8275695c4f4236291c0f00000000000000000000000000000002070c1925323f4c5865727e8c9386796c5f5346392c20130013202c3946535f6c798689898989898989899292898989898989898986796c5f5346392c20130000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000010a111920272d33383d4145484b4d4f5051515151514f4e4b4945423d38332d27211a130b030000000000000000000000000000000000000000000000000000000000010d1925303b454e5458595959595958554e463c31261a0e02000000000000000000000000000000000b17222d38424a5154555555555555555555555555555555555555555555555555555555555555555555555555555554504941372c21150a000b17222d38424a5154555555555555555554514a42382d22170b00000814202d3945515d6a76828d99a5b0a89e948a827b75726f6e6d6e6f7174787e848c9491867b85929eaba3968a7d7063564a3d3023170a00000814202c37434e5a65707b87919ca6afa89f968e87807b7774737374777b81888f98a1aba9a0968b80756a5f53483c3024190d010000111e2a3744515d6a7784919eaaada094877a6d6154473a2e2114070013202c3946535f6c7986919191919191887b6f6255483c2f221509000000000000101c2936434f5c697683909ca9aa9d9084776a5d5044372a1d110400000000000000000013202c3946535f6c798693a0aca79a8e8174675a4d4134271a0e01000a1723303d4a5663707d8a96a3b0a3968a7d7063564a3d3023170a00000000000000000910181f252b31363a3d404344464646464543413e3b37322d27211a120a02000000000000000000000013202c3946535f6c79869292929292929292949ca69e9592929292929292928b7e7164574b3e3124180b00000000000008121b242e37414a545d677079838c969fa49b91887e756b62584f453c32281e130800000000000000000002080d101213131313131312100c07010000000000000000000000000000000b1825313e4a5763707c8996a2aeaca094877b6e62564a3e32261a0e02000000000000000000000000000000000000010c17222d3841494f52524e49433d38322c26211b140c0300000013202c3946535f6c798693a0acaca09386796c6060606060606060606060606060606060606060606060606060606060606060605d564c42372b1f1307000000000013202c3946535f6c798693a0acaca09386796c6060606060606060606060606060606060606060606060606060606060606060605d564c42372b1f1307000000000000000000000000000000000b16212c37424c566069727a81888d91959d9b9693908e8275695c4f4236291c0f0000000000000000000000000001080e13161925323f4c5865727e8c9386796c5f5346392c20130013202c3946535f6c798693949494949494949999949494949494949386796c5f5346392c20130000000000000000000000000000000000000000000205080b0d0f101112121211100f0e0c090603000000000000000000000000000000000000000000000000000000020b131b232b32383e44494d5155575a5b5d5e5e5e5e5d5c5a5855524e49443f39322c241d150d040000000000000000000000000000000000000000000000000000000004111d2935414c575f6565656565656560584d42362a1e1205000000000000000000000000000000000f1b27333f4a545c616161616161616161616161616161616161616161616161616161616161616161616161616161605b53493d32261a0e000f1b27333f4a545c616161616161616161615c544a3f33281b0f03000a1723303c4855616d7a86929eaaaea2978c8278706965636161616264686d737a828a948d8285929faca3968a7d7063564a3d3023170a00000c1824303c48545f6b76828d98a3adaaa0968d847c756f6a676666686b70767d868f99a3aea79d92877b7064594d4135291d11050000111d2a3744505d6a7784909daaada094877a6d6053473a2d2014070013202c3946535f6c7984848484848484847b6f6255483c2f221509000000000000101c2936434f5c697683909ca9aa9d9084776a5d5044372a1d110400000000000000000013202c3946535f6c798693a0aca79a8e8174675a4d4134271a0e01000a1723303d4a5663707d8a96a3b0a3968a7d7063564a3d3023170a000000000000000000060d141a20252a2e3134363839393939383735322f2b27211c160f080000000000000000000000000013202c3946535f6c798686868686868686868a96a2988c8686868686868686867e7164574b3e3124180b0000000000000009121c252f38424b555e67717a848d97a0a39a90877d746a61574e443a3024190d010000000000000000000000000000000000000000000000000000000000000000000000000000000d1a2633404c5966727e8b98a4b1aa9d9184786b5f53463a2e211509000000000000000000000000000000000000000006111c262f373e434645433d38322c26211b151009020000000013202c3946535f6c798693a0acaca09386796c5f5353535353535353535353535353535353535353535353535353535353535353514b443b30251a0f03000000000013202c3946535f6c798693a0acaca09386796c5f5353535353535353535353535353535353535353535353535353535353535353514b443b30251a0f0300000000000000000000000000000004101c27323e49535e68727b848c93999d9c958f8a8684828175695c4f4236291c0f000000000000000000000000020b12191f232526323f4c5865727e8c9386796c5f5346392c20130013202c3946535f6c798687878787878787889191888787878787878786796c5f5346392c201300000000000000000000000000000000000001050a0e1115171a1b1d1e1e1e1e1e1d1c1a1816130f0c07030000000000000000000000000000000000000000000000010b141d252d353c434a4f55595d616466686a6a6b6b6b6a696764615e5a55504a443d362f271f160e050000000000000000000000000000000000000000000000000000000613202c3945515d69717272727272716a5f53463a2d21140700000000000000000000000000000000121e2b37434f5b666d6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6d655a4e4236291d1000121e2b37434f5b666d6e6e6e6e6e6e6e6e6d665b5044372b1f1205000d1926323f4b5864717d8a96a2aea99d91867a70665e595655545455585c61687078828b938a8a94a0aca3968a7d7063564a3d3023170a0004101c2835414d5964707c88939eaaaea3998e857b726a635e5b595a5b5f646b747d87919ca7aea3988c8175695d5145392d2114080000101d2a3743505d697683909daaada09386796d6053463a2d20130700131f2c3945525e6b757777777777777777766d6154483b2e221508000000000000101c2936434f5c697683909ca9aa9d9084776a5d5044372a1d110400000000000000000013202c3946535f6c798693a0aca79a8e8174675a4d4134271a0e01000a1723303d4a5663707d8a96a3b0a3968a7d7063564a3d3023170a0000000000000000000003090f14191e2125272a2b2c2c2c2c2b2a2826231f1b16100b040000000000000000000000000000131f2c3946525f6b7679797979797979797b8895a2978a7d7979797979797979786f63574a3e3124170b00000000000000000a131d263039434c555f68727b858e98a1a2998f867c736960564c4135291d11050000000000000000000003060809090909090908060200000000000000000000000000000000000f1b2835414e5b6774818d9aa7b3a79b8e8275695c5043372a1e12050000000000000000000000000000000000000000000a141d252d3337393936322c26211b15100a0400000000000013202c3946535f6c798693a0acaca09386796c5f534646464646464646464646464646464646464646464646464646464646464645403a32291f140900000000000013202c3946535f6c798693a0acaca09386796c5f534646464646464646464646464646464646464646464646464646464646464645403a32291f1409000000000000000000000000000000000915202c38444f5a65707a848d969da49b928a847e7a77757470665a4e4135281b0f0000000000000000000000020b141d242a2f3232323f4c5865727e8c9386796c5f5346392c20130013202c3946525f6b777a7a7a7a7a7a7a7a839090837a7a7a7a7a7a7a7a776b5f5246392c20130000000000000000000000000000000001070c11161a1e21242628292b2b2b2b2b2a282725221f1c18130f090400000000000000000000000000000000000000000009131d262f373f474e555b60656a6d7073757677787877777573716e6a65615b554f484139312820170e0400000000000000000000000000000000000000000000000000050a14202d3a4753606d7a7f7f7f7f7f7b6e6155483b2e2215090400000000000000000000000000000013202c3946525f6c777b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b766a5e5145382b1e120013202c3946525f6c777b7b7b7b7b7b7b7b786c5f5346392d201306000e1b2834414e5a6773808c99a5b1a5988c8174695e544d4a484747494c50565e667079848e95959ba5b0a3968a7d7063564a3d3023170a000814202c3945515d6975818d98a4b0a89d92877c72696058524e4d4d4f535a626b75808b96a1ada99d9186796d6155493d3024180b0000101d2a3643505d697683909ca9aca09386796c5f5346392d20130600111d2a36424e59636a6b6b6b6b6b6b6b6b6a655b5044382c201307000000000000101c2936434f5c697683909ca9aa9d9084776a5d5044372a1d110400000000000000000013202c3946535f6c798693a0aca79a8e8174675a4d4134271a0e01000a1723303d4a5663707d8a96a3b0a3968a7d7063564a3d3023170a00000000000000000000000003090d1215181b1d1e1f2020201f1d1c1916130f0a0500000000000000000000000000000000111e2a36434f5a646b6c6c6c6c6c6c6c6e7b8895a2978a7d716c6c6c6c6c6c6c6c675e53473b2f2216090000000000000000010b141e27313a434d566069737c868f99a0a0988e857b72685d5245392d2013070000000000000000050b0f131515151515151514120e0903000000000000000000000000000000101d293643505c6975828f9ca8b2a6998c8073665a4d4134281b0f02000000000000000000000000000000000000000000020b131b22272a2c2c2a26211b15100a04000000000000000013202c3946535f6c798693a0acaca09386796c5f53463a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a38342f2820170d0200000000000013202c3946535f6c798693a0acaca09386796c5f53463a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a38342f2820170d02000000000000000000000000000000000d1925313d4954606b76818c969fa79c92898079726e6a6867655e54493e3225190d00000000000000000000020b141d262e363b3e3f3e3f4c5865727e8c9386796c5f5346392c201300111e2a37434f5a656c6d6d6d6d6d6d6d7683909083766d6d6d6d6d6d6d6c655a4f43372a1e11000000000000000000000000000000060c12181d22262a2d303335363738383837363533312e2b28241f1a150f090200000000000000000000000000000000000007111b252f384149515960666c71767a7d808283848585848482807d7a76716c66605a524b433a322920160d0300000000000000000000000000000000000000000000050b11161b202d3a4753606d7a878c8c8c887b6e6155483b2e221a150f09030000000000000000000000000013202c3946535f6c798688888888888888888888888888888888888888888888888888888888888888888888888885786b5e5145382b1e120013202c3946535f6c798688888888888886796d6053463a2d20130700101d2936434f5c6975828f9ba8aea195897c7064584c423d3b3a3b3c3f454c545e68727d88949fa6adb0a3968a7d7063564a3d3023170a000b1723303c4855616d7985919da9afa3978c81756b60574e4742404043485059636e7985919da9aea2968a7d7165594c4033271a0e0200101c2936434f5c697683909ca9ac9f9286796c5f5346392c201306000e1a26323d4751595d5e5e5e5e5e5e5e5e5e5a53493f34281c1004000000000000101c2936434f5c697683909ca9aa9d9084776a5d5044372a1d110400000000000000000013202c3946535f6c798693a0aca79a8e8174675a4d4134271a0e01000a1723303d4a5663707d8a96a3b0a3968a7d7063564a3d3023170a00000000000000000000000000000105090c0e10121313131312110f0d0a07030000000000000000000000000000000000000e1a26323d48525a5e5f5f5f5f5f5f616e7b8895a2978a7d71645f5f5f5f5f5f5f5c554c42362b1f1307000000000000000000020c151f28313b444e57616a747d8790939393938d847a6e6154473b2e211408000000000000000810161b1f22222222222222211e1a150e060000000000000000000000000000111e2b3744515d6a7784909daab1a4978b7e7165584b3f3225190c0000000000000000000000000000000000000000000000010910161b1e201f1e1a15100a040000000000000000000013202c3946535f6c798693a0acaca09386796c5f5346392d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2c28241d160e050000000000000013202c3946535f6c798693a0acaca09386796c5f5346392d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2c28241d160e050000000000000000000000000000000003101c2935414d5965717d88939ea8a1958b80766e67625e5c5b59544c42382d211509000000000000000000030c141d262f3840474b4c4a454c5865727e8c9386796c5f5346392c2013000f1b27333e49535b606060606060606976839090837669606060606060605b53493e33271b0f00000000000000000000000000020a11171e23292e32363a3d3f414344454545444342403e3b3834302b26201a140d0600000000000000000000000000000000040e19232d37414a535b636a71777d8286898c8e9091919291908f8c8a86827d78726b645d554c443b32281f150b0100000000000000000000000000000000000000020910161c22272b2f3a4753606d7a87949995887b6e6155483b2f2a26201b150e0700000000000000000000000013202c3946535f6c798693959595959595959595959595959595959595959595959595959595959595959595959285786b5e5145382b1e120013202c3946535f6c798693959595959386796d6053463a2d20130700111e2b3744515d6a7784909daaac9f9286796d6054483c312f2e2e30343a424c56606b77828e9aa6b2b0a3968a7d7063564a3d3023170a000e1a26333f4c5864717d8995a2aeaa9e92867b6f64594f453c363334373e47525d6874818c99a5b1a69a8d8174685b4f4336291d1004000f1c2936424f5c6975828f9ca9ac9f9286796c5f5246392c1f1306000915202b363f474d515151515151515151514e4841372d22170c00000000000000101c2936434f5c697683909ca9aa9d9084776a5d5044372a1d110400000000000000000013202c3946535f6c798693a0aca79a8e8174675a4d4134271a0e01000a1723303d4a5663707d8a96a3b0a3968a7d7063564a3d3023170a00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000a16212c3640484e52525252525255616e7b8895a2978a7d716457525252525252504b433a30251a0e0200000000000000000000030d161f29323c454f58626b757e868686868686867b6e6154483b2e21150800000000000009121a21272c2e2f2f2f2f2f2f2e2b262018100600000000000000000000000000121f2c3845525e6b7885919eabb0a396897d7063574a3d3124170a00000000000000000000000000000000000000000000000000050a0f111313110e0a0400000000000000000000000013202c3946535f6c798693a0acaca09386796c5f5346392c202020202020202020202020202020202020202020202020202020201f1c18120c04000000000000000013202c3946535f6c798693a0acaca09386796c5f5346392c202020202020202020202020202020202020202020202020202020201f1c18120c04000000000000000000000000000000000006131f2c3844515d6975828d99a4a79b8f84796e655c56524f4e4c48423a31261b10050000000000000000030c151e262f38414a52575956504c5865727e8c9386796c5f5346392c2013000a16212d3741494f5353535353535c69768390908376695c5353535353534f4941372d21160a000000000000000000000000050c141b22292f34393e4246494c4e505151515151504e4d4a4744403c37312c251f1810090100000000000000000000000000000a15202b353f49535c656d757c83898e9296999b9c9e9e9e9e9d9b9996928e89837d766e675e564d443a31271d1309000000000000000000000000000000000000050d141b21282d33373c3f4753606d7a8794a095887b6e6155483f3b36312c262019120a020000000000000000000013202c3946535f6c798693a0a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a29e9285786b5e5145382b1e120013202c3946535f6c798693a0a2a2a09386796d6053463a2d20130700121f2c3845525f6b7885929eabaa9d9084776b5e5145382c2221212328303a444f5a66727d8a96a2aeb0a3968a7d7063564a3d3023170a00101d2936424f5b6774818d99a0a3a59a8e82766a5e53473d332a27272c35404c5864707c8995a2aea99d9084776a5e5145382c1f1206000f1c2935424f5b6875828f9ca8ac9f9285786b5f5245382c1f12050008141f29343d444a4d4e4e4e4e4e4e4e4e4e4b463e352b21160a00000000000000101c2936434f5c697683909ca9aa9d9084776a5d5044372a1d110400000000000000000013202c3946535f6c798693a0aca79a8e8174675a4d4134271a0e01000a1723303d4a5663707d8a96a3b0a3968a7d7063564a3d3023170a000000000000000000000000000000000206090b0d0f10101010100f0d0b090603000000000000000000000000000000000004101a242e363d4245464646464855616e7b8895a2978a7d7164574a4646464645443f3931281e1409000000000000000000000000040d17202a333d465059626c7579797979797979776d6054473a2e211408000000000007111b242c33383b3c3c3c3c3c3c3a37312a22180f04000000000000000000000000131f2c3946525f6c7985929facafa295887c6f6255493c2f231609000000000000000000000000000000000000000000000000000000020506060502000000000000000000000000000013202c3946535f6c798693a0acaca09386796c5f5346392c2013131313131313131313131313131313131313131313131313131312100c070100000000000000000013202c3946535f6c798693a0acaca09386796c5f5346392c2013131313131313131313131313131313131313131313131313131312100c07010000000000000000000000000000000000000815212e3b4754606d7985929eaaa3978b7e73685d534b464341403d3730281f150a0000000000000000030c151e273039424a535c6365625a515865727e8c9386796c5f5346392c20130005101b252f373e4446474747474f5c69768390908376695c4f4747474746443e372f251b10050000000000000000000000060e171e262d343a40454a4e5256585b5c5d5e5e5e5d5d5b595754504c47423d373029221b130a0200000000000000000000000006111c27323c47515b656e777f878e94999ea2a5a7a5a3a2a2a2a3a6a5a29e9a948e88807970685f564c43392f251a100500000000000000000000000000000000070f171e262c33393e43484c4f53606d7a8794a095887b6e61554f4b47423d37312a231c140c0400000000000000000013202c3946535f6c798693a0acaeaea9a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a59e9285786b5e5145382b1e120013202c3946535f6c798693a0acada09386796d6053463a2d2013070013202c3946525f6c7986929faca89c8f8276695c5043362a1d1415171e28333e4955616d7986929eabb0a3968a7d7063564a3d3023170a00121f2b3845515e6a77839092949698968a7e7265594d42362b211a1a24303c4854616d7a86939facac9f9286796c6053473a2d211407000f1c2835424f5b6875828e9ba8ab9e9285786b5e5245382b1f1205000d1925303b454f565a5b5b5b5b5b5b5b5b5a5750473d32271b0f03000000000000101c2936434f5c697683909ca9aa9d9084776a5d5044372a1d110400000000000000000013202c3946535f6c798693a0aca79a8e8174675a4d4134271a0e01000a1723303d4a5663707d8a96a3b0a3968a7d7063564a3d3023170a0000000000000000000000000001060a0e1215181a1b1c1d1d1d1c1b1a1815120f0b070200000000000000000000000000000008121c242c3236383939393b4855616e7b8895a2978a7d7164574a3e3939393937342e271f160c0200000000000000000000000000050e18212b343e47505a636b6c6c6c6c6c6c6c6c655b5044382c1f130600000000030e19232d363e444748484848484847423c342a20160b00000000000000000000000013202c3946535f6c7986939facaea295887b6e6155483b2f221508000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000013202c3946535f6c798693a0acaca09386796c5f5346392c20130707070707070707070707070707070707070707070707070707060606040100000000000000000013202c3946535f6c798693a0acaca09386796c5f5346392c2013070707070707070707070707070707070707070707070707070706060604010000000000000000000000000000000000000a1623303c4956626f7b8895a1aca093877a6e62564b413a363433312c261e160d0300000000000000030c151e273039424b545d656e726c635a5865727e8c9386796c5f5346392c2013000009131d252d33373a3a3a3a434f5c69768390908376695c4f433a3a3a3a37332d251d13090000000000000000000000060f18202830383f454b51565a5e626567696a6b6b6b6a69686663605c58534e48423b342d251c140b0200000000000000000000000b17222d38434e59636d76808991999fa5aaa49f9b989695959697999ca0a5a5a099928b837a71685e554b41362c21170c010000000000000000000000000000071019212930373e444a4f54585b5e616d7a8794a095887b6e615e5b57534e48423c352e261e160d04000000000000000013202c3946535f6c798693a0acb3a89f99989898989898989898989898989898989898989898989898989898989285786b5e5145382b1e120013202c3946535f6c798693a0acada09386796d6053463a2d2013070013202c3946535f6c798693a0aca89b8e8275685b4f4235281c0f080c16212d3945515e6a76838f9ca8b0a3968a7d7063564a3d3023170a0013202c3946535f6c7981838587898c8e877a6e6255493d31251a0f13202c3945525e6b7884919eaaada194877b6e6155483b2f221508000f1b2835424e5b6875828e9ba8ab9e9184786b5e5145382b1e120500101d2935414d57616767676767676767676762594f43372b1f1306000000000000101c2936434f5c697683909ca9aa9d9084776a5d5044372a1d110400000000000000000013202c3946535f6c798693a0aca79a8e8174675a4d4134271a0e01000a1723303d4a5663707d8a96a3b0a3968a7d7063564a3d3023170a000000000000000000000000070c12161b1e22242628292a2a2a29282624221f1b17120d080200000000000000000000000000000a121a21262a2c2c2c2e3b4855616e7b8895a2978a7d7164574a3e312c2c2c2b28231d150d04000000000000000000000000000000060f19222c353e4851595e5f5f5f5f5f5f5f5f5b534a3f34281c1004000000000915202a353f484f54555555555555534d463c32271c1004000000000000000000000013202c3946535f6c798693a0acaea194887b6e6155483b2e221508000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000013202c3946535f6c798693a0acaca09386796c5f5346392c20131313131313131313131313131313131313131313131313131313131312110d09040000000000000013202c3946535f6c798693a0acaca09386796c5f5346392c20131313131313131313131313131313131313131313131313131313131312110d0904000000000000000000000000000000000a1724313d4a5764707d8a97a3aa9d9184786b5f52463a2f2a282724201b140c0400000000000000030c151e273039424b545d666e777e756c635a65727e8c9386796c5f5346392c201300000b151f282f363a3d3d3d3d434f5c69768390908376695c4f433d3d3d3d3a362f281f150b00000000000000000000060f18212a323a424950565c62666b6e71747577777878777674726f6c68645f59534d463e372e261d140b0100000000000000000005111c28333f4a55606a757f89929ba3aaa59f98938f8c8a8988898a8d90959aa0a7a49c958c837a70675d53483e33281d120700000000000000000000000000071019222b333b42494f555b6064686b6d6f7a8794a095887b6f6d6a67635f59544d47403830281f160d030000000000000013202c3946535f6c798693a0acaea2968d8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b85786b5e5145382b1e120013202c3946535f6c798693a0acada09386796d6053463a2d2013070013202c3946535f6c798693a0aca79a8e8174675b4e4134281b0e0105111d2935424e5b6774818d9aa6b0a3968a7d7063564a3d3023170a00121f2b3845515d68717477797b7d7f8183786b5f52463a2d211509111d2a3743505d697683909ca9afa295897c6f6255493c2f231609000e1b2834414e5b6774818e9ba8aa9e9184776b5e5144382b1e110500121f2c3845515d69727474747474747474736b6054473b2e211508000000000000101c2936434f5c697683909ca9aa9d9084776a5d5044372a1d110400000000000000000013202c3946535f6c798693a0aca79a8e8174675a4d4134271a0e01000a1723303d4a5663707d8a96a3b0a3968a7d7063564a3d3023170a00000000000000000000040b12181d22272b2e31333536363636363533312e2b27231e19130d060000000000000000000000000000080f151a1d1f1f222e3b4855616e7b8895a2978a7d7164574a3e31241f1f1e1b17120b03000000000000000000000000000000000007101a232c363f484e5253535353535353524f4941382d23170c00000000040f1b26313c47515a606262626262625f584e44382d201408000000000000000000000013202c3946535f6c798693a0acaea195887b6e6155483b2e221508000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000013202c3946535f6c798693a0acaca09386796c5f5346392c201f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1d1a150f0700000000000013202c3946535f6c798693a0acaca09386796c5f5346392c201f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1d1a150f070000000000000000000000000000000b1724313e4a5764717d8a97a4a89c8f8276695c5043372a1e1b1a18140f090200000000000000040c151e273039424b545d666f7881877e756c6265727e8c9386796c5f5346392c20130006121d27313a41474a4a4a4a4a4f5c69768390908376695c4f4a4a4a4a4a47413a31271d12060000000000000000040e18212a333c444c545b62686d72777a7e8182848485848483817e7c7874706a655e57504840382f261d13090000000000000000000a16222d3944505b66717c87919ba4ada49b948d8783807d7c7b7c7d8184898f959da5a69e958c83796f645a4f453a2f24190d020000000000000000000000060f19222b343d454c545a61666b7074777a7c7e8794a095887e7c7a77736f6a655f58514a423a31281f150c0200000000000013202c3946535f6c798693a0acaca093867e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e786b5e5145382b1e120013202c3946535f6c798693a0acada09386796d6053463a2d2013070013202c3946535f6c798693a0aca79a8e8174675a4d4134271a0e01010d1a26333f4c5965727e8b98a5b0a3968a7d7063564a3d3023170a00101c2935414c576066686a6c6e7072747673695d5044372a1e1105101c2936434f5c6975828f9ca9b0a396897c6f6356493d3023160a000e1b2734414e5a6774818e9aa7aa9e9184776a5d5144372a1e11040013202c3946535f6c7981818181818181817b6f6255483c2f221509000000000000101c2936434f5c697683909ca9aa9d9084776a5d5044372a1d110400000000000000000013202c3946535f6c798693a0aca79a8e8174675a4d4134271a0e01000a1723303d4a5663707d8a96a3b0a3968a7d7063564a3d3023170a000000000000000000070f161d23292e33373a3d3f41424343434341403d3b37332f2a241e1710090100000000000000000000000000040a0e111215222e3b4855616e7b8895a2978a7d7164574a3e31241713120f0b06000000000000000000000000000000000000000008111a242d363d42454646464646464646433e382f261c1106000000000915202c37424d58636c6f6f6f6f6f6f6a6055493d3024170b000000000000000000000013202c3946535f6c7986929facaea295887b6f6255483c2f221509000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000013202c3946535f6c798693a0acaca09386796c5f5346392c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c292520191109000000000013202c3946535f6c798693a0acaca09386796c5f5346392c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c29252019110900000000000000000000000000000b1724313e4a5764717d8a97a4a89b8e8275685b4e4235281c0f0d0b08040000000000000000040d161e273039424b545d666f78818a90877e746765727e8c9386796c5f5346392c2013000b17232e39434c525657575757575c69768390908376695c575757575756524c43392e23170b00000000000000020c16202a333c454e565e666d73797e83878a8d8f90919291918f8e8b8885817b767069625a524a41382f251b110700000000000000030e1a26323e4a55616c77838e98a3ada49b9289827c7773706f6f6f7174787d848b939ba4a79e958b81766c61564b40352a1e130800000000000000000000030e18212b343d464f575e656c72777c808486898a8d97a2988e8b898683807b76706a635c544c433a31271e140a00000000000013202c3946535f6c798693a0acaca093867971717171717171717171717171717171717171717171717171717171716f675b4f43372a1d110013202c3946535f6c798693a0acada09386796d6053463a2d2013070013202c3946535f6c798693a0aca79a8e8174675a4d4134271a0e01000b1825313e4b5764717d8a97a4b0a3968a7d7063564a3d3023170a000c1824303a454e55595b5d5f626466686a6961574c4034281c0f030f1c2936424f5c6975828f9ca9b0a3968a7d7063564a3d3023170a000e1a2734414d5a6774818d9aa7aa9d9084776a5d5044372a1d11040013202c3946535f6c79868e8e8e8e8e8e887b6f6255483c2f221509000000000000101c2936434f5c697683909ca9aa9d9084776a5d5044372a1d110400000000000000000013202c3946535f6c798693a0aca79a8e8174675a4d4134271a0e01000a1723303d4a5663707d8a96a3b0a3968a7d7063564a3d3023170a000000000000000009111921282e343a3f43474a4c4e4f5050504f4e4c4a47443f3b353029221b130b02000000000000000000000000000000000815222e3b4855616e7b8895a2978a7d7164574a3e3124170b0000000000000000000000000000000000000000000000000008121b242b323639393939393939393937332d261d140a00000000020e1a26313d48545f6a757b7b7b7b7b7b7165584b3f3225180c0000000000000000000000121f2c3945525f6b7885929fabafa296897c6f6356493c3023160a000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000013202c3946535f6c798693a0acaca09386796c5f534639393939393939393939393939393939393939393939393939393939393939393836312b231b11070000000013202c3946535f6c798693a0acaca09386796c5f534639393939393939393939393939393939393939393939393939393939393939393836312b231b1107000000000000000000000000000b1724313e4a5764717d8a97a4a89b8e8174675b4e4134281b0e0100000000000000000000030d161f283039424b545d666f78818a938c847b726665727e8c9386796c5f5346392c2013000f1c28343f4b555d636363636363636976839090837669636363636363635d554b3f34281c0f0000000000000009141e28323c454e57606870777e848a8f9397999c9d9e9e9e9d9c9a9895918c87817b746c645c534a41372d23190f0400000000000007131f2b37434f5a66727d89949faaa69c92898077716b676462626365686c72798189929ba5a79d92887d73685d52463b3024190d010000000000000000000b151f2a333d464f58616970777d83888c90939597999fa8a099979593908c87827b756d665e554c433930261b1106000000000013202c3946535f6c798693a0acaca09386796c65656565656565656565656565656565656565656565656565656565645e554a3f33271b0e0013202c3946535f6c798693a0acada09386796d6053463a2d2013070013202c3946535f6c798693a0aca79a8e8174675a4d4134271a0e01000a1724303d4a5763707d8a96a3b0a3968a7d7063564a3d3023170a0008131e29333c44494d4f51535557595b5d5c574f463b3024180c000f1c2936424f5c6975828f9ca9b0a3968a7d7063564a3d3023170a000d1a2734404d5a6773818d9aa6aa9d9083766a5d5043372a1d11040013202c3946535f6c7986939b9b9b9b95887b6f6255483c2f221509000000000000101c2936434f5c697683909ca9aa9d9084776a5d5044372a1d110400000000000000000013202c3946535f6c798693a0aca79a8e8174675a4d4134271a0e01000a1723303d4a5663707d8a96a3b0a3968a7d7063564a3d3023170a0000000000000009121b232b323940454a4f5356595b5c5d5d5d5c5b595653504b46413b342d251d140b020000000000000000000000000000010815222e3b4855616e7b8895a2978a7d7164574a3e3124170b000000000000000000000000000000000000000000000000000009121a21262a2c2c2c2c2c2c2c2c2c2b27221b140b020000000007131f2b37424e5965707b86888888857a7064574b3e3225180b0000000000000000000000121e2b3845515e6b7784919eaab0a3968a7d7064574a3e3124180b000000000000000000000000000000000000000000000000000306080908050200000000000000000000000000000013202c3946535f6c798693a0acaca09386796c5f5346464646464646464646464646464646464646464646464646464646464646464645423c352d23190e0300000013202c3946535f6c798693a0acaca09386796c5f5346464646464646464646464646464646464646464646464646464646464646464645423c352d23190e030000000000000000000000000b1724313e4a5764717d8a97a4a89b8e8174675b4e4134281b0e01000000000000000000000b151f28313a424b545d666f78818a938c837a72696065727e8c9386796c5f5346392c201300121e2b3844505c676f70707070707070768390908376707070707070706f675c5044382b1e1200000000000006101b26303a444e576169727a828990969b9fa3a6a5a3a2a2a2a3a5a7a4a19d98928c867e766e655c53493f352b20160b0000000000000a17232f3b47535f6b77838e9aa5aa9f958a80766d665f5a57565556585c61676f778089939da8a49a8f84796e63574c41352a1e1206000000000000000007121c27313b454f58616a737a82888e94989c9fa2a4a5a6a6a6a6a4a29f9c97928d86807870675e554b41372d23180d020000000013202c3946535f6c798693a0acaca09386796c5f58585858585858585858585858585858585858585858585858585857534c43392e22170b0013202c3946535f6c798693a0acada09386796d6053463a2d2013070013202c3946535f6c798693a0aca79a8e8174675a4d4134271a0e01000a1723303d4a5663707d8a96a3b0a3968a7d7063564a3d3023170a00020d17212a32383d40424446484a4d4f51504c463d34291e1307000f1c2936424f5c6975828f9ca9b0a3968a7d7063564a3d3023170a000d1a2633404d596673808d9aa6a99c908376695d5043362a1d10030013202c3946535f6c798693a0a8a8a295887b6f6255483c2f221509000000000000101c2936434f5c697683909ca9aa9d9084776a5d5044372a1d110400000000000000000013202c3946535f6c798693a0aca79a8e8174675a4d4134271a0e01000a1723303d4a5663707d8a96a3b0a3968a7d7063564a3d3023170a00000000000008121b242d353d444b51565b5f6265676969696969676563605c57524c453e372f261d140b010000000000000000000000050a0d0f15222e3b4855616e7b8895a2978a7d7164574a3e3124170b000000000000000000000000000000000000000000000000000000080f151a1e1f20202020202020201e1b16110a0200000000000b17232f3b47535f6a76818d9594897e73685e53473b2f23160a0000000000000000000000111d2a3744505d6a7683909ca9b1a4988b7e7265584c3f3326190d0000000000000000000000000000000000000000000000050b0f13151514120e0a060200000000000000000000000013202c3946535f6c798693a0acaca09386796c5f53525252525252525252525252525252525252525252525252525252525252525252524e473f352b20140800000013202c3946535f6c798693a0acaca09386796c5f53525252525252525252525252525252525252525252525252525252525252525252524e473f352b2014080000000000000000000000000b1724313e4a5764717d8a97a4a89b8e8174675b4e4134281b0e0100000000000000000006111c27313a434c545d666f78818a938c837a7168605e65727e8c9386796c5f5346392c20130013202c3946535f6c787d7d7d7d7d7d7d7d839090837d7d7d7d7d7d7d7d786c5f5346392c20130000000000010c17222d37424c566069737b848c949ba1a6a5a09c999795959697999ca0a5a9a49e97908880776e655b51473d32271c110600000000000e1a26333f4b57636f7b87939fa0a2998e83786e645b544e4b4948494c50565d656e77818b96a1aba1968b8074695d52463a2f23170b00000000000000020d18232e39434d57616a737c858c939a9fa4a7a39f9c9a9999999b9da0a4a8a39e98918a827970675d53493f34291f13080000000013202c3946535f6c798693a0acaca09386796c5f534b4b4b4b4b4b4b4b4b4b4b4b4b4b4b4b4b4b4b4b4b4b4b4b4b4b4b47413a31271c11060013202c3946535f6c798693a0acada09386796d6053463a2d2013070013202c3946535f6c798693a0aca79a8e8174675a4d4134271a0e01000a1723303d4a5663707d8a96a3b0a3968a7d7063564a3d3023170a0000050f1820272d313336383a3c3e40424443403b342b22180d02000f1c2936424f5c6975828f9ca9b0a3968a7d7063564a3d3023170a000d1a2633404c596673808c99a6a99c908376695c4f4336291c10030013202c3946535f6c798693a0acafa295887b6f6255483c2f221509000000000001101c2936434f5c697683909ca9aa9d9084776a5d5044372a1d110d0b070200000000000013202c3946535f6c798693a0aca79a8e8174675a4d4134271a0e01000a1723303d4a5663707d8a96a3b0a3968a7d7063564a3d3023170a000000000006101a242d363f474e565c62676b6f7274757676767574726f6c68635d57504941382f261d1309000000000000000000030a11161a1c1c222e3b4855616e7b8895a2978a7d7164574a3e3124170b00000000000000000000000000000000000000000000000000000000040a0e11131313131313131313110f0b05000000000000030f1b2734404c58646f7b87929a8e83786d62574c42372b1f13070000000000000000000000101c2936424f5c6875828e9ba8b3a6998d8074675a4e4135281c0f030000000000000000000000000000000000000000000810161b1f2122211e1a16120e0a060200000000000000000013202c3946535f6c798693a0acaca09386796c5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5e5951473c3125190d00000013202c3946535f6c798693a0acaca09386796c5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5e5951473c3125190d0000000000000000000000000b1724313e4a5764717d8a97a4a89b8e8174675b4e4134281b0e010000000000000000000b17232e39434c555e666f78818a948b8279716b6b6b6b6b727e8c9386796c5f5346392c20130013202c3946535f6c79868a8a8a8a8a8a8a8b93938b8a8a8a8a8a8a8a86796c5f5346392c2013000000000007131e29343e49545e68727b858e969ea5a7a09a94908c8a8988898a8c9094999fa6a9a29a928980776d63594e44392e23170c0100000000101c2936424f5b6773808c9092949694887d71665c524a433e3c3c3d3f444b535c656f7a848f9aa5a79c91857a6e63574b3f33271b0f0300000000000008131f2a35404a555f69737c868e969ea5a9a29c9793908d8c8c8c8e9094989da4a9a39c948b82796f655b51463b3025190e0200000013202c3946535f6c798693a0acaca09386796c5f53463e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3b3630281f150b000013202c3946535f6c798693a0acada09386796d6053463a2d2013070013202c3946535f6c798693a0aca79a8e8174675a4d4134271a0e01000a1723303d4a5663707d8a96a3b0a3968a7d7063564a3d3023170a000000060e161c212527292b2d2f31333637373430292219100600000f1c2936424f5c6975828f9ca9b0a3968a7d7063564a3d3023170a000d192633404c5966727f8c99a6a99c8f8275695c4f4236291c10030013202c3946535f6c798693a0acafa295887b6f6255483c2f22150900000000050c121c2936434f5c697683909ca9aa9d9084776a5d5044372a1d1b1a17130d06000000000013202c3946535f6c798693a0aca79a8e8174675a4d4134271a0e01000a1723303d4a5663707d8a96a3b0a3968a7d7063564a3d3023170a00000000030e18222c363f48515960676d73777b7e818283838382817e7c78746e68625a534a41382e251a100600000000000000040d151c22262829282e3b4855616e7b8895a2978a7d7164574a3e3124170b00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000006121f2b3744505c6874808c9894897d72665b50453a30251a0f0300000000000000000000000e1b2734414d5a6773808d99a6b2a89b8f8276695d5044372b1f1206000000000000000000000000000000000000000009121a21272c2e2f2e2a26221e1a16120e0a060100000000000013202c3946535f6c798693a0acaca09386796c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6a63584d4135291c1003000013202c3946535f6c798693a0acaca09386796c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6a63584d4135291c100300000000000000000000000b1724313e4a5764717d8a97a4a89b8e8174675b4e4134281b0e010000000000000000000f1b27333f4a555e677078828b948b827978787878787878787e8c9386796c5f5346392c20130013202c3946535f6c798693939393939393939393939393939393939386796c5f5346392c201300000000020d19242f3a45505b65707a848d97a0a8a49c958e8984807d7c7b7c7d8084888e949ca3aca49b92897f756b60554a3f34291d120600000000101d2a3643505d69768081838587898b83776c60554a403832302f303339414a535d68737e8994a0aba2968b7f73675c5044382c2014070000000000020e1925303b46515c67717b858f98a0a8a79e97918b878381807f808184888c9299a0a8a69d948b81776d62574c41362b1f130800000013202c3946535f6c798693a0acaca09386796c5f534639323232323232323232323232323232323232323232323232312f2b251e160d03000013202c3946535f6c798693a0acada09386796d6053463a2d2013070013202c3946535f6c798693a0aca79a8e8174675a4d4134271a0e01000a1723303d4a5663707d8a96a3b0a3968a7d7063564a3d3023170a00000000040b1015181a1c1e21232527292a2a28241e1810070000000f1c2936424f5c6975828f9ca9b0a3968a7d7063564a3d3023170a000c1926323f4c5965727f8c99a5a89c8f8275685c4f4236291c0f030013202c3946535f6c798693a0a7a7a295887b6f6255483c2f221509000000070f171d222936434f5c697683909ca9aa9d9084776a5d5044372a282826231e1811090000000013202c3946535f6c798693a0aca79a8e8174675a4d4134271a0e01000a1723303d4a5663707d8a96a3b0a3968a7d7063564a3d3023170a000000000a151f2a343e48515a636b72787e83878b8d8f9090908f8d8b8884807a736c655c534a40362c22170c010000000000030d161f272d32353635313b4855616e7b8895a2978a7d7164574a3e3124170b000000000000000000000000000001070b0e0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0e0b07010000000000000915222e3b4753606c7884909b8f84786c61554a3f34291e14090000000000000000000000000c1926323f4b5865717e8a97a3b0aa9e9185786c6053473b2e22160a0000000000000000000000000000000000000007111b242c33383b3c3a36322e2a26221e1a16120c05000000000013202c3946535f6c798693a0acaca093867979797979797979797979797979797979797979797979797979797979797979797979797975695d5144372b1e1104000013202c3946535f6c798693a0acaca093867979797979797979797979797979797979797979797979797979797979797979797979797975695d5144372b1e110400000000000000000000000b1724313e4a5764717d8a97a4a89b8e8174675b4e4134281b0e01000000000000000000111e2b3744505c677079828b94958a85858585858585858585858d9386796c5f5346392c20130013202c3946535f6c798686868686868686868686868686868686868686796c5f5346392c20130000000007131e2a35404c57626c77828c969fa9a49b938b837d7874716f6f6f7174787d838a929aa3aca49b91877c72675c50453a2e23170b000000000f1c2935424e5a656f737577797b7d7e7f73675b4f44392e26232224282f38414c56616c78838f9aa6a79c9084786c6054483c3024170b000000000007131f2a36414c58636e78838d97a1aaa69d958d86807a777473727375787b81878e969fa8a69d93897e74695e53473c3024180c00000013202c3946535f6c798693a0acaca09386796c5f5346392c252525252525252525252525252525252525252525252525231f1a130c0400000013202c3946535f6c798693a0acada09386796d6053463a2d2013070013202c3946535f6c798693a0aca79a8e8174675a4d4134271a0e01000a1723303d4a5663707d8a96a3b0a3968a7d7063564a3d3023170a00000000000005090c0e10121416181a1c1e1d1b18130d06000000000f1c2936424f5c6975828f9ca9b0a3968a7d7063564a3d3023170a000c1925323f4c5865727e8c98a5a89b8f8275685b4f4235281c0f020013202c3946535f6c7986939a9a9a9a95887b6f6255483c2f221509000006101921282e3236434f5c697683909ca9aa9d9084776a5d504437353535332f2a231b120800000013202c3946535f6c798693a0aca79a8e8174675a4d4134271a0e01000a1723303d4a5663707d8a96a3b0a3968a7d7063564a3d3023170a00000005101b26313c46505a636c757c848a8f94979a9b9b9b9b9c9a9894908b857e766e655c52483e34291e130800000000000a151f2831383e4243413d3b4855616e7b8895a2978a7d7164574a3e3124170b00000000000000000000000000060d12171a1c1c1c1c1c1c1c1c1c1c1c1c1c1c1c1c1c1c1c1c1c1c1c1a17120d0600000000000b1824313d4a56636f7b8894978b7f73675b5044392d22170c020000000000000000000000000a1724303d4956626f7b8894a1adada194887b6f63574b3e32261b0f030000000000000000000000000000000000020e19232d363e44474846433e3a36322e2a26221d160f060000000013202c3946535f6c798693a0acada0948986868686868686868686868686868686868686868686868686868686868686868686868684776b5e5144382b1e1105000013202c3946535f6c798693a0acada0948986868686868686868686868686868686868686868686868686868686868686868686868684776b5e5144382b1e110500000000000000000000000b1724313e4a5764717d8a97a4a89b8e8174675b4e4134281b0e01000000000000000000121f2c3945525f6c78828b949d9b949292929292929292929292959386796c5f5346392c201300131f2c3946525f6b767979797979797979797979797979797979797979766b5f5246392c1f13000000010c18242f3b46525d68737e89939ea8a59b92898179726c676462626364676c71788088919ba4ada3998e83786d62564b3f33271c10040000000d1926323e49545d6366686a6c6e7072736d63574b3f332a2b2b2a2a2927303a45505b66727e8a95a1aca094887c7064584c4034271b0f02000000000c18242f3b47525e69747f8a959fa9a89e948b837b746e6a68666566686b70757c848d96a0aba59b90857a6f64584c4135291d1105000013202c3946535f6c798693a0acaca09386796c5f5346392c20181818181818181818181818181818181818181818181816130e09020000000013202c3946535f6c798693a0acada09386796d6053463a2d2013070013202c3946535f6c798693a0aca79a8e8174675a4d4134271a0e01000a1723303d4a5663707d8a96a3b0a3968a7d7063564a3d3023170a00000000000000000000030507090c0e1011110f0c070200000000000f1c2936424f5c6975828f9ca9b0a3968a7d7063564a3d3023170a000c1825323e4b5865717e8b98a5a89b8e8275685b4e4235281b0f020013202c3946535f6c79868d8d8d8d8d8d887b6f6255483c2f22150900020d18222b333a3f41434f5c697683909ca9aa9d9084776a5d5044424242413f3b342d241a0f05000013202c3946535f6c798693a0aca79a8e8174675a4d4134271a0e01000a1723303d4a5663707d8a96a3b0a3968a7d7063564a3d3023170a0000000b16222d38434d58626c757e878e959b9c9793908e8e8e9092969b9c96908980776e645a50453a2f24190d0200000004101b26313a434a4e4f4e49424855616e7b8895a2978a7d7164574a3e3124170b0000000000000000000000000710171e2327292929292929292929292929292929292929292929292927231e171007000000000d1a2733404c5965727e8b9794877b6f63574b423b32281e13080000000000000000000000000815212e3a4753606c7985919eaab0a4988b7f73675b4f43372b201409000000000000000000000000000000000008131f2a353f484f5455534f4b47433e3b37332e2821180f0500000013202c3946535f6c798693a0acb0a59b9492929292929292929292929292929292929292929292929292929292929292929292929184776b5e5144382b1e1105000013202c3946535f6c798693a0acb0a59b9492929292929292929292929292929292929292929292929292929292929292929292929184776b5e5144382b1e110500000000000000000000000b1724313e4a5764717d8a97a4a89b8e8174675b4e4134281b0e01000000000000000000121f2b3845515e69747d868f98988e8b8b8b8b8b8b8b8b8b8b8b8b8b86796c5f5346392c201300111e2a37434f5a646b6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6b645a4f43372a1e1100000005111d2935404c57636e7985909ba5a89d938980776f67605b58565556585b60666e767f89939da8aaa0958a7e73675b5044382c2014080000000915212d38424b52575a5b5d5f61636567635b51463a353737383737353432333f4a56616d7985919da9a5998d8174685c5043372b1e120600000004101c2834404c58636f7a86919ca6aca1968c82797169635e5b59595a5c5f646b727b848e99a4ada2978c8074695d5145392d211508000013202c3946535f6c798693a0acaca09386796c5f5346392c20130b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0a070300000000000013202c3946535f6c798693a0acada09386796d6053463a2d2013070013202c3946535f6c798693a0aca79a8e8174675a4d4134271a0e01000a1723303d4a5663707d8a96a3b0a3968a7d7063564a3d3023170a000000000000000000000000000000000000000000000000000000000f1c2936424f5c6975828f9ca9b0a3968a7d7063564a3d3023170a000b1825323e4b5864717e8b98a4a89b8e8174675b4e4134281b0e020013202c3946535f6c7981818181818181817b6f6255483c2f2215090008141f2a343d454b4e4e4f5c697683909ca9aa9d9084776a5d504e4e4e4e4e4b463f362c21160a000013202c3946535f6c798693a0aca79a8e8174675a4d4134271a0e01000a1723303d4a5663707d8a96a3b0a3968a7d7063564a3d3023170a000004101c27333e49545f6a747e879099a098918b868382818283868a8f969e9a928a80766c61574c41352a1e13070000000915212d38434c555a5c5a534c4855616e7b8895a2978a7d7164574a3e3124170b000000000000000000000006101922292f333536363636363636363636363636363636363636363635332f29221910060000000f1c2835424e5b6874818d9a9184786b5f56534c443a3025190d01000000000000000000000006121f2b3844505d6975828e9aa7b3a79b8f83776b5f54483c31261b1006000000000000000000000000000000020d1824303b47515a60625f5b57534f4b47433f3a332a21170d02000013202c3946535f6c798693a0acb3ada5a09f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9e9184776b5e5144382b1e1105000013202c3946535f6c798693a0acb3ada5a09f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9e9184776b5e5144382b1e110500000000000000000000000b1724313e4a5764717d8a97a4a89b8e8174675b4e4134281b0e01000000000000000000101d2935414d58626b747d868f95887e7e7e7e7e7e7e7e7e7e7e7e7e7e796c5f5346392c2013000e1a26323e48525a5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5a52483e32261a0e0000000a16222d3945515d6874808b96a1aca1968c81776e655d554f4b4948494b4f555c646d76818b96a1aca69b8f84786c6054483c3024180b00000005101b26303941474b4d4f51535557595a5751493f4042434444444342403e3b3945515c6875818d99a5a99d9084786c5f53473a2e2115090000000814202d3945515c6874808b97a2ada69a8f857a70675f58524f4d4c4d4f53596069727d88939eaaa89d9185796d6155493d3124180c000013202c3946535f6c798693a0acaca09386796c5f5346392c20130600000000000000000000000000000000000000000000000000000000000013202c3946535f6c798693a0acada09386796d6053463a2d2013070013202c3946535f6c798693a0aca79a8e8174675a4d4134271a0e01000a1723303d4a5663707d8a96a3b0a3968a7d7063564a3d3023170a000000000000000000000000000000000000000000000000000000000f1c2936424f5c6975828f9ca9b0a3968a7d7063564a3d3023170a000b1824313e4b5764717e8b97a4a79a8e8174675a4e4134281b0e0100121f2c3845515d69727373737373737373736b5f53473a2e211508000d1925303b464f565a5b5b5c697683909ca9aa9d9084776a5d5b5b5b5b5b5b5750483d32271b0f030013202c3946535f6c798693a0aca79a8e8174675a4d4134271a0e01000a1723303d4a5663707d8a96a3b0a3968a7d7063564a3d3023170a00000915212c38444f5b66717b869099a2988f87807a7775747576797e848c949e9c92887e73685d52463b2f23180c0000000c1825313d49545f6669655e575055616e7b8895a2978a7d7164574a3e3124170b00000000000000000000030e18222c343a3f42424242424242424242424242424242424242424242423f3a342c22180e030000101d2a3743505d6976838f9b8e82756963625e564c41362a1e11050000000000000000000000030f1c2835414d5a66727e8a97a3afab9f93887c7064594d42372c22180e0500000000000000000000000000010a141f2a35404c58636c6e6b67635f5b57534f4b443c33291e1307000013202c3946535f6c798693a0a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a79e9184776b5e5144382b1e1105000013202c3946535f6c798693a0a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a79e9184776b5e5144382b1e110500000000000000000000000b1724313e4a5764717d8a97a4a89b8e8174675b4e4134281b0e010000000000000000000d1925303c465059626b747d868f8f877e75717171717171717171717170685c5044382b1f12000a16212c3740484f525353535353535353535353535353535353535353524f4840372c21160a0000020e1a26323e4a56626d7985919ca7a69b8f857a6f655c534b443f3c3c3d3f444a525b656f7a85909ba7aca094897c7164584c4034271b0f020000000a141e272f363b3e40424446484a4c4d4b47484b4d4f50515151504f4d4a4744404c5864717d8995a2aca094887b6f62564a3d3124180b0000000c1824303d4955616d7985919ca8aca095897e73685e554d4642403f4043484e57606b76828d99a5ada2968a7d7165594d4034271b0e020013202c3946535f6c798693a0acaca09386796c5f5346392c20130600000000000000000000000000000000000000000000000000000000000013202c3946535f6c798693a0acada09386796d6053463a2d2013070013202c3946535f6c798693a0aca79a8e8174675a4d4134271a0e01000a1723303d4a5663707d8a96a3b0a3968a7d7063564a3d3023170a000000000000000000000000000000000000000000000000000000000f1c2936424f5c6975828f9ca9b0a3968a7d7063564a3d3023170a000b1724313e4a5764717d8a97a4a79a8d8174675a4d4134271a0e0100101c2935414c57606667676767676767676661594e43372b1f120600101d2935414d586167686868697683909ca9aa9d9084776a68686868686867625a4f43382b1f13060013202c3946535f6c798693a0aca79a8e8174675a4d4134271a0e01000a1723303d4a5663707d8a96a3b0a3968a7d7063564a3d3023170a00010d1925313d4955606c77828d98a29a90867c756e6a6867686a6d737a828c96a19a90857a6e63574c4034281c100400000e1a2734404d596571767069615a55616e7b8895a2978a7d7164574a3e3124170b0000000000000000000009141f2a343e454b4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4b453e342a1f14090000121e2b3844515e6b7784919a8d81736f6f6f685e52463a2d2114070000000000000000000000000c1925313d4a56626e7a86929eaab0a4988d81756a5f54493e342a20170f070100000000000000000000040b131c26303b46515d69747b77736f6b67635f5b564e453b2f24180c000013202c3946535f6c7986939a9a9a9a9a9a9a9a9a9a9a9a9a9a9a9a9a9a9a9a9a9a9a9a9a9a9a9a9a9a9a9a9a9a9a9a9a9a9a9a9a9184776b5e5144382b1e1105000013202c3946535f6c7986939a9a9a9a9a9a9a9a9a9a9a9a9a9a9a9a9a9a9a9a9a9a9a9a9a9a9a9a9a9a9a9a9a9a9a9a9a9a9a9a9a9184776b5e5144382b1e110500000000000000000000000b1724313e4a5764717d8a97a4a89b8e8174675b4e4134281b0e0100000000000000000008141f2a343e475059626b747c868f90877e756d656565656565656565645e564b4034281c100005101a252e373e4346464646464646464646464646464646464646464646433e372e251a1005000005111e2a36424e5a66727e8a96a1aca095897e73685e534a413933302f3033384049535d68737f8b96a2aea5998d8174685c5043372a1e1205000000020c151d252b2f323436383a3c3e42474c5054575a5b5d5d5e5d5d5b595754504c4855616d7a86929faba3978b7e7265594c4033271a0e0100030f1b2834404d5965717d8995a1ada79b8f84786d61574c433b36333334373d454f5a65717c8995a1a2a19a8d8175685c4f43362a1d11040013202c3946535f6c798693a0acaca09386796c5f5346392c20130600000000000000000000000000000000000000000000000000000000000013202c3946535f6c798693a0acada09386796d6053463a2d2013070013202c3946535f6c798693a0aca79a8e8174675a4d4134271a0e01000a1723303d4a5663707d8a96a3b0a3968a7d7063564a3d3023170a000000000000000000000000000000000000000000000000000000000f1c2936424f5c6975828f9ca9b0a3968a7d7063564a3d3023170a000a1724303d4a5763707d8a97a4a79a8d8173675a4d4034271a0d01000d1924303b454e55595a5a5a5a5a5a5a5a5a5650473d32261b0f0300121f2c3845515e6973757575757683909ca9aa9d90847775757575757575746b6054473b2e2115080013202c3946535f6c798693a0aca79a8e8174675a4d4134271a0e01000a1723303d4a5663707d8a96a3b0a3968a7d7063564a3d3023170a0004111d2935414d5965717d88949f9f94897e746b635e5b5b5b5e6168707a85909ba1968b8074685c5044382c20140700000e1b2834414e5b6774817a736c655e616e7b8895a2978a7d7164574a3e3124170b000000000000000000000d1925313c4650575b5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5b5750463c3125190d0000121f2c3845525f6b788592998c807c7c7c7a6e6255483b2f2215090000000000000000000000000915212e3a46525e6a76828e9aa5b1a99d92877b70655a50463c32292119120d0805030101010203060a0f151c252e38424c57636e7985837f7b77736f6b6760574c4034281c0f030013202c3946535f6c79868d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d84776b5e5144382b1e1105000013202c3946535f6c79868d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d84776b5e5144382b1e110500000000000000000000000b1724313e4a5764717d8a97a4a89b8e8174675b4e4134281b0e01000000000000000000030e18222c353e475059626a737c868f90887f766d645b58585858585857534d443a2f23180c000009131c252c32373939393939393939393939393939393939393939393937322c251c13090000000915212d3a46525e6a76838f9aa6a79b9084786d61574c42382f27232223272e37414c57626e7a86929eaaa99d9184786b5f53463a2d21140800000000030b13191f2325272a323940474d53585c60636668696a6b6a69686663605c5853515e6a7783909ca9a69a8d8174685b4f4236291d10040006121e2b3744505c6975818d9aa6afa3978b7f73675c50453b312a2726272b333d4854606c788591969594939184776b5e5245392c1f13060013202c3946535f6c798693a0acaca09386796c5f5346392c20130600000000000000000000000000000000000000000000000000000000000013202c3946535f6c798693a0acada09386796d6053463a2d2013070013202c3946535f6c798693a0aca79a8e8174675a4d4134271a0e01000a1723303d4a5663707d8a96a3b0a3968a7d7063564a3d3023170a000000000000000000000000000000000000000000000000000000000f1c2936424f5c6975828f9ca9b0a3968a7d7063564a3d3023170a000a1724303d4a5763707d8a96a3a69a8d807366594d4033271a0d000008131e29333c444a4d4d4d4d4d4d4d4d4d4d4a453e352b20150a000013202c3946535f6c79828282828284909ca9aa9d918482828282828282827b6f6255483c2f2215090013202c3946535f6c798693a0aca79a8e8174675a4d4134271a0e01000a1723303d4a5663707d8a96a3aca3968a7d7063564a3d3023170a000814202d3945515e6a76828e99a59a8f83776c6259524f4e4f51565e68737e8a96a29c9085786c6054483c3023170b00000e1b2834414e5b677481857e766f68616e7b8895a2978a7d7164574a3e3124170b00000000000000000000111d2936424d5862686969696969696969696969696969696969696969696862584d4236291d110000131f2c3946525f6c7986929b90898989887b6f6255483c2f22150900000000000000000000000005111d2a36424e5a65717d8994a0abaea3988d82776c62584e443b332b241e1915110f0e0e0e0e1013161b20272e374049545e69747f8b8f8b87837f7b7772685d5044372b1e11050013202c3946535f6c79818181818181818181818181818181818181818181818181818181818181818181818181818181818181818181776b5e5144382b1e1105000013202c3946535f6c79818181818181818181818181818181818181818181818181818181818181818181818181818181818181818181776b5e5144382b1e110500000000000000000000000b1724313e4a5764717d8a97a4a89b8e8174675b4e4134281b0e010000000000000000000006101a232c353e475058616a737c868f91887f766d64584c4b4b4b4b4b48423b32281d12070000010a131a21262a2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2a26211a130a010000000c1825313d4a56626e7a87939faba3978b7f73675c50453a30261d1715171c252f3a46525d6a76828e9ba7aca094877b6e6255493c2f23160a000000000001080e1319222b343c444b52585e64686c70737576777777767573706c68635e595b6774818d9aa6a99c9083776a5e5145382b1f1206000815212e3a47535f6c7885919da9ac9f93877b6e62574b3f34291f1a191b212c3844505d6975828a8988878686857a6d6054473a2e2114070013202c3946535f6c798693a0acaca09386796c5f5346392c20130600000000000000000000000000000000000000000000000000000000000013202c3946535f6c798693a0acada09386796d6053463a2d2013070013202c3946535f6c798693a0aca79a8e8174675a4d4134271a0e01000a1723303d4a5663707d8a96a3b0a3968a7d7063564a3d3023170a000000000000000000000000000000000000000000000000000000000f1c2936424f5c6975828f9ca9b0a3968a7d7063564a3d3023170a000a1723303d4a5663707d8996a3a6998c807366594d4033261a0d00000915202b363f474d515151515151515151514e4841372d22170c000013202c3946535f6c79868e8e8e8e8f95a0acaca1968f8e8e8e8e8e8e8e887b6f6255483c2f2215090013202c3946535f6c798693a0a0a09a8e8174675a4d4134271a0e01000a1723303d4a5663707d8a96a0a0a0968a7d7063564a3d3023170a000a1723303c4955616e7a86929ea2968a7e72665b5047424142454c57626d7985929ea195897d7064584b3f33261a0d01000e1b2834414e5b6774818e88817a736b6e7b8895a2978a7d7164574a3e3124170b00000000000000000000121f2c3845525e6a73757575757575757575757575757575757575757575736a5e5245382c1f12000013202c3946535f6c798693a099969695887b6f6255483c2f221509000000000000000000000000010d1925313d4955616c78838f9aa5b0a99e93897e746960564d453d352f2925211e1c1b1a1a1b1d1f22262b32394049525b65707a85909b97938f8b8783786b5e5145382b1e120500121f2c3845515d697273737373737373737373737373737373737373737373737373737373737373737373737373737373737373737371675c5043372a1d11040000121f2c3845515d697273737373737373737373737373737373737373737373737373737373737373737373737373737373737373737371675c5043372a1d11040000000000000003070a0b0b1724313e4a5764717d8a97a4a89b8e8174675b4e4134281b0e01000000000000000000000007101a232c353e464f58616a737c858e91898074685b4e423e3e3e3e3c37302920160c01000000010910161a1e1f20202020202020202020202020202020202020201f1e1a16100901000000020f1b2834404d5965727e8a97a3aca093877b6f63574b3f34291e140b090b131e2935414d5a66727f8b98a4afa3968a7d7064574b3e3125180b000000000000050f18222b343d464e555d636a6f74797c7f828384848483817f7c78746f6a645d65727e8b98a4ab9f9286796c6053463a2d211407000a1723303d4956626f7b8894a0ada99c9084776b5f52463a2e23170e0c0f1c2834414d5a67737e7d7c7b7b7a7978766c6053473a2d2114070013202c3946535f6c798693a0acaca09386796c5f5346392c20130600000000000000000000000000000000000000000000000000000000000013202c3946535f6c798693a0acada09386796d6053463a2d2013070013202c3946535f6c798693a0aca79a8e8174675a4d4134271a0e01000a1723303d4a5663707d8a96a3b0a3968a7d7063564a3d3023170a000000000000000000000000000000000000000000000000000000000f1c2936424f5c6975828f9ca9b0a3968a7d7063564a3d3023170a00091623303c4956636f7c8996a3a6998c807366594c403326190d00000e1a26323d4751595d5e5e5e5e5e5e5e5e5e5a53493f34281c10040013202c3946535f6c7986939b9b9b9ba0a8b2b2a8a09c9b9b9b9b9b9b95887b6f6255483c2f2215090013202c3946535f6c798693939393938e8174675a4d4134271a0e01000a1723303d4a5663707d8a93939393938a7d7063564a3d3023170a000d1926323f4b5864717d8a96a29f93877a6e62564a3e3634353a45515d6975828e9ba5998c8074675b4e4235291c1003000e1b2834414e5b6774818e938b847d766f7b8895a2978a7d7164574a3e3124170b0000000000000000000013202c3946535f6c79828282828282828282828282828282828282828282796c5f5346392c2013000013202c3946535f6c798693a0a5a3a295887b6f6255483c2f221509000000000000000000000000000915212d3844505b67727d89949faab0a59a90857b72685f574e47403a35312d2b2928272728292b2e32373d434a525b646d77828c97a2a39f9b958a7e73675b4f43372a1d110400101c2935414c576066676767676767676767676767676767676767676767676767676767676767676767676767676767676767676767655f564b3f33271b0f020000101c2935414c576066676767676767676767676767676767676767676767676767676767676767676767676767676767676767676767655f564b3f33271b0f02000000000002090f131618181825313e4b5864717e8b98a4a89b8e8174675b4e4134281b0e0100000000000000000000000007101a232c343d464f58616a737c858c837970665a4d41343232312f2b261f170e04000000000000050a0e1113131313131313131313131313131313131313131313110e0a05000000000005111e2a3743505c6975818e9aa6a99d9084776b5f53463a2e23170c0200010d1925313e4a5763707d8996a2afa5988c7e7265594c3f3326190d0000000000020c17212a343d464f5860676e757b8085898c8e90919191908e8c8885807b756f6863707c8996a2ada194877b6e6255483c2f221609000c1926323f4b5864717e8a97a3b0a69a8d8174685b4f43362a1e1206000d1926323f4b57636d71706f6f6e6d6c6b6a645a4f43372b1f12060013202c3946535f6c798693a0acaca09386796c5f5346392c20130600000000000000000000000000000000000000000000000000000000000013202c3946535f6c798693a0acada09386796d6053463a2d2013070013202c3946535f6c798693a0aca79a8e8174675a4d4134271a0e01000a1723303d4a5663707d8a96a3b0a3968a7d7063564a3d3023170a000000000000000000000000000000000000000000000000000000000f1c2936424f5c6975828f9ca9b0a3968a7d7063564a3d3023170a000916232f3c4955626f7c8996a2a5998c7f7265594c3f3226190c0000111d2a36424e59636a6b6b6b6b6b6b6b6b6a655b5044382c2013070013202c3946535f6c7986939e9e9e9ea0a7b0b4aaa29e9e9e9e9e9e9e95887b6f6255483c2f2215090013202c3946535f6c79868686868686868174675a4d4134271a0e01000a1723303d4a5663707d868686868686867d7063564a3d3023170a000f1b2835414e5a6773808c99a59d9084776b5e5246392d282935414d5966727f8b98a59c8f83766a5d5144382b1e1205000e1b2834414e5b6774818e97968f8881797b8895a2978a7d7164574a3e3124170b0000000000000000000013202c3946535f6c79868f8f8f8f8f8f8f8f8f8f8f8f8f8f8f8f8f8f8f86796c5f5346392c2013000013202c3946535f6c798693a0acafa295887b6f6255483c2f2215090000000000000000000000000004101c28333f4a56616c77828d98a2adaca1978d847a71696059524b46413d3a37353434343536383b3e43484e555c646d768089939ea8b0a59a8f84796d62564b3f33271b0e02000d1924303b454e55595a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5f646464646464615b5a5a5a5a5a5a5a5a5a5a5a5a5a5a59544d44392e23170b0000000d1924303b454e55595a5a5a5a5a5a5a5a5a5a5a5a5a5a5d636464646464635d5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a59544d44392e23170b0000000000050d141a1f2325252526333f4c5965727e8c98a5a89b8e8174675b4e4134281b0e010000000000000000000000000007101a222b343d464f58616a737c837a71675e54493d31252525231f1a140d050000000000000000000000000000000000000000000000000000000000000000000000000000000000000714202d3946525f6b7884919daaa79a8e8175685c4f43362a1e12060000000916222f3c4855626e7b8894a1aea69a8d8173675a4d4134271a0e000000000009141e28323c464f58616a727980868c9195989b9c9d9e9d9c9b9895918c86817a736b6e7b8894a1ada296897c7063564a3d3024170a000e1b2734414d5a6673808c99a6b1a4988b7e7265594c4033271a0e02000a16232f3b46515b626464636261605f5f5d5952483e33271b0f030013202c3946535f6c798693a0acaca09386796c5f5346392c20130600000000000000000000000000000000000000000000000000000000000013202c3946535f6c798693a0acada09386796d6053463a2d2013070013202c3946535f6c798693a0aca79a8e8174675a4d4134271a0e01000a1723303d4a5663707d8a96a3b0a3968a7d7063564a3d3023170a000000000000000000000000000000000000000000000000000000000f1c2936424f5c6975828f9ca9b0a3968a7d7063564a3d3023170a000916222f3c4955626f7b8895a2a5988c7e7265584c3f3225190c0000131f2c3945525e6b757777777777777777766d6154483b2e2215080013202c3946535f6c79869191919191959ea9ada2989191919191919191887b6f6255483c2f22150900131f2c3946525f6b76797979797979797972665a4d4034271a0e01000a1623303c4956626e7879797979797979786e6256493c3023160a00101d2a3643505c6975828f9ba79b8e8275685c4f43362a1d25313e4a5764707d8a96a39e9285796c5f5346392d201307000e1b2834414e5b67747e858c9399928b847c8895a2978a7d7164574a3e3124170b0000000000000000000013202c3946535f6c7986939c9c9c9c9c9c9c9c9c9c9c9c9c9c9c9c9c9386796c5f5346392c2013000013202c3946535f6c798693a0acaca295887b6f6255483c2f22150900000000000000000000000000000b17222e3944505b66717b86919ba5afa99f968c837a726a635d57514d49464442414041414345474b4f545960666e767f88919ba5b0a99e94897e73685c51453a2e22170b000008131e29333c444a4d4d4d4d4d4d4d4d4d4d4d4d4d4d4d4d4d4d4d4d545b626a7071717171716c63574d4d4d4d4d4d4d4d4d4d4d4d4d4c49433b32281d120600000008131e29333c444a4d4d4d4d4d4d4d4d4d4d4d4d4d4f5b666f71717171716f676059524d4d4d4d4d4d4d4d4d4d4d4d4d4d4d4d4d4d4d4c49433b32281d120600000000040e171f262b2f3132323236424e5b6774818d9aa6a79a8e8174675b4e4134281b0e010000000000000000000000000000071019222b343d464f58616a737971685f554c42382d21181816130f0902000000000000000000000000000000000000000000000000000000000000000000000000000000000000000916222f3c4855616e7a8793a0aca5988c7f7366594d4034271b0e020000000714212d3a4754606d7a8793a0ada79b8e8174675b4e4135281b0e0000000005101b25303a444e58616a737c838b91979da1a4a7a6a4a2a1a1a1a2a19c97928b857d756d798693a0aca4978b7e7164584b3e3225180c000f1c2935424f5b6875828e9ba7afa296897c7063574a3d3124180b000007121e2a353f4950565757565554535352514e4840362c21160b000013202c3946535f6c798693a0acaca09386796c5f5346392c20130600000000000000000000000000000000000000000000000000000000000013202c3946535f6c798693a0acada09386796d6053463a2d2013070013202c3946535f6c798693a0aca79a8e8174675a4d4134271a0e01000a1723303d4a5663707d8a96a3b0a3968a7d7063564a3d3023170a000000000000000000000000000000000000000000000000000000000f1c2936424f5c6975828f9ca9b0a3968a7d7063564a3d3023170a000915222f3c4855626f7b8895a2a5988b7e7165584b3f3225180c000013202c3946535f6c7984848484848484847b6f6255483c2f2215090013202c3946535f6c798484848484848d99a5aa9e918684848484848484847b6f6255483c2f22150900111e2a37434f5a646b6c6c6c6c6c6c6c6c6960564a3e3225190c00000815212e3a46525d676c6c6c6c6c6c6c6c6c675d52463a2e21150800111e2b3844515e6a7784909da6998d8073675a4d4134271b232f3c4955626f7b8895a1a094877a6d6154473b2e211508000d1a26333f4b57636c737a81888f96968e878a96a2978a7d7164574a3e3124170b0000000000000000000013202c3946535f6c798693a0a9a9a9a9a9a9a9a9a9a9a9a9a9a9a9a09386796c5f5346392c2013000013202c3946535f6c798693a0a0a0a095887b6f6255483c2f221509000000000000000000000000000006111d28333e49545f6a747f89939da6b0a89e958d847c756e68625d595552504f4e4d4d4e4f5154575b5f656b71788088919aa3adaba1978d82776c61564b4034291d12060000020d17212a32393d40404040404040404040404040404040414850575e666d747c7d7d7d7d7d74675a4d414040404040404040404040403d38312920160b01000000020d17212a32393d40404040404040404040404045515e6b777d7d7d7d7d79726b635c554d4640404040404040404040404040404040403d38312920160b01000000010c16202930373c3e3e3e3e4046525e6a76838f9ca8a69a8d8073675a4d4034271a0e01000000000000000000000000000000071019222b343d464f5861696c675f564d433a31261b100b0a07030000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000b1824313e4a5763707d8996a2afa4978a7e7164584b3e3225180c000000000713202d3a4653606d798693a0aca89b8e8275685b4e4235281c0f000000000b16212c37424c56606a737c858e959ca3a8a8a39e9a979594949496989b9f9d968f877e757885929eaba5988c7f7266594c3f3326190d00111d2a3743505d6a7683909ca9aea194887b6e6255483c2f2216090000020d18232d373f45494b4a49484847464544423d362e251a1005000013202c3946535f6c798693a0acaca09386796c5f5346392c20130600000000000000000000000000000000000000000000000000000000000013202c3946535f6c798693a0acada09386796d6053463a2d2013070013202c3946535f6c798693a0aca79a8e8174675a4d4134271a0e01000a1723303d4a5663707d8a96a3b0a3968a7d7063564a3d3023170a000000000000000000000000000000000000000000000000000000000f1c2936424f5c6975828f9ca9b0a3968a7d7063564a3d3023170a000815222e3b4855616e7b8895a1a4988b7e7165584b3e3225180b000013202c3946535f6c7986919191919191887b6f6255483c2f22150900131f2c3945525e6a7577777777777d8a96a3aa9d90847777777777777777766d6154483b2e221508000e1a26323e48525a5f5f5f5f5f5f5f5f5f5d574e44392d221609000005121e2a35414b555c5f5f5f5f5f5f5f5f5f5c554b41352a1e120500121f2c3845525f6b7885929ea5988c7f7265594c3f332619212e3b4754616d7a8794a0a195887b6e6255483c2f221509000b17232f3b46515a61686f767d848b929993959ca4978a7d7164574a3e3124170b0000000000000000000013202c3946535f6c798693a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a09386796c5f5346392c2013000013202c3946535f6c7986939393939393887b6f6255483c2f2215090000000000000000000000000000000b17222d38434d58636d77818b949ea7afa89f968e878079736e6965625f5d5b5b5a5a5b5c5e6063676b70767c838a929aa3acaca2998f857b70665b50453a2f23180c01000000050f1820272d3133343434343434343434343434363d444c535a616970777f868a8a8a8a8174675a4d41343434343434343434343433312c271f170e040000000000050f1820272d3133343434343434343434343845515e6b78838a8a8a8a847c756e665f585149423b3434343434343434343434343433312c271f170e040000000007121d28323b42484b4b4b4b4c5058636e7a86929faba5988b7e7265594c3f3326190d0000000000000000000000000000000000071019222b343d464f585e5f5c554d433a31281f150a000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000d1a26333f4c5965727e8b98a4b0a3968a7d7063574a3d3024170a000000000713202d3a4653606d798693a0aca89b8f8275685b4f4235281c0f00000006111c28333e49535e68727c868f97a0a7aba39d97928e8b89888788898c8f93989d9991887e7784919eaaa69a8d8073675a4d4034271a0e00121e2b3844515e6b7784919eaaada093867a6d6054473a2d21140700000007111b242d34393d3e3d3d3c3b3a39383735312b241c130900000013202c3946535f6c798693a0acaca09386796c5f5346392c20130600000000000000000000000000000000000000000000000000000000000013202c3946535f6c798693a0acada09386796d6053463a2d2013070013202c3946535f6c798693a0aca79a8e8174675a4d4134271a0e01000a1723303d4a5663707d8a96a3b0a3968a7d7063564a3d3023170a000000000000000000000000000000000000000000000000000000000f1c2936424f5c6975828f9ca9b0a3968a7d7063564a3d3023170a000815212e3b4854616e7b8894a1a4988b7e7164574b3e3124180b000013202c3946535f6c7986939e9e9e9e95887b6f6255483c2f22150900111d2a36424e5963696a6a6a6a6e7a8794a0aa9d9084776a6a6a6a6a6a6a6a645b5044382c201307000a16212c3740484f525353535353535353514c453c32281d11050000020d19242f39434a50535353535353535353504a43392f24190d020013202c3946525f6c7986929fa5988b7e7165584b3f322518202d3a4753606d798693a0a296897c6f6255493c2f2216090007131e2a353f4850575e656c737a81888f969da0a0978a7d7164574a3e3124170b0000000000000000000013202c3946535f6c79869393939393939393939393939393939393939386796c5f5346392c2013000013202c3946535f6c7986868686868686867b6f6255483c2f22150900000000000000000000000000000005101b26313c46515b656f79828c959da6aea8a098918b847e7a75716e6c6a6867676767696a6c6f73777c81878e959ca4acaba29a90877d73695f54493e33281d12070000000000060e161c2125272727272727272727272a313940474f565d656c737a82899197938a81776e64584c4033272727272727272727272624211b150d0500000000000000060e161c2125272727272727272727272a3743505c67717a848d96968e878078716a625b544c453e362f282727272727272727272624211b150d0500000000000c18232f3a444d5357585858595c616a74808b97a3afa296897d7064574a3e3125180b000000000000000000000000000000000000071019222b343d464d5153504b433a31281f160d03000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000e1b2834414e5a6774818d9aa6b0a396897c7063564a3d3023170a000000000814212e3a4754606d7a8793a0ada89b8e8275685b4e4235281b0f0000000b16222d39444f5a65707a848e97a1a9a9a199928c86827e7c7b7a7b7d7f83878c92999a90867c84909daaa79a8e8174675b4e4134281b0e00121f2c3845525f6b7885929eabac9f9286796c5f5346392c2013060000000009121b22292d303131302f2e2d2c2c2b2925201a120a0100000013202c3946535f6c798693a0acaca09386796c5f5346392c20130600000000000000000000000000000000000000000000000000000000000013202c3946535f6c798693a0acada09386796d6053463a2d2013070013202c3946535f6c798693a0aca79a8e8174675a4d4134271a0e01000a1723303d4a5663707d8a96a3b0a3968a7d7063564a3d3023170a000000000000000000000000000000000000000000000000000000000f1c2936424f5c6975828f9ca9b0a3968a7d7063564a3d3023170a000814212e3b4754616d7a8794a1a4978a7d7164574a3e3124170b000013202c3946535f6c798693a0ababa295887b6f6255483c2f221509000e1a26313d4751585d5d5d5d5f6b7884919daa9d9084776a5d5d5d5d5d5d5d5952493f34281c10040005101a252e373e4346464646464646464645413b332a21160b0000000008131d2731393f44464646464646464646443f3931271d1308000013202c3946535f6c798693a0a5988b7e7165584b3e322518202d3a4653606d798693a0a296897c6f6356493c3023160900020d18232d363e454c535a61686f767d848b929393938a7d7164574a3e3124170b0000000000000000000013202c3946535f6c79868686868686868686868686868686868686868686796c5f5346392c20130000131f2c3946525f6b767979797979797979786d6155483b2f221508000000000000000000000000000000000a15202a353f49535d677079838b949ca4abaaa39c96908a86817e7b787675747373747577797c7f83888d92989fa6aea9a19990887e756b61574d42382d22170c01000000000000040b1115181a1a1a1a1a1a1a1f262d353c434b525960686f767e858c949b948a81786f655c52473c30241a1a1a1a1a1a1a1a1a1a1815100a03000000000000000000040b1115181a1a1a1a1a1a1a1a1a1b2834404b565f68717b848d9799918a837b746d655e574f48413a322b241c1a1a1a1a1a1a1a1815100a03000000000000101c2834404b565e6465656566686c737c86919ca7ab9f93867a6d6155483c2f23160900000000000000000000000000000000000000071019222b343b41454644403931281f160d040000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000101c2936424f5c6875828e9ba8b0a3968a7d7063564a3d3024170a000000000a16232f3c4855626e7b8894a1aea79a8d8174675a4e4134281b0e000004101c27333f4a55616c76818c96a0a9aaa0978f87807a75726f6e6d6e7073767b81878e96988d8283909da9a89b8e8275685b4e4235281c0f00131f2c3946525f6c7986929facac9f9285786b5f5245392c1f120600000000000911171d2124242423222121201f1e1c19150f08000000000013202c3946535f6c798693a0acaca09386796c5f5346392c20130600000000000000000000000000000000000000000000000000000000000013202c3946535f6c798693a0acada09386796d6053463a2d2013070013202c3946535f6c798693a0aca79a8e8174675a4d4134271a0e01000a1723303d4a5663707d8a96a3b0a3968a7d7063564a3d3023170a000000000000000000000000000000000000000000000000000000000f1c2936424f5c6975828f9ca9b0a3968a7d7063564a3d3023170a000714212e3a4754616d7a8794a0a4978a7d7063574a3d3124170a000013202c3946535f6c798693a0acafa295887b6f6255483c2f221509000915202b353f474d505151515c6975828e9ba79d9084776a5d5151515151504e4840372d22170b00000009131c252c32373939393939393939393835302921180f0400000000010c151f272e343739393939393939393937342e271f150c01000013202c3946535f6c7986929fa5988b7e7165584b3e322518202d3a4653606d798693a0a296897c6f6255493c2f231609000007111b242c343a41484f565d646b72798086868686867d7164574a3e3124170b00000000000000000000131f2c3946525f6b76797979797979797979797979797979797979797979766b5f5246392c1f130000111e2a37434f5a646b6c6c6c6c6c6c6c6c6c665c5145392d20140700000000000000000000000000000000030e18232d37414b555e677079828a9299a0a7ada7a19b96928d8a8785838281818181828486888b8f93989ea4aaaca59e978f877e756c63594f453b31261b110600000000000000000005090c0d0d0d0d0d17202930383f464e555c646b727981888f979d948b81786f665d534a41362b1f140d0d0d0d0d0d0d0d0d0b08040000000000000000000000000005090c0d0d0d0d0d0d0d0d0d17232e39444d565f69727b858e979c958d867e777069615a534b443d352e261d140d0d0d0d0d0b08040000000000000000121f2b3844505c68707171717274787e858e98a2ada69a8e82766a5e5245392d2014070000000000000000000000000000000000000000071019222a3035383938342f281f160d04000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000111d2a3743505d6a7683909ca9b0a4978a7d7164584b3e3225190d050202040e1a26323e4b5764707d8996a3afa5998c807366594d4033271a0d00000814202c38444f5b66727d88939ea8aca2988e857d756f69656361616263666b70767c848c95948883909ca9a89c8f8275685b4f4235291c0f0013202c3946535f6c7986929facab9e9285786b5e5145382b1f1205000000000000060c111517181716161514131211100d090400000000000013202c3946535f6c798693a0acaca09386796c5f5346392c20130600000000000000000000000000000000000000000000000000000000000013202c3946535f6c798693a0acada09386796d6053463a2d2013070013202c3946535f6c798693a0aca79a8e8174675a4d4134271a0e01000a1723303d4a5663707d8a96a3b0a3968a7d7063564a3d3023170a000000000000000000000000000000000000000000000000000000000f1c2936424f5c6975828f9ca9b0a3968a7d7063564a3d3023170a000714202d3a4753606d7a8794a0a3968a7d7063574a3d3024170a000013202c3946535f6c798693a0acafa295887b6f6255483c2f22150900040f19232d353c414444444d5966727f8b98a49d9084776a5d504444444444423d362e251b1106000000010a131a21262a2c2c2c2c2c2c2c2c2c2c29241f170f06000000000000030d151c23282b2c2c2c2c2c2c2c2c2c2b28231c150d03000000121f2c3945525f6b7885929fa5988c7e7265584c3f322619212e3a4754606d7a8794a0a295887b6f6255483c2f22160900000009121a222930373e454c535a61686f757979797979796f63574a3d3124170a00000000000000000000111e2a37434f5a646b6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6b645a4f43372a1e1100000e1a26323e48525a5f5f5f5f5f5f5f5f5f5f5b544a4034291d1104000000000000000000000000000000000007111b252f39434c555e67707880888f959ca2a7aca7a29e9a969491908e8e8d8d8e8f909295989b9fa4a9aba6a09a948d857d756c635a51473d33291f140a0000000000000000000000000000000009141f29323b424951585f676e757d848b939a9e948b82786f665d544b41382f241a0e03000000000000000000000000000000000000000000000000000000000000000000000007121d28323b444d576069727b858e979f989089827a736c645d564e4740382f251b1005000000000000000000000000000013202c3946535f6c797e7e7e7f8184898f97a0aaa99f94897d72665a4e4236291d11040000000000000000000000000000000000000000000710181f25292c2c2b28231d160d0400000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000111e2b3844515e6b7784919eaab2a5998c8073665a4e41352a1f16110f0f10161f2a36424e5a6773808c98a5b0a3978a7e7164584b3f3225190c00000c1825313d4954606c78838e9aa5afa59a90867c736b645e5956555455575a5f646b727a838d97908d949faba99c8f8275695c4f4236291c0f0013202c3946535f6c7986939facab9e9285786b5e5145382b1e12050000000000000004080b0d0d0c0b0a09080706050401000000000000000013202c3946535f6c798693a0acaca09386796c5f5346392c20130600000000000000000000000000000000000000000000000000000000000013202c3946535f6c798693a0acada09386796d6053463a2d2013070013202c3946535f6c798693a0aca79a8e8174675a4d4134271a0e01000a1723303d4a5663707d8a96a3b0a3968a7d7063564a3d3023170a000000000000000000000000000000000000000000000000000000000f1c2936424f5c6975828f9ca9b0a3968a7d7063564a3d3023170a000713202d3a4653606d7986939797968a7d7063564a3d3023170a000013202c3946535f6c798693a0a4a4a295887b6f6255483c2f221509000007111b232a303537373e4a5763707c8995a19d9084776a5d50443737373735312c251c13090000000000010910161a1e1f20202020202020201f1d19130d060000000000000000030b12171c1e2020202020202020201e1c17120b0300000000121e2b3845515e6b7784919da6998c807366594d4033271a222f3b4855616e7b8894a1a194877b6e6154483b2e221508000000000910171e252c333a41484f565d646b6c6c6c6c6c6c675e53473b2e221609000000000000000000000e1a26323e48525a5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5a52483e32261a0e00000a16212c3740484f52535353535353535352504a42382e23180c0000000000000000000000000000000000000009141d27313a434c555e666e767d848b91969ca1a5a9aaa6a3a09e9c9b9a9a9a9a9b9d9fa1a4a7aba8a49f9a958f89827b736b635a51483f352b21170d03000000000000000000000000000000020e1a25303b444d545b626a717880878e969d9e958c827970665d544b42392f261d1308000000000000000000000000000000000000000000000000000000000000000000000000010c162029323b454e576069737c858e98a19b938c857d766f676059524a41372d21160a000000000000000000000000000013202c3946535f6c79868b8b8c8d90949aa1a9a9a1978d83786c61554a3e3226190d0100000000000000000000000000000000000000000000060d14191d1f201f1c18120b040000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000121f2c3845525f6b7885929eabb4a89b8f82766a5e52463b3128211d1c1b1d2128313c47535e6a76838f9ba8ada194887b6f6256493d3024170a0004101c2935414d5965717d8994a0aba99e93887e746a6159524d4a4847484a4e53596068717b858f9a9a9ea6b1a99c8f8275695c4f4236291c0f00131f2c3946525f6c7986929facab9e9285786b5f5245382c1f12050000000000030a101518191a1918171615141312100d090300000000000013202c3946535f6c798693a0acaca09386796c5f5346392c20130600000000000000000000000000000000000000000000000000000000000013202c3946535f6c798693a0acada09386796d6053463a2d2013070013202c3946535f6c798693a0aca79a8e8174675a4d4134271a0e01000a1723303d4a5663707d8a96a3b0a3968a7d7063564a3d3023170a000000000000000000000000000000000000000000000000000000000f1c2936424f5c6975828f9ca9b0a3968a7d7063564a3d3023170a000613202d3946535f6c79868a8a8a8a897c6f6356493c30231609000013202c3946535f6c7986939797979795887b6f6255483c2f2215090000000911191f25282a2f3b4854606d7986929f9d9084776a5d5044372a2a2a2925201a130a0100000000000000050a0e1113131313131313131312100d08020000000000000000000000060b0f12131313131313131313120f0b06000000000000111d2a3743505d6976838f9ca79a8e8174685b4e4235291c24303d4a56636f7c8995a29f9386796d6053473a2d2014070000000000060d131a21282f363d444b52595e5f5f5f5f5f5f5c554c41362b1f1206000000000000000000000a16212c3740484f52535353535353535353535353535353535353535353524f4840372c21160a000005101a252e373e4346464646464646464646433f3830261c120700000000000000000000000000000000000000020c151f28313a434c545c646b727980858b9095999da0a3a5a7a9a9a8a7a7a7a7a8a9a9a7a5a29f9c98948f8a847e777069615951483f362d231910050000000000000000000000000000000005121e2a36424c565e666d747c838a9299a09e958c837970675e544b423930261d140b0100000000000000000000000000000000000000000000000000000000000000000000000000040e172029333c454e57616a737c868f98a19e978f888179726b635c53493e32261a0e020000000000000000000000000013202c3946535f6c79869398989a9ca0a5a8a49e978f857b71665b5044392d21150900000000000000000000000000000000000000000000000002080d10121312100c0701000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000131f2c3946525f6c7986929facb7aa9e92867a6e63574d433a322d2a2828292d323a434d58636f7b87939fabaa9e9185796c6053473a2e211508000713202c3845515d6975818d99a5afa4988d82766c62584f47413d3b3b3c3e42484f565f69737d88949faab0b5a99c8f8275695c4f4236291c0f00121f2c3945525f6b7885929eabac9f9285786c5f5245392c1f130600000000050e151b21242626252423232221201f1d19140e07000000000013202c3946535f6c798693a0acaca09386796c5f5346392c20130600000000000000000000000000000000000000000000000000000000000013202c3946535f6c798693a0acada09386796d6053463a2d2013070013202c3946535f6c798693a0a6a69a8e8174675a4d4134271a0e01040a1723303d4a5663707d8a96a3a6a3968a7d7063564a3d3023170a000000000000000000000000000000000000000000000000000000000f1c2936424f5c6975828f9ca9b0a3968a7d7063564a3d3023170a000613202c3946535f6c787d7d7d7d7d7d7b6f6255493c2f231609000013202c3946535f6c79868a8a8a8a8a8a887b6f6255483c2f22150900000000070e14191c1f2c3845515e6a7783909c9d9084776a5d5044372a1e1e1c19150f08010000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000f1c2835424e5b6774818d9aa69c8f83766a5d5144382c2527333f4c5865717e8b97a49d9184776b5e5245382c1f1206000000000000020910171e252c333a41484e52535353535353504b433a30251a0e020000000000000000000005101a252e373e434646464646464646464646464646464646464646464646433e372e251a100500000009131c252c32373939393939393939393937332d261e140b000000000000000000000000000000000000000000030d161f28313a424a525961676e747a7f84898d909496999b9c9e9e9f9f9f9f9e9d9c9a989693908c88837e78736c665f574f473f362d241b110800000000000000000000000000000000000814212e3a46525e6870777f868d959ca09f958c837a70675e554c423930271e140b02000000000000000000000000000000000000000000000000000000000000000000000000000000050e17212a333c454e58616a737c868f98a0a09a928b847c756e655a4f42362a1d10040000000000000000000000000013202c3946535f6c798693a0a0a0a09f9e9b98938c857c73695f554a3f33281c1105000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000013202c3946535f6c7986939facb9aea2968b7f74695e554c443e3936353536393d444c555f6a75808c97a3afa69a8e8275695d5044382b1f1206000a16232f3b4854616d7985929eaaab9f93877b70655a50463d36312e2e2f32373d444d57616c77828e9aa5b2b5a89c8f8275695c4f4236291c0f00121e2b3845515e6b7784919eaaac9f9386796c5f5346392d201307000000040e171f272c3133333231302f2e2d2c2b29251f1911080000000013202c3946535f6c798693a0acaca09386796c5f5346392c20130600000000000000000000000000000000000000000000000000000000000013202c3946535f6c798693a0acada09386796d6053463a2d2013070013202c3946535f6c7986939a9a9a9a8e8174675a4d4134271a120c0f151923303d4a5663707d8a969a9a9a968a7d7063564a3d3023170a0000000000000000000000000000000000000000000005090c0d0d0d0f1c2936424f5c6975828f9ca9b0a3968a7d7063564a3d3023170a0005121e2b3844505c676f70707070707070695e53473a2e211508000013202c3946535f6c787d7d7d7d7d7d7d7d7b6e6255483c2f221509000000000003080c101d2936424f5b6774818d93939084776a5d5044372a1d11100d090400000000000000000000000000000000000000000004060707050300000000000002050708080603000000000000000000000000000000000000000000000d1a26333f4c5865717e8a97a39e9285796d6054483c33323237434f5b6874818d99a69a8e8275685c4f43362a1d11040000000000000000050c131a21282f363d424546464646464644403931281e130800000000000000000000000009131c252c3237393939393939393939393939393939393939393939393937322c251c130900000000010a131a21262a2c2c2c2c2c2c2c2c2c2c2b27221c140c0200000000000000000000000000000000000000000000040d161f28303840484f565d63696e73787c8184878a8c8e9091929292929292908f8e8c898683807c77726d67615b544d453d352d241b12090000000000000000000000000000000000000916222f3c4955626f7a82899193939393938d837a71685e554c433a30271e150c020000000000000000000000000000000000000000000000000000000000000000000000000000000000050f18212a333c464f58616a747d869093939393938e8780776b5e5145382b1e12050000000000000000000000000013202c3946535f6c7986939393939392918f8c87827b736a61584d43382d22170b000000000000000000000000000000000000000000000000000000000000000000000000050a0d0f0f0f0f0f0f0f0f0f0f0d0a0500000000000000000000000001070b0d0f0f0f0f0f0f0f0f0f0e0c090400000000000000000013202c3946535f6c798693a0acb5ada79c90857b70675e564f49454342424345494e565e67717b86919da8aca195897d7165594d4134281c0f03000c1925323e4b5764707c8995a1aea79b8e82766b5f54493e342b25222122262b323b454f5a66717d8995a1aeb5a89b8f8275685b4f4235281c0f00111e2a3744505d6a7683909da9ada093877a6d6054473a2e2114080000010c16202931383d40403f3e3d3c3b3a393835312a231a110700000013202c3946535f6c798693a0acaca09386796c5f5346392c20130600000000000000000000000000000000000000000000000000000000000013202c3946535f6c798693a0acada09386796d6053463a2d2013070013202c3946535f6c79868d8d8d8d8d8d8174675a4d413427231d171b212528303d4a5663707d8a8d8d8d8d8d8a7d7063564a3d3023170a0000000000000000000000000000000000000000040b1115181a1a1a1a1c2936424f5c6975828f9ca9b0a3968a7d7063564a3d3023170a00030f1c28343f4b555d63636363636363635f574d42362a1e12060000121e2b3844505c676f707070707070707070695e52463a2d21140800000000000000010e1a26333f4c5865717e8686868684776a5d5044372a1d110400000000000000000000000000000000000000000001070c10131414120f0a05000002080e11141514130f0b0500000000000000000000000000000000000000000b1724303d4956626e7b87939fa195897c7065594e44403e3f424954606b7784909ca3978b7e7266594d4034271b0e0200000000000000000001080f161d242b32363939393939393938342e271f160c02000000000000000000000000010a131a21262a2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2a26211a130a010000000000010910161a1e1f2020202020202020201e1b17110a02000000000000000000000000000000000000000000000000040d161e262e363d444b51575d63686c7074787b7d808283848586868685858483817f7d7a77736f6b67615c565049423b332b231b1209000000000000000000000000000000000000000916222f3c4955626f7c8686868686868686847a71685f564c433a31281e150c0300000000000000000000000000000000000000000000000000000000000000000000000000000000000000060f18212a343d464f58626b747d868686868686868685786b5e5145382b1e12050000000000000000000000000013202c3946535f6c79868686868686868482807b76706961584f463c31271c110600000000000000000000000000000000000000000000000000000000000000000000040b1116191b1c1c1c1c1c1c1c1c1b1916110b04000000000000000000060d12171a1c1c1c1c1c1c1c1c1c1b19151009020000000000000013202c3946535f6c798693a0acada39b98978c82797068605a5552504e4e4f51555a60677079838d98a3aea69b9084786d6155493d3125180c00000e1b2734414d5a66737f8c98a5b0a3978b7e72665a4e42372c22191514161a2129333e4955616d7985929eabb4a89b8e8174685b4e4235281b0f00101c2936424f5c6875828e9ba8aea194887b6e6255483c2f221609000007121d28323b43494c4d4b4b4a4948474645413c352c23180e02000013202c3946535f6c798693a0acaca09386796c5f5346392c20130600000000000000000000000000000000000000000000000000000000000013202c3946535f6c798693a0acada09386796d6053463a2d2013070013202c3946535f6c79808080808080808074675a4d4135332e2821252c3134363d4a5663707d808080808080807d7063564a3d3023170a00000000000000000000000000000000000000070f161c212526262626262936424f5c6975828f9ca9b0a3968a7d7063564a3d3023170a00000b17232e39434c525657575757575756534d453b31251a0f0400000f1c28343f4b555d636363636363636363635f574d42362a1e120500000000000000000b1724303d4956626e78797979797974695c5043362a1d10040000000000000000000000000000000000000000050c12181c1f21201e1b161008050d14191e2022211f1b161009030000000000000000000000000000000000000815212d3a46525e6b77838f9aa5998d81756a5f56504c4b4c4e535b65707c8894a09e93877b6e62564a3d3125180c000000000000000000000000050c131a20262a2c2c2c2c2c2c2c2b28231d150d040000000000000000000000000000010910161a1e1f2020202020202020202020202020202020202020201f1e1a161009010000000000000000050a0e1113131313131313131313120f0b06000000000000000000000000000000000000000000000000000000040c141c242b333a40464c52575c6064686b6e717375767778797979797877767472706d6a67635f5b56514b453e383129211a110900000000000000000000000000000000000000000916222f3c4855616e7879797979797979797971685f564d433a31281f160c03000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000060f18222b343d475059626b75797979797979797979756a5e5144382b1e120500000000000000000000000000131f2c3946525f6b76797979797979797876736f6b655e574f463d342a1f150a00000000000000000000000000000000000000000000000000000000000000000000050e151c22262828282828282828282826221c160e06000000000000000810181e23262828282828282828282825201b140c0300000000000013202c3946535f6c798693a0aca89c918b91948b8279726b66615e5c5b5b5c5e61656b7279828b959fa9aa9f958a7e73685c5044392d2115080000101c2936424f5c6875828e9ba7ada194887b6f62564a3e32261b1009080a0f17222d3945515d6976828f9ca8b3a79a8d8174675a4d4134271b0e000e1b2834414e5a6773808d99a6afa396897d7063574a3e3124180b00000c18232f3a444d54595958575655545352514d473e342a1f1408000013202c3946535f6c798693a0acaca09386796c5f5346392c20130600000000000000000000000000000000000000000000000000000000000013202c3946535f6c798693a0acada09386796d6053463a2d20130700121f2b3845515d687173737373737373736e64584c42423f3a332b2f373d4142424854606b7373737373737373736b6054483c2f22160900000000000000000000000000000000000006101921282d3133333333333336424f5c6975828f9ca9b0a3968a7d7063564a3d3023170a0005101b26303941474b4c4c4c4c4c4c4c4c4b49443d352b21160b00000b17232e39434c5256575757575757575756534d453b30251a0e0200000000000000000815212d3a46525d666c6c6c6c6c6c6a62584c4034281b0f02000000000000000000000000000000000000030910161d23292c2e2d2b27211a120f171f252a2d2e2e2b27211b140e07000000000000000000000000000000000005121e2a36424e5a66727e8a95a09e92877c7168615c5958585a5e646d77828d99a4998e82766a5e52463a2e2215090000000000000000000000000001080f151a1d1f2020202020201f1c17120b040000000000000000000000000000000000050a0e111313131313131313131313131313131313131313131313110e0a050000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000020a121a21282f353b41464b5054585c5f62646668696b6b6c6c6c6c6b6a69686664615e5b57534f4a453f3a332d261f1710080000000000000000000000000000000000000000000714202d3945515c666c6c6c6c6c6c6c6c6c6c685f564d443b31281f160d040000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000061019222b343e475059626a6c6c6c6c6c6c6c6c6c6b63594e4235291d100300000000000000000000000000111e2a37434f5a646b6c6c6c6c6c6c6c6b6967635f5a544d453d342b22180e03000000000000000000000000000000000000000000000000000000000000000000040e1720272d3235353535353535353535322e2720180e04000000000007111a22292f3335353535353535353534312c251e150c01000000000013202c3946525f6c7986929faca6998c808a95948b847d76726e6b696868696a6d71767c848b949da7aca2988e83786d62574b4034281c10040000111e2b3744515d6a7783909da9ab9f9285796c6053473a2e22150a00000005101c2835414e5b6774818d9aa7b2a6998c807366594d4033271a0d000d1926323f4c5865717e8b97a4b0a4988b7e7265594c4033271a0e02030f1c2834404b565f65666564636261605f5e5850463b3024180c000013202c3946535f6c798693a0acaca09386796c5f5346392c20130600000000000000000000000000000000000000000000000000000000000013202c3946535f6c798693a0acada09386796d6053463a2d20130700101c2935414c5760656666666666666666645c524f4f4e4b453d333941494d4f4f4f4f596266666666666666666662594f44382c2014070000000000000000000000000000000000030e18222b32393d40404040404040424f5c6975828f9ca9b0a3968a7d7063564a3d3023170a000a16212d38424b5357585858585858585858554f473d32271c10040006121d27313a41474a4a4a4a4a4a4a4a4a4a47423b33291f140900000000000000000005111d2935404b545c5f5f5f5f5f5f5e5950463b3024180c000000000000000000000000000000000000070e141b21282f34383a3a37322c241b17212930363a3b3a38332c261f18120b05000000000000000000000000000000020e1a26323e4a56616d78848e99a3988d837a726c68666565676a6f767f89939e9e93887d71655a4e42362a1e120600000000000000000000000000000004090e1113131313131313120f0c07000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000080f161d242a30353a3f44484c4f5255585a5b5d5e5f5f5f5f5f5e5e5c5b595755524f4b47433e39342e28221b140d050000000000000000000000000000000000000000000005111d2935404b545b5f5f5f5f5f5f5f5f5f5f5d564e443b32291f160d0400000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000071019222c353e4750595e5f5f5f5f5f5f5f5f5f5e5951473d3125190d01000000000000000000000000000e1a26323e48525a5f5f5f5f5f5f5f5f5e5d5a57534e48423b332b22191006000000000000000000000000000000000000000000000000000000000000000000000b16202931393e414242424242424242413e39322a20160c01000000030e19232c343a3f424242424242424242413d3730271d13090000000000121f2c3945525f6b7885929faba6998c80838d98968e88827d7a7775757575777a7d82878e959da6aca39a90867c71675c51453a2f23170c000000121f2c3845525e6b7885919eabaa9d9084776a5e5144382b1f1206000000000d1a2733404d596673808c99a6b1a5988b7e7265584c3f3225190c000b1724303d4956626f7b8894a1ada69a8d8174685b4f43362a1e120b0a121e2b3744505c6871737271706f6e6d6c6a62584d4134281c0f030013202c3946535f6c798693a0acaca09386796c5f5346392c20130600000000000000000000000000000000000000000000000000000000000013202c3946535f6c798693a0acada09386796d6053463a2d201307000c1824303a454e555959595959595b5c5c5c5c5c5c5c5b564f453b414b53595c5c5c5c5c5c5c5c595959595959595650473d33271c1004000000000000000000000000000000000009141f2a343d444a4c4d4d4d4d4d4d4d4f5c6975828f9ca9b0a3968a7d7063564a3d3023170a000d1a26323e49545d6465656565656565656561594f44382c201407000b17222d38424a5155555555555555555555524c433a2f24190d010000000000000000010d19242f39424a50535353535353524e473e352a1f140800000000000000000000000000000000030b12181f262c333940454746433e362d241f29333b41464847443e37312a231d160f080000000000000000000000000000000a16222d3945505c67727d87929b9f958c847d787472717273767a8188919b9f968c81766b6055493d32261a0e0200000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005090c0d0d0d0d0d0d0d0d0d0c090500000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000050c12191e242a2f34383c404346494b4d4f505152525352525251504e4d4b4845423f3b37322e28231d17100a030000000000000000000000000000000000000000000000010d18242e39424a5053535353535353535353514c443c322920170d0400000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000007101a232c353e474e52535353535353535353524e483f362b20150900000000000000000000000000000a16212c3740484f525353535353535352504e4b47423d373029211910070000000000000000000000000000000000000000000000000000000000000000000006111c27323b434a4e4f4f4f4f4f4f4f4f4e4a443c32281d12060000000915202b353e464b4e4f4f4f4f4f4f4f4f4d4942392f251a0f0300000000121f2b3845515e6b7885919eaba69a8d807c868f9999938e8a8684828282828486898e9399a0a7aaa29a91887e746a60554a3f34291e1207000000131f2c3946525f6c7986929faca99c8f8276695c504336291d1003000000000d1a2633404d596673808c99a6b0a3968a7d7064574a3e3124180b000815212e3a4753606c7885919eaaa99c9084776b5f53463a2f231a171718222e3a46535f6c78807e7d7c7b7b797974695d5043372a1d11040013202c3946535f6c798693a0acaca09386796c5f5346392c20130600000000000000000000000000000000000000000000000000000000000013202c3946535f6c798693a0acada09386796d6053463a2d2013070008131e29333c43494c4d4d4e586268696969696969696761574c4047525d656969696969696969645c514d4d4d4d4a453e352c21160b0000000000000000000000000000000000010e1a25313b464e555959595959595959595c6975828f9ca9b0a3968a7d7063564a3d3023170a00101c2935424e5a666f7272727272727272726b6054483c2f231609000f1b27333f4a545c616262626262626262625d564c41352a1d110500000000000000000007121d2730383f4446464646464645423c352c23180e02000000000000000000000000000000030c151d232a31373e444b5154534f4840362b26313b454c5255544f49423b352e28211a1209000000000000000000000000000005111d28343f4a56606b758089929a9e968f8984817f7e7e8082868c929a9e968d847a70655a4f44382d211509000000000000000000000000000000000206090c0f1112121212110f0d0a0602000000000000000000000000000000000000040b1115181a1a1a1a1a1a1a1a1a1815110b0400000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001070d13191e23282c3033373a3c3e40424344454646464645444342403e3c3936332f2b27221d18120c06000000000000000000000000000000000000000000000000000007121d2730383f444646464646464646464644403a322a20170e05000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000008111a232c353c424546464646464646464645423d362d24190f04000000000000000000000000000005101a252e373e4346464646464646464544413f3b37322c261f170f0700000000000000000000000000000000000000000000000000000000000000000000000a16222e39434d555a5b5b5b5b5b5b5b5b5a554e443a2e23170b0000020e1a26313c4750575b5b5b5b5b5b5b5b5b59534b41362b1f140700000000111e2b3744515d6a7784909daaa79a8d81747d878f979e9a9693918f8e8e8f9092969a9ea4aaa69f9890887f766c62584e43392e23180c0100000013202c3946535f6c798693a0aca89c8f8275685b4f4235291c0f02000000000e1a2734404d5a6773808d9aa6aea195887b6f6256493c3023160a0006121f2b3844505d6975828e9aa6aca093877b6f63574b40352b2624242529333e4a56626f7b878b8a8988878683766a5d5044372a1e11040013202c3946535f6c798693a0acaca09386796c5f5346392c20130600000000000000000000000000000000000000000000000000000000000013202c3946535f6c798693a0acada09386796d6053463a2d20130700020d17212a32383d404045525e6a747575757575757573695d50444b57636f75757575757575756e62564a4040403e3a342c231a0f05000000000000000000000000000000000005111e2a36424d5860666666666666666666666975828f9ca9b0a3968a7d7063564a3d3023170a00111d2a3744505d6a767e7e7e7e7e7e7e7e7d7063574a3d3024170a00121e2b3743505b666d6f6f6f6f6f6f6f6f6e685d5246392d211407000000000000000000010b151e272e33373939393939393936312b231a1107000000000000000000000000000000000b151e272e353c42494f565c605f5a52483d322c38434d575e61605a544d464039332c241b110600000000000000000000000000000c17232e39444f59646d77808990979d9a94908d8c8b8b8c8f92979d9a948c847b72685e53483d32271c1004000000000000000000000000000003090e1216191b1d1e1f1f1f1d1c1916130e0904000000000000000000000000000000060e161c212527272727272727272725211c160f060000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000002080d12171c2024272a2d30323435373838393939393837363533312f2d2a26231f1b16110c0601000000000000000000000000000000000000000000000000000000000b151e262e33373939393939393939393938352f2920170e050000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000008111a232b3136393939393939393939393936322b241b12080000000000000000000000000000000009131c252c32373939393939393939383735322f2b26211b140d050000000000000000000000000000000000000000000000000000000000000000000000000d1a26323e4a555f6668686868686868686760564b3f33271b0e020005111e2a36424e5862676868686868686868655d53483c3023170b00000000101d2a3643505d6976838f9ca9a89b8e8174747d858d949a9f9f9d9c9b9b9c9d9fa2a6a8a49f9a948d867e766d645a51463c32271c11060000000013202c3946535f6c798693a0aca89c8f8275685b4f4235291c0f02000000020f1b2835414e5b6774818e9aa7ac9f93867a6d6054473b2e21150800030f1c2834414d5965727e8a96a2ada3978b7f73685c51473d3632313031343b45505b66727e8b97979695948c8073675a4e4235291c10030013202c3946535f6c798693a0acaca09386796c5f5346392c20130600000000000000000000000000000000000000000000000000000000000013202c3946535f6c798693a0acada09386796d6053463a2d2013070000050f1820272d31333a4653606d7982828282828282786b5e51454c5965727f8282828282827e7164574b3e3333322e29221a11080000000000000000000000000000000000000713202d3946525e69727373737373737373737375828f9ca9b0a3968a7d7063564a3d3023170a00111d2a3744505d6a77848c8c8c8c8c8c8a7d7063574a3d3024170a0013202c3946525f6c787b7b7b7b7b7b7b7b7a6e6255483b2f22150800000000000000000000030c151c23282b2c2c2c2c2c2c2c2a26201911080000000000000000000000000000000007121d27303940464d545a61676d6b64594e4338333e49545f696e6c655e58514b443d362d23180d020000000000000000000000000006121d28333d48525c656e767e868c91969a9c9a989898999b9b98948f89827a726960564c42372c21160b0000000000000000000000000002090f141a1e2225282a2b2c2c2b2a2826221f1a15100a03000000000000000000000000050f1820272d31333434343434343433312d2820180f06000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000002070b1014171b1e21232527292a2b2c2c2c2c2c2c2b2a28272523201d1a17130f0a0500000000000000000000000000000000000000000000000000000000000000030c141c22272b2c2c2c2c2c2c2c2c2c2c2b29241e170e0500000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000008111920262a2c2c2c2c2c2c2c2c2c2c2c2a26211a12090000000000000000000000000000000000010a131a21262a2c2c2c2c2c2c2c2c2c2a2826231f1a150f0902000000000000000000000000000000000000000000000000000000000000000000000000000f1c2935424e5b6771757575757575757572675b4f4336291d1003000713202d3946525e6a7375757575757575756f64584c3f3226190c000000000f1c2935424f5b6875828e9ba8a89c8f82756b737b82898e93989b9ea0a1a2a2a1a09e9b98948f89837c746c645b52483f352a20150b000000000013202c3946525f6c7986929faca99c8f8275695c4f4336291d100300000005111e2a3743505c6976828f9ca8aa9d9184786b5e5245392c1f130600000c1825313d4955616d7985919da8a79c9084796d63584f48423f3d3d3e40454d57616c77838f9ba4a3a094887c7064574b3f3226190d010013202c3946535f6c798693a0acaca09386796c5f5346392c20130600000000000000000000000000000000000000000000000000000000000013202c3946535f6c798693a0acada09386796d6053463a2d201307000000060e151c21242d3a4653606d79868f8f8f8f8f85786b5e51454c5965727f8c8f8f8f8f8b7e7164574b3e312625221d171008000000000000000000000000000000000000000714212e3a4754616d7a8080808080808080808080838f9ca9b0a3968a7d7063564a3d3023170a00111d2a3744505d6a77849098989898978a7d7063574a3d3024170a0013202c3946535f6c7986888888888888887b6f6255483c2f2215090000000000000000000000030a11171b1e2020202020201f1d1a150e0700000000000000000000000000000000000c18232e39424b51585e656c7279756b60554a3f39444f5a65707a767069635c564f483f342a1e130700000000000000000000000000000b16212b36404a535c656d747b81868a8d909192939392908e8b88837d77706860574e443a30251b1005000000000000000000000000060d141a20252a2e323437383838383735322f2b26211b150e0700000000000000000000020d17212a32393d4040404040404040403e39322a21180f050000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000004070b0e111417191b1c1d1e1f1f201f1f1f1e1d1c1a181614110e0a070300000000000000000000000000000000000000000000000000000000000000000000020a11171b1e202020202020202020201f1c18130c050000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000070e151a1d1f2020202020202020201f1e1a150f0800000000000000000000000000000000000000010910161a1e1f202020202020201f1e1c1916130e0a04000000000000000000000000000000000000000000000000000000000000000000000000000000101c2936434f5c69768282828282828282776a5d5044372a1d1104000714202d3a4753606d7a82828282828282807366594d4033261a0d000000000e1b2734414d5a6773808d99a6a99d9083776a6970777d83888c8f91939595959493918f8c88837e78716a625a524940362d23190e040000000000121f2c3845525f6b7885919eabaa9d9084776a5d5144372b1e12050000000814212d3946525f6b7884919daaa79b8e8275695c5043372a1d110400000915212d3945515d6975808c97a3aca1958a7f746a6159534e4c4a4a4b4d51575f69737d89949faba79b9084786c6054483b2f23160a000013202c3946535f6c798693a0acaca09386796c5f5346392c20130600000000000000000000000000000000000000000000000000000000000013202c3946535f6c798693a0acada09386796d6053463a2d20130700000000040b1015202d3a4653606d7986939c9c9c9285786b5e51454c5965727f8c999c9c988b7e7164574b3e31241816120c0600000000000000000000000000000000000000000714212e3a4754616d7a878d8d8d8d8d8d8d8d8d8d8d949fabb0a3968a7d7063564a3d3023170a00111d2a3744505d6a7784909da5a5a4978a7d7063574a3d3024170a0013202c3946535f6c7986939595959595887b6f6255483c2f22150900000000000000000000000000060b0f1213131313131313110e0903000000000000000000000000000000000004111d2935404b545c636970777d847c71665b5146404b56616c7782827b746e67605a50463b2f23170b0000000000000000000000000000050f1a242e38414a535b62696f757a7d8183858686868584827f7b77726c665e564e453c32281e14090000000000000000000000000810171f252b31363a3e41434545454543413e3b37322c261f18110901000000000000000008131e29333c444a4d4d4d4d4d4d4d4d4d4a443c332a21170e050000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000205080a0c0e0f111212131313131211100f0d0c0a070401000000000000000000000000000000000000000000000000000000000000000000000000000000060b0f121313131313131313131312100c07010000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000003090e111313131313131313131313110e0a0400000000000000000000000000000000000000000000050a0e11131313131313131312110f0d0a06020000000000000000000000000000000000000000000000000000000000000000000000000000000000101c2936434f5c6976838f8f8f8f8f8f84776a5d5044372a1d1104000714202d3a4753606d7a878f8f8f8f8f8d807366594d4033261a0d000000000d1926333f4c5865727e8b98a4ab9e9185786b5f666c72777b8082858788888888868582807b77726c665f58504840372e241b1107000000000000111e2b3744515d6a7784909da9ab9e9285786c5f53463a2e2115090000030e1925313d4955616e7a8793a0aca4988b7f73665a4d4134281b0f02000005111d2935404c58646f7b86919ca7a69b91867c736b645f5b58575757595d6269717a858f9aa5aca1968a7f73675c5044382b1f1307000013202c3946535f6c798693a0acaca09386796c5f5346392c20130600000000000000000000000000000000000000000000000000000000000013202c3946535f6c798693a0acada09386796d6053463a2d2013070000000000000713202d3a4653606d798693a0a99e9285786b5e51454c5965727f8c99a6a4988b7e7164574b3e3124180b06010000000000000000000000000000000000000000000714212e3a4754616d7a87949a9a9a9a9a9a9a9a9a9a9ea6b0b0a3968a7d7063564a3d3023170a00111d2a3744505d6a7784909daab0a4978a7d7063574a3d3024170a0013202c3946535f6c798693a0a2a2a295887b6f6255483c2f2215090000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000713202c3945515c666e747b82888e83786d62574c46515c67727d888c868079726b62574b3f33261a0d01000000000000000000000000000008121c262f38414950585e64696d71747678797979787775736f6b66615b544c443c332a20160c02000000000000000000000009121a222930373c42464a4d5051525251504e4b47423d37312a231b130a01000000000000000d1924303b454e55595a5a5a5a5a5a5a59554e453c332920170d04000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000101c2936434f5c697683909c9c9c9c9084776a5d5044372a1d1104000714202d3a4753606d7a87949c9c9c9a8d807366594d4033261a0d000000000b1824313d4a5763707d8996a2aca093867a6d615b61666b6f7376787a7b7b7b7b7a7876736f6b66615b554e463e362e251c120900000000000000101d2936434f5c6875828e9ba7ada094877b6f62564a3d32261b1009080b151f2a36414d5965717d8a96a3ada195887c7063574a3e3225190c000000000c1824303c47535e6975808b95a0aaa2988f857d766f6b676563636466696d737b838d96a1aba59a8f85796e62574b3f33271b0f03000013202c3946535f6c798693a0acaca09386796c5f5346392c20130600000000000000000000000000000000000000000000000000000000000013202c3946535f6c798693a0acada09386796d6053463a2d2013070000000000000713202d3a4653606d798693a0ab9e9285786b5e51454c5965727f8c99a6a4988b7e7164574b3e3124180b00000000000000000000000000000000000000000000000714212e3a4754616d7a8794a1a6a6a6a6a6a6a6a6a6a9acacaca3968a7d7063564a3d3023170a00111d2a3744505d6a7784909daaaca4978a7d7063574a3d3024170a0013202c3946535f6c798693a0acafa295887b6f6255483c2f2215090000000000000000000003060809090909090908060200030608090909090909080602000000000000000000000815222e3b4854616d7880868c93948a7e74695e534d58636e79848f97918a847d74675b4e4135281b0e020000000000000000000000000000000a141d262f373f464d53585d6165686a6b6c6c6c6c6a6966635f5b565049423b322a21180e04000000000000000000000009121b242c343b42484d52565a5c5e5f5f5e5d5a57534e49423c352d251c130a01000000000000101c2935414c576066676767676767676660574e453b32291f160d030000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000002040507070808080706050301000000000000000000000000000000000000000000000103050607070808080706050402000000000000000000000000000000000000000000000000000000000000000000000000000000000204060708080807070504020000000000000000000000000000000002020202020100000000000000000000000000000000000000000000000000000000000000000000000203050607080808070605030100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000002040506070808080707060403010000000000000000000000000000000000000000000000101c2936434f5c697683909ca8a89d9084776a5d5044372a1d1104000714202d3a4753606d7a8794a0a8a69a8d807366594d4033261a0d000000000916222f3c4855616e7a8794a0ada295897c6f6356555a5f6367696c6d6e6f6f6e6d6b6967635f5b56504a433c342d241c130b05000000000000000e1b2734414d5a6673808c98a5b0a3978a7e72665a4e42372c221a1615171d27313c47525e6975818d9aa6a99d9185796c6054473b2f2216090000000008131f2b36424d58636e79848e98a2aaa1978f87817b7773717070717275797e858d959fa8a69d93897e73685d51463a2f23170b00000013202c3946535f6c798693a0acaca09386796c5f5346392c20130600000000000000000000000000000000000000000000000000000000000013202c3946535f6c798693a0acada09386796d6053463a2d2013070000000000000713202d3a4653606d798693a0a09e9285786b5e51454c5965727f8c99a0a0988b7e7164574b3e3124180b00000000000000000000000000000000000000000000000714212e3a4754616d7a8794a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0968a7d7063564a3d3023170a00111d2a3744505d6a7784909da0a0a0978a7d7063574a3d3024170a0013202c3946535f6c798693a0acafa295887b6f6255483c2f2215090000000000000000050b0f131515151515151514120e0b0f131515151515151514120e090300000000000000000815212e3b4754616d78828c969e9b90857a6f645a535e69747f8a95a09b91877c72665a4e4134281b0e02000000000000000000000000000000020b141d252d343b42474d5155585b5d5f5f5f5f5f5e5c5a57534f4a443e38302921180f06000000000000000000000008121b242d363e454c53595e6366696b6b6b6b6967635f5a544d463f372e251c1309000000000000121f2c3845515d697273737373737373726a60574d443b31281f150c0300000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000105090c0e10121314151514141311100d0b08050100000000000000000000000000000105080b0d0f11131414151514141312100f0c0a0704000000000000000000000000000000000000000000000000000000000000000002060a0d0f111314141515141312100e0c090602000000000000000105090b0d0e0f0f0f0e0d0c0a08060300000000000000000000000000000000000000000000000000000205090c0e10121314141514141312100e0b0805010000000000000000000000000000000000000000000000000000000000000000000000000003070a0c0e10121314141515141312110f0d0b08050200000000000000000000000000000000000000101c2936434f5c697683909ca9aa9d9084776a5d5044372a1d1104000714202d3a4753606d7a8794a0ada69a8d807366594d4033261a0d000000000714202d3946525f6b7885919eaaa4978b7e7265594c4f53575a5d5f6161626261605f5d5a57534f4a453f38312a23211f1b17110a0200000000000c1925323e4b5764707d8995a2aea69a8e82766a5f54493e342c25222223282f39434d58636e7a86929eaaa5998d8175695d5044382b1f130600000000030e1a25303c47525d67727c869099a1a9a199928c8783807e7d7d7d7f82858a90979fa8a69e958b81776c61574b4035291e120600000013202c3946535f6c798693a0acaca09386796c5f5346392c20130600000000000000000000000000000000000000000000000000000000000013202c3946535f6c798693a0acada09386796d6053463a2d2013070000000000000713202d3a4653606d7986939393939285786b5e51454c5965727f8c939393938b7e7164574b3e3124180b00000000000000000000000000000000000000000000000714212e3a4754616d7a8793939393939393939393939393939393938a7d7063564a3d3023170a00111d2a3744505d6a77849093939393938a7d7063574a3d3024170a0013202c3946535f6c798693a0acaca295887b6f6255483c2f221509000000000000000810161b1f22222222222222211e1a161b1f22222222222222211e1a150e06000000000000000713202c3845505c66707a848e99a2978c81766b6059646f7a86919c9e94897f756a60564a3e3226190d0000000000000000000000000000000000020b131b232a30363c4145494c4f505253535352514f4d4a47433e39332d261f170f06000000000000000000000006101a242d363f4850575e646a6f73757778787776736f6b655f58514940372e251b1107000000000013202c3946535f6c79818181818181817c72695f564d433a31271e150b02000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000003090d1115181b1d1f2021212121201f1e1c1a1714110d09040000000000000000000004090d1114171a1c1e1f202121212121201f1d1b191613100c0803000000000000000000000000000000000000000000000000000000040a0e1216191c1e1f2021212121201f1d1b1815120e090500000003090d1215181a1b1c1c1c1b1a191715120f0b0600000000000000000000000000000000000000000000050a0e1215181b1d1e202121212121201e1d1a1814110d0804000000000000000000000000000000000000000000000000000000000000000002070b0f1316191b1d1f202121212121201f1e1c1a1815120e0a060100000000000000000000000000000000101c2936434f5c697683909ca9aa9d9084776a5d5044372a1d1104000714202d3a4753606d7a8794a0ada69a8d807366594d4033261a0d0000000005111e2a3743505c6975828e9ba7a69a8d8175685c5043474b4e505254555555555452504e4b47433e3b39373432302e2b27221b140b02000000000a16232f3c4854616d7986929eaaaa9f93877b70655a50463e36322f2e303339414a545f6974808b97a2aca195897d7165594d4034281c1003000000000009141f2a35404b56606a747d878f989fa6a49d98938f8d8b8a8a8a8c8e91969ba1a9a39c948c83796f655b50453a2f24180d0100000013202c3946535f6c798693a0acaca09386796c5f5346392c20130600000000000000000000000000000000000000000000000000000000000013202c3946535f6c798693a0acada09386796d6053463a2d2013070000000000000713202d3a4653606d7986868686868685786b5e51454c5965727f8686868686867e7164574b3e3124180b00000000000000000000000000000000000000000000000714212e3a4754616d7a868686868686868686868686868686868686867d7063564a3d3023170a00111d2a3744505d6a7784868686868686867d7063574a3d3024170a0013202c3946535f6c798693a0a0a0a095887b6f6255483c2f22150900000000000009121a21272c2e2f2f2f2f2f2f2e2b2621272c2e2f2f2f2f2f2f2e2b262018100600000000000004101c28343f4a545e68727c87919b9d93887d7267606b76818c97a0968c82776d63594e44392e22160a000000000000000000000000000000000000010911181f252b3035393d40424445464646454443413e3b37332e28221b140d050000000000000000000000020d18222c363f485159616970757b7f8284858584827f7b76706a625b524940372d23190f040000000013202c3946535f6c79868d8d8d8d8d8d847b71685f554c433930271d140a01000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000003090f14191d2125272a2c2d2e2e2e2e2d2c2b292624211d1915100b05000000000000050b1015191d212426292a2c2d2e2e2e2e2d2c2b2a282523201c18140f0a040000000000000000000000000000000000000000000000040a10151a1e2225282a2c2d2e2e2e2e2d2b2a2725221e1a15100b05080e14191e2124262828282828272524211f1c17110a03000000000000000000000000000000000000060b11161a1e212527292b2c2d2e2e2e2d2c2b292724211d19140f0a040000000000000000000000000000000000000000000000000000000003090e13171b1f2225282a2b2d2d2e2e2e2e2d2c2a292724211e1a16110d07010000000000000000000000000000101c2936434f5c697683909ca9aa9d9084776a5d5044372a1d1104000714202d3a4753606d7a8794a0ada69a8d807366594d4033261a0d00000000020f1b2834414d5a66737f8b98a4a99d9184786c5f53473b3e41444647484848484746444143484b4a484643413f3d3a38332d251d1309000000000713202c3845515d6975818d99a5afa3988d81766c62584f48423e3c3b3c3f444b535d66707b86919ca8a79c9084786c6155493c3024180c000000000000030e19242f39444e58626b757d868d959ba1a6a39f9c9998979697989a9da1a6a49f99928a827970675d53493e34291e12070000000013202c3946535f6c798693a0acaca09386796c5f5346392c20130600000000000000000000000000000000000000000000000000000000000013202c3946535f6c798693a0acada09386796d6053463a2d2013070000000000000613202d3946535f6b7679797979797979756a5e51444b58657179797979797979797063574a3e3124170b00000000000000000000000000000000000000000000000714212d3a4753606c7779797979797979797979797979797979797979786e6256493c3023160a00101d2a3643505c69747979797979797979786f63564a3d3023170a0013202c3946535f6c7986939393939393887b6f6255483c2f221509000000000007111b242c33383b3c3c3c3c3c3c3a37312c33383b3c3c3c3c3c3c3a37312a22180f040000000000000c17232e38424c56606b757f89939d998e83786e66717c87929d998f847a70655b51473d32281d11050000000000000000000000000000000000000000060d141a1f24292d303335373839393939383634322f2b27221d17100a0200000000000000000000000009141f29343e48515a636b737a81878b8e919292918f8b87827b746d645b52493f352b20160b00000000121f2c3845515e69747d8790999a9a968d847a71675e554b42392f261d130a00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000060d141a20252a2e31343638393a3b3b3a3a39373533302d2925201b16100a030000030a10161c2125292d30333537393a3a3b3b3b3a39383634322f2c2824201b15100a030000000000000000000000000000000000000000070e151b21262a2e323537393a3a3b3b3a39383634312e2a26211c1610131a20252a2e313335353535353432302e2b28231c140c03000000000000000000000000000000040b11171c21262a2e31343638393a3b3b3b3a39383633302d2925201b150f090200000000000000000000000000000000000000000000000001080e141a1f23282b2f32343638393a3b3b3b3a3a39373533312e2a26221d18130d0600000000000000000000000000101c2936434f5c697683909ca9aa9d9084776a5d5044372a1d1104000714202d3a4753606d7a8794a0ada69a8d807366594d4033261a0d00000000000c1925323e4a57636f7c8894a0aca094887b6f63574b40343537393b3b3c3c3b3a393b454e5457575452504e4b4947443e372f251b100500000004101c2935414d5965717d88949faba99e93887e746a615a534e4a4848494b50565d656e78828d97a2aca1968b7f73685c5044382c2014080000000000000008121d28323c465059626b747b838a90959a9ea1a3a5a4a4a3a4a5a5a3a09d98938e87807870675e554b41372d22170c010000000013202c3946535f6c798693a0acaca09386796c5f5346392c20130600000000000000000000000000000000000000000000000000000000000013202c3946535f6c798693a0acada09386796d6053463a2d20130700000000000005121e2b37434f5a646b6c6c6c6c6c6c6c6b63594e4248545f686c6c6c6c6c6c6c6c675e53473b2f221609000000000000000000000000000000000000000000000006121f2b3844505b656b6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c675d52463a2e211508000f1b2834404c58626a6c6c6c6c6c6c6c6c6c675d52473a2e2215090013202c3946535f6c7986868686868686867b6f6255483c2f22150900000000030e19232d363e444748484848484847423c363e444748484848484847423c342a20160b00000000000006111c26303a444f59636d77818b96a0958a7f746d78838e999c91877d72685e54493f352b20160b0000000000000000000000000000000000000000000002090e14191d212427292a2c2c2c2c2c2b2a2825221f1b16110b0500000000000000000000000000040f1a26303b46505a636c757d858c92979b9a99999a9b98938d867e766d645b51473c32271c1105000000101d2935414d58626b747e87919aa39f968c837970675d544b41382f251c120900000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000911181f252b31363a3d4043454647484847474544423f3c3935312c27211b150e07070e151b21272c3135393c3f424445464748484747464543413e3c3834302c26211b150e070000000000000000000000000000000000010a121920262c32363b3e4143454747484847464543403d3a36322d27211b1d242b31363a3d404142424241403f3d3a38342e261e150b0000000000000000000000000000080f161c22282d32363a3d404244464747484747464442403d3935312c26201a130c0500000000000000000000000000000000000000000000050c13191f252a2f34383b3e41434546474748484746454442403d3a36322e29241e18110a030000000000000000000000101c2936434f5c697683909ca9aa9d9084776a5d5044372a1d1104000714202d3a4753606d7a8794a0ada69a8d807366594d4033261a0d00000000000916222e3b4753606c7884909ca9a4988c8074685c5045392e2b2c2e2f2f2f2e2e36424d575f6463615f5c5a585653504941372d22160b000000000c1925313d4954606c77838e99a4aea49a90867c736b645e5a57555555585b61676f77818a949ea9a69b9085796e62574b3f34281c100400000000000000010b16202a343e475059626a71787e84898e919497989aa0a9a19b989694908c88827c756e665e554c43392f251b1006000000000013202c3946535f6c798693a0acaca09386796c5f5346392c20130600000000000000000000000000000000000000000000000000000000000013202c3946535f6c798693a0acada09386796d6053463a2d201307000000000000020f1b27333e49525a5f5f5f5f5f5f5f5f5e5951473d434d565d5f5f5f5f5f5f5f5f5c554c42372b1f13070000000000000000000000000000000000000000000000030f1c28333f49535b5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5c554b41352a1e1205000c1824303b4650595e5f5f5f5f5f5f5f5f5f5c554c41362a1e120600131f2c3946525f6b767979797979797979786d6155483b2f221508000000000915202a353f484f54555555555555534d463f484f54555555555555534d463c32271c100400000000040b11161e28333d47515b656f7a848e989c91867b737e89949e948a80756b61564c42382d231915100a030000000000000000000000000000000000000000000003080d1114171a1c1e1f2020201f1e1d1b1916130f0a050000000000000000000000000000000915202c37424d57626c757e878f979a95908d8c8c8d90949a98908880766d63594e43382d22160b0000000d1925303c465059626c757e88929ba49e958c82796f665d534a41372e241b12080000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000010a121b222a30373c41464a4d4f5153545454545352514e4c4945413d38322d26201911111920262d33383d4145494c4e50525354545454535351504d4b4844403c37322c261f181109010000000000000000000000000000020b131c232b32383d42474a4e5052535454545453514f4d4a46423d38332c26272f363c42464a4c4e4f4f4f4e4d4b4947443f3830271d12070000000000000000000000020a121920272e33393e42464a4d4f5153535454545352514f4c4945413d37322c251e170f070000000000000000000000000000000000000000070f171e242b30363b4044474b4d4f515353545454545352504e4c4946423e3a352f29231c150d0500000000000000000000101c2936434f5c697683909ca9aa9d9084776a5d5044372a1d1104000714202d3a4753606d7a8794a0ada69a8d807366594d4033261a0d000000000006121f2b3743505c6874808c98a4a89c9084786d61564b40352b2121222222232f3b47535e6970706d6b69676462605b53493e33271b0f030000000814202c38444f5b66717d88929da7aca2988e867d766f6a666362616264676c7279818a939ca6a99e94897e73685d51463a2f23170b000000000000000000040e18222c353e4750585f666d73787d8285888a8c8e97a3988f8c8a8784817c77716b645c544c433a31271d130900000000000013202c3946535f6c798693a0acaca09386796c5f5346392c20130600000000000000000000000000000000000000000000000000000000000013202c3946535f6c798693a0acada09386796d6053463a2d201307000000000000000a16212c3740494f5253535353535353524e483f363b444c515353535353535353504b433a30251a0e030000000000000000000000000000000000000000000000000b17222d3741494f525353535353535353535353535353535353535353504a43392f24190d020008141f2a353e474e52535353535353535353504b433a2f25190e0200111e2a37434f5a646b6c6c6c6c6c6c6c6c6c665c5145392d201407000000040f1b26313c47515a606262626262625f584e47515a606262626262625f584e44382d201408000000060e161d2225292c353f49535e68727c86909a978c8279858f9b978c82786e63594f443a302b2825211b140d0400000000000000000000000000000000000000000000000105080b0e1011121313131212100e0c09060300000000000000000000000000000000020e1a26313d48535e69747e879199978f8984817f7f8184898f969a92897f756a60554a3e33271c1004000008141f2a343e47505a636d768089929ca59e948b81786f655c524940362d241a1108000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000a131c242d343b42484d5256595c5e6061616161605f5d5b5855524d49443e38312a231b1b232a31383e44494d5255585b5d5f6061616161605f5e5c5a5754514d48433d37312a231b130b02000000000000000000000000010b141d252e353c43494e53575a5d5f60616161605f5e5c5956524e49443e3730313941474d5256595b5b5b5b5b5a585653504a42392e23180c01000000000000000000030b141c242b32393f444a4e5256595c5e5f60616161605f5e5b5955514d48433d3730292119110800000000000000000000000000000000000009111921282f363c42474c5054575a5c5e5f6061616161605f5d5b5956524f4a45403a342e261f170f07000000000000000000101c2936434f5c697683909ca9aa9d9084776a5d5044372a1d1104000714202d3a4753606d7a8794a0ada69a8d807366594d4033261a0d0000000000030f1b2734404c5864707c88949faba195897e72675c51473d332b252222242a35404b57636f7b7c7a787573716f6c655b4f43372b1e120500000004101c27333e4a55606b76818b959fa8aaa0978f88817b7672706f6e6f7073787d848b939ca5aaa1978d82786d62574c4035291e12070000000000000000000007101a232c353e464e555c62686d7175787b7d7f8794a095887f7d7b7874706b666059524a423a31281f150b0100000000000013202c3946535f6c798693a0acaca09386796c5f5346392c20130600000000000000000000000000000000000000000000000000000000000013202c3946535f6c798693a0acada09386796d6053463a2d2013070000000000000005101b252e373e43464646464646464645423d362d323a4044464646464646464644403931281e14090000000000000000000000000000000000000000000000000006111b262f373e43464646464646464646464646464646464646464646443f3931271d13080000020e18232c353c4245464646464646464646443f3931281e130800000e1a26323e48525a5f5f5f5f5f5f5f5f5f5f5b544a4034291d11040000000915202c37424d58636c6f6f6f6f6f6f6a60554d58636c6f6f6f6f6f6f6a6055493d3024170b0000050f1820282e3235383b3f424c56606a747e89939d9388808b96998f857a70665c5147413e3b3734312c261f160d0300000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000006131f2b37424e5965707b859099968d857e7874727274787d848c959b91877c71665b4f44382c2014080000030e18222c353e48515b646d77808a939ca69d948a81776e645b52483f362c231a1007000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000008121c252e363e464d53595e6266686b6c6d6e6e6d6d6b6a6765615e59544f49433c352d25252d353c43494f54595e6165676a6b6d6d6e6e6d6d6c6b696664605d59544e49423c352d251d140b02000000000000000000000009131d262f373f474e545a5f6366696b6d6d6e6e6d6c6a6866625e5a554f49423b3a434b52595e62656768686867666562605c544b4035291d11040000000000000000030c151d262e363d444a50555a5e6265686a6c6d6d6e6d6d6c6a6865625d59544e48413a332b231a11080000000000000000000000000000000009121b232b333a41474d53585c606366696b6c6d6d6e6e6d6c6b6a6865625f5b56514c463f383129211910070000000000000000101c2936434f5c697683909ca9aa9d9084776a5d5044372a1d1104000714202d3a4753606d7a8794a0ada69a8d807366594d4033261a0d0000000000000b17232f3c48545f6b77838f9aa6a69a8f84786e63594f453d36312f2f30353c46515c68738089878482807d7b776c5f5346392d201306000000000b16222d38444f5a646f79838d969fa7a9a199928c87827f7d7b7b7b7d8084898e959da5aaa1988f857b70665b50453a2f24180d01000000000000000000000008111a232c343c434a51575c6165696c6f717a8794a095887b716e6b68645f5a544e47403930281f160d030000000000000013202c3946535f6c798693a0acaca09386796c5f5346392c20130600000000000000000000000000000000000000000000000000000000000013202c3946535f6c798693a0acada09386796d6053463a2d201307000000000000000009131c252c323739393939393939393936322b24282f3438393939393939393938342f281f160c0200000000000000000000000000000000000000000000000000000a141d252d333739393939393939393939393939393939393939393937342e271f150c0100000007111a232b31363939393939393939393938342e271f160c0100000a16212c3740484f52535353535353535352504a42382e23180c000000020e1a26313d48545f6a757b7b7b7b7b7b716558545f6a757b7b7b7b7b7b7165584b3f3225180c00020d17212a32393e4145484b4e515558626d77818b959a8f8b929c92877d73695e5754504d4a4744413d3830281f150a0000000000000001050809090909090909090909080602000000000000000000000000000000000000000000000000000000000000000000000a16232f3b47535f6a76818c97978d847b736d686666686c727a838c96998e83776c6054483c3024180b00000006101a232c363f49525b656e77818a949da69c938980766d645a51483e352c2219100600000000000000000000000000000000000000000000000000000000000000000000000000000000000000000006101a242e37404850585e646a6e727577797a7b7b7a79787674716e6a65605a544e473f372f2f373f474e545b60656a6e71747678797a7b7b7a7a79777573706d69645f5a544d463f372f261d140b0100000000000000000007111b252f38414951595f656b6f737678797a7b7b7a797775726e6a66605a544d45424c555d646a6e72747575757473716f6c665c5145392d20140700000000000000020b151e272f3840474e555b61666b6e727577797a7a7b7a7a797774716e69655f59534c453d352c231a1108000000000000000000000000000009121b242d353d444c52585e63686c70737577797a7a7b7b7a79787674726e6b67625d57514a433b332b22190f0600000000000000101c2936434f5c697683909ca9aa9d9084776a5d5044372a1d1104000714202d3a4753606d7a8794a0ada69a8d807366594d4033261a0d00000000000007131f2b37434f5b66727e8995a0aba0958a7f756a61574f47413d3b3b3d40464e58626d79849093918f8c8a84786c5f5346392d2013060000000005111c27323d48525d67717a848d959da4aba49d97928e8b898888888a8c90949aa0a7a7a0988f867d73695f544a3f34291e13070000000000000000000000000008111a222a31383f454b5055595d60626d7a8794a095887b6e625f5c58544f49433d362e271e160d04000000000000000013202c3946535f6c798693a0acaca09386796c5f5346392c20130600000000000000000000000000000000000000000000000000000000000013202c3946535f6c798693a0acaca09386796d6053463a2d2013070000000000000000010a131b21272a2c2c2c2c2c2c2c2c2c2a26211a1e24282b2c2c2c2c2c2c2c2c2b28231d160d04000000000000000000000000000000000000000000000000000000020b131b22272a2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2b28231c150d03000000000008111920262a2c2c2c2c2c2c2c2c2c2c2b28231d150d0400000005101a252e373e4346464646464646464646433f3830261c120700000007131f2b37424e5965707b86888888857a7064575965707b86888888857a7064574b3e3225180b0008131e29333c444a4e5154575b5e6164676b6f79838d989a989b948a80756d6a6663605d5a5653504d49423a31271c11050000000001070d11141616161616161616161615120e090200000000000000000000000000000000000000000000000000000000000000000d1a26323f4b57636f7b87939b90857b7269615c59595b6168707a848f9a94887d7165584c4034271b0e0200000008111a242d374049535c656f78828b949ea59b928980766c635a50473e342b22180f0500000000000000000000000000000000000000000000000000000000000000000000000000000000000000020d18222c364049525a626970757a7e82848687888887868583817d7a76716b665f585149413838414951585f666c71767a7d818385868788888786858482807c7975706b655f58514941382f261d13090000000000000000030e18232d37414a535b636a71767b7f828486878887878684827e7b76716c655e574f4a545e676f757a7e8182828281807e7b786d6155483b2f221508000000000000000a141d273039414a525960666c72777b7e81848586878887868583817e7a75706b645e564f473e352c231a100600000000000000000000000007111b242d363f474f565d64696f74787c7f8284868787888787868583817e7b77736e68625c544d453d342b21180e04000000000000101c2936434f5c697683909ca9aa9d9084776a5d5044372a1d1104000714202d3a4753606d7a8794a0ada69a8d807366594d4033261a0d000000000000030f1b27323e4a56616d78848f9aa5a69c91877c73696159524d4a4848494c5158606a747f8a95a09d9b988c8074685c4f43372b1e120500000000000b16212c36414b555f68717a838b9399a0a5a9a39e9b989695959596999ca0a5a8a39c958e867d746b61574d43382d23180d01000000000000000000000000000008101820272e343a4045494d5053606d7a8794a095887b6e6155504c48433e38322b241c150c0400000000000000000013202c3946535f6c798693a0a0a0a09386796c5f5346392c20130600000000000000000000000000000000000000000000000000000000000013202c3946535f6c798693a0a0a0a09386796d6053463a2d201307000000000000000000010910161b1e1f202020202020201f1e1a150f13181c1f20202020202020201f1c18120b040000000000000000000000000000000000000000000000000000000000010910161b1e2020202020202020202020202020202020202020201e1c17120b0300000000000000070e151a1d1f2020202020202020201e1c17120b03000000000009131c252c32373939393939393939393937332d261e140b000000000b17232f3b47535f6a76818d9594897e73685e535f6a76818d9594897e73685e53473b2f23160a000c1824303b454e565a5d6064676a6d7074777a7d818a96a3a49e9285807c797673706c696663605c59544c43382d22160a000000030b12191d2123232323232323232323211e1a140d05000000000000000000000000000000000000000000000000000000000000000f1c2935424e5a6773808c98968a7e74696057504c4c4f565e68727d8994998d8175685c4f43362a1d11040000000008121b242e37414a535d666f79828c959ea49b91887e756c625950463d342a21170e0500000000000000000000000000000000000000000000000000000000000000000000000000000000000009141f29343e48525b646c747b81868a8e91929494949493918f8d8a86827c77716a635b534a42414a535b636a71777d82868a8d8f9193949494949392918f8c8985817c76706a635b534a42382f251b11070000000000000009141f2a353f49535c656d757c82878b8f91939494949392908e8b87827d7770696159515c66707980868b8d8f8f8f8e8c8a887b6f6255483c2f22150900000000000007111c252f39424b535c636b72787d83878b8e9092939494949392908d8a86817c766f68615950473e352c22180d0300000000000000000000050f19232d363f48515961686f757b8084888c8e909293949494949391908d8a87837e79736d665f574e463d332a20160c010000000000101c2936434f5c697683909ca9aa9d9084776a5d5044372a1d1104000714202d3a4753606d7a8794a0ada69a8d807366594d4033261a0d000000000000000a16222d3945505b67727d88939ea8a3988e857b736b645e5956555556585d626a727c86919ba6a99e92877b6f63574b3f33271b0f020000000000040f1a242f39434d565f68717981888e949a9ea2a5a7a4a3a2a2a2a3a5a8a5a19d97918b847c746b62594f453b31261c110600000000000000000000000000000000060e151c23292f34393d414753606d7a8794a095887b6e615548403c37322d272019120b030000000000000000000013202c3946535f6c798693939393939386796c5f5346392c20130600000000000000000000000000000000000000000000000000000000000013202c3946535f6c798693939393939386796d6053463a2d2013070000000000000000000000050a0e11131313131313131313110e0a04070c1012131313131313131312100c07010000000000000000000000000000000000000000000000000000000000000000050a0f11131313131313131313131313131313131313131313120f0b060000000000000000000003090e1113131313131313131313120f0b0600000000000000010a131a21262a2c2c2c2c2c2c2c2c2c2c2b27221c140c02000000030f1b2734404c58646f7b87929a8e83786d625758646f7b87929a8e83786d62574c42372b1f130700101c2935414c5760666a6d7073767a7d8083878a8d919ba6aea2978f8c8986827f7c7975726f6c69655e554a3e32261a0d0000030c151d24292d2f3030303030303030302e2a251e170e05000000000000000000000000000000000000000000000000000000000000111e2b3744505d6a76838f9b9285796d62574e454040444c56616c7884909d9084776b5e5245392c1f1306000000000009121c252f38414b545d67707a838c969fa39a91877e746b62584f463c332920170c0200000000000000000000000000000000000000000000000000000000000000000000000000000000030e1a25303b46505a646d767e868c92979a9d9fa0a1a1a0a09e9c9996928d88827c746d655d544b4a535c656d747c82888d9296999c9e9fa0a1a1a1a09f9d9b9895918d88827b746d655c544a41372d23180e030000000000030f1a26313c46515b656e7780878d93979b9e9fa1a1a1a09f9d9a97938e88827b736b6259636e78828b92979a9b9c9b9a9995887b6f6255483c2f2215090000000000040e19232d37414b545d656e757c83898e93979a9d9fa0a1a1a1a09f9c9a96928d87817a736b625950473e34291f150a000000000000000000020c17212b353f48515a636b727a80868c9095989b9d9fa0a1a1a1a09f9e9c9a97938f8a857e78716961584f453c32281d13080000000000101c2936434f5c697683909ca9aa9d9084776a5d5044372a1d1104000714202d3a4753606d7a8794a0ada69a8d807366594d4033261a0d0000000000000005111d28343f4a56616c77818c96a1aaa0978e857c756f69666362616265686e747c858e98a2ada3988d81766a5f53473b2f23170b0000000000000008131d27313b444d565f676f767d83898e9296999b9d9e9f9f9f9e9d9b9895918c868079726a625950473d33291f150a000000000000000000000000000000000000030b11181e23282d313a4753606d7a87939393887b6e6155483b302b27211b150f0800000000000000000000000013202c3946535f6c798686868686868686796c5f5346392c20130600000000000000000000000000000000000000000000000000000000000013202c3946535f6c798686868686868686796d6053463a2d20130700000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000010910161a1e1f2020202020202020201e1b17110a020000000006121f2b3744505c6874808c9894897d72665b505c6874808c9894897d72665b50453a30251a0f0300121f2b3844515d697276797c808386898c909396999b9a9fa89f9b9b9895928f8c8885827e7b787570665a4e4235281c0f00000a151e272f353a3c3c3c3c3c3c3c3c3c3c3a36302920170c020000000000000000000000000000000000000000000000000000000000121f2c3945525f6b7885919b8f8276695d51463c34333a44505c6874818e9a9386796d6053473a2d2014070000000000000a131d262f39424b555e68717a848d97a0a39990877d746a61574e453b32281e13080000000000000000000000000000000000000000000000000000000000000000000000000000000008141f2b36424d57626c76808890979ea3a6a7a29f9c9a9a9a9a9c9ea19e99948d867f776e665d53525c656e777f868d94999ea2a6a29e9c9b9a9a9a9b9d9fa2a5a19d98938d867f776e665c53493f352a1f140900000000000814202b37424d58626d77808991989ea3a7a6a19e9b9a9a9a9b9d9f9f99938c857d746b626974808a949da3a6a7a09b999895887b6f6255483c2f22150900000000000a15202b353f49535d666f7780878e949a9fa3a6a3a19f9e9e9e9fa1a4a6a29e98928c857d746b62594f463b31261b1005000000000000000009131e29333d47515a636c757d848b92979ca1a4a3a09d9b9a9a9a9b9c9ea0a4a39f9b96908a827b736a61574e443a2f241a0f0400000000101c2936434f5c697683909ca9aa9d9084776a5d5044372a1d1104000714202d3a4753606d7a8794a0ada69a8d807366594d4033261a0d00000000000000000c17222e39444f5a65707a858f98a2a9a0978e87807a7572706e6e6f7174797f868e97a0aaa69b91867b7065594e42362b1f130700000000000000010b151f29323b444d555d646b72787d8286898c8f909192929292908e8c8985807b756e67605850473e352b21170d030000000000000000000000000000000000000000060c12171c212d3a4753606d7a86868686867b6e6155483b2e221b16100a0400000000000000000000000000131f2c3946525f6b767979797979797979766b5f5246392c1f1306000000000000000000000000000000000000000000000000000000000000131f2c3946525f6b767979797979797979766b5f5346392d201306000000000000000000000000000000010407090a0c0c0d0d0d0c0b0a0805030000000000000000000000000000000000000000000000000000000000000000000004090c0d0d0d0d0d0d0d0d0d0c0a060100000001060a0c0d0d0d0d0d0d0d0d0d0b08040000000000000000000000000000000000000000000000000000000000000000000000000000000000000000050a0e1113131313131313131313120f0b060000000000000915222e3b4753606c7884909b8f84786c615553606c7884909b8f84786c61554a3f34291e14090000131f2c3946525f6c798286898c8f9296999c9d98948f8e96a0968f90959a9e9b9895928e8b88858276695c4f4336291c100006111c27303940464949494949494949494947423b32281e1308000000000000000000000000000000000000000000000000000000000013202c3946535f6c7986939a8e8174675a4e41352a2833404d596673808c9994877a6d6154473a2e211407000000000000010b141d27303a434c565f68727b858e97a1a2998f867c736a60574d443a3025190d010000000000000000000000000000000000000000000000000000000000000000000000000000010d1925303c47535e69747e88919aa2a9a9a19b96928f8e8d8d8e8f9194989c9f98918981786f655c5a646e77808991989fa5a59f9a9592908e8d8d8d8e9092969a9ea4a49e98918981786e655b51463c31261b1004000000010d1925313c48535e69747e89929ba3aaa8a09a95918f8d8d8d8e9093969a9e978f867d746a6d7985919ca6aea69d958f8c8b8b887b6f6255483c2f2215090000000005111c27323c47515b656f78818a9199a0a6a6a09b9794929191919395989ca2a8a49d968f877e756b61574d43382d22170b00000000000000040f1a25303a454f59636c757e878f969da3a7a19b9793908e8d8d8d8e8f9194989ca1a7a19b948d857c736960564b41362b20150a00000000101c2936434f5c697683909ca9aa9d9084776a5d5044372a1d1104000714202d3a4753606d7a8794a0ada69a8d807366594d4033261a0d000000000000000006111d28333e49535e68737d879099a2a9a099928b86827e7c7b7b7c7e81858a9098a0a9a69d948a80756a5f54483d31261a0e020000000000000000030d172029323b434b535a60666c7176797d80828485868686858482807c79746f6a645d564e463e352c23190f050000000000000000000000000000000000000000000001070c14202d3a4653606c777979797979776d6154483b2e21150a05000000000000000000000000000000111e2a37434f5a646b6c6c6c6c6c6c6c6c6b645a4f43372a1e1105000000000000000000000000000000000000000000000000000000000000111e2a37434f5a646b6c6c6c6c6c6c6c6c6b645a4f43372b1e120500000000000000000000000001060a0e111315171819191a1919181614120f0b07030000000000000000000000000000000000000000000000000000000000030a1015181a1a1a1a1a1a1a1a1a1916120c0500060d1216191a1a1a1a1a1a1a1a1a1815100a030000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000b1824313d4a56636f7b8894978b7f73675b5056636f7b8894978b7f73675b5044392d22170c020000121e2b3844505d6975818d95989b9f9f9b96918c888385919d908484898e92979ca09e9b97948a7e72665a4e4135281c0f000b17232e38424b5255565656565656565656534c443a3025190d010000000000000000000000000000000000000000000000000000000013202c3946535f6c7986939a8e8174675a4e4135292833404c596673808c9994877a6d6154473a2e21140700000000000000020b151e27313a444d566069737c858f98a2a1988e857c72695f564c41362a1e1105000000000000000000000000000000000000000000000000000000000000000000000000000005111d2935414d58646f7a85909aa3aca89f97908a8683818181818385888c91969c9b938a81776e64626c768089929ba3a9a19a948e89868381818181828486898e9399a0a7a29b938a81776d62584d42372c21150a00000005111d2935414d5964707b86919ba4ada79e968f8985828181818284868a8e9399988f867c72717d8a96a2ada99e948b84807e7e807b6f6255483c2f221509000000000b16222d38434e59636d77818a939ba3aaa29b958f8b888584848486898c91969da4a8a19890877d73695f54493e33281c11050000000000000a15202b36414c57616b757e889099a0a8a49c96908b878482818181818385888b90969ca3a69f978e857b72675d52483d32261b0f04000000101c2936434f5c697683909ca9aa9d9084776a5d5044372a1d1104000714202d3a4753606d7a8794a0ada69a8d807366594d4033261a0d0000000000000000000b16212c37424c57616b747e879098a0a7a39d97928e8b898888898a8d91969ba2aaa59d948b82786d63584d42372c20150900000000000000000000050e172029313941484f555b61656a6d707375777879797978777573706c68645e58524b443c342c231a11070000000000000000000000000000000000000000000000000005121f2b37444f5b656b6c6c6c6c6c6c665c5145382c201307000000000000000000000000000000000e1a26323e48525a5f5f5f5f5f5f5f5f5f5f5a52483e32261a0e020000000000000000000000000000000000000000000000000000000000000e1a26323e48525a5f5f5f5f5f5f5f5f5f5f5a52493e33271b0f020000000000000000000002080d12161a1d2022242526262626262423211e1b18130f09040000000000000000000000000000000000000000000000000000050e151c212527272727272727272725221d17100811181e222527272727272727272624211b150d05000000000000000005090c0d0d0d0d0d0d0d0d0d0c09050000000002070a0c0d0d0d0d0d0d0d0d0d0b0803000000000000000000000000000000000000000000000d1a2733404c5965727e8b9794877b6f63574c5965727e8b9794877b6f63574b423b32281e13080000101c2834404c5965717d8995a19d98948f8a85817c7885929d9084787d82868b9094999e9e92867a6e62564a3d3125190d000f1b28333f4a545d626363636363636363625e564c41362a1e110500000000000000000000000000000000000000000000000000000000121f2c3945525f6b7885919b8f8275695d51453b33333a444f5b6874818d9a9386796d6053473a2d2014070000000000000000030c151f28323b444e57606a737d869099a2a0978e847b71685e52463a2d21140700000000000000000000000000000000000000000000000000000000000000000000000000000815212d3945515d6975818c97a2aca99f968d857f7a767473737476787c80858b91989c938a80766c69747e88929ba4a9a0978f89827d79767473737475777a7d82878e959da6a49c92897e746a5f54493d32261b0f0300000815212d3a46525e6a75818c97a2ada89e958c847d797574737475777a7e83888e95988e847a74818d99a6b0a3988c827973717273746c6054473b2e21150800000005111c28333e4a55606a757f89939ca5a9a0989089847f7b79777778797c80858b929aa2aaa2998f857b71665b5044392d22160a0000000000040f1b26323d48535e68737d87919aa2aba29a928b847f7b77757473737476787b80858b9299a1a9a0978e84796f64594e43372c201509000000101c2936434f5c697683909ca9aa9d9084776a5d5044372a1d1104000714202d3a4753606d7a8794a0ada69a8d807366594d4033261a0d00000000000000000005101b25303a454f59626c757e868e969da3a8a29e9a979695959597999da1a7a7a19a938b827970665c51473c31261b0f040000000000000000000000050e171f272f373d444a5055595d616466696a6b6c6c6c6b6a696664605c58534d474039322a221a11080000000000000000000000000000000000000000000000000000030f1b27333e49535a5f5f5f5f5f5f5f5b544a3f34281c1004000000000000000000000000000000000a16212c3740484f525353535353535353524f4840372c21160a000000000000000000000000000000000000000000000000000000000000000a16212c3740484f525353535353535353524f4940372c21160a00000000000000000000070d13191e2226292c2f30323333333332312f2d2b27241f1a150f08010000000000000000000000000000000000000000000000050e1720272d31333434343434343433322e29221a121a22292e32343434343434343433312c261f170d040000000000040b1115181a1a1a1a1a1a1a1a1a1916110c0500070d1317191a1a1a1a1a1a1a1a1a17140f090200000000000000000000000000000000000000000f1c2835424e5b6874818d9a9184786b5f56535b6874818d9a9184786b5f56534c443a3025190d01000c1824303c4855616d79859196918c88837e7975707986929e91847771767a7f84888d92968e82766a5e5245392d21150900121e2b3744505c666e6f6f6f6f6f6f6f6f6f685e52463a2d21140700000000000000000000000000000000000000000000000000000000111e2b3744515d6a76838f9c9185796d62574d443f3f434c55606c7884909c9184786b5e5245392c1f1306000000000000000000030d162029323c454e58616b747d87909aa3a0968d847a6e6255483b2f22150900000000000000000000000000000000000000000000000000000000000000000000000000000b1824313d4955626e7a86929da8ada2978d847b736e6a68676768696c6f747980868e969b92887e736f7a85909aa4aaa0978e857e77716d6a68676767686a6d71767c838b949da6a49b90867b70655a4e43372b20140800000b1824313d4956626e7a86929ea9ada1978c837a726d69676767686b6e72777d838a92968c8176838f9ca8ac9f93877b706764656768635a4f44382c1f13060000000a16212d39444f5b66717c87919ba5aba1978e867e78736f6c6b6a6b6d70747a8188909aa3aba1978d82776c61554a3e33271b0f03000000000914202c37434e59646f7a858f99a2aca29990888079736e6b6867676768696c6f747980878f98a1a99f958b81756a5f54483d3125190e020000101c2936434f5c697683909ca9aa9d9084776a5d5044372a1d1104000714202d3a4753606d7a8794a0ada69a8d807366594d4033261a0d0000000000000000000009141e29333d47505a636c747c848b92979da1a5a7a4a2a2a2a2a4a6a7a4a09b969089817970675e544a3f352a1f140900000000000000000000000000050d161d252c33393f44494d5155585a5c5d5e5f5f5f5f5e5c5a5754504c47423c362f2820181008000000000000000000000000000000000000000000000000000000000b16222d3741494f525353535353524f4a42382e23180c000000000000000000000000000000000005101a252e373e4346464646464646464646433e372e251a10050000000000000000000000000000000000000000000000000000000000000005101a252e373e4346464646464646464646433e372e251b10050000000000000000020a11181f242a2e3236393b3d3e3f4040403f3e3c3a3734302b26201a130c04000000000000000000000000000000000000000000040d17202931383d4040404040404040403e3a332c231b242c343a3e4040404040404040403d3831291f160b00000000060e161c212527272727272727272725221d170f0911191e232627272727272727272624201a130c0300000000000000000000000000000000000000101d2a3743505d6976838f9b8e82756963625e5d6976838f9b8e82756963625e564c41362a1e1105000814202c3844515d6975818d8a85817c77726e696c7986939e9185786b6a6f73787c81868a8a7e7266594d4135291d11050013202c3946535f6c787c7c7c7c7c7c7c7c7a6e6255483b2f22150900000000000000000000000000000000000000000000000000000000101c2935424e5b6773808c98968a7e73695f564f4c4c4f555e67727d8894998d8175685c5043372a1d110400000000000000000000040e17202a333c464f59626b757e88929ea89f95887b6f6255483c2f22150900000000000000000000000000000000000000000000000000000000000000000000000000000e1a2733404c5965727e8a96a2aea89c91867b7169625e5b5a5a5b5d6063686e757c848c959a8f857a76818c97a1aca2988e857b736c66615d5b5a5a5a5c5e61656b7279818a949ea8a2988d82766b5f54483c3024180b00000e1a2733404c5965727e8a96a2aea79c90857a7068615d5a5a5a5c5e62666b727980899193887d84919eaaa99c9084776b5f58585a5b5851483e33271b0f030000020e1a26323e4a55616c77838e98a3ada3998f857c746d6763605e5d5e6064686f767e88919ca6a99f94897d72665b4f43372b1f1307000000010d1925313d48545f6b76818c96a1aba59a90877e766e68635f5c5a5a5a5b5d5f63686e757d868f99a3a79d92877c7065594e42362a1e11050000101c2936434f5c697683909ca9aa9d9084776a5d5044372a1d1104000714202d3a4753606d7a8794a0ada69a8d807366594d4033261a0d00000000000000000000020c17212b353e48515a626a727980868c9195989b9d9e9f9f9f9e9c9a97948f8a857e776f675e554c42382e23190e030000000000000000000000000000040c131a21282d33383d4145484b4d4f515252535252514f4d4b4844403b36312b241d160e06000000000000000000000000000000000000000000000000000000000005101b252f373e4346464646464646433f382f261c110600000000000000000000000000000000000009131c252c32373939393939393939393937322c251c130900000000000000000000000000000000000000000000000000000000000000000009131c252c32373939393939393939393937322c251c13090000000000000000040c141c232a30353a3e4245484a4b4c4c4d4c4c4a494643403c37312b251e160e0500000000000000000000000000000000000000030d161f29323b43494d4d4d4d4d4d4d4d4d4a453e352b232d363e464b4d4d4d4d4d4d4d4d4c49433b31271d11060000050f1820272d31333434343434343433322e282119131b232a2f32343434343434343433302b251e150c02000000000000000000000000000000000000121e2b3844515e6b7784919a8d81736f6f6f685e6b7784919a8d81736f6f6f685e52463a2d2114070004101c2834404c5965717d837e7975706b6662606d7a86939f9285786c5f63676c71757a7e837a6d6155493d3125190d010013202c3946535f6c7986898989898989887b6f6255483c2f221509000000000000000000000000000000000000000000000000000000000d1a26323f4b57636f7b87939b90857a7168615b59585b60677079838e9994897d7165594c4034271b0f0200000000000000000000020b151e27313a444d57606a737c86919eaaa195887b6f6255483c2f2215090000000000000000000000000000000000000000000000000000000000000000000000000000101c2936424f5b6874818d9aa6afa3978b8074695f57514e4d4d4e5053585d636a727a838d96978c817b87929da8a69b90867c7269615b55514e4d4d4e4f51555a60676f78828c969f9c9893877c7064584c4033271a0d0100101c2936424f5b6874818d9aa6afa3978b7f73685e56504e4d4e4f52555a60676e767f88928f8485929faba79a8e8174685b4f4c4e4f4c463f362c21160b00000007131f2b37434f5a66727d89949faaa89d92877d736a625b565351515254585d646c75808a95a0aca59a8f83776b5f53473b2f23160a00000006121e2a36414d5965707c87929da8a99e93897e756c645d57524f4e4d4d4e5053575d636b747d87919c9e9a978d82766a5e5246392d2014070000101c2936434f5c697683909ca9aa9d9084776a5d5044372a1d1104000714202d3a4753606d7a8794a0ada69a8d807366594d4033261a0d0000000000000000000000050f19232c363f48505860686f757b8085898c8f909292929291908e8b88847e79736c655d554c433a30261c120700000000000000000000000000000000010910161c22282d3135393c3f41434445464646454443413e3b3834302b251f19130c040000000000000000000000000000000000000000000000000000000000000009131d252d33373939393939393937332d261d140a00000000000000000000000000000000000000010a131a21262a2c2c2c2c2c2c2c2c2c2c2a26211a130a01000000000000000000000000000000000000000000000000000000000000000000010a131a21262a2c2c2c2c2c2c2c2c2c2c2a27211b130a0100000000000000040d161e262e353b41464a4e525456585959595958575553504c48423d362f2820170f050000000000000000000000000000000000030c151f28313b444d55595a5a5a5a5a5a5a5a5650473d322c353f4850575a5a5a5a5a5a5a5a59544d43392e22170b00020d17212a32393d4040404040404040403e39332b221b252d353b3f40404040404040403f3c372f271e140b020000000000000000000000000000000000121f2c3845525f6b788592998c807c7c7c7a6e626b788592998c807c7c7c7a6e6255483b2f22150900000c1824303c4854616d7777726e69645f5b56616d7a87949f9286796c5f575b6065696e737774695d5145392d211509000013202c3946535f6c7986939696969695887b6f6255483c2f221509000000000000000000000000000000000000000000000000000000000a17232f3b47535f6b76828d98978d837a726c676565676b7179828b95998e83786c6055493c3024180c00000000000000000000010a141d273039434c565f69727c858f98a2a2988f857b6f6255483c2f2215090000000000000000000000000000000000000000000000000000000000000000000000000000111e2b3744515d6a7783909ca9aca094877b6f63584d464240404244474c52586068717a858f999388818c98a3aba0958a7e746a6057504945424140414245494e555d66707a859093908c89858174675b4e4134281b0e0100111e2b3744515d6a7783909ca9aca093877b6e63574c4541404143454a4f555c646d76808a948e8f97a2aea6998c8073665a4d404142403b352d241a10050000000a17232f3b47535f6b77838e9aa5aea2978b80756b6158504a47454445484c525a646e78848f9ba7ab9f94887c7063574b3f32261a0d0100000916222e3a46525e6a75818d98a4aea3978c81776c635a524b46434140414244474c5259626b75808a95918e8a87837a6e6154483b2e2115080000101c2936434f5c697683909ca9aa9d9084776a5d5044372a1d1104000714202d3a4753606d7a8794a0ada69a8d807366594d4033261a0d00000000000000000000000007111a242d363e474e565d646a6f74797c808284858686858483817e7b77736e68625b534b433a31281e140a00000000000000000000000000000000000000050b11171c2125292c2f323436373839393938383634322f2c28241f1a140e08010000000000000000000000000000000000000000000000000000000000000000010b131b21272a2c2c2c2c2c2c2c2b27221c140b020000000000000000000000000000000000000000010910161a1e1f20202020202020201f1e1a161009010000000000000000000000000000000000000000000000000000000000000000000000010910161a1e1f20202020202020201f1e1b1610090100000000000000020c161f2830383f464c52575b5e616364656666666564625f5c58534e48413a322921170e04000000000000000000000000000000020b151e27313a434d565f65676767676767676661594e4337353e47515a626667676767676767655f554a3f33271b0e0008131e29333c444a4d4d4d4d4d4d4d4d4d4a453d342b232d373f464b4d4d4d4d4d4d4d4d4c48413930261d140a0100000000000000000000000000000000131f2c3946525f6c7986929b90898989887b6f626c7986929b90898989887b6f6255483c2f22150900000814202c3844505b656c6b67625d58544f55616e7b8894a09386796d60535054595d62676b6a62584d4135291d1105000013202c3946535f6c798693a0a3a3a295887b6f6255483c2f2215090000000000000000000000000000000000000000000000000000000007131f2b37434e5a65707b86909a958c847d7874727274777c838b949b91877d72675b5044382c2014080000000000000000000009131c262f39424b555e68717b848e97a1a39990867d736a5f53473a2e2114080000000000000000000000000000000000000000000000000000000000000000000000000000121f2c3945525f6b7885929eabaa9e9185786b5f53473b35343435373b40474e565f69727d8892998f8b929da9a69b8f84786d62584e453e393534343436393d444b545e68737e8a8783807c79756f65594d4034271a0e0100121f2c3945525f6b7885929eabaa9e9185786b5f52463a35343436393e444b525b646e78828d989ba0a9b2a6998c7f7265594c3f3535332f2a231b1208000000010e1a26333f4b57636f7b87939faba99d91857a6f64594f463f3a3837383b4148525c67737e8a96a2a6a4988c8073675b4e4235291c100300000d1925323e4a56626e7a86929ea9a99d91867b70655b5148403a3634343435373b40475059636e79848985827e7a77736a5f53463a2d2114070000101c2936434f5c697683909ca9aa9d9084776a5d5044372a1d1104000714202d3a4753606d7a8794a0ada69a8d807366594d4033261a0d0000000000000000000000000008121b242c353d444b52595e64686d7073757778797979787674726f6b67625d575049413931281f160c02000000000000000000000000000000000000000000060b1015191d20232628292b2c2c2c2c2c2b292825231f1c18130e09030000000000000000000000000000000000000000000000000000000000000000000000010910161b1e202020202020201e1b17110a020000000000000000000000000000000000000000000000050a0e1113131313131313131313110e0a05000000000000000000000000000000000000000000000000000000000000000000000000000000050a0e1113131313131313131313110e0a050000000000000000000a141e28313a424a51585d62676a6d6f717273737372706e6c68645f59534b443b332920160c0100000000000000000000000000010a141d273039434c565f687173737373737373736b5f53473a3d475059626c737373737373737371675b4f43362a1d10000d1924303b454e55595a5a5a5a5a5a5a5a564f463d342a343f4951575a5a5a5a5a5a5a5a58534b42392f261c130a0000000000000000000000000000000013202c3946535f6c798693a099969695887b6f626c798693a099969695887b6f6255483c2f221509000004101c28343f4a535b5f5f5b56514c484855626f7b8895a094877a6d615447484d52565b5e5e5950473c3025190d01000013202c3946535f6c798693a0acafa295887b6f6255483c2f22150900000000000000000000000000000000000000000000000000000000030f1a26323d49545f6a747e88919a968f8984817e7e8083888e959b928980756b60554a3f33281c100400000000000000000008121b252e38414b545d67707a838d96a0a49a91877e746b61584d42372b1e1206000000000000000000000000000000000000000000000000000000000000000000000000000013202c3946535f6c7986939faca99d9083766a5d5044372a2727282b2f353c444d57616b76818c989a979ba4aea2968a7e72675c51463c332d29272728292d3239424c57626e797e7a7774706d69655d53483d3124180c000013202c3946535f6c7986929facaa9d9083766a5d5044372a27272a2d32394049525c66717b87929da9b2b2a6998c7f7265594c3f322827241f1811090000000004111d2a36424f5b6773808c98a4b0a4988c8175695d52473d342e2b2b2c3036404b56626e7a86939a9a99988f83766a5d5144382b1f12050004101c2935424e5a66727e8b97a3aea4988c8175695e53493f362f2a282727282b2f363e47515c6874807c7975726e6b6762594e43372b1e12050000101c2936434f5c697683909ca9aa9d9084776a5d5044372a1d1104000714202d3a4753606d7a8794a0ada69a8d807366594d4033261a0d000000000000000000000000000009121a232b323a41474d53585c606466696a6b6c6c6c6b6a6866635f5b56514b453e372f271f160d0400000000000000000000000000000000000000000000000004090d101417191b1d1e1f1f201f1f1e1d1b191613100c0703000000000000000000000000000000000000000000000000000000000000000000000000000000050a0f1113131313131313120f0b0600000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000007111c26303a434c545c63696e73777a7c7e7f8080807e7d7b7874706a645d564d453b32281d1308000000000000000000000000000a131d262f39424b555e68717a818181818181817b6f6255483c464f59626b757e81818181818181776a5d5144372a1e1100101c2935414c576066676767676767676661584f453c333a45515b636767676767676767645d544b41382e251c120900000000000000000000000000000013202c3946535f6c798693a0a5a3a295887b6f626c798693a0a5a3a295887b6f6255483c2f2215090000000c17232d3841495053524f4a45413c4955626f7c8995a194887b6e6154483c41464a4f52514d473e352a1f140800000013202c3946535f6c798693a0acafa295887b6f6255483c2f22150900000000000000000000000000000000000000000000000000000000000a15212c37424d58626c767f8890989a94908d8c8c8d8f949999918981776d64594f44392e22170b00000000000000000007111a242d37404a535d666f79838c959fa49b92887e756c62594f463c31261a0e02000000000000000000000000000000000000000000000000000000000000000000000000000013202c3946535f6c798693a0aca99c908376695d5043362a1d1a1c1f242a323b454f5964707b87929ea4a7adaa9e9286796d62564a3f342a221c1a1a1b1d2127303a45515d6871726e6b6764605d59544b42372c201408000013202c3946535f6c798693a0acaa9d908376695d5043362a1d1b1d21272f37404a545f6a75818c98a4b0b2a6998c7f7265594c3f32261a17130d0700000000000714202d3945525e6b7783909ca8ada194887c7064584c41362b231f1e1f242e3a46525e6a77838e8e8d8c8b8a85796c6053463a2d2013070007131f2c3845515d6a76828f9ba7aca094887c7064584d42372d241e1b1a1a1c1f242c35404b57636d73706c6965625e5b5750473c32261a0e020000101c2936434f5c697683909ca9aa9d9084776a5d5044372a1d1104000714202d3a4753606d7a8794a0ada69a8d807366594d4033261a0d00000000000000000000000000000008111921282f363c42474c5054575a5c5e5f5f5f5f5e5d5b5956534f4b46403a342d251d150d040000000000000000000000000000000000000000000000000000000104070a0c0e1011121313131211100e0c0a07030000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000407080909090909080705010001050708090909090908070401000000000000000000000000000000000407080909090909080705010000000000000000000000000000000000000000000000000000020d18232e38424c555e666d747a7f8386898b8c8c8c8c8b8a8784817b766f675f574d44392f24190e03000000000000000000000009121c252f38414b545d67707a838c8d8d8d8d8d887b6f625548454e58616b747d878d8d8d8d8d8d84776a5d5144372a1e1100121f2c3845515d697273737373737373726a61574e453b3d4a56626d73737373737373736f665d534a40372e241b1208000000000000000000000000000013202c3946535f6c798693a0acafa295887b6f626c798693a0acafa295887b6f6255483c2f22150900000006111c262f383f444646433e3a353d4956636f7c8996a295887b6e6255483c353a3e434545413c352c23190e0300000013202c3946535f6c798693a0acaca295887b6f6255483c2f221509000000000000000000000000000000000000000000000000000000000004101b26313c46505a646d767e868d93989b9a9898999c98948e8780776e655c52483d32271c11060000000000000000071019232c363f49525c656f78828b959ea59c928980766c635a50473d342a20150900000000000000000000000000000000000000000000000000000000000000000000000000000013202c3946535f6c7986929facaa9d9084776a5d5144382b211c1917192029333d48535e6a76828e9aa6b2b3a79b8e8276695d5145392e2322222222222222222935414c57606565625e5b5854504d49423930251b0f04000013202c3946535f6c7986929facaa9d9084776a5d5144382b1f1a17161d252e38434d5964707b87939fabb2a6998c7f7265594c3f3226190c07020000000000000a16232f3c4855616e7a87939facaa9d9185786c6054483c3024191211131d2936424f5b6874818281807f7e7d7d796d6053473a2d201407000916222f3b4854606d7986929eaba99d9084786b5f53483c30252222222222222222232f3b46515b636664605d5956524f4b453e352b20150a000000101c2936434f5c697683909ca9aa9d9084776a5d5044372a1e1104000714202d3a4753606d7a8794a0ada69a8d807366594d4033261a0d00000000000000000000000000000000070f161d242b31363b4044484b4d4f515252535252504f4d4a47433f3a352f29221b130c0300000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000002070c0e1010101010100f0d09090d0f1010101010100e0b070a0e101010101010100d0a05000000000000000000000000000000000000070c11141515151515151514110d080d11141515151515151514110c0700000000000000000000000000070c11141515151515151514110d080100000000000000000000000000000000000000000000000008131e2a353f4a545e6770787f858b8f93959798999999989694918c87817971695f564b41362b1f14080000000000000000000008121b242e37414a535d666f79828c959a9a9a92887f756c6054474e57616a737c868f999a9a988e857b72685c5043362a1d100013202c3946535f6c79818181818181817c736a60574d443e4b5865717e81818181818181786f655c524940362d241a11080000000000000000000000000013202c3946535f6c798693a0acaca295887b6f626c798693a0acaca295887b6f6255483c2f221509000000000a141d262d3337393937322e303d4a5763707d8a96a095897c6f6255493c2f2e3336383835312b231a11070000000013202c3946535f6c798693a0a0a0a095887b6f6255483c2f2215090000000000000000000000000000000000000000000000000000000000000a141f2a343e48525b646c747b82878c8f919292918f8c88827c756d655c534a40362b21160b0000000000000000060f19222b353e48515b646e77818a949da69d938a80776d645b51483e352b22180e03000000000000000000000000000000000000000000000000000000000000000000000000000000121f2c3845525e6b7885919eabab9e9285796c6054483c322c2825232221212c37424e5965717d8a96a3afb1a4988b7f72665a4d41352e2e2e2e2e2e2e2e2e2e2e303a454e55595956524f4b4844413d3730271e140a010000121f2c3845525e6b7885919eabab9e9285796c6053473b312a262422212126313c48535f6b77838f9ca8b2a6998c7f7265594c3f3226190c00000000000000000c1825313e4b5764707d8996a2afa79a8e8275695c5044372b1f1308040e1a2733404c59657076757473727271706e675c5144382c1f1306000b1824313e4a5763707c8995a1aea69a8d8174685c4f43372e2e2e2e2e2e2e2e2e2e2e2e3540495157595754504d4946423f3a342c23190f05000000101c2936434f5c697683909ca9aa9e9184776b5e5145382b1f1205000714202d3a4753606d7a8794a0ada69a8d807366594d4033261a0d0000000000000000000000000000000000040c131920252b3034383c3e41434445464646454442403d3a37332e29241e17100902000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000004060707070707070707050200000000000000000000060d13181b1d1d1d1d1d1d1c191515191c1d1d1d1d1d1d1b1713171a1c1d1d1d1d1d1c1a16110b030000000000000000000000000000020b12181d2022222222222222201d1913181d2022222222222222201d18120b03000000000000000000020b12181d2022222222222222201d19130c0400000000000000000000000000000000000000000000010d1824303b46515c667079828a91969b9c97949291919193959a9d98928b837b71675d52473c3025190d01000000000000000007111a242d364049525c656f78828b949ea59c928980766d635a4f4d566069737c858f98a1a2988f867c736960564b4034271b0f0013202c3946535f6c79868d8d8d8d8d8d857c72695f564d434b5865717e8a8d8d8d8d8d8a81776e645b52483f362c231a100700000000000000000000000013202c3946535f6c798693a0a0a0a095887b6f626c798693a0a0a0a095887b6f6255483c2f22150900000000020b141b22272b2d2c2a2724313e4a5764717d8a939393897c6f6356493d3023272a2c2b292520191108000000000013202c3946535f6c7986939393939393887b6f6255483c2f221509000000000000000000000000000000000000000000000000000000000000030e18222c364049525a626a70767b80838586868583807c77716a635b534a41382e241a0f0400000000000000050e18212b343d47505a636d768089939ca69e948b81786e655b52493f362c2319100600000000000000000000000000000000000000000000000000000000000000000000000000000000111e2a3744505d6a76838f9ca8ada195887c7064594e443d383432302f2e2d2d313d4955616e7a8793a0acafa296897c7063574a3e3b3b3b3b3b3b3b3b3b3b3b3b3b3b3c43494c4c4946423f3b3b3b3b38332d251c13090000111e2a3744505d6a76838f9ca8ada194887b6f63584d433b3633312f2e2d2d2d37434f5b6773808c99a5b2a6998c7f7265594c3f3226190c00000000000000000e1a2733404d5966727f8c98a5b1a5988c7f7266594d4034281b0f03000b1824303c48545e666968676766656463625d554b4034281c1004000d1a2633404c5965727e8b98a4b0a4978b7e7265594c403b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3f464b4c4b4844413d3b3b3b3a36302921170d030000101c2936434f5c697683909ca9ab9f9285796c5f53463a2d201408000714212e3a4754616d7a8794a0ada69a8d807366594d4033261a0d00000000000000000000000000000000000001080e141a1f24282c2f323436383939393938373533312e2b27221e18120c060000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001070c10131414141414141414120f0a04000000000000000811181f2427292a2a2a2a2a2825202125282a2a2a2a2a2927231e2227292a2a2a2a2a2926221c150d04000000000000000000000000020c141c23292d2f2f2f2f2f2f2f2d29241e24292d2f2f2f2f2f2f2f2d29231d150c0300000000000000020c141c23292d2f2f2f2f2f2f2f2d29241e160d0400000000000000000000000000000000000000000005111d2935414c57636d78828b949b9d96908b888584848586898e949b9d958d83796f64584d41362a1e12060000000000000007101a232c363f48525b646e77818a949da69d938a81776d645b514c565f68727b858e97a1a29990867d736a61574e443a2f23170b00121f2c3845525e6a747d8790999a9a978e847b71685f554c4a56636e77818a949a9a9a938980766d645a51483e352c22191006000000000000000000000013202c3946535f6c7986939393939393887b6f626c7986939393939393887b6f6255483c2f2215090000000000020a11171b1e20201e1b25313e4b5764717e86868686867d7063574a3d30241b1d1f1f1d19140e0700000000000013202c3946535f6c7986868686868686867b6f6255483c2f2215090000000000000000000000000000000000000000000000000000000000000006111b242e37404850585f656b6f7376787979787673706b666059514941382f261c120800000000000000040d17202a333c464f59626c757f88929ba59e958c82786f665c534940362d241a110700000000000000000000000000000000000000000000000000000000000000000000000000000000000f1c2935424e5b6774808c99a5b1a4988c81756a60564f4944413e3d3b3a3a3a393946525f6b7885919eabada194877a6e61554848484848484848484848484848484848484848484848484848484847443f372e251a0f04000f1c2935424e5b6774808c99a5b0a4988c8074695f554d47423f3d3c3b3a3a39393f4b5864717d8a97a3b0a6998c7f7265594c3f3226190c00000000000000000f1c2835424e5b6874818e9aa7afa3968a7d7064574a3e3125180c00000814202c37424c545a5c5b5b5a5958575655524b43392e23180c00000f1b2835414e5b6774818d9aa6afa295897c6f63564a4848484848484848484848484848484848484848484848484848484846413b33291f14090000101c2936434f5c697683909ca9ada094877b6e6155493c3024170c000814212e3b4754616d7a8794a1aea69a8d807366594d4033261a0d000000000000000000000000000000000000000003090e13181c202325282a2b2c2c2c2c2b2a292725221e1b17120d070100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000040c13181d2021212121212121201e1b160f08000000000007111a222a303436363636363635312c2c3135363636363636342f292e3336363636363635322d271f160d0300000000000000000000000a141e262e34393b3c3c3c3c3c3b39352f282f35393b3c3c3c3c3c3b39352e271e140a000000000000000a141e262e34393b3c3c3c3c3c3b39352f281f160c0100000000000000000000000000000000000000000915222e3a46515d69747f8a949d9d948b857f7b797777787a7d8289929b9f958b8075695e52463a2e221509000000000000060f19222c353e48515a646d768089939ca69d948b81786e655b524c555e68717a848d97a0a39a90877e746b61584f453c32281d120700111d2936424d58626b757e87919aa4a0968d847a71675e544b525c656f78828b949ea59b928980766c635a50473e342b22180f060000000000000000000013202c3946535f6c7986868686868686867b6f626c7986868686868686867b6f6255483c2f22150900000000000000060b0f121313111825313e4b576470797979797979786f63564a3d302317111212100d090300000000000000131f2c3946525f6b767979797979797979786d6155483b2f221508000000000000000000000000000000000000000000000000000000000000000009121c252e363e464d545a5f6367696b6c6c6b6a67645f5a554e473f372f261d140a00000000000000030c161f29323c454e58616b747e87919aa49f968c837970665d544a41372e241b12080000000000000000000000000000000000000000000000000000000000000000000000000000000000000d1a26333f4c5864707d8995a1aca99d92877c7268605a54504d4b4948474746464646505d6a7784909daaac9f9386796c60555555555555555555555555555555555555555555555555555555555554504940362c211509000d1a26333f4b5864707d8995a1aca89c91867b70675f58524f4c4a484747464646464956626f7c8996a2afa6998c7f7265594c3f3226190c0000000000000000101d2a3643505d6976838f9ca9aea195887b6f6255493c2f23160a0000040f1b26303a42494e4f4f4e4d4c4b4b4a4946413a31271d12070000101d293643505c6975828f9ca8ada094877a6e61555555555555555555555555555555555555555555555555555555555555524c453b31261b0f0300101c2936434f5c697683909ca9afa3968a7d7164584c4034281d120b0915222f3b4855616e7b8894a1aea6998c807366594d4033261a0d0000000000000000000000000000000000000000000003070c101316191b1d1e1f1f201f1f1e1c1a1815120f0a06010000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000040d161d24292c2e2e2e2e2e2e2e2d2b27211a1209000000030e19232c343b40434343434343413d36373d41434343434343403b34393f424343434343423e3931281f150a0000000000000000000006111c26303840454848484848484846413a313940454848484848484845403930261c1106000000000006111c26303840454848484848484846413a31281e130800000000000000000000000000000000000000000c1925313e4a56626e7a85919b9f958b8179736f6c6b6a6b6d71778089949f9d92867a6e62564a3d3125180c0000000000050f18212b343e47505a636c768089929ba59e958b82786f665c534b545e67707a838d969fa49a91887e756b62594f463d332a21160c01000d1925313c465059626c757e88929ba49f958c837970665d544a535d666f79828c959ea49b91887e756c625950463d342a21180e05000000000000000000131f2c3946525f6b767979797979797979786d616b767979797979797979786d6155483b2f221508000000000000000000030506060a16232f3c48535e686c6c6c6c6c6c6c675d52473a2e22150900000000000000000000000000111e2a37434f5a646b6c6c6c6c6c6c6c6c6c665c5145392d2014070000000000000000000000000000000000000000000000000000000000000000000a131c242c343c42494e53575a5d5e5f5f5f5d5b58544f49433c352e251d140b02000000000000000a151e28313b444e57616a737d879099a3a0978d847a71675e554b42382f251c1209000000000000000000000000000000000000000000000000000000000000000000000000000000000000000b1723303c4854606c7884909ba6aea3988e847a726b65605d5a585655545353535252525d697683909daaab9e9285786b616161616161616161616161616161616161616161616161616161616161605b52483d32261a0d000b1723303c4854606c7884909ba6ada2978d83797169635e5b5856555453535353525255626f7b8895a2afa6998c7f7265594c3f3226190c0000000000000000111e2b3844515e6a7784919daaada093877a6d6154473a2e21140800000009141e2831383e4243424140403f3e3d3c3a352f281f150b010000111e2b3744515d6a7784909daaaca09386796d616161616161616161616161616161616161616161616161616161616161615e574d42372b1f130700101c2936434f5c697683909ca9b2a5998d8174685c5045392e241c17161723303d4956636f7c8995a2afa6998c7f7266594c403326190d0000000000000000000000000000000000000000000000000004070a0c0f1012121313131211100e0c09060200000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000020c161f282f35393a3a3a3a3a3a3a3a37322c241b110700000914202b353e464c4f50505050504d484141494e50505050504f4c453d444a4f50505050504e4a433a31261b10040000000000000000000b17222d38424a5155555555555555524b433a424b5155555555555555514b42382e23180d02000000000b17222d38424a5155555555555555524b433a2f24190e03000000000000000000000000000000000000000f1c2835414d5a66727e8a96a2998e83786f6863605e5d5e61666d77828d99a3978b7e7266594d4034271b0e00000000050e17212a333d465059626c757e88919ba49f958c837970665d544a545d667079838c959fa49b92897f766c635950473d342b21180f05000009141f2a343e47505a636d768089929ca59e958b82786f665c534b545d67707a838c969fa39a91877e746b62584f463c332a20170e040000000000000000111e2a37434f5a646b6c6c6c6c6c6c6c6c6c665c646b6c6c6c6c6c6c6c6c6c665c5145392d2014070000000000000000000000000007131f2b37424d565c5f5f5f5f5f5f5f5c554c41362a1e1206000000000000000000000000000e1a26323e48525a5f5f5f5f5f5f5f5f5f5f5b544a4034291d1104000000000000000000000000000000000000000000000000000000000000000000010a121b222a31373d42474b4e5052525252504e4b47433e38322b231c130b020000000000000006111c26303a434d566069737c868f98a2a1988e857b72685f554c433930261d130a00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000714202c3844505c68737e8a959fa9aa9f968c847d76716c69666463616160605f5f5f5f5e697683909daaab9e9184776e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6c645a4e4236291d10000714202c3844505c68737f8a959fa9a99e958b837b746f6a676563626160605f5f5f5f5f626f7b8895a2afa6998c7f7265594c3f3226190c0000000000000000121f2c3845525f6b7885929eabac9f9286796c5f5346392d201306000000020c161f262d323536353534333231302f2d2a241d160d03000000121f2b3845525e6b7885919eabac9f9286796e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e695f54483b2f22160900101c2936434f5c697683909ca9b5a99d9185786d61564b40362e2724232326323f4b5864717d8a97a4b0a5988b7e7265584b3f3225190c00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000008131e28313a40454747474747474746433d362d23190e03000d1a25313c4750585c5d5d5d5d5d59524a4a535a5d5d5d5d5d5c574f464d565b5d5d5d5d5d5b554c43382d2115090000000000000000000f1b27333f4a545c616262626262615d554c414a545d616262626262615c544a3f34291e1307000000000f1b27333f4a545c616262626262615d554c41362b20140900000000000000000000000000000000000000111e2b3744505d6975828e969795897d71675d5753515152555b66717d8995a29a8e8175685b4f4236291c10000000040d172029333c454f58626b747e87919aa3a0968d837a71675e544b535c666f78828b959ea59c928980766d645a51473e352b22190f06000000030e18222c353e48515b646d77808a939ca69d948b81786e655b524b555e68717a848d97a0a39990877d746a61584e453c322920160d04000000000000000e1a26323e48525a5f5f5f5f5f5f5f5f5f5f5b545a5f5f5f5f5f5f5f5f5f5f5b544a4034291d110400000000000000000000000000030f1a26303b444b5053535353535353504b433a2f25190e02000000000000000000000000000a16212c3740484f52535353535353535352504a42382e23180c0000000000000000000000000000000000000000000000000000000000000000000000000911181f262c32373b3f41444546464544423f3b37322d272019120a0100000000000000000b17222d38424c555f68727b858e98a1a2988f867c736960564d433a31271e140b01000000000000000000000000000000000000000000000000000000000000000000000000000000000000000004101c28343f4b57626d78838d97a0a9a89f968e88827d797573716f6e6d6d6d6c6c6c6b6b6b7683909daaab9e91847b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b766a5e5144372b1e110004101c2834404b57626d78838e97a1aaa69d958d86807b777472706f6e6d6d6c6c6c6b6b6b6f7b8895a2afa6998c7f7265594c3f3226190c0000000000000000131f2c3946525f6c7986929facab9f9285786b5f5245392c1f120600000000040d151c212628292928272625242423211e19130c0400000000131f2c3946525f6c7985929facac9f92857b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7a7063574a3d3124170a00101c2936434f5c697683909ca9b6ada195897e72675c52484038333130303136424e5b6773808c99a5b0a3978a7d7064574a3e3124180b00000000000001060a0c0e0e0e0e0e0e0e0d0c09040004080b0d0e0e0e0e0e0e0e0d0a070200000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000020e1925303a434b5154545454545454534f483f352a1f140800111d2a36424e5962686969696969645c51525c6569696969696861584d555f676969696969665f54493d3125190d000000000000000000121e2b3743505b666d6f6f6f6f6f6e675d5247505c666e6f6f6f6f6f6d665c51463b2f24180d01000000121e2b3743505b666d6f6f6f6f6f6e675d52473c31251a0e03000000000000000000000000000000000000131f2c3946525f6b788588898a8c85786c60554c474544454955616d7a8693a09c9083766a5d5043372a1d100000030c161f29323b454e57616a747d879099a3a0978e847b71685f554c525c656e78818a949da69d938a80776d645b52483f352c23191007000000000006101a232c363f49525b656e77818a949da69d938a81776d645b514c565f68727b858e97a1a2998f867c736a60574e443b32281f160c030000000000000a16212c3740484f52535353535353535352504a4f52535353535353535352504a42382e23180c00000000000000000000000000000009141f29323a404446464646464646443f3931281e1308000000000000000000000000000005101a252e373e4346464646464646464646433f3830261c120700000000000000000000000000000000000000000000000000000000000000000000000000060e141b21262b2f323537383939383735332f2b27211c150f07000000000000000000000f1b27333f4a545e67717a848d97a0a39990877d736a61574e443b31281f150c02000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000b17232f3a45515c66717b858e979ea6a8a099938d898582807d7c7b7a79797979797878787783909daaac9f93898888888888888888888888888888888888888888888888888888888888888884776b5e5144382b1e1100000b17232f3a46515c67717c858f98a0a7a79f97918b8783817e7c7b7a7a79797979787878777b8895a2afa6998c7f7265594c3f3226190c000000000000000013202c3946535f6c798693a0acab9e9285786b5e5145382b1e12050000000000030a1016191c1c1c1b1a191918171614120d0801000000000013202c3946535f6c7986939facaca0948a88888888888888888888888888888888888888888888888888888888888888887d7164574a3e3124170b00101c2936434f5c697683909ca9b1a8a29a8f84796e645a524a44403d3c3d3e4148535e6a77838f9ca8aea195887b6f6256493c3023160a0000000000050c1216191a1a1a1a1a1a1a1a1815100a0f14181a1a1a1a1a1a1a1a1917120d0600000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000006121e2a36414c555d606161616161615f5a51473c3024180c00131f2c3945525e6a7476767676766d625656636e767676767673695d515a667176767676767165594d4135291c1004000000000000000013202c3946525f6c787b7b7b7b7b796f64594d53606d787b7b7b7b7b786d62574c4035291e120600000013202c3946525f6c787b7b7b7b7b796f64594d42362b1f1308000000000000000000000000000000000000131f2c3946525f6b767a7b7c7d7e8076695d50443a38373945525f6b7885929f9d9184776a5d5144372a1e1100000a151e28313b444d576069737c868f99a2a1988e857c72695f564d525b646e77818a939da69d948a81786e655c524940362d231a11070000000000000008111a242d374049535c656f78828b949ea59c928980766d635a514d566069727c858f98a1a1988f857c726960564d443a31281e150b02000000000005101a252e373e4346464646464646464646433f4346464646464646464646433f3830261c1207000000000000000000000000000000020d1720282f34383939393939393938342e271f160c0100000000000000000000000000000009131c252c32373939393939393939393937332d261e140b000000000000000000000000000000000000000000000000000000000000000000000000000000030910151a1f2326282a2c2c2c2c2b2926231f1b16100a040000000000000000000000111e2a37434f5b667079838c969fa09a91877e746b61584e453c32291f160c03000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000007121e29343f4a555f69737c858d949ba1a6a49e9995918e8c8a89888786868686858585858485919daab0a59b959595959595959595959595959595959595959595959595959595959595959184776b5e5144382b1e11000007121e2934404a55606a737d868e959ca2a7a29c9793908d8b898887878686868685858584848a96a2afa6998c7f7265594c3f3226190c000000000000000013202c3946535f6c798693a0acab9e9285786b5e5145382b1e120500000000000000050a0d0f100f0e0e0d0c0b0a090805010000000000000013202c3946535f6c798693a0acb0a59c96959595959595959595959595959595959595959595959595959595959595958a7d7164574a3e3124170b00101c2936434f5c697683909ca9aa9f9692958a80766c645c55504c4a494a4b4d525a646f7b87939fabab9f9286796d6054473a2e211508000000000710171d2225272727272727272725211b151a2024272727272727272726231e18110900000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000815212e3a47525e676d6d6d6d6d6d6d6b63584d4034281b0f0013202c3946535f6c79838383837e7266595764717d83838383796d61555b6875828383838276695d5145392c2014080000000000000000131f2c3945525e6a75808888888880756a5e53535f6b7681888888887f73685d51463a2f23170b000000131f2c3945525e6a75808888888880756a5e53473c3024180c000000000000000000000000000000000000111e2a37434f5a646b6d6e7071727370665a4e413c3c3d3f45525f6b7885929f9d9084776a5d5044372a1e110006111c27303a434d565f69727b858e98a1a2998f867c736a60574d515a646d768089939ca59e958b82786f665c534a40372e241b110800000000000000000008121b242e37414a535d666f79828c959fa49b92887f756c6359504e57606a737c869099a2a1978e857b72685f564c433a30271d140b01000000000009131c252c3237393939393939393939393733373939393939393939393937332d261e140b0000000000000000000000000000000000050e161d23282b2c2c2c2c2c2c2c2b28231d150d0400000000000000000000000000000000010a131a21262a2c2c2c2c2c2c2c2c2c2c2b27221c140c020000000000000000000000000000000000000000000000000000000000000000000000000000000000040a0e1316191c1e1f1f201f1e1c1a17130f0a0500000000000000000000000000121f2c3845525f6b78828b9393939392887e756c62594f463d332a20170d04000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000010c18232e38434d57616a737b82898f959a9ea2a5a19e9b99979694949393939292929291919197a2adb7ada6a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a29e9184776a5d5144372a1e110000010d18232e39434e58616b737c838a91969b9fa3a39f9c999796959493939392929292929191939ba6b2a6998c7f7265594c3f3226190c000000000000000013202c3946535f6c798693a0acab9e9285786b5e5145382b1e1205000000000000060c1013151514131211100f0e0d0b08040000000000000013202c3946535f6c798693a0acb7aea6a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2978a7d7164574a3e3124170b00101c2936434f5c697683909ca9a69a8d868d92887e756d66605c5857565657595d636c76818c97a3afa89c8f83766a5e5145382c1f130600000007101922282e323434343434343433312d261f252c303334343434343434322f29231b1208000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000a1623303d4956636f797a7a7a7a7a7a75695c504336291d1000121f2b3844515e6a778490908e8275695d56626f7c899090897d7165595a6673808c909086796d6155493c3024180c0000000000000000111d2a36424e59646e79848f9592867b6f64584f5a646f7a8590959085796e62574b3f33271b0f030000111d2a36424e59646e79848f9592867b6f64584c4035291d100400000000000000000000000000000000000e1a26323e48525a5f616263646567655e5449484848494b4f56626e7a8793a09b8f8275695c4f4336291d10000b17232e38424c555f68717b848e97a0a39990877d746a61574e505a636c767f89929ba59e958c837970665d544a41382e251b1209000000000000000000000009121c252f38414b545d67707a838c969fa49a91887e756b62584f4e58616b747d87909aa3a0978d847a71685e554c42392f261d13090000000000010a131a21262a2c2c2c2c2c2c2c2c2c2c2b272a2c2c2c2c2c2c2c2c2c2c2b27221c140c02000000000000000000000000000000000000040c12181c1f202020202020201e1c17120b03000000000000000000000000000000000000010910161a1e1f2020202020202020201e1b17110a02000000000000000000000000000000000000000000000000000000000000000000000000000000000000000002060a0d0f111213131211100d0a0703000000000000000000000000000000121f2c3845525f6b788586868686868680766d635a50473d342b21180e05000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000006111c27313b454f58616970787e84898e9295989b9d9fa0a1a2a1a0a0a0a09f9f9f9e9e9e9ea2a9b3b3a9a09b9b9b9b9b9b9b9b9b9b9b9b9b9b9b9b9b9b9b9b9b9b9b9b9b9ba0a9aeaa9d9083776a5d5044372a1d1100000007121d27323c464f59616a727980858a8f9396999c9e9fa1a2a1a1a0a0a09f9f9f9e9e9e9e9fa5adb2a6998c7f7265594c3f3226190c0000000000000000131f2c3946525f6c7986929facab9e9285786b5f5245382c1f120500000000020a11171c20212221201f1e1d1c1b1a1814100a03000000000013202c3946525f6c7986929facb4aaa19c9b9b9b9b9b9b9b9b9b9b9b9b9b9b9b9b9b9b9b9b9b9b9b9b9b9ea5aeaea3968a7d7063574a3d3024170a00101d2a3643505c697683909ca9a5988c7f869191888078716c68656363636466696e757e88929da9afa3988c8073675b4e4236291d10040000030e19222b333a3e41414141414141403d38312930373c40414141414141413f3b342d241a10050000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000a1723303d4a5663707d87878787878376695d5043362a1d1000101d2a3643505c6975828f9c9285796d6155616e7a8794998d8175685c5865727e8b9895897d7165584c4034281b0f03000000000000000e1a26313d47525d68737e8995978c8175695d51535d68737e8a95968a7f73675c5044372b1f130700000e1a26313d47525d68737e8995978c8175695d5145392d21140800000000000000000000000000000000000a16212c3740484f5354555657595a5953535555555556585b6068737e8a96a2978b7f73665a4d4134281b0f000f1b28333f4a545e67717a838d96a0a49a91877e746b62584f4f59626b757e88919ba49f968c837a70675e544b42382f261c1309000000000000000000000000000a131d262f39424c555e68717a848d97a0a39990877d746a61584e4f59626b757e88919aa49f968c837a70675e544b42382f251b10040000000000010910161a1e1f2020202020202020201e1b1e1f2020202020202020201e1b17110a02000000000000000000000000000000000000000001070c101213131313131313120f0b0600000000000000000000000000000000000000000000050a0e1113131313131313131313120f0b060000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000121f2b3845515e6a7679797979797979776d645b51483e352b22190f06000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000b151f29333d464f575f666d73787d8286898c8e91929495959696969797979798989898999da6b0aea2978f8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8f97a2aea99c8f8376695c504336291d10000000000b15202a343d474f5860676e747a7e83878a8d8f919394959696969697979797989898989aa1aab2a6998c7f7265594c3f3226190c0000000000000000121f2c3845525f6b7885929eabac9f9285796c5f5246392c1f1306000000010b141c22282c2e2e2d2c2c2b2a29282724201b140d0400000000121f2c3845525f6b7885929eabafa398908e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e939da8afa296897c6f6356493c3023160900101d2a3643505d697683909daaa5988b7e808a95918a837d787472706f707172757a8087909aa4afa99e93877b6f63574b3f32261a0d0100000915202b343d454a4d4d4d4d4d4d4d4d49433b313942484c4d4d4d4d4d4d4d4b463f362c22170b0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000a1723303d4a5663707d8a949494908376695d5043362a1d10000f1b2835414e5b6774818d9a95897d7165585f6c7985929d9185786c605763707d8996998d8175685c5044382b1f1307000000000000000915202b36404b56616d78848f9b9185796d61554c57626d7984909b9084786c6054473b2f23160a00000915202b36404b56616d78848f9b9185796d6155493d3024180b000000000000000000000000000000000005101a252e373e434647484a4b4c4d4e575f626262626364676b727a858f9b9c91867b6f63574a3e3225190c00121e2b3744505c667079838c959fa49b92887f756c6259504a56616b747e87909aa3a0978d847a71685e554c423930261d140a0100000000000000000000000000010b141d27303a434c565f68727b858e97a1a2998f867c736a60574e5059636c757f88929ba49e958c837970665d544a41372c21150900000000000000050a0e1113131313131313131313120f1113131313131313131313120f0b060000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000101d2936424e59646b6c6c6c6c6c6c6c6b655b52493f362c231910070000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000030e18212b343d454d545b62676d7176797d80828486878889898a8a8a8a8a8a8b8b8b8b8c949fabac9f928681818181818181818181818181818181818181818181818186929faca89b8e8275685b4f4235291c0f00000000040e18222b353d464e555c63696e73777a7d80828486878889898a8a8a8a8a8b8b8b8b8c8f98a4b0a6998c7f7265594c3f3226190c0000000000000000111e2b3744515e6a7784909daaaca09386796d6053473a2d20140700000009131d262d34383b3b3a39383736353433312c261f160d03000000111e2b3844515e6a7784919daaada09387818181818181818181818181818181818181818181818181818c99a6aea194887b6e6255483b2f22150900101d2a3643505d697683909daaa4988b7e78838d97948e8984817e7d7c7d7d7f82858b9199a2acaca2988d82766a5f53473b2f23160a0000020e1a26313c464f565a5a5a5a5a5a5a59544d4339424b53595a5a5a5a5a5a5a5751483e33281c100400000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000a1723303d4a5663707d8a96a19d908376695d5043362a1d10000d1a2633404c5966727f8c98998d8174685c5e6a7784909d95887c706457626e7b88949d9185786c6054473b2f23170a00000000000000040f19242f3a45505b67737e8a96968a7d7165594d515c68737f8b9794887c7064574b3f3226190d0000040f19242f3a45505b67737e8a96968a7d7165594c4034271b0e02000000000000000000000000000000000009131c252c3237393a3c3d3e3f485460696f6f6f6f6f7173777d848d969c948a80756a5e52473a2e22160a0013202c3946535f6c78828b959ea69c928980766d635a50474c5966727d879099a2a1978e857b72685f564c433a30271e140b02000000000000000000000000000000020b151e28313a444d566069737c858f98a2a1988f857c72695f564c515a636d768089929ca59e948b82786f665c53483d32261a0d000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000004090d101111111111110f0c080200000000000000000003090d10111111111111100d0803000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000e1a26313d48525a5f5f5f5f5f5f5f5f5f5a534940372d241a1107000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000030d151d242b333b434a50565c61656a6d70737577797a7b7c7c7d7d7d7d7d7d7e7e7e7e83909daaac9f93867974747474747474747474747474747474747474747474798693a0aca69a8d8073675a4d4134271b0e00000000030d151d242b343c444b51575d62676a6e71747678797a7b7c7c7d7d7d7d7d7e7e7e7e7e8895a2afa6998c7f7265594c3f3226190c0000000000000000101d2a3643505c6976828f9ca8ada194877a6e6154483b2e221508000005101b252f383f44474847464544434241403d3831281f150b000000101d2a3643505d6976838f9ca9ada094877a7474747474747474747474747474747474747474747474808d99a6aca093867a6d6054473a2e21140800111d2a3744505d6a7784909daaa4978b7e717b858e979994908d8b8a89898a8c8e92969ca3ababa39a90867b70655a4e42362b1f1306000005121e2a37424e586166676767676767655f554a3f49545d6567676767676767625a5044392d20140800000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000a1723303d4a5663707d8a96a39d908376695d5043362a1d10000c1825323e4b5764717d8a979d9184786c605c6976828f9c988c8074675b606d798693a094887c7064574b3f33271a0e020000000000000008121d28343f4a56626e7a86929a8d8175685c504b57636e7a8793988c8073675a4e4135281c0f03000008121d28343f4a56626e7a86929a8d8175685c4f43372a1d11040000000000000000000000000000000000010a131b21272b2d2e2f30313e4b5864717b7b7b7b7c7d8083888e9698928a82786e63594d42362a1e12060013202c3946535f6c7986939da7a1958a80776d645b5148404c596673808c98a2a79b8f857c726960564d443a31281e150c020000000000000000000000000000000000030c161f28323b444e57616a737d869099a2a1978e857b71685e5248515b646d77808a939da69d948a81786e655a4e4235291c10000000000001070b0e0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0e0b070100000000000000000000000000000000000000000000000001090f151a1d1e1e1e1e1e1e1c18130d0600000000000000070e14191c1e1e1e1e1e1e1c19140e070000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000915202b3640484e5253535353535353524f4941372e251b1208000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000b151f272f353a3c3e3f454b5055595d616466696b6c6d6e6f6f7070707071717171717683909daaada094877a6e67676767676767676767676767676767676767676f7b8894a1aea4988b7e7265594c3f3326190d000000000b151f272f353a3c3e40464c51565a5e626567696b6c6e6f6f707070707171717171717b8895a2afa6998c7f7265594c3f3226190c00000000000000000f1c2835424e5b6874818d9aa7afa295897c6f6256493d3023170a00000a16212c37414a50545554535251504f4e4c49423a31271c110600000f1c2835424e5b6874818e9aa7aea195887b6e67676767676767676767676767676767676767676875828e9ba8aa9e9185786b5f5245392c1f130600111e2a3744515d6a7784909da9a4978a7d70737c858e969d9c9a9796969697989a9ea2a7aaa5a09991887e746a5f54493d32261a0e0200000714212d3a46535f6a7374747474747471675b4f424d59656f747474747474736c6155493c2f23160a00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000a1723303d4a5663707d8a96a39d908376695d5043362a1d10000a1723303d4956636f7c8995a194887c70635b6774818d9a9c9084776b5f5f6b7885919e988c8073675b4f43362a1e1206000000000000030e19242d363e45515d6976828e9b9184786b5f5246525e6a76838f9b8f8276695d5044372b1e110500030e19242d363e46515d6976828e9b9184786b5e5245392c201306000000000000000000000000000000000000010910161b1e20212225323e4b5865717e888888898a8c8f9493908c8780786f665c52473c31251a0e020013202c3946535f6c7986939fa9a094887f756c62594f46404c596673808c99a4a79b8e847a71675e544b42382f251c120900000000000000000000000000000000000000030d162029323c454e58616b747d87909aa3a0968d847a6e62554849525b656e78818a949da69d938a80766a5d5144372a1e1100000000060d12171a1c1c1c1c1c1c1c1c1c1c1c1c1c1c1c1c1c1c1c1c1c1c1c1a17120d0600000000000000000000000000000000000000000000020b131a2126292b2b2b2b2b2a28241f18100700000000000911192025292b2b2b2b2b2b2925201911090100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000040f1a242e363d43454646464646464646433e372f251c13090000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000006121c2731394146494a4b4d4e4f50515254575a5c5e5f616262636363636364646465697683909daaaea295897c6f635b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b64717d8a96a3afa296897c7063574a3e3124180b00000006121c2731394146494a4b4d4e4f50515255585a5d5e606162626363636364646464656f7b8895a2afa6998c7f7265594c3f3226190c00000000000000000d1a2733404d5966727f8b98a4b0a3978a7d7164584b3f3226190d00020e1a26323e49535b6161605f5e5d5c5b5b59544c43392e22160a00000d1a2733404d5966727f8b98a4afa3968a7d70645b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5e6b7784909da9a89c8f8376695d5044372a1e110500111e2b3844515e6a7784919c9c9c96897d706a737c848b92979ca0a3a3a3a4a5a6a5a4a19e9a958e877f766c62584d42372c2115090000000815222e3b4854616e7b818181818181776a5d50444f5b68758181818181817d7063574a3d3024170a00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000a1723303d4a5663707d8a96a39d908376695d5043362a1d10000815222e3b4854616e7a8794a0988c8073675b66727f8c98a093877b6f635d6a7683909c9c9083776b5f53463a2e22160900000000000008141f2b353f484f545a66727e8b9893867a6d615450545a6773808c989185786c5f5246392c2013070008141f2b353f484f545a66727e8b9893867a6d6154473b2e2115080000000000000000000000000000000000000000050a0f1213141825323e4b5865717e8b959596979990898784817b756e665d544a40362b201409000013202c3946535f6c79848d97a0a59a91877e746b61584e454c5966737f88929ba4a0968c837970665d544a41372e241b120800000000000000000000000000000000000000040e17202a333c464f59626b757e88929ea89f95887b6f6255484049535c666f78828b97a3a59c9184776a5d5144372a1e110000000710171e2327292929292929292929292929292929292929292929292927231e1710070000000000000000000000000000000000000000040c141d252c32363738383838373430292219100600000008121b232b313537383838383735312b231b130b020000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000008121b242c323639393939393939393937332d251d130a01000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000b17232e39434b52565758595a5c5d5e5f5e59514f515354555556565657575757575d697683909daab0a4978b7e7265594e4e4e4e4e4e4e4e4e4e4e4e4e4e4e4e5a6773808c99a5aca093877a6e6155483b2f2216090000000b17232e39434b52565758595a5c5d5e5f5e59515052535455565656575757575757626f7b8895a2afa5998c7f7265594c3f3226190c00000000000000000c1825313e4a5763707c8995a2aea5998c8073675a4e4135291c100605111e2a36434f5a656d6e6d6c6b6a696867655e554a3f33261a0e01000c1825313e4a5763707c8995a2aea5988c8073675a4e4e4e4e4e4e4e4e4e4e4e4e4e4e4e4e54616d7a86939faca6998d8174675b4e4235281c0f0300121f2c3845525e6b78859090909090897c6f626a727980868c90949698999a9a9a999795928e89837c756d645a51463c31261b10040000000915222f3c4855626f7b888e8e8e8e84776b5e51444f5c6975828e8e8e8e8a7d7164574b3e3124180b00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000a1723303d4a5663707d8a96a39d908376695d5043362a1d10000714202d3a46535f6c7986929f9c9083776b5f64717d8a97a3978b7e73665c6875828e9ba093877b6f63564a3e3226190d0100000000000c1824303c47515a606263707c899695887b6f62565b606264707d8a9693877a6d6154473b2e211508000c1824303c47515a606263707c899695887b6f6256493c2f2316090000000000000000000000000000000000000000060c1216191b1c25323e4b5865717e8b9898999a9a8d827f7b76706a645c544b42382e24190e030000121f2b3844515d68727b858e98a1a39990867d736a60574d4a57626d768089939ca59e958c82786f665c534940362d241a1107000000000000000000000000000000000000020b151e27313a444d57606a737d86919eaaa195887b6f6255483e48515a646d77818a96a3a79e9184776a5d5144372a1e11000006101922292f333536363636363636363636363636363636363636363635332f2922191006000000000000000000000000000000000000050e161e262f363d42444444444444403b342b22180d0200040f1a242d353c41444444444444413c352d251d140c040000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000009121a21262a2c2c2c2c2c2c2c2c2c2a27211b130b0100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000030f1c28343f4a555d626465666768696b6c6a63594d4546474849494a4a4a4a4a4b515d6a7784909daab3a69a8d8175685c504441414141414141414141414146525e6a76838f9ba8a99d9084776b5e5246392d2014070000030f1c28343f4a555d626465666768696b6c6a63594d4546474849494a4a4a4a4a4b56636f7c8996a2afa5988c7e7265584c3f3225190c00000000000000000916222f3b4854616d7a86929faba89b8f82766a5d5145392d2116131214202d3946525f6b777b7a79787776757470675b4f4236291d1003000916222f3b4854616d7986929faba89b8f82766a5e5246414141414141414141414141414c5864707d8995a2aea3968a7d7165584c3f33261a0d010013202c3946535f6c79838383838383837b6e6260686f757b8084878a8c8d8d8e8d8c8b8886827d78726b635b52483f342a1f150a00000000091623303c4956626f7c89969a9a9285786b5e5245505d697683909a9a988b7e7165584b3e3225180c00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000a1723303d4a5663707d8a96a39d908376695d5043362a1d100005121f2b3845515e6b7784919d9f93877b6f62636f7c8995a29b8f83766a5e6773808d99a3978b7e72665a4e4235291d110500000000000e1b2834404d58636c6f6f6f7b8794968a7d706359646c6f6f6f7b889595887b6f6255493c2f221609000e1b2834404d58636c6f6f6f7b8894968a7d7063574a3d3124170a000000000000000000000000000000000000000810171e222627292a323e4b5865717e8b8b8b8c8e91948f8b87827b746b62594e44392e23170c000000101c2834404c566069737c868f98a2a2988f857c72695f564c515b646d77818a939da69d948b81786e655b52493f362c2319100600000000000000000000000000000000010a141d27303a434c565f69727c858f98a2a2988f857b6f62554847505a636c768089929ca79e958c82776a5d5144372a1e1100030e18222c343a3f42424242424242424242424242424242424242424242423f3a342c22180e0300000000000000000000000000000000070f172028303840484e5151515151504c463d34291e1307000915202b363f474d5151515151514d473f372f261e160e0500000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000080f151a1e1f20202020202020201e1b16100901000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005121e2b3744505c676e7071737475767778756a5e5145393b3b3c3c3d3d3d3d3e46525f6b7885929eabb6a99d9185786c6155493e343434343434343434343f4b56626e7a86939faba5998d8174685c4f43362a1e1105000005121e2b3744505c676e7071737475767778756a5e51453a3b3c3c3d3d3d3d3e3e4b5864717d8a97a4b0a4988b7e7165584b3e3225180c00000000000000000713202c3945515e6a76838f9ba7ab9e9286796d6155493d3228221f1f2026313d4955616e7a8786868584838281776a5d5044372a1d1104000713202c3945515e6a76828f9ba7ab9e92867a6e62574b40363434343434343434343a45515c6874818d99a5ab9f93877a6e6255493c3024170b0000121f2c3945525e6a7476767676767676756b60565d646a6f74777b7d7e80818181807e7c7976716c676059514940362d23180e03000000000a1723303d4a5663707d8996a39f9285796c5f5246505d6a7784909da5988c7e7265594c3f3226190c00000000000000000000000000000000000000000000000000000004060808080808080808080808080808080808080808080808080808080a1723303d4a5663707d8a96a39d908376695d5043362a1d100003101d2a3643505c6976828f9ca3978b7e7266616e7a8794a09f92867a6e6265727e8b98a49b8f82766a5e5245392d2115080000000000101c2936434f5c69757b7b7b7b8794978b7e71645d69767b7b7b7b889496897c706356493d3023160a00101c2936434f5c69757b7b7b7b8794978a7e7164574b3e3125180b00000000000000000000000000000000000007111a22292e32343536383e4b5865717e7e7e7e7f81858a9097938d867d746a60554a3f34281c110500000c18242f3a444e57616a737d879099a3a1978e857b71685f554c525b656e78818b949ea69d938a80776d645b51483e352b22180f0600000000000000000000000000000009131c262f39424b555e68717b848e97a1a39990867d736a5f53474f59626b757e88929ba49f968c837970665b4f4236291d100009141f2a343e454b4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4b453e342a1f14090000000000000000000000000000000911192129323a424a525a5e5e5e5e5e5d574f463b2f24180c000e1a26323d4751595d5e5e5e5e5d5851494038302820170f0700000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000040a0e11131313131313131313110f0a05000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000613202c3946535f6c787d7e808182838485796c6053473b302f2f30303030313c4855616e7a8793a0acb9ada195897d71665b50453b332c292828292d333c46505c67737e8a96a3ada195897d7164584c4033271b0e0200000613202c3946535f6c787d7e808182838485796c6053473b2f2f303030303036424e5a6673808c99a5afa3968a7d7063574a3d3124170b000000000000000004111d2936424e5a67737f8b97a3aea295897d71655a4e443a322e2c2c2d3038424e5965717d8a939291908f8d8174685b4f4236291d10030004101d2935424e5a66727e8b97a2aea3978b7f73685d52483e352e2a2828282b3037414b56616d7985919da9a79b8f83776a5e5246392d2114080000111d2936424d5862686969696969696968635a4f52595e63686b6e70727374747373716f6d6965615b554e473f372e241b110700000000000a1724313d4a5764707d8a97a4a09386796c605346515e6a7784919ea6998c807366594c4033261a0d00000000000000000000000000000000000000000000000000060c1013141515151515151515151515151515151515151515151515151515151723303d4a5663707d8a96a39d908376695d5043362a1d1000000f1c2835424e5b6774818d9aa79b8e82766a606c7986929fa2968a7e716563707d8a96a39e92867a6e6155493d3124180c0000000000101c2936434f5c6976838888888b96988b7e71655d6a77848888888c96978a7d7063574a3d3024170a00101c2936434f5c6976838888888b96988b7e7165584b3e3225180b0000000000000000000000000000000000040f19232c343a3f41424344454955616b717171717375797e858e979890867c72675c5045392d211509000007131e28323c454e58616b747e87919aa4a0968d847a71675e544b535c666f78828c959ea59c928980766c635a50473d342a21180e050000000000000000000000000008121b252e38414b545d67707a838d96a0a49a91877e746b61584d4e58616b747e87919aa4a0978d847a71675e544a3e32261a0e000d1925313c4650575b5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5b5750463c3125190d00000000000000000000000000020a121a232b333b444c545c646a6b6b6b6b6961574c4034281b0f00111d2a36424e59636a6b6b6b6b69635b524a423a32292119110900000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000006131f2c3945525e6b77848b8c8d8e9091887c6f63584c423c3937363637383c424d5964717d8996a2afbbb1a59a8e82776c61574d453d3835343436393e454e58626d78848f9ba7a89c9185796d6155483c3024170b00000006121f2c3945525e6b77848b8c8d8e9091887b6f63574b413b39373636373a3e47525e6a76828f9ba8ada094877b6e6255493c2f2316090000000000000000010d1a26323e4b57636f7b87939eaaa69a8e82766b60554c443e3a3938393c424a545f6a76818d999f9e9d968a7d7165584c4033271a0e0100010d1926323e4a56626e7a86929da9a79b9085796e64595047403a36343435373b4149535d68737e8a95a1ada2968b7e73675a4e42362a1d110500000d1925313c4650575c5c5c6063636363625e574d474d53575b5f62646566676767666563605d5955504a443d352d251c12090000000000000b1825313e4b5764717e8b97a4a093877a6d605347515e6b7885919ea69a8d8073675a4d4034271a0d0100000000000000000000000000000000000000000000020a11171c1f212121212121212121212121212121212121212121212121212121212123303d4a5663707d8a96a39d908376695d5043362a1d1000000d1a2733404d5966737f8c99a59e92867a6d616b7784919da69a8e827569626f7b8895a1a2968a7d7165594d4134281c100400000000101c2936434f5c697683909595969d988c7e72655d6a7784909595979e978a7d7164574a3e3124170b00101c2936434f5c697683909595969d988c7e7265584c3f3225190c00000000000000000000000000000000000a16212b353e454b4e4f505152535459616565656566696d747c85909b988e84786d6155493d3125180c0000010c16202a333d464f59626c757f88929ba59f968c83796f665d534a545d677079838c969fa49b92887e756c62594f463c332a20170d04000000000000000000000007111a242d37404a535d666f79838c959fa59b92887f756c62594f4d57606a737d869099a3a1978e857b72685f554c42382d22160a00111d2936424d5862686969696969696969696969696969696969696969696862584d4236291d11000000000000000000000000030c141c242c353d454d565e666e767777777773685c5043362a1d1000131f2c3945525e6b7577777777756d645c544c443b332b231a120a020000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000004111d2a36434f5c6875818d999a9b9c988c8074685e544c48464443434345484d545e6975818d99a5b2bcb6aa9f94887d73695f574f49444241414245494f576069747e8a95a0aca3978c8074685c5044382c20140800000004111d2a36434f5c6875818d999a9b9c988b8073685d534c484544434344464a5059636f7a86929eabaa9d9185786c5f53463a2d2114080000000000000000000a16222e3a46525e6a76828d99a4aa9e93887c72675e554f4a47454546484d535c66707b87929eaaa99d9185796d6155493d3024170b0000000916222e3a46525e6975818c98a3aca1968b80756b6259514b464341414244474c535b656f79848f9ba6a89d91867a6e62564a3e32261a0e0100000914202a353e464c4f57626b6f6f6f6f6f695f534742474b4f5255585d63676b6e6f6f6e6c68635d564e453c32281e130a000000000000000c1825323f4b5865717e8b98a5a194877a6e615447525f6c7885929fa79a8e8174675b4e4134281b0e01000000000000000000000000000000000000000000020b141c23282c2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e303d4a5663707d8a96a39d908376695d5043362a1d1000000c1825323e4b5864717e8a97a4a2968a7d71656976828f9ca89e9185796d606d7a8693a0a69a8e8175695d5044382c20140700000000101c2936434f5c697683909ca2a3a5988c7e72655d6a7784909da2a3a4978a7d7164574a3e3124170b00101c2936434f5c697683909ca2a3a5988c7e7265584c3f3225190c00000000000000000000000000000000030f1b27323d4750575a5b5d5e5f60615e5758585858595c626a737e8a96a095897d7265594d4034281b0f020000050e18212b343d47505a636d768089939ca69e958b82786f655c524b555e67717a848d97a0a49a91877e746b61584e453c32291f160c03000000000000000000071019232c363f49525c656f78828b959ea69c938980766d635a504c565f69727c858f98a2a2988f867c736960564d433a31261c110500121f2c3845525e6a73757575757575757575757575757575757575757575736a5e5245382c1f120000000000000000000000050d151e262e363e474f575f6770788084848484776a5d5044372a1d110013202c3946535f6c79848484847e766e665e554d453d352c241c140c03000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000010e1b2734404c5965717d8995a1a8a89c91857a6f665e585552515050505154585e66707b86929da9b4afaeb0a59a8f857b7168615a54514e4d4e4f51555a6169727b86909ba6a79c91867b6f63584c4034281c1004000000010e1b2734404c5965717d8995a1a8a89c9085796f655d5854525050505152565b626b75808b97a3afa5998d8175695c5044372b1e120500000000000000000006121e2a36424e5a65717c88939ea9a4998e83797067605a565352525355585e656e78828d98a3aea3988c8175695d5145392d21140800000006121e2a35414d5964707b87929da7a79c92877d746b635c56524f4e4d4e5053585e656d76818b96a1aca2978c8075695d52463a2e22160a000000030e19232c343b404d5a66737c7c7c7c7b6f63564a3e444a50575d63696e73777a7c7c7b78746e6860574e443a2f24190e030000000000000c1926323f4c5965727f8c98a5a195887b6e615548535f6c7986929fa89b8e8275685b4e4235281b0f020000000000000000000000000000000000000000000a141d262d34383a3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3d4a5663707d8a96a39d908376695d5043362a1d1000000a1723303d4956636f7c8995a2a69a8d8175696774818e9aa7a195897d70646b7885929eaa9d9185796d6054483c3023170b00000000101c2936434f5c697683909ca9afa5988c7e72655d6a7784909daaafa4978a7d7164574a3e3124170b00101c2936434f5c697683909ca9afa5988c7e7265584c3f3225190c0000000000000000000000000000000006131f2b37434e59626768696a6b6d6d6960554b4b4b4d5158626d7986929f9a8e8275695c5043362a1d1104000000060f19222b353e48515b646d77818a949da69d948a81776e645b514c555f68727b858e97a1a39990867d736a60574e443b31281e150c0200000000000000060f19222b353e48515b646e77818a949da69d948a81776d645b514c555e68717b848e97a1a39990867d736a61574e443b31281f150a000013202c3946535f6c79828282828282828282828282828282828282828282796c5f5346392c201300000000000000000000060f171f2730384048505961697179828a9191897e74695c5043362a1d1000131f2c3946525f6b76818b919189807870675f574f473e362e261e150d050000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000b1824303d4955616d7985909ba7ada2968c81786f6964615f5d5d5c5d5e6064697078828c97a3aea9a3a2a5aca1978d837a726b65605d5b5a5b5c5e61666c737b848d97a2aba0968b8075695e53473b2f24180c00000000000b1824303d4955616d7985909ca7ada1968b81776f6864605e5d5d5d5d5f62666c747d87919ca8aba094897d7165594d4034281c0f03000000000000000000020e1a26313d4954606b76828c97a2aaa0958b8279726b6662605f5f5f6164697077808a949ea9a79c92877b7064584d4135291d1104000000010d1925313c48535f6a75808b96a0aaa3998f867d756d67625e5c5b5a5b5d5f63696f778089929da7a59b90857a6f64584d4135291e12060000000007111a222933404c5966727f8989897e7266594e4a4f555c62686e747a7f8487898988858079726960564c41362b1f14080000000000000d1a2633404d596673808c99a6a295887c6f62554953606d798693a0a89c8f8275695c4f4236291c0f03000000000000000000000000000000000000000005111b262f383f4447484848484848484848484848484848484848484848484848484848484848484a5663707d8a96a39d908376695d5043362a1d1000000915222f3b4855616e7b8794a1aa9d9185796c6673808c99a5a5998d8174686a7783909da9a195897c7064584c3f33271b0f03000000101c2936434f5c697683909ca9aca5988c7e72655d6a7784909daaaca4978a7d7164574a3e3124170b00101c2936434f5c697683909ca9aca5988c7e7265584c3f3225190c000000000000000000000000000000000815212e3b4753606b7375767778797a7165594c3f3f4046515e6a7784909d9d9184776b5e5145382b1f120500000000071019232c363f49525c656e78818b949ea69c938980766d635a504d566069737c868f98a2a2988f857c736960564d433a30271e140b010000000000050e18212b343d47505a636d768089939ca69e948b81786e655c524b545d67707a838d96a0a39a91877e746b61584e453c32291f160d03000013202c3946535f6c79868f8f8f8f8f8f8f8f8f8f8f8f8f8f8f8f8f8f8f86796c5f5346392c201300000000000000000008101821293139414a525a626b737b838b94958b81776d63584c4034281b0f00111e2a37434f5a646f79838d97928a8279716961595048403830271f170f0600000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000814202d3945515c68737f8a959fa9a89d938a817a75706d6b6a69696a6b6d70747a828a949ea9a99f97959aa3a99f958d847d76716d6a686767686a6d72777d858d969fa9a2998f84796f63584d42362a1f130700000000000814202d3945515c68747f8a95a0aaa79d9389817a74706d6b6a69696a6c6e72777e868f99a3aea4998e83786c6055493d3024180c00000000000000000000000915212c38434f5a65707b86909aa4a79d948b837c77726f6d6c6b6c6e71757a8189929ca6a99f958b80756a5f53483c3024180c00000000000814202b37424d59646f79848e98a1aba1988f877f78736e6b68676768696c6f747a8189929ba4a79d94897e74695e53473c3025190d01000000000008101825323e4b5864717d8a968e82766a5f57575b61676d737980858b9094969694918b847b72685d52473c3025190d0100000000000e1a2734404d5a6773818d9aa6a396897c6f63564954616d7a8794a0a99c908376695c504336291d100300000000000000000000000000000000000000000b16222d38414a505454545454545454545454545454545454545454545454545454545454545454545663707d8a96a39d908376695d5043362a1d1000000714202d3a4653606c7986929faca195897c7064717e8a97a4a99c9084786c6875828e9ba8a5998c8074685c4f43372b1f1206000000101c2936434f5c697683909ca0a0a0988c7e72655d6a7784909da0a0a0978a7d7164574a3e3124170b00101c2936434f5c697683909ca0a0a0988c7e7265584c3f3225190c000000000000000000000000000000000915222f3c4855626f7b82838485868074675b4f443f3f44515d6a7784909d9f9285786b5f5245382c1f1205000000000007111a242d37404a535c666f79828c959fa59b92887f756c62594f4e57616a737d869099a3a1978e857b72685f554c423930261d130800000000040d17202a333d464f59626c757f88929ba59f958c83796f665d534a535d666f79838c959fa49b92887e756c62594f463c332a20170d0400000013202c3946535f6c7986939c9c9c9c9c9c9c9c9c9c9c9c9c9c9c9c9c9386796c5f5346392c201300000000000000010a121a222a333b434b535c646c747c858d95988e84796f655b51463b3024180c000e1a26323e48535d67717b86909a948b837b736b625a524a41393129211810080000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000004101c2834404c57626e78838d97a1a9a59c938c85817d7a787776767677797c80868c949da6aaa1978d88919aa3a89f968f88827d797675747475777a7d82888f979fa8a39a90877d72685d52473c30251a0e02000000000004101c2834404c57636e79848e98a1aaa59b938b85807c797877767677787a7e83899098a1aba69c92887d72675b5044382c201408000000000000000000000004101b27323d49545e69747e88929ba4a69d958e88837e7b797878797a7d81868c939ba4a8a0978d83796e64594d42372b1f14080000000000030f1a26313c47525d67727c868f99a1a9a199918a847e7a777574747576787b80858c939ba4a79e958c82776d62574c41362b1f1408000000000000000a1723303c4956626f7b889492877b71686463666c72787e858b91969ca0a2a2a19c968d84796f64584d41352a1e120600000000000e1b2834414e5b6774818e9aa7a3968a7d7063574a54616e7b8894a1aa9d9083776a5d5044372a1d110400000000000000000000000000000000000000000f1b27333e49535b6061616161616161616161616161616161616161616161616161616161616161616163707d8a96a39d908376695d5043362a1d10000006121f2b3845515e6b7784919daaa5998c8074686f7c8996a2aca094887b6f6773808d99a6a99c9084786b5f53473b2f22160a000000101c2936434f5c6976839093939393938c7e72655d6a77849093939393938a7d7164574a3e3124170b00101c2936434f5c6976839093939393938c7e7265584c3f3225190c000000000000000000000000000000000815212e3b4754606d79868f91928f83776b60564f4c4c4e55606c7885919e9e9285786b5f5245382c1f120500000000000008121b252e38414a545d67707a838d96a0a49a91877e746b61584e4e58616b747e87919aa3a0978d847a71675e544b42382f251a0f040000030c161f29323c454e58616b747e87919aa4a0968d837a70675d544a525c656f78828b959ea59c928980766c635a50473d342b21180e050000000013202c3946535f6c798693a0a9a9a9a9a9a9a9a9a9a9a9a9a9a9a9a09386796c5f5346392c2013000000000000030b131b242c343c454d555d656e767e868f979a90867c72675d53493f352a1f1408000a16212c37414b555f69747e88929c958d857c746c645c534b433b332a221a120a010000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000c18232f3a46515c67717c858f979fa6a59d97918d898785848383838486898c91979ea6a8a0988f857e889199a1a8a099938d8985838181818284868a8e949aa1a8a19991887e756b61564b41362b1f1409000000000000000c18232f3b46515c67727c868f98a0a7a59d96918c8986848483838485878a8e949aa2aaa49c948a80766b61554a3f33281c10040000000000000000000000000a16212c37424d57626c768089929aa2a7a099938e8b888685858687898d91979ea5a69f978e857b71675d52473c31261a0f030000000000000914202b36414b56606a747d878f989fa6a39c958f8a8784828181818385888c91979da5a49d958c837970665b51463b3025190e03000000000000000815212e3a4753606c798592988d837a73707072777d838a90969ca2a4a1a0a0a2a59f968b8075695e52463a2e22160900000000000f1b2835424e5b6875828e9ba8a4978a7d7164574b55626f7b8895a2aa9e9184776a5e5144372b1e11050000000000000000000000000000000000000000111e2b37434f5b656d6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e707d8a96a39d908376695d5043362a1d10000003111d2a3743505d6976838f9ca9a89c9084786b6e7b8794a1aca4988c807367727e8b98a5aca094887b6f63574b3e32261a0e010000101c2936434f5c697683868686868686867e72655d6a7784868686868686867d7164574a3e3124170b00101c2936434f5c697683868686868686867e7265584c3f3225190c0000000000000000000000000000000006131f2c3845515e6a76838f9b9e93887c7168605b59595a5e67717c8894a19d9084776a5e5144382b1e12050000000000000009131c262f38424b555e68717a848e97a0a39990877d736a60574d4f59626c757e88929ba49f968c837970665d544a41362b20140900000a151e28313b444e57616a737d879099a3a1978e847b71685e554b515b646e77818a949da69d938a80776d645a51483e352b22190f06000000000013202c3946535f6c798693a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a09386796c5f5346392c20130000000000020c151d252d363e464e575f676f77808890989d93897e746a60564b41372d23180e020005101a252f39434d58626c76808b959f978f867e766e655d554d453c342c241b130a01000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000007131e2935404b555f6a737c858d959ca1a7a29d9996939290909090919295989da2a8a39d968e867c767f878f979da3a49e9995928f8e8e8e8f9092969a9fa5a39d968f877e766c63594f443a2f24190e030000000000000007131e2a35404b55606a747d868e969ca2a7a19c98959391909090909194969a9fa5a6a09a928a81786e645a4f44392e22170b0000000000000000000000000004101b26313b46505a646d76808890979ea4a49f9b9795939292929496999da2a8a29b948d857c73695f554b40362b20140900000000000000030e19242f39444e58626b747d868d959ba2a6a09b9793908f8e8e8e8f9194989ca2a5a09a938b837a71675e54493f342a1f1308000000000000000006121f2b3844515d6976828e9a958c84807d7d7e83898f959ba1a39d9894939395999f9d91867a6e62564a3e3225190d00000000000f1c2936424f5c6875828f9ca8a4988b7e7165584b55626f7c8995a2ab9e9185786b5e5145382b1f1205000000000000000000000000000000000000000013202c3946525f6c777b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7d8a96a39d908376695d5043362a1d100000000f1c2835424e5b6874818e9aa0a0a094887b6f6c7986929fa0a09b8f83776b707d8a96a0a0a0988b7f73675b4e42362a1e11050000101c2936424f5c687479797979797979797970645c69747979797979797979796f63574a3d3124170a00101c2936424f5c68747979797979797979797064584b3e3225180c0000000000000000000000000000000004101d2936424e5a67737e8a96a1998e837a726b676565676a7078838e99a4998d8174685c4f4336291d100400000000000000010a141d263039434c565f69727b858e98a1a2988f857c72695f564c505a636c768089929ca59e958b82786f665c53483d3125190c0006111c26303a434d566069737c868f99a2a2988f857c72695f564c505a636d768089939ca69d948a81786e655b52483f362c2319100700000000000013202c3946535f6c79869393939393939393939393939393939393939386796c5f5346392c201300000000000a141e272f373f485058606871798189929a9f958b81776c62584e443a2f251b110700000009131d27313c46505a646e78838d97a198908880776f675f574e463e362d251c13080000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000010d18232e39434e58616a737b838a90969b9fa2a5a2a09e9d9d9c9d9e9fa1a5a4a19d98928b847c746d757d858c92989da1a4a19e9c9b9a9a9b9d9fa2a4a09c97928b857d756c645a51473d33281d13080000000000000000020d18232e39444e58626b747c848b91979b9fa3a4a29f9e9d9c9c9d9ea0a3a6a39f9a958f8881786f665c52483d33281c1106000000000000000000000000000009141f29343e48525b646d767e868d93989da2a5a3a1a09f9f9fa0a2a5a4a09c97918a837b726a61574d43392f24190e03000000000000000008131d28323c465059626b747b838a90969b9fa3a39f9d9b9a9a9b9c9ea1a4a29e9a958f88817971685f554c42382d23180d02000000000000000003101c2835414d5a66727e8a969e96908c8a898b8f949aa0a49e97918c888686898d949c978b7e72665a4e4135291c100300000000101d2936434f5c6976838f9ca9a5988c7e7265594c5663707c8996a3ac9f9285786c5f5245392c1f1306000000000000000000000000000000000000000013202c3946535f6c798688888888888888888888888888888888888888888888888888888888888888888888888d98a49d908376695d5043362a1d100000000e1a2733404d596673808c93939393938b7f736b7784919393939393877a6e6f7b8893939393938f83776a5e52463a2d21140800000e1b2733404c57626a6c6c6c6c6c6c6c6c6c685f58626a6c6c6c6c6c6c6c6c6c675e53473b2e221609000e1b2733404c57626a6c6c6c6c6c6c6c6c6c685f54483c3023170a00000000000000000000000000000000010d1a26323e4a56626e79848f9a9f958c847c7774727273767b828b959f9e93887c7064584c4033271b0e020000000000000000020b141e27313a444d57606a737c868f99a0a0978e857b71685d5148515a646d77808a939da09d948b81786e64594d4134281b0f000b17222d38424c555f68727b858e98a1a29990867c736a60574d5059626c757f88929ba59e958b82786f665c534940362d241a11070000000000000013202c3946535f6c79868686868686868686868686868686868686868686796c5f5346392c20130000000006111c2630394149515a626a727a838b939ba2988d83796f655b50463c32281e130900000000010b15202a343e48525c67717b858f9aa29a928981797168605850483f372e241a0f04000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000007121d27323c464f58616971787f858a8f9396999b9c9e9f9fa09f9f9e9c9a9895918c87817a726a636b737a81878c9195989b9d9e9fa09f9f9e9c9a9894908c86817a736b635a52483f352b21160c0100000000000000000007121d27323c465059626a727980868b8f9396999b9d9e9f9fa09f9e9d9b9996938f8a847d766f665d544a40362c21160b000000000000000000000000000000030d18222c364049525b646c747b82888d9195999b9d9e9fa09f9e9d9b9894908b857f78716960574e453c32271d1208000000000000000000010c16202a343e475059626a71787f858a8f93979a9c9d9f9fa09f9e9d9b9996928e89837d766f675f564d433a30261c1106000000000000000000000d1925313e4a56626e7985909ba19c989696989b9fa59f99928c86807c797a7d828a939b8f82766a5d5144382b1f120600000000111d2a3743505d6a7683909daaa6998c807366594d5763707d8a97a3ac9f9386796c5f5346392d201306000000000000000000000000000000000000000013202c3946535f6c79869394949494949494949494949494949494949494949494949494949494949494949494979fa99d908376695d5043362a1d100000000c1925323f4b5864717e8686868686868683776a7683868686868686867e726d7a86868686868686867a6e6255483c2f22160900000b17232f3b4650585e5f5f5f5f5f5f5f5f5f5d5650595e5f5f5f5f5f5f5f5f5f5c554c41362b1f1206000b17232f3b4650585e5f5f5f5f5f5f5f5f5f5d564d42372c20140700000000000000000000000000000000000a16222e3a46515d68737d88919a9e958e8883817f7e8082878c949d9e958c82766b6054483c3024180b00000000000000000000020c151f28323b454e57616a747d8790939393938d847a6d61544748525b656e78818b93939393938a8075695c4f4336291c10000f1b27333f4a545e67717a848d97a0a39a90877d746a61584e4e58616b747e87919aa49f968c837970665d544a41372e241b12080000000000000000131f2c3946525f6b76797979797979797979797979797979797979797979766b5f5246392c1f13000000000b17222e38424b535b636c747c848c959da49a90867c71675d53493f342a20160c020000000000030e18222c36414b555f69737d88929ca49b938b837a726a625a514940362c2015090000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000b15202a343d464f585f676e74797e8386898c8e9091929293929291908e8b8885807b756f68605961696f767b8185888c8e90919293929291908e8b8884807b756f686159514840362d23190f0500000000000000000000000b16202a343e47505860676e747a7f83878a8d8f90919292939292908f8d8a87837e78736c645d544b42382f241a0f050000000000000000000000000000000006101a242e374049525a626970767c8185898c8f909292939292908e8b8884807a746d665f574e453c332a20150b0100000000000000000000040e18222c353e4750585f676e74797e83878a8d8f919292939292908f8c8a86827d78726c645d554d443b31281e140a00000000000000000000000915212d3a45515d68737e89939da4a5a3a3a4a59f9a948e87817b756f6d6d7178818c979285796c6053473a2e21150800000000111e2b3744515d6a7784919daaa69a8d8173675a4d5764717d8a97a4aca093867a6d6053473a2d201407000000000000000000000000000000000000000013202c3946535f6c798693a0a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1a3a8aa9d908376695d5043362a1d100000000a1724303d4a56636f787979797979797979756a73797979797979797979716b767979797979797979786e6155483c2f221609000007131e29343e464d52535353535353535353514b474e52535353535353535353504b433a30251a0e020007131e29343e464d52535353535353535353514b443b31261b0f03000000000000000000000000000000000006121d2935404b56616c767f8890979e9994908d8c8c8d8f92989e9b948c837a70655a4f43382c2014080000000000000000000000030d162029333c454f58626b757e868686868686867a6d6154474049535c666f78828686868686868376695c4f4336291c1000111e2a37434f5b667079838c969fa09b91887e756b62594f48545f6a737d879099a0a0968d847a71675e544b42382f251c1209000000000000000000111e2a37434f5a646b6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6b645a4f43372a1e11000000000f1b27333f4a545d656d757e868e969ea79d92887e746a5f554b41372d23180e040000000000000006101a242f39434d57616c76808a949fa59d958c847c746b635b52483d3125190d000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000040e18222b343d464e555c62686e72767a7d8082838485868686858483817e7c78746f6a645d564f575e646a7074797c7f828385868686858483817e7c78746f6a645d564f473f362e241b1107000000000000000000000000040e18222c353e464e565d63696e73777a7d8082848585868686858482807d7a77726d67615a534b423930261d130800000000000000000000000000000000000008121c252e37404850585f656b7075797d808284858686868584827f7c78736e69635c554d453c332a21180e0400000000000000000000000006101a232c353e464e555c62686e73777b7e81838485868686858482807d7a76716c67615a534b433b32291f160c02000000000000000000000005111d2935404c57626d77818a93999e9f9f9d99948f89837c767069646061666f7a869195887b6f6256493d3023170a00000000121e2b3845515e6b7784919ea0a09a8e8174675b4e5865717e8b98a0a0a094877a6d6154473b2e211408000000000000000000000000000000000000000013202c3946535f6c798693a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a09d908376695d5043362a1d100000000915222e3a47525d676c6c6c6c6c6c6c6c6c6b63696c6c6c6c6c6c6c6c6c68646b6c6c6c6c6c6c6c6c6c665c5145392d2014070000020d18222c353c424546464646464646464644403c424546464646464646464644403931281e13080000020d18222c353c424546464646464646464644403a32291f140a000000000000000000000000000000000000010d18242f3a454f5a646d767e868c92979a9c9a9898999b9c9995908a827a71685e53493e32271b0f04000000000000000000000000040e17212a333d465059636c7679797979797979776c6053473a414a545d6670787979797979797974685c4f4236291c1000121f2c3845525f6b78828b93939393928980766c635950474a5763707c868f939393938e857b71685f554c423930261d130a000000000000000000000e1a26323e48525a5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5a52483e32261a0e00000000121e2b3744505b666f777f879098a0a09f958b81766c62584e44392f251b110600000000000000000008131d27313b45505a646e78838d97a0a09e968e867e756d64594d4135281c0f00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000061019222b343c434a51575d62666a6d70737576777879797978777674726f6c68645f59534c454c53595f64686c707375777879797978787674726f6c68635e59524c453d352d241b1209000000000000000000000000000006101a232c343c444b52585e63676b6e71737577787979797978777574716e6a66615c564f48413930271e150b01000000000000000000000000000000000000000a131c252e363e464d545a5f64696d7073757778797979787775726f6c68635d57514a433b332a21180f06000000000000000000000000000008111a232c343c434a51575d62676b6e717476777879797978777573716d6a66615b564f484139312920170d04000000000000000000000000010d18242f3a46505b656f7881888e919292918d88837d77716b645e5853545e6975818e938a7d7164584b3e3225190c00000000121f2c3945525f6b788592939393938e8275685b4e5865727e8c9393939393887b6e6155483b2e221508000000000000000000000000000000000000000013202c3946535f6c7986939393939393939393939393939393939393939393939393939393939393939393939393939393908376695d5043362a1d1000000006121e2a36414c555c5f5f5f5f5f5f5f5f5f5e595e5f5f5f5f5f5f5f5f5f5d5a5f5f5f5f5f5f5f5f5f5f5b544b4035291d110500000006101a232a313639393939393939393939383431363939393939393939393938342e271f160c0200000006101a232a31363939393939393939393938342f2820170d030000000000000000000000000000000000000007121e29333e48525b646c747b81868a8e9092939392918f8d89847e7870685f564c42372c21160a0000000000000000000000000000050f18212b343e47515a646b6c6c6c6c6c6c6c6b655b50443838424b545e676c6c6c6c6c6c6c6c6a62574c4033271b0e00121f2c3845525f6b788586868686868680776d645a51473e4a5763707d868686868686857c72695f564d433a30271e140b01000000000000000000000a16212c3740484f52535353535353535353535353535353535353535353524f4840372c21160a0000000013202c3946535f6c7881899193939393938d83796f655a50463c32271d130900000000000000000000010b151f29343e48525c66717b858f939393939390877f76695d5043372a1d100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000071019222a323940464c51565a5e616466686a6b6b6c6c6c6c6b6a686663605c58534e48413b41484e53585c606366686a6b6c6c6c6c6b6a686663605c57534d47413a332b231b12090000000000000000000000000000000008111a222a323940474c52575b5f626567696a6b6c6c6c6c6b6a696765625e5a56514b453e372f271e150c030000000000000000000000000000000000000000010a131c242c343b42494e54595d616467696a6b6c6c6c6b6a686663605c57524c463f38312921180f060000000000000000000000000000000008111a222a323940464c51565b5f626567696b6b6c6c6c6b6a696764615e5a55504a443e372f271f170e05000000000000000000000000000007131e29343f49535d666f767d8284868684817d77726c666059534d474d5965727e868686807366594d4033271a0d0000000013202c3946535f6c79868686868686868275695c4f59667380868686868686867b6f6255493c2f221609000000000000000000000000000000000000000013202c3946535f6c7986868686868686868686868686868686868686868686868686868686868686868686868686868686868376695d5043362a1d10000000020e19252f3a434b50535353535353535353524e51535353535353535353514f52535353535353535353504a42392e24180d01000000000811192025292c2c2c2c2c2c2c2c2c2c2b28262a2c2c2c2c2c2c2c2c2c2c2b28231d150d0400000000000811192025292c2c2c2c2c2c2c2c2c2c2b28241d160e050000000000000000000000000000000000000000010c17222c364049525a626970757a7e8184858686868583817d78736d665e564d443a30251b1005000000000000000000000000000000060f19222c353f48525a5f5f5f5f5f5f5f5f5f5b53493f333039424c555c5f5f5f5f5f5f5f5f5e5850463b2f23170b00121f2b3845515e6a7679797979797979776e655b52483f3d4a56636f7879797979797979736a60574e443b31281e150c02000000000000000000000005101a252e373e434646464646464646464646464646464646464646464646433e372e251a10050000000013202c3946535f6c798686868686868686867b71675d53483e342a20160b010000000000000000000000030d18222c36404a555f69737d868686868686868684776a5d5044372a1d1100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000007101820272e353b40454a4e5255575a5c5d5e5f5f5f5f5f5e5d5b595754504c47423c3630363d42474c5054575a5c5d5e5f5f5f5f5e5d5b595653504c47423c362f282119110900000000000000000000000000000000000008101820282f353b41464b4f5255585a5c5d5e5f5f5f5f5f5e5c5a5855524e4a453f3a332c251d150c0300000000000000000000000000000000000000000000010a121a222a31373d43484d5154575a5c5e5f5f5f5f5f5d5c5a5753504b46413b352e271f170f0600000000000000000000000000000000000008101820272e353b40464a4f5256585b5d5e5f5f5f5f5f5e5c5a5855514e49443f39332c251d150d05000000000000000000000000000000020d18232d37414b545d656c71757879797775716c66615b554e48423d4a56636f78797979797266594d4033271a0d00000000131f2c3946525f6b76797979797979797973685b4f5865717979797979797979786e6155483c2f2216090000000000000000000000000000000000000000131f2c3946525f6b7679797979797979797979797979797979797979797979797979797979797979797979797979797979797974685c4f4336291d100000000008131e2831393f44464646464646464646454245464646464646464646454346464646464646464646443f3830271d1207000000000000070e14191d1f2020202020202020201f1c1a1d1f2020202020202020201f1c17120b0400000000000000070e14191d1f2020202020202020201f1c18120c040000000000000000000000000000000000000000000005101a242e37404850585e656a6e72757778797979787674716d68625c544d443b32281e1409000000000000000000000000000000000007101a232d3640484e5253535353535353524f4941372d27303a434b505353535353535353524d463e34291e130700101d2936424e59646b6c6c6c6c6c6c6c6c665c534940363a47525d676c6c6c6c6c6c6c6c6961584e453c32291f160c030000000000000000000000000009131c252c3237393939393939393939393939393939393939393939393937322c251c13090000000000131f2c3946525f6b7679797979797979797974695f554b41372c22180e040000000000000000000000000006101a242e39434d57616b7579797979797979797974695c5043362a1d1000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000060e151d23292f353a3e4245484b4d4f5051525253535251504f4d4a4744403b37312b252b31373c4044474b4d4f51525253535251504f4d4a47443f3b36312b251e170f070000000000000000000000000000000000000000070e161d242a30353a3f4346494c4e4f5152525353525251504e4c4946423e39342e28221a130b03000000000000000000000000000000000000000000000000000910181f262c32373c4145484b4d4f515253535252514f4d4a47443f3b35302a231c150d050000000000000000000000000000000000000000060e151c23292f353a3e4346494c4e50515253535252514f4e4b4845423d39332e28211a130b03000000000000000000000000000000000006111b263039424b535a6065696b6c6c6b6865605b554f4a433d373a47525d676c6c6c6c6c6960554a3d3125180c00000000111e2a37434f5a646b6c6c6c6c6c6c6c6c6a62574b545f686c6c6c6c6c6c6c6c6c665c5145392d2014070000000000000000000000000000000000000000111e2a37434f5a646b6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6a62584c4034271b0e00000000010c161f272e343839393939393939393939363839393939393939393938373939393939393939393937332e261e150b000000000000000003090d111213131313131313131312100e1113131313131313131313120f0c070000000000000000000003090d111213131313131313131312100c070100000000000000000000000000000000000000000000000008121c252e363f464d53595e6266686a6c6c6c6c6b6a6764615c57514a433b322920160c0200000000000000000000000000000000000008111b242e363d43454646464646464646433e372f261e2831393f44464646464646464645423c352c22180d02000e1a26313d48525a5f5f5f5f5f5f5f5f5f5b544a41372e36414c555c5f5f5f5f5f5f5f5f5e584f463c332a20170d040000000000000000000000000000010a131a21262a2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2a26211a130a010000000000111e2a37434f5a646b6c6c6c6c6c6c6c6c6c6a62584d43392f251b100600000000000000000000000000000008121c27313b454f5a636b6c6c6c6c6c6c6c6c6c6a62584c4034281b0f0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000040b12181e24292e3236393c3e414244454546464645454442403e3b3834302b26201a20262b3034383b3e4042444546464646454442403e3b37332f2a25201a130c0500000000000000000000000000000000000000000000040c12191f252a2e33363a3d3f4143444546464646454443413f3d3936322d28231d17100901000000000000000000000000000000000000000000000000000000060d141b21262c3035383c3f41434445464646454443403e3b37332f2a241f18110a0300000000000000000000000000000000000000000000040b12181e24292e32363a3d3f42434545464646454443413f3c3935312d28221d16100901000000000000000000000000000000000000000a141e27303941484f55595c5e5f5f5e5c59544f4a443e38322c36414c555c5f5f5f5f5f5d574e44392d211509000000000e1a26323e48525a5f5f5f5f5f5f5f5f5f5e5850454d565d5f5f5f5f5f5f5f5f5f5b544b4035291d110500000000000000000000000000000000000000000e1a26323e48525a5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5e5950463b3024180c0000000000040d151d23282b2c2c2c2c2c2c2c2c2c2c2a2c2c2c2c2c2c2c2c2c2c2b2a2c2c2c2c2c2c2c2c2c2c2b27221c140c03000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000a131c252d343b42484d5256595c5e5f5f5f5f5e5d5b5855504b453f38312920170e04000000000000000000000000000000000000000009121b242c323639393939393939393937332d251d161f272e343839393939393939393936312a231a100600000915202b3640484e5253535353535353524f4a42382f252f3a434b505353535353535353514d463d342a21170e0500000000000000000000000000000000010910161a1e1f2020202020202020202020202020202020202020201f1e1a161009010000000000000e1a26323e48525a5f5f5f5f5f5f5f5f5f5f5e5850463c31271d130900000000000000000000000000000000010b151f29333d4851595e5f5f5f5f5f5f5f5f5f5e5950463b3024180c00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000070d13181d2226292d2f3234363738393939393938373534312f2b28241f1a140f151a1f24282c2f32343637383939393938373533312e2b27231f1a140e080200000000000000000000000000000000000000000000000001080e13191e22262a2d303234363738393939393838363533302d2a26221d18120c0500000000000000000000000000000000000000000000000000000000000003090f151b2024292c2f323436383939393938373634312f2b27231e19130d070000000000000000000000000000000000000000000000000000070d13181d22262a2e3033353738393939393837363432302d2925211c17110b05000000000000000000000000000000000000000000020c151e272f373e44494d5052535352504c48443e39332d27252f3a434b505353535353514c453c32271c1105000000000a16212c3740484f525353535353535353524d463e444c51535353535353535353504a42392e24180d0100000000000000000000000000000000000000000a16212c3740484f52535353535353535353535353535353535353535353535353535353535353535353535353535353535353524e473e342a1f1307000000000000030b12171c1e2020202020202020201f1e1f2020202020202020201f1e1f2020202020202020201e1b17110a020000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000010a131b222a31373c42464a4d4f515253535352504e4c4844403a342e261f170e050000000000000000000000000000000000000000000009121a21262a2c2c2c2c2c2c2c2c2c2a27221b130d151d23282b2c2c2c2c2c2c2c2c2c292520191108000000040f1a242e363d43454646464646464646433f382f261e2831393f44464646464646464645413b342b22180f0500000000000000000000000000000000000000050a0e111313131313131313131313131313131313131313131313110e0a0500000000000000000a16212c3740484f52535353535353535353524d463e342a20150b010000000000000000000000000000000000030d17222c363f484e52535353535353535353524e473e352a1f1408000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000002070c11161a1d20232527292a2b2c2c2c2c2c2b2a292725221f1c18130e0904090e13181c1f222527292b2c2c2c2c2c2b2a292725221f1b17130e09030000000000000000000000000000000000000000000000000000000002080d12161a1e21242628292b2c2c2c2c2c2c2b2a282624211e1a16110c0601000000000000000000000000000000000000000000000000000000000000000000040a0f14181c202326282a2b2c2c2c2c2c2b292725221f1b17120d08020000000000000000000000000000000000000000000000000000000002070d12161a1e212426282a2b2c2c2c2c2c2b2a282623201d1915100b06000000000000000000000000000000000000000000000000030c151d252c33383d41434546464543403c38332d28221c1e2831393f44464646464645413b332a20160b000000000005101a252e373e4346464646464646464645423c343a4044464646464646464646443f3830271d120700000000000000000000000000000000000000000005101a252e373e434646464646464646464646464646464646464646464646464646464646464646464646464646464646464645423c352c22180d020000000000000000060b0f12131313131313131313131112131313131313131313121113131313131313131313120f0b060000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000010911181f262b31363a3d404344454646464544423f3c38342f29231c150d05000000000000000000000000000000000000000000000000080f151a1e1f20202020202020201e1b161009030b12171c1e20202020202020201f1d19140e07000000000008121b242c323639393939393939393937332d261d161f272e343839393939393939393835302a22191006000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005101a252e373e434646464646464646464645423c342c22180e040000000000000000000000000000000000000005101a242d363d424546464646464646464645423c352c23180e02000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000105090d111416191b1c1e1e1f2020201f1f1e1c1a1816130f0b070300000003070c101316191b1c1e1f1f20201f1f1e1c1a1815120f0b0702000000000000000000000000000000000000000000000000000000000000000001060a0e111417191b1d1e1f1f20201f1f1e1d1b191714110e0a05000000000000000000000000000000000000000000000000000000000000000000000000000003080c101416191b1d1e1f2020201f1e1d1b1916130f0b0702000000000000000000000000000000000000000000000000000000000000000001060a0e1215171a1c1d1e1f2020201f1e1d1b191714110d0905000000000000000000000000000000000000000000000000000000030b131a21272c313437383939383634302c27221c1611161f272e343839393939393835302921180e0400000000000009131c252c32373939393939393939393836312a2f353839393939393939393937332e261e150b000000000000000000000000000000000000000000000009131c252c3237393939393939393939393939393939393939393939393939393939393939393939393939393939393939393936312b231a1106000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000060d141a20252a2e313436383939393938373533302c28231e18110a030000000000000000000000000000000000000000000000000000040a0e11131313131313131313110f0a05000000060b0f12131313131313131312110d09030000000000000009121a21262a2c2c2c2c2c2c2c2c2c2b27221c140d151d23282b2c2c2c2c2c2c2c2c2c29251f1810070000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000009131c252c3237393939393939393939393836312a221a100600000000000000000000000000000000000000000008121b242b3236393939393939393939393936312b231a110700000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000104070a0c0e101112121313131312110f0e0c09060300000000000000000003070a0c0e1011121313131312110f0e0c09060300000000000000000000000000000000000000000000000000000000000000000000000000000205080b0d0f101112131313131211100f0d0b0805010000000000000000000000000000000000000000000000000000000000000000000000000000000000000004070a0d0f1011121313131211100e0c09060300000000000000000000000000000000000000000000000000000000000000000000000000000205080b0d0f1112121313131211100f0d0a080401000000000000000000000000000000000000000000000000000000000000010910161c2125282a2c2c2c2c2a2724201b16110b050d151d23282b2c2c2c2c2c2c29241e170f0600000000000000010a131a21262a2c2c2c2c2c2c2c2c2c2c29251f24292b2c2c2c2c2c2c2c2c2c2b27221c140c030000000000000000000000000000000000000000000000010a131a21262a2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2a2520191108000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000003090f14191e212527292b2c2c2c2c2c2a292623201c17120d0600000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000080f151a1e1f20202020202020201e1b17110a030b12171c1e20202020202020201f1d19140d060000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000010a131a21262a2c2c2c2c2c2c2c2c2c2c2c29251f181007000000000000000000000000000000000000000000000009121a21262a2c2c2c2c2c2c2c2c2c2c2c2a2620191108000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000050b1015181b1e1f20201f1d1b1814100b050000030b12171c1e20202020201f1c19130d05000000000000000000010910161a1e1f20202020202020201f1d1914181c1f2020202020202020201e1b17110a0200000000000000000000000000000000000000000000000000010910161a1e1f2020202020202020202020202020202020202020202020202020202020202020202020202020202020201f1d1a140e07000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000004090d1215181b1d1e1f2020201f1e1c1a1714100c0701000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000040a0e11131313131313131313120f0b06000000060b0f12131313131313131312100d080200000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000010910161a1e1f2020202020202020201f1d19140e0600000000000000000000000000000000000000000000000000080f151a1e1f2020202020202020201f1d1a150e0700000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000004080c0f1112131312110f0c0804000000000000060b0f12131313131312100d0802000000000000000000000000050a0e1113131313131313131312110d090c1012131313131313131313120f0b060000000000000000000000000000000000000000000000000000000000050a0e111313131313131313131313131313131313131313131313131313131313131313131313131313131313131313110d090300000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000105090c0e10121313131312110f0d0b080400000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000050a0e111313131313131313131312110d0903000000000000000000000000000000000000000000000000000000040a0e111313131313131313131313110e09030000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 + m_StreamData: + offset: 0 + size: 0 + path: +--- !u!114 &11400000 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 71c1514a6bd24e1e882cebbe1904ce04, type: 3} + m_Name: LiberationSans SDF + m_EditorClassIdentifier: + hashCode: 231247347 + material: {fileID: 2180264} + materialHashCode: -1183942120 + m_Version: 1.1.0 + m_SourceFontFileGUID: e3265ab4bf004d28a9537516768c1c75 + m_SourceFontFile_EditorRef: {fileID: 0} + m_SourceFontFile: {fileID: 0} + m_AtlasPopulationMode: 0 + m_FaceInfo: + m_FamilyName: Liberation Sans + m_StyleName: + m_PointSize: 86 + m_Scale: 1 + m_LineHeight: 98.90625 + m_AscentLine: 77.84375 + m_CapLine: 59.1875 + m_MeanLine: 0 + m_Baseline: 0 + m_DescentLine: -18.21875 + m_SuperscriptOffset: 77.84375 + m_SuperscriptSize: 0.5 + m_SubscriptOffset: -12.261719 + m_SubscriptSize: 0.5 + m_UnderlineOffset: -12.261719 + m_UnderlineThickness: 6.298828 + m_StrikethroughOffset: 23.675 + m_StrikethroughThickness: 0 + m_TabWidth: 239.0625 + m_GlyphTable: + - m_Index: 1 + m_Metrics: + m_Width: 23.90625 + m_Height: 96.0625 + m_HorizontalBearingX: 0 + m_HorizontalBearingY: 77.84375 + m_HorizontalAdvance: 23.90625 + m_GlyphRect: + m_X: 10 + m_Y: -105 + m_Width: 24 + m_Height: 96 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 2 + m_Metrics: + m_Width: 8.3125 + m_Height: 59.15625 + m_HorizontalBearingX: 7.75 + m_HorizontalBearingY: 59.1875 + m_HorizontalAdvance: 23.90625 + m_GlyphRect: + m_X: 1004 + m_Y: 346 + m_Width: 8 + m_Height: 59 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 3 + m_Metrics: + m_Width: 23.21875 + m_Height: 18.59375 + m_HorizontalBearingX: 3.625 + m_HorizontalBearingY: 59.1875 + m_HorizontalAdvance: 30.53125 + m_GlyphRect: + m_X: 336 + m_Y: 995 + m_Width: 23 + m_Height: 19 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 4 + m_Metrics: + m_Width: 47.03125 + m_Height: 58.84375 + m_HorizontalBearingX: 0.375 + m_HorizontalBearingY: 58.84375 + m_HorizontalAdvance: 47.84375 + m_GlyphRect: + m_X: 426 + m_Y: 354 + m_Width: 47 + m_Height: 59 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 5 + m_Metrics: + m_Width: 45.5 + m_Height: 69.625 + m_HorizontalBearingX: 0.90625 + m_HorizontalBearingY: 63.6875 + m_HorizontalAdvance: 47.84375 + m_GlyphRect: + m_X: 164 + m_Y: 593 + m_Width: 46 + m_Height: 70 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 6 + m_Metrics: + m_Width: 70.34375 + m_Height: 60.15625 + m_HorizontalBearingX: 3.0625 + m_HorizontalBearingY: 59.6875 + m_HorizontalAdvance: 76.46875 + m_GlyphRect: + m_X: 405 + m_Y: 11 + m_Width: 70 + m_Height: 60 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 7 + m_Metrics: + m_Width: 53 + m_Height: 60.34375 + m_HorizontalBearingX: 3 + m_HorizontalBearingY: 59.53125 + m_HorizontalAdvance: 57.375 + m_GlyphRect: + m_X: 383 + m_Y: 185 + m_Width: 53 + m_Height: 60 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 8 + m_Metrics: + m_Width: 7.71875 + m_Height: 18.59375 + m_HorizontalBearingX: 4.34375 + m_HorizontalBearingY: 59.1875 + m_HorizontalAdvance: 16.40625 + m_GlyphRect: + m_X: 796 + m_Y: 771 + m_Width: 8 + m_Height: 19 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 9 + m_Metrics: + m_Width: 22.78125 + m_Height: 80.125 + m_HorizontalBearingX: 5.3125 + m_HorizontalBearingY: 62.34375 + m_HorizontalAdvance: 28.625 + m_GlyphRect: + m_X: 146 + m_Y: 206 + m_Width: 23 + m_Height: 80 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 10 + m_Metrics: + m_Width: 22.8125 + m_Height: 80.125 + m_HorizontalBearingX: 0.5 + m_HorizontalBearingY: 62.34375 + m_HorizontalAdvance: 28.625 + m_GlyphRect: + m_X: 165 + m_Y: 494 + m_Width: 23 + m_Height: 80 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 11 + m_Metrics: + m_Width: 30.75 + m_Height: 30.1875 + m_HorizontalBearingX: 1.375 + m_HorizontalBearingY: 59.1875 + m_HorizontalAdvance: 33.46875 + m_GlyphRect: + m_X: 807 + m_Y: 952 + m_Width: 31 + m_Height: 30 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 12 + m_Metrics: + m_Width: 41.78125 + m_Height: 42.0625 + m_HorizontalBearingX: 4.1875 + m_HorizontalBearingY: 49.65625 + m_HorizontalAdvance: 50.21875 + m_GlyphRect: + m_X: 725 + m_Y: 560 + m_Width: 42 + m_Height: 42 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 13 + m_Metrics: + m_Width: 8.4375 + m_Height: 20.1875 + m_HorizontalBearingX: 7.71875 + m_HorizontalBearingY: 9.21875 + m_HorizontalAdvance: 23.90625 + m_GlyphRect: + m_X: 569 + m_Y: 115 + m_Width: 8 + m_Height: 20 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 14 + m_Metrics: + m_Width: 21 + m_Height: 6.71875 + m_HorizontalBearingX: 3.8125 + m_HorizontalBearingY: 26.21875 + m_HorizontalAdvance: 28.625 + m_GlyphRect: + m_X: 764 + m_Y: 1002 + m_Width: 21 + m_Height: 7 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 15 + m_Metrics: + m_Width: 8.1875 + m_Height: 9.1875 + m_HorizontalBearingX: 7.84375 + m_HorizontalBearingY: 9.21875 + m_HorizontalAdvance: 23.90625 + m_GlyphRect: + m_X: 558 + m_Y: 305 + m_Width: 8 + m_Height: 9 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 16 + m_Metrics: + m_Width: 23.90625 + m_Height: 63.15625 + m_HorizontalBearingX: 0 + m_HorizontalBearingY: 62.34375 + m_HorizontalAdvance: 23.90625 + m_GlyphRect: + m_X: 383 + m_Y: 294 + m_Width: 24 + m_Height: 63 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 17 + m_Metrics: + m_Width: 41.09375 + m_Height: 60.90625 + m_HorizontalBearingX: 3.34375 + m_HorizontalBearingY: 60.0625 + m_HorizontalAdvance: 47.84375 + m_GlyphRect: + m_X: 787 + m_Y: 488 + m_Width: 41 + m_Height: 61 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 18 + m_Metrics: + m_Width: 37.0625 + m_Height: 59.15625 + m_HorizontalBearingX: 6.53125 + m_HorizontalBearingY: 59.1875 + m_HorizontalAdvance: 47.84375 + m_GlyphRect: + m_X: 321 + m_Y: 579 + m_Width: 37 + m_Height: 59 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 19 + m_Metrics: + m_Width: 39.1875 + m_Height: 60.0625 + m_HorizontalBearingX: 4.3125 + m_HorizontalBearingY: 60.0625 + m_HorizontalAdvance: 47.84375 + m_GlyphRect: + m_X: 962 + m_Y: 666 + m_Width: 39 + m_Height: 60 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 20 + m_Metrics: + m_Width: 40.78125 + m_Height: 60.90625 + m_HorizontalBearingX: 3.25 + m_HorizontalBearingY: 60.0625 + m_HorizontalAdvance: 47.84375 + m_GlyphRect: + m_X: 908 + m_Y: 583 + m_Width: 41 + m_Height: 61 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 21 + m_Metrics: + m_Width: 43.34375 + m_Height: 59.15625 + m_HorizontalBearingX: 1.96875 + m_HorizontalBearingY: 59.1875 + m_HorizontalAdvance: 47.84375 + m_GlyphRect: + m_X: 378 + m_Y: 579 + m_Width: 43 + m_Height: 59 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 22 + m_Metrics: + m_Width: 40.78125 + m_Height: 60 + m_HorizontalBearingX: 3.4375 + m_HorizontalBearingY: 59.1875 + m_HorizontalAdvance: 47.84375 + m_GlyphRect: + m_X: 441 + m_Y: 578 + m_Width: 41 + m_Height: 60 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 23 + m_Metrics: + m_Width: 39.6875 + m_Height: 60.90625 + m_HorizontalBearingX: 4.34375 + m_HorizontalBearingY: 60.0625 + m_HorizontalAdvance: 47.84375 + m_GlyphRect: + m_X: 339 + m_Y: 915 + m_Width: 40 + m_Height: 61 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 24 + m_Metrics: + m_Width: 39.09375 + m_Height: 59.15625 + m_HorizontalBearingX: 4.40625 + m_HorizontalBearingY: 59.1875 + m_HorizontalAdvance: 47.84375 + m_GlyphRect: + m_X: 501 + m_Y: 579 + m_Width: 39 + m_Height: 59 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 25 + m_Metrics: + m_Width: 40.34375 + m_Height: 60.90625 + m_HorizontalBearingX: 3.71875 + m_HorizontalBearingY: 60.0625 + m_HorizontalAdvance: 47.84375 + m_GlyphRect: + m_X: 968 + m_Y: 585 + m_Width: 40 + m_Height: 61 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 26 + m_Metrics: + m_Width: 39.71875 + m_Height: 60.90625 + m_HorizontalBearingX: 4.03125 + m_HorizontalBearingY: 60.0625 + m_HorizontalAdvance: 47.84375 + m_GlyphRect: + m_X: 398 + m_Y: 909 + m_Width: 40 + m_Height: 61 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 27 + m_Metrics: + m_Width: 8.1875 + m_Height: 45.4375 + m_HorizontalBearingX: 7.84375 + m_HorizontalBearingY: 45.4375 + m_HorizontalAdvance: 23.90625 + m_GlyphRect: + m_X: 941 + m_Y: 804 + m_Width: 8 + m_Height: 45 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 28 + m_Metrics: + m_Width: 8.4375 + m_Height: 56.4375 + m_HorizontalBearingX: 7.71875 + m_HorizontalBearingY: 45.4375 + m_HorizontalAdvance: 23.90625 + m_GlyphRect: + m_X: 800 + m_Y: 810 + m_Width: 8 + m_Height: 56 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 29 + m_Metrics: + m_Width: 41.78125 + m_Height: 43.65625 + m_HorizontalBearingX: 4.21875 + m_HorizontalBearingY: 50.15625 + m_HorizontalAdvance: 50.21875 + m_GlyphRect: + m_X: 422 + m_Y: 515 + m_Width: 42 + m_Height: 44 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 30 + m_Metrics: + m_Width: 41.78125 + m_Height: 27.71875 + m_HorizontalBearingX: 4.1875 + m_HorizontalBearingY: 42.1875 + m_HorizontalAdvance: 50.21875 + m_GlyphRect: + m_X: 847 + m_Y: 583 + m_Width: 42 + m_Height: 28 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 31 + m_Metrics: + m_Width: 41.78125 + m_Height: 43.65625 + m_HorizontalBearingX: 4.21875 + m_HorizontalBearingY: 50.15625 + m_HorizontalAdvance: 50.21875 + m_GlyphRect: + m_X: 483 + m_Y: 515 + m_Width: 42 + m_Height: 44 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 32 + m_Metrics: + m_Width: 41.09375 + m_Height: 60.0625 + m_HorizontalBearingX: 3.5 + m_HorizontalBearingY: 60.0625 + m_HorizontalAdvance: 47.84375 + m_GlyphRect: + m_X: 848 + m_Y: 504 + m_Width: 41 + m_Height: 60 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 33 + m_Metrics: + m_Width: 73.125 + m_Height: 74.1875 + m_HorizontalBearingX: 6.75 + m_HorizontalBearingY: 62.34375 + m_HorizontalAdvance: 87.3125 + m_GlyphRect: + m_X: 10 + m_Y: 11 + m_Width: 73 + m_Height: 74 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 34 + m_Metrics: + m_Width: 57.03125 + m_Height: 59.15625 + m_HorizontalBearingX: 0.15625 + m_HorizontalBearingY: 59.1875 + m_HorizontalAdvance: 57.375 + m_GlyphRect: + m_X: 751 + m_Y: 94 + m_Width: 57 + m_Height: 59 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 35 + m_Metrics: + m_Width: 45.75 + m_Height: 59.15625 + m_HorizontalBearingX: 7.03125 + m_HorizontalBearingY: 59.1875 + m_HorizontalAdvance: 57.375 + m_GlyphRect: + m_X: 939 + m_Y: 346 + m_Width: 46 + m_Height: 59 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 36 + m_Metrics: + m_Width: 54.46875 + m_Height: 60.90625 + m_HorizontalBearingX: 4.34375 + m_HorizontalBearingY: 60.0625 + m_HorizontalAdvance: 62.09375 + m_GlyphRect: + m_X: 825 + m_Y: 181 + m_Width: 54 + m_Height: 61 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 37 + m_Metrics: + m_Width: 50.9375 + m_Height: 59.15625 + m_HorizontalBearingX: 7.03125 + m_HorizontalBearingY: 59.1875 + m_HorizontalAdvance: 62.09375 + m_GlyphRect: + m_X: 808 + m_Y: 262 + m_Width: 51 + m_Height: 59 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 38 + m_Metrics: + m_Width: 46.59375 + m_Height: 59.15625 + m_HorizontalBearingX: 7.03125 + m_HorizontalBearingY: 59.1875 + m_HorizontalAdvance: 57.375 + m_GlyphRect: + m_X: 492 + m_Y: 258 + m_Width: 47 + m_Height: 59 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 39 + m_Metrics: + m_Width: 42.03125 + m_Height: 59.15625 + m_HorizontalBearingX: 7.03125 + m_HorizontalBearingY: 59.1875 + m_HorizontalAdvance: 52.53125 + m_GlyphRect: + m_X: 725 + m_Y: 481 + m_Width: 42 + m_Height: 59 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 40 + m_Metrics: + m_Width: 56.15625 + m_Height: 60.90625 + m_HorizontalBearingX: 4.3125 + m_HorizontalBearingY: 60.0625 + m_HorizontalAdvance: 66.90625 + m_GlyphRect: + m_X: 593 + m_Y: 154 + m_Width: 56 + m_Height: 61 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 41 + m_Metrics: + m_Width: 48.03125 + m_Height: 59.15625 + m_HorizontalBearingX: 7.03125 + m_HorizontalBearingY: 59.1875 + m_HorizontalAdvance: 62.09375 + m_GlyphRect: + m_X: 947 + m_Y: 267 + m_Width: 48 + m_Height: 59 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 42 + m_Metrics: + m_Width: 8.03125 + m_Height: 59.15625 + m_HorizontalBearingX: 7.90625 + m_HorizontalBearingY: 59.1875 + m_HorizontalAdvance: 23.90625 + m_GlyphRect: + m_X: 571 + m_Y: 909 + m_Width: 8 + m_Height: 59 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 43 + m_Metrics: + m_Width: 35.28125 + m_Height: 60 + m_HorizontalBearingX: 1.34375 + m_HorizontalBearingY: 59.1875 + m_HorizontalAdvance: 43 + m_GlyphRect: + m_X: 655 + m_Y: 898 + m_Width: 35 + m_Height: 60 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 44 + m_Metrics: + m_Width: 49.34375 + m_Height: 59.15625 + m_HorizontalBearingX: 7.03125 + m_HorizontalBearingY: 59.1875 + m_HorizontalAdvance: 57.375 + m_GlyphRect: + m_X: 682 + m_Y: 90 + m_Width: 49 + m_Height: 59 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 45 + m_Metrics: + m_Width: 37.90625 + m_Height: 59.15625 + m_HorizontalBearingX: 7.03125 + m_HorizontalBearingY: 59.1875 + m_HorizontalAdvance: 47.84375 + m_GlyphRect: + m_X: 514 + m_Y: 909 + m_Width: 38 + m_Height: 59 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 46 + m_Metrics: + m_Width: 57.53125 + m_Height: 59.15625 + m_HorizontalBearingX: 7.03125 + m_HorizontalBearingY: 59.1875 + m_HorizontalAdvance: 71.625 + m_GlyphRect: + m_X: 828 + m_Y: 103 + m_Width: 58 + m_Height: 59 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 47 + m_Metrics: + m_Width: 48.03125 + m_Height: 59.15625 + m_HorizontalBearingX: 7.03125 + m_HorizontalBearingY: 59.1875 + m_HorizontalAdvance: 62.09375 + m_GlyphRect: + m_X: 315 + m_Y: 294 + m_Width: 48 + m_Height: 59 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 48 + m_Metrics: + m_Width: 58.71875 + m_Height: 60.90625 + m_HorizontalBearingX: 4.0625 + m_HorizontalBearingY: 60.0625 + m_HorizontalAdvance: 66.90625 + m_GlyphRect: + m_X: 305 + m_Y: 184 + m_Width: 59 + m_Height: 61 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 49 + m_Metrics: + m_Width: 45.75 + m_Height: 59.15625 + m_HorizontalBearingX: 7.03125 + m_HorizontalBearingY: 59.1875 + m_HorizontalAdvance: 57.375 + m_GlyphRect: + m_X: 670 + m_Y: 393 + m_Width: 46 + m_Height: 59 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 50 + m_Metrics: + m_Width: 58.71875 + m_Height: 76.3125 + m_HorizontalBearingX: 4.0625 + m_HorizontalBearingY: 60.0625 + m_HorizontalAdvance: 66.90625 + m_GlyphRect: + m_X: 10 + m_Y: 105 + m_Width: 59 + m_Height: 76 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 51 + m_Metrics: + m_Width: 51.0625 + m_Height: 59.15625 + m_HorizontalBearingX: 7.03125 + m_HorizontalBearingY: 59.1875 + m_HorizontalAdvance: 62.09375 + m_GlyphRect: + m_X: 666 + m_Y: 235 + m_Width: 51 + m_Height: 59 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 52 + m_Metrics: + m_Width: 49.5 + m_Height: 60.90625 + m_HorizontalBearingX: 3.875 + m_HorizontalBearingY: 60.0625 + m_HorizontalAdvance: 57.375 + m_GlyphRect: + m_X: 878 + m_Y: 262 + m_Width: 50 + m_Height: 61 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 53 + m_Metrics: + m_Width: 48.625 + m_Height: 59.15625 + m_HorizontalBearingX: 1.90625 + m_HorizontalBearingY: 59.1875 + m_HorizontalAdvance: 52.53125 + m_GlyphRect: + m_X: 600 + m_Y: 314 + m_Width: 49 + m_Height: 59 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 54 + m_Metrics: + m_Width: 48.84375 + m_Height: 60 + m_HorizontalBearingX: 6.625 + m_HorizontalBearingY: 59.1875 + m_HorizontalAdvance: 62.09375 + m_GlyphRect: + m_X: 668 + m_Y: 313 + m_Width: 49 + m_Height: 60 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 55 + m_Metrics: + m_Width: 56.59375 + m_Height: 59.15625 + m_HorizontalBearingX: 0.375 + m_HorizontalBearingY: 59.1875 + m_HorizontalAdvance: 57.375 + m_GlyphRect: + m_X: 749 + m_Y: 173 + m_Width: 57 + m_Height: 59 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 56 + m_Metrics: + m_Width: 80.5 + m_Height: 59.15625 + m_HorizontalBearingX: 0.375 + m_HorizontalBearingY: 59.1875 + m_HorizontalAdvance: 81.15625 + m_GlyphRect: + m_X: 305 + m_Y: 11 + m_Width: 81 + m_Height: 59 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 57 + m_Metrics: + m_Width: 53.625 + m_Height: 59.15625 + m_HorizontalBearingX: 1.90625 + m_HorizontalBearingY: 59.1875 + m_HorizontalAdvance: 57.375 + m_GlyphRect: + m_X: 899 + m_Y: 184 + m_Width: 54 + m_Height: 59 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 58 + m_Metrics: + m_Width: 53.59375 + m_Height: 59.15625 + m_HorizontalBearingX: 1.875 + m_HorizontalBearingY: 59.1875 + m_HorizontalAdvance: 57.375 + m_GlyphRect: + m_X: 593 + m_Y: 235 + m_Width: 54 + m_Height: 59 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 59 + m_Metrics: + m_Width: 47.125 + m_Height: 59.15625 + m_HorizontalBearingX: 2.71875 + m_HorizontalBearingY: 59.1875 + m_HorizontalAdvance: 52.53125 + m_GlyphRect: + m_X: 872 + m_Y: 343 + m_Width: 47 + m_Height: 59 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 60 + m_Metrics: + m_Width: 17.09375 + m_Height: 80.15625 + m_HorizontalBearingX: 6.125 + m_HorizontalBearingY: 62.34375 + m_HorizontalAdvance: 23.90625 + m_GlyphRect: + m_X: 188 + m_Y: 186 + m_Width: 17 + m_Height: 80 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 61 + m_Metrics: + m_Width: 23.90625 + m_Height: 63.15625 + m_HorizontalBearingX: 0 + m_HorizontalBearingY: 62.34375 + m_HorizontalAdvance: 23.90625 + m_GlyphRect: + m_X: 557 + m_Y: 337 + m_Width: 24 + m_Height: 63 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 62 + m_Metrics: + m_Width: 17.0625 + m_Height: 80.15625 + m_HorizontalBearingX: 0.65625 + m_HorizontalBearingY: 62.34375 + m_HorizontalAdvance: 23.90625 + m_GlyphRect: + m_X: 455 + m_Y: 171 + m_Width: 17 + m_Height: 80 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 63 + m_Metrics: + m_Width: 39.53125 + m_Height: 30.90625 + m_HorizontalBearingX: 0.40625 + m_HorizontalBearingY: 59.1875 + m_HorizontalAdvance: 40.34375 + m_GlyphRect: + m_X: 964 + m_Y: 745 + m_Width: 40 + m_Height: 31 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 64 + m_Metrics: + m_Width: 50.09375 + m_Height: 5.46875 + m_HorizontalBearingX: -1.3125 + m_HorizontalBearingY: -11.625 + m_HorizontalAdvance: 47.84375 + m_GlyphRect: + m_X: 894 + m_Y: 754 + m_Width: 50 + m_Height: 5 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 65 + m_Metrics: + m_Width: 17.8125 + m_Height: 12.875 + m_HorizontalBearingX: 4.4375 + m_HorizontalBearingY: 63.34375 + m_HorizontalAdvance: 28.625 + m_GlyphRect: + m_X: 807 + m_Y: 1001 + m_Width: 18 + m_Height: 13 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 66 + m_Metrics: + m_Width: 44.1875 + m_Height: 47.125 + m_HorizontalBearingX: 3.625 + m_HorizontalBearingY: 46.28125 + m_HorizontalAdvance: 47.84375 + m_GlyphRect: + m_X: 99 + m_Y: 965 + m_Width: 44 + m_Height: 47 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 67 + m_Metrics: + m_Width: 38.6875 + m_Height: 63.15625 + m_HorizontalBearingX: 5.53125 + m_HorizontalBearingY: 62.34375 + m_HorizontalAdvance: 47.84375 + m_GlyphRect: + m_X: 456 + m_Y: 826 + m_Width: 39 + m_Height: 63 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 68 + m_Metrics: + m_Width: 37.0625 + m_Height: 47.125 + m_HorizontalBearingX: 3.625 + m_HorizontalBearingY: 46.28125 + m_HorizontalAdvance: 43 + m_GlyphRect: + m_X: 163 + m_Y: 965 + m_Width: 37 + m_Height: 47 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 69 + m_Metrics: + m_Width: 38.65625 + m_Height: 63.15625 + m_HorizontalBearingX: 3.59375 + m_HorizontalBearingY: 62.34375 + m_HorizontalAdvance: 47.84375 + m_GlyphRect: + m_X: 485 + m_Y: 433 + m_Width: 39 + m_Height: 63 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 70 + m_Metrics: + m_Width: 40.34375 + m_Height: 47.125 + m_HorizontalBearingX: 3.625 + m_HorizontalBearingY: 46.28125 + m_HorizontalAdvance: 47.84375 + m_GlyphRect: + m_X: 220 + m_Y: 965 + m_Width: 40 + m_Height: 47 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 71 + m_Metrics: + m_Width: 22.8125 + m_Height: 62.21875 + m_HorizontalBearingX: 1.1875 + m_HorizontalBearingY: 62.25 + m_HorizontalAdvance: 23.90625 + m_GlyphRect: + m_X: 632 + m_Y: 817 + m_Width: 23 + m_Height: 62 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 72 + m_Metrics: + m_Width: 38.65625 + m_Height: 64 + m_HorizontalBearingX: 3.59375 + m_HorizontalBearingY: 46.15625 + m_HorizontalAdvance: 47.84375 + m_GlyphRect: + m_X: 514 + m_Y: 825 + m_Width: 39 + m_Height: 64 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 73 + m_Metrics: + m_Width: 36.28125 + m_Height: 62.3125 + m_HorizontalBearingX: 5.9375 + m_HorizontalBearingY: 62.34375 + m_HorizontalAdvance: 47.84375 + m_GlyphRect: + m_X: 674 + m_Y: 817 + m_Width: 36 + m_Height: 62 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 74 + m_Metrics: + m_Width: 7.5625 + m_Height: 62.3125 + m_HorizontalBearingX: 5.75 + m_HorizontalBearingY: 62.34375 + m_HorizontalAdvance: 19.09375 + m_GlyphRect: + m_X: 722 + m_Y: 734 + m_Width: 8 + m_Height: 62 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 75 + m_Metrics: + m_Width: 15.40625 + m_Height: 80.15625 + m_HorizontalBearingX: -2.125 + m_HorizontalBearingY: 62.34375 + m_HorizontalAdvance: 19.09375 + m_GlyphRect: + m_X: 558 + m_Y: 167 + m_Width: 15 + m_Height: 80 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 76 + m_Metrics: + m_Width: 37.34375 + m_Height: 62.3125 + m_HorizontalBearingX: 5.78125 + m_HorizontalBearingY: 62.34375 + m_HorizontalAdvance: 43 + m_GlyphRect: + m_X: 543 + m_Y: 420 + m_Width: 37 + m_Height: 62 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 77 + m_Metrics: + m_Width: 7.5625 + m_Height: 62.3125 + m_HorizontalBearingX: 5.78125 + m_HorizontalBearingY: 62.34375 + m_HorizontalAdvance: 19.09375 + m_GlyphRect: + m_X: 730 + m_Y: 816 + m_Width: 8 + m_Height: 62 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 78 + m_Metrics: + m_Width: 60.25 + m_Height: 46.28125 + m_HorizontalBearingX: 5.6875 + m_HorizontalBearingY: 46.28125 + m_HorizontalAdvance: 71.625 + m_GlyphRect: + m_X: 669 + m_Y: 169 + m_Width: 60 + m_Height: 46 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 79 + m_Metrics: + m_Width: 36.53125 + m_Height: 46.28125 + m_HorizontalBearingX: 5.6875 + m_HorizontalBearingY: 46.28125 + m_HorizontalAdvance: 47.84375 + m_GlyphRect: + m_X: 544 + m_Y: 502 + m_Width: 37 + m_Height: 46 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 80 + m_Metrics: + m_Width: 40.59375 + m_Height: 47.125 + m_HorizontalBearingX: 3.59375 + m_HorizontalBearingY: 46.28125 + m_HorizontalAdvance: 47.84375 + m_GlyphRect: + m_X: 902 + m_Y: 664 + m_Width: 41 + m_Height: 47 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 81 + m_Metrics: + m_Width: 38.6875 + m_Height: 64.0625 + m_HorizontalBearingX: 5.53125 + m_HorizontalBearingY: 46.25 + m_HorizontalAdvance: 47.84375 + m_GlyphRect: + m_X: 263 + m_Y: 484 + m_Width: 39 + m_Height: 64 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 82 + m_Metrics: + m_Width: 38.71875 + m_Height: 64.125 + m_HorizontalBearingX: 3.59375 + m_HorizontalBearingY: 46.28125 + m_HorizontalAdvance: 47.84375 + m_GlyphRect: + m_X: 335 + m_Y: 748 + m_Width: 39 + m_Height: 64 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 83 + m_Metrics: + m_Width: 21.5 + m_Height: 46.28125 + m_HorizontalBearingX: 5.6875 + m_HorizontalBearingY: 46.28125 + m_HorizontalAdvance: 28.625 + m_GlyphRect: + m_X: 796 + m_Y: 706 + m_Width: 22 + m_Height: 46 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 84 + m_Metrics: + m_Width: 37.5 + m_Height: 47 + m_HorizontalBearingX: 2.375 + m_HorizontalBearingY: 46.15625 + m_HorizontalAdvance: 43 + m_GlyphRect: + m_X: 837 + m_Y: 709 + m_Width: 38 + m_Height: 47 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 85 + m_Metrics: + m_Width: 21.9375 + m_Height: 56.25 + m_HorizontalBearingX: 1.28125 + m_HorizontalBearingY: 55.625 + m_HorizontalAdvance: 23.90625 + m_GlyphRect: + m_X: 766 + m_Y: 888 + m_Width: 22 + m_Height: 56 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 86 + m_Metrics: + m_Width: 36.53125 + m_Height: 46.28125 + m_HorizontalBearingX: 5.5625 + m_HorizontalBearingY: 45.4375 + m_HorizontalAdvance: 47.84375 + m_GlyphRect: + m_X: 807 + m_Y: 886 + m_Width: 37 + m_Height: 46 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 87 + m_Metrics: + m_Width: 42.4375 + m_Height: 45.4375 + m_HorizontalBearingX: 0.28125 + m_HorizontalBearingY: 45.4375 + m_HorizontalAdvance: 43 + m_GlyphRect: + m_X: 600 + m_Y: 586 + m_Width: 42 + m_Height: 45 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 88 + m_Metrics: + m_Width: 62.4375 + m_Height: 45.4375 + m_HorizontalBearingX: -0.15625 + m_HorizontalBearingY: 45.4375 + m_HorizontalAdvance: 62.09375 + m_GlyphRect: + m_X: 600 + m_Y: 90 + m_Width: 62 + m_Height: 45 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 89 + m_Metrics: + m_Width: 41.09375 + m_Height: 45.4375 + m_HorizontalBearingX: 0.9375 + m_HorizontalBearingY: 45.4375 + m_HorizontalAdvance: 43 + m_GlyphRect: + m_X: 662 + m_Y: 586 + m_Width: 41 + m_Height: 45 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 90 + m_Metrics: + m_Width: 42.625 + m_Height: 63.28125 + m_HorizontalBearingX: 0.1875 + m_HorizontalBearingY: 45.4375 + m_HorizontalAdvance: 43 + m_GlyphRect: + m_X: 663 + m_Y: 472 + m_Width: 43 + m_Height: 63 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 91 + m_Metrics: + m_Width: 35.21875 + m_Height: 45.4375 + m_HorizontalBearingX: 3.46875 + m_HorizontalBearingY: 45.4375 + m_HorizontalAdvance: 43 + m_GlyphRect: + m_X: 828 + m_Y: 801 + m_Width: 35 + m_Height: 45 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 92 + m_Metrics: + m_Width: 25.78125 + m_Height: 80.15625 + m_HorizontalBearingX: 1.40625 + m_HorizontalBearingY: 62.34375 + m_HorizontalAdvance: 28.71875 + m_GlyphRect: + m_X: 987 + m_Y: 11 + m_Width: 26 + m_Height: 80 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 93 + m_Metrics: + m_Width: 6.96875 + m_Height: 80.53125 + m_HorizontalBearingX: 7.65625 + m_HorizontalBearingY: 62.34375 + m_HorizontalAdvance: 22.34375 + m_GlyphRect: + m_X: 229 + m_Y: 572 + m_Width: 7 + m_Height: 81 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 94 + m_Metrics: + m_Width: 25.71875 + m_Height: 80.15625 + m_HorizontalBearingX: 1.40625 + m_HorizontalBearingY: 62.34375 + m_HorizontalAdvance: 28.71875 + m_GlyphRect: + m_X: 216 + m_Y: 865 + m_Width: 26 + m_Height: 80 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 95 + m_Metrics: + m_Width: 42.5 + m_Height: 10.65625 + m_HorizontalBearingX: 3.84375 + m_HorizontalBearingY: 33.90625 + m_HorizontalAdvance: 50.21875 + m_GlyphRect: + m_X: 663 + m_Y: 554 + m_Width: 43 + m_Height: 11 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 96 + m_Metrics: + m_Width: 23.90625 + m_Height: 96.0625 + m_HorizontalBearingX: 0 + m_HorizontalBearingY: 77.84375 + m_HorizontalAdvance: 23.90625 + m_GlyphRect: + m_X: 10 + m_Y: -105 + m_Width: 24 + m_Height: 96 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 97 + m_Metrics: + m_Width: 8.3125 + m_Height: 59.15625 + m_HorizontalBearingX: 10.15625 + m_HorizontalBearingY: 45.4375 + m_HorizontalAdvance: 28.625 + m_GlyphRect: + m_X: 710 + m_Y: 899 + m_Width: 8 + m_Height: 59 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 98 + m_Metrics: + m_Width: 37.09375 + m_Height: 60.46875 + m_HorizontalBearingX: 5.65625 + m_HorizontalBearingY: 59.1875 + m_HorizontalAdvance: 47.84375 + m_GlyphRect: + m_X: 457 + m_Y: 909 + m_Width: 37 + m_Height: 60 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 99 + m_Metrics: + m_Width: 43.9375 + m_Height: 60.0625 + m_HorizontalBearingX: 2.40625 + m_HorizontalBearingY: 60.0625 + m_HorizontalAdvance: 47.84375 + m_GlyphRect: + m_X: 600 + m_Y: 427 + m_Width: 44 + m_Height: 60 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 100 + m_Metrics: + m_Width: 38.34375 + m_Height: 38.40625 + m_HorizontalBearingX: 4.71875 + m_HorizontalBearingY: 47.84375 + m_HorizontalAdvance: 47.84375 + m_GlyphRect: + m_X: 883 + m_Y: 804 + m_Width: 38 + m_Height: 38 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 101 + m_Metrics: + m_Width: 48.0625 + m_Height: 59.15625 + m_HorizontalBearingX: -0.09375 + m_HorizontalBearingY: 59.1875 + m_HorizontalAdvance: 47.84375 + m_GlyphRect: + m_X: 736 + m_Y: 323 + m_Width: 48 + m_Height: 59 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 102 + m_Metrics: + m_Width: 6.96875 + m_Height: 80.53125 + m_HorizontalBearingX: 7.65625 + m_HorizontalBearingY: 62.34375 + m_HorizontalAdvance: 22.34375 + m_GlyphRect: + m_X: 255 + m_Y: 572 + m_Width: 7 + m_Height: 81 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 103 + m_Metrics: + m_Width: 38.15625 + m_Height: 69.53125 + m_HorizontalBearingX: 4.8125 + m_HorizontalBearingY: 62.34375 + m_HorizontalAdvance: 47.84375 + m_GlyphRect: + m_X: 191 + m_Y: 395 + m_Width: 38 + m_Height: 70 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 104 + m_Metrics: + m_Width: 23.40625 + m_Height: 7.71875 + m_HorizontalBearingX: 1.875 + m_HorizontalBearingY: 58.9375 + m_HorizontalAdvance: 28.625 + m_GlyphRect: + m_X: 735 + m_Y: 703 + m_Width: 23 + m_Height: 8 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 105 + m_Metrics: + m_Width: 60.71875 + m_Height: 60.71875 + m_HorizontalBearingX: 1.28125 + m_HorizontalBearingY: 60.0625 + m_HorizontalAdvance: 63.375 + m_GlyphRect: + m_X: 401 + m_Y: 90 + m_Width: 61 + m_Height: 61 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 106 + m_Metrics: + m_Width: 31.03125 + m_Height: 32.78125 + m_HorizontalBearingX: 1.0625 + m_HorizontalBearingY: 60.15625 + m_HorizontalAdvance: 31.84375 + m_GlyphRect: + m_X: 982 + m_Y: 110 + m_Width: 31 + m_Height: 33 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 107 + m_Metrics: + m_Width: 40.84375 + m_Height: 33.5625 + m_HorizontalBearingX: 3.46875 + m_HorizontalBearingY: 39.5 + m_HorizontalAdvance: 47.84375 + m_GlyphRect: + m_X: 644 + m_Y: 977 + m_Width: 41 + m_Height: 34 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 108 + m_Metrics: + m_Width: 41.78125 + m_Height: 24.09375 + m_HorizontalBearingX: 4.1875 + m_HorizontalBearingY: 31.6875 + m_HorizontalAdvance: 50.21875 + m_GlyphRect: + m_X: 398 + m_Y: 990 + m_Width: 42 + m_Height: 24 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 109 + m_Metrics: + m_Width: 21 + m_Height: 6.71875 + m_HorizontalBearingX: 3.8125 + m_HorizontalBearingY: 26.21875 + m_HorizontalAdvance: 28.625 + m_GlyphRect: + m_X: 955 + m_Y: 930 + m_Width: 21 + m_Height: 7 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 110 + m_Metrics: + m_Width: 60.71875 + m_Height: 60.71875 + m_HorizontalBearingX: 1.28125 + m_HorizontalBearingY: 60.0625 + m_HorizontalAdvance: 63.375 + m_GlyphRect: + m_X: 225 + m_Y: 184 + m_Width: 61 + m_Height: 61 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 111 + m_Metrics: + m_Width: 48.9375 + m_Height: 3.9375 + m_HorizontalBearingX: -0.71875 + m_HorizontalBearingY: 64.9375 + m_HorizontalAdvance: 47.5 + m_GlyphRect: + m_X: 894 + m_Y: 730 + m_Width: 49 + m_Height: 4 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 112 + m_Metrics: + m_Width: 24.09375 + m_Height: 23.9375 + m_HorizontalBearingX: 5.09375 + m_HorizontalBearingY: 60.0625 + m_HorizontalAdvance: 34.40625 + m_GlyphRect: + m_X: 912 + m_Y: 957 + m_Width: 24 + m_Height: 24 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 113 + m_Metrics: + m_Width: 41.78125 + m_Height: 51.1875 + m_HorizontalBearingX: 2.71875 + m_HorizontalBearingY: 51.21875 + m_HorizontalAdvance: 47.1875 + m_GlyphRect: + m_X: 970 + m_Y: 515 + m_Width: 42 + m_Height: 51 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 114 + m_Metrics: + m_Width: 25.28125 + m_Height: 36 + m_HorizontalBearingX: 1.71875 + m_HorizontalBearingY: 59.6875 + m_HorizontalAdvance: 28.625 + m_GlyphRect: + m_X: 863 + m_Y: 865 + m_Width: 25 + m_Height: 36 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 115 + m_Metrics: + m_Width: 25.84375 + m_Height: 36.53125 + m_HorizontalBearingX: 1.125 + m_HorizontalBearingY: 59.6875 + m_HorizontalAdvance: 28.625 + m_GlyphRect: + m_X: 599 + m_Y: 977 + m_Width: 26 + m_Height: 37 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 116 + m_Metrics: + m_Width: 17.8125 + m_Height: 12.875 + m_HorizontalBearingX: 3 + m_HorizontalBearingY: 63.34375 + m_HorizontalAdvance: 28.625 + m_GlyphRect: + m_X: 844 + m_Y: 1001 + m_Width: 18 + m_Height: 13 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 117 + m_Metrics: + m_Width: 41.6875 + m_Height: 63.28125 + m_HorizontalBearingX: 5.875 + m_HorizontalBearingY: 45.4375 + m_HorizontalAdvance: 49.5625 + m_GlyphRect: + m_X: 972 + m_Y: 184 + m_Width: 42 + m_Height: 63 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 118 + m_Metrics: + m_Width: 39.15625 + m_Height: 70.25 + m_HorizontalBearingX: 3.34375 + m_HorizontalBearingY: 59.1875 + m_HorizontalAdvance: 46.1875 + m_GlyphRect: + m_X: 198 + m_Y: 775 + m_Width: 39 + m_Height: 70 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 119 + m_Metrics: + m_Width: 8.1875 + m_Height: 9.25 + m_HorizontalBearingX: 10.1875 + m_HorizontalBearingY: 27.96875 + m_HorizontalAdvance: 28.625 + m_GlyphRect: + m_X: 857 + m_Y: 973 + m_Width: 8 + m_Height: 9 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 120 + m_Metrics: + m_Width: 15.28125 + m_Height: 18.21875 + m_HorizontalBearingX: 4.96875 + m_HorizontalBearingY: 0 + m_HorizontalAdvance: 28.625 + m_GlyphRect: + m_X: 558 + m_Y: 267 + m_Width: 15 + m_Height: 18 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 121 + m_Metrics: + m_Width: 23.375 + m_Height: 35.5 + m_HorizontalBearingX: 3.34375 + m_HorizontalBearingY: 59.1875 + m_HorizontalAdvance: 28.625 + m_GlyphRect: + m_X: 912 + m_Y: 902 + m_Width: 23 + m_Height: 36 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 122 + m_Metrics: + m_Width: 29.25 + m_Height: 32.78125 + m_HorizontalBearingX: 1.125 + m_HorizontalBearingY: 60.15625 + m_HorizontalAdvance: 31.40625 + m_GlyphRect: + m_X: 863 + m_Y: 920 + m_Width: 29 + m_Height: 33 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 123 + m_Metrics: + m_Width: 40.84375 + m_Height: 33.5625 + m_HorizontalBearingX: 3.46875 + m_HorizontalBearingY: 39.5 + m_HorizontalAdvance: 47.84375 + m_GlyphRect: + m_X: 704 + m_Y: 979 + m_Width: 41 + m_Height: 34 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 124 + m_Metrics: + m_Width: 65.40625 + m_Height: 59.15625 + m_HorizontalBearingX: 2.34375 + m_HorizontalBearingY: 59.1875 + m_HorizontalAdvance: 71.71875 + m_GlyphRect: + m_X: 582 + m_Y: 11 + m_Width: 65 + m_Height: 59 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 125 + m_Metrics: + m_Width: 67.03125 + m_Height: 59.15625 + m_HorizontalBearingX: 2.34375 + m_HorizontalBearingY: 59.1875 + m_HorizontalAdvance: 71.71875 + m_GlyphRect: + m_X: 495 + m_Y: 11 + m_Width: 67 + m_Height: 59 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 126 + m_Metrics: + m_Width: 64.71875 + m_Height: 59.65625 + m_HorizontalBearingX: 3.0625 + m_HorizontalBearingY: 59.6875 + m_HorizontalAdvance: 71.71875 + m_GlyphRect: + m_X: 667 + m_Y: 10 + m_Width: 65 + m_Height: 60 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 127 + m_Metrics: + m_Width: 41.125 + m_Height: 60.0625 + m_HorizontalBearingX: 5.5 + m_HorizontalBearingY: 45.4375 + m_HorizontalAdvance: 52.53125 + m_GlyphRect: + m_X: 909 + m_Y: 504 + m_Width: 41 + m_Height: 60 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 128 + m_Metrics: + m_Width: 57.03125 + m_Height: 74.59375 + m_HorizontalBearingX: 0.15625 + m_HorizontalBearingY: 74.59375 + m_HorizontalAdvance: 57.375 + m_GlyphRect: + m_X: 910 + m_Y: 10 + m_Width: 57 + m_Height: 75 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 129 + m_Metrics: + m_Width: 57.03125 + m_Height: 74.59375 + m_HorizontalBearingX: 0.15625 + m_HorizontalBearingY: 74.59375 + m_HorizontalAdvance: 57.375 + m_GlyphRect: + m_X: 88 + m_Y: 496 + m_Width: 57 + m_Height: 75 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 130 + m_Metrics: + m_Width: 57.03125 + m_Height: 75.15625 + m_HorizontalBearingX: 0.15625 + m_HorizontalBearingY: 75.1875 + m_HorizontalAdvance: 57.375 + m_GlyphRect: + m_X: 10 + m_Y: 582 + m_Width: 57 + m_Height: 75 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 131 + m_Metrics: + m_Width: 57.03125 + m_Height: 75.5 + m_HorizontalBearingX: 0.15625 + m_HorizontalBearingY: 75.53125 + m_HorizontalAdvance: 57.375 + m_GlyphRect: + m_X: 10 + m_Y: 676 + m_Width: 57 + m_Height: 76 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 132 + m_Metrics: + m_Width: 57.03125 + m_Height: 71.96875 + m_HorizontalBearingX: 0.15625 + m_HorizontalBearingY: 72 + m_HorizontalAdvance: 57.375 + m_GlyphRect: + m_X: 87 + m_Y: 590 + m_Width: 57 + m_Height: 72 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 133 + m_Metrics: + m_Width: 57.03125 + m_Height: 75.0625 + m_HorizontalBearingX: 0.15625 + m_HorizontalBearingY: 75.0625 + m_HorizontalAdvance: 57.375 + m_GlyphRect: + m_X: 10 + m_Y: 772 + m_Width: 57 + m_Height: 75 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 134 + m_Metrics: + m_Width: 81.3125 + m_Height: 59.15625 + m_HorizontalBearingX: 1 + m_HorizontalBearingY: 59.1875 + m_HorizontalAdvance: 86 + m_GlyphRect: + m_X: 204 + m_Y: 11 + m_Width: 81 + m_Height: 59 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 135 + m_Metrics: + m_Width: 54.46875 + m_Height: 78.28125 + m_HorizontalBearingX: 4.34375 + m_HorizontalBearingY: 60.0625 + m_HorizontalAdvance: 62.09375 + m_GlyphRect: + m_X: 10 + m_Y: 867 + m_Width: 54 + m_Height: 78 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 136 + m_Metrics: + m_Width: 46.59375 + m_Height: 74.59375 + m_HorizontalBearingX: 7.03125 + m_HorizontalBearingY: 74.59375 + m_HorizontalAdvance: 57.375 + m_GlyphRect: + m_X: 84 + m_Y: 870 + m_Width: 47 + m_Height: 75 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 137 + m_Metrics: + m_Width: 46.59375 + m_Height: 74.59375 + m_HorizontalBearingX: 7.03125 + m_HorizontalBearingY: 74.59375 + m_HorizontalAdvance: 57.375 + m_GlyphRect: + m_X: 150 + m_Y: 870 + m_Width: 47 + m_Height: 75 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 138 + m_Metrics: + m_Width: 46.59375 + m_Height: 75.15625 + m_HorizontalBearingX: 7.03125 + m_HorizontalBearingY: 75.1875 + m_HorizontalAdvance: 57.375 + m_GlyphRect: + m_X: 88 + m_Y: 402 + m_Width: 47 + m_Height: 75 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 139 + m_Metrics: + m_Width: 46.59375 + m_Height: 71.96875 + m_HorizontalBearingX: 7.03125 + m_HorizontalBearingY: 72 + m_HorizontalAdvance: 57.375 + m_GlyphRect: + m_X: 492 + m_Y: 166 + m_Width: 47 + m_Height: 72 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 140 + m_Metrics: + m_Width: 17.8125 + m_Height: 74.59375 + m_HorizontalBearingX: 0.375 + m_HorizontalBearingY: 74.59375 + m_HorizontalAdvance: 23.90625 + m_GlyphRect: + m_X: 150 + m_Y: 305 + m_Width: 18 + m_Height: 75 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 141 + m_Metrics: + m_Width: 17.8125 + m_Height: 74.59375 + m_HorizontalBearingX: 5.9375 + m_HorizontalBearingY: 74.59375 + m_HorizontalAdvance: 23.90625 + m_GlyphRect: + m_X: 154 + m_Y: 399 + m_Width: 18 + m_Height: 75 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 142 + m_Metrics: + m_Width: 27.8125 + m_Height: 75.15625 + m_HorizontalBearingX: -1.9375 + m_HorizontalBearingY: 75.1875 + m_HorizontalAdvance: 23.90625 + m_GlyphRect: + m_X: 354 + m_Y: 90 + m_Width: 28 + m_Height: 75 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 143 + m_Metrics: + m_Width: 23.40625 + m_Height: 71.96875 + m_HorizontalBearingX: 0.28125 + m_HorizontalBearingY: 72 + m_HorizontalAdvance: 23.90625 + m_GlyphRect: + m_X: 155 + m_Y: 775 + m_Width: 23 + m_Height: 72 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 144 + m_Metrics: + m_Width: 57.40625 + m_Height: 59.15625 + m_HorizontalBearingX: 0.5625 + m_HorizontalBearingY: 59.1875 + m_HorizontalAdvance: 62.09375 + m_GlyphRect: + m_X: 905 + m_Y: 105 + m_Width: 57 + m_Height: 59 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 145 + m_Metrics: + m_Width: 48.03125 + m_Height: 75.5 + m_HorizontalBearingX: 7.03125 + m_HorizontalBearingY: 75.53125 + m_HorizontalAdvance: 62.09375 + m_GlyphRect: + m_X: 87 + m_Y: 775 + m_Width: 48 + m_Height: 76 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 146 + m_Metrics: + m_Width: 58.71875 + m_Height: 75.4375 + m_HorizontalBearingX: 4.0625 + m_HorizontalBearingY: 74.59375 + m_HorizontalAdvance: 66.90625 + m_GlyphRect: + m_X: 10 + m_Y: 297 + m_Width: 59 + m_Height: 75 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 147 + m_Metrics: + m_Width: 58.71875 + m_Height: 75.4375 + m_HorizontalBearingX: 4.0625 + m_HorizontalBearingY: 74.59375 + m_HorizontalAdvance: 66.90625 + m_GlyphRect: + m_X: 10 + m_Y: 392 + m_Width: 59 + m_Height: 75 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 148 + m_Metrics: + m_Width: 58.71875 + m_Height: 76 + m_HorizontalBearingX: 4.0625 + m_HorizontalBearingY: 75.1875 + m_HorizontalAdvance: 66.90625 + m_GlyphRect: + m_X: 10 + m_Y: 486 + m_Width: 59 + m_Height: 76 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 149 + m_Metrics: + m_Width: 58.71875 + m_Height: 76.34375 + m_HorizontalBearingX: 4.0625 + m_HorizontalBearingY: 75.53125 + m_HorizontalAdvance: 66.90625 + m_GlyphRect: + m_X: 10 + m_Y: 201 + m_Width: 59 + m_Height: 76 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 150 + m_Metrics: + m_Width: 58.71875 + m_Height: 72.8125 + m_HorizontalBearingX: 4.0625 + m_HorizontalBearingY: 72 + m_HorizontalAdvance: 66.90625 + m_GlyphRect: + m_X: 832 + m_Y: 10 + m_Width: 59 + m_Height: 73 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 151 + m_Metrics: + m_Width: 38.34375 + m_Height: 38.40625 + m_HorizontalBearingX: 5.9375 + m_HorizontalBearingY: 47.84375 + m_HorizontalAdvance: 50.21875 + m_GlyphRect: + m_X: 969 + m_Y: 796 + m_Width: 38 + m_Height: 38 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 152 + m_Metrics: + m_Width: 61.03125 + m_Height: 63.78125 + m_HorizontalBearingX: 2.96875 + m_HorizontalBearingY: 61.5625 + m_HorizontalAdvance: 66.90625 + m_GlyphRect: + m_X: 751 + m_Y: 10 + m_Width: 61 + m_Height: 64 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 153 + m_Metrics: + m_Width: 48.84375 + m_Height: 75.4375 + m_HorizontalBearingX: 6.625 + m_HorizontalBearingY: 74.59375 + m_HorizontalAdvance: 62.09375 + m_GlyphRect: + m_X: 150 + m_Y: 91 + m_Width: 49 + m_Height: 75 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 154 + m_Metrics: + m_Width: 48.84375 + m_Height: 75.4375 + m_HorizontalBearingX: 6.625 + m_HorizontalBearingY: 74.59375 + m_HorizontalAdvance: 62.09375 + m_GlyphRect: + m_X: 218 + m_Y: 90 + m_Width: 49 + m_Height: 75 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 155 + m_Metrics: + m_Width: 48.84375 + m_Height: 76 + m_HorizontalBearingX: 6.625 + m_HorizontalBearingY: 75.1875 + m_HorizontalAdvance: 62.09375 + m_GlyphRect: + m_X: 286 + m_Y: 89 + m_Width: 49 + m_Height: 76 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 156 + m_Metrics: + m_Width: 48.84375 + m_Height: 72.8125 + m_HorizontalBearingX: 6.625 + m_HorizontalBearingY: 72 + m_HorizontalAdvance: 62.09375 + m_GlyphRect: + m_X: 160 + m_Y: 682 + m_Width: 49 + m_Height: 73 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 157 + m_Metrics: + m_Width: 53.59375 + m_Height: 74.59375 + m_HorizontalBearingX: 1.875 + m_HorizontalBearingY: 74.59375 + m_HorizontalAdvance: 57.375 + m_GlyphRect: + m_X: 87 + m_Y: 681 + m_Width: 54 + m_Height: 75 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 158 + m_Metrics: + m_Width: 45.75 + m_Height: 59.15625 + m_HorizontalBearingX: 7.03125 + m_HorizontalBearingY: 59.1875 + m_HorizontalAdvance: 57.375 + m_GlyphRect: + m_X: 735 + m_Y: 402 + m_Width: 46 + m_Height: 59 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 159 + m_Metrics: + m_Width: 43.03125 + m_Height: 63.15625 + m_HorizontalBearingX: 5.9375 + m_HorizontalBearingY: 62.34375 + m_HorizontalAdvance: 52.53125 + m_GlyphRect: + m_X: 422 + m_Y: 433 + m_Width: 43 + m_Height: 63 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 160 + m_Metrics: + m_Width: 44.1875 + m_Height: 64.15625 + m_HorizontalBearingX: 3.625 + m_HorizontalBearingY: 63.34375 + m_HorizontalAdvance: 47.84375 + m_GlyphRect: + m_X: 251 + m_Y: 290 + m_Width: 44 + m_Height: 64 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 161 + m_Metrics: + m_Width: 44.1875 + m_Height: 64.15625 + m_HorizontalBearingX: 3.625 + m_HorizontalBearingY: 63.34375 + m_HorizontalAdvance: 47.84375 + m_GlyphRect: + m_X: 426 + m_Y: 271 + m_Width: 44 + m_Height: 64 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 162 + m_Metrics: + m_Width: 44.1875 + m_Height: 63.46875 + m_HorizontalBearingX: 3.625 + m_HorizontalBearingY: 62.625 + m_HorizontalAdvance: 47.84375 + m_GlyphRect: + m_X: 493 + m_Y: 337 + m_Width: 44 + m_Height: 63 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 163 + m_Metrics: + m_Width: 44.1875 + m_Height: 62.53125 + m_HorizontalBearingX: 3.625 + m_HorizontalBearingY: 61.6875 + m_HorizontalAdvance: 47.84375 + m_GlyphRect: + m_X: 865 + m_Y: 421 + m_Width: 44 + m_Height: 63 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 164 + m_Metrics: + m_Width: 44.1875 + m_Height: 59.75 + m_HorizontalBearingX: 3.625 + m_HorizontalBearingY: 58.9375 + m_HorizontalAdvance: 47.84375 + m_GlyphRect: + m_X: 929 + m_Y: 424 + m_Width: 44 + m_Height: 60 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 165 + m_Metrics: + m_Width: 44.1875 + m_Height: 70.1875 + m_HorizontalBearingX: 3.625 + m_HorizontalBearingY: 69.34375 + m_HorizontalAdvance: 47.84375 + m_GlyphRect: + m_X: 187 + m_Y: 306 + m_Width: 44 + m_Height: 70 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 166 + m_Metrics: + m_Width: 69.875 + m_Height: 47.125 + m_HorizontalBearingX: 2.75 + m_HorizontalBearingY: 46.28125 + m_HorizontalAdvance: 76.46875 + m_GlyphRect: + m_X: 10 + m_Y: 965 + m_Width: 70 + m_Height: 47 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 167 + m_Metrics: + m_Width: 37.0625 + m_Height: 64.5 + m_HorizontalBearingX: 3.625 + m_HorizontalBearingY: 46.28125 + m_HorizontalAdvance: 43 + m_GlyphRect: + m_X: 339 + m_Y: 831 + m_Width: 37 + m_Height: 65 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 168 + m_Metrics: + m_Width: 40.34375 + m_Height: 64.15625 + m_HorizontalBearingX: 3.625 + m_HorizontalBearingY: 63.34375 + m_HorizontalAdvance: 47.84375 + m_GlyphRect: + m_X: 384 + m_Y: 658 + m_Width: 40 + m_Height: 64 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 169 + m_Metrics: + m_Width: 40.34375 + m_Height: 64.15625 + m_HorizontalBearingX: 3.625 + m_HorizontalBearingY: 63.34375 + m_HorizontalAdvance: 47.84375 + m_GlyphRect: + m_X: 393 + m_Y: 742 + m_Width: 40 + m_Height: 64 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 170 + m_Metrics: + m_Width: 40.34375 + m_Height: 63.46875 + m_HorizontalBearingX: 3.625 + m_HorizontalBearingY: 62.625 + m_HorizontalAdvance: 47.84375 + m_GlyphRect: + m_X: 599 + m_Y: 651 + m_Width: 40 + m_Height: 63 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 171 + m_Metrics: + m_Width: 40.34375 + m_Height: 59.75 + m_HorizontalBearingX: 3.625 + m_HorizontalBearingY: 58.9375 + m_HorizontalAdvance: 47.84375 + m_GlyphRect: + m_X: 782 + m_Y: 626 + m_Width: 40 + m_Height: 60 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 172 + m_Metrics: + m_Width: 17.8125 + m_Height: 63.3125 + m_HorizontalBearingX: 0.40625 + m_HorizontalBearingY: 63.34375 + m_HorizontalAdvance: 23.90625 + m_GlyphRect: + m_X: 629 + m_Y: 734 + m_Width: 18 + m_Height: 63 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 173 + m_Metrics: + m_Width: 17.8125 + m_Height: 63.3125 + m_HorizontalBearingX: 5.65625 + m_HorizontalBearingY: 63.34375 + m_HorizontalAdvance: 23.90625 + m_GlyphRect: + m_X: 659 + m_Y: 651 + m_Width: 18 + m_Height: 63 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 174 + m_Metrics: + m_Width: 27.8125 + m_Height: 62.625 + m_HorizontalBearingX: -1.875 + m_HorizontalBearingY: 62.625 + m_HorizontalAdvance: 23.90625 + m_GlyphRect: + m_X: 735 + m_Y: 621 + m_Width: 28 + m_Height: 63 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 175 + m_Metrics: + m_Width: 23.40625 + m_Height: 58.90625 + m_HorizontalBearingX: 0.3125 + m_HorizontalBearingY: 58.9375 + m_HorizontalAdvance: 23.90625 + m_GlyphRect: + m_X: 757 + m_Y: 809 + m_Width: 23 + m_Height: 59 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 176 + m_Metrics: + m_Width: 41 + m_Height: 64.40625 + m_HorizontalBearingX: 3.59375 + m_HorizontalBearingY: 63.59375 + m_HorizontalAdvance: 47.84375 + m_GlyphRect: + m_X: 396 + m_Y: 826 + m_Width: 41 + m_Height: 64 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 177 + m_Metrics: + m_Width: 36.53125 + m_Height: 61.6875 + m_HorizontalBearingX: 5.84375 + m_HorizontalBearingY: 61.6875 + m_HorizontalAdvance: 47.84375 + m_GlyphRect: + m_X: 280 + m_Y: 952 + m_Width: 37 + m_Height: 62 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 178 + m_Metrics: + m_Width: 40.59375 + m_Height: 64.15625 + m_HorizontalBearingX: 3.59375 + m_HorizontalBearingY: 63.34375 + m_HorizontalAdvance: 47.84375 + m_GlyphRect: + m_X: 444 + m_Y: 658 + m_Width: 41 + m_Height: 64 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 179 + m_Metrics: + m_Width: 40.59375 + m_Height: 64.15625 + m_HorizontalBearingX: 3.59375 + m_HorizontalBearingY: 63.34375 + m_HorizontalAdvance: 47.84375 + m_GlyphRect: + m_X: 453 + m_Y: 742 + m_Width: 41 + m_Height: 64 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 180 + m_Metrics: + m_Width: 40.59375 + m_Height: 63.46875 + m_HorizontalBearingX: 3.59375 + m_HorizontalBearingY: 62.625 + m_HorizontalAdvance: 47.84375 + m_GlyphRect: + m_X: 569 + m_Y: 734 + m_Width: 41 + m_Height: 63 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 181 + m_Metrics: + m_Width: 40.59375 + m_Height: 62.53125 + m_HorizontalBearingX: 3.59375 + m_HorizontalBearingY: 61.6875 + m_HorizontalAdvance: 47.84375 + m_GlyphRect: + m_X: 572 + m_Y: 816 + m_Width: 41 + m_Height: 63 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 182 + m_Metrics: + m_Width: 40.59375 + m_Height: 59.75 + m_HorizontalBearingX: 3.59375 + m_HorizontalBearingY: 58.9375 + m_HorizontalAdvance: 47.84375 + m_GlyphRect: + m_X: 842 + m_Y: 630 + m_Width: 41 + m_Height: 60 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 183 + m_Metrics: + m_Width: 41.78125 + m_Height: 38.53125 + m_HorizontalBearingX: 2.71875 + m_HorizontalBearingY: 47.9375 + m_HorizontalAdvance: 47.1875 + m_GlyphRect: + m_X: 786 + m_Y: 568 + m_Width: 42 + m_Height: 39 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 184 + m_Metrics: + m_Width: 48.71875 + m_Height: 48.46875 + m_HorizontalBearingX: 1.84375 + m_HorizontalBearingY: 46.875 + m_HorizontalAdvance: 52.53125 + m_GlyphRect: + m_X: 804 + m_Y: 341 + m_Width: 49 + m_Height: 48 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 185 + m_Metrics: + m_Width: 36.53125 + m_Height: 64.15625 + m_HorizontalBearingX: 5.8125 + m_HorizontalBearingY: 63.34375 + m_HorizontalAdvance: 47.84375 + m_GlyphRect: + m_X: 504 + m_Y: 658 + m_Width: 37 + m_Height: 64 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 186 + m_Metrics: + m_Width: 36.53125 + m_Height: 64.15625 + m_HorizontalBearingX: 5.8125 + m_HorizontalBearingY: 63.34375 + m_HorizontalAdvance: 47.84375 + m_GlyphRect: + m_X: 513 + m_Y: 742 + m_Width: 37 + m_Height: 64 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 187 + m_Metrics: + m_Width: 36.53125 + m_Height: 63.46875 + m_HorizontalBearingX: 5.8125 + m_HorizontalBearingY: 62.625 + m_HorizontalAdvance: 47.84375 + m_GlyphRect: + m_X: 666 + m_Y: 734 + m_Width: 37 + m_Height: 63 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 188 + m_Metrics: + m_Width: 36.53125 + m_Height: 59.75 + m_HorizontalBearingX: 5.8125 + m_HorizontalBearingY: 58.9375 + m_HorizontalAdvance: 47.84375 + m_GlyphRect: + m_X: 599 + m_Y: 898 + m_Width: 37 + m_Height: 60 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 189 + m_Metrics: + m_Width: 42.625 + m_Height: 81.15625 + m_HorizontalBearingX: 0.1875 + m_HorizontalBearingY: 63.34375 + m_HorizontalAdvance: 43 + m_GlyphRect: + m_X: 88 + m_Y: 105 + m_Width: 43 + m_Height: 81 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 190 + m_Metrics: + m_Width: 38.4375 + m_Height: 80.15625 + m_HorizontalBearingX: 5.78125 + m_HorizontalBearingY: 62.34375 + m_HorizontalAdvance: 47.84375 + m_GlyphRect: + m_X: 88 + m_Y: 206 + m_Width: 38 + m_Height: 80 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 191 + m_Metrics: + m_Width: 42.625 + m_Height: 76.75 + m_HorizontalBearingX: 0.1875 + m_HorizontalBearingY: 58.9375 + m_HorizontalAdvance: 43 + m_GlyphRect: + m_X: 88 + m_Y: 305 + m_Width: 43 + m_Height: 77 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 192 + m_Metrics: + m_Width: 0 + m_Height: 0 + m_HorizontalBearingX: 0 + m_HorizontalBearingY: 0 + m_HorizontalAdvance: 43 + m_GlyphRect: + m_X: 10 + m_Y: -9 + m_Width: 0 + m_Height: 0 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 193 + m_Metrics: + m_Width: 0 + m_Height: 0 + m_HorizontalBearingX: 0 + m_HorizontalBearingY: 0 + m_HorizontalAdvance: 86 + m_GlyphRect: + m_X: 10 + m_Y: -9 + m_Width: 0 + m_Height: 0 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 194 + m_Metrics: + m_Width: 0 + m_Height: 0 + m_HorizontalBearingX: 0 + m_HorizontalBearingY: 0 + m_HorizontalAdvance: 43 + m_GlyphRect: + m_X: 10 + m_Y: -9 + m_Width: 0 + m_Height: 0 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 195 + m_Metrics: + m_Width: 0 + m_Height: 0 + m_HorizontalBearingX: 0 + m_HorizontalBearingY: 0 + m_HorizontalAdvance: 86 + m_GlyphRect: + m_X: 10 + m_Y: -9 + m_Width: 0 + m_Height: 0 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 196 + m_Metrics: + m_Width: 0 + m_Height: 0 + m_HorizontalBearingX: 0 + m_HorizontalBearingY: 0 + m_HorizontalAdvance: 28.6875 + m_GlyphRect: + m_X: 10 + m_Y: -9 + m_Width: 0 + m_Height: 0 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 197 + m_Metrics: + m_Width: 0 + m_Height: 0 + m_HorizontalBearingX: 0 + m_HorizontalBearingY: 0 + m_HorizontalAdvance: 21.5 + m_GlyphRect: + m_X: 10 + m_Y: -9 + m_Width: 0 + m_Height: 0 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 198 + m_Metrics: + m_Width: 0 + m_Height: 0 + m_HorizontalBearingX: 0 + m_HorizontalBearingY: 0 + m_HorizontalAdvance: 14.3125 + m_GlyphRect: + m_X: 10 + m_Y: -9 + m_Width: 0 + m_Height: 0 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 199 + m_Metrics: + m_Width: 0 + m_Height: 0 + m_HorizontalBearingX: 0 + m_HorizontalBearingY: 0 + m_HorizontalAdvance: 47.84375 + m_GlyphRect: + m_X: 10 + m_Y: -9 + m_Width: 0 + m_Height: 0 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 200 + m_Metrics: + m_Width: 0 + m_Height: 0 + m_HorizontalBearingX: 0 + m_HorizontalBearingY: 0 + m_HorizontalAdvance: 23.90625 + m_GlyphRect: + m_X: 10 + m_Y: -9 + m_Width: 0 + m_Height: 0 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 201 + m_Metrics: + m_Width: 0 + m_Height: 0 + m_HorizontalBearingX: 0 + m_HorizontalBearingY: 0 + m_HorizontalAdvance: 17.21875 + m_GlyphRect: + m_X: 10 + m_Y: -9 + m_Width: 0 + m_Height: 0 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 202 + m_Metrics: + m_Width: 0 + m_Height: 0 + m_HorizontalBearingX: 0 + m_HorizontalBearingY: 0 + m_HorizontalAdvance: 7.1875 + m_GlyphRect: + m_X: 10 + m_Y: -9 + m_Width: 0 + m_Height: 0 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 203 + m_Metrics: + m_Width: 0 + m_Height: 0 + m_HorizontalBearingX: 0 + m_HorizontalBearingY: 0 + m_HorizontalAdvance: 0 + m_GlyphRect: + m_X: 10 + m_Y: -9 + m_Width: 0 + m_Height: 0 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 204 + m_Metrics: + m_Width: 3.5 + m_Height: 65.5 + m_HorizontalBearingX: -1.78125 + m_HorizontalBearingY: 54.0625 + m_HorizontalAdvance: 0 + m_GlyphRect: + m_X: 399 + m_Y: 488 + m_Width: 4 + m_Height: 66 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 205 + m_Metrics: + m_Width: 18.8125 + m_Height: 70.84375 + m_HorizontalBearingX: -9.40625 + m_HorizontalBearingY: 59.40625 + m_HorizontalAdvance: 0 + m_GlyphRect: + m_X: 228 + m_Y: 682 + m_Width: 19 + m_Height: 71 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 206 + m_Metrics: + m_Width: 20 + m_Height: 70.84375 + m_HorizontalBearingX: -1.75 + m_HorizontalBearingY: 59.40625 + m_HorizontalAdvance: 0 + m_GlyphRect: + m_X: 257 + m_Y: 772 + m_Width: 20 + m_Height: 71 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 207 + m_Metrics: + m_Width: 20 + m_Height: 70.84375 + m_HorizontalBearingX: -18.3125 + m_HorizontalBearingY: 59.40625 + m_HorizontalAdvance: 0 + m_GlyphRect: + m_X: 261 + m_Y: 862 + m_Width: 20 + m_Height: 71 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 208 + m_Metrics: + m_Width: 47.78125 + m_Height: 5.75 + m_HorizontalBearingX: 0 + m_HorizontalBearingY: 24.71875 + m_HorizontalAdvance: 47.84375 + m_GlyphRect: + m_X: 823 + m_Y: 775 + m_Width: 48 + m_Height: 6 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 209 + m_Metrics: + m_Width: 47.78125 + m_Height: 5.75 + m_HorizontalBearingX: 0 + m_HorizontalBearingY: 24.71875 + m_HorizontalAdvance: 47.84375 + m_GlyphRect: + m_X: 890 + m_Y: 778 + m_Width: 48 + m_Height: 6 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 210 + m_Metrics: + m_Width: 86 + m_Height: 5.75 + m_HorizontalBearingX: 0 + m_HorizontalBearingY: 24.71875 + m_HorizontalAdvance: 86 + m_GlyphRect: + m_X: 225 + m_Y: 264 + m_Width: 86 + m_Height: 6 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 211 + m_Metrics: + m_Width: 86 + m_Height: 5.75 + m_HorizontalBearingX: 0 + m_HorizontalBearingY: 24.71875 + m_HorizontalAdvance: 86 + m_GlyphRect: + m_X: 495 + m_Y: 89 + m_Width: 86 + m_Height: 6 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 212 + m_Metrics: + m_Width: 20.46875 + m_Height: 62.3125 + m_HorizontalBearingX: 7.5 + m_HorizontalBearingY: 62.34375 + m_HorizontalAdvance: 35.53125 + m_GlyphRect: + m_X: 560 + m_Y: 568 + m_Width: 20 + m_Height: 62 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 213 + m_Metrics: + m_Width: 50.09375 + m_Height: 14.5625 + m_HorizontalBearingX: -1.3125 + m_HorizontalBearingY: -3.65625 + m_HorizontalAdvance: 47.5 + m_GlyphRect: + m_X: 600 + m_Y: 392 + m_Width: 50 + m_Height: 15 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 214 + m_Metrics: + m_Width: 8.4375 + m_Height: 19.1875 + m_HorizontalBearingX: 5.3125 + m_HorizontalBearingY: 59.1875 + m_HorizontalAdvance: 19.09375 + m_GlyphRect: + m_X: 996 + m_Y: 878 + m_Width: 8 + m_Height: 19 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 215 + m_Metrics: + m_Width: 8.4375 + m_Height: 19.1875 + m_HorizontalBearingX: 5.3125 + m_HorizontalBearingY: 59.1875 + m_HorizontalAdvance: 19.09375 + m_GlyphRect: + m_X: 390 + m_Y: 416 + m_Width: 8 + m_Height: 19 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 216 + m_Metrics: + m_Width: 8.4375 + m_Height: 19.1875 + m_HorizontalBearingX: 5.3125 + m_HorizontalBearingY: 8.21875 + m_HorizontalAdvance: 19.09375 + m_GlyphRect: + m_X: 556 + m_Y: 988 + m_Width: 8 + m_Height: 19 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 217 + m_Metrics: + m_Width: 8.4375 + m_Height: 19.1875 + m_HorizontalBearingX: 5.28125 + m_HorizontalBearingY: 59.1875 + m_HorizontalAdvance: 19.09375 + m_GlyphRect: + m_X: 996 + m_Y: 917 + m_Width: 8 + m_Height: 19 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 218 + m_Metrics: + m_Width: 22.34375 + m_Height: 19.1875 + m_HorizontalBearingX: 3.125 + m_HorizontalBearingY: 59.1875 + m_HorizontalAdvance: 28.625 + m_GlyphRect: + m_X: 360 + m_Y: 377 + m_Width: 22 + m_Height: 19 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 219 + m_Metrics: + m_Width: 22.34375 + m_Height: 19.1875 + m_HorizontalBearingX: 3.125 + m_HorizontalBearingY: 59.1875 + m_HorizontalAdvance: 28.625 + m_GlyphRect: + m_X: 348 + m_Y: 416 + m_Width: 22 + m_Height: 19 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 220 + m_Metrics: + m_Width: 22.34375 + m_Height: 19.1875 + m_HorizontalBearingX: 3.125 + m_HorizontalBearingY: 8.21875 + m_HorizontalAdvance: 28.625 + m_GlyphRect: + m_X: 514 + m_Y: 988 + m_Width: 22 + m_Height: 19 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 221 + m_Metrics: + m_Width: 21.4375 + m_Height: 19.1875 + m_HorizontalBearingX: 3 + m_HorizontalBearingY: 59.1875 + m_HorizontalAdvance: 28.625 + m_GlyphRect: + m_X: 766 + m_Y: 964 + m_Width: 21 + m_Height: 19 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 222 + m_Metrics: + m_Width: 36.28125 + m_Height: 68.09375 + m_HorizontalBearingX: 5.78125 + m_HorizontalBearingY: 62.34375 + m_HorizontalAdvance: 47.84375 + m_GlyphRect: + m_X: 207 + m_Y: 485 + m_Width: 36 + m_Height: 68 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 223 + m_Metrics: + m_Width: 36.3125 + m_Height: 68.21875 + m_HorizontalBearingX: 5.6875 + m_HorizontalBearingY: 62.34375 + m_HorizontalAdvance: 47.84375 + m_GlyphRect: + m_X: 249 + m_Y: 396 + m_Width: 36 + m_Height: 68 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 224 + m_Metrics: + m_Width: 23.3125 + m_Height: 23.3125 + m_HorizontalBearingX: 3.375 + m_HorizontalBearingY: 40.15625 + m_HorizontalAdvance: 30.09375 + m_GlyphRect: + m_X: 305 + m_Y: 414 + m_Width: 23 + m_Height: 23 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 225 + m_Metrics: + m_Width: 62.625 + m_Height: 9.1875 + m_HorizontalBearingX: 11.65625 + m_HorizontalBearingY: 9.21875 + m_HorizontalAdvance: 86 + m_GlyphRect: + m_X: 330 + m_Y: 265 + m_Width: 63 + m_Height: 9 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 226 + m_Metrics: + m_Width: 20 + m_Height: 63.25 + m_HorizontalBearingX: -1.75 + m_HorizontalBearingY: 51.78125 + m_HorizontalAdvance: 0 + m_GlyphRect: + m_X: 560 + m_Y: 650 + m_Width: 20 + m_Height: 63 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 227 + m_Metrics: + m_Width: 20 + m_Height: 63.25 + m_HorizontalBearingX: -18.28125 + m_HorizontalBearingY: 51.78125 + m_HorizontalAdvance: 0 + m_GlyphRect: + m_X: 696 + m_Y: 651 + m_Width: 20 + m_Height: 63 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 228 + m_Metrics: + m_Width: 20 + m_Height: 70.71875 + m_HorizontalBearingX: -10 + m_HorizontalBearingY: 59.28125 + m_HorizontalAdvance: 0 + m_GlyphRect: + m_X: 266 + m_Y: 672 + m_Width: 20 + m_Height: 71 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 229 + m_Metrics: + m_Width: 20 + m_Height: 70.71875 + m_HorizontalBearingX: -10 + m_HorizontalBearingY: 59.28125 + m_HorizontalAdvance: 0 + m_GlyphRect: + m_X: 305 + m_Y: 657 + m_Width: 20 + m_Height: 71 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 230 + m_Metrics: + m_Width: 20 + m_Height: 70.71875 + m_HorizontalBearingX: -10 + m_HorizontalBearingY: 59.28125 + m_HorizontalAdvance: 0 + m_GlyphRect: + m_X: 296 + m_Y: 762 + m_Width: 20 + m_Height: 71 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 231 + m_Metrics: + m_Width: 0 + m_Height: 0 + m_HorizontalBearingX: 0 + m_HorizontalBearingY: 0 + m_HorizontalAdvance: 17.21875 + m_GlyphRect: + m_X: 10 + m_Y: -9 + m_Width: 0 + m_Height: 0 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 232 + m_Metrics: + m_Width: 81.34375 + m_Height: 60.125 + m_HorizontalBearingX: 2.28125 + m_HorizontalBearingY: 59.6875 + m_HorizontalAdvance: 86 + m_GlyphRect: + m_X: 103 + m_Y: 11 + m_Width: 81 + m_Height: 60 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 233 + m_Metrics: + m_Width: 10.9375 + m_Height: 21.78125 + m_HorizontalBearingX: 3.5625 + m_HorizontalBearingY: 59.1875 + m_HorizontalAdvance: 16.125 + m_GlyphRect: + m_X: 908 + m_Y: 861 + m_Width: 11 + m_Height: 22 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 234 + m_Metrics: + m_Width: 25.3125 + m_Height: 21.78125 + m_HorizontalBearingX: 3.5625 + m_HorizontalBearingY: 59.1875 + m_HorizontalAdvance: 30.4375 + m_GlyphRect: + m_X: 315 + m_Y: 372 + m_Width: 25 + m_Height: 22 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 235 + m_Metrics: + m_Width: 34.25 + m_Height: 21.78125 + m_HorizontalBearingX: -3.875 + m_HorizontalBearingY: 59.1875 + m_HorizontalAdvance: 30.4375 + m_GlyphRect: + m_X: 459 + m_Y: 988 + m_Width: 34 + m_Height: 22 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 236 + m_Metrics: + m_Width: 21.21875 + m_Height: 33.5625 + m_HorizontalBearingX: 3.6875 + m_HorizontalBearingY: 39.5 + m_HorizontalAdvance: 28.625 + m_GlyphRect: + m_X: 955 + m_Y: 877 + m_Width: 21 + m_Height: 34 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 237 + m_Metrics: + m_Width: 21.1875 + m_Height: 33.5625 + m_HorizontalBearingX: 3.71875 + m_HorizontalBearingY: 39.5 + m_HorizontalAdvance: 28.625 + m_GlyphRect: + m_X: 956 + m_Y: 956 + m_Width: 21 + m_Height: 34 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 238 + m_Metrics: + m_Width: 27.46875 + m_Height: 59.15625 + m_HorizontalBearingX: 7.75 + m_HorizontalBearingY: 59.1875 + m_HorizontalAdvance: 43 + m_GlyphRect: + m_X: 749 + m_Y: 731 + m_Width: 27 + m_Height: 59 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 239 + m_Metrics: + m_Width: 34.0625 + m_Height: 4.90625 + m_HorizontalBearingX: -2.6875 + m_HorizontalBearingY: 68.03125 + m_HorizontalAdvance: 28.625 + m_GlyphRect: + m_X: 969 + m_Y: 853 + m_Width: 34 + m_Height: 5 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 240 + m_Metrics: + m_Width: 43.09375 + m_Height: 59.15625 + m_HorizontalBearingX: -17.46875 + m_HorizontalBearingY: 59.1875 + m_HorizontalAdvance: 14.375 + m_GlyphRect: + m_X: 600 + m_Y: 507 + m_Width: 43 + m_Height: 59 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 241 + m_Metrics: + m_Width: 8.1875 + m_Height: 62.3125 + m_HorizontalBearingX: 7.84375 + m_HorizontalBearingY: 62.34375 + m_HorizontalAdvance: 23.90625 + m_GlyphRect: + m_X: 738 + m_Y: 898 + m_Width: 8 + m_Height: 62 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 242 + m_Metrics: + m_Width: 20 + m_Height: 70.71875 + m_HorizontalBearingX: -10 + m_HorizontalBearingY: 59.28125 + m_HorizontalAdvance: 0 + m_GlyphRect: + m_X: 300 + m_Y: 852 + m_Width: 20 + m_Height: 71 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 243 + m_Metrics: + m_Width: 20 + m_Height: 70.71875 + m_HorizontalBearingX: -10 + m_HorizontalBearingY: 59.28125 + m_HorizontalAdvance: 0 + m_GlyphRect: + m_X: 321 + m_Y: 488 + m_Width: 20 + m_Height: 71 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 244 + m_Metrics: + m_Width: 20.15625 + m_Height: 70.71875 + m_HorizontalBearingX: -10.09375 + m_HorizontalBearingY: 59.28125 + m_HorizontalAdvance: 0 + m_GlyphRect: + m_X: 281 + m_Y: 567 + m_Width: 20 + m_Height: 71 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 245 + m_Metrics: + m_Width: 20.15625 + m_Height: 71 + m_HorizontalBearingX: -10.09375 + m_HorizontalBearingY: 59.5625 + m_HorizontalAdvance: 0 + m_GlyphRect: + m_X: 993 + m_Y: 424 + m_Width: 20 + m_Height: 71 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 246 + m_Metrics: + m_Width: 20.0625 + m_Height: 70.84375 + m_HorizontalBearingX: -10.0625 + m_HorizontalBearingY: 59.40625 + m_HorizontalAdvance: 0 + m_GlyphRect: + m_X: 344 + m_Y: 657 + m_Width: 20 + m_Height: 71 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 247 + m_Metrics: + m_Width: 20 + m_Height: 70.71875 + m_HorizontalBearingX: -10 + m_HorizontalBearingY: 59.28125 + m_HorizontalAdvance: 0 + m_GlyphRect: + m_X: 360 + m_Y: 488 + m_Width: 20 + m_Height: 71 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 248 + m_Metrics: + m_Width: 45.9375 + m_Height: 60.90625 + m_HorizontalBearingX: 0.65625 + m_HorizontalBearingY: 60.0625 + m_HorizontalAdvance: 47.84375 + m_GlyphRect: + m_X: 800 + m_Y: 408 + m_Width: 46 + m_Height: 61 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 249 + m_Metrics: + m_Width: 68.40625 + m_Height: 32.53125 + m_HorizontalBearingX: 7.875 + m_HorizontalBearingY: 59.1875 + m_HorizontalAdvance: 86 + m_GlyphRect: + m_X: 481 + m_Y: 114 + m_Width: 68 + m_Height: 33 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 250 + m_Metrics: + m_Width: 51.4375 + m_Height: 51.4375 + m_HorizontalBearingX: 0.25 + m_HorizontalBearingY: 51.46875 + m_HorizontalAdvance: 51.9375 + m_GlyphRect: + m_X: 737 + m_Y: 252 + m_Width: 51 + m_Height: 51 + m_Scale: 1 + m_AtlasIndex: 0 + m_CharacterTable: + - m_ElementType: 1 + m_Unicode: 32 + m_GlyphIndex: 1 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 33 + m_GlyphIndex: 2 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 34 + m_GlyphIndex: 3 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 35 + m_GlyphIndex: 4 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 36 + m_GlyphIndex: 5 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 37 + m_GlyphIndex: 6 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 38 + m_GlyphIndex: 7 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 39 + m_GlyphIndex: 8 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 40 + m_GlyphIndex: 9 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 41 + m_GlyphIndex: 10 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 42 + m_GlyphIndex: 11 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 43 + m_GlyphIndex: 12 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 44 + m_GlyphIndex: 13 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 45 + m_GlyphIndex: 14 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 46 + m_GlyphIndex: 15 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 47 + m_GlyphIndex: 16 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 48 + m_GlyphIndex: 17 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 49 + m_GlyphIndex: 18 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 50 + m_GlyphIndex: 19 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 51 + m_GlyphIndex: 20 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 52 + m_GlyphIndex: 21 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 53 + m_GlyphIndex: 22 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 54 + m_GlyphIndex: 23 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 55 + m_GlyphIndex: 24 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 56 + m_GlyphIndex: 25 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 57 + m_GlyphIndex: 26 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 58 + m_GlyphIndex: 27 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 59 + m_GlyphIndex: 28 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 60 + m_GlyphIndex: 29 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 61 + m_GlyphIndex: 30 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 62 + m_GlyphIndex: 31 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 63 + m_GlyphIndex: 32 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 64 + m_GlyphIndex: 33 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 65 + m_GlyphIndex: 34 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 66 + m_GlyphIndex: 35 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 67 + m_GlyphIndex: 36 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 68 + m_GlyphIndex: 37 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 69 + m_GlyphIndex: 38 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 70 + m_GlyphIndex: 39 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 71 + m_GlyphIndex: 40 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 72 + m_GlyphIndex: 41 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 73 + m_GlyphIndex: 42 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 74 + m_GlyphIndex: 43 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 75 + m_GlyphIndex: 44 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 76 + m_GlyphIndex: 45 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 77 + m_GlyphIndex: 46 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 78 + m_GlyphIndex: 47 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 79 + m_GlyphIndex: 48 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 80 + m_GlyphIndex: 49 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 81 + m_GlyphIndex: 50 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 82 + m_GlyphIndex: 51 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 83 + m_GlyphIndex: 52 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 84 + m_GlyphIndex: 53 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 85 + m_GlyphIndex: 54 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 86 + m_GlyphIndex: 55 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 87 + m_GlyphIndex: 56 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 88 + m_GlyphIndex: 57 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 89 + m_GlyphIndex: 58 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 90 + m_GlyphIndex: 59 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 91 + m_GlyphIndex: 60 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 92 + m_GlyphIndex: 61 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 93 + m_GlyphIndex: 62 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 94 + m_GlyphIndex: 63 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 95 + m_GlyphIndex: 64 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 96 + m_GlyphIndex: 65 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 97 + m_GlyphIndex: 66 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 98 + m_GlyphIndex: 67 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 99 + m_GlyphIndex: 68 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 100 + m_GlyphIndex: 69 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 101 + m_GlyphIndex: 70 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 102 + m_GlyphIndex: 71 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 103 + m_GlyphIndex: 72 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 104 + m_GlyphIndex: 73 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 105 + m_GlyphIndex: 74 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 106 + m_GlyphIndex: 75 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 107 + m_GlyphIndex: 76 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 108 + m_GlyphIndex: 77 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 109 + m_GlyphIndex: 78 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 110 + m_GlyphIndex: 79 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 111 + m_GlyphIndex: 80 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 112 + m_GlyphIndex: 81 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 113 + m_GlyphIndex: 82 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 114 + m_GlyphIndex: 83 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 115 + m_GlyphIndex: 84 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 116 + m_GlyphIndex: 85 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 117 + m_GlyphIndex: 86 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 118 + m_GlyphIndex: 87 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 119 + m_GlyphIndex: 88 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 120 + m_GlyphIndex: 89 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 121 + m_GlyphIndex: 90 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 122 + m_GlyphIndex: 91 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 123 + m_GlyphIndex: 92 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 124 + m_GlyphIndex: 93 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 125 + m_GlyphIndex: 94 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 126 + m_GlyphIndex: 95 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 160 + m_GlyphIndex: 96 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 161 + m_GlyphIndex: 97 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 162 + m_GlyphIndex: 98 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 163 + m_GlyphIndex: 99 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 164 + m_GlyphIndex: 100 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 165 + m_GlyphIndex: 101 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 166 + m_GlyphIndex: 102 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 167 + m_GlyphIndex: 103 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 168 + m_GlyphIndex: 104 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 169 + m_GlyphIndex: 105 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 170 + m_GlyphIndex: 106 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 171 + m_GlyphIndex: 107 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 172 + m_GlyphIndex: 108 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 173 + m_GlyphIndex: 109 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 174 + m_GlyphIndex: 110 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 175 + m_GlyphIndex: 111 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 176 + m_GlyphIndex: 112 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 177 + m_GlyphIndex: 113 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 178 + m_GlyphIndex: 114 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 179 + m_GlyphIndex: 115 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 180 + m_GlyphIndex: 116 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 181 + m_GlyphIndex: 117 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 182 + m_GlyphIndex: 118 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 183 + m_GlyphIndex: 119 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 184 + m_GlyphIndex: 120 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 185 + m_GlyphIndex: 121 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 186 + m_GlyphIndex: 122 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 187 + m_GlyphIndex: 123 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 188 + m_GlyphIndex: 124 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 189 + m_GlyphIndex: 125 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 190 + m_GlyphIndex: 126 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 191 + m_GlyphIndex: 127 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 192 + m_GlyphIndex: 128 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 193 + m_GlyphIndex: 129 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 194 + m_GlyphIndex: 130 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 195 + m_GlyphIndex: 131 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 196 + m_GlyphIndex: 132 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 197 + m_GlyphIndex: 133 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 198 + m_GlyphIndex: 134 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 199 + m_GlyphIndex: 135 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 200 + m_GlyphIndex: 136 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 201 + m_GlyphIndex: 137 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 202 + m_GlyphIndex: 138 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 203 + m_GlyphIndex: 139 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 204 + m_GlyphIndex: 140 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 205 + m_GlyphIndex: 141 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 206 + m_GlyphIndex: 142 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 207 + m_GlyphIndex: 143 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 208 + m_GlyphIndex: 144 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 209 + m_GlyphIndex: 145 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 210 + m_GlyphIndex: 146 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 211 + m_GlyphIndex: 147 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 212 + m_GlyphIndex: 148 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 213 + m_GlyphIndex: 149 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 214 + m_GlyphIndex: 150 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 215 + m_GlyphIndex: 151 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 216 + m_GlyphIndex: 152 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 217 + m_GlyphIndex: 153 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 218 + m_GlyphIndex: 154 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 219 + m_GlyphIndex: 155 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 220 + m_GlyphIndex: 156 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 221 + m_GlyphIndex: 157 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 222 + m_GlyphIndex: 158 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 223 + m_GlyphIndex: 159 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 224 + m_GlyphIndex: 160 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 225 + m_GlyphIndex: 161 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 226 + m_GlyphIndex: 162 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 227 + m_GlyphIndex: 163 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 228 + m_GlyphIndex: 164 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 229 + m_GlyphIndex: 165 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 230 + m_GlyphIndex: 166 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 231 + m_GlyphIndex: 167 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 232 + m_GlyphIndex: 168 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 233 + m_GlyphIndex: 169 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 234 + m_GlyphIndex: 170 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 235 + m_GlyphIndex: 171 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 236 + m_GlyphIndex: 172 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 237 + m_GlyphIndex: 173 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 238 + m_GlyphIndex: 174 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 239 + m_GlyphIndex: 175 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 240 + m_GlyphIndex: 176 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 241 + m_GlyphIndex: 177 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 242 + m_GlyphIndex: 178 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 243 + m_GlyphIndex: 179 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 244 + m_GlyphIndex: 180 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 245 + m_GlyphIndex: 181 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 246 + m_GlyphIndex: 182 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 247 + m_GlyphIndex: 183 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 248 + m_GlyphIndex: 184 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 249 + m_GlyphIndex: 185 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 250 + m_GlyphIndex: 186 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 251 + m_GlyphIndex: 187 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 252 + m_GlyphIndex: 188 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 253 + m_GlyphIndex: 189 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 254 + m_GlyphIndex: 190 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 255 + m_GlyphIndex: 191 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 8192 + m_GlyphIndex: 192 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 8193 + m_GlyphIndex: 193 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 8194 + m_GlyphIndex: 194 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 8195 + m_GlyphIndex: 195 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 8196 + m_GlyphIndex: 196 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 8197 + m_GlyphIndex: 197 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 8198 + m_GlyphIndex: 198 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 8199 + m_GlyphIndex: 199 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 8200 + m_GlyphIndex: 200 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 8201 + m_GlyphIndex: 201 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 8202 + m_GlyphIndex: 202 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 8203 + m_GlyphIndex: 203 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 8204 + m_GlyphIndex: 204 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 8205 + m_GlyphIndex: 205 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 8206 + m_GlyphIndex: 206 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 8207 + m_GlyphIndex: 207 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 8210 + m_GlyphIndex: 208 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 8211 + m_GlyphIndex: 209 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 8212 + m_GlyphIndex: 210 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 8213 + m_GlyphIndex: 211 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 8214 + m_GlyphIndex: 212 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 8215 + m_GlyphIndex: 213 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 8216 + m_GlyphIndex: 214 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 8217 + m_GlyphIndex: 215 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 8218 + m_GlyphIndex: 216 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 8219 + m_GlyphIndex: 217 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 8220 + m_GlyphIndex: 218 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 8221 + m_GlyphIndex: 219 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 8222 + m_GlyphIndex: 220 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 8223 + m_GlyphIndex: 221 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 8224 + m_GlyphIndex: 222 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 8225 + m_GlyphIndex: 223 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 8226 + m_GlyphIndex: 224 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 8230 + m_GlyphIndex: 225 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 8234 + m_GlyphIndex: 226 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 8235 + m_GlyphIndex: 227 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 8236 + m_GlyphIndex: 228 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 8237 + m_GlyphIndex: 229 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 8238 + m_GlyphIndex: 230 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 8239 + m_GlyphIndex: 231 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 8240 + m_GlyphIndex: 232 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 8242 + m_GlyphIndex: 233 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 8243 + m_GlyphIndex: 234 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 8244 + m_GlyphIndex: 235 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 8249 + m_GlyphIndex: 236 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 8250 + m_GlyphIndex: 237 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 8252 + m_GlyphIndex: 238 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 8254 + m_GlyphIndex: 239 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 8260 + m_GlyphIndex: 240 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 8286 + m_GlyphIndex: 241 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 8298 + m_GlyphIndex: 242 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 8299 + m_GlyphIndex: 243 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 8300 + m_GlyphIndex: 244 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 8301 + m_GlyphIndex: 245 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 8302 + m_GlyphIndex: 246 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 8303 + m_GlyphIndex: 247 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 8364 + m_GlyphIndex: 248 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 8482 + m_GlyphIndex: 249 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 9633 + m_GlyphIndex: 250 + m_Scale: 1 + m_AtlasTextures: + - {fileID: 2846298} + m_AtlasTextureIndex: 0 + m_UsedGlyphRects: [] + m_FreeGlyphRects: [] + m_fontInfo: + Name: Liberation Sans + PointSize: 86 + Scale: 1 + CharacterCount: 250 + LineHeight: 98.90625 + Baseline: 0 + Ascender: 77.84375 + CapHeight: 59.1875 + Descender: -18.21875 + CenterLine: 0 + SuperscriptOffset: 77.84375 + SubscriptOffset: -12.261719 + SubSize: 0.5 + Underline: -12.261719 + UnderlineThickness: 6.298828 + strikethrough: 23.675 + strikethroughThickness: 0 + TabWidth: 239.0625 + Padding: 9 + AtlasWidth: 1024 + AtlasHeight: 1024 + atlas: {fileID: 2846298} + m_AtlasWidth: 1024 + m_AtlasHeight: 1024 + m_AtlasPadding: 9 + m_AtlasRenderMode: 32810 + m_glyphInfoList: + - id: 32 + x: 10 + y: 1033 + width: 23.90625 + height: 96.0625 + xOffset: 0 + yOffset: 77.84375 + xAdvance: 23.90625 + scale: 1 + - id: 33 + x: 1004 + y: 619 + width: 8.3125 + height: 59.15625 + xOffset: 7.75 + yOffset: 59.1875 + xAdvance: 23.90625 + scale: 1 + - id: 34 + x: 336 + y: 10 + width: 23.21875 + height: 18.59375 + xOffset: 3.625 + yOffset: 59.1875 + xAdvance: 30.53125 + scale: 1 + - id: 35 + x: 426 + y: 611 + width: 47.03125 + height: 58.84375 + xOffset: 0.375 + yOffset: 58.84375 + xAdvance: 47.84375 + scale: 1 + - id: 36 + x: 164 + y: 361 + width: 45.5 + height: 69.625 + xOffset: 0.90625 + yOffset: 63.6875 + xAdvance: 47.84375 + scale: 1 + - id: 37 + x: 405 + y: 953 + width: 70.34375 + height: 60.15625 + xOffset: 3.0625 + yOffset: 59.6875 + xAdvance: 76.46875 + scale: 1 + - id: 38 + x: 383 + y: 779 + width: 53 + height: 60.34375 + xOffset: 3 + yOffset: 59.53125 + xAdvance: 57.375 + scale: 1 + - id: 39 + x: 796 + y: 234 + width: 7.71875 + height: 18.59375 + xOffset: 4.34375 + yOffset: 59.1875 + xAdvance: 16.40625 + scale: 1 + - id: 40 + x: 146 + y: 738 + width: 22.78125 + height: 80.125 + xOffset: 5.3125 + yOffset: 62.34375 + xAdvance: 28.625 + scale: 1 + - id: 41 + x: 165 + y: 450 + width: 22.8125 + height: 80.125 + xOffset: 0.5 + yOffset: 62.34375 + xAdvance: 28.625 + scale: 1 + - id: 42 + x: 807 + y: 42 + width: 30.75 + height: 30.1875 + xOffset: 1.375 + yOffset: 59.1875 + xAdvance: 33.46875 + scale: 1 + - id: 43 + x: 725 + y: 422 + width: 41.78125 + height: 42.0625 + xOffset: 4.1875 + yOffset: 49.65625 + xAdvance: 50.21875 + scale: 1 + - id: 44 + x: 569 + y: 889 + width: 8.4375 + height: 20.1875 + xOffset: 7.71875 + yOffset: 9.21875 + xAdvance: 23.90625 + scale: 1 + - id: 45 + x: 764 + y: 15 + width: 21 + height: 6.71875 + xOffset: 3.8125 + yOffset: 26.21875 + xAdvance: 28.625 + scale: 1 + - id: 46 + x: 558 + y: 710 + width: 8.1875 + height: 9.1875 + xOffset: 7.84375 + yOffset: 9.21875 + xAdvance: 23.90625 + scale: 1 + - id: 47 + x: 383 + y: 667 + width: 23.90625 + height: 63.15625 + xOffset: 0 + yOffset: 62.34375 + xAdvance: 23.90625 + scale: 1 + - id: 48 + x: 787 + y: 475 + width: 41.09375 + height: 60.90625 + xOffset: 3.34375 + yOffset: 60.0625 + xAdvance: 47.84375 + scale: 1 + - id: 49 + x: 321 + y: 386 + width: 37.0625 + height: 59.15625 + xOffset: 6.53125 + yOffset: 59.1875 + xAdvance: 47.84375 + scale: 1 + - id: 50 + x: 962 + y: 298 + width: 39.1875 + height: 60.0625 + xOffset: 4.3125 + yOffset: 60.0625 + xAdvance: 47.84375 + scale: 1 + - id: 51 + x: 908 + y: 380 + width: 40.78125 + height: 60.90625 + xOffset: 3.25 + yOffset: 60.0625 + xAdvance: 47.84375 + scale: 1 + - id: 52 + x: 378 + y: 386 + width: 43.34375 + height: 59.15625 + xOffset: 1.96875 + yOffset: 59.1875 + xAdvance: 47.84375 + scale: 1 + - id: 53 + x: 441 + y: 386 + width: 40.78125 + height: 60 + xOffset: 3.4375 + yOffset: 59.1875 + xAdvance: 47.84375 + scale: 1 + - id: 54 + x: 339 + y: 48 + width: 39.6875 + height: 60.90625 + xOffset: 4.34375 + yOffset: 60.0625 + xAdvance: 47.84375 + scale: 1 + - id: 55 + x: 501 + y: 386 + width: 39.09375 + height: 59.15625 + xOffset: 4.40625 + yOffset: 59.1875 + xAdvance: 47.84375 + scale: 1 + - id: 56 + x: 968 + y: 378 + width: 40.34375 + height: 60.90625 + xOffset: 3.71875 + yOffset: 60.0625 + xAdvance: 47.84375 + scale: 1 + - id: 57 + x: 398 + y: 54 + width: 39.71875 + height: 60.90625 + xOffset: 4.03125 + yOffset: 60.0625 + xAdvance: 47.84375 + scale: 1 + - id: 58 + x: 941 + y: 175 + width: 8.1875 + height: 45.4375 + xOffset: 7.84375 + yOffset: 45.4375 + xAdvance: 23.90625 + scale: 1 + - id: 59 + x: 800 + y: 158 + width: 8.4375 + height: 56.4375 + xOffset: 7.71875 + yOffset: 45.4375 + xAdvance: 23.90625 + scale: 1 + - id: 60 + x: 422 + y: 465 + width: 41.78125 + height: 43.65625 + xOffset: 4.21875 + yOffset: 50.15625 + xAdvance: 50.21875 + scale: 1 + - id: 61 + x: 847 + y: 413 + width: 41.78125 + height: 27.71875 + xOffset: 4.1875 + yOffset: 42.1875 + xAdvance: 50.21875 + scale: 1 + - id: 62 + x: 483 + y: 465 + width: 41.78125 + height: 43.65625 + xOffset: 4.21875 + yOffset: 50.15625 + xAdvance: 50.21875 + scale: 1 + - id: 63 + x: 848 + y: 460 + width: 41.09375 + height: 60.0625 + xOffset: 3.5 + yOffset: 60.0625 + xAdvance: 47.84375 + scale: 1 + - id: 64 + x: 10 + y: 939 + width: 73.125 + height: 74.1875 + xOffset: 6.75 + yOffset: 62.34375 + xAdvance: 87.3125 + scale: 1 + - id: 65 + x: 751 + y: 871 + width: 57.03125 + height: 59.15625 + xOffset: 0.15625 + yOffset: 59.1875 + xAdvance: 57.375 + scale: 1 + - id: 66 + x: 939 + y: 619 + width: 45.75 + height: 59.15625 + xOffset: 7.03125 + yOffset: 59.1875 + xAdvance: 57.375 + scale: 1 + - id: 67 + x: 825 + y: 782 + width: 54.46875 + height: 60.90625 + xOffset: 4.34375 + yOffset: 60.0625 + xAdvance: 62.09375 + scale: 1 + - id: 68 + x: 808 + y: 703 + width: 50.9375 + height: 59.15625 + xOffset: 7.03125 + yOffset: 59.1875 + xAdvance: 62.09375 + scale: 1 + - id: 69 + x: 492 + y: 707 + width: 46.59375 + height: 59.15625 + xOffset: 7.03125 + yOffset: 59.1875 + xAdvance: 57.375 + scale: 1 + - id: 70 + x: 725 + y: 484 + width: 42.03125 + height: 59.15625 + xOffset: 7.03125 + yOffset: 59.1875 + xAdvance: 52.53125 + scale: 1 + - id: 71 + x: 593 + y: 809 + width: 56.15625 + height: 60.90625 + xOffset: 4.3125 + yOffset: 60.0625 + xAdvance: 66.90625 + scale: 1 + - id: 72 + x: 947 + y: 698 + width: 48.03125 + height: 59.15625 + xOffset: 7.03125 + yOffset: 59.1875 + xAdvance: 62.09375 + scale: 1 + - id: 73 + x: 571 + y: 56 + width: 8.03125 + height: 59.15625 + xOffset: 7.90625 + yOffset: 59.1875 + xAdvance: 23.90625 + scale: 1 + - id: 74 + x: 655 + y: 66 + width: 35.28125 + height: 60 + xOffset: 1.34375 + yOffset: 59.1875 + xAdvance: 43 + scale: 1 + - id: 75 + x: 682 + y: 875 + width: 49.34375 + height: 59.15625 + xOffset: 7.03125 + yOffset: 59.1875 + xAdvance: 57.375 + scale: 1 + - id: 76 + x: 514 + y: 56 + width: 37.90625 + height: 59.15625 + xOffset: 7.03125 + yOffset: 59.1875 + xAdvance: 47.84375 + scale: 1 + - id: 77 + x: 828 + y: 862 + width: 57.53125 + height: 59.15625 + xOffset: 7.03125 + yOffset: 59.1875 + xAdvance: 71.625 + scale: 1 + - id: 78 + x: 315 + y: 671 + width: 48.03125 + height: 59.15625 + xOffset: 7.03125 + yOffset: 59.1875 + xAdvance: 62.09375 + scale: 1 + - id: 79 + x: 305 + y: 779 + width: 58.71875 + height: 60.90625 + xOffset: 4.0625 + yOffset: 60.0625 + xAdvance: 66.90625 + scale: 1 + - id: 80 + x: 670 + y: 572 + width: 45.75 + height: 59.15625 + xOffset: 7.03125 + yOffset: 59.1875 + xAdvance: 57.375 + scale: 1 + - id: 81 + x: 10 + y: 843 + width: 58.71875 + height: 76.3125 + xOffset: 4.0625 + yOffset: 60.0625 + xAdvance: 66.90625 + scale: 1 + - id: 82 + x: 666 + y: 730 + width: 51.0625 + height: 59.15625 + xOffset: 7.03125 + yOffset: 59.1875 + xAdvance: 62.09375 + scale: 1 + - id: 83 + x: 878 + y: 701 + width: 49.5 + height: 60.90625 + xOffset: 3.875 + yOffset: 60.0625 + xAdvance: 57.375 + scale: 1 + - id: 84 + x: 600 + y: 651 + width: 48.625 + height: 59.15625 + xOffset: 1.90625 + yOffset: 59.1875 + xAdvance: 52.53125 + scale: 1 + - id: 85 + x: 668 + y: 651 + width: 48.84375 + height: 60 + xOffset: 6.625 + yOffset: 59.1875 + xAdvance: 62.09375 + scale: 1 + - id: 86 + x: 749 + y: 792 + width: 56.59375 + height: 59.15625 + xOffset: 0.375 + yOffset: 59.1875 + xAdvance: 57.375 + scale: 1 + - id: 87 + x: 305 + y: 954 + width: 80.5 + height: 59.15625 + xOffset: 0.375 + yOffset: 59.1875 + xAdvance: 81.15625 + scale: 1 + - id: 88 + x: 899 + y: 781 + width: 53.625 + height: 59.15625 + xOffset: 1.90625 + yOffset: 59.1875 + xAdvance: 57.375 + scale: 1 + - id: 89 + x: 593 + y: 730 + width: 53.59375 + height: 59.15625 + xOffset: 1.875 + yOffset: 59.1875 + xAdvance: 57.375 + scale: 1 + - id: 90 + x: 872 + y: 622 + width: 47.125 + height: 59.15625 + xOffset: 2.71875 + yOffset: 59.1875 + xAdvance: 52.53125 + scale: 1 + - id: 91 + x: 188 + y: 758 + width: 17.09375 + height: 80.15625 + xOffset: 6.125 + yOffset: 62.34375 + xAdvance: 23.90625 + scale: 1 + - id: 92 + x: 557 + y: 624 + width: 23.90625 + height: 63.15625 + xOffset: 0 + yOffset: 62.34375 + xAdvance: 23.90625 + scale: 1 + - id: 93 + x: 455 + y: 773 + width: 17.0625 + height: 80.15625 + xOffset: 0.65625 + yOffset: 62.34375 + xAdvance: 23.90625 + scale: 1 + - id: 94 + x: 964 + y: 248 + width: 39.53125 + height: 30.90625 + xOffset: 0.40625 + yOffset: 59.1875 + xAdvance: 40.34375 + scale: 1 + - id: 95 + x: 894 + y: 265 + width: 50.09375 + height: 5.46875 + xOffset: -1.3125 + yOffset: -11.625 + xAdvance: 47.84375 + scale: 1 + - id: 96 + x: 807 + y: 10 + width: 17.8125 + height: 12.875 + xOffset: 4.4375 + yOffset: 63.34375 + xAdvance: 28.625 + scale: 1 + - id: 97 + x: 99 + y: 12 + width: 44.1875 + height: 47.125 + xOffset: 3.625 + yOffset: 46.28125 + xAdvance: 47.84375 + scale: 1 + - id: 98 + x: 456 + y: 135 + width: 38.6875 + height: 63.15625 + xOffset: 5.53125 + yOffset: 62.34375 + xAdvance: 47.84375 + scale: 1 + - id: 99 + x: 163 + y: 12 + width: 37.0625 + height: 47.125 + xOffset: 3.625 + yOffset: 46.28125 + xAdvance: 43 + scale: 1 + - id: 100 + x: 485 + y: 528 + width: 38.65625 + height: 63.15625 + xOffset: 3.59375 + yOffset: 62.34375 + xAdvance: 47.84375 + scale: 1 + - id: 101 + x: 220 + y: 12 + width: 40.34375 + height: 47.125 + xOffset: 3.625 + yOffset: 46.28125 + xAdvance: 47.84375 + scale: 1 + - id: 102 + x: 632 + y: 145 + width: 22.8125 + height: 62.21875 + xOffset: 1.1875 + yOffset: 62.25 + xAdvance: 23.90625 + scale: 1 + - id: 103 + x: 514 + y: 135 + width: 38.65625 + height: 64 + xOffset: 3.59375 + yOffset: 46.15625 + xAdvance: 47.84375 + scale: 1 + - id: 104 + x: 674 + y: 145 + width: 36.28125 + height: 62.3125 + xOffset: 5.9375 + yOffset: 62.34375 + xAdvance: 47.84375 + scale: 1 + - id: 105 + x: 722 + y: 228 + width: 7.5625 + height: 62.3125 + xOffset: 5.75 + yOffset: 62.34375 + xAdvance: 19.09375 + scale: 1 + - id: 106 + x: 558 + y: 777 + width: 15.40625 + height: 80.15625 + xOffset: -2.125 + yOffset: 62.34375 + xAdvance: 19.09375 + scale: 1 + - id: 107 + x: 543 + y: 542 + width: 37.34375 + height: 62.3125 + xOffset: 5.78125 + yOffset: 62.34375 + xAdvance: 43 + scale: 1 + - id: 108 + x: 730 + y: 146 + width: 7.5625 + height: 62.3125 + xOffset: 5.78125 + yOffset: 62.34375 + xAdvance: 19.09375 + scale: 1 + - id: 109 + x: 669 + y: 809 + width: 60.25 + height: 46.28125 + xOffset: 5.6875 + yOffset: 46.28125 + xAdvance: 71.625 + scale: 1 + - id: 110 + x: 544 + y: 476 + width: 36.53125 + height: 46.28125 + xOffset: 5.6875 + yOffset: 46.28125 + xAdvance: 47.84375 + scale: 1 + - id: 111 + x: 902 + y: 313 + width: 40.59375 + height: 47.125 + xOffset: 3.59375 + yOffset: 46.28125 + xAdvance: 47.84375 + scale: 1 + - id: 112 + x: 263 + y: 476 + width: 38.6875 + height: 64.0625 + xOffset: 5.53125 + yOffset: 46.25 + xAdvance: 47.84375 + scale: 1 + - id: 113 + x: 335 + y: 212 + width: 38.71875 + height: 64.125 + xOffset: 3.59375 + yOffset: 46.28125 + xAdvance: 47.84375 + scale: 1 + - id: 114 + x: 796 + y: 272 + width: 21.5 + height: 46.28125 + xOffset: 5.6875 + yOffset: 46.28125 + xAdvance: 28.625 + scale: 1 + - id: 115 + x: 837 + y: 268 + width: 37.5 + height: 47 + xOffset: 2.375 + yOffset: 46.15625 + xAdvance: 43 + scale: 1 + - id: 116 + x: 766 + y: 80 + width: 21.9375 + height: 56.25 + xOffset: 1.28125 + yOffset: 55.625 + xAdvance: 23.90625 + scale: 1 + - id: 117 + x: 807 + y: 92 + width: 36.53125 + height: 46.28125 + xOffset: 5.5625 + yOffset: 45.4375 + xAdvance: 47.84375 + scale: 1 + - id: 118 + x: 600 + y: 393 + width: 42.4375 + height: 45.4375 + xOffset: 0.28125 + yOffset: 45.4375 + xAdvance: 43 + scale: 1 + - id: 119 + x: 600 + y: 889 + width: 62.4375 + height: 45.4375 + xOffset: -0.15625 + yOffset: 45.4375 + xAdvance: 62.09375 + scale: 1 + - id: 120 + x: 662 + y: 393 + width: 41.09375 + height: 45.4375 + xOffset: 0.9375 + yOffset: 45.4375 + xAdvance: 43 + scale: 1 + - id: 121 + x: 663 + y: 489 + width: 42.625 + height: 63.28125 + xOffset: 0.1875 + yOffset: 45.4375 + xAdvance: 43 + scale: 1 + - id: 122 + x: 828 + y: 178 + width: 35.21875 + height: 45.4375 + xOffset: 3.46875 + yOffset: 45.4375 + xAdvance: 43 + scale: 1 + - id: 123 + x: 987 + y: 933 + width: 25.78125 + height: 80.15625 + xOffset: 1.40625 + yOffset: 62.34375 + xAdvance: 28.71875 + scale: 1 + - id: 124 + x: 229 + y: 371 + width: 6.96875 + height: 80.53125 + xOffset: 7.65625 + yOffset: 62.34375 + xAdvance: 22.34375 + scale: 1 + - id: 125 + x: 216 + y: 79 + width: 25.71875 + height: 80.15625 + xOffset: 1.40625 + yOffset: 62.34375 + xAdvance: 28.71875 + scale: 1 + - id: 126 + x: 663 + y: 459 + width: 42.5 + height: 10.65625 + xOffset: 3.84375 + yOffset: 33.90625 + xAdvance: 50.21875 + scale: 1 + - id: 160 + x: 10 + y: 1033 + width: 23.90625 + height: 96.0625 + xOffset: 0 + yOffset: 77.84375 + xAdvance: 23.90625 + scale: 1 + - id: 161 + x: 710 + y: 66 + width: 8.3125 + height: 59.15625 + xOffset: 10.15625 + yOffset: 45.4375 + xAdvance: 28.625 + scale: 1 + - id: 162 + x: 457 + y: 55 + width: 37.09375 + height: 60.46875 + xOffset: 5.65625 + yOffset: 59.1875 + xAdvance: 47.84375 + scale: 1 + - id: 163 + x: 600 + y: 537 + width: 43.9375 + height: 60.0625 + xOffset: 2.40625 + yOffset: 60.0625 + xAdvance: 47.84375 + scale: 1 + - id: 164 + x: 883 + y: 182 + width: 38.34375 + height: 38.40625 + xOffset: 4.71875 + yOffset: 47.84375 + xAdvance: 47.84375 + scale: 1 + - id: 165 + x: 736 + y: 642 + width: 48.0625 + height: 59.15625 + xOffset: -0.09375 + yOffset: 59.1875 + xAdvance: 47.84375 + scale: 1 + - id: 166 + x: 255 + y: 371 + width: 6.96875 + height: 80.53125 + xOffset: 7.65625 + yOffset: 62.34375 + xAdvance: 22.34375 + scale: 1 + - id: 167 + x: 191 + y: 559 + width: 38.15625 + height: 69.53125 + xOffset: 4.8125 + yOffset: 62.34375 + xAdvance: 47.84375 + scale: 1 + - id: 168 + x: 735 + y: 313 + width: 23.40625 + height: 7.71875 + xOffset: 1.875 + yOffset: 58.9375 + xAdvance: 28.625 + scale: 1 + - id: 169 + x: 401 + y: 873 + width: 60.71875 + height: 60.71875 + xOffset: 1.28125 + yOffset: 60.0625 + xAdvance: 63.375 + scale: 1 + - id: 170 + x: 982 + y: 881 + width: 31.03125 + height: 32.78125 + xOffset: 1.0625 + yOffset: 60.15625 + xAdvance: 31.84375 + scale: 1 + - id: 171 + x: 644 + y: 13 + width: 40.84375 + height: 33.5625 + xOffset: 3.46875 + yOffset: 39.5 + xAdvance: 47.84375 + scale: 1 + - id: 172 + x: 398 + y: 10 + width: 41.78125 + height: 24.09375 + xOffset: 4.1875 + yOffset: 31.6875 + xAdvance: 50.21875 + scale: 1 + - id: 173 + x: 955 + y: 87 + width: 21 + height: 6.71875 + xOffset: 3.8125 + yOffset: 26.21875 + xAdvance: 28.625 + scale: 1 + - id: 174 + x: 225 + y: 779 + width: 60.71875 + height: 60.71875 + xOffset: 1.28125 + yOffset: 60.0625 + xAdvance: 63.375 + scale: 1 + - id: 175 + x: 894 + y: 290 + width: 48.9375 + height: 3.9375 + xOffset: -0.71875 + yOffset: 64.9375 + xAdvance: 47.5 + scale: 1 + - id: 176 + x: 912 + y: 43 + width: 24.09375 + height: 23.9375 + xOffset: 5.09375 + yOffset: 60.0625 + xAdvance: 34.40625 + scale: 1 + - id: 177 + x: 970 + y: 458 + width: 41.78125 + height: 51.1875 + xOffset: 2.71875 + yOffset: 51.21875 + xAdvance: 47.1875 + scale: 1 + - id: 178 + x: 863 + y: 123 + width: 25.28125 + height: 36 + xOffset: 1.71875 + yOffset: 59.6875 + xAdvance: 28.625 + scale: 1 + - id: 179 + x: 599 + y: 10 + width: 25.84375 + height: 36.53125 + xOffset: 1.125 + yOffset: 59.6875 + xAdvance: 28.625 + scale: 1 + - id: 180 + x: 844 + y: 10 + width: 17.8125 + height: 12.875 + xOffset: 3 + yOffset: 63.34375 + xAdvance: 28.625 + scale: 1 + - id: 181 + x: 972 + y: 777 + width: 41.6875 + height: 63.28125 + xOffset: 5.875 + yOffset: 45.4375 + xAdvance: 49.5625 + scale: 1 + - id: 182 + x: 198 + y: 179 + width: 39.15625 + height: 70.25 + xOffset: 3.34375 + yOffset: 59.1875 + xAdvance: 46.1875 + scale: 1 + - id: 183 + x: 857 + y: 42 + width: 8.1875 + height: 9.25 + xOffset: 10.1875 + yOffset: 27.96875 + xAdvance: 28.625 + scale: 1 + - id: 184 + x: 558 + y: 739 + width: 15.28125 + height: 18.21875 + xOffset: 4.96875 + yOffset: 0 + xAdvance: 28.625 + scale: 1 + - id: 185 + x: 912 + y: 86 + width: 23.375 + height: 35.5 + xOffset: 3.34375 + yOffset: 59.1875 + xAdvance: 28.625 + scale: 1 + - id: 186 + x: 863 + y: 71 + width: 29.25 + height: 32.78125 + xOffset: 1.125 + yOffset: 60.15625 + xAdvance: 31.40625 + scale: 1 + - id: 187 + x: 704 + y: 11 + width: 40.84375 + height: 33.5625 + xOffset: 3.46875 + yOffset: 39.5 + xAdvance: 47.84375 + scale: 1 + - id: 188 + x: 582 + y: 954 + width: 65.40625 + height: 59.15625 + xOffset: 2.34375 + yOffset: 59.1875 + xAdvance: 71.71875 + scale: 1 + - id: 189 + x: 495 + y: 954 + width: 67.03125 + height: 59.15625 + xOffset: 2.34375 + yOffset: 59.1875 + xAdvance: 71.71875 + scale: 1 + - id: 190 + x: 667 + y: 954 + width: 64.71875 + height: 59.65625 + xOffset: 3.0625 + yOffset: 59.6875 + xAdvance: 71.71875 + scale: 1 + - id: 191 + x: 909 + y: 460 + width: 41.125 + height: 60.0625 + xOffset: 5.5 + yOffset: 45.4375 + xAdvance: 52.53125 + scale: 1 + - id: 192 + x: 910 + y: 939 + width: 57.03125 + height: 74.59375 + xOffset: 0.15625 + yOffset: 74.59375 + xAdvance: 57.375 + scale: 1 + - id: 193 + x: 88 + y: 453 + width: 57.03125 + height: 74.59375 + xOffset: 0.15625 + yOffset: 74.59375 + xAdvance: 57.375 + scale: 1 + - id: 194 + x: 10 + y: 367 + width: 57.03125 + height: 75.15625 + xOffset: 0.15625 + yOffset: 75.1875 + xAdvance: 57.375 + scale: 1 + - id: 195 + x: 10 + y: 272 + width: 57.03125 + height: 75.5 + xOffset: 0.15625 + yOffset: 75.53125 + xAdvance: 57.375 + scale: 1 + - id: 196 + x: 87 + y: 362 + width: 57.03125 + height: 71.96875 + xOffset: 0.15625 + yOffset: 72 + xAdvance: 57.375 + scale: 1 + - id: 197 + x: 10 + y: 177 + width: 57.03125 + height: 75.0625 + xOffset: 0.15625 + yOffset: 75.0625 + xAdvance: 57.375 + scale: 1 + - id: 198 + x: 204 + y: 954 + width: 81.3125 + height: 59.15625 + xOffset: 1 + yOffset: 59.1875 + xAdvance: 86 + scale: 1 + - id: 199 + x: 10 + y: 79 + width: 54.46875 + height: 78.28125 + xOffset: 4.34375 + yOffset: 60.0625 + xAdvance: 62.09375 + scale: 1 + - id: 200 + x: 84 + y: 79 + width: 46.59375 + height: 74.59375 + xOffset: 7.03125 + yOffset: 74.59375 + xAdvance: 57.375 + scale: 1 + - id: 201 + x: 150 + y: 79 + width: 46.59375 + height: 74.59375 + xOffset: 7.03125 + yOffset: 74.59375 + xAdvance: 57.375 + scale: 1 + - id: 202 + x: 88 + y: 547 + width: 46.59375 + height: 75.15625 + xOffset: 7.03125 + yOffset: 75.1875 + xAdvance: 57.375 + scale: 1 + - id: 203 + x: 492 + y: 786 + width: 46.59375 + height: 71.96875 + xOffset: 7.03125 + yOffset: 72 + xAdvance: 57.375 + scale: 1 + - id: 204 + x: 150 + y: 644 + width: 17.8125 + height: 74.59375 + xOffset: 0.375 + yOffset: 74.59375 + xAdvance: 23.90625 + scale: 1 + - id: 205 + x: 154 + y: 550 + width: 17.8125 + height: 74.59375 + xOffset: 5.9375 + yOffset: 74.59375 + xAdvance: 23.90625 + scale: 1 + - id: 206 + x: 354 + y: 859 + width: 27.8125 + height: 75.15625 + xOffset: -1.9375 + yOffset: 75.1875 + xAdvance: 23.90625 + scale: 1 + - id: 207 + x: 155 + y: 177 + width: 23.40625 + height: 71.96875 + xOffset: 0.28125 + yOffset: 72 + xAdvance: 23.90625 + scale: 1 + - id: 208 + x: 905 + y: 860 + width: 57.40625 + height: 59.15625 + xOffset: 0.5625 + yOffset: 59.1875 + xAdvance: 62.09375 + scale: 1 + - id: 209 + x: 87 + y: 173 + width: 48.03125 + height: 75.5 + xOffset: 7.03125 + yOffset: 75.53125 + xAdvance: 62.09375 + scale: 1 + - id: 210 + x: 10 + y: 652 + width: 58.71875 + height: 75.4375 + xOffset: 4.0625 + yOffset: 74.59375 + xAdvance: 66.90625 + scale: 1 + - id: 211 + x: 10 + y: 557 + width: 58.71875 + height: 75.4375 + xOffset: 4.0625 + yOffset: 74.59375 + xAdvance: 66.90625 + scale: 1 + - id: 212 + x: 10 + y: 462 + width: 58.71875 + height: 76 + xOffset: 4.0625 + yOffset: 75.1875 + xAdvance: 66.90625 + scale: 1 + - id: 213 + x: 10 + y: 747 + width: 58.71875 + height: 76.34375 + xOffset: 4.0625 + yOffset: 75.53125 + xAdvance: 66.90625 + scale: 1 + - id: 214 + x: 832 + y: 941 + width: 58.71875 + height: 72.8125 + xOffset: 4.0625 + yOffset: 72 + xAdvance: 66.90625 + scale: 1 + - id: 215 + x: 969 + y: 190 + width: 38.34375 + height: 38.40625 + xOffset: 5.9375 + yOffset: 47.84375 + xAdvance: 50.21875 + scale: 1 + - id: 216 + x: 751 + y: 950 + width: 61.03125 + height: 63.78125 + xOffset: 2.96875 + yOffset: 61.5625 + xAdvance: 66.90625 + scale: 1 + - id: 217 + x: 150 + y: 858 + width: 48.84375 + height: 75.4375 + xOffset: 6.625 + yOffset: 74.59375 + xAdvance: 62.09375 + scale: 1 + - id: 218 + x: 218 + y: 859 + width: 48.84375 + height: 75.4375 + xOffset: 6.625 + yOffset: 74.59375 + xAdvance: 62.09375 + scale: 1 + - id: 219 + x: 286 + y: 859 + width: 48.84375 + height: 76 + xOffset: 6.625 + yOffset: 75.1875 + xAdvance: 62.09375 + scale: 1 + - id: 220 + x: 160 + y: 269 + width: 48.84375 + height: 72.8125 + xOffset: 6.625 + yOffset: 72 + xAdvance: 62.09375 + scale: 1 + - id: 221 + x: 87 + y: 268 + width: 53.59375 + height: 74.59375 + xOffset: 1.875 + yOffset: 74.59375 + xAdvance: 57.375 + scale: 1 + - id: 222 + x: 735 + y: 563 + width: 45.75 + height: 59.15625 + xOffset: 7.03125 + yOffset: 59.1875 + xAdvance: 57.375 + scale: 1 + - id: 223 + x: 422 + y: 528 + width: 43.03125 + height: 63.15625 + xOffset: 5.9375 + yOffset: 62.34375 + xAdvance: 52.53125 + scale: 1 + - id: 224 + x: 251 + y: 670 + width: 44.1875 + height: 64.15625 + xOffset: 3.625 + yOffset: 63.34375 + xAdvance: 47.84375 + scale: 1 + - id: 225 + x: 426 + y: 689 + width: 44.1875 + height: 64.15625 + xOffset: 3.625 + yOffset: 63.34375 + xAdvance: 47.84375 + scale: 1 + - id: 226 + x: 493 + y: 624 + width: 44.1875 + height: 63.46875 + xOffset: 3.625 + yOffset: 62.625 + xAdvance: 47.84375 + scale: 1 + - id: 227 + x: 865 + y: 540 + width: 44.1875 + height: 62.53125 + xOffset: 3.625 + yOffset: 61.6875 + xAdvance: 47.84375 + scale: 1 + - id: 228 + x: 929 + y: 540 + width: 44.1875 + height: 59.75 + xOffset: 3.625 + yOffset: 58.9375 + xAdvance: 47.84375 + scale: 1 + - id: 229 + x: 187 + y: 648 + width: 44.1875 + height: 70.1875 + xOffset: 3.625 + yOffset: 69.34375 + xAdvance: 47.84375 + scale: 1 + - id: 230 + x: 10 + y: 12 + width: 69.875 + height: 47.125 + xOffset: 2.75 + yOffset: 46.28125 + xAdvance: 76.46875 + scale: 1 + - id: 231 + x: 339 + y: 128 + width: 37.0625 + height: 64.5 + xOffset: 3.625 + yOffset: 46.28125 + xAdvance: 43 + scale: 1 + - id: 232 + x: 384 + y: 302 + width: 40.34375 + height: 64.15625 + xOffset: 3.625 + yOffset: 63.34375 + xAdvance: 47.84375 + scale: 1 + - id: 233 + x: 393 + y: 218 + width: 40.34375 + height: 64.15625 + xOffset: 3.625 + yOffset: 63.34375 + xAdvance: 47.84375 + scale: 1 + - id: 234 + x: 599 + y: 310 + width: 40.34375 + height: 63.46875 + xOffset: 3.625 + yOffset: 62.625 + xAdvance: 47.84375 + scale: 1 + - id: 235 + x: 782 + y: 338 + width: 40.34375 + height: 59.75 + xOffset: 3.625 + yOffset: 58.9375 + xAdvance: 47.84375 + scale: 1 + - id: 236 + x: 629 + y: 227 + width: 17.8125 + height: 63.3125 + xOffset: 0.40625 + yOffset: 63.34375 + xAdvance: 23.90625 + scale: 1 + - id: 237 + x: 659 + y: 310 + width: 17.8125 + height: 63.3125 + xOffset: 5.65625 + yOffset: 63.34375 + xAdvance: 23.90625 + scale: 1 + - id: 238 + x: 735 + y: 340 + width: 27.8125 + height: 62.625 + xOffset: -1.875 + yOffset: 62.625 + xAdvance: 23.90625 + scale: 1 + - id: 239 + x: 757 + y: 156 + width: 23.40625 + height: 58.90625 + xOffset: 0.3125 + yOffset: 58.9375 + xAdvance: 23.90625 + scale: 1 + - id: 240 + x: 396 + y: 134 + width: 41 + height: 64.40625 + xOffset: 3.59375 + yOffset: 63.59375 + xAdvance: 47.84375 + scale: 1 + - id: 241 + x: 280 + y: 10 + width: 36.53125 + height: 61.6875 + xOffset: 5.84375 + yOffset: 61.6875 + xAdvance: 47.84375 + scale: 1 + - id: 242 + x: 444 + y: 302 + width: 40.59375 + height: 64.15625 + xOffset: 3.59375 + yOffset: 63.34375 + xAdvance: 47.84375 + scale: 1 + - id: 243 + x: 453 + y: 218 + width: 40.59375 + height: 64.15625 + xOffset: 3.59375 + yOffset: 63.34375 + xAdvance: 47.84375 + scale: 1 + - id: 244 + x: 569 + y: 227 + width: 40.59375 + height: 63.46875 + xOffset: 3.59375 + yOffset: 62.625 + xAdvance: 47.84375 + scale: 1 + - id: 245 + x: 572 + y: 145 + width: 40.59375 + height: 62.53125 + xOffset: 3.59375 + yOffset: 61.6875 + xAdvance: 47.84375 + scale: 1 + - id: 246 + x: 842 + y: 334 + width: 40.59375 + height: 59.75 + xOffset: 3.59375 + yOffset: 58.9375 + xAdvance: 47.84375 + scale: 1 + - id: 247 + x: 786 + y: 417 + width: 41.78125 + height: 38.53125 + xOffset: 2.71875 + yOffset: 47.9375 + xAdvance: 47.1875 + scale: 1 + - id: 248 + x: 804 + y: 635 + width: 48.71875 + height: 48.46875 + xOffset: 1.84375 + yOffset: 46.875 + xAdvance: 52.53125 + scale: 1 + - id: 249 + x: 504 + y: 302 + width: 36.53125 + height: 64.15625 + xOffset: 5.8125 + yOffset: 63.34375 + xAdvance: 47.84375 + scale: 1 + - id: 250 + x: 513 + y: 218 + width: 36.53125 + height: 64.15625 + xOffset: 5.8125 + yOffset: 63.34375 + xAdvance: 47.84375 + scale: 1 + - id: 251 + x: 666 + y: 227 + width: 36.53125 + height: 63.46875 + xOffset: 5.8125 + yOffset: 62.625 + xAdvance: 47.84375 + scale: 1 + - id: 252 + x: 599 + y: 66 + width: 36.53125 + height: 59.75 + xOffset: 5.8125 + yOffset: 58.9375 + xAdvance: 47.84375 + scale: 1 + - id: 253 + x: 88 + y: 838 + width: 42.625 + height: 81.15625 + xOffset: 0.1875 + yOffset: 63.34375 + xAdvance: 43 + scale: 1 + - id: 254 + x: 88 + y: 738 + width: 38.4375 + height: 80.15625 + xOffset: 5.78125 + yOffset: 62.34375 + xAdvance: 47.84375 + scale: 1 + - id: 255 + x: 88 + y: 642 + width: 42.625 + height: 76.75 + xOffset: 0.1875 + yOffset: 58.9375 + xAdvance: 43 + scale: 1 + - id: 8192 + x: 10 + y: 1033 + width: 0 + height: 0 + xOffset: 0 + yOffset: 0 + xAdvance: 43 + scale: 1 + - id: 8193 + x: 10 + y: 1033 + width: 0 + height: 0 + xOffset: 0 + yOffset: 0 + xAdvance: 86 + scale: 1 + - id: 8194 + x: 10 + y: 1033 + width: 0 + height: 0 + xOffset: 0 + yOffset: 0 + xAdvance: 43 + scale: 1 + - id: 8195 + x: 10 + y: 1033 + width: 0 + height: 0 + xOffset: 0 + yOffset: 0 + xAdvance: 86 + scale: 1 + - id: 8196 + x: 10 + y: 1033 + width: 0 + height: 0 + xOffset: 0 + yOffset: 0 + xAdvance: 28.6875 + scale: 1 + - id: 8197 + x: 10 + y: 1033 + width: 0 + height: 0 + xOffset: 0 + yOffset: 0 + xAdvance: 21.5 + scale: 1 + - id: 8198 + x: 10 + y: 1033 + width: 0 + height: 0 + xOffset: 0 + yOffset: 0 + xAdvance: 14.3125 + scale: 1 + - id: 8199 + x: 10 + y: 1033 + width: 0 + height: 0 + xOffset: 0 + yOffset: 0 + xAdvance: 47.84375 + scale: 1 + - id: 8200 + x: 10 + y: 1033 + width: 0 + height: 0 + xOffset: 0 + yOffset: 0 + xAdvance: 23.90625 + scale: 1 + - id: 8201 + x: 10 + y: 1033 + width: 0 + height: 0 + xOffset: 0 + yOffset: 0 + xAdvance: 17.21875 + scale: 1 + - id: 8202 + x: 10 + y: 1033 + width: 0 + height: 0 + xOffset: 0 + yOffset: 0 + xAdvance: 7.1875 + scale: 1 + - id: 8203 + x: 10 + y: 1033 + width: 0 + height: 0 + xOffset: 0 + yOffset: 0 + xAdvance: 0 + scale: 1 + - id: 8204 + x: 399 + y: 470 + width: 3.5 + height: 65.5 + xOffset: -1.78125 + yOffset: 54.0625 + xAdvance: 0 + scale: 1 + - id: 8205 + x: 228 + y: 271 + width: 18.8125 + height: 70.84375 + xOffset: -9.40625 + yOffset: 59.40625 + xAdvance: 0 + scale: 1 + - id: 8206 + x: 257 + y: 181 + width: 20 + height: 70.84375 + xOffset: -1.75 + yOffset: 59.40625 + xAdvance: 0 + scale: 1 + - id: 8207 + x: 261 + y: 91 + width: 20 + height: 70.84375 + xOffset: -18.3125 + yOffset: 59.40625 + xAdvance: 0 + scale: 1 + - id: 8210 + x: 823 + y: 243 + width: 47.78125 + height: 5.75 + xOffset: 0 + yOffset: 24.71875 + xAdvance: 47.84375 + scale: 1 + - id: 8211 + x: 890 + y: 240 + width: 47.78125 + height: 5.75 + xOffset: 0 + yOffset: 24.71875 + xAdvance: 47.84375 + scale: 1 + - id: 8212 + x: 225 + y: 754 + width: 86 + height: 5.75 + xOffset: 0 + yOffset: 24.71875 + xAdvance: 86 + scale: 1 + - id: 8213 + x: 495 + y: 929 + width: 86 + height: 5.75 + xOffset: 0 + yOffset: 24.71875 + xAdvance: 86 + scale: 1 + - id: 8214 + x: 560 + y: 394 + width: 20.46875 + height: 62.3125 + xOffset: 7.5 + yOffset: 62.34375 + xAdvance: 35.53125 + scale: 1 + - id: 8215 + x: 600 + y: 617 + width: 50.09375 + height: 14.5625 + xOffset: -1.3125 + yOffset: -3.65625 + xAdvance: 47.5 + scale: 1 + - id: 8216 + x: 996 + y: 127 + width: 8.4375 + height: 19.1875 + xOffset: 5.3125 + yOffset: 59.1875 + xAdvance: 19.09375 + scale: 1 + - id: 8217 + x: 390 + y: 589 + width: 8.4375 + height: 19.1875 + xOffset: 5.3125 + yOffset: 59.1875 + xAdvance: 19.09375 + scale: 1 + - id: 8218 + x: 556 + y: 17 + width: 8.4375 + height: 19.1875 + xOffset: 5.3125 + yOffset: 8.21875 + xAdvance: 19.09375 + scale: 1 + - id: 8219 + x: 996 + y: 88 + width: 8.4375 + height: 19.1875 + xOffset: 5.28125 + yOffset: 59.1875 + xAdvance: 19.09375 + scale: 1 + - id: 8220 + x: 360 + y: 628 + width: 22.34375 + height: 19.1875 + xOffset: 3.125 + yOffset: 59.1875 + xAdvance: 28.625 + scale: 1 + - id: 8221 + x: 348 + y: 589 + width: 22.34375 + height: 19.1875 + xOffset: 3.125 + yOffset: 59.1875 + xAdvance: 28.625 + scale: 1 + - id: 8222 + x: 514 + y: 17 + width: 22.34375 + height: 19.1875 + xOffset: 3.125 + yOffset: 8.21875 + xAdvance: 28.625 + scale: 1 + - id: 8223 + x: 766 + y: 41 + width: 21.4375 + height: 19.1875 + xOffset: 3 + yOffset: 59.1875 + xAdvance: 28.625 + scale: 1 + - id: 8224 + x: 207 + y: 471 + width: 36.28125 + height: 68.09375 + xOffset: 5.78125 + yOffset: 62.34375 + xAdvance: 47.84375 + scale: 1 + - id: 8225 + x: 249 + y: 560 + width: 36.3125 + height: 68.21875 + xOffset: 5.6875 + yOffset: 62.34375 + xAdvance: 47.84375 + scale: 1 + - id: 8226 + x: 305 + y: 587 + width: 23.3125 + height: 23.3125 + xOffset: 3.375 + yOffset: 40.15625 + xAdvance: 30.09375 + scale: 1 + - id: 8230 + x: 330 + y: 750 + width: 62.625 + height: 9.1875 + xOffset: 11.65625 + yOffset: 9.21875 + xAdvance: 86 + scale: 1 + - id: 8234 + x: 560 + y: 311 + width: 20 + height: 63.25 + xOffset: -1.75 + yOffset: 51.78125 + xAdvance: 0 + scale: 1 + - id: 8235 + x: 696 + y: 310 + width: 20 + height: 63.25 + xOffset: -18.28125 + yOffset: 51.78125 + xAdvance: 0 + scale: 1 + - id: 8236 + x: 266 + y: 281 + width: 20 + height: 70.71875 + xOffset: -10 + yOffset: 59.28125 + xAdvance: 0 + scale: 1 + - id: 8237 + x: 305 + y: 296 + width: 20 + height: 70.71875 + xOffset: -10 + yOffset: 59.28125 + xAdvance: 0 + scale: 1 + - id: 8238 + x: 296 + y: 191 + width: 20 + height: 70.71875 + xOffset: -10 + yOffset: 59.28125 + xAdvance: 0 + scale: 1 + - id: 8239 + x: 10 + y: 1033 + width: 0 + height: 0 + xOffset: 0 + yOffset: 0 + xAdvance: 17.21875 + scale: 1 + - id: 8240 + x: 103 + y: 953 + width: 81.34375 + height: 60.125 + xOffset: 2.28125 + yOffset: 59.6875 + xAdvance: 86 + scale: 1 + - id: 8242 + x: 908 + y: 141 + width: 10.9375 + height: 21.78125 + xOffset: 3.5625 + yOffset: 59.1875 + xAdvance: 16.125 + scale: 1 + - id: 8243 + x: 315 + y: 630 + width: 25.3125 + height: 21.78125 + xOffset: 3.5625 + yOffset: 59.1875 + xAdvance: 30.4375 + scale: 1 + - id: 8244 + x: 459 + y: 14 + width: 34.25 + height: 21.78125 + xOffset: -3.875 + yOffset: 59.1875 + xAdvance: 30.4375 + scale: 1 + - id: 8249 + x: 955 + y: 113 + width: 21.21875 + height: 33.5625 + xOffset: 3.6875 + yOffset: 39.5 + xAdvance: 28.625 + scale: 1 + - id: 8250 + x: 956 + y: 34 + width: 21.1875 + height: 33.5625 + xOffset: 3.71875 + yOffset: 39.5 + xAdvance: 28.625 + scale: 1 + - id: 8252 + x: 749 + y: 234 + width: 27.46875 + height: 59.15625 + xOffset: 7.75 + yOffset: 59.1875 + xAdvance: 43 + scale: 1 + - id: 8254 + x: 969 + y: 166 + width: 34.0625 + height: 4.90625 + xOffset: -2.6875 + yOffset: 68.03125 + xAdvance: 28.625 + scale: 1 + - id: 8260 + x: 600 + y: 458 + width: 43.09375 + height: 59.15625 + xOffset: -17.46875 + yOffset: 59.1875 + xAdvance: 14.375 + scale: 1 + - id: 8286 + x: 738 + y: 64 + width: 8.1875 + height: 62.3125 + xOffset: 7.84375 + yOffset: 62.34375 + xAdvance: 23.90625 + scale: 1 + - id: 8298 + x: 300 + y: 101 + width: 20 + height: 70.71875 + xOffset: -10 + yOffset: 59.28125 + xAdvance: 0 + scale: 1 + - id: 8299 + x: 321 + y: 465 + width: 20 + height: 70.71875 + xOffset: -10 + yOffset: 59.28125 + xAdvance: 0 + scale: 1 + - id: 8300 + x: 281 + y: 386 + width: 20.15625 + height: 70.71875 + xOffset: -10.09375 + yOffset: 59.28125 + xAdvance: 0 + scale: 1 + - id: 8301 + x: 993 + y: 529 + width: 20.15625 + height: 71 + xOffset: -10.09375 + yOffset: 59.5625 + xAdvance: 0 + scale: 1 + - id: 8302 + x: 344 + y: 296 + width: 20.0625 + height: 70.84375 + xOffset: -10.0625 + yOffset: 59.40625 + xAdvance: 0 + scale: 1 + - id: 8303 + x: 360 + y: 465 + width: 20 + height: 70.71875 + xOffset: -10 + yOffset: 59.28125 + xAdvance: 0 + scale: 1 + - id: 8364 + x: 800 + y: 555 + width: 45.9375 + height: 60.90625 + xOffset: 0.65625 + yOffset: 60.0625 + xAdvance: 47.84375 + scale: 1 + - id: 8482 + x: 481 + y: 877 + width: 68.40625 + height: 32.53125 + xOffset: 7.875 + yOffset: 59.1875 + xAdvance: 86 + scale: 1 + - id: 9633 + x: 737 + y: 721 + width: 51.4375 + height: 51.4375 + xOffset: 0.25 + yOffset: 51.46875 + xAdvance: 51.9375 + scale: 1 + m_KerningTable: + kerningPairs: [] + m_FontFeatureTable: + m_GlyphPairAdjustmentRecords: + - m_FirstAdjustmentRecord: + m_GlyphIndex: 1 + m_GlyphValueRecord: + m_XPlacement: 0 + m_YPlacement: 0 + m_XAdvance: -4.745117 + m_YAdvance: 0 + m_SecondAdjustmentRecord: + m_GlyphIndex: 34 + m_GlyphValueRecord: + m_XPlacement: 0 + m_YPlacement: 0 + m_XAdvance: 0 + m_YAdvance: 0 + m_FeatureLookupFlags: 0 + - m_FirstAdjustmentRecord: + m_GlyphIndex: 1 + m_GlyphValueRecord: + m_XPlacement: 0 + m_YPlacement: 0 + m_XAdvance: -1.5537109 + m_YAdvance: 0 + m_SecondAdjustmentRecord: + m_GlyphIndex: 58 + m_GlyphValueRecord: + m_XPlacement: 0 + m_YPlacement: 0 + m_XAdvance: 0 + m_YAdvance: 0 + m_FeatureLookupFlags: 0 + - m_FirstAdjustmentRecord: + m_GlyphIndex: 1 + m_GlyphValueRecord: + m_XPlacement: 0 + m_YPlacement: 0 + m_XAdvance: -1.5537109 + m_YAdvance: 0 + m_SecondAdjustmentRecord: + m_GlyphIndex: 53 + m_GlyphValueRecord: + m_XPlacement: 0 + m_YPlacement: 0 + m_XAdvance: 0 + m_YAdvance: 0 + m_FeatureLookupFlags: 0 + - m_FirstAdjustmentRecord: + m_GlyphIndex: 56 + m_GlyphValueRecord: + m_XPlacement: 0 + m_YPlacement: 0 + m_XAdvance: -3.1914062 + m_YAdvance: 0 + m_SecondAdjustmentRecord: + m_GlyphIndex: 66 + m_GlyphValueRecord: + m_XPlacement: 0 + m_YPlacement: 0 + m_XAdvance: 0 + m_YAdvance: 0 + m_FeatureLookupFlags: 0 + - m_FirstAdjustmentRecord: + m_GlyphIndex: 56 + m_GlyphValueRecord: + m_XPlacement: 0 + m_YPlacement: 0 + m_XAdvance: -3.1914062 + m_YAdvance: 0 + m_SecondAdjustmentRecord: + m_GlyphIndex: 34 + m_GlyphValueRecord: + m_XPlacement: 0 + m_YPlacement: 0 + m_XAdvance: 0 + m_YAdvance: 0 + m_FeatureLookupFlags: 0 + - m_FirstAdjustmentRecord: + m_GlyphIndex: 56 + m_GlyphValueRecord: + m_XPlacement: 0 + m_YPlacement: 0 + m_XAdvance: -1.5537109 + m_YAdvance: 0 + m_SecondAdjustmentRecord: + m_GlyphIndex: 70 + m_GlyphValueRecord: + m_XPlacement: 0 + m_YPlacement: 0 + m_XAdvance: 0 + m_YAdvance: 0 + m_FeatureLookupFlags: 0 + - m_FirstAdjustmentRecord: + m_GlyphIndex: 56 + m_GlyphValueRecord: + m_XPlacement: 0 + m_YPlacement: 0 + m_XAdvance: -0.7558594 + m_YAdvance: 0 + m_SecondAdjustmentRecord: + m_GlyphIndex: 90 + m_GlyphValueRecord: + m_XPlacement: 0 + m_YPlacement: 0 + m_XAdvance: 0 + m_YAdvance: 0 + m_FeatureLookupFlags: 0 + - m_FirstAdjustmentRecord: + m_GlyphIndex: 56 + m_GlyphValueRecord: + m_XPlacement: 0 + m_YPlacement: 0 + m_XAdvance: -1.5537109 + m_YAdvance: 0 + m_SecondAdjustmentRecord: + m_GlyphIndex: 80 + m_GlyphValueRecord: + m_XPlacement: 0 + m_YPlacement: 0 + m_XAdvance: 0 + m_YAdvance: 0 + m_FeatureLookupFlags: 0 + - m_FirstAdjustmentRecord: + m_GlyphIndex: 56 + m_GlyphValueRecord: + m_XPlacement: 0 + m_YPlacement: 0 + m_XAdvance: -1.5537109 + m_YAdvance: 0 + m_SecondAdjustmentRecord: + m_GlyphIndex: 83 + m_GlyphValueRecord: + m_XPlacement: 0 + m_YPlacement: 0 + m_XAdvance: 0 + m_YAdvance: 0 + m_FeatureLookupFlags: 0 + - m_FirstAdjustmentRecord: + m_GlyphIndex: 56 + m_GlyphValueRecord: + m_XPlacement: 0 + m_YPlacement: 0 + m_XAdvance: -4.745117 + m_YAdvance: 0 + m_SecondAdjustmentRecord: + m_GlyphIndex: 13 + m_GlyphValueRecord: + m_XPlacement: 0 + m_YPlacement: 0 + m_XAdvance: 0 + m_YAdvance: 0 + m_FeatureLookupFlags: 0 + - m_FirstAdjustmentRecord: + m_GlyphIndex: 56 + m_GlyphValueRecord: + m_XPlacement: 0 + m_YPlacement: 0 + m_XAdvance: -1.5537109 + m_YAdvance: 0 + m_SecondAdjustmentRecord: + m_GlyphIndex: 28 + m_GlyphValueRecord: + m_XPlacement: 0 + m_YPlacement: 0 + m_XAdvance: 0 + m_YAdvance: 0 + m_FeatureLookupFlags: 0 + - m_FirstAdjustmentRecord: + m_GlyphIndex: 56 + m_GlyphValueRecord: + m_XPlacement: 0 + m_YPlacement: 0 + m_XAdvance: -1.5537109 + m_YAdvance: 0 + m_SecondAdjustmentRecord: + m_GlyphIndex: 86 + m_GlyphValueRecord: + m_XPlacement: 0 + m_YPlacement: 0 + m_XAdvance: 0 + m_YAdvance: 0 + m_FeatureLookupFlags: 0 + - m_FirstAdjustmentRecord: + m_GlyphIndex: 56 + m_GlyphValueRecord: + m_XPlacement: 0 + m_YPlacement: 0 + m_XAdvance: -1.5537109 + m_YAdvance: 0 + m_SecondAdjustmentRecord: + m_GlyphIndex: 27 + m_GlyphValueRecord: + m_XPlacement: 0 + m_YPlacement: 0 + m_XAdvance: 0 + m_YAdvance: 0 + m_FeatureLookupFlags: 0 + - m_FirstAdjustmentRecord: + m_GlyphIndex: 56 + m_GlyphValueRecord: + m_XPlacement: 0 + m_YPlacement: 0 + m_XAdvance: -1.5537109 + m_YAdvance: 0 + m_SecondAdjustmentRecord: + m_GlyphIndex: 14 + m_GlyphValueRecord: + m_XPlacement: 0 + m_YPlacement: 0 + m_XAdvance: 0 + m_YAdvance: 0 + m_FeatureLookupFlags: 0 + - m_FirstAdjustmentRecord: + m_GlyphIndex: 56 + m_GlyphValueRecord: + m_XPlacement: 0 + m_YPlacement: 0 + m_XAdvance: -4.745117 + m_YAdvance: 0 + m_SecondAdjustmentRecord: + m_GlyphIndex: 15 + m_GlyphValueRecord: + m_XPlacement: 0 + m_YPlacement: 0 + m_XAdvance: 0 + m_YAdvance: 0 + m_FeatureLookupFlags: 0 + - m_FirstAdjustmentRecord: + m_GlyphIndex: 88 + m_GlyphValueRecord: + m_XPlacement: 0 + m_YPlacement: 0 + m_XAdvance: -4.745117 + m_YAdvance: 0 + m_SecondAdjustmentRecord: + m_GlyphIndex: 13 + m_GlyphValueRecord: + m_XPlacement: 0 + m_YPlacement: 0 + m_XAdvance: 0 + m_YAdvance: 0 + m_FeatureLookupFlags: 0 + - m_FirstAdjustmentRecord: + m_GlyphIndex: 88 + m_GlyphValueRecord: + m_XPlacement: 0 + m_YPlacement: 0 + m_XAdvance: -4.745117 + m_YAdvance: 0 + m_SecondAdjustmentRecord: + m_GlyphIndex: 15 + m_GlyphValueRecord: + m_XPlacement: 0 + m_YPlacement: 0 + m_XAdvance: 0 + m_YAdvance: 0 + m_FeatureLookupFlags: 0 + - m_FirstAdjustmentRecord: + m_GlyphIndex: 34 + m_GlyphValueRecord: + m_XPlacement: 0 + m_YPlacement: 0 + m_XAdvance: -4.745117 + m_YAdvance: 0 + m_SecondAdjustmentRecord: + m_GlyphIndex: 1 + m_GlyphValueRecord: + m_XPlacement: 0 + m_YPlacement: 0 + m_XAdvance: 0 + m_YAdvance: 0 + m_FeatureLookupFlags: 0 + - m_FirstAdjustmentRecord: + m_GlyphIndex: 34 + m_GlyphValueRecord: + m_XPlacement: 0 + m_YPlacement: 0 + m_XAdvance: -3.1914062 + m_YAdvance: 0 + m_SecondAdjustmentRecord: + m_GlyphIndex: 56 + m_GlyphValueRecord: + m_XPlacement: 0 + m_YPlacement: 0 + m_XAdvance: 0 + m_YAdvance: 0 + m_FeatureLookupFlags: 0 + - m_FirstAdjustmentRecord: + m_GlyphIndex: 34 + m_GlyphValueRecord: + m_XPlacement: 0 + m_YPlacement: 0 + m_XAdvance: -1.5537109 + m_YAdvance: 0 + m_SecondAdjustmentRecord: + m_GlyphIndex: 88 + m_GlyphValueRecord: + m_XPlacement: 0 + m_YPlacement: 0 + m_XAdvance: 0 + m_YAdvance: 0 + m_FeatureLookupFlags: 0 + - m_FirstAdjustmentRecord: + m_GlyphIndex: 34 + m_GlyphValueRecord: + m_XPlacement: 0 + m_YPlacement: 0 + m_XAdvance: -6.3828125 + m_YAdvance: 0 + m_SecondAdjustmentRecord: + m_GlyphIndex: 55 + m_GlyphValueRecord: + m_XPlacement: 0 + m_YPlacement: 0 + m_XAdvance: 0 + m_YAdvance: 0 + m_FeatureLookupFlags: 0 + - m_FirstAdjustmentRecord: + m_GlyphIndex: 34 + m_GlyphValueRecord: + m_XPlacement: 0 + m_YPlacement: 0 + m_XAdvance: -6.3828125 + m_YAdvance: 0 + m_SecondAdjustmentRecord: + m_GlyphIndex: 58 + m_GlyphValueRecord: + m_XPlacement: 0 + m_YPlacement: 0 + m_XAdvance: 0 + m_YAdvance: 0 + m_FeatureLookupFlags: 0 + - m_FirstAdjustmentRecord: + m_GlyphIndex: 34 + m_GlyphValueRecord: + m_XPlacement: 0 + m_YPlacement: 0 + m_XAdvance: -6.3828125 + m_YAdvance: 0 + m_SecondAdjustmentRecord: + m_GlyphIndex: 53 + m_GlyphValueRecord: + m_XPlacement: 0 + m_YPlacement: 0 + m_XAdvance: 0 + m_YAdvance: 0 + m_FeatureLookupFlags: 0 + - m_FirstAdjustmentRecord: + m_GlyphIndex: 34 + m_GlyphValueRecord: + m_XPlacement: 0 + m_YPlacement: 0 + m_XAdvance: -1.5537109 + m_YAdvance: 0 + m_SecondAdjustmentRecord: + m_GlyphIndex: 90 + m_GlyphValueRecord: + m_XPlacement: 0 + m_YPlacement: 0 + m_XAdvance: 0 + m_YAdvance: 0 + m_FeatureLookupFlags: 0 + - m_FirstAdjustmentRecord: + m_GlyphIndex: 34 + m_GlyphValueRecord: + m_XPlacement: 0 + m_YPlacement: 0 + m_XAdvance: -1.5537109 + m_YAdvance: 0 + m_SecondAdjustmentRecord: + m_GlyphIndex: 87 + m_GlyphValueRecord: + m_XPlacement: 0 + m_YPlacement: 0 + m_XAdvance: 0 + m_YAdvance: 0 + m_FeatureLookupFlags: 0 + - m_FirstAdjustmentRecord: + m_GlyphIndex: 34 + m_GlyphValueRecord: + m_XPlacement: 0 + m_YPlacement: 0 + m_XAdvance: -6.3828125 + m_YAdvance: 0 + m_SecondAdjustmentRecord: + m_GlyphIndex: 215 + m_GlyphValueRecord: + m_XPlacement: 0 + m_YPlacement: 0 + m_XAdvance: 0 + m_YAdvance: 0 + m_FeatureLookupFlags: 0 + - m_FirstAdjustmentRecord: + m_GlyphIndex: 55 + m_GlyphValueRecord: + m_XPlacement: 0 + m_YPlacement: 0 + m_XAdvance: -6.3828125 + m_YAdvance: 0 + m_SecondAdjustmentRecord: + m_GlyphIndex: 66 + m_GlyphValueRecord: + m_XPlacement: 0 + m_YPlacement: 0 + m_XAdvance: 0 + m_YAdvance: 0 + m_FeatureLookupFlags: 0 + - m_FirstAdjustmentRecord: + m_GlyphIndex: 55 + m_GlyphValueRecord: + m_XPlacement: 0 + m_YPlacement: 0 + m_XAdvance: -6.3828125 + m_YAdvance: 0 + m_SecondAdjustmentRecord: + m_GlyphIndex: 34 + m_GlyphValueRecord: + m_XPlacement: 0 + m_YPlacement: 0 + m_XAdvance: 0 + m_YAdvance: 0 + m_FeatureLookupFlags: 0 + - m_FirstAdjustmentRecord: + m_GlyphIndex: 55 + m_GlyphValueRecord: + m_XPlacement: 0 + m_YPlacement: 0 + m_XAdvance: -4.745117 + m_YAdvance: 0 + m_SecondAdjustmentRecord: + m_GlyphIndex: 70 + m_GlyphValueRecord: + m_XPlacement: 0 + m_YPlacement: 0 + m_XAdvance: 0 + m_YAdvance: 0 + m_FeatureLookupFlags: 0 + - m_FirstAdjustmentRecord: + m_GlyphIndex: 55 + m_GlyphValueRecord: + m_XPlacement: 0 + m_YPlacement: 0 + m_XAdvance: -3.1914062 + m_YAdvance: 0 + m_SecondAdjustmentRecord: + m_GlyphIndex: 90 + m_GlyphValueRecord: + m_XPlacement: 0 + m_YPlacement: 0 + m_XAdvance: 0 + m_YAdvance: 0 + m_FeatureLookupFlags: 0 + - m_FirstAdjustmentRecord: + m_GlyphIndex: 55 + m_GlyphValueRecord: + m_XPlacement: 0 + m_YPlacement: 0 + m_XAdvance: -1.5537109 + m_YAdvance: 0 + m_SecondAdjustmentRecord: + m_GlyphIndex: 74 + m_GlyphValueRecord: + m_XPlacement: 0 + m_YPlacement: 0 + m_XAdvance: 0 + m_YAdvance: 0 + m_FeatureLookupFlags: 0 + - m_FirstAdjustmentRecord: + m_GlyphIndex: 55 + m_GlyphValueRecord: + m_XPlacement: 0 + m_YPlacement: 0 + m_XAdvance: -4.745117 + m_YAdvance: 0 + m_SecondAdjustmentRecord: + m_GlyphIndex: 80 + m_GlyphValueRecord: + m_XPlacement: 0 + m_YPlacement: 0 + m_XAdvance: 0 + m_YAdvance: 0 + m_FeatureLookupFlags: 0 + - m_FirstAdjustmentRecord: + m_GlyphIndex: 55 + m_GlyphValueRecord: + m_XPlacement: 0 + m_YPlacement: 0 + m_XAdvance: -3.1914062 + m_YAdvance: 0 + m_SecondAdjustmentRecord: + m_GlyphIndex: 83 + m_GlyphValueRecord: + m_XPlacement: 0 + m_YPlacement: 0 + m_XAdvance: 0 + m_YAdvance: 0 + m_FeatureLookupFlags: 0 + - m_FirstAdjustmentRecord: + m_GlyphIndex: 55 + m_GlyphValueRecord: + m_XPlacement: 0 + m_YPlacement: 0 + m_XAdvance: -7.8945312 + m_YAdvance: 0 + m_SecondAdjustmentRecord: + m_GlyphIndex: 13 + m_GlyphValueRecord: + m_XPlacement: 0 + m_YPlacement: 0 + m_XAdvance: 0 + m_YAdvance: 0 + m_FeatureLookupFlags: 0 + - m_FirstAdjustmentRecord: + m_GlyphIndex: 55 + m_GlyphValueRecord: + m_XPlacement: 0 + m_YPlacement: 0 + m_XAdvance: -3.1914062 + m_YAdvance: 0 + m_SecondAdjustmentRecord: + m_GlyphIndex: 28 + m_GlyphValueRecord: + m_XPlacement: 0 + m_YPlacement: 0 + m_XAdvance: 0 + m_YAdvance: 0 + m_FeatureLookupFlags: 0 + - m_FirstAdjustmentRecord: + m_GlyphIndex: 55 + m_GlyphValueRecord: + m_XPlacement: 0 + m_YPlacement: 0 + m_XAdvance: -3.1914062 + m_YAdvance: 0 + m_SecondAdjustmentRecord: + m_GlyphIndex: 86 + m_GlyphValueRecord: + m_XPlacement: 0 + m_YPlacement: 0 + m_XAdvance: 0 + m_YAdvance: 0 + m_FeatureLookupFlags: 0 + - m_FirstAdjustmentRecord: + m_GlyphIndex: 55 + m_GlyphValueRecord: + m_XPlacement: 0 + m_YPlacement: 0 + m_XAdvance: -3.1914062 + m_YAdvance: 0 + m_SecondAdjustmentRecord: + m_GlyphIndex: 27 + m_GlyphValueRecord: + m_XPlacement: 0 + m_YPlacement: 0 + m_XAdvance: 0 + m_YAdvance: 0 + m_FeatureLookupFlags: 0 + - m_FirstAdjustmentRecord: + m_GlyphIndex: 55 + m_GlyphValueRecord: + m_XPlacement: 0 + m_YPlacement: 0 + m_XAdvance: -4.745117 + m_YAdvance: 0 + m_SecondAdjustmentRecord: + m_GlyphIndex: 14 + m_GlyphValueRecord: + m_XPlacement: 0 + m_YPlacement: 0 + m_XAdvance: 0 + m_YAdvance: 0 + m_FeatureLookupFlags: 0 + - m_FirstAdjustmentRecord: + m_GlyphIndex: 55 + m_GlyphValueRecord: + m_XPlacement: 0 + m_YPlacement: 0 + m_XAdvance: -7.8945312 + m_YAdvance: 0 + m_SecondAdjustmentRecord: + m_GlyphIndex: 15 + m_GlyphValueRecord: + m_XPlacement: 0 + m_YPlacement: 0 + m_XAdvance: 0 + m_YAdvance: 0 + m_FeatureLookupFlags: 0 + - m_FirstAdjustmentRecord: + m_GlyphIndex: 58 + m_GlyphValueRecord: + m_XPlacement: 0 + m_YPlacement: 0 + m_XAdvance: -1.5537109 + m_YAdvance: 0 + m_SecondAdjustmentRecord: + m_GlyphIndex: 1 + m_GlyphValueRecord: + m_XPlacement: 0 + m_YPlacement: 0 + m_XAdvance: 0 + m_YAdvance: 0 + m_FeatureLookupFlags: 0 + - m_FirstAdjustmentRecord: + m_GlyphIndex: 58 + m_GlyphValueRecord: + m_XPlacement: 0 + m_YPlacement: 0 + m_XAdvance: -6.3828125 + m_YAdvance: 0 + m_SecondAdjustmentRecord: + m_GlyphIndex: 66 + m_GlyphValueRecord: + m_XPlacement: 0 + m_YPlacement: 0 + m_XAdvance: 0 + m_YAdvance: 0 + m_FeatureLookupFlags: 0 + - m_FirstAdjustmentRecord: + m_GlyphIndex: 58 + m_GlyphValueRecord: + m_XPlacement: 0 + m_YPlacement: 0 + m_XAdvance: -6.3828125 + m_YAdvance: 0 + m_SecondAdjustmentRecord: + m_GlyphIndex: 34 + m_GlyphValueRecord: + m_XPlacement: 0 + m_YPlacement: 0 + m_XAdvance: 0 + m_YAdvance: 0 + m_FeatureLookupFlags: 0 + - m_FirstAdjustmentRecord: + m_GlyphIndex: 58 + m_GlyphValueRecord: + m_XPlacement: 0 + m_YPlacement: 0 + m_XAdvance: -7.8945312 + m_YAdvance: 0 + m_SecondAdjustmentRecord: + m_GlyphIndex: 70 + m_GlyphValueRecord: + m_XPlacement: 0 + m_YPlacement: 0 + m_XAdvance: 0 + m_YAdvance: 0 + m_FeatureLookupFlags: 0 + - m_FirstAdjustmentRecord: + m_GlyphIndex: 58 + m_GlyphValueRecord: + m_XPlacement: 0 + m_YPlacement: 0 + m_XAdvance: -6.3828125 + m_YAdvance: 0 + m_SecondAdjustmentRecord: + m_GlyphIndex: 81 + m_GlyphValueRecord: + m_XPlacement: 0 + m_YPlacement: 0 + m_XAdvance: 0 + m_YAdvance: 0 + m_FeatureLookupFlags: 0 + - m_FirstAdjustmentRecord: + m_GlyphIndex: 58 + m_GlyphValueRecord: + m_XPlacement: 0 + m_YPlacement: 0 + m_XAdvance: -7.8945312 + m_YAdvance: 0 + m_SecondAdjustmentRecord: + m_GlyphIndex: 82 + m_GlyphValueRecord: + m_XPlacement: 0 + m_YPlacement: 0 + m_XAdvance: 0 + m_YAdvance: 0 + m_FeatureLookupFlags: 0 + - m_FirstAdjustmentRecord: + m_GlyphIndex: 58 + m_GlyphValueRecord: + m_XPlacement: 0 + m_YPlacement: 0 + m_XAdvance: -4.745117 + m_YAdvance: 0 + m_SecondAdjustmentRecord: + m_GlyphIndex: 87 + m_GlyphValueRecord: + m_XPlacement: 0 + m_YPlacement: 0 + m_XAdvance: 0 + m_YAdvance: 0 + m_FeatureLookupFlags: 0 + - m_FirstAdjustmentRecord: + m_GlyphIndex: 58 + m_GlyphValueRecord: + m_XPlacement: 0 + m_YPlacement: 0 + m_XAdvance: -3.1914062 + m_YAdvance: 0 + m_SecondAdjustmentRecord: + m_GlyphIndex: 74 + m_GlyphValueRecord: + m_XPlacement: 0 + m_YPlacement: 0 + m_XAdvance: 0 + m_YAdvance: 0 + m_FeatureLookupFlags: 0 + - m_FirstAdjustmentRecord: + m_GlyphIndex: 58 + m_GlyphValueRecord: + m_XPlacement: 0 + m_YPlacement: 0 + m_XAdvance: -7.8945312 + m_YAdvance: 0 + m_SecondAdjustmentRecord: + m_GlyphIndex: 80 + m_GlyphValueRecord: + m_XPlacement: 0 + m_YPlacement: 0 + m_XAdvance: 0 + m_YAdvance: 0 + m_FeatureLookupFlags: 0 + - m_FirstAdjustmentRecord: + m_GlyphIndex: 58 + m_GlyphValueRecord: + m_XPlacement: 0 + m_YPlacement: 0 + m_XAdvance: -11.0859375 + m_YAdvance: 0 + m_SecondAdjustmentRecord: + m_GlyphIndex: 13 + m_GlyphValueRecord: + m_XPlacement: 0 + m_YPlacement: 0 + m_XAdvance: 0 + m_YAdvance: 0 + m_FeatureLookupFlags: 0 + - m_FirstAdjustmentRecord: + m_GlyphIndex: 58 + m_GlyphValueRecord: + m_XPlacement: 0 + m_YPlacement: 0 + m_XAdvance: -5.584961 + m_YAdvance: 0 + m_SecondAdjustmentRecord: + m_GlyphIndex: 28 + m_GlyphValueRecord: + m_XPlacement: 0 + m_YPlacement: 0 + m_XAdvance: 0 + m_YAdvance: 0 + m_FeatureLookupFlags: 0 + - m_FirstAdjustmentRecord: + m_GlyphIndex: 58 + m_GlyphValueRecord: + m_XPlacement: 0 + m_YPlacement: 0 + m_XAdvance: -4.745117 + m_YAdvance: 0 + m_SecondAdjustmentRecord: + m_GlyphIndex: 86 + m_GlyphValueRecord: + m_XPlacement: 0 + m_YPlacement: 0 + m_XAdvance: 0 + m_YAdvance: 0 + m_FeatureLookupFlags: 0 + - m_FirstAdjustmentRecord: + m_GlyphIndex: 58 + m_GlyphValueRecord: + m_XPlacement: 0 + m_YPlacement: 0 + m_XAdvance: -4.745117 + m_YAdvance: 0 + m_SecondAdjustmentRecord: + m_GlyphIndex: 27 + m_GlyphValueRecord: + m_XPlacement: 0 + m_YPlacement: 0 + m_XAdvance: 0 + m_YAdvance: 0 + m_FeatureLookupFlags: 0 + - m_FirstAdjustmentRecord: + m_GlyphIndex: 58 + m_GlyphValueRecord: + m_XPlacement: 0 + m_YPlacement: 0 + m_XAdvance: -7.8945312 + m_YAdvance: 0 + m_SecondAdjustmentRecord: + m_GlyphIndex: 14 + m_GlyphValueRecord: + m_XPlacement: 0 + m_YPlacement: 0 + m_XAdvance: 0 + m_YAdvance: 0 + m_FeatureLookupFlags: 0 + - m_FirstAdjustmentRecord: + m_GlyphIndex: 58 + m_GlyphValueRecord: + m_XPlacement: 0 + m_YPlacement: 0 + m_XAdvance: -11.0859375 + m_YAdvance: 0 + m_SecondAdjustmentRecord: + m_GlyphIndex: 15 + m_GlyphValueRecord: + m_XPlacement: 0 + m_YPlacement: 0 + m_XAdvance: 0 + m_YAdvance: 0 + m_FeatureLookupFlags: 0 + - m_FirstAdjustmentRecord: + m_GlyphIndex: 51 + m_GlyphValueRecord: + m_XPlacement: 0 + m_YPlacement: 0 + m_XAdvance: -1.5537109 + m_YAdvance: 0 + m_SecondAdjustmentRecord: + m_GlyphIndex: 56 + m_GlyphValueRecord: + m_XPlacement: 0 + m_YPlacement: 0 + m_XAdvance: 0 + m_YAdvance: 0 + m_FeatureLookupFlags: 0 + - m_FirstAdjustmentRecord: + m_GlyphIndex: 51 + m_GlyphValueRecord: + m_XPlacement: 0 + m_YPlacement: 0 + m_XAdvance: -1.5537109 + m_YAdvance: 0 + m_SecondAdjustmentRecord: + m_GlyphIndex: 55 + m_GlyphValueRecord: + m_XPlacement: 0 + m_YPlacement: 0 + m_XAdvance: 0 + m_YAdvance: 0 + m_FeatureLookupFlags: 0 + - m_FirstAdjustmentRecord: + m_GlyphIndex: 51 + m_GlyphValueRecord: + m_XPlacement: 0 + m_YPlacement: 0 + m_XAdvance: -1.5537109 + m_YAdvance: 0 + m_SecondAdjustmentRecord: + m_GlyphIndex: 58 + m_GlyphValueRecord: + m_XPlacement: 0 + m_YPlacement: 0 + m_XAdvance: 0 + m_YAdvance: 0 + m_FeatureLookupFlags: 0 + - m_FirstAdjustmentRecord: + m_GlyphIndex: 51 + m_GlyphValueRecord: + m_XPlacement: 0 + m_YPlacement: 0 + m_XAdvance: -1.5537109 + m_YAdvance: 0 + m_SecondAdjustmentRecord: + m_GlyphIndex: 53 + m_GlyphValueRecord: + m_XPlacement: 0 + m_YPlacement: 0 + m_XAdvance: 0 + m_YAdvance: 0 + m_FeatureLookupFlags: 0 + - m_FirstAdjustmentRecord: + m_GlyphIndex: 53 + m_GlyphValueRecord: + m_XPlacement: 0 + m_YPlacement: 0 + m_XAdvance: -1.5537109 + m_YAdvance: 0 + m_SecondAdjustmentRecord: + m_GlyphIndex: 1 + m_GlyphValueRecord: + m_XPlacement: 0 + m_YPlacement: 0 + m_XAdvance: 0 + m_YAdvance: 0 + m_FeatureLookupFlags: 0 + - m_FirstAdjustmentRecord: + m_GlyphIndex: 53 + m_GlyphValueRecord: + m_XPlacement: 0 + m_YPlacement: 0 + m_XAdvance: -9.532227 + m_YAdvance: 0 + m_SecondAdjustmentRecord: + m_GlyphIndex: 66 + m_GlyphValueRecord: + m_XPlacement: 0 + m_YPlacement: 0 + m_XAdvance: 0 + m_YAdvance: 0 + m_FeatureLookupFlags: 0 + - m_FirstAdjustmentRecord: + m_GlyphIndex: 53 + m_GlyphValueRecord: + m_XPlacement: 0 + m_YPlacement: 0 + m_XAdvance: -9.532227 + m_YAdvance: 0 + m_SecondAdjustmentRecord: + m_GlyphIndex: 68 + m_GlyphValueRecord: + m_XPlacement: 0 + m_YPlacement: 0 + m_XAdvance: 0 + m_YAdvance: 0 + m_FeatureLookupFlags: 0 + - m_FirstAdjustmentRecord: + m_GlyphIndex: 53 + m_GlyphValueRecord: + m_XPlacement: 0 + m_YPlacement: 0 + m_XAdvance: -1.5537109 + m_YAdvance: 0 + m_SecondAdjustmentRecord: + m_GlyphIndex: 48 + m_GlyphValueRecord: + m_XPlacement: 0 + m_YPlacement: 0 + m_XAdvance: 0 + m_YAdvance: 0 + m_FeatureLookupFlags: 0 + - m_FirstAdjustmentRecord: + m_GlyphIndex: 53 + m_GlyphValueRecord: + m_XPlacement: 0 + m_YPlacement: 0 + m_XAdvance: -4.745117 + m_YAdvance: 0 + m_SecondAdjustmentRecord: + m_GlyphIndex: 88 + m_GlyphValueRecord: + m_XPlacement: 0 + m_YPlacement: 0 + m_XAdvance: 0 + m_YAdvance: 0 + m_FeatureLookupFlags: 0 + - m_FirstAdjustmentRecord: + m_GlyphIndex: 53 + m_GlyphValueRecord: + m_XPlacement: 0 + m_YPlacement: 0 + m_XAdvance: -6.3828125 + m_YAdvance: 0 + m_SecondAdjustmentRecord: + m_GlyphIndex: 34 + m_GlyphValueRecord: + m_XPlacement: 0 + m_YPlacement: 0 + m_XAdvance: 0 + m_YAdvance: 0 + m_FeatureLookupFlags: 0 + - m_FirstAdjustmentRecord: + m_GlyphIndex: 53 + m_GlyphValueRecord: + m_XPlacement: 0 + m_YPlacement: 0 + m_XAdvance: -9.532227 + m_YAdvance: 0 + m_SecondAdjustmentRecord: + m_GlyphIndex: 70 + m_GlyphValueRecord: + m_XPlacement: 0 + m_YPlacement: 0 + m_XAdvance: 0 + m_YAdvance: 0 + m_FeatureLookupFlags: 0 + - m_FirstAdjustmentRecord: + m_GlyphIndex: 53 + m_GlyphValueRecord: + m_XPlacement: 0 + m_YPlacement: 0 + m_XAdvance: -4.745117 + m_YAdvance: 0 + m_SecondAdjustmentRecord: + m_GlyphIndex: 90 + m_GlyphValueRecord: + m_XPlacement: 0 + m_YPlacement: 0 + m_XAdvance: 0 + m_YAdvance: 0 + m_FeatureLookupFlags: 0 + - m_FirstAdjustmentRecord: + m_GlyphIndex: 53 + m_GlyphValueRecord: + m_XPlacement: 0 + m_YPlacement: 0 + m_XAdvance: -3.1914062 + m_YAdvance: 0 + m_SecondAdjustmentRecord: + m_GlyphIndex: 74 + m_GlyphValueRecord: + m_XPlacement: 0 + m_YPlacement: 0 + m_XAdvance: 0 + m_YAdvance: 0 + m_FeatureLookupFlags: 0 + - m_FirstAdjustmentRecord: + m_GlyphIndex: 53 + m_GlyphValueRecord: + m_XPlacement: 0 + m_YPlacement: 0 + m_XAdvance: -9.532227 + m_YAdvance: 0 + m_SecondAdjustmentRecord: + m_GlyphIndex: 80 + m_GlyphValueRecord: + m_XPlacement: 0 + m_YPlacement: 0 + m_XAdvance: 0 + m_YAdvance: 0 + m_FeatureLookupFlags: 0 + - m_FirstAdjustmentRecord: + m_GlyphIndex: 53 + m_GlyphValueRecord: + m_XPlacement: 0 + m_YPlacement: 0 + m_XAdvance: -3.1914062 + m_YAdvance: 0 + m_SecondAdjustmentRecord: + m_GlyphIndex: 83 + m_GlyphValueRecord: + m_XPlacement: 0 + m_YPlacement: 0 + m_XAdvance: 0 + m_YAdvance: 0 + m_FeatureLookupFlags: 0 + - m_FirstAdjustmentRecord: + m_GlyphIndex: 53 + m_GlyphValueRecord: + m_XPlacement: 0 + m_YPlacement: 0 + m_XAdvance: -9.532227 + m_YAdvance: 0 + m_SecondAdjustmentRecord: + m_GlyphIndex: 84 + m_GlyphValueRecord: + m_XPlacement: 0 + m_YPlacement: 0 + m_XAdvance: 0 + m_YAdvance: 0 + m_FeatureLookupFlags: 0 + - m_FirstAdjustmentRecord: + m_GlyphIndex: 53 + m_GlyphValueRecord: + m_XPlacement: 0 + m_YPlacement: 0 + m_XAdvance: -9.532227 + m_YAdvance: 0 + m_SecondAdjustmentRecord: + m_GlyphIndex: 13 + m_GlyphValueRecord: + m_XPlacement: 0 + m_YPlacement: 0 + m_XAdvance: 0 + m_YAdvance: 0 + m_FeatureLookupFlags: 0 + - m_FirstAdjustmentRecord: + m_GlyphIndex: 53 + m_GlyphValueRecord: + m_XPlacement: 0 + m_YPlacement: 0 + m_XAdvance: -9.532227 + m_YAdvance: 0 + m_SecondAdjustmentRecord: + m_GlyphIndex: 28 + m_GlyphValueRecord: + m_XPlacement: 0 + m_YPlacement: 0 + m_XAdvance: 0 + m_YAdvance: 0 + m_FeatureLookupFlags: 0 + - m_FirstAdjustmentRecord: + m_GlyphIndex: 53 + m_GlyphValueRecord: + m_XPlacement: 0 + m_YPlacement: 0 + m_XAdvance: -3.1914062 + m_YAdvance: 0 + m_SecondAdjustmentRecord: + m_GlyphIndex: 86 + m_GlyphValueRecord: + m_XPlacement: 0 + m_YPlacement: 0 + m_XAdvance: 0 + m_YAdvance: 0 + m_FeatureLookupFlags: 0 + - m_FirstAdjustmentRecord: + m_GlyphIndex: 53 + m_GlyphValueRecord: + m_XPlacement: 0 + m_YPlacement: 0 + m_XAdvance: -9.532227 + m_YAdvance: 0 + m_SecondAdjustmentRecord: + m_GlyphIndex: 27 + m_GlyphValueRecord: + m_XPlacement: 0 + m_YPlacement: 0 + m_XAdvance: 0 + m_YAdvance: 0 + m_FeatureLookupFlags: 0 + - m_FirstAdjustmentRecord: + m_GlyphIndex: 53 + m_GlyphValueRecord: + m_XPlacement: 0 + m_YPlacement: 0 + m_XAdvance: -4.745117 + m_YAdvance: 0 + m_SecondAdjustmentRecord: + m_GlyphIndex: 14 + m_GlyphValueRecord: + m_XPlacement: 0 + m_YPlacement: 0 + m_XAdvance: 0 + m_YAdvance: 0 + m_FeatureLookupFlags: 0 + - m_FirstAdjustmentRecord: + m_GlyphIndex: 53 + m_GlyphValueRecord: + m_XPlacement: 0 + m_YPlacement: 0 + m_XAdvance: -9.532227 + m_YAdvance: 0 + m_SecondAdjustmentRecord: + m_GlyphIndex: 15 + m_GlyphValueRecord: + m_XPlacement: 0 + m_YPlacement: 0 + m_XAdvance: 0 + m_YAdvance: 0 + m_FeatureLookupFlags: 0 + - m_FirstAdjustmentRecord: + m_GlyphIndex: 49 + m_GlyphValueRecord: + m_XPlacement: 0 + m_YPlacement: 0 + m_XAdvance: -1.5537109 + m_YAdvance: 0 + m_SecondAdjustmentRecord: + m_GlyphIndex: 1 + m_GlyphValueRecord: + m_XPlacement: 0 + m_YPlacement: 0 + m_XAdvance: 0 + m_YAdvance: 0 + m_FeatureLookupFlags: 0 + - m_FirstAdjustmentRecord: + m_GlyphIndex: 49 + m_GlyphValueRecord: + m_XPlacement: 0 + m_YPlacement: 0 + m_XAdvance: -6.3828125 + m_YAdvance: 0 + m_SecondAdjustmentRecord: + m_GlyphIndex: 34 + m_GlyphValueRecord: + m_XPlacement: 0 + m_YPlacement: 0 + m_XAdvance: 0 + m_YAdvance: 0 + m_FeatureLookupFlags: 0 + - m_FirstAdjustmentRecord: + m_GlyphIndex: 49 + m_GlyphValueRecord: + m_XPlacement: 0 + m_YPlacement: 0 + m_XAdvance: -11.0859375 + m_YAdvance: 0 + m_SecondAdjustmentRecord: + m_GlyphIndex: 13 + m_GlyphValueRecord: + m_XPlacement: 0 + m_YPlacement: 0 + m_XAdvance: 0 + m_YAdvance: 0 + m_FeatureLookupFlags: 0 + - m_FirstAdjustmentRecord: + m_GlyphIndex: 49 + m_GlyphValueRecord: + m_XPlacement: 0 + m_YPlacement: 0 + m_XAdvance: -11.0859375 + m_YAdvance: 0 + m_SecondAdjustmentRecord: + m_GlyphIndex: 15 + m_GlyphValueRecord: + m_XPlacement: 0 + m_YPlacement: 0 + m_XAdvance: 0 + m_YAdvance: 0 + m_FeatureLookupFlags: 0 + - m_FirstAdjustmentRecord: + m_GlyphIndex: 18 + m_GlyphValueRecord: + m_XPlacement: 0 + m_YPlacement: 0 + m_XAdvance: -6.3828125 + m_YAdvance: 0 + m_SecondAdjustmentRecord: + m_GlyphIndex: 18 + m_GlyphValueRecord: + m_XPlacement: 0 + m_YPlacement: 0 + m_XAdvance: 0 + m_YAdvance: 0 + m_FeatureLookupFlags: 0 + - m_FirstAdjustmentRecord: + m_GlyphIndex: 90 + m_GlyphValueRecord: + m_XPlacement: 0 + m_YPlacement: 0 + m_XAdvance: -6.3828125 + m_YAdvance: 0 + m_SecondAdjustmentRecord: + m_GlyphIndex: 13 + m_GlyphValueRecord: + m_XPlacement: 0 + m_YPlacement: 0 + m_XAdvance: 0 + m_YAdvance: 0 + m_FeatureLookupFlags: 0 + - m_FirstAdjustmentRecord: + m_GlyphIndex: 90 + m_GlyphValueRecord: + m_XPlacement: 0 + m_YPlacement: 0 + m_XAdvance: -6.3828125 + m_YAdvance: 0 + m_SecondAdjustmentRecord: + m_GlyphIndex: 15 + m_GlyphValueRecord: + m_XPlacement: 0 + m_YPlacement: 0 + m_XAdvance: 0 + m_YAdvance: 0 + m_FeatureLookupFlags: 0 + - m_FirstAdjustmentRecord: + m_GlyphIndex: 39 + m_GlyphValueRecord: + m_XPlacement: 0 + m_YPlacement: 0 + m_XAdvance: -4.745117 + m_YAdvance: 0 + m_SecondAdjustmentRecord: + m_GlyphIndex: 34 + m_GlyphValueRecord: + m_XPlacement: 0 + m_YPlacement: 0 + m_XAdvance: 0 + m_YAdvance: 0 + m_FeatureLookupFlags: 0 + - m_FirstAdjustmentRecord: + m_GlyphIndex: 39 + m_GlyphValueRecord: + m_XPlacement: 0 + m_YPlacement: 0 + m_XAdvance: -9.532227 + m_YAdvance: 0 + m_SecondAdjustmentRecord: + m_GlyphIndex: 13 + m_GlyphValueRecord: + m_XPlacement: 0 + m_YPlacement: 0 + m_XAdvance: 0 + m_YAdvance: 0 + m_FeatureLookupFlags: 0 + - m_FirstAdjustmentRecord: + m_GlyphIndex: 39 + m_GlyphValueRecord: + m_XPlacement: 0 + m_YPlacement: 0 + m_XAdvance: -9.532227 + m_YAdvance: 0 + m_SecondAdjustmentRecord: + m_GlyphIndex: 15 + m_GlyphValueRecord: + m_XPlacement: 0 + m_YPlacement: 0 + m_XAdvance: 0 + m_YAdvance: 0 + m_FeatureLookupFlags: 0 + - m_FirstAdjustmentRecord: + m_GlyphIndex: 87 + m_GlyphValueRecord: + m_XPlacement: 0 + m_YPlacement: 0 + m_XAdvance: -6.3828125 + m_YAdvance: 0 + m_SecondAdjustmentRecord: + m_GlyphIndex: 13 + m_GlyphValueRecord: + m_XPlacement: 0 + m_YPlacement: 0 + m_XAdvance: 0 + m_YAdvance: 0 + m_FeatureLookupFlags: 0 + - m_FirstAdjustmentRecord: + m_GlyphIndex: 87 + m_GlyphValueRecord: + m_XPlacement: 0 + m_YPlacement: 0 + m_XAdvance: -6.3828125 + m_YAdvance: 0 + m_SecondAdjustmentRecord: + m_GlyphIndex: 15 + m_GlyphValueRecord: + m_XPlacement: 0 + m_YPlacement: 0 + m_XAdvance: 0 + m_YAdvance: 0 + m_FeatureLookupFlags: 0 + - m_FirstAdjustmentRecord: + m_GlyphIndex: 71 + m_GlyphValueRecord: + m_XPlacement: 0 + m_YPlacement: 0 + m_XAdvance: -1.5537109 + m_YAdvance: 0 + m_SecondAdjustmentRecord: + m_GlyphIndex: 71 + m_GlyphValueRecord: + m_XPlacement: 0 + m_YPlacement: 0 + m_XAdvance: 0 + m_YAdvance: 0 + m_FeatureLookupFlags: 0 + - m_FirstAdjustmentRecord: + m_GlyphIndex: 71 + m_GlyphValueRecord: + m_XPlacement: 0 + m_YPlacement: 0 + m_XAdvance: 1.5537109 + m_YAdvance: 0 + m_SecondAdjustmentRecord: + m_GlyphIndex: 215 + m_GlyphValueRecord: + m_XPlacement: 0 + m_YPlacement: 0 + m_XAdvance: 0 + m_YAdvance: 0 + m_FeatureLookupFlags: 0 + - m_FirstAdjustmentRecord: + m_GlyphIndex: 45 + m_GlyphValueRecord: + m_XPlacement: 0 + m_YPlacement: 0 + m_XAdvance: -3.1914062 + m_YAdvance: 0 + m_SecondAdjustmentRecord: + m_GlyphIndex: 1 + m_GlyphValueRecord: + m_XPlacement: 0 + m_YPlacement: 0 + m_XAdvance: 0 + m_YAdvance: 0 + m_FeatureLookupFlags: 0 + - m_FirstAdjustmentRecord: + m_GlyphIndex: 45 + m_GlyphValueRecord: + m_XPlacement: 0 + m_YPlacement: 0 + m_XAdvance: -6.3828125 + m_YAdvance: 0 + m_SecondAdjustmentRecord: + m_GlyphIndex: 56 + m_GlyphValueRecord: + m_XPlacement: 0 + m_YPlacement: 0 + m_XAdvance: 0 + m_YAdvance: 0 + m_FeatureLookupFlags: 0 + - m_FirstAdjustmentRecord: + m_GlyphIndex: 45 + m_GlyphValueRecord: + m_XPlacement: 0 + m_YPlacement: 0 + m_XAdvance: -6.3828125 + m_YAdvance: 0 + m_SecondAdjustmentRecord: + m_GlyphIndex: 55 + m_GlyphValueRecord: + m_XPlacement: 0 + m_YPlacement: 0 + m_XAdvance: 0 + m_YAdvance: 0 + m_FeatureLookupFlags: 0 + - m_FirstAdjustmentRecord: + m_GlyphIndex: 45 + m_GlyphValueRecord: + m_XPlacement: 0 + m_YPlacement: 0 + m_XAdvance: -6.3828125 + m_YAdvance: 0 + m_SecondAdjustmentRecord: + m_GlyphIndex: 58 + m_GlyphValueRecord: + m_XPlacement: 0 + m_YPlacement: 0 + m_XAdvance: 0 + m_YAdvance: 0 + m_FeatureLookupFlags: 0 + - m_FirstAdjustmentRecord: + m_GlyphIndex: 45 + m_GlyphValueRecord: + m_XPlacement: 0 + m_YPlacement: 0 + m_XAdvance: -6.3828125 + m_YAdvance: 0 + m_SecondAdjustmentRecord: + m_GlyphIndex: 53 + m_GlyphValueRecord: + m_XPlacement: 0 + m_YPlacement: 0 + m_XAdvance: 0 + m_YAdvance: 0 + m_FeatureLookupFlags: 0 + - m_FirstAdjustmentRecord: + m_GlyphIndex: 45 + m_GlyphValueRecord: + m_XPlacement: 0 + m_YPlacement: 0 + m_XAdvance: -3.1914062 + m_YAdvance: 0 + m_SecondAdjustmentRecord: + m_GlyphIndex: 90 + m_GlyphValueRecord: + m_XPlacement: 0 + m_YPlacement: 0 + m_XAdvance: 0 + m_YAdvance: 0 + m_FeatureLookupFlags: 0 + - m_FirstAdjustmentRecord: + m_GlyphIndex: 45 + m_GlyphValueRecord: + m_XPlacement: 0 + m_YPlacement: 0 + m_XAdvance: -4.745117 + m_YAdvance: 0 + m_SecondAdjustmentRecord: + m_GlyphIndex: 215 + m_GlyphValueRecord: + m_XPlacement: 0 + m_YPlacement: 0 + m_XAdvance: 0 + m_YAdvance: 0 + m_FeatureLookupFlags: 0 + - m_FirstAdjustmentRecord: + m_GlyphIndex: 83 + m_GlyphValueRecord: + m_XPlacement: 0 + m_YPlacement: 0 + m_XAdvance: -4.745117 + m_YAdvance: 0 + m_SecondAdjustmentRecord: + m_GlyphIndex: 13 + m_GlyphValueRecord: + m_XPlacement: 0 + m_YPlacement: 0 + m_XAdvance: 0 + m_YAdvance: 0 + m_FeatureLookupFlags: 0 + - m_FirstAdjustmentRecord: + m_GlyphIndex: 83 + m_GlyphValueRecord: + m_XPlacement: 0 + m_YPlacement: 0 + m_XAdvance: -4.745117 + m_YAdvance: 0 + m_SecondAdjustmentRecord: + m_GlyphIndex: 15 + m_GlyphValueRecord: + m_XPlacement: 0 + m_YPlacement: 0 + m_XAdvance: 0 + m_YAdvance: 0 + m_FeatureLookupFlags: 0 + - m_FirstAdjustmentRecord: + m_GlyphIndex: 83 + m_GlyphValueRecord: + m_XPlacement: 0 + m_YPlacement: 0 + m_XAdvance: 3.1914062 + m_YAdvance: 0 + m_SecondAdjustmentRecord: + m_GlyphIndex: 215 + m_GlyphValueRecord: + m_XPlacement: 0 + m_YPlacement: 0 + m_XAdvance: 0 + m_YAdvance: 0 + m_FeatureLookupFlags: 0 + - m_FirstAdjustmentRecord: + m_GlyphIndex: 214 + m_GlyphValueRecord: + m_XPlacement: 0 + m_YPlacement: 0 + m_XAdvance: -1.5537109 + m_YAdvance: 0 + m_SecondAdjustmentRecord: + m_GlyphIndex: 214 + m_GlyphValueRecord: + m_XPlacement: 0 + m_YPlacement: 0 + m_XAdvance: 0 + m_YAdvance: 0 + m_FeatureLookupFlags: 0 + - m_FirstAdjustmentRecord: + m_GlyphIndex: 215 + m_GlyphValueRecord: + m_XPlacement: 0 + m_YPlacement: 0 + m_XAdvance: -3.1914062 + m_YAdvance: 0 + m_SecondAdjustmentRecord: + m_GlyphIndex: 1 + m_GlyphValueRecord: + m_XPlacement: 0 + m_YPlacement: 0 + m_XAdvance: 0 + m_YAdvance: 0 + m_FeatureLookupFlags: 0 + - m_FirstAdjustmentRecord: + m_GlyphIndex: 215 + m_GlyphValueRecord: + m_XPlacement: 0 + m_YPlacement: 0 + m_XAdvance: -1.5537109 + m_YAdvance: 0 + m_SecondAdjustmentRecord: + m_GlyphIndex: 84 + m_GlyphValueRecord: + m_XPlacement: 0 + m_YPlacement: 0 + m_XAdvance: 0 + m_YAdvance: 0 + m_FeatureLookupFlags: 0 + - m_FirstAdjustmentRecord: + m_GlyphIndex: 215 + m_GlyphValueRecord: + m_XPlacement: 0 + m_YPlacement: 0 + m_XAdvance: -1.5537109 + m_YAdvance: 0 + m_SecondAdjustmentRecord: + m_GlyphIndex: 215 + m_GlyphValueRecord: + m_XPlacement: 0 + m_YPlacement: 0 + m_XAdvance: 0 + m_YAdvance: 0 + m_FeatureLookupFlags: 0 + fallbackFontAssets: [] + m_FallbackFontAssetTable: [] + m_CreationSettings: + sourceFontFileName: + sourceFontFileGUID: e3265ab4bf004d28a9537516768c1c75 + pointSizeSamplingMode: 1 + pointSize: 86 + padding: 9 + packingMode: 4 + atlasWidth: 1024 + atlasHeight: 1024 + characterSetSelectionMode: 1 + characterSequence: 32 - 126, 160 - 255, 8192 - 8303, 8364, 8482, 9633 + referencedFontAssetGUID: + referencedTextAssetGUID: + fontStyle: 0 + fontStyleModifier: 2 + renderMode: 7 + includeFontFeatures: 0 + m_FontWeightTable: + - regularTypeface: {fileID: 0} + italicTypeface: {fileID: 0} + - regularTypeface: {fileID: 0} + italicTypeface: {fileID: 0} + - regularTypeface: {fileID: 0} + italicTypeface: {fileID: 0} + - regularTypeface: {fileID: 0} + italicTypeface: {fileID: 0} + - regularTypeface: {fileID: 0} + italicTypeface: {fileID: 0} + - regularTypeface: {fileID: 0} + italicTypeface: {fileID: 0} + - regularTypeface: {fileID: 0} + italicTypeface: {fileID: 0} + - regularTypeface: {fileID: 0} + italicTypeface: {fileID: 0} + - regularTypeface: {fileID: 0} + italicTypeface: {fileID: 0} + - regularTypeface: {fileID: 0} + italicTypeface: {fileID: 0} + fontWeights: + - regularTypeface: {fileID: 0} + italicTypeface: {fileID: 0} + - regularTypeface: {fileID: 0} + italicTypeface: {fileID: 0} + - regularTypeface: {fileID: 0} + italicTypeface: {fileID: 0} + - regularTypeface: {fileID: 0} + italicTypeface: {fileID: 0} + - regularTypeface: {fileID: 0} + italicTypeface: {fileID: 0} + - regularTypeface: {fileID: 0} + italicTypeface: {fileID: 0} + - regularTypeface: {fileID: 0} + italicTypeface: {fileID: 0} + - regularTypeface: {fileID: 0} + italicTypeface: {fileID: 0} + - regularTypeface: {fileID: 0} + italicTypeface: {fileID: 0} + - regularTypeface: {fileID: 0} + italicTypeface: {fileID: 0} + normalStyle: 0 + normalSpacingOffset: 0 + boldStyle: 0.75 + boldSpacing: 7 + italicStyle: 35 + tabSize: 10 diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/TextMesh Pro/Resources/Fonts & Materials/LiberationSans SDF.asset.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/TextMesh Pro/Resources/Fonts & Materials/LiberationSans SDF.asset.meta" new file mode 100644 index 00000000..d52c8a98 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/TextMesh Pro/Resources/Fonts & Materials/LiberationSans SDF.asset.meta" @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 8f586378b4e144a9851e7b34d9b748ee +timeCreated: 1484171803 +licenseType: Store +NativeFormatImporter: + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/TextMesh Pro/Resources/LineBreaking Following Characters.txt" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/TextMesh Pro/Resources/LineBreaking Following Characters.txt" new file mode 100644 index 00000000..a52cc38f --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/TextMesh Pro/Resources/LineBreaking Following Characters.txt" @@ -0,0 +1 @@ +)]}〕〉》」』】〙〗〟’”⦆»ヽヾーァィゥェォッャュョヮヵヶぁぃぅぇぉっゃゅょゎゕゖㇰㇱㇲㇳㇴㇵㇶㇷㇸㇹㇺㇻㇼㇽㇾㇿ々〻‐゠–〜?!‼⁇⁈⁉・、%,.:;。!?]):;=}¢°"†‡℃〆%,. \ No newline at end of file diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/TextMesh Pro/Resources/LineBreaking Following Characters.txt.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/TextMesh Pro/Resources/LineBreaking Following Characters.txt.meta" new file mode 100644 index 00000000..73ed6604 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/TextMesh Pro/Resources/LineBreaking Following Characters.txt.meta" @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: fade42e8bc714b018fac513c043d323b +timeCreated: 1425440388 +licenseType: Store +TextScriptImporter: + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/TextMesh Pro/Resources/LineBreaking Leading Characters.txt" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/TextMesh Pro/Resources/LineBreaking Leading Characters.txt" new file mode 100644 index 00000000..285696e0 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/TextMesh Pro/Resources/LineBreaking Leading Characters.txt" @@ -0,0 +1 @@ +([{〔〈《「『【〘〖〝‘“⦅«$—…‥〳〴〵\[({£¥"々〇〉》」$⦆¥₩ # \ No newline at end of file diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/TextMesh Pro/Resources/LineBreaking Leading Characters.txt.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/TextMesh Pro/Resources/LineBreaking Leading Characters.txt.meta" new file mode 100644 index 00000000..cc684b30 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/TextMesh Pro/Resources/LineBreaking Leading Characters.txt.meta" @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: d82c1b31c7e74239bff1220585707d2b +timeCreated: 1425440388 +licenseType: Store +TextScriptImporter: + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/TextMesh Pro/Resources/Shaders.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/TextMesh Pro/Resources/Shaders.meta" new file mode 100644 index 00000000..63580d8a --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/TextMesh Pro/Resources/Shaders.meta" @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: a6925ee37fbbef54391885cd00b7a6f0 +folderAsset: yes +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/TextMesh Pro/Resources/Shaders/TMP_Bitmap-Custom-Atlas.shader" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/TextMesh Pro/Resources/Shaders/TMP_Bitmap-Custom-Atlas.shader" new file mode 100644 index 00000000..c130a166 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/TextMesh Pro/Resources/Shaders/TMP_Bitmap-Custom-Atlas.shader" @@ -0,0 +1,142 @@ +Shader "TextMeshPro/Bitmap Custom Atlas" { + +Properties { + _MainTex ("Font Atlas", 2D) = "white" {} + _FaceTex ("Font Texture", 2D) = "white" {} + _FaceColor ("Text Color", Color) = (1,1,1,1) + + _VertexOffsetX ("Vertex OffsetX", float) = 0 + _VertexOffsetY ("Vertex OffsetY", float) = 0 + _MaskSoftnessX ("Mask SoftnessX", float) = 0 + _MaskSoftnessY ("Mask SoftnessY", float) = 0 + + _ClipRect("Clip Rect", vector) = (-32767, -32767, 32767, 32767) + _Padding ("Padding", float) = 0 + + _StencilComp("Stencil Comparison", Float) = 8 + _Stencil("Stencil ID", Float) = 0 + _StencilOp("Stencil Operation", Float) = 0 + _StencilWriteMask("Stencil Write Mask", Float) = 255 + _StencilReadMask("Stencil Read Mask", Float) = 255 + + _ColorMask("Color Mask", Float) = 15 +} + +SubShader{ + + Tags { "Queue" = "Transparent" "IgnoreProjector" = "True" "RenderType" = "Transparent" } + + Stencil + { + Ref[_Stencil] + Comp[_StencilComp] + Pass[_StencilOp] + ReadMask[_StencilReadMask] + WriteMask[_StencilWriteMask] + } + + + Lighting Off + Cull [_CullMode] + ZTest [unity_GUIZTestMode] + ZWrite Off + Fog { Mode Off } + Blend SrcAlpha OneMinusSrcAlpha + ColorMask[_ColorMask] + + Pass { + CGPROGRAM + #pragma vertex vert + #pragma fragment frag + + #pragma multi_compile __ UNITY_UI_CLIP_RECT + #pragma multi_compile __ UNITY_UI_ALPHACLIP + + + #include "UnityCG.cginc" + + struct appdata_t { + float4 vertex : POSITION; + fixed4 color : COLOR; + float2 texcoord0 : TEXCOORD0; + float2 texcoord1 : TEXCOORD1; + }; + + struct v2f { + float4 vertex : SV_POSITION; + fixed4 color : COLOR; + float2 texcoord0 : TEXCOORD0; + float2 texcoord1 : TEXCOORD1; + float4 mask : TEXCOORD2; + }; + + uniform sampler2D _MainTex; + uniform sampler2D _FaceTex; + uniform float4 _FaceTex_ST; + uniform fixed4 _FaceColor; + + uniform float _VertexOffsetX; + uniform float _VertexOffsetY; + uniform float4 _ClipRect; + uniform float _MaskSoftnessX; + uniform float _MaskSoftnessY; + + float2 UnpackUV(float uv) + { + float2 output; + output.x = floor(uv / 4096); + output.y = uv - 4096 * output.x; + + return output * 0.001953125; + } + + v2f vert (appdata_t v) + { + float4 vert = v.vertex; + vert.x += _VertexOffsetX; + vert.y += _VertexOffsetY; + + vert.xy += (vert.w * 0.5) / _ScreenParams.xy; + + float4 vPosition = UnityPixelSnap(UnityObjectToClipPos(vert)); + + fixed4 faceColor = v.color; + faceColor *= _FaceColor; + + v2f OUT; + OUT.vertex = vPosition; + OUT.color = faceColor; + OUT.texcoord0 = v.texcoord0; + OUT.texcoord1 = TRANSFORM_TEX(UnpackUV(v.texcoord1), _FaceTex); + float2 pixelSize = vPosition.w; + pixelSize /= abs(float2(_ScreenParams.x * UNITY_MATRIX_P[0][0], _ScreenParams.y * UNITY_MATRIX_P[1][1])); + + // Clamp _ClipRect to 16bit. + float4 clampedRect = clamp(_ClipRect, -2e10, 2e10); + OUT.mask = float4(vert.xy * 2 - clampedRect.xy - clampedRect.zw, 0.25 / (0.25 * half2(_MaskSoftnessX, _MaskSoftnessY) + pixelSize.xy)); + + return OUT; + } + + fixed4 frag (v2f IN) : SV_Target + { + fixed4 color = tex2D(_MainTex, IN.texcoord0) * tex2D(_FaceTex, IN.texcoord1) * IN.color; + + // Alternative implementation to UnityGet2DClipping with support for softness. + #if UNITY_UI_CLIP_RECT + half2 m = saturate((_ClipRect.zw - _ClipRect.xy - abs(IN.mask.xy)) * IN.mask.zw); + color *= m.x * m.y; + #endif + + #if UNITY_UI_ALPHACLIP + clip(color.a - 0.001); + #endif + + return color; + } + ENDCG + } +} + + CustomEditor "TMPro.EditorUtilities.TMP_BitmapShaderGUI" +} diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/TextMesh Pro/Resources/Shaders/TMP_Bitmap-Custom-Atlas.shader.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/TextMesh Pro/Resources/Shaders/TMP_Bitmap-Custom-Atlas.shader.meta" new file mode 100644 index 00000000..ffea03c2 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/TextMesh Pro/Resources/Shaders/TMP_Bitmap-Custom-Atlas.shader.meta" @@ -0,0 +1,7 @@ +fileFormatVersion: 2 +guid: 48bb5f55d8670e349b6e614913f9d910 +ShaderImporter: + defaultTextures: [] + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/TextMesh Pro/Resources/Shaders/TMP_Bitmap-Mobile.shader" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/TextMesh Pro/Resources/Shaders/TMP_Bitmap-Mobile.shader" new file mode 100644 index 00000000..1517a122 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/TextMesh Pro/Resources/Shaders/TMP_Bitmap-Mobile.shader" @@ -0,0 +1,144 @@ +Shader "TextMeshPro/Mobile/Bitmap" { + +Properties { + _MainTex ("Font Atlas", 2D) = "white" {} + _Color ("Text Color", Color) = (1,1,1,1) + _DiffusePower ("Diffuse Power", Range(1.0,4.0)) = 1.0 + + _VertexOffsetX("Vertex OffsetX", float) = 0 + _VertexOffsetY("Vertex OffsetY", float) = 0 + _MaskSoftnessX("Mask SoftnessX", float) = 0 + _MaskSoftnessY("Mask SoftnessY", float) = 0 + + _ClipRect("Clip Rect", vector) = (-32767, -32767, 32767, 32767) + + _StencilComp("Stencil Comparison", Float) = 8 + _Stencil("Stencil ID", Float) = 0 + _StencilOp("Stencil Operation", Float) = 0 + _StencilWriteMask("Stencil Write Mask", Float) = 255 + _StencilReadMask("Stencil Read Mask", Float) = 255 + + _ColorMask("Color Mask", Float) = 15 +} + +SubShader { + + Tags { "Queue"="Transparent" "IgnoreProjector"="True" "RenderType"="Transparent" } + + Stencil + { + Ref[_Stencil] + Comp[_StencilComp] + Pass[_StencilOp] + ReadMask[_StencilReadMask] + WriteMask[_StencilWriteMask] + } + + + Lighting Off + Cull Off + ZTest [unity_GUIZTestMode] + ZWrite Off + Fog { Mode Off } + Blend SrcAlpha OneMinusSrcAlpha + ColorMask[_ColorMask] + + Pass { + CGPROGRAM + #pragma vertex vert + #pragma fragment frag + #pragma fragmentoption ARB_precision_hint_fastest + + #pragma multi_compile __ UNITY_UI_CLIP_RECT + #pragma multi_compile __ UNITY_UI_ALPHACLIP + + + #include "UnityCG.cginc" + + struct appdata_t { + float4 vertex : POSITION; + fixed4 color : COLOR; + float2 texcoord0 : TEXCOORD0; + float2 texcoord1 : TEXCOORD1; + }; + + struct v2f { + float4 vertex : POSITION; + fixed4 color : COLOR; + float2 texcoord0 : TEXCOORD0; + float4 mask : TEXCOORD2; + }; + + sampler2D _MainTex; + fixed4 _Color; + float _DiffusePower; + + uniform float _VertexOffsetX; + uniform float _VertexOffsetY; + uniform float4 _ClipRect; + uniform float _MaskSoftnessX; + uniform float _MaskSoftnessY; + + v2f vert (appdata_t v) + { + v2f OUT; + float4 vert = v.vertex; + vert.x += _VertexOffsetX; + vert.y += _VertexOffsetY; + + vert.xy += (vert.w * 0.5) / _ScreenParams.xy; + + OUT.vertex = UnityPixelSnap(UnityObjectToClipPos(vert)); + OUT.color = v.color; + OUT.color *= _Color; + OUT.color.rgb *= _DiffusePower; + OUT.texcoord0 = v.texcoord0; + + float2 pixelSize = OUT.vertex.w; + //pixelSize /= abs(float2(_ScreenParams.x * UNITY_MATRIX_P[0][0], _ScreenParams.y * UNITY_MATRIX_P[1][1])); + + // Clamp _ClipRect to 16bit. + float4 clampedRect = clamp(_ClipRect, -2e10, 2e10); + OUT.mask = float4(vert.xy * 2 - clampedRect.xy - clampedRect.zw, 0.25 / (0.25 * half2(_MaskSoftnessX, _MaskSoftnessY) + pixelSize.xy)); + + return OUT; + } + + fixed4 frag (v2f IN) : COLOR + { + fixed4 color = fixed4(IN.color.rgb, IN.color.a * tex2D(_MainTex, IN.texcoord0).a); + + // Alternative implementation to UnityGet2DClipping with support for softness. + #if UNITY_UI_CLIP_RECT + half2 m = saturate((_ClipRect.zw - _ClipRect.xy - abs(IN.mask.xy)) * IN.mask.zw); + color *= m.x * m.y; + #endif + + #if UNITY_UI_ALPHACLIP + clip(color.a - 0.001); + #endif + + return color; + } + ENDCG + } +} + +SubShader { + Tags { "Queue"="Transparent" "IgnoreProjector"="True" "RenderType"="Transparent" } + Lighting Off Cull Off ZTest Always ZWrite Off Fog { Mode Off } + Blend SrcAlpha OneMinusSrcAlpha + BindChannels { + Bind "Color", color + Bind "Vertex", vertex + Bind "TexCoord", texcoord0 + } + Pass { + SetTexture [_MainTex] { + constantColor [_Color] combine constant * primary, constant * texture + } + } +} + +CustomEditor "TMPro.EditorUtilities.TMP_BitmapShaderGUI" +} diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/TextMesh Pro/Resources/Shaders/TMP_Bitmap-Mobile.shader.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/TextMesh Pro/Resources/Shaders/TMP_Bitmap-Mobile.shader.meta" new file mode 100644 index 00000000..8d516c0b --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/TextMesh Pro/Resources/Shaders/TMP_Bitmap-Mobile.shader.meta" @@ -0,0 +1,7 @@ +fileFormatVersion: 2 +guid: 1e3b057af24249748ff873be7fafee47 +ShaderImporter: + defaultTextures: [] + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/TextMesh Pro/Resources/Shaders/TMP_Bitmap.shader" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/TextMesh Pro/Resources/Shaders/TMP_Bitmap.shader" new file mode 100644 index 00000000..f4e324ad --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/TextMesh Pro/Resources/Shaders/TMP_Bitmap.shader" @@ -0,0 +1,142 @@ +Shader "TextMeshPro/Bitmap" { + +Properties { + _MainTex ("Font Atlas", 2D) = "white" {} + _FaceTex ("Font Texture", 2D) = "white" {} + _FaceColor ("Text Color", Color) = (1,1,1,1) + + _VertexOffsetX ("Vertex OffsetX", float) = 0 + _VertexOffsetY ("Vertex OffsetY", float) = 0 + _MaskSoftnessX ("Mask SoftnessX", float) = 0 + _MaskSoftnessY ("Mask SoftnessY", float) = 0 + + _ClipRect("Clip Rect", vector) = (-32767, -32767, 32767, 32767) + + _StencilComp("Stencil Comparison", Float) = 8 + _Stencil("Stencil ID", Float) = 0 + _StencilOp("Stencil Operation", Float) = 0 + _StencilWriteMask("Stencil Write Mask", Float) = 255 + _StencilReadMask("Stencil Read Mask", Float) = 255 + + _ColorMask("Color Mask", Float) = 15 +} + +SubShader{ + + Tags { "Queue" = "Transparent" "IgnoreProjector" = "True" "RenderType" = "Transparent" } + + Stencil + { + Ref[_Stencil] + Comp[_StencilComp] + Pass[_StencilOp] + ReadMask[_StencilReadMask] + WriteMask[_StencilWriteMask] + } + + + Lighting Off + Cull [_CullMode] + ZTest [unity_GUIZTestMode] + ZWrite Off + Fog { Mode Off } + Blend SrcAlpha OneMinusSrcAlpha + ColorMask[_ColorMask] + + Pass { + CGPROGRAM + #pragma vertex vert + #pragma fragment frag + + #pragma multi_compile __ UNITY_UI_CLIP_RECT + #pragma multi_compile __ UNITY_UI_ALPHACLIP + + + #include "UnityCG.cginc" + + struct appdata_t { + float4 vertex : POSITION; + fixed4 color : COLOR; + float2 texcoord0 : TEXCOORD0; + float2 texcoord1 : TEXCOORD1; + }; + + struct v2f { + float4 vertex : SV_POSITION; + fixed4 color : COLOR; + float2 texcoord0 : TEXCOORD0; + float2 texcoord1 : TEXCOORD1; + float4 mask : TEXCOORD2; + }; + + uniform sampler2D _MainTex; + uniform sampler2D _FaceTex; + uniform float4 _FaceTex_ST; + uniform fixed4 _FaceColor; + + uniform float _VertexOffsetX; + uniform float _VertexOffsetY; + uniform float4 _ClipRect; + uniform float _MaskSoftnessX; + uniform float _MaskSoftnessY; + + float2 UnpackUV(float uv) + { + float2 output; + output.x = floor(uv / 4096); + output.y = uv - 4096 * output.x; + + return output * 0.001953125; + } + + v2f vert (appdata_t v) + { + float4 vert = v.vertex; + vert.x += _VertexOffsetX; + vert.y += _VertexOffsetY; + + vert.xy += (vert.w * 0.5) / _ScreenParams.xy; + + float4 vPosition = UnityPixelSnap(UnityObjectToClipPos(vert)); + + fixed4 faceColor = v.color; + faceColor *= _FaceColor; + + v2f OUT; + OUT.vertex = vPosition; + OUT.color = faceColor; + OUT.texcoord0 = v.texcoord0; + OUT.texcoord1 = TRANSFORM_TEX(UnpackUV(v.texcoord1), _FaceTex); + float2 pixelSize = vPosition.w; + pixelSize /= abs(float2(_ScreenParams.x * UNITY_MATRIX_P[0][0], _ScreenParams.y * UNITY_MATRIX_P[1][1])); + + // Clamp _ClipRect to 16bit. + float4 clampedRect = clamp(_ClipRect, -2e10, 2e10); + OUT.mask = float4(vert.xy * 2 - clampedRect.xy - clampedRect.zw, 0.25 / (0.25 * half2(_MaskSoftnessX, _MaskSoftnessY) + pixelSize.xy)); + + return OUT; + } + + fixed4 frag (v2f IN) : SV_Target + { + fixed4 color = tex2D(_MainTex, IN.texcoord0); + color = fixed4 (tex2D(_FaceTex, IN.texcoord1).rgb * IN.color.rgb, IN.color.a * color.a); + + // Alternative implementation to UnityGet2DClipping with support for softness. + #if UNITY_UI_CLIP_RECT + half2 m = saturate((_ClipRect.zw - _ClipRect.xy - abs(IN.mask.xy)) * IN.mask.zw); + color *= m.x * m.y; + #endif + + #if UNITY_UI_ALPHACLIP + clip(color.a - 0.001); + #endif + + return color; + } + ENDCG + } +} + + CustomEditor "TMPro.EditorUtilities.TMP_BitmapShaderGUI" +} diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/TextMesh Pro/Resources/Shaders/TMP_Bitmap.shader.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/TextMesh Pro/Resources/Shaders/TMP_Bitmap.shader.meta" new file mode 100644 index 00000000..2d5438f6 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/TextMesh Pro/Resources/Shaders/TMP_Bitmap.shader.meta" @@ -0,0 +1,7 @@ +fileFormatVersion: 2 +guid: 128e987d567d4e2c824d754223b3f3b0 +ShaderImporter: + defaultTextures: [] + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/TextMesh Pro/Resources/Shaders/TMP_SDF Overlay.shader" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/TextMesh Pro/Resources/Shaders/TMP_SDF Overlay.shader" new file mode 100644 index 00000000..8c461cf8 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/TextMesh Pro/Resources/Shaders/TMP_SDF Overlay.shader" @@ -0,0 +1,304 @@ +Shader "TextMeshPro/Distance Field Overlay" { + +Properties { + _FaceTex ("Face Texture", 2D) = "white" {} + _FaceUVSpeedX ("Face UV Speed X", Range(-5, 5)) = 0.0 + _FaceUVSpeedY ("Face UV Speed Y", Range(-5, 5)) = 0.0 + _FaceColor ("Face Color", Color) = (1,1,1,1) + _FaceDilate ("Face Dilate", Range(-1,1)) = 0 + + _OutlineColor ("Outline Color", Color) = (0,0,0,1) + _OutlineTex ("Outline Texture", 2D) = "white" {} + _OutlineUVSpeedX ("Outline UV Speed X", Range(-5, 5)) = 0.0 + _OutlineUVSpeedY ("Outline UV Speed Y", Range(-5, 5)) = 0.0 + _OutlineWidth ("Outline Thickness", Range(0, 1)) = 0 + _OutlineSoftness ("Outline Softness", Range(0,1)) = 0 + + _Bevel ("Bevel", Range(0,1)) = 0.5 + _BevelOffset ("Bevel Offset", Range(-0.5,0.5)) = 0 + _BevelWidth ("Bevel Width", Range(-.5,0.5)) = 0 + _BevelClamp ("Bevel Clamp", Range(0,1)) = 0 + _BevelRoundness ("Bevel Roundness", Range(0,1)) = 0 + + _LightAngle ("Light Angle", Range(0.0, 6.2831853)) = 3.1416 + _SpecularColor ("Specular", Color) = (1,1,1,1) + _SpecularPower ("Specular", Range(0,4)) = 2.0 + _Reflectivity ("Reflectivity", Range(5.0,15.0)) = 10 + _Diffuse ("Diffuse", Range(0,1)) = 0.5 + _Ambient ("Ambient", Range(1,0)) = 0.5 + + _BumpMap ("Normal map", 2D) = "bump" {} + _BumpOutline ("Bump Outline", Range(0,1)) = 0 + _BumpFace ("Bump Face", Range(0,1)) = 0 + + _ReflectFaceColor ("Reflection Color", Color) = (0,0,0,1) + _ReflectOutlineColor("Reflection Color", Color) = (0,0,0,1) + _Cube ("Reflection Cubemap", Cube) = "black" { /* TexGen CubeReflect */ } + _EnvMatrixRotation ("Texture Rotation", vector) = (0, 0, 0, 0) + + + _UnderlayColor ("Border Color", Color) = (0,0,0, 0.5) + _UnderlayOffsetX ("Border OffsetX", Range(-1,1)) = 0 + _UnderlayOffsetY ("Border OffsetY", Range(-1,1)) = 0 + _UnderlayDilate ("Border Dilate", Range(-1,1)) = 0 + _UnderlaySoftness ("Border Softness", Range(0,1)) = 0 + + _GlowColor ("Color", Color) = (0, 1, 0, 0.5) + _GlowOffset ("Offset", Range(-1,1)) = 0 + _GlowInner ("Inner", Range(0,1)) = 0.05 + _GlowOuter ("Outer", Range(0,1)) = 0.05 + _GlowPower ("Falloff", Range(1, 0)) = 0.75 + + _WeightNormal ("Weight Normal", float) = 0 + _WeightBold ("Weight Bold", float) = 0.5 + + _ShaderFlags ("Flags", float) = 0 + _ScaleRatioA ("Scale RatioA", float) = 1 + _ScaleRatioB ("Scale RatioB", float) = 1 + _ScaleRatioC ("Scale RatioC", float) = 1 + + _MainTex ("Font Atlas", 2D) = "white" {} + _TextureWidth ("Texture Width", float) = 512 + _TextureHeight ("Texture Height", float) = 512 + _GradientScale ("Gradient Scale", float) = 5.0 + _ScaleX ("Scale X", float) = 1.0 + _ScaleY ("Scale Y", float) = 1.0 + _PerspectiveFilter ("Perspective Correction", Range(0, 1)) = 0.875 + + _VertexOffsetX ("Vertex OffsetX", float) = 0 + _VertexOffsetY ("Vertex OffsetY", float) = 0 + + _MaskCoord ("Mask Coordinates", vector) = (0, 0, 32767, 32767) + _ClipRect ("Clip Rect", vector) = (-32767, -32767, 32767, 32767) + _MaskSoftnessX ("Mask SoftnessX", float) = 0 + _MaskSoftnessY ("Mask SoftnessY", float) = 0 + + _StencilComp ("Stencil Comparison", Float) = 8 + _Stencil ("Stencil ID", Float) = 0 + _StencilOp ("Stencil Operation", Float) = 0 + _StencilWriteMask ("Stencil Write Mask", Float) = 255 + _StencilReadMask ("Stencil Read Mask", Float) = 255 + + _ColorMask ("Color Mask", Float) = 15 +} + +SubShader { + + Tags + { + "Queue"="Overlay" + "IgnoreProjector"="True" + "RenderType"="Transparent" + } + + Stencil + { + Ref [_Stencil] + Comp [_StencilComp] + Pass [_StencilOp] + ReadMask [_StencilReadMask] + WriteMask [_StencilWriteMask] + } + + Cull [_CullMode] + ZWrite Off + Lighting Off + Fog { Mode Off } + ZTest Always + Blend One OneMinusSrcAlpha + ColorMask [_ColorMask] + + Pass { + CGPROGRAM + #pragma target 3.0 + #pragma vertex VertShader + #pragma fragment PixShader + #pragma shader_feature __ BEVEL_ON + #pragma shader_feature __ UNDERLAY_ON UNDERLAY_INNER + #pragma shader_feature __ GLOW_ON + + #pragma multi_compile __ UNITY_UI_CLIP_RECT + #pragma multi_compile __ UNITY_UI_ALPHACLIP + + + #include "UnityCG.cginc" + #include "UnityUI.cginc" + #include "TMPro_Properties.cginc" + #include "TMPro.cginc" + + struct vertex_t { + float4 position : POSITION; + float3 normal : NORMAL; + fixed4 color : COLOR; + float2 texcoord0 : TEXCOORD0; + float2 texcoord1 : TEXCOORD1; + }; + + + struct pixel_t { + float4 position : SV_POSITION; + fixed4 color : COLOR; + float2 atlas : TEXCOORD0; // Atlas + float4 param : TEXCOORD1; // alphaClip, scale, bias, weight + float4 mask : TEXCOORD2; // Position in object space(xy), pixel Size(zw) + float3 viewDir : TEXCOORD3; + + #if (UNDERLAY_ON || UNDERLAY_INNER) + float4 texcoord2 : TEXCOORD4; // u,v, scale, bias + fixed4 underlayColor : COLOR1; + #endif + float4 textures : TEXCOORD5; + }; + + // Used by Unity internally to handle Texture Tiling and Offset. + float4 _FaceTex_ST; + float4 _OutlineTex_ST; + + pixel_t VertShader(vertex_t input) + { + float bold = step(input.texcoord1.y, 0); + + float4 vert = input.position; + vert.x += _VertexOffsetX; + vert.y += _VertexOffsetY; + float4 vPosition = UnityObjectToClipPos(vert); + + float2 pixelSize = vPosition.w; + pixelSize /= float2(_ScaleX, _ScaleY) * abs(mul((float2x2)UNITY_MATRIX_P, _ScreenParams.xy)); + float scale = rsqrt(dot(pixelSize, pixelSize)); + scale *= abs(input.texcoord1.y) * _GradientScale * 1.5; + if (UNITY_MATRIX_P[3][3] == 0) scale = lerp(abs(scale) * (1 - _PerspectiveFilter), scale, abs(dot(UnityObjectToWorldNormal(input.normal.xyz), normalize(WorldSpaceViewDir(vert))))); + + float weight = lerp(_WeightNormal, _WeightBold, bold) / 4.0; + weight = (weight + _FaceDilate) * _ScaleRatioA * 0.5; + + float bias =(.5 - weight) + (.5 / scale); + + float alphaClip = (1.0 - _OutlineWidth*_ScaleRatioA - _OutlineSoftness*_ScaleRatioA); + + #if GLOW_ON + alphaClip = min(alphaClip, 1.0 - _GlowOffset * _ScaleRatioB - _GlowOuter * _ScaleRatioB); + #endif + + alphaClip = alphaClip / 2.0 - ( .5 / scale) - weight; + + #if (UNDERLAY_ON || UNDERLAY_INNER) + float4 underlayColor = _UnderlayColor; + underlayColor.rgb *= underlayColor.a; + + float bScale = scale; + bScale /= 1 + ((_UnderlaySoftness*_ScaleRatioC) * bScale); + float bBias = (0.5 - weight) * bScale - 0.5 - ((_UnderlayDilate * _ScaleRatioC) * 0.5 * bScale); + + float x = -(_UnderlayOffsetX * _ScaleRatioC) * _GradientScale / _TextureWidth; + float y = -(_UnderlayOffsetY * _ScaleRatioC) * _GradientScale / _TextureHeight; + float2 bOffset = float2(x, y); + #endif + + // Generate UV for the Masking Texture + float4 clampedRect = clamp(_ClipRect, -2e10, 2e10); + float2 maskUV = (vert.xy - clampedRect.xy) / (clampedRect.zw - clampedRect.xy); + + // Support for texture tiling and offset + float2 textureUV = UnpackUV(input.texcoord1.x); + float2 faceUV = TRANSFORM_TEX(textureUV, _FaceTex); + float2 outlineUV = TRANSFORM_TEX(textureUV, _OutlineTex); + + pixel_t output = { + vPosition, + input.color, + input.texcoord0, + float4(alphaClip, scale, bias, weight), + half4(vert.xy * 2 - clampedRect.xy - clampedRect.zw, 0.25 / (0.25 * half2(_MaskSoftnessX, _MaskSoftnessY) + pixelSize.xy)), + mul((float3x3)_EnvMatrix, _WorldSpaceCameraPos.xyz - mul(unity_ObjectToWorld, vert).xyz), + #if (UNDERLAY_ON || UNDERLAY_INNER) + float4(input.texcoord0 + bOffset, bScale, bBias), + underlayColor, + #endif + float4(faceUV, outlineUV), + }; + + return output; + } + + + fixed4 PixShader(pixel_t input) : SV_Target + { + float c = tex2D(_MainTex, input.atlas).a; + + #ifndef UNDERLAY_ON + clip(c - input.param.x); + #endif + + float scale = input.param.y; + float bias = input.param.z; + float weight = input.param.w; + float sd = (bias - c) * scale; + + float outline = (_OutlineWidth * _ScaleRatioA) * scale; + float softness = (_OutlineSoftness * _ScaleRatioA) * scale; + + half4 faceColor = _FaceColor; + half4 outlineColor = _OutlineColor; + + faceColor.rgb *= input.color.rgb; + + faceColor *= tex2D(_FaceTex, input.textures.xy + float2(_FaceUVSpeedX, _FaceUVSpeedY) * _Time.y); + outlineColor *= tex2D(_OutlineTex, input.textures.zw + float2(_OutlineUVSpeedX, _OutlineUVSpeedY) * _Time.y); + + faceColor = GetColor(sd, faceColor, outlineColor, outline, softness); + + #if BEVEL_ON + float3 dxy = float3(0.5 / _TextureWidth, 0.5 / _TextureHeight, 0); + float3 n = GetSurfaceNormal(input.atlas, weight, dxy); + + float3 bump = UnpackNormal(tex2D(_BumpMap, input.textures.xy + float2(_FaceUVSpeedX, _FaceUVSpeedY) * _Time.y)).xyz; + bump *= lerp(_BumpFace, _BumpOutline, saturate(sd + outline * 0.5)); + n = normalize(n- bump); + + float3 light = normalize(float3(sin(_LightAngle), cos(_LightAngle), -1.0)); + + float3 col = GetSpecular(n, light); + faceColor.rgb += col*faceColor.a; + faceColor.rgb *= 1-(dot(n, light)*_Diffuse); + faceColor.rgb *= lerp(_Ambient, 1, n.z*n.z); + + fixed4 reflcol = texCUBE(_Cube, reflect(input.viewDir, -n)); + faceColor.rgb += reflcol.rgb * lerp(_ReflectFaceColor.rgb, _ReflectOutlineColor.rgb, saturate(sd + outline * 0.5)) * faceColor.a; + #endif + + #if UNDERLAY_ON + float d = tex2D(_MainTex, input.texcoord2.xy).a * input.texcoord2.z; + faceColor += input.underlayColor * saturate(d - input.texcoord2.w) * (1 - faceColor.a); + #endif + + #if UNDERLAY_INNER + float d = tex2D(_MainTex, input.texcoord2.xy).a * input.texcoord2.z; + faceColor += input.underlayColor * (1 - saturate(d - input.texcoord2.w)) * saturate(1 - sd) * (1 - faceColor.a); + #endif + + #if GLOW_ON + float4 glowColor = GetGlowColor(sd, scale); + faceColor.rgb += glowColor.rgb * glowColor.a; + #endif + + // Alternative implementation to UnityGet2DClipping with support for softness. + #if UNITY_UI_CLIP_RECT + half2 m = saturate((_ClipRect.zw - _ClipRect.xy - abs(input.mask.xy)) * input.mask.zw); + faceColor *= m.x * m.y; + #endif + + #if UNITY_UI_ALPHACLIP + clip(faceColor.a - 0.001); + #endif + + return faceColor * input.color.a; + } + + ENDCG + } +} + +Fallback "TextMeshPro/Mobile/Distance Field" +CustomEditor "TMPro.EditorUtilities.TMP_SDFShaderGUI" +} diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/TextMesh Pro/Resources/Shaders/TMP_SDF Overlay.shader.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/TextMesh Pro/Resources/Shaders/TMP_SDF Overlay.shader.meta" new file mode 100644 index 00000000..6c8679f4 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/TextMesh Pro/Resources/Shaders/TMP_SDF Overlay.shader.meta" @@ -0,0 +1,7 @@ +fileFormatVersion: 2 +guid: dd89cf5b9246416f84610a006f916af7 +ShaderImporter: + defaultTextures: [] + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/TextMesh Pro/Resources/Shaders/TMP_SDF-Mobile Masking.shader" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/TextMesh Pro/Resources/Shaders/TMP_SDF-Mobile Masking.shader" new file mode 100644 index 00000000..8dd81a31 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/TextMesh Pro/Resources/Shaders/TMP_SDF-Mobile Masking.shader" @@ -0,0 +1,245 @@ +// Simplified SDF shader: +// - No Shading Option (bevel / bump / env map) +// - No Glow Option +// - Softness is applied on both side of the outline + +Shader "TextMeshPro/Mobile/Distance Field - Masking" { + +Properties { + _FaceColor ("Face Color", Color) = (1,1,1,1) + _FaceDilate ("Face Dilate", Range(-1,1)) = 0 + + _OutlineColor ("Outline Color", Color) = (0,0,0,1) + _OutlineWidth ("Outline Thickness", Range(0,1)) = 0 + _OutlineSoftness ("Outline Softness", Range(0,1)) = 0 + + _UnderlayColor ("Border Color", Color) = (0,0,0,.5) + _UnderlayOffsetX ("Border OffsetX", Range(-1,1)) = 0 + _UnderlayOffsetY ("Border OffsetY", Range(-1,1)) = 0 + _UnderlayDilate ("Border Dilate", Range(-1,1)) = 0 + _UnderlaySoftness ("Border Softness", Range(0,1)) = 0 + + _WeightNormal ("Weight Normal", float) = 0 + _WeightBold ("Weight Bold", float) = .5 + + _ShaderFlags ("Flags", float) = 0 + _ScaleRatioA ("Scale RatioA", float) = 1 + _ScaleRatioB ("Scale RatioB", float) = 1 + _ScaleRatioC ("Scale RatioC", float) = 1 + + _MainTex ("Font Atlas", 2D) = "white" {} + _TextureWidth ("Texture Width", float) = 512 + _TextureHeight ("Texture Height", float) = 512 + _GradientScale ("Gradient Scale", float) = 5 + _ScaleX ("Scale X", float) = 1 + _ScaleY ("Scale Y", float) = 1 + _PerspectiveFilter ("Perspective Correction", Range(0, 1)) = 0.875 + + _VertexOffsetX ("Vertex OffsetX", float) = 0 + _VertexOffsetY ("Vertex OffsetY", float) = 0 + + _ClipRect ("Clip Rect", vector) = (-32767, -32767, 32767, 32767) + _MaskSoftnessX ("Mask SoftnessX", float) = 0 + _MaskSoftnessY ("Mask SoftnessY", float) = 0 + _MaskTex ("Mask Texture", 2D) = "white" {} + _MaskInverse ("Inverse", float) = 0 + _MaskEdgeColor ("Edge Color", Color) = (1,1,1,1) + _MaskEdgeSoftness ("Edge Softness", Range(0, 1)) = 0.01 + _MaskWipeControl ("Wipe Position", Range(0, 1)) = 0.5 + + _StencilComp ("Stencil Comparison", Float) = 8 + _Stencil ("Stencil ID", Float) = 0 + _StencilOp ("Stencil Operation", Float) = 0 + _StencilWriteMask ("Stencil Write Mask", Float) = 255 + _StencilReadMask ("Stencil Read Mask", Float) = 255 + + _ColorMask ("Color Mask", Float) = 15 +} + +SubShader { + Tags + { + "Queue"="Transparent" + "IgnoreProjector"="True" + "RenderType"="Transparent" + } + + + Stencil + { + Ref [_Stencil] + Comp [_StencilComp] + Pass [_StencilOp] + ReadMask [_StencilReadMask] + WriteMask [_StencilWriteMask] + } + + Cull [_CullMode] + ZWrite Off + Lighting Off + Fog { Mode Off } + ZTest [unity_GUIZTestMode] + Blend One OneMinusSrcAlpha + ColorMask [_ColorMask] + + Pass { + CGPROGRAM + #pragma vertex VertShader + #pragma fragment PixShader + #pragma shader_feature __ OUTLINE_ON + #pragma shader_feature __ UNDERLAY_ON UNDERLAY_INNER + + #pragma multi_compile __ UNITY_UI_CLIP_RECT + #pragma multi_compile __ UNITY_UI_ALPHACLIP + + + #include "UnityCG.cginc" + #include "UnityUI.cginc" + #include "TMPro_Properties.cginc" + + struct vertex_t { + float4 vertex : POSITION; + float3 normal : NORMAL; + fixed4 color : COLOR; + float2 texcoord0 : TEXCOORD0; + float2 texcoord1 : TEXCOORD1; + }; + + struct pixel_t { + float4 vertex : SV_POSITION; + fixed4 faceColor : COLOR; + fixed4 outlineColor : COLOR1; + float4 texcoord0 : TEXCOORD0; // Texture UV, Mask UV + half4 param : TEXCOORD1; // Scale(x), BiasIn(y), BiasOut(z), Bias(w) + half4 mask : TEXCOORD2; // Position in clip space(xy), Softness(zw) + #if (UNDERLAY_ON | UNDERLAY_INNER) + float4 texcoord1 : TEXCOORD3; // Texture UV, alpha, reserved + half2 underlayParam : TEXCOORD4; // Scale(x), Bias(y) + #endif + }; + + float _MaskWipeControl; + float _MaskEdgeSoftness; + fixed4 _MaskEdgeColor; + bool _MaskInverse; + + pixel_t VertShader(vertex_t input) + { + float bold = step(input.texcoord1.y, 0); + + float4 vert = input.vertex; + vert.x += _VertexOffsetX; + vert.y += _VertexOffsetY; + float4 vPosition = UnityObjectToClipPos(vert); + + float2 pixelSize = vPosition.w; + pixelSize /= float2(_ScaleX, _ScaleY) * abs(mul((float2x2)UNITY_MATRIX_P, _ScreenParams.xy)); + + float scale = rsqrt(dot(pixelSize, pixelSize)); + scale *= abs(input.texcoord1.y) * _GradientScale * 1.5; + if(UNITY_MATRIX_P[3][3] == 0) scale = lerp(abs(scale) * (1 - _PerspectiveFilter), scale, abs(dot(UnityObjectToWorldNormal(input.normal.xyz), normalize(WorldSpaceViewDir(vert))))); + + float weight = lerp(_WeightNormal, _WeightBold, bold) / 4.0; + weight = (weight + _FaceDilate) * _ScaleRatioA * 0.5; + + float layerScale = scale; + + scale /= 1 + (_OutlineSoftness * _ScaleRatioA * scale); + float bias = (0.5 - weight) * scale - 0.5; + float outline = _OutlineWidth * _ScaleRatioA * 0.5 * scale; + + float opacity = input.color.a; + #if (UNDERLAY_ON | UNDERLAY_INNER) + opacity = 1.0; + #endif + + fixed4 faceColor = fixed4(input.color.rgb, opacity) * _FaceColor; + faceColor.rgb *= faceColor.a; + + fixed4 outlineColor = _OutlineColor; + outlineColor.a *= opacity; + outlineColor.rgb *= outlineColor.a; + outlineColor = lerp(faceColor, outlineColor, sqrt(min(1.0, (outline * 2)))); + + #if (UNDERLAY_ON | UNDERLAY_INNER) + + layerScale /= 1 + ((_UnderlaySoftness * _ScaleRatioC) * layerScale); + float layerBias = (.5 - weight) * layerScale - .5 - ((_UnderlayDilate * _ScaleRatioC) * .5 * layerScale); + + float x = -(_UnderlayOffsetX * _ScaleRatioC) * _GradientScale / _TextureWidth; + float y = -(_UnderlayOffsetY * _ScaleRatioC) * _GradientScale / _TextureHeight; + float2 layerOffset = float2(x, y); + #endif + + // Generate UV for the Masking Texture + float4 clampedRect = clamp(_ClipRect, -2e10, 2e10); + float2 maskUV = (vert.xy - clampedRect.xy) / (clampedRect.zw - clampedRect.xy); + + // Structure for pixel shader + pixel_t output = { + vPosition, + faceColor, + outlineColor, + float4(input.texcoord0.x, input.texcoord0.y, maskUV.x, maskUV.y), + half4(scale, bias - outline, bias + outline, bias), + half4(vert.xy * 2 - clampedRect.xy - clampedRect.zw, 0.25 / (0.25 * half2(_MaskSoftnessX, _MaskSoftnessY) + pixelSize.xy)), + #if (UNDERLAY_ON | UNDERLAY_INNER) + float4(input.texcoord0 + layerOffset, input.color.a, 0), + half2(layerScale, layerBias), + #endif + }; + + return output; + } + + + // PIXEL SHADER + fixed4 PixShader(pixel_t input) : SV_Target + { + half d = tex2D(_MainTex, input.texcoord0.xy).a * input.param.x; + half4 c = input.faceColor * saturate(d - input.param.w); + + #ifdef OUTLINE_ON + c = lerp(input.outlineColor, input.faceColor, saturate(d - input.param.z)); + c *= saturate(d - input.param.y); + #endif + + #if UNDERLAY_ON + d = tex2D(_MainTex, input.texcoord1.xy).a * input.underlayParam.x; + c += float4(_UnderlayColor.rgb * _UnderlayColor.a, _UnderlayColor.a) * saturate(d - input.underlayParam.y) * (1 - c.a); + #endif + + #if UNDERLAY_INNER + half sd = saturate(d - input.param.z); + d = tex2D(_MainTex, input.texcoord1.xy).a * input.underlayParam.x; + c += float4(_UnderlayColor.rgb * _UnderlayColor.a, _UnderlayColor.a) * (1 - saturate(d - input.underlayParam.y)) * sd * (1 - c.a); + #endif + + // Alternative implementation to UnityGet2DClipping with support for softness. + #if UNITY_UI_CLIP_RECT + half2 m = saturate((_ClipRect.zw - _ClipRect.xy - abs(input.mask.xy)) * input.mask.zw); + c *= m.x * m.y; + #endif + + float a = abs(_MaskInverse - tex2D(_MaskTex, input.texcoord0.zw).a); + float t = a + (1 - _MaskWipeControl) * _MaskEdgeSoftness - _MaskWipeControl; + a = saturate(t / _MaskEdgeSoftness); + c.rgb = lerp(_MaskEdgeColor.rgb*c.a, c.rgb, a); + c *= a; + + #if (UNDERLAY_ON | UNDERLAY_INNER) + c *= input.texcoord1.z; + #endif + + #if UNITY_UI_ALPHACLIP + clip(c.a - 0.001); + #endif + + return c; + } + ENDCG + } +} + +CustomEditor "TMPro.EditorUtilities.TMP_SDFShaderGUI" +} diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/TextMesh Pro/Resources/Shaders/TMP_SDF-Mobile Masking.shader.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/TextMesh Pro/Resources/Shaders/TMP_SDF-Mobile Masking.shader.meta" new file mode 100644 index 00000000..7b7f7d0d --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/TextMesh Pro/Resources/Shaders/TMP_SDF-Mobile Masking.shader.meta" @@ -0,0 +1,9 @@ +fileFormatVersion: 2 +guid: bc1ede39bf3643ee8e493720e4259791 +timeCreated: 1463704911 +licenseType: Store +ShaderImporter: + defaultTextures: [] + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/TextMesh Pro/Resources/Shaders/TMP_SDF-Mobile Overlay.shader" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/TextMesh Pro/Resources/Shaders/TMP_SDF-Mobile Overlay.shader" new file mode 100644 index 00000000..adcdc05e --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/TextMesh Pro/Resources/Shaders/TMP_SDF-Mobile Overlay.shader" @@ -0,0 +1,229 @@ +// Simplified SDF shader: +// - No Shading Option (bevel / bump / env map) +// - No Glow Option +// - Softness is applied on both side of the outline + +Shader "TextMeshPro/Mobile/Distance Field Overlay" { + +Properties { + _FaceColor ("Face Color", Color) = (1,1,1,1) + _FaceDilate ("Face Dilate", Range(-1,1)) = 0 + + _OutlineColor ("Outline Color", Color) = (0,0,0,1) + _OutlineWidth ("Outline Thickness", Range(0,1)) = 0 + _OutlineSoftness ("Outline Softness", Range(0,1)) = 0 + + _UnderlayColor ("Border Color", Color) = (0,0,0,.5) + _UnderlayOffsetX ("Border OffsetX", Range(-1,1)) = 0 + _UnderlayOffsetY ("Border OffsetY", Range(-1,1)) = 0 + _UnderlayDilate ("Border Dilate", Range(-1,1)) = 0 + _UnderlaySoftness ("Border Softness", Range(0,1)) = 0 + + _WeightNormal ("Weight Normal", float) = 0 + _WeightBold ("Weight Bold", float) = .5 + + _ShaderFlags ("Flags", float) = 0 + _ScaleRatioA ("Scale RatioA", float) = 1 + _ScaleRatioB ("Scale RatioB", float) = 1 + _ScaleRatioC ("Scale RatioC", float) = 1 + + _MainTex ("Font Atlas", 2D) = "white" {} + _TextureWidth ("Texture Width", float) = 512 + _TextureHeight ("Texture Height", float) = 512 + _GradientScale ("Gradient Scale", float) = 5 + _ScaleX ("Scale X", float) = 1 + _ScaleY ("Scale Y", float) = 1 + _PerspectiveFilter ("Perspective Correction", Range(0, 1)) = 0.875 + + _VertexOffsetX ("Vertex OffsetX", float) = 0 + _VertexOffsetY ("Vertex OffsetY", float) = 0 + + _ClipRect ("Clip Rect", vector) = (-32767, -32767, 32767, 32767) + _MaskSoftnessX ("Mask SoftnessX", float) = 0 + _MaskSoftnessY ("Mask SoftnessY", float) = 0 + + _StencilComp ("Stencil Comparison", Float) = 8 + _Stencil ("Stencil ID", Float) = 0 + _StencilOp ("Stencil Operation", Float) = 0 + _StencilWriteMask ("Stencil Write Mask", Float) = 255 + _StencilReadMask ("Stencil Read Mask", Float) = 255 + + _ColorMask ("Color Mask", Float) = 15 +} + +SubShader { + Tags + { + "Queue"="Overlay" + "IgnoreProjector"="True" + "RenderType"="Transparent" + } + + + Stencil + { + Ref [_Stencil] + Comp [_StencilComp] + Pass [_StencilOp] + ReadMask [_StencilReadMask] + WriteMask [_StencilWriteMask] + } + + Cull [_CullMode] + ZWrite Off + Lighting Off + Fog { Mode Off } + ZTest Always + Blend One OneMinusSrcAlpha + ColorMask [_ColorMask] + + Pass { + CGPROGRAM + #pragma vertex VertShader + #pragma fragment PixShader + #pragma shader_feature __ OUTLINE_ON + #pragma shader_feature __ UNDERLAY_ON UNDERLAY_INNER + + #pragma multi_compile __ UNITY_UI_CLIP_RECT + #pragma multi_compile __ UNITY_UI_ALPHACLIP + + #include "UnityCG.cginc" + #include "UnityUI.cginc" + #include "TMPro_Properties.cginc" + + struct vertex_t { + float4 vertex : POSITION; + float3 normal : NORMAL; + fixed4 color : COLOR; + float2 texcoord0 : TEXCOORD0; + float2 texcoord1 : TEXCOORD1; + }; + + struct pixel_t { + float4 vertex : SV_POSITION; + fixed4 faceColor : COLOR; + fixed4 outlineColor : COLOR1; + float4 texcoord0 : TEXCOORD0; // Texture UV, Mask UV + half4 param : TEXCOORD1; // Scale(x), BiasIn(y), BiasOut(z), Bias(w) + half4 mask : TEXCOORD2; // Position in clip space(xy), Softness(zw) + #if (UNDERLAY_ON | UNDERLAY_INNER) + float4 texcoord1 : TEXCOORD3; // Texture UV, alpha, reserved + half2 underlayParam : TEXCOORD4; // Scale(x), Bias(y) + #endif + }; + + + pixel_t VertShader(vertex_t input) + { + float bold = step(input.texcoord1.y, 0); + + float4 vert = input.vertex; + vert.x += _VertexOffsetX; + vert.y += _VertexOffsetY; + float4 vPosition = UnityObjectToClipPos(vert); + + float2 pixelSize = vPosition.w; + pixelSize /= float2(_ScaleX, _ScaleY) * abs(mul((float2x2)UNITY_MATRIX_P, _ScreenParams.xy)); + + float scale = rsqrt(dot(pixelSize, pixelSize)); + scale *= abs(input.texcoord1.y) * _GradientScale * 1.5; + if(UNITY_MATRIX_P[3][3] == 0) scale = lerp(abs(scale) * (1 - _PerspectiveFilter), scale, abs(dot(UnityObjectToWorldNormal(input.normal.xyz), normalize(WorldSpaceViewDir(vert))))); + + float weight = lerp(_WeightNormal, _WeightBold, bold) / 4.0; + weight = (weight + _FaceDilate) * _ScaleRatioA * 0.5; + + float layerScale = scale; + + scale /= 1 + (_OutlineSoftness * _ScaleRatioA * scale); + float bias = (0.5 - weight) * scale - 0.5; + float outline = _OutlineWidth * _ScaleRatioA * 0.5 * scale; + + float opacity = input.color.a; + #if (UNDERLAY_ON | UNDERLAY_INNER) + opacity = 1.0; + #endif + + fixed4 faceColor = fixed4(input.color.rgb, opacity) * _FaceColor; + faceColor.rgb *= faceColor.a; + + fixed4 outlineColor = _OutlineColor; + outlineColor.a *= opacity; + outlineColor.rgb *= outlineColor.a; + outlineColor = lerp(faceColor, outlineColor, sqrt(min(1.0, (outline * 2)))); + + #if (UNDERLAY_ON | UNDERLAY_INNER) + + layerScale /= 1 + ((_UnderlaySoftness * _ScaleRatioC) * layerScale); + float layerBias = (.5 - weight) * layerScale - .5 - ((_UnderlayDilate * _ScaleRatioC) * .5 * layerScale); + + float x = -(_UnderlayOffsetX * _ScaleRatioC) * _GradientScale / _TextureWidth; + float y = -(_UnderlayOffsetY * _ScaleRatioC) * _GradientScale / _TextureHeight; + float2 layerOffset = float2(x, y); + #endif + + // Generate UV for the Masking Texture + float4 clampedRect = clamp(_ClipRect, -2e10, 2e10); + float2 maskUV = (vert.xy - clampedRect.xy) / (clampedRect.zw - clampedRect.xy); + + // Structure for pixel shader + pixel_t output = { + vPosition, + faceColor, + outlineColor, + float4(input.texcoord0.x, input.texcoord0.y, maskUV.x, maskUV.y), + half4(scale, bias - outline, bias + outline, bias), + half4(vert.xy * 2 - clampedRect.xy - clampedRect.zw, 0.25 / (0.25 * half2(_MaskSoftnessX, _MaskSoftnessY) + pixelSize.xy)), + #if (UNDERLAY_ON | UNDERLAY_INNER) + float4(input.texcoord0 + layerOffset, input.color.a, 0), + half2(layerScale, layerBias), + #endif + }; + + return output; + } + + + // PIXEL SHADER + fixed4 PixShader(pixel_t input) : SV_Target + { + half d = tex2D(_MainTex, input.texcoord0.xy).a * input.param.x; + half4 c = input.faceColor * saturate(d - input.param.w); + + #ifdef OUTLINE_ON + c = lerp(input.outlineColor, input.faceColor, saturate(d - input.param.z)); + c *= saturate(d - input.param.y); + #endif + + #if UNDERLAY_ON + d = tex2D(_MainTex, input.texcoord1.xy).a * input.underlayParam.x; + c += float4(_UnderlayColor.rgb * _UnderlayColor.a, _UnderlayColor.a) * saturate(d - input.underlayParam.y) * (1 - c.a); + #endif + + #if UNDERLAY_INNER + half sd = saturate(d - input.param.z); + d = tex2D(_MainTex, input.texcoord1.xy).a * input.underlayParam.x; + c += float4(_UnderlayColor.rgb * _UnderlayColor.a, _UnderlayColor.a) * (1 - saturate(d - input.underlayParam.y)) * sd * (1 - c.a); + #endif + + // Alternative implementation to UnityGet2DClipping with support for softness. + #if UNITY_UI_CLIP_RECT + half2 m = saturate((_ClipRect.zw - _ClipRect.xy - abs(input.mask.xy)) * input.mask.zw); + c *= m.x * m.y; + #endif + + #if (UNDERLAY_ON | UNDERLAY_INNER) + c *= input.texcoord1.z; + #endif + + #if UNITY_UI_ALPHACLIP + clip(c.a - 0.001); + #endif + + return c; + } + ENDCG + } +} + +CustomEditor "TMPro.EditorUtilities.TMP_SDFShaderGUI" +} diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/TextMesh Pro/Resources/Shaders/TMP_SDF-Mobile Overlay.shader.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/TextMesh Pro/Resources/Shaders/TMP_SDF-Mobile Overlay.shader.meta" new file mode 100644 index 00000000..29cbfccd --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/TextMesh Pro/Resources/Shaders/TMP_SDF-Mobile Overlay.shader.meta" @@ -0,0 +1,7 @@ +fileFormatVersion: 2 +guid: a02a7d8c237544f1962732b55a9aebf1 +ShaderImporter: + defaultTextures: [] + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/TextMesh Pro/Resources/Shaders/TMP_SDF-Mobile.shader" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/TextMesh Pro/Resources/Shaders/TMP_SDF-Mobile.shader" new file mode 100644 index 00000000..5c655d79 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/TextMesh Pro/Resources/Shaders/TMP_SDF-Mobile.shader" @@ -0,0 +1,229 @@ +// Simplified SDF shader: +// - No Shading Option (bevel / bump / env map) +// - No Glow Option +// - Softness is applied on both side of the outline + +Shader "TextMeshPro/Mobile/Distance Field" { + +Properties { + _FaceColor ("Face Color", Color) = (1,1,1,1) + _FaceDilate ("Face Dilate", Range(-1,1)) = 0 + + _OutlineColor ("Outline Color", Color) = (0,0,0,1) + _OutlineWidth ("Outline Thickness", Range(0,1)) = 0 + _OutlineSoftness ("Outline Softness", Range(0,1)) = 0 + + _UnderlayColor ("Border Color", Color) = (0,0,0,.5) + _UnderlayOffsetX ("Border OffsetX", Range(-1,1)) = 0 + _UnderlayOffsetY ("Border OffsetY", Range(-1,1)) = 0 + _UnderlayDilate ("Border Dilate", Range(-1,1)) = 0 + _UnderlaySoftness ("Border Softness", Range(0,1)) = 0 + + _WeightNormal ("Weight Normal", float) = 0 + _WeightBold ("Weight Bold", float) = .5 + + _ShaderFlags ("Flags", float) = 0 + _ScaleRatioA ("Scale RatioA", float) = 1 + _ScaleRatioB ("Scale RatioB", float) = 1 + _ScaleRatioC ("Scale RatioC", float) = 1 + + _MainTex ("Font Atlas", 2D) = "white" {} + _TextureWidth ("Texture Width", float) = 512 + _TextureHeight ("Texture Height", float) = 512 + _GradientScale ("Gradient Scale", float) = 5 + _ScaleX ("Scale X", float) = 1 + _ScaleY ("Scale Y", float) = 1 + _PerspectiveFilter ("Perspective Correction", Range(0, 1)) = 0.875 + + _VertexOffsetX ("Vertex OffsetX", float) = 0 + _VertexOffsetY ("Vertex OffsetY", float) = 0 + + _ClipRect ("Clip Rect", vector) = (-32767, -32767, 32767, 32767) + _MaskSoftnessX ("Mask SoftnessX", float) = 0 + _MaskSoftnessY ("Mask SoftnessY", float) = 0 + + _StencilComp ("Stencil Comparison", Float) = 8 + _Stencil ("Stencil ID", Float) = 0 + _StencilOp ("Stencil Operation", Float) = 0 + _StencilWriteMask ("Stencil Write Mask", Float) = 255 + _StencilReadMask ("Stencil Read Mask", Float) = 255 + + _ColorMask ("Color Mask", Float) = 15 +} + +SubShader { + Tags + { + "Queue"="Transparent" + "IgnoreProjector"="True" + "RenderType"="Transparent" + } + + + Stencil + { + Ref [_Stencil] + Comp [_StencilComp] + Pass [_StencilOp] + ReadMask [_StencilReadMask] + WriteMask [_StencilWriteMask] + } + + Cull [_CullMode] + ZWrite Off + Lighting Off + Fog { Mode Off } + ZTest [unity_GUIZTestMode] + Blend One OneMinusSrcAlpha + ColorMask [_ColorMask] + + Pass { + CGPROGRAM + #pragma vertex VertShader + #pragma fragment PixShader + #pragma shader_feature __ OUTLINE_ON + #pragma shader_feature __ UNDERLAY_ON UNDERLAY_INNER + + #pragma multi_compile __ UNITY_UI_CLIP_RECT + #pragma multi_compile __ UNITY_UI_ALPHACLIP + + #include "UnityCG.cginc" + #include "UnityUI.cginc" + #include "TMPro_Properties.cginc" + + struct vertex_t { + float4 vertex : POSITION; + float3 normal : NORMAL; + fixed4 color : COLOR; + float2 texcoord0 : TEXCOORD0; + float2 texcoord1 : TEXCOORD1; + }; + + struct pixel_t { + float4 vertex : SV_POSITION; + fixed4 faceColor : COLOR; + fixed4 outlineColor : COLOR1; + float4 texcoord0 : TEXCOORD0; // Texture UV, Mask UV + half4 param : TEXCOORD1; // Scale(x), BiasIn(y), BiasOut(z), Bias(w) + half4 mask : TEXCOORD2; // Position in clip space(xy), Softness(zw) + #if (UNDERLAY_ON | UNDERLAY_INNER) + float4 texcoord1 : TEXCOORD3; // Texture UV, alpha, reserved + half2 underlayParam : TEXCOORD4; // Scale(x), Bias(y) + #endif + }; + + + pixel_t VertShader(vertex_t input) + { + float bold = step(input.texcoord1.y, 0); + + float4 vert = input.vertex; + vert.x += _VertexOffsetX; + vert.y += _VertexOffsetY; + float4 vPosition = UnityObjectToClipPos(vert); + + float2 pixelSize = vPosition.w; + pixelSize /= float2(_ScaleX, _ScaleY) * abs(mul((float2x2)UNITY_MATRIX_P, _ScreenParams.xy)); + + float scale = rsqrt(dot(pixelSize, pixelSize)); + scale *= abs(input.texcoord1.y) * _GradientScale * 1.5; + if(UNITY_MATRIX_P[3][3] == 0) scale = lerp(abs(scale) * (1 - _PerspectiveFilter), scale, abs(dot(UnityObjectToWorldNormal(input.normal.xyz), normalize(WorldSpaceViewDir(vert))))); + + float weight = lerp(_WeightNormal, _WeightBold, bold) / 4.0; + weight = (weight + _FaceDilate) * _ScaleRatioA * 0.5; + + float layerScale = scale; + + scale /= 1 + (_OutlineSoftness * _ScaleRatioA * scale); + float bias = (0.5 - weight) * scale - 0.5; + float outline = _OutlineWidth * _ScaleRatioA * 0.5 * scale; + + float opacity = input.color.a; + #if (UNDERLAY_ON | UNDERLAY_INNER) + opacity = 1.0; + #endif + + fixed4 faceColor = fixed4(input.color.rgb, opacity) * _FaceColor; + faceColor.rgb *= faceColor.a; + + fixed4 outlineColor = _OutlineColor; + outlineColor.a *= opacity; + outlineColor.rgb *= outlineColor.a; + outlineColor = lerp(faceColor, outlineColor, sqrt(min(1.0, (outline * 2)))); + + #if (UNDERLAY_ON | UNDERLAY_INNER) + + layerScale /= 1 + ((_UnderlaySoftness * _ScaleRatioC) * layerScale); + float layerBias = (.5 - weight) * layerScale - .5 - ((_UnderlayDilate * _ScaleRatioC) * .5 * layerScale); + + float x = -(_UnderlayOffsetX * _ScaleRatioC) * _GradientScale / _TextureWidth; + float y = -(_UnderlayOffsetY * _ScaleRatioC) * _GradientScale / _TextureHeight; + float2 layerOffset = float2(x, y); + #endif + + // Generate UV for the Masking Texture + float4 clampedRect = clamp(_ClipRect, -2e10, 2e10); + float2 maskUV = (vert.xy - clampedRect.xy) / (clampedRect.zw - clampedRect.xy); + + // Structure for pixel shader + pixel_t output = { + vPosition, + faceColor, + outlineColor, + float4(input.texcoord0.x, input.texcoord0.y, maskUV.x, maskUV.y), + half4(scale, bias - outline, bias + outline, bias), + half4(vert.xy * 2 - clampedRect.xy - clampedRect.zw, 0.25 / (0.25 * half2(_MaskSoftnessX, _MaskSoftnessY) + pixelSize.xy)), + #if (UNDERLAY_ON | UNDERLAY_INNER) + float4(input.texcoord0 + layerOffset, input.color.a, 0), + half2(layerScale, layerBias), + #endif + }; + + return output; + } + + + // PIXEL SHADER + fixed4 PixShader(pixel_t input) : SV_Target + { + half d = tex2D(_MainTex, input.texcoord0.xy).a * input.param.x; + half4 c = input.faceColor * saturate(d - input.param.w); + + #ifdef OUTLINE_ON + c = lerp(input.outlineColor, input.faceColor, saturate(d - input.param.z)); + c *= saturate(d - input.param.y); + #endif + + #if UNDERLAY_ON + d = tex2D(_MainTex, input.texcoord1.xy).a * input.underlayParam.x; + c += float4(_UnderlayColor.rgb * _UnderlayColor.a, _UnderlayColor.a) * saturate(d - input.underlayParam.y) * (1 - c.a); + #endif + + #if UNDERLAY_INNER + half sd = saturate(d - input.param.z); + d = tex2D(_MainTex, input.texcoord1.xy).a * input.underlayParam.x; + c += float4(_UnderlayColor.rgb * _UnderlayColor.a, _UnderlayColor.a) * (1 - saturate(d - input.underlayParam.y)) * sd * (1 - c.a); + #endif + + // Alternative implementation to UnityGet2DClipping with support for softness. + #if UNITY_UI_CLIP_RECT + half2 m = saturate((_ClipRect.zw - _ClipRect.xy - abs(input.mask.xy)) * input.mask.zw); + c *= m.x * m.y; + #endif + + #if (UNDERLAY_ON | UNDERLAY_INNER) + c *= input.texcoord1.z; + #endif + + #if UNITY_UI_ALPHACLIP + clip(c.a - 0.001); + #endif + + return c; + } + ENDCG + } +} + +CustomEditor "TMPro.EditorUtilities.TMP_SDFShaderGUI" +} diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/TextMesh Pro/Resources/Shaders/TMP_SDF-Mobile.shader.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/TextMesh Pro/Resources/Shaders/TMP_SDF-Mobile.shader.meta" new file mode 100644 index 00000000..3db6338b --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/TextMesh Pro/Resources/Shaders/TMP_SDF-Mobile.shader.meta" @@ -0,0 +1,7 @@ +fileFormatVersion: 2 +guid: fe393ace9b354375a9cb14cdbbc28be4 +ShaderImporter: + defaultTextures: [] + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/TextMesh Pro/Resources/Shaders/TMP_SDF-Surface-Mobile.shader" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/TextMesh Pro/Resources/Shaders/TMP_SDF-Surface-Mobile.shader" new file mode 100644 index 00000000..ae78bc6b --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/TextMesh Pro/Resources/Shaders/TMP_SDF-Surface-Mobile.shader" @@ -0,0 +1,136 @@ +// Simplified version of the SDF Surface shader : +// - No support for Bevel, Bump or envmap +// - Diffuse only lighting +// - Fully supports only 1 directional light. Other lights can affect it, but it will be per-vertex/SH. + +Shader "TextMeshPro/Mobile/Distance Field (Surface)" { + +Properties { + _FaceTex ("Fill Texture", 2D) = "white" {} + _FaceColor ("Fill Color", Color) = (1,1,1,1) + _FaceDilate ("Face Dilate", Range(-1,1)) = 0 + + _OutlineColor ("Outline Color", Color) = (0,0,0,1) + _OutlineTex ("Outline Texture", 2D) = "white" {} + _OutlineWidth ("Outline Thickness", Range(0, 1)) = 0 + _OutlineSoftness ("Outline Softness", Range(0,1)) = 0 + + _GlowColor ("Color", Color) = (0, 1, 0, 0.5) + _GlowOffset ("Offset", Range(-1,1)) = 0 + _GlowInner ("Inner", Range(0,1)) = 0.05 + _GlowOuter ("Outer", Range(0,1)) = 0.05 + _GlowPower ("Falloff", Range(1, 0)) = 0.75 + + _WeightNormal ("Weight Normal", float) = 0 + _WeightBold ("Weight Bold", float) = 0.5 + + // Should not be directly exposed to the user + _ShaderFlags ("Flags", float) = 0 + _ScaleRatioA ("Scale RatioA", float) = 1 + _ScaleRatioB ("Scale RatioB", float) = 1 + _ScaleRatioC ("Scale RatioC", float) = 1 + + _MainTex ("Font Atlas", 2D) = "white" {} + _TextureWidth ("Texture Width", float) = 512 + _TextureHeight ("Texture Height", float) = 512 + _GradientScale ("Gradient Scale", float) = 5.0 + _ScaleX ("Scale X", float) = 1.0 + _ScaleY ("Scale Y", float) = 1.0 + _PerspectiveFilter ("Perspective Correction", Range(0, 1)) = 0.875 + + _VertexOffsetX ("Vertex OffsetX", float) = 0 + _VertexOffsetY ("Vertex OffsetY", float) = 0 + + //_MaskCoord ("Mask Coords", vector) = (0,0,0,0) + //_MaskSoftness ("Mask Softness", float) = 0 +} + +SubShader { + + Tags { + "Queue"="Transparent" + "IgnoreProjector"="True" + "RenderType"="Transparent" + } + + LOD 300 + Cull [_CullMode] + + CGPROGRAM + #pragma surface PixShader Lambert alpha:blend vertex:VertShader noforwardadd nolightmap nodirlightmap + #pragma target 3.0 + #pragma shader_feature __ GLOW_ON + + #include "TMPro_Properties.cginc" + #include "TMPro.cginc" + + half _FaceShininess; + half _OutlineShininess; + + struct Input + { + fixed4 color : COLOR; + float2 uv_MainTex; + float2 uv2_FaceTex; + float2 uv2_OutlineTex; + float2 param; // Weight, Scale + float3 viewDirEnv; + }; + + #include "TMPro_Surface.cginc" + + ENDCG + + // Pass to render object as a shadow caster + Pass + { + Name "Caster" + Tags { "LightMode" = "ShadowCaster" } + Offset 1, 1 + + Fog {Mode Off} + ZWrite On ZTest LEqual Cull Off + + CGPROGRAM + #pragma vertex vert + #pragma fragment frag + #pragma multi_compile_shadowcaster + #include "UnityCG.cginc" + + struct v2f { + V2F_SHADOW_CASTER; + float2 uv : TEXCOORD1; + float2 uv2 : TEXCOORD3; + float alphaClip : TEXCOORD2; + }; + + uniform float4 _MainTex_ST; + uniform float4 _OutlineTex_ST; + float _OutlineWidth; + float _FaceDilate; + float _ScaleRatioA; + + v2f vert( appdata_base v ) + { + v2f o; + TRANSFER_SHADOW_CASTER(o) + o.uv = TRANSFORM_TEX(v.texcoord, _MainTex); + o.uv2 = TRANSFORM_TEX(v.texcoord, _OutlineTex); + o.alphaClip = o.alphaClip = (1.0 - _OutlineWidth * _ScaleRatioA - _FaceDilate * _ScaleRatioA) / 2; + return o; + } + + uniform sampler2D _MainTex; + + float4 frag(v2f i) : COLOR + { + fixed4 texcol = tex2D(_MainTex, i.uv).a; + clip(texcol.a - i.alphaClip); + SHADOW_CASTER_FRAGMENT(i) + } + ENDCG + } +} + +CustomEditor "TMPro.EditorUtilities.TMP_SDFShaderGUI" +} diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/TextMesh Pro/Resources/Shaders/TMP_SDF-Surface-Mobile.shader.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/TextMesh Pro/Resources/Shaders/TMP_SDF-Surface-Mobile.shader.meta" new file mode 100644 index 00000000..d559598d --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/TextMesh Pro/Resources/Shaders/TMP_SDF-Surface-Mobile.shader.meta" @@ -0,0 +1,7 @@ +fileFormatVersion: 2 +guid: 85187c2149c549c5b33f0cdb02836b17 +ShaderImporter: + defaultTextures: [] + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/TextMesh Pro/Resources/Shaders/TMP_SDF-Surface.shader" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/TextMesh Pro/Resources/Shaders/TMP_SDF-Surface.shader" new file mode 100644 index 00000000..08cee8d9 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/TextMesh Pro/Resources/Shaders/TMP_SDF-Surface.shader" @@ -0,0 +1,155 @@ +Shader "TextMeshPro/Distance Field (Surface)" { + +Properties { + _FaceTex ("Fill Texture", 2D) = "white" {} + _FaceUVSpeedX ("Face UV Speed X", Range(-5, 5)) = 0.0 + _FaceUVSpeedY ("Face UV Speed Y", Range(-5, 5)) = 0.0 + _FaceColor ("Fill Color", Color) = (1,1,1,1) + _FaceDilate ("Face Dilate", Range(-1,1)) = 0 + + _OutlineColor ("Outline Color", Color) = (0,0,0,1) + _OutlineTex ("Outline Texture", 2D) = "white" {} + _OutlineUVSpeedX ("Outline UV Speed X", Range(-5, 5)) = 0.0 + _OutlineUVSpeedY ("Outline UV Speed Y", Range(-5, 5)) = 0.0 + _OutlineWidth ("Outline Thickness", Range(0, 1)) = 0 + _OutlineSoftness ("Outline Softness", Range(0,1)) = 0 + + _Bevel ("Bevel", Range(0,1)) = 0.5 + _BevelOffset ("Bevel Offset", Range(-0.5,0.5)) = 0 + _BevelWidth ("Bevel Width", Range(-.5,0.5)) = 0 + _BevelClamp ("Bevel Clamp", Range(0,1)) = 0 + _BevelRoundness ("Bevel Roundness", Range(0,1)) = 0 + + _BumpMap ("Normalmap", 2D) = "bump" {} + _BumpOutline ("Bump Outline", Range(0,1)) = 0.5 + _BumpFace ("Bump Face", Range(0,1)) = 0.5 + + _ReflectFaceColor ("Face Color", Color) = (0,0,0,1) + _ReflectOutlineColor ("Outline Color", Color) = (0,0,0,1) + _Cube ("Reflection Cubemap", Cube) = "black" { /* TexGen CubeReflect */ } + _EnvMatrixRotation ("Texture Rotation", vector) = (0, 0, 0, 0) + _SpecColor ("Specular Color", Color) = (0,0,0,1) + + _FaceShininess ("Face Shininess", Range(0,1)) = 0 + _OutlineShininess ("Outline Shininess", Range(0,1)) = 0 + + _GlowColor ("Color", Color) = (0, 1, 0, 0.5) + _GlowOffset ("Offset", Range(-1,1)) = 0 + _GlowInner ("Inner", Range(0,1)) = 0.05 + _GlowOuter ("Outer", Range(0,1)) = 0.05 + _GlowPower ("Falloff", Range(1, 0)) = 0.75 + + _WeightNormal ("Weight Normal", float) = 0 + _WeightBold ("Weight Bold", float) = 0.5 + + // Should not be directly exposed to the user + _ShaderFlags ("Flags", float) = 0 + _ScaleRatioA ("Scale RatioA", float) = 1 + _ScaleRatioB ("Scale RatioB", float) = 1 + _ScaleRatioC ("Scale RatioC", float) = 1 + + _MainTex ("Font Atlas", 2D) = "white" {} + _TextureWidth ("Texture Width", float) = 512 + _TextureHeight ("Texture Height", float) = 512 + _GradientScale ("Gradient Scale", float) = 5.0 + _ScaleX ("Scale X", float) = 1.0 + _ScaleY ("Scale Y", float) = 1.0 + _PerspectiveFilter ("Perspective Correction", Range(0, 1)) = 0.875 + + _VertexOffsetX ("Vertex OffsetX", float) = 0 + _VertexOffsetY ("Vertex OffsetY", float) = 0 + //_MaskCoord ("Mask Coords", vector) = (0,0,0,0) + //_MaskSoftness ("Mask Softness", float) = 0 +} + +SubShader { + + Tags { "Queue"="Transparent" "IgnoreProjector"="True" "RenderType"="Transparent" } + + LOD 300 + Cull [_CullMode] + + CGPROGRAM + #pragma surface PixShader BlinnPhong alpha:blend vertex:VertShader nolightmap nodirlightmap + #pragma target 3.0 + #pragma shader_feature __ GLOW_ON + #pragma glsl + + #include "TMPro_Properties.cginc" + #include "TMPro.cginc" + + half _FaceShininess; + half _OutlineShininess; + + struct Input + { + fixed4 color : COLOR; + float2 uv_MainTex; + float2 uv2_FaceTex; + float2 uv2_OutlineTex; + float2 param; // Weight, Scale + float3 viewDirEnv; + }; + + + #define BEVEL_ON 1 + #include "TMPro_Surface.cginc" + + ENDCG + + // Pass to render object as a shadow caster + Pass + { + Name "Caster" + Tags { "LightMode" = "ShadowCaster" } + Offset 1, 1 + + Fog {Mode Off} + ZWrite On + ZTest LEqual + Cull Off + + CGPROGRAM + #pragma vertex vert + #pragma fragment frag + #pragma multi_compile_shadowcaster + #include "UnityCG.cginc" + + struct v2f { + V2F_SHADOW_CASTER; + float2 uv : TEXCOORD1; + float2 uv2 : TEXCOORD3; + float alphaClip : TEXCOORD2; + }; + + uniform float4 _MainTex_ST; + uniform float4 _OutlineTex_ST; + float _OutlineWidth; + float _FaceDilate; + float _ScaleRatioA; + + v2f vert( appdata_base v ) + { + v2f o; + TRANSFER_SHADOW_CASTER(o) + o.uv = TRANSFORM_TEX(v.texcoord, _MainTex); + o.uv2 = TRANSFORM_TEX(v.texcoord, _OutlineTex); + o.alphaClip = (1.0 - _OutlineWidth * _ScaleRatioA - _FaceDilate * _ScaleRatioA) / 2; + return o; + } + + uniform sampler2D _MainTex; + + float4 frag(v2f i) : COLOR + { + fixed4 texcol = tex2D(_MainTex, i.uv).a; + clip(texcol.a - i.alphaClip); + SHADOW_CASTER_FRAGMENT(i) + } + ENDCG + } +} + +CustomEditor "TMPro.EditorUtilities.TMP_SDFShaderGUI" +} + diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/TextMesh Pro/Resources/Shaders/TMP_SDF-Surface.shader.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/TextMesh Pro/Resources/Shaders/TMP_SDF-Surface.shader.meta" new file mode 100644 index 00000000..bc7933f9 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/TextMesh Pro/Resources/Shaders/TMP_SDF-Surface.shader.meta" @@ -0,0 +1,7 @@ +fileFormatVersion: 2 +guid: f7ada0af4f174f0694ca6a487b8f543d +ShaderImporter: + defaultTextures: [] + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/TextMesh Pro/Resources/Shaders/TMP_SDF.shader" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/TextMesh Pro/Resources/Shaders/TMP_SDF.shader" new file mode 100644 index 00000000..7a2a63bd --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/TextMesh Pro/Resources/Shaders/TMP_SDF.shader" @@ -0,0 +1,305 @@ +Shader "TextMeshPro/Distance Field" { + +Properties { + _FaceTex ("Face Texture", 2D) = "white" {} + _FaceUVSpeedX ("Face UV Speed X", Range(-5, 5)) = 0.0 + _FaceUVSpeedY ("Face UV Speed Y", Range(-5, 5)) = 0.0 + _FaceColor ("Face Color", Color) = (1,1,1,1) + _FaceDilate ("Face Dilate", Range(-1,1)) = 0 + + _OutlineColor ("Outline Color", Color) = (0,0,0,1) + _OutlineTex ("Outline Texture", 2D) = "white" {} + _OutlineUVSpeedX ("Outline UV Speed X", Range(-5, 5)) = 0.0 + _OutlineUVSpeedY ("Outline UV Speed Y", Range(-5, 5)) = 0.0 + _OutlineWidth ("Outline Thickness", Range(0, 1)) = 0 + _OutlineSoftness ("Outline Softness", Range(-1,1)) = 0 + + _Bevel ("Bevel", Range(0,1)) = 0.5 + _BevelOffset ("Bevel Offset", Range(-0.5,0.5)) = 0 + _BevelWidth ("Bevel Width", Range(-.5,0.5)) = 0 + _BevelClamp ("Bevel Clamp", Range(0,1)) = 0 + _BevelRoundness ("Bevel Roundness", Range(0,1)) = 0 + + _LightAngle ("Light Angle", Range(0.0, 6.2831853)) = 3.1416 + _SpecularColor ("Specular", Color) = (1,1,1,1) + _SpecularPower ("Specular", Range(0,4)) = 2.0 + _Reflectivity ("Reflectivity", Range(5.0,15.0)) = 10 + _Diffuse ("Diffuse", Range(0,1)) = 0.5 + _Ambient ("Ambient", Range(1,0)) = 0.5 + + _BumpMap ("Normal map", 2D) = "bump" {} + _BumpOutline ("Bump Outline", Range(0,1)) = 0 + _BumpFace ("Bump Face", Range(0,1)) = 0 + + _ReflectFaceColor ("Reflection Color", Color) = (0,0,0,1) + _ReflectOutlineColor("Reflection Color", Color) = (0,0,0,1) + _Cube ("Reflection Cubemap", Cube) = "black" { /* TexGen CubeReflect */ } + _EnvMatrixRotation ("Texture Rotation", vector) = (0, 0, 0, 0) + + + _UnderlayColor ("Border Color", Color) = (0,0,0, 0.5) + _UnderlayOffsetX ("Border OffsetX", Range(-1,1)) = 0 + _UnderlayOffsetY ("Border OffsetY", Range(-1,1)) = 0 + _UnderlayDilate ("Border Dilate", Range(-1,1)) = 0 + _UnderlaySoftness ("Border Softness", Range(0,1)) = 0 + + _GlowColor ("Color", Color) = (0, 1, 0, 0.5) + _GlowOffset ("Offset", Range(-1,1)) = 0 + _GlowInner ("Inner", Range(0,1)) = 0.05 + _GlowOuter ("Outer", Range(0,1)) = 0.05 + _GlowPower ("Falloff", Range(1, 0)) = 0.75 + + _WeightNormal ("Weight Normal", float) = 0 + _WeightBold ("Weight Bold", float) = 0.5 + + _ShaderFlags ("Flags", float) = 0 + _ScaleRatioA ("Scale RatioA", float) = 1 + _ScaleRatioB ("Scale RatioB", float) = 1 + _ScaleRatioC ("Scale RatioC", float) = 1 + + _MainTex ("Font Atlas", 2D) = "white" {} + _TextureWidth ("Texture Width", float) = 512 + _TextureHeight ("Texture Height", float) = 512 + _GradientScale ("Gradient Scale", float) = 5.0 + _ScaleX ("Scale X", float) = 1.0 + _ScaleY ("Scale Y", float) = 1.0 + _PerspectiveFilter ("Perspective Correction", Range(0, 1)) = 0.875 + + _VertexOffsetX ("Vertex OffsetX", float) = 0 + _VertexOffsetY ("Vertex OffsetY", float) = 0 + + _MaskCoord ("Mask Coordinates", vector) = (0, 0, 32767, 32767) + _ClipRect ("Clip Rect", vector) = (-32767, -32767, 32767, 32767) + _MaskSoftnessX ("Mask SoftnessX", float) = 0 + _MaskSoftnessY ("Mask SoftnessY", float) = 0 + + _StencilComp ("Stencil Comparison", Float) = 8 + _Stencil ("Stencil ID", Float) = 0 + _StencilOp ("Stencil Operation", Float) = 0 + _StencilWriteMask ("Stencil Write Mask", Float) = 255 + _StencilReadMask ("Stencil Read Mask", Float) = 255 + + _ColorMask ("Color Mask", Float) = 15 +} + +SubShader { + + Tags + { + "Queue"="Transparent" + "IgnoreProjector"="True" + "RenderType"="Transparent" + } + + Stencil + { + Ref [_Stencil] + Comp [_StencilComp] + Pass [_StencilOp] + ReadMask [_StencilReadMask] + WriteMask [_StencilWriteMask] + } + + Cull [_CullMode] + ZWrite Off + Lighting Off + Fog { Mode Off } + ZTest [unity_GUIZTestMode] + Blend One OneMinusSrcAlpha + ColorMask [_ColorMask] + + Pass { + CGPROGRAM + #pragma target 3.0 + #pragma vertex VertShader + #pragma fragment PixShader + #pragma shader_feature __ BEVEL_ON + #pragma shader_feature __ UNDERLAY_ON UNDERLAY_INNER + #pragma shader_feature __ GLOW_ON + + #pragma multi_compile __ UNITY_UI_CLIP_RECT + #pragma multi_compile __ UNITY_UI_ALPHACLIP + + + #include "UnityCG.cginc" + #include "UnityUI.cginc" + #include "TMPro_Properties.cginc" + #include "TMPro.cginc" + + struct vertex_t { + float4 position : POSITION; + float3 normal : NORMAL; + fixed4 color : COLOR; + float2 texcoord0 : TEXCOORD0; + float2 texcoord1 : TEXCOORD1; + }; + + + struct pixel_t { + float4 position : SV_POSITION; + fixed4 color : COLOR; + float2 atlas : TEXCOORD0; // Atlas + float4 param : TEXCOORD1; // alphaClip, scale, bias, weight + float4 mask : TEXCOORD2; // Position in object space(xy), pixel Size(zw) + float3 viewDir : TEXCOORD3; + + #if (UNDERLAY_ON || UNDERLAY_INNER) + float4 texcoord2 : TEXCOORD4; // u,v, scale, bias + fixed4 underlayColor : COLOR1; + #endif + float4 textures : TEXCOORD5; + }; + + // Used by Unity internally to handle Texture Tiling and Offset. + float4 _FaceTex_ST; + float4 _OutlineTex_ST; + + pixel_t VertShader(vertex_t input) + { + float bold = step(input.texcoord1.y, 0); + + float4 vert = input.position; + vert.x += _VertexOffsetX; + vert.y += _VertexOffsetY; + + float4 vPosition = UnityObjectToClipPos(vert); + + float2 pixelSize = vPosition.w; + pixelSize /= float2(_ScaleX, _ScaleY) * abs(mul((float2x2)UNITY_MATRIX_P, _ScreenParams.xy)); + float scale = rsqrt(dot(pixelSize, pixelSize)); + scale *= abs(input.texcoord1.y) * _GradientScale * 1.5; + if (UNITY_MATRIX_P[3][3] == 0) scale = lerp(abs(scale) * (1 - _PerspectiveFilter), scale, abs(dot(UnityObjectToWorldNormal(input.normal.xyz), normalize(WorldSpaceViewDir(vert))))); + + float weight = lerp(_WeightNormal, _WeightBold, bold) / 4.0; + weight = (weight + _FaceDilate) * _ScaleRatioA * 0.5; + + float bias =(.5 - weight) + (.5 / scale); + + float alphaClip = (1.0 - _OutlineWidth*_ScaleRatioA - _OutlineSoftness*_ScaleRatioA); + + #if GLOW_ON + alphaClip = min(alphaClip, 1.0 - _GlowOffset * _ScaleRatioB - _GlowOuter * _ScaleRatioB); + #endif + + alphaClip = alphaClip / 2.0 - ( .5 / scale) - weight; + + #if (UNDERLAY_ON || UNDERLAY_INNER) + float4 underlayColor = _UnderlayColor; + underlayColor.rgb *= underlayColor.a; + + float bScale = scale; + bScale /= 1 + ((_UnderlaySoftness*_ScaleRatioC) * bScale); + float bBias = (0.5 - weight) * bScale - 0.5 - ((_UnderlayDilate * _ScaleRatioC) * 0.5 * bScale); + + float x = -(_UnderlayOffsetX * _ScaleRatioC) * _GradientScale / _TextureWidth; + float y = -(_UnderlayOffsetY * _ScaleRatioC) * _GradientScale / _TextureHeight; + float2 bOffset = float2(x, y); + #endif + + // Generate UV for the Masking Texture + float4 clampedRect = clamp(_ClipRect, -2e10, 2e10); + float2 maskUV = (vert.xy - clampedRect.xy) / (clampedRect.zw - clampedRect.xy); + + // Support for texture tiling and offset + float2 textureUV = UnpackUV(input.texcoord1.x); + float2 faceUV = TRANSFORM_TEX(textureUV, _FaceTex); + float2 outlineUV = TRANSFORM_TEX(textureUV, _OutlineTex); + + pixel_t output = { + vPosition, + input.color, + input.texcoord0, + float4(alphaClip, scale, bias, weight), + half4(vert.xy * 2 - clampedRect.xy - clampedRect.zw, 0.25 / (0.25 * half2(_MaskSoftnessX, _MaskSoftnessY) + pixelSize.xy)), + mul((float3x3)_EnvMatrix, _WorldSpaceCameraPos.xyz - mul(unity_ObjectToWorld, vert).xyz), + #if (UNDERLAY_ON || UNDERLAY_INNER) + float4(input.texcoord0 + bOffset, bScale, bBias), + underlayColor, + #endif + float4(faceUV, outlineUV), + }; + + return output; + } + + + fixed4 PixShader(pixel_t input) : SV_Target + { + float c = tex2D(_MainTex, input.atlas).a; + + #ifndef UNDERLAY_ON + clip(c - input.param.x); + #endif + + float scale = input.param.y; + float bias = input.param.z; + float weight = input.param.w; + float sd = (bias - c) * scale; + + float outline = (_OutlineWidth * _ScaleRatioA) * scale; + float softness = (_OutlineSoftness * _ScaleRatioA) * scale; + + half4 faceColor = _FaceColor; + half4 outlineColor = _OutlineColor; + + faceColor.rgb *= input.color.rgb; + + faceColor *= tex2D(_FaceTex, input.textures.xy + float2(_FaceUVSpeedX, _FaceUVSpeedY) * _Time.y); + outlineColor *= tex2D(_OutlineTex, input.textures.zw + float2(_OutlineUVSpeedX, _OutlineUVSpeedY) * _Time.y); + + faceColor = GetColor(sd, faceColor, outlineColor, outline, softness); + + #if BEVEL_ON + float3 dxy = float3(0.5 / _TextureWidth, 0.5 / _TextureHeight, 0); + float3 n = GetSurfaceNormal(input.atlas, weight, dxy); + + float3 bump = UnpackNormal(tex2D(_BumpMap, input.textures.xy + float2(_FaceUVSpeedX, _FaceUVSpeedY) * _Time.y)).xyz; + bump *= lerp(_BumpFace, _BumpOutline, saturate(sd + outline * 0.5)); + n = normalize(n- bump); + + float3 light = normalize(float3(sin(_LightAngle), cos(_LightAngle), -1.0)); + + float3 col = GetSpecular(n, light); + faceColor.rgb += col*faceColor.a; + faceColor.rgb *= 1-(dot(n, light)*_Diffuse); + faceColor.rgb *= lerp(_Ambient, 1, n.z*n.z); + + fixed4 reflcol = texCUBE(_Cube, reflect(input.viewDir, -n)); + faceColor.rgb += reflcol.rgb * lerp(_ReflectFaceColor.rgb, _ReflectOutlineColor.rgb, saturate(sd + outline * 0.5)) * faceColor.a; + #endif + + #if UNDERLAY_ON + float d = tex2D(_MainTex, input.texcoord2.xy).a * input.texcoord2.z; + faceColor += input.underlayColor * saturate(d - input.texcoord2.w) * (1 - faceColor.a); + #endif + + #if UNDERLAY_INNER + float d = tex2D(_MainTex, input.texcoord2.xy).a * input.texcoord2.z; + faceColor += input.underlayColor * (1 - saturate(d - input.texcoord2.w)) * saturate(1 - sd) * (1 - faceColor.a); + #endif + + #if GLOW_ON + float4 glowColor = GetGlowColor(sd, scale); + faceColor.rgb += glowColor.rgb * glowColor.a; + #endif + + // Alternative implementation to UnityGet2DClipping with support for softness. + #if UNITY_UI_CLIP_RECT + half2 m = saturate((_ClipRect.zw - _ClipRect.xy - abs(input.mask.xy)) * input.mask.zw); + faceColor *= m.x * m.y; + #endif + + #if UNITY_UI_ALPHACLIP + clip(faceColor.a - 0.001); + #endif + + return faceColor * input.color.a; + } + + ENDCG + } +} + +Fallback "TextMeshPro/Mobile/Distance Field" +CustomEditor "TMPro.EditorUtilities.TMP_SDFShaderGUI" +} diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/TextMesh Pro/Resources/Shaders/TMP_SDF.shader.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/TextMesh Pro/Resources/Shaders/TMP_SDF.shader.meta" new file mode 100644 index 00000000..e3431366 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/TextMesh Pro/Resources/Shaders/TMP_SDF.shader.meta" @@ -0,0 +1,7 @@ +fileFormatVersion: 2 +guid: 68e6db2ebdc24f95958faec2be5558d6 +ShaderImporter: + defaultTextures: [] + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/TextMesh Pro/Resources/Shaders/TMP_Sprite.shader" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/TextMesh Pro/Resources/Shaders/TMP_Sprite.shader" new file mode 100644 index 00000000..f90467d6 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/TextMesh Pro/Resources/Shaders/TMP_Sprite.shader" @@ -0,0 +1,113 @@ +Shader "TextMeshPro/Sprite" +{ + Properties + { + _MainTex ("Sprite Texture", 2D) = "white" {} + _Color ("Tint", Color) = (1,1,1,1) + + _StencilComp ("Stencil Comparison", Float) = 8 + _Stencil ("Stencil ID", Float) = 0 + _StencilOp ("Stencil Operation", Float) = 0 + _StencilWriteMask ("Stencil Write Mask", Float) = 255 + _StencilReadMask ("Stencil Read Mask", Float) = 255 + + _ColorMask ("Color Mask", Float) = 15 + _ClipRect ("Clip Rect", vector) = (-32767, -32767, 32767, 32767) + + [Toggle(UNITY_UI_ALPHACLIP)] _UseUIAlphaClip ("Use Alpha Clip", Float) = 0 + } + + SubShader + { + Tags + { + "Queue"="Transparent" + "IgnoreProjector"="True" + "RenderType"="Transparent" + "PreviewType"="Plane" + "CanUseSpriteAtlas"="True" + } + + Stencil + { + Ref [_Stencil] + Comp [_StencilComp] + Pass [_StencilOp] + ReadMask [_StencilReadMask] + WriteMask [_StencilWriteMask] + } + + Cull Off + Lighting Off + ZWrite Off + ZTest [unity_GUIZTestMode] + Blend SrcAlpha OneMinusSrcAlpha + ColorMask [_ColorMask] + + Pass + { + CGPROGRAM + #pragma vertex vert + #pragma fragment frag + + #include "UnityCG.cginc" + #include "UnityUI.cginc" + + #pragma multi_compile __ UNITY_UI_CLIP_RECT + #pragma multi_compile __ UNITY_UI_ALPHACLIP + + struct appdata_t + { + float4 vertex : POSITION; + float4 color : COLOR; + float2 texcoord : TEXCOORD0; + }; + + struct v2f + { + float4 vertex : SV_POSITION; + fixed4 color : COLOR; + half2 texcoord : TEXCOORD0; + float4 worldPosition : TEXCOORD1; + }; + + fixed4 _Color; + fixed4 _TextureSampleAdd; + float4 _ClipRect; + + v2f vert(appdata_t IN) + { + v2f OUT; + OUT.worldPosition = IN.vertex; + OUT.vertex = UnityObjectToClipPos(OUT.worldPosition); + + OUT.texcoord = IN.texcoord; + + #ifdef UNITY_HALF_TEXEL_OFFSET + OUT.vertex.xy += (_ScreenParams.zw-1.0)*float2(-1,1); + #endif + + OUT.color = IN.color * _Color; + return OUT; + } + + sampler2D _MainTex; + + fixed4 frag(v2f IN) : SV_Target + { + half4 color = (tex2D(_MainTex, IN.texcoord) + _TextureSampleAdd) * IN.color; + + #if UNITY_UI_CLIP_RECT + color.a *= UnityGet2DClipping(IN.worldPosition.xy, _ClipRect); + #endif + + #ifdef UNITY_UI_ALPHACLIP + clip (color.a - 0.001); + #endif + + return color; + } + ENDCG + } + } +} diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/TextMesh Pro/Resources/Shaders/TMP_Sprite.shader.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/TextMesh Pro/Resources/Shaders/TMP_Sprite.shader.meta" new file mode 100644 index 00000000..93b737c7 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/TextMesh Pro/Resources/Shaders/TMP_Sprite.shader.meta" @@ -0,0 +1,9 @@ +fileFormatVersion: 2 +guid: cf81c85f95fe47e1a27f6ae460cf182c +timeCreated: 1450517184 +licenseType: Store +ShaderImporter: + defaultTextures: [] + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/TextMesh Pro/Resources/Shaders/TMPro.cginc" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/TextMesh Pro/Resources/Shaders/TMPro.cginc" new file mode 100644 index 00000000..58981304 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/TextMesh Pro/Resources/Shaders/TMPro.cginc" @@ -0,0 +1,84 @@ +float2 UnpackUV(float uv) +{ + float2 output; + output.x = floor(uv / 4096); + output.y = uv - 4096 * output.x; + + return output * 0.001953125; +} + +fixed4 GetColor(half d, fixed4 faceColor, fixed4 outlineColor, half outline, half softness) +{ + half faceAlpha = 1-saturate((d - outline * 0.5 + softness * 0.5) / (1.0 + softness)); + half outlineAlpha = saturate((d + outline * 0.5)) * sqrt(min(1.0, outline)); + + faceColor.rgb *= faceColor.a; + outlineColor.rgb *= outlineColor.a; + + faceColor = lerp(faceColor, outlineColor, outlineAlpha); + + faceColor *= faceAlpha; + + return faceColor; +} + +float3 GetSurfaceNormal(float4 h, float bias) +{ + bool raisedBevel = step(1, fmod(_ShaderFlags, 2)); + + h += bias+_BevelOffset; + + float bevelWidth = max(.01, _OutlineWidth+_BevelWidth); + + // Track outline + h -= .5; + h /= bevelWidth; + h = saturate(h+.5); + + if(raisedBevel) h = 1 - abs(h*2.0 - 1.0); + h = lerp(h, sin(h*3.141592/2.0), _BevelRoundness); + h = min(h, 1.0-_BevelClamp); + h *= _Bevel * bevelWidth * _GradientScale * -2.0; + + float3 va = normalize(float3(1.0, 0.0, h.y - h.x)); + float3 vb = normalize(float3(0.0, -1.0, h.w - h.z)); + + return cross(va, vb); +} + +float3 GetSurfaceNormal(float2 uv, float bias, float3 delta) +{ + // Read "height field" + float4 h = {tex2D(_MainTex, uv - delta.xz).a, + tex2D(_MainTex, uv + delta.xz).a, + tex2D(_MainTex, uv - delta.zy).a, + tex2D(_MainTex, uv + delta.zy).a}; + + return GetSurfaceNormal(h, bias); +} + +float3 GetSpecular(float3 n, float3 l) +{ + float spec = pow(max(0.0, dot(n, l)), _Reflectivity); + return _SpecularColor.rgb * spec * _SpecularPower; +} + +float4 GetGlowColor(float d, float scale) +{ + float glow = d - (_GlowOffset*_ScaleRatioB) * 0.5 * scale; + float t = lerp(_GlowInner, (_GlowOuter * _ScaleRatioB), step(0.0, glow)) * 0.5 * scale; + glow = saturate(abs(glow/(1.0 + t))); + glow = 1.0-pow(glow, _GlowPower); + glow *= sqrt(min(1.0, t)); // Fade off glow thinner than 1 screen pixel + return float4(_GlowColor.rgb, saturate(_GlowColor.a * glow * 2)); +} + +float4 BlendARGB(float4 overlying, float4 underlying) +{ + overlying.rgb *= overlying.a; + underlying.rgb *= underlying.a; + float3 blended = overlying.rgb + ((1-overlying.a)*underlying.rgb); + float alpha = underlying.a + (1-underlying.a)*overlying.a; + return float4(blended, alpha); +} + diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/TextMesh Pro/Resources/Shaders/TMPro.cginc.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/TextMesh Pro/Resources/Shaders/TMPro.cginc.meta" new file mode 100644 index 00000000..f633f580 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/TextMesh Pro/Resources/Shaders/TMPro.cginc.meta" @@ -0,0 +1,7 @@ +fileFormatVersion: 2 +guid: 407bc68d299748449bbf7f48ee690f8d +ShaderImporter: + defaultTextures: [] + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/TextMesh Pro/Resources/Shaders/TMPro_Properties.cginc" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/TextMesh Pro/Resources/Shaders/TMPro_Properties.cginc" new file mode 100644 index 00000000..df1b6d92 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/TextMesh Pro/Resources/Shaders/TMPro_Properties.cginc" @@ -0,0 +1,84 @@ +// UI Editable properties +uniform sampler2D _FaceTex; // Alpha : Signed Distance +uniform float _FaceUVSpeedX; +uniform float _FaceUVSpeedY; +uniform fixed4 _FaceColor; // RGBA : Color + Opacity +uniform float _FaceDilate; // v[ 0, 1] +uniform float _OutlineSoftness; // v[ 0, 1] + +uniform sampler2D _OutlineTex; // RGBA : Color + Opacity +uniform float _OutlineUVSpeedX; +uniform float _OutlineUVSpeedY; +uniform fixed4 _OutlineColor; // RGBA : Color + Opacity +uniform float _OutlineWidth; // v[ 0, 1] + +uniform float _Bevel; // v[ 0, 1] +uniform float _BevelOffset; // v[-1, 1] +uniform float _BevelWidth; // v[-1, 1] +uniform float _BevelClamp; // v[ 0, 1] +uniform float _BevelRoundness; // v[ 0, 1] + +uniform sampler2D _BumpMap; // Normal map +uniform float _BumpOutline; // v[ 0, 1] +uniform float _BumpFace; // v[ 0, 1] + +uniform samplerCUBE _Cube; // Cube / sphere map +uniform fixed4 _ReflectFaceColor; // RGB intensity +uniform fixed4 _ReflectOutlineColor; +//uniform float _EnvTiltX; // v[-1, 1] +//uniform float _EnvTiltY; // v[-1, 1] +uniform float3 _EnvMatrixRotation; +uniform float4x4 _EnvMatrix; + +uniform fixed4 _SpecularColor; // RGB intensity +uniform float _LightAngle; // v[ 0,Tau] +uniform float _SpecularPower; // v[ 0, 1] +uniform float _Reflectivity; // v[ 5, 15] +uniform float _Diffuse; // v[ 0, 1] +uniform float _Ambient; // v[ 0, 1] + +uniform fixed4 _UnderlayColor; // RGBA : Color + Opacity +uniform float _UnderlayOffsetX; // v[-1, 1] +uniform float _UnderlayOffsetY; // v[-1, 1] +uniform float _UnderlayDilate; // v[-1, 1] +uniform float _UnderlaySoftness; // v[ 0, 1] + +uniform fixed4 _GlowColor; // RGBA : Color + Intesity +uniform float _GlowOffset; // v[-1, 1] +uniform float _GlowOuter; // v[ 0, 1] +uniform float _GlowInner; // v[ 0, 1] +uniform float _GlowPower; // v[ 1, 1/(1+4*4)] + +// API Editable properties +uniform float _ShaderFlags; +uniform float _WeightNormal; +uniform float _WeightBold; + +uniform float _ScaleRatioA; +uniform float _ScaleRatioB; +uniform float _ScaleRatioC; + +uniform float _VertexOffsetX; +uniform float _VertexOffsetY; + +//uniform float _UseClipRect; +uniform float _MaskID; +uniform sampler2D _MaskTex; +uniform float4 _MaskCoord; +uniform float4 _ClipRect; // bottom left(x,y) : top right(z,w) +//uniform float _MaskWipeControl; +//uniform float _MaskEdgeSoftness; +//uniform fixed4 _MaskEdgeColor; +//uniform bool _MaskInverse; + +uniform float _MaskSoftnessX; +uniform float _MaskSoftnessY; + +// Font Atlas properties +uniform sampler2D _MainTex; +uniform float _TextureWidth; +uniform float _TextureHeight; +uniform float _GradientScale; +uniform float _ScaleX; +uniform float _ScaleY; +uniform float _PerspectiveFilter; diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/TextMesh Pro/Resources/Shaders/TMPro_Properties.cginc.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/TextMesh Pro/Resources/Shaders/TMPro_Properties.cginc.meta" new file mode 100644 index 00000000..24f0f8fc --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/TextMesh Pro/Resources/Shaders/TMPro_Properties.cginc.meta" @@ -0,0 +1,7 @@ +fileFormatVersion: 2 +guid: 3997e2241185407d80309a82f9148466 +ShaderImporter: + defaultTextures: [] + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/TextMesh Pro/Resources/Shaders/TMPro_Surface.cginc" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/TextMesh Pro/Resources/Shaders/TMPro_Surface.cginc" new file mode 100644 index 00000000..3659e87a --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/TextMesh Pro/Resources/Shaders/TMPro_Surface.cginc" @@ -0,0 +1,115 @@ +void VertShader(inout appdata_full v, out Input data) +{ + v.vertex.x += _VertexOffsetX; + v.vertex.y += _VertexOffsetY; + + UNITY_INITIALIZE_OUTPUT(Input, data); + + float bold = step(v.texcoord1.y, 0); + + // Generate normal for backface + float3 view = ObjSpaceViewDir(v.vertex); + v.normal *= sign(dot(v.normal, view)); + +#if USE_DERIVATIVE + data.param.y = 1; +#else + float4 vert = v.vertex; + float4 vPosition = UnityObjectToClipPos(vert); + float2 pixelSize = vPosition.w; + + pixelSize /= float2(_ScaleX, _ScaleY) * mul((float2x2)UNITY_MATRIX_P, _ScreenParams.xy); + float scale = rsqrt(dot(pixelSize, pixelSize)); + scale *= abs(v.texcoord1.y) * _GradientScale * 1.5; + scale = lerp(scale * (1 - _PerspectiveFilter), scale, abs(dot(UnityObjectToWorldNormal(v.normal.xyz), normalize(WorldSpaceViewDir(vert))))); + data.param.y = scale; +#endif + + //float opacity = v.color.a; + + data.param.x = (lerp(_WeightNormal, _WeightBold, bold) / 4.0 + _FaceDilate) * _ScaleRatioA * 0.5; // + + v.texcoord1.xy = UnpackUV(v.texcoord1.x); + data.viewDirEnv = mul((float3x3)_EnvMatrix, WorldSpaceViewDir(v.vertex)); +} + +void PixShader(Input input, inout SurfaceOutput o) +{ + +#if USE_DERIVATIVE | BEVEL_ON + float3 delta = float3(1.0 / _TextureWidth, 1.0 / _TextureHeight, 0.0); + + float4 smp4x = { tex2D(_MainTex, input.uv_MainTex - delta.xz).a, + tex2D(_MainTex, input.uv_MainTex + delta.xz).a, + tex2D(_MainTex, input.uv_MainTex - delta.zy).a, + tex2D(_MainTex, input.uv_MainTex + delta.zy).a }; +#endif + +#if USE_DERIVATIVE + // Screen space scaling reciprocal with anisotropic correction + float2 edgeNormal = Normalize(float2(smp4x.x - smp4x.y, smp4x.z - smp4x.w)); + float2 res = float2(_TextureWidth * input.param.y, _TextureHeight); + float2 tdx = ddx(input.uv_MainTex)*res; + float2 tdy = ddy(input.uv_MainTex)*res; + float lx = length(tdx); + float ly = length(tdy); + float s = sqrt(min(lx, ly) / max(lx, ly)); + s = lerp(1, s, abs(dot(normalize(tdx + tdy), edgeNormal))); + float scale = rsqrt(abs(tdx.x * tdy.y - tdx.y * tdy.x)) * (_GradientScale * 2) * s; +#else + float scale = input.param.y; +#endif + + // Signed distance + float c = tex2D(_MainTex, input.uv_MainTex).a; + float sd = (.5 - c - input.param.x) * scale + .5; + float outline = _OutlineWidth*_ScaleRatioA * scale; + float softness = _OutlineSoftness*_ScaleRatioA * scale; + + // Color & Alpha + float4 faceColor = _FaceColor; + float4 outlineColor = _OutlineColor; + faceColor *= input.color; + outlineColor.a *= input.color.a; + faceColor *= tex2D(_FaceTex, float2(input.uv2_FaceTex.x + _FaceUVSpeedX * _Time.y, input.uv2_FaceTex.y + _FaceUVSpeedY * _Time.y)); + outlineColor *= tex2D(_OutlineTex, float2(input.uv2_OutlineTex.x + _OutlineUVSpeedX * _Time.y, input.uv2_OutlineTex.y + _OutlineUVSpeedY * _Time.y)); + faceColor = GetColor(sd, faceColor, outlineColor, outline, softness); + faceColor.rgb /= max(faceColor.a, 0.0001); + + +#if BEVEL_ON + // Face Normal + float3 n = GetSurfaceNormal(smp4x, input.param.x); + + // Bumpmap + float3 bump = UnpackNormal(tex2D(_BumpMap, input.uv2_FaceTex.xy)).xyz; + bump *= lerp(_BumpFace, _BumpOutline, saturate(sd + outline * 0.5)); + bump = lerp(float3(0, 0, 1), bump, faceColor.a); + n = normalize(n - bump); + + // Cubemap reflection + fixed4 reflcol = texCUBE(_Cube, reflect(input.viewDirEnv, mul((float3x3)unity_ObjectToWorld, n))); + float3 emission = reflcol.rgb * lerp(_ReflectFaceColor.rgb, _ReflectOutlineColor.rgb, saturate(sd + outline * 0.5)) * faceColor.a; +#else + float3 n = float3(0, 0, -1); + float3 emission = float3(0, 0, 0); +#endif + + + +#if GLOW_ON + float4 glowColor = GetGlowColor(sd, scale); + glowColor.a *= input.color.a; + emission += glowColor.rgb*glowColor.a; + faceColor = BlendARGB(glowColor, faceColor); + faceColor.rgb /= max(faceColor.a, 0.0001); +#endif + + // Set Standard output structure + o.Albedo = faceColor.rgb; + o.Normal = -n; + o.Emission = emission; + o.Specular = lerp(_FaceShininess, _OutlineShininess, saturate(sd + outline * 0.5)); + o.Gloss = 1; + o.Alpha = faceColor.a; +} diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/TextMesh Pro/Resources/Shaders/TMPro_Surface.cginc.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/TextMesh Pro/Resources/Shaders/TMPro_Surface.cginc.meta" new file mode 100644 index 00000000..8e750228 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/TextMesh Pro/Resources/Shaders/TMPro_Surface.cginc.meta" @@ -0,0 +1,7 @@ +fileFormatVersion: 2 +guid: d930090c0cd643c7b55f19a38538c162 +ShaderImporter: + defaultTextures: [] + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/TextMesh Pro/Resources/Style Sheets.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/TextMesh Pro/Resources/Style Sheets.meta" new file mode 100644 index 00000000..94579175 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/TextMesh Pro/Resources/Style Sheets.meta" @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 1e5676027f3ef3f4d9ee892a4a69e91f +folderAsset: yes +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/TextMesh Pro/Resources/Style Sheets/Default Style Sheet.asset" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/TextMesh Pro/Resources/Style Sheets/Default Style Sheet.asset" new file mode 100644 index 00000000..ceb609b2 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/TextMesh Pro/Resources/Style Sheets/Default Style Sheet.asset" @@ -0,0 +1,68 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!114 &11400000 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_PrefabParentObject: {fileID: 0} + m_PrefabInternal: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: ab2114bdc8544297b417dfefe9f1e410, type: 3} + m_Name: Default Style Sheet + m_EditorClassIdentifier: + m_StyleList: + - m_Name: H1 + m_HashCode: 2425 + m_OpeningDefinition: <#40ff80>* + m_ClosingDefinition: '*' + m_OpeningTagArray: 3c00000073000000690000007a000000650000003d00000032000000650000006d0000003e0000003c000000620000003e0000003c000000230000003400000030000000660000006600000038000000300000003e0000002a000000 + m_ClosingTagArray: 2a0000003c0000002f00000073000000690000007a000000650000003e0000003c0000002f000000620000003e0000003c0000002f000000630000006f0000006c0000006f000000720000003e000000 + - m_Name: Quote + m_HashCode: 92254330 + m_OpeningDefinition: + m_ClosingDefinition: + m_OpeningTagArray: 3c000000690000003e0000003c00000073000000690000007a000000650000003d0000003700000035000000250000003e0000003c0000006d000000610000007200000067000000690000006e0000003d0000003100000030000000250000003e000000 + m_ClosingTagArray: 3c0000002f000000690000003e0000003c0000002f00000073000000690000007a000000650000003e0000003c0000002f00000077000000690000006400000074000000680000003e0000003c0000002f0000006d000000610000007200000067000000690000006e0000003e000000 + - m_Name: Link + m_HashCode: 2687968 + m_OpeningDefinition: <#40a0ff> + m_ClosingDefinition: + m_OpeningTagArray: 3c000000750000003e0000003c000000230000003400000030000000610000003000000066000000660000003e0000003c0000006c000000690000006e0000006b0000003d0000002200000049000000440000005f0000003000000031000000220000003e000000 + m_ClosingTagArray: 3c0000002f000000750000003e0000003c0000002f000000630000006f0000006c0000006f000000720000003e0000003c0000002f0000006c000000690000006e0000006b0000003e000000 + - m_Name: Title + m_HashCode: 98732960 + m_OpeningDefinition: + m_ClosingDefinition: + m_OpeningTagArray: 3c00000073000000690000007a000000650000003d000000310000003200000035000000250000003e0000003c000000620000003e0000003c000000610000006c00000069000000670000006e0000003d00000063000000650000006e0000007400000065000000720000003e000000 + m_ClosingTagArray: 3c0000002f00000073000000690000007a000000650000003e0000003c0000002f000000620000003e0000003c0000002f000000610000006c00000069000000670000006e0000003e000000 + - m_Name: H2 + m_HashCode: 2426 + m_OpeningDefinition: <#4080FF> + m_ClosingDefinition: + m_OpeningTagArray: 3c00000073000000690000007a000000650000003d000000310000002e00000035000000650000006d0000003e0000003c000000620000003e0000003c000000230000003400000030000000380000003000000046000000460000003e000000 + m_ClosingTagArray: 3c0000002f00000073000000690000007a000000650000003e0000003c0000002f000000620000003e0000003c0000002f000000630000006f0000006c0000006f000000720000003e000000 + - m_Name: H3 + m_HashCode: 2427 + m_OpeningDefinition: <#FF8040> + m_ClosingDefinition: + m_OpeningTagArray: 3c00000073000000690000007a000000650000003d000000310000002e0000003100000037000000650000006d0000003e0000003c000000620000003e0000003c000000230000004600000046000000380000003000000034000000300000003e000000 + m_ClosingTagArray: 3c0000002f00000073000000690000007a000000650000003e0000003c0000002f000000620000003e0000003c0000002f000000630000006f0000006c0000006f000000720000003e000000 + - m_Name: C1 + m_HashCode: 2194 + m_OpeningDefinition: + m_ClosingDefinition: + m_OpeningTagArray: 3c000000630000006f0000006c0000006f000000720000003d000000230000006600000066000000660000006600000034000000300000003e000000 + m_ClosingTagArray: 3c0000002f000000630000006f0000006c0000006f000000720000003e000000 + - m_Name: C2 + m_HashCode: 2193 + m_OpeningDefinition: + m_ClosingDefinition: + m_OpeningTagArray: 3c000000630000006f0000006c0000006f000000720000003d000000230000006600000066000000340000003000000046000000460000003e0000003c00000073000000690000007a000000650000003d000000310000003200000035000000250000003e000000 + m_ClosingTagArray: 3c0000002f000000630000006f0000006c0000006f000000720000003e0000003c0000002f00000073000000690000007a000000650000003e000000 + - m_Name: C3 + m_HashCode: 2192 + m_OpeningDefinition: + m_ClosingDefinition: + m_OpeningTagArray: 3c000000630000006f0000006c0000006f000000720000003d000000230000003800000030000000410000003000000046000000460000003e0000003c000000620000003e000000 + m_ClosingTagArray: 3c0000002f000000630000006f0000006c0000006f000000720000003e0000003c0000002f000000620000003e000000 diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/TextMesh Pro/Resources/Style Sheets/Default Style Sheet.asset.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/TextMesh Pro/Resources/Style Sheets/Default Style Sheet.asset.meta" new file mode 100644 index 00000000..95fd96ed --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/TextMesh Pro/Resources/Style Sheets/Default Style Sheet.asset.meta" @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: f952c082cb03451daed3ee968ac6c63e +timeCreated: 1432805430 +licenseType: Store +NativeFormatImporter: + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/TextMesh Pro/Resources/TMP Settings.asset" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/TextMesh Pro/Resources/TMP Settings.asset" new file mode 100644 index 00000000..f34d7c9f --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/TextMesh Pro/Resources/TMP Settings.asset" @@ -0,0 +1,103 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!114 &11400000 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_PrefabParentObject: {fileID: 0} + m_PrefabInternal: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 2705215ac5b84b70bacc50632be6e391, type: 3} + m_Name: TMP Settings + m_EditorClassIdentifier: + m_enableWordWrapping: 1 + m_enableKerning: 1 + m_enableExtraPadding: 0 + m_enableTintAllSprites: 0 + m_enableParseEscapeCharacters: 1 + m_missingGlyphCharacter: 0 + m_warningsDisabled: 0 + m_defaultFontAsset: {fileID: 11400000, guid: 8f586378b4e144a9851e7b34d9b748ee, type: 2} + m_defaultFontAssetPath: Fonts & Materials/ + m_defaultFontSize: 36 + m_defaultAutoSizeMinRatio: 0.5 + m_defaultAutoSizeMaxRatio: 2 + m_defaultTextMeshProTextContainerSize: {x: 20, y: 5} + m_defaultTextMeshProUITextContainerSize: {x: 200, y: 50} + m_autoSizeTextContainer: 0 + m_fallbackFontAssets: [] + m_matchMaterialPreset: 1 + m_defaultSpriteAsset: {fileID: 11400000, guid: c41005c129ba4d66911b75229fd70b45, + type: 2} + m_defaultSpriteAssetPath: Sprite Assets/ + m_defaultColorGradientPresetsPath: Color Gradient Presets/ + m_enableEmojiSupport: 1 + m_defaultStyleSheet: {fileID: 11400000, guid: f952c082cb03451daed3ee968ac6c63e, + type: 2} + m_leadingCharacters: {fileID: 4900000, guid: d82c1b31c7e74239bff1220585707d2b, type: 3} + m_followingCharacters: {fileID: 4900000, guid: fade42e8bc714b018fac513c043d323b, + type: 3} + m_FontCreatorRecentSettings: + - sourceFontFileName: + sourceFontFileGUID: edcaa01543603ae4cb6b2edf25967e21 + pointSizeSamplingMode: 1 + pointSize: 109 + padding: 12 + packingMode: 0 + atlasWidth: 128 + atlasHeight: 128 + characterSetSelectionMode: 5 + characterSequence: 64 + fontStyle: 0 + fontStyleModifier: 2 + renderMode: 281 + includeFontFeatures: 0 + referenceFontAssetGUID: 903613a9fe4b65946aa20dfcce07abec + - sourceFontFileName: + sourceFontFileGUID: edcaa01543603ae4cb6b2edf25967e21 + pointSizeSamplingMode: 0 + pointSize: 108 + padding: 12 + packingMode: 0 + atlasWidth: 128 + atlasHeight: 128 + characterSetSelectionMode: 5 + characterSequence: 64 + fontStyle: 0 + fontStyleModifier: 2 + renderMode: 2090 + includeFontFeatures: 0 + referenceFontAssetGUID: 70cf10c1d306ada42aa6cd7268db990d + - sourceFontFileName: + sourceFontFileGUID: edcaa01543603ae4cb6b2edf25967e21 + pointSizeSamplingMode: 1 + pointSize: 109 + padding: 12 + packingMode: 0 + atlasWidth: 128 + atlasHeight: 128 + characterSetSelectionMode: 5 + characterSequence: 64 + fontStyle: 0 + fontStyleModifier: 2 + renderMode: 329 + includeFontFeatures: 0 + referenceFontAssetGUID: 396d465a5821ead47b589b228da7e980 + - sourceFontFileName: + sourceFontFileGUID: edcaa01543603ae4cb6b2edf25967e21 + pointSizeSamplingMode: 1 + pointSize: 338 + padding: 36 + packingMode: 0 + atlasWidth: 4096 + atlasHeight: 4096 + characterSetSelectionMode: 1 + characterSequence: 32 - 126, 160 - 255, 8192 - 8303, 8364, 8482, 9633 + fontStyle: 0 + fontStyleModifier: 2 + renderMode: 329 + includeFontFeatures: 0 + referenceFontAssetGUID: 3a4171c252e1112499af739474d9f48e + m_CreationSettingsSelectionIndex: 0 + m_CreationSettingsIndex: 0 diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/TextMesh Pro/Resources/TMP Settings.asset.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/TextMesh Pro/Resources/TMP Settings.asset.meta" new file mode 100644 index 00000000..01eee3eb --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/TextMesh Pro/Resources/TMP Settings.asset.meta" @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 3f5b5dff67a942289a9defa416b206f3 +timeCreated: 1436653997 +licenseType: Store +NativeFormatImporter: + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Textures.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Textures.meta" new file mode 100644 index 00000000..276d0ce5 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Textures.meta" @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: cddfa83e822d64976b1100583ee8cdec +folderAsset: yes +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Textures/PuffSprite.png" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Textures/PuffSprite.png" new file mode 100644 index 00000000..a427e552 Binary files /dev/null and "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Textures/PuffSprite.png" differ diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Textures/PuffSprite.png.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Textures/PuffSprite.png.meta" new file mode 100644 index 00000000..308e6ad9 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Textures/PuffSprite.png.meta" @@ -0,0 +1,88 @@ +fileFormatVersion: 2 +guid: 3073e03546e6ecb4eb8da9657031a310 +TextureImporter: + fileIDToRecycleName: {} + externalObjects: {} + serializedVersion: 7 + mipmaps: + mipMapMode: 0 + enableMipMap: 1 + sRGBTexture: 1 + linearTexture: 0 + fadeOut: 0 + borderMipMap: 0 + mipMapsPreserveCoverage: 0 + alphaTestReferenceValue: 0.5 + mipMapFadeDistanceStart: 1 + mipMapFadeDistanceEnd: 3 + bumpmap: + convertToNormalMap: 0 + externalNormalMap: 0 + heightScale: 0.25 + normalMapFilter: 0 + isReadable: 0 + streamingMipmaps: 0 + streamingMipmapsPriority: 0 + grayScaleToAlpha: 0 + generateCubemap: 6 + cubemapConvolution: 0 + seamlessCubemap: 0 + textureFormat: 1 + maxTextureSize: 2048 + textureSettings: + serializedVersion: 2 + filterMode: -1 + aniso: -1 + mipBias: -100 + wrapU: -1 + wrapV: -1 + wrapW: -1 + nPOTScale: 1 + lightmap: 0 + compressionQuality: 50 + spriteMode: 0 + spriteExtrude: 1 + spriteMeshType: 1 + alignment: 0 + spritePivot: {x: 0.5, y: 0.5} + spritePixelsToUnits: 100 + spriteBorder: {x: 0, y: 0, z: 0, w: 0} + spriteGenerateFallbackPhysicsShape: 1 + alphaUsage: 1 + alphaIsTransparency: 0 + spriteTessellationDetail: -1 + textureType: 0 + textureShape: 1 + singleChannelComponent: 0 + maxTextureSizeSet: 0 + compressionQualitySet: 0 + textureFormatSet: 0 + platformSettings: + - serializedVersion: 2 + buildTarget: DefaultTexturePlatform + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 0 + spriteSheet: + serializedVersion: 2 + sprites: [] + outline: [] + physicsShape: [] + bones: [] + spriteID: + vertices: [] + indices: + edges: [] + weights: [] + spritePackingTag: + pSDRemoveMatte: 0 + pSDShowRemoveMatteOption: 0 + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Textures/TemplateEnvironmentSwatch.png" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Textures/TemplateEnvironmentSwatch.png" new file mode 100644 index 00000000..bc697c8d Binary files /dev/null and "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Textures/TemplateEnvironmentSwatch.png" differ diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Textures/TemplateEnvironmentSwatch.png.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Textures/TemplateEnvironmentSwatch.png.meta" new file mode 100644 index 00000000..89ab3b3b --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Textures/TemplateEnvironmentSwatch.png.meta" @@ -0,0 +1,110 @@ +fileFormatVersion: 2 +guid: 18f94973eacde5f49920b7936b31d501 +TextureImporter: + fileIDToRecycleName: {} + externalObjects: {} + serializedVersion: 7 + mipmaps: + mipMapMode: 0 + enableMipMap: 0 + sRGBTexture: 1 + linearTexture: 0 + fadeOut: 0 + borderMipMap: 0 + mipMapsPreserveCoverage: 0 + alphaTestReferenceValue: 0.5 + mipMapFadeDistanceStart: 1 + mipMapFadeDistanceEnd: 3 + bumpmap: + convertToNormalMap: 0 + externalNormalMap: 0 + heightScale: 0.25 + normalMapFilter: 0 + isReadable: 0 + streamingMipmaps: 0 + streamingMipmapsPriority: 0 + grayScaleToAlpha: 0 + generateCubemap: 6 + cubemapConvolution: 0 + seamlessCubemap: 0 + textureFormat: 1 + maxTextureSize: 2048 + textureSettings: + serializedVersion: 2 + filterMode: 0 + aniso: -1 + mipBias: -100 + wrapU: 0 + wrapV: 0 + wrapW: 0 + nPOTScale: 1 + lightmap: 0 + compressionQuality: 50 + spriteMode: 0 + spriteExtrude: 1 + spriteMeshType: 1 + alignment: 0 + spritePivot: {x: 0.5, y: 0.5} + spritePixelsToUnits: 100 + spriteBorder: {x: 0, y: 0, z: 0, w: 0} + spriteGenerateFallbackPhysicsShape: 1 + alphaUsage: 0 + alphaIsTransparency: 0 + spriteTessellationDetail: -1 + textureType: 0 + textureShape: 1 + singleChannelComponent: 0 + maxTextureSizeSet: 0 + compressionQualitySet: 0 + textureFormatSet: 0 + platformSettings: + - serializedVersion: 2 + buildTarget: DefaultTexturePlatform + maxTextureSize: 32 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Standalone + maxTextureSize: 32 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: WebGL + maxTextureSize: 32 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 0 + spriteSheet: + serializedVersion: 2 + sprites: [] + outline: [] + physicsShape: [] + bones: [] + spriteID: + vertices: [] + indices: + edges: [] + weights: [] + spritePackingTag: + pSDRemoveMatte: 0 + pSDShowRemoveMatteOption: 0 + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Timelines.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Timelines.meta" new file mode 100644 index 00000000..8d01f14f --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Timelines.meta" @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 4fdab518172a510439d1fc4d96ebc6a8 +folderAsset: yes +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Timelines/RaceStart.playable" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Timelines/RaceStart.playable" new file mode 100644 index 00000000..6c735cb7 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Timelines/RaceStart.playable" @@ -0,0 +1,1993 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!114 &11400000 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 337831424, guid: 6a10b2909283487f913b00d94cd3faf5, type: 3} + m_Name: RaceStart + m_EditorClassIdentifier: + m_NextId: 0 + m_Tracks: + - {fileID: 114232313673077036} + - {fileID: 114943284557119080} + - {fileID: 114680697759565596} + - {fileID: 114544521468371282} + - {fileID: 114957938880747642} + - {fileID: 114978033096453796} + m_FixedDuration: 0 + m_EditorSettings: + m_Framerate: 60 + m_DurationMode: 0 + m_Version: 0 +--- !u!74 &74568437897044812 +AnimationClip: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_Name: Recorded + serializedVersion: 6 + m_Legacy: 0 + m_Compressed: 0 + m_UseHighQualityCurve: 1 + m_RotationCurves: [] + m_CompressedRotationCurves: [] + m_EulerCurves: [] + m_PositionCurves: [] + m_ScaleCurves: + - curve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: {x: 0, y: 0, z: 0} + inSlope: {x: 0, y: 0, z: 0} + outSlope: {x: 0, y: 0, z: 0} + tangentMode: 0 + weightedMode: 0 + inWeight: {x: 0.33333334, y: 0.33333334, z: 0.33333334} + outWeight: {x: 0.33333334, y: 0.33333334, z: 0.33333334} + - serializedVersion: 3 + time: 0.16666667 + value: {x: 1.5, y: 1.5, z: 1.5} + inSlope: {x: 0, y: 0, z: 0} + outSlope: {x: 0, y: 0, z: 0} + tangentMode: 0 + weightedMode: 0 + inWeight: {x: 0.33333334, y: 0.33333334, z: 0.33333334} + outWeight: {x: 0.33333334, y: 0.33333334, z: 0.33333334} + - serializedVersion: 3 + time: 0.33333334 + value: {x: 0.78045046, y: 0.78045046, z: 0.78045046} + inSlope: {x: 0, y: 0, z: 0} + outSlope: {x: 0, y: 0, z: 0} + tangentMode: 0 + weightedMode: 0 + inWeight: {x: 0.33333334, y: 0.33333334, z: 0.33333334} + outWeight: {x: 0.33333334, y: 0.33333334, z: 0.33333334} + - serializedVersion: 3 + time: 0.45 + value: {x: 1.1, y: 1.1, z: 1.1} + inSlope: {x: 0, y: 0, z: 0} + outSlope: {x: 0, y: 0, z: 0} + tangentMode: 0 + weightedMode: 0 + inWeight: {x: 0.33333334, y: 0.33333334, z: 0.33333334} + outWeight: {x: 0.33333334, y: 0.33333334, z: 0.33333334} + - serializedVersion: 3 + time: 0.6666667 + value: {x: 1, y: 1, z: 1} + inSlope: {x: -1.0434785, y: -1.0434785, z: -1.0434785} + outSlope: {x: -1.0434785, y: -1.0434785, z: -1.0434785} + tangentMode: 0 + weightedMode: 0 + inWeight: {x: 0.33333334, y: 0.33333334, z: 0.33333334} + outWeight: {x: 0.33333334, y: 0.33333334, z: 0.33333334} + - serializedVersion: 3 + time: 0.8333333 + value: {x: 0, y: 0, z: 0} + inSlope: {x: 0, y: 0, z: 0} + outSlope: {x: 0, y: 0, z: 0} + tangentMode: 0 + weightedMode: 0 + inWeight: {x: 0.33333334, y: 0.33333334, z: 0.33333334} + outWeight: {x: 0.33333334, y: 0.33333334, z: 0.33333334} + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + path: ThreeText + - curve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 1 + value: {x: 0, y: 0, z: 0} + inSlope: {x: 0, y: 0, z: 0} + outSlope: {x: 0, y: 0, z: 0} + tangentMode: 0 + weightedMode: 0 + inWeight: {x: 0.33333334, y: 0.33333334, z: 0.33333334} + outWeight: {x: 0.33333334, y: 0.33333334, z: 0.33333334} + - serializedVersion: 3 + time: 1.1666666 + value: {x: 1.5, y: 1.5, z: 1.5} + inSlope: {x: 0, y: 0, z: 0} + outSlope: {x: 0, y: 0, z: 0} + tangentMode: 0 + weightedMode: 0 + inWeight: {x: 0.33333334, y: 0.33333334, z: 0.33333334} + outWeight: {x: 0.33333334, y: 0.33333334, z: 0.33333334} + - serializedVersion: 3 + time: 1.3333334 + value: {x: 0.78045046, y: 0.78045046, z: 0.78045046} + inSlope: {x: 0, y: 0, z: 0} + outSlope: {x: 0, y: 0, z: 0} + tangentMode: 0 + weightedMode: 0 + inWeight: {x: 0.33333334, y: 0.33333334, z: 0.33333334} + outWeight: {x: 0.33333334, y: 0.33333334, z: 0.33333334} + - serializedVersion: 3 + time: 1.45 + value: {x: 1.1, y: 1.1, z: 1.1} + inSlope: {x: 0, y: 0, z: 0} + outSlope: {x: 0, y: 0, z: 0} + tangentMode: 0 + weightedMode: 0 + inWeight: {x: 0.33333334, y: 0.33333334, z: 0.33333334} + outWeight: {x: 0.33333334, y: 0.33333334, z: 0.33333334} + - serializedVersion: 3 + time: 1.6666666 + value: {x: 1, y: 1, z: 1} + inSlope: {x: -1.0434785, y: -1.0434785, z: -1.0434785} + outSlope: {x: -1.0434785, y: -1.0434785, z: -1.0434785} + tangentMode: 0 + weightedMode: 0 + inWeight: {x: 0.33333334, y: 0.33333334, z: 0.33333334} + outWeight: {x: 0.33333334, y: 0.33333334, z: 0.33333334} + - serializedVersion: 3 + time: 1.8333334 + value: {x: 0, y: 0, z: 0} + inSlope: {x: 0, y: 0, z: 0} + outSlope: {x: 0, y: 0, z: 0} + tangentMode: 0 + weightedMode: 0 + inWeight: {x: 0.33333334, y: 0.33333334, z: 0.33333334} + outWeight: {x: 0.33333334, y: 0.33333334, z: 0.33333334} + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + path: TwoText + - curve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 2 + value: {x: 0, y: 0, z: 0} + inSlope: {x: 0, y: 0, z: 0} + outSlope: {x: 0, y: 0, z: 0} + tangentMode: 0 + weightedMode: 0 + inWeight: {x: 0.33333334, y: 0.33333334, z: 0.33333334} + outWeight: {x: 0.33333334, y: 0.33333334, z: 0.33333334} + - serializedVersion: 3 + time: 2.1666667 + value: {x: 1.5, y: 1.5, z: 1.5} + inSlope: {x: 0, y: 0, z: 0} + outSlope: {x: 0, y: 0, z: 0} + tangentMode: 0 + weightedMode: 0 + inWeight: {x: 0.33333334, y: 0.33333334, z: 0.33333334} + outWeight: {x: 0.33333334, y: 0.33333334, z: 0.33333334} + - serializedVersion: 3 + time: 2.3333333 + value: {x: 0.78045046, y: 0.78045046, z: 0.78045046} + inSlope: {x: 0, y: 0, z: 0} + outSlope: {x: 0, y: 0, z: 0} + tangentMode: 0 + weightedMode: 0 + inWeight: {x: 0.33333334, y: 0.33333334, z: 0.33333334} + outWeight: {x: 0.33333334, y: 0.33333334, z: 0.33333334} + - serializedVersion: 3 + time: 2.45 + value: {x: 1.1, y: 1.1, z: 1.1} + inSlope: {x: 0, y: 0, z: 0} + outSlope: {x: 0, y: 0, z: 0} + tangentMode: 0 + weightedMode: 0 + inWeight: {x: 0.33333334, y: 0.33333334, z: 0.33333334} + outWeight: {x: 0.33333334, y: 0.33333334, z: 0.33333334} + - serializedVersion: 3 + time: 2.6666667 + value: {x: 1, y: 1, z: 1} + inSlope: {x: -1.0434788, y: -1.0434788, z: -1.0434788} + outSlope: {x: -1.0434788, y: -1.0434788, z: -1.0434788} + tangentMode: 0 + weightedMode: 0 + inWeight: {x: 0.33333334, y: 0.33333334, z: 0.33333334} + outWeight: {x: 0.33333334, y: 0.33333334, z: 0.33333334} + - serializedVersion: 3 + time: 2.8333333 + value: {x: 0, y: 0, z: 0} + inSlope: {x: 0, y: 0, z: 0} + outSlope: {x: 0, y: 0, z: 0} + tangentMode: 0 + weightedMode: 0 + inWeight: {x: 0.33333334, y: 0.33333334, z: 0.33333334} + outWeight: {x: 0.33333334, y: 0.33333334, z: 0.33333334} + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + path: OneText + - curve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 3 + value: {x: 0, y: 0, z: 0} + inSlope: {x: 0, y: 0, z: 0} + outSlope: {x: 0, y: 0, z: 0} + tangentMode: 0 + weightedMode: 0 + inWeight: {x: 0.33333334, y: 0.33333334, z: 0.33333334} + outWeight: {x: 0.33333334, y: 0.33333334, z: 0.33333334} + - serializedVersion: 3 + time: 3.1666667 + value: {x: 1.5, y: 1.5, z: 1.5} + inSlope: {x: 0, y: 0, z: 0} + outSlope: {x: 0, y: 0, z: 0} + tangentMode: 0 + weightedMode: 0 + inWeight: {x: 0.33333334, y: 0.33333334, z: 0.33333334} + outWeight: {x: 0.33333334, y: 0.33333334, z: 0.33333334} + - serializedVersion: 3 + time: 3.3333333 + value: {x: 0.78045046, y: 0.78045046, z: 0.78045046} + inSlope: {x: 0, y: 0, z: 0} + outSlope: {x: 0, y: 0, z: 0} + tangentMode: 0 + weightedMode: 0 + inWeight: {x: 0.33333334, y: 0.33333334, z: 0.33333334} + outWeight: {x: 0.33333334, y: 0.33333334, z: 0.33333334} + - serializedVersion: 3 + time: 3.45 + value: {x: 1.1, y: 1.1, z: 1.1} + inSlope: {x: 0, y: 0, z: 0} + outSlope: {x: 0, y: 0, z: 0} + tangentMode: 0 + weightedMode: 0 + inWeight: {x: 0.33333334, y: 0.33333334, z: 0.33333334} + outWeight: {x: 0.33333334, y: 0.33333334, z: 0.33333334} + - serializedVersion: 3 + time: 3.8333333 + value: {x: 1, y: 1, z: 1} + inSlope: {x: -0.7272729, y: -0.7272729, z: -0.7272729} + outSlope: {x: -0.7272729, y: -0.7272729, z: -0.7272729} + tangentMode: 0 + weightedMode: 0 + inWeight: {x: 0.33333334, y: 0.33333334, z: 0.33333334} + outWeight: {x: 0.33333334, y: 0.33333334, z: 0.33333334} + - serializedVersion: 3 + time: 4 + value: {x: 0, y: 0, z: 0} + inSlope: {x: 0, y: 0, z: 0} + outSlope: {x: 0, y: 0, z: 0} + tangentMode: 0 + weightedMode: 0 + inWeight: {x: 0.33333334, y: 0.33333334, z: 0.33333334} + outWeight: {x: 0.33333334, y: 0.33333334, z: 0.33333334} + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + path: GoText + m_FloatCurves: [] + m_PPtrCurves: [] + m_SampleRate: 60 + m_WrapMode: 0 + m_Bounds: + m_Center: {x: 0, y: 0, z: 0} + m_Extent: {x: 0, y: 0, z: 0} + m_ClipBindingConstant: + genericBindings: + - serializedVersion: 2 + path: 39374825 + attribute: 3 + script: {fileID: 0} + typeID: 4 + customType: 0 + isPPtrCurve: 0 + - serializedVersion: 2 + path: 4249753818 + attribute: 3 + script: {fileID: 0} + typeID: 4 + customType: 0 + isPPtrCurve: 0 + - serializedVersion: 2 + path: 4143880988 + attribute: 3 + script: {fileID: 0} + typeID: 4 + customType: 0 + isPPtrCurve: 0 + - serializedVersion: 2 + path: 33598478 + attribute: 3 + script: {fileID: 0} + typeID: 4 + customType: 0 + isPPtrCurve: 0 + pptrCurveMapping: [] + m_AnimationClipSettings: + serializedVersion: 2 + m_AdditiveReferencePoseClip: {fileID: 0} + m_AdditiveReferencePoseTime: 0 + m_StartTime: 0 + m_StopTime: 4 + m_OrientationOffsetY: 0 + m_Level: 0 + m_CycleOffset: 0 + m_HasAdditiveReferencePose: 0 + m_LoopTime: 0 + m_LoopBlend: 0 + m_LoopBlendOrientation: 0 + m_LoopBlendPositionY: 0 + m_LoopBlendPositionXZ: 0 + m_KeepOriginalOrientation: 0 + m_KeepOriginalPositionY: 1 + m_KeepOriginalPositionXZ: 0 + m_HeightFromFeet: 0 + m_Mirror: 0 + m_EditorCurves: + - curve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 136 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 0.16666667 + value: 1.5 + inSlope: 0 + outSlope: 0 + tangentMode: 136 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 0.33333334 + value: 0.78045046 + inSlope: 0 + outSlope: 0 + tangentMode: 136 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 0.45 + value: 1.1 + inSlope: 0 + outSlope: 0 + tangentMode: 136 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 0.6666667 + value: 1 + inSlope: -1.0434785 + outSlope: -1.0434785 + tangentMode: 136 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 0.8333333 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 136 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + attribute: m_LocalScale.x + path: ThreeText + classID: 224 + script: {fileID: 0} + - curve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 136 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 0.16666667 + value: 1.5 + inSlope: 0 + outSlope: 0 + tangentMode: 136 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 0.33333334 + value: 0.78045046 + inSlope: 0 + outSlope: 0 + tangentMode: 136 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 0.45 + value: 1.1 + inSlope: 0 + outSlope: 0 + tangentMode: 136 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 0.6666667 + value: 1 + inSlope: -1.0434785 + outSlope: -1.0434785 + tangentMode: 136 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 0.8333333 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 136 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + attribute: m_LocalScale.y + path: ThreeText + classID: 224 + script: {fileID: 0} + - curve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 136 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 0.16666667 + value: 1.5 + inSlope: 0 + outSlope: 0 + tangentMode: 136 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 0.33333334 + value: 0.78045046 + inSlope: 0 + outSlope: 0 + tangentMode: 136 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 0.45 + value: 1.1 + inSlope: 0 + outSlope: 0 + tangentMode: 136 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 0.6666667 + value: 1 + inSlope: -1.0434785 + outSlope: -1.0434785 + tangentMode: 136 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 0.8333333 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 136 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + attribute: m_LocalScale.z + path: ThreeText + classID: 224 + script: {fileID: 0} + - curve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 136 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1.1666666 + value: 1.5 + inSlope: 0 + outSlope: 0 + tangentMode: 136 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1.3333334 + value: 0.78045046 + inSlope: 0 + outSlope: 0 + tangentMode: 136 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1.45 + value: 1.1 + inSlope: 0 + outSlope: 0 + tangentMode: 136 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1.6666666 + value: 1 + inSlope: -1.0434785 + outSlope: -1.0434785 + tangentMode: 136 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1.8333334 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 136 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + attribute: m_LocalScale.x + path: TwoText + classID: 224 + script: {fileID: 0} + - curve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 136 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1.1666666 + value: 1.5 + inSlope: 0 + outSlope: 0 + tangentMode: 136 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1.3333334 + value: 0.78045046 + inSlope: 0 + outSlope: 0 + tangentMode: 136 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1.45 + value: 1.1 + inSlope: 0 + outSlope: 0 + tangentMode: 136 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1.6666666 + value: 1 + inSlope: -1.0434785 + outSlope: -1.0434785 + tangentMode: 136 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1.8333334 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 136 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + attribute: m_LocalScale.y + path: TwoText + classID: 224 + script: {fileID: 0} + - curve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 136 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1.1666666 + value: 1.5 + inSlope: 0 + outSlope: 0 + tangentMode: 136 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1.3333334 + value: 0.78045046 + inSlope: 0 + outSlope: 0 + tangentMode: 136 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1.45 + value: 1.1 + inSlope: 0 + outSlope: 0 + tangentMode: 136 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1.6666666 + value: 1 + inSlope: -1.0434785 + outSlope: -1.0434785 + tangentMode: 136 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1.8333334 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 136 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + attribute: m_LocalScale.z + path: TwoText + classID: 224 + script: {fileID: 0} + - curve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 2 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 136 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 2.1666667 + value: 1.5 + inSlope: 0 + outSlope: 0 + tangentMode: 136 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 2.3333333 + value: 0.78045046 + inSlope: 0 + outSlope: 0 + tangentMode: 136 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 2.45 + value: 1.1 + inSlope: 0 + outSlope: 0 + tangentMode: 136 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 2.6666667 + value: 1 + inSlope: -1.0434788 + outSlope: -1.0434788 + tangentMode: 136 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 2.8333333 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 136 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + attribute: m_LocalScale.x + path: OneText + classID: 224 + script: {fileID: 0} + - curve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 2 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 136 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 2.1666667 + value: 1.5 + inSlope: 0 + outSlope: 0 + tangentMode: 136 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 2.3333333 + value: 0.78045046 + inSlope: 0 + outSlope: 0 + tangentMode: 136 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 2.45 + value: 1.1 + inSlope: 0 + outSlope: 0 + tangentMode: 136 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 2.6666667 + value: 1 + inSlope: -1.0434788 + outSlope: -1.0434788 + tangentMode: 136 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 2.8333333 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 136 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + attribute: m_LocalScale.y + path: OneText + classID: 224 + script: {fileID: 0} + - curve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 2 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 136 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 2.1666667 + value: 1.5 + inSlope: 0 + outSlope: 0 + tangentMode: 136 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 2.3333333 + value: 0.78045046 + inSlope: 0 + outSlope: 0 + tangentMode: 136 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 2.45 + value: 1.1 + inSlope: 0 + outSlope: 0 + tangentMode: 136 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 2.6666667 + value: 1 + inSlope: -1.0434788 + outSlope: -1.0434788 + tangentMode: 136 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 2.8333333 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 136 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + attribute: m_LocalScale.z + path: OneText + classID: 224 + script: {fileID: 0} + - curve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 3 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 136 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 3.1666667 + value: 1.5 + inSlope: 0 + outSlope: 0 + tangentMode: 136 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 3.3333333 + value: 0.78045046 + inSlope: 0 + outSlope: 0 + tangentMode: 136 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 3.45 + value: 1.1 + inSlope: 0 + outSlope: 0 + tangentMode: 136 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 3.8333333 + value: 1 + inSlope: -0.7272729 + outSlope: -0.7272729 + tangentMode: 136 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 4 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 136 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + attribute: m_LocalScale.x + path: GoText + classID: 224 + script: {fileID: 0} + - curve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 3 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 136 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 3.1666667 + value: 1.5 + inSlope: 0 + outSlope: 0 + tangentMode: 136 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 3.3333333 + value: 0.78045046 + inSlope: 0 + outSlope: 0 + tangentMode: 136 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 3.45 + value: 1.1 + inSlope: 0 + outSlope: 0 + tangentMode: 136 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 3.8333333 + value: 1 + inSlope: -0.7272729 + outSlope: -0.7272729 + tangentMode: 136 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 4 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 136 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + attribute: m_LocalScale.y + path: GoText + classID: 224 + script: {fileID: 0} + - curve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 3 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 136 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 3.1666667 + value: 1.5 + inSlope: 0 + outSlope: 0 + tangentMode: 136 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 3.3333333 + value: 0.78045046 + inSlope: 0 + outSlope: 0 + tangentMode: 136 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 3.45 + value: 1.1 + inSlope: 0 + outSlope: 0 + tangentMode: 136 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 3.8333333 + value: 1 + inSlope: -0.7272729 + outSlope: -0.7272729 + tangentMode: 136 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 4 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 136 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + attribute: m_LocalScale.z + path: GoText + classID: 224 + script: {fileID: 0} + m_EulerEditorCurves: [] + m_HasGenericRootTransform: 0 + m_HasMotionFloatCurves: 0 + m_Events: [] +--- !u!114 &114011494730334186 +MonoBehaviour: + m_ObjectHideFlags: 1 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 442072544, guid: 6a10b2909283487f913b00d94cd3faf5, type: 3} + m_Name: ActivationPlayableAsset + m_EditorClassIdentifier: +--- !u!114 &114042821576444056 +MonoBehaviour: + m_ObjectHideFlags: 1 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: -1977359656, guid: 6a10b2909283487f913b00d94cd3faf5, type: 3} + m_Name: AudioPlayableAsset + m_EditorClassIdentifier: + m_Clip: {fileID: 8300000, guid: a935550c6172c6548b1bc8de6e56618a, type: 3} + m_Loop: 0 + m_bufferingTime: 0.1 +--- !u!114 &114151722102143882 +MonoBehaviour: + m_ObjectHideFlags: 1 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 46519060, guid: 6a10b2909283487f913b00d94cd3faf5, type: 3} + m_Name: Activation Track (4) + m_EditorClassIdentifier: + m_Locked: 0 + m_Muted: 0 + m_CustomPlayableFullTypename: + m_AnimClip: {fileID: 0} + m_Parent: {fileID: 11400000} + m_Children: [] + m_Clips: [] + m_Version: 2 + m_PostPlaybackState: 3 +--- !u!114 &114170983910930356 +MonoBehaviour: + m_ObjectHideFlags: 1 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 442072544, guid: 6a10b2909283487f913b00d94cd3faf5, type: 3} + m_Name: ActivationPlayableAsset + m_EditorClassIdentifier: +--- !u!114 &114232313673077036 +MonoBehaviour: + m_ObjectHideFlags: 1 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 1467732076, guid: 6a10b2909283487f913b00d94cd3faf5, type: 3} + m_Name: Animation Track + m_EditorClassIdentifier: + m_Locked: 0 + m_Muted: 0 + m_CustomPlayableFullTypename: + m_AnimClip: {fileID: 74568437897044812} + m_Parent: {fileID: 11400000} + m_Children: [] + m_Clips: [] + m_Version: 2 + m_OpenClipPreExtrapolation: 1 + m_OpenClipPostExtrapolation: 1 + m_OpenClipOffsetPosition: {x: 0, y: 0, z: 0} + m_OpenClipOffsetEulerAngles: {x: 0, y: 0, z: 0} + m_OpenClipTimeOffset: 0 + m_OpenClipRemoveOffset: 0 + m_MatchTargetFields: 63 + m_Position: {x: 0, y: 0, z: 0} + m_EulerAngles: {x: 0, y: 0, z: 0} + m_AvatarMask: {fileID: 0} + m_ApplyAvatarMask: 1 + m_TrackOffset: 0 + m_OpenClipOffsetRotation: {x: 0, y: 0, z: 0, w: 1} + m_Rotation: {x: 0, y: 0, z: 0, w: 1} + m_ApplyOffsets: 0 +--- !u!114 &114312078491762190 +MonoBehaviour: + m_ObjectHideFlags: 1 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: -1977359656, guid: 6a10b2909283487f913b00d94cd3faf5, type: 3} + m_Name: AudioPlayableAsset + m_EditorClassIdentifier: + m_Clip: {fileID: 8300000, guid: a935550c6172c6548b1bc8de6e56618a, type: 3} + m_Loop: 0 + m_bufferingTime: 0.1 +--- !u!114 &114362207585555824 +MonoBehaviour: + m_ObjectHideFlags: 1 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: -1977359656, guid: 6a10b2909283487f913b00d94cd3faf5, type: 3} + m_Name: AudioPlayableAsset + m_EditorClassIdentifier: + m_Clip: {fileID: 8300000, guid: 30a284806deffbb4691f78109d0b617b, type: 3} + m_Loop: 0 + m_bufferingTime: 0.1 +--- !u!114 &114375160240857342 +MonoBehaviour: + m_ObjectHideFlags: 1 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 1467732076, guid: 6a10b2909283487f913b00d94cd3faf5, type: 3} + m_Name: Animation Track (1) + m_EditorClassIdentifier: + m_Locked: 0 + m_Muted: 0 + m_CustomPlayableFullTypename: + m_AnimClip: {fileID: 0} + m_Parent: {fileID: 11400000} + m_Children: [] + m_Clips: [] + m_Version: 2 + m_OpenClipPreExtrapolation: 0 + m_OpenClipPostExtrapolation: 0 + m_OpenClipOffsetPosition: {x: 0, y: 0, z: 0} + m_OpenClipOffsetEulerAngles: {x: 0, y: 0, z: 0} + m_OpenClipTimeOffset: 0 + m_OpenClipRemoveOffset: 0 + m_MatchTargetFields: 63 + m_Position: {x: 0, y: 0, z: 0} + m_EulerAngles: {x: 0, y: 0, z: 0} + m_AvatarMask: {fileID: 0} + m_ApplyAvatarMask: 1 + m_TrackOffset: 0 + m_OpenClipOffsetRotation: {x: 0, y: 0, z: 0, w: 1} + m_Rotation: {x: 0, y: 0, z: 0, w: 1} + m_ApplyOffsets: 0 +--- !u!114 &114472787707467088 +MonoBehaviour: + m_ObjectHideFlags: 1 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 46519060, guid: 6a10b2909283487f913b00d94cd3faf5, type: 3} + m_Name: Activation Track (4) + m_EditorClassIdentifier: + m_Locked: 0 + m_Muted: 0 + m_CustomPlayableFullTypename: + m_AnimClip: {fileID: 0} + m_Parent: {fileID: 11400000} + m_Children: [] + m_Clips: [] + m_Version: 2 + m_PostPlaybackState: 3 +--- !u!114 &114490963529956978 +MonoBehaviour: + m_ObjectHideFlags: 1 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 442072544, guid: 6a10b2909283487f913b00d94cd3faf5, type: 3} + m_Name: ActivationPlayableAsset + m_EditorClassIdentifier: +--- !u!114 &114522681226082404 +MonoBehaviour: + m_ObjectHideFlags: 1 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 1467732076, guid: 6a10b2909283487f913b00d94cd3faf5, type: 3} + m_Name: Animation Track (1) + m_EditorClassIdentifier: + m_Locked: 0 + m_Muted: 0 + m_CustomPlayableFullTypename: + m_AnimClip: {fileID: 0} + m_Parent: {fileID: 11400000} + m_Children: [] + m_Clips: [] + m_Version: 2 + m_OpenClipPreExtrapolation: 0 + m_OpenClipPostExtrapolation: 0 + m_OpenClipOffsetPosition: {x: 0, y: 0, z: 0} + m_OpenClipOffsetEulerAngles: {x: 0, y: 0, z: 0} + m_OpenClipTimeOffset: 0 + m_OpenClipRemoveOffset: 0 + m_MatchTargetFields: 63 + m_Position: {x: 0, y: 0, z: 0} + m_EulerAngles: {x: 0, y: 0, z: 0} + m_AvatarMask: {fileID: 0} + m_ApplyAvatarMask: 1 + m_TrackOffset: 0 + m_OpenClipOffsetRotation: {x: 0, y: 0, z: 0, w: 1} + m_Rotation: {x: 0, y: 0, z: 0, w: 1} + m_ApplyOffsets: 0 +--- !u!114 &114544521468371282 +MonoBehaviour: + m_ObjectHideFlags: 1 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 46519060, guid: 6a10b2909283487f913b00d94cd3faf5, type: 3} + m_Name: Activation Track (2) + m_EditorClassIdentifier: + m_Locked: 0 + m_Muted: 0 + m_CustomPlayableFullTypename: + m_AnimClip: {fileID: 0} + m_Parent: {fileID: 11400000} + m_Children: [] + m_Clips: + - m_Start: 2 + m_ClipIn: 0 + m_Asset: {fileID: 114723967384911068} + m_Duration: 1 + m_TimeScale: 1 + m_ParentTrack: {fileID: 114544521468371282} + m_EaseInDuration: 0 + m_EaseOutDuration: 0 + m_BlendInDuration: 0 + m_BlendOutDuration: 0 + m_MixInCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0 + outWeight: 0 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0 + outWeight: 0 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + m_MixOutCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0 + outWeight: 0 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0 + outWeight: 0 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + m_BlendInCurveMode: 0 + m_BlendOutCurveMode: 0 + m_ExposedParameterNames: [] + m_AnimationCurves: {fileID: 0} + m_Recordable: 0 + m_PostExtrapolationMode: 0 + m_PreExtrapolationMode: 0 + m_PostExtrapolationTime: 0 + m_PreExtrapolationTime: 0 + m_DisplayName: Active + m_Version: 1 + m_Version: 2 + m_PostPlaybackState: 1 +--- !u!114 &114680697759565596 +MonoBehaviour: + m_ObjectHideFlags: 1 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 46519060, guid: 6a10b2909283487f913b00d94cd3faf5, type: 3} + m_Name: Activation Track (1) + m_EditorClassIdentifier: + m_Locked: 0 + m_Muted: 0 + m_CustomPlayableFullTypename: + m_AnimClip: {fileID: 0} + m_Parent: {fileID: 11400000} + m_Children: [] + m_Clips: + - m_Start: 1 + m_ClipIn: 0 + m_Asset: {fileID: 114011494730334186} + m_Duration: 1 + m_TimeScale: 1 + m_ParentTrack: {fileID: 114680697759565596} + m_EaseInDuration: 0 + m_EaseOutDuration: 0 + m_BlendInDuration: 0 + m_BlendOutDuration: 0 + m_MixInCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0 + outWeight: 0 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0 + outWeight: 0 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + m_MixOutCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0 + outWeight: 0 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0 + outWeight: 0 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + m_BlendInCurveMode: 0 + m_BlendOutCurveMode: 0 + m_ExposedParameterNames: [] + m_AnimationCurves: {fileID: 0} + m_Recordable: 0 + m_PostExtrapolationMode: 0 + m_PreExtrapolationMode: 0 + m_PostExtrapolationTime: 0 + m_PreExtrapolationTime: 0 + m_DisplayName: Active + m_Version: 1 + m_Version: 2 + m_PostPlaybackState: 1 +--- !u!114 &114722523567521632 +MonoBehaviour: + m_ObjectHideFlags: 1 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: -1977359656, guid: 6a10b2909283487f913b00d94cd3faf5, type: 3} + m_Name: AudioPlayableAsset + m_EditorClassIdentifier: + m_Clip: {fileID: 8300000, guid: a935550c6172c6548b1bc8de6e56618a, type: 3} + m_Loop: 0 + m_bufferingTime: 0.1 +--- !u!114 &114723967384911068 +MonoBehaviour: + m_ObjectHideFlags: 1 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 442072544, guid: 6a10b2909283487f913b00d94cd3faf5, type: 3} + m_Name: ActivationPlayableAsset + m_EditorClassIdentifier: +--- !u!114 &114943284557119080 +MonoBehaviour: + m_ObjectHideFlags: 1 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 46519060, guid: 6a10b2909283487f913b00d94cd3faf5, type: 3} + m_Name: Activation Track + m_EditorClassIdentifier: + m_Locked: 0 + m_Muted: 0 + m_CustomPlayableFullTypename: + m_AnimClip: {fileID: 0} + m_Parent: {fileID: 11400000} + m_Children: [] + m_Clips: + - m_Start: 0 + m_ClipIn: 0 + m_Asset: {fileID: 114490963529956978} + m_Duration: 1 + m_TimeScale: 1 + m_ParentTrack: {fileID: 114943284557119080} + m_EaseInDuration: 0 + m_EaseOutDuration: 0 + m_BlendInDuration: 0 + m_BlendOutDuration: 0 + m_MixInCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0 + outWeight: 0 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0 + outWeight: 0 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + m_MixOutCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0 + outWeight: 0 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0 + outWeight: 0 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + m_BlendInCurveMode: 0 + m_BlendOutCurveMode: 0 + m_ExposedParameterNames: [] + m_AnimationCurves: {fileID: 0} + m_Recordable: 0 + m_PostExtrapolationMode: 0 + m_PreExtrapolationMode: 0 + m_PostExtrapolationTime: 0 + m_PreExtrapolationTime: 0 + m_DisplayName: Active + m_Version: 1 + m_Version: 2 + m_PostPlaybackState: 1 +--- !u!114 &114957938880747642 +MonoBehaviour: + m_ObjectHideFlags: 1 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 46519060, guid: 6a10b2909283487f913b00d94cd3faf5, type: 3} + m_Name: Activation Track (3) + m_EditorClassIdentifier: + m_Locked: 0 + m_Muted: 0 + m_CustomPlayableFullTypename: + m_AnimClip: {fileID: 0} + m_Parent: {fileID: 11400000} + m_Children: [] + m_Clips: + - m_Start: 3 + m_ClipIn: 0 + m_Asset: {fileID: 114170983910930356} + m_Duration: 1 + m_TimeScale: 1 + m_ParentTrack: {fileID: 114957938880747642} + m_EaseInDuration: 0 + m_EaseOutDuration: 0 + m_BlendInDuration: 0 + m_BlendOutDuration: 0 + m_MixInCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0 + outWeight: 0 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0 + outWeight: 0 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + m_MixOutCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0 + outWeight: 0 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0 + outWeight: 0 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + m_BlendInCurveMode: 0 + m_BlendOutCurveMode: 0 + m_ExposedParameterNames: [] + m_AnimationCurves: {fileID: 0} + m_Recordable: 0 + m_PostExtrapolationMode: 0 + m_PreExtrapolationMode: 0 + m_PostExtrapolationTime: 0 + m_PreExtrapolationTime: 0 + m_DisplayName: Active + m_Version: 1 + m_Version: 2 + m_PostPlaybackState: 1 +--- !u!114 &114978033096453796 +MonoBehaviour: + m_ObjectHideFlags: 1 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: -2113462093, guid: 6a10b2909283487f913b00d94cd3faf5, type: 3} + m_Name: Audio Track + m_EditorClassIdentifier: + m_Locked: 0 + m_Muted: 0 + m_CustomPlayableFullTypename: + m_AnimClip: {fileID: 0} + m_Parent: {fileID: 11400000} + m_Children: [] + m_Clips: + - m_Start: 0.05 + m_ClipIn: 0 + m_Asset: {fileID: 114312078491762190} + m_Duration: 1 + m_TimeScale: 0.9833333333333333 + m_ParentTrack: {fileID: 114978033096453796} + m_EaseInDuration: 0 + m_EaseOutDuration: 0 + m_BlendInDuration: -1 + m_BlendOutDuration: -1 + m_MixInCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0 + outWeight: 0 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0 + outWeight: 0 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + m_MixOutCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0 + outWeight: 0 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0 + outWeight: 0 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + m_BlendInCurveMode: 0 + m_BlendOutCurveMode: 0 + m_ExposedParameterNames: [] + m_AnimationCurves: {fileID: 0} + m_Recordable: 0 + m_PostExtrapolationMode: 0 + m_PreExtrapolationMode: 0 + m_PostExtrapolationTime: 0 + m_PreExtrapolationTime: 0 + m_DisplayName: StartSound01 + m_Version: 1 + - m_Start: 1.05 + m_ClipIn: 0 + m_Asset: {fileID: 114722523567521632} + m_Duration: 1 + m_TimeScale: 1 + m_ParentTrack: {fileID: 114978033096453796} + m_EaseInDuration: 0 + m_EaseOutDuration: 0 + m_BlendInDuration: -1 + m_BlendOutDuration: -1 + m_MixInCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0 + outWeight: 0 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0 + outWeight: 0 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + m_MixOutCurve: + serializedVersion: 2 + m_Curve: [] + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + m_BlendInCurveMode: 0 + m_BlendOutCurveMode: 0 + m_ExposedParameterNames: [] + m_AnimationCurves: {fileID: 0} + m_Recordable: 0 + m_PostExtrapolationMode: 0 + m_PreExtrapolationMode: 0 + m_PostExtrapolationTime: 0 + m_PreExtrapolationTime: 0 + m_DisplayName: StartSound01 + m_Version: 1 + - m_Start: 2.05 + m_ClipIn: 0 + m_Asset: {fileID: 114042821576444056} + m_Duration: 1 + m_TimeScale: 1 + m_ParentTrack: {fileID: 114978033096453796} + m_EaseInDuration: 0 + m_EaseOutDuration: 0 + m_BlendInDuration: -1 + m_BlendOutDuration: -1 + m_MixInCurve: + serializedVersion: 2 + m_Curve: [] + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + m_MixOutCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0 + outWeight: 0 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0 + outWeight: 0 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + m_BlendInCurveMode: 0 + m_BlendOutCurveMode: 0 + m_ExposedParameterNames: [] + m_AnimationCurves: {fileID: 0} + m_Recordable: 0 + m_PostExtrapolationMode: 0 + m_PreExtrapolationMode: 0 + m_PostExtrapolationTime: 0 + m_PreExtrapolationTime: 0 + m_DisplayName: StartSound01 + m_Version: 1 + - m_Start: 3.05 + m_ClipIn: 0 + m_Asset: {fileID: 114362207585555824} + m_Duration: 0.8833333333333333 + m_TimeScale: 1 + m_ParentTrack: {fileID: 114978033096453796} + m_EaseInDuration: 0 + m_EaseOutDuration: 0 + m_BlendInDuration: -1 + m_BlendOutDuration: -1 + m_MixInCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0 + outWeight: 0 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0 + outWeight: 0 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + m_MixOutCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0 + outWeight: 0 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0 + outWeight: 0 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + m_BlendInCurveMode: 0 + m_BlendOutCurveMode: 0 + m_ExposedParameterNames: [] + m_AnimationCurves: {fileID: 0} + m_Recordable: 0 + m_PostExtrapolationMode: 0 + m_PreExtrapolationMode: 0 + m_PostExtrapolationTime: 0 + m_PreExtrapolationTime: 0 + m_DisplayName: StartSound02 + m_Version: 1 + m_Version: 2 diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Timelines/RaceStart.playable.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Timelines/RaceStart.playable.meta" new file mode 100644 index 00000000..94454541 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Timelines/RaceStart.playable.meta" @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: ef59465c823e959448bdf40fa6e69b5d +NativeFormatImporter: + externalObjects: {} + mainObjectFileID: 11400000 + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Tutorials.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Tutorials.meta" new file mode 100644 index 00000000..27736fed --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Tutorials.meta" @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: c4f60585933b24e06a3e11a5aaf2c6d7 +folderAsset: yes +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Tutorials/AddingPrefabLayout.wlt" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Tutorials/AddingPrefabLayout.wlt" new file mode 100644 index 00000000..fa8fac3c --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Tutorials/AddingPrefabLayout.wlt" @@ -0,0 +1,767 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!114 &1 +MonoBehaviour: + m_ObjectHideFlags: 52 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 1 + m_Script: {fileID: 12004, guid: 0000000000000000e000000000000000, type: 0} + m_Name: + m_EditorClassIdentifier: + m_PixelRect: + serializedVersion: 2 + x: 0 + y: 45 + width: 2560 + height: 1330 + m_ShowMode: 4 + m_Title: + m_RootView: {fileID: 7} + m_MinSize: {x: 950, y: 548} + m_MaxSize: {x: 10000, y: 10000} +--- !u!114 &2 +MonoBehaviour: + m_ObjectHideFlags: 52 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 12006, guid: 0000000000000000e000000000000000, type: 0} + m_Name: + m_EditorClassIdentifier: + m_Children: [] + m_Position: + serializedVersion: 2 + x: 2258 + y: 0 + width: 302 + height: 1280 + m_MinSize: {x: 302, y: 404} + m_MaxSize: {x: 4002, y: 4024} + m_ActualView: {fileID: 13} + m_Panes: + - {fileID: 13} + m_Selected: 0 + m_LastSelected: 0 +--- !u!114 &3 +MonoBehaviour: + m_ObjectHideFlags: 52 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 1 + m_Script: {fileID: 12010, guid: 0000000000000000e000000000000000, type: 0} + m_Name: + m_EditorClassIdentifier: + m_Children: + - {fileID: 10} + - {fileID: 4} + - {fileID: 2} + m_Position: + serializedVersion: 2 + x: 0 + y: 30 + width: 2560 + height: 1280 + m_MinSize: {x: 987, y: 498} + m_MaxSize: {x: 18008, y: 14048} + vertical: 0 + controlID: 469 +--- !u!114 &4 +MonoBehaviour: + m_ObjectHideFlags: 52 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 1 + m_Script: {fileID: 12006, guid: 0000000000000000e000000000000000, type: 0} + m_Name: + m_EditorClassIdentifier: + m_Children: [] + m_Position: + serializedVersion: 2 + x: 1979 + y: 0 + width: 279 + height: 1280 + m_MinSize: {x: 279, y: 74} + m_MaxSize: {x: 4004, y: 4024} + m_ActualView: {fileID: 16} + m_Panes: + - {fileID: 16} + m_Selected: 0 + m_LastSelected: 0 +--- !u!114 &5 +MonoBehaviour: + m_ObjectHideFlags: 52 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 1 + m_Script: {fileID: 12006, guid: 0000000000000000e000000000000000, type: 0} + m_Name: + m_EditorClassIdentifier: + m_Children: [] + m_Position: + serializedVersion: 2 + x: 0 + y: 0 + width: 325 + height: 820 + m_MinSize: {x: 202, y: 224} + m_MaxSize: {x: 4002, y: 4024} + m_ActualView: {fileID: 17} + m_Panes: + - {fileID: 17} + m_Selected: 0 + m_LastSelected: 0 +--- !u!114 &6 +MonoBehaviour: + m_ObjectHideFlags: 52 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 1 + m_Script: {fileID: 12006, guid: 0000000000000000e000000000000000, type: 0} + m_Name: + m_EditorClassIdentifier: + m_Children: [] + m_Position: + serializedVersion: 2 + x: 0 + y: 820 + width: 1979 + height: 460 + m_MinSize: {x: 232, y: 274} + m_MaxSize: {x: 10002, y: 10024} + m_ActualView: {fileID: 15} + m_Panes: + - {fileID: 15} + - {fileID: 20} + m_Selected: 0 + m_LastSelected: 1 +--- !u!114 &7 +MonoBehaviour: + m_ObjectHideFlags: 52 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 1 + m_Script: {fileID: 12008, guid: 0000000000000000e000000000000000, type: 0} + m_Name: + m_EditorClassIdentifier: + m_Children: + - {fileID: 8} + - {fileID: 3} + - {fileID: 9} + m_Position: + serializedVersion: 2 + x: 0 + y: 0 + width: 2560 + height: 1330 + m_MinSize: {x: 950, y: 548} + m_MaxSize: {x: 10000, y: 10000} +--- !u!114 &8 +MonoBehaviour: + m_ObjectHideFlags: 52 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 1 + m_Script: {fileID: 12011, guid: 0000000000000000e000000000000000, type: 0} + m_Name: + m_EditorClassIdentifier: + m_Children: [] + m_Position: + serializedVersion: 2 + x: 0 + y: 0 + width: 2560 + height: 30 + m_MinSize: {x: 0, y: 0} + m_MaxSize: {x: 0, y: 0} + m_LastLoadedLayoutName: +--- !u!114 &9 +MonoBehaviour: + m_ObjectHideFlags: 52 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 1 + m_Script: {fileID: 12042, guid: 0000000000000000e000000000000000, type: 0} + m_Name: + m_EditorClassIdentifier: + m_Children: [] + m_Position: + serializedVersion: 2 + x: 0 + y: 1310 + width: 2560 + height: 20 + m_MinSize: {x: 0, y: 0} + m_MaxSize: {x: 0, y: 0} +--- !u!114 &10 +MonoBehaviour: + m_ObjectHideFlags: 52 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 1 + m_Script: {fileID: 12010, guid: 0000000000000000e000000000000000, type: 0} + m_Name: + m_EditorClassIdentifier: + m_Children: + - {fileID: 11} + - {fileID: 6} + m_Position: + serializedVersion: 2 + x: 0 + y: 0 + width: 1979 + height: 1280 + m_MinSize: {x: 406, y: 498} + m_MaxSize: {x: 10002, y: 14048} + vertical: 1 + controlID: 470 +--- !u!114 &11 +MonoBehaviour: + m_ObjectHideFlags: 52 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 1 + m_Script: {fileID: 12010, guid: 0000000000000000e000000000000000, type: 0} + m_Name: + m_EditorClassIdentifier: + m_Children: + - {fileID: 5} + - {fileID: 12} + m_Position: + serializedVersion: 2 + x: 0 + y: 0 + width: 1979 + height: 820 + m_MinSize: {x: 406, y: 224} + m_MaxSize: {x: 8006, y: 4024} + vertical: 0 + controlID: 471 +--- !u!114 &12 +MonoBehaviour: + m_ObjectHideFlags: 52 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 1 + m_Script: {fileID: 12006, guid: 0000000000000000e000000000000000, type: 0} + m_Name: + m_EditorClassIdentifier: + m_Children: [] + m_Position: + serializedVersion: 2 + x: 325 + y: 0 + width: 1654 + height: 820 + m_MinSize: {x: 204, y: 224} + m_MaxSize: {x: 4004, y: 4024} + m_ActualView: {fileID: 18} + m_Panes: + - {fileID: 18} + - {fileID: 19} + - {fileID: 14} + m_Selected: 0 + m_LastSelected: 1 +--- !u!114 &13 +MonoBehaviour: + m_ObjectHideFlags: 52 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: ba8f85f9d6bbb46d180610e6061865df, type: 3} + m_Name: + m_EditorClassIdentifier: + m_MinSize: {x: 300, y: 380} + m_MaxSize: {x: 4000, y: 4000} + m_TitleContent: + m_Text: Tutorials + m_Image: {fileID: 0} + m_Tooltip: + m_Pos: + serializedVersion: 2 + x: 2258 + y: 75 + width: 300 + height: 1260 + m_PersistentViewDataDictionary: {fileID: 0} + m_AllParagraphs: [] + m_Readme: {fileID: 0} + m_MaskingEnabled: 1 + m_ScrollPosition: {x: 0, y: 0} + m_FarthestPageCompleted: -1 + m_PlayModeChanging: 0 +--- !u!114 &14 +MonoBehaviour: + m_ObjectHideFlags: 52 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 1 + m_Script: {fileID: 12111, guid: 0000000000000000e000000000000000, type: 0} + m_Name: + m_EditorClassIdentifier: + m_MinSize: {x: 400, y: 100} + m_MaxSize: {x: 2048, y: 2048} + m_TitleContent: + m_Text: Asset Store + m_Image: {fileID: 357073275683767465, guid: 0000000000000000d000000000000000, + type: 0} + m_Tooltip: + m_Pos: + serializedVersion: 2 + x: 468 + y: 181 + width: 973 + height: 501 + m_PersistentViewDataDictionary: {fileID: 0} +--- !u!114 &15 +MonoBehaviour: + m_ObjectHideFlags: 52 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 1 + m_Script: {fileID: 12014, guid: 0000000000000000e000000000000000, type: 0} + m_Name: + m_EditorClassIdentifier: + m_MinSize: {x: 230, y: 250} + m_MaxSize: {x: 10000, y: 10000} + m_TitleContent: + m_Text: Project + m_Image: {fileID: -7501376956915960154, guid: 0000000000000000d000000000000000, + type: 0} + m_Tooltip: + m_Pos: + serializedVersion: 2 + x: 0 + y: 895 + width: 1977 + height: 440 + m_PersistentViewDataDictionary: {fileID: 0} + m_SearchFilter: + m_NameFilter: + m_ClassNames: [] + m_AssetLabels: [] + m_AssetBundleNames: [] + m_VersionControlStates: [] + m_SoftLockControlStates: [] + m_ReferencingInstanceIDs: + m_SceneHandles: + m_ShowAllHits: 0 + m_SearchArea: 1 + m_Folders: + - Assets/Karting/Prefabs + m_ViewMode: 1 + m_StartGridSize: 64 + m_LastFolders: + - Assets/Karting/Prefabs + m_LastFoldersGridSize: -1 + m_LastProjectPath: C:\Users\yatchi.lau\Downloads\00_kart-template-1.0.2-preview\kart-template-1.0.2-preview + m_LockTracker: + m_IsLocked: 0 + m_FolderTreeState: + scrollPos: {x: 0, y: 0} + m_SelectedIDs: 92330000 + m_LastClickedID: 13202 + m_ExpandedIDs: 000000008c2f0000d232000028330000323300005433000092330000ac330000aa35000024370000e63700000c380000a2380000ee38000012390000884300008a4300008c4300008e4300009043000000ca9a3b + m_RenameOverlay: + m_UserAcceptedRename: 0 + m_Name: + m_OriginalName: + m_EditFieldRect: + serializedVersion: 2 + x: 0 + y: 0 + width: 0 + height: 0 + m_UserData: 0 + m_IsWaitingForDelay: 0 + m_IsRenaming: 0 + m_OriginalEventType: 11 + m_IsRenamingFilename: 1 + m_ClientGUIView: {fileID: 6} + m_SearchString: + m_CreateAssetUtility: + m_EndAction: {fileID: 0} + m_InstanceID: 0 + m_Path: + m_Icon: {fileID: 0} + m_ResourceFile: + m_AssetTreeState: + scrollPos: {x: 0, y: 0} + m_SelectedIDs: 92330000 + m_LastClickedID: 13202 + m_ExpandedIDs: 000000008c2f0000d232000028330000323300005433000092330000ac330000aa35000024370000e63700000c380000a2380000ee38000012390000884300008a4300008c4300008e4300009043000000ca9a3b + m_RenameOverlay: + m_UserAcceptedRename: 0 + m_Name: + m_OriginalName: + m_EditFieldRect: + serializedVersion: 2 + x: 0 + y: 0 + width: 0 + height: 0 + m_UserData: 0 + m_IsWaitingForDelay: 0 + m_IsRenaming: 0 + m_OriginalEventType: 11 + m_IsRenamingFilename: 1 + m_ClientGUIView: {fileID: 0} + m_SearchString: + m_CreateAssetUtility: + m_EndAction: {fileID: 0} + m_InstanceID: 0 + m_Path: + m_Icon: {fileID: 0} + m_ResourceFile: + m_ListAreaState: + m_SelectedInstanceIDs: + m_LastClickedInstanceID: 0 + m_HadKeyboardFocusLastEvent: 0 + m_ExpandedInstanceIDs: c6230000 + m_RenameOverlay: + m_UserAcceptedRename: 0 + m_Name: + m_OriginalName: + m_EditFieldRect: + serializedVersion: 2 + x: 0 + y: 0 + width: 0 + height: 0 + m_UserData: 0 + m_IsWaitingForDelay: 0 + m_IsRenaming: 0 + m_OriginalEventType: 11 + m_IsRenamingFilename: 1 + m_ClientGUIView: {fileID: 0} + m_CreateAssetUtility: + m_EndAction: {fileID: 0} + m_InstanceID: 0 + m_Path: + m_Icon: {fileID: 0} + m_ResourceFile: + m_NewAssetIndexInList: -1 + m_ScrollPosition: {x: 0, y: 0} + m_GridSize: 64 + m_DirectoriesAreaWidth: 320 +--- !u!114 &16 +MonoBehaviour: + m_ObjectHideFlags: 52 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 1 + m_Script: {fileID: 12019, guid: 0000000000000000e000000000000000, type: 0} + m_Name: + m_EditorClassIdentifier: + m_MinSize: {x: 275, y: 50} + m_MaxSize: {x: 4000, y: 4000} + m_TitleContent: + m_Text: Inspector + m_Image: {fileID: -6905738622615590433, guid: 0000000000000000d000000000000000, + type: 0} + m_Tooltip: + m_Pos: + serializedVersion: 2 + x: 1979 + y: 75 + width: 275 + height: 1260 + m_PersistentViewDataDictionary: {fileID: 0} + m_ObjectsLockedBeforeSerialization: [] + m_InstanceIDsLockedBeforeSerialization: + m_LockTracker: + m_IsLocked: 0 + m_PreviewResizer: + m_CachedPref: 160 + m_ControlHash: -371814159 + m_PrefName: Preview_InspectorPreview + m_PreviewWindow: {fileID: 0} +--- !u!114 &17 +MonoBehaviour: + m_ObjectHideFlags: 52 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 1 + m_Script: {fileID: 12061, guid: 0000000000000000e000000000000000, type: 0} + m_Name: + m_EditorClassIdentifier: + m_MinSize: {x: 200, y: 200} + m_MaxSize: {x: 4000, y: 4000} + m_TitleContent: + m_Text: Hierarchy + m_Image: {fileID: -590624980919486359, guid: 0000000000000000d000000000000000, + type: 0} + m_Tooltip: + m_Pos: + serializedVersion: 2 + x: 0 + y: 75 + width: 323 + height: 800 + m_PersistentViewDataDictionary: {fileID: 0} + m_SceneHierarchy: + m_TreeViewState: + scrollPos: {x: 0, y: 0} + m_SelectedIDs: + m_LastClickedID: 0 + m_ExpandedIDs: d6eaffffd0fbffff + m_RenameOverlay: + m_UserAcceptedRename: 0 + m_Name: + m_OriginalName: + m_EditFieldRect: + serializedVersion: 2 + x: 0 + y: 0 + width: 0 + height: 0 + m_UserData: 0 + m_IsWaitingForDelay: 0 + m_IsRenaming: 0 + m_OriginalEventType: 11 + m_IsRenamingFilename: 0 + m_ClientGUIView: {fileID: 0} + m_SearchString: + m_ExpandedScenes: [] + m_CurrenRootInstanceID: 0 + m_LockTracker: + m_IsLocked: 0 + m_CurrentSortingName: TransformSorting + m_WindowGUID: 46b7a0fefa812c44ca6fda42b4d7b176 +--- !u!114 &18 +MonoBehaviour: + m_ObjectHideFlags: 52 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 1 + m_Script: {fileID: 12013, guid: 0000000000000000e000000000000000, type: 0} + m_Name: + m_EditorClassIdentifier: + m_MinSize: {x: 200, y: 200} + m_MaxSize: {x: 4000, y: 4000} + m_TitleContent: + m_Text: Scene + m_Image: {fileID: 0} + m_Tooltip: + m_Pos: + serializedVersion: 2 + x: 325 + y: 75 + width: 1650 + height: 800 + m_PersistentViewDataDictionary: {fileID: 0} + m_WindowGUID: d69a67902db7f994ca099bec79d22ce1 + m_SceneLighting: 1 + m_2DMode: 0 + m_isRotationLocked: 0 + m_AudioPlay: 0 + m_Position: + m_Target: {x: -5, y: 26.339746, z: -12} + speed: 2 + m_Value: {x: -5, y: 26.339746, z: -12} + m_RenderMode: 0 + m_CameraMode: + drawMode: 0 + name: Shaded + section: Shading Mode + m_ValidateTrueMetals: 0 + m_SceneViewState: + showFog: 1 + showMaterialUpdate: 0 + showSkybox: 1 + showFlares: 1 + showImageEffects: 1 + showParticleSystems: 1 + grid: + xGrid: + m_Target: 0 + speed: 2 + m_Value: 0 + yGrid: + m_Target: 1 + speed: 2 + m_Value: 1 + zGrid: + m_Target: 0 + speed: 2 + m_Value: 0 + m_Rotation: + m_Target: {x: -0.5, y: 0, z: 0, w: -0.8660254} + speed: 2 + m_Value: {x: -0.5, y: 0, z: 0, w: -0.8660254} + m_Size: + m_Target: 10 + speed: 2 + m_Value: 10 + m_Ortho: + m_Target: 0 + speed: 2 + m_Value: 0 + m_ShowGlobalGrid: 1 + m_LastSceneViewRotation: {x: 0, y: 0, z: 0, w: 0} + m_LastSceneViewOrtho: 0 + m_ReplacementShader: {fileID: 0} + m_ReplacementString: + m_LastLockedObject: {fileID: 0} + m_ViewIsLockedToObject: 0 +--- !u!114 &19 +MonoBehaviour: + m_ObjectHideFlags: 52 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 1 + m_Script: {fileID: 12015, guid: 0000000000000000e000000000000000, type: 0} + m_Name: + m_EditorClassIdentifier: + m_MinSize: {x: 200, y: 200} + m_MaxSize: {x: 4000, y: 4000} + m_TitleContent: + m_Text: Game + m_Image: {fileID: -2087823869225018852, guid: 0000000000000000d000000000000000, + type: 0} + m_Tooltip: + m_Pos: + serializedVersion: 2 + x: 529.3334 + y: 72.66667 + width: 1230 + height: 820 + m_PersistentViewDataDictionary: {fileID: 0} + m_MaximizeOnPlay: 0 + m_Gizmos: 0 + m_Stats: 0 + m_SelectedSizes: 05000000000000000000000000000000000000000000000000000000000000000000000000000000 + m_TargetDisplay: 0 + m_ZoomArea: + m_HRangeLocked: 0 + m_VRangeLocked: 0 + hZoomLockedByDefault: 0 + vZoomLockedByDefault: 0 + m_HBaseRangeMin: -615 + m_HBaseRangeMax: 615 + m_VBaseRangeMin: -346 + m_VBaseRangeMax: 346 + m_HAllowExceedBaseRangeMin: 1 + m_HAllowExceedBaseRangeMax: 1 + m_VAllowExceedBaseRangeMin: 1 + m_VAllowExceedBaseRangeMax: 1 + m_ScaleWithWindow: 0 + m_HSlider: 0 + m_VSlider: 0 + m_IgnoreScrollWheelUntilClicked: 0 + m_EnableMouseInput: 1 + m_EnableSliderZoomHorizontal: 0 + m_EnableSliderZoomVertical: 0 + m_UniformScale: 1 + m_UpDirection: 1 + m_DrawArea: + serializedVersion: 2 + x: 0 + y: 17 + width: 1230 + height: 803 + m_Scale: {x: 1, y: 1} + m_Translation: {x: 615, y: 401.5} + m_MarginLeft: 0 + m_MarginRight: 0 + m_MarginTop: 0 + m_MarginBottom: 0 + m_LastShownAreaInsideMargins: + serializedVersion: 2 + x: -615 + y: -401.5 + width: 1230 + height: 803 + m_MinimalGUI: 1 + m_defaultScale: 1 + m_TargetTexture: {fileID: 0} + m_CurrentColorSpace: 0 + m_LastWindowPixelSize: {x: 1230, y: 820} + m_ClearInEditMode: 1 + m_NoCameraWarning: 1 + m_LowResolutionForAspectRatios: 01000000000100000100 + m_XRRenderMode: 0 +--- !u!114 &20 +MonoBehaviour: + m_ObjectHideFlags: 52 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 1 + m_Script: {fileID: 12003, guid: 0000000000000000e000000000000000, type: 0} + m_Name: + m_EditorClassIdentifier: + m_MinSize: {x: 100, y: 100} + m_MaxSize: {x: 4000, y: 4000} + m_TitleContent: + m_Text: Console + m_Image: {fileID: 111653112392082826, guid: 0000000000000000d000000000000000, + type: 0} + m_Tooltip: + m_Pos: + serializedVersion: 2 + x: 0 + y: 895 + width: 1977 + height: 440 + m_PersistentViewDataDictionary: {fileID: 0} diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Tutorials/AddingPrefabLayout.wlt.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Tutorials/AddingPrefabLayout.wlt.meta" new file mode 100644 index 00000000..dd273215 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Tutorials/AddingPrefabLayout.wlt.meta" @@ -0,0 +1,7 @@ +fileFormatVersion: 2 +guid: cde0ced735db64fadb69328562c039e2 +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Tutorials/EditingMaterialLayout" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Tutorials/EditingMaterialLayout" new file mode 100644 index 00000000..a494dcf8 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Tutorials/EditingMaterialLayout" @@ -0,0 +1,767 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!114 &1 +MonoBehaviour: + m_ObjectHideFlags: 52 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 1 + m_Script: {fileID: 12004, guid: 0000000000000000e000000000000000, type: 0} + m_Name: + m_EditorClassIdentifier: + m_PixelRect: + serializedVersion: 2 + x: 0 + y: 45 + width: 2560 + height: 1330 + m_ShowMode: 4 + m_Title: + m_RootView: {fileID: 7} + m_MinSize: {x: 950, y: 548} + m_MaxSize: {x: 10000, y: 10000} +--- !u!114 &2 +MonoBehaviour: + m_ObjectHideFlags: 52 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 12006, guid: 0000000000000000e000000000000000, type: 0} + m_Name: + m_EditorClassIdentifier: + m_Children: [] + m_Position: + serializedVersion: 2 + x: 2258 + y: 0 + width: 302 + height: 1280 + m_MinSize: {x: 302, y: 404} + m_MaxSize: {x: 4002, y: 4024} + m_ActualView: {fileID: 13} + m_Panes: + - {fileID: 13} + m_Selected: 0 + m_LastSelected: 0 +--- !u!114 &3 +MonoBehaviour: + m_ObjectHideFlags: 52 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 1 + m_Script: {fileID: 12010, guid: 0000000000000000e000000000000000, type: 0} + m_Name: + m_EditorClassIdentifier: + m_Children: + - {fileID: 10} + - {fileID: 4} + - {fileID: 2} + m_Position: + serializedVersion: 2 + x: 0 + y: 30 + width: 2560 + height: 1280 + m_MinSize: {x: 987, y: 498} + m_MaxSize: {x: 18008, y: 14048} + vertical: 0 + controlID: 469 +--- !u!114 &4 +MonoBehaviour: + m_ObjectHideFlags: 52 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 1 + m_Script: {fileID: 12006, guid: 0000000000000000e000000000000000, type: 0} + m_Name: + m_EditorClassIdentifier: + m_Children: [] + m_Position: + serializedVersion: 2 + x: 1979 + y: 0 + width: 279 + height: 1280 + m_MinSize: {x: 279, y: 74} + m_MaxSize: {x: 4004, y: 4024} + m_ActualView: {fileID: 16} + m_Panes: + - {fileID: 16} + m_Selected: 0 + m_LastSelected: 0 +--- !u!114 &5 +MonoBehaviour: + m_ObjectHideFlags: 52 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 1 + m_Script: {fileID: 12006, guid: 0000000000000000e000000000000000, type: 0} + m_Name: + m_EditorClassIdentifier: + m_Children: [] + m_Position: + serializedVersion: 2 + x: 0 + y: 0 + width: 325 + height: 820 + m_MinSize: {x: 202, y: 224} + m_MaxSize: {x: 4002, y: 4024} + m_ActualView: {fileID: 17} + m_Panes: + - {fileID: 17} + m_Selected: 0 + m_LastSelected: 0 +--- !u!114 &6 +MonoBehaviour: + m_ObjectHideFlags: 52 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 1 + m_Script: {fileID: 12006, guid: 0000000000000000e000000000000000, type: 0} + m_Name: + m_EditorClassIdentifier: + m_Children: [] + m_Position: + serializedVersion: 2 + x: 0 + y: 820 + width: 1979 + height: 460 + m_MinSize: {x: 232, y: 274} + m_MaxSize: {x: 10002, y: 10024} + m_ActualView: {fileID: 15} + m_Panes: + - {fileID: 15} + - {fileID: 20} + m_Selected: 0 + m_LastSelected: 1 +--- !u!114 &7 +MonoBehaviour: + m_ObjectHideFlags: 52 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 1 + m_Script: {fileID: 12008, guid: 0000000000000000e000000000000000, type: 0} + m_Name: + m_EditorClassIdentifier: + m_Children: + - {fileID: 8} + - {fileID: 3} + - {fileID: 9} + m_Position: + serializedVersion: 2 + x: 0 + y: 0 + width: 2560 + height: 1330 + m_MinSize: {x: 950, y: 548} + m_MaxSize: {x: 10000, y: 10000} +--- !u!114 &8 +MonoBehaviour: + m_ObjectHideFlags: 52 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 1 + m_Script: {fileID: 12011, guid: 0000000000000000e000000000000000, type: 0} + m_Name: + m_EditorClassIdentifier: + m_Children: [] + m_Position: + serializedVersion: 2 + x: 0 + y: 0 + width: 2560 + height: 30 + m_MinSize: {x: 0, y: 0} + m_MaxSize: {x: 0, y: 0} + m_LastLoadedLayoutName: +--- !u!114 &9 +MonoBehaviour: + m_ObjectHideFlags: 52 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 1 + m_Script: {fileID: 12042, guid: 0000000000000000e000000000000000, type: 0} + m_Name: + m_EditorClassIdentifier: + m_Children: [] + m_Position: + serializedVersion: 2 + x: 0 + y: 1310 + width: 2560 + height: 20 + m_MinSize: {x: 0, y: 0} + m_MaxSize: {x: 0, y: 0} +--- !u!114 &10 +MonoBehaviour: + m_ObjectHideFlags: 52 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 1 + m_Script: {fileID: 12010, guid: 0000000000000000e000000000000000, type: 0} + m_Name: + m_EditorClassIdentifier: + m_Children: + - {fileID: 11} + - {fileID: 6} + m_Position: + serializedVersion: 2 + x: 0 + y: 0 + width: 1979 + height: 1280 + m_MinSize: {x: 406, y: 498} + m_MaxSize: {x: 10002, y: 14048} + vertical: 1 + controlID: 470 +--- !u!114 &11 +MonoBehaviour: + m_ObjectHideFlags: 52 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 1 + m_Script: {fileID: 12010, guid: 0000000000000000e000000000000000, type: 0} + m_Name: + m_EditorClassIdentifier: + m_Children: + - {fileID: 5} + - {fileID: 12} + m_Position: + serializedVersion: 2 + x: 0 + y: 0 + width: 1979 + height: 820 + m_MinSize: {x: 406, y: 224} + m_MaxSize: {x: 8006, y: 4024} + vertical: 0 + controlID: 471 +--- !u!114 &12 +MonoBehaviour: + m_ObjectHideFlags: 52 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 1 + m_Script: {fileID: 12006, guid: 0000000000000000e000000000000000, type: 0} + m_Name: + m_EditorClassIdentifier: + m_Children: [] + m_Position: + serializedVersion: 2 + x: 325 + y: 0 + width: 1654 + height: 820 + m_MinSize: {x: 204, y: 224} + m_MaxSize: {x: 4004, y: 4024} + m_ActualView: {fileID: 18} + m_Panes: + - {fileID: 18} + - {fileID: 19} + - {fileID: 14} + m_Selected: 0 + m_LastSelected: 1 +--- !u!114 &13 +MonoBehaviour: + m_ObjectHideFlags: 52 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: ba8f85f9d6bbb46d180610e6061865df, type: 3} + m_Name: + m_EditorClassIdentifier: + m_MinSize: {x: 300, y: 380} + m_MaxSize: {x: 4000, y: 4000} + m_TitleContent: + m_Text: Tutorials + m_Image: {fileID: 0} + m_Tooltip: + m_Pos: + serializedVersion: 2 + x: 2258 + y: 75 + width: 300 + height: 1260 + m_PersistentViewDataDictionary: {fileID: 0} + m_AllParagraphs: [] + m_Readme: {fileID: 0} + m_MaskingEnabled: 1 + m_ScrollPosition: {x: 0, y: 0} + m_FarthestPageCompleted: -1 + m_PlayModeChanging: 0 +--- !u!114 &14 +MonoBehaviour: + m_ObjectHideFlags: 52 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 1 + m_Script: {fileID: 12111, guid: 0000000000000000e000000000000000, type: 0} + m_Name: + m_EditorClassIdentifier: + m_MinSize: {x: 400, y: 100} + m_MaxSize: {x: 2048, y: 2048} + m_TitleContent: + m_Text: Asset Store + m_Image: {fileID: 357073275683767465, guid: 0000000000000000d000000000000000, + type: 0} + m_Tooltip: + m_Pos: + serializedVersion: 2 + x: 468 + y: 181 + width: 973 + height: 501 + m_PersistentViewDataDictionary: {fileID: 0} +--- !u!114 &15 +MonoBehaviour: + m_ObjectHideFlags: 52 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 1 + m_Script: {fileID: 12014, guid: 0000000000000000e000000000000000, type: 0} + m_Name: + m_EditorClassIdentifier: + m_MinSize: {x: 230, y: 250} + m_MaxSize: {x: 10000, y: 10000} + m_TitleContent: + m_Text: Project + m_Image: {fileID: -7501376956915960154, guid: 0000000000000000d000000000000000, + type: 0} + m_Tooltip: + m_Pos: + serializedVersion: 2 + x: 0 + y: 895 + width: 1977 + height: 440 + m_PersistentViewDataDictionary: {fileID: 0} + m_SearchFilter: + m_NameFilter: + m_ClassNames: [] + m_AssetLabels: [] + m_AssetBundleNames: [] + m_VersionControlStates: [] + m_SoftLockControlStates: [] + m_ReferencingInstanceIDs: + m_SceneHandles: + m_ShowAllHits: 0 + m_SearchArea: 1 + m_Folders: + - Assets/Karting/Materials + m_ViewMode: 1 + m_StartGridSize: 64 + m_LastFolders: + - Assets/Karting/Materials + m_LastFoldersGridSize: -1 + m_LastProjectPath: C:\Users\yatchi.lau\Downloads\00_kart-template-1.0.2-preview\kart-template-1.0.2-preview + m_LockTracker: + m_IsLocked: 0 + m_FolderTreeState: + scrollPos: {x: 0, y: 0} + m_SelectedIDs: 7a310000 + m_LastClickedID: 12666 + m_ExpandedIDs: 000000008c2f0000d232000028330000323300005433000092330000ac330000aa35000024370000e63700000c380000a2380000ee38000012390000884300008a4300008c4300008e4300009043000000ca9a3b + m_RenameOverlay: + m_UserAcceptedRename: 0 + m_Name: + m_OriginalName: + m_EditFieldRect: + serializedVersion: 2 + x: 0 + y: 0 + width: 0 + height: 0 + m_UserData: 0 + m_IsWaitingForDelay: 0 + m_IsRenaming: 0 + m_OriginalEventType: 11 + m_IsRenamingFilename: 1 + m_ClientGUIView: {fileID: 6} + m_SearchString: + m_CreateAssetUtility: + m_EndAction: {fileID: 0} + m_InstanceID: 0 + m_Path: + m_Icon: {fileID: 0} + m_ResourceFile: + m_AssetTreeState: + scrollPos: {x: 0, y: 0} + m_SelectedIDs: + m_LastClickedID: 0 + m_ExpandedIDs: 000000008c2f0000d232000028330000323300005433000092330000ac330000aa35000024370000e63700000c380000a2380000ee38000012390000884300008a4300008c4300008e4300009043000000ca9a3b + m_RenameOverlay: + m_UserAcceptedRename: 0 + m_Name: + m_OriginalName: + m_EditFieldRect: + serializedVersion: 2 + x: 0 + y: 0 + width: 0 + height: 0 + m_UserData: 0 + m_IsWaitingForDelay: 0 + m_IsRenaming: 0 + m_OriginalEventType: 11 + m_IsRenamingFilename: 1 + m_ClientGUIView: {fileID: 0} + m_SearchString: + m_CreateAssetUtility: + m_EndAction: {fileID: 0} + m_InstanceID: 0 + m_Path: + m_Icon: {fileID: 0} + m_ResourceFile: + m_ListAreaState: + m_SelectedInstanceIDs: b06d0000 + m_LastClickedInstanceID: 28080 + m_HadKeyboardFocusLastEvent: 0 + m_ExpandedInstanceIDs: c6230000 + m_RenameOverlay: + m_UserAcceptedRename: 0 + m_Name: + m_OriginalName: + m_EditFieldRect: + serializedVersion: 2 + x: 0 + y: 0 + width: 0 + height: 0 + m_UserData: 0 + m_IsWaitingForDelay: 0 + m_IsRenaming: 0 + m_OriginalEventType: 11 + m_IsRenamingFilename: 1 + m_ClientGUIView: {fileID: 0} + m_CreateAssetUtility: + m_EndAction: {fileID: 0} + m_InstanceID: 0 + m_Path: + m_Icon: {fileID: 0} + m_ResourceFile: + m_NewAssetIndexInList: -1 + m_ScrollPosition: {x: 0, y: 0} + m_GridSize: 64 + m_DirectoriesAreaWidth: 320 +--- !u!114 &16 +MonoBehaviour: + m_ObjectHideFlags: 52 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 1 + m_Script: {fileID: 12019, guid: 0000000000000000e000000000000000, type: 0} + m_Name: + m_EditorClassIdentifier: + m_MinSize: {x: 275, y: 50} + m_MaxSize: {x: 4000, y: 4000} + m_TitleContent: + m_Text: Inspector + m_Image: {fileID: -6905738622615590433, guid: 0000000000000000d000000000000000, + type: 0} + m_Tooltip: + m_Pos: + serializedVersion: 2 + x: 1979 + y: 75 + width: 275 + height: 1260 + m_PersistentViewDataDictionary: {fileID: 0} + m_ObjectsLockedBeforeSerialization: [] + m_InstanceIDsLockedBeforeSerialization: + m_LockTracker: + m_IsLocked: 0 + m_PreviewResizer: + m_CachedPref: 160 + m_ControlHash: -371814159 + m_PrefName: Preview_InspectorPreview + m_PreviewWindow: {fileID: 0} +--- !u!114 &17 +MonoBehaviour: + m_ObjectHideFlags: 52 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 1 + m_Script: {fileID: 12061, guid: 0000000000000000e000000000000000, type: 0} + m_Name: + m_EditorClassIdentifier: + m_MinSize: {x: 200, y: 200} + m_MaxSize: {x: 4000, y: 4000} + m_TitleContent: + m_Text: Hierarchy + m_Image: {fileID: -590624980919486359, guid: 0000000000000000d000000000000000, + type: 0} + m_Tooltip: + m_Pos: + serializedVersion: 2 + x: 0 + y: 75 + width: 323 + height: 800 + m_PersistentViewDataDictionary: {fileID: 0} + m_SceneHierarchy: + m_TreeViewState: + scrollPos: {x: 0, y: 0} + m_SelectedIDs: + m_LastClickedID: 0 + m_ExpandedIDs: d6eaffffd0fbffff + m_RenameOverlay: + m_UserAcceptedRename: 0 + m_Name: + m_OriginalName: + m_EditFieldRect: + serializedVersion: 2 + x: 0 + y: 0 + width: 0 + height: 0 + m_UserData: 0 + m_IsWaitingForDelay: 0 + m_IsRenaming: 0 + m_OriginalEventType: 11 + m_IsRenamingFilename: 0 + m_ClientGUIView: {fileID: 0} + m_SearchString: + m_ExpandedScenes: [] + m_CurrenRootInstanceID: 0 + m_LockTracker: + m_IsLocked: 0 + m_CurrentSortingName: TransformSorting + m_WindowGUID: 46b7a0fefa812c44ca6fda42b4d7b176 +--- !u!114 &18 +MonoBehaviour: + m_ObjectHideFlags: 52 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 1 + m_Script: {fileID: 12013, guid: 0000000000000000e000000000000000, type: 0} + m_Name: + m_EditorClassIdentifier: + m_MinSize: {x: 200, y: 200} + m_MaxSize: {x: 4000, y: 4000} + m_TitleContent: + m_Text: Scene + m_Image: {fileID: 0} + m_Tooltip: + m_Pos: + serializedVersion: 2 + x: 325 + y: 75 + width: 1650 + height: 800 + m_PersistentViewDataDictionary: {fileID: 0} + m_WindowGUID: d69a67902db7f994ca099bec79d22ce1 + m_SceneLighting: 1 + m_2DMode: 0 + m_isRotationLocked: 0 + m_AudioPlay: 0 + m_Position: + m_Target: {x: -5, y: 26.339746, z: -12} + speed: 2 + m_Value: {x: -5, y: 26.339746, z: -12} + m_RenderMode: 0 + m_CameraMode: + drawMode: 0 + name: Shaded + section: Shading Mode + m_ValidateTrueMetals: 0 + m_SceneViewState: + showFog: 1 + showMaterialUpdate: 0 + showSkybox: 1 + showFlares: 1 + showImageEffects: 1 + showParticleSystems: 1 + grid: + xGrid: + m_Target: 0 + speed: 2 + m_Value: 0 + yGrid: + m_Target: 1 + speed: 2 + m_Value: 1 + zGrid: + m_Target: 0 + speed: 2 + m_Value: 0 + m_Rotation: + m_Target: {x: -0.5, y: 0, z: 0, w: -0.8660254} + speed: 2 + m_Value: {x: -0.5, y: 0, z: 0, w: -0.8660254} + m_Size: + m_Target: 10 + speed: 2 + m_Value: 10 + m_Ortho: + m_Target: 0 + speed: 2 + m_Value: 0 + m_ShowGlobalGrid: 1 + m_LastSceneViewRotation: {x: 0, y: 0, z: 0, w: 0} + m_LastSceneViewOrtho: 0 + m_ReplacementShader: {fileID: 0} + m_ReplacementString: + m_LastLockedObject: {fileID: 0} + m_ViewIsLockedToObject: 0 +--- !u!114 &19 +MonoBehaviour: + m_ObjectHideFlags: 52 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 1 + m_Script: {fileID: 12015, guid: 0000000000000000e000000000000000, type: 0} + m_Name: + m_EditorClassIdentifier: + m_MinSize: {x: 200, y: 200} + m_MaxSize: {x: 4000, y: 4000} + m_TitleContent: + m_Text: Game + m_Image: {fileID: -2087823869225018852, guid: 0000000000000000d000000000000000, + type: 0} + m_Tooltip: + m_Pos: + serializedVersion: 2 + x: 529.3334 + y: 72.66667 + width: 1230 + height: 820 + m_PersistentViewDataDictionary: {fileID: 0} + m_MaximizeOnPlay: 0 + m_Gizmos: 0 + m_Stats: 0 + m_SelectedSizes: 05000000000000000000000000000000000000000000000000000000000000000000000000000000 + m_TargetDisplay: 0 + m_ZoomArea: + m_HRangeLocked: 0 + m_VRangeLocked: 0 + hZoomLockedByDefault: 0 + vZoomLockedByDefault: 0 + m_HBaseRangeMin: -615 + m_HBaseRangeMax: 615 + m_VBaseRangeMin: -346 + m_VBaseRangeMax: 346 + m_HAllowExceedBaseRangeMin: 1 + m_HAllowExceedBaseRangeMax: 1 + m_VAllowExceedBaseRangeMin: 1 + m_VAllowExceedBaseRangeMax: 1 + m_ScaleWithWindow: 0 + m_HSlider: 0 + m_VSlider: 0 + m_IgnoreScrollWheelUntilClicked: 0 + m_EnableMouseInput: 1 + m_EnableSliderZoomHorizontal: 0 + m_EnableSliderZoomVertical: 0 + m_UniformScale: 1 + m_UpDirection: 1 + m_DrawArea: + serializedVersion: 2 + x: 0 + y: 17 + width: 1230 + height: 803 + m_Scale: {x: 1, y: 1} + m_Translation: {x: 615, y: 401.5} + m_MarginLeft: 0 + m_MarginRight: 0 + m_MarginTop: 0 + m_MarginBottom: 0 + m_LastShownAreaInsideMargins: + serializedVersion: 2 + x: -615 + y: -401.5 + width: 1230 + height: 803 + m_MinimalGUI: 1 + m_defaultScale: 1 + m_TargetTexture: {fileID: 0} + m_CurrentColorSpace: 0 + m_LastWindowPixelSize: {x: 1230, y: 820} + m_ClearInEditMode: 1 + m_NoCameraWarning: 1 + m_LowResolutionForAspectRatios: 01000000000100000100 + m_XRRenderMode: 0 +--- !u!114 &20 +MonoBehaviour: + m_ObjectHideFlags: 52 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 1 + m_Script: {fileID: 12003, guid: 0000000000000000e000000000000000, type: 0} + m_Name: + m_EditorClassIdentifier: + m_MinSize: {x: 100, y: 100} + m_MaxSize: {x: 4000, y: 4000} + m_TitleContent: + m_Text: Console + m_Image: {fileID: 111653112392082826, guid: 0000000000000000d000000000000000, + type: 0} + m_Tooltip: + m_Pos: + serializedVersion: 2 + x: 0 + y: 895 + width: 1977 + height: 440 + m_PersistentViewDataDictionary: {fileID: 0} diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Tutorials/EditingMaterialLayout.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Tutorials/EditingMaterialLayout.meta" new file mode 100644 index 00000000..8c117cc8 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Tutorials/EditingMaterialLayout.meta" @@ -0,0 +1,7 @@ +fileFormatVersion: 2 +guid: 2e64def163f6c4611a1ee698c44d1ae2 +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Tutorials/Icons.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Tutorials/Icons.meta" new file mode 100644 index 00000000..ff079a62 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Tutorials/Icons.meta" @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: f40140039ff1cd64db2c4bdb951f82cd +folderAsset: yes +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Tutorials/Icons/KartIcon.png" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Tutorials/Icons/KartIcon.png" new file mode 100644 index 00000000..efbf90d4 Binary files /dev/null and "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Tutorials/Icons/KartIcon.png" differ diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Tutorials/Icons/KartIcon.png.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Tutorials/Icons/KartIcon.png.meta" new file mode 100644 index 00000000..da832238 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Tutorials/Icons/KartIcon.png.meta" @@ -0,0 +1,88 @@ +fileFormatVersion: 2 +guid: bccfad5750124e04c9a10350725dd9fc +TextureImporter: + fileIDToRecycleName: {} + externalObjects: {} + serializedVersion: 7 + mipmaps: + mipMapMode: 0 + enableMipMap: 1 + sRGBTexture: 1 + linearTexture: 0 + fadeOut: 0 + borderMipMap: 0 + mipMapsPreserveCoverage: 0 + alphaTestReferenceValue: 0.5 + mipMapFadeDistanceStart: 1 + mipMapFadeDistanceEnd: 3 + bumpmap: + convertToNormalMap: 0 + externalNormalMap: 0 + heightScale: 0.25 + normalMapFilter: 0 + isReadable: 0 + streamingMipmaps: 0 + streamingMipmapsPriority: 0 + grayScaleToAlpha: 0 + generateCubemap: 6 + cubemapConvolution: 0 + seamlessCubemap: 0 + textureFormat: 1 + maxTextureSize: 2048 + textureSettings: + serializedVersion: 2 + filterMode: -1 + aniso: -1 + mipBias: -100 + wrapU: -1 + wrapV: -1 + wrapW: -1 + nPOTScale: 1 + lightmap: 0 + compressionQuality: 50 + spriteMode: 0 + spriteExtrude: 1 + spriteMeshType: 1 + alignment: 0 + spritePivot: {x: 0.5, y: 0.5} + spritePixelsToUnits: 100 + spriteBorder: {x: 0, y: 0, z: 0, w: 0} + spriteGenerateFallbackPhysicsShape: 1 + alphaUsage: 1 + alphaIsTransparency: 0 + spriteTessellationDetail: -1 + textureType: 0 + textureShape: 1 + singleChannelComponent: 0 + maxTextureSizeSet: 0 + compressionQualitySet: 0 + textureFormatSet: 0 + platformSettings: + - serializedVersion: 2 + buildTarget: DefaultTexturePlatform + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 0 + spriteSheet: + serializedVersion: 2 + sprites: [] + outline: [] + physicsShape: [] + bones: [] + spriteID: + vertices: [] + indices: + edges: [] + weights: [] + spritePackingTag: + pSDRemoveMatte: 0 + pSDShowRemoveMatteOption: 0 + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Tutorials/Sound Effects.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Tutorials/Sound Effects.meta" new file mode 100644 index 00000000..3ca35577 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Tutorials/Sound Effects.meta" @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: b32e2384e06e545ac9384aa5855494d0 +folderAsset: yes +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Tutorials/Sound Effects/Pop.aiff" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Tutorials/Sound Effects/Pop.aiff" new file mode 100644 index 00000000..8dc1fde0 Binary files /dev/null and "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Tutorials/Sound Effects/Pop.aiff" differ diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Tutorials/Sound Effects/Pop.aiff.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Tutorials/Sound Effects/Pop.aiff.meta" new file mode 100644 index 00000000..f3b77d2a --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Tutorials/Sound Effects/Pop.aiff.meta" @@ -0,0 +1,21 @@ +fileFormatVersion: 2 +guid: 93fbb109633e844259ea828442bda0cb +timeCreated: 1484949512 +licenseType: Store +AudioImporter: + serializedVersion: 6 + defaultSettings: + loadType: 0 + sampleRateSetting: 0 + sampleRateOverride: 44100 + compressionFormat: 1 + quality: 1 + conversionMode: 0 + platformSettingOverrides: {} + forceToMono: 0 + normalize: 1 + preloadAudioData: 1 + 3D: 1 + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Tutorials/Tutorial Project Settings.asset" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Tutorials/Tutorial Project Settings.asset" new file mode 100644 index 00000000..e3fe8468 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Tutorials/Tutorial Project Settings.asset" @@ -0,0 +1,19 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!114 &11400000 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 579f019eb5d26450982c6ae506c6c3ff, type: 3} + m_Name: Tutorial Project Settings + m_EditorClassIdentifier: + m_InitialScene: {fileID: 102900000, guid: f8c7069e6d9b2124b861144ca83d31e8, type: 3} + m_RestoreDefaultAssetsOnTutorialReload: 0 + m_UseLegacyStartupBehavior: 0 + m_StartupTutorial: {fileID: 0} + m_TutorialStyle: {fileID: 11400000, guid: bcaf24dcefa7047b19a2b51c946e64bf, type: 2} diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Tutorials/Tutorial Project Settings.asset.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Tutorials/Tutorial Project Settings.asset.meta" new file mode 100644 index 00000000..e4e34d98 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Tutorials/Tutorial Project Settings.asset.meta" @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 7e7ff6d40365f43b282454f6d57a0ead +NativeFormatImporter: + externalObjects: {} + mainObjectFileID: 0 + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Tutorials/Tutorial1.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Tutorials/Tutorial1.meta" new file mode 100644 index 00000000..c754a704 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Tutorials/Tutorial1.meta" @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 5ec38bce219754e699a7064d43ac0c1c +folderAsset: yes +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Tutorials/Tutorial1/WT-Hiearchy.png" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Tutorials/Tutorial1/WT-Hiearchy.png" new file mode 100644 index 00000000..7b5c2b1d Binary files /dev/null and "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Tutorials/Tutorial1/WT-Hiearchy.png" differ diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Tutorials/Tutorial1/WT-Hiearchy.png.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Tutorials/Tutorial1/WT-Hiearchy.png.meta" new file mode 100644 index 00000000..6e03664a --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Tutorials/Tutorial1/WT-Hiearchy.png.meta" @@ -0,0 +1,110 @@ +fileFormatVersion: 2 +guid: 919c66dd6aa06460a9f21e558a5a2d50 +TextureImporter: + fileIDToRecycleName: {} + externalObjects: {} + serializedVersion: 9 + mipmaps: + mipMapMode: 0 + enableMipMap: 0 + sRGBTexture: 1 + linearTexture: 0 + fadeOut: 0 + borderMipMap: 0 + mipMapsPreserveCoverage: 0 + alphaTestReferenceValue: 0.5 + mipMapFadeDistanceStart: 1 + mipMapFadeDistanceEnd: 3 + bumpmap: + convertToNormalMap: 0 + externalNormalMap: 0 + heightScale: 0.25 + normalMapFilter: 0 + isReadable: 0 + streamingMipmaps: 0 + streamingMipmapsPriority: 0 + grayScaleToAlpha: 0 + generateCubemap: 6 + cubemapConvolution: 0 + seamlessCubemap: 0 + textureFormat: 1 + maxTextureSize: 2048 + textureSettings: + serializedVersion: 2 + filterMode: -1 + aniso: 1 + mipBias: -100 + wrapU: 1 + wrapV: 1 + wrapW: -1 + nPOTScale: 0 + lightmap: 0 + compressionQuality: 50 + spriteMode: 0 + spriteExtrude: 1 + spriteMeshType: 1 + alignment: 0 + spritePivot: {x: 0.5, y: 0.5} + spritePixelsToUnits: 100 + spriteBorder: {x: 0, y: 0, z: 0, w: 0} + spriteGenerateFallbackPhysicsShape: 1 + alphaUsage: 1 + alphaIsTransparency: 1 + spriteTessellationDetail: -1 + textureType: 2 + textureShape: 1 + singleChannelComponent: 0 + maxTextureSizeSet: 0 + compressionQualitySet: 0 + textureFormatSet: 0 + platformSettings: + - serializedVersion: 2 + buildTarget: DefaultTexturePlatform + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Standalone + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: WebGL + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 0 + spriteSheet: + serializedVersion: 2 + sprites: [] + outline: [] + physicsShape: [] + bones: [] + spriteID: + vertices: [] + indices: + edges: [] + weights: [] + spritePackingTag: + pSDRemoveMatte: 0 + pSDShowRemoveMatteOption: 0 + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Tutorials/Tutorial1/WT-Inspector.png" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Tutorials/Tutorial1/WT-Inspector.png" new file mode 100644 index 00000000..8e1cbd70 Binary files /dev/null and "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Tutorials/Tutorial1/WT-Inspector.png" differ diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Tutorials/Tutorial1/WT-Inspector.png.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Tutorials/Tutorial1/WT-Inspector.png.meta" new file mode 100644 index 00000000..ac697c4e --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Tutorials/Tutorial1/WT-Inspector.png.meta" @@ -0,0 +1,110 @@ +fileFormatVersion: 2 +guid: ae6835abb80fc4f0c949b54d00b1c63c +TextureImporter: + fileIDToRecycleName: {} + externalObjects: {} + serializedVersion: 9 + mipmaps: + mipMapMode: 0 + enableMipMap: 0 + sRGBTexture: 1 + linearTexture: 0 + fadeOut: 0 + borderMipMap: 0 + mipMapsPreserveCoverage: 0 + alphaTestReferenceValue: 0.5 + mipMapFadeDistanceStart: 1 + mipMapFadeDistanceEnd: 3 + bumpmap: + convertToNormalMap: 0 + externalNormalMap: 0 + heightScale: 0.25 + normalMapFilter: 0 + isReadable: 0 + streamingMipmaps: 0 + streamingMipmapsPriority: 0 + grayScaleToAlpha: 0 + generateCubemap: 6 + cubemapConvolution: 0 + seamlessCubemap: 0 + textureFormat: 1 + maxTextureSize: 2048 + textureSettings: + serializedVersion: 2 + filterMode: -1 + aniso: 1 + mipBias: -100 + wrapU: 1 + wrapV: 1 + wrapW: -1 + nPOTScale: 0 + lightmap: 0 + compressionQuality: 50 + spriteMode: 0 + spriteExtrude: 1 + spriteMeshType: 1 + alignment: 0 + spritePivot: {x: 0.5, y: 0.5} + spritePixelsToUnits: 100 + spriteBorder: {x: 0, y: 0, z: 0, w: 0} + spriteGenerateFallbackPhysicsShape: 1 + alphaUsage: 1 + alphaIsTransparency: 1 + spriteTessellationDetail: -1 + textureType: 2 + textureShape: 1 + singleChannelComponent: 0 + maxTextureSizeSet: 0 + compressionQualitySet: 0 + textureFormatSet: 0 + platformSettings: + - serializedVersion: 2 + buildTarget: DefaultTexturePlatform + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Standalone + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: WebGL + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 0 + spriteSheet: + serializedVersion: 2 + sprites: [] + outline: [] + physicsShape: [] + bones: [] + spriteID: + vertices: [] + indices: + edges: [] + weights: [] + spritePackingTag: + pSDRemoveMatte: 0 + pSDShowRemoveMatteOption: 0 + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Tutorials/Tutorial1/WT-Play.mov" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Tutorials/Tutorial1/WT-Play.mov" new file mode 100644 index 00000000..b7f72c7c Binary files /dev/null and "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Tutorials/Tutorial1/WT-Play.mov" differ diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Tutorials/Tutorial1/WT-Play.mov.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Tutorials/Tutorial1/WT-Play.mov.meta" new file mode 100644 index 00000000..40398bee --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Tutorials/Tutorial1/WT-Play.mov.meta" @@ -0,0 +1,21 @@ +fileFormatVersion: 2 +guid: d69745293769a49ffb6955bb4862345c +VideoClipImporter: + externalObjects: {} + serializedVersion: 2 + useLegacyImporter: 0 + quality: 0.5 + isColorLinear: 0 + frameRange: 0 + startFrame: -1 + endFrame: -1 + colorSpace: 0 + deinterlace: 0 + encodeAlpha: 0 + flipVertical: 0 + flipHorizontal: 0 + importAudio: 1 + targetSettings: {} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Tutorials/Tutorial1/WT-Select-Gameobject.mov" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Tutorials/Tutorial1/WT-Select-Gameobject.mov" new file mode 100644 index 00000000..fed23609 Binary files /dev/null and "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Tutorials/Tutorial1/WT-Select-Gameobject.mov" differ diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Tutorials/Tutorial1/WT-Select-Gameobject.mov.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Tutorials/Tutorial1/WT-Select-Gameobject.mov.meta" new file mode 100644 index 00000000..d8158e4b --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Tutorials/Tutorial1/WT-Select-Gameobject.mov.meta" @@ -0,0 +1,21 @@ +fileFormatVersion: 2 +guid: 35304cdc4c526489ca8df1faeb57f5b3 +VideoClipImporter: + externalObjects: {} + serializedVersion: 2 + useLegacyImporter: 0 + quality: 0.5 + isColorLinear: 0 + frameRange: 0 + startFrame: -1 + endFrame: -1 + colorSpace: 0 + deinterlace: 0 + encodeAlpha: 0 + flipVertical: 0 + flipHorizontal: 0 + importAudio: 1 + targetSettings: {} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Tutorials/Tutorial1/WT-Select-Property.mov" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Tutorials/Tutorial1/WT-Select-Property.mov" new file mode 100644 index 00000000..724a09d2 Binary files /dev/null and "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Tutorials/Tutorial1/WT-Select-Property.mov" differ diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Tutorials/Tutorial1/WT-Select-Property.mov.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Tutorials/Tutorial1/WT-Select-Property.mov.meta" new file mode 100644 index 00000000..fcdd5d02 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Tutorials/Tutorial1/WT-Select-Property.mov.meta" @@ -0,0 +1,21 @@ +fileFormatVersion: 2 +guid: 07194c5207fd848ddab5351079a420c4 +VideoClipImporter: + externalObjects: {} + serializedVersion: 2 + useLegacyImporter: 0 + quality: 0.5 + isColorLinear: 0 + frameRange: 0 + startFrame: -1 + endFrame: -1 + colorSpace: 0 + deinterlace: 0 + encodeAlpha: 0 + flipVertical: 0 + flipHorizontal: 0 + importAudio: 1 + targetSettings: {} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Tutorials/Tutorial1/WT1-GameObject.png" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Tutorials/Tutorial1/WT1-GameObject.png" new file mode 100644 index 00000000..203cf1dc Binary files /dev/null and "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Tutorials/Tutorial1/WT1-GameObject.png" differ diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Tutorials/Tutorial1/WT1-GameObject.png.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Tutorials/Tutorial1/WT1-GameObject.png.meta" new file mode 100644 index 00000000..7e430b02 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Tutorials/Tutorial1/WT1-GameObject.png.meta" @@ -0,0 +1,99 @@ +fileFormatVersion: 2 +guid: e8cc75cb0bdf34f5e86d22cfc8994332 +TextureImporter: + fileIDToRecycleName: {} + externalObjects: {} + serializedVersion: 9 + mipmaps: + mipMapMode: 0 + enableMipMap: 0 + sRGBTexture: 1 + linearTexture: 0 + fadeOut: 0 + borderMipMap: 0 + mipMapsPreserveCoverage: 0 + alphaTestReferenceValue: 0.5 + mipMapFadeDistanceStart: 1 + mipMapFadeDistanceEnd: 3 + bumpmap: + convertToNormalMap: 0 + externalNormalMap: 0 + heightScale: 0.25 + normalMapFilter: 0 + isReadable: 0 + streamingMipmaps: 0 + streamingMipmapsPriority: 0 + grayScaleToAlpha: 0 + generateCubemap: 6 + cubemapConvolution: 0 + seamlessCubemap: 0 + textureFormat: 1 + maxTextureSize: 2048 + textureSettings: + serializedVersion: 2 + filterMode: -1 + aniso: 1 + mipBias: -100 + wrapU: 1 + wrapV: 1 + wrapW: -1 + nPOTScale: 0 + lightmap: 0 + compressionQuality: 50 + spriteMode: 0 + spriteExtrude: 1 + spriteMeshType: 1 + alignment: 0 + spritePivot: {x: 0.5, y: 0.5} + spritePixelsToUnits: 100 + spriteBorder: {x: 0, y: 0, z: 0, w: 0} + spriteGenerateFallbackPhysicsShape: 1 + alphaUsage: 1 + alphaIsTransparency: 1 + spriteTessellationDetail: -1 + textureType: 2 + textureShape: 1 + singleChannelComponent: 0 + maxTextureSizeSet: 0 + compressionQualitySet: 0 + textureFormatSet: 0 + platformSettings: + - serializedVersion: 2 + buildTarget: DefaultTexturePlatform + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Standalone + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 0 + spriteSheet: + serializedVersion: 2 + sprites: [] + outline: [] + physicsShape: [] + bones: [] + spriteID: + vertices: [] + indices: + edges: [] + weights: [] + spritePackingTag: + pSDRemoveMatte: 0 + pSDShowRemoveMatteOption: 0 + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Tutorials/Tutorial1/Walkthrough1-01-Introduction.asset" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Tutorials/Tutorial1/Walkthrough1-01-Introduction.asset" new file mode 100644 index 00000000..64b02f83 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Tutorials/Tutorial1/Walkthrough1-01-Introduction.asset" @@ -0,0 +1,70 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!114 &11400000 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: ff771ccdf4150419d9ff4d342b069aae, type: 3} + m_Name: Walkthrough1-01-Introduction + m_EditorClassIdentifier: + m_SectionTitle: + m_Paragraphs: + m_Items: + - m_Type: 6 + m_Summary: + m_Text: + m_TutorialButtonText: + m_Tutorial: {fileID: 0} + m_Icons: + m_Items: [] + m_Image: {fileID: 2800000, guid: d4dab764bb81e44bd9443cdee2776015, type: 3} + m_Video: {fileID: 0} + m_CriteriaCompletion: 0 + m_Criteria: + m_Items: [] + m_MaskingSettings: + m_MaskingEnabled: 1 + m_UnmaskedViews: [] + - m_Type: 0 + m_Summary: + m_Text: "Playtest\n\x03\x03\nTUTORIAL + \n\nIn this first tutorial, you will start by playing the + Karting game. After, you will learn how to make your first modification in + Unity.\x03\n\n\u2192 Click Start below to begin." + m_TutorialButtonText: + m_Tutorial: {fileID: 0} + m_Icons: + m_Items: [] + m_Image: {fileID: 0} + m_Video: {fileID: 0} + m_CriteriaCompletion: 0 + m_Criteria: + m_Items: [] + m_MaskingSettings: + m_MaskingEnabled: 1 + m_UnmaskedViews: [] + m_CameraSettings: + m_CameraMode: 1 + m_FocusMode: 0 + m_Orthographic: 0 + m_Size: 10 + m_Pivot: {x: -5, y: 26.339746, z: -12} + m_Rotation: {x: 0.5, y: 0, z: 0, w: 0.8660254} + m_FrameObject: + m_SceneGuid: + m_GameObjectGuid: + m_SerializedComponentType: + m_TypeName: + m_ComponentIndex: 0 + m_AssetObject: {fileID: 0} + m_Prefab: {fileID: 0} + m_Enabled: 1 + m_NextButton: Start + m_DoneButton: Done + m_CompletedSound: {fileID: 8300000, guid: 93fbb109633e844259ea828442bda0cb, type: 3} + m_autoAdvance: 0 diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Tutorials/Tutorial1/Walkthrough1-01-Introduction.asset.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Tutorials/Tutorial1/Walkthrough1-01-Introduction.asset.meta" new file mode 100644 index 00000000..6e68addb --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Tutorials/Tutorial1/Walkthrough1-01-Introduction.asset.meta" @@ -0,0 +1,9 @@ +fileFormatVersion: 2 +guid: fc1ba142c7deb40408e4c114e5a0ff63 +timeCreated: 1491992214 +licenseType: Store +NativeFormatImporter: + mainObjectFileID: 11400000 + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Tutorials/Tutorial1/Walkthrough1-02-First-Play.asset" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Tutorials/Tutorial1/Walkthrough1-02-First-Play.asset" new file mode 100644 index 00000000..2a342adb --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Tutorials/Tutorial1/Walkthrough1-02-First-Play.asset" @@ -0,0 +1,176 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!114 &11400000 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: ff771ccdf4150419d9ff4d342b069aae, type: 3} + m_Name: Walkthrough1-02-First-Play + m_EditorClassIdentifier: + m_SectionTitle: + m_Paragraphs: + m_Items: + - m_Type: 7 + m_Summary: + m_Text: + m_TutorialButtonText: + m_Tutorial: {fileID: 0} + m_Icons: + m_Items: [] + m_Image: {fileID: 2800000, guid: 53c032a736ea44f72b204332d1dc0f01, type: 3} + m_Video: {fileID: 32900000, guid: d69745293769a49ffb6955bb4862345c, type: 3} + m_CriteriaCompletion: 0 + m_Criteria: + m_Items: [] + m_MaskingSettings: + m_MaskingEnabled: 0 + m_UnmaskedViews: + - m_SelectorType: 0 + m_ViewType: + m_TypeName: UnityEditor.Toolbar, UnityEditor, Version=0.0.0.0, Culture=neutral, + PublicKeyToken=null + m_EditorWindowType: + m_TypeName: + m_AlternateEditorWindowTypes: + m_Items: [] + m_MaskType: 0 + m_MaskSizeModifier: 0 + m_UnmaskedControls: + - m_SelectorMode: 1 + m_GUIContent: + m_Text: + m_Image: {fileID: 0} + m_Tooltip: + m_ControlName: ToolbarPlayModePlayButton + m_PropertyPath: + m_TargetType: + m_TypeName: + m_GUIStyleName: + - m_SelectorType: 1 + m_ViewType: + m_TypeName: + m_EditorWindowType: + m_TypeName: UnityEditor.GameView, UnityEditor, Version=0.0.0.0, Culture=neutral, + PublicKeyToken=null + m_AlternateEditorWindowTypes: + m_Items: [] + m_MaskType: 0 + m_MaskSizeModifier: 0 + m_UnmaskedControls: [] + - m_Type: 0 + m_Summary: + m_Text: "Play Mode\n\nBefore you modify your game, let's + go ahead and play it!\x03\x03\n\nYou play your game in the Game view." + m_TutorialButtonText: + m_Tutorial: {fileID: 0} + m_Icons: + m_Items: [] + m_Image: {fileID: 0} + m_Video: {fileID: 0} + m_CriteriaCompletion: 0 + m_Criteria: + m_Items: [] + m_MaskingSettings: + m_MaskingEnabled: 0 + m_UnmaskedViews: + - m_SelectorType: 1 + m_ViewType: + m_TypeName: + m_EditorWindowType: + m_TypeName: UnityEditor.InspectorWindow, UnityEditor, Version=0.0.0.0, + Culture=neutral, PublicKeyToken=null + m_AlternateEditorWindowTypes: + m_Items: [] + m_MaskType: 0 + m_MaskSizeModifier: 0 + m_UnmaskedControls: [] + - m_Type: 1 + m_Summary: Enter Play Mode + m_Text: Click the Play button in the Toolbar at the top of the screen + to start playing. + m_TutorialButtonText: + m_Tutorial: {fileID: 0} + m_Icons: + m_Items: [] + m_Image: {fileID: 0} + m_Video: {fileID: 0} + m_CriteriaCompletion: 0 + m_Criteria: + m_Items: + - type: + m_TypeName: Unity.InteractiveTutorials.PlayModeStateCriterion, Unity.InteractiveTutorials.Core, + Version=0.0.0.0, Culture=neutral, PublicKeyToken=null + criterion: {fileID: 114177020261999768} + m_MaskingSettings: + m_MaskingEnabled: 1 + m_UnmaskedViews: + - m_SelectorType: 0 + m_ViewType: + m_TypeName: UnityEditor.Toolbar, UnityEditor, Version=0.0.0.0, Culture=neutral, + PublicKeyToken=null + m_EditorWindowType: + m_TypeName: + m_AlternateEditorWindowTypes: + m_Items: [] + m_MaskType: 0 + m_MaskSizeModifier: 0 + m_UnmaskedControls: + - m_SelectorMode: 1 + m_GUIContent: + m_Text: + m_Image: {fileID: 0} + m_Tooltip: + m_ControlName: ToolbarPlayModePlayButton + m_PropertyPath: + m_TargetType: + m_TypeName: + m_GUIStyleName: + - m_SelectorType: 1 + m_ViewType: + m_TypeName: + m_EditorWindowType: + m_TypeName: UnityEditor.GameView, UnityEditor, Version=0.0.0.0, Culture=neutral, + PublicKeyToken=null + m_AlternateEditorWindowTypes: + m_Items: [] + m_MaskType: 0 + m_MaskSizeModifier: 0 + m_UnmaskedControls: [] + m_CameraSettings: + m_CameraMode: 0 + m_FocusMode: 0 + m_Orthographic: 0 + m_Size: 0 + m_Pivot: {x: 0, y: 0, z: 0} + m_Rotation: {x: 0, y: 0, z: 0, w: 0} + m_FrameObject: + m_SceneGuid: + m_GameObjectGuid: + m_SerializedComponentType: + m_TypeName: + m_ComponentIndex: 0 + m_AssetObject: {fileID: 0} + m_Prefab: {fileID: 0} + m_Enabled: 0 + m_NextButton: Next + m_DoneButton: Done + m_CompletedSound: {fileID: 8300000, guid: 93fbb109633e844259ea828442bda0cb, type: 3} + m_autoAdvance: 1 +--- !u!114 &114177020261999768 +MonoBehaviour: + m_ObjectHideFlags: 1 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 641211c85919e4aceb79a0d364004d75, type: 3} + m_Name: + m_EditorClassIdentifier: + m_RequiredPlayModeState: 0 diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Tutorials/Tutorial1/Walkthrough1-02-First-Play.asset.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Tutorials/Tutorial1/Walkthrough1-02-First-Play.asset.meta" new file mode 100644 index 00000000..a4b370a8 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Tutorials/Tutorial1/Walkthrough1-02-First-Play.asset.meta" @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 612844087f48942d8b0855e60990f01a +NativeFormatImporter: + externalObjects: {} + mainObjectFileID: 0 + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Tutorials/Tutorial1/Walkthrough1-03-Exit-Play.asset" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Tutorials/Tutorial1/Walkthrough1-03-Exit-Play.asset" new file mode 100644 index 00000000..39932d68 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Tutorials/Tutorial1/Walkthrough1-03-Exit-Play.asset" @@ -0,0 +1,203 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!114 &11400000 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: ff771ccdf4150419d9ff4d342b069aae, type: 3} + m_Name: Walkthrough1-03-Exit-Play + m_EditorClassIdentifier: + m_SectionTitle: + m_Paragraphs: + m_Items: + - m_Type: 7 + m_Summary: + m_Text: + m_TutorialButtonText: + m_Tutorial: {fileID: 0} + m_Icons: + m_Items: [] + m_Image: {fileID: 2800000, guid: 53c032a736ea44f72b204332d1dc0f01, type: 3} + m_Video: {fileID: 32900000, guid: d69745293769a49ffb6955bb4862345c, type: 3} + m_CriteriaCompletion: 0 + m_Criteria: + m_Items: [] + m_MaskingSettings: + m_MaskingEnabled: 1 + m_UnmaskedViews: + - m_SelectorType: 1 + m_ViewType: + m_TypeName: + m_EditorWindowType: + m_TypeName: UnityEditor.GameView, UnityEditor, Version=0.0.0.0, Culture=neutral, + PublicKeyToken=null + m_AlternateEditorWindowTypes: + m_Items: [] + m_MaskType: 0 + m_MaskSizeModifier: 0 + m_UnmaskedControls: [] + - m_SelectorType: 0 + m_ViewType: + m_TypeName: UnityEditor.Toolbar, UnityEditor, Version=0.0.0.0, Culture=neutral, + PublicKeyToken=null + m_EditorWindowType: + m_TypeName: + m_AlternateEditorWindowTypes: + m_Items: [] + m_MaskType: 0 + m_MaskSizeModifier: 0 + m_UnmaskedControls: + - m_SelectorMode: 1 + m_GUIContent: + m_Text: + m_Image: {fileID: 0} + m_Tooltip: + m_ControlName: ToolbarPlayModePlayButton + m_PropertyPath: + m_TargetType: + m_TypeName: + m_GUIStyleName: + - m_Type: 0 + m_Summary: + m_Text: 'Game Controls + + + The controls for this game are Arrow keys, the Spacebar, and + ESC. + + + It takes 3 laps to finish. Once you are done, exit the play mode.' + m_TutorialButtonText: + m_Tutorial: {fileID: 0} + m_Icons: + m_Items: [] + m_Image: {fileID: 0} + m_Video: {fileID: 0} + m_CriteriaCompletion: 0 + m_Criteria: + m_Items: [] + m_MaskingSettings: + m_MaskingEnabled: 1 + m_UnmaskedViews: + - m_SelectorType: 1 + m_ViewType: + m_TypeName: + m_EditorWindowType: + m_TypeName: UnityEditor.GameView, UnityEditor, Version=0.0.0.0, Culture=neutral, + PublicKeyToken=null + m_AlternateEditorWindowTypes: + m_Items: [] + m_MaskType: 0 + m_MaskSizeModifier: 0 + m_UnmaskedControls: [] + - m_SelectorType: 0 + m_ViewType: + m_TypeName: UnityEditor.Toolbar, UnityEditor, Version=0.0.0.0, Culture=neutral, + PublicKeyToken=null + m_EditorWindowType: + m_TypeName: + m_AlternateEditorWindowTypes: + m_Items: [] + m_MaskType: 0 + m_MaskSizeModifier: 0 + m_UnmaskedControls: + - m_SelectorMode: 1 + m_GUIContent: + m_Text: + m_Image: {fileID: 0} + m_Tooltip: + m_ControlName: ToolbarPlayModePlayButton + m_PropertyPath: + m_TargetType: + m_TypeName: + m_GUIStyleName: + - m_Type: 1 + m_Summary: Exit Play Mode + m_Text: Click the Play button again when you are ready to stop playing + your game. + m_TutorialButtonText: + m_Tutorial: {fileID: 0} + m_Icons: + m_Items: [] + m_Image: {fileID: 0} + m_Video: {fileID: 0} + m_CriteriaCompletion: 0 + m_Criteria: + m_Items: + - type: + m_TypeName: Unity.InteractiveTutorials.PlayModeStateCriterion, Unity.InteractiveTutorials.Core, + Version=0.0.0.0, Culture=neutral, PublicKeyToken=null + criterion: {fileID: 114817151340577868} + m_MaskingSettings: + m_MaskingEnabled: 1 + m_UnmaskedViews: + - m_SelectorType: 1 + m_ViewType: + m_TypeName: + m_EditorWindowType: + m_TypeName: UnityEditor.GameView, UnityEditor, Version=0.0.0.0, Culture=neutral, + PublicKeyToken=null + m_AlternateEditorWindowTypes: + m_Items: [] + m_MaskType: 0 + m_MaskSizeModifier: 0 + m_UnmaskedControls: [] + - m_SelectorType: 0 + m_ViewType: + m_TypeName: UnityEditor.Toolbar, UnityEditor, Version=0.0.0.0, Culture=neutral, + PublicKeyToken=null + m_EditorWindowType: + m_TypeName: + m_AlternateEditorWindowTypes: + m_Items: [] + m_MaskType: 0 + m_MaskSizeModifier: 0 + m_UnmaskedControls: + - m_SelectorMode: 1 + m_GUIContent: + m_Text: + m_Image: {fileID: 0} + m_Tooltip: + m_ControlName: ToolbarPlayModePlayButton + m_PropertyPath: + m_TargetType: + m_TypeName: + m_GUIStyleName: + m_CameraSettings: + m_CameraMode: 0 + m_FocusMode: 0 + m_Orthographic: 0 + m_Size: 0 + m_Pivot: {x: 0, y: 0, z: 0} + m_Rotation: {x: 0, y: 0, z: 0, w: 0} + m_FrameObject: + m_SceneGuid: + m_GameObjectGuid: + m_SerializedComponentType: + m_TypeName: + m_ComponentIndex: 0 + m_AssetObject: {fileID: 0} + m_Prefab: {fileID: 0} + m_Enabled: 0 + m_NextButton: Next + m_DoneButton: Done + m_CompletedSound: {fileID: 8300000, guid: 93fbb109633e844259ea828442bda0cb, type: 3} + m_autoAdvance: 1 +--- !u!114 &114817151340577868 +MonoBehaviour: + m_ObjectHideFlags: 1 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 641211c85919e4aceb79a0d364004d75, type: 3} + m_Name: + m_EditorClassIdentifier: + m_RequiredPlayModeState: 1 diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Tutorials/Tutorial1/Walkthrough1-03-Exit-Play.asset.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Tutorials/Tutorial1/Walkthrough1-03-Exit-Play.asset.meta" new file mode 100644 index 00000000..87c9959d --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Tutorials/Tutorial1/Walkthrough1-03-Exit-Play.asset.meta" @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 67df256d36f564827ab6cce4308e8cf8 +NativeFormatImporter: + externalObjects: {} + mainObjectFileID: 0 + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Tutorials/Tutorial1/Walkthrough1-04-Hierarchy-Intro.asset" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Tutorials/Tutorial1/Walkthrough1-04-Hierarchy-Intro.asset" new file mode 100644 index 00000000..5ff518ae --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Tutorials/Tutorial1/Walkthrough1-04-Hierarchy-Intro.asset" @@ -0,0 +1,92 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!114 &11400000 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: ff771ccdf4150419d9ff4d342b069aae, type: 3} + m_Name: Walkthrough1-04-Hierarchy-Intro + m_EditorClassIdentifier: + m_SectionTitle: + m_Paragraphs: + m_Items: + - m_Type: 6 + m_Summary: + m_Text: + m_TutorialButtonText: + m_Tutorial: {fileID: 0} + m_Icons: + m_Items: [] + m_Image: {fileID: 2800000, guid: 919c66dd6aa06460a9f21e558a5a2d50, type: 3} + m_Video: {fileID: 0} + m_CriteriaCompletion: 0 + m_Criteria: + m_Items: [] + m_MaskingSettings: + m_MaskingEnabled: 1 + m_UnmaskedViews: + - m_SelectorType: 1 + m_ViewType: + m_TypeName: + m_EditorWindowType: + m_TypeName: UnityEditor.SceneHierarchyWindow, UnityEditor, Version=0.0.0.0, + Culture=neutral, PublicKeyToken=null + m_AlternateEditorWindowTypes: + m_Items: [] + m_MaskType: 1 + m_MaskSizeModifier: 0 + m_UnmaskedControls: [] + - m_Type: 0 + m_Summary: + m_Text: "Hierarchy Window\n\nThe Hierarchy window contains + the list of GameObjects currently added to your game.\n\nIn the next + steps you will select and change the speed of your Kart GameObject.\x03\x03\n\nClick + Next to continue.\n" + m_TutorialButtonText: + m_Tutorial: {fileID: 0} + m_Icons: + m_Items: [] + m_Image: {fileID: 0} + m_Video: {fileID: 0} + m_CriteriaCompletion: 0 + m_Criteria: + m_Items: [] + m_MaskingSettings: + m_MaskingEnabled: 1 + m_UnmaskedViews: + - m_SelectorType: 1 + m_ViewType: + m_TypeName: + m_EditorWindowType: + m_TypeName: UnityEditor.SceneHierarchyWindow, UnityEditor, Version=0.0.0.0, + Culture=neutral, PublicKeyToken=null + m_AlternateEditorWindowTypes: + m_Items: [] + m_MaskType: 1 + m_MaskSizeModifier: 0 + m_UnmaskedControls: [] + m_CameraSettings: + m_CameraMode: 0 + m_FocusMode: 0 + m_Orthographic: 0 + m_Size: 0 + m_Pivot: {x: 0, y: 0, z: 0} + m_Rotation: {x: 0, y: 0, z: 0, w: 0} + m_FrameObject: + m_SceneGuid: + m_GameObjectGuid: + m_SerializedComponentType: + m_TypeName: + m_ComponentIndex: 0 + m_AssetObject: {fileID: 0} + m_Prefab: {fileID: 0} + m_Enabled: 0 + m_NextButton: Next + m_DoneButton: Done + m_CompletedSound: {fileID: 8300000, guid: 93fbb109633e844259ea828442bda0cb, type: 3} + m_autoAdvance: 0 diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Tutorials/Tutorial1/Walkthrough1-04-Hierarchy-Intro.asset.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Tutorials/Tutorial1/Walkthrough1-04-Hierarchy-Intro.asset.meta" new file mode 100644 index 00000000..046235a6 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Tutorials/Tutorial1/Walkthrough1-04-Hierarchy-Intro.asset.meta" @@ -0,0 +1,9 @@ +fileFormatVersion: 2 +guid: 5ff93266ed71246baad6bdcff5c8310b +timeCreated: 1491992214 +licenseType: Store +NativeFormatImporter: + mainObjectFileID: 11400000 + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Tutorials/Tutorial1/Walkthrough1-05-Select-Object.asset" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Tutorials/Tutorial1/Walkthrough1-05-Select-Object.asset" new file mode 100644 index 00000000..8cd98fc6 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Tutorials/Tutorial1/Walkthrough1-05-Select-Object.asset" @@ -0,0 +1,166 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!114 &11400000 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: ff771ccdf4150419d9ff4d342b069aae, type: 3} + m_Name: Walkthrough1-05-Select-Object + m_EditorClassIdentifier: + m_SectionTitle: + m_Paragraphs: + m_Items: + - m_Type: 7 + m_Summary: + m_Text: + m_TutorialButtonText: + m_Tutorial: {fileID: 0} + m_Icons: + m_Items: [] + m_Image: {fileID: 2800000, guid: e8cc75cb0bdf34f5e86d22cfc8994332, type: 3} + m_Video: {fileID: 32900000, guid: 35304cdc4c526489ca8df1faeb57f5b3, type: 3} + m_CriteriaCompletion: 0 + m_Criteria: + m_Items: [] + m_MaskingSettings: + m_MaskingEnabled: 1 + m_UnmaskedViews: + - m_SelectorType: 1 + m_ViewType: + m_TypeName: + m_EditorWindowType: + m_TypeName: UnityEditor.SceneHierarchyWindow, UnityEditor, Version=0.0.0.0, + Culture=neutral, PublicKeyToken=null + m_AlternateEditorWindowTypes: + m_Items: [] + m_MaskType: 0 + m_MaskSizeModifier: 0 + m_UnmaskedControls: [] + - m_Type: 0 + m_Summary: + m_Text: "Select GameObject in Hierarchy\n\nClick on an + object in the Hierarchy Window to select it. \n\nAlternatively you + can also select objects by clicking them in the Scene View. For now, lets + use the Hierarchy." + m_TutorialButtonText: + m_Tutorial: {fileID: 0} + m_Icons: + m_Items: [] + m_Image: {fileID: 0} + m_Video: {fileID: 0} + m_CriteriaCompletion: 0 + m_Criteria: + m_Items: [] + m_MaskingSettings: + m_MaskingEnabled: 1 + m_UnmaskedViews: + - m_SelectorType: 1 + m_ViewType: + m_TypeName: + m_EditorWindowType: + m_TypeName: UnityEditor.SceneHierarchyWindow, UnityEditor, Version=0.0.0.0, + Culture=neutral, PublicKeyToken=null + m_AlternateEditorWindowTypes: + m_Items: [] + m_MaskType: 0 + m_MaskSizeModifier: 1 + m_UnmaskedControls: + - m_SelectorMode: 0 + m_GUIContent: + m_Text: Kart + m_Image: {fileID: 0} + m_Tooltip: + m_ControlName: + m_PropertyPath: Kart + m_TargetType: + m_TypeName: + m_GUIStyleName: + - m_Type: 1 + m_Summary: Select Kart GameObject + m_Text: In the Hierarchy window, select the Kart GameObject in + the list. + m_TutorialButtonText: + m_Tutorial: {fileID: 0} + m_Icons: + m_Items: [] + m_Image: {fileID: 0} + m_Video: {fileID: 0} + m_CriteriaCompletion: 0 + m_Criteria: + m_Items: + - type: + m_TypeName: Unity.InteractiveTutorials.RequiredSelectionCriterion, Unity.InteractiveTutorials.Core, + Version=0.0.0.0, Culture=neutral, PublicKeyToken=null + criterion: {fileID: 114925962760236852} + m_MaskingSettings: + m_MaskingEnabled: 1 + m_UnmaskedViews: + - m_SelectorType: 1 + m_ViewType: + m_TypeName: + m_EditorWindowType: + m_TypeName: UnityEditor.SceneHierarchyWindow, UnityEditor, Version=0.0.0.0, + Culture=neutral, PublicKeyToken=null + m_AlternateEditorWindowTypes: + m_Items: [] + m_MaskType: 0 + m_MaskSizeModifier: 1 + m_UnmaskedControls: + - m_SelectorMode: 0 + m_GUIContent: + m_Text: Kart + m_Image: {fileID: 0} + m_Tooltip: + m_ControlName: + m_PropertyPath: Kart + m_TargetType: + m_TypeName: + m_GUIStyleName: + m_CameraSettings: + m_CameraMode: 1 + m_FocusMode: 1 + m_Orthographic: 0 + m_Size: 0 + m_Pivot: {x: 0, y: 0, z: 0} + m_Rotation: {x: 0, y: 0, z: 0, w: 0} + m_FrameObject: + m_SceneGuid: 99c9720ab356a0642a771bea13969a05 + m_GameObjectGuid: 5f066cea7249a4f52bceda5dbcbf1247 + m_SerializedComponentType: + m_TypeName: + m_ComponentIndex: 0 + m_AssetObject: {fileID: 0} + m_Prefab: {fileID: 0} + m_Enabled: 0 + m_NextButton: Next + m_DoneButton: Done + m_CompletedSound: {fileID: 8300000, guid: 93fbb109633e844259ea828442bda0cb, type: 3} + m_autoAdvance: 0 +--- !u!114 &114925962760236852 +MonoBehaviour: + m_ObjectHideFlags: 1 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 255ef86cb95f04796b8e3b3f5b23efe7, type: 3} + m_Name: + m_EditorClassIdentifier: + m_ObjectReferences: + m_Items: + - m_SceneObjectReference: + m_SceneGuid: f8c7069e6d9b2124b861144ca83d31e8 + m_GameObjectGuid: b813da5b-b190-4543-a594-de3a2cdd433a + m_SerializedComponentType: + m_TypeName: + m_ComponentIndex: 0 + m_AssetObject: {fileID: 0} + m_Prefab: {fileID: 0} + m_FutureObjectReference: {fileID: 0} diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Tutorials/Tutorial1/Walkthrough1-05-Select-Object.asset.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Tutorials/Tutorial1/Walkthrough1-05-Select-Object.asset.meta" new file mode 100644 index 00000000..7863cb28 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Tutorials/Tutorial1/Walkthrough1-05-Select-Object.asset.meta" @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 026d54c9344341844a19edbe01afebbe +NativeFormatImporter: + externalObjects: {} + mainObjectFileID: 11400000 + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Tutorials/Tutorial1/Walkthrough1-06-Inspector-Intro.asset" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Tutorials/Tutorial1/Walkthrough1-06-Inspector-Intro.asset" new file mode 100644 index 00000000..d681ff1d --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Tutorials/Tutorial1/Walkthrough1-06-Inspector-Intro.asset" @@ -0,0 +1,99 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!114 &11400000 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: ff771ccdf4150419d9ff4d342b069aae, type: 3} + m_Name: Walkthrough1-06-Inspector-Intro + m_EditorClassIdentifier: + m_SectionTitle: + m_Paragraphs: + m_Items: + - m_Type: 6 + m_Summary: + m_Text: + m_TutorialButtonText: + m_Tutorial: {fileID: 0} + m_Icons: + m_Items: [] + m_Image: {fileID: 2800000, guid: ae6835abb80fc4f0c949b54d00b1c63c, type: 3} + m_Video: {fileID: 0} + m_CriteriaCompletion: 0 + m_Criteria: + m_Items: [] + m_MaskingSettings: + m_MaskingEnabled: 1 + m_UnmaskedViews: + - m_SelectorType: 1 + m_ViewType: + m_TypeName: + m_EditorWindowType: + m_TypeName: UnityEditor.InspectorWindow, UnityEditor, Version=0.0.0.0, + Culture=neutral, PublicKeyToken=null + m_AlternateEditorWindowTypes: + m_Items: [] + m_MaskType: 1 + m_MaskSizeModifier: 0 + m_UnmaskedControls: [] + - m_Type: 0 + m_Summary: + m_Text: 'Inspector Window + + + When a GameObject is selected, the Inspector window shows its properties. + + + The Inspector lists all the components and properties of the Kart GameObject + that you just selected. + + + Click Next to continue.' + m_TutorialButtonText: + m_Tutorial: {fileID: 0} + m_Icons: + m_Items: [] + m_Image: {fileID: 0} + m_Video: {fileID: 0} + m_CriteriaCompletion: 0 + m_Criteria: + m_Items: [] + m_MaskingSettings: + m_MaskingEnabled: 1 + m_UnmaskedViews: + - m_SelectorType: 1 + m_ViewType: + m_TypeName: + m_EditorWindowType: + m_TypeName: UnityEditor.InspectorWindow, UnityEditor, Version=0.0.0.0, + Culture=neutral, PublicKeyToken=null + m_AlternateEditorWindowTypes: + m_Items: [] + m_MaskType: 1 + m_MaskSizeModifier: 0 + m_UnmaskedControls: [] + m_CameraSettings: + m_CameraMode: 0 + m_FocusMode: 0 + m_Orthographic: 0 + m_Size: 0 + m_Pivot: {x: 0, y: 0, z: 0} + m_Rotation: {x: 0, y: 0, z: 0, w: 0} + m_FrameObject: + m_SceneGuid: + m_GameObjectGuid: + m_SerializedComponentType: + m_TypeName: + m_ComponentIndex: 0 + m_AssetObject: {fileID: 0} + m_Prefab: {fileID: 0} + m_Enabled: 0 + m_NextButton: Next + m_DoneButton: Done + m_CompletedSound: {fileID: 8300000, guid: 93fbb109633e844259ea828442bda0cb, type: 3} + m_autoAdvance: 0 diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Tutorials/Tutorial1/Walkthrough1-06-Inspector-Intro.asset.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Tutorials/Tutorial1/Walkthrough1-06-Inspector-Intro.asset.meta" new file mode 100644 index 00000000..08c8c504 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Tutorials/Tutorial1/Walkthrough1-06-Inspector-Intro.asset.meta" @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: be5d8efcae5a6e942bed0ce1ce2e9eba +NativeFormatImporter: + externalObjects: {} + mainObjectFileID: 11400000 + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Tutorials/Tutorial1/Walkthrough1-07-Edit-Speed.asset" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Tutorials/Tutorial1/Walkthrough1-07-Edit-Speed.asset" new file mode 100644 index 00000000..5aa5390c --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Tutorials/Tutorial1/Walkthrough1-07-Edit-Speed.asset" @@ -0,0 +1,219 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!114 &11400000 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: ff771ccdf4150419d9ff4d342b069aae, type: 3} + m_Name: Walkthrough1-07-Edit-Speed + m_EditorClassIdentifier: + m_SectionTitle: + m_Paragraphs: + m_Items: + - m_Type: 7 + m_Summary: + m_Text: + m_TutorialButtonText: + m_Tutorial: {fileID: 0} + m_Icons: + m_Items: [] + m_Image: {fileID: 2800000, guid: 3e7fa2c6d4bc64207a7fbd8595747b33, type: 3} + m_Video: {fileID: 32900000, guid: 07194c5207fd848ddab5351079a420c4, type: 3} + m_CriteriaCompletion: 0 + m_Criteria: + m_Items: [] + m_MaskingSettings: + m_MaskingEnabled: 1 + m_UnmaskedViews: + - m_SelectorType: 1 + m_ViewType: + m_TypeName: + m_EditorWindowType: + m_TypeName: UnityEditor.InspectorWindow, UnityEditor, Version=0.0.0.0, + Culture=neutral, PublicKeyToken=null + m_AlternateEditorWindowTypes: + m_Items: [] + m_MaskType: 0 + m_MaskSizeModifier: 0 + m_UnmaskedControls: [] + - m_SelectorType: 1 + m_ViewType: + m_TypeName: + m_EditorWindowType: + m_TypeName: UnityEditor.InspectorWindow, UnityEditor, Version=0.0.0.0, + Culture=neutral, PublicKeyToken=null + m_AlternateEditorWindowTypes: + m_Items: [] + m_MaskType: 0 + m_MaskSizeModifier: 0 + m_UnmaskedControls: + - m_SelectorMode: 2 + m_GUIContent: + m_Text: + m_Image: {fileID: 0} + m_Tooltip: + m_ControlName: + m_PropertyPath: defaultStats.topSpeed + m_TargetType: + m_TypeName: KartGame.KartSystems.KartMovement, Assembly-CSharp, Version=0.0.0.0, + Culture=neutral, PublicKeyToken=null + m_GUIStyleName: + - m_Type: 0 + m_Summary: + m_Text: 'Change Top Speed Property + + + You can see all the properties of the Kart GameOBject in the Inspector. + + + Try increasing the number in the Top Speed field to make the Kart go + faster.' + m_TutorialButtonText: + m_Tutorial: {fileID: 0} + m_Icons: + m_Items: [] + m_Image: {fileID: 0} + m_Video: {fileID: 0} + m_CriteriaCompletion: 0 + m_Criteria: + m_Items: [] + m_MaskingSettings: + m_MaskingEnabled: 1 + m_UnmaskedViews: + - m_SelectorType: 1 + m_ViewType: + m_TypeName: + m_EditorWindowType: + m_TypeName: UnityEditor.InspectorWindow, UnityEditor, Version=0.0.0.0, + Culture=neutral, PublicKeyToken=null + m_AlternateEditorWindowTypes: + m_Items: [] + m_MaskType: 0 + m_MaskSizeModifier: 0 + m_UnmaskedControls: [] + - m_SelectorType: 1 + m_ViewType: + m_TypeName: + m_EditorWindowType: + m_TypeName: UnityEditor.InspectorWindow, UnityEditor, Version=0.0.0.0, + Culture=neutral, PublicKeyToken=null + m_AlternateEditorWindowTypes: + m_Items: [] + m_MaskType: 0 + m_MaskSizeModifier: 0 + m_UnmaskedControls: + - m_SelectorMode: 2 + m_GUIContent: + m_Text: + m_Image: {fileID: 0} + m_Tooltip: + m_ControlName: + m_PropertyPath: defaultStats.topSpeed + m_TargetType: + m_TypeName: KartGame.KartSystems.KartMovement, Assembly-CSharp, Version=0.0.0.0, + Culture=neutral, PublicKeyToken=null + m_GUIStyleName: + - m_Type: 1 + m_Summary: Edit Top Speed Property + m_Text: You may need to click to open Default Stats. + m_TutorialButtonText: + m_Tutorial: {fileID: 0} + m_Icons: + m_Items: [] + m_Image: {fileID: 0} + m_Video: {fileID: 0} + m_CriteriaCompletion: 0 + m_Criteria: + m_Items: + - type: + m_TypeName: Unity.InteractiveTutorials.PropertyModificationCriterion, + Unity.InteractiveTutorials.Core, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null + criterion: {fileID: 114360571127113222} + m_MaskingSettings: + m_MaskingEnabled: 1 + m_UnmaskedViews: + - m_SelectorType: 1 + m_ViewType: + m_TypeName: + m_EditorWindowType: + m_TypeName: UnityEditor.InspectorWindow, UnityEditor, Version=0.0.0.0, + Culture=neutral, PublicKeyToken=null + m_AlternateEditorWindowTypes: + m_Items: [] + m_MaskType: 0 + m_MaskSizeModifier: 0 + m_UnmaskedControls: [] + - m_SelectorType: 1 + m_ViewType: + m_TypeName: + m_EditorWindowType: + m_TypeName: UnityEditor.InspectorWindow, UnityEditor, Version=0.0.0.0, + Culture=neutral, PublicKeyToken=null + m_AlternateEditorWindowTypes: + m_Items: [] + m_MaskType: 0 + m_MaskSizeModifier: 0 + m_UnmaskedControls: + - m_SelectorMode: 2 + m_GUIContent: + m_Text: + m_Image: {fileID: 0} + m_Tooltip: + m_ControlName: + m_PropertyPath: defaultStats.topSpeed + m_TargetType: + m_TypeName: KartGame.KartSystems.KartMovement, Assembly-CSharp, Version=0.0.0.0, + Culture=neutral, PublicKeyToken=null + m_GUIStyleName: + m_CameraSettings: + m_CameraMode: 0 + m_FocusMode: 0 + m_Orthographic: 0 + m_Size: 0 + m_Pivot: {x: 0, y: 0, z: 0} + m_Rotation: {x: 0, y: 0, z: 0, w: 0} + m_FrameObject: + m_SceneGuid: + m_GameObjectGuid: + m_SerializedComponentType: + m_TypeName: + m_ComponentIndex: 0 + m_AssetObject: {fileID: 0} + m_Prefab: {fileID: 0} + m_Enabled: 0 + m_NextButton: Next + m_DoneButton: Done + m_CompletedSound: {fileID: 8300000, guid: 93fbb109633e844259ea828442bda0cb, type: 3} + m_autoAdvance: 0 +--- !u!114 &114360571127113222 +MonoBehaviour: + m_ObjectHideFlags: 1 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 5e52eaa6fdf2a4794ba81c7bc450905e, type: 3} + m_Name: + m_EditorClassIdentifier: + m_PropertyPath: defaultStats.topSpeed + m_TargetValueMode: 1 + m_TargetValue: + m_TargetValueType: 1 + m_Target: + m_SceneObjectReference: + m_SceneGuid: f8c7069e6d9b2124b861144ca83d31e8 + m_GameObjectGuid: b813da5b-b190-4543-a594-de3a2cdd433a + m_SerializedComponentType: + m_TypeName: KartGame.KartSystems.KartMovement, Assembly-CSharp, Version=0.0.0.0, + Culture=neutral, PublicKeyToken=null + m_ComponentIndex: 0 + m_AssetObject: {fileID: 0} + m_Prefab: {fileID: 0} + m_FutureObjectReference: {fileID: 0} diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Tutorials/Tutorial1/Walkthrough1-07-Edit-Speed.asset.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Tutorials/Tutorial1/Walkthrough1-07-Edit-Speed.asset.meta" new file mode 100644 index 00000000..6c62b470 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Tutorials/Tutorial1/Walkthrough1-07-Edit-Speed.asset.meta" @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 1ddadc0b2227c4f95b63cc350b714bd5 +NativeFormatImporter: + externalObjects: {} + mainObjectFileID: 0 + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Tutorials/Tutorial1/Walkthrough1-08-Play-New-Speed.asset" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Tutorials/Tutorial1/Walkthrough1-08-Play-New-Speed.asset" new file mode 100644 index 00000000..a6c2b2b1 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Tutorials/Tutorial1/Walkthrough1-08-Play-New-Speed.asset" @@ -0,0 +1,177 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!114 &11400000 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: ff771ccdf4150419d9ff4d342b069aae, type: 3} + m_Name: Walkthrough1-08-Play-New-Speed + m_EditorClassIdentifier: + m_SectionTitle: + m_Paragraphs: + m_Items: + - m_Type: 7 + m_Summary: + m_Text: + m_TutorialButtonText: + m_Tutorial: {fileID: 0} + m_Icons: + m_Items: [] + m_Image: {fileID: 2800000, guid: 53c032a736ea44f72b204332d1dc0f01, type: 3} + m_Video: {fileID: 32900000, guid: d69745293769a49ffb6955bb4862345c, type: 3} + m_CriteriaCompletion: 0 + m_Criteria: + m_Items: [] + m_MaskingSettings: + m_MaskingEnabled: 1 + m_UnmaskedViews: + - m_SelectorType: 0 + m_ViewType: + m_TypeName: UnityEditor.Toolbar, UnityEditor, Version=0.0.0.0, Culture=neutral, + PublicKeyToken=null + m_EditorWindowType: + m_TypeName: + m_AlternateEditorWindowTypes: + m_Items: [] + m_MaskType: 0 + m_MaskSizeModifier: 0 + m_UnmaskedControls: + - m_SelectorMode: 1 + m_GUIContent: + m_Text: + m_Image: {fileID: 0} + m_Tooltip: + m_ControlName: ToolbarPlayModePlayButton + m_PropertyPath: + m_TargetType: + m_TypeName: + m_GUIStyleName: + - m_SelectorType: 1 + m_ViewType: + m_TypeName: + m_EditorWindowType: + m_TypeName: UnityEditor.GameView, UnityEditor, Version=0.0.0.0, Culture=neutral, + PublicKeyToken=null + m_AlternateEditorWindowTypes: + m_Items: [] + m_MaskType: 0 + m_MaskSizeModifier: 0 + m_UnmaskedControls: [] + - m_Type: 0 + m_Summary: + m_Text: "Playtest with new Speed\n\nNow try your game + with the new speed. Click Play at the top of the editor to enter Play + Mode.\x03\x03\n\nDon't worry if the speed does not feel right, you can change + it after the tutorial." + m_TutorialButtonText: + m_Tutorial: {fileID: 0} + m_Icons: + m_Items: [] + m_Image: {fileID: 0} + m_Video: {fileID: 0} + m_CriteriaCompletion: 0 + m_Criteria: + m_Items: [] + m_MaskingSettings: + m_MaskingEnabled: 1 + m_UnmaskedViews: + - m_SelectorType: 1 + m_ViewType: + m_TypeName: + m_EditorWindowType: + m_TypeName: UnityEditor.InspectorWindow, UnityEditor, Version=0.0.0.0, + Culture=neutral, PublicKeyToken=null + m_AlternateEditorWindowTypes: + m_Items: [] + m_MaskType: 0 + m_MaskSizeModifier: 0 + m_UnmaskedControls: [] + - m_Type: 1 + m_Summary: Enter Play Mode + m_Text: Click the Play button to enter Play Mode. + m_TutorialButtonText: + m_Tutorial: {fileID: 0} + m_Icons: + m_Items: [] + m_Image: {fileID: 0} + m_Video: {fileID: 0} + m_CriteriaCompletion: 0 + m_Criteria: + m_Items: + - type: + m_TypeName: Unity.InteractiveTutorials.PlayModeStateCriterion, Unity.InteractiveTutorials.Core, + Version=0.0.0.0, Culture=neutral, PublicKeyToken=null + criterion: {fileID: 114177020261999768} + m_MaskingSettings: + m_MaskingEnabled: 1 + m_UnmaskedViews: + - m_SelectorType: 0 + m_ViewType: + m_TypeName: UnityEditor.Toolbar, UnityEditor, Version=0.0.0.0, Culture=neutral, + PublicKeyToken=null + m_EditorWindowType: + m_TypeName: + m_AlternateEditorWindowTypes: + m_Items: [] + m_MaskType: 0 + m_MaskSizeModifier: 0 + m_UnmaskedControls: + - m_SelectorMode: 1 + m_GUIContent: + m_Text: + m_Image: {fileID: 0} + m_Tooltip: + m_ControlName: ToolbarPlayModePlayButton + m_PropertyPath: + m_TargetType: + m_TypeName: + m_GUIStyleName: + - m_SelectorType: 1 + m_ViewType: + m_TypeName: + m_EditorWindowType: + m_TypeName: UnityEditor.GameView, UnityEditor, Version=0.0.0.0, Culture=neutral, + PublicKeyToken=null + m_AlternateEditorWindowTypes: + m_Items: [] + m_MaskType: 0 + m_MaskSizeModifier: 0 + m_UnmaskedControls: [] + m_CameraSettings: + m_CameraMode: 0 + m_FocusMode: 0 + m_Orthographic: 0 + m_Size: 0 + m_Pivot: {x: 0, y: 0, z: 0} + m_Rotation: {x: 0, y: 0, z: 0, w: 0} + m_FrameObject: + m_SceneGuid: + m_GameObjectGuid: + m_SerializedComponentType: + m_TypeName: + m_ComponentIndex: 0 + m_AssetObject: {fileID: 0} + m_Prefab: {fileID: 0} + m_Enabled: 0 + m_NextButton: Next + m_DoneButton: Done + m_CompletedSound: {fileID: 8300000, guid: 93fbb109633e844259ea828442bda0cb, type: 3} + m_autoAdvance: 1 +--- !u!114 &114177020261999768 +MonoBehaviour: + m_ObjectHideFlags: 1 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 641211c85919e4aceb79a0d364004d75, type: 3} + m_Name: + m_EditorClassIdentifier: + m_RequiredPlayModeState: 0 diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Tutorials/Tutorial1/Walkthrough1-08-Play-New-Speed.asset.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Tutorials/Tutorial1/Walkthrough1-08-Play-New-Speed.asset.meta" new file mode 100644 index 00000000..a513b950 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Tutorials/Tutorial1/Walkthrough1-08-Play-New-Speed.asset.meta" @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 563a8aba6d9a0a0418aae455804e1e85 +NativeFormatImporter: + externalObjects: {} + mainObjectFileID: 11400000 + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Tutorials/Tutorial1/Walkthrough1-09-Exit-Play.asset" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Tutorials/Tutorial1/Walkthrough1-09-Exit-Play.asset" new file mode 100644 index 00000000..8ad956f6 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Tutorials/Tutorial1/Walkthrough1-09-Exit-Play.asset" @@ -0,0 +1,198 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!114 &11400000 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: ff771ccdf4150419d9ff4d342b069aae, type: 3} + m_Name: Walkthrough1-09-Exit-Play + m_EditorClassIdentifier: + m_SectionTitle: + m_Paragraphs: + m_Items: + - m_Type: 7 + m_Summary: + m_Text: + m_TutorialButtonText: + m_Tutorial: {fileID: 0} + m_Icons: + m_Items: [] + m_Image: {fileID: 2800000, guid: 53c032a736ea44f72b204332d1dc0f01, type: 3} + m_Video: {fileID: 32900000, guid: d69745293769a49ffb6955bb4862345c, type: 3} + m_CriteriaCompletion: 0 + m_Criteria: + m_Items: [] + m_MaskingSettings: + m_MaskingEnabled: 1 + m_UnmaskedViews: + - m_SelectorType: 1 + m_ViewType: + m_TypeName: + m_EditorWindowType: + m_TypeName: UnityEditor.GameView, UnityEditor, Version=0.0.0.0, Culture=neutral, + PublicKeyToken=null + m_AlternateEditorWindowTypes: + m_Items: [] + m_MaskType: 0 + m_MaskSizeModifier: 0 + m_UnmaskedControls: [] + - m_SelectorType: 0 + m_ViewType: + m_TypeName: UnityEditor.Toolbar, UnityEditor, Version=0.0.0.0, Culture=neutral, + PublicKeyToken=null + m_EditorWindowType: + m_TypeName: + m_AlternateEditorWindowTypes: + m_Items: [] + m_MaskType: 0 + m_MaskSizeModifier: 0 + m_UnmaskedControls: + - m_SelectorMode: 1 + m_GUIContent: + m_Text: + m_Image: {fileID: 0} + m_Tooltip: + m_ControlName: ToolbarPlayModePlayButton + m_PropertyPath: + m_TargetType: + m_TypeName: + m_GUIStyleName: + - m_Type: 0 + m_Summary: + m_Text: 'Exit Playtest + + + Exit Play Mode when you''re done.' + m_TutorialButtonText: + m_Tutorial: {fileID: 0} + m_Icons: + m_Items: [] + m_Image: {fileID: 0} + m_Video: {fileID: 0} + m_CriteriaCompletion: 0 + m_Criteria: + m_Items: [] + m_MaskingSettings: + m_MaskingEnabled: 1 + m_UnmaskedViews: + - m_SelectorType: 1 + m_ViewType: + m_TypeName: + m_EditorWindowType: + m_TypeName: UnityEditor.GameView, UnityEditor, Version=0.0.0.0, Culture=neutral, + PublicKeyToken=null + m_AlternateEditorWindowTypes: + m_Items: [] + m_MaskType: 0 + m_MaskSizeModifier: 0 + m_UnmaskedControls: [] + - m_SelectorType: 0 + m_ViewType: + m_TypeName: UnityEditor.Toolbar, UnityEditor, Version=0.0.0.0, Culture=neutral, + PublicKeyToken=null + m_EditorWindowType: + m_TypeName: + m_AlternateEditorWindowTypes: + m_Items: [] + m_MaskType: 0 + m_MaskSizeModifier: 0 + m_UnmaskedControls: + - m_SelectorMode: 1 + m_GUIContent: + m_Text: + m_Image: {fileID: 0} + m_Tooltip: + m_ControlName: ToolbarPlayModePlayButton + m_PropertyPath: + m_TargetType: + m_TypeName: + m_GUIStyleName: + - m_Type: 1 + m_Summary: Exit Play Mode + m_Text: Click the Play button again when you are finished playing your game. + m_TutorialButtonText: + m_Tutorial: {fileID: 0} + m_Icons: + m_Items: [] + m_Image: {fileID: 0} + m_Video: {fileID: 0} + m_CriteriaCompletion: 0 + m_Criteria: + m_Items: + - type: + m_TypeName: Unity.InteractiveTutorials.PlayModeStateCriterion, Unity.InteractiveTutorials.Core, + Version=0.0.0.0, Culture=neutral, PublicKeyToken=null + criterion: {fileID: 114817151340577868} + m_MaskingSettings: + m_MaskingEnabled: 1 + m_UnmaskedViews: + - m_SelectorType: 1 + m_ViewType: + m_TypeName: + m_EditorWindowType: + m_TypeName: UnityEditor.GameView, UnityEditor, Version=0.0.0.0, Culture=neutral, + PublicKeyToken=null + m_AlternateEditorWindowTypes: + m_Items: [] + m_MaskType: 0 + m_MaskSizeModifier: 0 + m_UnmaskedControls: [] + - m_SelectorType: 0 + m_ViewType: + m_TypeName: UnityEditor.Toolbar, UnityEditor, Version=0.0.0.0, Culture=neutral, + PublicKeyToken=null + m_EditorWindowType: + m_TypeName: + m_AlternateEditorWindowTypes: + m_Items: [] + m_MaskType: 0 + m_MaskSizeModifier: 0 + m_UnmaskedControls: + - m_SelectorMode: 1 + m_GUIContent: + m_Text: + m_Image: {fileID: 0} + m_Tooltip: + m_ControlName: ToolbarPlayModePlayButton + m_PropertyPath: + m_TargetType: + m_TypeName: + m_GUIStyleName: + m_CameraSettings: + m_CameraMode: 0 + m_FocusMode: 0 + m_Orthographic: 0 + m_Size: 0 + m_Pivot: {x: 0, y: 0, z: 0} + m_Rotation: {x: 0, y: 0, z: 0, w: 0} + m_FrameObject: + m_SceneGuid: + m_GameObjectGuid: + m_SerializedComponentType: + m_TypeName: + m_ComponentIndex: 0 + m_AssetObject: {fileID: 0} + m_Prefab: {fileID: 0} + m_Enabled: 0 + m_NextButton: Next + m_DoneButton: Done + m_CompletedSound: {fileID: 8300000, guid: 93fbb109633e844259ea828442bda0cb, type: 3} + m_autoAdvance: 1 +--- !u!114 &114817151340577868 +MonoBehaviour: + m_ObjectHideFlags: 1 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 641211c85919e4aceb79a0d364004d75, type: 3} + m_Name: + m_EditorClassIdentifier: + m_RequiredPlayModeState: 1 diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Tutorials/Tutorial1/Walkthrough1-09-Exit-Play.asset.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Tutorials/Tutorial1/Walkthrough1-09-Exit-Play.asset.meta" new file mode 100644 index 00000000..f5c718ca --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Tutorials/Tutorial1/Walkthrough1-09-Exit-Play.asset.meta" @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: d18d9b2a07d623d42a4c1c8da3c46ee7 +NativeFormatImporter: + externalObjects: {} + mainObjectFileID: 11400000 + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Tutorials/Tutorial1/Walkthrough1-10-Done.asset" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Tutorials/Tutorial1/Walkthrough1-10-Done.asset" new file mode 100644 index 00000000..c163218a --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Tutorials/Tutorial1/Walkthrough1-10-Done.asset" @@ -0,0 +1,85 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!114 &11400000 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: ff771ccdf4150419d9ff4d342b069aae, type: 3} + m_Name: Walkthrough1-10-Done + m_EditorClassIdentifier: + m_SectionTitle: + m_Paragraphs: + m_Items: + - m_Type: 6 + m_Summary: + m_Text: + m_TutorialButtonText: 'Tutorial: Getting to know Editor' + m_Tutorial: {fileID: 11400000, guid: ef019b20e49b14cfca4e98ecf5fd345d, type: 2} + m_Icons: + m_Items: [] + m_Image: {fileID: 2800000, guid: cf2b88c8b41ea4e42ba6e17726c32b87, type: 3} + m_Video: {fileID: 32900000, guid: 8325f6e9b7fa649a483f195d6e94d060, type: 3} + m_CriteriaCompletion: 0 + m_Criteria: + m_Items: [] + m_MaskingSettings: + m_MaskingEnabled: 1 + m_UnmaskedViews: [] + - m_Type: 0 + m_Summary: + m_Text: "Tutorial Completed\n\nYou've now played your + game and changed the speed of your Kart. \n\nWhat's next? Keep going to learn + how to change your Kart's color, and add objects around the track. \x03\x03\n\nBefore + you do, get familiar with the Editor." + m_TutorialButtonText: + m_Tutorial: {fileID: 0} + m_Icons: + m_Items: [] + m_Image: {fileID: 0} + m_Video: {fileID: 0} + m_CriteriaCompletion: 0 + m_Criteria: + m_Items: [] + m_MaskingSettings: + m_MaskingEnabled: 1 + m_UnmaskedViews: [] + - m_Type: 2 + m_Summary: + m_Text: + m_TutorialButtonText: 'Tutorial: Editor UI' + m_Tutorial: {fileID: 11400000, guid: ef019b20e49b14cfca4e98ecf5fd345d, type: 2} + m_Icons: + m_Items: [] + m_Image: {fileID: 0} + m_Video: {fileID: 0} + m_CriteriaCompletion: 0 + m_Criteria: + m_Items: [] + m_MaskingSettings: + m_MaskingEnabled: 1 + m_UnmaskedViews: [] + m_CameraSettings: + m_CameraMode: 1 + m_FocusMode: 0 + m_Orthographic: 0 + m_Size: 10 + m_Pivot: {x: -5, y: 26.339746, z: -12} + m_Rotation: {x: 0.5, y: 0, z: 0, w: 0.8660254} + m_FrameObject: + m_SceneGuid: + m_GameObjectGuid: + m_SerializedComponentType: + m_TypeName: + m_ComponentIndex: 0 + m_AssetObject: {fileID: 0} + m_Prefab: {fileID: 0} + m_Enabled: 1 + m_NextButton: Next + m_DoneButton: Done + m_CompletedSound: {fileID: 8300000, guid: 93fbb109633e844259ea828442bda0cb, type: 3} + m_autoAdvance: 0 diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Tutorials/Tutorial1/Walkthrough1-10-Done.asset.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Tutorials/Tutorial1/Walkthrough1-10-Done.asset.meta" new file mode 100644 index 00000000..7ecb60b4 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Tutorials/Tutorial1/Walkthrough1-10-Done.asset.meta" @@ -0,0 +1,9 @@ +fileFormatVersion: 2 +guid: 0f9959ef5c21e45e4ac3e429fab617df +timeCreated: 1491992214 +licenseType: Store +NativeFormatImporter: + mainObjectFileID: 11400000 + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Tutorials/Tutorial1/Walkthrough1.asset" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Tutorials/Tutorial1/Walkthrough1.asset" new file mode 100644 index 00000000..da618714 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Tutorials/Tutorial1/Walkthrough1.asset" @@ -0,0 +1,56 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!114 &11400000 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 8f107dc6d4c984c45bdafd3bb15f98f0, type: 3} + m_Name: Walkthrough1 + m_EditorClassIdentifier: + m_WindowTitle: Walkthrough + m_TutorialTitle: Play Testing + m_LessonId: 48142 + m_Version: 1.3 + m_Scene: {fileID: 102900000, guid: f8c7069e6d9b2124b861144ca83d31e8, type: 3} + m_DefaultSceneCameraSettings: + m_CameraMode: 0 + m_FocusMode: 0 + m_Orthographic: 0 + m_Size: 0 + m_Pivot: {x: 0, y: 0, z: 0} + m_Rotation: {x: 0, y: 0, z: 0, w: 0} + m_FrameObject: + m_SceneGuid: + m_GameObjectGuid: + m_SerializedComponentType: + m_TypeName: + m_ComponentIndex: 0 + m_AssetObject: {fileID: 0} + m_Prefab: {fileID: 0} + m_Enabled: 0 + m_ExitBehavior: 1 + m_SkipTutorialBehavior: 0 + m_AssetSelectedOnExit: {fileID: 11400000, guid: 08f5116c6f71aa548a00fbd1f56fa92e, + type: 2} + m_WelcomePage: {fileID: 0} + m_CompletedPage: {fileID: 0} + IsWelcomingPageShowing: 1 + IsCompletedPageShowing: 0 + m_Pages: + m_Items: + - {fileID: 11400000, guid: fc1ba142c7deb40408e4c114e5a0ff63, type: 2} + - {fileID: 11400000, guid: 612844087f48942d8b0855e60990f01a, type: 2} + - {fileID: 11400000, guid: 67df256d36f564827ab6cce4308e8cf8, type: 2} + - {fileID: 11400000, guid: 5ff93266ed71246baad6bdcff5c8310b, type: 2} + - {fileID: 11400000, guid: 026d54c9344341844a19edbe01afebbe, type: 2} + - {fileID: 11400000, guid: be5d8efcae5a6e942bed0ce1ce2e9eba, type: 2} + - {fileID: 11400000, guid: 1ddadc0b2227c4f95b63cc350b714bd5, type: 2} + - {fileID: 11400000, guid: 563a8aba6d9a0a0418aae455804e1e85, type: 2} + - {fileID: 11400000, guid: d18d9b2a07d623d42a4c1c8da3c46ee7, type: 2} + - {fileID: 11400000, guid: 0f9959ef5c21e45e4ac3e429fab617df, type: 2} + m_WindowLayout: {fileID: 102900000, guid: cde0ced735db64fadb69328562c039e2, type: 3} diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Tutorials/Tutorial1/Walkthrough1.asset.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Tutorials/Tutorial1/Walkthrough1.asset.meta" new file mode 100644 index 00000000..f5dea498 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Tutorials/Tutorial1/Walkthrough1.asset.meta" @@ -0,0 +1,9 @@ +fileFormatVersion: 2 +guid: 92d21b44a68004daebe1f6c4e03b487a +timeCreated: 1491992195 +licenseType: Store +NativeFormatImporter: + mainObjectFileID: 11400000 + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Tutorials/Tutorial2.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Tutorials/Tutorial2.meta" new file mode 100644 index 00000000..c6bace22 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Tutorials/Tutorial2.meta" @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 0a50c39f72a69405a8583ee74a19beb3 +folderAsset: yes +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Tutorials/Tutorial2/WT-Change-Color.mov" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Tutorials/Tutorial2/WT-Change-Color.mov" new file mode 100644 index 00000000..21c1a8f1 Binary files /dev/null and "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Tutorials/Tutorial2/WT-Change-Color.mov" differ diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Tutorials/Tutorial2/WT-Change-Color.mov.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Tutorials/Tutorial2/WT-Change-Color.mov.meta" new file mode 100644 index 00000000..d66a19bc --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Tutorials/Tutorial2/WT-Change-Color.mov.meta" @@ -0,0 +1,21 @@ +fileFormatVersion: 2 +guid: b6cee483e6a2d4b6c90e422699764588 +VideoClipImporter: + externalObjects: {} + serializedVersion: 2 + useLegacyImporter: 0 + quality: 0.5 + isColorLinear: 0 + frameRange: 0 + startFrame: -1 + endFrame: -1 + colorSpace: 0 + deinterlace: 0 + encodeAlpha: 0 + flipVertical: 0 + flipHorizontal: 0 + importAudio: 1 + targetSettings: {} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Tutorials/Tutorial2/WT-Select-Material.mov" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Tutorials/Tutorial2/WT-Select-Material.mov" new file mode 100644 index 00000000..eb55ebb3 Binary files /dev/null and "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Tutorials/Tutorial2/WT-Select-Material.mov" differ diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Tutorials/Tutorial2/WT-Select-Material.mov.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Tutorials/Tutorial2/WT-Select-Material.mov.meta" new file mode 100644 index 00000000..89ef96a0 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Tutorials/Tutorial2/WT-Select-Material.mov.meta" @@ -0,0 +1,21 @@ +fileFormatVersion: 2 +guid: aa27f6f5398a045c38dde51db2ce310b +VideoClipImporter: + externalObjects: {} + serializedVersion: 2 + useLegacyImporter: 0 + quality: 0.5 + isColorLinear: 0 + frameRange: 0 + startFrame: -1 + endFrame: -1 + colorSpace: 0 + deinterlace: 0 + encodeAlpha: 0 + flipVertical: 0 + flipHorizontal: 0 + importAudio: 1 + targetSettings: {} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Tutorials/Tutorial2/WT-Select-and-Frame.mov" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Tutorials/Tutorial2/WT-Select-and-Frame.mov" new file mode 100644 index 00000000..93ce5540 Binary files /dev/null and "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Tutorials/Tutorial2/WT-Select-and-Frame.mov" differ diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Tutorials/Tutorial2/WT-Select-and-Frame.mov.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Tutorials/Tutorial2/WT-Select-and-Frame.mov.meta" new file mode 100644 index 00000000..8a3c7bfa --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Tutorials/Tutorial2/WT-Select-and-Frame.mov.meta" @@ -0,0 +1,21 @@ +fileFormatVersion: 2 +guid: e292ffe4f11dd4130a4095e4e7879fe2 +VideoClipImporter: + externalObjects: {} + serializedVersion: 2 + useLegacyImporter: 0 + quality: 0.5 + isColorLinear: 0 + frameRange: 0 + startFrame: -1 + endFrame: -1 + colorSpace: 0 + deinterlace: 0 + encodeAlpha: 0 + flipVertical: 0 + flipHorizontal: 0 + importAudio: 1 + targetSettings: {} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Tutorials/Tutorial2/Walkthrough2-01-Introduction.asset" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Tutorials/Tutorial2/Walkthrough2-01-Introduction.asset" new file mode 100644 index 00000000..f52998f6 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Tutorials/Tutorial2/Walkthrough2-01-Introduction.asset" @@ -0,0 +1,71 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!114 &11400000 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: ff771ccdf4150419d9ff4d342b069aae, type: 3} + m_Name: Walkthrough2-01-Introduction + m_EditorClassIdentifier: + m_SectionTitle: + m_Paragraphs: + m_Items: + - m_Type: 6 + m_Summary: + m_Text: + m_TutorialButtonText: + m_Tutorial: {fileID: 0} + m_Icons: + m_Items: [] + m_Image: {fileID: 2800000, guid: 49f7c306ee926487bb4f10455ebea8c8, type: 3} + m_Video: {fileID: 0} + m_CriteriaCompletion: 0 + m_Criteria: + m_Items: [] + m_MaskingSettings: + m_MaskingEnabled: 1 + m_UnmaskedViews: [] + - m_Type: 0 + m_Summary: + m_Text: "Edit Colors\n\x03\x03\nTUTORIAL + \n\nLet's make the game more colourful by changing the + material of the Kart.\n\nIn Unity, when you want to change colors, or otherwise + alter appearance of an object, you need to modify its material. \n\nClick + Start to learn how.\x03\n" + m_TutorialButtonText: + m_Tutorial: {fileID: 0} + m_Icons: + m_Items: [] + m_Image: {fileID: 0} + m_Video: {fileID: 0} + m_CriteriaCompletion: 0 + m_Criteria: + m_Items: [] + m_MaskingSettings: + m_MaskingEnabled: 1 + m_UnmaskedViews: [] + m_CameraSettings: + m_CameraMode: 0 + m_FocusMode: 0 + m_Orthographic: 0 + m_Size: 0 + m_Pivot: {x: 0, y: 0, z: 0} + m_Rotation: {x: 0, y: 0, z: 0, w: 0} + m_FrameObject: + m_SceneGuid: + m_GameObjectGuid: + m_SerializedComponentType: + m_TypeName: + m_ComponentIndex: 0 + m_AssetObject: {fileID: 0} + m_Prefab: {fileID: 0} + m_Enabled: 0 + m_NextButton: Start + m_DoneButton: Done + m_CompletedSound: {fileID: 8300000, guid: 93fbb109633e844259ea828442bda0cb, type: 3} + m_autoAdvance: 0 diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Tutorials/Tutorial2/Walkthrough2-01-Introduction.asset.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Tutorials/Tutorial2/Walkthrough2-01-Introduction.asset.meta" new file mode 100644 index 00000000..6a276d76 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Tutorials/Tutorial2/Walkthrough2-01-Introduction.asset.meta" @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: d7197e78ba002ed479882ce5f34d5ee1 +NativeFormatImporter: + externalObjects: {} + mainObjectFileID: 11400000 + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Tutorials/Tutorial2/Walkthrough2-02-Select-and-Frame.asset" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Tutorials/Tutorial2/Walkthrough2-02-Select-and-Frame.asset" new file mode 100644 index 00000000..60c197a0 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Tutorials/Tutorial2/Walkthrough2-02-Select-and-Frame.asset" @@ -0,0 +1,189 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!114 &11400000 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: ff771ccdf4150419d9ff4d342b069aae, type: 3} + m_Name: Walkthrough2-02-Select-and-Frame + m_EditorClassIdentifier: + m_SectionTitle: + m_Paragraphs: + m_Items: + - m_Type: 7 + m_Summary: + m_Text: + m_TutorialButtonText: + m_Tutorial: {fileID: 0} + m_Icons: + m_Items: [] + m_Image: {fileID: 2800000, guid: 278639b7d527f4e29be21670bb37a1d4, type: 3} + m_Video: {fileID: 32900000, guid: e292ffe4f11dd4130a4095e4e7879fe2, type: 3} + m_CriteriaCompletion: 0 + m_Criteria: + m_Items: [] + m_MaskingSettings: + m_MaskingEnabled: 1 + m_UnmaskedViews: + - m_SelectorType: 1 + m_ViewType: + m_TypeName: + m_EditorWindowType: + m_TypeName: UnityEditor.SceneView, UnityEditor, Version=0.0.0.0, Culture=neutral, + PublicKeyToken=null + m_AlternateEditorWindowTypes: + m_Items: [] + m_MaskType: 0 + m_MaskSizeModifier: 0 + m_UnmaskedControls: [] + - m_Type: 0 + m_Summary: + m_Text: 'Select and Frame Object + + + Before you change the color of your Kart, you should frame it in the Scene + view.' + m_TutorialButtonText: + m_Tutorial: {fileID: 0} + m_Icons: + m_Items: [] + m_Image: {fileID: 0} + m_Video: {fileID: 0} + m_CriteriaCompletion: 0 + m_Criteria: + m_Items: [] + m_MaskingSettings: + m_MaskingEnabled: 0 + m_UnmaskedViews: [] + - m_Type: 1 + m_Summary: Select the Kart + m_Text: In the Hierarchy window, select the Kart GameObject. + m_TutorialButtonText: + m_Tutorial: {fileID: 0} + m_Icons: + m_Items: [] + m_Image: {fileID: 0} + m_Video: {fileID: 0} + m_CriteriaCompletion: 0 + m_Criteria: + m_Items: + - type: + m_TypeName: Unity.InteractiveTutorials.RequiredSelectionCriterion, Unity.InteractiveTutorials.Core, + Version=0.0.0.0, Culture=neutral, PublicKeyToken=null + criterion: {fileID: 114925962760236852} + m_MaskingSettings: + m_MaskingEnabled: 1 + m_UnmaskedViews: + - m_SelectorType: 1 + m_ViewType: + m_TypeName: + m_EditorWindowType: + m_TypeName: UnityEditor.SceneHierarchyWindow, UnityEditor, Version=0.0.0.0, + Culture=neutral, PublicKeyToken=null + m_AlternateEditorWindowTypes: + m_Items: [] + m_MaskType: 0 + m_MaskSizeModifier: 0 + m_UnmaskedControls: [] + - m_Type: 1 + m_Summary: Frame the Kart + m_Text: With your mouse cursor over the Scene view, press F on + your keyboard. This will bring the Kart into view and frame it. + m_TutorialButtonText: + m_Tutorial: {fileID: 0} + m_Icons: + m_Items: [] + m_Image: {fileID: 0} + m_Video: {fileID: 0} + m_CriteriaCompletion: 0 + m_Criteria: + m_Items: + - type: + m_TypeName: Unity.InteractiveTutorials.FrameSelectedCriterion, Unity.InteractiveTutorials.Core, + Version=0.0.0.0, Culture=neutral, PublicKeyToken=null + criterion: {fileID: 114026960503854776} + m_MaskingSettings: + m_MaskingEnabled: 1 + m_UnmaskedViews: + - m_SelectorType: 1 + m_ViewType: + m_TypeName: + m_EditorWindowType: + m_TypeName: UnityEditor.SceneView, UnityEditor, Version=0.0.0.0, Culture=neutral, + PublicKeyToken=null + m_AlternateEditorWindowTypes: + m_Items: [] + m_MaskType: 0 + m_MaskSizeModifier: 0 + m_UnmaskedControls: [] + m_CameraSettings: + m_CameraMode: 1 + m_FocusMode: 1 + m_Orthographic: 0 + m_Size: 0 + m_Pivot: {x: 0, y: 0, z: 0} + m_Rotation: {x: 0, y: 0, z: 0, w: 0} + m_FrameObject: + m_SceneGuid: 99c9720ab356a0642a771bea13969a05 + m_GameObjectGuid: 5f066cea7249a4f52bceda5dbcbf1247 + m_SerializedComponentType: + m_TypeName: + m_ComponentIndex: 0 + m_AssetObject: {fileID: 0} + m_Prefab: {fileID: 0} + m_Enabled: 0 + m_NextButton: Next + m_DoneButton: Done + m_CompletedSound: {fileID: 8300000, guid: 93fbb109633e844259ea828442bda0cb, type: 3} + m_autoAdvance: 0 +--- !u!114 &114026960503854776 +MonoBehaviour: + m_ObjectHideFlags: 1 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 065f6938014794cff8ac3d1382107ec8, type: 3} + m_Name: + m_EditorClassIdentifier: + m_ObjectReferences: + m_Items: + - m_SceneObjectReference: + m_SceneGuid: f8c7069e6d9b2124b861144ca83d31e8 + m_GameObjectGuid: b813da5b-b190-4543-a594-de3a2cdd433a + m_SerializedComponentType: + m_TypeName: + m_ComponentIndex: 0 + m_AssetObject: {fileID: 0} + m_Prefab: {fileID: 0} + m_FutureObjectReference: {fileID: 0} +--- !u!114 &114925962760236852 +MonoBehaviour: + m_ObjectHideFlags: 1 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 255ef86cb95f04796b8e3b3f5b23efe7, type: 3} + m_Name: + m_EditorClassIdentifier: + m_ObjectReferences: + m_Items: + - m_SceneObjectReference: + m_SceneGuid: f8c7069e6d9b2124b861144ca83d31e8 + m_GameObjectGuid: b813da5b-b190-4543-a594-de3a2cdd433a + m_SerializedComponentType: + m_TypeName: + m_ComponentIndex: 0 + m_AssetObject: {fileID: 0} + m_Prefab: {fileID: 0} + m_FutureObjectReference: {fileID: 0} diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Tutorials/Tutorial2/Walkthrough2-02-Select-and-Frame.asset.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Tutorials/Tutorial2/Walkthrough2-02-Select-and-Frame.asset.meta" new file mode 100644 index 00000000..f67b7fd7 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Tutorials/Tutorial2/Walkthrough2-02-Select-and-Frame.asset.meta" @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: b09e6b5adfe5a4ff29595fc4e8406708 +NativeFormatImporter: + externalObjects: {} + mainObjectFileID: 11400000 + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Tutorials/Tutorial2/Walkthrough2-03-Select-Material.asset" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Tutorials/Tutorial2/Walkthrough2-03-Select-Material.asset" new file mode 100644 index 00000000..4d91f360 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Tutorials/Tutorial2/Walkthrough2-03-Select-Material.asset" @@ -0,0 +1,135 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!114 &11400000 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: ff771ccdf4150419d9ff4d342b069aae, type: 3} + m_Name: Walkthrough2-03-Select-Material + m_EditorClassIdentifier: + m_SectionTitle: + m_Paragraphs: + m_Items: + - m_Type: 7 + m_Summary: + m_Text: + m_TutorialButtonText: + m_Tutorial: {fileID: 0} + m_Icons: + m_Items: [] + m_Image: {fileID: 2800000, guid: c6178a00c884643b296377c8f7ea9668, type: 3} + m_Video: {fileID: 32900000, guid: aa27f6f5398a045c38dde51db2ce310b, type: 3} + m_CriteriaCompletion: 0 + m_Criteria: + m_Items: [] + m_MaskingSettings: + m_MaskingEnabled: 1 + m_UnmaskedViews: + - m_SelectorType: 1 + m_ViewType: + m_TypeName: + m_EditorWindowType: + m_TypeName: UnityEditor.ProjectBrowser, UnityEditor, Version=0.0.0.0, + Culture=neutral, PublicKeyToken=null + m_AlternateEditorWindowTypes: + m_Items: [] + m_MaskType: 0 + m_MaskSizeModifier: 0 + m_UnmaskedControls: [] + - m_Type: 0 + m_Summary: + m_Text: 'Select Material + + + The Project window is where you find all of the assets that are available + to use in your project, which includes materials.' + m_TutorialButtonText: + m_Tutorial: {fileID: 0} + m_Icons: + m_Items: [] + m_Image: {fileID: 0} + m_Video: {fileID: 0} + m_CriteriaCompletion: 0 + m_Criteria: + m_Items: [] + m_MaskingSettings: + m_MaskingEnabled: 0 + m_UnmaskedViews: [] + - m_Type: 1 + m_Summary: Select KartRacerMaterial + m_Text: Select the KartRacerMaterial Material in the Project window. + m_TutorialButtonText: + m_Tutorial: {fileID: 0} + m_Icons: + m_Items: [] + m_Image: {fileID: 0} + m_Video: {fileID: 0} + m_CriteriaCompletion: 0 + m_Criteria: + m_Items: + - type: + m_TypeName: Unity.InteractiveTutorials.RequiredSelectionCriterion, Unity.InteractiveTutorials.Core, + Version=0.0.0.0, Culture=neutral, PublicKeyToken=null + criterion: {fileID: 114630345358920054} + m_MaskingSettings: + m_MaskingEnabled: 1 + m_UnmaskedViews: + - m_SelectorType: 1 + m_ViewType: + m_TypeName: + m_EditorWindowType: + m_TypeName: UnityEditor.ProjectBrowser, UnityEditor, Version=0.0.0.0, + Culture=neutral, PublicKeyToken=null + m_AlternateEditorWindowTypes: + m_Items: [] + m_MaskType: 0 + m_MaskSizeModifier: 0 + m_UnmaskedControls: [] + m_CameraSettings: + m_CameraMode: 0 + m_FocusMode: 0 + m_Orthographic: 0 + m_Size: 0 + m_Pivot: {x: 0, y: 0, z: 0} + m_Rotation: {x: 0, y: 0, z: 0, w: 0} + m_FrameObject: + m_SceneGuid: + m_GameObjectGuid: + m_SerializedComponentType: + m_TypeName: + m_ComponentIndex: 0 + m_AssetObject: {fileID: 0} + m_Prefab: {fileID: 0} + m_Enabled: 0 + m_NextButton: Next + m_DoneButton: Done + m_CompletedSound: {fileID: 8300000, guid: 93fbb109633e844259ea828442bda0cb, type: 3} + m_autoAdvance: 1 +--- !u!114 &114630345358920054 +MonoBehaviour: + m_ObjectHideFlags: 1 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 255ef86cb95f04796b8e3b3f5b23efe7, type: 3} + m_Name: + m_EditorClassIdentifier: + m_ObjectReferences: + m_Items: + - m_SceneObjectReference: + m_SceneGuid: + m_GameObjectGuid: + m_SerializedComponentType: + m_TypeName: + m_ComponentIndex: 0 + m_AssetObject: {fileID: 2100000, guid: 5304db1f3e113764fae919908740f4ba, type: 2} + m_Prefab: {fileID: 0} + m_FutureObjectReference: {fileID: 0} diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Tutorials/Tutorial2/Walkthrough2-03-Select-Material.asset.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Tutorials/Tutorial2/Walkthrough2-03-Select-Material.asset.meta" new file mode 100644 index 00000000..c1c0c50b --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Tutorials/Tutorial2/Walkthrough2-03-Select-Material.asset.meta" @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: c4b2d55732e7d4c11b1ec9c752f290bd +NativeFormatImporter: + externalObjects: {} + mainObjectFileID: 11400000 + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Tutorials/Tutorial2/Walkthrough2-04-Change-Albedo.asset" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Tutorials/Tutorial2/Walkthrough2-04-Change-Albedo.asset" new file mode 100644 index 00000000..d85bf423 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Tutorials/Tutorial2/Walkthrough2-04-Change-Albedo.asset" @@ -0,0 +1,178 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!114 &11400000 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: ff771ccdf4150419d9ff4d342b069aae, type: 3} + m_Name: Walkthrough2-04-Change-Albedo + m_EditorClassIdentifier: + m_SectionTitle: + m_Paragraphs: + m_Items: + - m_Type: 7 + m_Summary: + m_Text: + m_TutorialButtonText: + m_Tutorial: {fileID: 0} + m_Icons: + m_Items: [] + m_Image: {fileID: 2800000, guid: c7fcff347f1374508a72f3f15ca8affa, type: 3} + m_Video: {fileID: 32900000, guid: b6cee483e6a2d4b6c90e422699764588, type: 3} + m_CriteriaCompletion: 0 + m_Criteria: + m_Items: [] + m_MaskingSettings: + m_MaskingEnabled: 1 + m_UnmaskedViews: + - m_SelectorType: 1 + m_ViewType: + m_TypeName: + m_EditorWindowType: + m_TypeName: UnityEditor.InspectorWindow, UnityEditor, Version=0.0.0.0, + Culture=neutral, PublicKeyToken=null + m_AlternateEditorWindowTypes: + m_Items: [] + m_MaskType: 0 + m_MaskSizeModifier: 0 + m_UnmaskedControls: [] + - m_SelectorType: 1 + m_ViewType: + m_TypeName: + m_EditorWindowType: + m_TypeName: UnityEditor.ColorPicker, UnityEditor, Version=0.0.0.0, Culture=neutral, + PublicKeyToken=null + m_AlternateEditorWindowTypes: + m_Items: [] + m_MaskType: 0 + m_MaskSizeModifier: 0 + m_UnmaskedControls: [] + - m_Type: 0 + m_Summary: + m_Text: "Change Color of Material\n\nIn the Inspector + Window, you will see a color box (to the right of the Albedo tag). \n\x03\x03\nTake + a look in your Scene View after changing the color. Your Kart color has changed!" + m_TutorialButtonText: + m_Tutorial: {fileID: 0} + m_Icons: + m_Items: [] + m_Image: {fileID: 0} + m_Video: {fileID: 0} + m_CriteriaCompletion: 0 + m_Criteria: + m_Items: [] + m_MaskingSettings: + m_MaskingEnabled: 1 + m_UnmaskedViews: + - m_SelectorType: 1 + m_ViewType: + m_TypeName: + m_EditorWindowType: + m_TypeName: UnityEditor.InspectorWindow, UnityEditor, Version=0.0.0.0, + Culture=neutral, PublicKeyToken=null + m_AlternateEditorWindowTypes: + m_Items: [] + m_MaskType: 0 + m_MaskSizeModifier: 0 + m_UnmaskedControls: [] + - m_SelectorType: 1 + m_ViewType: + m_TypeName: + m_EditorWindowType: + m_TypeName: UnityEditor.ColorPicker, UnityEditor, Version=0.0.0.0, Culture=neutral, + PublicKeyToken=null + m_AlternateEditorWindowTypes: + m_Items: [] + m_MaskType: 0 + m_MaskSizeModifier: 0 + m_UnmaskedControls: [] + - m_Type: 1 + m_Summary: Change Albedo color + m_Text: 'Click in the box, and the Color Picker Window will appear. Select + a color by clicking on it. When done, close the window. ' + m_TutorialButtonText: + m_Tutorial: {fileID: 0} + m_Icons: + m_Items: [] + m_Image: {fileID: 0} + m_Video: {fileID: 0} + m_CriteriaCompletion: 0 + m_Criteria: + m_Items: + - type: + m_TypeName: Unity.InteractiveTutorials.MaterialPropertyModifiedCriterion, + Unity.InteractiveTutorials.Core, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null + criterion: {fileID: 114216683660447180} + m_MaskingSettings: + m_MaskingEnabled: 1 + m_UnmaskedViews: + - m_SelectorType: 1 + m_ViewType: + m_TypeName: + m_EditorWindowType: + m_TypeName: UnityEditor.InspectorWindow, UnityEditor, Version=0.0.0.0, + Culture=neutral, PublicKeyToken=null + m_AlternateEditorWindowTypes: + m_Items: [] + m_MaskType: 0 + m_MaskSizeModifier: 0 + m_UnmaskedControls: [] + - m_SelectorType: 1 + m_ViewType: + m_TypeName: + m_EditorWindowType: + m_TypeName: UnityEditor.ColorPicker, UnityEditor, Version=0.0.0.0, Culture=neutral, + PublicKeyToken=null + m_AlternateEditorWindowTypes: + m_Items: [] + m_MaskType: 0 + m_MaskSizeModifier: 0 + m_UnmaskedControls: [] + m_CameraSettings: + m_CameraMode: 0 + m_FocusMode: 0 + m_Orthographic: 0 + m_Size: 0 + m_Pivot: {x: 0, y: 0, z: 0} + m_Rotation: {x: 0, y: 0, z: 0, w: 0} + m_FrameObject: + m_SceneGuid: + m_GameObjectGuid: + m_SerializedComponentType: + m_TypeName: + m_ComponentIndex: 0 + m_AssetObject: {fileID: 0} + m_Prefab: {fileID: 0} + m_Enabled: 0 + m_NextButton: Next + m_DoneButton: Done + m_CompletedSound: {fileID: 8300000, guid: 93fbb109633e844259ea828442bda0cb, type: 3} + m_autoAdvance: 0 +--- !u!114 &114216683660447180 +MonoBehaviour: + m_ObjectHideFlags: 1 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: f1cafc69ed04ce4439d7ec629db36ca4, type: 3} + m_Name: + m_EditorClassIdentifier: + m_Target: + m_SceneObjectReference: + m_SceneGuid: + m_GameObjectGuid: + m_SerializedComponentType: + m_TypeName: + m_ComponentIndex: 0 + m_AssetObject: {fileID: 2100000, guid: 5304db1f3e113764fae919908740f4ba, type: 2} + m_Prefab: {fileID: 0} + m_FutureObjectReference: {fileID: 0} + m_MaterialPropertyPath: _Color diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Tutorials/Tutorial2/Walkthrough2-04-Change-Albedo.asset.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Tutorials/Tutorial2/Walkthrough2-04-Change-Albedo.asset.meta" new file mode 100644 index 00000000..a86ec688 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Tutorials/Tutorial2/Walkthrough2-04-Change-Albedo.asset.meta" @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: de6cb0d6d7b084050a01059553ea16cd +NativeFormatImporter: + externalObjects: {} + mainObjectFileID: 11400000 + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Tutorials/Tutorial2/Walkthrough2-05-Other-Materials.asset" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Tutorials/Tutorial2/Walkthrough2-05-Other-Materials.asset" new file mode 100644 index 00000000..18d08b0b --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Tutorials/Tutorial2/Walkthrough2-05-Other-Materials.asset" @@ -0,0 +1,64 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!114 &11400000 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: ff771ccdf4150419d9ff4d342b069aae, type: 3} + m_Name: Walkthrough2-05-Other-Materials + m_EditorClassIdentifier: + m_SectionTitle: + m_Paragraphs: + m_Items: + - m_Type: 0 + m_Summary: + m_Text: Other materials within this project can be found inside of the Materials + folder inside the KartTemplate folder. + m_TutorialButtonText: + m_Tutorial: {fileID: 0} + m_Icons: + m_Items: [] + m_Image: {fileID: 0} + m_Video: {fileID: 0} + m_CriteriaCompletion: 0 + m_Criteria: + m_Items: [] + m_MaskingSettings: + m_Enabled: 1 + m_UnmaskedViews: + - m_SelectorType: 1 + m_ViewType: + m_TypeName: + m_EditorWindowType: + m_TypeName: UnityEditor.ProjectBrowser, UnityEditor, Version=0.0.0.0, + Culture=neutral, PublicKeyToken=null + m_AlternateEditorWindowTypes: + m_Items: [] + m_MaskType: 1 + m_MaskSizeModifier: 0 + m_UnmaskedControls: [] + m_CameraSettings: + m_CameraMode: 0 + m_FocusMode: 0 + m_Orthographic: 0 + m_Size: 0 + m_Pivot: {x: 0, y: 0, z: 0} + m_Rotation: {x: 0, y: 0, z: 0, w: 0} + m_FrameObject: + m_SceneGuid: + m_GameObjectGuid: + m_SerializedComponentType: + m_TypeName: + m_ComponentIndex: 0 + m_AssetObject: {fileID: 0} + m_Prefab: {fileID: 0} + m_Enabled: 0 + m_NextButton: Next + m_DoneButton: Done + m_CompletedSound: {fileID: 8300000, guid: 93fbb109633e844259ea828442bda0cb, type: 3} + m_autoAdvance: 0 diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Tutorials/Tutorial2/Walkthrough2-05-Other-Materials.asset.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Tutorials/Tutorial2/Walkthrough2-05-Other-Materials.asset.meta" new file mode 100644 index 00000000..32927669 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Tutorials/Tutorial2/Walkthrough2-05-Other-Materials.asset.meta" @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: d201e3061e3cfdb4e8f4d8cb0909943d +NativeFormatImporter: + externalObjects: {} + mainObjectFileID: 11400000 + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Tutorials/Tutorial2/Walkthrough2-06-Play-Game.asset" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Tutorials/Tutorial2/Walkthrough2-06-Play-Game.asset" new file mode 100644 index 00000000..0dc61e73 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Tutorials/Tutorial2/Walkthrough2-06-Play-Game.asset" @@ -0,0 +1,168 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!114 &11400000 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: ff771ccdf4150419d9ff4d342b069aae, type: 3} + m_Name: Walkthrough2-06-Play-Game + m_EditorClassIdentifier: + m_SectionTitle: + m_Paragraphs: + m_Items: + - m_Type: 7 + m_Summary: + m_Text: + m_TutorialButtonText: + m_Tutorial: {fileID: 0} + m_Icons: + m_Items: [] + m_Image: {fileID: 2800000, guid: 632dfd8aace744c6a9587cb2d4748871, type: 3} + m_Video: {fileID: 32900000, guid: d69745293769a49ffb6955bb4862345c, type: 3} + m_CriteriaCompletion: 0 + m_Criteria: + m_Items: [] + m_MaskingSettings: + m_MaskingEnabled: 1 + m_UnmaskedViews: + - m_SelectorType: 1 + m_ViewType: + m_TypeName: + m_EditorWindowType: + m_TypeName: UnityEditor.GameView, UnityEditor, Version=0.0.0.0, Culture=neutral, + PublicKeyToken=null + m_AlternateEditorWindowTypes: + m_Items: [] + m_MaskType: 0 + m_MaskSizeModifier: 0 + m_UnmaskedControls: [] + - m_SelectorType: 0 + m_ViewType: + m_TypeName: UnityEditor.Toolbar, UnityEditor, Version=0.0.0.0, Culture=neutral, + PublicKeyToken=null + m_EditorWindowType: + m_TypeName: UnityEditor.GameView, UnityEditor, Version=0.0.0.0, Culture=neutral, + PublicKeyToken=null + m_AlternateEditorWindowTypes: + m_Items: [] + m_MaskType: 0 + m_MaskSizeModifier: 0 + m_UnmaskedControls: + - m_SelectorMode: 1 + m_GUIContent: + m_Text: + m_Image: {fileID: 0} + m_Tooltip: + m_ControlName: ToolbarPlayModePlayButton + m_PropertyPath: + m_TargetType: + m_TypeName: + m_GUIStyleName: + - m_Type: 0 + m_Summary: + m_Text: 'Playtest new Color + + + With your newly colored Kart, why not try playing the game? ' + m_TutorialButtonText: + m_Tutorial: {fileID: 0} + m_Icons: + m_Items: [] + m_Image: {fileID: 0} + m_Video: {fileID: 0} + m_CriteriaCompletion: 0 + m_Criteria: + m_Items: [] + m_MaskingSettings: + m_MaskingEnabled: 0 + m_UnmaskedViews: [] + - m_Type: 1 + m_Summary: Enter Play Mode + m_Text: 'Click the Play button at the top of the screen to enter Play Mode. ' + m_TutorialButtonText: + m_Tutorial: {fileID: 0} + m_Icons: + m_Items: [] + m_Image: {fileID: 0} + m_Video: {fileID: 0} + m_CriteriaCompletion: 0 + m_Criteria: + m_Items: + - type: + m_TypeName: Unity.InteractiveTutorials.PlayModeStateCriterion, Unity.InteractiveTutorials.Core, + Version=0.0.0.0, Culture=neutral, PublicKeyToken=null + criterion: {fileID: 114355154988462172} + m_MaskingSettings: + m_MaskingEnabled: 1 + m_UnmaskedViews: + - m_SelectorType: 1 + m_ViewType: + m_TypeName: + m_EditorWindowType: + m_TypeName: UnityEditor.GameView, UnityEditor, Version=0.0.0.0, Culture=neutral, + PublicKeyToken=null + m_AlternateEditorWindowTypes: + m_Items: [] + m_MaskType: 0 + m_MaskSizeModifier: 0 + m_UnmaskedControls: [] + - m_SelectorType: 0 + m_ViewType: + m_TypeName: UnityEditor.Toolbar, UnityEditor, Version=0.0.0.0, Culture=neutral, + PublicKeyToken=null + m_EditorWindowType: + m_TypeName: UnityEditor.GameView, UnityEditor, Version=0.0.0.0, Culture=neutral, + PublicKeyToken=null + m_AlternateEditorWindowTypes: + m_Items: [] + m_MaskType: 0 + m_MaskSizeModifier: 0 + m_UnmaskedControls: + - m_SelectorMode: 1 + m_GUIContent: + m_Text: + m_Image: {fileID: 0} + m_Tooltip: + m_ControlName: ToolbarPlayModePlayButton + m_PropertyPath: + m_TargetType: + m_TypeName: + m_GUIStyleName: + m_CameraSettings: + m_CameraMode: 0 + m_FocusMode: 0 + m_Orthographic: 0 + m_Size: 0 + m_Pivot: {x: 0, y: 0, z: 0} + m_Rotation: {x: 0, y: 0, z: 0, w: 0} + m_FrameObject: + m_SceneGuid: + m_GameObjectGuid: + m_SerializedComponentType: + m_TypeName: + m_ComponentIndex: 0 + m_AssetObject: {fileID: 0} + m_Prefab: {fileID: 0} + m_Enabled: 0 + m_NextButton: Next + m_DoneButton: Done + m_CompletedSound: {fileID: 8300000, guid: 93fbb109633e844259ea828442bda0cb, type: 3} + m_autoAdvance: 1 +--- !u!114 &114355154988462172 +MonoBehaviour: + m_ObjectHideFlags: 1 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 641211c85919e4aceb79a0d364004d75, type: 3} + m_Name: + m_EditorClassIdentifier: + m_RequiredPlayModeState: 0 diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Tutorials/Tutorial2/Walkthrough2-06-Play-Game.asset.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Tutorials/Tutorial2/Walkthrough2-06-Play-Game.asset.meta" new file mode 100644 index 00000000..a313489b --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Tutorials/Tutorial2/Walkthrough2-06-Play-Game.asset.meta" @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 9d468684850864dd69745d16bb812c63 +NativeFormatImporter: + externalObjects: {} + mainObjectFileID: 11400000 + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Tutorials/Tutorial2/Walkthrough2-07-Exit-Play.asset" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Tutorials/Tutorial2/Walkthrough2-07-Exit-Play.asset" new file mode 100644 index 00000000..3639c339 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Tutorials/Tutorial2/Walkthrough2-07-Exit-Play.asset" @@ -0,0 +1,199 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!114 &11400000 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: ff771ccdf4150419d9ff4d342b069aae, type: 3} + m_Name: Walkthrough2-07-Exit-Play + m_EditorClassIdentifier: + m_SectionTitle: + m_Paragraphs: + m_Items: + - m_Type: 7 + m_Summary: + m_Text: + m_TutorialButtonText: + m_Tutorial: {fileID: 0} + m_Icons: + m_Items: [] + m_Image: {fileID: 2800000, guid: 632dfd8aace744c6a9587cb2d4748871, type: 3} + m_Video: {fileID: 32900000, guid: d69745293769a49ffb6955bb4862345c, type: 3} + m_CriteriaCompletion: 0 + m_Criteria: + m_Items: [] + m_MaskingSettings: + m_MaskingEnabled: 1 + m_UnmaskedViews: + - m_SelectorType: 1 + m_ViewType: + m_TypeName: + m_EditorWindowType: + m_TypeName: UnityEditor.GameView, UnityEditor, Version=0.0.0.0, Culture=neutral, + PublicKeyToken=null + m_AlternateEditorWindowTypes: + m_Items: [] + m_MaskType: 0 + m_MaskSizeModifier: 0 + m_UnmaskedControls: [] + - m_SelectorType: 0 + m_ViewType: + m_TypeName: UnityEditor.Toolbar, UnityEditor, Version=0.0.0.0, Culture=neutral, + PublicKeyToken=null + m_EditorWindowType: + m_TypeName: UnityEditor.GameView, UnityEditor, Version=0.0.0.0, Culture=neutral, + PublicKeyToken=null + m_AlternateEditorWindowTypes: + m_Items: [] + m_MaskType: 0 + m_MaskSizeModifier: 0 + m_UnmaskedControls: + - m_SelectorMode: 1 + m_GUIContent: + m_Text: + m_Image: {fileID: 0} + m_Tooltip: + m_ControlName: ToolbarPlayModePlayButton + m_PropertyPath: + m_TargetType: + m_TypeName: + m_GUIStyleName: + - m_Type: 0 + m_Summary: + m_Text: "Exit Playtest\x03\x03\n\nDon't worry if your + color doesn't look right, you can continue changing colors later." + m_TutorialButtonText: + m_Tutorial: {fileID: 0} + m_Icons: + m_Items: [] + m_Image: {fileID: 0} + m_Video: {fileID: 0} + m_CriteriaCompletion: 0 + m_Criteria: + m_Items: [] + m_MaskingSettings: + m_MaskingEnabled: 1 + m_UnmaskedViews: + - m_SelectorType: 1 + m_ViewType: + m_TypeName: + m_EditorWindowType: + m_TypeName: UnityEditor.GameView, UnityEditor, Version=0.0.0.0, Culture=neutral, + PublicKeyToken=null + m_AlternateEditorWindowTypes: + m_Items: [] + m_MaskType: 0 + m_MaskSizeModifier: 0 + m_UnmaskedControls: [] + - m_SelectorType: 0 + m_ViewType: + m_TypeName: UnityEditor.Toolbar, UnityEditor, Version=0.0.0.0, Culture=neutral, + PublicKeyToken=null + m_EditorWindowType: + m_TypeName: UnityEditor.GameView, UnityEditor, Version=0.0.0.0, Culture=neutral, + PublicKeyToken=null + m_AlternateEditorWindowTypes: + m_Items: [] + m_MaskType: 0 + m_MaskSizeModifier: 0 + m_UnmaskedControls: + - m_SelectorMode: 1 + m_GUIContent: + m_Text: + m_Image: {fileID: 0} + m_Tooltip: + m_ControlName: ToolbarPlayModePlayButton + m_PropertyPath: + m_TargetType: + m_TypeName: + m_GUIStyleName: + - m_Type: 1 + m_Summary: Exit Play Mode + m_Text: Click the Play button to exit Play mode when you're done. + m_TutorialButtonText: + m_Tutorial: {fileID: 0} + m_Icons: + m_Items: [] + m_Image: {fileID: 0} + m_Video: {fileID: 0} + m_CriteriaCompletion: 0 + m_Criteria: + m_Items: + - type: + m_TypeName: Unity.InteractiveTutorials.PlayModeStateCriterion, Unity.InteractiveTutorials.Core, + Version=0.0.0.0, Culture=neutral, PublicKeyToken=null + criterion: {fileID: 114668853176159270} + m_MaskingSettings: + m_MaskingEnabled: 1 + m_UnmaskedViews: + - m_SelectorType: 1 + m_ViewType: + m_TypeName: + m_EditorWindowType: + m_TypeName: UnityEditor.GameView, UnityEditor, Version=0.0.0.0, Culture=neutral, + PublicKeyToken=null + m_AlternateEditorWindowTypes: + m_Items: [] + m_MaskType: 0 + m_MaskSizeModifier: 0 + m_UnmaskedControls: [] + - m_SelectorType: 0 + m_ViewType: + m_TypeName: UnityEditor.Toolbar, UnityEditor, Version=0.0.0.0, Culture=neutral, + PublicKeyToken=null + m_EditorWindowType: + m_TypeName: UnityEditor.GameView, UnityEditor, Version=0.0.0.0, Culture=neutral, + PublicKeyToken=null + m_AlternateEditorWindowTypes: + m_Items: [] + m_MaskType: 0 + m_MaskSizeModifier: 0 + m_UnmaskedControls: + - m_SelectorMode: 1 + m_GUIContent: + m_Text: + m_Image: {fileID: 0} + m_Tooltip: + m_ControlName: ToolbarPlayModePlayButton + m_PropertyPath: + m_TargetType: + m_TypeName: + m_GUIStyleName: + m_CameraSettings: + m_CameraMode: 0 + m_FocusMode: 0 + m_Orthographic: 0 + m_Size: 0 + m_Pivot: {x: 0, y: 0, z: 0} + m_Rotation: {x: 0, y: 0, z: 0, w: 0} + m_FrameObject: + m_SceneGuid: + m_GameObjectGuid: + m_SerializedComponentType: + m_TypeName: + m_ComponentIndex: 0 + m_AssetObject: {fileID: 0} + m_Prefab: {fileID: 0} + m_Enabled: 0 + m_NextButton: Next + m_DoneButton: Done + m_CompletedSound: {fileID: 8300000, guid: 93fbb109633e844259ea828442bda0cb, type: 3} + m_autoAdvance: 1 +--- !u!114 &114668853176159270 +MonoBehaviour: + m_ObjectHideFlags: 1 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 641211c85919e4aceb79a0d364004d75, type: 3} + m_Name: + m_EditorClassIdentifier: + m_RequiredPlayModeState: 1 diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Tutorials/Tutorial2/Walkthrough2-07-Exit-Play.asset.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Tutorials/Tutorial2/Walkthrough2-07-Exit-Play.asset.meta" new file mode 100644 index 00000000..20c23ddf --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Tutorials/Tutorial2/Walkthrough2-07-Exit-Play.asset.meta" @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 25b32eae891f6b34dae30855cf0cfe77 +NativeFormatImporter: + externalObjects: {} + mainObjectFileID: 11400000 + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Tutorials/Tutorial2/Walkthrough2-08-Done.asset" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Tutorials/Tutorial2/Walkthrough2-08-Done.asset" new file mode 100644 index 00000000..2d42964f --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Tutorials/Tutorial2/Walkthrough2-08-Done.asset" @@ -0,0 +1,84 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!114 &11400000 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: ff771ccdf4150419d9ff4d342b069aae, type: 3} + m_Name: Walkthrough2-08-Done + m_EditorClassIdentifier: + m_SectionTitle: + m_Paragraphs: + m_Items: + - m_Type: 6 + m_Summary: + m_Text: + m_TutorialButtonText: 'Tutorial 3: Add Prefab' + m_Tutorial: {fileID: 11400000, guid: 351b553575cb34b12945f5996095329d, type: 2} + m_Icons: + m_Items: [] + m_Image: {fileID: 2800000, guid: cf2b88c8b41ea4e42ba6e17726c32b87, type: 3} + m_Video: {fileID: 0} + m_CriteriaCompletion: 0 + m_Criteria: + m_Items: [] + m_MaskingSettings: + m_MaskingEnabled: 1 + m_UnmaskedViews: [] + - m_Type: 0 + m_Summary: + m_Text: "Tutorial Completed\x03\x03\n\nGreat! Now you've + learned how to change colors of objects.\n\nWant to add a building to your + game? Learn how in the next tutorial." + m_TutorialButtonText: + m_Tutorial: {fileID: 0} + m_Icons: + m_Items: [] + m_Image: {fileID: 0} + m_Video: {fileID: 0} + m_CriteriaCompletion: 0 + m_Criteria: + m_Items: [] + m_MaskingSettings: + m_MaskingEnabled: 1 + m_UnmaskedViews: [] + - m_Type: 2 + m_Summary: + m_Text: + m_TutorialButtonText: 'Tutorial: Add Prefab' + m_Tutorial: {fileID: 11400000, guid: 351b553575cb34b12945f5996095329d, type: 2} + m_Icons: + m_Items: [] + m_Image: {fileID: 0} + m_Video: {fileID: 0} + m_CriteriaCompletion: 0 + m_Criteria: + m_Items: [] + m_MaskingSettings: + m_MaskingEnabled: 1 + m_UnmaskedViews: [] + m_CameraSettings: + m_CameraMode: 0 + m_FocusMode: 0 + m_Orthographic: 0 + m_Size: 0 + m_Pivot: {x: 0, y: 0, z: 0} + m_Rotation: {x: 0, y: 0, z: 0, w: 0} + m_FrameObject: + m_SceneGuid: + m_GameObjectGuid: + m_SerializedComponentType: + m_TypeName: + m_ComponentIndex: 0 + m_AssetObject: {fileID: 0} + m_Prefab: {fileID: 0} + m_Enabled: 0 + m_NextButton: Next + m_DoneButton: Done + m_CompletedSound: {fileID: 8300000, guid: 93fbb109633e844259ea828442bda0cb, type: 3} + m_autoAdvance: 0 diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Tutorials/Tutorial2/Walkthrough2-08-Done.asset.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Tutorials/Tutorial2/Walkthrough2-08-Done.asset.meta" new file mode 100644 index 00000000..804b8435 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Tutorials/Tutorial2/Walkthrough2-08-Done.asset.meta" @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: e8cfa82377f45440181504b0de623967 +NativeFormatImporter: + externalObjects: {} + mainObjectFileID: 11400000 + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Tutorials/Tutorial2/Walkthrough2.asset" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Tutorials/Tutorial2/Walkthrough2.asset" new file mode 100644 index 00000000..d739767d --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Tutorials/Tutorial2/Walkthrough2.asset" @@ -0,0 +1,52 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!114 &11400000 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 8f107dc6d4c984c45bdafd3bb15f98f0, type: 3} + m_Name: Walkthrough2 + m_EditorClassIdentifier: + m_TutorialTitle: Changing a Color + m_LessonId: 48143 + m_Version: 0 + m_Scene: {fileID: 102900000, guid: f8c7069e6d9b2124b861144ca83d31e8, type: 3} + m_DefaultSceneCameraSettings: + m_CameraMode: 0 + m_FocusMode: 0 + m_Orthographic: 0 + m_Size: 0 + m_Pivot: {x: 0, y: 0, z: 0} + m_Rotation: {x: 0, y: 0, z: 0, w: 0} + m_FrameObject: + m_SceneGuid: + m_GameObjectGuid: + m_SerializedComponentType: + m_TypeName: + m_ComponentIndex: 0 + m_AssetObject: {fileID: 0} + m_Prefab: {fileID: 0} + m_Enabled: 0 + m_ExitBehavior: 1 + m_SkipTutorialBehavior: 0 + m_AssetSelectedOnExit: {fileID: 11400000, guid: 08f5116c6f71aa548a00fbd1f56fa92e, + type: 2} + m_WelcomePage: {fileID: 0} + m_CompletedPage: {fileID: 0} + IsWelcomingPageShowing: 1 + IsCompletedPageShowing: 0 + m_Pages: + m_Items: + - {fileID: 11400000, guid: d7197e78ba002ed479882ce5f34d5ee1, type: 2} + - {fileID: 11400000, guid: b09e6b5adfe5a4ff29595fc4e8406708, type: 2} + - {fileID: 11400000, guid: c4b2d55732e7d4c11b1ec9c752f290bd, type: 2} + - {fileID: 11400000, guid: de6cb0d6d7b084050a01059553ea16cd, type: 2} + - {fileID: 11400000, guid: 9d468684850864dd69745d16bb812c63, type: 2} + - {fileID: 11400000, guid: 25b32eae891f6b34dae30855cf0cfe77, type: 2} + - {fileID: 11400000, guid: e8cfa82377f45440181504b0de623967, type: 2} + m_WindowLayout: {fileID: 102900000, guid: 2e64def163f6c4611a1ee698c44d1ae2, type: 3} diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Tutorials/Tutorial2/Walkthrough2.asset.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Tutorials/Tutorial2/Walkthrough2.asset.meta" new file mode 100644 index 00000000..76ea399c --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Tutorials/Tutorial2/Walkthrough2.asset.meta" @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 83255933b1f9a13428ca582620d979c8 +NativeFormatImporter: + externalObjects: {} + mainObjectFileID: 11400000 + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Tutorials/Tutorial3.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Tutorials/Tutorial3.meta" new file mode 100644 index 00000000..91b244b3 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Tutorials/Tutorial3.meta" @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 98246330be0f04cac9711f312b6eaa08 +folderAsset: yes +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Tutorials/Tutorial3/WT-Hierarchy-and-Scene.png" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Tutorials/Tutorial3/WT-Hierarchy-and-Scene.png" new file mode 100644 index 00000000..b844e723 Binary files /dev/null and "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Tutorials/Tutorial3/WT-Hierarchy-and-Scene.png" differ diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Tutorials/Tutorial3/WT-Hierarchy-and-Scene.png.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Tutorials/Tutorial3/WT-Hierarchy-and-Scene.png.meta" new file mode 100644 index 00000000..26e38f2c --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Tutorials/Tutorial3/WT-Hierarchy-and-Scene.png.meta" @@ -0,0 +1,110 @@ +fileFormatVersion: 2 +guid: 711e1c4aefe4841b29c9a91f02d900b3 +TextureImporter: + fileIDToRecycleName: {} + externalObjects: {} + serializedVersion: 9 + mipmaps: + mipMapMode: 0 + enableMipMap: 0 + sRGBTexture: 1 + linearTexture: 0 + fadeOut: 0 + borderMipMap: 0 + mipMapsPreserveCoverage: 0 + alphaTestReferenceValue: 0.5 + mipMapFadeDistanceStart: 1 + mipMapFadeDistanceEnd: 3 + bumpmap: + convertToNormalMap: 0 + externalNormalMap: 0 + heightScale: 0.25 + normalMapFilter: 0 + isReadable: 0 + streamingMipmaps: 0 + streamingMipmapsPriority: 0 + grayScaleToAlpha: 0 + generateCubemap: 6 + cubemapConvolution: 0 + seamlessCubemap: 0 + textureFormat: 1 + maxTextureSize: 2048 + textureSettings: + serializedVersion: 2 + filterMode: -1 + aniso: 1 + mipBias: -100 + wrapU: 1 + wrapV: 1 + wrapW: -1 + nPOTScale: 0 + lightmap: 0 + compressionQuality: 50 + spriteMode: 0 + spriteExtrude: 1 + spriteMeshType: 1 + alignment: 0 + spritePivot: {x: 0.5, y: 0.5} + spritePixelsToUnits: 100 + spriteBorder: {x: 0, y: 0, z: 0, w: 0} + spriteGenerateFallbackPhysicsShape: 1 + alphaUsage: 1 + alphaIsTransparency: 1 + spriteTessellationDetail: -1 + textureType: 2 + textureShape: 1 + singleChannelComponent: 0 + maxTextureSizeSet: 0 + compressionQualitySet: 0 + textureFormatSet: 0 + platformSettings: + - serializedVersion: 2 + buildTarget: DefaultTexturePlatform + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Standalone + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: WebGL + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 0 + spriteSheet: + serializedVersion: 2 + sprites: [] + outline: [] + physicsShape: [] + bones: [] + spriteID: + vertices: [] + indices: + edges: [] + weights: [] + spritePackingTag: + pSDRemoveMatte: 0 + pSDShowRemoveMatteOption: 0 + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Tutorials/Tutorial3/WT-Orbit-Hand-Tool.mov" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Tutorials/Tutorial3/WT-Orbit-Hand-Tool.mov" new file mode 100644 index 00000000..9c6aea39 Binary files /dev/null and "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Tutorials/Tutorial3/WT-Orbit-Hand-Tool.mov" differ diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Tutorials/Tutorial3/WT-Orbit-Hand-Tool.mov.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Tutorials/Tutorial3/WT-Orbit-Hand-Tool.mov.meta" new file mode 100644 index 00000000..dfe723f4 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Tutorials/Tutorial3/WT-Orbit-Hand-Tool.mov.meta" @@ -0,0 +1,21 @@ +fileFormatVersion: 2 +guid: 9c70b0ce0d23a43afa790c182aeb552f +VideoClipImporter: + externalObjects: {} + serializedVersion: 2 + useLegacyImporter: 0 + quality: 0.5 + isColorLinear: 0 + frameRange: 0 + startFrame: -1 + endFrame: -1 + colorSpace: 0 + deinterlace: 0 + encodeAlpha: 0 + flipVertical: 0 + flipHorizontal: 0 + importAudio: 1 + targetSettings: {} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Tutorials/Tutorial3/WT-Pan-Hand-Tool.mov" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Tutorials/Tutorial3/WT-Pan-Hand-Tool.mov" new file mode 100644 index 00000000..c761bfcb Binary files /dev/null and "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Tutorials/Tutorial3/WT-Pan-Hand-Tool.mov" differ diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Tutorials/Tutorial3/WT-Pan-Hand-Tool.mov.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Tutorials/Tutorial3/WT-Pan-Hand-Tool.mov.meta" new file mode 100644 index 00000000..7933d455 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Tutorials/Tutorial3/WT-Pan-Hand-Tool.mov.meta" @@ -0,0 +1,21 @@ +fileFormatVersion: 2 +guid: 92a75e2aa8c21497994933d0354846e6 +VideoClipImporter: + externalObjects: {} + serializedVersion: 2 + useLegacyImporter: 0 + quality: 0.5 + isColorLinear: 0 + frameRange: 0 + startFrame: -1 + endFrame: -1 + colorSpace: 0 + deinterlace: 0 + encodeAlpha: 0 + flipVertical: 0 + flipHorizontal: 0 + importAudio: 1 + targetSettings: {} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Tutorials/Tutorial3/WT-Project-Window.png" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Tutorials/Tutorial3/WT-Project-Window.png" new file mode 100644 index 00000000..00f48bb7 Binary files /dev/null and "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Tutorials/Tutorial3/WT-Project-Window.png" differ diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Tutorials/Tutorial3/WT-Project-Window.png.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Tutorials/Tutorial3/WT-Project-Window.png.meta" new file mode 100644 index 00000000..15ff8b3a --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Tutorials/Tutorial3/WT-Project-Window.png.meta" @@ -0,0 +1,110 @@ +fileFormatVersion: 2 +guid: 9c7a198f4dc69414789fc860c1ab170e +TextureImporter: + fileIDToRecycleName: {} + externalObjects: {} + serializedVersion: 9 + mipmaps: + mipMapMode: 0 + enableMipMap: 0 + sRGBTexture: 1 + linearTexture: 0 + fadeOut: 0 + borderMipMap: 0 + mipMapsPreserveCoverage: 0 + alphaTestReferenceValue: 0.5 + mipMapFadeDistanceStart: 1 + mipMapFadeDistanceEnd: 3 + bumpmap: + convertToNormalMap: 0 + externalNormalMap: 0 + heightScale: 0.25 + normalMapFilter: 0 + isReadable: 0 + streamingMipmaps: 0 + streamingMipmapsPriority: 0 + grayScaleToAlpha: 0 + generateCubemap: 6 + cubemapConvolution: 0 + seamlessCubemap: 0 + textureFormat: 1 + maxTextureSize: 2048 + textureSettings: + serializedVersion: 2 + filterMode: -1 + aniso: 1 + mipBias: -100 + wrapU: 1 + wrapV: 1 + wrapW: -1 + nPOTScale: 0 + lightmap: 0 + compressionQuality: 50 + spriteMode: 0 + spriteExtrude: 1 + spriteMeshType: 1 + alignment: 0 + spritePivot: {x: 0.5, y: 0.5} + spritePixelsToUnits: 100 + spriteBorder: {x: 0, y: 0, z: 0, w: 0} + spriteGenerateFallbackPhysicsShape: 1 + alphaUsage: 1 + alphaIsTransparency: 1 + spriteTessellationDetail: -1 + textureType: 2 + textureShape: 1 + singleChannelComponent: 0 + maxTextureSizeSet: 0 + compressionQualitySet: 0 + textureFormatSet: 0 + platformSettings: + - serializedVersion: 2 + buildTarget: DefaultTexturePlatform + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Standalone + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: WebGL + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 0 + spriteSheet: + serializedVersion: 2 + sprites: [] + outline: [] + physicsShape: [] + bones: [] + spriteID: + vertices: [] + indices: + edges: [] + weights: [] + spritePackingTag: + pSDRemoveMatte: 0 + pSDShowRemoveMatteOption: 0 + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Tutorials/Tutorial3/WT-Select-Hand-Tool.mov" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Tutorials/Tutorial3/WT-Select-Hand-Tool.mov" new file mode 100644 index 00000000..145c6b1c Binary files /dev/null and "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Tutorials/Tutorial3/WT-Select-Hand-Tool.mov" differ diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Tutorials/Tutorial3/WT-Select-Hand-Tool.mov.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Tutorials/Tutorial3/WT-Select-Hand-Tool.mov.meta" new file mode 100644 index 00000000..59585694 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Tutorials/Tutorial3/WT-Select-Hand-Tool.mov.meta" @@ -0,0 +1,21 @@ +fileFormatVersion: 2 +guid: 681d4800f4c8b48baa973ff866a465a2 +VideoClipImporter: + externalObjects: {} + serializedVersion: 2 + useLegacyImporter: 0 + quality: 0.5 + isColorLinear: 0 + frameRange: 0 + startFrame: -1 + endFrame: -1 + colorSpace: 0 + deinterlace: 0 + encodeAlpha: 0 + flipVertical: 0 + flipHorizontal: 0 + importAudio: 1 + targetSettings: {} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Tutorials/Tutorial3/WT-Zoom-Scene.png" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Tutorials/Tutorial3/WT-Zoom-Scene.png" new file mode 100644 index 00000000..ecb96582 Binary files /dev/null and "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Tutorials/Tutorial3/WT-Zoom-Scene.png" differ diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Tutorials/Tutorial3/WT-Zoom-Scene.png.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Tutorials/Tutorial3/WT-Zoom-Scene.png.meta" new file mode 100644 index 00000000..88b1001d --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Tutorials/Tutorial3/WT-Zoom-Scene.png.meta" @@ -0,0 +1,110 @@ +fileFormatVersion: 2 +guid: 399c37fc1d3564274bb0b5fe83487ed2 +TextureImporter: + fileIDToRecycleName: {} + externalObjects: {} + serializedVersion: 9 + mipmaps: + mipMapMode: 0 + enableMipMap: 0 + sRGBTexture: 1 + linearTexture: 0 + fadeOut: 0 + borderMipMap: 0 + mipMapsPreserveCoverage: 0 + alphaTestReferenceValue: 0.5 + mipMapFadeDistanceStart: 1 + mipMapFadeDistanceEnd: 3 + bumpmap: + convertToNormalMap: 0 + externalNormalMap: 0 + heightScale: 0.25 + normalMapFilter: 0 + isReadable: 0 + streamingMipmaps: 0 + streamingMipmapsPriority: 0 + grayScaleToAlpha: 0 + generateCubemap: 6 + cubemapConvolution: 0 + seamlessCubemap: 0 + textureFormat: 1 + maxTextureSize: 2048 + textureSettings: + serializedVersion: 2 + filterMode: -1 + aniso: 1 + mipBias: -100 + wrapU: 1 + wrapV: 1 + wrapW: -1 + nPOTScale: 0 + lightmap: 0 + compressionQuality: 50 + spriteMode: 0 + spriteExtrude: 1 + spriteMeshType: 1 + alignment: 0 + spritePivot: {x: 0.5, y: 0.5} + spritePixelsToUnits: 100 + spriteBorder: {x: 0, y: 0, z: 0, w: 0} + spriteGenerateFallbackPhysicsShape: 1 + alphaUsage: 1 + alphaIsTransparency: 1 + spriteTessellationDetail: -1 + textureType: 2 + textureShape: 1 + singleChannelComponent: 0 + maxTextureSizeSet: 0 + compressionQualitySet: 0 + textureFormatSet: 0 + platformSettings: + - serializedVersion: 2 + buildTarget: DefaultTexturePlatform + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Standalone + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: WebGL + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 0 + spriteSheet: + serializedVersion: 2 + sprites: [] + outline: [] + physicsShape: [] + bones: [] + spriteID: + vertices: [] + indices: + edges: [] + weights: [] + spritePackingTag: + pSDRemoveMatte: 0 + pSDShowRemoveMatteOption: 0 + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Tutorials/Tutorial3/Walkthrough3-01-Introduction.asset" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Tutorials/Tutorial3/Walkthrough3-01-Introduction.asset" new file mode 100644 index 00000000..6f55f1ff --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Tutorials/Tutorial3/Walkthrough3-01-Introduction.asset" @@ -0,0 +1,70 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!114 &11400000 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: ff771ccdf4150419d9ff4d342b069aae, type: 3} + m_Name: Walkthrough3-01-Introduction + m_EditorClassIdentifier: + m_SectionTitle: + m_Paragraphs: + m_Items: + - m_Type: 6 + m_Summary: + m_Text: + m_TutorialButtonText: + m_Tutorial: {fileID: 0} + m_Icons: + m_Items: [] + m_Image: {fileID: 2800000, guid: 59ee9782ecd754efa80a388d1782d503, type: 3} + m_Video: {fileID: 0} + m_CriteriaCompletion: 0 + m_Criteria: + m_Items: [] + m_MaskingSettings: + m_MaskingEnabled: 1 + m_UnmaskedViews: [] + - m_Type: 0 + m_Summary: + m_Text: "Editor UI\n\x03\x03\nTUTORIAL + \n\nIn this tutorial, you'll learn more about the + Unity Editor, which will be super helpful as you modify your game.\n\nClick + Start below to begin.\x03" + m_TutorialButtonText: + m_Tutorial: {fileID: 0} + m_Icons: + m_Items: [] + m_Image: {fileID: 0} + m_Video: {fileID: 0} + m_CriteriaCompletion: 0 + m_Criteria: + m_Items: [] + m_MaskingSettings: + m_MaskingEnabled: 1 + m_UnmaskedViews: [] + m_CameraSettings: + m_CameraMode: 0 + m_FocusMode: 0 + m_Orthographic: 0 + m_Size: 0 + m_Pivot: {x: 0, y: 0, z: 0} + m_Rotation: {x: 0, y: 0, z: 0, w: 0} + m_FrameObject: + m_SceneGuid: + m_GameObjectGuid: + m_SerializedComponentType: + m_TypeName: + m_ComponentIndex: 0 + m_AssetObject: {fileID: 0} + m_Prefab: {fileID: 0} + m_Enabled: 0 + m_NextButton: Start + m_DoneButton: Done + m_CompletedSound: {fileID: 8300000, guid: 93fbb109633e844259ea828442bda0cb, type: 3} + m_autoAdvance: 0 diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Tutorials/Tutorial3/Walkthrough3-01-Introduction.asset.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Tutorials/Tutorial3/Walkthrough3-01-Introduction.asset.meta" new file mode 100644 index 00000000..068de7dc --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Tutorials/Tutorial3/Walkthrough3-01-Introduction.asset.meta" @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 712d931472a604b86ae947ce442c91f4 +NativeFormatImporter: + externalObjects: {} + mainObjectFileID: 11400000 + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Tutorials/Tutorial3/Walkthrough3-02-Scene-View.asset" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Tutorials/Tutorial3/Walkthrough3-02-Scene-View.asset" new file mode 100644 index 00000000..8e294a03 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Tutorials/Tutorial3/Walkthrough3-02-Scene-View.asset" @@ -0,0 +1,121 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!114 &11400000 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: ff771ccdf4150419d9ff4d342b069aae, type: 3} + m_Name: Walkthrough3-02-Scene-View + m_EditorClassIdentifier: + m_SectionTitle: + m_Paragraphs: + m_Items: + - m_Type: 6 + m_Summary: + m_Text: + m_TutorialButtonText: + m_Tutorial: {fileID: 0} + m_Icons: + m_Items: [] + m_Image: {fileID: 2800000, guid: 711e1c4aefe4841b29c9a91f02d900b3, type: 3} + m_Video: {fileID: 0} + m_CriteriaCompletion: 0 + m_Criteria: + m_Items: [] + m_MaskingSettings: + m_MaskingEnabled: 1 + m_UnmaskedViews: + - m_SelectorType: 1 + m_ViewType: + m_TypeName: + m_EditorWindowType: + m_TypeName: UnityEditor.SceneView, UnityEditor, Version=0.0.0.0, Culture=neutral, + PublicKeyToken=null + m_AlternateEditorWindowTypes: + m_Items: [] + m_MaskType: 1 + m_MaskSizeModifier: 0 + m_UnmaskedControls: [] + - m_SelectorType: 1 + m_ViewType: + m_TypeName: + m_EditorWindowType: + m_TypeName: UnityEditor.SceneHierarchyWindow, UnityEditor, Version=0.0.0.0, + Culture=neutral, PublicKeyToken=null + m_AlternateEditorWindowTypes: + m_Items: [] + m_MaskType: 1 + m_MaskSizeModifier: 0 + m_UnmaskedControls: [] + - m_Type: 0 + m_Summary: + m_Text: 'Hierarchy and Scene + + + The Scene view allows you to navigate and edit your scene. + + + The Hierarchy window contains a list of everything in the current scene + that is open in the editor. + + + Click Next to continue.' + m_TutorialButtonText: + m_Tutorial: {fileID: 0} + m_Icons: + m_Items: [] + m_Image: {fileID: 0} + m_Video: {fileID: 0} + m_CriteriaCompletion: 0 + m_Criteria: + m_Items: [] + m_MaskingSettings: + m_MaskingEnabled: 1 + m_UnmaskedViews: + - m_SelectorType: 1 + m_ViewType: + m_TypeName: + m_EditorWindowType: + m_TypeName: UnityEditor.SceneView, UnityEditor, Version=0.0.0.0, Culture=neutral, + PublicKeyToken=null + m_AlternateEditorWindowTypes: + m_Items: [] + m_MaskType: 1 + m_MaskSizeModifier: 0 + m_UnmaskedControls: [] + - m_SelectorType: 1 + m_ViewType: + m_TypeName: + m_EditorWindowType: + m_TypeName: UnityEditor.SceneHierarchyWindow, UnityEditor, Version=0.0.0.0, + Culture=neutral, PublicKeyToken=null + m_AlternateEditorWindowTypes: + m_Items: [] + m_MaskType: 1 + m_MaskSizeModifier: 0 + m_UnmaskedControls: [] + m_CameraSettings: + m_CameraMode: 0 + m_FocusMode: 0 + m_Orthographic: 0 + m_Size: 0 + m_Pivot: {x: 0, y: 0, z: 0} + m_Rotation: {x: 0, y: 0, z: 0, w: 0} + m_FrameObject: + m_SceneGuid: + m_GameObjectGuid: + m_SerializedComponentType: + m_TypeName: + m_ComponentIndex: 0 + m_AssetObject: {fileID: 0} + m_Prefab: {fileID: 0} + m_Enabled: 0 + m_NextButton: Next + m_DoneButton: Done + m_CompletedSound: {fileID: 8300000, guid: 93fbb109633e844259ea828442bda0cb, type: 3} + m_autoAdvance: 0 diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Tutorials/Tutorial3/Walkthrough3-02-Scene-View.asset.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Tutorials/Tutorial3/Walkthrough3-02-Scene-View.asset.meta" new file mode 100644 index 00000000..2b1482fe --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Tutorials/Tutorial3/Walkthrough3-02-Scene-View.asset.meta" @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: ae39675d196364835b28f380e2190b8b +NativeFormatImporter: + externalObjects: {} + mainObjectFileID: 11400000 + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Tutorials/Tutorial3/Walkthrough3-03-Hand-Tool.asset" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Tutorials/Tutorial3/Walkthrough3-03-Hand-Tool.asset" new file mode 100644 index 00000000..9e7bd8f1 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Tutorials/Tutorial3/Walkthrough3-03-Hand-Tool.asset" @@ -0,0 +1,165 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!114 &11400000 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: ff771ccdf4150419d9ff4d342b069aae, type: 3} + m_Name: Walkthrough3-03-Hand-Tool + m_EditorClassIdentifier: + m_SectionTitle: + m_Paragraphs: + m_Items: + - m_Type: 7 + m_Summary: + m_Text: + m_TutorialButtonText: + m_Tutorial: {fileID: 0} + m_Icons: + m_Items: [] + m_Image: {fileID: 2800000, guid: 7dbd9a3dc7b4c4e1985f9ca6cfa1d4f7, type: 3} + m_Video: {fileID: 32900000, guid: 681d4800f4c8b48baa973ff866a465a2, type: 3} + m_CriteriaCompletion: 0 + m_Criteria: + m_Items: [] + m_MaskingSettings: + m_MaskingEnabled: 1 + m_UnmaskedViews: + - m_SelectorType: 1 + m_ViewType: + m_TypeName: + m_EditorWindowType: + m_TypeName: UnityEditor.SceneView, UnityEditor, Version=0.0.0.0, Culture=neutral, + PublicKeyToken=null + m_AlternateEditorWindowTypes: + m_Items: [] + m_MaskType: 0 + m_MaskSizeModifier: 0 + m_UnmaskedControls: [] + - m_SelectorType: 0 + m_ViewType: + m_TypeName: UnityEditor.Toolbar, UnityEditor, Version=0.0.0.0, Culture=neutral, + PublicKeyToken=null + m_EditorWindowType: + m_TypeName: + m_AlternateEditorWindowTypes: + m_Items: [] + m_MaskType: 0 + m_MaskSizeModifier: 0 + m_UnmaskedControls: + - m_SelectorMode: 1 + m_GUIContent: + m_Text: + m_Image: {fileID: 0} + m_Tooltip: + m_ControlName: ToolbarPersistentToolsPan + m_PropertyPath: + m_TargetType: + m_TypeName: + m_GUIStyleName: + - m_Type: 0 + m_Summary: + m_Text: "Hand Tool\n\nLet\u2019s try the Hand Tool, + which allows you to navigate your view of the scene." + m_TutorialButtonText: + m_Tutorial: {fileID: 0} + m_Icons: + m_Items: [] + m_Image: {fileID: 0} + m_Video: {fileID: 0} + m_CriteriaCompletion: 0 + m_Criteria: + m_Items: [] + m_MaskingSettings: + m_MaskingEnabled: 0 + m_UnmaskedViews: [] + - m_Type: 1 + m_Summary: Select Hand Tool + m_Text: Click the Hand Tool in the upper left corner of the Toolbar at + the top of the editor. + m_TutorialButtonText: + m_Tutorial: {fileID: 0} + m_Icons: + m_Items: [] + m_Image: {fileID: 0} + m_Video: {fileID: 0} + m_CriteriaCompletion: 0 + m_Criteria: + m_Items: + - type: + m_TypeName: Unity.InteractiveTutorials.ActiveToolCriterion, Unity.InteractiveTutorials.Core, + Version=0.0.0.0, Culture=neutral, PublicKeyToken=null + criterion: {fileID: 114140302119297188} + m_MaskingSettings: + m_MaskingEnabled: 1 + m_UnmaskedViews: + - m_SelectorType: 1 + m_ViewType: + m_TypeName: + m_EditorWindowType: + m_TypeName: UnityEditor.SceneView, UnityEditor, Version=0.0.0.0, Culture=neutral, + PublicKeyToken=null + m_AlternateEditorWindowTypes: + m_Items: [] + m_MaskType: 0 + m_MaskSizeModifier: 0 + m_UnmaskedControls: [] + - m_SelectorType: 0 + m_ViewType: + m_TypeName: UnityEditor.Toolbar, UnityEditor, Version=0.0.0.0, Culture=neutral, + PublicKeyToken=null + m_EditorWindowType: + m_TypeName: + m_AlternateEditorWindowTypes: + m_Items: [] + m_MaskType: 0 + m_MaskSizeModifier: 0 + m_UnmaskedControls: + - m_SelectorMode: 1 + m_GUIContent: + m_Text: + m_Image: {fileID: 0} + m_Tooltip: + m_ControlName: ToolbarPersistentToolsPan + m_PropertyPath: + m_TargetType: + m_TypeName: + m_GUIStyleName: + m_CameraSettings: + m_CameraMode: 0 + m_FocusMode: 0 + m_Orthographic: 0 + m_Size: 0 + m_Pivot: {x: 0, y: 0, z: 0} + m_Rotation: {x: 0, y: 0, z: 0, w: 0} + m_FrameObject: + m_SceneGuid: + m_GameObjectGuid: + m_SerializedComponentType: + m_TypeName: + m_ComponentIndex: 0 + m_AssetObject: {fileID: 0} + m_Prefab: {fileID: 0} + m_Enabled: 0 + m_NextButton: Next + m_DoneButton: Done + m_CompletedSound: {fileID: 8300000, guid: 93fbb109633e844259ea828442bda0cb, type: 3} + m_autoAdvance: 1 +--- !u!114 &114140302119297188 +MonoBehaviour: + m_ObjectHideFlags: 1 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 09cf94368c18acd4b87b173cdb62b502, type: 3} + m_Name: + m_EditorClassIdentifier: + m_TargetTool: 0 diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Tutorials/Tutorial3/Walkthrough3-03-Hand-Tool.asset.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Tutorials/Tutorial3/Walkthrough3-03-Hand-Tool.asset.meta" new file mode 100644 index 00000000..9449f4c0 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Tutorials/Tutorial3/Walkthrough3-03-Hand-Tool.asset.meta" @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: be18c412097e64f4d879aad1e2f17764 +NativeFormatImporter: + externalObjects: {} + mainObjectFileID: 11400000 + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Tutorials/Tutorial3/Walkthrough3-04-Try-Hand-Tool.asset" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Tutorials/Tutorial3/Walkthrough3-04-Try-Hand-Tool.asset" new file mode 100644 index 00000000..8c94f10b --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Tutorials/Tutorial3/Walkthrough3-04-Try-Hand-Tool.asset" @@ -0,0 +1,167 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!114 &11400000 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: ff771ccdf4150419d9ff4d342b069aae, type: 3} + m_Name: Walkthrough3-04-Try-Hand-Tool + m_EditorClassIdentifier: + m_SectionTitle: + m_Paragraphs: + m_Items: + - m_Type: 7 + m_Summary: + m_Text: + m_TutorialButtonText: + m_Tutorial: {fileID: 0} + m_Icons: + m_Items: [] + m_Image: {fileID: 0} + m_Video: {fileID: 32900000, guid: 92a75e2aa8c21497994933d0354846e6, type: 3} + m_CriteriaCompletion: 0 + m_Criteria: + m_Items: [] + m_MaskingSettings: + m_MaskingEnabled: 1 + m_UnmaskedViews: + - m_SelectorType: 1 + m_ViewType: + m_TypeName: + m_EditorWindowType: + m_TypeName: UnityEditor.SceneView, UnityEditor, Version=0.0.0.0, Culture=neutral, + PublicKeyToken=null + m_AlternateEditorWindowTypes: + m_Items: [] + m_MaskType: 0 + m_MaskSizeModifier: 0 + m_UnmaskedControls: [] + - m_SelectorType: 0 + m_ViewType: + m_TypeName: UnityEditor.Toolbar, UnityEditor, Version=0.0.0.0, Culture=neutral, + PublicKeyToken=null + m_EditorWindowType: + m_TypeName: + m_AlternateEditorWindowTypes: + m_Items: [] + m_MaskType: 0 + m_MaskSizeModifier: 0 + m_UnmaskedControls: + - m_SelectorMode: 1 + m_GUIContent: + m_Text: + m_Image: {fileID: 0} + m_Tooltip: + m_ControlName: ToolbarPersistentToolsPan + m_PropertyPath: + m_TargetType: + m_TypeName: + m_GUIStyleName: + - m_Type: 0 + m_Summary: + m_Text: 'Pan Scene with Hand Tool + + + Now that you have selected the Hand tool, place your cursor in the + Scene view and try the following steps to move your view of the scene + in several ways:' + m_TutorialButtonText: + m_Tutorial: {fileID: 0} + m_Icons: + m_Items: [] + m_Image: {fileID: 0} + m_Video: {fileID: 0} + m_CriteriaCompletion: 0 + m_Criteria: + m_Items: [] + m_MaskingSettings: + m_MaskingEnabled: 0 + m_UnmaskedViews: [] + - m_Type: 1 + m_Summary: Pan around the scene + m_Text: Hold down the left mouse button and move the mouse to pan. + m_TutorialButtonText: + m_Tutorial: {fileID: 0} + m_Icons: + m_Items: [] + m_Image: {fileID: 0} + m_Video: {fileID: 0} + m_CriteriaCompletion: 0 + m_Criteria: + m_Items: + - type: + m_TypeName: Unity.InteractiveTutorials.SceneViewCameraMovedCriterion, + Unity.InteractiveTutorials.Core, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null + criterion: {fileID: 114669061955605264} + m_MaskingSettings: + m_MaskingEnabled: 1 + m_UnmaskedViews: + - m_SelectorType: 1 + m_ViewType: + m_TypeName: + m_EditorWindowType: + m_TypeName: UnityEditor.SceneView, UnityEditor, Version=0.0.0.0, Culture=neutral, + PublicKeyToken=null + m_AlternateEditorWindowTypes: + m_Items: [] + m_MaskType: 0 + m_MaskSizeModifier: 0 + m_UnmaskedControls: [] + - m_SelectorType: 0 + m_ViewType: + m_TypeName: UnityEditor.Toolbar, UnityEditor, Version=0.0.0.0, Culture=neutral, + PublicKeyToken=null + m_EditorWindowType: + m_TypeName: + m_AlternateEditorWindowTypes: + m_Items: [] + m_MaskType: 0 + m_MaskSizeModifier: 0 + m_UnmaskedControls: + - m_SelectorMode: 1 + m_GUIContent: + m_Text: + m_Image: {fileID: 0} + m_Tooltip: + m_ControlName: ToolbarPersistentToolsPan + m_PropertyPath: + m_TargetType: + m_TypeName: + m_GUIStyleName: + m_CameraSettings: + m_CameraMode: 0 + m_FocusMode: 0 + m_Orthographic: 0 + m_Size: 0 + m_Pivot: {x: 0, y: 0, z: 0} + m_Rotation: {x: 0, y: 0, z: 0, w: 0} + m_FrameObject: + m_SceneGuid: + m_GameObjectGuid: + m_SerializedComponentType: + m_TypeName: + m_ComponentIndex: 0 + m_AssetObject: {fileID: 0} + m_Prefab: {fileID: 0} + m_Enabled: 0 + m_NextButton: Next + m_DoneButton: Done + m_CompletedSound: {fileID: 8300000, guid: 93fbb109633e844259ea828442bda0cb, type: 3} + m_autoAdvance: 0 +--- !u!114 &114669061955605264 +MonoBehaviour: + m_ObjectHideFlags: 1 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: c4ac49bdefc2c1a44948fd2c6481f28f, type: 3} + m_Name: + m_EditorClassIdentifier: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Tutorials/Tutorial3/Walkthrough3-04-Try-Hand-Tool.asset.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Tutorials/Tutorial3/Walkthrough3-04-Try-Hand-Tool.asset.meta" new file mode 100644 index 00000000..b7963753 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Tutorials/Tutorial3/Walkthrough3-04-Try-Hand-Tool.asset.meta" @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: d976f93f028d14baa92454948e884504 +NativeFormatImporter: + externalObjects: {} + mainObjectFileID: 11400000 + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Tutorials/Tutorial3/Walkthrough3-05-Orbit-Scene.asset" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Tutorials/Tutorial3/Walkthrough3-05-Orbit-Scene.asset" new file mode 100644 index 00000000..c3fd50a7 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Tutorials/Tutorial3/Walkthrough3-05-Orbit-Scene.asset" @@ -0,0 +1,166 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!114 &11400000 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: ff771ccdf4150419d9ff4d342b069aae, type: 3} + m_Name: Walkthrough3-05-Orbit-Scene + m_EditorClassIdentifier: + m_SectionTitle: + m_Paragraphs: + m_Items: + - m_Type: 7 + m_Summary: + m_Text: + m_TutorialButtonText: + m_Tutorial: {fileID: 0} + m_Icons: + m_Items: [] + m_Image: {fileID: 0} + m_Video: {fileID: 32900000, guid: 9c70b0ce0d23a43afa790c182aeb552f, type: 3} + m_CriteriaCompletion: 0 + m_Criteria: + m_Items: [] + m_MaskingSettings: + m_MaskingEnabled: 1 + m_UnmaskedViews: + - m_SelectorType: 1 + m_ViewType: + m_TypeName: + m_EditorWindowType: + m_TypeName: UnityEditor.SceneView, UnityEditor, Version=0.0.0.0, Culture=neutral, + PublicKeyToken=null + m_AlternateEditorWindowTypes: + m_Items: [] + m_MaskType: 0 + m_MaskSizeModifier: 0 + m_UnmaskedControls: [] + - m_SelectorType: 0 + m_ViewType: + m_TypeName: UnityEditor.Toolbar, UnityEditor, Version=0.0.0.0, Culture=neutral, + PublicKeyToken=null + m_EditorWindowType: + m_TypeName: + m_AlternateEditorWindowTypes: + m_Items: [] + m_MaskType: 0 + m_MaskSizeModifier: 0 + m_UnmaskedControls: + - m_SelectorMode: 1 + m_GUIContent: + m_Text: + m_Image: {fileID: 0} + m_Tooltip: + m_ControlName: ToolbarPersistentToolsPan + m_PropertyPath: + m_TargetType: + m_TypeName: + m_GUIStyleName: + - m_Type: 0 + m_Summary: + m_Text: 'Orbit Scene with Hand Tool + + + Now let''s look around within the Scene view.' + m_TutorialButtonText: + m_Tutorial: {fileID: 0} + m_Icons: + m_Items: [] + m_Image: {fileID: 0} + m_Video: {fileID: 0} + m_CriteriaCompletion: 0 + m_Criteria: + m_Items: [] + m_MaskingSettings: + m_MaskingEnabled: 0 + m_UnmaskedViews: [] + - m_Type: 1 + m_Summary: Orbit in the scene + m_Text: Hold down the Alt or Option key and the left mouse button, and + move the mouse to orbit your view of the scene. + m_TutorialButtonText: + m_Tutorial: {fileID: 0} + m_Icons: + m_Items: [] + m_Image: {fileID: 0} + m_Video: {fileID: 0} + m_CriteriaCompletion: 0 + m_Criteria: + m_Items: + - type: + m_TypeName: Unity.InteractiveTutorials.SceneViewCameraMovedCriterion, + Unity.InteractiveTutorials.Core, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null + criterion: {fileID: 114562644421750226} + m_MaskingSettings: + m_MaskingEnabled: 1 + m_UnmaskedViews: + - m_SelectorType: 1 + m_ViewType: + m_TypeName: + m_EditorWindowType: + m_TypeName: UnityEditor.SceneView, UnityEditor, Version=0.0.0.0, Culture=neutral, + PublicKeyToken=null + m_AlternateEditorWindowTypes: + m_Items: [] + m_MaskType: 0 + m_MaskSizeModifier: 0 + m_UnmaskedControls: [] + - m_SelectorType: 0 + m_ViewType: + m_TypeName: UnityEditor.Toolbar, UnityEditor, Version=0.0.0.0, Culture=neutral, + PublicKeyToken=null + m_EditorWindowType: + m_TypeName: + m_AlternateEditorWindowTypes: + m_Items: [] + m_MaskType: 0 + m_MaskSizeModifier: 0 + m_UnmaskedControls: + - m_SelectorMode: 1 + m_GUIContent: + m_Text: + m_Image: {fileID: 0} + m_Tooltip: + m_ControlName: ToolbarPersistentToolsPan + m_PropertyPath: + m_TargetType: + m_TypeName: + m_GUIStyleName: + m_CameraSettings: + m_CameraMode: 0 + m_FocusMode: 0 + m_Orthographic: 0 + m_Size: 0 + m_Pivot: {x: 0, y: 0, z: 0} + m_Rotation: {x: 0, y: 0, z: 0, w: 0} + m_FrameObject: + m_SceneGuid: + m_GameObjectGuid: + m_SerializedComponentType: + m_TypeName: + m_ComponentIndex: 0 + m_AssetObject: {fileID: 0} + m_Prefab: {fileID: 0} + m_Enabled: 0 + m_NextButton: Next + m_DoneButton: Done + m_CompletedSound: {fileID: 8300000, guid: 93fbb109633e844259ea828442bda0cb, type: 3} + m_autoAdvance: 0 +--- !u!114 &114562644421750226 +MonoBehaviour: + m_ObjectHideFlags: 1 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: c4ac49bdefc2c1a44948fd2c6481f28f, type: 3} + m_Name: + m_EditorClassIdentifier: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Tutorials/Tutorial3/Walkthrough3-05-Orbit-Scene.asset.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Tutorials/Tutorial3/Walkthrough3-05-Orbit-Scene.asset.meta" new file mode 100644 index 00000000..b9af037f --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Tutorials/Tutorial3/Walkthrough3-05-Orbit-Scene.asset.meta" @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: b557a83bcc83a4b8f8f192ee86aedc5e +NativeFormatImporter: + externalObjects: {} + mainObjectFileID: 11400000 + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Tutorials/Tutorial3/Walkthrough3-06-Zoom-Scene.asset" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Tutorials/Tutorial3/Walkthrough3-06-Zoom-Scene.asset" new file mode 100644 index 00000000..57bf0bf0 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Tutorials/Tutorial3/Walkthrough3-06-Zoom-Scene.asset" @@ -0,0 +1,199 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!114 &11400000 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: ff771ccdf4150419d9ff4d342b069aae, type: 3} + m_Name: Walkthrough3-06-Zoom-Scene + m_EditorClassIdentifier: + m_SectionTitle: + m_Paragraphs: + m_Items: + - m_Type: 6 + m_Summary: + m_Text: + m_TutorialButtonText: + m_Tutorial: {fileID: 0} + m_Icons: + m_Items: [] + m_Image: {fileID: 2800000, guid: 399c37fc1d3564274bb0b5fe83487ed2, type: 3} + m_Video: {fileID: 0} + m_CriteriaCompletion: 0 + m_Criteria: + m_Items: [] + m_MaskingSettings: + m_MaskingEnabled: 1 + m_UnmaskedViews: + - m_SelectorType: 1 + m_ViewType: + m_TypeName: + m_EditorWindowType: + m_TypeName: UnityEditor.SceneView, UnityEditor, Version=0.0.0.0, Culture=neutral, + PublicKeyToken=null + m_AlternateEditorWindowTypes: + m_Items: [] + m_MaskType: 0 + m_MaskSizeModifier: 0 + m_UnmaskedControls: [] + - m_SelectorType: 0 + m_ViewType: + m_TypeName: UnityEditor.Toolbar, UnityEditor, Version=0.0.0.0, Culture=neutral, + PublicKeyToken=null + m_EditorWindowType: + m_TypeName: + m_AlternateEditorWindowTypes: + m_Items: [] + m_MaskType: 0 + m_MaskSizeModifier: 0 + m_UnmaskedControls: + - m_SelectorMode: 1 + m_GUIContent: + m_Text: + m_Image: {fileID: 0} + m_Tooltip: + m_ControlName: ToolbarPersistentToolsPan + m_PropertyPath: + m_TargetType: + m_TypeName: + m_GUIStyleName: + - m_Type: 0 + m_Summary: + m_Text: 'Zoom Scene + + + Let''s try to zoom the Scene view:' + m_TutorialButtonText: + m_Tutorial: {fileID: 0} + m_Icons: + m_Items: [] + m_Image: {fileID: 0} + m_Video: {fileID: 0} + m_CriteriaCompletion: 0 + m_Criteria: + m_Items: [] + m_MaskingSettings: + m_MaskingEnabled: 1 + m_UnmaskedViews: + - m_SelectorType: 1 + m_ViewType: + m_TypeName: + m_EditorWindowType: + m_TypeName: UnityEditor.SceneView, UnityEditor, Version=0.0.0.0, Culture=neutral, + PublicKeyToken=null + m_AlternateEditorWindowTypes: + m_Items: [] + m_MaskType: 0 + m_MaskSizeModifier: 0 + m_UnmaskedControls: [] + - m_SelectorType: 0 + m_ViewType: + m_TypeName: UnityEditor.Toolbar, UnityEditor, Version=0.0.0.0, Culture=neutral, + PublicKeyToken=null + m_EditorWindowType: + m_TypeName: + m_AlternateEditorWindowTypes: + m_Items: [] + m_MaskType: 0 + m_MaskSizeModifier: 0 + m_UnmaskedControls: + - m_SelectorMode: 1 + m_GUIContent: + m_Text: + m_Image: {fileID: 0} + m_Tooltip: + m_ControlName: ToolbarPersistentToolsPan + m_PropertyPath: + m_TargetType: + m_TypeName: + m_GUIStyleName: + - m_Type: 1 + m_Summary: Zoom in and out in the scene + m_Text: "Hold down the Alt or Option key and the right mouse button, + and move the mouse to zoom in and out. \n\nAlternatively, use the mouse scroll + wheel or the scroll gesture on a trackpad." + m_TutorialButtonText: + m_Tutorial: {fileID: 0} + m_Icons: + m_Items: [] + m_Image: {fileID: 0} + m_Video: {fileID: 0} + m_CriteriaCompletion: 0 + m_Criteria: + m_Items: + - type: + m_TypeName: Unity.InteractiveTutorials.SceneViewCameraMovedCriterion, + Unity.InteractiveTutorials.Core, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null + criterion: {fileID: 114054893517278618} + m_MaskingSettings: + m_MaskingEnabled: 1 + m_UnmaskedViews: + - m_SelectorType: 1 + m_ViewType: + m_TypeName: + m_EditorWindowType: + m_TypeName: UnityEditor.SceneView, UnityEditor, Version=0.0.0.0, Culture=neutral, + PublicKeyToken=null + m_AlternateEditorWindowTypes: + m_Items: [] + m_MaskType: 0 + m_MaskSizeModifier: 0 + m_UnmaskedControls: [] + - m_SelectorType: 0 + m_ViewType: + m_TypeName: UnityEditor.Toolbar, UnityEditor, Version=0.0.0.0, Culture=neutral, + PublicKeyToken=null + m_EditorWindowType: + m_TypeName: + m_AlternateEditorWindowTypes: + m_Items: [] + m_MaskType: 0 + m_MaskSizeModifier: 0 + m_UnmaskedControls: + - m_SelectorMode: 1 + m_GUIContent: + m_Text: + m_Image: {fileID: 0} + m_Tooltip: + m_ControlName: ToolbarPersistentToolsPan + m_PropertyPath: + m_TargetType: + m_TypeName: + m_GUIStyleName: + m_CameraSettings: + m_CameraMode: 0 + m_FocusMode: 0 + m_Orthographic: 0 + m_Size: 0 + m_Pivot: {x: 0, y: 0, z: 0} + m_Rotation: {x: 0, y: 0, z: 0, w: 0} + m_FrameObject: + m_SceneGuid: + m_GameObjectGuid: + m_SerializedComponentType: + m_TypeName: + m_ComponentIndex: 0 + m_AssetObject: {fileID: 0} + m_Prefab: {fileID: 0} + m_Enabled: 0 + m_NextButton: Next + m_DoneButton: Done + m_CompletedSound: {fileID: 8300000, guid: 93fbb109633e844259ea828442bda0cb, type: 3} + m_autoAdvance: 0 +--- !u!114 &114054893517278618 +MonoBehaviour: + m_ObjectHideFlags: 1 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: c4ac49bdefc2c1a44948fd2c6481f28f, type: 3} + m_Name: + m_EditorClassIdentifier: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Tutorials/Tutorial3/Walkthrough3-06-Zoom-Scene.asset.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Tutorials/Tutorial3/Walkthrough3-06-Zoom-Scene.asset.meta" new file mode 100644 index 00000000..b4ece139 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Tutorials/Tutorial3/Walkthrough3-06-Zoom-Scene.asset.meta" @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: ecbde9254a26a49978e5df0fdf89ec73 +NativeFormatImporter: + externalObjects: {} + mainObjectFileID: 11400000 + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Tutorials/Tutorial3/Walkthrough3-07-Project-Window.asset" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Tutorials/Tutorial3/Walkthrough3-07-Project-Window.asset" new file mode 100644 index 00000000..2609523a --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Tutorials/Tutorial3/Walkthrough3-07-Project-Window.asset" @@ -0,0 +1,94 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!114 &11400000 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: ff771ccdf4150419d9ff4d342b069aae, type: 3} + m_Name: Walkthrough3-07-Project-Window + m_EditorClassIdentifier: + m_SectionTitle: + m_Paragraphs: + m_Items: + - m_Type: 6 + m_Summary: + m_Text: + m_TutorialButtonText: + m_Tutorial: {fileID: 0} + m_Icons: + m_Items: [] + m_Image: {fileID: 2800000, guid: 9c7a198f4dc69414789fc860c1ab170e, type: 3} + m_Video: {fileID: 0} + m_CriteriaCompletion: 0 + m_Criteria: + m_Items: [] + m_MaskingSettings: + m_MaskingEnabled: 1 + m_UnmaskedViews: + - m_SelectorType: 1 + m_ViewType: + m_TypeName: + m_EditorWindowType: + m_TypeName: UnityEditor.ProjectBrowser, UnityEditor, Version=0.0.0.0, + Culture=neutral, PublicKeyToken=null + m_AlternateEditorWindowTypes: + m_Items: [] + m_MaskType: 1 + m_MaskSizeModifier: 0 + m_UnmaskedControls: [] + - m_Type: 0 + m_Summary: + m_Text: "Project Window\n\nNext, we have the Project + window, which displays all of the assets that are available to + use in your project. \n\nAssets are the files that make up your project, for + example, 3D models, textures, audio files and more. \n\nWhen + you import assets into your project, they appear in the Project window.\n\nClick + Next to continue." + m_TutorialButtonText: + m_Tutorial: {fileID: 0} + m_Icons: + m_Items: [] + m_Image: {fileID: 0} + m_Video: {fileID: 0} + m_CriteriaCompletion: 0 + m_Criteria: + m_Items: [] + m_MaskingSettings: + m_MaskingEnabled: 1 + m_UnmaskedViews: + - m_SelectorType: 1 + m_ViewType: + m_TypeName: + m_EditorWindowType: + m_TypeName: UnityEditor.ProjectBrowser, UnityEditor, Version=0.0.0.0, + Culture=neutral, PublicKeyToken=null + m_AlternateEditorWindowTypes: + m_Items: [] + m_MaskType: 1 + m_MaskSizeModifier: 0 + m_UnmaskedControls: [] + m_CameraSettings: + m_CameraMode: 0 + m_FocusMode: 0 + m_Orthographic: 0 + m_Size: 0 + m_Pivot: {x: 0, y: 0, z: 0} + m_Rotation: {x: 0, y: 0, z: 0, w: 0} + m_FrameObject: + m_SceneGuid: + m_GameObjectGuid: + m_SerializedComponentType: + m_TypeName: + m_ComponentIndex: 0 + m_AssetObject: {fileID: 0} + m_Prefab: {fileID: 0} + m_Enabled: 0 + m_NextButton: Next + m_DoneButton: Done + m_CompletedSound: {fileID: 8300000, guid: 93fbb109633e844259ea828442bda0cb, type: 3} + m_autoAdvance: 0 diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Tutorials/Tutorial3/Walkthrough3-07-Project-Window.asset.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Tutorials/Tutorial3/Walkthrough3-07-Project-Window.asset.meta" new file mode 100644 index 00000000..ddc51d8f --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Tutorials/Tutorial3/Walkthrough3-07-Project-Window.asset.meta" @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 2369aced5fb244c9da60ff7d0068c59f +NativeFormatImporter: + externalObjects: {} + mainObjectFileID: 11400000 + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Tutorials/Tutorial3/Walkthrough3-08-Done.asset" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Tutorials/Tutorial3/Walkthrough3-08-Done.asset" new file mode 100644 index 00000000..cfcb20b3 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Tutorials/Tutorial3/Walkthrough3-08-Done.asset" @@ -0,0 +1,84 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!114 &11400000 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: ff771ccdf4150419d9ff4d342b069aae, type: 3} + m_Name: Walkthrough3-08-Done + m_EditorClassIdentifier: + m_SectionTitle: + m_Paragraphs: + m_Items: + - m_Type: 6 + m_Summary: + m_Text: + m_TutorialButtonText: 'Tutorial 3: Edit Colors' + m_Tutorial: {fileID: 11400000, guid: 83255933b1f9a13428ca582620d979c8, type: 2} + m_Icons: + m_Items: [] + m_Image: {fileID: 2800000, guid: cf2b88c8b41ea4e42ba6e17726c32b87, type: 3} + m_Video: {fileID: 0} + m_CriteriaCompletion: 0 + m_Criteria: + m_Items: [] + m_MaskingSettings: + m_MaskingEnabled: 1 + m_UnmaskedViews: [] + - m_Type: 0 + m_Summary: + m_Text: "Tutorial Completed\n\nNow that you've learned + more about the Editor, let's get you back to modifying your game. \n\nNext + up: Changing the color of your Kart." + m_TutorialButtonText: + m_Tutorial: {fileID: 0} + m_Icons: + m_Items: [] + m_Image: {fileID: 0} + m_Video: {fileID: 0} + m_CriteriaCompletion: 0 + m_Criteria: + m_Items: [] + m_MaskingSettings: + m_MaskingEnabled: 1 + m_UnmaskedViews: [] + - m_Type: 2 + m_Summary: + m_Text: + m_TutorialButtonText: 'Tutorial: Edit Colors' + m_Tutorial: {fileID: 11400000, guid: 83255933b1f9a13428ca582620d979c8, type: 2} + m_Icons: + m_Items: [] + m_Image: {fileID: 0} + m_Video: {fileID: 0} + m_CriteriaCompletion: 0 + m_Criteria: + m_Items: [] + m_MaskingSettings: + m_MaskingEnabled: 1 + m_UnmaskedViews: [] + m_CameraSettings: + m_CameraMode: 1 + m_FocusMode: 0 + m_Orthographic: 0 + m_Size: 10 + m_Pivot: {x: -5, y: 26.339746, z: -12} + m_Rotation: {x: 0.5, y: 0, z: 0, w: 0.8660254} + m_FrameObject: + m_SceneGuid: + m_GameObjectGuid: + m_SerializedComponentType: + m_TypeName: + m_ComponentIndex: 0 + m_AssetObject: {fileID: 0} + m_Prefab: {fileID: 0} + m_Enabled: 1 + m_NextButton: Next + m_DoneButton: Done + m_CompletedSound: {fileID: 8300000, guid: 93fbb109633e844259ea828442bda0cb, type: 3} + m_autoAdvance: 0 diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Tutorials/Tutorial3/Walkthrough3-08-Done.asset.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Tutorials/Tutorial3/Walkthrough3-08-Done.asset.meta" new file mode 100644 index 00000000..d084f975 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Tutorials/Tutorial3/Walkthrough3-08-Done.asset.meta" @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: e88567c6bec8848d8b483c4effc860fa +NativeFormatImporter: + externalObjects: {} + mainObjectFileID: 11400000 + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Tutorials/Tutorial3/Walkthrough3.asset" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Tutorials/Tutorial3/Walkthrough3.asset" new file mode 100644 index 00000000..80d440cc --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Tutorials/Tutorial3/Walkthrough3.asset" @@ -0,0 +1,54 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!114 &11400000 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 8f107dc6d4c984c45bdafd3bb15f98f0, type: 3} + m_Name: Walkthrough3 + m_EditorClassIdentifier: + m_WindowTitle: Walkthrough + m_TutorialTitle: Getting to know the Editor + m_LessonId: 48144 + m_Version: 0 + m_Scene: {fileID: 102900000, guid: f8c7069e6d9b2124b861144ca83d31e8, type: 3} + m_DefaultSceneCameraSettings: + m_CameraMode: 0 + m_FocusMode: 0 + m_Orthographic: 0 + m_Size: 0 + m_Pivot: {x: 0, y: 0, z: 0} + m_Rotation: {x: 0, y: 0, z: 0, w: 0} + m_FrameObject: + m_SceneGuid: + m_GameObjectGuid: + m_SerializedComponentType: + m_TypeName: + m_ComponentIndex: 0 + m_AssetObject: {fileID: 0} + m_Prefab: {fileID: 0} + m_Enabled: 0 + m_ExitBehavior: 1 + m_SkipTutorialBehavior: 0 + m_AssetSelectedOnExit: {fileID: 11400000, guid: 08f5116c6f71aa548a00fbd1f56fa92e, + type: 2} + m_WelcomePage: {fileID: 0} + m_CompletedPage: {fileID: 0} + IsWelcomingPageShowing: 1 + IsCompletedPageShowing: 0 + m_Pages: + m_Items: + - {fileID: 11400000, guid: 712d931472a604b86ae947ce442c91f4, type: 2} + - {fileID: 11400000, guid: ae39675d196364835b28f380e2190b8b, type: 2} + - {fileID: 11400000, guid: be18c412097e64f4d879aad1e2f17764, type: 2} + - {fileID: 11400000, guid: d976f93f028d14baa92454948e884504, type: 2} + - {fileID: 11400000, guid: b557a83bcc83a4b8f8f192ee86aedc5e, type: 2} + - {fileID: 11400000, guid: ecbde9254a26a49978e5df0fdf89ec73, type: 2} + - {fileID: 11400000, guid: 2369aced5fb244c9da60ff7d0068c59f, type: 2} + - {fileID: 11400000, guid: e88567c6bec8848d8b483c4effc860fa, type: 2} + m_WindowLayout: {fileID: 102900000, guid: cde0ced735db64fadb69328562c039e2, type: 3} diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Tutorials/Tutorial3/Walkthrough3.asset.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Tutorials/Tutorial3/Walkthrough3.asset.meta" new file mode 100644 index 00000000..2e9fc0ae --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Tutorials/Tutorial3/Walkthrough3.asset.meta" @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: ef019b20e49b14cfca4e98ecf5fd345d +NativeFormatImporter: + externalObjects: {} + mainObjectFileID: 11400000 + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Tutorials/Tutorial4.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Tutorials/Tutorial4.meta" new file mode 100644 index 00000000..11a1fa6c --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Tutorials/Tutorial4.meta" @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 20e92d0bbeff44df1a5f840f4248b62a +folderAsset: yes +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Tutorials/Tutorial4/WT-Drag-Prefab.mov" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Tutorials/Tutorial4/WT-Drag-Prefab.mov" new file mode 100644 index 00000000..8af2ceae Binary files /dev/null and "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Tutorials/Tutorial4/WT-Drag-Prefab.mov" differ diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Tutorials/Tutorial4/WT-Drag-Prefab.mov.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Tutorials/Tutorial4/WT-Drag-Prefab.mov.meta" new file mode 100644 index 00000000..c502e23e --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Tutorials/Tutorial4/WT-Drag-Prefab.mov.meta" @@ -0,0 +1,21 @@ +fileFormatVersion: 2 +guid: 3c125d5c0dc6d43c0aa871ef5cb1be5c +VideoClipImporter: + externalObjects: {} + serializedVersion: 2 + useLegacyImporter: 0 + quality: 0.5 + isColorLinear: 0 + frameRange: 0 + startFrame: -1 + endFrame: -1 + colorSpace: 0 + deinterlace: 0 + encodeAlpha: 0 + flipVertical: 0 + flipHorizontal: 0 + importAudio: 1 + targetSettings: {} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Tutorials/Tutorial4/WT-Frame-Prefab.png" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Tutorials/Tutorial4/WT-Frame-Prefab.png" new file mode 100644 index 00000000..153c2efa Binary files /dev/null and "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Tutorials/Tutorial4/WT-Frame-Prefab.png" differ diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Tutorials/Tutorial4/WT-Frame-Prefab.png.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Tutorials/Tutorial4/WT-Frame-Prefab.png.meta" new file mode 100644 index 00000000..34cf53d6 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Tutorials/Tutorial4/WT-Frame-Prefab.png.meta" @@ -0,0 +1,110 @@ +fileFormatVersion: 2 +guid: c182f9fcc248b45478168b1b59e5e5db +TextureImporter: + fileIDToRecycleName: {} + externalObjects: {} + serializedVersion: 9 + mipmaps: + mipMapMode: 0 + enableMipMap: 0 + sRGBTexture: 1 + linearTexture: 0 + fadeOut: 0 + borderMipMap: 0 + mipMapsPreserveCoverage: 0 + alphaTestReferenceValue: 0.5 + mipMapFadeDistanceStart: 1 + mipMapFadeDistanceEnd: 3 + bumpmap: + convertToNormalMap: 0 + externalNormalMap: 0 + heightScale: 0.25 + normalMapFilter: 0 + isReadable: 0 + streamingMipmaps: 0 + streamingMipmapsPriority: 0 + grayScaleToAlpha: 0 + generateCubemap: 6 + cubemapConvolution: 0 + seamlessCubemap: 0 + textureFormat: 1 + maxTextureSize: 2048 + textureSettings: + serializedVersion: 2 + filterMode: -1 + aniso: 1 + mipBias: -100 + wrapU: 1 + wrapV: 1 + wrapW: -1 + nPOTScale: 0 + lightmap: 0 + compressionQuality: 50 + spriteMode: 0 + spriteExtrude: 1 + spriteMeshType: 1 + alignment: 0 + spritePivot: {x: 0.5, y: 0.5} + spritePixelsToUnits: 100 + spriteBorder: {x: 0, y: 0, z: 0, w: 0} + spriteGenerateFallbackPhysicsShape: 1 + alphaUsage: 1 + alphaIsTransparency: 1 + spriteTessellationDetail: -1 + textureType: 2 + textureShape: 1 + singleChannelComponent: 0 + maxTextureSizeSet: 0 + compressionQualitySet: 0 + textureFormatSet: 0 + platformSettings: + - serializedVersion: 2 + buildTarget: DefaultTexturePlatform + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Standalone + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: WebGL + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 0 + spriteSheet: + serializedVersion: 2 + sprites: [] + outline: [] + physicsShape: [] + bones: [] + spriteID: + vertices: [] + indices: + edges: [] + weights: [] + spritePackingTag: + pSDRemoveMatte: 0 + pSDShowRemoveMatteOption: 0 + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Tutorials/Tutorial4/WT-Move-Object.mov" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Tutorials/Tutorial4/WT-Move-Object.mov" new file mode 100644 index 00000000..1c6c886f Binary files /dev/null and "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Tutorials/Tutorial4/WT-Move-Object.mov" differ diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Tutorials/Tutorial4/WT-Move-Object.mov.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Tutorials/Tutorial4/WT-Move-Object.mov.meta" new file mode 100644 index 00000000..758549be --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Tutorials/Tutorial4/WT-Move-Object.mov.meta" @@ -0,0 +1,21 @@ +fileFormatVersion: 2 +guid: 7498e49bfbfa841ecb3e2dfb6ed9e484 +VideoClipImporter: + externalObjects: {} + serializedVersion: 2 + useLegacyImporter: 0 + quality: 0.5 + isColorLinear: 0 + frameRange: 0 + startFrame: -1 + endFrame: -1 + colorSpace: 0 + deinterlace: 0 + encodeAlpha: 0 + flipVertical: 0 + flipHorizontal: 0 + importAudio: 1 + targetSettings: {} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Tutorials/Tutorial4/WT-Other-Tools.png" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Tutorials/Tutorial4/WT-Other-Tools.png" new file mode 100644 index 00000000..6018f867 Binary files /dev/null and "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Tutorials/Tutorial4/WT-Other-Tools.png" differ diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Tutorials/Tutorial4/WT-Other-Tools.png.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Tutorials/Tutorial4/WT-Other-Tools.png.meta" new file mode 100644 index 00000000..91f7d1c3 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Tutorials/Tutorial4/WT-Other-Tools.png.meta" @@ -0,0 +1,110 @@ +fileFormatVersion: 2 +guid: 52cfa90066af1461fa853fa8536a19dc +TextureImporter: + fileIDToRecycleName: {} + externalObjects: {} + serializedVersion: 9 + mipmaps: + mipMapMode: 0 + enableMipMap: 0 + sRGBTexture: 1 + linearTexture: 0 + fadeOut: 0 + borderMipMap: 0 + mipMapsPreserveCoverage: 0 + alphaTestReferenceValue: 0.5 + mipMapFadeDistanceStart: 1 + mipMapFadeDistanceEnd: 3 + bumpmap: + convertToNormalMap: 0 + externalNormalMap: 0 + heightScale: 0.25 + normalMapFilter: 0 + isReadable: 0 + streamingMipmaps: 0 + streamingMipmapsPriority: 0 + grayScaleToAlpha: 0 + generateCubemap: 6 + cubemapConvolution: 0 + seamlessCubemap: 0 + textureFormat: 1 + maxTextureSize: 2048 + textureSettings: + serializedVersion: 2 + filterMode: -1 + aniso: 1 + mipBias: -100 + wrapU: 1 + wrapV: 1 + wrapW: -1 + nPOTScale: 0 + lightmap: 0 + compressionQuality: 50 + spriteMode: 0 + spriteExtrude: 1 + spriteMeshType: 1 + alignment: 0 + spritePivot: {x: 0.5, y: 0.5} + spritePixelsToUnits: 100 + spriteBorder: {x: 0, y: 0, z: 0, w: 0} + spriteGenerateFallbackPhysicsShape: 1 + alphaUsage: 1 + alphaIsTransparency: 1 + spriteTessellationDetail: -1 + textureType: 2 + textureShape: 1 + singleChannelComponent: 0 + maxTextureSizeSet: 0 + compressionQualitySet: 0 + textureFormatSet: 0 + platformSettings: + - serializedVersion: 2 + buildTarget: DefaultTexturePlatform + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Standalone + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: WebGL + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 0 + spriteSheet: + serializedVersion: 2 + sprites: [] + outline: [] + physicsShape: [] + bones: [] + spriteID: + vertices: [] + indices: + edges: [] + weights: [] + spritePackingTag: + pSDRemoveMatte: 0 + pSDShowRemoveMatteOption: 0 + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Tutorials/Tutorial4/WT-Project-Window-Prefab.png" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Tutorials/Tutorial4/WT-Project-Window-Prefab.png" new file mode 100644 index 00000000..63e81f93 Binary files /dev/null and "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Tutorials/Tutorial4/WT-Project-Window-Prefab.png" differ diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Tutorials/Tutorial4/WT-Project-Window-Prefab.png.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Tutorials/Tutorial4/WT-Project-Window-Prefab.png.meta" new file mode 100644 index 00000000..91c68f7f --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Tutorials/Tutorial4/WT-Project-Window-Prefab.png.meta" @@ -0,0 +1,110 @@ +fileFormatVersion: 2 +guid: 7c4cbf7a27eb34a3f8679cc1b7d81533 +TextureImporter: + fileIDToRecycleName: {} + externalObjects: {} + serializedVersion: 9 + mipmaps: + mipMapMode: 0 + enableMipMap: 0 + sRGBTexture: 1 + linearTexture: 0 + fadeOut: 0 + borderMipMap: 0 + mipMapsPreserveCoverage: 0 + alphaTestReferenceValue: 0.5 + mipMapFadeDistanceStart: 1 + mipMapFadeDistanceEnd: 3 + bumpmap: + convertToNormalMap: 0 + externalNormalMap: 0 + heightScale: 0.25 + normalMapFilter: 0 + isReadable: 0 + streamingMipmaps: 0 + streamingMipmapsPriority: 0 + grayScaleToAlpha: 0 + generateCubemap: 6 + cubemapConvolution: 0 + seamlessCubemap: 0 + textureFormat: 1 + maxTextureSize: 2048 + textureSettings: + serializedVersion: 2 + filterMode: -1 + aniso: 1 + mipBias: -100 + wrapU: 1 + wrapV: 1 + wrapW: -1 + nPOTScale: 0 + lightmap: 0 + compressionQuality: 50 + spriteMode: 0 + spriteExtrude: 1 + spriteMeshType: 1 + alignment: 0 + spritePivot: {x: 0.5, y: 0.5} + spritePixelsToUnits: 100 + spriteBorder: {x: 0, y: 0, z: 0, w: 0} + spriteGenerateFallbackPhysicsShape: 1 + alphaUsage: 1 + alphaIsTransparency: 1 + spriteTessellationDetail: -1 + textureType: 2 + textureShape: 1 + singleChannelComponent: 0 + maxTextureSizeSet: 0 + compressionQualitySet: 0 + textureFormatSet: 0 + platformSettings: + - serializedVersion: 2 + buildTarget: DefaultTexturePlatform + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Standalone + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: WebGL + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 0 + spriteSheet: + serializedVersion: 2 + sprites: [] + outline: [] + physicsShape: [] + bones: [] + spriteID: + vertices: [] + indices: + edges: [] + weights: [] + spritePackingTag: + pSDRemoveMatte: 0 + pSDShowRemoveMatteOption: 0 + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Tutorials/Tutorial4/WT-Select-Move.mov" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Tutorials/Tutorial4/WT-Select-Move.mov" new file mode 100644 index 00000000..9d1b9471 Binary files /dev/null and "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Tutorials/Tutorial4/WT-Select-Move.mov" differ diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Tutorials/Tutorial4/WT-Select-Move.mov.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Tutorials/Tutorial4/WT-Select-Move.mov.meta" new file mode 100644 index 00000000..8ccdd527 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Tutorials/Tutorial4/WT-Select-Move.mov.meta" @@ -0,0 +1,21 @@ +fileFormatVersion: 2 +guid: 94f6d91b6f1fc4ae7a781af6b7e8e0f6 +VideoClipImporter: + externalObjects: {} + serializedVersion: 2 + useLegacyImporter: 0 + quality: 0.5 + isColorLinear: 0 + frameRange: 0 + startFrame: -1 + endFrame: -1 + colorSpace: 0 + deinterlace: 0 + encodeAlpha: 0 + flipVertical: 0 + flipHorizontal: 0 + importAudio: 1 + targetSettings: {} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Tutorials/Tutorial4/WT-Select-Prefab.mov" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Tutorials/Tutorial4/WT-Select-Prefab.mov" new file mode 100644 index 00000000..321aea68 Binary files /dev/null and "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Tutorials/Tutorial4/WT-Select-Prefab.mov" differ diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Tutorials/Tutorial4/WT-Select-Prefab.mov.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Tutorials/Tutorial4/WT-Select-Prefab.mov.meta" new file mode 100644 index 00000000..0116dc53 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Tutorials/Tutorial4/WT-Select-Prefab.mov.meta" @@ -0,0 +1,21 @@ +fileFormatVersion: 2 +guid: c41c34429a6a74d10bb842e196799bcb +VideoClipImporter: + externalObjects: {} + serializedVersion: 2 + useLegacyImporter: 0 + quality: 0.5 + isColorLinear: 0 + frameRange: 0 + startFrame: -1 + endFrame: -1 + colorSpace: 0 + deinterlace: 0 + encodeAlpha: 0 + flipVertical: 0 + flipHorizontal: 0 + importAudio: 1 + targetSettings: {} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Tutorials/Tutorial4/Walkthrough4-005.asset" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Tutorials/Tutorial4/Walkthrough4-005.asset" new file mode 100644 index 00000000..88b597d4 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Tutorials/Tutorial4/Walkthrough4-005.asset" @@ -0,0 +1,72 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!114 &11400000 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: ff771ccdf4150419d9ff4d342b069aae, type: 3} + m_Name: Walkthrough4-005 + m_EditorClassIdentifier: + m_SectionTitle: + m_Paragraphs: + m_Items: + - m_Type: 6 + m_Summary: + m_Text: + m_TutorialButtonText: + m_Tutorial: {fileID: 0} + m_Icons: + m_Items: [] + m_Image: {fileID: 2800000, guid: 2ca2357d648eb412d8129fa039b986fe, type: 3} + m_Video: {fileID: 0} + m_CriteriaCompletion: 0 + m_Criteria: + m_Items: [] + m_MaskingSettings: + m_MaskingEnabled: 1 + m_UnmaskedViews: [] + - m_Type: 0 + m_Summary: + m_Text: "Add Prefab\n\x03\x03\nTUTORIAL + \n\nPrefabs are a GameObject that has components + and properties, and is stored as an asset. It can be reused anywhere you want + in your game.\n\nProject window lists all the prefabs that are available + in this project, and we have a few that are ready to add to the Scene. \n\nClick + Start below to begin.\x03" + m_TutorialButtonText: + m_Tutorial: {fileID: 0} + m_Icons: + m_Items: [] + m_Image: {fileID: 0} + m_Video: {fileID: 0} + m_CriteriaCompletion: 0 + m_Criteria: + m_Items: [] + m_MaskingSettings: + m_MaskingEnabled: 1 + m_UnmaskedViews: [] + m_CameraSettings: + m_CameraMode: 0 + m_FocusMode: 0 + m_Orthographic: 0 + m_Size: 0 + m_Pivot: {x: 0, y: 0, z: 0} + m_Rotation: {x: 0, y: 0, z: 0, w: 0} + m_FrameObject: + m_SceneGuid: + m_GameObjectGuid: + m_SerializedComponentType: + m_TypeName: + m_ComponentIndex: 0 + m_AssetObject: {fileID: 0} + m_Prefab: {fileID: 0} + m_Enabled: 0 + m_NextButton: Start + m_DoneButton: Done + m_CompletedSound: {fileID: 8300000, guid: 93fbb109633e844259ea828442bda0cb, type: 3} + m_autoAdvance: 0 diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Tutorials/Tutorial4/Walkthrough4-005.asset.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Tutorials/Tutorial4/Walkthrough4-005.asset.meta" new file mode 100644 index 00000000..0056520c --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Tutorials/Tutorial4/Walkthrough4-005.asset.meta" @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: a3c0acd3a97a8464ea283a617b2bb20c +NativeFormatImporter: + externalObjects: {} + mainObjectFileID: 11400000 + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Tutorials/Tutorial4/Walkthrough4-006.asset" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Tutorials/Tutorial4/Walkthrough4-006.asset" new file mode 100644 index 00000000..19375561 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Tutorials/Tutorial4/Walkthrough4-006.asset" @@ -0,0 +1,121 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!114 &11400000 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: ff771ccdf4150419d9ff4d342b069aae, type: 3} + m_Name: Walkthrough4-006 + m_EditorClassIdentifier: + m_SectionTitle: + m_Paragraphs: + m_Items: + - m_Type: 6 + m_Summary: + m_Text: + m_TutorialButtonText: + m_Tutorial: {fileID: 0} + m_Icons: + m_Items: [] + m_Image: {fileID: 2800000, guid: 7c4cbf7a27eb34a3f8679cc1b7d81533, type: 3} + m_Video: {fileID: 0} + m_CriteriaCompletion: 0 + m_Criteria: + m_Items: [] + m_MaskingSettings: + m_MaskingEnabled: 1 + m_UnmaskedViews: + - m_SelectorType: 1 + m_ViewType: + m_TypeName: + m_EditorWindowType: + m_TypeName: UnityEditor.ProjectBrowser, UnityEditor, Version=0.0.0.0, + Culture=neutral, PublicKeyToken=null + m_AlternateEditorWindowTypes: + m_Items: [] + m_MaskType: 1 + m_MaskSizeModifier: 0 + m_UnmaskedControls: [] + - m_Type: 0 + m_Summary: Expand the Kart Folder + m_Text: "Prefabs in Project Window\n\nPrefabs can be + found in the Project window, they are represented by a blue cube icon. + \n\nUsually found within a Prefabs folder for organization, in this project + we have surfaced one prefab named BuildingShort to the Assets > Karting > + Prefabs -folder that you can add to the scene." + m_TutorialButtonText: + m_Tutorial: {fileID: 0} + m_Icons: + m_Items: [] + m_Image: {fileID: 0} + m_Video: {fileID: 0} + m_CriteriaCompletion: 0 + m_Criteria: + m_Items: + - type: + m_TypeName: Unity.InteractiveTutorials.RequiredSelectionCriterion, Unity.InteractiveTutorials.Core, + Version=0.0.0.0, Culture=neutral, PublicKeyToken=null + criterion: {fileID: 114063557330362332} + m_MaskingSettings: + m_MaskingEnabled: 1 + m_UnmaskedViews: + - m_SelectorType: 1 + m_ViewType: + m_TypeName: + m_EditorWindowType: + m_TypeName: UnityEditor.ProjectBrowser, UnityEditor, Version=0.0.0.0, + Culture=neutral, PublicKeyToken=null + m_AlternateEditorWindowTypes: + m_Items: [] + m_MaskType: 1 + m_MaskSizeModifier: 0 + m_UnmaskedControls: [] + m_CameraSettings: + m_CameraMode: 0 + m_FocusMode: 0 + m_Orthographic: 0 + m_Size: 0 + m_Pivot: {x: 0, y: 0, z: 0} + m_Rotation: {x: 0, y: 0, z: 0, w: 0} + m_FrameObject: + m_SceneGuid: + m_GameObjectGuid: + m_SerializedComponentType: + m_TypeName: + m_ComponentIndex: 0 + m_AssetObject: {fileID: 0} + m_Prefab: {fileID: 0} + m_Enabled: 0 + m_NextButton: Next + m_DoneButton: Done + m_CompletedSound: {fileID: 8300000, guid: 93fbb109633e844259ea828442bda0cb, type: 3} + m_autoAdvance: 0 +--- !u!114 &114063557330362332 +MonoBehaviour: + m_ObjectHideFlags: 1 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 255ef86cb95f04796b8e3b3f5b23efe7, type: 3} + m_Name: + m_EditorClassIdentifier: + m_ObjectReferences: + m_Items: + - m_SceneObjectReference: + m_SceneGuid: + m_GameObjectGuid: + m_SerializedComponentType: + m_TypeName: + m_ComponentIndex: 0 + m_AssetObject: {fileID: 102900000, guid: 4b2e40f60d44e4c4fbb86021aae748a1, + type: 3} + m_Prefab: {fileID: 0} + m_FutureObjectReference: {fileID: 0} diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Tutorials/Tutorial4/Walkthrough4-006.asset.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Tutorials/Tutorial4/Walkthrough4-006.asset.meta" new file mode 100644 index 00000000..169c227b --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Tutorials/Tutorial4/Walkthrough4-006.asset.meta" @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 1646972b18d5d4223ae5eddd7419a5cb +NativeFormatImporter: + externalObjects: {} + mainObjectFileID: 11400000 + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Tutorials/Tutorial4/Walkthrough4-015.asset" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Tutorials/Tutorial4/Walkthrough4-015.asset" new file mode 100644 index 00000000..66ca0033 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Tutorials/Tutorial4/Walkthrough4-015.asset" @@ -0,0 +1,137 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!114 &11400000 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: ff771ccdf4150419d9ff4d342b069aae, type: 3} + m_Name: Walkthrough4-015 + m_EditorClassIdentifier: + m_SectionTitle: + m_Paragraphs: + m_Items: + - m_Type: 7 + m_Summary: + m_Text: + m_TutorialButtonText: + m_Tutorial: {fileID: 0} + m_Icons: + m_Items: [] + m_Image: {fileID: 2800000, guid: fbac6d017c0c94896a775d728aaf3db4, type: 3} + m_Video: {fileID: 32900000, guid: c41c34429a6a74d10bb842e196799bcb, type: 3} + m_CriteriaCompletion: 0 + m_Criteria: + m_Items: [] + m_MaskingSettings: + m_MaskingEnabled: 1 + m_UnmaskedViews: + - m_SelectorType: 1 + m_ViewType: + m_TypeName: + m_EditorWindowType: + m_TypeName: UnityEditor.ProjectBrowser, UnityEditor, Version=0.0.0.0, + Culture=neutral, PublicKeyToken=null + m_AlternateEditorWindowTypes: + m_Items: [] + m_MaskType: 0 + m_MaskSizeModifier: 0 + m_UnmaskedControls: [] + - m_Type: 0 + m_Summary: + m_Text: 'Select Prefab + + + First, select BuildingShort Prefab in Project window. It can be found under + Assets > Karting' + m_TutorialButtonText: + m_Tutorial: {fileID: 0} + m_Icons: + m_Items: [] + m_Image: {fileID: 0} + m_Video: {fileID: 0} + m_CriteriaCompletion: 0 + m_Criteria: + m_Items: [] + m_MaskingSettings: + m_MaskingEnabled: 0 + m_UnmaskedViews: [] + - m_Type: 1 + m_Summary: Select the BuildingShort Prefab + m_Text: Click on the BuildingShort prefab in the Project window to select + it + m_TutorialButtonText: + m_Tutorial: {fileID: 0} + m_Icons: + m_Items: [] + m_Image: {fileID: 0} + m_Video: {fileID: 0} + m_CriteriaCompletion: 0 + m_Criteria: + m_Items: + - type: + m_TypeName: Unity.InteractiveTutorials.RequiredSelectionCriterion, Unity.InteractiveTutorials.Core, + Version=0.0.0.0, Culture=neutral, PublicKeyToken=null + criterion: {fileID: 114215036528487548} + m_MaskingSettings: + m_MaskingEnabled: 1 + m_UnmaskedViews: + - m_SelectorType: 1 + m_ViewType: + m_TypeName: + m_EditorWindowType: + m_TypeName: UnityEditor.ProjectBrowser, UnityEditor, Version=0.0.0.0, + Culture=neutral, PublicKeyToken=null + m_AlternateEditorWindowTypes: + m_Items: [] + m_MaskType: 0 + m_MaskSizeModifier: 0 + m_UnmaskedControls: [] + m_CameraSettings: + m_CameraMode: 0 + m_FocusMode: 0 + m_Orthographic: 0 + m_Size: 0 + m_Pivot: {x: 0, y: 0, z: 0} + m_Rotation: {x: 0, y: 0, z: 0, w: 0} + m_FrameObject: + m_SceneGuid: + m_GameObjectGuid: + m_SerializedComponentType: + m_TypeName: + m_ComponentIndex: 0 + m_AssetObject: {fileID: 0} + m_Prefab: {fileID: 0} + m_Enabled: 0 + m_NextButton: Next + m_DoneButton: Done + m_CompletedSound: {fileID: 8300000, guid: 93fbb109633e844259ea828442bda0cb, type: 3} + m_autoAdvance: 1 +--- !u!114 &114215036528487548 +MonoBehaviour: + m_ObjectHideFlags: 1 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 255ef86cb95f04796b8e3b3f5b23efe7, type: 3} + m_Name: + m_EditorClassIdentifier: + m_ObjectReferences: + m_Items: + - m_SceneObjectReference: + m_SceneGuid: + m_GameObjectGuid: + m_SerializedComponentType: + m_TypeName: + m_ComponentIndex: 0 + m_AssetObject: {fileID: 0} + m_Prefab: {fileID: 1861639547071064576, guid: 45c52fcc7429b214c8f9a6d85321ba77, + type: 3} + m_FutureObjectReference: {fileID: 0} diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Tutorials/Tutorial4/Walkthrough4-015.asset.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Tutorials/Tutorial4/Walkthrough4-015.asset.meta" new file mode 100644 index 00000000..e0e8c517 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Tutorials/Tutorial4/Walkthrough4-015.asset.meta" @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 562e608e72f564fd587ac4e4e8323957 +NativeFormatImporter: + externalObjects: {} + mainObjectFileID: 11400000 + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Tutorials/Tutorial4/Walkthrough4-020.asset" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Tutorials/Tutorial4/Walkthrough4-020.asset" new file mode 100644 index 00000000..8fc337a3 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Tutorials/Tutorial4/Walkthrough4-020.asset" @@ -0,0 +1,186 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!114 &11400000 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: ff771ccdf4150419d9ff4d342b069aae, type: 3} + m_Name: Walkthrough4-020 + m_EditorClassIdentifier: + m_SectionTitle: + m_Paragraphs: + m_Items: + - m_Type: 7 + m_Summary: + m_Text: + m_TutorialButtonText: + m_Tutorial: {fileID: 0} + m_Icons: + m_Items: [] + m_Image: {fileID: 2800000, guid: d731b425f66e94c74b9b3defb1ccd332, type: 3} + m_Video: {fileID: 32900000, guid: 3c125d5c0dc6d43c0aa871ef5cb1be5c, type: 3} + m_CriteriaCompletion: 0 + m_Criteria: + m_Items: [] + m_MaskingSettings: + m_MaskingEnabled: 1 + m_UnmaskedViews: + - m_SelectorType: 1 + m_ViewType: + m_TypeName: + m_EditorWindowType: + m_TypeName: UnityEditor.ProjectBrowser, UnityEditor, Version=0.0.0.0, + Culture=neutral, PublicKeyToken=null + m_AlternateEditorWindowTypes: + m_Items: [] + m_MaskType: 0 + m_MaskSizeModifier: 0 + m_UnmaskedControls: [] + - m_SelectorType: 1 + m_ViewType: + m_TypeName: + m_EditorWindowType: + m_TypeName: UnityEditor.SceneView, UnityEditor, Version=0.0.0.0, Culture=neutral, + PublicKeyToken=null + m_AlternateEditorWindowTypes: + m_Items: [] + m_MaskType: 0 + m_MaskSizeModifier: 0 + m_UnmaskedControls: [] + - m_Type: 0 + m_Summary: + m_Text: "Drag Prefab to Scene\n\nNow we\u2019re going + to drag the BuildingShort Prefab from the Project window, into the + Scene view. \n\nThis will instantiate it (also known as \u201Cspawning\u201D + or \u201Ccloning\u201D it) in the scene." + m_TutorialButtonText: + m_Tutorial: {fileID: 0} + m_Icons: + m_Items: [] + m_Image: {fileID: 0} + m_Video: {fileID: 0} + m_CriteriaCompletion: 0 + m_Criteria: + m_Items: [] + m_MaskingSettings: + m_MaskingEnabled: 0 + m_UnmaskedViews: [] + - m_Type: 1 + m_Summary: "Drag BuildingShort Prefab to Scene\t" + m_Text: Drag BuildingShort Prefab from the Project window into the empty + space in the Scene view. + m_TutorialButtonText: + m_Tutorial: {fileID: 0} + m_Icons: + m_Items: [] + m_Image: {fileID: 0} + m_Video: {fileID: 0} + m_CriteriaCompletion: 0 + m_Criteria: + m_Items: + - type: + m_TypeName: Unity.InteractiveTutorials.InstantiatePrefabCriterion, Unity.InteractiveTutorials.Core, + Version=0.0.0.0, Culture=neutral, PublicKeyToken=null + criterion: {fileID: 114155400192661620} + m_MaskingSettings: + m_MaskingEnabled: 1 + m_UnmaskedViews: + - m_SelectorType: 1 + m_ViewType: + m_TypeName: + m_EditorWindowType: + m_TypeName: UnityEditor.ProjectBrowser, UnityEditor, Version=0.0.0.0, + Culture=neutral, PublicKeyToken=null + m_AlternateEditorWindowTypes: + m_Items: [] + m_MaskType: 0 + m_MaskSizeModifier: 0 + m_UnmaskedControls: [] + - m_SelectorType: 1 + m_ViewType: + m_TypeName: + m_EditorWindowType: + m_TypeName: UnityEditor.SceneView, UnityEditor, Version=0.0.0.0, Culture=neutral, + PublicKeyToken=null + m_AlternateEditorWindowTypes: + m_Items: [] + m_MaskType: 0 + m_MaskSizeModifier: 0 + m_UnmaskedControls: [] + m_CameraSettings: + m_CameraMode: 1 + m_FocusMode: 0 + m_Orthographic: 0 + m_Size: 161.62846 + m_Pivot: {x: -18.777697, y: -50.11087, z: 35.16481} + m_Rotation: {x: -0.45937636, y: 0.0071921935, z: -0.0037197447, w: -0.8882049} + m_FrameObject: + m_SceneGuid: + m_GameObjectGuid: + m_SerializedComponentType: + m_TypeName: + m_ComponentIndex: 0 + m_AssetObject: {fileID: 0} + m_Prefab: {fileID: 0} + m_Enabled: 1 + m_NextButton: Next + m_DoneButton: Done + m_CompletedSound: {fileID: 8300000, guid: 93fbb109633e844259ea828442bda0cb, type: 3} + m_autoAdvance: 1 +--- !u!114 &114113261752726112 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 65e1fec86be44c61881dbc60a0ea2c02, type: 3} + m_Name: 'Paragraph 3, Criterion 1, 1: Buiding_Short (GameObject)' + m_EditorClassIdentifier: + m_ReferenceHolder: {fileID: 0} + m_Criterion: {fileID: 114155400192661620} + m_ReferenceName: '1: Buiding_Short (GameObject)' +--- !u!114 &114155400192661620 +MonoBehaviour: + m_ObjectHideFlags: 1 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: cd3e7c665e4144f519b7ee9de726ea5f, type: 3} + m_Name: + m_EditorClassIdentifier: + m_PrefabParent: {fileID: 1861639547071064576, guid: 45c52fcc7429b214c8f9a6d85321ba77, + type: 3} + m_FuturePrefabInstances: + m_Items: + - m_PrefabParent: {fileID: 1861639547071064576, guid: 45c52fcc7429b214c8f9a6d85321ba77, + type: 3} + m_FutureReference: {fileID: 114113261752726112} + - m_PrefabParent: {fileID: 5538800703641817082, guid: 45c52fcc7429b214c8f9a6d85321ba77, + type: 3} + m_FutureReference: {fileID: 114537518878008684} +--- !u!114 &114537518878008684 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 65e1fec86be44c61881dbc60a0ea2c02, type: 3} + m_Name: 'Paragraph 3, Criterion 1, 2: Buiding_Short (Transform)' + m_EditorClassIdentifier: + m_ReferenceHolder: {fileID: 0} + m_Criterion: {fileID: 114155400192661620} + m_ReferenceName: '2: Buiding_Short (Transform)' diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Tutorials/Tutorial4/Walkthrough4-020.asset.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Tutorials/Tutorial4/Walkthrough4-020.asset.meta" new file mode 100644 index 00000000..08f8712d --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Tutorials/Tutorial4/Walkthrough4-020.asset.meta" @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: be261f07c71d3462bbf00524e82591ad +NativeFormatImporter: + externalObjects: {} + mainObjectFileID: 11400000 + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Tutorials/Tutorial4/Walkthrough4-025.asset" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Tutorials/Tutorial4/Walkthrough4-025.asset" new file mode 100644 index 00000000..aff0fda6 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Tutorials/Tutorial4/Walkthrough4-025.asset" @@ -0,0 +1,179 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!114 &11400000 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: ff771ccdf4150419d9ff4d342b069aae, type: 3} + m_Name: Walkthrough4-025 + m_EditorClassIdentifier: + m_SectionTitle: + m_Paragraphs: + m_Items: + - m_Type: 6 + m_Summary: + m_Text: + m_TutorialButtonText: + m_Tutorial: {fileID: 0} + m_Icons: + m_Items: [] + m_Image: {fileID: 2800000, guid: c182f9fcc248b45478168b1b59e5e5db, type: 3} + m_Video: {fileID: 0} + m_CriteriaCompletion: 0 + m_Criteria: + m_Items: [] + m_MaskingSettings: + m_MaskingEnabled: 1 + m_UnmaskedViews: + - m_SelectorType: 1 + m_ViewType: + m_TypeName: + m_EditorWindowType: + m_TypeName: UnityEditor.SceneView, UnityEditor, Version=0.0.0.0, Culture=neutral, + PublicKeyToken=null + m_AlternateEditorWindowTypes: + m_Items: [] + m_MaskType: 0 + m_MaskSizeModifier: 0 + m_UnmaskedControls: [] + - m_SelectorType: 1 + m_ViewType: + m_TypeName: + m_EditorWindowType: + m_TypeName: UnityEditor.SceneHierarchyWindow, UnityEditor, Version=0.0.0.0, + Culture=neutral, PublicKeyToken=null + m_AlternateEditorWindowTypes: + m_Items: [] + m_MaskType: 0 + m_MaskSizeModifier: 0 + m_UnmaskedControls: [] + - m_Type: 0 + m_Summary: + m_Text: "Frame Prefab\n\nLet\u2019s frame the BuildingShort + Prefab instance in the Scene view." + m_TutorialButtonText: + m_Tutorial: {fileID: 0} + m_Icons: + m_Items: [] + m_Image: {fileID: 0} + m_Video: {fileID: 0} + m_CriteriaCompletion: 0 + m_Criteria: + m_Items: [] + m_MaskingSettings: + m_MaskingEnabled: 1 + m_UnmaskedViews: + - m_SelectorType: 1 + m_ViewType: + m_TypeName: + m_EditorWindowType: + m_TypeName: UnityEditor.SceneView, UnityEditor, Version=0.0.0.0, Culture=neutral, + PublicKeyToken=null + m_AlternateEditorWindowTypes: + m_Items: [] + m_MaskType: 0 + m_MaskSizeModifier: 0 + m_UnmaskedControls: [] + - m_SelectorType: 1 + m_ViewType: + m_TypeName: + m_EditorWindowType: + m_TypeName: UnityEditor.SceneHierarchyWindow, UnityEditor, Version=0.0.0.0, + Culture=neutral, PublicKeyToken=null + m_AlternateEditorWindowTypes: + m_Items: [] + m_MaskType: 0 + m_MaskSizeModifier: 0 + m_UnmaskedControls: [] + - m_Type: 1 + m_Summary: Frame the BuildingShort + m_Text: Ensure that the BuildingShort Prefab is still selected in the hierarchy, + and with your cursor over the Scene view, go to Edit > Frame selected + or Press F on the keyboard to frame the Prefab. + m_TutorialButtonText: + m_Tutorial: {fileID: 0} + m_Icons: + m_Items: [] + m_Image: {fileID: 0} + m_Video: {fileID: 0} + m_CriteriaCompletion: 0 + m_Criteria: + m_Items: + - type: + m_TypeName: Unity.InteractiveTutorials.FrameSelectedCriterion, Unity.InteractiveTutorials.Core, + Version=0.0.0.0, Culture=neutral, PublicKeyToken=null + criterion: {fileID: 114014843029059974} + m_MaskingSettings: + m_MaskingEnabled: 1 + m_UnmaskedViews: + - m_SelectorType: 1 + m_ViewType: + m_TypeName: + m_EditorWindowType: + m_TypeName: UnityEditor.SceneView, UnityEditor, Version=0.0.0.0, Culture=neutral, + PublicKeyToken=null + m_AlternateEditorWindowTypes: + m_Items: [] + m_MaskType: 0 + m_MaskSizeModifier: 0 + m_UnmaskedControls: [] + - m_SelectorType: 1 + m_ViewType: + m_TypeName: + m_EditorWindowType: + m_TypeName: UnityEditor.SceneHierarchyWindow, UnityEditor, Version=0.0.0.0, + Culture=neutral, PublicKeyToken=null + m_AlternateEditorWindowTypes: + m_Items: [] + m_MaskType: 0 + m_MaskSizeModifier: 0 + m_UnmaskedControls: [] + m_CameraSettings: + m_CameraMode: 1 + m_FocusMode: 0 + m_Orthographic: 0 + m_Size: 60.604446 + m_Pivot: {x: 15.999866, y: 0.87356436, z: 0.030073643} + m_Rotation: {x: 0.5, y: 0, z: 0, w: 0.8660254} + m_FrameObject: + m_SceneGuid: + m_GameObjectGuid: + m_SerializedComponentType: + m_TypeName: + m_ComponentIndex: 0 + m_AssetObject: {fileID: 0} + m_Prefab: {fileID: 0} + m_Enabled: 1 + m_NextButton: Next + m_DoneButton: Done + m_CompletedSound: {fileID: 8300000, guid: 93fbb109633e844259ea828442bda0cb, type: 3} + m_autoAdvance: 1 +--- !u!114 &114014843029059974 +MonoBehaviour: + m_ObjectHideFlags: 1 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 065f6938014794cff8ac3d1382107ec8, type: 3} + m_Name: + m_EditorClassIdentifier: + m_ObjectReferences: + m_Items: + - m_SceneObjectReference: + m_SceneGuid: + m_GameObjectGuid: + m_SerializedComponentType: + m_TypeName: + m_ComponentIndex: 0 + m_AssetObject: {fileID: 0} + m_Prefab: {fileID: 0} + m_FutureObjectReference: {fileID: 114113261752726112, guid: be261f07c71d3462bbf00524e82591ad, + type: 2} diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Tutorials/Tutorial4/Walkthrough4-025.asset.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Tutorials/Tutorial4/Walkthrough4-025.asset.meta" new file mode 100644 index 00000000..fbbc607c --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Tutorials/Tutorial4/Walkthrough4-025.asset.meta" @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 925c9c088984d4481ba4151bb9eba820 +NativeFormatImporter: + externalObjects: {} + mainObjectFileID: 11400000 + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Tutorials/Tutorial4/Walkthrough4-031.asset" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Tutorials/Tutorial4/Walkthrough4-031.asset" new file mode 100644 index 00000000..9a94571d --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Tutorials/Tutorial4/Walkthrough4-031.asset" @@ -0,0 +1,145 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!114 &11400000 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: ff771ccdf4150419d9ff4d342b069aae, type: 3} + m_Name: Walkthrough4-031 + m_EditorClassIdentifier: + m_SectionTitle: + m_Paragraphs: + m_Items: + - m_Type: 7 + m_Summary: + m_Text: + m_TutorialButtonText: + m_Tutorial: {fileID: 0} + m_Icons: + m_Items: [] + m_Image: {fileID: 2800000, guid: fcd39ed5b2915443e80bf698d03ed827, type: 3} + m_Video: {fileID: 32900000, guid: 94f6d91b6f1fc4ae7a781af6b7e8e0f6, type: 3} + m_CriteriaCompletion: 0 + m_Criteria: + m_Items: [] + m_MaskingSettings: + m_MaskingEnabled: 1 + m_UnmaskedViews: + - m_SelectorType: 0 + m_ViewType: + m_TypeName: UnityEditor.Toolbar, UnityEditor, Version=0.0.0.0, Culture=neutral, + PublicKeyToken=null + m_EditorWindowType: + m_TypeName: + m_AlternateEditorWindowTypes: + m_Items: [] + m_MaskType: 0 + m_MaskSizeModifier: 0 + m_UnmaskedControls: + - m_SelectorMode: 1 + m_GUIContent: + m_Text: + m_Image: {fileID: 0} + m_Tooltip: + m_ControlName: ToolbarPersistentToolsTranslate + m_PropertyPath: + m_TargetType: + m_TypeName: + m_GUIStyleName: + - m_Type: 0 + m_Summary: + m_Text: 'Select Move Tool + + + Let''s position the Building by using the Move Tool.' + m_TutorialButtonText: + m_Tutorial: {fileID: 0} + m_Icons: + m_Items: [] + m_Image: {fileID: 0} + m_Video: {fileID: 0} + m_CriteriaCompletion: 0 + m_Criteria: + m_Items: [] + m_MaskingSettings: + m_MaskingEnabled: 0 + m_UnmaskedViews: [] + - m_Type: 1 + m_Summary: Select the Move Tool + m_Text: "Click the Move Tool in the upper left corner of the Toolbar at the + top of the editor. \n\nYou can also use keyboard shortcut W." + m_TutorialButtonText: + m_Tutorial: {fileID: 0} + m_Icons: + m_Items: [] + m_Image: {fileID: 0} + m_Video: {fileID: 0} + m_CriteriaCompletion: 0 + m_Criteria: + m_Items: + - type: + m_TypeName: Unity.InteractiveTutorials.ActiveToolCriterion, Unity.InteractiveTutorials.Core, + Version=0.0.0.0, Culture=neutral, PublicKeyToken=null + criterion: {fileID: 114906929772738234} + m_MaskingSettings: + m_MaskingEnabled: 1 + m_UnmaskedViews: + - m_SelectorType: 0 + m_ViewType: + m_TypeName: UnityEditor.Toolbar, UnityEditor, Version=0.0.0.0, Culture=neutral, + PublicKeyToken=null + m_EditorWindowType: + m_TypeName: + m_AlternateEditorWindowTypes: + m_Items: [] + m_MaskType: 0 + m_MaskSizeModifier: 0 + m_UnmaskedControls: + - m_SelectorMode: 1 + m_GUIContent: + m_Text: + m_Image: {fileID: 0} + m_Tooltip: + m_ControlName: ToolbarPersistentToolsTranslate + m_PropertyPath: + m_TargetType: + m_TypeName: + m_GUIStyleName: + m_CameraSettings: + m_CameraMode: 0 + m_FocusMode: 0 + m_Orthographic: 0 + m_Size: 0 + m_Pivot: {x: 0, y: 0, z: 0} + m_Rotation: {x: 0, y: 0, z: 0, w: 0} + m_FrameObject: + m_SceneGuid: + m_GameObjectGuid: + m_SerializedComponentType: + m_TypeName: + m_ComponentIndex: 0 + m_AssetObject: {fileID: 0} + m_Prefab: {fileID: 0} + m_Enabled: 0 + m_NextButton: Next + m_DoneButton: Done + m_CompletedSound: {fileID: 8300000, guid: 93fbb109633e844259ea828442bda0cb, type: 3} + m_autoAdvance: 1 +--- !u!114 &114906929772738234 +MonoBehaviour: + m_ObjectHideFlags: 1 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 09cf94368c18acd4b87b173cdb62b502, type: 3} + m_Name: + m_EditorClassIdentifier: + m_TargetTool: 1 diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Tutorials/Tutorial4/Walkthrough4-031.asset.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Tutorials/Tutorial4/Walkthrough4-031.asset.meta" new file mode 100644 index 00000000..c55acdbd --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Tutorials/Tutorial4/Walkthrough4-031.asset.meta" @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: fb1142c575fff4f0abbd81cfa7064e2c +NativeFormatImporter: + externalObjects: {} + mainObjectFileID: 11400000 + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Tutorials/Tutorial4/Walkthrough4-032.asset" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Tutorials/Tutorial4/Walkthrough4-032.asset" new file mode 100644 index 00000000..037f1bd2 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Tutorials/Tutorial4/Walkthrough4-032.asset" @@ -0,0 +1,243 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!114 &11400000 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: ff771ccdf4150419d9ff4d342b069aae, type: 3} + m_Name: Walkthrough4-032 + m_EditorClassIdentifier: + m_SectionTitle: + m_Paragraphs: + m_Items: + - m_Type: 7 + m_Summary: + m_Text: + m_TutorialButtonText: + m_Tutorial: {fileID: 0} + m_Icons: + m_Items: [] + m_Image: {fileID: 0} + m_Video: {fileID: 32900000, guid: 7498e49bfbfa841ecb3e2dfb6ed9e484, type: 3} + m_CriteriaCompletion: 1 + m_Criteria: + m_Items: [] + m_MaskingSettings: + m_MaskingEnabled: 1 + m_UnmaskedViews: + - m_SelectorType: 0 + m_ViewType: + m_TypeName: UnityEditor.Toolbar, UnityEditor, Version=0.0.0.0, Culture=neutral, + PublicKeyToken=null + m_EditorWindowType: + m_TypeName: + m_AlternateEditorWindowTypes: + m_Items: [] + m_MaskType: 0 + m_MaskSizeModifier: 0 + m_UnmaskedControls: + - m_SelectorMode: 1 + m_GUIContent: + m_Text: + m_Image: {fileID: 0} + m_Tooltip: + m_ControlName: ToolbarPersistentToolsTranslate + m_PropertyPath: + m_TargetType: + m_TypeName: + m_GUIStyleName: + - m_SelectorType: 1 + m_ViewType: + m_TypeName: + m_EditorWindowType: + m_TypeName: UnityEditor.SceneView, UnityEditor, Version=0.0.0.0, Culture=neutral, + PublicKeyToken=null + m_AlternateEditorWindowTypes: + m_Items: [] + m_MaskType: 0 + m_MaskSizeModifier: 0 + m_UnmaskedControls: [] + - m_Type: 0 + m_Summary: + m_Text: 'Move Building + + + Reposition the Building Prefab instance in the scene by using the Move Tool.' + m_TutorialButtonText: + m_Tutorial: {fileID: 0} + m_Icons: + m_Items: [] + m_Image: {fileID: 0} + m_Video: {fileID: 0} + m_CriteriaCompletion: 0 + m_Criteria: + m_Items: [] + m_MaskingSettings: + m_MaskingEnabled: 0 + m_UnmaskedViews: [] + - m_Type: 1 + m_Summary: Reposition BuildingShort + m_Text: Drag the red, blue or green handles to move your Prefab around. Place + it wherever you think it looks good! + m_TutorialButtonText: + m_Tutorial: {fileID: 0} + m_Icons: + m_Items: [] + m_Image: {fileID: 0} + m_Video: {fileID: 0} + m_CriteriaCompletion: 1 + m_Criteria: + m_Items: + - type: + m_TypeName: Unity.InteractiveTutorials.PropertyModificationCriterion, + Unity.InteractiveTutorials.Core, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null + criterion: {fileID: 114231739597224594} + - type: + m_TypeName: Unity.InteractiveTutorials.PropertyModificationCriterion, + Unity.InteractiveTutorials.Core, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null + criterion: {fileID: 114748253409174282} + - type: + m_TypeName: Unity.InteractiveTutorials.PropertyModificationCriterion, + Unity.InteractiveTutorials.Core, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null + criterion: {fileID: 114026550283571882} + m_MaskingSettings: + m_MaskingEnabled: 1 + m_UnmaskedViews: + - m_SelectorType: 0 + m_ViewType: + m_TypeName: UnityEditor.Toolbar, UnityEditor, Version=0.0.0.0, Culture=neutral, + PublicKeyToken=null + m_EditorWindowType: + m_TypeName: + m_AlternateEditorWindowTypes: + m_Items: [] + m_MaskType: 0 + m_MaskSizeModifier: 0 + m_UnmaskedControls: + - m_SelectorMode: 1 + m_GUIContent: + m_Text: + m_Image: {fileID: 0} + m_Tooltip: + m_ControlName: ToolbarPersistentToolsTranslate + m_PropertyPath: + m_TargetType: + m_TypeName: + m_GUIStyleName: + - m_SelectorType: 1 + m_ViewType: + m_TypeName: + m_EditorWindowType: + m_TypeName: UnityEditor.SceneView, UnityEditor, Version=0.0.0.0, Culture=neutral, + PublicKeyToken=null + m_AlternateEditorWindowTypes: + m_Items: [] + m_MaskType: 0 + m_MaskSizeModifier: 0 + m_UnmaskedControls: [] + m_CameraSettings: + m_CameraMode: 0 + m_FocusMode: 0 + m_Orthographic: 0 + m_Size: 0 + m_Pivot: {x: 0, y: 0, z: 0} + m_Rotation: {x: 0, y: 0, z: 0, w: 0} + m_FrameObject: + m_SceneGuid: + m_GameObjectGuid: + m_SerializedComponentType: + m_TypeName: + m_ComponentIndex: 0 + m_AssetObject: {fileID: 0} + m_Prefab: {fileID: 0} + m_Enabled: 0 + m_NextButton: Next + m_DoneButton: Done + m_CompletedSound: {fileID: 8300000, guid: 93fbb109633e844259ea828442bda0cb, type: 3} + m_autoAdvance: 0 +--- !u!114 &114026550283571882 +MonoBehaviour: + m_ObjectHideFlags: 1 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 5e52eaa6fdf2a4794ba81c7bc450905e, type: 3} + m_Name: + m_EditorClassIdentifier: + m_PropertyPath: m_LocalPosition.z + m_TargetValueMode: 1 + m_TargetValue: + m_TargetValueType: 1 + m_Target: + m_SceneObjectReference: + m_SceneGuid: + m_GameObjectGuid: + m_SerializedComponentType: + m_TypeName: + m_ComponentIndex: 0 + m_AssetObject: {fileID: 0} + m_Prefab: {fileID: 0} + m_FutureObjectReference: {fileID: 114537518878008684, guid: be261f07c71d3462bbf00524e82591ad, + type: 2} +--- !u!114 &114231739597224594 +MonoBehaviour: + m_ObjectHideFlags: 1 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 5e52eaa6fdf2a4794ba81c7bc450905e, type: 3} + m_Name: + m_EditorClassIdentifier: + m_PropertyPath: m_LocalPosition.x + m_TargetValueMode: 1 + m_TargetValue: + m_TargetValueType: 1 + m_Target: + m_SceneObjectReference: + m_SceneGuid: + m_GameObjectGuid: + m_SerializedComponentType: + m_TypeName: + m_ComponentIndex: 0 + m_AssetObject: {fileID: 0} + m_Prefab: {fileID: 0} + m_FutureObjectReference: {fileID: 114537518878008684, guid: be261f07c71d3462bbf00524e82591ad, + type: 2} +--- !u!114 &114748253409174282 +MonoBehaviour: + m_ObjectHideFlags: 1 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 5e52eaa6fdf2a4794ba81c7bc450905e, type: 3} + m_Name: + m_EditorClassIdentifier: + m_PropertyPath: m_LocalPosition.y + m_TargetValueMode: 1 + m_TargetValue: + m_TargetValueType: 1 + m_Target: + m_SceneObjectReference: + m_SceneGuid: + m_GameObjectGuid: + m_SerializedComponentType: + m_TypeName: + m_ComponentIndex: 0 + m_AssetObject: {fileID: 0} + m_Prefab: {fileID: 0} + m_FutureObjectReference: {fileID: 114537518878008684, guid: be261f07c71d3462bbf00524e82591ad, + type: 2} diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Tutorials/Tutorial4/Walkthrough4-032.asset.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Tutorials/Tutorial4/Walkthrough4-032.asset.meta" new file mode 100644 index 00000000..fd4d17bc --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Tutorials/Tutorial4/Walkthrough4-032.asset.meta" @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 9e40b27755e7c417bb209bc003d8b464 +NativeFormatImporter: + externalObjects: {} + mainObjectFileID: 11400000 + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Tutorials/Tutorial4/Walkthrough4-035.asset" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Tutorials/Tutorial4/Walkthrough4-035.asset" new file mode 100644 index 00000000..a64be01b --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Tutorials/Tutorial4/Walkthrough4-035.asset" @@ -0,0 +1,174 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!114 &11400000 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: ff771ccdf4150419d9ff4d342b069aae, type: 3} + m_Name: Walkthrough4-035 + m_EditorClassIdentifier: + m_SectionTitle: + m_Paragraphs: + m_Items: + - m_Type: 6 + m_Summary: + m_Text: + m_TutorialButtonText: + m_Tutorial: {fileID: 0} + m_Icons: + m_Items: [] + m_Image: {fileID: 2800000, guid: 52cfa90066af1461fa853fa8536a19dc, type: 3} + m_Video: {fileID: 0} + m_CriteriaCompletion: 0 + m_Criteria: + m_Items: [] + m_MaskingSettings: + m_MaskingEnabled: 1 + m_UnmaskedViews: + - m_SelectorType: 0 + m_ViewType: + m_TypeName: UnityEditor.Toolbar, UnityEditor, Version=0.0.0.0, Culture=neutral, + PublicKeyToken=null + m_EditorWindowType: + m_TypeName: + m_AlternateEditorWindowTypes: + m_Items: [] + m_MaskType: 0 + m_MaskSizeModifier: 0 + m_UnmaskedControls: + - m_SelectorMode: 1 + m_GUIContent: + m_Text: + m_Image: {fileID: 0} + m_Tooltip: + m_ControlName: ToolbarPersistentToolsTranslate + m_PropertyPath: + m_TargetType: + m_TypeName: + m_GUIStyleName: + - m_SelectorMode: 1 + m_GUIContent: + m_Text: + m_Image: {fileID: 0} + m_Tooltip: + m_ControlName: ToolbarPersistentToolsRotate + m_PropertyPath: + m_TargetType: + m_TypeName: + m_GUIStyleName: + - m_SelectorMode: 1 + m_GUIContent: + m_Text: + m_Image: {fileID: 0} + m_Tooltip: + m_ControlName: ToolbarPersistentToolsScale + m_PropertyPath: + m_TargetType: + m_TypeName: + m_GUIStyleName: + - m_SelectorType: 1 + m_ViewType: + m_TypeName: + m_EditorWindowType: + m_TypeName: UnityEditor.SceneView, UnityEditor, Version=0.0.0.0, Culture=neutral, + PublicKeyToken=null + m_AlternateEditorWindowTypes: + m_Items: [] + m_MaskType: 0 + m_MaskSizeModifier: 0 + m_UnmaskedControls: [] + - m_Type: 0 + m_Summary: + m_Text: "Rotate and Scale\n\nGreat! You now know what + a Prefab is, how to add it to an open scene and position it. Why not try out + some of the other tools in Toolbar? \n\nThere\u2019s a Rotate Tool + (E) and a Scale Tool (R) to play with.\n\nClick Next to continue." + m_TutorialButtonText: + m_Tutorial: {fileID: 0} + m_Icons: + m_Items: [] + m_Image: {fileID: 0} + m_Video: {fileID: 0} + m_CriteriaCompletion: 0 + m_Criteria: + m_Items: [] + m_MaskingSettings: + m_MaskingEnabled: 1 + m_UnmaskedViews: + - m_SelectorType: 0 + m_ViewType: + m_TypeName: UnityEditor.Toolbar, UnityEditor, Version=0.0.0.0, Culture=neutral, + PublicKeyToken=null + m_EditorWindowType: + m_TypeName: + m_AlternateEditorWindowTypes: + m_Items: [] + m_MaskType: 0 + m_MaskSizeModifier: 0 + m_UnmaskedControls: + - m_SelectorMode: 1 + m_GUIContent: + m_Text: + m_Image: {fileID: 0} + m_Tooltip: + m_ControlName: ToolbarPersistentToolsTranslate + m_PropertyPath: + m_TargetType: + m_TypeName: + m_GUIStyleName: + - m_SelectorMode: 1 + m_GUIContent: + m_Text: + m_Image: {fileID: 0} + m_Tooltip: + m_ControlName: ToolbarPersistentToolsRotate + m_PropertyPath: + m_TargetType: + m_TypeName: + m_GUIStyleName: + - m_SelectorMode: 1 + m_GUIContent: + m_Text: + m_Image: {fileID: 0} + m_Tooltip: + m_ControlName: ToolbarPersistentToolsScale + m_PropertyPath: + m_TargetType: + m_TypeName: + m_GUIStyleName: + - m_SelectorType: 1 + m_ViewType: + m_TypeName: + m_EditorWindowType: + m_TypeName: UnityEditor.SceneView, UnityEditor, Version=0.0.0.0, Culture=neutral, + PublicKeyToken=null + m_AlternateEditorWindowTypes: + m_Items: [] + m_MaskType: 0 + m_MaskSizeModifier: 0 + m_UnmaskedControls: [] + m_CameraSettings: + m_CameraMode: 0 + m_FocusMode: 0 + m_Orthographic: 0 + m_Size: 0 + m_Pivot: {x: 0, y: 0, z: 0} + m_Rotation: {x: 0, y: 0, z: 0, w: 0} + m_FrameObject: + m_SceneGuid: + m_GameObjectGuid: + m_SerializedComponentType: + m_TypeName: + m_ComponentIndex: 0 + m_AssetObject: {fileID: 0} + m_Prefab: {fileID: 0} + m_Enabled: 0 + m_NextButton: Next + m_DoneButton: Done + m_CompletedSound: {fileID: 8300000, guid: 93fbb109633e844259ea828442bda0cb, type: 3} + m_autoAdvance: 0 diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Tutorials/Tutorial4/Walkthrough4-035.asset.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Tutorials/Tutorial4/Walkthrough4-035.asset.meta" new file mode 100644 index 00000000..93d5488b --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Tutorials/Tutorial4/Walkthrough4-035.asset.meta" @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 423bbef88c09e457caf11e626b5039fa +NativeFormatImporter: + externalObjects: {} + mainObjectFileID: 11400000 + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Tutorials/Tutorial4/Walkthrough4-040.asset" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Tutorials/Tutorial4/Walkthrough4-040.asset" new file mode 100644 index 00000000..d40376f6 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Tutorials/Tutorial4/Walkthrough4-040.asset" @@ -0,0 +1,86 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!114 &11400000 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: ff771ccdf4150419d9ff4d342b069aae, type: 3} + m_Name: Walkthrough4-040 + m_EditorClassIdentifier: + m_SectionTitle: + m_Paragraphs: + m_Items: + - m_Type: 6 + m_Summary: + m_Text: + m_TutorialButtonText: 'Walkthrough 5: Building your game' + m_Tutorial: {fileID: 11400000, guid: 5a1808b6ca2b3422381c2337d4a493b3, type: 2} + m_Icons: + m_Items: [] + m_Image: {fileID: 2800000, guid: cf2b88c8b41ea4e42ba6e17726c32b87, type: 3} + m_Video: {fileID: 0} + m_CriteriaCompletion: 0 + m_Criteria: + m_Items: [] + m_MaskingSettings: + m_MaskingEnabled: 1 + m_UnmaskedViews: [] + - m_Type: 0 + m_Summary: + m_Text: 'Tutorial Completed + + + Next - To learn how to export a build of your game you can play outside of + Unity, continue to the next tutorial.' + m_TutorialButtonText: + m_Tutorial: {fileID: 0} + m_Icons: + m_Items: [] + m_Image: {fileID: 0} + m_Video: {fileID: 0} + m_CriteriaCompletion: 0 + m_Criteria: + m_Items: [] + m_MaskingSettings: + m_MaskingEnabled: 1 + m_UnmaskedViews: [] + - m_Type: 2 + m_Summary: + m_Text: + m_TutorialButtonText: 'Tutorial: Build and Share' + m_Tutorial: {fileID: 11400000, guid: 5a1808b6ca2b3422381c2337d4a493b3, type: 2} + m_Icons: + m_Items: [] + m_Image: {fileID: 0} + m_Video: {fileID: 0} + m_CriteriaCompletion: 0 + m_Criteria: + m_Items: [] + m_MaskingSettings: + m_MaskingEnabled: 1 + m_UnmaskedViews: [] + m_CameraSettings: + m_CameraMode: 0 + m_FocusMode: 0 + m_Orthographic: 0 + m_Size: 0 + m_Pivot: {x: 0, y: 0, z: 0} + m_Rotation: {x: 0, y: 0, z: 0, w: 0} + m_FrameObject: + m_SceneGuid: + m_GameObjectGuid: + m_SerializedComponentType: + m_TypeName: + m_ComponentIndex: 0 + m_AssetObject: {fileID: 0} + m_Prefab: {fileID: 0} + m_Enabled: 0 + m_NextButton: Next + m_DoneButton: Done + m_CompletedSound: {fileID: 8300000, guid: 93fbb109633e844259ea828442bda0cb, type: 3} + m_autoAdvance: 0 diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Tutorials/Tutorial4/Walkthrough4-040.asset.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Tutorials/Tutorial4/Walkthrough4-040.asset.meta" new file mode 100644 index 00000000..94a4d689 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Tutorials/Tutorial4/Walkthrough4-040.asset.meta" @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 426c2ecafb50d45939c113b173a202a3 +NativeFormatImporter: + externalObjects: {} + mainObjectFileID: 11400000 + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Tutorials/Tutorial4/Walkthrough4.asset" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Tutorials/Tutorial4/Walkthrough4.asset" new file mode 100644 index 00000000..8f12c9d5 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Tutorials/Tutorial4/Walkthrough4.asset" @@ -0,0 +1,51 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!114 &11400000 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 8f107dc6d4c984c45bdafd3bb15f98f0, type: 3} + m_Name: Walkthrough4 + m_EditorClassIdentifier: + m_TutorialTitle: Adding a Prefab + m_LessonId: 48145 + m_Version: 0 + m_Scene: {fileID: 102900000, guid: f8c7069e6d9b2124b861144ca83d31e8, type: 3} + m_DefaultSceneCameraSettings: + m_CameraMode: 0 + m_FocusMode: 0 + m_Orthographic: 0 + m_Size: 0 + m_Pivot: {x: 0, y: 0, z: 0} + m_Rotation: {x: 0, y: 0, z: 0, w: 0} + m_FrameObject: + m_SceneGuid: + m_GameObjectGuid: + m_SerializedComponentType: + m_TypeName: + m_ComponentIndex: 0 + m_AssetObject: {fileID: 0} + m_Prefab: {fileID: 0} + m_Enabled: 0 + m_ExitBehavior: 1 + m_SkipTutorialBehavior: 0 + m_AssetSelectedOnExit: {fileID: 11400000, guid: 08f5116c6f71aa548a00fbd1f56fa92e, + type: 2} + m_WelcomePage: {fileID: 0} + m_CompletedPage: {fileID: 0} + IsWelcomingPageShowing: 1 + IsCompletedPageShowing: 0 + m_Pages: + m_Items: + - {fileID: 11400000, guid: a3c0acd3a97a8464ea283a617b2bb20c, type: 2} + - {fileID: 11400000, guid: be261f07c71d3462bbf00524e82591ad, type: 2} + - {fileID: 11400000, guid: fb1142c575fff4f0abbd81cfa7064e2c, type: 2} + - {fileID: 11400000, guid: 9e40b27755e7c417bb209bc003d8b464, type: 2} + - {fileID: 11400000, guid: 423bbef88c09e457caf11e626b5039fa, type: 2} + - {fileID: 11400000, guid: 426c2ecafb50d45939c113b173a202a3, type: 2} + m_WindowLayout: {fileID: 102900000, guid: cde0ced735db64fadb69328562c039e2, type: 3} diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Tutorials/Tutorial4/Walkthrough4.asset.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Tutorials/Tutorial4/Walkthrough4.asset.meta" new file mode 100644 index 00000000..ef4c84a0 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Tutorials/Tutorial4/Walkthrough4.asset.meta" @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 351b553575cb34b12945f5996095329d +NativeFormatImporter: + externalObjects: {} + mainObjectFileID: 11400000 + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Tutorials/Tutorial5.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Tutorials/Tutorial5.meta" new file mode 100644 index 00000000..1662a905 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Tutorials/Tutorial5.meta" @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 57fea832454984f9a805b68e3799a6b0 +folderAsset: yes +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Tutorials/Tutorial5/WT-Add-Open-Scenes.mov" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Tutorials/Tutorial5/WT-Add-Open-Scenes.mov" new file mode 100644 index 00000000..a14ac7cb Binary files /dev/null and "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Tutorials/Tutorial5/WT-Add-Open-Scenes.mov" differ diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Tutorials/Tutorial5/WT-Add-Open-Scenes.mov.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Tutorials/Tutorial5/WT-Add-Open-Scenes.mov.meta" new file mode 100644 index 00000000..47715ddb --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Tutorials/Tutorial5/WT-Add-Open-Scenes.mov.meta" @@ -0,0 +1,21 @@ +fileFormatVersion: 2 +guid: 0daf5b95eafb54bb399795f872349396 +VideoClipImporter: + externalObjects: {} + serializedVersion: 2 + useLegacyImporter: 0 + quality: 0.5 + isColorLinear: 0 + frameRange: 0 + startFrame: -1 + endFrame: -1 + colorSpace: 0 + deinterlace: 0 + encodeAlpha: 0 + flipVertical: 0 + flipHorizontal: 0 + importAudio: 1 + targetSettings: {} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Tutorials/Tutorial5/WT-Open-Build-Settings.mov" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Tutorials/Tutorial5/WT-Open-Build-Settings.mov" new file mode 100644 index 00000000..93a49f77 Binary files /dev/null and "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Tutorials/Tutorial5/WT-Open-Build-Settings.mov" differ diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Tutorials/Tutorial5/WT-Open-Build-Settings.mov.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Tutorials/Tutorial5/WT-Open-Build-Settings.mov.meta" new file mode 100644 index 00000000..4f4b8019 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Tutorials/Tutorial5/WT-Open-Build-Settings.mov.meta" @@ -0,0 +1,21 @@ +fileFormatVersion: 2 +guid: 7b1712487706b433cb8b8ea2a9a497c3 +VideoClipImporter: + externalObjects: {} + serializedVersion: 2 + useLegacyImporter: 0 + quality: 0.5 + isColorLinear: 0 + frameRange: 0 + startFrame: -1 + endFrame: -1 + colorSpace: 0 + deinterlace: 0 + encodeAlpha: 0 + flipVertical: 0 + flipHorizontal: 0 + importAudio: 1 + targetSettings: {} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Tutorials/Tutorial5/WT-Open-Share-Window.mov" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Tutorials/Tutorial5/WT-Open-Share-Window.mov" new file mode 100644 index 00000000..64a5128e Binary files /dev/null and "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Tutorials/Tutorial5/WT-Open-Share-Window.mov" differ diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Tutorials/Tutorial5/WT-Open-Share-Window.mov.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Tutorials/Tutorial5/WT-Open-Share-Window.mov.meta" new file mode 100644 index 00000000..3e0c4b68 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Tutorials/Tutorial5/WT-Open-Share-Window.mov.meta" @@ -0,0 +1,21 @@ +fileFormatVersion: 2 +guid: 75c85aa11111741e6bafd74fa71f25e6 +VideoClipImporter: + externalObjects: {} + serializedVersion: 2 + useLegacyImporter: 0 + quality: 0.5 + isColorLinear: 0 + frameRange: 0 + startFrame: -1 + endFrame: -1 + colorSpace: 0 + deinterlace: 0 + encodeAlpha: 0 + flipVertical: 0 + flipHorizontal: 0 + importAudio: 1 + targetSettings: {} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Tutorials/Tutorial5/WT-Switch-Platform.mov" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Tutorials/Tutorial5/WT-Switch-Platform.mov" new file mode 100644 index 00000000..b4a9d267 Binary files /dev/null and "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Tutorials/Tutorial5/WT-Switch-Platform.mov" differ diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Tutorials/Tutorial5/WT-Switch-Platform.mov.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Tutorials/Tutorial5/WT-Switch-Platform.mov.meta" new file mode 100644 index 00000000..3bb273b5 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Tutorials/Tutorial5/WT-Switch-Platform.mov.meta" @@ -0,0 +1,21 @@ +fileFormatVersion: 2 +guid: ac167fe2d988b46f6a1423e4fc5a0541 +VideoClipImporter: + externalObjects: {} + serializedVersion: 2 + useLegacyImporter: 0 + quality: 0.5 + isColorLinear: 0 + frameRange: 0 + startFrame: -1 + endFrame: -1 + colorSpace: 0 + deinterlace: 0 + encodeAlpha: 0 + flipVertical: 0 + flipHorizontal: 0 + importAudio: 1 + targetSettings: {} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Tutorials/Tutorial5/WT-Upload.png" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Tutorials/Tutorial5/WT-Upload.png" new file mode 100644 index 00000000..bc2a071e Binary files /dev/null and "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Tutorials/Tutorial5/WT-Upload.png" differ diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Tutorials/Tutorial5/WT-Upload.png.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Tutorials/Tutorial5/WT-Upload.png.meta" new file mode 100644 index 00000000..dc67f9bf --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Tutorials/Tutorial5/WT-Upload.png.meta" @@ -0,0 +1,110 @@ +fileFormatVersion: 2 +guid: 12e9a4db4896a40bd8c7685699a69f14 +TextureImporter: + fileIDToRecycleName: {} + externalObjects: {} + serializedVersion: 9 + mipmaps: + mipMapMode: 0 + enableMipMap: 0 + sRGBTexture: 1 + linearTexture: 0 + fadeOut: 0 + borderMipMap: 0 + mipMapsPreserveCoverage: 0 + alphaTestReferenceValue: 0.5 + mipMapFadeDistanceStart: 1 + mipMapFadeDistanceEnd: 3 + bumpmap: + convertToNormalMap: 0 + externalNormalMap: 0 + heightScale: 0.25 + normalMapFilter: 0 + isReadable: 0 + streamingMipmaps: 0 + streamingMipmapsPriority: 0 + grayScaleToAlpha: 0 + generateCubemap: 6 + cubemapConvolution: 0 + seamlessCubemap: 0 + textureFormat: 1 + maxTextureSize: 2048 + textureSettings: + serializedVersion: 2 + filterMode: -1 + aniso: 1 + mipBias: -100 + wrapU: 1 + wrapV: 1 + wrapW: -1 + nPOTScale: 0 + lightmap: 0 + compressionQuality: 50 + spriteMode: 0 + spriteExtrude: 1 + spriteMeshType: 1 + alignment: 0 + spritePivot: {x: 0.5, y: 0.5} + spritePixelsToUnits: 100 + spriteBorder: {x: 0, y: 0, z: 0, w: 0} + spriteGenerateFallbackPhysicsShape: 1 + alphaUsage: 1 + alphaIsTransparency: 1 + spriteTessellationDetail: -1 + textureType: 2 + textureShape: 1 + singleChannelComponent: 0 + maxTextureSizeSet: 0 + compressionQualitySet: 0 + textureFormatSet: 0 + platformSettings: + - serializedVersion: 2 + buildTarget: DefaultTexturePlatform + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Standalone + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: WebGL + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 0 + spriteSheet: + serializedVersion: 2 + sprites: [] + outline: [] + physicsShape: [] + bones: [] + spriteID: + vertices: [] + indices: + edges: [] + weights: [] + spritePackingTag: + pSDRemoveMatte: 0 + pSDShowRemoveMatteOption: 0 + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Tutorials/Tutorial5/Walkthrough5-005.asset" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Tutorials/Tutorial5/Walkthrough5-005.asset" new file mode 100644 index 00000000..87e4f50a --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Tutorials/Tutorial5/Walkthrough5-005.asset" @@ -0,0 +1,73 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!114 &11400000 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: ff771ccdf4150419d9ff4d342b069aae, type: 3} + m_Name: Walkthrough5-005 + m_EditorClassIdentifier: + m_SectionTitle: + m_Paragraphs: + m_Items: + - m_Type: 6 + m_Summary: + m_Text: + m_TutorialButtonText: + m_Tutorial: {fileID: 0} + m_Icons: + m_Items: [] + m_Image: {fileID: 2800000, guid: 7047302abcab8496488f93b3f766350d, type: 3} + m_Video: {fileID: 0} + m_CriteriaCompletion: 0 + m_Criteria: + m_Items: [] + m_MaskingSettings: + m_MaskingEnabled: 1 + m_UnmaskedViews: [] + - m_Type: 0 + m_Summary: + m_Text: "Build and Share\n\x03\x03\nTUTORIAL + \n\nCongratulations! You are about to build your + project into an actual game that your friends and family can play on your + very own dedicated webpage. \n\nThe process to build and share your game is + quite magical, and with all amazing things, this can take some time. \n\nPlease + be patient as your project transforms and finds its home on the web.\n\nClick + Start below to begin.\x03" + m_TutorialButtonText: + m_Tutorial: {fileID: 0} + m_Icons: + m_Items: [] + m_Image: {fileID: 0} + m_Video: {fileID: 0} + m_CriteriaCompletion: 0 + m_Criteria: + m_Items: [] + m_MaskingSettings: + m_MaskingEnabled: 1 + m_UnmaskedViews: [] + m_CameraSettings: + m_CameraMode: 0 + m_FocusMode: 0 + m_Orthographic: 0 + m_Size: 0 + m_Pivot: {x: 0, y: 0, z: 0} + m_Rotation: {x: 0, y: 0, z: 0, w: 0} + m_FrameObject: + m_SceneGuid: + m_GameObjectGuid: + m_SerializedComponentType: + m_TypeName: + m_ComponentIndex: 0 + m_AssetObject: {fileID: 0} + m_Prefab: {fileID: 0} + m_Enabled: 0 + m_NextButton: Start + m_DoneButton: Done + m_CompletedSound: {fileID: 0} + m_autoAdvance: 0 diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Tutorials/Tutorial5/Walkthrough5-005.asset.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Tutorials/Tutorial5/Walkthrough5-005.asset.meta" new file mode 100644 index 00000000..aeb278db --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Tutorials/Tutorial5/Walkthrough5-005.asset.meta" @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 8c0fe4cc1a06b4330b9280a5e61560b7 +NativeFormatImporter: + externalObjects: {} + mainObjectFileID: 11400000 + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Tutorials/Tutorial5/Walkthrough5-010.asset" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Tutorials/Tutorial5/Walkthrough5-010.asset" new file mode 100644 index 00000000..c4f22e42 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Tutorials/Tutorial5/Walkthrough5-010.asset" @@ -0,0 +1,128 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!114 &11400000 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: ff771ccdf4150419d9ff4d342b069aae, type: 3} + m_Name: Walkthrough5-010 + m_EditorClassIdentifier: + m_SectionTitle: + m_Paragraphs: + m_Items: + - m_Type: 7 + m_Summary: + m_Text: + m_TutorialButtonText: + m_Tutorial: {fileID: 0} + m_Icons: + m_Items: [] + m_Image: {fileID: 0} + m_Video: {fileID: 32900000, guid: 7b1712487706b433cb8b8ea2a9a497c3, type: 3} + m_CriteriaCompletion: 0 + m_Criteria: + m_Items: [] + m_MaskingSettings: + m_MaskingEnabled: 1 + m_UnmaskedViews: + - m_SelectorType: 1 + m_ViewType: + m_TypeName: + m_EditorWindowType: + m_TypeName: UnityEditor.BuildPlayerWindow, UnityEditor, Version=0.0.0.0, + Culture=neutral, PublicKeyToken=null + m_AlternateEditorWindowTypes: + m_Items: [] + m_MaskType: 0 + m_MaskSizeModifier: 0 + m_UnmaskedControls: [] + - m_Type: 0 + m_Summary: + m_Text: "Build Settings\n\nTo get started on your build + and share journey, let's take a look at the Build Settings window.\x03\n\nThis + window appears at the top of the Unity editor and might obscure the Walkthrough + panel, so be sure to drag it out of the way to continue following the steps." + m_TutorialButtonText: + m_Tutorial: {fileID: 0} + m_Icons: + m_Items: [] + m_Image: {fileID: 0} + m_Video: {fileID: 0} + m_CriteriaCompletion: 0 + m_Criteria: + m_Items: [] + m_MaskingSettings: + m_MaskingEnabled: 0 + m_UnmaskedViews: [] + - m_Type: 1 + m_Summary: Open the Build Settings window + m_Text: From the top menu, go to File > Build Settings, or use the keyboard + shortcut Ctrl/Cmd+Shift+B. + m_TutorialButtonText: + m_Tutorial: {fileID: 0} + m_Icons: + m_Items: [] + m_Image: {fileID: 0} + m_Video: {fileID: 0} + m_CriteriaCompletion: 0 + m_Criteria: + m_Items: + - type: + m_TypeName: Unity.InteractiveTutorials.EditorWindowCriterion, Unity.InteractiveTutorials.Core, + Version=0.0.0.0, Culture=neutral, PublicKeyToken=null + criterion: {fileID: 114239489337589744} + m_MaskingSettings: + m_MaskingEnabled: 1 + m_UnmaskedViews: + - m_SelectorType: 1 + m_ViewType: + m_TypeName: + m_EditorWindowType: + m_TypeName: UnityEditor.BuildPlayerWindow, UnityEditor, Version=0.0.0.0, + Culture=neutral, PublicKeyToken=null + m_AlternateEditorWindowTypes: + m_Items: [] + m_MaskType: 0 + m_MaskSizeModifier: 0 + m_UnmaskedControls: [] + m_CameraSettings: + m_CameraMode: 0 + m_FocusMode: 0 + m_Orthographic: 0 + m_Size: 0 + m_Pivot: {x: 0, y: 0, z: 0} + m_Rotation: {x: 0, y: 0, z: 0, w: 0} + m_FrameObject: + m_SceneGuid: + m_GameObjectGuid: + m_SerializedComponentType: + m_TypeName: + m_ComponentIndex: 0 + m_AssetObject: {fileID: 0} + m_Prefab: {fileID: 0} + m_Enabled: 0 + m_NextButton: Next + m_DoneButton: Done + m_CompletedSound: {fileID: 8300000, guid: 93fbb109633e844259ea828442bda0cb, type: 3} + m_autoAdvance: 1 +--- !u!114 &114239489337589744 +MonoBehaviour: + m_ObjectHideFlags: 1 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: f095ab04ffe3b514c808035bb335fa56, type: 3} + m_Name: + m_EditorClassIdentifier: + m_EditorWindowType: + m_TypeName: UnityEditor.BuildPlayerWindow, UnityEditor, Version=0.0.0.0, Culture=neutral, + PublicKeyToken=null + m_CloseIfAlreadyOpen: 0 diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Tutorials/Tutorial5/Walkthrough5-010.asset.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Tutorials/Tutorial5/Walkthrough5-010.asset.meta" new file mode 100644 index 00000000..d522d757 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Tutorials/Tutorial5/Walkthrough5-010.asset.meta" @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 6b9c840879aa4814c862280c389a83a1 +NativeFormatImporter: + externalObjects: {} + mainObjectFileID: 11400000 + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Tutorials/Tutorial5/Walkthrough5-015.asset" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Tutorials/Tutorial5/Walkthrough5-015.asset" new file mode 100644 index 00000000..5a0b3c1d --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Tutorials/Tutorial5/Walkthrough5-015.asset" @@ -0,0 +1,146 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!114 &11400000 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: ff771ccdf4150419d9ff4d342b069aae, type: 3} + m_Name: Walkthrough5-015 + m_EditorClassIdentifier: + m_SectionTitle: + m_Paragraphs: + m_Items: + - m_Type: 7 + m_Summary: + m_Text: + m_TutorialButtonText: + m_Tutorial: {fileID: 0} + m_Icons: + m_Items: [] + m_Image: {fileID: 0} + m_Video: {fileID: 32900000, guid: 0daf5b95eafb54bb399795f872349396, type: 3} + m_CriteriaCompletion: 0 + m_Criteria: + m_Items: [] + m_MaskingSettings: + m_MaskingEnabled: 1 + m_UnmaskedViews: + - m_SelectorType: 1 + m_ViewType: + m_TypeName: + m_EditorWindowType: + m_TypeName: UnityEditor.BuildPlayerWindow, UnityEditor, Version=0.0.0.0, + Culture=neutral, PublicKeyToken=null + m_AlternateEditorWindowTypes: + m_Items: [] + m_MaskType: 0 + m_MaskSizeModifier: 0 + m_UnmaskedControls: + - m_SelectorMode: 0 + m_GUIContent: + m_Text: Add Open Scenes + m_Image: {fileID: 0} + m_Tooltip: + m_ControlName: + m_PropertyPath: + m_TargetType: + m_TypeName: + m_GUIStyleName: + - m_Type: 0 + m_Summary: + m_Text: "Add Open Scenes\n\nIn the top half of the Build + Settings window is the Scenes in Build section. \n\nThis part of the + window shows you the scenes from your project that will be included in your + \u201Cbuild\u201D (the exported version of your game).\n\nWe have not included + any scenes yet, so let\u2019s start by adding our current scene." + m_TutorialButtonText: + m_Tutorial: {fileID: 0} + m_Icons: + m_Items: [] + m_Image: {fileID: 0} + m_Video: {fileID: 0} + m_CriteriaCompletion: 0 + m_Criteria: + m_Items: [] + m_MaskingSettings: + m_MaskingEnabled: 1 + m_UnmaskedViews: [] + - m_Type: 1 + m_Summary: Add the open scene + m_Text: Click on the Add Open Scenes button to include the current scene + in the build. + m_TutorialButtonText: + m_Tutorial: {fileID: 0} + m_Icons: + m_Items: [] + m_Image: {fileID: 0} + m_Video: {fileID: 0} + m_CriteriaCompletion: 0 + m_Criteria: + m_Items: + - type: + m_TypeName: Unity.InteractiveTutorials.SceneAddedToBuildCriterion, Unity.InteractiveTutorials.Core, + Version=0.0.0.0, Culture=neutral, PublicKeyToken=null + criterion: {fileID: 114219458877423154} + m_MaskingSettings: + m_MaskingEnabled: 1 + m_UnmaskedViews: + - m_SelectorType: 1 + m_ViewType: + m_TypeName: + m_EditorWindowType: + m_TypeName: UnityEditor.BuildPlayerWindow, UnityEditor, Version=0.0.0.0, + Culture=neutral, PublicKeyToken=null + m_AlternateEditorWindowTypes: + m_Items: [] + m_MaskType: 0 + m_MaskSizeModifier: 0 + m_UnmaskedControls: + - m_SelectorMode: 0 + m_GUIContent: + m_Text: Add Open Scenes + m_Image: {fileID: 0} + m_Tooltip: + m_ControlName: + m_PropertyPath: + m_TargetType: + m_TypeName: + m_GUIStyleName: + m_CameraSettings: + m_CameraMode: 0 + m_FocusMode: 0 + m_Orthographic: 0 + m_Size: 0 + m_Pivot: {x: 0, y: 0, z: 0} + m_Rotation: {x: 0, y: 0, z: 0, w: 0} + m_FrameObject: + m_SceneGuid: + m_GameObjectGuid: + m_SerializedComponentType: + m_TypeName: + m_ComponentIndex: 0 + m_AssetObject: {fileID: 0} + m_Prefab: {fileID: 0} + m_Enabled: 0 + m_NextButton: Next + m_DoneButton: Done + m_CompletedSound: {fileID: 8300000, guid: 93fbb109633e844259ea828442bda0cb, type: 3} + m_autoAdvance: 1 +--- !u!114 &114219458877423154 +MonoBehaviour: + m_ObjectHideFlags: 1 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 0e6dc885791ed7a4a8909da00f14614e, type: 3} + m_Name: + m_EditorClassIdentifier: + m_Scene: {fileID: 102900000, guid: f8c7069e6d9b2124b861144ca83d31e8, type: 3} diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Tutorials/Tutorial5/Walkthrough5-015.asset.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Tutorials/Tutorial5/Walkthrough5-015.asset.meta" new file mode 100644 index 00000000..1f8b141e --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Tutorials/Tutorial5/Walkthrough5-015.asset.meta" @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 957cdb143db889f4c8bf8ff83e3cb60e +NativeFormatImporter: + externalObjects: {} + mainObjectFileID: 11400000 + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Tutorials/Tutorial5/Walkthrough5-020.asset" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Tutorials/Tutorial5/Walkthrough5-020.asset" new file mode 100644 index 00000000..ed04b2b0 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Tutorials/Tutorial5/Walkthrough5-020.asset" @@ -0,0 +1,185 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!114 &11400000 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: ff771ccdf4150419d9ff4d342b069aae, type: 3} + m_Name: Walkthrough5-020 + m_EditorClassIdentifier: + m_SectionTitle: + m_Paragraphs: + m_Items: + - m_Type: 7 + m_Summary: + m_Text: + m_TutorialButtonText: + m_Tutorial: {fileID: 0} + m_Icons: + m_Items: [] + m_Image: {fileID: 2800000, guid: 484942b82d9ed4689b650a01be5fc164, type: 3} + m_Video: {fileID: 32900000, guid: ac167fe2d988b46f6a1423e4fc5a0541, type: 3} + m_CriteriaCompletion: 0 + m_Criteria: + m_Items: [] + m_MaskingSettings: + m_MaskingEnabled: 1 + m_UnmaskedViews: + - m_SelectorType: 1 + m_ViewType: + m_TypeName: + m_EditorWindowType: + m_TypeName: UnityEditor.BuildPlayerWindow, UnityEditor, Version=0.0.0.0, + Culture=neutral, PublicKeyToken=null + m_AlternateEditorWindowTypes: + m_Items: [] + m_MaskType: 0 + m_MaskSizeModifier: 0 + m_UnmaskedControls: + - m_SelectorMode: 0 + m_GUIContent: + m_Text: Build + m_Image: {fileID: 0} + m_Tooltip: + m_ControlName: + m_PropertyPath: + m_TargetType: + m_TypeName: + m_GUIStyleName: + - m_SelectorMode: 0 + m_GUIContent: + m_Text: Switch Platform + m_Image: {fileID: 0} + m_Tooltip: + m_ControlName: + m_PropertyPath: + m_TargetType: + m_TypeName: + m_GUIStyleName: + - m_SelectorMode: 0 + m_GUIContent: + m_Text: WebGL + m_Image: {fileID: 0} + m_Tooltip: + m_ControlName: + m_PropertyPath: + m_TargetType: + m_TypeName: + m_GUIStyleName: + - m_Type: 0 + m_Summary: + m_Text: "Switch Platform and Build\n\nTo get your game + working on the web, you need to set your build platform to WebGL. \n\nSetting + your platform tells Unity how to build your project so it works where people + will play it.\n\n1. Select WebGL in the Platform listing.\n\n2. + \ Click Switch Platform. The project will update to the WebGL platform." + m_TutorialButtonText: + m_Tutorial: {fileID: 0} + m_Icons: + m_Items: [] + m_Image: {fileID: 0} + m_Video: {fileID: 0} + m_CriteriaCompletion: 0 + m_Criteria: + m_Items: [] + m_MaskingSettings: + m_MaskingEnabled: 1 + m_UnmaskedViews: [] + - m_Type: 1 + m_Summary: 3. Click Build Button + m_Text: Click on the Build button and select a folder where you want to save + your game file. + m_TutorialButtonText: + m_Tutorial: {fileID: 0} + m_Icons: + m_Items: [] + m_Image: {fileID: 0} + m_Video: {fileID: 0} + m_CriteriaCompletion: 0 + m_Criteria: + m_Items: + - type: + m_TypeName: Unity.InteractiveTutorials.BuildStartedCriterion, Unity.InteractiveTutorials.Core, + Version=0.0.0.0, Culture=neutral, PublicKeyToken=null + criterion: {fileID: 114076018898767338} + m_MaskingSettings: + m_MaskingEnabled: 1 + m_UnmaskedViews: + - m_SelectorType: 1 + m_ViewType: + m_TypeName: + m_EditorWindowType: + m_TypeName: UnityEditor.BuildPlayerWindow, UnityEditor, Version=0.0.0.0, + Culture=neutral, PublicKeyToken=null + m_AlternateEditorWindowTypes: + m_Items: [] + m_MaskType: 0 + m_MaskSizeModifier: 0 + m_UnmaskedControls: + - m_SelectorMode: 0 + m_GUIContent: + m_Text: Build + m_Image: {fileID: 0} + m_Tooltip: + m_ControlName: + m_PropertyPath: + m_TargetType: + m_TypeName: + m_GUIStyleName: + - m_SelectorMode: 0 + m_GUIContent: + m_Text: Switch Platform + m_Image: {fileID: 0} + m_Tooltip: + m_ControlName: + m_PropertyPath: + m_TargetType: + m_TypeName: + m_GUIStyleName: + - m_SelectorMode: 0 + m_GUIContent: + m_Text: WebGL + m_Image: {fileID: 0} + m_Tooltip: + m_ControlName: + m_PropertyPath: + m_TargetType: + m_TypeName: + m_GUIStyleName: + m_CameraSettings: + m_CameraMode: 0 + m_FocusMode: 0 + m_Orthographic: 0 + m_Size: 0 + m_Pivot: {x: 0, y: 0, z: 0} + m_Rotation: {x: 0, y: 0, z: 0, w: 0} + m_FrameObject: + m_SceneGuid: + m_GameObjectGuid: + m_SerializedComponentType: + m_TypeName: + m_ComponentIndex: 0 + m_AssetObject: {fileID: 0} + m_Prefab: {fileID: 0} + m_Enabled: 0 + m_NextButton: Next + m_DoneButton: Done + m_CompletedSound: {fileID: 8300000, guid: 93fbb109633e844259ea828442bda0cb, type: 3} + m_autoAdvance: 1 +--- !u!114 &114076018898767338 +MonoBehaviour: + m_ObjectHideFlags: 1 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 17ecd043c7572b4429873c0f8ef1cae2, type: 3} + m_Name: + m_EditorClassIdentifier: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Tutorials/Tutorial5/Walkthrough5-020.asset.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Tutorials/Tutorial5/Walkthrough5-020.asset.meta" new file mode 100644 index 00000000..f9680748 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Tutorials/Tutorial5/Walkthrough5-020.asset.meta" @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 64c97b8d5647467429239de98178e1a8 +NativeFormatImporter: + externalObjects: {} + mainObjectFileID: 11400000 + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Tutorials/Tutorial5/Walkthrough5-025.asset" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Tutorials/Tutorial5/Walkthrough5-025.asset" new file mode 100644 index 00000000..f6830cc9 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Tutorials/Tutorial5/Walkthrough5-025.asset" @@ -0,0 +1,104 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!114 &11400000 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: ff771ccdf4150419d9ff4d342b069aae, type: 3} + m_Name: Walkthrough5-025 + m_EditorClassIdentifier: + m_SectionTitle: + m_Paragraphs: + m_Items: + - m_Type: 7 + m_Summary: + m_Text: + m_TutorialButtonText: + m_Tutorial: {fileID: 0} + m_Icons: + m_Items: [] + m_Image: {fileID: 0} + m_Video: {fileID: 32900000, guid: 75c85aa11111741e6bafd74fa71f25e6, type: 3} + m_CriteriaCompletion: 0 + m_Criteria: + m_Items: [] + m_MaskingSettings: + m_MaskingEnabled: 1 + m_UnmaskedViews: [] + - m_Type: 0 + m_Summary: + m_Text: "Share your Game\n\nWay to go! Next, you\u2019re + going to export your WebGL game to your own dedicated web page. \n\nDon\u2019t + worry, we\u2019ve made the process simple and easy to follow. " + m_TutorialButtonText: + m_Tutorial: {fileID: 0} + m_Icons: + m_Items: [] + m_Image: {fileID: 0} + m_Video: {fileID: 0} + m_CriteriaCompletion: 0 + m_Criteria: + m_Items: [] + m_MaskingSettings: + m_MaskingEnabled: 1 + m_UnmaskedViews: [] + - m_Type: 1 + m_Summary: Open Share WebGL Game window + m_Text: From the top menu go to Window > Share WebGL Game + m_TutorialButtonText: + m_Tutorial: {fileID: 0} + m_Icons: + m_Items: [] + m_Image: {fileID: 0} + m_Video: {fileID: 0} + m_CriteriaCompletion: 0 + m_Criteria: + m_Items: + - type: + m_TypeName: Unity.InteractiveTutorials.EditorWindowCriterion, Unity.InteractiveTutorials.Core, + Version=0.0.0.0, Culture=neutral, PublicKeyToken=null + criterion: {fileID: 114195111189182168} + m_MaskingSettings: + m_MaskingEnabled: 1 + m_UnmaskedViews: [] + m_CameraSettings: + m_CameraMode: 0 + m_FocusMode: 0 + m_Orthographic: 0 + m_Size: 0 + m_Pivot: {x: 0, y: 0, z: 0} + m_Rotation: {x: 0, y: 0, z: 0, w: 0} + m_FrameObject: + m_SceneGuid: + m_GameObjectGuid: + m_SerializedComponentType: + m_TypeName: + m_ComponentIndex: 0 + m_AssetObject: {fileID: 0} + m_Prefab: {fileID: 0} + m_Enabled: 0 + m_NextButton: Next + m_DoneButton: Done + m_CompletedSound: {fileID: 8300000, guid: 93fbb109633e844259ea828442bda0cb, type: 3} + m_autoAdvance: 1 +--- !u!114 &114195111189182168 +MonoBehaviour: + m_ObjectHideFlags: 1 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: f095ab04ffe3b514c808035bb335fa56, type: 3} + m_Name: + m_EditorClassIdentifier: + m_EditorWindowType: + m_TypeName: Unity.Connect.Share.Editor.ConnectShareEditorWindow, Unity.Connect.Share.Editor, + Version=0.0.0.0, Culture=neutral, PublicKeyToken=null + m_CloseIfAlreadyOpen: 0 diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Tutorials/Tutorial5/Walkthrough5-025.asset.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Tutorials/Tutorial5/Walkthrough5-025.asset.meta" new file mode 100644 index 00000000..ed8306dd --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Tutorials/Tutorial5/Walkthrough5-025.asset.meta" @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: e54090827562a7e4fa705a704dc2d063 +NativeFormatImporter: + externalObjects: {} + mainObjectFileID: 11400000 + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Tutorials/Tutorial5/Walkthrough5-026.asset" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Tutorials/Tutorial5/Walkthrough5-026.asset" new file mode 100644 index 00000000..5027d552 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Tutorials/Tutorial5/Walkthrough5-026.asset" @@ -0,0 +1,139 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!114 &11400000 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: ff771ccdf4150419d9ff4d342b069aae, type: 3} + m_Name: Walkthrough5-026 + m_EditorClassIdentifier: + m_SectionTitle: + m_Paragraphs: + m_Items: + - m_Type: 6 + m_Summary: + m_Text: + m_TutorialButtonText: + m_Tutorial: {fileID: 0} + m_Icons: + m_Items: [] + m_Image: {fileID: 2800000, guid: 12e9a4db4896a40bd8c7685699a69f14, type: 3} + m_Video: {fileID: 0} + m_CriteriaCompletion: 0 + m_Criteria: + m_Items: [] + m_MaskingSettings: + m_MaskingEnabled: 1 + m_UnmaskedViews: + - m_SelectorType: 1 + m_ViewType: + m_TypeName: + m_EditorWindowType: + m_TypeName: Unity.Connect.Share.Editor.ConnectShareEditorWindow, Unity.Connect.Share.Editor, + Version=0.0.0.0, Culture=neutral, PublicKeyToken=null + m_AlternateEditorWindowTypes: + m_Items: [] + m_MaskType: 0 + m_MaskSizeModifier: 0 + m_UnmaskedControls: [] + - m_SelectorType: 0 + m_ViewType: + m_TypeName: UnityEditor.Toolbar, UnityEditor, Version=0.0.0.0, Culture=neutral, + PublicKeyToken=null + m_EditorWindowType: + m_TypeName: + m_AlternateEditorWindowTypes: + m_Items: + - editorWindowType: + m_TypeName: + m_MaskType: 0 + m_MaskSizeModifier: 0 + m_UnmaskedControls: + - m_SelectorMode: 0 + m_GUIContent: + m_Text: Account + m_Image: {fileID: 0} + m_Tooltip: + m_ControlName: + m_PropertyPath: + m_TargetType: + m_TypeName: + m_GUIStyleName: + - m_Type: 0 + m_Summary: + m_Text: "Add Game Info\n\nNow it's time to name your + game, and if you want, (and we encourage it) add a thumbnail image. \n\nWhen + done, simply click Upload.\n\nWhen your upload is complete, you will + receive a web link for your game that you can share. The link will also be + emailed to you." + m_TutorialButtonText: + m_Tutorial: {fileID: 0} + m_Icons: + m_Items: [] + m_Image: {fileID: 0} + m_Video: {fileID: 0} + m_CriteriaCompletion: 0 + m_Criteria: + m_Items: [] + m_MaskingSettings: + m_MaskingEnabled: 1 + m_UnmaskedViews: + - m_SelectorType: 1 + m_ViewType: + m_TypeName: + m_EditorWindowType: + m_TypeName: Unity.Connect.Share.Editor.ConnectShareEditorWindow, Unity.Connect.Share.Editor, + Version=0.0.0.0, Culture=neutral, PublicKeyToken=null + m_AlternateEditorWindowTypes: + m_Items: [] + m_MaskType: 0 + m_MaskSizeModifier: 0 + m_UnmaskedControls: [] + - m_SelectorType: 0 + m_ViewType: + m_TypeName: UnityEditor.Toolbar, UnityEditor, Version=0.0.0.0, Culture=neutral, + PublicKeyToken=null + m_EditorWindowType: + m_TypeName: + m_AlternateEditorWindowTypes: + m_Items: + - editorWindowType: + m_TypeName: + m_MaskType: 0 + m_MaskSizeModifier: 0 + m_UnmaskedControls: + - m_SelectorMode: 0 + m_GUIContent: + m_Text: Account + m_Image: {fileID: 0} + m_Tooltip: + m_ControlName: + m_PropertyPath: + m_TargetType: + m_TypeName: + m_GUIStyleName: + m_CameraSettings: + m_CameraMode: 1 + m_FocusMode: 0 + m_Orthographic: 0 + m_Size: 10 + m_Pivot: {x: -5, y: 26.339746, z: -12} + m_Rotation: {x: 0.5, y: 0, z: 0, w: 0.8660254} + m_FrameObject: + m_SceneGuid: + m_GameObjectGuid: + m_SerializedComponentType: + m_TypeName: + m_ComponentIndex: 0 + m_AssetObject: {fileID: 0} + m_Prefab: {fileID: 0} + m_Enabled: 0 + m_NextButton: Next + m_DoneButton: Done + m_CompletedSound: {fileID: 8300000, guid: 93fbb109633e844259ea828442bda0cb, type: 3} + m_autoAdvance: 0 diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Tutorials/Tutorial5/Walkthrough5-026.asset.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Tutorials/Tutorial5/Walkthrough5-026.asset.meta" new file mode 100644 index 00000000..7a2f4130 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Tutorials/Tutorial5/Walkthrough5-026.asset.meta" @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 07aa0cac4743c954193724649c343eec +NativeFormatImporter: + externalObjects: {} + mainObjectFileID: 0 + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Tutorials/Tutorial5/Walkthrough5-030.asset" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Tutorials/Tutorial5/Walkthrough5-030.asset" new file mode 100644 index 00000000..2d94147a --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Tutorials/Tutorial5/Walkthrough5-030.asset" @@ -0,0 +1,103 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!114 &11400000 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: ff771ccdf4150419d9ff4d342b069aae, type: 3} + m_Name: Walkthrough5-030 + m_EditorClassIdentifier: + m_SectionTitle: + m_Paragraphs: + m_Items: + - m_Type: 6 + m_Summary: + m_Text: + m_TutorialButtonText: + m_Tutorial: {fileID: 0} + m_Icons: + m_Items: [] + m_Image: {fileID: 2800000, guid: cf2b88c8b41ea4e42ba6e17726c32b87, type: 3} + m_Video: {fileID: 0} + m_CriteriaCompletion: 0 + m_Criteria: + m_Items: [] + m_MaskingSettings: + m_MaskingEnabled: 1 + m_UnmaskedViews: [] + - m_Type: 0 + m_Summary: Build your Game + m_Text: "Tutorial Completed!\n\nWay to go. You made it! + \n\nNow that your game has a home on the web, go ahead and share it with others. + Let them see how cool it is that you made a game. \n\nYour journey doesn't + stop here. \x03\x03\n\nKeep modding your game with our ever growing library + of Creative Mods. The link to all of the mods can be found at the bottom of + the Tutorial list." + m_TutorialButtonText: + m_Tutorial: {fileID: 0} + m_Icons: + m_Items: [] + m_Image: {fileID: 0} + m_Video: {fileID: 0} + m_CriteriaCompletion: 0 + m_Criteria: + m_Items: + - type: + m_TypeName: Unity.InteractiveTutorials.BuildStartedCriterion, Unity.InteractiveTutorials.Core, + Version=0.0.0.0, Culture=neutral, PublicKeyToken=null + criterion: {fileID: 114938936740306160} + m_MaskingSettings: + m_MaskingEnabled: 1 + m_UnmaskedViews: [] + - m_Type: 0 + m_Summary: + m_Text: + m_TutorialButtonText: + m_Tutorial: {fileID: 0} + m_Icons: + m_Items: [] + m_Image: {fileID: 0} + m_Video: {fileID: 0} + m_CriteriaCompletion: 0 + m_Criteria: + m_Items: [] + m_MaskingSettings: + m_MaskingEnabled: 1 + m_UnmaskedViews: [] + m_CameraSettings: + m_CameraMode: 0 + m_FocusMode: 0 + m_Orthographic: 0 + m_Size: 0 + m_Pivot: {x: 0, y: 0, z: 0} + m_Rotation: {x: 0, y: 0, z: 0, w: 0} + m_FrameObject: + m_SceneGuid: + m_GameObjectGuid: + m_SerializedComponentType: + m_TypeName: + m_ComponentIndex: 0 + m_AssetObject: {fileID: 0} + m_Prefab: {fileID: 0} + m_Enabled: 0 + m_NextButton: Next + m_DoneButton: Done + m_CompletedSound: {fileID: 8300000, guid: 93fbb109633e844259ea828442bda0cb, type: 3} + m_autoAdvance: 0 +--- !u!114 &114938936740306160 +MonoBehaviour: + m_ObjectHideFlags: 1 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 17ecd043c7572b4429873c0f8ef1cae2, type: 3} + m_Name: + m_EditorClassIdentifier: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Tutorials/Tutorial5/Walkthrough5-030.asset.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Tutorials/Tutorial5/Walkthrough5-030.asset.meta" new file mode 100644 index 00000000..1cb114d9 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Tutorials/Tutorial5/Walkthrough5-030.asset.meta" @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 994d9c3eb7a9a2c4b931b0aa81f35a11 +NativeFormatImporter: + externalObjects: {} + mainObjectFileID: 11400000 + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Tutorials/Tutorial5/Walkthrough5.asset" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Tutorials/Tutorial5/Walkthrough5.asset" new file mode 100644 index 00000000..aa98a0af --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Tutorials/Tutorial5/Walkthrough5.asset" @@ -0,0 +1,53 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!114 &11400000 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 8f107dc6d4c984c45bdafd3bb15f98f0, type: 3} + m_Name: Walkthrough5 + m_EditorClassIdentifier: + m_WindowTitle: Walkthrough + m_TutorialTitle: Build, Share, and Play + m_LessonId: 48146 + m_Version: 0 + m_Scene: {fileID: 102900000, guid: f8c7069e6d9b2124b861144ca83d31e8, type: 3} + m_DefaultSceneCameraSettings: + m_CameraMode: 0 + m_FocusMode: 0 + m_Orthographic: 0 + m_Size: 0 + m_Pivot: {x: 0, y: 0, z: 0} + m_Rotation: {x: 0, y: 0, z: 0, w: 0} + m_FrameObject: + m_SceneGuid: + m_GameObjectGuid: + m_SerializedComponentType: + m_TypeName: + m_ComponentIndex: 0 + m_AssetObject: {fileID: 0} + m_Prefab: {fileID: 0} + m_Enabled: 0 + m_ExitBehavior: 1 + m_SkipTutorialBehavior: 0 + m_AssetSelectedOnExit: {fileID: 11400000, guid: 08f5116c6f71aa548a00fbd1f56fa92e, + type: 2} + m_WelcomePage: {fileID: 0} + m_CompletedPage: {fileID: 0} + IsWelcomingPageShowing: 1 + IsCompletedPageShowing: 0 + m_Pages: + m_Items: + - {fileID: 11400000, guid: 8c0fe4cc1a06b4330b9280a5e61560b7, type: 2} + - {fileID: 11400000, guid: 6b9c840879aa4814c862280c389a83a1, type: 2} + - {fileID: 11400000, guid: 957cdb143db889f4c8bf8ff83e3cb60e, type: 2} + - {fileID: 11400000, guid: 64c97b8d5647467429239de98178e1a8, type: 2} + - {fileID: 11400000, guid: e54090827562a7e4fa705a704dc2d063, type: 2} + - {fileID: 11400000, guid: 07aa0cac4743c954193724649c343eec, type: 2} + - {fileID: 11400000, guid: 994d9c3eb7a9a2c4b931b0aa81f35a11, type: 2} + m_WindowLayout: {fileID: 102900000, guid: cde0ced735db64fadb69328562c039e2, type: 3} diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Tutorials/Tutorial5/Walkthrough5.asset.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Tutorials/Tutorial5/Walkthrough5.asset.meta" new file mode 100644 index 00000000..9ef7caea --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Tutorials/Tutorial5/Walkthrough5.asset.meta" @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 5a1808b6ca2b3422381c2337d4a493b3 +NativeFormatImporter: + externalObjects: {} + mainObjectFileID: 11400000 + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Tutorials/TutorialHeader.png" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Tutorials/TutorialHeader.png" new file mode 100644 index 00000000..c581901f Binary files /dev/null and "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Tutorials/TutorialHeader.png" differ diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Tutorials/TutorialHeader.png.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Tutorials/TutorialHeader.png.meta" new file mode 100644 index 00000000..e045d367 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Tutorials/TutorialHeader.png.meta" @@ -0,0 +1,110 @@ +fileFormatVersion: 2 +guid: 1c7aa536c503744ffafe54d893a5816b +TextureImporter: + fileIDToRecycleName: {} + externalObjects: {} + serializedVersion: 9 + mipmaps: + mipMapMode: 0 + enableMipMap: 0 + sRGBTexture: 1 + linearTexture: 0 + fadeOut: 0 + borderMipMap: 0 + mipMapsPreserveCoverage: 0 + alphaTestReferenceValue: 0.5 + mipMapFadeDistanceStart: 1 + mipMapFadeDistanceEnd: 3 + bumpmap: + convertToNormalMap: 0 + externalNormalMap: 0 + heightScale: 0.25 + normalMapFilter: 0 + isReadable: 0 + streamingMipmaps: 0 + streamingMipmapsPriority: 0 + grayScaleToAlpha: 0 + generateCubemap: 6 + cubemapConvolution: 0 + seamlessCubemap: 0 + textureFormat: 1 + maxTextureSize: 2048 + textureSettings: + serializedVersion: 2 + filterMode: -1 + aniso: 1 + mipBias: -100 + wrapU: 1 + wrapV: 1 + wrapW: -1 + nPOTScale: 0 + lightmap: 0 + compressionQuality: 50 + spriteMode: 0 + spriteExtrude: 1 + spriteMeshType: 1 + alignment: 0 + spritePivot: {x: 0.5, y: 0.5} + spritePixelsToUnits: 100 + spriteBorder: {x: 0, y: 0, z: 0, w: 0} + spriteGenerateFallbackPhysicsShape: 1 + alphaUsage: 1 + alphaIsTransparency: 1 + spriteTessellationDetail: -1 + textureType: 2 + textureShape: 1 + singleChannelComponent: 0 + maxTextureSizeSet: 0 + compressionQualitySet: 0 + textureFormatSet: 0 + platformSettings: + - serializedVersion: 2 + buildTarget: DefaultTexturePlatform + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Standalone + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: WebGL + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 0 + spriteSheet: + serializedVersion: 2 + sprites: [] + outline: [] + physicsShape: [] + bones: [] + spriteID: + vertices: [] + indices: + edges: [] + weights: [] + spritePackingTag: + pSDRemoveMatte: 0 + pSDShowRemoveMatteOption: 0 + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Tutorials/Tutorials.asset" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Tutorials/Tutorials.asset" new file mode 100644 index 00000000..f9d80c57 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Tutorials/Tutorials.asset" @@ -0,0 +1,85 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!114 &11400000 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 89305aa391d1c5141bbe1628d930a2c5, type: 3} + m_Name: Tutorials + m_EditorClassIdentifier: + headerBackground: {fileID: 2800000, guid: 1c7aa536c503744ffafe54d893a5816b, type: 3} + title: Your First 6 Steps to Creating a Game + projectName: Karting + description: Start building your first game now. Have fun clicking through these + 6 helpful steps and you will have the foundation to modifying your first game + in less than 30 minutes. + projectLayout: {fileID: 0} + sections: + - orderInView: 0 + heading: Playtest + text: Make a simple change and playtest your game. + linkText: + url: + buttonText: Let's Go + tutorial: {fileID: 11400000, guid: 92d21b44a68004daebe1f6c4e03b487a, type: 2} + image: {fileID: 2800000, guid: dea29fde4b88b4c0e9d8370e83020c06, type: 3} + completedImage: {fileID: 2800000, guid: 11a8e34ea358c4b8885176f936317cc6, type: 3} + - orderInView: 2 + heading: Editor UI + text: Master the main controls, views and windows. + linkText: + url: + buttonText: Show Me + tutorial: {fileID: 11400000, guid: ef019b20e49b14cfca4e98ecf5fd345d, type: 2} + image: {fileID: 2800000, guid: ad9f1234d3a9046e99a56e1aa0f6ff42, type: 3} + completedImage: {fileID: 2800000, guid: 8a456994a80234fd2863df4d7e29e6b0, type: 3} + - orderInView: 4 + heading: Edit Colors + text: Learn how to change color of the Kart. + linkText: + url: + buttonText: Let's Color + tutorial: {fileID: 11400000, guid: 83255933b1f9a13428ca582620d979c8, type: 2} + image: {fileID: 2800000, guid: 02e1aaacc31014d1f8d4ed2397a5b4c1, type: 3} + completedImage: {fileID: 2800000, guid: 6390f201c83c6463198f231e70f96148, type: 3} + - orderInView: 6 + heading: Add Building + text: Learn how to add Prefab objects to game. + linkText: + url: + buttonText: Let's Add + tutorial: {fileID: 11400000, guid: 351b553575cb34b12945f5996095329d, type: 2} + image: {fileID: 2800000, guid: eb963beb4801244aeb9441dfa39555c1, type: 3} + completedImage: {fileID: 2800000, guid: 780f3b3e549e6432b8439c5b6d8542cf, type: 3} + - orderInView: 8 + heading: Build and Share + text: Create a build of your game and share it to the web. + linkText: + url: + buttonText: Let's Build + tutorial: {fileID: 11400000, guid: 5a1808b6ca2b3422381c2337d4a493b3, type: 2} + image: {fileID: 2800000, guid: a63863a2af95b4774bf1392c24952242, type: 3} + completedImage: {fileID: 2800000, guid: 386ad4dcd15bf45459f96ff08a55be45, type: 3} + - orderInView: 10 + heading: Modding Tutorials + text: Add rainbows, witches hats, flames to your game, and more. + linkText: asd + url: https://learn.unity.com/project/karting-template?courseId=5c59cf22edbc2a001f59aa5d + buttonText: asdasd + tutorial: {fileID: 0} + image: {fileID: 2800000, guid: c418c9a48b9984a8f9e89a7b0f6bdf9e, type: 3} + completedImage: {fileID: 2800000, guid: c418c9a48b9984a8f9e89a7b0f6bdf9e, type: 3} + - orderInView: 12 + heading: Karting User Group + text: Join other Karting Creators in community group. + linkText: asd + url: https://connect.unity.com/g/karting-creators + buttonText: asdasd + tutorial: {fileID: 0} + image: {fileID: 2800000, guid: c418c9a48b9984a8f9e89a7b0f6bdf9e, type: 3} + completedImage: {fileID: 2800000, guid: c418c9a48b9984a8f9e89a7b0f6bdf9e, type: 3} diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Tutorials/Tutorials.asset.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Tutorials/Tutorials.asset.meta" new file mode 100644 index 00000000..59ffed1a --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Tutorials/Tutorials.asset.meta" @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 08f5116c6f71aa548a00fbd1f56fa92e +NativeFormatImporter: + externalObjects: {} + mainObjectFileID: 0 + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Tutorials/WelcomeDialog.asset" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Tutorials/WelcomeDialog.asset" new file mode 100644 index 00000000..c613116a --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Tutorials/WelcomeDialog.asset" @@ -0,0 +1,61 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!114 &11400000 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: b0885f594ab85594caa28e1a96cbe0d8, type: 3} + m_Name: WelcomeDialog + m_EditorClassIdentifier: + m_Icon: {fileID: 2800000, guid: d5060e90d4eac45af98f8a65e86d212b, type: 3} + m_Title: + m_Paragraphs: + m_Items: + - m_Type: 0 + m_Summary: + m_Text: "Get Started with Unity\x03\x03\n\nKARTING + MICROGAME\x03\x03\n\n\nAre you ready to make your + very own version of this Karting microgame? \n\nTo help you along the way, + this project contains interactive tutorials that will teach you about the + basics of the Unity Engine." + m_TutorialButtonText: + m_Tutorial: {fileID: 0} + m_Icons: + m_Items: [] + m_Image: {fileID: 0} + m_Video: {fileID: 0} + m_CriteriaCompletion: 0 + m_Criteria: + m_Items: [] + m_MaskingSettings: + m_MaskingEnabled: 0 + m_UnmaskedViews: [] + - m_Type: 0 + m_Summary: + m_Text: 'You can access the Tutorials window any time from the Unity + main menu: + + + + Tutorials > Show Tutorials + +' + m_TutorialButtonText: + m_Tutorial: {fileID: 0} + m_Icons: + m_Items: [] + m_Image: {fileID: 0} + m_Video: {fileID: 0} + m_CriteriaCompletion: 0 + m_Criteria: + m_Items: [] + m_MaskingSettings: + m_MaskingEnabled: 0 + m_UnmaskedViews: [] + m_StartButtonLabel: Get Started + m_FinishButtonLabel: Go to the next tutorial diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Tutorials/WelcomeDialog.asset.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Tutorials/WelcomeDialog.asset.meta" new file mode 100644 index 00000000..7b18c557 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Tutorials/WelcomeDialog.asset.meta" @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 52f0f4a57417740ea92501a52d39a8ea +NativeFormatImporter: + externalObjects: {} + mainObjectFileID: 11400000 + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Tutorials/WelcomeDialogImage.png" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Tutorials/WelcomeDialogImage.png" new file mode 100644 index 00000000..d77a3e68 Binary files /dev/null and "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Tutorials/WelcomeDialogImage.png" differ diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Tutorials/WelcomeDialogImage.png.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Tutorials/WelcomeDialogImage.png.meta" new file mode 100644 index 00000000..db288626 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Tutorials/WelcomeDialogImage.png.meta" @@ -0,0 +1,110 @@ +fileFormatVersion: 2 +guid: d5060e90d4eac45af98f8a65e86d212b +TextureImporter: + fileIDToRecycleName: {} + externalObjects: {} + serializedVersion: 9 + mipmaps: + mipMapMode: 0 + enableMipMap: 0 + sRGBTexture: 1 + linearTexture: 0 + fadeOut: 0 + borderMipMap: 0 + mipMapsPreserveCoverage: 0 + alphaTestReferenceValue: 0.5 + mipMapFadeDistanceStart: 1 + mipMapFadeDistanceEnd: 3 + bumpmap: + convertToNormalMap: 0 + externalNormalMap: 0 + heightScale: 0.25 + normalMapFilter: 0 + isReadable: 0 + streamingMipmaps: 0 + streamingMipmapsPriority: 0 + grayScaleToAlpha: 0 + generateCubemap: 6 + cubemapConvolution: 0 + seamlessCubemap: 0 + textureFormat: 1 + maxTextureSize: 2048 + textureSettings: + serializedVersion: 2 + filterMode: -1 + aniso: 1 + mipBias: -100 + wrapU: 1 + wrapV: 1 + wrapW: -1 + nPOTScale: 0 + lightmap: 0 + compressionQuality: 50 + spriteMode: 0 + spriteExtrude: 1 + spriteMeshType: 1 + alignment: 0 + spritePivot: {x: 0.5, y: 0.5} + spritePixelsToUnits: 100 + spriteBorder: {x: 0, y: 0, z: 0, w: 0} + spriteGenerateFallbackPhysicsShape: 1 + alphaUsage: 1 + alphaIsTransparency: 1 + spriteTessellationDetail: -1 + textureType: 2 + textureShape: 1 + singleChannelComponent: 0 + maxTextureSizeSet: 0 + compressionQualitySet: 0 + textureFormatSet: 0 + platformSettings: + - serializedVersion: 2 + buildTarget: DefaultTexturePlatform + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Standalone + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: WebGL + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 0 + spriteSheet: + serializedVersion: 2 + sprites: [] + outline: [] + physicsShape: [] + bones: [] + spriteID: + vertices: [] + indices: + edges: [] + weights: [] + spritePackingTag: + pSDRemoveMatte: 0 + pSDShowRemoveMatteOption: 0 + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Tutorials/expanded1.wlt" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Tutorials/expanded1.wlt" new file mode 100644 index 00000000..1136ce55 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Tutorials/expanded1.wlt" @@ -0,0 +1,767 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!114 &1 +MonoBehaviour: + m_ObjectHideFlags: 52 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 1 + m_Script: {fileID: 12004, guid: 0000000000000000e000000000000000, type: 0} + m_Name: + m_EditorClassIdentifier: + m_PixelRect: + serializedVersion: 2 + x: 1615 + y: 299 + width: 1746 + height: 968 + m_ShowMode: 4 + m_Title: + m_RootView: {fileID: 7} + m_MinSize: {x: 950, y: 300} + m_MaxSize: {x: 10000, y: 10000} +--- !u!114 &2 +MonoBehaviour: + m_ObjectHideFlags: 52 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 12006, guid: 0000000000000000e000000000000000, type: 0} + m_Name: + m_EditorClassIdentifier: + m_Children: [] + m_Position: + serializedVersion: 2 + x: 1444 + y: 0 + width: 302 + height: 918 + m_MinSize: {x: 302, y: 404} + m_MaxSize: {x: 4002, y: 4024} + m_ActualView: {fileID: 13} + m_Panes: + - {fileID: 13} + m_Selected: 0 + m_LastSelected: 0 +--- !u!114 &3 +MonoBehaviour: + m_ObjectHideFlags: 52 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 1 + m_Script: {fileID: 12010, guid: 0000000000000000e000000000000000, type: 0} + m_Name: + m_EditorClassIdentifier: + m_Children: + - {fileID: 10} + - {fileID: 4} + - {fileID: 2} + m_Position: + serializedVersion: 2 + x: 0 + y: 30 + width: 1746 + height: 918 + m_MinSize: {x: 987, y: 498} + m_MaxSize: {x: 18008, y: 14048} + vertical: 0 + controlID: 2768 +--- !u!114 &4 +MonoBehaviour: + m_ObjectHideFlags: 52 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 1 + m_Script: {fileID: 12006, guid: 0000000000000000e000000000000000, type: 0} + m_Name: + m_EditorClassIdentifier: + m_Children: [] + m_Position: + serializedVersion: 2 + x: 1165 + y: 0 + width: 279 + height: 918 + m_MinSize: {x: 279, y: 74} + m_MaxSize: {x: 4004, y: 4024} + m_ActualView: {fileID: 16} + m_Panes: + - {fileID: 16} + m_Selected: 0 + m_LastSelected: 0 +--- !u!114 &5 +MonoBehaviour: + m_ObjectHideFlags: 52 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 1 + m_Script: {fileID: 12006, guid: 0000000000000000e000000000000000, type: 0} + m_Name: + m_EditorClassIdentifier: + m_Children: [] + m_Position: + serializedVersion: 2 + x: 0 + y: 0 + width: 202 + height: 588 + m_MinSize: {x: 202, y: 224} + m_MaxSize: {x: 4002, y: 4024} + m_ActualView: {fileID: 17} + m_Panes: + - {fileID: 17} + m_Selected: 0 + m_LastSelected: 0 +--- !u!114 &6 +MonoBehaviour: + m_ObjectHideFlags: 52 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 1 + m_Script: {fileID: 12006, guid: 0000000000000000e000000000000000, type: 0} + m_Name: + m_EditorClassIdentifier: + m_Children: [] + m_Position: + serializedVersion: 2 + x: 0 + y: 588 + width: 1165 + height: 330 + m_MinSize: {x: 232, y: 274} + m_MaxSize: {x: 10002, y: 10024} + m_ActualView: {fileID: 15} + m_Panes: + - {fileID: 15} + - {fileID: 20} + m_Selected: 0 + m_LastSelected: 1 +--- !u!114 &7 +MonoBehaviour: + m_ObjectHideFlags: 52 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 1 + m_Script: {fileID: 12008, guid: 0000000000000000e000000000000000, type: 0} + m_Name: + m_EditorClassIdentifier: + m_Children: + - {fileID: 8} + - {fileID: 3} + - {fileID: 9} + m_Position: + serializedVersion: 2 + x: 0 + y: 0 + width: 1746 + height: 968 + m_MinSize: {x: 950, y: 300} + m_MaxSize: {x: 10000, y: 10000} +--- !u!114 &8 +MonoBehaviour: + m_ObjectHideFlags: 52 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 1 + m_Script: {fileID: 12011, guid: 0000000000000000e000000000000000, type: 0} + m_Name: + m_EditorClassIdentifier: + m_Children: [] + m_Position: + serializedVersion: 2 + x: 0 + y: 0 + width: 1746 + height: 30 + m_MinSize: {x: 0, y: 0} + m_MaxSize: {x: 0, y: 0} + m_LastLoadedLayoutName: TutorialLayout +--- !u!114 &9 +MonoBehaviour: + m_ObjectHideFlags: 52 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 1 + m_Script: {fileID: 12042, guid: 0000000000000000e000000000000000, type: 0} + m_Name: + m_EditorClassIdentifier: + m_Children: [] + m_Position: + serializedVersion: 2 + x: 0 + y: 948 + width: 1746 + height: 20 + m_MinSize: {x: 0, y: 0} + m_MaxSize: {x: 0, y: 0} +--- !u!114 &10 +MonoBehaviour: + m_ObjectHideFlags: 52 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 1 + m_Script: {fileID: 12010, guid: 0000000000000000e000000000000000, type: 0} + m_Name: + m_EditorClassIdentifier: + m_Children: + - {fileID: 11} + - {fileID: 6} + m_Position: + serializedVersion: 2 + x: 0 + y: 0 + width: 1165 + height: 918 + m_MinSize: {x: 406, y: 498} + m_MaxSize: {x: 10002, y: 14048} + vertical: 1 + controlID: 2769 +--- !u!114 &11 +MonoBehaviour: + m_ObjectHideFlags: 52 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 1 + m_Script: {fileID: 12010, guid: 0000000000000000e000000000000000, type: 0} + m_Name: + m_EditorClassIdentifier: + m_Children: + - {fileID: 5} + - {fileID: 12} + m_Position: + serializedVersion: 2 + x: 0 + y: 0 + width: 1165 + height: 588 + m_MinSize: {x: 406, y: 224} + m_MaxSize: {x: 8006, y: 4024} + vertical: 0 + controlID: 2770 +--- !u!114 &12 +MonoBehaviour: + m_ObjectHideFlags: 52 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 1 + m_Script: {fileID: 12006, guid: 0000000000000000e000000000000000, type: 0} + m_Name: + m_EditorClassIdentifier: + m_Children: [] + m_Position: + serializedVersion: 2 + x: 202 + y: 0 + width: 963 + height: 588 + m_MinSize: {x: 204, y: 224} + m_MaxSize: {x: 4004, y: 4024} + m_ActualView: {fileID: 18} + m_Panes: + - {fileID: 18} + - {fileID: 19} + - {fileID: 14} + m_Selected: 0 + m_LastSelected: 1 +--- !u!114 &13 +MonoBehaviour: + m_ObjectHideFlags: 52 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: ba8f85f9d6bbb46d180610e6061865df, type: 3} + m_Name: + m_EditorClassIdentifier: + m_MinSize: {x: 300, y: 380} + m_MaxSize: {x: 4000, y: 4000} + m_TitleContent: + m_Text: Tutorials + m_Image: {fileID: 0} + m_Tooltip: + m_Pos: + serializedVersion: 2 + x: 3059 + y: 329 + width: 300 + height: 898 + m_PersistentViewDataDictionary: {fileID: 0} + m_AllParagraphs: [] + m_Readme: {fileID: 0} + m_MaskingEnabled: 1 + m_ScrollPosition: {x: 0, y: 0} + m_FarthestPageCompleted: 1 + m_PlayModeChanging: 0 +--- !u!114 &14 +MonoBehaviour: + m_ObjectHideFlags: 52 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 1 + m_Script: {fileID: 12111, guid: 0000000000000000e000000000000000, type: 0} + m_Name: + m_EditorClassIdentifier: + m_MinSize: {x: 400, y: 100} + m_MaxSize: {x: 2048, y: 2048} + m_TitleContent: + m_Text: Asset Store + m_Image: {fileID: -8693916549880196297, guid: 0000000000000000d000000000000000, + type: 0} + m_Tooltip: + m_Pos: + serializedVersion: 2 + x: 468 + y: 181 + width: 973 + height: 501 + m_PersistentViewDataDictionary: {fileID: 0} +--- !u!114 &15 +MonoBehaviour: + m_ObjectHideFlags: 52 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 1 + m_Script: {fileID: 12014, guid: 0000000000000000e000000000000000, type: 0} + m_Name: + m_EditorClassIdentifier: + m_MinSize: {x: 230, y: 250} + m_MaxSize: {x: 10000, y: 10000} + m_TitleContent: + m_Text: Project + m_Image: {fileID: -5467254957812901981, guid: 0000000000000000d000000000000000, + type: 0} + m_Tooltip: + m_Pos: + serializedVersion: 2 + x: 1615 + y: 917 + width: 1163 + height: 310 + m_PersistentViewDataDictionary: {fileID: 0} + m_SearchFilter: + m_NameFilter: + m_ClassNames: [] + m_AssetLabels: [] + m_AssetBundleNames: [] + m_VersionControlStates: [] + m_SoftLockControlStates: [] + m_ReferencingInstanceIDs: + m_SceneHandles: + m_ShowAllHits: 0 + m_SearchArea: 1 + m_Folders: + - Assets/Karting/Materials + m_ViewMode: 1 + m_StartGridSize: 64 + m_LastFolders: + - Assets/Karting/Materials + m_LastFoldersGridSize: -1 + m_LastProjectPath: /Users/mikachu/kart-template + m_LockTracker: + m_IsLocked: 0 + m_FolderTreeState: + scrollPos: {x: 0, y: 0} + m_SelectedIDs: 7a310000 + m_LastClickedID: 12666 + m_ExpandedIDs: 000000008c2f0000d232000028330000323300005433000092330000ac330000aa35000024370000e63700000c380000a2380000ee38000012390000884300008a4300008c4300008e4300009043000000ca9a3b + m_RenameOverlay: + m_UserAcceptedRename: 0 + m_Name: + m_OriginalName: + m_EditFieldRect: + serializedVersion: 2 + x: 0 + y: 0 + width: 0 + height: 0 + m_UserData: 0 + m_IsWaitingForDelay: 0 + m_IsRenaming: 0 + m_OriginalEventType: 11 + m_IsRenamingFilename: 1 + m_ClientGUIView: {fileID: 6} + m_SearchString: + m_CreateAssetUtility: + m_EndAction: {fileID: 0} + m_InstanceID: 0 + m_Path: + m_Icon: {fileID: 0} + m_ResourceFile: + m_AssetTreeState: + scrollPos: {x: 0, y: 0} + m_SelectedIDs: + m_LastClickedID: 0 + m_ExpandedIDs: 000000008c2f0000d232000028330000323300005433000092330000ac330000aa35000024370000e63700000c380000a2380000ee38000012390000884300008a4300008c4300008e4300009043000000ca9a3b + m_RenameOverlay: + m_UserAcceptedRename: 0 + m_Name: + m_OriginalName: + m_EditFieldRect: + serializedVersion: 2 + x: 0 + y: 0 + width: 0 + height: 0 + m_UserData: 0 + m_IsWaitingForDelay: 0 + m_IsRenaming: 0 + m_OriginalEventType: 11 + m_IsRenamingFilename: 1 + m_ClientGUIView: {fileID: 0} + m_SearchString: + m_CreateAssetUtility: + m_EndAction: {fileID: 0} + m_InstanceID: 0 + m_Path: + m_Icon: {fileID: 0} + m_ResourceFile: + m_ListAreaState: + m_SelectedInstanceIDs: b06d0000 + m_LastClickedInstanceID: 28080 + m_HadKeyboardFocusLastEvent: 0 + m_ExpandedInstanceIDs: c6230000 + m_RenameOverlay: + m_UserAcceptedRename: 0 + m_Name: + m_OriginalName: + m_EditFieldRect: + serializedVersion: 2 + x: 0 + y: 0 + width: 0 + height: 0 + m_UserData: 0 + m_IsWaitingForDelay: 0 + m_IsRenaming: 0 + m_OriginalEventType: 11 + m_IsRenamingFilename: 1 + m_ClientGUIView: {fileID: 0} + m_CreateAssetUtility: + m_EndAction: {fileID: 0} + m_InstanceID: 0 + m_Path: + m_Icon: {fileID: 0} + m_ResourceFile: + m_NewAssetIndexInList: -1 + m_ScrollPosition: {x: 0, y: 0} + m_GridSize: 64 + m_DirectoriesAreaWidth: 320 +--- !u!114 &16 +MonoBehaviour: + m_ObjectHideFlags: 52 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 1 + m_Script: {fileID: 12019, guid: 0000000000000000e000000000000000, type: 0} + m_Name: + m_EditorClassIdentifier: + m_MinSize: {x: 275, y: 50} + m_MaxSize: {x: 4000, y: 4000} + m_TitleContent: + m_Text: Inspector + m_Image: {fileID: -2667387946076563598, guid: 0000000000000000d000000000000000, + type: 0} + m_Tooltip: + m_Pos: + serializedVersion: 2 + x: 2780 + y: 329 + width: 275 + height: 898 + m_PersistentViewDataDictionary: {fileID: 0} + m_ObjectsLockedBeforeSerialization: [] + m_InstanceIDsLockedBeforeSerialization: + m_LockTracker: + m_IsLocked: 0 + m_PreviewResizer: + m_CachedPref: 160 + m_ControlHash: -371814159 + m_PrefName: Preview_InspectorPreview + m_PreviewWindow: {fileID: 0} +--- !u!114 &17 +MonoBehaviour: + m_ObjectHideFlags: 52 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 1 + m_Script: {fileID: 12061, guid: 0000000000000000e000000000000000, type: 0} + m_Name: + m_EditorClassIdentifier: + m_MinSize: {x: 200, y: 200} + m_MaxSize: {x: 4000, y: 4000} + m_TitleContent: + m_Text: Hierarchy + m_Image: {fileID: 7966133145522015247, guid: 0000000000000000d000000000000000, + type: 0} + m_Tooltip: + m_Pos: + serializedVersion: 2 + x: 1615 + y: 329 + width: 200 + height: 568 + m_PersistentViewDataDictionary: {fileID: 0} + m_SceneHierarchy: + m_TreeViewState: + scrollPos: {x: 0, y: 0} + m_SelectedIDs: b06d0000 + m_LastClickedID: 28080 + m_ExpandedIDs: 4a6bffff1c73ffffd6eaffffd0fbffff + m_RenameOverlay: + m_UserAcceptedRename: 0 + m_Name: + m_OriginalName: + m_EditFieldRect: + serializedVersion: 2 + x: 0 + y: 0 + width: 0 + height: 0 + m_UserData: 0 + m_IsWaitingForDelay: 0 + m_IsRenaming: 0 + m_OriginalEventType: 11 + m_IsRenamingFilename: 0 + m_ClientGUIView: {fileID: 0} + m_SearchString: + m_ExpandedScenes: [] + m_CurrenRootInstanceID: 0 + m_LockTracker: + m_IsLocked: 0 + m_CurrentSortingName: TransformSorting + m_WindowGUID: 46b7a0fefa812c44ca6fda42b4d7b176 +--- !u!114 &18 +MonoBehaviour: + m_ObjectHideFlags: 52 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 1 + m_Script: {fileID: 12013, guid: 0000000000000000e000000000000000, type: 0} + m_Name: + m_EditorClassIdentifier: + m_MinSize: {x: 200, y: 200} + m_MaxSize: {x: 4000, y: 4000} + m_TitleContent: + m_Text: Scene + m_Image: {fileID: 0} + m_Tooltip: + m_Pos: + serializedVersion: 2 + x: 1817 + y: 329 + width: 959 + height: 568 + m_PersistentViewDataDictionary: {fileID: 0} + m_WindowGUID: d69a67902db7f994ca099bec79d22ce1 + m_SceneLighting: 1 + m_2DMode: 0 + m_isRotationLocked: 0 + m_AudioPlay: 0 + m_Position: + m_Target: {x: 15.999866, y: 0.87356436, z: 0.030073643} + speed: 2 + m_Value: {x: 15.999866, y: 0.87356436, z: 0.030073643} + m_RenderMode: 0 + m_CameraMode: + drawMode: 0 + name: Shaded + section: Shading Mode + m_ValidateTrueMetals: 0 + m_SceneViewState: + showFog: 1 + showMaterialUpdate: 0 + showSkybox: 1 + showFlares: 1 + showImageEffects: 1 + showParticleSystems: 1 + grid: + xGrid: + m_Target: 0 + speed: 2 + m_Value: 0 + yGrid: + m_Target: 1 + speed: 2 + m_Value: 1 + zGrid: + m_Target: 0 + speed: 2 + m_Value: 0 + m_Rotation: + m_Target: {x: 0.45937636, y: -0.0071921935, z: 0.0037197447, w: 0.8882049} + speed: 2 + m_Value: {x: 0.45937636, y: -0.0071921935, z: 0.0037197447, w: 0.8882049} + m_Size: + m_Target: 6.004826 + speed: 2 + m_Value: 6.004826 + m_Ortho: + m_Target: 0 + speed: 2 + m_Value: 0 + m_ShowGlobalGrid: 1 + m_LastSceneViewRotation: {x: 0, y: 0, z: 0, w: 0} + m_LastSceneViewOrtho: 0 + m_ReplacementShader: {fileID: 0} + m_ReplacementString: + m_LastLockedObject: {fileID: 0} + m_ViewIsLockedToObject: 0 +--- !u!114 &19 +MonoBehaviour: + m_ObjectHideFlags: 52 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 1 + m_Script: {fileID: 12015, guid: 0000000000000000e000000000000000, type: 0} + m_Name: + m_EditorClassIdentifier: + m_MinSize: {x: 200, y: 200} + m_MaxSize: {x: 4000, y: 4000} + m_TitleContent: + m_Text: Game + m_Image: {fileID: -6423792434712278376, guid: 0000000000000000d000000000000000, + type: 0} + m_Tooltip: + m_Pos: + serializedVersion: 2 + x: 529.3334 + y: 72.66667 + width: 1230 + height: 820 + m_PersistentViewDataDictionary: {fileID: 0} + m_MaximizeOnPlay: 0 + m_Gizmos: 0 + m_Stats: 0 + m_SelectedSizes: 05000000000000000000000000000000000000000000000000000000000000000000000000000000 + m_TargetDisplay: 0 + m_ZoomArea: + m_HRangeLocked: 0 + m_VRangeLocked: 0 + hZoomLockedByDefault: 0 + vZoomLockedByDefault: 0 + m_HBaseRangeMin: -615 + m_HBaseRangeMax: 615 + m_VBaseRangeMin: -346 + m_VBaseRangeMax: 346 + m_HAllowExceedBaseRangeMin: 1 + m_HAllowExceedBaseRangeMax: 1 + m_VAllowExceedBaseRangeMin: 1 + m_VAllowExceedBaseRangeMax: 1 + m_ScaleWithWindow: 0 + m_HSlider: 0 + m_VSlider: 0 + m_IgnoreScrollWheelUntilClicked: 0 + m_EnableMouseInput: 1 + m_EnableSliderZoomHorizontal: 0 + m_EnableSliderZoomVertical: 0 + m_UniformScale: 1 + m_UpDirection: 1 + m_DrawArea: + serializedVersion: 2 + x: 0 + y: 17 + width: 1230 + height: 803 + m_Scale: {x: 1, y: 1} + m_Translation: {x: 615, y: 401.5} + m_MarginLeft: 0 + m_MarginRight: 0 + m_MarginTop: 0 + m_MarginBottom: 0 + m_LastShownAreaInsideMargins: + serializedVersion: 2 + x: -615 + y: -401.5 + width: 1230 + height: 803 + m_MinimalGUI: 1 + m_defaultScale: 1 + m_TargetTexture: {fileID: 0} + m_CurrentColorSpace: 0 + m_LastWindowPixelSize: {x: 1230, y: 820} + m_ClearInEditMode: 1 + m_NoCameraWarning: 1 + m_LowResolutionForAspectRatios: 01000000000100000100 + m_XRRenderMode: 0 +--- !u!114 &20 +MonoBehaviour: + m_ObjectHideFlags: 52 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 1 + m_Script: {fileID: 12003, guid: 0000000000000000e000000000000000, type: 0} + m_Name: + m_EditorClassIdentifier: + m_MinSize: {x: 100, y: 100} + m_MaxSize: {x: 4000, y: 4000} + m_TitleContent: + m_Text: Console + m_Image: {fileID: -4327648978806127646, guid: 0000000000000000d000000000000000, + type: 0} + m_Tooltip: + m_Pos: + serializedVersion: 2 + x: 0 + y: 895 + width: 1977 + height: 440 + m_PersistentViewDataDictionary: {fileID: 0} diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Tutorials/expanded1.wlt.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Tutorials/expanded1.wlt.meta" new file mode 100644 index 00000000..8290204e --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Karting/Tutorials/expanded1.wlt.meta" @@ -0,0 +1,7 @@ +fileFormatVersion: 2 +guid: e1cd5a9731b1546759af95800c6e9fac +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets.meta" new file mode 100644 index 00000000..ac7abbc2 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets.meta" @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 8c3a013ddfd8d4fd4951b4a01304c17c +folderAsset: yes +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/3DProps.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/3DProps.meta" new file mode 100644 index 00000000..8408d21b --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/3DProps.meta" @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 99cc34f0c398fe543aafb3b43fcf67ba +folderAsset: yes +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/3DProps/AncientProps.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/3DProps/AncientProps.meta" new file mode 100644 index 00000000..729f76f2 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/3DProps/AncientProps.meta" @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: d01cec72238b70b468f8effa63226ebf +folderAsset: yes +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/3DProps/AncientProps/Archway.fbx" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/3DProps/AncientProps/Archway.fbx" new file mode 100644 index 00000000..d53b9b7c Binary files /dev/null and "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/3DProps/AncientProps/Archway.fbx" differ diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/3DProps/AncientProps/Archway.fbx.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/3DProps/AncientProps/Archway.fbx.meta" new file mode 100644 index 00000000..d24e185f --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/3DProps/AncientProps/Archway.fbx.meta" @@ -0,0 +1,97 @@ +fileFormatVersion: 2 +guid: 8845e58e723a048699e6cf81997a1af0 +ModelImporter: + serializedVersion: 23 + fileIDToRecycleName: + 100000: //RootNode + 400000: //RootNode + 2100000: archway + 2300000: //RootNode + 3300000: //RootNode + 4300000: archway + externalObjects: {} + materials: + importMaterials: 1 + materialName: 0 + materialSearch: 1 + materialLocation: 1 + animations: + legacyGenerateAnimations: 4 + bakeSimulation: 0 + resampleCurves: 1 + optimizeGameObjects: 0 + motionNodeName: + rigImportErrors: + rigImportWarnings: + animationImportErrors: + animationImportWarnings: + animationRetargetingWarnings: + animationDoRetargetingWarnings: 0 + importAnimatedCustomProperties: 0 + importConstraints: 0 + animationCompression: 1 + animationRotationError: 0.5 + animationPositionError: 0.5 + animationScaleError: 0.5 + animationWrapMode: 0 + extraExposedTransformPaths: [] + extraUserProperties: [] + clipAnimations: [] + isReadable: 1 + meshes: + lODScreenPercentages: [] + globalScale: 1 + meshCompression: 0 + addColliders: 0 + useSRGBMaterialColor: 1 + importVisibility: 1 + importBlendShapes: 1 + importCameras: 1 + importLights: 1 + swapUVChannels: 0 + generateSecondaryUV: 0 + useFileUnits: 1 + optimizeMeshForGPU: 1 + keepQuads: 0 + weldVertices: 1 + preserveHierarchy: 0 + indexFormat: 0 + secondaryUVAngleDistortion: 8 + secondaryUVAreaDistortion: 15.000001 + secondaryUVHardAngle: 88 + secondaryUVPackMargin: 4 + useFileScale: 1 + previousCalculatedGlobalScale: 1 + hasPreviousCalculatedGlobalScale: 0 + tangentSpace: + normalSmoothAngle: 60 + normalImportMode: 0 + tangentImportMode: 3 + normalCalculationMode: 4 + legacyComputeAllNormalsFromSmoothingGroupsWhenMeshHasBlendShapes: 0 + blendShapeNormalImportMode: 1 + normalSmoothingSource: 0 + importAnimation: 1 + copyAvatar: 0 + humanDescription: + serializedVersion: 2 + human: [] + skeleton: [] + armTwist: 0.5 + foreArmTwist: 0.5 + upperLegTwist: 0.5 + legTwist: 0.5 + armStretch: 0.05 + legStretch: 0.05 + feetSpacing: 0 + rootMotionBoneName: + hasTranslationDoF: 0 + hasExtraRoot: 0 + skeletonHasParents: 1 + lastHumanDescriptionAvatarSource: {instanceID: 0} + animationType: 0 + humanoidOversampling: 1 + additionalBone: 0 + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/3DProps/AncientProps/MoaiHead.fbx" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/3DProps/AncientProps/MoaiHead.fbx" new file mode 100644 index 00000000..b31e0e82 Binary files /dev/null and "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/3DProps/AncientProps/MoaiHead.fbx" differ diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/3DProps/AncientProps/MoaiHead.fbx.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/3DProps/AncientProps/MoaiHead.fbx.meta" new file mode 100644 index 00000000..f69090af --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/3DProps/AncientProps/MoaiHead.fbx.meta" @@ -0,0 +1,97 @@ +fileFormatVersion: 2 +guid: 3ce0ea2030a24458eb9e3ec8fbae0a88 +ModelImporter: + serializedVersion: 23 + fileIDToRecycleName: + 100000: //RootNode + 400000: //RootNode + 2100000: StatueHead + 2300000: //RootNode + 3300000: //RootNode + 4300000: StatueHead + externalObjects: {} + materials: + importMaterials: 1 + materialName: 0 + materialSearch: 1 + materialLocation: 1 + animations: + legacyGenerateAnimations: 4 + bakeSimulation: 0 + resampleCurves: 1 + optimizeGameObjects: 0 + motionNodeName: + rigImportErrors: + rigImportWarnings: + animationImportErrors: + animationImportWarnings: + animationRetargetingWarnings: + animationDoRetargetingWarnings: 0 + importAnimatedCustomProperties: 0 + importConstraints: 0 + animationCompression: 1 + animationRotationError: 0.5 + animationPositionError: 0.5 + animationScaleError: 0.5 + animationWrapMode: 0 + extraExposedTransformPaths: [] + extraUserProperties: [] + clipAnimations: [] + isReadable: 1 + meshes: + lODScreenPercentages: [] + globalScale: 1 + meshCompression: 0 + addColliders: 0 + useSRGBMaterialColor: 1 + importVisibility: 1 + importBlendShapes: 1 + importCameras: 1 + importLights: 1 + swapUVChannels: 0 + generateSecondaryUV: 0 + useFileUnits: 1 + optimizeMeshForGPU: 1 + keepQuads: 0 + weldVertices: 1 + preserveHierarchy: 0 + indexFormat: 0 + secondaryUVAngleDistortion: 8 + secondaryUVAreaDistortion: 15.000001 + secondaryUVHardAngle: 88 + secondaryUVPackMargin: 4 + useFileScale: 1 + previousCalculatedGlobalScale: 1 + hasPreviousCalculatedGlobalScale: 0 + tangentSpace: + normalSmoothAngle: 60 + normalImportMode: 0 + tangentImportMode: 3 + normalCalculationMode: 4 + legacyComputeAllNormalsFromSmoothingGroupsWhenMeshHasBlendShapes: 0 + blendShapeNormalImportMode: 1 + normalSmoothingSource: 0 + importAnimation: 1 + copyAvatar: 0 + humanDescription: + serializedVersion: 2 + human: [] + skeleton: [] + armTwist: 0.5 + foreArmTwist: 0.5 + upperLegTwist: 0.5 + legTwist: 0.5 + armStretch: 0.05 + legStretch: 0.05 + feetSpacing: 0 + rootMotionBoneName: + hasTranslationDoF: 0 + hasExtraRoot: 0 + skeletonHasParents: 1 + lastHumanDescriptionAvatarSource: {instanceID: 0} + animationType: 0 + humanoidOversampling: 1 + additionalBone: 0 + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/3DProps/AncientProps/Obelisk.fbx" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/3DProps/AncientProps/Obelisk.fbx" new file mode 100644 index 00000000..95c5d6f1 Binary files /dev/null and "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/3DProps/AncientProps/Obelisk.fbx" differ diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/3DProps/AncientProps/Obelisk.fbx.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/3DProps/AncientProps/Obelisk.fbx.meta" new file mode 100644 index 00000000..cbd8c0bc --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/3DProps/AncientProps/Obelisk.fbx.meta" @@ -0,0 +1,97 @@ +fileFormatVersion: 2 +guid: b5f62aa1f09e3403baa23022a5d9e4b1 +ModelImporter: + serializedVersion: 23 + fileIDToRecycleName: + 100000: //RootNode + 400000: //RootNode + 2100000: Obelisk + 2300000: //RootNode + 3300000: //RootNode + 4300000: Cube + externalObjects: {} + materials: + importMaterials: 1 + materialName: 0 + materialSearch: 1 + materialLocation: 1 + animations: + legacyGenerateAnimations: 4 + bakeSimulation: 0 + resampleCurves: 1 + optimizeGameObjects: 0 + motionNodeName: + rigImportErrors: + rigImportWarnings: + animationImportErrors: + animationImportWarnings: + animationRetargetingWarnings: + animationDoRetargetingWarnings: 0 + importAnimatedCustomProperties: 0 + importConstraints: 0 + animationCompression: 1 + animationRotationError: 0.5 + animationPositionError: 0.5 + animationScaleError: 0.5 + animationWrapMode: 0 + extraExposedTransformPaths: [] + extraUserProperties: [] + clipAnimations: [] + isReadable: 1 + meshes: + lODScreenPercentages: [] + globalScale: 1 + meshCompression: 0 + addColliders: 0 + useSRGBMaterialColor: 1 + importVisibility: 1 + importBlendShapes: 1 + importCameras: 1 + importLights: 1 + swapUVChannels: 0 + generateSecondaryUV: 0 + useFileUnits: 1 + optimizeMeshForGPU: 1 + keepQuads: 0 + weldVertices: 1 + preserveHierarchy: 0 + indexFormat: 0 + secondaryUVAngleDistortion: 8 + secondaryUVAreaDistortion: 15.000001 + secondaryUVHardAngle: 88 + secondaryUVPackMargin: 4 + useFileScale: 1 + previousCalculatedGlobalScale: 1 + hasPreviousCalculatedGlobalScale: 0 + tangentSpace: + normalSmoothAngle: 60 + normalImportMode: 0 + tangentImportMode: 3 + normalCalculationMode: 4 + legacyComputeAllNormalsFromSmoothingGroupsWhenMeshHasBlendShapes: 0 + blendShapeNormalImportMode: 1 + normalSmoothingSource: 0 + importAnimation: 1 + copyAvatar: 0 + humanDescription: + serializedVersion: 2 + human: [] + skeleton: [] + armTwist: 0.5 + foreArmTwist: 0.5 + upperLegTwist: 0.5 + legTwist: 0.5 + armStretch: 0.05 + legStretch: 0.05 + feetSpacing: 0 + rootMotionBoneName: + hasTranslationDoF: 0 + hasExtraRoot: 0 + skeletonHasParents: 1 + lastHumanDescriptionAvatarSource: {instanceID: 0} + animationType: 0 + humanoidOversampling: 1 + additionalBone: 0 + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/3DProps/AncientProps/Pillar.fbx" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/3DProps/AncientProps/Pillar.fbx" new file mode 100644 index 00000000..62f96459 Binary files /dev/null and "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/3DProps/AncientProps/Pillar.fbx" differ diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/3DProps/AncientProps/Pillar.fbx.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/3DProps/AncientProps/Pillar.fbx.meta" new file mode 100644 index 00000000..71ef0b0d --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/3DProps/AncientProps/Pillar.fbx.meta" @@ -0,0 +1,99 @@ +fileFormatVersion: 2 +guid: 44e1bc51d0853468d8baf487909db950 +ModelImporter: + serializedVersion: 23 + fileIDToRecycleName: + 100000: //RootNode + 400000: //RootNode + 2100000: Pillar + 2300000: //RootNode + 3300000: //RootNode + 4300000: Cube + 4300002: pillar + 2186277476908879412: ImportLogs + externalObjects: {} + materials: + importMaterials: 1 + materialName: 0 + materialSearch: 1 + materialLocation: 1 + animations: + legacyGenerateAnimations: 4 + bakeSimulation: 0 + resampleCurves: 1 + optimizeGameObjects: 0 + motionNodeName: + rigImportErrors: + rigImportWarnings: + animationImportErrors: + animationImportWarnings: + animationRetargetingWarnings: + animationDoRetargetingWarnings: 0 + importAnimatedCustomProperties: 0 + importConstraints: 0 + animationCompression: 1 + animationRotationError: 0.5 + animationPositionError: 0.5 + animationScaleError: 0.5 + animationWrapMode: 0 + extraExposedTransformPaths: [] + extraUserProperties: [] + clipAnimations: [] + isReadable: 1 + meshes: + lODScreenPercentages: [] + globalScale: 1 + meshCompression: 0 + addColliders: 0 + useSRGBMaterialColor: 1 + importVisibility: 1 + importBlendShapes: 1 + importCameras: 1 + importLights: 1 + swapUVChannels: 0 + generateSecondaryUV: 0 + useFileUnits: 1 + optimizeMeshForGPU: 1 + keepQuads: 0 + weldVertices: 1 + preserveHierarchy: 0 + indexFormat: 0 + secondaryUVAngleDistortion: 8 + secondaryUVAreaDistortion: 15.000001 + secondaryUVHardAngle: 88 + secondaryUVPackMargin: 4 + useFileScale: 1 + previousCalculatedGlobalScale: 1 + hasPreviousCalculatedGlobalScale: 0 + tangentSpace: + normalSmoothAngle: 60 + normalImportMode: 0 + tangentImportMode: 3 + normalCalculationMode: 4 + legacyComputeAllNormalsFromSmoothingGroupsWhenMeshHasBlendShapes: 0 + blendShapeNormalImportMode: 1 + normalSmoothingSource: 0 + importAnimation: 1 + copyAvatar: 0 + humanDescription: + serializedVersion: 2 + human: [] + skeleton: [] + armTwist: 0.5 + foreArmTwist: 0.5 + upperLegTwist: 0.5 + legTwist: 0.5 + armStretch: 0.05 + legStretch: 0.05 + feetSpacing: 0 + rootMotionBoneName: + hasTranslationDoF: 0 + hasExtraRoot: 0 + skeletonHasParents: 1 + lastHumanDescriptionAvatarSource: {instanceID: 0} + animationType: 0 + humanoidOversampling: 1 + additionalBone: 0 + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/3DProps/AncientProps/Pyramid.fbx" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/3DProps/AncientProps/Pyramid.fbx" new file mode 100644 index 00000000..3b0f858d Binary files /dev/null and "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/3DProps/AncientProps/Pyramid.fbx" differ diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/3DProps/AncientProps/Pyramid.fbx.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/3DProps/AncientProps/Pyramid.fbx.meta" new file mode 100644 index 00000000..ddc9f9a9 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/3DProps/AncientProps/Pyramid.fbx.meta" @@ -0,0 +1,97 @@ +fileFormatVersion: 2 +guid: 855be228fb4e849aea507dabde98fbff +ModelImporter: + serializedVersion: 23 + fileIDToRecycleName: + 100000: //RootNode + 400000: //RootNode + 2100000: Pyramid + 2300000: //RootNode + 3300000: //RootNode + 4300000: Cube + externalObjects: {} + materials: + importMaterials: 1 + materialName: 0 + materialSearch: 1 + materialLocation: 1 + animations: + legacyGenerateAnimations: 4 + bakeSimulation: 0 + resampleCurves: 1 + optimizeGameObjects: 0 + motionNodeName: + rigImportErrors: + rigImportWarnings: + animationImportErrors: + animationImportWarnings: + animationRetargetingWarnings: + animationDoRetargetingWarnings: 0 + importAnimatedCustomProperties: 0 + importConstraints: 0 + animationCompression: 1 + animationRotationError: 0.5 + animationPositionError: 0.5 + animationScaleError: 0.5 + animationWrapMode: 0 + extraExposedTransformPaths: [] + extraUserProperties: [] + clipAnimations: [] + isReadable: 1 + meshes: + lODScreenPercentages: [] + globalScale: 1 + meshCompression: 0 + addColliders: 0 + useSRGBMaterialColor: 1 + importVisibility: 1 + importBlendShapes: 1 + importCameras: 1 + importLights: 1 + swapUVChannels: 0 + generateSecondaryUV: 0 + useFileUnits: 1 + optimizeMeshForGPU: 1 + keepQuads: 0 + weldVertices: 1 + preserveHierarchy: 0 + indexFormat: 0 + secondaryUVAngleDistortion: 8 + secondaryUVAreaDistortion: 15.000001 + secondaryUVHardAngle: 88 + secondaryUVPackMargin: 4 + useFileScale: 1 + previousCalculatedGlobalScale: 1 + hasPreviousCalculatedGlobalScale: 0 + tangentSpace: + normalSmoothAngle: 60 + normalImportMode: 0 + tangentImportMode: 3 + normalCalculationMode: 4 + legacyComputeAllNormalsFromSmoothingGroupsWhenMeshHasBlendShapes: 0 + blendShapeNormalImportMode: 1 + normalSmoothingSource: 0 + importAnimation: 1 + copyAvatar: 0 + humanDescription: + serializedVersion: 2 + human: [] + skeleton: [] + armTwist: 0.5 + foreArmTwist: 0.5 + upperLegTwist: 0.5 + legTwist: 0.5 + armStretch: 0.05 + legStretch: 0.05 + feetSpacing: 0 + rootMotionBoneName: + hasTranslationDoF: 0 + hasExtraRoot: 0 + skeletonHasParents: 1 + lastHumanDescriptionAvatarSource: {instanceID: 0} + animationType: 0 + humanoidOversampling: 1 + additionalBone: 0 + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/3DProps/BillboardPrefabs.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/3DProps/BillboardPrefabs.meta" new file mode 100644 index 00000000..6b82730e --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/3DProps/BillboardPrefabs.meta" @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: de900649be672ce429c3c4bf02a266a6 +folderAsset: yes +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/3DProps/BillboardPrefabs/BillboardBasic.prefab" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/3DProps/BillboardPrefabs/BillboardBasic.prefab" new file mode 100644 index 00000000..f3f3b0f0 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/3DProps/BillboardPrefabs/BillboardBasic.prefab" @@ -0,0 +1,1288 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!1 &1394814311755217017 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 7019203237141474813} + m_Layer: 0 + m_Name: Frame + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &7019203237141474813 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1394814311755217017} + m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} + m_LocalPosition: {x: 0, y: 0, z: 0} + m_LocalScale: {x: 1, y: 1, z: 1} + m_Children: + - {fileID: 6480771852597999777} + - {fileID: 6480771853141675504} + - {fileID: 6480771851502525810} + - {fileID: 6480771851280573332} + - {fileID: 6179245964463744021} + - {fileID: 6480771851733832053} + - {fileID: 6480771852307833877} + m_Father: {fileID: 6480771852515576468} + m_RootOrder: 1 + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!1 &4882975753602925294 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 6179245964463744021} + - component: {fileID: 7942851909580524769} + - component: {fileID: 6031244570548096660} + m_Layer: 0 + m_Name: Back + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &6179245964463744021 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 4882975753602925294} + m_LocalRotation: {x: -0, y: 1, z: -0, w: 0.000000059604645} + m_LocalPosition: {x: 0, y: 4.69, z: -0.110000074} + m_LocalScale: {x: 5.387314, y: 5, z: 0.22629043} + m_Children: [] + m_Father: {fileID: 7019203237141474813} + m_RootOrder: 4 + m_LocalEulerAnglesHint: {x: 0, y: 180, z: 0} +--- !u!33 &7942851909580524769 +MeshFilter: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 4882975753602925294} + m_Mesh: {fileID: 10202, guid: 0000000000000000e000000000000000, type: 0} +--- !u!23 &6031244570548096660 +MeshRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 4882975753602925294} + m_Enabled: 1 + m_CastShadows: 1 + m_ReceiveShadows: 1 + m_DynamicOccludee: 1 + m_MotionVectors: 1 + m_LightProbeUsage: 1 + m_ReflectionProbeUsage: 1 + m_RenderingLayerMask: 1 + m_RendererPriority: 0 + m_Materials: + - {fileID: 2100000, guid: 190c04ee61aaa410e8650f7fc1ce7f41, type: 2} + m_StaticBatchInfo: + firstSubMesh: 0 + subMeshCount: 0 + m_StaticBatchRoot: {fileID: 0} + m_ProbeAnchor: {fileID: 0} + m_LightProbeVolumeOverride: {fileID: 0} + m_ScaleInLightmap: 1 + m_PreserveUVs: 0 + m_IgnoreNormalsForChartDetection: 0 + m_ImportantGI: 0 + m_StitchLightmapSeams: 0 + m_SelectedEditorRenderState: 3 + m_MinimumChartSize: 4 + m_AutoUVMaxDistance: 0.5 + m_AutoUVMaxAngle: 89 + m_LightmapParameters: {fileID: 0} + m_SortingLayerID: 0 + m_SortingLayer: 0 + m_SortingOrder: 0 +--- !u!1 &6480771851280573331 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 6480771851280573332} + - component: {fileID: 6480771851280573335} + - component: {fileID: 6480771851280573334} + - component: {fileID: 6480771851280573333} + m_Layer: 0 + m_Name: Lamp (3) + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &6480771851280573332 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 6480771851280573331} + m_LocalRotation: {x: 0.00000005960464, y: 0.4497228, z: -0.8931682, w: 0} + m_LocalPosition: {x: -1.6178093, y: 2.53, z: 0.5} + m_LocalScale: {x: 0.04588655, y: 0.64696157, z: 0.0850901} + m_Children: + - {fileID: 6480771852096185042} + m_Father: {fileID: 7019203237141474813} + m_RootOrder: 3 + m_LocalEulerAnglesHint: {x: 126.548004, y: -180, z: -0.000015258789} +--- !u!33 &6480771851280573335 +MeshFilter: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 6480771851280573331} + m_Mesh: {fileID: 10202, guid: 0000000000000000e000000000000000, type: 0} +--- !u!23 &6480771851280573334 +MeshRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 6480771851280573331} + m_Enabled: 1 + m_CastShadows: 1 + m_ReceiveShadows: 1 + m_DynamicOccludee: 1 + m_MotionVectors: 1 + m_LightProbeUsage: 1 + m_ReflectionProbeUsage: 1 + m_RenderingLayerMask: 1 + m_RendererPriority: 0 + m_Materials: + - {fileID: 2100000, guid: 190c04ee61aaa410e8650f7fc1ce7f41, type: 2} + m_StaticBatchInfo: + firstSubMesh: 0 + subMeshCount: 0 + m_StaticBatchRoot: {fileID: 0} + m_ProbeAnchor: {fileID: 0} + m_LightProbeVolumeOverride: {fileID: 0} + m_ScaleInLightmap: 1 + m_PreserveUVs: 0 + m_IgnoreNormalsForChartDetection: 0 + m_ImportantGI: 0 + m_StitchLightmapSeams: 0 + m_SelectedEditorRenderState: 3 + m_MinimumChartSize: 4 + m_AutoUVMaxDistance: 0.5 + m_AutoUVMaxAngle: 89 + m_LightmapParameters: {fileID: 0} + m_SortingLayerID: 0 + m_SortingLayer: 0 + m_SortingOrder: 0 +--- !u!65 &6480771851280573333 +BoxCollider: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 6480771851280573331} + m_Material: {fileID: 0} + m_IsTrigger: 0 + m_Enabled: 1 + serializedVersion: 2 + m_Size: {x: 1, y: 1, z: 1} + m_Center: {x: 0, y: 0, z: 0} +--- !u!1 &6480771851502525809 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 6480771851502525810} + - component: {fileID: 6480771851502525813} + - component: {fileID: 6480771851502525812} + - component: {fileID: 6480771851502525811} + m_Layer: 0 + m_Name: Lamp (2) + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &6480771851502525810 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 6480771851502525809} + m_LocalRotation: {x: 0.00000005960464, y: 0.4497228, z: -0.8931682, w: 0} + m_LocalPosition: {x: 0, y: 2.53, z: 0.49999994} + m_LocalScale: {x: 0.04588655, y: 0.64696157, z: 0.0850901} + m_Children: + - {fileID: 6480771852299830844} + m_Father: {fileID: 7019203237141474813} + m_RootOrder: 2 + m_LocalEulerAnglesHint: {x: 126.548004, y: -180, z: -0.000015258789} +--- !u!33 &6480771851502525813 +MeshFilter: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 6480771851502525809} + m_Mesh: {fileID: 10202, guid: 0000000000000000e000000000000000, type: 0} +--- !u!23 &6480771851502525812 +MeshRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 6480771851502525809} + m_Enabled: 1 + m_CastShadows: 1 + m_ReceiveShadows: 1 + m_DynamicOccludee: 1 + m_MotionVectors: 1 + m_LightProbeUsage: 1 + m_ReflectionProbeUsage: 1 + m_RenderingLayerMask: 1 + m_RendererPriority: 0 + m_Materials: + - {fileID: 2100000, guid: 190c04ee61aaa410e8650f7fc1ce7f41, type: 2} + m_StaticBatchInfo: + firstSubMesh: 0 + subMeshCount: 0 + m_StaticBatchRoot: {fileID: 0} + m_ProbeAnchor: {fileID: 0} + m_LightProbeVolumeOverride: {fileID: 0} + m_ScaleInLightmap: 1 + m_PreserveUVs: 0 + m_IgnoreNormalsForChartDetection: 0 + m_ImportantGI: 0 + m_StitchLightmapSeams: 0 + m_SelectedEditorRenderState: 3 + m_MinimumChartSize: 4 + m_AutoUVMaxDistance: 0.5 + m_AutoUVMaxAngle: 89 + m_LightmapParameters: {fileID: 0} + m_SortingLayerID: 0 + m_SortingLayer: 0 + m_SortingOrder: 0 +--- !u!65 &6480771851502525811 +BoxCollider: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 6480771851502525809} + m_Material: {fileID: 0} + m_IsTrigger: 0 + m_Enabled: 1 + serializedVersion: 2 + m_Size: {x: 1, y: 1, z: 1} + m_Center: {x: 0, y: 0, z: 0} +--- !u!1 &6480771851595852987 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 6480771851595852988} + - component: {fileID: 6480771851595852991} + - component: {fileID: 6480771851595852990} + - component: {fileID: 6480771851595852989} + m_Layer: 0 + m_Name: Leg + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &6480771851595852988 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 6480771851595852987} + m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} + m_LocalPosition: {x: -4.4257545, y: -3.4800003, z: 0} + m_LocalScale: {x: 0.29556, y: 2.2472315, z: 0.29556003} + m_Children: [] + m_Father: {fileID: 6480771852597999777} + m_RootOrder: 0 + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!33 &6480771851595852991 +MeshFilter: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 6480771851595852987} + m_Mesh: {fileID: 10202, guid: 0000000000000000e000000000000000, type: 0} +--- !u!23 &6480771851595852990 +MeshRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 6480771851595852987} + m_Enabled: 1 + m_CastShadows: 1 + m_ReceiveShadows: 1 + m_DynamicOccludee: 1 + m_MotionVectors: 1 + m_LightProbeUsage: 1 + m_ReflectionProbeUsage: 1 + m_RenderingLayerMask: 1 + m_RendererPriority: 0 + m_Materials: + - {fileID: 2100000, guid: 190c04ee61aaa410e8650f7fc1ce7f41, type: 2} + m_StaticBatchInfo: + firstSubMesh: 0 + subMeshCount: 0 + m_StaticBatchRoot: {fileID: 0} + m_ProbeAnchor: {fileID: 0} + m_LightProbeVolumeOverride: {fileID: 0} + m_ScaleInLightmap: 1 + m_PreserveUVs: 0 + m_IgnoreNormalsForChartDetection: 0 + m_ImportantGI: 0 + m_StitchLightmapSeams: 0 + m_SelectedEditorRenderState: 3 + m_MinimumChartSize: 4 + m_AutoUVMaxDistance: 0.5 + m_AutoUVMaxAngle: 89 + m_LightmapParameters: {fileID: 0} + m_SortingLayerID: 0 + m_SortingLayer: 0 + m_SortingOrder: 0 +--- !u!65 &6480771851595852989 +BoxCollider: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 6480771851595852987} + m_Material: {fileID: 0} + m_IsTrigger: 0 + m_Enabled: 1 + serializedVersion: 2 + m_Size: {x: 1, y: 1, z: 1} + m_Center: {x: 0, y: 0, z: 0} +--- !u!1 &6480771851733832052 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 6480771851733832053} + - component: {fileID: 6480771851733832040} + - component: {fileID: 6480771851733832055} + - component: {fileID: 6480771851733832054} + m_Layer: 0 + m_Name: Top + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &6480771851733832053 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 6480771851733832052} + m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} + m_LocalPosition: {x: 0, y: 7.14, z: 0} + m_LocalScale: {x: 5.392701, y: 0.20849533, z: 0.29057926} + m_Children: [] + m_Father: {fileID: 7019203237141474813} + m_RootOrder: 5 + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!33 &6480771851733832040 +MeshFilter: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 6480771851733832052} + m_Mesh: {fileID: 10202, guid: 0000000000000000e000000000000000, type: 0} +--- !u!23 &6480771851733832055 +MeshRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 6480771851733832052} + m_Enabled: 1 + m_CastShadows: 1 + m_ReceiveShadows: 1 + m_DynamicOccludee: 1 + m_MotionVectors: 1 + m_LightProbeUsage: 1 + m_ReflectionProbeUsage: 1 + m_RenderingLayerMask: 1 + m_RendererPriority: 0 + m_Materials: + - {fileID: 2100000, guid: 190c04ee61aaa410e8650f7fc1ce7f41, type: 2} + m_StaticBatchInfo: + firstSubMesh: 0 + subMeshCount: 0 + m_StaticBatchRoot: {fileID: 0} + m_ProbeAnchor: {fileID: 0} + m_LightProbeVolumeOverride: {fileID: 0} + m_ScaleInLightmap: 1 + m_PreserveUVs: 0 + m_IgnoreNormalsForChartDetection: 0 + m_ImportantGI: 0 + m_StitchLightmapSeams: 0 + m_SelectedEditorRenderState: 3 + m_MinimumChartSize: 4 + m_AutoUVMaxDistance: 0.5 + m_AutoUVMaxAngle: 89 + m_LightmapParameters: {fileID: 0} + m_SortingLayerID: 0 + m_SortingLayer: 0 + m_SortingOrder: 0 +--- !u!65 &6480771851733832054 +BoxCollider: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 6480771851733832052} + m_Material: {fileID: 0} + m_IsTrigger: 0 + m_Enabled: 1 + serializedVersion: 2 + m_Size: {x: 1, y: 1, z: 1} + m_Center: {x: 0, y: 0, z: 0} +--- !u!1 &6480771851848855167 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 6480771851848855152} + - component: {fileID: 6480771851848855153} + m_Layer: 0 + m_Name: Spot Light (1) + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &6480771851848855152 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 6480771851848855167} + m_LocalRotation: {x: -0.9999369, y: -0.0015644083, z: -0.0009242475, w: -0.011092454} + m_LocalPosition: {x: 0, y: -0.5, z: 0} + m_LocalScale: {x: 117.61828, y: 19.130367, z: 276.90253} + m_Children: [] + m_Father: {fileID: 6480771853141675504} + m_RootOrder: 0 + m_LocalEulerAnglesHint: {x: -54.723003, y: -179.813, z: -0.33100003} +--- !u!108 &6480771851848855153 +Light: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 6480771851848855167} + m_Enabled: 1 + serializedVersion: 8 + m_Type: 0 + m_Color: {r: 1, g: 1, b: 1, a: 1} + m_Intensity: 1.5 + m_Range: 8 + m_SpotAngle: 81 + m_CookieSize: 10 + m_Shadows: + m_Type: 0 + m_Resolution: -1 + m_CustomResolution: -1 + m_Strength: 1 + m_Bias: 0.05 + m_NormalBias: 0.4 + m_NearPlane: 0.2 + m_Cookie: {fileID: 0} + m_DrawHalo: 0 + m_Flare: {fileID: 0} + m_RenderMode: 1 + m_CullingMask: + serializedVersion: 2 + m_Bits: 4294967295 + m_Lightmapping: 4 + m_LightShadowCasterMode: 0 + m_AreaSize: {x: 1, y: 1} + m_BounceIntensity: 1 + m_ColorTemperature: 6570 + m_UseColorTemperature: 0 + m_ShadowRadius: 0 + m_ShadowAngle: 0 +--- !u!1 &6480771852012620533 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 6480771852012620534} + - component: {fileID: 6480771852012620521} + - component: {fileID: 6480771852012620520} + - component: {fileID: 6480771852012620535} + m_Layer: 0 + m_Name: Leg + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &6480771852012620534 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 6480771852012620533} + m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} + m_LocalPosition: {x: 4.2842445, y: -3.4800003, z: 0} + m_LocalScale: {x: 0.29556, y: 2.2472315, z: 0.29556003} + m_Children: [] + m_Father: {fileID: 6480771852597999777} + m_RootOrder: 1 + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!33 &6480771852012620521 +MeshFilter: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 6480771852012620533} + m_Mesh: {fileID: 10202, guid: 0000000000000000e000000000000000, type: 0} +--- !u!23 &6480771852012620520 +MeshRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 6480771852012620533} + m_Enabled: 1 + m_CastShadows: 1 + m_ReceiveShadows: 1 + m_DynamicOccludee: 1 + m_MotionVectors: 1 + m_LightProbeUsage: 1 + m_ReflectionProbeUsage: 1 + m_RenderingLayerMask: 1 + m_RendererPriority: 0 + m_Materials: + - {fileID: 2100000, guid: 190c04ee61aaa410e8650f7fc1ce7f41, type: 2} + m_StaticBatchInfo: + firstSubMesh: 0 + subMeshCount: 0 + m_StaticBatchRoot: {fileID: 0} + m_ProbeAnchor: {fileID: 0} + m_LightProbeVolumeOverride: {fileID: 0} + m_ScaleInLightmap: 1 + m_PreserveUVs: 0 + m_IgnoreNormalsForChartDetection: 0 + m_ImportantGI: 0 + m_StitchLightmapSeams: 0 + m_SelectedEditorRenderState: 3 + m_MinimumChartSize: 4 + m_AutoUVMaxDistance: 0.5 + m_AutoUVMaxAngle: 89 + m_LightmapParameters: {fileID: 0} + m_SortingLayerID: 0 + m_SortingLayer: 0 + m_SortingOrder: 0 +--- !u!65 &6480771852012620535 +BoxCollider: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 6480771852012620533} + m_Material: {fileID: 0} + m_IsTrigger: 0 + m_Enabled: 1 + serializedVersion: 2 + m_Size: {x: 1, y: 1, z: 1} + m_Center: {x: 0, y: 0, z: 0} +--- !u!1 &6480771852096185041 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 6480771852096185042} + - component: {fileID: 6480771852096185043} + m_Layer: 0 + m_Name: Spot Light (1) + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &6480771852096185042 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 6480771852096185041} + m_LocalRotation: {x: -0.9999369, y: -0.0015644083, z: -0.0009242475, w: -0.011092454} + m_LocalPosition: {x: 0, y: -0.5, z: 0} + m_LocalScale: {x: 117.61828, y: 19.130367, z: 276.90253} + m_Children: [] + m_Father: {fileID: 6480771851280573332} + m_RootOrder: 0 + m_LocalEulerAnglesHint: {x: -54.723003, y: -179.813, z: -0.33100003} +--- !u!108 &6480771852096185043 +Light: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 6480771852096185041} + m_Enabled: 1 + serializedVersion: 8 + m_Type: 0 + m_Color: {r: 1, g: 1, b: 1, a: 1} + m_Intensity: 1.5 + m_Range: 8 + m_SpotAngle: 81 + m_CookieSize: 10 + m_Shadows: + m_Type: 0 + m_Resolution: -1 + m_CustomResolution: -1 + m_Strength: 1 + m_Bias: 0.05 + m_NormalBias: 0.4 + m_NearPlane: 0.2 + m_Cookie: {fileID: 0} + m_DrawHalo: 0 + m_Flare: {fileID: 0} + m_RenderMode: 1 + m_CullingMask: + serializedVersion: 2 + m_Bits: 4294967295 + m_Lightmapping: 4 + m_LightShadowCasterMode: 0 + m_AreaSize: {x: 1, y: 1} + m_BounceIntensity: 1 + m_ColorTemperature: 6570 + m_UseColorTemperature: 0 + m_ShadowRadius: 0 + m_ShadowAngle: 0 +--- !u!1 &6480771852256048888 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 6480771852256048889} + - component: {fileID: 6480771852256048892} + - component: {fileID: 6480771852256048891} + - component: {fileID: 6480771852256048890} + m_Layer: 0 + m_Name: Leg + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &6480771852256048889 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 6480771852256048888} + m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} + m_LocalPosition: {x: 3.6042461, y: -3.4800003, z: 0} + m_LocalScale: {x: 0.29556, y: 2.2472315, z: 0.29556003} + m_Children: [] + m_Father: {fileID: 6480771852597999777} + m_RootOrder: 3 + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!33 &6480771852256048892 +MeshFilter: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 6480771852256048888} + m_Mesh: {fileID: 10202, guid: 0000000000000000e000000000000000, type: 0} +--- !u!23 &6480771852256048891 +MeshRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 6480771852256048888} + m_Enabled: 1 + m_CastShadows: 1 + m_ReceiveShadows: 1 + m_DynamicOccludee: 1 + m_MotionVectors: 1 + m_LightProbeUsage: 1 + m_ReflectionProbeUsage: 1 + m_RenderingLayerMask: 1 + m_RendererPriority: 0 + m_Materials: + - {fileID: 2100000, guid: 190c04ee61aaa410e8650f7fc1ce7f41, type: 2} + m_StaticBatchInfo: + firstSubMesh: 0 + subMeshCount: 0 + m_StaticBatchRoot: {fileID: 0} + m_ProbeAnchor: {fileID: 0} + m_LightProbeVolumeOverride: {fileID: 0} + m_ScaleInLightmap: 1 + m_PreserveUVs: 0 + m_IgnoreNormalsForChartDetection: 0 + m_ImportantGI: 0 + m_StitchLightmapSeams: 0 + m_SelectedEditorRenderState: 3 + m_MinimumChartSize: 4 + m_AutoUVMaxDistance: 0.5 + m_AutoUVMaxAngle: 89 + m_LightmapParameters: {fileID: 0} + m_SortingLayerID: 0 + m_SortingLayer: 0 + m_SortingOrder: 0 +--- !u!65 &6480771852256048890 +BoxCollider: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 6480771852256048888} + m_Material: {fileID: 0} + m_IsTrigger: 0 + m_Enabled: 1 + serializedVersion: 2 + m_Size: {x: 1, y: 1, z: 1} + m_Center: {x: 0, y: 0, z: 0} +--- !u!1 &6480771852299830843 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 6480771852299830844} + - component: {fileID: 6480771852299830845} + m_Layer: 0 + m_Name: Spot Light (1) + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &6480771852299830844 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 6480771852299830843} + m_LocalRotation: {x: -0.9999369, y: -0.0015644083, z: -0.0009242475, w: -0.011092454} + m_LocalPosition: {x: 0, y: -0.5, z: 0} + m_LocalScale: {x: 117.61828, y: 19.130367, z: 276.90253} + m_Children: [] + m_Father: {fileID: 6480771851502525810} + m_RootOrder: 0 + m_LocalEulerAnglesHint: {x: -54.723003, y: -179.813, z: -0.33100003} +--- !u!108 &6480771852299830845 +Light: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 6480771852299830843} + m_Enabled: 1 + serializedVersion: 8 + m_Type: 0 + m_Color: {r: 1, g: 1, b: 1, a: 1} + m_Intensity: 1.5 + m_Range: 8 + m_SpotAngle: 81 + m_CookieSize: 10 + m_Shadows: + m_Type: 0 + m_Resolution: -1 + m_CustomResolution: -1 + m_Strength: 1 + m_Bias: 0.05 + m_NormalBias: 0.4 + m_NearPlane: 0.2 + m_Cookie: {fileID: 0} + m_DrawHalo: 0 + m_Flare: {fileID: 0} + m_RenderMode: 1 + m_CullingMask: + serializedVersion: 2 + m_Bits: 4294967295 + m_Lightmapping: 4 + m_LightShadowCasterMode: 0 + m_AreaSize: {x: 1, y: 1} + m_BounceIntensity: 1 + m_ColorTemperature: 6570 + m_UseColorTemperature: 0 + m_ShadowRadius: 0 + m_ShadowAngle: 0 +--- !u!1 &6480771852307833873 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 6480771852307833877} + - component: {fileID: 6480771852307833876} + - component: {fileID: 6480771852307833875} + m_Layer: 0 + m_Name: Base + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &6480771852307833877 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 6480771852307833873} + m_LocalRotation: {x: -0, y: -1, z: -0, w: 0} + m_LocalPosition: {x: 0, y: 2.23, z: 0} + m_LocalScale: {x: 5.392706, y: 0.3, z: 0.60000175} + m_Children: [] + m_Father: {fileID: 7019203237141474813} + m_RootOrder: 6 + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!33 &6480771852307833876 +MeshFilter: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 6480771852307833873} + m_Mesh: {fileID: 10202, guid: 0000000000000000e000000000000000, type: 0} +--- !u!23 &6480771852307833875 +MeshRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 6480771852307833873} + m_Enabled: 1 + m_CastShadows: 1 + m_ReceiveShadows: 1 + m_DynamicOccludee: 1 + m_MotionVectors: 1 + m_LightProbeUsage: 1 + m_ReflectionProbeUsage: 1 + m_RenderingLayerMask: 1 + m_RendererPriority: 0 + m_Materials: + - {fileID: 2100000, guid: 190c04ee61aaa410e8650f7fc1ce7f41, type: 2} + m_StaticBatchInfo: + firstSubMesh: 0 + subMeshCount: 0 + m_StaticBatchRoot: {fileID: 0} + m_ProbeAnchor: {fileID: 0} + m_LightProbeVolumeOverride: {fileID: 0} + m_ScaleInLightmap: 1 + m_PreserveUVs: 0 + m_IgnoreNormalsForChartDetection: 0 + m_ImportantGI: 0 + m_StitchLightmapSeams: 0 + m_SelectedEditorRenderState: 3 + m_MinimumChartSize: 4 + m_AutoUVMaxDistance: 0.5 + m_AutoUVMaxAngle: 89 + m_LightmapParameters: {fileID: 0} + m_SortingLayerID: 0 + m_SortingLayer: 0 + m_SortingOrder: 0 +--- !u!1 &6480771852515576467 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 6480771852515576468} + m_Layer: 0 + m_Name: Billboard Basic + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &6480771852515576468 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 6480771852515576467} + m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} + m_LocalPosition: {x: -24.5, y: 0, z: -0.3} + m_LocalScale: {x: 1, y: 1, z: 1} + m_Children: + - {fileID: 8629072935037729342} + - {fileID: 7019203237141474813} + m_Father: {fileID: 0} + m_RootOrder: 0 + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!1 &6480771852563579583 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 6480771852563579568} + - component: {fileID: 6480771852563579571} + - component: {fileID: 6480771852563579570} + - component: {fileID: 6480771852563579569} + m_Layer: 0 + m_Name: Leg + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &6480771852563579568 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 6480771852563579583} + m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} + m_LocalPosition: {x: -3.9357548, y: -3.4800003, z: 0} + m_LocalScale: {x: 0.29556, y: 2.2472315, z: 0.29556003} + m_Children: [] + m_Father: {fileID: 6480771852597999777} + m_RootOrder: 2 + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!33 &6480771852563579571 +MeshFilter: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 6480771852563579583} + m_Mesh: {fileID: 10202, guid: 0000000000000000e000000000000000, type: 0} +--- !u!23 &6480771852563579570 +MeshRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 6480771852563579583} + m_Enabled: 1 + m_CastShadows: 1 + m_ReceiveShadows: 1 + m_DynamicOccludee: 1 + m_MotionVectors: 1 + m_LightProbeUsage: 1 + m_ReflectionProbeUsage: 1 + m_RenderingLayerMask: 1 + m_RendererPriority: 0 + m_Materials: + - {fileID: 2100000, guid: 190c04ee61aaa410e8650f7fc1ce7f41, type: 2} + m_StaticBatchInfo: + firstSubMesh: 0 + subMeshCount: 0 + m_StaticBatchRoot: {fileID: 0} + m_ProbeAnchor: {fileID: 0} + m_LightProbeVolumeOverride: {fileID: 0} + m_ScaleInLightmap: 1 + m_PreserveUVs: 0 + m_IgnoreNormalsForChartDetection: 0 + m_ImportantGI: 0 + m_StitchLightmapSeams: 0 + m_SelectedEditorRenderState: 3 + m_MinimumChartSize: 4 + m_AutoUVMaxDistance: 0.5 + m_AutoUVMaxAngle: 89 + m_LightmapParameters: {fileID: 0} + m_SortingLayerID: 0 + m_SortingLayer: 0 + m_SortingOrder: 0 +--- !u!65 &6480771852563579569 +BoxCollider: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 6480771852563579583} + m_Material: {fileID: 0} + m_IsTrigger: 0 + m_Enabled: 1 + serializedVersion: 2 + m_Size: {x: 1, y: 1, z: 1} + m_Center: {x: 0, y: 0, z: 0} +--- !u!1 &6480771852597999776 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 6480771852597999777} + m_Layer: 0 + m_Name: Legs + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &6480771852597999777 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 6480771852597999776} + m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} + m_LocalPosition: {x: 0, y: 4.53, z: 0} + m_LocalScale: {x: 0.5392701, y: 1, z: 1} + m_Children: + - {fileID: 6480771851595852988} + - {fileID: 6480771852012620534} + - {fileID: 6480771852563579568} + - {fileID: 6480771852256048889} + m_Father: {fileID: 7019203237141474813} + m_RootOrder: 0 + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!1 &6480771853141675519 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 6480771853141675504} + - component: {fileID: 6480771853141675507} + - component: {fileID: 6480771853141675506} + - component: {fileID: 6480771853141675505} + m_Layer: 0 + m_Name: Lamp (1) + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &6480771853141675504 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 6480771853141675519} + m_LocalRotation: {x: 0.00000005960464, y: 0.4497228, z: -0.8931682, w: 0} + m_LocalPosition: {x: 1.6178093, y: 2.53, z: 0.5000005} + m_LocalScale: {x: 0.04588655, y: 0.64696157, z: 0.0850901} + m_Children: + - {fileID: 6480771851848855152} + m_Father: {fileID: 7019203237141474813} + m_RootOrder: 1 + m_LocalEulerAnglesHint: {x: 126.548004, y: -180, z: -0.000015258789} +--- !u!33 &6480771853141675507 +MeshFilter: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 6480771853141675519} + m_Mesh: {fileID: 10202, guid: 0000000000000000e000000000000000, type: 0} +--- !u!23 &6480771853141675506 +MeshRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 6480771853141675519} + m_Enabled: 1 + m_CastShadows: 1 + m_ReceiveShadows: 1 + m_DynamicOccludee: 1 + m_MotionVectors: 1 + m_LightProbeUsage: 1 + m_ReflectionProbeUsage: 1 + m_RenderingLayerMask: 1 + m_RendererPriority: 0 + m_Materials: + - {fileID: 2100000, guid: 190c04ee61aaa410e8650f7fc1ce7f41, type: 2} + m_StaticBatchInfo: + firstSubMesh: 0 + subMeshCount: 0 + m_StaticBatchRoot: {fileID: 0} + m_ProbeAnchor: {fileID: 0} + m_LightProbeVolumeOverride: {fileID: 0} + m_ScaleInLightmap: 1 + m_PreserveUVs: 0 + m_IgnoreNormalsForChartDetection: 0 + m_ImportantGI: 0 + m_StitchLightmapSeams: 0 + m_SelectedEditorRenderState: 3 + m_MinimumChartSize: 4 + m_AutoUVMaxDistance: 0.5 + m_AutoUVMaxAngle: 89 + m_LightmapParameters: {fileID: 0} + m_SortingLayerID: 0 + m_SortingLayer: 0 + m_SortingOrder: 0 +--- !u!65 &6480771853141675505 +BoxCollider: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 6480771853141675519} + m_Material: {fileID: 0} + m_IsTrigger: 0 + m_Enabled: 1 + serializedVersion: 2 + m_Size: {x: 1, y: 1, z: 1} + m_Center: {x: 0, y: 0, z: 0} +--- !u!1 &7963583627780043842 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 8629072935037729342} + - component: {fileID: 8573759392173496670} + - component: {fileID: 97371745083754451} + - component: {fileID: 2427312787908521798} + m_Layer: 0 + m_Name: Billboard Content + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &8629072935037729342 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 7963583627780043842} + m_LocalRotation: {x: -0, y: 1, z: -0, w: 0} + m_LocalPosition: {x: 0, y: 4.77, z: 0.05000004} + m_LocalScale: {x: 5, y: 5, z: 0.9800018} + m_Children: [] + m_Father: {fileID: 6480771852515576468} + m_RootOrder: 0 + m_LocalEulerAnglesHint: {x: 0, y: 180, z: 0} +--- !u!33 &8573759392173496670 +MeshFilter: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 7963583627780043842} + m_Mesh: {fileID: 10210, guid: 0000000000000000e000000000000000, type: 0} +--- !u!23 &97371745083754451 +MeshRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 7963583627780043842} + m_Enabled: 1 + m_CastShadows: 1 + m_ReceiveShadows: 1 + m_DynamicOccludee: 1 + m_MotionVectors: 1 + m_LightProbeUsage: 1 + m_ReflectionProbeUsage: 1 + m_RenderingLayerMask: 1 + m_RendererPriority: 0 + m_Materials: + - {fileID: 2100000, guid: ba793090d6ae148e9a8a50996460f4f1, type: 2} + m_StaticBatchInfo: + firstSubMesh: 0 + subMeshCount: 0 + m_StaticBatchRoot: {fileID: 0} + m_ProbeAnchor: {fileID: 0} + m_LightProbeVolumeOverride: {fileID: 0} + m_ScaleInLightmap: 1 + m_PreserveUVs: 0 + m_IgnoreNormalsForChartDetection: 0 + m_ImportantGI: 0 + m_StitchLightmapSeams: 0 + m_SelectedEditorRenderState: 3 + m_MinimumChartSize: 4 + m_AutoUVMaxDistance: 0.5 + m_AutoUVMaxAngle: 89 + m_LightmapParameters: {fileID: 0} + m_SortingLayerID: 0 + m_SortingLayer: 0 + m_SortingOrder: 0 +--- !u!65 &2427312787908521798 +BoxCollider: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 7963583627780043842} + m_Material: {fileID: 0} + m_IsTrigger: 0 + m_Enabled: 1 + serializedVersion: 2 + m_Size: {x: 1, y: 1, z: 1} + m_Center: {x: 0, y: 0, z: 0} diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/3DProps/BillboardPrefabs/BillboardBasic.prefab.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/3DProps/BillboardPrefabs/BillboardBasic.prefab.meta" new file mode 100644 index 00000000..d9159a94 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/3DProps/BillboardPrefabs/BillboardBasic.prefab.meta" @@ -0,0 +1,7 @@ +fileFormatVersion: 2 +guid: 441945e8a4aa644b3ac6600c6712f79c +PrefabImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/3DProps/BillboardPrefabs/BillboardTall.prefab" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/3DProps/BillboardPrefabs/BillboardTall.prefab" new file mode 100644 index 00000000..e0469455 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/3DProps/BillboardPrefabs/BillboardTall.prefab" @@ -0,0 +1,443 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!1 &5235224422661690497 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 5235224422661690496} + m_Layer: 0 + m_Name: Lamps + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &5235224422661690496 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 5235224422661690497} + m_LocalRotation: {x: -0, y: -0.7071068, z: -0.7071068, w: 0} + m_LocalPosition: {x: 0, y: 0, z: 0} + m_LocalScale: {x: 0.010000005, y: 0.010000002, z: 0.010000002} + m_Children: + - {fileID: 5235224423125020390} + - {fileID: 5235224424210401305} + - {fileID: 5235224422778544868} + m_Father: {fileID: 5254814590992196339} + m_RootOrder: 0 + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!1 &5235224422772268664 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 5235224422772268667} + m_Layer: 0 + m_Name: Billboard Tall + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &5235224422772268667 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 5235224422772268664} + m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} + m_LocalPosition: {x: 4.99, y: 0, z: 0} + m_LocalScale: {x: 1, y: 1, z: 1} + m_Children: + - {fileID: 3032332860307306253} + - {fileID: 5254814590992196339} + m_Father: {fileID: 0} + m_RootOrder: 0 + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!1 &5235224422778544869 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 5235224422778544868} + - component: {fileID: 5235224422778544871} + m_Layer: 0 + m_Name: Spot Light (2) + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &5235224422778544868 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 5235224422778544869} + m_LocalRotation: {x: -0.7557976, y: -0, z: -0, w: 0.6548053} + m_LocalPosition: {x: -1.207, y: 1.522, z: 0.242} + m_LocalScale: {x: 1, y: 1.0000001, z: 1.0000001} + m_Children: [] + m_Father: {fileID: 5235224422661690496} + m_RootOrder: 2 + m_LocalEulerAnglesHint: {x: -98.189995, y: 0, z: 0} +--- !u!108 &5235224422778544871 +Light: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 5235224422778544869} + m_Enabled: 1 + serializedVersion: 8 + m_Type: 0 + m_Color: {r: 1, g: 1, b: 1, a: 1} + m_Intensity: 3 + m_Range: 4 + m_SpotAngle: 87.9 + m_CookieSize: 10 + m_Shadows: + m_Type: 0 + m_Resolution: -1 + m_CustomResolution: -1 + m_Strength: 1 + m_Bias: 0.05 + m_NormalBias: 0.4 + m_NearPlane: 0.2 + m_Cookie: {fileID: 0} + m_DrawHalo: 0 + m_Flare: {fileID: 0} + m_RenderMode: 1 + m_CullingMask: + serializedVersion: 2 + m_Bits: 4294967295 + m_Lightmapping: 4 + m_LightShadowCasterMode: 0 + m_AreaSize: {x: 1, y: 1} + m_BounceIntensity: 1 + m_ColorTemperature: 6570 + m_UseColorTemperature: 0 + m_ShadowRadius: 0 + m_ShadowAngle: 0 +--- !u!1 &5235224423125020391 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 5235224423125020390} + - component: {fileID: 5235224423125020377} + m_Layer: 0 + m_Name: Spot Light + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &5235224423125020390 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 5235224423125020391} + m_LocalRotation: {x: -0.7557976, y: -0, z: -0, w: 0.6548053} + m_LocalPosition: {x: 0, y: 1.522, z: 0.242} + m_LocalScale: {x: 1, y: 1, z: 1} + m_Children: [] + m_Father: {fileID: 5235224422661690496} + m_RootOrder: 0 + m_LocalEulerAnglesHint: {x: -98.189995, y: 0, z: 0} +--- !u!108 &5235224423125020377 +Light: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 5235224423125020391} + m_Enabled: 1 + serializedVersion: 8 + m_Type: 0 + m_Color: {r: 1, g: 1, b: 1, a: 1} + m_Intensity: 3 + m_Range: 4 + m_SpotAngle: 87.9 + m_CookieSize: 10 + m_Shadows: + m_Type: 0 + m_Resolution: -1 + m_CustomResolution: -1 + m_Strength: 1 + m_Bias: 0.05 + m_NormalBias: 0.4 + m_NearPlane: 0.2 + m_Cookie: {fileID: 0} + m_DrawHalo: 0 + m_Flare: {fileID: 0} + m_RenderMode: 1 + m_CullingMask: + serializedVersion: 2 + m_Bits: 4294967295 + m_Lightmapping: 4 + m_LightShadowCasterMode: 0 + m_AreaSize: {x: 1, y: 1} + m_BounceIntensity: 1 + m_ColorTemperature: 6570 + m_UseColorTemperature: 0 + m_ShadowRadius: 0 + m_ShadowAngle: 0 +--- !u!1 &5235224424210401318 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 5235224424210401305} + - component: {fileID: 5235224424210401304} + m_Layer: 0 + m_Name: Spot Light (1) + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &5235224424210401305 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 5235224424210401318} + m_LocalRotation: {x: -0.7557976, y: -0, z: -0, w: 0.6548053} + m_LocalPosition: {x: 1.191, y: 1.522, z: 0.242} + m_LocalScale: {x: 1, y: 1.0000001, z: 1.0000001} + m_Children: [] + m_Father: {fileID: 5235224422661690496} + m_RootOrder: 1 + m_LocalEulerAnglesHint: {x: -98.189995, y: 0, z: 0} +--- !u!108 &5235224424210401304 +Light: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 5235224424210401318} + m_Enabled: 1 + serializedVersion: 8 + m_Type: 0 + m_Color: {r: 1, g: 1, b: 1, a: 1} + m_Intensity: 3 + m_Range: 4 + m_SpotAngle: 87.9 + m_CookieSize: 10 + m_Shadows: + m_Type: 0 + m_Resolution: -1 + m_CustomResolution: -1 + m_Strength: 1 + m_Bias: 0.05 + m_NormalBias: 0.4 + m_NearPlane: 0.2 + m_Cookie: {fileID: 0} + m_DrawHalo: 0 + m_Flare: {fileID: 0} + m_RenderMode: 1 + m_CullingMask: + serializedVersion: 2 + m_Bits: 4294967295 + m_Lightmapping: 4 + m_LightShadowCasterMode: 0 + m_AreaSize: {x: 1, y: 1} + m_BounceIntensity: 1 + m_ColorTemperature: 6570 + m_UseColorTemperature: 0 + m_ShadowRadius: 0 + m_ShadowAngle: 0 +--- !u!1 &6800231621779459834 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 5254814590992196339} + - component: {fileID: 1386764997096975901} + - component: {fileID: 5127975202954213343} + m_Layer: 0 + m_Name: Frame + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &5254814590992196339 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 6800231621779459834} + m_LocalRotation: {x: 0, y: 0.7071068, z: 0.7071068, w: 0} + m_LocalPosition: {x: 0, y: 0, z: 0} + m_LocalScale: {x: 200, y: 200, z: 200} + m_Children: + - {fileID: 5235224422661690496} + m_Father: {fileID: 5235224422772268667} + m_RootOrder: 1 + m_LocalEulerAnglesHint: {x: -90, y: 180, z: 0} +--- !u!33 &1386764997096975901 +MeshFilter: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 6800231621779459834} + m_Mesh: {fileID: 4300002, guid: ae9da133c804d4fd8b985969f814bfdc, type: 3} +--- !u!23 &5127975202954213343 +MeshRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 6800231621779459834} + m_Enabled: 1 + m_CastShadows: 1 + m_ReceiveShadows: 1 + m_DynamicOccludee: 1 + m_MotionVectors: 1 + m_LightProbeUsage: 1 + m_ReflectionProbeUsage: 1 + m_RenderingLayerMask: 1 + m_RendererPriority: 0 + m_Materials: + - {fileID: 2100000, guid: 190c04ee61aaa410e8650f7fc1ce7f41, type: 2} + m_StaticBatchInfo: + firstSubMesh: 0 + subMeshCount: 0 + m_StaticBatchRoot: {fileID: 0} + m_ProbeAnchor: {fileID: 0} + m_LightProbeVolumeOverride: {fileID: 0} + m_ScaleInLightmap: 1 + m_PreserveUVs: 0 + m_IgnoreNormalsForChartDetection: 0 + m_ImportantGI: 0 + m_StitchLightmapSeams: 0 + m_SelectedEditorRenderState: 3 + m_MinimumChartSize: 4 + m_AutoUVMaxDistance: 0.5 + m_AutoUVMaxAngle: 89 + m_LightmapParameters: {fileID: 0} + m_SortingLayerID: 0 + m_SortingLayer: 0 + m_SortingOrder: 0 +--- !u!1 &8622617452924778745 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 3032332860307306253} + - component: {fileID: 3357772511610889633} + - component: {fileID: 3058205652541889214} + - component: {fileID: 3904176475636038079} + m_Layer: 0 + m_Name: Billboard Content + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &3032332860307306253 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 8622617452924778745} + m_LocalRotation: {x: -0, y: 0.7071068, z: 0.7071068, w: 0} + m_LocalPosition: {x: 0, y: 0, z: 0} + m_LocalScale: {x: 200, y: 200, z: 200} + m_Children: [] + m_Father: {fileID: 5235224422772268667} + m_RootOrder: 0 + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!33 &3357772511610889633 +MeshFilter: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 8622617452924778745} + m_Mesh: {fileID: 4300000, guid: ae9da133c804d4fd8b985969f814bfdc, type: 3} +--- !u!23 &3058205652541889214 +MeshRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 8622617452924778745} + m_Enabled: 1 + m_CastShadows: 1 + m_ReceiveShadows: 1 + m_DynamicOccludee: 1 + m_MotionVectors: 1 + m_LightProbeUsage: 1 + m_ReflectionProbeUsage: 1 + m_RenderingLayerMask: 1 + m_RendererPriority: 0 + m_Materials: + - {fileID: 2100000, guid: ba793090d6ae148e9a8a50996460f4f1, type: 2} + m_StaticBatchInfo: + firstSubMesh: 0 + subMeshCount: 0 + m_StaticBatchRoot: {fileID: 0} + m_ProbeAnchor: {fileID: 0} + m_LightProbeVolumeOverride: {fileID: 0} + m_ScaleInLightmap: 1 + m_PreserveUVs: 0 + m_IgnoreNormalsForChartDetection: 0 + m_ImportantGI: 0 + m_StitchLightmapSeams: 0 + m_SelectedEditorRenderState: 3 + m_MinimumChartSize: 4 + m_AutoUVMaxDistance: 0.5 + m_AutoUVMaxAngle: 89 + m_LightmapParameters: {fileID: 0} + m_SortingLayerID: 0 + m_SortingLayer: 0 + m_SortingOrder: 0 +--- !u!65 &3904176475636038079 +BoxCollider: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 8622617452924778745} + m_Material: {fileID: 0} + m_IsTrigger: 0 + m_Enabled: 1 + serializedVersion: 2 + m_Size: {x: 0.04003825, y: 0.002, z: 0.03765431} + m_Center: {x: 0, y: 0.00022130174, z: 0.033720758} diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/3DProps/BillboardPrefabs/BillboardTall.prefab.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/3DProps/BillboardPrefabs/BillboardTall.prefab.meta" new file mode 100644 index 00000000..81d5fbf1 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/3DProps/BillboardPrefabs/BillboardTall.prefab.meta" @@ -0,0 +1,7 @@ +fileFormatVersion: 2 +guid: eb2165edd3e7844999a55b305c92b541 +PrefabImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/3DProps/BillboardPrefabs/BillboardWide.prefab" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/3DProps/BillboardPrefabs/BillboardWide.prefab" new file mode 100644 index 00000000..b56c31f3 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/3DProps/BillboardPrefabs/BillboardWide.prefab" @@ -0,0 +1,443 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!1 &657696872430248943 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 657696872430248912} + - component: {fileID: 657696872430248913} + m_Layer: 0 + m_Name: Spot Light (1) + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &657696872430248912 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 657696872430248943} + m_LocalRotation: {x: -0.79631513, y: -0, z: -0, w: 0.604882} + m_LocalPosition: {x: 1.191, y: 1.522, z: 0.242} + m_LocalScale: {x: 1, y: 1.0000001, z: 1.0000001} + m_Children: [] + m_Father: {fileID: 657696873983164233} + m_RootOrder: 1 + m_LocalEulerAnglesHint: {x: -105.559, y: 0, z: 0} +--- !u!108 &657696872430248913 +Light: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 657696872430248943} + m_Enabled: 1 + serializedVersion: 8 + m_Type: 0 + m_Color: {r: 1, g: 1, b: 1, a: 1} + m_Intensity: 2 + m_Range: 3 + m_SpotAngle: 102.5 + m_CookieSize: 10 + m_Shadows: + m_Type: 0 + m_Resolution: -1 + m_CustomResolution: -1 + m_Strength: 1 + m_Bias: 0.05 + m_NormalBias: 0.4 + m_NearPlane: 0.2 + m_Cookie: {fileID: 0} + m_DrawHalo: 0 + m_Flare: {fileID: 0} + m_RenderMode: 1 + m_CullingMask: + serializedVersion: 2 + m_Bits: 4294967295 + m_Lightmapping: 4 + m_LightShadowCasterMode: 0 + m_AreaSize: {x: 1, y: 1} + m_BounceIntensity: 1 + m_ColorTemperature: 6570 + m_UseColorTemperature: 0 + m_ShadowRadius: 0 + m_ShadowAngle: 0 +--- !u!1 &657696873523791150 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 657696873523791151} + - component: {fileID: 657696873523791120} + m_Layer: 0 + m_Name: Spot Light + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &657696873523791151 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 657696873523791150} + m_LocalRotation: {x: -0.79631513, y: -0, z: -0, w: 0.604882} + m_LocalPosition: {x: 0, y: 1.522, z: 0.242} + m_LocalScale: {x: 1, y: 1, z: 1} + m_Children: [] + m_Father: {fileID: 657696873983164233} + m_RootOrder: 0 + m_LocalEulerAnglesHint: {x: -105.559, y: 0, z: 0} +--- !u!108 &657696873523791120 +Light: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 657696873523791150} + m_Enabled: 1 + serializedVersion: 8 + m_Type: 0 + m_Color: {r: 1, g: 1, b: 1, a: 1} + m_Intensity: 2 + m_Range: 3 + m_SpotAngle: 102.5 + m_CookieSize: 10 + m_Shadows: + m_Type: 0 + m_Resolution: -1 + m_CustomResolution: -1 + m_Strength: 1 + m_Bias: 0.05 + m_NormalBias: 0.4 + m_NearPlane: 0.2 + m_Cookie: {fileID: 0} + m_DrawHalo: 0 + m_Flare: {fileID: 0} + m_RenderMode: 1 + m_CullingMask: + serializedVersion: 2 + m_Bits: 4294967295 + m_Lightmapping: 4 + m_LightShadowCasterMode: 0 + m_AreaSize: {x: 1, y: 1} + m_BounceIntensity: 1 + m_ColorTemperature: 6570 + m_UseColorTemperature: 0 + m_ShadowRadius: 0 + m_ShadowAngle: 0 +--- !u!1 &657696873867348268 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 657696873867348269} + - component: {fileID: 657696873867348270} + m_Layer: 0 + m_Name: Spot Light (2) + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &657696873867348269 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 657696873867348268} + m_LocalRotation: {x: -0.79631513, y: -0, z: -0, w: 0.604882} + m_LocalPosition: {x: -1.207, y: 1.522, z: 0.242} + m_LocalScale: {x: 1, y: 1.0000001, z: 1.0000001} + m_Children: [] + m_Father: {fileID: 657696873983164233} + m_RootOrder: 2 + m_LocalEulerAnglesHint: {x: -105.559, y: 0, z: 0} +--- !u!108 &657696873867348270 +Light: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 657696873867348268} + m_Enabled: 1 + serializedVersion: 8 + m_Type: 0 + m_Color: {r: 1, g: 1, b: 1, a: 1} + m_Intensity: 2 + m_Range: 3 + m_SpotAngle: 102.5 + m_CookieSize: 10 + m_Shadows: + m_Type: 0 + m_Resolution: -1 + m_CustomResolution: -1 + m_Strength: 1 + m_Bias: 0.05 + m_NormalBias: 0.4 + m_NearPlane: 0.2 + m_Cookie: {fileID: 0} + m_DrawHalo: 0 + m_Flare: {fileID: 0} + m_RenderMode: 1 + m_CullingMask: + serializedVersion: 2 + m_Bits: 4294967295 + m_Lightmapping: 4 + m_LightShadowCasterMode: 0 + m_AreaSize: {x: 1, y: 1} + m_BounceIntensity: 1 + m_ColorTemperature: 6570 + m_UseColorTemperature: 0 + m_ShadowRadius: 0 + m_ShadowAngle: 0 +--- !u!1 &657696873877861809 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 657696873877861810} + m_Layer: 0 + m_Name: Billboard Wide + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &657696873877861810 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 657696873877861809} + m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} + m_LocalPosition: {x: 0, y: 0, z: 0} + m_LocalScale: {x: 1, y: 1, z: 1} + m_Children: + - {fileID: 7751497163515485380} + - {fileID: 678637500275919162} + m_Father: {fileID: 0} + m_RootOrder: 0 + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!1 &657696873983164232 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 657696873983164233} + m_Layer: 0 + m_Name: Lamps + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &657696873983164233 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 657696873983164232} + m_LocalRotation: {x: -0, y: -0.7071068, z: -0.7071068, w: 0} + m_LocalPosition: {x: 0, y: 0, z: 0} + m_LocalScale: {x: 0.010000005, y: 0.010000002, z: 0.010000002} + m_Children: + - {fileID: 657696873523791151} + - {fileID: 657696872430248912} + - {fileID: 657696873867348269} + m_Father: {fileID: 678637500275919162} + m_RootOrder: 0 + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!1 &2294757264849806643 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 678637500275919162} + - component: {fileID: 5960826748793554388} + - component: {fileID: 481288629345147926} + m_Layer: 0 + m_Name: Frame + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &678637500275919162 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 2294757264849806643} + m_LocalRotation: {x: 0, y: 0.7071068, z: 0.7071068, w: 0} + m_LocalPosition: {x: 0, y: 0, z: 0} + m_LocalScale: {x: 200, y: 200, z: 200} + m_Children: + - {fileID: 657696873983164233} + m_Father: {fileID: 657696873877861810} + m_RootOrder: 1 + m_LocalEulerAnglesHint: {x: -90, y: 180, z: 0} +--- !u!33 &5960826748793554388 +MeshFilter: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 2294757264849806643} + m_Mesh: {fileID: 4300000, guid: ad9c1e36fab414677bc655cab88a1b71, type: 3} +--- !u!23 &481288629345147926 +MeshRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 2294757264849806643} + m_Enabled: 1 + m_CastShadows: 1 + m_ReceiveShadows: 1 + m_DynamicOccludee: 1 + m_MotionVectors: 1 + m_LightProbeUsage: 1 + m_ReflectionProbeUsage: 1 + m_RenderingLayerMask: 1 + m_RendererPriority: 0 + m_Materials: + - {fileID: 2100000, guid: 190c04ee61aaa410e8650f7fc1ce7f41, type: 2} + m_StaticBatchInfo: + firstSubMesh: 0 + subMeshCount: 0 + m_StaticBatchRoot: {fileID: 0} + m_ProbeAnchor: {fileID: 0} + m_LightProbeVolumeOverride: {fileID: 0} + m_ScaleInLightmap: 1 + m_PreserveUVs: 0 + m_IgnoreNormalsForChartDetection: 0 + m_ImportantGI: 0 + m_StitchLightmapSeams: 0 + m_SelectedEditorRenderState: 3 + m_MinimumChartSize: 4 + m_AutoUVMaxDistance: 0.5 + m_AutoUVMaxAngle: 89 + m_LightmapParameters: {fileID: 0} + m_SortingLayerID: 0 + m_SortingLayer: 0 + m_SortingOrder: 0 +--- !u!1 &3904176476466942768 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 7751497163515485380} + - component: {fileID: 8007100509283864168} + - component: {fileID: 7779747238452687223} + - component: {fileID: 4543832971907417025} + m_Layer: 0 + m_Name: Billboard Content + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &7751497163515485380 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 3904176476466942768} + m_LocalRotation: {x: -0, y: 0.7071068, z: 0.7071068, w: 0} + m_LocalPosition: {x: 0, y: 0, z: 0} + m_LocalScale: {x: 200, y: 200, z: 200} + m_Children: [] + m_Father: {fileID: 657696873877861810} + m_RootOrder: 0 + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!33 &8007100509283864168 +MeshFilter: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 3904176476466942768} + m_Mesh: {fileID: 4300002, guid: ad9c1e36fab414677bc655cab88a1b71, type: 3} +--- !u!23 &7779747238452687223 +MeshRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 3904176476466942768} + m_Enabled: 1 + m_CastShadows: 1 + m_ReceiveShadows: 1 + m_DynamicOccludee: 1 + m_MotionVectors: 1 + m_LightProbeUsage: 1 + m_ReflectionProbeUsage: 1 + m_RenderingLayerMask: 1 + m_RendererPriority: 0 + m_Materials: + - {fileID: 2100000, guid: ba793090d6ae148e9a8a50996460f4f1, type: 2} + m_StaticBatchInfo: + firstSubMesh: 0 + subMeshCount: 0 + m_StaticBatchRoot: {fileID: 0} + m_ProbeAnchor: {fileID: 0} + m_LightProbeVolumeOverride: {fileID: 0} + m_ScaleInLightmap: 1 + m_PreserveUVs: 0 + m_IgnoreNormalsForChartDetection: 0 + m_ImportantGI: 0 + m_StitchLightmapSeams: 0 + m_SelectedEditorRenderState: 3 + m_MinimumChartSize: 4 + m_AutoUVMaxDistance: 0.5 + m_AutoUVMaxAngle: 89 + m_LightmapParameters: {fileID: 0} + m_SortingLayerID: 0 + m_SortingLayer: 0 + m_SortingOrder: 0 +--- !u!65 &4543832971907417025 +BoxCollider: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 3904176476466942768} + m_Material: {fileID: 0} + m_IsTrigger: 0 + m_Enabled: 1 + serializedVersion: 2 + m_Size: {x: 0.04003825, y: 0.002, z: 0.019649515} + m_Center: {x: 0, y: 0.0001493528, z: 0.024718355} diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/3DProps/BillboardPrefabs/BillboardWide.prefab.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/3DProps/BillboardPrefabs/BillboardWide.prefab.meta" new file mode 100644 index 00000000..374d3be8 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/3DProps/BillboardPrefabs/BillboardWide.prefab.meta" @@ -0,0 +1,7 @@ +fileFormatVersion: 2 +guid: 87a6cea72ce7247a2814467dab442418 +PrefabImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/3DProps/FoodProps.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/3DProps/FoodProps.meta" new file mode 100644 index 00000000..fd4ea79b --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/3DProps/FoodProps.meta" @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: ad4084aee88fd459f97cbe795fbd3dc0 +folderAsset: yes +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/3DProps/FoodProps/Cookie.fbx" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/3DProps/FoodProps/Cookie.fbx" new file mode 100644 index 00000000..1d4bd177 Binary files /dev/null and "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/3DProps/FoodProps/Cookie.fbx" differ diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/3DProps/FoodProps/Cookie.fbx.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/3DProps/FoodProps/Cookie.fbx.meta" new file mode 100644 index 00000000..43e9b240 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/3DProps/FoodProps/Cookie.fbx.meta" @@ -0,0 +1,98 @@ +fileFormatVersion: 2 +guid: a8f127f4a0a19407db2b784d5ae1b637 +ModelImporter: + serializedVersion: 23 + fileIDToRecycleName: + 100000: //RootNode + 400000: //RootNode + 2100000: Cookie + 2100002: CookieChip + 2300000: //RootNode + 3300000: //RootNode + 4300000: Cookie + externalObjects: {} + materials: + importMaterials: 1 + materialName: 0 + materialSearch: 1 + materialLocation: 1 + animations: + legacyGenerateAnimations: 4 + bakeSimulation: 0 + resampleCurves: 1 + optimizeGameObjects: 0 + motionNodeName: + rigImportErrors: + rigImportWarnings: + animationImportErrors: + animationImportWarnings: + animationRetargetingWarnings: + animationDoRetargetingWarnings: 0 + importAnimatedCustomProperties: 0 + importConstraints: 0 + animationCompression: 1 + animationRotationError: 0.5 + animationPositionError: 0.5 + animationScaleError: 0.5 + animationWrapMode: 0 + extraExposedTransformPaths: [] + extraUserProperties: [] + clipAnimations: [] + isReadable: 1 + meshes: + lODScreenPercentages: [] + globalScale: 1 + meshCompression: 0 + addColliders: 0 + useSRGBMaterialColor: 1 + importVisibility: 1 + importBlendShapes: 1 + importCameras: 1 + importLights: 1 + swapUVChannels: 0 + generateSecondaryUV: 0 + useFileUnits: 1 + optimizeMeshForGPU: 1 + keepQuads: 0 + weldVertices: 1 + preserveHierarchy: 0 + indexFormat: 0 + secondaryUVAngleDistortion: 8 + secondaryUVAreaDistortion: 15.000001 + secondaryUVHardAngle: 88 + secondaryUVPackMargin: 4 + useFileScale: 1 + previousCalculatedGlobalScale: 1 + hasPreviousCalculatedGlobalScale: 0 + tangentSpace: + normalSmoothAngle: 60 + normalImportMode: 0 + tangentImportMode: 3 + normalCalculationMode: 4 + legacyComputeAllNormalsFromSmoothingGroupsWhenMeshHasBlendShapes: 0 + blendShapeNormalImportMode: 1 + normalSmoothingSource: 0 + importAnimation: 1 + copyAvatar: 0 + humanDescription: + serializedVersion: 2 + human: [] + skeleton: [] + armTwist: 0.5 + foreArmTwist: 0.5 + upperLegTwist: 0.5 + legTwist: 0.5 + armStretch: 0.05 + legStretch: 0.05 + feetSpacing: 0 + rootMotionBoneName: + hasTranslationDoF: 0 + hasExtraRoot: 0 + skeletonHasParents: 1 + lastHumanDescriptionAvatarSource: {instanceID: 0} + animationType: 0 + humanoidOversampling: 1 + additionalBone: 0 + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/3DProps/FoodProps/Donut.fbx" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/3DProps/FoodProps/Donut.fbx" new file mode 100644 index 00000000..3939e6c6 Binary files /dev/null and "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/3DProps/FoodProps/Donut.fbx" differ diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/3DProps/FoodProps/Donut.fbx.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/3DProps/FoodProps/Donut.fbx.meta" new file mode 100644 index 00000000..3960220a --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/3DProps/FoodProps/Donut.fbx.meta" @@ -0,0 +1,104 @@ +fileFormatVersion: 2 +guid: b121577100373491d839adcc51d30452 +ModelImporter: + serializedVersion: 23 + fileIDToRecycleName: + 100000: //RootNode + 100002: Sprinkles + 400000: //RootNode + 400002: Sprinkles + 2100000: DonutBody + 2100002: DonutTop + 2100004: DonutSprinkles + 2300000: //RootNode + 2300002: Sprinkles + 3300000: //RootNode + 3300002: Sprinkles + 4300000: Donut + 4300002: Sprinkles + externalObjects: {} + materials: + importMaterials: 1 + materialName: 0 + materialSearch: 1 + materialLocation: 1 + animations: + legacyGenerateAnimations: 4 + bakeSimulation: 0 + resampleCurves: 1 + optimizeGameObjects: 0 + motionNodeName: + rigImportErrors: + rigImportWarnings: + animationImportErrors: + animationImportWarnings: + animationRetargetingWarnings: + animationDoRetargetingWarnings: 0 + importAnimatedCustomProperties: 0 + importConstraints: 0 + animationCompression: 1 + animationRotationError: 0.5 + animationPositionError: 0.5 + animationScaleError: 0.5 + animationWrapMode: 0 + extraExposedTransformPaths: [] + extraUserProperties: [] + clipAnimations: [] + isReadable: 1 + meshes: + lODScreenPercentages: [] + globalScale: 1 + meshCompression: 3 + addColliders: 0 + useSRGBMaterialColor: 1 + importVisibility: 1 + importBlendShapes: 1 + importCameras: 1 + importLights: 1 + swapUVChannels: 0 + generateSecondaryUV: 0 + useFileUnits: 1 + optimizeMeshForGPU: 1 + keepQuads: 0 + weldVertices: 1 + preserveHierarchy: 0 + indexFormat: 0 + secondaryUVAngleDistortion: 8 + secondaryUVAreaDistortion: 15.000001 + secondaryUVHardAngle: 88 + secondaryUVPackMargin: 4 + useFileScale: 1 + previousCalculatedGlobalScale: 1 + hasPreviousCalculatedGlobalScale: 0 + tangentSpace: + normalSmoothAngle: 0 + normalImportMode: 1 + tangentImportMode: 2 + normalCalculationMode: 4 + legacyComputeAllNormalsFromSmoothingGroupsWhenMeshHasBlendShapes: 0 + blendShapeNormalImportMode: 1 + normalSmoothingSource: 0 + importAnimation: 1 + copyAvatar: 0 + humanDescription: + serializedVersion: 2 + human: [] + skeleton: [] + armTwist: 0.5 + foreArmTwist: 0.5 + upperLegTwist: 0.5 + legTwist: 0.5 + armStretch: 0.05 + legStretch: 0.05 + feetSpacing: 0 + rootMotionBoneName: + hasTranslationDoF: 0 + hasExtraRoot: 0 + skeletonHasParents: 1 + lastHumanDescriptionAvatarSource: {instanceID: 0} + animationType: 0 + humanoidOversampling: 1 + additionalBone: 0 + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/3DProps/FoodProps/GummyBear.fbx" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/3DProps/FoodProps/GummyBear.fbx" new file mode 100644 index 00000000..4e015d51 Binary files /dev/null and "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/3DProps/FoodProps/GummyBear.fbx" differ diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/3DProps/FoodProps/GummyBear.fbx.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/3DProps/FoodProps/GummyBear.fbx.meta" new file mode 100644 index 00000000..66d17f43 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/3DProps/FoodProps/GummyBear.fbx.meta" @@ -0,0 +1,103 @@ +fileFormatVersion: 2 +guid: 58ea00b8d25e246b4aabc659dc7b33c4 +ModelImporter: + serializedVersion: 23 + fileIDToRecycleName: + 100000: //RootNode + 100002: GummyBearEyes + 400000: //RootNode + 400002: GummyBearEyes + 2100000: GummyBear + 2100002: GummyBearEye + 2300000: //RootNode + 2300002: GummyBearEyes + 3300000: //RootNode + 3300002: GummyBearEyes + 4300000: GummyBear + 4300002: GummyBearEyes + externalObjects: {} + materials: + importMaterials: 1 + materialName: 0 + materialSearch: 1 + materialLocation: 1 + animations: + legacyGenerateAnimations: 4 + bakeSimulation: 0 + resampleCurves: 1 + optimizeGameObjects: 0 + motionNodeName: + rigImportErrors: + rigImportWarnings: + animationImportErrors: + animationImportWarnings: + animationRetargetingWarnings: + animationDoRetargetingWarnings: 0 + importAnimatedCustomProperties: 0 + importConstraints: 0 + animationCompression: 1 + animationRotationError: 0.5 + animationPositionError: 0.5 + animationScaleError: 0.5 + animationWrapMode: 0 + extraExposedTransformPaths: [] + extraUserProperties: [] + clipAnimations: [] + isReadable: 1 + meshes: + lODScreenPercentages: [] + globalScale: 1 + meshCompression: 0 + addColliders: 0 + useSRGBMaterialColor: 1 + importVisibility: 1 + importBlendShapes: 1 + importCameras: 1 + importLights: 1 + swapUVChannels: 0 + generateSecondaryUV: 0 + useFileUnits: 1 + optimizeMeshForGPU: 1 + keepQuads: 0 + weldVertices: 1 + preserveHierarchy: 0 + indexFormat: 0 + secondaryUVAngleDistortion: 8 + secondaryUVAreaDistortion: 15.000001 + secondaryUVHardAngle: 88 + secondaryUVPackMargin: 4 + useFileScale: 1 + previousCalculatedGlobalScale: 1 + hasPreviousCalculatedGlobalScale: 0 + tangentSpace: + normalSmoothAngle: 0 + normalImportMode: 1 + tangentImportMode: 3 + normalCalculationMode: 4 + legacyComputeAllNormalsFromSmoothingGroupsWhenMeshHasBlendShapes: 0 + blendShapeNormalImportMode: 1 + normalSmoothingSource: 2 + importAnimation: 1 + copyAvatar: 0 + humanDescription: + serializedVersion: 2 + human: [] + skeleton: [] + armTwist: 0.5 + foreArmTwist: 0.5 + upperLegTwist: 0.5 + legTwist: 0.5 + armStretch: 0.05 + legStretch: 0.05 + feetSpacing: 0 + rootMotionBoneName: + hasTranslationDoF: 0 + hasExtraRoot: 0 + skeletonHasParents: 1 + lastHumanDescriptionAvatarSource: {instanceID: 0} + animationType: 0 + humanoidOversampling: 1 + additionalBone: 0 + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/3DProps/FoodProps/Licorice.fbx" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/3DProps/FoodProps/Licorice.fbx" new file mode 100644 index 00000000..a288d580 Binary files /dev/null and "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/3DProps/FoodProps/Licorice.fbx" differ diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/3DProps/FoodProps/Licorice.fbx.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/3DProps/FoodProps/Licorice.fbx.meta" new file mode 100644 index 00000000..967a50af --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/3DProps/FoodProps/Licorice.fbx.meta" @@ -0,0 +1,98 @@ +fileFormatVersion: 2 +guid: a6ff71d7327404fa29bb26a648cfe3ff +ModelImporter: + serializedVersion: 23 + fileIDToRecycleName: + 100000: //RootNode + 400000: //RootNode + 2100000: Licorice_Body + 2100002: Licorice_Filling + 2300000: //RootNode + 3300000: //RootNode + 4300000: Cube + externalObjects: {} + materials: + importMaterials: 1 + materialName: 0 + materialSearch: 1 + materialLocation: 1 + animations: + legacyGenerateAnimations: 4 + bakeSimulation: 0 + resampleCurves: 1 + optimizeGameObjects: 0 + motionNodeName: + rigImportErrors: + rigImportWarnings: + animationImportErrors: + animationImportWarnings: + animationRetargetingWarnings: + animationDoRetargetingWarnings: 0 + importAnimatedCustomProperties: 0 + importConstraints: 0 + animationCompression: 1 + animationRotationError: 0.5 + animationPositionError: 0.5 + animationScaleError: 0.5 + animationWrapMode: 0 + extraExposedTransformPaths: [] + extraUserProperties: [] + clipAnimations: [] + isReadable: 1 + meshes: + lODScreenPercentages: [] + globalScale: 1 + meshCompression: 0 + addColliders: 0 + useSRGBMaterialColor: 1 + importVisibility: 1 + importBlendShapes: 1 + importCameras: 1 + importLights: 1 + swapUVChannels: 0 + generateSecondaryUV: 0 + useFileUnits: 1 + optimizeMeshForGPU: 1 + keepQuads: 0 + weldVertices: 1 + preserveHierarchy: 0 + indexFormat: 0 + secondaryUVAngleDistortion: 8 + secondaryUVAreaDistortion: 15.000001 + secondaryUVHardAngle: 88 + secondaryUVPackMargin: 4 + useFileScale: 1 + previousCalculatedGlobalScale: 1 + hasPreviousCalculatedGlobalScale: 0 + tangentSpace: + normalSmoothAngle: 60 + normalImportMode: 0 + tangentImportMode: 3 + normalCalculationMode: 4 + legacyComputeAllNormalsFromSmoothingGroupsWhenMeshHasBlendShapes: 0 + blendShapeNormalImportMode: 1 + normalSmoothingSource: 0 + importAnimation: 1 + copyAvatar: 0 + humanDescription: + serializedVersion: 2 + human: [] + skeleton: [] + armTwist: 0.5 + foreArmTwist: 0.5 + upperLegTwist: 0.5 + legTwist: 0.5 + armStretch: 0.05 + legStretch: 0.05 + feetSpacing: 0 + rootMotionBoneName: + hasTranslationDoF: 0 + hasExtraRoot: 0 + skeletonHasParents: 1 + lastHumanDescriptionAvatarSource: {instanceID: 0} + animationType: 0 + humanoidOversampling: 1 + additionalBone: 0 + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/3DProps/FoodProps/Lollipop.fbx" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/3DProps/FoodProps/Lollipop.fbx" new file mode 100644 index 00000000..5ae57918 Binary files /dev/null and "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/3DProps/FoodProps/Lollipop.fbx" differ diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/3DProps/FoodProps/Lollipop.fbx.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/3DProps/FoodProps/Lollipop.fbx.meta" new file mode 100644 index 00000000..936017d4 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/3DProps/FoodProps/Lollipop.fbx.meta" @@ -0,0 +1,100 @@ +fileFormatVersion: 2 +guid: 4ae0a8e21fe944960ae7238feeda49f1 +ModelImporter: + serializedVersion: 23 + fileIDToRecycleName: + 100000: //RootNode + 400000: //RootNode + 2100000: Lollipop + 2100002: LollipopStem + 2100004: LollipopAccent + 2300000: //RootNode + 3300000: //RootNode + 4300000: Spiral.000 + 4300002: lollipop + externalObjects: {} + materials: + importMaterials: 1 + materialName: 0 + materialSearch: 1 + materialLocation: 1 + animations: + legacyGenerateAnimations: 4 + bakeSimulation: 0 + resampleCurves: 1 + optimizeGameObjects: 0 + motionNodeName: + rigImportErrors: + rigImportWarnings: + animationImportErrors: + animationImportWarnings: + animationRetargetingWarnings: + animationDoRetargetingWarnings: 0 + importAnimatedCustomProperties: 0 + importConstraints: 0 + animationCompression: 1 + animationRotationError: 0.5 + animationPositionError: 0.5 + animationScaleError: 0.5 + animationWrapMode: 0 + extraExposedTransformPaths: [] + extraUserProperties: [] + clipAnimations: [] + isReadable: 1 + meshes: + lODScreenPercentages: [] + globalScale: 1 + meshCompression: 0 + addColliders: 0 + useSRGBMaterialColor: 1 + importVisibility: 1 + importBlendShapes: 1 + importCameras: 1 + importLights: 1 + swapUVChannels: 0 + generateSecondaryUV: 0 + useFileUnits: 1 + optimizeMeshForGPU: 1 + keepQuads: 0 + weldVertices: 1 + preserveHierarchy: 0 + indexFormat: 0 + secondaryUVAngleDistortion: 8 + secondaryUVAreaDistortion: 15.000001 + secondaryUVHardAngle: 88 + secondaryUVPackMargin: 4 + useFileScale: 1 + previousCalculatedGlobalScale: 1 + hasPreviousCalculatedGlobalScale: 0 + tangentSpace: + normalSmoothAngle: 60 + normalImportMode: 1 + tangentImportMode: 3 + normalCalculationMode: 4 + legacyComputeAllNormalsFromSmoothingGroupsWhenMeshHasBlendShapes: 0 + blendShapeNormalImportMode: 1 + normalSmoothingSource: 0 + importAnimation: 1 + copyAvatar: 0 + humanDescription: + serializedVersion: 2 + human: [] + skeleton: [] + armTwist: 0.5 + foreArmTwist: 0.5 + upperLegTwist: 0.5 + legTwist: 0.5 + armStretch: 0.05 + legStretch: 0.05 + feetSpacing: 0 + rootMotionBoneName: + hasTranslationDoF: 0 + hasExtraRoot: 0 + skeletonHasParents: 1 + lastHumanDescriptionAvatarSource: {instanceID: 0} + animationType: 0 + humanoidOversampling: 1 + additionalBone: 0 + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/3DProps/NatureProps.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/3DProps/NatureProps.meta" new file mode 100644 index 00000000..d1ee5e93 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/3DProps/NatureProps.meta" @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: c007a1097e167724aa0292167ff2d3b1 +folderAsset: yes +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/3DProps/NatureProps/Cactus.fbx" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/3DProps/NatureProps/Cactus.fbx" new file mode 100644 index 00000000..8239ef3c Binary files /dev/null and "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/3DProps/NatureProps/Cactus.fbx" differ diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/3DProps/NatureProps/Cactus.fbx.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/3DProps/NatureProps/Cactus.fbx.meta" new file mode 100644 index 00000000..1060c443 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/3DProps/NatureProps/Cactus.fbx.meta" @@ -0,0 +1,98 @@ +fileFormatVersion: 2 +guid: abd8d6df37cf14c4485291b3d13cd460 +ModelImporter: + serializedVersion: 23 + fileIDToRecycleName: + 100000: //RootNode + 400000: //RootNode + 2100000: Cactus + 2300000: //RootNode + 3300000: //RootNode + 4300000: Cactus + 4300002: cactus + externalObjects: {} + materials: + importMaterials: 1 + materialName: 0 + materialSearch: 1 + materialLocation: 1 + animations: + legacyGenerateAnimations: 4 + bakeSimulation: 0 + resampleCurves: 1 + optimizeGameObjects: 0 + motionNodeName: + rigImportErrors: + rigImportWarnings: + animationImportErrors: + animationImportWarnings: + animationRetargetingWarnings: + animationDoRetargetingWarnings: 0 + importAnimatedCustomProperties: 0 + importConstraints: 0 + animationCompression: 1 + animationRotationError: 0.5 + animationPositionError: 0.5 + animationScaleError: 0.5 + animationWrapMode: 0 + extraExposedTransformPaths: [] + extraUserProperties: [] + clipAnimations: [] + isReadable: 1 + meshes: + lODScreenPercentages: [] + globalScale: 1 + meshCompression: 0 + addColliders: 0 + useSRGBMaterialColor: 1 + importVisibility: 1 + importBlendShapes: 1 + importCameras: 1 + importLights: 1 + swapUVChannels: 0 + generateSecondaryUV: 0 + useFileUnits: 1 + optimizeMeshForGPU: 1 + keepQuads: 0 + weldVertices: 1 + preserveHierarchy: 0 + indexFormat: 0 + secondaryUVAngleDistortion: 8 + secondaryUVAreaDistortion: 15.000001 + secondaryUVHardAngle: 88 + secondaryUVPackMargin: 4 + useFileScale: 1 + previousCalculatedGlobalScale: 1 + hasPreviousCalculatedGlobalScale: 0 + tangentSpace: + normalSmoothAngle: 60 + normalImportMode: 0 + tangentImportMode: 3 + normalCalculationMode: 4 + legacyComputeAllNormalsFromSmoothingGroupsWhenMeshHasBlendShapes: 0 + blendShapeNormalImportMode: 1 + normalSmoothingSource: 0 + importAnimation: 1 + copyAvatar: 0 + humanDescription: + serializedVersion: 2 + human: [] + skeleton: [] + armTwist: 0.5 + foreArmTwist: 0.5 + upperLegTwist: 0.5 + legTwist: 0.5 + armStretch: 0.05 + legStretch: 0.05 + feetSpacing: 0 + rootMotionBoneName: + hasTranslationDoF: 0 + hasExtraRoot: 0 + skeletonHasParents: 1 + lastHumanDescriptionAvatarSource: {instanceID: 0} + animationType: 0 + humanoidOversampling: 1 + additionalBone: 0 + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/3DProps/NatureProps/FallenTree.fbx" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/3DProps/NatureProps/FallenTree.fbx" new file mode 100644 index 00000000..46747005 Binary files /dev/null and "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/3DProps/NatureProps/FallenTree.fbx" differ diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/3DProps/NatureProps/FallenTree.fbx.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/3DProps/NatureProps/FallenTree.fbx.meta" new file mode 100644 index 00000000..51b84ac6 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/3DProps/NatureProps/FallenTree.fbx.meta" @@ -0,0 +1,97 @@ +fileFormatVersion: 2 +guid: eaf3edd0ef88ac84c970b62f673ed6b0 +ModelImporter: + serializedVersion: 23 + fileIDToRecycleName: + 100000: //RootNode + 400000: //RootNode + 2100000: FirTreeTrunk + 2300000: //RootNode + 3300000: //RootNode + 4300000: Cone + externalObjects: {} + materials: + importMaterials: 1 + materialName: 0 + materialSearch: 1 + materialLocation: 1 + animations: + legacyGenerateAnimations: 4 + bakeSimulation: 0 + resampleCurves: 1 + optimizeGameObjects: 0 + motionNodeName: + rigImportErrors: + rigImportWarnings: + animationImportErrors: + animationImportWarnings: + animationRetargetingWarnings: + animationDoRetargetingWarnings: 0 + importAnimatedCustomProperties: 0 + importConstraints: 0 + animationCompression: 1 + animationRotationError: 0.5 + animationPositionError: 0.5 + animationScaleError: 0.5 + animationWrapMode: 0 + extraExposedTransformPaths: [] + extraUserProperties: [] + clipAnimations: [] + isReadable: 1 + meshes: + lODScreenPercentages: [] + globalScale: 1 + meshCompression: 0 + addColliders: 0 + useSRGBMaterialColor: 1 + importVisibility: 1 + importBlendShapes: 1 + importCameras: 1 + importLights: 1 + swapUVChannels: 0 + generateSecondaryUV: 0 + useFileUnits: 1 + optimizeMeshForGPU: 1 + keepQuads: 0 + weldVertices: 1 + preserveHierarchy: 0 + indexFormat: 0 + secondaryUVAngleDistortion: 8 + secondaryUVAreaDistortion: 15.000001 + secondaryUVHardAngle: 88 + secondaryUVPackMargin: 4 + useFileScale: 1 + previousCalculatedGlobalScale: 1 + hasPreviousCalculatedGlobalScale: 0 + tangentSpace: + normalSmoothAngle: 60 + normalImportMode: 0 + tangentImportMode: 3 + normalCalculationMode: 4 + legacyComputeAllNormalsFromSmoothingGroupsWhenMeshHasBlendShapes: 0 + blendShapeNormalImportMode: 1 + normalSmoothingSource: 0 + importAnimation: 1 + copyAvatar: 0 + humanDescription: + serializedVersion: 2 + human: [] + skeleton: [] + armTwist: 0.5 + foreArmTwist: 0.5 + upperLegTwist: 0.5 + legTwist: 0.5 + armStretch: 0.05 + legStretch: 0.05 + feetSpacing: 0 + rootMotionBoneName: + hasTranslationDoF: 0 + hasExtraRoot: 0 + skeletonHasParents: 1 + lastHumanDescriptionAvatarSource: {instanceID: 0} + animationType: 0 + humanoidOversampling: 1 + additionalBone: 0 + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/3DProps/NatureProps/FirTree.fbx" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/3DProps/NatureProps/FirTree.fbx" new file mode 100644 index 00000000..f52e8600 Binary files /dev/null and "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/3DProps/NatureProps/FirTree.fbx" differ diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/3DProps/NatureProps/FirTree.fbx.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/3DProps/NatureProps/FirTree.fbx.meta" new file mode 100644 index 00000000..ff773ad0 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/3DProps/NatureProps/FirTree.fbx.meta" @@ -0,0 +1,98 @@ +fileFormatVersion: 2 +guid: 5fc0e3d37ec294384aaa0b18e537ff86 +ModelImporter: + serializedVersion: 23 + fileIDToRecycleName: + 100000: //RootNode + 400000: //RootNode + 2100000: FirTreeLeaves + 2100002: FirTreeTrunk + 2300000: //RootNode + 3300000: //RootNode + 4300000: Cone + externalObjects: {} + materials: + importMaterials: 1 + materialName: 0 + materialSearch: 1 + materialLocation: 1 + animations: + legacyGenerateAnimations: 4 + bakeSimulation: 0 + resampleCurves: 1 + optimizeGameObjects: 0 + motionNodeName: + rigImportErrors: + rigImportWarnings: + animationImportErrors: + animationImportWarnings: + animationRetargetingWarnings: + animationDoRetargetingWarnings: 0 + importAnimatedCustomProperties: 0 + importConstraints: 0 + animationCompression: 1 + animationRotationError: 0.5 + animationPositionError: 0.5 + animationScaleError: 0.5 + animationWrapMode: 0 + extraExposedTransformPaths: [] + extraUserProperties: [] + clipAnimations: [] + isReadable: 1 + meshes: + lODScreenPercentages: [] + globalScale: 1 + meshCompression: 0 + addColliders: 0 + useSRGBMaterialColor: 1 + importVisibility: 1 + importBlendShapes: 1 + importCameras: 1 + importLights: 1 + swapUVChannels: 0 + generateSecondaryUV: 0 + useFileUnits: 1 + optimizeMeshForGPU: 1 + keepQuads: 0 + weldVertices: 1 + preserveHierarchy: 0 + indexFormat: 0 + secondaryUVAngleDistortion: 8 + secondaryUVAreaDistortion: 15.000001 + secondaryUVHardAngle: 88 + secondaryUVPackMargin: 4 + useFileScale: 1 + previousCalculatedGlobalScale: 1 + hasPreviousCalculatedGlobalScale: 0 + tangentSpace: + normalSmoothAngle: 60 + normalImportMode: 0 + tangentImportMode: 3 + normalCalculationMode: 4 + legacyComputeAllNormalsFromSmoothingGroupsWhenMeshHasBlendShapes: 0 + blendShapeNormalImportMode: 1 + normalSmoothingSource: 0 + importAnimation: 1 + copyAvatar: 0 + humanDescription: + serializedVersion: 2 + human: [] + skeleton: [] + armTwist: 0.5 + foreArmTwist: 0.5 + upperLegTwist: 0.5 + legTwist: 0.5 + armStretch: 0.05 + legStretch: 0.05 + feetSpacing: 0 + rootMotionBoneName: + hasTranslationDoF: 0 + hasExtraRoot: 0 + skeletonHasParents: 1 + lastHumanDescriptionAvatarSource: {instanceID: 0} + animationType: 0 + humanoidOversampling: 1 + additionalBone: 0 + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/3DProps/NatureProps/FlowerBush.fbx" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/3DProps/NatureProps/FlowerBush.fbx" new file mode 100644 index 00000000..8bd23556 Binary files /dev/null and "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/3DProps/NatureProps/FlowerBush.fbx" differ diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/3DProps/NatureProps/FlowerBush.fbx.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/3DProps/NatureProps/FlowerBush.fbx.meta" new file mode 100644 index 00000000..d09ac06f --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/3DProps/NatureProps/FlowerBush.fbx.meta" @@ -0,0 +1,98 @@ +fileFormatVersion: 2 +guid: decf25da566de433cb1a874aa0e6dd00 +ModelImporter: + serializedVersion: 23 + fileIDToRecycleName: + 100000: //RootNode + 400000: //RootNode + 2100000: BushLeaves + 2100002: BushFlower + 2300000: //RootNode + 3300000: //RootNode + 4300000: Icosphere + externalObjects: {} + materials: + importMaterials: 1 + materialName: 0 + materialSearch: 1 + materialLocation: 1 + animations: + legacyGenerateAnimations: 4 + bakeSimulation: 0 + resampleCurves: 1 + optimizeGameObjects: 0 + motionNodeName: + rigImportErrors: + rigImportWarnings: + animationImportErrors: + animationImportWarnings: + animationRetargetingWarnings: + animationDoRetargetingWarnings: 0 + importAnimatedCustomProperties: 0 + importConstraints: 0 + animationCompression: 1 + animationRotationError: 0.5 + animationPositionError: 0.5 + animationScaleError: 0.5 + animationWrapMode: 0 + extraExposedTransformPaths: [] + extraUserProperties: [] + clipAnimations: [] + isReadable: 1 + meshes: + lODScreenPercentages: [] + globalScale: 1 + meshCompression: 0 + addColliders: 0 + useSRGBMaterialColor: 1 + importVisibility: 1 + importBlendShapes: 1 + importCameras: 1 + importLights: 1 + swapUVChannels: 0 + generateSecondaryUV: 0 + useFileUnits: 1 + optimizeMeshForGPU: 1 + keepQuads: 0 + weldVertices: 1 + preserveHierarchy: 0 + indexFormat: 0 + secondaryUVAngleDistortion: 8 + secondaryUVAreaDistortion: 15.000001 + secondaryUVHardAngle: 88 + secondaryUVPackMargin: 4 + useFileScale: 1 + previousCalculatedGlobalScale: 1 + hasPreviousCalculatedGlobalScale: 0 + tangentSpace: + normalSmoothAngle: 0 + normalImportMode: 1 + tangentImportMode: 3 + normalCalculationMode: 4 + legacyComputeAllNormalsFromSmoothingGroupsWhenMeshHasBlendShapes: 0 + blendShapeNormalImportMode: 1 + normalSmoothingSource: 0 + importAnimation: 1 + copyAvatar: 0 + humanDescription: + serializedVersion: 2 + human: [] + skeleton: [] + armTwist: 0.5 + foreArmTwist: 0.5 + upperLegTwist: 0.5 + legTwist: 0.5 + armStretch: 0.05 + legStretch: 0.05 + feetSpacing: 0 + rootMotionBoneName: + hasTranslationDoF: 0 + hasExtraRoot: 0 + skeletonHasParents: 1 + lastHumanDescriptionAvatarSource: {instanceID: 0} + animationType: 0 + humanoidOversampling: 1 + additionalBone: 0 + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/3DProps/NatureProps/Mushroom.fbx" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/3DProps/NatureProps/Mushroom.fbx" new file mode 100644 index 00000000..0a39bb56 Binary files /dev/null and "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/3DProps/NatureProps/Mushroom.fbx" differ diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/3DProps/NatureProps/Mushroom.fbx.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/3DProps/NatureProps/Mushroom.fbx.meta" new file mode 100644 index 00000000..3b1da6d9 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/3DProps/NatureProps/Mushroom.fbx.meta" @@ -0,0 +1,98 @@ +fileFormatVersion: 2 +guid: 403205f95f9214aa7a1f003ae7bd2333 +ModelImporter: + serializedVersion: 23 + fileIDToRecycleName: + 100000: //RootNode + 400000: //RootNode + 2100000: MushroomHead + 2100002: MushroomStem + 2300000: //RootNode + 3300000: //RootNode + 4300000: mushroom + externalObjects: {} + materials: + importMaterials: 1 + materialName: 0 + materialSearch: 1 + materialLocation: 1 + animations: + legacyGenerateAnimations: 4 + bakeSimulation: 0 + resampleCurves: 1 + optimizeGameObjects: 0 + motionNodeName: + rigImportErrors: + rigImportWarnings: + animationImportErrors: + animationImportWarnings: + animationRetargetingWarnings: + animationDoRetargetingWarnings: 0 + importAnimatedCustomProperties: 0 + importConstraints: 0 + animationCompression: 1 + animationRotationError: 0.5 + animationPositionError: 0.5 + animationScaleError: 0.5 + animationWrapMode: 0 + extraExposedTransformPaths: [] + extraUserProperties: [] + clipAnimations: [] + isReadable: 1 + meshes: + lODScreenPercentages: [] + globalScale: 1 + meshCompression: 0 + addColliders: 0 + useSRGBMaterialColor: 1 + importVisibility: 1 + importBlendShapes: 1 + importCameras: 1 + importLights: 1 + swapUVChannels: 0 + generateSecondaryUV: 0 + useFileUnits: 1 + optimizeMeshForGPU: 1 + keepQuads: 0 + weldVertices: 1 + preserveHierarchy: 0 + indexFormat: 0 + secondaryUVAngleDistortion: 8 + secondaryUVAreaDistortion: 15.000001 + secondaryUVHardAngle: 88 + secondaryUVPackMargin: 4 + useFileScale: 1 + previousCalculatedGlobalScale: 1 + hasPreviousCalculatedGlobalScale: 0 + tangentSpace: + normalSmoothAngle: 60 + normalImportMode: 0 + tangentImportMode: 3 + normalCalculationMode: 4 + legacyComputeAllNormalsFromSmoothingGroupsWhenMeshHasBlendShapes: 0 + blendShapeNormalImportMode: 1 + normalSmoothingSource: 0 + importAnimation: 1 + copyAvatar: 0 + humanDescription: + serializedVersion: 2 + human: [] + skeleton: [] + armTwist: 0.5 + foreArmTwist: 0.5 + upperLegTwist: 0.5 + legTwist: 0.5 + armStretch: 0.05 + legStretch: 0.05 + feetSpacing: 0 + rootMotionBoneName: + hasTranslationDoF: 0 + hasExtraRoot: 0 + skeletonHasParents: 1 + lastHumanDescriptionAvatarSource: {instanceID: 0} + animationType: 0 + humanoidOversampling: 1 + additionalBone: 0 + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/3DProps/NatureProps/PalmTree.fbx" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/3DProps/NatureProps/PalmTree.fbx" new file mode 100644 index 00000000..6d9f4367 Binary files /dev/null and "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/3DProps/NatureProps/PalmTree.fbx" differ diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/3DProps/NatureProps/PalmTree.fbx.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/3DProps/NatureProps/PalmTree.fbx.meta" new file mode 100644 index 00000000..a2051f00 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/3DProps/NatureProps/PalmTree.fbx.meta" @@ -0,0 +1,105 @@ +fileFormatVersion: 2 +guid: ae36130ee9b994114b35ece84c158fdc +ModelImporter: + serializedVersion: 23 + fileIDToRecycleName: + 100000: //RootNode + 100002: palmtreeleaves + 100004: palmtreetrunk + 400000: //RootNode + 400002: palmtreeleaves + 400004: palmtreetrunk + 2100000: palmtreeleaves + 2100002: palmtreetrunk + 2300000: palmtreeleaves + 2300002: palmtreetrunk + 3300000: palmtreeleaves + 3300002: palmtreetrunk + 4300000: palmtreeleaves + 4300002: palmtreetrunk + externalObjects: {} + materials: + importMaterials: 1 + materialName: 0 + materialSearch: 1 + materialLocation: 1 + animations: + legacyGenerateAnimations: 4 + bakeSimulation: 0 + resampleCurves: 1 + optimizeGameObjects: 0 + motionNodeName: + rigImportErrors: + rigImportWarnings: + animationImportErrors: + animationImportWarnings: + animationRetargetingWarnings: + animationDoRetargetingWarnings: 0 + importAnimatedCustomProperties: 0 + importConstraints: 0 + animationCompression: 1 + animationRotationError: 0.5 + animationPositionError: 0.5 + animationScaleError: 0.5 + animationWrapMode: 0 + extraExposedTransformPaths: [] + extraUserProperties: [] + clipAnimations: [] + isReadable: 1 + meshes: + lODScreenPercentages: [] + globalScale: 1 + meshCompression: 0 + addColliders: 0 + useSRGBMaterialColor: 1 + importVisibility: 1 + importBlendShapes: 1 + importCameras: 1 + importLights: 1 + swapUVChannels: 0 + generateSecondaryUV: 0 + useFileUnits: 1 + optimizeMeshForGPU: 1 + keepQuads: 0 + weldVertices: 1 + preserveHierarchy: 0 + indexFormat: 0 + secondaryUVAngleDistortion: 8 + secondaryUVAreaDistortion: 15.000001 + secondaryUVHardAngle: 88 + secondaryUVPackMargin: 4 + useFileScale: 1 + previousCalculatedGlobalScale: 1 + hasPreviousCalculatedGlobalScale: 0 + tangentSpace: + normalSmoothAngle: 60 + normalImportMode: 0 + tangentImportMode: 3 + normalCalculationMode: 4 + legacyComputeAllNormalsFromSmoothingGroupsWhenMeshHasBlendShapes: 0 + blendShapeNormalImportMode: 1 + normalSmoothingSource: 0 + importAnimation: 1 + copyAvatar: 0 + humanDescription: + serializedVersion: 2 + human: [] + skeleton: [] + armTwist: 0.5 + foreArmTwist: 0.5 + upperLegTwist: 0.5 + legTwist: 0.5 + armStretch: 0.05 + legStretch: 0.05 + feetSpacing: 0 + rootMotionBoneName: + hasTranslationDoF: 0 + hasExtraRoot: 0 + skeletonHasParents: 1 + lastHumanDescriptionAvatarSource: {instanceID: 0} + animationType: 0 + humanoidOversampling: 1 + additionalBone: 0 + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/3DProps/SpaceProps.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/3DProps/SpaceProps.meta" new file mode 100644 index 00000000..ec5abe38 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/3DProps/SpaceProps.meta" @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 510ffa4914065df4694023cbc922b37e +folderAsset: yes +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/3DProps/SpaceProps/Asteroid.fbx" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/3DProps/SpaceProps/Asteroid.fbx" new file mode 100644 index 00000000..795f0b47 Binary files /dev/null and "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/3DProps/SpaceProps/Asteroid.fbx" differ diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/3DProps/SpaceProps/Asteroid.fbx.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/3DProps/SpaceProps/Asteroid.fbx.meta" new file mode 100644 index 00000000..e3b4e914 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/3DProps/SpaceProps/Asteroid.fbx.meta" @@ -0,0 +1,97 @@ +fileFormatVersion: 2 +guid: 738cfb63efae84af7b2446470711e751 +ModelImporter: + serializedVersion: 23 + fileIDToRecycleName: + 100000: //RootNode + 400000: //RootNode + 2100000: Asteroid + 2300000: //RootNode + 3300000: //RootNode + 4300000: Icosphere + externalObjects: {} + materials: + importMaterials: 1 + materialName: 0 + materialSearch: 1 + materialLocation: 1 + animations: + legacyGenerateAnimations: 4 + bakeSimulation: 0 + resampleCurves: 1 + optimizeGameObjects: 0 + motionNodeName: + rigImportErrors: + rigImportWarnings: + animationImportErrors: + animationImportWarnings: + animationRetargetingWarnings: + animationDoRetargetingWarnings: 0 + importAnimatedCustomProperties: 0 + importConstraints: 0 + animationCompression: 1 + animationRotationError: 0.5 + animationPositionError: 0.5 + animationScaleError: 0.5 + animationWrapMode: 0 + extraExposedTransformPaths: [] + extraUserProperties: [] + clipAnimations: [] + isReadable: 1 + meshes: + lODScreenPercentages: [] + globalScale: 1 + meshCompression: 0 + addColliders: 0 + useSRGBMaterialColor: 1 + importVisibility: 1 + importBlendShapes: 1 + importCameras: 1 + importLights: 1 + swapUVChannels: 0 + generateSecondaryUV: 0 + useFileUnits: 1 + optimizeMeshForGPU: 1 + keepQuads: 0 + weldVertices: 1 + preserveHierarchy: 0 + indexFormat: 0 + secondaryUVAngleDistortion: 8 + secondaryUVAreaDistortion: 15.000001 + secondaryUVHardAngle: 88 + secondaryUVPackMargin: 4 + useFileScale: 1 + previousCalculatedGlobalScale: 1 + hasPreviousCalculatedGlobalScale: 0 + tangentSpace: + normalSmoothAngle: 60 + normalImportMode: 0 + tangentImportMode: 3 + normalCalculationMode: 4 + legacyComputeAllNormalsFromSmoothingGroupsWhenMeshHasBlendShapes: 0 + blendShapeNormalImportMode: 1 + normalSmoothingSource: 0 + importAnimation: 1 + copyAvatar: 0 + humanDescription: + serializedVersion: 2 + human: [] + skeleton: [] + armTwist: 0.5 + foreArmTwist: 0.5 + upperLegTwist: 0.5 + legTwist: 0.5 + armStretch: 0.05 + legStretch: 0.05 + feetSpacing: 0 + rootMotionBoneName: + hasTranslationDoF: 0 + hasExtraRoot: 0 + skeletonHasParents: 1 + lastHumanDescriptionAvatarSource: {instanceID: 0} + animationType: 0 + humanoidOversampling: 1 + additionalBone: 0 + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/3DProps/SpaceProps/Crystal.fbx" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/3DProps/SpaceProps/Crystal.fbx" new file mode 100644 index 00000000..e9ebd234 Binary files /dev/null and "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/3DProps/SpaceProps/Crystal.fbx" differ diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/3DProps/SpaceProps/Crystal.fbx.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/3DProps/SpaceProps/Crystal.fbx.meta" new file mode 100644 index 00000000..793166a8 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/3DProps/SpaceProps/Crystal.fbx.meta" @@ -0,0 +1,97 @@ +fileFormatVersion: 2 +guid: 6b2dfb46096eb400e8d5de95609e53b3 +ModelImporter: + serializedVersion: 23 + fileIDToRecycleName: + 100000: //RootNode + 400000: //RootNode + 2100000: Crystal + 2300000: //RootNode + 3300000: //RootNode + 4300000: Crystal + externalObjects: {} + materials: + importMaterials: 1 + materialName: 0 + materialSearch: 1 + materialLocation: 1 + animations: + legacyGenerateAnimations: 4 + bakeSimulation: 0 + resampleCurves: 1 + optimizeGameObjects: 0 + motionNodeName: + rigImportErrors: + rigImportWarnings: + animationImportErrors: + animationImportWarnings: + animationRetargetingWarnings: + animationDoRetargetingWarnings: 0 + importAnimatedCustomProperties: 0 + importConstraints: 0 + animationCompression: 1 + animationRotationError: 0.5 + animationPositionError: 0.5 + animationScaleError: 0.5 + animationWrapMode: 0 + extraExposedTransformPaths: [] + extraUserProperties: [] + clipAnimations: [] + isReadable: 1 + meshes: + lODScreenPercentages: [] + globalScale: 1 + meshCompression: 0 + addColliders: 0 + useSRGBMaterialColor: 1 + importVisibility: 1 + importBlendShapes: 1 + importCameras: 1 + importLights: 1 + swapUVChannels: 0 + generateSecondaryUV: 0 + useFileUnits: 1 + optimizeMeshForGPU: 1 + keepQuads: 0 + weldVertices: 1 + preserveHierarchy: 0 + indexFormat: 0 + secondaryUVAngleDistortion: 8 + secondaryUVAreaDistortion: 15.000001 + secondaryUVHardAngle: 88 + secondaryUVPackMargin: 4 + useFileScale: 1 + previousCalculatedGlobalScale: 1 + hasPreviousCalculatedGlobalScale: 0 + tangentSpace: + normalSmoothAngle: 60 + normalImportMode: 0 + tangentImportMode: 3 + normalCalculationMode: 4 + legacyComputeAllNormalsFromSmoothingGroupsWhenMeshHasBlendShapes: 0 + blendShapeNormalImportMode: 1 + normalSmoothingSource: 0 + importAnimation: 1 + copyAvatar: 0 + humanDescription: + serializedVersion: 2 + human: [] + skeleton: [] + armTwist: 0.5 + foreArmTwist: 0.5 + upperLegTwist: 0.5 + legTwist: 0.5 + armStretch: 0.05 + legStretch: 0.05 + feetSpacing: 0 + rootMotionBoneName: + hasTranslationDoF: 0 + hasExtraRoot: 0 + skeletonHasParents: 1 + lastHumanDescriptionAvatarSource: {instanceID: 0} + animationType: 0 + humanoidOversampling: 1 + additionalBone: 0 + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/3DProps/SpaceProps/Rocket.fbx" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/3DProps/SpaceProps/Rocket.fbx" new file mode 100644 index 00000000..9e36c1e4 Binary files /dev/null and "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/3DProps/SpaceProps/Rocket.fbx" differ diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/3DProps/SpaceProps/Rocket.fbx.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/3DProps/SpaceProps/Rocket.fbx.meta" new file mode 100644 index 00000000..9d0743a8 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/3DProps/SpaceProps/Rocket.fbx.meta" @@ -0,0 +1,100 @@ +fileFormatVersion: 2 +guid: b698994a5dd674ee3997e51d3474a09f +ModelImporter: + serializedVersion: 23 + fileIDToRecycleName: + 100000: //RootNode + 400000: //RootNode + 2100000: RocketBody + 2100002: Roc ketFins + 2100004: RocketAccent + 2300000: //RootNode + 3300000: //RootNode + 4300000: Icosphere + 4300002: Rocket + externalObjects: {} + materials: + importMaterials: 1 + materialName: 0 + materialSearch: 1 + materialLocation: 1 + animations: + legacyGenerateAnimations: 4 + bakeSimulation: 0 + resampleCurves: 1 + optimizeGameObjects: 0 + motionNodeName: + rigImportErrors: + rigImportWarnings: + animationImportErrors: + animationImportWarnings: + animationRetargetingWarnings: + animationDoRetargetingWarnings: 0 + importAnimatedCustomProperties: 0 + importConstraints: 0 + animationCompression: 1 + animationRotationError: 0.5 + animationPositionError: 0.5 + animationScaleError: 0.5 + animationWrapMode: 0 + extraExposedTransformPaths: [] + extraUserProperties: [] + clipAnimations: [] + isReadable: 1 + meshes: + lODScreenPercentages: [] + globalScale: 1 + meshCompression: 0 + addColliders: 0 + useSRGBMaterialColor: 1 + importVisibility: 1 + importBlendShapes: 1 + importCameras: 1 + importLights: 1 + swapUVChannels: 0 + generateSecondaryUV: 0 + useFileUnits: 1 + optimizeMeshForGPU: 1 + keepQuads: 0 + weldVertices: 1 + preserveHierarchy: 0 + indexFormat: 0 + secondaryUVAngleDistortion: 8 + secondaryUVAreaDistortion: 15.000001 + secondaryUVHardAngle: 88 + secondaryUVPackMargin: 4 + useFileScale: 1 + previousCalculatedGlobalScale: 1 + hasPreviousCalculatedGlobalScale: 0 + tangentSpace: + normalSmoothAngle: 60 + normalImportMode: 0 + tangentImportMode: 3 + normalCalculationMode: 4 + legacyComputeAllNormalsFromSmoothingGroupsWhenMeshHasBlendShapes: 0 + blendShapeNormalImportMode: 1 + normalSmoothingSource: 0 + importAnimation: 1 + copyAvatar: 0 + humanDescription: + serializedVersion: 2 + human: [] + skeleton: [] + armTwist: 0.5 + foreArmTwist: 0.5 + upperLegTwist: 0.5 + legTwist: 0.5 + armStretch: 0.05 + legStretch: 0.05 + feetSpacing: 0 + rootMotionBoneName: + hasTranslationDoF: 0 + hasExtraRoot: 0 + skeletonHasParents: 1 + lastHumanDescriptionAvatarSource: {instanceID: 0} + animationType: 0 + humanoidOversampling: 1 + additionalBone: 0 + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/3DProps/SpaceProps/SatelliteDish.fbx" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/3DProps/SpaceProps/SatelliteDish.fbx" new file mode 100644 index 00000000..56b25650 Binary files /dev/null and "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/3DProps/SpaceProps/SatelliteDish.fbx" differ diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/3DProps/SpaceProps/SatelliteDish.fbx.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/3DProps/SpaceProps/SatelliteDish.fbx.meta" new file mode 100644 index 00000000..d2b3199a --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/3DProps/SpaceProps/SatelliteDish.fbx.meta" @@ -0,0 +1,97 @@ +fileFormatVersion: 2 +guid: 1b5c4d63f30c047a6b5e593599a27c13 +ModelImporter: + serializedVersion: 23 + fileIDToRecycleName: + 100000: //RootNode + 400000: //RootNode + 2100000: SatelliteDish + 2300000: //RootNode + 3300000: //RootNode + 4300000: Cube + externalObjects: {} + materials: + importMaterials: 1 + materialName: 0 + materialSearch: 1 + materialLocation: 1 + animations: + legacyGenerateAnimations: 4 + bakeSimulation: 0 + resampleCurves: 1 + optimizeGameObjects: 0 + motionNodeName: + rigImportErrors: + rigImportWarnings: + animationImportErrors: + animationImportWarnings: + animationRetargetingWarnings: + animationDoRetargetingWarnings: 0 + importAnimatedCustomProperties: 0 + importConstraints: 0 + animationCompression: 1 + animationRotationError: 0.5 + animationPositionError: 0.5 + animationScaleError: 0.5 + animationWrapMode: 0 + extraExposedTransformPaths: [] + extraUserProperties: [] + clipAnimations: [] + isReadable: 1 + meshes: + lODScreenPercentages: [] + globalScale: 1 + meshCompression: 0 + addColliders: 0 + useSRGBMaterialColor: 1 + importVisibility: 1 + importBlendShapes: 1 + importCameras: 1 + importLights: 1 + swapUVChannels: 0 + generateSecondaryUV: 0 + useFileUnits: 1 + optimizeMeshForGPU: 1 + keepQuads: 0 + weldVertices: 1 + preserveHierarchy: 0 + indexFormat: 0 + secondaryUVAngleDistortion: 8 + secondaryUVAreaDistortion: 15.000001 + secondaryUVHardAngle: 88 + secondaryUVPackMargin: 4 + useFileScale: 1 + previousCalculatedGlobalScale: 1 + hasPreviousCalculatedGlobalScale: 0 + tangentSpace: + normalSmoothAngle: 60 + normalImportMode: 0 + tangentImportMode: 3 + normalCalculationMode: 4 + legacyComputeAllNormalsFromSmoothingGroupsWhenMeshHasBlendShapes: 0 + blendShapeNormalImportMode: 1 + normalSmoothingSource: 0 + importAnimation: 1 + copyAvatar: 0 + humanDescription: + serializedVersion: 2 + human: [] + skeleton: [] + armTwist: 0.5 + foreArmTwist: 0.5 + upperLegTwist: 0.5 + legTwist: 0.5 + armStretch: 0.05 + legStretch: 0.05 + feetSpacing: 0 + rootMotionBoneName: + hasTranslationDoF: 0 + hasExtraRoot: 0 + skeletonHasParents: 1 + lastHumanDescriptionAvatarSource: {instanceID: 0} + animationType: 0 + humanoidOversampling: 1 + additionalBone: 0 + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/Kart.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/Kart.meta" new file mode 100644 index 00000000..6c4893ff --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/Kart.meta" @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 75a32253ab949c54daf805cf413d0ad5 +folderAsset: yes +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/Kart/Bounce Effect Prefabs.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/Kart/Bounce Effect Prefabs.meta" new file mode 100644 index 00000000..f44ee0e3 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/Kart/Bounce Effect Prefabs.meta" @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: d1895644baebc9c409279fdafb01f1f3 +folderAsset: yes +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/Kart/Bounce Effect Prefabs/BouncyFireworks.prefab" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/Kart/Bounce Effect Prefabs/BouncyFireworks.prefab" new file mode 100644 index 00000000..3eab1fec --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/Kart/Bounce Effect Prefabs/BouncyFireworks.prefab" @@ -0,0 +1,4780 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!1 &1866372463 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 1866372464} + - component: {fileID: 1866372467} + - component: {fileID: 1866372466} + - component: {fileID: 1866372465} + m_Layer: 0 + m_Name: BouncyFireworks + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &1866372464 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1866372463} + m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} + m_LocalPosition: {x: 0, y: 0, z: 0} + m_LocalScale: {x: 1, y: 1, z: 1} + m_Children: [] + m_Father: {fileID: 0} + m_RootOrder: 0 + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!114 &1866372467 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1866372463} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 8490d35dc3da54707a579c5f4ee95154, type: 3} + m_Name: + m_EditorClassIdentifier: +--- !u!199 &1866372466 +ParticleSystemRenderer: + serializedVersion: 6 + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1866372463} + m_Enabled: 1 + m_CastShadows: 0 + m_ReceiveShadows: 0 + m_DynamicOccludee: 1 + m_MotionVectors: 1 + m_LightProbeUsage: 0 + m_ReflectionProbeUsage: 0 + m_RenderingLayerMask: 1 + m_RendererPriority: 0 + m_Materials: + - {fileID: 10308, guid: 0000000000000000f000000000000000, type: 0} + - {fileID: 2100000, guid: bb6ceb127383a4152a4041c9babd6912, type: 2} + m_StaticBatchInfo: + firstSubMesh: 0 + subMeshCount: 0 + m_StaticBatchRoot: {fileID: 0} + m_ProbeAnchor: {fileID: 0} + m_LightProbeVolumeOverride: {fileID: 0} + m_ScaleInLightmap: 1 + m_PreserveUVs: 0 + m_IgnoreNormalsForChartDetection: 0 + m_ImportantGI: 0 + m_StitchLightmapSeams: 0 + m_SelectedEditorRenderState: 3 + m_MinimumChartSize: 4 + m_AutoUVMaxDistance: 0.5 + m_AutoUVMaxAngle: 89 + m_LightmapParameters: {fileID: 0} + m_SortingLayerID: 0 + m_SortingLayer: 0 + m_SortingOrder: 0 + m_RenderMode: 0 + m_SortMode: 0 + m_MinParticleSize: 0 + m_MaxParticleSize: 0.5 + m_CameraVelocityScale: 0 + m_VelocityScale: 0.01 + m_LengthScale: 1 + m_SortingFudge: 0 + m_NormalDirection: 1 + m_ShadowBias: 0 + m_RenderAlignment: 0 + m_Pivot: {x: 0, y: 0, z: 0} + m_Flip: {x: 0, y: 0, z: 0} + m_UseCustomVertexStreams: 0 + m_EnableGPUInstancing: 1 + m_ApplyActiveColorSpace: 1 + m_AllowRoll: 1 + m_VertexStreams: 00010304 + m_Mesh: {fileID: 0} + m_Mesh1: {fileID: 0} + m_Mesh2: {fileID: 0} + m_Mesh3: {fileID: 0} + m_MaskInteraction: 0 +--- !u!198 &1866372465 +ParticleSystem: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1866372463} + serializedVersion: 6 + lengthInSec: 0.1 + simulationSpeed: 1 + stopAction: 0 + cullingMode: 0 + ringBufferMode: 0 + ringBufferLoopRange: {x: 0, y: 1} + looping: 0 + prewarm: 0 + playOnAwake: 0 + useUnscaledTime: 0 + autoRandomSeed: 1 + useRigidbodyForVelocity: 1 + startDelay: + serializedVersion: 2 + minMaxState: 0 + scalar: 0 + minScalar: 0 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + moveWithTransform: 1 + moveWithCustomTransform: {fileID: 0} + scalingMode: 1 + randomSeed: 0 + InitialModule: + serializedVersion: 3 + enabled: 1 + startLifetime: + serializedVersion: 2 + minMaxState: 0 + scalar: 5 + minScalar: 5 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + startSpeed: + serializedVersion: 2 + minMaxState: 0 + scalar: 10 + minScalar: 5 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + startColor: + serializedVersion: 2 + minMaxState: 0 + minColor: {r: 1, g: 1, b: 1, a: 1} + maxColor: {r: 1, g: 1, b: 1, a: 1} + maxGradient: + serializedVersion: 2 + key0: {r: 1, g: 1, b: 1, a: 1} + key1: {r: 1, g: 1, b: 1, a: 1} + key2: {r: 0, g: 0, b: 0, a: 0} + key3: {r: 0, g: 0, b: 0, a: 0} + key4: {r: 0, g: 0, b: 0, a: 0} + key5: {r: 0, g: 0, b: 0, a: 0} + key6: {r: 0, g: 0, b: 0, a: 0} + key7: {r: 0, g: 0, b: 0, a: 0} + ctime0: 0 + ctime1: 65535 + ctime2: 0 + ctime3: 0 + ctime4: 0 + ctime5: 0 + ctime6: 0 + ctime7: 0 + atime0: 0 + atime1: 65535 + atime2: 0 + atime3: 0 + atime4: 0 + atime5: 0 + atime6: 0 + atime7: 0 + m_Mode: 0 + m_NumColorKeys: 2 + m_NumAlphaKeys: 2 + minGradient: + serializedVersion: 2 + key0: {r: 1, g: 1, b: 1, a: 1} + key1: {r: 1, g: 1, b: 1, a: 1} + key2: {r: 0, g: 0, b: 0, a: 0} + key3: {r: 0, g: 0, b: 0, a: 0} + key4: {r: 0, g: 0, b: 0, a: 0} + key5: {r: 0, g: 0, b: 0, a: 0} + key6: {r: 0, g: 0, b: 0, a: 0} + key7: {r: 0, g: 0, b: 0, a: 0} + ctime0: 0 + ctime1: 65535 + ctime2: 0 + ctime3: 0 + ctime4: 0 + ctime5: 0 + ctime6: 0 + ctime7: 0 + atime0: 0 + atime1: 65535 + atime2: 0 + atime3: 0 + atime4: 0 + atime5: 0 + atime6: 0 + atime7: 0 + m_Mode: 0 + m_NumColorKeys: 2 + m_NumAlphaKeys: 2 + startSize: + serializedVersion: 2 + minMaxState: 0 + scalar: 0.2 + minScalar: 1 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + startSizeY: + serializedVersion: 2 + minMaxState: 0 + scalar: 1 + minScalar: 1 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + startSizeZ: + serializedVersion: 2 + minMaxState: 0 + scalar: 1 + minScalar: 1 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + startRotationX: + serializedVersion: 2 + minMaxState: 0 + scalar: 0 + minScalar: 0 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + startRotationY: + serializedVersion: 2 + minMaxState: 0 + scalar: 0 + minScalar: 0 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + startRotation: + serializedVersion: 2 + minMaxState: 0 + scalar: 0 + minScalar: 0 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + randomizeRotationDirection: 0 + maxNumParticles: 500 + size3D: 0 + rotation3D: 0 + gravityModifier: + serializedVersion: 2 + minMaxState: 0 + scalar: 0.5 + minScalar: 0 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + ShapeModule: + serializedVersion: 6 + enabled: 1 + type: 0 + angle: 25 + length: 5 + boxThickness: {x: 0, y: 0, z: 0} + radiusThickness: 0 + donutRadius: 0.2 + m_Position: {x: 0, y: 0, z: 0} + m_Rotation: {x: 0, y: 0, z: 0} + m_Scale: {x: 1, y: 1, z: 1} + placementMode: 0 + m_MeshMaterialIndex: 0 + m_MeshNormalOffset: 0 + m_MeshSpawn: + mode: 0 + spread: 0 + speed: + serializedVersion: 2 + minMaxState: 0 + scalar: 1 + minScalar: 1 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + m_Mesh: {fileID: 0} + m_MeshRenderer: {fileID: 0} + m_SkinnedMeshRenderer: {fileID: 0} + m_Sprite: {fileID: 0} + m_SpriteRenderer: {fileID: 0} + m_UseMeshMaterialIndex: 0 + m_UseMeshColors: 1 + alignToDirection: 0 + m_Texture: {fileID: 0} + m_TextureClipChannel: 3 + m_TextureClipThreshold: 0 + m_TextureUVChannel: 0 + m_TextureColorAffectsParticles: 1 + m_TextureAlphaAffectsParticles: 1 + m_TextureBilinearFiltering: 0 + randomDirectionAmount: 0 + sphericalDirectionAmount: 0 + randomPositionAmount: 0 + radius: + value: 0.0001 + mode: 0 + spread: 0 + speed: + serializedVersion: 2 + minMaxState: 0 + scalar: 1 + minScalar: 1 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + arc: + value: 360 + mode: 0 + spread: 0 + speed: + serializedVersion: 2 + minMaxState: 0 + scalar: 1 + minScalar: 1 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + EmissionModule: + enabled: 1 + serializedVersion: 4 + rateOverTime: + serializedVersion: 2 + minMaxState: 0 + scalar: 0 + minScalar: 10 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + rateOverDistance: + serializedVersion: 2 + minMaxState: 0 + scalar: 0 + minScalar: 0 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + m_BurstCount: 1 + m_Bursts: + - serializedVersion: 2 + time: 0 + countCurve: + serializedVersion: 2 + minMaxState: 0 + scalar: 30 + minScalar: 30 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0 + outWeight: 0 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0 + outWeight: 0 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0 + outWeight: 0 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0 + outWeight: 0 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + cycleCount: 1 + repeatInterval: 0.01 + probability: 1 + SizeModule: + enabled: 0 + curve: + serializedVersion: 2 + minMaxState: 1 + scalar: 1 + minScalar: 1 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 1 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 1 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + y: + serializedVersion: 2 + minMaxState: 1 + scalar: 1 + minScalar: 1 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 1 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 1 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + z: + serializedVersion: 2 + minMaxState: 1 + scalar: 1 + minScalar: 1 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 1 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 1 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + separateAxes: 0 + RotationModule: + enabled: 0 + x: + serializedVersion: 2 + minMaxState: 0 + scalar: 0 + minScalar: 0 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + y: + serializedVersion: 2 + minMaxState: 0 + scalar: 0 + minScalar: 0 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + curve: + serializedVersion: 2 + minMaxState: 0 + scalar: 0.7853982 + minScalar: 0.7853982 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + separateAxes: 0 + ColorModule: + enabled: 1 + gradient: + serializedVersion: 2 + minMaxState: 1 + minColor: {r: 1, g: 1, b: 1, a: 1} + maxColor: {r: 1, g: 1, b: 1, a: 1} + maxGradient: + serializedVersion: 2 + key0: {r: 1, g: 1, b: 1, a: 1} + key1: {r: 1, g: 1, b: 1, a: 0} + key2: {r: 0, g: 0, b: 0, a: 0} + key3: {r: 0, g: 0, b: 0, a: 0} + key4: {r: 0, g: 0, b: 0, a: 0} + key5: {r: 0, g: 0, b: 0, a: 0} + key6: {r: 0, g: 0, b: 0, a: 0} + key7: {r: 0, g: 0, b: 0, a: 0} + ctime0: 0 + ctime1: 65535 + ctime2: 0 + ctime3: 0 + ctime4: 0 + ctime5: 0 + ctime6: 0 + ctime7: 0 + atime0: 0 + atime1: 65342 + atime2: 65342 + atime3: 0 + atime4: 0 + atime5: 0 + atime6: 0 + atime7: 0 + m_Mode: 0 + m_NumColorKeys: 2 + m_NumAlphaKeys: 2 + minGradient: + serializedVersion: 2 + key0: {r: 1, g: 1, b: 1, a: 1} + key1: {r: 1, g: 1, b: 1, a: 1} + key2: {r: 0, g: 0, b: 0, a: 0} + key3: {r: 0, g: 0, b: 0, a: 0} + key4: {r: 0, g: 0, b: 0, a: 0} + key5: {r: 0, g: 0, b: 0, a: 0} + key6: {r: 0, g: 0, b: 0, a: 0} + key7: {r: 0, g: 0, b: 0, a: 0} + ctime0: 0 + ctime1: 65535 + ctime2: 0 + ctime3: 0 + ctime4: 0 + ctime5: 0 + ctime6: 0 + ctime7: 0 + atime0: 0 + atime1: 65535 + atime2: 0 + atime3: 0 + atime4: 0 + atime5: 0 + atime6: 0 + atime7: 0 + m_Mode: 0 + m_NumColorKeys: 2 + m_NumAlphaKeys: 2 + UVModule: + enabled: 0 + mode: 0 + timeMode: 0 + fps: 30 + frameOverTime: + serializedVersion: 2 + minMaxState: 1 + scalar: 0.9999 + minScalar: 0.9999 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 1 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 1 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + startFrame: + serializedVersion: 2 + minMaxState: 0 + scalar: 0 + minScalar: 0 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + speedRange: {x: 0, y: 1} + tilesX: 1 + tilesY: 1 + animationType: 0 + rowIndex: 0 + cycles: 1 + uvChannelMask: -1 + randomRow: 1 + sprites: + - sprite: {fileID: 0} + flipU: 0 + flipV: 0 + VelocityModule: + enabled: 0 + x: + serializedVersion: 2 + minMaxState: 0 + scalar: 0 + minScalar: 0 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + y: + serializedVersion: 2 + minMaxState: 0 + scalar: 0 + minScalar: 0 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + z: + serializedVersion: 2 + minMaxState: 0 + scalar: 0 + minScalar: 0 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + orbitalX: + serializedVersion: 2 + minMaxState: 0 + scalar: 0 + minScalar: 0 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + orbitalY: + serializedVersion: 2 + minMaxState: 0 + scalar: 0 + minScalar: 0 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + orbitalZ: + serializedVersion: 2 + minMaxState: 0 + scalar: 0 + minScalar: 0 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + orbitalOffsetX: + serializedVersion: 2 + minMaxState: 0 + scalar: 0 + minScalar: 0 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + orbitalOffsetY: + serializedVersion: 2 + minMaxState: 0 + scalar: 0 + minScalar: 0 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + orbitalOffsetZ: + serializedVersion: 2 + minMaxState: 0 + scalar: 0 + minScalar: 0 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + radial: + serializedVersion: 2 + minMaxState: 0 + scalar: 0 + minScalar: 0 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + speedModifier: + serializedVersion: 2 + minMaxState: 0 + scalar: 1 + minScalar: 1 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + inWorldSpace: 0 + InheritVelocityModule: + enabled: 0 + m_Mode: 0 + m_Curve: + serializedVersion: 2 + minMaxState: 0 + scalar: 0 + minScalar: 0 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + ForceModule: + enabled: 0 + x: + serializedVersion: 2 + minMaxState: 0 + scalar: 0 + minScalar: 0 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + y: + serializedVersion: 2 + minMaxState: 0 + scalar: 0 + minScalar: 0 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + z: + serializedVersion: 2 + minMaxState: 0 + scalar: 0 + minScalar: 0 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + inWorldSpace: 0 + randomizePerFrame: 0 + ExternalForcesModule: + enabled: 0 + multiplier: 1 + influenceFilter: 0 + influenceMask: + serializedVersion: 2 + m_Bits: 4294967295 + influenceList: [] + ClampVelocityModule: + enabled: 1 + x: + serializedVersion: 2 + minMaxState: 0 + scalar: 1 + minScalar: 1 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + y: + serializedVersion: 2 + minMaxState: 0 + scalar: 1 + minScalar: 1 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + z: + serializedVersion: 2 + minMaxState: 0 + scalar: 1 + minScalar: 1 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + magnitude: + serializedVersion: 2 + minMaxState: 0 + scalar: 0 + minScalar: 1 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + separateAxis: 0 + inWorldSpace: 0 + multiplyDragByParticleSize: 1 + multiplyDragByParticleVelocity: 1 + dampen: 0.02 + drag: + serializedVersion: 2 + minMaxState: 0 + scalar: 0 + minScalar: 0 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + NoiseModule: + enabled: 0 + strength: + serializedVersion: 2 + minMaxState: 0 + scalar: 1 + minScalar: 1 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + strengthY: + serializedVersion: 2 + minMaxState: 0 + scalar: 1 + minScalar: 1 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + strengthZ: + serializedVersion: 2 + minMaxState: 0 + scalar: 1 + minScalar: 1 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + separateAxes: 0 + frequency: 0.5 + damping: 1 + octaves: 1 + octaveMultiplier: 0.5 + octaveScale: 2 + quality: 2 + scrollSpeed: + serializedVersion: 2 + minMaxState: 0 + scalar: 0 + minScalar: 0 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + remap: + serializedVersion: 2 + minMaxState: 1 + scalar: 1 + minScalar: 1 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 1 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 1 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + remapY: + serializedVersion: 2 + minMaxState: 1 + scalar: 1 + minScalar: 1 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 1 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 1 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + remapZ: + serializedVersion: 2 + minMaxState: 1 + scalar: 1 + minScalar: 1 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 1 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 1 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + remapEnabled: 0 + positionAmount: + serializedVersion: 2 + minMaxState: 0 + scalar: 1 + minScalar: 1 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + rotationAmount: + serializedVersion: 2 + minMaxState: 0 + scalar: 0 + minScalar: 0 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + sizeAmount: + serializedVersion: 2 + minMaxState: 0 + scalar: 0 + minScalar: 0 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + SizeBySpeedModule: + enabled: 0 + curve: + serializedVersion: 2 + minMaxState: 1 + scalar: 1 + minScalar: 1 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 1 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 1 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + y: + serializedVersion: 2 + minMaxState: 1 + scalar: 1 + minScalar: 1 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 1 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 1 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + z: + serializedVersion: 2 + minMaxState: 1 + scalar: 1 + minScalar: 1 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 1 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 1 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + range: {x: 0, y: 1} + separateAxes: 0 + RotationBySpeedModule: + enabled: 0 + x: + serializedVersion: 2 + minMaxState: 0 + scalar: 0 + minScalar: 0 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + y: + serializedVersion: 2 + minMaxState: 0 + scalar: 0 + minScalar: 0 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + curve: + serializedVersion: 2 + minMaxState: 0 + scalar: 0.7853982 + minScalar: 0.7853982 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + separateAxes: 0 + range: {x: 0, y: 1} + ColorBySpeedModule: + enabled: 0 + gradient: + serializedVersion: 2 + minMaxState: 1 + minColor: {r: 1, g: 1, b: 1, a: 1} + maxColor: {r: 1, g: 1, b: 1, a: 1} + maxGradient: + serializedVersion: 2 + key0: {r: 1, g: 1, b: 1, a: 1} + key1: {r: 1, g: 1, b: 1, a: 1} + key2: {r: 0, g: 0, b: 0, a: 0} + key3: {r: 0, g: 0, b: 0, a: 0} + key4: {r: 0, g: 0, b: 0, a: 0} + key5: {r: 0, g: 0, b: 0, a: 0} + key6: {r: 0, g: 0, b: 0, a: 0} + key7: {r: 0, g: 0, b: 0, a: 0} + ctime0: 0 + ctime1: 65535 + ctime2: 0 + ctime3: 0 + ctime4: 0 + ctime5: 0 + ctime6: 0 + ctime7: 0 + atime0: 0 + atime1: 65535 + atime2: 0 + atime3: 0 + atime4: 0 + atime5: 0 + atime6: 0 + atime7: 0 + m_Mode: 0 + m_NumColorKeys: 2 + m_NumAlphaKeys: 2 + minGradient: + serializedVersion: 2 + key0: {r: 1, g: 1, b: 1, a: 1} + key1: {r: 1, g: 1, b: 1, a: 1} + key2: {r: 0, g: 0, b: 0, a: 0} + key3: {r: 0, g: 0, b: 0, a: 0} + key4: {r: 0, g: 0, b: 0, a: 0} + key5: {r: 0, g: 0, b: 0, a: 0} + key6: {r: 0, g: 0, b: 0, a: 0} + key7: {r: 0, g: 0, b: 0, a: 0} + ctime0: 0 + ctime1: 65535 + ctime2: 0 + ctime3: 0 + ctime4: 0 + ctime5: 0 + ctime6: 0 + ctime7: 0 + atime0: 0 + atime1: 65535 + atime2: 0 + atime3: 0 + atime4: 0 + atime5: 0 + atime6: 0 + atime7: 0 + m_Mode: 0 + m_NumColorKeys: 2 + m_NumAlphaKeys: 2 + range: {x: 0, y: 1} + CollisionModule: + enabled: 1 + serializedVersion: 3 + type: 1 + collisionMode: 0 + colliderForce: 0 + multiplyColliderForceByParticleSize: 0 + multiplyColliderForceByParticleSpeed: 0 + multiplyColliderForceByCollisionAngle: 1 + plane0: {fileID: 0} + plane1: {fileID: 0} + plane2: {fileID: 0} + plane3: {fileID: 0} + plane4: {fileID: 0} + plane5: {fileID: 0} + m_Dampen: + serializedVersion: 2 + minMaxState: 3 + scalar: 0.5 + minScalar: 0.25 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + m_Bounce: + serializedVersion: 2 + minMaxState: 3 + scalar: 1 + minScalar: 0 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + m_EnergyLossOnCollision: + serializedVersion: 2 + minMaxState: 0 + scalar: 0.1 + minScalar: 0 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minKillSpeed: 0.01 + maxKillSpeed: 10000 + radiusScale: 1 + collidesWith: + serializedVersion: 2 + m_Bits: 4294967295 + maxCollisionShapes: 256 + quality: 1 + voxelSize: 0.5 + collisionMessages: 0 + collidesWithDynamic: 1 + interiorCollisions: 0 + TriggerModule: + enabled: 0 + collisionShape0: {fileID: 0} + collisionShape1: {fileID: 0} + collisionShape2: {fileID: 0} + collisionShape3: {fileID: 0} + collisionShape4: {fileID: 0} + collisionShape5: {fileID: 0} + inside: 1 + outside: 0 + enter: 0 + exit: 0 + radiusScale: 1 + SubModule: + serializedVersion: 2 + enabled: 0 + subEmitters: + - serializedVersion: 3 + emitter: {fileID: 0} + type: 0 + properties: 0 + emitProbability: 1 + LightsModule: + enabled: 0 + ratio: 0 + light: {fileID: 0} + randomDistribution: 1 + color: 1 + range: 1 + intensity: 1 + rangeCurve: + serializedVersion: 2 + minMaxState: 0 + scalar: 1 + minScalar: 1 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + intensityCurve: + serializedVersion: 2 + minMaxState: 0 + scalar: 1 + minScalar: 1 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + maxLights: 20 + TrailModule: + enabled: 1 + mode: 0 + ratio: 1 + lifetime: + serializedVersion: 2 + minMaxState: 0 + scalar: 1 + minScalar: 1 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minVertexDistance: 0.2 + textureMode: 0 + ribbonCount: 1 + shadowBias: 0.5 + worldSpace: 0 + dieWithParticles: 1 + sizeAffectsWidth: 1 + sizeAffectsLifetime: 0 + inheritParticleColor: 1 + generateLightingData: 0 + splitSubEmitterRibbons: 0 + attachRibbonsToTransform: 0 + colorOverLifetime: + serializedVersion: 2 + minMaxState: 1 + minColor: {r: 1, g: 1, b: 1, a: 1} + maxColor: {r: 1, g: 1, b: 1, a: 1} + maxGradient: + serializedVersion: 2 + key0: {r: 1, g: 1, b: 1, a: 1} + key1: {r: 1, g: 1, b: 1, a: 1} + key2: {r: 0, g: 0, b: 0, a: 0} + key3: {r: 0, g: 0, b: 0, a: 0} + key4: {r: 0, g: 0, b: 0, a: 0} + key5: {r: 0, g: 0, b: 0, a: 0} + key6: {r: 0, g: 0, b: 0, a: 0} + key7: {r: 0, g: 0, b: 0, a: 0} + ctime0: 0 + ctime1: 65535 + ctime2: 0 + ctime3: 0 + ctime4: 0 + ctime5: 0 + ctime6: 0 + ctime7: 0 + atime0: 0 + atime1: 65535 + atime2: 65535 + atime3: 0 + atime4: 0 + atime5: 0 + atime6: 0 + atime7: 0 + m_Mode: 0 + m_NumColorKeys: 2 + m_NumAlphaKeys: 2 + minGradient: + serializedVersion: 2 + key0: {r: 1, g: 1, b: 1, a: 1} + key1: {r: 1, g: 1, b: 1, a: 1} + key2: {r: 0, g: 0, b: 0, a: 0} + key3: {r: 0, g: 0, b: 0, a: 0} + key4: {r: 0, g: 0, b: 0, a: 0} + key5: {r: 0, g: 0, b: 0, a: 0} + key6: {r: 0, g: 0, b: 0, a: 0} + key7: {r: 0, g: 0, b: 0, a: 0} + ctime0: 0 + ctime1: 65535 + ctime2: 0 + ctime3: 0 + ctime4: 0 + ctime5: 0 + ctime6: 0 + ctime7: 0 + atime0: 0 + atime1: 65535 + atime2: 0 + atime3: 0 + atime4: 0 + atime5: 0 + atime6: 0 + atime7: 0 + m_Mode: 0 + m_NumColorKeys: 2 + m_NumAlphaKeys: 2 + widthOverTrail: + serializedVersion: 2 + minMaxState: 1 + scalar: 1 + minScalar: 1 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 28.359617 + outSlope: 28.359617 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 1 + - serializedVersion: 3 + time: 0.06278369 + value: 0.9960582 + inSlope: -0.12556736 + outSlope: -0.12556736 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: -2 + outSlope: -2 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + colorOverTrail: + serializedVersion: 2 + minMaxState: 1 + minColor: {r: 1, g: 1, b: 1, a: 1} + maxColor: {r: 1, g: 1, b: 1, a: 1} + maxGradient: + serializedVersion: 2 + key0: {r: 1, g: 1, b: 1, a: 0} + key1: {r: 1, g: 1, b: 1, a: 0.89705884} + key2: {r: 0, g: 0, b: 0, a: 0} + key3: {r: 0, g: 0, b: 0, a: 0} + key4: {r: 0, g: 0, b: 0, a: 0} + key5: {r: 0, g: 0, b: 0, a: 0} + key6: {r: 0, g: 0, b: 0, a: 0} + key7: {r: 0, g: 0, b: 0, a: 0} + ctime0: 0 + ctime1: 65535 + ctime2: 0 + ctime3: 0 + ctime4: 0 + ctime5: 0 + ctime6: 0 + ctime7: 0 + atime0: 0 + atime1: 6746 + atime2: 65535 + atime3: 0 + atime4: 0 + atime5: 0 + atime6: 0 + atime7: 0 + m_Mode: 0 + m_NumColorKeys: 2 + m_NumAlphaKeys: 3 + minGradient: + serializedVersion: 2 + key0: {r: 1, g: 1, b: 1, a: 1} + key1: {r: 1, g: 1, b: 1, a: 1} + key2: {r: 0, g: 0, b: 0, a: 0} + key3: {r: 0, g: 0, b: 0, a: 0} + key4: {r: 0, g: 0, b: 0, a: 0} + key5: {r: 0, g: 0, b: 0, a: 0} + key6: {r: 0, g: 0, b: 0, a: 0} + key7: {r: 0, g: 0, b: 0, a: 0} + ctime0: 0 + ctime1: 65535 + ctime2: 0 + ctime3: 0 + ctime4: 0 + ctime5: 0 + ctime6: 0 + ctime7: 0 + atime0: 0 + atime1: 65535 + atime2: 0 + atime3: 0 + atime4: 0 + atime5: 0 + atime6: 0 + atime7: 0 + m_Mode: 0 + m_NumColorKeys: 2 + m_NumAlphaKeys: 2 + CustomDataModule: + enabled: 0 + mode0: 0 + vectorComponentCount0: 4 + color0: + serializedVersion: 2 + minMaxState: 0 + minColor: {r: 1, g: 1, b: 1, a: 1} + maxColor: {r: 1, g: 1, b: 1, a: 1} + maxGradient: + serializedVersion: 2 + key0: {r: 1, g: 1, b: 1, a: 1} + key1: {r: 1, g: 1, b: 1, a: 1} + key2: {r: 0, g: 0, b: 0, a: 0} + key3: {r: 0, g: 0, b: 0, a: 0} + key4: {r: 0, g: 0, b: 0, a: 0} + key5: {r: 0, g: 0, b: 0, a: 0} + key6: {r: 0, g: 0, b: 0, a: 0} + key7: {r: 0, g: 0, b: 0, a: 0} + ctime0: 0 + ctime1: 65535 + ctime2: 0 + ctime3: 0 + ctime4: 0 + ctime5: 0 + ctime6: 0 + ctime7: 0 + atime0: 0 + atime1: 65535 + atime2: 0 + atime3: 0 + atime4: 0 + atime5: 0 + atime6: 0 + atime7: 0 + m_Mode: 0 + m_NumColorKeys: 2 + m_NumAlphaKeys: 2 + minGradient: + serializedVersion: 2 + key0: {r: 1, g: 1, b: 1, a: 1} + key1: {r: 1, g: 1, b: 1, a: 1} + key2: {r: 0, g: 0, b: 0, a: 0} + key3: {r: 0, g: 0, b: 0, a: 0} + key4: {r: 0, g: 0, b: 0, a: 0} + key5: {r: 0, g: 0, b: 0, a: 0} + key6: {r: 0, g: 0, b: 0, a: 0} + key7: {r: 0, g: 0, b: 0, a: 0} + ctime0: 0 + ctime1: 65535 + ctime2: 0 + ctime3: 0 + ctime4: 0 + ctime5: 0 + ctime6: 0 + ctime7: 0 + atime0: 0 + atime1: 65535 + atime2: 0 + atime3: 0 + atime4: 0 + atime5: 0 + atime6: 0 + atime7: 0 + m_Mode: 0 + m_NumColorKeys: 2 + m_NumAlphaKeys: 2 + colorLabel0: Color + vector0_0: + serializedVersion: 2 + minMaxState: 0 + scalar: 0 + minScalar: 0 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + vectorLabel0_0: X + vector0_1: + serializedVersion: 2 + minMaxState: 0 + scalar: 0 + minScalar: 0 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + vectorLabel0_1: Y + vector0_2: + serializedVersion: 2 + minMaxState: 0 + scalar: 0 + minScalar: 0 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + vectorLabel0_2: Z + vector0_3: + serializedVersion: 2 + minMaxState: 0 + scalar: 0 + minScalar: 0 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + vectorLabel0_3: W + mode1: 0 + vectorComponentCount1: 4 + color1: + serializedVersion: 2 + minMaxState: 0 + minColor: {r: 1, g: 1, b: 1, a: 1} + maxColor: {r: 1, g: 1, b: 1, a: 1} + maxGradient: + serializedVersion: 2 + key0: {r: 1, g: 1, b: 1, a: 1} + key1: {r: 1, g: 1, b: 1, a: 1} + key2: {r: 0, g: 0, b: 0, a: 0} + key3: {r: 0, g: 0, b: 0, a: 0} + key4: {r: 0, g: 0, b: 0, a: 0} + key5: {r: 0, g: 0, b: 0, a: 0} + key6: {r: 0, g: 0, b: 0, a: 0} + key7: {r: 0, g: 0, b: 0, a: 0} + ctime0: 0 + ctime1: 65535 + ctime2: 0 + ctime3: 0 + ctime4: 0 + ctime5: 0 + ctime6: 0 + ctime7: 0 + atime0: 0 + atime1: 65535 + atime2: 0 + atime3: 0 + atime4: 0 + atime5: 0 + atime6: 0 + atime7: 0 + m_Mode: 0 + m_NumColorKeys: 2 + m_NumAlphaKeys: 2 + minGradient: + serializedVersion: 2 + key0: {r: 1, g: 1, b: 1, a: 1} + key1: {r: 1, g: 1, b: 1, a: 1} + key2: {r: 0, g: 0, b: 0, a: 0} + key3: {r: 0, g: 0, b: 0, a: 0} + key4: {r: 0, g: 0, b: 0, a: 0} + key5: {r: 0, g: 0, b: 0, a: 0} + key6: {r: 0, g: 0, b: 0, a: 0} + key7: {r: 0, g: 0, b: 0, a: 0} + ctime0: 0 + ctime1: 65535 + ctime2: 0 + ctime3: 0 + ctime4: 0 + ctime5: 0 + ctime6: 0 + ctime7: 0 + atime0: 0 + atime1: 65535 + atime2: 0 + atime3: 0 + atime4: 0 + atime5: 0 + atime6: 0 + atime7: 0 + m_Mode: 0 + m_NumColorKeys: 2 + m_NumAlphaKeys: 2 + colorLabel1: Color + vector1_0: + serializedVersion: 2 + minMaxState: 0 + scalar: 0 + minScalar: 0 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + vectorLabel1_0: X + vector1_1: + serializedVersion: 2 + minMaxState: 0 + scalar: 0 + minScalar: 0 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + vectorLabel1_1: Y + vector1_2: + serializedVersion: 2 + minMaxState: 0 + scalar: 0 + minScalar: 0 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + vectorLabel1_2: Z + vector1_3: + serializedVersion: 2 + minMaxState: 0 + scalar: 0 + minScalar: 0 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + vectorLabel1_3: W diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/Kart/Bounce Effect Prefabs/BouncyFireworks.prefab.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/Kart/Bounce Effect Prefabs/BouncyFireworks.prefab.meta" new file mode 100644 index 00000000..7cb2bb25 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/Kart/Bounce Effect Prefabs/BouncyFireworks.prefab.meta" @@ -0,0 +1,7 @@ +fileFormatVersion: 2 +guid: 5fec8cefa05b84bd4891a0e9bca47a8d +PrefabImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/Kart/Bounce Effect Prefabs/BouncyGlowy.prefab" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/Kart/Bounce Effect Prefabs/BouncyGlowy.prefab" new file mode 100644 index 00000000..fcbc0f3a --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/Kart/Bounce Effect Prefabs/BouncyGlowy.prefab" @@ -0,0 +1,4933 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!1 &1866372463 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 1866372464} + - component: {fileID: 1866372467} + - component: {fileID: 1866372466} + - component: {fileID: 1866372465} + m_Layer: 0 + m_Name: BouncyGlowy + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &1866372464 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1866372463} + m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} + m_LocalPosition: {x: 0, y: 0, z: 0} + m_LocalScale: {x: 1, y: 1, z: 1} + m_Children: [] + m_Father: {fileID: 0} + m_RootOrder: 0 + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!114 &1866372467 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1866372463} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 8490d35dc3da54707a579c5f4ee95154, type: 3} + m_Name: + m_EditorClassIdentifier: +--- !u!199 &1866372466 +ParticleSystemRenderer: + serializedVersion: 6 + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1866372463} + m_Enabled: 1 + m_CastShadows: 0 + m_ReceiveShadows: 0 + m_DynamicOccludee: 1 + m_MotionVectors: 1 + m_LightProbeUsage: 0 + m_ReflectionProbeUsage: 0 + m_RenderingLayerMask: 1 + m_RendererPriority: 0 + m_Materials: + - {fileID: 10308, guid: 0000000000000000f000000000000000, type: 0} + - {fileID: 2100000, guid: bb6ceb127383a4152a4041c9babd6912, type: 2} + m_StaticBatchInfo: + firstSubMesh: 0 + subMeshCount: 0 + m_StaticBatchRoot: {fileID: 0} + m_ProbeAnchor: {fileID: 0} + m_LightProbeVolumeOverride: {fileID: 0} + m_ScaleInLightmap: 1 + m_PreserveUVs: 0 + m_IgnoreNormalsForChartDetection: 0 + m_ImportantGI: 0 + m_StitchLightmapSeams: 0 + m_SelectedEditorRenderState: 3 + m_MinimumChartSize: 4 + m_AutoUVMaxDistance: 0.5 + m_AutoUVMaxAngle: 89 + m_LightmapParameters: {fileID: 0} + m_SortingLayerID: 0 + m_SortingLayer: 0 + m_SortingOrder: 0 + m_RenderMode: 0 + m_SortMode: 0 + m_MinParticleSize: 0 + m_MaxParticleSize: 0.5 + m_CameraVelocityScale: 0 + m_VelocityScale: 0.01 + m_LengthScale: 1 + m_SortingFudge: 0 + m_NormalDirection: 1 + m_ShadowBias: 0 + m_RenderAlignment: 0 + m_Pivot: {x: 0, y: 0, z: 0} + m_Flip: {x: 0, y: 0, z: 0} + m_UseCustomVertexStreams: 0 + m_EnableGPUInstancing: 1 + m_ApplyActiveColorSpace: 1 + m_AllowRoll: 1 + m_VertexStreams: 00010304 + m_Mesh: {fileID: 0} + m_Mesh1: {fileID: 0} + m_Mesh2: {fileID: 0} + m_Mesh3: {fileID: 0} + m_MaskInteraction: 0 +--- !u!198 &1866372465 +ParticleSystem: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1866372463} + serializedVersion: 6 + lengthInSec: 0.1 + simulationSpeed: 1 + stopAction: 0 + cullingMode: 0 + ringBufferMode: 0 + ringBufferLoopRange: {x: 0, y: 1} + looping: 0 + prewarm: 0 + playOnAwake: 0 + useUnscaledTime: 0 + autoRandomSeed: 1 + useRigidbodyForVelocity: 1 + startDelay: + serializedVersion: 2 + minMaxState: 0 + scalar: 0 + minScalar: 0 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + moveWithTransform: 1 + moveWithCustomTransform: {fileID: 0} + scalingMode: 1 + randomSeed: 0 + InitialModule: + serializedVersion: 3 + enabled: 1 + startLifetime: + serializedVersion: 2 + minMaxState: 3 + scalar: 1 + minScalar: 0.1 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + startSpeed: + serializedVersion: 2 + minMaxState: 0 + scalar: 5 + minScalar: 5 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + startColor: + serializedVersion: 2 + minMaxState: 0 + minColor: {r: 1, g: 1, b: 1, a: 1} + maxColor: {r: 1, g: 1, b: 1, a: 1} + maxGradient: + serializedVersion: 2 + key0: {r: 1, g: 1, b: 1, a: 1} + key1: {r: 1, g: 1, b: 1, a: 1} + key2: {r: 0, g: 0, b: 0, a: 0} + key3: {r: 0, g: 0, b: 0, a: 0} + key4: {r: 0, g: 0, b: 0, a: 0} + key5: {r: 0, g: 0, b: 0, a: 0} + key6: {r: 0, g: 0, b: 0, a: 0} + key7: {r: 0, g: 0, b: 0, a: 0} + ctime0: 0 + ctime1: 65535 + ctime2: 0 + ctime3: 0 + ctime4: 0 + ctime5: 0 + ctime6: 0 + ctime7: 0 + atime0: 0 + atime1: 65535 + atime2: 0 + atime3: 0 + atime4: 0 + atime5: 0 + atime6: 0 + atime7: 0 + m_Mode: 0 + m_NumColorKeys: 2 + m_NumAlphaKeys: 2 + minGradient: + serializedVersion: 2 + key0: {r: 1, g: 1, b: 1, a: 1} + key1: {r: 1, g: 1, b: 1, a: 1} + key2: {r: 0, g: 0, b: 0, a: 0} + key3: {r: 0, g: 0, b: 0, a: 0} + key4: {r: 0, g: 0, b: 0, a: 0} + key5: {r: 0, g: 0, b: 0, a: 0} + key6: {r: 0, g: 0, b: 0, a: 0} + key7: {r: 0, g: 0, b: 0, a: 0} + ctime0: 0 + ctime1: 65535 + ctime2: 0 + ctime3: 0 + ctime4: 0 + ctime5: 0 + ctime6: 0 + ctime7: 0 + atime0: 0 + atime1: 65535 + atime2: 0 + atime3: 0 + atime4: 0 + atime5: 0 + atime6: 0 + atime7: 0 + m_Mode: 0 + m_NumColorKeys: 2 + m_NumAlphaKeys: 2 + startSize: + serializedVersion: 2 + minMaxState: 0 + scalar: 1 + minScalar: 1 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + startSizeY: + serializedVersion: 2 + minMaxState: 0 + scalar: 1 + minScalar: 1 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + startSizeZ: + serializedVersion: 2 + minMaxState: 0 + scalar: 1 + minScalar: 1 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + startRotationX: + serializedVersion: 2 + minMaxState: 0 + scalar: 0 + minScalar: 0 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + startRotationY: + serializedVersion: 2 + minMaxState: 0 + scalar: 0 + minScalar: 0 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + startRotation: + serializedVersion: 2 + minMaxState: 0 + scalar: 0 + minScalar: 0 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + randomizeRotationDirection: 0 + maxNumParticles: 500 + size3D: 0 + rotation3D: 0 + gravityModifier: + serializedVersion: 2 + minMaxState: 0 + scalar: 1 + minScalar: 0 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + ShapeModule: + serializedVersion: 6 + enabled: 1 + type: 2 + angle: 25 + length: 5 + boxThickness: {x: 0, y: 0, z: 0} + radiusThickness: 0 + donutRadius: 0.2 + m_Position: {x: 0, y: 0, z: 0} + m_Rotation: {x: -90, y: 0, z: 0} + m_Scale: {x: 1, y: 1, z: 1} + placementMode: 0 + m_MeshMaterialIndex: 0 + m_MeshNormalOffset: 0 + m_MeshSpawn: + mode: 0 + spread: 0 + speed: + serializedVersion: 2 + minMaxState: 0 + scalar: 1 + minScalar: 1 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + m_Mesh: {fileID: 0} + m_MeshRenderer: {fileID: 0} + m_SkinnedMeshRenderer: {fileID: 0} + m_Sprite: {fileID: 0} + m_SpriteRenderer: {fileID: 0} + m_UseMeshMaterialIndex: 0 + m_UseMeshColors: 1 + alignToDirection: 0 + m_Texture: {fileID: 0} + m_TextureClipChannel: 3 + m_TextureClipThreshold: 0 + m_TextureUVChannel: 0 + m_TextureColorAffectsParticles: 1 + m_TextureAlphaAffectsParticles: 1 + m_TextureBilinearFiltering: 0 + randomDirectionAmount: 0 + sphericalDirectionAmount: 0 + randomPositionAmount: 0 + radius: + value: 0.0001 + mode: 0 + spread: 0 + speed: + serializedVersion: 2 + minMaxState: 0 + scalar: 1 + minScalar: 1 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + arc: + value: 360 + mode: 0 + spread: 0 + speed: + serializedVersion: 2 + minMaxState: 0 + scalar: 1 + minScalar: 1 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + EmissionModule: + enabled: 1 + serializedVersion: 4 + rateOverTime: + serializedVersion: 2 + minMaxState: 0 + scalar: 0 + minScalar: 10 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + rateOverDistance: + serializedVersion: 2 + minMaxState: 0 + scalar: 0 + minScalar: 0 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + m_BurstCount: 1 + m_Bursts: + - serializedVersion: 2 + time: 0 + countCurve: + serializedVersion: 2 + minMaxState: 0 + scalar: 15 + minScalar: 30 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0 + outWeight: 0 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0 + outWeight: 0 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0 + outWeight: 0 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0 + outWeight: 0 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + cycleCount: 1 + repeatInterval: 0.01 + probability: 1 + SizeModule: + enabled: 1 + curve: + serializedVersion: 2 + minMaxState: 1 + scalar: 1 + minScalar: 1 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0.0031967163 + inSlope: 2.87659 + outSlope: 2.87659 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 1 + - serializedVersion: 3 + time: 0.043117 + value: 1 + inSlope: 1 + outSlope: 1 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 0.1007126 + value: 0.686901 + inSlope: -5.776096 + outSlope: -5.776096 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 0.16911767 + value: 1 + inSlope: 2.9006367 + outSlope: 2.9006367 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 0.21807516 + value: 0.686901 + inSlope: -0.5091844 + outSlope: -0.5091844 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 0.25645503 + value: 1 + inSlope: 7.881734 + outSlope: 7.881734 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 0.3067343 + value: 0.686901 + inSlope: -2.8199959 + outSlope: -2.8199959 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 0.37663656 + value: 1 + inSlope: -0.21298592 + outSlope: -0.21298592 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 0.41739488 + value: 0.686901 + inSlope: -1.2948201 + outSlope: -1.2948201 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 0.46600875 + value: 1 + inSlope: 6.6090016 + outSlope: 6.6090016 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 0.53930175 + value: 0.686901 + inSlope: -2.688586 + outSlope: -2.688586 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 0.5836917 + value: 1 + inSlope: -0.55774254 + outSlope: -0.55774254 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 0.6723207 + value: 0.686901 + inSlope: -2.7596815 + outSlope: -2.7596815 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 0.7135786 + value: 1 + inSlope: 11.642628 + outSlope: 11.642628 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 0.7361574 + value: 0.686901 + inSlope: -6.299142 + outSlope: -6.299142 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 0.79440314 + value: 0.85447425 + inSlope: -0.92626786 + outSlope: -0.92626786 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 0.86355454 + value: 0.68929935 + inSlope: -5.515113 + outSlope: -5.515113 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 0.93965214 + value: 0.68544936 + inSlope: -0.9366593 + outSlope: -0.9366593 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0.0031967163 + inSlope: -1.207749 + outSlope: -1.207749 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.08294125 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + y: + serializedVersion: 2 + minMaxState: 1 + scalar: 1 + minScalar: 1 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 1 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 1 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + z: + serializedVersion: 2 + minMaxState: 1 + scalar: 1 + minScalar: 1 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 1 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 1 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + separateAxes: 0 + RotationModule: + enabled: 0 + x: + serializedVersion: 2 + minMaxState: 0 + scalar: 0 + minScalar: 0 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + y: + serializedVersion: 2 + minMaxState: 0 + scalar: 0 + minScalar: 0 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + curve: + serializedVersion: 2 + minMaxState: 0 + scalar: 0.7853982 + minScalar: 0.7853982 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + separateAxes: 0 + ColorModule: + enabled: 1 + gradient: + serializedVersion: 2 + minMaxState: 1 + minColor: {r: 1, g: 1, b: 1, a: 1} + maxColor: {r: 1, g: 1, b: 1, a: 1} + maxGradient: + serializedVersion: 2 + key0: {r: 1, g: 1, b: 1, a: 1} + key1: {r: 1, g: 1, b: 1, a: 0} + key2: {r: 0, g: 0, b: 0, a: 0} + key3: {r: 0, g: 0, b: 0, a: 0} + key4: {r: 0, g: 0, b: 0, a: 0} + key5: {r: 0, g: 0, b: 0, a: 0} + key6: {r: 0, g: 0, b: 0, a: 0} + key7: {r: 0, g: 0, b: 0, a: 0} + ctime0: 0 + ctime1: 65535 + ctime2: 0 + ctime3: 0 + ctime4: 0 + ctime5: 0 + ctime6: 0 + ctime7: 0 + atime0: 0 + atime1: 65342 + atime2: 65342 + atime3: 0 + atime4: 0 + atime5: 0 + atime6: 0 + atime7: 0 + m_Mode: 0 + m_NumColorKeys: 2 + m_NumAlphaKeys: 2 + minGradient: + serializedVersion: 2 + key0: {r: 1, g: 1, b: 1, a: 1} + key1: {r: 1, g: 1, b: 1, a: 1} + key2: {r: 0, g: 0, b: 0, a: 0} + key3: {r: 0, g: 0, b: 0, a: 0} + key4: {r: 0, g: 0, b: 0, a: 0} + key5: {r: 0, g: 0, b: 0, a: 0} + key6: {r: 0, g: 0, b: 0, a: 0} + key7: {r: 0, g: 0, b: 0, a: 0} + ctime0: 0 + ctime1: 65535 + ctime2: 0 + ctime3: 0 + ctime4: 0 + ctime5: 0 + ctime6: 0 + ctime7: 0 + atime0: 0 + atime1: 65535 + atime2: 0 + atime3: 0 + atime4: 0 + atime5: 0 + atime6: 0 + atime7: 0 + m_Mode: 0 + m_NumColorKeys: 2 + m_NumAlphaKeys: 2 + UVModule: + enabled: 0 + mode: 0 + timeMode: 0 + fps: 30 + frameOverTime: + serializedVersion: 2 + minMaxState: 1 + scalar: 0.9999 + minScalar: 0.9999 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 1 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 1 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + startFrame: + serializedVersion: 2 + minMaxState: 0 + scalar: 0 + minScalar: 0 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + speedRange: {x: 0, y: 1} + tilesX: 1 + tilesY: 1 + animationType: 0 + rowIndex: 0 + cycles: 1 + uvChannelMask: -1 + randomRow: 1 + sprites: + - sprite: {fileID: 0} + flipU: 0 + flipV: 0 + VelocityModule: + enabled: 0 + x: + serializedVersion: 2 + minMaxState: 0 + scalar: 0 + minScalar: 0 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + y: + serializedVersion: 2 + minMaxState: 0 + scalar: 0 + minScalar: 0 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + z: + serializedVersion: 2 + minMaxState: 0 + scalar: 0 + minScalar: 0 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + orbitalX: + serializedVersion: 2 + minMaxState: 0 + scalar: 0 + minScalar: 0 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + orbitalY: + serializedVersion: 2 + minMaxState: 0 + scalar: 0 + minScalar: 0 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + orbitalZ: + serializedVersion: 2 + minMaxState: 0 + scalar: 0 + minScalar: 0 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + orbitalOffsetX: + serializedVersion: 2 + minMaxState: 0 + scalar: 0 + minScalar: 0 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + orbitalOffsetY: + serializedVersion: 2 + minMaxState: 0 + scalar: 0 + minScalar: 0 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + orbitalOffsetZ: + serializedVersion: 2 + minMaxState: 0 + scalar: 0 + minScalar: 0 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + radial: + serializedVersion: 2 + minMaxState: 0 + scalar: 0 + minScalar: 0 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + speedModifier: + serializedVersion: 2 + minMaxState: 0 + scalar: 1 + minScalar: 1 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + inWorldSpace: 0 + InheritVelocityModule: + enabled: 0 + m_Mode: 0 + m_Curve: + serializedVersion: 2 + minMaxState: 0 + scalar: 0 + minScalar: 0 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + ForceModule: + enabled: 0 + x: + serializedVersion: 2 + minMaxState: 0 + scalar: 0 + minScalar: 0 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + y: + serializedVersion: 2 + minMaxState: 0 + scalar: 0 + minScalar: 0 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + z: + serializedVersion: 2 + minMaxState: 0 + scalar: 0 + minScalar: 0 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + inWorldSpace: 0 + randomizePerFrame: 0 + ExternalForcesModule: + enabled: 0 + multiplier: 1 + influenceFilter: 0 + influenceMask: + serializedVersion: 2 + m_Bits: 4294967295 + influenceList: [] + ClampVelocityModule: + enabled: 1 + x: + serializedVersion: 2 + minMaxState: 0 + scalar: 1 + minScalar: 1 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + y: + serializedVersion: 2 + minMaxState: 0 + scalar: 1 + minScalar: 1 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + z: + serializedVersion: 2 + minMaxState: 0 + scalar: 1 + minScalar: 1 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + magnitude: + serializedVersion: 2 + minMaxState: 0 + scalar: 0 + minScalar: 1 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + separateAxis: 0 + inWorldSpace: 0 + multiplyDragByParticleSize: 1 + multiplyDragByParticleVelocity: 1 + dampen: 0.01 + drag: + serializedVersion: 2 + minMaxState: 0 + scalar: 0 + minScalar: 0 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + NoiseModule: + enabled: 0 + strength: + serializedVersion: 2 + minMaxState: 0 + scalar: 1 + minScalar: 1 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + strengthY: + serializedVersion: 2 + minMaxState: 0 + scalar: 1 + minScalar: 1 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + strengthZ: + serializedVersion: 2 + minMaxState: 0 + scalar: 1 + minScalar: 1 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + separateAxes: 0 + frequency: 0.5 + damping: 1 + octaves: 1 + octaveMultiplier: 0.5 + octaveScale: 2 + quality: 2 + scrollSpeed: + serializedVersion: 2 + minMaxState: 0 + scalar: 0 + minScalar: 0 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + remap: + serializedVersion: 2 + minMaxState: 1 + scalar: 1 + minScalar: 1 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 1 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 1 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + remapY: + serializedVersion: 2 + minMaxState: 1 + scalar: 1 + minScalar: 1 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 1 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 1 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + remapZ: + serializedVersion: 2 + minMaxState: 1 + scalar: 1 + minScalar: 1 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 1 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 1 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + remapEnabled: 0 + positionAmount: + serializedVersion: 2 + minMaxState: 0 + scalar: 1 + minScalar: 1 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + rotationAmount: + serializedVersion: 2 + minMaxState: 0 + scalar: 0 + minScalar: 0 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + sizeAmount: + serializedVersion: 2 + minMaxState: 0 + scalar: 0 + minScalar: 0 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + SizeBySpeedModule: + enabled: 0 + curve: + serializedVersion: 2 + minMaxState: 1 + scalar: 1 + minScalar: 1 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 1 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 1 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + y: + serializedVersion: 2 + minMaxState: 1 + scalar: 1 + minScalar: 1 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 1 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 1 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + z: + serializedVersion: 2 + minMaxState: 1 + scalar: 1 + minScalar: 1 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 1 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 1 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + range: {x: 0, y: 1} + separateAxes: 0 + RotationBySpeedModule: + enabled: 0 + x: + serializedVersion: 2 + minMaxState: 0 + scalar: 0 + minScalar: 0 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + y: + serializedVersion: 2 + minMaxState: 0 + scalar: 0 + minScalar: 0 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + curve: + serializedVersion: 2 + minMaxState: 0 + scalar: 0.7853982 + minScalar: 0.7853982 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + separateAxes: 0 + range: {x: 0, y: 1} + ColorBySpeedModule: + enabled: 0 + gradient: + serializedVersion: 2 + minMaxState: 1 + minColor: {r: 1, g: 1, b: 1, a: 1} + maxColor: {r: 1, g: 1, b: 1, a: 1} + maxGradient: + serializedVersion: 2 + key0: {r: 1, g: 1, b: 1, a: 1} + key1: {r: 1, g: 1, b: 1, a: 1} + key2: {r: 0, g: 0, b: 0, a: 0} + key3: {r: 0, g: 0, b: 0, a: 0} + key4: {r: 0, g: 0, b: 0, a: 0} + key5: {r: 0, g: 0, b: 0, a: 0} + key6: {r: 0, g: 0, b: 0, a: 0} + key7: {r: 0, g: 0, b: 0, a: 0} + ctime0: 0 + ctime1: 65535 + ctime2: 0 + ctime3: 0 + ctime4: 0 + ctime5: 0 + ctime6: 0 + ctime7: 0 + atime0: 0 + atime1: 65535 + atime2: 0 + atime3: 0 + atime4: 0 + atime5: 0 + atime6: 0 + atime7: 0 + m_Mode: 0 + m_NumColorKeys: 2 + m_NumAlphaKeys: 2 + minGradient: + serializedVersion: 2 + key0: {r: 1, g: 1, b: 1, a: 1} + key1: {r: 1, g: 1, b: 1, a: 1} + key2: {r: 0, g: 0, b: 0, a: 0} + key3: {r: 0, g: 0, b: 0, a: 0} + key4: {r: 0, g: 0, b: 0, a: 0} + key5: {r: 0, g: 0, b: 0, a: 0} + key6: {r: 0, g: 0, b: 0, a: 0} + key7: {r: 0, g: 0, b: 0, a: 0} + ctime0: 0 + ctime1: 65535 + ctime2: 0 + ctime3: 0 + ctime4: 0 + ctime5: 0 + ctime6: 0 + ctime7: 0 + atime0: 0 + atime1: 65535 + atime2: 0 + atime3: 0 + atime4: 0 + atime5: 0 + atime6: 0 + atime7: 0 + m_Mode: 0 + m_NumColorKeys: 2 + m_NumAlphaKeys: 2 + range: {x: 0, y: 1} + CollisionModule: + enabled: 1 + serializedVersion: 3 + type: 1 + collisionMode: 0 + colliderForce: 0 + multiplyColliderForceByParticleSize: 0 + multiplyColliderForceByParticleSpeed: 0 + multiplyColliderForceByCollisionAngle: 1 + plane0: {fileID: 0} + plane1: {fileID: 0} + plane2: {fileID: 0} + plane3: {fileID: 0} + plane4: {fileID: 0} + plane5: {fileID: 0} + m_Dampen: + serializedVersion: 2 + minMaxState: 3 + scalar: 1 + minScalar: 0.5 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + m_Bounce: + serializedVersion: 2 + minMaxState: 3 + scalar: 1 + minScalar: 0.5 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + m_EnergyLossOnCollision: + serializedVersion: 2 + minMaxState: 0 + scalar: 0 + minScalar: 0 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minKillSpeed: 0.01 + maxKillSpeed: 10000 + radiusScale: 1 + collidesWith: + serializedVersion: 2 + m_Bits: 4294967295 + maxCollisionShapes: 256 + quality: 1 + voxelSize: 0.5 + collisionMessages: 0 + collidesWithDynamic: 1 + interiorCollisions: 0 + TriggerModule: + enabled: 0 + collisionShape0: {fileID: 0} + collisionShape1: {fileID: 0} + collisionShape2: {fileID: 0} + collisionShape3: {fileID: 0} + collisionShape4: {fileID: 0} + collisionShape5: {fileID: 0} + inside: 1 + outside: 0 + enter: 0 + exit: 0 + radiusScale: 1 + SubModule: + serializedVersion: 2 + enabled: 0 + subEmitters: + - serializedVersion: 3 + emitter: {fileID: 0} + type: 0 + properties: 0 + emitProbability: 1 + LightsModule: + enabled: 0 + ratio: 0 + light: {fileID: 0} + randomDistribution: 1 + color: 1 + range: 1 + intensity: 1 + rangeCurve: + serializedVersion: 2 + minMaxState: 0 + scalar: 1 + minScalar: 1 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + intensityCurve: + serializedVersion: 2 + minMaxState: 0 + scalar: 1 + minScalar: 1 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + maxLights: 20 + TrailModule: + enabled: 0 + mode: 0 + ratio: 1 + lifetime: + serializedVersion: 2 + minMaxState: 0 + scalar: 1 + minScalar: 1 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minVertexDistance: 0.2 + textureMode: 0 + ribbonCount: 1 + shadowBias: 0.5 + worldSpace: 0 + dieWithParticles: 1 + sizeAffectsWidth: 1 + sizeAffectsLifetime: 0 + inheritParticleColor: 1 + generateLightingData: 0 + splitSubEmitterRibbons: 0 + attachRibbonsToTransform: 0 + colorOverLifetime: + serializedVersion: 2 + minMaxState: 1 + minColor: {r: 1, g: 1, b: 1, a: 1} + maxColor: {r: 1, g: 1, b: 1, a: 1} + maxGradient: + serializedVersion: 2 + key0: {r: 1, g: 1, b: 1, a: 1} + key1: {r: 1, g: 1, b: 1, a: 1} + key2: {r: 0, g: 0, b: 0, a: 0} + key3: {r: 0, g: 0, b: 0, a: 0} + key4: {r: 0, g: 0, b: 0, a: 0} + key5: {r: 0, g: 0, b: 0, a: 0} + key6: {r: 0, g: 0, b: 0, a: 0} + key7: {r: 0, g: 0, b: 0, a: 0} + ctime0: 0 + ctime1: 65535 + ctime2: 0 + ctime3: 0 + ctime4: 0 + ctime5: 0 + ctime6: 0 + ctime7: 0 + atime0: 0 + atime1: 65535 + atime2: 65535 + atime3: 0 + atime4: 0 + atime5: 0 + atime6: 0 + atime7: 0 + m_Mode: 0 + m_NumColorKeys: 2 + m_NumAlphaKeys: 2 + minGradient: + serializedVersion: 2 + key0: {r: 1, g: 1, b: 1, a: 1} + key1: {r: 1, g: 1, b: 1, a: 1} + key2: {r: 0, g: 0, b: 0, a: 0} + key3: {r: 0, g: 0, b: 0, a: 0} + key4: {r: 0, g: 0, b: 0, a: 0} + key5: {r: 0, g: 0, b: 0, a: 0} + key6: {r: 0, g: 0, b: 0, a: 0} + key7: {r: 0, g: 0, b: 0, a: 0} + ctime0: 0 + ctime1: 65535 + ctime2: 0 + ctime3: 0 + ctime4: 0 + ctime5: 0 + ctime6: 0 + ctime7: 0 + atime0: 0 + atime1: 65535 + atime2: 0 + atime3: 0 + atime4: 0 + atime5: 0 + atime6: 0 + atime7: 0 + m_Mode: 0 + m_NumColorKeys: 2 + m_NumAlphaKeys: 2 + widthOverTrail: + serializedVersion: 2 + minMaxState: 1 + scalar: 1 + minScalar: 1 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 28.359617 + outSlope: 28.359617 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 1 + - serializedVersion: 3 + time: 0.06278369 + value: 0.9960582 + inSlope: -0.12556736 + outSlope: -0.12556736 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: -2 + outSlope: -2 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + colorOverTrail: + serializedVersion: 2 + minMaxState: 1 + minColor: {r: 1, g: 1, b: 1, a: 1} + maxColor: {r: 1, g: 1, b: 1, a: 1} + maxGradient: + serializedVersion: 2 + key0: {r: 1, g: 1, b: 1, a: 0} + key1: {r: 1, g: 1, b: 1, a: 0.89705884} + key2: {r: 0, g: 0, b: 0, a: 0} + key3: {r: 0, g: 0, b: 0, a: 0} + key4: {r: 0, g: 0, b: 0, a: 0} + key5: {r: 0, g: 0, b: 0, a: 0} + key6: {r: 0, g: 0, b: 0, a: 0} + key7: {r: 0, g: 0, b: 0, a: 0} + ctime0: 0 + ctime1: 65535 + ctime2: 0 + ctime3: 0 + ctime4: 0 + ctime5: 0 + ctime6: 0 + ctime7: 0 + atime0: 0 + atime1: 6746 + atime2: 65535 + atime3: 0 + atime4: 0 + atime5: 0 + atime6: 0 + atime7: 0 + m_Mode: 0 + m_NumColorKeys: 2 + m_NumAlphaKeys: 3 + minGradient: + serializedVersion: 2 + key0: {r: 1, g: 1, b: 1, a: 1} + key1: {r: 1, g: 1, b: 1, a: 1} + key2: {r: 0, g: 0, b: 0, a: 0} + key3: {r: 0, g: 0, b: 0, a: 0} + key4: {r: 0, g: 0, b: 0, a: 0} + key5: {r: 0, g: 0, b: 0, a: 0} + key6: {r: 0, g: 0, b: 0, a: 0} + key7: {r: 0, g: 0, b: 0, a: 0} + ctime0: 0 + ctime1: 65535 + ctime2: 0 + ctime3: 0 + ctime4: 0 + ctime5: 0 + ctime6: 0 + ctime7: 0 + atime0: 0 + atime1: 65535 + atime2: 0 + atime3: 0 + atime4: 0 + atime5: 0 + atime6: 0 + atime7: 0 + m_Mode: 0 + m_NumColorKeys: 2 + m_NumAlphaKeys: 2 + CustomDataModule: + enabled: 0 + mode0: 0 + vectorComponentCount0: 4 + color0: + serializedVersion: 2 + minMaxState: 0 + minColor: {r: 1, g: 1, b: 1, a: 1} + maxColor: {r: 1, g: 1, b: 1, a: 1} + maxGradient: + serializedVersion: 2 + key0: {r: 1, g: 1, b: 1, a: 1} + key1: {r: 1, g: 1, b: 1, a: 1} + key2: {r: 0, g: 0, b: 0, a: 0} + key3: {r: 0, g: 0, b: 0, a: 0} + key4: {r: 0, g: 0, b: 0, a: 0} + key5: {r: 0, g: 0, b: 0, a: 0} + key6: {r: 0, g: 0, b: 0, a: 0} + key7: {r: 0, g: 0, b: 0, a: 0} + ctime0: 0 + ctime1: 65535 + ctime2: 0 + ctime3: 0 + ctime4: 0 + ctime5: 0 + ctime6: 0 + ctime7: 0 + atime0: 0 + atime1: 65535 + atime2: 0 + atime3: 0 + atime4: 0 + atime5: 0 + atime6: 0 + atime7: 0 + m_Mode: 0 + m_NumColorKeys: 2 + m_NumAlphaKeys: 2 + minGradient: + serializedVersion: 2 + key0: {r: 1, g: 1, b: 1, a: 1} + key1: {r: 1, g: 1, b: 1, a: 1} + key2: {r: 0, g: 0, b: 0, a: 0} + key3: {r: 0, g: 0, b: 0, a: 0} + key4: {r: 0, g: 0, b: 0, a: 0} + key5: {r: 0, g: 0, b: 0, a: 0} + key6: {r: 0, g: 0, b: 0, a: 0} + key7: {r: 0, g: 0, b: 0, a: 0} + ctime0: 0 + ctime1: 65535 + ctime2: 0 + ctime3: 0 + ctime4: 0 + ctime5: 0 + ctime6: 0 + ctime7: 0 + atime0: 0 + atime1: 65535 + atime2: 0 + atime3: 0 + atime4: 0 + atime5: 0 + atime6: 0 + atime7: 0 + m_Mode: 0 + m_NumColorKeys: 2 + m_NumAlphaKeys: 2 + colorLabel0: Color + vector0_0: + serializedVersion: 2 + minMaxState: 0 + scalar: 0 + minScalar: 0 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + vectorLabel0_0: X + vector0_1: + serializedVersion: 2 + minMaxState: 0 + scalar: 0 + minScalar: 0 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + vectorLabel0_1: Y + vector0_2: + serializedVersion: 2 + minMaxState: 0 + scalar: 0 + minScalar: 0 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + vectorLabel0_2: Z + vector0_3: + serializedVersion: 2 + minMaxState: 0 + scalar: 0 + minScalar: 0 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + vectorLabel0_3: W + mode1: 0 + vectorComponentCount1: 4 + color1: + serializedVersion: 2 + minMaxState: 0 + minColor: {r: 1, g: 1, b: 1, a: 1} + maxColor: {r: 1, g: 1, b: 1, a: 1} + maxGradient: + serializedVersion: 2 + key0: {r: 1, g: 1, b: 1, a: 1} + key1: {r: 1, g: 1, b: 1, a: 1} + key2: {r: 0, g: 0, b: 0, a: 0} + key3: {r: 0, g: 0, b: 0, a: 0} + key4: {r: 0, g: 0, b: 0, a: 0} + key5: {r: 0, g: 0, b: 0, a: 0} + key6: {r: 0, g: 0, b: 0, a: 0} + key7: {r: 0, g: 0, b: 0, a: 0} + ctime0: 0 + ctime1: 65535 + ctime2: 0 + ctime3: 0 + ctime4: 0 + ctime5: 0 + ctime6: 0 + ctime7: 0 + atime0: 0 + atime1: 65535 + atime2: 0 + atime3: 0 + atime4: 0 + atime5: 0 + atime6: 0 + atime7: 0 + m_Mode: 0 + m_NumColorKeys: 2 + m_NumAlphaKeys: 2 + minGradient: + serializedVersion: 2 + key0: {r: 1, g: 1, b: 1, a: 1} + key1: {r: 1, g: 1, b: 1, a: 1} + key2: {r: 0, g: 0, b: 0, a: 0} + key3: {r: 0, g: 0, b: 0, a: 0} + key4: {r: 0, g: 0, b: 0, a: 0} + key5: {r: 0, g: 0, b: 0, a: 0} + key6: {r: 0, g: 0, b: 0, a: 0} + key7: {r: 0, g: 0, b: 0, a: 0} + ctime0: 0 + ctime1: 65535 + ctime2: 0 + ctime3: 0 + ctime4: 0 + ctime5: 0 + ctime6: 0 + ctime7: 0 + atime0: 0 + atime1: 65535 + atime2: 0 + atime3: 0 + atime4: 0 + atime5: 0 + atime6: 0 + atime7: 0 + m_Mode: 0 + m_NumColorKeys: 2 + m_NumAlphaKeys: 2 + colorLabel1: Color + vector1_0: + serializedVersion: 2 + minMaxState: 0 + scalar: 0 + minScalar: 0 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + vectorLabel1_0: X + vector1_1: + serializedVersion: 2 + minMaxState: 0 + scalar: 0 + minScalar: 0 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + vectorLabel1_1: Y + vector1_2: + serializedVersion: 2 + minMaxState: 0 + scalar: 0 + minScalar: 0 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + vectorLabel1_2: Z + vector1_3: + serializedVersion: 2 + minMaxState: 0 + scalar: 0 + minScalar: 0 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + vectorLabel1_3: W diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/Kart/Bounce Effect Prefabs/BouncyGlowy.prefab.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/Kart/Bounce Effect Prefabs/BouncyGlowy.prefab.meta" new file mode 100644 index 00000000..9abd6292 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/Kart/Bounce Effect Prefabs/BouncyGlowy.prefab.meta" @@ -0,0 +1,7 @@ +fileFormatVersion: 2 +guid: 05b85e11e59634a069efe1d16952f2f7 +PrefabImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/Kart/Bounce Effect Prefabs/BouncySparkly.prefab" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/Kart/Bounce Effect Prefabs/BouncySparkly.prefab" new file mode 100644 index 00000000..ae4e6078 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/Kart/Bounce Effect Prefabs/BouncySparkly.prefab" @@ -0,0 +1,4933 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!1 &1866372463 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 1866372464} + - component: {fileID: 1866372467} + - component: {fileID: 1866372466} + - component: {fileID: 1866372465} + m_Layer: 0 + m_Name: BouncySparkly + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &1866372464 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1866372463} + m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} + m_LocalPosition: {x: 0, y: 0, z: 0} + m_LocalScale: {x: 1, y: 1, z: 1} + m_Children: [] + m_Father: {fileID: 0} + m_RootOrder: 0 + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!114 &1866372467 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1866372463} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 8490d35dc3da54707a579c5f4ee95154, type: 3} + m_Name: + m_EditorClassIdentifier: +--- !u!199 &1866372466 +ParticleSystemRenderer: + serializedVersion: 6 + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1866372463} + m_Enabled: 1 + m_CastShadows: 0 + m_ReceiveShadows: 0 + m_DynamicOccludee: 1 + m_MotionVectors: 1 + m_LightProbeUsage: 0 + m_ReflectionProbeUsage: 0 + m_RenderingLayerMask: 1 + m_RendererPriority: 0 + m_Materials: + - {fileID: 10308, guid: 0000000000000000f000000000000000, type: 0} + - {fileID: 2100000, guid: bb6ceb127383a4152a4041c9babd6912, type: 2} + m_StaticBatchInfo: + firstSubMesh: 0 + subMeshCount: 0 + m_StaticBatchRoot: {fileID: 0} + m_ProbeAnchor: {fileID: 0} + m_LightProbeVolumeOverride: {fileID: 0} + m_ScaleInLightmap: 1 + m_PreserveUVs: 0 + m_IgnoreNormalsForChartDetection: 0 + m_ImportantGI: 0 + m_StitchLightmapSeams: 0 + m_SelectedEditorRenderState: 3 + m_MinimumChartSize: 4 + m_AutoUVMaxDistance: 0.5 + m_AutoUVMaxAngle: 89 + m_LightmapParameters: {fileID: 0} + m_SortingLayerID: 0 + m_SortingLayer: 0 + m_SortingOrder: 0 + m_RenderMode: 0 + m_SortMode: 0 + m_MinParticleSize: 0 + m_MaxParticleSize: 0.5 + m_CameraVelocityScale: 0 + m_VelocityScale: 0.01 + m_LengthScale: 1 + m_SortingFudge: 0 + m_NormalDirection: 1 + m_ShadowBias: 0 + m_RenderAlignment: 0 + m_Pivot: {x: 0, y: 0, z: 0} + m_Flip: {x: 0, y: 0, z: 0} + m_UseCustomVertexStreams: 0 + m_EnableGPUInstancing: 1 + m_ApplyActiveColorSpace: 1 + m_AllowRoll: 1 + m_VertexStreams: 00010304 + m_Mesh: {fileID: 0} + m_Mesh1: {fileID: 0} + m_Mesh2: {fileID: 0} + m_Mesh3: {fileID: 0} + m_MaskInteraction: 0 +--- !u!198 &1866372465 +ParticleSystem: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1866372463} + serializedVersion: 6 + lengthInSec: 0.1 + simulationSpeed: 1 + stopAction: 0 + cullingMode: 0 + ringBufferMode: 0 + ringBufferLoopRange: {x: 0, y: 1} + looping: 0 + prewarm: 0 + playOnAwake: 0 + useUnscaledTime: 0 + autoRandomSeed: 1 + useRigidbodyForVelocity: 1 + startDelay: + serializedVersion: 2 + minMaxState: 0 + scalar: 0 + minScalar: 0 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + moveWithTransform: 1 + moveWithCustomTransform: {fileID: 0} + scalingMode: 1 + randomSeed: 0 + InitialModule: + serializedVersion: 3 + enabled: 1 + startLifetime: + serializedVersion: 2 + minMaxState: 3 + scalar: 5 + minScalar: 1 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + startSpeed: + serializedVersion: 2 + minMaxState: 0 + scalar: 6 + minScalar: 5 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + startColor: + serializedVersion: 2 + minMaxState: 0 + minColor: {r: 1, g: 1, b: 1, a: 1} + maxColor: {r: 1, g: 1, b: 1, a: 1} + maxGradient: + serializedVersion: 2 + key0: {r: 1, g: 1, b: 1, a: 1} + key1: {r: 1, g: 1, b: 1, a: 1} + key2: {r: 0, g: 0, b: 0, a: 0} + key3: {r: 0, g: 0, b: 0, a: 0} + key4: {r: 0, g: 0, b: 0, a: 0} + key5: {r: 0, g: 0, b: 0, a: 0} + key6: {r: 0, g: 0, b: 0, a: 0} + key7: {r: 0, g: 0, b: 0, a: 0} + ctime0: 0 + ctime1: 65535 + ctime2: 0 + ctime3: 0 + ctime4: 0 + ctime5: 0 + ctime6: 0 + ctime7: 0 + atime0: 0 + atime1: 65535 + atime2: 0 + atime3: 0 + atime4: 0 + atime5: 0 + atime6: 0 + atime7: 0 + m_Mode: 0 + m_NumColorKeys: 2 + m_NumAlphaKeys: 2 + minGradient: + serializedVersion: 2 + key0: {r: 1, g: 1, b: 1, a: 1} + key1: {r: 1, g: 1, b: 1, a: 1} + key2: {r: 0, g: 0, b: 0, a: 0} + key3: {r: 0, g: 0, b: 0, a: 0} + key4: {r: 0, g: 0, b: 0, a: 0} + key5: {r: 0, g: 0, b: 0, a: 0} + key6: {r: 0, g: 0, b: 0, a: 0} + key7: {r: 0, g: 0, b: 0, a: 0} + ctime0: 0 + ctime1: 65535 + ctime2: 0 + ctime3: 0 + ctime4: 0 + ctime5: 0 + ctime6: 0 + ctime7: 0 + atime0: 0 + atime1: 65535 + atime2: 0 + atime3: 0 + atime4: 0 + atime5: 0 + atime6: 0 + atime7: 0 + m_Mode: 0 + m_NumColorKeys: 2 + m_NumAlphaKeys: 2 + startSize: + serializedVersion: 2 + minMaxState: 0 + scalar: 0.3 + minScalar: 1 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + startSizeY: + serializedVersion: 2 + minMaxState: 0 + scalar: 1 + minScalar: 1 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + startSizeZ: + serializedVersion: 2 + minMaxState: 0 + scalar: 1 + minScalar: 1 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + startRotationX: + serializedVersion: 2 + minMaxState: 0 + scalar: 0 + minScalar: 0 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + startRotationY: + serializedVersion: 2 + minMaxState: 0 + scalar: 0 + minScalar: 0 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + startRotation: + serializedVersion: 2 + minMaxState: 0 + scalar: 0 + minScalar: 0 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + randomizeRotationDirection: 0 + maxNumParticles: 500 + size3D: 0 + rotation3D: 0 + gravityModifier: + serializedVersion: 2 + minMaxState: 0 + scalar: 1 + minScalar: 0 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + ShapeModule: + serializedVersion: 6 + enabled: 1 + type: 2 + angle: 25 + length: 5 + boxThickness: {x: 0, y: 0, z: 0} + radiusThickness: 0 + donutRadius: 0.2 + m_Position: {x: 0, y: 0, z: 0} + m_Rotation: {x: -90, y: 0, z: 0} + m_Scale: {x: 1, y: 1, z: 1} + placementMode: 0 + m_MeshMaterialIndex: 0 + m_MeshNormalOffset: 0 + m_MeshSpawn: + mode: 0 + spread: 0 + speed: + serializedVersion: 2 + minMaxState: 0 + scalar: 1 + minScalar: 1 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + m_Mesh: {fileID: 0} + m_MeshRenderer: {fileID: 0} + m_SkinnedMeshRenderer: {fileID: 0} + m_Sprite: {fileID: 0} + m_SpriteRenderer: {fileID: 0} + m_UseMeshMaterialIndex: 0 + m_UseMeshColors: 1 + alignToDirection: 0 + m_Texture: {fileID: 0} + m_TextureClipChannel: 3 + m_TextureClipThreshold: 0 + m_TextureUVChannel: 0 + m_TextureColorAffectsParticles: 1 + m_TextureAlphaAffectsParticles: 1 + m_TextureBilinearFiltering: 0 + randomDirectionAmount: 0 + sphericalDirectionAmount: 0 + randomPositionAmount: 0 + radius: + value: 0.0001 + mode: 0 + spread: 0 + speed: + serializedVersion: 2 + minMaxState: 0 + scalar: 1 + minScalar: 1 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + arc: + value: 360 + mode: 0 + spread: 0 + speed: + serializedVersion: 2 + minMaxState: 0 + scalar: 1 + minScalar: 1 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + EmissionModule: + enabled: 1 + serializedVersion: 4 + rateOverTime: + serializedVersion: 2 + minMaxState: 0 + scalar: 0 + minScalar: 10 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + rateOverDistance: + serializedVersion: 2 + minMaxState: 0 + scalar: 0 + minScalar: 0 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + m_BurstCount: 1 + m_Bursts: + - serializedVersion: 2 + time: 0 + countCurve: + serializedVersion: 2 + minMaxState: 0 + scalar: 30 + minScalar: 30 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0 + outWeight: 0 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0 + outWeight: 0 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0 + outWeight: 0 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0 + outWeight: 0 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + cycleCount: 1 + repeatInterval: 0.01 + probability: 1 + SizeModule: + enabled: 1 + curve: + serializedVersion: 2 + minMaxState: 1 + scalar: 1 + minScalar: 1 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0.0031967163 + inSlope: 2.87659 + outSlope: 2.87659 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 1 + - serializedVersion: 3 + time: 0.043117 + value: 1 + inSlope: 1 + outSlope: 1 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 0.11205047 + value: 0 + inSlope: -5.776096 + outSlope: -5.776096 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 0.16911767 + value: 1 + inSlope: 2.9006367 + outSlope: 2.9006367 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 0.22941303 + value: 0 + inSlope: -0.5091844 + outSlope: -0.5091844 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 0.25645503 + value: 1 + inSlope: 7.881734 + outSlope: 7.881734 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 0.31807217 + value: 0 + inSlope: -2.8199959 + outSlope: -2.8199959 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 0.37663656 + value: 1 + inSlope: -0.21298592 + outSlope: -0.21298592 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 0.42873275 + value: 0 + inSlope: -1.2948201 + outSlope: -1.2948201 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 0.46600875 + value: 1 + inSlope: 6.6090016 + outSlope: 6.6090016 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 0.5506396 + value: 0 + inSlope: -2.688586 + outSlope: -2.688586 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 0.5836917 + value: 1 + inSlope: -0.55774254 + outSlope: -0.55774254 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 0.6836586 + value: 0 + inSlope: -2.7596815 + outSlope: -2.7596815 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 0.7135786 + value: 1 + inSlope: 11.642628 + outSlope: 11.642628 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 0.7474953 + value: 0 + inSlope: -6.299142 + outSlope: -6.299142 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 0.79440314 + value: 0.85447425 + inSlope: -0.92626786 + outSlope: -0.92626786 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 0.8703572 + value: 0.22923544 + inSlope: -5.515113 + outSlope: -5.515113 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 0.93965214 + value: 0.68544936 + inSlope: -0.9366593 + outSlope: -0.9366593 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0.0031967163 + inSlope: -1.207749 + outSlope: -1.207749 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.08294125 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + y: + serializedVersion: 2 + minMaxState: 1 + scalar: 1 + minScalar: 1 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 1 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 1 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + z: + serializedVersion: 2 + minMaxState: 1 + scalar: 1 + minScalar: 1 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 1 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 1 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + separateAxes: 0 + RotationModule: + enabled: 0 + x: + serializedVersion: 2 + minMaxState: 0 + scalar: 0 + minScalar: 0 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + y: + serializedVersion: 2 + minMaxState: 0 + scalar: 0 + minScalar: 0 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + curve: + serializedVersion: 2 + minMaxState: 0 + scalar: 0.7853982 + minScalar: 0.7853982 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + separateAxes: 0 + ColorModule: + enabled: 1 + gradient: + serializedVersion: 2 + minMaxState: 1 + minColor: {r: 1, g: 1, b: 1, a: 1} + maxColor: {r: 1, g: 1, b: 1, a: 1} + maxGradient: + serializedVersion: 2 + key0: {r: 1, g: 1, b: 1, a: 1} + key1: {r: 1, g: 1, b: 1, a: 0} + key2: {r: 0, g: 0, b: 0, a: 0} + key3: {r: 0, g: 0, b: 0, a: 0} + key4: {r: 0, g: 0, b: 0, a: 0} + key5: {r: 0, g: 0, b: 0, a: 0} + key6: {r: 0, g: 0, b: 0, a: 0} + key7: {r: 0, g: 0, b: 0, a: 0} + ctime0: 0 + ctime1: 65535 + ctime2: 0 + ctime3: 0 + ctime4: 0 + ctime5: 0 + ctime6: 0 + ctime7: 0 + atime0: 0 + atime1: 65342 + atime2: 65342 + atime3: 0 + atime4: 0 + atime5: 0 + atime6: 0 + atime7: 0 + m_Mode: 0 + m_NumColorKeys: 2 + m_NumAlphaKeys: 2 + minGradient: + serializedVersion: 2 + key0: {r: 1, g: 1, b: 1, a: 1} + key1: {r: 1, g: 1, b: 1, a: 1} + key2: {r: 0, g: 0, b: 0, a: 0} + key3: {r: 0, g: 0, b: 0, a: 0} + key4: {r: 0, g: 0, b: 0, a: 0} + key5: {r: 0, g: 0, b: 0, a: 0} + key6: {r: 0, g: 0, b: 0, a: 0} + key7: {r: 0, g: 0, b: 0, a: 0} + ctime0: 0 + ctime1: 65535 + ctime2: 0 + ctime3: 0 + ctime4: 0 + ctime5: 0 + ctime6: 0 + ctime7: 0 + atime0: 0 + atime1: 65535 + atime2: 0 + atime3: 0 + atime4: 0 + atime5: 0 + atime6: 0 + atime7: 0 + m_Mode: 0 + m_NumColorKeys: 2 + m_NumAlphaKeys: 2 + UVModule: + enabled: 0 + mode: 0 + timeMode: 0 + fps: 30 + frameOverTime: + serializedVersion: 2 + minMaxState: 1 + scalar: 0.9999 + minScalar: 0.9999 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 1 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 1 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + startFrame: + serializedVersion: 2 + minMaxState: 0 + scalar: 0 + minScalar: 0 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + speedRange: {x: 0, y: 1} + tilesX: 1 + tilesY: 1 + animationType: 0 + rowIndex: 0 + cycles: 1 + uvChannelMask: -1 + randomRow: 1 + sprites: + - sprite: {fileID: 0} + flipU: 0 + flipV: 0 + VelocityModule: + enabled: 0 + x: + serializedVersion: 2 + minMaxState: 0 + scalar: 0 + minScalar: 0 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + y: + serializedVersion: 2 + minMaxState: 0 + scalar: 0 + minScalar: 0 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + z: + serializedVersion: 2 + minMaxState: 0 + scalar: 0 + minScalar: 0 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + orbitalX: + serializedVersion: 2 + minMaxState: 0 + scalar: 0 + minScalar: 0 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + orbitalY: + serializedVersion: 2 + minMaxState: 0 + scalar: 0 + minScalar: 0 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + orbitalZ: + serializedVersion: 2 + minMaxState: 0 + scalar: 0 + minScalar: 0 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + orbitalOffsetX: + serializedVersion: 2 + minMaxState: 0 + scalar: 0 + minScalar: 0 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + orbitalOffsetY: + serializedVersion: 2 + minMaxState: 0 + scalar: 0 + minScalar: 0 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + orbitalOffsetZ: + serializedVersion: 2 + minMaxState: 0 + scalar: 0 + minScalar: 0 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + radial: + serializedVersion: 2 + minMaxState: 0 + scalar: 0 + minScalar: 0 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + speedModifier: + serializedVersion: 2 + minMaxState: 0 + scalar: 1 + minScalar: 1 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + inWorldSpace: 0 + InheritVelocityModule: + enabled: 0 + m_Mode: 0 + m_Curve: + serializedVersion: 2 + minMaxState: 0 + scalar: 0 + minScalar: 0 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + ForceModule: + enabled: 0 + x: + serializedVersion: 2 + minMaxState: 0 + scalar: 0 + minScalar: 0 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + y: + serializedVersion: 2 + minMaxState: 0 + scalar: 0 + minScalar: 0 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + z: + serializedVersion: 2 + minMaxState: 0 + scalar: 0 + minScalar: 0 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + inWorldSpace: 0 + randomizePerFrame: 0 + ExternalForcesModule: + enabled: 0 + multiplier: 1 + influenceFilter: 0 + influenceMask: + serializedVersion: 2 + m_Bits: 4294967295 + influenceList: [] + ClampVelocityModule: + enabled: 1 + x: + serializedVersion: 2 + minMaxState: 0 + scalar: 1 + minScalar: 1 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + y: + serializedVersion: 2 + minMaxState: 0 + scalar: 1 + minScalar: 1 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + z: + serializedVersion: 2 + minMaxState: 0 + scalar: 1 + minScalar: 1 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + magnitude: + serializedVersion: 2 + minMaxState: 0 + scalar: 0 + minScalar: 1 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + separateAxis: 0 + inWorldSpace: 0 + multiplyDragByParticleSize: 1 + multiplyDragByParticleVelocity: 1 + dampen: 0.01 + drag: + serializedVersion: 2 + minMaxState: 0 + scalar: 0 + minScalar: 0 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + NoiseModule: + enabled: 0 + strength: + serializedVersion: 2 + minMaxState: 0 + scalar: 1 + minScalar: 1 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + strengthY: + serializedVersion: 2 + minMaxState: 0 + scalar: 1 + minScalar: 1 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + strengthZ: + serializedVersion: 2 + minMaxState: 0 + scalar: 1 + minScalar: 1 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + separateAxes: 0 + frequency: 0.5 + damping: 1 + octaves: 1 + octaveMultiplier: 0.5 + octaveScale: 2 + quality: 2 + scrollSpeed: + serializedVersion: 2 + minMaxState: 0 + scalar: 0 + minScalar: 0 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + remap: + serializedVersion: 2 + minMaxState: 1 + scalar: 1 + minScalar: 1 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 1 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 1 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + remapY: + serializedVersion: 2 + minMaxState: 1 + scalar: 1 + minScalar: 1 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 1 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 1 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + remapZ: + serializedVersion: 2 + minMaxState: 1 + scalar: 1 + minScalar: 1 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 1 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 1 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + remapEnabled: 0 + positionAmount: + serializedVersion: 2 + minMaxState: 0 + scalar: 1 + minScalar: 1 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + rotationAmount: + serializedVersion: 2 + minMaxState: 0 + scalar: 0 + minScalar: 0 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + sizeAmount: + serializedVersion: 2 + minMaxState: 0 + scalar: 0 + minScalar: 0 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + SizeBySpeedModule: + enabled: 0 + curve: + serializedVersion: 2 + minMaxState: 1 + scalar: 1 + minScalar: 1 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 1 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 1 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + y: + serializedVersion: 2 + minMaxState: 1 + scalar: 1 + minScalar: 1 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 1 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 1 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + z: + serializedVersion: 2 + minMaxState: 1 + scalar: 1 + minScalar: 1 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 1 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 1 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + range: {x: 0, y: 1} + separateAxes: 0 + RotationBySpeedModule: + enabled: 0 + x: + serializedVersion: 2 + minMaxState: 0 + scalar: 0 + minScalar: 0 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + y: + serializedVersion: 2 + minMaxState: 0 + scalar: 0 + minScalar: 0 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + curve: + serializedVersion: 2 + minMaxState: 0 + scalar: 0.7853982 + minScalar: 0.7853982 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + separateAxes: 0 + range: {x: 0, y: 1} + ColorBySpeedModule: + enabled: 0 + gradient: + serializedVersion: 2 + minMaxState: 1 + minColor: {r: 1, g: 1, b: 1, a: 1} + maxColor: {r: 1, g: 1, b: 1, a: 1} + maxGradient: + serializedVersion: 2 + key0: {r: 1, g: 1, b: 1, a: 1} + key1: {r: 1, g: 1, b: 1, a: 1} + key2: {r: 0, g: 0, b: 0, a: 0} + key3: {r: 0, g: 0, b: 0, a: 0} + key4: {r: 0, g: 0, b: 0, a: 0} + key5: {r: 0, g: 0, b: 0, a: 0} + key6: {r: 0, g: 0, b: 0, a: 0} + key7: {r: 0, g: 0, b: 0, a: 0} + ctime0: 0 + ctime1: 65535 + ctime2: 0 + ctime3: 0 + ctime4: 0 + ctime5: 0 + ctime6: 0 + ctime7: 0 + atime0: 0 + atime1: 65535 + atime2: 0 + atime3: 0 + atime4: 0 + atime5: 0 + atime6: 0 + atime7: 0 + m_Mode: 0 + m_NumColorKeys: 2 + m_NumAlphaKeys: 2 + minGradient: + serializedVersion: 2 + key0: {r: 1, g: 1, b: 1, a: 1} + key1: {r: 1, g: 1, b: 1, a: 1} + key2: {r: 0, g: 0, b: 0, a: 0} + key3: {r: 0, g: 0, b: 0, a: 0} + key4: {r: 0, g: 0, b: 0, a: 0} + key5: {r: 0, g: 0, b: 0, a: 0} + key6: {r: 0, g: 0, b: 0, a: 0} + key7: {r: 0, g: 0, b: 0, a: 0} + ctime0: 0 + ctime1: 65535 + ctime2: 0 + ctime3: 0 + ctime4: 0 + ctime5: 0 + ctime6: 0 + ctime7: 0 + atime0: 0 + atime1: 65535 + atime2: 0 + atime3: 0 + atime4: 0 + atime5: 0 + atime6: 0 + atime7: 0 + m_Mode: 0 + m_NumColorKeys: 2 + m_NumAlphaKeys: 2 + range: {x: 0, y: 1} + CollisionModule: + enabled: 1 + serializedVersion: 3 + type: 1 + collisionMode: 0 + colliderForce: 0 + multiplyColliderForceByParticleSize: 0 + multiplyColliderForceByParticleSpeed: 0 + multiplyColliderForceByCollisionAngle: 1 + plane0: {fileID: 0} + plane1: {fileID: 0} + plane2: {fileID: 0} + plane3: {fileID: 0} + plane4: {fileID: 0} + plane5: {fileID: 0} + m_Dampen: + serializedVersion: 2 + minMaxState: 3 + scalar: 0.1 + minScalar: 0 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + m_Bounce: + serializedVersion: 2 + minMaxState: 3 + scalar: 1 + minScalar: 0.5 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + m_EnergyLossOnCollision: + serializedVersion: 2 + minMaxState: 0 + scalar: 0 + minScalar: 0 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minKillSpeed: 0.01 + maxKillSpeed: 10000 + radiusScale: 1 + collidesWith: + serializedVersion: 2 + m_Bits: 4294967295 + maxCollisionShapes: 256 + quality: 1 + voxelSize: 0.5 + collisionMessages: 0 + collidesWithDynamic: 1 + interiorCollisions: 0 + TriggerModule: + enabled: 0 + collisionShape0: {fileID: 0} + collisionShape1: {fileID: 0} + collisionShape2: {fileID: 0} + collisionShape3: {fileID: 0} + collisionShape4: {fileID: 0} + collisionShape5: {fileID: 0} + inside: 1 + outside: 0 + enter: 0 + exit: 0 + radiusScale: 1 + SubModule: + serializedVersion: 2 + enabled: 0 + subEmitters: + - serializedVersion: 3 + emitter: {fileID: 0} + type: 0 + properties: 0 + emitProbability: 1 + LightsModule: + enabled: 0 + ratio: 0 + light: {fileID: 0} + randomDistribution: 1 + color: 1 + range: 1 + intensity: 1 + rangeCurve: + serializedVersion: 2 + minMaxState: 0 + scalar: 1 + minScalar: 1 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + intensityCurve: + serializedVersion: 2 + minMaxState: 0 + scalar: 1 + minScalar: 1 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + maxLights: 20 + TrailModule: + enabled: 0 + mode: 0 + ratio: 1 + lifetime: + serializedVersion: 2 + minMaxState: 0 + scalar: 1 + minScalar: 1 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minVertexDistance: 0.2 + textureMode: 0 + ribbonCount: 1 + shadowBias: 0.5 + worldSpace: 0 + dieWithParticles: 1 + sizeAffectsWidth: 1 + sizeAffectsLifetime: 0 + inheritParticleColor: 1 + generateLightingData: 0 + splitSubEmitterRibbons: 0 + attachRibbonsToTransform: 0 + colorOverLifetime: + serializedVersion: 2 + minMaxState: 1 + minColor: {r: 1, g: 1, b: 1, a: 1} + maxColor: {r: 1, g: 1, b: 1, a: 1} + maxGradient: + serializedVersion: 2 + key0: {r: 1, g: 1, b: 1, a: 1} + key1: {r: 1, g: 1, b: 1, a: 1} + key2: {r: 0, g: 0, b: 0, a: 0} + key3: {r: 0, g: 0, b: 0, a: 0} + key4: {r: 0, g: 0, b: 0, a: 0} + key5: {r: 0, g: 0, b: 0, a: 0} + key6: {r: 0, g: 0, b: 0, a: 0} + key7: {r: 0, g: 0, b: 0, a: 0} + ctime0: 0 + ctime1: 65535 + ctime2: 0 + ctime3: 0 + ctime4: 0 + ctime5: 0 + ctime6: 0 + ctime7: 0 + atime0: 0 + atime1: 65535 + atime2: 65535 + atime3: 0 + atime4: 0 + atime5: 0 + atime6: 0 + atime7: 0 + m_Mode: 0 + m_NumColorKeys: 2 + m_NumAlphaKeys: 2 + minGradient: + serializedVersion: 2 + key0: {r: 1, g: 1, b: 1, a: 1} + key1: {r: 1, g: 1, b: 1, a: 1} + key2: {r: 0, g: 0, b: 0, a: 0} + key3: {r: 0, g: 0, b: 0, a: 0} + key4: {r: 0, g: 0, b: 0, a: 0} + key5: {r: 0, g: 0, b: 0, a: 0} + key6: {r: 0, g: 0, b: 0, a: 0} + key7: {r: 0, g: 0, b: 0, a: 0} + ctime0: 0 + ctime1: 65535 + ctime2: 0 + ctime3: 0 + ctime4: 0 + ctime5: 0 + ctime6: 0 + ctime7: 0 + atime0: 0 + atime1: 65535 + atime2: 0 + atime3: 0 + atime4: 0 + atime5: 0 + atime6: 0 + atime7: 0 + m_Mode: 0 + m_NumColorKeys: 2 + m_NumAlphaKeys: 2 + widthOverTrail: + serializedVersion: 2 + minMaxState: 1 + scalar: 1 + minScalar: 1 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 28.359617 + outSlope: 28.359617 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 1 + - serializedVersion: 3 + time: 0.06278369 + value: 0.9960582 + inSlope: -0.12556736 + outSlope: -0.12556736 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: -2 + outSlope: -2 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + colorOverTrail: + serializedVersion: 2 + minMaxState: 1 + minColor: {r: 1, g: 1, b: 1, a: 1} + maxColor: {r: 1, g: 1, b: 1, a: 1} + maxGradient: + serializedVersion: 2 + key0: {r: 1, g: 1, b: 1, a: 0} + key1: {r: 1, g: 1, b: 1, a: 0.89705884} + key2: {r: 0, g: 0, b: 0, a: 0} + key3: {r: 0, g: 0, b: 0, a: 0} + key4: {r: 0, g: 0, b: 0, a: 0} + key5: {r: 0, g: 0, b: 0, a: 0} + key6: {r: 0, g: 0, b: 0, a: 0} + key7: {r: 0, g: 0, b: 0, a: 0} + ctime0: 0 + ctime1: 65535 + ctime2: 0 + ctime3: 0 + ctime4: 0 + ctime5: 0 + ctime6: 0 + ctime7: 0 + atime0: 0 + atime1: 6746 + atime2: 65535 + atime3: 0 + atime4: 0 + atime5: 0 + atime6: 0 + atime7: 0 + m_Mode: 0 + m_NumColorKeys: 2 + m_NumAlphaKeys: 3 + minGradient: + serializedVersion: 2 + key0: {r: 1, g: 1, b: 1, a: 1} + key1: {r: 1, g: 1, b: 1, a: 1} + key2: {r: 0, g: 0, b: 0, a: 0} + key3: {r: 0, g: 0, b: 0, a: 0} + key4: {r: 0, g: 0, b: 0, a: 0} + key5: {r: 0, g: 0, b: 0, a: 0} + key6: {r: 0, g: 0, b: 0, a: 0} + key7: {r: 0, g: 0, b: 0, a: 0} + ctime0: 0 + ctime1: 65535 + ctime2: 0 + ctime3: 0 + ctime4: 0 + ctime5: 0 + ctime6: 0 + ctime7: 0 + atime0: 0 + atime1: 65535 + atime2: 0 + atime3: 0 + atime4: 0 + atime5: 0 + atime6: 0 + atime7: 0 + m_Mode: 0 + m_NumColorKeys: 2 + m_NumAlphaKeys: 2 + CustomDataModule: + enabled: 0 + mode0: 0 + vectorComponentCount0: 4 + color0: + serializedVersion: 2 + minMaxState: 0 + minColor: {r: 1, g: 1, b: 1, a: 1} + maxColor: {r: 1, g: 1, b: 1, a: 1} + maxGradient: + serializedVersion: 2 + key0: {r: 1, g: 1, b: 1, a: 1} + key1: {r: 1, g: 1, b: 1, a: 1} + key2: {r: 0, g: 0, b: 0, a: 0} + key3: {r: 0, g: 0, b: 0, a: 0} + key4: {r: 0, g: 0, b: 0, a: 0} + key5: {r: 0, g: 0, b: 0, a: 0} + key6: {r: 0, g: 0, b: 0, a: 0} + key7: {r: 0, g: 0, b: 0, a: 0} + ctime0: 0 + ctime1: 65535 + ctime2: 0 + ctime3: 0 + ctime4: 0 + ctime5: 0 + ctime6: 0 + ctime7: 0 + atime0: 0 + atime1: 65535 + atime2: 0 + atime3: 0 + atime4: 0 + atime5: 0 + atime6: 0 + atime7: 0 + m_Mode: 0 + m_NumColorKeys: 2 + m_NumAlphaKeys: 2 + minGradient: + serializedVersion: 2 + key0: {r: 1, g: 1, b: 1, a: 1} + key1: {r: 1, g: 1, b: 1, a: 1} + key2: {r: 0, g: 0, b: 0, a: 0} + key3: {r: 0, g: 0, b: 0, a: 0} + key4: {r: 0, g: 0, b: 0, a: 0} + key5: {r: 0, g: 0, b: 0, a: 0} + key6: {r: 0, g: 0, b: 0, a: 0} + key7: {r: 0, g: 0, b: 0, a: 0} + ctime0: 0 + ctime1: 65535 + ctime2: 0 + ctime3: 0 + ctime4: 0 + ctime5: 0 + ctime6: 0 + ctime7: 0 + atime0: 0 + atime1: 65535 + atime2: 0 + atime3: 0 + atime4: 0 + atime5: 0 + atime6: 0 + atime7: 0 + m_Mode: 0 + m_NumColorKeys: 2 + m_NumAlphaKeys: 2 + colorLabel0: Color + vector0_0: + serializedVersion: 2 + minMaxState: 0 + scalar: 0 + minScalar: 0 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + vectorLabel0_0: X + vector0_1: + serializedVersion: 2 + minMaxState: 0 + scalar: 0 + minScalar: 0 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + vectorLabel0_1: Y + vector0_2: + serializedVersion: 2 + minMaxState: 0 + scalar: 0 + minScalar: 0 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + vectorLabel0_2: Z + vector0_3: + serializedVersion: 2 + minMaxState: 0 + scalar: 0 + minScalar: 0 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + vectorLabel0_3: W + mode1: 0 + vectorComponentCount1: 4 + color1: + serializedVersion: 2 + minMaxState: 0 + minColor: {r: 1, g: 1, b: 1, a: 1} + maxColor: {r: 1, g: 1, b: 1, a: 1} + maxGradient: + serializedVersion: 2 + key0: {r: 1, g: 1, b: 1, a: 1} + key1: {r: 1, g: 1, b: 1, a: 1} + key2: {r: 0, g: 0, b: 0, a: 0} + key3: {r: 0, g: 0, b: 0, a: 0} + key4: {r: 0, g: 0, b: 0, a: 0} + key5: {r: 0, g: 0, b: 0, a: 0} + key6: {r: 0, g: 0, b: 0, a: 0} + key7: {r: 0, g: 0, b: 0, a: 0} + ctime0: 0 + ctime1: 65535 + ctime2: 0 + ctime3: 0 + ctime4: 0 + ctime5: 0 + ctime6: 0 + ctime7: 0 + atime0: 0 + atime1: 65535 + atime2: 0 + atime3: 0 + atime4: 0 + atime5: 0 + atime6: 0 + atime7: 0 + m_Mode: 0 + m_NumColorKeys: 2 + m_NumAlphaKeys: 2 + minGradient: + serializedVersion: 2 + key0: {r: 1, g: 1, b: 1, a: 1} + key1: {r: 1, g: 1, b: 1, a: 1} + key2: {r: 0, g: 0, b: 0, a: 0} + key3: {r: 0, g: 0, b: 0, a: 0} + key4: {r: 0, g: 0, b: 0, a: 0} + key5: {r: 0, g: 0, b: 0, a: 0} + key6: {r: 0, g: 0, b: 0, a: 0} + key7: {r: 0, g: 0, b: 0, a: 0} + ctime0: 0 + ctime1: 65535 + ctime2: 0 + ctime3: 0 + ctime4: 0 + ctime5: 0 + ctime6: 0 + ctime7: 0 + atime0: 0 + atime1: 65535 + atime2: 0 + atime3: 0 + atime4: 0 + atime5: 0 + atime6: 0 + atime7: 0 + m_Mode: 0 + m_NumColorKeys: 2 + m_NumAlphaKeys: 2 + colorLabel1: Color + vector1_0: + serializedVersion: 2 + minMaxState: 0 + scalar: 0 + minScalar: 0 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + vectorLabel1_0: X + vector1_1: + serializedVersion: 2 + minMaxState: 0 + scalar: 0 + minScalar: 0 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + vectorLabel1_1: Y + vector1_2: + serializedVersion: 2 + minMaxState: 0 + scalar: 0 + minScalar: 0 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + vectorLabel1_2: Z + vector1_3: + serializedVersion: 2 + minMaxState: 0 + scalar: 0 + minScalar: 0 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + vectorLabel1_3: W diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/Kart/Bounce Effect Prefabs/BouncySparkly.prefab.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/Kart/Bounce Effect Prefabs/BouncySparkly.prefab.meta" new file mode 100644 index 00000000..ccdb463b --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/Kart/Bounce Effect Prefabs/BouncySparkly.prefab.meta" @@ -0,0 +1,7 @@ +fileFormatVersion: 2 +guid: 281b409a5891b40eca60ca1e0fef11e5 +PrefabImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/Kart/Custom Materials.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/Kart/Custom Materials.meta" new file mode 100644 index 00000000..240f143b --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/Kart/Custom Materials.meta" @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 0169809cc89622646b6d409e4ef61784 +folderAsset: yes +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/Kart/Custom Materials/Basic Black.mat" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/Kart/Custom Materials/Basic Black.mat" new file mode 100644 index 00000000..ee83945d --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/Kart/Custom Materials/Basic Black.mat" @@ -0,0 +1,77 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!21 &2100000 +Material: + serializedVersion: 6 + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_Name: Basic Black + m_Shader: {fileID: 46, guid: 0000000000000000f000000000000000, type: 0} + m_ShaderKeywords: + m_LightmapFlags: 4 + m_EnableInstancingVariants: 0 + m_DoubleSidedGI: 0 + m_CustomRenderQueue: -1 + stringTagMap: {} + disabledShaderPasses: [] + m_SavedProperties: + serializedVersion: 3 + m_TexEnvs: + - _BumpMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _DetailAlbedoMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _DetailMask: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _DetailNormalMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _EmissionMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _MainTex: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _MetallicGlossMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _OcclusionMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _ParallaxMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + m_Floats: + - _BumpScale: 1 + - _Cutoff: 0.5 + - _DetailNormalMapScale: 1 + - _DstBlend: 0 + - _GlossMapScale: 1 + - _Glossiness: 0.2 + - _GlossyReflections: 1 + - _Metallic: 0 + - _Mode: 0 + - _OcclusionStrength: 1 + - _Parallax: 0.02 + - _SmoothnessTextureChannel: 0 + - _SpecularHighlights: 1 + - _SrcBlend: 1 + - _UVSec: 0 + - _ZWrite: 1 + m_Colors: + - _Color: {r: 0.14150941, g: 0.14150941, b: 0.14150941, a: 1} + - _EmissionColor: {r: 0, g: 0, b: 0, a: 1} diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/Kart/Custom Materials/Basic Black.mat.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/Kart/Custom Materials/Basic Black.mat.meta" new file mode 100644 index 00000000..26f627b5 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/Kart/Custom Materials/Basic Black.mat.meta" @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: dc263f8d5174d45c0a98e6489eca16c5 +NativeFormatImporter: + externalObjects: {} + mainObjectFileID: 2100000 + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/Kart/Custom Materials/Basic Blue.mat" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/Kart/Custom Materials/Basic Blue.mat" new file mode 100644 index 00000000..f3a14520 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/Kart/Custom Materials/Basic Blue.mat" @@ -0,0 +1,77 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!21 &2100000 +Material: + serializedVersion: 6 + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_Name: Basic Blue + m_Shader: {fileID: 46, guid: 0000000000000000f000000000000000, type: 0} + m_ShaderKeywords: + m_LightmapFlags: 4 + m_EnableInstancingVariants: 0 + m_DoubleSidedGI: 0 + m_CustomRenderQueue: -1 + stringTagMap: {} + disabledShaderPasses: [] + m_SavedProperties: + serializedVersion: 3 + m_TexEnvs: + - _BumpMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _DetailAlbedoMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _DetailMask: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _DetailNormalMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _EmissionMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _MainTex: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _MetallicGlossMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _OcclusionMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _ParallaxMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + m_Floats: + - _BumpScale: 1 + - _Cutoff: 0.5 + - _DetailNormalMapScale: 1 + - _DstBlend: 0 + - _GlossMapScale: 1 + - _Glossiness: 0.2 + - _GlossyReflections: 1 + - _Metallic: 0 + - _Mode: 0 + - _OcclusionStrength: 1 + - _Parallax: 0.02 + - _SmoothnessTextureChannel: 0 + - _SpecularHighlights: 1 + - _SrcBlend: 1 + - _UVSec: 0 + - _ZWrite: 1 + m_Colors: + - _Color: {r: 0.3254717, g: 0.55135024, b: 1, a: 1} + - _EmissionColor: {r: 0, g: 0, b: 0, a: 1} diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/Kart/Custom Materials/Basic Blue.mat.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/Kart/Custom Materials/Basic Blue.mat.meta" new file mode 100644 index 00000000..0e3e61b6 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/Kart/Custom Materials/Basic Blue.mat.meta" @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: de7902ac5f1ca46b9894eae94bfe5e58 +NativeFormatImporter: + externalObjects: {} + mainObjectFileID: 2100000 + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/Kart/Custom Materials/Basic Green.mat" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/Kart/Custom Materials/Basic Green.mat" new file mode 100644 index 00000000..3ffe92ac --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/Kart/Custom Materials/Basic Green.mat" @@ -0,0 +1,77 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!21 &2100000 +Material: + serializedVersion: 6 + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_Name: Basic Green + m_Shader: {fileID: 46, guid: 0000000000000000f000000000000000, type: 0} + m_ShaderKeywords: + m_LightmapFlags: 4 + m_EnableInstancingVariants: 0 + m_DoubleSidedGI: 0 + m_CustomRenderQueue: -1 + stringTagMap: {} + disabledShaderPasses: [] + m_SavedProperties: + serializedVersion: 3 + m_TexEnvs: + - _BumpMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _DetailAlbedoMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _DetailMask: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _DetailNormalMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _EmissionMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _MainTex: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _MetallicGlossMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _OcclusionMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _ParallaxMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + m_Floats: + - _BumpScale: 1 + - _Cutoff: 0.5 + - _DetailNormalMapScale: 1 + - _DstBlend: 0 + - _GlossMapScale: 1 + - _Glossiness: 0.2 + - _GlossyReflections: 1 + - _Metallic: 0 + - _Mode: 0 + - _OcclusionStrength: 1 + - _Parallax: 0.02 + - _SmoothnessTextureChannel: 0 + - _SpecularHighlights: 1 + - _SrcBlend: 1 + - _UVSec: 0 + - _ZWrite: 1 + m_Colors: + - _Color: {r: 0.8810191, g: 1, b: 0.504717, a: 1} + - _EmissionColor: {r: 0, g: 0, b: 0, a: 1} diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/Kart/Custom Materials/Basic Green.mat.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/Kart/Custom Materials/Basic Green.mat.meta" new file mode 100644 index 00000000..c80e5657 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/Kart/Custom Materials/Basic Green.mat.meta" @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 85a5f987437cc4794b97b153a23d7ccb +NativeFormatImporter: + externalObjects: {} + mainObjectFileID: 2100000 + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/Kart/Custom Materials/Basic Red.mat" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/Kart/Custom Materials/Basic Red.mat" new file mode 100644 index 00000000..ee169f9b --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/Kart/Custom Materials/Basic Red.mat" @@ -0,0 +1,77 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!21 &2100000 +Material: + serializedVersion: 6 + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_Name: Basic Red + m_Shader: {fileID: 46, guid: 0000000000000000f000000000000000, type: 0} + m_ShaderKeywords: + m_LightmapFlags: 4 + m_EnableInstancingVariants: 0 + m_DoubleSidedGI: 0 + m_CustomRenderQueue: -1 + stringTagMap: {} + disabledShaderPasses: [] + m_SavedProperties: + serializedVersion: 3 + m_TexEnvs: + - _BumpMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _DetailAlbedoMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _DetailMask: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _DetailNormalMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _EmissionMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _MainTex: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _MetallicGlossMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _OcclusionMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _ParallaxMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + m_Floats: + - _BumpScale: 1 + - _Cutoff: 0.5 + - _DetailNormalMapScale: 1 + - _DstBlend: 0 + - _GlossMapScale: 1 + - _Glossiness: 0.2 + - _GlossyReflections: 1 + - _Metallic: 0 + - _Mode: 0 + - _OcclusionStrength: 1 + - _Parallax: 0.02 + - _SmoothnessTextureChannel: 0 + - _SpecularHighlights: 1 + - _SrcBlend: 1 + - _UVSec: 0 + - _ZWrite: 1 + m_Colors: + - _Color: {r: 1, g: 0.19339621, b: 0.19339621, a: 1} + - _EmissionColor: {r: 0, g: 0, b: 0, a: 1} diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/Kart/Custom Materials/Basic Red.mat.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/Kart/Custom Materials/Basic Red.mat.meta" new file mode 100644 index 00000000..0cf50c60 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/Kart/Custom Materials/Basic Red.mat.meta" @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 6487fdefd669d4dbc91709a177cd4b93 +NativeFormatImporter: + externalObjects: {} + mainObjectFileID: 2100000 + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/Kart/Custom Materials/Basic White.mat" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/Kart/Custom Materials/Basic White.mat" new file mode 100644 index 00000000..bb6d432c --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/Kart/Custom Materials/Basic White.mat" @@ -0,0 +1,77 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!21 &2100000 +Material: + serializedVersion: 6 + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_Name: Basic White + m_Shader: {fileID: 46, guid: 0000000000000000f000000000000000, type: 0} + m_ShaderKeywords: + m_LightmapFlags: 4 + m_EnableInstancingVariants: 0 + m_DoubleSidedGI: 0 + m_CustomRenderQueue: -1 + stringTagMap: {} + disabledShaderPasses: [] + m_SavedProperties: + serializedVersion: 3 + m_TexEnvs: + - _BumpMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _DetailAlbedoMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _DetailMask: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _DetailNormalMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _EmissionMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _MainTex: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _MetallicGlossMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _OcclusionMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _ParallaxMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + m_Floats: + - _BumpScale: 1 + - _Cutoff: 0.5 + - _DetailNormalMapScale: 1 + - _DstBlend: 0 + - _GlossMapScale: 1 + - _Glossiness: 0.2 + - _GlossyReflections: 1 + - _Metallic: 0 + - _Mode: 0 + - _OcclusionStrength: 1 + - _Parallax: 0.02 + - _SmoothnessTextureChannel: 0 + - _SpecularHighlights: 1 + - _SrcBlend: 1 + - _UVSec: 0 + - _ZWrite: 1 + m_Colors: + - _Color: {r: 0.9528302, g: 0.9528302, b: 0.9528302, a: 1} + - _EmissionColor: {r: 0, g: 0, b: 0, a: 1} diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/Kart/Custom Materials/Basic White.mat.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/Kart/Custom Materials/Basic White.mat.meta" new file mode 100644 index 00000000..22f1f41d --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/Kart/Custom Materials/Basic White.mat.meta" @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 80aca137a2109463fb6c86f09a521374 +NativeFormatImporter: + externalObjects: {} + mainObjectFileID: 2100000 + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/Kart/Custom Materials/Glass Clear.mat" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/Kart/Custom Materials/Glass Clear.mat" new file mode 100644 index 00000000..a885c5c0 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/Kart/Custom Materials/Glass Clear.mat" @@ -0,0 +1,78 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!21 &2100000 +Material: + serializedVersion: 6 + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_Name: Glass Clear + m_Shader: {fileID: 46, guid: 0000000000000000f000000000000000, type: 0} + m_ShaderKeywords: _ALPHAPREMULTIPLY_ON + m_LightmapFlags: 4 + m_EnableInstancingVariants: 0 + m_DoubleSidedGI: 0 + m_CustomRenderQueue: 3000 + stringTagMap: + RenderType: Transparent + disabledShaderPasses: [] + m_SavedProperties: + serializedVersion: 3 + m_TexEnvs: + - _BumpMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _DetailAlbedoMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _DetailMask: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _DetailNormalMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _EmissionMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _MainTex: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _MetallicGlossMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _OcclusionMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _ParallaxMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + m_Floats: + - _BumpScale: 1 + - _Cutoff: 0.5 + - _DetailNormalMapScale: 1 + - _DstBlend: 10 + - _GlossMapScale: 1 + - _Glossiness: 0.75 + - _GlossyReflections: 1 + - _Metallic: 0 + - _Mode: 3 + - _OcclusionStrength: 1 + - _Parallax: 0.02 + - _SmoothnessTextureChannel: 0 + - _SpecularHighlights: 1 + - _SrcBlend: 1 + - _UVSec: 0 + - _ZWrite: 0 + m_Colors: + - _Color: {r: 1, g: 1, b: 1, a: 0.54509807} + - _EmissionColor: {r: 0.007843138, g: 0.007843138, b: 0.007843138, a: 1} diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/Kart/Custom Materials/Glass Clear.mat.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/Kart/Custom Materials/Glass Clear.mat.meta" new file mode 100644 index 00000000..6803a472 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/Kart/Custom Materials/Glass Clear.mat.meta" @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 0a7aee634f0a04f16a55b768e33e5040 +NativeFormatImporter: + externalObjects: {} + mainObjectFileID: 2100000 + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/Kart/Custom Materials/Glass Dark.mat" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/Kart/Custom Materials/Glass Dark.mat" new file mode 100644 index 00000000..c788f9c3 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/Kart/Custom Materials/Glass Dark.mat" @@ -0,0 +1,78 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!21 &2100000 +Material: + serializedVersion: 6 + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_Name: Glass Dark + m_Shader: {fileID: 46, guid: 0000000000000000f000000000000000, type: 0} + m_ShaderKeywords: _ALPHAPREMULTIPLY_ON + m_LightmapFlags: 4 + m_EnableInstancingVariants: 0 + m_DoubleSidedGI: 0 + m_CustomRenderQueue: 3000 + stringTagMap: + RenderType: Transparent + disabledShaderPasses: [] + m_SavedProperties: + serializedVersion: 3 + m_TexEnvs: + - _BumpMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _DetailAlbedoMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _DetailMask: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _DetailNormalMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _EmissionMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _MainTex: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _MetallicGlossMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _OcclusionMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _ParallaxMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + m_Floats: + - _BumpScale: 1 + - _Cutoff: 0.5 + - _DetailNormalMapScale: 1 + - _DstBlend: 10 + - _GlossMapScale: 1 + - _Glossiness: 0.8 + - _GlossyReflections: 1 + - _Metallic: 0.41 + - _Mode: 3 + - _OcclusionStrength: 1 + - _Parallax: 0.02 + - _SmoothnessTextureChannel: 0 + - _SpecularHighlights: 1 + - _SrcBlend: 1 + - _UVSec: 0 + - _ZWrite: 0 + m_Colors: + - _Color: {r: 1, g: 1, b: 1, a: 0} + - _EmissionColor: {r: 0.007843138, g: 0.007843138, b: 0.007843138, a: 1} diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/Kart/Custom Materials/Glass Dark.mat.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/Kart/Custom Materials/Glass Dark.mat.meta" new file mode 100644 index 00000000..64fd6dcc --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/Kart/Custom Materials/Glass Dark.mat.meta" @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 73d3b987427b7456eb9fced2cf259a38 +NativeFormatImporter: + externalObjects: {} + mainObjectFileID: 2100000 + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/Kart/Custom Materials/Metal Copper.mat" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/Kart/Custom Materials/Metal Copper.mat" new file mode 100644 index 00000000..836a2182 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/Kart/Custom Materials/Metal Copper.mat" @@ -0,0 +1,77 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!21 &2100000 +Material: + serializedVersion: 6 + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_Name: Metal Copper + m_Shader: {fileID: 46, guid: 0000000000000000f000000000000000, type: 0} + m_ShaderKeywords: _EMISSION + m_LightmapFlags: 0 + m_EnableInstancingVariants: 0 + m_DoubleSidedGI: 0 + m_CustomRenderQueue: -1 + stringTagMap: {} + disabledShaderPasses: [] + m_SavedProperties: + serializedVersion: 3 + m_TexEnvs: + - _BumpMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _DetailAlbedoMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _DetailMask: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _DetailNormalMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _EmissionMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _MainTex: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _MetallicGlossMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _OcclusionMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _ParallaxMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + m_Floats: + - _BumpScale: 1 + - _Cutoff: 0.5 + - _DetailNormalMapScale: 1 + - _DstBlend: 0 + - _GlossMapScale: 1 + - _Glossiness: 0.82 + - _GlossyReflections: 1 + - _Metallic: 0.81 + - _Mode: 0 + - _OcclusionStrength: 1 + - _Parallax: 0.02 + - _SmoothnessTextureChannel: 0 + - _SpecularHighlights: 1 + - _SrcBlend: 1 + - _UVSec: 0 + - _ZWrite: 1 + m_Colors: + - _Color: {r: 1, g: 0.72564876, b: 0.5424528, a: 1} + - _EmissionColor: {r: 0.5471698, g: 0.3510146, b: 0, a: 1} diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/Kart/Custom Materials/Metal Copper.mat.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/Kart/Custom Materials/Metal Copper.mat.meta" new file mode 100644 index 00000000..5ee6e42b --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/Kart/Custom Materials/Metal Copper.mat.meta" @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: e7c453d829e9a4662a456d2da16a7e42 +NativeFormatImporter: + externalObjects: {} + mainObjectFileID: 2100000 + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/Kart/Custom Materials/Metal Silver.mat" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/Kart/Custom Materials/Metal Silver.mat" new file mode 100644 index 00000000..64cc8d19 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/Kart/Custom Materials/Metal Silver.mat" @@ -0,0 +1,77 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!21 &2100000 +Material: + serializedVersion: 6 + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_Name: Metal Silver + m_Shader: {fileID: 46, guid: 0000000000000000f000000000000000, type: 0} + m_ShaderKeywords: + m_LightmapFlags: 4 + m_EnableInstancingVariants: 0 + m_DoubleSidedGI: 0 + m_CustomRenderQueue: -1 + stringTagMap: {} + disabledShaderPasses: [] + m_SavedProperties: + serializedVersion: 3 + m_TexEnvs: + - _BumpMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _DetailAlbedoMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _DetailMask: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _DetailNormalMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _EmissionMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _MainTex: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _MetallicGlossMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _OcclusionMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _ParallaxMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + m_Floats: + - _BumpScale: 1 + - _Cutoff: 0.5 + - _DetailNormalMapScale: 1 + - _DstBlend: 0 + - _GlossMapScale: 1 + - _Glossiness: 0.84 + - _GlossyReflections: 1 + - _Metallic: 0.68 + - _Mode: 0 + - _OcclusionStrength: 1 + - _Parallax: 0.02 + - _SmoothnessTextureChannel: 0 + - _SpecularHighlights: 1 + - _SrcBlend: 1 + - _UVSec: 0 + - _ZWrite: 1 + m_Colors: + - _Color: {r: 1, g: 1, b: 1, a: 1} + - _EmissionColor: {r: 0, g: 0, b: 0, a: 1} diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/Kart/Custom Materials/Metal Silver.mat.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/Kart/Custom Materials/Metal Silver.mat.meta" new file mode 100644 index 00000000..57a74aaa --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/Kart/Custom Materials/Metal Silver.mat.meta" @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 346183a72a1454a878a57ebb8b961c51 +NativeFormatImporter: + externalObjects: {} + mainObjectFileID: 2100000 + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/Kart/Custom Materials/Neon Blue.mat" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/Kart/Custom Materials/Neon Blue.mat" new file mode 100644 index 00000000..d1cb577d --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/Kart/Custom Materials/Neon Blue.mat" @@ -0,0 +1,77 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!21 &2100000 +Material: + serializedVersion: 6 + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_Name: Neon Blue + m_Shader: {fileID: 46, guid: 0000000000000000f000000000000000, type: 0} + m_ShaderKeywords: _EMISSION + m_LightmapFlags: 0 + m_EnableInstancingVariants: 0 + m_DoubleSidedGI: 0 + m_CustomRenderQueue: -1 + stringTagMap: {} + disabledShaderPasses: [] + m_SavedProperties: + serializedVersion: 3 + m_TexEnvs: + - _BumpMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _DetailAlbedoMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _DetailMask: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _DetailNormalMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _EmissionMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _MainTex: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _MetallicGlossMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _OcclusionMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _ParallaxMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + m_Floats: + - _BumpScale: 1 + - _Cutoff: 0.5 + - _DetailNormalMapScale: 1 + - _DstBlend: 0 + - _GlossMapScale: 1 + - _Glossiness: 0.5 + - _GlossyReflections: 1 + - _Metallic: 0 + - _Mode: 0 + - _OcclusionStrength: 1 + - _Parallax: 0.02 + - _SmoothnessTextureChannel: 0 + - _SpecularHighlights: 1 + - _SrcBlend: 1 + - _UVSec: 0 + - _ZWrite: 1 + m_Colors: + - _Color: {r: 0.745283, g: 0.745283, b: 0.745283, a: 1} + - _EmissionColor: {r: 0, g: 0.6509804, b: 2, a: 1} diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/Kart/Custom Materials/Neon Blue.mat.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/Kart/Custom Materials/Neon Blue.mat.meta" new file mode 100644 index 00000000..782f5bd5 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/Kart/Custom Materials/Neon Blue.mat.meta" @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 720149e63952b457590122b90ee86b07 +NativeFormatImporter: + externalObjects: {} + mainObjectFileID: 2100000 + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/Kart/Custom Materials/Neon Glow.mat" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/Kart/Custom Materials/Neon Glow.mat" new file mode 100644 index 00000000..e866550d --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/Kart/Custom Materials/Neon Glow.mat" @@ -0,0 +1,77 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!21 &2100000 +Material: + serializedVersion: 6 + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_Name: Neon Glow + m_Shader: {fileID: 46, guid: 0000000000000000f000000000000000, type: 0} + m_ShaderKeywords: _EMISSION + m_LightmapFlags: 0 + m_EnableInstancingVariants: 0 + m_DoubleSidedGI: 0 + m_CustomRenderQueue: -1 + stringTagMap: {} + disabledShaderPasses: [] + m_SavedProperties: + serializedVersion: 3 + m_TexEnvs: + - _BumpMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _DetailAlbedoMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _DetailMask: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _DetailNormalMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _EmissionMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _MainTex: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _MetallicGlossMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _OcclusionMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _ParallaxMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + m_Floats: + - _BumpScale: 1 + - _Cutoff: 0.5 + - _DetailNormalMapScale: 1 + - _DstBlend: 0 + - _GlossMapScale: 1 + - _Glossiness: 0.5 + - _GlossyReflections: 1 + - _Metallic: 0 + - _Mode: 0 + - _OcclusionStrength: 1 + - _Parallax: 0.02 + - _SmoothnessTextureChannel: 0 + - _SpecularHighlights: 1 + - _SrcBlend: 1 + - _UVSec: 0 + - _ZWrite: 1 + m_Colors: + - _Color: {r: 0.745283, g: 0.745283, b: 0.745283, a: 1} + - _EmissionColor: {r: 2, g: 0.20417945, b: 0, a: 1} diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/Kart/Custom Materials/Neon Glow.mat.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/Kart/Custom Materials/Neon Glow.mat.meta" new file mode 100644 index 00000000..a2105eed --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/Kart/Custom Materials/Neon Glow.mat.meta" @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: c70bc0190174a41759ea517f8d94ace1 +NativeFormatImporter: + externalObjects: {} + mainObjectFileID: 2100000 + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/Kart/Custom Materials/Neon Green.mat" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/Kart/Custom Materials/Neon Green.mat" new file mode 100644 index 00000000..25e6afaa --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/Kart/Custom Materials/Neon Green.mat" @@ -0,0 +1,77 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!21 &2100000 +Material: + serializedVersion: 6 + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_Name: Neon Green + m_Shader: {fileID: 46, guid: 0000000000000000f000000000000000, type: 0} + m_ShaderKeywords: _EMISSION + m_LightmapFlags: 0 + m_EnableInstancingVariants: 0 + m_DoubleSidedGI: 0 + m_CustomRenderQueue: -1 + stringTagMap: {} + disabledShaderPasses: [] + m_SavedProperties: + serializedVersion: 3 + m_TexEnvs: + - _BumpMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _DetailAlbedoMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _DetailMask: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _DetailNormalMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _EmissionMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _MainTex: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _MetallicGlossMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _OcclusionMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _ParallaxMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + m_Floats: + - _BumpScale: 1 + - _Cutoff: 0.5 + - _DetailNormalMapScale: 1 + - _DstBlend: 0 + - _GlossMapScale: 1 + - _Glossiness: 0.5 + - _GlossyReflections: 1 + - _Metallic: 0 + - _Mode: 0 + - _OcclusionStrength: 1 + - _Parallax: 0.02 + - _SmoothnessTextureChannel: 0 + - _SpecularHighlights: 1 + - _SrcBlend: 1 + - _UVSec: 0 + - _ZWrite: 1 + m_Colors: + - _Color: {r: 0.745283, g: 0.745283, b: 0.745283, a: 1} + - _EmissionColor: {r: 0.15078592, g: 2, b: 0, a: 1} diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/Kart/Custom Materials/Neon Green.mat.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/Kart/Custom Materials/Neon Green.mat.meta" new file mode 100644 index 00000000..317c7217 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/Kart/Custom Materials/Neon Green.mat.meta" @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 0030b1f081f074ea79e4c8398f97fc08 +NativeFormatImporter: + externalObjects: {} + mainObjectFileID: 2100000 + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/Kart/Hat Prefabs.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/Kart/Hat Prefabs.meta" new file mode 100644 index 00000000..e6164f67 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/Kart/Hat Prefabs.meta" @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 297b7582f4f6f234aa5e0496755429e2 +folderAsset: yes +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/Kart/Hat Prefabs/PartyHat.prefab" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/Kart/Hat Prefabs/PartyHat.prefab" new file mode 100644 index 00000000..0bb62fd0 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/Kart/Hat Prefabs/PartyHat.prefab" @@ -0,0 +1,188 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!1 &9055817469080827956 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 9055817469080827963} + m_Layer: 0 + m_Name: PartyHat + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &9055817469080827963 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 9055817469080827956} + m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} + m_LocalPosition: {x: 0, y: 0, z: 0} + m_LocalScale: {x: 1, y: 1, z: 1} + m_Children: + - {fileID: 9055817469930580660} + - {fileID: 3916634885050045141} + m_Father: {fileID: 0} + m_RootOrder: 0 + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!1001 &3916634885049649237 +PrefabInstance: + m_ObjectHideFlags: 0 + serializedVersion: 2 + m_Modification: + m_TransformParent: {fileID: 9055817469080827963} + m_Modifications: + - target: {fileID: 100000, guid: be949c77dc28c459280b4981f6495d99, type: 3} + propertyPath: m_Name + value: GlassesMesh + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: be949c77dc28c459280b4981f6495d99, type: 3} + propertyPath: m_LocalPosition.x + value: -0.211 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: be949c77dc28c459280b4981f6495d99, type: 3} + propertyPath: m_LocalPosition.y + value: -0.266 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: be949c77dc28c459280b4981f6495d99, type: 3} + propertyPath: m_LocalPosition.z + value: -0.012 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: be949c77dc28c459280b4981f6495d99, type: 3} + propertyPath: m_LocalRotation.x + value: 0.49412632 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: be949c77dc28c459280b4981f6495d99, type: 3} + propertyPath: m_LocalRotation.y + value: 0.50600713 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: be949c77dc28c459280b4981f6495d99, type: 3} + propertyPath: m_LocalRotation.z + value: -0.49319836 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: be949c77dc28c459280b4981f6495d99, type: 3} + propertyPath: m_LocalRotation.w + value: 0.50650907 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: be949c77dc28c459280b4981f6495d99, type: 3} + propertyPath: m_RootOrder + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: be949c77dc28c459280b4981f6495d99, type: 3} + propertyPath: m_LocalEulerAnglesHint.x + value: 91.44299 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: be949c77dc28c459280b4981f6495d99, type: 3} + propertyPath: m_LocalEulerAnglesHint.y + value: -89.07199 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: be949c77dc28c459280b4981f6495d99, type: 3} + propertyPath: m_LocalEulerAnglesHint.z + value: -178.99 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: be949c77dc28c459280b4981f6495d99, type: 3} + propertyPath: m_LocalScale.x + value: 8.216869 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: be949c77dc28c459280b4981f6495d99, type: 3} + propertyPath: m_LocalScale.y + value: 8.216869 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: be949c77dc28c459280b4981f6495d99, type: 3} + propertyPath: m_LocalScale.z + value: 8.21687 + objectReference: {fileID: 0} + m_RemovedComponents: [] + m_SourcePrefab: {fileID: 100100000, guid: be949c77dc28c459280b4981f6495d99, type: 3} +--- !u!4 &3916634885050045141 stripped +Transform: + m_CorrespondingSourceObject: {fileID: 400000, guid: be949c77dc28c459280b4981f6495d99, + type: 3} + m_PrefabInstance: {fileID: 3916634885049649237} + m_PrefabAsset: {fileID: 0} +--- !u!1001 &9055817469930450996 +PrefabInstance: + m_ObjectHideFlags: 0 + serializedVersion: 2 + m_Modification: + m_TransformParent: {fileID: 9055817469080827963} + m_Modifications: + - target: {fileID: 100000, guid: 34a2d77e69c9248c09fea2bd77090468, type: 3} + propertyPath: m_Name + value: PartyHatMesh + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 34a2d77e69c9248c09fea2bd77090468, type: 3} + propertyPath: m_LocalPosition.x + value: 0.115 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 34a2d77e69c9248c09fea2bd77090468, type: 3} + propertyPath: m_LocalPosition.y + value: 0.07 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 34a2d77e69c9248c09fea2bd77090468, type: 3} + propertyPath: m_LocalPosition.z + value: 0.002 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 34a2d77e69c9248c09fea2bd77090468, type: 3} + propertyPath: m_LocalRotation.x + value: -0.053752284 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 34a2d77e69c9248c09fea2bd77090468, type: 3} + propertyPath: m_LocalRotation.y + value: 0.7018753 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 34a2d77e69c9248c09fea2bd77090468, type: 3} + propertyPath: m_LocalRotation.z + value: 0.055590685 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 34a2d77e69c9248c09fea2bd77090468, type: 3} + propertyPath: m_LocalRotation.w + value: 0.70809 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 34a2d77e69c9248c09fea2bd77090468, type: 3} + propertyPath: m_RootOrder + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 34a2d77e69c9248c09fea2bd77090468, type: 3} + propertyPath: m_LocalEulerAnglesHint.x + value: -8.868 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 34a2d77e69c9248c09fea2bd77090468, type: 3} + propertyPath: m_LocalEulerAnglesHint.y + value: 89.48 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 34a2d77e69c9248c09fea2bd77090468, type: 3} + propertyPath: m_LocalEulerAnglesHint.z + value: 0.19000001 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 34a2d77e69c9248c09fea2bd77090468, type: 3} + propertyPath: m_LocalScale.x + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 34a2d77e69c9248c09fea2bd77090468, type: 3} + propertyPath: m_LocalScale.y + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 34a2d77e69c9248c09fea2bd77090468, type: 3} + propertyPath: m_LocalScale.z + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 2300000, guid: 34a2d77e69c9248c09fea2bd77090468, type: 3} + propertyPath: m_Materials.Array.data[0] + value: + objectReference: {fileID: 2100000, guid: bdf0bf742eef44db49906f57d30ad905, type: 2} + m_RemovedComponents: [] + m_SourcePrefab: {fileID: 100100000, guid: 34a2d77e69c9248c09fea2bd77090468, type: 3} +--- !u!4 &9055817469930580660 stripped +Transform: + m_CorrespondingSourceObject: {fileID: 400000, guid: 34a2d77e69c9248c09fea2bd77090468, + type: 3} + m_PrefabInstance: {fileID: 9055817469930450996} + m_PrefabAsset: {fileID: 0} diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/Kart/Hat Prefabs/PartyHat.prefab.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/Kart/Hat Prefabs/PartyHat.prefab.meta" new file mode 100644 index 00000000..e67f11b2 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/Kart/Hat Prefabs/PartyHat.prefab.meta" @@ -0,0 +1,7 @@ +fileFormatVersion: 2 +guid: 332a6a14085b74fdd9c8f81357a61185 +PrefabImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/Kart/Hat Prefabs/TopHat.prefab" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/Kart/Hat Prefabs/TopHat.prefab" new file mode 100644 index 00000000..d3cb5b6a --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/Kart/Hat Prefabs/TopHat.prefab" @@ -0,0 +1,188 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!1 &2394185961606616943 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 8817514635695522025} + m_Layer: 0 + m_Name: TopHat + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &8817514635695522025 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 2394185961606616943} + m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} + m_LocalPosition: {x: 0, y: 0, z: 0} + m_LocalScale: {x: 1, y: 1, z: 1} + m_Children: + - {fileID: 5524053028804806210} + - {fileID: 1872565446577984040} + m_Father: {fileID: 0} + m_RootOrder: 0 + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!1 &4436768565386054496 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 1872565446577984040} + - component: {fileID: 2036783202040655076} + - component: {fileID: 1594185883028032932} + m_Layer: 0 + m_Name: Brim + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &1872565446577984040 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 4436768565386054496} + m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} + m_LocalPosition: {x: -0.115, y: -0.003, z: 0.002} + m_LocalScale: {x: 0.068031915, y: 0.66056144, z: 0.66056144} + m_Children: [] + m_Father: {fileID: 8817514635695522025} + m_RootOrder: 1 + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!33 &2036783202040655076 +MeshFilter: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 4436768565386054496} + m_Mesh: {fileID: 10202, guid: 0000000000000000e000000000000000, type: 0} +--- !u!23 &1594185883028032932 +MeshRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 4436768565386054496} + m_Enabled: 1 + m_CastShadows: 1 + m_ReceiveShadows: 1 + m_DynamicOccludee: 1 + m_MotionVectors: 1 + m_LightProbeUsage: 1 + m_ReflectionProbeUsage: 1 + m_RenderingLayerMask: 1 + m_RendererPriority: 0 + m_Materials: + - {fileID: 2100000, guid: 3869da5c1b38e487aaa31c9021e4134f, type: 2} + m_StaticBatchInfo: + firstSubMesh: 0 + subMeshCount: 0 + m_StaticBatchRoot: {fileID: 0} + m_ProbeAnchor: {fileID: 0} + m_LightProbeVolumeOverride: {fileID: 0} + m_ScaleInLightmap: 1 + m_PreserveUVs: 0 + m_IgnoreNormalsForChartDetection: 0 + m_ImportantGI: 0 + m_StitchLightmapSeams: 0 + m_SelectedEditorRenderState: 3 + m_MinimumChartSize: 4 + m_AutoUVMaxDistance: 0.5 + m_AutoUVMaxAngle: 89 + m_LightmapParameters: {fileID: 0} + m_SortingLayerID: 0 + m_SortingLayer: 0 + m_SortingOrder: 0 +--- !u!1 &7024815106406689329 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 5524053028804806210} + - component: {fileID: 5647843025221909009} + - component: {fileID: 6245822014190986310} + m_Layer: 0 + m_Name: Cylinder + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &5524053028804806210 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 7024815106406689329} + m_LocalRotation: {x: 0, y: 0, z: 0.7071068, w: 0.7071068} + m_LocalPosition: {x: 0.09, y: 0.003, z: 0.001} + m_LocalScale: {x: 0.4370327, y: 0.18802495, z: 0.4370327} + m_Children: [] + m_Father: {fileID: 8817514635695522025} + m_RootOrder: 0 + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 90} +--- !u!33 &5647843025221909009 +MeshFilter: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 7024815106406689329} + m_Mesh: {fileID: 10206, guid: 0000000000000000e000000000000000, type: 0} +--- !u!23 &6245822014190986310 +MeshRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 7024815106406689329} + m_Enabled: 1 + m_CastShadows: 1 + m_ReceiveShadows: 1 + m_DynamicOccludee: 1 + m_MotionVectors: 1 + m_LightProbeUsage: 1 + m_ReflectionProbeUsage: 1 + m_RenderingLayerMask: 1 + m_RendererPriority: 0 + m_Materials: + - {fileID: 2100000, guid: 3869da5c1b38e487aaa31c9021e4134f, type: 2} + m_StaticBatchInfo: + firstSubMesh: 0 + subMeshCount: 0 + m_StaticBatchRoot: {fileID: 0} + m_ProbeAnchor: {fileID: 0} + m_LightProbeVolumeOverride: {fileID: 0} + m_ScaleInLightmap: 1 + m_PreserveUVs: 0 + m_IgnoreNormalsForChartDetection: 0 + m_ImportantGI: 0 + m_StitchLightmapSeams: 0 + m_SelectedEditorRenderState: 3 + m_MinimumChartSize: 4 + m_AutoUVMaxDistance: 0.5 + m_AutoUVMaxAngle: 89 + m_LightmapParameters: {fileID: 0} + m_SortingLayerID: 0 + m_SortingLayer: 0 + m_SortingOrder: 0 diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/Kart/Hat Prefabs/TopHat.prefab.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/Kart/Hat Prefabs/TopHat.prefab.meta" new file mode 100644 index 00000000..50f83258 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/Kart/Hat Prefabs/TopHat.prefab.meta" @@ -0,0 +1,7 @@ +fileFormatVersion: 2 +guid: 774a4248793f3461bb91a4fe8170cdd7 +PrefabImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/Kart/Hat Prefabs/WizardHat.prefab" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/Kart/Hat Prefabs/WizardHat.prefab" new file mode 100644 index 00000000..a11b7d4d --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/Kart/Hat Prefabs/WizardHat.prefab" @@ -0,0 +1,112 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!1 &2805368771174309307 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 2805368771174309306} + m_Layer: 0 + m_Name: WizardHat + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &2805368771174309306 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 2805368771174309307} + m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} + m_LocalPosition: {x: 0, y: 0, z: 0} + m_LocalScale: {x: 1, y: 1, z: 1} + m_Children: + - {fileID: 2805368772352867136} + m_Father: {fileID: 0} + m_RootOrder: 0 + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!1001 &2805368772353253824 +PrefabInstance: + m_ObjectHideFlags: 0 + serializedVersion: 2 + m_Modification: + m_TransformParent: {fileID: 2805368771174309306} + m_Modifications: + - target: {fileID: 100000, guid: 41fa7087e84034b719aeb52d1260a81b, type: 3} + propertyPath: m_Name + value: WizardHatMesh + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 41fa7087e84034b719aeb52d1260a81b, type: 3} + propertyPath: m_LocalPosition.x + value: -0.112 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 41fa7087e84034b719aeb52d1260a81b, type: 3} + propertyPath: m_LocalPosition.y + value: 0.041 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 41fa7087e84034b719aeb52d1260a81b, type: 3} + propertyPath: m_LocalPosition.z + value: 0.004 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 41fa7087e84034b719aeb52d1260a81b, type: 3} + propertyPath: m_LocalRotation.x + value: -0.093322024 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 41fa7087e84034b719aeb52d1260a81b, type: 3} + propertyPath: m_LocalRotation.y + value: 0.6952886 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 41fa7087e84034b719aeb52d1260a81b, type: 3} + propertyPath: m_LocalRotation.z + value: 0.09651506 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 41fa7087e84034b719aeb52d1260a81b, type: 3} + propertyPath: m_LocalRotation.w + value: 0.7060805 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 41fa7087e84034b719aeb52d1260a81b, type: 3} + propertyPath: m_RootOrder + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 41fa7087e84034b719aeb52d1260a81b, type: 3} + propertyPath: m_LocalEulerAnglesHint.x + value: -15.426001 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 41fa7087e84034b719aeb52d1260a81b, type: 3} + propertyPath: m_LocalEulerAnglesHint.y + value: 89.065 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 41fa7087e84034b719aeb52d1260a81b, type: 3} + propertyPath: m_LocalEulerAnglesHint.z + value: 0.388 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 41fa7087e84034b719aeb52d1260a81b, type: 3} + propertyPath: m_LocalScale.x + value: 49.436 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 41fa7087e84034b719aeb52d1260a81b, type: 3} + propertyPath: m_LocalScale.y + value: 49.436 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 41fa7087e84034b719aeb52d1260a81b, type: 3} + propertyPath: m_LocalScale.z + value: 49.436 + objectReference: {fileID: 0} + - target: {fileID: 2300000, guid: 41fa7087e84034b719aeb52d1260a81b, type: 3} + propertyPath: m_Materials.Array.data[0] + value: + objectReference: {fileID: 2100000, guid: 620d51c84c6b5432e8cad9adb5edfc64, type: 2} + m_RemovedComponents: [] + m_SourcePrefab: {fileID: 100100000, guid: 41fa7087e84034b719aeb52d1260a81b, type: 3} +--- !u!4 &2805368772352867136 stripped +Transform: + m_CorrespondingSourceObject: {fileID: 400000, guid: 41fa7087e84034b719aeb52d1260a81b, + type: 3} + m_PrefabInstance: {fileID: 2805368772353253824} + m_PrefabAsset: {fileID: 0} diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/Kart/Hat Prefabs/WizardHat.prefab.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/Kart/Hat Prefabs/WizardHat.prefab.meta" new file mode 100644 index 00000000..69f5ea8b --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/Kart/Hat Prefabs/WizardHat.prefab.meta" @@ -0,0 +1,7 @@ +fileFormatVersion: 2 +guid: 942c2c1bb4e544cb09d3494e89bb8041 +PrefabImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/Kart/Particle Prefabs.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/Kart/Particle Prefabs.meta" new file mode 100644 index 00000000..2b87503b --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/Kart/Particle Prefabs.meta" @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 1d071bf9a3d1143aaa8f131551854798 +folderAsset: yes +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/Kart/Particle Prefabs/ConfettiCelebration.prefab" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/Kart/Particle Prefabs/ConfettiCelebration.prefab" new file mode 100644 index 00000000..4e22a6ef --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/Kart/Particle Prefabs/ConfettiCelebration.prefab" @@ -0,0 +1,9560 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!1 &7276764443248859406 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 7276764443248859405} + - component: {fileID: 7276764443248859404} + - component: {fileID: 7276764443248859407} + m_Layer: 0 + m_Name: ConfettiCelebration + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &7276764443248859405 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 7276764443248859406} + m_LocalRotation: {x: -0.7071068, y: 0, z: 0, w: 0.7071068} + m_LocalPosition: {x: 11, y: 2, z: 60} + m_LocalScale: {x: 1, y: 1, z: 1} + m_Children: + - {fileID: 7276764443775147242} + m_Father: {fileID: 0} + m_RootOrder: 0 + m_LocalEulerAnglesHint: {x: -90, y: 0, z: 0} +--- !u!198 &7276764443248859404 +ParticleSystem: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 7276764443248859406} + serializedVersion: 6 + lengthInSec: 5 + simulationSpeed: 1 + stopAction: 0 + cullingMode: 0 + ringBufferMode: 0 + ringBufferLoopRange: {x: 0, y: 1} + looping: 0 + prewarm: 0 + playOnAwake: 0 + useUnscaledTime: 0 + autoRandomSeed: 1 + useRigidbodyForVelocity: 1 + startDelay: + serializedVersion: 2 + minMaxState: 0 + scalar: 0 + minScalar: 0 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + moveWithTransform: 0 + moveWithCustomTransform: {fileID: 0} + scalingMode: 1 + randomSeed: 0 + InitialModule: + serializedVersion: 3 + enabled: 1 + startLifetime: + serializedVersion: 2 + minMaxState: 3 + scalar: 4 + minScalar: 0.0001 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + startSpeed: + serializedVersion: 2 + minMaxState: 3 + scalar: 10 + minScalar: 5 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + startColor: + serializedVersion: 2 + minMaxState: 4 + minColor: {r: 1, g: 1, b: 1, a: 1} + maxColor: {r: 1, g: 1, b: 1, a: 1} + maxGradient: + serializedVersion: 2 + key0: {r: 1, g: 1, b: 1, a: 1} + key1: {r: 1, g: 0, b: 0, a: 1} + key2: {r: 0, g: 0.6912031, b: 1, a: 1} + key3: {r: 0, g: 1, b: 0.016950846, a: 0} + key4: {r: 1, g: 0.99501103, b: 0, a: 0} + key5: {r: 1, g: 1, b: 1, a: 0} + key6: {r: 0, g: 0, b: 0, a: 0} + key7: {r: 0, g: 0, b: 0, a: 0} + ctime0: 0 + ctime1: 10987 + ctime2: 28720 + ctime3: 42020 + ctime4: 53199 + ctime5: 65535 + ctime6: 0 + ctime7: 0 + atime0: 0 + atime1: 65535 + atime2: 65535 + atime3: 0 + atime4: 0 + atime5: 0 + atime6: 0 + atime7: 0 + m_Mode: 0 + m_NumColorKeys: 6 + m_NumAlphaKeys: 2 + minGradient: + serializedVersion: 2 + key0: {r: 1, g: 1, b: 1, a: 1} + key1: {r: 1, g: 1, b: 1, a: 1} + key2: {r: 0, g: 0, b: 0, a: 0} + key3: {r: 0, g: 0, b: 0, a: 0} + key4: {r: 0, g: 0, b: 0, a: 0} + key5: {r: 0, g: 0, b: 0, a: 0} + key6: {r: 0, g: 0, b: 0, a: 0} + key7: {r: 0, g: 0, b: 0, a: 0} + ctime0: 0 + ctime1: 65535 + ctime2: 0 + ctime3: 0 + ctime4: 0 + ctime5: 0 + ctime6: 0 + ctime7: 0 + atime0: 0 + atime1: 65535 + atime2: 0 + atime3: 0 + atime4: 0 + atime5: 0 + atime6: 0 + atime7: 0 + m_Mode: 0 + m_NumColorKeys: 2 + m_NumAlphaKeys: 2 + startSize: + serializedVersion: 2 + minMaxState: 0 + scalar: 0.25 + minScalar: 1 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + startSizeY: + serializedVersion: 2 + minMaxState: 0 + scalar: 1 + minScalar: 1 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + startSizeZ: + serializedVersion: 2 + minMaxState: 0 + scalar: 1 + minScalar: 1 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + startRotationX: + serializedVersion: 2 + minMaxState: 3 + scalar: 0 + minScalar: 1.5707963 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + startRotationY: + serializedVersion: 2 + minMaxState: 3 + scalar: 0 + minScalar: 1.5707963 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + startRotation: + serializedVersion: 2 + minMaxState: 3 + scalar: 0 + minScalar: 1.5707963 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + randomizeRotationDirection: 0 + maxNumParticles: 1000 + size3D: 1 + rotation3D: 1 + gravityModifier: + serializedVersion: 2 + minMaxState: 0 + scalar: 0.75 + minScalar: 0 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + ShapeModule: + serializedVersion: 6 + enabled: 1 + type: 4 + angle: 25 + length: 5 + boxThickness: {x: 0, y: 0, z: 0} + radiusThickness: 1 + donutRadius: 0.2 + m_Position: {x: 0, y: 0, z: 0} + m_Rotation: {x: 0, y: 0, z: 0} + m_Scale: {x: 1, y: 1, z: 1} + placementMode: 0 + m_MeshMaterialIndex: 0 + m_MeshNormalOffset: 0 + m_MeshSpawn: + mode: 0 + spread: 0 + speed: + serializedVersion: 2 + minMaxState: 0 + scalar: 1 + minScalar: 1 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + m_Mesh: {fileID: 0} + m_MeshRenderer: {fileID: 0} + m_SkinnedMeshRenderer: {fileID: 0} + m_Sprite: {fileID: 0} + m_SpriteRenderer: {fileID: 0} + m_UseMeshMaterialIndex: 0 + m_UseMeshColors: 1 + alignToDirection: 0 + m_Texture: {fileID: 0} + m_TextureClipChannel: 3 + m_TextureClipThreshold: 0 + m_TextureUVChannel: 0 + m_TextureColorAffectsParticles: 1 + m_TextureAlphaAffectsParticles: 1 + m_TextureBilinearFiltering: 0 + randomDirectionAmount: 0 + sphericalDirectionAmount: 0 + randomPositionAmount: 0 + radius: + value: 1 + mode: 0 + spread: 0 + speed: + serializedVersion: 2 + minMaxState: 0 + scalar: 1 + minScalar: 1 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + arc: + value: 360 + mode: 0 + spread: 0 + speed: + serializedVersion: 2 + minMaxState: 0 + scalar: 1 + minScalar: 1 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + EmissionModule: + enabled: 1 + serializedVersion: 4 + rateOverTime: + serializedVersion: 2 + minMaxState: 0 + scalar: 0 + minScalar: 10 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + rateOverDistance: + serializedVersion: 2 + minMaxState: 0 + scalar: 0 + minScalar: 0 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + m_BurstCount: 1 + m_Bursts: + - serializedVersion: 2 + time: 0 + countCurve: + serializedVersion: 2 + minMaxState: 0 + scalar: 50 + minScalar: 30 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0 + outWeight: 0 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0 + outWeight: 0 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0 + outWeight: 0 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0 + outWeight: 0 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + cycleCount: 1 + repeatInterval: 0.01 + probability: 1 + SizeModule: + enabled: 1 + curve: + serializedVersion: 2 + minMaxState: 1 + scalar: 1 + minScalar: 1 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 13.976815 + outSlope: 13.976815 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.15999804 + - serializedVersion: 3 + time: 0.10638428 + value: 0.99596786 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 0.40852404 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0 + outWeight: 0 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: -3.858006 + outSlope: -3.858006 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.10072173 + outWeight: 0 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + y: + serializedVersion: 2 + minMaxState: 1 + scalar: 1 + minScalar: 1 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 1 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 1 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + z: + serializedVersion: 2 + minMaxState: 1 + scalar: 1 + minScalar: 1 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 1 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 1 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + separateAxes: 0 + RotationModule: + enabled: 1 + x: + serializedVersion: 2 + minMaxState: 3 + scalar: -3.1415925 + minScalar: 3.1415925 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + y: + serializedVersion: 2 + minMaxState: 3 + scalar: -3.1415925 + minScalar: 3.1415925 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + curve: + serializedVersion: 2 + minMaxState: 3 + scalar: 3.1415925 + minScalar: -3.1415925 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + separateAxes: 1 + ColorModule: + enabled: 0 + gradient: + serializedVersion: 2 + minMaxState: 1 + minColor: {r: 1, g: 1, b: 1, a: 1} + maxColor: {r: 1, g: 1, b: 1, a: 1} + maxGradient: + serializedVersion: 2 + key0: {r: 1, g: 1, b: 1, a: 1} + key1: {r: 1, g: 1, b: 1, a: 1} + key2: {r: 0, g: 0, b: 0, a: 0} + key3: {r: 0, g: 0, b: 0, a: 0} + key4: {r: 0, g: 0, b: 0, a: 0} + key5: {r: 0, g: 0, b: 0, a: 0} + key6: {r: 0, g: 0, b: 0, a: 0} + key7: {r: 0, g: 0, b: 0, a: 0} + ctime0: 0 + ctime1: 65535 + ctime2: 0 + ctime3: 0 + ctime4: 0 + ctime5: 0 + ctime6: 0 + ctime7: 0 + atime0: 0 + atime1: 65535 + atime2: 0 + atime3: 0 + atime4: 0 + atime5: 0 + atime6: 0 + atime7: 0 + m_Mode: 0 + m_NumColorKeys: 2 + m_NumAlphaKeys: 2 + minGradient: + serializedVersion: 2 + key0: {r: 1, g: 1, b: 1, a: 1} + key1: {r: 1, g: 1, b: 1, a: 1} + key2: {r: 0, g: 0, b: 0, a: 0} + key3: {r: 0, g: 0, b: 0, a: 0} + key4: {r: 0, g: 0, b: 0, a: 0} + key5: {r: 0, g: 0, b: 0, a: 0} + key6: {r: 0, g: 0, b: 0, a: 0} + key7: {r: 0, g: 0, b: 0, a: 0} + ctime0: 0 + ctime1: 65535 + ctime2: 0 + ctime3: 0 + ctime4: 0 + ctime5: 0 + ctime6: 0 + ctime7: 0 + atime0: 0 + atime1: 65535 + atime2: 0 + atime3: 0 + atime4: 0 + atime5: 0 + atime6: 0 + atime7: 0 + m_Mode: 0 + m_NumColorKeys: 2 + m_NumAlphaKeys: 2 + UVModule: + enabled: 0 + mode: 0 + timeMode: 0 + fps: 30 + frameOverTime: + serializedVersion: 2 + minMaxState: 1 + scalar: 0.9999 + minScalar: 0.9999 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 1 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 1 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + startFrame: + serializedVersion: 2 + minMaxState: 0 + scalar: 0 + minScalar: 0 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + speedRange: {x: 0, y: 1} + tilesX: 1 + tilesY: 1 + animationType: 0 + rowIndex: 0 + cycles: 1 + uvChannelMask: -1 + randomRow: 1 + sprites: + - sprite: {fileID: 0} + flipU: 0 + flipV: 0 + VelocityModule: + enabled: 0 + x: + serializedVersion: 2 + minMaxState: 0 + scalar: 0 + minScalar: 0 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + y: + serializedVersion: 2 + minMaxState: 0 + scalar: 0 + minScalar: 0 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + z: + serializedVersion: 2 + minMaxState: 0 + scalar: 0 + minScalar: 0 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + orbitalX: + serializedVersion: 2 + minMaxState: 0 + scalar: 0 + minScalar: 0 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + orbitalY: + serializedVersion: 2 + minMaxState: 0 + scalar: 0 + minScalar: 0 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + orbitalZ: + serializedVersion: 2 + minMaxState: 0 + scalar: 0 + minScalar: 0 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + orbitalOffsetX: + serializedVersion: 2 + minMaxState: 0 + scalar: 0 + minScalar: 0 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + orbitalOffsetY: + serializedVersion: 2 + minMaxState: 0 + scalar: 0 + minScalar: 0 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + orbitalOffsetZ: + serializedVersion: 2 + minMaxState: 0 + scalar: 0 + minScalar: 0 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + radial: + serializedVersion: 2 + minMaxState: 0 + scalar: 0 + minScalar: 0 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + speedModifier: + serializedVersion: 2 + minMaxState: 0 + scalar: 1 + minScalar: 1 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + inWorldSpace: 0 + InheritVelocityModule: + enabled: 0 + m_Mode: 0 + m_Curve: + serializedVersion: 2 + minMaxState: 0 + scalar: 0 + minScalar: 0 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + ForceModule: + enabled: 0 + x: + serializedVersion: 2 + minMaxState: 0 + scalar: 0 + minScalar: 0 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + y: + serializedVersion: 2 + minMaxState: 0 + scalar: 0 + minScalar: 0 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + z: + serializedVersion: 2 + minMaxState: 0 + scalar: 0 + minScalar: 0 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + inWorldSpace: 0 + randomizePerFrame: 0 + ExternalForcesModule: + enabled: 0 + multiplier: 1 + influenceFilter: 0 + influenceMask: + serializedVersion: 2 + m_Bits: 4294967295 + influenceList: [] + ClampVelocityModule: + enabled: 0 + x: + serializedVersion: 2 + minMaxState: 0 + scalar: 1 + minScalar: 1 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + y: + serializedVersion: 2 + minMaxState: 0 + scalar: 1 + minScalar: 1 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + z: + serializedVersion: 2 + minMaxState: 0 + scalar: 1 + minScalar: 1 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + magnitude: + serializedVersion: 2 + minMaxState: 0 + scalar: 1 + minScalar: 1 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + separateAxis: 0 + inWorldSpace: 0 + multiplyDragByParticleSize: 1 + multiplyDragByParticleVelocity: 1 + dampen: 0 + drag: + serializedVersion: 2 + minMaxState: 0 + scalar: 0 + minScalar: 0 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + NoiseModule: + enabled: 1 + strength: + serializedVersion: 2 + minMaxState: 0 + scalar: 0.5 + minScalar: 1 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + strengthY: + serializedVersion: 2 + minMaxState: 0 + scalar: 1 + minScalar: 1 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + strengthZ: + serializedVersion: 2 + minMaxState: 0 + scalar: 1 + minScalar: 1 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + separateAxes: 0 + frequency: 0.5 + damping: 1 + octaves: 1 + octaveMultiplier: 0.5 + octaveScale: 2 + quality: 0 + scrollSpeed: + serializedVersion: 2 + minMaxState: 0 + scalar: 0 + minScalar: 0 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + remap: + serializedVersion: 2 + minMaxState: 1 + scalar: 1 + minScalar: 1 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 1 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 1 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + remapY: + serializedVersion: 2 + minMaxState: 1 + scalar: 1 + minScalar: 1 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 1 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 1 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + remapZ: + serializedVersion: 2 + minMaxState: 1 + scalar: 1 + minScalar: 1 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 1 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 1 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + remapEnabled: 0 + positionAmount: + serializedVersion: 2 + minMaxState: 0 + scalar: 1 + minScalar: 1 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + rotationAmount: + serializedVersion: 2 + minMaxState: 0 + scalar: 0 + minScalar: 0 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + sizeAmount: + serializedVersion: 2 + minMaxState: 0 + scalar: 0 + minScalar: 0 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + SizeBySpeedModule: + enabled: 0 + curve: + serializedVersion: 2 + minMaxState: 1 + scalar: 1 + minScalar: 1 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 1 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 1 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + y: + serializedVersion: 2 + minMaxState: 1 + scalar: 1 + minScalar: 1 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 1 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 1 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + z: + serializedVersion: 2 + minMaxState: 1 + scalar: 1 + minScalar: 1 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 1 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 1 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + range: {x: 0, y: 1} + separateAxes: 0 + RotationBySpeedModule: + enabled: 0 + x: + serializedVersion: 2 + minMaxState: 0 + scalar: 0 + minScalar: 0 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + y: + serializedVersion: 2 + minMaxState: 0 + scalar: 0 + minScalar: 0 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + curve: + serializedVersion: 2 + minMaxState: 0 + scalar: 0.7853982 + minScalar: 0.7853982 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + separateAxes: 0 + range: {x: 0, y: 1} + ColorBySpeedModule: + enabled: 0 + gradient: + serializedVersion: 2 + minMaxState: 1 + minColor: {r: 1, g: 1, b: 1, a: 1} + maxColor: {r: 1, g: 1, b: 1, a: 1} + maxGradient: + serializedVersion: 2 + key0: {r: 1, g: 1, b: 1, a: 1} + key1: {r: 1, g: 1, b: 1, a: 1} + key2: {r: 0, g: 0, b: 0, a: 0} + key3: {r: 0, g: 0, b: 0, a: 0} + key4: {r: 0, g: 0, b: 0, a: 0} + key5: {r: 0, g: 0, b: 0, a: 0} + key6: {r: 0, g: 0, b: 0, a: 0} + key7: {r: 0, g: 0, b: 0, a: 0} + ctime0: 0 + ctime1: 65535 + ctime2: 0 + ctime3: 0 + ctime4: 0 + ctime5: 0 + ctime6: 0 + ctime7: 0 + atime0: 0 + atime1: 65535 + atime2: 0 + atime3: 0 + atime4: 0 + atime5: 0 + atime6: 0 + atime7: 0 + m_Mode: 0 + m_NumColorKeys: 2 + m_NumAlphaKeys: 2 + minGradient: + serializedVersion: 2 + key0: {r: 1, g: 1, b: 1, a: 1} + key1: {r: 1, g: 1, b: 1, a: 1} + key2: {r: 0, g: 0, b: 0, a: 0} + key3: {r: 0, g: 0, b: 0, a: 0} + key4: {r: 0, g: 0, b: 0, a: 0} + key5: {r: 0, g: 0, b: 0, a: 0} + key6: {r: 0, g: 0, b: 0, a: 0} + key7: {r: 0, g: 0, b: 0, a: 0} + ctime0: 0 + ctime1: 65535 + ctime2: 0 + ctime3: 0 + ctime4: 0 + ctime5: 0 + ctime6: 0 + ctime7: 0 + atime0: 0 + atime1: 65535 + atime2: 0 + atime3: 0 + atime4: 0 + atime5: 0 + atime6: 0 + atime7: 0 + m_Mode: 0 + m_NumColorKeys: 2 + m_NumAlphaKeys: 2 + range: {x: 0, y: 1} + CollisionModule: + enabled: 0 + serializedVersion: 3 + type: 0 + collisionMode: 0 + colliderForce: 0 + multiplyColliderForceByParticleSize: 0 + multiplyColliderForceByParticleSpeed: 0 + multiplyColliderForceByCollisionAngle: 1 + plane0: {fileID: 0} + plane1: {fileID: 0} + plane2: {fileID: 0} + plane3: {fileID: 0} + plane4: {fileID: 0} + plane5: {fileID: 0} + m_Dampen: + serializedVersion: 2 + minMaxState: 0 + scalar: 0 + minScalar: 0 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + m_Bounce: + serializedVersion: 2 + minMaxState: 0 + scalar: 1 + minScalar: 1 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + m_EnergyLossOnCollision: + serializedVersion: 2 + minMaxState: 0 + scalar: 0 + minScalar: 0 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minKillSpeed: 0 + maxKillSpeed: 10000 + radiusScale: 1 + collidesWith: + serializedVersion: 2 + m_Bits: 4294967295 + maxCollisionShapes: 256 + quality: 0 + voxelSize: 0.5 + collisionMessages: 0 + collidesWithDynamic: 1 + interiorCollisions: 0 + TriggerModule: + enabled: 0 + collisionShape0: {fileID: 0} + collisionShape1: {fileID: 0} + collisionShape2: {fileID: 0} + collisionShape3: {fileID: 0} + collisionShape4: {fileID: 0} + collisionShape5: {fileID: 0} + inside: 1 + outside: 0 + enter: 0 + exit: 0 + radiusScale: 1 + SubModule: + serializedVersion: 2 + enabled: 0 + subEmitters: + - serializedVersion: 3 + emitter: {fileID: 0} + type: 0 + properties: 0 + emitProbability: 1 + LightsModule: + enabled: 0 + ratio: 0 + light: {fileID: 0} + randomDistribution: 1 + color: 1 + range: 1 + intensity: 1 + rangeCurve: + serializedVersion: 2 + minMaxState: 0 + scalar: 1 + minScalar: 1 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + intensityCurve: + serializedVersion: 2 + minMaxState: 0 + scalar: 1 + minScalar: 1 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + maxLights: 20 + TrailModule: + enabled: 0 + mode: 0 + ratio: 1 + lifetime: + serializedVersion: 2 + minMaxState: 0 + scalar: 1 + minScalar: 1 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minVertexDistance: 0.2 + textureMode: 0 + ribbonCount: 1 + shadowBias: 0.5 + worldSpace: 0 + dieWithParticles: 1 + sizeAffectsWidth: 1 + sizeAffectsLifetime: 0 + inheritParticleColor: 1 + generateLightingData: 0 + splitSubEmitterRibbons: 0 + attachRibbonsToTransform: 0 + colorOverLifetime: + serializedVersion: 2 + minMaxState: 0 + minColor: {r: 1, g: 1, b: 1, a: 1} + maxColor: {r: 1, g: 1, b: 1, a: 1} + maxGradient: + serializedVersion: 2 + key0: {r: 1, g: 1, b: 1, a: 1} + key1: {r: 1, g: 1, b: 1, a: 1} + key2: {r: 0, g: 0, b: 0, a: 0} + key3: {r: 0, g: 0, b: 0, a: 0} + key4: {r: 0, g: 0, b: 0, a: 0} + key5: {r: 0, g: 0, b: 0, a: 0} + key6: {r: 0, g: 0, b: 0, a: 0} + key7: {r: 0, g: 0, b: 0, a: 0} + ctime0: 0 + ctime1: 65535 + ctime2: 0 + ctime3: 0 + ctime4: 0 + ctime5: 0 + ctime6: 0 + ctime7: 0 + atime0: 0 + atime1: 65535 + atime2: 0 + atime3: 0 + atime4: 0 + atime5: 0 + atime6: 0 + atime7: 0 + m_Mode: 0 + m_NumColorKeys: 2 + m_NumAlphaKeys: 2 + minGradient: + serializedVersion: 2 + key0: {r: 1, g: 1, b: 1, a: 1} + key1: {r: 1, g: 1, b: 1, a: 1} + key2: {r: 0, g: 0, b: 0, a: 0} + key3: {r: 0, g: 0, b: 0, a: 0} + key4: {r: 0, g: 0, b: 0, a: 0} + key5: {r: 0, g: 0, b: 0, a: 0} + key6: {r: 0, g: 0, b: 0, a: 0} + key7: {r: 0, g: 0, b: 0, a: 0} + ctime0: 0 + ctime1: 65535 + ctime2: 0 + ctime3: 0 + ctime4: 0 + ctime5: 0 + ctime6: 0 + ctime7: 0 + atime0: 0 + atime1: 65535 + atime2: 0 + atime3: 0 + atime4: 0 + atime5: 0 + atime6: 0 + atime7: 0 + m_Mode: 0 + m_NumColorKeys: 2 + m_NumAlphaKeys: 2 + widthOverTrail: + serializedVersion: 2 + minMaxState: 0 + scalar: 1 + minScalar: 1 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + colorOverTrail: + serializedVersion: 2 + minMaxState: 0 + minColor: {r: 1, g: 1, b: 1, a: 1} + maxColor: {r: 1, g: 1, b: 1, a: 1} + maxGradient: + serializedVersion: 2 + key0: {r: 1, g: 1, b: 1, a: 1} + key1: {r: 1, g: 1, b: 1, a: 1} + key2: {r: 0, g: 0, b: 0, a: 0} + key3: {r: 0, g: 0, b: 0, a: 0} + key4: {r: 0, g: 0, b: 0, a: 0} + key5: {r: 0, g: 0, b: 0, a: 0} + key6: {r: 0, g: 0, b: 0, a: 0} + key7: {r: 0, g: 0, b: 0, a: 0} + ctime0: 0 + ctime1: 65535 + ctime2: 0 + ctime3: 0 + ctime4: 0 + ctime5: 0 + ctime6: 0 + ctime7: 0 + atime0: 0 + atime1: 65535 + atime2: 0 + atime3: 0 + atime4: 0 + atime5: 0 + atime6: 0 + atime7: 0 + m_Mode: 0 + m_NumColorKeys: 2 + m_NumAlphaKeys: 2 + minGradient: + serializedVersion: 2 + key0: {r: 1, g: 1, b: 1, a: 1} + key1: {r: 1, g: 1, b: 1, a: 1} + key2: {r: 0, g: 0, b: 0, a: 0} + key3: {r: 0, g: 0, b: 0, a: 0} + key4: {r: 0, g: 0, b: 0, a: 0} + key5: {r: 0, g: 0, b: 0, a: 0} + key6: {r: 0, g: 0, b: 0, a: 0} + key7: {r: 0, g: 0, b: 0, a: 0} + ctime0: 0 + ctime1: 65535 + ctime2: 0 + ctime3: 0 + ctime4: 0 + ctime5: 0 + ctime6: 0 + ctime7: 0 + atime0: 0 + atime1: 65535 + atime2: 0 + atime3: 0 + atime4: 0 + atime5: 0 + atime6: 0 + atime7: 0 + m_Mode: 0 + m_NumColorKeys: 2 + m_NumAlphaKeys: 2 + CustomDataModule: + enabled: 0 + mode0: 0 + vectorComponentCount0: 4 + color0: + serializedVersion: 2 + minMaxState: 0 + minColor: {r: 1, g: 1, b: 1, a: 1} + maxColor: {r: 1, g: 1, b: 1, a: 1} + maxGradient: + serializedVersion: 2 + key0: {r: 1, g: 1, b: 1, a: 1} + key1: {r: 1, g: 1, b: 1, a: 1} + key2: {r: 0, g: 0, b: 0, a: 0} + key3: {r: 0, g: 0, b: 0, a: 0} + key4: {r: 0, g: 0, b: 0, a: 0} + key5: {r: 0, g: 0, b: 0, a: 0} + key6: {r: 0, g: 0, b: 0, a: 0} + key7: {r: 0, g: 0, b: 0, a: 0} + ctime0: 0 + ctime1: 65535 + ctime2: 0 + ctime3: 0 + ctime4: 0 + ctime5: 0 + ctime6: 0 + ctime7: 0 + atime0: 0 + atime1: 65535 + atime2: 0 + atime3: 0 + atime4: 0 + atime5: 0 + atime6: 0 + atime7: 0 + m_Mode: 0 + m_NumColorKeys: 2 + m_NumAlphaKeys: 2 + minGradient: + serializedVersion: 2 + key0: {r: 1, g: 1, b: 1, a: 1} + key1: {r: 1, g: 1, b: 1, a: 1} + key2: {r: 0, g: 0, b: 0, a: 0} + key3: {r: 0, g: 0, b: 0, a: 0} + key4: {r: 0, g: 0, b: 0, a: 0} + key5: {r: 0, g: 0, b: 0, a: 0} + key6: {r: 0, g: 0, b: 0, a: 0} + key7: {r: 0, g: 0, b: 0, a: 0} + ctime0: 0 + ctime1: 65535 + ctime2: 0 + ctime3: 0 + ctime4: 0 + ctime5: 0 + ctime6: 0 + ctime7: 0 + atime0: 0 + atime1: 65535 + atime2: 0 + atime3: 0 + atime4: 0 + atime5: 0 + atime6: 0 + atime7: 0 + m_Mode: 0 + m_NumColorKeys: 2 + m_NumAlphaKeys: 2 + colorLabel0: Color + vector0_0: + serializedVersion: 2 + minMaxState: 0 + scalar: 0 + minScalar: 0 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + vectorLabel0_0: X + vector0_1: + serializedVersion: 2 + minMaxState: 0 + scalar: 0 + minScalar: 0 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + vectorLabel0_1: Y + vector0_2: + serializedVersion: 2 + minMaxState: 0 + scalar: 0 + minScalar: 0 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + vectorLabel0_2: Z + vector0_3: + serializedVersion: 2 + minMaxState: 0 + scalar: 0 + minScalar: 0 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + vectorLabel0_3: W + mode1: 0 + vectorComponentCount1: 4 + color1: + serializedVersion: 2 + minMaxState: 0 + minColor: {r: 1, g: 1, b: 1, a: 1} + maxColor: {r: 1, g: 1, b: 1, a: 1} + maxGradient: + serializedVersion: 2 + key0: {r: 1, g: 1, b: 1, a: 1} + key1: {r: 1, g: 1, b: 1, a: 1} + key2: {r: 0, g: 0, b: 0, a: 0} + key3: {r: 0, g: 0, b: 0, a: 0} + key4: {r: 0, g: 0, b: 0, a: 0} + key5: {r: 0, g: 0, b: 0, a: 0} + key6: {r: 0, g: 0, b: 0, a: 0} + key7: {r: 0, g: 0, b: 0, a: 0} + ctime0: 0 + ctime1: 65535 + ctime2: 0 + ctime3: 0 + ctime4: 0 + ctime5: 0 + ctime6: 0 + ctime7: 0 + atime0: 0 + atime1: 65535 + atime2: 0 + atime3: 0 + atime4: 0 + atime5: 0 + atime6: 0 + atime7: 0 + m_Mode: 0 + m_NumColorKeys: 2 + m_NumAlphaKeys: 2 + minGradient: + serializedVersion: 2 + key0: {r: 1, g: 1, b: 1, a: 1} + key1: {r: 1, g: 1, b: 1, a: 1} + key2: {r: 0, g: 0, b: 0, a: 0} + key3: {r: 0, g: 0, b: 0, a: 0} + key4: {r: 0, g: 0, b: 0, a: 0} + key5: {r: 0, g: 0, b: 0, a: 0} + key6: {r: 0, g: 0, b: 0, a: 0} + key7: {r: 0, g: 0, b: 0, a: 0} + ctime0: 0 + ctime1: 65535 + ctime2: 0 + ctime3: 0 + ctime4: 0 + ctime5: 0 + ctime6: 0 + ctime7: 0 + atime0: 0 + atime1: 65535 + atime2: 0 + atime3: 0 + atime4: 0 + atime5: 0 + atime6: 0 + atime7: 0 + m_Mode: 0 + m_NumColorKeys: 2 + m_NumAlphaKeys: 2 + colorLabel1: Color + vector1_0: + serializedVersion: 2 + minMaxState: 0 + scalar: 0 + minScalar: 0 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + vectorLabel1_0: X + vector1_1: + serializedVersion: 2 + minMaxState: 0 + scalar: 0 + minScalar: 0 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + vectorLabel1_1: Y + vector1_2: + serializedVersion: 2 + minMaxState: 0 + scalar: 0 + minScalar: 0 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + vectorLabel1_2: Z + vector1_3: + serializedVersion: 2 + minMaxState: 0 + scalar: 0 + minScalar: 0 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + vectorLabel1_3: W +--- !u!199 &7276764443248859407 +ParticleSystemRenderer: + serializedVersion: 6 + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 7276764443248859406} + m_Enabled: 1 + m_CastShadows: 0 + m_ReceiveShadows: 0 + m_DynamicOccludee: 1 + m_MotionVectors: 1 + m_LightProbeUsage: 0 + m_ReflectionProbeUsage: 0 + m_RenderingLayerMask: 1 + m_RendererPriority: 0 + m_Materials: + - {fileID: 10306, guid: 0000000000000000f000000000000000, type: 0} + - {fileID: 0} + m_StaticBatchInfo: + firstSubMesh: 0 + subMeshCount: 0 + m_StaticBatchRoot: {fileID: 0} + m_ProbeAnchor: {fileID: 0} + m_LightProbeVolumeOverride: {fileID: 0} + m_ScaleInLightmap: 1 + m_PreserveUVs: 0 + m_IgnoreNormalsForChartDetection: 0 + m_ImportantGI: 0 + m_StitchLightmapSeams: 0 + m_SelectedEditorRenderState: 3 + m_MinimumChartSize: 4 + m_AutoUVMaxDistance: 0.5 + m_AutoUVMaxAngle: 89 + m_LightmapParameters: {fileID: 0} + m_SortingLayerID: 0 + m_SortingLayer: 0 + m_SortingOrder: 0 + m_RenderMode: 4 + m_SortMode: 0 + m_MinParticleSize: 0 + m_MaxParticleSize: 0.5 + m_CameraVelocityScale: 0 + m_VelocityScale: 0 + m_LengthScale: 2 + m_SortingFudge: 0 + m_NormalDirection: 1 + m_ShadowBias: 0 + m_RenderAlignment: 0 + m_Pivot: {x: 0, y: 0, z: 0} + m_Flip: {x: 0, y: 0, z: 0} + m_UseCustomVertexStreams: 0 + m_EnableGPUInstancing: 1 + m_ApplyActiveColorSpace: 1 + m_AllowRoll: 1 + m_VertexStreams: 00010304 + m_Mesh: {fileID: 10210, guid: 0000000000000000e000000000000000, type: 0} + m_Mesh1: {fileID: 0} + m_Mesh2: {fileID: 0} + m_Mesh3: {fileID: 0} + m_MaskInteraction: 0 +--- !u!1 &7276764443775147245 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 7276764443775147242} + - component: {fileID: 7276764443775147240} + - component: {fileID: 7276764443775147243} + m_Layer: 0 + m_Name: RainbowLines + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &7276764443775147242 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 7276764443775147245} + m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} + m_LocalPosition: {x: 0, y: 0, z: 0} + m_LocalScale: {x: 1, y: 1, z: 1} + m_Children: [] + m_Father: {fileID: 7276764443248859405} + m_RootOrder: 0 + m_LocalEulerAnglesHint: {x: -90, y: 0, z: 0} +--- !u!198 &7276764443775147240 +ParticleSystem: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 7276764443775147245} + serializedVersion: 6 + lengthInSec: 5 + simulationSpeed: 1 + stopAction: 0 + cullingMode: 0 + ringBufferMode: 0 + ringBufferLoopRange: {x: 0, y: 1} + looping: 0 + prewarm: 0 + playOnAwake: 0 + useUnscaledTime: 0 + autoRandomSeed: 1 + useRigidbodyForVelocity: 1 + startDelay: + serializedVersion: 2 + minMaxState: 0 + scalar: 0 + minScalar: 0 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + moveWithTransform: 0 + moveWithCustomTransform: {fileID: 0} + scalingMode: 1 + randomSeed: 0 + InitialModule: + serializedVersion: 3 + enabled: 1 + startLifetime: + serializedVersion: 2 + minMaxState: 3 + scalar: 2 + minScalar: 0.5 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + startSpeed: + serializedVersion: 2 + minMaxState: 3 + scalar: 40 + minScalar: 20 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + startColor: + serializedVersion: 2 + minMaxState: 4 + minColor: {r: 1, g: 1, b: 1, a: 1} + maxColor: {r: 1, g: 1, b: 1, a: 1} + maxGradient: + serializedVersion: 2 + key0: {r: 1, g: 1, b: 1, a: 1} + key1: {r: 1, g: 0, b: 0, a: 1} + key2: {r: 0, g: 0.6912031, b: 1, a: 1} + key3: {r: 0, g: 1, b: 0.016950846, a: 0} + key4: {r: 1, g: 0.99501103, b: 0, a: 0} + key5: {r: 1, g: 1, b: 1, a: 0} + key6: {r: 0, g: 0, b: 0, a: 0} + key7: {r: 0, g: 0, b: 0, a: 0} + ctime0: 0 + ctime1: 10987 + ctime2: 28720 + ctime3: 42020 + ctime4: 53199 + ctime5: 65535 + ctime6: 0 + ctime7: 0 + atime0: 0 + atime1: 65535 + atime2: 65535 + atime3: 0 + atime4: 0 + atime5: 0 + atime6: 0 + atime7: 0 + m_Mode: 0 + m_NumColorKeys: 6 + m_NumAlphaKeys: 2 + minGradient: + serializedVersion: 2 + key0: {r: 1, g: 1, b: 1, a: 1} + key1: {r: 1, g: 1, b: 1, a: 1} + key2: {r: 0, g: 0, b: 0, a: 0} + key3: {r: 0, g: 0, b: 0, a: 0} + key4: {r: 0, g: 0, b: 0, a: 0} + key5: {r: 0, g: 0, b: 0, a: 0} + key6: {r: 0, g: 0, b: 0, a: 0} + key7: {r: 0, g: 0, b: 0, a: 0} + ctime0: 0 + ctime1: 65535 + ctime2: 0 + ctime3: 0 + ctime4: 0 + ctime5: 0 + ctime6: 0 + ctime7: 0 + atime0: 0 + atime1: 65535 + atime2: 0 + atime3: 0 + atime4: 0 + atime5: 0 + atime6: 0 + atime7: 0 + m_Mode: 0 + m_NumColorKeys: 2 + m_NumAlphaKeys: 2 + startSize: + serializedVersion: 2 + minMaxState: 0 + scalar: 0.25 + minScalar: 1 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + startSizeY: + serializedVersion: 2 + minMaxState: 0 + scalar: 1 + minScalar: 1 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + startSizeZ: + serializedVersion: 2 + minMaxState: 0 + scalar: 1 + minScalar: 1 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + startRotationX: + serializedVersion: 2 + minMaxState: 3 + scalar: 0 + minScalar: 6.283185 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + startRotationY: + serializedVersion: 2 + minMaxState: 3 + scalar: 0 + minScalar: 6.283185 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + startRotation: + serializedVersion: 2 + minMaxState: 3 + scalar: 0 + minScalar: 6.283185 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + randomizeRotationDirection: 0 + maxNumParticles: 1000 + size3D: 0 + rotation3D: 1 + gravityModifier: + serializedVersion: 2 + minMaxState: 0 + scalar: 5 + minScalar: 0 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + ShapeModule: + serializedVersion: 6 + enabled: 1 + type: 4 + angle: 25 + length: 5 + boxThickness: {x: 0, y: 0, z: 0} + radiusThickness: 1 + donutRadius: 0.2 + m_Position: {x: 0, y: 0, z: 0} + m_Rotation: {x: 0, y: 0, z: 0} + m_Scale: {x: 1, y: 1, z: 1} + placementMode: 0 + m_MeshMaterialIndex: 0 + m_MeshNormalOffset: 0 + m_MeshSpawn: + mode: 0 + spread: 0 + speed: + serializedVersion: 2 + minMaxState: 0 + scalar: 1 + minScalar: 1 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + m_Mesh: {fileID: 0} + m_MeshRenderer: {fileID: 0} + m_SkinnedMeshRenderer: {fileID: 0} + m_Sprite: {fileID: 0} + m_SpriteRenderer: {fileID: 0} + m_UseMeshMaterialIndex: 0 + m_UseMeshColors: 1 + alignToDirection: 0 + m_Texture: {fileID: 0} + m_TextureClipChannel: 3 + m_TextureClipThreshold: 0 + m_TextureUVChannel: 0 + m_TextureColorAffectsParticles: 1 + m_TextureAlphaAffectsParticles: 1 + m_TextureBilinearFiltering: 0 + randomDirectionAmount: 0 + sphericalDirectionAmount: 0 + randomPositionAmount: 0 + radius: + value: 1 + mode: 0 + spread: 0 + speed: + serializedVersion: 2 + minMaxState: 0 + scalar: 1 + minScalar: 1 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + arc: + value: 360 + mode: 3 + spread: 0 + speed: + serializedVersion: 2 + minMaxState: 0 + scalar: 1 + minScalar: 1 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + EmissionModule: + enabled: 1 + serializedVersion: 4 + rateOverTime: + serializedVersion: 2 + minMaxState: 0 + scalar: 0 + minScalar: 10 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + rateOverDistance: + serializedVersion: 2 + minMaxState: 0 + scalar: 0 + minScalar: 0 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + m_BurstCount: 1 + m_Bursts: + - serializedVersion: 2 + time: 0 + countCurve: + serializedVersion: 2 + minMaxState: 0 + scalar: 10 + minScalar: 30 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0 + outWeight: 0 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0 + outWeight: 0 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0 + outWeight: 0 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0 + outWeight: 0 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + cycleCount: 1 + repeatInterval: 0.01 + probability: 1 + SizeModule: + enabled: 1 + curve: + serializedVersion: 2 + minMaxState: 1 + scalar: 1 + minScalar: 1 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 13.976815 + outSlope: 13.976815 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.15999804 + - serializedVersion: 3 + time: 0.10638428 + value: 0.99596786 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 0.40852404 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0 + outWeight: 0 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: -3.858006 + outSlope: -3.858006 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.10072173 + outWeight: 0 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + y: + serializedVersion: 2 + minMaxState: 1 + scalar: 1 + minScalar: 1 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 1 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 1 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + z: + serializedVersion: 2 + minMaxState: 1 + scalar: 1 + minScalar: 1 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 1 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 1 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + separateAxes: 0 + RotationModule: + enabled: 1 + x: + serializedVersion: 2 + minMaxState: 3 + scalar: -3.1415925 + minScalar: 3.1415925 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + y: + serializedVersion: 2 + minMaxState: 3 + scalar: -3.1415925 + minScalar: 3.1415925 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + curve: + serializedVersion: 2 + minMaxState: 3 + scalar: 3.1415925 + minScalar: -3.1415925 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + separateAxes: 1 + ColorModule: + enabled: 0 + gradient: + serializedVersion: 2 + minMaxState: 1 + minColor: {r: 1, g: 1, b: 1, a: 1} + maxColor: {r: 1, g: 1, b: 1, a: 1} + maxGradient: + serializedVersion: 2 + key0: {r: 1, g: 1, b: 1, a: 1} + key1: {r: 1, g: 1, b: 1, a: 1} + key2: {r: 0, g: 0, b: 0, a: 0} + key3: {r: 0, g: 0, b: 0, a: 0} + key4: {r: 0, g: 0, b: 0, a: 0} + key5: {r: 0, g: 0, b: 0, a: 0} + key6: {r: 0, g: 0, b: 0, a: 0} + key7: {r: 0, g: 0, b: 0, a: 0} + ctime0: 0 + ctime1: 65535 + ctime2: 0 + ctime3: 0 + ctime4: 0 + ctime5: 0 + ctime6: 0 + ctime7: 0 + atime0: 0 + atime1: 65535 + atime2: 0 + atime3: 0 + atime4: 0 + atime5: 0 + atime6: 0 + atime7: 0 + m_Mode: 0 + m_NumColorKeys: 2 + m_NumAlphaKeys: 2 + minGradient: + serializedVersion: 2 + key0: {r: 1, g: 1, b: 1, a: 1} + key1: {r: 1, g: 1, b: 1, a: 1} + key2: {r: 0, g: 0, b: 0, a: 0} + key3: {r: 0, g: 0, b: 0, a: 0} + key4: {r: 0, g: 0, b: 0, a: 0} + key5: {r: 0, g: 0, b: 0, a: 0} + key6: {r: 0, g: 0, b: 0, a: 0} + key7: {r: 0, g: 0, b: 0, a: 0} + ctime0: 0 + ctime1: 65535 + ctime2: 0 + ctime3: 0 + ctime4: 0 + ctime5: 0 + ctime6: 0 + ctime7: 0 + atime0: 0 + atime1: 65535 + atime2: 0 + atime3: 0 + atime4: 0 + atime5: 0 + atime6: 0 + atime7: 0 + m_Mode: 0 + m_NumColorKeys: 2 + m_NumAlphaKeys: 2 + UVModule: + enabled: 0 + mode: 0 + timeMode: 0 + fps: 30 + frameOverTime: + serializedVersion: 2 + minMaxState: 1 + scalar: 0.9999 + minScalar: 0.9999 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 1 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 1 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + startFrame: + serializedVersion: 2 + minMaxState: 0 + scalar: 0 + minScalar: 0 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + speedRange: {x: 0, y: 1} + tilesX: 1 + tilesY: 1 + animationType: 0 + rowIndex: 0 + cycles: 1 + uvChannelMask: -1 + randomRow: 1 + sprites: + - sprite: {fileID: 0} + flipU: 0 + flipV: 0 + VelocityModule: + enabled: 0 + x: + serializedVersion: 2 + minMaxState: 0 + scalar: 0 + minScalar: 0 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + y: + serializedVersion: 2 + minMaxState: 0 + scalar: 0 + minScalar: 0 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + z: + serializedVersion: 2 + minMaxState: 0 + scalar: 0 + minScalar: 0 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + orbitalX: + serializedVersion: 2 + minMaxState: 0 + scalar: 0 + minScalar: 0 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + orbitalY: + serializedVersion: 2 + minMaxState: 0 + scalar: 0 + minScalar: 0 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + orbitalZ: + serializedVersion: 2 + minMaxState: 0 + scalar: 0 + minScalar: 0 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + orbitalOffsetX: + serializedVersion: 2 + minMaxState: 0 + scalar: 0 + minScalar: 0 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + orbitalOffsetY: + serializedVersion: 2 + minMaxState: 0 + scalar: 0 + minScalar: 0 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + orbitalOffsetZ: + serializedVersion: 2 + minMaxState: 0 + scalar: 0 + minScalar: 0 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + radial: + serializedVersion: 2 + minMaxState: 0 + scalar: 0 + minScalar: 0 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + speedModifier: + serializedVersion: 2 + minMaxState: 0 + scalar: 1 + minScalar: 1 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + inWorldSpace: 0 + InheritVelocityModule: + enabled: 0 + m_Mode: 0 + m_Curve: + serializedVersion: 2 + minMaxState: 0 + scalar: 0 + minScalar: 0 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + ForceModule: + enabled: 0 + x: + serializedVersion: 2 + minMaxState: 0 + scalar: 0 + minScalar: 0 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + y: + serializedVersion: 2 + minMaxState: 0 + scalar: 0 + minScalar: 0 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + z: + serializedVersion: 2 + minMaxState: 0 + scalar: 0 + minScalar: 0 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + inWorldSpace: 0 + randomizePerFrame: 0 + ExternalForcesModule: + enabled: 0 + multiplier: 1 + influenceFilter: 0 + influenceMask: + serializedVersion: 2 + m_Bits: 4294967295 + influenceList: [] + ClampVelocityModule: + enabled: 0 + x: + serializedVersion: 2 + minMaxState: 0 + scalar: 1 + minScalar: 1 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + y: + serializedVersion: 2 + minMaxState: 0 + scalar: 1 + minScalar: 1 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + z: + serializedVersion: 2 + minMaxState: 0 + scalar: 1 + minScalar: 1 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + magnitude: + serializedVersion: 2 + minMaxState: 0 + scalar: 1 + minScalar: 1 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + separateAxis: 0 + inWorldSpace: 0 + multiplyDragByParticleSize: 1 + multiplyDragByParticleVelocity: 1 + dampen: 0 + drag: + serializedVersion: 2 + minMaxState: 0 + scalar: 0 + minScalar: 0 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + NoiseModule: + enabled: 0 + strength: + serializedVersion: 2 + minMaxState: 0 + scalar: 1 + minScalar: 1 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + strengthY: + serializedVersion: 2 + minMaxState: 0 + scalar: 1 + minScalar: 1 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + strengthZ: + serializedVersion: 2 + minMaxState: 0 + scalar: 1 + minScalar: 1 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + separateAxes: 0 + frequency: 0.5 + damping: 1 + octaves: 1 + octaveMultiplier: 0.5 + octaveScale: 2 + quality: 2 + scrollSpeed: + serializedVersion: 2 + minMaxState: 0 + scalar: 0 + minScalar: 0 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + remap: + serializedVersion: 2 + minMaxState: 1 + scalar: 1 + minScalar: 1 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 1 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 1 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + remapY: + serializedVersion: 2 + minMaxState: 1 + scalar: 1 + minScalar: 1 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 1 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 1 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + remapZ: + serializedVersion: 2 + minMaxState: 1 + scalar: 1 + minScalar: 1 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 1 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 1 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + remapEnabled: 0 + positionAmount: + serializedVersion: 2 + minMaxState: 0 + scalar: 1 + minScalar: 1 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + rotationAmount: + serializedVersion: 2 + minMaxState: 0 + scalar: 0 + minScalar: 0 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + sizeAmount: + serializedVersion: 2 + minMaxState: 0 + scalar: 0 + minScalar: 0 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + SizeBySpeedModule: + enabled: 0 + curve: + serializedVersion: 2 + minMaxState: 1 + scalar: 1 + minScalar: 1 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 1 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 1 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + y: + serializedVersion: 2 + minMaxState: 1 + scalar: 1 + minScalar: 1 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 1 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 1 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + z: + serializedVersion: 2 + minMaxState: 1 + scalar: 1 + minScalar: 1 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 1 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 1 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + range: {x: 0, y: 1} + separateAxes: 0 + RotationBySpeedModule: + enabled: 0 + x: + serializedVersion: 2 + minMaxState: 0 + scalar: 0 + minScalar: 0 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + y: + serializedVersion: 2 + minMaxState: 0 + scalar: 0 + minScalar: 0 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + curve: + serializedVersion: 2 + minMaxState: 0 + scalar: 0.7853982 + minScalar: 0.7853982 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + separateAxes: 0 + range: {x: 0, y: 1} + ColorBySpeedModule: + enabled: 0 + gradient: + serializedVersion: 2 + minMaxState: 1 + minColor: {r: 1, g: 1, b: 1, a: 1} + maxColor: {r: 1, g: 1, b: 1, a: 1} + maxGradient: + serializedVersion: 2 + key0: {r: 1, g: 1, b: 1, a: 1} + key1: {r: 1, g: 1, b: 1, a: 1} + key2: {r: 0, g: 0, b: 0, a: 0} + key3: {r: 0, g: 0, b: 0, a: 0} + key4: {r: 0, g: 0, b: 0, a: 0} + key5: {r: 0, g: 0, b: 0, a: 0} + key6: {r: 0, g: 0, b: 0, a: 0} + key7: {r: 0, g: 0, b: 0, a: 0} + ctime0: 0 + ctime1: 65535 + ctime2: 0 + ctime3: 0 + ctime4: 0 + ctime5: 0 + ctime6: 0 + ctime7: 0 + atime0: 0 + atime1: 65535 + atime2: 0 + atime3: 0 + atime4: 0 + atime5: 0 + atime6: 0 + atime7: 0 + m_Mode: 0 + m_NumColorKeys: 2 + m_NumAlphaKeys: 2 + minGradient: + serializedVersion: 2 + key0: {r: 1, g: 1, b: 1, a: 1} + key1: {r: 1, g: 1, b: 1, a: 1} + key2: {r: 0, g: 0, b: 0, a: 0} + key3: {r: 0, g: 0, b: 0, a: 0} + key4: {r: 0, g: 0, b: 0, a: 0} + key5: {r: 0, g: 0, b: 0, a: 0} + key6: {r: 0, g: 0, b: 0, a: 0} + key7: {r: 0, g: 0, b: 0, a: 0} + ctime0: 0 + ctime1: 65535 + ctime2: 0 + ctime3: 0 + ctime4: 0 + ctime5: 0 + ctime6: 0 + ctime7: 0 + atime0: 0 + atime1: 65535 + atime2: 0 + atime3: 0 + atime4: 0 + atime5: 0 + atime6: 0 + atime7: 0 + m_Mode: 0 + m_NumColorKeys: 2 + m_NumAlphaKeys: 2 + range: {x: 0, y: 1} + CollisionModule: + enabled: 0 + serializedVersion: 3 + type: 0 + collisionMode: 0 + colliderForce: 0 + multiplyColliderForceByParticleSize: 0 + multiplyColliderForceByParticleSpeed: 0 + multiplyColliderForceByCollisionAngle: 1 + plane0: {fileID: 0} + plane1: {fileID: 0} + plane2: {fileID: 0} + plane3: {fileID: 0} + plane4: {fileID: 0} + plane5: {fileID: 0} + m_Dampen: + serializedVersion: 2 + minMaxState: 0 + scalar: 0 + minScalar: 0 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + m_Bounce: + serializedVersion: 2 + minMaxState: 0 + scalar: 1 + minScalar: 1 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + m_EnergyLossOnCollision: + serializedVersion: 2 + minMaxState: 0 + scalar: 0 + minScalar: 0 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minKillSpeed: 0 + maxKillSpeed: 10000 + radiusScale: 1 + collidesWith: + serializedVersion: 2 + m_Bits: 4294967295 + maxCollisionShapes: 256 + quality: 0 + voxelSize: 0.5 + collisionMessages: 0 + collidesWithDynamic: 1 + interiorCollisions: 0 + TriggerModule: + enabled: 0 + collisionShape0: {fileID: 0} + collisionShape1: {fileID: 0} + collisionShape2: {fileID: 0} + collisionShape3: {fileID: 0} + collisionShape4: {fileID: 0} + collisionShape5: {fileID: 0} + inside: 1 + outside: 0 + enter: 0 + exit: 0 + radiusScale: 1 + SubModule: + serializedVersion: 2 + enabled: 0 + subEmitters: + - serializedVersion: 3 + emitter: {fileID: 0} + type: 0 + properties: 0 + emitProbability: 1 + LightsModule: + enabled: 0 + ratio: 0 + light: {fileID: 0} + randomDistribution: 1 + color: 1 + range: 1 + intensity: 1 + rangeCurve: + serializedVersion: 2 + minMaxState: 0 + scalar: 1 + minScalar: 1 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + intensityCurve: + serializedVersion: 2 + minMaxState: 0 + scalar: 1 + minScalar: 1 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + maxLights: 20 + TrailModule: + enabled: 1 + mode: 0 + ratio: 1 + lifetime: + serializedVersion: 2 + minMaxState: 0 + scalar: 1 + minScalar: 1 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minVertexDistance: 0.2 + textureMode: 0 + ribbonCount: 1 + shadowBias: 0.5 + worldSpace: 0 + dieWithParticles: 1 + sizeAffectsWidth: 1 + sizeAffectsLifetime: 0 + inheritParticleColor: 1 + generateLightingData: 0 + splitSubEmitterRibbons: 0 + attachRibbonsToTransform: 0 + colorOverLifetime: + serializedVersion: 2 + minMaxState: 0 + minColor: {r: 1, g: 1, b: 1, a: 1} + maxColor: {r: 1, g: 1, b: 1, a: 1} + maxGradient: + serializedVersion: 2 + key0: {r: 1, g: 1, b: 1, a: 1} + key1: {r: 1, g: 1, b: 1, a: 1} + key2: {r: 0, g: 0, b: 0, a: 0} + key3: {r: 0, g: 0, b: 0, a: 0} + key4: {r: 0, g: 0, b: 0, a: 0} + key5: {r: 0, g: 0, b: 0, a: 0} + key6: {r: 0, g: 0, b: 0, a: 0} + key7: {r: 0, g: 0, b: 0, a: 0} + ctime0: 0 + ctime1: 65535 + ctime2: 0 + ctime3: 0 + ctime4: 0 + ctime5: 0 + ctime6: 0 + ctime7: 0 + atime0: 0 + atime1: 65535 + atime2: 0 + atime3: 0 + atime4: 0 + atime5: 0 + atime6: 0 + atime7: 0 + m_Mode: 0 + m_NumColorKeys: 2 + m_NumAlphaKeys: 2 + minGradient: + serializedVersion: 2 + key0: {r: 1, g: 1, b: 1, a: 1} + key1: {r: 1, g: 1, b: 1, a: 1} + key2: {r: 0, g: 0, b: 0, a: 0} + key3: {r: 0, g: 0, b: 0, a: 0} + key4: {r: 0, g: 0, b: 0, a: 0} + key5: {r: 0, g: 0, b: 0, a: 0} + key6: {r: 0, g: 0, b: 0, a: 0} + key7: {r: 0, g: 0, b: 0, a: 0} + ctime0: 0 + ctime1: 65535 + ctime2: 0 + ctime3: 0 + ctime4: 0 + ctime5: 0 + ctime6: 0 + ctime7: 0 + atime0: 0 + atime1: 65535 + atime2: 0 + atime3: 0 + atime4: 0 + atime5: 0 + atime6: 0 + atime7: 0 + m_Mode: 0 + m_NumColorKeys: 2 + m_NumAlphaKeys: 2 + widthOverTrail: + serializedVersion: 2 + minMaxState: 1 + scalar: 1 + minScalar: 1 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 3.6766129 + outSlope: 3.6766129 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.4901961 + - serializedVersion: 3 + time: 0.21702127 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: -1.0711783 + outSlope: -1.0711783 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.12499997 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + colorOverTrail: + serializedVersion: 2 + minMaxState: 0 + minColor: {r: 1, g: 1, b: 1, a: 1} + maxColor: {r: 1, g: 1, b: 1, a: 1} + maxGradient: + serializedVersion: 2 + key0: {r: 1, g: 1, b: 1, a: 1} + key1: {r: 1, g: 1, b: 1, a: 1} + key2: {r: 0, g: 0, b: 0, a: 0} + key3: {r: 0, g: 0, b: 0, a: 0} + key4: {r: 0, g: 0, b: 0, a: 0} + key5: {r: 0, g: 0, b: 0, a: 0} + key6: {r: 0, g: 0, b: 0, a: 0} + key7: {r: 0, g: 0, b: 0, a: 0} + ctime0: 0 + ctime1: 65535 + ctime2: 0 + ctime3: 0 + ctime4: 0 + ctime5: 0 + ctime6: 0 + ctime7: 0 + atime0: 0 + atime1: 65535 + atime2: 0 + atime3: 0 + atime4: 0 + atime5: 0 + atime6: 0 + atime7: 0 + m_Mode: 0 + m_NumColorKeys: 2 + m_NumAlphaKeys: 2 + minGradient: + serializedVersion: 2 + key0: {r: 1, g: 1, b: 1, a: 1} + key1: {r: 1, g: 1, b: 1, a: 1} + key2: {r: 0, g: 0, b: 0, a: 0} + key3: {r: 0, g: 0, b: 0, a: 0} + key4: {r: 0, g: 0, b: 0, a: 0} + key5: {r: 0, g: 0, b: 0, a: 0} + key6: {r: 0, g: 0, b: 0, a: 0} + key7: {r: 0, g: 0, b: 0, a: 0} + ctime0: 0 + ctime1: 65535 + ctime2: 0 + ctime3: 0 + ctime4: 0 + ctime5: 0 + ctime6: 0 + ctime7: 0 + atime0: 0 + atime1: 65535 + atime2: 0 + atime3: 0 + atime4: 0 + atime5: 0 + atime6: 0 + atime7: 0 + m_Mode: 0 + m_NumColorKeys: 2 + m_NumAlphaKeys: 2 + CustomDataModule: + enabled: 0 + mode0: 0 + vectorComponentCount0: 4 + color0: + serializedVersion: 2 + minMaxState: 0 + minColor: {r: 1, g: 1, b: 1, a: 1} + maxColor: {r: 1, g: 1, b: 1, a: 1} + maxGradient: + serializedVersion: 2 + key0: {r: 1, g: 1, b: 1, a: 1} + key1: {r: 1, g: 1, b: 1, a: 1} + key2: {r: 0, g: 0, b: 0, a: 0} + key3: {r: 0, g: 0, b: 0, a: 0} + key4: {r: 0, g: 0, b: 0, a: 0} + key5: {r: 0, g: 0, b: 0, a: 0} + key6: {r: 0, g: 0, b: 0, a: 0} + key7: {r: 0, g: 0, b: 0, a: 0} + ctime0: 0 + ctime1: 65535 + ctime2: 0 + ctime3: 0 + ctime4: 0 + ctime5: 0 + ctime6: 0 + ctime7: 0 + atime0: 0 + atime1: 65535 + atime2: 0 + atime3: 0 + atime4: 0 + atime5: 0 + atime6: 0 + atime7: 0 + m_Mode: 0 + m_NumColorKeys: 2 + m_NumAlphaKeys: 2 + minGradient: + serializedVersion: 2 + key0: {r: 1, g: 1, b: 1, a: 1} + key1: {r: 1, g: 1, b: 1, a: 1} + key2: {r: 0, g: 0, b: 0, a: 0} + key3: {r: 0, g: 0, b: 0, a: 0} + key4: {r: 0, g: 0, b: 0, a: 0} + key5: {r: 0, g: 0, b: 0, a: 0} + key6: {r: 0, g: 0, b: 0, a: 0} + key7: {r: 0, g: 0, b: 0, a: 0} + ctime0: 0 + ctime1: 65535 + ctime2: 0 + ctime3: 0 + ctime4: 0 + ctime5: 0 + ctime6: 0 + ctime7: 0 + atime0: 0 + atime1: 65535 + atime2: 0 + atime3: 0 + atime4: 0 + atime5: 0 + atime6: 0 + atime7: 0 + m_Mode: 0 + m_NumColorKeys: 2 + m_NumAlphaKeys: 2 + colorLabel0: Color + vector0_0: + serializedVersion: 2 + minMaxState: 0 + scalar: 0 + minScalar: 0 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + vectorLabel0_0: X + vector0_1: + serializedVersion: 2 + minMaxState: 0 + scalar: 0 + minScalar: 0 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + vectorLabel0_1: Y + vector0_2: + serializedVersion: 2 + minMaxState: 0 + scalar: 0 + minScalar: 0 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + vectorLabel0_2: Z + vector0_3: + serializedVersion: 2 + minMaxState: 0 + scalar: 0 + minScalar: 0 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + vectorLabel0_3: W + mode1: 0 + vectorComponentCount1: 4 + color1: + serializedVersion: 2 + minMaxState: 0 + minColor: {r: 1, g: 1, b: 1, a: 1} + maxColor: {r: 1, g: 1, b: 1, a: 1} + maxGradient: + serializedVersion: 2 + key0: {r: 1, g: 1, b: 1, a: 1} + key1: {r: 1, g: 1, b: 1, a: 1} + key2: {r: 0, g: 0, b: 0, a: 0} + key3: {r: 0, g: 0, b: 0, a: 0} + key4: {r: 0, g: 0, b: 0, a: 0} + key5: {r: 0, g: 0, b: 0, a: 0} + key6: {r: 0, g: 0, b: 0, a: 0} + key7: {r: 0, g: 0, b: 0, a: 0} + ctime0: 0 + ctime1: 65535 + ctime2: 0 + ctime3: 0 + ctime4: 0 + ctime5: 0 + ctime6: 0 + ctime7: 0 + atime0: 0 + atime1: 65535 + atime2: 0 + atime3: 0 + atime4: 0 + atime5: 0 + atime6: 0 + atime7: 0 + m_Mode: 0 + m_NumColorKeys: 2 + m_NumAlphaKeys: 2 + minGradient: + serializedVersion: 2 + key0: {r: 1, g: 1, b: 1, a: 1} + key1: {r: 1, g: 1, b: 1, a: 1} + key2: {r: 0, g: 0, b: 0, a: 0} + key3: {r: 0, g: 0, b: 0, a: 0} + key4: {r: 0, g: 0, b: 0, a: 0} + key5: {r: 0, g: 0, b: 0, a: 0} + key6: {r: 0, g: 0, b: 0, a: 0} + key7: {r: 0, g: 0, b: 0, a: 0} + ctime0: 0 + ctime1: 65535 + ctime2: 0 + ctime3: 0 + ctime4: 0 + ctime5: 0 + ctime6: 0 + ctime7: 0 + atime0: 0 + atime1: 65535 + atime2: 0 + atime3: 0 + atime4: 0 + atime5: 0 + atime6: 0 + atime7: 0 + m_Mode: 0 + m_NumColorKeys: 2 + m_NumAlphaKeys: 2 + colorLabel1: Color + vector1_0: + serializedVersion: 2 + minMaxState: 0 + scalar: 0 + minScalar: 0 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + vectorLabel1_0: X + vector1_1: + serializedVersion: 2 + minMaxState: 0 + scalar: 0 + minScalar: 0 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + vectorLabel1_1: Y + vector1_2: + serializedVersion: 2 + minMaxState: 0 + scalar: 0 + minScalar: 0 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + vectorLabel1_2: Z + vector1_3: + serializedVersion: 2 + minMaxState: 0 + scalar: 0 + minScalar: 0 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + vectorLabel1_3: W +--- !u!199 &7276764443775147243 +ParticleSystemRenderer: + serializedVersion: 6 + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 7276764443775147245} + m_Enabled: 1 + m_CastShadows: 0 + m_ReceiveShadows: 0 + m_DynamicOccludee: 1 + m_MotionVectors: 1 + m_LightProbeUsage: 0 + m_ReflectionProbeUsage: 0 + m_RenderingLayerMask: 1 + m_RendererPriority: 0 + m_Materials: + - {fileID: 10306, guid: 0000000000000000f000000000000000, type: 0} + - {fileID: 10306, guid: 0000000000000000f000000000000000, type: 0} + m_StaticBatchInfo: + firstSubMesh: 0 + subMeshCount: 0 + m_StaticBatchRoot: {fileID: 0} + m_ProbeAnchor: {fileID: 0} + m_LightProbeVolumeOverride: {fileID: 0} + m_ScaleInLightmap: 1 + m_PreserveUVs: 0 + m_IgnoreNormalsForChartDetection: 0 + m_ImportantGI: 0 + m_StitchLightmapSeams: 0 + m_SelectedEditorRenderState: 3 + m_MinimumChartSize: 4 + m_AutoUVMaxDistance: 0.5 + m_AutoUVMaxAngle: 89 + m_LightmapParameters: {fileID: 0} + m_SortingLayerID: 0 + m_SortingLayer: 0 + m_SortingOrder: 0 + m_RenderMode: 5 + m_SortMode: 0 + m_MinParticleSize: 0 + m_MaxParticleSize: 0.5 + m_CameraVelocityScale: 0 + m_VelocityScale: 0 + m_LengthScale: 2 + m_SortingFudge: 0 + m_NormalDirection: 1 + m_ShadowBias: 0 + m_RenderAlignment: 0 + m_Pivot: {x: 0, y: 0, z: 0} + m_Flip: {x: 0, y: 0, z: 0} + m_UseCustomVertexStreams: 0 + m_EnableGPUInstancing: 1 + m_ApplyActiveColorSpace: 1 + m_AllowRoll: 1 + m_VertexStreams: 00010304 + m_Mesh: {fileID: 10210, guid: 0000000000000000e000000000000000, type: 0} + m_Mesh1: {fileID: 0} + m_Mesh2: {fileID: 0} + m_Mesh3: {fileID: 0} + m_MaskInteraction: 0 diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/Kart/Particle Prefabs/ConfettiCelebration.prefab.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/Kart/Particle Prefabs/ConfettiCelebration.prefab.meta" new file mode 100644 index 00000000..db94eda7 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/Kart/Particle Prefabs/ConfettiCelebration.prefab.meta" @@ -0,0 +1,7 @@ +fileFormatVersion: 2 +guid: 2f5d313409ec64adc9647e645f3fd9f2 +PrefabImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/Kart/SpeedPad.prefab" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/Kart/SpeedPad.prefab" new file mode 100644 index 00000000..d432bfc2 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/Kart/SpeedPad.prefab" @@ -0,0 +1,312 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!1 &2047336664104694665 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 2047336664104694662} + - component: {fileID: 2047336664104694661} + - component: {fileID: 2047336664104694660} + - component: {fileID: 2047336664104694667} + - component: {fileID: 2047336664104694666} + m_Layer: 0 + m_Name: SpeedPad + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &2047336664104694662 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 2047336664104694665} + m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} + m_LocalPosition: {x: 14, y: 0.2500006, z: 7} + m_LocalScale: {x: 1, y: 1, z: 1} + m_Children: + - {fileID: 2047336663364935357} + - {fileID: 3435785214996005073} + - {fileID: 379603495342814019} + m_Father: {fileID: 0} + m_RootOrder: 0 + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!33 &2047336664104694661 +MeshFilter: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 2047336664104694665} + m_Mesh: {fileID: 10202, guid: 0000000000000000e000000000000000, type: 0} +--- !u!23 &2047336664104694660 +MeshRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 2047336664104694665} + m_Enabled: 0 + m_CastShadows: 1 + m_ReceiveShadows: 1 + m_DynamicOccludee: 1 + m_MotionVectors: 1 + m_LightProbeUsage: 1 + m_ReflectionProbeUsage: 1 + m_RenderingLayerMask: 1 + m_RendererPriority: 0 + m_Materials: + - {fileID: 10303, guid: 0000000000000000f000000000000000, type: 0} + m_StaticBatchInfo: + firstSubMesh: 0 + subMeshCount: 0 + m_StaticBatchRoot: {fileID: 0} + m_ProbeAnchor: {fileID: 0} + m_LightProbeVolumeOverride: {fileID: 0} + m_ScaleInLightmap: 1 + m_PreserveUVs: 0 + m_IgnoreNormalsForChartDetection: 0 + m_ImportantGI: 0 + m_StitchLightmapSeams: 0 + m_SelectedEditorRenderState: 3 + m_MinimumChartSize: 4 + m_AutoUVMaxDistance: 0.5 + m_AutoUVMaxAngle: 89 + m_LightmapParameters: {fileID: 0} + m_SortingLayerID: 0 + m_SortingLayer: 0 + m_SortingOrder: 0 +--- !u!65 &2047336664104694667 +BoxCollider: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 2047336664104694665} + m_Material: {fileID: 0} + m_IsTrigger: 1 + m_Enabled: 1 + serializedVersion: 2 + m_Size: {x: 1, y: 1, z: 1} + m_Center: {x: 0, y: 0, z: 0} +--- !u!114 &2047336664104694666 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 2047336664104694665} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 12eaaa38c61964260ae47a6809980a60, type: 3} + m_Name: + m_EditorClassIdentifier: + boostStats: + modifiers: + acceleration: 5 + braking: 1 + coastingDrag: 1 + gravity: 1 + grip: 1 + hopHeight: 1 + reverseAcceleration: 1 + reverseSpeed: 1 + topSpeed: 5 + turnSpeed: 1 + weight: 1 + duration: 1 +--- !u!1001 &379603495342418371 +PrefabInstance: + m_ObjectHideFlags: 0 + serializedVersion: 2 + m_Modification: + m_TransformParent: {fileID: 2047336664104694662} + m_Modifications: + - target: {fileID: 100000, guid: 304e2fac27c3c42fc9b584187f281fcb, type: 3} + propertyPath: m_Name + value: SpeedArrow (2) + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 304e2fac27c3c42fc9b584187f281fcb, type: 3} + propertyPath: m_LocalPosition.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 304e2fac27c3c42fc9b584187f281fcb, type: 3} + propertyPath: m_LocalPosition.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 304e2fac27c3c42fc9b584187f281fcb, type: 3} + propertyPath: m_LocalPosition.z + value: 0.5 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 304e2fac27c3c42fc9b584187f281fcb, type: 3} + propertyPath: m_LocalRotation.x + value: -0 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 304e2fac27c3c42fc9b584187f281fcb, type: 3} + propertyPath: m_LocalRotation.y + value: -0 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 304e2fac27c3c42fc9b584187f281fcb, type: 3} + propertyPath: m_LocalRotation.z + value: -0 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 304e2fac27c3c42fc9b584187f281fcb, type: 3} + propertyPath: m_LocalRotation.w + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 304e2fac27c3c42fc9b584187f281fcb, type: 3} + propertyPath: m_RootOrder + value: 2 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 304e2fac27c3c42fc9b584187f281fcb, type: 3} + propertyPath: m_LocalEulerAnglesHint.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 304e2fac27c3c42fc9b584187f281fcb, type: 3} + propertyPath: m_LocalEulerAnglesHint.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 304e2fac27c3c42fc9b584187f281fcb, type: 3} + propertyPath: m_LocalEulerAnglesHint.z + value: 0 + objectReference: {fileID: 0} + m_RemovedComponents: [] + m_SourcePrefab: {fileID: 100100000, guid: 304e2fac27c3c42fc9b584187f281fcb, type: 3} +--- !u!4 &379603495342814019 stripped +Transform: + m_CorrespondingSourceObject: {fileID: 400000, guid: 304e2fac27c3c42fc9b584187f281fcb, + type: 3} + m_PrefabInstance: {fileID: 379603495342418371} + m_PrefabAsset: {fileID: 0} +--- !u!1001 &2047336663365321789 +PrefabInstance: + m_ObjectHideFlags: 0 + serializedVersion: 2 + m_Modification: + m_TransformParent: {fileID: 2047336664104694662} + m_Modifications: + - target: {fileID: 100000, guid: 304e2fac27c3c42fc9b584187f281fcb, type: 3} + propertyPath: m_Name + value: SpeedArrow + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 304e2fac27c3c42fc9b584187f281fcb, type: 3} + propertyPath: m_LocalPosition.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 304e2fac27c3c42fc9b584187f281fcb, type: 3} + propertyPath: m_LocalPosition.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 304e2fac27c3c42fc9b584187f281fcb, type: 3} + propertyPath: m_LocalPosition.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 304e2fac27c3c42fc9b584187f281fcb, type: 3} + propertyPath: m_LocalRotation.x + value: -0 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 304e2fac27c3c42fc9b584187f281fcb, type: 3} + propertyPath: m_LocalRotation.y + value: -0 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 304e2fac27c3c42fc9b584187f281fcb, type: 3} + propertyPath: m_LocalRotation.z + value: -0 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 304e2fac27c3c42fc9b584187f281fcb, type: 3} + propertyPath: m_LocalRotation.w + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 304e2fac27c3c42fc9b584187f281fcb, type: 3} + propertyPath: m_RootOrder + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 304e2fac27c3c42fc9b584187f281fcb, type: 3} + propertyPath: m_LocalEulerAnglesHint.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 304e2fac27c3c42fc9b584187f281fcb, type: 3} + propertyPath: m_LocalEulerAnglesHint.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 304e2fac27c3c42fc9b584187f281fcb, type: 3} + propertyPath: m_LocalEulerAnglesHint.z + value: 0 + objectReference: {fileID: 0} + m_RemovedComponents: [] + m_SourcePrefab: {fileID: 100100000, guid: 304e2fac27c3c42fc9b584187f281fcb, type: 3} +--- !u!4 &2047336663364935357 stripped +Transform: + m_CorrespondingSourceObject: {fileID: 400000, guid: 304e2fac27c3c42fc9b584187f281fcb, + type: 3} + m_PrefabInstance: {fileID: 2047336663365321789} + m_PrefabAsset: {fileID: 0} +--- !u!1001 &3435785214996404817 +PrefabInstance: + m_ObjectHideFlags: 0 + serializedVersion: 2 + m_Modification: + m_TransformParent: {fileID: 2047336664104694662} + m_Modifications: + - target: {fileID: 100000, guid: 304e2fac27c3c42fc9b584187f281fcb, type: 3} + propertyPath: m_Name + value: SpeedArrow (1) + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 304e2fac27c3c42fc9b584187f281fcb, type: 3} + propertyPath: m_LocalPosition.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 304e2fac27c3c42fc9b584187f281fcb, type: 3} + propertyPath: m_LocalPosition.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 304e2fac27c3c42fc9b584187f281fcb, type: 3} + propertyPath: m_LocalPosition.z + value: -0.5 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 304e2fac27c3c42fc9b584187f281fcb, type: 3} + propertyPath: m_LocalRotation.x + value: -0 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 304e2fac27c3c42fc9b584187f281fcb, type: 3} + propertyPath: m_LocalRotation.y + value: -0 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 304e2fac27c3c42fc9b584187f281fcb, type: 3} + propertyPath: m_LocalRotation.z + value: -0 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 304e2fac27c3c42fc9b584187f281fcb, type: 3} + propertyPath: m_LocalRotation.w + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 304e2fac27c3c42fc9b584187f281fcb, type: 3} + propertyPath: m_RootOrder + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 304e2fac27c3c42fc9b584187f281fcb, type: 3} + propertyPath: m_LocalEulerAnglesHint.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 304e2fac27c3c42fc9b584187f281fcb, type: 3} + propertyPath: m_LocalEulerAnglesHint.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 400000, guid: 304e2fac27c3c42fc9b584187f281fcb, type: 3} + propertyPath: m_LocalEulerAnglesHint.z + value: 0 + objectReference: {fileID: 0} + m_RemovedComponents: [] + m_SourcePrefab: {fileID: 100100000, guid: 304e2fac27c3c42fc9b584187f281fcb, type: 3} +--- !u!4 &3435785214996005073 stripped +Transform: + m_CorrespondingSourceObject: {fileID: 400000, guid: 304e2fac27c3c42fc9b584187f281fcb, + type: 3} + m_PrefabInstance: {fileID: 3435785214996404817} + m_PrefabAsset: {fileID: 0} diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/Kart/SpeedPad.prefab.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/Kart/SpeedPad.prefab.meta" new file mode 100644 index 00000000..e30baff8 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/Kart/SpeedPad.prefab.meta" @@ -0,0 +1,7 @@ +fileFormatVersion: 2 +guid: ca718117a11f745b292c7dba21f42c00 +PrefabImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/Kart/Stylized Profiles.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/Kart/Stylized Profiles.meta" new file mode 100644 index 00000000..86ec4ca3 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/Kart/Stylized Profiles.meta" @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 7303de5fed95a1748bff0da09f327765 +folderAsset: yes +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/Kart/Stylized Profiles/Custom Profile.asset" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/Kart/Stylized Profiles/Custom Profile.asset" new file mode 100644 index 00000000..cd877f4a --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/Kart/Stylized Profiles/Custom Profile.asset" @@ -0,0 +1,1499 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!114 &11400000 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 8e6292b2c06870d4495f009f912b9600, type: 3} + m_Name: Custom Profile + m_EditorClassIdentifier: + settings: + - {fileID: 114714704474358142} + - {fileID: 114934171140021752} + - {fileID: 114119196609133974} + - {fileID: 114660337490018448} + - {fileID: 114175933221421406} +--- !u!114 &114119196609133974 +MonoBehaviour: + m_ObjectHideFlags: 3 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: adb84e30e02715445aeb9959894e3b4d, type: 3} + m_Name: ColorGrading + m_EditorClassIdentifier: + active: 1 + enabled: + overrideState: 1 + value: 1 + gradingMode: + overrideState: 0 + value: 1 + externalLut: + overrideState: 0 + value: {fileID: 0} + defaultState: 1 + tonemapper: + overrideState: 1 + value: 2 + toneCurveToeStrength: + overrideState: 0 + value: 0 + toneCurveToeLength: + overrideState: 0 + value: 0.5 + toneCurveShoulderStrength: + overrideState: 0 + value: 0 + toneCurveShoulderLength: + overrideState: 0 + value: 0.5 + toneCurveShoulderAngle: + overrideState: 0 + value: 0 + toneCurveGamma: + overrideState: 0 + value: 1 + ldrLut: + overrideState: 0 + value: {fileID: 0} + defaultState: 4 + ldrLutContribution: + overrideState: 0 + value: 1 + temperature: + overrideState: 0 + value: 0 + tint: + overrideState: 0 + value: 0 + colorFilter: + overrideState: 1 + value: {r: 1, g: 1, b: 1, a: 1} + hueShift: + overrideState: 0 + value: 0 + saturation: + overrideState: 0 + value: 44 + brightness: + overrideState: 0 + value: 0 + postExposure: + overrideState: 1 + value: 0 + contrast: + overrideState: 0 + value: 0 + mixerRedOutRedIn: + overrideState: 0 + value: 100 + mixerRedOutGreenIn: + overrideState: 0 + value: 0 + mixerRedOutBlueIn: + overrideState: 0 + value: 0 + mixerGreenOutRedIn: + overrideState: 0 + value: 0 + mixerGreenOutGreenIn: + overrideState: 0 + value: 100 + mixerGreenOutBlueIn: + overrideState: 0 + value: 0 + mixerBlueOutRedIn: + overrideState: 0 + value: 0 + mixerBlueOutGreenIn: + overrideState: 0 + value: 0 + mixerBlueOutBlueIn: + overrideState: 0 + value: 100 + lift: + overrideState: 1 + value: {x: 1, y: 1, z: 1, w: 0} + gamma: + overrideState: 1 + value: {x: 1, y: 1, z: 1, w: 0} + gain: + overrideState: 1 + value: {x: 1, y: 1, z: 1, w: 0} + masterCurve: + overrideState: 0 + value: + curve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 1 + outSlope: 1 + tangentMode: 0 + weightedMode: 0 + inWeight: 0 + outWeight: 0 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 1 + outSlope: 1 + tangentMode: 0 + weightedMode: 0 + inWeight: 0 + outWeight: 0 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + m_Loop: 0 + m_ZeroValue: 0 + m_Range: 1 + cachedData: + - 0 + - 0.0078125 + - 0.015625 + - 0.0234375 + - 0.03125 + - 0.0390625 + - 0.046875 + - 0.0546875 + - 0.0625 + - 0.0703125 + - 0.078125 + - 0.0859375 + - 0.09375 + - 0.1015625 + - 0.109375 + - 0.1171875 + - 0.125 + - 0.1328125 + - 0.140625 + - 0.1484375 + - 0.15625 + - 0.1640625 + - 0.171875 + - 0.1796875 + - 0.1875 + - 0.1953125 + - 0.203125 + - 0.2109375 + - 0.21875 + - 0.2265625 + - 0.234375 + - 0.2421875 + - 0.25 + - 0.2578125 + - 0.265625 + - 0.2734375 + - 0.28125 + - 0.2890625 + - 0.296875 + - 0.3046875 + - 0.3125 + - 0.3203125 + - 0.328125 + - 0.3359375 + - 0.34375 + - 0.3515625 + - 0.359375 + - 0.3671875 + - 0.375 + - 0.3828125 + - 0.390625 + - 0.3984375 + - 0.40625 + - 0.4140625 + - 0.421875 + - 0.4296875 + - 0.4375 + - 0.4453125 + - 0.453125 + - 0.4609375 + - 0.46875 + - 0.4765625 + - 0.484375 + - 0.4921875 + - 0.5 + - 0.5078125 + - 0.515625 + - 0.5234375 + - 0.53125 + - 0.5390625 + - 0.546875 + - 0.5546875 + - 0.5625 + - 0.5703125 + - 0.578125 + - 0.5859375 + - 0.59375 + - 0.6015625 + - 0.609375 + - 0.6171875 + - 0.625 + - 0.6328125 + - 0.640625 + - 0.6484375 + - 0.65625 + - 0.6640625 + - 0.671875 + - 0.6796875 + - 0.6875 + - 0.6953125 + - 0.703125 + - 0.7109375 + - 0.71875 + - 0.7265625 + - 0.734375 + - 0.7421875 + - 0.75 + - 0.7578125 + - 0.765625 + - 0.7734375 + - 0.78125 + - 0.7890625 + - 0.796875 + - 0.8046875 + - 0.8125 + - 0.8203125 + - 0.828125 + - 0.8359375 + - 0.84375 + - 0.8515625 + - 0.859375 + - 0.8671875 + - 0.875 + - 0.8828125 + - 0.890625 + - 0.8984375 + - 0.90625 + - 0.9140625 + - 0.921875 + - 0.9296875 + - 0.9375 + - 0.9453125 + - 0.953125 + - 0.9609375 + - 0.96875 + - 0.9765625 + - 0.984375 + - 0.9921875 + redCurve: + overrideState: 0 + value: + curve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 1 + outSlope: 1 + tangentMode: 0 + weightedMode: 0 + inWeight: 0 + outWeight: 0 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 1 + outSlope: 1 + tangentMode: 0 + weightedMode: 0 + inWeight: 0 + outWeight: 0 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + m_Loop: 0 + m_ZeroValue: 0 + m_Range: 1 + cachedData: + - 0 + - 0.0078125 + - 0.015625 + - 0.0234375 + - 0.03125 + - 0.0390625 + - 0.046875 + - 0.0546875 + - 0.0625 + - 0.0703125 + - 0.078125 + - 0.0859375 + - 0.09375 + - 0.1015625 + - 0.109375 + - 0.1171875 + - 0.125 + - 0.1328125 + - 0.140625 + - 0.1484375 + - 0.15625 + - 0.1640625 + - 0.171875 + - 0.1796875 + - 0.1875 + - 0.1953125 + - 0.203125 + - 0.2109375 + - 0.21875 + - 0.2265625 + - 0.234375 + - 0.2421875 + - 0.25 + - 0.2578125 + - 0.265625 + - 0.2734375 + - 0.28125 + - 0.2890625 + - 0.296875 + - 0.3046875 + - 0.3125 + - 0.3203125 + - 0.328125 + - 0.3359375 + - 0.34375 + - 0.3515625 + - 0.359375 + - 0.3671875 + - 0.375 + - 0.3828125 + - 0.390625 + - 0.3984375 + - 0.40625 + - 0.4140625 + - 0.421875 + - 0.4296875 + - 0.4375 + - 0.4453125 + - 0.453125 + - 0.4609375 + - 0.46875 + - 0.4765625 + - 0.484375 + - 0.4921875 + - 0.5 + - 0.5078125 + - 0.515625 + - 0.5234375 + - 0.53125 + - 0.5390625 + - 0.546875 + - 0.5546875 + - 0.5625 + - 0.5703125 + - 0.578125 + - 0.5859375 + - 0.59375 + - 0.6015625 + - 0.609375 + - 0.6171875 + - 0.625 + - 0.6328125 + - 0.640625 + - 0.6484375 + - 0.65625 + - 0.6640625 + - 0.671875 + - 0.6796875 + - 0.6875 + - 0.6953125 + - 0.703125 + - 0.7109375 + - 0.71875 + - 0.7265625 + - 0.734375 + - 0.7421875 + - 0.75 + - 0.7578125 + - 0.765625 + - 0.7734375 + - 0.78125 + - 0.7890625 + - 0.796875 + - 0.8046875 + - 0.8125 + - 0.8203125 + - 0.828125 + - 0.8359375 + - 0.84375 + - 0.8515625 + - 0.859375 + - 0.8671875 + - 0.875 + - 0.8828125 + - 0.890625 + - 0.8984375 + - 0.90625 + - 0.9140625 + - 0.921875 + - 0.9296875 + - 0.9375 + - 0.9453125 + - 0.953125 + - 0.9609375 + - 0.96875 + - 0.9765625 + - 0.984375 + - 0.9921875 + greenCurve: + overrideState: 0 + value: + curve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 1 + outSlope: 1 + tangentMode: 0 + weightedMode: 0 + inWeight: 0 + outWeight: 0 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 1 + outSlope: 1 + tangentMode: 0 + weightedMode: 0 + inWeight: 0 + outWeight: 0 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + m_Loop: 0 + m_ZeroValue: 0 + m_Range: 1 + cachedData: + - 0 + - 0.0078125 + - 0.015625 + - 0.0234375 + - 0.03125 + - 0.0390625 + - 0.046875 + - 0.0546875 + - 0.0625 + - 0.0703125 + - 0.078125 + - 0.0859375 + - 0.09375 + - 0.1015625 + - 0.109375 + - 0.1171875 + - 0.125 + - 0.1328125 + - 0.140625 + - 0.1484375 + - 0.15625 + - 0.1640625 + - 0.171875 + - 0.1796875 + - 0.1875 + - 0.1953125 + - 0.203125 + - 0.2109375 + - 0.21875 + - 0.2265625 + - 0.234375 + - 0.2421875 + - 0.25 + - 0.2578125 + - 0.265625 + - 0.2734375 + - 0.28125 + - 0.2890625 + - 0.296875 + - 0.3046875 + - 0.3125 + - 0.3203125 + - 0.328125 + - 0.3359375 + - 0.34375 + - 0.3515625 + - 0.359375 + - 0.3671875 + - 0.375 + - 0.3828125 + - 0.390625 + - 0.3984375 + - 0.40625 + - 0.4140625 + - 0.421875 + - 0.4296875 + - 0.4375 + - 0.4453125 + - 0.453125 + - 0.4609375 + - 0.46875 + - 0.4765625 + - 0.484375 + - 0.4921875 + - 0.5 + - 0.5078125 + - 0.515625 + - 0.5234375 + - 0.53125 + - 0.5390625 + - 0.546875 + - 0.5546875 + - 0.5625 + - 0.5703125 + - 0.578125 + - 0.5859375 + - 0.59375 + - 0.6015625 + - 0.609375 + - 0.6171875 + - 0.625 + - 0.6328125 + - 0.640625 + - 0.6484375 + - 0.65625 + - 0.6640625 + - 0.671875 + - 0.6796875 + - 0.6875 + - 0.6953125 + - 0.703125 + - 0.7109375 + - 0.71875 + - 0.7265625 + - 0.734375 + - 0.7421875 + - 0.75 + - 0.7578125 + - 0.765625 + - 0.7734375 + - 0.78125 + - 0.7890625 + - 0.796875 + - 0.8046875 + - 0.8125 + - 0.8203125 + - 0.828125 + - 0.8359375 + - 0.84375 + - 0.8515625 + - 0.859375 + - 0.8671875 + - 0.875 + - 0.8828125 + - 0.890625 + - 0.8984375 + - 0.90625 + - 0.9140625 + - 0.921875 + - 0.9296875 + - 0.9375 + - 0.9453125 + - 0.953125 + - 0.9609375 + - 0.96875 + - 0.9765625 + - 0.984375 + - 0.9921875 + blueCurve: + overrideState: 0 + value: + curve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 1 + outSlope: 1 + tangentMode: 0 + weightedMode: 0 + inWeight: 0 + outWeight: 0 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 1 + outSlope: 1 + tangentMode: 0 + weightedMode: 0 + inWeight: 0 + outWeight: 0 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + m_Loop: 0 + m_ZeroValue: 0 + m_Range: 1 + cachedData: + - 0 + - 0.0078125 + - 0.015625 + - 0.0234375 + - 0.03125 + - 0.0390625 + - 0.046875 + - 0.0546875 + - 0.0625 + - 0.0703125 + - 0.078125 + - 0.0859375 + - 0.09375 + - 0.1015625 + - 0.109375 + - 0.1171875 + - 0.125 + - 0.1328125 + - 0.140625 + - 0.1484375 + - 0.15625 + - 0.1640625 + - 0.171875 + - 0.1796875 + - 0.1875 + - 0.1953125 + - 0.203125 + - 0.2109375 + - 0.21875 + - 0.2265625 + - 0.234375 + - 0.2421875 + - 0.25 + - 0.2578125 + - 0.265625 + - 0.2734375 + - 0.28125 + - 0.2890625 + - 0.296875 + - 0.3046875 + - 0.3125 + - 0.3203125 + - 0.328125 + - 0.3359375 + - 0.34375 + - 0.3515625 + - 0.359375 + - 0.3671875 + - 0.375 + - 0.3828125 + - 0.390625 + - 0.3984375 + - 0.40625 + - 0.4140625 + - 0.421875 + - 0.4296875 + - 0.4375 + - 0.4453125 + - 0.453125 + - 0.4609375 + - 0.46875 + - 0.4765625 + - 0.484375 + - 0.4921875 + - 0.5 + - 0.5078125 + - 0.515625 + - 0.5234375 + - 0.53125 + - 0.5390625 + - 0.546875 + - 0.5546875 + - 0.5625 + - 0.5703125 + - 0.578125 + - 0.5859375 + - 0.59375 + - 0.6015625 + - 0.609375 + - 0.6171875 + - 0.625 + - 0.6328125 + - 0.640625 + - 0.6484375 + - 0.65625 + - 0.6640625 + - 0.671875 + - 0.6796875 + - 0.6875 + - 0.6953125 + - 0.703125 + - 0.7109375 + - 0.71875 + - 0.7265625 + - 0.734375 + - 0.7421875 + - 0.75 + - 0.7578125 + - 0.765625 + - 0.7734375 + - 0.78125 + - 0.7890625 + - 0.796875 + - 0.8046875 + - 0.8125 + - 0.8203125 + - 0.828125 + - 0.8359375 + - 0.84375 + - 0.8515625 + - 0.859375 + - 0.8671875 + - 0.875 + - 0.8828125 + - 0.890625 + - 0.8984375 + - 0.90625 + - 0.9140625 + - 0.921875 + - 0.9296875 + - 0.9375 + - 0.9453125 + - 0.953125 + - 0.9609375 + - 0.96875 + - 0.9765625 + - 0.984375 + - 0.9921875 + hueVsHueCurve: + overrideState: 0 + value: + curve: + serializedVersion: 2 + m_Curve: [] + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + m_Loop: 1 + m_ZeroValue: 0.5 + m_Range: 1 + cachedData: + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + hueVsSatCurve: + overrideState: 0 + value: + curve: + serializedVersion: 2 + m_Curve: [] + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + m_Loop: 1 + m_ZeroValue: 0.5 + m_Range: 1 + cachedData: + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + satVsSatCurve: + overrideState: 0 + value: + curve: + serializedVersion: 2 + m_Curve: [] + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + m_Loop: 0 + m_ZeroValue: 0.5 + m_Range: 1 + cachedData: + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + lumVsSatCurve: + overrideState: 0 + value: + curve: + serializedVersion: 2 + m_Curve: [] + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + m_Loop: 0 + m_ZeroValue: 0.5 + m_Range: 1 + cachedData: + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 +--- !u!114 &114175933221421406 +MonoBehaviour: + m_ObjectHideFlags: 3 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 40b924e2dad56384a8df2a1e111bb675, type: 3} + m_Name: Vignette + m_EditorClassIdentifier: + active: 1 + enabled: + overrideState: 1 + value: 1 + mode: + overrideState: 0 + value: 0 + color: + overrideState: 0 + value: {r: 0, g: 0, b: 0, a: 1} + center: + overrideState: 0 + value: {x: 0.5, y: 0.5} + intensity: + overrideState: 1 + value: 0 + smoothness: + overrideState: 0 + value: 0.2 + roundness: + overrideState: 0 + value: 1 + rounded: + overrideState: 0 + value: 0 + mask: + overrideState: 0 + value: {fileID: 0} + defaultState: 1 + opacity: + overrideState: 0 + value: 1 +--- !u!114 &114660337490018448 +MonoBehaviour: + m_ObjectHideFlags: 3 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: d65e486e4de6e5448a8fbb43dc8756a0, type: 3} + m_Name: Grain + m_EditorClassIdentifier: + active: 1 + enabled: + overrideState: 1 + value: 1 + colored: + overrideState: 1 + value: 1 + intensity: + overrideState: 1 + value: 0 + size: + overrideState: 0 + value: 1 + lumContrib: + overrideState: 0 + value: 0.8 +--- !u!114 &114714704474358142 +MonoBehaviour: + m_ObjectHideFlags: 3 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: c1cb7e9e120078f43bce4f0b1be547a7, type: 3} + m_Name: AmbientOcclusion + m_EditorClassIdentifier: + active: 1 + enabled: + overrideState: 1 + value: 1 + mode: + overrideState: 1 + value: 0 + intensity: + overrideState: 1 + value: 1 + color: + overrideState: 1 + value: {r: 0.28835884, g: 0.32125312, b: 0.4528302, a: 1} + ambientOnly: + overrideState: 0 + value: 1 + noiseFilterTolerance: + overrideState: 0 + value: 0 + blurTolerance: + overrideState: 0 + value: -4.6 + upsampleTolerance: + overrideState: 0 + value: -12 + thicknessModifier: + overrideState: 1 + value: 2.33 + directLightingStrength: + overrideState: 0 + value: 0 + radius: + overrideState: 1 + value: 0.5 + quality: + overrideState: 1 + value: 1 +--- !u!114 &114934171140021752 +MonoBehaviour: + m_ObjectHideFlags: 3 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 48a79b01ea5641d4aa6daa2e23605641, type: 3} + m_Name: Bloom + m_EditorClassIdentifier: + active: 1 + enabled: + overrideState: 1 + value: 1 + intensity: + overrideState: 1 + value: 3 + threshold: + overrideState: 1 + value: 1 + softKnee: + overrideState: 0 + value: 0.5 + clamp: + overrideState: 0 + value: 65472 + diffusion: + overrideState: 0 + value: 7 + anamorphicRatio: + overrideState: 0 + value: 0 + color: + overrideState: 0 + value: {r: 1, g: 1, b: 1, a: 1} + fastMode: + overrideState: 0 + value: 0 + dirtTexture: + overrideState: 0 + value: {fileID: 0} + defaultState: 1 + dirtIntensity: + overrideState: 0 + value: 0 diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/Kart/Stylized Profiles/Custom Profile.asset.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/Kart/Stylized Profiles/Custom Profile.asset.meta" new file mode 100644 index 00000000..0742f46c --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/Kart/Stylized Profiles/Custom Profile.asset.meta" @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 0a303873d18554230a20fd04ce14618d +NativeFormatImporter: + externalObjects: {} + mainObjectFileID: 11400000 + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/Kart/Stylized Profiles/Dreamy Profile.asset" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/Kart/Stylized Profiles/Dreamy Profile.asset" new file mode 100644 index 00000000..d018e503 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/Kart/Stylized Profiles/Dreamy Profile.asset" @@ -0,0 +1,1499 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!114 &11400000 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 8e6292b2c06870d4495f009f912b9600, type: 3} + m_Name: Dreamy Profile + m_EditorClassIdentifier: + settings: + - {fileID: 114714704474358142} + - {fileID: 114934171140021752} + - {fileID: 114419164644194910} + - {fileID: 114167140849846002} + - {fileID: 114558044928625268} +--- !u!114 &114167140849846002 +MonoBehaviour: + m_ObjectHideFlags: 3 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: d65e486e4de6e5448a8fbb43dc8756a0, type: 3} + m_Name: Grain + m_EditorClassIdentifier: + active: 1 + enabled: + overrideState: 1 + value: 1 + colored: + overrideState: 0 + value: 1 + intensity: + overrideState: 0 + value: 0 + size: + overrideState: 0 + value: 1 + lumContrib: + overrideState: 0 + value: 0.8 +--- !u!114 &114419164644194910 +MonoBehaviour: + m_ObjectHideFlags: 3 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: adb84e30e02715445aeb9959894e3b4d, type: 3} + m_Name: ColorGrading + m_EditorClassIdentifier: + active: 1 + enabled: + overrideState: 1 + value: 1 + gradingMode: + overrideState: 0 + value: 1 + externalLut: + overrideState: 0 + value: {fileID: 0} + defaultState: 1 + tonemapper: + overrideState: 1 + value: 2 + toneCurveToeStrength: + overrideState: 0 + value: 0 + toneCurveToeLength: + overrideState: 0 + value: 0.5 + toneCurveShoulderStrength: + overrideState: 0 + value: 0 + toneCurveShoulderLength: + overrideState: 0 + value: 0.5 + toneCurveShoulderAngle: + overrideState: 0 + value: 0 + toneCurveGamma: + overrideState: 0 + value: 1 + ldrLut: + overrideState: 0 + value: {fileID: 0} + defaultState: 4 + ldrLutContribution: + overrideState: 0 + value: 1 + temperature: + overrideState: 0 + value: 0 + tint: + overrideState: 0 + value: 0 + colorFilter: + overrideState: 0 + value: {r: 1, g: 1, b: 1, a: 1} + hueShift: + overrideState: 0 + value: 0 + saturation: + overrideState: 0 + value: 0 + brightness: + overrideState: 0 + value: 0 + postExposure: + overrideState: 1 + value: 0.5 + contrast: + overrideState: 0 + value: 0 + mixerRedOutRedIn: + overrideState: 0 + value: 100 + mixerRedOutGreenIn: + overrideState: 0 + value: 0 + mixerRedOutBlueIn: + overrideState: 0 + value: 0 + mixerGreenOutRedIn: + overrideState: 0 + value: 0 + mixerGreenOutGreenIn: + overrideState: 0 + value: 100 + mixerGreenOutBlueIn: + overrideState: 0 + value: 0 + mixerBlueOutRedIn: + overrideState: 0 + value: 0 + mixerBlueOutGreenIn: + overrideState: 0 + value: 0 + mixerBlueOutBlueIn: + overrideState: 0 + value: 100 + lift: + overrideState: 0 + value: {x: 1, y: 1, z: 1, w: 0} + gamma: + overrideState: 0 + value: {x: 1, y: 1, z: 1, w: -0.024937654} + gain: + overrideState: 0 + value: {x: 1, y: 1, z: 1, w: 0} + masterCurve: + overrideState: 0 + value: + curve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 1 + outSlope: 1 + tangentMode: 0 + weightedMode: 0 + inWeight: 0 + outWeight: 0 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 1 + outSlope: 1 + tangentMode: 0 + weightedMode: 0 + inWeight: 0 + outWeight: 0 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + m_Loop: 0 + m_ZeroValue: 0 + m_Range: 1 + cachedData: + - 0 + - 0.0078125 + - 0.015625 + - 0.0234375 + - 0.03125 + - 0.0390625 + - 0.046875 + - 0.0546875 + - 0.0625 + - 0.0703125 + - 0.078125 + - 0.0859375 + - 0.09375 + - 0.1015625 + - 0.109375 + - 0.1171875 + - 0.125 + - 0.1328125 + - 0.140625 + - 0.1484375 + - 0.15625 + - 0.1640625 + - 0.171875 + - 0.1796875 + - 0.1875 + - 0.1953125 + - 0.203125 + - 0.2109375 + - 0.21875 + - 0.2265625 + - 0.234375 + - 0.2421875 + - 0.25 + - 0.2578125 + - 0.265625 + - 0.2734375 + - 0.28125 + - 0.2890625 + - 0.296875 + - 0.3046875 + - 0.3125 + - 0.3203125 + - 0.328125 + - 0.3359375 + - 0.34375 + - 0.3515625 + - 0.359375 + - 0.3671875 + - 0.375 + - 0.3828125 + - 0.390625 + - 0.3984375 + - 0.40625 + - 0.4140625 + - 0.421875 + - 0.4296875 + - 0.4375 + - 0.4453125 + - 0.453125 + - 0.4609375 + - 0.46875 + - 0.4765625 + - 0.484375 + - 0.4921875 + - 0.5 + - 0.5078125 + - 0.515625 + - 0.5234375 + - 0.53125 + - 0.5390625 + - 0.546875 + - 0.5546875 + - 0.5625 + - 0.5703125 + - 0.578125 + - 0.5859375 + - 0.59375 + - 0.6015625 + - 0.609375 + - 0.6171875 + - 0.625 + - 0.6328125 + - 0.640625 + - 0.6484375 + - 0.65625 + - 0.6640625 + - 0.671875 + - 0.6796875 + - 0.6875 + - 0.6953125 + - 0.703125 + - 0.7109375 + - 0.71875 + - 0.7265625 + - 0.734375 + - 0.7421875 + - 0.75 + - 0.7578125 + - 0.765625 + - 0.7734375 + - 0.78125 + - 0.7890625 + - 0.796875 + - 0.8046875 + - 0.8125 + - 0.8203125 + - 0.828125 + - 0.8359375 + - 0.84375 + - 0.8515625 + - 0.859375 + - 0.8671875 + - 0.875 + - 0.8828125 + - 0.890625 + - 0.8984375 + - 0.90625 + - 0.9140625 + - 0.921875 + - 0.9296875 + - 0.9375 + - 0.9453125 + - 0.953125 + - 0.9609375 + - 0.96875 + - 0.9765625 + - 0.984375 + - 0.9921875 + redCurve: + overrideState: 0 + value: + curve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 1 + outSlope: 1 + tangentMode: 0 + weightedMode: 0 + inWeight: 0 + outWeight: 0 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 1 + outSlope: 1 + tangentMode: 0 + weightedMode: 0 + inWeight: 0 + outWeight: 0 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + m_Loop: 0 + m_ZeroValue: 0 + m_Range: 1 + cachedData: + - 0 + - 0.0078125 + - 0.015625 + - 0.0234375 + - 0.03125 + - 0.0390625 + - 0.046875 + - 0.0546875 + - 0.0625 + - 0.0703125 + - 0.078125 + - 0.0859375 + - 0.09375 + - 0.1015625 + - 0.109375 + - 0.1171875 + - 0.125 + - 0.1328125 + - 0.140625 + - 0.1484375 + - 0.15625 + - 0.1640625 + - 0.171875 + - 0.1796875 + - 0.1875 + - 0.1953125 + - 0.203125 + - 0.2109375 + - 0.21875 + - 0.2265625 + - 0.234375 + - 0.2421875 + - 0.25 + - 0.2578125 + - 0.265625 + - 0.2734375 + - 0.28125 + - 0.2890625 + - 0.296875 + - 0.3046875 + - 0.3125 + - 0.3203125 + - 0.328125 + - 0.3359375 + - 0.34375 + - 0.3515625 + - 0.359375 + - 0.3671875 + - 0.375 + - 0.3828125 + - 0.390625 + - 0.3984375 + - 0.40625 + - 0.4140625 + - 0.421875 + - 0.4296875 + - 0.4375 + - 0.4453125 + - 0.453125 + - 0.4609375 + - 0.46875 + - 0.4765625 + - 0.484375 + - 0.4921875 + - 0.5 + - 0.5078125 + - 0.515625 + - 0.5234375 + - 0.53125 + - 0.5390625 + - 0.546875 + - 0.5546875 + - 0.5625 + - 0.5703125 + - 0.578125 + - 0.5859375 + - 0.59375 + - 0.6015625 + - 0.609375 + - 0.6171875 + - 0.625 + - 0.6328125 + - 0.640625 + - 0.6484375 + - 0.65625 + - 0.6640625 + - 0.671875 + - 0.6796875 + - 0.6875 + - 0.6953125 + - 0.703125 + - 0.7109375 + - 0.71875 + - 0.7265625 + - 0.734375 + - 0.7421875 + - 0.75 + - 0.7578125 + - 0.765625 + - 0.7734375 + - 0.78125 + - 0.7890625 + - 0.796875 + - 0.8046875 + - 0.8125 + - 0.8203125 + - 0.828125 + - 0.8359375 + - 0.84375 + - 0.8515625 + - 0.859375 + - 0.8671875 + - 0.875 + - 0.8828125 + - 0.890625 + - 0.8984375 + - 0.90625 + - 0.9140625 + - 0.921875 + - 0.9296875 + - 0.9375 + - 0.9453125 + - 0.953125 + - 0.9609375 + - 0.96875 + - 0.9765625 + - 0.984375 + - 0.9921875 + greenCurve: + overrideState: 0 + value: + curve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 1 + outSlope: 1 + tangentMode: 0 + weightedMode: 0 + inWeight: 0 + outWeight: 0 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 1 + outSlope: 1 + tangentMode: 0 + weightedMode: 0 + inWeight: 0 + outWeight: 0 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + m_Loop: 0 + m_ZeroValue: 0 + m_Range: 1 + cachedData: + - 0 + - 0.0078125 + - 0.015625 + - 0.0234375 + - 0.03125 + - 0.0390625 + - 0.046875 + - 0.0546875 + - 0.0625 + - 0.0703125 + - 0.078125 + - 0.0859375 + - 0.09375 + - 0.1015625 + - 0.109375 + - 0.1171875 + - 0.125 + - 0.1328125 + - 0.140625 + - 0.1484375 + - 0.15625 + - 0.1640625 + - 0.171875 + - 0.1796875 + - 0.1875 + - 0.1953125 + - 0.203125 + - 0.2109375 + - 0.21875 + - 0.2265625 + - 0.234375 + - 0.2421875 + - 0.25 + - 0.2578125 + - 0.265625 + - 0.2734375 + - 0.28125 + - 0.2890625 + - 0.296875 + - 0.3046875 + - 0.3125 + - 0.3203125 + - 0.328125 + - 0.3359375 + - 0.34375 + - 0.3515625 + - 0.359375 + - 0.3671875 + - 0.375 + - 0.3828125 + - 0.390625 + - 0.3984375 + - 0.40625 + - 0.4140625 + - 0.421875 + - 0.4296875 + - 0.4375 + - 0.4453125 + - 0.453125 + - 0.4609375 + - 0.46875 + - 0.4765625 + - 0.484375 + - 0.4921875 + - 0.5 + - 0.5078125 + - 0.515625 + - 0.5234375 + - 0.53125 + - 0.5390625 + - 0.546875 + - 0.5546875 + - 0.5625 + - 0.5703125 + - 0.578125 + - 0.5859375 + - 0.59375 + - 0.6015625 + - 0.609375 + - 0.6171875 + - 0.625 + - 0.6328125 + - 0.640625 + - 0.6484375 + - 0.65625 + - 0.6640625 + - 0.671875 + - 0.6796875 + - 0.6875 + - 0.6953125 + - 0.703125 + - 0.7109375 + - 0.71875 + - 0.7265625 + - 0.734375 + - 0.7421875 + - 0.75 + - 0.7578125 + - 0.765625 + - 0.7734375 + - 0.78125 + - 0.7890625 + - 0.796875 + - 0.8046875 + - 0.8125 + - 0.8203125 + - 0.828125 + - 0.8359375 + - 0.84375 + - 0.8515625 + - 0.859375 + - 0.8671875 + - 0.875 + - 0.8828125 + - 0.890625 + - 0.8984375 + - 0.90625 + - 0.9140625 + - 0.921875 + - 0.9296875 + - 0.9375 + - 0.9453125 + - 0.953125 + - 0.9609375 + - 0.96875 + - 0.9765625 + - 0.984375 + - 0.9921875 + blueCurve: + overrideState: 0 + value: + curve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 1 + outSlope: 1 + tangentMode: 0 + weightedMode: 0 + inWeight: 0 + outWeight: 0 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 1 + outSlope: 1 + tangentMode: 0 + weightedMode: 0 + inWeight: 0 + outWeight: 0 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + m_Loop: 0 + m_ZeroValue: 0 + m_Range: 1 + cachedData: + - 0 + - 0.0078125 + - 0.015625 + - 0.0234375 + - 0.03125 + - 0.0390625 + - 0.046875 + - 0.0546875 + - 0.0625 + - 0.0703125 + - 0.078125 + - 0.0859375 + - 0.09375 + - 0.1015625 + - 0.109375 + - 0.1171875 + - 0.125 + - 0.1328125 + - 0.140625 + - 0.1484375 + - 0.15625 + - 0.1640625 + - 0.171875 + - 0.1796875 + - 0.1875 + - 0.1953125 + - 0.203125 + - 0.2109375 + - 0.21875 + - 0.2265625 + - 0.234375 + - 0.2421875 + - 0.25 + - 0.2578125 + - 0.265625 + - 0.2734375 + - 0.28125 + - 0.2890625 + - 0.296875 + - 0.3046875 + - 0.3125 + - 0.3203125 + - 0.328125 + - 0.3359375 + - 0.34375 + - 0.3515625 + - 0.359375 + - 0.3671875 + - 0.375 + - 0.3828125 + - 0.390625 + - 0.3984375 + - 0.40625 + - 0.4140625 + - 0.421875 + - 0.4296875 + - 0.4375 + - 0.4453125 + - 0.453125 + - 0.4609375 + - 0.46875 + - 0.4765625 + - 0.484375 + - 0.4921875 + - 0.5 + - 0.5078125 + - 0.515625 + - 0.5234375 + - 0.53125 + - 0.5390625 + - 0.546875 + - 0.5546875 + - 0.5625 + - 0.5703125 + - 0.578125 + - 0.5859375 + - 0.59375 + - 0.6015625 + - 0.609375 + - 0.6171875 + - 0.625 + - 0.6328125 + - 0.640625 + - 0.6484375 + - 0.65625 + - 0.6640625 + - 0.671875 + - 0.6796875 + - 0.6875 + - 0.6953125 + - 0.703125 + - 0.7109375 + - 0.71875 + - 0.7265625 + - 0.734375 + - 0.7421875 + - 0.75 + - 0.7578125 + - 0.765625 + - 0.7734375 + - 0.78125 + - 0.7890625 + - 0.796875 + - 0.8046875 + - 0.8125 + - 0.8203125 + - 0.828125 + - 0.8359375 + - 0.84375 + - 0.8515625 + - 0.859375 + - 0.8671875 + - 0.875 + - 0.8828125 + - 0.890625 + - 0.8984375 + - 0.90625 + - 0.9140625 + - 0.921875 + - 0.9296875 + - 0.9375 + - 0.9453125 + - 0.953125 + - 0.9609375 + - 0.96875 + - 0.9765625 + - 0.984375 + - 0.9921875 + hueVsHueCurve: + overrideState: 0 + value: + curve: + serializedVersion: 2 + m_Curve: [] + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + m_Loop: 1 + m_ZeroValue: 0.5 + m_Range: 1 + cachedData: + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + hueVsSatCurve: + overrideState: 0 + value: + curve: + serializedVersion: 2 + m_Curve: [] + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + m_Loop: 1 + m_ZeroValue: 0.5 + m_Range: 1 + cachedData: + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + satVsSatCurve: + overrideState: 0 + value: + curve: + serializedVersion: 2 + m_Curve: [] + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + m_Loop: 0 + m_ZeroValue: 0.5 + m_Range: 1 + cachedData: + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + lumVsSatCurve: + overrideState: 0 + value: + curve: + serializedVersion: 2 + m_Curve: [] + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + m_Loop: 0 + m_ZeroValue: 0.5 + m_Range: 1 + cachedData: + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 +--- !u!114 &114558044928625268 +MonoBehaviour: + m_ObjectHideFlags: 3 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 40b924e2dad56384a8df2a1e111bb675, type: 3} + m_Name: Vignette + m_EditorClassIdentifier: + active: 1 + enabled: + overrideState: 1 + value: 1 + mode: + overrideState: 1 + value: 0 + color: + overrideState: 1 + value: {r: 0, g: 1, b: 0.19058943, a: 1} + center: + overrideState: 0 + value: {x: 0.5, y: 0.5} + intensity: + overrideState: 1 + value: 0.333 + smoothness: + overrideState: 1 + value: 0.488 + roundness: + overrideState: 0 + value: 1 + rounded: + overrideState: 0 + value: 0 + mask: + overrideState: 0 + value: {fileID: 0} + defaultState: 1 + opacity: + overrideState: 0 + value: 1 +--- !u!114 &114714704474358142 +MonoBehaviour: + m_ObjectHideFlags: 3 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: c1cb7e9e120078f43bce4f0b1be547a7, type: 3} + m_Name: AmbientOcclusion + m_EditorClassIdentifier: + active: 1 + enabled: + overrideState: 1 + value: 1 + mode: + overrideState: 1 + value: 0 + intensity: + overrideState: 1 + value: 1 + color: + overrideState: 1 + value: {r: 0.28835884, g: 0.32125312, b: 0.4528302, a: 1} + ambientOnly: + overrideState: 0 + value: 1 + noiseFilterTolerance: + overrideState: 0 + value: 0 + blurTolerance: + overrideState: 0 + value: -4.6 + upsampleTolerance: + overrideState: 0 + value: -12 + thicknessModifier: + overrideState: 1 + value: 2.33 + directLightingStrength: + overrideState: 0 + value: 0 + radius: + overrideState: 1 + value: 0.5 + quality: + overrideState: 1 + value: 1 +--- !u!114 &114934171140021752 +MonoBehaviour: + m_ObjectHideFlags: 3 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 48a79b01ea5641d4aa6daa2e23605641, type: 3} + m_Name: Bloom + m_EditorClassIdentifier: + active: 1 + enabled: + overrideState: 1 + value: 1 + intensity: + overrideState: 1 + value: 17.44 + threshold: + overrideState: 1 + value: 1 + softKnee: + overrideState: 1 + value: 0.439 + clamp: + overrideState: 0 + value: 65472 + diffusion: + overrideState: 1 + value: 7 + anamorphicRatio: + overrideState: 0 + value: 0 + color: + overrideState: 0 + value: {r: 0, g: 1, b: 0.9937358, a: 1} + fastMode: + overrideState: 1 + value: 1 + dirtTexture: + overrideState: 0 + value: {fileID: 0} + defaultState: 1 + dirtIntensity: + overrideState: 0 + value: 0 diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/Kart/Stylized Profiles/Dreamy Profile.asset.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/Kart/Stylized Profiles/Dreamy Profile.asset.meta" new file mode 100644 index 00000000..4fa3997a --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/Kart/Stylized Profiles/Dreamy Profile.asset.meta" @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 2fcedf774c6fc48adb9bf47668d1e0c0 +NativeFormatImporter: + externalObjects: {} + mainObjectFileID: 11400000 + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/Kart/Stylized Profiles/Noir Profile.asset" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/Kart/Stylized Profiles/Noir Profile.asset" new file mode 100644 index 00000000..7fea66a1 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/Kart/Stylized Profiles/Noir Profile.asset" @@ -0,0 +1,1454 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!114 &11400000 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 8e6292b2c06870d4495f009f912b9600, type: 3} + m_Name: Noir Profile + m_EditorClassIdentifier: + settings: + - {fileID: 114714704474358142} + - {fileID: 114934171140021752} + - {fileID: 114818395792058004} + - {fileID: 114555790745684626} +--- !u!114 &114555790745684626 +MonoBehaviour: + m_ObjectHideFlags: 3 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: d65e486e4de6e5448a8fbb43dc8756a0, type: 3} + m_Name: Grain + m_EditorClassIdentifier: + active: 1 + enabled: + overrideState: 1 + value: 1 + colored: + overrideState: 1 + value: 0 + intensity: + overrideState: 1 + value: 0.5 + size: + overrideState: 0 + value: 1 + lumContrib: + overrideState: 0 + value: 0.8 +--- !u!114 &114714704474358142 +MonoBehaviour: + m_ObjectHideFlags: 3 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: c1cb7e9e120078f43bce4f0b1be547a7, type: 3} + m_Name: AmbientOcclusion + m_EditorClassIdentifier: + active: 1 + enabled: + overrideState: 1 + value: 1 + mode: + overrideState: 1 + value: 0 + intensity: + overrideState: 1 + value: 1 + color: + overrideState: 1 + value: {r: 0.28835884, g: 0.32125312, b: 0.4528302, a: 1} + ambientOnly: + overrideState: 0 + value: 1 + noiseFilterTolerance: + overrideState: 0 + value: 0 + blurTolerance: + overrideState: 0 + value: -4.6 + upsampleTolerance: + overrideState: 0 + value: -12 + thicknessModifier: + overrideState: 1 + value: 2.33 + directLightingStrength: + overrideState: 0 + value: 0 + radius: + overrideState: 1 + value: 0.5 + quality: + overrideState: 1 + value: 1 +--- !u!114 &114818395792058004 +MonoBehaviour: + m_ObjectHideFlags: 3 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: adb84e30e02715445aeb9959894e3b4d, type: 3} + m_Name: ColorGrading + m_EditorClassIdentifier: + active: 1 + enabled: + overrideState: 1 + value: 1 + gradingMode: + overrideState: 0 + value: 1 + externalLut: + overrideState: 0 + value: {fileID: 0} + defaultState: 1 + tonemapper: + overrideState: 1 + value: 2 + toneCurveToeStrength: + overrideState: 0 + value: 0 + toneCurveToeLength: + overrideState: 0 + value: 0.5 + toneCurveShoulderStrength: + overrideState: 0 + value: 0 + toneCurveShoulderLength: + overrideState: 0 + value: 0.5 + toneCurveShoulderAngle: + overrideState: 0 + value: 0 + toneCurveGamma: + overrideState: 0 + value: 1 + ldrLut: + overrideState: 0 + value: {fileID: 0} + defaultState: 4 + ldrLutContribution: + overrideState: 0 + value: 1 + temperature: + overrideState: 0 + value: 0 + tint: + overrideState: 0 + value: 0 + colorFilter: + overrideState: 0 + value: {r: 1, g: 1, b: 1, a: 1} + hueShift: + overrideState: 0 + value: 0 + saturation: + overrideState: 1 + value: -100 + brightness: + overrideState: 0 + value: 0 + postExposure: + overrideState: 1 + value: 0.25 + contrast: + overrideState: 1 + value: 50 + mixerRedOutRedIn: + overrideState: 0 + value: 100 + mixerRedOutGreenIn: + overrideState: 0 + value: 0 + mixerRedOutBlueIn: + overrideState: 0 + value: 0 + mixerGreenOutRedIn: + overrideState: 0 + value: 0 + mixerGreenOutGreenIn: + overrideState: 0 + value: 100 + mixerGreenOutBlueIn: + overrideState: 0 + value: 0 + mixerBlueOutRedIn: + overrideState: 0 + value: 0 + mixerBlueOutGreenIn: + overrideState: 0 + value: 0 + mixerBlueOutBlueIn: + overrideState: 0 + value: 100 + lift: + overrideState: 0 + value: {x: 1, y: 1, z: 1, w: 0} + gamma: + overrideState: 0 + value: {x: 1, y: 1, z: 1, w: 0} + gain: + overrideState: 0 + value: {x: 1, y: 1, z: 1, w: 0} + masterCurve: + overrideState: 0 + value: + curve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 1 + outSlope: 1 + tangentMode: 0 + weightedMode: 0 + inWeight: 0 + outWeight: 0 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 1 + outSlope: 1 + tangentMode: 0 + weightedMode: 0 + inWeight: 0 + outWeight: 0 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + m_Loop: 0 + m_ZeroValue: 0 + m_Range: 1 + cachedData: + - 0 + - 0.0078125 + - 0.015625 + - 0.0234375 + - 0.03125 + - 0.0390625 + - 0.046875 + - 0.0546875 + - 0.0625 + - 0.0703125 + - 0.078125 + - 0.0859375 + - 0.09375 + - 0.1015625 + - 0.109375 + - 0.1171875 + - 0.125 + - 0.1328125 + - 0.140625 + - 0.1484375 + - 0.15625 + - 0.1640625 + - 0.171875 + - 0.1796875 + - 0.1875 + - 0.1953125 + - 0.203125 + - 0.2109375 + - 0.21875 + - 0.2265625 + - 0.234375 + - 0.2421875 + - 0.25 + - 0.2578125 + - 0.265625 + - 0.2734375 + - 0.28125 + - 0.2890625 + - 0.296875 + - 0.3046875 + - 0.3125 + - 0.3203125 + - 0.328125 + - 0.3359375 + - 0.34375 + - 0.3515625 + - 0.359375 + - 0.3671875 + - 0.375 + - 0.3828125 + - 0.390625 + - 0.3984375 + - 0.40625 + - 0.4140625 + - 0.421875 + - 0.4296875 + - 0.4375 + - 0.4453125 + - 0.453125 + - 0.4609375 + - 0.46875 + - 0.4765625 + - 0.484375 + - 0.4921875 + - 0.5 + - 0.5078125 + - 0.515625 + - 0.5234375 + - 0.53125 + - 0.5390625 + - 0.546875 + - 0.5546875 + - 0.5625 + - 0.5703125 + - 0.578125 + - 0.5859375 + - 0.59375 + - 0.6015625 + - 0.609375 + - 0.6171875 + - 0.625 + - 0.6328125 + - 0.640625 + - 0.6484375 + - 0.65625 + - 0.6640625 + - 0.671875 + - 0.6796875 + - 0.6875 + - 0.6953125 + - 0.703125 + - 0.7109375 + - 0.71875 + - 0.7265625 + - 0.734375 + - 0.7421875 + - 0.75 + - 0.7578125 + - 0.765625 + - 0.7734375 + - 0.78125 + - 0.7890625 + - 0.796875 + - 0.8046875 + - 0.8125 + - 0.8203125 + - 0.828125 + - 0.8359375 + - 0.84375 + - 0.8515625 + - 0.859375 + - 0.8671875 + - 0.875 + - 0.8828125 + - 0.890625 + - 0.8984375 + - 0.90625 + - 0.9140625 + - 0.921875 + - 0.9296875 + - 0.9375 + - 0.9453125 + - 0.953125 + - 0.9609375 + - 0.96875 + - 0.9765625 + - 0.984375 + - 0.9921875 + redCurve: + overrideState: 0 + value: + curve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 1 + outSlope: 1 + tangentMode: 0 + weightedMode: 0 + inWeight: 0 + outWeight: 0 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 1 + outSlope: 1 + tangentMode: 0 + weightedMode: 0 + inWeight: 0 + outWeight: 0 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + m_Loop: 0 + m_ZeroValue: 0 + m_Range: 1 + cachedData: + - 0 + - 0.0078125 + - 0.015625 + - 0.0234375 + - 0.03125 + - 0.0390625 + - 0.046875 + - 0.0546875 + - 0.0625 + - 0.0703125 + - 0.078125 + - 0.0859375 + - 0.09375 + - 0.1015625 + - 0.109375 + - 0.1171875 + - 0.125 + - 0.1328125 + - 0.140625 + - 0.1484375 + - 0.15625 + - 0.1640625 + - 0.171875 + - 0.1796875 + - 0.1875 + - 0.1953125 + - 0.203125 + - 0.2109375 + - 0.21875 + - 0.2265625 + - 0.234375 + - 0.2421875 + - 0.25 + - 0.2578125 + - 0.265625 + - 0.2734375 + - 0.28125 + - 0.2890625 + - 0.296875 + - 0.3046875 + - 0.3125 + - 0.3203125 + - 0.328125 + - 0.3359375 + - 0.34375 + - 0.3515625 + - 0.359375 + - 0.3671875 + - 0.375 + - 0.3828125 + - 0.390625 + - 0.3984375 + - 0.40625 + - 0.4140625 + - 0.421875 + - 0.4296875 + - 0.4375 + - 0.4453125 + - 0.453125 + - 0.4609375 + - 0.46875 + - 0.4765625 + - 0.484375 + - 0.4921875 + - 0.5 + - 0.5078125 + - 0.515625 + - 0.5234375 + - 0.53125 + - 0.5390625 + - 0.546875 + - 0.5546875 + - 0.5625 + - 0.5703125 + - 0.578125 + - 0.5859375 + - 0.59375 + - 0.6015625 + - 0.609375 + - 0.6171875 + - 0.625 + - 0.6328125 + - 0.640625 + - 0.6484375 + - 0.65625 + - 0.6640625 + - 0.671875 + - 0.6796875 + - 0.6875 + - 0.6953125 + - 0.703125 + - 0.7109375 + - 0.71875 + - 0.7265625 + - 0.734375 + - 0.7421875 + - 0.75 + - 0.7578125 + - 0.765625 + - 0.7734375 + - 0.78125 + - 0.7890625 + - 0.796875 + - 0.8046875 + - 0.8125 + - 0.8203125 + - 0.828125 + - 0.8359375 + - 0.84375 + - 0.8515625 + - 0.859375 + - 0.8671875 + - 0.875 + - 0.8828125 + - 0.890625 + - 0.8984375 + - 0.90625 + - 0.9140625 + - 0.921875 + - 0.9296875 + - 0.9375 + - 0.9453125 + - 0.953125 + - 0.9609375 + - 0.96875 + - 0.9765625 + - 0.984375 + - 0.9921875 + greenCurve: + overrideState: 0 + value: + curve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 1 + outSlope: 1 + tangentMode: 0 + weightedMode: 0 + inWeight: 0 + outWeight: 0 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 1 + outSlope: 1 + tangentMode: 0 + weightedMode: 0 + inWeight: 0 + outWeight: 0 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + m_Loop: 0 + m_ZeroValue: 0 + m_Range: 1 + cachedData: + - 0 + - 0.0078125 + - 0.015625 + - 0.0234375 + - 0.03125 + - 0.0390625 + - 0.046875 + - 0.0546875 + - 0.0625 + - 0.0703125 + - 0.078125 + - 0.0859375 + - 0.09375 + - 0.1015625 + - 0.109375 + - 0.1171875 + - 0.125 + - 0.1328125 + - 0.140625 + - 0.1484375 + - 0.15625 + - 0.1640625 + - 0.171875 + - 0.1796875 + - 0.1875 + - 0.1953125 + - 0.203125 + - 0.2109375 + - 0.21875 + - 0.2265625 + - 0.234375 + - 0.2421875 + - 0.25 + - 0.2578125 + - 0.265625 + - 0.2734375 + - 0.28125 + - 0.2890625 + - 0.296875 + - 0.3046875 + - 0.3125 + - 0.3203125 + - 0.328125 + - 0.3359375 + - 0.34375 + - 0.3515625 + - 0.359375 + - 0.3671875 + - 0.375 + - 0.3828125 + - 0.390625 + - 0.3984375 + - 0.40625 + - 0.4140625 + - 0.421875 + - 0.4296875 + - 0.4375 + - 0.4453125 + - 0.453125 + - 0.4609375 + - 0.46875 + - 0.4765625 + - 0.484375 + - 0.4921875 + - 0.5 + - 0.5078125 + - 0.515625 + - 0.5234375 + - 0.53125 + - 0.5390625 + - 0.546875 + - 0.5546875 + - 0.5625 + - 0.5703125 + - 0.578125 + - 0.5859375 + - 0.59375 + - 0.6015625 + - 0.609375 + - 0.6171875 + - 0.625 + - 0.6328125 + - 0.640625 + - 0.6484375 + - 0.65625 + - 0.6640625 + - 0.671875 + - 0.6796875 + - 0.6875 + - 0.6953125 + - 0.703125 + - 0.7109375 + - 0.71875 + - 0.7265625 + - 0.734375 + - 0.7421875 + - 0.75 + - 0.7578125 + - 0.765625 + - 0.7734375 + - 0.78125 + - 0.7890625 + - 0.796875 + - 0.8046875 + - 0.8125 + - 0.8203125 + - 0.828125 + - 0.8359375 + - 0.84375 + - 0.8515625 + - 0.859375 + - 0.8671875 + - 0.875 + - 0.8828125 + - 0.890625 + - 0.8984375 + - 0.90625 + - 0.9140625 + - 0.921875 + - 0.9296875 + - 0.9375 + - 0.9453125 + - 0.953125 + - 0.9609375 + - 0.96875 + - 0.9765625 + - 0.984375 + - 0.9921875 + blueCurve: + overrideState: 0 + value: + curve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 1 + outSlope: 1 + tangentMode: 0 + weightedMode: 0 + inWeight: 0 + outWeight: 0 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 1 + outSlope: 1 + tangentMode: 0 + weightedMode: 0 + inWeight: 0 + outWeight: 0 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + m_Loop: 0 + m_ZeroValue: 0 + m_Range: 1 + cachedData: + - 0 + - 0.0078125 + - 0.015625 + - 0.0234375 + - 0.03125 + - 0.0390625 + - 0.046875 + - 0.0546875 + - 0.0625 + - 0.0703125 + - 0.078125 + - 0.0859375 + - 0.09375 + - 0.1015625 + - 0.109375 + - 0.1171875 + - 0.125 + - 0.1328125 + - 0.140625 + - 0.1484375 + - 0.15625 + - 0.1640625 + - 0.171875 + - 0.1796875 + - 0.1875 + - 0.1953125 + - 0.203125 + - 0.2109375 + - 0.21875 + - 0.2265625 + - 0.234375 + - 0.2421875 + - 0.25 + - 0.2578125 + - 0.265625 + - 0.2734375 + - 0.28125 + - 0.2890625 + - 0.296875 + - 0.3046875 + - 0.3125 + - 0.3203125 + - 0.328125 + - 0.3359375 + - 0.34375 + - 0.3515625 + - 0.359375 + - 0.3671875 + - 0.375 + - 0.3828125 + - 0.390625 + - 0.3984375 + - 0.40625 + - 0.4140625 + - 0.421875 + - 0.4296875 + - 0.4375 + - 0.4453125 + - 0.453125 + - 0.4609375 + - 0.46875 + - 0.4765625 + - 0.484375 + - 0.4921875 + - 0.5 + - 0.5078125 + - 0.515625 + - 0.5234375 + - 0.53125 + - 0.5390625 + - 0.546875 + - 0.5546875 + - 0.5625 + - 0.5703125 + - 0.578125 + - 0.5859375 + - 0.59375 + - 0.6015625 + - 0.609375 + - 0.6171875 + - 0.625 + - 0.6328125 + - 0.640625 + - 0.6484375 + - 0.65625 + - 0.6640625 + - 0.671875 + - 0.6796875 + - 0.6875 + - 0.6953125 + - 0.703125 + - 0.7109375 + - 0.71875 + - 0.7265625 + - 0.734375 + - 0.7421875 + - 0.75 + - 0.7578125 + - 0.765625 + - 0.7734375 + - 0.78125 + - 0.7890625 + - 0.796875 + - 0.8046875 + - 0.8125 + - 0.8203125 + - 0.828125 + - 0.8359375 + - 0.84375 + - 0.8515625 + - 0.859375 + - 0.8671875 + - 0.875 + - 0.8828125 + - 0.890625 + - 0.8984375 + - 0.90625 + - 0.9140625 + - 0.921875 + - 0.9296875 + - 0.9375 + - 0.9453125 + - 0.953125 + - 0.9609375 + - 0.96875 + - 0.9765625 + - 0.984375 + - 0.9921875 + hueVsHueCurve: + overrideState: 0 + value: + curve: + serializedVersion: 2 + m_Curve: [] + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + m_Loop: 1 + m_ZeroValue: 0.5 + m_Range: 1 + cachedData: + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + hueVsSatCurve: + overrideState: 0 + value: + curve: + serializedVersion: 2 + m_Curve: [] + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + m_Loop: 1 + m_ZeroValue: 0.5 + m_Range: 1 + cachedData: + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + satVsSatCurve: + overrideState: 0 + value: + curve: + serializedVersion: 2 + m_Curve: [] + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + m_Loop: 0 + m_ZeroValue: 0.5 + m_Range: 1 + cachedData: + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + lumVsSatCurve: + overrideState: 0 + value: + curve: + serializedVersion: 2 + m_Curve: [] + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + m_Loop: 0 + m_ZeroValue: 0.5 + m_Range: 1 + cachedData: + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 +--- !u!114 &114934171140021752 +MonoBehaviour: + m_ObjectHideFlags: 3 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 48a79b01ea5641d4aa6daa2e23605641, type: 3} + m_Name: Bloom + m_EditorClassIdentifier: + active: 1 + enabled: + overrideState: 1 + value: 1 + intensity: + overrideState: 1 + value: 3 + threshold: + overrideState: 1 + value: 1 + softKnee: + overrideState: 0 + value: 0.5 + clamp: + overrideState: 0 + value: 65472 + diffusion: + overrideState: 0 + value: 7 + anamorphicRatio: + overrideState: 0 + value: 0 + color: + overrideState: 0 + value: {r: 1, g: 1, b: 1, a: 1} + fastMode: + overrideState: 0 + value: 0 + dirtTexture: + overrideState: 0 + value: {fileID: 0} + defaultState: 1 + dirtIntensity: + overrideState: 0 + value: 0 diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/Kart/Stylized Profiles/Noir Profile.asset.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/Kart/Stylized Profiles/Noir Profile.asset.meta" new file mode 100644 index 00000000..3b3ff74c --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/Kart/Stylized Profiles/Noir Profile.asset.meta" @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: f2a7733f1191f4a35b2bbb50208ae674 +NativeFormatImporter: + externalObjects: {} + mainObjectFileID: 11400000 + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/Kart/Stylized Profiles/OldTimey Profile.asset" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/Kart/Stylized Profiles/OldTimey Profile.asset" new file mode 100644 index 00000000..83f6aa6a --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/Kart/Stylized Profiles/OldTimey Profile.asset" @@ -0,0 +1,1499 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!114 &11400000 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 8e6292b2c06870d4495f009f912b9600, type: 3} + m_Name: OldTimey Profile + m_EditorClassIdentifier: + settings: + - {fileID: 114714704474358142} + - {fileID: 114934171140021752} + - {fileID: 114138061683450972} + - {fileID: 114906379670220478} + - {fileID: 114041551080438352} +--- !u!114 &114041551080438352 +MonoBehaviour: + m_ObjectHideFlags: 3 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 40b924e2dad56384a8df2a1e111bb675, type: 3} + m_Name: Vignette + m_EditorClassIdentifier: + active: 1 + enabled: + overrideState: 1 + value: 1 + mode: + overrideState: 1 + value: 0 + color: + overrideState: 0 + value: {r: 0, g: 0, b: 0, a: 1} + center: + overrideState: 0 + value: {x: 0.5, y: 0.5} + intensity: + overrideState: 1 + value: 0.447 + smoothness: + overrideState: 0 + value: 0.2 + roundness: + overrideState: 0 + value: 1 + rounded: + overrideState: 0 + value: 0 + mask: + overrideState: 0 + value: {fileID: 0} + defaultState: 1 + opacity: + overrideState: 0 + value: 1 +--- !u!114 &114138061683450972 +MonoBehaviour: + m_ObjectHideFlags: 3 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: adb84e30e02715445aeb9959894e3b4d, type: 3} + m_Name: ColorGrading + m_EditorClassIdentifier: + active: 1 + enabled: + overrideState: 1 + value: 1 + gradingMode: + overrideState: 0 + value: 1 + externalLut: + overrideState: 0 + value: {fileID: 0} + defaultState: 1 + tonemapper: + overrideState: 1 + value: 2 + toneCurveToeStrength: + overrideState: 0 + value: 0 + toneCurveToeLength: + overrideState: 0 + value: 0.5 + toneCurveShoulderStrength: + overrideState: 0 + value: 0 + toneCurveShoulderLength: + overrideState: 0 + value: 0.5 + toneCurveShoulderAngle: + overrideState: 0 + value: 0 + toneCurveGamma: + overrideState: 0 + value: 1 + ldrLut: + overrideState: 0 + value: {fileID: 0} + defaultState: 4 + ldrLutContribution: + overrideState: 0 + value: 1 + temperature: + overrideState: 0 + value: 0 + tint: + overrideState: 0 + value: 0 + colorFilter: + overrideState: 1 + value: {r: 1, g: 0.54111356, b: 0.13679248, a: 1} + hueShift: + overrideState: 0 + value: 106 + saturation: + overrideState: 0 + value: -100 + brightness: + overrideState: 0 + value: 0 + postExposure: + overrideState: 1 + value: 2 + contrast: + overrideState: 0 + value: 100 + mixerRedOutRedIn: + overrideState: 0 + value: 64 + mixerRedOutGreenIn: + overrideState: 0 + value: 0 + mixerRedOutBlueIn: + overrideState: 0 + value: 0 + mixerGreenOutRedIn: + overrideState: 0 + value: 0 + mixerGreenOutGreenIn: + overrideState: 0 + value: 100 + mixerGreenOutBlueIn: + overrideState: 0 + value: 0 + mixerBlueOutRedIn: + overrideState: 0 + value: 0 + mixerBlueOutGreenIn: + overrideState: 0 + value: 0 + mixerBlueOutBlueIn: + overrideState: 0 + value: 100 + lift: + overrideState: 1 + value: {x: 0.60982645, y: 0.7403085, z: 1, w: 0} + gamma: + overrideState: 1 + value: {x: 1, y: 0.766453, z: 0.65578896, w: 0} + gain: + overrideState: 1 + value: {x: 1, y: 0.95224565, z: 0.6859172, w: 0} + masterCurve: + overrideState: 0 + value: + curve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 1 + outSlope: 1 + tangentMode: 0 + weightedMode: 0 + inWeight: 0 + outWeight: 0 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 1 + outSlope: 1 + tangentMode: 0 + weightedMode: 0 + inWeight: 0 + outWeight: 0 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + m_Loop: 0 + m_ZeroValue: 0 + m_Range: 1 + cachedData: + - 0 + - 0.0078125 + - 0.015625 + - 0.0234375 + - 0.03125 + - 0.0390625 + - 0.046875 + - 0.0546875 + - 0.0625 + - 0.0703125 + - 0.078125 + - 0.0859375 + - 0.09375 + - 0.1015625 + - 0.109375 + - 0.1171875 + - 0.125 + - 0.1328125 + - 0.140625 + - 0.1484375 + - 0.15625 + - 0.1640625 + - 0.171875 + - 0.1796875 + - 0.1875 + - 0.1953125 + - 0.203125 + - 0.2109375 + - 0.21875 + - 0.2265625 + - 0.234375 + - 0.2421875 + - 0.25 + - 0.2578125 + - 0.265625 + - 0.2734375 + - 0.28125 + - 0.2890625 + - 0.296875 + - 0.3046875 + - 0.3125 + - 0.3203125 + - 0.328125 + - 0.3359375 + - 0.34375 + - 0.3515625 + - 0.359375 + - 0.3671875 + - 0.375 + - 0.3828125 + - 0.390625 + - 0.3984375 + - 0.40625 + - 0.4140625 + - 0.421875 + - 0.4296875 + - 0.4375 + - 0.4453125 + - 0.453125 + - 0.4609375 + - 0.46875 + - 0.4765625 + - 0.484375 + - 0.4921875 + - 0.5 + - 0.5078125 + - 0.515625 + - 0.5234375 + - 0.53125 + - 0.5390625 + - 0.546875 + - 0.5546875 + - 0.5625 + - 0.5703125 + - 0.578125 + - 0.5859375 + - 0.59375 + - 0.6015625 + - 0.609375 + - 0.6171875 + - 0.625 + - 0.6328125 + - 0.640625 + - 0.6484375 + - 0.65625 + - 0.6640625 + - 0.671875 + - 0.6796875 + - 0.6875 + - 0.6953125 + - 0.703125 + - 0.7109375 + - 0.71875 + - 0.7265625 + - 0.734375 + - 0.7421875 + - 0.75 + - 0.7578125 + - 0.765625 + - 0.7734375 + - 0.78125 + - 0.7890625 + - 0.796875 + - 0.8046875 + - 0.8125 + - 0.8203125 + - 0.828125 + - 0.8359375 + - 0.84375 + - 0.8515625 + - 0.859375 + - 0.8671875 + - 0.875 + - 0.8828125 + - 0.890625 + - 0.8984375 + - 0.90625 + - 0.9140625 + - 0.921875 + - 0.9296875 + - 0.9375 + - 0.9453125 + - 0.953125 + - 0.9609375 + - 0.96875 + - 0.9765625 + - 0.984375 + - 0.9921875 + redCurve: + overrideState: 0 + value: + curve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 1 + outSlope: 1 + tangentMode: 0 + weightedMode: 0 + inWeight: 0 + outWeight: 0 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 1 + outSlope: 1 + tangentMode: 0 + weightedMode: 0 + inWeight: 0 + outWeight: 0 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + m_Loop: 0 + m_ZeroValue: 0 + m_Range: 1 + cachedData: + - 0 + - 0.0078125 + - 0.015625 + - 0.0234375 + - 0.03125 + - 0.0390625 + - 0.046875 + - 0.0546875 + - 0.0625 + - 0.0703125 + - 0.078125 + - 0.0859375 + - 0.09375 + - 0.1015625 + - 0.109375 + - 0.1171875 + - 0.125 + - 0.1328125 + - 0.140625 + - 0.1484375 + - 0.15625 + - 0.1640625 + - 0.171875 + - 0.1796875 + - 0.1875 + - 0.1953125 + - 0.203125 + - 0.2109375 + - 0.21875 + - 0.2265625 + - 0.234375 + - 0.2421875 + - 0.25 + - 0.2578125 + - 0.265625 + - 0.2734375 + - 0.28125 + - 0.2890625 + - 0.296875 + - 0.3046875 + - 0.3125 + - 0.3203125 + - 0.328125 + - 0.3359375 + - 0.34375 + - 0.3515625 + - 0.359375 + - 0.3671875 + - 0.375 + - 0.3828125 + - 0.390625 + - 0.3984375 + - 0.40625 + - 0.4140625 + - 0.421875 + - 0.4296875 + - 0.4375 + - 0.4453125 + - 0.453125 + - 0.4609375 + - 0.46875 + - 0.4765625 + - 0.484375 + - 0.4921875 + - 0.5 + - 0.5078125 + - 0.515625 + - 0.5234375 + - 0.53125 + - 0.5390625 + - 0.546875 + - 0.5546875 + - 0.5625 + - 0.5703125 + - 0.578125 + - 0.5859375 + - 0.59375 + - 0.6015625 + - 0.609375 + - 0.6171875 + - 0.625 + - 0.6328125 + - 0.640625 + - 0.6484375 + - 0.65625 + - 0.6640625 + - 0.671875 + - 0.6796875 + - 0.6875 + - 0.6953125 + - 0.703125 + - 0.7109375 + - 0.71875 + - 0.7265625 + - 0.734375 + - 0.7421875 + - 0.75 + - 0.7578125 + - 0.765625 + - 0.7734375 + - 0.78125 + - 0.7890625 + - 0.796875 + - 0.8046875 + - 0.8125 + - 0.8203125 + - 0.828125 + - 0.8359375 + - 0.84375 + - 0.8515625 + - 0.859375 + - 0.8671875 + - 0.875 + - 0.8828125 + - 0.890625 + - 0.8984375 + - 0.90625 + - 0.9140625 + - 0.921875 + - 0.9296875 + - 0.9375 + - 0.9453125 + - 0.953125 + - 0.9609375 + - 0.96875 + - 0.9765625 + - 0.984375 + - 0.9921875 + greenCurve: + overrideState: 0 + value: + curve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 1 + outSlope: 1 + tangentMode: 0 + weightedMode: 0 + inWeight: 0 + outWeight: 0 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 1 + outSlope: 1 + tangentMode: 0 + weightedMode: 0 + inWeight: 0 + outWeight: 0 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + m_Loop: 0 + m_ZeroValue: 0 + m_Range: 1 + cachedData: + - 0 + - 0.0078125 + - 0.015625 + - 0.0234375 + - 0.03125 + - 0.0390625 + - 0.046875 + - 0.0546875 + - 0.0625 + - 0.0703125 + - 0.078125 + - 0.0859375 + - 0.09375 + - 0.1015625 + - 0.109375 + - 0.1171875 + - 0.125 + - 0.1328125 + - 0.140625 + - 0.1484375 + - 0.15625 + - 0.1640625 + - 0.171875 + - 0.1796875 + - 0.1875 + - 0.1953125 + - 0.203125 + - 0.2109375 + - 0.21875 + - 0.2265625 + - 0.234375 + - 0.2421875 + - 0.25 + - 0.2578125 + - 0.265625 + - 0.2734375 + - 0.28125 + - 0.2890625 + - 0.296875 + - 0.3046875 + - 0.3125 + - 0.3203125 + - 0.328125 + - 0.3359375 + - 0.34375 + - 0.3515625 + - 0.359375 + - 0.3671875 + - 0.375 + - 0.3828125 + - 0.390625 + - 0.3984375 + - 0.40625 + - 0.4140625 + - 0.421875 + - 0.4296875 + - 0.4375 + - 0.4453125 + - 0.453125 + - 0.4609375 + - 0.46875 + - 0.4765625 + - 0.484375 + - 0.4921875 + - 0.5 + - 0.5078125 + - 0.515625 + - 0.5234375 + - 0.53125 + - 0.5390625 + - 0.546875 + - 0.5546875 + - 0.5625 + - 0.5703125 + - 0.578125 + - 0.5859375 + - 0.59375 + - 0.6015625 + - 0.609375 + - 0.6171875 + - 0.625 + - 0.6328125 + - 0.640625 + - 0.6484375 + - 0.65625 + - 0.6640625 + - 0.671875 + - 0.6796875 + - 0.6875 + - 0.6953125 + - 0.703125 + - 0.7109375 + - 0.71875 + - 0.7265625 + - 0.734375 + - 0.7421875 + - 0.75 + - 0.7578125 + - 0.765625 + - 0.7734375 + - 0.78125 + - 0.7890625 + - 0.796875 + - 0.8046875 + - 0.8125 + - 0.8203125 + - 0.828125 + - 0.8359375 + - 0.84375 + - 0.8515625 + - 0.859375 + - 0.8671875 + - 0.875 + - 0.8828125 + - 0.890625 + - 0.8984375 + - 0.90625 + - 0.9140625 + - 0.921875 + - 0.9296875 + - 0.9375 + - 0.9453125 + - 0.953125 + - 0.9609375 + - 0.96875 + - 0.9765625 + - 0.984375 + - 0.9921875 + blueCurve: + overrideState: 0 + value: + curve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 1 + outSlope: 1 + tangentMode: 0 + weightedMode: 0 + inWeight: 0 + outWeight: 0 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 1 + outSlope: 1 + tangentMode: 0 + weightedMode: 0 + inWeight: 0 + outWeight: 0 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + m_Loop: 0 + m_ZeroValue: 0 + m_Range: 1 + cachedData: + - 0 + - 0.0078125 + - 0.015625 + - 0.0234375 + - 0.03125 + - 0.0390625 + - 0.046875 + - 0.0546875 + - 0.0625 + - 0.0703125 + - 0.078125 + - 0.0859375 + - 0.09375 + - 0.1015625 + - 0.109375 + - 0.1171875 + - 0.125 + - 0.1328125 + - 0.140625 + - 0.1484375 + - 0.15625 + - 0.1640625 + - 0.171875 + - 0.1796875 + - 0.1875 + - 0.1953125 + - 0.203125 + - 0.2109375 + - 0.21875 + - 0.2265625 + - 0.234375 + - 0.2421875 + - 0.25 + - 0.2578125 + - 0.265625 + - 0.2734375 + - 0.28125 + - 0.2890625 + - 0.296875 + - 0.3046875 + - 0.3125 + - 0.3203125 + - 0.328125 + - 0.3359375 + - 0.34375 + - 0.3515625 + - 0.359375 + - 0.3671875 + - 0.375 + - 0.3828125 + - 0.390625 + - 0.3984375 + - 0.40625 + - 0.4140625 + - 0.421875 + - 0.4296875 + - 0.4375 + - 0.4453125 + - 0.453125 + - 0.4609375 + - 0.46875 + - 0.4765625 + - 0.484375 + - 0.4921875 + - 0.5 + - 0.5078125 + - 0.515625 + - 0.5234375 + - 0.53125 + - 0.5390625 + - 0.546875 + - 0.5546875 + - 0.5625 + - 0.5703125 + - 0.578125 + - 0.5859375 + - 0.59375 + - 0.6015625 + - 0.609375 + - 0.6171875 + - 0.625 + - 0.6328125 + - 0.640625 + - 0.6484375 + - 0.65625 + - 0.6640625 + - 0.671875 + - 0.6796875 + - 0.6875 + - 0.6953125 + - 0.703125 + - 0.7109375 + - 0.71875 + - 0.7265625 + - 0.734375 + - 0.7421875 + - 0.75 + - 0.7578125 + - 0.765625 + - 0.7734375 + - 0.78125 + - 0.7890625 + - 0.796875 + - 0.8046875 + - 0.8125 + - 0.8203125 + - 0.828125 + - 0.8359375 + - 0.84375 + - 0.8515625 + - 0.859375 + - 0.8671875 + - 0.875 + - 0.8828125 + - 0.890625 + - 0.8984375 + - 0.90625 + - 0.9140625 + - 0.921875 + - 0.9296875 + - 0.9375 + - 0.9453125 + - 0.953125 + - 0.9609375 + - 0.96875 + - 0.9765625 + - 0.984375 + - 0.9921875 + hueVsHueCurve: + overrideState: 0 + value: + curve: + serializedVersion: 2 + m_Curve: [] + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + m_Loop: 1 + m_ZeroValue: 0.5 + m_Range: 1 + cachedData: + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + hueVsSatCurve: + overrideState: 0 + value: + curve: + serializedVersion: 2 + m_Curve: [] + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + m_Loop: 1 + m_ZeroValue: 0.5 + m_Range: 1 + cachedData: + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + satVsSatCurve: + overrideState: 0 + value: + curve: + serializedVersion: 2 + m_Curve: [] + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + m_Loop: 0 + m_ZeroValue: 0.5 + m_Range: 1 + cachedData: + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + lumVsSatCurve: + overrideState: 0 + value: + curve: + serializedVersion: 2 + m_Curve: [] + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + m_Loop: 0 + m_ZeroValue: 0.5 + m_Range: 1 + cachedData: + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 + - 0.5 +--- !u!114 &114714704474358142 +MonoBehaviour: + m_ObjectHideFlags: 3 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: c1cb7e9e120078f43bce4f0b1be547a7, type: 3} + m_Name: AmbientOcclusion + m_EditorClassIdentifier: + active: 1 + enabled: + overrideState: 1 + value: 1 + mode: + overrideState: 1 + value: 0 + intensity: + overrideState: 1 + value: 1 + color: + overrideState: 1 + value: {r: 0.28835884, g: 0.32125312, b: 0.4528302, a: 1} + ambientOnly: + overrideState: 0 + value: 1 + noiseFilterTolerance: + overrideState: 0 + value: 0 + blurTolerance: + overrideState: 0 + value: -4.6 + upsampleTolerance: + overrideState: 0 + value: -12 + thicknessModifier: + overrideState: 1 + value: 2.33 + directLightingStrength: + overrideState: 0 + value: 0 + radius: + overrideState: 1 + value: 0.5 + quality: + overrideState: 1 + value: 1 +--- !u!114 &114906379670220478 +MonoBehaviour: + m_ObjectHideFlags: 3 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: d65e486e4de6e5448a8fbb43dc8756a0, type: 3} + m_Name: Grain + m_EditorClassIdentifier: + active: 1 + enabled: + overrideState: 1 + value: 1 + colored: + overrideState: 1 + value: 1 + intensity: + overrideState: 1 + value: 1 + size: + overrideState: 1 + value: 1 + lumContrib: + overrideState: 1 + value: 0.8 +--- !u!114 &114934171140021752 +MonoBehaviour: + m_ObjectHideFlags: 3 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 48a79b01ea5641d4aa6daa2e23605641, type: 3} + m_Name: Bloom + m_EditorClassIdentifier: + active: 1 + enabled: + overrideState: 1 + value: 1 + intensity: + overrideState: 1 + value: 3 + threshold: + overrideState: 1 + value: 1 + softKnee: + overrideState: 0 + value: 0.5 + clamp: + overrideState: 0 + value: 65472 + diffusion: + overrideState: 0 + value: 7 + anamorphicRatio: + overrideState: 0 + value: 0 + color: + overrideState: 0 + value: {r: 1, g: 1, b: 1, a: 1} + fastMode: + overrideState: 0 + value: 0 + dirtTexture: + overrideState: 0 + value: {fileID: 0} + defaultState: 1 + dirtIntensity: + overrideState: 0 + value: 0 diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/Kart/Stylized Profiles/OldTimey Profile.asset.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/Kart/Stylized Profiles/OldTimey Profile.asset.meta" new file mode 100644 index 00000000..51a5c35c --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/Kart/Stylized Profiles/OldTimey Profile.asset.meta" @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 6f264f10ebb954eda953cddc2fb7f17f +NativeFormatImporter: + externalObjects: {} + mainObjectFileID: 11400000 + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/Kart/Trail Prefabs.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/Kart/Trail Prefabs.meta" new file mode 100644 index 00000000..5e8a2d1b --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/Kart/Trail Prefabs.meta" @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: ce0f2cb471a046f4c9ebdcdfe8454f0e +folderAsset: yes +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/Kart/Trail Prefabs/FireTrail.prefab" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/Kart/Trail Prefabs/FireTrail.prefab" new file mode 100644 index 00000000..9285b37b --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/Kart/Trail Prefabs/FireTrail.prefab" @@ -0,0 +1,146 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!1 &6876190511218754860 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 6876190511218754863} + - component: {fileID: 6876190511218754862} + m_Layer: 0 + m_Name: FireTrail + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &6876190511218754863 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 6876190511218754860} + m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} + m_LocalPosition: {x: 0, y: 0, z: 0} + m_LocalScale: {x: 1, y: 1, z: 1} + m_Children: [] + m_Father: {fileID: 0} + m_RootOrder: 0 + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!96 &6876190511218754862 +TrailRenderer: + serializedVersion: 2 + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 6876190511218754860} + m_Enabled: 1 + m_CastShadows: 1 + m_ReceiveShadows: 1 + m_DynamicOccludee: 1 + m_MotionVectors: 1 + m_LightProbeUsage: 0 + m_ReflectionProbeUsage: 0 + m_RenderingLayerMask: 1 + m_RendererPriority: 0 + m_Materials: + - {fileID: 2100000, guid: 1cdc620dc87bd45acbd2dfd2cc6560eb, type: 2} + m_StaticBatchInfo: + firstSubMesh: 0 + subMeshCount: 0 + m_StaticBatchRoot: {fileID: 0} + m_ProbeAnchor: {fileID: 0} + m_LightProbeVolumeOverride: {fileID: 0} + m_ScaleInLightmap: 1 + m_PreserveUVs: 0 + m_IgnoreNormalsForChartDetection: 0 + m_ImportantGI: 0 + m_StitchLightmapSeams: 0 + m_SelectedEditorRenderState: 3 + m_MinimumChartSize: 4 + m_AutoUVMaxDistance: 0.5 + m_AutoUVMaxAngle: 89 + m_LightmapParameters: {fileID: 0} + m_SortingLayerID: 0 + m_SortingLayer: 0 + m_SortingOrder: 0 + m_Time: 0.2 + m_Parameters: + serializedVersion: 3 + widthMultiplier: 0.1 + widthCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 9.270642 + outSlope: 9.270642 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.21818182 + - serializedVersion: 3 + time: 0.14728321 + value: 1 + inSlope: 0.43737537 + outSlope: 0.43737537 + tangentMode: 0 + weightedMode: 0 + inWeight: 1 + outWeight: 0 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: -2.9844441 + outSlope: -2.9844441 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.113300465 + outWeight: 0 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + colorGradient: + serializedVersion: 2 + key0: {r: 1, g: 0.9504018, b: 0, a: 1} + key1: {r: 1, g: 0, b: 0, a: 1} + key2: {r: 0, g: 0, b: 0, a: 0} + key3: {r: 0, g: 0, b: 0, a: 0} + key4: {r: 0, g: 0, b: 0, a: 0} + key5: {r: 0, g: 0, b: 0, a: 0} + key6: {r: 0, g: 0, b: 0, a: 0} + key7: {r: 0, g: 0, b: 0, a: 0} + ctime0: 0 + ctime1: 32960 + ctime2: 65535 + ctime3: 22552 + ctime4: 0 + ctime5: 0 + ctime6: 0 + ctime7: 0 + atime0: 0 + atime1: 65535 + atime2: 0 + atime3: 0 + atime4: 0 + atime5: 0 + atime6: 0 + atime7: 0 + m_Mode: 0 + m_NumColorKeys: 3 + m_NumAlphaKeys: 2 + numCornerVertices: 0 + numCapVertices: 0 + alignment: 1 + textureMode: 0 + shadowBias: 0.5 + generateLightingData: 0 + m_MinVertexDistance: 0.1 + m_Autodestruct: 0 + m_Emitting: 1 diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/Kart/Trail Prefabs/FireTrail.prefab.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/Kart/Trail Prefabs/FireTrail.prefab.meta" new file mode 100644 index 00000000..6d97ff76 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/Kart/Trail Prefabs/FireTrail.prefab.meta" @@ -0,0 +1,7 @@ +fileFormatVersion: 2 +guid: dfa71f3ca0c2e408c855c56585bfbaad +PrefabImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/Kart/Trail Prefabs/LaserTrail.prefab" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/Kart/Trail Prefabs/LaserTrail.prefab" new file mode 100644 index 00000000..0dbd97b3 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/Kart/Trail Prefabs/LaserTrail.prefab" @@ -0,0 +1,146 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!1 &400394846411631765 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 400394846411631766} + - component: {fileID: 400394846411631767} + m_Layer: 0 + m_Name: LaserTrail + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &400394846411631766 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 400394846411631765} + m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} + m_LocalPosition: {x: 0, y: 0, z: 0} + m_LocalScale: {x: 1, y: 1, z: 1} + m_Children: [] + m_Father: {fileID: 0} + m_RootOrder: 0 + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!96 &400394846411631767 +TrailRenderer: + serializedVersion: 2 + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 400394846411631765} + m_Enabled: 1 + m_CastShadows: 1 + m_ReceiveShadows: 1 + m_DynamicOccludee: 1 + m_MotionVectors: 1 + m_LightProbeUsage: 0 + m_ReflectionProbeUsage: 0 + m_RenderingLayerMask: 1 + m_RendererPriority: 0 + m_Materials: + - {fileID: 2100000, guid: 496d4eb29afae4308be4e6a2069959b3, type: 2} + m_StaticBatchInfo: + firstSubMesh: 0 + subMeshCount: 0 + m_StaticBatchRoot: {fileID: 0} + m_ProbeAnchor: {fileID: 0} + m_LightProbeVolumeOverride: {fileID: 0} + m_ScaleInLightmap: 1 + m_PreserveUVs: 0 + m_IgnoreNormalsForChartDetection: 0 + m_ImportantGI: 0 + m_StitchLightmapSeams: 0 + m_SelectedEditorRenderState: 3 + m_MinimumChartSize: 4 + m_AutoUVMaxDistance: 0.5 + m_AutoUVMaxAngle: 89 + m_LightmapParameters: {fileID: 0} + m_SortingLayerID: 0 + m_SortingLayer: 0 + m_SortingOrder: 0 + m_Time: 1 + m_Parameters: + serializedVersion: 3 + widthMultiplier: 0.1 + widthCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 11.106563 + outSlope: 11.106563 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.4175079 + - serializedVersion: 3 + time: 0.12068658 + value: 0.9830848 + inSlope: -0.2776443 + outSlope: -0.2776443 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: -1.8165135 + outSlope: -1.8165135 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.16666669 + outWeight: 0 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + colorGradient: + serializedVersion: 2 + key0: {r: 1, g: 1, b: 1, a: 1} + key1: {r: 1, g: 1, b: 1, a: 1} + key2: {r: 0, g: 0, b: 0, a: 0} + key3: {r: 0, g: 0, b: 0, a: 0} + key4: {r: 0, g: 0, b: 0, a: 0} + key5: {r: 0, g: 0, b: 0, a: 0} + key6: {r: 0, g: 0, b: 0, a: 0} + key7: {r: 0, g: 0, b: 0, a: 0} + ctime0: 0 + ctime1: 65535 + ctime2: 0 + ctime3: 0 + ctime4: 0 + ctime5: 0 + ctime6: 0 + ctime7: 0 + atime0: 0 + atime1: 65535 + atime2: 0 + atime3: 0 + atime4: 0 + atime5: 0 + atime6: 0 + atime7: 0 + m_Mode: 0 + m_NumColorKeys: 2 + m_NumAlphaKeys: 2 + numCornerVertices: 0 + numCapVertices: 0 + alignment: 0 + textureMode: 0 + shadowBias: 0.5 + generateLightingData: 0 + m_MinVertexDistance: 0.1 + m_Autodestruct: 0 + m_Emitting: 1 diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/Kart/Trail Prefabs/LaserTrail.prefab.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/Kart/Trail Prefabs/LaserTrail.prefab.meta" new file mode 100644 index 00000000..64dfa9b2 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/Kart/Trail Prefabs/LaserTrail.prefab.meta" @@ -0,0 +1,7 @@ +fileFormatVersion: 2 +guid: c6e20ffe6d2b946fb9896031aa048f90 +PrefabImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/Kart/Trail Prefabs/RainbowTrail.prefab" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/Kart/Trail Prefabs/RainbowTrail.prefab" new file mode 100644 index 00000000..a6510932 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/Kart/Trail Prefabs/RainbowTrail.prefab" @@ -0,0 +1,222 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!1 &1110986523588131950 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 1110986523588131949} + m_Layer: 0 + m_Name: RainbowTrail + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &1110986523588131949 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1110986523588131950} + m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} + m_LocalPosition: {x: 0, y: 0, z: 0} + m_LocalScale: {x: 1, y: 1, z: 1} + m_Children: + - {fileID: 1110986524093539183} + m_Father: {fileID: 0} + m_RootOrder: 0 + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!1 &1110986524093539152 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 1110986524093539183} + - component: {fileID: 1110986524093539182} + m_Layer: 0 + m_Name: RainbowTrailRenderer + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &1110986524093539183 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1110986524093539152} + m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} + m_LocalPosition: {x: 0, y: 0, z: 0} + m_LocalScale: {x: 1, y: 1, z: 1} + m_Children: [] + m_Father: {fileID: 1110986523588131949} + m_RootOrder: 0 + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!96 &1110986524093539182 +TrailRenderer: + serializedVersion: 2 + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1110986524093539152} + m_Enabled: 1 + m_CastShadows: 1 + m_ReceiveShadows: 1 + m_DynamicOccludee: 1 + m_MotionVectors: 1 + m_LightProbeUsage: 0 + m_ReflectionProbeUsage: 0 + m_RenderingLayerMask: 1 + m_RendererPriority: 0 + m_Materials: + - {fileID: 2100000, guid: 711224fcf6d6c40faafe946b2f78b361, type: 2} + m_StaticBatchInfo: + firstSubMesh: 0 + subMeshCount: 0 + m_StaticBatchRoot: {fileID: 0} + m_ProbeAnchor: {fileID: 0} + m_LightProbeVolumeOverride: {fileID: 0} + m_ScaleInLightmap: 1 + m_PreserveUVs: 0 + m_IgnoreNormalsForChartDetection: 0 + m_ImportantGI: 0 + m_StitchLightmapSeams: 0 + m_SelectedEditorRenderState: 3 + m_MinimumChartSize: 4 + m_AutoUVMaxDistance: 0.5 + m_AutoUVMaxAngle: 89 + m_LightmapParameters: {fileID: 0} + m_SortingLayerID: 0 + m_SortingLayer: 0 + m_SortingOrder: 0 + m_Time: 0.4 + m_Parameters: + serializedVersion: 3 + widthMultiplier: 0.3 + widthCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 0.119549185 + value: 0.6922054 + inSlope: -0.7099102 + outSlope: -0.7099102 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.73180956 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 0.28241187 + value: 0.8951372 + inSlope: -1.4847497 + outSlope: -1.4847497 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 0.38024223 + value: 0.45093054 + inSlope: -1.6205783 + outSlope: -1.6205783 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 0.57298493 + value: 0.6712527 + inSlope: -0.480656 + outSlope: -0.480656 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 0.6993373 + value: 0.2016609 + inSlope: -1.444368 + outSlope: -1.444368 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 0.8543319 + value: 0.40410036 + inSlope: -0.3237343 + outSlope: -0.3237343 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: -1.9932398 + outSlope: -1.9932398 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.14728683 + outWeight: 0 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + colorGradient: + serializedVersion: 2 + key0: {r: 1, g: 1, b: 1, a: 1} + key1: {r: 1, g: 1, b: 1, a: 0} + key2: {r: 1, g: 1, b: 1, a: 0} + key3: {r: 0, g: 0, b: 0, a: 0} + key4: {r: 0, g: 0, b: 0, a: 0} + key5: {r: 0, g: 0, b: 0, a: 0} + key6: {r: 0, g: 0, b: 0, a: 0} + key7: {r: 0, g: 0, b: 0, a: 0} + ctime0: 0 + ctime1: 65535 + ctime2: 65535 + ctime3: 0 + ctime4: 0 + ctime5: 0 + ctime6: 0 + ctime7: 0 + atime0: 0 + atime1: 64957 + atime2: 0 + atime3: 0 + atime4: 0 + atime5: 0 + atime6: 0 + atime7: 0 + m_Mode: 0 + m_NumColorKeys: 2 + m_NumAlphaKeys: 2 + numCornerVertices: 0 + numCapVertices: 0 + alignment: 0 + textureMode: 0 + shadowBias: 0.5 + generateLightingData: 0 + m_MinVertexDistance: 0.1 + m_Autodestruct: 0 + m_Emitting: 1 diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/Kart/Trail Prefabs/RainbowTrail.prefab.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/Kart/Trail Prefabs/RainbowTrail.prefab.meta" new file mode 100644 index 00000000..739b8258 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/Kart/Trail Prefabs/RainbowTrail.prefab.meta" @@ -0,0 +1,7 @@ +fileFormatVersion: 2 +guid: d3ccf67055b3341468030d0fffd8d16f +PrefabImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/ModResources.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/ModResources.meta" new file mode 100644 index 00000000..c56b1025 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/ModResources.meta" @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: e05add00a5fd64e5b9121890297c56f4 +folderAsset: yes +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/ModResources/BillboardMaterials.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/ModResources/BillboardMaterials.meta" new file mode 100644 index 00000000..48ad4f3c --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/ModResources/BillboardMaterials.meta" @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 24442ad403c10324cb67c3a4477dbdbf +folderAsset: yes +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/ModResources/BillboardMaterials/Billboard Content.mat" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/ModResources/BillboardMaterials/Billboard Content.mat" new file mode 100644 index 00000000..8f94ce17 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/ModResources/BillboardMaterials/Billboard Content.mat" @@ -0,0 +1,77 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!21 &2100000 +Material: + serializedVersion: 6 + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_Name: Billboard Content + m_Shader: {fileID: 46, guid: 0000000000000000f000000000000000, type: 0} + m_ShaderKeywords: + m_LightmapFlags: 4 + m_EnableInstancingVariants: 0 + m_DoubleSidedGI: 0 + m_CustomRenderQueue: -1 + stringTagMap: {} + disabledShaderPasses: [] + m_SavedProperties: + serializedVersion: 3 + m_TexEnvs: + - _BumpMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _DetailAlbedoMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _DetailMask: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _DetailNormalMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _EmissionMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _MainTex: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _MetallicGlossMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _OcclusionMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _ParallaxMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + m_Floats: + - _BumpScale: 1 + - _Cutoff: 0.5 + - _DetailNormalMapScale: 1 + - _DstBlend: 0 + - _GlossMapScale: 1 + - _Glossiness: 0.5 + - _GlossyReflections: 1 + - _Metallic: 0 + - _Mode: 0 + - _OcclusionStrength: 1 + - _Parallax: 0.02 + - _SmoothnessTextureChannel: 0 + - _SpecularHighlights: 1 + - _SrcBlend: 1 + - _UVSec: 0 + - _ZWrite: 1 + m_Colors: + - _Color: {r: 0.36187258, g: 0.7169812, b: 0.53230166, a: 1} + - _EmissionColor: {r: 0, g: 0, b: 0, a: 1} diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/ModResources/BillboardMaterials/Billboard Content.mat.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/ModResources/BillboardMaterials/Billboard Content.mat.meta" new file mode 100644 index 00000000..bcbca3c9 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/ModResources/BillboardMaterials/Billboard Content.mat.meta" @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: ba793090d6ae148e9a8a50996460f4f1 +NativeFormatImporter: + externalObjects: {} + mainObjectFileID: 2100000 + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/ModResources/BillboardMaterials/Billboard Frame.mat" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/ModResources/BillboardMaterials/Billboard Frame.mat" new file mode 100644 index 00000000..a1e1f23e --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/ModResources/BillboardMaterials/Billboard Frame.mat" @@ -0,0 +1,77 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!21 &2100000 +Material: + serializedVersion: 6 + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_Name: Billboard Frame + m_Shader: {fileID: 46, guid: 0000000000000000f000000000000000, type: 0} + m_ShaderKeywords: + m_LightmapFlags: 4 + m_EnableInstancingVariants: 0 + m_DoubleSidedGI: 0 + m_CustomRenderQueue: -1 + stringTagMap: {} + disabledShaderPasses: [] + m_SavedProperties: + serializedVersion: 3 + m_TexEnvs: + - _BumpMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _DetailAlbedoMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _DetailMask: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _DetailNormalMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _EmissionMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _MainTex: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _MetallicGlossMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _OcclusionMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _ParallaxMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + m_Floats: + - _BumpScale: 1 + - _Cutoff: 0.5 + - _DetailNormalMapScale: 1 + - _DstBlend: 0 + - _GlossMapScale: 1 + - _Glossiness: 0.371 + - _GlossyReflections: 1 + - _Metallic: 0.074 + - _Mode: 0 + - _OcclusionStrength: 1 + - _Parallax: 0.02 + - _SmoothnessTextureChannel: 0 + - _SpecularHighlights: 1 + - _SrcBlend: 1 + - _UVSec: 0 + - _ZWrite: 1 + m_Colors: + - _Color: {r: 0.8962264, g: 0.8962264, b: 0.8962264, a: 1} + - _EmissionColor: {r: 0, g: 0, b: 0, a: 1} diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/ModResources/BillboardMaterials/Billboard Frame.mat.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/ModResources/BillboardMaterials/Billboard Frame.mat.meta" new file mode 100644 index 00000000..55a71cdf --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/ModResources/BillboardMaterials/Billboard Frame.mat.meta" @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 190c04ee61aaa410e8650f7fc1ce7f41 +NativeFormatImporter: + externalObjects: {} + mainObjectFileID: 2100000 + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/ModResources/BillboardMeshes.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/ModResources/BillboardMeshes.meta" new file mode 100644 index 00000000..3f5de830 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/ModResources/BillboardMeshes.meta" @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: f3a8704d8a6066a41bd6161731c3ef47 +folderAsset: yes +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/ModResources/BillboardMeshes/billboard_3D_basic.fbx" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/ModResources/BillboardMeshes/billboard_3D_basic.fbx" new file mode 100644 index 00000000..81ec0022 Binary files /dev/null and "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/ModResources/BillboardMeshes/billboard_3D_basic.fbx" differ diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/ModResources/BillboardMeshes/billboard_3D_basic.fbx.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/ModResources/BillboardMeshes/billboard_3D_basic.fbx.meta" new file mode 100644 index 00000000..f409ba93 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/ModResources/BillboardMeshes/billboard_3D_basic.fbx.meta" @@ -0,0 +1,113 @@ +fileFormatVersion: 2 +guid: ad9c1e36fab414677bc655cab88a1b71 +ModelImporter: + serializedVersion: 23 + fileIDToRecycleName: + 100000: //RootNode + 100002: Billboard_3D_Basic_Face + 400000: //RootNode + 400002: Billboard_3D_Basic_Face + 2100000: Billboard_Basic_Body + 2100002: Billboard_Basic_Face + 2300000: //RootNode + 2300002: Billboard_3D_Basic_Face + 3300000: //RootNode + 3300002: Billboard_3D_Basic_Face + 4300000: Billboard_3D_Basic + 4300002: Billboard_3D_Basic_Face + externalObjects: + - first: + type: UnityEngine:Material + assembly: UnityEngine.CoreModule + name: Billboard_Basic_Body + second: {fileID: 2100000, guid: b8f40f165e0d44397ba481d9ce5a6f5e, type: 2} + - first: + type: UnityEngine:Material + assembly: UnityEngine.CoreModule + name: Billboard_Basic_Face + second: {fileID: 2100000, guid: 48caea024c5d34c2b837dc134a2c1574, type: 2} + materials: + importMaterials: 0 + materialName: 0 + materialSearch: 1 + materialLocation: 1 + animations: + legacyGenerateAnimations: 4 + bakeSimulation: 0 + resampleCurves: 1 + optimizeGameObjects: 0 + motionNodeName: + rigImportErrors: + rigImportWarnings: + animationImportErrors: + animationImportWarnings: + animationRetargetingWarnings: + animationDoRetargetingWarnings: 0 + importAnimatedCustomProperties: 0 + importConstraints: 0 + animationCompression: 1 + animationRotationError: 0.5 + animationPositionError: 0.5 + animationScaleError: 0.5 + animationWrapMode: 0 + extraExposedTransformPaths: [] + extraUserProperties: [] + clipAnimations: [] + isReadable: 1 + meshes: + lODScreenPercentages: [] + globalScale: 1 + meshCompression: 0 + addColliders: 0 + useSRGBMaterialColor: 1 + importVisibility: 1 + importBlendShapes: 1 + importCameras: 1 + importLights: 1 + swapUVChannels: 0 + generateSecondaryUV: 0 + useFileUnits: 1 + optimizeMeshForGPU: 1 + keepQuads: 0 + weldVertices: 1 + preserveHierarchy: 0 + indexFormat: 0 + secondaryUVAngleDistortion: 8 + secondaryUVAreaDistortion: 15.000001 + secondaryUVHardAngle: 88 + secondaryUVPackMargin: 4 + useFileScale: 1 + previousCalculatedGlobalScale: 1 + hasPreviousCalculatedGlobalScale: 0 + tangentSpace: + normalSmoothAngle: 60 + normalImportMode: 0 + tangentImportMode: 3 + normalCalculationMode: 4 + legacyComputeAllNormalsFromSmoothingGroupsWhenMeshHasBlendShapes: 0 + blendShapeNormalImportMode: 1 + normalSmoothingSource: 0 + importAnimation: 1 + copyAvatar: 0 + humanDescription: + serializedVersion: 2 + human: [] + skeleton: [] + armTwist: 0.5 + foreArmTwist: 0.5 + upperLegTwist: 0.5 + legTwist: 0.5 + armStretch: 0.05 + legStretch: 0.05 + feetSpacing: 0 + rootMotionBoneName: + hasTranslationDoF: 0 + hasExtraRoot: 0 + skeletonHasParents: 1 + lastHumanDescriptionAvatarSource: {instanceID: 0} + animationType: 0 + humanoidOversampling: 1 + additionalBone: 0 + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/ModResources/BillboardMeshes/billboard_3D_tall.fbx" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/ModResources/BillboardMeshes/billboard_3D_tall.fbx" new file mode 100644 index 00000000..9eed252c Binary files /dev/null and "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/ModResources/BillboardMeshes/billboard_3D_tall.fbx" differ diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/ModResources/BillboardMeshes/billboard_3D_tall.fbx.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/ModResources/BillboardMeshes/billboard_3D_tall.fbx.meta" new file mode 100644 index 00000000..3b6107b5 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/ModResources/BillboardMeshes/billboard_3D_tall.fbx.meta" @@ -0,0 +1,110 @@ +fileFormatVersion: 2 +guid: ae9da133c804d4fd8b985969f814bfdc +ModelImporter: + serializedVersion: 23 + fileIDToRecycleName: + 100000: Billboard_3D_Tall + 100002: //RootNode + 100004: Billboard_3D_Tall_Face + 400000: Billboard_3D_Tall + 400002: //RootNode + 400004: Billboard_3D_Tall_Face + 2100000: Billboard_Basic_Body + 2100002: Billboard_Tall_Body + 2300000: Billboard_3D_Tall + 2300002: Billboard_3D_Tall_Face + 3300000: Billboard_3D_Tall + 3300002: Billboard_3D_Tall_Face + 4300000: Billboard_3D_Tall_Face + 4300002: Billboard_3D_Tall + externalObjects: + - first: + type: UnityEngine:Material + assembly: UnityEngine.CoreModule + name: Billboard_Basic_Body + second: {fileID: 2100000, guid: 363706986451e411abaa836bf7896eeb, type: 2} + materials: + importMaterials: 0 + materialName: 0 + materialSearch: 1 + materialLocation: 1 + animations: + legacyGenerateAnimations: 4 + bakeSimulation: 0 + resampleCurves: 1 + optimizeGameObjects: 0 + motionNodeName: + rigImportErrors: + rigImportWarnings: + animationImportErrors: + animationImportWarnings: + animationRetargetingWarnings: + animationDoRetargetingWarnings: 0 + importAnimatedCustomProperties: 0 + importConstraints: 0 + animationCompression: 1 + animationRotationError: 0.5 + animationPositionError: 0.5 + animationScaleError: 0.5 + animationWrapMode: 0 + extraExposedTransformPaths: [] + extraUserProperties: [] + clipAnimations: [] + isReadable: 1 + meshes: + lODScreenPercentages: [] + globalScale: 1 + meshCompression: 0 + addColliders: 0 + useSRGBMaterialColor: 1 + importVisibility: 1 + importBlendShapes: 1 + importCameras: 1 + importLights: 1 + swapUVChannels: 0 + generateSecondaryUV: 0 + useFileUnits: 1 + optimizeMeshForGPU: 1 + keepQuads: 0 + weldVertices: 1 + preserveHierarchy: 0 + indexFormat: 0 + secondaryUVAngleDistortion: 8 + secondaryUVAreaDistortion: 15.000001 + secondaryUVHardAngle: 88 + secondaryUVPackMargin: 4 + useFileScale: 1 + previousCalculatedGlobalScale: 1 + hasPreviousCalculatedGlobalScale: 0 + tangentSpace: + normalSmoothAngle: 60 + normalImportMode: 0 + tangentImportMode: 3 + normalCalculationMode: 4 + legacyComputeAllNormalsFromSmoothingGroupsWhenMeshHasBlendShapes: 0 + blendShapeNormalImportMode: 1 + normalSmoothingSource: 0 + importAnimation: 1 + copyAvatar: 0 + humanDescription: + serializedVersion: 2 + human: [] + skeleton: [] + armTwist: 0.5 + foreArmTwist: 0.5 + upperLegTwist: 0.5 + legTwist: 0.5 + armStretch: 0.05 + legStretch: 0.05 + feetSpacing: 0 + rootMotionBoneName: + hasTranslationDoF: 0 + hasExtraRoot: 0 + skeletonHasParents: 1 + lastHumanDescriptionAvatarSource: {instanceID: 0} + animationType: 0 + humanoidOversampling: 1 + additionalBone: 0 + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/ModResources/Fonts.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/ModResources/Fonts.meta" new file mode 100644 index 00000000..ca736792 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/ModResources/Fonts.meta" @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: de1c35ab6d70d8d4f837f2c2d4f456ef +folderAsset: yes +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/ModResources/Fonts/Bangers-Regular SDF.asset" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/ModResources/Fonts/Bangers-Regular SDF.asset" new file mode 100644 index 00000000..477906c7 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/ModResources/Fonts/Bangers-Regular SDF.asset" @@ -0,0 +1,5931 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!114 &11400000 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 71c1514a6bd24e1e882cebbe1904ce04, type: 3} + m_Name: Bangers-Regular SDF + m_EditorClassIdentifier: + hashCode: -1147108856 + material: {fileID: 21962088495682642} + materialHashCode: -48200061 + m_Version: 1.1.0 + m_SourceFontFileGUID: c455800d5972b405c87596cc71cfd0f8 + m_SourceFontFile_EditorRef: {fileID: 0} + m_SourceFontFile: {fileID: 0} + m_AtlasPopulationMode: 0 + m_FaceInfo: + m_FamilyName: Bangers + m_StyleName: + m_PointSize: 38 + m_Scale: 1 + m_LineHeight: 40.4375 + m_AscentLine: 33.5625 + m_CapLine: 28.124998 + m_MeanLine: 0 + m_Baseline: 0 + m_DescentLine: -6.9375 + m_SuperscriptOffset: 33.5625 + m_SuperscriptSize: 0.5 + m_SubscriptOffset: 0 + m_SubscriptSize: 0.5 + m_UnderlineOffset: 0 + m_UnderlineThickness: 5 + m_StrikethroughOffset: 9.681818 + m_StrikethroughThickness: 5 + m_TabWidth: 74.375 + m_GlyphTable: + - m_Index: 1 + m_Metrics: + m_Width: 7.4375 + m_Height: 40.5 + m_HorizontalBearingX: 0 + m_HorizontalBearingY: 33.5625 + m_HorizontalAdvance: 7.4375 + m_GlyphRect: + m_X: 6 + m_Y: -46 + m_Width: 7 + m_Height: 41 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 2 + m_Metrics: + m_Width: 14.937499 + m_Height: 29.249998 + m_HorizontalBearingX: -0.18749999 + m_HorizontalBearingY: 28.437498 + m_HorizontalAdvance: 10 + m_GlyphRect: + m_X: 456 + m_Y: 87 + m_Width: 15 + m_Height: 29 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 3 + m_Metrics: + m_Width: 18.937498 + m_Height: 13.187499 + m_HorizontalBearingX: 2.6874998 + m_HorizontalBearingY: 29.999998 + m_HorizontalAdvance: 16 + m_GlyphRect: + m_X: 66 + m_Y: 493 + m_Width: 19 + m_Height: 13 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 4 + m_Metrics: + m_Width: 24.499998 + m_Height: 28.374998 + m_HorizontalBearingX: 1.6249999 + m_HorizontalBearingY: 28.187498 + m_HorizontalAdvance: 23.8125 + m_GlyphRect: + m_X: 461 + m_Y: 7 + m_Width: 24 + m_Height: 28 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 5 + m_Metrics: + m_Width: 18.687498 + m_Height: 33.624996 + m_HorizontalBearingX: 0.74999994 + m_HorizontalBearingY: 30.937498 + m_HorizontalAdvance: 16.8125 + m_GlyphRect: + m_X: 123 + m_Y: 138 + m_Width: 19 + m_Height: 34 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 6 + m_Metrics: + m_Width: 28.062498 + m_Height: 30.249998 + m_HorizontalBearingX: 3.0624998 + m_HorizontalBearingY: 29.124998 + m_HorizontalAdvance: 30.375 + m_GlyphRect: + m_X: 109 + m_Y: 7 + m_Width: 28 + m_Height: 30 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 7 + m_Metrics: + m_Width: 22.187498 + m_Height: 28.687498 + m_HorizontalBearingX: 0.74999994 + m_HorizontalBearingY: 28.249998 + m_HorizontalAdvance: 20.3125 + m_GlyphRect: + m_X: 172 + m_Y: 98 + m_Width: 22 + m_Height: 29 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 8 + m_Metrics: + m_Width: 9.999999 + m_Height: 12.499999 + m_HorizontalBearingX: 2.9374998 + m_HorizontalBearingY: 29.999998 + m_HorizontalAdvance: 7.6875 + m_GlyphRect: + m_X: 278 + m_Y: 310 + m_Width: 10 + m_Height: 12 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 9 + m_Metrics: + m_Width: 16.562498 + m_Height: 38.499996 + m_HorizontalBearingX: 1.6249999 + m_HorizontalBearingY: 33.374996 + m_HorizontalAdvance: 12.6875 + m_GlyphRect: + m_X: 162 + m_Y: 49 + m_Width: 17 + m_Height: 38 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 10 + m_Metrics: + m_Width: 17.062498 + m_Height: 38.499996 + m_HorizontalBearingX: -2.1874998 + m_HorizontalBearingY: 33.374996 + m_HorizontalAdvance: 12.5625 + m_GlyphRect: + m_X: 262 + m_Y: 47 + m_Width: 17 + m_Height: 38 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 11 + m_Metrics: + m_Width: 14.937499 + m_Height: 17.062498 + m_HorizontalBearingX: 2.8749998 + m_HorizontalBearingY: 25.437498 + m_HorizontalAdvance: 16.0625 + m_GlyphRect: + m_X: 384 + m_Y: 424 + m_Width: 15 + m_Height: 17 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 12 + m_Metrics: + m_Width: 11.437499 + m_Height: 15.312499 + m_HorizontalBearingX: 1.8749999 + m_HorizontalBearingY: 19.562498 + m_HorizontalAdvance: 11.8125 + m_GlyphRect: + m_X: 178 + m_Y: 490 + m_Width: 11 + m_Height: 15 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 13 + m_Metrics: + m_Width: 9.124999 + m_Height: 11.124999 + m_HorizontalBearingX: -1.3124999 + m_HorizontalBearingY: 6.9374995 + m_HorizontalAdvance: 7.5 + m_GlyphRect: + m_X: 466 + m_Y: 384 + m_Width: 9 + m_Height: 11 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 14 + m_Metrics: + m_Width: 13.624999 + m_Height: 6.8124995 + m_HorizontalBearingX: 1.4999999 + m_HorizontalBearingY: 15.874999 + m_HorizontalAdvance: 13.6875 + m_GlyphRect: + m_X: 410 + m_Y: 423 + m_Width: 14 + m_Height: 7 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 15 + m_Metrics: + m_Width: 8.187499 + m_Height: 7.3124995 + m_HorizontalBearingX: -0.31249997 + m_HorizontalBearingY: 6.4999995 + m_HorizontalAdvance: 7.9375 + m_GlyphRect: + m_X: 497 + m_Y: 39 + m_Width: 8 + m_Height: 7 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 16 + m_Metrics: + m_Width: 25.499998 + m_Height: 29.874998 + m_HorizontalBearingX: -0.43749997 + m_HorizontalBearingY: 28.749998 + m_HorizontalAdvance: 20.9375 + m_GlyphRect: + m_X: 313 + m_Y: 6 + m_Width: 25 + m_Height: 30 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 17 + m_Metrics: + m_Width: 18.437498 + m_Height: 27.874998 + m_HorizontalBearingX: 1.4999999 + m_HorizontalBearingY: 27.937498 + m_HorizontalAdvance: 18 + m_GlyphRect: + m_X: 262 + m_Y: 96 + m_Width: 18 + m_Height: 28 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 18 + m_Metrics: + m_Width: 12.437499 + m_Height: 27.249998 + m_HorizontalBearingX: 2.7499998 + m_HorizontalBearingY: 27.437498 + m_HorizontalAdvance: 12.1875 + m_GlyphRect: + m_X: 385 + m_Y: 48 + m_Width: 12 + m_Height: 27 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 19 + m_Metrics: + m_Width: 20.374998 + m_Height: 27.374998 + m_HorizontalBearingX: 0 + m_HorizontalBearingY: 27.749998 + m_HorizontalAdvance: 17.75 + m_GlyphRect: + m_X: 456 + m_Y: 128 + m_Width: 20 + m_Height: 27 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 20 + m_Metrics: + m_Width: 19.312498 + m_Height: 28.374998 + m_HorizontalBearingX: 0.37499997 + m_HorizontalBearingY: 27.999998 + m_HorizontalAdvance: 17.375 + m_GlyphRect: + m_X: 368 + m_Y: 227 + m_Width: 19 + m_Height: 28 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 21 + m_Metrics: + m_Width: 18.312498 + m_Height: 27.562498 + m_HorizontalBearingX: 0.81249994 + m_HorizontalBearingY: 27.499998 + m_HorizontalAdvance: 17.4375 + m_GlyphRect: + m_X: 405 + m_Y: 345 + m_Width: 18 + m_Height: 28 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 22 + m_Metrics: + m_Width: 17.937498 + m_Height: 27.874998 + m_HorizontalBearingX: 1.6249999 + m_HorizontalBearingY: 27.749998 + m_HorizontalAdvance: 17.125 + m_GlyphRect: + m_X: 488 + m_Y: 177 + m_Width: 18 + m_Height: 28 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 23 + m_Metrics: + m_Width: 18.187498 + m_Height: 27.874998 + m_HorizontalBearingX: 1.9374999 + m_HorizontalBearingY: 28.062498 + m_HorizontalAdvance: 18.1875 + m_GlyphRect: + m_X: 139 + m_Y: 451 + m_Width: 18 + m_Height: 28 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 24 + m_Metrics: + m_Width: 16.437498 + m_Height: 27.812498 + m_HorizontalBearingX: 1.0624999 + m_HorizontalBearingY: 28.124998 + m_HorizontalAdvance: 12.875 + m_GlyphRect: + m_X: 145 + m_Y: 411 + m_Width: 16 + m_Height: 28 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 25 + m_Metrics: + m_Width: 21.624998 + m_Height: 28.687498 + m_HorizontalBearingX: 0.74999994 + m_HorizontalBearingY: 28.312498 + m_HorizontalAdvance: 19.6875 + m_GlyphRect: + m_X: 423 + m_Y: 86 + m_Width: 22 + m_Height: 29 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 26 + m_Metrics: + m_Width: 17.999998 + m_Height: 27.999998 + m_HorizontalBearingX: 2.6249998 + m_HorizontalBearingY: 28.249998 + m_HorizontalAdvance: 18.5625 + m_GlyphRect: + m_X: 488 + m_Y: 216 + m_Width: 18 + m_Height: 28 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 27 + m_Metrics: + m_Width: 8.937499 + m_Height: 20.249998 + m_HorizontalBearingX: 0.74999994 + m_HorizontalBearingY: 21.937498 + m_HorizontalAdvance: 7.4375 + m_GlyphRect: + m_X: 497 + m_Y: 7 + m_Width: 9 + m_Height: 20 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 28 + m_Metrics: + m_Width: 10.249999 + m_Height: 22.187498 + m_HorizontalBearingX: 0.68749994 + m_HorizontalBearingY: 21.187498 + m_HorizontalAdvance: 9.9375 + m_GlyphRect: + m_X: 466 + m_Y: 327 + m_Width: 10 + m_Height: 22 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 29 + m_Metrics: + m_Width: 12.562499 + m_Height: 26.812498 + m_HorizontalBearingX: 1.7499999 + m_HorizontalBearingY: 27.999998 + m_HorizontalAdvance: 11 + m_GlyphRect: + m_X: 252 + m_Y: 373 + m_Width: 13 + m_Height: 27 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 30 + m_Metrics: + m_Width: 12.312499 + m_Height: 15.687499 + m_HorizontalBearingX: 0.31249997 + m_HorizontalBearingY: 15.812499 + m_HorizontalAdvance: 11.5 + m_GlyphRect: + m_X: 154 + m_Y: 490 + m_Width: 12 + m_Height: 16 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 31 + m_Metrics: + m_Width: 12.812499 + m_Height: 27.312498 + m_HorizontalBearingX: 0.49999997 + m_HorizontalBearingY: 27.437498 + m_HorizontalAdvance: 11.1875 + m_GlyphRect: + m_X: 464 + m_Y: 167 + m_Width: 13 + m_Height: 27 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 32 + m_Metrics: + m_Width: 15.812499 + m_Height: 28.624998 + m_HorizontalBearingX: 3.6249998 + m_HorizontalBearingY: 27.749998 + m_HorizontalAdvance: 16.625 + m_GlyphRect: + m_X: 388 + m_Y: 186 + m_Width: 16 + m_Height: 29 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 33 + m_Metrics: + m_Width: 37.187496 + m_Height: 28.187498 + m_HorizontalBearingX: 1.6874999 + m_HorizontalBearingY: 27.374998 + m_HorizontalAdvance: 37.5 + m_GlyphRect: + m_X: 60 + m_Y: 7 + m_Width: 37 + m_Height: 28 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 34 + m_Metrics: + m_Width: 18.437498 + m_Height: 28.124998 + m_HorizontalBearingX: -0.81249994 + m_HorizontalBearingY: 28.187498 + m_HorizontalAdvance: 16.4375 + m_GlyphRect: + m_X: 399 + m_Y: 227 + m_Width: 18 + m_Height: 28 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 35 + m_Metrics: + m_Width: 19.499998 + m_Height: 28.249998 + m_HorizontalBearingX: -0.062499996 + m_HorizontalBearingY: 28.124998 + m_HorizontalAdvance: 16.25 + m_GlyphRect: + m_X: 368 + m_Y: 267 + m_Width: 19 + m_Height: 28 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 36 + m_Metrics: + m_Width: 17.937498 + m_Height: 27.812498 + m_HorizontalBearingX: 1.4374999 + m_HorizontalBearingY: 27.812498 + m_HorizontalAdvance: 15.75 + m_GlyphRect: + m_X: 488 + m_Y: 255 + m_Width: 18 + m_Height: 28 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 37 + m_Metrics: + m_Width: 19.187498 + m_Height: 27.937498 + m_HorizontalBearingX: 0.12499999 + m_HorizontalBearingY: 27.749998 + m_HorizontalAdvance: 16.75 + m_GlyphRect: + m_X: 429 + m_Y: 287 + m_Width: 19 + m_Height: 28 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 38 + m_Metrics: + m_Width: 16.999998 + m_Height: 28.062498 + m_HorizontalBearingX: 0.24999999 + m_HorizontalBearingY: 28.062498 + m_HorizontalAdvance: 12.9375 + m_GlyphRect: + m_X: 460 + m_Y: 207 + m_Width: 17 + m_Height: 28 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 39 + m_Metrics: + m_Width: 17.749998 + m_Height: 27.999998 + m_HorizontalBearingX: 0.12499999 + m_HorizontalBearingY: 27.999998 + m_HorizontalAdvance: 12.9375 + m_GlyphRect: + m_X: 488 + m_Y: 294 + m_Width: 18 + m_Height: 28 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 40 + m_Metrics: + m_Width: 19.937498 + m_Height: 29.374998 + m_HorizontalBearingX: 1.5624999 + m_HorizontalBearingY: 28.437498 + m_HorizontalAdvance: 18.9375 + m_GlyphRect: + m_X: 240 + m_Y: 190 + m_Width: 20 + m_Height: 29 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 41 + m_Metrics: + m_Width: 20.499998 + m_Height: 28.187498 + m_HorizontalBearingX: 0.31249997 + m_HorizontalBearingY: 28.124998 + m_HorizontalAdvance: 16.8125 + m_GlyphRect: + m_X: 424 + m_Y: 127 + m_Width: 20 + m_Height: 28 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 42 + m_Metrics: + m_Width: 11.437499 + m_Height: 27.499998 + m_HorizontalBearingX: -0.24999999 + m_HorizontalBearingY: 27.562498 + m_HorizontalAdvance: 7.625 + m_GlyphRect: + m_X: 169 + m_Y: 451 + m_Width: 11 + m_Height: 27 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 43 + m_Metrics: + m_Width: 16.187498 + m_Height: 29.187498 + m_HorizontalBearingX: -1.0624999 + m_HorizontalBearingY: 29.124998 + m_HorizontalAdvance: 10.625 + m_GlyphRect: + m_X: 271 + m_Y: 187 + m_Width: 16 + m_Height: 29 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 44 + m_Metrics: + m_Width: 22.687498 + m_Height: 28.437498 + m_HorizontalBearingX: 0.24999999 + m_HorizontalBearingY: 28.437498 + m_HorizontalAdvance: 17.5625 + m_GlyphRect: + m_X: 389 + m_Y: 87 + m_Width: 23 + m_Height: 28 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 45 + m_Metrics: + m_Width: 11.562499 + m_Height: 27.999998 + m_HorizontalBearingX: 0.43749997 + m_HorizontalBearingY: 27.999998 + m_HorizontalAdvance: 11.5 + m_GlyphRect: + m_X: 173 + m_Y: 411 + m_Width: 12 + m_Height: 28 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 46 + m_Metrics: + m_Width: 27.249998 + m_Height: 28.437498 + m_HorizontalBearingX: -1.1874999 + m_HorizontalBearingY: 28.749998 + m_HorizontalAdvance: 23.5 + m_GlyphRect: + m_X: 188 + m_Y: 7 + m_Width: 27 + m_Height: 28 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 47 + m_Metrics: + m_Width: 20.937498 + m_Height: 28.687498 + m_HorizontalBearingX: 0.18749999 + m_HorizontalBearingY: 28.499998 + m_HorizontalAdvance: 17.1875 + m_GlyphRect: + m_X: 324 + m_Y: 186 + m_Width: 21 + m_Height: 29 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 48 + m_Metrics: + m_Width: 20.062498 + m_Height: 28.562498 + m_HorizontalBearingX: 1.1249999 + m_HorizontalBearingY: 28.437498 + m_HorizontalAdvance: 18.75 + m_GlyphRect: + m_X: 356 + m_Y: 186 + m_Width: 20 + m_Height: 29 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 49 + m_Metrics: + m_Width: 17.937498 + m_Height: 28.124998 + m_HorizontalBearingX: -0.12499999 + m_HorizontalBearingY: 28.062498 + m_HorizontalAdvance: 14.375 + m_GlyphRect: + m_X: 233 + m_Y: 96 + m_Width: 18 + m_Height: 28 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 50 + m_Metrics: + m_Width: 20.437498 + m_Height: 30.249998 + m_HorizontalBearingX: 1.1249999 + m_HorizontalBearingY: 28.437498 + m_HorizontalAdvance: 19.9375 + m_GlyphRect: + m_X: 55 + m_Y: 90 + m_Width: 20 + m_Height: 30 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 51 + m_Metrics: + m_Width: 19.374998 + m_Height: 27.812498 + m_HorizontalBearingX: 0.12499999 + m_HorizontalBearingY: 27.812498 + m_HorizontalAdvance: 16.875 + m_GlyphRect: + m_X: 343 + m_Y: 306 + m_Width: 19 + m_Height: 28 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 52 + m_Metrics: + m_Width: 19.062498 + m_Height: 27.812498 + m_HorizontalBearingX: 0.49999997 + m_HorizontalBearingY: 27.749998 + m_HorizontalAdvance: 16.3125 + m_GlyphRect: + m_X: 374 + m_Y: 306 + m_Width: 19 + m_Height: 28 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 53 + m_Metrics: + m_Width: 14.687499 + m_Height: 27.749998 + m_HorizontalBearingX: 3.3749998 + m_HorizontalBearingY: 27.749998 + m_HorizontalAdvance: 13.75 + m_GlyphRect: + m_X: 192 + m_Y: 450 + m_Width: 15 + m_Height: 28 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 54 + m_Metrics: + m_Width: 18.562498 + m_Height: 28.312498 + m_HorizontalBearingX: 1.1249999 + m_HorizontalBearingY: 27.687498 + m_HorizontalAdvance: 15.9375 + m_GlyphRect: + m_X: 399 + m_Y: 267 + m_Width: 19 + m_Height: 28 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 55 + m_Metrics: + m_Width: 16.687498 + m_Height: 28.187498 + m_HorizontalBearingX: 2.1874998 + m_HorizontalBearingY: 27.937498 + m_HorizontalAdvance: 14.375 + m_GlyphRect: + m_X: 460 + m_Y: 247 + m_Width: 17 + m_Height: 28 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 56 + m_Metrics: + m_Width: 25.937498 + m_Height: 28.249998 + m_HorizontalBearingX: 1.4999999 + m_HorizontalBearingY: 28.124998 + m_HorizontalAdvance: 22.8125 + m_GlyphRect: + m_X: 387 + m_Y: 7 + m_Width: 26 + m_Height: 28 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 57 + m_Metrics: + m_Width: 21.187498 + m_Height: 28.062498 + m_HorizontalBearingX: -1.3749999 + m_HorizontalBearingY: 27.749998 + m_HorizontalAdvance: 15.625 + m_GlyphRect: + m_X: 391 + m_Y: 127 + m_Width: 21 + m_Height: 28 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 58 + m_Metrics: + m_Width: 16.874998 + m_Height: 27.374998 + m_HorizontalBearingX: 2.8749998 + m_HorizontalBearingY: 27.999998 + m_HorizontalAdvance: 14.5625 + m_GlyphRect: + m_X: 196 + m_Y: 412 + m_Width: 17 + m_Height: 27 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 59 + m_Metrics: + m_Width: 19.874998 + m_Height: 26.562498 + m_HorizontalBearingX: 0.24999999 + m_HorizontalBearingY: 26.874998 + m_HorizontalAdvance: 16.375 + m_GlyphRect: + m_X: 312 + m_Y: 346 + m_Width: 20 + m_Height: 27 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 60 + m_Metrics: + m_Width: 16.437498 + m_Height: 29.687498 + m_HorizontalBearingX: 0.74999994 + m_HorizontalBearingY: 29.562498 + m_HorizontalAdvance: 12.125 + m_GlyphRect: + m_X: 245 + m_Y: 230 + m_Width: 16 + m_Height: 30 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 61 + m_Metrics: + m_Width: 13.624999 + m_Height: 28.562498 + m_HorizontalBearingX: 4.8124995 + m_HorizontalBearingY: 28.687498 + m_HorizontalAdvance: 19.375 + m_GlyphRect: + m_X: 299 + m_Y: 185 + m_Width: 14 + m_Height: 29 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 62 + m_Metrics: + m_Width: 15.937499 + m_Height: 30.062498 + m_HorizontalBearingX: -0.81249994 + m_HorizontalBearingY: 28.937498 + m_HorizontalAdvance: 11.875 + m_GlyphRect: + m_X: 206 + m_Y: 97 + m_Width: 16 + m_Height: 30 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 63 + m_Metrics: + m_Width: 12.812499 + m_Height: 10.687499 + m_HorizontalBearingX: 2.1874998 + m_HorizontalBearingY: 33.749996 + m_HorizontalAdvance: 13.8125 + m_GlyphRect: + m_X: 313 + m_Y: 489 + m_Width: 13 + m_Height: 11 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 64 + m_Metrics: + m_Width: 16.812498 + m_Height: 4.2499995 + m_HorizontalBearingX: -2.0624998 + m_HorizontalBearingY: 0.18749999 + m_HorizontalAdvance: 15.25 + m_GlyphRect: + m_X: 259 + m_Y: 490 + m_Width: 17 + m_Height: 4 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 65 + m_Metrics: + m_Width: 9.874999 + m_Height: 11.812499 + m_HorizontalBearingX: 1.8124999 + m_HorizontalBearingY: 33.812496 + m_HorizontalAdvance: 13.625 + m_GlyphRect: + m_X: 98 + m_Y: 388 + m_Width: 10 + m_Height: 12 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 66 + m_Metrics: + m_Width: 18.437498 + m_Height: 28.124998 + m_HorizontalBearingX: -0.81249994 + m_HorizontalBearingY: 28.187498 + m_HorizontalAdvance: 16.4375 + m_GlyphRect: + m_X: 252 + m_Y: 334 + m_Width: 18 + m_Height: 28 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 67 + m_Metrics: + m_Width: 19.499998 + m_Height: 28.249998 + m_HorizontalBearingX: -0.062499996 + m_HorizontalBearingY: 28.124998 + m_HorizontalAdvance: 16.25 + m_GlyphRect: + m_X: 429 + m_Y: 248 + m_Width: 19 + m_Height: 28 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 68 + m_Metrics: + m_Width: 17.937498 + m_Height: 27.812498 + m_HorizontalBearingX: 1.4374999 + m_HorizontalBearingY: 27.812498 + m_HorizontalAdvance: 15.75 + m_GlyphRect: + m_X: 488 + m_Y: 333 + m_Width: 18 + m_Height: 28 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 69 + m_Metrics: + m_Width: 19.187498 + m_Height: 27.937498 + m_HorizontalBearingX: 0.12499999 + m_HorizontalBearingY: 27.749998 + m_HorizontalAdvance: 16.75 + m_GlyphRect: + m_X: 343 + m_Y: 345 + m_Width: 19 + m_Height: 28 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 70 + m_Metrics: + m_Width: 16.999998 + m_Height: 28.062498 + m_HorizontalBearingX: 0.24999999 + m_HorizontalBearingY: 28.062498 + m_HorizontalAdvance: 12.9375 + m_GlyphRect: + m_X: 460 + m_Y: 287 + m_Width: 17 + m_Height: 28 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 71 + m_Metrics: + m_Width: 17.749998 + m_Height: 27.999998 + m_HorizontalBearingX: 0.12499999 + m_HorizontalBearingY: 27.999998 + m_HorizontalAdvance: 12.9375 + m_GlyphRect: + m_X: 488 + m_Y: 372 + m_Width: 18 + m_Height: 28 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 72 + m_Metrics: + m_Width: 19.937498 + m_Height: 29.374998 + m_HorizontalBearingX: 1.5624999 + m_HorizontalBearingY: 28.437498 + m_HorizontalAdvance: 18.9375 + m_GlyphRect: + m_X: 273 + m_Y: 228 + m_Width: 20 + m_Height: 29 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 73 + m_Metrics: + m_Width: 20.437498 + m_Height: 28.187498 + m_HorizontalBearingX: 0.24999999 + m_HorizontalBearingY: 28.124998 + m_HorizontalAdvance: 16.75 + m_GlyphRect: + m_X: 304 + m_Y: 227 + m_Width: 20 + m_Height: 28 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 74 + m_Metrics: + m_Width: 10.624999 + m_Height: 27.499998 + m_HorizontalBearingX: 0.18749999 + m_HorizontalBearingY: 27.562498 + m_HorizontalAdvance: 7.6875 + m_GlyphRect: + m_X: 291 + m_Y: 38 + m_Width: 11 + m_Height: 27 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 75 + m_Metrics: + m_Width: 16.187498 + m_Height: 29.187498 + m_HorizontalBearingX: -1.0624999 + m_HorizontalBearingY: 29.124998 + m_HorizontalAdvance: 10.625 + m_GlyphRect: + m_X: 250 + m_Y: 272 + m_Width: 16 + m_Height: 29 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 76 + m_Metrics: + m_Width: 22.687498 + m_Height: 28.437498 + m_HorizontalBearingX: 0.24999999 + m_HorizontalBearingY: 28.437498 + m_HorizontalAdvance: 17.5625 + m_GlyphRect: + m_X: 444 + m_Y: 47 + m_Width: 23 + m_Height: 28 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 77 + m_Metrics: + m_Width: 11.562499 + m_Height: 27.999998 + m_HorizontalBearingX: 0.43749997 + m_HorizontalBearingY: 27.999998 + m_HorizontalAdvance: 11.5 + m_GlyphRect: + m_X: 218 + m_Y: 450 + m_Width: 12 + m_Height: 28 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 78 + m_Metrics: + m_Width: 27.249998 + m_Height: 28.437498 + m_HorizontalBearingX: -1.1874999 + m_HorizontalBearingY: 28.749998 + m_HorizontalAdvance: 23.5 + m_GlyphRect: + m_X: 227 + m_Y: 7 + m_Width: 27 + m_Height: 28 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 79 + m_Metrics: + m_Width: 20.999998 + m_Height: 28.687498 + m_HorizontalBearingX: 0.18749999 + m_HorizontalBearingY: 28.499998 + m_HorizontalAdvance: 17.1875 + m_GlyphRect: + m_X: 336 + m_Y: 226 + m_Width: 21 + m_Height: 29 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 80 + m_Metrics: + m_Width: 20.062498 + m_Height: 28.562498 + m_HorizontalBearingX: 1.1249999 + m_HorizontalBearingY: 28.437498 + m_HorizontalAdvance: 18.75 + m_GlyphRect: + m_X: 304 + m_Y: 266 + m_Width: 20 + m_Height: 29 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 81 + m_Metrics: + m_Width: 17.937498 + m_Height: 28.124998 + m_HorizontalBearingX: -0.12499999 + m_HorizontalBearingY: 28.062498 + m_HorizontalAdvance: 14.375 + m_GlyphRect: + m_X: 488 + m_Y: 58 + m_Width: 18 + m_Height: 28 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 82 + m_Metrics: + m_Width: 20.437498 + m_Height: 30.249998 + m_HorizontalBearingX: 1.1249999 + m_HorizontalBearingY: 28.437498 + m_HorizontalAdvance: 19.9375 + m_GlyphRect: + m_X: 58 + m_Y: 48 + m_Width: 20 + m_Height: 30 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 83 + m_Metrics: + m_Width: 19.374998 + m_Height: 27.812498 + m_HorizontalBearingX: 0.12499999 + m_HorizontalBearingY: 27.812498 + m_HorizontalAdvance: 16.875 + m_GlyphRect: + m_X: 374 + m_Y: 345 + m_Width: 19 + m_Height: 28 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 84 + m_Metrics: + m_Width: 19.062498 + m_Height: 27.812498 + m_HorizontalBearingX: 0.49999997 + m_HorizontalBearingY: 27.749998 + m_HorizontalAdvance: 16.3125 + m_GlyphRect: + m_X: 435 + m_Y: 326 + m_Width: 19 + m_Height: 28 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 85 + m_Metrics: + m_Width: 14.687499 + m_Height: 27.749998 + m_HorizontalBearingX: 3.3749998 + m_HorizontalBearingY: 27.749998 + m_HorizontalAdvance: 13.75 + m_GlyphRect: + m_X: 224 + m_Y: 411 + m_Width: 15 + m_Height: 28 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 86 + m_Metrics: + m_Width: 18.562498 + m_Height: 28.312498 + m_HorizontalBearingX: 1.1249999 + m_HorizontalBearingY: 27.687498 + m_HorizontalAdvance: 15.9375 + m_GlyphRect: + m_X: 282 + m_Y: 334 + m_Width: 19 + m_Height: 28 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 87 + m_Metrics: + m_Width: 16.687498 + m_Height: 28.187498 + m_HorizontalBearingX: 2.1874998 + m_HorizontalBearingY: 27.937498 + m_HorizontalAdvance: 14.375 + m_GlyphRect: + m_X: 60 + m_Y: 412 + m_Width: 17 + m_Height: 28 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 88 + m_Metrics: + m_Width: 25.937498 + m_Height: 28.249998 + m_HorizontalBearingX: 1.4999999 + m_HorizontalBearingY: 28.124998 + m_HorizontalAdvance: 22.8125 + m_GlyphRect: + m_X: 424 + m_Y: 7 + m_Width: 26 + m_Height: 28 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 89 + m_Metrics: + m_Width: 21.187498 + m_Height: 28.062498 + m_HorizontalBearingX: -1.3749999 + m_HorizontalBearingY: 27.749998 + m_HorizontalAdvance: 15.625 + m_GlyphRect: + m_X: 431 + m_Y: 167 + m_Width: 21 + m_Height: 28 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 90 + m_Metrics: + m_Width: 16.874998 + m_Height: 27.374998 + m_HorizontalBearingX: 2.8749998 + m_HorizontalBearingY: 27.999998 + m_HorizontalAdvance: 14.5625 + m_GlyphRect: + m_X: 241 + m_Y: 451 + m_Width: 17 + m_Height: 27 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 91 + m_Metrics: + m_Width: 19.874998 + m_Height: 26.562498 + m_HorizontalBearingX: 0.24999999 + m_HorizontalBearingY: 26.874998 + m_HorizontalAdvance: 16.375 + m_GlyphRect: + m_X: 435 + m_Y: 365 + m_Width: 20 + m_Height: 27 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 92 + m_Metrics: + m_Width: 12.312499 + m_Height: 27.499998 + m_HorizontalBearingX: 1.2499999 + m_HorizontalBearingY: 27.812498 + m_HorizontalAdvance: 10.6875 + m_GlyphRect: + m_X: 405 + m_Y: 307 + m_Width: 12 + m_Height: 27 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 93 + m_Metrics: + m_Width: 11.374999 + m_Height: 29.562498 + m_HorizontalBearingX: 0.81249994 + m_HorizontalBearingY: 28.812498 + m_HorizontalAdvance: 9.4375 + m_GlyphRect: + m_X: 66 + m_Y: 451 + m_Width: 11 + m_Height: 30 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 94 + m_Metrics: + m_Width: 12.374999 + m_Height: 27.499998 + m_HorizontalBearingX: 0.68749994 + m_HorizontalBearingY: 27.812498 + m_HorizontalAdvance: 10.375 + m_GlyphRect: + m_X: 250 + m_Y: 412 + m_Width: 12 + m_Height: 27 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 95 + m_Metrics: + m_Width: 16.874998 + m_Height: 9.124999 + m_HorizontalBearingX: 2.5624998 + m_HorizontalBearingY: 26.249998 + m_HorizontalAdvance: 15.4375 + m_GlyphRect: + m_X: 250 + m_Y: 313 + m_Width: 17 + m_Height: 9 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 96 + m_Metrics: + m_Width: 0 + m_Height: 0 + m_HorizontalBearingX: 0 + m_HorizontalBearingY: 0 + m_HorizontalAdvance: 7.4375 + m_GlyphRect: + m_X: 6 + m_Y: -5 + m_Width: 0 + m_Height: 0 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 97 + m_Metrics: + m_Width: 14.937499 + m_Height: 29.249998 + m_HorizontalBearingX: -2.7499998 + m_HorizontalBearingY: 29.374998 + m_HorizontalAdvance: 10.0625 + m_GlyphRect: + m_X: 278 + m_Y: 269 + m_Width: 15 + m_Height: 29 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 98 + m_Metrics: + m_Width: 17.937498 + m_Height: 33.562496 + m_HorizontalBearingX: 2.0624998 + m_HorizontalBearingY: 30.312498 + m_HorizontalAdvance: 16.9375 + m_GlyphRect: + m_X: 153 + m_Y: 190 + m_Width: 18 + m_Height: 34 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 99 + m_Metrics: + m_Width: 17.874998 + m_Height: 27.874998 + m_HorizontalBearingX: 0 + m_HorizontalBearingY: 27.874998 + m_HorizontalAdvance: 15.25 + m_GlyphRect: + m_X: 488 + m_Y: 411 + m_Width: 18 + m_Height: 28 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 100 + m_Metrics: + m_Width: 17.124998 + m_Height: 17.499998 + m_HorizontalBearingX: 2.1249998 + m_HorizontalBearingY: 26.937498 + m_HorizontalAdvance: 16.3125 + m_GlyphRect: + m_X: 220 + m_Y: 378 + m_Width: 17 + m_Height: 17 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 101 + m_Metrics: + m_Width: 18.937498 + m_Height: 27.374998 + m_HorizontalBearingX: 1.7499999 + m_HorizontalBearingY: 27.999998 + m_HorizontalAdvance: 16.9375 + m_GlyphRect: + m_X: 405 + m_Y: 385 + m_Width: 19 + m_Height: 27 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 102 + m_Metrics: + m_Width: 11.312499 + m_Height: 29.562498 + m_HorizontalBearingX: 0.74999994 + m_HorizontalBearingY: 28.812498 + m_HorizontalAdvance: 9.25 + m_GlyphRect: + m_X: 89 + m_Y: 451 + m_Width: 11 + m_Height: 30 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 103 + m_Metrics: + m_Width: 19.187498 + m_Height: 29.562498 + m_HorizontalBearingX: 0.81249994 + m_HorizontalBearingY: 28.937498 + m_HorizontalAdvance: 16.6875 + m_GlyphRect: + m_X: 429 + m_Y: 206 + m_Width: 19 + m_Height: 30 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 104 + m_Metrics: + m_Width: 15.937499 + m_Height: 6.6874995 + m_HorizontalBearingX: 1.8124999 + m_HorizontalBearingY: 33.562496 + m_HorizontalAdvance: 19.625 + m_GlyphRect: + m_X: 232 + m_Y: 489 + m_Width: 16 + m_Height: 7 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 105 + m_Metrics: + m_Width: 21.687498 + m_Height: 25.624998 + m_HorizontalBearingX: 2.2499998 + m_HorizontalBearingY: 28.749998 + m_HorizontalAdvance: 21.875 + m_GlyphRect: + m_X: 276 + m_Y: 373 + m_Width: 22 + m_Height: 26 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 106 + m_Metrics: + m_Width: 18.437498 + m_Height: 28.124998 + m_HorizontalBearingX: -0.81249994 + m_HorizontalBearingY: 28.187498 + m_HorizontalAdvance: 16.4375 + m_GlyphRect: + m_X: 88 + m_Y: 412 + m_Width: 18 + m_Height: 28 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 107 + m_Metrics: + m_Width: 18.874998 + m_Height: 23.624998 + m_HorizontalBearingX: 1.6249999 + m_HorizontalBearingY: 24.749998 + m_HorizontalAdvance: 17.6875 + m_GlyphRect: + m_X: 435 + m_Y: 403 + m_Width: 19 + m_Height: 24 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 108 + m_Metrics: + m_Width: 14.562499 + m_Height: 9.312499 + m_HorizontalBearingX: 2.4999998 + m_HorizontalBearingY: 18.624998 + m_HorizontalAdvance: 15.1875 + m_GlyphRect: + m_X: 287 + m_Y: 490 + m_Width: 15 + m_Height: 9 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 109 + m_Metrics: + m_Width: 13.624999 + m_Height: 6.8124995 + m_HorizontalBearingX: 1.4999999 + m_HorizontalBearingY: 15.874999 + m_HorizontalAdvance: 13.6875 + m_GlyphRect: + m_X: 396 + m_Y: 476 + m_Width: 14 + m_Height: 7 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 110 + m_Metrics: + m_Width: 20.187498 + m_Height: 23.874998 + m_HorizontalBearingX: 2.4374998 + m_HorizontalBearingY: 28.749998 + m_HorizontalAdvance: 20.4375 + m_GlyphRect: + m_X: 342 + m_Y: 384 + m_Width: 20 + m_Height: 24 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 111 + m_Metrics: + m_Width: 14.874999 + m_Height: 7.1874995 + m_HorizontalBearingX: 1.8124999 + m_HorizontalBearingY: 33.562496 + m_HorizontalAdvance: 18.5625 + m_GlyphRect: + m_X: 60 + m_Y: 393 + m_Width: 15 + m_Height: 7 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 112 + m_Metrics: + m_Width: 9.187499 + m_Height: 9.062499 + m_HorizontalBearingX: 3.6874998 + m_HorizontalBearingY: 28.437498 + m_HorizontalAdvance: 9.0625 + m_GlyphRect: + m_X: 417 + m_Y: 442 + m_Width: 9 + m_Height: 9 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 113 + m_Metrics: + m_Width: 13.874999 + m_Height: 18.249998 + m_HorizontalBearingX: 0.43749997 + m_HorizontalBearingY: 19.874998 + m_HorizontalAdvance: 13.9375 + m_GlyphRect: + m_X: 347 + m_Y: 488 + m_Width: 14 + m_Height: 18 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 114 + m_Metrics: + m_Width: 17.937498 + m_Height: 20.562498 + m_HorizontalBearingX: 1.5624999 + m_HorizontalBearingY: 27.749998 + m_HorizontalAdvance: 16.5 + m_GlyphRect: + m_X: 334 + m_Y: 419 + m_Width: 18 + m_Height: 21 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 115 + m_Metrics: + m_Width: 15.312499 + m_Height: 22.499998 + m_HorizontalBearingX: 1.8124999 + m_HorizontalBearingY: 27.999998 + m_HorizontalAdvance: 15.1875 + m_GlyphRect: + m_X: 87 + m_Y: 98 + m_Width: 15 + m_Height: 22 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 116 + m_Metrics: + m_Width: 9.687499 + m_Height: 12.937499 + m_HorizontalBearingX: 1.8124999 + m_HorizontalBearingY: 33.812496 + m_HorizontalAdvance: 13.4375 + m_GlyphRect: + m_X: 363 + m_Y: 423 + m_Width: 10 + m_Height: 13 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 117 + m_Metrics: + m_Width: 20.249998 + m_Height: 31.812498 + m_HorizontalBearingX: -0.49999997 + m_HorizontalBearingY: 27.687498 + m_HorizontalAdvance: 16.375 + m_GlyphRect: + m_X: 220 + m_Y: 334 + m_Width: 20 + m_Height: 32 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 118 + m_Metrics: + m_Width: 15.999999 + m_Height: 28.124998 + m_HorizontalBearingX: 3.4374998 + m_HorizontalBearingY: 28.062498 + m_HorizontalAdvance: 17 + m_GlyphRect: + m_X: 112 + m_Y: 452 + m_Width: 16 + m_Height: 28 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 119 + m_Metrics: + m_Width: 8.187499 + m_Height: 7.3124995 + m_HorizontalBearingX: 1.8124999 + m_HorizontalBearingY: 18.062498 + m_HorizontalAdvance: 8.125 + m_GlyphRect: + m_X: 438 + m_Y: 439 + m_Width: 8 + m_Height: 7 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 120 + m_Metrics: + m_Width: 8.312499 + m_Height: 6.9999995 + m_HorizontalBearingX: 1.8124999 + m_HorizontalBearingY: 0.74999994 + m_HorizontalAdvance: 12 + m_GlyphRect: + m_X: 458 + m_Y: 441 + m_Width: 8 + m_Height: 7 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 121 + m_Metrics: + m_Width: 11.749999 + m_Height: 21.437498 + m_HorizontalBearingX: 2.9999998 + m_HorizontalBearingY: 27.437498 + m_HorizontalAdvance: 12.0625 + m_GlyphRect: + m_X: 114 + m_Y: 99 + m_Width: 12 + m_Height: 21 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 122 + m_Metrics: + m_Width: 20.062498 + m_Height: 28.562498 + m_HorizontalBearingX: 1.1249999 + m_HorizontalBearingY: 28.437498 + m_HorizontalAdvance: 18.75 + m_GlyphRect: + m_X: 336 + m_Y: 266 + m_Width: 20 + m_Height: 29 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 123 + m_Metrics: + m_Width: 18.812498 + m_Height: 23.624998 + m_HorizontalBearingX: 0.49999997 + m_HorizontalBearingY: 24.749998 + m_HorizontalAdvance: 17.625 + m_GlyphRect: + m_X: 304 + m_Y: 415 + m_Width: 19 + m_Height: 24 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 124 + m_Metrics: + m_Width: 37.624996 + m_Height: 30.374998 + m_HorizontalBearingX: 3.8749998 + m_HorizontalBearingY: 28.749998 + m_HorizontalAdvance: 41.1875 + m_GlyphRect: + m_X: 6 + m_Y: 90 + m_Width: 38 + m_Height: 30 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 125 + m_Metrics: + m_Width: 42.062496 + m_Height: 29.874998 + m_HorizontalBearingX: 2.9999998 + m_HorizontalBearingY: 28.749998 + m_HorizontalAdvance: 44.25 + m_GlyphRect: + m_X: 6 + m_Y: 6 + m_Width: 42 + m_Height: 30 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 126 + m_Metrics: + m_Width: 40.874996 + m_Height: 30.374998 + m_HorizontalBearingX: 2.3749998 + m_HorizontalBearingY: 28.749998 + m_HorizontalAdvance: 42.9375 + m_GlyphRect: + m_X: 6 + m_Y: 48 + m_Width: 41 + m_Height: 30 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 127 + m_Metrics: + m_Width: 15.812499 + m_Height: 28.624998 + m_HorizontalBearingX: 0.99999994 + m_HorizontalBearingY: 27.874998 + m_HorizontalAdvance: 16.6875 + m_GlyphRect: + m_X: 118 + m_Y: 411 + m_Width: 16 + m_Height: 29 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 128 + m_Metrics: + m_Width: 18.437498 + m_Height: 40.312496 + m_HorizontalBearingX: -0.81249994 + m_HorizontalBearingY: 40.374996 + m_HorizontalAdvance: 16.4375 + m_GlyphRect: + m_X: 95 + m_Y: 185 + m_Width: 18 + m_Height: 40 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 129 + m_Metrics: + m_Width: 18.437498 + m_Height: 41.374996 + m_HorizontalBearingX: -0.81249994 + m_HorizontalBearingY: 41.437496 + m_HorizontalAdvance: 16.4375 + m_GlyphRect: + m_X: 6 + m_Y: 400 + m_Width: 18 + m_Height: 41 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 130 + m_Metrics: + m_Width: 18.437498 + m_Height: 38.562496 + m_HorizontalBearingX: -0.81249994 + m_HorizontalBearingY: 38.624996 + m_HorizontalAdvance: 16.4375 + m_GlyphRect: + m_X: 359 + m_Y: 86 + m_Width: 18 + m_Height: 39 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 131 + m_Metrics: + m_Width: 21.687498 + m_Height: 37.624996 + m_HorizontalBearingX: -0.81249994 + m_HorizontalBearingY: 37.749996 + m_HorizontalAdvance: 16.4375 + m_GlyphRect: + m_X: 292 + m_Y: 86 + m_Width: 22 + m_Height: 38 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 132 + m_Metrics: + m_Width: 19.437498 + m_Height: 37.499996 + m_HorizontalBearingX: -0.81249994 + m_HorizontalBearingY: 37.562496 + m_HorizontalAdvance: 16.4375 + m_GlyphRect: + m_X: 191 + m_Y: 286 + m_Width: 19 + m_Height: 37 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 133 + m_Metrics: + m_Width: 18.437498 + m_Height: 37.312496 + m_HorizontalBearingX: -0.81249994 + m_HorizontalBearingY: 37.374996 + m_HorizontalAdvance: 16.4375 + m_GlyphRect: + m_X: 131 + m_Y: 338 + m_Width: 18 + m_Height: 37 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 134 + m_Metrics: + m_Width: 24.124998 + m_Height: 27.812498 + m_HorizontalBearingX: -1.1249999 + m_HorizontalBearingY: 27.749998 + m_HorizontalAdvance: 19.625 + m_GlyphRect: + m_X: 313 + m_Y: 47 + m_Width: 24 + m_Height: 28 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 135 + m_Metrics: + m_Width: 17.937498 + m_Height: 33.999996 + m_HorizontalBearingX: 1.4374999 + m_HorizontalBearingY: 27.812498 + m_HorizontalAdvance: 15.75 + m_GlyphRect: + m_X: 182 + m_Y: 189 + m_Width: 18 + m_Height: 34 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 136 + m_Metrics: + m_Width: 16.999998 + m_Height: 41.562496 + m_HorizontalBearingX: 0.24999999 + m_HorizontalBearingY: 41.499996 + m_HorizontalAdvance: 12.9375 + m_GlyphRect: + m_X: 67 + m_Y: 131 + m_Width: 17 + m_Height: 42 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 137 + m_Metrics: + m_Width: 16.999998 + m_Height: 42.562496 + m_HorizontalBearingX: 0.24999999 + m_HorizontalBearingY: 42.499996 + m_HorizontalAdvance: 12.9375 + m_GlyphRect: + m_X: 39 + m_Y: 131 + m_Width: 17 + m_Height: 43 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 138 + m_Metrics: + m_Width: 16.999998 + m_Height: 39.812496 + m_HorizontalBearingX: 0.24999999 + m_HorizontalBearingY: 39.749996 + m_HorizontalAdvance: 12.9375 + m_GlyphRect: + m_X: 157 + m_Y: 235 + m_Width: 17 + m_Height: 40 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 139 + m_Metrics: + m_Width: 17.687498 + m_Height: 38.749996 + m_HorizontalBearingX: 0.24999999 + m_HorizontalBearingY: 38.687496 + m_HorizontalAdvance: 12.9375 + m_GlyphRect: + m_X: 37 + m_Y: 292 + m_Width: 18 + m_Height: 39 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 140 + m_Metrics: + m_Width: 12.312499 + m_Height: 40.312496 + m_HorizontalBearingX: -0.24999999 + m_HorizontalBearingY: 40.374996 + m_HorizontalAdvance: 7.625 + m_GlyphRect: + m_X: 36 + m_Y: 400 + m_Width: 12 + m_Height: 40 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 141 + m_Metrics: + m_Width: 17.249998 + m_Height: 41.374996 + m_HorizontalBearingX: -0.24999999 + m_HorizontalBearingY: 41.437496 + m_HorizontalAdvance: 7.625 + m_GlyphRect: + m_X: 38 + m_Y: 186 + m_Width: 17 + m_Height: 41 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 142 + m_Metrics: + m_Width: 17.187498 + m_Height: 38.562496 + m_HorizontalBearingX: -0.24999999 + m_HorizontalBearingY: 38.624996 + m_HorizontalAdvance: 7.625 + m_GlyphRect: + m_X: 38 + m_Y: 342 + m_Width: 17 + m_Height: 39 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 143 + m_Metrics: + m_Width: 18.499998 + m_Height: 37.499996 + m_HorizontalBearingX: -0.24999999 + m_HorizontalBearingY: 37.562496 + m_HorizontalAdvance: 7.625 + m_GlyphRect: + m_X: 161 + m_Y: 337 + m_Width: 18 + m_Height: 37 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 144 + m_Metrics: + m_Width: 18.562498 + m_Height: 27.687498 + m_HorizontalBearingX: 0.43749997 + m_HorizontalBearingY: 27.749998 + m_HorizontalAdvance: 16.9375 + m_GlyphRect: + m_X: 269 + m_Y: 450 + m_Width: 19 + m_Height: 28 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 145 + m_Metrics: + m_Width: 24.187498 + m_Height: 37.874996 + m_HorizontalBearingX: 0.18749999 + m_HorizontalBearingY: 37.749996 + m_HorizontalAdvance: 17.1875 + m_GlyphRect: + m_X: 90 + m_Y: 48 + m_Width: 24 + m_Height: 38 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 146 + m_Metrics: + m_Width: 20.062498 + m_Height: 41.624996 + m_HorizontalBearingX: 1.1249999 + m_HorizontalBearingY: 41.499996 + m_HorizontalAdvance: 18.75 + m_GlyphRect: + m_X: 6 + m_Y: 239 + m_Width: 20 + m_Height: 42 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 147 + m_Metrics: + m_Width: 21.249998 + m_Height: 42.624996 + m_HorizontalBearingX: 1.1249999 + m_HorizontalBearingY: 42.499996 + m_HorizontalAdvance: 18.75 + m_GlyphRect: + m_X: 6 + m_Y: 131 + m_Width: 21 + m_Height: 43 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 148 + m_Metrics: + m_Width: 21.187498 + m_Height: 39.874996 + m_HorizontalBearingX: 1.1249999 + m_HorizontalBearingY: 39.749996 + m_HorizontalAdvance: 18.75 + m_GlyphRect: + m_X: 178 + m_Y: 138 + m_Width: 21 + m_Height: 40 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 149 + m_Metrics: + m_Width: 24.687498 + m_Height: 38.874996 + m_HorizontalBearingX: 1.1249999 + m_HorizontalBearingY: 38.812496 + m_HorizontalAdvance: 18.75 + m_GlyphRect: + m_X: 126 + m_Y: 48 + m_Width: 25 + m_Height: 39 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 150 + m_Metrics: + m_Width: 22.499998 + m_Height: 38.812496 + m_HorizontalBearingX: 1.1249999 + m_HorizontalBearingY: 38.687496 + m_HorizontalAdvance: 18.75 + m_GlyphRect: + m_X: 325 + m_Y: 86 + m_Width: 22 + m_Height: 39 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 151 + m_Metrics: + m_Width: 21.124998 + m_Height: 19.187498 + m_HorizontalBearingX: 0.49999997 + m_HorizontalBearingY: 23.687498 + m_HorizontalAdvance: 18.875 + m_GlyphRect: + m_X: 309 + m_Y: 385 + m_Width: 21 + m_Height: 19 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 152 + m_Metrics: + m_Width: 23.749998 + m_Height: 28.749998 + m_HorizontalBearingX: -0.062499996 + m_HorizontalBearingY: 28.437498 + m_HorizontalAdvance: 18.75 + m_GlyphRect: + m_X: 137 + m_Y: 98 + m_Width: 24 + m_Height: 29 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 153 + m_Metrics: + m_Width: 18.562498 + m_Height: 41.437496 + m_HorizontalBearingX: 1.1249999 + m_HorizontalBearingY: 40.749996 + m_HorizontalAdvance: 15.9375 + m_GlyphRect: + m_X: 6 + m_Y: 453 + m_Width: 19 + m_Height: 41 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 154 + m_Metrics: + m_Width: 19.874998 + m_Height: 42.437496 + m_HorizontalBearingX: 1.1249999 + m_HorizontalBearingY: 41.749996 + m_HorizontalAdvance: 15.9375 + m_GlyphRect: + m_X: 6 + m_Y: 293 + m_Width: 20 + m_Height: 42 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 155 + m_Metrics: + m_Width: 19.812498 + m_Height: 39.624996 + m_HorizontalBearingX: 1.1249999 + m_HorizontalBearingY: 38.937496 + m_HorizontalAdvance: 15.9375 + m_GlyphRect: + m_X: 185 + m_Y: 234 + m_Width: 20 + m_Height: 40 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 156 + m_Metrics: + m_Width: 21.062498 + m_Height: 38.624996 + m_HorizontalBearingX: 1.1249999 + m_HorizontalBearingY: 37.937496 + m_HorizontalAdvance: 15.9375 + m_GlyphRect: + m_X: 358 + m_Y: 136 + m_Width: 21 + m_Height: 39 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 157 + m_Metrics: + m_Width: 17.062498 + m_Height: 40.874996 + m_HorizontalBearingX: 2.8749998 + m_HorizontalBearingY: 41.437496 + m_HorizontalAdvance: 14.5625 + m_GlyphRect: + m_X: 98 + m_Y: 236 + m_Width: 17 + m_Height: 41 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 158 + m_Metrics: + m_Width: 17.249998 + m_Height: 28.499998 + m_HorizontalBearingX: 0 + m_HorizontalBearingY: 28.437498 + m_HorizontalAdvance: 14.6875 + m_GlyphRect: + m_X: 488 + m_Y: 98 + m_Width: 17 + m_Height: 28 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 159 + m_Metrics: + m_Width: 19.562498 + m_Height: 28.562498 + m_HorizontalBearingX: 0.18749999 + m_HorizontalBearingY: 28.249998 + m_HorizontalAdvance: 16.625 + m_GlyphRect: + m_X: 312 + m_Y: 306 + m_Width: 20 + m_Height: 29 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 160 + m_Metrics: + m_Width: 18.437498 + m_Height: 40.999996 + m_HorizontalBearingX: -0.81249994 + m_HorizontalBearingY: 41.062496 + m_HorizontalAdvance: 16.4375 + m_GlyphRect: + m_X: 36 + m_Y: 451 + m_Width: 18 + m_Height: 41 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 161 + m_Metrics: + m_Width: 18.437498 + m_Height: 41.937496 + m_HorizontalBearingX: -0.81249994 + m_HorizontalBearingY: 41.999996 + m_HorizontalAdvance: 16.4375 + m_GlyphRect: + m_X: 38 + m_Y: 238 + m_Width: 18 + m_Height: 42 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 162 + m_Metrics: + m_Width: 18.562498 + m_Height: 39.312496 + m_HorizontalBearingX: -0.81249994 + m_HorizontalBearingY: 39.374996 + m_HorizontalAdvance: 16.4375 + m_GlyphRect: + m_X: 211 + m_Y: 139 + m_Width: 19 + m_Height: 39 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 163 + m_Metrics: + m_Width: 22.999998 + m_Height: 38.687496 + m_HorizontalBearingX: -0.81249994 + m_HorizontalBearingY: 38.812496 + m_HorizontalAdvance: 16.4375 + m_GlyphRect: + m_X: 324 + m_Y: 136 + m_Width: 23 + m_Height: 39 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 164 + m_Metrics: + m_Width: 20.812498 + m_Height: 38.624996 + m_HorizontalBearingX: -0.81249994 + m_HorizontalBearingY: 38.687496 + m_HorizontalAdvance: 16.4375 + m_GlyphRect: + m_X: 66 + m_Y: 291 + m_Width: 21 + m_Height: 39 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 165 + m_Metrics: + m_Width: 18.437498 + m_Height: 38.437496 + m_HorizontalBearingX: -0.81249994 + m_HorizontalBearingY: 38.499996 + m_HorizontalAdvance: 16.4375 + m_GlyphRect: + m_X: 98 + m_Y: 289 + m_Width: 18 + m_Height: 38 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 166 + m_Metrics: + m_Width: 24.124998 + m_Height: 27.812498 + m_HorizontalBearingX: -1.1249999 + m_HorizontalBearingY: 27.749998 + m_HorizontalAdvance: 19.625 + m_GlyphRect: + m_X: 349 + m_Y: 47 + m_Width: 24 + m_Height: 28 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 167 + m_Metrics: + m_Width: 17.937498 + m_Height: 33.999996 + m_HorizontalBearingX: 1.4374999 + m_HorizontalBearingY: 27.812498 + m_HorizontalAdvance: 15.75 + m_GlyphRect: + m_X: 211 + m_Y: 189 + m_Width: 18 + m_Height: 34 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 168 + m_Metrics: + m_Width: 16.999998 + m_Height: 40.749996 + m_HorizontalBearingX: 0.24999999 + m_HorizontalBearingY: 40.687496 + m_HorizontalAdvance: 12.9375 + m_GlyphRect: + m_X: 125 + m_Y: 183 + m_Width: 17 + m_Height: 41 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 169 + m_Metrics: + m_Width: 16.999998 + m_Height: 41.687496 + m_HorizontalBearingX: 0.24999999 + m_HorizontalBearingY: 41.624996 + m_HorizontalAdvance: 12.9375 + m_GlyphRect: + m_X: 67 + m_Y: 184 + m_Width: 17 + m_Height: 42 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 170 + m_Metrics: + m_Width: 17.124998 + m_Height: 39.062496 + m_HorizontalBearingX: 0.24999999 + m_HorizontalBearingY: 38.999996 + m_HorizontalAdvance: 12.9375 + m_GlyphRect: + m_X: 216 + m_Y: 235 + m_Width: 17 + m_Height: 39 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 171 + m_Metrics: + m_Width: 19.374998 + m_Height: 38.374996 + m_HorizontalBearingX: 0.24999999 + m_HorizontalBearingY: 38.312496 + m_HorizontalAdvance: 12.9375 + m_GlyphRect: + m_X: 67 + m_Y: 342 + m_Width: 19 + m_Height: 38 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 172 + m_Metrics: + m_Width: 13.374999 + m_Height: 39.937496 + m_HorizontalBearingX: 0.18749999 + m_HorizontalBearingY: 39.999996 + m_HorizontalAdvance: 7.6875 + m_GlyphRect: + m_X: 241 + m_Y: 135 + m_Width: 13 + m_Height: 40 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 173 + m_Metrics: + m_Width: 13.312499 + m_Height: 40.812496 + m_HorizontalBearingX: 0.18749999 + m_HorizontalBearingY: 40.874996 + m_HorizontalAdvance: 7.6875 + m_GlyphRect: + m_X: 153 + m_Y: 138 + m_Width: 13 + m_Height: 41 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 174 + m_Metrics: + m_Width: 14.124999 + m_Height: 38.187496 + m_HorizontalBearingX: 0.18749999 + m_HorizontalBearingY: 38.249996 + m_HorizontalAdvance: 7.6875 + m_GlyphRect: + m_X: 298 + m_Y: 136 + m_Width: 14 + m_Height: 38 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 175 + m_Metrics: + m_Width: 16.374998 + m_Height: 37.499996 + m_HorizontalBearingX: 0.18749999 + m_HorizontalBearingY: 37.562496 + m_HorizontalAdvance: 7.6875 + m_GlyphRect: + m_X: 222 + m_Y: 286 + m_Width: 16 + m_Height: 37 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 176 + m_Metrics: + m_Width: 18.562498 + m_Height: 27.687498 + m_HorizontalBearingX: 0.43749997 + m_HorizontalBearingY: 27.749998 + m_HorizontalAdvance: 16.9375 + m_GlyphRect: + m_X: 274 + m_Y: 411 + m_Width: 19 + m_Height: 28 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 177 + m_Metrics: + m_Width: 24.062498 + m_Height: 37.874996 + m_HorizontalBearingX: 0.18749999 + m_HorizontalBearingY: 37.749996 + m_HorizontalAdvance: 17.1875 + m_GlyphRect: + m_X: 226 + m_Y: 46 + m_Width: 24 + m_Height: 38 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 178 + m_Metrics: + m_Width: 20.062498 + m_Height: 41.187496 + m_HorizontalBearingX: 1.1249999 + m_HorizontalBearingY: 41.062496 + m_HorizontalAdvance: 18.75 + m_GlyphRect: + m_X: 6 + m_Y: 347 + m_Width: 20 + m_Height: 41 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 179 + m_Metrics: + m_Width: 20.062498 + m_Height: 42.124996 + m_HorizontalBearingX: 1.1249999 + m_HorizontalBearingY: 41.999996 + m_HorizontalAdvance: 18.75 + m_GlyphRect: + m_X: 6 + m_Y: 186 + m_Width: 20 + m_Height: 42 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 180 + m_Metrics: + m_Width: 20.062498 + m_Height: 39.499996 + m_HorizontalBearingX: 1.1249999 + m_HorizontalBearingY: 39.374996 + m_HorizontalAdvance: 18.75 + m_GlyphRect: + m_X: 266 + m_Y: 136 + m_Width: 20 + m_Height: 39 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 181 + m_Metrics: + m_Width: 24.187498 + m_Height: 38.874996 + m_HorizontalBearingX: 1.1249999 + m_HorizontalBearingY: 38.812496 + m_HorizontalAdvance: 18.75 + m_GlyphRect: + m_X: 190 + m_Y: 46 + m_Width: 24 + m_Height: 39 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 182 + m_Metrics: + m_Width: 21.937498 + m_Height: 38.812496 + m_HorizontalBearingX: 1.1249999 + m_HorizontalBearingY: 38.687496 + m_HorizontalAdvance: 18.75 + m_GlyphRect: + m_X: 98 + m_Y: 338 + m_Width: 22 + m_Height: 39 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 183 + m_Metrics: + m_Width: 12.937499 + m_Height: 20.999998 + m_HorizontalBearingX: 1.4999999 + m_HorizontalBearingY: 22.312498 + m_HorizontalAdvance: 13 + m_GlyphRect: + m_X: 372 + m_Y: 452 + m_Width: 13 + m_Height: 21 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 184 + m_Metrics: + m_Width: 23.749998 + m_Height: 28.749998 + m_HorizontalBearingX: -0.062499996 + m_HorizontalBearingY: 28.437498 + m_HorizontalAdvance: 18.75 + m_GlyphRect: + m_X: 409 + m_Y: 46 + m_Width: 24 + m_Height: 29 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 185 + m_Metrics: + m_Width: 18.562498 + m_Height: 40.687496 + m_HorizontalBearingX: 1.1249999 + m_HorizontalBearingY: 39.999996 + m_HorizontalAdvance: 15.9375 + m_GlyphRect: + m_X: 127 + m_Y: 235 + m_Width: 19 + m_Height: 41 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 186 + m_Metrics: + m_Width: 18.562498 + m_Height: 41.562496 + m_HorizontalBearingX: 1.1249999 + m_HorizontalBearingY: 40.874996 + m_HorizontalAdvance: 15.9375 + m_GlyphRect: + m_X: 68 + m_Y: 237 + m_Width: 19 + m_Height: 42 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 187 + m_Metrics: + m_Width: 18.937498 + m_Height: 38.937496 + m_HorizontalBearingX: 1.1249999 + m_HorizontalBearingY: 38.249996 + m_HorizontalAdvance: 15.9375 + m_GlyphRect: + m_X: 128 + m_Y: 287 + m_Width: 19 + m_Height: 39 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 188 + m_Metrics: + m_Width: 21.187498 + m_Height: 38.249996 + m_HorizontalBearingX: 1.1249999 + m_HorizontalBearingY: 37.562496 + m_HorizontalAdvance: 15.9375 + m_GlyphRect: + m_X: 158 + m_Y: 287 + m_Width: 21 + m_Height: 38 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 189 + m_Metrics: + m_Width: 16.874998 + m_Height: 41.062496 + m_HorizontalBearingX: 2.8749998 + m_HorizontalBearingY: 41.624996 + m_HorizontalAdvance: 14.5625 + m_GlyphRect: + m_X: 95 + m_Y: 132 + m_Width: 17 + m_Height: 41 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 190 + m_Metrics: + m_Width: 17.249998 + m_Height: 28.499998 + m_HorizontalBearingX: 0 + m_HorizontalBearingY: 28.437498 + m_HorizontalAdvance: 14.6875 + m_GlyphRect: + m_X: 488 + m_Y: 138 + m_Width: 17 + m_Height: 28 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 191 + m_Metrics: + m_Width: 17.124998 + m_Height: 37.749996 + m_HorizontalBearingX: 2.8749998 + m_HorizontalBearingY: 38.312496 + m_HorizontalAdvance: 14.5625 + m_GlyphRect: + m_X: 191 + m_Y: 334 + m_Width: 17 + m_Height: 38 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 192 + m_Metrics: + m_Width: 13.624999 + m_Height: 6.8124995 + m_HorizontalBearingX: 1.4999999 + m_HorizontalBearingY: 15.874999 + m_HorizontalAdvance: 13.6875 + m_GlyphRect: + m_X: 393 + m_Y: 494 + m_Width: 14 + m_Height: 7 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 193 + m_Metrics: + m_Width: 19.687498 + m_Height: 6.8124995 + m_HorizontalBearingX: 1.4999999 + m_HorizontalBearingY: 15.874999 + m_HorizontalAdvance: 19.75 + m_GlyphRect: + m_X: 201 + m_Y: 489 + m_Width: 20 + m_Height: 7 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 194 + m_Metrics: + m_Width: 9.999999 + m_Height: 12.499999 + m_HorizontalBearingX: 2.9374998 + m_HorizontalBearingY: 29.999998 + m_HorizontalAdvance: 7.6875 + m_GlyphRect: + m_X: 372 + m_Y: 485 + m_Width: 10 + m_Height: 12 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 195 + m_Metrics: + m_Width: 10.187499 + m_Height: 11.937499 + m_HorizontalBearingX: 2.7499998 + m_HorizontalBearingY: 29.812498 + m_HorizontalAdvance: 7.6875 + m_GlyphRect: + m_X: 466 + m_Y: 360 + m_Width: 10 + m_Height: 12 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 196 + m_Metrics: + m_Width: 9.999999 + m_Height: 12.499999 + m_HorizontalBearingX: -1.1249999 + m_HorizontalBearingY: 6.1874995 + m_HorizontalAdvance: 8.5625 + m_GlyphRect: + m_X: 396 + m_Y: 453 + m_Width: 10 + m_Height: 12 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 197 + m_Metrics: + m_Width: 16.312498 + m_Height: 14.937499 + m_HorizontalBearingX: 2.7499998 + m_HorizontalBearingY: 28.749998 + m_HorizontalAdvance: 15.3125 + m_GlyphRect: + m_X: 126 + m_Y: 491 + m_Width: 16 + m_Height: 15 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 198 + m_Metrics: + m_Width: 16.249998 + m_Height: 14.812499 + m_HorizontalBearingX: 2.9999998 + m_HorizontalBearingY: 29.812498 + m_HorizontalAdvance: 15.1875 + m_GlyphRect: + m_X: 161 + m_Y: 385 + m_Width: 16 + m_Height: 15 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 199 + m_Metrics: + m_Width: 18.937498 + m_Height: 13.187499 + m_HorizontalBearingX: -1.1874999 + m_HorizontalBearingY: 6.3749995 + m_HorizontalAdvance: 17.5 + m_GlyphRect: + m_X: 96 + m_Y: 493 + m_Width: 19 + m_Height: 13 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 200 + m_Metrics: + m_Width: 11.687499 + m_Height: 23.562498 + m_HorizontalBearingX: 3.3749998 + m_HorizontalBearingY: 28.124998 + m_HorizontalAdvance: 11.875 + m_GlyphRect: + m_X: 465 + m_Y: 406 + m_Width: 12 + m_Height: 24 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 201 + m_Metrics: + m_Width: 13.937499 + m_Height: 24.124998 + m_HorizontalBearingX: 1.4374999 + m_HorizontalBearingY: 28.124998 + m_HorizontalAdvance: 12.1875 + m_GlyphRect: + m_X: 347 + m_Y: 452 + m_Width: 14 + m_Height: 24 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 202 + m_Metrics: + m_Width: 11.124999 + m_Height: 13.062499 + m_HorizontalBearingX: 1.5624999 + m_HorizontalBearingY: 20.374998 + m_HorizontalAdvance: 10.8125 + m_GlyphRect: + m_X: 131 + m_Y: 387 + m_Width: 11 + m_Height: 13 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 203 + m_Metrics: + m_Width: 28.187498 + m_Height: 7.3124995 + m_HorizontalBearingX: 0.37499997 + m_HorizontalBearingY: 6.4999995 + m_HorizontalAdvance: 29.3125 + m_GlyphRect: + m_X: 391 + m_Y: 167 + m_Width: 28 + m_Height: 7 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 204 + m_Metrics: + m_Width: 27.999998 + m_Height: 30.249998 + m_HorizontalBearingX: 4.9374995 + m_HorizontalBearingY: 29.124998 + m_HorizontalAdvance: 30.375 + m_GlyphRect: + m_X: 149 + m_Y: 7 + m_Width: 28 + m_Height: 30 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 205 + m_Metrics: + m_Width: 12.562499 + m_Height: 26.812498 + m_HorizontalBearingX: 1.1249999 + m_HorizontalBearingY: 27.999998 + m_HorizontalAdvance: 10.0625 + m_GlyphRect: + m_X: 323 + m_Y: 451 + m_Width: 13 + m_Height: 27 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 206 + m_Metrics: + m_Width: 12.874999 + m_Height: 27.312498 + m_HorizontalBearingX: 0.12499999 + m_HorizontalBearingY: 27.437498 + m_HorizontalAdvance: 10.3125 + m_GlyphRect: + m_X: 299 + m_Y: 451 + m_Width: 13 + m_Height: 27 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 207 + m_Metrics: + m_Width: 25.499998 + m_Height: 29.812498 + m_HorizontalBearingX: -2.2499998 + m_HorizontalBearingY: 27.937498 + m_HorizontalAdvance: 17.75 + m_GlyphRect: + m_X: 350 + m_Y: 6 + m_Width: 25 + m_Height: 30 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 208 + m_Metrics: + m_Width: 19.124998 + m_Height: 27.874998 + m_HorizontalBearingX: 1.6249999 + m_HorizontalBearingY: 27.937498 + m_HorizontalAdvance: 18 + m_GlyphRect: + m_X: 374 + m_Y: 384 + m_Width: 19 + m_Height: 28 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 209 + m_Metrics: + m_Width: 35.187496 + m_Height: 19.624998 + m_HorizontalBearingX: 4.2499995 + m_HorizontalBearingY: 28.749998 + m_HorizontalAdvance: 35.625 + m_GlyphRect: + m_X: 266 + m_Y: 6 + m_Width: 35 + m_Height: 20 + m_Scale: 1 + m_AtlasIndex: 0 + m_CharacterTable: + - m_ElementType: 1 + m_Unicode: 32 + m_GlyphIndex: 1 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 33 + m_GlyphIndex: 2 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 34 + m_GlyphIndex: 3 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 35 + m_GlyphIndex: 4 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 36 + m_GlyphIndex: 5 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 37 + m_GlyphIndex: 6 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 38 + m_GlyphIndex: 7 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 39 + m_GlyphIndex: 8 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 40 + m_GlyphIndex: 9 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 41 + m_GlyphIndex: 10 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 42 + m_GlyphIndex: 11 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 43 + m_GlyphIndex: 12 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 44 + m_GlyphIndex: 13 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 45 + m_GlyphIndex: 14 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 46 + m_GlyphIndex: 15 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 47 + m_GlyphIndex: 16 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 48 + m_GlyphIndex: 17 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 49 + m_GlyphIndex: 18 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 50 + m_GlyphIndex: 19 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 51 + m_GlyphIndex: 20 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 52 + m_GlyphIndex: 21 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 53 + m_GlyphIndex: 22 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 54 + m_GlyphIndex: 23 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 55 + m_GlyphIndex: 24 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 56 + m_GlyphIndex: 25 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 57 + m_GlyphIndex: 26 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 58 + m_GlyphIndex: 27 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 59 + m_GlyphIndex: 28 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 60 + m_GlyphIndex: 29 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 61 + m_GlyphIndex: 30 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 62 + m_GlyphIndex: 31 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 63 + m_GlyphIndex: 32 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 64 + m_GlyphIndex: 33 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 65 + m_GlyphIndex: 34 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 66 + m_GlyphIndex: 35 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 67 + m_GlyphIndex: 36 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 68 + m_GlyphIndex: 37 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 69 + m_GlyphIndex: 38 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 70 + m_GlyphIndex: 39 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 71 + m_GlyphIndex: 40 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 72 + m_GlyphIndex: 41 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 73 + m_GlyphIndex: 42 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 74 + m_GlyphIndex: 43 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 75 + m_GlyphIndex: 44 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 76 + m_GlyphIndex: 45 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 77 + m_GlyphIndex: 46 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 78 + m_GlyphIndex: 47 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 79 + m_GlyphIndex: 48 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 80 + m_GlyphIndex: 49 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 81 + m_GlyphIndex: 50 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 82 + m_GlyphIndex: 51 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 83 + m_GlyphIndex: 52 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 84 + m_GlyphIndex: 53 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 85 + m_GlyphIndex: 54 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 86 + m_GlyphIndex: 55 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 87 + m_GlyphIndex: 56 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 88 + m_GlyphIndex: 57 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 89 + m_GlyphIndex: 58 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 90 + m_GlyphIndex: 59 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 91 + m_GlyphIndex: 60 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 92 + m_GlyphIndex: 61 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 93 + m_GlyphIndex: 62 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 94 + m_GlyphIndex: 63 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 95 + m_GlyphIndex: 64 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 96 + m_GlyphIndex: 65 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 97 + m_GlyphIndex: 66 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 98 + m_GlyphIndex: 67 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 99 + m_GlyphIndex: 68 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 100 + m_GlyphIndex: 69 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 101 + m_GlyphIndex: 70 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 102 + m_GlyphIndex: 71 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 103 + m_GlyphIndex: 72 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 104 + m_GlyphIndex: 73 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 105 + m_GlyphIndex: 74 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 106 + m_GlyphIndex: 75 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 107 + m_GlyphIndex: 76 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 108 + m_GlyphIndex: 77 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 109 + m_GlyphIndex: 78 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 110 + m_GlyphIndex: 79 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 111 + m_GlyphIndex: 80 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 112 + m_GlyphIndex: 81 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 113 + m_GlyphIndex: 82 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 114 + m_GlyphIndex: 83 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 115 + m_GlyphIndex: 84 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 116 + m_GlyphIndex: 85 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 117 + m_GlyphIndex: 86 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 118 + m_GlyphIndex: 87 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 119 + m_GlyphIndex: 88 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 120 + m_GlyphIndex: 89 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 121 + m_GlyphIndex: 90 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 122 + m_GlyphIndex: 91 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 123 + m_GlyphIndex: 92 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 124 + m_GlyphIndex: 93 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 125 + m_GlyphIndex: 94 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 126 + m_GlyphIndex: 95 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 160 + m_GlyphIndex: 96 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 161 + m_GlyphIndex: 97 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 162 + m_GlyphIndex: 98 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 163 + m_GlyphIndex: 99 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 164 + m_GlyphIndex: 100 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 165 + m_GlyphIndex: 101 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 166 + m_GlyphIndex: 102 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 167 + m_GlyphIndex: 103 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 168 + m_GlyphIndex: 104 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 169 + m_GlyphIndex: 105 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 170 + m_GlyphIndex: 106 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 171 + m_GlyphIndex: 107 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 172 + m_GlyphIndex: 108 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 173 + m_GlyphIndex: 109 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 174 + m_GlyphIndex: 110 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 175 + m_GlyphIndex: 111 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 176 + m_GlyphIndex: 112 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 177 + m_GlyphIndex: 113 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 178 + m_GlyphIndex: 114 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 179 + m_GlyphIndex: 115 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 180 + m_GlyphIndex: 116 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 181 + m_GlyphIndex: 117 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 182 + m_GlyphIndex: 118 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 183 + m_GlyphIndex: 119 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 184 + m_GlyphIndex: 120 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 185 + m_GlyphIndex: 121 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 186 + m_GlyphIndex: 122 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 187 + m_GlyphIndex: 123 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 188 + m_GlyphIndex: 124 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 189 + m_GlyphIndex: 125 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 190 + m_GlyphIndex: 126 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 191 + m_GlyphIndex: 127 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 192 + m_GlyphIndex: 128 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 193 + m_GlyphIndex: 129 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 194 + m_GlyphIndex: 130 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 195 + m_GlyphIndex: 131 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 196 + m_GlyphIndex: 132 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 197 + m_GlyphIndex: 133 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 198 + m_GlyphIndex: 134 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 199 + m_GlyphIndex: 135 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 200 + m_GlyphIndex: 136 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 201 + m_GlyphIndex: 137 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 202 + m_GlyphIndex: 138 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 203 + m_GlyphIndex: 139 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 204 + m_GlyphIndex: 140 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 205 + m_GlyphIndex: 141 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 206 + m_GlyphIndex: 142 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 207 + m_GlyphIndex: 143 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 208 + m_GlyphIndex: 144 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 209 + m_GlyphIndex: 145 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 210 + m_GlyphIndex: 146 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 211 + m_GlyphIndex: 147 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 212 + m_GlyphIndex: 148 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 213 + m_GlyphIndex: 149 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 214 + m_GlyphIndex: 150 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 215 + m_GlyphIndex: 151 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 216 + m_GlyphIndex: 152 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 217 + m_GlyphIndex: 153 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 218 + m_GlyphIndex: 154 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 219 + m_GlyphIndex: 155 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 220 + m_GlyphIndex: 156 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 221 + m_GlyphIndex: 157 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 222 + m_GlyphIndex: 158 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 223 + m_GlyphIndex: 159 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 224 + m_GlyphIndex: 160 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 225 + m_GlyphIndex: 161 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 226 + m_GlyphIndex: 162 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 227 + m_GlyphIndex: 163 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 228 + m_GlyphIndex: 164 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 229 + m_GlyphIndex: 165 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 230 + m_GlyphIndex: 166 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 231 + m_GlyphIndex: 167 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 232 + m_GlyphIndex: 168 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 233 + m_GlyphIndex: 169 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 234 + m_GlyphIndex: 170 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 235 + m_GlyphIndex: 171 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 236 + m_GlyphIndex: 172 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 237 + m_GlyphIndex: 173 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 238 + m_GlyphIndex: 174 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 239 + m_GlyphIndex: 175 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 240 + m_GlyphIndex: 176 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 241 + m_GlyphIndex: 177 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 242 + m_GlyphIndex: 178 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 243 + m_GlyphIndex: 179 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 244 + m_GlyphIndex: 180 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 245 + m_GlyphIndex: 181 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 246 + m_GlyphIndex: 182 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 247 + m_GlyphIndex: 183 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 248 + m_GlyphIndex: 184 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 249 + m_GlyphIndex: 185 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 250 + m_GlyphIndex: 186 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 251 + m_GlyphIndex: 187 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 252 + m_GlyphIndex: 188 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 253 + m_GlyphIndex: 189 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 254 + m_GlyphIndex: 190 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 255 + m_GlyphIndex: 191 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 8211 + m_GlyphIndex: 192 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 8212 + m_GlyphIndex: 193 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 8216 + m_GlyphIndex: 194 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 8217 + m_GlyphIndex: 195 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 8218 + m_GlyphIndex: 196 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 8220 + m_GlyphIndex: 197 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 8221 + m_GlyphIndex: 198 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 8222 + m_GlyphIndex: 199 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 8224 + m_GlyphIndex: 200 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 8225 + m_GlyphIndex: 201 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 8226 + m_GlyphIndex: 202 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 8230 + m_GlyphIndex: 203 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 8240 + m_GlyphIndex: 204 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 8249 + m_GlyphIndex: 205 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 8250 + m_GlyphIndex: 206 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 8260 + m_GlyphIndex: 207 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 8364 + m_GlyphIndex: 208 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 8482 + m_GlyphIndex: 209 + m_Scale: 1 + m_AtlasTextures: + - {fileID: 28924146404686464} + m_AtlasTextureIndex: 0 + m_UsedGlyphRects: [] + m_FreeGlyphRects: [] + m_fontInfo: + Name: Bangers + PointSize: 38 + Scale: 1 + CharacterCount: 209 + LineHeight: 40.4375 + Baseline: 0 + Ascender: 33.5625 + CapHeight: 28.124998 + Descender: -6.9375 + CenterLine: 0 + SuperscriptOffset: 33.5625 + SubscriptOffset: 0 + SubSize: 0.5 + Underline: 0 + UnderlineThickness: 5 + strikethrough: 9.681818 + strikethroughThickness: 5 + TabWidth: 74.375 + Padding: 5 + AtlasWidth: 512 + AtlasHeight: 512 + atlas: {fileID: 28924146404686464} + m_AtlasWidth: 512 + m_AtlasHeight: 512 + m_AtlasPadding: 5 + m_AtlasRenderMode: 16426 + m_glyphInfoList: + - id: 32 + x: 6 + y: 517 + width: 7.4375 + height: 40.5 + xOffset: 0 + yOffset: 33.5625 + xAdvance: 7.4375 + scale: 1 + - id: 33 + x: 456 + y: 396 + width: 14.937499 + height: 29.249998 + xOffset: -0.18749999 + yOffset: 28.437498 + xAdvance: 10 + scale: 1 + - id: 34 + x: 66 + y: 6 + width: 18.937498 + height: 13.187499 + xOffset: 2.6874998 + yOffset: 29.999998 + xAdvance: 16 + scale: 1 + - id: 35 + x: 461 + y: 477 + width: 24.499998 + height: 28.374998 + xOffset: 1.6249999 + yOffset: 28.187498 + xAdvance: 23.8125 + scale: 1 + - id: 36 + x: 123 + y: 340 + width: 18.687498 + height: 33.624996 + xOffset: 0.74999994 + yOffset: 30.937498 + xAdvance: 16.8125 + scale: 1 + - id: 37 + x: 109 + y: 475 + width: 28.062498 + height: 30.249998 + xOffset: 3.0624998 + yOffset: 29.124998 + xAdvance: 30.375 + scale: 1 + - id: 38 + x: 172 + y: 385 + width: 22.187498 + height: 28.687498 + xOffset: 0.74999994 + yOffset: 28.249998 + xAdvance: 20.3125 + scale: 1 + - id: 39 + x: 278 + y: 190 + width: 9.999999 + height: 12.499999 + xOffset: 2.9374998 + yOffset: 29.999998 + xAdvance: 7.6875 + scale: 1 + - id: 40 + x: 162 + y: 425 + width: 16.562498 + height: 38.499996 + xOffset: 1.6249999 + yOffset: 33.374996 + xAdvance: 12.6875 + scale: 1 + - id: 41 + x: 262 + y: 427 + width: 17.062498 + height: 38.499996 + xOffset: -2.1874998 + yOffset: 33.374996 + xAdvance: 12.5625 + scale: 1 + - id: 42 + x: 384 + y: 71 + width: 14.937499 + height: 17.062498 + xOffset: 2.8749998 + yOffset: 25.437498 + xAdvance: 16.0625 + scale: 1 + - id: 43 + x: 178 + y: 7 + width: 11.437499 + height: 15.312499 + xOffset: 1.8749999 + yOffset: 19.562498 + xAdvance: 11.8125 + scale: 1 + - id: 44 + x: 466 + y: 117 + width: 9.124999 + height: 11.124999 + xOffset: -1.3124999 + yOffset: 6.9374995 + xAdvance: 7.5 + scale: 1 + - id: 45 + x: 410 + y: 82 + width: 13.624999 + height: 6.8124995 + xOffset: 1.4999999 + yOffset: 15.874999 + xAdvance: 13.6875 + scale: 1 + - id: 46 + x: 497 + y: 466 + width: 8.187499 + height: 7.3124995 + xOffset: -0.31249997 + yOffset: 6.4999995 + xAdvance: 7.9375 + scale: 1 + - id: 47 + x: 313 + y: 476 + width: 25.499998 + height: 29.874998 + xOffset: -0.43749997 + yOffset: 28.749998 + xAdvance: 20.9375 + scale: 1 + - id: 48 + x: 262 + y: 388 + width: 18.437498 + height: 27.874998 + xOffset: 1.4999999 + yOffset: 27.937498 + xAdvance: 18 + scale: 1 + - id: 49 + x: 385 + y: 437 + width: 12.437499 + height: 27.249998 + xOffset: 2.7499998 + yOffset: 27.437498 + xAdvance: 12.1875 + scale: 1 + - id: 50 + x: 456 + y: 357 + width: 20.374998 + height: 27.374998 + xOffset: 0 + yOffset: 27.749998 + xAdvance: 17.75 + scale: 1 + - id: 51 + x: 368 + y: 257 + width: 19.312498 + height: 28.374998 + xOffset: 0.37499997 + yOffset: 27.999998 + xAdvance: 17.375 + scale: 1 + - id: 52 + x: 405 + y: 139 + width: 18.312498 + height: 27.562498 + xOffset: 0.81249994 + yOffset: 27.499998 + xAdvance: 17.4375 + scale: 1 + - id: 53 + x: 488 + y: 307 + width: 17.937498 + height: 27.874998 + xOffset: 1.6249999 + yOffset: 27.749998 + xAdvance: 17.125 + scale: 1 + - id: 54 + x: 139 + y: 33 + width: 18.187498 + height: 27.874998 + xOffset: 1.9374999 + yOffset: 28.062498 + xAdvance: 18.1875 + scale: 1 + - id: 55 + x: 145 + y: 73 + width: 16.437498 + height: 27.812498 + xOffset: 1.0624999 + yOffset: 28.124998 + xAdvance: 12.875 + scale: 1 + - id: 56 + x: 423 + y: 397 + width: 21.624998 + height: 28.687498 + xOffset: 0.74999994 + yOffset: 28.312498 + xAdvance: 19.6875 + scale: 1 + - id: 57 + x: 488 + y: 268 + width: 17.999998 + height: 27.999998 + xOffset: 2.6249998 + yOffset: 28.249998 + xAdvance: 18.5625 + scale: 1 + - id: 58 + x: 497 + y: 485 + width: 8.937499 + height: 20.249998 + xOffset: 0.74999994 + yOffset: 21.937498 + xAdvance: 7.4375 + scale: 1 + - id: 59 + x: 466 + y: 163 + width: 10.249999 + height: 22.187498 + xOffset: 0.68749994 + yOffset: 21.187498 + xAdvance: 9.9375 + scale: 1 + - id: 60 + x: 252 + y: 112 + width: 12.562499 + height: 26.812498 + xOffset: 1.7499999 + yOffset: 27.999998 + xAdvance: 11 + scale: 1 + - id: 61 + x: 154 + y: 6 + width: 12.312499 + height: 15.687499 + xOffset: 0.31249997 + yOffset: 15.812499 + xAdvance: 11.5 + scale: 1 + - id: 62 + x: 464 + y: 318 + width: 12.812499 + height: 27.312498 + xOffset: 0.49999997 + yOffset: 27.437498 + xAdvance: 11.1875 + scale: 1 + - id: 63 + x: 388 + y: 297 + width: 15.812499 + height: 28.624998 + xOffset: 3.6249998 + yOffset: 27.749998 + xAdvance: 16.625 + scale: 1 + - id: 64 + x: 60 + y: 477 + width: 37.187496 + height: 28.187498 + xOffset: 1.6874999 + yOffset: 27.374998 + xAdvance: 37.5 + scale: 1 + - id: 65 + x: 399 + y: 257 + width: 18.437498 + height: 28.124998 + xOffset: -0.81249994 + yOffset: 28.187498 + xAdvance: 16.4375 + scale: 1 + - id: 66 + x: 368 + y: 217 + width: 19.499998 + height: 28.249998 + xOffset: -0.062499996 + yOffset: 28.124998 + xAdvance: 16.25 + scale: 1 + - id: 67 + x: 488 + y: 229 + width: 17.937498 + height: 27.812498 + xOffset: 1.4374999 + yOffset: 27.812498 + xAdvance: 15.75 + scale: 1 + - id: 68 + x: 429 + y: 197 + width: 19.187498 + height: 27.937498 + xOffset: 0.12499999 + yOffset: 27.749998 + xAdvance: 16.75 + scale: 1 + - id: 69 + x: 460 + y: 277 + width: 16.999998 + height: 28.062498 + xOffset: 0.24999999 + yOffset: 28.062498 + xAdvance: 12.9375 + scale: 1 + - id: 70 + x: 488 + y: 190 + width: 17.749998 + height: 27.999998 + xOffset: 0.12499999 + yOffset: 27.999998 + xAdvance: 12.9375 + scale: 1 + - id: 71 + x: 240 + y: 293 + width: 19.937498 + height: 29.374998 + xOffset: 1.5624999 + yOffset: 28.437498 + xAdvance: 18.9375 + scale: 1 + - id: 72 + x: 424 + y: 357 + width: 20.499998 + height: 28.187498 + xOffset: 0.31249997 + yOffset: 28.124998 + xAdvance: 16.8125 + scale: 1 + - id: 73 + x: 169 + y: 34 + width: 11.437499 + height: 27.499998 + xOffset: -0.24999999 + yOffset: 27.562498 + xAdvance: 7.625 + scale: 1 + - id: 74 + x: 271 + y: 296 + width: 16.187498 + height: 29.187498 + xOffset: -1.0624999 + yOffset: 29.124998 + xAdvance: 10.625 + scale: 1 + - id: 75 + x: 389 + y: 397 + width: 22.687498 + height: 28.437498 + xOffset: 0.24999999 + yOffset: 28.437498 + xAdvance: 17.5625 + scale: 1 + - id: 76 + x: 173 + y: 73 + width: 11.562499 + height: 27.999998 + xOffset: 0.43749997 + yOffset: 27.999998 + xAdvance: 11.5 + scale: 1 + - id: 77 + x: 188 + y: 477 + width: 27.249998 + height: 28.437498 + xOffset: -1.1874999 + yOffset: 28.749998 + xAdvance: 23.5 + scale: 1 + - id: 78 + x: 324 + y: 297 + width: 20.937498 + height: 28.687498 + xOffset: 0.18749999 + yOffset: 28.499998 + xAdvance: 17.1875 + scale: 1 + - id: 79 + x: 356 + y: 297 + width: 20.062498 + height: 28.562498 + xOffset: 1.1249999 + yOffset: 28.437498 + xAdvance: 18.75 + scale: 1 + - id: 80 + x: 233 + y: 388 + width: 17.937498 + height: 28.124998 + xOffset: -0.12499999 + yOffset: 28.062498 + xAdvance: 14.375 + scale: 1 + - id: 81 + x: 55 + y: 392 + width: 20.437498 + height: 30.249998 + xOffset: 1.1249999 + yOffset: 28.437498 + xAdvance: 19.9375 + scale: 1 + - id: 82 + x: 343 + y: 178 + width: 19.374998 + height: 27.812498 + xOffset: 0.12499999 + yOffset: 27.812498 + xAdvance: 16.875 + scale: 1 + - id: 83 + x: 374 + y: 178 + width: 19.062498 + height: 27.812498 + xOffset: 0.49999997 + yOffset: 27.749998 + xAdvance: 16.3125 + scale: 1 + - id: 84 + x: 192 + y: 34 + width: 14.687499 + height: 27.749998 + xOffset: 3.3749998 + yOffset: 27.749998 + xAdvance: 13.75 + scale: 1 + - id: 85 + x: 399 + y: 217 + width: 18.562498 + height: 28.312498 + xOffset: 1.1249999 + yOffset: 27.687498 + xAdvance: 15.9375 + scale: 1 + - id: 86 + x: 460 + y: 237 + width: 16.687498 + height: 28.187498 + xOffset: 2.1874998 + yOffset: 27.937498 + xAdvance: 14.375 + scale: 1 + - id: 87 + x: 387 + y: 477 + width: 25.937498 + height: 28.249998 + xOffset: 1.4999999 + yOffset: 28.124998 + xAdvance: 22.8125 + scale: 1 + - id: 88 + x: 391 + y: 357 + width: 21.187498 + height: 28.062498 + xOffset: -1.3749999 + yOffset: 27.749998 + xAdvance: 15.625 + scale: 1 + - id: 89 + x: 196 + y: 73 + width: 16.874998 + height: 27.374998 + xOffset: 2.8749998 + yOffset: 27.999998 + xAdvance: 14.5625 + scale: 1 + - id: 90 + x: 312 + y: 139 + width: 19.874998 + height: 26.562498 + xOffset: 0.24999999 + yOffset: 26.874998 + xAdvance: 16.375 + scale: 1 + - id: 91 + x: 245 + y: 252 + width: 16.437498 + height: 29.687498 + xOffset: 0.74999994 + yOffset: 29.562498 + xAdvance: 12.125 + scale: 1 + - id: 92 + x: 299 + y: 298 + width: 13.624999 + height: 28.562498 + xOffset: 4.8124995 + yOffset: 28.687498 + xAdvance: 19.375 + scale: 1 + - id: 93 + x: 206 + y: 385 + width: 15.937499 + height: 30.062498 + xOffset: -0.81249994 + yOffset: 28.937498 + xAdvance: 11.875 + scale: 1 + - id: 94 + x: 313 + y: 12 + width: 12.812499 + height: 10.687499 + xOffset: 2.1874998 + yOffset: 33.749996 + xAdvance: 13.8125 + scale: 1 + - id: 95 + x: 259 + y: 18 + width: 16.812498 + height: 4.2499995 + xOffset: -2.0624998 + yOffset: 0.18749999 + xAdvance: 15.25 + scale: 1 + - id: 96 + x: 98 + y: 112 + width: 9.874999 + height: 11.812499 + xOffset: 1.8124999 + yOffset: 33.812496 + xAdvance: 13.625 + scale: 1 + - id: 97 + x: 252 + y: 150 + width: 18.437498 + height: 28.124998 + xOffset: -0.81249994 + yOffset: 28.187498 + xAdvance: 16.4375 + scale: 1 + - id: 98 + x: 429 + y: 236 + width: 19.499998 + height: 28.249998 + xOffset: -0.062499996 + yOffset: 28.124998 + xAdvance: 16.25 + scale: 1 + - id: 99 + x: 488 + y: 151 + width: 17.937498 + height: 27.812498 + xOffset: 1.4374999 + yOffset: 27.812498 + xAdvance: 15.75 + scale: 1 + - id: 100 + x: 343 + y: 139 + width: 19.187498 + height: 27.937498 + xOffset: 0.12499999 + yOffset: 27.749998 + xAdvance: 16.75 + scale: 1 + - id: 101 + x: 460 + y: 197 + width: 16.999998 + height: 28.062498 + xOffset: 0.24999999 + yOffset: 28.062498 + xAdvance: 12.9375 + scale: 1 + - id: 102 + x: 488 + y: 112 + width: 17.749998 + height: 27.999998 + xOffset: 0.12499999 + yOffset: 27.999998 + xAdvance: 12.9375 + scale: 1 + - id: 103 + x: 273 + y: 255 + width: 19.937498 + height: 29.374998 + xOffset: 1.5624999 + yOffset: 28.437498 + xAdvance: 18.9375 + scale: 1 + - id: 104 + x: 304 + y: 257 + width: 20.437498 + height: 28.187498 + xOffset: 0.24999999 + yOffset: 28.124998 + xAdvance: 16.75 + scale: 1 + - id: 105 + x: 291 + y: 447 + width: 10.624999 + height: 27.499998 + xOffset: 0.18749999 + yOffset: 27.562498 + xAdvance: 7.6875 + scale: 1 + - id: 106 + x: 250 + y: 211 + width: 16.187498 + height: 29.187498 + xOffset: -1.0624999 + yOffset: 29.124998 + xAdvance: 10.625 + scale: 1 + - id: 107 + x: 444 + y: 437 + width: 22.687498 + height: 28.437498 + xOffset: 0.24999999 + yOffset: 28.437498 + xAdvance: 17.5625 + scale: 1 + - id: 108 + x: 218 + y: 34 + width: 11.562499 + height: 27.999998 + xOffset: 0.43749997 + yOffset: 27.999998 + xAdvance: 11.5 + scale: 1 + - id: 109 + x: 227 + y: 477 + width: 27.249998 + height: 28.437498 + xOffset: -1.1874999 + yOffset: 28.749998 + xAdvance: 23.5 + scale: 1 + - id: 110 + x: 336 + y: 257 + width: 20.999998 + height: 28.687498 + xOffset: 0.18749999 + yOffset: 28.499998 + xAdvance: 17.1875 + scale: 1 + - id: 111 + x: 304 + y: 217 + width: 20.062498 + height: 28.562498 + xOffset: 1.1249999 + yOffset: 28.437498 + xAdvance: 18.75 + scale: 1 + - id: 112 + x: 488 + y: 426 + width: 17.937498 + height: 28.124998 + xOffset: -0.12499999 + yOffset: 28.062498 + xAdvance: 14.375 + scale: 1 + - id: 113 + x: 58 + y: 434 + width: 20.437498 + height: 30.249998 + xOffset: 1.1249999 + yOffset: 28.437498 + xAdvance: 19.9375 + scale: 1 + - id: 114 + x: 374 + y: 139 + width: 19.374998 + height: 27.812498 + xOffset: 0.12499999 + yOffset: 27.812498 + xAdvance: 16.875 + scale: 1 + - id: 115 + x: 435 + y: 158 + width: 19.062498 + height: 27.812498 + xOffset: 0.49999997 + yOffset: 27.749998 + xAdvance: 16.3125 + scale: 1 + - id: 116 + x: 224 + y: 73 + width: 14.687499 + height: 27.749998 + xOffset: 3.3749998 + yOffset: 27.749998 + xAdvance: 13.75 + scale: 1 + - id: 117 + x: 282 + y: 150 + width: 18.562498 + height: 28.312498 + xOffset: 1.1249999 + yOffset: 27.687498 + xAdvance: 15.9375 + scale: 1 + - id: 118 + x: 60 + y: 72 + width: 16.687498 + height: 28.187498 + xOffset: 2.1874998 + yOffset: 27.937498 + xAdvance: 14.375 + scale: 1 + - id: 119 + x: 424 + y: 477 + width: 25.937498 + height: 28.249998 + xOffset: 1.4999999 + yOffset: 28.124998 + xAdvance: 22.8125 + scale: 1 + - id: 120 + x: 431 + y: 317 + width: 21.187498 + height: 28.062498 + xOffset: -1.3749999 + yOffset: 27.749998 + xAdvance: 15.625 + scale: 1 + - id: 121 + x: 241 + y: 34 + width: 16.874998 + height: 27.374998 + xOffset: 2.8749998 + yOffset: 27.999998 + xAdvance: 14.5625 + scale: 1 + - id: 122 + x: 435 + y: 120 + width: 19.874998 + height: 26.562498 + xOffset: 0.24999999 + yOffset: 26.874998 + xAdvance: 16.375 + scale: 1 + - id: 123 + x: 405 + y: 178 + width: 12.312499 + height: 27.499998 + xOffset: 1.2499999 + yOffset: 27.812498 + xAdvance: 10.6875 + scale: 1 + - id: 124 + x: 66 + y: 31 + width: 11.374999 + height: 29.562498 + xOffset: 0.81249994 + yOffset: 28.812498 + xAdvance: 9.4375 + scale: 1 + - id: 125 + x: 250 + y: 73 + width: 12.374999 + height: 27.499998 + xOffset: 0.68749994 + yOffset: 27.812498 + xAdvance: 10.375 + scale: 1 + - id: 126 + x: 250 + y: 190 + width: 16.874998 + height: 9.124999 + xOffset: 2.5624998 + yOffset: 26.249998 + xAdvance: 15.4375 + scale: 1 + - id: 160 + x: 6 + y: 517 + width: 0 + height: 0 + xOffset: 0 + yOffset: 0 + xAdvance: 7.4375 + scale: 1 + - id: 161 + x: 278 + y: 214 + width: 14.937499 + height: 29.249998 + xOffset: -2.7499998 + yOffset: 29.374998 + xAdvance: 10.0625 + scale: 1 + - id: 162 + x: 153 + y: 288 + width: 17.937498 + height: 33.562496 + xOffset: 2.0624998 + yOffset: 30.312498 + xAdvance: 16.9375 + scale: 1 + - id: 163 + x: 488 + y: 73 + width: 17.874998 + height: 27.874998 + xOffset: 0 + yOffset: 27.874998 + xAdvance: 15.25 + scale: 1 + - id: 164 + x: 220 + y: 117 + width: 17.124998 + height: 17.499998 + xOffset: 2.1249998 + yOffset: 26.937498 + xAdvance: 16.3125 + scale: 1 + - id: 165 + x: 405 + y: 100 + width: 18.937498 + height: 27.374998 + xOffset: 1.7499999 + yOffset: 27.999998 + xAdvance: 16.9375 + scale: 1 + - id: 166 + x: 89 + y: 31 + width: 11.312499 + height: 29.562498 + xOffset: 0.74999994 + yOffset: 28.812498 + xAdvance: 9.25 + scale: 1 + - id: 167 + x: 429 + y: 276 + width: 19.187498 + height: 29.562498 + xOffset: 0.81249994 + yOffset: 28.937498 + xAdvance: 16.6875 + scale: 1 + - id: 168 + x: 232 + y: 16 + width: 15.937499 + height: 6.6874995 + xOffset: 1.8124999 + yOffset: 33.562496 + xAdvance: 19.625 + scale: 1 + - id: 169 + x: 276 + y: 113 + width: 21.687498 + height: 25.624998 + xOffset: 2.2499998 + yOffset: 28.749998 + xAdvance: 21.875 + scale: 1 + - id: 170 + x: 88 + y: 72 + width: 18.437498 + height: 28.124998 + xOffset: -0.81249994 + yOffset: 28.187498 + xAdvance: 16.4375 + scale: 1 + - id: 171 + x: 435 + y: 85 + width: 18.874998 + height: 23.624998 + xOffset: 1.6249999 + yOffset: 24.749998 + xAdvance: 17.6875 + scale: 1 + - id: 172 + x: 287 + y: 13 + width: 14.562499 + height: 9.312499 + xOffset: 2.4999998 + yOffset: 18.624998 + xAdvance: 15.1875 + scale: 1 + - id: 173 + x: 396 + y: 29 + width: 13.624999 + height: 6.8124995 + xOffset: 1.4999999 + yOffset: 15.874999 + xAdvance: 13.6875 + scale: 1 + - id: 174 + x: 342 + y: 104 + width: 20.187498 + height: 23.874998 + xOffset: 2.4374998 + yOffset: 28.749998 + xAdvance: 20.4375 + scale: 1 + - id: 175 + x: 60 + y: 112 + width: 14.874999 + height: 7.1874995 + xOffset: 1.8124999 + yOffset: 33.562496 + xAdvance: 18.5625 + scale: 1 + - id: 176 + x: 417 + y: 61 + width: 9.187499 + height: 9.062499 + xOffset: 3.6874998 + yOffset: 28.437498 + xAdvance: 9.0625 + scale: 1 + - id: 177 + x: 347 + y: 6 + width: 13.874999 + height: 18.249998 + xOffset: 0.43749997 + yOffset: 19.874998 + xAdvance: 13.9375 + scale: 1 + - id: 178 + x: 334 + y: 72 + width: 17.937498 + height: 20.562498 + xOffset: 1.5624999 + yOffset: 27.749998 + xAdvance: 16.5 + scale: 1 + - id: 179 + x: 87 + y: 392 + width: 15.312499 + height: 22.499998 + xOffset: 1.8124999 + yOffset: 27.999998 + xAdvance: 15.1875 + scale: 1 + - id: 180 + x: 363 + y: 76 + width: 9.687499 + height: 12.937499 + xOffset: 1.8124999 + yOffset: 33.812496 + xAdvance: 13.4375 + scale: 1 + - id: 181 + x: 220 + y: 146 + width: 20.249998 + height: 31.812498 + xOffset: -0.49999997 + yOffset: 27.687498 + xAdvance: 16.375 + scale: 1 + - id: 182 + x: 112 + y: 32 + width: 15.999999 + height: 28.124998 + xOffset: 3.4374998 + yOffset: 28.062498 + xAdvance: 17 + scale: 1 + - id: 183 + x: 438 + y: 66 + width: 8.187499 + height: 7.3124995 + xOffset: 1.8124999 + yOffset: 18.062498 + xAdvance: 8.125 + scale: 1 + - id: 184 + x: 458 + y: 64 + width: 8.312499 + height: 6.9999995 + xOffset: 1.8124999 + yOffset: 0.74999994 + xAdvance: 12 + scale: 1 + - id: 185 + x: 114 + y: 392 + width: 11.749999 + height: 21.437498 + xOffset: 2.9999998 + yOffset: 27.437498 + xAdvance: 12.0625 + scale: 1 + - id: 186 + x: 336 + y: 217 + width: 20.062498 + height: 28.562498 + xOffset: 1.1249999 + yOffset: 28.437498 + xAdvance: 18.75 + scale: 1 + - id: 187 + x: 304 + y: 73 + width: 18.812498 + height: 23.624998 + xOffset: 0.49999997 + yOffset: 24.749998 + xAdvance: 17.625 + scale: 1 + - id: 188 + x: 6 + y: 392 + width: 37.624996 + height: 30.374998 + xOffset: 3.8749998 + yOffset: 28.749998 + xAdvance: 41.1875 + scale: 1 + - id: 189 + x: 6 + y: 476 + width: 42.062496 + height: 29.874998 + xOffset: 2.9999998 + yOffset: 28.749998 + xAdvance: 44.25 + scale: 1 + - id: 190 + x: 6 + y: 434 + width: 40.874996 + height: 30.374998 + xOffset: 2.3749998 + yOffset: 28.749998 + xAdvance: 42.9375 + scale: 1 + - id: 191 + x: 118 + y: 72 + width: 15.812499 + height: 28.624998 + xOffset: 0.99999994 + yOffset: 27.874998 + xAdvance: 16.6875 + scale: 1 + - id: 192 + x: 95 + y: 287 + width: 18.437498 + height: 40.312496 + xOffset: -0.81249994 + yOffset: 40.374996 + xAdvance: 16.4375 + scale: 1 + - id: 193 + x: 6 + y: 71 + width: 18.437498 + height: 41.374996 + xOffset: -0.81249994 + yOffset: 41.437496 + xAdvance: 16.4375 + scale: 1 + - id: 194 + x: 359 + y: 387 + width: 18.437498 + height: 38.562496 + xOffset: -0.81249994 + yOffset: 38.624996 + xAdvance: 16.4375 + scale: 1 + - id: 195 + x: 292 + y: 388 + width: 21.687498 + height: 37.624996 + xOffset: -0.81249994 + yOffset: 37.749996 + xAdvance: 16.4375 + scale: 1 + - id: 196 + x: 191 + y: 189 + width: 19.437498 + height: 37.499996 + xOffset: -0.81249994 + yOffset: 37.562496 + xAdvance: 16.4375 + scale: 1 + - id: 197 + x: 131 + y: 137 + width: 18.437498 + height: 37.312496 + xOffset: -0.81249994 + yOffset: 37.374996 + xAdvance: 16.4375 + scale: 1 + - id: 198 + x: 313 + y: 437 + width: 24.124998 + height: 27.812498 + xOffset: -1.1249999 + yOffset: 27.749998 + xAdvance: 19.625 + scale: 1 + - id: 199 + x: 182 + y: 289 + width: 17.937498 + height: 33.999996 + xOffset: 1.4374999 + yOffset: 27.812498 + xAdvance: 15.75 + scale: 1 + - id: 200 + x: 67 + y: 339 + width: 16.999998 + height: 41.562496 + xOffset: 0.24999999 + yOffset: 41.499996 + xAdvance: 12.9375 + scale: 1 + - id: 201 + x: 39 + y: 338 + width: 16.999998 + height: 42.562496 + xOffset: 0.24999999 + yOffset: 42.499996 + xAdvance: 12.9375 + scale: 1 + - id: 202 + x: 157 + y: 237 + width: 16.999998 + height: 39.812496 + xOffset: 0.24999999 + yOffset: 39.749996 + xAdvance: 12.9375 + scale: 1 + - id: 203 + x: 37 + y: 181 + width: 17.687498 + height: 38.749996 + xOffset: 0.24999999 + yOffset: 38.687496 + xAdvance: 12.9375 + scale: 1 + - id: 204 + x: 36 + y: 72 + width: 12.312499 + height: 40.312496 + xOffset: -0.24999999 + yOffset: 40.374996 + xAdvance: 7.625 + scale: 1 + - id: 205 + x: 38 + y: 285 + width: 17.249998 + height: 41.374996 + xOffset: -0.24999999 + yOffset: 41.437496 + xAdvance: 7.625 + scale: 1 + - id: 206 + x: 38 + y: 131 + width: 17.187498 + height: 38.562496 + xOffset: -0.24999999 + yOffset: 38.624996 + xAdvance: 7.625 + scale: 1 + - id: 207 + x: 161 + y: 138 + width: 18.499998 + height: 37.499996 + xOffset: -0.24999999 + yOffset: 37.562496 + xAdvance: 7.625 + scale: 1 + - id: 208 + x: 269 + y: 34 + width: 18.562498 + height: 27.687498 + xOffset: 0.43749997 + yOffset: 27.749998 + xAdvance: 16.9375 + scale: 1 + - id: 209 + x: 90 + y: 426 + width: 24.187498 + height: 37.874996 + xOffset: 0.18749999 + yOffset: 37.749996 + xAdvance: 17.1875 + scale: 1 + - id: 210 + x: 6 + y: 231 + width: 20.062498 + height: 41.624996 + xOffset: 1.1249999 + yOffset: 41.499996 + xAdvance: 18.75 + scale: 1 + - id: 211 + x: 6 + y: 338 + width: 21.249998 + height: 42.624996 + xOffset: 1.1249999 + yOffset: 42.499996 + xAdvance: 18.75 + scale: 1 + - id: 212 + x: 178 + y: 334 + width: 21.187498 + height: 39.874996 + xOffset: 1.1249999 + yOffset: 39.749996 + xAdvance: 18.75 + scale: 1 + - id: 213 + x: 126 + y: 425 + width: 24.687498 + height: 38.874996 + xOffset: 1.1249999 + yOffset: 38.812496 + xAdvance: 18.75 + scale: 1 + - id: 214 + x: 325 + y: 387 + width: 22.499998 + height: 38.812496 + xOffset: 1.1249999 + yOffset: 38.687496 + xAdvance: 18.75 + scale: 1 + - id: 215 + x: 309 + y: 108 + width: 21.124998 + height: 19.187498 + xOffset: 0.49999997 + yOffset: 23.687498 + xAdvance: 18.875 + scale: 1 + - id: 216 + x: 137 + y: 385 + width: 23.749998 + height: 28.749998 + xOffset: -0.062499996 + yOffset: 28.437498 + xAdvance: 18.75 + scale: 1 + - id: 217 + x: 6 + y: 18 + width: 18.562498 + height: 41.437496 + xOffset: 1.1249999 + yOffset: 40.749996 + xAdvance: 15.9375 + scale: 1 + - id: 218 + x: 6 + y: 177 + width: 19.874998 + height: 42.437496 + xOffset: 1.1249999 + yOffset: 41.749996 + xAdvance: 15.9375 + scale: 1 + - id: 219 + x: 185 + y: 238 + width: 19.812498 + height: 39.624996 + xOffset: 1.1249999 + yOffset: 38.937496 + xAdvance: 15.9375 + scale: 1 + - id: 220 + x: 358 + y: 337 + width: 21.062498 + height: 38.624996 + xOffset: 1.1249999 + yOffset: 37.937496 + xAdvance: 15.9375 + scale: 1 + - id: 221 + x: 98 + y: 235 + width: 17.062498 + height: 40.874996 + xOffset: 2.8749998 + yOffset: 41.437496 + xAdvance: 14.5625 + scale: 1 + - id: 222 + x: 488 + y: 386 + width: 17.249998 + height: 28.499998 + xOffset: 0 + yOffset: 28.437498 + xAdvance: 14.6875 + scale: 1 + - id: 223 + x: 312 + y: 177 + width: 19.562498 + height: 28.562498 + xOffset: 0.18749999 + yOffset: 28.249998 + xAdvance: 16.625 + scale: 1 + - id: 224 + x: 36 + y: 20 + width: 18.437498 + height: 40.999996 + xOffset: -0.81249994 + yOffset: 41.062496 + xAdvance: 16.4375 + scale: 1 + - id: 225 + x: 38 + y: 232 + width: 18.437498 + height: 41.937496 + xOffset: -0.81249994 + yOffset: 41.999996 + xAdvance: 16.4375 + scale: 1 + - id: 226 + x: 211 + y: 334 + width: 18.562498 + height: 39.312496 + xOffset: -0.81249994 + yOffset: 39.374996 + xAdvance: 16.4375 + scale: 1 + - id: 227 + x: 324 + y: 337 + width: 22.999998 + height: 38.687496 + xOffset: -0.81249994 + yOffset: 38.812496 + xAdvance: 16.4375 + scale: 1 + - id: 228 + x: 66 + y: 182 + width: 20.812498 + height: 38.624996 + xOffset: -0.81249994 + yOffset: 38.687496 + xAdvance: 16.4375 + scale: 1 + - id: 229 + x: 98 + y: 185 + width: 18.437498 + height: 38.437496 + xOffset: -0.81249994 + yOffset: 38.499996 + xAdvance: 16.4375 + scale: 1 + - id: 230 + x: 349 + y: 437 + width: 24.124998 + height: 27.812498 + xOffset: -1.1249999 + yOffset: 27.749998 + xAdvance: 19.625 + scale: 1 + - id: 231 + x: 211 + y: 289 + width: 17.937498 + height: 33.999996 + xOffset: 1.4374999 + yOffset: 27.812498 + xAdvance: 15.75 + scale: 1 + - id: 232 + x: 125 + y: 288 + width: 16.999998 + height: 40.749996 + xOffset: 0.24999999 + yOffset: 40.687496 + xAdvance: 12.9375 + scale: 1 + - id: 233 + x: 67 + y: 286 + width: 16.999998 + height: 41.687496 + xOffset: 0.24999999 + yOffset: 41.624996 + xAdvance: 12.9375 + scale: 1 + - id: 234 + x: 216 + y: 238 + width: 17.124998 + height: 39.062496 + xOffset: 0.24999999 + yOffset: 38.999996 + xAdvance: 12.9375 + scale: 1 + - id: 235 + x: 67 + y: 132 + width: 19.374998 + height: 38.374996 + xOffset: 0.24999999 + yOffset: 38.312496 + xAdvance: 12.9375 + scale: 1 + - id: 236 + x: 241 + y: 337 + width: 13.374999 + height: 39.937496 + xOffset: 0.18749999 + yOffset: 39.999996 + xAdvance: 7.6875 + scale: 1 + - id: 237 + x: 153 + y: 333 + width: 13.312499 + height: 40.812496 + xOffset: 0.18749999 + yOffset: 40.874996 + xAdvance: 7.6875 + scale: 1 + - id: 238 + x: 298 + y: 338 + width: 14.124999 + height: 38.187496 + xOffset: 0.18749999 + yOffset: 38.249996 + xAdvance: 7.6875 + scale: 1 + - id: 239 + x: 222 + y: 189 + width: 16.374998 + height: 37.499996 + xOffset: 0.18749999 + yOffset: 37.562496 + xAdvance: 7.6875 + scale: 1 + - id: 240 + x: 274 + y: 73 + width: 18.562498 + height: 27.687498 + xOffset: 0.43749997 + yOffset: 27.749998 + xAdvance: 16.9375 + scale: 1 + - id: 241 + x: 226 + y: 428 + width: 24.062498 + height: 37.874996 + xOffset: 0.18749999 + yOffset: 37.749996 + xAdvance: 17.1875 + scale: 1 + - id: 242 + x: 6 + y: 124 + width: 20.062498 + height: 41.187496 + xOffset: 1.1249999 + yOffset: 41.062496 + xAdvance: 18.75 + scale: 1 + - id: 243 + x: 6 + y: 284 + width: 20.062498 + height: 42.124996 + xOffset: 1.1249999 + yOffset: 41.999996 + xAdvance: 18.75 + scale: 1 + - id: 244 + x: 266 + y: 337 + width: 20.062498 + height: 39.499996 + xOffset: 1.1249999 + yOffset: 39.374996 + xAdvance: 18.75 + scale: 1 + - id: 245 + x: 190 + y: 427 + width: 24.187498 + height: 38.874996 + xOffset: 1.1249999 + yOffset: 38.812496 + xAdvance: 18.75 + scale: 1 + - id: 246 + x: 98 + y: 135 + width: 21.937498 + height: 38.812496 + xOffset: 1.1249999 + yOffset: 38.687496 + xAdvance: 18.75 + scale: 1 + - id: 247 + x: 372 + y: 39 + width: 12.937499 + height: 20.999998 + xOffset: 1.4999999 + yOffset: 22.312498 + xAdvance: 13 + scale: 1 + - id: 248 + x: 409 + y: 437 + width: 23.749998 + height: 28.749998 + xOffset: -0.062499996 + yOffset: 28.437498 + xAdvance: 18.75 + scale: 1 + - id: 249 + x: 127 + y: 236 + width: 18.562498 + height: 40.687496 + xOffset: 1.1249999 + yOffset: 39.999996 + xAdvance: 15.9375 + scale: 1 + - id: 250 + x: 68 + y: 233 + width: 18.562498 + height: 41.562496 + xOffset: 1.1249999 + yOffset: 40.874996 + xAdvance: 15.9375 + scale: 1 + - id: 251 + x: 128 + y: 186 + width: 18.937498 + height: 38.937496 + xOffset: 1.1249999 + yOffset: 38.249996 + xAdvance: 15.9375 + scale: 1 + - id: 252 + x: 158 + y: 187 + width: 21.187498 + height: 38.249996 + xOffset: 1.1249999 + yOffset: 37.562496 + xAdvance: 15.9375 + scale: 1 + - id: 253 + x: 95 + y: 339 + width: 16.874998 + height: 41.062496 + xOffset: 2.8749998 + yOffset: 41.624996 + xAdvance: 14.5625 + scale: 1 + - id: 254 + x: 488 + y: 346 + width: 17.249998 + height: 28.499998 + xOffset: 0 + yOffset: 28.437498 + xAdvance: 14.6875 + scale: 1 + - id: 255 + x: 191 + y: 140 + width: 17.124998 + height: 37.749996 + xOffset: 2.8749998 + yOffset: 38.312496 + xAdvance: 14.5625 + scale: 1 + - id: 8211 + x: 393 + y: 11 + width: 13.624999 + height: 6.8124995 + xOffset: 1.4999999 + yOffset: 15.874999 + xAdvance: 13.6875 + scale: 1 + - id: 8212 + x: 201 + y: 16 + width: 19.687498 + height: 6.8124995 + xOffset: 1.4999999 + yOffset: 15.874999 + xAdvance: 19.75 + scale: 1 + - id: 8216 + x: 372 + y: 15 + width: 9.999999 + height: 12.499999 + xOffset: 2.9374998 + yOffset: 29.999998 + xAdvance: 7.6875 + scale: 1 + - id: 8217 + x: 466 + y: 140 + width: 10.187499 + height: 11.937499 + xOffset: 2.7499998 + yOffset: 29.812498 + xAdvance: 7.6875 + scale: 1 + - id: 8218 + x: 396 + y: 47 + width: 9.999999 + height: 12.499999 + xOffset: -1.1249999 + yOffset: 6.1874995 + xAdvance: 8.5625 + scale: 1 + - id: 8220 + x: 126 + y: 6 + width: 16.312498 + height: 14.937499 + xOffset: 2.7499998 + yOffset: 28.749998 + xAdvance: 15.3125 + scale: 1 + - id: 8221 + x: 161 + y: 112 + width: 16.249998 + height: 14.812499 + xOffset: 2.9999998 + yOffset: 29.812498 + xAdvance: 15.1875 + scale: 1 + - id: 8222 + x: 96 + y: 6 + width: 18.937498 + height: 13.187499 + xOffset: -1.1874999 + yOffset: 6.3749995 + xAdvance: 17.5 + scale: 1 + - id: 8224 + x: 465 + y: 82 + width: 11.687499 + height: 23.562498 + xOffset: 3.3749998 + yOffset: 28.124998 + xAdvance: 11.875 + scale: 1 + - id: 8225 + x: 347 + y: 36 + width: 13.937499 + height: 24.124998 + xOffset: 1.4374999 + yOffset: 28.124998 + xAdvance: 12.1875 + scale: 1 + - id: 8226 + x: 131 + y: 112 + width: 11.124999 + height: 13.062499 + xOffset: 1.5624999 + yOffset: 20.374998 + xAdvance: 10.8125 + scale: 1 + - id: 8230 + x: 391 + y: 338 + width: 28.187498 + height: 7.3124995 + xOffset: 0.37499997 + yOffset: 6.4999995 + xAdvance: 29.3125 + scale: 1 + - id: 8240 + x: 149 + y: 475 + width: 27.999998 + height: 30.249998 + xOffset: 4.9374995 + yOffset: 29.124998 + xAdvance: 30.375 + scale: 1 + - id: 8249 + x: 323 + y: 34 + width: 12.562499 + height: 26.812498 + xOffset: 1.1249999 + yOffset: 27.999998 + xAdvance: 10.0625 + scale: 1 + - id: 8250 + x: 299 + y: 34 + width: 12.874999 + height: 27.312498 + xOffset: 0.12499999 + yOffset: 27.437498 + xAdvance: 10.3125 + scale: 1 + - id: 8260 + x: 350 + y: 476 + width: 25.499998 + height: 29.812498 + xOffset: -2.2499998 + yOffset: 27.937498 + xAdvance: 17.75 + scale: 1 + - id: 8364 + x: 374 + y: 100 + width: 19.124998 + height: 27.874998 + xOffset: 1.6249999 + yOffset: 27.937498 + xAdvance: 18 + scale: 1 + - id: 8482 + x: 266 + y: 486 + width: 35.187496 + height: 19.624998 + xOffset: 4.2499995 + yOffset: 28.749998 + xAdvance: 35.625 + scale: 1 + m_KerningTable: + kerningPairs: [] + m_FontFeatureTable: + m_GlyphPairAdjustmentRecords: [] + fallbackFontAssets: [] + m_FallbackFontAssetTable: [] + m_CreationSettings: + sourceFontFileName: + sourceFontFileGUID: c455800d5972b405c87596cc71cfd0f8 + pointSizeSamplingMode: 0 + pointSize: 38 + padding: 5 + packingMode: 4 + atlasWidth: 512 + atlasHeight: 512 + characterSetSelectionMode: 1 + characterSequence: 32 - 126, 160 - 255, 8192 - 8303, 8364, 8482, 9633 + referencedFontAssetGUID: + referencedTextAssetGUID: + fontStyle: 0 + fontStyleModifier: 2 + renderMode: 6 + includeFontFeatures: 0 + m_FontWeightTable: + - regularTypeface: {fileID: 0} + italicTypeface: {fileID: 0} + - regularTypeface: {fileID: 0} + italicTypeface: {fileID: 0} + - regularTypeface: {fileID: 0} + italicTypeface: {fileID: 0} + - regularTypeface: {fileID: 0} + italicTypeface: {fileID: 0} + - regularTypeface: {fileID: 0} + italicTypeface: {fileID: 0} + - regularTypeface: {fileID: 0} + italicTypeface: {fileID: 0} + - regularTypeface: {fileID: 0} + italicTypeface: {fileID: 0} + - regularTypeface: {fileID: 0} + italicTypeface: {fileID: 0} + - regularTypeface: {fileID: 0} + italicTypeface: {fileID: 0} + - regularTypeface: {fileID: 0} + italicTypeface: {fileID: 0} + fontWeights: + - regularTypeface: {fileID: 0} + italicTypeface: {fileID: 0} + - regularTypeface: {fileID: 0} + italicTypeface: {fileID: 0} + - regularTypeface: {fileID: 0} + italicTypeface: {fileID: 0} + - regularTypeface: {fileID: 0} + italicTypeface: {fileID: 0} + - regularTypeface: {fileID: 0} + italicTypeface: {fileID: 0} + - regularTypeface: {fileID: 0} + italicTypeface: {fileID: 0} + - regularTypeface: {fileID: 0} + italicTypeface: {fileID: 0} + - regularTypeface: {fileID: 0} + italicTypeface: {fileID: 0} + - regularTypeface: {fileID: 0} + italicTypeface: {fileID: 0} + - regularTypeface: {fileID: 0} + italicTypeface: {fileID: 0} + normalStyle: 0 + normalSpacingOffset: 0 + boldStyle: 0.75 + boldSpacing: 7 + italicStyle: 35 + tabSize: 10 +--- !u!21 &21962088495682642 +Material: + serializedVersion: 6 + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_Name: Bangers-Regular SDF Material + m_Shader: {fileID: 4800000, guid: 68e6db2ebdc24f95958faec2be5558d6, type: 3} + m_ShaderKeywords: + m_LightmapFlags: 4 + m_EnableInstancingVariants: 0 + m_DoubleSidedGI: 0 + m_CustomRenderQueue: -1 + stringTagMap: {} + disabledShaderPasses: [] + m_SavedProperties: + serializedVersion: 3 + m_TexEnvs: + - _BumpMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _Cube: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _FaceTex: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _MainTex: + m_Texture: {fileID: 28924146404686464} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _OutlineTex: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + m_Floats: + - _Ambient: 0.5 + - _Bevel: 0.5 + - _BevelClamp: 0 + - _BevelOffset: 0 + - _BevelRoundness: 0 + - _BevelWidth: 0 + - _BumpFace: 0 + - _BumpOutline: 0 + - _ColorMask: 15 + - _Diffuse: 0.5 + - _FaceDilate: 0 + - _FaceUVSpeedX: 0 + - _FaceUVSpeedY: 0 + - _GlowInner: 0.05 + - _GlowOffset: 0 + - _GlowOuter: 0.05 + - _GlowPower: 0.75 + - _GradientScale: 6 + - _LightAngle: 3.1416 + - _MaskSoftnessX: 0 + - _MaskSoftnessY: 0 + - _OutlineSoftness: 0 + - _OutlineUVSpeedX: 0 + - _OutlineUVSpeedY: 0 + - _OutlineWidth: 0 + - _PerspectiveFilter: 0.875 + - _Reflectivity: 10 + - _ScaleRatioA: 0.8333333 + - _ScaleRatioB: 0.6770833 + - _ScaleRatioC: 0.6770833 + - _ScaleX: 1 + - _ScaleY: 1 + - _ShaderFlags: 0 + - _SpecularPower: 2 + - _Stencil: 0 + - _StencilComp: 8 + - _StencilOp: 0 + - _StencilReadMask: 255 + - _StencilWriteMask: 255 + - _TextureHeight: 512 + - _TextureWidth: 512 + - _UnderlayDilate: 0 + - _UnderlayOffsetX: 0 + - _UnderlayOffsetY: 0 + - _UnderlaySoftness: 0 + - _VertexOffsetX: 0 + - _VertexOffsetY: 0 + - _WeightBold: 0.75 + - _WeightNormal: 0 + m_Colors: + - _ClipRect: {r: -32767, g: -32767, b: 32767, a: 32767} + - _EnvMatrixRotation: {r: 0, g: 0, b: 0, a: 0} + - _FaceColor: {r: 1, g: 1, b: 1, a: 1} + - _GlowColor: {r: 0, g: 1, b: 0, a: 0.5} + - _MaskCoord: {r: 0, g: 0, b: 32767, a: 32767} + - _OutlineColor: {r: 0, g: 0, b: 0, a: 1} + - _ReflectFaceColor: {r: 0, g: 0, b: 0, a: 1} + - _ReflectOutlineColor: {r: 0, g: 0, b: 0, a: 1} + - _SpecularColor: {r: 1, g: 1, b: 1, a: 1} + - _UnderlayColor: {r: 0, g: 0, b: 0, a: 0.5} +--- !u!28 &28924146404686464 +Texture2D: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_Name: Bangers-Regular SDF Atlas + m_ImageContentsHash: + serializedVersion: 2 + Hash: 00000000000000000000000000000000 + m_ForcedFallbackFormat: 4 + m_DownscaleFallback: 0 + serializedVersion: 2 + m_Width: 512 + m_Height: 512 + m_CompleteImageSize: 262144 + m_TextureFormat: 1 + m_MipCount: 1 + m_IsReadable: 0 + m_StreamingMipmaps: 0 + m_StreamingMipmapsPriority: 0 + m_AlphaIsTransparency: 0 + m_ImageCount: 1 + m_TextureDimension: 2 + m_TextureSettings: + serializedVersion: 2 + m_FilterMode: 1 + m_Aniso: 1 + m_MipBias: 0 + m_WrapU: 0 + m_WrapV: 0 + m_WrapW: 0 + m_LightmapFormat: 0 + m_ColorSpace: 0 + image data: 262144 + _typelessdata: 00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000003080c11161b1c1a12080000000000060a0b0a0a090908070706060605050303000000000000000000000000000000080d0e0b0400000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005090e0f0c060000000000000000000000000000000000000000000000000000000000000000000005090e0f0c060000000000000000000000000000000000000000000000000000070e131312110f0e0d0b0c121312110f0f0d090e110f0c08040000000000000000000000000000070e131312110f0e0d0b0c121312110f0f0d090e110f0c08040000000000000000000000000000070e1313110f0c0a08091116171513100e0c0a0d0f0e0d0d0d0b0b0d0c0a070503000000000000000000000000000000000003080d11161b1c1a120800000000000000000000000000000000000000000000000000000003080c11161a1b181107000000000000000000000000000000000000000000000000030b0f0f0d0905010000000003050300000000000000000000000000000000000000000000030b0f0f0d090501000000000305030000000000000000000000000000000000000000000000090f12110d0b0907060400000000000000000000000000000000000000000000000000030b0f0f0c0703000000000000000000000000000000000000000000050d13181c21262b30322e25190a000005111a20211f1f1e1e1e1d1d1b1b1b1a1a1918140c010000000000000000000006131c22231f170c00000000000000000000000000000000000000000000000000000000000000000000000000000000000001060b1014191e232421190e0000000000000000000000000000000000000000000000000000000001060b1014191e232421190e0000000000000000000000000000000000000000000000000d1923282927262523222020262927262524221d232624201d1915120e0a0200000000000000000d1923282927262523222020262927262524221d232624201d1915120e0a0200000000000000000d192328282624221f1d1b252b2c2a282623211f222523222222201f22211f1c1a1815130f0800000000000000000000050d13181c21262b30322e25190a0000000000000000000000000000000000000000000000050d12171c21262b2f302d241809000000000000000000000000000000000000000000000a161f2424211e1a16130f0b12181a1814110d0a06030000000000000000000000000000000a161f2424211e1a16130f0b12181a1814110d0a060300000000000000000000000000000004111d24272623201e1d1b19130e11111111121212110c040000000000000000000000000a161f2424201b181514110b020000000000000000000000000000000b1721272c31363b40444742372817050414232e3436343433333332323030302f2f2e2d281e1102000000000000000005152430373833291c0d000000000000000000000000000000000000000000000000000000000000000000000000000000010d151b1f24292e33383a352b1e0e000000030a0e1112120f0b0400000000000000000000000000010d151b1f24292e33383a352b1e0e000000040a0f1112110f0a04000000000000000000000b1c2b363d3e3c3b3a383736323b3e3c3b3a393730373b3935322e2a26231e150a0000000000000b1c2b363d3e3c3b3a383736323b3e3c3b3a393730373b3935322e2a26231e150a0000000000000b1c2b363d3e3b393734322f3840413f3d3b383634373a383737373634373634312f2d2a28241b0f01000000000000000c1821272c31363b40454742372817050000000000000000000000000000000000000000000c1821272c31363b4044464136271604000000000000000000000000000000000000000009192733393a36332f2b272420252d2f2d2926221f1b1814110c050000000000000000000009192733393a36332f2b272420252d2f2d2926221f1b1814110c05000000000000000000000012222f393c3b38353332302d272226262626272727262016090000000000000000000009192733393935302d2b29261f140600000000000000000000000000091a29343c41464a4f54595c554634231110223240494b4a4a4848484747464645444443423b2f200f0000000000000000102233424b4d473a2b1c0d0000000000000000000000000205060606050300000000000000000000000000000000000002121f292f34393e42474c4f493c2c1b09030e171e23262727241f1910060000000000000000000002121f292f34393e43484c4f493c2c1b09030e171e24262727241f191006000000000000000015283a48525352504f4e4c4b444f5352504f4e4c434b504e4a47433f3b3832281a0a000000000015283a48525352504f4e4c4b444f5352504f4e4c434b504e4a47433f3b3832281a0a000000000015283a485253504e4c4a47444a55575452504e4b494b4f4e4c4c4c4b484c4b494744423f3d372d1f0e0000000000000a1b2a353c41464b5054595c554634221000000000000000000000000000000000000000000a1b2a353c41464a4f54595b53453322100000000000000000000000000000000000000000142637454e4f4b4744403c3935374144423e3b3734302d292621180b000000000000000000142637454e4f4b4744403c3935374144423e3b3734302d292621180b0000000000000000000a1d2f404c52504c4a4847464239363b3b3b3b3c3c3c3b33271807000000000000000000142637454e4e4a4542403e3b322415030000000000000000000000001426384750555a5f64696e716352402f1d182c3f505d605f5f5e5e5d5c5c5b5b5a5a5a58574d3e2c190500000000000006192d40515f6258493a2b1c0d0004080b0d0d0b08040a11171a1b1b1b1a1814100b0400000000000000000000000000000f20303c44494d52575c61645a4a38271515202a33383b3c3c39332c23190d0000000000000000000f20303c44494e53575c61645a4a38271515212a33383b3c3c39332c23190d000000000000001c31455866686766646362605661686766646360525d66635f5c5854504d4538281603000000001c31455866686766646362605661686766646360525d66635f5c5854504d4538281603000000001c31455866686663615f5c5a57686b69676563605e5d6463626262605a62605e5c595754524a3d2c1a0600000000001528394750555a5f64696e716351402e1d0b000000000000000000000000000000000000001528394750555a5f64696d7063513f2e1c0a000000000000000000000000000000000000001b3043556264605c5955514d4a47545a5753504c4945423e3a34291b0a00000000000000001b3043556264605c5955514d4a47545a5753504c4945423e3a34291b0a00000000000000001125394d5e6764625f5e5c5b564a4a505050505252524f453624110000000000000000001b30435562635e5a5754534e4232200d0000000000000000000000001b2f4356646a6f74787d83826f5e4c3a291c31465b6e767474737372727270706f6f6f6e6b5c4834200b0000000000000e2135495c6f766758493a2b1c11181d202222201d181e262c2f3030302f2d29251f181008000000000000000000000004182b3e4e585d62676c717678675644332125323d464d5052514d4840362a1d100100000000000004182b3e4e585d62676c717678675644332125323d474d5052514d4840362a1d100100000000001f344a5f747d7c7b79787774636c7d7c7b7978705c687a7874706d6965615645321e0a000000001f344a5f747d7c7b79787774636c7d7c7b7978705c687a7874706d6965615645321e0a000000001f344a5f747c7b787673716f6371827d7c797776726a79787777777568777673706e6c6a675b4936210d00000000001c314457646a6f74797d83826f5d4c3a2817050000000000000000000000000000000000001c314457646a6f74787d83806e5d4b392816050000000000000000000000000000000000001f34495e737875716e6a66635f5a656f6c6865615e5a57534f4739281502000000000000001f34495e737875716e6a66635f5a656f6c6865615e5a57534f47392815020000000000000013283e53687c79777473717068565b656666666767676353412d180400000000000000001f34495e7378736f6c6a6860503c28130000000000000000000004061e33485d728084898e93978d7b6a5846352332475c71878b8b898988888787878686848477624d38230e00000000000015293d51647886766758493a2b252c3236373736322c313a404446464644423e39332c241b1106000000000000000000091e33475b6b72777c82868b857362503f2d3443505a61666766625c53483b2e1f10000000000000091e33475b6b72777c82868b857362503e2d3443505a62666766625c53483b2e1f1000000000001e32475b6f8492918f8e8c7d696b829291908b7763677c8d8986827d7974624d38230e000000001e32475b6f8492918f8e8c7d696b829291908b7763677c8d8986827d7974624d38230e000000001e32475b7085908e8c89877d696a7d9192908d8b7d6a7d8f8d8d8d826e7d8b898784828079644f3a251000000000001f344a5f748084898e93978d7a6958463422110000000000000000000000000000000000001f344a5f748084898e93978c7a6857453422100000000000000000000000000000000000001f34495e73898b8783807b77746d6b80827d7976736f6c68645745311d08000000000000001f34495e73898b8783807b77746d6b80827d7976736f6c68645745311d080000000000000012273c5065798e8c8b888786715c65797b7b7b7c7c7c705b46311c0d08000000000000001e33485d7287888482807d6b56412c1702000000000000000913191b1c3146596b7c8e9ea2a7ab9988756452402f2f44586d8397a09f9f9d9d9c9c9c9b9b99907965503b26110000000000071c3044586c809486766758493a3840474b4c4c4b4740434d55595b5b5b5a57534e4740372e23180c00000000000000000a1f344a5f73848c91969a9f91806e5c4b394352616d767b7c7b776f65594c3d2e1e0e00000000000a1f344a5f73848c91969ba091806e5c4a394352616d767b7c7b776f65594c3d2e1e0e00000000182c4054687c91a6a4a399846f697d94a6a5927d69667b919e9b97938f79644f3a251000000000182c4054687c91a6a4a399846f697d94a6a5927d69667b919e9b97938f79644f3a251000000000182d41556a7d93a3a19f97836e6175899ca5a39a86727b90a3a39e8a77788e9e9b9997917b66513c271200000000001e32475a6b7c8e9ea2a7aa9987756352402e1d0b00000000000000000000000000000000001e32475a6c7d8f9ea2a7aa9886746351402e1c0b00000000000000000000000000000000001c32475c70879c9c9894908d8975687d93938f8c8885827d75604b37220d000000000000001c32475c70879c9c9894908d8975687d93938f8c8885827d75604b37220d000000000000000d21364a5e72889c9f9d9c8b766163778d9191929389745f4a3523221c130600000000001a2f44596e8398999795846f5a45301b060000000000000c1a262e302e2a3c4d5e6f8292a3b5b7a593826f5e4c3b2b40556a8094a9b4b4b2a8a7a7a7a8a9a8937d68533f291400000000000d22364a5f73889c9586766758494b545b606262605b555360696e7070706f6c68625b534a4035291d0f01000000000000071c30445666768899aaafaf9d8c7a6856454f6070808a9093908b83776a5b4c3c2c1a0900000000071c30445666778899abafaf9d8c796856444f6170808a9093908b83776a5b4c3c2b1a090000001125394e62768b9fb3b39f8a75677c93a8ad99857064798fa4afaca7917b66513c2712000000001125394e62768b9fb3b39f8a75677c93a8ad99857064798fa4afaca7917b66513c27120000000012273b5064788ea2b6b19c87725d6c8094a8b5a28e7a788da2b7a7938074899eb0aea8937d68533e29140000000000182b3d4e5f708292a4b5b6a593826f5d4c3a29170500000000000000000000000000000000182b3d4e5f708293a5b6b5a492806f5d4b3a281605000000000000000000000000000000001a2f445a6f8499afada9a5a28f7b667b91a6a4a09d99968f7965503b2612000000000000001a2f445a6f8499afada9a5a28f7b667b91a6a4a09d99968f7965503b26120000000000000011223244586d8296aab3a48f7a655d72879ba7a7a28d77634d3938373024150500000000162b40556a8094a9ac9c88725d48331e09000000000007192a384246433f3c415263748697a8bab19f8d7c6a5847353c51667b90a5b8b8a59591919193949595826b57412d18030000000012273b5065798ea2a495867667585d677074777774706861717d8487878784827c766f675d53473b2d1f100100000000000114273848596a7b8d9eb0bba99886746250596c7d8f9ca5a8a59f9588796a5a49382614010000000114273848596a7c8d9fb0bba99786746250596c808f9da5a8a59f9588796a5a493826140100000b1f33475b708498acb9a4907b677b90a5b4a08c7864788da3b8bda8937d68533e2813000000000b1f33475b708498acb9a4907b677b90a5b4a08c7864788da3b8bda8937d68533e2813000000000d21364a5e73889cb1b5a08c766264778c9fb3aa9682758b9fb4af9c88758499adc0ab95806b56412c1701000000000e1f30415263758698a9bab09f8d7b695846352311000000000000000000000000000000000e1f30425364758798a9bbb09e8d7a69574534221100000000000000000000000000000000182d42576c8297acc1bebaaa95826c788fa3b8b5b2aea8937d6954402b1702000000000000182d42576c8297acc1bebaaa95826c788fa3b8b5b2aea8937d6954402b1702000000000000192d40515c667b8fa4b8a8947d69586c8296abbaa5907b66514e4e4b423322100000000013273c51667b90a5b5a08b75604b36210d000000000010243748565b5854514c485668798b9cadbcab998876645241384d6275899aaab5a08b7d7b7c7c7d8080826f5a442f1a0500000000162b4055697d93a8b3a49586745f6e7a848a8d8d8a847c737d90989c9c9b9996918b837a7064584b3d2e1f0f000000000000091a2a3b4c5e6f8292a3b5b5a392806e5c6074899cadb2a9a5a7a6988978675543311e0b00000000091a2a3b4c5e6f8292a4b5b5a391806e5c6075899caeb2a9a5a7a6988978675543311e0b000004182c4055697d92a6baaa96826d798fa4b9a793806b768ca1b6bfaa95806a543f2a150000000004182c4055697d92a6baaa96826d798fa4b9a793806b768ca1b6bfaa95806a543f2a1500000000071b3044596d8397acbaa5907b665c708497abb19d8975889cb1b8a4917d8094a8bdad98836e58432e19040000000001122335465768798b9caebcaa9988756452402f1d0b000000000000000000000000000000021324354758697a8c9daebcaa9887756351402e1d0b000000000000000000000000000000162b40556a8095aabfd3c4af9b8671768ca1b6cac7c1ac98836e5945301b07000000000000162b40556a8095aabfd3c4af9b8671768ca1b6cac7c1ac98836e5945301b070000000000001e33485d6f73758a9eb3ac97836d68677c91a5baa8947d696363635f51402c18040000000f24394e63788da2b7a38e78644f3a25100000000000152a3f5366706d6965615d595c6d7d90a1b3b7a59482705e4d3b46596b7c8c9aa8a89b91877d72686a6b6c6655412d1803000000001a2f44596d8398adc1ad9984706d7d8c979fa2a29f9890867d93a7b1b1b0aeaba69f978d8276695b4c3d2d1c0b0000000000000c1d2f405163748697a9baaf9d8c796864798fa3b3a29590929aa5968573604d3a271400000000000d1e2f405263748698a9bbaf9d8c796764798fa3b3a19590929aa6968572604d3a271400000011263a4e63778ba0b4b09c8772778da2b7af9b877273899eb3c1ac97826b56412c17020000000011263a4e63778ba0b4b09c8772778da2b7af9b877273899eb3c1ac97826b56412c170200000000162a3f53687c91a6baa994806b56677b8fa3b7a4917c8499aec1ad9a86798fa3b8b09b86705b46311c070000000000061728394b5c6d8090a2b3b6a593826f5e4c3a2917060000000000000000000000000000000617293a4b5c6e8091a2b3b6a492826f5d4c3a281705000000000000000000000000000013283e53687c93a8bdd2c9b5a08c7774899fb4c9dbc6b19d88735e4a35200b00000000000013283e53687c93a8bdd2c9b5a08c7774899fb4c9dbc6b19d88735e4a35200b0000000000001f344a5f7489888b9db2b09b87807d7c7a8ca1b7ac9783787878786f5b46311c070000000c21364b5f748a9fb4a6917c67523d28130000000000162b40556a80837d7a76726d6760728395a6b8b19f8e7c6a59473c4d5e6d7c8a97a4aea49a90867a6f6458544838261303000000001c31475c70879bb0bda8937d6a778a9caab3b1a69f9c9c988e96a9beb9a89d9faab2aa9f9488796a5b4a39281604000000000000112234455668798b9daebba9978673667b91a7aa96847a7d8895a2907d6a5743301c0800000000001123344557687a8c9daebba9978573677c91a7a996837a7d8895a2907d6a57432f1c0700000b1f33485c708599adb6a28d78768ba0b5b6a28e7a71879cb1c3ad98836e58432e1904000000000b1f33485c708599adb6a28d78768ba0b5b6a28e7a71879cb1c3ad98836e58432e1904000000001025394e62778ba0b5ae99846f5a6073889bafac98858297abc0b6a28f7b8a9eb3b39e89735f4a35200b0000000000000a1c2d3e4f61728495a7b8b19f8d7b6a5847352312000000000000000000000000000000000b1c2e3f5061728596a7b8b09e8d7b695846342311000000000000000000000000000011263b50667b90a5bbd0cfbaa6927c72879cb1c6d9cbb6a28d77634e3a251000000000000011263b50667b90a5bbd0cfbaa6927c72879cb1c6d9cbb6a28d77634e3a25100000000000001d32475c72889c9ea9bab6a3979594919094a5b9b19e908f8f8e89735e49341f0a000000081d32475c71879ca4a595806b56412c17020000000013273c51667a90938f8b8783745f6677899aacbdab998876645341404f5e6c7986939fabada2988d8275695c4e40312111000000001e33485e73889db3b9a48f79687c92a6bab3a2938a87888b9198a3b4b29d8a8d98a3b0b1a598897868574534210e000000000000051628394a5c6d8091a2b4b5a391806e7b91a7a5907a666a7687989a87735f4b37230e0000000000051628394b5c6e8091a2b4b4a391806d7c91a7a5907a666a7787989a86725f4b36220e000004192d41556a7d93a7bba7937d73899fb4bdaa95826f8499afc4af9a866f5a45301b060000000004192d41556a7d93a7bba7937d73899fb4bdaa95826f8499afc4af9a866f5a45301b06000000000b1f33485d71869aafb29d88735f586b8093a7b4a08c7d93a8b2acab97848599aeb6a18c77624d38230e000000000000000f213243556677899bacbcab9988756452412f1d0c00000000000000000000000000000000102132445566778a9bacbcaa9987756352402f1d0b000000000000000000000000000f24394e63788ea3b8cdc9c0ac97836f859aafc4c4c8bba6927c68533f2a150100000000000f24394e63788ea3b8cdc9c0ac97836f859aafc4c4c8bba6927c68533f2a150100000000001b30455a6f869aafbac7c1b3ababa8a7a5a7b2c2bcada5a4a4a18c77624d38230e000000031a2f44596e848f8f9090846e5945301b05000000000e23384d61768ca0a4a09c8d7863596b7c8e9fb1b7a69482705e4d3b404e5b6875828d99a5b1aa9f9387796c5e4f3f2f1e0d0000001f344a5f74899fb4b7a28d776a8095abbfaa9784767272767c8597abb39e8a7a8692a0aeb6a797867563513e2b18040000000000030e1b2d3e5061738596a8b9af9d8c79798fa4a590796559687a8ea28f7a66513d28140000000000030e1b2d3e5061738597a8baae9d8b797990a5a48f796559697a8ea28e7965513d281400000012273b4f63778da1b5ad988472889cb2c4b19d89758297acc1b19c87715c47321d07000000000012273b4f63778da1b5ad988472889cb2c4b19d89758297acc1b19c87715c47321d0700000000051a2e42576c8296aab6a28d78635063778b9fb2a7938091a7a0979ba08d8095abbaa5907a65503b27120000000000000003142637485a6b7c8fa0b1b7a59482705e4c3b29180600000000000000000000000000000004152637495a6b7d8fa0b2b6a593826f5e4c3a2917050000000000000000000000000d22374c61768ca1b6c3b6afaf9d88738397acafafb4c0ab97826d58432f1a0600000000000d22374c61768ca1b6c3b6afaf9d88738397acafafb4c0ab97826d58432f1a060000000000192e43586d8398adbfc3ccc6c0bfbebcbbbcc4cbcbbfbab9b9a48f7a65503b261100000000172c41566a7878797979796f5a45301b06000000000a1f34485d72889cb1b5a6917c67525e708293a5b6b1a08e7c6a594739424a57636f7b8894a0acb1a5988a7c6d5d4d3c2a180500001f344a5f748ba0b4b7a18c76697d94a8bca7917c675c5d61687c91a5b8a38f797482909fafb5a492806d5a4734200c000000000514202b343b445567788a9cadbba99786768ca0a8937d6a565e72879b95806b57422d19040000000514202b343b445567788a9caebaa99786778ca1a8937d6a565f72879c95806b57422d180000000c2035495d71869aafb29e8974869bb0c4b8a4907c8094a9bfb39e89735e49341f0a00000000000c2035495d71869aafb29e8974869bb0c4b8a4907c8094a9bfb39e89735e49341f0a000000000014293e52677b90a5baa7927c68535b6f8397aaaf9e959cac97828c9f99959eb0bda8937d69543f2a15010000000000000008192b3c4e5f708294a5b7b19f8e7c6a584735241200000000000000000000000000000000081a2b3d4e5f708394a5b7b09f8d7b6a58463523110000000000000000000000000a1f344a5f74899fb4b6a59a9aa28e798095a59a99a2b3b09b87725d49341f0b00000000000a1f344a5f74899fb4b6a59a9aa28e798095a59a99a2b3b09b87725d49341f0b0000000000162c40566b8095a9aaafbcc7b7adabacadafb0b9c7c2b6b0b0a8937d68543f2a150000000013273b4d5c6363646464645f554533200c00000000051b2f44596e8398adbfaa96826b575264758798aabbac9a887665534a565a58565e6a76828f9ba8b6a89a8c7b6a594735220f00001e33485e73899eb3b7a18c7665798ea2b5a7927c6853484d61768a9fb3a994806a718291a3b5b09e8a77634f3b2713000000041423323e474f54565b6c7d90a2b3b5a39180869aae9a867260586e84999a86705b46311c070000041423323e484f54565b6d7d90a2b3b5a39180879bae9a867260596e84999a86705b46311c000000061a2e43576b8094a8b8a38f798499aeafadab97837c92a7bcb5a08b76604b36210c0000000000061a2e43576b8094a8b8a38f798499aeafadab97837c92a7bcb5a08b76604b36210c00000000031124394d62778ca1b5ac97836d5953677a8fa2b6afabaeaf9a868396a9abb0bdc1ac97836d58432e1a0500000000000000000d1e30415364768899aabcab9988766453412f1e0c000000000000000000000000000000000d1f30425365768899abbcab9988756452402f1d0b0000000000000000000000081d32475c72879cb1b09b87869a937d7c939b878597acb5a18c77624e3925100000000000081d32475c72879cb1b09b87869a937d7c939b878597acb5a18c77624e392510000000000014293e53687d9394959eafbca999959798999ca9bab5a49b9b9d97826c57422d18030000000b1f34495e71777776767472634f3a25100000000000172b40556a8094a9beae99856f5a4658697a8c9eafb7a69483705f56686f6c6b686766707d8b99a7b8a999897664513e2a1602001d32475c71879cb1b8a38e7864728698aaab97836f5d4c475b708499adae99857063738698abbaa693806a56422d19040000102232424f5a63696b6b68728495a7b9af9e8c8093a7a2907d6c606f84999e89735e49341f0a0000102232424f5b64696b6b68728496a7b9af9d8c8093a7a28f7d6c607085999d88735e49341f0000000014283c5065798ea2b6a994808397a99b98a09f8a798fa4b9b7a28d77624d38230e00000000000014283c5065798ea2b6a994808397a99b98a09f8a798fa4b9b7a28d77624d38230e0000000112212e37495d72879cb0b19c88725e4b5f73879bafc2c0c2b39f8a798c9fb2c4cdc5b09b87715c48331e0a00000000000000000112243547586a7b8d9eb0b7a59482705e4d3b2918060000000000000000000000000000000113243647596a7c8d9fb0b7a593826f5e4c3a29170500000000000000000000021b30455a6f869aafb19c87809499857a909c877d92a7baa6917c68533e2a150000000000021b30455a6f869aafb19c87809499857a909c877d92a7baa6917c68533e2a15000000000012273c5166797c7d8093a8b8a38d808283848b9eb2ae9986878889856f5a45301b060000000a1f34495e73898d8c8c8b7c68533e2914000000000012273c51667a8fa4b9b29d88735e494b5d6e8092a3b5b2a08f7c6b5b708483827d7c7b716c7a8a9baeb7a694826d5945311c07001a2f44596e8397acbba6927c68697b8d9eae9f8c7a6a5c4f55697d92a7b39e897460687b8fa2b7ae9a86705c47321d0800081b2e4050606d777d82827d76778a9badbba998868a9fad9b8b7c747b8c9fa08b745f4a35200b00081b2e4050606d777d82827c76788a9badbba998868ba0ac9b8b7c747b8c9fa08b745f4a341f000000000d21364a5e73889cb0ae9a868095a28d8393a6927d8ca1b6b9a48f79644f3a25100000000000000d21364a5e73889cb0ae9a868095a28d8393a6927d8ca1b6b9a48f79644f3a25100000000b1e303f4b51586d8397acb6a18d776356576b8093a7bbcfcdb8a38f798295a7baccc9b4a08b76614d38240f0000000000000000000618293a4c5d6f8292a4b5b1a08e7c6a5947362412010000000000000000000000000000000618293b4c5e6f8293a4b6b19f8d7b6a58463523110000000000000000000000192e43586d8398adb49f8b798e9f8a788e9d88788ea2b7ab96826d58432f1b060000000000192e43586d8398adb49f8b798e9f8a788e9d88788ea2b7ab96826d58432f1b06000000000f23374a5b656768798fa4b9a6917c6b6c6f8498adaf9b86717273746d5945301b05000000071c31465b70869ba1a195806b56412c1702000000000e23384c61768ba0b5b6a18c77624d3f5162748697a9baac9a89776570879896949387715c6b7d94a9bfb19d89745f4a35200b00162b4054697d92a7bbac97836f5d6f80909faa9889796d615963778ca0b4a38f79655f73889cb1b49f8a74604b36210c001024374a5d6e7d8a939796928a807d8fa1b2b5a49493a3b7a99b8f8b8e9aa9a08b76604b36210b001124384b5d6e7d8a939796928a807d90a1b3b5a39495a5b8a99a8f8b8e9aa9a08b745f4a341f00000000071b3044586d8295aab39f8a7d94a48f798b9f9985889db3bca7917c67523c2712000000000000071b3044586d8295aab39f8a7d94a48f798b9f9985889db3bca7917c67523c271200000012273b4e5d6668687d92a7bba7927d6c6b6863778ca0b4c8d1bda8937d778a9dafc2ceb9a5907b66523e2915000000000000000000000c1d2e405163748698a9bbac9a8876645341301e0c000000000000000000000000000000000c1d2f405263758798aabbab9988756452402f1d0c00000000000000000000162c40566b8095abb8a38e78889c8f7b8ba08b74899eb3b09b87725d4934200b0000000000162c40566b8095abb8a38e78889c8f7b8ba08b74899eb3b09b87725d4934200b00000000081b2d3d4a596062778ca1b6ab96826c5f6a8094a9b49f8a745f5e5f5c4f402f1d0900000000192e43586d8397acae99846e59442f1a06000000000a1f33485d72879cb1baa5907b66513c455668798b9daeb8a69583716f8499aba9a08c796b6e8295aabfb6a18c76604b36210b0011263a4f63778c9fb3b29f8b7765627182909ea7988a80756d6871869aaea894806a596d8398adb7a28d77624d38230e00172b3f53677a8d9ca7acaba69d90828395a6b8b1a7a7b1acb0aca3a0a2aab49f89745f4a341f0a00172b4054677a8d9ca7acaba69c90828395a7b8b2a8a8b0abafaca3a0a2abb39f89735f4a341f000000000015293e52667a8fa4b8a595919ba7927c8498a19393a2b6bea9947d69543f2a150000000000000015293e52667a8fa4b8a595919ba7927c8498a19393a2b6bea9947d69543f2a15000000162b40556a7a7d7d7d8fa4b9ac988583807c70708599acbdbebfac97836d8092a5b7cabfaa96826c58432f1b07000000000000000000001122344557687a8c9dafb7a69483705f4d3c2a1806000000000000000000000000000000001123344658697a8d9eb0b7a593826f5e4c3b29170600000000000000000014293e53687d93a8bba6917b82979582899e8c778599aeb5a18c77634e392510000000000014293e53687d93a8bba6917b82979582899e8c778599aeb5a18c77634e392510000000000013283d5266757676899eb3af9b867674737a90a4b7a28e786f6e6c6a5e4c38240f00000000162b40546a8094a9b19c87725d48331e0900000000091a2f44596d8397acbea994806a5540394a5c6d8091a2b4b2a18f7d6b7d92a4b6a9978980808d9db0c4b4a08b75604b36200b000c2034485c708397aabba89583705f6271808d98a39c9289827d7c8095abad9985705b6b8297acb9a48f78634e38230e001b30455a6e8397aab3a8a1a2a7a09182899bacbebcb2a0979eacb8b5b7bdaf9b86715c47321d08001c31455a6f8397aab3a8a1a2a7a09182899bacbebdb09e959eacb8b5b7beaf9a86705c47321d00000000000f23374c6074899db2b2a8a7acab95807c90a4a7a8b1c0c0ab96826b56412c17020000000000000f23374c6074899db2b2a8a7acab95807c90a4a7a8b1c0c0ab96826b56412c17020000162b40556a809394949aaab4b4a39a97958b77697d92a5a8a9aaac9c887275889aacb6b9b09b87725e4a36210e00000000000000000000051628394b5c6e8091a3b5b1a08f7c6b5947362412010000000000000000000000000000000517283a4b5d6e8092a4b5b19f8d7b6a584735231200000000000000000012273c51667b91a6bba994807c919c8d8fa08e788095a9bba6927c68533f2a15010000000012273c51667b91a6bba994807c919c8d8fa08e788095a9bba6927c68533f2a15010000000013293e53687d8c8c8fa0b4b4a08f8b8a89888fa3b8a793868684837b66513c27120000000012273c51667b90a5b4a08b75604b36210d0000000f1b252b4054697d93a8bdad98836d58442f3e5061738597a8baac9b8977758798a8b5a69b95959dabbabdac9986715c48331e090005192c4053677a8da0b2b2a08f7d6d5e616f7a86919aa29c979392949eaea89f8a75616d8397acb8a38d78634e38230e001f34495e73889db2a5958c8d939e9f8d7d8fa0b2c1ac97828e9ca8b2b8b5a693806b57432e1905001f34495e73889db2a5958c8d939e9f8d7d8fa1b2c0ab95808f9ca8b2b8b4a593806b57422e190000000000091d31465a6e8397abc0bdbcbfae998475899cb0bdc3cfc3ad98846e58442f1904000000000000091d31465a6e8397abc0bdbcbfae998475899cb0bdc3cfc3ad98846e58442f19040000152a3f54697d949f9f9d9f9f9f9fa0a1a3917c68768a9193949597988c776a7d8f9fa1a4a7a28d7965513d291502000000000000000000000a1c2d3f5062738697a9baac9a8976655341301e0d000000000000000000000000000000000b1c2e405163748698a9bbab9988766452412f1d0c000000000000000010253a4f64798fa4b9ad9883768b9fa2a2a590797b90a5baab97826d58442f1b060000000010253a4f64798fa4b9ad9883768b9fa2a2a590797b90a5baab97826d58442f1b060000000012273c51667b91a1a2adbdbdada2a09f9e9c9fadbfb0a19b9a99947d6954402b16010000000f24394e63778da2b7a38e79644f3a251100000c1d2d393f405065798fa4b9b09b87715c473232445667798b9caeb8a69583717a8a98a5afafabaaafbab6ac9e8e7c6956422e190500001124374a5d708395a6b7ac9c8c7c6d5f5d69737d878f959a9c9f9f9d99948d84796472879bb0b5a08b76614c37220c001f344a5f748ba0af9b887777808e9d98868394a6b7b09e8c7d8a969ea3a197887663503c281400001f344a5f748ba0af9b877777808e9d98858394a6b8af9d8c7d8a969ea3a197887663503c2814000000000002172b3f53687c91a5b9ced1c6b19c87718295a9bdd1dac5b09b86705b46311c0700000000000002172b3f53687c91a5b9ced1c6b19c87718295a9bdd1dac5b09b86705b46311c07000013293e53687d898989888989898b8b8c8d8f826d6f7b7c7c7d808283857b667284898c8f929594806c5845321e0a0000000000000000000000102133445668798b9daeb8a69483705f4d3c2a1907000000000000000000000000000000001022334557687a8c9eafb7a59482705e4c3b291706000000000000000d23384c62778ca1b7b09b87718599aeb7a7927c768ca0b5b09c88725e4935200c000000000d23384c62778ca1b7b09b87718599aeb7a7927c768ca0b5b09c88725e4935200c000000000f243a4f64788fa4b7bec6cbbeb7b5b4b3b2b3bccbbfb4b0afac97836d59442f1a060000000b20354a5f748a9fa5a7927c68533f2a150000172a3b4a54545161768ba0b5b49f8a75604b3627384a5b6d8091a2b4b2a18f7d6b7a88929ca3a8ababa7a29a8f80705e4c3a2613000000081b2e40536577899aaabaaa9a8c7d70645a616a737a82858889898884807970676a7b8ea2b6b09c87725d49341f0a001f344a5f748b9fac97826c636f7d90a28f7a889aacbba9988678838a8d8c857869594734210d00001f344a5f748ba0ac97826b636f7d90a28e7a899aacbba9978678838a8d8c857869594734210d0000000000001025394d62768a9fb3c7dcc9b49f8974798da2b5c9dcc7b29d88735e48331e09000000000000001025394d62768a9fb3c7dcc9b49f8974798da2b5c9dcc7b29d88735e48331e09000011263b506474747373727373737474767778796f61666767686a6b6d6f706166717477797c80838875614d38230e0000000000000000000000041527394a5c6d8091a3b5b2a08f7c6b594836241301000000000000000000000000000000041628394b5c6e8092a3b5b19f8e7c6a5847352412000000000000000b20354b5f748b9fb4b49f8a748093a8bca9947d72879cb0b6a18d77634f3a2611000000000b20354b5f748b9fb4b49f8a748093a8bca9947d72879cb0b6a18d77634f3a2611000000000d23384c62778da2a8abb4c3c4b6aeadafb0b1b2bac8c9bfb9b19c87725d48331f0a000000081d32475c71878f909397826c58432e1a00001d3246596869666372889cb2b8a38e78644f3a252c3e4f61738597a8baac9b8977697580888e939595938e877d706152412f1d0a0000000011233648596b7b8c9cacb8aa9c8f82776d635b5f666c6f727373726f6b655d69778899abbda995826d58442f1b06001e33485d72889cac97826c586072869a96827c8ea0b1b5a392806f75777772685b4c3b29170400001e33485d72889dac97826c586072869a96827c8fa0b1b5a392806f75777772675a4b3b2917040000000000000a1e33475b708599adc1d6ccb7a28d7772869aaec2d5cab5a08b75604b36210c000000000000000a1e33475b708599adc1d6ccb7a28d7772869aaec2d5cab5a08b75604b36210c00000d213547575f5f5e5e5c5e5e5e5f5f606263646052505252535457585a5b53565c5f6264676a6e7272614c38230d000000000000000000000000091b2d3e5061738597a9bbac9a8977655342301e0d000000000000000000000000000000000a1c2d3f5162748698a9bbab9988766453412f1e0c000000000000091e33485d72889db2b7a28d77798ea2b6ab95806d8397acbba7927d6954402b1703000000091e33485d72889db2b7a28d77798ea2b6ab95806d8397acbba7927d6954402b17030000000b20354b5f748b929396a5b8b8a69a98999b9c9eaabbbbaca4a5a08b76624d38240f000000031a2f44596d77787a7d8387715d48331e00001f344a5f747d7b78768499aebba6927c67523e292032445567798b9caeb8a7958371636c73797d80807d79736a5f5243342312000000000006192a3c4d5e6e7d8e9caab7aca0948a80777069645f5c5d5e5e5d5d6167707a8896a6b7b3a18d7966523e291501001b30455a6e8498ac9b87725f566a7d949c88738294a5b7af9e8c7a6862625d554a3d2e1d0c0000001b30455a6f8498ad9b87725e566a80949c88738294a6b7af9e8c7a6862625d554a3c2d1d0c0000000000000004182d4155697d92a7bbd0cfbaa5907a6a7d92a6baceccb7a28d77634e38230e0000000000000004182d4155697d92a7bbd0cfbaa5907a6a7d92a6baceccb7a28d77634e38230e000005182a39444a4a4848474848484a4b4b4c4e4f4d433b3c3c3e40414344464042474a4d505255595d5e5444311e09000000000000000000000000000f2132445668798c9dafb8a69583715f4e3c2a1907000000000000000000000000000000001021334556687a8c9eafb7a59482705e4d3b2918060000000000041c31465b70869bb0baa5907b73889cb0ac97836c7d92a7bcac98836f5a46311d08000000041c31465b70869bb0baa5907b73889cb0ac97836c7d92a7bcac98836f5a46311d08000000091e33485d727b7c7d889db2b39e89838486878ca0b4b19e8f9090907b66523d281300000000162a3d4f5d626366696d736f5c47321d00001e33485d7288918e8c8a9aaebfaa95806b56412c1826384a5b6d8091a3b4b3a18f7d6b5a5f65686a6a68645f574d42342516060000000000000d1e2f4050606f7d8d9aa6b3b1a69c938b847d7874706f6e6e6f72767b838d98a5b4b9a89684715d4a37230f0000172c4055697d92a6a28f7a6856667b91a28d77768899abbba998867463514942382c1f1000000000172c4055697d92a7a28e7a6856667b91a18c7776889aacbba998867462514942382c1e0f00000000000000000012263b4f63788da1b5cad2bda8937d68778b9fb2c6cfbaa5907a65503b2611000000000000000012263b4f63788da1b5cad2bda8937d68778b9fb2c6cfbaa5907a65503b26110000000c1b2831343433333233333334353637393a3831262727292b2c2e2f302c2e3235383b3d40444949433626150200000000000000000000000000031527384a5c6e8091a3b5b2a18f7d6b594836241301000000000000000000000000000000041627394b5c6e8092a4b5b1a08e7c6a5947352412000000000000192f44586e8499aebea9947d6d8296abae99846e788ea3b7b29e8974604b37230e00000000192f44586e8499aebea9947d6d8296abae99846e788ea3b7b29e8974604b37230e000000041a2e42546166676f8499aeb5a18c776e6f71879bb0af9a86797a7b7c69543f2a15000000000e2031404a4c4e5054595e5d513f2c1900001b30455a6f8499a3a09fa7b7c3ae99846f5a45301b1a2c3e5061738597a9bbad9b897766545053545453504a433a3024160700000000000000001122324251606e7c8995a1acb6afa79f98928d898784848484878b9097a0aab6baac9b8a796754412e1b07000011263a4e63778b9fab988674666a7d93a5907b6a7c8e9fb1b5a492806e5d4b39281b0e010000000012263b4f63778b9fab988674666a7d93a5907a6a7c8ea0b1b5a392806e5c4b39281b0e000000000000000000000c2035495d72879bafc4d3c0ab96826c6f8397aabed2bda8937d68533e291400000000000000000c2035495d72879bafc4d3c0ab96826c6f8397aabed2bda8937d68533e2914000000000a151c1f1f1e1e1d1e1e1e1f2021222425231d141212141517191a1b181a1d202325282c2f34342f251809000000000000000000000000000000091b2d3e5062738698a9bbac9b8977655342301e0d000000000000000000000000000000000a1b2d3f5162748698aabbac9a88766453412f1e0c0000000000172c41576b8297abc0ac97836d7c90a5b09b867074899eb3b8a38f7a66513d291400000000172c41576b8297abc0ac97836d7c90a5b09b867074899eb3b8a38f7a66513d291400000000132536444d50566b8296abbaa5907b665a6c8296abb39f8a756666675f4e3b2612000000000313222e3537393b3f444948403222100000182d42576c8297acb5b4b9c5c7b29d88735e49341f0f2032445667798c9dafb8a7958371604e3e3f3f3e3b3630271e13060000000000000000000414233242505e6b77838f99a3acb5b3aca7a29e9b999999999c9fa4abb3bcb6aa9c8e7d6c5b4a3725120000000b1f33475b6f8396a8a39384797a889ba7927c67708294a6b7b09e8c7a68574534221000000000000c2034485b6f8396a9a39384797a899ba7917c67708294a6b8af9e8c7a68574533221000000000000000000000061a2f43586c8295aabcbdc0ae99846f677a8fa2b6c9c0ab96826b56412c170200000000000000061a2f43586c8295aabcbdc0ae99846f677a8fa2b6c9c0ab96826b56412c17020000000001070a0a0802000004090a0b0c0d0f0f0e090100000000000000000002080b0e1013171b1f1f1b130800000000000000000000000000000000000f21334456687a8c9eafb8a69583715f4e3c2a1906000000000000000000000000000000001021334557687a8c9eb0b7a69482705e4d3b29180600000000152a3f54697d94a9beaf9a8670768b9fb29d887270859aaebea995806c57432e1a06000000152a3f54697d94a9beaf9a8670768b9fb29d887270859aaebea995806c57432e1a0600000008182732393e53687c92a7bca994806a55687c91a6b8a38f796551524d41301e0b000000000004111b202224262b3034332d2214040000152a3f54697d94a7aaadb0b3b6b6a18c77624d38240f1527384a5c6e8091a3b5b3a18f7d6b5a48362a2926211c140b01000000000000000000000005142332404d5a66717c879099a1a9afb5b7b3b0afaeaeafb1b4b9beb7aea4998c7d6f5f4e3d2c1a0800000004182c3f5366788b9eafa2968f8f98a6a7927c676476889aacbbaa9886746351402e1d0b0000000005182c3f5366798c9eafa2968f8f98a6a7917c676476889aacbba998867463513f2e1c0b0000000000000000000014293e52667b90a4a7a8abad9c88725f72869aaeb9bcae99846f5a442f1a06000000000000000014293e52667b90a4a7a8abad9c88725f72869aaeb9bcae99846f5a442f1a060000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000041527394b5c6e8092a4b6b2a18f7d6b594836241201000000000000000000000000000000041628394b5d6f8293a5b6b1a08e7c6a59473524120000000013283d52677c92a7b3b39e8973708599ae9f8a746b8095aabbaf9b86725d4935200c00000013283d52677c92a7b3b39e8973708599ae9f8a746b8095aabbaf9b86725d4935200c0000000009151e253a4f64788ea3b5ad99846f5a62778ca1b5a994806b5642393023130100000000000000070b0d0f12161b1f1e19110500000013283d52677c8f9295989b9ea1a4a5907b66513c2713091b2c3e5062748698aabcad9b8977665442301e110d070000000000000000000000000000000514222f3c48545f69737c868d959ba1a6abaeb1b4b5b5b4b2afaaa39b92877a6e60514131200f0000000000102336495c6e8091a2b2a9a4a4abb5a5907a65596a7c8fa0b2b5a492826f5d4b3a28170500000000102336495c6e8091a2b3a9a4a4abb6a5907965596b7c8fa0b2b5a492806e5d4b3a2817050000000000000000000f23384c61758a90919395989a8a745f6a7d92a1a4a7ab9c87725d48331e0900000000000000000f23384c61758a90919395989a8a745f6a7d92a1a4a7ab9c87725d48331e090000000000000000000000000000000000000000000000000000000008101414120f0c0a080603000000000000000000000000000000000000000000000000091b2d3f5163748798aabcac9b8977655341301e0b000000000000000000000000000000000a1c2e3f5163758799abbdac9a88766453412f1d0a00000010263b506579909c9ea1a18c776a80939fa18c76667b90a4a7a9a18d77634f3b271300000010263b506579909c9ea1a18c776a80939fa18c76667b90a4a7a9a18d77634f3b27130000000000020d21364b60758a9ea0a29d88735e5d72879babac9a86705c47331e1204000000000000000000000000000000000000000000000010253a4f6374797c808386898c8f9294806a55412c17020f21334456687a8d9faaa5a2958371604e3b271200000000000000000000000000000000000004111e2b36424d576069727980878d9296999c9fa0a09f9d9a958f887d74695d504232231302000000000007192c3e5162738494a4b2b9b9beb3a08b77624d5f708395a6b8b09e8d7a69584634210e00000000071a2c3e5162738595a4b2b9b9beb39f8b76614d5f708395a7b9b09e8c7a69574634210e000000000000000000091e32475b6f797a7b7d8083868777626275898c8f9296998b75604b36210c0000000000000000091e32475b6f797a7b7d8083868777626275898c8f9296998b75604b36210c0000000000000000000000000000000000000000000000000000000e1a24292a2724211f1d1b18100500000000000000000000000000000000000000000000001021334557697a8d9fa9a5a29583705f4d3a2611000000000000000000000000000000000010223446586a7b8ea0aaa6a39482705e4d3a26110000000e23384d63778687898c908f796579898b8d8e7863778c8f919497937d6a56422e190000000e23384d63778687898c908f796579898b8d8e7863778c8f919497937d6a56422e19000000000000091e32475c7187898b8d8f8d7763586d829495979a8b76614d3924100000000000000000070d1011100d090200000000000000000c203346566064676a6d707376797c80836f5a442f1a05041527394b5d6f829395908d8a887d6a55402b1601000000000000000000000000000000000000000d1925303a444d565e656c72777c828587898b8b8a8886827b746b61574c3f32231405000000000000000f2133445666768694a1acb3b4a89784705c48536577899ba6a29d98877563513d281300000000000f2133455666768694a1acb3b4a89784705c48536577899ba6a29d98877563513d281300000000000000000003182c405260646666686b6d6f717060596c7477797c82848878644f3a240f000000000000000003182c405260646666686b6d6f717060596c7477797c82848878644f3a240f00000000000000000000000000000000000000000000000000000c1d2c373e3f3c39373432302c231607000000000000000000000000000000000000000000000416283a4b5d6f829495908d8a887c69543f2a1400000000000000000000000000000000000516283a4c5e70839596918e8b887c69543f2a140000000b2035495d6c6f7073777a7c7c676f7374777a7a667076797c80828586715d48331e0000000b2035495d6c6f7073777a7c7c676f7374777a7a667076797c80828586715d48331e000000000000041a2e43576972737577787a796553687b7d808385877c68533e291400000000000008131c22252625221d160d0300000000000004162838444b4f5255585b5e6164676a6d6756422d1803000a1c2e4052647687807b7774727066533f2a1500000000000000000000000000000000000000000007121d27313a424a51585d63686c6f727374747472706c6660584e453a2e21140500000000000000000416273848586775838f999e9f988a79675441485a6b7d90918d8884827c69543f2a1500000000000416273848586775838f999e9f988a79675441485a6c7d90918d8884807c69543f2a1500000000000000000000102334434d4f50515356585a5c5c524e5b5f6265686b6f7273624e39240f000000000000000000102334434d4f50515356585a5c5c524e5b5f6265686b6f7273624e39240f000000000000000000000000000000000000000000000000000016293b495354514e4c4947454034251402000000000000000000000000000000000000000000000a1c2e4052647687807b7774727064513d28130000000000000000000000000000000000000b1d2f4153657787827c7875737065523d2814000000061a2d3f4e575a5c5f626568685e5c5e5f6265685d5d6164676a6c6f736f5c47321d000000061a2d3f4e575a5c5f626568685e5c5e5f6265685d5d6164676a6c6f736f5c47321d0000000000000014273a4b575c5e60626365655b4c5d68696b6c6f727467533e291400000000000c1a262f363b3b3a37312a2015080000000000000a1a2731373a3d404346494c4f525558554939261300000010223547596b746b66635f5d5b564837241000000000000000000000000000000000000000000000000a141e262e363d43494e53575a5c5e5f5f5f5d5b57524c443b32281d100400000000000000000000091a2a3a495765727c85898a857a6c5c4a383c4e6072827c77736f6b685f4e3b2612000000000000091a2a3a495865727c858989857a6b5b4a373d4e6072827b77736f6b685f4e3b26120000000000000000000005162531383a3b3c3e4043454747403e474a4d5053565a5d5e5545331f0b00000000000000000005162531383a3b3c3e4043454747403e474a4d5053565a5d5e5545331f0b00000000000000000000000000000000000000000000000000001d31455867696663605e5c5a5243311e0a000000000000000000000000000000000000000000000011233547596b736b66625f5d5b544635220e00000000000000000000000000000000000000122436485a6b736c6763605e5b554735220f000000001021303c4244474a4d5053534d47484a4d51534c494c4f5254575a5e5d513f2c19000000001021303c4244474a4d5053534d47484a4d51534c494c4f5254575a5e5d513f2c19000000000000000b1d2d3a4347494b4c4e50504a3f4c535456585a5c5f5849372410000000000b1b2a37434b50504f4c463d322617080000000000000a151d2225282b2e3134373a3d404341382b1b090000000517293c4d5a5f57524d4a484642382a1907000000000000000000000000000000000000000000000000010a131b22292f35393e424547494a4a4a4846423d3831281f150b000000000000000000000000000c1c2b3947545f6970737470685c4e3e2c314355666c67635e5a56534d41301e0b000000000000000c1c2b3a4754606970737470685c4d3d2c314355666c67635e5a56534d41301e0b000000000000000000000007141d23252627292c2e3032312d2b3335383b3e4145484943372716030000000000000000000007141d23252627292c2e3032312d2b3335383b3e41454849433727160300000000000000000000000000000000000000000000000000001f344a5f747d7b787673726f614e39240f000000000000000000000000000000000000000000000006182a3c4e5b5f57514d4a484641362817050000000000000000000000000000000000000006182a3c4e5b5f57524e4b484642372918060000000003121f292e2f3235383b3d3e39323335383c3e3934373a3d4042454948403222100000000003121f292e2f3235383b3d3e39323335383c3e3934373a3d40424549484032221000000000000000000f1d282f32343637393b3b362e383d3f404345474a453b2c1a080000000517293948555f646664605950433526150400000000000002080d101316191c1f2225282b2e2c251b0d00000000000c1e2f3d474a443d383533302e261a0c00000000000000000000000000000000000000000000000000000000070e141b2025292d30323434343433312d29231d150c020000000000000000000000000000000d1c2a36424d555b5e5f5c554b3e30202638485457524e4a45413e393023130100000000000000000d1c2a37424d555b5e5f5c554b3e2f1f2638485457524e4a45413e393023130100000000000000000000000001090e0f11121416191b1d1c19181e202326292c3033343026190a00000000000000000000000001090e0f11121416191b1d1c19181e202326292c3033343026190a0000000000000000000000000000000000000000000000000000001d32475c7086908e8b89877b67523d28130000000000000000000000000000000000000000000000000d1f303e474a443d383533302d24190a0000000000000000000000000000000000000000000d1f303e474a443e393633312d251a0b000000000000020d14191a1c2023262828251d1e20232728251f2225282b2d3134332d2214040000000000020d14191a1c2023262828251d1e20232728251f2225282b2d3134332d2214040000000000000000000b141a1d1f2022242626221c24282a2b2d30323431291d0e000000000e213446576672797b79756c61534433210e00000000000000000000000000070a0d1013161817120900000000000000111f2b3234312824201e1b1913090000000000000000000000000000000000000000000000000000000000000000060b1014181b1d1f1f1f1f1e1c19140f09010000000000000000000000000000000000000c192530394146494a4741392d20121a2a3740423e3935302c29251d1204000000000000000000000c1925303a4146494a4741392d20111a2a3740423d3935302c29251d1204000000000000000000000000000000000000000000000000000004090b0e1114171b1e1f1b1409000000000000000000000000000000000000000000000000000004090b0e1114171b1e1f1b140900000000000000000000000000000000000000000000000000000000192d42576c8296a3a09e94806a55402b160100000000000000000000000000000000000000000000000112202b3334302824201e1b181107000000000000000000000000000000000000000000000112202b3334302925211e1c191208000000000000000000000001070b0e111313110a090b0e1213100a0d101315181c1f1e1911050000000000000000000001070b0e111313110a090b0e1213100a0d101315181c1f1e19110500000000000000000000000000060a0b0d0f11110e0910131416181b1d1f1d160c0000000000162a3e516475858e918f89807162513e2b18040000000000000000000000000000000000000000000000000000000000010e181e1f1c150f0b090400000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000008131d262d313434322d261c10020c1a242b2c2924201c1814110a0000000000000000000000000008131d262d313434322d261b10020c1a242b2c2924201b1714100a00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000014293e52677c91a6b5ac97836d58432e1904000000000000000000000000000000000000000000000000020f181e1f1c140f0b08030000000000000000000000000000000000000000000000000000020f181e1f1c14100c090500000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001c3045596d8293a2a7a49c90806d5a47331e0a0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000010a12181c1f1f1d19120900000008111617140f0b07000000000000000000000000000000000000010a12181c1f1f1d19120900000008111617140f0b0700000000000000000000000000000000030c14191c1d1d1b17110a020000000000000000000000000000000000000000030f171c1c19140f0a05020c1316150f0a0500000000000000000000000000000000000000000000030d1315130d0400000000000000000000000000000000001025394e63788da2b7af9b86705b46311c0700000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000030e161a19141115161615110c060000000000000000000000000000000000000000070e1313100d0a06030000000000000000000000000000000000000000000000000000000000000000000000000000000000001f34495e73889db1bcb8ae9e8a76614c38230d0000000000000000000000000000000000000000040706020000000000000000000000060e11110e0b08050200000000000000000000000000000000000000000000000000000000040b0f0f0b03000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000a1620282e313232302b251e150c0100000000000000000000000000000000000413212b31312d28241f1a151f272b2a241f1a15110c080000000000000000000000000000000000071520272a2821170d020000000000000000000000000000000c20354a5f74899eb3b39e89735e49341f0a0000000000000911151513100e0b09070913191b191714110e0c090604010000000000000000000000000911151513100e0b09070913191b191714110e0c0906040100000000000000000000000000060c0f0e0a0602000000000000000000000000000000000413202a2f2e28262a2b2b2a26211a120800000000000000000000000000000000000d1923282825221f1c1815110a0e0f0f0f0e0e0e0f10100d050000000000000000000000000000000000000000000000000000001f344a5f748a9fb4c9c9b9a48f78634e38230e00000000000000000000000000000001060a0f14191c1b160d0100000000000000000c1922272623201d1a17140f080000000000000000000000000000000000010100000000000a161f24241f160a0000000000000000030f171c1c18130f0a050002080b0a05000000000000000000000000000000000000000000000000030c14191c1d1d1b17110a0200000000000000000000000000000000000000000000000000000000091014141008000000000000000000000000000000000e1b28333c4247474745403931281e1308000000000000000000000000000000001022323e4646423d38332e2a313b403e38332f2a25211c13070000000000000000000000000000041525333c3f3c342a1f14080000000000000000000000000000071c31465b70859aafb6a18c76614c38230d00000000000f1b252a2b282523201e1c1a262e302e2c292623211e1b1916120c0300000000000000000f1b252a2b282523201e1c1a262e302e2c292623211e1b1916120c030000000000000000000e192124231f1b17130e09040000000000000000000000051423313d44433b3b3f40403f3b352d251b110500000000000000000000000000000b1c2b363d3d3a3734312d2a251d2325252423232325252521180c00000000000000000000000000000000000000000000000000001e33485d71869aabb5b4ae9e8b77624d38230e000000000000000000000000000a11151a1f24292d32302a1f11010000000000000b1c2a363c3b3835322f2c29241b0e000000000000000000000000060d1216161614100b040a1a28333939332719090000000000000413212b31312d28241f1a15151d201f1a15100b06020000000000000000000000000000000000000a1620282e313232302b251e150c0100000000000000000000000000000000000000000000000006111c252929241a0e00000000000000000000000000000d1d2c39454f575c5c5c59544d453b3125190c000000000000000000000000000000192d3f505b5b57524d48433e404e55534d48433f3a36302516060000000000000000000000000010213343505450473d3125190b0000000000000000000000000001182d42576c8296abb9a48f7965503b2611000000000c1d2d393f403d3a383633312e38424643413e3b383633302e2b272014060000000000000c1d2d393f403d3a383633312e38424643413e3b383633302e2b27201406000000000000000e1e2b353a3834302c27231e181107000000000000000005142332414f59584d4f545656544f4941382e22160a0000000000000000000000000015283a4852524f4c4946423f3930383a3a3a3838383a3a3b352a1c0c000000000000000000000000000000000000000000000000001a2e43566a7c8e9aa09f9b90806f5c48331f0a000000000000000000000004121d252a2f34383d4247453c2f1f0d00000000000316293a4851504d4a4744413e372c1e0d00000000000000000005101a21272b2b2b29251f18172838464e4e453727160600000000001022323e4646423d38332e2a283136342e2924201b1711090000000000000000000000000000000e1b28333c4247474745403931281e1308000000000000000000000000000000000000000000000a17232f383f3e372c1e10010000000000000000000000081a2b3b4a57626b7072726e6861584e43362a1c0e00000000000000000000000000001e33485c6e706b66625d58514c5e6a67615d58534f4b42342411000000000000000000000000091b2d3f51616a63594f4336291c0d0000000000000000000000000014293e53687c92a7bba7937c68533e291400000000172a3b4a5454524f4d4b48464348565b585653504e4b484543403b322414030000000000172a3b4a5454524f4d4b48464348565b585653504e4b484543403b322414030000000000061a2c3c494f4d4945403c38322c24190a0000000000000011223241505f6d6b5b63696b6b69645d544b4034281a0d0000000000000000000000001c314558666764615e5b57544c424c4f4f4f4e4e4e4f4f50483a29170300000000000000000000000000000000000000000000000013273a4d5f6f7c868b8b877d7162513f2c19040000000000000000000001132330393f43484d52575c594d3c2b19070000070d0e1d3246586565625f5c5956524a3c2b1804000000000000000916222d363c4040403e39332b23354656636255453424130300000000192d3f505b5b56524d48433e39454b48433e3934302b251b0e000000000000000000000000000d1d2c39454f575c5c5c59544d453b3125190c00000000000000000000000000000000000000000a192735414c5353493c2e1f1103000000000000000000001325374959677580868887837c756b6054473a2c1d0e000000000000000000000000001f34495e7386807b76716d6251667b7b76716d68645f52412d190500000000000000000000041527394b5c6e80766c605447392b1d0e00000000000000000000000010253a4f64788ea3b8ab96826b57412d18030000001d324659686a676462605e5b575366706e6b686563605d5a58554f4232200c00000000001d324659686a676462605e5b575366706e6b686563605d5a58554f4232200c00000000000d2236495a64625d5955514c474036281705000000000000192d40515f6e7d796d777d82827d7870675d5245382b1c0d00000000000000000000001f344a5f747c787673706c685c51606464646363636464645846331e0a0000000000000000000000000000000000000000000000000b1e3041515e6a727474716b61534434221000000000000000000000000b1e30414d53585d62676c706b5a4836251304111b212322364b60757a7774716e6b675a47331f0a00000000000008182734404950555656534e473f364152637473635242312110000000001e33485c6e706b66615d58514757605d57534e494440382c1c0b0000000000000000000000081a2b3b4a57626b7072726e6861584e43362a1c0e0000000000000000000000000000000000000919283745525e68675a4c3d2f2112040000000000000000081c2f4255667686929a9d9c9891887d7265584a3b2c1d0d0000000000000000000000001c31455a6f8495908b87826c57677c908b87827c78705d48331e09000000000000000000000f21334456687a8c897d726557493b2c1d0d00000000000000000000000c21364b60758a9fb4ae99846f5a45301b060000001f344a5f74807c79777573706a596c8283807d7a7775726f6d6a614f3b271200000000001f344a5f74807c79777573706a596c8283807d7a7775726f6d6a614f3b2712000000000010263b50657877726e6a66615b544635220e0000000000001e33485d6f7d8d867d8a939797938d857a6f6356483a2b1c0d000000000000000000001e32475c70868f8b8886827864596e797978787878797976614c37220d00000000000000000000000000000000000000000000000001122332414d575d5f5f5d574e4335261605000000000000000000000012263b4e5f686d72777b828677665442301f13222e36383736495e73888d8987848077624c37221607000000000416263644525c656a6b6b68625b52484e5f70828270604f3e2e1d0c0000001f344a5f7486807b76716d62516475716c67625e59554a3a281501000000000000000000001325374959677580868887837c756b6054473a2c1d0e0000000000000000000000000000000005162737465563707b78695b4d3f30221405000000000000000f24384b5f728495a4afb3b1aca49b90837668594a3b2b1b0b0000000000000000000000182c41566b8095a5a09a86705b687d94a09b97928b74604b36210c000000000000000000091b2c3e50627386989c90837567594a3b2b1c0b00000000000000000000081d32475c71879bb0b29d88725d48331e090000001d3146596d82928f8d8b88867561687c929593908d8b888683806a543f2a1500000000001d3146596d82928f8d8b88867561687c929593908d8b888683806a543f2a1500000000001025394e63778c8884807a757064513d28130000000000001f34495e718292938f9ca7acaba7a0988d82746658493a2b1b0b000000000000000000192e42576c8296a09d9a927c685c7187908f8f8f8f8f87725e4a35200b000000000000000000000000000000000000000000000000000514232f3a43484a4a48433b3225170800000000000000000000070c152a3f54697c82878c9095958371604e3d2b2031404b4e4c4b4a5b70869a9f9b988f78644f3e342514020000001022334454626f798082827c766f655a5a6b7c8e8f7d6d5c4c3b2a1a0900001c31465b708695908b87826b57677c87827c77726e685845301c07000000000000000000081c2f4255667686929a9d9c9891887d7265584a3b2c1d0d00000000000000000000000000000011233445556473828e88796b5d4e4032231404000000000000152a3e53677a8fa2b3c2c8c0bdb8ada1948677685949392918060000000000000000000013283d52667b90a5b39e89745f6a8095abb0aba28d77634e39240f0000000000000000001426384a5c6e8091a3ada194867768594939291908000000000000000000031a2f44586d8397acb5a08b76614c37220d000000162a3e5265798da1a2a09d917c6863788da2a8a5a2a09d9a96826b56412c170200000000162a3e5265798da1a2a09d917c6863788da2a8a5a2a09d9a96826b56412c1702000000000b20354a5e73889c98948f8a806b56402c170200000000001b2f425363738494a3acbac1c0bcb4aa9f928576675849392918070000000000000000152a3e53687c92a7b2ab96826c5f748a9fa4a4a4a495806c58432f1b07000000000000000000000000000000000000000000000000000005121e272e333434332e281f14080000000000000000010b141b2024283d5163748697a0a5aaa18f7d6c5a48372c3d4f5e6362605f5d6c8297acb0a5907b66585143321f0b000006192c3f516272828c949796928a82776d6678899b9c8b7a6959483827160400182d42576c8296a5a099856f5a687d9496918c8883735e49341f0a0000000000000000000f24384b5f728495a4afb3b1aca49b90837668594a3b2b1b0b000000000000000000000000000a1c2f4052637383929f988a7a6c5e50413222100000000000001a2f44586d8296aabec2b5aca8a8acb2a4968777675747362412010000000000000000000f24384d62778ca1b6a28e78646c8397acc1baa5907b66513c27120000000000000000001b30435667798b9dafbfb1a496877767574736261403000000000000000000162b40556a8094a9b8a38f79644f3a25100000000f22364a5d728699adb5ac9884705f74899eb3bab7b4aead98836d58432e1903000000000f22364a5d728699adb5ac9884705f74899eb3bab7b4aead98836d58432e190300000000071c30455a6f8499ada9a498836e59442f1a0500000000001225354555667a8fa3b8cac1bab5b4b6b0a3958676675747362513010000000000000010253a4f63788da2b7af9a867062778da2b7b9b7a28e7965513d291400000000000000000000000000000000000000000000000000000000000b141a1e1f1f1e1a140c02000000000000000006131e282f35393b3b465768798a9cadbead9b8a7766544337495b6d7877757372707d94a8bda8937c6e6d614e3a261200000d2135495c6e80919fa8acaba69e958a7d728596a7a998887666554433200c0014293e53687c92a6b29e89735e6b8095aba6a19c8b76604c37210d000000000000000000152a3e53677a8fa2b3c2c8c0bdb8ada1948677685949392918060000000000000000000000011427394c5e6f8291a1b0a7998b7c6e5f503f2c180300000000001d32475c71879cb0c4b3a499939398a0aba5968675645341301e0c0000000000000000000b1f34495e73889db2a7927c686e8499aec3bda8937d69543f2a150000000000000000001f34495e7385929da9b6c2b4a596867565544332210f00000000000000000012273c51667b90a5baa7927c68533e2914000000071b2e42566a7d92a5b9b39f8b776370869aafc4b5a399999a856f5a442f1a0500000000071b2e42566a7d92a5b9b39f8b776370869aafc4b5a399999a856f5a442f1a050000000000172c40556a8094a9beb19c87715c47321d08000000000007172c41566b8095a9bebcaea6a09fa1a7b0a4958575645342301f0d000000000000000c21364a5f74899eb3b39e8974657a90a5bac5b09c88735f4b36220e0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000061524303b434a4e5050504d5b6d7d8fa1b2b9a7958472604e425466788a8c8b8988878692a7bcaa9584847d6955412d19040014283c5064788c9eafbcc1c0bab2a79c8f8290a2b3b6a595847362503b27120010253a4e63788da2b6a28d77636c8398adbab6a38e78644f3a25100000000000000000001a2f44586d8296aabec2b5aca8a8acb2a49687776757473624120100000000000000000000091d304356697b8d9fafbfb7a99b8c7d6e5b46311c0700000000001f344a5f73899fb4b9a695867c7d848e9ba9a39382705f4d3b2816030000000000000000061b30455a6e8498adab96826c70869bb0c5c0ab97826c57422d180300000000000000001e33485c6d75808c98a5b4c3b4a4948372614f3e2c1a0800000000000000000f24394e63778da2b7aa95806b56412c170200000013273b4e62768a9eb1baa6927d6a6c8296abc0af9a85848687705c47311c07000000000013273b4e62768a9eb1baa6927d6a6c8296abc0af9a85848687705c47311c07000000000013273c51667a8fa4b9b49f8a74604b36210c000000000000192e43586e8498adc2b09e928b898c939eaaa3938371604e3c2a1705000000000000081c31465b70859aaeb7a28d77687d93a8bdbeaa96826d5844301c0800000000000000000000000000000000000001080c0c09050000000000000000000000000000000000000000000002132433424d575e63666665625d60718394a6b7b3a1907d6c5a4d60728496a1a09f9d9c9ba0afc2b1a1999985705c48331f0b00192d42576b8094a8bbc7bbb2afafb3ada0979eaebfbeae9d8d7c68533e2813000c21364a5f74899eb3a5907b666f8599afc4bba6917c67523d28130000000000000000001d32475c71879cb0c4b3a499939398a0aba5968675645341301e0c000000000000000000001125394c60738699abbcc6b6a697887b6e5b46311c0700000000001f344a5f748ba0b5b29d8a776969707c8b9baba08f7c6a584633200d000000000000000000172c40556a8094a9af9a867072889db3c7c4af9a86705b46311c070000000000000000192c3e4f59636e7a8896a5b4c2b1a190806d5c4a38251301000000000000000b20354a5f74899fb4ae99846e59442f1a060000000b1f33465a6e8396aabead9a8679797c93a8bdb09b86706f706c5a45311c0600000000000b1f33465a6e8396aabead9a8679797c93a8bdb09b86706f706c5a45311c0600000000000e23384c61768ba0b5b7a28d78634e39240f0000000000001a2f445a6f869bb0c1ac9782767377808c9aa9a08f7d6b594734210e00000000000002182d42576b8296aabba6917c6b8296abc0b8a48f7a66523e2a1501000000000000000000000000000000000008141c21211e1915110d090500000000000000000000000000000000000b1e3142515f6a72787b7b7977716a65768899abbcad9b8a786655677c8fa1b3b5b4b3b1b0b3b3babfb3af9f8b77634e3a2612001c31465b70869aafc3b8a99f999a9ea6b1acb0bcc0b0a08f806f5f4d39251100081d32465b70869aafa994806a71879cb1c6bfa994806a55402b160100000000000000001f344a5f73899fb4b9a695867c7d848e9ba9a39382705f4d3b281603000000000000000004182c4054687c8fa3b5c8baa99888786a5d503f2c180300000000001f344a5f748ba0b5ae99846e5a545e6c7c8d9eac9a8875624f3c291602000000000000000013273c51667b90a5b39e8974748b9fb4c9c7b39e89735e4a35200b00000000000000000f21313d46505c69778796a6b7bfae9c8b79675543301d0b00000000000000081d32475c71879bb0b19c87725d48331e0900000003172b3f53667a8fa2b6b5a29290909099abbfb39e89735e5c5a4e3d2a1602000000000003172b3f53667a8fa2b6b5a29290909099abbfb39e89735e5c5a4e3d2a160200000000000a1e33485d71879bb0bba6917b67523d28130000000000001a2f445a6f869bb0b8a89f8e7d6c636e7b8b9bab9b897664513e2b180400000000000014293e52677c91a6bbaa95806f8499aec3b19d8974604c37230f0000000000000000000000000000000000071725303636322e2a26221e1a130900000000000000000000000000000014283b4e60707d878d9091908c867d736a7b8d9fb0b9a7968472606073889baec2b3a49d9d9d9ea9babaa99e927d6955412d19001f34495e73899eb3bcaa9a8c84868a94a2b5c4c2b2a2928271615141301d0a0002192d42576c8296abad98846e73899eb3c8c2ad98836e59442f1a0500000000000000001f344a5f748ba0b5b29d8a776969707c8b9baba08f7c6a584633200d00000000000000000a1f33475b708498acbfc0ae9c8b79695a4c403222100000000000001f34495e73899eb3ae99846e58434e5e6f8293a5a592806c5945321e0a00000000000000000e23384d62778ca1b5a28d77778da2b7cccbb6a18c77624d38240f00000000000000000313202a333e4b5968788999aabcbaa9978572604d3a271401000000000000021a2f44586d8398adb4a08b75604b36210d000000001023374b5f72879baebfb0a6a5a5a5aab5c2b6a18c76614c453d301f0e000000000000001023374b5f72879baebfb0a6a5a5a5aab5c2b6a18c76614c453d301f0e000000000000051a2f44586d8397acbea994806a55402c170200000000001a2f445a6f8499afb09b8a928b79695d6c7c8e9fa694826d5a4734200d0000000000001025394e63788da2b7ae998472879cb1bfab97836e5a45311d090000000000000000000000000000000000122535434b4b47433f3b37332e261a0c00000000000000000000000000001a2e43576a7d8f9aa2a5a7a5a09990867a6f8292a4b5b3a2907d6c5a6b8092a6b9aa968888888b9db2b29d8b8885705c47311c001f344a5f748ba0b5b4a08d7b6f7076879cb1c7b7a594847363534333231200000014293e53687c92a7b19c8872768ba0b5cbc5b19c87715c47331e0900000000000000001f344a5f748ba0b5ae99846e5a545e6c7c8d9eac9a8875624f3c291602000000000000001024394d62768b9fb3c7b6a3917d6d5c4b3c2e2314040000000000001d32475c71879cb1b09b86705b4640516376899caf9c8875614d39261100000000000000000a1f34495d72889cb1a5907b798fa4b9cecfbaa5907b66513c2712000000000000000000020e16212d3b4a5a6a7b8d9eb0c2b4a28f7c6a5744301d0a00000000000000162b40556a8094a9b8a38e78644f3a251000000000081c2f43576b8093a7babdaa9b97989aa4b5b9a48f79644f3a362c1f0f00000000000000081c2f43576b8093a7babdaa9b97989aa4b5b9a48f79644f3a362c1f0f00000000000000162b3f54697d93a8bdad98836e59442f1a050000000000182d42576c8397acad988385958776655e708295a89e8a7763503c28140000000000000c20354a5f74899eb3b29d89748a9fb4b9a5917c68533f2b160200000000000000000000000000000000001b2f425360605c5854504c4742382a1a08000000000000000000000000001e33485d71879bacb6bbb5acabada3988c7d748698a9baad9c8a786763768a9eb1ab978372728499aeb29d8873726c5a45311c001f344a5f748ba0b5af9a85705d6d8092a4b6c8b39d88766655453525150500000010253a4f64788ea3b5a08b76788ea3b8cdc9b49f8b75604b36210d00000000000000001f34495e73899eb3ae99846e58434e5e6f8293a5a592806c5945321e0a0000000000000014293e52677c91a5bac0ad998673614f3e2d1e1105000000000000001a2f44596e8398adb29d88735e4a3546596c8094a8a4917c6955402c180400000000000000061b30455a6f8499aea994807c92a7bcccc8bea994806a55402b16010000000000000000000004101d2c3c4d5d6f8293a5b8bfac998773604d3a26120000000000000013283d52677b91a6bba7927c68533e2914000000000014283b4f63778b9fb2b8a38e82838699aebca7927c67524f493d2d1b080000000000000014283b4f63778b9fb2b8a38e82838699aebca7927c67524f493d2d1b0800000000000011263b5065798fa3b8b19c87725d48331e090000000000162b40556a8094a9ad988376889484726264778b9ea693806b57432f1b070000000000071c31465b70869aafb7a28d7c8da2b7b49f8b76614d3924100000000000000000000000000000000000001f34495e7175716d6965605c5648372411000000000000000000000000001f344a5f748a9fa8a9aba498959ba6a99c8d7c798c9daeb9a7968572616d8295a9b19e8a766a8094a9b6a28d78635a4e3d2a16001f344a5f74899fb4ad98836e65788a9dacb8bcb5a28f7c6956422f1b08000000000c21364b60748a9fb4a38e787b90a5bbcdcbb8a38e79644f3a251100000000000000001d32475c71879cb1b09b86705b4640516376899caf9c8875614d39261100000000000000182d42576c8296aabfb8a4917d69564432200f000000000000000000162b4055697d93a8b6a28d78634f3b3d5064788da1ac9884705b47331e0a0000000000000000172c41566b8095aaad98838095aabfb8b3b6ad98836e59442f1a060000000000000000000000000e1e2f40516375889baec1b6a3907c6955422e1b070000000000000f24394e63788ea3b8aa95806b56412c1702000000000c2034485b6f8397abbaa6927d6c8296abbfaa95806a66645b4a37230f000000000000000c2034485b6f8397abbaa6927d6c8296abbfaa95806a66645b4a37230f0000000000000d22374c60758b9fb4b49f8b75604b37220d000000000012273c51667a90a4af9a8670798a91806f5f6e8295a99b87725e4a36220d000000000001182d42576c8297abbdaa9a8b92a5baae9a86705c47331e0a0000000000000000000000000000000000001f34495d728786827d7975716654402b16010000000000000000000000001f34495e7388939394959786808996a6aa9a88768091a2b4b3a2907d6d65798da0b4a6927d6a7a8fa4b8a7927c68533f301f0e001e33485d72889cb2af9a856f6473828e9ba8a7aaac9986725e4b37230f00000000081d32475c71869bb0a7927c7d93a8bdb9b5baa7927c68533e291400000000000000001a2f44596e8398adb29d88735e4a3546596c8094a8a4917c6955402c18040000000000001b30455a6f8599aec3b19d8975614d3a27140300000000000000000012273b5065798ea2b7a7937d6a564235495d71869baf9f8b76624d38240f000000000000000014283d52677c91a6b19c878398adb5a59da3b19c87725d48331e090000000000000000000000000011223446586b7d92a5b8bfac9985715d4a36220e0000000000000c21364b60758a9fb4ae99846f5a45301b060000000005182c4053677b8fa3b7ac98846f7c92a7bcad98837c7b7966523d28130000000000000005182c4053677b8fa3b7ac98846f7c92a7bcad98837c7b7966523d2813000000000000091e33475c71879bb0b8a38f79644f3a251100000000000e23384c61768b9fb39e89746c7c8d8e7c6c65798da1a28e7965503c2713000000000000152a3f53687d93a7bcb8a99fa2b0bea994806b56422d19040000000000000000000000000000000000001b2f44596d839797938f8b836d58432e19040000000000000000000000001c3045596d7b7c7d7d80827d6b77899bafa69380738596a8b9ae9c8a7967708598abae9a8672758a9eb3ac97836d58442f1a06001b30455a6f8499aeb19c88725d626f7c8a979298a9a28e7a66523e2a160200000003192e43586d8397acaa95808095abb3a5a0a7ab96826c57422d190400000000000000162b4055697d93a8b6a28d78634f3b3d5064788da1ac9884705b47331e0a0000000000001d32475c72889cb1c1ac97836e5a46321e0a000000000000000000000d22364b5f73889cb1ad9986715d4a3743576c8296aba5907b67523e2914000000000000000010253a4e63788da2b5a08b879bb0ad988895a9a08b76614c37230e000000000000000000000000000516293b4e6175899cb0c4b5a18d7965513d2915010000000000091e33485d72879cb1b29c88725d48331e0900000000001024384c5f73889bafb29e8a75798fa3b8b2a0949391806a55402c1601000000000000001024384c5f73889bafb29e8a75798fa3b8b2a0949391806a55402c16010000000000041a2e43586d8397acbca7927c68533e29140000000000091e33475c70859aaea28e79656f80908a796872879ba894806a56412d1803000000000011263b5065798fa4b9c7bbb4b6bfb9a48f7a65513c281300000000000000000000000000000000000000162b3f54697d93a7a8a39b86705c47311c08000000000000000000000000162a3e5160666768696a6b6c606b8095abaf9a8670788a9cadbaa8978573687c8fa3b6a28f7a708599aeb09c87725d48341f0a00182c41566b8095aab5a08b7662525f6c7987808ea2aa96826d5945311d0800000000162b3f54697d93a8ae99848398adaa968b99ad9a86705b46311c080000000000000012273b5065798ea2b7a7937d6a564235495d71869baf9f8b76624d38240f0000000000001e33485e73899fb4bda8937d69543f2b160200000000000000000000081c3045596d8296aab5a18d796653403e53687c92a7aa96826c57422d1803000000000000000c21364b5f748a9fb3a59391a1b5a8948090a5a48f7965503b261200000000000000000000000000000c1f3245596d8295a9bdbca995826c5844301b070000000000041a2f44596e8499aeb5a08b76614c37220d0000000000081c3044586b8094a7b9a4907b768ba0b4beb0a9a798836e58432e190400000000000000081c3044586b8094a7b9a4907b768ba0b4beb0a9a798836e58432e1904000000000009152a3f54697d93a8bdab96826c57422d18030000000004192d41566a7d93a7a995806c6171829287766c8296ab9985705b46311c0700000000000d22374c61768ba0b5cacec9cbc8b49f8a75614c37230f0000000000000000000000000000000000000011263b5064798ea3b8b39e89745f4a35200b0000000000000000000000000e21334254656b696764636467708296abb39e89736d7d90a1b3b4a291806d73889baeab9783708094a9b5a08c77624d38240f0013283d52667b90a4b9a5917c68534e5b687673889db19d8974604b37230e0000000012273c51657a8fa4b29d88869bb0a5908094a99e89745f4a36210c000000000000000d22364b5f73889cb1ad9986715d4a3743576c8296aba5907b67523e29140000000000001f344a5f748ba0b5bba5907b66503b2611000000000000000000000001162a3e52667a8fa2b6a99683705d4c3b50657990a5af9a866f5a45311c0600000000000000081d32475c70869bb0b1a6a5afb9a48f7a8ca0a8937d6954402b16010000000000000000000000000002162a3d5165798ea2b6c4b09c88735e4a36210c000000000000172c41566b8095a6a9a38f7964503b261100000000000115283c5064778ca0b4ab968272879cb1bfad9f9b9b86705b46311c07000000000000000115283c5064778ca0b4ab968272879cb1bfad9f9b9b86705b46311c07000000000f1b252a3b5065798fa4b9af9a86705b46311c07000000000013273b4f63778ca0af9c8874606474859483727c92a79e89745f4a35200b0000000000091e33485d72889cb1c6d5ccc8c7b19c877362503e2c1b090000000000000000000000000000000000000d22364b60748a9fb3b7a28d77624d38230e000000000000000000000000041a2f445a6f827d7c7978787b838f9fb2af9b867160728495a7b9ae9c8b796b8092a6b39f8c787a8fa2a5a5907b67523e2914000f23384c61758a9fb3ab97836f5b474b58636e8397aca38f7a65513c2813000000000e23384c61768ca0b5a18c899eb3a18c7b90a5a28d78634e3a251000000000000000081c3045596d8296aab5a18d796653403e53687c92a7aa96826c57422d180300000000001f344a5f748ba0b5bba59079644f3a250f0000000000000000000000000f23374b5f72879aaeb29f8d7a69594a4e63788fa4b29d88725d48331e090000000000000003192e43586d8397acc1bbbac1b5a08b76889cac97836d59442f1a0500000000000000000000000000000e22364a5e73889cb1c6b6a28e78644f3b261100000000000014293e53687c8e919498927c68533e29140000000000000d2135485c708598acb19c88738398adbaa590868888735e49341f0a00000000000000000d2135485c708598acb19c88738398adbaa590868888735e49341f0a0000000c1d2d393f404c61768ba0b4b39e89735f4a35200b00000000000c2034485c708498aba4907d6a5767778890807990a5a18c77624d38230e0000000000051b30455a6f8499aec2c4b8b3b6b6a391806d5c4a382716040000000000000000000000000000000000081d32475b70869aafbaa5907a66513c27140d040000000000000000000000192e43586d839491908f8f9196a0aeaea191806b5766778a9badbaa8978573768a9db1a89582758b8d909194826c57422e1900091e32475b6f8498acb29f8b7763503d4754697d93a8a994806b56412c17020000000a1f34495d72889db2aa9c9ba7b29d88778ca1a6927c68533e29140000000000000001162a3e52667a8fa2b6a99683705d4c3b50657990a5af9a866f5a45311c0600000000001f344a5f74899fb4bba5907965503b2610000000000000000000000000081c2f43576a7d91a4b7aa998876675b52647990a5b4a08b745f4a35200b0000000000000000152a3f54697d93a8bdd0cfc6b19c88728498ad9b87715d48331e090000000000000000000000000000071b3044596d8397acc1bca7937d69543f2b1601000000000010253a4f6475787b808386826c57422c1700000000000005192d4155697c91a5b7a38f798094a9baa5907b72726f5d48331e09000000000000000005192d4155697c91a5b7a38f798094a9baa5907b72726f5d48331e09000000172a3b4a5455525d72879cb1b6a28d77634e39240f000000000005192d4154687c8fa2ad9a887563596a7a8b8d7c90a5a48f79644f3a250f000000000000172c41566b8095aabfb6a69ea2afaf9d8b79675644332210000000000000000000000000000000000003192d42576c8296aabda8937d69543f2f2920170c00000000000000000000162b40556a8095a7a5a4a4a6aaaaa49b918373624f5a6c7d8fa1b3b4a291806d8295a8b19e8a777577797b7d80705b46301b0003182c4054687c91a5b8a793806c5a483c51667b90a5ae99846f5a45301b06000000061b30455a6f8499aebab0afb7af9a8573889dab96826c57422d1904000000000000000f23374b5f72879aaeb29f8d7a69594a4e63788fa4b29d88725d48331e0900000000001e33485e73889db3bca7917b67523c27120000000000000000000000000014273b4e6175889badb6a59586786d676b7d93a7b7a18c76604b36210b000000000000000012273c51667a90a5bacfd7c2ad98836e8094a9a08b76614c37220d000000000000000000000000000000162b3f54697d93a8bdc1ac97836d58432e190400000000000c213447576063676a6d70746955412c17000000000000001226394d6175899db1a995807b90a5baa8937d685d5c51402d19050000000000000000001226394d6175899db1a995807b90a5baa8937d685d5c51402d19050000001d324659686a67636e8398adbba6917c67523d28140000000000001125394c5f738699aca492806f5e5c6c7d8e8d95a9a6917b66503b261100000000000014283d53687c92a7bcae9a8991a3b5a997857362513f2e1d0b000000000000000000000000000000000014293e52677c91a6bbac97836d5849433c33291e1104000000000000000013283d53687c92a7b5b9b7a5999590887d726455444e60718395a7b8ae9d8b79788ca0a1a194826d636467686b6656422e1900001125394d6175899db0af9c8a776654444e63788fa4b19c88725d48331e0800000000172c41566b8095aabfc5c4c0ab96826f8499ae9a86705b46321d0800000000000000081c2f43576a7d91a4b7aa998876675b52647990a5b4a08b745f4a35200b00000000001c31475c70879bb0bea9947d6954402b16010000000000000000000000000b1e3245576a7d90a2b4b3a4968a827c7c8a9baeb7a18c76604b36210b00000000000000000e23384d62778ca1b6cbd3bea994806a7b90a5a48f7965503b261100000000000000000000000000000011263b5065798fa4b9c5b09b86705b46311c07000000000005182939454b4e5255585c5f5a4c3a2612000000000000000a1e32465a6d8296aaaf9b87778ca1b6ab96826b57473f322211000000000000000000000a1e32465a6d8296aaaf9b87778ca1b6ab96826b57473f322211000000001f344a5f74807c78758094a9beaa95806b56412d18030000000000091d304356697c8fa1b09e8d7c6d5f5f6f8091a6b3a7917b66503b261100000000000010253a4f64798fa3b8ae99848697a9b4a391806e5d4b3a291706000000000000000000000000000000001025394e63778da2b6b09b8671615e5850463b2f2214040000000000000010263b5065798d98a2adb19c88807b746c6155463742546677899bacbaa9978573848b8c8c8d8a776451525356534838261300000a1e3246596d8294a7b9a795837262554f64798fa4b49f8a745f4a341f0a0000000014293e53687c92a7bcd1d2bda8937d6b8095aa9e89745f4b36210c000000000000000014273b4e6175889badb6a59586786d676b7d93a7b7a18c76604b36210b00000000001a2f44596e8498adc1ac97836d59442f1b070000000000000000000000000215283b4e60728596a7b8b4a89d95919299a8b8b7a18c76604b36210b00000000000000000b20354a5f74899eb3c8cfbaa5907b66778ca1a8937d69543f2b160100000000000000000000000000000e23384d62778da2b7c8b39e89735e49341f090000000000000b1b283136393d4044474a463c2e1d0a0000000000000003172a3e52667a8ea2b5a18d79889db2ae99846f5a443f3628180700000000000000000003172a3e52667a8ea2b5a18d79889db2ae99846f5a443f362818070000001d32475c7187918e8b8895a9beae99856f5b46311c070000000000001427394c5f718395a7ab9b8c7c706b738395a8bca7917b66503b26110000000000000d22374c61768ba0b5b29c88798c9eb0af9e8c7a695846352413010000000000000000000000000000000b20354a5e73889db2b49f8b7776726c63594d40322314040000000000000e23384c60707a85909ba6a192887d73695f544a3e36485a6b7d8fa1b2b4a391807476767677797b69543f3e403f372a1a09000003162a3e5164778a9eb0b2a19182736760687c91a6b6a18c76604b36210b0000000010253a4f64798fa3b8cdceb9a48f79667b90a5a28e78644f3a251000000000000000000b1e3245576a7d90a2b4b3a4968a827c7c8a9baeb7a18c76604b36210b0000000000172c41566b8095aabeb19c88725e4a36220e000000000000000000000000000b1e30435567788a9bacbcbab1aaa7a7acb7c6b49f8a745f4a35200b0000000000000000071c31465b70869bb0c5cbb6a18c776273889dac97836d58442f1a0500000000000000000000000000000b21364b60768ba0b5cab5a08b745f4a35200b000000000000000a151d2124282b2f3234322a1e100000000000000000000f23374b5f72879bafa995828499aeb19c87725c575346362410000000000000000000000f23374b5f72879bafa995828499aeb19c87725c5753463624100000001a2f44596e8499a3a09da3b2c4b39e89745f4a36210c0000000000000a1d2f415466778a9bacaa9b8e85828692a1b2bba5907a66503b26110000000000000a1f34495e73889db2b5a08c768092a4b6aa988775645341301f0e000000000000000000000000000000071c30455a6f8499aeb9a5938d8c8780766a5e5041322211000000000000091d3043525e68727d89939ea59b90867b71675c4d3a3c4e5f718395a6b8ae9d8b796860616264665e4d3a292b2a24190c000000000e2135485b6d8293a5b7af9f91857a75768598acb7a18c76604b36210b000000000d22374c60768ba0b5cacbb6a18c7662778ca1a7927c68533e2a1500000000000000000215283b4e60728596a7b8b4a89d95919299a8b8b7a18c76604b36210b000000000013283d52667b90a5bab6a28d7965513d29160200000000000000000000000001142537495b6c7d8e9eaebcc4bfbcbcc0c9c5b19c87725d48331e09000000000000000001192e43586d8398adc2c7b29d88735e6f8498ad9b87715d48331e0900000000000000000000000000000a1f344a5f748ba0b5cbb7a18c76604b36210b000000000000000002080c0f1316191d1f1d170d00000000000000000000081b2f43576b8093a7b09c898095aab49f8a746a6c6453402b1703000000000000000000081b2f43576b8093a7b09c898095aab49f8a746a6c6453402b17030000172c41566b8095abb4b3b6c1ccb7a28d78634f3a251100000000000000122537485a6b7c8e9eaeaca099979aa3b0bfb7a28d78634e392615050000000000061c31465b70869aafb9a48f79758799abb6a59382705f4e3d2b1a09000000000000000000000000000000172c41566b8095aabeb1a5a3a19b93887c6e5f50402f1e0c000000000001132535465358606b76828c97a2a3998f84796a55403042536577899badbaa997867362504d4f504c40301e16151007000000000005182b3e516376889aacbcafa2978f8b8b94a3b4b7a18c76604b36210b00000000091e33485d72889cb2c6c7b29d88735e73889dab96826c57422e190400000000000000000b1e30435567788a9bacbcbab1aaa7a7acb7c6b49f8a745f4a35200b00000000000f24384d62768ba0b4bca895806c5945321e0b00000000000000000000000000081a2c3d4e5f6f808f9eacb9c5cfd1d5d0beaa96826d59442f1a05000000000000000000162b40556a8095aabfc3ae99856f5a6a8094a9a08b76614c38230e00000000000000000000000000000a1f344a5f748ba0b5cbb7a18c76604b36210b0000000000000000000000000000000000000000000000000000000000000014283c5064778ca0b4a4908393a8b7a28d7d80826f5a46321e090000000000000000000014283c5064778ca0b4a4908393a8b7a28d7d80826f5a46321e09000014293e53687c93a7bcc4c7cbcebba7927c68533f2a150000000000000007192b3d4e5f6f80909faeb4aeacaeb5c0c9b5a08b76665544332212010000000000192e43586d8397acbda8937d697b8d9fb1b1a08f7d6c5a4938271605000000000000000000000000000013283d52667b90a5babbaa9f9fa8a59a8d7d6e5e4d3c2a1705000000000014293e52646e6e6c6c6e7a85909daba197836d58432e3648596b7d8fa1b3b5a391806e5c4a3a3b382f2212010000000000000000000e213446586a7c8e9fb0c0b4aaa3a0a0a6b2c1b5a08b75604b36210b00000000051b30455a6f8499aec3c4af9a86705b6f8498ad9a86705c47321d09000000000000000001142537495b6c7d8e9eaebcc4bfbcbcc0c9c5b19c87725d48331e0900000000000a1f33485d71869aaec2b09c8975614e3b281603000000000000000000000000000e1f3041516170808f9ca8b3bcc1c3bfb2a18e7a67533e2a160100000000000000000013283d52677c92a7b8b8ab96826c57657a8fa4a48f7a65513c271200000000000000000000000000000c21364b60768ca1b6cbb7a18c76604b36210b000000000000000000000000000000000000000000000000000000000000000d2134485c708599acad9d989fafbca89894958a75614d392410000000000000000000000d2134485c708599acad9d989fafbca89894958a75614d392410000011263b50657990a5abafb3b6b9bcab97826d58432e1a05000000000000000d1f304151617182909eaab6c0c2c9c7baaba2948472625140301f0d0000000000162b40556a8095aab8ac97836d708294a6b8ac9b8a7867564534221101000000000000000000000000000f24394d62778ca1b6b39f8c8b96a4aa9c8d7c6a594734210e0000000000162b40566b808483838383828296abaf9a86705b46302a3c4e60718395a7b9af9d8c7967564432231c1104000000000000000000000517293b4d5e708292a2b2c1beb8b5b5bac3c7b29d88735e49341f090000000000182d41576b8296abc0c1ac97826c576a8094a99f8a75604b37220d000000000000000000081a2c3d4e5f6f808f9eacb9c5cfd1d5d0beaa96826d59442f1a05000000000005192e42566a8093a7bbb8a5917d6a584533210f0000000000000000000000000001122333435261707d8a96a0a8acaeaba29483715e4b38240f0000000000000000000010253b5064798fa3a3a3a4927c685361768ba0a994806a55402c1702000000000000000000000000000f24394e63788da3b8cab5a08b745f4b35200b0000000000000000000000000000000000000000000000000000000000000005192d4155697d91a5a8a8a9a9a9abacaca9a4907c67533f2b160200000000000000000005192d4155697d91a5a8a8a9a9a9abacaca9a4907c67533f2b1602000e23384d62778d92979a9ea1a4a7ab9b87715d48331f0a000000000000000112233343536271808d99a3acb2b5b3aa9c8d9291806f5e4e3c2915000000000013283e53687c93a4a3a19b87716476899ba5a8a79685736251402f1e0c000000000000000000000000000b2034495e73889db2b49f8a788695a5aa9a897664513e2b170400000000142a3f54687d949898989897979fb1b29d88725d48331e30425466778a9badbba997857361503e2c1b090000000000000000000000000c1e2f415263738494a3b1bfcbcbcbced4c1ac98846f5a45301b06000000000014293f53687d93a8b5b7a8947d6954667a8fa4a38f7965503b2612000000000000000000000e1f3041516170808f9ca8b3bcc1c3bfb2a18e7a67533e2a160100000000000013273b5064788ca0b3c1ae9b887562503e2c1b0a00000000000000000000000000051525344352606d78838d939799969084756554412e1b08000000000000000000000e23384d62778d8d8d8f8f8e78644f5d7187939598846f5a45301b070000000000000000000000000014283d52667b90a5bac7b39d88735e48331e09000000000000000000000000000000000000000000000000000000000000000012263a4e62768a919393949494959798999b97836e5a46311d080000000000000000000012263a4e62768a919393949494959798999b97836e5a46311d08000b20354a5f71797d8286898c8f9396998b76614d38230f0000000000000000051625354453616f7b8790989da09e988d7d8591847c6b58432e19000000000011263b50667a908f8d8c8b8b75606b7d8f9093949791806f5e4d3b281400000000000000000000000000071b30455a6f8499aeb8a38e78768899aca694826d5a47331f0b0000000012273c52677c91a7adadadacacb1b7b5a08b75604b36212536485a6c7d90a2b4b4a391806d5c4a38271401000000000000000000000000122334455565758593a1adb9c2c8cac5b6a4917d6955402c1702000000000011263b50667b909fa0a2a3907b665161768ba0a8937d6954402b160200000000000000000001122333435261707d8a96a0a8acaeaba29483715e4b38240f000000000000000c2135495c708498abbeb7a592806d5c4a392817070000000000000000000000000007162534424f5b6670787d8384827c72665748372b1e10010000000000000000000c21364b5f7377777778787974604b586d797c808386735e49341f0a000000000000000000000000071a2e43576b8095aabec4af9a86705b46311c0700000000000000000000000000000000000000000000000000000000000000000b1e33465b6f797b7c7d7d7d808082838486888974604b36210c000000000000000000000b1e33465b6f797b7c7d7d7d808082838486888974604b36210c00071c2f42536064686c707377797d8284887b66523d28130000000000000000000817263543515d69737c84888b89847a6e778072756c58442f1900000000000f24394e63777a787876757471606071797b7c808284877c6b57422d180000000000000000000000000000172c41566b8095aabca7927c6a7c90a3b19e8a76634e3a26110000000010263b506579909d9d9f9fa0a0a1a2a3a38d78634e3924192b3d4e60728597a9a7a39d8b79675644301c07000000000000000000000000051627384757667583909ca6aeb3b5b1a7988774614e3a26110000000000000f24394e637888898b8d8e8d77634d5d7287939598836e5944301b0600000000000000000000051525344352606d78838d939799969084756554412e1b080000000000000006192d4154687b8fa2b5c1af9d8b7967564535251505000000000000000000000000081a2b3a4855626b6164696c6e6c6864635d54493c2e1f10000000000000000000081c30445561626267757d6f63564e5e6d7779776f6f6d5c48331e0a0000000000000000000000001023364a5d71869aafc3bfab96826c57422d1904000000000000000000000000000000000000000000000000000000000000000003172b3f51606466676868686a6a6b6c6f70727371604b36210c0000000000000000000003172b3f51606466676868686a6a6b6c6f70727371604b36210c0000132535434b4f53575b5e6265686b6f727466523d28130000000000000000000008172533404c5760696f7374736f675d6a6d61605c4e3d291500000000000b203447596565646361605f5e5353606466686a6c6f71746a57422d18000000000000000000000000000013283d52677b91a6baab96826c73889cb0a6927d6954402b17000000000e23384e637887888889898b8b8c8d8d8f8f7b66503b26111f31435567798c97928f8b8985735f4a341f0a00000000000000000000000000091a2a39485765727d89939a9ea09d95897a695744311e0b0000000000000c21364a5f6f737476777879735f4a586d7a7c808386725d48331e09000000000000000000000007162534424f5b6670787d8384827c726657483c31251708000000000000001125384c5f728598abbdbaa89786746353433323140500000000000000000000001024374958667380706155585c6b76797770665a4c3d2e1d0d000000000000000001142737454d566978868e7d6f605c6c7c8b8f8c827668594a39281605000000000000000000010f1d2e405265798da1b5c9baa5917c67533e291400000000000000000000000000000000000000000000000000000000000000000000102233424c505152535353545456575a5b5c5e5e5343301c080000000000000000000000102233424c505152535353545456575a5b5c5e5e5343301c08000007172530363a3f4246494c5053575a5d5f584836230e00000000000000000000000715222e3a444d555a5e5f5e5b544c5759514b483f30200d000000000005182a3b4850504f4e4c4b4a4942434c4f505354575a5c5f5a4d3b281400000000000000000000000000000f24394e63778da2b6af9a86706d8297acac98836e59442f1a000000000c21364a5e6e7072727374747676777778787766513c27121426384a5c6e80837d797673706b5b47331e0900000000000000000000000000000c1b2a394754606c768086898b8882786b5c4c3a281502000000000000071b2f41515b5e5f6673807062554c5c6b76797770706c5a46321d0d000000000000000000000000112332414f5c696864696c6e6c68636460594e4335261708000000000000091c2f4255687b8ea0b2c4b4a39282706151423223150700000000000000000000152a3f536776848f807062596a7a898f8c84776a5b4c3b2a190700000000000000000919273243586c80939d8e7d726e798a9ba49f9487776857453422100000000000000000000e1f2d3b4c5d6f8295a9bcc7b39f8b76624d3924100000000000000000000000000000000000000000000000000000000000000000000005152430383b3c3c3e3e3e3f3f404244464749494235251401000000000000000000000005152430383b3c3c3e3e3e3f3f40424446474949423525140100000008141c21262a2d3134383b3e4145484a453a2b190700000000000000000000000004111d27313a4045484a4946403b43443e36342d2112020000000000000d1d2b353b3b3a38373634342f31373a3b3d3f4244474a473d2f1e0b00000000000000000000000000000b20354a5f73899eb3b39e8973687d94a8b19c87715c47321c00000000071b2e41505a5b5c5d5e5f5f606062626363635a4a37230e081a2c3e5163736e6864605e5c584e3e2b18040000000000000000000000000000000c1b2936434f59636a707374736e665a4d3e2e1d0b00000000000000001224334046536776848f807062596a7a898f8c84776a5b4c3b2a190700000000000000000000061a2e40515f6d7a78695a585863717878756c605344352615040000000000001326394c5e708395a7b8c1b09f8f806f60514233251608000000000000000000162b40556a7d919e8f80736d778899a4a09689796a59483624120000000000000000000915293d506376899c9d9086838a98a8aeada596867563513f2d1a070000000000000006192c3d4b596a7a8d9fb2c5bfab9884705b47331f0a000000000000000000000000000000000000000000000000000000000000000000000006131d232527272929292a2a2b2d2f303234342f2517080000000000000000000000000006131d232527272929292a2a2b2d2f303234342f251708000000000001080d1115191c1f2326292d30333431281c0d0000000000000000000000000000000a141e262c31333434312c282e2f2a211f19100300000000000000000d19212626242322201f1f1b1d222426282a2d2f3234322b1f11000000000000000000000000000000071c31465b70859aafb6a28d77677c93a8b39d88725d48331e00000000001123323e45464748484a4a4b4b4c4d4e4e4e483c2c1a07000f213345555e5c544f4c4947443c30200f00000000000000000000000000000000000b1925313d464f565b5e5f5e5952493c2f20100000000000000000000615222c40556a7d919e8f80736d778899a4a09689796a5948362412000000000000000000000a2034495d6f7d8b8878695c6172828e8f897d71625344332110000000000000091c2f41536577899bacbdbdad9e8e7d6f60514234261605000000000000000012263a4e617487999e9186838896a6afada69888776553412f1d0a0000000000000000000d213447596c7d90a2a29a989ca7a79a989ea492826f5c4a372411000000000000000c2035495b69778898aabcc9b6a38f7c6854402c180400000000000000000000000000000000000000000000000000000000000000000000000001090e101212131313151516181a1b1d1f1f1b120700000000000000000000000000000001090e101212131313151516181a1b1d1f1f1b1207000000000000000000000000070a0e1114181b1e1f1c150b0000000000000000000000000000000000010a11171c1e1f1f1c1814191a160e0a050000000000000000000000060d10110f0e0d0b0a0a06090d0f111315181a1d1f1e180e0100000000000000000000000000000001182d42576c8296abbaa5907b6a8094a9b39d88725c47321d00000000000514212b3031323333343436363738383838342b1e0e0000041628374349483f3a3734322f291f120200000000000000000000000000000000000008141f2a333b4246494a48453f362b1f1102000000000000000000000512263a4e617487999e9186838896a6afada69888776553412f1d0a0000000000000000000b20354b5f73889b9788796e708090a0a39b8f827161513f2d1b09000000000000122436485a6b7d8f9fb0c0bbac9d8e7d6f61524434210e00000000000000000b1e3144576a7c8ea0a39a989ca6a99b989da69583715f4c39261300000000000000000004172a3d4f61738596a6afadb1ab9a89838c9a9e8c796653402d19050000000000000e23384e63788896a3b0bcbeac998673604c39251100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000014293e53687c92a7bca9947d75869aaeb09b87705b46311c000000000000040f171b1c1d1e1e1f1f2121222323232320180d000000000a19263034332c25221f1c1a150d010000000000000000000000000000000000000000020d1720272d31343433302b23190e010000000000000000000000000b1e3144576a7c8ea0a39a989ca6a99b989da69583715f4c392613000000000000000000081c3044576a7d90a2978b84848f9eaeadad9f90806e5c4b38261300000000000007192b3c4e5f708292a2b3c2bbac9d8e807062513d291400000000000000000215283a4c5e708394a4afadb0ad9c8b838a98a18f7c695643301c080000000000000000000d1f32445567778898a5b1ac9e8d7c6e7b8b9b9683705d48341f0a0000000000000c21364a5d6b7885929eabb3a18f7c695643301d09000000000000070e1313110f0c090704040e141716120f0b080603000000000000000000000000000000020b12181b1b1b191510090100000000000000000000000000000000000000050d1112100d0b080603020c131615110e0a070401000000000000000000070e1313100d0a0603000000000000000000000000000000000000000000000000000000000001080e12161719191715110c0600000000000000000000000000000000000000070c0f0f0f0c0701000000000000000000000000000000000000000000000010253a4f64788ea3b8ac97848794a4b6ac97836d58442f1a00000000000000000000000002080a0a0b0c0d0e0e0e0e0b0500000000000009141b1f1e19110d0a060000000000000000000000000000000000000000000000000000040c13191c1f1f1e1b160f0700000000000000000000000000000215283a4c5e708394a4afadb0ad9c8b838a98a18f7c695643301c0800000000000000000115283b4e60738597a99e9999a0ada19899a29e8c7a685643301d0a0000000000000d1f30415263748595a5b4c3bbac9e8f826b56402b160000000000000000000b1d2f415364758696a4afad9f8f7d6d7989999986725f4b37220d00000000000000000002142638495a6a7988949c9a8e806f5e6c7c8d938675604b36200b000000000000071b2e3f4e5a6773808d9aa69583715f4c3a27140100000000000d192328282624211f1c191621292c2b2724201d1b18130b00000000000000000000000009151e262c3030302e2a241d140b00000000000000000000000000000000000c182126272522201d1b181520282b2a26231f1c1916110a0000000000000d1923282825221f1c1815110a0e0f0f0f0e0e0e0f10100d05000000000000000000000000010c151c23272b2c2e2e2c2a26211a130a01000000000000000000000000000008121b21242524211c150c020000000000000000000000000000000000000000000d21364b60758b9fb4b3a2989aa4b2b4a3907c68533f2a16000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000b1d2f415364758696a4afad9f8f7d6d7989999986725f4b37220d0000000000000000000b1e31435667798b9cacaeaeb3a5948385919f9885725f4c39261200000000000001132435455666768796a5b4ac9e8f807062513d2914000000000000000000001224364758687786929b9b8f8270606a7a8b958877634e38230e00000000000000000000091a2b3c4c5b69768287867d6f61515e6f808275675846321d09000000000000001021303c4956636f7c89968977665442301d0a00000000000b1c2b363d3e3b393634312f2b333d42403c393532302d271d10010000000000000000000d1a27313b41454646433f3830271d120600000000000000000000000000000a1b2a353b3c3a373532302d2a323c403f3b3834312f2b261c0f000000000b1c2b363d3d3a3734312d2a251d2325252423232325252521180c0000000000000000000007131e2830373c40424343423f3a352e271d14090000000000000000000000000c19252e35393a393630281f13060000000000000000000000000000000000000000091e33485d72879ca6abafadafb4afa5978673604d3925100000000000000000000000000000000004070703000000000000000000000000080f12110d0a07040100000000000000000000000000000000000000000000000000000000040b0f0f0b0300000000000000000000000000000000000000001224364758687786929b9b8f8270606a7a8b958877634e38230e000000000000000000011426384a5c6d7d8f9daab2a6978776728290a08f7c6955412c170000000000000006172838485868778796a49d8e807061524434210e000000000000000000000618293a4a5967758087877d7162535c6d7d8476695a4834200b00000000000000000000000d1e2e3d4b59646d72706a5f5142516170716457493a2916030000000000000003121f2b3845515e6b77857b6a594836251300000000000015283a485253504e4b4946443f42505755514e4b4745413a2e1f0e00000000000000000c1c2b38444e555a5b5b58534c443a3024180b000000000000000000000000001528394750524f4c4a4745423e414f5653504c49464440392d1e0d00000015283a4852524f4c4946423f3930383a3a3a3838383a3a3b352a1c0c0000000000000000081725313b444b515557585857544f49423a30261b0e010000000000000000000b1b2a37414a4e4f4e4a443b3124150600000000000000000000000000000000000000041a2f44596e848c91969a9d9f9f9b938778685643301d09000000000000000000000000050a0e13181c1c170e03000000000000000002101b232726231f1c1916130e050000000000000000000000000000000000010100000000000a161f24241f160a000000000000000000000000000000000000000618293a4a5967758087877d7162535c6d7d8476695a4834200b00000000000000000000091b2d3e4f6070808d989d96897969627283938e806d58432e1900000000000000000a1a2a3a4a59687786948d7d6f6151433426160500000000000000000000000b1c2c3b4a57636c71716b6053444f5f6e7266594b3c2b1805000000000000000000000000101f2d3b4751595c5c574d413343525d5d5346392b1c0b000000000000000000010e1a2734404d5a67736d5d4d3c2b19070000000000001c31455866686663605e5b58534e606c6a66635f5c5a564c3d2b180400000000000007192a3a4956616a6f70706d6760574d4135281b0d0000000000000000000000001c314457646764615f5c5a57514d5f6b6865615e5b58554b3c2b180400001c314558666764615e5b57544c424c4f4f4f4e4e4e4f4f50483a29170300000000000006162635424e5860656a6c6e6d6c68645d564d43382c1f1203000000000000000517283948545e6364635f584e423324140200000000000000000000000000000000000000172c40546671777c8286888a89868075695a4a392714010000000000000000000910151a1e23282d31312b2013030000000000000010202e383c3b3834312e2b2822180b000000000000000000000000060d1216161614100b040a1a2833393933271909000000000000000000000000000000000000000b1c2c3b4a57636c71716b6053444f5f6e7266594b3c2b180500000000000000000000000f21324251616e7a848883786a5b546475857d7061513e2a160000000000000000000c1c2c3b4a596876847d6e60514234251608000000000000000000000000000e1d2c394550585c5c584e433541505c5e55483b2d1e0d00000000000000000000000000010f1d29353e444747423a3025344149494136281b0d0000000000000000000000000916232f3c49555e5c4f3f2f1e0d000000000000001f344a5f747d7a777673706e6352677c807b7774726f6a5b48331f0a000000000000122536485866737d848786827b736a5f5346392b1c0d00000000000000000000001f344a5f747c797674726f6c6252677c7d797673706e695a47331e0900001f344a5f747c787673706c685c51606464646363636464645846331e0a0000000000001223344453606b737a80838383827d78726960554a3d302112030000000000000e213446576671787978736b60514232200d0000000000000000000000000000000000000011243748565d62686c70737473716c63584b3c2c1b09000000000000000003111c24292e33383d4146463e312110000000000000081b2d3e4b51504c494643403c35291a0900000000000000000005101a21272b2b2b29251f18172838464e4e4537271606000000000000000000000000000000000000000e1d2c394550585c5c584e433541505c5e55483b2d1e0d0000000000000000000000000314243342505d686f726f665a4c475767746c5f524334220f000000000000000000000e1d2c3b4a5866736e5f5042332416070000000000000000000000000000000e1b28333d434747433b3225323f484943372a1d0f000000000000000000000000000000000c18222a2f32322e271e16232e34342e24180b000000000000000000000000000005121e2b384349483e31211100000000000000001d32465b6f84908d8b8886826c5864798f908d8a878476604c37210c0000000000081b2e415466768591999c9b978f877c706457493a2b1c0d000000000000000000001e32475b70848f8c898785826c5764798f8f8c88868376604b36210c00001e32475c70868f8b8886827864596e797978787878797976614c37220d0000000000091c2f415262707d888f9497989897928d867c72675b4e3f302110000000000000162a3e516475848d908d887d70604f3d2a1602000000000000000000000000000000000000081a2a3842484e53575b5e5f5f5c5750463a2d1e0e00000000000000000011212e383e43484c51565b5a4f3f2d1b0a000001090d0e23374a5c6664615e5b5855514738261300000000000000000916222d363c4040403e39332b233546566362554534241303000000000000000000000000000000000000000e1b28333d434747433b3225323f484943372a1d0f000000000000000000000000000006152432404b545a5c5a53493c3949575f5a4e413425160500000000000000000000000e1d2c3a48555e5c50413223150600000000000000000000000000000000000a1621292f32322e281f14222d33342f26190c000000000000000000000000000000000000050e161a1d1c19140b06111a1f1f1a120700000000000000000000000000000000010d1a263034332c2113030000000000000000182c4055697d92a3a09d9b87725d62778ca1a29f9c8d77624c37220d00000000000f23374b5e718394a3adb1b0aba3998f82756758493a2b1a0a000000000000000000182c4055697d92a19f9c9a86715d62778ca1a19d9b8d77624c37220d0000192e42576c8296a09d9a927c685c7187908f8f8f8f8f87725e4a35200b00000000001125394c5e70828f9ba3a9acadadaba7a1999085796b5d4e3f2e1d0c00000000001c31455a6d8293a1a5a29b8f7d6c5946311d08000000000000000000000000000000000000000c1a262e34393e4246484a4a47433c33291c0f000000000000000000091c2e3f4c53575c61666b706d5c4b3927160408141d2223263b50657a797673706d6a6455422e1a0500000000000008182734404950555656534e473f36415263747363524231211000000000000000000000000000000000000000000a1621292f32322e281f14222d33342f26190c000000000000000000000000000000000615222e394045474540372b2b39444a473d31231607000000000000000000000000000e1c2a384349483e3223140500000000000000000000000000000000000000040d151a1c1c1a140c0410191e1f1b130800000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000009141b1f1e190f0300000000000000000011263a4e63778ca0b4b3a18c77635f748a9fb4b4a38d78634e38230e0000000000152a3e52667a8ea1b2c1c7c1bfb6aca093857667584838281706000000000000000012263b4f63778ca1b4b1a08c77635f748a9fb4b3a38d78634e38230e0000152a3e53687c92a7b2ab96826c5f748a9fa4a4a4a495806c58432f1b070000000000182c4054687b8e9fadb7bebebab8b8bab5aca2978a7b6c5d4c3b291705000000001f344a5f73899db1bab7ad9c8975604b37220d000000000000000000000000000000000000000009131a1f25292d31333434322e2920170b000000000000000000000f24384c5d676c71767b80857a685645332110172631373837394e63788d8c89868380715c47321f1203000000000416263644525c656a6b6b68625b52484e5f70828270604f3e2e1d0c0000000000000000000000000000000000000000040d151a1c1c1a140c0410191e1f1b130800000000000000000000000000000000000004101c252c3132312c241a1b283134322b2013060000000000000000000000000000000c1a263034332c21130400000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001080c0c09050000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000b2034485d71869aaebba6927d695d72889db2b9a48f78634e38230e00000000001a2f43586d8296aabec3b7ada9a9aeb1a395867666564635231200000000000000000c2034495d71869aafbba6927c685d72889db2b9a48f78634e38230e000010253a4f63788da2b7af9a867062778da2b7b9b7a28e7965513d29140000000000001c31465a6f8498abbdbfb2aaa5a3a3a5a9b0b4a89a8b7a6a584634210e000000001f344a5f748ba0b5cacab8a38f78634e38230e00000000000000000000000000000000000000000000050b1014181c1e1f1f1d1a140d04000000000000000000000012273c52677b82868b909598867462513f2d1b2435434c4d4c4a4b60748a9f9e9b9789735e493c302110000000001022334454626f798082827c766f655a5a6b7c8e8f7d6d5c4c3b2a1a0900000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000911181c1d1c1711070a151c1f1e180e02000000000000000000000000000000000009141b1f1e190f030000000000000000000000000000000000000000000000000000070b0b0806030100000000000000000000000000000000000008141c21211e1915110d0905000000000000000000000000000000000000000000000810161a1d1d1d1a17110a0100000000000000000000000005192e42566b8094a8bdac97836e6370869bb0baa59079644f3a250f00000000001d32475c71879bb0c5b4a59a949499a2aca49585746352412f1d0b00000000000000061a2e43576b8094a9bdac97836e6270869bb0baa59079644f3a250f00000c21364a5f74899eb3b39e8974657a90a5bac5b09c88735f4b36220e0000000000001f34495e73899eb2bfafa196908d8f90959da7b5a999887663513e2a17030000001f34495d72879badb6b5ae9e8b76614d38230e000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000913253a4e61728495a0a4a9a392806e5c4b39273042536062615f5e5c71879cb1b0a08b7660574e3f2d1a06000006192c3f516272828c949796928a82776d6678899b9c8b7a69594838271604000000000000040b0f13151514120e0902000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000006121b20201e1b181613100e0b09060200000000000000000000071725303636322e2a26221e1a130900000000000000000000000000000000000005111b242a2f3232322f2b251d140a00000000000000000000000013283c5065798ea2b7b29d897878788499afbba5907965503b261000000000001f34495e73899fb4baa796887d80868f9caaa39282705e4c3a2815020000000000000014283c5165798ea2b7b19d887777778499afbba5907965503b26100000081c31465b70859aaeb7a28d77687d93a8bdbeaa96826d5844301c080000000000001f344a5f748ba0b5b5a291837b78787a828a97a6b7a593826d5a46321e090000001b2f43586b7d8f9ba1a09c90826f5b48331f0a00000000000000000000000000000008101414100c0804000000000000000000000000000000000000000000000c1a262e3243556677899aabbcaf9e8c7a685645333b4d5f717776747372708398adb7a28d776e6c5d4935210d00000d2135495c6e80919fa8acaba69e958a7d728596a7a998887666554433200c00000000050f181f24282a2a2927231d160e04000000000000000000000000020b1113110e0a06020000000000000000000000000000030e161a19141115161615110c0600000000000000000000000000000000000000000000000001080f13161819191715120d070100000000000000000000000000000616242f353533302d2b282523201e1b1711060000000000000000122535434b4b47433f3b37332e261a0c000000000000000000000000000000000716222e373f4447474744403931271c1003000000000000000000000d22364a5f73889cb0b7a3928f8f8f8f9eb1bca7917b66503b261100000000001f344a5f748ba0b5b29e8a776a6a727d8c9bac9f8e7c6a5745321f0c000000000000000e22364b5f73889cb1b7a3918d8d8d8e9db1bca7917b66503b2611000002182d42576b8296aabba6917c6b8296abc0b8a48f7a66523e2a15010000000000001f344a5f73899fb4ad998572666363666d78889baeb09d8a75614d38240f00000014283b4e60707d888c8c88807162513f2c180400000000000000000000000000000e1a24292925211d1915110d06000000000000000000000000000000000007192a3842464348596b7c8e9fb0bba998867462513f47596b7c8d8c8b8988878697acb9a48f84847864503c2814000014283c5064788c9eafbcc1c0bab2a79c8f8290a2b3b6a595847362503b27120000000916222b33393d3f3f3f3c38312a21170d0100000000000000000006141f262926231f1b17130e09010000000000000000000413202a2f2e28262a2b2b2a26211a12080000000000000000000000000000000000000000000b141c23282c2e2e2e2c2a26221c140b02000000000000000000000000122434424a4a484542403d3b383533302c241809000000000000001b2f425360605c5854504c4742382a1a08000000000000000000000000000007162534404a53595c5c5c59544d44392e211405000000000000000000071c3044586d8296aabfb0a6a4a4a4a4acbbbca7927c67523c271200000000001f344a5f748ba0b5ae99846f5a565f6d7d8e9fab998774614e3b281502000000000000081c3044596d8296abbfafa4a3a3a3a3abbabca7917c67523c271200000014293e52677c91a6bbaa95806f8499aec3b19d8974604c37230f000000000000001d32475c71879bb0ab95806a554e4e515a6a7d92a7b9a4907b66513d28130000000c1f314251606b737676726c61534536241100000000000000000000000000000c1d2c373e3e3a36322e2a26211a100200000000000000000000000000000010243748565b5854515e6f8292a4b5b5a392806e5c4b516476889aa1a09f9d9c9ba3b4bfac9e9994806b57432e1a0600192d42576b8094a8bbc7bbb2afafb3ada0979eaebfbeae9d8d7c68533e28130000091827343e474e52545453514c453d342a1e120500000000000000031524323b3e3b3834302c27231d140800000000000000051423313d44433b3b3f40403f3b352d251b1105000000000000000000000000000000000005121d2730373d40434343423f3b3630281e140900000000000000000000001a2e41525e5f5d5a575552504d4a484540362716040000000000001f34495e7175716d6965605c5648372411000000000000000000000000000214253443515d676d7172726e6860564b3f32231405000000000000000000152a3e52677b90a4b8b9a79a98999aa0afbda8937c67523c271200000000001f34495e73899fb3ae99846e58434f5f6f8293a6a4927d6b5844311d0a00000000000001162a3e53677b90a4b9baa89b999b9ba1b0bda8937c67523c27120000001025394e63788da2b7ae998472879cb1bfab97836e5a45311d09000000000000001a2f44586d8297abad98846f5d4c3e3d4f64788fa4b9a9947d69543f2a1500000002132433424e58646c6b6968676353412d19050000000000000000000000000016293b4953534f4b47423f3a362d2011000000000000000000000000000000152a3f5366706d69656163748698a9baaf9e8c7a6856566b8294a6b7b5b4b3b1b0b3b4bdbbb1af9a86725d4935210d001c31465b70869aafc3b8a99f999a9ea6b1acb0bcc0b0a08f806f5f4d392511000416273645515b62676a6a6865605950473c302315060000000000000d2032424e53504c4945403c3831261707000000000005142332414f59584d4f545656544f4941382e22160a0000000000000000000000000000000514232f3a444b52565858585754504b443b31271b0e000000000000000000001f34495d7074726f6c6a6764625f5d5a534534210d0000000000001f34495d728786827d7975716654402b16010000000000000000000000000d20324352616f7a83878887837c73685d50423223130300000000000000000f24384c60758a9eb2b49f8a83848692a7bca9947d68533e291300000000001d32475c71879cb1af9b86705b4641526476899dae9b8874604d392511000000000000001024384d61758a9eb3b49f8a84868793a7bca9947d68533e29130000000c20354a5f74899eb3b29d89748a9fb4b9a5917c68533f2b160200000000000000152a3f53677b8fa3b39f8d7a6a5c504850657990a5baab95806a543f2a15000000000615243142576c82807d7c7c705c4834200c000000000000000000000000001d314558676864605c57534f4a3e2f1e0b0000000000000000000000000000162b40556a7d837d7a76726d798b9daebba9988674625165788ca0b3c1afa19d9d9da0adbeb5a59d8d7864503c2813001f34495e73899eb3bcaa9a8c84868a94a2b5c4c2b2a2928271615141301d0a000e21334554636e767c80807d7a756d63594e4133241506000000000013283c50606865615d5955514c43352512000000000011223241505f6d6b5b63696b6b69645d544b4034281a0d0000000000000000000000000004142332404c5760666b6d6e6e6c69655f574e44382c1e0f0000000000000000001f344a5f7489888583807c797774726f63503c27120000000000001b2f44596d839797938f8b836d58432e1904000000000000000000000004172a3d4f6070808d969c9d9c9790867a6e6051413121100000000000000000091d32465b6f8498acb7a28e786e7a90a5baa9947d68543f2a1400000000001a2f44596e8398adb29d88735e4935475a6d8294a8a4907c6854402c1804000000000000091e32465b6f8498adb6a28d786f7a90a5bba9947d68533f2914000000071c31465b70869aafb7a28d7c8da2b7b49f8b76614d39241000000000000000001024384c60738698aaaa99897a6e645d5d6b8093a8bda8937d68533f291400000000000615293e53677c9194938c77634f3b2713000000000000000000000000001f344a5f747c7874706c68645c4d3a2612000000000000000000000000000012273c51657a8f938f8b8783748090a2b3b5a392806e5d5c708497abbaa5918888888fa2b7ad988888806b56412c17001f344a5f748ba0b5b4a08d7b6f7076879cb1c7b7a5948473635343332312000015293d506272828a919495938f8980766b5f51423324130200000000162b40566b7d7976726e6a666053422f1b0600000000192d40515f6e7d796d777d82827d7870675d5245382b1c0d0000000000000000000000000f213242515e6a737a80838483827d79736a6156493c2d1e0e00000000000000001d32475c72879c9a9794928f8d8a887d69543f2a15000000000000162b3f54697d93a7a8a39b86705c47311c0800000000000000000000000b1f33475a6c7d8f9eaab1b3b1aca3988c7d6f5f4f3e2d1b0a0000000000000003172c4054697d92a6bba7927d69788ea3b8ab95806a543f2a150000000000172b40556a8094a8b6a18d77634f3a3d5165788da1ac98846f5b47321e0a00000000000003182c4055697d92a7bba7927d68788fa3b8ab95806a543f2a1500000001182d42576c8297abbdaa9a8b92a5baae9a86705c47331e0a0000000000000000091d304356697a8c9daca7988c807772727a899baeb7a28e7965503b26110000000000001024394d62778ca0a7927d6a56422e19060000000000000000000000001e33485d71878e8a86827d796a55402b1601000000000000000000000000000e23384c61768ba0a4a09c8e78728496a7b8af9e8c7a6857677b8fa2b6a6927d7274899eb2ad988372726855402b16001f344a5f748ba0b5af9a85705d6d8092a4b6c8b39d88766655453525150500001b3044586d80919ea6a9aba8a49c93897d6f615141311f0d0000000014293e53687c8f8c8884807a715e49341f0a000000001e33485d6f7d8d867d8a939797938d857a6f6356483a2b1c0d00000000000000000000071a2d3e50606f7c878f9598999897938e877d73675a4b3c2c1b0a000000000000001b30455a6f8499aeaca9a7a4a29f97826c57422d1803000000000011263b5064798ea3b8b39e89745f4a35200b000000000000000000000012263b4e63768a9cadbcc5c2c0c0b5a99c8e7d6d5c4b392715020000000000000011263a4e63778ca0b5ac97836e778ca1b7ab96826b56402b16010000000012273c5065798fa3b7a7927d69554135495d72879bb09f8a75614d38240f0000000000000012263a4f63778ca1b5ac97836d778ca1b7ab96826b56402b1601000000152a3f53687d93a7bcb8a99fa2b0bea994806b56422d19040000000000000000011427394b5d6e7d8e9ca8a99d938c88888d99a7b8ad9b88735f4b36220d0000000000000a1f34485d71879bae9a86715d4935210c0000000000000000000000001a2e43586d82979f9a9792836d58432e190c030000000000000000000000000a1f33485d72879cb1b5a7927c68778a9bacbba9988674635f72869aaead9985716f8499aeb19c88735e574a382511001f344a5f74899fb4ad98836e65788a9dacb8bcb5a28f7c6956422f1b080000001e33485d72889cafbabcb1a9a7aba69b8e80705f4e3d2b18050000001025394e63788da09c98948c77624d38230e000000001f34495e718292938f9ca7acaba7a0988d82746658493a2b1b0b0000000000000000000f2336495c6e7d8d99a3aaadafadaca8a29b918578695a4a39271603000000000000172c41566b82969b9fa1a4acb7af9a86705b46311c0700000000000d22364b60748a9fb3b7a28d77624d38230e0000000000000000000000172c4055697d92a6b9c2b6adababafb7ac9c8b7a685644311f0c000000000000000b2034485d71869aafb19d8873748ba0b5ac97826c57422c1702000000000d22374b5f74899db1ad9985715d4a3643586c8296aba5907b66523d2914000000000000000c2034495d71869aafb19c8873748ba0b5ac97826c57422c170200000011263b5065798fa4b9c7bbb4b6bfb9a48f7a65513c2813000000000000000000000a1c2e3f5060707d8a959eaaa7a09c9ca1aab7b2a1907d6a5744301c08000000000000051a2e43586c8296aba08c7864503b2713000000000000000000000000152a3f54687d93a7afab9b86705c4732271f160c0100000000000000000000051a2f44596e8398acc0ab96826c6b7d8fa0b2b5a492806e5d6a7d92a5b5a18d796a8094a9b6a28d77634e3a2c1b09001e33485d72889cb2af9a856f6473828e9ba8a7aaac9986725e4b37230f0000001f344a5f748ba0a4a5a7a1959298a3ac9e8f7d6c5a4734210d0000000c20354a5f73899eb1ada5907b66513c2712000000001b2f425363738494a3acbac1c0bcb4aa9f928576675849392918070000000000000000162a3e5266798c9dabb6b8ada5a3a3a8b1aea396887868564533200d00000000000014293e53687c8387898c8f9caeb29d88735e49341f0a0000000000081d32475b70869aafbaa5907a66513c27140d040000000000000000001b30455a6f8498adc1b3a49995969ba5b0a9988673614e3b281502000000000000051a2e42576b8094a9b6a28d7873889db3ad98836d58432e180300000000081c3145596d8296aab4a08d796652403e53687c92a7aa95826b57422d1803000000000000061a2e43576b8095a9b6a28d7873899eb3ad98836c58432d18030000000d22374c61768ba0b5cacec9cbc8b49f8a75614c37230f00000000000000000000001022324251606d78828ca0b4b5aeabacb1b8a5948472604e3b2a1a0a00000000000000152a3e53687c91a6a793806a56432e1a06000000000000000000000011263b4f64798ea3b8b39e89745f4a413b33291e120600000000000000000000162b4054697d93a8bdaf9a86705f718394a6b7b09e8c7a696175899db0a996826e7a8fa3b8a6927c68533f2a1500001b30455a6f8499aeb19c88725d626f7c8a979298a9a28e7a66523e2a160200001f34495d72888f8f909193837c8594a4ac9b8a7764503c2814000000071c31465b70859aaebea994806a55402b16010000001225354555667a8fa3b8cac1bab5b4b6b0a395867667574736251301000000000000001a2f44596d8296a9bbb7a89a918d8e949faeb4a697867462503d2a160300000000001024394c5e696d7174778094a9b6a18c76614d38230e000000000003192d42576c8296aabda8937d69543f2f2920170c00000000000000001e33485d72889cb1bba89587808288929faea3917d6b5845311e0a0000000000000014283c5165798ea2b7a7927d70879cb1af99846e58432e19040000000001162a3e53677a8fa3b6a995826f5d4b3b50657990a5ae9a856f5a45301b060000000000000014283d5165798fa3b7a7927d71879cb1af99846e58432e1904000000091e33485d72889cb1c6d5ccc8c7b19c877362503e2c1b090000000000000000000004142433424f61718290a2b3a59a95979da7a08b7d72665748382716040000000000001025394e62778ca1ae9a86725d4935210d00000000000000000000000d21364b60758a9fb3b6a28d77635b564f463c3023160700000000000000000012273b5065798fa4b9b39e89745f65768899abbbaa988775636d8295a8b19e8a76758a9eb3ab97826d58432e1a0500182c41566b8095aab5a08b7662525f6c7987808ea2aa96826d5945311d0800001b3044586c7778797b7b7c7c6875879aaea793806b57422e1904000001182d42576b8296aabfad98836e59442f1a0500000007172c41566b8095a9bebcaea6a09fa1a7b0a4958575645342301f0d000000000000001e33485d72879cb1c0ac9a8a7d7778828fa0b1b4a392806c5946321e0a0000000000091d2f404d54585c5f667b91a6b9a48f7965503b261100000000000014293e52677c91a6bbac97836d5849433c33291e11040000000000001f34495e73899fb4b4a08c776a6c758290a0ae9b8874614e3a2612000000000000000e22364b5f73889cb1ac97836f869aafb09b866f5a442f1a0500000000000f24384b5f73879baeb29f8c7a6858494e63788fa4b29d88725d48331e09000000000000000e22374b5f74889db1ac97836f869aafb09b866f5a442f1a05000000051b30455a6f8499aec2c4b8b3b6b6a391806d5c4a3827160400000000000000000000081d3145596c8090a0aea6958780828a95a39a90847566564533210e0000000000000b1f34495d72879bb0a18d7865503c28140000000000000000000000081d32475c70869aafbba6917c73706a62594e413425160700000000000000000e23374c61768ba0b4b6a28d7763596a7c8e9fb1b6a492826f65788ca0b3a69380708599aeb09b87715d48331f0a0013283d52667b90a4b9a5917c68534e5b687673889db19d8974604b37230e000015293d4e5d626364666667685e6a8095abaf9a86705b46311c0700000014293e52677c91a6bbb19c87725d48331e0900000000192e43586e8498adc2b09e928b898c939eaaa3938371604e3c2a17050000000000001f344a5f748a9fb4b9a4907c6b6264718294a7baaf9c8975614d39251000000000000011222f3a3f43474e63778da2b7a8937d69543f2a150000000000001025394e63778da2b6b09b8671615e5850463b2f22140400000000001f344a5f748ba0b5b09b87715c5863718292a4a4917d6955422e1a06000000000000071c3044596d8296abb19c88738398adb09b87705b46301b060000000000081c3044576b7d92a5b8aa988776665a5164798fa4b49f8b745f4a35200b00000000000000081c3145596d8397abb19c88728398adb09b87705b46301b0600000000172c41566b8095aabfb6a69ea2afaf9d8b79675644332210000000000000000000000d22374b6074899caeb29d89776b6d778594a5a294857463503e2b17040000000000061a2f43586d8297aba894806b57432f1b070000000000000000000003192e42576c8296abbfab968988857d756b5f52433425150400000000000000091e33485d71879bb0baa5907b66515e6f8293a5b6b09e8d7a69708497abaf9b88748094a3a5a08b76624d38240f000f23384c61758a9fb3ab97836f5b474b58636e8397aca38f7a65513c281300000d20304357696f6d6b6867686b748598acb29d88725c47321d070000001025394e63778da2b6b5a08b76614c37220d000000001a2f445a6f869bb0c1ac9782767377808c9aa9a08f7d6b594734210e0000000000001f344a5f748a9fb4b7a18c76614d5364778a9eb2b8a4917c68533f2a1601000000000004121d262a2e354a5f74899eb3ac97826c58432e190400000000000b20354a5e73889db2b49f8b7776726c63594d4032231404000000001f34495e73899fb4b09b866f5a455363758799ac9985715d4935210c00000000000001162a3e53677b90a4b6a28d788296abb19c87725c47321d0700000000000114283b4e6275889badb5a49485776c666a7d92a7b6a18c76604b36210b0000000000000001162b3f53687c91a5b6a18d778296abb19c87715c47321d070000000014283d53687c92a7bcae9a8991a3b5a997857362513f2e1d0b0000000000000000000f253a4f64798fa3b8af99846f5a5a6675889baea392806d5a47331f0b000000000000152a3f53687c92a6af9b87725e4a36220e000000000000000000000015293e53687c92a7bbb4a59f9d9a92897d7061524333221100000000000000091a2f44586d8397acbea994806a555264758799aabcaa988775677a8fa2b5a4907c7a8c8e9092907b67523d281400091e32475b6f8498acb29f8b7763503d4754697d93a8a994806b56412c170200021b30465b708683807d7c7c808692a2b4ac99846f5a45311c060000000b20354a5f73899db2b8a38f7964503b2611000000001a2f445a6f869bb0b8a89f8e7d6c636e7b8b9bab9b897664513e2b180400000000001e33485d72879cb1b7a18c77624d475b6e8397acc0ab97836d59442f1a05000000000000000a11151d32465b70869bafaf9b86705c47321d080000000000071c30455a6f8499aeb9a5938d8c8780766a5e5041322211000000001d32475c72889cb2b09b866f5a454657697c90a3a08d78644f3b2612000000000000001024384d61758a9fb3a7927d7d94a9b39d88725d48331e090000000000000c1f3346586b7d90a2b4b2a39589807a7b899aadb7a18c76604b36210b00000000000000001024394d61768a9fb3a6927c7d94a9b39d88725d48331e080000000010253a4f64798fa3b8ae99848697a9b4a391806e5d4b3a29170600000000000000000f253a4f647990a5bab09b86715d4f586a7d93a8af9d8a76624e3a25110000000000001025394e63778da1b6a28e7965513e2916010000000000000000000010253a4f64788ea2b7c3b2a5a2a8a59b8e80706151402e1c0a00000000000f1b252b3f54697d93a8bdad98836e594658697b8d9eb0b6a493826f728699adac9986727678797c7d806b56402b160003182c4054687c91a5b8a793806c5a483c51667b90a5ae99846f5a45301b060000192e43586d839895949393959aa3b0aa9e8f7c6955412c1803000000071c31455a6f8499aebca7937d68533f2a15000000001a2f445a6f8499afb09b8a928b79695d6c7c8e9fa694826d5a4734200d00000000001a2f44596d8296aabaa5907c68564654687c92a7bbb19c87725d48331e1308000000000000000002192e43586c8297acb39f89745f4b36210c000000000000172c41566b8095aabeb1a5a3a19b93887c6e5f50402f1e0c0000001b30455a6f859aafb29d88725d493a4d6073889ba7937d6a55402c1702000000000000091e32475b6f8498adac97837c93a8b49f89735e49341f0a0000000000000316293b4e60738597a8b9b3a79c94909098a7b7b7a18c76604b36210b00000000000000000a1e33475b708599adac97837c93a8b49f89735e49341f0a000000000d22374c61768ba0b5b29c88798c9eb0af9e8c7a69584635241301000000000000000f24394e63778da1b5b4a08d7b6c64646d7d93a8b9a6927c68533e29140000000000000b2035495e72889cb1a995826d5945311d09000000000000000000000c21364b5f74899eb3bca7948d95a2ac9e8f806f5d4c3a2714010000000c1d2d393f405065798fa4b9b19c87725d484c5d6f8292a4b5b09f8d7b6a7d91a1a1a18f7c69636567696b62513d291400001125394d6175899db0af9c8a776654444e63788fa4b19c88725d48331e080000162b40556a8095aaa9a8a8aaaaa6a0988d80705f4d3a261200000009151e2c41566b8095aabfab96826c57422d1804000000182d42576c8397acad988385958776655e708295a89e8a7763503c28140000000000162a3e53677a8fa2b5ac98867364574f64788ea3b8b49f8b74604b362f2518090000000000000000152a3f54697d93a8b7a28e78644f3a251000000000000013283d52667b90a5babbaa9f9fa8a59a8d7d6e5e4d3c2a17050000182d42576c8296abb5a18c77624e3944586c8095a999846f5a45311c0700000000000003182c4055697d92a7b29d887b91a7b5a08b745f4a35200b000000000000000c1f31445667798b9cacbdb9afa9a5a5abb6c5b49f8b745f4b35200b000000000000000004182d41556a7d93a7b19d887b91a7b5a08b745f4a35200b000000000a1f34495e73889db2b5a08c768092a4b6aa988775645341301f0e000000000000000b2035495d718698aabcaa998b807879808b9baec0ab96826b56402b16000000000000061b2f44596d8397acb09c8874604c38241000000000000000000000081d32465b70869aafbba6917c8492a2ae9e8d7b695644311d0a000000172a3b4a54545161768ba0b5b4a08b75604b405163758698aabbaa99877575898c8c8c8d86736050525456514434210e00000a1e3246596d8294a7b9a795837262554f64798fa4b49f8a745f4a341f0a000013283d52677c92a7b2bcb4a295918c857a6f615241301d0a000008182631383d52677b91a6baaf9a86705b46311c07000000162b40556a8094a9ad988376889484726264778b9ea693806b57432f1b07000000000f24384b5f728698aab5a39283756a6260768ba0b5b7a28d77624d4a43362615020000000000000012263b5065798fa4b9a7927c68533e29140000000000000f24394d62778ca1b6b39f8c8b96a4aa9c8d7c6a594734210e000014293e53687c91a6baa6917c6854403d51667b90a59d88735e4a35200b0000000000000012263a4f63778ca1b5a28e8290a5b7a18c76604b36210c00000000000000021426384a5c6d7d8f9eaebdc3bdbbbbbfc8c6b19c87725d48331e0900000000000000000012263b4f64788da1b5a28e8090a5b6a18c76604b36210c00000000061c31465b70869aafb9a48f79758799abb6a59382705f4e3d2b1a09000000000000061a2e4256697b8d9eaeb7a89c938f8f939ca9b9c1ac97826b57412c1700000000000000162a3f53687c92a6b7a38f7b6753402c180400000000000000000002192d42576c8296abbfaa9580738495a8aa998673604d3926120000001d3246596869666372889cb1b8a38f79644f3a4557687a8c9eb0b6a593826f74767677787978644f3d3f403d34261605000003162a3e5164778a9eb0b2a19182736760687c91a6b6a18c76604b36210b000010253b5064798a959faab09b867b7770675d5143342413020000132536444c4d4e63778da2b6b39e89735f4a35200b00000012273c51667a90a4af9a8670798a91806f5f6e8295a99b87725e4a36220d00000000081c2f4356687a8c9dadb0a193877d767073899eb3b9a48f7866625e5444311e09000000000000000e23384c61768ca0b5ab96826c57422d180300000000000b2034495e73889db2b49f8a788695a5aa9a897664513e2b1704001025394e63778ca0b5ac97836f5b48384d62778ca1a18c77624d38230e000000000000000c2034495d72869bafaa9b979cacb8a38d77624d38230e0000000000000000091b2c3e4f607080909fadbac6d0d0d3d1beab97836d59442f1a060000000000000000000c2135495d72879bafaa9a959babb8a38d77624d38230e0000000000192e43586d8397acbda8937d697b8d9fb1b1a08f7d6c5a49382716050000000000001326394c5d6f80909fadb9afa7a4a4a7afbac7bca8947d6954402b150000000000000011253a4e63778da1b6ab97836f5b4733200c00000000000000000000152a3e53687c92a7bcae99846f778a9eb1a3907c6955412d180400001f344a5f747d7b78768499adbca7927c68533e394b5d6e8092a4b6b09f8d7b6a6060626364655a49352a2b29211608000000000e2135485b6d8293a5b7af9f91857a75768598acb7a18c76604b36210b00000d22374b5e6d77828d98a3a2958b82766c62584d41311f0c00001b2f435461625e5f73899eb3b6a18c77624d38230e0000000e23384c61768b9fb39e89746c7c8d8e7c6c65798da1a28e7965503c271300000000001326394b5d6e808f9da9b1a49a918a8683889db3b9a48f7d7b7772614c38230d000000000000000a1f34495e73889db2ae9a85705b46311c070000000000071b30455a6f8499aeb8a38e78768899aca694826d5a47331f0b000b1f34485d71869aaeb39f8b7764513e4a5f748b9fa48f7965503b261000000000000000061a2e43576c8095a8aaacacafb2b4a48f78644f3a240f0000000000000000000f203142526271828f9da9b4bdc3c4c0b3a28f7b67533f2b1601000000000000000000061b2f43586c8295a9abadabaeb3b6a48f78634e39240f0000000000162b40556a8095aab8ac97836d708294a6b8ac9b8a786756453422110100000000000a1c2e40516171828f9ba7b1bab9b9bcc2c7bfb19f8d7865503c2712000000000000000b2035495e72889cb1b29f8b77634f3b28140000000000000000000011253a4f64798ea3b8b29d88726e8296aaac9885705b47321e0900001d32475c7287918e8c8a99adc0ab96826b57422e3f5163758798aabcab99887564524c4e5050493c2b1916140e05000000000005182b3e516376889aacbcafa2978f8b8b94a3b4b7a18c76604b36210b0000081b2e404f5a656f7a86909ba69e938980756a5f4e3b271300001f34495e7277737070869aafbaa5907b66513c2712000000091e33475c70859aaea28e79656f80908a796872879ba894806a56412d180300000000091c2e3f5061707d8c97a0a8ada59f9b9898a5b8bda99993908d78634e38230e00000000000000061b30455a6f8499aeb39e89745f4a35200b000000000000172c41566b8095aabca7927c6a7c90a3b19e8a76634e3a261100051a2e42566a7d93a6baa794806d5b494a5f74899fa7927c67523c2712000000000000000514293d52667a8f939597999b9da0a2907a66503b26110000000000000000000213243444536270808c97a1a9aeafaca39584725f4c382410000000000000000000000014293d52667b909497989a9c9fa1a4907a65503b2611000000000013283e53687c93a4a3a19b87716476899ba5a8a79685736251402f1e0c000000000000112233445362707d8a959ea6adb2b5b5b3aca19382705d4935210d00000000000000061b2f44596d8397acbaa6927d6a5743301c080000000000000000000d21364b60758a9fb4b5a08c76677b90a5b39f8a75604b36210d00001b30455a6f8599a3a09fa6b6c3ae99856f5a4631344557697a8d9fb0b7a593826f5e4c3a3b3b362c1e0e000000000000000000000e213446586a7c8e9fb0c0b4aaa3a0a0a6b2c1b5a08b75604b36210b0000001125384a575c5d68737d89949fa69c92887d6a55402b1601001f34495e73888987848398adbea994806a55402b1601000004192d41566a7d93a7a995806c6171829287766c8296ab9985705b46311c0700000000001022324251606e7a848c98acb4aba4a3a3abb9c4b4aaa8a08b76604b36210c0000000000000000172c41566b8095aab7a28d77634e39240f00000000000013283d52677b91a6baab96826c73889cb0a6927d6954402b17000013273b4f63778b9eb2b09e8b7867574e62778ca1a8937d68533e2913000000000000051423313e4c60757b7d80828486888b8d917c67523d281300000000000000000000061626354453616e79858e95999b979185766655422f1c0900000000000000000000000f23384c61757c8082838687898c8f927c67523c2712000000000011263b50667a908f8d8c8b8b75606b7d8f9093949791806f5e4d3b2814000000000000051626354452606c77828a92999da0a09e988f83746452402d1a060000000000000000162a3f53687c92a4a7aa9a87735f4c382411000000000000000000081d32475c71869bb0b9a48f7a65778ca1b7a38e78634e39240f0000182d42576c8397acb5b4b9c4c7b29d88735e4934283a4b5d6f8293a5b7b19f8d7b6a58463526221a0e00000000000000000000000517293b4d5e708292a2b2c1beb8b5b5bac3c7b29d88735e49341f09000000162b405568727270707076828d9aada598836d58432e1904001c31465b70869b9b9997a1b3c1ad98836d59442f1a0500000013273b4f63778ca0af9c8874606474859483727c92a79e89745f4a35200b00000000000414243342505d6c7a8695aaa3988f8d8e9bafb0a697939689735e49341f0a000000000000000014293e53687c92a7bba6917c67523d28140000000000000f24394e63778da2b6af9a86706d8297acac98836e59442f1a00000c2034475b6f8295a8baa8968574665e6a7d91a6a9947d68533e2913000000000000112332414f5c696867686a6c6e707275787b806a543f2a1500000000000000000000000817263543505c677179808486837d7367584837251305000000000000000000000215273747586573706b6d6f717376797c7d68533e291300000000000f24394e63777a787876757471606071797b7c808284877c6b57422d180000000000000008172634424e5a646e767d84888b8b89847c7265564635231100000000000000000011253a4e63778c8f9295988f7b6754402d1900000000000000000003192e43586d8297acbda8937d69748ba0b5a59079644f3a250f0000152b40546a8094a7aaadb0b3b6b6a18c77624d38242e405263758899abbcab9988756452402f1d0c000000000000000000000000000c1e2f415263738494a3b1bfcbcbcbced4c1ac98846f5a45301b06000000172c41566b828887878787868696abaf9a86705b46301b0600192e43586d8398adaeacb2bfc5b19c87715d48331e090000000c2034485c708498aba4907d6a5767778890807990a5a18c77624d38230e0000000000000b1f3346596a7b8b98a3a594857b778296999b9c8c7d8286715c47321c07000000000000000010253a4f64788ea3b8aa95806b57422d180300000000000b20354a5f73899eb3b39e8973687d94a8b19c87715c47321c000004182b3f5265798c9fb1b4a39385787379889aada9947d68533e29130000000000061a2e40515f6d7a78695a545763717878756c6a614f3b27150400000000000000000000000c1b28333e4a545e656b6e6f6d696156493e372d221506000000000000000000091d314455657584806f605a6073877c6f6b604e3b261100000000000b203447596565646361605f5e5353606466686a6c6f71746a57422d180000000000000000081724313d48515b636a6f737474736f695f5447382817060000000000000000000b2034495d7077797c80838683705c47321d00000000000000000000152a3f54697d93a8bdac97836d768ca1b6a59079644f3a250f000013283d52677c8f9295989b9ea1a4a5907b66513c27223446586a7c8ea0b2b7a593826f5e4c3b29170300000000000000000000000000122334455565758593a1adb9c2c8cac5b6a4917d6955402c1702000000152a3f546a80949c9c9c9c9b9ba2b3b29d88725d48331e0900162b40566b8095aab2b4b8bbbeb4a08b75604c37220d00000005192d4154687c8fa2ad9a887563596a7a8b8d7c90a5a48f79644f3a250f00000000000010253a4e62758899a9af9b887667697d8484868788766c716b58442f1a0500000000000000081221364b60758a9fb4ae9a85705b46311c080000000000071c31465b70859aafb6a28d77677c93a8b39d88725d48331e000000102336495c6f8294a6b8b1a2968d898d97a6b7a8937c67523d281300000000000a2034495d6f7d8b8878695c6172828e8f897d7162534433211000000000000000000000081a2a3946505658575356595a5854575857524a403324150500000000000000000c21374c607384948e7d6e5e6a7d908d8071604c37220d000000000005182a3b4850504f4e4c4b4a4942434c4f505354575a5c5f5a4d3b281400000000000000000006131f2b353e474f555a5e5f5f5e5b554c4236291a0a00000000000000000000061a2e41515e6264676a6e70736f5c47321d0000000000000000000011263b5065798fa4b9b09b86717d91a5b7a28d78634e39240f000010253a4f6475797c808386898c8f9294806a55402c17293a4c5e708395a7a7a39f8d7b6a5846331e0a00000000000000000000000000051627384757667583909ca6aeb3b5b1a7988774614e3a26110000000013283d52677c93a7afb0b0b0b0b3b3b4a08b75604b36210c0014283e53687c93999ca0a3a6a9aca38f7965503b2611000000001125394c5f738699aca492806f5e5c6c7d8e8d95a9a6917b66503b261100000000000013283e53687c92a5b7aa95806c58626d6e6e6f70726f5f5c594d3c2915010000000000000a19252d32475c71879bb0b39e89745f4a36210c000000000001182d42576c8296abbaa5907b6a8094a9b39d88725c47321d000000061a2c3f526476899aacbdb3a8a19fa1a9b5baa5907a65503b261100000000000b20354b5f73889b9788796e708090a0a39b8f827161513f2d1b090000000000000000001325374857636b6d6c675e534b59646b6e6c665d514233221100000000000000000c21364b607385969c8d7c6c74889a9d8b76624d38230e0000000000000d1d2b353b3b3a38373634342f31373a3b3d3f4244474a473d2f1e0b00000000000000000000020d18222b333b4045484a4a494640393025190b000000000000000000000000112333414a4d4f5255585b5f5d513f2c19000000000000000000000d22374c61768ba0b5b49f8a808c9badb29e89745f4b36210c00000c213447576064676a6d707376797c80836e58432e191d2f415365778998938f8c898776614c37220d0000000000000000000000000000091a2a39485765727d89939a9ea09d95897a695744311e0b0000000011263b50667b9099999b9b9c9c9d9e9fa08d77634d38230e0011263b5065798285888b8e91949799937d68543f2a1500000000091d304356697c8fa1b09e8d7c6d5f5f6f8091a6b3a7917b66503b261100000000000013293e53687d94a9bda8937c6853525858595a5b5c5b5147453c2f1e0c00000000000005172837414645586d8398adb7a28d78634e3a251000000000000014293e53687c92a7bca9947d75869aaeb09b87705b46311c0000000010223547596b7c8e9fafbfbcb6b4b6bcc6b5a18c77624d38230e0000000000081c3044576a7d90a2978b84848f9eaeadad9f90806e5c4b3826130000000000000000081c30435566758083827a7063586977828382796f6151402e1b0700000000000000081d31445567788a9b9b8b7b7d91a49985705c47331f0a000000000000000d19212626242322201f1f1b1d222426282a2d2f3234322b1f1100000000000000000000000000050f1820262c3033343434312c261d1308000000000000000000000000000515232e35383a3d4044464a4840322210000000000000000000000a1f33485d72889cb1b9a697949caab9a996836e5a46311c08000005182939454b4f5255585b5e6164676a6c6554402c17122436485a6c7d837d797673716d5d4a35200b0000000000000000000000000000000c1b2a394754606c768086898b8882786b5c4c3a281502000000000f24394e6378838484868687888889898b8b7965503b2611000e22364a5c686c6f7275787b7d828588836d58442f1900000000001427394c5f718395a7ab9b8c7c706b738395a8bca7917b66503b261100000000000013283d53687c92a7bca994806a564c4e57666a5e4e464033302a1f11010000000000000d213446545b5a576a8094a9bba6927c68533e291400000000000010253a4f64788ea3b8ac97848794a4b6ac97836d58442f1a0000000005182a3c4d5f708291a1b0becbc9cbd0c2af9b87725d49341f0b00000000000115283b4e60738597a99e9999a0ada19899a29e8c7a685643301d0a000000000000000e23374b5f72849398968e82726375889598968d806f5d4a36220e0000000000000001142638495a6c7d8e9f9a8b889ba7937d6a55412d19040000000000000000060d10110f0e0d0b0a0a06090d0f111315181a1d1f1e180e01000000000000000000000000000000040c12171b1e1f1f1f1c18110a0000000000000000000000000000000006121b202325282c2f3134332d22140400000000000000000000051b2f44596e8498adc2b5aba9afb3aa9c8b7966533f2b17030000000b1b2831373a3d404346494c4f525557534737241106192b3d4f61726f6964615e5c594f402e1b07000000000000000000000000000000000c1b2936434f59636a707374736e665a4d3e2e1d0b00000000000c21364a5d6b6c6e6e6f707072727373747473634f3a251000071a2d3e4b53575a5d606366696c6f72746b58432e1900000000000a1d2f415466778a9bacaa9b8e85828692a1b2bba5907a66503b261100000000000010253a4f64788da1b5ae9a867465616369757c6c5c4d3d2d1d160d010000000000000012273c5064706f6c6a7b90a5baab96826c57422d190400000000000d21364b60758b9fb4b3a2989aa4b2b4a3907c68533f2a1600000000000c1e30415263728392a0aeb9c4c9c7b8a693806b58432f1b060000000000000b1e31435667798b9cacaeaeb3a5948385919f9885725f4c3926120000000000000012273c51657a8fa2adaba0907d697d92a5ada99e8d7965513d28130000000000000000091a2b3d4e5f708292a29b9aa6a28d7864503b27120000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000060b0e101316191c1f1e191105000000000000000000000000172c41556a8095aabebeafa5a39f988c7d6d5c4a37231000000000000a151d2225282b2e3134373a3d40423f36291907000d1f3244545e5c54504c4947443d3122110000000000000000000000000000000000000b1925313d464f565b5e5f5e5952493c2f2010000000000000071b2e3f4e565758595a5b5b5c5c5e5e5f5f5f564634200c00000f202e383e4245484b4e5154575a5d5f5b4e3c2915000000000000122537485a6b7c8e9eaeaca099979aa3b0bfb7a28d78634e3926150500000000000c21354a5e728698aab6a392837976777c868b7a6a5b4b3b2b1907000000000000000013283d53687c8583807c8ca1b7af9a86705b47321d080000000000091e33485d72879ca6abafadafb4afa5978673604d3925100000000000011223344555647382909ca7afb4b3a99a897663503c281400000000000000011426384a5c6d7d8f9daab2a6978776728290a08f7c6955412c170000000000000013293e53687d93a8bdbeac97836d8297acc1bca994806a543f2a150000000000000000000e1f30415263738595a6aeb09c88725e4a35210c0000000000000000000000020406070907050a0b0903000000000000000000000000000000000002090d0e0b0602000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000013283d52677b91a6bbb5a1918e8b847a6e5f4f3e2c1a0700000000000002080d101316191c1f2225282b2c2b24190b000002152636434948403b3734322f2a2013040000000000000000000000000000000000000008141f2a333b4246494a48453f362b1f1102000000000000001021303b41424344444646474748494a4a4a4438281704000002101c242a2d303336393c3f4245484a473e301f0d00000000000007192b3d4e5f6f80909faeb4aeacaeb5c0c9b5a08b766655443322120100000000071b2e4256687b8d9eaeb0a1958e8c8d919999897869594936220e000000000000000012273c51667b9197959395a6b9b39f8a74604b36210d0000000000041a2f44596e848c91969a9d9f9f9b938778685643301d0900000000000006162737465564717d8a949b9f9f988b7c6b594734200d0000000000000000091b2d3e4f6070808d989d96897969627283938e806d58432e190000000000000012273c51667b90a4b3b4a996826c8094a7b4b3a6937d69543f2a1500000000000000000001122334455666778898a8ab96826d58442f1b07000000000000050d11131517191b1c1e1b191f201d17110b050000000000000000000000000009151e2323201b17130e0a060c0e0d0b0806030100000000000000000000000000050d1111100e0d0b0a080706040301000000000000000000000000000000000000000f24394e63788da2b7b39d88787670675d504131210f0000000000000000000000000000070a0d10131617161007000000000918252f34332d26221f1d1a160e03000000000000000000000000000000000000000000020d1720272d31343433302b23190e01000000000000000003121f282c2d2e2f2f30303232333434343430271a0b0000000000091015181b1e2124272a2d303334332b201201000000000000000d1f304151617182909eaab6c0c2c9c7baaba2948472625140301f0d00000000001326394c5d6f808f9eaab2a9a3a1a3a6aca797877765513c2712000000000000000010253a4f647990a5aaa8a9b3bdb8a38e79644f3b2611000000000000172c40546671777c8286888a89868075695a4a3927140100000000000000091928374654616d7780878a89847a6d5e4d3c2a17040000000000000000000f21324251616e7a848883786a5b546475857d7061513e2a16000000000000000f24384d617487969f9f998c7967778a989f9f98897764503b271200000000000000000000051627384959697a8a9a9c917c68533e2a150100000000000c182126282a2c2e303233302d3436322b251f19130e0802000000000000000008182631383834302c27231f1a212322201d1b1816130c020000000000000000000c18212627252322211f1e1c1b19181715141311100c060000000000000000000000000c20354a5f74899fabada28d77635c544b3f32231303000000000000000000000000000000000000000000000000000000000008131b1f1e19110d0a07000000000000000000000000000000000000000000000000000000040c13191c1f1f1e1b160f070000000000000000000000010c131718191a1a1b1b1d1d1e1f1f1f1f1c14090000000000000000000004090c0f1215181b1e1f1e180f0200000000000000000112233343536271808d99a3acb2b5b3aa9c8d9291806f5e4e3c291500000000000a1c2e40516170808d98a2aab0b3b5b4aea497887664503b261100000000000000000f24394e63788f9b9da0a3a5a8aba7937d68543f2a1600000000000011243748565d62686c70737473716c63584b3c2c1b090000000000000000000a192836434f5a646c71747470675c4f402f1e0c000000000000000000000314243342505d686f726f665a4c475767746c5f524334220f00000000000000091e314457687783898a867c6d5c6b7a858a8985796b594734210c0000000000000000000000091a2b3b4c5c6c7b89878776624d39241000000000000a1b2a353b3e3f4143454748443f484b463f39332e28221d160c00000000000000132536444c4d4945403c38342d3638373532302e2b271f1304000000000000000a1b2a353b3c3a383736343331302f2d2c2b2928262521190e0000000000000000000000081d32475c70869496989b917c675241382d2114040000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000051625354453616f7b8790989da09e988d7d8591847c6b58432e190000000000001122334352616f7b868f969b9fa09f9a92877969594734210d00000000000000000d22374c62778386888b8e9093969897836d58442f1a000000000000081a2a3842484e53575b5e5f5f5c5750463a2d1e0e00000000000000000000000a1825323d4751585d5f5f5b544b3e31221101000000000000000000000006152432404b545a5c5a53493c3949575f5a4e4134251605000000000000000215283a4a5a6670747471695e4f5c6870747470675c4d3c2a18050000000000000000000000000d1d2e3e4e5d6d7471706c5b47331e0a00000000001528394750535456585a5c5e574e5c605a544e48423c3731291d0e0000000000001b2f435461625e5a55514d483f4a4e4c4a474543403b312312000000000000001528394750514f4e4c4b4a484745444241403f3d3b3a352b1e0e0000000000000000000002192e43586d7b7d82838688826b57412c1b1004000000000000000000000000080f1417171715110c050000000000000000000000000000000000000009111515120f0c09050200000000000000000000000000000000000009111515120f0c09050200000000000000000000000000000000000000070b0b09060401000000000000000000000000000000000000000000000000000000000000000000000000000000000817263543515d69737c84888b89847a6e778072756c58442f190000000000000516253443515d69727a8286898b89867d75685b4b3b29180500000000000000000b2034485b696d707376787b7d82848687725d48331e000000000000000c1a262e34393e4246484a4a47433c33291c0f000000000000000000000000000814202b343d43484a4a4741382d211304000000000000000000000000000615222e394045474540372b2b39444a473d312316070000000000000000000b1c2d3c49535b5f5f5c564c404b555c5f5f5b544b3e2f1e0d00000000000000000000000000001020303f4f5c5f5c5b594e3e2b180400000000001c31445764686a6b6e6f717366586c756e68625c56514b453b2c1b0800000000001f34495e7277736f6a66615c505c63625f5c5a58554e41301d0a0000000000001c3144576466646362605f5d5c5a585756545352504f493c2c1a0600000000000000000000152a3e516066696b6e7072746955412c1701000000000000000000000006111b23282c2c2c2a2620191107000000000000000000000000000000000f1b252a2b2724211e1a1714100d0a070400000000000000000000000f1b252a2b2724211e1a1714100d0a0704000000000000000000000006121b20201e1b191613110e070000000000000000000000000000000000000000000000000000000000000000000000000008172533404c5760696f7374736f675d6a6d61605c4e3d29150000000000000007162533404c565f666c71737474706a61574b3d2d1d0c00000000000000000005192c3d4c55585b5e606366686b6e70736f5c47321d000000000000000009131a1f25292d31333434322e2920170b000000000000000000000000000000020e1821292f333434322d251b100300000000000000000000000000000004101c252c3132312c241a1b283134322b20130600000000000000000000000f1e2b3740474a4a47423a2f3941474a4a4741382d2011000000000000000000000000000000021221313e484a4746443d30200f0000000000001f344a5f747c8082838687836f5c7086837c76716b6560584a38251100000000001e33485d72878884807a766e5b6a787774726f6d6a5f4d3925100000000000001f344a5f747b797877767472706f6e6c6b6a686766645a4936220d000000000000000000000e2133424d515456585b5d5f5a4c3a261200000000000000000000000a17242e373d4142423f3b342d241a0f03000000000000000000000000000c1d2d393f403c3936322f2c2925221f1c19140d02000000000000000c1d2d393f403c3936322f2c2925221f1c19140d02000000000000000616242f353533302e2b2826221b10030000000000000000000000000000000000000000000000000000000000000000000000000715222e3a444d555a5e5f5e5b544c5759514b483f30200d00000000000000000715222e39434b52585c5e5f5f5c564e453a2d1f0f00000000000000000000000f1f2e3a404346494b4e515356595b5e5d513f2c1900000000000000000000050b1014181c1e1f1f1d1a140d04000000000000000000000000000000000000050e151a1e1f1f1d181108000000000000000000000000000000000000000911181c1d1c1711070a151c1f1e180e02000000000000000000000000000d1a242c323434322e271d262d323434322d251b0f02000000000000000000000000000000000313212c333432302f2a1f12020000000000001e32475a6d809397989a9c8c7865728797918b8680797467543f2a1500000000001a2f44596e83989894908a7460697d8c8a8886837c67523d28130000000000001f34495e7388908f8d8b89888786848382807d7c7b7865503b26110000000000000000000004152431393c3f414346484a463c2e1d0a0000000000000000000009192835414a52565757544f4840372c211408000000000000000000000000172a3b4a5454514e4b4744413e3b3734312d291f1304000000000000172a3b4a5454514e4b4744413e3b3734312d291f1304000000000000122434424a4b484543403d3b362d21110000000000000000000000000000000000000000000000000000000000000000000000000004111d27313a4045484a4946403b43443e36342d21120200000000000000000005111c262f373e4347494a4a47423b32281c0f01000000000000000000000001101d262c2e313436393c3e414446494840322210000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000711181d1f1f1d19130a12191d1f1f1d18120800000000000000000000000000000000000000030f191e1f1d1b1a160d0100000000000000182b3e506375889badafa895826e73889da6a09a948f7d6a55402b160000000000162b40556a8094a9a9a38e786465798f9f9c9a94806a55402b160100000000001c31465b70869ba3a2a09f9d9c9b999897959493917d68533e2914000000000000000000000006131e24272a2c2e303334322a1e10000000000000000000000517273745535d666b6c6c69635c53493e3225180a00000000000000000000001d32465968696663605c595653504c4946423c3122120000000000001d32465968696663605c595653504c4946423c3122120000000000001a2e41525e5f5d5a585553504a3f2f1d0a00000000000000000000000000000000000000000000000000000000000000000000000000000a141e262c31333434312c282e2f2a211f1910030000000000000000000000000a131c23292e32343434322d271f150b0000000000000000000000000000000a1216191c1f212427292c2f3134332d221404000000000000000000000410191d1e1b181613110f0c050000000000000000000000000000000000050c11141515130f090300000000000000000000000000000000000002090d0e0b08060301000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000e213346586b7d90a3b5b19e8a7674899fb4b4aea28e7965503b2712000000000012273c51667b90a5baa7927c6861768ba0b1ad98836d58432e19040000000000192e43586d8398adb7b5b4b3b1b0afadacaba9a895806a55402b16010000000000000000000000010a0f121417191b1e1f1d170d0000000000000000000000102234455563707a8083827d7770665c50433628190a000000000000000000001f344a5f747d7b7874726e6b6864615e5b574f402f1c0800000000001f344a5f747d7b7874726e6b6864615e5b574f402f1c0800000000001f34495d7074726f6d6a68655d4c3a2612000000000000000000000000000000000000000000000000000000000000000000000000000000010a11171c1e1f1f1c1814191a160e0a0500000000000000000000000000000000080f15191d1f1f1f1d19130c02000000000000000000000000000000000000000006090c0f1114171a1c1f1e191105000000000000000000000514222c3233302d2b28262421180d0000000000000000000000000000040f1820262a2a2a28241e170e0500000000000000000000000000000009151e2323201e1b181614110a00000000000000000000000000000810141513100d0b0806050f16191714100d09070400000000000000000000000000000000040b1115171716140f0a0300000000000000000000000000000000000416293b4e60738698abbaa69380768ba0b5c7b29e89745f4b36220d00000000000e23384d62778ca1b6ab97826c5d72879cb1b09b86705b46311c070000000000162b40556a8095aabfcbbeb2afafb0b1b2b3b5ac97836c58432d180300000000000000000000000000000000000000000000000000000000000000000000061a2d40526373828d959897938c83796d6154463728190a0000000000000000001e32475c7187908d8a8784807c797673706c5e4c38230e00000000001e32475c7187908d8a8784807c797673706c5e4c38230e00000000001f34495e7388888683807c796955402c180300000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001122323f47484542403d3b3a352b1d0d0000000000000000000000000815212b343b3f3f3f3d38322a21170d010000000000000000000000000818263138383533302e2b2a261d110300000000000000000000000e1a24292a282522201d1b18222a2e2c2925221f1c19140c010000000000000000000000020d171f262a2c2c2b28241e170e05000000000000000000000000000000000c1e314356687a8da0b2af9b88778da2b7c2ad99846f5a46311c0800000000000a1f34495e73889db2af9b86705c6e8398adb39e89735f4a35200b000000000014283d53687c92a7bbc2b0a099999b9c9c9ea0a19a856f5a45301b0600000000000008101414100c080400000000000000000000000000000000000000000e2236495c6f8291a0aaadaca79f968b80716455463728180800000000000000001a2f44586d8397a29f9c9995928f8c88867b66503b261100000000001a2f44586d8397a29f9c9995928f8c88867b66503b261100000000001b3044596e83979a979592846f5b46321e0900000000000000000000000000000000040e1517161413110f0b050000000000000000000000000000020e161b1b181613100e0c090300000000000000000000000000000000030c14191c1d1d1b17110a0200000000000000000000000000000000000001080c0d0b080503000000080e110f0c080502000000000000000000192d40515c5d5a575553504f483b2b190600000000000000000000081726333e484f545454524d463e342a1e12050000000000000000000000132536444c4d4b484543403f3a2f2110000000000000000000000c1d2c373e3f3d3a373532302c343e43413e3a3734312e281e110200000000000000000004131f2a333a3f4242403d38322b21170c000000000000000000000000000000021426394b5e708395a8b7a4907c8fa3b8bda8937d6a55402c17030000000000061b30455a6f8499aeb39e89745f697d93a8b6a18c77624d38230e000000000010253a4f63778b9eafbda8938484868788898b8c8d87725c47321d0800000000000e1a24292925211d1915110d060000000000000000000000000000000014293d5165798c9fafbdc3c1bbb3a89d9082736455463625150400000000000000162b4054697d94a8b4b1aeaaa7a4a19d927c67523d28130000000000162b4054697d94a8b4b1aeaaa7a4a19d927c67523d28130000000000162b4054697d93a8acaa9e8a75614c38230e000000000000000000000000000000071621292c2b2a28262420180d0000000000000000000000000313202a30302d2b282623221e160b00000000000000000000000000000a1620282e313232302b251e150c0100000000000000000000000000000008141c2122201d1a181513101b232624211d1a1714110c0500000000001e33485d6f726f6c6a686664594835210d0000000000000000000415253543515b63686a6a66615a51473c30231608000000000000000000001b2f435461625f5d5a5856544c3f2e1b0800000000000000000016293b495354524f4c4a47454043515856534f4c4946433b2f200f0000000000000000041423303d474e54575756524d463e34291d10020000000000000000000000000000091c2e415366788b9eb0ac99858fa4b9b7a38e7965503b271200000000000000172c41566b8095aab7a28d786365798fa4b9a5907a65503b261100000000000c2034485b6e8091a1b0ab998d837770727374767879725d48331e08000000000c1d2c373e3e3a36322e2a26211a10020000000000000000000000000000192e42576c8095a8bcc6bab1adadb2aea092837364534332210f0000000000000012273c51667a90a5babfad9f9da0a3a7947d69543f2a14000000000012273c51667a90a5babfad9f9da0a3a7947d69543f2a14000000000012263b5064798ea3b8b9a48f7a66513d28130000000000000000000000000000031525333e42403f3d3b39342a1d0d00000000000000000000000f21313d454543403d3b383732281b0b0000000000000000000000000e1b28333c4247474745403931281e13080000000000000000000000000007172530363735322f2d2b28252d373b3936322f2c292621180b000000001f34495e73888583807c7b7765503b26110000000000000000000f21334353616e777d80807b756d64594e41342617080000000000000000001f34495e727774726f6d6b695d4b37230e0000000000000000001d31455867696764625f5c5a544e616d6b6864615e5b574d3e2c190500000000000000112232414e5963696c6c6b67615a51473b2e2011020000000000000000000000000000112436495b6d8093a6b5a3999dacbfb29e89745f4b36220d0000000000000014283d52677c91a6bba6917c6761768ba0b5a8937d68543f2a15000000000005182b3e5162728392a2b0aa9f958a8074685f6163646154422e1a060000000016293b4953534f4b47423f3a362d201100000000000000000000000000001c31475c70869aafc4b7a89e98989da5b0a192827161503e2d1b090000000000000e23384d62778ca1b6b8a38f888b8f9295826b56402c1601000000000e23384d62778ca1b6b8a38f888b8f9295826b56402c1601000000000d22364b6074899eb3bea995806b56422d1904000000000000000000000000000c2032435157565452504e473b2b190600000000000000000000192c3e4f595a585552504e4c4639291805000000000000000000000d1d2c39454f575c5c5c59544d453b3125190c000000000000000000000000122535434b4c4a474442403d393e4a504e4b4744413e3b34291b0a0000001b3045596e8398979493907c68533e2914000000000000000005182b3e506171808b939594908982766b5f52443526170800000000000000001e33485d72878a888583827a66513c27120000000000000000001f344a5f747d7c797774726f6452677b807c797673706b5c48341f0a0000000000000a1c2e40505f6c767d8283807b756d64584c3e2f2010000000000000000000000000000007192c3e516376899cafb4aeb0bbc2ae99846f5a46311c08000000000000001025394e63788da2b7aa95806b5d72879cb1ab97826c57422d180400000000000f2133445464748492a1afb2a89d92867a6e61554f4d4436251300000000001d314558676864605c57534f4a3e2f1e0b000000000000000000000000001f34495e73899eb3bca9998b838489929fada090806e5c4a3826140100000000000a1f34495e73889db2b9a48f7976797c80836c57422c1702000000000a1f34495e73889db2b9a48f7976797c80836c57422c170200000000081d32465b70859aaec3ae9a86705b47321d080000000000000000000000000012263b4f616c6b68676563594835210d000000000000000000001e33485c6d6f6c6a67656361574734210c000000000000000000081a2b3b4a57626b7072726e6861584e43362a1c0e00000000000000000000001b2f425360625f5c5a5754524d4b5c6563605c5956535047392815020000172b40556a7d94a8a9a796826b56412c1702000000000000000d2135485b6e80909ea7aba9a49d94897c7062534435261606000000000000001a2f44586d83979c9a98937d69543f2a150000000000000000001d32465a6f83918f8c8a88826c5864798f928f8b888676614c37220c0000000000001226394c5d6e7d8992979895908a82766a5c4d3e2d1d0b00000000000000000000000000000f213447596c8092a5b8c3c5cdbea994806a56412c1803000000000000000c20354a5f74899fb3ae99846f5b6d8398adaf9a86705b46311c070000000000041626374656657383919eacb9afa3988c807265584a3b2c1d0e00000000001f344a5f747c7874706c68645c4d3a2612000000000000000000000000001f344a5f748ba0b5b39f8c7a6d6e75828f9eae9d8c79675543301d0a0000000000061b30455a6f8499aebda8937d6864676b6e65533f2b160100000000061b30455a6f8499aebda8937d6864676b6e65533f2b16010000000002182d41566b8095a9beb39f8a75604b3723100000000000000000000000000213283e53687d807d7c797765503b2611000000000000000000001f344a5f738683807c797875644f3a25100000000000000000001325374959677580868887837c756b6054473a2c1d0e000000000000000000001f34495e717774716f6c6a675f51667a7874716e6b68645745311d08000012273c51657a8fa4b9ae99846e59442f1a050000000000000013283c5064778b9daebbc0beb9b1a69b8e807162534434241302000000000000152a3f54687d93a7afab97826c57422d18030000000000000000172b4054687d92a4a19f9b87725d61768ca1a3a09d8d77624c37220d000000000000192d4255697b8d9ba6acadaaa59e94887a6b5c4b3a2916040000000000000000000000000004172a3d506275899cafc2d6cfbaa5907b66513d28130000000000000000081d32475c70869bb0b29d8873706e8094a9b39e89735e4934200b0000000000000919283847556472808e9ba8b5b5a99d91837568594a3b2c1b0b000000001e33485d71878e8a86827d796a55402b16010000000000000000000000001f344a5f748ba0b5ae9985705c5a63708090a1a9978572604d3a2714000000000000182c41566b8095aabfab97826c585256585447362410000000000000182c41566b8095aabfab97826c58525658544736241000000000000013283d51667b90a5bbb8a38f7966523f2c1906000000000000000000000513202c3b5064798f9492907c67523d281b0f0300000000000000001c31455a6f84979492908e7c68533e29140000000000000000081c2f4255667686929a9d9c9891887d7265584a3b2c1d0d0000000000000000001e33485d718689878482807c6a5665798d8a8783827d75604b36210c00000e23384c61768ba0b5b19c87725c47321d0800000000000000192d42566b8094a7bbc8bcb4b0b0b4ac9e90827162524131200e00000000000011263b5064798fa3b8af99856f5a45301b06000000000000000011253a4e62778ca0b4b4a18d78635f74899fb4b5a38e78634e38230e0000000000001e32475c708599aab9c0b5b0b0b1a5998a7a69584634210e00000000000000000000000000000d203346596c8093a6b9cdcbb6a28d77624d38240f000000000000000002192e43586d8397acb6a28f8886848392a7b6a18c77624d38230e000000000000000a1a2938465462707d8a97a4b1bbaea1948677685949392917060000001a2e43586d82979f9a9792836d58432e190c0300000000000000000000001f344a5f74899fb4ad98846e58465261728395a8a2907c695643301c08000000000014283d52677c91a6bbaf9a86705b4641434037291d0e00000000000014283d52677c91a6bbaf9a86705b4641434037291d0e0000000000000f253a4f647990a5bbbda995826f5c4935220f000000000000000000051423313d495260758a9ea7947d695443382d20130400000000000000172c41556a8094a9a7a595806b56412c1702000000000000000f24384b5f728495a4afb3b1aca49b90837668594a3b2b1b0b0000000000000000192e42566b80949c99979485705c62778d9f9b98968d77624c37220d00000a1f33485d72879cb1b49f8a74604b36210c000000000000001c31465b70869aaec3b9aaa09b9ba0a8ae9f9080705f4e3d2b1a0700000000000d22374b60758a9fb4b29d88725d48331e0900000000000000000b1f34485c70869aaebba7927d695d72889db2b9a48f78634e39240f0000000000001f344a5f748a9fb4c1b0a29b9ba4b1a898877563503d2a17030000000000000000000000000003162a3d5063768a9eb1c6c8b39e89745f4a35200d000000000000000000162b4054697d94a9beada19d9b99979dadbaa5907b66513c271200000000000000000b1a283644525f6c798693a0aebbb2a4968777675747352412000000152a3f54687d93a7afab9b86705c4732271f160c010000000000000000001d32475c72889cb1af9a866f5a45435466788b9fac9986725f4b382410000000000010253a4e63788da2b7b39e89745f4c4b4b4a453b2c1b08000000000010253a4e63788da2b7b39e89745f4c4b4b4a453b2c1b08000000000011263b50667b90a5bbc5b29f8c7864513e2b18050000000000000004142332414f5b656e748499ab96826b5f554a3e3123140400000000000013273c51667b90a5baad98846e59442f1a0500000000000000152a3e53677a8fa2b3c2c8c0bdb8ada1948677685949392918060000000000000013283c5065798ea2afac9f8a766160748ba0b0ada38d77624d38230e0000051a2f44596e8398adb7a28d78634e39240f000000000000001e33485e73899eb3bdab9b8d86868c95a1ae9e8f7d6c5a493725120000000000091e32475c71869bb0b5a08b76604b36210d000000000000000005192d42566a8094a8bcac98846f6470869bb0baa59079644f3a250f0000000000001f344a5f748a9fb4b7a492868793a4b6a593806d5a46321e0a00000000000000000000000000000d2034475a6f859aafc4c8b39e8a7663503d2a1703000000000000000012273c51667b90a5babdb1abacaeacafb9bea8947d6955402b1601000000000000071929374043414e5b687582909dabb9b4a59686756453412f1c09000011263b4f64798ea3b8b39e89745f4a413b33291e120600000000000000001b30455a6f8499aeb29c88725d4937495b6f8296aaa28f7a67533f2b1602000000000c21364b5f748a9fb3b7a28d78636260605f584a38251100000000000c21364b5f748a9fb3b7a28d78636260605f584a382511000000000011263b50667b91a7bccebba895826e5b4834210e000000000000000f213242515f6d7882898e9cae99857b72685c4f413222110000000000000e23384d62778ca1b5b09b87715c47321d08000000000000001a2f44586d8296aabec2b5aca8a8acb2a4968777675747362412010000000000000d21364a5f73889cb0b9a5907b675e73889db3b9a48f78634e38230e000000172b40556a8094a9baa5907b66513c2712000000000000001f344a5f748ba0b5b4a08d7c70717783909fac9b8a786654412f1c090000000004192e43586d8397acb8a38e78644f3a251000000000000000000013273c5064798da2b6b29e897979798499afbba5907965503b26110000000000001e33485d72889db2b29d8874758699acb09d8975614d3925100000000000000000000000000000091e33485d72889cb2c7cdb9a693806c594633200d00000000000000000e23384d62778ca1b6b19f96979a9c9fa7b7ac97836d58442f1a05000000000000102436475458565451576471808d9ba9b8b4a49382705e4c39261200000d21364b60758a9fb3b6a28d77635b564f463c3023160700000000000000172c41566b8095a9b5a08c77624e393f52667a8ea2aa96836e5a46311d0900000000081d32475c70869bafbba6917c777776767467543f2a150000000000081d32475c70869bafbba6917c777776767467543f2a15000000000012273c51667b91a7bcd1c4b19e8b7764513e2b1804000000000000192c3f50606f7d8a959ea2aab4a2978f85796d5f50402f1e0c00000000000a1f34495d72889cb1b49f89745f4a35200b000000000000001d32475c71879cb0c4b3a499939398a0aba5968675645341301e0c000000000000071c3044586d8296aabfaa96826d5c70879cb1b9a48f79644f3a250f00000012273c51667b90a5baa9947d6954402b16010000000000001f344a5f748ba0b5af9a86705e5c65728292a3a79684715f4c3926120000000000152a3f54697d93a8bba6917c67523d28130000000000000000000d21364a5e72879cb0b8a494909090919eb1bca7917b66503b26110000000000001b30465b70869aafb19c8770697c91a5b9a5917c68533f2a1601000000000000000000000000000c21364b60758ba0b4cacec2af9c8975624f3c291603000000000000000b2034495e73889db2ac97828385878a9aaeb09b87715d48331e09000000000000172b4053656d6b68666463616e7c8b9aaabab1a08e7b6855422e1a0600081d32475c70869aafbba6917c73706a62594e413425160700000000000013283d51667a8fa4b8a5917c685440374b5f73889cb19d8974604c37230e0000000003192e43586d8297acbfab988f8d8d8c8c826c58432e19040000000003192e43586d8297acbfab988f8d8d8c8c826c58432e19040000000012273c52677c93a8bdcbc5bba794826d5a4734210e0000000000001e33485c6e7d8e9ca8b1b7bdc0b3aba2978b7d6e5e4d3c29170400000000061b3045596e8499adb7a28d77634d38230e000000000000001f344a5f73899fb4b9a695867c7d848e9ba9a39382705f4d3b281603000000000000152a3e52677b90a4b8b09c877272728599afbba59079644f3a25100000000e23384d62778ca1b6ac97836d58432e19040000000000001f344a5f74899fb4ad98836e58485463738597a9a18f7b6855422e1b070000000011263b5065798fa4b9aa95806a55402c17020000000000000000071b2f44586c8295aabeb1a7a5a5a5a6adbcbca7927c67523c2712000000000000192d43586c8397acb39d887361768ba0b4ac97836d58442f1a06000000000000000000000000001025394e63788ea3b8c2bab8b9a592806c594633200d00000000000000071c31465b70859aafaf9a86706f728296abb49f8b75604c37220d000000000000192e43586e83827d7b7977766e6d7b8c9dafbdab9885715d4935200b0003192e42576c8296abbfab968988857d756b5f52433425150400000000000e23384c60758a9eb2ac97846f5c483444596d8397aca48f7a65513c28130000000000152a3f54697d93a8bdb6a9a4a3a3a19a86705b46311c070000000000152a3f54697d93a8bdb6a9a4a3a3a19a86705b46311c070000000013293e53687d93a8bdb9b0b0b19e8a7663503d2a170400000000001f344a5f73879aacb9b6afacaeb4beb5a99b8c7c6b594634210d0000000000172c41556a8094a9baa5907b66513c2712000000000000001f344a5f748ba0b5b29d8a776969707c8b9baba08f7c6a584633200d0000000000000f24384c60758a9eb2b6a18e888888899bafbba7917b66503b26110000000b2034495e73889db2b09b86705c47311c070000000000001e33485d72889db2af99856f5a45455667798c9fab9885715e4a37230f000000000d22374c61768ba0b5ad98836e59442f1a0500000000000000000015293e52667a8fa4b8b9a6999798999faebda8937c67523d2813000000000000152b4054697d94a9b6a18c776272879cb0b09c87725d48341f0a0000000000000000000000000014283d52677c91a6bbb1a5a3adaf9c8975624f3c2a170400000000000000182d42576c8296abb39e89745f687c92a7b8a38f7965503b26110000000000001a2f445a6f859694918f8d88725d6d8093a8bdb4a18d77634e392510000015293e53687c92a7bbb4a59f9d9a92897d706152433322110000000000091d32465b6f8397acb39f8b7764503e3f54697d93a8a994806b56412c17020000000011263b5065798fa4b9bdada2a0a1a39d88735e48331e09000000000011263b5065798fa4b9bdada2a0a1a39d88735e48331e0900000000152a3f54697d94a9bba99c9ba8a693806d594633200d00000000001c3044576a7d90a4afa39a9799a1acbbb9aa9a897663503d2915010000000013283d51667b90a5baa8937d69543f2a15000000000000001f344a5f748ba0b5ae99846e5a545e6c7c8d9eac9a8875624f3c2916020000000000091d32465a6f8398acbdac9f9d9d9d9ea7b7bca7917b66513c2712000000071c31455a6f859aafb39e89745f4a35200b0000000000001b30455a6f8599aeb19c87725d48384a5d708397aaa18e7966523e2a16010000000a1f33485d72889cb1b09b87715c47321d080000000000000000000f23384c6074899eb2b49f8a82838492a7bca9947d68533e291300000000000012273c51667b91a6baa5907b666d8397acb5a08c76614d38230e00000000000000000000000002182d41566b8095aabaa5938f9fb2a592806c594633210e00000000000000152a3f53687d93a8b7a28e786464788ea3b8a8937d69543f2b16010000000000192e43586e8499a8a7a49e897460667b91a7bcbba6917b66513c2712000010253a4f64788ea2b7c3b2a5a2a8a59b8e80706151402e1c0a0000000003172b4054687c90a4b8a794806d5a493b50667a90a5ae99846f5a45301b06000000000e23374c61768ba0b5b5a18f8b8c8d8d8b76604b36210c00000000000e23374c61768ba0b5b5a18f8b8c8d8d8b76604b36210c00000000162b40566b8095abb5a08c8a9eb09c897663503c2916030000000014273a4d6174889b9e918782858f9dadc0b7a693806c58442f1b06000000000f24394d63778da2b6ac97826c58432e19040000000000001f34495e73899eb3ae99846e58434e5e6f8293a5a592806c5945321e0a000000000003172b4054687d92a6babcaca09fa0a0a6b3bda8937c67523c271200000000182d42576c8296abb6a28d77624d38230e000000000000182d41566b8095aab5a08b76614d394053677b8fa3a995826d5945311c08000000051b30455a6f8499aeb49f8a74604b36210c000000000000000000091d31465a6e8397acb7a28e786c7990a5baa9947d69543f2a140000000000000f24394e63788da2b7aa95806b697d93a7b9a5907b66513c2713000000000000000000000000081c31465b6f8599aeb7a28d8396a9af9c897663503d2b180600000000000011263b5065798fa4b9a7927c6860758a9fb4ac97836d58442f1a060000000000172c41566b8295aabbb7a38f7c6c6d8094a9bebda8937c67523c271200000c21364b5f74899eb3bca7948d95a2ac9e8f806f5d4c3a271401000000001125394d6175899cb0b09d8a786655454e63788fa4b19c88725d48331e08000000000a1f33485d72889cb1b49f8b757677777774614c37220c00000000000a1f33485d72889cb1b49f8b757677777774614c37220c00000000172c42576c8297acb5a08b8397aba693806c5946321f0c000000000b1e3144576a7d918f80736c717d90a4b8c2af9c88725e4934200b000000000b20354a5f73899eb3af9a86705b46311c070000000000001d32475c71879cb1b09b86705b4640516376899caf9c8875614d39261100000000000011253a4e63778ba0b4b5a08e898b8c95a9bda8937d68533e29130000000014293e53687d93a7baa5907a66513c271200000000000014283d52667b90a5b9a5907c67533f384c6074889db19c88745f4b37220d00000000172c41566b8095aab7a28d78634e39240f00000000000000000002172b4054687c92a6baa7937d69788ea3b8ab95806a543f2a150000000000000c21364b60748a9fb4ae9a857064798ea3b8a994806a55402c170200000000000000000000000c21364a5f74899eb3b5a08b798da0b3a693806d5a483523110000000000000e23384c61768ca1b6ab97826d5c71879bb0b09c87725d48331f0a000000000014293d52667b8fa3b6bfab998a807d8b9cafc3bba7917b67523c27120000081d32465b70869aafbba6917c8492a2ae9e8d7b695644311d0a000000000a1e3145596c8093a7b9a795847363564f64798fa4b49f8a745f4a341f0a00000000051b3045596e8499adb8a38f7965626263625645321e090000000000051b3045596e8499adb8a38f7965626263625645321e0900000000182e43586d8398adb5a08b7b8fa3af9c8975614e3b2815020000000215283b4e6174888270625760748a9fb4c9b6a18c77624d38230e00000000071c31465b70869aafb39e89735e4934200b0000000000001a2f44596e8398adb29d88735e4a3546596c8094a8a4917c6955402c180400000000000b1f33485c71869aaeb5a18c77747b91a6bba9947d68533e29140000000011263b5065798fa4b9a8937d69543f2a150000000000000f24384d61768a9fb3ab97836e5b473345596e8397aca38f7965503c27120000000014283d52677c92a7bba6917b66513d28130000000000000000000011253a4e62778ba0b4ac98836e778ca1b7ab97826b56402b16010000000000081d32475c71879cb1b39e897460758a9fb4ad98846e5945301b06000000000000000000000011263a4f64788ea2b7b39d88738498abaf9d8a776552402d1b0900000000000a1f34495e73889db2b09b87715c6e8398adb5a08b76624d38240f00000000000f23384c60738799acbdb7a89c94949ba9bacbb7a28e78644f3a2510000002192d42576c8296abbfaa9580738495a8aa998673604d3926120000000002162a3d5063778a9dafb3a29182746862687c92a6b6a18c76604b36210b0000000000172c41556a8095aabda8937d68544c4d4d4538281506000000000000172c41556a8095aabda8937d68544c4d4d4538281506000000001a2f44596e8499afb5a08b75889cb0a5927d6a5744311e0b000000000b1e3144576a7d7463524b5d72889db3c8b9a48f78634e38230e0000000001192d42576c8297abb6a18c77624d38230e000000000000162b4055697d93a8b6a28d78634f3b3d5064788da1ac9884705b47331e0a000000000005192e42566b8094a8baa6917c67788fa4b9aa95806a543f2a15000000000d22374c61768ca0b5ac97826c57422d190400000000000a1e33475b708498acb29e8a7663503c4054697d93a8a894806a55402c170200000010253a4f64788ea3b8a994806a55402b16010000000000000000000b1f33485c71869aaeb29d8873748ba0b4ac97826c57422c17020000000000031a2f44596e8498adb7a28e786470869bafb19c88725d49341f0a0000000000000000000000152a3f54687d92a7bcb09b86707b8fa2b5a795826f5d4a3826140100000000061c31455a6f859aafb4a08b76616a8094a9baa5907b66523d28130000000000091d3044576a7c8e9fafbdb9afa9a9aeb9c7c0ae9b88735f4a36210c000000152a3e53687c92a7bcae99846f778a9eb1a3907c6955412d1804000000000e2134475a6d8092a5b7afa092867c77778698acb7a18c76604b36210b000000000013283d52677b91a6bbac97826d5843383837362f241505000000000013283d52677b91a6bbac97826d5843383837362f2415050000001b30465b70869bb0b7a18c768095a8ae9b8874614d3a2714010000000215283b4e616e68574a59697a8da1b5cab9a48f78634e38230e0000000000152a3f54687d93a8b9a5907965503b261100000000000012273b5065798ea2b7a7937d6a564235495d71869baf9f8b76624d38240f00000000000013283c5065798ea2b6ab96826c778da2b7ab95806b56402b16010000000a1f34495e73889db2af9a86705b46311c07000000000004182c4055697d91a5b9a693806c59473c51667b90a5ad98846e59442f1a050000000d21364b60758ba0b4ac97836d58432e190400000000000000000005192e42566a8094a8b7a28e7873889db3ad98836d58432e1803000000000000172c41566b8095aabba7927c686c8297abb5a18c77624d38230e0000000000000000000000192e43586c8297a6aeae99846e728699acb29f8d7a675543301d090000000000182d42576c8297abb9a48f7a66667b90a5b9aa95806b56422d1904000000000114273a4d5f7082919facb7c0bfbfc2c6beb2a2917d6b5844301c0700000011253a4f64798ea3b8b29d88726e8296aaac9885705b47321e090000000005182b3d5063758899abbcb0a398908c8d95a4b5b7a18c76604b36210b00000000000f24394e63778da2b7b09b86715c4e4e4e4c4a4133221000000000000f24394e63778da2b7b09b86715c4e4e4e4c4a413322100000001c32475c70879cb1b7a18c76798da1b5a4907d6a5744311e0b000000000b1e31435259564a5968778898aabdc9b5a08c76614c37220d000000000011263b5065798fa4b9a8937d68543f2a150000000000000d22364b5f73889cb1ad9986715d4a3743576c8296aba5907b67523e29140000000000000d21364a5e73889cb0b09b8771768ba0b5ac97826b56412c1702000000061c31455a6f859aafb39e89735e4934200b00000000000011263a4e62758a9db1af9c89766553434f64788fa4b19c87725c47321d08000000091e33485d72889cb1b09b86705c47321d080000000000000000000013273c5065798ea2b6a7937d70879cb1af99846e58442f190400000000000013283d52677c91a6bbab96826c687d93a7baa5907b66513c271300000000000000000000001b30465b70828a929ba297826b697c90a3a19c968572604c37220d0000000000152a3f54687d93a8a9a994806a61768ba0adae9a86705c47331e0a00000000000b1d3041526372828f9aa4acb1b4b5b2aba1948473614e3b2815010000000d21364b60758a9fb4b5a08c76677b90a5b39f8a75604b36210d00000000000e213346586a7b8d9eafbfb5aca5a1a2a8b3c2b5a08b75604b36200b00000000000b20354a5f74899eb3b49f8a7563636363625f51402c1804000000000b20354a5f74899eb3b49f8a7563636363625f51402c180400061e33485d72889db3b7a18c7672869aafad9a8773604d3a271401000000021425343f444b5a68778696a5b6c7bfac9986715d48341f0a00000000000e23384d62778ca1b6ab96826c57422d18030000000000081c3045596d8296aab5a18d796653403e53687c92a7aa96826c57422d18030000000000071b3044586d8296aab5a08c7773899fb3ad98836c57422d180300000000182d42576c8296abb6a18c77624d38230e0000000000000b1e32465a6d8295a8b8a694837161544f64798fa4b49f89745f4a341f0a000000041b30455a6f8499aeb39f89745f4a35200b000000000000000000000d21364a5e73889cb0ac97836f869aafb09b866f5a442f1a050000000000001025394e63788da2b7af9b867064798fa3b8a994806a55402c170200000000000000000000192d4255656e767d878f947d69607387928d88827c75624d38230e000000000012263b50657a9093949597846f5d718796989a9c8b76614d392410000000000000122435455463707c8890979ca0a09d978f8375665544321f0c00000000081d32475c71869bb0b9a48f7a65778ca1b7a38e78634e39240f00000000000416283a4c5e6f8091a1b1c0bfb9b7b7bbc4c6b29d88725d48331e090000000000071c31465b70869aafb8a38e7978787878776f5b47321d0800000000071c31465b70869aafb8a38e7978787878776f5b47321d08000a1f34495e73899fb4b7a18c766b8093a7b6a3907d6a5643301d0a00000000071728394a5a69788796a4b4c3c2b2a1907c6956422e1a0500000000000a1f34495e73899eb3af9a856f5a45311c07000000000001162a3e52667a8fa2b6a99683705d4c3b50657990a5af9a866f5a45311c06000000000000152a3e53677b90a4b9a5917c72879cb1ae99846e58432e190300000000152a3f54687d93a8baa5907a65503b271200000000000003172b3e5164788b9eb1b2a0908072665f687c91a6b5a08c76604b36210b00000000172c41566b8095abb7a28d77634e39240f00000000000000000000071b3044586d8296aab19d88738398adb19c87705b46301b060000000000000c21364b5f748a9fb3b49f8a7560758ba0b4ad98846e59442f1b060000000000000000000012253747525b636a737b837c67576a7d7d78726d68625746331f0a00000000000e23384d62757b7c7d808283745f6c7d82838687887c68533e29140000000000000617273645525f6a747c83888b8b88837b71655748382715020000000003192e43586d8297acbda8937d69748ba0b5a59079644f3a250f0000000000000b1d2f405162728393a2b0becaccccd0d3c0ac98846f5a45301b06000000000001192d42576c8296abbca8968f8f8f8f8e8a75604b37220d0000000001192d42576c8296abbca8968f8f8f8f8e8a75604b37220d000b20364b60748ba0b1b7a18c7664788da1b5ad9a8673604d3a2714000000000f2234465768788897a5b4c2bfb2a4948472604d3a2713000000000000071c31465b70869aafb29d88735e49341f0a0000000000000f23374b5f72879aaeb29f8d7a69594a4e63788fa4b29d88725d48331e090000000000000f24384c61758a9eb3ab968270869bb0af9a866f5a442f1a050000000011263b5065798fa4b9a8937d69543f2a15000000000000000f2235495c6e8294a6b8ae9e90847974758597abb7a18c76604b36210b0000000014293e53687c92a7baa5907b66513d28130000000000000000000000152a3e52677b90a4b6a28d788296abb19c87725c47321d07000000000000081d32475c70869bafb8a38f796471879cb1b19c88725d48331e0900000000000000000000081a29363f474f575f676f73634f606c69635e58534d463929170400000000000a1f334657636667696b6c6e6a5a60686b6d6f70737467533e29140000000000000009182735414d5760686e727474736e685f5447392a1a09000000000000152a3f54697d93a8bdac97836d768ca1b6a59079644f3a250f00000000000000112233445564748492a0acb8c1c7c8c4b5a3907c6854402c1702000000000000152a3f53687d93a7afb0a8a4a4a4a4a38f7965503b27120000000000152a3f53687d93a7afb0a8a4a4a4a4a38f7965503b2712000d22374c62778c969da5a18c766071869aaba6a2907c6956432f1a00000004182b3e5163758696a6b5c3bbaea1948676665543301d0e04000000000000192d42576c8297acb6a18c76614c38230e000000000000081c2f43576a7d91a4b7aa998876675b52647990a5b4a08b745f4a35200b000000000000091e32465b6f8498acaf9b86718499aeb09b86705b46301b06000000000e23384d62778ca1b6ac97826c58432e190400000000000006192c3e516476899bacbdaea1968e898a93a2b4b7a18c76604b36210b0000000010253a4f64798fa4b9a994806a55402b1601000000000000000000000f24384c61758a9eb2a7927d7d94a9b39d88725d48331e0900000000000003192e43586c8297acbca8937d696d8398adb5a08b76614c37220d00000000000000000000000b19232b333b434c545c5f56465057544f49443e3933291b0b00000000000004172939474f515254565758574d4e5356585a5c5e5f58493724100000000000000000091724303b444d54595d5f5f5e5a544c4236291b0c0000000000000011263b5065798fa4b9b09b86717d91a5b7a28d78634e39240f000000000000000516263747566573828f9ba5adb2b3b0a6988673604d3925110000000000000011263b5064798f97999b9d9fa0a2a4a5937d6a55402c17000000000011263b5064798f97999b9d9fa0a2a4a5937d6a55402c17000c21364b60717a828a91998c76606a809396928d8884725c47321d0000000b1f33485b6e8293a4b4c4b8aa9d908375675848372e292115060000000000152a3f54697d93a8b9a48f7965503b26110000000000000014273b4e6175889badb6a59586786d676b7d93a7b7a18c76604b36210b00000000000003182c4055697d92a7b5a08b768297acb19c87705c47311c07000000000b2034495e73899eb3af9a86705b46311c07000000000000000f223547596b7d8fa0b0bfb3a9a29f9fa5b1c0b5a08b76604b36210b000000000d22374c61768ba0b5ad98836d58442f1a0500000000000000000000091e32465b6f8498acac98837c93a8b49f89735e49341f0a00000000000000152a3f54687d93a8bdac97836d697d94a9b9a48f7965503b2611000000000000000000000000060f182028303840484a44383d42403a352f2a241f170b00000000000000000b1b29343a3c3d3f404243423b3a3e41434447484a453b2c1a0800000000000000000006121e2831394045484a4a494540382f25190b00000000000000000d22374c61768ba0b5b49f8a808c9badb29e89745f4b36210c000000000000000009192938475664707d8892999d9f9b948879685744311e0a000000000000000d22374c60768083848688898b8d8f9093846f5a46321d00000000000d22374c60768083848688898b8d8f9093846f5a46321d00081c3043535f666d757d858c7660647886827c78736f6857442f1b0000000f24394e62778b9eb0c2b9a99a8c80726558504c47423d332414020000000012273c51667a90a5baa8937d68543f2a15000000000000000b1e3245576a7d90a2b4b3a4968a827c7c8a9baeb7a18c76604b36210b0000000000000011263a4f63778ca0b5a5907b8095aab39d88725c47321d0800000000071c31465b70869bafb39e89745f4a35200e0300000000000005172a3c4e5f708292a3b3c2bdb7b4b4b9c2c7b29d88735e49341f0a000000000a1f34495e73889db2b09b87715c47321d080000000000000000000003172c4054697d92a6b29d897b91a7b5a08b745f4a35200b0000000000000011263b5065798fa4b9b09b8771667a90a5baa7937d68533f2a150000000000000000000000000000040c141c242c33343027292c2b26201b15100a04000000000000000000000b17202527282a2b2c2e2d2826292c2e2f32333431291d0e0000000000000000000000010b151e252b3033343434302b251c12070000000000000000000a1f33485d72889cb1b9a697949caab9a996836e5a46311c080000000000000000000b1a293846535f6b757d8488898782776a5b4b3927140100000000000000091e334759676b6c6e7072737677797b7c7d745f4a341f00000003111c24334759676b6c6e7072737677797b7c7d745f4a341f0001142535424b525a6873707875605d6f716c68635e5a554a3a281500000012273c51667b91a6bac1ae9b8b7b6e6d6e6a65605c575042321f0c000000000e23384d62778da2b6ab97826c57422d18040000000000000215283b4e60728596a7b8b4a89d95919299a8b8b7a18c76604b36210b000000000000000c2034485d71869aafaa96827d93a8b49f89735e48331e090000000000192e43586d8397acb5a28d77624d392b2113040000000000000c1e30425364748595a4b2c0ccc9c9cdd4c1ad99846f5a45311c0700000000061b30455a6f859aafb49f8a74604b36210c000000000000000000000011263a4e63778ca0b5a38e8390a5b7a18c76604c37210c000000000000000d22374c61768ba0b5b4a08b7662778ca1b6ab96826c57422d1804000000000000000000000000000000000811191e1f1c14141716110c06000000000000000000000000000000040c101213141617191814111417191a1c1e1f1d160c0000000000000000000000000000020a11171b1e1f1f1f1b1711090000000000000000000000051b2f44596e8498adc2b5aba9afb3aa9c8b7966533f2b1703000000000000000000000b1a2835424e5865736f7273716d64594c3d2d231a0e0000000000000004172a3c4a5360716f67605f606264666769675845311d00000011212e383e444a5356595e63686d6f6264666769675845311d00000817252f3742576c8380787169625c5c58534e4a4540382c1c0b00000012273c52677c91a7bbbda8937d6c5f74847d7975706c604e3b2712000000000b20354a5f74899eb3af9a86705b46311c07000000000000000b1e30435567788a9bacbcbab1aaa7a7acb7c6b49f8a745f4a35200b00000000000000051a2e42576b8094a9b09b877c91a7b4a08b745f4a341f0a0000000000152b4054697d949da0a3907b6651453e31221000000000000001132435465666768694a2aebac3c9cbc6b7a5927d6955412c18030000000000182d42576c8297abb0a28d78634e39251104000000000000000000000b2034485d71869aafab9c989dadb8a38d77624d38230e00000000000000091e33485d72879cb1b9a48f796573889db2af9a86705b46311c07000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000172c41556a8095aabebeafa5a39f988c7d6d5c4a3723100000000000000000000000000a1724303e53687d8279726b635c554e463e362c1e0e000000000000000d1e2c384e6378837b746d655e5750525453493b29160000091c2e3f4c53595e64696e73787d837b665050525453493b291600000007121b2c42576c83948c857d766f6860585047392c251b0e0000000010253a4f64788da1b4bca7927d695d7288948f8a867d69543f2a1500000000071d32475c70869bb0b39e89735e4934200b0000000000000001142537495b6c7d8e9eaebcc4bfbcbcc0c9c5b19c87725d48331e09000000000000000014283c5165798ea2b5a18c7a90a5b6a18c76604b36210b000000000012273c51667b85888b8f927d695a5a4f402d1a06000000000000061728384858677684919da7afb4b6b3a8998875614e3a2612000000000000152a3f54687d93979b9e917c67523d2f221406000000000000000000051a2e42576b8095a7a9abacafb1b3a48f78644f3a240f00000000000000051a2f44596e8398adbca8947d696f8499aeb39e89745f4a35200b000000000000000000080d1011100d09020001080d1011100d08020000080d1011100d09020000000000000000000000000000020406070907050a0b09030000000000000000000000000000000000040c10100c05000000000000000000000000000000000000000013283d52677b91a6bbb5a1918e8b847a6e5f4f3e2c1a07000000000000000000000000000613293e53687d948e8680777069615a52493c2b1906000000000000000e23384e63788f8f888279726b635c544c40301e0c00000f24384c5d676d73787d83888d92937c68533d3d3f3e372c1d0c0000000000172c42576c8398a099928a837b746c645745311d0900000000000c2135495d718597a8b8ad99887970798ca1a49f97836c57422d180000000001192e43586d8397acb6a18c77624d38230e0000000000000000081a2c3d4e5f6f808f9eacb9c5cfd1d5d0beaa96826d59442f1a0500000000000000000e22364b5f73889cb1a7969097a9b7a28d77624c37220d00000000021424384d5f6c6f7276797c806c6e6d5d4935200b000000000000000a1b2a3a49586673808a949b9fa19e978a7b6a5845321f0b00000000000a1a2a3b50657a808386898d806b594c3f3224160700000000000000000014283d51657a8f92949597999c9ea1907b66503b26110000000000000000172b40556a8094a5a7a998836e6b8296a7a8a28d77634e39240f0000000000000009131c22252625221d160d141c22262625221d160d131c22252625221d160d0300000000000000050d11131517191b1c1e1b191f201d17110b05000000000000000000000000000b1720252521180b000000000000000000000000000000000000000f24394e63788da2b7b39d88787670675d504131210f00000000000000000000000000000013293e53687d94a29a938c857d756d665a4935210c000000000000000e23384e63788fa39c958e8680776f685e4d3a2611000012273c52677b82888d93989ca2a794806a543f2a2a29241a0e000000000000172c42576c8398a9ada69f978f888075604b36200b0000000000061a2e415467798a9aa8b5a5978c878a98a9b8af99846e58432e190000000005172b40556a80949fa3a5907a66513c27120000000000000000000e1f3041516170808f9ca8b3bcc1c3bfb2a18e7a67533e2a16010000000000000000081c3045596d8397abb1a8a5a9b5b8a38f78634e39240f000000000c2032414d545a5f656a6f74797d8377624c38230d00000000000000000c1c2b3a4855616d7780878b8c8983796c5d4c3b281502000000000316283848586674706d7074777b756a5d50423425130000000000000000000e23374b60747a7c7d80838487898c8f7c67523d2813000000000000000012273c51667a8d909194958872687c90929394917b67523d28130000000000000c1a262f373b3b3a37312a202730373b3b3a3731291f2630373b3b3a37312a20140800000000000c182126282a2c2e303233302d3436322b251f19130e08020000000000000000091a28343a3a34291b0d0000000000000000000000000000000000000c20354a5f74899fabada28d77635c544b3f3223130300000000000000000000000000000013293e53687d94a6aea7a09991898278644f3a240f000000000000000e23384e63788fa2b0a9a29a938b847b69543f2a14000011263b5065798f9ca2a7acb1ad9d8d7d6a55402b1614100800000000000000172c41566a7b8b9aa8b7b2aba39c89735e49341f0a0000000000001225384a5b6c7b8b98a3aea9a09c9ea8b6bfac97826c57422d18000000000d21344756677b878b8e91937d69543f2a1501000000000000000001122333435261707d8a96a0a8acaeaba29483715e4b38240f00000000000000000001162a3f53687c91999c9d9fa1a4a6a5907964503b25100000000013283c4f5f686e74798084898e938f78644f3a240f0000000000000000000d1e2f3f4f5e6d776c71747674717164584a3c2e1d0b000000000a1e3245566676857d6e5f5f6275887b6e605242301c080000000000000000101f314456636567686b6c6f717477797d69543f2a1500000000000000000e23384c617277797c7d80837764777b7c7d8082806b56402b1601000000000b1b2a38434b50504f4c463d3239434b50504f4b453c3138434b50504f4c453d322517080000000a1b2a353b3e3f4143454748443f484b463f39332e28221d160c00000000000000142738464f4f47392b1c0e0100000000000000000000000000000000081d32475c70869496989b917c675241382d2114040000000000000000000000000000000013283d5267788897a5b4b4aca59d8d77624d38230e000000000000000e23384d62748493a2b0b6aea79f937c68533d281300000d22374c60758b9fb4bcbdae9e8f7d6f5f4e3b27120000000000000000000013273b4d5d6c7b8a99a8b6bfb19c87715c47321d08000000000000081a2c3d4e5d6c7986919ca5b0b1b3bab6b0a2907c68533f2a150000000011263b5064726e7275787c80836c57422c1a0f010000000000000000051525344352606d78838d939799969084756554412e1b08000000000000000000001025394e6277838587888b8c8f9194917b67523c271200000000162b40566b7c83898e94999da2a5907b66503b261100000000000000000013273b4d5d6d7c8777675f606a7d8275685a4c3a2713000000000e23384d627485958d7d6d5d6b7d928c7d705f4b36210c000000000000000b1d2e3d4a58656a5f5356575a5c63646568604e3b2b1c0d00000000000000091e31445460636467686b6c6c5d646667686a6b6c63513e2914000000000517293948555f64666460594f434a566065666460594e4248555f64666460594f433526150400001528394750535456585a5c5e574e5c605a544e48423c3731291d0e0000000000001c304456636457483a2c1f110400000000000000000000000000000002192e43586d7b7d82838688826b57412c1b100400000000000000000000000000000000000f24374a5a69788796a5b3c0b5a08b75604b36210c000000000000000a1e32455665748492a1b0bebba5907a66503b26110000091e33475c71879bb0beae9f8f8070605141301e0b000000000000000000000b1e2f3f4e5d6b7a8a98a7b5b09b86705b46301b06000000000000000f1f303f4e5c6874808992a3b7aea5a29c928472604d3925100000000012273c52677c8279726b676a6e65533f372c1f0f00000000000000000007162534424f5b6670787d8384827c7266594d40332517080000000000000000000b1f33485b6a6d6f70727477787b80837d69543f2a1400000000152a3f54687d929da3a8adb2aa9a8a7966513c2712000000000000000000172c41566a7b8c968676666173879486786a56422d18030000000e23384d617486979b8c7b6b75899b9c8a75604c37210c0000000000000014283b4c5b68767d6e5f504f5f6d7779766f6457493a2b1a0900000000000002152636434b4e5053575858574e4f50525457575752463a2d1e0e0000000e213447576672797b79756c6153596773797b79746c6051576672797b79756c61534433210e00001c31445764686a6b6e6f717366586c756e68625c56514b453b2c1b0800000000001f344a5f737566584a3d2f221508000000000000000000000000000000152a3e516066696b6e7072746955412c1701000000000000000000000000000000000000081b2c3c4b5a69778795a4b2b49f89735f4a341f0a0000000000000003162838475665738392a0afb9a48f78644f3a240f0000041a2f44586d8397acafa09082706151423223120100000000000000000000011121303f4e5c6b7a8997a5af9a866f5a442f1a0500000000000000021221303e4b57616c75899eb2a0908d888074655543301d0a0000000012273c52677c938e8780787169625a524a3d2c1a07000000000000000000071624313d49576573706c6e6c6869766b5e51433526140100000000000000000e20314151606f76665d5f6264736f6d7065523d28140000000011263b5064798fa3b7bdbaab9b8c7b6b5c4a37230f000000000000000000172c41566a7c8d9f9484746a7d90a395826c57422d18030000000a1e32455668798b9c9a8a7a8092a598846f5b46321d0900000000000000192e43576a79878d7d6e5f5d6d7d8c8f8b827567584938271504000000000000091826303f4f5d676c6d6a635a4d515f686c6c6a62584b3c2c1b090000162a3e516475858f918f898071616576868f918f887d70606475858f918f89807161503e2b1703001f344a5f747c8082838687836f5c7086837c76716b6560584a38251100000000001e33485d718576685a4d3f3226190d00000000000000000000000000000e2133424d515456585b5d5f5a4c3a261200000000000000000000000000000000000000000e1e2d3c4b5968778694a3b19e89735e48331e0900000000000000000a1a29384755647382919faea38f78634e38230e000000162b4054697d93a8a191827162534334241404000000000000000000000000031221303e4d5c6a788896a499846e58432e190400000000000000000312202d39444f5a6f8499ad9c8877736d635647372614010000000012273c52677c93a29b948c857d766e665b4a36220e00000000000000000000091d314455657584806f60576073877c6f615343311d090000000000000000162a3d4f5f6f7d85756556596c80827366594a382511000000000d22374b60758a9fb4bbac9c8d7d6d5d4e3e2d1b0800000000000000000013273a4c5e6f8292a2928374889ba38f7a66523d291400000000021527394a5c6d7d8fa0998a899ca6927d6954402c1703000000000000001a2f44596d82959c8d7d716e7a8b9ca49f93867667564433210f000000000000001125384b5d6d7a828380776b5d60707c83837d75695a4a38261200001c3045596d8293a2a7a49c90806d6f8395a3a7a39b8f7d6c6d8294a2a7a49c90806d5a46321e09001e32475a6d809397989a9c8c7865728797918b8680797467543f2a1500000000001a2e43586c8287786b5d5043372a1e110500000000000000000000000004152431393c3f414346484a463c2e1d0a0000000000000000000000000000000000000000000f1e2d3b4a5967768593a19d88725c47321d070000000000000000000b1a293746556372828f9ea38d77624c37220d00000012273c51657a90a19283726353443525160600000000000000000000000000000312202f3e4c5b6977869599846e58432e1903000000000000000000020f1c273241556a8093a8a38f7b6859504538291a08000000000012273c52677c93a5afa7a099928a827965503b2611000000000000000000000c21374c607384948e7d6e5e6a7d908d8071604c37220d00000000000000001a2f44596d7d8e9484736463768992847667543f2a1500000000091e32475c71879bb0ad9d8e7d6e5f4f3f30200f000000000000000000000b1d2f405263748696a1928391a49d8974604b37230e00000000000a1b2c3e4f60708293a39b9aa7a08c77634e3a26110000000000000000162a3e5164778a9d9c8f85848a99a9aeada495857362503e2c1906000000000000172b4054677a8c979893897b6a6b7d8e97989288786755412e1905001f34495e73889db1bcb8ae9d8a76758a9fb2bbb8ad9c897473899db1bcb8ae9d8a75614c37220d00182b3e506375889badafa895826e73889da6a09a948f7d6a55402b160000000000152a3e53687c92897b6e6155483c2f22160900000000000000000000000006131e24272a2c2e303334322a1e1000000000000000000000000000000000000000000000000f1d2c3b4958667483929d88725c47321d07000000000000000000000b19283745546270808f9e8d77624c37220d0000000e23384d61768c93837364554536261707000000000000000000000000000000000211202e3d4b5967768695836d58432e190300000000000000000000000a15273b5065798e97999784705c4834281a0b00000000000012273c5165778796a4b3b4ada59e8f78644f3a240f000000000000000000000c21364b607385969c8d7c6c74889a9d8b76624d38230e0000000000000000192f44586c7d90a19282726d8093a2927d6955402b1600000000041a2f44586d8397ac9e8f806f605041312112020000000000000000000000122334455667788a9aa1989fac97836e5a45311d080000000000000f2031425364748696a7aeaf9b86715d4834200b00000000000000000e2235485a6d8092a3a19a989da8a69a989fa391806d5b493623100000000000001b30455a6f8397a9ada69a887472879bacada59785715d48331f0a001f344a5f748b9fb4c9c9b9a48f78768ca1b6cac9b7a28d77748ba0b5c9c9b9a48f78634e38230e000e213346586b7d90a3b5b19e8a7674899fb4b4aea28e7965503b2712000000000010253a4f64788d998c807266594d4034271a0e010000000000000000000000010a0f121417191b1e1f1d170d000000000000000000000000000000000000000000000000000e1d2b3a48566473839287715c47321c0700000000000000000000000a19283644536170808f8c76614c37220d0000000a1f34495d728884746455463727180800000000000000000000000000000000000002101f2d3b4958677686836c57422c17020000000000000000000000000d21364a5e737d8284878977644f3a2510000000000000000e2236495968778695a4b2c1b7a18c77624c37220d00000000000000000000081d31445567788a9b9b8b7b7d91a49985705c47331f0a000000000000000015293d4f60718394a09082768a9da18d77634f3b26120000000000162b4054697d949e8f80706151423223130300000000000000000000000005162839495a6b7c8d9eadb1a6927c6854402b170200000000000003142435465767788999a9aa95826c57432e1a05000000000000000005182b3e5062748697a7afadb1aa9988838d9b9d8b7865523f2c180000000000001d32475c72879cb1c2b7a38f78748ba0b5c2b4a08b76604b36210b001e33485d71869aabb5b4ae9e8b7773889bacb5b4ad9d8a7571869aacb5b4ae9e8b76624d38230e000416293b4e60738698abbaa69380768ba0b5c7b29e89745f4b36220d00000000000c21364a5f74899e9d9084776a5e5145382b1f1101000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000d1c2a38475564738386705b46301b060000000000000000000000000a18263543516170808b76604b36210b000000061b3045596e8475655647372819090000000000000000000000000000000000000000010f1d2b3a49586776826b56402b1601000000000000000000000000071b30445665696c6e707373634f3a25100000000000000007192b3b4a5968768695a3b1b5a08b75604b36200b0000000000000000000001142638495a6c7d8e9f9a8b889ba7937d6a55412d190400000000000000000d20314354657688989f908394a69b86725d4935200c000000000012273c51657a8f9080706151423323140400000000000000000000000000000a1b2c3d4d5e6f8090a0b0a18c77634e3a25110000000000000000061728394a5a6a7b8b9b9c8f7a66523d2914000000000000000000000e2133455668798999a6b1ab9d8c7b6f7c8c9c95826f5b47331e0000000000001b30465b708599acb5b2a18d7873889daeb5b09f8a75604b36210b001a2e43576a7c8e9aa09f9b90806e6c7d8f9ba09f9a8f806d6a7d8e9aa09f9a90806e5b48331f0a00000c1e314356687a8da0b2af9b88778da2b7c2ad99846f5a46311c080000000000081d32465b70869aaea195897b6f6256493c2f1f0e0000000000000000010a11171b1d1d1b18120b020000000000000000000000000000000000000000000000000000000000000c1a293746556473836f5a442f1a0500000000000000000000000000091725334251617080745f4a341f0a00000000172c415569746657473829190a00000000000000000000000000000000000000000000000d1c2b3a4958687468543f2a15000000000000000000000000000014273948515457595c5e5f564634200c00000000000000000d1d2c3b4a5867768593a2b09f8b745f4a341f0a0000000000000000000000091a2b3d4e5f708292a29b9aa6a28d7864503b2712000000000000000000021425364859697a8c9ca098a0a995806c57432e1a0600000000000e23384c61768c827161524334241505000000000000000000000000000000000e1f2f4051617182929d9b87725d4934200b0000000000000000000a1b2c3c4d5d6d7c89878775604c38230f00000000000000000000031527394a5b6b7a89959c998d7d6e5e6d7d8e9285745f4a341f000000000000182d4155697c8e9ba09d9484726d80909ca09c92826f5b47321e090014273a4d5f6f7c868b8b877d716260707d878b8a867d70615f6f7c878b8b867d7162513e2b18040000021426394b5e708395a8b7a4907c8fa3b8bda8937d6a55402c1703000000000002192e43586c8297acb3a6998d8073675a4d3d2b180400000000000009141e262c303232302c261f150c0100000000000000000000000000000000000000000000000000000000000b192837465565736b58432e190400000000000000000000000000000715243342516170705d49341f090000000012263a4c5a5f584839291a0b000000000000000000000000000000000000000000000000000d1c2b3a4a585f594a39251100000000000000000000000000000a1b2a363d3f424447494a44382817040000000000000000000e1d2c3a495866758492a09f89735e48331e090000000000000000000000000e1f30415263738595a6aeb09c88725e4a35210c0000000000000000000007192a3b4c5d6d7d8f9fadb2a48f7a66513d29140000000000000a1f34495d7282726253443425160600000000000000000000000000000000000112223343536373838887826c57432e1a06000000000000000000000e1e2f3f4f5e6e7371706b5a46321d0900000000000000000000000a1b2c3d4d5c6a778287867c6f60505f70808274665744311c00000000000012263a4d5f707d878b88827566627280888b88807363523f2c1804000b1e3041515e6a727474716b6153515f6a727474716a6052515f6a727474716b61534433220f00000000091c2e415366788b9eb0ac99858fa4b9b7a38e7965503b271200000000000000152a3f54697d93a8b7b7ab9e9185786b5b48331f0a00000000000d1a27313a4045474745413a32281e130600000000000000000000000000000000000000000000000000000000000a19283747565f5b4e3c2915000000000000000000000000000000000615243343525d5d51412e1a06000000000a1d2e3c464a453a2b1b0b0000000000000000000000000000000000000000000000000000000d1c2c3b454a463b2d1b090000000000000000000000000000000c1922282a2c2f31343430271a0b00000000000000000000000e1c2b3a4857657382919f89735e48331e0900000000000000000000000001122334455666778898a8ab96826d58442f1b0700000000000000000000000c1d2e3f4f60708292a2b29e8a75604c37230e000000000000061b3045596d736354443526160700000000000000000000000000000000000000051525364655657372707064513d291400000000000000000000000011213140505c5f5c5b584d3d2a17030000000000000000000000000e1f2f3e4c59656d7270695e5142526170706356483928150000000000000a1d3041515f6a7274736e655754616c7374736d635545342210000001122332414d575d5f5f5d574e43424e575d5f5f5c564e42414d575d5f5f5d574e43352616040000000000112436495b6d8093a6b5a3999dacbfb29e89745f4b36220d0000000000000011263b5065798d99a6b2bcafa3968976614c37220d000000000d1c2b38444d555a5c5c5a554e453b3024170900000000000000000000000000000000000000000000000000000000000a192938444a473e301f0d00000000000000000000000000000000000615253441494941332311000000000000101e2a323431281c0d00000000000000000000000000000000000000000000000000000000000e1d293134322a1d0f0000000000000000000000000000000000060e1315171a1c1f1f1c1409000000000000000000000000000d1c2a3947556472829188725d48331e0900000000000000000000000000051627384959697a8a9a9c917c68533e2a15010000000000000000000000001021324253637384949d98846f5b46321d0900000000000000162a3d4f5c5e5545362617080000000000000000000000000000000000000000000818283747565f5d5b5b544635220e000000000000000000000000031322323f484a4746443c2f1f0d000000000000000000000000000111202e3c4852595c5c564d403444535d5d5245382a1b0a00000000000000122333414e575d5f5e5a52474450585e5f5e595045372817050000000514232f3a43484a4a48433b32303b43494a4a47423b30303a43484a4a48433b3125170800000000000007192c3e516376899cafb4aeb0bbc2ae99846f5a46311c08000000000000000e23384c5f6f7b8894a0acb8b4a38f78644f3a2510000000091a2b3a495660696f72726f6a61584e423527190a00000000000000000000000000000000000000000000000000000000000b1a273034332b2012010000000000000000000000000000000000000716242e34342e231505000000000000000d171d1f1c150b000000000000000000000000000000000000000000000000000000000000000c161d1f1d170c00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000c1b2937465463728288725c47321d070000000000000000000000000000091a2b3b4c5c6c7b89878776624d3924100000000000000000000000000003142535455666758688877d6955402c1803000000000000000e20313e4849433727180800000000000000000000000000000000000000000000000a192938444a4846464137281705000000000000000000000000000414222d333432302f291e1101000000000000000000000000000002101e2a353e444747423a2f26354149494135281b0c0000000000000000051524303b43484a49453f35323d44494a48443d3427190a000000000005121e272f333434332e281f1e282f343434322e271e1e272f333434332e281f140700000000000000000f213447596c8092a5b8c3c5cdbea994806a56412c180300000000000000091c3042515e6a76838f9aa6b2a7917c67523d2813000001142638495867737d848888847d756b5f53453728190a000000000000000000000000000000000000000000000000000000000009141c1f1e180f02000000000000000000000000000000000000000006121a1f1f1a11050000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000010d1519191613100d0906030000000000000000000000000000000000000000000000000b1a28364554637282705b46301b060000000000000000000000000000000d1d2e3e4e5d6d7471706c5b47331e0a00000000000000000000000000000717273848576774727070624f3b261200000000000000000213212c33343026190a000000000000000000000000000000000000000000000000000b1a2730343331302d25190a0000000000000000000000000000000410191e1f1c1b1a150c0100000000000000000000000000000000000d18232a2f32312d271d17242e34342e24170a0000000000000000000006131e282f333434312b23202930343433302a21160a00000000000000000b141a1e1f1f1e1a140c0b141b1f1f1f1d1a130b0b141a1e1f1f1e1a140c0200000000000000000004172a3d506275899cafc2d6cfbaa5907b66513d2813000000000000000000132433404c5965707c8995a1aa95806a55402b1601000a1d30435567768590989c9d9992887d70635546372717070000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000b14181815120e0b080501000000000000000000000000000000000001080c0d0b080503000000080e110f0c08050200000000000000000002121f292e2f2b2825211e1b1814110e0b0704000000000000000000000000000000000000000a182736455464736d5945301b05000000000000000000000000000000001020303f4f5c5f5c5b594e3e2b18040000000000000000000000000000000a1a2a3949585f5d5b5b5344321f0c000000000000000000030f191e1f1b140900000000000000000000000000000000000000000000000000000009141c1f1e1c1b191208000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000060f161a1d1c19130a06121a1f1f1a1106000000000000000000000000010b141b1e1f1f1c170f0d151b1f1f1e1b160e0400000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000d203346596c8093a6b9cdcbb6a28d77624d38240f0000000000000000000615222f3b47535f6b77838f9b98836e59442f1a05001126394d60738595a3acb1b2ada59b8f82736455453525140200000000000000000000000004090c0d0d0b070200000000000000000000000000000000000000050d11120f0d0a070503000000000000000000000000000000000001111e282d2d2a2723201d1a1613100d0906020000000000000000000008141c2122201d1a181513101b232624211d1a1714110c0500000000000f20303c4344403d3a3633302d292623201c1810050000000000000000000000000000000000000918273646555e5c4f3d2a160200000000000000000000000000000000021221313e484a4746443d30200f00000000000000000000000000000000000c1b2b3a454a484646403526150300000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000050e141615110c0905020000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000003162a3d5063768a9eb1c6c8b39e89745f4a35200d0000000000000000000005111d2a36414d5965717d8c9b87715c47321d0800172c4055697c90a2b3c0c6c7c1b8ac9f92837363534231200e000000000000000000000811191e222222201c160f07000000000000000000000000000000000c1821262724211f1c1a18150e0300000000000000000000000000000e1f2f3b42423f3c3835322f2b2825221e1b170f040000000000000007172530363735322f2d2b28252d373b3936322f2c292621180b00000000182b3e4e585855524f4b4845423f3b3835312c231607000000000000000000000000000000000000091828374349483e31200e0000000000000000000000000000000000000313212c333432302f2a1f12020000000000000000000000000000000000000d1c2831343330302c2317080000000000000000000000000000000000000000000000000000000000000000000000000000000003080c0e0e0c080100000000000000000000000000000000000000000000081621292b2a25211e1a17120c0300000000000b14181814100b0601000005070601000000000000000000000000000000000000000000060d1216161614100b040000000000000000000000000000000000000000091015171716120d060000000000000000000000000000000000000000000000000000000000000000000000000d2034475a6f859aafc4c8b39e8a7663503d2a170300000000000000000000041422303e4c5b697786939f8a74604b36210c001c31465a6f8498acbfccc2bcbbbdbdb0a1928271604f3d2b190600000000000000010f1b242d3337373735302a231a1106000000000000000000000000000a1b2a353b3c393734322f2e2921140500000000000000000000000000182b3d4d575754514d4a4744403d3a3733302b221506000000000000122535434b4c4a474442403d393e4a504e4b4744413e3b34291b0a0000001e33475b6b6d6a6764605d5a5753504d4a4640342514010000000000000000000000000000000000000a19263034332c21130200000000000000000000000000000000000000030f191e1f1d1b1a160d0100000000000000000000000000000000000000000b151c1f1e1b1b1811060000000000000000000000000000000000000000000000000000000000000000000000000000000710171d212323211c150c0200000000000000000000000000000000000000051626343d403e3a36332f2b27201507000001111e282d2d2924201b161112191c1b16110c070200000000000000000000000000000005101a21272b2b2b29251f180f060000000000000000000000000000000006121d252a2c2c2b27211a100500000000000000000000000000000000000000000000000000000000000000000000091e33485d72889cb2c7cdb9a693806c594633200d00000000000000000000122232404e5c6a788795a3a28e78634e3a2510001f34495e73889db2c7bbafa7a5a9b0bbb0a08f7d6c5a4836231000000000000002121f2c3741484c4c4c4a453e362d23180c0000000000000000000000001528394750514e4c494744433d322312000000000000000000000000001e32475a6a6c6966625f5c5855524f4c48453e3324130100000000001b2f425360625f5c5a5754524d4b5c6563605c59565350473928150200001f344a5f7483807c7876726f6c6865625f5b5243311e0a0000000000000000000000000000000000000009141b1f1e190f030000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000040f1a232b313638383630281f13060000000000000000000000000000000000000e2134445156534f4b4844403b32251604000e1f2f3b42423e39342f2b26252e32302b25201c17130e0500000000000000000000000916222d363c4040403e39332b23190e020000000000000000000000000006152430393f4242403c352d2217090000000000000000000000000000000000000000000000000000000000000000000c21364b60758ba0b4cacec2af9c8975624f3c2916030000000000000000081c2f40505e6c7a8997a5b3a6917c67523d2814001f344a5f748ba0b5bdac9d9390949dabbaad9c8a7765523f2c180500000000001020303d4a545c6162625f59524a4035291d1002000000000000000000001c314457646663605e5c5a585041301c090000000000000000000000001f344a5f74827d7a7774716e6a6764605d5a5142301d0900000000001f34495e717774716f6c6a675f51667a7874716e6b68645745311d0800001d32475c708694918e8b8884827d7977736f604d39240f000000000000000000000000000000000000000000000000000000000000000000000000000000060f161c1f1f1f1c18110a000000000000000000000000000000000000060f161c1f1f1f1c18110a000000000000000000000000000000000000000001080d101211100c07010000000000000000000000000000000916212d363f464b4d4d4a443b31241506000000000000000000000000000000000014293d51626b6864605d59554f4333210e00182b3d4d5757534e49443f3a364147453f3a35302c2722180b00000000000000000008182734404950555656534e473f362b201306000000000000000000000002132433414c535757555049403427180900000000000000000000000000000000000000000000000000000000000000001025394e63788ea3b8c2bab8b9a592806c594633200d00000000000000000e23374b5e6e7c8b99a7b5bfaa95806b56412c18001f344a5f748ba0b3b1a18e807a808d9cadb9a795826f5b4834200c000000000b1d2e3e4e5b6770767777736d665d52473b2e2012030000000000000000001f344a5f747b787673706f6d5f4c38230e0000000000000000000000001d32475c708693908d898783807c7876726e604d38240f00000000001e33485d718689878482807c6a5665798d8a8783827d75604b36210c0000192e43586c8297a6a3a09c999693908c897b66503b261100000000000000000000000a1115161412100f0b0300000000000000000000000000000000000c18232b31343434312c251d12060000000000000000000000000000000c18232b31343434312c251d120600000000000000000000000000000000010b151c2225272725211c150d04000000000000000000000000081827333f49535a5f62625f584e4233241505000000000000000000000000000000051a2e43576c827c7875716e6a61513e2915001e32475a6a6c67625d59544e45545c59534f4a45403c35291a09000000000000000416263644525c656a6b6b68625b52483d31241709000000000000000000000c1f3142515f686c6c6a645c5245362717050000000000000000000000000000000000000000000000000000000000000014283d52677c91a6bbb1a5a3adaf9c8975624f3c2a1704000000000000000f253a4f64798d9ba9b7c5b9aa99846f5a45301b001f34495e73899f9d9c9a8772656e7d90a3b7b29f8b7763503b27130000000215283a4c5c6c79848b8d8c8882796f64584c3e3021120300000000000000001e32475b70858e8b8987857b66513c2712000000000000000000000000192e43586d8397a5a29f9b9895918f8b887b66503b26110000000000192e42566b80949c99979485705c62778d9f9b98968d77624c37220d0000152a3f54687d93a8b8b5b2aeaba8a5a1937c68533d2813000000000000000000000f1c262b2b292725241f160a0000000000000000000000000000000d1c2a353f45494a4a46403930241708000000000000000000000000000d1c2a353f45494a4a46403930241708000000000000000000000000000006131e2830363a3c3c3a36302920170c010000000000000000000013253645515c666e747777736b6051423322110000000000000000000000000000000b1f34485d7187928e8b87837d6c57422c17001f344a5f74827c77726d69604f62716d68635e5a555147382614000000000000001022334454626f798082827c766e655a4f423527180900000000000000000014283b4e60707c828380786f63544534221000000000000000000000000000000000000000000000000000000000000002182d41566b8095aabaa5938f9fb2a592806c594633210e000000000000000e23384d62778da2b7c7b8aa9b8c7c6d5945301b001e33485d72888a88878683745f6073889db2bba793806a56412d180300000a1e314457697a8a979fa3a19d968d8276695c4e3f3021110100000000000000182d41566a8094a09e9c94806a55402b16010000000000000000000000152a3f54697d93a8b7b3b0adaaa7a3a0937c67523d2813000000000013283c5065798ea2afac9f8a766160748ba0b0ada38d77624d38230e000011263b5065798fa4b9bdaa9c999c9fa394806a543f2a150000000000000000000d1e2d3940403e3c3a393327190900000000000000000000000000091b2b3a47525a5e5f5f5b554c41352617060000000000000000000000091b2b3a47525a5e5f5f5b554c4135261706000000000000000000000000071624303b444b4f52514f4a443c33291e12050000000000000000001b2f4354626e7983898d8d887d706151402f1d0a00000000000000000000000000001025394e62778ca0a39f9c907c68533f2b16001d32475c7086918c88837d6b56667b837d78736f6a6456432f1b06000000000006192c3f516272828c949796928a82776c6053453627180900000000000000001a2f43576b7d8f9797948c82726352402c19050000000000000000000000000000000000000000000000000000000000081c31465b6f8599aeb7a28d8396a9af9c897663503d2b18060000000000000c21364b60768ba0b5b8a99a8c7c6d5e4f3d2a16001c31455a6d767472706f6e695a5a6f869bb0c2ae99856f5a45311c0600001125394d61748799a8b3b8b6b1a99f94887a6c5d4e3f2f1f0e0000000000000013273c5165798fa4b3ad98836e59442f1a05000000000000000000000012263b5065798fa4b9beab9d9a9da1a4947d69543f2a1500000000000d21364a5f73889cb0b9a5907b675e73889db3b9a48f78634e38230e00000d22374c61768ba0b5b8a38e84878b8e91826b56412c17020000000000000004182b3c4b545653514f4e45372614000000000000000000000000001326394958656e73747370685f534435241300000000000000000000001326394958656e73747370685f5344352413000000000000000000000005162534424e575f646766645f5850463c3023160700000000000000001f34495e72808c969ea2a29b8f806f5e4c3a27140100000000000000000000000000162a3f53687c91a6b8b39f8a76614d39241000192e43586c8297a19c97846f5a687d93928d888480725d48331e0900000000000d2135495c6e80919fa8acaba69e958a7d7063544536271707000000000000001e33485d72879bacaca89f91826f5c4834200b00000000000000000000000000000000000000000000000000000000000c21364a5f74899eb3b5a08b798da0b3a693806d5a483523110000000000000a1f34495e73899eb3a99a8b7b6d5e4f4031200e00162b3e4f5d666764605d5b5a5c6170869bb0c5b29d88725d48331e090000172b4054687c91a4b6c6c4bbb8b8b1a5988b7b6c5d4d3d2c1b090000000000000e22374c60758a9fb4b19c87725d48331e0900000000000000000000000e23384c61768ba0b5b8a38e86888c8f93826b56412c170200000000071c3044586d8296aabfaa96826d5c70879cb1b9a48f79644f3a250f0000091e33485d72889cb1b9a48f7a7275787b806c57422c170200000000000000091e33475a696b686664625543301c07000000000000000000000000182d4256677682898b89847c70625342301d0900000000000000000000182d4256677682898b89847c70625342301d090000000000000000000012233443525f6a73797b7b78736c63594e4133251607000000000000001f34495d708598a9b1b7b7ac9e8d7b695744311d0a000000000000000000000000071b3044596d8397abc0ad9985705b47331e0a00152a3f53687d92a7b19d88735e6a8095a7a29d998b75604b36210c000000000014283c5064788c9eafbcc1c0bab2a79c8f8272635445352514030000000000001f344a5f748b9fb4c1bcaf9f8c77634e39240f000000000000000000000000000000000000000000000000000000000011263a4f64788ea2b7b39d88738498abaf9d8a776552402d1b090000000000061c32475c70879ca8998b7b6c5e4f4031221302000e21364b60757c787672706f71757d8ea0b4c8b39f89735e48331e0900001b30455a6e8398acc0beb1a7a3a3a7afa89a8b7b6b5a4a392715030000000000091e32475c70869aafb5a08b76614c37220d00000000000000000000000a1f34495d72889cb1b9a48f797376797c826c57422c17020000000000152a3e52677b90a4b8b09c877272728599afbba59079644f3a25100000051b2f44596e8498adbda8937d696063676a62513e2a1500000000000000000b21364b6076827d7b79735f4a35200b0000000000000000000000001a2f445a6f85949da09e988f82705f4c382410000000000000000000001a2f445a6f85949da09e988f82705f4c3824100000000000000000000b1d2f415261707d888e91918e8880766b5f5143342516050000000000001a2e4154687b8fa2b6c5c7bbab998673604d3925110000000000000000000000000c21354a5e73889cb1bca7937d6a55412d18040011263a4f64798ea3b5a18c77626c8397acb6b2a38d78634e39240f0000000000192d42576b8094a8bbc7bbb2afafb3ad9f91827263534232200f0000000000001e33485d72879cafbfc4bba6917b66503b26110000000000000000000000000000000000000000000000000000000000152a3f54687d92a7bcb09b86707b8fa2b5a795826f5d4a3826140100000000001a2f445a6f8499998a7b6c5d4e403122130400000a1f34495e73898e8b888786878a929cacbdc3b09b87715c47321d0800001e33485d72889cb2c1b0a0948d8e939ca7a999897867564433210e000000000004192d42576c8296aab9a48f7965503b26110000000000000000000000061b30455a6f8499adbda8937d696165686b63523e2a150000000000000f24384c60758a9eb2b6a18e888888899bafbba7917b66503b2611000000172c40556a8094a9beac97836d584e5254504434220f0000000000000003132233485c718693918d77624d38230e000000000000000000000000182d42576b80959999a0ac9f8f7b68533e291400000000000000000000182d42576b80959999a0ac9f8f7b68533e291400000000000000000114273a4d5e70808f9ba3a7a6a29b93897c706152433423120100000000001225384c5f72869aadb0b3bdb6a3907c6855402c1804000000000000000000000012273b5064788da2b6b6a28d78644f3b261200000d21364b60758a9fb4a5907a666f8499afc4bba6917b66513c271200000000001c31465b70869aafc3b8a99f999a9ea6afa0918270604f3e2c1a0800000000001b2f44586c8091a1acafac9f8d79644f3a25100000000000000000000000000000000000000000000000000000000000192e43586c8297a6aeae99846e728699acb29f8d7a675543301d090000000000182d42576c82978a7a6b5d4e3f30221304000000071c31465b70869ba09d9b9b9c9fa5aebac0b5a694806c58432e1a0500001f344a5f748a9fb4b7a492827778808997a5a797867362503e2b1805000000000014293e52677c91a6bba8937d69543f2a15000000000000000000000000172c41566b8095aabfac97836d58505356514535230f000000000000091d32465a6f8398acbdac9f9d9d9d9ea7b7bca7917b66513c271200000013283d52667b91a6bab09b87715c473d3f3c352c201000000000000000112131404d586d8297a48f79644f3a2a1b0c000000000000000000000014283d52677b8c84858e9dab96826b56402b160100000000000000000014283d52677b8c84858e9dab96826b56402b160100000000000000091c3044576a7c8e9eacb7bcbbb7afa69b8e8070615141301f0d0000000000091c3043566a7d919d9ba0adbdac9884705b47331e0a0000000000000000000003182c41556a7d93a7bcb09c88725e4a35210c0000081d32475c71869bb0a8947d6970879cb1c6bea9947d6954402b1601000000001f34495e73899eb3bcaa9a8c84858a94a0ae9f8f7d6d5b4a372513000000000015293d50627383909799979082705d4a36210d00000000000000000000000000000000000000000000000000000000001b30465b70828a929ba297826b697c90a3a19c968572604c37220d0000000000152b40546a808a7a6b5c4d3f302112040000000000192e43586d8397acb2b0b0b1b4b9b7b3aca397887664513d29150000001f344a5f748ba0b5b09c887464646c788797a7a391806d5a4835220f00000000001024394e63778da1b6ac97826c58432e1904000000000000000000000013283d52677b91a6bbb09b86705c473e403e352b1f0f00000000000003172b4054687d92a6babcaca09fa0a0a6b3bda8937c67523c27120000000f24394e63778da2b6b49f8a7560504f4f4e493e2e1d0a00000000000b1d2e3f4f5e6b757d94a7917b675548392a1b0b000000000000000000000f24394e62777a70708092a5927d69543f2a15000000000000000000000f24394e62777a70708092a5927d69543f2a1500000000000000000f24384c60738799acbcbbb1a9a8aaafac9e8f80705f4e3c2b1906000000000014273a4e61758889868f9fb2b39f8a76614d38240f00000000000000000000091d32465b6f8499adbfab96826d58442f1b06000003192e43586d8297acac97836d73889db3c8c1ac97836d58432e1904000000001f344a5f748ba0b5b4a08d7b6f7076828f9fad9c8b79675542301d0a000000000d2033455564727c8384837c716353412e1b070000000000000000000000000000000000000000000000000000000000192d4255656e767d878f947d69607387928d88827c75624d38230e000000000013283d53687c7a6b5c4d3e2f211203000000000000162b4054697d94a9bec2b2a8a5a5a29e999086796a594734210e0000001f344a5f748ba0b5ad98836d58505a68788a9bad9d8a7764513e2b1804000000000b2035495e73889db2af9b86705c47321d0800000000000000000000000f24394e63778da2b7b49f8a74604f4e4e4d483d2d1c0a00000000000011253a4e63778ba0b4b5a08e898b8c95a9bda8937d68533e29130000000b20354a5f74899eb3b8a38e7867666464635c4c3a2612000000000114273a4c5d6d7c88909ba893807366574839291807000000000000000005162738485c6c6b6f70778d998875634f3b261100000000000000000005162738485c6c6b6f70778d998875634f3b2611000000000000000015293e52677b8fa3b6bbac9e9593959ca6ae9e8e7d6b5a4836231000000000000b1e3245596c8075708396aab9a5907b66523d2914000000000000000000000f23384c60758a9eb3b9a5907c67533e2a1501000000152a3f54687d93a8b09b8771758ba0b5cac5b09b86705c47321d08000000001f344a5f748ba0b5af9a85705d5b64718291a2a89785725f4c3926130000000003162737465560686d6e6c6860544535241100000000000000000000000000000000000000000000000000000000000012253747525b636a737b837c67576a7d7d78726d68625746331f0a000000000011263b4f63736c5c4d3e2f2011030000000000000012273c51667b90a5bab8a59590908d8a847d73685b4c3b2a18050000001e33485e73889db3af99846e59444a5b6c7d90a3a795826e5b4734200c00000000071b30455a6f8499adb39e89745f4a36210c00000000000000000000000b20354a5f74899eb3b8a38e7865646363625a4b3926110000000000000b1f33485c71869aaeb5a18c77747b91a6bba9947d68533e2914000000071c31465b70869aafbba7927c7b7b7979786955402b1601000000091d314457697b8c9aa4acaf9e91847566574736251302000000000000000f2234455665737d8587858e847a6a58463727180800000000000000000f2234455665737d8587858e847a6a58463727180800000000000000192e43586c8296aabfaf9d8e827c808995a3ac9b89776553402d1a07000000000216293d50626d65667a8fa3b8aa95826b57422d190400000000000000000014293d52667a8fa4b8b4a08b76624d3924100000000011263b5065798fa3b49f8a75778da2b7ccc8b39f8a745f4b36210c000000001f344a5f74899fb4ad98836e58475362728496a9a28f7c6956422f1b0800000000091e33485c6d6f6d6b68675e4e3b271706000000000000000000000000000000000000000000000000000000000000081a29363f474f575f676f73634f606c69635e58534d463929170400000000000c203446565f5b4e3e2f20110200000000000000000f24394e63778da2b7b5a08b79797774706960564a3d33291b0b0000001c31465b70869bb0b09b86705c473d4e6073879aae9e8a77634f3b27130000000000172c41556a8094a9b7a28d78634e3925100000000000000000000000081c31465b70869aafbba6927c7a797878776954402b1601000000000005192e42566b8094a8baa6917c67788fa4b9aa95806a543f2a1500000001182d42576c8296abc0ac9b9391919090836d58432e19040000001024394d60738799aab8bfbcaea2948575645443311f0d00000000000005182b3e51637384919a9c99948a7d716355453626150400000000000005182b3e51637384919a9c99948a7d71635545362615040000000000001c31475c70869bafbba793806f676c778595a6a795826f5c4936230f00000000000d2033445258546074899eb3af9a86705b46321d080000000000000000051a2e43576c8295aabeae9a86705c48331e0a000000000d22374c60758b9fb4a28d787990a5bacfccb7a28d78634e3a2510000000001e33485d72889cb2af9a856f5a45445567798c9fac9986725f4b37230f000000000a1f34495e738683807d7b6a56412e1d0d000000000000000000000000000000000000000000000000000000000000000b19232b333b434c545c5f56465057544f49443e3933291b0b00000000000004172838444a473e302011020000000000000000000c21364b5f748a9fb4b8a38d776463605b55504f4e4d46392917040000192e43586d8297acb39e89745f4b3644576a7d92a6a6937d6a56422e1a060000000013283d51667b90a5baa6917c67523e2914000000000000000000000002192d42576c8297abc0ac9a9190908f8f836d58432e190400000000000013283c5065798ea2b6ab96826c778da2b7ab95806b56402b1601000000152a3e53687c92a7bcb9aca8a7a7a59b86705b46311c07000000152a3f53687c90a3b6c7bfbbbcb2a3938371604e3c2a170400000000000c2034485b6e8292a2aeb1aea69c9082736354433321100000000000000c2034485b6e8292a2aeb1aea69c9082736354433321100000000000001f34495e73899eb3b6a28d776352596677899bae9f8c7966523e2b170300000000041626343f43465b70869aafb39e89745f4b36210c00000000000000000b1f34485d71869bafbea994806b56422d190500000000091e33485d72879cb1a6917b7c93a7bcbcb9bba6917c67523e2914000000001b30455a6f8499aeb19c88725d4837495c6f8396aaa28e7a66523e2a1602000000071e33485e738898959485715d4b3b2b1c0f01000000000000000000000000000000000000000000000000000000000000060f182028303840484a44383d42403a352f2a241f170b00000000000000000b1a273034332b20120200000000000000000000081d32475c71879bb0baa590796a68676766656463625746331f0a0000152a3f54687d92a7b7a38e7965513c3b4e62768b9fae9a86715d4934200b000000000f24384d62778ca1b6aa95806b56412d18030000000000000000000000152a3f53687d93a7bcb8aba7a5a5a49b86705b46311c070000000000000d21364a5e73889cb0b09b8771768ba0b5ac97826b56412c170200000011263a4f64798fa3b8bbaa9e9c9d9f9e89735e49341f0a000000192e43586d8297abbfb8aba5a7aeb1a1907d6b594734210e000000000013273b4f63778b9eb0c0c7c2b9ada092827161503f2d1b09000000000013273b4f63778b9eb0c0c7c2b9ada092827161503f2d1b0900000000001f344a5f748ba0b5b49f89745f60615e6b7d92a7a995826e5a46321e0900000000000817222b2e42576c8297acb7a28e78644f3a251000000000000000001125394e63778ca0b5b8a38f7a65513c28130000000000041a2f44596e8398ada994808095aab6a9a4abaa95806b56412d1803000000182c41566b8095aab5a08b76624d394053667a8fa3aa96826d5945311c08000000001c31465b70869aaba08d7a6959493a2d1f120500000000000000000000000000000000000000000000000000000000000000040c141c242c33343027292c2b26201b15100a040000000000000000000009141c1f1e180f020000000000000000000000031a2f44586d8397acbca79380807d7c7c7b79797875624d38230e000011253a4f63788da1b5a994806c584433475c70859aaea18c77634e3a2511000000000b1f34495e73889db2ae99856f5a46311c07000000000000000000000011263b5064798fa3b8bcab9f9d9fa09d88735e49341f0a000000000000071b3044586d8296aab5a08c7773899fb3ad98836c57422d18030000000d22374c60758b9fb4b4a08c878889898976614c37220c0000001c31475c70869bb0beab9a90929ca9ad9b897663503d2a170300000000182c41566a7d93a7bac0b3adacb1b0a090806e5c4a3826130000000000182c41566a7d93a7bac0b3adacb1b0a090806e5c4a38261300000000001f344a5f748ba0b5b39d88725f7276736f778da2b19e8a75614d38240f000000000000050f162a3f54697d94a9bba7927c68533e29140000000000000001162b3f53687c92a6bab29e8974604b37230e000000000000162b40556a8094a9ad98848397acab988f9bae99856f5a46311c0700000013283d52667b90a4b9a5917c685340374b5f73889cb19d8974604b37220e00000000182d42566b8094a8aa98877667584a3d302316080000000000000000000000000000000000000000000000000000000000000000000811191e1f1c14141716110c0600000000000000000000000000000000000000000000000000000000000000000000162b40556a8094a9beae9d95949493929190908f7965503b261000000c2035495d72879bafaf9b8873604c3941566b8095aaa6927c68533f2a1500000000061b30455a6f8499aeb29e89735f4a35200b00000000000000000000000d22374c61768ba0b4b5a08d88898b8b8b76614c37220c00000000000000152a3e53677b90a4b9a5917c72879cb1ae99846e58432e1903000000091e33485d71879cb1b5a08b767273737371604b36210c0000001e33485e73899eb3b7a28e7b7d8b9baba693806d5a46331f0b000000001c31455a6f8499aec2b1a298979ea9ae9d8c79675542301d09000000001c31455a6f8499aec2b1a298979ea9ae9d8c79675542301d09000000001f344a5f748ba0b5b49f89735f74898886828ba0b5a4907b67523e2914000000000000000012273c51667b90a5baab96826c57422d1904000000000000071c3045596d8397acc0ad98846f5b46311d0800000000000013273c51667b90a5b19c88869aafa6918095aa9d88735e4a35200b0000000f23384c61758a9fb3ab97836f5b473445596d8397aca38f7965513c27130000000013283c5064788c9fb2a5958676685b4e41342617080000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000012273c51667b90a5babbafaba9a9a8a7a7a5a5927c67523d28130000061b2f43576b8094a8b7a38f7c6855433d52677c91a7ac97826d58432e190400000000172c41566b8095aab6a28d77634e39240f0000000000000000000000091e33485d72879cb1b5a08b767374747572604b36210c000000000000000f24384c61758a9eb3ab968270869bb0af9a866f5a442f1a05000000041a2f44596e8398adb9a48f7a655e5e5f5e5343301c080000001f344a5f74899fb4b49f8a746d7c8ea0b09d8976624e3b2713000000001e33485e73889db2b9a69384838c99a8a99785725f4c392612000000001e33485e73889db2b9a69384838c99a8a99785725f4c392612000000001f344a5f748a9fb4b5a08b766070869a9a9798a7baaa96826c57422d1803000000000000000f24384d62778ca1b6af9a86705b47321d080000000000000d21364a5f73889db1bca7937d6955402c17030000000000000f24384d62778ca1b5a08b889db2a28d7b91a6a28d77634e39240f000000091e32475b6f8498acb29f8b7763503d3f54697d93a8a994806a55412c17020000000d2135495c6f8395a7b3a49587796c5f5244352617060000000000000000000000000000000000000000000000060d1114161614120d08010000000000000000000000000000000000070b0b0804010000000000000000000000000000000000000000000f24384d62778ca1b6c1c3c0bfbebdbcbcbbaa95806a55402b1600000014283c5064788da0b4ac988572604f3e4f64798fa4b09b86705b46311c070000000013283d52667b90a5baa6917b67523d28130000000000000000000000041a2f44596e8398adb9a48f79655f5f605f5444311d0800000000000000091e32465b6f8498acaf9b86718499aeb09b86705b46301b0600000000162b40556a8094a9bda8947d6954484a4942352516090000001f344a5f748a9fb4b49f89735e708396a9a2927d6a56422d18030000001f344a5f748b9fb4b5a08b766e7a8b9baca28f7c6855412d18030000001f344a5f748b9fb4b5a08b766e7a8b9baca28f7c6855412d18030000001e33485d72889db3b8a38e78646c82969c9fa2a5a8ac9a86705b46311c06000000000000000b2034495e73889db2b39f8a74604b36210d00000000000013273b5065798ea2b7b6a28d78644f3b2612000000000000000b2034495e73889db2a79997a5b39e89778da2a6917b67523d281400000003182c4054687c91a5b8a793806c5a483b50667b90a5ad99846f5a442f1a0600000006192d40536577899aabb3a5978a7c706253443524130200000000000000000000000000000000000000000a131a21262a2b2b2a27221c140b010000000000000000000000000006121b20201d191613100d0906030000000000000000000000000000000b20354a5e73899eacacadaeafb0b0b1b2b3ac97836c57422d180000000d2135495d708598abb5a2907d6d5c4e4e63788fa4b39e89735e49341f0a000000000f24394d62778da2b6aa95806b56412c18030000000000000000000000172b40556a8094a9bda8937d69544a4b4a43362614080000000000000003182c4055697d92a7b5a08b768297acb19c87705c47311c070000000012273c51667b90a5baac97836d59443c3c3b3a3327180700001e33485e73899fb3b5a08b766066798d968e867d6f5a442f1a050000001f344a5f748ba0b5b49f89735e6c7d90989088806f5a442f1a050000001f344a5f748ba0b5b49f89735e6c7d90989088806f5a442f1a050000001c31465b70869bb0bba6927c68687c86888b8d9093979a88735e48331e0900000000000000071c31455a6f8499aeb8a38e79644f3a2611000000000004182d41566a8093a8bcb19c88735e4a36210c00000000000000071c31465a6f859aafb6acacb4af9a8674899eaa95806b56412d18030000001125394d6175899db0af9c8a776654444e63788fa4b19c87725c47321d0800000002142336485a6b7c8d9dacb5a79b8e8071625242311f0d00000000000000000000000000000000000006121c262e353b3f40403f3b3630271e130700000000000000000000000616242f3535322f2b2825211e1b1815110e0a0300000000000000000000071c31465b70859597979899999b9b9c9d9d9f9a856f5a45301b000000061a2d4155687b8fa2b5ad9c8b7a6c5f57657a90a5b5a08b75604b36200b000000000b20354a5e73889db2ae99846f5a45311c07000000000000000000000013273c51667b90a5baac97836d58443b3b3a38312617060000000000000011263a4f63778ca0b5a5907b8095aab39d88725c47321d08000000000e23384d62778ca1b6b19c87725d525252504e4536251200001d32475c72879cb1b8a38e78635e7286837a726a62523f2b17020000001f344a5f748ba0b5b49f89745f607286847c746c6353402c17020000001f344a5f748ba0b5b49f89745f607286847c746c6353402c1702000000192e43586d8397acc0ab96826d606c6f7274777b7d828689745f4b35200b0000000000000000182d41566b8095aabca7927d68543f2a150100000000091e32475b708599aec0ac97836d5945301b070000000000000000182d42576c8296abc0c1c0c1ac978270859aae99856f5a46311c070000000a1e3246596d8294a7b9a795837262554f64798fa4b49f89745f4a341f0a0000000c1f31424e535e6f7d8e9dabb8ac9e908270604e3c2a1704000000000000000000000000000000000b17242f3942495054565654504b443a3025170900000000000000000000122434424a4a4744403d3a3633302d2a26231e160b00000000000000000000182d42576c808082828384848686878888898988725d48331e000000001225394c5f728598aab9a9998a7d726c6f8095a9b7a18c76604b36210b00000000071c31455a6f8599aeb29d88735e4a35200b00000000000000000000000f24394d62778ca1b6b09b87715d5050504f4d44352411000000000000000c2034485d71869aafaa96827d93a8b49f89735e48331e09000000000b2034495e73889db2b5a08b7667676767666254412e1905001b30455a6f8599afbba6917c67566a766f665f574f44352310000000001f34495e73899fb4b6a28d7763576b78706860585045362411000000001f34495e73899fb4b6a28d7763576b7870686058504536241100000000152a3f54697d93a7bcb09c88725e585a5d606366696c7073715f4a35200b000000000000000014293e52677c92a6bbac97836d58442f1a05000000000f24384c61758a9fb3bba6927c68533f2b1601000000000000000014293e53687d93a7bcd1d2bda8937d6b8296aa9e89735f4a35200b00000003162a3e5164778a9eb0b2a19182736760687c91a6b6a18c76604b36210b00000114283b4e606860606f7d8d9baab8ae9f8f7d6c594633200c000000000000000000000000000000091a2835414c565d64686b6b69655f574d42352718080000000000000000001a2e41525e5f5c5855524f4b4845423f3b3832281b0b00000000000000000014293d50616a6a6b6c6c6e6e6f707072727373746f5c47321d00000000091c304255687a8d9fb1b7a89b8f8682838e9eb0b7a18c76604b36210b0000000000182d41576b8296aab6a28d77634e39240f00000000000000000000000b20354a5e73899eb2b4a08b7566666666646153412d1905000000000000051a2e42576b8094a9b09b877c91a7b4a08b745f4a341f0a00000000071c31455a6f8599aeb9a48f7c7c7c7c7c7b715d48331e0900182d42576c8296abbfaa95826b575b605b534b433b32261706000000001d32475c72879cb1bba6927c68535d635c544c443d34271806000000001d32475c72879cb1bba6927c68535d635c544c443d342718060000000011263b4f64788da2b6b6a28d79655145484b4e5154575b5f5f53422f1c07000000000000000010253a4f64788ea3b8b09b87725d48331f0a0000000015293e52667b90a4b9b5a18c77634e3a251100000000000000000011263b5065798fa4b9cecfbaa5907a677c91a6a28d77634e39240f000000000e2135485b6d8293a5b7af9f91857a75768598acb7a18c76604b36210b0000091d3044576b7d7063606e7d8c9aa9b9ad9b8976634f3b271200000000000000000000000000000014273846535e6972787d82827d79736a6053453626150400000000000000001f34495d7074706d6a6764605d5a5753504d463929170400000000000000000d21334350545556575758595a5b5b5c5c5e5f5f5d513f2c1900000000001326394b5d6f8293a4b5b8aca29a97979eacbbb6a18c76604b36210b000000000014293e53687c92a7baa6917b67523d28130000000000000000000000071c31465b70859aaeb8a38f7b7b7b7b7b79705c47331e090000000000000014283c5165798ea2b5a18c7a90a5b6a18c76604b36210b0000000000182d41576b8296abbeaa9993939393928b76614c37230e0014293e53687c92a6bbaf9a86705c484b473f372f271f150800000000001b30455a6f8499aec0ab97836d594a4e494139312921160900000000001b30455a6f8499aec0ab97836d594a4e494139312921160900000000000c21354a5e72879bafbca895806c58453336393c3f42464a4a423525130000000000000000000c21364b60758a9fb4b5a08b76614d38240f000000061a2f43586c8296aabfaf9b87725d4934200b0000000000000000000d22374c61768ca0b5cacbb6a18c7763788da2a6917c67523d29140000000005182b3e516376889aacbcafa2978f8b8b94a3b4b7a18c76604b36210b00001225394c6073878273675f6d7b8b9badb8a6927d6a55412c170000000000000000000000000000001c30445664707b868d939696938e877d7163544433210e00000000000000001f34495e73888683807c7876726f6c686562574734200c0000000000000000041525333c3f4040424243444446464747484a4a48403222100000000000091b2e405264758798a8b8beb5afacacb1bbc8b39f89745f4a34200a000000000010253a4f64788ea3b8aa95806b56412c18030000000000000000000000182d42576c8296abbda99891919191908b75604c37220e000000000000000e22364b5f73889cb1a7969097a9b7a28d77624c37220d000000000014293e53687c92a7abacaba8a8a8a8a48f7a65513c28130010253a4e63778da1b5b49f8b76614d39332b231b140c03000000000000182d41576b8296aabfb19d8874604c38352d251d150d04000000000000182d41576b8296aabfb19d8874604c38352d251d150d04000000000000071b2f43576b8093a6bab09c8874614d3a303b403f3b3735352f261c0f000000000000000000081d32475c71879bb0b9a5907b66523d28130000000b2034495d72879bb0bfaa95826c58432e1a060000000000000000000a1f34495e73889db2c7c8b39e89735f74899eaa95826b57422d1803000000000e213446586a7c8e9fb0c0b4aaa3a0a0a6b2c1b5a08b75604b36210b00071a2d4154687c8f9285786d626d7d90a5b9ad99846f5a442f1a0000000000000000000000000000001f344a5f73828e99a1a7ababa8a29a8f827262503e2b1804000000000000001c31455a6f85999895918e8b8884827d7975634f3a2510000000000000000000071520272a2b2b2c2c2e2f2f30303232333434332d221404000000000000112335465868798a9aaab8c6c4c1c1c5cec4af9b86705c47321d0800000000000c21364b60748a9fb4ae99846f5a45311c07000000000000000000000014293e53687c92a7acadaaa7a7a7a7a48f7965503c271300000000000000081c3045596d8397abb1a8a5a9b5b8a38f78634e39240f000000000010253a4f64788e939597999b9c9fa0a294806b56412d18000b2035495d72879bafb9a5907c67533f2b2a26201a140e08020000000014293e52677c91a5bab7a38f7b67533f2c19110901000000000000000014293e52677c91a5bab7a38f7b67533f2c1911090100000000000000000014283c5063768a9eb1b8a4907d6a57443f4e5554504c484440392d1d0c0000000000000000031a2e43586d8397acbeaa95806b56422d1904000011253a4e63778ca1b5b9a4907b66523e291400000000000000000000061c31455a6f859aafc4c5b09b86705b6f8599ae9a85705b46311c08000000000517293b4d5e708292a2b2c1beb8b5b5bac3c7b29d88735e49341f09000f22364a5d708598a3968a80756e798ea3b8b19c87705b46301b0000000000000000000000000000001e33475b6f8397abb0aaa7a7adb6ada091806d5a4734200c00000000000000182d41576b8296aaaaa6a3a09c999693907b66513c271200000000000000000000030d131516161717191a1a1b1b1d1d1e1f1f1e191105000000000000000517293a4b5c6c7c8c9aa8b5c1cbd1d3ccbba895806c57432e19040000000000081d32475c71869ba9ad9d88735e4934200b000000000000000000000010253a4f64788e9597989a9c9da0a1a394806a55412c18000000000000020b162a3f53687c91999c9d9fa1a4a6a5907964503b251000000000000c21364b60757c7d8082848687898b8d8f85705b47331e00061b2f43576b8094a8bcab97836e5a463d3f3b352f29231d160e0200000f24394d62768ba0b4bfaa97836f5b48342116120d07020000000000000f24394d62768ba0b4bfaa97836f5b48342116120d0702000000000000000c2034475a6d8294a6b8ad9a8773614f4b5d6a6965615d59554b3b2916000000000000000000162b3f54697d93a8bdae9a86705b47321d090000162b3f54687c92a6bbb39f8a75614c38230f0000000000000000000000182d42576c8297acc0c1ac97836d586b8095aa9e89745f4b36210c00000000000c1e2f415263738494a3b1bfcbcbcbced4c1ac98846f5a45301b060014283d5265798da0b3a89c9289848897a9bdb19c87705b46301b000000000000000000000000000000182c4054687b90a49c9591929aa7b8af9d8a77634f3a25110000000000000014293e53687c92a7bbbbb4a9a7ababa8937d68533e2914000000000000000000000000000000000000000000000000000000000000000000000000000000000b1c2d3e4e5e6d7c8a97a3aeb7bcbebaae9e8c7865513d291400000000000003192e43586d839194989b8c77624d39240f03000000000000000000000d21364b60757d8082838687888b8c8e90846f5b47321e000000000006141e252b394e6277838587888b8c8f9194917b67523c27120000000000081d3145576467686a6c6e7072737577787a735f4a341f000014283c5064788da0b3b19d8975614e52544f49433d37312a1f1202000a1f33485c708599adc1b29f8b7764513e2c2c27211c16110b030000000a1f33485c708599adc1b29f8b7764513e2c2c27211c16110b030000000004182b3e516476899badb6a391806d5c51667a7d7976726e685945311c00000000000000000011263b5065798fa3b8b39f8a75604c37230e00001b3045596d8397a3a6ab9985705b47321e090000000000000000000000152a3f54697d94a8b9bba994806a55667b90a5a28e78644f3a2611000000000000122334455565758593a1adb9c2c8cac5b6a4917d6955402c170200142a3f54697b8995a1acafa59d999ca6b5bcab97836e59442f1a0000000000000000000000000000001124384c6074889389827c7d899baebaa6927d68533f29140000000000000010253a4f64788ea3b8bba7969296999c95806a55402b1600000000000000000007121b1f1f1e1b17120c050000000000000000000000000000000000000000000f2030404f5e6c7986919ba3a7a9a69e90806e5c4936220e00000000000000162b405469787b808386897b66523d281e170f070000000000000000091d3246586568726d6e6f7173747678797c745f4a341f00000000041524313a40464b5b6a6d6f70727477787b80837d68533e2913000000000002152839474f52545a5f656a6f74797d8377635644301c00000d2135495d708498abb9a5917d6a566569635d57514b463d301f0e0004192d41556a7d92a6b9bba794826d5a4841403b36302b251f1609000004192d41556a7d92a6b9bba794826d5a4841403b36302b251f1609000000000e213447596b7d8fa0b0ae9c8b79695c6d82938f8b8884735e48331e0000000000000000000d22374b60758a9fb4b7a48f7a65513d281300001f34495e73878b8e9296937d6a55412d1804000000000000000000000012273c51667b91a3a4a6a6917b675262778ca1a7927d68543f2a15000000000000051627384757667583909ca6aeb3b5b1a7988774614e3a2611000011263a4c5d6b77848f99a2a9afafb0b4b1aa9e8e7b6854402b17000000000000000000000000000000091d3145596c8282756c676b8094a9bfab96826b56402b16010000000000000c21364b60748a9fb4b8a38d7c8284878b826c57422c1702000000000000000817252f343433302c27201910070000000000000000000000000000000000000002122231404e5c68747d888e9294918b807162513f2c1906000000000000001126394c5c6367736d7074776752413a322a231a0e000000000000000316293a4852677c8279726b645f61636567645744311c000000000e2133424e545a60656a6f74797d847664676a6d7064503c27120000000000000a1b293c4f5f686e74798084898e938f78644f3a27140000061a2d4154677a8ea1b3ad9a867360707d78726c66605a4e3d2a16000012263b4e62768a9eb1c4b19e8a7765535655504a453f3a33271807000012263b4e62768a9eb1c4b19e8a7765535655504a453f3a3327180700000005172a3c4e60718292a2b2a898887970798a9da4a09c88735e48331e000000000000000000091e32475c70869a9fa2a695806b56422d1905001e33485c6d7275787c82877864503b27120000000000000000000000000f24394e63788c8d8f91928d78634e5d7288979997836d58442f1a00000000000000091a2a39485765727d89939a9ea09d95897a695744311e0b00000a1d2f3f4d5a66727c868e959a9ea09f9c978d806f5e4c3825110000000000000000000000000000000216293d51657870635960708397abc0ab95806b56402b1601000000000000081d32475c71869bb0baa6917b6b6f7275786b56412c17020000000000000114253542494a4845413b342c231a0f040000000000000000000000000000000000000413223044596c726b73797c7d7c776e61534433221000000000000000000a1c2e3e4953687d8279726b635c554e463e362c1e0e000000000000000b1c2a3c52677c938e8780787169625a5250473928150000000014293d5060686f74798084898e938d77625254585b544634210d00000000000000162b40566b7c83898e94999da2a5907b66503b26110000001125384b5e718496a8b6a3907d6c71878d87827a746c5a46311c00000b1f33475a6d8295a7babaa7958371606a6a645f59544e4536251200000b1f33475a6d8295a7babaa7958371606a6a645f59544e45362512000000000d1f30425364748494a2b0a6978b868a98a7b9ae9a85705b46311c00000000000000000004192d42576c8287898d919686705c48331f0a00192c3e4f595d6064686c72705e4a36210d0000000000000000000000000d22374b60727778797b7c7d74604b596e7d82848787725d48331e00000000000000000c1b2a394754606c768086898b8882786b5c4c3a28150200000011212f3c49545f6972798086898b8988837a6f6151412f1c09000000000000000000000000000000000e2236495a646052606f7d8f9fb2bca7927d68533e29140000000000000003192e43586d8397acbeaa95806a5a5d60635d4e3b281300000000000000081c3043535e5f5d5a554f4840362c211509000000000000000000000000000000000000041b30465b70867d776f686867625b51443527180700000000000000000010202c3e53687d948e8680777069615a52493c2b19060000000000000012273c52677c93a29b948c857d766e665b4a36220e00000000172c42576c7d83898f94999ea3a48f79644f404346413728170500000000000000152a3f54687d929da3a8adb2aa9a8a7966513c2712000000081b2e415466788a9cadad9b8a7974899f9b958f89735e48331e000004172b3e5164778a9dafc1b2a18f7d70797d79736e686254412e19000004172b3e5164778a9dafc1b2a18f7d70797d79736e686254412e1900000000011325364656667584929faaa99f9b9ea7b6b7a5927d6a56412d180000000000000000000014293d51646f7174777c828676624d38230e000f21313d45484b4f53575e5d52422f1b07000000000000000000000000081d3144545f6263646667686658455262696c6e71736f5c47321d0000000000000000000c1b2936434f59636a707374736e665a4d3e2e1d0b0000000003111e2b37424d565e656c70737474726e675d51433423110000000000000000000000000000000000061a2c3c494f51616f7d8e9dacbdb5a18d78644f3a281a0b00000000000000152a3f54697d93a8bdad99846e59484b4e4a3f301f0c000000000000000c21364b607174726f6a635c53493e3326190c0000000000000000000000000000000000001b30465b7087928b847c756d665f574f453625120000000000000000000213293e53687d94a29a938c857d756d665a4935210c0000000000000012273c52677c93a5afa7a099928a827965503b261100000000162b40556a7d949ea3a9aeb2a999897865503b2e302d25190a000000000000000011263b5064798fa3b7bdbaab9b8c7b6b5c4a37230f00000000122537495b6d7d8f9fafa798898290a3afa99e89735e48331e0000000e2235485a6d8091a3b4bead9d8f8488938e88837d715c47321d0000000e2235485a6d8091a3b4bead9d8f8488938e88837d715c47321d00000000000718283848576573828d98a2aab0b2b4b0a6998876634f3b2713000000000000000000000e223546545a5c5f63676c7172614c38230d000313202a3033363a3e434949413424120000000000000000000000000001142636434a4c4e4f50525352483a44505457595c5f5d513f2c19000000000000000000000b1925313d464f565b5e5f5e5952493c2f2010000000000000000d1a25303a434b51575b5e5f5f5d59534b40332516050000000000000000000000000000000000000e1e3040516170808e9dacbbc2ad9986716054463829190900000000000012273b50657a8fa4b9b19c88725d494140403b322415030000000000000d22374c62778988847d776f665c5044372a1b0c00000000000000000000000000000000001b30465b70879c9f989089827a726a6254412e190500000000000000000013293e53687d94a6aea7a09991898278644f3a240f0000000000000012273c5165778796a4b3b4ada59e8f78644f3a240f0000000012273c51667a90a5b8bdb9aa9a8b7a6a5b4936221b1912080000000000000000000d22374b60758a9fb4bbac9c8d7d6d5d4e3e2d1b0800000000081a2c3d4f607082919faea79c979eadbfb09b86715c47321c00000005182b3d5062738697a7b7bbaca0999ba5a29d9789735e48331e00000005182b3d5062738697a7b7bbaca0999ba5a29d9789735e48331e0000000000000a1a2a394756636f7b858e969b9f9f9c94897a6a584633200c00000000000000000000051728364044474a4e52575c5e5444311e090000020e161b1e2125292f34342e2416060000000000000000000000000000081826303537383a3b3c3e3d362b333b3f4244474a4840322210000000000000000000000008141f2a333b4246494a48453f362b1f1102000000000000000008131d272f363d4246484a4a48443f382e2216070000000000000000000000000000000000000316293c4d5e6f808f9eacbbb8b7ad98887d716456473726140200000000000e23384c61768ca0b5b5a08b7661575656544f4232200d0000000000000b20364b60748b9d99938c83796e625547392a1b0c000000000000000000000000000000001b30465b70879cacaca49d968e867d715c47321c0700000000000000000013283d5267788897a5b4b4aca59d8d77624d38230e000000000000000e2236495968778695a4b2c1b7a18c77624c37220d000000000e23384d61768ca0b5baab9b8c7c6c5c4d3d2c1a06000000000000000000000000091e32475c71879bb0ad9d8e7d6e5f4f3f30200f0000000000000e203142526272828f9ca8afacb1bcb7a794806c58432e19000000000e2133445667788999a8b6bdb3afafb7b7b19d88725d48331e000000000e2133445667788999a8b6bdb3afafb7b7b19d88725d48331e000000000000000c1b2a3845525d68727a8287898a8782776b5c4c3b29170400000000000000000000000a19242c2f3235393e4248494336261502000000000004090c10141b1f1f1a12060000000000000000000000000000000008141c2022232526272928231920272a2c2f3234332d221404000000000000000000000000020d1720272d31343433302b23190e0100000000000000000000000a131b22292d31333434332f2b241b1105000000000000000000000000000000000000000a1e3246596b7c8d9dadbbafa4a2a9a59b908374655544321f0c00000000000a1f34495d72889cb2b9a48f796d6c6b6b6a61503c2813000000000000091e33485e73899eada79f968c8073655748392a1a090000000000000000000000000000001b30455a6e7d8e9dabb8b1aaa29a866f5a45301b060000000000000000000f24374a5a69788796a5b3c0b5a08b75604b36210c0000000000000007192b3b4a5968768695a3b1b5a08b75604b36200b000000000a1f34495d72889cb2ac9c8d7d6d5e4e3e2f1f0e00000000000000000000000000041a2f44586d8397ac9e8f806f605041312112020000000000000214243544546371808b959ea6b3aaa599897764513d291500000000031527394a5a6b7a8a98a6b2bdc4c4cabeac98846f5a45301b00000000031527394a5a6b7a8a98a6b2bdc4c4cabeac98846f5a45301b00000000000000000c1a2734404c555f666d717474726d64594d3e2e1d0c000000000000000000000000000711181a1d2024292e33342f2518090000000000000000000000000000000000000000000000000000000000000000000001080b0d0e0f111213130e070c1215171a1d1f1e191105000000000000000000000000000000040c13191c1f1f1e1b160f07000000000000000000000000000000070e14191c1e1f1f1e1b1610080000000000000000000000000000000000000000000f24384d6175899aabbbad9e928d97a6ada0938473614e3b28140000000000061b30455a6f8499aebda8938483838282806b56412c17020000000000051c32475c71879cb1bbb2a89d918475665748372716040000000000000000000000000000172b3e50606f7d8d9cabb9bdad98836d58432e1904000000000000000000081b2c3c4b5a69778795a4b2b49f89735f4a341f0a00000000000000000d1d2c3b4a5867768593a2b09f8b745f4a341f0a00000000061b30455a6f8499ad9d8e7d6e5f4f40302011010000000000000000000000000000162b4054697d949e8f8070615142322313030000000000000000061727364553616d78828a95a89791887a6b5a4734210e0000000000091b2c3d4d5c6b7a8895a0a9b0b4b5aea08f7c6854402c170000000000091b2c3d4d5c6b7a8895a0a9b0b4b5aea08f7c6854402c170000000000000000000a16232e39424b52585c5f5f5d5851473c2f2010000000000000000000000000000000000002080b0f14191e1f1b1308000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000011263b50667b90a5b8b29f8f80798899adb1a1917d6b57432e1a050000000000172c41566b8095aabfb0a09998989797846e59442f1a050000000000001b30455a6f869aacb1babbafa294857566554433221000000000000000000000000000000f21324251606e7d8d9baab8ac97826c57422c1702000000000000000000000e1e2d3c4b5968778694a3b19e89735e48331e090000000000000000000e1d2c3a495866758492a09f89735e48331e090000000000172c41566b80959e8f806f6050413122120200000000000000000000000000000012273c51657a8f908070615142332314040000000000000000000009182735434f5b666f7b90a38d7b756a5c4d3c2b18050000000000000e1f2f3e4d5c6a76838d959c9fa09c9182715f4c3925110000000000000e1f2f3e4d5c6a76838d959c9fa09c9182715f4c3925110000000000000000000005111c262f373e43474a4a48443e342a1e1102000000000000000000000000000000000000000000000000000000000000000000000000000002090d0e0b0602000000000000000000000000000000000000000000000000000b14181815100b060100080f12110c06010000000000000000000000000000000000000003090e11121212100c0701000000000000000000000000000000000004080907040100000000040a0d0b080401000000000000000000000011263b50667b91a6bbad9883706a7d93a7bcae9b87715d48331e09000000000013283d52677c91a6bbbeb2acabacac9c87715c47321d08000000000000192e43586d8393979ea7b2beb2a394847362513f2d1b08000000000000000000000000000414233242505f6e7c8c9aa8ab96826b56402b160100000000000000000000000f1e2d3b4a5967768593a19d88725c47321d07000000000000000000000e1c2b3a4857657382919f89735e48331e09000000000013283d52677b918f807061514232231304000000000000000000000000000000000e23384c61768c827161524334241505000000000000000000000000091725323e495263778d9f927c68584c3e2f1e0d000000000000000111202f3e4c5965707982878a8b888072635342301d090000000000000111202f3e4c5965707982878a8b888072635342301d0900000000000000000000000009131b23292f323434332f2921180d000000000000000000000000000001080d101211100c070100000000000000000000000000000009151e23231f1b17120e0a070c0e0d0b08060301000000000000000000000001111e282d2d2925201b16111b232726201b16110d080400000000000000000000000000050e171d232627272725211b150d04000000000000000000000000000410191d1e1c191614110f0c171f22201d191613100d09010000000000001025394e63778ca0b3ae998470677b91a7bcb4a08b745f4a341f0a00000000000f24394e63788da2b7b8a6989597989889745f4a35200b000000000000172c41566a7b7d838a94a0aebdb2a291806e5c4a38251300000000000000000000000000000514233241505e6d7b8a98a795806a543f2a15000000000000000000000000000f1d2c3b4958667483929d88725c47321d0700000000000000000000000d1c2a3947556472829188725d48331e0900000000000f24394e63778d80706151423323140400000000000000000000000000000000000a1f34495d7282726253443425160600000000000000000000000000000714202c364a5f74888989826c58432e20110100000000000000000211202e3b48535d666d727474726c61544536241300000000000000000211202e3b48535d666d727474726c615445362413000000000000000000000000000000080f151a1d1f1f1e1a150e0500000000000000000000000000010b151c2225272725211c150d0400000000000000000000000008182631383834302c27231f1b212322201d1b1816130c0200000000000000000e1f2f3b42423e39342f2b262e383c3a342f2b26211d180f04000000000000000000000b17212b32373b3c3c3c3936302921170e03000000000000000000000514222c3233312e2c292724212a333735322e2b2825221d140800000000000b2034485d708395a6b3a08f80768597aabfb49f8a745f4a341f0a00000000000c21364a5f74899eb3b49f89808283838377624c37220d00000000000013273b4e5e66686e7783909fafc0af9e8c7a6754422f1b08000000000000000000000000000005142332404f5d6c7a899895806a543f2a1500000000000000000000000000000e1d2b3a48566473839287715c47321c070000000000000000000000000c1b2937465463728288725c47321d0700000000000b20354a5f73827161524333241505000000000000000000000000000000000000061b3045596d736354443526160700000000000000000000000000000000030f1c31465a6c737373746a57422d18030000000000000000000002101d2a36414a52585d5f5f5e584f443627180700000000000000000002101d2a36414a52585d5f5f5e584f443627180700000000000000000000000000000000000000000000000000000000000000000000000000000006131e2830363a3c3c3a36302920170c0100000000000000000000132536444c4d4945403c38332e3638373532302d2b271f130400000000000000182b3d4d5757534e49443f3a3e4b514f4944403b36322c21140400000000000000000d1b28343e464c505252514e4a443d342a2015090000000000000000001122323f47484643403e3c39353b474c4a4743403d3a37312618080000000005192d405366778896a1aa9e918b94a3b4bbaa9885705c47321d080000000000081d32465b70869aafb6a28d776b6c6c6d6c5d4935200b0000000000000c1f31404c51535a65718291a3b5bba99785725e4b382411000000000000000000000000000000041422313f4e5c6a7989947d69543f2a150000000000000000000000000000000d1c2a38475564738386705b46301b06000000000000000000000000000b1a28364554637282705b46301b060000000000071c31465b6e72625343342515060000000000000000000000000000000000000000162a3d4f5c5e55453626170800000000000000000000000000000000000002172a3d4e5a5e5e5e5f5a4d3b2814000000000000000000000000000c19242e373e44484a4a49443c322618090000000000000000000000000c19242e373e44484a4a49443c32261809000000000000000000000b1418181614110f0d0b09060402000000000000000000000000000000071624303b444b4f52514f4a443c33291e12050000000000000000001b2f435461625e5955514c483f4a4e4c4a474543403b312212000000000000001e32475a6a6c68635e59544e4a5c66635d5954504b473f32210f000000000000000b1b2b3946515a6065676766635e5850473d32261a0c0000000000000000192d40515c5e5b585653514e494959615f5c5855524f4c44362614010000000011243648596977848e969ea4a0a5b2b7aa9d8c7a6855412d1904000000000002192e43586c8297abbaa6917b67575758574e3f2d1a060000000000000a1926323c454b505463738598abbeb4a18e7a6753402c1804000000000000000000000000000000041321303e4c5b6a79897d68533e2913000000000000000000000000000000000c1a293746556473836f5a442f1a0500000000000000000000000000000a182736455464736d5945301b05000000000001172b3e505c5e5444352516070000000000000000000000000000000000000000000e20313e4849433727180800000000000000000000000000000000000000000e1f303d454848484a473d2f1e0b000000000000000000000000000006111b232a2f333434342f29201508000000000000000000000000000006111b232a2f333434342f2920150800000000000000000001111e282d2e2b29272422201e1b1917130d03000000000000000000000005162534424e575f646766645f5850463c3023160700000000000000001f34495e7277736e6a66615c505d63625f5c5a58554e402f1d090000000000001f344a5f74827c77726d696050657a77726d6964605b503f2c18040000000000041728394957646d75797c7c7b78736c635a4f44382a1c0e000000000000001e33485d6f73706d6b6866635c51657674706d6a6764605443301c080000000007192b3b4b5a66717a828fa4b5b9b0a5998d7d6e5d4b39291f12020000000000152a3f54687d93a8bdaa95806b564243423c30251b0e00000000000a192837444f5860656766687a8ea2b5beab97836f5b47331f0a000000000000000000000000000000000312202e3d4c5b6a797c67523c271200000000000000000000000000000000000b192837465565736b58432e19040000000000000000000000000000000918273646555e5c4f3d2a16020000000000000f21323f48494336261707000000000000000000000000000000000000000000000213212c33343026190a00000000000000000000000000000000000000000002121f2a3133333334322b1f110000000000000000000000000000000000070f151a1e1f1f1f1b150d030000000000000000000000000000000000070f151a1e1f1f1f1b150d03000000000000000000000e1f2f3b4243403e3c3a373533302e2c282015060000000000000000000012233443525f6a73797b7b78736c63594e4133251607000000000000001f34495d72888884807a766e5b6b787774726f6c6a5e4c38240f0000000000001c31465b7086918c88837d6b56677c8c88837d79746e5b47321d0800000000000e213446576775828a8f9293918d8880766d6155483a2c1d0d0000000000001f34495e72878683807d7b786955667a898683807c79725f4a35200b00000000000d1d2d3c49545f6f8294a7b8aa9e93887b6e605046443c30200f000000000011263b5065798fa4b9ae99846f5a4543434240382c1c0b000000051728374655616c74797c7b7872869aafc3b39f8b76624e392510000000000000000000000000000000000002101f2e3d4c5b6b7464503b26110000000000000000000000000000000000000a19283747565f5b4e3c29150000000000000000000000000000000000091828374349483e31200e000000000000000313222d33342f251809000000000000000000000000000000000000000000000000030f191e1f1b14090000000000000000000000000000000000000000000000020e161c1e1e1e1f1e180e010000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000182b3d4d57585653514f4c4a484643413c3224140200000000000000000b1d2f415261707d888e91918e8880766b5f5143342516050000000000001b2f44596e839898949089745f6a808c898786837b66513c2712000000000000182d42576b8296a19c97856f5a687d939c97938e8a745f4a35200b000000000015293d50637586939ea4a7a8a6a29c938a807366584a3b2b1a0900000000001b2f43586c829598959390846f5b63788d9b9794928d77624c37220d0000000000000f1e2b394d62768b9fb1aa9a8d82756a5f5e5c5b584e3e2b1804000000000d22374c61768ba0b5b29d88735e58585857554a3a2815010000112335455564727d888f92918d868095abc0baa5917c68533e2a1500000000000000000000000000000000000001101f2e3d4d5a5f574735210d000000000000000000000000000000000000000a192938444a473e301f0d0000000000000000000000000000000000000a19263034332c21130200000000000000000410191e1f1b1308000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000040b1115171716140f0a03000000000000000000000000000000000000070b0b08040100000000000000000000000000000000000000001e32475a6a6d6b686664625f5d5b58565042321f0c000000000000000114273a4d5e70808f9ba3a7a6a29b93897c70615243342312010000000000172b40556a8094a9a9a28d7863667a909f9c9a947d69543f2a1500000000000014293e52677c91a6b19e89735f6a8095aaaca7a28d77624d38230e00000000001b2f44586d8093a4b1b8bcbdbbb6afa69c918476685849382716040000000014293d52667a8fa3aba89e89756060758ba0aca9a38d77624c38230d0000000000000012273c51667b91a5b4a08c7b6e6c76747372706b5b47331e0900000000091e33485d72879cb1b6a18c776e6e6e6e6c685744301b0600071a2d4052637383919ca3a7a6a199919caec2bfab96826c57422d190000000000000000000000000000000000000001101f2f3d474a44392a180500000000000000000000000000000000000000000b1a273034332b2012010000000000000000000000000000000000000009141b1f1e190f0300000000000000000000000000000000000000000000000000000000000000000000000000000000050c121619191715110b04000000000000000000000000000000020e161b1b1714110e0b0704010000000000000000000000000000000000020d171f262a2c2c2b28241e170e05000000000000000000000000000006121b20201d191613100d09060300000000000000000000000000001f344a5f7483807d7b78777472706e6b604e3b271200000000000000091c3044576a7c8e9eacb7bcbbb7afa69b8e8070615141301f0d000000000012273c51667a90a5b9a6917c6861768ca0b1ac97826c57422d180300000000001025394e63778da2b6a28d77636c8297acc1baa5907965503b261100000000001e33485d72889cb0c2c8c1b6aeadb0b7aea295877667564533210e000000000e23374b6074899db1b8a48f7a665e73899eb3b9a48f78634e38230e0000000000000012273c52677c91a7b39d88736571878b89888775604b36210c00000000051a2f44596e8398adbaa591848484848383735e49341f0b001023374a5d6f8292a1aeb7bcbbb5aca7acbacbc4af9a86705b46301b000000000000000000000000000000000000000001111f2b323431281b0c0000000000000000000000000000000000000000000009141c1f1e180f020000000000000000000000000000000000000000000000000000000000000000000000030f171c1c1a1715120f0d0a04000000000000000000000000000000000000030e1821272c2e2e2c2a251f1810060000000000000000000000000313202a30302c292623201c1916130f0c0905000000000000000000000004131f2a333a3f4242403d38322b21170c0000000000000000000000000616242f3535322f2b2825211e1b1815110e0a030000000000000000001d32465b70859593908f8c8a8886837d6955402c17020000000000000f24384c60738799acbcbbb1a9a8aaafac9e8f80705f4e3c2b1906000000000e23384d61768ca1b5ab96826c5d72889cb2af9a86705b46311c0700000000000b20354a5f73899eb2a6917c676e8499aec3bda8937d68533e291400000000001f344a5f748ba0b1b2b3b2a39a989ca4afb3a495857362503e2b1805000000081d31455a6e8397abbea995806b5c71879cb1b9a48f79644f3a240f0000000000000010253a4f64788da0b1a39183797d8da09f9d8e78634e38230e0000000000172c40556a8094a9b9ad9e99999999988c77624d39240f00162b3f5366798d9fb0bfbeb4ada9abafb8c3d0c7b29d88725d48331e000000000000000000000000000000000000000000010e181e1f1c150a00000000000000000000000000000000000000000000000000000000000000000000000000000000020a1014161615120e090200000000000000000000000000000413212b31312f2c2a2724221e170d000000000000000000000000000000000514202b343b404343423f3a332c23190d00000000000000000000000f21313d4545413e3b3834312e2b2824211e1911060000000000000000041423303d474e54575756524d463e34291d100200000000000000000000122434424a4a4744403d3a3633302d2a26231e160b0000000000000000182d42566b8095a8a5a3a19f9d9b98846f5a45301c0700000000000015293e52677b8fa3b6bbac9e9593959ca6ae9e8e7d6b5a48362310000000000a1f34495d72889cb1af9a86705b6f8499adb29d88735e49341f0a0000000000071c31465a6f8499aeaa95806b70869bb0c5c0ab96826b57412d1803000000001f34495e73899b9c9c9e9f94868388929eaeb3a392806d5a4734200c00000002162b3f53687c91a5b9af9a86716e6f869aafbba59079644f3a250f000000000000000c2135495d708394a3afa09590919cabb3a28d77624d38230e000000000013283d51667b90a2a4a5a7a9abadafa5917b67533e2914001b3045596d8396a9bcbcada19894959ba5b2c2c9b49f89735e49341f0000000000000000000000000000000000000000000000000000000000000000000000010d15191a181513100e0b09141b1e1c1915120f0c0905000000000000000000010c161e25292b2b2a27231d160d040000000000000000000000001022323e464744413f3c3a37332a1e0e0000000000000000000000000000051423323e485055585857534e483f362a1e1103000000000000000000192c3e4f595a5753504d4a4643403d3936332d24170800000000000000112232414e5963696c6c6b67615a51473b2e2011020000000000000000001a2e41525e5f5c5855524f4b4845423f3b3832281b0b0000000000000014283d52667b90a5bab8b6a69e9e9d88735f4a36210c000000000000192e43586c8296aabfaf9d8e827c808995a3ac9b89776553402d1a07000000061b3045596e8498adb29e89735e6a8094a9b5a08c76614c37220d000000000001182c41566b8095aaae99856f72889db2c7c3ae99846f5a45301b06000000001c31465b6f8486878889898b766d74808fa0b2af9d8a7763503b2713000000001025394d62768b9fb3b5a08c848484869aafbba6917b66503b261100000000000000061a2e4153657585929da6a9a5a6aeb0a79886725e4a35200b00000000000f24394d63778b8d8f9092949698999b96826c57432e1a001e33485d72889cb1c2af9e8f8580808894a5b7cab5a08b745f4a341f0000000000000000080f1417171715110c050000000000000000000000000000000002121f292e2f2d2a282523201d262f33312e2a2724211e19110500000000000004121e2932393e40403f3c37312a20160b0000000000000000000000192d3f505b5c595654514f4c473c2c1b0800000000000000000000000000122332424f5a646a6d6e6c68635b52483c2f21120300000000000000001e33485c6d6f6b6865625f5b5855514e4b48413526140200000000000a1c2e40505f6c767d8283807b756d64584c3e2f20100000000000000000001f34495d7074706d6a6764605d5a5753504d46392917040000000000000f24384d62778ca1b5c3ae9a89898b8d78644f3a26110000000000001c31475c70869bafbba793806f676c778595a6a795826f5c4936230f00000000172c40556a8094a9b6a28d7762667b90a5b9a48f7964503b261100000000000013283d52677b91a6b29d8873748a9fb4c9c7b29d88735e49341f0a00000000182c4054666e6f7072737475705d62718396abbaa793806a56412d18030000000a1e33475b708599adbba99c9999999aa4b5bca7917b66513c2711000000000000000011243647576674808a92999da09f9c958a7a6956432f1b0700000000000b20354a5e707577787b7c7d828384868886725d49341f001f344a5f748ba0b5bca79380716a6b76889bb0c4b49f89745f4a341f00000000000006111b23282c2c2c2a262019110700000000000000000000000000000f20303c4344423f3d3a38353138434846433f3c3936332d231506000000000313222f3b454d53565654514c453d33281c0f010000000000000000001e33485c6e706e6b69666461594a3825110000000000000000000000000a1d2f4151606d77808384827c776f65594d3f30211000000000000000001f344a5f7484827d797773706d6a6663605d5344311e0a00000000001226394c5d6e7d8992979895908a82766a5c4d3e2d1d0b00000000000000001f34495e73888683807c7876726f6c686562574734200c0000000000000b1f34495d72889cb1c3ae99847376797c67523c27120000000000001f34495e73899eb3b6a28d776352596677899bae9f8c7966523e2b170300000013273c51667b90a5baa5907b6662778ca1b5a7927c68533e29140000000000000f24394e63778da2b6a18c77778ca1b6cbcab5a18c76614d38230e000000001125374854585a5b5c5e5f605e5253687c93a8bdae99856f5a45301b0600000004182d41556a7d93a7bcb9afa4a3a4a4a9b6bda8937c67523c27120000000000000000071829394856636d767d84888b8b8782776b5c4b3a2714000000000000071b2f42525d6062646667696b6c6f707274705d49341f001f344a5f748ba0b5b9a48f786455586c8398adc3b29d88725d48331e00000000000a17242e373d4142423f3b342d241a0f03000000000000000000000000182b3e4e585a5754524f4d4a4547565d5b5854514e4b484033231200000000102131404d5861686b6b6965605950453a2d1f100100000000000000001f344a5f738784827d7b787667543f2b1702000000000000000000000013273a4c5e6f7d8a93989997928b82776b5d4e3f2e1d0c000000000000001c31465b708696938f8c898683807b787570614e39240f0000000000192d4255697b8d9ba6acadaaa59e94887a6b5c4b3a291604000000000000001c31455a6f85999895918e8b8884827d7975634f3a2510000000000000061b2f44596e8398adc1b29c88726064685e4c39240f0000000000001f344a5f748ba0b5b49f89745f60615e6b7d92a7a995826e5a46321e090000000e23384d62778ca1b6a994806a5d72889cb1ab96826b56412d180300000000000b20354a5e73889db2a5907a798fa4b9ceceb9a48f7a65503b271200000000081a2a37404e60686664615f5e5e636f8295aabeb29d88725c47321d070000000012263b4f64788da1b5b6a2918d8f8f98aabda8937c68533e28130000000000000000000b1b2a3845505a636a6f737474726d655a4d3e2e1c0a0000000000000012243441494b4c4f50525456575a5b5d5f5d51412e1a001f34495e73899eb3b9a48f7a685a596e8499aec2ae99846f5a45301b0000000009192835414a52565757544f4840372c21140800000000000000000000001e33475b6b6f6c696764625f58506472706d696663605c51412e1b060000091c2e3f4f5e6b757c80827d7a746c63574b3d2e1f0f00000000000000001c31455a6f84999694918f836e5a45311c080000000000000000000000192e4256697c8e9ca7adaeaba69f95897b6c5d4c3b291705000000000000192e42576c8297a8a4a19e9b9794918e8b7b66503b261100000000001e32475c708599aab9c0b5b0b0b1a5998a7a69584634210e00000000000000182d41576b8296aaaaa6a3a09c999693907b66513c271200000000000000162b4055697d93a8bdb5a08b766050534d402f1d090000000000001f344a5f748ba0b5b39d88725f7276736f778da2b19e8a75614d38240f0000000b1f34495e73889db2ad98846e5b6e8498adae99846f5a45301b060000000000071c31455a6f8599aea8937d7c91a7bbcfccbda8937d69543f2b1601000000000c1a2a3f54697d7b787674737377808e9eb1c4b09b87705c47321c07000000000c2135495d72879bafb4a08b77787b91a6bba9947d68533e2913000000000000000000000c1a27333e474f555a5e5f5f5d5851483d2f201000000000000000000616242e3436383a3b3d3f40424446484a4941332311001c31465b708599adbeaa9786776d6b76899db1bba793806a56412c180000000517273745535d666b6c6c69635c53493e3225180a000000000000000000001f344a5f7384827d7c7977746754667b86837d7b78766f5e4a35200b00001225394b5d6d7c88919597948f898075685b4c3d2d1c0b00000000000000172c40556a8094a9a8a69d8974604b37220d00000000000000000000001e33475c718699abbabfb4afafb2a69a8b7a6a594734210e000000000000152a3f53687d93a7b9b6b3aeaca9a6a3937c68533e281300000000001f344a5f748a9fb4c1b0a29b9ba4b1a898877563503d2a170300000000000014293e53687c92a7bbbbb4a9a7ababa8937d68533e29140000000000000012273b5065798fa4b9b8a38f79644f3e392f2211000000000000001f344a5f748ba0b5b49f89735f74898886828ba0b5a4907b67523e2914000000061b30455a6f8599aeb19c8872706e8095aab29d88725d49341f0a000000000000182d42576c8296abac97838094a9bebbb7baac97836d58432e1a05000000000013283d53687c918f8c8989898c929dacbcb9a895826d58432f1a0500000000061a2f43576c8295a9b9a5907b66798fa4b9aa95806a543f2a1500000000000000000000000a16212b333b4145484a4a48443e362b1f110200000000000000000006121a1f21232426282a2b2d2f313334342e23150500182d41556a7d92a5b7b5a4958983828794a5b8b19f8c7764503b2713000000102234455563707a8083827d7770665c50433628190a0000000000000000001c3044596d829694918f8d836e5963788e9794908e8b77624c37220d0000192d4155687a8c9aa5ababa9a49c9287796a5b4a3928160400000000000012273c5165798fa4b8b7a38f7965503c271200000000000000000000001f344a5f748b9fb4c0afa1999aa3b0a999887664513e2b1703000000000011263b5065798fa4b9bdaa9b979b9ea194806a543f2a1500000000001f344a5f748a9fb4b7a492868793a4b6a593806d5a46321e0a00000000000010253a4f64788ea3b8bba7969296999c95806a55402b16000000000000000e23374c61768ba0b4bca7927c68533e291d1204000000000000001f344a5f748a9fb4b5a08b766070869a9a9798a7baaa96826c57422d1803000000182d41576b8296abb5a08e8886848293a8b5a08c76614c37230e00000000000014293e53687c92a7b09b878397acb7a9a1a6b09b87715c47321e09000000000011263b50657990a3a09f9f9fa1a6afbbb4a99b8b7865523e2a1500000000000014293d51667a8fa3b7aa95806b778da3b8ab95806a55402b16010000000000000000000000040e1820262c31333434332f2a22190e01000000000000000000000000060a0b0d0f11131416181a1c1e1f1f1a1105000012263b4e61758899aabab3a69d97969aa5b2b7a694826f5c4835210c0000061a2d40526373828d959897938c83796d6154463728190a0000000000000000162a3e53677b90a4a7a49d88735f60768ba0a8a5a38d77624c37220d00001d32475c708598aab8bfb6b1b2afa498897968574533200d0000000000000e23374c60758a9fb4bda894806a55412c1803000000000000000000001f344a5f748a9fb4b7a391858692a3b5a693826d5a46331e0a00000000000d22374c61768ba0b5b8a38e8386898c90826b56412c1702000000001e33485d72889db2b29d8874758699acb09d8975614d3925100000000000000c21364b60748a9fb4b8a38d7c8284878b826c57422c1702000000000000091e33485d71879bb0c0ab96826c57422d180300000000000000001e33485d72889db3b8a38e78646c82969c9fa2a5a8ac9a86705b46311c0600000014293e53687c92a7bcaca09d9b99979eaeb9a48f7965503b261100000000000010253a4f64798ea3b49f8a869bb0ae9a8c97aa9f8a75604b37220d00000000000e23384d63778da2b5b4b4b4b6b4afa9a2978c7d6d5b4936230f0000000000000e23374b6074899db1af9a8670768ca0b5ac97826b56412c170100000000000000000000000000040c12181c1e1f1f1e1a150e06000000000000000000000000000000000000000000000000000000000000000000000b1f3245586a7b8d9caab6b9b1acabafb6b4a799887664523f2c190500000e2236495c6f8291a0aaadaca79f968b807164554637281808000000000000001024384c61758a9eb3b7a28e79655e73899fb4b8a38f78634e38230e00001f344a5f748a9fb4c2b1a39c9da5b2a797867562503d2a16020000000000091e32475c70869aafc2ad99846f5a46311c08000000000000000000001e33485d72889db2b29c8873748699acb19e8a76624e3925110000000000091e33485d72879cb1baa5907a7074777a7d6c57422c1702000000001b30465b70869aafb19c8770697c91a5b9a5917c68533f2a16010000000000081d32475c71869bb0baa6917b6b6f7275786b56412c1702000000000000041a2f44586d8397acc1ae99856f5a45311c0700000000000000001c31465b70869bb0bba6927c68687c86888b8d9093979a88735e48331e0900000010253a4f64798ea3b8bdb1abadaeacb0babda8937d69543f2a150000000000000d21364b60758b9fb4a3908e9fb4a9958090a5a38f7964503b261100000000000c21364b60758ba0b5c4c9baaa9f9b958e857a6d5f4f3e2c1a07000000000000081c31455a6e8397acb49f8b7674899fb4ad98836c57422c17020000000000000000000000000000000000000000000000000000000000000000000002090d0e0c0805020000000000000000000000000000000000000215283b4c5e6e7d8c98a3abb1b4b4b1aba2978a7a6a594735231000000014293d5165798c9fafbdc3c1bbb3a89d90827364554636251504000000000000091e32465b6f8498acbda894806a5c72879cb1b9a48f78634e39240f00001f344a5f748b9fb4b8a593878894a5b5a492806c5945321e09000000000004192e42576c8296aabfb29e89745f4a36210e000000000000000000001b30455a6f869aafb19c8770697c90a4b9a5917c68543f2b160100000000051a2f44596e8398adbea8947d695f62656861513e29150000000000192d43586c8397acb39d887361768ba0b4ac97836d58442f1a06000000000003192e43586d8397acbeaa95806a5a5d60635d4e3b28130000000000000000152a3f54697d93a8bdb29d88735e49341f0a0000000000000000192e43586d8397acc0ab96826d606c6f7274777b7d828689745f4b35200b0000000d21364b60758b9fb4b19f96989a9c9fa8b8ac97826c58432e19040000000000091e33475c71879bb0aea2a1acbaa5907b8ca1a7927d68543f2a150000000000091e33485d72889ba7b3beb29e8c86827972675c4f4131200f0000000000000002162b3f53687c91a5b9a4907b72889db2ae99846e58432e190300000000070b0e0f0f0f0f0d0a060200000000000000000000000000000000000009151e2323211d1a1714110e0a0704000000000000000000000000000b1d2f4050606e7a8690979c9f9f9c978f85796b5c4c3b2a1806000000192e42576c8095a8bcc6bab1adadb2aea092837364534332210f00000000000003182c4055697d92a6bbae9a85706a6f869bb0bba59079644f3a250f00001e33485d72889db2b29d887576879aadaf9c8975614d39241000000000000014293e52677c91a6bbb7a28e7864503d2a1704000000000000000000182d42576c8297acb39e897361768b9fb4ac97836d59442f1b060000000000172b40556a8094a9beac97836d584d50534f4333210e0000000000152b4054697d94a9b6a18c776272879cb0b09c87725d48341f0a000000000000152a3f54697d93a8bdad99846e59484b4e4a3f301f0c000000000000000011263b5065798fa3b8b6a18c77624d38230e0000000000000000152a3f54697d93a7bcb09c88725e585a5d606366696c7073715f4a35200b000000091e33485d72879cb1ac97828386878a9bafaf9b86705c47321d080000000000041a2f44596e8398adbfb7b6bdb6a18c77889dab97826d58432e190400000000051c31455a6f7d8a95a1adb39e8d83796f655b51473e34291c0d000000000000001025394e62768b9fb4aa958070869bb0af99846f5a442f1a05000006121b202325252524221f1b16110b04000000000000000000000000000008182631383836322f2c292623201c19140b00000000000000000000000011223242505d69737c8388898987837b72675b4d3e2e1e0c000000001c31475c70869aafc4b7a89e98989da5b0a192827161503e2d1b0900000000000011263a4e63778ca0b4b49f8b8080808499afbba5907b66503b261100001c31465b70869aafb19c87706a7d91a5b8a4907c68533f2a150100000000000f253a4f647990a5bbbca794806d5a4733200d000000000000000000152a3f54697d94a9b6a28d776271879bb0b19c87725d49341f0a000000000013283d51667b90a5bab09b87715c473c3e3b362d2111000000000012273c51667b91a6baa5907b666d8397acb5a08c76614d38230e00000000000012273b50657a8fa4b9b19c88725d494140403b32241503000000000000000d22374b60758a9fb4baa5907a65513c2712000000000000000011263b4f64788da2b6b6a28d79655145484b4e5154575b5f5f53422f1c07000000041a2f44596e8498adae99856f6f728297abb39f8a74604b36210c000000000000162b40556a8094a9becccbc7b29d88738499ae9b86705c47321d080000000000182c4052606c7783909ca8aba0968c82786e645a50473a2b19070000000000000a1f33485c70859aaeae9a86708499aeb09b866f5a45301b06000616242f35383a3a3a393734302b251f181007000000000000000000000000132536444c4e4b4744413e3b3834312e271d0f0000000000000000000000041423323f4b5660686e727474726d675f554a3d2f201000000000001f34495e73899eb3bca9998b838489929fada090806e5c4a3826140100000000000b2034485d71869aaebaa79895959596a1b3bca7917b66503b26110000192e43586d8397acb39d887362768ba0b5ab97826d58432f1a05000000000011263b50667a90a5bbc3b09d8a7663503d2a1703000000000000000012273c51667b90a5baa6917b676d8297acb5a18c77624d38240f00000000000f24394d62778da2b6b49f8b75605251504f4a3f2f1e0b000000000f24394e63788da2b7aa95806b697d93a7b9a5907b66513c27130000000000000e23384c61768ca0b5b5a08b7661575656544f4232200d00000000000000091e32475c71879bb0bda8937d69543f2a1501000000000000000c21354a5e72879bafbca895806c58453336393c3f42464a4a423525130000000000172c41566b8095aab29e89745f687d93a7b8a38e78644f3a251100000000000013273c51667b90a5bacfd8c3ae99846f8095aa9f8a75604b36210d0000000000102334434e5a66717d8b97a4b1a99f958b82776d63584836230e00000000000004192d41566a7d93a8b49f8a758297acb19c87705b46311c0700122434424a4d4f4f4f4e4c4945403a332c241a1106000000000000000000001b2f43546163605c595653504d4a46423a2d1d0c00000000000000000000000514212e3a444d54595d5f5f5d59534c43382c1f110200000000001f344a5f748ba0b5b39f8c7a6d6e75828f9eae9d8c79675543301d0a000000000005192e42566b8094a8bdb6aca8a7a8a8adb9bda8937c67523c27120000162b40556a8094a9b6a18c776272879cb1b09b87715d48331f0a000000000011263b50667b91a7bcccb9a693806c594633200d00000000000000000f24394e63778da2b7aa95806b687d92a7baa5907b66513d281300000000000b20354a5f73899eb2b8a38e7968676666645d4d3a2612000000000c21364b60748a9fb4ae9a857064798ea3b8a994806a55402c170200000000000a1f34495d72889cb2b9a48f796d6c6b6b6a61503c281300000000000000041a2e43586d8397acc1ac97836d58432e190500000000000000071b2f43576b8093a6bab09c8874614d3a303b403f3b3735352f261c0f000000000013283d52677c92a7b7a28d786364798fa3b8a7927c68533f2a150000000000000f24394e63778da2b7ccd3bfaa95806b7b91a6a38e79644f3a25110000000000081d3144545f60606d798693a0aeb2a89e948a807666523d28130000000000000013273b5064788da2b6a48f7a8095aab39d88725c47321d08001a2e41525e6364646463615d59544e473f372d23190d0000000000000000001f34495e727774726e6b6865625f5b574b3b281501000000000000000000000004101c2731393f44484a4a48443f3830261b0e010000000000001f344a5f748ba0b5ae9985705c5a63708090a1a9978572604d3a271400000000000013283c5065798ea2b6b7a3949193939bacbda8937c67523d2813000013283d51667b91a6baa5907b666d8397acb5a08b76614c38230e000000000011273c51667b91a7bcd1c2af9c8976624f3c291602000000000000000c21364b5f748a9fb4ae9a867064798ea3b8a994806a55412c170200000000071c31465b70859aafbca7927d7c7c7b7b796a55402b1601000000081d32475c71879cb1b39e897460758a9fb4ad98846e5945301b060000000000061b30455a6f8499aebda8938483838282806b56412c170200000000000000152a3f54697d93a8bdb09b86715c47321d08000000000000000014283c5063768a9eb1b8a4907d6a57443f4e5554504c484440392d1d0c0000000010253a4f64788fa3b8a6927c6860768ba0b5ab97826c58432e190500000000000b20354b5f748a9fb4c9d0bba6917b67778da2a7927c68533f2a1500000000000c21364b60727676747475828fa2b6bbb1a79d937d69543f2a15000000000000000d21354a5e72879bb0a995807d94a8b39e89735e48331e09001f34495d70777979797876726e68625b534a40362a1e1103000000000000001f34495e73898a8784827c79777370695844301b07000000000000000000000000000a141d252b2f333434332f2b241c130900000000000000001f344a5f74899fb4ad98846e58465261728395a8a2907c695643301c0800000000000d22364a5e73889cb0b49f8a7b7c7d91a7bca9947d68533e291300000f24394e63788da3b8aa95806b697d93a8b9a48f7a66513c2712000000000012273c52677c93a8bdcfc9b9a592806c5945321f0c00000000000000081d32475c71879bb0b39e897460748a9fb3ad99846f5a45301b060000000001182d42576c8296abc0ad9c9493939191836d58442f1904000000031a2f44596e8498adb7a28e786470869bafb19c88725d49341f0a000000000000172c41566b8095aabfb0a09998989797846e59442f1a050000000000000011263b5065798fa3b8b49f8a75604b36210c00000000000000000c2034475a6d8294a6b8ad9a8773614f4b5d6a6965615d59554b3b2916000000000d22374c60768ba0b5ab96826d5d72889cb1b09b86715c47331e090000000000081d32475c71879bb0c5cbb6a28d776373899eab97826c58432e1904000000000d22374c61768c8c8b8b8b8a8fa2b6cbc4baac97826c57422c1702000000000000071b2f43586c8295aaaf9a867c92a7b49f8a745f4a341f0a001f34495d71879090908f8c88837d766f665d53483c2f2112030000000000001d32475c72889c9c9996938f8c8986735e4935200b0000000000000000000000000000010911161b1e1f1f1e1a161009000000000000000000001d32475c72889cb1af9a866f5a45435466788b9fac9986725f4b3824100000000000071b3044586d8296aab8a48f7967798fa4b9a994806a543f2a1500000c21364b60758a9fb4ae99856f65798fa3b8a994806a55402b17020000000013293e53687d93a8bdbcb4b4af9c8975614e3b281502000000000000031a2f44596e8398adb7a38e786470869aafb29d88735e49341f0b000000000014293e53687c92a7bcbaaea9a8a8a79b86705c47311c0700000000172c41566b8095aabba7927c686c8297abb5a18c77624d38230e00000000000013283d52677c91a6bbbeb2acabacac9c87715c47321d08000000000000000d22374c60758b9fb4b8a38e78644f3a2510000000000000000004182b3e516476899badb6a391806d5c51667a7d7976726e685945311c00000000091e33485d72889db2b09b87715d6e8499aeb49f8b76614c37230e0000000000031a2f44596e8398adc2c8b39e89745f6f8599ae9b86705c47321e09000000000b20354b5f748ba0a0a0a09fa1adbed1d7c3ae99846e59442f1a050000000000000015293e52667a8fa4b4a08b7b90a5b5a08b76604b36210b001a2e43586c8296a5a5a3a09c97928b83797065594d3f3021110000000000001b30465b70869bb0aeaba7a4a19e8d77634e392510000000000000000000000000000000000000000000000000000000000000000000000000001b30455a6f8499aeb29c88725d4937495b6f8296aaa28f7a67533f2b16020000000000152a3e53677b90a4b9a994806a778da3b8ab95806a54402b150000091e33485d72879cb1b29e897460758a9fb4ad98836e59442f1b0600000000142a3f54697d94a9bdac9f9faba5927d6b5844311e0b00000000000000172c40556a8095aabca7927d686c8296abb6a18c77624d38240f000000000010253a4f64798ea3b8bba99c9b9c9d9d89735e49341f0a0000000013283d52677c91a6bbab96826c687d93a7baa5907b66513c27130000000000000f24394e63788da2b7b8a6989597989889745f4a35200b00000000000000091e33475c71879bb0bba7927c68533e2914110a000000000000000e213447596b7d8fa0b0ae9c8b79695c6d82938f8b8884735e48331e00000000051b30455a6f8599afb5a08b76616b8095aab9a48f7a65513c2713000000000000172c41566b8095aabfc4af9a86705b6b8095aa9f8a75604b37220d000000000a1f34495e73899fb4b5b5b4b5bdcbdbdbc5b09b87705b46311c07000000000000000f23384c6075899eb2a5938c94a7b7a18c77624c37220d0014293e52677b90a5bab8b5b1aca69f968d83776a5d4e3f2f1e0c0000000000192e43586e8499aec3bfbcb9b6a6927c68533f2a15000000000000000000000000020b13181b1b1b18130c040000000000000000000000000000172c41566b8095a9b5a08c77624e393f52667a8ea2aa96836e5a46311d0900000000000f24384c61758a9eb3ae998570768ca1b6ac97826b56402b160100041a2f44596e8499aeb7a28d786371869bb0b19c88725d49341f0a00000000162b40556a8095abb6a18e8d9fae9b8874614e3b27140100000000000013283d52677c91a6bbab97826c687d92a7baa5907b66513d281300000000000d21364b60758a9fb4b49f8b868788888876614c37220d000000001025394e63788da2b7af9b867064798fa3b8a994806a55402c170200000000000c21364a5f74899eb3b49f89808283838377624c37220d00000000000000041a2f44586d8397acc0ab96826c57422d2a251d1204000000000005172a3c4e60718292a2b2a898887970798a9da4a09c88735e48331e0000000000182d42576c8297acb9a5907b66677b90a5baa994806a56412d1803000000000014293e53687c93a7bcbcab97826c57667b90a5a38f7965503b261200000000061d32475c72889db2c1c3c4c5c5c6c7c8c8b39d88735e49341f0900000000000000091d31465a6f8398acb1a5a1a5b2b8a38e78634e38230e000f24384d62768ba0b5c9cac6c0bab2a9a095897b6c5d4d3c2a180500000000172c42576c8297acc1c3bebdc0ab97826d58432f1a060000000000000000000009141e272d3030302d2720170e0200000000000000000000000013283d51667a8fa4b8a5917c685440374b5f73889cb19d8974604c37230e0000000000091e32465b6f8498acb39e8a75748a9fb4ad98836c57422c17020000172c41566b8095aabba6927c686d8297acb5a08c76614d38230e00000000172c41566b8297acb5a08b8498aca4917d6a5744311d0a0000000000000f24394e63788da2b7b09b867164798ea3b8a994806a55412c170200000000091e32475c71879bb0b5a08c7670727272705f4b36210c000000000c21364b5f748a9fb3b49f8a7560758ba0b4ad98846e59442f1b060000000000081d32465b70869aafb6a28d776b6c6c6d6c5d4935200b0000000000000000162b4054697d93a8bdaf9a86705b463f3f392f22110000000000000d1f30425364748494a2b0a6978b868a98a7b9ae9a85705b46311c0000000000152a3f54697d94a8a9a895806b62778ca1adae9985705b46321d09000000000011263b50657990a5a7a7a7937d685362778ca0a8937d6954402b1600000000001c31465b70879cacacadafb0b0b1b1b3b3b4a08b75604b36210c0000000000000002172b4054697d929da0a1a3a5a8aaa59079644f3a2510000a1f33485d71879bb0c4cbc1bdc0c3bcb2a6998b7b6a594735220f00000000162b40556a8095aabfb0a8a8aeb09b87725d48341f0a0000000000000000000b1a26313b41454645413b342a20140700000000000000000000000e23384c60758a9eb2ac97846f5c483444596d8397aca48f7a65513c2813000000000003182c4055697d92a7b8a38f7972889db2ad98836e58432e1903000014283d52677c92a6bbab96826c687d93a8b9a5907a66513c271200000000182d42576c8398adb5a08b7c91a4ae9a8773604d3a26130000000000000c21364a5f74899eb3b49f8a7560758b9fb4ad99846e5945301b0600000000041a2f44586d8397acb9a5907a665c5c5d5d5242301c0800000000081d32475c70869bafb8a38f796471879cb1b19c88725d48331e09000000000002192e43586c8297abbaa6917b67575758574e3f2d1a06000000000000000012273c51657a90a5b9b39e89735f5454544d402f1d090000000000011325364656667584929faaa99f9b9ea7b6b7a5927d6a56412d18000000000012273c51667b919594939386705d728796989a9c8a75604c38240f00000000000e23384e63778d919193938f7964505d7287979997836d59442f1b00000000001a2f445a6f8695979798999b9b9c9c9d9e9fa08d77634d38230e000000000000000011263a4f637787888b8c8f90939598917b66513c271200051a2e43586c8296abc0bbaea8abaeb4bbb7a999897664513e2b160200000014293e53687d93a8b4a194939eafa08c77624d39240f00000000000000000a1a2937444e565a5b5a564f473d3225180a00000000000000000000091d32465b6f8397acb39f8b7764503e3f54697d93a8a994806b56412c1702000000000011263a4f63778ca1b5a9948070879bb0af99846e59442f1a05000010253a4f64788ea3b8af9a867065798fa3b8a994806a55402b17020000001a2f44596e8499afb5a08b75899db1a3907c695643301c090000000000081d32465b70869aafb8a38f796571879bb0b19c88725d49341f0a0000000000162b4054697d94a8bea9947d6955474848413425170a0000000003192e43586c8297acbca8937d696d8398adb5a08b76614c37220d000000000000152a3f54687d93a8bdaa95806b564243423c30251b0e00000000000000000e23384d62778ca1b6b6a28d776a6a6a685e4c3925100000000000000718283848576573828d98a2aab0b2b4b0a6998876634f3b271300000000000f243a4f647882807d7c7c7c745f6d7d82838687887b67523d281300000000000c21364b60757b7b7b7c7c7d75604c596d7d82848788725d49341f0000000000192e43586d808082838384868687878889898b8b7965503b261000000000000000000c2035495d6d71737476787a7c8083877d68533e28130000152a3e53687c92a6bbaf9d93969a9fa7b1b7a694826d5a46311d0800000012273c51667b91a7b09b868095aaa5917c67523e291400000000000000051627384755616a6f706f6a635a4f433627190a00000000000000000003172b4054687c90a4b8a794806d5a493b50667a90a5ae99846f5a45301b0600000000000c2034495d71869aafad99846f8499afb09b866f5a45301b0600000c21364b60748a9fb4b39f8a7461768ba0b5ad98836e59442f1a060000001b30455a6f869bb0b7a18c768296aaac9986725f4c392613000000000002192e42576c8297abbda8937d696d8397acb5a08b76614c37220d000000000012273c51667a90a5baad98836e59443e3e3c3b3428190800000000152a3f54687d93a8bdac97836d697d94a9b9a48f7965503b261100000000000011263b5065798fa4b9ae99846f5a4543434240382c1c0b000000000000000a1f34495e73889db2baa590808080807c68533e2a15000000000000000a1a2a394756636f7b858e969b9f9f9c94897a6a584633200c00000000000c21364a5d6b6b6a68686767645761686b6d6f70737466523d28130000000000091d324658656666666768686659465262696c6e7173705d49341f0000000000162b3f52626a6a6b6c6d6e6f6f7070727374747473634f3a25100000000000000000061a2d404f5a5c5e5f616366686b6e717466523d2813000010253a4e63788da2b7ab958082858c94a0aeb19d8974604b36210d00000010253a4f647990a5b39d887b90a5aa96826c57432e1a050000000000000f2234455665737d85878580766c605345372718080000000000000000001125394d6175899cb0b09d8a786655454e63788fa4b19c88725d48331e080000000000061a2e43576b8094a9b39e89748397acb19c87705b46301b060000081d32475c70869bb0b8a38e796472879cb1b19c87725d48331e090000001c31465b70879cb1b7a18c767a8fa3b5a28f7b6855422f1c090000000000152a3f53687d93a7bcac97836d697d94a8b9a48f7965503b261100000000000e23384d62778ca1b6b19c87725d5353535250463725120000000011263b5065798fa4b9b09b8771667a90a5baa7937d68533f2a150000000000000d22374c61768ba0b5b29d88735e58585857554a3a281501000000000000061b30455a6f8499aebaac9c95959595826c58432e1a05000000000000000c1b2a3845525d68727a8287898a8782776b5c4c3b2917040000000000071b2e3f4e5657555353525250474e5356585a5c5e5f584836230e00000000000316293a485151505052535352493b44505457595c5e5d51412e1a00000000000f223444505454565758595a5a5b5b5c5e5f5f5f5f564634200c0000000000000000001022313e4547484a4c4e505356585c5f584836230e00000c21354a5f74899eb3ad98836e7077828f9fb1a38e78634e39240f0000000e23384e63788da3b5a08b778ca1af9b86715d48331f0a000000000005182b3e51637384919a9c99938a7d716355453626150400000000000000000a1e3145596c8093a7b9a795847363564f64798fa4b49f8a745f4a341f0a00000000000014283c5165798ea3b7a38f798095abb29d88725c47321d07000003192e43586d8397acbca7937d686e8398adb5a08b76614c37220d0000051d32475c72889db3b7a18c7673889cb0ab9885725f4c392512000000000011263b5064798fa3b8b09c8772657a90a5b9a8937d68543f2a1500000000000a1f34495e73889db2b5a08b7668686868676355422e1a050000000d22374c61768ba0b5b4a08b7662778ca1b6ab96826c57422d18040000000000091e33485d72879cb1b6a18c776e6e6e6e6c685744301b0600000000000000182c41566b8095a3a5a5a7a8aaab9b86715d48331f0a00000000000000000c1a2734404c555f666d717474726d64594d3e2e1d0c000000000000001021303b4141403f3d3c3c3b353a3f41434547484a453a2b19070000000000000b1c2a363c3c3b3b3c3e3e3d372b333b3f4244474949413323110000000000051726333b3f40404243444444464647484a4a4a4a44382817040000000000000000000413212b3032333537393b3e4044474a453a2b19070000071c31465b70869aafb19c87725d64708294a8a59079644f3a250f0000000d22374c61768ca1b6a28d77889cb1a08b76624d38240f00000000000c2034485b6e8292a2aeb1aea69c908273635443332110000000000000000002162a3d5063778a9dafb3a29182746862687c92a6b6a18c76604b36210b0000000000000e22364b5f73889cb1a894807d94a9b39e89735e48331e09000000152a3f54697d93a8bdac97826d6a8094a9b8a38f7964503b26110000091e33485e73899fb4b7a18c766c8295a9b5a28f7b6855412e1b08000000000d22374c61768ba0b5b5a08b7661768ca1b5ab97826c57422d190400000000061b30455a6f8499aeb9a48f7d7d7d7d7d7c715d48331e09000000091e33485d72879cb1b9a48f796573889db2af9a86705b46311c070000000000051a2f44596e8398adbaa591848484848383735e49341f0b0000000000000014293e52677c8d8e909091939597998b76624d38240f0000000000000000000a16232e39424b52585c5f5f5d5851473c2f2010000000000000000003121f282c2c2b29282727262126292c2e3032333431281c0d00000000000000000c19222727262627282928231a20272a2c2f3234342e231505000000000000081620272a2b2b2c2e2f2f2f303132333434343430271a0b0000000000000000000000030e161b1c1e20222426282b2f323431281c0d00000001182d42576c8296abb4a08b75605364798fa4a28e78634e39240f0000000b20354a5f748b9fb4a48f798398ada5907b67523e2914000000000013273b4f63778b9eb0c0c7c2b9ada092827161503f2d1b0900000000000000000e2134475a6d8092a5b7afa092867c77778698acb7a18c76604b36210b000000000000081c3045596d8297abae99857c93a8b49f89745f4a341f0a00000012263b5065798fa4b9b09b8771667b90a5baa7927c68533e291400000b20354a5f748ba0b5b7a18c7665798ea2b6ab9885715e4b38251200000000091e33485d72879cb1b9a48f7a6573889db2af9a86705b46311c080000000000182c41566b8095aabeab9a94949494938b76614c38230e000000051a2f44596e8398adbca8947d696f8499aeb39e89745f4a35200b000000000000172c40556a8094a9b9ad9e99999999988c77624d39240f0000000000000010253a4e63757778797b7b7d808284877b67523d28130000000000000000000005111c262f373e43474a4a48443e342a1e1102000000000000000000010c1317171614131212110d111417191b1c1e1f1c150b00000000000000000000060e11121111121313130f070c1215171a1d1f1f1a11050000000000000000040c1215151617191a1a1a1b1c1d1e1f1f1f1f1c14090000000000000000000000000000000004090b0d0f1114161a1d1f1c150b000000000014293e53687c92a7b8a38f79645c687a8fa49c89745f4b36210c000000091e33485e73889db3a5907b8094a8aa96826c57432e1a0500000000182c41566a7d93a7bac0b3adacb1b0a090806e5c4a382613000000000000000005182b3d5063758899abbcb0a398908c8d95a4b5b7a18c76604b36210b00000000000001162a3f53677c90a5b39f8a7b91a6b5a08b75604b36200b0000000e23374c61768ba0b5b49f8b7562778ca1b6ab96826c57422d1803000d22374c61768c9aa1a9a18c766072879bafaaa18e7a6754412e1905000000051a2f44596e8398adbba994806a6f8499aeb39e89745f4a35200c000000000014293e52677c92a6a9abaca9a9a9a9a48f7a66513d281300000000172b40556a8094a5a7a998836e6b8296a7a8a28d77634e39240f00000000000013283d51667b90a2a4a5a7a9abadafa5917b67533e2914000000000000000b20344757616263646667686a6c6f727466523d281300000000000000000000000009131b23292f323434332f2921180d00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000011253a4f64798fa3b8a7927c6c70798697a493806d5945311c08000000041c32475c71879cb1a8937c7a8fa4af9b86715d48331f0a000000001c31455a6f8499aec2b1a298979ea9ae9d8c79675542301d0900000000000000000e213346586a7b8d9eafbfb5aca5a1a2a8b3c2b5a08b75604b36200b000000000000001024394d61768a9fb3a4918892a6b7a18c76614c37220d0000000a1f34495d72889cb1b9a48f796573889db2af9a85705b46311c07000c22374c61747d868d959c8c76606c80959a96918c85715c47321c0700000000162b4055697d94a3a5a798846e6b8095a5a7a28d78634e39240f000000000010253a4e63788e92949597999b9d9fa095806b56412d190000000012273c51667a8d909194958872687c90929394917b67523d28130000000000000f24394d63778b8d8f9092949698999b96826c57432e1a0600000000000004172939464c4c4e4f50525354575a5d5f584836230e0000000000000000000000000000080f151a1d1f1f1e1a150e05000000000000000000000000060d1216161614100b0400000000000000000000000000000000000000000000060d1216161614100b0400000000000000000000000000000000000000070b0e0f0f0f0f0d0a06020000000000000000000000000000000000000000000000050b0f1111100d090400000000000000000000000000000000000d22374c61768ba0b5ab968383868c97a295867563503d2a1602000000001b30455a6f869bb0a9947d768ba0b5a08b76624d38240f000000001e33485e73889db2b9a69384838c99a8a99785725f4c39261200000000000000000416283a4c5e6f8091a1b1c0bfb9b7b7bbc4c6b29d88725d48331e09000000000000000a1e33475b708599adafa19da2b0b8a38d78634e38230e000000061b3045596e8498adbda8937d696f8599aeb39e89735f4a35200b00091e324556626a717982888c766065798a86827c77726b5945301b060000000012273c51657a8c8f9093948873677c8f909293917c67523d281400000000000c21364b60747a7c7d8083848688898b8d85705c48331e000000000e23384c617277797c7d80837764777b7c7d8082806b56402b160100000000000b20354a5e707577787b7c7d828384868886725d49341f0a000000000000000b1b28323737383a3b3c3e3f4244484a453a2b190700000000000000000000000000000000000000000000000000000000000000000000000005101a21272b2b2b29251f180f0600000000000000000000000000000000000005101a21272b2b2b29251f180f0600000000000000000000000000000006121b202325252524221f1b16110b040000000000000000000000000000000000000711191f24262625221d181108000000000000000000000000000000091f34495d72889db2b2a198989a9fa79385766757463627160500000000192e43586e8499aeab968271879bb0a5907b67523e2914000000001f344a5f748b9fb4b5a08b766e7a8b9baca28f7c6855412d180300000000000000000b1d2f405162728393a2b0becaccccd0d3c0ac98846f5a45301b060000000000000004182d41556a7d93a1a3a5a7a9acaea48f79644f3a250f00000000172c40556a8094a6a8aa98836e6b8296a8a9a28d77634d39240f0002152838454e565d656d747c766b647175706c67625d584d3c2a1602000000000e23374c607176787b7c7d82776376797b7c7d80806b56402b160000000000081d314456636667696b6c6e707274767779735e49341f00000000091e31445460636467686b6c776a6466676870726c63513e301f0d0000000000071b2f42525d6066747067696b6c6f757274705d49341f0900000000000000000b161e222223252627292a2c2f333431281c0d000000000000000000030b0f0f0c090603000000000000000000000000000000000000000916222d363c4040403e39332b23190e020000000000000000000000000000000916222d363c4040403e39332b23190e020000000000000000000000000616242f35383a3a3a393734302b251f1810070000000000000000000000000000000d1a242d34393b3b3a37322c251b120600000000000000000000000000061b30455a6f8599aebfb3adadafb4a794887d7063544434231100000000182d42576c8398adad98836e8397acaa96826c57432e1a050000001f344a5f748ba0b5b49f89735e6c7d90989088806f5a442f1a05000000000000000000112233445564748492a0acb8c1c7c8c4b5a3907c6854402c1702000000000000000012273b5064798b8c8f90929497999c917b66503b26110000000013273c51667b8f919395978872687c91939496907b66523d281300000a1a28333b424a5159606c8380787169625b544d49443c2f1f0d0000000000091d3143535e61636667696b6a656b70747980847462513d291400000000000215273846536170746457595b64756e6264625543301b0000000002152636434b4e50525b6b7a8979695a54677a8477695c4e3d2a1600000000000012243445566676857d6e5f566175887b6e605242301c0800000000000000000003090c0d0e0f11121315171a1e1f1c150b0000000000000000000a161f2424211e1b1815120f0a020000000000000000000000000008182734404950555656534e473f362b2013060000000000000000000000000008182734404950555656534e473f362b2013060000000000000000000000122434424a4d4f4f4f4e4c4945403a332c241a11060000000000000000000000000f1e2b3740484d50504f4c4740382e24180b00000000000000000000000000182d42576c8296abc0b5a7a1a5abb1a49b8f82726252402e1c09000000162b40566b8296abaf9a866f7d93a7af9b86715d48331f0a0000001f344a5f748ba0b5b49f89745f607286847c746c6353402c17020000000000000000000516263747566573828f9ba5adb2b3b0a6988673604d3925110000000000000000000d21364a5e707577787a7c7d8284878a7c68533d2813000000000e23384d6173797b7d8082847764787c7d808283806b56402b160000000a161f272e363e45576c83948c857d766f6860585047392815020000000001142635424a4c4e5161696f757a8085898f948c76614c37220e000000000000182c4051617180837363545c6f82807264574837261400000000000918263036383f5368798a988878685e718595887a6c59442f1a0000000000000e23384d627485958d7d6d5d6b7d928c7d705f4b36210c000000000000000000000000000000000000000000000000000000000000000000000919273339393633302d2a27241e140800000000000000000000000416263644525c656a6b6b68625b52483d3124170900000000000000000000000416263644525c656a6b6b68625b52483d31241709000000000000000000001a2e41525e6364646463615d59544e473f372d23190d000000000000000000000d1e2d3c49545c62666664605b544b4135291b0c000000000000000000000000152a3f53687d93a8bdab988c90979ea6ad9f91826f5e4c392612000000152a3f546a8095aab19c8872798ea3b5a08b76624d3924100000001f34495e73899fb4b6a28d7763576b78706860585045362411000000000000000000000009192938475664707d8892999d9f9b948879685744311e0a000000000000000000091e33485d6f7069636567696c6f72757867523d2813000000000a1e324555616466686b828078716a67686a6b6c6e64523e291400000000030b131b222c42576c8398a099928a837b746c645745311d0800000000000817252f353743586d7d84898f94999ea3a38d78634e38230e0000000000001c31465b6f808f9282716265788c90837565513d281300000000000008141c21293e5367798b9c968676687b8ea197836f5a45301b0000000000000e23384d617486979b8c7b6b75899b9c8a75604c37210c00000000000000000000000003080c0e0e0c08010000000000000000000000000000142637454e4e4b4845423f3c3931261707000000000000000000001022334454626f798082827c766e655a4f4235271809000000000000000000001022334454626f798082827c766e655a4f42352718090000000000000000001f34495d70777979797876726e68625b534a40362a1e11030000000000000007192b3c4b5a6670777a7b79756f675e5347392a1b0b000000000000000000000011263b50657a90a5baa994807c838a94a0af9f8d7b6855422e1b07000013293e53687d94a9b49f8974758a9fb3a5917c68533e2a150100001d32475c72879cb1bba6927c68535d635c544c443d342718060000000000000000000000000b1a293846535f6b757d8488898782776a5b4b392714010000000000000000000a1f344a5f74857c756e6760585a5c60635b4b3824100000000002152737444c4f51566b82948d867d776f68605958534635230f0000000000000007172c42576c8398a9ada69f978f888075604b36200b00000000000007121b202d41566b80959ea3a9aeb3a8988877644f3a240f0000000000001c31465b6e8092a09080706f8395a0907b67523d28130000000000000001081024384a5c6d8090a19585758598a6927c6854402b170000000000000a1e32455668798b9c9a8a7a8092a598846f5b46321d09000000000000000000000710171d212323211c150c020000000000000000000000001b3043556263605d5a5754514d4435241200000000000000000006192c3f516272828c949796928a82776c60534536271809000000000000000006192c3f516272828c949796928a82776c6053453627180900000000000000001f34495d71879090908f8c88837d766f665d53483c2f211203000000000000102336485a6977838c90918f8a847a7064574839291908000000000000000000000e23384d62778ca1b6ad99846f6e768291a4ab9885715d4a36210d000012273c52677c93a8b6a18c7670869aafab96826d58442f1b0700001b30455a6f8499aec0ab97836d594a4e4941393129211609000000000000000000000000041524313a40464e5861696f7273716d64594c3d2d1c0a000000000000000000000a1f344a5f748b918a837a736c655d554e493d2d1b08000000000009192731383a40566b8297a19a928b847c746d645846331e0a0000000000000000172c41566a7b8b9aa8b7b2aba39c89735e49341f0a00000000000000000713283d52677c91a6b8beb8a9998a79695a4835210c000000000000182c3f51627385979e8f80798c9f9e8a75614c38240f000000000000000000081b2d3e4f61728394a394858fa2a08b77624e3a2511000000000000021527394a5c6d7d8fa0998a899ca6927d6954402c17030000000000000000040f1a232b313638383630281f130600000000000000000000001f34495e737875726f6c69666153412e1a0500000000000000000d2135495c6e80919fa8acaba69e958a7d7063544536271707000000000000000d2135495c6e80919fa8acaba69e958a7d7063544536271707000000000000001a2e43586c8296a5a5a3a09c97928b83797065594d3f302111000000000000172b3f5366778896a0a5a6a39f978e8275665747362513010000000000000000000b20354a5f74899eb3b29d88725d6474899fb4a18d7964503b2611000011273c51667b91a7b8a38e786c8296abb09c88725e4a35210c0000182d41576b8296aabfb19d8874604c38352d251d150d04000000000000000000000000000e2133424e545a60656a6f74797d8476604b3b2e1f0f00000000000000000000000a1f344a5f748ba09e968f888078716960513e2a150100000000000009151e232b40566b8297a8ada69f9890888276614c37220d000000000000000013273b4d5d6c7b8a99a8b6bfb19c87715c47321d080000000000000000000f24394e63778da2b7b9aa9a8b7b6b5b4c3c2b1805000000000000102233455667788a9b9e8f8496a998846f5b46321e09000000000000000000000f2132435465768898a3999dac9a86715c48331f0b000000000000000a1b2c3e4f60708293a39b9aa7a08c77634e3a261100000000000000000916212d363f464b4d4d4a443b31241506000000000000000000001e33485c6f838b8884827d7b715d48341f0b000000000000000014283c5064788c9eafbcc1c0bab2a79c8f82726354453525140300000000000014283c5064788c9eafbcc1c0bab2a79c8f82726354453525140300000000000014293e52677b90a5bab8b5b1aca69f968d83776a5d4e3f2f1e0c00000000001c31465a6f8395a6b3babbb7b3aba0938575655442301e0b000000000000000000071d32475c70869bb0b5a08c766b707b8da1b6a8937d68533e2914000011263b50667a90a5bba5907a687c92a6b6a28d78644f3b2612000014293e52677c91a5bab7a38f7b67533f2c1911090100000000000000000000000000000014293d5060686f74798084898e938d77624d3823100100000000000000000000000a1f344a5f748b9faeaaa39c958d857d6d58432e1803000000000000000209162b4055697a8a99a7b6b3aca49c8b74604b36200b00000000000000000b1e2f3f4e5d6b7a8a98a7b5b09b86705b46301b060000000000000000000b20354a5f74899eb3ab9b8c7c6c5d4d3d2e1e0d00000000000000041627384a5b6b7c8e9e9e98a2a7927d6955402c180300000000000000000000031426374758697a8b9bacb0a994806b56422e190500000000000000000f2031425364748696a7aeaf9b86715d4834200b00000000000000081827333f49535a5f62625f584e4233241505000000000000000000192c4053677a8f9c9997948c77624e3925100000000000000000192d42576b8094a8bbc7bbb2afafb3ad9f91827263534232200f000000000000192d42576b8094a8bbc7bbb2afafb3ad9f91827263534232200f0000000000000f24384d62768ba0b5c9cac6c0bab2a9a095897b6c5d4d3c2a1805000000001f344a5f74899eb2c4b5a8a1a2a9b1a3948372604d3a271400000000000000000001192f44586e8398adb9a48f7d80858d9aaabdab95806a543f2a1500000f253a4f647990a5baa8937c68788da2b7a7937d6955402c1703000f24394d62768ba0b4bfaa97836f5b48342116120d070200000000000000000000000000172c42576c7d83898f94999ea3a48f79644f3a25100000000000000000000000000a1f34495e7182909faeb7b0a8a097826b57412c170200000000000000000012263a4c5c6b7a8998a7b5bfb39d88735e48331e090000000000000000011121303f4e5c6b7a8997a5af9a866f5a442f1a05000000000000000000071c31465b70869aac9c8d7d6d5e4e3f2f1f10000000000000000000091b2c3d4e5f6f8091a1adb3a18d77634f3a261100000000000000000000000008192a3b4b5c6d7d8e9eaea38f7965513c281300000000000000000003142435465767788999a9aa95826c57432e1a050000000000000013253645515c666e747777736b6051423322110000000000000000001024384b5f72879aaeaba6917c68533e2a1501000000000000001c31465b70869aafc3b8a99f999a9ea6afa0918270604f3e2c1a0800000000001c31465b70869aafc3b8a99f999a9ea6afa0918270604f3e2c1a0800000000000a1f33485d71879bb0c4cbc1bdc0c3bcb2a6998b7b6a594735220f000000001f344a5f748ba0b5baa7978c8d98a8b2a18f7d6a5743301c08000000000000000000162b40556a8095aabeab9a949599a0aab8bfa994806a543f2a1500000f24394e63788fa4b9a994806a74899eb2ad98846f5b46311d09000a1f33485c708599adc1b29f8b7764513e2c2c27211c16110b0300000000000000000000162b40556a7d949ea3a9aeb2a999897865503b2610000000000000000000000000061b2f42536271828f9eaebcbca9947d69543f2a15000000000000000000000a1d2e3e4d5c6b798997a6b4b19c87715c47321c07000000000000000000031221303e4d5c6a788896a499846e58432e190400000000000000000001182d42576c82969d8e7d6e5f4f4030211101000000000000000000000e1f30415162728494a4b09b87725d4935200c000000000000000000000000000c1d2d3e4f5f7080909d9c8974604b37220e00000000000000000000061728394a5a6a7b8b9b9c8f7a66523d291400000000000000001b2f4354626e7983898d8d887d706151402f1d0a0000000000000000081c2f43576a7d92a6baab96826d58442f1b06000000000000001f34495e73899eb3bcaa9a8c84858a94a0ae9f8f7d6d5b4a37251300000000001f34495e73899eb3bcaa9a8c84858a94a0ae9f8f7d6d5b4a3725130000000000051a2e43586c8296abc0bbaea8abaeb4bbb7a999897664513e2b16020000001f34495e73889db3b39e8a787a8a9cafac9a87735f4b37230f00000000000000000013283d52677c92a7bcb8ada9aaadb4bcc2b4a38f7b66523d281300000e23384e63788fa4b1ac97826c6f8599adaf9e8975604c38230f0004192d41556a7d92a6b9bba794826d5a4841403b36302b251f160900000000000000000012273c51667a90a5b8bdb9aa9a8b7a6a5b4936220d0000000000000000000000000012253544536270808f9eacbba8937c68533e2813000000000000000000000010202f3e4d5b6a798896a4b09b87705b46301b06000000000000000000000312202f3e4c5b6977869599846e58432e190300000000000000000000152a3e53687c928f7d6f605041312212030000000000000000000000011223344455657586969c96826d58432f1b06000000000000000000000000000010203141516171828887836e5a46311d0800000000000000000000000a1b2c3c4d5d6d7c89878775604c38230f00000000000000001f34495e72808c969ea2a29b8f806f5e4c3a271401000000000000000014283b4f63768a9fb2b09c87725d4934200b000000000000001f344a5f748ba0b5b4a08d7b6f7076828f9fad9c8b79675542301d0a000000001f344a5f748ba0b5b4a08d7b6f7076828f9fad9c8b79675542301d0a0000000000152a3e53687c92a6bbaf9d93969a9fa7b1b7a694826d5a46311d080000001c31465b70869bb0b19c87706c8093a7b6a28f7a66523d291400000000000000000010253a4f64798fa4a8abafb1b3b4b5b3aea4968673604c38240f00000d23384c62778d9b9c9d99846e6b809598999b8f7a66523e2915000012263b4e62768a9eb1c4b19e8a7765535655504a453f3a3327180700000000000000000e23384d61768ca0b5baab9b8c7c6c5c4d3d2c1a06000000000000000000000000000717263544526170808f9daba7927c67523c271200000000000000000000000211202f3d4c5b69778795a39b866f5a442f1a0500000000000000000000000211202e3d4b5967768695836d58432e19030000000000000000000011253a4f64788e8070605142322313040000000000000000000000000005162737475868778888877b67523e291500000000000000000000000000000003132334445363727370706654402b17020000000000000000000000000e1e2f3f4f5e6e7371706b5a46321d0900000000000000001f34495d708598a9b1b7b7ac9e8d7b695744311d0a00000000000000000c2033475b6f8397abb5a18c77634e392510000000000000001f344a5f748ba0b5af9a85705d5b64718291a2a89785725f4c392613000000001f344a5f748ba0b5af9a85705d5b64718291a2a89785725f4c392613000000000010253a4e63788da2b7ab958082858c94a0aeb19d8974604b36210d000000192f44586e8398adb29d887263778da1b6aa95826c57422d190400000000000000000d22374c61768b8f9396999c9e9fa09e9a928777675643301d0900000d22374c627786868788888670667b8283858687826d58432e1800000b1f33475a6d8295a7babaa7958371606a6a645f59544e4536251200000000000000000a1f34495d72889cb2ac9c8d7d6d5e4e3e2f1f0e00000000000000000000000000000008172635435261707d8d9ba7917b66503b261100000000000000000000000002111f2e3d4b5a687685949b866f5a442f1a0500000000000000000000000002101f2d3b4958677686836c57422c1702000000000000000000000d21364b607580706151423223140400000000000000000000000000000009192a3a4a59697472706f604c38240f000000000000000000000000000000000516263545545e5e5b5b5648372411000000000000000000000000000011213140505c5f5c5b584d3d2a170300000000000000001a2e4154687b8fa2b6c5c7bbab998673604d392511000000000000000004182c3f53677b8fa3b7a6927c68533f2a15010000000000001f344a5f74899fb4ad98836e58475362728496a9a28f7c6956422f1b080000001f344a5f74899fb4ad98836e58475362728496a9a28f7c6956422f1b08000000000c21354a5f74899eb3ad98836e7077828f9fb1a38e78634e39240f000000162c40566b8095aab5a08b766173889db2af9a86705c47321d0900000000000000000a1f34485d6f76797d828587898b8b89868075685a4a3927140100000b20354a5d6d6f70707273746d5e6a6c6d6f7070736a56422d18000004172b3e5164778a9dafc1b2a18f7d70797d79736e686254412e190000000000000000061b30455a6f8499ad9d8e7d6e5f4f403020110100000000000000000000000000000000081725344351606e7d8c9b917b66503b26110000000000000000000000000001101f2d3c4a5866758594846f5a442f1a0500000000000000000000000000010f1d2b3a49586776826b56402b160100000000000000000000091e32475c6f716152423324140500000000000000000000000000000000000c1c2c3b4b595f5c5b5a5142301d09000000000000000000000000000000000008172736434949464642382a1a080000000000000000000000000000031322323f484a4746443c2f1f0d0000000000000000001225384c5f72869aadb0b3bdb6a3907c6855402c180400000000000000001024384c6074889cb0ab97826d58432f1a060000000000001e33485d72889cb2af9a856f5a45445567798c9fac9986725f4b37230f0000001e33485d72889cb2af9a856f5a45445567798c9fac9986725f4b37230f00000000071c31465b70869aafb19c87725d64708294a8a59079644f3a250f00000013283d52677c92a7b9a48f79656f8498adb49f8a75604b37220d000000000000000005192d40515c6165686c6f7273747473706a62584a3c2c1b09000000071b2e404f595a5b5b5c5e5f5c4f5557585a5b5c5e594c3a27130000000e2235485a6d8091a3b4bead9d8f8488938e88837d715c47321d000000000000000000172c41566b80959e8f806f605041312212020000000000000000000000000000000000000716253342505f6d7c8c907a65503b26110000000000000000000000000000010f1e2c3a4857667585846e58432e19030000000000000000000000000000000d1c2b3a4958687468543f2a15000000000000000000000004192c3f515d5e534334241506000000000000000000000000000000000000000e1d2d3b464a4746453f332413010000000000000000000000000000000000000918252f343431302e261a0c000000000000000000000000000000000414222d333432302f291e1101000000000000000000091c3043566a7d919d9ba0adbdac9884705b47331e0a0000000000000000091d3145586d8295a9b09b87725d49341f0b0000000000001b30455a6f8499aeb19c88725d4837495c6f8396aaa28e7a66523e2a160200001b30455a6f8499aeb19c88725d4837495c6f8396aaa28e7a66523e2a160200000001182d42576c8296abb4a08b75605364798fa4a28e78634e39240f00000010253a4f64798fa3b8a8947d696a8094a9b8a38f7965503b26110000000000000000001122323f484c5053575a5c5e5f5f5e5b564f453a2c1e0e00000000001122313d4444464647484a483e40424344464748463c2e1d0b00000005182b3d5062738697a7b7bbaca0999ba5a29d9789735e48331e00000000000000000013283d52677b918f807061514232231304000000000000000000000000000000000000000007152432414f5e6d7c8c79644f3a250f000000000000000000000000000000000e1c2b3948576675826c57422c1702000000000000000000000000000000000d1c2b3a4a585f594a39251100000000000000000000000010223240484942352516060000000000000000000000000000000000000000000f1d2a32343230302b221506000000000000000000000000000000000000000008131b1f1f1c1b1913090000000000000000000000000000000000000410191e1f1c1b1a150c01000000000000000000000014273a4e61758889868f9fb2b39f8a76614d38240f00000000000000000115293e5165798ea2b5a18c77624e392410000000000000182c41566b8095aab5a08b76624d394053667a8fa3aa96826d5945311c080000182c41566b8095aab5a08b76624d394053667a8fa3aa96826d5945311c080000000014293e53687c92a7b8a38f79645c687a8fa49c89745f4b36210c0000000d22374c61768ba0b5ad98836e667a90a4b9a8937d69543f2a150100000000000000000514222c33373b3f424547484a4a4946423b33281c0e0000000000000413202a2f2f3030323334332c2b2c2e2f303233312a1e1000000000000e2133445667788999a8b6bdb3afafb7b7b19d88725d48331e0000000000000000000f24394e63778d8070615142332314040000000000000000000000000000000000000000000006142331404f5e6d7c78634e38230e00000000000000000000000000000000000d1b2a39485767746955412c170100000000000000000000000000000000000d1c2c3b454a463b2d1b090000000000000000000000000414222d33342f25170800000000000000000000000000000000000000000000000c171d1f1d1b1b17100500000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000b1e3245596c8075708396aab9a5907b66523d29140000000000000000000e22364a5e72879bafa6917c67533e291500000000000013283d52667b90a4b9a5917c685340374b5f73889cb19d8974604b37220e000013283d52667b90a4b9a5917c685340374b5f73889cb19d8974604b37220e0000000011253a4f64798fa3b8a7927c6c70798697a493806d5945311c08000000091e33485d72889db2b19c887361768ba0b5ac97836d58432e1a050000000000000000000410191e22262a2d303233343434312d2720160b0000000000000000030e161a1a1b1b1d1e1f1e191617191a1b1c1e1c160d000000000000031527394a5a6b7a8a98a6b2bdc4c4cabeac98846f5a45301b0000000000000000000b20354a5f7382716152433324150500000000000000000000000000000000000000000000000004132231404f5e6e72614c38230d0000000000000000000000000000000000000c1b2a3949585f5a4c3a2612000000000000000000000000000000000000000e1d293134322a1d0f00000000000000000000000000000511191e1f1b12070000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000040c10110f0c09070402010b121513100c090603000000000000000000000008101414120f0c0a080603000000000000000000000000000000000216293d50626d65667a8fa3b8aa95826b57422d19040000000000000000071b2f43576b8094a8ab96826c58432e1a0500000000000f23384c61758a9fb3ab97836f5b473445596d8397aca38f7965513c271300000f23384c61758a9fb3ab97836f5b473445596d8397aca38f7965513c2713000000000d22374c61768ba0b5ab968383868c97a295867563503d2a1602000000051b30455a6f8599aeb6a18c776272879cb1b09b87715c47331e09000000000000000000000004090d1115181b1d1e1f1f1f1c19130c030000000000000000000000000000000000000000000000000000000000000000000000000000091b2c3d4d5c6b7a8895a0a9b0b4b5aea08f7c6854402c17000000000000000000071c31465b6e726253433425150600000000000000000000000000000000000000000000000000000413223140505c5e5444311e09000000000000000000000000000000000000000c1b2b3a454a463c2e1d0a00000000000000000000000000000000000000000c161d1f1d170c000000000000000000000000000000000000000000000000000000000000000000000000000000000004090d0f0f0e0c0802000000000000000000000000000000000000000b1720252624211e1c1917141e262a2825211e1b18151008000000000000000e1a24292a2724211f1d1b1810050000000000000000000000000000000d2033445258546074899eb3af9a86705b46321d0800000000000000000014283c5065798da1b09b87715d48331f0a0000000000091e32475b6f8498acb29f8b7763503d3f54697d93a8a994806a55412c170200091e32475b6f8498acb29f8b7763503d3f54697d93a8a994806a55412c1702000000091f34495d72889db2b2a198989a9fa79385766757463627160500000000182d42576c8296abbaa5907b676e8398adb49f8b75604c37220d00000000000000000000000000000000000000000000000000000000000000000000000000070b0b0804010000000000000000000000000000000000000000000000000e1f2f3e4d5c6a76838d959c9fa09c9182715f4c39251100000000000000000001172b3e505c5e54443525160700000000000000000000000000000000000000000000000000000000041322323f4849433626150200000000000000000000000000000000000000000d1c283134322a1e1000000000000000000000000000000000000000000000000000000000000000000000000000000a11181c1e1e1d1a1610090100000000000000000000000000000000000610181e22252523211c16100700000000000000000000000000000000091a28343a3b393633312f2c28303b3f3d3a3633302d2a241b0e00000000000c1d2c373e3f3c39373432302c2316070000000000000000000000000000041626343f43465b70869aafb39e89745f4b36210c0000000000000000000d2136495d72869aaea08b76624d38240f000000000003182c4054687c91a5b8a793806c5a483b50667b90a5ad99846f5a442f1a060003182c4054687c91a5b8a793806c5a483b50667b90a5ad99846f5a442f1a06000000061b30455a6f8599aebfb3adadafb4a794887d706354443423110000000014293e53687d93a7bcaa95806b697d94a9b8a38f7965503b261100000000010d151a1c1e1e1e1b18130e0700000000000000000000000000000000000006121b20201d191613100d0906030000000000000000000000000000000000000111202f3e4c5965707982878a8b888072635342301d09000000000000000000000f21323f484943362617070000000000000000000000000000000000000000000000000000000000000414222d33342f251809000000000000000000000000000000000000000000000b151c1f1d170d000000000000030b0f0f0d0b08050301000a1113120e0b070402000000000000000000000007131d262c313333322f2a241d140b0000000000000000000000000000000c19232c33373a3a3836312b231a11050000000000000000000000000000142738464f504e4b484644413d414e54524f4b4845423f382c1e0d0000000016293b495354514e4c494745403425140200000000000000000000000000000817222b2e42576c8297acb7a28e78644f3a2510000000000000000000061a2e43576a8093a7a5907b67523e29140000000000001125394d6175899db0af9c8a776654444e63788fa4b19c87725c47321d0800001125394d6175899db0af9c8a776654444e63788fa4b19c87725c47321d0800000000182d42576c8296abc0b5a7a1a5abb1a49b8f82726252402e1c0900000011263b5064798fa3b8ae99856f667a90a5b9a8937d69543f2a1501000002121f292f32333333302d28221b130a0000000000000000000000000000000616242f3535322f2b2825211e1b1815110e0a0300000000000000000000000000000211202e3b48535d666d727474726c61544536241300000000000000000000000313222d33342f25180900000000000000000000000000000000000000000000000000000000000000000410191e1f1b130800000000000000000000000000000000000000000000000000000000000000000000000a161f242522201d1b1815121d25282723201c1917140f070000000000000009182530394046484847443f3931271d11050000000000000000000000000e1d2a363f474c4f4f4e4a453f372d22170a000000000000000000000000001c304456636663605e5b5856504d5f696764605d5a57534a3c2a17040000001d31455867696663605e5c5a5243311e0a000000000000000000000000000000050f162a3f54697d94a9bba7927c68533e29140000000000000000000014283b5064788da0aa96826c57432e1a0500000000000a1e3246596d8294a7b9a795837262554f64798fa4b49f89745f4a341f0a00000a1e3246596d8294a7b9a795837262554f64798fa4b49f89745f4a341f0a00000000152a3f53687d93a8bdab988c90979ea6ad9f91826f5e4c3926120000000d22374c61768ba0b5b29e897362778ca1b6ac97836d58432e190500000f20303c434748484845423d362f261d130800000000000000000000000000122434424a4a4744403d3a3633302d2a26231e160b000000000000000000000000000002101d2a36414a52585d5f5f5e584f44362718070000000000000000000000000410191e1f1b130800000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000009192733393a373532302d2b272f393e3c3835312e2c29231a0d000000000008182736424d555a5e5e5c59534d443a2f221506000000000000000000000c1d2c3b48535b616464635f5a534a4034281a0b0000000000000000000000001f344a5f737a787573706e6b6152677c7c7875726f6c675947331e090000001f344a5f747d7b787673726f614e39240f000000000000000000000000000000000012273c51667b90a5baab96826c57422d19040000000000000000000c2135495d71869aae9b86715d48331f0a000000000003162a3e5164778a9eb0b2a19182736760687c91a6b6a18c76604b36210b000003162a3e5164778a9eb0b2a19182736760687c91a6b6a18c76604b36210b0000000011263b50657a90a5baa994807c838a94a0af9f8d7b6855422e1b070000091e33485d72879cb1b6a28d786373889db2b09b86715c47321d080000182b3e4e585c5e5e5d5a56514a423930251a0e0100000000000000000000001a2e41525e5f5c5855524f4b4845423f3b3832281b0b0000000000000000000000000000000c19242e373e44484a4a49443c32261809000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000070e1313110f0c090704040e141716120f0b080603000000000000000000142637454e4f4c4a474542403b404d53514d4a4743413e372b1d0c0000000314263645535f696f7373716d6860574c4033241506000000000000000006182a3b4a59656f76797977746e665d524538291a0b00000000000000000000001e33475b70858d8b888684806b5764798f8e8b87858276604b36210c0000001d32475c7086908e8b89877b67523d281300000000000000000000000000000000000f24384d62778ca1b6af9a86705b47321d08000000000000000000061a2e42566a7d93a4a08b76624d38240f0000000000000e2135485b6d8293a5b7af9f91857a75768598acb7a18c76604b36210b0000000e2135485b6d8293a5b7af9f91857a75768598acb7a18c76604b36210b000000000e23384d62778ca1b6ad99846f6e768291a4ab9885715d4a36210d0000051a2f44596e8398adbba6927c686f8499aeb49f8a74604b36210c00001e33475b6b707373726f6b655e564c42372c1f1204000000000000000000001f34495d7074706d6a6764605d5a5753504d463929170400000000000000000000000000000006111b232a2f333434342f292015080000000000000000000000070d11131312100b060000000000000000000000000000000000010d1519191613100d09060300000000000000000000000000000000000d192328282624211f1c191621292c2b2724201d1b18130b000000000000001b3043556264625f5c5a57544f4c5e6866625f5c585652493b29170300000d2032445463717c84888987837c736a5e514233241403000000000000000f233547596876828a8f908d8983796f6356473828180700000000000000000000182d41556a7d93a09d9b9886715d62778ca19f9c998d77624c37220d000000192d42576c8296a3a09e94806a55402b1601000000000000000000000000000000000b2034495e73889db2b39f8a74604b36210d0000000000000000000013273b4f63778c8f8f907b67523e291609000000000005182b3e516376889aacbcafa2978f8b8b94a3b4b7a18c76604b36210b00000005182b3e516376889aacbcafa2978f8b8b94a3b4b7a18c76604b36210b000000000b20354a5f74899eb3b29d88725d6474899fb4a18d7964503b2611000000162b40556a8094a9beab96826c6b8095aab8a38e78634e3a251000001f344a5f738789898885807972695f55493d302214050000000000000000001f34495e73888683807c7876726f6c686562574734200c0000000000000000000000000000000000070f151a1e1f1f1f1b150d03000000000000000000000a141c222628292725201a130b010000000000000000000000000002121f292e2f2b2825211e1b1814110e0b0704000000000000000000000b1c2b363d3e3b393634312f2b333d42403c393532302d271d100100000000001f34495e73797774726f6c6a6152677c7b7774706e6b665946321e09000015293c4f6172828f989d9e9c9790877b6f61514232210f00000000000000172b3f52657687959fa4a5a29d968d82746556463624120000000000000000000012263b4f63788da1b3b0a08c77625f748a9fb4b1a38d77634e38230e00000014293e52677c91a6b5ac97836d58432e190400000000000000000000000000000000071c31455a6f8499aeb8a38e79644f3a2611000000000000000000000c2034485c6f7778797b7c69543f3427180800000000000e213446586a7c8e9fb0c0b4aaa3a0a0a6b2c1b5a08b75604b36210b000000000e213446586a7c8e9fb0c0b4aaa3a0a0a6b2c1b5a08b75604b36210b00000000071d32475c70869bb0b5a08c766b707b8da1b6a8937d68533e291400000012273c51667b90a5baaf9a8670677c91a6bba6917c67523d281400001c31465a6f85999f9d9a958e867c72675a4e403223140500000000000000001c31455a6f85999895918e8b8884827d7975634f3a25100000000000000000000000000000000000000000000000000000000000000000000000000002101c272f363b3e3e3c39352e271e14080000000000000000000000000f20303c4344403d3a3633302d292623201c181005000000000000000015283a485253504e4b4946443f42505755514e4b4745413a2e1f0e00000000001e33485c70858c89878583806b5664798f8d8986838075604b36210c00001b2f44586c8091a0acb2b3b1aba3998d8070604f3e2c1a070000000000001c31455a6e8294a5b2b9bab7b1a99f928474645342301d0a0000000000000000000c2035495d72879bafbaa6917c685d72889db3b9a48f78634e38230e0000001025394e63788da2b7af9b86705b46311c070000000000000000000000000000000000182d41566b8095aabca7927d68543f2a150100000000000000000005192d40515f6263646667635c524536261503000000000517293b4d5e708292a2b2c1beb8b5b5bac3c7b29d88735e49341f09000000000517293b4d5e708292a2b2c1beb8b5b5bac3c7b29d88735e49341f090000000001192f44586e8398adb9a48f7d80858d9aaabdab95806a543f2a150000000e23384d62778ca1b6b39e897463788da2b7aa95806b56412c170200182d41566b8095aab2aea9a2998f84786c5e50423223140300000000000000182d41576b8296aaaaa6a3a09c999693907b66513c271200000000000005111a1f1f1b16110d0905010000000000000000000000000000000000000111202d39434b505353524e49433a31261a0d0000000000000000000000182b3e4e585855524f4b4845423f3b3835312c231607000000000000001c31455866686663605e5b58534e606c6a66635f5c5a564c3d2b180400000000192d41566a7d939f9c999786715c62778da29e9b988d77624c37220d00001f34495d72879baebebbafa9aab1ab9e8f7d6d5c493724110000000000001f344a5f73899db1c3b6a9a3a3abb0a29382715f4d3a2714000000000000000000061a2e43576c8095a9bdac97836d6070879bb0baa59079644f3a250f0000000c20354a5f74899eb3b39e89735e49341f0a000000000000000000000000000000000014293e52677c92a6bbac97836d58442f1a050000000000000000000013263849586671777b7b776f63544432200d00000000000c1e2f415263738494a3b1bfcbcbcbced4c1ac98846f5a45301b0600000000000c1e2f415263738494a3b1bfcbcbcbced4c1ac98846f5a45301b060000000000162b40556a8095aabeab9a949599a0aab8bfa994806a543f2a150000000b2034495e73889db2b7a38e786474899eb3ae99846f5a45301b060014283d52677c91a6bbb7a79ea2a2968a7c6e6051423221110000000000000014293e53687c92a7bbbbb4a9a7ababa8937d68533e291400000000000515232e34342f2b26221e1a16120a000000000000000000000000000000000f1f2f3e4b565f65686867635d564d43372b1d0e000000000000000000001e33475b6b6d6a6764605d5a5753504d4a4640342514010000000000001f344a5f747d7a777673706e6352677c807b7774726f6a5b48331f0a0000000013273b5064788da2b1afa08b76625f748b9fb3b0a38d77634d38230e00001f344a5f748ba0b5beac9d94959fadad9c8b796653402d190500000000001f344a5f748ba0b5bba8988e8f99a9b1a08f7c6956432f1b0700000000000000000014293d5165798fa3b7b19d887676768499afbba5907964503b2510000000071c31465b70859aafb6a18c76614c38230d000000000000000000000000000000000010253a4f64788ea3b8b09b87725d48331f0a000000000000000000071c2f43556776848d90918c8272614f3c2914000000000000122334455565758593a1adb9c2c8cac5b6a4917d6955402c1702000000000000122334455565758593a1adb9c2c8cac5b6a4917d6955402c1702000000000013283d52677c92a7bcb8ada9aaadb4bcc2b4a38f7b66523d2813000000071c31455a6f8599aebca7927d6870869aafb29d88725d49341f0a001025394e63788da2b7af9b89909ea79b8d7d6f60503f2e1d0c00000000000010253a4f64788ea3b8bba7969296999c95806a55402b160000000000112333414949443f3b37332f2b261d100100000000000000000000000000081a2c3d4d5c6872797d7d7b77726a6055493b2c1d0d0000000000000000001f344a5f7483807c7876726f6c6865625f5b5243311e0a0000000000001d32465b6f84908d8b8886826c5864798f908d8a878476604c37210c000000000c21354a5e72879bafbaa5917c685e73889db3b9a48f78634e38230e00001f344a5f74899fb4b5a18e80828fa0b3a89683705c4834200c00000000001f34495e73899eb3b39f8b797b8b9db0ac9986725f4b36220e0000000000000000000e22374b5f74889db1b7a2908c8c8c8d9cb0bca7917b66503b261100000001182d42576c8296abb9a48f7965503b261100000000000000000000000000000000000c21364b60758a9fb4b5a08b76614d38240f0000000000000000000d22364b5f728595a1a5a69f90806c58432f1a000000000000051627384757667583909ca6aeb3b5b1a7988774614e3a261100000000000000051627384757667583909ca6aeb3b5b1a7988774614e3a261100000000000010253a4f64798fa4a8abafb1b3b4b5b3aea4968673604c38240f00000000182d41566b8095aaadab97826d6c8297acafa08c76614d38230e000c20354a5f74899eb3af9b86808f9fab9d8e7d6e5d4c3b29180600000000000c21364b60748a9fb4b8a38d7c8284878b826c57422c1702000000001a2e41515d5d5954504c4844403a2e1f0f000000000000000000000000001124374a5b6b7a868e9394918d867d7266594a3b2b1a0900000000000000001d32475c708694918e8b8884827d7977736f604d39240f000000000000182c4055697d92a3a09d9b87725d62778ca1a29f9c8d77624c37220d00000000061b2f43586c8295aabeab97826d5f70879bb0b9a48f79644f3a250f00001d32475c72879cb1b19c8771708396aab39f8c77634f3b271200000000001c31475c70879bb0b19c87706d8094a7b6a28e7965513d2814000000000000000000081c3145596d8397abbfaea3a1a1a1a2aababca7917c67523c27120000000014293e53687c92a7bba7937c68533e29140000000000000000000000000000000000081d32475c71879bb0b9a5907b66523d28130000000000000000000f253a4f64798ea2b3bbbbae9b87725d48331e00000000000000091a2a39485765727d89939a9ea09d95897a695744311e0b0000000000000000091a2a39485765727d89939a9ea09d95897a695744311e0b0000000000000d22374c61768b8f9396999c9e9fa09e9a928777675643301d090000000014283d52677c9196989a9b8671697d93989a9b8f7a65513c271200071c31465b70859aaeb39e89738291a3ac9c8c7b6a59473523110000000000081d32475c71869bb0baa6917b6b6f7275786b56412c1702000000001f34495d70726d6965615d58554c3d2c1905000000000000000000000000182c405467798a98a2a8a9a6a19a9085776859493827140200000000000000192e43586c8297a6a3a09c999693908c897b66503b261100000000000011263a4e63778ca0b4b3a18c77635f748a9fb4b4a38d78634e38230e000000000014293d52667a8fa3b8b19c887474748499afbba59079644f3a251000001b30455a6f8499aeb19c8771667a8fa3b8a7937d6a55402c1702000000001a2f44596e8398adb29c887264788da2b6a995806b57422d1904000000000000000001162a3f53687c90a5b9bba99c9b9c9ca2b1bda8937c67523c27120000000010253a4f64788ea3b8ab96826b57412d180300000000000000000000000000000000031a2e43586d8397acbeaa95806b56422d190400000000000000000f253a4f64798fa4b8c7c9b49f89735e48331e00000000000000000c1b2a394754606c768086898b8882786b5c4c3a2815020000000000000000000c1b2a394754606c768086898b8882786b5c4c3a2815020000000000000a1f34485d6f76797d828587898b8b89868075685a4a39271401000000000f24394e63777d828386878976657982838586887d6955402b160001182d42576b8296aab6a28d77738597a9aa9988766453412e1c090000000003192e43586d8397acbeaa95806a5a5d60635d4e3b281300000000001f34495d7287837d7976716d695b4834200b0000000000000000000000001d32465b708497a8b5bdb9b4b4ada2958777675644321f0c00000000000000152a3f54687d93a8b8b5b2aeaba8a5a1937c68533d28130000000000000b2034485d71869aaebba6927d695d72889db2b9a48f78634e38230e00000000000e23374b6074899db1b6a28f8b8b8b8c9cb0bca7917b66503b26110000182d42576c8296abb39f89746074899fb3ad99846f5a45301c0700000000172c41566b8095aab4a08b766173889db2af9a86705b47321d080000000000000000001024394d61758a9fb3b49f8b86878893a8bda8947d68533e2913000000000c21364b60758a9fb4ae99846f5a45301b060000000000000000000000000000000000162b3f54697d93a8bdae9a86705b47321d0900000000000000000e23374c6075899baab3b5ad9a86715c47321d0000000000000000000c1b2936434f59636a707374736e665a4d3e2e1d0b00000000000000000000000c1b2936434f59636a707374736e665a4d3e2e1d0b0000000000000005192d40515c6165686c6f7273747473706a62584a3c2c1b0900000000000b2034475966696b6e6f717371606a6c6e6f70727367543f2a15000014293e53687c92a6baa5907b67798c9fb2a69482705d4b3926130000000000152a3f54697d93a8bdad99846e59484b4e4a3f301f0c00000000001a2f43586d8296938f8b878377624d38230e0000000000000000000000001f344a5f74899eb3c3b3a69f9fa7b3a5958573614e3b28150100000000000011263b5065798fa4b9bdaa9c999c9fa394806a543f2a1500000000000005192e42566b8094a8bdac97836e6370869bb0baa59079644f3a250f0000000000081d31455a6e8397abbeaea2a0a0a0a0a9b9bca7917b67523c27120000152a3f53687d93a8b7a28d786470869aafb29d88735e4a35200b0000000014283d53687c92a7b8a38f79656f8499adb39f8a75604b36210d0000000000000000000a1e32475b708499adb6a28d78707b90a5bba9947d68533e291400000000081d32475c71879bb0b29d88725d48331e09000000000000000000000000000000000011263b5065798fa3b8b39f8a75604c37230e0000000000000000091d3145596b7d8c979ea09c8f7d6a56422e19000000000000000000000b1925313d464f565b5e5f5e5952493c2f2010000000000000000000000000000b1925313d464f565b5e5f5e5952493c2f20100000000000000000001122323f484c5053575a5c5e5f5f5e5b564f453a2c1e0e00000000000005182a3b49525456585a5c5e5e535557585a5b5c5e584a382511000010253a4e63788da2b7a994806a6f8295a8b1a08d7a6855422f1b080000000012273b50657a8fa4b9b19c88725d494140403b3224150300000000152a3e53687c91a6a4a09b907965503b26110000000000000000000000001f344a5f748ba0b5b9a6958a8b96a6b3a2917d6b5844311d090000000000000d22374c61768ba0b5b8a38e84878b8e91826b56412c170200000000000013283c5065798ea2b7b29d897878788499afbba5907965503b2610000000000002162b3f53687c91a5b9bbaa9e9c9d9ea3b2bda8937c67523c2712000011263b50657a90a5baa7927c686c8296abb6a28d77634e3925100000000010253a4f64798fa3b8a8937d696a8094a9b8a38e7964503b261100000000000000000004182c41556a7d93a7bba6927c68788fa3b8ab95806a543f2a1500000000031a2f44586d8397acb5a08b76614c37220d00000000000000000000000000000000000d22374b60758a9fb4b7a48f7a65513d281300000000000000000216293c4e5f6e7a84898b888070604d3a2713000000000000000000000008141f2a333b4246494a48453f362b1f1102000000000000000000000000000008141f2a333b4246494a48453f362b1f11020000000000000000000514222c33373b3f424547484a4a4946423b33281c0e00000000000000000d1d2b363d3f4143454749494240424344464748453a2c1b0800000c21364a5f74899eb3ad98846e65788c9fb3aa9885725f4b382410000000000e23384c61768ca0b5b5a08b7661575656544f4232200d000000001025394e63778da2b6b4a8937d68533f2a150000000000000000000000001e33485e73889db3b29e897678899baeae9b8874604c38240f000000000000091e33485d72889cb1b9a48f7a7275787b806c57422c17020000000000000d22364a5f73889cb0b7a3928f8f8f8f9eb1bca7917b66503b26110000000000001025394d62768b9fb4b4a08c87888994a8bda8937d68533e291300000e23384d62778ca1b6ab96826c677c91a6bba6917c67523e2914000000000d22374c61768ba0b5ac98836e667b90a5b9a7937d68543f2a150000000000000000000012263b4f63788da1b5ac97836d778da2b7ab96826b56402b160100000000162b40556a8094a9b8a38f79644f3a25100000000000000000000000000000000000091e32475c70869a9fa2a695806b56422d190500000000000000000d1f3041505d676f7374736c615242301e0b000000000000000000000000020d1720272d31343433302b23190e0100000000000000000000000000000000020d1720272d31343433302b23190e0100000000000000000000000410191e22262a2d303233343434312d2720160b000000000000000000000d1923282a2c2e303234342f2b2c2e2f30323330281c0e000000081c31465b70869aafb19d88735e6f8397abb5a28e7a6753402c18040000000a1f34495d72889cb2b9a48f796d6c6b6b6a61503c2813000000000b20354a5e73889db2c0ab96826c57422d180300000000000000000000001c31465b70869bb0b19c87706b7d92a6b7a38f7b67533e2915000000000000051b2f44596e8498adbda8937d696063676a62513e2a1500000000000000071c3044586d8296aabfb0a6a4a4a4a4acbbbca7927c67523c27120000000000000a1e33475c708599adb6a18d77727b90a5bba9947d68533e291400000b20354a5f73899eb3b09b867163778da2b6aa96826b57422d18030000000a1f34495e73889db2b19c887261768ca0b5ac97826d58432e19050000000000000000000c2035495d72879bafb19c8872758ba0b5ac97826c57422c17020000000012273c51667b90a5baa7927c68533e2914000000000000000000000000000000000004192d42576c8287898d919686705c48331f0a0000000000000000011223323f4b545b5f5f5e594f43342413010000000000000000000000000000040c13191c1f1f1e1b160f070000000000000000000000000000000000000000040c13191c1f1f1e1b160f0700000000000000000000000000000004090d1115181b1d1e1f1f1f1c19130c03000000000000000000000000070e131517191b1d1f1f1b1617191a1b1d1e1c150b0000000002192e42576c8297abb6a18c7762677b8fa3b7aa97836f5b47331f0b000000061b30455a6f8499aebda8938483838282806b56412c1702000000071b30455a6f8499adc2ae99856f5a45301b060000000000000000000000192e43586d8398adb29d887263778ca1b5aa96826c58432e1905000000000000172c40556a8094a9beac97836d584e5254504434220f0000000000000000152a3e52677b90a4b8b9a79a98999aa0afbda8937c67523c271200000000000004192d41556a7d93a7bba6927c68788fa4b9ab95806a543f2a150000071c31465b70869bb0b49f8b756173899eb2ae9a85705b46311c07000000061b30455a6f859aafb5a18c776272889cb1b09b86715c47321e09000000000000000000061a2f43576c8095a9b6a18d7773899eb3ad98836c57422d1803000000000f24394e63778da2b7aa95806b56412c1702000000000000000000000000000000000014293d51646f7174777c828676624d38230e0000000000000000000414212e3840464a4a49453d32251606000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000152a3f54687d93a7baa5907b676073889cb0b29f8b76624e3a251100000000172c41566b8095aabfb0a09998989797846e59442f1a0500000000172c41556a8094a9beb29d88725d48331e090000000000000000000000162b40556a8094a9b5a08c766172889cb1af9b86715c47331e0900000000000013283d52667b91a6bab09b87715c473d3f3c352c201000000000000000000f24384c60758a9eb2b49f8a83848692a7bca9947d68533e29130000000000000012273b5064788da1b6ab97826d778da2b7ab96826b56402b16010001192e43586d8397acb9a48f79656f8599aeb39e89745f4a35200c00000000182d42576c8296abbaa5907b666e8398adb49f8a75604b37220d0000000000000000000014293d51667a8fa3b7a6927c71879cb1af99846e58432e1904000000000b20354a5f74899fb4ae99846e59442f1a0600000000000000000000000000000000000e223546545a5c5f63676c7172614c38230d0000000000000000000004101b252c3134343430292014070000000000000000000000000001080c0c0a07040200010a1015161614110c040000000000000000000000020e161b1b17110c0701000000050b0d0b060000000000000000000000000000000000000910161a1b1b1b181410090200000000000000000000000000000000000000000000000a1114140f070000000000000000000011263b5065798fa4b9aa95806b586c8295aabaa6927c6854402b160200000013283d52677c91a6bbbeb2acabacac9c87715c47321d080000000013283d51667b90a5bab5a08b76604c37221414110b010000000000000013283d52677c91a6b9a4907a666e8398adb49f8b76614c37220e0000000000000f24394e63778da2b6b49f8a7560504f4f4e493e2e1d0a00000000000000091d32465b6f8498acb7a28e786e7a90a5baa9947d68543f2a14000000000000000c2135495e72879bb0b09c8772758ba0b5ac97826c57422c17020000162b4054697d94a9bda8937d696b8095aab7a28d78634e39251000000000152a3f53687d93a8bdaa95806b6a8094a9b8a38f7964503b2611000000000000000000000e23374b6074899db1ac97826f869bafaf9b866f5a442f1a0500000000081d32475c71879bb0b19c87725d48331e090000000000000000000000000000000000051728364044474a4e52575c5e5444311e090000000000000000000000000811181c1f1f1f1b160d030000000000000000000000000008141c21221f1c1a1715141d252a2b2b292520180e0300000000000000000313202a30302b26211b16110b0f192022201a130c050000000000000000000000000009131d242b2f3030302d29241d160d030000000000000000000000000000000000000006121c252a2923190c0000000000000000000d22374c61768ba0b5ae9a85705b667a8fa3b8ac97836e5945301b060000000f24394e63788da2b7b8a6989597989889745f4a35200b000000000f24394d62778ca1b6b8a38f78644f3a29292a261e120400000000000010253a4f64788ea3b8a994806a697d93a8b9a48f7965503b27120000000000000b20354a5f74899eb3b8a38e7867666464635c4c3a26120000000000000003172c4054697d92a6bba7927d69788ea3b8ab95806a543f2a1500000000000000061b2f43586c8295aab5a18c7773899eb3ad98836c57422d1803000012273c51667b90a5baac97836d677c91a6bba6917c67523e29140000000011263b5065798fa4b9ae99846f667b90a5baa7937d68543f2a1500000000000000000000081c31455a6e8397abb09c87728398adb09b86705b46301b0600000000021a2f44586d8398adb4a08b75604b36210d0000000000000000000000000000000000000a19242c2f3235393e4248494336261502000000000000000000000000000000000000000000000000000000000000000000000007172530363734312f2c2a2831393e40403f3a332b201407000000000000000f21313d4545403a35302a251f1f2c3437352e272019120b040000000000000000000e1a2630383f44464645423e38312920150900000000000000000000000000000000000b17242f393f3e362a1b0a0000000000000000091e33485d72879cb1b39e89745f60758a9eb3b19c88725d49341f0a0000000c21364a5f74899eb3b49f89808283838377624c37220d000000000b2034495e73889db2bba7917c67523e3e3e3f3a3022110000000000000c21364b60758ba0b4ad99846f65798fa4b9a8937d6954402b16010000000000071c31465b70869aafbba7927c7b7b7979786955402b16010000000000000011263a4e63778ca0b5ac97836e778ca1b7ab96826b56402b16010000000000000015293d52667a8fa4b8a6927c71879cb1af99846e58432e190400000e23384d62778ca1b6b19c877263788da2b7aa96826b57422d18030000000d22374c61768ba0b5b29d887362778ca1b6ac97826d58432e190400000000000000000002162b3f53687c91a5b5a18c778297abb19c87715c47321c070000000000162b40556a8094a9b8a38e78644f3a2510000000000000000000000000000000000000000711181a1d2024292e33342f251809000000000810141412100e0b090704000000000000000000000000000000000000000000122535434b4c494644413f3d444d535656534f473d32251607000000000000192c3e4f595a544f4a443f3a332e3d484c49423b342d261f170c00000000000001101e2b38434c53595b5b5a57534c453c32271a0d0000000000000000000000000000000c1b2835414c5452483927140100000000000000051a2f44596e8498adb7a38e79645b70869aafb5a08c76614c37220c000000081d32465b70869aafb6a28d776b6c6c6d6c5d4935200b00000000071c31455a6f8599aebfaa95806a55535353544d402f1c080000000000091e33485d72889cb1b29d887361768ba0b4ac97836d59442f1a05000000000001182d42576c8296abc0ac9b9391919090836d58432e1904000000000000000b2034485d71869aafb19d8873748ba0b5ac97826c57422c1702000000000000000f23374c6074899db2ab97826f869bb0af9a866f5a442f1a0500000b2034495e73889db2b5a08b766174899eb3ae99856f5a46311c07000000091e33485d72879cb1b6a28d776373889db2af9b86705c47321d08000000000000000000001025394e62768b9fb4a6927c8094a9b39d88725d48331e08000000000013283d52677b91a6bba7927c68533e29140000000000000000000000000000000000000000000002080b0f14191e1f1b1308000000000e1a24292a272523201f1c191106000000000000000000000000000000000000001b2f425360615e5b595754535660686b6b68635a4f423425140300000000001e33485c6d6e69645e59534e463a4c5b625d564f48413a332a1d0d00000000000f1f2e3c49555f686d70706f6c6760594f44382b1d0e000000000000000000000000000b1b2a3946535e68665644301c080000000000000000172c41556a8095aabca7937d69576c8297acb8a38e78634e38230e00000002192e43586c8297abbaa6917b67575758574e3f2d1a060000000000182d41576b8296abbfad98836e67686868695e4c38230f0000000000041b30455a6f8499aeb6a28d776371879bb0b19c87725d48331e09000000000000152a3e53687c92a7bcb9aca8a7a7a59b86705b46311c0700000000000000051a2e42576b8094a9b6a28d7873889db3ad98836d58432e180300000000000000091d31465a6e8397acb09b87728498adb09b86705b46301b060000071c31455a6f8599aeb9a5907a6670869aafb29e89735e4934200b000000051a2f44596e8398adbba6917c676f8499aeb49f8a745f4b36210c000000000000000000000a1f33475c708599adac97837c93a8b49f89735e49341f0900000000000f24394e63788ea3b8aa95806b56412c170200000000000000000000000000000000000000000000000000000000000000000000000c1d2c373e3f3c3a383634312d2316070000000000000000000000000000000000001f34495e717673706e6b6a6866737c82827d766d60524232200e00000000001f34495e73837d78736d68635746556977716a635c554e473b2b19070000000c1d2d3d4c5a67727b83878785827b746c6156493b2c1d0c000000000000000000000007182939485764707b735f4b37230f000000000000000013283d52677c91a6bbac97836d586a8095abb9a48f78634e38230e00000000152a3f54687d93a8bdaa95806b564243423c30251b0e000000000014293e53687c92a7bcb09b877c7c7d7d7d7b66513c2712000000000000172c41566b8296abbba6917c676d8397acb5a08b76614c37230e00000000000011263a4f64798fa3b8bbaa9e9c9d9f9e89735e49341f0a000000000000000014283c5165798ea2b7a7927d70879cb1af99846e58432e19040000000000000002172b4054687c92a6b5a18c778297acb19c87715c47321c07000000182d41576b8296aabea994806a6c8297abb6a18c77624d38230e00000000172c40556a8094a9beaa96826b6b8095aab7a28d78634e3925100000000000000000000004192d41556a7d93a7b19c887b91a7b5a08b745f4a35200b00000000000c21364b60758a9fb4ae99846f5a45301b0600000000000000000000000000070c0c0902000004090b0a080300000000000000000016293b495354524f4d4b4947403425140200000000000000000000000000000000001f34495d728789868482807a7685909696928a7d70604f3d2a1704000000001c31455a6f84928d88837c75624e5b7084867d77706962594936220e00000016293b4b5b6a78858f979b9c9a969088807367594a3b2a19080000000000000000000012243647576674828e7a66523e2a1603000000000000000f24394e63788da2b7b09b87715d6d8297acb9a48f78634e38230e0000000011263b5065798fa4b9ae99846f5a4543434240382c1c0b0000000010253a4f64798fa3b8b4a19391939494947d6954402b1601000000000014293e53687c92a7bcaa96826b697d93a8b9a48f7965503b27120000000000000d22374c60758b9fb4b4a08c878889898976614c37220c00000000000000000e22364b5f73889cb1ac97836f869aafb09b866f5a442f1a0500000000000000001125394e62778ba0b4a6917c8094a9b39d88725d48331e0800000014293e53687c92a6bbad98846e687d93a7baa5907b66513c27120000000013283d51667b90a5baae9a8570677c91a6bba6917c67523d2813000000000000000000000012273b5064788da2b6a28d7d90a5b6a18c76604b36210c0000000000091e33485d72879cb1b29c88725d48331e09000000000000000000000009131b21221e150a10191e20201d181007000000000000001d3145586768676462605e5c5243311e0a00000000000000000000000000000000001a2f44586d83979b9897937d8294a2ababa69c8f7d6d5a4733200c00000000182c41566b8095a29c97907b665161758a9a928b857d7665513c27120000001d31455869798896a2abb0b1afaba49c918577685948372513000000000000000000091c2f41536475859396826d5a46321e0a000000000000000c21364b5f748a9fb4b4a08b766b77899cb1b6a18c77624c37220d000000000d22374c61768ba0b5b29d88735e58585857554a3a2815010000000d22374c60758ba0b4bfb0a7a7a8a8a997836d58432e1904000000000010253a4f64798ea3b8ae9a867065798fa4b9a8937d6954402b16010000000000091e33485d71879cb1b5a08b767273737371604b36210c0000000000000000071c3044596d8296abb19c88738398adb09b87705b46301b0600000000000000000b1f33485c70869aaeab97827d93a8b49f89735e48331e0900000010253a4f64788ea3b8b29d887364798fa3b8a8947d6954402b16010000000f24394d62778da2b6b39e897463788da2b7aa95806b56412c1702000000000000000000000c21354a5e72879bb0a999949aabb8a38d77624c38230d0000000000041a2f44596e8499aeb5a08b76614c37220d00000000000000000008121c262f363732281a232c333634322c241a0e0100000000001f344a5f747d7b7977757370614e3925110000000000000000000000000000000000162a3f54697d93a7adab96827d92a7b1b6baad9c8a76634f3a26110000000013283d52667b90a5b1a994806a55667b90a4a79f998c7764503b26110000001f344a5f748797a6b4bfc2bdbcbeb8aea3968776665442301d0a00000000000000001124384c5e718393a39d8975614d39251100000000000000081d32475c70869bb0b9a48f7c808896a6b9b19c88735e4934200a00000000091e33485d72879cb1b6a18c776e6e6e6e6c685744301b06000000091e33485d72879cb1c4b1a0989898989886705b46311c0700000000000d21364b60758b9fb4b39e897461768ba0b5ac97836d58442f1a050000000000041a2f44596e8398adb9a48f7a655e5e5f5e5343301c08000000000000000001162a3e53677b90a4b6a28d788296abb19c87725c47321d07000000000000000004192d42566a8093a8b19c887b91a7b5a08b745f4a34200a0000000c21364b60748a9fb4b6a18c7762768ba0b4ac97836d58432e1a050000000b20354a5f73899eb2b7a28e786474899fb3ad99846e5945301b0600000000000000000000061b2f43586c8296aaadaca9adb5b7a48f78634e39240f000000000000172c41566b8095a6a9a38f7964503b261100000000000000000e1a252f39424a4c4538293540484b4a4640372c1f1103000000001d32465b6f84918f8d8b887c6854402b17030000000000000000000000000000000011263b4f64798ea3b8ae9984788e9f9ca3b0b9a6927d69543f2a15010000000f24394d62778ca1b6ac97836d586c8295aabbab97836f5c4835210d0000001e32475a6d8294a7bab5aea8a7aab1bbb3a59584725f4c3926120000000000000000172b4054677b8ea0b1a4907c6854402c180400000000000003192e43586d8397acbdaa9993959ba6b4bba996826d5945301b0700000000051a2f44596e8398adbaa591848484848383735e49341f0b000000041a2f44596e8398adc0ab96838383838383735e48331e090000000000091e33475c71879bb0b7a28e786472889cb1b09b87715d48331e09000000000000162b40556a8094a9bda8947d6954484a4942352516090000000000000000001024384d61758a9fb3a7927d7d94a9b39d88725d48331e0900000000000000000013273b5064798da2b6a28d7c90a5b6a18c76604b36210c000000081d32475c70869bb0baa5907b6672879cb1b09b87715c47321e09000000071c31465b70859aaebba7927c6870869bafb19c88725d49341f0a000000000000000000000015293e52677b909698999b9da0a2a5907965503b261100000000000014293e53687c8e919498927c68533e2914060000000000000c1d2c37414c555f6156453947535c605f5b53493d2f211101000000182c41556a8094a4a2a097836f5b46321e09000000000000000000000000000000000d21364b60748a9fb3b19c87748a8c8792a3b7ac97836c58432d18030000000b2034495e73889db2b09b87715d71879bafb6a38f7b6754402c1905000000182b3e5164778a9eada29a9391959ea9b8b2a18f7c6955412d1904000000000000071c31455a6f8397abb3a49784705b46311c0700000000000000162b3f54697d94a8beb7aba8aaafb8bcae9e8c7966523e2a16010000000000172c40556a8094a9b9ad9e99999999988c77624d39240f00000000172c40556a8095aabfad98836d6c6c6c6d6a5946311c070000000000041a2f44586d8397acbba7927c686e8498adb49f8b75604b36210d00000000000012273c51667b90a5baac97836d59443c3c3b3a332718070000000000000000091e32475b6f8498adac97837c93a8b49f89735e49341f0a0000000000000000000d21364a5e73889cb0a8989399aab7a28d77624c37220d00000003192e43586d8297acb5aa95806b6e8398adb49f8a75604b36210d00000001182d42576b8296aaafab96826c6d8297acb0a08b76614c38230e000000000000000000000c1724384d61757d82838487888b8d90927c67523c271200000000000c18253a4f6475787b808386826c57422c22190f030000000016293b49545e687274624e4957646f75746f665b4d3f2f1e0d00000012273c5065798fa3b7b29e8a75614d38241000000000000000000000000000000000081d32475c70869aafb49f8b75867b73889cb1af9a856f5a442f1a05000000071b30455a6f8499aeb49f8a7463778ca1b5ae9b87735f4c382411000000000e2134475a6d82939b90867d7c828c9aabbeac9985705c48331e090000000000000a1f34495e73899db2a69586796e5b46311c070000000000000012273c51667b90a5acafb2b4b5b4b0a99e90806e5c4936230f00000000000013283d51667b90a2a4a5a7a9abadafa5917b67533e29140000000013283d52677c91a7bbb09b87715c575758564c3c2a1602000000000000162b4054697d94a8bdab96826c6a8094a9b8a38e78644f3a25100000000000000e23384d62778ca1b6b19c87725d525252504e45362512000000000000000003182c4055697d92a7b29d887b91a7b5a08b745f4a35200b000000000000000000071b3044586d8296abaeaba8abb6b8a48f78634e39240f00000000152a3f54687d939ea0a299856f6a8094a0a2a38e78644f3a25110000000014293e52677c9197999c9b8671697d93999b9c8f7965503b27120000000000000000000d1c29343c465966696b6c6f707375777b7d7d69543f2a15000000000e1d2a343d47576063676a6d70746955413d362c2113040000001d31455867717b857c6854586775828b8a83786b5d4d3c2b190600000d22374b60748a9eb3b9a4907b67533f2a160200000000000000000000000000000003192e42576c8296abb8a38d78826e6f869bb0b09b866f5a442f1a0500000000172c41566b8095aab7a28d78687c92a6baa692806b5744301c090000000005182b3e5163768a8a7d726a676e7b8ea2b6b49f8b76614c37220d0000000000000b21364b60768ca0af9c8977685d503f2c1803000000000000000f24394d63778d93979a9d9fa09f9c968c807162513f2d1a070000000000000f24394d63778b8d8f9092949698999b96826c57432e1a0000000010253a4f64788fa3b8b49f8a75604b4243423a2e23180a00000000000012273c51657a90a5b9af9a8670667b90a5baa7927c68533e29140000000000000b2034495e73889db2b5a08b7667676767666254412e1905000000000000000012263a4f63778ca1b5a28e8290a5b7a18c76604b36210c00000000000000000000152a3e53677b9097999b9d9fa1a3a5907965503b26100000000011263b50647987898b8d8f8974667b898b8d8e8f7c68533e2a15000000001025394e637780838487888a75657a83858688897d6954402b150000000000000000091b2b3a47505658575456575a5b5e606366696c62503c28130000000b1c2c3b4751565857525255585c5f5a585651493e3123130300001f344a5f74848e9884705d687685939f9e968a7b6b5a4836230f0000081d32465b708599aebfab97836d5945311c0800000000000000000000000000000000152a3e53687d92a7bba6917b726771879cb1af99846f5a442f1a050000000013283d52677b91a6baa6917c6d8397acb19e8a76634f3b28140100000000000e2134475a6d807a6c6056525e73899fb4b9a48f79644f3a250f0000000000061221364b60768ca1aa95806c594a4032221000000000000000000b20354a5f72797d828688898b898782796f625344332210000000000000000b20354a5e707577787b7c7d828384868886725d49341f000000000d22374c60768ba0b5b8a38e78644f424242423f3628180700000000000e23384d62778ca1b6b49f8a7563778da2b6ab96826b56412d18030000000000071c31455a6f8599aeb9a48f7c7c7c7c7c7b715d48331e0900000000000000000c2034495d72869bafaa9b979cacb8a38d77624d38230e000000000000000000001024384d61768082848688898c8f91917c67523c2712000000000d21364b5e6d71737677797b76617274767778797b6a55402b16000000000b2034485a676b6c6f70737472606b6e6f7072737468543f2a1502000000000000011427384958636b6e6c675e524c5a656c6d6b665c514433210f0000021528394a59646b6e6c665d514d5b666c6d6b655c4f4131200e00001d32465a6e8397a08d7b6f788795a3b1b2a799897765523e2b18050003182d41566a8094a9bdb19d8974604b37230f0000000000000000000000000000000011263a4f64798fa3b8a994806a65798ca0b5ab96826c57422d1803000000000f24394e63778da2b6aa958073889cb1a995826e5a4733200c00000000000005172a3d5063756e5d4e465465778ca0b5bba59079644f3a250f000000000616242f384d62778da2a9947d68533e2e2314040000000000000000081c3043546165696c7072737474726d665d51443526160400000000000000071b2f42525d6062646667696b6c6f707274705d49341f00000000091e33485d72889db2bba6917c675757575757534636241000000000000a1f34495e73889db2b8a38f796473899eb3ae99846f5a45311c07000000000000182d41576b8296abbeaa9993939393928b76614c37230e0000000000000000061a2e43576c8095a8aaacacafb2b4a48f78644f3a240f000000000000000000000a1e334759676b6c6e70727476797c807d68533e291300000000071b2e404f595c5e606979887b6b5d5f657886796b5e503f2c180000000005182b3c4a5356575a5b5e5f5f5457585a5b5c5e5f594a3c2f2010000000000000091d31445667768083827a7062596a78828382796e60503f2d1906000a1e3245576876808382796f615a6b79828380786d5f4f3e2b180500172b3f53677b8fa39a8b868a97a5b3b4afb1a795826e5b4834200c000013273c5165798fa3b8b7a38f7a66523e2915010000000000000000000000000000000d22374b60758b9fb4ac97836d6f8295a8b9a5917c67533e291400000000000b20354a5e73899eb3ae9984788da2b4a08d7966523e2b1804000000000000000e21344757615e504a5664728394a7bbbaa59079644f3a250f00000000122434424a52667a8fa4a9947d68533e29130500000000000000000001142636444c5054575b5d5e5f5f5c58524a3f3426170800000000000000000012243441494b4c4f50525456575a5b5d5f5d51412e1a00000000051b30455a6f8599afbfaa95806c6c6c6c6c6c6453402b170200000000061b30455a6f8499aebca7937d6970869aafb29d88735e49341f0b00000000000014293e53687c92a7abacaba8a8a8a8a48f7a65513c281300000000000000000014293d52667a8f939597999b9da0a2907a66503b26110000000000000000000004172a3c4a53565b656b6c6a6564676a6d62503b271200000000001122313d454751657788978a7a6a5c6f82958a7b6e5b47321d00000000000d1e2c373e4d5b666c6d6b645b4f505d676c6c6a63594d3e2e1d0b00000000000f24384c6073859398968d82716476899598958c7d6e5c4935210d001125394e6174869498968d807065778a9698958b7d6d5b4834200c001024384c60738699a99e9b9ea8b5aea19a9ca89e8b77634f3b271200000e22374b60758a9eb3beaa95826d5844301c07000000000000000000000000000000091e33475c71879bb0b09b8670778b9fb2b19e8a75614d3924100000000000071c31465b70869aafb29d887c92a6ab9885705d4a36230f000000000000000004172939464c4a4e5b67748291a1b2c4b7a28d77634e38230e000000001a2e41525e63708295a9a9947d68533e2913000000000000000000000008182631383b3f424648494a4a47443e372d221608000000000000000000000616242e3436383a3b3d3f40424446484a49413323110000000000182d42576c8297abc0ae99858383838383836e5945301b070000000000172c41566b8095a8abac97836d6c8296abaca18c77624d38230e00000000000010253a4f64788e939597999b9c9fa0a294806b56412d180400000000000000000e23384c60757b7d80828486888b8d917c67523d281300000000000000000000000d1e2c3d4e5f6d78808280786e615558524433200c00000000000413202a303c516577899a98897868798c9f9a86715d48331e0000000000000e2236485a6b79828380786d5f5d6e7a828380766b5c4c3a2815010000000013283d52677b90a3adaa9f8f7c6b8093a6ada99d8c7864503b26120014293f53687c91a4ada99e8e7a6c8295a7ada89c8a77634f3a251000091c304356697c8fa0b0b0b2baae9f90858a99a7937d6a55412c180000081d32465b70859aaebfb09c88735f4a36220e000000000000000000000000000000041a2f44596d8398adb39e89747d93a7baa995826e5a46321e0a000000000000192d42576c8297abb5a18e8496aba38f7c6854433527180800000000000000000b1b283544525f6c788692a0afbfc3b09c88735f4a35200b000000001f34495d7078808f9fb1a5907b67523d281300000000000000000000000009151e23262a2d3133343434322f2a231a100500000000000000000000000006121a1f21232426282a2b2d2f313334342e2315050000000000152a3f54697d93a8bdb4a399989898989888735e4a35200c000000000013283d52667b90949598998772687d93969798907b66513c27130000000000000c21364b60757c7d8082848687898b8d8f85705b47331e090000000000000000091d3145576467686a6c6e707275787b806a543f2a1500000000000000000000000b1f33475a6c7c8b9594948c8071614f3f34261604000000000000030e162236485a6b7c8e9f9787778396a894806b57422e1a00000000000014293d5165778a9698958b7d6d697b8d979893897a6a5744301c0800000000152a3f546a8094a9bfbdab96826c8398adc3bba8937d68533e291300162b40566b8296abc0bcaa95806e8499afc3baa7927c67523c2712000114273a4d5f708292a0acb2ac9f9082717b8ea199846f5a46311c000003182d41566b8095a9a9a9a28e7965513c281400000000000000000000000000000000162b40556a8094a9b6a28d778499adb3a08d7966523f2b1703000000000000152a3f53687d93a7bcac9f99a1b29d88796e6153453626160500000000000000112233445362707d8a97a3b0bec5b6a593806c5945301c07000000001f34495e7389939eada3988875614d38240f0000000000000000000000000002090e1215191c1e1f1f1f1d1a150f0700000000000000000000000000000000060a0b0d0f11131416181a1c1e1f1f1a110500000000000012273c51667b90a5abacadadadadadada28d78634e3a251100000000000f24384d62757b7d808384877665798082838486806a55402b16010000000000081d3145576467686a6c6e7072737577787a735f4a341f0a00000000000000071625303a474f52535457585b5d6063666a614f3b2712000000000000000000000010253a4e63768a95867d80888f7d6c5945311c0800000000000000000006192b3c4d5f708292a396878d9fa28e7965503c2814000000000000182d42576c8295a7ada89c8a77708598aaada69987735f4b36210c0000000014283e53687c92a5b3b4a895806c8295a9b4b3a5927d68533e281300152a3f54697d93a6b4b3a794806d8297aab4b3a4917c67523c271200000a1d3042536473838f999c9a8f8271627286958b82715c47321c00000013283d52667b909494949794806b57432e1a0000000000000000000000000000000012273c51667b90a5baa5907b879bb0ac9884705d4a36230f0000000000000011263b5064798fa3b8bcb3afb0b5a5978c8071635444342312010000000000081b2e40516171808f9ba8b4c1bfb4a799887663503d291601000000001c31465b70869bafaa95867a6a58463522100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000e23384d63778d9495979898999b9c9d9e927c68533f2a1500000000000a1f3346576367686b6c6f70726a686a6b6c6e6f7066533f2a150000000000091826313b474f52535557585b5c5e60626366635644301c0700000000000003142534424d545757544e4544464e555857544f4337291a0a0000000000000000000013283e53687c928a77696b798c88745f4b36210c000000000000000000000d1e30415263748596a5999caa9c88735f4a36220d0000000000001a2f445a6f8599afc3baa6917b72889db3c2b6a38e78634e38230e0000000010253a4e627588979f9f998b7866798b989f9e978876634e3a25110012263b4f637689979f9f988a77677a8c999f9e968775614d39240f000000122436465564717c8488867d7062566a7d82776e6354412e190000000f24384d6176807d7d80828487725d49341f000000000000000000000000000000000f24394d63778da2b6a8947d879cb1ab95806a5848392a1b0c0000000000000d22374c61768ba0b5baa89b9ba1a9a99d908272625241301e0c00000000001125384b5d6f80909eacb9c5baaea2978a7a6a594734210e0000000000192e43586d8397aaac988d837464523f2c190500000000000000000000000000000000000910161a1b1b1b181410090200000000000000000000000000000002090d0e0e0e0e0e0e0d09010000000000000000000000000b20354b5f747d7d80828384848687888989826d58442f19000000000004172939474f525356575b70867d776f68615a5a5b56483727180700000005162736444e555857544d4344465056585753504f46382714010000000000000d2032435260696c6c6961574a55616a6d6c6860554738281604000000000000000000152a3f546a809587705b5c70868d78634e38230e0000000000000000000001122334455667778999aaafab97836d5945301c07000000000000192e43586d8397aab4b3a3907b71869aadb5b1a18d78634e38230e000000000b1f3346586978848989867b6c5c6d7a868a8984796a5846331f0b000c203447596a79858a89857a6b5d6e7b868a898378685745321e0a00000006182837465460696f72706a5f524f63736e645b51453625120000000a1f33475a696a69686a6c6f73705d49341f000000000000000000000000000000000b20354a5f73899eb3ac9783869bafae9a8775665748392a19080000000000091e33485d72879cb1b49f8a868d97a1ada09080705e4d3b29160300000000172b4054677a8d9eaebdc6b7a99c9085786b5c4c3b291a140b00000000162b40546a8091959fa8a093826f5c4834200c00000000000000000000000000000009131d242b2f3030302d29241d160d0300000000000000000000000009151e23232323232323221d14080000000000000000000000081c3144576468696a6b6c6e6f6f70727374746b58432e190000000000000b1b29343a3c3f40465b7087928b847c756d665f574f453625120000001022344554616a6d6c6860554857636b6d6c685f534536261402000000000001162a3d4f61707c83837d74685964737d83837c7265564533210d00000000000000000014293e53687d938a76666674888d78634e38230e000000000000000000000006172738495a6b7b8c9caca6917c68533f2a1601000000000000152a3f53677a8c999f9e9686746a7d8f9ba09d9483715d4935200c000000000316293b4c5a6770747470695d4f5d6971747370675b4c3b2917040004172a3c4d5b6770747470685c505e697174736f665a4b3a281502000000000a192836424d555a5c5b564d4246565f5b51483e3427180700000004182b3c4b5455545354575a5e5d51412e1a00000000000000000000000000000000071c31465b70869aafaf9b868094a7b6a59485756657473726150300000000051a2f44596e8498adb6a28d777984909caa9e8e7c6a584633200c000000001b3045596e8397aabcccb9a8998b7d72675b4d403a342e271d0f00000012273c5166797c828f9eb09f8b77634f3b26130c020000000000000000000000000e1a2630383f44464645423e3831292015090000000000000000000008182631383838383838383731261707000000000000000000000115283947505354555657585a5a5b5c5e5f5f5b4e3c2915000000000000000b172025272930465b70879c9f989089827a726a6254412e19000004182c3f5163727d83837c73665766758083827b71635443311e0b0000000000081c3145596c808f9797918677666f8291989790847463503d291400000000000000000011263b4f64788c94847b7b839288745f4b36210c0000000000000000000000000a1b2b3c4d5d6e7d8f9d9c8c77624e392510000000000000001024374a5d6e7c868b8983776860707d878b8882756554412e1a0600000000000c1d2e3d4a545b5f5f5c564c3f4b565c5f5f5b544a3d2e1d0c0000000d1e2f3d4a545c5f5f5c554b404c565d5f5e5b53493c2d1c0b0000000000000a1825303a41454746423a3038444a473e352b21160900000000000d1e2d3940403f3e3f42454949413323110000000000000000000000000000000001192d42576c8297abb39e8977899bacb2a394857565554432200e0000000000172c41566b8095aabaa6917b67727d8c9aa99a8875624f3c2814000000001b30465b70879cb1c6c3af9c8b7a6d6166605b554f49433a2d1d0b00000f23374a5b6567708093a6a7927d6955402d271f130400000000000000000001101e2b38434c53595b5b5a57534c453c32271a0d000000000000000000132536444c4e4e4e4e4e4e4c4335241200000000000000000000000a1b2a353b3e3f4040424344454647484a4a473e301f0d0000000000000000040c10121b30465b70879cacaca49d968e867d715c47321c00000a1f33475b6f829198979085756472849398978f8272604e3a261200000000000b20354a5f74889cacaca495836f778c9fadaca292806c58432e190000000000000000000c2135495c6f808f969090958d7d6b5845311c08000000000000000000000000000d1e2f3f50607080888786715d48341f0b00000000000000081b2d3f505e697174736f665952606b7274736e64574836251200000000000000101f2c3741474a4a4742392e3942474a4a4640372c1f100000000000111f2d3841474a4a4741392f3a42484a494640372b1e0f000000000000000007131d262c3032312d271e273034332b22180f05000000000000000f1c262b2b2a292a2d3034342e2315050000000000000000000000000000000000152a3f54687d93a8b7a28d777c8e9eadb2a394847261503d2b18040000000013283d52677c91a6bbaa95806b606d7b8b9ba592806b57432f1b070000001b30465b70869bafc4bea994806c5c6d7b756f69635d574b3a28140000081b2d3d4a505263778b9fac9884705c4a413b3122120000000000000000000f1f2e3c49555f686d70706f6c6760594f44382b1d0e00000000000000001b2f4354616363636363636053412e1a0600000000000000000000000c182126292a2b2b2c2e2f303132333434332b2012010000000000000000000000001b30455a6e7d8e9dabb8b1aaa29a866f5a45301b00000e23384d62768b9eadaca293826d7a8fa2adaba0907d6955402c1700000000000d22374c62778ca1b7c1b39e89737990a5bbbfaf9b86705b46301b00000000000000000006192d3f5161707d868a89857b6f5f4e3b2815010000000000000000000000000000112132425161707370706856422e19050000000000000000102132404c565d5f5e5b5349424e585d5f5e5a5147392a190700000000000000010e1a242d323434322d261c262e323434322c241b0e010000000000010f1b252d323434322d261d272e333434312c241a0e00000000000000000000010a12181b1d1c19130b141c1f1e180f05000000000000000000000a111516151315181b1f1f1a110500000000000000000000000000000000000011263b5065798fa4b9a5907b6f808f9eadb2a191806d5a47331f0b0000000010253a4f64788ea3b8ae99846f5a5d6d7d8fa39b87725e4a35210c000000192e43576c8295a9bbbda8937d68566b808a847d77726957432f1a0500000f1f2c363b485c70869aae9f8c79675a554e402f1d09000000000000000c1d2d3d4c5a67727b83878785827b746c6156493b2c1d0c000000000000001f34495e72787878787878715d4935200c000000000000000000000000050d111314161617191a1b1c1d1e1f1f1e180f0200000000000000000000000000172b3e50606f7d8d9cabb9bdad98836d58432e1900000f253a4f64798fa4b9c0b09b87707c93a8bdbead98846e58432e1900000000000c21364b60758a9eafb5ae9c8873788ea2b1b4ac9a86705b46301b0000000000000000000010223343525f6a71747470695e5141301f0c0000000000000000000000000000000314243343525d5e5b5b574a3927130000000000000000000313222f3a43484a49464037313b43484a49453e35291b0c000000000000000000000811181d1f1f1d19130a13191d1f1f1d1811080000000000000000000812191d1f1f1d19120a131a1e1f1f1c181107000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000d22374c61768ba0b5a994806a70808f9dacae9c8a76634e3a2511000000000c21364b60758ba0b4b29d887364646674899fa28d78634e39251000000014293e5265798c9eafc0ac988573656b829698928c87725c47321e090000010f1a222d42576b8295aaa99786776f6a5e4c38240f0000000000000016293b4b5b6a78858f979b9c9a969088807367594a3b2a19080000000000001f34495e73888f8f8f8f8d78634f3b26120000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000f21324251606e7d8d9baab8ac97826c57422c1700000e23384d63778da0b1b4ad9a86707b90a4b3b4aa97836d58432e190000000000081d32465b6e82919da09c90806d7285949e9f9b8e7c6a56422d190000000000000000000005162534424d565c5f5f5c554c403223130100000000000000000000000000000000061525344149494646433a2c1c0a0000000000000000000004111d272e333434312c241f282f333434302b22180b000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000004080907040100000000040a0d0b08040100000000000000000000000000000000050b0f1111100d09040000000000000000000000000000000000000a1f34495d72889db2ad98836e61707d8e9fb2a6927d68533e291400000000091e33485d72879cb1b6a28d7979797b8290a2a6917b66513c27120000000f2236495c6f8291a2b1b4a291837776869aaca79f8a75604b36200b000000000714293d52667b8fa3b4a4968a847b66503b2611000000000000001d31455869798896a2abb0b1afaba49c9185776859483725130000000000001b30455a6f8499a4a4a4937d6a55412d1804000000000000000000020b13181b1b1b18130c040000000000000000000000000000000000000000000000000414233242505f6e7c8c9aa8ab96826b56402b1600000b2035495d7083939d9f9b8f7d6a7487959e9f998c7a67533f2b16000000000003172b3e51637380888b88807162667582898a877d705f4d3a27130000000000000000000000071624303a42474a4a4741392f2214050000000000000000000000000000000000000716242e343431302e271c0e000000000000000000000000000a131a1e1f1f1c18110c141b1e1f1f1c160f05000000000000010d15191a1714120f0d0a070100000000000000000000000000000000020e161b1b1815110d09050000000000000000000000000000000000000000000410191d1e1c191614110f0c171f22201d191613100d09010000000000000000000711191f24262625221d18110800000000000000000000000000000000061b30455a6f8499aeb09b87716b6d718398adab96826b56402b1600000000041a2f445a6f8499aebba796908f9091959faea8937c67523c2712000000071a2d3f5163738493a1aeafa1958b8b94a4b6b7a18c76604b36210b00000000000f23384c6073889badb3a79c8874604c38240f000000000000001f344a5f748797a6b4bfc2bdbcbeb8aea3968776665442301d0a0000000000172c41566b8094a9b9ad9985705b47331e0a000000000000000009141e272d3030302d2720170e0200000000000000000000000000000000000000000000000514233241505e6d7b8a98a795806a543f2a150000061a2e4154657582898b877d7060687783898a867c6e5d4b3824100000000000000f22344555636d7374726c625358646e7374716a605141301e0b00000000000000000000000006131e272e323434322d261c1105000000000000000000000000000000000000000006121a1f1f1c1b1a140a000000000000000000000000000000000000000000000000000000000000000000000000000002121f292e2f2c2a2724221f1c150b00000000000000000000000000000313202a30302d2a26221e1911060000000000000000000000000000000000000514222c3233312e2c292724212a333735322e2b2825221d1408000000000000000d1a242d34393b3b3a37322c251b1206000000000000000000000000000000182c41566b8296abb49f8a828283868d9db0ab96826b56402b160000000000172c41566b8296abbcb4a8a5a4a5a6aab2baa5907b66503b2611000000001022344555657483909ca7b1a8a09fa6b2c2b39f8a75604b36200b0000000000091d3144576a7d8fa0afa894806c5845311d09000000000000001e32475a6d8294a7bab5aea8a7aab1bbb3a59584725f4c392612000000000013283c51667a90a4b9b39f8b76624d392510000000000000000b1a26313b41454645413b342a201407000000000000000000000000000000000000000000000005142332404f5d6c7a899895806a543f2a150000001124364757646e7374726b605159666f747471695e503f2e1b08000000000000051727374550595e5f5d58504447525a5e5f5d574e423323120100000000000000000000000000010b13191d1f1f1d19120a00000000000000000000000000000000000000000000000000000000000000000000000000000000000008101414120f0c0a08060300000000000000000000000000000000000f20303c4344413f3c3a373430281c0d000000000000000000000000000f21313d4546423f3b37332d24160700000000000000000000000000000000001122323f47484643403e3c39353b474c4a4743403d3a373126180800000000000f1e2b3740484d50504f4c4740382e24180b000000000000000000000000000014293e53687c92a7baa7999797989aa0abaa9e8f7b67533e2a15000000000014293e53687d93a2a7abaeb1b3b4b5b5b4ad9e8b76624d39240f000000000516273747566472808a959ea5acb1b4b4b1a69684705c47321e0900000000000115283b4e607182919fa08d7864513d29150100000000000000182b3e5164778a9eada29a9391959ea9b8b2a18f7c6955412d1904000000000e23384c61768ba0b5b9a5917c68533f2b160200000000000a1a2937444e565a5b5a564f473d3225180a0000000000000000000000000000000000000000000000041422313f4e5c6a7989947d69543f2a1500000007192a3947515a5e5f5d584e4248535b5f5f5c564d4032211000000000000000000a1927333d45494a48443d33353f46494a48433b312415060000000000000000000000000000000000000000000000000000000000000000000000000001080c0d0b080503000000080e110f0c080502000000000000000000000e1a24292a2724211f1d1b181005000000000000000000000000000000182b3e4e58595654514f4c4a44392b1a07000000000000000000000000192c3e4f595b5753504c48413425130d08010000000000000000000000000000192d40515c5e5b585653514e494959615f5c5855524f4c44362614010000000d1e2d3c49545c62666664605b544b4135291b0c0000000000000000000000000010253a4f64798fa3b4b4adacacaca8a49e978d80705f4c382410000000000011263b50667b888e9296999c9e9fa0a09f9a90806e5b47331f0a0000000000091a29384754616d77828a92979c9f9f9c9589786754402d19040000000000000b1e3042536372828e9885705d4935210e00000000000000000e2134475a6d82939b90867d7c828c9aabbeac9985705c48331e09000000000a1e33485d71879bb0c0ab97836e5945311c0800000000051627384755616a6f706f6a635a4f433627190a0000000000000000000000000000000000000000000000041321303e4c5b6a79897d68533e2913000000000c1b29353e46494a48433b313740464a4a47423a2f2214040000000000000000000916212a303434332f2920232b313434332e281e13060000000000000000020b12181b1b1b1915100901000000000000000000000000000000000008141c2122201d1a181513101b232624211d1a1714110c0500000000000c1d2c373e3f3c39373432302c23160700000000000000000000000000001e33475b6b6e6b686664615f57493724100000000000000000000000001e33485c6d706c6864615d52423025211c160e040000000000000000000000001e33485d6f73706d6b6866635c51657674706d6a6764605443301c08000007192b3c4b5a6670777a7b79756f675e5347392a1b0b0000000000000000000000000d22374c61768ba0a09f9d9c9a97948f8a837a6f6152412f1c0900000000000f24384c5f6d73787d828487898a8b8b89867d7162513e2b18040000000000000b1a2937434f5a646e767d8388898a8882776a5a493724110000000000000001132535455463707b857c6955412d1a06000000000000000005182b3e5163768a8a7d726a676e7b8ea2b6b49f8b76614c37220d00000000051a2f44586d8397acc1b19d88745f4b36220d000000000f2234455665737d85878580766c6053453727180800000000000000000000000000000000000000000000000312202e3d4c5b6a797c67523c271200000000000b17222b313434332f281f242c323434322e271d12040000000000000000000000040e161c1f1f1e1b150d0f171c1f1f1e1a140b02000000000000000009151e262c3030302e2a241d140b00000000000000000000000000000007172530363735322f2d2b28252d373b3936322f2c292621180b0000000016293b495354514e4c4947454034251401000000000000000000000000001f344a5f7484827d7b78767366533f2a160100000000000000000000001f344a5f7386827d7976705f4b3b3a36312a21160b00000000000000000000001f34495e72878683807d7b786955667a898683807c79725f4a35200b0000102336485a6977838c90918f8a847a70645748392919080000000000000000000000091e33485d72888b8b89888785837d7a756f675d5243342412000000000000091d304150595f64686c6f717374747474716a60534433220f00000000000000000b1926323d48515a62696e727474726d655a4c3d2c1a0800000000000000000717273645525e687172614e3a2612000000000000000000000e2134475a6d807a6c6056525e73899fb4b9a48f79644f3a250f0000000000162b3f54697d93a8bdb7a38e7965503c271200000005182b3e51637384919a9c99938a7d7163554536261504000000000000000000000000000000000000000000000002101f2e3d4c5b6b7464503b2611000000000000050f171c1f1f1e1a140c11181d1f1f1d19130a000000000000000000000000000000000000000000000000000000000000000000000000000000000d1a27313b41454646433f3830271d120600000000000000000000000000122535434b4c4a474442403d393e4a504e4b4744413e3b34291b0a0000001d31455867696663605e5c5a5243311d09000000000000000000000000001c31465b6f859694918f8c826d5945301c0700000000000000000000001c31465b708696938f8b796451504f4b453d33281c0e000000000000000000001b2f43586c829598959390846f5b63788d9b9794928d77624c37220d0000172b3f5366778896a0a5a6a39f978e82756657473625130100000000000000000000051b3045596d7474747372706f6c6965615b534a4034251606000000000000001223323e454a4f53575a5c5e5f5f5f5f5c564e43352616040000000000000000000814202b353e474e54595d5f5f5d5952483c2e1f0e0000000000000000000009182735414c555d5e5444311e0a0000000000000000000005172a3d5063756e5d4e465465778ca0b5bba59079644f3a250f000000000011263b5065798fa3b3b3a894806a55412c180300000c2034485b6e8292a2aeb1aea69c90827363544333211000000000000000000000000000000000000000000000000001101f2e3d4d5a5f574735210d000000000000000000000000000000000000000000000000000000000000000000050d11110e0b080501000000000000000000000000000000000000000000000c1c2b38444e555a5b5b58534c443a3024180b0000000000000000000000001b2f425360625f5c5a5754524d4b5c6563605c59565350473928150200001f344a5f747d7b787673726f604d38240f00000000000000000000000000182d41566b8094a8a6a39c88735f4a36210d0000000000000000000000192d42576c8297a7a3937d696666645f5950463a2c1e0f00000000000000000014293d52667a8fa3aba89e89756060758ba0aca9a38d77624c38230d00001c31465a6f8395a6b3babbb7b3aba0938575655442301e0b0000000000000000000000162a3d4f5c5f5f5f5e5d5c5a5854514c4640372e23160700000000000000000514212a30363a3f424447484a4a4a4a47423b312517080000000000000000000000030e18222b333a4044484a4a48443e362b1e100100000000000000000000000917232e39414949433626150200000000000000000000000e21344757615e504a5664728394a7bbbaa59079644f3a250f00000000000d22374c61768b9d9d9d9d99846f5b46311c08000013273b4f63778b9eb0c0c7c2b9ada092827161503f2d1b0900000000000000000000000000000000000000000000000001101f2f3d474a44392a1805000000000911151613100e0b09070400000000000000000000000000000000000c1821262723201d1a1613100d09060300000000000000000000000000000007192a3a4956616a6f70706d6760574d4135281b0d00000000000000000000001f34495e717774716f6c6a675f51667a7874716e6b68645745311d0800001d32465b6f84918e8c89877b66523d28130000000000000000000000000013283d51667a90a4b9b7a28e7964503b26120000000000000000000000152a3f54687d93a8ac9883797b7b79746c63574a3c2d1d0c00000000000000000e23374b6074899db1b8a48f7a665e73899eb3b9a48f78634e38230e00001f344a5f74899eb2c4b5a8a1a2a9b1a3948372604d3a271400000000000000000000000e20313e484a4a4a4848474543403c38322c241b110500000000000000000000040e161c21262a2d2f323334343434322e271e14070000000000000000000000000000050f171f262b2f333434332f2a22190d000000000000000000000000000006111c252e34342f25180900000000000000000000000004172939464c4a4e5b67748291a1b2c4b7a28d77634e38230e0000000000091e33485d7288888888888889745f4a35200b0000182c41566a7d93a7bac0b3adacb1b0a090806e5c4a3826130000000000000000000000000000000000000000000000000001111f2b323431281b0c000000000f1b252a2b282523201e1c19110600000000000000000000000000000a1b2a353b3c3835322f2b2825211e1b18151009000000000000000000000000122536485866737d848786827b736a5f5346392b1c0d000000000000000000001e33485d718689878482807c6a5665798d8a8783827d75604b36210c0000172c40556a7d93a3a09e94806a55402c17020000000000000000000000000e23384c61768ba0b4bca8937d6955402c17020000000000000000000011263b5065798fa4b19d8c8f91918e888075685a4b3b2a190700000000000000081d31455a6e8397abbea995806b5c71879cb1b9a48f79644f3a240f00001f344a5f748ba0b5baa7978c8d98a8b2a18f7d6a5743301c08000000000000000000000213212c33343434333332302d2b27231e181008000000000000000000000000000001080c1115181a1c1e1f1f1f1f1d19130b020000000000000000000000000000000000040b11161b1e1f1f1e1b160f06000000000000000000000000000000000009121a1f1f1b130800000000000000000000000000000b1b283544525f6c788692a0afbfc3b09c88735f4a35200b0000000000051b3045596b727272727272736f5e4a35200b00001c31455a6f8499aec2b1a298979ea9ae9d8c79675542301d0900000000000000000000000000000000000000000000000000010e181e1f1c150a000000000c1d2d393f403d3b383633322d241708000000000000000000000000001528394750514d4a4744403d3a3733302d2a251c1002000000000000000000081b2e415466768591999c9b978f877c706457493a2b1c0d000000000000000000192e42566b80949c99979485705c62778d9f9b98968d77624c37220d000012273b5065798fa3b5ad98846e5945301b06000000000000000000000000091e33485d71869bb0c1ad98846f5a45301c07000000000000000000000e23374c61768ca0b5aaa1a2a7a7a39c9287786959483624110000000000000002162b3f53687c91a5b9af9a86716e6f869aafbba59079644f3a250f00001f34495e73889db3b39e8a787a8a9cafac9a87735f4b37230f0000000000000000000000030f191e1f1f1f1e1e1c1b1815120e090300000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000112233445362707d8a97a3b0bec5b6a593806c5945301c0700000000000016293c4d5966686867676666625543301c0800001e33485e73889db2b9a69384838c99a8a99785725f4c39261200000000000000000000000000000000000000000000000000000000000000000000000000172a3b4a545552504d4b484741352614020000000000000000000000001c3144576466625f5c5855524f4c4845423f382e200f0000000000000000000f23374b5e718394a3adb1b0aba3998f82756758493a2b1a0a000000000000000013283c5065798ea2afac9f8a766160748ba0b0ada38d77624d38230e00000d22374b60748a9eb3b19c88725d49341f0a000000000000000000000000041a2e43586c8296abbfb29d88735f4a35200d000000000000000000000a1f34495d72889db2bcb6b7b1afb2b0a49788766553412e1b08000000000000001025394d62768b9fb3b5a08c848484869aafbba6917b66503b261100001c31465b70869bb0b19c87706c8093a7b6a28f7a66523d291400000000000000000000000000000000000000000000000000000000000000000000000000010d151a1c1e1e1e1b18130e07000000000000000000000000000000000000020e161b1b17110c0701000000050b0d0b06000000000000000000000000000000000000000000040d141615110d0a060200000000000000000000000000081b2e40516171808f9ba8b4c1bfb4a799887663503d2916010000000000000c1f344a5f747d7c7c7c7b7b735f4a35200b00001f344a5f748b9fb4b5a08b766e7a8b9baca28f7c6855412d18030000000000000000000000060b0e0e0e0c080300000000000000000000000000000000001d324659686a676462605e5c5344311e0a0000000000000000000000001f344a5f747a7774706e6a6764605d5a57534b3e2d1a070000000000000000152a3e52667a8ea1b2c1c7c1bfb6aca093857667584838281706000000000000000d21364a5f73889cb0b9a5907b675e73889db3b9a48f78634e38230e0000081d32465b70859aaeb5a08c76614c38230e00000000000000000000000000152a3e53687c92a6bbb6a28d7863503c291603000000000000000000061b30455a6f8499aec3b9a99d999faab5a59583705d4a372410000000000000000a1e33475b708599adbba99c9999999aa4b5bca7917b66513c27110000192f44586e8398adb29d887263778da1b6aa95826c57422d19040000000000000911151512100d0b0a080605030201000000000000000000000000000002121f292f32333333302d28221b130a0000000000000000000000000000000313202a30302b26211b16110b0f192022201a130c050000000000000000000000000000000000071521282b2a26221f1b17141009000000000000000000001125384b5d6f80909eacb9c5baaea2978a7a6a594734210e000000000000000a1f34495e7388939393918d77634d39240f00001f344a5f748ba0b5b49f89735e6c7d90989088806f5a442f1a0500000000000000000009121a1f232323211d1710080000000000000000000000000000001f344a5f74807c7977747370614d39240f0000000000000000000000001e33485d72878d898783807c7876726f6c685c4a36220e00000000000000001a2f43586d8296aabec3b7ada9a9aeb1a395867666564635231200000000000000071c3044586d8296aabfaa96826d5c70879cb1b9a48f79644f3a250f000003182d42566b8095aab9a48f7a65503b27120000000000000000000000000010253a4f647990a5bbbba793806c5946321f0c00000000000000000000172c41566b8095aabfaf9c8b848c9babb2a08d7a67533f2b170300000000000004182d41556a7d93a7bcb9afa4a3a4a4a9b6bda8937c67523c27120000162c40566b8095aab5a08b766173889db2af9a86705c47321d0900000000000f1b252a2b272523201f1d1b1a19171615141312110e06000000000000000f20303c434748484845423d362f261d1308000000000000000000000000000f21313d4545403a35302a251f1f2c3437352e272019120b0400000000000000000000000000031525333d403e3b3733302c28241d11040000000000000000172b4054677a8d9eaebdc6b7a99c9085786b5c4c3b291a140b000000000000061c31465b70869ba8a8a5907b66513d281300001f344a5f748ba0b5b49f89745f607286847c746c6353402c17020000000000000003101c262e3438383836322b241b1207000000000000000000000000001d31465a6f84928f8d8b887b67523d28130000000000000000000000001a2f44596e83989f9b9895918e8b8885827965503b261100000000000000001d32475c71879bb0c5b4a59a949499a2aca49585746352412f1d0b00000000000000152a3e52677b90a4b8b09c877272728599afbba59079644f3a251000000014283d52667b90a5baa8937d69543f2a150100000000000000000000000011263b50657990a5bbc2af9c8975624e3b28150200000000000000000014293e53687c92a7bbaa95806f7c8ea0b4aa96836e5a46311d080000000000000012263b4f64788da1b5b6a2918d8f8f98aabda8937c68533e2813000013283d52677c92a7b9a48f79656f8498adb49f8a75604b37220d000000000c1d2d393f403c3a38363432302f2e2c2b2a2928272722190c000000000000182b3e4e585c5e5e5d5a56514a423930251a0e010000000000000000000000192c3e4f595a544f4a443f3a332e3d484c49423b342d261f170c0000000000000000000000000d203343505653504c4845413d392f221201000000000000001b3045596e8397aabcccb9a8998b7d72675b4d403a342e271d0f000000000000192e43586d8397acbda994806a55402b1702001f34495e73899fb4b6a28d7763576b78706860585045362411000000000000000313202e3942494d4e4e4b4640382e24190d000000000000000000000000172c4055697d93a4a2a095806b56412c17020000000000000000000000172c40556a8094a9b0adaaa6a3a09d99927c67523c271200000000000000001f34495e73899fb4baa796887d80868f9caaa39282705e4c3a2815020000000000000f24384c60758a9eb2b6a18e888888899bafbba7917b66503b26110000000f24394d62778ca1b5ac97836d58432e190500000000000000000000000011263b50667b91a7bccbb8a5927d6b5845321e0b00000000000000000010253a4f64788ea3b8a9947d69718598acb29e8974604b37220d000000000000000c2135495d72879bafb4a08b77787b91a6bba9947d68533e2913000010253a4f64798fa3b8a8947d696a8094a9b8a38f7965503b261100000000172a3b4a5454514f4c4b494746444342403f3e3e3c3c362a1c0b00000000001e33475b6b707373726f6b655e564c42372c1f1204000000000000000000001e33485c6d6e69645e59534e463a4c5b625d564f48413a332a1d0d000000000000000000000013273c50616b6865615d5a56524c40301e0b000000000000001b30465b70879cb1c6c3af9c8b7a6d6166605b554f49433a2d1d0b0000000000162b4054697d94a9bead98836e59442f1a05001d32475c72879cb1bba6927c68535d635c544c443d34271806000000000000001121313e4b555d626363605b534b41362b1e11030000000000000000000012263b5064798ea3b7ad99846f5a45301b06000000000000000000000013283d51667b90a5bac1afa3a1a4a7a9947d68533f291400000000000000001f344a5f748ba0b5b29e8a776a6a727d8c9bac9f8e7c6a5745321f0c000000000000091d32465a6f8398acbdac9f9d9d9d9ea7b7bca7917b66513c27120000000b1f34495d72889cb1b09b86715c47321d0800000000000000000000000011263b50667b91a7bcd1c1ae9b8875614e3b28150100000000000000000d21364b60758b9fb4ab97826c697d93a7b8a38f7965503b261100000000000000061a2f43576c8295a9b9a5907b66798fa4b9aa95806a543f2a1500000d22374c61768ba0b5ad98836e667a90a4b9a8937d69543f2a15010000001d3246596869666462605e5c5b5a5857565453535251483a291603000000001f344a5f738789898885807972695f55493d302214050000000000000000001f34495e73837d78736d68635746556977716a635c554e473b2b19070000000000000001070a152a3f546a807d7976726f6b675e4d3a2611000000000000001b30465b70869bafc4bea994806c5c6d7b756f69635d574b3a2814000000000012273c51667b90a5bab09b87715c47321d08001b30455a6f8499aec0ab97836d594a4e4941393129211609000000000000000c1d2f3f4f5c6871777878756f675e53483c2f2113040000000000000000000d21364b5f74899eb3b29c88725d49341f0a00000000000000000000000f24394d63778da2b6b9a4918c8f929695806b56402b1601000000000000001f344a5f748ba0b5ae99846f5a565f6d7d8e9fab998774614e3b281502000000000003172b4054687d92a6babcaca09fa0a0a6b3bda8937c67523c2712000000061b3044596e8398adb49f8a74604b36210c00000000000000000000000012273c52677c93a8bdd1cbb8a4917d6a5744311e0b0000000000000000091e33485d71879cb1b09b867164798fa3b8a8937d69543f2a15010000000000000014293d51667a8fa3b7aa95806b778da3b8ab95806a55402b160100091e33485d72889db2b19c887361768ba0b5ac97836d58432e1a050000001f344a5f747d7b7977757372706f6d6c6b6a686867655846321d09000000001c31465a6f85999f9d9a958e867c72675a4e403223140500000000000000001c31455a6f84928d88837c75624e5c7085867d77706962594936220e00000000000009141c1f1f293e53687d938f8b8884807c69543f2a1400000000000000192e43576c8295a9bbbda8937d68566b808a847d77726957432f1a05000000000f24394d63778da2b1b39f8a745f4a35200b00182d41576b8296aabfb19d8874604c38352d251d150d04000000000000000215283b4c5d6d7a858c8f8e8a837a7066594d3f312213040000000000000000081d31465b708599aeb5a18c76614d38230e00000000000000000000000b20354a5f73899eb3b8a38e78797c8284836c57422c1702000000000000001f34495e73899fb3ae99846e58434f5f6f8293a6a4927d6b5844311d0a00000000000011253a4e63778ba0b4b5a08e898b8c95a9bda8937d68533e291300000000172b40556a8094a9b8a38e78644f3a251000000000000000000000000013283e53687c93a8bdbeb6b6ae9b8874604d3a27140100000000000000041a2f44596e8398adb49f8a7560758b9fb4ac97836d58432e1905000000000000000e23374b6074899db1af9a8670768ca0b5ac97826b56412c170100051b30455a6f8599aeb6a18c776272879cb1b09b87715c47331e090000001f344a5f748b918f8d8b89888684838282807d7c7c75604b36200b00000000182d41566b8095aab2aea9a2998f84786c5e50423223140300000000000000182c41566b8095a29c97917b665262768b9a928b857d7665513c271200000000000b1a27303434323b50667a90a4a09c9995806b56402b160800000000000014293e5265798c9eafc0ac988573656b829698928c87725c47321e09000000000b20354a5f74899c9c9d9d8d77624d38230e0014293e52677c91a5bab7a38f7b67533f2c191109010000000000000000000b1e3245586a7b8b98a1a4a39e978e83776a5d4f40312212010000000000000002182d41566b8095aab9a5907a66513c27120000000000000000000000071c31465b70869aafbca7927c68686b6f726855402b1601000000000000001d32475c71879cb1af9b86705b4641526476899dae9b8874604d3925110000000000000b1f33485c71869aaeb5a18c77747b91a6bba9947d68533e29140000000012273c51667a90a5b9a7927c68533e291400000000000000000000000014293f53687d94a9beaea2a2ada3907d6a5743301d0a0000000000000000162b40556a8094a9b8a38f796571879bb0b09b86715c47321e0900000000000000081c31455a6e8397acb49f8b7674899fb4ad98836c57422c17020000182d42576c8296abbaa5907b676e8398adb49f8b75604c37220d0000001f344a5f748ba0a4a2a09f9c9b999897969594938c76604b36210c0000000014283d52677c91a6bbb7a79ea2a2968a7c6e6051423221110000000000000013283d52667b90a5b1aa95806a55687c91a5a79f998c7764503b26110000000005172938444a4947464e63788da3b5b2ac97826c57423226170600000000000f2236495c6f8291a2b1b4a291837776869aaca79f8a75604b36200b00000000081d32475c7086878788888979644f3a250f000f24394d62768ba0b4bfaa97836f5b48342116120d07020000000000000011263a4e61758899a9b5b9b8b2aaa095897b6d5e4f40301f0f000000000000000013283d52667b90a5baa8947d6954402b16010000000000000000000001182d42576c8296abc0ab96826c57565a5c574a38251100000000000000001a2f44596e8398adb29d88735e4935475a6d8294a8a4907c6854402c1804000000000005192e42566b8094a8baa6917c67788fa4b9aa95806a543f2a15000000000e23384d61768ca0b5ab96826c57422d18040000000000000000000000152b40546a8095abb6a28f8fa0ad9a8673604d3a2613000000000000000013283d51667b91a6baa8937d696d8397acb49f8a75604b36210d0000000000000002162b3f53687c91a5b9a4907b72889db2ae99846e58432e1903000014293e53687d93a7bcaa95806b697d94a9b8a38f7965503b26110000001f344a5f748ba0b5b7b5b3b2b0afadacabaaa9a38d77624c37220d000000001025394e63788da2b7af9b89909ea79b8d7d6f60503f2e1d0c0000000000000f24394d62778ca1b6ad99846f5a6e8397abbbab97836f5c4835210d000000000e213447565f5e5c5b5960758ba0b5c3ad98836e584f443523100000000000071a2d3f5163738493a1aeafa1958b8b94a4b6b7a18c76604b36210b0000000002192e42576970707072727373624e39240f000a1f33485c708599adc1b29f8b7764513e2c2c27211c16110b0300000000172c4055697d91a5b7c7c2bab7b7b3a6998c7c6d5e4e3d2d1c0a000000000000000f24384d62778ca0b5ac97836d58442f1a05000000000000000000000014293e53687c92a7bcaf9a85705b464547443a2c1b0b0000000000000000172b40556a8094a8b6a18d77634f3a3d5165788da1ac98846f5b47321e0a00000000000013283c5065798ea2b6ab96826c778da2b7ab95806b56402b16010000000a1f34495d72889cb1af9a86705b46311c080000000000000000000000172c41566b8297acb5a08b8599ada3907c695643301c09000000000000000f24394e63778da2b7ac97836d697d93a8b8a38e79644f3a261100000000000000001025394e62768b9fb4aa958070869bb0af99846f5a442f1a05000011263b5064798fa3b8ae99856f667a90a5b9a8937d69543f2a150100001f344a5f748ba0b5cbcac8c5bab5b5b7b8b9b8a38d77624c37220d000000000c20354a5f74899eb3af9b86808f9fab9d8e7d6e5d4c3b29180600000000000b2034495e73889db2b29c88725f74889db1b6a38f7b6754402c190500000004172a3d5064737372706e6c73889db2c4af9a866f676252402c180300000000001022344555657483909ca7b1a8a09fa6b2c2b39f8a75604b36200b000000000014273a4b575b5b5b5c5c5e5e5545331f0b0004192d41556a7d92a6b9bba794826d5a4841403b36302b251f16090000001b30455a6f8498acc1bdb0a6a1a2a6aea99b8c7c6c5b4a392816040000000000000a1f34495d72889cb1b09b87715c47321e09000000000000000000000011253a4f64798ea3b8b29e89735f4a47474642372919060000000000000012273c5065798fa3b7a7927d69554135495d72879bb09f8a75614d38240f0000000000000d21364a5e73889cb0b09b8771768ba0b5ac97826b56412c1702000000061b3045596e8498adb39e89745f4a35200c0000000000000000000000182d42576c8398adb5a08b7d92a5ac9986725f4c392512000000000000000b20354a5f74899eb3b09b877165798fa4b9a7927d68533f2a1500000000000000000a1f33485c70859aaeae9a86708499aeb09b866f5a45301b0600000d22374c61768ba0b5b29e897362778ca1b6ac97836d58432e190500001f344a5f748b9fb1c2d3c9b7a7a0a0a1a3a4a5a38d77624c37220d00000000071c31465b70859aaeb39e89738291a3ac9c8c7b6a59473523110000000000071b30455a6f8499aeb5a08c7665798fa3b7ae9b87735f4c382411000000000e2134475a6d80898886848382869bb0c5b09b877c7c6f5b46311d0800000000000516273747566472808a959ea5acb1b4b4b1a69684705c47321e0900000000000b1d2d3a43464646474748494337271603000012263b4e62768a9eb1c4b19e8a7765535655504a453f3a3327180700001e33485d72889db2c0af9f938c8d929ba6aa9a8a7968574533210f000000000000061b2f44596e8398adb49f8a75604b36210d00000000000000000000000d21364b60758b9fb4b6a28d77625e5c5c5b554736230f000000000000000d22374b5f74899db1ad9985715d4a3643586c8296aba5907b66523d2914000000000000071b3044586d8296aab5a08c7773899fb3ad98836c57422d180300000000172c40556a8094a9b7a28d78634e3925100000000000000000000000192e43586e8499afb5a08b768a9eb2a28f7b6854412e1b08000000000000081d32475c70869bafb5a08b7661768ba0b5ab97826c57422e19040000000000000004192d41566a7d93a8b49f8a758297acb19c87705b46311c070000091e33485d72879cb1b6a28d786373889db2b09b86715c47321d0800001f34495d708293a4b5c6c2ad998b8b8c8d8f90918f78634e38230e0000000001182d42576b8296aab6a28d77738597a9aa9988766453412e1c090000000000172c41566b8095aab9a48f796b8095a9baa692806b5744301c0900000000172a3d5063768a9d9c9b99989696a2b5c9b5a294938974604b37220e000000000000091a29384754616d77828a92979c9f9f9c9589786754402d19040000000000000f1d282f303031323233343026190a0000000b1f33475a6d8295a7babaa7958371606a6a645f59544e4536251200001f344a5f748a9fb4b6a3918276777d8896a4a897867463513e2c1906000000000000162b4055697d94a8b8a38e78644f3a25110000000000000000000000091e33475c71879bb0baa5907b747372727065523e2a1500000000000000081c3145596d8296aab4a08d796652403e53687c92a7aa95826b57422d1803000000000000152a3e53677b90a4b9a5917c72879cb1ae99846e58432e19030000000013273c51667b90a5baa6917c67523e291400000000000000000000001b30455a6f869bb0b7a18c768397abab9885715e4b37241100000000000002192e43586d8397acb9a48f796572889cb1af9a86705c47321d08000000000000000013273b5064788da2b6a48f7a8095aab39d88725c47321d080000051a2f44596e8398adbba6927c686f8499aeb49f8a74604b36210c00001a2e415264758697a9bac2ad998775767778797b7c78634e38230e000000000014293e53687c92a6baa5907b67798c9fb2a69482705d4b392613000000000013283d52677b91a6baa8937d71869aafb19e8a76634f3b281401000000001d32465a6d8093a6b1b0afadababb3c0d1c0b1a9a38f7965513c2713000000000000000b1a2937434f5a646e767d8388898a8882776a5a4937241100000000000000000b141a1b1b1c1d1d1e1f1b14090000000004172b3e5164778a9dafc1b2a18f7d70797d79736e686254412e1900001f344a5f748ba0b5b09b877363636b778696a6a492806e5b4936231000000000000012273c51657a8fa4b9a7927c68533e29140000000000000000000000041a2f44586d8397acbeaa968b89898888826c57422d180300000000000001162a3e53677a8fa3b6a995826f5d4b3b50657990a5ae9a856f5a45301b060000000000000f24384c61758a9eb3ab968270869bb0af9a866f5a442f1a05000000000e23384d62778ca1b6aa96826b57422d1803000000000000000000001c31465b70879cb1b7a18c767b8fa4b4a18e7a6754412e1b08000000000000152a3f54697d93a8bda8947d696e8398adb39f8a74604b36210c00000000000000000d21354a5e72879bb0a995807d94a8b39e89735e48331e09000000162b40556a8094a9beab96826c6b8095aab8a38e78634e3a25100000112435465768798b9cadbeb5a49382706263646667675b4935200c000000000010253a4e63788da2b7a994806a6f8295a8b1a08d7a6855422f1b08000000000f24394e63778da2b6ac9783768ba0b4a995826e5a4733200c00000000001f344a5f74899db0c3c5c4c2c0c0c4c6cecfc4bda994806a56412d1804000000000000000b1926323d48515a62696e727474726d655a4c3d2c1a0800000000000000000000000000000000000000000000000000000e2235485a6d8091a3b4bead9d8f8488938e88837d715c47321d00001f344a5f748ba0b4ad98836d584e596777899bac9e8b7865523f2c180500000000000e23384c61768ba0b5ab96826c57422d19040000000000000000000000162b4055697d94a8beb3a5a09f9f9d9a856f5a45301b06000000000000000f24384b5f73879baeb29f8c7a6858494e63788fa4b29d88725d48331e09000000000000091e32465b6f8498acaf9b86718499aeb09b86705b46301b06000000000b1f34495e73889db2ae9a85705b46311c07000000000000000000041d32475c72889db2b7a18c7674889cb1aa9784705d4a37241100000000000012273b50657a90a5baad98836e6a8094a9b8a38e78644f3a25100000000000000000071b2f43586c8295aaaf9a867c92a7b49f8a745f4a341f0a00000012273c51667b90a5baaf9a8670677c91a6bba6917c67523d28140000061728394a5c6d7d8fa1b2c2b09f8e7c6a594f5052524b3d2c190600000000000c21364a5f74899eb3ad98846e65788c9fb3aa9885725f4b382410000000000b20354a5e73899eb3b09b877b90a5b4a08d7966523e2b180400000000001c3145596d8296aabfc7b9b0afafafb2bdccc9baae9985705b47321d0900000000000000000814202b353e474e54595d5f5f5d5952483c2e1f0e000000000410191d1e1d1c1a191817140d0300000000000000000005182b3d5062738697a7b7bbaca0999ba5a29d9789735e48331e00001e33485e73889db3af99846e59444a5a6b7d90a2a895826f5b4834200c00000000000a1f33485d72889cb1af9a86705b46321d08000000000000000000000012273c51667a90a5babfb0a5a4a5a79d88725d48331e0900000000000000081c3044576b7d92a5b8aa988776665a5164798fa4b49f8b745f4a35200b00000000000003182c4055697d92a7b5a08b768297acb19c87705c47311c0700000000061b30455a6f8499aeb39e89745f4a35200c000000000000000000091e33485e73899fb3b7a18c766d8296aab3a08d7a6754402d1a0700000000000e23384d62778ca1b6b19c8872667b90a5baa7927c68533e291400000000000000000015293e52667a8fa4b4a08b7b90a5b5a08b76604b36210b0000000e23384d62778ca1b6b39e897463788da2b7aa95806b56412c170200000a1c2d3e4f60718394a5b6bcab9a89776554433d3d382d1f0e000000000000081c31465b70869aafb19d88735e6f8397abb5a28e7a6753402c1804000000071c31465b70869aafb49f8b8095aaab9885705d4a36230f000000000000162a3e53677b8fa4b8bba99c9999999faec1beab9d998a75604c37230e000000000000000000030e18222b333a4044484a4a48443e362b1e10010000000514222c323332312f2f2d2c292014050000000000000000000e2133445667788999a8b6bdb3afafb7b7b19d88725d48331e00001c31465b70869bafb09b87705c473c4e60728699ad9f8b7763503c28140000000000051b2f44596e8398adb39e89745f4a36210c00000000000000000000000e23384d62778ca1b6b6a2928f9091918b75604b36210c000000000000000114283b4e6275889badb5a49485776c666a7d92a7b6a18c76604b36210b0000000000000011263a4f63778ca0b5a5907b8095aab39d88725c47321d080000000000172c41566b8095aab7a28d78634e3925100000000000000000000b20354a5f748ba0b4b7a18c76667a8fa3b7aa9783705d4a37241100000000000a1f34495e73889db2b5a08c7662778ca1b6ab96826c57422d180400000000000000000f23384c6075899eb2a5938c94a7b7a18c77624c37220d0000000b2034495e73889db2b7a38e786474899eb3ae99846f5a45301b060000000f2031435365768898aabbb7a6958371604f3d2c241b0f0100000000000002192e42576c8297abb6a18c7762677b8fa3b7aa97836f5b47331f0b00000000192d42576c8297abbaa799949eafa38f7c6854433527180800000000000f24384c6074899db1b5a08c84848492a7bcb8a38e84847a65503b26110000000000000000000000050f171f262b2f333434332f2a22190d00000000001122323f47484746444442423d322313010000000000000000031527394a5a6b7a8a98a6b2bdc4c4cabeac98846f5a45301b0000192e43586c8297abb39f8a74604b3743566a7d92a5a793806b57432e1a060000000000172b40556a8094a9b7a28d78634e3a251000000000000000000000000b1f34495e73889db2b49f8a79797b7b7b76614c37220d00000000000000000c1f3346586b7d90a2b4b2a39589807a7b899aadb7a18c76604b36210b000000000000000c2034485d71869aafaa96827d93a8b49f89735e48331e09000000000013283d52677c91a6bba6917c67523e29140000000000000000000c22374c61768c9ca3aba18c766073889cb0ada08d796653402d190400000000071c31455a6f859aaeb9a5907b6673889db2af9a86705b46311c080000000000000000091d31465a6f8398acb1a5a1a5b2b8a38e78634e38230e000000071c31455a6f8599aebca7927d6870869aafb29d88725d49341f0a000000031425364758697a8c9daebfb2a1907d6d5b4a382716040000000000000000152a3f54687d93a7baa5907b676073889cb0b29f8b76624e3a251100000000152a3f53687d93a7bcb7ada9afb39d88796e6153453626160500000000091d3145596d8296aab7a28d786e788ea3b8baa5907b6e6d604d39240f00000000000000000000000000040b11161b1e1f1f1e1b160f06000000000000192d40515c5e5c5b5a5857574f41301e0a000000000000000000091b2c3d4d5c6b7a8895a0a9b0b4b5aea08f7c6854402c170000152a3f53687c92a6b8a38f7965513d3a4e62768a9faf9a86725d4935200c000000000012273c51667a90a5b9a6927c68533e29140000000000000000000000061b30455a6f8499aeb8a38e7865666666655947331f0a00000000000000000316293b4e60738597a8b9b3a79c94909098a7b7b7a18c76604b36210b00000000000000051a2e42576b8094a9b09b877c91a7b4a08b745f4a341f0a00000000001025394e63788da2b7aa96826b57422d180300000000000000000d22374c6176808890979f8c76606d82959d98938f83705c47311c070000000000182d42576c8296abbea994806a6f8499aeb39e89745f4a36210c000000000000000002172b4054697d929da0a1a3a5a8aaa59079644f3a251000000000182d41566b8095aaadab97826d6c8297acafa08c76614d38230e000000000718293b4c5d6e8090a2b3bead9c8a79675644332210000000000000000011263b5065798fa4b9aa95806b586c8295aabaa6927c6854402b160200000011263b5064798fa3b8c6b8b0b0b5a5978c80716354443423120100000002162a3e53677b8fa4b8a7937d6a758a9fb4bea8947d69585142311e0a00000000000000000000000000000000000000000000000000000000000000001e33485d6f7372706f6e6c6c5f4d392511000000000000000000000e1f2f3e4d5c6a76838d959c9fa09c9182715f4c392511000011253a4e63778ca1b5a995806c584433475b708599aea18d78634f3a251100000000000e23384d62778ca1b5ab96826c57422d18040000000000000000000000182d41566b8095aabca7927c6853505151493b2a17040000000000000000000c1f31445667798b9cacbdb9afa9a5a5abb6c5b49f8b745f4b35200b000000000000000014283c5165798ea2b5a18c7a90a5b6a18c76604b36210b00000000000c21364a5f74899eb3ae9a85705b46311c0700000000000000000a1e334658646c747b838b8c7660667a8d88837d79756d5a46311c07000000000014293e53687c92a7bcad99846f6b8095aab7a28d78634e39251000000000000000000011263a4f637787888b8c8f90939598917b66513c27120000000014283d52677c9196989a9b8671697d93989a9b8f7a65513c271200000000000c1d2e3f5061728495a6b7b9a897857362513f2e1d0b000000000000000d22374c61768ba0b5ae9a85705b667a8fa3b8ac97836e5945301b060000000d22374c61768ba0b5baa89b9ba1a9a99d908272625241301e0c000000000f24384c6074899db1ad99857071869bb0c1ac97836d5844332413010000000911151512100d0b0a08060503020100000000000000000000000000001f34495e728688878684837c6854402c18040000000000000000000111202f3e4c5965707982878a8b888072635342301d0900000b2034495d72869aafaf9c8874604d3941566b8095aaa7927d68543f2a1501000000000a1f34495d72889cb2af9a86705b46311c08000000000000000000000014293e52677c92a6bbab96826c57423c3c36322b2113030000000000000000021426384a5c6d7d8f9eaebdc3bdbbbbbfc8c6b19c87725d48331e0900000000000000000e22364b5f73889cb1a7969097a9b7a28d77624c37220d0000000000081d32475c70869ba7aa9e89735f4a35200b00000000000000000317293a48515860686f777d76605f7377736e6965605b4f3e2b1703000000000011263b5064798fa3b8b29d8873677c91a6bba6917c67523e29140000000000000000000c2035495d6d71737476787a7c8083877d68533e2813000000000f24394e63777d828386878976657982838586887d6955402b16000000000000102132445566778999abbcb4a391806e5d4c3a291706000000000000091e33485d72879cb1b39e89745f60758a9eb3b19c88725d49341f0a000000091e33485d72879cb1b49f8a868d97a1ada09080705e4d3b291603000000091d3145596d8296aab4a08b776d8397acc1b09b87715d48331e090000000f1b252a2b272523201f1d1b1a19171615141312110e06000000000000001b2f43576b80949c9b999884705b47331e0a000000000000000000000211202e3b48535d666d727474726c615445362413000000061a2e43576b8094a7b7a3907c6956443d52677b91a6ac97836d58432e190400000000061b30455a6f8499aeb39e89745f4a36210c000000000000000000000010253a4f64788ea2b7af9a86705b4a4a4a48473e31200e000000000000000000091b2c3e4f607080909fadbac6d0d0d3d1beab97836d59442f1a060000000000000000081c3045596d8397abb1a8a5a9b5b8a38f78634e39240f000000000002192e43586c828f9295988d77634e3924140f07000000000000000c1c2a353d454c545b636a6a5b5562635e5955504b473e31200e0000000000000d22374c61768ba0b5b6a18c7763778da2b7aa96826b57412d18030000000000000000061a2d404f5a5c5e5f616366686b6e717466523d2813000000000b2034475966696b6e6f717371606a6c6e6f70727367543f2a1500000000000c1c29323748596a7c8d9eafc1af9e8c7a695847352412010000000000051a2f44596e8498adb7a38e79645b70869aafb5a08c76614c37220c000000051a2f44596e8498adb6a28d777984909caa9e8e7c6a584633200c00000002162a3e53677b8fa4b8a6927d697d93a8bdb49f8b75604b36210d00000c1d2d393f403c3a38363432302f2e2c2b2a2928272722190c00000000000014283c5065798ea2b0ae9f8b76624e392511000000000000000000000002101d2a36414a52585d5f5f5e584f44362718070000000014283c5064788ca0b3ac998673614f3f4f64798fa4b09b86705c47311c070000000000172c41566b8095aab7a28d78634e3a251000000000000000000000000c21364b60748a9fb4b39e89745f5f5f5f5e5b4f3e2b17030000000000000000000f203142526271828f9da9b4bdc3c4c0b3a28f7b67533f2b1601000000000000000001162a3f53687c91999c9d9fa1a4a6a5907964503b2510000000000000152a3f546776797c8084877c67523d2c29231a10050000000000000f20303e4a5357585656564c454e5457575550463b2e211303000000000000091e33485d72889cacafa5907b6674899eafae99856f5a46311c070000000000000000001022313e4547484a4c4e505356585c5f584836230e0000000005182a3b49525456585a5c5e5e535557585a5b5c5e584a3825110000000006192a3a464b4b4d5e6f8091a3b4bbaa988775645341301e0d000000000000172c41556a8095aabca7937d69576c8297acb8a38e78634e38230e00000000172c41566b8095aabaa6917b67727d8c9aa99a8875624f3c2814000000000f24384c6074899db1ac988470798fa4b9b8a38e78644f3a25100000172a3b4a5454514f4c4b494746444342403f3e3e3c3c362a1c0b00000000000d22364a5f73889cb0b9a5917c6854402c18040000000000000000000000000c19242e373e44484a4a49443c3226180900000000000d2135495c708498abb5a391806d5d4f4e63788fa4b39e89735e49341f0a000000000013283d52677b91a6bba6927c68533e29140000000000000000000000081d32475c70869bb0b7a28d7874747474736d5a46311c080000000000000000000213243444536270808c97a1a9aeafaca39584725f4c382410000000000000000000001025394e6277838587888b8c8f9194917b67523c271200000000000c1b28384a596064676b6e7274665243423e372d22150600000000071a2c3e4e5c666c6d6b645a4e515e686c6c6a63594c3d2d1c0a000000000000051b2f44596e849597999b95806b708698999b9d89735f4a35200b0000000000000000000413212b3032333537393b3e4044474a453a2b190700000000000d1d2b363d3f4143454749494240424344464748453a2c1b08000000000e22364858605f5d5a62738596a7b8b6a59382705f4e3c2b1908000000000013283d52677c91a6bbac97836d586a8095abb9a48f78634e38230e0000000013283d52677c91a6bbaa95806b606d7b8b9ba592806b57432f1b07000000091d3145596d8397abb39f8b76768ca1b5bba7927c67523d281400001d3246596869666462605e5c5b5a5857565453535251483a29160300000000071c3044586d8296aabeac98846f5b47331f0b0000000000000000000000000006111b232a2f333434342f2920150800000000000006192d4154677a8fa1b4ae9c8c7b6d6058667a90a5b5a08b75604b36200b00000000000f24394e63778da2b7ab96826c57422d18040000000000000000000003192e43586d8397acbba7948b8b8b8b8a89745f4a36210c00000000000000000000061626354453616e79858e95999b979185766655422f1c09000000000000000000000b1f33485b6a6d6f70727477787b80837d68533e291300000000081a2a3946505658575356595c5f58575857524a40332415050000000f23374a5c6c79828380776c5e5e6f7b838380766a5b4b39271300000000000000172c41566b7d8083848688846f6c82838486888977634e39240f00000000000000000000030e161b1c1e20222426282b2f323431281c0d000000000000000d1923282a2c2e303234342f2b2c2e2f30323330281c0e000000000011273c51657574726f6c6a788a9bacbfb1a08e7c6b5a4837251300000000000f24394e63788da2b7b09b87715d6d8297acb9a48f78634e38230e0000000010253a4f64788ea3b8ae99846f5a5d6d7d8fa39b87725e4a35210c00000002162b3f53677b90a4b8a6927d72889db2bfaa95806b56412c1702001f344a5f747d7b7977757372706f6d6c6b6a686867655846321d09000000000015293e52667a8fa4b8b39f8a76624e3a2611000000000000000000000000000000070f151a1e1f1f1f1b150d0300000000000000001125384b5f718597a9baaa9a8b7d736d708295a9b7a18c76604b36210b00000000000b20354a5f74899eb3af9a86705b46311e170d00000000000000000000152a3f54697d93a8b3b1a4a0a0a0a09f8e78644f3a261100000000000000000000000817263543505c677179808486837d7367584837251300000000000000000000000a1d30435363707b82827d766b676a6d7064503c2712000000001325374857636b6d6c675e534b59646b6e6c665d5142332211000000162a3e5366798b9698948a7c6b6a7c8d97989388796856432f1b0600000000000013283c4f60686b6c6e7072746d626b6c6f70727373624e39240f000000000000000000000000000004090b0d0f1114161a1d1f1c150b000000000000000000070e131517191b1d1f1f1b1617191a1b1d1e1c150b00000000000011273c51667b8b878482807c7d8fa4b9bdac9b89776655422e1a06000000000c21364b5f748a9fb4b4a08b766b77899cb1b6a18c77624c37220d000000000c21364b60758ba0b4b29d887364646674899fa28d78634e392510000000001024384c60758a9eb2ac9884708499aeb1ae99846f5a45301b06001f344a5f748b918f8d8b89888684838282807d7c7c75604b36200b00000000000f23374c6074899db2b9a5927d6955402c180400000000000000000000000000000000000000000000000000000000000000000000081c2f425467798c9eb0b8a99c908883848f9eb1b7a18c76604b36210b0000000000081c31465b70869aa5a99e89745f4a36332a1e1205000000000000000012263b5065798f9b9d9fa1a3a4a6a8a7927d69543f2b1601000000000000000000000514232f383f4a545e656b6e6f6d696156493a31271b0d0000000000000000000011263a4d6071828f969492897b6c5b585b544634210d000000081c30435566758083827a7063586977828382796f6151402e1b0700001a2f44596d8296a8ada79b8975718699abada69886725e4a35200b0000000000000c2032424e535657595b5d5f5c5156575a5b5c5e5e5545331f0b000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000f24394e63788e9c999794929196a8bcc9b8a79584725d49341f0a00000000081d32475c70869bb0b9a48f7c808896a6b9b19c88735e4934200a00000000091e33485d72879cb1b6a28d7979797b8290a2a6917b66513c271200000000091d32465a6e8397abb39f8b778095999c9f9d88735e49341f0a001f344a5f748ba0a4a2a09f9c9b999897969594938c76604b36210c0000000000091d31465a6e8397acc0ac9884705b47331e0a00000005111a1f1f1b16110d09050100000000000000000000000000000000000000001225384a5d6f8292a3b5b9ada39c98989fadbcb6a18c76604b36210b000000000002192e42576c828d9094978d78634e4b473c2f221507000000000000000e23384c6176848788898c8d8f91939497836d5945311c0700000000000000000000122332414c545757555156595a58555857544e44392b1c0c000000000000000000172c4055697c8f90837d828d8b7966524641372817050000000e23374b5f72849398968e82726375889598968d806f5d4a36220e00001b30465b70869bb0c2b8a5907973899fb4c2b5a28d77624c37220d000000000000021423313a3f40424446484a483e404244464749494337271603000000000000000000000913191b191208000000000000000000000000000000070d121517171716120d070000000000000000000000000000000000000000000c21374c60768ba0aeaca9a7a6a8b4c5d6c4b3a08b76614c38230e0000000003192e43586d8397acbdaa9993959ba6b4bba996826d5945301b0700000000041a2f445a6f8499aebba796908f9091959faea8937c67523c27120000000003172b3f53687c90a4b9a6927d7a828487898c8c76614c38230d001f344a5f748ba0b5b7b5b3b2b0afadacabaaa9a38d77624c37220d000000000002172b3f54687c91a5bab39f8a76624e39251100000515232e34342f2b26221e1a16120a000000000000000000000000000000000000081b2d3f5163748697a7b7c0b7b0adadb2bcc8b39e89745f4a341f0a000000000000152a3f536774777b7d83867c675a60594d40332517080000000000000a1f34485c6b6f7072747677797b7c808283745f4a341f0a0000000000000000000b1e3041515e686c6c6a63584c5360696c6c696156493a2a190600000000000000001a2f44596e84988572686e7d92826d59442f25190a0000000012273c51657a8fa2adaba0907d697d92a5ada99e8d7965513d281300001a2f44596e8498abb4b2a28f7972879caeb5b1a08c77624c37220d0000000000000005131e26292b2d2f313334332c2c2d2f303234343026190a000000000000000000000c1a262e302d251a0b00000000000000000000000008121b21262a2c2c2c2b27221b140b010000000000000000000000000000000000000a1f34495e73899eb3b7b9babbbdbfc0c1c3b9a48f7965503b26120000000000162b3f54697d94a8beb7aba8aaafb8bcae9e8c7966523e2a16010000000000172c41566b8296abbcb4a8a5a4a5a6aab2baa5907b66503b261100000000001024394d61758a9eb2ad9986716c6f7274767876624d38230e001f344a5f748ba0b5cbcac8c5bab5b5b7b8b9b8a38d77624c37220d0000000000001125394e62768b9fb4b3a5917c6854402c180400112333414949443f3b37332f2b261d10010000000000000000000000000000000000102234455768788999a9b7c5c5c3c3c7cfc3af9a86705c47321d0800000000000010243749585f6573706d70736569766b5e514335261401000000000005192c3e4d575a5b5d5f60636466686a6b6d6a5a47321e0900000000000000000013273a4d5f6f7b83837d756a5b62717d83837d7467584836231000000000000000001b30465b708795806a5562778c87725c47321d08000000000013293e53687d93a8bdbeac97836d8297acc1bca994806a543f2a150000172c4054687b8d9aa09e9585736c80909ca09d9382705c48341f0a0000000000000000020b111416181a1c1e1f1e1916181a1b1d1f1f1b1409000000000000000000000c1b2a3842464237291806000000000000000000010e1b252e363b3f424242403c362f271e14090000000000000000000000000000000000071c31475c70879ba0a2a4a5a7a8a9abacaeb0a8937d69543f2b16000000000012273c51667b90a5acafb2b4b5b4b0a99e90806e5c4936230f00000000000014293e53687d93a2a7abaeb1b3b4b5b5b4ad9e8b76624d39240f0000000000091e32465b6f8397acada08d78645a5c5f6163635847331f0b001f344a5f748b9fb1c2d3c9b7a7a0a0a1a3a4a5a38d77624c37220d0000000000000a1f33485c7085999f9e9f98846f5b47331f0a001a2e41515d5d5954504c4844403a2e1f0f0000000000000000000000000000000000051628394a5b6b7b8b99a7b4c0c9d0d2cbbba894806b57422e1904000000000000091d314455657584806f605e6073877c6f615343311d0900000000000b1c2c3b4751565857524b4d4f5153575858574d3e3123130300000000000000031a2e42566a7c8e9798928879686d8090989791867665533f2b1700000000000000001b30455a6f8497837065697a8e87725c47321d07000000000012273c51667b90a4b3b4a996826c8094a7b4b3a6937d69543f2a1500001125394c5e6f7c878b8983766761717d888b8882746453402d19050000000000000000000000000000000000000000000000000000000000000000000000000000000c1b2a3948565b554735230f000000000000000002111f2c38414a505457575755504a433a31261b0f03000000000000000000000000000000001a2f44596e84898b8d8f909193949697999b9c97836d58432e1a00000000000f24394d63778d93979a9d9fa09f9c968c807162513f2d1a0700000000000011263b50667b888e9296999c9e9fa0a09f9a90806e5b47331f0a000000000003172b4054687c9197989994806c58474a4c4e4e473a291704001f34495d708293a4b5c6c2ad998b8b8c8d8f90918f78634e38230e00000000000004192d41556a7d89898989898976624d38230e001f34495d70726d6965615d58554c3d2c190500000000000000000000000000000000000a1b2c3d4d5d6c7b8996a2adb6bbbdb9ad9d8b7764503c2814000000000000000c21374c607384948e7d6e5e6a7d908d8071604c37220d00000000021528394a59646b6e6c665d514d5b666c6d6b655c4f4131200e00000000000000081e33485d71869aabada5988672758a9dadaca395836e5a46311c0000000000000000182c41566a7d928f80797c8795826d59442f1a0500000000000f24384d617487969f9f998c7967778a989f9f98897764503b27120000091c2f40515f6a7274736f665853616c7274736d645647352311000000000000040b0f0f0a0200000000010b1215130e05000000000000000000000000000000000c1b2a394857667065523e2915000000000000000010202f3d4a545d64696c6c6c69655e564d43392d201305000000000000000000000000000000172c4155687274767778797b7c7d82838486878887715c47321c00000000000b20354a5f72797d828688898b898782796f625344332210000000000000000f24384c5f6d73787d828487898a8b8b89867d7162513e2b18040000000000001125394d617582828384868874604b36373939342a1c0c00001a2e415264758697a9bac2ad998775767778797b7c78634e38230e0000000000000012273b4f637373737373737372614c38230d001f34495d7287837d7976716d695b4834200b0000000000000000000000000000000000000e1f2f3f4e5d6b7885909aa2a6a8a49c8f806e5b4835210d000000000000000c21364b607385969c8d7c6c74889a9d8b76624d38230e000000000a1e3245576876808382796f615a6b79828380786d5f4f3e2b18050000000000000a1f344a5f748a9fb4c2b5a18c76778da3b8c1b29e89735e48331e000000000000000013273b4f6274859294909195897765523e2a16010000000000091e314457687783898a867c6d5c6b7a858a8985796b594734210c000000112232414d575d5f5e5a5348434f585d5f5e5951463829180600000000000b172024241e1511131311131e262a2822170b00000000000000000000000000000d1c2a3948576675826c58432e1a050000000000000b1d2e3e4d5b6771797d8283837d79726a60564a3e3123140500000000000000000000000000001225384a575d5f606263646668696b6c6e6f7072746e5b46311c0000000000081c3043546165696c7072737474726d665d51443526160400000000000000091d304150595f64686c6f717374747474716a60534433220f000000000000000a1e324659686b6b6c6e707271604b3622242420180c000000112435465768798b9cadbeb5a49382706263646667675b4935200c000000000000000c203446565f5e5e5e5e5e5e5e5444311e09001a2f43586d8296938f8b878377624d38230e000000000000000000000000000000000000011121303f4d5a67737d868d9193908a7d7061503e2b180500000000000000081d31445567788a9b9b8b7b7d91a49985705c47331f0a000000001125394e6174869498968d807065778a9698958b7d6d5b4834200c000000000000091e33485d72889caeb5b09f8b76768b9fb0b4ae9c88735e48331e00000000000000000c20334556667580888b8983776a5a4836230f0000000000000215283a4a5a6670747471695e4f5c6870747470675c4d3c2a1805000000041423303a43484a49463f36323c44484a49453e34281a0b00000000000c1b2934393932272728292723303b3f3d35291d100400000000000000000000000d1c2b3a485766758586715c48331e0900000000000215283a4c5c6b79858d93979897948e867d73685c4f413223140500000000000000000000000000091b2c3a44484a4b4c4e505153545657585a5c5d5f5c503e2b17000000000001142636444c5054575b5d5e5f5f5c58524a3f342617080000000000000000001223323e454a4f53575a5c5e5f5f5f5f5c564e43352616040000000000000003172a3b4a54565657585b5d5e5343301c0f0f0c0500000000061728394a5c6d7d8fa1b2c2b09f8e7c6a594f5052524b3d2c19060000000000000004172838444a49484848484949433626150200152a3e53687c91a6a4a09b907965503b2611000000000000000000000000000000000000000312212f3d4955606a72787b7c7a756d706856422d18030000000000000001142638495a6c7d8e9f9a8b889ba7937d6a55412d19040000000014293f53687c91a4ada99e8e7a6c8295a7ada89c8a77634f3a2510000000000000041b2f44586c80909ca09d92826f6f82929da09c90806c5844301b0000000000000000031628394857636d7274736e665a4c3c2b1906000000000000000b1c2d3c49535b5f5f5c564c404b555c5f5f5b544b3e2f1e0d000000000005121e272e333434312b2320292f333434302a21170a000000000009192a39474e4d44383c3e3e3c37414e5451473a2e2214050000000000000000000d1c2b3a4958667585948b76614c37230e00000000000b1f3245586a7a8a97a19f9997989ba09a9086796d5f514232231303000000000000000000000000000e1c282f33343637393b3c3e3f4042434547484a483f32210f00000000000008182631383b3f424648494a4a47443e372d221608000000000000000000000514212a30363a3f424447484a4a4a4a47423b312517080000000000000000000c1d2d393f40414244464849423525140100000000000000000a1c2d3e4f60718394a5b6bcab9a89776554433d3d382d1f0e0000000000000000000b1a273034343333333334342f25180900001025394e63778da2b6b4a8937d68533f2a150000000000000000000000000000000000000000031426384750565c61676c70767b80866f5a45301b050000000000000000091a2b3d4e5f708292a29b9aa6a28d7864503b27120000000000162b40566b8296abc0bcaa95806e8499afc3baa7927c67523c27120000000000000015293c4f617180888b88827364647482888b878071614f3d29150000000000000000000a1b2a394550585d5f5e5a53483c2e1e0d0000000000000000000f1e2b3740474a4a47423a2f3941474a4a4741382d201100000000000000010b141a1e1f1f1c17100d151b1e1f1f1b160e0500000000000717273747576361544c515353514b4e5f6964584b3f32231100000000000000000c1b2b3a495867768594a38f7965503b2712000000000012263b4e61758899a4978c848283868c949e978b7d6f60514131200f00000000000000000000000000000b151b1e1f2122242527282a2b2c2e30313334332d2213030000000000000009151e23262a2d3133343434322f2a231a1005000000000000000000000000040e161c21262a2d2f323334343434322e271e140700000000000000000000000f1b252a2b2c2d2f3133342f251708000000000000000000000f2031435365768898aabbb7a6958371604f3d2c241b0f010000000000000000000009141c1f1f1e1e1e1e1f1f1b13080000000b20354a5e73889db2c0ab96826c57422d180300000000000000000000000000000000000000001b2f4356646a70767b82868b909587705c47321c070000000000000000000e1f30415263738595a6aeb09c88725e4a35210c0000000000152a3f54697d93a6b4b3a794806d8297aab4b3a4917c67523c2712000000000000000d20324353616c7374736d635556636d7374726c61534332200d000000000000000000000c1b28343d44484a49453f362b1e1000000000000000000000000d1a242c323434322e271d262d323434322d251b0f0200000000000000000000000000000000000000000000000000000000000000001224354555657572646166686865605a6b7d75695d50402e1a06000000000000091a2a39495867768694a3a8937d6954402b160100000000182d41556a7d92a59586796f787b7877828c999c8e7d6f5f4f3e2d1b0900000000000000000000000000000002080a0b0d0f101213151617191b1c1e1f1e19100400000000000000000002090e1215191c1e1f1f1f1d1a150f070000000000000000000000000000000001080c1115181a1c1e1f1f1f1f1d19130b0200000000000000000000000000091115161718191c1e1f1b12070000000000000000000000031425364758697a8c9daebfb2a1907d6d5b4a3827160400000000000000000000000000000000000000000000000000000000071b30455a6f8499adc2ae99856f5a45301b0600000000000000000000000000000000000000001e33485d7280868b90969a9fa49d88735e48331e0900000000000000000001122334455666778898a8ab96826d58442f1b07000000000012263b4f637689979f9f988a77677a8c999f9e968775614d39240f0000000000000003142535434f585e5f5e5951464551595e5f5d584f443526140300000000000000000000000a1621292f333434312b23190d000000000000000000000000000711181d1f1f1d19130a12191d1f1f1d181208000000000000000000000000000000000000000000000000000000000000000000001a2e41536373848273757a7d7d7a736a7789877a6e5d4934200a000000000000142738485767768695a4b2ac97836d59442f1a06000000001c31465a6f85999c89776e808c918d82757a88969d8e7d6d5c4a392715020000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000718293b4c5d6e8090a2b3bead9c8a79675644332210000000000000000001080c0d0d0d0d0d0d0c0801000000000000000000172c41556a8094a9beb29d88725d48331e0900000000000000000000000000000000000000001d32475c70869a9fa5aaafb3a39484735e49341f0a00000000000000000000051627384959697a8a9a9c917c68533e2a150100000000000c203447596a79858a89857a6b5d6e7b868a898378685745321e0a0000000000000000081725323c44494a49453e34343e45494a48443c3226170800000000000000000000000000040e151b1e1f1f1c171007000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001f34495d7182929283899093938f877c82959685735f4b35200b0000000000001c30445666758595a4b3c2b19c87725d48341f0a000000001e33485e73889d95806c798c9da7a09385757787969c8b79685644321f0c000000000000000000020406080a0a08080d0e0b05000000000000000000000000000000000000000000060e14181b1c1d1b18140e07000000000000000000000000000000000000000000000a11171b1d1d1c19140e0500000000000000000000000000000000050d11120f0d0a07050200000000000000000000000000000000000000000c1d2e3f5061728495a6b7b9a897857362513f2e1d0b00000000000008141c21222222222222211c1408000000000000000013283d51667b90a5bab5a08b76604c37221414110b0100000000000000000000000000000000192d42576c8296abb9bfb4a5958675655543301b070000000000000000000000091a2b3b4c5c6c7b89878776624d39241000000000000004172a3c4d5b6770747470685c505e697174736f665a4b3a2815020000000000000000000814202930343434302a21212a303434332f2920150800000000000000000000000000000000000000000000000000000000000000000000020e161b1b1917151311171a1a1a1a1a1a1a181208000000000000000000000000000000000000000000000000000000000000000000000000001f34495d707d8d9b979ca4a8a8a39a8f8f9c8a78675644301c080000000000001f344a5f738494a3b3c2beb0a08c76624d38230e000000001f344a5f74899f947d6c8295a9a09ca2938270778899978673614e3b28150200000000070f141617191b1d1f1f1d1c22232019130d070100000000000000000000000000000005111a22282d303232302d28221b120800000000000000000000000000000000000008131d252c303232322e2922180e02000000000000000000000000000c1821262724221f1c1a17140d04000000000000000000000000000000000000102132445566778999abbcb4a391806e5d4c3a2917060000000007172530363737373737373630251707000000000000000f24394d62778ca1b6b8a38f78644f3a29292a261e1204000000000000000000000000000000152a3e53687c92a7bcb5a6968776675747382614000000000000000000000000000d1d2e3e4e5d6d7471706c5b47331e0a000000000000000d1e2f3d4a545c5f5f5c554b404c565d5f5e5b53493c2d1c0b0000000000000000000000030d151b1f1f1f1b160e0e161c1f1f1e1b150d0300000000000000000003080b0b0b09060000000000000000000000000000000000000313202a30302e2c2a28262b2f2f2f2f2f2f2f2d25190b0000000000000000000000000000000000000000000000000000000000000000000000001a2e4151606e7c8da2afa29893949aa2a2907d6c5b49382714010000000000001f34495e73889db2c1bdaea0928374624d38230e000000001f34495e73899f947d6f869aa18f87909f8d7a6a7b8d9f917d6b5845321e0b0000000d1923292b2c2f30323434312f3738342d27211b16100a0400000000000000000000000a17232d363d4245474746423d362e251b11050000000000000000000000000000000b192530394045474747433d352b20130500000000000000000000000a1b2a353b3c3a3734322f2c29211507000000000000000000000000000000000c1c29323748596a7c8d9eafc1af9e8c7a69584735241201000000122535434b4c4c4c4c4c4c4b43352512000000000000000b2034495e73889db2bba7917c67523e3e3e3f3a30221100000000000000000000000000000011253a4f64798ea3b6a7978878685949392a1a0900000000000000000000000000001020303f4f5c5f5c5b594e3e2b18040000000000000000111f2d3841474a4a4741392f3a42484a494640372b1e0f000000000000000000000000000000000000000000000000000000000000000000000000000000050f171d2021211e1a140d040000000000000000000000000000000f21313d454643413f3d3b3f4444444444444441372919060000000000000000000000000000000000000000000000000000000000000000000000112333425064798fa4a593857d7d8794a2968572604d3a2714000000000000001b30455a6f8499aebbad9e908273655645321e0a000000001e33485e73889d947d70879c9d887282929885706f82949b8875614e3a261200000b1c2b363e4042444647494a45414b4d48413b36302a241f180d0000000000000000000a192835404a51575a5c5c5b57514a41382e221609000000000000000000000000000b1a2936424c545a5c5c5c5851483d31231405000000000000000000011528394750514f4c494744423d33251503000000000000000000000000000006192a3a464b4b4d5e6f8091a3b4bbaa988775645341301e0d0000001b2f4253606262626262626053422f1b07000000000000071c31455a6f8599aebfaa95806a55535353544d402f1c0800000000000000000000000000000d21364b60758a9fa8988979695a4a3b2b1b0c000000000000000000000000000000021221313e484a4746443d30200f000000000000000000010f1b252d323434322d261d272e333434312c241a0e00000000000000000000000000050a0f14191b19130a00000000000000000000000000000000000917222b32363636332f2920160b0000000000000000000000000000192c3e4f595b5856545250525a5a5a5a5a5a5a544736230f00000000000000000000000000000000000000000000000000000000000000000000000515263b50667b91a79c8875686a758495a2907d6a5743301c07000000000000172c41566b8296abac9e8f807163554738281603000000001c31465b70869b958070879c9d88727589928a7864768a9d917d6955412d19050015283a48525557585b5c5e5f58505e635c56504a443e39332b1e0e000000000000000718283746525d656b6f7172706b655d544b4034271a0b00000000000000000000000618293847545f686f7272706c645a4f41322314040000000000000000071c314457646664615e5c5957504333201811060000000000000000000000000e22364858605f5d5a62738596a7b8b6a59382705f4e3c2b190800001f34495e71777777777777715e4a36210d00000000000000182d41576b8296abbfad98836e67686868695e4c38230f0000000000000000000000000000091e32475c71879b998a7a6a5b4b3c2c1d0d00000000000000000000000000000000000313212c333432302f2a1f120200000000000000000000000812191d1f1f1d19120a131a1e1f1f1c18110700000000000000000000050a1015191e24292d302e271b0d000000000000000000000000000000091827343e464b4b4b48433c33291d10020000000000000000000000001e33485c6d706e6b696765626f6f6f6f6f6f6f65523e2a1500000000000000000000000000000000000000000000000000000000000000000000000011263b50667b90a598836e59586676899b9a87735f4b36220e00000000000014293e53687c92a79c8e807062534537291a0a0000000000192f44586e8398978370869b9f8a746d827d766e606d82949985705c48331f0a001c314558666a6c6e70727374675a6e77706a645e59534d473c2c1b080000000000001224364655636f798085878886807971675d514537291a0b00000000000000000000112436475665727c8488888682776c5f514232221201000000000000041321344a5f747b787673706e6c61503c302c231708000000000000000000000011273c51657574726f6c6a788a9bacbfb1a08e7c6b5a4837251300001e33485d72878d8d8d8d8d7965503c28140000000000000014293e53687c92a7bcb09b877c7c7d7d7d7b66513c27120000000000000000000000000000041a2f44586d83978a7a6b5c4c3d2d1e0e00000000000000000000000000000000000000030f191e1f1d1b1a160d010000000000000000000000000000000000000000000000000000000000000000000000000000050d13191f24292e33383d424643392b1a08000000000000000000000000000315263645515b6060605d5850463a2e20110100000000000000000000001f344a5f748683827d7c796d7c8686868686826c58432e190400000000000000000000000000000000000000000000000000000000000000000000000f24394e63788da298836d5848596b7d92a28e7965513c281300000000000011263b5065798f9c8c7d6f6152443627190b000000000000162b40556a80949b86708397a28e7865706a625a5164788da08b77624d39240f001f344a5f748082848688898573627489857d78736d68625a4a3824100000000000091c2f41536473828d959a9c9c9a958d857a6f63554738291a0a0000000000000000081b2e41536474838f989c9d9b958a7d6f6051402f1e0c0000000000001022323e475c70868f8c898784806b56464640352615020000000000000000000011273c51667b8b878482807c7d8fa4b9bdac9b89776655422e1a06001a2f44596d8397a3a3a394806b57422e1a0500000000000010253a4f64798fa3b8b4a19391939494947d6954402b16010000000000000000000000000000162b3f54697d8b7b6c5c4d3e2e1f0f00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000c1821282e33393e43484d52575b5649382511000000000000000000000000000d20324454636e757676726c63584c3e2f1f0f00000000000000000000001d32475c7187989794928771778d9b9b9b9a86705c47321d0800000000000000000000000000000000000000000000000000000000000000000000000c21364a5f73889c9b87725d494e62768a9f94806a55412c170200000000000d23384c62778c99877a6e6155493c3023160a000000000012273c5065798f9f8a757d93a7927d695b564e47495d72879b907b66523d2813001d32465a6b7b8c999b9c9f91806f788d99938d88827c7767533e291400000000001125384c5f7182929f9b928d8d8f949c988d827365564738281706000000000000001024374b5e708293a1acb1b3afa79c8e7d6f5e4d3c2a18050000000000192d3f505b5c6c8296a19e9b9986715c5b5b5344321f0b000000000000000000000f24394e63788e9c999794929196a8bcc9b8a79584725d49341f0a00162b4054697d93a8b8af9a86715d4834200b0000000000000d22374c60758ba0b4bfb0a7a7a8a8a997836d58432e1904000000000000000000000000000012273b5065797c6c5d4e3e2f2010010000000000000000000000000000000000000000000000000000000000000000080d0e0c0b0907050402010000000000000000000000000000000000000000000000000a1b2a353c42484d53575c61666c706754402c170000000000000000000000000015293d4f6172828a8c8b878075695c4d3d2d1b0a000000000000000000001a2f44596e8498aba99f8b7573889db0b09e89745f4a36210c0000000000000000000000000000000000000000000000000000000000000000000000071c3045596d8295a18d796653475b70869b98836e58432e190400000000000b20354a5f74899e988c8072665a4e4134271a0b000000000e22374b6074889c8f7b788da198846f5b4b484243586c829694806a55402b1600172a3c4d5d6d7d8f9fafaf9e8e7c7c91a6a8a29c968f7b67533e29140000000000172b4054687b8fa097897d7777798088929e91847465564635241201000000000000162b3f53677a8ea0b1bfbdb7b7b9ac9d8d7c6b594734210d00000000001e33485c6e72727c91a6b3b0a08b76707070614e3a2511000000000000000000000c21374c60768ba0aeaca9a7a6a8b4c5d6c4b3a08b76614c38230e0012263b5065798fa3b8b5a08c77634e3a2611000000000000091e33485d72879cb1c4b1a0989898989886705b46311c0700000000000000000000000000000e23384c61726e5e4e3f302011020000000000000000000000000000000000000000000000000000000000000005121c222322201e1c1a19171615141211100f0d09010000000000000000000000000000001528394750565c62676c71767b82846e58432e19000000000000000000000000001b3044586c80919ea1a09b93887a6b5b4a39271401000000000000000000172c41566b8095aab8a38f796f8499aeb7a28d78634e392510000000000000000000000000000000000000000000000000000000000000000000000001162a3e5265798c9f9683716153586e84999b866f5a442f1a050000000000071c31475c70869ba99d9084776b5f524538291805000000081c3145596d8295968272869a9e8a7662605d575153687d9397836c57422c17000d1e2f3f4f60708291a2b2ab9a888296aabcb6af9b8873604c38241000000000001c31455a6f83979e8c7d79756f65707c808d9e938474635341301e0c0000000000061b3045596d8396aabdb5a9a2a1a5aeab9a897664503b261100000000001f344a5f7388888790a5babaa6928787877c68533f2a15010000000000000000000a1f34495e73899eb3b7b9babbbdbfc0c1c3b9a48f7965503b2612000d22374b60758a9fb4bba6927d6954402c17030000000000041a2f44596e8398adc0ab96838383838383735e48331e090000000000000000000000000000091e3144545e5c504030211202000000000000000000000000000000000000000000000000000000000000000414232f3738373533312f2e2c2b2a2927262524221d130700000000000000000000000000001c314457646b71767c82868b9095866f5a45301b000000000000000000000000001f34495e73889caeb7b5afa5988a79685644311e0a00000000000000000014293e53687c92a7bca7937d6b8094a9bba6917c67523d28140000000000000000000000000000000000000000000000000000000000000000000000000f2236495c6f8294a18f8070666472879b99846e59442f1b0b000000000001192f44586e8398adaea295897c7063564735220e00000001162a3e5265798d9e8a767d90a3927d6b75716b655f677c9399846e58432e190000112131425262738494a4b4a6948a9aaec3bca894806c5844301c0900000000001f34495e73889d9284938f8a7964758a8b8a9c9e9282705f4d3b28160300000005152334495e73889cb1b7a6978e8c919ca294857665513c271200000000001c3045596e83979ca0acb9c1afa19c9c97826d58442f1b06000000000000000000071c31475c70879ba0a2a4a5a7a8a9abacaeb0a8937d69543f2b1600091e32475c70869aafc1ac98846f5a46311d08000000000000172c40556a8095aabfad98836d6c6c6c6d6a5946311c070000000000000000000000000000021526364349483f3222120300000000000000000000000000000000000000000000000000000000000000000e2132414b4e4c4a4846444342403f3e3c3b3a393730251606000000000000000000000000001f344a5f7480868b91969ba0a59c87715c47321d000000000000000000000000001f344a5f748ba0b5cbcac2b6a8978673604d3a261200000000000000000010253b5064798fa4b9ac97826c7b90a5baaa95806b56412c17020000000000000000000000000000000000000000000000000000000000000000000000061a2d40526476879a9e8f837b788090a296826b5747392816030000000000162c40566b8094a1aeb3a79b8e827364513c2813000000000f22364a5d70849793807386989b88757b86807971677c9399846e58432e19000003132434455565758697a7b2a39fa7b7c9b5a18d7864503c29150100000000001f344a5f748ba08f7d92a3937d697a8fa09e8a8d9e8f7c6a584633200d000000112333414c61768ca0b5ad9a8879767d8c92847567594936220e0000000000162b3f54687c9191919badc1b9a594909087725d49341f0a000000000000000000001a2f44596e84898b8d8f909193949697999b9c97836d58432e1a0004192e42576c8296abc0b29e8975604b37230e00000000000013283d52677c91a7bbb09b87715c575758564c3c2a16020000000000000000000000000000000918252f34332d221304000000000000000000000000000000000000000000000000000000000000000000162b3e505e63615f5d5b5a585756545352504f4e4c43342311000000000000000000000000001e33485d72879aa0a5abafb2a29383715c47321c000000000000000000000000001f344a5f748a9fb4c9ded4c6b5a3907c6955402c180300000000000000000d22374c61768ca1b6af9b8670778ca1b5ae99846f5a45301b0600000000000000000000000000000000000000000000000000000000000000000000000d2033445567788a9c98a096908f939ea9948374655746321e09000000000013283d52667684909eaab7ac9f92806b56412c1803000000071a2e415467798c9e8b797a8c9d93838094948e786a809498836d58432e1900000006162737485868788999aab7b4b9c5c1ad9986715d4935210d0000000000001f344a5f748ba08f788da298836e8094a9978380919a8875624f3c29150200001a2e41515d62778da3b8a7927d6a626d7c82736557493b2b1907000000000011253a4e63767b7b7d93a8bdb7a18c79797974604b36200b00000000000000000000172c4155687274767778797b7c7d82838486878887715c47321c0000152a3e53687c92a7bcb8a38f7a65513c281300000000000010253a4f64788fa3b8b49f8a75604b4243423a2e23180a0000000000000000000000000000000008131b1f1e191004000000000000000000000000000000000000000000000000000000000000000000001b30455a6d78767472706f6e6c6b6a68676664636052402d19000000000000000000000000001a2f44596d8397acbabfb3a49485746454412e19000000000000000000000000001e33485d72879cb1c6dae4d2c0ac9984705b46321d0800000000000000000a1f34495e73889db2b49f8a7472889cb1b29d88735e49341f0a000000000000000000000000000000000000000000000000000000000000000000000013273c50617385979183909aa2a4a59f9599938475614c37220c00000000000f233749596672808d99a6b3ae99846f5a46311c07000000001124374a5c6f82929787767d8e9b95929da18c776e839896826b56412c170000000009192a3a4a5a6b7b8c9cadbdcdcebaa6927d6a56422e1a060000000000001f344a5f748a9f8f78889c9d88738499a4907c73859892806c5845311d0900001f34495d7074788fa4b8a38e787372706f72645647392b1d0d0000000000000b1f334758676a6a7990a5bbbaa5907c6a6a69604e3b2713000000000000000000001225384a575d5f606263646668696b6c6e6f7072746e5b46311c000011253a4f64788ea3b3b3a994806b56422d190400000000000d22374c60768ba0b5b8a38e78644f424242423f362818070000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001e33485d72888c8a888786848382807d7c7b7978705c47311c00000000000000000000000000162b4054697d94a8bdb4a5958675665646362512000000000000000000000000001a2f44596d8397acc0d4e7dcc7b39e89745f4a35200b0000000000000000061c31465b70869aafb8a38e786e8498adb5a18c77624d38230e0000000000000000000000000000000000000000000000000000000000000000000000152a3f546a808a9586737d878d91908b828a8f80705f4a36210c0000000000071a2b3b4855616e7b8995a2b09e89745f4a36210c00000000081b2d3f51637586979587787d8a949b9c94847175899d927c68533e291400000000000c1c2c3c4d5d6e7d8f9fb3c7c8b39f8b77634e3b2714030000000000001e33485d72889c90798397a28d77889d9e8a75687a8e9c8874604d39241000001f34495d72878b92a6b9a4918989887b665f544638291b0d000000000000000a1f344a5f7480808090a5bbbfac988580807d6a56422f1b07000000000000000000091b2c3a44484a4b4c4e505153545657585a5c5d5f5c503e2b1700000c21364b60748a9d9d9d9d9a86705b47321d090000000000091e33485d72889db2bba6917c6757575757575346362410000000000002090d0e0c090704020000090f12110d0a06030000000000000000000000040c10110e0b080604020000000000000000000000001f344a5f748a9f9f9d9c9a999796959493919086705b46311c0000000000000000000000000012273c51657a90a5b5a69687766757483828190700000000000000000000000000162b3f54687c90a4b8cadce1ccb7a28d77624c37220d000000000000000000182d42576c8297abbca7927c6a8094a9b9a5907a65513c2712000000000000000000000000000000000000000000000000000000000000000000000012273b4f616d77837a686a72787b7a776f7a80706151412f1b070000000000000d1d2a3744515d6a7785929fa28d78644f3a25110000000000102234465768788998978a807780868882756f80929f8c77634e3a25100000000000000e1e2f3f506071869bb0c5c7b29d89776654433221100000000000001b30455a6f8499927c7d92a792848ba097836e5e718599907c68533f2a1601001b2f43576c8095a3b0c0afa29f9f937d68544336281a0b0000000000000000091e32475c718695959babbfc8b5a296959586725e4a36220f000000000000000000000e1c282f33343637393b3c3e3f4042434547484a483f32210f0000081d32475c718788888888898975604b36210c0000000000051b30455a6f8599afbfaa95806c6c6c6c6c6c6453402b170200000009151e2323211e1c191714111c242726221f1b1815120e060000000000000b1720252623201e1b1917140d020000000000000000001f344a5f748ba0b4b3b1afaeacabaaa9a8a799846e59442f1a000000000000000000000000000e23384d62778ca1a7978877685949392a1a0a00000000000000000000000000001125394d6175889badbecddacdb8a38d77624c37220d000000000000000000152a3f54687d93a8bdab96826c7b90a5baa8937d6954402b1601000000000000000000000000000000000000000000000000000000000000000000000c203242505a6571705d575e636666625c6b7061514233241200000000000000000c192633404d5a6673828f9c927c68533f2a150100000000051728394a5a6a7988969c928a837d7a7879808e9d9683705c4834200b000000000000001125394e62778ca0b4c9c7b8a6958472614f3e2d1c0b0000000000182c41566b80959580788ea2a0999ba79180756a697d9297836d59442f1a060014293d52667a8f9ca6b7b4a49c9c97826c57422e190a00000000000000000004192e43586d8397979dadc0d2c0b3ab9e988d7965523e2a1501000000000000000000000b151b1e1f2122242527282a2b2c2e30313334332d2213030000031a2f44586b7272727272737371604b36210c000000000000182d42576c8297abc0ae99858383838383836e5945301b0700000818263138383633312e2c29262e383c3b3734302d2b2722190c00000000091a28343a3b383533302e2c281f130400000000000000001f344a5f748ba0b4b6b8babcbdbfbfbebdac97826c57422c17000000000000000000000000000a1f34495e73889d988978695a4a3b2b1c0c0000000000000000000000000000000a1e3145586b7d8fa0afbdc7c9b5a08b76604c37210c00000000000000000011263b50657a90a5baaf9a8670778ca1b6ac97836d58432e1a0500000000000000000000000000000000000000000000000000000000000000000000031424323d48545e5d51434a4e50504d4d595c5344332415060000000000000000000815222f3c495663707d8c97826d58442f1b0600000000000a1b2c3c4c5b6a7785909b9d9793908f8f949e9a8a786653402c190500000000000001162b3f53687c92a6babfb3afb3a1907d6d5c4b3a2918070000000013283d51667a8f9a8574899ea2908d939c92887a6c768b9c87725d48331e09000e23384c617687889aaead9887878786705b46301d0900000000000000000000152a3f54697d828292a7bcd1d0bca7928384826d58432e180300000000000000000000000002080a0b0d0f101213151617191b1c1e1f1e1910040000000015293c4d595c5c5c5c5c5e5e5e5343301c08000000000000152a3f54697d93a8bdb4a399989898989888735e4a35200c0000132536444c4e4b484643413e3a3f4c52504c494542403c362a1c0b000000142738464f504d4a484543413c31221200000000000000001f344a5f748b9d9fa1a3a5a7a8aaacaeb0a994806a543f2a1500000000000000000000000000061b30455a6f849989796a5a4b3c2c1d0d000000000000000000000000000000000215283b4e607182919fabb2b5ad9a87725d48331e090000000000000000000e23384d62778ca1afaf9e897473889db0b09b87715c47321e0900000000000000000000000000000000000000000000000000000000000000000000000615212b36424949413335393b3b383c45474135261506000000000000000000000004111e2b3845525f6d7b8987725d4934200b0000000000000e1e2e3d4c5a67737d8890969b9ea09f9c94897b6b5b4937241100000000000000081c3145596e8397abc0b2a199a1ae9c8c7a685847362514040000000e23374c6074899d8a768499a18d78808995998b7b71879c8b75604b36210c000a1f34485c6d708095aaae9a867070706c5e4c38240f0700000000000000000011263b4e606c6c7b91a7bcc5bebeaa9683706f6755412c1702000000000000000000000000000000000000000000000000000000000000000000000000000c1e2f3c454747474747484949423525140100000000000012273c51667b90a5abacadadadadadada28d78634e3a251100001b2f43546163605d5b5856534e4c5d6764615d5a575451483a29160300001c3044566365625f5d5a58574f402f1c08000000000000001f344a5f7487888a8c8d9091939597999b9c937c68533d28130000000000000000000000000000172c41566b808a7a6a5b4c3d2d1e0e0000000000000000000000000000000000000c1e3042536372828e989ea09d8f7d6a57432e1a060000000000000000000b2034495e7389999999998d786f84999b9c9d8a75604b36210d000000000000000000000000000000000000000000000000000000000000000000000000030e19252f34342e2321242626232a30322d24170800000000000000000000000000000d1a2734414f5d6b798877634e3a261100000000000000101f2e3c4955616a747b8287898b8a8782776b5d4e3d2c1907000000000000000e23374b6074899db1bfaa958493a6a9988775645343322212010000091d31465a6d8296917d8094a6927c6c77859699887584998d77624d38230e000b20364b6075848492a7b4a08c8484847b66523d28231b130b030000000000000b1f32425057677c93a8bdb3aaa9b3a08c79665649382512000000000000000000000000000a121717130b0000040e15171510060000000000000000000001111f2a3032323232323334342f251708000000000000000e23384d63778d9495979898999b9c9d9e927c68533f2a1500001f34495e72787572706e6b686052677b7976726f6c6a655846321d0900001f344a5f73797774726f6e6b5e4b37230e000000000000001e33475b6c7073747678797b7d8082848687897b66503b2611000000000000000000000000000013283d52677b7b6b5c4c3d2e1f0f0000000000000000000000000000000000000001132535455463707b84898b898070604e3b281400000000000000000000071c31465b708484848484847c6a80848687888978644f3a240f000000000000000000000000000000000000000000000000000000000000000000000000000007121b1f1f1a110c0f11110e161b1c19110600000000000000000000000000000000091624313f4d5b69787d6954402b150000000000000001101e2b38444e5760676d71737474726d645a4d3f301f0e000000000000000015293d52667a8fa3b7baa5907b899bada4938371615040301f0f000002162a3e5266798d99867a90a497836e6e7990a5927d84998f78634e38230e00091d32465b6f84989faebba99c999995806b56413d362e271f170e0300000000021424333e53687d94a9b9a59695a4a996836f5c49362310000000000000000000000001101d262c2c271d10071621292c2a23180a00000000000000000000010d161b1d1d1d1d1d1e1f1f1b120700000000000000000b20354b5f747d7d80828384848687888989826d58442f1900001e33485c70868b888683827d6b5665798f8b8885828075604b36210c00001e33475c70858d8a8886837a66513c271200000000000000182b3e4e595c5e5f61636466686a6c6e6f727373624e39240f00000000000000000000000000000f24394e62736d5d4d3e2e1f100100000000000000000000000000000000000000000717273645525e686f7374736d615243311e0b0000000000000000000000192d4256676e6e6e6e6e6e6d626d6f7071727373624e39240f000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000613212f3d4b5a687468543f2a150000000000000000000d1a26313b444c53585c5e5f5f5d5851473c2f21120100000000000000001a2f43586c8295a6afb5a08b767d90a2b1a090806e5e4e3d2c190500000f23364a5d7084968f7d8ba09c8884848794a7978384998f78634e38230e0003182c4055697d93a0a2aeb9b0a89f99846f5a54524a423a332b2113040000000006152a3f546a8094a9b5a08b889caf9f8c7865523f2c1906000000000000000000000e1f2e3a41413a2e1f1625333e423f362818060000000000000000000000000000000000000000000000000000000000000000081c3144576468696a6b6c6e6f6f70727374746b58432e190000192d42566a80949d9b989686705c62778da09d99978d77624c37220d0000192d41566b80949f9c9a947d6955402b16010000000000000f20303d4447484a4c4e4f51535557585a5c5e5e5545331f0b00000000000000000000000000000b1f3345555e5c4f3f2f2010010000000000000000000000000000000000000000000009182734414c545a5e5f5f59504334251402000000000000000000000013263949555858585858585852585a5b5c5d5f5e5545331f0b000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000003111f2d3c4a585f594a3925110000000000000000000009141e2831383e4347494a4a48443d352b1e11030000000000000000001d32475c72838b939ba39a8671728596a8a39d8d7c6c5b4834200b0000071b2e415466798b9b8987989c9a99999ba29e9480879c8d77624c37220d000012263b4f64788c8b8fa2b5b09b8a8988735e69665e564e463e3122110000000000162b40566b8095abb5a08b8094a8a895826f5c493623100000000000000000000b1b2c3d4c55564c3d2b23334351575346362310000000000000000710151615130e0a08030000000000000000000000000000000115283947505354555657585a5a5b5c5e5f5f5b4e3c2915000013273c5064788da2b0ad9f8b76625f748ba0b2afa38d77624d38230e000013283c51657a8fa4b2ac97836d59442f1a0500000000000002121f2a2f31333537383a3c3e4042434547494943372716030000000000000000000000000000031627374349483e312111020000000000000000000000000000000000000000000000000917232f384046494a4a453d32251607000000000000000000000000091b2b3841434343434343433f43444647484a494337271603000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000010f1e2c3b454a463b2d1b090000000000000000000000020b151d242a2e32343434332f2921180d01000000000000000000001a2f4356666f7780878f96826c67788a938f8b878377624c37220d0000001124374a5c6e8090978f8487898c8d8d8d8983778c9e89745f4a35200b00000c21364a5e7176758699acb09c8a78736f667b79726a625a4f402e1b0700000000172c42576c8297acb5a08b788da0b29f8c7865523f2b180500000000000000081829394a5a696a5b4834304151616c64533f2a160100000000000c19242a2b2b27231f1d170e0200000000000000000000000000000a1b2a353b3e3f4040424344454647484a4a473e301f0d00000d21364a5e72879cb0b9a5907c675e73889db3b9a48f78634e38230e00000e23374c61758b9fb4b19c87715d48331e0900000000000000010d161a1c1e2022232527292b2c2e303234343026190a000000000000000000000000000000000a19263034332c211303000000000000000000000000000000000000000000000000000006121c252c31343434312a21150700000000000000000000000000000d1b252c2e2e2e2e2e2e2e2b2e2f30323334343026190a0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000e1d293134322a1d0f0000000000000000000000000000010910151a1d1f1f1f1e1a150e0500000000000000000000000014273848535b636b737b847c675b6d7d7d7975716d685a48341f0b000000071a2c3e506172839397897d7476777777746f809398846f5b46311c080000071b2f42536061697c8fa2b4a79686776b6c808d867d766d5d4a35200b00000000192e43586e8398adb6a18c768699ada895826f5b4835220f000000000000051526364757687877624d393e4e5f6f806d59442f1a0600000000091a2a373f40403c3734322b20120100000000000000000000000000000c182126292a2b2b2c2e2f303132333434332b2012010000071b2f44586c8295aabeab96826d5e70879cb1b9a48f79644f3a250f0000091e33475c70869aafb4a08b76604c37220d000000000000000000000004090b0c0e1012141617191b1d1f1f1b140900000000000000000000000000000000000009141b1f1e190f0300000000000000000000000000000000000000000000000000000000000911181c1f1f1f1c160e03000000000000000000000000000000000912171919191919191916191a1b1d1e1f1f1b140900000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000c161d1f1d170c0000000000000000000000000000000000000000000000000000000000000000000000000000000000091b2a373f47505760687073624f606b6965605c58544b3d2b1805000000000f21334454647484929a90867d797674757d8d9e907c6855402c1803000000122535434b4c5f728597a9b4a49688807c8a9c99928a77624c37220d000000001a2f445a6f859aafb7a18c767d92a6b29e8b7764513e2b1805000000000212233344546475867c67523e4b5c6c7d87725d49341f0a0000000013263848535654514c49463d301f0d000000000000000000000000000000050d111314161617191a1b1c1d1e1f1f1e180f020000000015293e52667a8fa4b8b09c887373738499afbba59079644f3a2510000004192e42576c8296abb8a38f7965503b26110000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000c19242c343c444c545c5e5545505654504c47433f382d1f0e00000000000415263747566573828e999a938e8b8a8b909c958572604d392511000000000717253036425567798c9eafb3a69b939299a8ada08b75604b36210b000000011c31465b70879bb0b7a18c76768b9fb3a895826e5b4835220f000000000f1f30415161728393826c57485969798a8c76624d38230e00000000192e4256666b6a66615e5a4e3d2a160100000000000000000000000000000000000000000000000000000000000000000000000000000f23384c6075899db2b6a28f8989898a9bb0bca7917b66503b261100000014293e53687c91a6bba7937d68543f2a15000000000000000002090d0e0c08050200000000000000000000000000000000000000000004080907040100000000040a0d0b080401000000000000000000000000000000020a10141617171714110c060000000000000000000000020e161b1b19171513110f0d0800000000000000000000000000000005111a1f1f1b15110d0a0806050505050200000000000000050d11120f0d0a0705020000000000000000000000000000000000010d1519191613100c090602000000000000000000000000000000040d1315120e0801000000000000000000000000000000000000040b111517191816130f090100000000000000000000000000000000000000000000000000000710182028303840484943373c403f3b37332e2a251c0f0100000000000008192938475563707b868f969b9f9f9f9b928677675543301d0a000000000008141c25384a5c6e8091a2b3b8aea8a7acb7b19c88725d48331e09000000071e33485d72889db2b7a18c766f8497acb19e8b7764513e2b180500000b1c2d3d4e5f6f80909a86705b5566768798907b66513c2813000000001b30465b7082807a76736c59442f1b060000000000000000030f171c1c1914100d0a0806050302020202020000000000000000000000091d31465a6e8397acbeada19f9f9f9fa8b8bca7917b66513c27120000001025394e63778da2b6ab97826c57422e190400000000000009151e2323211d1a1714110e0a0704000000000000000000000000000410191d1e1c191614110f0c171f22201d191613100d09010000000000000000010c161e24292c2c2c2c2925211a130b02000000000000000313202a30302e2c2a282624221c13060000000000000000000000000515232e34342f2a2622201e1c1a1a1a1a160f04000000000c1821262724221f1c1a17140d040000000000000000000000000002121f292e2f2b2825211e1b171209000000000000000000000000081621282a27231c150d030000000000000000000000000000030e171f252a2c2e2e2c28231d150c020000000000000000000000000000000000000000000000000000040c141c252d33343026282b2a26221e1a1511090000000000000000000b1a293845525e69727a8287898b8a8680756759493826140100000000000001081b2d3f5162738595a5b3c1bdbcc0c1ac98836e5945301b060000000a1f344a5f73899fb4b7a18c76687c91a5b9a895826e5b4834210e000718293a4a5b6c7c8e9e9e89745f63738495a594806a55412c1702000000192d42576b80948f8b88725d48331e09000000000000000413212b31312d2925221f1d1b1a191717171717130c01000000000000000002172b4054687c91a6babcab9f9d9f9fa5b2bda8937c67523c27120000000b20354a5e73889db2af9a86705b46311c08000000000008182631383836322f2c292623201c19140b000000000000000000000514222c3233312e2c292724212a333735322e2b2825221d140800000000000004121e2932393e404242413e3a352e271e150b0000000000000f21313d454543413f3d3b3a37302415050000000000000000000000112333414949443f3b373433312f2f2f2f2b22150600000a1b2a353b3c393734322f2c292115070000000000000000000000000f20303c4344403d3a3633302c261b0e00000000000000000000051626333c3f3c37312920150a0000000000000000000000000915202a333a3f424343403d3831281f1509000000000000000000000000000000000000000000000000000000010911191e1f1b14131615110d0904000000000000000000000000000b1a2834414c565f676d71737474716b62574a3b2b1a09000000000000000000102233455666768795a3b0bcc5cab9a5927d6954402b17020000000c21364b60768ba0abb2a18c7661758a9eb2b19e8b7764513e2b1700122436475868798a9baba28d7863708291a2ad99846f5a45301b0700000014283d52667b90a4a08b76614c37220d000000000000001022323e4647423e3a373432302f2e2c2c2c2c2c281f120300000000000000001125394e62768b9fb4b5a08d88898a95a8bda8937d68533e2913000000071c31455a6f8499aeb39e89745f4a35200c0000000000132536444c4e4b4744413e3b3834312e271d0f0000000000000000001122323f47484643403e3c39353b474c4a4743403d3a373126180800000000031322303b454d5256575756534f49423a31281d120500000000192c3e4f595a58565452504f4b4233221000000000000000000000001a2e41515d5e5853504c4a4846444444443e33241301001528394750514e4c494744423d332515030000000000000000000000182b3e4e585855524f4b484541392c1c0a0000000000000000000f2234445054514b453c32271b0e00000000000000000000081827333d464e5357585856524c443b32271b0e010000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000a17232f39434b53585c5e5f5f5c574f45392c1d0d00000000000000000000041627384858687786939fa9b1b4ad9c8976624e3a2611000000000d22374c6277888f979fa18c76606f8397a5a09b94826d5a46311c001a2e415364758797a8b8a6927c6c7d8e9fafb29d88735e4a35200b0000000f24384d62768ba0a38f7964503b261100000000000000192d3f505b5c57534f4c4a4746444342424242413b30211000000000000000000b1f33485c70859aaeb5a18c77737b90a5bba9947d68533e291400000000172c41566b8095aab7a28d78634e39240f00000000001b2f43546163605c595653504d4a46423a2d1d0c0000000000000000192d40515c5e5b585653514e494959615f5c5855524f4c4436261401000000102131404d5961676b6c6c6b68645d564e443a2f2316090000001e33485c6d6f6d6b6a6766645f513f2b1703000000000000000000001f34495d70726d6864615f5d5b5a5a5a595142301d09001c314457646663615e5c5957504333200d00000000000000000000001e33475b6b6d6a6764605d5a554a3a2714000000000000000000152a3e51626a6560584f45392c1e0f00000000000000000013253644505a62686c6e6d6b6660584e44392c1f1103000000000000000000000a121717130b0100050f1517150f06000000000000000000000000000000000000000000000000000000000006121d2730383e4347494a4a47433c33281b0e000000000000000000000000091a2a3a4a596775828d969ca09c8f7d6c5946331f0b000000000b2035495d6c747b838b928c7660687c91908b87827c725d48331e001f34495d718293a4b5c0ab9682798a9bacbdb6a28d77634e3925100000000a1f33485d72879ca7927d68533e2914000000000000001e33485c6e706b6864615f5c5b5a5857575757564e3f2e1b070000000000000004192d41566a8093a8bba6917c68788fa4b9ab95806a543f2a150000000013283d52667b90a5baa6917c67523d281400000000001f34495e727774726e6b6865625f5b574b3b281501000000000000001e33485d6f73706d6b6866635c51657674706d6a6764605443301c080000081b2d3f4f5e6b757c808383827d78726a61574c413427190a00001f344a5f74868382807c7b786f5b46331e0a000000000000000000001f34495e7387827d79767472706f6f6f6e604c38230e001f344a5f747b787673706e6c61503c281400000000000000000000001f344a5f7483807c7875726f6857432f1a050000000000000000182d42576c807a746c61564a3c2d1e0e00000000000000001b2f4354626d767c828483807a746b61564a3d2f2112020000000000000000101d262c2c271e130916222a2c2a23190e0300000000000000000000000000000000000000000000000000000000000a141c242a2e32343434322e2820160a00000000000000000000000000000c1c2c3b4957636f7982888b887d70604f3d2a170300000000061a2d3f4e5860676f777d8676606175807b76716d686355432f1b001f34495e73889db1c2b2a291827c91a6b9bbaa9a8a7965503b2611000000051a2f44586d8397ab96826c57422d18040000000000001f344a5f7386827c79767472706f6e6c6c6c6c6b5d4a36210c000000000000000013273b5064788da2b6ab96826d778da2b7ab95806b56402b16010000000f24394d62778ca1b6aa95806b56412c1803000000001f34495e73898a8784827c79777370695844301b07000000000000001f34495e72878683807d7b786955667a898683807c79725f4a35200b00001125384b5d6d7c889195989896928d867d746a5e524537281604001c3145586d8295979493908a76624e3a2612000000000000000000001c31465b708697928f8c89888786868678644f3a240f001e33485d71868e8c898784806b57422e1a05000000000000000000001d32465b708694918e8b8884725c47321d0800000000000000001a2f44596e848f888074685a4b3c2c1b0a000000000000001f34495e72808a92979998958f887d73685b4d3f302010000000000000000d1e2e3a41413a30261b26343e423e362b21160b000000000000000000000000000000000000000000000000000000000000080f151a1d1f1f1f1d1a140d03000000000000000000000000000000000e1d2b3946525d666d7274736c60524232200d0000000000001021303c454c545b636a72705e59686b66615d58534f45372613001b30455a6f8499aeb6a5948473788ea3b8ae9d8d7c6b5b4a36220e00000000162a3f54687d92a79a86705b46311c070000000000001c31465b708696928f8c89888684848383838378634e38230e00000000000000000d21364a5e72889cb0b09b8772758ba0b5ac97826b57412c17020000000b2034495e73889db2ae99846f5a45311c07000000001d32475c72889c9c9996938f8c8986735e4935200b000000000000001b2f43586c829598959390846f5b63788d9b9794928d77624c37220d0000182c4054677a8c9aa5aaadadaba7a19a91877c7063554533200c0015293d5165798da2a9a8a5917d6955412d1905000000000000000000192e43586d8398a7a4a19f9d9c9b9b8b76604c37210c001a2e43586c8296a19e9b9986715d48341f0b00000000000000000000192d42576c8296a6a3a09c8a745f4a35200b00000000000000001b30465b70869b9c928678695a4a392715020000000000001f34495d72889ca6acaeadaaa39b9186796b5d4e3e2e1d0d000000000000172a3c4c55564d43382d3344515752483d33281d1105000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000d1b2835404a52595d5f5e594f433425140200000000000003121f29313840474f565e5d524b5556514d48433f3a3328190800172c41566b8296aba998887666758b9fb2a190806e5e4e3d2c1a070000000011263a4f64788ea29e89745f4a35200b000000000000192e42576c8296a7a3a19f9c9b99989898988d78634e38230e0000000000000000071b2f44586d8296aab5a18c7773899eb3ad98836c57422d1803000000071c31455a6f8499aeb29d88735e4934200b000000001b30465b70869bb0aeaba7a4a19e8d77634e3925100000000000000014293d52667a8fa3aba89e89756060758ba0aca9a38d77624c38230d00001c31465b708498a9b8b8aaa2a1a5adada4998e8273634f3a2510000e22364a5e72869aaebdac9885705c4834200c000000000000000000162b40556a8095aab9b6b1aaa9ab9d88725d48331e0900152a3e53687c92a6b3b0a08c77624e3925100000000000000000000014293e53687c92a6b8b5a28d77624d38230e00000000000000001d32475c72889caea3978878685644321f0c0000000000001b3045596e8498adbdac9f9fa9aea3978a7b6c5c4c3b2a190700000000001d32465a696a60554a3f3c50626c655a50453a2e22170b00000000000000000009111516151513131312121111100f0f0e0d090100000000000000000000000000000000000000000000000000000000000a17222d373e44484a49453d322516070000000000000000020d151d242c333b434949413940413d38332f2a2520160a000014293e53687c92a79b8b7a695d72879ca4948372615040301f0f00000000000c21364b5f74899ea28d77634e39240f00000000000015293e53687c92a6b3b6b4b2b0adacadada48f79644f3a250f00000000000000000015293e52667b8fa4b8a6917c72879cb1af99846e58432e190400000000182c41566b8095aab6a18c77624d39240f00000000192e43586e8499aec3bfbcb9b6a6927c68533f2a15000000000000000e23374b6074899db1b8a48f7a665e73899eb3b9a48f78634e38230e00001f34495e73899eb3bdaa9a8e8c919aa5b0ab9f8d7965503b261000071b2f43576a8093a7bbb49f8b77634f3b271300000000000000000013283d52677c91a7bbb4a29594959586705b46301b06001025394e63778da2b6baa6917c68533e2a150000000000000000000010253a4e63788da2b7baa5907965503b261100000000000000001f34495e73899ea8b2a6978674614e3b2814000000000000172c40556a8094a9b6a18e8c98a6b5a7998b7a6a594836251301000000001f344a5f747c72675c5145546a80776d62574c4034291d11040000000000000f1b252a2b2a2a2929282727262625252423221d1408000000000000000000000000000000000000000000000000000000000005101a232a30333434302920140700000000000000000000000109111820272f34342e262c2c28231f1a15110c0400000010253b5064798f9e8e7d6d5c5a6f849996867565544433271b0e0000000000081d31465b70869aa6917c67523d281405000000000010253a4e63788d97a1aebdbaa79997989899907b66503b26110000000000000000000f23384c60758a9eb2ab96826f869bb0af9a866f5a442f1a050000000013283d52677b91a6baa5907b66523d281300000000172c42576c8297acc1c3bebdc0ab97826d58432f1a06000000000000081d31455a6e8397abbea995806b5c71879cb1b9a48f79644f3a240f00001f344a5f748a9fb4b6a18d7b767d88929eab9885705d4a36220d000014283b5063778ca0b4bba7927d6a56422e1a06000000000000000010253a4f64788ea3b8b09b86808080826e59442f1a04000b20354a5e73889db1bfab96826d58432f1a050000000000000000000c21364a5f74899eb3bda8937d68533e291400000000000000001f344a5f74868c95a0aea3917d6b58432f1b07000000000013273c51667b90a5b6a28d7a8897a7b7a8998877665442301e0b000000001d32475b708685796f63575065798a8074695d52463a2f221507000000000c1d2d393f403f3f3e3e3d3c3c3b3b3a3a3a383731261707000000000000000000000000000000000000000000000000000000000000070f161b1e1f1f1b160d02000000000000000000000000000000040c131b1f1f1a121617130f0a05000000000000000d22374c61768c9a85776b60566b82968f7d71665a4f44382c1e0d000000000b182d42576c8296aa95806b56412c1f180e010000000c21364a5f717b84909fb0b5a08b82838384867c67523c2712000000000000000000091d32465a6f8498acb09b87718499aeb09b86705b46301b06000000000f24394e63778da2b6aa95806b56412c1702000000162b40556a8095aabfb0a8a8aeb09b87725d48341f0a00000000000002162b3f53687c91a5b9af9a86716e6f869aafbba59079644f3a250f00001e33485e73889db2b5a08b77656a75828d9a907c6855412e1a0700000c2034485c708598acc0ae9a86715d4935210d00000000000000000d21374c60768ba0b5b29d88736a6a6b6453402b170200071b3045596e8398adc1b09b87715d48331f0a000000000000000000071c31465b70859aaec0ab96826b57412c1702000000000000001e32475a6a7178828fa0ae9b87725e4a35200b00000000000e23384d62778ca1b5a6927c788999abb6a69583715f4d3a281502000000192d42566b80958c8275695d60748a92877b6f64584c4033251607000000172a3b4a54565454535352525250504f4f4f4e4c4335241200000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000a2034495e73899e95897d7267687d939c8f83776d61564a3c2b18050000091a28343e53687c92a799846f5a4538342b1f0f000000071c2f42535f67728292a3b5a59686746d6e6f6f624f3a261100000000000000000003172c4054687d92a6b5a08c778297acb19c87705c47321c07000000000b20354a5f73899eb2ae99846f5a45301b0700000014293e53687d93a8b4a194939eafa08c77624d39240f000000000000001025394d62768b9fb3b5a08c848484869aafbba6917b66503b261100001c31455a6f8498acbaa694847365636f7c898873604c39251200000005192d4155697d91a5b9b5a18d7864503c28140000000000000000091e33485d72879cb1b6a18c766154565246362410000000172b4055697d93a8bdb5a08b76614d39261300000000000000000001182d42576b8296abbfae99846f5a45301b0600000000000000182b3d4d575d65718295a8a28d77624d38240f05000000000a1f34495d72889cb1ab96826c7b8d9fb1b3a18f7c6a5744311e0b00000014283d52667b909e92877b6f63708599998d82756a5d50433425140100001d324659686b6a6a68686767676666646464636053412e1a0600000000000410191d1d19120a0300000000000000000000000000000000000003070906060b0b08010000000000000000000000020e161b1b1b1a19191919191a1a1b1b1b18110600000000071c31465b70869ba69b8f85796d798fa4a1958a8073675a4734200b0000142738464f5064788ea29d88735e4e4c483d2d1c09000000132535424c5463748698abb3a3927d6b585a5a5244321f0c0000000000000000000011253a4e63778ca0b4a5917c8094a9b39d88725c47321d0800000000071c31465b70859aaeb29d88735e4934200b00000012273c51667b91a7b09b868095aaa5917c67523e2914000000000000000a1e33475b708599adbba99c9999999aa4b5bca7917b66513c27110000172c4054687c8fa2b4b2a2928475675e6b78806b5744301d090000000012263a4e62758a9eb2bca894806b57432f1b0700000000000000051a2f44596e8498adb9a48f796550403e3528180700000012263b50657990a5bbb9a5907c6855422f1c0800000000000000000014293e53687c92a6bbb19c88725d48331e09000000000000000e1f2f3b43495364788ea2a5907b66513d2921170a000000061b2f44596e8398adaf9a86706f8293a6b8ac9a8774614e3a27130000000f24384d61768ba0a4998d82746b8095aa9f93887b6e615243311d0900001f344a5f748080807d7d7c7c7b7b7b79797878715d49341f0a000000000514222c32322d261e1710080100000000000000000000000000060f171c1e1b1b20201c150d0500000000000000000313202a3030302f2e2e2e2e2e2f2f3030302c23170800000000192e43586d8398adaca2968b80778ca1b3a79c918577634e39241000001c30445663666674899ea18c776463625a4b39251200000007172530384556687a8ea1b4ae9b88735f4b443f35261605000000000000000000000b1f34485d71869aaeab96827d93a8b49f89735e48331e090000000001182d42576c8296abb6a18c77624d39240f00000010253a4f647990a5b39d887b90a5aa96826c57432e1a0500000000000004182d41556a7d93a7bcb9afa4a3a4a4a9b6bda8937c67523c271200001125394c5f728596a6b6b0a2938576675b6870634f3b281501000000000a1e32465a6e8397abbfaf9b87725f4b36220f0000000000000000172c41566b8095aabda8937d69543f2a23180a0000000010253a4f647990a5bbbfac9885725f4b38251200000000000000000010253a4e63788da2b7b4a08b75604b36210d0000000000000001111e282e364b60758b9fa995806c58453c34281908000000162b4055697d94a8b39e89746476899baeb6a4917d6a56432f1b0700000a1f33485d71879bb0aa9f9285777b90a5b1a5998d8070604d38230e00001e33485d728795959494939391919190908f8c76614c37220d000000001122323f4747413a322b241c150e0600000000000000000009111a222b31332f2e35353028211911090100000000000f21313d45464544434343434344444646464035261502000000162b40556a8095a5b2b4a89b8674899eabb8aea3917c67523e291400001f344a5f737b7b7b869ba5907b7878776855412d180400000007131c2e3e4b5e718598acb7a38f7965504f4d433423100000000000000000000005192e42566b8094a8b09c877c91a7b5a08b745f4a341f0a000000000014293e53687c92a7baa5907b66523d28130000000e23384e63788da3b5a08b778ca1af9b86715d48331f0a0000000000000012263b4f64788da1b5b6a2918d8f8f98aabda8937c68533e281300000a1d30435567788998a6b3b1a395867667575b534533200c000000000003172b3f53677b8fa3b7b6a28e7965523e2a16010000000000000013283d52677b91a6bbac97836d58432e1a06000000000011263b50667b91a7bbc8b5a28f7a6754412e1b0800000000000000000c21364a5f74899eb3b8a38e78644f3a25100000000000000000000b141e33485d71879baf9b88746356504637251200000417293c51657a8fa4b6a28d77636b7d92a5b8ad9a86725e4a36220e0000051a2f43586d8297acbab0a39684778ca1b3b7aa9d8f7a66503b261100001a2f44596e8498aaa9a9a8a8a7a7a7a5a5a38f79644f3a251000000000192d40515c5c554e463f383029221a120a010000000007131c252d363e464843414a4a443c342d251d140700000000192c3e4f595b5a5a58585858585a5a5b5b5b5344321f0b00000013283d5267798794a1adb49f8a75808d9aa6b3aa96826c57422e1904001e33485c7186919192a0aa98908f8f85705b47331e0a000000001024384b5c64687c90a4b9a8937d6964646052402c18030000000000000000000013283c5065798ea2b6a18d7b90a5b6a18c76604b36210c000000000010253a4f64788ea3b8aa95806b56412c170200000d22374c61768ca1b6a28d77889cb1a08b76624d38240f000000000000000c2135495d72879bafb4a08b77787b91a6bba9947d68533e2913000000132637495a6a798895a2afb3a4958675645341362716040000000000001024384c6074889cb0bda995826d5945311d09000000000000000f24394e63788da2b7b09b87715c48331e09000000000011263b50667b91a7bcd1beab9885715e4a3724110000000000000000081d32465b70869aafbba6917c67523d281300000000000000000000041a2e43586c8295a8a49282736a6454412d1904000a1f33465762768ca1b5a6917c676475899cb0b5a28e7965513d2914000000152a3f53687c8f9daab7b29c88728895a2b0bba8937d68533f29140000172c41556a8095aabfbaa99d9c9c9c9d9fa0927c67523d2813000000001e33485d6f7069615a534c443d362e261e1306000006162530384149515a5d55515e5f5850484039312516060000001e33485c6d706f6f6e6e6e6e6e6f6f707070614e3a25100000000f24374a5b697683909ca7a48f796f7c8995a1ad9a86705c47321e0900192e42576c8296a7a7afb6a9a5a49f8b76624d3924100000000013283d53687979798a9eb3ab96827878796f5a45301b06000000000000000000000d22364a5f73889cb1a8979198a9b7a28d77624c37220d00000000000c21364b60758a9fb4ae99846f5a45301b0700000b20354a5f748b9fb4a48f798398ada5907b67523e291400000000000000061a2f43576c8295a9b9a5907b66798fa4b9aa95806a543f2a15000000081a2b3c4c5b6a7785919fadb3a39382705f4c3a271300000000000000091d3145586d8295a9bdb09c8874604c382410000000000000000c21364b5f748a9fb3b4a08b76614c37230e000000000012273c52677c92a7bcd1c7b4a18e7a6754412e1a070000000000000002192e42576c8297abbfaa95806a55402b16010000000000000000000014293d5165798c9dab9f918680705b46311c07000e23384d627578889db3aa958079796d8295a9bca995806c57432e1a05000011253a4e61707d8c99a6b3a08b757785929facab96826b57412c17020013283d52677b90a3b3b39e8b87878788898b8b806b56402c16010000001f344a5f74857c756e6760585149423a3124150400122434424c545d656d72635c6f736b645c544d433423110000001f344a5f748786868484848484858686877c68533e2914000000081b2d3d4b5865727d8a96a294806a6b7783909b9f8a75604c37220d0014293e52677b90a3a3a6b0b8aca8a5917c67523e29140000000013283d52667b908f91a1b5ae9b8e8f8f88725d48331e0900000000000000000000071c3044596d8296abafaaa7aab6b9a48f78634e39240f0000000000091e32475c71879babae9d88735e49341f0b0000091e33485e73889db3a5907b8094a8aa96826c57432e1a050000000000000014293d51667a8fa3b7aa95806b778da3b8ab95806a55402b16010000000e1e2e3d4c596773828f9dacb1a08f7c6956432f1b080000000000000115293d5165798da2b5b7a38f7b67533f2b1703000000000000081d32475c70869bb0b9a48f7965503b2712000000000013283d52677c93a8bdc5bebdaa9784705d4a3724110000000000000000152a3f54687d93a8bdad98836d58442f1a05000000000000000000000e2236495c6e808e98a8a39a88735e49341f0a000d22374c61758a91a1b5af9b8f90836d798da2b6af9b86715d48331f0a00000b1f324453606e7b8895a2a38d786673828e9ba899846f5a45301b05000f24384d60738595a4b2a090867c7272737476776a56412c17020000001f344a5f748b918a837b736c655d554d4233210e001a2e41525f67707982806d617588807770686052402d190400001c31455a6e83979b99999999999a9b9b96826c57422d18040000000f1f2d3b4854606c78849099846f5a66727d8a958f7965503c2712000f24384d62768b8d8f92a1ab9a939494826c57422d18000000000f24384d62768ca0a5afbeb8aaa3a49f8b745f4b35200b0000000000000000000000162a3e53687c91989a9c9ea0a2a5a5907965503b26100000000000041a2f44586d839296999c8c77624d38240f0000041c32475c71879cb1a8937c7a8fa4af9b86715d48331f0a000000000000000e23374b6074899db1af9a8670768ca0b5ac97826b56412c170100000000101f2e3c495663707d8e9dacac9986725f4b37230e000000000000000e22364a5e72869aaebfaa97836e5a46321e0a00000000000003192e43586d8397acbda8937d6955402b17020000000013293e53687d94a9beb3aaa9b3a08d796653402d1a070000000000000011263b5065798fa4b9b09b87715c47321d0800000000000000000000061a2d3f5061707c8da3b5a08b76604c37210c00091e32465a6f8397acbbb9aba49c877272879cb0b5a08b76614c38230e00000215263542505d6a778591a0907b6663707d8a989c87725c47321d0800091d31445667768694a1aea3998f857a706560625c4d3b2713000000001f344a5f748ba09e968f888079716960513e2a15001f34495d707b848c958a77657a8f938c847c705c47311c070000162b4054687d92a6afafafafafafb0af9a86705b46311c07000000010f1d2a36434f5a66727d8989745f54606c77838d806a55412c18000a1f33485c6f767778869ba7917c7d7d7d6d58432e19000000000a1f34485d72879baeb5c2bfb3adada28d77624d38230e00000000000000000000001024394d627682838687898b8d9093917c67523c27120000000006141e2b405569797c8284888b7b66513e2c190500001b30455a6f869bb0a9947d768ba0b5a08b76624d38240f00000000000000081c31455a6e8397acb49f8b7674899fb4ad98836c57422c17020000000001101e2b384552606f7d8f9fb1a28e7a66523d2814000000000000030e1b2f43576a8093a7bbb19e8a75614d39251100000000000000152a3f54697d93a8bdad98836e5945301b0600000000152a3f546a8095aab9a59695a4a996836f5c49362310000000000000000d22374c61768ba0b5b49f8a745f4b36210c0000000000000000000000182d4155697c8f99a9aba28e78634e39240f0003172b4054687c919eabbdae9f9b8c766d8297abb9a48f7965503b2611000000081725323f4c5966738295947d69545f6c79899e8a74604b36210c00011426384958677583909da9aca2988d83776b5f5244362718080000001f344a5f748b9eaeaaa39c958d857d6d58432e18001f34495d708090a0a795836f8094a79f91806d5a45312415040011253a4e63778ca1b5c4c4c4c4c4c5b39e89745f4a35200b00000000000c1925313d4955606b76827964504e5a65707a84705b46311c0005192d40515e60626d8397a994806a686862523f2b1600000000051a2f43586d829799a4b6b2a19898988f7964503b251000000000000000000000000a1f33475a69736e6f717375777a7d827d68533e2913000000041524313a404c5d64686b6f7276786d5c48341f0a0000192e43586e8499aeab968271879bb0a5907b67523e29140000000000000002162b3f53687c91a5b9a4907b72889db2ae99846e58432e19030000000000000d1a2734425160708294a6aa95806b57412d1803000000000413212b303b5063778ca0b4b9a5917c6854402c180400000000000012263b5065798fa4b9b19c88735e4934200b00000000162b40566b8296abb5a08b889cb09f8c7966523f2c1905000000000000091e33485d72889cb1b7a28d78634e39240f00000000000000000000001c31465b708599acaa9a8f897b66513c271200001125394e6276868da2b7a69187877b687d92a7bca7937c68533e2813000000000e1d2c3b4b5a6a798a9997826c5761708290a18d77634e39240f0000091a2b3a49586572808c98a3b0aaa095897c706254453626150400001f34495d70808f9eaeb7b0a8a197826c57422d18001a2e415161718292a29f8d7a8499aa98867361524e4233210e000b2034495d72879bb0b1b1b1b1b1b1b1a28d77634e39240f0000000000000814202b37434e59636d73634f3d48535d68726e5b46311c0000112333414a4b54687d92a798846e5953504434220f0000000000152a3f53687c83869bb0ab96838383847c67523c2712000000000000000000000004182b3e53687d8279726b636365686c6f63503c27120000000e2133424e545a60656a6f74797d8476604b36210c0000182d42576c8398adad98836e8397acaa96826c57432e1a05000000000000001025394e62768b9fb4aa958070869bb0af99846f5a442f1a050000000000000009162432425264778a9b9d99846f5a442f1a05000000001022313e4545485c708598acc0ac98846f5b47331f0b0000000000000d22374c61768ba0b5b6a18c77634e39251000000000172c42576c8397acb5a08b8095a8a996826f5c4835220e000000000000051b30455a6f8499aebba6917b67523d28130b020000000000000000001e33485d72889db29f8c7c747264503b261100000b1f33475b6c74899eb3a8937d7071657990a5baaa95806a543f2a15000000081a2c3b4a5969788998a79a86706170808f9fa5907b66513c27120000000d1c2b3a4755616e7a86929eaab2a69a8e807263544433221000001a2e41526170808f9eadbcbca994806a543f2a15001b2f42536063738494a49885899e9f8d7a68646760503d291500061a2f43586c82969d9c9c9c9c9c9c9c9d917b67523d281300000000000000020e1a25313c46515b5f56463436414b555e5c503e2b1700000515232e353a4f64788d999b88735e4a3b33261705000000000011253a4e606d74899eb3a6927c6c6d6e6f624f3a261100000000000000000000000013293e53687d948e8680777069615a5a534534210d00000014293d5060686f74798084898e938d77624d38230e0000162b40566b8296abaf9a866f7d93a7af9b86715d48331f0a000000000000000a1f33485c70859aaeae9a86708499aeb09b866f5a45301b06000000000000000006142435475b6f8487888b87705b46301b06000000061a2d404f5a5a5755697d91a5b9b39f8b76634e3b2612000000000000091e33485d72879cb1baa6917c67533e291400000000192e43586e8498adb5a08b798da1b29f8c7764513e2b18050000000004121d2c41566b8296abbeaa95806b56412c261e140600000000000000021e33485e73899faf9984705f5d564734210d000004182b3e4e5b70869aafac97826c5c63788fa4b9ab96826b56402b16000000102437495968778897a7b29d88736f808f9eaea994806a55402b16000000112435444d4f505c6874808d99a5b2ac9e90827262513f2d1b080012243443526170808f9eacbaa8937d68533e2913001f34495e717675768697a29292a394827376797c6c58432d18000015293e52677b8888878787878787878888806b56412c1700000000000000000008141f29343e474a443828242e394349483f32210f00000006121b21364a5f748284878978634e392416080000000000000b1e31425164788ea3b5a08c776358595a524432231201000000000000000000000013293e53687d94a29a938c857d756d665a4935210c000000172c42576c7d83898f94999ea3a48f79644f3a25100000152a3f546a8095aab19c8872798ea3b5a08b76624d3924100000000000000004192d41566a7d93a8b49f8a758297acb19c87705b46311c0700000000000000000006182c4054666e707374776e5a45301b060000000a1f34495d6d6f6c6966758a9eb2baa6927d6a55412e19060000000000051a2f44596e8398adbfab96826c57432e19050000001a2f445a6f859aafb6a18c76869aada895826d5a4734210e00000001132330393e53687d93a8bdad99846f5a453f3a31241504000000000005141f33485e73899fad98836c574843382917050000000f203042576c8296abaf9b86705c63788fa4b9ab95806b56402b1600000014293e5367778796a5b5b6a18c777d8e9dadbcad98836d59442f1a000000192d4153616462605e636e7a8894a2b0aea090806f5d4a372410000616253443526170808e9caba8937c67523c2712001f34495e73888b898895a9a5a6a38f86898c8f846e59442f1a00000f24384d60717372707070707070707273746955412c1700000000000000000000020c17212b333430271a111c262f34332d2213030000000000071c314457676c6e707373624e39240f000000000000000214283d52677c91a6b29c88725d48474f534d41301e0a000000000000000000000013293e53687d94a6aea7a09991898278644f3a240f000000162b40556a7d949ea3a9aeb2a999897865503b2610000013293e53687d94a9b49f8974758a9fb3a5917c68533e2a15010000000000000013273b5064788da2b6a48f7a8095aab39d88725c47321d0800000000000000000010223242505a62666766625e503f30200f0000000b21364b607686827d7b788397abc0ad9985715d4935210c000000000000162b4055697d94a8bdaf9b86715c47331e090000001b30465b70869bb0b7a18c767d92a6b19e8a7763503d2a170400000b1e30414d5356657990a5bab29d88735e58544e4233210e00000000021423313b4a5f74899fad98836c57422f261a0b0000000002152a3f53687d93a7b49f8a7560677c91a6bba9947d69543f2a1500000014293f53687c92a5b4beae9d8c79879cacbbb7a69584705b46301b0000001d32475c7078777573727069768492a3b5ae9e8c7a67533f2b17000007162534435261707d8d9ba8937c67523c2712001c31465b70869b9f9da3b2babaac9e9b9ea19b866f5a45301b0000091d3143535d5e5c5b5b5b5b5b5b5b5c5e5f5a4c3a2612000000000000000000000000050f181e1f1c14090009131b1f1e19100400000000000001152839495357595c5e5e5545331f0b0000000000000000142a3f54687d94a9b19c88725d565b62685f4d3a2511000000000000000000000013283d5267788897a5b4b4aca59d8d77624d38230e00000012273c51667a90a5b8bdb9aa9a8b7a6a5b4936220d000012273c52677c93a8b6a18c7670869aafab96826d58442f1b07000000000000000d21354a5e72879bb0a995807d94a8b39e89735e48331e090000000000000000071a2d4051606d767b7c7a746a5d4e3e2c1a070000091e33485d72879794908d8b98acc1b4a08c7864503c281400000000000012273c51657a8fa4b9b49f8b76614c38230e0000021d32475c72879cb1b7a18c76778b9fb3a793806d5a4734210e000012263b4e5f686b6b778da2b7b6a18c77706d6960503d2914000000000c1f31424e5564788da2ae99846e58432e190900000000000011263b5065798fa4b8a38f79646f8396abbba6917c67523d281300000011253a4f64788ea2b7b1a190806d8397acbbaa9988776654412d190000001e33485e73898d8b8988846e66748599adbbaa97836e5a45311c000000071625344251606e7c8c9a917b66503b2611001a2f44596e8499a4a2a0a6b5c0bbb2a6a3a69c87705b46311c000001142635414848474646464646464647484a463c2e1d0a0000000000000000000000000000000000000000000000000000000000000000000000000b1c2b373f424447494943372716030000000000000000152a3f546a8095abb5a08c796d6b6f767d6854402b1702000000000000000000000f24374a5a69788796a5b3c0b5a08b75604b36210c0000000e23384d61768ca0b5baab9b8c7c6c5c4d3d2c1a06000011273c51667b91a7b8a38e786c8296abb09c88725e4a35210c00000000000000071b2f43586c8295aaaf9a867c92a7b49f8a745f4a341f0a00000000000000000e22364a5d6f7d8a909390887b6c5b4936230f0000041a2f44596e8498a9a5a2a0a7b6c8bba793806b57432f1b0700000000000e23384c61768ba0b5b9a48f7a65513c27130000081e33485e73889db3b7a18c76708498acb09d8a7663503d2a170400152a3f54697c8282828ba0b5baa5928886837d6c57422e190400000012273b4e6069718294a7ad98836c57422d18030000000000000d22374c61768ba0b5a8937d717d8d9fb2b6a28d78634e3a25100000000c21364a5f74899eb3a4948371697d93a8ad9d8c7b6a59483725120000001e33485e73889da09e9b8671606c8297acc1b29d88735e48331e000000000716243342505e6d7b8b917b66503b261100172c41576b82918f8d8b97abacaaa7948f919388725c47321d0000000817242e33333231303030303031323334322a1e1000000000000000000000080d1011100d090200000000000000000000000000000000000000000d1a242a2c2f3234343026190a000000000000000000142a3f54697d94a9bba897898282848a836e5a45311c0800000000000000000000081b2c3c4b5a69778795a4b2b49f89735f4a341f0a0000000a1f34495d72889cb2ac9c8d7d6d5e4e3e2f1f0e00000011263b50667a90a5bba5907a687c92a6b6a28d78644f3b2612000000000000000015293e52667a8fa4b4a08b7b90a5b5a08b76604b36210b000000000000000012273c5165798d9da5a7a4998b7966523e2a16000000172c40556a8095aabbb7b5bac4d3c2af9a86725e4a36220e00000000000a1f34495d72889cb1bea994806a55412c1803000a1f344a5f74899fb4b7a18c76697c91a5b9a693806c594633200d00152a3f546a809597979ba8bbc1b0a29d9a9786705c47321d08000000152a3f54697d848f9fb1ab96826b56412c17020000000000000a1f34495d72889db2ac9784868e9cabbcae9b87725e4a35200c000000081c31465b70869aa79786756565798fa4a08f806e5d4c3b2a19080000001c31455a6f8498acb3a18f7d7577889bafc4b39f89735e48331e000000000006152332404f5e6c7b8c79644f3a250f00152a3f54697d7b79778396a99995a290807b7d82735e48331e0000000007121a1e1e1d1c1b1b1b1b1b1c1d1e1f1d170d00000000000000000009131c22262625221d160d0300000000000000000000000000000000000000081015171a1c1f1f1b14090000000000000000000012273c51667a8fa4b7b5a79c9797999d8974604b37220e00000000000000000000000e1e2d3c4b5968778694a3b19e89735e48331e09000000061b30455a6f8499ad9d8e7d6e5f4f40302011010000000f253a4f647990a5baa8937c68788da2b7a7937d6955402c1703000000000000000f23384c6075899eb2a5938c94a7b7a18c77624c37220d000000000000000013293e53687d94a9babcb7a896826d59442f1a00000013283d52677b91a6b6b8b9bbbdbfc1b6a28d7965513d29150100000000061b2f44596e8398adbfad99846f5a46311c08000c21364b60768ba0abb2a18c7662768a9fb3b09c897663503d2a1600152a3f546a8095abacafb8bdbfbfb6b2af9e89745f4b36210c00000013283c5062738596a7b6a3907c68533e291400000000000000061b30455a6f8599aeb3a2989aa0acbab3a3917d6b57432f1b0700000002182d42576c82969a8a78685861768b9f92827161503f2e1e0d00000000172c4054687c8fa1b1ac9d908b8b96a5b7c1ae9a86715c47321d00000000000005142231404e5d6d7c78634e38230e0011263a4d5f6866677a8da0a28e85979e8e7d6d6b685945311c000000000000000000000000000000000000000000000000000000000000000d1a2630373b3b3b37312a2014080000000000000000000000000000000000000000000000000000000000000000000000000000000e23384c6074889aabb9b9b1acacaea38f7965513c28140000000000000000000000000f1e2d3b4a5967768593a19d88725c47321d0700000000172c41566b80959e8f806f60504131221202000000000f24394e63788fa4b9a994806a74899eb2ad98846f5b46311d0900000000000000091d31465a6f8398acb1a5a1a5b2b8a38e78634e38230e000000000000000013283d53687c91a5b7c4c5b19c87705b46301b0000000f24394e63788d9fa1a3a4a7a8aaacada995826c5844301c080000000000162b4055697d94a7aaad9e89745f4a36210c000d22374c6277888f979fa18c76606f8498a4a09b93806c5945301b00142a3f54687d94a8a8a8a8a8a9a9abacaea28e78644f3a25110000000d213345566777899aa7988773604d3924100000000000000000182d42576c8297a9adb0adafb4b3ada3958573614e3b2814000000000014293e53687c928d7b6b5b4a5c718695857463534332221100000000001125394c5f718393a2afada4a0a0a7b4bfb3a392806b57422e1900000000000000041322303f4f5e6e72614c38230d000b1e30414d535f728597aa9a86798c9f9c8c7c6c5c4c3b2916000000000000000000000000000005090b0b0a07010000000000000000000c1c2b38434b5050504c463d322617080000000000000811181d1f1f1f1b161007000000000000000000000000000000000000000000091d3144576a7c8d9ba7aeb3b5b4b2a994806b57422e19000000000000000000000000000f1d2c3b4958667483929d88725c47321d070000000013283d52677b918f80706151423223130400000000000e23384e63788fa4b1ac97826c6f8599adaf9e8975604c38230f0000000000000002172b4054697d929da0a1a3a5a8aaa59079644f3a251000000000000000001025394e62758899a7b0b4ae9a86705b46301b0000000c21364b5f74888a8c8d8f91939597989a9c88735f4b37230f000000000012273c51657a8f9295989a8e78644f3a2611000b2035495d6c747b838b928c7660687c91908b87827c715c47321c0013293e53687d94939393939394949597999b927c68533e2a1500000004162738495a6b7c8d968979695744311d090000000000000000152a3f54687d9094989b9d9fa09e99918576675644321f0c00000000001025394e63778d7d6e5e4d43586c8288776756463525140400000000000a1d304254657484919da6aeb3b5b4b1aba2958674624f3b281400000000000000000412213140505c5e5444311e0900011223304356697c8fa2a793806f8295a79a8a7a6a58442f1a0000000000000000000000000a131a1e21211f1b160e040000000000000518293a49565f65666460594f4335261504000000020f1b252c32343434302b241a1003000000000000000000000000000000000000000215283b4d5e6f7d8a939a9ea0a09d999386715c47321c00000000000000000000000000000e1d2b3a48566473839287715c47321c07000000000f24394e63778d8070615142332314040000000000000d23384c62778d9b9c9d99846e6b809598999b8f7a66523e2915000000000000000011263a4f637787888b8c8f90939598917b66513c271200000000000000000a1e3246596a7a89959c9f9d91806b57422e19000000081d32475b6d72747677797b7d8082838687897a66523d281300000000000e23384c6174797c808386887d6954402b1500061a2d3f4e5860676f777d8676606276807b76716d686254412e190012273c52677c7d7d7c7c7c7c7d808082848688826c57422d1800000000091a2b3c4d5e6f8084786b5b4b3a271401000000000000000012273c5165777b808386888a8b89857d736758493827150200000000000b20354a5e7382706050403e53687c7a6a5949382817070000000000000013253647566573808a93999ea0a09c978f857667564532200c000000000000000000031322323f484943362615020000041d32475c72848f9aa08c7765778a9d998d80705b46301b0000000000000000000003101c262e33363634302a21170b00000000000f223547586772797b79756c61534433210e00000111202d3840474a4a49453f372d211304000000000000000000000000000000000000000b1e2f40515f6c778086898b8b888580776d5a46311c0000000000000000000000000000000d1c2a38475564738386705b46301b06000000000b20354a5f73827161524333241505000000000000000d22374c627786868788888670667b8283858687826d58432e1800000000000000000c2035495d6d71737476787a7c8083877d68533e281300000000000000000316293b4c5c6b77828789898272614f3b281400000002182b3e4f5a5d5f60636466686a6b6e6f71737466523d28130000000000091e3245566265676a6d70737468543f2a1500001021303c444c545b636a72705e5a696b66615d58534e45362512001025394d5f69696867676767686a6b6c6e7072746a57422d1800000000000d1e2f4051627270665a4d3d2d1c0a0000000000000000000e2236485963666a6d7073747473706a6156493a2b1b09000000000000071b3045596d7363534332394e62736d5c4c3b2b1a0a0000000000000000071829384756626d777d85898b8b88837c7266584939271503000000000000000000000414222d33342f251809000000001a2f435767717c889385705c6d8092897b6f6153402c180000000000000000000212212e3942484b4b49453d34281b0d00000000162b3e516476858f918f89807161503e2b1703000e1f2f3e4a545b5f5f5e5a534a3f3223130200000000000000000000000000000000000000122332414e5a636b70737474736f6a645b4f3e2b17000000000000000000000000000000000c1a293746556473836f5a442f1a0500000000071c31465b6e726253433425150600000000000000000b20354a5d6d6f70707273746d5e6a6c6d6f7070736a56422d180000000000000000061a2d404f5a5c5e5f616366686b6e717466523d28130000000000000000000c1e2e3e4d5a646d7274736e63544432200c000000000f21313e46484a4c4e4f51535457585a5c5e5f584836230e000000000002152838454d505255585b5e5f594a392511000003121f29313840474f565e5d524c5556514c48433f3a33271807000a1d30414e5454535252525253545657585b5d5f5a4d3b281400000000000112233344545e5d54493d2f1f0f0000000000000000000006192b3b474e5155585b5e5f5f5e5b554e44382b1c0d0000000000000000162a3d4f5c5e554535253345555e5c4f3e2e1d0d000000000000000000000b1a293845505a636a70737474726e685f55483a2b1b0a0000000000000000000000000410191e1f1b1308000000000014273949545f6a75827d6955637585776b5e51443523110000000000000000000f20303f4b565d60605e595046392b1c0b0000001c31455a6e8294a2a7a49c90806d5a46321e0900182b3d4d5c67707474736e665c504131200e00000000000000000000000000000000000000051423313d4750565b5e5f5f5e5a5650483e31200e00000000000000000000000000000000000b192837465565736b58432e19040000000001172b3e505c5e544435251607000000000000000000071b2e404f595a5b5b5c5e5f5c4f5557585a5b5c5e594c3a27130000000000000000001022313e4547484a4c4e505356585c5f584836230e0000000000000000000010202f3c4851585d5f5e5a514536261503000000000313202b31333437383a3c3e3f41434547484a453a2b19070000000000000a1a2832383b3d404346484a463b2d1b09000000020d151d242c333b434949413a41413d38332e2a251f16090000001223303b3f3f3e3c3c3c3d3e3f40424346484a473d2f1e0b0000000000000516273643494941372b1f110100000000000000000000000d1d2a34393d404446484a4a4946413a31271a0d0000000000000000000e20313e48494337281727374349483e3120100000000000000000000000000b1a27333e474f565b5e5f5f5d59544c43372b1c0d00000000000000000000000000000000000000000000000000000a1b2b37424d58636e73624e586b72665a4d40332617060000000000000000081b2d3e4e5d69717676736d6357493a29170500001f344a5f73899db1bcb8ae9d8a75614c37220d001e32475a6b7984898b8883796e5f4f3d2b1804000000000000000000000000000000000000000513202b343c4246494a4a4846413b342b2113030000000000000000000000000000000000000a19283747565f5b4e3c29150000000000000f21323f4849433626170700000000000000000000001122313d4444464647484a483e40424344464748463c2e1d0b0000000000000000000413212b3032333537393b3e4044474a453a2b19070000000000000000000002111e2b353d44484a49453e34271809000000000000030e171c1e2021232527282a2c2e3032333431281c0d00000000000000000a161e2326282b2e313334322a1d0f0000000000000109111820272f34342e262c2c28231e1a15110b030000000004131e262a2a2927272728292a2b2c2e303334322b1f1100000000000000000918252f34342e241a0e01000000000000000000000000000d182024282b2f3133343434312d261e1409000000000000000000000213212c33343026190a19263034332c211302000000000000000000000000000916212b343b4146494a4a48453f3930261a0d000000000000000000000000000000000000000000000000000000000d1a25303b46515c5e55454d5a5d56493c2f2215080000000000000000001124374a5c6c7a868b8c88807567584735220f00001f344a5f748ba0b5c9c9b9a48f78634e38230e001f344a5f748a979fa09d968c7d6d5a47331f0b0000000000000000000000000000000000000000020e1821282d3134343433312d2721180f0300000000000000000000000000000000000000000a192938444a473e301f0d0000000000000313222d33342f2518090000000000000000000000000413202a2f2f3030323334332c2b2c2e2f303233312a1e100000000000000000000000030e161b1c1e20222426282b2f323431281c0d000000000000000000000000010d1822292f333434312b2217090000000000000000000003080a0c0e1012131517191b1c1e1f1c150b00000000000000000000030a0e101316191c1e1f1d170c00000000000000000000040c131b1f1f1a121717130e0a05000000000000000000010b121515131212121313151617191b1e1f1e180e0100000000000000000008131b1f1f1a110800000000000000000000000000000000050b0f1316191c1e1f1f1f1c18120b02000000000000000000000000030f191e1f1b14090009141b1f1e190f03000000000000000000000000000000040e1820272d3134343433302b251d130800000000000000000000000000000000000000000000000000000000000008131e29343f484943373d464843382b1e110400000000000000000000182c405467798b989a979893867564513e2b1703001e33485d72869aabb5b4ad9e8b76614d38230e001d32475c70869a999aa2a99c8a77634e39240f00000000000000000000000000000000000000000000050d13181c1f1f1f1e1c18130c0500000000000000000000000000000000000000000000000b1a273034332b201201000000000000000410191e1f1b13080000000000000000000000000000030e161a1a1b1b1d1e1f1e191617191a1b1c1e1c160d0000000000000000000000000000000004090b0d0f1114161a1d1f1c150b000000000000000000000000000000050e151a1e1f1f1c170f0500000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000040c13181c1f1f1f1e1b161109000000000000000000000000000000000000000000000000000000000000000000010c17222c333430262a31332f261a0d0000000000000000000000001d32465b6f8497938682838e94826e5a46321d09001a2e43576a7c8e9aa09f9a8f806e5b47331f0a00192d42576c828a848691a1a6917b66503b261100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000009141c1f1e180f0200000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000008101414120f0c0a0806030000000000000000000000010d1519191613100c090602000000000000000000000000000005111a1f1f1b15110d0a0806050505050200000000000000050d11120f0d0a0705020000000000000000000000000000000000000000040b111517191816130f090100000000000000000000000000000000040c10100c05000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000050f191e1f1b14171c1e1b1409000000000000000000000000001f344a5f74899b88756b6f80918a75604b36210c0014273a4d5f6f7c868b8a867d7061513e2b18040014293e53677c776e738397a18d79644f3a2510000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000020e161b1b191614110f0c0a151c1f1e1a1713100e0b06000000000000000009111515120f0d0a08060300000000000000000000000009111515120f0d0a0806030000000000000000000000000001080c0c090604010000000000000000000000000000000000000000000000060d13181b1d1d1b191510090100000000000000000000000e1a24292a2724211f1d1b181005000000000000000002121f292e2f2b2825211e1b17120900000000000000000000000515232e34342f2a2622201e1c1a1a1a1a160f04000000000c1821262724221f1c1a17140d04000000000000000000000000000000030e171f252a2c2e2e2c28231d150c02000000000000000000000000000b1720252521180c0000000000000000000000000000000000000000000000000913191b19120800000000000000000000000000050b0d0b080603000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001f344a5f748b98836c5861768b8e78634e38230e000b1e3041515e6a717474716a60524333210f00001025394e616e685a687c929584715e4a36210d0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000070d11131312100b060000000000000000000000000000000313202a30302e2c292624211e283134332f2c282523201a120600000000000f1b252a2b2724221f1d1b1811060000000000000000000f1b252a2b2724221f1d1b1811060000000000000000000008141c21211f1c1916120e0c0a0805010000000000000000000000000000040f1921282d303232302e2a241d140b0000000000000000000c1d2c373e3f3c39373432302c231607000000000000000f20303c4344403d3a3633302c261b0e00000000000000000000112333414949443f3b373433312f2f2f2f2b22150600000a1b2a353b3c393734322f2c29211507000000000000000000000000000915202a333a3f424343403d3831281f15090000000000000000000000091a28343a3a34291c0d000000000000000000000000000000000000000000000c1a262e302d251a0b00000000000000000000010e181f22201e1b18150f060000000000000000000000000005111a1f1f1f1f1f1f1e1b140a000000000000000000000810141412100e0b09070400000000000000001f34495e73889985716366778c8d77624d38230e0001122332414d575d5f5f5c574e433425150400000a1e314352595654697d8783766654412e1b070000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000a141c222628292725201a130b010000000000000000000000000f21313d454643403e3b39363339444a4844413d3a38342e2416060000000c1d2d393f403c3a373432302c231708000000000000000c1d2d393f403c39373432302c231708000000000000000007172530363634312e2b2623211f1d1a150c0000000000000000000000000916222c353c4246474746433f3931271e12060000000000000016293b495354514e4c4947454034251401000000000000182b3e4e585855524f4b484541392c1c0a0000000000000000001a2e41515d5e5853504c4a4846444444443e33241301001528394750514e4c494744423d332515030000000000000000000000081827333d464e5357585856524c443b32271b0e01000000000000000000142738464f4f473a2b1d0f01000000000000000000000000000000000000000b1a2a38424642372919060000000000000000000f1f2b34373533302d2a23180a00000000000000000000000515232e3434343434343330271b0c00000000000000000e1a24292a272523201f1c1911060000000000001b3045596d82948f807879849486725e4935200b00000514232f3a43484a4a47433b31251607000000021425343f4442546874716e675848372512000000000000000000000000000000000000000000000000000000000000000000000000000000000000000002101c272f363b3e3e3c39352e271e14080000000000000000000000192c3e4f595b585653504e4b4747575f5d5956524f4d4941342412000000172a3b4a5454514f4c4a47464035261503000000000000172a3b4a5454514e4c4a4746403526150200000000000000122535434b4b494643403a383634322f281e1000000000000000000000091827333f4950565b5c5c5b58534c443a2f2316080000000000001d31455867696663605e5c5a5243311d090000000000001e33475b6b6d6a6764605d5a554a3a27140000000000000000001f34495d70726d6864615f5d5b5a5a5a595142301d09001c314457646663615e5c5957504333200d000000000000000000000013253644505a62686c6e6d6b6660584e44392c1f110300000000000000001c304456636458493b2d1f120500000000000000000000000000000000000b1a293848565b554736230f0000000000000000091c2d3d484c4a4845423e352818070000000000000000000011233341494a4a4a4a494844392a19060000000000000c1d2c373e3f3c3a383634312d2316070000000000162a3e5164768794938f8f968c7b6956432f1b0600000005121e272e333434322e281e140700000000000716222b2f394a595f5c5954493a2a1907000000000000000000000000000000000000000000000000000000000000000000000000000000000000000111202d39434b505353524e49433a31261a0d000000000000000000001e33485c6d706d6b6866636059506474726e6b6764625d52422f1b0700001d32465968696664615f5c5b5344321f0c0000000000001d32465968696663615f5c5b5344321f0b000000000000061b2f425360605e5b58554e4e4b4947443b2e1e0c00000000000000000818273644515c646b707272706d6860574d413426170700000000001f344a5f747d7b787673726f604d38240f0000000000001f344a5f7483807c7875726f6857432f1a0500000000000000001f34495e7387827d79767472706f6f6f6e604c38230e001f344a5f747b787673706e6c61503c281400000000000000000000001b2f4354626d767c828483807a746b61564a3d2f211202000000000000001f344a5f737667594b3d302316090000000000000000000000000000000c1b29384756667065523e2a1500000000000000001025384b5a625f5d5a575246362411000000000000000000061a2e41515d5f5f5f5f5e5e564836220e00000000000016293b495354524f4d4b49474034251402000000000f22354758687682888b89847a6d5d4c3a27140000000000000b141a1e1f1f1d1a140b0200000000000000050f171b2d3b464a474440382b1c0c00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000f1f2f3e4b565f65686867635d564d43372b1d0e0000000000000000001f34495e738683807d7b78766854667b8784807c7977705e4a35200b00001f344a5f747d7b7876747270624f3a26110000000000001f344a5f747d7b7876737270614e3925100000000000000a1f34495e717673706d696363605e5c584c3b281501000000000000021426364554626e788086888886827c736a5e524435251504000000001d32465b6f84918e8c89877b66523d28130000000000001d32465b708694918e8b8884725c47321d0800000000000000001c31465b708697928f8c89888786868678644f3a240f001e33485d71868e8c898784806b57422e1a05000000000000000000001f34495e72808a92979998958f887d73685b4d3f302010000000000000001e33475c708577695b4e4033271a0e010000000000000000000000000c1b2a3847566574826d58432e1a050000000000000014293f53687774726f6c6453402c17060000000000000000091f34495d7074747474737365513d28130000000000001d3145586768676462605e5c5243311e0a000000000518293b4a58646d73747470675d4f3f2f1d0a0000000000000000000000000000000000000000000000000000000f1d2a3234322f2b251a0d0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000081a2c3d4d5c6872797d7d7b77726a6055493b2c1d0d00000000000000001b3044586d82969593908e836e5a63788e9895928f8c77624c37220d00001d31465b7085918f8c89887c68533d28140000000000001d32475b7086918e8c89887b66513c2712000000000000091e33485d72878886837776787673716a58442f1a050000000000000d203243546372808c949a9d9d9b9790877c7062534332210f00000000172c40556a7d93a3a09e94806a55402c17020000000000192d42576c8296a6a3a09c8a745f4a35200b0000000000000000192e43586d8398a7a4a19f9d9c9b9b8b76604c37210c001a2e43586c8296a19e9b9986715d48341f0b000000000000000000001f34495d72889ca6acaeadaaa39b9186796b5d4e3e2e1d0d000000000000192d41566b8088796c5e5144382b1f1206000000000000000000000d1b2a39485665748487715d48331f0a0000000000000e1a2a3f54687d8a8785826f5a4531201a10030000000000000a1f34495e73888b8b8b89806a55402b160100000000001f344a5f747d7b7977757370614e39251100000000000c1d2c3b4751595e5f5f5b544b3f31211100000000000000000000000000000000000000000000000000000000000c171d1f1d1a1711080000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001124374a5b6b7a868e9394918d867d7266594a3b2b1a0900000000000000152a3e52677b8fa4a8a59d89745f60768ba0aaa7a38d77624c37220d0000182d41566b8095a3a19f95806b56402c16010000000000192d42576c8296a3a19f947d69543f2a15000000000000051a2f44596d83979a917c768c8c8987725d48331e09000000000003172a3d4f617282919ea8aeb2b2b0aba39a8e807161503e2c190600000012273b5065798fa3b5ad98846e5945301b06000000000014293e53687c92a6b8b5a28d77624d38230e0000000000000000162b40556a8095aab9b6b1aaa9ab9d88725d48331e0900152a3e53687c92a6b3b0a08c77624e392510000000000000000000001b3045596e8498adbdac9f9fa9aea3978a7b6c5c4c3b2a1907000000000013283d51667b908a7c6f6255493c3023170a00000000000000000c1b2b394857667484938b76614d38230e00000000000c1d2c373e4f64788e9c9989745f4a38352d2112020000000000061b30455a6f8499a0a097836d58432e190400000000001d32465b6f84918f8d8b887c6854402b170300000000000e1d29353e45494a4a4640382e2113030000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000182c405467798a98a2a8a9a6a19a908577685949382714020000000000000f24384c60758a9eb2b7a38f79655e73899fb3b9a48f78634e38230e000013283d52667b90a5b6ad98836e59442f1a05000000000014293e52677c91a6b6ac97826c57422d1904000000000000162b4054697d93a8968272889c9f8b75604b37220d00000000000b1f3346596c7d90a0afbbbdb5b1b3b7b6ac9e8f806d5c4936220e0000000d22374b60748a9eb3b19c88725d49341f0a000000000010253a4e63788da2b7baa5907965503b2611000000000000000013283d52677c91a7bbb4a29594959586705b46301b06001025394e63778da2b6baa6917c68533e2a1500000000000000000000172c40556a8094a9b6a18e8c98a6b5a7998b7a6a594836251301000000000f23384d62778c9a8d8073675a4e4135281b0e0200000000000b1b2a39495766758593a2907a66513c2713000000000016293b4953545f74899ea28d78634f4d493f301f0d000000000000172c41566b8296abb09b86705c47321d080000000000182c41556a8094a4a2a097836f5b46321e090000000000000c18222a30343434322c251b10030000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001d32465b708497a8b5bdb9b4b4ada2958777675644321f0c000000000000091d32465a6f8398acbda994806b5c72879cb1b9a48f78644f3a240f00000f24384d62778ca1b5b09b87715c47321d0800000000001025394e63778da2b6af9a86705b46311c0700000000000012263b5065798fa39a86708498a38f79644f3a2611000000000012263a4e6276899caebeb9aba09c9ea3acb8ae9d8b7865513e2915010000081d32465b70859aaeb5a08c76614c38230e00000000000c21364a5f74899eb3bda8937d68533e2914000000000000000010253a4f64788ea3b8b09b86808080826e59442f1a04000b20354a5e73889db1bfab96826d58432f1a0500000000000000000013273c51667b90a5b6a28d7a8897a7b7a8998877665442301e0b000000000a1f34495e73889d9e9185786b5f5246392c1f1202000000091a2939485767758594a3a994806a55402c1702000000001d314558676a6a70869aa6917c6764625d4e3c291400000000000014293e53687c93a7b39f89745f4b3621130b0000000012273c5065798fa3b7b29e8a75614d38241000000000000000050f161b1f1f1f1d18110800000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001f344a5f74899eb3c3b3a69f9fa7b3a5958573614e3b281501000000000003172b4054687d92a6baae9a86706b6f869bafbba59079644f3a250f00000a1f34495d72889cb1b49f89745f4a35200b00000000000b20354a5f73899db2b39d88735e49341f0b0000000000000d22374c60758b9f9f8a758094a7927c68533e2a150000000000172c4055697d92a5b9beac9b8d8789909ba8b8a895826d58442f1b06000003182d42566b8095aab9a48f7a65503b27120000000000071c31465b70859aaec0ab96826b57412c1702000000000000000d21374c60768ba0b5b29d88736a6a6b6453402b170200071b3045596e8398adc1b09b87715d48331f0a0000000000000000000e23384d62778ca1b5a6927c788999abb6a69583715f4d3a281502000000061b30455a6f8499aea296897c7063574a3d30200f000000142738475766758594a3b2ad98846e5945301b06000000001f344a5f7480807d8297aa95807a79776c57432e1a0500000000101d263b5065798fa4afa28d78634e392d271d100000000d22374b60748a9eb3b9a4907b67533f2a1602000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001f344a5f748ba0b5b9a6958a8b96a6b3a2917d6b5844311d0900000000000011253a4e63778ca0b4b49f8b8282828599afbba5907b66503b26110000061b2f44596e8398adb7a28d77634e39240f0000000000071c31455a6f8499aeb6a18c77624d38230e000000000000091e33475c71869ba38f797b90a596826c57422d1904000000001b30455a6f8499adc1b6a28f7c71747d8a9aabb09c88725d49341f0a00000014283d52667b90a5baa8937d69543f2a15010000000001182d42576b8296abbfae99846f5a45301b0600000000000000091e33485d72879cb1b6a18c766154565246362410000000172b4055697d93a8bdb5a08b76614d3926130000000000000000000a1f34495d72889cb1ab96826c7b8d9fb1b3a18f7c6a5744311e0b00000000172c41566b8095aab3a79b8e8274685b4e3e2d190600001c30445665758594a3b2c1b19c88735e49341f0b000000001e32475c71869594949faf9d92908f86715d48331f0a0000000d1e2e3a414d62778c99999b917b675243423a2e1e0d0000081d32465b708599aebfab97836d5945311c08000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001e33485e73889db3b29e897678899baeae9b8874604c38240f0000000000000b1f34485c70869aaebaa79997979797a2b4bca7917b66503b2611000000172b40556a8094a9baa5907b66513c2712000000000001182c41566b8095aabaa5907a65503b261200000000000004192e43586c8296a8937d778ca19a86705b46311c08000000001e33485d72889db2c6b19c87725f606b7c8fa2b5a08c76604c37210c0000000f24394d62778ca1b5ac97836d58432e1905000000000014293e53687c92a6bbb19c88725d48331e0900000000000000051a2f44596e8498adb9a48f796550403e3528180700000012263b50657990a5bbb9a5907c6855422f1c080000000000000000061b2f44596e8398adaf9a86706f8293a6b8ac9a8774614e3a27130000000014293e53687c92a7b6b8ac9f9286796c5c4935200b00001f344a5f738494a3b2c1beb0a18c77624d39240f00000000192e42576c8295a9a9afbbada7a5a08b76624d38240f000000172a3c4c55575e738484858686806b5858564c3c2a16020003182d41566a8094a9bdb19d8974604b37230f000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001c31465b70869bb0b19c87706b7d92a6b7a38f7b67533e291500000000000005192d42566a8094a8bcb7ada7a5a6a7acb8bda8937c67523c271200000012273c51667a90a5baa994806a55402b1601000000000013283d52677b91a6baa8937d69543f2a1500000000000000152a3e53687c92a6978373889d9e89745f4a36210c000000001f344a5f748ba0b4c4af99846f5a575f73889db3a38d77624c37220d0000000b1f34495d72889cb1b09b86715c47321d08000000000010253a4e63788da2b7b4a08b75604b36210d0000000000000000172c41566b8095aabda8937d69543f2a23180a0000000010253a4f647990a5bbbfac9885725f4b382512000000000000000000162b4055697d94a8b39e89746476899baeb6a4917d6a56432f1b0700000010253a4f64798c98a5b1bdb0a3978a77624d38230e00001f34495d72889cb1c1bdaea0928475634e39240f0000000014293d52667b8fa3a3a4acb9aba5a5907b67523e29140000001d32465a696c6c6b6e6e6f6f6f6e6c6e6e6a5946311c08000013273c5165798fa3b8b7a38f7a66523e291501000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000192e43586d8398adb29d887263778ca1b5aa96826c58432e190500000000000013273c5064798da2b6b7a3939091929aabbda8937c68533d28130000000e23384d62778ca1b5ac97836d58432e190500000000000f24394e63778da2b6ac97826c58432e190400000000000010253a4e63788da29c87728499a28d78634e3a2510000000001f344a5f748ba0b5c4af9984706d6c6f788a9eb3a08b76604b36210c000000061b3044596e8398adb49f8a74604b36210c00000000000c21364a5f74899eb3b8a38e78644f3a2510000000000000000013283d52677b91a6bbac97836d58432e1a06000000000011263b50667b91a7bbc8b5a28f7a6754412e1b08000000000000000417293c51657a8fa4b6a28d77636b7d92a5b8ad9a86725e4a36220e0000000d21364b5e6e7a87939fabb7b5a5907a66503b261200001b30455a6f8499aebcae9f90827365574734200b000000000f23384c60758a8d8f8f9cae9b909090826c57432e190400001f344a5f74838382828282828283838484745f4a36210c00000e22374b60758a9eb3beaa95826d5844301c07000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000162b40556a8094a9b5a08c766172889cb1af9b86715c47331e090000000000000d21364a5e72889cb0b49f8a797b7c91a7bca9947d68533e29130000000a1f34495e73889db2b09b86715c47321d0800000000000b20354a5e73889daaad9a86705b46311c070000000000000c20354a5f73899da08c778095a6927c68533e2914000000001f344a5f748ba0b5c5b19d8c868383848a97a7ae9a86715d48331e0900000000172b40556a8094a9b8a38e78644f3a25100000000000081d32465b70869aafbba6917c67523d281300000000000000000f24394e63788da2b7b09b87715c48331e09000000000011263b50667b91a7bcd1beab9885715e4a372411000000000000000a1f33465762768ca1b5a6917c676475899cb0b5a28e7965513d2914000000071b2e41505d6975828e99a6b1a8937d68543f2a150000172c41566b8095aaac9e8f82726355473929170400000000091d32465a6d7777788296ab95807979796e59442f1a0500001d32465b7086989797979797979898998d78634e3925100000081d32465b70859aaebfb09c88735f4a36220e00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000013283d52677c91a6b9a4907a666e8398adb49f8b76614c37220e000000000000071b2f44586d8296aab9a48f7a66798fa4b9a994806a543f2a15000000061b30455a6f8499aeb49f8a745f4b36210c0000000000071c31455a6f859195989b89745f4a35200b000000000000071c31455a6f8499a5907b7b91a696826c57422d18030000001f344a5f74899fb4c9baaa9f9b9898999ea7b3a3917d6a57432e1a050000000012273c51667a90a5b9a7927c68533e2914000000000002192e42576c8297abbfaa95806a55402b1601000000000000000c21364b5f748a9fb3b4a08b76614c37230e000000000012273c52677c92a7bcd1c7b4a18e7a6754412e1a070000000000000e23384d627578889db3aa958079796d8295a9bca995806c57432e1a050000001123323f4b5864707c8894a0ab97826c57422d18030014293e53687c92a79c8e807062544637291b0b000000000003172b3e4f5d6262677c92a699856f646460513e2b16020000192d42576c8296aaacacacacacadada6917c67523e2914000003182d41566b8095a9a9a9a28e7965513c281400000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000010253a4f64788ea3b8a994806a697d93a8b9a48f7965503b27120000000000000015293e52667b8fa4b8a994806b778da3b8ab95806a55402b1600000000172c41566b8095aab7a28d78634e392510000000000000182d41566b787c8083878977624d38230e00000000000009182c41566b8095a99580778da29a86705b46311c070000001e33485d72889db2c7c8bbb1abadadaeb2aea3958674614e3b281400000000000e23384d61768ca0b5ab96826c57422d18040000000000152a3f54687d93a8bdad98836d58442f1a0500000000000000081d32475c70869bb0b9a48f7965503b2712000000000013283d52677c93a8bdc5bebdaa9784705d4a3724110000000000000d22374c61758a91a1b5af9b8f90836d798da2b6af9b86715d48331f0a0000000514212e3a46525e6a76828f9b9a856f5a45301b060010253a4f64798f9c8c7d6f61524436281a0b000000000000000e213140494c4e63788da29d88735e4f4c4233221202000014293e52677c91a6a8a8a8a8a8a8a8a895806b56412d1800000013283d52667b909494949794806b57432e1a0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000c21364b60758ba0b4ad99846f65798fa4b9a8937d6954402b16010000000000000f23384c60758a9eb2ae9a8570768ca1b6ac97826b56402b160100000013283d52677b91a6bba6917c67523d281300000000000013283b4e5d64676a6e717473614d38230e0000000000071827364351667b90a5998473899e9e89745f4a35200c0000001c31465b70869bafc4c5b19f96999da09e9a918577675644321f0c00000000000a1f34495d72889cb1af9a86705b46311c08000000000011263b5065798fa4b9b09b87715c47321d080000000000000003192e43586d8397acbda8937d6955402b17020000000013293e53687d94a9beb3aaa9b3a08d796653402d1a070000000000091e32465a6f8397acbbb9aba49c877272879cb0b5a08b76614c38230e0000000004101d2935414c5964707d8c9d88735e49341f0a000d22374c61768c99877a6e6155493d3024170a00000000000003132335444e505f74899ea18c77624e4d493f30200d00000f24394e63778d94939393939393939394856f5a45311c0000000f24384d6176807d7d80828487725d49341f000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000091e33485d72889cb1b29d887361768ba0b4ac97836d59442f1a05000000000000091d32465b6f8498acb39f8a7574899fb4ad98836c57422c17020000000f24394e63788da2b7aa95806b56412c170200000000000c1f303f4a4f5255595c5f5f5545321e0a00000000001324364554616b778ca19e8b878a9da28d78634e39240f000000192e43586d8397acc1c1ac978285888b89867d73675949392715020000000000061b3045596e8498adb39e89745f4a35200c00000000000d22374c61768ba0b5b49f8a745f4b36210c0000000000000000152a3f54697d93a8bdad98836e5945301b0600000000152a3f546a8095aab9a59695a4a996836f5c49362310000000000003172b4054687c919eabbdae9f9b8c766d8297abb9a48f7965503b261100000000000413212f3d4b5a68768593a08c76614c37220d000a1f34495e73899e988c8073675a4e4235281b0c000000000000182c405361666670869aa5907b6663625d4e3d291601000b2035495e73807d7d7c7c7c7c7c7c7d7d80735e48331e0000000a1f33475a696a69686a6c6f73705d49341f000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000041b30455a6f8499aeb6a28d776371879bb0b19c87725d48331e0900000000000003172c4054697d92a6b8a48f7a72889db2ad98846e58432e19030000000c20354a5f74899eb3ae99846f5a45301b060000000000011223364653575553504e4c4942352514010000000a1d30425363727d8890a2a99d9c9da8a6917c67523d2814000000152a3f54697d93a7bcc4b09b8772737473706a6156493b2b1b0a00000000000000172c40556a8094a9b7a28d78634e3925100000000000091e33485d72889cb1b7a28d78634e39240f000000000000000012263b5065798fa4b9b19c88735e4934200b00000000162b40566b8296abb5a08b889cb09f8c7966523f2c190500000000001125394e6276868da2b7a69187877b687d92a7bca7937c68533e281300000000001122313f4d5b69778694a2a48f7965503b261100071c31465b70869ba99d9185786c5f5346392a190700000000001b30465b707b7b7b8297a994807978776c5945311c0800071b304457666a68687777767675746e686a665744301b00000004182b3c4b5455545354575a5e5d51412e1a00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000172c41566b8296abbba6917c676d8397acb5a08b76614c37230e0000000000000011263a4e63778ca0b4a9948070869bb0af99846f5a442f1a05000000081c31465b70869aafb19c88725d49341f0a000000000000152a3f53646c6a686663605e5343301c0800000012263a4d5f7182909ba3aebab2b1b2b9aa95806b56412d1803000011263b4f64788da2b6cab5a18d78645f5e5c564e44382b1e150c0100000000000013273c51667b90a5baa6917c67523e29140000000000051b30455a6f8499aebba6917b67523d28130b020000000000000d22374c61768ba0b5b6a18c77634e39251000000000172c42576c8397acb5a08b8095a8a996826f5c4835220e00000000000b1f33475b6c74899eb3a8937d7071657990a5baaa95806a543f2a1500000000071b2e404f5d6b798896a4b2a8937d68533f2a150000192e43586d8398adaea2968a7d7064574836230f00000000001a2f43586d829191929dae9c908f8f8874604b37230e000015283949535453667b8c8c8c8b8a7460545349392815000000000d1e2d3940403f3e3f42454949413323110000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000014293e53687c92a7bcaa96826b697d93a8b9a48f7965503b2712000000000000000b2034485d71869aafae9985708499afb09b866f5a45301b0600000002192e42576c8297abb5a08b76614c37230e000000000000172c42576c83807c7a787671604b37220d000000192d4155697c8fa0aeb7c0cdc7c7c7c3ae99856f5b46311c0700000c21354a5e72879bafc2bca894806c59525e5f564d443b32281f120300000000000e23384d62778ca1b6aa96826b57422d180300000004121d2c41566b8296abbeaa95806b56412c261e14060000000000091e33485d72879cb1baa6917c67533e291400000000192e43586e8498adb5a08b798da1b29f8c7764513e2b18050000000004182b3e4e5b70869aafac97826c5c63788fa4b9ab96826b56402b16000000000d21364b5e6d7b8a98a6b4c0ab97826c57422e190000162b40556a8094a1aeb4a79b8f827466523e29140000000000152a3e53687c91a6a7adbaaca5a4a38f7a66513d281300000b1c2b373e3f4e63788da1a1a08d78634e3e372b1c0b00000000000f1c262b2b2a292a2d3034342e2315050000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000010253a4f64798ea3b8ae9a867065798fa4b9a8937d6954402b160100000000000005192e42576b8094a8b39e8a758397acb19c87705b46311c0600000000152a3f54687d93a7b9a48f7965503b2611000000000000162b3f54697d9393908e8c79644f3a26110000001d32475c708599acbecbd3dddcdcdcc7b39e89745f4a35210c0000071b2f43576b8093a6bac3af9c8975615d70726960574e453b30211000000000000b1f34495e73889db2ae9a85705b46311c07000001132330393e53687d93a8bdad99846f5a453f3a3124150400000000051a2f44596e8398adbfab96826c57432e19050000001a2f445a6f859aafb6a18c76869aada895826d5a4734210e00000000000f203042576c8296abaf9b86705c63788fa4b9ab95806b56402b16000000000e23384e63788c99a7b6c4baab9a86705c47311c000013283d52667683909daab7aca092826c57422d1804000000001025394e63778ca1a3a5adbaada8a995806b56412d180000000d1a2329364b60758a9fb4a6917b66523d281a0d000000000000000a111516151315181b1f1f1a110500000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000d21364b60758b9fb4b39e897461768ba0b5ac97836d58442f1a050000000000000014283c5065798ea2b7a38f798095abb29d88725c47321d070000000011263b5065798fa4b9a8937d69543f2a1500000000000012273c51657a90a5a5a3927c68533e29140000001f344a5f74899fb3c8dbe6eff1f1e0ccb7a28d78634e3a251000000014283c5063778a9eb1c3b8a592806d6074867c736a61584e3f2e1b0700000000061b30455a6f8499aeb39e89745f4a35200c00000b1e30414d5356657990a5bab29d88735e58544e4233210e0000000000162b4055697d94a8bdaf9b86715c47331e090000001b30465b70869bb0b7a18c767d92a6b19e8a7763503d2a17040000000002152a3f53687d93a7b49f8a7560677c91a6bba9947d69543f2a15000000000d22374c61768ca1b6c5b9ab9c8d7d6e5b46311c00000e233648586572808c99a6b3af9a86705b46321d08000000000b2034495d72878d8e909dae9c93949485705b46311c00000000070f1e33485d72879cb1a994806a56412c17020000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000091e33475c71879bb0b7a28e786472889cb1b09b87715d48331e09000000000000000d22364a5f73889cb1a994807d94a9b39e89735e48331e09000000000d22374c61768ba0b5ac97826c58432e190400000000000e23384d62778ca1b6ab96826c57422d180300001f344a5f748ba0b5cadff4fffffae5d0bba6927c68533e2a150000000c2034475a6d8294a6b8c1ae9c8a796a798e90877d756b5d4a36210c0000000000172c41566b8095aab7a28d78634e392510000012263b4e5f686b6b778da2b7b6a18c77706d6960503d2914000000000012273c51657a8fa4b9b49f8b76614c38230e0000021d32475c72879cb1b7a18c76778b9fb3a793806d5a4734210e000000000011263b5065798fa4b8a38f79646f8396abbba6917c67523d2813000000000b20354a5f748a9fb4b9aa9b8d7d6e5f503e2b17000007192b3a4854616e7b8995a2af9e89745f4b36210d00000000061b2f44586c7677788297a994807d7d7d735e48331e0000000000041a2f44596e84989d9f99846f5a45311c08000000020e161b1b1b1a19191919191a1a1b1b1b181106000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000041a2f44586d8397acbba7927c686e8498adb49f8b75604b36210d00000000000000071c3044596d8296aaae9a867c93a7b49f89745f4a341f0a00000000091e33485d72889cb1af9b86705c47321d0800000000000a1f34495e73889db2ae9a856f5a46311c0700001e33485d72889db1c6d9edffffffe9d4c0ab96826c57432e1905000004182b3e516476899badbebaa897887c8495a39a918878634e38230e000000000013283d52677c91a6bba6917c67523e29140000152a3f54697c8282828ba0b5baa5928886837d6c57422e1904000000000e23384c61768ba0b5b9a48f7a65513c27130000081e33485e73889db3b7a18c76708498acb09d8a7663503d2a1704000000000d22374c61768ba0b5a8937d717d8d9fb2b6a28d78634e3a251000000000081e33485d72889db2aa9b8c7c6e5f504132210f0000000d1c2a3743505d6a7785919fa38e79644f3b2611000000000015293d4e5c6062697d93a798836e6868655644301b000000000000172c40556a808888898989745f4b35200b00000313202a3030302f2e2e2e2e2e2f2f3030302c231708000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000162b4054697d94a8bdab96826c6a8094a9b8a38e78644f3a25100000000000000000162a3e53677b90a4b49f8b7b91a6b5a08b75604b36210b00000000051b3045596e8499aeb39e89745f4a36210c0000000000071c31455a6f8599afb29d88735e4934200b00001b3045596e8396aabed0e1f0fcffeed9c4af9b86715c47321e090000000e213447596b7d8fa0b0bfb5a6999396a2b3aea38d78634e38230e00000000001025394e63788da2b7aa96826b57422d180300152a3f546a809597979ba8bbc1b0a29d9a9786705c47321d08000000000a1f34495d72889cb1bea994806a55412c1803000a1f344a5f74899fb4b7a18c76697c91a5b9a693806c594633200d000000000a1f34495d72889db2ac9784868e9cabbcae9b87725e4a35200c00000000031b30465b70869baa9b8c7c6d5f504132231303000000000c1926333f4c596673828e9c937d6954402b1601000000000d20303f484b5064798ea39c88725d53514839271400000000000013283c5164717272737374705e4a35200b00000f21313d45464544434343434344444646464035261502000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000012273c51657a90a5b9af9a8670667b90a5baa7927c68533e291400000000000000000f24384d61758a9fb3a4918993a7b7a18c77624c37220d0000000000172c41566b8095aab7a28d78634e39240f000000000000182d42576c8296abb6a18c77624d38240f0000162b3f53677a8ea0b2c3d2dfe9f0f2ddc9b49f8a75604c37220e00000005182a3c4e60708292a1b0bdb7aca8aab3c0b39e8a75604b36210c00000000000c21364a5f74899eb3ae9a85705b46311c0700152a3f546a8095abacafb8bdbfbfb6b2af9e89745f4b36210c00000000061b2f44596e8398adbfad99846f5a46311c08000c21364b60768ba0abb2a18c7662768a9fb3b09c897663503d2a1600000000061b30455a6f8599aeb3a2989aa0acbab3a3917d6b57432f1b070000000000192e43586d83989a8c7c6d5e4f41322314040000000000000815222f3c495562707d8b97836d5944301b07000000000212212d34364b5f7489989b8c77634e3d362a1b0a0000000000000e223547555c5c5c5e5e5f5d52422f1b070000192c3e4f595b5a5a58585858585a5a5b5b5b5344321f0b00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000e23384d62778ca1b6b49f8a7563778da2b6ab96826b56412d180300000000000000091e32475b6f8499adafa29fa3b1b8a38d78634e38230e000000000013283d52677c91a6bba6917c67523d281300000000000014293e53687d93a7baa5907b66513c271300001024374b5e708394a5b4c1ccd6dcdedecdb8a48f7965503c2712000000000d1f314253637383929facb7c0bdbfc6baa997836f5b46321d080000000000081d32475c70869ba7aa9e89735f4a35200b00142a3f54687d94a8a8a8a8a8a9a9abacaea28e78644f3a25110000000000162b4055697d94a7aaad9e89745f4a36210c000d22374c6277888f979fa18c76606f8498a4a09b93806c5945301b0000000000182d42576c8297a9adb0adafb4b3ada3958573614e3b2814000000000000162c40566b80958b7c6d5e4f4031231404000000000000000004111e2b3845525f6d7a8988735e4a35210c00000000000310191f31465b70828486887c68533e29190c00000000000000051829384247474748494a49413424120000001e33485c6d706f6f6e6e6e6e6e6f6f707070614e3a251000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000a1f34495e73889db2b8a38f796473899eb3ae99846f5a45311c070000000000000003182c4055697d93a0a2a4a6a8aaada48f79644f3a251000000000001025394e63788ea2b7aa95806b56412c1702000000000011263b5065798fa4b9a994806a55402b160100081b2e415365768796a3afbac2c7c9c9c6bda8947d6a55402c17000000000213243545556473828f9aa4acb2b4b2a99c8c796754402c1803000000000002192e43586c828f9295988d77634e39240f0013293e53687d94939393939394949597999b927c68533e2a15000000000012273c51657a8f9295989a8e78644f3a2611000b2035495d6c747b838b928c7660687c91908b87827c715c47321c0000000000152a3f54687d9094989b9d9fa09e99918576675644321f0c00000000000014293e53687d8b7b6c5e4f403122130400000000000000000000000d1a2734414f5d6b798878644f3b26120000000000000005182c4054646b6e70737467533e29140000000000000000000b1a262e323232333434342e2416060000001f344a5f748786868484848484858686877c68533e29140000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000061b30455a6f8499aebca7937d6970869aafb29d88735e49341f0b000000000000000012263b4f6478898b8d8f919395989b917b66513c271100000000000c21364b60748a9fb4ae99846f5a45301b0600000000000e23384c61768ca0b5ad98836e59442f1a0600001224364858687786929da6adb2b4b4b2aea998846f5a45311c000000000006172737465563707c8890989da09d978c7d6e5c4a37241100000000000000152a3f546776797c8084877c67523d28130012273c52677c7d7d7c7c7c7c7d808082848688826c57422d1800000000000e23384c6174797c808386887d6954402b1500061a2d3f4e5860676f777d8676606276807b76716d686254412e19000000000012273c5165777b808386888a8b89857d736758493827150200000000000012273c51667b7b6c5d4e403122130400000000000000000000000000091623313f4d5b69777d6955402b160000000000000000112436465256585b5e5f58493724100000000000000000000009131a1d1d1d1e1f1f1f1a1206000000001c31455a6e83979b99999999999a9b9b96826c57422d18040000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000172c41566b8095a8abac97836d6c8296abaca18c77624d38230e00000000000000000c21354a5e6f747677797b7d808386897c68533e28130000000000081d32475c71879baeb09d88725d49341f0a00000000000a1f34495e73889dafb09c87725d48331e09000007192a3a4a596774808a93999d9f9f9c99948f88735f4a341f0000000000000a19283745535f6a747c84888b8883796e5f503f2d1b08000000000000001125384a596064676b6e727466523d2813001025394d5f69696867676767686a6b6c6e7072746a57422d180000000000091e3245566265676a6d70737468543f2a1500001021303c444c545b636a72705e5a696b66615d58534e4536251200000000000e2236485963666a6d7073747473706a6156493a2b1b090000000000000010253a4e62736d5e4e3f302213040000000000000000000000000000000613212f3d4b59687468543f2a150000000000000000071928353e414446484a453b2c1a08000000000000000000000000000000000000000000000000000000162b4054687d92a6afafafafafafb0af9a86705b46311c07000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000013283d52667b90949598998772687d93969798907b66513c27130000000000000000071b2e41515c5f60626466686a6d70737767523d28130000000000031a2f44586d8397999b9c8c76614d38230e0000000000061b30455a6f8497999b9c8b76614c37220d0000000c1c2c3b4957636d767d84888a8988848079746c5b47331e000000000000000a192735414d5760686f7374736f675c50413221100000000000000000081b2c3c474c4f5256595c5f584836230e000a1d30414e5454535252525253545657585b5d5f5a4d3b2814000000000002152838454d505255585b5e5f594a392511000003121f29313840474f565e5d524c5556514c48433f3a33271807000000000006192b3b474e5155585b5e5f5f5e5b554e44382b1c0d00000000000000000b1f3345555e5c4f4030211204000000000000000000000000000000000003111f2d3c4a585f594a3925110000000000000000000a1823292c2f31333431291d0e0000000000000810141412100e0b090704000000000000000000000011253a4e63778ca1b5c4c4c4c4c4c5b39e89745f4a35200b00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000f24384d62757b7d808384877665798082838486806a55402b16000000000000000004172a3b4951575d62686d71777c82826b5a4a37240f000000000000162b40556a8083848687897a65513c2711000000000000172c41566b8083848687897964503b2510000000000e1d2c3945505a636a6f727474726f6a655f594e3e2b1800000000000000000a1724303b444d545a5e5f5e5a534a3f322313030000000000000000000e1e2a33373a3d4144474a453a2b190700001223303b3f3f3e3c3c3c3d3e3f40424346484a473d2f1e0b0000000000000a1a2832383b3d404346484a463b2d1b09000000020d151d242c333b434949413a41413d38332e2a251f1609000000000000000d1d2a34393d404446484a4a4946413a31271a0d000000000000000000031627374349483e3122120300000000000000000000000000000000000000010f1e2c3b454a463b2d1b0900000000000000000000060f1417191c1e1f1d160c0000000000000e1a24292a272523201f1c1911060000000000000000000b2034495d72879bb0b1b1b1b1b1b1b1a28d77634e39240f00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000a1f3346576367686b6c6f706f61686b706c6e6f7066533f2a1500000000000000000a1f334759656c71777c82878c9196836d58432e1b0800000000000012273b4f616b6c6e7072737464503b261100000000000014283d50616b6c6e70727373634f3a251000000000000e1b28333e474f555a5d5f5f5d5a56514b453d30200f00000000000000000006121e2831394045484a484540372d21130400000000000000000000000d171e2225282c2f323431281c0d00000004131e262a2a2927272728292a2b2c2e303334322b1f1100000000000000000a161e2326282b2e313334322a1d0f0000000000000109111820272f34342e262c2c28231e1a15110b030000000000000000000d182024282b2f3133343434312d261e140900000000000000000000000a19263034332c211304000000000000000000000000000000000000000000000e1d293134322a1d0f0000000000000000000000000000000000000000000000000000000c1d2c373e3f3c3a383634312d2316070000000000000000061a2f43586c82969d9c9c9c9c9c9c9c9d917b67523d2813000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000004172939474f52565c62676c71767b82846e585a5b564837241000000000000000000d22374c617680868c92979ba0a599846f5a442f1a050000000000000c203242505657595b5c5e5f574735210d0000000000000d213343505657595b5c5e5f564634200c0000000000000a16212b343b4145484a4a4845413c37312a1f120200000000000000000000010b151e252c30333433312b241b10030000000000000000000000000004090d1014171a1e1f1c150b0000000000010b121515131212121313151617191b1e1f1e180e01000000000000000000030a0e101316191c1e1f1d170c00000000000000000000040c131b1f1f1a121717130e0a050000000000000000000000000000050b0f1316191c1e1f1f1f1c18120b020000000000000000000000000009141b1f1e190f030000000000000000000000000000000000000000000000000c161d1f1d170c0000000000030b0f0f0e0e0e0e0e0e0e0e0f0f0f0f0d07000000000016293b495354524f4d4b49474034251402000000000000000015293e52677b8888878787878787878888806b56412c170000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000b1c314457646b71767c82868b9095866f5a454642382a190700000000000000000c21364b5f74899ba0a6abb0b0a091826f5a45301b06000000000000031424323c4042444647484a44392a1805000000000000041525333d4042444647494a443828170400000000000000040e1820272c3133343433302c27221c160d0100000000000000000000000000020a11171b1e1f1e1c1710080000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000a161f2424232323232323232324252525221b10030000001d3145586768676462605e5c5243311e0a00000000000000000f24384d60717372707070707070707273746955412c170000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000a1f344a5f7480868b91969ba0a59c87725c47322e261a0c000000000000000000081c31465b70869aafbac0b1a29283726252402c180300000000000000061520282b2d2f3032333431281b0c0000000000000000071521282b2d2f3032343430271a0b00000000000000000000040c12181c1e1f1f1e1b17130e08010000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000040c10110f0e0d0b0a0400000000000000000000000a12171717171919191919191a1a1a1a1a1b1b1b1b1b1811070000000000000000091116181816120c030b1216181816110a0200000000000000030b0f0f0e0e0e0e0e0e0e0e0e0e0e0f0f0f0f0f0b0300000000000000000000000000090f11100d0b0806040100000000000000000008101415131313121312111213141618171209000000000000000000000000000919273339393838383838383838393a3a3a362d21110000001f344a5f747d7b7977757370614e3925110000000000000000091d3143535d5e5c5b5b5b5b5b5b5b5c5e5f5a4c3a2612000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000091e33485d71879aa0a5abafb2a29383725d48331e13090000000000000000000002192d42576c8296abc0b2a3938473645444342310000000000000000000030d1316181a1b1d1e1f1c150a00000000000000000000040d1416181a1b1d1f1f1c140900000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000b141819161513121212121314140f060000000000000000000a16202526252322211f180e010000000000000000101d262c2c2c2c2e2e2e2e2e2e2f2f2f2f2f30303030302d241809000000000005121d252b2d2d2b261f161e262b2d2d2b261e150900000000000a161f2425232323232323232323232325252525241f160a0000000000000000000004121d24262522201e1b19150e040000000000000e1a24292a2929282729272627282a2b2e2c261b0e000000000000000000000000142637454e4e4e4e4e4e4e4e4e4e4e4f4f4f4a3f2f1d0a00001d32465b6f84918f8d8b887c6854402b17030000000000000001142635414848474646464646464647484a463c2e1d0a000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000051a2f44596d8397acbabfb3a49485746454422e1a0600000000000000000000000014293e53687c92a7b3a4948575655646362617050000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000410191d1e1d1b1a19171616161616151515140f0700000000000001111e282d2e2c2a2927272727292a2822180b00000000000000081928333a3b3a383736332b1f10000000000000000d1e2e3a414242424343434343434444444444454646464641362716040000000615232f393f4242403b3329313a4043423f3a31271b0d00000009192733393a38383838383838383838383a3a3a3a393327190900000000000000000213222f383b3a373533302e2a211607000000000c1d2c373e3f3e3e3d3c3e3b3b3c3d3f404341392c1c0a00000000000000000000001b30435562636363636363636363636464645d4c3a26120000182c41556a8094a4a2a097836f5b46321e0900000000000000000817242e33333231303030303031323334322a1e100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000162b4054697d93a8bdb4a59586756656463725130000000000000000000000000011253a4f64798ea3a595867566574738281809000000000002090d0e0c0906030103070705040301000000000000000000000000000002090d0e0c09060301030707050403010000000000000000000000000514222c323332302f2e2c2b2b2b2b2b2a2a2a2923190c00000000000e1f2f3b4243403f3e3c3c3c3c3e3f3d35291a08000000000000132637454f504f4e4c4b483d2e1d0b000000000000172a3c4c55575757585858585858595a5a5a5a5a5b5b5b5b534533200c000001132433414c545757554f463a434e555857544e44382b1c0b0000142637454e4f4e4e4e4e4e4e4e4e4e4e4e4f4f4f4f4e4537261400000000000000000c1f31404c504f4c4a4845433e3325150300000016293b495354535352525350505152545658554a3a271400000000000000000000001f34495e73787878787878787878787979796955402b16000012273c5065798fa3b7b29e8a75614d38241000000000000000000007121a1e1e1d1c1b1b1b1b1b1c1d1e1f1d170d00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000012273c51657a8fa4b5a696877767584838281908000000000000000000000000000d21364b60758b9f96877667584839291a0a000000000009151e2323211e1b1815171c1c1a19181615130e0600000000000000000009151e2323211e1b1815171c1c1a19181615130e0600000000000000001122323f474847464443423f404040403f3f3f3e362a1b0a00000000182b3d4d575856545352525252535452473725120000000000001b2f43556366646362605b4c3a27130000000000001d32465a696c6c6c6d6e6e6e6e6e6e6f6f6f6f6f70707070634f3b261100000b1e3041515e686c6c6962584b5361696c6c696156493a291805001b3043556264636363636363636363636364646464625543301b070000000000000013273b4e5e6664625f5d5a58514332200c0000001d314558676a686867676862666667686b6d6857432e1a00000000000000000000001e33485d71878f8f8f8f8f8f8f8f8f9090826c57422c1702000d22374b60748a9eb3b9a4907b67533f2a16020000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000e23384d61768ca0a79788776859493a2a1a0b0000000000000000000000000000091e33475c71879787776859493a2a1b0b00000000000818263138383633302d2b2b31312f2e2d2b2a2822190c000000000000000818263138383633302d2b2b31312f2e2d2b2a2822190c00000000000000192d40515c5e5c5b5a585753555656555454545248392714010000001e32475a6a6d6b69686767676768696555422d190400000000001e33485d727b797877766a56412c170d02000000001f344a5f748383838384848484848486868686868787877d69543f2a15000014283b4e5f707c83837d75695a62717d83837d7367584735220f001f34495e7379787878787878787878787879797979735e49341f0a00000000000405162b40556a7b797774726f6d614f3b26120000001f344a5f74807d7d7c7c7d6f7b7b7c7d8083705b46301b00000000000000000000001a2e43586c8296a4a4a4a4a4a4a4a4a598846e58432e190400081d32465b708599aebfab97836d5945311c08000000020e161b1b1b1a19191919191a1a1b1b1b181106000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000a1f34495d72889d988979695a4a3b2b1c0c000000000000000000000000000000041a2e43586d83887869594a3b2b1c0c000000000000132536444c4e4b484542403e4646444342403f3d362a1b0a000000000000132536444c4e4b484542403e4646444342403f3d362a1b0a0000000000001e33485d6f7372706f6e6c65696b6b6a6a6a6a665644301b060000001f344a5f7483827d7d7c7c7c7c7d7d705b46301b0600000001111e32465b70858f8e8d846f5a4530292013040000001d32465b70869898989999999999999b9b9b9b9b9c9c97826d58432e1905001b2f43576a7d8e9798928778676e8090989791857564513e2a16001e33485c70868f8f8f8f8f8e8d8f8f8f8f9090908c76614c37230e0000010d15191a1a2a3f53687c8f8c8a88867d6954402b160100001d3246596b7d909493938a7584919394927d6955412d180000000000000000000000152a3e53687c9293939393939393939394866f5a45301b060003182d41566a8094a9bdb19d8974604b37230f00000313202a3030302f2e2e2e2e2e2f2f3030302c231708000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000061b30455a6f849989796a5b4b3c2c1d0d0000000000000000000000000000000000162b3f54697d79695a4b3b2c1d0d000000000000001b2f43546163605d5a57544f5a5b5a5857565451483927140100000000001b2f43546163605d5a57544f5a5b5a5857565451483927140100000000001f34495e738887868584837077828280808080735e49341f0a0000001c3144586d82969493939393939387725c47321d070000000e1f2f3b42566b8095a39c87725c47433d312211000000182d42576b8095aaadafafafafafafb0b0b0b0b0b1b09b86715c47321e09001f34495d72879bacada5978571768a9eadaca394826d5945301b00192d42576b8296a4a4a4a4a3a3a4a4a4a4a5a5a48f7965503b26120002121f292e2f2f2f394e62778ca09f9c97836d59442f1b060000172a3c4e60728598a8a4907b8499a8a28d78634f3b2612000000000000000000000010253a4e63777d7c7c7c7c7c7c7c7c7c7d7d705b46301b06000013273c5165798fa3b8b7a38f7a66523e291501000f21313d45464544434343434344444646464035261502000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000172c41556a808a7a6b5b4c3d2d1e0e00000000000000000000000000000000000012273b5064746a5b4b3c2d1d0e00000000000000001f34495e727875726f6c695f6d706f6e6c6b6a655644301c0900000000001f34495e727875726f6c695f6d706f6e6c6b6a655644301c0900000000001b30455a6f85999b9a9889747489979595958c76614c37220d000000152a3e52677b90a4a8a8a8a8a89d88725d48331e09000000182b3d4d5758667b90a59f8a745f58584f402e1b07000014283d52667b90a5bac4c4c4c4c4c4c5c5c5c5c5c6b49f8a75604b36210d001f344a5f748ba0b5c1b4a08b76788fa4b9c0b19d88725d48331e0014293e53687c929f9f9d9d9d9d9d9d9d9d9d9f9f937d6954402b17000f20303c4344444444485d71869aafb19c88725e4935200b00000c1e304355677a8ea1ab96828499af9e89735f4a35200c00000000000000000000000b2034485a676867697070706f6f696768696555422d190400000e22374b60758a9eb3beaa95826d5844301c0700192c3e4f595b5a5a58585858585a5a5b5b5b5344321f0b00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000013283d52667b7b6b5c4d3d2e1f0f000000000000000000000000000000000000000d213547575f5a4d3d2d1e0f0000000000000000001e33485d71868b8886837c687186868483828073604c38251100000000001e33485d71868b8886837c687186868483828073604c3825110000000000182d41576b8296abafa28d7870869aababa48f7965503b26110000000f24384c61758a9fb4bcbcbcb49f89735e49341f0a0000001e32475a6a6e6e778ca1a18c776e6e6c5e4b36220d00000f24384d62778ca0b1b1b1b1b0b0b1b1b1b1b3b3b3b3a38e79644f3a2611001f34495e73889caeb5b09e8a74778ca0b1b4ad9b87725c47321d0010253a4f64798b898988888888888888888889898b836e5a45301b00182b3e4e585a5a5a5a5a5a6b8095a9b6a18d77634e3a25110000011326384b5e718598ab9c888499af9a86705b46311c07000000000000000000000005182b3c4a5253596e8387868686735e53545247372512000000081d32465b70859aaebfb09c88735f4a36220e001e33485c6d706f6f6e6e6e6e6e6f6f707070614e3a25100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000f24394e62736d5d4d3e2f1f10010000000000000000000000000000000000000005182a39444a473d2f1f0f000000000000000000001a2e43576c82959d9a97836f6a7d929998968f7b6854402d1906000000001a2e43576c82959d9a97836f6a7d929998968f7b6854402d19060000000014293e53687c92a7bba6917c6c8296abbca7937d68533e2914000000091e32475c70869aa7a7a7a7a7a08b745f4a35200b0000001f344a5f748484848a9fa48f83848479644f3a251100000a1f34495d72879c9c9c9c9c9b9b9c9c9c9c9d9d9d9d9f927d68533f2a15001b3045596d80909ca09c92826e7083939d9f9b8f7d6b58432f1a000d22374c6071747373727272727272727273737374746d5945301b001e33475b6b6f6f6f6f6f6f6f7a8fa4b9a6927c68533f2a16010000091b2e4155687c8fa3a28d8499ac97836d58432e19040000000000000000000000000d1e2c37414954687c929b9b8c77624d4b483d2e1d0b00000003182d41566b8095a9a9a9a28e7965513c2814001f344a5f748786868484848484858686877c68533e29140000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000b1f3345555e5c4f3f2f2011010000000000000000000000000000000000000000000c1b283134322b1f11010000000000000000000014293d52667b90a4af9f8a7662768a9eadab9784705c4935210e0000000014293d52667b90a4af9f8a7662768a9eadab9784705c4935210e0000000010253a4f64798fa3b8aa95806b7c92a7bcab96826c57422d1803000004192d42576b82919191919191918c76604b36210c0000001e33485d728899999ba8ac9c9899927c68533e29140000061a2f44586d838887878787868787878787888888888989826c57422d1800162a3d50627180888b88807363657482898b877d70604e3b281400091d3043535e5f5e5e5d5c5c5c5c5c5c5c5e5e5e5f5f5c4f3d2a16001f344a5f7486868686868686868da2b7ac97836d59442f1b060000001225394c6073879ba8958e9dab95806b56402b1601000000000000000000000000061a2e41515d5f63778da2a590796560605b4c3a27130000000013283d52667b909494949794806b57432e1a001c31455a6e83979b99999999999a9b9b96826c57422d18040000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000031627374349483e3121110200000000000000000000000000000000000000000000000a151c1f1e180e0100000000000000000000000f23384c61758a9fb3a6927d6a6e8397aab39f8c7864513d2a16020000000f23384c61758a9fb3a6927d6a6e8397aab39f8c7864513d2a16020000000d22374c60768ba0b4ae99846f798ea3b8ae99856f5a45301b0600000014293e52677a7b7b7b7b7b7b7b7975614c37220c0000001c31465b70869bafb0b8bab0adab96826c57422d18040000162a3f53667072717070706f7070707071727272727373746a57422d18000e21334453616c7374736d635556646d7374726c615243321f0c000114253542494a484848474747474747474848484a4a483e31200e001d31465b70869a9b9b9b9b9b9b9eabb3b19c88725e4935200c000000091d3044576a7d92a5a6a3abab95806a543f2a1500000000000000000000000000091f34495d70747474899ea8937d7476766a56412c17030000000f24384d6176807d7d80828487725d49341f00162b4054687d92a6afafafafafafb0af9a86705b46311c070000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000a19263034332c21130300000000000000000000000000000000000000000000000000000000000000000000000000000000000000091e32475b708599aead998671677b8fa3b7a894806d5945321e0a000000091e32475b708599aead998671677b8fa3b7a894806d5945321e0a000000091e33485d72879cb1b29d8873748a9fb3b29d88735e49341f0a0000000f24384b5c65666666666666666463574632200d000000192f44586e8498adb7b9c1c4beaf9a86705b46321d08000010243748565b5c5c5b5b5b5a5b5b5b5b5c5c5c5c5c5e5e5f5a4d3b281400041526354450585e5f5e59504546515a5e5f5d584f433425140200000817252f3434333333323232323232323333333434332c21130200182d42576b82959999999b9b9c9c9d9d9d9f8d77634f3a26110000000114283b4e6275899cb0b3b3a9947d69543f2a14000000000000000000000000000a1f344a5f74898b8b8e9fab978b8b8c846f5a45311c070000000a1f33475a696a69686a6c6f73705d49341f0011253a4e63778ca1b5c4c4c4c4c4c5b39e89745f4a35200b0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000009141b1f1e190f03000000000000000000000000000000000000000000000000000000000000000000000000000000000000000003182d41566a8094a8b4a18d786473889cafb09c8975614e3a261300000003182d41566a8094a8b4a18d786473889cafb09c8975614e3a2613000000041a2f44596e8498adb6a18c7770869bb0b5a08c76614c37220d000000081b2e40515e6062626262626262605c4e3d2915010000172c41566b8296a0a2a5afb8aba59e89745f4b36210d000007192a38424647474646464546464646474747474748484a473d2f1e0b0000081726323d44494a48443d34343e45494a48433c322516070000000007121b1f1f1e1e1e1d1d1d1d1d1d1d1e1e1e1f1f1e190f03000014293d52677c838484848686878788888889897d6954402b15000000000c1f3346596c80939d9d9d9d95806a543f2a1500000000000000000000000000071d32475c72879ca0a1acb5a6a0a09d88735f4a35200c00000004182b3c4b5455545354575a5e5d51412e1a000b2034495d72879bb0b1b1b1b1b1b1b1a28d77634e39240f00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000013273c5065798ea2b7a894806c6c8095a8b8a5917d6956422e1b0700000013273c5065798ea2b7a894806c6c8095a8b8a5917d6956422e1b07000000172c41566b8095aabaa5907b6d8397acb9a48f7964503b2611000000001d32475c6f7677777777777777766c58442f1b060000142a3f54697d8b8b8d91a1ad9a90918e7964503b26110000000c1a262e31323230303030303030303232323232333334322b1f11000000000815202930343433302a21222b313434332f29201407000000000000000000000000000000000000000000000000000000000000000f24394d5f6c6c6e6e6e6f6f707072727273747468543f2a150000000003172a3d506376888888888889826b56412c1702000000000000000000000000011b30455a6f8599afb2b4bab9b5b4a28d78634e3a2511000000000d1e2d3940403f3e3f424549494133231100061a2f43586c82969d9c9c9c9c9c9c9c9d917b67523d28130000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000d22364a5f73889db1af9b887365798da1b5ad9986715d4a36220f0000000d22364a5f73889db1af9b887365798da1b5ad9986715d4a36220f00000013283d52677c91a6bba994806a8094a9bca7927c68533e2914000000001d32475c72878d8d8d8d8d8d8d88725d49341f0a000012273b506474747677879ba994807c7d7d68533e2913000000000913191c1d1c1b1b1b1b1b1b1b1b1c1d1d1d1d1e1e1f1e180e010000000000030d151b1f1f1e1b160e0f161c1f1f1e1a140d020000000000000000000000000000000000000000000000000000000000000000091d30414f57575858585a5a5b5b5c5c5d5e5f5f594a39251100000000000e2134475a6c727272727373746955412c170100000000000000000000000000182d42576c82979c9d9fa8b8a99fa0927c68533f2a1600000000000f1c262b2b2a292a2d3034342e231505000015293e52677b8888878787878787878888806b56412c17000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000081c3045596e8397acb7a38f7b6772869aaeb5a18d7965523e2a16030000081c3045596e8397acb7a38f7b6772869aaeb5a18d7965523e2a1603000010253a4f64788ea3b8ad98836e7b90a5baab96826b57412d18030000001b30455a6f869aa3a3a3a3a3a08c77624d38240f00000d213547575f5f606d8397ac98846f6869604e3a2611000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000011323323d424243434444444646474748484a4a463b2d1b09000000000004172a3d4e5a5c5c5c5c5e5e5f5a4c3a26120000000000000000000000000000152a3f54687d8687888a9baf9c8b8b8d836d5945301b0000000000000a111516151315181b1f1f1a11050000000f24384d60717372707070707070707273746955412c1700000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001162b3f54687c92a6bbab97836f6a8093a7bca995826d5946321e0a000001162b3f54687c92a6bbab97836f6a8093a7bca995826d5946321e0a00000c21364b60758b9fb4b19c8772778da2b7ae99846f5a45301b06000000192e43586d8398adb8b8b8b8a5907b67523e2915000005182a39444a4a55697d94a99d89745f544e42311e0b00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000051420292c2d2e2e2f2f2f3031323233333434322a1d0f000000000000000e1f303d454747474748494a463c2e1d0a000000000000000000000000000011263a4f62706f70728296ab9c88757879715c47321c0000000000000000000000000000000000000000000000091d3143535d5e5c5b5b5b5b5b5b5b5c5e5f5a4c3a26120000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000011253a4e63778da1afaf9f8b7764788da1abac9d8975614d39251100000011253a4e63778da1afaf9f8b7764788da1abac9d8975614d3925110000091e33485d72879cb1b4a08b76748a9fb4b29d88725d49341f0a000000172c41566b8297acadadadadaa96826c58432f1b0600000c1b2831343c51667b9098998e78644f3b312313020000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000030d1417181919191a1a1b1c1d1d1e1e1f1f1d170c000000000000000002121f2a3132323232333434322a1e100000000000000000000000000000000c1f3244535b5a5b687c92a6a28d7864656254412e19000000000000000000000000000000000000000000000001142635414848474646464646464647484a463c2e1d0a000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000b2035495e73889999999b93806c728694959799917c6855412d190000000b2035495e73889999999b93806c728694959799917c6855412d190000041a2f44596e8498a0a0a08f7971879b9f9f9f8b76614c37220d000000152a3f546a80959898989898999b87725d4935210c0000000a151c23384d6277828384877d6954402b1505000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000020e161c1d1d1d1d1e1f1f1d170d00000000000000000000000000000000031526354046454e63788d9b9c937d69554e453625120000000000000000000000000000000000000000000000000817242e33333231303030303031323334322a1e100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000071b3044596d83848484868787746b7c7d8083848784705c47321d000000071b3044596d83848484868787746b7c7d8083848784705c47321d000000172c41566b808b8b8b8b8b7d6e8389898989897964503b251000000014293e53687d84838383838484868878644f3a251000000000010a1f33475a696c6d6f717468543f2a1500000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000817232c30364a5f7486868788846f5b46332718070000000000000000000000000000000000000000000000000007121a1e1e1d1c1b1b1b1b1b1c1d1e1f1d170d00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000162b3f53656e6e6e6e6f70706d5f68686a6c6f71746f5c47321d00000000162b3f53656e6e6e6e6f70706d5f68686a6c6f71746f5c47321d00000013283d5266747474747474746873737373737372634f3a251000000012273c50636f6e6d6c6c6c6e6f707373634f3a2510000000000004182b3c4b5457585a5c5f594a3925110000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000611181c31465a6b6f6f7072746e5b46311c09000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001024364754585858585a5b5b5a4f535355575a5c5f5d513f2c19000000001024364754585858585a5b5b5a4f535355575a5c5f5d513f2c190000000e233648585f5f5f5f5f5f5f595e5e5e5e5e5e5d554533200c0000000d213445535a5958575757585a5b5e5f564634200c0000000000000d1e2d3940424344474a463b2d1b09000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000002172a3d4d585a5a5b5d5f5c503e2b170300000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000071929374043434344444646453e3e3f404244474a484032221000000000071929374043434344444646453e3e3f404244474a484032221000000007192b3a454a4a4a4a4a4a4a454848484848484843372816040000000416273640444443424242434446484a4438281704000000000000000f1c262b2c2e2f3234322a1d0f000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000d1f2f3b43444546484a483f32210f0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000b19242c2e2e2e2f2f3030302b28292b2d2f3234332d22140400000000000b19242c2e2e2e2f2f3030302b28292b2d2f3234332d221404000000000d1c28313434343434343431333333333333332f26190a00000000000918242c2f2f2e2c2c2c2e2f31333430271a0b0000000000000000000a111517191a1d1f1d170c000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001111e282e2f30313334332d22130300000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000071117191919191a1b1b1b16131416181a1d1f1e19110500000000000000071117191919191a1b1b1b16131416181a1d1f1e1911050000000000000b151c1f1f1f1f1f1f1f1d1e1e1e1e1e1e1e1b1308000000000000000611171a1a19171717191a1c1e1f1c1409000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000c14191a1b1c1e1f1e19100400000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 + m_StreamData: + offset: 0 + size: 0 + path: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/ModResources/Fonts/Bangers-Regular SDF.asset.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/ModResources/Fonts/Bangers-Regular SDF.asset.meta" new file mode 100644 index 00000000..053fb8f5 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/ModResources/Fonts/Bangers-Regular SDF.asset.meta" @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 0e141b3397d234c8685509c5d77ebcf1 +NativeFormatImporter: + externalObjects: {} + mainObjectFileID: 11400000 + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/ModResources/Fonts/BioRhymeExpanded-Regular SDF.asset" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/ModResources/Fonts/BioRhymeExpanded-Regular SDF.asset" new file mode 100644 index 00000000..9b622f7f --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/ModResources/Fonts/BioRhymeExpanded-Regular SDF.asset" @@ -0,0 +1,5796 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!114 &11400000 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 71c1514a6bd24e1e882cebbe1904ce04, type: 3} + m_Name: BioRhymeExpanded-Regular SDF + m_EditorClassIdentifier: + hashCode: 1616426670 + material: {fileID: 21520047123856204} + materialHashCode: 1119737701 + m_Version: 1.1.0 + m_SourceFontFileGUID: 0e7fce5a708534a9693ae5e8f9866a97 + m_SourceFontFile_EditorRef: {fileID: 0} + m_SourceFontFile: {fileID: 0} + m_AtlasPopulationMode: 0 + m_FaceInfo: + m_FamilyName: BioRhyme Expanded + m_StyleName: + m_PointSize: 31 + m_Scale: 1 + m_LineHeight: 48 + m_AscentLine: 34.9375 + m_CapLine: 21.312498 + m_MeanLine: 0 + m_Baseline: 0 + m_DescentLine: -13.125 + m_SuperscriptOffset: 34.9375 + m_SuperscriptSize: 0.5 + m_SubscriptOffset: -3.1000001 + m_SubscriptSize: 0.5 + m_UnderlineOffset: -3.1000001 + m_UnderlineThickness: 1.5500001 + m_StrikethroughOffset: 7.931818 + m_StrikethroughThickness: 1.5500001 + m_TabWidth: 136.25 + m_GlyphTable: + - m_Index: 1 + m_Metrics: + m_Width: 13.625 + m_Height: 48.0625 + m_HorizontalBearingX: 0 + m_HorizontalBearingY: 34.9375 + m_HorizontalAdvance: 13.625 + m_GlyphRect: + m_X: 6 + m_Y: -53 + m_Width: 14 + m_Height: 48 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 2 + m_Metrics: + m_Width: 5.6874995 + m_Height: 23.812498 + m_HorizontalBearingX: 3.1874998 + m_HorizontalBearingY: 23.437498 + m_HorizontalAdvance: 12.125 + m_GlyphRect: + m_X: 498 + m_Y: 72 + m_Width: 6 + m_Height: 24 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 3 + m_Metrics: + m_Width: 11.187499 + m_Height: 8.437499 + m_HorizontalBearingX: 2.6249998 + m_HorizontalBearingY: 22.937498 + m_HorizontalAdvance: 15.875 + m_GlyphRect: + m_X: 117 + m_Y: 498 + m_Width: 11 + m_Height: 8 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 4 + m_Metrics: + m_Width: 31.749998 + m_Height: 20.062498 + m_HorizontalBearingX: 0.56249994 + m_HorizontalBearingY: 20.062498 + m_HorizontalAdvance: 32.875 + m_GlyphRect: + m_X: 149 + m_Y: 278 + m_Width: 32 + m_Height: 20 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 5 + m_Metrics: + m_Width: 27.124998 + m_Height: 28.249998 + m_HorizontalBearingX: 4.3749995 + m_HorizontalBearingY: 23.749998 + m_HorizontalAdvance: 33.9375 + m_GlyphRect: + m_X: 215 + m_Y: 41 + m_Width: 27 + m_Height: 28 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 6 + m_Metrics: + m_Width: 33.812496 + m_Height: 21.624998 + m_HorizontalBearingX: 1.9999999 + m_HorizontalBearingY: 20.374998 + m_HorizontalAdvance: 37.875 + m_GlyphRect: + m_X: 192 + m_Y: 311 + m_Width: 34 + m_Height: 22 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 7 + m_Metrics: + m_Width: 28.374998 + m_Height: 22.062498 + m_HorizontalBearingX: 1.6874999 + m_HorizontalBearingY: 21.624998 + m_HorizontalAdvance: 31 + m_GlyphRect: + m_X: 214 + m_Y: 162 + m_Width: 28 + m_Height: 22 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 8 + m_Metrics: + m_Width: 4.4374995 + m_Height: 8.562499 + m_HorizontalBearingX: 2.6249998 + m_HorizontalBearingY: 22.999998 + m_HorizontalAdvance: 9.125 + m_GlyphRect: + m_X: 501 + m_Y: 352 + m_Width: 4 + m_Height: 9 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 9 + m_Metrics: + m_Width: 12.062499 + m_Height: 30.624998 + m_HorizontalBearingX: 2.9999998 + m_HorizontalBearingY: 25.937498 + m_HorizontalAdvance: 15 + m_GlyphRect: + m_X: 189 + m_Y: 78 + m_Width: 12 + m_Height: 31 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 10 + m_Metrics: + m_Width: 12.062499 + m_Height: 30.624998 + m_HorizontalBearingX: -0.12499999 + m_HorizontalBearingY: 25.937498 + m_HorizontalAdvance: 15 + m_GlyphRect: + m_X: 190 + m_Y: 120 + m_Width: 12 + m_Height: 31 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 11 + m_Metrics: + m_Width: 15.812499 + m_Height: 13.374999 + m_HorizontalBearingX: 1.1249999 + m_HorizontalBearingY: 25.562498 + m_HorizontalAdvance: 18.125 + m_GlyphRect: + m_X: 305 + m_Y: 491 + m_Width: 16 + m_Height: 13 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 12 + m_Metrics: + m_Width: 21.312498 + m_Height: 17.124998 + m_HorizontalBearingX: 2.1249998 + m_HorizontalBearingY: 18.187498 + m_HorizontalAdvance: 25.625 + m_GlyphRect: + m_X: 228 + m_Y: 422 + m_Width: 21 + m_Height: 17 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 13 + m_Metrics: + m_Width: 5.8124995 + m_Height: 9.374999 + m_HorizontalBearingX: 2.9999998 + m_HorizontalBearingY: 3.3124998 + m_HorizontalAdvance: 11.4375 + m_GlyphRect: + m_X: 215 + m_Y: 497 + m_Width: 6 + m_Height: 9 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 14 + m_Metrics: + m_Width: 11.499999 + m_Height: 2.6249998 + m_HorizontalBearingX: 0.81249994 + m_HorizontalBearingY: 8.687499 + m_HorizontalAdvance: 13.125 + m_GlyphRect: + m_X: 104 + m_Y: 380 + m_Width: 11 + m_Height: 3 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 15 + m_Metrics: + m_Width: 5.7499995 + m_Height: 4.0624995 + m_HorizontalBearingX: 2.4374998 + m_HorizontalBearingY: 3.7499998 + m_HorizontalAdvance: 10.625 + m_GlyphRect: + m_X: 127 + m_Y: 381 + m_Width: 6 + m_Height: 4 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 16 + m_Metrics: + m_Width: 17.874998 + m_Height: 26.187498 + m_HorizontalBearingX: 0.56249994 + m_HorizontalBearingY: 22.999998 + m_HorizontalAdvance: 19.6875 + m_GlyphRect: + m_X: 161 + m_Y: 125 + m_Width: 18 + m_Height: 26 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 17 + m_Metrics: + m_Width: 27.687498 + m_Height: 19.999998 + m_HorizontalBearingX: 1.8124999 + m_HorizontalBearingY: 19.687498 + m_HorizontalAdvance: 31.4375 + m_GlyphRect: + m_X: 347 + m_Y: 283 + m_Width: 28 + m_Height: 20 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 18 + m_Metrics: + m_Width: 16.812498 + m_Height: 19.374998 + m_HorizontalBearingX: 2.6249998 + m_HorizontalBearingY: 19.374998 + m_HorizontalAdvance: 20.1875 + m_GlyphRect: + m_X: 173 + m_Y: 466 + m_Width: 17 + m_Height: 19 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 19 + m_Metrics: + m_Width: 25.187498 + m_Height: 19.624998 + m_HorizontalBearingX: 1.8124999 + m_HorizontalBearingY: 19.687498 + m_HorizontalAdvance: 29.625 + m_GlyphRect: + m_X: 419 + m_Y: 365 + m_Width: 25 + m_Height: 20 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 20 + m_Metrics: + m_Width: 25.749998 + m_Height: 19.937498 + m_HorizontalBearingX: 1.5624999 + m_HorizontalBearingY: 19.687498 + m_HorizontalAdvance: 29.625 + m_GlyphRect: + m_X: 456 + m_Y: 377 + m_Width: 26 + m_Height: 20 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 21 + m_Metrics: + m_Width: 27.499998 + m_Height: 19.999998 + m_HorizontalBearingX: 0.68749994 + m_HorizontalBearingY: 19.687498 + m_HorizontalAdvance: 28.625 + m_GlyphRect: + m_X: 386 + m_Y: 292 + m_Width: 27 + m_Height: 20 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 22 + m_Metrics: + m_Width: 24.374998 + m_Height: 19.687498 + m_HorizontalBearingX: 1.7499999 + m_HorizontalBearingY: 19.249998 + m_HorizontalAdvance: 28.5 + m_GlyphRect: + m_X: 370 + m_Y: 424 + m_Width: 24 + m_Height: 20 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 23 + m_Metrics: + m_Width: 25.187498 + m_Height: 19.937498 + m_HorizontalBearingX: 1.9374999 + m_HorizontalBearingY: 19.624998 + m_HorizontalAdvance: 28.875 + m_GlyphRect: + m_X: 259 + m_Y: 389 + m_Width: 25 + m_Height: 20 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 24 + m_Metrics: + m_Width: 25.624998 + m_Height: 19.562498 + m_HorizontalBearingX: 1.9999999 + m_HorizontalBearingY: 19.124998 + m_HorizontalAdvance: 28.5625 + m_GlyphRect: + m_X: 296 + m_Y: 390 + m_Width: 26 + m_Height: 20 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 25 + m_Metrics: + m_Width: 27.187498 + m_Height: 20.062498 + m_HorizontalBearingX: 2.2499998 + m_HorizontalBearingY: 19.687498 + m_HorizontalAdvance: 31.6875 + m_GlyphRect: + m_X: 425 + m_Y: 299 + m_Width: 27 + m_Height: 20 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 26 + m_Metrics: + m_Width: 25.249998 + m_Height: 19.999998 + m_HorizontalBearingX: 1.7499999 + m_HorizontalBearingY: 19.562498 + m_HorizontalAdvance: 28.9375 + m_GlyphRect: + m_X: 333 + m_Y: 391 + m_Width: 25 + m_Height: 20 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 27 + m_Metrics: + m_Width: 5.6874995 + m_Height: 15.312499 + m_HorizontalBearingX: 2.8124998 + m_HorizontalBearingY: 14.999999 + m_HorizontalAdvance: 11.4375 + m_GlyphRect: + m_X: 386 + m_Y: 456 + m_Width: 6 + m_Height: 15 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 28 + m_Metrics: + m_Width: 5.8124995 + m_Height: 21.437498 + m_HorizontalBearingX: 3.1249998 + m_HorizontalBearingY: 14.999999 + m_HorizontalAdvance: 11.8125 + m_GlyphRect: + m_X: 197 + m_Y: 163 + m_Width: 6 + m_Height: 21 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 29 + m_Metrics: + m_Width: 19.687498 + m_Height: 17.062498 + m_HorizontalBearingX: 1.1874999 + m_HorizontalBearingY: 18.187498 + m_HorizontalAdvance: 23.6875 + m_GlyphRect: + m_X: 228 + m_Y: 393 + m_Width: 20 + m_Height: 17 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 30 + m_Metrics: + m_Width: 21.999998 + m_Height: 10.874999 + m_HorizontalBearingX: 2.8124998 + m_HorizontalBearingY: 15.062499 + m_HorizontalAdvance: 27.625 + m_GlyphRect: + m_X: 475 + m_Y: 443 + m_Width: 22 + m_Height: 11 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 31 + m_Metrics: + m_Width: 19.624998 + m_Height: 17.062498 + m_HorizontalBearingX: 2.8124998 + m_HorizontalBearingY: 18.187498 + m_HorizontalAdvance: 23.6875 + m_GlyphRect: + m_X: 173 + m_Y: 437 + m_Width: 20 + m_Height: 17 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 32 + m_Metrics: + m_Width: 16.624998 + m_Height: 22.062498 + m_HorizontalBearingX: 1.1874999 + m_HorizontalBearingY: 21.687498 + m_HorizontalAdvance: 19.125 + m_GlyphRect: + m_X: 232 + m_Y: 451 + m_Width: 17 + m_Height: 22 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 33 + m_Metrics: + m_Width: 33.562496 + m_Height: 26.374998 + m_HorizontalBearingX: 1.9999999 + m_HorizontalBearingY: 20.687498 + m_HorizontalAdvance: 37.5625 + m_GlyphRect: + m_X: 59 + m_Y: 265 + m_Width: 34 + m_Height: 26 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 34 + m_Metrics: + m_Width: 41.999996 + m_Height: 21.249998 + m_HorizontalBearingX: -0.24999999 + m_HorizontalBearingY: 21.312498 + m_HorizontalAdvance: 41.4375 + m_GlyphRect: + m_X: 358 + m_Y: 7 + m_Width: 42 + m_Height: 21 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 35 + m_Metrics: + m_Width: 34.124996 + m_Height: 21.249998 + m_HorizontalBearingX: 2.0624998 + m_HorizontalBearingY: 21.312498 + m_HorizontalAdvance: 39.3125 + m_GlyphRect: + m_X: 254 + m_Y: 80 + m_Width: 34 + m_Height: 21 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 36 + m_Metrics: + m_Width: 30.999998 + m_Height: 22.062498 + m_HorizontalBearingX: 2.3749998 + m_HorizontalBearingY: 21.749998 + m_HorizontalAdvance: 36.25 + m_GlyphRect: + m_X: 306 + m_Y: 185 + m_Width: 31 + m_Height: 22 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 37 + m_Metrics: + m_Width: 35.374996 + m_Height: 21.249998 + m_HorizontalBearingX: 2.0624998 + m_HorizontalBearingY: 21.312498 + m_HorizontalAdvance: 39.875 + m_GlyphRect: + m_X: 348 + m_Y: 100 + m_Width: 35 + m_Height: 21 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 38 + m_Metrics: + m_Width: 33.624996 + m_Height: 21.249998 + m_HorizontalBearingX: 2.0624998 + m_HorizontalBearingY: 21.312498 + m_HorizontalAdvance: 39.625 + m_GlyphRect: + m_X: 261 + m_Y: 185 + m_Width: 34 + m_Height: 21 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 39 + m_Metrics: + m_Width: 32.624996 + m_Height: 21.249998 + m_HorizontalBearingX: 2.0624998 + m_HorizontalBearingY: 21.312498 + m_HorizontalAdvance: 37 + m_GlyphRect: + m_X: 261 + m_Y: 252 + m_Width: 33 + m_Height: 21 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 40 + m_Metrics: + m_Width: 30.874998 + m_Height: 22.062498 + m_HorizontalBearingX: 2.3124998 + m_HorizontalBearingY: 21.749998 + m_HorizontalAdvance: 36.5625 + m_GlyphRect: + m_X: 305 + m_Y: 256 + m_Width: 31 + m_Height: 22 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 41 + m_Metrics: + m_Width: 41.937496 + m_Height: 21.249998 + m_HorizontalBearingX: 2.0624998 + m_HorizontalBearingY: 21.312498 + m_HorizontalAdvance: 46.125 + m_GlyphRect: + m_X: 411 + m_Y: 7 + m_Width: 42 + m_Height: 21 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 42 + m_Metrics: + m_Width: 16.874998 + m_Height: 21.249998 + m_HorizontalBearingX: 2.0624998 + m_HorizontalBearingY: 21.312498 + m_HorizontalAdvance: 21 + m_GlyphRect: + m_X: 232 + m_Y: 485 + m_Width: 17 + m_Height: 21 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 43 + m_Metrics: + m_Width: 25.187498 + m_Height: 21.624998 + m_HorizontalBearingX: 0.87499994 + m_HorizontalBearingY: 21.312498 + m_HorizontalAdvance: 26.3125 + m_GlyphRect: + m_X: 370 + m_Y: 391 + m_Width: 25 + m_Height: 22 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 44 + m_Metrics: + m_Width: 37.249996 + m_Height: 21.249998 + m_HorizontalBearingX: 2.0624998 + m_HorizontalBearingY: 21.312498 + m_HorizontalAdvance: 40.125 + m_GlyphRect: + m_X: 468 + m_Y: 40 + m_Width: 37 + m_Height: 21 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 45 + m_Metrics: + m_Width: 30.374998 + m_Height: 21.249998 + m_HorizontalBearingX: 2.0624998 + m_HorizontalBearingY: 21.312498 + m_HorizontalAdvance: 34.4375 + m_GlyphRect: + m_X: 261 + m_Y: 285 + m_Width: 30 + m_Height: 21 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 46 + m_Metrics: + m_Width: 46.812496 + m_Height: 21.437498 + m_HorizontalBearingX: 2.0624998 + m_HorizontalBearingY: 21.312498 + m_HorizontalAdvance: 50.9375 + m_GlyphRect: + m_X: 246 + m_Y: 7 + m_Width: 47 + m_Height: 21 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 47 + m_Metrics: + m_Width: 42.687496 + m_Height: 21.437498 + m_HorizontalBearingX: 2.0624998 + m_HorizontalBearingY: 21.312498 + m_HorizontalAdvance: 45.125 + m_GlyphRect: + m_X: 304 + m_Y: 7 + m_Width: 43 + m_Height: 21 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 48 + m_Metrics: + m_Width: 32.687496 + m_Height: 22.062498 + m_HorizontalBearingX: 2.3749998 + m_HorizontalBearingY: 21.749998 + m_HorizontalAdvance: 37.5625 + m_GlyphRect: + m_X: 261 + m_Y: 218 + m_Width: 33 + m_Height: 22 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 49 + m_Metrics: + m_Width: 34.312496 + m_Height: 21.249998 + m_HorizontalBearingX: 2.0624998 + m_HorizontalBearingY: 21.312498 + m_HorizontalAdvance: 38.1875 + m_GlyphRect: + m_X: 105 + m_Y: 160 + m_Width: 34 + m_Height: 21 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 50 + m_Metrics: + m_Width: 34.937496 + m_Height: 28.187498 + m_HorizontalBearingX: 2.3749998 + m_HorizontalBearingY: 21.749998 + m_HorizontalAdvance: 37.5 + m_GlyphRect: + m_X: 254 + m_Y: 40 + m_Width: 35 + m_Height: 28 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 51 + m_Metrics: + m_Width: 39.874996 + m_Height: 21.687498 + m_HorizontalBearingX: 2.0624998 + m_HorizontalBearingY: 21.312498 + m_HorizontalAdvance: 42.3125 + m_GlyphRect: + m_X: 417 + m_Y: 39 + m_Width: 40 + m_Height: 22 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 52 + m_Metrics: + m_Width: 27.937498 + m_Height: 22.124998 + m_HorizontalBearingX: 4.0624995 + m_HorizontalBearingY: 21.687498 + m_HorizontalAdvance: 34.75 + m_GlyphRect: + m_X: 298 + m_Y: 357 + m_Width: 28 + m_Height: 22 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 53 + m_Metrics: + m_Width: 32.874996 + m_Height: 21.249998 + m_HorizontalBearingX: 1.8124999 + m_HorizontalBearingY: 21.312498 + m_HorizontalAdvance: 36.625 + m_GlyphRect: + m_X: 348 + m_Y: 169 + m_Width: 33 + m_Height: 21 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 54 + m_Metrics: + m_Width: 40.937496 + m_Height: 21.624998 + m_HorizontalBearingX: 0.12499999 + m_HorizontalBearingY: 21.312498 + m_HorizontalAdvance: 41.25 + m_GlyphRect: + m_X: 464 + m_Y: 6 + m_Width: 41 + m_Height: 22 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 55 + m_Metrics: + m_Width: 38.437496 + m_Height: 21.624998 + m_HorizontalBearingX: -0.24999999 + m_HorizontalBearingY: 21.312498 + m_HorizontalAdvance: 37.875 + m_GlyphRect: + m_X: 352 + m_Y: 66 + m_Width: 38 + m_Height: 22 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 56 + m_Metrics: + m_Width: 51.437496 + m_Height: 21.624998 + m_HorizontalBearingX: -0.24999999 + m_HorizontalBearingY: 21.312498 + m_HorizontalAdvance: 51 + m_GlyphRect: + m_X: 123 + m_Y: 6 + m_Width: 51 + m_Height: 22 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 57 + m_Metrics: + m_Width: 35.437496 + m_Height: 21.249998 + m_HorizontalBearingX: 1.5624999 + m_HorizontalBearingY: 21.312498 + m_HorizontalAdvance: 38.5625 + m_GlyphRect: + m_X: 395 + m_Y: 106 + m_Width: 35 + m_Height: 21 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 58 + m_Metrics: + m_Width: 35.999996 + m_Height: 21.249998 + m_HorizontalBearingX: 0.24999999 + m_HorizontalBearingY: 21.312498 + m_HorizontalAdvance: 36.5 + m_GlyphRect: + m_X: 442 + m_Y: 108 + m_Width: 36 + m_Height: 21 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 59 + m_Metrics: + m_Width: 27.937498 + m_Height: 21.249998 + m_HorizontalBearingX: 3.8749998 + m_HorizontalBearingY: 21.312498 + m_HorizontalAdvance: 35.5625 + m_GlyphRect: + m_X: 464 + m_Y: 310 + m_Width: 28 + m_Height: 21 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 60 + m_Metrics: + m_Width: 10.562499 + m_Height: 30.062498 + m_HorizontalBearingX: 5.6249995 + m_HorizontalBearingY: 25.749998 + m_HorizontalAdvance: 15.5 + m_GlyphRect: + m_X: 237 + m_Y: 310 + m_Width: 11 + m_Height: 30 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 61 + m_Metrics: + m_Width: 18.062498 + m_Height: 26.187498 + m_HorizontalBearingX: 1.0624999 + m_HorizontalBearingY: 22.999998 + m_HorizontalAdvance: 19.6875 + m_GlyphRect: + m_X: 51 + m_Y: 465 + m_Width: 18 + m_Height: 26 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 62 + m_Metrics: + m_Width: 10.562499 + m_Height: 30.062498 + m_HorizontalBearingX: -0.74999994 + m_HorizontalBearingY: 25.749998 + m_HorizontalAdvance: 15.5 + m_GlyphRect: + m_X: 53 + m_Y: 383 + m_Width: 11 + m_Height: 30 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 63 + m_Metrics: + m_Width: 16.499998 + m_Height: 11.874999 + m_HorizontalBearingX: 0.74999994 + m_HorizontalBearingY: 25.249998 + m_HorizontalAdvance: 18.0625 + m_GlyphRect: + m_X: 441 + m_Y: 493 + m_Width: 16 + m_Height: 12 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 64 + m_Metrics: + m_Width: 18.249998 + m_Height: 2.6249998 + m_HorizontalBearingX: -0.62499994 + m_HorizontalBearingY: -2.7499998 + m_HorizontalAdvance: 17.125 + m_GlyphRect: + m_X: 51 + m_Y: 502 + m_Width: 18 + m_Height: 3 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 65 + m_Metrics: + m_Width: 29.249998 + m_Height: 15.374999 + m_HorizontalBearingX: 3.0624998 + m_HorizontalBearingY: 14.999999 + m_HorizontalAdvance: 32.625 + m_GlyphRect: + m_X: 434 + m_Y: 241 + m_Width: 29 + m_Height: 15 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 66 + m_Metrics: + m_Width: 33.499996 + m_Height: 21.687498 + m_HorizontalBearingX: -0.99999994 + m_HorizontalBearingY: 21.312498 + m_HorizontalAdvance: 34.9375 + m_GlyphRect: + m_X: 392 + m_Y: 174 + m_Width: 33 + m_Height: 22 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 67 + m_Metrics: + m_Width: 24.874998 + m_Height: 15.437499 + m_HorizontalBearingX: 2.4374998 + m_HorizontalBearingY: 15.062499 + m_HorizontalAdvance: 30.375 + m_GlyphRect: + m_X: 406 + m_Y: 434 + m_Width: 25 + m_Height: 15 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 68 + m_Metrics: + m_Width: 31.999998 + m_Height: 21.687498 + m_HorizontalBearingX: 2.4374998 + m_HorizontalBearingY: 21.312498 + m_HorizontalAdvance: 36.125 + m_GlyphRect: + m_X: 437 + m_Y: 207 + m_Width: 32 + m_Height: 22 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 69 + m_Metrics: + m_Width: 25.312498 + m_Height: 15.437499 + m_HorizontalBearingX: 2.4374998 + m_HorizontalBearingY: 15.062499 + m_HorizontalAdvance: 30.3125 + m_GlyphRect: + m_X: 444 + m_Y: 409 + m_Width: 25 + m_Height: 15 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 70 + m_Metrics: + m_Width: 21.749998 + m_Height: 22.749998 + m_HorizontalBearingX: 2.1874998 + m_HorizontalBearingY: 22.749998 + m_HorizontalAdvance: 23.4375 + m_GlyphRect: + m_X: 484 + m_Y: 151 + m_Width: 22 + m_Height: 23 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 71 + m_Metrics: + m_Width: 26.749998 + m_Height: 25.749998 + m_HorizontalBearingX: 2.1249998 + m_HorizontalBearingY: 18.812498 + m_HorizontalAdvance: 30.625 + m_GlyphRect: + m_X: 81 + m_Y: 460 + m_Width: 27 + m_Height: 26 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 72 + m_Metrics: + m_Width: 36.624996 + m_Height: 21.249998 + m_HorizontalBearingX: 1.0624999 + m_HorizontalBearingY: 21.312498 + m_HorizontalAdvance: 38 + m_GlyphRect: + m_X: 402 + m_Y: 73 + m_Width: 37 + m_Height: 21 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 73 + m_Metrics: + m_Width: 15.812499 + m_Height: 21.687498 + m_HorizontalBearingX: 2.1874998 + m_HorizontalBearingY: 21.749998 + m_HorizontalAdvance: 19.4375 + m_GlyphRect: + m_X: 332 + m_Y: 456 + m_Width: 16 + m_Height: 22 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 74 + m_Metrics: + m_Width: 13.562499 + m_Height: 29.062498 + m_HorizontalBearingX: -0.87499994 + m_HorizontalBearingY: 21.749998 + m_HorizontalAdvance: 17.125 + m_GlyphRect: + m_X: 234 + m_Y: 352 + m_Width: 14 + m_Height: 29 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 75 + m_Metrics: + m_Width: 33.499996 + m_Height: 22.062498 + m_HorizontalBearingX: 1.0624999 + m_HorizontalBearingY: 21.312498 + m_HorizontalAdvance: 35.9375 + m_GlyphRect: + m_X: 300 + m_Y: 151 + m_Width: 33 + m_Height: 22 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 76 + m_Metrics: + m_Width: 15.812499 + m_Height: 21.249998 + m_HorizontalBearingX: 1.0624999 + m_HorizontalBearingY: 21.312498 + m_HorizontalAdvance: 18.25 + m_GlyphRect: + m_X: 359 + m_Y: 457 + m_Width: 16 + m_Height: 21 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 77 + m_Metrics: + m_Width: 48.812496 + m_Height: 14.999999 + m_HorizontalBearingX: 2.1874998 + m_HorizontalBearingY: 14.999999 + m_HorizontalAdvance: 51.375 + m_GlyphRect: + m_X: 300 + m_Y: 39 + m_Width: 49 + m_Height: 15 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 78 + m_Metrics: + m_Width: 36.562496 + m_Height: 14.999999 + m_HorizontalBearingX: 2.1874998 + m_HorizontalBearingY: 14.999999 + m_HorizontalAdvance: 39.125 + m_GlyphRect: + m_X: 300 + m_Y: 91 + m_Width: 37 + m_Height: 15 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 79 + m_Metrics: + m_Width: 27.124998 + m_Height: 15.437499 + m_HorizontalBearingX: 2.4374998 + m_HorizontalBearingY: 15.062499 + m_HorizontalAdvance: 31.9375 + m_GlyphRect: + m_X: 345 + m_Y: 315 + m_Width: 27 + m_Height: 15 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 80 + m_Metrics: + m_Width: 33.437496 + m_Height: 21.749998 + m_HorizontalBearingX: 1.2499999 + m_HorizontalBearingY: 15.062499 + m_HorizontalAdvance: 37.1875 + m_GlyphRect: + m_X: 437 + m_Y: 174 + m_Width: 33 + m_Height: 22 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 81 + m_Metrics: + m_Width: 33.437496 + m_Height: 21.812498 + m_HorizontalBearingX: 2.4374998 + m_HorizontalBearingY: 15.124999 + m_HorizontalAdvance: 36.6875 + m_GlyphRect: + m_X: 392 + m_Y: 207 + m_Width: 33 + m_Height: 22 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 82 + m_Metrics: + m_Width: 25.187498 + m_Height: 14.999999 + m_HorizontalBearingX: 2.1874998 + m_HorizontalBearingY: 14.999999 + m_HorizontalAdvance: 30.25 + m_GlyphRect: + m_X: 191 + m_Y: 380 + m_Width: 25 + m_Height: 15 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 83 + m_Metrics: + m_Width: 23.687498 + m_Height: 15.437499 + m_HorizontalBearingX: 3.2499998 + m_HorizontalBearingY: 15.062499 + m_HorizontalAdvance: 30 + m_GlyphRect: + m_X: 261 + m_Y: 421 + m_Width: 24 + m_Height: 15 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 84 + m_Metrics: + m_Width: 19.499998 + m_Height: 19.062498 + m_HorizontalBearingX: 0.56249994 + m_HorizontalBearingY: 18.687498 + m_HorizontalAdvance: 21.5 + m_GlyphRect: + m_X: 201 + m_Y: 466 + m_Width: 19 + m_Height: 19 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 85 + m_Metrics: + m_Width: 34.249996 + m_Height: 14.999999 + m_HorizontalBearingX: 0.24999999 + m_HorizontalBearingY: 14.624999 + m_HorizontalAdvance: 36.25 + m_GlyphRect: + m_X: 103 + m_Y: 234 + m_Width: 34 + m_Height: 15 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 86 + m_Metrics: + m_Width: 30.499998 + m_Height: 14.999999 + m_HorizontalBearingX: 0.24999999 + m_HorizontalBearingY: 14.624999 + m_HorizontalAdvance: 31.0625 + m_GlyphRect: + m_X: 392 + m_Y: 240 + m_Width: 30 + m_Height: 15 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 87 + m_Metrics: + m_Width: 40.499996 + m_Height: 14.999999 + m_HorizontalBearingX: 0.24999999 + m_HorizontalBearingY: 14.624999 + m_HorizontalAdvance: 41 + m_GlyphRect: + m_X: 300 + m_Y: 65 + m_Width: 40 + m_Height: 15 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 88 + m_Metrics: + m_Width: 29.124998 + m_Height: 14.624999 + m_HorizontalBearingX: 2.1249998 + m_HorizontalBearingY: 14.624999 + m_HorizontalAdvance: 33.5625 + m_GlyphRect: + m_X: 388 + m_Y: 266 + m_Width: 29 + m_Height: 15 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 89 + m_Metrics: + m_Width: 30.249998 + m_Height: 21.999998 + m_HorizontalBearingX: 0.68749994 + m_HorizontalBearingY: 14.624999 + m_HorizontalAdvance: 30.875 + m_GlyphRect: + m_X: 303 + m_Y: 289 + m_Width: 30 + m_Height: 22 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 90 + m_Metrics: + m_Width: 25.624998 + m_Height: 15.437499 + m_HorizontalBearingX: 2.9999998 + m_HorizontalBearingY: 15.062499 + m_HorizontalAdvance: 30.75 + m_GlyphRect: + m_X: 191 + m_Y: 407 + m_Width: 26 + m_Height: 15 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 91 + m_Metrics: + m_Width: 16.187498 + m_Height: 32.624996 + m_HorizontalBearingX: 3.7499998 + m_HorizontalBearingY: 26.999998 + m_HorizontalAdvance: 20 + m_GlyphRect: + m_X: 489 + m_Y: 107 + m_Width: 16 + m_Height: 33 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 92 + m_Metrics: + m_Width: 2.9374998 + m_Height: 31.937498 + m_HorizontalBearingX: 4.4999995 + m_HorizontalBearingY: 25.999998 + m_HorizontalAdvance: 12 + m_GlyphRect: + m_X: 102 + m_Y: 115 + m_Width: 3 + m_Height: 32 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 93 + m_Metrics: + m_Width: 16.187498 + m_Height: 32.624996 + m_HorizontalBearingX: 0 + m_HorizontalBearingY: 26.999998 + m_HorizontalAdvance: 20 + m_GlyphRect: + m_X: 161 + m_Y: 80 + m_Width: 16 + m_Height: 33 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 94 + m_Metrics: + m_Width: 24.687498 + m_Height: 8.499999 + m_HorizontalBearingX: 2.3749998 + m_HorizontalBearingY: 14.124999 + m_HorizontalAdvance: 29.5625 + m_GlyphRect: + m_X: 81 + m_Y: 498 + m_Width: 25 + m_Height: 8 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 95 + m_Metrics: + m_Width: 0 + m_Height: 0 + m_HorizontalBearingX: 0 + m_HorizontalBearingY: 0 + m_HorizontalAdvance: 13.625 + m_GlyphRect: + m_X: 6 + m_Y: -5 + m_Width: 0 + m_Height: 0 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 96 + m_Metrics: + m_Width: 5.7499995 + m_Height: 23.874998 + m_HorizontalBearingX: 3.1874998 + m_HorizontalBearingY: 22.124998 + m_HorizontalAdvance: 12.125 + m_GlyphRect: + m_X: 288 + m_Y: 461 + m_Width: 6 + m_Height: 24 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 97 + m_Metrics: + m_Width: 23.687498 + m_Height: 19.999998 + m_HorizontalBearingX: 2.8124998 + m_HorizontalBearingY: 19.687498 + m_HorizontalAdvance: 29.1875 + m_GlyphRect: + m_X: 482 + m_Y: 185 + m_Width: 24 + m_Height: 20 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 98 + m_Metrics: + m_Width: 28.062498 + m_Height: 19.999998 + m_HorizontalBearingX: 2.3749998 + m_HorizontalBearingY: 19.687498 + m_HorizontalAdvance: 31.5 + m_GlyphRect: + m_X: 429 + m_Y: 267 + m_Width: 28 + m_Height: 20 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 99 + m_Metrics: + m_Width: 16.499998 + m_Height: 16.999998 + m_HorizontalBearingX: 2.9374998 + m_HorizontalBearingY: 18.187498 + m_HorizontalAdvance: 22.5 + m_GlyphRect: + m_X: 233 + m_Y: 281 + m_Width: 16 + m_Height: 17 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 100 + m_Metrics: + m_Width: 34.687496 + m_Height: 19.249998 + m_HorizontalBearingX: 1.1249999 + m_HorizontalBearingY: 19.249998 + m_HorizontalAdvance: 37.0625 + m_GlyphRect: + m_X: 151 + m_Y: 163 + m_Width: 35 + m_Height: 19 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 101 + m_Metrics: + m_Width: 2.9374998 + m_Height: 31.937498 + m_HorizontalBearingX: 4.4999995 + m_HorizontalBearingY: 25.999998 + m_HorizontalAdvance: 12 + m_GlyphRect: + m_X: 503 + m_Y: 309 + m_Width: 3 + m_Height: 32 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 102 + m_Metrics: + m_Width: 28.499998 + m_Height: 31.874998 + m_HorizontalBearingX: 2.8749998 + m_HorizontalBearingY: 21.749998 + m_HorizontalAdvance: 34.0625 + m_GlyphRect: + m_X: 214 + m_Y: 118 + m_Width: 28 + m_Height: 32 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 103 + m_Metrics: + m_Width: 34.687496 + m_Height: 27.999998 + m_HorizontalBearingX: 1.9999999 + m_HorizontalBearingY: 21.249998 + m_HorizontalAdvance: 38.75 + m_GlyphRect: + m_X: 58 + m_Y: 342 + m_Width: 35 + m_Height: 28 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 104 + m_Metrics: + m_Width: 17.562498 + m_Height: 13.062499 + m_HorizontalBearingX: 2.1249998 + m_HorizontalBearingY: 21.687498 + m_HorizontalAdvance: 20.4375 + m_GlyphRect: + m_X: 472 + m_Y: 466 + m_Width: 18 + m_Height: 13 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 105 + m_Metrics: + m_Width: 28.124998 + m_Height: 16.499998 + m_HorizontalBearingX: 1.6874999 + m_HorizontalBearingY: 15.812499 + m_HorizontalAdvance: 32.5625 + m_GlyphRect: + m_X: 475 + m_Y: 254 + m_Width: 28 + m_Height: 16 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 106 + m_Metrics: + m_Width: 21.187498 + m_Height: 11.437499 + m_HorizontalBearingX: 1.6249999 + m_HorizontalBearingY: 13.562499 + m_HorizontalAdvance: 25.5625 + m_GlyphRect: + m_X: 403 + m_Y: 461 + m_Width: 21 + m_Height: 11 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 107 + m_Metrics: + m_Width: 11.499999 + m_Height: 2.6249998 + m_HorizontalBearingX: 0.81249994 + m_HorizontalBearingY: 8.687499 + m_HorizontalAdvance: 13.125 + m_GlyphRect: + m_X: 120 + m_Y: 396 + m_Width: 11 + m_Height: 3 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 108 + m_Metrics: + m_Width: 34.687496 + m_Height: 28.249998 + m_HorizontalBearingX: 1.9999999 + m_HorizontalBearingY: 21.124998 + m_HorizontalAdvance: 38.75 + m_GlyphRect: + m_X: 58 + m_Y: 303 + m_Width: 35 + m_Height: 28 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 109 + m_Metrics: + m_Width: 12.374999 + m_Height: 10.312499 + m_HorizontalBearingX: 0.99999994 + m_HorizontalBearingY: 25.124998 + m_HorizontalAdvance: 14.375 + m_GlyphRect: + m_X: 493 + m_Y: 378 + m_Width: 12 + m_Height: 10 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 110 + m_Metrics: + m_Width: 21.187498 + m_Height: 17.749998 + m_HorizontalBearingX: 2.2499998 + m_HorizontalBearingY: 19.312498 + m_HorizontalAdvance: 25.6875 + m_GlyphRect: + m_X: 442 + m_Y: 435 + m_Width: 21 + m_Height: 18 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 111 + m_Metrics: + m_Width: 14.437499 + m_Height: 11.562499 + m_HorizontalBearingX: 1.1874999 + m_HorizontalBearingY: 24.562498 + m_HorizontalAdvance: 17.125 + m_GlyphRect: + m_X: 165 + m_Y: 413 + m_Width: 14 + m_Height: 12 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 112 + m_Metrics: + m_Width: 14.749999 + m_Height: 11.749999 + m_HorizontalBearingX: 1.7499999 + m_HorizontalBearingY: 24.437498 + m_HorizontalAdvance: 18 + m_GlyphRect: + m_X: 472 + m_Y: 490 + m_Width: 15 + m_Height: 12 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 113 + m_Metrics: + m_Width: 34.312496 + m_Height: 21.374998 + m_HorizontalBearingX: 1.2499999 + m_HorizontalBearingY: 14.624999 + m_HorizontalAdvance: 37.375 + m_GlyphRect: + m_X: 300 + m_Y: 118 + m_Width: 34 + m_Height: 21 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 114 + m_Metrics: + m_Width: 30.187498 + m_Height: 29.249998 + m_HorizontalBearingX: 1.5624999 + m_HorizontalBearingY: 21.749998 + m_HorizontalAdvance: 37.1875 + m_GlyphRect: + m_X: 147 + m_Y: 194 + m_Width: 30 + m_Height: 29 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 115 + m_Metrics: + m_Width: 5.7499995 + m_Height: 4.1249995 + m_HorizontalBearingX: 2.4374998 + m_HorizontalBearingY: 12.249999 + m_HorizontalAdvance: 10.625 + m_GlyphRect: + m_X: 144 + m_Y: 382 + m_Width: 6 + m_Height: 4 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 116 + m_Metrics: + m_Width: 10.374999 + m_Height: 11.374999 + m_HorizontalBearingX: 1.6874999 + m_HorizontalBearingY: 24.437498 + m_HorizontalAdvance: 12.625 + m_GlyphRect: + m_X: 204 + m_Y: 434 + m_Width: 10 + m_Height: 11 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 117 + m_Metrics: + m_Width: 16.249998 + m_Height: 12.999999 + m_HorizontalBearingX: 1.6874999 + m_HorizontalBearingY: 21.624998 + m_HorizontalAdvance: 19.625 + m_GlyphRect: + m_X: 144 + m_Y: 436 + m_Width: 16 + m_Height: 13 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 118 + m_Metrics: + m_Width: 28.124998 + m_Height: 16.499998 + m_HorizontalBearingX: 2.6874998 + m_HorizontalBearingY: 15.812499 + m_HorizontalAdvance: 32.5625 + m_GlyphRect: + m_X: 469 + m_Y: 282 + m_Width: 28 + m_Height: 16 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 119 + m_Metrics: + m_Width: 33.874996 + m_Height: 26.062498 + m_HorizontalBearingX: 1.6874999 + m_HorizontalBearingY: 22.937498 + m_HorizontalAdvance: 35.1875 + m_GlyphRect: + m_X: 116 + m_Y: 122 + m_Width: 34 + m_Height: 26 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 120 + m_Metrics: + m_Width: 34.937496 + m_Height: 26.062498 + m_HorizontalBearingX: 1.6874999 + m_HorizontalBearingY: 22.937498 + m_HorizontalAdvance: 38.25 + m_GlyphRect: + m_X: 254 + m_Y: 113 + m_Width: 35 + m_Height: 26 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 121 + m_Metrics: + m_Width: 37.999996 + m_Height: 26.062498 + m_HorizontalBearingX: 1.7499999 + m_HorizontalBearingY: 22.937498 + m_HorizontalAdvance: 39.3125 + m_GlyphRect: + m_X: 166 + m_Y: 41 + m_Width: 38 + m_Height: 26 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 122 + m_Metrics: + m_Width: 16.624998 + m_Height: 22.062498 + m_HorizontalBearingX: 0.81249994 + m_HorizontalBearingY: 21.374998 + m_HorizontalAdvance: 18.625 + m_GlyphRect: + m_X: 260 + m_Y: 462 + m_Width: 17 + m_Height: 22 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 123 + m_Metrics: + m_Width: 41.999996 + m_Height: 31.062498 + m_HorizontalBearingX: -0.24999999 + m_HorizontalBearingY: 31.062498 + m_HorizontalAdvance: 41.4375 + m_GlyphRect: + m_X: 6 + m_Y: 51 + m_Width: 42 + m_Height: 31 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 124 + m_Metrics: + m_Width: 41.999996 + m_Height: 31.062498 + m_HorizontalBearingX: -0.24999999 + m_HorizontalBearingY: 31.062498 + m_HorizontalAdvance: 41.4375 + m_GlyphRect: + m_X: 59 + m_Y: 40 + m_Width: 42 + m_Height: 31 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 125 + m_Metrics: + m_Width: 41.999996 + m_Height: 29.499998 + m_HorizontalBearingX: -0.24999999 + m_HorizontalBearingY: 29.499998 + m_HorizontalAdvance: 41.4375 + m_GlyphRect: + m_X: 6 + m_Y: 180 + m_Width: 42 + m_Height: 29 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 126 + m_Metrics: + m_Width: 41.999996 + m_Height: 29.499998 + m_HorizontalBearingX: -0.24999999 + m_HorizontalBearingY: 29.562498 + m_HorizontalAdvance: 41.4375 + m_GlyphRect: + m_X: 6 + m_Y: 221 + m_Width: 42 + m_Height: 29 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 127 + m_Metrics: + m_Width: 41.999996 + m_Height: 28.562498 + m_HorizontalBearingX: -0.24999999 + m_HorizontalBearingY: 28.562498 + m_HorizontalAdvance: 41.4375 + m_GlyphRect: + m_X: 6 + m_Y: 261 + m_Width: 42 + m_Height: 29 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 128 + m_Metrics: + m_Width: 41.999996 + m_Height: 32.562496 + m_HorizontalBearingX: -0.24999999 + m_HorizontalBearingY: 32.562496 + m_HorizontalAdvance: 41.4375 + m_GlyphRect: + m_X: 6 + m_Y: 6 + m_Width: 42 + m_Height: 33 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 129 + m_Metrics: + m_Width: 52.187496 + m_Height: 21.249998 + m_HorizontalBearingX: -0.18749999 + m_HorizontalBearingY: 21.312498 + m_HorizontalAdvance: 55.9375 + m_GlyphRect: + m_X: 59 + m_Y: 7 + m_Width: 52 + m_Height: 21 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 130 + m_Metrics: + m_Width: 30.999998 + m_Height: 29.749998 + m_HorizontalBearingX: 2.3749998 + m_HorizontalBearingY: 21.749998 + m_HorizontalAdvance: 36.25 + m_GlyphRect: + m_X: 149 + m_Y: 340 + m_Width: 31 + m_Height: 30 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 131 + m_Metrics: + m_Width: 33.624996 + m_Height: 31.062498 + m_HorizontalBearingX: 2.0624998 + m_HorizontalBearingY: 31.062498 + m_HorizontalAdvance: 39.625 + m_GlyphRect: + m_X: 6 + m_Y: 425 + m_Width: 34 + m_Height: 31 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 132 + m_Metrics: + m_Width: 33.624996 + m_Height: 31.062498 + m_HorizontalBearingX: 2.0624998 + m_HorizontalBearingY: 31.062498 + m_HorizontalAdvance: 39.625 + m_GlyphRect: + m_X: 6 + m_Y: 468 + m_Width: 34 + m_Height: 31 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 133 + m_Metrics: + m_Width: 33.624996 + m_Height: 29.499998 + m_HorizontalBearingX: 2.0624998 + m_HorizontalBearingY: 29.499998 + m_HorizontalAdvance: 39.625 + m_GlyphRect: + m_X: 116 + m_Y: 81 + m_Width: 34 + m_Height: 29 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 134 + m_Metrics: + m_Width: 33.624996 + m_Height: 28.562498 + m_HorizontalBearingX: 2.0624998 + m_HorizontalBearingY: 28.562498 + m_HorizontalAdvance: 39.625 + m_GlyphRect: + m_X: 104 + m_Y: 260 + m_Width: 34 + m_Height: 29 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 135 + m_Metrics: + m_Width: 16.874998 + m_Height: 31.062498 + m_HorizontalBearingX: 2.0624998 + m_HorizontalBearingY: 31.062498 + m_HorizontalAdvance: 21 + m_GlyphRect: + m_X: 233 + m_Y: 196 + m_Width: 17 + m_Height: 31 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 136 + m_Metrics: + m_Width: 16.874998 + m_Height: 31.062498 + m_HorizontalBearingX: 2.0624998 + m_HorizontalBearingY: 31.062498 + m_HorizontalAdvance: 21 + m_GlyphRect: + m_X: 233 + m_Y: 239 + m_Width: 17 + m_Height: 31 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 137 + m_Metrics: + m_Width: 16.874998 + m_Height: 29.499998 + m_HorizontalBearingX: 2.0624998 + m_HorizontalBearingY: 29.499998 + m_HorizontalAdvance: 21 + m_GlyphRect: + m_X: 75 + m_Y: 382 + m_Width: 17 + m_Height: 29 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 138 + m_Metrics: + m_Width: 16.874998 + m_Height: 28.562498 + m_HorizontalBearingX: 2.0624998 + m_HorizontalBearingY: 28.562498 + m_HorizontalAdvance: 21 + m_GlyphRect: + m_X: 51 + m_Y: 424 + m_Width: 17 + m_Height: 29 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 139 + m_Metrics: + m_Width: 35.749996 + m_Height: 21.249998 + m_HorizontalBearingX: 1.6249999 + m_HorizontalBearingY: 21.312498 + m_HorizontalAdvance: 39.5625 + m_GlyphRect: + m_X: 59 + m_Y: 83 + m_Width: 36 + m_Height: 21 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 140 + m_Metrics: + m_Width: 42.687496 + m_Height: 29.312498 + m_HorizontalBearingX: 2.0624998 + m_HorizontalBearingY: 29.187498 + m_HorizontalAdvance: 45.125 + m_GlyphRect: + m_X: 112 + m_Y: 40 + m_Width: 43 + m_Height: 29 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 141 + m_Metrics: + m_Width: 32.687496 + m_Height: 31.874998 + m_HorizontalBearingX: 2.3749998 + m_HorizontalBearingY: 31.499998 + m_HorizontalAdvance: 37.5625 + m_GlyphRect: + m_X: 58 + m_Y: 115 + m_Width: 33 + m_Height: 32 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 142 + m_Metrics: + m_Width: 32.687496 + m_Height: 31.874998 + m_HorizontalBearingX: 2.3749998 + m_HorizontalBearingY: 31.499998 + m_HorizontalAdvance: 37.5625 + m_GlyphRect: + m_X: 59 + m_Y: 179 + m_Width: 33 + m_Height: 32 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 143 + m_Metrics: + m_Width: 32.687496 + m_Height: 30.312498 + m_HorizontalBearingX: 2.3749998 + m_HorizontalBearingY: 29.937498 + m_HorizontalAdvance: 37.5625 + m_GlyphRect: + m_X: 59 + m_Y: 223 + m_Width: 33 + m_Height: 30 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 144 + m_Metrics: + m_Width: 32.687496 + m_Height: 30.312498 + m_HorizontalBearingX: 2.3749998 + m_HorizontalBearingY: 29.999998 + m_HorizontalAdvance: 37.5625 + m_GlyphRect: + m_X: 103 + m_Y: 193 + m_Width: 33 + m_Height: 30 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 145 + m_Metrics: + m_Width: 32.687496 + m_Height: 29.374998 + m_HorizontalBearingX: 2.3749998 + m_HorizontalBearingY: 28.999998 + m_HorizontalAdvance: 37.5625 + m_GlyphRect: + m_X: 104 + m_Y: 301 + m_Width: 33 + m_Height: 29 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 146 + m_Metrics: + m_Width: 19.812498 + m_Height: 17.124998 + m_HorizontalBearingX: 2.4999998 + m_HorizontalBearingY: 18.312498 + m_HorizontalAdvance: 25.75 + m_GlyphRect: + m_X: 441 + m_Y: 465 + m_Width: 20 + m_Height: 17 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 147 + m_Metrics: + m_Width: 32.687496 + m_Height: 26.187498 + m_HorizontalBearingX: 2.3749998 + m_HorizontalBearingY: 23.812498 + m_HorizontalAdvance: 37 + m_GlyphRect: + m_X: 189 + m_Y: 196 + m_Width: 33 + m_Height: 26 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 148 + m_Metrics: + m_Width: 40.937496 + m_Height: 31.249998 + m_HorizontalBearingX: 0.12499999 + m_HorizontalBearingY: 30.874998 + m_HorizontalAdvance: 41.25 + m_GlyphRect: + m_X: 6 + m_Y: 94 + m_Width: 41 + m_Height: 31 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 149 + m_Metrics: + m_Width: 40.937496 + m_Height: 31.249998 + m_HorizontalBearingX: 0.12499999 + m_HorizontalBearingY: 30.874998 + m_HorizontalAdvance: 41.25 + m_GlyphRect: + m_X: 6 + m_Y: 137 + m_Width: 41 + m_Height: 31 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 150 + m_Metrics: + m_Width: 40.937496 + m_Height: 29.687498 + m_HorizontalBearingX: 0.12499999 + m_HorizontalBearingY: 29.312498 + m_HorizontalAdvance: 41.25 + m_GlyphRect: + m_X: 6 + m_Y: 301 + m_Width: 41 + m_Height: 30 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 151 + m_Metrics: + m_Width: 40.937496 + m_Height: 28.749998 + m_HorizontalBearingX: 0.12499999 + m_HorizontalBearingY: 28.374998 + m_HorizontalAdvance: 41.25 + m_GlyphRect: + m_X: 6 + m_Y: 342 + m_Width: 41 + m_Height: 29 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 152 + m_Metrics: + m_Width: 35.999996 + m_Height: 30.874998 + m_HorizontalBearingX: 0.24999999 + m_HorizontalBearingY: 30.874998 + m_HorizontalAdvance: 36.5 + m_GlyphRect: + m_X: 6 + m_Y: 382 + m_Width: 36 + m_Height: 31 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 153 + m_Metrics: + m_Width: 32.187496 + m_Height: 21.249998 + m_HorizontalBearingX: 2.0624998 + m_HorizontalBearingY: 21.312498 + m_HorizontalAdvance: 36 + m_GlyphRect: + m_X: 348 + m_Y: 202 + m_Width: 32 + m_Height: 21 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 154 + m_Metrics: + m_Width: 31.999998 + m_Height: 24.374998 + m_HorizontalBearingX: 2.1874998 + m_HorizontalBearingY: 23.937498 + m_HorizontalAdvance: 35.5 + m_GlyphRect: + m_X: 191 + m_Y: 345 + m_Width: 32 + m_Height: 24 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 155 + m_Metrics: + m_Width: 29.249998 + m_Height: 25.187498 + m_HorizontalBearingX: 3.0624998 + m_HorizontalBearingY: 24.812498 + m_HorizontalAdvance: 32.625 + m_GlyphRect: + m_X: 192 + m_Y: 275 + m_Width: 29 + m_Height: 25 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 156 + m_Metrics: + m_Width: 29.249998 + m_Height: 25.187498 + m_HorizontalBearingX: 3.0624998 + m_HorizontalBearingY: 24.812498 + m_HorizontalAdvance: 32.625 + m_GlyphRect: + m_X: 305 + m_Y: 219 + m_Width: 29 + m_Height: 25 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 157 + m_Metrics: + m_Width: 29.249998 + m_Height: 23.624998 + m_HorizontalBearingX: 3.0624998 + m_HorizontalBearingY: 23.249998 + m_HorizontalAdvance: 32.625 + m_GlyphRect: + m_X: 347 + m_Y: 248 + m_Width: 29 + m_Height: 24 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 158 + m_Metrics: + m_Width: 29.249998 + m_Height: 23.624998 + m_HorizontalBearingX: 3.0624998 + m_HorizontalBearingY: 23.312498 + m_HorizontalAdvance: 32.625 + m_GlyphRect: + m_X: 259 + m_Y: 317 + m_Width: 29 + m_Height: 24 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 159 + m_Metrics: + m_Width: 29.249998 + m_Height: 22.687498 + m_HorizontalBearingX: 3.0624998 + m_HorizontalBearingY: 22.312498 + m_HorizontalAdvance: 32.625 + m_GlyphRect: + m_X: 300 + m_Y: 322 + m_Width: 29 + m_Height: 23 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 160 + m_Metrics: + m_Width: 29.249998 + m_Height: 26.687498 + m_HorizontalBearingX: 3.0624998 + m_HorizontalBearingY: 26.312498 + m_HorizontalAdvance: 32.625 + m_GlyphRect: + m_X: 213 + m_Y: 80 + m_Width: 29 + m_Height: 27 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 161 + m_Metrics: + m_Width: 45.062496 + m_Height: 15.812499 + m_HorizontalBearingX: 3.0624998 + m_HorizontalBearingY: 15.312499 + m_HorizontalAdvance: 50.75 + m_GlyphRect: + m_X: 360 + m_Y: 39 + m_Width: 45 + m_Height: 16 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 162 + m_Metrics: + m_Width: 24.874998 + m_Height: 23.124998 + m_HorizontalBearingX: 2.4374998 + m_HorizontalBearingY: 15.062499 + m_HorizontalAdvance: 30.375 + m_GlyphRect: + m_X: 481 + m_Y: 409 + m_Width: 25 + m_Height: 23 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 163 + m_Metrics: + m_Width: 25.312498 + m_Height: 25.249998 + m_HorizontalBearingX: 2.4374998 + m_HorizontalBearingY: 24.812498 + m_HorizontalAdvance: 30.3125 + m_GlyphRect: + m_X: 480 + m_Y: 217 + m_Width: 25 + m_Height: 25 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 164 + m_Metrics: + m_Width: 25.312498 + m_Height: 25.249998 + m_HorizontalBearingX: 2.4374998 + m_HorizontalBearingY: 24.812498 + m_HorizontalAdvance: 30.3125 + m_GlyphRect: + m_X: 407 + m_Y: 397 + m_Width: 25 + m_Height: 25 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 165 + m_Metrics: + m_Width: 25.312498 + m_Height: 23.687498 + m_HorizontalBearingX: 2.4374998 + m_HorizontalBearingY: 23.249998 + m_HorizontalAdvance: 30.3125 + m_GlyphRect: + m_X: 296 + m_Y: 421 + m_Width: 25 + m_Height: 24 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 166 + m_Metrics: + m_Width: 25.312498 + m_Height: 22.749998 + m_HorizontalBearingX: 2.4374998 + m_HorizontalBearingY: 22.312498 + m_HorizontalAdvance: 30.3125 + m_GlyphRect: + m_X: 333 + m_Y: 422 + m_Width: 25 + m_Height: 23 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 167 + m_Metrics: + m_Width: 15.812499 + m_Height: 24.374998 + m_HorizontalBearingX: 2.1874998 + m_HorizontalBearingY: 24.374998 + m_HorizontalAdvance: 19.4375 + m_GlyphRect: + m_X: 119 + m_Y: 461 + m_Width: 16 + m_Height: 24 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 168 + m_Metrics: + m_Width: 15.812499 + m_Height: 24.374998 + m_HorizontalBearingX: 2.1874998 + m_HorizontalBearingY: 24.374998 + m_HorizontalAdvance: 19.4375 + m_GlyphRect: + m_X: 146 + m_Y: 461 + m_Width: 16 + m_Height: 24 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 169 + m_Metrics: + m_Width: 15.812499 + m_Height: 22.812498 + m_HorizontalBearingX: 2.1874998 + m_HorizontalBearingY: 22.812498 + m_HorizontalAdvance: 19.4375 + m_GlyphRect: + m_X: 305 + m_Y: 456 + m_Width: 16 + m_Height: 23 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 170 + m_Metrics: + m_Width: 15.812499 + m_Height: 21.874998 + m_HorizontalBearingX: 2.1874998 + m_HorizontalBearingY: 21.874998 + m_HorizontalAdvance: 19.4375 + m_GlyphRect: + m_X: 414 + m_Y: 483 + m_Width: 16 + m_Height: 22 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 171 + m_Metrics: + m_Width: 24.687498 + m_Height: 26.499998 + m_HorizontalBearingX: 1.9999999 + m_HorizontalBearingY: 25.812498 + m_HorizontalAdvance: 29.0625 + m_GlyphRect: + m_X: 79 + m_Y: 423 + m_Width: 25 + m_Height: 26 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 172 + m_Metrics: + m_Width: 36.562496 + m_Height: 23.249998 + m_HorizontalBearingX: 2.1874998 + m_HorizontalBearingY: 23.312498 + m_HorizontalAdvance: 39.125 + m_GlyphRect: + m_X: 450 + m_Y: 73 + m_Width: 37 + m_Height: 23 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 173 + m_Metrics: + m_Width: 27.124998 + m_Height: 25.249998 + m_HorizontalBearingX: 2.4374998 + m_HorizontalBearingY: 24.812498 + m_HorizontalAdvance: 31.9375 + m_GlyphRect: + m_X: 259 + m_Y: 353 + m_Width: 27 + m_Height: 25 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 174 + m_Metrics: + m_Width: 27.124998 + m_Height: 25.249998 + m_HorizontalBearingX: 2.4374998 + m_HorizontalBearingY: 24.812498 + m_HorizontalAdvance: 31.9375 + m_GlyphRect: + m_X: 384 + m_Y: 324 + m_Width: 27 + m_Height: 25 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 175 + m_Metrics: + m_Width: 27.124998 + m_Height: 23.687498 + m_HorizontalBearingX: 2.4374998 + m_HorizontalBearingY: 23.249998 + m_HorizontalAdvance: 31.9375 + m_GlyphRect: + m_X: 423 + m_Y: 330 + m_Width: 27 + m_Height: 24 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 176 + m_Metrics: + m_Width: 27.124998 + m_Height: 23.687498 + m_HorizontalBearingX: 2.4374998 + m_HorizontalBearingY: 23.312498 + m_HorizontalAdvance: 31.9375 + m_GlyphRect: + m_X: 462 + m_Y: 342 + m_Width: 27 + m_Height: 24 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 177 + m_Metrics: + m_Width: 27.124998 + m_Height: 22.749998 + m_HorizontalBearingX: 2.4374998 + m_HorizontalBearingY: 22.312498 + m_HorizontalAdvance: 31.9375 + m_GlyphRect: + m_X: 341 + m_Y: 341 + m_Width: 27 + m_Height: 23 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 178 + m_Metrics: + m_Width: 27.124998 + m_Height: 19.499998 + m_HorizontalBearingX: 2.4374998 + m_HorizontalBearingY: 17.124998 + m_HorizontalAdvance: 32.1875 + m_GlyphRect: + m_X: 380 + m_Y: 361 + m_Width: 27 + m_Height: 19 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 179 + m_Metrics: + m_Width: 34.249996 + m_Height: 24.562498 + m_HorizontalBearingX: 0.24999999 + m_HorizontalBearingY: 24.187498 + m_HorizontalAdvance: 36.25 + m_GlyphRect: + m_X: 346 + m_Y: 132 + m_Width: 34 + m_Height: 25 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 180 + m_Metrics: + m_Width: 34.249996 + m_Height: 24.562498 + m_HorizontalBearingX: 0.24999999 + m_HorizontalBearingY: 24.187498 + m_HorizontalAdvance: 36.25 + m_GlyphRect: + m_X: 392 + m_Y: 138 + m_Width: 34 + m_Height: 25 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 181 + m_Metrics: + m_Width: 34.249996 + m_Height: 22.999998 + m_HorizontalBearingX: 0.24999999 + m_HorizontalBearingY: 22.624998 + m_HorizontalAdvance: 36.25 + m_GlyphRect: + m_X: 438 + m_Y: 140 + m_Width: 34 + m_Height: 23 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 182 + m_Metrics: + m_Width: 34.249996 + m_Height: 22.062498 + m_HorizontalBearingX: 0.24999999 + m_HorizontalBearingY: 21.687498 + m_HorizontalAdvance: 36.25 + m_GlyphRect: + m_X: 254 + m_Y: 151 + m_Width: 34 + m_Height: 22 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 183 + m_Metrics: + m_Width: 30.249998 + m_Height: 31.999998 + m_HorizontalBearingX: 0.68749994 + m_HorizontalBearingY: 24.624998 + m_HorizontalAdvance: 30.875 + m_GlyphRect: + m_X: 149 + m_Y: 234 + m_Width: 30 + m_Height: 32 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 184 + m_Metrics: + m_Width: 33.374996 + m_Height: 27.999998 + m_HorizontalBearingX: -0.99999994 + m_HorizontalBearingY: 21.312498 + m_HorizontalAdvance: 34.875 + m_GlyphRect: + m_X: 104 + m_Y: 341 + m_Width: 33 + m_Height: 28 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 185 + m_Metrics: + m_Width: 30.249998 + m_Height: 29.499998 + m_HorizontalBearingX: 0.68749994 + m_HorizontalBearingY: 22.124998 + m_HorizontalAdvance: 30.875 + m_GlyphRect: + m_X: 191 + m_Y: 234 + m_Width: 30 + m_Height: 29 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 186 + m_Metrics: + m_Width: 22.499998 + m_Height: 2.6249998 + m_HorizontalBearingX: 0.81249994 + m_HorizontalBearingY: 8.624999 + m_HorizontalAdvance: 24.125 + m_GlyphRect: + m_X: 261 + m_Y: 447 + m_Width: 22 + m_Height: 3 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 187 + m_Metrics: + m_Width: 34.187496 + m_Height: 2.6249998 + m_HorizontalBearingX: 0.81249994 + m_HorizontalBearingY: 8.624999 + m_HorizontalAdvance: 35.8125 + m_GlyphRect: + m_X: 346 + m_Y: 234 + m_Width: 34 + m_Height: 3 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 188 + m_Metrics: + m_Width: 5.8124995 + m_Height: 9.374999 + m_HorizontalBearingX: 2.6249998 + m_HorizontalBearingY: 23.437498 + m_HorizontalAdvance: 11.4375 + m_GlyphRect: + m_X: 281 + m_Y: 497 + m_Width: 6 + m_Height: 9 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 189 + m_Metrics: + m_Width: 5.8124995 + m_Height: 9.312499 + m_HorizontalBearingX: 2.9999998 + m_HorizontalBearingY: 23.374998 + m_HorizontalAdvance: 11.4375 + m_GlyphRect: + m_X: 103 + m_Y: 395 + m_Width: 6 + m_Height: 9 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 190 + m_Metrics: + m_Width: 5.8124995 + m_Height: 9.374999 + m_HorizontalBearingX: 2.9999998 + m_HorizontalBearingY: 3.3124998 + m_HorizontalAdvance: 11.4375 + m_GlyphRect: + m_X: 143 + m_Y: 398 + m_Width: 6 + m_Height: 9 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 191 + m_Metrics: + m_Width: 5.8124995 + m_Height: 9.374999 + m_HorizontalBearingX: 2.6249998 + m_HorizontalBearingY: 22.999998 + m_HorizontalAdvance: 11.4375 + m_GlyphRect: + m_X: 498 + m_Y: 491 + m_Width: 6 + m_Height: 9 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 192 + m_Metrics: + m_Width: 13.374999 + m_Height: 9.437499 + m_HorizontalBearingX: 2.6249998 + m_HorizontalBearingY: 23.437498 + m_HorizontalAdvance: 19 + m_GlyphRect: + m_X: 140 + m_Y: 497 + m_Width: 13 + m_Height: 9 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 193 + m_Metrics: + m_Width: 13.312499 + m_Height: 9.437499 + m_HorizontalBearingX: 2.9999998 + m_HorizontalBearingY: 23.124998 + m_HorizontalAdvance: 19 + m_GlyphRect: + m_X: 165 + m_Y: 497 + m_Width: 13 + m_Height: 9 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 194 + m_Metrics: + m_Width: 13.312499 + m_Height: 9.437499 + m_HorizontalBearingX: 2.9999998 + m_HorizontalBearingY: 3.2499998 + m_HorizontalAdvance: 19 + m_GlyphRect: + m_X: 190 + m_Y: 497 + m_Width: 13 + m_Height: 9 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 195 + m_Metrics: + m_Width: 14.874999 + m_Height: 20.624998 + m_HorizontalBearingX: 2.1249998 + m_HorizontalBearingY: 25.562498 + m_HorizontalAdvance: 19.1875 + m_GlyphRect: + m_X: 165 + m_Y: 381 + m_Width: 15 + m_Height: 21 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 196 + m_Metrics: + m_Width: 14.874999 + m_Height: 22.937498 + m_HorizontalBearingX: 2.7499998 + m_HorizontalBearingY: 25.562498 + m_HorizontalAdvance: 20.4375 + m_GlyphRect: + m_X: 388 + m_Y: 483 + m_Width: 15 + m_Height: 23 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 197 + m_Metrics: + m_Width: 9.374999 + m_Height: 6.8124995 + m_HorizontalBearingX: 2.9374998 + m_HorizontalBearingY: 13.624999 + m_HorizontalAdvance: 15.375 + m_GlyphRect: + m_X: 260 + m_Y: 495 + m_Width: 9 + m_Height: 7 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 198 + m_Metrics: + m_Width: 27.687498 + m_Height: 4.0624995 + m_HorizontalBearingX: 2.4374998 + m_HorizontalBearingY: 3.7499998 + m_HorizontalAdvance: 32.5625 + m_GlyphRect: + m_X: 337 + m_Y: 376 + m_Width: 28 + m_Height: 4 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 199 + m_Metrics: + m_Width: 48.749996 + m_Height: 22.562498 + m_HorizontalBearingX: 2.1874998 + m_HorizontalBearingY: 21.562498 + m_HorizontalAdvance: 53.1875 + m_GlyphRect: + m_X: 186 + m_Y: 6 + m_Width: 49 + m_Height: 23 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 200 + m_Metrics: + m_Width: 16.374998 + m_Height: 16.437498 + m_HorizontalBearingX: 1.6874999 + m_HorizontalBearingY: 15.812499 + m_HorizontalAdvance: 20.8125 + m_GlyphRect: + m_X: 332 + m_Y: 490 + m_Width: 16 + m_Height: 16 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 201 + m_Metrics: + m_Width: 16.437498 + m_Height: 16.437498 + m_HorizontalBearingX: 2.6874998 + m_HorizontalBearingY: 15.812499 + m_HorizontalAdvance: 20.8125 + m_GlyphRect: + m_X: 360 + m_Y: 490 + m_Width: 16 + m_Height: 16 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 202 + m_Metrics: + m_Width: 17.249998 + m_Height: 26.062498 + m_HorizontalBearingX: -4.4999995 + m_HorizontalBearingY: 22.937498 + m_HorizontalAdvance: 8.0625 + m_GlyphRect: + m_X: 115 + m_Y: 423 + m_Width: 17 + m_Height: 26 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 203 + m_Metrics: + m_Width: 32.374996 + m_Height: 19.999998 + m_HorizontalBearingX: 1.8749999 + m_HorizontalBearingY: 19.687498 + m_HorizontalAdvance: 37.4375 + m_GlyphRect: + m_X: 148 + m_Y: 309 + m_Width: 32 + m_Height: 20 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 204 + m_Metrics: + m_Width: 35.312496 + m_Height: 9.124999 + m_HorizontalBearingX: 1.4999999 + m_HorizontalBearingY: 21.312498 + m_HorizontalAdvance: 39.25 + m_GlyphRect: + m_X: 58 + m_Y: 159 + m_Width: 35 + m_Height: 9 + m_Scale: 1 + m_AtlasIndex: 0 + m_CharacterTable: + - m_ElementType: 1 + m_Unicode: 32 + m_GlyphIndex: 1 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 33 + m_GlyphIndex: 2 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 34 + m_GlyphIndex: 3 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 35 + m_GlyphIndex: 4 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 36 + m_GlyphIndex: 5 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 37 + m_GlyphIndex: 6 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 38 + m_GlyphIndex: 7 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 39 + m_GlyphIndex: 8 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 40 + m_GlyphIndex: 9 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 41 + m_GlyphIndex: 10 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 42 + m_GlyphIndex: 11 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 43 + m_GlyphIndex: 12 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 44 + m_GlyphIndex: 13 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 45 + m_GlyphIndex: 14 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 46 + m_GlyphIndex: 15 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 47 + m_GlyphIndex: 16 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 48 + m_GlyphIndex: 17 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 49 + m_GlyphIndex: 18 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 50 + m_GlyphIndex: 19 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 51 + m_GlyphIndex: 20 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 52 + m_GlyphIndex: 21 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 53 + m_GlyphIndex: 22 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 54 + m_GlyphIndex: 23 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 55 + m_GlyphIndex: 24 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 56 + m_GlyphIndex: 25 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 57 + m_GlyphIndex: 26 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 58 + m_GlyphIndex: 27 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 59 + m_GlyphIndex: 28 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 60 + m_GlyphIndex: 29 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 61 + m_GlyphIndex: 30 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 62 + m_GlyphIndex: 31 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 63 + m_GlyphIndex: 32 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 64 + m_GlyphIndex: 33 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 65 + m_GlyphIndex: 34 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 66 + m_GlyphIndex: 35 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 67 + m_GlyphIndex: 36 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 68 + m_GlyphIndex: 37 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 69 + m_GlyphIndex: 38 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 70 + m_GlyphIndex: 39 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 71 + m_GlyphIndex: 40 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 72 + m_GlyphIndex: 41 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 73 + m_GlyphIndex: 42 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 74 + m_GlyphIndex: 43 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 75 + m_GlyphIndex: 44 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 76 + m_GlyphIndex: 45 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 77 + m_GlyphIndex: 46 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 78 + m_GlyphIndex: 47 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 79 + m_GlyphIndex: 48 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 80 + m_GlyphIndex: 49 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 81 + m_GlyphIndex: 50 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 82 + m_GlyphIndex: 51 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 83 + m_GlyphIndex: 52 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 84 + m_GlyphIndex: 53 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 85 + m_GlyphIndex: 54 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 86 + m_GlyphIndex: 55 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 87 + m_GlyphIndex: 56 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 88 + m_GlyphIndex: 57 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 89 + m_GlyphIndex: 58 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 90 + m_GlyphIndex: 59 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 91 + m_GlyphIndex: 60 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 92 + m_GlyphIndex: 61 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 93 + m_GlyphIndex: 62 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 94 + m_GlyphIndex: 63 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 95 + m_GlyphIndex: 64 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 97 + m_GlyphIndex: 65 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 98 + m_GlyphIndex: 66 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 99 + m_GlyphIndex: 67 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 100 + m_GlyphIndex: 68 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 101 + m_GlyphIndex: 69 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 102 + m_GlyphIndex: 70 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 103 + m_GlyphIndex: 71 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 104 + m_GlyphIndex: 72 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 105 + m_GlyphIndex: 73 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 106 + m_GlyphIndex: 74 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 107 + m_GlyphIndex: 75 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 108 + m_GlyphIndex: 76 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 109 + m_GlyphIndex: 77 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 110 + m_GlyphIndex: 78 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 111 + m_GlyphIndex: 79 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 112 + m_GlyphIndex: 80 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 113 + m_GlyphIndex: 81 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 114 + m_GlyphIndex: 82 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 115 + m_GlyphIndex: 83 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 116 + m_GlyphIndex: 84 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 117 + m_GlyphIndex: 85 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 118 + m_GlyphIndex: 86 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 119 + m_GlyphIndex: 87 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 120 + m_GlyphIndex: 88 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 121 + m_GlyphIndex: 89 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 122 + m_GlyphIndex: 90 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 123 + m_GlyphIndex: 91 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 124 + m_GlyphIndex: 92 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 125 + m_GlyphIndex: 93 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 126 + m_GlyphIndex: 94 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 160 + m_GlyphIndex: 95 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 161 + m_GlyphIndex: 96 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 162 + m_GlyphIndex: 97 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 163 + m_GlyphIndex: 98 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 164 + m_GlyphIndex: 99 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 165 + m_GlyphIndex: 100 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 166 + m_GlyphIndex: 101 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 167 + m_GlyphIndex: 102 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 169 + m_GlyphIndex: 103 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 170 + m_GlyphIndex: 104 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 171 + m_GlyphIndex: 105 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 172 + m_GlyphIndex: 106 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 173 + m_GlyphIndex: 107 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 174 + m_GlyphIndex: 108 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 176 + m_GlyphIndex: 109 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 177 + m_GlyphIndex: 110 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 178 + m_GlyphIndex: 111 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 179 + m_GlyphIndex: 112 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 181 + m_GlyphIndex: 113 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 182 + m_GlyphIndex: 114 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 183 + m_GlyphIndex: 115 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 185 + m_GlyphIndex: 116 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 186 + m_GlyphIndex: 117 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 187 + m_GlyphIndex: 118 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 188 + m_GlyphIndex: 119 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 189 + m_GlyphIndex: 120 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 190 + m_GlyphIndex: 121 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 191 + m_GlyphIndex: 122 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 192 + m_GlyphIndex: 123 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 193 + m_GlyphIndex: 124 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 194 + m_GlyphIndex: 125 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 195 + m_GlyphIndex: 126 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 196 + m_GlyphIndex: 127 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 197 + m_GlyphIndex: 128 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 198 + m_GlyphIndex: 129 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 199 + m_GlyphIndex: 130 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 200 + m_GlyphIndex: 131 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 201 + m_GlyphIndex: 132 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 202 + m_GlyphIndex: 133 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 203 + m_GlyphIndex: 134 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 204 + m_GlyphIndex: 135 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 205 + m_GlyphIndex: 136 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 206 + m_GlyphIndex: 137 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 207 + m_GlyphIndex: 138 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 208 + m_GlyphIndex: 139 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 209 + m_GlyphIndex: 140 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 210 + m_GlyphIndex: 141 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 211 + m_GlyphIndex: 142 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 212 + m_GlyphIndex: 143 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 213 + m_GlyphIndex: 144 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 214 + m_GlyphIndex: 145 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 215 + m_GlyphIndex: 146 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 216 + m_GlyphIndex: 147 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 217 + m_GlyphIndex: 148 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 218 + m_GlyphIndex: 149 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 219 + m_GlyphIndex: 150 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 220 + m_GlyphIndex: 151 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 221 + m_GlyphIndex: 152 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 222 + m_GlyphIndex: 153 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 223 + m_GlyphIndex: 154 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 224 + m_GlyphIndex: 155 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 225 + m_GlyphIndex: 156 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 226 + m_GlyphIndex: 157 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 227 + m_GlyphIndex: 158 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 228 + m_GlyphIndex: 159 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 229 + m_GlyphIndex: 160 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 230 + m_GlyphIndex: 161 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 231 + m_GlyphIndex: 162 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 232 + m_GlyphIndex: 163 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 233 + m_GlyphIndex: 164 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 234 + m_GlyphIndex: 165 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 235 + m_GlyphIndex: 166 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 236 + m_GlyphIndex: 167 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 237 + m_GlyphIndex: 168 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 238 + m_GlyphIndex: 169 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 239 + m_GlyphIndex: 170 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 240 + m_GlyphIndex: 171 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 241 + m_GlyphIndex: 172 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 242 + m_GlyphIndex: 173 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 243 + m_GlyphIndex: 174 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 244 + m_GlyphIndex: 175 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 245 + m_GlyphIndex: 176 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 246 + m_GlyphIndex: 177 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 248 + m_GlyphIndex: 178 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 249 + m_GlyphIndex: 179 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 250 + m_GlyphIndex: 180 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 251 + m_GlyphIndex: 181 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 252 + m_GlyphIndex: 182 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 253 + m_GlyphIndex: 183 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 254 + m_GlyphIndex: 184 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 255 + m_GlyphIndex: 185 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 8211 + m_GlyphIndex: 186 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 8212 + m_GlyphIndex: 187 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 8216 + m_GlyphIndex: 188 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 8217 + m_GlyphIndex: 189 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 8218 + m_GlyphIndex: 190 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 8219 + m_GlyphIndex: 191 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 8220 + m_GlyphIndex: 192 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 8221 + m_GlyphIndex: 193 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 8222 + m_GlyphIndex: 194 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 8224 + m_GlyphIndex: 195 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 8225 + m_GlyphIndex: 196 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 8226 + m_GlyphIndex: 197 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 8230 + m_GlyphIndex: 198 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 8240 + m_GlyphIndex: 199 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 8249 + m_GlyphIndex: 200 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 8250 + m_GlyphIndex: 201 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 8260 + m_GlyphIndex: 202 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 8364 + m_GlyphIndex: 203 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 8482 + m_GlyphIndex: 204 + m_Scale: 1 + m_AtlasTextures: + - {fileID: 28827487454443518} + m_AtlasTextureIndex: 0 + m_UsedGlyphRects: [] + m_FreeGlyphRects: [] + m_fontInfo: + Name: BioRhyme Expanded + PointSize: 31 + Scale: 1 + CharacterCount: 204 + LineHeight: 48 + Baseline: 0 + Ascender: 34.9375 + CapHeight: 21.312498 + Descender: -13.125 + CenterLine: 0 + SuperscriptOffset: 34.9375 + SubscriptOffset: -3.1000001 + SubSize: 0.5 + Underline: -3.1000001 + UnderlineThickness: 1.5500001 + strikethrough: 7.931818 + strikethroughThickness: 1.5500001 + TabWidth: 136.25 + Padding: 5 + AtlasWidth: 512 + AtlasHeight: 512 + atlas: {fileID: 28827487454443518} + m_AtlasWidth: 512 + m_AtlasHeight: 512 + m_AtlasPadding: 5 + m_AtlasRenderMode: 16426 + m_glyphInfoList: + - id: 32 + x: 6 + y: 517 + width: 13.625 + height: 48.0625 + xOffset: 0 + yOffset: 34.9375 + xAdvance: 13.625 + scale: 1 + - id: 33 + x: 498 + y: 416 + width: 5.6874995 + height: 23.812498 + xOffset: 3.1874998 + yOffset: 23.437498 + xAdvance: 12.125 + scale: 1 + - id: 34 + x: 117 + y: 6 + width: 11.187499 + height: 8.437499 + xOffset: 2.6249998 + yOffset: 22.937498 + xAdvance: 15.875 + scale: 1 + - id: 35 + x: 149 + y: 214 + width: 31.749998 + height: 20.062498 + xOffset: 0.56249994 + yOffset: 20.062498 + xAdvance: 32.875 + scale: 1 + - id: 36 + x: 215 + y: 443 + width: 27.124998 + height: 28.249998 + xOffset: 4.3749995 + yOffset: 23.749998 + xAdvance: 33.9375 + scale: 1 + - id: 37 + x: 192 + y: 179 + width: 33.812496 + height: 21.624998 + xOffset: 1.9999999 + yOffset: 20.374998 + xAdvance: 37.875 + scale: 1 + - id: 38 + x: 214 + y: 328 + width: 28.374998 + height: 22.062498 + xOffset: 1.6874999 + yOffset: 21.624998 + xAdvance: 31 + scale: 1 + - id: 39 + x: 501 + y: 151 + width: 4.4374995 + height: 8.562499 + xOffset: 2.6249998 + yOffset: 22.999998 + xAdvance: 9.125 + scale: 1 + - id: 40 + x: 189 + y: 403 + width: 12.062499 + height: 30.624998 + xOffset: 2.9999998 + yOffset: 25.937498 + xAdvance: 15 + scale: 1 + - id: 41 + x: 190 + y: 361 + width: 12.062499 + height: 30.624998 + xOffset: -0.12499999 + yOffset: 25.937498 + xAdvance: 15 + scale: 1 + - id: 42 + x: 305 + y: 8 + width: 15.812499 + height: 13.374999 + xOffset: 1.1249999 + yOffset: 25.562498 + xAdvance: 18.125 + scale: 1 + - id: 43 + x: 228 + y: 73 + width: 21.312498 + height: 17.124998 + xOffset: 2.1249998 + yOffset: 18.187498 + xAdvance: 25.625 + scale: 1 + - id: 44 + x: 215 + y: 6 + width: 5.8124995 + height: 9.374999 + xOffset: 2.9999998 + yOffset: 3.3124998 + xAdvance: 11.4375 + scale: 1 + - id: 45 + x: 104 + y: 129 + width: 11.499999 + height: 2.6249998 + xOffset: 0.81249994 + yOffset: 8.687499 + xAdvance: 13.125 + scale: 1 + - id: 46 + x: 127 + y: 127 + width: 5.7499995 + height: 4.0624995 + xOffset: 2.4374998 + yOffset: 3.7499998 + xAdvance: 10.625 + scale: 1 + - id: 47 + x: 161 + y: 361 + width: 17.874998 + height: 26.187498 + xOffset: 0.56249994 + yOffset: 22.999998 + xAdvance: 19.6875 + scale: 1 + - id: 48 + x: 347 + y: 209 + width: 27.687498 + height: 19.999998 + xOffset: 1.8124999 + yOffset: 19.687498 + xAdvance: 31.4375 + scale: 1 + - id: 49 + x: 173 + y: 27 + width: 16.812498 + height: 19.374998 + xOffset: 2.6249998 + yOffset: 19.374998 + xAdvance: 20.1875 + scale: 1 + - id: 50 + x: 419 + y: 127 + width: 25.187498 + height: 19.624998 + xOffset: 1.8124999 + yOffset: 19.687498 + xAdvance: 29.625 + scale: 1 + - id: 51 + x: 456 + y: 115 + width: 25.749998 + height: 19.937498 + xOffset: 1.5624999 + yOffset: 19.687498 + xAdvance: 29.625 + scale: 1 + - id: 52 + x: 386 + y: 200 + width: 27.499998 + height: 19.999998 + xOffset: 0.68749994 + yOffset: 19.687498 + xAdvance: 28.625 + scale: 1 + - id: 53 + x: 370 + y: 68 + width: 24.374998 + height: 19.687498 + xOffset: 1.7499999 + yOffset: 19.249998 + xAdvance: 28.5 + scale: 1 + - id: 54 + x: 259 + y: 103 + width: 25.187498 + height: 19.937498 + xOffset: 1.9374999 + yOffset: 19.624998 + xAdvance: 28.875 + scale: 1 + - id: 55 + x: 296 + y: 102 + width: 25.624998 + height: 19.562498 + xOffset: 1.9999999 + yOffset: 19.124998 + xAdvance: 28.5625 + scale: 1 + - id: 56 + x: 425 + y: 193 + width: 27.187498 + height: 20.062498 + xOffset: 2.2499998 + yOffset: 19.687498 + xAdvance: 31.6875 + scale: 1 + - id: 57 + x: 333 + y: 101 + width: 25.249998 + height: 19.999998 + xOffset: 1.7499999 + yOffset: 19.562498 + xAdvance: 28.9375 + scale: 1 + - id: 58 + x: 386 + y: 41 + width: 5.6874995 + height: 15.312499 + xOffset: 2.8124998 + yOffset: 14.999999 + xAdvance: 11.4375 + scale: 1 + - id: 59 + x: 197 + y: 328 + width: 5.8124995 + height: 21.437498 + xOffset: 3.1249998 + yOffset: 14.999999 + xAdvance: 11.8125 + scale: 1 + - id: 60 + x: 228 + y: 102 + width: 19.687498 + height: 17.062498 + xOffset: 1.1874999 + yOffset: 18.187498 + xAdvance: 23.6875 + scale: 1 + - id: 61 + x: 475 + y: 58 + width: 21.999998 + height: 10.874999 + xOffset: 2.8124998 + yOffset: 15.062499 + xAdvance: 27.625 + scale: 1 + - id: 62 + x: 173 + y: 58 + width: 19.624998 + height: 17.062498 + xOffset: 2.8124998 + yOffset: 18.187498 + xAdvance: 23.6875 + scale: 1 + - id: 63 + x: 232 + y: 39 + width: 16.624998 + height: 22.062498 + xOffset: 1.1874999 + yOffset: 21.687498 + xAdvance: 19.125 + scale: 1 + - id: 64 + x: 59 + y: 221 + width: 33.562496 + height: 26.374998 + xOffset: 1.9999999 + yOffset: 20.687498 + xAdvance: 37.5625 + scale: 1 + - id: 65 + x: 358 + y: 484 + width: 41.999996 + height: 21.249998 + xOffset: -0.24999999 + yOffset: 21.312498 + xAdvance: 41.4375 + scale: 1 + - id: 66 + x: 254 + y: 411 + width: 34.124996 + height: 21.249998 + xOffset: 2.0624998 + yOffset: 21.312498 + xAdvance: 39.3125 + scale: 1 + - id: 67 + x: 306 + y: 305 + width: 30.999998 + height: 22.062498 + xOffset: 2.3749998 + yOffset: 21.749998 + xAdvance: 36.25 + scale: 1 + - id: 68 + x: 348 + y: 391 + width: 35.374996 + height: 21.249998 + xOffset: 2.0624998 + yOffset: 21.312498 + xAdvance: 39.875 + scale: 1 + - id: 69 + x: 261 + y: 306 + width: 33.624996 + height: 21.249998 + xOffset: 2.0624998 + yOffset: 21.312498 + xAdvance: 39.625 + scale: 1 + - id: 70 + x: 261 + y: 239 + width: 32.624996 + height: 21.249998 + xOffset: 2.0624998 + yOffset: 21.312498 + xAdvance: 37 + scale: 1 + - id: 71 + x: 305 + y: 234 + width: 30.874998 + height: 22.062498 + xOffset: 2.3124998 + yOffset: 21.749998 + xAdvance: 36.5625 + scale: 1 + - id: 72 + x: 411 + y: 484 + width: 41.937496 + height: 21.249998 + xOffset: 2.0624998 + yOffset: 21.312498 + xAdvance: 46.125 + scale: 1 + - id: 73 + x: 232 + y: 6 + width: 16.874998 + height: 21.249998 + xOffset: 2.0624998 + yOffset: 21.312498 + xAdvance: 21 + scale: 1 + - id: 74 + x: 370 + y: 99 + width: 25.187498 + height: 21.624998 + xOffset: 0.87499994 + yOffset: 21.312498 + xAdvance: 26.3125 + scale: 1 + - id: 75 + x: 468 + y: 451 + width: 37.249996 + height: 21.249998 + xOffset: 2.0624998 + yOffset: 21.312498 + xAdvance: 40.125 + scale: 1 + - id: 76 + x: 261 + y: 206 + width: 30.374998 + height: 21.249998 + xOffset: 2.0624998 + yOffset: 21.312498 + xAdvance: 34.4375 + scale: 1 + - id: 77 + x: 246 + y: 484 + width: 46.812496 + height: 21.437498 + xOffset: 2.0624998 + yOffset: 21.312498 + xAdvance: 50.9375 + scale: 1 + - id: 78 + x: 304 + y: 484 + width: 42.687496 + height: 21.437498 + xOffset: 2.0624998 + yOffset: 21.312498 + xAdvance: 45.125 + scale: 1 + - id: 79 + x: 261 + y: 272 + width: 32.687496 + height: 22.062498 + xOffset: 2.3749998 + yOffset: 21.749998 + xAdvance: 37.5625 + scale: 1 + - id: 80 + x: 105 + y: 331 + width: 34.312496 + height: 21.249998 + xOffset: 2.0624998 + yOffset: 21.312498 + xAdvance: 38.1875 + scale: 1 + - id: 81 + x: 254 + y: 444 + width: 34.937496 + height: 28.187498 + xOffset: 2.3749998 + yOffset: 21.749998 + xAdvance: 37.5 + scale: 1 + - id: 82 + x: 417 + y: 451 + width: 39.874996 + height: 21.687498 + xOffset: 2.0624998 + yOffset: 21.312498 + xAdvance: 42.3125 + scale: 1 + - id: 83 + x: 298 + y: 133 + width: 27.937498 + height: 22.124998 + xOffset: 4.0624995 + yOffset: 21.687498 + xAdvance: 34.75 + scale: 1 + - id: 84 + x: 348 + y: 322 + width: 32.874996 + height: 21.249998 + xOffset: 1.8124999 + yOffset: 21.312498 + xAdvance: 36.625 + scale: 1 + - id: 85 + x: 464 + y: 484 + width: 40.937496 + height: 21.624998 + xOffset: 0.12499999 + yOffset: 21.312498 + xAdvance: 41.25 + scale: 1 + - id: 86 + x: 352 + y: 424 + width: 38.437496 + height: 21.624998 + xOffset: -0.24999999 + yOffset: 21.312498 + xAdvance: 37.875 + scale: 1 + - id: 87 + x: 123 + y: 484 + width: 51.437496 + height: 21.624998 + xOffset: -0.24999999 + yOffset: 21.312498 + xAdvance: 51 + scale: 1 + - id: 88 + x: 395 + y: 385 + width: 35.437496 + height: 21.249998 + xOffset: 1.5624999 + yOffset: 21.312498 + xAdvance: 38.5625 + scale: 1 + - id: 89 + x: 442 + y: 383 + width: 35.999996 + height: 21.249998 + xOffset: 0.24999999 + yOffset: 21.312498 + xAdvance: 36.5 + scale: 1 + - id: 90 + x: 464 + y: 181 + width: 27.937498 + height: 21.249998 + xOffset: 3.8749998 + yOffset: 21.312498 + xAdvance: 35.5625 + scale: 1 + - id: 91 + x: 237 + y: 172 + width: 10.562499 + height: 30.062498 + xOffset: 5.6249995 + yOffset: 25.749998 + xAdvance: 15.5 + scale: 1 + - id: 92 + x: 51 + y: 21 + width: 18.062498 + height: 26.187498 + xOffset: 1.0624999 + yOffset: 22.999998 + xAdvance: 19.6875 + scale: 1 + - id: 93 + x: 53 + y: 99 + width: 10.562499 + height: 30.062498 + xOffset: -0.74999994 + yOffset: 25.749998 + xAdvance: 15.5 + scale: 1 + - id: 94 + x: 441 + y: 7 + width: 16.499998 + height: 11.874999 + xOffset: 0.74999994 + yOffset: 25.249998 + xAdvance: 18.0625 + scale: 1 + - id: 95 + x: 51 + y: 7 + width: 18.249998 + height: 2.6249998 + xOffset: -0.62499994 + yOffset: -2.7499998 + xAdvance: 17.125 + scale: 1 + - id: 97 + x: 434 + y: 256 + width: 29.249998 + height: 15.374999 + xOffset: 3.0624998 + yOffset: 14.999999 + xAdvance: 32.625 + scale: 1 + - id: 98 + x: 392 + y: 316 + width: 33.499996 + height: 21.687498 + xOffset: -0.99999994 + yOffset: 21.312498 + xAdvance: 34.9375 + scale: 1 + - id: 99 + x: 406 + y: 63 + width: 24.874998 + height: 15.437499 + xOffset: 2.4374998 + yOffset: 15.062499 + xAdvance: 30.375 + scale: 1 + - id: 100 + x: 437 + y: 283 + width: 31.999998 + height: 21.687498 + xOffset: 2.4374998 + yOffset: 21.312498 + xAdvance: 36.125 + scale: 1 + - id: 101 + x: 444 + y: 88 + width: 25.312498 + height: 15.437499 + xOffset: 2.4374998 + yOffset: 15.062499 + xAdvance: 30.3125 + scale: 1 + - id: 102 + x: 484 + y: 338 + width: 21.749998 + height: 22.749998 + xOffset: 2.1874998 + yOffset: 22.749998 + xAdvance: 23.4375 + scale: 1 + - id: 103 + x: 81 + y: 26 + width: 26.749998 + height: 25.749998 + xOffset: 2.1249998 + yOffset: 18.812498 + xAdvance: 30.625 + scale: 1 + - id: 104 + x: 402 + y: 418 + width: 36.624996 + height: 21.249998 + xOffset: 1.0624999 + yOffset: 21.312498 + xAdvance: 38 + scale: 1 + - id: 105 + x: 332 + y: 34 + width: 15.812499 + height: 21.687498 + xOffset: 2.1874998 + yOffset: 21.749998 + xAdvance: 19.4375 + scale: 1 + - id: 106 + x: 234 + y: 131 + width: 13.562499 + height: 29.062498 + xOffset: -0.87499994 + yOffset: 21.749998 + xAdvance: 17.125 + scale: 1 + - id: 107 + x: 300 + y: 339 + width: 33.499996 + height: 22.062498 + xOffset: 1.0624999 + yOffset: 21.312498 + xAdvance: 35.9375 + scale: 1 + - id: 108 + x: 359 + y: 34 + width: 15.812499 + height: 21.249998 + xOffset: 1.0624999 + yOffset: 21.312498 + xAdvance: 18.25 + scale: 1 + - id: 109 + x: 300 + y: 458 + width: 48.812496 + height: 14.999999 + xOffset: 2.1874998 + yOffset: 14.999999 + xAdvance: 51.375 + scale: 1 + - id: 110 + x: 300 + y: 406 + width: 36.562496 + height: 14.999999 + xOffset: 2.1874998 + yOffset: 14.999999 + xAdvance: 39.125 + scale: 1 + - id: 111 + x: 345 + y: 182 + width: 27.124998 + height: 15.437499 + xOffset: 2.4374998 + yOffset: 15.062499 + xAdvance: 31.9375 + scale: 1 + - id: 112 + x: 437 + y: 316 + width: 33.437496 + height: 21.749998 + xOffset: 1.2499999 + yOffset: 15.062499 + xAdvance: 37.1875 + scale: 1 + - id: 113 + x: 392 + y: 283 + width: 33.437496 + height: 21.812498 + xOffset: 2.4374998 + yOffset: 15.124999 + xAdvance: 36.6875 + scale: 1 + - id: 114 + x: 191 + y: 117 + width: 25.187498 + height: 14.999999 + xOffset: 2.1874998 + yOffset: 14.999999 + xAdvance: 30.25 + scale: 1 + - id: 115 + x: 261 + y: 76 + width: 23.687498 + height: 15.437499 + xOffset: 3.2499998 + yOffset: 15.062499 + xAdvance: 30 + scale: 1 + - id: 116 + x: 201 + y: 27 + width: 19.499998 + height: 19.062498 + xOffset: 0.56249994 + yOffset: 18.687498 + xAdvance: 21.5 + scale: 1 + - id: 117 + x: 103 + y: 263 + width: 34.249996 + height: 14.999999 + xOffset: 0.24999999 + yOffset: 14.624999 + xAdvance: 36.25 + scale: 1 + - id: 118 + x: 392 + y: 257 + width: 30.499998 + height: 14.999999 + xOffset: 0.24999999 + yOffset: 14.624999 + xAdvance: 31.0625 + scale: 1 + - id: 119 + x: 300 + y: 432 + width: 40.499996 + height: 14.999999 + xOffset: 0.24999999 + yOffset: 14.624999 + xAdvance: 41 + scale: 1 + - id: 120 + x: 388 + y: 231 + width: 29.124998 + height: 14.624999 + xOffset: 2.1249998 + yOffset: 14.624999 + xAdvance: 33.5625 + scale: 1 + - id: 121 + x: 303 + y: 201 + width: 30.249998 + height: 21.999998 + xOffset: 0.68749994 + yOffset: 14.624999 + xAdvance: 30.875 + scale: 1 + - id: 122 + x: 191 + y: 90 + width: 25.624998 + height: 15.437499 + xOffset: 2.9999998 + yOffset: 15.062499 + xAdvance: 30.75 + scale: 1 + - id: 123 + x: 489 + y: 372 + width: 16.187498 + height: 32.624996 + xOffset: 3.7499998 + yOffset: 26.999998 + xAdvance: 20 + scale: 1 + - id: 124 + x: 102 + y: 365 + width: 2.9374998 + height: 31.937498 + xOffset: 4.4999995 + yOffset: 25.999998 + xAdvance: 12 + scale: 1 + - id: 125 + x: 161 + y: 399 + width: 16.187498 + height: 32.624996 + xOffset: 0 + yOffset: 26.999998 + xAdvance: 20 + scale: 1 + - id: 126 + x: 81 + y: 6 + width: 24.687498 + height: 8.499999 + xOffset: 2.3749998 + yOffset: 14.124999 + xAdvance: 29.5625 + scale: 1 + - id: 160 + x: 6 + y: 517 + width: 0 + height: 0 + xOffset: 0 + yOffset: 0 + xAdvance: 13.625 + scale: 1 + - id: 161 + x: 288 + y: 27 + width: 5.7499995 + height: 23.874998 + xOffset: 3.1874998 + yOffset: 22.124998 + xAdvance: 12.125 + scale: 1 + - id: 162 + x: 482 + y: 307 + width: 23.687498 + height: 19.999998 + xOffset: 2.8124998 + yOffset: 19.687498 + xAdvance: 29.1875 + scale: 1 + - id: 163 + x: 429 + y: 225 + width: 28.062498 + height: 19.999998 + xOffset: 2.3749998 + yOffset: 19.687498 + xAdvance: 31.5 + scale: 1 + - id: 164 + x: 233 + y: 214 + width: 16.499998 + height: 16.999998 + xOffset: 2.9374998 + yOffset: 18.187498 + xAdvance: 22.5 + scale: 1 + - id: 165 + x: 151 + y: 330 + width: 34.687496 + height: 19.249998 + xOffset: 1.1249999 + yOffset: 19.249998 + xAdvance: 37.0625 + scale: 1 + - id: 166 + x: 503 + y: 171 + width: 2.9374998 + height: 31.937498 + xOffset: 4.4999995 + yOffset: 25.999998 + xAdvance: 12 + scale: 1 + - id: 167 + x: 214 + y: 362 + width: 28.499998 + height: 31.874998 + xOffset: 2.8749998 + yOffset: 21.749998 + xAdvance: 34.0625 + scale: 1 + - id: 169 + x: 58 + y: 142 + width: 34.687496 + height: 27.999998 + xOffset: 1.9999999 + yOffset: 21.249998 + xAdvance: 38.75 + scale: 1 + - id: 170 + x: 472 + y: 33 + width: 17.562498 + height: 13.062499 + xOffset: 2.1249998 + yOffset: 21.687498 + xAdvance: 20.4375 + scale: 1 + - id: 171 + x: 475 + y: 242 + width: 28.124998 + height: 16.499998 + xOffset: 1.6874999 + yOffset: 15.812499 + xAdvance: 32.5625 + scale: 1 + - id: 172 + x: 403 + y: 40 + width: 21.187498 + height: 11.437499 + xOffset: 1.6249999 + yOffset: 13.562499 + xAdvance: 25.5625 + scale: 1 + - id: 173 + x: 120 + y: 113 + width: 11.499999 + height: 2.6249998 + xOffset: 0.81249994 + yOffset: 8.687499 + xAdvance: 13.125 + scale: 1 + - id: 174 + x: 58 + y: 181 + width: 34.687496 + height: 28.249998 + xOffset: 1.9999999 + yOffset: 21.124998 + xAdvance: 38.75 + scale: 1 + - id: 176 + x: 493 + y: 124 + width: 12.374999 + height: 10.312499 + xOffset: 0.99999994 + yOffset: 25.124998 + xAdvance: 14.375 + scale: 1 + - id: 177 + x: 442 + y: 59 + width: 21.187498 + height: 17.749998 + xOffset: 2.2499998 + yOffset: 19.312498 + xAdvance: 25.6875 + scale: 1 + - id: 178 + x: 165 + y: 87 + width: 14.437499 + height: 11.562499 + xOffset: 1.1874999 + yOffset: 24.562498 + xAdvance: 17.125 + scale: 1 + - id: 179 + x: 472 + y: 10 + width: 14.749999 + height: 11.749999 + xOffset: 1.7499999 + yOffset: 24.437498 + xAdvance: 18 + scale: 1 + - id: 181 + x: 300 + y: 373 + width: 34.312496 + height: 21.374998 + xOffset: 1.2499999 + yOffset: 14.624999 + xAdvance: 37.375 + scale: 1 + - id: 182 + x: 147 + y: 289 + width: 30.187498 + height: 29.249998 + xOffset: 1.5624999 + yOffset: 21.749998 + xAdvance: 37.1875 + scale: 1 + - id: 183 + x: 144 + y: 126 + width: 5.7499995 + height: 4.1249995 + xOffset: 2.4374998 + yOffset: 12.249999 + xAdvance: 10.625 + scale: 1 + - id: 185 + x: 204 + y: 67 + width: 10.374999 + height: 11.374999 + xOffset: 1.6874999 + yOffset: 24.437498 + xAdvance: 12.625 + scale: 1 + - id: 186 + x: 144 + y: 63 + width: 16.249998 + height: 12.999999 + xOffset: 1.6874999 + yOffset: 21.624998 + xAdvance: 19.625 + scale: 1 + - id: 187 + x: 469 + y: 214 + width: 28.124998 + height: 16.499998 + xOffset: 2.6874998 + yOffset: 15.812499 + xAdvance: 32.5625 + scale: 1 + - id: 188 + x: 116 + y: 364 + width: 33.874996 + height: 26.062498 + xOffset: 1.6874999 + yOffset: 22.937498 + xAdvance: 35.1875 + scale: 1 + - id: 189 + x: 254 + y: 373 + width: 34.937496 + height: 26.062498 + xOffset: 1.6874999 + yOffset: 22.937498 + xAdvance: 38.25 + scale: 1 + - id: 190 + x: 166 + y: 445 + width: 37.999996 + height: 26.062498 + xOffset: 1.7499999 + yOffset: 22.937498 + xAdvance: 39.3125 + scale: 1 + - id: 191 + x: 260 + y: 28 + width: 16.624998 + height: 22.062498 + xOffset: 0.81249994 + yOffset: 21.374998 + xAdvance: 18.625 + scale: 1 + - id: 192 + x: 6 + y: 430 + width: 41.999996 + height: 31.062498 + xOffset: -0.24999999 + yOffset: 31.062498 + xAdvance: 41.4375 + scale: 1 + - id: 193 + x: 59 + y: 441 + width: 41.999996 + height: 31.062498 + xOffset: -0.24999999 + yOffset: 31.062498 + xAdvance: 41.4375 + scale: 1 + - id: 194 + x: 6 + y: 303 + width: 41.999996 + height: 29.499998 + xOffset: -0.24999999 + yOffset: 29.499998 + xAdvance: 41.4375 + scale: 1 + - id: 195 + x: 6 + y: 262 + width: 41.999996 + height: 29.499998 + xOffset: -0.24999999 + yOffset: 29.562498 + xAdvance: 41.4375 + scale: 1 + - id: 196 + x: 6 + y: 222 + width: 41.999996 + height: 28.562498 + xOffset: -0.24999999 + yOffset: 28.562498 + xAdvance: 41.4375 + scale: 1 + - id: 197 + x: 6 + y: 473 + width: 41.999996 + height: 32.562496 + xOffset: -0.24999999 + yOffset: 32.562496 + xAdvance: 41.4375 + scale: 1 + - id: 198 + x: 59 + y: 484 + width: 52.187496 + height: 21.249998 + xOffset: -0.18749999 + yOffset: 21.312498 + xAdvance: 55.9375 + scale: 1 + - id: 199 + x: 149 + y: 142 + width: 30.999998 + height: 29.749998 + xOffset: 2.3749998 + yOffset: 21.749998 + xAdvance: 36.25 + scale: 1 + - id: 200 + x: 6 + y: 56 + width: 33.624996 + height: 31.062498 + xOffset: 2.0624998 + yOffset: 31.062498 + xAdvance: 39.625 + scale: 1 + - id: 201 + x: 6 + y: 13 + width: 33.624996 + height: 31.062498 + xOffset: 2.0624998 + yOffset: 31.062498 + xAdvance: 39.625 + scale: 1 + - id: 202 + x: 116 + y: 402 + width: 33.624996 + height: 29.499998 + xOffset: 2.0624998 + yOffset: 29.499998 + xAdvance: 39.625 + scale: 1 + - id: 203 + x: 104 + y: 223 + width: 33.624996 + height: 28.562498 + xOffset: 2.0624998 + yOffset: 28.562498 + xAdvance: 39.625 + scale: 1 + - id: 204 + x: 233 + y: 285 + width: 16.874998 + height: 31.062498 + xOffset: 2.0624998 + yOffset: 31.062498 + xAdvance: 21 + scale: 1 + - id: 205 + x: 233 + y: 242 + width: 16.874998 + height: 31.062498 + xOffset: 2.0624998 + yOffset: 31.062498 + xAdvance: 21 + scale: 1 + - id: 206 + x: 75 + y: 101 + width: 16.874998 + height: 29.499998 + xOffset: 2.0624998 + yOffset: 29.499998 + xAdvance: 21 + scale: 1 + - id: 207 + x: 51 + y: 59 + width: 16.874998 + height: 28.562498 + xOffset: 2.0624998 + yOffset: 28.562498 + xAdvance: 21 + scale: 1 + - id: 208 + x: 59 + y: 408 + width: 35.749996 + height: 21.249998 + xOffset: 1.6249999 + yOffset: 21.312498 + xAdvance: 39.5625 + scale: 1 + - id: 209 + x: 112 + y: 443 + width: 42.687496 + height: 29.312498 + xOffset: 2.0624998 + yOffset: 29.187498 + xAdvance: 45.125 + scale: 1 + - id: 210 + x: 58 + y: 365 + width: 32.687496 + height: 31.874998 + xOffset: 2.3749998 + yOffset: 31.499998 + xAdvance: 37.5625 + scale: 1 + - id: 211 + x: 59 + y: 301 + width: 32.687496 + height: 31.874998 + xOffset: 2.3749998 + yOffset: 31.499998 + xAdvance: 37.5625 + scale: 1 + - id: 212 + x: 59 + y: 259 + width: 32.687496 + height: 30.312498 + xOffset: 2.3749998 + yOffset: 29.937498 + xAdvance: 37.5625 + scale: 1 + - id: 213 + x: 103 + y: 289 + width: 32.687496 + height: 30.312498 + xOffset: 2.3749998 + yOffset: 29.999998 + xAdvance: 37.5625 + scale: 1 + - id: 214 + x: 104 + y: 182 + width: 32.687496 + height: 29.374998 + xOffset: 2.3749998 + yOffset: 28.999998 + xAdvance: 37.5625 + scale: 1 + - id: 215 + x: 441 + y: 30 + width: 19.812498 + height: 17.124998 + xOffset: 2.4999998 + yOffset: 18.312498 + xAdvance: 25.75 + scale: 1 + - id: 216 + x: 189 + y: 290 + width: 32.687496 + height: 26.187498 + xOffset: 2.3749998 + yOffset: 23.812498 + xAdvance: 37 + scale: 1 + - id: 217 + x: 6 + y: 387 + width: 40.937496 + height: 31.249998 + xOffset: 0.12499999 + yOffset: 30.874998 + xAdvance: 41.25 + scale: 1 + - id: 218 + x: 6 + y: 344 + width: 40.937496 + height: 31.249998 + xOffset: 0.12499999 + yOffset: 30.874998 + xAdvance: 41.25 + scale: 1 + - id: 219 + x: 6 + y: 181 + width: 40.937496 + height: 29.687498 + xOffset: 0.12499999 + yOffset: 29.312498 + xAdvance: 41.25 + scale: 1 + - id: 220 + x: 6 + y: 141 + width: 40.937496 + height: 28.749998 + xOffset: 0.12499999 + yOffset: 28.374998 + xAdvance: 41.25 + scale: 1 + - id: 221 + x: 6 + y: 99 + width: 35.999996 + height: 30.874998 + xOffset: 0.24999999 + yOffset: 30.874998 + xAdvance: 36.5 + scale: 1 + - id: 222 + x: 348 + y: 289 + width: 32.187496 + height: 21.249998 + xOffset: 2.0624998 + yOffset: 21.312498 + xAdvance: 36 + scale: 1 + - id: 223 + x: 191 + y: 143 + width: 31.999998 + height: 24.374998 + xOffset: 2.1874998 + yOffset: 23.937498 + xAdvance: 35.5 + scale: 1 + - id: 224 + x: 192 + y: 212 + width: 29.249998 + height: 25.187498 + xOffset: 3.0624998 + yOffset: 24.812498 + xAdvance: 32.625 + scale: 1 + - id: 225 + x: 305 + y: 268 + width: 29.249998 + height: 25.187498 + xOffset: 3.0624998 + yOffset: 24.812498 + xAdvance: 32.625 + scale: 1 + - id: 226 + x: 347 + y: 240 + width: 29.249998 + height: 23.624998 + xOffset: 3.0624998 + yOffset: 23.249998 + xAdvance: 32.625 + scale: 1 + - id: 227 + x: 259 + y: 171 + width: 29.249998 + height: 23.624998 + xOffset: 3.0624998 + yOffset: 23.312498 + xAdvance: 32.625 + scale: 1 + - id: 228 + x: 300 + y: 167 + width: 29.249998 + height: 22.687498 + xOffset: 3.0624998 + yOffset: 22.312498 + xAdvance: 32.625 + scale: 1 + - id: 229 + x: 213 + y: 405 + width: 29.249998 + height: 26.687498 + xOffset: 3.0624998 + yOffset: 26.312498 + xAdvance: 32.625 + scale: 1 + - id: 230 + x: 360 + y: 457 + width: 45.062496 + height: 15.812499 + xOffset: 3.0624998 + yOffset: 15.312499 + xAdvance: 50.75 + scale: 1 + - id: 231 + x: 481 + y: 80 + width: 24.874998 + height: 23.124998 + xOffset: 2.4374998 + yOffset: 15.062499 + xAdvance: 30.375 + scale: 1 + - id: 232 + x: 480 + y: 270 + width: 25.312498 + height: 25.249998 + xOffset: 2.4374998 + yOffset: 24.812498 + xAdvance: 30.3125 + scale: 1 + - id: 233 + x: 407 + y: 90 + width: 25.312498 + height: 25.249998 + xOffset: 2.4374998 + yOffset: 24.812498 + xAdvance: 30.3125 + scale: 1 + - id: 234 + x: 296 + y: 67 + width: 25.312498 + height: 23.687498 + xOffset: 2.4374998 + yOffset: 23.249998 + xAdvance: 30.3125 + scale: 1 + - id: 235 + x: 333 + y: 67 + width: 25.312498 + height: 22.749998 + xOffset: 2.4374998 + yOffset: 22.312498 + xAdvance: 30.3125 + scale: 1 + - id: 236 + x: 119 + y: 27 + width: 15.812499 + height: 24.374998 + xOffset: 2.1874998 + yOffset: 24.374998 + xAdvance: 19.4375 + scale: 1 + - id: 237 + x: 146 + y: 27 + width: 15.812499 + height: 24.374998 + xOffset: 2.1874998 + yOffset: 24.374998 + xAdvance: 19.4375 + scale: 1 + - id: 238 + x: 305 + y: 33 + width: 15.812499 + height: 22.812498 + xOffset: 2.1874998 + yOffset: 22.812498 + xAdvance: 19.4375 + scale: 1 + - id: 239 + x: 414 + y: 7 + width: 15.812499 + height: 21.874998 + xOffset: 2.1874998 + yOffset: 21.874998 + xAdvance: 19.4375 + scale: 1 + - id: 240 + x: 79 + y: 63 + width: 24.687498 + height: 26.499998 + xOffset: 1.9999999 + yOffset: 25.812498 + xAdvance: 29.0625 + scale: 1 + - id: 241 + x: 450 + y: 416 + width: 36.562496 + height: 23.249998 + xOffset: 2.1874998 + yOffset: 23.312498 + xAdvance: 39.125 + scale: 1 + - id: 242 + x: 259 + y: 134 + width: 27.124998 + height: 25.249998 + xOffset: 2.4374998 + yOffset: 24.812498 + xAdvance: 31.9375 + scale: 1 + - id: 243 + x: 384 + y: 163 + width: 27.124998 + height: 25.249998 + xOffset: 2.4374998 + yOffset: 24.812498 + xAdvance: 31.9375 + scale: 1 + - id: 244 + x: 423 + y: 158 + width: 27.124998 + height: 23.687498 + xOffset: 2.4374998 + yOffset: 23.249998 + xAdvance: 31.9375 + scale: 1 + - id: 245 + x: 462 + y: 146 + width: 27.124998 + height: 23.687498 + xOffset: 2.4374998 + yOffset: 23.312498 + xAdvance: 31.9375 + scale: 1 + - id: 246 + x: 341 + y: 148 + width: 27.124998 + height: 22.749998 + xOffset: 2.4374998 + yOffset: 22.312498 + xAdvance: 31.9375 + scale: 1 + - id: 248 + x: 380 + y: 132 + width: 27.124998 + height: 19.499998 + xOffset: 2.4374998 + yOffset: 17.124998 + xAdvance: 32.1875 + scale: 1 + - id: 249 + x: 346 + y: 355 + width: 34.249996 + height: 24.562498 + xOffset: 0.24999999 + yOffset: 24.187498 + xAdvance: 36.25 + scale: 1 + - id: 250 + x: 392 + y: 349 + width: 34.249996 + height: 24.562498 + xOffset: 0.24999999 + yOffset: 24.187498 + xAdvance: 36.25 + scale: 1 + - id: 251 + x: 438 + y: 349 + width: 34.249996 + height: 22.999998 + xOffset: 0.24999999 + yOffset: 22.624998 + xAdvance: 36.25 + scale: 1 + - id: 252 + x: 254 + y: 339 + width: 34.249996 + height: 22.062498 + xOffset: 0.24999999 + yOffset: 21.687498 + xAdvance: 36.25 + scale: 1 + - id: 253 + x: 149 + y: 246 + width: 30.249998 + height: 31.999998 + xOffset: 0.68749994 + yOffset: 24.624998 + xAdvance: 30.875 + scale: 1 + - id: 254 + x: 104 + y: 143 + width: 33.374996 + height: 27.999998 + xOffset: -0.99999994 + yOffset: 21.312498 + xAdvance: 34.875 + scale: 1 + - id: 255 + x: 191 + y: 249 + width: 30.249998 + height: 29.499998 + xOffset: 0.68749994 + yOffset: 22.124998 + xAdvance: 30.875 + scale: 1 + - id: 8211 + x: 261 + y: 62 + width: 22.499998 + height: 2.6249998 + xOffset: 0.81249994 + yOffset: 8.624999 + xAdvance: 24.125 + scale: 1 + - id: 8212 + x: 346 + y: 275 + width: 34.187496 + height: 2.6249998 + xOffset: 0.81249994 + yOffset: 8.624999 + xAdvance: 35.8125 + scale: 1 + - id: 8216 + x: 281 + y: 6 + width: 5.8124995 + height: 9.374999 + xOffset: 2.6249998 + yOffset: 23.437498 + xAdvance: 11.4375 + scale: 1 + - id: 8217 + x: 103 + y: 108 + width: 5.8124995 + height: 9.312499 + xOffset: 2.9999998 + yOffset: 23.374998 + xAdvance: 11.4375 + scale: 1 + - id: 8218 + x: 143 + y: 105 + width: 5.8124995 + height: 9.374999 + xOffset: 2.9999998 + yOffset: 3.3124998 + xAdvance: 11.4375 + scale: 1 + - id: 8219 + x: 498 + y: 12 + width: 5.8124995 + height: 9.374999 + xOffset: 2.6249998 + yOffset: 22.999998 + xAdvance: 11.4375 + scale: 1 + - id: 8220 + x: 140 + y: 6 + width: 13.374999 + height: 9.437499 + xOffset: 2.6249998 + yOffset: 23.437498 + xAdvance: 19 + scale: 1 + - id: 8221 + x: 165 + y: 6 + width: 13.312499 + height: 9.437499 + xOffset: 2.9999998 + yOffset: 23.124998 + xAdvance: 19 + scale: 1 + - id: 8222 + x: 190 + y: 6 + width: 13.312499 + height: 9.437499 + xOffset: 2.9999998 + yOffset: 3.2499998 + xAdvance: 19 + scale: 1 + - id: 8224 + x: 165 + y: 110 + width: 14.874999 + height: 20.624998 + xOffset: 2.1249998 + yOffset: 25.562498 + xAdvance: 19.1875 + scale: 1 + - id: 8225 + x: 388 + y: 6 + width: 14.874999 + height: 22.937498 + xOffset: 2.7499998 + yOffset: 25.562498 + xAdvance: 20.4375 + scale: 1 + - id: 8226 + x: 260 + y: 10 + width: 9.374999 + height: 6.8124995 + xOffset: 2.9374998 + yOffset: 13.624999 + xAdvance: 15.375 + scale: 1 + - id: 8230 + x: 337 + y: 132 + width: 27.687498 + height: 4.0624995 + xOffset: 2.4374998 + yOffset: 3.7499998 + xAdvance: 32.5625 + scale: 1 + - id: 8240 + x: 186 + y: 483 + width: 48.749996 + height: 22.562498 + xOffset: 2.1874998 + yOffset: 21.562498 + xAdvance: 53.1875 + scale: 1 + - id: 8249 + x: 332 + y: 6 + width: 16.374998 + height: 16.437498 + xOffset: 1.6874999 + yOffset: 15.812499 + xAdvance: 20.8125 + scale: 1 + - id: 8250 + x: 360 + y: 6 + width: 16.437498 + height: 16.437498 + xOffset: 2.6874998 + yOffset: 15.812499 + xAdvance: 20.8125 + scale: 1 + - id: 8260 + x: 115 + y: 63 + width: 17.249998 + height: 26.062498 + xOffset: -4.4999995 + yOffset: 22.937498 + xAdvance: 8.0625 + scale: 1 + - id: 8364 + x: 148 + y: 183 + width: 32.374996 + height: 19.999998 + xOffset: 1.8749999 + yOffset: 19.687498 + xAdvance: 37.4375 + scale: 1 + - id: 8482 + x: 58 + y: 344 + width: 35.312496 + height: 9.124999 + xOffset: 1.4999999 + yOffset: 21.312498 + xAdvance: 39.25 + scale: 1 + m_KerningTable: + kerningPairs: [] + m_FontFeatureTable: + m_GlyphPairAdjustmentRecords: [] + fallbackFontAssets: [] + m_FallbackFontAssetTable: [] + m_CreationSettings: + sourceFontFileName: + sourceFontFileGUID: 0e7fce5a708534a9693ae5e8f9866a97 + pointSizeSamplingMode: 0 + pointSize: 31 + padding: 5 + packingMode: 4 + atlasWidth: 512 + atlasHeight: 512 + characterSetSelectionMode: 1 + characterSequence: 32 - 126, 160 - 255, 8192 - 8303, 8364, 8482, 9633 + referencedFontAssetGUID: + referencedTextAssetGUID: + fontStyle: 0 + fontStyleModifier: 2 + renderMode: 6 + includeFontFeatures: 0 + m_FontWeightTable: + - regularTypeface: {fileID: 0} + italicTypeface: {fileID: 0} + - regularTypeface: {fileID: 0} + italicTypeface: {fileID: 0} + - regularTypeface: {fileID: 0} + italicTypeface: {fileID: 0} + - regularTypeface: {fileID: 0} + italicTypeface: {fileID: 0} + - regularTypeface: {fileID: 0} + italicTypeface: {fileID: 0} + - regularTypeface: {fileID: 0} + italicTypeface: {fileID: 0} + - regularTypeface: {fileID: 0} + italicTypeface: {fileID: 0} + - regularTypeface: {fileID: 0} + italicTypeface: {fileID: 0} + - regularTypeface: {fileID: 0} + italicTypeface: {fileID: 0} + - regularTypeface: {fileID: 0} + italicTypeface: {fileID: 0} + fontWeights: + - regularTypeface: {fileID: 0} + italicTypeface: {fileID: 0} + - regularTypeface: {fileID: 0} + italicTypeface: {fileID: 0} + - regularTypeface: {fileID: 0} + italicTypeface: {fileID: 0} + - regularTypeface: {fileID: 0} + italicTypeface: {fileID: 0} + - regularTypeface: {fileID: 0} + italicTypeface: {fileID: 0} + - regularTypeface: {fileID: 0} + italicTypeface: {fileID: 0} + - regularTypeface: {fileID: 0} + italicTypeface: {fileID: 0} + - regularTypeface: {fileID: 0} + italicTypeface: {fileID: 0} + - regularTypeface: {fileID: 0} + italicTypeface: {fileID: 0} + - regularTypeface: {fileID: 0} + italicTypeface: {fileID: 0} + normalStyle: 0 + normalSpacingOffset: 0 + boldStyle: 0.75 + boldSpacing: 7 + italicStyle: 35 + tabSize: 10 +--- !u!21 &21520047123856204 +Material: + serializedVersion: 6 + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_Name: BioRhymeExpanded-Regular SDF Material + m_Shader: {fileID: 4800000, guid: 68e6db2ebdc24f95958faec2be5558d6, type: 3} + m_ShaderKeywords: + m_LightmapFlags: 4 + m_EnableInstancingVariants: 0 + m_DoubleSidedGI: 0 + m_CustomRenderQueue: -1 + stringTagMap: {} + disabledShaderPasses: [] + m_SavedProperties: + serializedVersion: 3 + m_TexEnvs: + - _BumpMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _Cube: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _FaceTex: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _MainTex: + m_Texture: {fileID: 28827487454443518} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _OutlineTex: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + m_Floats: + - _Ambient: 0.5 + - _Bevel: 0.5 + - _BevelClamp: 0 + - _BevelOffset: 0 + - _BevelRoundness: 0 + - _BevelWidth: 0 + - _BumpFace: 0 + - _BumpOutline: 0 + - _ColorMask: 15 + - _Diffuse: 0.5 + - _FaceDilate: 0 + - _FaceUVSpeedX: 0 + - _FaceUVSpeedY: 0 + - _GlowInner: 0.05 + - _GlowOffset: 0 + - _GlowOuter: 0.05 + - _GlowPower: 0.75 + - _GradientScale: 6 + - _LightAngle: 3.1416 + - _MaskSoftnessX: 0 + - _MaskSoftnessY: 0 + - _OutlineSoftness: 0 + - _OutlineUVSpeedX: 0 + - _OutlineUVSpeedY: 0 + - _OutlineWidth: 0 + - _PerspectiveFilter: 0.875 + - _Reflectivity: 10 + - _ScaleRatioA: 0.8333333 + - _ScaleRatioB: 0.6770833 + - _ScaleRatioC: 0.6770833 + - _ScaleX: 1 + - _ScaleY: 1 + - _ShaderFlags: 0 + - _SpecularPower: 2 + - _Stencil: 0 + - _StencilComp: 8 + - _StencilOp: 0 + - _StencilReadMask: 255 + - _StencilWriteMask: 255 + - _TextureHeight: 512 + - _TextureWidth: 512 + - _UnderlayDilate: 0 + - _UnderlayOffsetX: 0 + - _UnderlayOffsetY: 0 + - _UnderlaySoftness: 0 + - _VertexOffsetX: 0 + - _VertexOffsetY: 0 + - _WeightBold: 0.75 + - _WeightNormal: 0 + m_Colors: + - _ClipRect: {r: -32767, g: -32767, b: 32767, a: 32767} + - _EnvMatrixRotation: {r: 0, g: 0, b: 0, a: 0} + - _FaceColor: {r: 1, g: 1, b: 1, a: 1} + - _GlowColor: {r: 0, g: 1, b: 0, a: 0.5} + - _MaskCoord: {r: 0, g: 0, b: 32767, a: 32767} + - _OutlineColor: {r: 0, g: 0, b: 0, a: 1} + - _ReflectFaceColor: {r: 0, g: 0, b: 0, a: 1} + - _ReflectOutlineColor: {r: 0, g: 0, b: 0, a: 1} + - _SpecularColor: {r: 1, g: 1, b: 1, a: 1} + - _UnderlayColor: {r: 0, g: 0, b: 0, a: 0.5} +--- !u!28 &28827487454443518 +Texture2D: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_Name: BioRhymeExpanded-Regular SDF Atlas + m_ImageContentsHash: + serializedVersion: 2 + Hash: 00000000000000000000000000000000 + m_ForcedFallbackFormat: 4 + m_DownscaleFallback: 0 + serializedVersion: 2 + m_Width: 512 + m_Height: 512 + m_CompleteImageSize: 262144 + m_TextureFormat: 1 + m_MipCount: 1 + m_IsReadable: 0 + m_StreamingMipmaps: 0 + m_StreamingMipmapsPriority: 0 + m_AlphaIsTransparency: 0 + m_ImageCount: 1 + m_TextureDimension: 2 + m_TextureSettings: + serializedVersion: 2 + m_FilterMode: 1 + m_Aniso: 1 + m_MipBias: 0 + m_WrapU: 0 + m_WrapV: 0 + m_WrapW: 0 + m_LightmapFormat: 0 + m_ColorSpace: 0 + image data: 262144 + _typelessdata: 0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000091115161616161616161616161616161616140f06000000000000060f141616161616161616161616161616161511090000000000030b0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0d080000000000030b0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0c0500000000000000000000000000000000000000000009111617171611080000000000000000000000040e14171717140d020000000000000000000000000000000000000000000000000009111516120a000000000000000000000000000004080b0d0d0d0a07020000000000000004090c0d0d0d0a060100000000000000000000030b0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0d0700010a1113131310090001090e0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0e09010000000000030b0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0b040000000000000000000000040d121313130e06000000000000000000000000030b0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0e090000000000000000090e0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0b030000000000030b0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0e0a020000020a0e0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0a02000000000000000000000000000000000000000000060b0f1315171717171715130f0b06000000000000000000000000000000000000000000000f1b252a2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2923180a000000000a1823292b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2a251b0f0000000a161f24252525252525252525252525252525221b110300000a161f242525252525252525252525252525252525252525252525252525252420180c000000000000000000000000000000000000000e1b252b2c2c2b241a0c000000000000000000061521292c2c2c281f130400000000000000000000000000000000000000000000000f1b252a2b261d1003000000000000000000000a11181d20222222201b160f060000010a12191e212222221f1b150e05000000000000000a161f2425252525252525252525252525252525221b10121e25282928241c10131d2325252525252525252525252525252525231d14070000000a161f242525252525252525252525252525252525241f160a0000000000000000000a16212729292822190c000000000000000000000a161f24252525252525252525252525252525231c12050000000005121c23252525252525252525252525252525241f160a0000000a161f242525252525252525252525252525252525231e140808141e232525252525252525252525252525252525241e15090000000000000000000000000000000000040c141a1f24282a2c2c2c2c2c2a28241f1a140c040000000000000000000000000000000000000c1d2d393f4040404040404040404040404040403e352818070000071828353e4040404040404040404040404040403f392d1d0c0009192733393a3a3a3a3a3a3a3a3a3a3a3a3a3a3a372e21120109192733393a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a39342a1c0c00000000000000000000000000000000000b1c2c3840424240372a1a0900000000000000021424333d4242413c312212000000000000000000000000000000000000000000000f1e2d393f403a2e2114070000000000000007121d252c323637373734302a23190e08131d262d323637373734302922180d010000000009192733393a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a362d2123303a3e3e3d382e202430383a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a38312516050009192733393a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3933281a0a000000000000030f1b28343c3e3e3d362a1b0a000000000000000009192733393a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3830231403000003142330383a3a3a3a3a3a3a3a3a3a3a3a3a3a3a39332719090009192733393a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a38312617172631383a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a39322718080000000000000000000000000000030e1720282e34393d3f41424242413f3d39342e2820170d0300000000000000000000000000000000172a3b4a54565656565656565656565656565656524636241000001024364652565656565656565656565656565656544a3b2a1700142637454e4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4b3f301e0b142637454e4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4e473a2917040000000000000000000000000000000215283a4a5557575448382614010000000000000c1f3142505757574f402f1d0a00000000000000000000000000000000000000000f1e2d3c4a54554c3f3225170a0000000000091824303940474b4c4c4c49453e362c201925303a41474b4c4c4c49443e352b1f1103000000142637454e4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4a3f2f31414d5353534b3e2d33424c4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4d4334231000142637454e4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4e4638271502000000000714202c394550535351483927140100000000000000142637454e4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4c4132210e00000e2132414c4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4e4537261400142637454e4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4d4435242435444d4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4d44362513000000000000000000000000000915212a343c43494e5154575757575754514d49433b332a2014080000000000000000000000000000001d324659686b6b6b6b6b6b6b6b6b6b6b6b6b6b6b6453402b170200172b4053646b6b6b6b6b6b6b6b6b6b6b6b6b6b6b685946321d001b304355626464646464646464646464646464645d4e3b27121b30435562646464646464646464646464646464646464646464646464646464635847331f0b0000000000000000000000000000000b1e314457686c6c665643301e0b00000000000316293b4e606c6c6b5e4c39261300000000000000000000000000000000000000091b2d3c4b5a68695d504335281b0e01000009182736424c555b606262625e5952493d312836434d555c606262615e5851483c2f21120100001b30435562646464646464646464646464646464645d4c3a3d4f5f6868685c4b3a3e5160646464646464646464646464646464646052402c18001b304355626464646464646464646464646464646464635644311d080000000c1925313e4a56636868655644301b06000000000000001b304355626464646464646464646464646464645f503d2915000015293d505f646464646464646464646464646464625543301b001b3043556264646464646464646464646464646464646153412d2d41536164646464646464646464646464646464646154422e1a0000000000000000000000000c1a27323d4750575d62666a6b6c6c6c6b6a66625d574f473d3226190b00000000000000000000000000001f344a5f748282828282828282828282828282826e58432e190300192e43586e828282828282828282828282828282745f4a341f001f34495e737979797979797979797979797979796a55402b161f34495e7379797979797979797979797979797979797979797979797979797976624d38230e00000000000000000000000000000215283b4e6174838373604d3a281502000000000d203346586b7d837c695643301c090000000000000000000000000000000000001125394a5a69787a6e605346392c1e11040415273645535f687074777777736d655b4f4137465460697075777776736d645a4d3f301f0d00001f34495e737979797979797979797979797979797969543f4a5b6c7d7d7a68584644596e797979797979797979797979797979796f5a45301b001f34495e73797979797979797979797979797979797974604b36200b0005111e2a36434f5c68747d7d735e48331e09000000000000001f34495e737979797979797979797979797979796d58432e180300182e43586d797979797979797979797979797979735e49341f001f34495e737979797979797979797979797979797979705c473232475c707979797979797979797979797979797979725d48331e00000000000000000000000c1b2a3844505a636b72777b808283838382807b77716a635a4f4437291b0c000000000000000000000000001f344a5f748b97979797979797979797979797846e58432e190300192e43586e84979797979797979797979797978b745f4a341f001f344a5f748b90909090909090909090909090826b56402b161f344a5f748b909090909090909090909090909090909090909090909090908f78634e38230e00000000000000000000000000000b1e3144576a7d91907d6a5744311f0c00000005172a3d506275889886725f4c392613000000000000000000000000000000000000152a3f546878888c7d716457493c2f22150e2133445463717c848a8d8d8c8882786d5f4f455564727c858a8d8d8c8882776b5d4e3d2b1805001f344a5f748b9090909090909090909090909090806a54455668798a9487756453445a6f86909090909090909090909090909087705b46301b001f344a5f748b9090909090909090909090909090908c76604b36210b0a16222f3b4854606d79869289735e48331e09000000000000001f344a5f748b90909090909090909090909090846e58432e190300192e43586e84909090909090909090909090908b745f4a341f001f344a5f748b90909090909090909090909090909088725c473232475c728890909090909090909090909090909089735e48331e000000000000000000000a1b2a394855626d7680868c9194979898989794908c8680766c615547392a1a090000000000000000000000001f344a5f748b8b8b8b8b8b8e9e9c8c8b8b8b8b846e58432e190a0a192e43586e848b8b8b8b8c9c9e8e8b8b8b8b8b8b745f4a341f001f344a5f748b919191919196a59e9291919191826b56402b161f344a5f748b9191919191919aa1939191919191919191919191919191929f8f78634e38230e000000000000000000000000000114273a4d6074889b9a8774614e3b29160300000e213447596c8092a28f7b6855422f1c090000000000000000000000000000000000152b4054697886938f8274675a4d403326182a3d506272828f98928d8d8f93958a7c6d5c516373839098918d8d8f9495897b6b5a4835210e001f344a5f748b91919191919196a3949191919191806a545263748697a49382705f4e5a6f86919191919197a59591919191919187705b46301b001f344a5f748b91919191919196a3949191919191918c76604b36210f1b2734404c5965717d8b979f89735e48331e09000000000000001f344a5f748b919191919193a29f9291919191846e58432e190303192e43586e8491919191929fa19391919191918b745f4a341f001f344a5f748b91919191919196a59591919191919188725c473232475c728891919191919195a59691919191919189735e48331e0000000000000000000517283948576673808a939a99938f8d8c8b8b8d8f93999a938a80726557483827160400000000000000000000001f34495d7074747474747480919b8977747474746a57422d1f1f1f1f2d42576a7474747477899b9180747474747474705d49341f001f344a5f737b7b7b7b7b7b879798837b7b7b7b7b6a55402b1d1f344a5f737b7b7b7b7b7b809398857b7b7b7b7b7b7b7b7b7b7b7b7b7b84998f78634e38230e000000000000000000000000000b1e3144576a7d90a19c917d6b584633200d0006182b3e516376899c9d9885725f4c38251200000000000000000000000000000000001126394b5a6774828f9386786b5e504336293146596d809193867c787779808a988b79665b6e829291857c777779808b9a8a7764513d2814001f344a5f737b7b7b7b7b7b7b8d9f897b7b7b7b7b7b69545e6f82929a8f998f7d6c5b596e7b7b7b7b7b7b8fa08b7b7b7b7b7b7b7b705b46301b001f344a5f737b7b7b7b7b7b7b8d9f897b7b7b7b7b7b7b75604b3620202c3945515e6a7683909ca89f89735e48331e09000000000000001f344a5f737b7b7b7b7b7b84959a857b7b7b7b7b6d58432e191919192e43586d7b7b7b7b7b859a95847b7b7b7b7b7b735f4a341f001f344a5f737b7b7b7b7b7b7b8da18c7b7b7b7b7b7b7b715c473232475c717b7b7b7b7b7b7b8ca18d7b7b7b7b7b7b7b725d48331e0000000000000000001022344556667585919d958c847d797776747677797d848c959c91847566564533220f00000000000000000000001a2e41515d5f5f5f5f5f62738596958372605f5f5a4d3b3434343434343b4d5a5f5f60728395958573625f5f5f5f5f5d51412e1a001c304456636666666666697889999182716666665e4e3b32323232445663666666666675899c8e7a676666666666666666666666666e84998f78634e38230e0000000000000000000000000114273a4d6073879a918899887562503d2a1705102335485b6d82939788958f7b6854412e1b08000000000000000000000000000000000a1c2d3c4a5764717d8c96897c6e6154473a364b607489988674696362646c798b96826d61768a968473686362656d7b8d94806b57422d18001c30445663666666666666778d9f897366666666665e5a6b7c8e9f8d7c8d9b8a786756616666666666788fa08b746666666666666153402c18001c30445663666666666666778d9f89736666666666666457453125313e4a56636f7b8894a196989f89735e48331e09000000000000001c3044566366666666666677899a91806e66666660513e2e2e2e2e2e2e3e51606666666e8091998977666666666666635644301c001c30445663666666666666778da18c766666666666666254412e2e415462666666666666768ca18d776666666666666355432f1b000000000000000006192c3f51637485949b8e827770696562605f606265697077828e9b94847363513e2c19060000000000000000000011233341494a4a4a4a4a5667788a9b907d6d5b4a4a4a4a4a4a4a4a4a4a4a4a4a4a5b6d7d909a897766554a4a4a4a4a494133231100142738464f50505050505a6a7a8a9a90807060504c47474747474747474f505050586b7d929885715e5059656767675f50505050586e84998f78634e38230e0000000000000000000000000a1d3043566a7d909b887c9092806c594734210e1a2d3f5264778a9e8d798c9885715e4b38251200000000000000000000000000000000000f1e2c394653606e7a88958d807265584a3d4e63788d937d69564e4c505b6f8499867064798f917b67554e4c505d718799856f5a442f1a00142738464f505050505062778d9f89735e50505050556677899a92826f809296857363515050505063788fa08b745f50505050504e4435231100142738464f505050505062778d9f89735e50505050504f47392a36434f5b6874828d999d90848c9f89735e48331e0900000000000000142738464f50505050505a6b7c8d9d8c7a6958504d434343434343434343434d5057687a8c9d8d7b6a5950505050504f4638271400142738464f505050505062778da18c766050505050504e4536252536454e505050505060768ca18d776250505050504f4537261300000000000000000e2236495c6f82929c8c7d70655c55504d4b4a4b4d50555c65707c8c9c92806e5c4935220e000000000000000000000515232e343434343438495a6b7c8e9c8b79675f5f5f5f5f5f5f5f5f5f5f5f5f5f67798a9c8e7c6b5a493834343434342e23150500091a28343a3b3b3b3b3d4c5c6c7b8c9b8f7d6e5e5c5c5c5c5c5c5c5c5c5c5c5c5c6175889b8e7a67544c61767c7c7c69543f3b43586e84998f78634e38230e00000000000000000000000114273a4d6073869a9280728698897663513e2b182436495c6f829596837083968e7a6754412e1b0800000000000000000000000000000000000e1b283543505d6a778592908375685b4e4e63788d937d6958504e515d6f8599867064798f917b67574f4e525f728799846f5a442f1a00091a28343a3b3b3b3b4c62778d9f89735e483b3f50617284959786746374869792806f5e4d3c3b4e63788fa08b745f4a3b3b3b3b393226170600091a28343a3b3b3b3b4c62778d9f89735e483b3b3b3b3a342f3b4754606d7986929e988c80768c9f89735e48331e0900000000000000091a28343a3b3b3b3b3c4d5e6f82929887756458585858585858585858585858586375879891806f5e4d3c3b3b3b3b3a34281a0900091a28343a3b3b3b3b4c62778da18c76604b3b3b3b3b3a332c2c2c2c333a3b3b3b3b4b60768ca18d77624c3b3b3b3b3a33281908000000000000000015293d5165788c9e907d6d5f5248403b38363436383b4048525f6d7d8f9e8c7864513d2914000000000000000000000005111a1f1f1f1f1f2b3d4e5f708292978574747474747474747474747474747474859792826f5e4d3c2b1f1f1f1f1f1a11050000000b172025262626262e3e4e5d6d7d8d9d8d7c7272727272727272727272727272727d929885715e4b4c62778d93806a543f2e43586e84998f78634e38230e00000000000000000000000a1d304356697c909c8976687b8e93826d5b4835232e405366798c9f8c7966798d9885715d4a372411000000000000000000000000000000020e1821292f333f4c596673828f9486796c5f515f74889986766a6463666e7b8c95826c61758a9785746a6463666f7d8f93806b56412d1800000b172025262626374c62778d9f89735e483a4c5d6e80919c8a79675667798a9c8d7c6a5948384e63788fa08b745f4a34262626251f15080000000b172025262626374c62778d9f89735e48332626262734404c5965717d8b97a093877a6e768c9f89735e48331e0900000000000000000b172025262626262f4052637485979382706e6e6e6e6e6e6e6e6e6e6e6e6e6e7082939685736251402f262626262520170b0000000b172025262626374c62778da18c76604b424242424242424242424242424242424b60768ca18d77624c372626262520160a0000000000000000041a2f43586c8295998672604f41352d2623211f2123262d35414f6072859995806c58432e1a0500000000000000000000000006090a0a0a0e1f30415263748697918b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b91978674635241301e0d0a0a0a0906000000000000040c101111111120303f4f5f6e7d8f9b8b8888888888888888888888888888888a9b8f7b6855545462778d95806a543f2e43586e84918f78634e38230e00000000000000000000001326394c6073869993806c5e7185978a7764523f2d374a5d70839695826f5d7084978d7a6754412e1b070000000000000000000000000004121f2b353d44484b4b4b5663707d8b978a7c6f62596c7d9094887d79787b828b998977645a6d809193867d79787b828d98887663503c2813000000040c10111122374c62778d9f89735e484758697a8c9d8f7d6c5b4a5b6d7d8f9989776655434e63788fa08b745f4a341f1111100b020000000000040c10111122374c62778d9f89735e48331e202c3945515e6a7683909c9b8f82756960768c9f89735e48331e09000000000000000000040c10111111122334455667788a9b8e848484848484848484848484848484848e9b8a78675645332211111111100c040000000000040c10111122374c62778da18c766057575757575757575757575757575757575760768ca18d77624c37221111100c04000000000000000000091e33485d71879b927d6a5643312319120e0b0a0b0e121923314255697d929b87715d48331e09000000000000000000000000000000000001122335465768798b9ca09391919191919191919191919193a09b8a796756453423120100000000000000000000000000000000000212213141506070808f9e9d96949494949494949494949494969e9885726a6a6a6a6a778d95806a543f2e43586d7b7b7b77634d38230e000000000000000000000a1d304356697c909e8a776354677a8d95826f5c49364154677a8d9e8b786554677a8e9784705d4a372411000000000000000000000000041423303d4851585d6060605d585f6d7a87948e8072666171808d97938f8f909593887a6b5a516272828e97928f8f90969287796a594634200d000000000000000d22374c62778d9f89735e485364768898948371604f3d4f6071839495847261504e63788fa08b745f4a341f0a000000000000000000000000000d22374c62778d9f89735e483325313d4a56636f7b8894a1968a7d70645860768c9f89735e48331e09000000000000000000000000000000051627384a5b6c7d8f9d999998989898989898989898989899999d8e7d6b5a49382716050000000000000000000000000000000d22374c62778da18c766c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c768ca18d77624c37220d000000000000000000000000000c21364b60758ba08e78644f3b261406000000000000000613263a4e63788da08b75604b36210c000000000000000000000000000000000000061728394a5c6d7d8f9c887b7b7b7b7b7b7b7b7b7b7b7b879c8f7d6c5b4a3928160500000000000000000000000000000000000000031323324251617182919f897d7d7d7d7d7d7d7d7d7d7d7d889d9180808080808080808d95806a543f2a3e516066666665594734200b000000000000000000001326394c5f72869995826d5a4a5d7083968c796653404c5e71859794826e5b4b5e7185988d796653402d1a070000000000000000000000102132414e5a646c72757675726d645c6976849191847669626f7a83898c8d8b8780766a5c4d445463707b84898c8d8b868075695b4c3b291704000000000000000d22374c62778d9f89735e4f607183949988766453423143546576889990806e5d4e63788fa08b745f4a341f0a000000000000000000000000000d22374c62778d9f89735e483336434f5b6774808d999e9185786c5f534b60768c9f89735e48331e09000000000000000000000000000000000a1b2c3d4e5f7082939c88838383838383838383838383889c9282705f4e3d2b1a09000000000000000000000000000000000d22374c62778da28d838383838383838383838383838383838383838383838da28d77624c37220d000000000000000000000000000d22374c62778da18c76614c37220d0000000000000000000c21364b60768ba08d77624c37220d000000000000000000000000000000000000000a1b2c3e4f6071839493827066666666666666667082939382705f4e3d2c1b0a0000000000000000000000000000000000000000000414243343536272839295867568686868686868686a7d91a09c95959595959595959995806a543f2a344450535353524b3d2c1906000000000000000000091c2f4256697c8f9f8c776451405366798c9683705d4a56687b8e9e8a7764514155687b8f9683705d4a37241000000000000000000000091c2e3f505f6c7782878b8c8b8782776d5f6672808e94877a6d5f676e73767776726c63594c3e3645535e686f74767775716b62584b3d2e1d0c00000000000000000d22374c62778d9f89735e5b6d7d8f9e8c7a69584736253647596a7b8d9d8c7a695863788fa08b745f4a341f0a000000000000000000000000000d22374c62778d9f89735e483b4754606d7986929e998d8073675a4e414b60768c9f89735e48331e0900000000000000000000000000000000000e1f304253647587988f7d6c6c6c6c6c6c6c6c6c6c7d8f978675635241301f0e00000000000000000000000000000000000d22374c62778da39b989898989898989898989898989898989898989898989ba38d77624c37220d000000000000000000000000000d22374c62778da18c76604b36210b0000000000000000000a1f344a5f748ba08f78634e38230e00000000000000000000000000000000000000000f20314253647687988e7c6b5950505050596a7c8e98877564534231200e0000000000000000000000000000000000000000000000061625354554647384949484736354535353536073889b8f8888888888888888889095806a543f2b3f5262686868675b4935200c0000000000000000001326394c5f72869996826f5c4836495c6f82958d7a67546072869893806d5a47394c5f7286998d796653402d1a070000000000000000001225394b5d6e7d8a9495908f9094958a7d6e5d626f7c8a978b7d70635a5f6162605d5850463b2e2735414c545b5f6162605d574f463a2d1f100000000000000000000d22374c62778d9f89735e68798b9c91806e5d4c3b29192a3b4c5e6f80929887756463788fa08b745f4a341f0a000000000000000000000000000d22374c62778d9f89735e484c5965717d8a97a194887b6f6256493d364b60768c9f89735e48331e09000000000000000000000000000000000002132435465768798b9b8a786757575757575767788a9b8b796857463523120100000000000000000000000000000000000d22374c62778da28e878787878787878787878787878787878787878787878ea28d77624c37220d000000000000000000000000000d22374c62778da08b745f4b35200b0000000000000000000a1f344a5f748ba08f78634e38230e0000000000000000000000000000000000000000021425364758697a8c9a897765544342546576899a8c7a695847352413020000000000000000000000000000000000000000000000000717273646566575869592827162524244576a7d9098857272727272727272778d95806a543f2e43586d7d7d7d78634e38230e0000000000000101091c2f4255687b8fa08d7966523f2d3f5264778a9785715e697c909c8a7663513e304356697c9096836f5c49362310010101000000000000192d4155687a8c988a827b797b8089978c7a67545e6c7986938f827366594c4c4b48433c33291d17242f3840464a4c4c4b48433b33281d0f010000000000000000010d22374c62778d9f89736374869796857361513f2e1d0c1d2f40516374869794827163788fa08b745f4a341f0a010000000000000000000000010d22374c62778d9f89735e515d6a76838f9c9c9083766a5d5144382c364b60768c9f89735e48331e090100000000000000000000000000000000000617283a4b5c6d7d909685736150424250617385968f7d6d5c4a392817060000000000000000000000000000000000010d22374c62778da18c767070707070707070707070707070707070707070768ca18d77624c37220d010000000000000000000000010d22374c62778da08b745f4a341f0a0100000000000000010a1f344a5f748ba08f78634e38230e0100000000000000000000000000000000000000000718293a4b5d6e8090958371604f4e60718394907d6d5c4b3a29170600000000000000000000000000000000000000000000000000000918283847576776879790807060504d6073879a8e7a675c5c5c5c5c5c62778d95806a543f2e43586e84948f78634e38230e00000009111516161625384c5f7285989783705d49362335485b6d82938e7b6873879993806c5a4734273a4d6073879b8c796653402c19161616130d030000001d32475c7085988a796d6664666c78899884705b4e5b687583909285776a5d5042352f2920170c06121c252c3135373736332e2820160b00000000000000091115161622374c62778d9f89737082929b897766554433221000112234455667798a9c8f7d6c788fa08b745f4a341f16161510070000000000091115161622374c62778d9f89735e626f7b8894a1978b7d7165594c40332721364b60768c9f89735e48331e1616140f060000000000000000000000000000000b1c2d3e4f6071839491806e5c4b4b5c6e8091948371604f3e2d1b0a000000000000000000000000000000091115161622374c62778da18c76605b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b60768ca18d77624c372216161511080000000000091115161622374c62778da08b745f4a341f1616130d0300020c1316161f344a5f748ba08f78634e382316161511080000000000000000000000000000000000000c1d2e3f5061728495907d6c5b5b6c7d8f948372614f3e2d1c0b000000000000000000000000000000000000000000000000000000000a1a2a394959687888988f7d6e5f576a7d909885715e4b474747474c62778d95806a543f2e43586e84998f78634e38230e00000f1b252a2b2b2b2e4154677b8fa18d7a6753402d1e2b3e516376899886727d919c897563503d2a203144576a7d9296836f5c49362b2b2b2b2820150600001f344a5f748a97826d5b514f515a6c829689735e494a586471808d95887a6e605346392c1e110400000911171c202222211e1a140c03000000000000000f1b252a2b2b2b374c62778d9d88727c8e9f8e7c6b5a493826150400051627394a5b6d7d8f9b8a79778da08b745f4a342b2b2b2a24190c0000000f1b252a2b2b2b374c62778d9f89736773808d999f9286796d6054473b2f2b2b2b364b60768c9f89735e48332b2b2b2923180a0000000000000000000000000000000f21324354657688998c7a685757687a8c98877664534231200f0000000000000000000000000000000f1b252a2b2b2b374c62778da18c76604b464646464646464646464646464646464b60768ca18d77624c372b2b2b2a251b0e0000000f1b252a2b2b2b374c62778da08b745f4a342b2b2b282015061420282b2b2b344a5f748a9f8f78634e382b2b2b2a251b0e0000000000000000000000000000000002152635404655667788998a786767788a9988766554454034251401000000000000000000000000000000000000000000000000000000000e1f2d3b4a5a6a798a998d7d6d6073879a8e7a6754413f3f3f3f4c62778686806a543f3f43586e84998f78634e38230e000c1d2d393f404040404b5e7185989885715e4a403b30213447596c8092907c889b92806c59463323323c404e6175889c8c78655240404040403c32241402001f344a5f748b96826c584f4c4f586b829689735e493a4754616e7b89968c7d716457493c2f22150800000002080b0d0d0b09040000000000000000000c1d2d393f404040404c62778d9b8677899a9382705f4e3c2b1a090000000a1b2c3d4f607183949786768ba08b745f4a404040403f372a1a09000c1d2d393f404040404c62778d9f89737985929e9a8e8274685c4f4336373f404040404b60768c9f89735e48404040403e3528180700000000000000000000000000001122303a47596a7b8c98867563637486988c7a6958473a2f211000000000000000000000000000000c1d2d393f404040404c62778da18c76604b404040403f3730303030373f404040404b60768ca18d77624c404040403f382c1c0b000c1d2d393f404040404c62778da08b745f4a404040403c32241423323c40404040485e73899f8f78634e404040403f382c1c0b0000000000000000000000000000000b1f3244535b5b5b6a7b8d9685737385968d7b6a5b5b5a5243311d0900000000000000000000000000000000000000000000000000000005182b3d4b53545b6b7b8b9b8b7b6b7c909885715e545454545454545d6d6f6f6f6454545454586e84998f78634e38230e00172a3b4a545656565656677a8ea18f7b685656554e3f2e2a3d506275889989929b8875614f3c2930414f5656586c809295826f5c56565656565042321f0b001e33485d71869a88766a6462646a76889985705c47323643505e6b7885928f8274675a4d403325180a00000000000000000000000000000000000000172a3b4a54565656565662778d99848495988675635241301f0d00000000000f20314354657688999282889d8b745f5656565656534838261300172a3b4a54565656565662778d9f897d8a97a295897c7063574a3e31394953565656565660768c9f89735e5656565656524636241000000000000000000000000000081c2f404d54545d6e809192826f6f829290806e5d54544c3f2d1b0700000000000000000000000000172a3b4a54565656565662778da18c766056565656565349392727394953565656565660768ca18d77625656565656544a3a281500172a3b4a54565656565662778d9f8b745f56565656565042321f30414f56565656565e73899f8f78635656565656544a3a28150000000000000000000000000000001025394e6170707070708091918080919180707070706f604d38230e0000000000000000000000000000000000000000000000000000000b1f34485a686a6a6a6d7c8d998a7986998e7a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6e84998f78634e38230e001d324659686b6b6b6b6b7185989986726b6b6b6a5d4b37223346586b7d919ea2917d6b58453225394d5f6b6b6b6b76899d8c786b6b6b6b6b6b604e3b2611001a2e43566a7d8f95887d7877787d88958e7c6955412d2533404d5a6774828f9286786b5e5043362818060000000000000000000000000000000000001d324659686b6b6b6b6b6b778d9783919c8b796857463523120100000000000214253647596a7b8d9e8e869b8b746b6b6b6b6b6b6656422e19001d324659686b6b6b6b6b6b778da18f8f9c9d9184776b5e5245392d2f4357676b6b6b6b6b6b768c9f89736b6b6b6b6b6b6453402b17000000000000000000000000000e23384c5e696a6a6a7384958d7c7b8d9584726a6a6a695d4a36220d000000000000000000000000001d324659686b6b6b6b6b6b778da18c766b6b6b6b6b6b6757432f2f4357676b6b6b6b6b6b768ca18d776b6b6b6b6b6b675845301c001d324659686b6b6b6b6b6b778d9f89736b6b6b6b6b6b604e3b26394d5f6b6b6b6b6b6b73899f8f786b6b6b6b6b6b675845301c00000000000000000000000000000011263b50667b87878787878e9d8c8c9d8e878787878779644f3a250f0000000000000000000000000000000000000000000000000000000d22374c6277808080808080949888909b868080808080808080808080808080808080808080808084998f78634e38230e001f344a5f748282828282828da193828282828279644f3a25293b4e6174879a9a8774614e3b28273c52677c828282828297958282828282827d68533e29130013273a4d5f70808d97928e8d8e92978d80705e4c3a2615222f3c495663707d8c96897b6e61544635230f0000000000000000000000000000000000001f344a5f74828282828282828ea1989f907d6d5c4b392817060000000000000007192a3b4c5e6f80929c99a08b82828282828282705b46301b001f344a5f74828282828282828ea3a2a2988c8072665a4d4134281d32475c72828282828282828c9f8a828282828282826e58432e190000000000000000000000000011263b50667b80808080808c998888998c808080808079644f3a250f000000000000000000000000001f344a5f74828282828282828ea18c82828282828282725c473232475c72828282828282828ca18e82828282828282735e48331e001f344a5f74828282828282828e9f8a8282828282827d68533e293c52677c8282828282828a9f8f82828282828282735e48331e00000000000000000000000000000011263b50667b9199999999999999999999999999999079644f3a250f0000000000000000000000000000000000000000000000000000000d22374c62778d95959595959ea09b9fa0969595959595959595959595959595959595959595959596a08f78634e38230e001f344a5f748b97979797979ba09e979797979079644f3a251f3144576a7c90907d6a5744311e273c52677c9397979797a0a09797979797947d68533e2913000b1e304252616f7a848a8d8f8d8a837a6f6151412f1d0a111e2c394653606d7a88958d807264523e29140000000000000000000000000000000000001f344a5f748b9797979797979ba0a0958372604f3e2d1c0b0000000000000000000c1d2f405163738597a0a09997979797979787705b46301b001f344a5f748b9797979797979ba0a094877a6e6155483c3023171d32475c72889797979797979aa099979797979797846e58432e190000000000000000000000000011263b50667b919595959599a09898a099959595959079644f3a250f000000000000000000000000001f344a5f748b9797979797979ba09a97979797979788725c473232475c72889797979797979aa09b97979797979789735e48331e001f344a5f748b9797979797979ba0999797979797947d68533e293c52677c93979797979799a09b97979797979789735e48331e00000000000000000000000000000011263b50667b8484848484848484848484848484848479644f3a250f0000000000000000000000000000000000000000000000000000000d22374c62778b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b78634e38230e001f344a5f748b8b8b8b8b8b8b8b8b8b8b8b8b8b79644f3a2515283a4d6073828273604d3a2815273c52677c8b8b8b8b8b8b8b8b8b8b8b8b8b7d68533e2913000113243443515d676f74777877746f675d514233231200000e1b2835424f5d6a7785918f806b56402b160100000000000000000000000000000000001f344a5f748b8b8b8b8b8b8b8b8b8b887665544332210f0000000000000000000000112234455667798a8b8b8b8b8b8b8b8b8b87705b46301b001f344a5f748b8b8b8b8b8b8b8b8b8b8275695d5044372b1e12051d32475c72888b8b8b8b8b8b8b8b8b8b8b8b8b8b8b846e58432e190000000000000000000000000011263b50667b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b79644f3a250f000000000000000000000000001f344a5f748b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b88725c473232475c72888b8b8b8b8b8b8b8b8b8b8b8b8b8b8b89735e48331e001f344a5f748b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b7d68533e293c52677c8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b89735e48331e0000000000000000000000000000000f24394d606d6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6d5f4c38230e0000000000000000000000000000000000000000000000000000000c21364b60717474747474747474747474747474747474747474747474747474747474747474747474747472614c38230d001f34495d70747474747474747474747474747473624e39240f1e304356666b6b665643311e11263b506474747474747474747474747474747466523d2813000006162534404b545b60626362605b544b40332415060000000a1725323f4c59667382807061503c28130000000000000000000000000000000000001f34495d7074747474747474747474746a5948362514030000000000000000000000051627384a5b6c74747474747474747474746d5945301b001f34495d70747474747474747474747064584b3f33261a0d01001c31465b6e74747474747474747474747474747474746a57422d180000000000000000000000000010253a4f63737474747474747474747474747474747473624e39240f000000000000000000000000001f34495d7074747474747474747474747474747474746e5b463131465b6e74747474747474747474747474747474746f5c47321d001f34495d70747474747474747474747474747474747466523d283b506474747474747474747474747474747474746f5c47321d0000000000000000000000000000000a1e31425158585858585d656a6c6c6a655e58585858585041301c09000000000000000000000000000000000000000000000000000000081c3043535e5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5e5444311e09001a2e41515d5f5f5f5f5f5f5f5f5f5f5f5f5f5f5e5545331f0b1426384853565653483827140d213547575f5f5f5f5f5f5f5f5f5f5f5f5f5f5f584836230e0000000716232e3840464b4d4e4d4b4640382e22150600000000000714212e3b485563707061514232200d0000000000000000000000000000000000001a2e41515d5f5f5f5f5f5f5f5f5f5f5f5a4c3b2a190800000000000000000000000000091b2c3d4e5b5f5f5f5f5f5f5f5f5f5f5f5c4f3d2a16001a2e41515d5f5f5f5f5f5f5f5f5f5f5d53473a2e211508000000172b3e505c5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5a4d3b2814000000000000000000000000000c203446565f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5e5545331f0b000000000000000000000000001a2e41515d5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5c503e2b2b3e505c5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5d513f2c19001a2e41515d5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f584836233547575f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5d513f2c19000000000000000000000000000000011324333e4343495866707980838380797267594a43433d322312000000000000000000000000000000000000000000000000000000000114253542494a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4943362615020011233341494a4a4a4a4a4a4a4a4a4a4a4a4a4a494337271603091a2a373f40403f372a1b0905182a39444a4a4a4a4a4a4a4a4a4a4a4a4a4a4a453a2b19070000000005111b252c323638383836322c241b10050000000000000003101d2b3845525d5d52423324150300000000000000000000000000000000000011233341494a4a4a4a4a4a4a4a4a4a4a463c2e1e0c0000000000000000000000000000000e20303e474a4a4a4a4a4a4a4a4a4a4a483e31200e0011233341494a4a4a4a4a4a4a4a4a4a494135291d1004000000000f21323f484a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a473d2f1e0b0000000000000000000000000004172838444a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4943372716030000000000000000000000000011233341494a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a483f322121323f484a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a48403222100011233341494a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a453a2b192a39444a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4840322210000000000000000000000000000000000615212a3245566776838d8f8b8b8e8e8577685846332921140500000000000000000000000000000000000000000000000000000000000817252f3434343434343434343434343434343434343434343434343434343434343434343434343434342f25180900000515232e343434343434343434343434343434343026190a00000c19242a2b2b2a24190c00000c1b283134343434343434343434343434343431281c0d000000000000000811181d21232323211d18110800000000000000000000000d1a27344149494134251506000000000000000000000000000000000000000515232e343434343434343434343434322a1e10000000000000000000000000000000000212202b333434343434343434343434332c211302000515232e3434343434343434343434342e24180b0000000000000313222d333434343434343434343434343434343434322b1f110000000000000000000000000000000b1a27303434343434343434343434343434343434343026190a00000000000000000000000000000515232e343434343434343434343434343434343434332d221313222d333434343434343434343434343434343434332d221404000515232e34343434343434343434343434343434343431281c0d1b28313434343434343434343434343434343434332d22140400000000000000000000000000000000000411263a4e6174868f8379767679828f8775624e3b2611030000000000000000000000000000000000000000000000000000000000000007121b1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1b13080000000005111a1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1b1409000000000710151616151007000000000a151c1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1c150b0000000000000000000003080c0e0e0e0c080300000000000000000000000000000916232e34342e24160700000000000000000000000000000000000000000005111a1f1f1f1f1f1f1f1f1f1f1f1f1d170d000000000000000000000000000000000000020f181e1f1f1f1f1f1f1f1f1f1f1f1e190f0300000005111a1f1f1f1f1f1f1f1f1f1f1f1f1a120600000000000000000410191e1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1e180e010000000000000000000000000000000009141c1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1b14090000000000000000000000000000000005111a1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1e1910040410191e1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1e19110500000005111a1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1c150b000a151c1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1e19110500000000000000000000000000000000000000152a3f54697d928271666060657080927d6954402b1500000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005111a1f1f1a12060000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000162b40566b828f7964534b4b5264798f826c57422c1702000000000000000000000000000000000000070b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0a050000000000000000050a0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0700000000000001080c0d0d0d0d0d0d0d0d0d0d0d0d0d0d0d0d0d0c08010000000000000000000000020a0f1111100c0400000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000002070b0e0e0e0c09040000000000000000000005111a1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1d1a1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1a1d1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1e190f030000000000000001080e1317191b1b1b1a191613100b07010000000000000000060b1014171a1b1b1b1b1a1816120e0904000000000000000000000000030b0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0e090100000000000000050c111518191816120d0600000000000000000000030b0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0e09040b0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0c050000000000000000000000000000000000000000162b40566b80917d6b5f59595f6b7d91806b56402b16010000000000000000000000000000000006121b202121212121212121212121212121211f190f0200000000020f191f212121212121212121212121212121201b120600000008141c212222222222222222222222222222222222211d140800000000000000000008141e2426262520160a0000000000000000000000000000000000000000000000000001080b0a06000000000000000000000000000000000000000000000000000000000000000000000000000000000000020a0e0f0f0f0d0800000000000000000000000000000000000000000000000000000000000000000000000000000000000000060f161c20232323211e191209000000000000000515232e34343434343434343434343434343434322e3434343434343434343434343434342e32343434343434343434343434343434332c21130200000000000b141c23282c2f3030302f2e2b2825201b161009020000030c131a2025292c2f303030302f2d2b27231e18120b0300000000000000000a161f242525252525252525252525252525252525231d130600000000050f1820262a2d2e2e2b2721191005000000000000000a161f242525252525252525252525252525252525231c161f242525252525252525252525252525252421180d0000000000000000000000000000000000000013283d5165788b8a7b726e6e727c8a8a7865513c2813000000000000000000000000000000000616242f35363636363636363636363636363636342c20110100000111202c34363636363636363636363636363636352f24160600071725303637373737373737373737373737373737373631261808000000000000000d192531393b3b3a3328190800000000000000000000000000000000000000000000020b141c20201a110500000000000000000000000000000000000000000000000000000000000000000000000000000008141e23252525221b1103000000000000000000000000000000000000000000000000000000000000000000000000000000030e19222a313538383836322d251c1206000000000011233341494a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4641494a4a4a4a4a4a4a4a4a4a4a4a4a4941464a4a4a4a4a4a4a4a4a4a4a4a4a4a4a483e31200e00000005121e2830373d41444546464443403d3935302a241d160e0d171f272e34393e4144464646464443403c38332d261f170e05000000000009192733393a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a383024150400000c17222b343b3f424343403c352c22170a000000000009192733393a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a38302833393a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a352b1d0d0000000000000000000000000000000000000e2236495c6d7d8b8f878484878f8a7c6d5b4935220e00000000000000000000000000000000122434424a4b4b4b4b4b4b4b4b4b4b4b4b4b4b4b483e2f1e0c00000c1e2f3e484b4b4b4b4b4b4b4b4b4b4b4b4b4b4b4a4234241200122535434b4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4b44362614010000000005121e2a37434e50504f453726130000000000000000000000000000000000000000000a151e273035342e2314040000000000000000000000000000000000000000000000000000000000000000000000000006172631383a3a3a372e211201000000000000000000000000000000000000000000000000000000000000000000000000000714202b363e454a4d4e4e4b4741392f241709000000001a2e41515d5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f59515d5f5f5f5f5f5f5f5f5f5f5f5f5f5d51595f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5c4f3d2a1600000514232f3a444b5156585a5b5b5a5856524e4a443f38312a221f29333b42494e5357595b5b5b5b5a5854514c47413a332a21180e02000000142637454e4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4c4233220f02101d29353e484f545758585550493f35281b0c00000000142637454e4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4c4138464e4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f483b2b1805000000000000000000000000000000000006192c3e4f5f6d7882878a898782776c5e4f3d2c1906000000000000000000000000000000001a2e41525e6060606060606060606060606060605c4d3b2814000014283b4d5c6060606060606060606060606060605e52412e1a001b2f4253606262626262626262626262626262626262605443301c080000000a16232f3c48546166666355432f1b06000000000000000000000000000000000000000a1a27313a444b49403222100000000000000000000000090e0f0f0f0d0700000000000000000000000000000000000000112435444d4f4f4f4b3f301e0b000000000000000000000000000000000000000000000000000000000000000000000000091725323e4851595f626363605c554c41352718090000001f34495d70747474747474747474747474747474685d7074747474747474747474747474705d687474747474747474747474747474746d5945301b0001122332414d5760666b6e6f70706f6d6b67635e59534c463e36313c464f565d63686b6e707070706f6c6966615b554e463e342b20130300001b30435562646464646464646464646464646464646460513e2b1611202e3b47515b63696c6e6d6a645c5246392a1b0b0000001b3043556264646464646464646464646464646464645f5044566364646464646464646464646464646464594835210c0000000000000000000000000000000000000f2131414f5b656d727474726c645a4e4031200e00000000000000000000000000000000001f34495d707676767676767676767676767676766b57422d180300182d42576b767676767676767676767676767676705d49341f001f34495e717777777777777777777777777777777777725f4a35200b00030f1b2834404d5966727b7b725d48331e0900000000000000000000000000000000000004162838444e575f5d513f2d1b08000000000000000005121c23252525221b10030000000000000000000000000000000000192d4153616464645d4e3b2712000000000000000000000000000000000000000000000000000000000000000000000009182735434f5b656d747778787570685e52453627160500001f344a5f748b8b8b8b8b8b8b8b8b8b8b8b8b8b826b5f748b8b8b8b8b8b8b8b8b8b8b8b8b745f6b828b8b8b8b8b8b8b8b8b8b8b8b8b87705b46301b000b1e3041515e6a737a80848687878683807c77736d6760595149434e59626a71777c82848687878785837d7a767069625a51473d31211000001f34495e7379797979797979797979797979797979796e59442f1a202f3e4c58646e777d83848380786f6456483928170600001f34495e7379797979797979797979797979797979796d584b607479797979797979797979797979797977644f3a240f000000000000000000000000000000000000031323313e4951585d5f5f5d5851483d3022130200000000000000000000000000000000001f344a5f748b8c8c8c8c8c8c8c8c8c8c8c8c8c846e58432e190300192e43586e848c8c8c8c8c8c8c8c8c8c8c8c8c8b745f4a341f001f344a5f748b8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8c76604b36210b0814202d3945525e6b77849089735e48331e090000000000000000000000000000000000000b1f334656616a736f5c4a3725130000010101010103142330383a3a3a362d211100000000000000081014151515130e05001c32475c707979796a55402b1612100c07010000000000000000000000000000000000000000000000000205080a0b0b1827364553616d7782888d8f8e8a857b7063544534231100001f344a5f748b9494949494949e9e9494949494826b5f748b9494949497a096949494948b745f6b8294949494949e9f94949494949487705b46301b0014273a4d5f6f7c878f9598999898989895918d88827b756d655c53606c757d868c92969998989898999794908a857d766d645a4f3f2d1905001f344a5f748b909090909090909090909090909090866f5a442f1f2f3e4d5c6976828b92979998948c827466574635231000001f344a5f748b909090909090909090909090909090846e584b60768c909090909090909090909090909079644f3a250f000000000000000000000000000000000000000413202c363e44484a4a48433d352b1f12040000000000000000000000000000000000001f344a5f748b959595959597a1a19695959595846e58432e190300192e43586e849595959596a1a19795959595958b745f4a341f001f344a5f748b94949494949498a3969494949494948c76604b36210d1925323e4a57636f7c89959f89735e48331e090000000000000000000000000000000000000f24394e63747d8779675542301d0f151616161616162132414c4f4f4f4a3f2f1d1109000000000e1a24292a2a2a282117091d32475c728890826b56402b2a2725211c160f0600000000000000000000000000000000000001070d12171a1d1f2121263645546371808a959a95939397988e82726252402e1b08001f344a5f747d7d7d7d7d7d809595807d7d7d7d7d6b5f747d7d7d7d7d8b9f897d7d7d7d7d745f6b7d7d7d7d7d809597827d7d7d7d7d7d705b46301b001a2f43576a7c8e9a988f88848383838486888c8f94908982797066717d89929a938d8886838383838487898e9399928a82776d5c48341f0a001f344a5f748b91919191919196a597939393939393866f5a442f2d3d4d5c6b7a88949c938d8c8d929b9385746452402d1a06001f344a5f748b91919191919196a595919191919191846e584b60768c91919191919ca5a598919191919079644f3a250f0000000000000000000000000000000000000000020f1922292f333434332f2922180e02000000000000000000000000000000000000001f344a5f748080808080808798998480808080806e58432e191515192e43586e808080808084999786808080808080745f4a341f001f344a5f747d7d7d7d7d7d7d8d9f897d7d7d7d7d7d7d75604b36211e2a37434f5c6874828d9aa69f89735e48331e090000000000000000000000000000000000000f24394e6274879785725f4d3a28232a2b2b2b2b2b2b2b3d505f6464645d4c3a2a251b0f00000c1d2c373e3f3f3f3d3427181f32475c728897826b56403f3f3c3936302a221a10040000000000000000000000000000050d151c22272b2f32343636364453637282909c9086807c7d838b9791826f5d4a372410001c3145586668686868686a809595806a6868686860586668686868748b9f897368686868665860686868686a809597826b68686868686454412d19001e33485d72869a99887b736f6c6c6c6e7073767a80858b918c8379828f9b9188807873706e6c6c6c6e7074797d868d95948875604b36200b001f344a5f737b7b7b7b7b7b7b8da18c7c7c7c7c7c7c7c6f5a442f3b4b5b6b7a8a989589807876777d899793826f5d4936220e001f344a5f737b7b7b7b7b7b7b8da08b7b7b7b7b7b7b7b6d584b60757b7b7b7b7b8296a194877b7b7b7b7b78644f3a240f00000000000000000000000000000000000000000000060e151a1e1f1f1e1a150e050000000000000000000000000000000000000000001d314558676a6a6a6a6a6a798b9c8f7d6c6a6a6a63533f2b2a2a2a2a2b3f53636a6a6a6b7d8f9c8b796a6a6a6a6a6a675845311d001c31455866686868686868778d9f897368686868686866594632232f3c4854606d7986929f989a9f89735e48331e090000000000000000000000000000000000000b1f334557697b8d8f7c6a574532363e4040404040404043586d7979796954403f392d1d0c0016293b49535454545145352c333a475c728897826b56565454524e4a453e362d2216080000000000000000000000050f18212930363c4044474a4b4b4b5262718291998b7d736b67696f7987968d7a67533f2b160015283a485253535353546a809595806a545353534e48525353535f748b9f89735e53535352484e535353546a809597826b56535353535046372512001f344a5f748ba0927c6a5f5a575757595b5e61666a70767c848c8c919c8d80746b645f5b58585a5a5a5c5f646a7179828b7c6a5745311d08001c30445663666666666666778da18c7667676767676762523f384858697989999385776c6460636b78899b8d7965513d2914001c30445663666666666666778da08b74666666666666605145576466666d7987939d9083756966666666655a4935210c0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000016293b495354545454545c6d7d909b8a7867555451453f3f3f3f3f3f3f3f4551545566778a9b8f7d6d5c545454545453493b29160015283a4852535353535362778d9f89735e535353535352493b2934404d5966727d8b979f92868c9f89735e48331e090000000000000000000000000000000000000316283a4c5d6f82948774624f3d47525656565656565656586e8490806a5656544a3b2a17001d314558676a6a6a63533f40474e545c728897826b6a6b6a6867635f5952493f332617080000000000000000000b17212b343d444b5055595c5f60606060708090998a7a6d605752545b68788b96836e5945301b000b1c2b363d3e3e3e3f546a809595806a543f3e3e3b363d3e3e4a5f748b9f89735e483e3e3d363b3e3e3f546a809597826b56403e3e3e3c34281908001f344a5f748a9f927c695d565350505050525354575b626870778ba08e7d6e626165686a6c6e6f6f6f6f6d6a6762656e78725f4d3a28150200142738464f505050505062778da18c766052525252524f443646566676879794847466594f4b4e5b6b7d9295806c57422d1900142738464f505050505062778da08b74665a505050504d423e4b5864717d8b98988c7d7164585050505050493c2b19060000000000070b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0a050000000000000000050a0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b07000000000c1d2c373e3f3f3f3f3f4f6072839496857361545454545454545454545454545461728496948371604f3f3f3f3f3f3e372c1d0c000b1c2b363d3e3e3e3e4c62778d9f89735e483e3e3e3e3d372c3945525e6a7783909c9a8e82768c9f89735e48331e09000000000000000000000000000000000000000b1c2e405264768892806c5a4754656b6b6b6b6b6b6b6b6b6e8495806b6b6b685946321d001f344a5f748080806e584c545b62686e738897827d8080807d7b78736d655c51443526150300000000000002101d29343e4850585f656a6e7173767676767d8f9a8a7a6b5d554d443f4a5b6e838b85735e48331e00000d19232829292a3f546a809595806a5747382926232829344a5f748b9f89735e4e3f30282326292b40556a809597826b56402b29292721170a00001d32475b708496998879706b686664666667686a6b6e7072757c929985706e7276797c8083848686868483807b76706865625442301e0b0000091a28343a3b3b3b3b4c62778da18c76604b3c3c3c3c3a3b4654647384949585756557493c363d4e62778c9a86705b46301b00091a28343a3b3b3b3b4c62778da28f83776c61554a3e39434f5c6975828f9c94887a6e6054473b3b3b3b3b362c1e0e0000000006121b202121212121212121212121212121211f190f0200000000020f191f212121212121212121212121212121201b12060000000e1a24292a2a2a2a3243546576889991806e6a6a6a6a6a6a6a6a6a6a6a6a6a6a6d8090988876655343312a2a2a2a29241a0e0000000d192328292929374c62778d9f89735e483329292928323e4a56636f7c8995a195897c70768c9f89735e48331e09000000000000000000000000000000020608090a11233547596b7c8f8a7764525a6f82828282828282828282859682828282745f4a341f001f344a5f748b95846e585f676f767c83888e9e939495959594918d8882796e62534432200d00000000000312202e3a46515b646c73797d8387898b8c8c8c8d9c94827c77716961574d4254697c7670685945311c0000030f171c1d1d2a3f546a80959786756556473a2d221a21364b60768ba08c7c6c5d4e4033271d182c42576c829795806a543f2a1513120d05000000182c405467788895978d85807c7b797b7b7c7d80828386888b8d9895808084888c8f92949391919191919395918b847b6f6151402e1b070000000b172025262626374c62778da18c76604b484848494b4f58647282929586766757473f393134495e73899987725c47321d00000b172025262626374c62778da39e958a7d72675c504753606d7a87939d908376695d5043362926262626221a0e000000000616242f35363636363636363636363636363636342c20110100000111202c34363636363636363636363636363636352f24160600000008101415151515253647596a7b8c9d8c808080808080808080808080808080808c9d8c7a6958473625151515151410080000000000070e13131322374c62778d9f89735e48331e1e2a36434f5c6874828d9a9d9184776b60768c9f89735e48331e09000000000000000000000000070d12171b1d1e1f1e1e293b4d5f718394826f5d5a6f86979291919191919191929c9191918b745f4a341f001f344a5f748b99846e69727b838b92979391958987878787888b8e93958c807161503d2a1602000000021221303e4c58636e7780888e94989895939394a1a1989a97928c857d746a5f534e5f67625c554b3b2916000413212b313232323f546a8095a193847465584b3f352f2d3b4f64788e9f938b7b6c5e50443a312d32465a6f8499927c68533e281400000000000000112437495a6a77828a9095959391909191929394928f8c888682949b90908c898683827d7c7b7b7b7b7b7d82868e988d806f5d4a36220e00000000040c10111122374c62778da18c76605e5e5e5e5e60636a758291928576675d5b58534d443a485e73848484725c47321d000000040c10111122374c62778da18d8a959085796e625864717d8b98998d807265594c3f322518111111100d060000000000122434424a4b4b4b4b4b4b4b4b4b4b4b4b4b4b4b483e2f1e0c00000c1e2f3e484b4b4b4b4b4b4b4b4b4b4b4b4b4b4b4a4234241200000000000000000008192a3b4c5d6e809199959595959595959595959595959595959990806e5d4c3a2918070000000000000000000000000000000d22374c62778d9f89735e4833232f3b4854606d7986929f988c8072665a60768c9f89735e48331e09000000000000000000010a131b21272c3032333433333130425466778a8c79675a6f808d857b7b7b7b7b7b7b8495807b7b7b735f4a341f001f344a5f748b9984727c868f968f89837d86937c7170707072757980899790806c5945311c080000000f20303f4e5c6975828b949a928c8783807d7c869b958485898f969991887d7165574d524e4841392d1d0c001022323e4647474747546a80959684928475685c5149444248576a7d9397838b8b7c6e61564d4642444f61758a9e8e79644f3a261100000000000000081a2c3c4c59656e767b808386878786868482807c7976737082969d887b7773706e6b69676666666666686c717b8a9c8d7965513c271200000000000000000d22374c62778da18c7673737373737374787d88938b8074737372706d6860574c46596a6e6e6e695844301b000000000000000d22374c62778da08b77838f978b80746975838f9c95887b6e6155483b2e21140700000000000000000000001a2e41525e6060606060606060606060606060605c4d3b2814000014283b4d5c6060606060606060606060606060605e52412e1a000000000000000000000c1d2e3f51617384959d8a8787878787878787878787878a9d95847261503f2e1d0c000000000000000000000000000000000d22374c62778d9f89735e483334404d5965727d8b97a094877a6e61554b60768c9f89735e48331e09000000000000000008141d272e363c414547484a484846423e485a6c7d9085725f626f7b888a7d706666666e8495806a6666635644301c001f344a5f748b9984848f948b837b746e6f86937c675b5b5b5d60646b798d9c89745f4b36210c0000091b2d3e4e5d6c7a88939a90867d77726e6a71829298887670747a828a949a8f837567584839332d261c0f0000192d3f505b5c5c5c5c5c6a80959580859486796e655d59575b6575879a917c7d8e8d807369605b57595f6d7d929b88735f4a36210d000000000000000015293d4f5f666161676b6e6f7070706f6e6c6a6764616576899c99928272665b58565452515050505153575e6c829794806a543f2a1500000000000000000d22374c62778da390898989898989898b8d929b9a8a898989898886837c746a5e504c56585858564b3b2815000000000000000d22374c62778da08b74717c889392867a87949e9184776a5d5044372a1d10030000000000000000000000001f34495d707676767676767676767676767676766b57422d180300182d42576b767676767676767676767676767676705d49341f000000000000000000000011223344556677899a8d7b707070707070707070707b8d99897766554432211000000000000000000000000000000000000d22374c62778d9f89735e483945525e6a7683909c9b8f8275695d50444b60768c9f89735e48331e0900000000000000071725303a424a50555a5c5e5f5e5d5b57524b4f6173858f7c6a575d6a76838e8275685c6e8495806a54504f46382714001f344a5f748b9e91968b82776f67605a6f86937c6752494c50545a6274899f8d77624c37220d00011426394a5c6c7b8b9895887c736a635d617080909b8a79695b60666d77828e9b9486766655443220120a0000001e33485c6e727272727272809595807585938c8278726e6c707784939b887570808e91867c756f6c6e737d8c9c917d6b5844301c0700000000000000041a2e43586c7b76716c6864605c5b5b5a5857575b60697584949285949083776f67615c585554535456595e66718498947d69543f2a1500000000000000000d22374c62778da399959595959595959595959595959595959596999790887c6e5f4e42434343413a2d1d0c000000000000000d22374c62778da08b745f6a76828d988f989a8d807366594c403326190c00000000000000000000000000001f344a5f748b8c8c8c8c8c8c8c8c8c8c8c8c8c846e58432e190300192e43586e848c8c8c8c8c8c8c8c8c8c8c8c8c8b745f4a341f000000000000000000000004152637495a6b7c8e998876645b5b5b5b5b5b647688998d7c6a59483726150400000000000000000000000000000000000d22374c62778d9f89735e484a56636f7c8895a1978a7d7064584b3f364b60768c9f89735e48331e0900000000000000122535434d565d646a6f7273747372706c665f555567798c8774624f5965727d8b86796d6e8495806a543f3a34281a09001f344a5f748b9e9084786d645b534e5a6f86937c675c5e6165696e7580919f8b76614c37220c000a1d30435668798a9a9485766a6056576370808f9c8d7c6c5c4b4b525a646f7c8b9b958573614f3d2a17030000001f344a5f74888888888888889795806a758390958d878483858b959c8e7d6b616f7d8b979089858384888f9b968674614e3b28150100000000000000091e33485c71868b86827c7874726f6d6b6b6b6c6f757c87949787758592958b837b75706d6a68686a6b6e737983909c8c7865503c271200000000000000000d22374c62778da18c808080808080808080808080808080808082848a95998d7d6c5a47342e2e2d271c0f00000000000000000d22374c62778da08b745f58646f7a86919c907c71655a4e43372c21150a00000000000000000000000000001f344a5f748b959595959597a1a19695959595846e58432e190300192e43586e849595959596a1a19795959595958b745f4a341f000000000000000000000000091a2b3c4d5e6f82929482705f4e46464e5f70829491806f5e4d3c2a19080000000000000000000000000000000000000d22374c62778d9f89735e4f5b6874828d999e9285786c5f53473a2e364b60768c9f89735e48331e09000000000000001b2f4253606972798084878989898886827a7267585c6e8092806c5a4854606d79868b7d718495806a543f2a20170b00001f344a5f748b8e8072665b5c5f6263666f86937c6f707376797d8389929e9583705c48331e09001125394d6073869797867566595b616a74828f9c8e7d6e5e4e3e373e47525e6c7c8d9e91806c5946321e0a0000001f344a5f748b9898989898989895806a65727d89929999989a9b958b7d6f5f515f6d79858e969a98989c98908577675644321f0c00000000000000000d22374c61768b959a96928e8a87858382828282858990999588796974808b9597908a8683807d7d808284888e96968c7d6e5c4935210d00000000000000010d22374c62778da18c766a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6b6f7784939b8a77634f3b271918130a0000000000000000010d22374c62778da08b745f4a525d6873808a968f83776c60554a3e32271b10050101010100000000000000001f344a5f748080808080808798998480808080806e58432e191515192e43586e808080808084999786808080808080745f4a341f000000000000000000000000000d1e2f4152637486978f7d6b5a48485a6b7d8f9685736251402f1e0d000000000000000000000000000000070e13131322374c62778d9f89735e606d7986929f998d8073675b4e42352921364b60768c9f89735e48331e1313120c040000001f34495e717c868d8e898684848486888d8f857666536274878a776553434f5c6875828f838495806a543f2a15040000001f34495e71797c6f61686c707477787a7c8693838487898c8f93979d9a9185766653402d190400172c4054687c90a08d796b6b6c70757d8792998d7d6f60504030232b35414e5e6f82949c8975614d3925100000001f344a5f74838383838383838383806a54606b757d848889898782786d6051414f5b67717a8287898988847d736759493927150200000000000000000e23384d62747a80868a8e9295989998979797979a9a958d83776a5b636e7782888f94989795949495979995918b83796e60503e2c190600000000091115161622374c62778da18c7660545454545454545454545454545454565b6575889b937d6955402b160100000000000000091115161622374c62778da08b745f4a404b56616d78848f958a7d72675b5044392e221716161616140e0500000000001d314558676a6a6a6a6a6a798b9c8f7d6c6a6a6a63533f2b2a2a2a2a2b3f53636a6a6a6b7d8f9c8b796a6a6a6a6a6a675845311d0000000000000000000000000001122334455667788a9b89776655556677899b8a786756453422110000000000000000000000000000000d192328292929374c62778d9f897365717d8b97a195887b6f62564a3d31292929364b60768c9f89735e48332929292720160800001e33485d708389807974706e6e6e7073798495836e5957697b8e83705f4d3e4b5764707d8a8e95806a543f2a15000000001b2f42536065676d757c8286898c8f9091949f98999c9e9c9996928d867d7367584836241100001c31455a6f84989b8682828283868a919a92887b6e605142322212182330405164778b9f917c68533e2a150000001d32465a696c6c6c6c6c6c6c6c6c6c62504e5962696f727473716c655c4f42333e4a545e666d717373726f696056493b2b1b0a0000000000000000000a1e32455661666b7075797c80848688898b8b8b888680797066594c515b646d7479808386888888888784807c766f665c504232210f000000000f1b252a2b2b2b374c62778da18c76604b3f3f3f3f3f3f3f3f3f3f3f3f3f3f4148586c829797836c57422c17020000000000000f1b252a2b2b2b374c62778da08b745f4a3439444f5b66717d89949085796d62564b3f342b2b2b2b2b292116080000000016293b495354545454545c6d7d909b8a7867555451453f3f3f3f3f3f3f3f4551545566778a9b8f7d6d5c545454545453493b291600000000000000000000000000000f1f2c394a5b6c7d8f95847261617284958e7d6b5a49382c1e0e00000000000000000000000000000b1c2b363d3e3e3e3e4c62778d9f89737683909c9c9083766a5e514538353c3e3e3e3e4b60768c9f89735e483e3e3e3e3b3326170500192d40536679756c65606060606062656a7b91866f5a4c5e70838f7c6a58473946525f6b788282806a543f2a150000000012253648596876828a91969b9c9997959394988f8d8c898784827c77726a61584b3a2a190700001f34495e73889da1979797979798958f8880756a5e50423223140405122234485c70869b96826c57422c17020000172a3c4c555757575757575757575751443c464e555a5d5f5e5c5851493e32242c37414b52585c5e5f5d5a554d44382b1d0d0000000000000000000003162838454c52575c6064686b6e70727374747473706b655d53483c3e48515960656a6e7072727272706e6b67625b534a3f322314030000000c1d2d393f404040404c62778da18c76604b40404040404040404040404040404249586c829798836c57422c170200000000000c1d2d393f404040404c62778da08b745f4a4040404049545f6b76828d968b8073685d514640404040403d342616050000000c1d2c373e3f3f3f3f3f4f6072839496857361545454545454545454545454545461728496948371604f3f3f3f3f3f3e372c1d0c00000000000000000000000000071a2c3d4a50505f70829390806d6d7d909382705f5050493c2b19060000000000000000000000000015283a4852535353535362778d9f897b8894a1988b7d7265594c4033384751535353535360768c9f89735e5353535353504434220f001124374a5b66637276767676767677797d888d7d6b57425366788b887664524035414e5a676b6b6b61503c271300000000162b3f52657787949e958f8b878482807d86937c777674726f6b68636d77736956412d180300001f344a5f748ba092878787878684807b746c63584c4032231405000005192e43586d839899846e58432e190300000d1e2e3a41424242424242424242423e3429323a4045484a4847433d362c21141a252e373e4447494a4845403a31271b0d0000000000000000000000000a1a2832383d42474b4f5356585b5c5e5f5f5f5e5b57514a40362b2b353e454b5155585b5c5d5c5c5b5956524d4740372d21140500000000172a3b4a54565656565662778da18c7660565656565656565656565656565656575c6675889b93806a55402b16010000000000172a3b4a54565656565662778da08b745f565656565652464d59646f7a869291867a6f63585656565656514434210e000000000e1a24292a2a2a2a3243546576889991806e6a6a6a6a6a6a6a6a6a6a6a6a6a6a6d8090988876655343312a2a2a2a29241a0e00000000000000000000000000000e22364a5b656666667587988b79798b978675666666655a4935210c000000000000000000000000001c31455866686868686868778da08d8d999f9386796d6054483b2f2e425564686868686868768c9f897368686868686862523f2b1600071a2c3d4a5162778c8c8c8c8c8c8d8f87837a6f604e3b495b6e8093826f5d4b3a303d4953565656504333200d000000001b30455a6e82959b8c827a75716e6c6a6f86937c67605f5c5a5964707d8c846e58432e190300001f344a5f748ba0907b707070706e6b66605950463b2f22140500000006192e43586e839899846e58432e1903000000101d262c2c2c2c2c2c2c2c2c2c2c2a22161f262c30333433322e2922190f0308121b232a2f32343433302c261e140900000000000000000000000000000a151e23282d32363a3e41444647484a4a4a4846423d362d241918222a31373c404446474847474644413e39332c241a100300000000001d324659686b6b6b6b6b6b778da18c766b6b6b6b6b6b6b6b6b6b6b6b6b6b6b6b6c707884939d8b7764503b27120000000000001d324659686b6b6b6b6b6b778da08b746b6b6b6b6b6b645354656b6b6b74808b968c82756b6b6b6b6b6b62513d2914000000000008101415151515253647596a7b8c9d8c808080808080808080808080808080808c9d8c7a69584736251515151514100800000000000000000000000000000011263b5065797b7b7b7b7b8d978686978c7b7b7b7b7b78644f3a240f000000000000000000000000001f344a5f747d7d7d7d7d7d7d8da39f9f9b8e8275685c4f43362a1e32475c717d7d7d7d7d7d7d8c9f897d7d7d7d7d7d7d6d58432e190005182b3d4d57627782828282828386898a8377685643313e516376898d7a695745332b373f4040403d33251503000000001e33485d72889d917d6e66605c59575a6f86937c6752525a626c76828f99846e58432e190300001e33485e73889d937d695b5b5b5956524c453d33291d110400000006132335485d71869b96826b57412c1702000000000a121717171717171717171717150f050b12171b1e1f1e1d1a150e0600000000080f151a1d1f1f1e1b17110a010000000000000000000000000000000002090e14191d2125292c2f30323334343433312d28221a1107050e161c22272b2f3132333232312f2c29241f181007000000000000001f344a5f74828282828282828ea18c828282828282828282828282828282828283868c959b8f7d6d5b4835210c0000000000001f344a5f74828282828282828ea08b828282828282826e585a6f8282828282828c9e93888282828282826b56402b16010000000000000000000008192a3b4c5d6e809199959595959595959595959595959595959990806e5d4c3a29180700000000000000000000000000000000000000000011263b50667b919191919195a39494a395919191919079644f3a250f000000000000000000000000001f344a5f748b94949494949498a3a296897c7063574b3e32251a1e32475c728894949494949498a396949494949494846e58432e19000f2234475a6a6b696b6b6b6b6c6c6f747d8f86735f4a363446596b7d90877462513e2d242a2b2b2b2821150700000000001e33485d72889d8f79665a54504e4e5a6f86937c6760666d758089939399846e58432e190300001b30455a6e83979985705d4b4644413d38312920160c0001050910192431415264778ca0907c67533e29140000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000003080d101417191b1d1e1f1f1f1e1c18140e060000000001080e1216191c1d1e1d1d1c1a17140f0a040000000000000000001f344a5f748b9797979797979ba09a9797979797979797979797979797979797979a9992897d7060503e2b18050000000000001f344a5f748b9797979797979ba099979797979797846e585a6f8697979797979aa0a0999797979797826b56402b160100000000000000000000000c1d2e3f51617384959d8a8787878787878787878787878a9d95847261503f2e1d0c0000000000000000000000000000000000000000000011263b50667b8f8f8f8f8f8f8f8f8f8f8f8f8f8f8f8f79644f3a250f000000000000000000000000001f344a5f748b8d8d8d8d8d8d8d8d8d85776b5f5246392d21272e3335475c72888d8d8d8d8d8d8d8d8d8d8d8d8d8d8d846e58432e1900162b3e5164777d756e68635f5e5e606574898d77624c37293c4e60738692806e5c4a382615161616140d040000000000001b30455a6e82959684766e69666363636f86937c6f747a8289928d828999846e58432e19030000162b3f53677b8fa08d7a69594a3d3229231d181614131516191e242c36424f5f7082959b8875614d392410000000000000000000000000000000000a151c1f1f1f1b14090000000000000410191e1f1f1e180f02000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001f344a5f748b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8a88847d766c5f514232210f000000000000001f344a5f748b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b846e585a6f868b8b8b8b8b8b8b8b8b8b8b8b8b8b826b56402b160100000000000000000000000011223344556677899a8d7b707070707070707070707b8d998977665544322110000000000000000000000000000000000000000000000010263b5065777878787878787878787878787878787876634e39240f000000000000000000000000001f34495e717777777777777777777773665a4e41352828313a42484a4b5b6f77777777777777777777777777777777776c57422d18001a2f44596e829289837c77747373757982918874604b3621314456687b8e8c7967564432200e0000000000000000000000162b3f5266778996948a837d7b7878787886938084898f958f867b738999846e58432e190300001024384c5f728496988776685a4f453d36312d2b29292a2b2e33384049535f6d7d8e9f907d6b5845311e090000000000000000000000000000000c1b28313434343026190a000000000313222d333434332b201201000000000000000000000000000000000000000000000000000000000000000000061015171717130b000000000000000000000000000000000000000000000000000000000000000000000000001f34495d7074747474747474747474747474747474747474747474747474747474726f6962594e4133241403000000000000001f34495d7074747474747474747474747474747474746a57586b7474747474747474747474747474747468543f2a150000000000000000000000000004152637495a6b7c8e998876645b5b5b5b5b5b647688998d7c6a59483726150400000000000000000000000000000000000000000000000d213548596363636363646b6363636363636363636362584734200c000000000000000000000000001b2f42536062626262626262626262605f63594835303a444e565d5f605d5f62626262626262626262626262626262625d4e3c291400192e43576a7680878d918d8b89898b8e90887a6a5845311d27394c5e7083958573614f3d2b1908000000000000000000000f2336485a6a78858f979793908f8f8f8f919d9596918b847b7268738999846e58432e19030000091c2f4255677789999586786c6158504a4642403e3e3f4043474d535c65707d8c9b938372604e3b281502000000000000000000000000000006182a39444a4a4943372816040000000f21323f484a4a473e301f0d00000000000000000000000000000000000000000000000000000000000000000a18232a2c2c2c271d100100000000000000000000000000000000000000000000000000000000000000000000001a2e41515d5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5d5a554e463c3124150600000000000000001a2e41515d5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5a4d4e5b5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f594a3925110000000000000000000000000000091a2b3c4d5e6f82929482705f4e46464e5f70829491806f5e4d3c2a190800000000000000000000000000000000000000000000000006192b3b474d4e4e4e607180756b61584e4e4e4e4e4e4d473a2a180500000000000000000000000000122535434b4c4c4c4c4c4c4c4c51636e747765503b434d57616a717475726b61534c4c4c4c4c4c4c4c4c4c4c4c4c4c4c493f301f0d0014283b4c59636b72787d8284868684827c746a5c4d3b28151c2e415366788b917d6d5a493725130000000000000000000007192b3c4c5a67727b83888c8f9090908f909786827c766f675f5e738990846e58432e1903000000132537495a6a7a8997968a7d746c655f5a575553535456585c61676f78838f9c928474655443311f0c00000000000000000000000000000010233547575f5f5e55453322100000091b2c3e505c5f5f5b4e3d2b1806000000000000000000000000000000000000000000000000000000000000071828363f4242413a2e1f0e000000000000000000000000000000000000000000000000000000000000000000000011233341494a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4845403a332a1f130600000000000000000011233341494a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a473d3e474a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a463b2d1b090000000000000000000000000000000d1e2f4152637486978f7d6b5a48485a6b7d8f9685736251402f1e0d00000000000000000000000000000000000000000000000000000d1d2a34383840556a7d90897d756b61574d443a383833291c0c00000000000000000000000000000717253036373737373737373f546a80897d6a564c555f6a747d868b8b877d7162524037373737373737373737373737352d211202000b1d2e3c4650585e64696c6f6f6f6f6c6760574c3e2f1e0c112436495b6d80938a786654422f1c07000000000000000000000d1e2e3c49555f676d727678797979788897826c68625b544c5d727979796d58432e1803000000081a2b3c4c5c6a7886919c91888079746f6c6a6868696b6d71767b838c95988d8273655647372514020000000000000000000000000000091b2d40526474747363513f2d1b09021426384a5c6e74746c5a4735231000000000000000000000000000000000000000000000000000000000000113243646535757564c3d2c1a08000000000000000000000000000000000000000000000000000000000000000000000515232e343434343434343434343434343434343434343434343434343434343433302c261f170d02000000000000000000000515232e343434343434343434343434343434343434322b2b3334343434343434343434343434343434322a1d0f0000000000000000000000000000000001122334455667788a9b89776655556677899b8a78675645342211000000000000000000000000000000000000000000000000000000000d1820232a3e526573808a92887d746a60574d433a2f21100000000000000000000000000000000008141c21222222222222283d52667a8f8673646168727c8791928c8b8f90826f5d4a37242222222222222222222222201a1003000000101e2a333c434a4f54575a5a5a5a57534d443a2e20110007192c3e516375889684725f4a35200b0000000000000000000000101e2c38434c53595d6163646464728897826b564d47404254616464645f503d291500000000000d1e2e3e4c5a67738089929a948e898582807d7d7d8083868b9097978f867b6f635647382919080000000000000000000000000000011326384a5d6f828b806e5c4b3927150d1f31435567798b8a776452402d1b09000000000000000000000000000000000000000000000000000000000c1e304253646c6c6a5b49372514020000000000000000000000000000000000000000000000000000000000000000000005111a1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1e1b17120b040000000000000000000000000005111a1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1e18181e1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1d170c0000000000000000000000000000000000000f1f2c394a5b6c7d8f95847261617284958e7d6b5a49382c1e0e0000000000000000000000000000000000000000000000000000000000050b0f23364755616d78859091887d736a60564c3f2e1b080000000000000000000000000000000001080c0d0d0d0d0d0f23384c607386918277767b858f93887d77757c8b8d7a67533f2a160d0d0d0d0d0d0d0d0d0d0b060000000000000d1720282f363b3f4244444444423e3931281d100200000f213446596b7d847a705e4a35200b0000000000000000000000000e1a262f383f44494c4e4f4f5c728897826b5640332c36444d4f4f4f4c4132210e00000000000010202e3d4a56616c757d868c92969a979594949495989995908a837b72685e524538291a0b0000000000000000000000000000000b1e304355677a8d9e8c7a6856443220192b3d4f6072859794826f5d4a38261301000000000000000000000000000000000000000000000000000006182a3c4d5f7183837867554331200e0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000071a2c3d4a50505f70829390806d6d7d909382705f5050493c2b190600000000000000000000000000000000000000000000000000000000000006192938444f5b67727d8a9690877c73695d4b37230e000000000000000000000000000000000000000000000000091c304457697a8a938c8c90938a80756b62606c7d92826d59442f1a05000000000000000000000000000000000000040d141b21262a2d2f2f2f2f2d29241d150b000000000417293b4e607170675e52422f1b070000000000000000000000000009131c242b303437393a475c728897826b56402b182732393a3a3a383023140300000000000002101f2c39444f59626a71777c828688898b8b8b898784807b756f675f564c4034271a0b0000000000000000000000000000000416283b4d607285979497867361503e2c2436485a6c7d9098958d7a675543301e0c000000000000000000000000000000000000000000000000000012243647596b7c8f968472604f3d2b190800000000000000000000000000000000000000030b0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0b0400030b0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0e08000000000000030b0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0b0300030b0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0d08000000000000000710161a1b1b19150e04000000000000000000000000000000000000000e22364a5b656666667587988b79798b978675666666655a4935210c000000000000000000000000000000000000000000000000000000000000000b1a26323d4955616d7885909990867a66503b26110000000000000000000000000000000000000000000000000114273a4b5c6c798388898680766d63584e4f62778883705b46301b06000000000000000000000000000000000000000000070c1115181a1a1a1a18141009020000000000000c1e3143535e5d544b41342412000000000000000000000000000000000810161b1f222432475c72888b826b56402b16151e24252525231c12050000000000000000010e1b27323c464e565d63686c6f727374747473716f6b66615b544c43392e23170a000000000000000000000000000000000e213346586a7d8f98858a91806d5b493730415366778a9c8b85978572604d3b2916040000000000000000000000000000000000000000000000000c1e2f41536576899aa2907d6c5a493725130200000000000000000000000000000000000a161f24252525252525252525252525252525241f160a161f24252525252525252525252525252525231c12040000000a161f24252525252525252525252525252525241f160a161f24252525252525252525252525252525221b1103000000000e1a242b2f30302e2921170a00000000000000000000000000000000000011263b5065797b7b7b7b7b8d978686978c7b7b7b7b7b78644f3a240f00000000000000000000000000000000000000000000000000000000000000000914202c37434f5b67727d8a968472604d38240f000000000000000000000000000000000000000000000000000a1c2e3e4e5b666f7373716b635a50463b485d6f736d6656422e190400000000000000000000000000000000000000000000000000000000000000000000000000000000000214263542494841372e24160600000000000000000000000000000000000000060a0d1c31465b6e74747468543f2a15020a0f0f0f0f0e0900000000000000000000000009152029333b42494e53575a5d5e5f5f5f5e5c5a56524d47403830261c11050000000000000000000000000000000006192b3e506375889a8d7a7d908b786755433b4d5f7183959280798c907d6a584633210f00000000000000000000000000000000000000000000000618293b4d5f7083949c90998a78665443311f0d0000000000000000000000000000000009192733393a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3933281a2733393a3a3a3a3a3a3a3a3a3a3a3a3a3a3a372f2213020009192733393a3a3a3a3a3a3a3a3a3a3a3a3a3a3a393327192733393a3a3a3a3a3a3a3a3a3a3a3a3a3a3a372e21120100000f1e2c373f444646433d34281a0b000000000000000000000000000000000011263b50667b919191919195a39494a395919191919079644f3a250f000000000000000000000000000000000000000000000000000000000000000000030e1a26323d4955616c788479665442301d0900000000000000000000000000000000000000000000000000001020303d4a535a5e5e5c5750473d342d40515d5e595348382613000000000000000000000000000000000000000000000000000000000000000000000000000000000000000817252f34332d241b12060000000000000000000000000000000000000000000000172b3e505c5f5f5f594a392511000000000000000000000000000000000000000000030d161f272e343a3e424548494a4a4a484744413d38322c241c130a000000000000000000000000000000000000112436485b6d80929583707385968572604e46586a7c8f9987746f8294887563503e2c19070000000000000000000000000000000000000000000012243547596a7c8fa0907d8d968472604e3d2b1907000000000000000000000000000000142637454e4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4e46382737454e4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4b40311f0d00142637454e4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4e45372637454e4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4b3f301e0b000b1d2d3c4953595b5b585046382817050000000000000000000000000000000011263b50667b8f8f8f8f8f8f8f8f8f8f8f8f8f8f8f8f79644f3a250f00000000000000000000000000000000000000000000000000000000000000000000000814202c37434f5a66726e5b4937251301000000000000000000000000000000000000000000000000000002121f2c374045484847433c342a212232404849443f372a1a09000000000000000000000000000000000000000000000000000000000000000000000000000000000000000007121b1f1e191108000000000000000000000000000000000000000000000000000f21323f484a4a4a463b2d1b090000000000000000000000000000000000000000000000030b131a20252a2d30333434343433322f2c28241e18110900000000000000000000000000000000000000091c2e415365778a9d8b7866677a8c907d6c5a526476889a8e7b6964778a92806d5b493624110000000000000000000000000000000000000000000c1d2f41536476889a9785728293907d6c5a483625130100000000000000000000000000001b30435562646464646464646464646464646464635644314355626464646464646464646464646464645e4f3c2814001b30435562646464646464646464646464646464625543304355626464646464646464646464646464645d4e3b27120015283a4b5a666e70706c63564635220e0000000000000000000000000000000010263b5065777878787878787878787878787878787876634e39240f000000000000000000000000000000000000000000000000000000000000000000000000020e1a26323d49555e5c503e2c1a0800000000000000000000000000000000000000000000000000000000020f1a242b313333322e2820170e14222d3334302b24190c0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000313222d33343434322a1d0f000000000000000000000000000000000000000000000000000000060b1115181b1e1f1f1f1f1e1d1a17130f09030000000000000000000000000000000000081014151526394b5d70839593826e5b5c6e82938977655d6f82939583705e5a6c80928b786653412f1c1515120c030000000000000000000000000000000617293b4c5e7082949d8b79677588998a77665442301f0d00000000000000000000000000001f34495e7379797979797979797979797979797974604b36495e737979797979797979797979797979796b57412c17001f34495e73797979797979797979797979797979735e4934495e737979797979797979797979797979796a55402b16001b3044576978838786807464513e2915000000000000000000000000000000000d2135485963636363636363636363636b646363636362584734200c00000000000000000000000000000000000000000000000000000000000000000000000000000814202b374349483f32210f000000000000000000000000000000000000000000000000000000000000000710171c1e1e1d1a140d04000511191e1f1b16100700000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000109101617150e04000000000000000000000000000000000000000410191e1f1f1f1d170c0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000e1a24292a2a314356687a8d9b8976635151637588958371687a8d9c8a7765534f6174879583705e4c392a2a2a27201406000000000000000000000000000011233547586a7c8ea091806d5b6a7c8e958371604e3c2a1907000000000000000000000000001f344a5f748b909090909090909090909090908c76604b364a5f748b90909090909090909090909090836c57422c17001f344a5f748b909090909090909090909090908b745f4a344a5f748b90909090909090909090909090826b56402b16001f34495e7387969c9b92826d58432e180000000000000000000000000000000006192b3b474d4e4e4e4e4e4e58616c758071604e4e4e4d473a2a1805000000000000000000000000000000000000000000000000000000000000000000000000000000020e1a252f34332d22130300000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000b141d242b2c2921160700000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000030b0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0d0a06010000000000000000000c1d2c373e3f3f3f4e60738698917d6c594646586a7c8f8f7c74869891806d5a4845576a7c8f8e7b6956443f3f3f3b322414030000000000000000000000000b1d2f40526476889998867361505e7083948f7d6b5a48362413010000000000000000000000001f344a5f748b8f8f8f8f8f8f999b8f8f8f8f8f8c76604b364a5f748b8f8f8f8f8f9a9a8f8f8f8f8f8f836c57422c17001f344a5f748b8f8f8f8f8f8f9a9a8f8f8f8f8f8b745f4a344a5f748b8f8f8f8f8f9b9a8f8f8f8f8f8f826b56402b16001f344a5f748a9da5a398846e58432e1900000000000000000000000000000000000d1d2a3438383a444e57616b757d898f7d6a5540383833291c0c00000000000000000000000000000000000000000000000000000000000000000000000000000000000008131b1f1e191004000000000000000000000000000000000000000000000008101415151515151515151515151515151515151515151515151515151515151515151515130d040000000000000002070b0f13151717171715120e090200000000000000000000000000000000000007131d2730383f423e332515030000000000000000060c11141719191919181614110e090500000000050d1317191916120c040000000000000a161f2425252525252525252525252525252525252525252525252525252524221f1b150e060000000000000016293b4953545454596b7d90998774614f4b404d5f718395888092988673614f3d494f5f728597867361545454544f4232200c00000000000000000000000517293a4c5e6f82949e8c7a685644536576899b8977655342301e0c0000000000000000000000001f34495e727878787878787d9497827878787878735f4b35495e727878787878809595807878787878786b56412c17001f34495e72787878787878809595807878787878725e4934495e727878787878829795807878787878786a55402b16001e32475b6e808b908f887a6854402c1700000000000000000000000000000000000010212f3a434d57606a747d88928a7d7265523e2a231f170c000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000e1a24292a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a28211608000000000810161b2024282a2c2c2c2c2b27231d160e050000000000000000000000000000000d1925303a434c5357514332200d00000000000008121a2025292c2e2e2e2e2d2b2926231e1a140f090d1821282c2e2e2b2620170e0200000009192733393a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3937342f2922190f0300000000001d314558676a6a6a6a76899b8f7c6964645e4f425466788a948e9d8d7a6856444a5b646467798c917d6c6a6a6a6a614f3b2712000000000000000000000011223546586a7b8d9f92826e5d4b3947596b7d8f9583715f4e3c2a180600000000000000000000001b2f4354616363636363687d9497826b6363636361554430435461636363636a809595806a63636363635d4e3b2813001b2f43546163636363636a809595806a636363636154432f435461636363636b829795806a63636363635c4d3a261200182b3e51616e767979756a5c4b3925110000000000000000000000000000000000081b2e3f4c56606a737d88919084786d61554736230f0b0400000000000000000000000000000000000000080e0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0e0c0a07030000000000000000000000000000000000000000000000000c1d2c373e3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3c3326160500000e1a242b3035393d3f41424242403c38312a21170c00000000000000000000000003111e2b37424d5760686c614f3c291603000000020f1b252d353a3e414343434342403e3b37332e29231d1e2b343c414343403b342a2013040000142637454e4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4e4c49443e352b201405000000001f344a5f748080808082939985797979796b5741495a6d8091a39482705d4b3c51667979797982968980808080806a543f2a15000000000000000000000b1d2e40526475889999877563513f2d3c4e607184958f7d6b59473624120100000000000000000000132536444c4e4e4e4e53687d9497826b564e4e4e4d45372736444c4e4e4e546a809595806a544e4e4e4e4a3f301f0c00132536444c4e4e4e4e546a809595806a544e4e4e4c44362536444c4e4e4e566b829795806a544e4e4e4e4a3e2f1e0b000f213342505b62666660584d3e2e1c0900000000000000000000000000000000000e23374b5d69737d8790968a7d72675b4f43372919060000000000000000000000000000000000000004121c23252525252525252525252525252525252525252525252523221f1c18130d0700000000000000000000000000000000000000000016293b495354545454545454545454545454545454545454545454545454545454545454545454504434220f000c1d2c373f454a4e52545657575754514c463e34291d10010000000000000000000413212f3c48545f6a737b806c5946321d0900000312202d3841494f535658585858575653504c48433e37312f3c4750565858554f473d31221200001b3043556264646464646464646464646464646464646464646464646464646463615d5851493e312314050000001f344a5f748b959595969f9d90909090836c57423d4f6173869889776452403c52677c909090909b9895959595806a543f2a150000000000000000000517283a4c5d6f82939f8d7b695845342230425466788a9b8976655341301e0c0000000000000000000008182631383838383e53687d9497826b56493b3838322719263138383840556a809595806a543f383838362e2112010008182631383838383f546a809595806a56483b3838312618263138383840566b829794806a543f383838362d2011000004152433465b707b7b6a55402f201000000000000000000000000000000000000011263b50667a86909a9084786c6055493d32261a0b000000000000000000000000000000000000000213222f373a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a383734312d27221b130b010000000000000000000000000000000000001d314558676a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a62513e2a150016293b4953595e63676a6b6c6c6c6a66605951473b2e1f100000000000000000031322313f4d5966717c878f8975604b36200b00001021303e4a545d63686b6e6e6e6e6c6b6865615d57524c453e4d5a646b6e6d69635a4f402f1c08001f34495e737979797979797979797979797979797979797979797979797979797876726d655b4f423222120000001f344a5f748b8b8b8b8b8b8b8b8b8b8b836c5742324456687a837d6c5a47353c52677c8b8b8b8b8b8b8b8b8b8b806a543f2a150000000000000101011022344658697b8d9f94826f5e4c3a28162537495a6c7d909483705f4d3b2918060101010000000000000009151e232323293e53687d9497837466594c4034291f16151e23232d42576c8297947d69543f2a2323211b100300000009151e2323232a3f546a809596827366594c4034291f16151e23232e43586d8398937d68533e292323211a1002000000071e33485d7288826c57422c17020000000000000000000000000000000000000f24394d607285958a7d72665a4f43372c20140800000000000000000000000000000000000000000d1f31404b4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4e4c4946413c362f271e140800000000000000000000000000000000001f344a5f74808080808080808080808080808080808080808080808080808080808080808080806c57422c17001d314558676e73777b8082838382807a756d64594c3d2e1d0c00000000000000102131404f5d6b77848f8c80756c5c48341f0a000a1c2e3f4e5c6770787c828384848483807d7976716c666059515c6b778084837d766c5e4b37230e001f344a5f748b90909090909090909090909090909090909090909090909090908f8c8882786d6051402f1d0a00001f34495d707474747474747474747474746955412c394b5d6b6c6c604e3c2a3b506474747474747474747474747467533e29140000000911151616161c2e4051637587999a88766452402f1d0b192b3d4f617385978f7c6a5947352416161616130d03000000000002090d0e13293e53687d94a19285776a5d52463c322a24201f2334485c70869a917b66513c27120e0c07000000000008141c2122222a3f546a8095a09284766a5d51463b322a24201f2335485d71869b907a66513c27110e0c0600000000000a1f344a5f7389846e58432e19040000000000000000000000000000000000000a1e314355677984776c6055493d31251a0e0200000000000000000000000000000000000000000014283c4f5e646464646464646464646464646464646464646464646463615e5a56504a433a30261a0d000000000000000000000000000000001f344a5f748b9595959595959595959595959595959595959595959595959595959595959595836c57422c17001f344a5f7483888d919497989897948f8982766a5b4c3b29170400000000000d1e2e3f4f5e6d7b8995887a6e63594e3f2d1905001326394b5d6c79858d9296989999999895938f8b86827a746d656a7a89949998938a79644f3a250f001f344a5f748b91919191919196a595919191919191919191919191919191919194989c958b7d6f5e4c3a271300001a2e41515d5f5f5f5f5f5f5f5f5f5f5f5f5a4c3a262e3f4e565757504231213547575f5f5f5f5f5f5f5f5f5f5f5f584937241000000f1b252a2b2b2b2b3a4b5d6f8293a18f7c6a5947352311000e2032445567798b9a88766453412f2b2b2b2b28201506000000000000000013293e53687d94988893887b6f63594e463e38353437405163778b9f8c77624e39240f0000000000000007172530363737373f546a8095978893887a6e63584e453e38353438405164778c9f8b76614d38230e00000000000000000b21364b60758b866f5a45301b05000000000000000000000000000000000000011425384a5c6e72665a4e43372b2014080000000000000000000000000000000000000000000000172c41576b79797979797979797979797979797979797979797979797876736f6a655e564d43372b1e100100000000000000000000000000001f344a5f748b8c8c8c8c8c8c92a2908c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c9498836c57422c17001d32465b6f839795918d8c8b8c8d91979d9388796a594633200c0000000007192a3b4c5d6d7c8c948576695d51463d30211000001a2e4256697a8b97988f8a878684848687898c8f93958f898279748899948a888b86725e4a36220d001f344a5f737b7b7b7b7b7b7b8da18c7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7c7d838b979c8d7c6956422e1a050011233341494a4a4a4a4a4a4a4a4a4a4a4a463c2e1d21303b4142423d3324182a39444a4a4a4a4a4a4a4a4a4a4a4a453b2c1a08000c1d2d393f404040404557697a8d9e9583715f4d3c322414061727353e4a5c6e80929482705e4c40404040403c322414020000000000000013293e53687d94978283908d82766b6259534d4a4a4c525e6e80939986715d48341f0b00000000000000122535434b4c4c4c4c546a8095958083918d82756b6159524d4a4a4c525e6f82949885705c48331f0a00000000000000000d22374c62778d87705b46311c0700000000000000000000000000000000000000081b2d3f505c5e54483d31251a0e02000000000000000000000000000000000000000000000000172c42576c839090909090909090909090909090909090909090908f8e8c88858079726a6055493c2e1f0f00000000000000000000000000001f34495d70767676767676778da08b7676767676767676767676767676767676767676799098836c57422c1700172b4054687c85807b78767476787c838b96988876634f3b27120000000012243648596a7a8b96867566594c3f332920120300001e33485d71869897877b75716f6e6e6f717377797d83888d938d849098867672777d6a56422e1b07001c30445663666666666666778da18c7666666666666666666666666666666667696f7887999986715d48341f0a000515232e34343434343434343434343434322a1e10121f282c2c2c2921150c1b283134343434343434343434343431291d0e0000172a3b4a545656565656637587989b8a776656565042321f0f233545515656627486988e7c6a5856565656565042321f0b0000000000000013293e53687d94978272808d93897d756d67625f5f61666f7c8c9e907c6956422e1905000000000000001b2f42536062626262626a8095958072808d93887d756d67625f5f61666f7c8d9e8f7c6855412d190400000000000000000f24394e63788f88725d48331e0800000000000000000000000000000000000000000f21323f484943372b1f14080000000000000000000000000000000000000000000000000000172c42576c8391919191919192a09b9191919191919191919191919394979a99948e867d72675a4c3d2d1d0c000000000000000000000000001a2e41525e606060606062778da08b7460606060606060606060606060606060606064799098836c57422c17001125394d6171706b6763605f6063686e788799937d6a55402c160100000a1c2f41536577889989776757483b2e21160d020000001f344a5f748ba08f7a69605c5a58595a5c5f6265696e73787d858c98927c685d646b604e3b27130000142738464f505050505062778da18c7660505050505050505050505050505052545b697c90a08c76614c37220d000005111a1f1f1f1f1f1f1f1f1f1f1f1f1f1d170d00010c13171717140e04000a151c1f1f1f1f1f1f1f1f1f1f1f1f1d160c0000001d324659686b6b6b6b6b6e8092a2907d6c6b6b6b604e3b26152a3e52636b6b6b6b7a8d9988766b6b6b6b6b6b604e3b26110000000000000013293e53687d9497826b6e7b88939289827b777474767a828d9b968572604d3a261300000000000000001f34495e71777777777777809595806a6f7c88949289827b777474767a828d9b9584725f4c39251200000000000000000011263b50667b9089745f4a34200a00000000000000000000000000000000000000000414222d33342f25190d02000000000000000000000000000000000000000000000000000000172c42576c7b7b7b7b7b7b7b869b947d7b7b7b7b7b7b7b7b7b7b7b7c7d82868a9098999085776a5b4b3b291805000000000000000000000000122434424a4b4b4b4b4c62778da08b745f4b4b4b4b4b4b526267676763554b4b4b4f64799098836c57422c17000a1e3144535d5b56524e4b4b4b4e535b697c9198836c57422c170200001326394c5e7083958f7c6b5a49392b1d100400000000001f344a5f74899e907c6b625c58565655565657585b5c5f646a707d949079655051565042321f0b0000091a28343a3b3b3b3b4c62778da18c76604b3b3b3b3b3b3b3b3b3b3b3b3b3b3c404c62778ca18d77624c37220d00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001f344a5f748282828282828c9e9c87828282827d68533e29172c42576c82828282828398948282828282827d68533e29130000000000000013293e53687d9497826b5d6a75828c9696908c8b8b8c8f959f958777675543301d0a00000000000000001f344a5f748b8d8d8d8d8d8d9995806a5e6a76828c9696908c8b8b8c8f969f948777665442301d0a00000000000000000014293e53687d938c76614c37220d0000000000000000000000000000000000000000000410191e1f1b1308000000000000000000000000000000000000000000000000000000000014293d4f5f6666666666666f869b947d686666666666666666666667696c70757c848e999688796958473522100000000000000000000000000616242f35363636374c62778da08b745f4a36363636445a6f7c7c7c715c47363a4f64799098836c57422c170002142635414847413d3936353a434d58667b9097826c57422c170200071b2e4255697b8e9784715f4d3c2b1b0d000000000000001d32465b6f8294998a7d76706e6b6b6a6b6b6c6e70727477797d82949079644f3e403c322414020000000b172025262626374c62778da18c76604b4343434343444444444444444445485163788da18c76614c37220d000005111a1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1a1105111a1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1d170c000000000000001f344a5f748b97979797979ba0a098979797947d68533e29172c42576c839797979797a0a09797979797947d68533e2913000000070e131313293e53687d9497826b5658636e79828a919699999997928c83766959493726140100000000000000001f344a5f748b9393939393939393806a5459646f79838a919699999997928c827668594837251300000000000000000000172c41566b80958f78644f3a2510000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000d2032414d50505050505a6f869b947d68535050505050505050515254575b6168707b889797887664523f2c180400000000000000000000000006121b20212122374c62778da08b745f4a4a4a4a4a4a5a6f869388725c47323a4f64799097836c57422c1700000817242e33322d282e3a444d57606a7584968f7c68533f2a1500000d21364a5e7285998d79675442301e0d0000000000000000172b3f52647585919a928b86838282808282838486888a8c90928d999079644f3a2b282015060000000000040c10111122374c62778da18c76605858585858585a5a5a5a5a5a5a5a5a5d636f80939986725d49341f0a000515232e34343434343434343434343434343434342e2315232e34343434343434343434343434343434322a1d0f0000000000001f344a5f748b8b8b8b8b8b8b8b8b8b8b8b8b8b7d68533e29172c42576c838b8b8b8b8b8b8b8b8b8b8b8b8b7d68533e291300000d1923282929293e53687d9497826b5646515c666e767c82848484827d776f65594b3b2b1a080000000000000000001f344a5f747c7c7c7c7c7c7c7c7c7c695447525c666f767c82848484827d776f65584a3b2b1908000000000000000000031a2f44596e8498917c67523d281300000000000000000000000000000000000000000000000003070b0d0f0f0f0f0f0d0b070300000000000000000000000000000000000000000005142330383b3b3b3b445a6f869b947d68533e3b3b3b3b3b3b3b3c3d3f42474d545e6a788a9b94826f5b48331f0b0000000000000000000000000000070b0b0d22374c62778da08b745f5f5f5f5f5f5f5f6f869b88725c47323a4f64798282826c57422c1700000007121a1e1d20303e4b56606a737c87939082715f4c392510000013283c5065798d9a86715d4a372513010000000000000000102335475766737d868d92959897969597979795928f8c88837d80959079644f3a25130d03000000000000000000000d22374c62778da18c766e6e6e6e6e6e6e6f6f6f6f6f6f6f6f6f7277808e9b8d7b6956422e1a060011233341494a4a4a4a4a4a4a4a4a4a4a4a4a4a4a494133233341494a4a4a4a4a4a4a4a4a4a4a4a4a4a4a463b2d1b0900000000001f34495d7074747474747474747474747474747466523d28172c41556974747474747474747474747474747466523d2813000b1c2b363d3e3e3e3e53687d9497826b56403f49525b62676b6e6f6e6c69635c53483b2d1d0d000000000000000000001c31445764676767676767676767675f4e4d4649535b62676b6e6f6e6c69635c52473a2c1d0d00000000000000000000081d32475c71879c94806a55402b16010000000000000000000000000000000000000000050c12181c2022242525252423201c18120c050000000000000000000000000000000000001122323f4748484848485a6f869b947d685348484848484848484848473e3239414c5a6b7d919f8b77634e3a251100000000000000000000000000000000000d22374c62778da08b74747474747474747474869b88725c4732374b5d6a6b6b6b63523e2a15000000000000081b2d3e4e5c69737d8790958a8072635342301d090000182d41566b809493806a56422e1b0800000000000000000006182b3e4e58616a72787c8083848686848482807c7976726d7085998c77624d38230e0000000000000000000000000d22374c62778da28d8484848484848484858686868686868686878c9392897c6e5e4c3a271300001a2e41515d5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5d51412e41515d5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f594a39251100000000001a2e41515d5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5848362312263a4c5a5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f584836230e0015283a48525353535353687d9497826b56402d363f474d5256585a5857544f4840362a1d0f00000000000000000000001528394750525252525252525252545b606257463f474d5256585d5f605d574e42352a1c0e00000000000000000000000c21364b60758a9f98836e59442f1a0500000000000000000000000000000000000007101920272c3135373a3a3a3a3a3835312c272019100600000000000000000000000000000000192d40515c5e5e5e5e5e5e6f869b947d685e5e5e5e5e5e5e5e5e5e5e5b4f3e2b2f3d4e61758a9e927d68543f2a1500000000000000000000000000000000000d22374c62778da28f8b8b8b8b8b8b8b8b8b8b8c9d88725c47322e3f4e55565656514535230f0000000000001024374a5c6c7a8690958b82776d6154453524130000001b30455a6f85998f7965503b2713000000000000000000000a1e33475b6b6d676163686b6c6e6f6f6e6e6c6a6865615d697a8c9a86725d4934200b0000000000000000000000000d22374c62778da39b989898989898989898989898989898999b9c95857d766b5f50402f1d0a00001f34495d70747474747474747474747474747474705d4934495d7074747474747474747474747474747468543f2a15000000000011233341494a4a4a4a4a4a4a4a4a4a4a4a4a4a4a453a2b190a1d2e3c464a4a4a4a4a4a4a4a4a4a4a4a4a4a4a453a2b1907001c314558666868686868687d9497826b56402b232b33393e41434443423f3b342d23190c0000000000000000000000000a1b2a353b3c3c3c3c3c3c3c3f53656f7575624d3a444e59626b727474726a5f514232210f000000000000000000000010253a4f64788ea39b87715c47331e0900000000000000000000000000000000030f1a232c343b41464a4c4f4f4f4f4f4c4a46413b342c23190e0200000000000000000000000000001e33485d6f73737373737373869b947d7373737373737373737373736d5a46311f32465b70869a97826c57422d1800000000000000000000000000000000000d22374c62778da39794949494949494949494959d88725c47322b3c49505050504d4132200d000000000000162a3f5367798b988d82776e645a504436271b0f0100001e33485d72889d8c76614c37220d000000000000000000001025394d6276827b76706c6864605d5b5a58585a5c60656e798898907d6a57432f1b060000000000000000000000000d22374c62778da28d83838383838383838383838383838384878c958d82726352413222110000001f344a5f748b8b8b8b8b8b8b8b8b8b8b8b8b8b8b745f4a344a5f748b8b8b8b8b8b8b8b8b8b8b8b8b8b826b56402b1600000000000515232e3434343434343434343434343434343431281c0d00101e2a3234343434343434343434343434343431281c0d00001f344a5f747d7d7d7d7d7d7d9497826b56402b16181e24292c2e2f2e2d2a262019100600000000000000000000000000000c1821262727272727272c42576c838a7c67544d56616b757d878b8b867d7061503e2b18050000000000000000000013283d52677c91a69f8b75604c37220d0000000000000000000000000000000614202c3640484f555b5f626464646464625f5a554f483f362b201305000000000000000000000000001f344a5f74898989898989898b9c9689898989898989898989898988725c47321d2d42576c839899846e59442f1a00000000000000000000000000000000000d22374c62778da08b7d7d7d7d7d7d7d7d7d7d869b88725c473235495a656666665f4f3d2914000000000000192e43586d83978e7c6f645b51483e3e3d382d1f0e00001f344a5f748b9f89745f4a341f0a00000000000000000000152a3f53687c91908b86827c787572706f6e6e6f727579828b97928372604e3b2714000000000000000000000000010d22374c62778da18c766c6c6c6c6c6c6c6c6c6c6c6c6c6c6e717884939182705d4a36220e0000001f344a5f748b9494949494949e9e94949494948b745f4a344a5f748b94949494949f9e949494949494826b56402b1600000000000005111a1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1c150b0000000d171d1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1c150b0000001f344a5f748b9494949494949d97826b56402b16040a101417191a191815110c050000000000000000000000000000000000050d111212121212162b3f54697d928371636169737d8892918c8b908f806d5b4835210d00000000000000000000162b40556a8095aaa38f79644f3a25100000000000000000000000000000061524313e49535c636a6f7377787979797877736f6a635c53483d312315060000000000000000000000001f344a5f748b98989898989899a4a098989898989898989898989888725c47321d2c42576c82979b866f5a442f1a00000000000000000000000000000205060d22374c62778da08b7468686868686868686f869b88725c47323a4f64787b7b7b6c57422c17000000000000192e43586e84998b76625a5654535353524b3d2c1906001f344a5f748b9f89735e48331e0900000000000000000000172c42576c82888e939896928e8b888786848486878a8f95988e8273645443311e0b000000000000000000091115161622374c62778da18c766057575757575757575757575757595d6675889c8d7965513d28130000001f344a5f747d7d7d7d7d7d809595807d7d7d7d7d745f4a344a5f747d7d7d7d7d829795807d7d7d7d7d7d6b56402b16000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001f344a5f748b8b8b8b8b8b8b8b8b826b56402b16010000000000000000000000000000000000000000000000000000000000000000000000000011263a4e6276898f8077767c869091877d76767d8d8b7764503c281300000000000000000000162b40566b8297aca7917b66503b26110000000000000000000000000005152433424f5b666f777d84898c8f9090908f8c89847d776f655a4e413324150500000000000000000000001f344a5f7483838383838383869b9483838383838383838383838383725c47321d2e43586d839899846e58432e19000000000000000000000000020e161b1b1b22374c62778da08b745f5353535353535a6f869b88725c47323a4f64799091836c57422c17000000000000172c4055697c8f9280756e6b6a686868675b4935200c001f344a5f748b9f89735e48331e0900000000000000000000152a3e52636d73797d84888c8f929497989899989794908b847a706455463625140100000000000000000f1b252a2b2b2b374c62778da18c76604b4242424242424242424242424449596d839895806b56402b160100001c3145586668686868686a809595806a6868686866584531455866686868686b829795806a686868686860503c2813000000030b0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0e0c0906010000000000000000000000000000000000000000001f34495d707474747474747474747468543f2a1500000000000000000000000000000000000000000000000000000000000000000000000000000b1f3346596b7c8c928c8c91928980746a62616e8294806b56412c1702000000000000000000162b40556a80939f9e8d7965503b2610000000000000000000000000011223334251606d78838c93999b979593939394979b99938b83776c5f514232221100000000000000000000001d32465a696c6c6c6c6c6c6f869b947d6c6c6c6c6c6c6c6c6c6c6c6c6857442f2436495d71879b96826b57412c1700000000000000000000000313202a30303030374c62778da08b745f4a3e3e3e3e445a6f868888725c47323a4f64799098836c57422c1700000000000012263a4d5f707d8991898482807d7d7d78634e38230e001f34495e73899e8b75604b36210c000000000000000000000f23354551595f656a6f7377797c808283838483827d7b7670675e53463728190800000000000000000c1d2d393f404040404c62778da18c76604b4040404040404040404040404045586c839897836c57422c1702000015283a485253535353546a809595806a5453535352483a283a4852535353566b829795806a54535353534e4232200d00000a161f24252525252525252525252525252525252525252525252423211e1a16110b040000000000000000000000000000000000001a2e41515d5f5f5f5f5f5f5f5f5f5f594a392511000000000000000000000000000000000000000000000000000000000000000000000000000003172a3c4e5e6e7a848989867d756c61574e51657987826e58432e190300000000000000000012273b506375848a8980705d4a36220d0000000000000000000000000c1e30415161707d8b969c938c8683807d7c7d8083868c939c958a7d6f6151402f1d0b00000000000000000000172a3c4c5557575757575a6f869b947d685757575757575757575757554a3a2a34425365788ca1907c67533e291400000000000000000000000f21313d45464646464c62778da08b745f4a4646464646576a7272726c5a4646464f64799098836c57422c170000000000000a1d304151606c757c8290969494948f78634e38230e001d32475c70869b8d78634e39251000000000000000000000061727353e454a50555a5e6265676a6b6c6c6e6c6b6966625b544b413528190a000000000000000000172a3b4a54565656565662778da18c76605656565656565656565656565656596273879b95806b56402b160100000b1c2b363d3e3e3e3f546a809595806a54443e3e3d362b1c2b363d3e3e40566b829795806a543f3e3e3e3b322415030009192733393a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a393836332f2b251f1810070000000000000000000000000000000011233341494a4a4a4a4a4a4a4a4a4a463b2d1b090000000000000000000000000000000000000000000000000000000000000000000000000000000c1e3040505d676f7373706a62594f443a4b5f70726d6453402b17020000000000000000000c20334657667074746d6152412e1b0700000000000000000000000215283b4d5e6f808f9c94898077716d6a6867686a6d71778089949b8e806f5e4c3b2815020000000000000000000d1e2e3a4142424242445a6f869b947d6853424242424242424242424038373d4652607082959c8975614d3924100000000000000000000000192c3e4f595b5b5b5b5b62778da08b745f5b5b5b5b5b5b5b5b5c5c5c5b5b5b5b5b5b64799098836c57422c170000000000001024374a5b6b77838a908b888787878778634e38230e00192e43586d8297927c68533f2b1704000000000000000000000917222a30363b4045494d50555f666b6c6c6a655d534d4740382e24170a000000000000000000001d324659686b6b6b6b6b6b778da18c766b6b6b6b6b6b6b6b6b6b6b6b6b6b6b6e758290a18e7a66523d2813000000000d19232829292a3f546a80959580706254483b2f241a11192328292d42576c8397947d68533e292929261f14060000142637454e4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4e4d4b48443f3a332c241a0f0400000000000000000000000000000515232e3434343434343434343434322a1d0f00000000000000000000000000000000000000000000000000000000000000000000000000000000011222323f4b545b5e5e5c564e463c323042525d5d585246362410000000000000000000000416283948545c5f5f5a51433423110000000000000000000000000b1f3245586a7c8e9e9183766c635d585453525354585d636c7683919d8d7c6a5845321e0b000000000000000000061727353e40404040445a6f869b947d68534040404040404040404244474b515963707d8f9f91806c5946321e0a00000000000000000000001e33485c6d707070707070778da08b7470707070707070707070707070707070707070799098836c57422c17000000000000152a3f5366798995867c7673707070706f5f4b37220d00152a3f53687c9197836e5a4633210e0000000000000000000000050f161c22272c303b4b5a67727a80838380797065574838261b110600000000000000000000001f344a5f74828282828282828ea18c828282828282828282828282828282828389929f9383715e4b37230e00000000030f171c1d1d2a3f546a80959d8e807265594c41372d251e1b1a2033475b70869a917b66513c271313110b020000001b30435562646464646464646464646464646464646464646464646362605d59544e4840372d211508000000000000000000000000000005111a1f1f1f1f1f1f1f1f1f1f1f1d170c0000000000000000000000000000000000000000000000000000000000000000000000000000000000000413212e384046484847423b3329202534414949443e3528180700000000000000000000000b1b2a3741474a4a463e3325160600000000000000000000000012263b4e6175889a9483726559504843403e3c3e404348505965728394998875614e3a26120000000000000000000f2335455156565656565a6f869b947d685656565656565656565657595c60656c75828e9d948473614f3d2a160300000000000000000000001f344a5f74878787878787878fa18d8787878787878787878787878787878787878787879298836c57422c17000000000000182e43586d83968d7868615e5c5b5b5b5a5142301c08001024394d6175899c8a7663503d2b1a0800000000000000000000000001080d12213447596978858e8e8b8b8f8d8375665543301d090000000000000000000000001f344a5f748b9797979797979ba09a97979797979797979797979797979797989c978f83746553412e1b080000000413212b313232323f546a8095998d9083766a5e5349403933302f323d4f62768a9f8d77634e39240f000000000000001f34495e7379797979797979797979797979797979797979797979787775726d68635b534a3f3326190a0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000003101b252c313333322d271f160d16242e34342f2a23180a000000000000000000000000000c19242d323434312b21160700000000000000000000000002182d41556a7d929c89766554473c342e2b2927292b2e343c47546476899c917d6955412d18030000000000000000152a3e52636b6b6b6b6b6b6f869b947d6b6b6b6b6b6b6b6b6b6b6b6c6e7074798089939e92847566554432200d0000000000000000000000001f344a5f748b9b9b9b9b9b9b9b9b9b9b9b9b9b9b9b9b9b9b9b9b9b9b9b9b9b9b9b9b9b9b9b98836c57422c17000000000000192e43586e84998c77685d534a464646453f33241300000a1e3246596d809393806d5a4937261607000000000000000000000000000014283c506376888e827975767a83908573604c38240f0000000000000000000000001f344a5f748b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8a88837b71645647362412000000001022323e4647474747546a809595808894887c70665d544d484544474e5b6c7d929a86725d4935200b000000000000001f344a5f748b9090909090909090909090909090909090909090908f8d8b87837d776f665c514436281909000000000000030b0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0c0500060c0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0d070000000000000000000000000000000000000000000000000000000811181c1e1e1d19130c030006121a1f1f1b150f060000000000000000000000000000000711191d1f1f1c170e0400000000000000000000000000081d32465b70859995826c5947372a201a15131213151a202a3647596c80949985705b46321d080000000000000000172c42576c82828282828282869b948282828282828282828282828384868a8f959c958c8073665748382715030000000000000000000000001f344a5f74868686868686868686868686868686868686868686868686868686868686868686836c57422c17000000000000172c41556a7d8f95867a70675d544a3e312b221506000003162a3d506375889a8a786655443425170b00000000000000000000000000182d42576b80928070656060667283907b67523d28130000000000000000000000001f34495d70747474747474747474747474747474747474747474747474747474726d675f53473829180700000000192d3f505b5c5c5c5c5c6a809595807785918e83797068625d5a5a5c616b798a9c927d6a57432e1a06000000000000001f344a5f748b91919191919196a5959191919191919191919191929395979b97928b83796e62544637271605000000000a161f2425252525252525252525252525252421180e192124252525252525252525252525252525221a0f020000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000b20354a5f74899e8f7a65513d2a190d050000000000050d19293d5065798f9e89745f4a35200b0000000000000000172c42576c8397979797979797a09f97979797979797979797979797999b98948f8982786e625648392a1a09000000000000000000000000001e33475b6b6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6654402b1600000000000012263a4d6070808d978d837a70665b4f4030200f000000000e213346586a7c8e95847262524335281c11070000000000000000000000192e43586e848c7762524b4c54667b91806a543f2a150000000000000000000000001a2e41515d5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5d59534c4136291a0b00000000001e33485c6e727272727272809595806a73808d968d847c76726f6f70757d8997988774614e3b271400000000000000001f344a5f737b7b7b7b7b7b7b8da18c7b7b7b7b7b7b7b7b7b7b7b7c7c8083878c939b968c807264554534231100000009192733393a3a3a3a3a3a3a3a3a3a3a3a3a3a3a352b1e2b353a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a362d20100000000000000000000000000000060c0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0d06000000000000000000000000000000000000000001080d1215171717171613100c0803000000000000000000000000000d22374c62778ca18c77624d38230e0000000000000000000d22374c61768ca18c77624c37220d0000000000000000172c42576c838b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b898784807a746d655c5145382a1b0c0000000000000000000000000000182b3e4e585a5a5a5a5a5a5a5a5a5a5a5a6a756a605a5a5a5a5a5a5a5a626d75665a5a5a5a5a5a55483724110000000000000b1e314353626f7a858d968d84796d5e4e3e2c19060000000417293b4d5e6f80919180706153463a2e23190d00000000000000000000182e43586d838f7a695d5859606d80927d68533e291400000000000000000000000011233341494a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a48443f382f24180b0000000000001f344a5f74888888888888889795806a626f7a869198918b878686878a919b988b7a695745321f0c00000000000000001c30445663666666666666778da18c766666666666666666666667686a6d72778088929e9183736352402e1b080000142637454e4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f483b2c3c494f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4a3e2e1c090000000000000000000000000e1921242525252525252525252525252525252524211a0e0100000000000000000000000000000000030d151c22262a2c2c2c2c2b2825211d17110a00000000000000000000000d22374c62778da18c76604b36210b0000000000000000000a20344a5f748ba08e78634e38230e0000000000000000172c415569747474747474747474747474747474747474747474747473716e6a65605951493e33271a0c0000000000000000000000000000000f20303c43444444444444444444444e6376887d72675c514649545f6a758084725f4a4444444441382a1a08000000020d141716253544525d67717a838d968b7c6c5b4936220e000000000c1e2f4152627282918f807164574b40362b1c0b000000000000000000152a3f53677a8d887a716e6e737d8c8976634e3a25110000000000000000000000000515232e34343434343434343434343434343434343434343434343434343434332f2b241c1207000000000000001f344a5f748b9898989898989895806a545d68737d888f969b9b9b9b9c9790877a6c5c4b3a2815020000000000000000142738464f505050505062778da18c7660505050505050505050525355585d636b74808e9d91826f5d4b38241100001b30435562646464646464646464646464646464594836495a646464646464646464646464646464645c4b38241000000000000000000000000e1e2b353a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a362c1f0f0000000000000000000000000000000a15202930363b3f41424242403d3a36312c261c10020000000000000000000d22374c62778da08b76604b36210b0000000000000000000a1f344a5f748ba08f78634e38230e000000000000000012263a4c5a5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5e5c5955514c453e362c2116090000000000000000000000000000000002121f292e2f2f2f2f2f2f2f2f2f394e6273828f85796e63595c66717c878c7d705e4a352f2f2f2d261a0c00000004131f282c2b262634404a545d66707b899a8b7865513d2814000000000012233444546372828f8f8275695d53483a29160300000000000000001024384b5d6f808c8d8684848890897a6a5946331f0b0000000000000000000000000005111a1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1e1b1610080000000000000000001f344a5f74838383838383838383806a544b56616a737b828689898987837c74695c4e3e2e1c0b000000000000000000091a28343a3b3b3b3b4c62778da18c76604b3b3b3b3b3b3b3b3b3c3e4044494f57626f80909f8d7a6754402c1804001f34495e73797979797979797979797979797977644f3b50657879797979797979797979797979797968533d281300000000000000000000061a2c3c494f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f493d2d1b08000000000000000000000000000d1b27323c444b50545757575755534f4b4640392e200f0000000000000000000d22374c62778da08b745f4a341f0a0000000000000000000a1f344a5f748ba08f78634e38230e00000000000000000a1d2e3c464a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a484744413c37312a22190f04000000000000000000000000000000000000010d15191a1a1a1a1a1a1a1a1f33455563707d8c8c82766b6e79848f887a6d6052422f1b1a1a181209000000001222313c41403a35312f38414a535e6a7d9295806b57412c17020000000005162636455463707d8a93877a70665846321d090000000000000000081b2e4051616e7982888a898680766b5c4d3c2a1704000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001d32465a696c6c6c6c6c6c6c6c6c6c62503c444e5760676c70737473726e6861574c3e30201000000000000000000000000b172025262626374c62778da18c76604b362626262626262627282b2f343b45516172859997846f5b47321e09001f344a5f748b9090909090909090909090909079644f3b50667b90909090909090909090909090907d68533e2913000000000000000000000d2236495a6464646464646464646464646464646464645b4a37230f0000000000000000000000000d1c2b39454f585f65696b6c6c6c6a6864605b554c3e2c1a060000000002090d0e0e22374c62778da08b745f4a341f0e0e0c06000000050b0e0e1f344a5f748ba08f78634e38230e0e0d09010000000000101e2a32343434343434343434343434343434343434343434343433322f2c28231d160f0600000000000000000000000000000000000000000000000000000000000000031627374552606d7a8893887d808b9285776a5d4f423424120000000000000000081c2f404f57544f4a46444344474c54667b9098836c57422c170200000000000818273645535f6c77838d8d8375604b36200b00000000000000000011223342505c666d727474716c63594d3e2f1e0c0000000000000000000000000000000000000000000000000002080b0a050000000000000000000000000000000000000000000000000000000000172a3c4c5557575757575757575757514433313b444c53585c5e5f5e5c59544d443a2e201202000000000000000000000000040c10111122374c62778da18c76604b36211111111111111213161a2028334355697d929f8a75614c37220d001f344a5f748b91919191929ca596909090909079644f3b50667b909090909099a5a59891919191917d68533e29130000000000000000000010263b506578797979797979797979797979797979797966513c27120000000000000000000000091a2b3a4956626c73797d82838382807c78746f695c4935210c00000009151e23232323374c62778da08b745f4a3423232320190e010d1820232323344a5f748ba08f78634e38232323221d140800000000000d171d1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1e1c1a17130e0902000000000000000000000000000000000000000000000000000000000000000000000a192734424f5d6a77859290938f827366594c3f3124160600000000000000000e23374b5e6b69635f5b5958595c606772829595826b57412c170200000000000009182735424e5a65707983836f5c48341f0a000000000000000000051524323f4a52595d5f5f5c5750473c2f2011000000000000000000000000000000000000000000000000030c151d201f1910030000000000000000000000000000000000000000000000000000000d1e2e3a41424242424242424242423e34261e2830383e4347484a484744403931281d100200000000000000000000000000000000000d22374c62778da18c76604b36210b0000000000000000060c16263a4e63778da28f79644f3a2510001f344a5f737b7b7b7b7b7d8b988f807979797977644f3b506578797979798293a194877b7b7b7b7b7a68533e28130000000000000000000011263b50667b909090909090909090909090909090907c67523c271200000000000000000000011426384958677480888e939798989795928e898478634e38230e00000818263138383838384c62778da08b745f4a38383838352c1f0f1e2b3438383838495e73899f8f78634e38383838373126170700000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000091724313f4c596774828b8b7d706356493b2e21140600000000000000000015293d5165797d7874706e6e6e70757b84909e8d7966523d29140000000000000000091724303d48535d666e7466533f2c1905000000000000000000000615212d373e44484a4a47433d342a1e110200000000000000000000000000000000000000000000000b161f283136342d211302000000000000000000000000000000000000000000000000000000101d262c2c2c2c2c2c2c2c2c2c2c2a22160b151d24292e31333433322f2b251e150b000000000000000000000000000000000000000d22374c62778da18c76604b36210b000000000000000000000b20354a5f748ba0917b66513c2712001c3044566366666666666d7a8895908274676464594836495a64646a7785929e9183766966666666665d4c3925100000000000000000000011263b50667b919191919191929d9e929191919191917c67523c271200000000000000000000091c304355677685929b98928e8c8b8c8d90949887725e4a36210c0000132536444c4e4e4e4e4e62778da08b745f4e4e4e4e4e493d2d1b2c3c484e4e4e4e4e5e73899f8f78634e4e4e4e4e4c433524120000000000000000000000000004090f1316191b1d1d1d1d1c1b1815120d080200000000000000000000000000000410191d1e1e1e1d180f0400000000000000000000000000000000000613212e3b4956637074746d605345382b1d1003000000000000000000001b2f44586c82928d8986848484868a8f979b8f806f5d4a37230f00000000000000000006131f2b36404a535a5f584836231000000000000000000000000004101a232a2f333434322e2921170d0000000000000000000000000000000000000000000000000c1c29333b454b483f31200e000000000507070707070707070707070707070707030000000000000a121717171717171717171717150f050001090f15191c1e1f1e1d1a16110a0200000000000000000000000000000000000000000d22374c62778da18c76604b36210b000000000000000000000a1f344a5f73899f937c67523c271200142738464f50505050505c6a7785929386786a5d5042384553606e7b89969b8d8072655850505050504b3f2f1d090000000000000000000011263b5065797b7b7b7b7b7b829798837b7b7b7b7b7b7a66513c2712000000000000000000000f23384c60728595998c847d78767576777a7d84806b57432f1b0700001b2f435461636363636363778d9f89736363636363635b4b3824374a5a63636363636373899f8f786363636363636053412e1a00000000000000000000020a11181e23282b2e303232323232302d2a26221c160f0800000000000000000000000514222c32333333322c211404000000000000000000000000000000000003101d2b3845535d5f5f5c4f4235271a0d0000000000000000000000001f34495e72889095999b9999999b9b9790887d706151402d1a0700000000000000000000020d19232d373f464a453a2b19070000000000000000000000000000070f161b1e1f1f1d1a140d0400000000000000000000000000000000000000000000000006192a3a464f58605c4f3d2b18060009141a1d1d1d1d1d1d1d1d1d1d1d1d1d1d1d1c170e0300000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000d22374c62778da18c76604b36210b000000000000000000000d22364b60758ba0917b66503b261100091a28343a3b3b3b3b3e4c596674828f96897b6e6053495663707d8c99978a7c6f6255483b3b3b3b3b372e211100000000000000000000000e22364a5b6566666666666b829798836c6666666666655c4b38230f0000000000000000000013283d51667b8f9c8a7a70686461606063666a6f7264503c28140000001f34495e72787878787878788d9f897878787878787867523d283c516677787878787878899f8f78787878787878715d48331e0000000000000000020c151e262c33383d404346474747474745423f3b37312a231b12090000000000000000001122323f47484848473f32210f000000000000000000000000000000000000000d1a283541494a4a483e3224170a000000000000000000000000001e33485c6e767b808487898b8b8987837c756b5f51423322100000000000000000000000000006111a232b323431281c0d0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000e22364858626b756d5a483523110c1b272f323232323232323232323232323232312b201303000000000000000000000a1012121212100a000000000000000000000000000000000000000000000000000000000000000000000000010d22374c62778da18c76604b36210b01010101010203060a111b2a3d5065798ea38e78644f3a240f00000b172025262626262e3b495663707d8c998c7d7063596774828f9c9486796c5e5144372a26262626231b10030000000000000000000000071a2c3d4a5050505050566b829798836c5750505050504a3e2e1b0800000000000000000000152a3f54697d9495806c5d544f4c4b4b4d51555a5d564734210d0000001f344a5f748b8f8f8f8f8f8f94a2928f8f8f8f8f8f7d68533e293c52677c8f8f8f8f8f8f92a2958f8f8f8f8f8f89735e48331e0000000000000009141e28313940474c5155585b5c5c5c5c5c5a5754504b453e372e261b110500000000000000192d40515c5e5e5e5b503f2c1800000000000000000000000000000000000000000a17242e343434332c2114060000000000000000000000000000192d3f505b61666b6f7173747473716d6861584e41332415050000000000000000000000000000000710171d1f1c150b000000000000000000030d1315151515120b0102080e1216191b1c1d1c1b1915100a04000000000000000000000000000000000011273c5165757d88776552402d1b192a3843474747474747474747474747474747463e31210f000000000000000004121d2527272727251d120400000000000000000000000000000000000000000000000000000000000000091115161622374c62778da18c76604b362116161616161617181b1f242d3948596c80949d89745f4b36210c000000040c10111111111d2b384553606e7b89968f82746a7785929d908375685b4e40332619111111110e0800000000000000000000000000000f1f2c363b3b3b3b40566b829798836c57423b3b3b3b372d2010000000000000000000000014293e53687d9394806a594e453c3636383c40464843382917050000001f344a5f748b9393939393939393939393939393937d68533e2e3c52677c93939393939393939393939393939389735e48331e0000000000000d1a26313b444d555b61666a6d7072727272706f6c69655f59524b42382e2216090000000000001e33485d6f7373736e5b47321d00000000000000000000000000000000000000000006121a1f1f1f1e190f030000000000000000000000000000001022323f474d52565a5c5e5f5f5e5c58534d453b302415060000000000000000000000000000000000000000000000000000000000000000071520272a2a2a2a261e13161d22272b2e30313232302d2a251e180f0500000000000000000000000000000011263b5064768995826f5d4a3826233648565c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5a4f3e2b180000000000000001132330393c3c3c3c393023130100000000000000000000000000000000000000000000000000000000000f1b252a2b2b2b374c62778da18c76604b362b2b2b2b2b2b2b2c2d303339404a576676899c95826d5a45311c08000000000000000000000d1a283542505d6b78869392857a88959a8d807264584a3d302316080000000000000000000000000000000000000000010f1a222626263342566b829798836c574232262626231b1002000000000000000000000012263b5064788c9a87776b61584f463b30272c31332f261a0b000000001f344a5f747c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c68533e414b54677b7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c725d48331e0000000001101e2b38434e58616970767b808386878888888785827d79746d665e554b4034271a0b00000000001f344a5f74898989735e48331e000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000414212c33383d414447484a4a4947443f3931281e13060000000000000000030d14171611090100000000000000000000000000000000041525333c3f3f3f3f3b30232a31373c40434546474745423f39332b22180c00000000000000000000000000000d213547596b7d8f8d7a67554330293e52667272727272727272727272727272726d5b47321d000000000000000b1e30414d525252524d41301e0b000000000000000000000000000000000000000000000000000000000c1d2d393f404040404c62778da18c76604b4040404040404040414245484d545c677484959c8a7865523e2a160200000000000000000000000a1725323f4d5a67758390958e9996897c6e6154473a2c1f12050000000000000000000000000000000000000000000000070e16253342516170829798836f6051423223140e08000000000000000000000000000d2135495c6e808f95897d756c62594e4132231c1e1b140900000000001c3144576467676767676767676767676767676767675e4d4a545e676967676767676767676767676767676767676456432f1b00000000101f2e3c4955606b747c848a9094989b9c9b9b9b9c9a97938f89827a71675d524537291a0b000000001f344a5f748b9f89735e48331e0000000000000000000000000002080b0a050000000000000000000000000000000000000000000000000000000000040f181e24282c2f3233343434322f2a251e150c010000000000000000051420292c2b251d140a0000000000000000000000000000000d21334350545454544e41363e454b5155585a5b5c5c5a57534e473e35291d100100000000000000000000000005182a3c4e607284968572604d3b2a3f546a808888888888888888888888888888735e48331e0000000000000012263b4e5f676767675f4e3b261200000000000000000000000000000000000000000000000000000000172a3b4a54565656565662778da18c766056565656565656565656575a5d6268707986939d8f7d6d5b4936220f000000000000000000000000020f1c293643505e6b78869b9e9e8b796c5f5144372a1c0f020000000000000000000000000000000000000000000000000716253443516170808f9d988e7d6f605141322314040000000000000000000000000006192c3f5061707d8993928880756b5f5141301e0b0000000000000000152839475052525252525252525252525252525252524c545d67717a79675652525252525252525252525252525250473826140000000d1e2e3d4c5a67727d8890989a948f8b888786868787898d91969c968e857a6f635547382919080000001f344a5f748b9f89735e48331e0000000000000000000000030c151d201f1910030000000000000000000000000000000000000000000000000000000000040a0f13171a1d1e1f1f1f1d1a16100a02000000000000000000011323323d42403830271d13070000000000000000000000000014283d50616a6a6a695f4d4a525960656a6d6f7072706f6c68625a51473b2e1f10000000000000000000000000000d1e30425466788a8f7c6a5845333f546a80958a898989898989898989898d89735e48331e00000000000000152a3f54697c7c7c7c69543f2a15000000000000000000000000000000000000000000000000000000001d324659686b6b6b6b6b6b778da18c766b6b6b6b6b6b6b6b6b6b6b6c6f72767c838c97998d8070604f3d2b190600000000000000000000000512202d3a4754616e7b8996998c8d978a7c6f6255483a2d201306000000000000000000000000000000000000000000000716253443526170808f9d8e84938e7d6f5f504132231404000000000000000000000000000f213242515f6b7580899292887d6f5f4d3a271400000000000000000a1b2a353b3c3c3c3c3c3c3c3c3c3c3c3c3c3c4049535d67707a858e85735f4a3c3c3c3c3c3c3c3c3c3c3c3c3c3c3b34291a090000081a2b3c4c5b6a7785909b968d868079767370706f707274777c8288909a988d82736556473625140200001f344a5f748b9f89735e48331e000000000000000000000b161f283136342d2113020000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000b1e30414f57544c433a3025190d010000000000000000000000162b40566b8080807c67545d666d747980838687888786827c766e64594c3d2e1d0c00000000000000000102020202132537495b6d8091887562503d3f53687d9283737373737373737373738889735e48331e00000000000000152a3f546a809393806a543f2a150e0e0c080400000000000000040a0d0e0e0c080200000000000000001f344a5f74828282828282828ea18c8282828282828282828282828384888b90979a92887b6f61514231200e0000000000000000010101091623303d4a586572808d9a96897b7b89968e807265584b3e3023160901010101000000000000000000000000000000000817253443526170808f9d8e7d7484948e7d6e5f5041322314040000000000000000000000000d192433414e59636c75808a988e7c6a57432e190500000000000000000c1821262727272727272727272729353f49535c667079848d9084776c5b4733272727272727272727272727272621170b000000122537495a6a7988969a8e8379716a65615e5c5b5a5b5c5f62676d747d87929f928474645443311f0c00001f344a5f748b9f89735e48331e0000000000000000000c1c29333b454b483f31200e0000000000000000000001090e0f0f0f0d0600000000000000000002090d0e0e0e0d090100000000000000000000000000000000000014273a4d5f6c6860564d42372b1e110400000000000000000000162b40566b8295937c6767707982898f94989b9b9b9b9a97918a82766a5b4c3b291704000000000009111617171717171a2c3d4f61738692806d5a483a4e61758690857b75706c6864605e728889735e48331e00000000000000152a3f546a809595806a543f2a232323211d18120b0400000711191f222323211c160e050000000000001f344a5f748b9797979797979ba09a97979797979797979797979798999b97928d867d756a5e51423324140200000000000911151616161a2734414e5b687583909d9285776a6b788693918476695c4e4134271a16161616130c020000000000000000000000000817263543526170808f9e8e7d6f657585948d7d6e5f504132231404000000000000000000000b1c2b363d3e3e465059626d798a9a86715c47321c07000000000000000000050d11121212121212121213263847525c666f79838d95897d72665a4e3e2b18121212121212121212121212110d05000000081c2f42546677889898897c70665d56504c4947464446474a4e5359606a75828f9e938372604e3b281502001f344a5f748b9f89735e48331e000000000000000006192a3a464f58605c4f3d2b1806000000000000000007141d23252524211a0e0100000000000009151e23232323221d140800000000000000000000000000000000001c3044576a7d7b73695f54483c2f221404000000000000000000162b40566b8297937c6f79848d9596918c8987868686888d939b9488796a594734210d000000000e1b252b2c2c2c2c2c2c2c324456687a8c8a7765524045576876838d908a86827c79746f728282735e48331e00000000000000152a3f546a809595806a543f3838383836322d261f170e0d19242d3337383836312a21170c00000000001f344a5f748b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b898886837d78726a61584c403324150600000000000f1b252a2b2b2b2b3845525f6c7987949d8f8274675a5a6774828f9487796c5f5245372b2b2b2b2b28201405000000000000000101010817263544526170808f9e8f80706057667586958d7d6e5f50413223130401010100000000000015283a48525353535354586072889c88725c47321d0700000000000000000000000000000000000000001a2e4255656f78838c968f83776b6054483d30200f0000000000000000000000000000000000001024384c5f7184959a8a796b5e534a423c373431302f303235393e454d5763708090a1907d6b5845311d09001f344a5f748b9f89735e48331e00000000000000000e22364858626b756d5a483523110000010101010105162531383a3a3a362c1f0f000000000008182631383838383731261707000000000000000000000000000000001f344a5f73878f867c71665a4d40322314040000000000000000162b40566b8297937c828d979088827c7773716f6f70737780899698887663503c28140000000b1c2c38404242424242424242424b5c6e8292826f5d4a394a5966707980868a8e928e89847c736b675845301c00000000000000152a3f546a809595806a544a4d4e4e4d4b47413b332a211d2a3640484c4e4d4b463e34291c0c000000001f34495d70747474747474747474747474747474747474747474747472706d69645d574e453a2f22150600000000000c1d2d393f40404040485562707d8a979a8d8071645649495764717d8c988b7d7062554840404040403c3223130100000009111516161617263544536270808f9e8f807061514857677686958d7d6e5f50413122161616161511090000001c31455866686868686a6d727d8e91806d59442f1b0600000000000000000000000000000000000000001d32475c71828c9595897d71665a4e43372b1f1202000000000000000000000000000000000000162b3f53677b8fa18f7c6b5b4d41362e27221f1c1b1a1b1d20242a313a4552617284969b8875604d38240f001f344a5f748b9f89735e48331e000000000000000011273c5165757d88776552402d1b10151616161616162334434d4f4f4f493d2d1b1008000000132536444c4e4e4e4c43352412000000000000000000000000000000001e33475b6c76808c8f84776b5e50413222120100000000000000162b40566b82979487938f857c746d67625f5c5a5a5b5e636b77899c93806b57422d1803000015283a4a5557575757575757575757576375878d7a6755434d5c635d656b7075787c82868c90857563503b281500000000000000152a3f546a809595806a595e62636363605b554e463d332c3b48535c6163635f5a51473a2a18050000001a2e41515d5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5d5b58544f49433b32281d1104000000000000172a3b4a5456565656596673828e9b97897b6e61534639394753606e7b89968e8273665956565656564f41301e0a00000f1b252a2b2b2b2b3544536271828f9e8f8070615142394958677787968d7d6e5f4f40312b2b2b2b2a251b0f00001f344a5f747d7d7d7d8083878f8b807263503d2a160100000000000000000000000000000000000000001b3044586a7c8f8f83776b6054483c3125190d01000000000000000000000000000000000000001b3045596e83979a86725f4d3d2f241a130e0a06000002080b10161e2834435466798da1907b67523e2914001f344a5f748b9f89735e48331e000000000000000011263b5064768995826f5d4a3826242a2b2b2b2b2b2b2c4052606464645b4a372a241a0d00001b2f4354616363636053422f1d0a000000000000000000000000000000182b3e4e59636e7a8794897c6e5f5040301f0e00000000000000162b40566b8297a194887c72696059534d4a47454446494f5a6c82979a866f5a45301b0600001b2f4457686c6c6c6c6c6c6c6c6c6c6c606a7b8e8572604d576a786e655d5c6064686c71778493806a55402b1600000000000000152a3f546a809594806a6d737778787774706a625a50463c4a596670767877746d64584835210d00000011233341494a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4846433f3a352e271f150b00000000000000001d324659686b6b6b6b6b7784919f9386786b686863534042556468686a7785929184766b6b6b6b6b6b5f4d392510000c1d2d393f404040404453627182909e8f8070615142332b3a4959687787978d7d6d5e4f40404040403f392d1d0c001f344a5f748b9494949596837d776e62544533210e00000000000000000000000000000000000000000015283b4d5f71847d71655a4e42362b1f13080000000000000000000000000000000000000000001e33485d72889c94806a5642301f120700000000000000000000020b1726374a5e72879c96826b56412c17001f344a5f748b9f89735e48331e00000000000000000d213547596b7d8f8d7a67554330373f40404040404040455a6f7979796651403f372b1b0a001f34495e72787878715f4c3a27150200000000000000000000000000000f20303d46515c697684938d7d6e5e4e3d2c1a08000000000000162b40566b82979083756a5f554d453e40424446494d51565f6d82979b86705b46301b0600001d32475c72838383838383838383837c675e7082907d6a586173868278716b66626061646c7d94826b56402b1600000000000000152a3f546a8095907b7682888d8f8f8d8a857d766d63594e586877838b8f8d89827664503b25100000000515232e34343434343434343434343434343434343434343434343433312e2a26211a140b020000000000000000001f344a5f7482828282828895a299847d7d7d7d7d6f5a44475c717d7d7d7d7d8398958882828282827c67523c271200172a3b4a545656565656627182909e8f807061524737252436465259697888978c7c6d5e5656565656544a3b2a17001f344a5f7487878787888b8f8b84796d5e4c3a27130000000000000000000000000000000000000000000c1e30425466746b5f53483c3025190d02000000000000000000000000000000000000000000001f344a5f748ba0917b66513c27130100000000000000000000000000081b2f44596e849998846e58432e19001f344a5f748b9f89735e48331e000000000000000005182a3c4e607284968572604d3b495356565656565656565b7087907c6756565349392714001e33485c6e828f8f7c69574432200d000000000000000000000000000002121f2a343f4b58667484948d7c6b5b49372614010000000000162b40566b8288827264584d4d5052535557595b5e61656b727c8c9e96826d58442f190400001d32475c72888f8f8f8f98908f8f8f7c6753647689887563657a86908d86807a77767678808b8e7c68533f2a1500000000000000152a3f546a80958c7988949c9c9998999b99928980766b60627586959d9491958b77634f3a25100000000005111a1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1e1c1915110c060000000000000000000000001f344a5f748b9797979799a0a0a09594949494866f5a44475c72889494949494a0a09997979797937c67523c2712001d324659686b6b6b6b6b7282909f8f80706b6b6554412d2b4053646b6b6b7889988c7c6d6b6b6b6b6b685946321d001e33485c6d7070707072757a84928c7c6a56422e190500000000000000000000000000000000000000000013253749585f5a4e42362b1f13070000000000000000000000000000000000000000000000001f344a5f748ba0917b66513c2712000000000000000000000000000005192e43586e849999846e58432e19001f344a5f748b9f89735e48331e0000000000000000000d1e30425466788a8f7c6a584557676b6b6b6b6b6b6b6b6b7087937c6b6b6b6757432f1a00192d3f51647689998774614f3d2a18050000000000000000000000000000010d17212e3a4856667688998a78675543311e0b0000000000152a3e526570727162585c60636467686a6c6e7073767a80868f9b9b8c7966533e2a160100001c31475c70787878787d9486787878776651596b7d90826e5d69737c858b91908d8c8c8e91897d705e4c39241000000000000000152a3f546a8095878898968d88848384868a909793897d726a7d929e8e807b8084705c4834200c00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001f344a5f748b8b8b8b8b8b8b8b8b8b8b8b8b8b866f5a44475c72888b8b8b8b8b8b8b8b8b8b8b8b8b7c67523c2712001f344a5f74828282828282919f9883828282826f5a442f2e43586e82828282828f9b8c828282828282745f4a341f00192c3e4f595b5b5b5b5d606675899986715c47321c07000000000000000000000000000000000000000000071a2b3a454a463c3024190d01000000000000000000000000000000000000000000000000001f34495e73899e937d6954402d1b0d01000000000000000000000005122234485c70869b97826c57422d18001f344a5f748b9f89735e48331e00000000000102020202132537495b6d8091887562505c7282828282828282828282879382828282725c47321d0010223447596c7d91917d6c59473522100000000000000000000000000000000004101c2a3848586a7b8d968572604d3a2714010000000515243647545b5c63686d717477797c7d80828487898c8f949a9e958a7d6d5c4a37230f000000192d405260636363687d94866f6363635a4a4e6073868c7a6856606970777b80838383827c756c6051412f1d0900000000000000152a3f546a80958d93928479726f6c6e70757b838c95908477849995826f666c766854402c1905000000000000000000000000000000070d111416161616130f0b050000000000050c12151616140f090200000000000000001f34495d707474747474747474747474747474746b5843465b6e74747474747474747474747474747464503b2611001f344a5f748b9797979797a0a0a097979797866f5a442f2e43586e84979797979ba09b97979797978b745f4a341f000f21313d4546464649525c6674889c88725c47321d07000000000000000000000000000000000000000000000d1c283134322a1e13070000000000000000000000000000000000000000000000000000001c31465b6f84999884705c4a392b1e150d080401000000020509101823303f5163778b9f927d68533f2a15001f344a5f748b9f89735e48331e00000009111617171717171a2c3d4f61738692806d5a5c7288979291919191919191939a91919188725c47321d0005172a3c4f61738699897664513f2d1a0800000000000000000000000000000000000c1a2a3b4c5d708295907d6a5744301c0800000012233342505c666f777d83878a8d9091939597999b9ea09c9d9d8b82776c5f5044362717060000112334434c4e4e53687d94866f5a4e4e483c4356687a8d86736150555c62676a6c6d6c6b6861594f423323120000000000000000152a3f546a8095a2958473665e5a58585c61676f78838d9589879b917b66515a60594a39251100000000000000000000000000000a131b2126292b2b2b2b28241f19120a01030f1821272a2b2b28241d150b000000000000001a2e41515d5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5b4e3c3e505c5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f574735210d001f344a5f748b8b8b8b8b8b8b8b8b8b8b8b8b866f5a442f2e43586e848b8b8b8b8b8b8b8b8b8b8b8b8b745f4a341f000313202a303c48525c656f78849292826d5945301b0600000000000000000000000000000000000000000000000b151c1f1d170d0100000000000000000000000000000000000000000000000000000000182c4155697d919f8c796857483c3128211c1916151515171a1e242b35404e5d6e80939e8a76634e3a2511001f344a5f748b9f89735e48331e00000e1b252b2c2c2c2c2c2c2c324456687a8c8a77655c71828f837b7b7b7b7b7b7b87937c7b7b7b715c47321c00000d1f324456697b8e94826f5c4a3725120000000000000000000000000000000000000c1d2e405365788c9a8773604b37230f00000a1d2f4151606e79838b92979b9fa2a09d9b999794928f8b87888d8e8882776e61544534231100001024384a59605d57687d94866f5a4438342b394b5d708391806d5b49484d525557585756534d463d322415060000000000000000152a3f546a80959f8c7766554a444343474c535c656f7a859198a4917b6650474b473c2d1b0900000000000000000000000005121d272f363b3f404040403d39342d261d1414212b353b3f40403d3831281d1103000000000011233341494a4a4a4a4a4a4a4a4a4a4a4a4a4a4a473e30323f484a4a4a4a4a4a4a4a4a4a4a4a4a4a4a44392a1805001f34495d7074747474747474747474747474746b58432e2d42576a7474747474747474747474747474705d49341f00000b1d2e3d4c59646f79828c968f837464513e2a1602000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000012263a4e6174879997867566594e443c36312d2b2a2a2a2c2f33383f47525e6c7b8c9e93826e5b47331f0b001f344a5f748b9f89735e48331e000b1c2c38404242424242424242424b5c6e8292826f5d64707d8a887b6f6666667087937c6766666254412e1900000215273a4c5e7184968c796754422f1d0a000000000000000000000000000000000000112336495c7084988f7a66523e2915000013273a4d5e6f7d8c969fa19b96918e8b88878482807c79767273777d87928b80726352402e1b0700162b3f536776726b687d94866f5a442f201c2e415366788b8b79675543393d40424342413e39322a201406000000000000000000152a3f546a80959a86705c48372f2d2e32384049535d6773808b9d917b66503b36332a1e0f0000000000000000000000000716232f3a434a505356565655524e484139302723323e4850545655524d443a2f211000000000000515232e34343434343434343434343434343434332b20222d3334343434343434343434343434343431281b0c00001a2e41515d5f5f5f5f5f5f5f5f5f5f5f5f5f5f5b4e3c29283b4d5a5f5f5f5f5f5f5f5f5f5f5f5f5f5f5d51412e1a000316293a4c5b6a77828c958f867c7265564634220f00000000000000000000000000000000000000000000000000000003070b0d0f0f0f0f0f0d0b070300000000000000000000000000000000000000000b1e314457697b8c9c9485776b6058504a4643403f3f3f4144474d535b646f7c8b9a97877563513e2b1804001f344a5f748b9f89735e48331e0015283a4a5557575757575757575757576375878d7a67555f6b78858d8073675b7087937c6752504e453625120000000a1d2f415466798c9684715f4c3a271502000000000000000000000000000000000006192c4054697d9296826c58432e1904001a2e4256697c8e9da1968d87827c787673706f6c6a6764605d5e636a7482929082705d4a36220e001c3045596d838780747d94866f5a442f1a112436495b6d80928572604e3c2b2b2c2e2c2c29251e170d0200000000000008101415152a3f546a809597826c57422d1b18191e242d36404a566170879c917b66503b261e170d00000000000000000000000006162534414c565e64686b6b6b6a67625c554d433a32424f5b64696b6a6760574c3f2d1b07000000000005111a1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1e180f10191e1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1c150a00000011233341494a4a4a4a4a4a4a4a4a4a4a4a4a4a473e301f1e2f3d474a4a4a4a4a4a4a4a4a4a4a4a4a4a4941332311000a1e3246586979899590867c72695f544738281716130c02000000000000000000000000000000000000000000050c12181c2022242525252423201c18120c0500000000000000000000000000000000000215283a4c5d6e7d8d9b95897d736b655f5b585654545456595c61676e77828d9a96887868584634220f00001f344a5f748b9f89735e48331e001b2f4457686c6c6c6c6c6c6c6c6c6c6c606a7b8e8572604e5a6773808d85776b7087937c67523c3a3327180700000000122437495c6e82938f7c69574432200d00000000000000000000000000000000000011263a4f63788d9b86705c47321d08001e33485d718699a1918479726c6763605e5b5a5755524f4c484a4f576375899e8d7965513c2713001f344a5f73889092867d94866f5a442f1a07192b3e50637588907d6c5a4836241718171714100a03000000000000000e1a24292a2a2a3f546a809597826b56402b160103091119232d38465b70879c917b66503b2611040000000000000000000000000113243443525e6972797d828282807c77706960564c4250606d777d82807b746a5d4a36220d0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000515232e343434343434343434343434343434332b2012111f2b323434343434343434343434343434342e231505001025394e627588988c7d72685f564d423729252a2b2820140500000000000000000000000000000000000007101920272c3135373a3a3a3a3a3835312c2720191006000000000000000000000000000000000b1d2e3f50606e7c8a959b9088807974706c6b6a6a6a6b6e71767b838b949d928678695a4b3a29170500001f344a5f748b9f89735e48331e001d32475c72838383838383838383837c675e7082907d6a584956626f7b88897c7087937c67523c271f16090000000000071a2c3f51647689998774614f3d2a180500000000000000000000000000000000000c21364b5f748a9f89745f4a341f0a001f344a5f748ba0978472665d57524e4b49464442403d3a37383d434c5d72889d94806a543f2a15001e33485c6e757c85908996866f5a442f1a050f213346586a7d908977655341301e0c0000000000000000000000000c1d2c373e3f3f3f3f546a809597826b56402b160100000006111b30465b70879c917b66503b2611000000000000000000000000000c1e30425261707c868e9396979794918c857c73695f545d6e7d8b939795908879644f3a250f000000000000000000000000000000070d111416161616130f0b050000000000050c12151616140f09020000000000000000000005111a1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1e180f02010e181e1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1a1105000013283d53687c9195826e60564c433a303135393f403c32231301000000000000000000000000000000030f1a232c343b41464a4c4f4f4f4f4f4c4a46413b342c23190e0200000000000000000000000000000011223242505e6c78838d969b948e898683808080808283878b90979c938a8074675a4b3c2d1c0b0000001f344a5f748b9f89735e48331e001d32475c72888f8f8f8f98908f8f8f7c67536476898875635144515d6a76838e8287937c67523c271203000000000000000f223447596b7d91917d6c59473522100000000000000000000000000000000000091e33485d72889d8c76604b36210b001f344a5f748a9f917c67554a433e3936383b3d3f4244474a4d52575f6a798da095806a543f2a1500192d3f505b616972808f9b866f5a442f1a050416293b4e6072859583705f4d3b291705000000000000000000000016293b495354545454546a809597826b56402b160100000000001b30465b70879c917b66503b26110000000000000000000000000316293c4e5f70808e999f989391909194989990867c716666798c9c968d8b8e87735f4b37220d000000000000000000000000000a131b2126292b2b2b2b28241f19120a01030f1821272a2b2b28241d150b00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000152a3f546a8095947d69574d47444343464a4e53564f41301e0a00000000000000000000000000000614202c3640484f555b5f626464646464625f5a554f483f362b201305000000000000000000000000000004142332404e5a66707a838a90969a9a979595949597989b99948f8880776d62564a3c2d1e0f000000001f344a5f748b9f89735e48331e001c31475c70787878787d9486787878776651596b7d90826e5d4b404c5965727d8b8f937c67523c2712000000000000000005172a3c4e61738699897664513f2d1a0800000000000000000000000000000000041d32475c72889d8c76604b36210b001e32475c708598937d6a5a504a45474a4d50535457595c5f62666c727c8898a3907c67523e2914001022323e474d5561708286866f5a442f1a05000c1e314356687a8d8f7c6a584735231100000000000000000000001d314558676a6a6a6a6a6a809597826b56402b160100000000001b30465b70879c917b66503b26110000000000000000000000000a1e3246596b7d8f9e978c847d7b797b7d838990998f84786d82969987787479806c5844301c08000000000000000000000005121d272f363b3f404040403d39342d261d1414212b353b3f40403d3831281d11030000000000000000000000000000000810161a1e1f1f1f1f1c19140e07000000040e151b1e1f1f1d18120a0100000000000000000013283e53687c9299867469615c5a58585b5e63686b5f4d39251100000000000000000000000000061524313e49535c636a6f7377787979797877736f6a635c53483d312315060000000000000000000000000000051422303d49535d666e757c8286898c8d8f8f8f8d8b88848079736c645a5045392c1e0f00000000001f344a5f748b9f89735e48331e00192d405260636363687d94866f6363635a4a4e6073868c7a6856443b4854606d7982827c67523c27120000000000000000000d1f314456697b8e94826f5c4a37251200000000000000000000000000000000071d32475c72889d8c76604b36210b00192d4155687a8b9988786c645e5a5c5f6265686a6c6e7073777b80878f99a4968673604d392410000413212b32394352646f6f6f6856422d190400011426394b5d70839588766452402d1905000000000000000000001f344a5f74808080808080809597826b56402b160100000000001b30465b70879c917b66503b26110000000000000000000000001125394e6175899b9586796f69666466696f757c858f968a7d869b927c695f666d62503d291401000000000000000000000716232f3a434a505356565655524e484139302723323e4850545655524d443a2f21100000000000000000000000000008131c242a2f3334343434312d28221b12090a17212930333434322d261d1308000000000000000010253a4e6376899b93867c76716f6e6e7073777c7c6854402c1804000000000000000000000005152433424f5b666f777d84898c8f9090908f8c89847d776f655a4e4133241505000000000000000000000000000004121f2b36414a535b61676c707376777878787776736f6b655f5850473e33281b0e0000000000001f344a5f748b9f89735e48331e00112334434c4e4e53687d94866f5a4e4e483c4356687a8d867361503e36434f5c686b6b6b5f4d392510000000000000000000021427394c5e7083968c79675442301d0b0000000000000000000000000000000a1f344a5f73899f8b745f4a35200b001225394b5c6d7b88938a8078736f707477797c80828487898c90959ba29c928677685644311d090000030f181e263546545a5a5a564a392713000000091b2e405365778a93826f5c47321d08000000000000000000001f344a5f748b9595959595959e97826b56402b160100000000001b30465b70879c917b66503b2611000000000000000000000000162b4054687c919c8977675c54514f51555a6169727b86918f8c9e9079644f5458524433210d0000000000000000000006162534414c565e64686b6b6b6a67625c554d433a32424f5b64696b6a6760574c3f2d1b0700000000000000000000000d1a252f383f44484a4a4a4946423d362e261c1b28343d44484a4946413a30251809000000000000000b1f33475a6c7c8c9899918b8784848486888d9184705b47331f0a00000000000000000000011223334251606d78838c93999b979593939394979b99938b83776c5f5142322211000000000000000000000000000000010e19242e373f464d53575b5f616263636369685e5a56514b443d342b21160a000000000000001f344a5f748b9f89735e48331e001024384a59605d57687d94866f5a4438342b394b5d708391806d5b4937323e4b545656564f41301e0a000000000000000000000a1c2f415466798c9784715f4c3a28150300000000000000000000000000000f24384d62778c9c88725d48331e0900091b2e3e4f5d6a7680888e8d888586898d90939497999b9ea19f9b969089807568594a3927140100000000030a1728364044444442392c1c0a00000000112336485b6d8083796f5c47321d08000000000000000000001f344a5f748b8b8b8b8b8b8b8b8b826b56402b160100000000001b30465b70878b8b7b66503b26110000000000000000000000001a2f44596e839794806c594a403c3a3c40464d555f68737d8a96a49079644f40433f342616040000000000000000000113243443525e6972797d828282807c77706960564c4250606d777d82807b746a5d4a36220d000000000000000000000e1d2b37424b53595d5f5f5f5e5b57514a42392f2a394650585d5f5e5b554d423627150200000000000004172a3d4e5f6d7a868f969b9c9999999b9996918b76624d38230e000000000000000000000c1e30415161707d8b969c938c8683807d7c7d8083868c939c958a7d6f6151402f1d0b0000000000000000000000000000000007111b242b32393e42464a4c555f69727c776554413c37302921180e0400000000000000001f344a5f748b9f89735e48331e00162b3f536776726b687d94866f5a442f201c2e415366788b8b79675543312d393f4040403c322313010000000000000000000000122437495c6e82938f7c69574432200d0000000000000000000000000003162a3e52667b9097836e59442f1b0600001021313f4d59636e7983939d999b9fa19e9c99989594918e8b87827b756c62574a3b2c1b0a000000000000000a19242c2f2f2f2d271c0e000000000006192b3e5063736f665d513f2c1904000000000000000000001f34495d707474747474747474747468543f2a150000000000001b3045596d74747473634f3a2510000000000000000000070b0b1c32475c71879c8f7965503d2c2725272b3239424c56616c78879c9079644f3a2e2b221708000000000000000000000c1e30425261707c868e9396979794918c857c73695f545d6e7d8b939795908879644f3a250f0000000000000000000c1c2c3b48545f676d7274747473706b655e554c42384857636d7274737069605444321e0a000000000000000d1f30414f5d69737b8286898b8b898885827c7770604c37220d0000000000000000000215283b4d5e6f808f9c94898077716d6a6867686a6d71778089949b8e806f5e4c3b281502000000000000000000000000000000000008101a242d37414a545e68727b868f83715c4732221c150d05000000000000000000001f344a5f748b9f89735e48331e001c3045596d838780747d94866f5a442f1a112436495b6d80928572604e3c2b252a2b2b2b28201405000000000000000000000000071a2c3e51637689998774614f3d2a18050000000000000000000000000d203246596d8296927d6954402b1602000003162a3d4f6170808c96a09b96928f8c89878483807d7b7875716c676059554c3c2c1d0e0000000000000000000711181a1a1a19130a000000000000000e213345555e5c534a4032221000000000000000000000001a2e41515d5f5f5f5f5f5f5f5f5f5f594a392511000000000000162a3d4f5c5f5f5f5f564634200c0000000000000006121b20212133485e73899e8d77624d3823121012171e262f39444f5b70879c9079644f3a25160f05000000000000000000000316293c4e5f70808e999f989391909194989990867c716666798c9c968d8b8e87735f4b37220d00000000000000000618293a4a5966727a82878a8b8b8986807971685f544a56667480888b89857c72614d39240f00000000000000011223313f4b565f676c7073747473726f6b67625d5243301d090000000000000000000b1f3245586a7c8e9e9183766c635d585453525354585d636c7683919d8d7c6a5845321e0b00000000000000000000000000000000000b1c2b37404a545d67717a858f8e82766a5945301b08010000000000000000000000001f344a5f748b9f89735e48331e001f344a5f73889092867d94866f5a442f1a07192b3e50637588907d6c5a48362415161616130c0200000000000000000000000000000f223447596b7d9091806c5a47352210000000000000000000000008192b3d4f6175899c8a76624e3a2611000000081d3145596c808f9e988e87827c797673716f6c6b686664605c5969706e695a46321d08000000000000000000000000000000000000000000000000000416283743494840362d221404000000000000000000000011233341494a4a4a4a4a4a4a4a4a4a463b2d1b090000000000000e20313e484a4a4a4a44382817040000000000000616242f35363636485e73899f8d77624c37220d000c1c2932363636465b70879c9079644f3a250f0000000000000000000000000a1e3246596b7d8f9e978c847d7b797b7d838990998f84786d82969987787479806c5844301c08000000000000000011233547586877848f979c9f9d9c9d9a958d857b71675c617385939c9897998b77634e39240f00000000000000000413212e3a434c53585c5e5f5f5e5c5a57524e48413425130100000000000000000012263b4e6175889a9483726559504843403e3c3e404348505965728394998875614e3a2612000000000000000000000000000000000215283a49535d67707a858e94887c7064594c3c291601000000000000000000000000001f344a5f748b9f89735e48331e001e33485c6e757c85908996866f5a442f1a050f213346586a7d908977655341301e0c0000000000000000000000000000000000000005172a3c4e61738698897664523f2d1a0800000000000000000005152636485a6c809294826d5a47331f0b0000000c21364b6074899c98887a726c6864615e5c5a575654514f4f5c69778684745f4a341f0a00000000000000000000000000000000000000000000000000000a19263034332c231a11050000000000000000000000000515232e3434343434343434343434322a1d0f000000000000000213212c333434343430271a0b00000000000000122434424a4b4b4b4b5e73899f8d77624c37220d06192a3a464b4b4b4b5b70879c9079644f3a250f0000000000000000000000001125394e6175899b9586796f69666466696f757c858f968a7d869b927c695f666d62503d29140100000000000000061a2d405365768795a1968f8a8887888b8f95988f85796e6a7d919f8f84828584705c4834200b00000000000000000003101c2730383e4347494a4a494745423e39342d24160700000000000000000002182d41556a7d929c89766554473c342e2b2927292b2e343c47546476899c917d6955412d1803000000000000000000000000000000081c314558667079848d978e82766a5e53473b2e1e0c00000000000000000000000000001f344a5f748b9f89735e48331e00192d3f505b616972808f9b866f5a442f1a050416293b4e6072859583705f4d3b291705000000000000000000000000000000000000000c1f314456697b8e94826f5c4a372512000000000000000009162333435466778a9b897664513e2b17040000000e23384e63788ea38f7a695f58534f4c4947444240444d56616d7988968b745f4a341f0a00000000000000000000000000000000000000000000000000000009141b1f1e19100700000000000000000000000000000005111a1f1f1f1f1f1f1f1f1f1f1f1d170c000000000000000000030f191e1f1f1f1f1c140900000000000000001a2e41525e606060606073899f8d77624c37220d0e22364858606060606070879c9079644f3a250f000000000000000000000000162b4054687c919c8977675c54514f51555a6169727b86918f8c9e9079644f5458524433210d00000000000000000d2136495d7082949e8f837a75727072757a808890978c807484999582706b71796855402c190400000000000000000000000a141c24292e313434343432302d29241f19110600000000000000000000081d32465b70859995826c5947372a201a15131213151a202a3647596c80949985705b46321d080000000000000000000000000000000a1f344a5f74838d9793887c7064584d4135291e100000000000000000000000000000001f344a5f748b9f89735e48331e001022323e474d5561708286866f5a442f1a05000c1e314356687a8d8f7c6a584735231100000000000000000000000000000000000000021427394c5e7083968c79675442301d0b0000000000050f1a26334251617283958f7d6b594734210e000000000e23384e63788ea38d776351484341404244474c51586069737d8b98a08b745f4a341f0a00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001f34495d70767676767676899f8d77624c37220d11273c5165757676767676879c9079644f3a250f0000000000000000000000001a2f44596e839794806c594a403c3a3c40464d555f68737d8a96a49079644f40433f34261604000000000000000013283c5065798d9f90807166605c5b5d60656c747c86909286879c907b66565e645c4c3925110000000000000000000000000001090f15191c1f1f1f1f1d1b1814100b050000000000000000000000000b20354a5f74899e8f7a65513d2a190d050000000000050d19293d5065798f9e89745f4a35200b000000000000000000000000000000091e32475a6d80918d82766a5e52473b2f24180c000000000000000000000000000000001f344a5f748b9f89735e48331e000413212b32394352646f6f6f6856422d190400011426394b5d70839588766452402d1905000000000000000000000000000000000000000a1c2f415366788b9784715f4c3a2815030000000c18222c374451606f80909182705f4e3c2a1705000000000c21364b6075899d92806f635d58565657595c60656c747c86918f8d9f8b745f4a341f0a00000000000000000000000000000000000002070a0b0b0b0b0805000000000000000002070b0b0b0905000000000000000000000000000000000000000000000000000000000000000000000003070b0b0b0b0803000000000000000000001f344a5f748b8c8c8c8c8c90a18d77624c37220d12273c52677c8c8c8c8c8c8e9f9079644f3a250f000000000000000000070b0b1c32475c71879c8f7965503d2c2725272b3239424c56616c78879c9079644f3a2e2b221708000000000000000000182d42566b809498857261534b4746484c51586069737d899494a29079644f4b4f4a3e2e1c0a0000000000000000000000000000000000000000000000000000000000000000000000000000000000000d22374c62778ca18c77624d38230e0000000000000000000d22374c61768ca18c77624c37220d00000000000000000000000000000004182b3d4f6173867b6f64584c4135291e120600000000000000000000000000000000001f344a5f748b8b89735e48331e0000030f181e263546545a5a5a564a392713000000091b2e405365778a93826f5c47321d080000000000000000000000000000000000000000122437495c6e82938f7c69574432200d00000a1b2a353e495562707d8e928373635241301e0c0000000000081d31465a6d80919d8d8077716d6b6b6c6e71757a82889095897d889d8b745f4a341f0a000000000000000000000000000000010911171b1f212121201d1a150f08000000050f161c2021201e1a130b02000000000000030b0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0d060000000810171c202121201d18110900000000000000001f344a5f748b949494949494948d77624c37221a242e3c52677c939494949494949079644f3a250f0000000000000006121b20212133485e73899e8d77624d3823121012171e262f39444f5b70879c9079644f3a25160f05000000000000000000001b30455a6f859a927c68554337323133373d444d56606b76828f9f9079644f3a3a362d201000000000010d15191a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1711060000000000000000000000000000000d22374c62778da18c76604b36210b0000000000000000000a20344a5f748ba08e78634e38230e000000000000000000000000000000000e2032445668746a5e52463b2f23170c000000000000000000000000000000000000001f34495d707474746f5c47321d00000000030a1728364044444442392c1c0a00000000112336485b6d8083796f5c47321d080000000000000000000000000000000000000000071a2c3e51637689998774614f3d2a18050015283947515b6673808e90827364554534241201000000000002162a3d50627383909c938c868382828384878a8f95948c827772889d8b745f4a341f0a000000000000000000000000000009141d252b303436363635322e29231c140a0b18222b31353636332e271e1409000000000a161f2425252525252525252525252525252524211a0e06111b242b3135363635322c251c12060000000000001f344a5f747d7d7d7d7d7d7d7d7d77624c37242d37414a53677c7d7d7d7d7d7d7d7d79644f3a250f0000000000000616242f35363636485e73899f8d77624c37220d000c1c2932363636465b70879c9079644f3a250f0000000000000000081014151d32475c72889d8e78634e3a251d1c1e2329313a434e596470879c9079644f3a25221a0f0200000002121f292e2f2f2f2f2f2f2f2f2f2f2f2f2f2f2f2f2f2c24180900000000000000000000000000000d22374c62778da08b76604b36210b0000000000000000000a1f344a5f748ba08f78634e38230e00000000000000000000000000000000031527394b595f584c4035291d120600000000000000000000000000000000000000001a2e41515d5f5f5f5d513f2c190000000000000a19242c2f2f2f2d271c0e000000000006192b3e5063736f665d513f2c19040000000000000000000000000000000000000000000f213446596b7d9091806c5a47352210001c314457646d7885918b7d7164554637271706000000000000000e2133445564727d8991979b989797979999958f8882776f647288978b745f4a341f0a000000000000000000000000000e1b2630394045494b4b4b4a47433e3730271d1c29353e464a4b4b48433b3126190a000009192733393a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a362c1f18242e383f464a4b4b4a4640392f24170900000000001c31455866686868686868686868675a473337404a545d676a686868686868686868685c4a36220d000000000000122434424a4b4b4b4b5e73899f8d77624c37220d06192a3a464b4b4b4b5b70879c9079644f3a250f000000000000000e1a24292a2a33485e73899f8d77624c37220d0409131e262a313c475b70879c9079644f3a250f0700000000000f20303c4344444444444444444444444444444444444036271604000000000000000000000000000d22374c62778da08b745f4a341f0a0000000000000000000a1f344a5f748ba08f78634e38230e00000000000000000000000000000000000a1c2d3b464a453b2f23170c0000000000000000000000000000000000000000000011233341494a4a4a4840322210000000000000000711181a1a1a19130a000000000000000e213345555e5c534a40322210000000000000000000000000000000000000000000000517293c4e60738698897664523f2c18001f344a5f74828b8e84796d615346372819090000000000000000041627374654616c757c8387898b8b898884807a746d645c5c72828282745f4a341f0a0000000000000000000000000f1e2c38434d545a5e6060605f5c58524b433a302b3a47515a5f60605d564e443727160300142637454e4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f493d2d2935414b535a5f60605f5b544c41352718080000000015283a4852535353535353535353524a3c4049535d67707a7a685753535353535353534b3e2d1a070000000000001a2e41525e606060606073899f8d77624c37220d0e22364858606060606070879c9079644f3a250f0000000000000c1d2c373e3f3f3f485e73899f8d77624c37220d001223303b3f3f3f465b70879c9079644f3a250f000000000000182b3e4e585a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a534534210d00000000000000000002090d0e0e22374c62778da08b745f4a341f0e0e0c06000000050b0e0e1f344a5f748ba08f78634e38230e0e0d090100000000000000000000000000000f1d2a323431291d110500000000000000000000000000000000000000000000000515232e34343434332d22140400000000000000000000000000000000000000000000000416283743494840362d22140400000000000000000000000000000000000000000000000c1f314456687b8b8b826f5b46311c001e32475a6d82837a71665b4f433628190a0000000000000000000009192836444f5961686d7174747473726f6b666059514857676b6b6b685946321d0800000000000000000000000d1d2d3c495660686f7376767674716d665f564d43394958646e747674716a615545331f0b001b30435562646464646464646464646464646464645b4a373a47535e676e7376767470685e5245362615040000000b1c2b363d3e3e3e3e3e3e3e3e3e3d3f49535c667079848d8675604b3e3e3e3e3e3e3d382e200f000000000000001f34495d70767676767676899f8d77624c37221511273c5165757676767676879c9079644f3a250f00000000000016293b4953545454545e73899f8d77624c37220d0a1d30414e545454545b70879c9079644f3a250f0000000000001e33475b6b6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f63503c2712000000000000000009151e23232323374c62778da08b745f4a3423232320190e010d1820232323344a5f748ba08f78634e38232323221d140800000000000000000000000000000c171d1f1d160c000000000000000000000000000000000000000000000000000005111a1f1f1f1f1e191105000000000000000000000000000000000000000000000000000a19263034332c231a1105000000000000000000000000000000000000000000000000021427394c5e707474746e5b46311c00182b3e5164736f675e54493e3225180a0000000000000000000000000a1926323d464e54595c5f5f5f5e5c5a56514b453d394953565656544a3b2a17030000000000000000000007192a3b4b5a67737c83888b8c8c8a87827a726960564b57677582898c8b867d73624e39240f001f34495e737979797979797979797979797979797966513c4a5864707a83898c8c89847b7063544433210f000000000d19232829292929292929353e48525c666f79838d9085786d5c4834292929292928241c1002000000000000001f344a5f748b8c8c8c8c8c90a18d77624c372b2a24273c52677c8c8c8c8c8c8e9f9079644f3a250f0000000000001d314558676a6a6a6a6a73899f8d77624c37220d1025394d5f696a6a6a6a70879c9079644f3a250f0000000000001f344a5f74868686868686868686868686868686867d68533e2913000000000000000818263138383838384c62778da08b745f4a38383838352c1f0f1e2b3438383838495e73899f8f78634e383838383731261707000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000009141b1f1e1910070000000000000000000000000000000000000000000000000000000a1c2e41515d5f5f5f5c503e2b17000e213447565f5b544b41372c20140700000000000000000000000000000814202a32393f44474a4a4a494745413d37312a2b373f4040403f392d1d0c0000000000000000000000112436485969788590989d9e9c9b9c9b968f867c72685d617486949d9795988b76634e39240f001f344a5f748b90909090909090909090909090907c67524a596875828d979a98989b988e827262513e2b180500000000070e131313131313253746515b656f78838c968a7d72675b4f3f2d19131313131310090000000000000000001f344a5f748b949494949494948d77624c3a403f372e3c52677c939494949494949079644f3a250f0000000000001f344a5f74808080808080899f8d77624c37220d12273c52677c8080808080879c9079644f3a250f0000000000001f344a5f748b99999999999b9b9b999999999999947d68533e291300000000000000132536444c4e4e4e4e4e62778da08b745f4e4e4e4e4e493d2d1b2c3c484e4e4e4e4e5e73899f8f78634e4e4e4e4e4c433524120000000000000004090a0a0a0a0a0a0a0a070004090a0a0a0a0a0a0a08080c0d0b06090a0a0a0a0a0a0a070100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000011233341494a4a4a483f32210f0005172938444a4740382e251a0f0300000000000000000000000000000000020d161e252b2f323434343432302c28231c161a242a2b2b2b2a251b0f0000000000000000000000071a2e4153667788969f958e89878687898e949990867a6f6a7d929e8f838084846f5b47331f0b001f344a5f748b8f8f8f8f8f8f9a9a8f8f8f8f8f8f7c67525968778694948b868383868e9990806e5b4835210d0000000000000000000000192d4154646e77828c959084786c6155493d312110000000000000000000000000000000001f344a5f747d7d7d7d7d7d7d7d7d77624c4d55534a413c52677c7d7d7d7d7d7d7d7d79644f3a250f0000000000001f344a5f748b959595959598a08d77624c37220f12273c52677c939595959597a09079644f3a250f0000000000001f344a5f748484848484848f9e89848484848484847d68533e2913000000000000001b2f435461636363636363778d9f89736363636363635b4b3824374a5a63636363636373899f8f786363636363636053412e1a0000000000020f181e1f1f1f1f1f1f1f1f1b14181e1f1f1f1f1f1f1f1c1c2122201a1e1f1f1f1f1f1f1f1c14090000000000030b0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0c06000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000515232e34343434332d22130300000b1a273034332c241b12080000000000000000000000000000000000000000030a11161a1d1f1f1f1f1d1b17130e08010810151616161511090000000000000000000000000e22364a5d7083959d8e827973706f70747980878f988d827584999582706a70786854402c1804001f34495e72787878787878809595807878787878776656677687968f8277706c6d727b89988b7764503c271200000000000000000000001b30465b70828b95958a7d72665a4f43372c201303000000000000000000000000000000001c31455866686868686868686868675a4b5d6a675d534a4c5e686868686868686868685c4a36220d0000000000001f344a5f748b8b8b8b8b8b8b8b8b77624c372c2116273c52677c8b8b8b8b8b8b8b8b79644f3a250f0000000000001e32475a6a6e6e6e6e6e788f9d88726e6e6e6e6e6e6d62503b2712000000000000001f34495e72787878787878788d9f897878787878787867523d283c516677787878787878899f8f78787878787878715d48331e000000000112202b33343434343434343430262b323434343434343431303637352d333434343434343430271a0b0000000a161f2425252525252525252525252525252525252421190e0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005111a1f1f1f1f1e1910040000000009141c1f1e18110800000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000014283d5165798da08f7d70655f5b5a5c5f646b727b858f9387879c907a66555d635b4b38251100001b2f43546163636363636a809595806a63636363635d637485958c7d70645c57585e6a7a8c8c806a543f2a1500000000000000000000001a2e4357697b8e9084776c6055493d32261a0e02000000000000000000000000000000000015283a4852535353535353535353524a57697a7a70665d534d535353535353535353534b3e2d1a070000000000001f34495d707474747474747474747160544a3e3429263b506474747474747474747473624e39240f000000000000182b3d4d575858585863788f9d88725c585858585858524433200c000000000000001f344a5f748b8f8f8f8f8f8f94a2928f8f8f8f8f8f7d68533e293c52677c8f8f8f8f8f8f92a2958f8f8f8f8f8f89735e48331e000000000d1f303e474a4a4a4a4a4a4a4943373d474a4a4a4a4a4a4a45434b4c493f484a4a4a4a4a4a4a44382817040009192733393a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a352b1e0e0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000003070a0b0b0b0b0b090703000000000106090b0b0b0a080400000000000000000000000000182d42576b809598847160524a4644474a50575f68727c889395a39079644f4a4e493d2d1c090000132536444c4e4e4e4e546a809595806a686b6e6f71727382928d7c706e6a655f584e5c7082786e62503c2813000000000000000000000014273a4c5e70837d72665a4f43372b201408000000000000000000000000000000000000000b1c2b363d3e3e3e3e3e3e3e3e3e3d4b6075878d837970665c52493f3e3e3e3e3e3e3d382e200f000000000000001a2e41515d5f5f5f5f5f5f5f5f5f7072675c51463b303b47575f667171605f5f5f5f5e5545331f0b0000000000000e1f2f3b424343434e63788f9d88725c4743434343433f34261604000000000000001f344a5f748b9393939393939393939393939393937d68533e2d3c52677c93939393939393939393939393939389735e48331e0000000015293c4e5b5f5f5f5f5f5f5f5e55454d5a5f5f5f5f5f5f5f585360625d4f5c5f5f5f5f5f5f5f564634200c00142637454e4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f493c2c1a060000000000000000000000000000000000000000000000000000000000040b0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0e0a02000000000000000000000000000000070e13130f070000000000000000000000000000060d13181c1f20212121201e1c1814100a10161a1e2021211f1d19140d05000000000000000000011c31465b70869a917c68544236312f32363c434c555f6a75828e9f9079644f3a38352c1f0f00000008182631383838383f546a809595807a7d8283868788898e9e8c888683807a736b6155656d655c514433210d00000000000000000000000a1d2f415365746c6054483d31251a0e020000000000000000000000000000000000000000000d19232829292929292929292934485c6d7985908d83796f655c52483e3429292928241c10020000000000000011233341494a4a4a4a4a4a4a566a7c84796e63584d424d58636e79847d6b574a4a4a49433727160300000000000001111e282d2e2e384e63788f9d88725c47322e2e2e2e2b22170800000000000000001f344a5f747c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c68534a403c52677b7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c725d48331e00000000192e43586b7474747474747473624e576a74747474747474666171776d5b6d74747474747473634f3a2510001b304355626464646464646464646464646464646464645a4936220d000000000000000000000000000000000000000000000000000000000b1720242525252525252525252525252525252525231e1408000000000000000000000000000d19232828231a0e010000000000000000000005101921282d3134363636363533312d29251f242a2f3335363634322d2820180d0000000000091115161e33485d72889d8e78634e39251c1a1d21283039424d586370879c9079644f3a2520190e010000000009151e2323232a3f546a8095998c9093949391908f8f8f8f8f909296948f887d7365565852493e3426160400000000000000000000000011243648575f5a4e43372b201408000000000000000000000000000000000000000000000000070e131313131313131313192d3f4f5b67727d8a968c82786f645b51463725131310090000000000000000000515232e3434343434343441556978868c80756a5f55606a75808b86796a57423434343026190a0000000000000000000b14181923384e63788f9d88725c47321d19191917130c0100000000000000001c3144576467676767676767676767676767676767676a665d53494c5d67676767676767676767676767676767676456432f1b000000081a2f445a6f868b8b8b8b8b8b79644f586e848b8b8b8b8b7d686e808a796870878b8b8b8b8b7b66503b2611001f34495e7379797979797979797979797979797979797865503b26100000000000000000000000000000000000000000000000000000000b1b2934393a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a383126170600000000000000000000000d1c2b363d3d372c1f110300000000000000000a17222c353c4146494b4b4b4b4a4846423e3933393f44484a4b4b4a47423c342a1d0d0000000f1b252a2b2b33485e73899f8d77624c37220d02081420282b303b465b70879c9079644f3a250f060000000000000002090d0e152a3f546a809597878482807c7b797878787878797c82868e9991847463503f362c2216080000000000000000000000000006192a39444a473d3125190e020000000000000000000000000000000000000000000000000000000000000000000000001021313e4a55616d788590958c82776e6454412d190400000000000000000000000005111a1f1f1f1f1f1f263a4c5a68758390887c7267727c88908375685b4d3b281f1f1b1409000000000000000000101d262c2c2c384e63788f9d88725c47322c2c2c2c2c281f1203000000000000001528394750525252525252525252525252525252586a7b7970665c524c5252525252525252525252525252525252504738261400000e1a242f445a6f7c7c7c8b827c7c79644f586d7c7c7c8b807c7c6a7a8c828675707c7c89847c7c7a65503b2611001f344a5f748b909090909090909090909090909090907b66503b2611000000000000000000000000000000000000000000000000000003162839474e4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4d44352411000000000000000000000a1b2b3a4852524a3d2f2112030000000000000b1a28343f4950565b5e606060605f5e5b57534e484d53595d5f60605f5c5750473b2b1907000c1d2d393f404040485e73899f8d77624c37220d011323323c404040465b70879c9079644f3a250f000000000000000000000000152a3f546a809595806f6c6a676664636363636364686c727b899992806c58442f1a0f050000000000000000000000000000000c1b283134322b1f130800000000000000000000000000000000000000000000000000000000000000000000000000000313202c37434f5b67727d8a96958b82705b46301b06000000000000000000000000000006090a0a0a0a0a1d2e3d4a576472808d8f8479858f8d807265584a3d2f1e0b0a07000000000000000000000d1e2e3a414242424e63788f9d88725c474242424242413b302110000000000000000a1b2a353b3c3c3c3c3c3c3c3c3c3c3c3c3c3c4c6176888d83796f655c52483e3c3c3c3c3c3c3c3c3c3c3c3c3c3c3b34291a09000c1d2c373e3f52626767748b826b67665b4951616767748b806a6776888375878270677389846e67665c4a37230e001f344a5f748b91919191919196a595919191919191917b66503b26110000000000000000000000000000000000000000000000000000091e3246576364646464646464646464646464646464646153412d1904000000000000000000132739495866665a4d3f3021120200000000091a293846525c646b7073757676767473706c68625c61686d7274767674706b63594936220e00172a3b4a54565656565e73899f8d77624c37220d0a1e30414f565656565b70879c9079644f3a250f000000000000000000000000152a3f546a8095998c837a736b645d58524e4e4e5053575e6a7d929c87725c47321d0800000000000000000000000000000000000a151c1f1e180e0200000000000000000000000000000000000000000000000000000000000000000000000000000000030f1a26323d4955616d7885908d7a6956432e1904000000000000000000000000000000000000000000101f2c394754616f7c8a978f978a7c6f6154473a2c1f1100000000000000000000000000172a3c4c555757575763788f9d88725c575757575757564e3f2e1b07000000000000000c18212627272727272727272727272727354a5d6e7985918c82786f645b51473e3427272727272727272727272621170b000016293b495354544f525f748b826b565153545450525f748b806a7283887668798b7d6c7389846e58514b3e2d1b08001f344a5f737b7b7b7b7b7b7b8da18c7b7b7b7b7b7b7b7965503b261212121211100e0a050000000000000000000000000000000000000c22374c61757979797979797979797979797979797979705c47321c07000000000000000000192e43566776786b5d4e3f302010000000031627384756636f788085888b8c8c8c8b8886827c7670757c83878b8c8c8986807765513c2712001d324659686b6b6b6b6b73899f8d77624c37220d1025394d5f6b6b6b6b6b70879c9079644f3a250f000000000000000000000000152a3f546a80959787908f878078726c66625e5b5a5a5b606a7d929d88725d48331e08000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000814202c37434f5b67727d826f5d4b39271300000000000000000000000000000000000000000000010e1b293643515e6b79878b87796c5e514437291c0e01000000000000000000000000001d32465a696c6c6c6c6c788f9d88726c6c6c6c6c6c6c6b5d4a36210c0000000000000000050d111212121212121212121212121b2e40505c6773808b958c82776e645a51453624121212121212121212110d050000001d314558676a6a614f5f748b826b5657666a6a62515f748b806e808c7a695c6d7d8a787389846e5843382e201000001c30445663666666666666778da18c76666666666666655b4a3627272727272626231f1a130b020000000000000000000000000106070d22374c62778d90909090909090909090909090909088725c47321d070705000000000000001b30465b7082897b6c5d4e3e2d1d0b00000d203345566574828c949a979493939495979a96918b858990979b989797989a8e7965503b2611001f344a5f748282828282828a9f8d77624c37220d12273c52677c8282828282879c9079644f3a250f000000000000000000000000152a3f546a809595807c8690948d87827b7773706f6f70747c899a97846f5a46311c070000000000000000000000000000000000050c0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0b0400000000000000000000000000000000000000000000000000000000020e1a26323d4955606c746452402e1c0a0000000000000000000000000000000000000000000000000b182633404e5b68747474685b4e403326190b0000000000000000000000000000001f344a5f748383838383838f9e89838383838383838378634e38230e00000000000000000000000000000000000000000000001122323e4a56616d798591958b82776d6353402c1702000000000000000000000000001f344a5f7480806a545f748b826b565e7380806c575f748b807a8c806e5d4f607283857489846e58504a3d2c1a0700142738464f505050505062778da18c76605050505050504a3d3c3c3c3c3c3c3b3b38342e271e150a000000000000000000000c151b1d1d22374c62778d91919191919197a39491919191919188725c47321d1d1d1a13090000000000192d41546472828b7b6c5c4b3a2816040015293c50627384929b908883807d7c7d80828689919f999ca4918783828283878974604b36220d001f344a5f748b9797979797999f8d77624c37220d12273c52677c9397979797989f9079644f3a250f000000000000000000000000152a3f546a809595806a737c858d9495908c8987868686898f99988b796754402c1803000000000000000000000000000000000d18212425252525252525252525252525252525252420170b00000000000000000000000000000000000000000000000000000000000814202c37434f5a5f57473523110000000000000000000000000000000000000000000000000000081522303d4a585f5f5f584a3d30231508000000000000000000000000000000001f344a5f748b98989898989ca69a989898989898988f78634e38230e04000000000000000000000000000000000000000000000413212d3844505c6773808b97948a806f5a442f1a05000000000000000000000000001f344a5f748b806a6363748b826b63637389836c6666748b80888472615043546576888289846e66655b4a36220e00091a28343a3b3b3b3b4c62778da18c7660525252525252525252525252525250504d48423b31271b0e00000000000000000f1d2830323232374c61767b7b7b7b7b7b7b8f9f897b7b7b7b7b7b7b715c47323232322e261a0b0000000012253746546271828b7a69584633200d001b2f44586c80929b8b7d736d6a6867686a6c7583919f9490999185786b6b6d7279705b46321d08001f344a5f7489898989898989898977624c37231c13273c52677c898989898989898979644f3a250f0000000000000000070e1313152a3f546a809595806a6069717980878d9296999b9b9b98948e867a6c5c4a382511000000000000000000000000000000000d1d2b353a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3934291b0b0000000000000000000000000000000000000000000000000000000000020e1a25313d474a44392a180600000000000000000000000000000000000000000000000000000005121f2d3a454a4a4a453a2d1f120500000000000000000000000000000000001f344a5f74888888888888919f8c888888888888888878634e382620160900000000000000000000000000000000000000000000030f1b27323e4a56616d7985918c796755412d1803000000000000000000000000001f344a5f748b80787878788b827878787889836d7b7b7b8b8788766654433648596a7b8d8d847b7b7965503b261100000b172025262626374c62778da18c766767676767676767676767676767676665625d564e44392c1e0f0000000000000a1c2d3b4447474747475864666666666666788f9f89736666666666666254474747474742382918050000000b1d2e3d4a53637284877563503c2814001e33485d72879c8f7c6c605955535258677686939a8d827c8691978a7b6d5d5d656153402c1803001e33485d6f737373737373737373705f4b3c383025263b506472737373737373737372614d39240f000000000000000d19232829292a3f546a809595806a54555d656c72777c828486868683807972685c4e3e2d1b0800000000000000000000000000000005182b3b484f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4e47392816030000000000000000000000000000000000000000000000000000000000000814202b323431281b0c0000000000000000000000000000000000000000000000000000000000010f1c283134343431281c0f010000000000000000000000000000000000001e33485c6e7272727272788f9d88727272727272727270604c3c3b3327180700000000000000000000000000000000000000000000000915212c3844505c677380826e5c4a38261200000000000000000000000000001f344a5f748b8b8b8b8b8b8b8b8b8b8b8b8b836e848b8b8b8b7b6a5948372a3b4c5d6e808b8b8b8b7b66503b2611000000040c10111122374c62778da18c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7b7977716a61564a3c2d1d0d000000000013273a4b585c5c5c5c5c5c5c5c5c5c5c5c63788f9f89735e5c5c5c5c5c5c5c5c5c5c5c5c554735220e00000015283b4c5b666d6f798d806b57422e19001f344a5f748b9f8974604e4440445566768695988a7c6f6973808e9a8c7b6a59504e443523110000192d40515c5e5e5e5e5e5e5e5e5e5d5252514c43372a3947565d5e5e5e5e5e5e5e5e5d5444321e0a0000000000000b1c2b363d3e3e3e3f546a809595806a54414951585d63686b6e6f706f6e6b655f564b3e30200f000000000000000000000000000000000c21354859646464646464646464646464646464646464635746321e0900000000000000000000000000000000000000000000000000000000000000020e181e1f1c150a00000000000000000000000000000000000000000000000000000000000000000b151c1f1f1f1c150b0000000000000000000000000000000000000000192d3f505b5c5c5c5c62778d9d88735e5c5c5c5c5c5c5c524c514f45362411000000000000000000000000000000000000000000000000030f1b27323e4a55616d7363513f2d1b0900000000000000000000000000001f34495d7074747474747474747474747474746a74747474746e5d4c3b2a1d2e405162727474747473634f3a2510000000000000000d22374c62778da39793939393939393939393939393939393918f8c867d73685a4b3b2a190600000000182d41566972727272727272727272727272788f9f89737272727272727272727272727164513c27120000001b3044576a798386848a86705b46301b001f344a5f74899e89735f4e443e50617384949889796b5e56626f7d8e99897664513e3226170600001122323f474848484848484848525d6567665f5446384856616667645c504848484848423627150200000000000015283a485253535353546a809595806a543f363d43494e5356585a5b5a5856514b43392e201202000000000000000000000000000000000f243a4f6477797979797979797979797979797979797975614c37220c000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001022323e464747474b60758ba08c776350474747474b51585f666353412d1a06000000000000000000000000000000000000000000000000000915212c38444f5b5f56463422100000000000000000000000000000001a2e41515d5f5f5f5f5f5f5f5f5f5f5f5f5f5f5a5f5f5f5f5f5c50402e1d11223344545e5f5f5f5f5f564634200c000000000000000d22374c62778da3938f8f8f8f8f8f8f8f8f8f8f8f8f8f8f8f8f91979a91867869594836231000000000192e43586e848888888888888888888888888891a08d888888888888888888888888887d68533e29130000001f34495e7388969b999987705b46301b001d32475b7085988f7c6c6158515b6d80919b8a796a5b4d44515f6f809394826e5a46311d080000000514222c323333333333333d506170797c7b726453435666747b7c796e5e4c393333332e251809000000000000001c3145586668686868686a809595806a543f2a292f35393e414444464443413c372f261c100200000000000000000000000000000000000f253a4f6479909090909090909090909090909090908d77624c37220d0000000000000000000000000000000000070d0f0f0f0c06000005090e111416171919191715120e0903000000000000000000000000010d15191a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1a19150d01000000000000000000000000000000000000000000000413212b31323233485c71869a93806e615b585a5c60656c737b705d4936220e0000000000000000000000000000000000000000000000000000030f1b26323e474a443828170500000000000000000000000000000011233341494a4a4a4a4a4a4a4a4a4a4a4a4a4a474a4a4a4a4a483f3222110415263643494a4a4a4a4a4438281704000000000000000d22374c62778da18c78787878787878787878787878787878787c838c999788776553402c1804000000192e43586e84888888888888888888888888969e959d8f8888888888888888888888887d68533e29130000001f344a5f7388989d9c92806c58432e1a00182d4154687a8d9a8b7d746c6665788b9d8f7c6c5b4c3d33415163768a9e8975604b36210c000000000410191d1e1e1e1e1e2e43586c808d938f82705b4a5f738590938c7c68543f2a1e1e1a130800000000000000001f344a5f747d7d7d7d7d7d809595806a543f2a151b2025292c2f2f302f2e2c28221c130a000000000000000000000000000000000000000f253a4f64799091919191919197a5959191919191918d77624c37220d00000000000000000000000000000003101b2225252421190e141a1e2326292b2c2e2e2e2c2a27231e17100800000000000000000002121f292e2f2f2f2f2f2f2f2f2f2f2f2f2f2f2f2f2e291f120200000000000000000000000000000000000000000000030f171c1d1d2e42566a7d919d8d8075706e6f71757980878d7865513e2a16000000000000000000000000000000000000000000000000000000000914202b333430271a0b000000000000000000000000000000000515232e343434343434343434343434343434323434343434332d221404000918252f34343434343430271a0b00000000000000000d22374c62778da18c7663636363636363636363636363636364686f7a8a9a95836f5b47331f0a000000182d41566972727272727272727272727988988f808e918373727272727272727272727164513c27120000001c3045586b7a848888827363503d2915001225394b5d6e7d8c979088827a7582959683705f534c443a33465b6f869a8e78634e38230e0000000000000000000000001a2f445a6f85999f9b88735e4c62778c9c9f95826b56402b160100000000000000000000001f344a5f748b9494949494949e95806a543f2a15060b101417191a1b1a1917130e080000000000000000000000000000000000000000000f243a4f64787b7b7b7b7b7b7b8fa08b7b7b7b7b7b7b7b76614c37220d00000000000000000000000000000011212d363a3a3a352b22292e33373b3e4042434343423f3c38322b241b1208000000000000000f20303c4344444444444444444444444444444444433c30200f00000000000000000000000000000000000000000000000000000013273b4e617385949d9189868486878a8f959b94826d59442f1a0000000000000000000000000000000000000000000000000000000000030f181e1f1c140900000000000000000000000000000000000005111a1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1e1f1f1f1f1f1e19100400000008131b1f1f1f1f1f1f1c14090000000000000000010d22374c62778da18c76604e4e4e4e4e4e4e4e4e4e4e4e4e4e4f535d6b7d909f8b76614d38230e000000152a3e51606666666666666666666c7a8a988e80707d8d928374666666666666666666665d4c39251000000015283b4d5c687072726d63554534210e00091c2e4050606d79858e96958f8a8c9e8d79746e6860574c41455a6f84998e78634e38230e000000000000000000000000182d4155697a868b887d6c59485d6f80888a857766523d29140000000000000000000000001f344a5f748b8b8b8b8b8b8b8b8b806a543f2a1500000000000000000000000000000000000000000000000000000000000000000000000c2135495a65666666666666788fa08b74666666666666645846331e0a00000000000000000000000000000a1d2f3f4a4f4f4f493c363d43484c505356575858585754514c4640382e251a0e010000000000182b3e4e585a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a584e3e2b180400000000000000000000000000000000000000000000000000000b1e3144566675848f979c9b999a9b98938e8780786c58442f1900000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000091115161622374c62778da18c76604b383838383838383838383838383a404d61758ba0907965503b2610000000182e43586d7b7b7b7b7b7b7b7b7b7c8b998d7d70616e7d8d93847b7b7b7b7b7b7b7b7b7a68533e28130000000c1e2f3e4b555b5d5d595146372816040000102232424f5c67717982888e939fa5948e89837b736a5e524f6174889d8a75604b36210c0000000000000000000000001226394c5c697274726b5f4f4052616d73747168594836230f0000000000000000000000001f34495d707474747474747474747467533e2914000000000000000000000000000000000000000000000000000000000000000000000006192b3c4950505050505063788fa08b745f505050505050483a291703000000000000000000000000000011263a4c5d6464645a4a4b51575d6165686b6c6e6e6e6c6965615b534b41372b1e1102000000001e33475b6b6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6b5b47331e09000000000000000000000000000000000000000000000000000002142738485766727b838789898987837d79726c645c4e3d291500000000081014151515151515151515151515151515130e05000000000000050e1315151515151515151515151515151514100800000000000000000000000000000004090f1316191b1d1d1d1d1c1b1815120d0802000000000000000000000000000000000f1b252a2b2b2b374c62778da18c76604b362b2b2b2b2b2b2b2b2b2b2b2b2d354a5f74899f917b66503b2611000000192e43586e849191919191919191919a8d7d6f60515f6e7d8c949191919191919191917d68533e29130000000011202e3940464848443e3428190a000000041423313e4a545e666d74798297958b90979790877c7061596d7d9195836f5b47321e090000000000000000000000000a1c2e3e4c565d5f5d584e41344350595e5f5c554a3b2b19070000000000000000000000001a2e41515d5f5f5f5f5f5f5f5f5f5f58493724100000000000000000000000000000000000000000000000000000000000000000000000000e1e2c363b3b3b3b3b4e63788fa08b745f4a3b3b3b3b3b352a1c0c000000000000000000000000000000142a3f546979797866585f656c7176797d8083848483827d7a756f675e54493c2f2011010000001f344a5f7486868686868686868686868686868686745f4a341f0a000000000000000000000000000000000000000000000000000000091a2a3948545f676d72737473716e69645e5850493f30200d0000000e1a24292a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2821170900000000091721282a2a2a2a2a2a2a2a2a2a2a2a2a2a2a29241a0e0000000000000000000000020a11181e23282b2e303232323232302d2a26221c160f08000000000000000000000000000c1d2d393f404040404c62778da18c76604b4040404040404040404040404042475264778da18f79644f3a251000000f1b2e43586d7d7d7d7d7d7d7d7d939a8c7c6e5f5142505f6d7c8c9b877d7d7d7d7d7d7d7d68533e28180a00000002101c252c313333302a21170a00000000000513212d38414a52595f6f869a90797c838a93998e8070606d7880867866533f2c18040000000000000000000000000010202e3a43484a48443b3025323d45494a4742382c1d0d0000000000000000000000000011233341494a4a4a4a4a4a4a4a4a4a453b2c1a08000000000000000000000000000000000000000000000000000000000000000000000000000e1a2226262626384e63788fa08b745f4a342626262521180c00000000000000000000000000000000152a3f546a8090836f6c737980868b8f93959899999897948f8a837a71665a4d3e2f1f0e0000001f344a5f748b9999999999999b9b9999999999998b745f4a341f131312100d0804000000000000000000000000000000000000000000000c1b2a37424c53595c5e5f5e5c5955504a433d352d21120200000c1d2c373e3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3d342717060000061727343d3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3e372c1d0c0000000000000000020c151e262c33383d404346474747474745423f3b37312a231b12090000000000000000000000172a3b4a54565656565662778da18c76605656565656565656565656565656575b637082949c8974604b37220d000c1d2d393f5262686868686870808e998b7b6d5e504132414f5e6d7c8b9586766868686868685f4d3e35281807000004121e2830343636342e261b0f000000000000030f1b252e373e465b70879c8e78676e76808d9b8f7d6c5d646b726c5a49362310000000000000000000000000000002101d272e3334332f281f15212a303434322e261b0e00000000000000000000000000000515232e343434343434343434343431291d0e0000000000000000000000000000000000000000000000000000000000000000070b0b0b0b0a06060d10111123384e63788fa08b745f4a341f1111100d05070b0b0b0b0a0600000000000000000000152a3f546a80958b7780888e9597938f8c8b898888898b8e939a978e84786b5c4d3d2c1a0800001f344a5f7484848484848485979684848484848484745f4a342929282725211d18120b0300000000000000000000000000000000000000000c19252f383f4447484a484744403b362f292119100300000016293b495354545454545454545454545454545451453523100000102335455154545454545454545454545454545453493b29160000000000000009141e28313940474c5155585b5c5c5c5c5c5a5754504b453e372e261b11050000000000000000001d324659686b6b6b6b6b6b778da18c766b6b6b6b6b6b6b6b6b6b6b6b6b6b6b6c6f76828f9f91806c5945311d0800172a3b4a5456565656566271808f988a7a6c5d514535263848535e6c7b8b958777685a56565656565246362410000212222f3b44494b4b4942392d1e0e0000000000000008121b2330465b70879c8e78635a636e7c8e9c8a766250575d5a4e3d2b1907000000000000000000000000000000000a131a1e1f1e1b150c030e161c1f1f1d1912090000000000000000000000000000000005111a1f1f1f1f1f1f1f1f1f1f1f1d160c0000000000000000000000000000000000000000000000000000000000000006121b202121211f1a100400000e23384e63788fa08b745f4a341f0a000006121b20212121201a11050000000000000000152a3f546a8095948b93928c87827d7977747372727376797d868f9996897a6b5b4a37251200001e32475a6a6e6e6e6e6e6e829795806e6e6e6e6e6e6a5a473c3e3e3e3c3a36322d261f160d020000000000000000000000000000000000000008131c242b2f32333433322f2b26211b140d0600000000001d314558676a6a6a6a6a6a6a6a6a6a6a6a6a6a6a63533f2b160100162b3f53636a6a6a6a6a6a6a6a6a6a6a6a6a6a6a675845311d0000000000000d1a26313b444d555b61666a6d7072727272706f6c69655f59524b42382e22160900000000000000001f344a5f74828282828282828ea18c8282828282828282828282828282828282848a939e92847362503d2a1602001d324659686b6b6b6b6b72828f98897a6b6b6b63523e2e4256666b6b6c7b8b9687786b6b6b6b6b6b6453402b17000d1f30404d575e60605d564a3c2c1b080000000000000000071b30455a6f8499907b6754515f708499907b66514348463d301f0e0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000616242f35363636342d221303000e23384e63788fa08b745f4a341f0a000616242f35363636342e23140400000000000000152a3f546a80959a8c847d77726d6865625f5e5c5c5e60646a727b8795998a796754412e1b0700182b3d4d5758585858586b829795806a5858585858574e5052535353514f4b47413a32291f140800000000000000000000000000000000000000000910161a1d1e1f1e1c1a16120d0700000000000000001f344a5f748080808080808080808080808080806e58432e190300192e43586e808080808080808080808080808080745f4a341f0000000001101e2b38434e58616970767b808386878888888785827d79746d665e554b4034271a0b000000000000001f344a5f748b9797979797979ba09a9797979797979797979797979797979797999a948c827365554433200d00001f344a5f74828282828282909f8f82828282826c574230465b7082828282829097888282828282826e58432e1900162a3d4e5e6a73767672685a4a382511000000000000000000172c41556a7d929784716157586c8397937c67523c33322b2012010000000000000000000000000000030b0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0e080000000000000000000000000000000000000105080a0b0b0b0b0b0a070501000000000000000000000000000000122434424a4b4b4b494031210e000e23384e63788fa08b745f4a341f0a00122434424a4b4b4b494032221000000000000000152a3f546a809597827069635d5854504c4a484747494b50565f697686979785715d4a36210d000e1f2f3b4243434343566b829795806a544d53585c606366676868686664605b554e463c3226190c00000000000000000000000000000000000000000000000000000000000000000000000000000000001f344a5f748b95959595959595959595959595846e58432e190300192e43586e84959595959595959595959595958b745f4a341f00000000101f2e3c4955606b747c848a9094989b9c9b9b9b9c9a97938f89827a71675d524537291a0b0000000000001f344a5f748b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b888580776e6356473727150300001f344a5f748b9797979797a0a09b97979797836c574230465b7087979797979ca0999797979797846e58432e19001c3145596c7c888c8c86786754402c1700000000000000000012263b4f6376899b8f80736b6b75889b8f7965503b261d170e0200000000000000000000000000000a161f2425252525252525252525252525252525252525252525252525252525252525252525231c120400000000000000000000000000060c11161a1d1f21212121201f1c1a16110c070000000000000000000000001a2e41525e6060605d4f3e2b16020e23384e63788fa08b745f4a341f0a061a2e41525e6060605d503f2c1800000000000000152a3f546a809597826b564e49433f3b383533323234363b424c5867798ca08d7964503b26110001111e282d2e2e2e40566b829795806a5b61676d7175787b7c7d7d7d7b7875706961594f44372a1b0c0000000000000000000000000000000009141c1f1f1f1f1a120600000000000000000000000000001f344a5f748b8c8c8c8c8c8f9f9c8d8c8c8c8c846e58432e190909192e43586e848c8c8c8c8d9c9e8f8c8c8c8c8c8b745f4a341f0000000d1e2e3d4c5a67727d8890989a948f8b888786868787898d91969c968e857a6f6355473829190800000000001f34495d7074747474747474747474747474747474747474747474747474747473706b645c514538291a090000001f344a5f748b8b8b8b8b8b8b8b8b8b8b8b8b836c574230465b70878b8b8b8b8b8b8b8b8b8b8b8b846e58432e19001f344a5f74899aa1a097846f5a442f1a0000000000000000000c1f3346596b7c8d9b908682808794988673604b37230e0000000000000000000000000000000009192733393a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a372f221302000000000000000000010a131a20262b2f3234363636363634322f2b26211b140c030000000000000000001f34495d707676766d5a45301b060e23384e63788fa08b745f4a341f0a0a1f34495d707676766e5b46311c00000000000000152a3f546a809597826b574d4339302823201e1d1d1f21272f3a4a5c70869a937d68533e29140000000b141819192b40566b829795806a6f757c82878b8e9093949493918e8a857d756c615548392a1b0a00000000000000000000000000000b1a2730343434342e241606000000000000000000000000001f34495d7076767676767682929b8876767676766b57422d1e1e1e1e2d42576b7676767676889b9282767676767676705d49341f0000081a2b3c4c5b6a7785909b968d868079767370706f707274777c8288909a988d827365564736251402000000001a2e41515d5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5e5b5650483f34281a0b000000001f34495d7074747474747474747474747474746955413045596d74747474747474747474747474746a57422d18001f34495e7388989f9f96836e59442f1a00000000000000000004172a3c4e5f6f7d8a959a96959a948879685643301c0800000000000000000000000000000000142637454e4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4b40311f0d00000000000000000a141e262e343a3f4447494b4b4b4b4b494744403b352f281f170d03000000000000001f344a5f748b8c87705b46301b151523384e63788fa08b745f4a341f15151f344a5f748b8c88725c47321d00000000000000152a3f546a80959782746a5f564c443b342d27231f1d1d1f232e43586e849995806a543f2a1500000000000000162b40566b829795807b838a90969794918f8f8d8d8f9094999992897d726657483827160400000000000000000000000004172838444a4a4a4941342412020000000000000000000000001a2e41525e6060606060637486979483716060605c4d3b3333333333333b4d5c6060607183949685736360606060605e52412e1a0000122537495a6a7988969a8e8379716a65615e5c5b5a5b5c5f62676d747d87929f928474645443311f0c0000000011233341494a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4946423c352c22160a00000000001a2e41515d5f5f5f5f5f5f5f5f5f5f5f5f5f5f5a4c3a2a3d4f5c5f5f5f5f5f5f5f5f5f5f5f5f5f5f5a4d3b2814001b3044586a7a868b8a847766533f2b16000000000000000000000c1e3041515f6c77828789898780766a5b4b39271401000000000000000000000000000000001b30435562646464646464646464646464646464646464646464646464646464646464646464645e4f3c281400000000000005111d27313a42494f54585c5e60606060605e5c58544f4a433b332a20150a0000000000001f344a5f748b9c87705b46302a2a2a2a384e63788fa08b745f4a342a2a2a2a344a5f748b9d88725c47321d00000000000000152a3f546a80959f92877c726960575048423c3734323234383f4c5d71869b937d68533f291400000000000000162b40566b829797888f96908b8783807b79787777787b7d848b949c91847566564533210e000000000000000000040c1318203446565f5f5f5d52422f1b16110b04000000000000000000122434424a4b4b4b4b4b5668798a9b8f7d6c5a4b4848484848484848484848484b5a6c7d8f9b8a7867564b4b4b4b4b4a4234241200081c2f42546677889898897c70665d56504c4947464446474a4e5359606a75828f9e938372604e3b2815020000000515232e3434343434343434343434343434343434343434343434343434343434312d282119100500000000000011233341494a4a4a4a4a4a4a4a4a4a4a4a4a4a463c2e20313e484a4a4a4a4a4a4a4a4a4a4a4a4a4a473d2f1e0b0015283b4d5c69717474706759493724100000000000000000000001122332414e5a646c717474716c64594c3d2d1c0a00000000000000000000000000000000001f34495e73797979797979797979797979797979797979797979797979797979797979797979796b57412c1700000000000715222e3a444d565d63696d7173767676767473706d69645e574f463d32281c1004000000001f344a5f748b9c87705b463f3f3f3f3f3f4e63788fa08b745f4a3f3f3f3f3f3f4a5f748b9d88725c47321d00000000000000152a3f546a80959887908f867c736b635c56514c494747494c525c697a8da08f7965513c271200000000000000162b40566b82979b8f88827b76716d6a676463626263666a7077828d9a94857463503d2a1703000000000000050f1820272d323a4f63737474705e4a352f2b261f181008000000000000000616242f3536363636394a5b6c7d8f9b8a78675e5e5e5e5e5e5e5e5e5e5e5e5e5e66788a9b8f7d6c5b493836363636352f241606001024384c5f7184959a8a796b5e534a423c373431302f303235393e454d5763708090a1907d6b5845311d090000000005111a1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1c18130d0500000000000000000515232e343434343434343434343434343434322a1e13212c333434343434343434343434343434322b1f1100000c1e2f3e4b565c5f5f5c54493b2b1a070000000000000000000000051423313d4851585c5f5f5d5851473b2e1f0f0000000000000000000000000000000000001f344a5f748b9090909090909090909090909090909090909090909090909090909090909090836c57422c170000000008172533404c57606971777d8387898b8c8c8c8b8987837d78726a62594f453a2e2215070000001f344a5f748b9c87705b545454545454545463788fa08b745f54545454545454545f748b9d88725c47321d00000000000000152a3f546a809597827d899390878077706a65615e5c5c5e61666f7a88989886735f4b37220e00000000000000162b40566b82979580746d67625d5854524f4e4c4c4e51555b646e7c8b9c92806d5a46321e0900000000000b17222b343b41464a50667b8b8b76604b4844403a332c241b110700000000000006121b20212121212c3d4e6070829396857373737373737373737373737373737385969382705f4e3d2c21212121201b12060000162b3f53677b8fa18f7c6b5b4d41362e27221f1c1b1a1b1d20242a313a4552617284969b8875604d38240f000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005111a1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1d170d030f191e1f1f1f1f1f1f1f1f1f1f1f1f1f1f1e180e0100000011202e3942474a4a4741372b1d0d000000000000000000000000000513202b353d43474a4a48433d342a1e10010000000000000000000000000000000000001f344a5f748b91919191919196a5959191919191919191919191919191919191919191919898836c57422c170000000616263543515d69737d868c92979b9a98979797989a9b97938d877d756c62574b3f3225160800001f344a5f748b9c87706a6a6a6a6a6a6a6a6a6a788fa08b746a6a6a6a6a6a6a6a6a6a748b9d88725c47321d00000000000000152a3f546a809597826b76828b95938c8680797673727273767a828c989a8c7a695643301c0800000000000000162b40566b829795806a59534d4844403c3a383737393c4048515e6d7d909d8a75614d38230e000000000f1c29343e474f565b5f62667b918c7663605d59544e4740372e241a0e01000000000000070b0b0b0b0e2031425364758798918989898989898989898989898989898991988675645341301f0e0b0b0b0b07000000001b3045596e83979a86725f4d3d2f241a130e0a06000002080b10161e2834435466798da1907b67523e291400000000000000000000000000000003070a0d0f11111111100f0c09060100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000002101c262e333434322d241a0d000000000000000000000000000000020e1822292f323434332f2921180c00000000000000000000000000000000000000001f344a5f737b7b7b7b7b7b7b8da08b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b9098836c57422c170000011324344453616f7b8690999b938d8885838282828385888c91979a92898074695d504334261707001f344a5f748b9c878080808080808080808080808fa08b8080808080808080808080808b9d88725c47321d00000000000000152a3f546a809597826b636d77828a929a948f8c898888888b8f969d94897c6d5d4b3927140000000000030707162b40566b829795806a54473d342f2b272523222224272c34404f6074899e907b66513c27120000000f1e2d3a46515b636a707477797b918c797876726e69625b534a41372c1f110000000000000000000000021324354758697a8c9c9f94939393939393939393939393949f9c8b79685746352413010000000000000000001e33485d72889c94806a5642301f120700000000000000000000020b1726374a5e72879c96826b56412c17000000000000000000000000060d12181c202224262626262624211e1b16110b04000000000000000000000000000000000000000000000000000000000000000005080b0d0e0f0e0e0b0702000000000000000000000000000000000000000000000a13191e1f1f1d191108000000000000000000000000000000000000050e151a1d1f1f1e1a150e050000000000000000000000000000000000000000001c30445663666666666666778da08b7466666666666666666666666666666666666666799098836c57422c1700000c1f3042526271808d999b90878078736f6c6b6b6b6d6f72777c838a939c92877a6e615244352412001f344a5f748ba0979595959595959595959595959aa098959595959595959595959595989d88725c47321d000000070e1313152a3f546a809597826b565b646d767d868c9195989a9b9a9895908a82776b5e4f3f2e1c0a000000030f171c1d1d2b40566b829795806f645a50473e362e28221d191717192231465b70879c937c68533d281300000c1d2d3c4b58646e777d85898d8f919994908d8b88837d766f675d54493d2f1e0b00000000000000000000000618293a4b5c6d80909c877c7c7c7c7c7c7c7c7c7c7c7c879c907d6d5c4b39281706000000000000000000001f344a5f748ba0917b66513c27130100000000000000000000000000081b2f44596e849998846e58432e19000000000000000000010a131a21272c3134373a3b3b3b3b3b3937332f2b251f1810080000000000000000000000000000000000000000000000000000050b1015191d202223242323201c171009000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000142738464f505050505062778da08b745f505050505050505d6262625f515050505064799098836c57422c17000317293c4e5f70808f9e95897d736b645e5a58565656585a5d62686f77808a95988c80706253412e1a001f344a5f748b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b88725c47321d00000d19232829292a3f546a809597826b5648515a636a71777c808385868683807b756d645a4d403121100000000413212b3132323240566b82979a8c82776d635a524a433c37322f2c2c2f333b4a5d72879c937c67523d2813000517293b4b5a6975828a939996928f8d93918d90939797928b837a70665b4d3b28140000000000000000000000000b1c2d3e4f6172839492826f67676767676767676f8292948371604f3e2d1c0b00000000000000000000001f344a5f748ba0917b66513c2712000000000000000000000000000005192e43586e849999846e58432e1900000000000000000a141d262e353b4146494c4f50505050504e4c4844403a332c241b1106000000000000000000000000000000000000000000030c13191f252a2e323537383a383835312b241c13080000000000000000000000000000000002090d0e0e0e0d09010000000000000000000000000000000000000000000000000000000000070b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0a0600000000091a28343a3b3b3b3b4c62778da08b745f4a3b3b3b3b44596d7777776f5b463b3b4f64799098836c57422c17000c1f3346596b7d8f9e9586776b6057504a45434040414345494d535b636d77838f9c8f82715d49341f001f34495d707474747474747474747474747474747474747474747474747474747474747474746e5b46311c000b1c2b363d3e3e3e3f546a809597826b56403e474f565d62676b6d6f6f6f6d6b66615a51473c2f2213030000001022323e4647474747566b8297998c948a80766d655e57504b4744424244474e5968798da18f7965503b2611000e2134475869788793998f87827c79778d8978797d82878d94968d83786a57422d18000000000000000000000000001021324354657688998d7b6a5852525252586a7b8d99887665544332200f0000000000000000000000001f34495e73899e937d6954402d1b0d01000000000000000000000005122234485c70869b97826c57422d1800000000000004101c27313a424950555a5e6264666666666563605d59544e473f372e23190d00000000000000000000000000000000000000071520272e33393e43474a4c4e4f4e4d4a453f3830251a0d000000000000000000000000000009151e23232323221d1307000000000000000000000000000000000000000000000000000006121b202121212121212121212121212121212121201a11050000000b172025262626374c62778da08b745f4a44444444445a6f868d88725c47323a4f64799098836c57422c170012263b4f6276899b98877667594e443c35312d2b2b2c2e3034393f47505a65717d8c9382705d49341f001a2e41515d5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5c503e2b170015283a485253535353546a809597826b56402b333b42484e5256585a5a5a5856524c463e352a1f110400000000192d3f505b5c5c5c5c5c6b82979580838e938a8279726b65605c585757585c626b7786979a87735f4b37220d0015293d516476889794877b736c6864778d897365686d7278808992917d6b57422d18000000000000000000000000000314253748596a7b8d9988766453424153647688998c7a6a5847362514030000000000000000000000001c31465b6f84999884705c4a392b1e150d080401000000020509101823303f5163778b9f927d68533f2a1500000000000715222e39434d565d646a6f7377797b7b7b7b797876726e68625b534a40362a1e100300000000000000000000000000000000051625323b42484e53585c5f62636463625f5a534c42372b1e0f0000000000000000000000000818263138383838373025160d0d0d0d0c0b080602000000000000000000000000000000000616242f353636363636363636363636363636363636342e231404000000040c10111122374c62778da08b745f5a5a5a5a5a5a5a6f869b88725c47323a4f64798787836c57422c1700182d41556a7d92a08d7a6858493c3128211c18161617181b1f252b343d4853606d7b87756452412e1a0011233341494a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a483f32210f001c3145586668686868686a809597826b56402b1f272e34393d414344444443403d38322b22180d0100000000001e33485c6e72727272727282979580707b8690958d86807974706e6c6c6e71767d88959d8e7c6a5744301c08001b3044586d8294978675695f585362778d89735e53585e646c75808773614e3b2814000000000000000000000000000008192a3b4c5d6e80919483705f4e4e5f70829491806e5d4c3b2a180700000000000000000000000000182c4155697d919f8c796857483c3128211c1916151515171a1e242b35404e5d6e80939e8a76634e3a251100000000071625333f4b56606971788084898c8f90919191908e8b88837d766f665d53483b2e2112030000000000000000000000000000000f2234434f565c62686c71747778797877736e685f55493c2d1e0e0000000000000000000000132536444c4e4e4e4c4334242222222222201e1a17120d0700000000000000000000000000122434424a4b4b4b4b4b4b4b4b4b4b4b4b4b4b4b4b4b4940322210000000000000000d22374c62778da08b746f6f6f6f6f6f6f6f6f869b88725c4732384d606f7070706754402b16001c31465b7085999985705d4b3a2b1e140c070000000000060a1018212b36424f5d6c77685746352411000515232e34343434343434343434343434343434343434343434343434343434343434343434332d221303001f344a5f747d7d7d7d7d7d809597826b56402b16131a1f25282c2e2f2f2f2e2c28241e170f05000000000000001f344a5f74888888888888889895806a69737d878f98948f8a8684838384868b929b988d7d6f5e4d3a271401001f34495e73889c8f7a67584c434c62778d89735e4843495159626c77695744321f0c0000000000000000000000000000000c1d2f4051627385968f7d6b5a5a6b7d8f95847261503f2e1d0c000000000000000000000000000012263a4e6174879997867566594e443c36312d2b2a2a2a2c2f33383f47525e6c7b8c9e93826e5b47331f0b0000000616253443505d68737c868d93999b9794939191929395989c97928b837a7065594c3f302111000000000000000000000000000000162a3e51616a71777c82868a8d8f8f8f8d89837b72675a4b3c2c1b0a000000000000000000071b2f43546163636360524136373737373735332f2c27221b140c04000000000000000000001a2e41525e60606060606060606060606060606060605d503f2c18000000000000000d22374c62778da18c86868686868686868686889b88725c47323143525a5b5b5b5649382511001f34495e73899e94806a55412e1c0d0100000000000000000000040e1924313f4e5c625a4b3a281706000005111a1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1e19100400001f344a5f748b9494949494949e97826b56402b1601050b101417191a1a1a1916130f09030000000000000000001f344a5f748b9898989898989895806a56606a737c848b92979b999898999b9a958e867a6e6051412f1e0b00001f344a5f748ba08b75604b3a374c62778d89735e4833353d464f5a625b4c3d2c1a060000000000000000000000000000021425343f44556677899a8977666677899a89776655443e33241301000000000000000000000000000b1e314457697b8c9c9485776b6058504a4643403f3f3f4144474d535b646f7c8b9a97877563513e2b18040000011324344352616e7a86909998918b8683807c7b7b7c7d8084888d949b968d83776a5d4e3f2f1e0d0000000000000000000000000000192e43586d80868b91969b9a979598a49b9d978f8577695a4a3927150200000000000000000a1f34495e72787878705e4c4b4c4c4c4c4c4a4844403c362f2820170d0300000000000000001f34495d7076767676767676767676767676767676766e5b46311c000000000000000d22374c62778da39c999999999999999999999a9d88725c47322838444b4b4b4b483d2e1d0b001f344a5f748ba0917c67523c27120000000000000000000000000000071321303e494c483d2e2314040000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001f344a5f748b8b8b8b8b8b8b8b8b826b56402b16010000000000000000000000000000000000000000000000001f344a5f74838383838383838383806a544d57606870777c8286888b8b8a8885807972685d50423223120000001f344a5f748a9f8c76624d3d374c62778d89735e48353e47525e6b6c675b4936210d00000000000000000000000000000a1e314352595a5a6b7c8e9584727284958d7c6b5a5a595142301d09000000000000000000000000000215283a4c5d6e7d8d9b95897d736b655f5b585654545456595c61676e77828d9a96887868584634220f0000000d1f3041526170808c98988d857c76716d6a67666667686b6e73788088929c95887a6c5d4d3c2b190600000000000000000000000000172c4155697d9299938d89858280899b8888909a968878685644321f0b00000000000000010d1e33485c6f828f8e7b695e6062626262615f5d5955504a433c332a201509000000000000001f344a5f748b8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c88725c47321d000000000000000d22374c62778da08c84848484848484848484879b88725c4732334656606060605b4c3a2713001f344a5f748ba0927c67523d28130000000000000000000000000003111f2f3f4c54524f4a4132210f000000030b0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0e0901000000000000000000000000000000000000001f34495d707474747474747474747468543f2a15000000000000000000000000000000000000000000000000001d32465a696c6c6c6c6c6c6c6c6c6c62503c444c545c63686d7073747474726f6b655e564b40322314050000001e32475c71869a917d6b5b4f464c62778d89735e4849515a64707c8279644f3a240f00000000000000000000000000000f24394e616e6f6f6f70829290807d9092826f6f6f6f6e604c38230e00000000000000000000000000000b1d2e3f50606e7c8a959b9088807974706c6b6a6a6a6b6e71767b838b949d928678695a4b3a291705000004172a3c4e5f70808f9d92867a7068625c5854525150525356595e646c75808b98998b7b6b5a483623100000000000000000000000000012263a4e63778b857d78736f6c73899b86747d8996978674614e3b271300000000000004121f2b3640526476899987747375777777777674726e6a655e5750473d32271a0d0000000000001f344a5f748b95959595959599a19995959595959588725c47321d000000000000010d22374c62778da08b746e6e6e6e6e6e6e6e6f869b88725c4732394e63747676766a56412c17001f34495e73889d94806a56422e1d0d01000000000000000000010a15212f3d4d5d6967645e503e2b1700000a161f242525252525252525252525252525252525231d13060000000000000000000000000000000000001a2e41515d5f5f5f5f5f5f5f5f5f5f594a39251100000000000000000000000000000000000000000000000000172a3c4c5557575757575757575757514433303940484e53585b5e5f5f5f5d5a56514b42392e221405000000001a2e42576a7d919a89796c625a5462778d89735e575d656d77828e9079644f3a250f000000000000000000000000000011263b50667b86868686868d9c8b8b9c8d868686868679644f3a250f00000000000000000000000000000011223242505e6c78838d969b948e898683808080808283878b90979c938a8074675a4b3c2d1c0b0000000c203346596b7d8f9e918274685d554d4743403d3c3b3c3e41454a5058616d7989989989776553402d19050000000000000000000000000b2034485c70777069645f5a5e73899b866f6b788898917d6a56422e190500000000041422303c48535d666d7d919286888b8c8d8d8d8c8a87848079726b635a4f44382b1e0f00000000001f344a5f74808080808080808da18c80808080808080725c47321d000000091115161622374c62778da08b745f5858585858585a6f869b88725c47323a4f64798c8c836c57422c17001c31455a6f84989a86715e4c3b2b1e140c070301010204080d141d27323f4d5b6b7a7c786e5a45301b0009192733393a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3830241504000000000000000000000000000000000011233341494a4a4a4a4a4a4a4a4a4a463b2d1b09000000000000000000000000000000000000000000000000000d1e2e3a41424242424242424242423e34261d252d33393f4346484a4a4a4845423d362f261c1004000000000014273b4e61738594978a80766e6965778d8973676c7178828a94959079644f3a250f000000000000000000000000000011263b50667b919b9b9b9b9b9b9b9b9b9b9b9b9b9b9079644f3a250f00000000000000000000000000000004142332404e5a66707a838a90969a9a979595949597989b99948f8880776d62564a3c2d1e0f0000000013273b4f6376899b95847364564b4139332e2b28272627292c30353c454f5c6a798a9c95836f5c4835210c00000000000000000000000005192d405260635c554f4a485e73899b866f5a697a8d9a86715c48331e0900000003132332404d5a657079828993a09b9b989795959697999c98948e8780766c6156493c2d1e0e000000001d314558676a6a6a6a6a6a778da18c766a6a6a6a6a6a6656432f1a00000f1b252a2b2b2b374c62778da08b745f4a43434343445a6f868d88725c47323a4f64799098836c57422c1700172c4055697d91a18e7b6959493c3128211c181716171a1d2228303944505d6b79899287705b46301b00142637454e4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4c4233220f00000000000000000000000000000000000515232e3434343434343434343434322a1d0f000000000000000000000000000000000000000000000000000000101d262c2c2c2c2c2c2c2c2c2c2c2a22160911191f252a2e313334343433312d28221b1309000000000000000c1f324456667584919c928a837d7a788d89787c82868d958d828b9079644f3a250f000000000000000000000000000011263b50667b8686868686868686868686868686868679644f3a250f00000000000000000000000000000000051422303d49535d666e757c8286898c8d8f8f8f8d8b88848079736c645a5045392c1e0f0000000000192d42566a7d929e8a77665546392e251e19151312111214171b2129323e4c5c6d80929f8c77644f3b261100000000000000000000000000112334434c4d48413b35485e73899b866f5a5e72869b8b76604b36210c00000011213241505e6b77838d969c95909a8784828080828284888c91979b938a807367594b3c2c1c0b00000016293b4953545454545462778da18c766054545454545248382714000c1d2d393f404040404c62778da08b745f4a4040404044596d7777776f5b4640404f64799098836c57422c170011263a4d61748799998876675a4e443b35312d2c2b2c2f32363c444c56616e7b89989c87705b46301b001b30435562646464646464646464646464646464646460513e2b1602000000000000000000000000000000000005111a1f1f1f1f1f1f1f1f1f1f1f1d170c00000000000000000000000000000000000000000000000000000000000a121717171717171717171717150f050000040b1115191c1e1f1f1f1e1c18130e070000000000000000000215273848576673808991989893908f93918f9195948d847a748b9079644f3a250f00000000000000000000000000000f24394e616e6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6e604c38230e000000000000000000000000000000000004121f2b36414a535b61676c707376777878787776736f6b655f5850473e33281b0e0000000000001d32465b70869a97836e5b4837281b120a0400000000000000070d15202e3e4f62768a9f937d69543f2a1500000000000000000000000000061625303738342d2633485e73899b866f5a586c83978d77634e38230e00000b1d2e3f505f6e7c89959b91888080918a776b6a6a6b6c6f72777c838c959c918577695a4a3928170500000c1d2c373e3f3f3f3f4c62778da18c76604b3f3f3f3f3e362a1b0900172a3b4a54565656565662778da08b745f565656565656565d6262625f565656565664799098836c57422c17000a1e3144576a7b8d9d9586776b6057504a454341404244474b5057606973808c91919c87705b46301b001f34495e7379797979797979797979797979797979796e59442f1a050202020200000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000091a2a394855616c757c83888c8f9199938d8a868078706774888879644f3a250f00000000000000000000000000000a1e3143525968766c615a5a5a5a5a5a5a5a616c7669595142301d09000000000000000000000000000000000000010e19242e373f464d53575b5f6a6663636362605e5a56514b443d342b21160a000000000000001f344a5f73899e937d68533f2b190a00000000000000000000000003102033475b70869a97836c57422d18000000000000000000000000000007131d222320191e33485e73899b866f5a566b82978f78634e38230e000215283a4c5d6e7d8d9a95897d746c748794826f5d5456575a5d62686f78838e9b96887868574634210e0000000e1a24292a2a2a374c62778da18c76604b362a2a2a2923190c00001d324659686b6b6b6b6b6b778da08b746b6b6b6b6b6b6b6b6b6b6b6b6b6b6b6b6b6b6b799098836c57422c17000215283a4c5d6e7d8e9c96897d736b645e5a58565657595c60656b737c86918f828b9c87705b46301b001f344a5f748b909090909090909090909090909090866f5a442f1a171717171715120e070000000000000000000000000000000000000000000000000000000a13191b1b1b1b1b1b1b1b1b1b1b1b1b1b1b1b1b1912080000000000000000000000050b101417191919191714110c0701000000000000091014171717140f090100000000000000000c1b2a38444f5961686f7377797b918c7875706b655d5c6e727270614d38230e0000000000000000000000000000021425374c6073867d73685d534848535d68737d8674614d38241301000000000000000000000000000000000000000007111b242b32393e47596b7c796f655c524b4945413c37302921180e0400000000000000001f344a5f748ba0917b66503b2611000000000000000000000000000004192e43586e849999846e58432e19000000000000000000000004080b0d0d0d0d0e0b061e33485e73899b866f5a566b82978f78634e38230e000a1e314457697b8c9c9485776b6158697c8e8d7a6755434245494e545c65707d8c9b97867563513e2b1804000000081014151522374c62778da18c76604b36211515140f070000001f344a5f74828282828282828ea08b8282828282828282828282828282828282828282829098836c57422c1700000b1d2f4050606f7d8b979b90878078736f6c6b6b6c6e70747980878f968b7d768c9c87705b46301b001f344a5f748b91919191919196a2918d8d8d8d8d8d866f5a442f2c2c2c2c2c2c2a27221c130a0000000000000000000000000000000000000000000000000d1b272e30303030303030303030303030303030302d25190a00000000000000000a12192025292c2e2e2e2e2c2926211c150f07000007131c24292c2c2c29241c140900000000000000000c1a27323d464e545a5e62667b918c76605c575049505b5c5c5c5344311e0a0000000000000000000000000000000c21364b6071808d867a70655a5a65707a868d8072614c38230d00000000000000000000000000000000000000000000000810171e24384d6377898c82786f645b51473e342a21160d05000000000000000000001f344a5f748a9f917c67523d281404000000000000000000000000000a1c30455a6f849998836d58432e190000000000000000060e14191d2022222222201e1b1e33485e73899b866f5a566b82978f78634e38230e0012263a4e6174879997867567594e4c5e7183968572604e3b3034394049535f6d7c8d9e93826d5a47331f0b000000000000000d22374c62778da18c76604b36210b000000000000001f344a5f748b9797979797979ba0999797979797979797979797979797979797979797979c98836c57422c1700000011223242515f6d79858f979b938d88868382828284868a8e94978e84796d768c9c87705b46301b001f344a5f737b7b7b7b7b7b7b8d9f89777777777777776d5944424242424242413f3c362f261c1003000000000000000000000000000000000000000000081a2b394346464646464646464646464646464646464137281705000000000006121d262e343a3e4143434343413e3a363029221b120a182530383e4142413e3830271b0f00000000000000000915202a323940454a50667b8b8b76604b423c353e464747474135261402000000000000000000000000000000081c304353616e7c8a8d82776c6c77828d8a7c6f615444311e0900000000000000000000000000000000000000000000000000030d22374b5e6e7a86928c82776e645a51473d33261705000000000000000000001e33485d72879c95806b57443222140a02000000000000000000050e1927394b5f73889c95806b56412c1700000000000007111a22282d32353737373736332f2b33485e73899b866f5a566b82978f78634e38230e00182c4055697d919f8c796857493c415466788b907d6b58463421252c36414f5e6f82949e8a76634e3a2511000000000000000d22374c62778da18c76604b36210b000000000000001f344a5f748b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b836c57422c1700000004142332414f5b67717a838a91969a9a98979797999a96918a837a716660768c9787705b46301b001c30445663666666666666778d9f89736262626262625d57575757575757575654514b43392e211303000000000000000000000000000000000000000011253849565b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b544634210d000000000a18242f3942484e53565858585856534f4a443e362e251c2836424c53575756524c43392d1d0c0000000000000000030d161e252b313a4f63737474705e4a3528212b313232322d241708000000000000000000000000000000000114253543505e6b7886948a80808a9487796c5e5144362615020000000000000000000000000000000000000000000000000000081c2f41505d6874808c958b82776d635a504434220f000000000000000000001a2f44586d82969b8773614f4032261d16110d0a0909090b0e1219212b374556687a8fa28f7a66523d281300000000000d19242d363d42474a4c4c4c4c4b4844403b485e73899b866f5a566b82978f78634e38230e001c31465a6f84999884705c4a392b37495c6e8093887563513e2c1a192431405164778ba0927c68533f2a15000000000000000d22374c62778da18c76604b36210b000000000000001f34495d70747474747474747474747474747474747474747474747474747474747474747474746955412c1700000000051423313e4a545f676f767c828588898b8b8a8886827c766f675e546076828282705b46301b00142738464f505050505062778d9f89736c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6b69655f564b3f3121100000000000000000000000000000000000000000162b405467707070707070707070707070707070707064503c27120000000a192836414c555d63686b6e6e6e6e6b68645f58524a41392f3746545f676b6c6b6760564a3b2a1700000000000000000000030a1117203446565f5f5f5d52422f1b0f171c1d1d1c19110600000000000000000000000000000000000008172533404d5b687583909192908375685b4e4033261809000000000000000000000000000000000000000000000000000000001223323f4b56626e7a8692948a80766d62523f2b1601000000000000000000152a3e5266798d9f917d6d5e504339312a25221f1e1e1e2023272d343d4855637386989987735f4b37230e00000002111e2b37414951575c5f62626262605d59554f495e73899b866f5a566b82978f78634e38230e001f34495e73899e937d6954402d1b2c3e5163758893806e5c49372412132234485c71869b97826c57422d18000000000000000d22374c62778da18c76604b36210b000000000000001a2e41515d5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5a4c3a261200000000000513202c37424b545b62676c6f727374747472706c68625b534b475a696b6b6b6656422e1900091a28343a3b3b3b3b4c62778d9f8a83838383838383838383838383838383827d7972685d4f3f2e1c0a00000000000000000000000000000000000000172c42576c838787878787878787878787878787877d68533e291300000718283746535f6971777c8283848483827d78736d655d554c42445564717b8283827b73685946321d0000000000000000000000000004172838444a4a4a4941342412000000000000000000000000000000000000000000000000000000000815222f3d4a586572808b8b807265584a3d3023150800000000000000000000000000000000000000000000000000000000000514222e3945515c6874808c98938a806d58432e19030000000000000000000f23374a5d7082939c8c7c6e61564d453f3a373433333335383c4148505a667282929f8e7c695743301c0800000010202f3c48535d656b70747777777775726e69645d5e73899b866f5a566b82978f78634e38230e001f344a5f748ba0917b66513c2712213446586b7d908b786654412f1d0a192e43586e849999846e58432e19000000000000000d22374c62778da18c76604b36210b0000000000000011233341494a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a463c2e1d0a000000000000020f1a252f3840474d52575a5d5f5f5f5f5d5b57534d4740373c4b54565656534838261300000b172025262626374c62778da39a9898989898989898989898989898989897948e867a6d5d4c3a27130000000000000000000001080c101315151515172c42576c839898989898989b9c9b9898989898947d68533e29130000132536465564707c858c92969899999896928e88827971685f55506273838f9698968f86745f4a341f00000000000000000000000000000b1a2730343434342e241606000000000000000000000000000000000000000000000000000000000004121f2c3a4754616f74746f6154473a2d1f12050000000000000000000000000000000000000000000000000000000000000004101c27333f4b56626e7a86918b786654402c1702000000000000000000071a2d4052647586969b8c7d73696059534f4c4a4848484a4d51555c636c7784919f9082705e4c3a27140100000d1e2e3e4d5a6670798086898c8d8d8d8b88837d78716a73899b866f5a566b82978f78634e38230e001f344a5f748ba0917b66513c271317293b4e6072859683715e4c3a27151a2f44596e849998846e58432e19000000050d11121222374c62778da18c76604b36211212110c040000000515232e3434343434343434343434343434343434343434343434343434343434343434343434322a1e1000000000000000000008121c242c33393e4245484a4a4a4a4846423e39332c242d39404040403f372a1a09000000040c10111122374c62778d9f8a83838383838383838383838383838384868b95988b7a6956432f1b0600000000000000060f161c2125282a2a2a2a282c42576c838383838383838da08b8383838383837d68533e2913000a1d3042546473828f999b938e8b8988898b8e9298958d857b72675d6c8091a0928a898f826d5945311d00000000000000000000000000000009141c1f1f1f1f1a120600000000000000000000000000000000000000000000000000000000000000010e1c293644515d5f5f5d514437291c0f01000000000000000000000000000000000000000000000000000000000000000000000a16212d3945515c687380806d5b4937241100000000000000000000001123354758677786939c90867c746d6864615f5e5e5e5f62656a7077808a959c8f82726252412f1d0b000005182a3c4c5c6b77838d959a9a97959495969898938d867d75899b866f5a566b82978f78634e38230e001e33485d72889d94806a5642301f111e304355677a8d8e7c69574432202536495d72879c96826b56412c1700000c182126272727374c62778da18c76604b362727272620170a00000005111a1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1d170d0000000000000000000000000811181e24292d30333434343433312d29251e18101c262b2b2b2b2a24190c00000000000000000d22374c62778d9f89736c6c6c6c6c6c6c6c6c6c6c6c6c6c6e707784959986725e4935200b0000000000030f19222a31363a3d3f3f3f3f3d3a3f53646c6c6c6c6c6c768ca08b746c6c6c6c6c6c614f3b2612001126394d5f7183929f928880787573727376797d838a90988f857a6f72889c938275747a7966523e2a16000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000b19263340484a4a48403326190b0000000000000000000000000000000000000000000000000000000000000000000000000004101b27333f4b56626e7362503e2c1a0800000000000000000000000618293a49596775828d98999088837c78767473737374777a80858b939c958a7d706254443423120000000e213447596a7a89959c938b8682807d808284878c919792898a9b866f5a566b82978f78634e38230e001b3045596e83979a86725f4d3d2f231926384a5d6f82948774614f3d2b34435366798da1907b67523e2914000a1b2a353b3c3c3c3c4c62778da18c76604b3c3c3c3c3b34281908000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000040a1014181b1e1f1f1f1f1e1c1915100a04000a11151616161510070000000000000000000d22374c62778d9f89735e57575757575757575757575757585b65788da18d77624d38230e000000000715212c363e454a4f5254545454524f4b4653575757575760768ca08b745f5757575757514332200c00182c4055697c8fa09082756b64605e5c5e6064696e757c848d958d82768ba08c77645f686b5d4a36230f0000000000000000000000000105090b0d0f0f0f0f0e0d0a07040000000000000000000000000000000000000000000000000000000000000000000815222d333434332d221508000000000000000000000000000000000000000000000000000000000000000000000000000000000a16212d3944505c5e554533210f000000000000000000000000000b1c2c3b495764707a858e959c97928f8c898988898b8c9094999a938b82776d6053443626160500000015293e5164778999988a8077706c6a686a6b6e72767c838a929b9b866f5a566b82978f78634e38230e00162b3f53677b8fa28f7c6b5b4d40362d262d405264778a91806c5a473a4552617183969b8975614d382410001528394750525252525262778da18c766052525252525046372512000000000000000000000000000000000205080a0b0b0b0b0b0a07040100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000d22374c62778d9f89735e48484848484848484848484848494d5f748ba08f78634e38230e000000071625323e4951595f64676a6a6a6a6764605b554e4642424b60768ca08b745f4a424242423e33251503001c31465b7084989784726357504b4847494b4f545a61687079828c94898da08b745f4b55564e3f2e1b07000000000000000000040a10161a1e2023242525252322201c19140f09030000000000000000000000000000000000000000000000000000000000000511191e1f1f1e19110500000000000000000000000000000000000000000000000000000000000000000000000000000000000004101b27333e4849433727160400000000000000000000000000000e1d2b3947535e68717982888d919598999b9b9b999794908b8680776f655a4f4235261808000000001a2f44586d82949d8a796c635c5754535456595d62686f76808a9b866f5a566b82978f78634e38230e001024384c5f7284969a89796a5d5249413b3635475a6c7d918a7764524c576270808fa1907d6c5945311e09001c31445764676767676767778da18c766767676767676355422e1a00000000000000000000000001080d12171a1d1f21212121201f1c1915110c06000000000000000000000000000000000000000001060a0c0e0e0e0e0e0c0906030000000000000003090d0e0e0c080200000000000000000000000000000d22374c62778d9f89735e5e5e5e5e5e5e5e5e5e5e5e5e5e5e616a7a8ea08c77624d38230e00000516253443505b656d74787c808080807c79757069625a51484b60768ca08b745f4a342c2c2c2921160700001f34495e73899e907b6755453b36333234363a40464d545d666f79838e99a08b745f4a40413b3021100000000000000000060f181e252a2f323638393a3a3a383734312e29241e171008000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000915212c33343026190a000000000000000000000000000000000d1b2935414b555e666d73787c80838486868684827d7b76716a635b52483d3125170800000000001e33485d72879c95826d5c4f4842403e3f4144484d535b6373899b866f5a657182978f78634e38230e00091c2f42556777899998897b6f655d55504b48464f61738694826f5d606974808f9e938372614e3c291602001f344a5f747c7c7c7c7c7c7c8da18c7c7c7c7c7c7c7c715c47321c00000000000000000000050e151c22272c2f3234363636363634312e2a26201a130b030000000000000000000000000000000810161b1f222323232323211f1c18140f0a0500040e171e222323211c160e040000000000000000000000010d22374c62778d9f8973737373737373737373737373737373767c88989785715d48341f0a00001122334352616d7882888e9294959594928f8a847d756d645b5160768ca08b745f4a341f1717150e040000001f344a5f748ba08f78634e3928211e1d1f21262b32394149525c66707b8ca08b745f4a342c281f1203000000000000030f19232b33393f44474b4c4e4f4f4f4e4c4a46423e38322b231b110800000000000000081014151515151515151515151515151515130e05000000000000050e131515151515151515151515151515151410080000000000000000000000000000000000000000000000000000040f191e1f1b14090000000000000000000000000000000000000b17232e39424a52585e63676a6c6e6f6f6f6e6c6966625d5650483f362b2014070000000000001f344a5f748a9f937c67523e332e2b292a2c2f34393f485e73899b866f6c77838f9d8f78634e38230e0000132537495a6a7a8997998d8278706a64605d5b5a5a697b8e8d7a6c737c86929e928474655543321f0d00001f344a5f748b93939393939397a49793939393939388725c47321d0000000000000000050f19212930363c4044474a4b4b4b4b4b4946433f3a352e271f160c02000000000000000000000006121b242b30343738383838383634312d29241f191316212b3237383836312a21170b00000000000000091115161622374c62778da08e898989898989898989898989898989898b91999588786754412e190500081b2e40516170808b959c97928f8d8c8d8f929698928a82776e6460768ca08b745f4a341f100b0300000000001f34495e73889d907a665241332a231f1c1b1d1e20252d363f495360768ca08b745f4a341f130c010000000000000714202c363f474e53585c60626364646463615f5b57524d463f372e241b0f01000000000e1a24292a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2821170900000000091721282a2a2a2a2a2a2a2a2a2a2a2a2a2a2a29241a0e000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000613263949555b616155525558595a5a5a5d605f5d564c423b342c23190e02000000000000001f34495e73899e94806a58483c342f2c2b2c2f32373c485e73899b86737d899597a08f78634e38230e0000081a2b3c4c5c6a7885919c958c857d797572706f6f6f7083968582889099988d82736556473726140200001f344a5f748b8f8f8f8f8f8f8f8f8f8f8f8f8f8f8f88725c47321d000000000000000c17222c353d444b5055595c5f60606060605e5b58544f49423b32291f14080000000000000000000a18242e373f44494c4e4e4e4e4d4b4945423e38332d2727333e464c4e4e4a453d34291b0b00000000000f1b252a2b2b2b374c62778da39491919191919191919191919191919191918f8a82776a5a4a38251200001024384b5d6f808f9d968b837c78777677797c82878d94958b82776c768ca08b745f4a3426251f1609000000001c31455a6f849896826f5f51463e38343230323335383c40454b5160768ca08b745f4a341f0a00000000000000071625323e49525b62686d71747778797979787674706c67615a534a41372c1f0f0000000c1d2c373e3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3d342717060000061727343d3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3e372c1d0c00000000000000000000000000000003070a0d0f11111111100f0c09060100000000000000000000000000000000000000000000182d4256677075735f4b4045505a636c72757471695e5041301e10060000000000000000001c31465a6f83979a8775665950484441404244474b50565e73899b868791988d82978f78634e38230e0000000d1e2e3e4c5a67737d89929999938e8b888686848687889595959c978f867b6f635647382919080000001f34495e727878787878787878787878787878787878705c47311c000000000003111d29353f4851585f656a6e7174767676767473706d68635d564e463c3126190c000000000000000a192836414b53595d616363636362605e5a57524d48413b3645515a6163635f595046392917040000000c1d2d393f404040404c62778d9f897b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b79756e65594c3d2c1a080000172b3f53677a8d9e9385786f686462606264686d7279808890948a7d768ca08b745f4a353b3a33271807000000172c4054687b8e9f8e7d6f6359524c49474647484b4d51555a5f656c768ca08b745f4a341f0a00000000000005162534434f5b656e767c83878a8d8f90908f8e8c8986827b756e665d544a3d2c1a07000016293b495354545454545454545454545454545451453523100000102335455154545454545454545454545454545453493b2916000000000000000000000000060d12181c202224262626262624211e1b16110b04000000000000000000000000000000000000001a2f445a6f858a7965514e58626c7680888b8b867b6e5f4e3c291603000000000000000000172b4054677a8c9d9384766c635d59575657595c60656a7077899f969a91867a82978f78634e38230e0000000010202e3c4a56616c757d858b9195999c9b9b999b9c9b979b988a837a72685e524538291a0b000000001b2f43546163636363636363636363676a63636363636052402d19000000000413212e3b47515c646c7379808487898b8c8c8c8b8986837d78716a61594e43372a1d0e00000000000516283746535e676d7276787878787776736f6b67625c564f4854626d757877746d63574734200b000000172a3b4a54565656565662778d9f89736666666666666666666666666666666664605a52483c2e1f0e0000001b30455a6e8397998675665b534f4c4b4c4f53585e656c747c868f91868ca08b745f4a49504e453625120000001125384c5e7082929c8d80756d66615e5c5b5c5e5f63666a6f7479808891a08b745f4a341f0a0000000000001223344352606d78828a91979894918f8f8d8d8f90939796908a837a70675b4a36220e00001d314558676a6a6a6a6a6a6a6a6a6a6a6a6a6a6a63533f2b160100162b3f53636a6a6a6a6a6a6a6a6a6a6a6a6a6a6a675845311d000000000000000000010a131a21272c3134373a3b3b3b3b3b3937332f2b251f1810080000000000000000000000000000000000182d42576b8094826f61626a75808a93908b8b928d7c6b5946321f0b0000000000000000001124374a5d6e808f9c95898077726e6b6b6c6e71757980868c949b92897d746b82978f78634e38230e0000000002101e2c38444f59616970777c808487888989898886838c988572675f564c4034281a0b0000000000132536444c4e4e4e4e4e4e535d67707a7a68574e4e4e4c43342311000000021322313f4c59646e7780888e94989c9998979797989b9b97928d867d756b6055483b2c1d0d000000000e2134455564707a83888c8d8f8f8f8d8b8885827b76706a635b6372808a8f8d898075634e39240f0000001d324659686b6b6b6b6b6b778d9f8973666666666666615250505050505050504f4c463e352a1e10010000001e33485e73889d927c6957493f3a3736383a3e444a50586069727c87919aa08b745f525c656254412e19050000091c2f4153647383919d9289827a76737170727374777b8084898e959093a08b745f4a341f0a0000000000091c2f415261707d8b9598908984807b79787777787b7d82878d93968d847965503b261100001f344a5f748080808080808080808080808080806e58432e190300192e43586e808080808080808080808080808080745f4a341f00000000000000000a141d262e353b4146494c4f50505050504e4c4844403a332c241b110600000000000000000000000000000014283d5164788b8e7d76777d889290867c7676808f8975624e392511000000000000000000081b2d3f5061707d8a959c938c878482828384878a8f949a968f887d756c616b82978f78634e38230e0000000000000e1b27323c464e555c62676b6e707273737372706e82938f7c6a5745392e23170a000000000000081826313838383f49535c667079848d8675604b38383730251606000000102031404f5d6a76828b949c96908b8885838282838386898d92999a92897d7266584a3b2b1b0a000000162b3e516373828e969a9491908f8f9091949796908b857d776f6f82919d9493958a75624d39240f0000001f344a5f74828282828282828e9f897b7b7b7b7b7b7b6e59443b3b3b3b3b3b3b3a37322b23180d00000000001f344a5f748ba08f78634e3a2b25222123252a2f363d444d565f6974808da08b745f656f78715c47321c0700000012243546556472808a949c958f8b88878787888b8d909498928c847c8ca08b745f4a341f0a00000000001125394c5e70808f9c90857c746f6a67646362636466686d72788088918975624e3a251000001f344a5f748b95959595959595959595959595846e58432e190300192e43586e84959595959595959595959595958b745f4a341f00000000000004101c27313a424950555a5e6264666666666563605d59544e473f372e23190d00000000000000000000000000000e2135495b6d7d8e918c8c9291887d736961627083927c68533f2a15000000000000000000001022324251606d77828a92979b98979797999b97938f89837b736b6259566b82978f78634e38230e0000000000000009151f29323a41484d5256595c5d5e5e5e5c5b6375888b8875614d382311050000000000000000091928353e48525c666f79838d9085786d5c483423221d13070000000a1c2d3e4f5e6d7b88949c9289827b76726f6c6c6b6c6e7073787d858d969b9084766859493928160400001c31465a6d82929e9086807b797878797b7d8286898d92928b837a8c9d8d807c82826e5a46321e0a0000001f344a5f748b9797979797979ba094919191919191866f5a442f26262626262625221d170f060000000000001f34495e73899e8f7965513e30261f1b1917191b2129313a434d5761768ca08b7470788288725c47321d07000000061728374655616d7780888e9396989999999795928e89847d7770768ca08b745f4a341f0a0000000000182c4055687b8e9e8e807268605b5e6163666667676664625f646b747d806c5946331f0b00001f344a5f748b8c8c8c8c8c8f9f9c8d8c8c8c8c846e58432e190909192e43586e848c8c8c8c8d9c9e8f8c8c8c8c8c8b745f4a341f00000000000715222e39434d565d646a6f7377797b7b7b7b797876726e68625b534a40362a1e100300000000000000000000000006192c3e50606f7c858989857d746a60564d53677c87826b56402b160100000000000000000004142433424f5a656f767c8387898b8b8a8886837d79746e6760574f46566b82828278634e38230e0000000000000000020d161f262d33393d414447484848484746586a74747472614c38230d00000000000000000012253746515b656f78838c968a7d72675b4f3f2d190d0901000000011427394b5c6d7c8c99978a80756d67615d5a58575657585b5e63697079848f9c95877767564533210e00001f344a5f74899d9280726a666463646467696c7074787d83898f8e9594806e676d7566523e2b17030000001f344a5f748b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b866f5a442f1a1111111111100d090300000000000000001c31465b70859994806d5c4e423a34302e2c2e303236393e43494f60768ca08b7a838c9588725c47321d07000000000a19283744505a646c73797d828484848483807c78746f696360768ca08b745f4a341f0a00000000001c31465b70849893806f62676b707376787a7b7c7c7b797774706a626b70624f3c29160300001f34495d7076767676767682929b8876767676766b57422d1e1e1e1e2d42576b7676767676889b9282767676767676705d49341f00000000071625333f4b56606971788084898c8f90919191908e8b88837d766f665d53483b2e2112030000000000000000000000000f213242515e69707373706961574e43394d6172716c62513d29140000000000000000000000061524313d48525b62686d717374747473706d69655f59534c443b3d51626b6b6b6a5c4a36210c00000000000000000000030b12191f24282c2f3133333333323b4c5a5f5f5f5e5444311e09000000000000000000192d4154646e77828c959084786c6155493d3121100000000000000a1e314456687a8b9b9586786d625a534c48454342404243464a4f555d66717d8d9c96867463503d2a1704001f344a5f748ba08f786458524f4e4f505254575b5f64686e747a8294917b66525b60594937230f000000001f34495d7074747474747474747474747474747474746b58432e190400000000000000000000000000000000182d4155697d909d8b7a6c5f554e484543424345474b4e53585d636a768ca1908f97988f86725c47321d0700000000000a1926323e4750585f64686b6e6e6e6e6c6a67645f5a554f60768ca08b745f4a341f0a00000000001f34495e73899e8c7771767b8285888c8f90919391918f8d89857d756b5e534432200d0000001a2e41525e6060606060637486979483716060605c4d3b3333333333333b4d5c6060607183949685736360606060605e52412e1a0000000616253443505d68737c868d93999b9794939191929395989c97928b837a7065594c3f30211100000000000000000000000003142433414c555b5e5e5b554e443b313244545e5d58514434210e0000000000000000000000000613202b363f474e54585c5e5f5f5f5e5b5855504b453f383028344451565656554d3e2d1a0600000000000000000000000000050a0f14171a1c1e1e1e1e1d2e3c464a4a4a4943362615020000000000000000001b30465b70828b95958a7d72665a4f43372c2013030000000000001125394d60738698988776685b50463e3833302d2c2b2c2e31353a414a54606e7d8e9f92806d5a47331f0b001f34495d72879a9482746c66636060606060626365676a6c70737d949079644f484b463b2b1a07000000001a2e41515d5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5b4e3c2915000000000000000000000000000000000012263a4d60738595998a7d7269625d5a5857585a5c5f63686c72777d858fa29e968d857b726857442f1b060000000000000815212b343d444a50535758595958575552535353535360768ca08b745f4a341f0a00000000001f344a5f748b9f8980868b9095928f8d8b89888888898b8d909792897c6d5c4a37230f000000122434424a4b4b4b4b4b5668798a9b8f7d6c5a4b4848484848484848484848484b5a6c7d8f9b8a7867564b4b4b4b4b4a423424120000011324344352616e7a86909998918b8683807c7b7b7c7d8084888d949b968d83776a5d4e3f2f1e0d0000000000000000000000000615232f394146484846413a31281e2736434948433e3426160500000000000000000000000000020e19232b333a3f4447494a4a4a484643403b37312b241c1626343d404040403a2f201000000000000000000000000000000000000000000000000000101e2a32343434342f251809000000000000000000001a2e4357697b8e9084776c6055493d32261a0e0200000000000000172c4055687c90a08d7a69584a3d332a241e1b18171617191c20262d3742505f6f82959d8a76624e392510001b2f43576a7c8d999288807b7876767476767778797c808286888c989079644f3a3632291d0d000000000011233341494a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a473e301f0d00000000000000000000000000000000000b1e314355667686949b8f857d77726f6d6c6e6f7174787c82878c92999ea18d827971685f564a3a28150100000000000000030e18212930363b3f4143444443424d5f686868686868768ca08b745f4a341f0a00000000001e33485d72889c94948e8984807c797774737272727374777b838f9a8c7966523e29140000000616242f3536363636394a5b6c7d8f9b8a78675e5e5e5e5e5e5e5e5e5e5e5e5e5e66788a9b8f7d6c5b493836363636352f24160600000d1f3041526170808c98988d857c76716d6a67666667686b6e73788088929c95887a6c5d4d3c2b190600000000000000000000000005121d262d313333312d261e150b18252f34332e29211608000000000000000000000000000000000610181f252b2f323434343433312e2b27221c161008081621292b2b2b2b261e110200000000000000000000000000000000000000000000000000000d171d1f1f1f1f1b1308000000000000000000000014273a4c5e70837d72665a4f43372b2014080000000000000000001c31455a6f84989885705d4b3b2c20170f0a050000000000070c121a2532415264778ca0927c68533e2a150014273a4d5e6e7c88909795908d8c8b8b8c8c8d8f909294928d8883969079644f3a251e170c0000000000000515232e343434343434343434343434343434343434332b20120100000000000000000000000000000000000114263849586775828d9799928c888583838485878a8d92969b97918b8a9a8b74665d554c43392c1c0b00000000000000000000050d151c21262a2c2e2f2f2e3e53687d7d7d7d7d7d7d8ca08b745f4a341f0a00000000001b2f44586d8294988379746f6b676462605e5d5c5c5e5f626770829596826c57422c170200000006121b20212121212c3d4e6070829396857373737373737373737373737373737385969382705f4e3d2c21212121201b1206000004172a3c4e5f70808f9d92867a7068625c5854525150525356595e646c75808b98998b7b6b5a4836231000000000000000000000000000000a12181c1e1e1c18120b020008131b1f1e1a150e0500000000000000000000000000000000000000040b11161a1d1f1f1f1f1e1c1916120d0801000000050e1416161616120b000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000a1d2f415365746c6054483d31251a0e02000000000000000000001f34495e73889d937d6955412e1d0e03000000000000000000000007142335485d71869b96826c57422c17000b1e2f40505e6a747c83888b8d8f90908f8e8c8b8885827c787382978f78644f3a240f03000000000000000005111a1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1e180f0200000000000000000000000000000000000000091a2b3a495864707a838b91969a999898999a9a9794908c88837c767b8c8b745f4a413930261b0e0000000000000000000000000000070d111517191a1a293e53687d94949494949498a08b745f4a341f0a000000000015293d51647689998f827469615a55504d4b4a4a4b4d50555c6a7d9497836c57422c17020000000000070b0b0b0b0e2031425364758798918989898989898989898989898989898991988675645341301f0e0b0b0b0b07000000000c203346596b7d8f9e918274685d554d4743403d3c3b3c3e41454a5058616d7989989989776553402d1905000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000070c1013151514120e0902000000000000000000000000000000000000000000000000000011243648575f5a4e43372b2014080000000000000000000000001f344a5f748ba0917b66513c27120000000000000000000000000000051a2f44586e849999846e58432e1900071c304355626360686d72757778797978787774726f6c686374889c8a75604b37220d0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000d1c2b3a47535d676f767c828587888888878683807b77726d68626e7d8b745f4a34251d13090000000000000000000000000000000000000000000013293e53687d8b8b8b8b8b8b8b8b8b745f4a341f0a00000000000e213447596a7a8a9792877d756f696563605f5f6062656970798899907d69543f2b160100000000000000000000021324354758697a8c9c9f94939393939393939393939393949f9c8b796857463524130100000000000000000013273b4f6376899b95847364564b4139332e2b28272627292c30353c454f5c6a798a9c95836f5c4835210c00000000000000000000000000000810161a1e1f1f1f1f1c19140e07000000040e151b1e1f1f1d18120a01000000000000000000030a11161b1e1f1f1f1d19130c04000000000000000000000000000000000000000000000000000000050d141b2125282a2a2a27231d160d0300000000000000000000000000000000000000000000000006192a39444a473d3125190e02000000000000000000000000001f344a5f748ba0917b66513c27120000000000000000000000000000061a2f44596e849999846e58432e19000d22364a5f7377716c666160626364646463625f5d5a5c6470809295826e5b46321d0800000000000000000a12171717171717171717171717171717171717171717171717171717171717171717171717130c010000000000000d1c2935414b545b62686c6f71727372706f6c6a66625d595350607074705d49341f0900000000000000000000000000000000000000000000000013283d526674747474747474747474705d49341f09000000000005182a3c4c5c6b78859099918a847d7a777674747677797d848c97918372604d3a26110000000000000000000000000618293a4b5c6d80909c877c7c7c7c7c7c7c7c7c7c7c7c879c907d6d5c4b3928170600000000000000000000192d42566a7d929e8a77665546392e251e19151312111214171b2129323e4c5c6d80929f8c77644f3b261100000000000000000000000008131c242a2f3334343434312d28221b12090a17212930333434322d261d1308000000000000070f171e252b3033343434322d2720160c00000000000000000000000000000000000000000000000005101921282f353a3d3f3f3f3c3831292015090000000000000000000000000000000000000000000000000c1b283134322b1f13080000000000000000000000000000001e33485e73889d94806a55422f1e1005000000000000000000000009152436495d71879b96826b57412c170013283c5065798c86807b76726e6b686664636364676a7077828f9a8a7866523f2b170300000000000000101d262c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c281f12030000000000000b18232e3840474e53575a5c5c5e5c5c5a5855514d49443f42525d5f5d51412e1a060000000000000000000000000000000000000000000000000e233648585f5f5f5f5f5f5f5f5f5f5d51412e1a060000000000000c1e2e3e4d5b67737c868d939893908d8c8b8b8c8d8f939790898073645543311e0a000000000000000000000000000b1c2d3e4f6172839492826f67676767676767676f8292948371604f3e2d1c0b00000000000000000000001d32465b70869a97836e5b4837281b120a0400000000000000070d15202e3e4f62768a9f937d69543f2a1500000000000000000000000d1a252f383f44484a4a4a4946423d362e261c1b28343d44484a4946413a30251809000000000e1a232b32394045484a4a4a47423b33291e11040000000000000000000000000000000000000000000716232c343c434a4f52545454514c453d3226190c0000000000000000000000000000000000000000000000000a151c1f1e180e02000000000000000000000000000000001b30455a6e83979985715e4c3c2e2218110b070503030406090d141c2633425365788da1917c68533e291400172c41566b80929895908b8784807c7b797878797c80858b94978a7b6b5a4936230f000000000000000d1e2e3a4142424242424242424242424242424242424242424242424242424242424242424242413b3021100000000000000006111b242c33393e424547474847474543403d39342f2a3441494a49413323110000000000000000000000000000000000000000000000000007192b3a454a4a4a4a4a4a4a4a4a4a4941332311000000000000000010202f3d4a56606972787d84888b8d8f8f8f8d8c8987827c756c6155463726140100000000000000000000000000001021324354657688998d7b6a5852525252586a7b8d99887665544332200f0000000000000000000000001f344a5f73899e937d68533f2b190a00000000000000000000000003102033475b70869a97836c57422d18000000000000000000000e1d2b37424b53595d5f5f5f5e5b57514a42392f2a394650585d5f5e5b554d423627150200000e1e2c363e464d54595d5f5f5f5c564f463b2f2114040000000000000000000000000000000000000001142534404850575e64676a6a696660594f44372a1b0c0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000172b4054687c8fa18e7b6a5a4c3f342c25201c1a1919191b1e22282f384451607083959c8975614d39241000172c41566a777d84898e929798959391908f8f90919499958e85796c5d4e3d2b190700000000000000172a3c4c5557575757575757575757575757575757575757575757575757575757575757575757564e3f2e1b0700000000000000000811181f25292d303232333231302d2b28241f1b16242e3434342e23150500000000000000000000000000000000000000000000000000000d1c283134343434343434343434342e231505000000000000000002111f2c38434d565d646a6f727577787878777674716d6861594f44372819080000000000000000000000000000000314253748596a7b8d9988766453424153647688998c7a6a5847362514030000000000000000000000001f344a5f748ba0917b66503b2611000000000000000000000000000004192e43586e849999846e58432e190000000000000000000c1c2c3b48545f676d7274747473706b655e554c42384857636d7274737069605444321e0a0006192b3c49525a61686e72747473706a63594d3f32231404000000000000000000000000000000000000091d3143525c646b72787c80807d7b756c615548392a1b0b000000000000000000000000000000000000000000070b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0a06000000001125394c5f728597998878695c5148403a35312f2e2e2e3033373c434b55616f7d8fa091806c5946321e0a0013273a4c5b63696f74797d8285888a8c8d8d8e8d8c8986827971675b4e3f301f0e00000000000000001d32465a696c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6b5d4a36210c00000000000000000000040b1014181b1d1d1e1d1c1b1816130f0b0606121a1f1f1f1a1105000000000000000000000000000000000000000000000000000000000b151c1f1f1f1f1f1f1f1f1f1f1f1a110500000000000000000000010e1b26303a424950555a5d60626363666a615f5c58534d453d3226190a000000000000000000000000000000000008192a3b4c5d6e80919483705f4e4e5f70829491806e5d4c3b2a1807000000000000000000000000001f344a5f748a9f917c67523d281404000000000000000000000000000a1c30455a6f849998836d58432e1900000000000000000618293a4a5966727a82878a8b8b8986807971685f544a56667480888b89857c72614d39240f000c2135495a666d757c8388898b898680756a5d50413222120200000000000000000000000000000000000e23384d606f7780878d929495948f8980736557483929190900000000000000000000000000000000000006121b202121212121212121212121212121212121201a11050000091d30435567788a9997887a6e645b544e4a474443434345484b50575f6873808e9d948473614f3d2a1603000b1d2e3d484f555a5f64686c6f727476777778777674706c655e544a3d3021120100000000000000001f344a5f748383838383838383838383838383838383838383838383838383838383838383838378634e38230e0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000009141d272e353b404548525c656f797c6b5947433f39322a201509000000000000000000000000000000000000000c1d2f4051627385968f7d6b5a5a6b7d8f95847261503f2e1d0c00000000000000000000000000001e33485d72879c95806b57443222140a02000000000000000000050e1927394b5f73889c95806b56412c17000000000000000011233547586877848f979c9f9d9c9d9a958d857b71675c617385939c9897998b77634e39240f000f243a4f6478828991979c9a999a9a92887b6e5f504030200f00000000000000000000000000000000000f243a4f64778c939b9792908f90939a91847566574737261605000000000000000000000000000000000616242f353636363636363636363636363636363636342e23140400001326384a5b6b7b8a98988c82776f68635f5c5a5858585a5d60656b727a85919e93857566554432200d000000101f2b343a40464b4f53575a5d656a62626362615f5c57514a41382c2012030000000000000000001f344a5f748b98989898989898989898989898989898989898989898989898989898989898988f78634e38230e00000000000000000000000000000000000c171d1f1f1f1a1206000000000000000000000000000000000000000000000000050a0e101212121211100d0a0703000000000000070d111212100b0600000000000000000000000000000000000816212a343e47515b646f78838c8977634d382a241e160d0300000000000000000000000000000000000000021425343f44556677899a8977666677899a89776655443e33241301000000000000000000000000001a2f44586d82969b8773614f4032261d16110d0a0909090b0e1219212b374556687a8fa28f7a66523d281300000000000000061a2d405365768795a1968f8a8887888b8f95988f85796e6a7d919f8f84828584705c4834200b000e23384c6073889a938d888684868990998c7d6e5e4e3e2d1c0b000000000000000000000000000000000c2135485c6f839089837c7978797d869194857565554433221100000000000000000000000000000000122434424a4b4b4b4b4b4b4b4b4b4b4b4b4b4b4b4b4b49403222100000091b2c3d4d5d6b7986929d948b837c7773706f6e6e6e6f72757980868f98998f837566584837261503000000010e1820262c31363a3f424f61727d756a61574d4a47423d362e251b0f02000000000000000000001f344a5f748b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b78634e38230e000000000000000000000000000000000f1d2a323434342e2416060000000000000000000000000000000000000000020c141a1f232627272727272523201c18130e080208121b2226272725201a11080000000000000000000000000000051726333d47515a646e77828c92867a6e5e4b37221009020000000000000000000000000000000000000000000a1e314352595a5a6b7c8e9584727284958d7c6b5a5a595142301d0900000000000000000000000000152a3e5266798d9f917d6d5e504339312a25221f1e1e1e2023272d343d4855637386989987735f4b37230e000000000000000d2136495d7082949e8f837a75727072757a808890978c807484999582706b71796855402c190400091d3044586b80867d78726f6e6f747c88968d7c6c5c4b3a29170600000000000000000000000000000005192c4053677a7c756d686463656a73808e9483726251402f1d0c0000000000000000000000000000001a2e41525e60606060606060606060606060606060605d503f2c180000000e1f2f3f4d5b6875808a939a97928d89878484838486878b8f949a9890877c716457483a2a1a09000000000000050c12171c21262c42576c8091887d746a60574d433a30261c100200000000000000000000001f34495d707474747474747474747474747474747474747474747474747474747474747474747472614c38230d0000000000000000000000000000000c1d2d3b464a4a4941342414030000000000000000000000000000000000000a151f272e34383b3c3c3c3c3c3a3834312d28231d1619252e363b3c3c39352d241a0e000000000000000000000000000f223444505a646d77828b958c8074685c50412f1c0800000000000000000000000000000000000000000000000f24394e616e6f6f6f70829290807d9092826f6f6f6f6e604c38230e000000000000000000000000000f23374a5d7082939c8c7c6e61564d453f3a373433333335383c4148505a667282929f8e7c695743301c080000000000000013283c5065798d9f90807166605c5b5d60656c747c86909286879c907b66565e645c4c39251100000115283c4f6375726a635e5a585a606a7786968a79685846352312000000000000000000000000000000001124384b5e6b68605953504e50566170808f91806f5e4c3b29170600000000000000000000000000001f34495d7076767676767676767676767676767676766e5b46311c0000000111212f3d4b57626d7680868d92979a9b999998999a9c9995908b847c736a5f5347392a1c0c0000000000000000000002080d162b40546673808b91887d736960564c43392e200f00000000000000000000001a2e41515d5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5e5444311e09000000000000000000000000000008192a3a4b595f5f5d524232211000000000000000000000000000000000000d1b27323b43484d5052525252514f4c4946413c37312b2a37414a5052524e4941372c1e0e000000000000000000000000162b3f52626d76828a949186796e62564b3f32231200000000000000000000000000000000000000000000000011263b50667b86868686868d9c8b8b9c8d868686868679644f3a250f00000000000000000000000000071a2d4052647586969b8c7d73696059534f4c4a4848484a4d51555c636c7784919f9082705e4c3a27140100000000000000182d42566b809498857261534b4746484c51586069737d899494a29079644f4b4f4a3e2e1c0a0000000c20344757615f574f494543464d596777889887756452412f1d0c000000000000000000000000000000081c2f404f57554d453f3b383b4451617082928d7b6a584735231200000000000000000000000000001f344a5f748b8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c88725c47321d0000000003111f2d3945505a636a72787d828688898b8b8b898784807b76706860574d4236291b0c00000000000000000000000000001124374856626d79859190877c73695f564b3e2d1a070000000000000000000011233341494a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4943362615020000000000000000000000000005152637485869747470604f3f2e1d0d0000000000000000000000000000000c1c2b39444e575d6165676767676664625e5a56514b453f3948545e656767635d544a3c2b19060000000000000000000000192e43586d808a93978c8073685c5045392d21140500000000000000000000000000000000000000000000000011263b50667b919b9b9b9b9b9b9b9b9b9b9b9b9b9b9079644f3a250f00000000000000000000000000001123354758677786939c90867c746d6864615f5e5e5e5f62656a7077808a959c8f82726252412f1d0b00000000000000001b30455a6f859a927c68554337323133373d444d56606b76828f9f9079644f3a3a362d20100000000004172939464c4a433b35302e313c49596a7b8f9382705e4c3b2918060000000000000000000000000000001222313c414039312b2523293a4b5d6e80919988766452412f1e0c000000000000000000000000001f344a5f748b95959595959599a19995959595959588725c47321d0000000000010f1c28333d474f575d63686c70727374747473726f6b67625b554d443a3024180b000000000000000000000000000000081a2a3844505c6773808b9790867c72685c4a36220d000000000000000000000515232e3434343434343434343434343434343434343434343434343434343434343434343434342f251809000000000000000000000000000112233344556576878b7d6d5d4c3b2a1a090000000000000000000000000006192a3a4956616a7176797c7c7c7c7b7977736f6b65605a534b576671797c7b7770675a4935210c0000000000000000000000172c405467798c9185796e62564a3e33271b10040000000000000000000000000000000000000000000000000011263b50667b8686868686868686868686868686868679644f3a250f00000000000000000000000000000618293a49596775828d98999088837c78767473737374777a80858b939c958a7d706254443423120000000000081014151d32475c72889d8e78634e3a251d1c1e2329313a434e596470879c9079644f3a25221a0f0200000000000b1b283237362f27201b1e2f4052637486979f8e7c6a594735241200000000000000000000000000000004131f282c2b251d161324354758697a8c9d979482705e4d3b2918060000000000000000000000001f344a5f74808080808080808da18c80808080808080725c47321d000000000000000b16212a333b43494f53575b5d5e5f5f5f5e5c5a56524d47403931271d120700000000000000000000000000000000000c1b27333e4a56616d798591998f8679644f3a250f000000000000000000000005111a1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1b130800000000000000000000000000000e1f304051627283949c8c7a6a594838271605000000000000000000000000102336485867747d868c8f91939393918f8c8985807a746e675f6675848e92918d8478644f3a240f00000000000000000000001125374a5c6e808073675c5044392d21160a0000000000000000000000000000000000000000000000000000001024394e616e6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6e604c38230e0000000000000000000000000000000b1c2c3b495764707a858e959c97928f8c898988898b8c9094999a938b82776d60534436261605000000000e1a24292a2a33485e73899f8d77624c37220d0409131e262a313c475b70879c9079644f3a250f0700000000000000000b161e22211b140c192a3b4d5e6f8292998c9888766453412f1e0c000000000000000000000000000000020d14171611090e1f304253647587989282928e7c6a59473624120100000000000000000000001d314558676a6a6a6a6a6a778da18c766a6a6a6a6a6a6656432f1a0000000000000000040e1720282e353a3f424648494a4a4a484745413d38332c251d140b00000000000000000000000000000000000000000915212c3844505c6773808b9583705e4b37230e0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000b1b2c3d4e5e6f8091988a948877665545342313020000000000000000000000182c4053657686919a96908d8c8b8b8c8d909396948f89837a737184949a908f928874604c38230e0000000000000000000000081a2c3e5163736d61564a3e33271b0f04000000000000000000000000000000000000000000000000000000061a2d3f4e585d635e5a5a5a5a5a5a5a5a5f605f5b5a5a595142301d09000000000000000000000000000000000e1d2b3947535e68717982888d919598999b9b9b999794908b8680776f655a4f4235261808000000000c1d2c373e3f3f3f485e73899f8d77624c37220d001223303b3f3f3f465b70879c9079644f3a250f0000000000000000000003090c0c070314253748596a7c8d9e8c7a8c9482705e4d3c2a18060000000000000000000000000000000000000000091a2b3d4e5f70829397867486988876645341301e0c000000000000000000000016293b4953545454545462778da18c76605454545454524838271400000000000000000000040c141a20252a2d3033343434343332302d28241e18110a0100000000000000000000000000000000000000000000030f1b27323e4a56616d7985776553412f1c080000000000000000000000000000000000040a0f131617171717171513100c080400000000040c1216171715110b03000000000000000000000000000000000000071829394a5b6b7c8d9c8b798795847362524130200f00000000000000000000001d32475b6f83959b8c827b777674747677797d8286898e948f877d8e9b8a7c787d806c5945311d090000000000000000000000000f213345555e5c5044382d21150900000000000000000000000000000000000000000000000000000000000b2035495d6c72776d59444449535d666e7476746f66594b3e3324130100000000000000000000000000000000000d1b2935414b555e666d73787c80838486868684827d7b76716a635b52483d31251708000000000016293b4953545454545e73899f8d77624c37220d0a1d30414e545454545b70879c9079644f3a250f0000000000000000000000000000000f213243546677889991806e80928e7c6b59473624130100000000000000000000000000000000000004152738495a6c7d8f9c8b79687a8c9482705f4d3c2a1907000000000000000000000c1d2c373e3f3f3f3f4c62778da18c76604b3f3f3f3f3e362a1b0900000000000000000000000000060c1115191b1e1f1f1f1f1e1d1b18140f0a040000000000000000000000000000000000000000000000000000000915212c3844505b67736d5a48362412000000000000000000000000000000000711191f24282b2c2c2c2c2c2a2825211d18130e070c1720272b2c2c2a251f160c0100000000000000000000000000000004142536475768788a9a8f7d6d798b9182705f4e3e2d1c0c000000000000000000001f344a5f748a9f917d6e6663605f60606365686c70747980858b9298937d6b636a7164513d291602000000000000000000000000041628374349483e32271b0f040000000000000000000000000000000000000000000000000000000000000d22374c62778787725e4b515b66707983898c898377695947352310000000000000000000000000000000000000000b17232e39424a52585f63676a6c6e6f6f6f6e6c6966625e5650483f362b2014070000000000001d314558676a6a6a6a6a73899f8d77624c37220d1025394d5f696a6a6a6a70879c9079644f3a250f00000000000000000000000000000a1b2d3e4f60728395968573627486978976655341301e0d000000000000000000000000000000000000102233445667788a9b907d6d5c6e80918f7c6b594836241301000000000000000000000e1a24292a2a2a374c62778da18c76604b362a2a2a2923190c00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000030f1b27323e4a555e5c4f3d2b19070000000000000000000000000000010e1a242c33393d4042424242413f3d3a36322d28221c1d29333b4042423f3a32291f12030000000000000000000000000000112232435364758697928270606d7d8f8e7d6c5c4b3a2919080000000000000000001f344a5f748ba08f79665c5552504f4f4f5053575b60656a70777d94907b6650575c554735220e00000000000000000000000000000a19263034332c21150900000000000000000000000000000000000000000000000000000000000000000b2034495e72888d7a6960656e78838d958e8b8d95887665523f2b18040000000000000000000000000000000000000006111c262e3d4f617270655a58595a5a5a58575d67726f5d4c392c23190e02000000000000001f344a5f74808080808080899f8d77624c37220d12273c52677c8080808080879c9079644f3a250f00000000000000000000000000051728394a5c6d7d909b8a78675668798c9483705f4e3c2a1907000000000000000000000000000000000c1d2e3f51627385969583726051627386978976655342301e0d0000000000000000000000081014151522374c62778da18c76604b36211515140f070000000000030b0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0c050000000000000000000000000000000000000000000000000000000000000000000000000915212c384349483e31200e000000000000000000000000000002111f2c3740484d5255575757575654524f4b47413c36302e3b464f555757534e463c302111000000000000000000000000000d1e2f3f506171829397867464535f7082928a796858473726150400000000000000001e33485d718598968577706a6764646464646667696b6e7073777d949079644f4447423829180500000000000000000000000000000009141b1f1e190f03000000000000000000000000000000000000000000000000000000000000000000071b2f44586c8091887a7679828b958c827974788594826f5b47321e09000000000000000000000000000000000000000000091a2f44596d8083776d61574c444e59646f7a857b6954402b15060000000000000000001f344a5f748b959595959598a08d77624c37220d12273c52677c939595959597a09079644f3a250f00000000000000000000000001122334455768798b9c8f7d6b5a4a5c6e80918f7d6b594836251301000000000000000000000006090a0a18293b4c5d6e80919988766554445668798c9583715f4e3c2b190a0a0a0700000000000000000000000d22374c62778da18c76604b36210b00000000000000000a161f2425252525252525252525252525252525252421180d000000000000000000000000000000000000000000000000000000000000000000000000030f1a263034332c211302000000000000000000000000000010202f3d49535c62676a6c6c6c6c6b6a6764605b56514a443d4c59636a6c6c6862594e3f2e1b080000000000000008101415151a2b3c4d5d6e80909b8a78675746526374869787766554443322151515120c03000000192e425568798a96958b84807c79797879797b7c7d828386898c909b9079644f3a322e261a0b0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000015293c4f627384928e8c8e958d84796f656066778a8a75614c37220d00000000000000000000000000000000000000000000192e43586b7a888a8074695e56616c76828d857768543f2a15000000000000000000001f344a5f748b8b8b8b8b8b8b8b8b77624c37220d12273c52677c8b8b8b8b8b8b8b8b79644f3a250f000000000000000008101415151e2f4152637486979382705f4e3e50627386978977655342301f151514110a000000000005111a1f1f1f243647586a7a8c9e8d7b6a5948394a5c6e80918f7d6b5a4836251f1f1f1b14090000000000000000000d22374c62778da18c76604b36210b0000000000000009192733393a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a352b1d0d0000000000000000000000000000000000000000000000000000000000000000000000000009141b1f1e190f030000000000000000000000000000091b2d3e4d5b666f777b808283838382807c7874706b655f58505b6a767d83827c756b5d4b37220d0000000000000e1a24292a2a2a38495a6a7b8c9d8e7c6b5b4a39465667788a9483726151402f2a2a2a2720140600001226394b5c6b78848d93989491908f8f909091939496928e898480959079644f3a251a130900000000000000000000000000000000000000081014141008000000000000000a1114140f070000000000000000000000000000000000000000000d20324456657480878988837a70675c524b5a6e838579644f3a250f0000000000000000000000000000000000000000000015293c4e5c69778591867b7068737d898f827366594a392511000000000000000000001f34495d7074747474747474747471604b36210c11263b506474747474747474747473624e39240f000000000000000e1a24292a2a2b3c4d5e70829298877564534133445667798b958371604e3c2b2a2a2a261d110300000515232e3434343442536476889992826f5e4c3b2d3e50617385978977665442343434343026190a00000000000000000d22374c62778da18c76604b36210b00000000000000142637454e4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f483b2b1805000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001226394b5c6b78838b9195979898989794918e8a858079736c64697988939797928979644f3a250f00000000000c1d2c373e3f3f3f45566777899991826f5f4e3d2c394a5a6b7c8e90806f5e4d3f3f3f3f3b3224140300091b2d3e4d5b6770787d8487898b8c8c8b8a888784827c78746f83978e78634e39240f00000000000000000000000000000000000000000e1b242929241b130a00000002101c252a29231b120900000000000000000000000000000000000000031527384756636c7273726e665d544a4040556874706a5d4b37220d000000000000000000000000000000000000000000000d1f303e4c596673828f8e837a86918c7d706356493b2d1b09000000000000000000001a2e41515d5f5f5f5f5f5f5f5f5f5e5343301c080d213547575f5f5f5f5f5f5f5f5f5e5545331f0b0000000000000c1d2c373e3f3f3f48596b7c8e9d8c7a6958463527394a5c6d80918f7d6b5a483f3f3f3f3a2f2110000011233341494a4a4a4e60718394978674635141342a39445667798b958371604e4a4a4a494337271603000000000000000d22374c62778da18c76604b36210b000000000000001b30435562646464646464646464646464646464646464594835210c000000000000000000000000000000000000000000000000000000000000000407090b0b0b0b0b0a080602000000000000000000000000000000192e4255687a8a9699918b8887868687888b8d9195948e888077738798958b898d86725e4b36220d000000000016293b4953545454546374859695857363544c3e2c3949535e6f80918d7c6b5a545454544f4232200c00081d314558666761646a6e7173747676747473706e6b68646476899c89745f4a36210c000000000000000000000000000000000000000d1e2c383e3e382f271d1103000f202e393f3e362e251c0f01000000000000000000000000000000000000091a29384550585d5e5d5a534a41372d394a595f5b564e3f2e1b08000000000000000000000000000000000000000000000112202e3b485663707d8c958f95887a6d605345382b1d0f000000000000000000000011233341494a4a4a4a4a4a4a4a4a49423525140105182a39444a4a4a4a4a4a4a4a4a49433727160300000000000016293b4953545454556677899a91806e5d534a3c30414e546173859789776654545454544c3f2d1b07001a2e41515d5f5f5f5f6c7d8f9c8a79675f5d52423547575f5f6d80918f7d6c5f5f5f5f5e5545331f0b000000000000000d22374c62778da18c76604b36210b000000000000001f34495e73797979797979797979797979797979797977644f3a240f000000000000000000000000000000000000000000000000000000040a1015191c1e20212121211f1d1b17130f090400000000000000000000001e33485d71859898887c7672706f6f707275787b8084898f948c838f99867773787d6a57432f1b0700000000001d314558676a6a6a6a7082929989776a6a685c49354457666a6a73859589786a6a6a6a6a614f3b2712000e23374b60747b75706a65615e5f6060605f5e5c595a5f6873839493826d5945311c0800000000000000000000000000000000000005182b3c4a53534b433a2f2110081a2d3e4c54524a41392d1f0e000000000000000000000000000000000000000b1a28333d43484848453f372e241b2d3b464a47413b30211100000000000000000000000000000000000000000000000002101d2b384552606d7a888b85776a5d4f4235281a0d0000000000000000000000000515232e34343434343434343434342f25170800000c1b2831343434343434343434343026190a000000000000001d314558676a6a6a6a7284959584726a6a675947394d5f696a6a798b9584726a6a6a6a695d4a36220d001f34495d7074747474788a9b8f7d747474705e4a3b50647474747485978a777474747473624e39240f000000050d11121222374c62778da18c76604b36211212110c040000001f344a5f748b9090909090909090909090909090909079644f3a2517140e04000000000000000000000000000000000000000000000911181f252a2d313335363636363432302c28231e18110a0200000000000000001f344a5f748ba0907b6a615d5b5a5a5b5d6063666b6f747980868d99927d695e656c614f3b27140000000000001f344a5f7480808080808f9f918080808078634e38485e73808080808c978680808080806a543f2a150014293d51667a8f8a84807976726f6c6a686767686b6e737b859297877663513d2a1602000000000000000000000000000000000002122335475a67675f564c3f2d1b1325374a5c68665d554b3d2b1805000000000000000000000000000000000000000a1620292f333333302b241b110f1d2a3234322d271e120300000000000000000000000000000000000000000000000000000d1a2735424f5d6a74747367594c3f3224170a000000000000000000000000000005111a1f1f1f1f1f1f1f1f1f1f1f1b1207000000000a151c1f1f1f1f1f1f1f1f1f1f1b140900000000000000001f344a5f74808080808090a18c8080808076604b3c52677c808080809590808080808079644f3a250f001f344a5f748b8b8b8b8b97a3908b8b8b8b76604b3c52677c8b8b8b8b98958b8b8b8b8b79644f3a250f00000c182126272727374c62778da18c76604b362727272620170a00001f344a5f748b91919191919196a5959191919191919079644f3a2c2c292115060000000000000000000000000000000000000008131c252c33393e4246484b4b4b4b4b4a4745413d38322c251e160d040000000000001f344a5f748a9f907b6a605b5755545454545657595b5f656b727d94907965505357514332200c0000000000001f344a5f748b959595959da09c9595958f78634e38485e738995959599a09795959595806a543f2a1500172c42576c828f9499948f8b888482807d7c7c7d8084888f9893877869584734210e00000000000000000000000000000000000411202f405264777a72695d4a36222031425466797971685a48341f0b0000000000000000000000000000000000000000040d141a1e1e1e1b16100800000c171d1f1d18130b0100000000000000000000000000000000000000000000000000000000091724313f4c595f5f5f56493c2e2114060000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001f344a5f748b959595959ea0999595958c76604b3c52677c939595959e9d959595959079644f3a250f001f344a5f748b959595959595959595958c76604b3c52677c939595959595959595959079644f3a250f000a1b2a353b3c3c3c3c4c62778da18c76604b3c3c3c3c3b34281908001f344a5f737b7b7b7b7b7b7b8da08b7b7b7b7b7b7b7b78644f4242423d3324140200000000000000000000000000000000030f1b252f3840474e53575b5e5f606060605f5c5a56524c474039312920170d02000000001d32475b6f839498897c756f6c6a6a696a6a6b6c6e707376787c82949079644f3f423e332515030000000000001f344a5f748b8b8b8b8b8b8b8b8b8b8b8b78634e38485e73898b8b8b8b8b8b8b8b8b8b806a543f2a1500162b405568737980868a8f939699979594939394959897918a8276695a4b3a291705000000000000000000000000010204070d16212f3e4d5e6f828e8679644f3a252f3e4f6071848d8577624c37220d00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000614212e3b464a4a4a44382b1e100300000000000000000000000000000000000009111516161616161616161616161616161616161616161616161616161616161616161616140e050000001f344a5f748b8b8b8b8b8b8b8b8b8b8b8b76604b3c52677c8b8b8b8b8b8b8b8b8b8b8b79644f3a250f001f344a5f7480808080808080808080808076604b3c52677c808080808080808080808079644f3a250f001528394750525252525262778da18c766052525252525046372512001c30445663666666666666778da08b74666666666666655a575757575042311e0b0000000000000000000000000000000614212c38424c545b62686c7073747676767674726f6b66615b544d453d332a1f1408000000182c4053657686929a9089858280807d808082838487888b8f928f9a9079644f3a2c29211607000000000000001f34495d7074747474747474747474747472614c38475c6f74747474747474747474747467533e2914001125384a575f656b7075797d8284868889898a898886827c766d64584b3c2d1d0c000000000000000000000911151617191c2129333f4d5c6b7c8d9583715e4b37323f4d5c6d7d8f93826f5c4935200b000000000000091115161616161616161616161616161616140f06000000000000060f1416161616161616161616161616161615110900000000000000000000000000000000000003101e2a3234343430271a0d000000000000000000000000000000000000000f1b252a2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2922170900001f34495d70747474747474747474747474705e4a40506474747474747474747474747473624e39240f001d314558676a6a6a6a6a6a6a6a6a6a6a6a675947394d5f696a6a6a6a6a6a6a6a6a6a6a695d4a36220d001c31445764676767676767778da18c766767676767676355422e1a00142738464f505050505062778da08b745f5050505050505e6b6c6c6c604e3a25100000000000000000000000000000061524313e4a555f676f767c8286888b8c8c8c8b898784807b756f68615950463c31261a0d00001023364858677480888e9397979594949595979694908d89848080959079644f3a25150e0400000000000000001a2e41515d5f5f5f5f5f5f5f5f5f5f5f5f5e5444313f515d5f5f5f5f5f5f5f5f5f5f5f5f584937241000091b2c3a444b51565c6064686b6e70727373747372706c68625a51473a2d1e0f000000000000000000000f1b252a2b2c2e31363c45515d6b798a9988776654413a444f5d6b7a8b97877564523f2d190600000000000f1b252a2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2923180a000000000a1823292b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2a251b0f000000000000000000000000000000000000000c171d1f1f1f1c1409000000000000000000000000000000000000000c1d2d393f404040404040404040404040404040404040404040404040404040404040404040403e35271706001a2e41515d5f5f5f5f5f5f5f5f5f5f5f5f6a665d5349575f5f5f5f5f5f5f5f5f5f5f5f5e5545331f0b0016293b4953545454545454545454545454534a3c30414e545454545454545454545454544c3f2d1b07001f344a5f747c7c7c7c7c7c7c8da18c7c7c7c7c7c7c7c715c47321c00091a28343a3b3b3b3b4c62778da08b745f4a3b3b3b3b4f647983837c67523c27120000000000000000000000000005152433424f5c67727b848b91969a999795959596989a9995908a847c756c63594e43372b1b0a0006192b3d4d57626c73797d8284868787868683827d7b77736f6f84998d77634d38230e0000000000000000000011233341494a4a4a4a4a4a4a4a4a4a4a4a494336263240484a4a4a4a4a4a4a4a4a4a4a4a453b2c1a0800000e1c2830373c42474b505356595b5c5e5e5f5e5d5b58534e473e34291d0f000000000000000000000c1d2d393f404143464a5058626e7b8a988b7a6a5948484e56616d7b8a98897968584635221000000000000c1d2d393f4040404040404040404040404040403e352818070000071828353e4040404040404040404040404040403f392d1d0c00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000172a3b4a5456565656565656565656565656565656565656565656565656565656565656565656514535230f0011233341494a4a4a4a4a4a4a4a4a4a586a7b7970665c524a4a4a4a4a4a4a4a4a4a4a4a494337271603000c1d2c373e3f3f3f3f3f3f44535e6567665f5345394957616767645c4f3f3f3f3f3f3f3f3a2f211000001f344a5f748b93939393939397a49793939393939388725c47321d00000b172025262626374c62778da08b745f4e4e4e4e4e4f647990937c67523c2712000000000000000000000000001122334251606d79858f979a938d888482808080828386898d939998908980766c615549392714000a1e33475a6a6c666065696c6e6f70706f6f6e6b6966635f68798c9b87725e4935200b000000000000000000000515232e34343434343434343434343434342f2518222d3334343434343434343434343431291d0e000000000b151c22282d32373b3e4144464748494a484846433f39332b21170c0000000000000000000000172a3b4a545656585b5f646c75808c96897a6c5c57595d626a73808c9588796a5b4b3a2917050000000000172a3b4a54565656565656565656565656565656524636241000001024364652565656565656565656565656565656544a3b2a17000000000000000000000000000005090d0f11121211100f0c0904000000000000000000000000000000000000001d324659686b6b6b6b6b6b6b6b6b6b6b6b6b6b6b6b6b6b6b6b6b6b6b6b6b6b6b6b6b6b6b6b6b6b63523e2a15000515232e343434343434343434374c6176888d83796f655c52483e3434343434343434343026190a0000000e1a24292a2a2a2a2a3e5162707a7c7a716352445767757b7c786d5d4b382a2a2a2a2a261d110300001f344a5f748b8f8f8f8f8f8f8f8f8f8f8f8f8f8f8f88725c47321d000000040c10111122374c62778da08b7463636363636363647990937c67523c2712080b0b0b0b0a0400000000000b1d2f405161707d8b97998f867d78736f6c6a6a6a6b6d7073787d858c949c93897d726757432f1a001024394d6176807a756f6a66625f5c5b5a5a58585b5f646d788797917d6a57432f1b06000000000000000000000005111a1f1f1f1f1f1f1f1f1f1f1f1f1f1f1b130811191e1f1f1f1f1f1f1f1f1f1f1f1f1d160c00000000000001080e13191d2226292c2f31323334343333312e2a251e170e050000000000000000000000001d324659686b6b6d7073798088928f84776b616b6b6e71767d86918f84776a5b4c3d2d1c0b0000000000001d324659686b6b6b6b6b6b6b6b6b6b6b6b6b6b6b6453402b170200172b4053646b6b6b6b6b6b6b6b6b6b6b6b6b6b6b685946321d0000000000000000000000070e141a1e2224262727272624211e19140d07000000000000000000000000000000001f344a5f74828282828282828282828282828282828282828282828282828282828282828282826c57422c17000005111a1f1f1f1f1f1f1f1f20354a5d6e7985918c82786f645b51473e34271f1f1f1f1f1b140900000000000810141515151a2f44596d808e938f826e5a4c60748691938b7a67533e2915151514110a000000001f34495e727878787878787878787878787878787878705c47311c000000000000000d22374c62778da08b7878787878787878787990937c67523c27151d202121211f180e0100000215283b4c5e6f808f9c94887c726a635e5a5755545456585b5f64697077808a949b9085725c47321d00152a3f53677c908f8984807b7774716f6e6c6c6e707378808a96938472614e3b281400000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000003090d1114171a1c1d1e1f1f1e1e1c1915100a0400000000000000000000000000001f344a5f7482828386898e918b857c72665a6a808283878b928d867c7266594c3d2e1f0f000000000000001f344a5f748282828282828282828282828282826e58432e190300192e43586e828282828282828282828282828282745f4a341f00000000000000000008121b22292e33373a3b3c3c3c3b3936322e28211b130a01000000000000000000000000001f344a5f748b9797979797979797979797979797979797979797979797979797979797979797836c57422c170000000006090a0a0a0a0a0a0a1b2e40505c6773808b958c82776e645a51453624110a0a0a07000000000000000000000000001b30465b708699a09a87715c4e63788d9d9f94806a543f2a150000000000000000001b2f43546163636363636967636363636363636363636052402d19000000000000000d22374c62778da3928f8f8f8f8f8f8f8f8f8f96937c67523c27283136363636332b1f1000000a1e3245576a7c8d9d9384766a5f564f494542403f3f4043464a4f555c646d7782909d88725c47321d00172c42576c82898f959994908d8987868483838486898d94998f8374655544311f0c0000000000000000000a1217171717171717171717171717171312171717171717171717171717171717130b01000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001f344a5f748b97989284827c7770685f55546a8095988a837d7872695f55493c2e1f1001000000000000001f344a5f748b97979797979797979797979797846e58432e190300192e43586e84979797979797979797979797978b745f4a341f0000000000000005101b252e363d43484c4f50525251504e4b47423c362e261d13090000000000000000000000001f344a5f748b8b8b8b8b8b8b91a28f8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b9498836c57422c17000000000000000000000000001122323e4a56616d798591958b82776d6353402c170200000000000000000000000000000000192e42576a7b878b877c6b584a5e7080898a857664503c2713000000000000000000132536444c4e4e4e5668797a71675d544e4e4e4e4e4e4c43342311000000000000000d22374c62778da3959191919191919191919198937c67523c2939454b4b4b4b483d2e1d0b0011263a4e6175889997867566584d433b353038454c4c4c4c4c4c4c4c4c505a64788f9d88725c47321d00152a3f53646e757a8085898d90939698999898999895928c857c71655647372614020000000000000000101d262c2c2c2c2c2c2c2c2c2c2c2c2c2c28262c2c2c2c2c2c2c2c2c2c2c2c2c2c2c271e110200000005111a1f1f1f1f1f1c18130d0500000001080e13181c1f1f1f1f1d1a150e0700000000000000000000000000001f344a5f748b8c8d908f8b87827a72685d546a808c8e918d88837b72695d514435261708000000000000001f344a5f748b8b8b8b8b8b8e9e9c8c8b8b8b8b846e58432e190a0a192e43586e848b8b8b8b8c9c9e8e8b8b8b8b8b8b745f4a341f0000000000000916222d38414a51575d6164666767666563605c57504a423a30261b0e00000000000000000000001f34495d70747474747474778da08b7474747474747474747474747474747474747474799098836c57422c17000000000000000000000000000413212d3844505c6773808b97948a806f5a442f1a050000000000000000000000000000000014273a4d5d6a7274726a5e4e4153626d73747067584735210d000000000000000000081826313838384a5f73868e847a70665d53494038383730251606000000000000000d22374c62778da08b7b7b7b7b7b7b7b7b7b7b90937c67523c344757606060605b4c3a271300172c4055697d91a08d796857483b302720324556616262626262626262626263788f9d88725c47321d0010233646535a60666b7074787b7d82838484868483807c7771695f54473829190800000000000000000d1e2e3a41424242424242424242424242413b3a4142424242424242424242424242413b2f200f00000515232e3434343434312d2721180f050d151c22282d3134343434322e29221a10050000000000000000000000001f34495d707676777a7d848a928e867b6f62677676787c8288908f867a6f615344352616050000000000001f34495d7074747474747480919b8977747474746a57422d1f1f1f1f2d42576a7474747477899b9180747474747474705d49341f00000000000a182633404b545d656c7176797b7c7c7b797875706b655d564d43382c1c0b000000000000000000001a2e41515d5f5f5f5f5f62778da08b745f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f64799098836c57422c170000000000000000000000000000030f1b27323e4a56616d7985918c796755412d1803000000000000000000000000000000000b1e2f3f4c575d5f5d574d403544515a5e5f5c54493a2a18050000000000000000000009151e232333475b6c7884908d837970665c53493f35291a0900000000000000010d22374c62778da08b7466666666666666667990937c67523c3a4f64757676766a56412c17001b30455a6f84989985705d4a392a1d1323384d62747777777777777777777777788f9d88725c47321d00061828363f464c51565b5f6366686b6c6e6e6f6e6c6b676360594c4236291a0b000000000000000000172a3c4c55575757575757575757575757564e4c5557575757575757575757575757564d3e2d19060011233341494a4a4a4946413c352b2218212930373d4146494a4a4a47433e362d22160900000000000000000000001a2e41525e60616365696f76808a958d807263606163676c747d88948d80716253443322110000000000001a2e41515d5f5f5f5f5f62738596958372605f5f5a4d3b3434343434343b4d5a5f5f60728395958573625f5f5f5f5f5d51412e1a000000000918283644515d67717980878b8f91919191908d8a868079716960554a3a28150100000000000000000011233341494a4a4a4a4c62778da08b745f4a4a4a4a4a4a536368686864554a4a4a4f64799098836c57422c17000000000000000000000000000000000915212c3844505c677380826e5c4a38261200000000000000000000000000000000000011212f3a43484a48433b3026333e45494a4741382b1c0c00000000000000000000000002090d182b3e4e5a66727d8a958d83796f655c524738261300000000091115161622374c62778da08b745f505050505050647990937c67523c3b50667b8c8c836c57422c17001e33485e73889d94806a55412d1b0c0e23384e63788d8d8d8d8d8d8d8d8d8d8d8d949d88725c47321d00000a18232b31373d455769766b60565758585a585857616c76675644311d0b000000000000000000001d32465a696c6c6c6c6c6c6c6c6c6c6c6c6b5d5a696c6c6c6c6c6c6c6c6c6c6c6c6c6a5c4935200b001a2e41515d5f5f5f5e5b5650483e342b343d444b51565b5e5f5f5f5c5851493f3427180900000000000000000000122434424a4b4c4e50555b626c77849291827263524e5258606a7684929082716151402e1c0a000000000011233341494a4a4a4a4a5667788a9b907d6d5b4a4a4a4a4a4a4a4a4a4a4a4a4a4a5b6d7d909a897766554a4a4a4a4a4941332311000000051627364654626f7a858d8f8883807c7b7b7b7d8285898f8d867c726857442f1b130c03000000000000000515232e34343434374c62778da08b745f4a36363636445a6f7d7d7d715c47343a4f64799098836c57422c170000000000000000000000000000000000030f1b27323e4a55616d7363513f2d1b0900000000000000000000000000000000000003111d272f3334332f281e16212a313434322d251a0d000000000000000000000000000000000f20303d4954606c778490968c82786f6455422e1a0500000f1b252a2b2b2b374c62778da08b745f4a3b3b3b3b4f647984847c67523c3b50667b9198836c57422c17001f344a5f748b9f937c67523d2813000e23384e63788f9393939393939393939393939388725c47321d0000000610171d23384d6275877d73685d524749535e6974808573604b36210c000000000000000000001f344a5f7483838383838383838383838378635f748383838383838383838383838377624c37220d001f34495d7074747473706a645b51453e4750585f656b7073747474716c655c5144362717060000000000000000000616242f353637383b40474f5a667382929182705f4e3e444d596573829290806f5d4c3a271401000000000515232e343434343438495a6b7c8e9c8b79675f5f5f5f5f5f5f5f5f5f5f5f5f5f67798a9c8e7c6b5a493834343434342e23150500000012233445546472808d8e847b746e6a67666666686b6f747a838b9085715c47322d271f160b0000000000000005111a1f1f1f22374c62778da08b745f4b4b4b4b4b4b5a6f869488725c47323a4f64799095836c57422c17000000000000000000000000000000000000000915212c38444f5b5f56463422100000000000000000000000000000000000000000000b141b1e1f1e1b140b040e161c1f1f1d191208000000000000000000000000000000000002121f2b37434e5a66727d8a95958c82715c47321d07000c1d2d393f404040404c62778da08b745f4a404040404c5f6d6e6e6d614e404050667b9198836c57422c17001f344a5f748a9f937c68533d2814000e23384e63777c7c7c7c7c7c7c7c7c7c7c7c7c7c7c715c47321c0000000000020d23384c6172808e857a6f64595b66707b868c8071604b36210c000000000000000000001f344a5f748b989898989898979797978f78635f748b97979797989898989898988d77624c37220d001f344a5f748b8b8b888580776e6356515b646c73798085888b8b898782796f6254453524120000000000000000000006121b20212223272c333d4855637384958f7d6b5946333b4855647385968d7b695644311d08000000000005111a1f1f1f1f1f2b3d4e5f708292978574747474747474747474747474747474859792826f5e4d3c2b1f1f1f1f1f1a11050000000a1d2f415263728291887b70676059555250505153575b60676e77827c69564645413b33281d0f010000000000000006090a0d22374c62778da08b7460606060606060606f869b88725c47323a4f64798080806c57422c170000000000000000000000000000000000000000030f1b26323e474a443828170500000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000020e1a25313d4854606c77848f8e7c6a57442f1b0600172a3b4a54565656565662778da08b745f56565656565656585858585656565656667b9198836c57422c17001e33485d72889c95806b57432f1e0f0b2034485a666767676767676767676767676767676355422e1a000000000000091e314454626f7d8a8d82766b6d78838e897b6e615343301c08000000000000000000001f344a5f74878787878d978e828282828278635f7482828282828ba0988d8787878777624c37220d001f344a5f748b9595989a938b827365646e7780888f959a999797989b958c80726352412f1c090000000000000000000000070b0b0c0e1217202b384555667689988976634e392a37465667788a968673604b36210c0000000000000006090a0a0a0e1f30415263748697918b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b91978674635241301e0d0a0a0a0906000000000014273a4c5e70829186776a5e545156595b5b5b5a5754504c535b646f705f5a5b5a564f453a2d1f10000000000000000000000d22374c62778da08b76767676767676767676869b88725c4732364a5d696a6a6a62513e2a15000000000000000000000000000000000000000000000914202b333430271a0b0000000000000000000000000000000000000001060a0c0e0e0e0e0e0c0906030000000000000003090d0e0e0c0802000000000000000000000000000008131f2b37434e5a66717d83705e4c3a281501001d324659686b6b6b6b6b6b778da08b746b6b6b6b6b6b6b6b6b6b6b6b6b6b6b6b6b6b7b9198836c57422c17001b3045596e83979a86725f4c3c2d2117182b3c4a515252525252525252525255647376726b5945301b0000000000000215263644515f6c798794897d808a9386786b5e504335251401000000000000000000001e33485c6d7070707079858f8d82776c6b6a5c59686b6b75808b9690867a707070706e5e4a36210c001f344a5f748080808489929c92847376828a9399928c8884828283878f999182705e4c3925110000000000000000000000000000000000040d1a283748596b7d847b73624e39242838495a6d80837a71604b36210c00000000000000000000000001122335465768798b9ca09391919191919191919191919193a09b8a7967564534231201000000000000000000081c304356697c8e89776759535d656b6e7070706f6c69645f5953515b636a6f706f6a62584b3d2e1e0d0000000000000000000d22374c62778da2908c8c8c8c8c8c8c8c8c8c8d9d88725c47322d3f4c54545454504434220f0000000000000000000000000000000000000000000000030f181e1f1c14090000000000000000000000000000000000000810161b1f222323232323211f1c18140f0a0500040e171e222323211c160e0400000000000000000000000000020d1925313d4854606b746653412f1d0b00001f344a5f74828282828282828ea08b82828282828282828282828282828282828282829298836c57422c1700162b4054687c90a28f7c6a5a4b3e332a231e2c373c3c3c3c3c3c3c3c404b586573838b88725c47321d0000000000000009182633414e5c697684919092908275675a4d40322517080000000000000000000000192c3e4f595b5b5b5d67727c87918a8074695f5b66717c879293897d73685d5b5b5b5a50412e1b07001d314558676a6a6b6f757d8c9c917d8994958d857d77726e6b6b6d727b88978e7b6854402c18040000000000000000000000000000000000000a192a3c4e607170685f5545331f1a2b3d5063736f675e5343301c0800000000000000000000000000061728394a5c6d7d8f9c887b7b7b7b7b7b7b7b7b7b7b7b879c8f7d6c5b4a39281605000000000000000000000f23374b5f73868f7c6a5955647079808487878784827d79746d665f6775808587857d75695b4c3c2b190700000000000000000d22374c62778da39693939393939393939393949d88725c47322c3d4a515252524e4233210e000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000006121b242b30343738383838383634312d29241f191316212b3237383836312a21170b000000000000000000000000000008131f2b37424e5a5f58483624120000001f344a5f748b9797979797979ba09997979797979797979797979797979797979797979d98836c57422c17001125394d60738698998978695c50463e37322f2c2b2c2d3034394049525d697684929d88725c47321d0000000000000000081623303e4b586673828b8b807164574a3c2f2214070000000000000000000000000f21313d454646464a545f69747d8991877c716d78848f968b82766b60564b464646453e322311000016293b49535454565a616d80929d93958b82797069635d595656585f69788a9884705b47321e09000000000000000000000000000000000000000c1e3143535e5d544c433727160e203345555e5c534b423525140100000000000000000000000000000a1b2c3e4f6071839493827066666666666666667082939382705f4e3d2c1b0a000000000000000000000014293e52667a8f85725f506273828d94959291919194938e89827a72768692908b8c9287796a594836231000000000000000000d22374c62778da08b7c7c7c7c7c7c7c7c7c7c869b88725c473236495b6667676760503d2914000000000000000001080b0b0b0b09040000000000070b0b0b0b09040000000000000000000000000000000000000a18242e373f44494c4e4e4e4e4d4b4945423e38332d2727333e464c4e4e4a453d34291b0b0000000000000000000000000000020d1925303c464a453a2b19070000001f344a5f748b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b836c57422c1700091d304356687a8c9c9688796d6259524c47444240414345494e545c656f7a8794939d88725c47321d0000000000000000000512202d3b4855627074746e615346392c1e1104000000000000000000000000000313202a3030303038424c57616c76828c8f84808b968e83786e63594e4339303030302b21140500001b30445665686868686868788fa08f83786e686868686868686868615a6d808b8675604b36210b000000000000000000000000000000000000000114263542494841383026190a0416283743494840372f251708000000000000000000000000000000000f20314253647687988e7c6b5950505050596a7c8e98877564534231200e000000000000000000000000192e42576c82927d6955576b80929688807c7b7b7c7d82868a8f8e8682948c7d7676808d89776653402d1905000000000307070d22374c62778da08b7467676767676767676f869b88725c47323a4f64797c7c7c6c57422c170000000000000008141c202121211e170d000007131c202121211e180d000000000000000000000000000000000a192836414b53595d616363636362605e5a57524d48413b3645515a6163635f5950463929170400000000000000000000000000000007131f2a323431281c0d000000001f34495d707474747474747474747474747474747474747474747474747474747474747474746955412c1700011427394b5c6d7d8d9b988b80756d66605c59575656585a5d62687078828d9183899d88725c47321d00000000000000000000020f1d2a3744525d5f5f5c504336281b0e01000000000000000000000000000000020e161b1b1b1b25303a444f59646e7985969399867b70665c51463c31261c1b1b1b170f040000001e33485e737d7d7d7d7d7d7d8f9d887d7d7d7d7d7d7d7d7d7d7d7d6c57657976706a5b48331f0a00000000000000000000000000000000000000000817252f34332d251d140900000a19263034332c241b12070000000000000000000000000000000000021425364758697a8c9a897765544342546576899a8c7a695847352413020000000000000000000000001c31465b70868d77634e5a6f859a8c776b67666667696c70757b82899296826e60626e8091836f5c4834200c0000030f171c1d1d22374c62778da08b745f5252525252525a6f869b88725c47323a4f64799093836c57422c170000000000000818263035363636332a1e0e0717252f35363636332b1e0f00000000000000000000000000000516283746535e676d7276787878787776736f6b67625c564f4854626d757877746d63574734200b00000000000000000000000000000000010d171d1f1c150b00000000001a2e41515d5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5a4c3a261200000a1c2e3e4f5f6e7c8a969d9289827a75716e6c6b6b6c6f72777c848c958d8073899d88725c47321d0000000000000000000000000c19273441494a4a483f3225180b00000000000000000000000000000000000e1a24292a2a2a2f3a444f5a65707a869194898b8e84796e63594e44392e2a2a2a29251c0f0100001e33485e73899494949494949a97949494949494949494949494836c575b65625c564c3d2b180400000000000000000000000000000000000000000007121b1f1e191109010000000009141b1f1e19100800000000000000000000000000000000000000000718293a4b5d6e8090958371604f4e60718394907d6d5c4b3a291706000000000000000000000000001e33485e738889745f4a586d83978e7b716d6b6a686a6a6b6e6f72768c937c6853506173888c77634f3a2511000413212b31323232374c62778da08b745f4a3c3c3c3c445a6f868787725c47323a4f64799098836c57422c17000000000001142636434a4b4b4b473c2c1b132535424a4b4b4b473c2d1c0a000000000000000000000000000e2134455564707a83888c8d8f8f8f8d8b8885827b76706a635b6372808a8f8d898075634e39240f000000000000000000000000000000000000000000000000000000000011233341494a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a463c2e1d0a00000010213141505e6c78848e979d958f8a87848282828385888c92988f867a6f73899d88725c47321d000000000000000000000000000916232e343434332d22150700000000000000000000000000000000000c1d2c373e3f3f3f414c57616c77838d988d827679848f8c82766b60564b413f3f3f3f382d1f0e00001e33485e737d7d7d7d7d7d8d9b897d7d7d7d7d7d7d7d7d7d7d7d7d6c574a504e48423a2e1f0e000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000c1d2e3f5061728495907d6c5b5b6c7d8f948372614f3e2d1c0b00000000000000000000000000001f344a5f748b88725c475367798a958d868382807d8080828386888990937c675244586c82927d68533e2914001022323e46474747474c62778da08b745f4a474747474757697070706b594747474f64799098836c57422c170000000000081d3144545f606060594a38241c2f42535f6060605a4b39261200000000000000000000000000162b3e516373828e969a9491908f8f9091949796908b857d776f6f82919d9493958a75624d39240f000000020f181e1f1c1409000000000000030f191e1f1b1409000000000515232e34343434343434343434343434343434343434343434343434343434343434343434322a1e100000000003132332404e5b66717a838a90969a9b99979797989997928c857c72685e73899788725c47321d000000000000000000000000000005111a1f1f1f1e19100400000000000000000000000000000000000016293b4953545454545e6973808a9591867a6f6466717c8792897d73685e54545454534b3d2b1805001b30445665686868687386978f7d6b68686868686868686868686861513e3b39332d271d1001000000000000060e1315120c02000000000000070f1414110a000000000000000000000000000000000000000000000000000000000000000000000000000002152635404655667788998a786767788a9988766554454034251401000000000000000000000000001f344a5f748b88725d484a5c6b7882898d909394949392908e8c89878d937c67523e53687c93826b56402b1600192d3f505b5c5c5c5c5c62778da08b745f5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c64799098836c57422c1700000000020c21364b60727676766753402c20354a5f717676766955412d19060606060605000000000000001c31465a6d82929e9086807b797878797b7d8286898d92928b837a8c9d8d807c82826e5a46321e0a00000412202b333430271a0b000000000213212c33343026190b0000000005111a1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1d170d000000000000041422303d49545e676f767c828588898b8b8a8886827c7770685f565e73828282725c47321d0000000000000000000000000000000000000000000000000000000000000000000000000000000000001d314558676a6a6a6a707b8691958a7d7368635855626974808a90867a706a6a6a6a685a48341f0b001c31465a6b6f6f6f6f7d919683716f6f6f6f6f6f6f6f6f6f6f6f6f665440423f3b32251605000000000008111921282a271f14050000000a121b23282a261d11030000000000000000000000000000000000000000000000000000000000000000000000000b1f3244535b5b5b6a7b8d9685737385968d7b6a5b5b5a5243311d09000000000000000000000000001e33485e73888a745f4b3e4f5e656d74787b7c7d7d7c7c7a787673778c927c67523c51667b91826b56402b16001e33485c6e727272727272778da08b7472727272727272727272727272727272727272799098836c57422c170000020e161b21364b6074888c836f5b473320354a5f73878c85705c4834201b1b1b1b1b1a140b00000000001f344a5f74899d9280726a666463646467696c7074787d83898f8e9594806e676d7566523e2b170300041422303e474a44382818080809071020313e48494337291b0c000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000004121f2c37414b535b61676c6f727474747472706c68635c554c4558676b6b6b6757432f1a0000000000000000000000050b1115191c1e1f1f1f1f1e1b17130e0801000000000000000000000000001f344a5f7480808080838e9993837979797976625e737979797983938d838080808077624c37220d001e33485e7386868686889b928686868686868686868686868686836c575457544e4334220f000000000d1a242d353d3f3b31231302010f1c262e363d3f3a2f21100000000000000000000000000000000000000000000000000000000000000000000000001025394e6170707070708091918080919180707070706f604d38230e000000000000000000000000001c31465b70868e78645044596d78726c666667686868676563626e80928e7965503e53687c93826b56402b16001f344a5f748888888888888890a18e8888888888888888888888888888888888888888889298836c57422c17000313202a30303145596d82958a76624e3a303044586c80948c7763503b3030303030302f281d0f000000001f344a5f748ba08f786458524f4e4f505254575b5f64686e747a8294917b66525b60594937230f0000102232404e5b5f564636261c1d1e1c1e2e3e4f5c5e5547392a1907000000030b0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0d060000000000000000000000020e1a242e3740474d52575a5d5f5f5f5f5d5b58534e4841393a4a54565656534939271400000000000000000009121920252a2e31333434343433302c28231c160e0500000000000000000000001f344a5f748b95959596a0a099909090908f78635f748b9090909099a0969595958d77624c37220d001e33485e73898d8d8d949f8f8d8d8d8d8d8d8d8d8d8d8d8d8d8d836c59676c6961513e2a160100000b1c2b37404951544e42311e0b0e1f2d39414a52544c3f2d1b09000000000000000000000000000000000000000000000000000000000000000000000011263b50667b87878787878e9d8c8c9d8e878787878779644f3a250f00000000000000000000000000182d42576b8093806b57475c708786807b76726e6c6a6a6b6f76808d9886725f4b43576c82927d68533e2914001f344a5f748b9999999999999999999999999999999999999999999999999999999999999998836c57422c17000f21313d454646465265798e927d6a55464646465064788d93806a5746464646464646433a2d1d0b0000001f34495d72879a9482746c66636060606060626365676a6c70737d949079644f484b463b2b1a070000192d3f505e6c7364544434313233322f3c4c5c6d7365574836230f00000a161f2425252525252525252525252525252525252525252525252525252525252524211a0e01000000000000000000000008121b242c33393e4245484a4a4a4a4846433f3a342d252c383f4040403f372b1b0a0000000000000008131d252d343a3f4346484a4a4a4a4845413d37312a21180e030000000000000000001f344a5f748b8b8b8b8b8b8b8b8b8b8b8b8b78635f748b8b8b8b8b8b8b8b8b8b8b8b77624c37220d001e33485d70777777788f9c877777777777777777777777777777776a6a77827d6d58432e1903000015283949545c6469604e3b2817182b3d4b555d66695d4a382614040000000000000000000000000000000000000000000000000000000000000000000011263b50667b9199999999999999999999999999999079644f3a250f0000000000000000000000000014283d5165798d8773614f5f74899295908b878482808082848a92978a796856434b5f72878d78644f3a2611001f344a5f74848484848484848484848484848484848484848484848484848484848484848484836c57422c1700192c3e4f595b5b5b5b5e72879985715d5b5b5b5b5b5d71869a86725e5b5b5b5b5b5b5b574b3a27140000001b2f43576a7c8d999288807b7876767476767778797c808286888c989079644f3a3632291d0d0000001e33485c6e7c837262524246474847444a5a6a7a837466523e29140009192733393a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a362c1f0f000000000000000000000000000810181e24292d30333434343433312e2a251f19121b252a2b2b2b2a241a0d000000000000010e1a25303941484e53585b5e5f5f5f5f5d5a56514b453d342b20150800000000000000001f34495d707474747474747474747474747472615d7074747474747474747474747471604b36210c00192d41525f626262778d9e897462626262626262626262626262646f7a8895846e58432e190300001b3044576770787d6a584634241f34485a6971797a6755433222130600000000000000000000000000000000000000000000000000000000000000000011263b50667b8484848484848484848484848484848479644f3a250f000000000000000000000000000e22364a5d7185917d6c5b5d6f777c83888c90939695959796928d85796b5c4b4456687a8f86725d4935210c001e32475a6a6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e65533f2b16001e33485c6d70707070707080948d7870707070707070707d928e7970707070707070706957422e1904000014273a4d5e6e7c88909795908d8c8b8b8c8c8d8f909294928d8883969079644f3a251e170c000000001f34495e738490807060565b5c5d5c59576777888c7c69543f2a1400142637454e4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f493d2d1b080000000000000000000000000000040a1014181b1e1f1f1f1f1e1c1915110b050008111516161615100800000000000003111e2b37424c555c63686d707374747474726f6b66605951473d3226190b000000000000001a2e41515d5f5f5f5f5f5f5f5f5f5f5f5f5f5e54515d5f5f5f5f5f5f5f5f5f5f5f5f5e5343301c0800112434424b4c4c5e72879a918070645c5754535355585c60666e76828d9999846e58432e190300001e33485e73848c88756352423225374c6277858d85726150403123180e08040201000000000000000000000000000000000000000000000000000000000f24394d606d6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6d5f4c38230e00000000000000000000000000071b2e4154677a8c8a7868585c62686d72777b7d82838383827d7871675b4d4251627386907c6956422e1a0600182b3d4d57585858585858585858585858585858585858585858585858585858585858585858585447362410001f344a5f748787878787878792948787878787878787878790958787878787878787866f5a442f1a0500000b1e2f40505e6a747c83888b8d8f90908f8e8c8b8885827c787382978f78644f3a240f0300000000001b3043556676868e7d6d6a707272716d6775868f7d6e5e4d3a2611001b30435562646464646464646464646464646464646464646464646464646464646464645b4a37230f00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000211212f3c49555f6870777c8286888b8b8b898884807a746d645a504437291a0b00000000000011233341494a4a4a4a4a4a4a4a4a4a4a4a4a494341494a4a4a4a4a4a4a4a4a4a4a4a4942352514010006162530363743576a7d8f9e8f8277706c6968686a6c70757a828a948b8999846e58432e190300001c3145596b7d909382706051423534485c6e809290806e5e4f41352a221d19171616120a000000000000000000000000000000000000000000000000000a1e3142515858585858585858585858585858585858585041301c0900000000000000000000000000001225384a5d6e80918676685a4e54595e6266686b6c6c6c6b68645d544a4652617080918572604d3a271300000e1f2f3b4243434343434343434343434d5a63676763594c4343515d65676660554643434343434037291907001f344a5f748b979797979797979e9c979797979797979797979d9c97979797979797866f5a442f1a050000071c304355626360686d72757778797978787774726f6c686374889c8a75604b37220d00000000000014263848586878898c7b8085888887837b839180706050402f1d0a001f34495e737979797979797979797979797979797979797979797979797979797979797966513c2712000000000000030a11161b1e1f1f1f1d19130c040000000000000000000000000000000000000000000000000000000f202f3f4d5a66727c858c92979996949393949799958f8880776d61554738291a0900000000000515232e3434343434343434343434343434342f2e34343434343434343434343434342f25170800000007131c21273a4d5f70808f9a948c86827d7d7d8083868a8f968e84798899846e58432e1903000016293c4e607283948f7d6f6053473d3e51637486968d7c6d5f52473e37312e2c2b2b261d10010000000000000000000000000000000000000000000000011324333e4b58626767635a4e4343505c6467676156483d322312000000000000000000000000000000081b2d3f516272839286786b5f544b494d51545657575756534f49444d586470808f8977665543301d0a000001111e282d2e2e2e2e2e2e2e2e2e35495b6b777c7c766a59474f616f797c7b726453402e2e2e2e2c24190b00001f344a5f748282828282828282929082828282828282828282919282828282828282826f5a442f1a0500000d22364a5f7377716c666160626364646463625f5d5a5c6470809295826e5b46321d08000000000000091a2a3a4a5a6a7a8b8c9394909092978f91837262524232221200001f344a5f748b90909090909090909090909090909090909090909090909090909090907c67523c271200000000070f171e252b3033343434322d2720160c000000000000000000000000000000000000000000000000000a1b2d3e4d5d6b78848f98968f8984827d7c7c8082868b9299948a807265564737271503000000000005111a1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1b1a1f1f1f1f1f1f1f1f1f1f1f1f1f1f1b1207000000000000080c1e30415261707d8890979a96949494959796918b837a71728899846e58432e190300000c1f314354657686958e7d70645950494556677788978c7d70645a514b46434240403a2e1f0f0000000000000000000000000000000000000000000000000a1f33465969757c7c776c5c4a4d5f6e787c7b746656432f1b0700000000000000000000000000000000102233445464738290897c72675e57504b474443424344474b5158606a75828f89796a5a4937251301000000000b14181919191919191919263b5065788992928876634e576c808d939083705c47321d19191711070000001d324659686b6b6b6b6b6b6b768a96826d6b6b6b6b6b6b6b758a97836f6b6b6b6b6b6b6554412d180a000013283c5065798c86807b76726e6b686664636364676a7077828f9a8a7866523f2b1703000000000000000c1c3144576a7c8e9488807b797d848f958573604d3925140400001f344a5f748b91919191919196a5959191919191919191919191919191919191919c937c67523c27120000000e1a232b32394045484a4a4a47423b33291e110400000000000000000000000000000000000000000000011427394b5c6b7a8996988d837a746f6b6867686a6c70767d86909c91837465554433210e000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000113243443525f6a747c8387898b8b8a8886827c766f675e72888b846e58432e19030000021425374858677685928f82766c645e5a575a697887948e82766d655f5b585756554c3d2c190500000000000000000000000000000000000000000000000f24394d62768891928a79655155697c8c939085725e4a35200b000000000000000000000000000000000415263646556471808b8f857a726a65605c595857585a5c60656c747d889286786a5b4c3c2b1a0800000000000000000000000000000012273c52677c929f9e907a65505a6f84989f9b88735e48331e0900000000000000172a3b4a545656565656565b6f839789756156565656565a6e82968a7662565656565652473d3528190700172c41566b80929895908b8784807c7b797878797c80858b94978a7b6b5a4936230f00000000000000000d22374b6074889886766b666568718091907c6854402b160100001f344a5f737b7b7b7b7b7b7b8da08b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b8095937c67523c271200000e1e2c363e464d54595d5f5f5f5c564f463b2f2114040000000000000000000000000000000000000000000a1e31445668798a9995877a6f67605a5653525354575c626a737d8c9a93847362503d2a17040000000000000000000000000000000000000000000c161d1f1f1f1f1d160c00000000000000000000000000000000000006162534414d5760686d717474747473706c68625b545b6e7474746a57422d180300000008192a3a49586774828d94898078726f6c6b636875828d948a827974706e6c6b695b4834200b00000000000000000000000000000000000000000000000f253a4f64798f9e9f927d6853566b82969f9d8b76604b36210b0000000000000000000000000000000000081828374654616d79838d8e86807974716e6c6c6d6f7175798088908a8074675a4c3d2e1e0d0000000000000000000000000000000010253a4e62748389898272604c55697a868a887d6c5945301c07000000000000000c1d2d393f49535454545454687b90907c68545454545454677a8f927d6955545454545454514636241100172c41566a777d84898e929798959391908f8f90919499958e85796c5d4e3d2b1907000000000000000010253b5064798f907b685851505461738897836d58432e190400001c30445663666666666666778da08b746666666666666666666666666666666a8095937c67523c27120006192b3c49525a61686e72747473706a63594d3f32231404000000000000000000000000000000000000000011263a4d60738698978776695d534b45413f3d3e3f42474e56616d7b8c9c91806d5a47331f0b00000000000000000000000000000000000000000e1d29313434343431291d0e000000000000000000000000000000000000071624303b444d53595c5f5f5f5f5e5b57534e4740505c5f5f5f5a4d3b281400000000000c1c2b3a4957636f7a838b928d888482826c5864707a838a908f898683828277624c37220d00000000000000000000000000000000000000000000000d22374b5f728289898375634f536678858a88806f5c48331f0a0000000000000000000000000000000000000a192836434f5b66707982898f8e8a878483838384878a8f8e8880766d62564a3d2e1f1000000000000000000000000000000000000b1f334556656f74736f6455444b5c697174736c5f4f3d2a160200000000000000000f1b304457666a6a6a6a6a6a748997846f6a6a6a6a6a6a6a73889985706a6a6a6a6a6a6a6454402c180013273a4c5b63696f74797d8285888a8c8d8d8e8d8c8986827971675b4e3f301f0e00000000000000000011263b50667b918d77624d3c3b455a6f869b866f5a442f1a050000142738464f505050505062778da08b745f50505050505050505050505050546a8095937c67523c2712000c2135495a666d757c8388898b898680756a5d50413222120200000000000000000000000000000000000000172c4055697c909e8c7968594b4037312c2928282a2e333a444f5e6d7d919d8a76624e3a251100000000000000000000000000000000000000081a2c3b454a4a4a4a453b2c1a0800000000000000000000000000000000000006131e2831393f44474a4a4a4a4846423e3933323f484a4a4a473d2f1e0b0000000000000d1c2b3946525d6770777c82849697836c57535d666f757b80838a98978d77624c37220d0000000000000000000000000000000000000000000000081c304354636e737470665746495a677174736d6151402c1904000000000000000000000000000000000000000a1825323e49535d666d747a80848789898b898887837d79736c635a5045392c1f100100000000000000000000000000000000000316283847535b5f5f5b5246373e4c565d5f5e584e4131200d000000000000000000001e33485e738080808080808082978b80808080808080808082978c80808080808080806f5a442f1a000b1d2e3d484f555a5f64686c6f727476777778777674706c655e544a3d3021120100000000000000000010263b5065798f8f7a6758504f5360738898836d58432e19040000091a28343a3b3b3b3b4c62778da08b745f4a3b3b3b3b3b3b3b3b3b3b3b3f546a8095937c67523c2712000f243a4f6478828991979c9a999a9a92887b6e5f504030200f000000000000000000000000000000000000001c31455a6f849896826e5c4a3b2e241c1714131315191f2732404f6174889c927c68533f2a150000000000000000000000000000000000000010243749585f5f5f5f584937241000000000000000000000000000000000000000010b151d242a2f323434343433312e2a251f222d33343434322b1f1100000000000006152433424f5c67727a82888d908e8c836c575d67717982878b8f8f8d8c8b77624c37220d00000000000000000000000000000000000000000000000013253645515a5e5f5b5348393c4a555c5f5e5950423322100000000000000000000000000000000000000000000814212c37404a525a60656a6e717374747373706e6a655f5850473d33271b0e01000000000000000000000000000000000000000a1a293640474a4a463f35282e3a43484a49443c31231302000000000000000000001e33485e7389959595959595969e99959595959595959595969e9995959595959595866f5a442f1a0000101f2b343a40464b4f53575a5d5f60626263636b625c57514a41382c201203000000000000000000000e23374c6075899785756a656468707d90917d6954402b16010000000b172025262626374c62778da08b745f4a342626262626262626262a3f546a8095937c67523c2712000e23384c6073889a938d888684868990998c7d6e5e4e3e2d1c0b0000000000000000000000000000000000001f34495e73889d917c67533f2c1d11080100000000040b14223245596d839797826c57422d1800000000070b0b0b0b0b0b0b0b0b0b0b0b0b0b14293e53677474747467533e29140b0904000000000000000000000000000000000000020910161a1d1f1f1f1f1e1c1915100a10191e1f1f1f1e180e010000000000031324334251606d79858e9289827c78767569616e7a858e928a837d7977767571604b36210c000000000000000000000000000000000000000000000000081827343e46494a4740362a2c3841474a49453d3324150500000000000000000000000000000000000000000000030f1a242d363e464c5155595c5e5f5f5f5e5c5955504b443d342a20160a000000000000000000000000000000000000000000000b19242c323434312b23171d272e33343430291f130400000000000000000000001e33485e738888888888888888899b8d888888888888888888899a8e888888888888866f5a442f1a0000010e1820262c31363a3f4245484a5059636d76806f5e4c3d362e251b0f0200000000000000000000000b1d3145596b7d8e93877d79797c838e968673614e3a26130300000000040c10111122374c62778da08b745f4a341f11111111111111152a3f546a8090907c67523c271200091d3044586b80867d78726f6e6f747c88968d7c6c5c4b3a29170600000000000000000000000000000000001f344a5f748ba08f78634e39241000000000000000000004162a3f546a809599846e58432e19000006121b2021212121212121212121212121212a3f546a808b8b806a543f2a21211e170d0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000f2031425161707d8b968a7d756d676360606271808c968a80766f69656260605e5343301c08000000000000000000000000000000000000000000000000000917222b313434322c24191b262e323434302a2115060000000000000000000000000000000000000000000000000007111a232a31373c414447484a4a4a484744403c36302921170e030000000000000000000000000000000000000000000000000611181d1f1f1c1710060a131a1e1f1f1b150d020000000000000000000000001d32475b6d727272727272727280938d79727272727272727280938e797272727272726a57432e1900000000050c12171c2128323b454f59626c76808a8d7b68533e281b1208000000000000000000000000091929394a5a6a7a8b8e9493909092979092827261514231211100000000000000000d22374c62778da08b745f4a341f0a000000000000142a3f54697979797966513c2712000115283c4f6375726a635e5a585a606a7786968a7968584635231200000000000000000000000000000000001f344a5f748ba08f78644f3a251102000000000000000005162b40546a809599846e58432e19000616242f353636363636363636363636363636363f546a809595806a543f363636332a1e0e00000000000000000000000000000306080a0b0b0b0b0b0b0a080502000000000000000000000000000000000000081a2c3e4f6070808f9486786c6159534e516171828f9285776c625b54504d4b4b4942352514010000000000000000000000000000000000000000000000000000050f171c1f1f1d1811070912191d1f1f1c160e0400000000000000000000000000000000000000000000000000000000070f161d23282c2f323334343433312f2b27221c150d0400000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000182b3e4f5a5c5c5c5c5c5c5c64788c95826c5c5c5c5c5c5c63778c95826d5c5c5c5c5c594c3b2814000000000000011223303b444e58616c75808993897d7163503c2712000000000000000000000000000014263747576777888c7b8086898988837c84908070604f3f2f1d0a000000000000000d22374c62778da08b745f4a341f0a00000000000011263a4c5d646464645b4a37230f00000c20344757615f574f494543464d596777889887756452412f1d0c000000000000000000000000000000001e33485e73889d927c6854402f20130a0400000000050c16233346596d839796826c57422d1800122434424a4b4b4b4b4b4b4b4b4b4b4b4b4b4b4b4b546a809595806a544b4b4b4b473c2c1b08000000000000000000050b1015181b1e1f2121212121201f1d1a17130e080200000000000000000000000000001225374a5b6d7d8f948575675a4f463e4c5e6f8090928374675a4f47403b383636342f251708000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000002090e13171a1c1e1f1f1f1e1c1a16120d070000000000000000000000000000000000000000000000000000000004080c0f111212121212100e0b07030000000000000000000000000000000000000f21313e46474747474747495d7085998873604c474747485c7085988874604c474747453c2e1d0b0000000000000a1e30414e57616b758089928f83776b5f534534210d00000000000000000000000000001b3043556575868f7d6e6c707373726e6875868e7d6d5d4c3a2611000000000000000d22374c62778da08b745f4a341f0a0000000000000a1d2f3f4a4f4f4f4f493d2d1b08000004172939464c4a433b35302e313c49596a7b8f9382705e4c3b2918060000000000000000000000000000001b30455a6e83979784705e4d3e30261e18151313151920283341516275899d917c68533e2a15001a2e41525e60606060606060606060606060606060606a809595806a6060606060594a382410000000000000010a121920252a2d30333436363636363634322f2c28231d160e050000000000000000000000001a2e415467798b9887756657493d324557697b8d9685746456493d332b262321201f1b1207000000000000000000000000000000000000000000000000000000000001070c10141618191919181714100c0701000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000070e14191d21242627272727272523201c18120c050000000000000000000000000000000313202b313232323232324155697d928f7b67533f32324155697c91907b67533f323230291e100000000000000011253a4d5f6a747d889294897c7065594e423627160400000000000000000000000000001f34495e738491827060575c5e5e5c59586878898c7b69543f2a14000000000000000d22374c62778da08b745f4a341f0a0000000000000011212d363a3a3a3a362c1f0f000000000b1b283237362f27201b1e2f4052637486979f8e7c6a5947352412000000000000000000000000000000172b4054687b8fa08d7b6b5c4e433a322d2a28282a2e333b45515f6f80929c8975614e392510001f34495d707676767676767676767676767676767676768095958076767676767667533e2914000000000009141e262e34393e4245484a4b4b4b4b4b4b494744413d37312a21180d02000000000000000000001f34495d7185968c7a685848392c384d617487978a77665646382b2017110e0c0b0a060000000000000000000000000000000000000000000000000000000000050e151b2125292c2e2e2e2e2e2c2925211b150d05000000000000000000000000000000000000000000000000000000000000000004070a0d0e0e0f0e0e0c09060200000000000000000000000000000000000000000000000000020b141c22282d3236393b3c3c3c3c3c3a3835312c27201911090000000000000000000000000000030e171c1d1d1d1d1d263a4e62768a8b836e5a4530263a4e61758a8b836f5a45301d1b160c000000000000000013283e53687d88919a8f83766b5f53483c302418090000000000000000000000000000001e33485c6e7c837262524247484847454a5a6a7a847566523e2914000000000000010d22374c62778da08b745f4a341f0a0100000000000003101b2225252524211a0e0100000000000b161e22211b140c192a3b4d5e6f8292998c9888766453412f1e0c00000000000000000000000000001125384c5f72849599897a6c60564d47423f3d3e3f43484f58626f7d8d9e907d6c5946321e0a001f344a5f748b8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c99998c8c8c8c8c8c806a543f2a15000000010f1b27313a42484e53575a5d5f6060606060605e5c5a56514b453d342b1f13040000000000000000001f34495d707982826f5c4b3a2a23384c61727a83806c5a4938281a0e04000000000000000000000000000000000000000000000000000000000000000000040f18212930353a3e404343434343413e3a35302921180f04000000000000000000000000000000000000000000000000000001080e14181c20222323252323211f1b17120c060000000000000000000000000000000000000000000b151f282f363d42474b4e5052525252514f4d4a46413b342d251c120700000000000000000000000000000000000000000b1f33475b6e7474746d5945301e32465a6d7474746d5945301b050000000000000000000012273b5062748794887c7065594d41362a1e130700000000000000000000000000000000192d3f505e6d736554443431333332303c4c5d6d7365574836230f000000091115161622374c62778da08b745f4a341f16161510070000000000070d0f0f0f0f0d06000000000000000003090c0c070314253748596a7c8d9e8c7a8c9482705e4d3c2a180600000000000000000000000000091c30425566778796988a7d7269615b5754525354585c636a75808e9c928272614f3c2a1603001f344a5f748ba0a19c9797979797979797979797979797979f9f979797979795806a543f2a15000001101f2c39444d555d63686c6f727475767676767573716f6b66605951473d3023140400000000000000001a2e41515d666e7465523f2d1c1e3144545f677072614f3d2b1a0a000000000000000000000000000000000000000000000000000000000000000000000a16222b353d444a4f5356585858585856534f4a443d342b2116090000000000000000000000000000000000000000000000040d151c23282d31343738383a38383634302c27211a120a010000000000000000000000000000000005111d28323b434b51575c606365676767676664625f5a554f4841382f251a0e0100000000000000000000000000000000000004182b3e505c5f5f5f5c4f3d2a172b3e4f5c5f5f5f5c4f3d2a1602000000000000000000000c20334557697b82766a5f53473c3024190d010000000000000000000000000000000000102232404f5b5f564737261c1e1e1d1e2e3f4f5c5e5547392a190700000f1b252a2b2b2b374c62778da08b745f4a342b2b2b2a24190c000000000000000000000000000000000000000000000000000f213243546677889991806e80928e7c6b594736241301000000000000000000000000001325374859697786939b90867c75706c6967686a6c71777d88929b8f827364544332200d00001f344a5f7486929e908282828282828282828282828282829696828282828282806a543f2a1500000e1f2e3d4a56606971777c828588898b8c8c8c8c8b898784807a746d645a4e413222120100000000000000112333414a525b5f5748362210152636434b545c5e544432200d000000000000000000000000000000000000000000000000000000000000000000000d1b28343e4851585e64686b6d6e6e6e6d6b68645e5850483e33271a0c0000000000000000000000000000000000000000020d17202830373d42464a4c4e4e4f4e4d4b4945403b352e261d140900000000000000000000000000000816232f3a444e575f656b7074787a7c7c7c7c7b7977736f6a635c544c41372b1f11040000000000000000000000000000000000000f21323f484a4a4a483e31200e20313e484a4a4a483e31200e00000000000000000000000416283a4c5e707064594d41362a1e120600000000000000000000000000000000000000041422313e474a44382919090000001021313e48494338291b0c00000c1d2d393f404040404c62778da08b745f4a404040403f372a1a0900000000000000000000000000000000000000000000000a1b2d3e4f60728395968573627486978976655341301e0d00000000000000000000000000081a2b3b4b5a6875828c9699918a85827d7c7c8082868b929b93897d716355463625140200001d3246596874808d998d82756b6b6b6b6b6b6b6b6b6b6b809595806b6b6b6b6b6b61503c271300081a2c3d4c5b68737d858c9296999694939191919193949799948f8882776c5f5040301e0b000000000000000515232e363f474a44392a19060918252f3840484943362715030000000000000000000000000000000000000000000000000000000000000000000d1c2b3945515b646c73787c808384848483807c78736c645b5045382a1c0d00000000000000000000000000000000000008141f29333c444b51575b5f616363646362605d5a555049423930261c1004000000000000000000000008172634404c57616a727980868a8d9092939393918f8c89847d7770675e54493c2f22130400000000000000000000000000000000000313222d33343434332c21130313212c33343434332c2113020000000000000000000000000b1d2f41515d5d53473b2f24180c010000000000000000000000000000000000000000000413202b333430271a0b000000000313212c333430261a0b000000172a3b4a54565656565662778da08b745f5656565656534838261300000000000000000000000000000000000000000000051728394a5c6d7d909b8a78675668798c9483705f4e3c2a1907000000000000000000000000000d1d2d3c4a57646f79828a90969a96949393949799948f8880766c60534637281808000000172a3b4a57636f7a879392867a6e62565656565656566a809595806a5656565656504333200d00112437495b6a79869099958e8984827d7c7b7b7b7b7c7d82868a9098948a7d6e5e4d3b2815010000000000000005111a232b323431281b0c000008131c242d33342f2518090000000000000000000000000000000000000000000000000000000000000000000b1c2b3a4956636e7780888d9295989999999895928d8880776d6256483a2b1b0a000000000000000000000000000000000c1925313c464f585f666b707376787879787776726f6a645d554d43392e2215080000000000000000000717263544515e6a747d878e959a999693919090919294979b99938c847b71665a4d403122120100000000000000000000000000000000000410191e1f1f1f1e190f0300030f191e1f1f1f1e190f0300000000000000000000000000001223334149494135291e1206000000000000000000000000000000000000000000000000030f181e1f1c1409000000000000030f191e1f1b1409000000001d324659686b6b6b6b6b6b778da08b746b6b6b6b6b6b6656422e1904000000000000000000000000000000000000000001122334455768798b9c8f7d6b5a4a5c6e80918f7d6b594836251301000000000000000000000000000f1e2c3946525c666e757b8286888b8b8b8988848079736c63594e433628190a000000000c1d2d3945515d6975828e988c8074685c50444040546a809595806a54404040403d3325150300182c405467788997978b8279736f6c69676666666667696c70757b85909b8d7c6a5744301c08000000000000000000070f181e1f1c150a00000000000811191e1f1b13080000000000000000000000000000000000000000000000000000000000000000000617293949586774808b949c97928e8c8a898a8b8e92979c948b80736658493928170500000000000000000000000000000e1c2a37434e59636b737a8086898c8e8f8f8f8d8b88847d78716960564b3f3326180900000000000000021425354453616f7c87919a978f8a85827d7b79797b7c7d83878c929a988e84786b5e4f40301f0e0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000615232e34342e24180c000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001f344a5f74828282828282828ea08b82828282828282705b46301b060000000000000000000000000000000008101415151e2f4152637486979382705f4e3e50627386978977655342301f151514110a000000000000000000000e1c28343f49525a61676c707374747474726f6a655f5850463c3125180a0000000000000f1b2834404c5864707c88949286796d61554a3f546a809595806a543f2b2b2b2821150700001d32475b7084969988796d655f5a575452505050505254575b60687280929a88735f4a36210c0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001023354657677686929e938a837c787674737476787c838a939d928576675746342210000000000000000000000000000e1d2c3a4855606c7680888f8f8a8683828080808284878c918d857c72685d5144362718090000000000000d203142536271808d99978c837b75706b686665646667696d71777d87909b96897b6d5e4e3d2b19070000000000000000000000000000000001070d12171a1d1f1f1f1f1f1e1c1916120d080100000000000000000000000000000000000005111a1f1f1a12060000000000000000000000000000000000000000000000000000000000000000070b0b0b0b0b0b0b0b0b0b0b0b09040000000000001f344a5f748b9797979797979ba09997979797979787705b46301b060000000000000000000000000000000e1a24292a2a2b3c4d5e70829298877564534133445667798b958371604e3c2b2a2a2a261d11030000000000000000000b17222d363f464d52575b5e5f5f5f5f5d5a56514b443c332a1f130700000000000000000a16222e3a46525e6a76838f978b8073675b4f546a809595806a543f2a1616140d040000001f344a5f74899f907c695b514a45423f3d3b3b3b3c3e3f42464c5562768ba08d78634e38230e000000020a0e0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0a02000000000410191d1e1e1e1d180f0400000000000000000000071a2d4052647586959a8d82766f6864605f5e5f6064686f76828d9a95857463523f2d1a0600000000000000000000000c1c2c3b4a5866727d89938a827a75706d6b6a6a6a6c6e72777c848c90867a6e615445362717060000000004172a3d4f607082909e9185796f67605b575351504f505254585d636a737d8a979a8c7c6b5a493724110000000000000000000000000000040d141c22272c2f32343434343433312e2b26221c160f0700000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000006121b2021212121212121212121211e180d00000000001f344a5f748b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b87705b46301b0600000000000000000000000000000c1d2c373e3f3f3f48596b7c8e9d8c7a6958463527394a5c6d80918f7d6b5a483f3f3f3f3a2f21100000000000000000000005101a232b32383e4246484a4a4a4a4845413c37302920170d020000000000000000000005101d2935414d5965707d89959185796d61556a809595806a543f2a15000000000000001f34495e73899e8f79655244474a4c4e4f4f5050525354575a5e656e7b8ea08c77624d38230e000008141e2325252525252525252525252525252525252525252525252525252525241e150900000514222c32333333322c2114040000000000000000000f2236495c6f82939b8b7c6f645b544f4b4a484a4b4f545b646f7b8b9b92826f5c4936220e000000000000000000000718293a4a59687684908a80766d66605c585654545457595d62687079838e8c8072635445352413010000000c2034475a6c7d8f9f908273675c534c46413e3c3b3a3b3d3f43484f57606c7888979a8a786653402d1a060000000000000000000000020d17202830363c404447494a4a4a4a484643403b36302a231b120800000000000000000000000000030d1417161108000000000000000000000000000000050809090906030000000000000000000616242f353636363636363636363636332b1e0f000000001f34495d7074747474747474747474747474747474746d5945301b05000000000000000000000000000016293b4953545454556677899a91806e5d534a3c30414e546173859789776654545454544c3f2d1b070000000000000000000000070f171e24292d31333434343433302c28221c150d0400000000000000000000000000000b17232f3b47535f6b778490978a7d72666a809595806a543f2a15000000000000001c31465a6e829495827062595c5f62636464666667686a6c6f7379828c9a9584705d4934200b0006172631383a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3932271808001122323f47484848473f32210f00000000000000000015293e5265798c9f8f7d6c5e51473f3a36343334363a3f47515e6c7d8f9f8c7965513d29150000000000000000000012243647586877879285786d635a524c4743413f3f404244484e545c66707c89908272635242301f0d00000013283b506376899c94837263554a4038322d2927262526282a2e343b444e5b69788a9b9683705d4935210d0000000000000000000007141f2a333c444a5055595c5e5f5f5f5f5d5b5854504b453e362e251b110600000000000000000000051420292c2b241a0d0000000000000000000000070f151a1d1e1e1e1c18120b02000000000000122434424a4b4b4b4b4b4b4b4b4b4b4b473c2d1c0a0000001a2e41515d5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5c4f3d2a160200000000000000000000000000001d314558676a6a6a6a7284959584726a6a675947394d5f696a6a798b9584726a6a6a6a695d4a36220d0000000000000000000000000003090f14181c1e1f1f1f1f1e1b17130e0801000000000000000000000000000000000006121e2a36424e5a66727d8a969084786c809595806a543f2a1500000000000000172b3e51647585928f80736d7174777879797b7b7c7c808284888d949b9185766654412e1a0600112435444d4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4d4436251300192d40515c5e5e5e5b503f2c180000000000000000051a2f44586d82959985725f4e40342b25211f1e1f21252b34404e5f71859895826c58432f1a0600000000000000000a1d304253657686918273665a5048484848484848453a35424c545a5b5b5e6a78879182705f4e3c2a17040000192d42566b80939e8a77655445382d241d181412110f1113151a2027313d4b5b6c7d92a08d7864503b26120000000000000000000a1825313d4650585f656a6e71737474747472706d69655f59524a41382e23180c0000000000000000051423323d4240372b1d0f010000000000000005101a23292e32333333312c261f150b00000000001a2e41525e60606060606060606060605a4b39261100000011233341494a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a483e31200e0000000000000000000000000000001f344a5f74808080808090a18c8080808076604b3c52677c808080809590808080808079644f3a250f00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000c1824303c4854606c788591968a7d809595806a543f2a15000000000000000f223547576674808a918683878a8c8e8f9090919193949799999a96877d736758483724110000192d415361646464646464646464646464646464646464646464646464646464646154422e1a001e33485d6f7373736e5b47321d0000000000000000091e33485d72879c927d695542302218110c0a090a0c111822304255687c929b87725d48331e09000000000000000014273a4d5f7183938372635f5e5e5e5e5e5e5e5e5e584a45535f686f70706b636877888f7d6b594734210d00001d32475c70869a97826e5a4736271a11090300000000000000050c141f2d3d4e61758a9e937d6954402b1600000000000303030a192836434f59636b7379808487898b8b8b8a8886837d79736d665d544b4035291c0c00000000000004142332424f5754483b2d1f120400000000000816222d363e434748484845413a32281d0f020000001f34495d7076767676767676767676766954402b150000000515232e343434343434343434343434343434343434332c2113020000000000000000000000000000001f344a5f748b959595959ea0999595958c76604b3c52677c939595959e9d959595959079644f3a250f00000000000000000000000003070b0e101212121212110f0c080400000000000000000000000000000000000000000000000006131f2b37434f5b6773808b978f869695806a543f2a1500000000000000051829394b5c6b78839099979b98959493919190908f8d8b888487928a8073655544311e0b00001c32475c7079797979797979797979797979797979797979797979797979797979725d48331e001f344a5f74898989735e48331e00000000000000000c21364b60768ba08e78644f3a26130500000000000000051225394e63778da08b76604b36210c00000000000000081c2f4356697c8f877564737473737373737373737367545563707c8487868075686a7b8d897663503d291601001f344a5f74899f937c68533f2b1809000000000000000000000000020f1f32465b70869a97836c57422d180000000b141819191928374654606c7680878e9498979594939394969997938e88827971675d52473a2a190600000000001022324251606c66594b3d30221407000000081726343f4a52585c5e5e5d5a554e453a2d20110000001f344a5f748b8c8c8c8c8c8c8c8c8c826b56402b160000000005111a1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1e190f03000000000000000000000000000000001f344a5f748b8b8b8b8b8b8b8b8b8b8b8b76604b3c52677c8b8b8b8b8b8b8b8b8b8b8b79644f3a250f000000000000000000040c12181c20232627272727272624211d18130d0600000000000000000000000000000000000000000000010d1925313d4955616d7986929ba095806a543f2a1500000000000000061a2e4256687a8a9699918a8683807d7c7b7b7979787775726f748290918473614e3a261100001d32475c7288909090909090909090909090909090909090909090909090909089735e48331e001f344a5f748b9f89735e48331e00000000000000000d22374c62778da18c76604c37210c0000000000000000000c21364b60758ba08d77624c38230d000000000000000f23374b5f72868f7c69667b8b8989898989898989826b566473828f939092938776666f8293806c5945311c08001f344a5f748ba0917b66503b2611000000000000000000000000000003192e43586e849999846e58432e190001111e282d2e2e2e36465564717d89939a928c8783807d7c7d7d8284888c9298958d857a6f64584836220e0000000000182c3f50606f7d76695b4e403225170a000415263544515d666d717373726f6961574b3e2f1e0d00001f344a5f748ba09795959595959595826b56402b160000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001f34495d70747474747474747474747474705e4a3b506474747474747474747474747473624e39240f0000000000000006101820262c3135383b3c3c3c3c3c3b3936322d2721191108000000000000000000000000000000000000000000000814202c3844505c687480898b8b806a543f2a15000000000000000a1f34495d72869897887c75706d6b6867666664646362605d5a63728599917d6954402b1601001d32475c728898a5a4928e91919191919191919191919191919191919191949f89735e48331e001f344a5f748b9f89735e48331e00000000000000000d22374c62778da18c76604b36210b0000000000000000000a1f344a5f748ba08f78634e38230e0000000000000014293d52667a8f86725f667b888888899888888888826b63738392897d797d8a95836f65788c8874604b37220e001f344a5f748a9f927c67523d291504000000000000000000000000000a1c30455a6f849998836d58432e19000e1f2f3b424343434354647383909c91877d77716d6a686768696b6e72777d848c94988d827665513c271100000000001c31465b6e7d8e87796c5e504335271a0c0e21334453626f798287898988847d75695c4d3c2b1805001f344a5f748b9c8780808080808080806b56402b1600000000000000040a0f131617171717171513100c080400000000040c1216171715110b0300000000000000001a2e41515d5f5f5f5f5f5f5f5f5f5f5f5f5d52423547575f5f5f5f5f5f5f5f5f5f5f5f5e5545331f0b0000000000020e19232b333b40464a4d505252525252504e4b46413c352d241b1004000000000000000000000000000000000000000000020e1a26323e4a56626e7474747467533e2914000000000000000d22374c62778ca18d796a615c5856535251504f4f4e4c4b4845566b809597836c57422c1702001c31465a6d7a8894a18d827b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b899f89735e48331e001f344a5f748b9f89735e48331e00000000000000000d22374c62778da08b745f4a35200b0000000000000000000a1f344a5f748ba08f78634e38230e00000000000000192e42576c8294806a566271727272849782727272726772829287786b656b7c8f8b766171868f7965513c2712001e33485d72879b95826c58443323150b03000000000000000000060f1a28394c5f73889d94806a55402c1600182b3d4d5758585858607183929b8c80736a635d58585858585858595d63697077828a95897664503b261100000000001c31465b6e7c8b988a7c6e615345382a1c182b3e506271808c9595919193979287796a5a4835220e001f344a5f748b9c87706a6a6a6a6a6a6a61503d281400000000000711191f24282b2c2c2c2c2c2a2825211d18130e070c1720272b2c2c2a251f160c0100000000000011233341494a4a4a4a4a4a4a4a4a4a4a4a4941342a39444a4a4a4a4a4a4a4a4a4a4a4a494337271603000000000613202b363f474f555a5f6265676767676765635f5b56504941372d221508000000000000000000000000000000000000000000000915212d3945515c5f5f5f5f5849372410000000000000000d22374c62778ca18c7764574e4844413f3e3e3e3f4144484e566170849896826c57422c170200172b3e4f5d697683909d968b7d7166666666666666666666666666666673899f89735e48331e001f344a5f748b9f89735e48331e00000000000001020d22374c62778da08b745f4a341f0a0200000000000000020a1f344a5f748ba08f78634e38230e020100000000001c31465b70868f796550545c5c5c6e8497826b6a6a6b748291877768666160758b8f78636b8094806a54402b15001a2f43586d82959b887461504133271e17120e0b0a0a0a0c0f141a222c384657687b8fa28f7a65513d2813001e32475a6a6e6e6e6e6e7d909d8c7c6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e68646d7783806c5a4735210d0000000000182c3f505f6c7a88958d80706356483a2d1f33475a6d80909488807b7b7d838d98897764513e2915001f344a5f748b9c87705b545454545454504333210d000000010e1a242c33393d4042424242413f3d3a36322d28221c1d29333b4042423f3a32291f120300000000000515232e34343434343434343434343434342e241b2831343434343434343434343434343026190a00000000061524313d48525b63696f7477797c7c7c7c7c7a7874706a645d544a3f3326170800000000000000000000000000000000000000000000030f1b27333f484a4a4a4a453b2c1a08000000000000000b1f34495d7285989483756a635d5956545353535456595d626972808f9e8d7a67533e2a1500000e20313f4c586572808c989c8f8275685c50505050505050505050505e73899f89735e48331e001f344a5f748b9f89735e48331e000000000a1217171722374c62778da08b745f4a341f1717150e0400040e1417171f344a5f748ba08f78634e3823171716120a0000001e33485e73898c76614c414747586e849782808080808692867d7d7d7b756b747d7d7863677c92836c57422c170015293e5265798c9f91806e5f51443a322c2723211f1f1f2124282e353e4956647486989986725f4b37230e001f344a5f748484848484889b99858484848484848484848484848484848484705b5b667173614f3d2a18050000000000102232414e5c6a7785938f827366584b3d2f384d61768a9785756b6766686f7c8d95826c58432e19001f344a5f748b9c87705b463f3f3f3f3f3c33251504000002111f2c3740484d5255575757575654524f4b47413c36302e3b464f555757534e463c30211100000000000005111a1f1f1f1f1f1f1f1f1f1f1f1f1f1f1a120a151c1f1f1f1f1f1f1f1f1f1f1f1f1f1b14090000000004152433424f5a656f777d84898d909193939392908d8985807870675c51443526170600000000000000000000000000000000000000000000000a16222d333434343431291d0e0000000000000000061a2e425668798a9893877d77726e6b6a6868686a6b6e71767c86909c8f80705e4b38241000000313212e3b4754616e7a8894a09387796d6053463b3b3b3b3b3b3b485e73899f89735e48331e001f344a5f748b9f89735e48331e000000101d262c2c2c2c374c62778da08b745f4a342c2c2c292116071521292c2c2c344a5f748a9f8f78634e382c2c2c2c261c0f00001f344a5f748b8b745f4a343243586e8499939393939393939393939390897c6d6868675b667b91846e58432e19000f2236495c6f82929d8d7d6f62574e46403b383634343437393d4249515b677383939e8d7b6956432f1c08001f344a5f748b8f8f8f8f999f908f8f8f8f8f8f8f8f8f8f8f8f8f8f8f8f8f87705b48535f60554432200d000000000000041423303e4c5967748290928476685b4d403b50657a90907b67585250545e70869a86705b46301b001f344a5f748b9c87705b46302a2a2a2a2720150700000010202f3d49535c62676a6c6c6c6c6b6a6764605b56514a443d4c59636a6c6c6862594e3f2e1b0800000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001022334251606c77828b929997928f8d8c8c8c8d8f92969a948c84796e6153443524130100000000000000000000000000000000000000000000000410191e1f1f1f1f1d160c000000000000000000001326394b5c6b79869099928c878482807d7d7d808283878b9199948a7d716252412e1b0800000003101d2a3643505d697683909d978b7d7064574a3d3126262633485e73899f89735e48331e001f344a5f748b9f89735e48331e00000d1e2e3a41424242424c62778da08b745f4a424242423e33251524333d42424242485e73899f8f78634e4242424240392d1d0c001f344a5f748a8b745f4a3a3f43586e8497827c7c7c7c7c7c7c7c7c7c84918b7865535250667b91836e58432e1900071a2d4052637485959c8d80746a615b55504d4b4a4a4a4c4e52575d646d7885929e90806f5e4c39271400001f34495e7278787878809498847878787878787878787878787878787878786f5a45424b4c4437271503000000000000000512202e3b49566471808e9587796b5e504250667b918f7965524b4a4e5a6f849987705b46301b001f344a5f748b9c87705b46301b151515130d03000000091b2d3e4d5b666f777b808283838382807c7874706b655f58505b6a767d83827c756b5d4b37220d00000000000000060c11141719191919181614110e090500000000050d1317191916120c04000000000000000000081b2e405161707d8a95988f88827c797776767677797c82878e97978c8071625342301d0a0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000091b2d3e4d5c68737d868d929798969494949495969897938e8880776d60534434231100000000030f171c25323f4c586572808c989c8f8275685b4e4235281e33485e73899989735e48331e001f344a5f748b9f89735e48331e0000172a3c4c55575757575762778d9f8a745f57575757575143322031425057575757575e73899f8f78635757575757554b3b2916001e33485d72888c77624d4d5454586e8497826b6767676767676767687388947d69543f53687c93826c57422c1700001022354657667685929e91877d756f696562605f5f5f6063676b7178828b969b8e80716151402f1c0a00001b2f4354616363636c839797826b63636363636363636363636363636363635f513f3940413e382e20100000000000000a141d252b2f394654616f7d8b978a7c6e60524e63778d94827065605f626a788a96836d59442f1a001f344a5f748b9c87705b46301b0600000000000000001226394b5c6b78838b9195979898989794918e8a858079736c64697988939797928979644f3a250f000000000008121a2025292c2e2e2e2e2d2b2926231e1a140f090d1821282c2e2e2b2620170e02000000000000001124384b5d6e808f9c91857b736d6864626060606264686c727a84909d9082705f4d3a2713000000000000000000000000000004070a0c0e0e0e0e0e0d0b08040000000000000000000000000000000000000f202f3e4b56606a71777d828688898b8b8b898886837d79736c645a4f43352616050000000413212b313232323b4754616e7a8894a09386796c5f5246392c33485e73848484735e48331e001f344a5f748b9f89735e48331e00001d32465a696c6c6c6c6c6c778d9f89736c6c6c6c6c6c614f3b263a4e606c6c6c6c6c6c73899f8f786c6c6c6c6c6c685945311c001c31455a6f85907a66515e696a6a6e8497826b6a6a6a6a6a6a6a6a6b7589937d695443586c82937d69543f2a1500000517283949586674828c979a918a847d79777574747476787b80868d959d94897d706153433322110000001e33485c6d70707070829797827070707070707070707070707070707070706b59454b5557524b3e2d1b08000000010f1b2731393f44474747515f6d7a88968d7d7063555d7083958f82797674777d88978c7966533f2b16001f344a5f748b9c87705b46301b060000000000000000192e4255687a8a9699918b8887868687888b8d9195948e888077738798958b898d86725e4b36220d000000020f1b252d353a3e414343434342403e3b37332e29231d1e2b343c414343403b342a201304000000000000172c4054677a8d9e8f8072675f5853504d4b4b4b4d4f53585e6772808f9f8f7c6956422e1a0500000000000000000001080e14181c1f22232323232322201d19140f090200000000000000000000000000000211202d39444d565d63686c7072737474747372706d69655f5850473d32251708000000001022323e46474747453d43505d697683909d978a7d7063574a3d3146596a6e6e6e6a5946311c001f344a5f748b9f89735e48331e00001f344a5f74838383838383838e9f8a8383838383837d68533e293c52677c8383838383838a9f8f83838383838383735e48331e00182d41566b8094826c58667b8080808497828080808080808080808087938b7864504b5f72878e7964503b26110000000a1b2b3a4856636f79848d949b9893908d8b8b898b8c8e91959a99928a82766b5f5243352516050000001f344a5f748787878787979988878787878787878787878787878787878787725c4b5a686b675c4a37230e000000101f2d39444d54595c5c5c5a555c6a7785938f8273665866768692958f8b8b8c92968c7d6e5c4a372410001f344a5f748b9c87705b46301b0600000000000000001e33485d71859898887c7672706f6f707275787b8084898f948c838f99867773787d6a57432f1b0700000312202d3841494f535658585858575653504c48433e37312f3c4750565858554f473d3122120000000000001c31465a6f839796837161554c443f3b38363636383a3e434b54617082959986715d48331e0900000000000000020c141c22282d31343738383838383735322e29241d160e0400000000000000000000000000020f1b27313a42494f54585b5c5e5f5f5f5e5d5b5854504b443d342b2014070000000000192d3f505b5c5c5c5a4e3d3f4c586572808c989b8f8274685b4e413c4c56585858564c3c2a16001f344a5f748b9f89735e48331e00001f344a5f748b9898989898989c9f9a9898989898947d68533e293c52677c9398989898989a9f9c98989898989889735e48331e0013283c5065798d887561667b919393939393939393939393939393938f897c6d5b4955677a8e87725e4a36210d000000000d1c2a3845525d67707880868c909497989999999895938f8a857d766d64594e4134251707000000001f344a5f748b8c8c8c8c91a3958c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c88725c5b6978827a65503b261100000d1e2e3d4a5660686e7172726f6a635a67748390918476685b677480888d90918f8a83796d5f503f2d1a07001f344a5f748b9c87705b46301b0600000000000000001f344a5f748ba0907b6a615d5b5a5a5b5d6063666b6f747980868d99927d695e656c614f3b27140000001021303e4a545d63686b6e6e6e6e6c6b6865615d57524c453e4d5a646b6e6d69635a4f402f1c0800000000001f34495e73899e907a66534438302a262321212123252a2f37435265798ea08b76604b36210c0000000000000b151f2830373d4246494c4e4e4e4e4e4c4a47423e38312a21170c01000000000000000000000000000a141e272e353a3f434647484a4a4a48484643403b36302921180e030000000000001e33485c6e7272726c5a45313b4754616e7a88949f9286796c5f52453a42434343423a2e1e0d001f344a5f748b9889735e48331e00001f344a5f74898989898989898989898989898989897d68533e293c52677c89898989898989898989898989898989735e48331e000d2136495d7085917d6c657a7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7a756b5e4f4f607285917d6a57432f1b0700000000000c1a28343f4a545d646b71777b7d828384848483807d79757069625a51473c3023160700000000001f34495d707676767676889b938076767676767676767676767676767676766e5e6b7988917b66503b26110007192b3c4c5b68737c83878888847d766c5f6472808e9487786b5d626c7378797b79756f665c4f4132211000001f344a5f748b9c87705b46301b0600000000000000001f344a5f748a9f907b6a605b5755545454545657595b5f656b727d94907965505357514332200c00000a1c2e3f4e5c6770787c828384848483807d7976716c666059515c6b778084837d766c5e4b37230e00000000001f344a5f748ba08f78634e392b231d191615131416181c222b374c62778ca18d77624c37220d0000000003101c28323b444b51575b5e616363636363615f5c57524c453d342a1e120500000000000000000000000000010b131a20252a2d3032333434343333302e2b27221c150d0500000000000000001f344a5f74888888725c47322a3643505d697683909d978a7d7063564a3d302e2e2d271d1000001f344a5f74838383735e48331e00001e33485d6f737373737373737373737373737373737365513d283b506472737373737373737373737373737373736e5b47321d00061a2e4154677a8c8a786766676767676767676767676767676767676560594e4d5d6d7d8f8774614e3b2814000000000000000a16222d37414950575d6266696b6d6e6e6e6c6b6865605b554e473e342a1f13060000000000001a2e41525e606060606b7d909e8d7d6e62606060606060606060606060606065707c8a98917b66503b261100102336485a6a798690979593949793897d6f5e616f7d8b97897b6e60585e63656664615b534a3e3123130300001f344a5f748b9c87705b46301b0600000000000000001d32475b6f839498897c756f6c6a6a696a6a6b6c6e707376787c82949079644f3f423e3325150300001326394b5d6c79858d9296989999999895938f8b86827a746d656a7a89949998938a79644f3a250f00000000001e33485d72889c917c6957493f37322e2b2a292a2b2d31373e4855677a8f9f8a74604b36200b0000000413212e3a454e575f656b70737678787878787674706c67605950473c30231405000000000000000000000000000000060c1115191b1d1e1f1f1f1e1e1b1916120d0701000000000000000000001f344a5f748b9d88725c47321d25323f4c586572808c989b8e8274675a4e4134271a130b0000001d32465a696c6c6c685945311c0000192d40515c5e5e5e5e5e5e5e5e5e5e5e5e607171665e56483a313c47565d6772705e5e5e5e5e5e5e5e5e5e5e5e5e5b503f2c1800001225384a5d6e809186756759525252525252525252525252525252504c45505d6b7a8b8c7a695744311e0b000000000000000005101b242d353c434b5152545658585858575653524f48413a332b21180d0100000000000000122434424a4b4b4b4e607183929c8d80746b635d585553525354575b60676f77838e9095917b66503b261100172b3f53667789978e85807d7d838a978d7c6a575f6d7a88968c7d7062554e50504f4c4740372d2113040000001f344a5f748b9c87705b46301b060000000000000000182c4053657686929a9089858280807d808082838487888b8f928f9a9079644f3a2c292116070000001a2e4256697a8b97988f8a878684848687898c8f93958f898279748899948a888b86725e4a36220d00000000001b3044596d8294998674665b524c4743403f3e3f4042464b525a6573859796836f5b47321d080000021222313f4b57616b73798086898c8d8f8f8f8e8c8986827b746c63594d413223140400000000000000000000000000000000000000000000000000000000000000000000000000000000000000001f344a5f748b9d88725c47322b2b2b2e3b4754616e7a88949f9286786b5f5245382b1f12040000172a3c4c55575757554b3b291600001122323f474848484848484848484848576c7d83786d62574c434e59636e79857c6a564848484848484848484848473f32210f0000081b2d3f516273839385776a5e544a423c3c3c3c3c3c3c3c3c3c3e454d57626e7b8a8f7d6e5d4b3a281502000000000000000000000811223545535f6667655e5344434a58626767645b4e3e2d1a0e050000000000000000000616242f353636364354647383909c92888077726d6a6867686a6c70757b838b958b7d8f917b66503b2611001c31465a6e83958d7d716a68696e78889987735e4f5c6a7786938f827365584a3c3a37322c241a0f03000000001f344a5f748b9c87705b46301b0600000000000000001023364858677480888e9397979594949595979694908d89848080959079644f3a25150e04000000001e33485d71869897877b75716f6e6e6f717377797d83888d938d849098867672777d6a56422e1b070000000000162a3e51647789999385786e66605c585654535455575b5f656d7783929b8a796653402c180400000e1f30404f5d69747d878f959a9693919090909193969a96908980766b5f51423222100000000000000000000000000003080d10141617171717171614110d090400000000000000000000000000001f344a5f748b9d88725c474040404040404043505d697683909d968a7c706356493c302213030016293b4953545454534939281500000514222c323333333333333333333342576a79878b80756a5f55606b76828c867869554133333333333333333333322c211404000000102233445565748391887c70675e56504b484544434446494d5258606a74808c8d807060503f2e1c0a000000000000000000000000172b3f5263717a7c7a706251465868757c7c776c5c4a37230e000000000000000000000006121b2021212536465564727d8a949b938c8783807d7c7d8082868a8f968d8378788f917b66503b2611001f34495e738998836f5f5553545b6a7d928d77634d4c5a67758390918475685a4d3f31241811070000000000001f344a5f748b9c87705b46301b06000000000000000006192b3d4d57626c73797d8284868787868683827d7b77736f6f84998d77634d38230e0000000000001f344a5f748ba08f7a69605c5a58595a5c5f6265696e73787d858c98927c685d646b604e3b27130000000000000e223547596a7a8996968b827a75706d6b6a68696a6c707479828a95978b7c6c5b4a372410000007192c3d4e5e6d7a87929b928b86827d7b7979797b7d82868b929b93897c6f6050402e1b08000000000000000000010911171d2125282b2c2c2c2c2c2b2926221d18120b0300000000000000000000001f344a5f748b9d88725c5656565656565656565656586572808c989b8e8273675a4d4031200e001d314558676a6a6a665744301b0000000410191d1e1e1e1e1e1e1e1e1e283b4d5b68768491877c7167727d89908274675a4c3a261e1e1e1e1e1e1e1e1e1d180f04000000000416273747566572808c8e847a726a65605d5a59585a5b5e61666d747c8792897c6f615142322110000000000000000000000000001c31465a6f828f938e806d594d62758791928a7966513d281300000000000000000000000000070b0b0b1828374654606c7680888f959a9795949393949796908a82797066788f917b66503b2611001f344a5f748a97826c574b484a52667b918f78634e3c49576472808e9486786b5d4f423426190a0000000000001f344a5f748b9c87705b46301b0600000000000000000a1e33475a6a6c666065696c6e6f70706f6f6e6b6966635f68798c9b87725e4935200b0000000000001f344a5f74899e907c6b625c58565655565657585b5c5f646a707d949079655051565042321f0b00000000000005182a3c4d5c6b78848f97968f8a868380807d7d808386898f95989085796c5e4e3d2c1a0700000f2336495b6c7c8b9894898077716c686664646466686c70767d88939a8e7d6e5d4b38251200000000000000000b141d252b31363a3d404242424242403e3b37322c261e160d020000000000000000001f344a5f748b9d88726b6b6b6b6b6b6b6b6b6b6b6b6b6b6b6e7a88929a9285786b5e4f3d2a16001f344a5f74808080735e48331e0000000000000000000000000000000b1e2f3d4b586572808e8f837a85908d80716457493c2e1d0a0000000000000000000000000000000000091929384755626e7a858f8e86807975726f6e6e6f7073767b8288908c82766b5e514233241404000000000000000000000000001d32475c72879aa09986705b4f64798f9e9f937d68533e291300000000000000000000000000000000000a192836434f5a646d747a8085888a8b8b8a8885827b756e665d647983837b66503b2611001e33485d71879a877467605e5f647082958b76614c3739475462707d8b97897b6d6052443728180600000000001f344a5f748b9c87705b46301b0600000000000000001024394d6176807a756f6a66625f5c5b5a5a58585b5f646d788797917d6a57432f1b060000000000001d32465b6f8294998a7d76706e6b6b6a6b6b6c6e70727477797d82949079644f3e403c32241402000000000000000d1e2f3e4d5a67727b848b909599989594949495979a96918b857c72685c4e4030200f000000162b3e5266788a9b9283766b635c5753514f4f4f5153575c626a7582919d8d7a6754412d1904000000000006121d27303940464b4f535557575757575653504c47413a32291f140800000000000000001f344a5f748b9d88828282828282828282828282828282828282807d8fa396897c6d59442f1a001f344a5f748b9589735e48331e00000000000000000000000000000000111f2d3a485562707d8b968f96897b6e615346392c1e10000000000000000000000000000000000000000b1a293744515d67727b838a908f8b888684848486888c908f8882786f64594d403224150600000000000000000000000000001a2f44586b7c878b877b6a564b5f718289898475634f3b26110000000000000000000000000000000000000a1825323d47505960666b6f7274747474726f6c67615a524b5e6b6c6c6c5f4d38240f001a2e43576b7d9093857a75737478828f94836f5b4733293644515f6d7a89968c7d7062554636231000000000001f344a5f748b9c87705b46301b060000000000000000152a3f53677c908f8984807b7774716f6e6c6c6e707378808a96938472614e3b281400000000000000172b3f52647585919a928b86838282808282838486888a8c90928d999079644f3a2b2820150600000000000000000011202f3c49545f6870767b808487898b8b8b898885827c77706960564a3e302212020000001b3045596e829598857365594f48423f3c3a3a3a3c3e42474e58647284969885705c47331e09000000000a1724303a444c545a6064686a6c6c6c6c6c6b6865605b554e463c32261a0c000000000000001f344a5f748ba098979797979797979797979797979797979797959398a0a09a866f5a442f1a001f344a5f748b9f89735e48331e00000000000000000000000000000000010f1c2a3744525f6c79888b86786b5e504336281b0e0000000000000000000000000000000000000000000b1927333f4b555f676f767c828588898b8b8b8987848079746d645c52473c2f22140600000000000000000000000000000015283b4e5e6a7274726a5d4c4254636e73747066574634200c000000000000000000000000000000000000000814202a343d454c52575a5d5f5f5f5f5d5a57524d463f404f575757574f41301d090014283b4e61728290978f8b89898d959386766553402c192634414f5d6a7886938f807264533f2a1501000000001f344a5f748b9c87705b46301b060000000000000000172c42576c82898f959994908d8987868483838486898d94998f8374655544311f0c00000000000000102335475766737d868d92959897969597979795928f8c88837d80959079644f3a25130d030000000000000000000002111e2b37424c545b62676b6f717374747473726f6c68625c554d43382d201204000000001e33485e73889d907c6856473c332e2a2725252527292d333b4654667a8f9f8b75604b36210c0000000a192835414d5760686e74797c808283838383807d7975706961594f44372a1b0c0000000000001f344a5f748b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b866f5a442f1a001f344a5f748b9f89735e48331e0000000000000000000000000000000000000c192634414e5c69747474675a4d403225180b00000000000000000000000000000000000000000000000916222d38424c545b62676c6f727374747473716e6a65605951493f352a1e1204000000000000000000000000000000000c1f30404d575d5f5d574c3f3645515a5e5f5c5448392917040000000000000000000000000000000000000000020d18212a31383d4245484a4a4a4a4845423e38322b313c414242423d32231301000c1f32445463727d878d9193918f8980756758483623101623313f4c5a677583918f806c57422c1702000000001f344a5f748b9c87705b46301b060101000000000000152a3f53646e757a8085898d90939698999898999895928c857c71655647372614020000000000000006182b3e4e58616a72787c8083848686848482807c7976726d7085998c77624d38230e00000000000000000000000000010e1a252f3840474d52565a5c5e5f5f5f5e5c5a57534e48413930261b0f0200000000001f344a5f748ba08f78634e392920191512110f111214191f28374c61768ca18d77624c37220d00000718283746535f6a737c83898e9295979898989795938f8a847d756c615548392a1a0a00000000001f34495d70747474747474747474747474747474747474747474747474747474746b58432e19001f344a5f748b9f89735e48331e00000000000000000000000000000000000000091623303e4b585f5f5f574a3c2f2215070000000000000000000000000000000000000000000000000004101b262f3840474d52575a5d5f5f5f5f5e5c5955514b453e352c22180c000000000000000000000000000000000000011222303b43484a48433a2f27343e46494a4741372a1b0b0000000000000000000000000000000000000000000000050e161d23282d30333434343433302d29241e171f282c2c2c2c292014050000021426364554606a72787b7c7c79746d6357493a2a19060513212e3c4a57657280807061513e291500000000001f344a5f748b9c87705b46301b161616140e0500000010233646535a60666b7074787b7d82838484868483807c7771695f54473829190800000000000000000a1e33475b6b6d676163686b6c6e6f6f6e6e6c6a6865615d697a8c9a86725d4934200b00000000000000000000000000000008131c252c33383d414547484a4a4a494745423e39332d261d1409000000000000001f34495e73889d907b6754453b332e2a2726252627292d333a445365798fa08b75604b36210c0001132536465563707c87909797928d8a8887878788898d91969991897d7266574838271603000000001a2e41515d5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5b4e3c2915001f344a5f748b9f89735e48331e00000000000000000000000000000000000000000513202d3b454a4a4a44392c1e11040000000000000000000000000000000000000000000000000000000009131c242c33393e4245484a4a4a4a484744403c37312a22191005000000000000000000000000000000000000000004121e282f3334332f271d16222b313434322d241a0c000000000000000000000000000000000000000000000000000002090f14181b1e1f1f1f1f1e1b18140f09030d1417171717140d030000000008182736434e575e636667676460595046392b1c0c000003101e2c39475462707061524333210e00000000001f344a5f748b9c87705b46302b2b2b2b292116080000061828363f464c51565b5f6366686b6c6e6e6f6e6c6b67635d554c4236291a0b0000000000000000001025394d6276827b76706c6864605d5b5a58585a5c60656e798898907d6a57432f1b0600000000000000000000000000000000000911181e24282c3032333434343432302d29251f19120a0100000000000000001c31455a6e839697847263574f48433f3c3b3a3b3c3f42474e57627082959885705c48331e09000b1e3043546473828f99938a837c7774727070707274777c8289929c91847566564533200d0000000011233341494a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a473e301f0d001f344a5f748b9f89735e48331e000000000000000000000000000000000000000000020f1d293134343431281b0e01000000000000000000000000000000000000000000000000000000000000000811181e24292d30333434343433322f2c27221c160e060000000000000000000000000000000000000000000000010b141b1e1f1e1a140b050f171c1f1f1d1911080000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000091825313b434a4e5152524f4b453d34281b0d00000000000e1b293744525d5d52433425160400000000001f344a5f748b9c87705b4640404040403d3426160500000a18232b31404f585e635d5154565758585a5b5f605f5a52473a3025180b00000000000000000000152a3f53687c91908b86827c787572706f6e6e6f727579828b97928372604e3b27140000000000000000000000000000000000000000040a0f14171b1d1e1f1f1f1f1d1b1814100b050000000000000000000000172b3f5366798b9c9082756a635c585452504f505153575c626a73808f9d8d7b6855412d19050013263a4d607183929b8d80766e68635f5d5b5b5b5c5f63676d75808c99948574624f3c2915010000000515232e3434343434343434343434343434343434343434343434343434343434332b201201001f344a5f748b9f89735e48331e00000000000000000000000000000000000000000000000c161d1f1f1f1c150a0000000000000000000000000000000000000000000000000000000000000000000000040a1014181b1e1f1f1f1f1e1c1a17130e080100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000040b1014181a1a1a1a18140f080000000000000000000000000000000000000008141e282f35393c3c3c3a37312a21160a000000000000000b19263441494941342516070000000000001f344a5f748b9c87705b565656565656514434210e000000061021364b5e6c72786b5642404a545e676f7476746e6458493928170400000000000000000000172c42576c82888e939896928e8b888786848486878a8f95988e8273645443311e0b00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001024374a5c6d7d8c9992887d77716c696766646566686c70767d86919b8e806f5d4c3925120000192d4256697d909e8c7c6e635a534e4a48464646474a4e5359626d7b8b9c92806c5844301b070000000005111a1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1e180f0200001f344a5f748b9f89735e48331e000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005111a1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1e190f0300000000000000000000000000000000000000000000000000000000000000000610181f25292d2f2f2f2f2d29231b1206000000000000000000000000000000000000020b141b212427272725221d160e040000000000000000000816232e34342e241607000000000000001f344a5f748b9c87706b6b6b6b6b6b6b62513d2914000000000e23384e63788786705c4b525c67717a83898c89827667574634210e00000000000000000000152a3e52636d73797d84888c8f929497989899989794908b847a7064554636251401000000000000000000000000000000000004090e12151719191919191715120e0a0500000000000000000000000000000000071a2c3e4f5f6e7b88929b928b86827d7c7b79797b7d82868b929a93897c6f6151402e1c0900001d32475c70869994806e5e51473f3935333130313235393e46505d6d80929c88735e49341f0a0000000000000000000000000000000000000000000000000000000000000000000000000000000000001f344a5f748b9f89735e48331e0000000000000000000000000000000000000002080d1215181a1a1a1a1a1815120d080200000000000000000000000000000000000000000000000000000000000000040a1014181b1d1f1f1f1f1e1c1a17130e080200000000000000000000000000000515232e3434343434343434343434343434343434332c2113020000000000000000000000000000000000000000000000000000000000000b19232c33393e4244444444423e372e2418090000000000000000000000000000000000000000070c0f121212100d080200000000000000000000000005111a1f1f1a120600000000000000001f344a5f748b9c8782828282828282826b56402b16000000000d21364b6074898c796860656f79848e958e8b8d94867563503d2a16020000000000000000000f23354551595f656a6f7377797c808283838483827d7b7670675e534637281908000000000000000000000000000000020a12181e23272a2c2e2e2e2e2e2c2a27231f19130c0400000000000000000000000000000f213141505d6a7580888f94999794919090909193969a958f8880766b5f51423322110000001f344a5f74899f8f79655140342b25201e1c1b1c1d20242a333f4f63778da18c76614c37220c000000000000000000000003080d10141617171717171614110d090400000000000000000000000000001f344a5f748b9f89735e48331e0000000000000000000000000000000000070f161d22272a2d2f2f2f2f2f2d2a26221c160f060000000000000000000000000000000000000000000000000000000911181e24292d30323434343433322f2c27231d160e0600000000000000000000000011233341494a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a483e31200e0000000000000000000000000000000000000000000000000000000000081a293640474e5357595a5a5a57524b41362718080000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001f344a5f748ba09897979797979797826b56402b1600000000081d3146596d829387797679828c968c827874798693806d5945311c08000000000000000000061727353e454a50555a5e6265676a6b6c6c6e6c6b6966625b544b413528190a0000000000000000000000000000020c151e262d32383c3f414343434343423f3c38332e2720170e03000000000000000000000000031323323f4c58626b73798084888b8d8f8f8f8d8b8986807a746c63594e41332415040000001f344a5f748a9f8f78644f3c3028221e1b1a191a1b1e22272f3b4d62778da18c77624c37220d0000000000000000010911171d2125282b2c2c2c2c2c2b2926221d18120b0300000000000000000000001f344a5f748b9f89735e48331e00000000000000000000000000000005101a232a31373b3f424444444444423f3b37312a221a1005000000000000000000000000000000000000000000000009131c252c33393e424547494a4a4a484744403c37312a221a1006000000000000000000001a2e41515d5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5c4f3d2a16020000000000000000000000000000000000000000000000000000000012253747535b62686c6e6f6f6f6c665e534536251401000000000000000000000000000408090909090909090909080500070a0a0a0a060000060a0e10121212100d0802000000000000000000001f344a5f748b8b8b8b8b8b8b8b8b8b826b56402b160000000002162a3e51637586938e8c8e958d83796e655f67788c88745f4a36210c000000000000000000000917222a30363b4045494e5252545657575857565452514d44382e24170a000000000000000000000000000008131e28323a41474c51545758585858585754514d48423b332a2116090000000000000000000000000414222f3b464f585f656b6f737577787878777673706b66605950473c30231506000000001e33485d71869b927d6b5a4d443c3733302f2e2f3033373c434c596a7c919d89745f4a35200b000000000000000b141d252b31363a3d404242424242403e3b37322c261e160d020000000000000000001f344a5f748b9f89735e48331e00000000000000000000000000000b17232d363e454b505457595a5a5a595754504b453e362d22170a000000000000000000000000000000000000000005111c26303840474d52575a5c5e5f5f5f5e5c5955514b453e362d23190d0100000000000000001f34495d70747474747474747474747474747474746d5945301b0500000000000000000000000000000000000000000000000000000000192d4255656f777c8284868684827a70635443301d0900000000000000000000000410191d1e1e1e1e1e1e1e1e1e1d19131b1f1f1f1f1b12141a1f232627272725211d160e0500000000000000001f34495d70747474747474747474747468543f2a1500000000000e21344657677580878988827970665c514a5c70858477624c37220d0000000000000000000000050f161c222b3c4c59636767635a4d4243515d65676660564737251200000000000000000000000000000b1925313b454e555b6165696b6e6e6e6e6e6c6966625d564f473d33271b0d00000000000000000000000004111d28333c444b51565a5e696763636362605e5b57524c453d342a1e120500000000001a2e43576b80929b89786b6057514c484644434446484b50575f6a77889994826d5945311c07000000000006121d27303940464b4f535557575757575653504c47413a32291f140800000000000000001f344a5f748b8b89735e48331e000000000000000000000000000e1c2935404952596065696c6e6f6f6f6e6c6965605952493f34281b0d0000000000000000000000000000000000000a16222e39434c545b62676c6f727374747473716e6a656059514940362b1f1205000000000000001f344a5f748b8b8b8b8b8b8b8b8b8b8b8b8b8b8b87705b46301b06030200000000000000000000000000000000000000000000000000001b30465b70838b928f8c8b898b8f8e8272604c38240f000000000000000000000514222c32333333333333333333322d252f343434342f25292e34383b3c3c3c3a36312a21170c000000000000001a2e41515d5f5f5f5f5f5f5f5f5f5f5f594a3925110000000000051728394957636d7273726d665d53493e42566a746f695b4834200b00000000000000000000000000010c2034475a6a767c7c766b5a494e606f797c7b736554412e1a050000000000000000000000000b1a2936434e58616970757a7d828384848484827d7b76716a635a5045382b1c0d000000000000000000000000000b16202830373c445668797a71675d544b4946423d37312921170c0100000000000014283c4f6274859597897c736b65615d5b5a58595b5d60656a727c889696877664513e2a1602000000000a1724303a444c545a6064686a6c6c6c6c6c6b6865605b554e463c32261a0c000000000000001f34495d707474746f5c47321d0000000000000000000000000e1d2c3a47525c666d74797d828486868684827d79746d655c5146392b1d0e000000000000000000000000000000000c1a2734404b565f6870767c828588898b8b8b898784807a746d655c52483c302315070000000000001f344a5f748b9494949494949f9e94949494949487705b46301b19191715120e0903000000000000000000000000000000000000000000192e4256697c868079767473767a88907b66513c2712000000000000000000001122323f4748484848484848484847403643494a4a4942353d43494d505252514f4b453e34291c0e00000000000011233341494a4a4a4a4a4a4a4a4a4a4a463b2d1b090000000000000b1b2b394650585d5e5d59524a40372c3a4c5a5f5b554c3d2c1905000000000000000000000000000010253a4f637788929289786450566a7d8d939084715d48331e090000000000000000000000081929384754606b757d858a8f939798999999989794908b867d766d6256493a2b1b0a00000000000000000000000000030d151c22344a5f73868e847a70665d534940362c22180d0400000000000000000c20324556677685929a908780797672706f6e6e7072757980868f9993867868584734210e000000000a192835414d5760686e74797c808283838383807d7975706961594f44372a1b0c0000000000001a2e41515d5f5f5f5d513f2c1900000000000000000000000c1c2c3b4a58646f7982898f9397999b9b9b9997938f8982796f6357493b2c1c0b00000000000000000000000000000c1b2a3845525d68727b848b918f8b888684848686888c908f8982786f655a4e413325160700000000001f344a5f747d7d7d7d7d7d829795807d7d7d7d7d7d705b46302e2e2e2c2a27231d1710080000000000000000000000000000000000000013263a4d6072726a6e6e6c6b6c7284927c67523c271200000000000000000000192d40515c5e5e5e5e5e5e5e5e5e5c5144545e5f5f5e534951575d616567676664605951473a2c1d0d00000000000515232e343434343434343434343434322a1d0f00000000000000000d1b28343d44484848443e362d241d2e3c464a46413a2e1f0f00000000000000000000000000000011263b50667b909e9e917c6752586d83979f9c8a745f4a341f0a0000000000000000000002142637475664727d88919995908c888786868687888c90959a928a807367584939281604000000000000000000000000000001091e33475b6c7884908d837970665c53493f35291a0900000000000000000315273949586773808a929a948f8b888685848486888a8f949a938b8275685a4b3a2917050000000718283746535f6a737c83898e9295979898989795938f8a847d756c615548392a1a0a000000000011233341494a4a4a4840322210000000000000000000000618293a4a596875828c959d96908d8a8988898a8d90969d958c827567594a3a2917060000000000000000000000000a1a2a394856636f7a868f8d8680797572706f6e6f7073767b8288908c82776b5f514334251505000000001c3145586668686868686b829795806a686868686864544142434343423f3c37322b241b1107000000000000000000000000000000020b131d3144545f5e70848383828286908876634f3a2611030000000000000000001e33485d6f7373737373737373736f5e4c6172747471605d656c7276797c7c7b79746d64584a3b2a1906000000000005111a1f1f1f1f1f1f1f1f1f1f1f1f1d170c000000000000000000000b1721292f333333302a231a11101e2a3234312c261d10010000000000000000000000000000000f24384d60738289898374614e546779868a887d6e5b46321d08000000000000000000000b1e314355657483909b9289827b7673706f6f6f7073767a8288919c92857667574533200d00000000000000000000000000000004182b3e4e5a66727d8a958d83796f655c52473826130000000000000000000a1b2b3a4956626d767d868b909497999a9999999794918c8680776e63574a3c2d1c0c00000001132536465563707c87909797928d8a8887878788898d91969991897d7266574838271603000000000515232e34343434332d221404000000000000000000001123364758687787939d9289827b777473727374777b8289929d93867767584735231100000000000000000000000517283848576673828d8d8379716a65605d5b5a585a5b5e61666c737c8691897d6f6152433322110000000015283a485253535353566b829795806a5453535353505356575858585754514c463f372e24190d000000000000000000000000000b151e272e353b434a576a7d928888898782776a594734271f170d03000000000000001f344a5f7489898989898989898976604e63788b8b7766707880878c8f9193918e89827668594836231000000000000000000000000000000000000000000000000000000000000000000000040e151a1e1e1e1b160f0700000d171d1f1d18120a0000000000000000000000000000000000091d314455646f73746f6556454a5b687174736c60503e2b17030000000000000000000013273b4e607284939a8c80756d66615e5b5a5a5a5b5e61666c747d8a9895867563503d2915010000000000000000000000000000000f20303d4954606c778490968c82786f6455422e1a050000000000000000000d1c2b3845505a636a71767b7d82848686868483807b77726b645b5146392c1e0f000000000b1e3043546473828f99938a837c7774727070707274777c8289929c91847566564533200d000000000005111a1f1f1f1f1e19110500000000000000000000071a2d405365768796998c80756d67625f5e5c5e5f62676d75808c999686756452402d1a0700000000000000000000112334455666758492877b70665d56504b484644434446494d5258606973808b8e80706151402f1d0b0000000b1c2b363d3e3e3e40566b829795806a5452585d6165686b6c6e6e6d6c6965605a534a41362b1e100100000000000000000005111d27313a42494f54595c63778b837373726d655a4f49433b332a20150a0000000000001f344a5f748b9595959595989f8c76604e63788f8d7779838c948f8a878686888c9593877765533f2b17000000000000000206090b0b0b09060100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000114273746525b5f5f5b5347383d4b565d5f5e594f4232210f0000000000000000000000192d42566a7d909d8b7b6d6259524d494644444446494c5258616c7a8a9b92806c5844301b0700000000000000000000000000000002121f2b37434e5a66727d8a95958c82715c47321d07000000000000000000000d1a27333d474f565e6266696c6e6f6f6f6e6c6a66625f5750483e34281c0e000000000013263a4d607183929b8d80766e68635f5d5b5b5b5c5f63676d75808c99948574624f3c291501000000000000000000000000000000000000000000000000000f23374a5d7083949a8a7a6e6359534d4a4847484a4d5359636e7a8a9a93826f5d4a36230f000000000000000000091c2e4052637485938476695d534a484e53565858585756534e49444d56616d7a898f806f5e4c3b2816030000000d19232829292b40566b829795806a60666c72767a7d8283848483827d79756e675d53483c2e1f1000000000000000000816232f3a444d565d64696d717476838b777573706d69645d574f463d32281c1004000000001f344a5f748080808080808ba08c76604e63788f8d808b8f878079757270707278839395836f5a46311c00000000060c12171b1e2021211e1b150e05000000000000000000000000000000000000000004070a0c0e0e0e0e0e0d0b080400000000000000000000000000000000000000000000091928353f464a4a464036292d3942484a49453d3223140400000000000000000000001d32475c70869a94806d5d4f453e3834312f2f2f3134383d454f5c6c7d929c88735e4934200a00000000000000000000000000000000020e1a25313d4854606c77848f8e7c6a57442f1b0600000000000000000000000916212a3a4c5e7072675c57585a5a5a58575b667072614f3d2b21170b000000000000192d4256697d909e8c7c6e635a534e4a48464646474a4e5359626d7b8b9c92806c5844301b07000000040c1014161510080000000000000000000000000000152a3e5266798da08e7c6b5d50463e393533323335393e46505d6b7c8e9f8d7966523e29150100000000000000001326394b5d6f8292857466584c4c555d63686b6d6e6e6c6b68635d564e464f5c6a798a8d7c6a584633200d00000000070e1313162b40566b829795806c747a82878c9093969899999897938f8a837a7066594c3d2e1e0d00000000000008172633404c57616a71787d8387898c8c948c8b8986837d78726a62594f453a2e2215070000001d314558676a6a6a6a6a748ba08c76604e63788f9490857b726b65605c5b5b5d65778d9e89735e49341f000005111921272c3033363636332f2921180d00000000000000000000000000000001080e14181c1f22232323232322201d19140f0902000000000000000000000000000000000000000a17232b323434322c23181b262e333434302a2014050000000000000000000000001f344a5f74899f8f7964503f322a241f1c1a1a1a1c1f2329323e4e63778da18c76614c37220d00000000000000000000000000000000000008131f2b37434e5a66717d83705e4c3a28150100000000000000000000000003162b4055697b85796f64594e444c57626d78837d6c58442f1905000000000000001d32475c70869994806e5e51473f3935333130313235393e46505d6d80929c88735e49341f0a00000a162025282b2a241a0d000000000000000000000000051b2f44586d82969885715e4e3f332a24201e1d1e20242a333f4d5e70849895826d58442f1b0600000000000000071b2e4255687a8d8977665648525e6870777c8283848483807c78726a62594e4c5b6b7c8e8875624f3c28150100000000000000162b40566b8297958080888f9696928f8c8a898888898b8f949a968d83776a5b4c3c2b1907000000000616263544515e69747d868d93979b9a98979797989a9b97928d867d756c62574b3f32251708000016293b4953545454545f748ba08c76604e63788f8d8073685f5c5f6264676a6e7480919e89735e49341f000514222d353b4045484b4b4b48443d342a1e11030000000000000000000000020c141c22282d31343738383838383735322e29241d160e040000000000000000000000000000000000000610171d1f1f1d18100609131a1e1f1f1b160d03000000000000000000000000001f344a5f748a9f8f79644f3d312924201d1b1a1b1c1f2329313c4e62778da18c76614c37220d00000000000000000000000000000000000000020d1925313d4854606b746653412f1d0b0000000000000000000000000000152a3f546877858c82766b60555f6a75808a87796b58432e1904000000000000001f344a5f74899f8f79655140342b25201e1c1b1c1d20242a333f4f63778da18c76614c37220c00091928333a3d403f372b1c0b0000000000000000000000091e33485d72879c927d6955413021170f0b0904080b0f17212f4154687c919c87725d49341f09000000000000000e22364a5e7285907d6b59485362707b858c92969594949495928d867d756b60544e5f708392806b5844301c0800000000000000162b40566b8297998d94928c87827c79767473727273767980868f9a9588796a5948362310000000011324344453616f7b8791999b938d8885838282828385888c91979a92898074695d504334261707000c1d2c373e3f3f3f4a5f748ba08c76604e6378877d6e64696e717477797b808388919e95836f5b46311c0011223240494f555a5e6060605d5851473c2f2111010000000000000000000b151f2830373d4246494c4e4e4e4e4e4c4a47423e38312a21170c01000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001d32475c71869a93806c5b4e453e383432302f303234383d444d5a6a7d919c88735f4a35200b00000000000000000000000000000000000000000008131f2b37424e5a5f58483624120000000000000000000000000000001125394a5a6774828f897d7267717c87918476695c4e3c291500000000000000001f344a5f748a9f8f78644f3c3028221e1b1a191a1b1e22272f3b4d62778da18c77624c37220d00142637454f5256534939281501000000000000000000000c21364b60768ba08e78634e3a26120400000000000000041225394e63778da08b76604b36210c0000000000000014283d5165798e8873604e516271828e988f8883807d7d8082868b9192887d7265555366798d88735f4b36220d00000000000000162b40566b8297998b847c77716c6864615f5e5c5c5e60656a727c88969889776653402c190400000d1f3042526271808d999b90878078736f6c6b6b6b6d6f72777c838a939c92877a6e61524435241200000e1a24292a2a344a5f748ba08c76604b5e6c726e70787d83878a8c8f9194989d9890857665533f2b1700192d40515d646a6f73747675726c64594d3f2f1f0e0000000000000003101c28323b444b51575b5e616363636363615f5c57524c453d342a1e1205000000000000000000030303030300000000000000000306090b0c0d0d0c0b09060100000000000000000000000000001a2e42576a7d919c8a796c6159524d4a4746444647494c5158606b78889a93806d5945301c0700000000000000000000000000000000000000000000020d1925303c464a453a2b1907000000000000000000000000000000091b2d3c495664717d8c90857a848f8e827366584b3e301f0d00000000000000001e33485d71869b927d6b5a4d443c3733302f2e2f3033373c434c596a7c919d89745f4a35200b001b30435563676b675744301c07000000000000000000000d22374c62778da18c76604b36210c0000000000000000000b20364b60758ba08d77624d38230e00000000000000182d42576b8094806b57495c6e809094877c746e6a68686a6c70767d86909083715c4a5d72868e7965503b271200000000000000162b40566b829795806f68625d5853504c4a484747494c50575f6a77889895836f5c48331f0b0004172a3c4e5f7082909e95897d736b645e5a58565656585a5d62686f77808a95988c80706253412e1a0000020e161b1b1f344a5f748ba08c76604b4f5a6a78848d93979c9f9c9996938f8a847c73675848362310001e33485d6f787d84888b8c8b8780766b5d4d3d2c1a0700000000000413212e3a454e575f656b70737678787878787674706c67605950473c302314050000000000000b141819191918130b0000040a0f14181b1e2022222222201e1a16110a03000000000000000000000014283b4e61738594988a7d746d66625f5c5b5a5b5c5e61666c737d899795867563503d2a160100000000000000000000000000000000000000000000000007131f2a323431281c0d00000000000000000000000000000000000f1e2b384653606e7b89968f968b7d706255483b2d20120100000000000000001a2e43576b80929b89786b6057514c484644434446484b50575f6a77889994826d5945311c07001f34495e737c80735f4b36220e000000000000000000000d22374c62778da18c76604b36210b0000000000000000000a1f344a5f748ba08f78634e38230e000000000000001c31465b70868f7965515064788c98867669605955535354575c6269737d897c6a5744576b82937d69543f2a1500000000000000162b40566b829795806a544e48433e3b373533323234373c434d5a697a8e9f8b77624e39240f000c1f3346596b7d8f9f9586776b6057504a45434040414345494d535b636d77838f9c8f82715d49341f000313202a303030344a5f748ba08c76604b52667889969e95908d898784827d79756f686055493a2a1906001f34495e728793999c9998999c94897b6b5b4937241100000000021222313f4b57616b73798086898c8d8f8f8f8e8c8986827b746c63594d413223140400000001111e282d2e2e2e2d271d1011181e24282d3033353737373735332f2b251e170d030000000000000000000c1f324456667584919b9188827b777372706f707173767a8088909a92857768574634210e0000000000000000000000000000000000000000000000000000010d171d1f1c150b000000000000000000000000000000000000000d1b283543505d6b78868b887a6d5f5245372a1d0f0200000000000000000014283c4f6274859597897c736b65615d5b5a58595b5d60656a727c889696877664513e2a1602001e33485d72888e7965513d2914000000000000000000000d22374c62778da08b745f4a35200b0000000000000000000a1f344a5f748ba08f78634e38230e000000000000001e33485e73888c76614c556a80948f7a68584c45403e3e3f42474e56606b7772604d3e53687c92826c57422c1700000000000000162b40566b829795806a564b41382f2722201e1d1d1f2227303c4b5e72889c917b66513c27120013273b4f6276899b98877667594e443c35312d2b2b2c2e3034393f47505a65717d8c9382705d49341f000f21313d454646464a5f748ba08c76604b586c82959b8c827b7774716f6c6865605b544d43382b1c0c00001b2f43586c82908b878483858b96998a786654402d19050000000e1f30404f5d69747d878f959a9693919090909193969a96908980766b5f51423222100000000e1f2f3b42434343423a2e1e252c33383d4245484b4c4c4c4c4a48444039322a201508000000000000000002152738485766727d89919996908c898786868687898c90959a928a807467594a392817040000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000a1725323f4d5a67747474695c4f4134271a0c00000000000000000000000c20324556677685929a908780797672706f6e6e7072757980868f9993867868584734210e00001b30455a6f8595826c58432f1b070000000000000003030d22374c62778da08b745f4a341f0a0301000000000001030a1f344a5f748ba08f78634e38230e030300000000001f344a5f748b8b745f4a576c83978b74604b3a312b29292a2d333a434e5b65625b4f3e50667b91846e58432e1900000000000000162b40566b8297958073685e544b423a332c26211e1c1c1e2430455a6f869b937c67523c271200182d41566a7d92a08d7a6858493c3128211c18161617181b1f252b343d4853606d7b87756452412e1a00192c3e4f595b5b5b5b5f748ba08c76604b586e849994806e66625f5c5a5754504c46403930261a0d00000015293e52667a7c76716e6c6f7886979684705d4834200c000007192c3d4e5e6d7a87929b928b86827d7b7979797b7d82868b929b93897c6f6050402e1b080000182b3d4d57585858564c3c323940474d52575a5d5f616262615f5d59544e463d3226190a0000000000000000091a2a394855616c757d848a8f9395979999999896938f8b857d766d6256493b2c1c0b0000000000000000000000070f141515151410080000000000000000000000000000000000000000000000000000000000000000000000000714222f3c4a575f5f5f584b3e312316090000000000000000000000000315273949586773808a929a948f8b888685848486888a8f949a938b8275685a4b3a2917050000182d42576c829787725e4a36220d00000000000b1418191922374c62778da08b745f4a341f1919160f0500050f1619191f344a5f748ba08f78634e3823191918130b0000001f344a5f748a8b745f4a576b82968c76624f4036312e2f31353c45505d6b77746d5a4650667b91846e58432e1900000000000000162b40566b82979d90867a71675e564e47403b363331313338404d5f73889d917c67523c2712001c31465b7085999985705d4b3a2b1e140c070000000000060a1018212b36424f5d6c77685746352411001e33485c6d7070707070748ba08c76604b566b80939682736a65605c57524d463e362c251d1409000000000f23374b5d6a68615d59575b67798c9f8c77634f3a251100000f2336495b6c7c8b9894898077716c686664646466686c70767d88939a8e7d6e5d4b38251200001e32475a6a6e6e6e6a5946454d545b61666b6f72747677777674726e6861594f443728190800000000000000000c1b2a37444f5961697075797d808384848483827d7976706a635a5045382b1d0e00000000000000000000000c1923292a2a2a29241a0e00000000000000000000000000000000000000000000000000000000000000000000000004111e2c39444a4a4a453b2d20130600000000000000000000000000000a1b2b3a4956626d767d868b909497999a9999999794918c8680776e63574a3c2d1c0c000000152a3f54697d948e7965503c281400000001111e282d2e2e2e374c62778da08b745f4a342e2e2e2b22170816222a2e2e2e344a5f748a9f8f78634e382e2e2e2d271d1000001e33485e73888c77624c53687c91927d6d5e524b464344464a5058626e7b8a88725c4753687c93826c57422c1700000000000000162b40566b82979787918e847a726a625b55504b484647484c535d6b7c8fa18d78634e3a2510001f34495e73899e94806a55412e1c0d0100000000000000000000040e1924313f4e5c625a4b3a281706001f344a5f748787878787878da18c76604b50637585929186807974706c67615a52493e3123130200000000081b2e3f4e55534d4844424a5c708499927c68533e29140000162b3e5266788a9b9283766b635c5753514f4f4f5153575c626a7582919d8d7a6754412d1904001f344a5f74848484735e505961686f767b8085888b8c8d8d8c8a87837c756c6155463726150200000000000000000c1926323c464e555b6065686b6c6e6e6e6c6b6865615c564f463d33271b0d0000000000000000000000091b2a363e3f3f3f3e372c1d13131312100d09050000000000000000000000000000000000000000000000000000000000000e1b283134343431291d1002000000000000000000000000000000000d1c2b3845505a636a71767b7d82848686868483807b77726b645b5146392c1e0f0000000012273c51667b9194806b57432f1a0600000e1f2f3b42434343434c62778da08b745f4a434343433f34261625343e43434343485e73899f8f78634e43434343423a2e1e0d001c31465b70868f7a65514e617588998b7c6f665f5b58595b5e646b75808c9988725c47576c82937d69543f2a1500000000000000162b40566b829795807d8a948e867d766f6964605d5b5c5d61676f7b8a9a9785715d4935200c001f344a5f748ba0917c67523c27120000000000000000000000000000071321303e494c483d2e231404001f344a5f748b99999999999ca18c76604b4657667480888f948e8a86827b756e655b4f4131200e00000000001121303b403f39332f2d41566b809596826b56402c1601001b3045596e829598857365594f48423f3c3a3a3a3c3e42474e58647284969885705c47331e09001f344a5f748b9989735e636c757c848a909599989694949494979a9791898072645544321f0c00000000000000000008141f29323a414a505253565758585857565452504a413b332a20160a000000000000000000000000142738485254545453493b292929292725221e19140e07000000000000000000000000000000000000000000000000000000000a151c1f1f1f1d160c000000000000000000000000000000000000000d1a27333d474f565d6266696c6e6f6f6f6e6c6a66625d5750483e34281c0e00000000000f24394e63788e9b87725d4935210d0000182b3d4d57585858585862778d9f8a745f58585858585244332032435158585858585e73899f8f78635858585858564c3c2a1600182d42576b8095806c5845586a7a8b988d827973706e6e707378808892868f88725c4a5e72868e7965503b271200000000000000162b40566b829795806c77828c95928a847d797572707072767b838d99998a796754412e1a06001f344a5f748ba0927c67523d28130000000000000000000000000003111f2f3f4c54524f4a4132210f001f344a5f748484848484848ca08c76604b394857636c747a8085898e93908a82786d5f4f3d2b18040000000003121e272b2a241e1a293e53687d9498836c57422c1702001e33485e73889d907c6856473c332e2a2725252527292d333b4654667a8f9f8b75604b36210c001f344a5f748b9f89736c7680899198958f8b8783827d7d7d8082868c949c918372614e3b281400000000000000000000020d1f3142515d656766605547434756606667655d5141301e0e03000000000000000000000000001a2f4356666a6a6a6759473e3e3e3e3c3a37332e28221b1209000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000f233546535a606258515457585a5a5a5d5f605d574e433c342b21170b0000000000000c21364b60758b998d7864503c271200001e32475a6a6e6e6e6e6e6e778d9f89736e6e6e6e6e6d62503b273a4e616d6e6e6e6e6e73899f8f786e6e6e6e6e6e6a5946311c0014283d5165798d8873604e4c5d6c7a8791958e8986848486888d938a80788f88725c54667a8d87735f4b36220d00000000000000162b40566b829795806a646f78828a9398938e8b888787888b8f969d93887a6b5b4a38251200001f34495e73889d94806a56422e1d0d01000000000000000000010a15212f3d4d5d6967645e503e2b17001e32475a6a6e6e6e6e6e748ba08c76604b363945505960666b7074797d868f958b7d6d5a47331f0b0000000000010b121615100a13293e53687d9498836c57422c1702001f344a5f748ba08f78634e392920191512110f111214191f28374c61768ca18d77624c37220d001f344a5f748b9f8974808a93968e87807a75716e6b6968686a6c7077828f9f917d6b57432e1a000000000000000000000013283b4e606f797c7b736554425565737b7c796f5f4d3a2612000000000000000000000000030f1d32475c7280808076645353535353514f4c47423d362e261b110500000000000000000a12171717171717171717171717171717171717171717171717171717130c010000000000000000000000000014293e52646f7476634f3f434e58616a717475726b6052433322100500000000000000091e33485d728884807a68533e281300001f344a5f74848484848484848e9f8a8484848484847d68533e293c52677c8484848484848a9f8f84848484848484735e48331e000e22364a5e7185907d6b5a494e5c69747d868b8f929392908c8780766d788f88725c5f7184927d6b5744301c07000000070e1313162b40566b829795806a545c656e7780868c9295989a9b9998948f8982766a5c4d3d2c1a0800001c31455a6f84989a86715e4c3b2b1e140c070301010204080d141d27323f4d5b6b7a7c786e5a45301b00182b3d4d57585858585f748a9f8c76604c3728333d454c52575b5f646a727d8d9c8a77634e39251000000000000000000000000013293e53687d9498836c57422c1702001f34495e73889d907b6754453b332e2a2726252627292d333a445365798fa08b75604b36210c001f344a5f748b9f898692958c837a726c66615c595654535354575c647082969b87715c47321d0000000000000000000000182d42566b7d8d939083715d495e728490938d7d6a55402c1601000000000000000000000714212c374357697b8d94826f68686868686664605c57514a41392e221609000000000000101d262c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c281f1203000000000000000000000000162b40566b82897d68554d56606a757d868b8b877d7061513f2d1a0700000000000000051b3045596d736f6a665d4c39251000001f344a5f748b9999999999999d9d9b9999999999947d68533e293c52677c9399999999999b9d9d99999999999989735e48331e00071b2e4255687a8d89776757484b57616a7076797c7c7c7a77726b6363788080725c6c7d8f8875624f3b28140100000d19232829292b40566b829795806a5449525b636b72777c808386868583807b756d63594c3e2f1f0e000000172c4055697d91a18e7b6959493c3128211c181716171a1d2228303944505d6b79899287705b46301b000e1f2f3b42434343485d72889d8e7964503f35302d31383d42464a50565f70869b917c67523c271200000000000000000000000013293e53687d9498836c57422c1702001c31455a6e839697847263574f48433f3c3b3a3b3c3f42474e57627082959885705c48331e09001f344a5f748ba098988d83786f665f58514c4744413f3e3e3f424852677b919f89735e48331e0000000000000000000000192e43586e83989f9c89745f4b60758b9c9f97826c57422c1702000000000000000000071625323e4a535c647083958d7b7c7d7d7d7d7b7875716b655d554b4034271809000000000d1e2e3a4142424242424242424242424242424242424242424242424242413b30211000000000000000000000000014293e53687c908572636169737d8892928c8b908f806e5c4936220f0000000000000000162a3d4f5c5e5a55514b3f2f1d0900001f344a5f74888888888888888888888888888888887d68533e293c52677c88888888888888888888888888888888735e48331e00001226394b5d6f8292857566594c444e565c616567676765625d57505c686a6a666b7a8a8d7b6a584532200c00000b1c2b363d3e3e3e40566b829795806a543f3f4750575d63686b6e6f6f6f6d6a66605951473b2e20110100000011263a4d61748799998876675a4e443b35312d2c2b2c2f32363c444c56616e7b89989c87705b46301b0001111e282d2e2e30455a6f839794806d5d5149454241424244474b51596473889c917c67523c271200000000000000000000000013293e53687d9498836c57422c170200172b3f5366798b9c9082756a635c585452504f505153575c626a73808f9d8d7b6855412d1905001f344a5f748ba094887b70655c534b433d40424446494c4f52565b636e80949d88735e48331e0000000000000000000000172b40546779868a887d6d5a475b6e7d888a867867533f2a150000000000000000000516253443505c66707880859299919394949493918f8b86807971685d524436271807000000172a3c4c5557575757575757575757575757575757575757575757575757564e3f2e1b0700000000000000000000001024394d617588908277767c869092887d77757d8c8c7965523d291400000000000000000e20313e484945413c372e21110000001e33485c6e727272727272727272727272727272727164513c273b506371727272727272727272727272727272726d5b47321d0000091b2e40526373849385766a5e534a43484c50525252504d49433e4c5457616e7b8a8f806e5e4c3a281503000015283a485253535353566b829795806a543f2b343b43494e5356585a5a5a5855514c463d34291d1002000000000a1e3144576a7b8d9d9586776b6057504a454341404244474b5057606973808c91919c87705b46301b0000000b141819192b4054687c8f9d8c7b6e645d5a575657575a5c60656c7582919c8a76634e39251000000000000000000000000013293e53687d9498836c57422c1702001024374a5c6d7d8c9992887d77716c696766646566686c70767d86919b8e806f5d4c39251200001f344a5f748b8f8376695d53494a4d50535457595b5e6064676b7076808d9d95826d5945301b00000000000000000000001125384b5b687174736c60503f51606c737471685a4a3724100000000000000000001123344352616d79838c939a95939a8c8b8b8b8c8d91959a958d857a6f6254453625130100001d32465a696c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6b5d4a36210c00000000000000000000000a1e3145586a7b8b938c8c90928980756a62606d8093826c57422e1904000000000000000213212c3334302c27231b1003000000192d3f505b5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5547362b3946555c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5a4f3e2b18000000112234455665748491887b70665e56514c484644444447494d5259606973808c8d80706150402f1d0b0000001c3145586668686868686b829795806a543f2a20282e34393e414344444443403d38312a21170c0000000000000215283a4c5d6e7d8e9c96897d736b645e5a58565657595c60656b737c86918f828b9c87705b46301b000000000000001125394c5f7284959a8c8278726f6c6b6c6c6f7175798089939b8e7d6d5a47331f0b00000000000000000000000113293e53687d9498836c57422c170200071a2c3e4f5f6e7b88929b928b86827d7c7b79797b7d82868b929a93897c6f6151402e1c0900001e33485d6f767973655852575b5f6265686a6c6e707376787c80858b929d95877664523e2a160000000000000000000000081b2d3d4b565d5f5e584f4233424f595e5f5d564b3c2c1a080000000000000000091c2e40516170808b96968d868082948574747476787b80868d96988d8272635342301e0b00001f344a5f748383838383838383838383838383838383838383838383838378634e38230e00000000000000000000000215283b4c5d6d7a8488898680766c62584e50637888836f5a442f1a050000000000000000030f191e1f1b17130e0800000000001022323e46474747474747474747474747535e6567665f5345394957616767645c4f474747474747474747474747463e31210f0000000516273847566573808d8e837a726b65615d5b5a5a5a5c5e62676d747c8791897c6f615142322211000000001f344a5f747d7d7d7d7d7d829795806a543f2a15141a2025292c2e2f2f2f2e2b28231d160e0500000000000000000b1d2f4050606f7d8b979b90878078736f6c6b6b6c6e70747980878f968b7d768c9c87705b46301b00000000000000091d304255667686929e948d88848382828384878a8f959b93897c6f604f3d2b180400000000000000000810151616293e53687d9498836c57422c170200000f213141505d6a7580888f94999794919090909193969a958f8880766b5f5142332211000000192d40515c6165625a61676c707477797c80828487888b8e91959a9c958d837768594835230f0000000000000000000000000f1f2d3942484a49443c3124323d45494a4842392d1e0e0000000000000000001125384c5e6f808f9d908479726b7689907d6b5f6063666b7179838f9c918271604d3a271300001f344a5f748b98989898989898989898989898989898989898989898988f78634e38230e0000000000000000000000000b1d2f3f4f5c676f7373716b635950453b4a5e70726d6554412d180300000000000000000000000000000000000000000000000413212b31323232323232323232323e5162707a7c7a716352445767757b7c786d5d4b3832323232323232323232312b201303000000000a1a29384755636f7a858f8e8680797672706f6f6f7073777b8288908c82776b5e514233241504000000001f344a5f748b9494949494949f95806a543f2a1500060b101417191a1a1a1816130e0902000000000000000000000011223242515f6d79858f979b938d88868382828284868a8e94978e84796d768c9c87705b46301b000000000000000013253748586775828a92979b9998979798999b97938e8780766b5f514231200e00000000000000000d1a242a2b2b2b3e53687d9498836c57422c17020000031323323f4c58626b73798084888b8d8f8f8f8d8b8986807a746c63594e41332415040000001122323f484e5a646d757b8286898d90939597999b9d9c9995918c8782797066594a3b2a1806000000000000000000000000010f1c262e33343430291f142029303434332e261c0f00000000000000000000182c4054687b8d9e8f8071665e5a6c7d91897663514e52575d66707d8e9e8f7d6a56432e1a06001f344a5f748ba0908989898989898989898989898989898989898989968f78634e38230e000000000000000000000000001121313e4a545a5e5e5c574f463d332e41515d5e59534737251200000000000000000000000000000000000000000000000000030f171c1d1d1d1d1d1d1d1d1d2f44596d808e938f826e5a4c60748691938b7a67533e291d1d1d1d1d1d1d1d1d1c170e030000000000000b1a293745515d68727b838a908f8b888686868687898c908e8882786f64594d403324150600000000001f344a5f748b8b8b8b8b8b8b8b8b806a543f2a1500000000000000000000000000000000000000000000000000000004142332414f5b67717a838a91969a9a98979797999a96918a837a716660768c9787705b46301b000000000000000008192a3a4957636d767c838688898b8b898886837d79726b63594e4132231402000000000000000a1b2b373f4040404053687d9498836c57422c17020000000414222f3b464f585f656b6f737577787878777673706b66605950473c3023150600000000081b2e3f505f6c77828990969a9e9b989693918f8c898784807c77726c655d53483b2c1d0c0000000000000000000000000000000a131a1e1f1f1b150d020d161b1f1f1e1a130a00000000000000000000001c31465b6f849895827061544a4f61738693826e5c4a3d424a53606f82949a86715d49341f0a001f344a5f74899e8d787373737373737373737373737373737373737d948f78634e38230e000000000000000000000000000313202d374046484847423b332a202333414949443f36291908000000000000000000000000000000000000000000000000000000000000000000000000001b30465b708699a09a87715c4e63788d9d9f94806a543f2a15000000000000000000000000000000000000000b1a2734404b555f676f767b80848789898b898886837d79736d645c52473c302315060000000000001f34495d707474747474747474747467533e291400000000000000000000000000000000000000000000000000000000051423313e4a545f676f767c828588898b8b8a8886827c766f675e546076828282705b46301b0000000000000000000c1c2b3945515a62686d70737474747372706d69645e5850463c30231405000000000000000014273949535656565656687d9498836c57422c17020000000004111d28333c444b51565a5e6062636363676a5e5b57524c453d342a1e120500000000001124384b5d6e7d8a959d98928d898784827d7b787774716e6b67635d5964635e574937230f0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001f34495e73899e8f7a665243374456697b8e8c796654423036425164788ea08b76604b36210c001d32465b70849894806f615e5e5e5e5e5e5e5e5e5e5e5e5e5e5e687d948f78634e38230e000000000000000000000000000003101b242c313333322e2820170d15232e34342f2a23190b0000000000000000000000000000000000000000000000000000000000000000000000000000192e42576a7b878b877c6b584a5e7080898a857664503c271300000000000000000000000000000000000000000916222e39424c545b61676b6f717374747372706d6a655f5851493f352a1e1205000000000000001a2e41515d5f5f5f5f5f5f5f5f5f5f584937241000000000000000000000000000000000000000000000000000000000000513202c37424b545b62676c6f727374747472706c68625b534b475a696b6b6b6656422e19000000000000000000000d1b28343e474e53585b5e5f5f5f5e5d5b5854504a433c332a1e12050000000000000000001a2f4357676b6b6b6b6b6b7d9498836c57422c17020000000000000b16202830373c4145494b535d67707a7a6857453d37312921170c01000000000000172b4054677a8c9b978c837d7874716e6b686664625f5c5956524e5a6877777366533e291400000000000001070a0b0b0a060000000001070b0b0b0a050000000001070b0b0b0a05000000000000000000001f344a5f748ba08f78634e3a2d3a4c5e70839684715f4c3a2c384c62778ca18d77624c37220d00182c4054677a8d9d8e80736b645e5a55524e4b48484848484853687d948f78634e38230e000000000000000000000000000000000811171c1e1e1d19140c040005111a1f1f1b16100600000000000000000000000000000000000000000000000000000000000000000000000000000014273a4d5d6a7274726a5e4e4153626d73747067584735210d00000000000000000000000000000000000000000005101b262f3840474d52565a5c5e5f5f5e5d5b5855504b443d352c22180d01000000000000000011233341494a4a4a4a4a4a4a4a4a4a453b2c1a08000000000000000000000000000000000000000000000000000000000000020f1a252f3840474d52575a5d5f5f5f5f5d5b57534d4740373c4b54565656534838261300000000000000000000000a16212b333a3f4346484a4a4a494846433f3b362f2820170c01000000000000000000001d32475c72828282828282829498836c57422c170200000000000000030d17222b363f49535c667079848d8675604b36231d160d0400000000000000001b30455a6f83979b89796f68635f5c595653514f4c4a474446515d6a78878d806a543f2a1500000000000b151b2021211f1a1309010c151b2021211f1a1209010c151b2021211f19120800000000000000001e33485d72889c927c69584a4039415366788b8f7c6a57453f4956687b909e8a745f4b35200b001125384b5d6e7d8d9991878078736e6a6763605d5a57534e4a53687d948f78634e38230e000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000b1e2f3f4c575d5f5d574d403544515a5e5f5c54493a2a1805000000000000000000000000000000000000000000000009131c242c33383d414547484a4a49484644403c36302922191005000000000000000000000515232e343434343434343434343431291d0e00000000000000000000000000000000000000000000000000000000000000000008121c242c33393e4245484a4a4a4a4846423e39332c242d39404040403f372a1a09000000000000000000000000050e171f252a2e31333434343433302e2a26211b140d040000000000000000000000001d32475c72889797979797979f98836c57422c170200000000000000081928353e48525c666f79838d9085786d5c48341f0a01000000000000000000001d32475c72889c94806a5c544f4a4744413e3c3a393f464f59636f7b899795806a543f2a1500000004111e2830343636342e261b121e2830353636332e261b121e2830353636332e251a0d000000000000001b2f44586d8294998775675c544d48495b6d809387746250535c6774859896836f5b46321d0800081b2e4050606f7c889199938d8884807b7876726f6b68635e58687d828278634e38230e00000000000000000002080d1115181b1c1e1e1e1e1d1c1a1714100b0500000000000000000000000000000000060b0f1111100d0803000000000000000000000000000000000000000000000011212f3a43484a48433b3026333e45494a4741382b1c0c00000000000000000000000000000000000000000000000000000811181e24282c30323334343433312f2b27221c150e060000000000000000000000000005111a1f1f1f1f1f1f1f1f1f1f1f1d160c0000000000000000000000000000000000000000000000000000000000000000000000000811181e24292d30333434343433312d29251e18101c262b2b2b2b2a24190c000000000000000000000000000000040b1115191c1e1f1f1f1f1e1b1915110d070000000000000000000000000000001d32475c72888989898989898989836c57422c17020000000000000012253746515b656f78838c968a7d72675b4f3f2d190500000000000000000000001d32475c72879c95806b594e48444242424346494e535a626b75828d99a195806a543f2a1500000112222f3b44494b4b4942392c22303b444a4b4b4842382c23303b444a4b4b4841382b1d0d00000000000015293d51647688989486796f68615d595763758892806d61676f7885939a8a7866533f2b1703000010223242515e6a747d868d92989894918e8b8885827c77726d656b6b6b6a5c4a36210c00000000000001080f161c22262a2d30323333333332312f2c2925201a130b0200000000000000000000000a131a2024262625221d170e0500000000000000000000000000000000000000000003111d272f3334332f281e16212a313434322d251a0d0000000000000000000000000000000000000000000000000000000000040a0f14171b1d1e1f1f1f1e1c1916120d080100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000040a1014181b1e1f1f1f1f1e1c1915100a04000a1115161616151007000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001c31465a6d7373737373737373736e65533f2b160100000000000000192d4154646e77828c959084786c6155493d3121100000000000000000000000001b3045596e83979b88776b625d59575757585b5e62686e767d899391869495806a543f2a1500000d1f30404d575e60605d564a3c31404e585e60605d554a3b31414e585e60605d54493b2b190700000000000e213447596a798995978c837c76726e6c6b6a7d908a77757b838c96968a7b6b5a4936231000000004142332404c57616a71787d83888c9093979b9996928d8882796f6456554d3e2d1a0600000000030c141c242a31363b3f42454748484848474644413e39342e271e150a000000000000000006121d272e35393b3b3a37322b21170c000000000000000000000000000000000000000000000b141b1e1f1e1b140b040e161c1f1f1d19120800000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000a1217171717171717171717171717150f050000000000000001070a0b0b0a0600000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005111a1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1e190f03000000000000000000000000000000000000000000172b3e4f5b5e5e5e5e5e5e5e5e5e5b544736271604000000000000001b30465b70828b95958a7d72665a4f43372c201303000000000000000000000000162b3f53677a8c9c96887d76716e6c6c6c6e7073777c838a92968b807c9395806a543f2a15000016293c4e5e6a73767672685a4a3d4f5e6b737676716759493e4f5f6b7376767167594836230f000000000005182a3b4c5b6a77838e9797908b8784828280828895878b9096978f84786b5d4d3d2b1907000000041525333c3f444e565d63696e73777a7d8286898d91969c958c8274665544312010000000000c161f2830383e454b5054575a5c5d5e5e5e5c5b5956524e48423a31281c100200000000000716232f3a42494d50504f4b463e34291c0e000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000810141515151515151515151515151515151515140f070000000000101d262c2c2c2c2c2c2c2c2c2c2c2c2c2a22160800000000000b151b2021211f1a1309000000000000000001070b0c0c0a06000000000000000000000000000000000000020b12161716120b020000000000000000000515232e3434343434343434343434343434343434332c21130200000000000000000000000000000000000000000e20313e474848484958646c6f6f6b62544533200d000000000000001a2e4357697b8e9084776c6055493d32261a0e02000000000000000000000000001024374a5c6e7d8c979b928b87848382838486888c9197958c83786d7c9395806a543f2a1500001c3145596b7c888c8c86786754465a6d7c888c8b85776653475a6d7d888c8b857766523e2a150000000000000c1d2e3d4c5966707a838a8f94989997969596989c9c97908a837b71675a4d3f2f1f0e000000000f2133435054504442494f545a5e6266696c7074787c8288909c938473604d392510000001111e28333b444c53595f65696c6f717273737372706e6b67635d564e443a2e20110100000006162534414c565d63656664605a51473a2c1d0d0000000000000000000000000000000712191c1d1d1d1d1d1d1d1d1d1d1d1d1d1d1d1d1c1a1208000000000000000000000000000000070b0b0b0b0b0b0b0b0b0b0b0b090400000000000e1a24292a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2923190c0000000d1e2e3a414242424242424242424242423e34261604000004111e2830343636342e261b0e0000000000010b151b2022211f1a130a00000000000000000000000000000007141e262c2c2c261e1306000000000000000011233341494a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a483e31200e00000000000000000000000000000000000000000313212b32333341556776828685807262503c28130000000000000014273a4c5e70837d72665a4f43372b201408000000000000000000000000000000081b2d3f50606e7a858d93989b99989798989b98948f8882786f66677c9395806a543f2a1500001f344a5f73899aa1a097846f5a4b60758a9ba1a096836d584b60758a9ba1a095826d58432e1800000000000000101f2e3c48545e676f757a808386888989898888998c7b766f675f54493d2f21110100000006192b3e51616a62564c423b4045494d5154585b5f63686d747d8c9e907c68533f2a1500000e1f2f3b464f575f676d74797d82858788898989888684827c77716a61574b3e2f1f0f00000012243443525e6972777a7b79756d64584a3b2b1a08000000000000000000000000000918252e3232323232323232323232323232323232322e25190a00000000000000000000000006121b2021212121212121212121211e180d0000000c1d2c373e3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3e362a1b090000172a3c4c55575757575757575757575757514433210d000112222f3b44494b4b4942392c1e0e00000004121e2830353736342e261c0f01000000000000000000000000061625313b4042403b31241506000000000000001a2e41515d5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5c4f3d2a16020000000000000000000000000000000000000000030f181d1e32475c7085949b9a91806b56402b16000000000000000a1d2f415365746c6054483d31251a0e02000000000000000000000000000000000010213242505c6770787d838788898b898887838079746d655c53677c8282806a543f2a1500001f34495e7388989f9f95836e594b5f7489999f9e94826d584b607589999f9e94826c57422d180000000000000001101e2b36414b535b61666a6e7072737373727b8e9583705d544c42372c1f110300000000112336485b6d8073695f554d463f39383c3f43464a4e5358606e829797826c57422c170200182b3d4d58626b737b82888e93979a9b999999999a9b9996918c867d74695c4d3d2c1a07000a1d30415261707c868d90918f8a827668594937251200000000000000000000000003162736414747474747474747474747474747474747474237281704000000000000000000000616242f353636363636363636363636332b1e0f000016293b49535454545454545454545454545454545454524838271400001d32465a696c6c6c6c6c6c6c6c6c6c6c6c62503c2813000d1f30404d575e60605d564a3c2c1b0800021222303b444a4c4b4942392d1f0f000000000000000000000000122334434e5557554e42332312000000000000001f34495d70747474747474747474747474747474746d5945301b050000000000000000000000000000000000000000000000001c32475c7186989f9f94806b56402b16000000000000000011243648575f5a4e43372b20140800000000000000000000000000000000000000041423323f4a545d64696e707373747373706e6a655f5951494d5f6b6b6b6b61503c271300001b3044586a7a868a898477665345596b7b868b898376655246596c7b868b89837564513e29150000000000000000000d19242e373f464c5155585b5c5e5e5e5e70838b8b7a6954402f251a0e010000000000182c405365778b867b7269615a534e4946434242434549505a6b809597836c57422c1702001e32475a6a757d878f9699948f8b8886848484848687888c90969a91877a6b5b4a3724100013273a4d5f70808e91888483868d9487776654412e1a0600000000000000000000000b1f3345545c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c554634200c00000000000000000000122434424a4b4b4b4b4b4b4b4b4b4b4b473c2d1c0a001d314558676a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6656432f1a00001f344a5f748383838383838383838383806a543f2a150016293c4e5e6a73767672685a4a382511000d1f30404d575e61605d564b3d2c1b0800000000000000000000081b2e4152606a6c6a6051412f1c080000000000001f344a5f748b8b8b8b8b8b8b8b8b8b8b8b8b8b8b87705b46301b060000000000000000000000000000000000000000000000001a2e43576979868b8a837664513d2814000000000000000006192a39444a473d3125190e020000000000000000000000000000000000000000000514212d3841495055595c5e5e5f5e5e5c5955514b453e36414f56565656504333200d000015283b4d5c69717474706659493c4d5d697174746f6658483d4e5d697174746f66574735220e0000000000000000000007121b242b32383c4044464748484853657474747468543f2a1508000000000000001b30465b708393998f857c756e68625e5b585757585a5e636c78889b927d6954402b1601001f344a5f7488929b938c8580797673706f6e6e6e6f7073777b838b96988a7966533f2b1600192d4256697c8f8f80746e6e717a889584715d4935210c000000000000000000000010253a4e6271727272727272727272727272727272727163503b2611000000000000000000001a2e41525e60606060606060606060605a4b392611001f344a5f748080808080808080808080808080808080725c47321d00001f344a5f748b98989898989898989895806a543f2a15001c3145596b7c888c8c86786754402c1700162a3d4e5e6a73767672685b4a382511000000000000000000000d22374b5e707d837d705e4b37230e0000000000001f344a5f748b9494949494949e9e94949494949487705b46301b0600000000000000000000000000000000000000000000000014273a4c5c687174747066584735220e0000000000000000000c1b283134322b1f130800000000000000000000000000000000000000000000000003101b252d353b40444748494a49484744403c37312a23323c404040403d3325150300000c1e2f3e4b565c5f5f5b54493b2f3f4c565d5f5f5b53483a303f4c565d5f5f5b5348392a18050000000000000000000000000810171e23272b2f313233333648575f5f5f5f594a39251100000000000000001a2f43576976828c96999089837c7773706e6c6c6d6f7377808996978775614e3a261100001c3145586b7d91888077706a65615e5b5a5858585a5b5e62676e78879996836d59442f1a001d32475c70869582706159585d697a8d8d78644f3a2510000000000000000000000011263b50667b888888888888888888888888888888887c67523c2712000000000000000000001f34495d7076767676767676767676766954402b15001f344a5f748b95959595959595959595959595959588725c47321d00001f344a5f748b8b8b8b8b8b8b8b8b8b8b806a543f2a15001f344a5f73899aa1a097846f5a442f1a001c3145596c7c888c8c86796754402c170000000000000000000010263b5065798e988e7a65503b26110000000000001f344a5f747d7d7d7d7d7d809595807d7d7d7d7d7d705b46301b070909090805000000000000000000000000000000000000000b1d2e3e4b565d5f5f5b53483a2a1805000000000000000000000a151c1f1e180e0200000000000000000000000000000000000000000000000000000008121a21262b2f313334343433312f2b27221c161420282b2b2b2b282115070000000011202e3942474a4a4740372b212e3a42484a4a4640362a212f3a43484a4a4640362a1b0c00000000000000000000000000000003090e1316191c1d1e1e2a39444a4a4a4a463b2d1b09000000000000000014283a4b58646f79838c949b97918c88868483838385888d939c928678685745321f0b000015283b4e617580746b635c56504c4846444343434446494d535b697d939b866f5a442f1a001f344a5f7489907a665245434b5e7388917c67523c2712000000000000000000000011263b50667b919999999999999d9d9a9999999999937c67523c2712000000000000000000001f344a5f748b8c8c8c8c8c8c8c8c8c826b56402b16001f344a5f748b8c8c8c8c8c8c92a4918c8c8c8c8c8c88725c47321d00001f34495d7074747474747474747474747467533e2914001f34495e7388989f9f95836e59442f1a001f344a5f74899aa1a197846f5a442f1a0000000000000000000010253a4f64798fa48f7965503b26100000000000001c3145586668686868686a809595806a68686868686454412d191b1e1e1e1e1a120700000000000000000000000000000000000010202d3942484a4a4740372a1c0c000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000060c12161a1c1e1f1f1f1e1c1a17120e0801020c1316161616140d04000000000002101c262e323434322c241a111d272e333434322c2419111d272e333434322c23190c000000000000000000000000000000000000000000000000000c1b283134343434322a1d0f0000000000000000000b1d2d3b46515c666f7780878d92979a9b999898989a9a9690898074685a4a3a28150200000c1f324558696c61574f50505050505050505152535456595d636f829596836d59442f1a001f34495e7389917b67554c4a4f5f7389917b67523c2712000000000000000000000011263b50667b848484848484859799858484848484847c67523c2712000000000000000000001f344a5f748b959595959595959b97826b56402b16001f34495d70767676767676778da18c767676767676766e5b46311c00001a2e41515d5f5f5f5f5f5f5f5f5f5f5f5f5849372410001b3044586a7a868a89847766533f2b16001f34495e7388989f9f95836e59442f1a000000000000000000000d23384c61768ca08c76614d38230e00000000000015283a485253535353546a809595806a5453535353504637252830333333332e2417080000000000000000000000000000000000020f1c262e333434322c24190c000000000000000000000000040a1014181b1d1e1e1e1e1e1c1916120d080100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000a13191e1f1f1d181108000a131a1e1f1f1d181107000a131a1e1f1f1d1810070000000000000000000000000000000000000000000000000000000a151c1f1f1f1f1d170c00000000000000000000000f1d29343f49535c646b72787d8286888a8b8b8b8886827b756c62574a3c2c1c0b0000000215283b4b56584f52616666666666666666666768696b6e7277808e988a7966533f2a16001c31465b6f8497847367605f636d7c8f8d78634e3a251000000000000000000000000f24394d606d6e6e6e6e6e6e829798836e6e6e6e6e6e6d614e3a2510000000000000000000001f344a5f7480808080808080809097826b56402b16001a2e41525e606060606062778da18c766060606060605d503f2c18000011233341494a4a4a4a4a4a4a4a4a4a4a4a453b2c1a080015283b4d5c6971747470665949372410001b3044576a7a858a89847666533f2b16000000000000000000000a1f34495e73889c88725d49341f0a0000000000000b1c2b363d3e3e3e3f546a809595806a54413e3e3e3c34282b39444848484841352614010000000000000000000000000000000000000a131a1e1f1f1d18110700000000000000000000000811181f25292d30323333333333312f2b27221c150d03000000000000000000000000000000000008101516120b000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000c17222d36404850575e64686c70727474747473706c6760595045392c1e0e00000000000c1d2d3a414344596e7b7b7b7b7b7b7b7b7b7c7c7d8283878c938e85796c5c4a37241000182c4054677a8b92857a767477808b9483705d4935200c00000000000000000000000a1e3142515858585858586b829798836c5858585858585143321f0b000000000000000000001d314558676a6a6a6a6a6a6a799097826b56402b1600122434424a4b4b4b4b4c62778da18c76604b4b4b4b4b494032221000000515232e3434343434343434343434343431291d0e00000c1e2f3e4b565c5f5f5b54493b2b1a070015283b4c5c687174747066584837241000000000000000000000061c31455a6f8698846e59442f1b06000000000000000d19232829292a3f546a809595806b5e53483d332a21233749575e5e5e5d5343311d090000000000000000000000000000000000000000000000000000000000000000000000000006111b242c33393e42454748484848484644403c36302920160b0000000000000000000000000000000d1a242a2b261e110300000000000000000000000000000000000000000000000002080d1115191b1d1e1f1f1f1f1d1b17130e0801000000000000000000000000000000000000000003090f131617171716130f0a030000000000000000000000000000000000000000000000000000000000000005101a232c353c434a4f54585b5d5f5f5f5f5e5b57524c453d33281b0e000000000000000f1c272d2f445a6f869191919191919191939394968e8885807972685c4e3e2c1a07001124374a5c6d7c89938f8b8b8d929084756553412d1a060000000000000000000000011324333e4343434343566b829798836c5743434343433e342514020000000000000000000016293b495354545454545464799097826b56402b16000616242f35363636374c62778da18c76604b36363636342e23140400000005111a1f1f1f1f1f1f1f1f1f1f1f1f1f1d160c0000000011202e3942474a4a4740372b1d0d00000b1d2e3e4b555c5f5f5b54493a2b1907000000000000000000060b182d42576c8395806b56412c170b06000000000000030f171c1d1d2a3f546a809598897c70655a50463d352e3e536673737371604c37220d000000000000000000000000000000000000000000000003090b0a0500000000000000000b17232e3740474e53575a5c5e5e5e5e5d5b5855504b443c33281d10020000000000000000000000000c1c2b373f403a2f211204000000000000000000000000000000000000000000050f171c22262a2e3032333434343432302c28231c150d0400000000000000000000000000000000060f171e24282b2c2c2c2b28241e170f050000000000000000000000000000000000000000000000000000000000000007101921282f353a3f4346484a4a4a4a4846423e38312920160a000000000000000005131e262f445a6f868b8b8b8b8b8b8b8c8c8e90948d8680776d63564b3e30200f0000081b2d3e4f5e6b768086898b88847c72665747362411000000000000000000000000000615212a2e2e2e2e40566b829798836c57422e2e2e2e2a22160700000000000000000000000c1d2c373e3f3f3f3f3f4f64799097826b56402b16000006121b20212122374c62778da18c76604b36212121201a110500000000000000000000000000000000000000000000000000000002101c262e323434322c241a0d0000000010202d3942474a4a4740372b1c0d000000000000000006111a20222b40556a80937c68533e2922201a11060000000413212b313232323f546a8095998d8e83776d63595149423f546a80898978634e38230e000000000000000000000000000000000000000000060e161d201f190f0200000000000c1b2935404a545b62686c6f727373737372706d69655f584f463a2e201202000000000000000000000c1b2a3a4953554d3f30221304000000000000000000000000000000000000000716222b31363b3f434647484a4a4a494745413c37312921170e03000000000000000000000000040f19232b32383d40424242403d38332b22180c0000000000000000000000000000000000000000000000000000000000000000050d141b21262a2e31333434343433312d29241d160d040000000000000000021423313a3e43586b74747474747474747677787b80858c938b8073655544311e0b000000102131404e5a636b717374736f69605548392a19070000000000000000000000000000040e15181f2e3d4c5b6b829798836c5a4b3c2d1e19160f05000000000000000000000000000e1a24292a2a2a2a3a4f64799097826b56402b1600000000070b0b0d22374c62778da18c76604b36210b0b0a0600000000000000050c10100c050000000000000000000000000000000000000a13191e1f1f1d181108000000000002101c262e323434322c241a0d00000000000000000918242e3537363e53687d917b66503b3637342d23170800001022323e4647474747546a8095958086928a80766d645d5650546a80958f78634e38230e00000000000000000000000000000000000001091119222a3236342c2011010000000b1b2a3947525d676f767c828587898989898886837d79736c62584c3e30200f000000000000000000091a2a394858676a5d4e40312213040000000000000000000000000000000000021425343f464b5054585b5c5e5f5f5f5e5c5a56514b453d342a201408000000000000000000000916212c363e464c525557575756524d463e35291d1002000000000000000000000000000000000000000000000000000000000000000000060c1115191c1e1f1f1f1f1e1c19140f0902000000000000000000000c1f31424e534e4e5b5f5f5f5f5f5f5f5f606263666a70778390928473614e3a2612000000031322303c4750575c5e5f5e5a554d43372a1b0c000000000000000000000000000000000211202f3d4c5b6a7989999a8878695a4b3c2c1d0e00000000000000000000000000000000081014151515253a4f64799097826b56402b16000000000000000d22374c62778da18c76604b36210b0000000000000000000b1821252521180c000000000000000000000000000000000000000000000000000000000000000000000912191d1f1f1d18110700000000000000000517273641494c4b4652677c8f79644f464b4c49403526160400192d3f505b5c5c5c5c5c6a8095958074828d93898078716a65606a80958f78634e38230e00000000000000000000000000000000040c151d252d353d464b483e2f1e0c000007192939485764707a838b9196999b999898999a9b98948e888075695c4e3e2d1b090000000000000000122638485766767b6c5e4f4031231404000000000000000000000000000000000a1e3143525a5f64696c70727374747473726f6b65605850473d3226190b00000000000000000d1a27333e49525a61666a6c6c6c6b67615a51473b2e20110100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000417293c4e60686159514a4a4a4a4a4a4a4a4b4c4e51555c65728598917d6955402b160100000004121f2a343c4247494a4845403a30261a0c000000000000000000000000000000000211202f3e4d5b6a798998938b978878695a4a3b2c1d0e00000000000000000000000000000000000000000f253a4f64799097826b56402b16000000000000000d22374c62778da18c76604b36210b00000000000000000b1b29343a3a34291c0f01000000000000000a1217171717171717171717171717150f050000000000000000000000000000000000000000000000000010223545535d62605a51667a8d7863515a60625d524433210e001e33485c6e727272727272809595806a6f7b8791948c868079767380958f78634e38230e00000000000000000000000000000810182028303841495159605c4d3b2814000012243647576675828d979a938d89868483838486888b90979b92887a6c5c4a3826120000000000000000182d41556675858b7c6d5e4f41322314050000000000000000000000000000000f24394e616e74797d828688898a8b8b898784807a746c635a4f4437291b0c0000000000000f1d2b3845515b656e757b80838383807b766e64594c3e2f1f0e0000000000000000000000000000000000000000000105090b0d0f0f0f0f0e0d0a07040000000000000000000000000000000000000000000000000e213446596b7d756c645d57524d4946444242424345494f596b829698836c57422c170200000000010d1721282e32343433312c261d1408000000000000000000000000000000000311202f3e4d5c6b79899893847a8a97887768594a3b2c1d0e000000000000000000000000000000000000000f253a4f64799097826b56402b16000000000000000d22374c62778da18c76604b36210b00000000000000081a2939474f4f473a2d1f10010000000000101d262c2c2c2c2c2c2c2c2c2c2c2c2c2a2216080000000000050d11110e0600000000000000000000000000182c3f52637077756d6564788b7661656d75777062513e2b16001f344a5f74888888888888889795806a5e69747d89929a948f8b8888978f78634e38230e0000000000000000000000030b131b232b343c444c545c646d756b57422d1800081b2e4153657585939c90877d7873706e6d6c6e6f72767b838c97988a796855422e1a06000000000000001a2f445a6f82909b8c7c6d5f504132231405000000000000000000000000000011263b50657a898e93979a9b99989898999b99948f8880766c615547392a1a0a000000000c1d2d3b4956626e78828a909597989895908a82766a5c4d3d2b1a080000000000000000000000000000000000040a10161a1e2023242525252322201c19140f09030000000000000000000000000000000000000000152a3e51637689898078726c66625e5b59575757585a5e636b77889b95826b57412c1702000000000000040d14191d1f1f1e1c17110a01000000000000000000000000000000000312212f3e4d5c6b7a8a989384746b7b8b96877768594a3b2c1d0e0000000000000000000000000000000000000f253a4f64799097826b56402b16000000000000000d22374c62778da18c76604b36210b0000000000000012253747576464584a3d2e1f10000000000d1e2e3a414242424242424242424242423e342616040000000c1821262722190c0000000000000000000000001d32475b6f828d89827974727470747982898c806d5a45301b001f344a5f748b9898989898989895806a5457616c757d868d93989c9d9f8f78634e38230e000000000000000000060e161e272f373f474f576068707882846e58432e19001024384b5e7183949a8c7d736a645f5b595857585a5d61676f7988989785715d4934200b00000000000000172c40536371828f9b8c7d6e5f504132231405000000000000000000000000000e23374b5f738894908c88868483838384868a8f959c938a807265574838281705000000172a3b4b596773808b959a938f8c8b8c8f959e94887a6b5a49372411000000000000000000000000000000060f181e252a2f323638393a3a3a383734312e29241e171008000000000000000000000000000000000000182e43586d809099948d87827b7773706e6c6c6c6e6f73777d89969d8c7966523d29140000000000000000000000000000000000000000000000000000000000000000000000031221303f4d5c6b7a8a99948574655d6c7b8b96877768594a3b2c1d0d00000000000000000000000000000000000f253a4f64799097826b56402b16000000000205060d22374c62778da18c76604b36210b06050100000000192d4255657576685a4c3d2e1e0e000000172a3c4c55575757575757575757575757514433210d00000c1b2a353b3c362a1d0f01000000000000000000001f344a5f74899f9d958d87705f72888e959d9d88725c47321d001f344a5f74838383838383838383806a54444f59616a72787d8387898a8978634e38230e00000000000001091119222a323a424a535b636b737b848c95846e58432e1900162b3f53677a8e9e8d7c6d61574f4a464443424345484c535c697a8ea18c77624d38230e0000000000000011243645536270808f9b8d7d6e5f514232231506000000000000000000000000081c3044586c82807a7773706e6c6c6c6e70757a8289939c9083756656463523110000001d324659697785929b908780797674767a828c989989786654412e1b07000000000000000000000000030f19232b33393f44474b4c4e4f4f4f4e4c4a46423e38322b231b110800000000000000000000000000000000172c415567737c868d959b95908c8986848383838386888c939b988c7d6e5c4a37230f000000000000000000000000000000000000000000000000000000000002090d0e0e0e1221303f4e5d6b7a8a9994857566574e5d6d7c8c96877768594a3b2b1c0e0e0e0e0d0902000000000000000000000f253a4f64799097826b56402b160000020e161b1b1b22374c62778da18c76604b36211b1b1a150c0100001b30465b708487786a5b4c3c2c1b0900001d32465a696c6c6c6c6c6c6c6c6c6c6c6c62503c281300081a2a39475051483b2d1f10010000000000000000001e33485d7186938f88827c706c717d8289909385705c47311c001d32465a696c6c6c6c6c6c6c6c6c6c62503c3c464e565d64696e7173747371604c37220d00000000040c151d252d353d464e565e666e7680888f989891846e58432e19001b3045596e839795826e5e4f443e3b3937373637383a3d424b5f748ba08f78634e38230e000000000000000618273544536170808f9c8d7d6f6051423324150600000000000000000000000015293d51646f6a66625e5b58575757595c60656d76808c9a9485746352402e1b0800001f344a5f74889695897d736a65615f61666e7a89999684705d4a36210d00000000000000000000000714202c363f474e53585c60626364646463615f5b57524d463f372e241b0f01000000000000000000000000000012253849566069717980878c9195999b99989898989a9b98938d857a6e60503f2d1a070000000000000000000000000000000000000000000000000000000009151e2323232323303f4e5d6c7b8a999485756657483f4f5e6d7c8d9687776859493a2b23232323231e15090000000000000000000f253a4f64799097826b56402b16000313202a30303030374c62778da18c76604b363030302f291e110100192e425666748489796a5a4a39271502001f344a5f748383838383838383838383806a543f2a150012253748576465594b3d2e1f100000000000000000001a2e425668777d7b746d68788376686d757b7d766754412d1900172a3c4c555757575757575757575751443329323b43495055595c5e5f5e5d5343311d090000030f1820283039414951596169727a838a939b948c857c756a56422d18001e33485d72889c8e79655f5a5653504e4c4c4b4c4d4f52565d68798da18d77634e38230e00000000020506060917263543526170808f9c8e7d6f6051423324160700000000000000000000000e223546545a56514d4e51535454545453525159636e7b8a9a92826f5d4a37241000001d3145596a7b8c85776b6057504c4a4c525c6a7b8ea08d7965503c271300000000000000000000071625323e49525b62686d71747778797979787674706c67615a534a41372c1f0f0000000000000000000000000000091b2b39434d565d656c72777c808487898b8b8b8b8987837d7870675d5042322210000000000000000000000000000000000000000000000000000000000818263138383838383f4e5d6c7b8b999585756657483931404f5e6e7d8d9687776758493a38383838383126180800000000000000000f253a4f64799097826b56402b16000f21313d45464646464c62778da18c76604b46464646443c2f1f0d0013263848566573848978675644321f0c001f344a5f748b98989898989898989895806a543f2a1500192d4255667576695b4c3d2e1e0e00000000000000001326394a596468666059687c8f7b6759606768635949382512000d1e2e3a41424242424242424242423e3426161f272e353b404447484a48484135261401000413212b343c444c545c646d757d868e96978f888078706961594c3a2713001f344a5f748ba08b8079746f6b686563626160626264676b717987979886725e4a35200b0000020e161b1b1b1b19172534435161707d8e9d8e7d6f61514233251607000000000000000000000f1e2b37424b535a5f6366686a6a6a6a686764625e5d6b7b8d9e8d7a67533f2b17030016293b4c5d6e807466594e433b3735373f4c5e71869a94806a55402c1601000000000000000005162534434f5b656e767c83878a8d8f90908f8e8c8986827b756e665d544a3d2c1a0700000000000000000000000000000d1b27303a424a51575d62676b6f71737474747473706e69645d544b3f3223140400000000000000000000000000000000000000000000000000000000132536444c4e4e4e4e4e5d6c7b8b9a958676665748392a223140505f6e7d8e96867667584e4e4e4e4e4c4436251300000000000000000f253a4f64799097826b56402b1600192c3e4f595b5b5b5b5b62778da18c76605b5b5b5b5b584d3c2a16000a1c2c3b47556575868673614e3b2713001f344a5f748b8b8b8b8b8b8b8b8b8b8b806a543f2a15001b30465b708487796a5b4c3c2c1b0a00000000000000091b2c3b475053524c5b6f8396836f5b4c525350473b2c1a080000101d262c2c2c2c2c2c2c2c2c2c2c2a2216080b131a21272b2f32333433332e24170800001022323e4750586068707882899199928a837b736c645c554d463c2e1d0b001f344a5f748ba09a948e8984807c7a787776767777797c80868d97998b7a6956432f1b06000313202a303030302e271b25334251606f7d8d9c8e80706151433425160800000000000000000c1d2d3c49545f676e73787b7d808080807d7c7977736e696f829597836f5b46321d08000c1d2e3f50616c6556493c31282220232f42576b829698836d58432e190300000000000000001223344352606d78828a91979894918f8f8d8d8f90939796908a837a70675b4a36220e0000000000000000000000000000000a141d262e363d43494e52565a5c5e5f5f5f5f5e5c5955504941382e22140500000000000000000000000000000000000000000000000000000000001b2f43546163636363636c7b8b9a95867667635e503e2a293d4f5e63636f7d8f9586766763636363636154432f1b00000000000000000f253a4f64799097826b56402b16001e33485c6d707070707070778da18c767070707070706b5945301b001427394a59646b6c7a8e7d6a56422d19001f34495d7074747474747474747474747467533e291400192e425666748389796a5a4a39271502000000000000000e1d2a343b3e3d4d62768b9f8b76624e3d3e3b34291d0e000000000a121717171717171717171717150f05000000060d12171a1d1e1f1e1e1a1207000000192d3f505b636b737c848c95958d867d766f67605850494139322a1e1000001f34495e73899e8c848b92979593908f8d8c8c8c8d8f91959a9890877a6c5d4b39271300000f21313d4546464643392b1a24334251606f7d8d9c8f80706152433426170800000000000005182a3b4b5966727a83888d91939595959594928f8c88837d77788d9e8a74604b36210c00001121324250575347382b1e140d0b152a3f546a809599846e58432e190300000000000000091c2f415261707d8b9598908984807b79787777787b7d82878d93968d847965503b261100000000000000000000000000000000010a131b22292e34393e414447484a4a4a4a484744403b352e251b10040000000000000000000000000000000000000000000000000000000000001f34495e7278787878787c8b9a9986787878786d59442f2d43586c7878787880909586787878787878725e49341f00000000000000000f253a4f64799097826b56402b16001f344a5f74878787878787878fa28e87878787878787725c47321d001b2f435768778082808986705b46301b001a2e41515d5f5f5f5f5f5f5f5f5f5f5f5f58493724100013263848566473838978685645321f0c00000000000000000d182126293b50667b909f917b66503b292620170c000000000000000000000000000000000000000000000000000000000000000000000000000000001e33485c6e7780888f9890898279726a635b534c443c352d261e160d0000001c31465b70859a917c767c83888c8f92949597979594928f8a847c74695d4e3f2e1c0a0000192c3e4f595b5b5b5649382515243242515f6e7d8c9b8f80706152443526170800000000000f223547596977848f979b96928f8d8c8c8c8d8f90929598928c85889d8e78634e39240f0000041524333d423f36291b0d010000152a3f546a809599846e58432e1903000000000000001125394c5e70808f9c90857c746f6a67646362636466686d72788088918975624e3a251000000000000000000000000000000000000000070e141a1f24292c2f32333434343433322f2b26211a120800000000000000000000000000000000000000000000000000000000000000001f344a5f748b8f8f8f8f8f9ba89c8f8f8f8f866f5a442f2e43586e848f8f8f8f95a4958f8f8f8f8f8b745f4a341f00000000000000000f253a4f64799097826b56402b16001f344a5f748b9b9b9b9b9b9b9b9b9b9b9b9b9b9b9b88725c47321d001f34495e72869497959687705b46301b0011233341494a4a4a4a4a4a4a4a4a4a4a4a453b2c1a08000a1c2d3c48556474868674614e3b2713000000000000000000050c1124384d6174858a8474614e3924110c040000000000000000050d1213100900000000000001070b0f11131313110e0a050000000000000000001f344a5f74889099a1907d766f67605850484139312a221a130b0300000000182d41566a7d93988572686d7276797c7d80828280807c7975706960574c3f3021100000001e33485c6d7070706754402b1614233241505f6d7c8c9a8f80706153443526180900000000162a3e51647688969a8f87827c79777776777778797c8084888d9397a59079644f3a250f000000061521292c2b24190b00000000152a3f546a809599846e58432e190300000000000000182c4055687b8e9e8e807268605b5e6163666667676664625f646b747d806c5946331f0b00000000000000000000000000000000000000000000060b1014171a1c1e1f1f1f1f1e1c1a16120c06000000000000000000000000000000000000000000000000000000000000000000001f344a5f748b939393939393939393939393866f5a44332e43586e849393939393939393939393938b745f4a341f00000000000000000f253a4f64799097826b56402b16001f344a5f748686868686868686868686868686868686725c47321d001f344a5f74899aa09f94826d59442f1a000515232e3434343434343434343434343431291d0e000014273a4b5a656c6c7a8e7d6a56422d1900000000000000000000000a1e32455766717470665745321e0a0000000000000000010c18212728241c10020001090f161b20242728292827231f191209000000000000001e33475b6b747c858d95928a837b736c645c544d453e362e261f170d00000013273b4f6376899c907d6e605d616567696a6b6b6b6a6764605b554d443a2e2112030000001f344a5f748787836c57422c1716162332414f5e6d7b8b9a8f8071625344362718090000001b3045596d82949b8b7c726c676462626062626365686b6f73787d889c8f79644f3a250f00000000040e14171610070000000000152a3f546a809599846e58432e1903000000000000001c31465b70849893806f62676b707376787a7b7c7c7b797774706a626b70624f3c2916030000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001f344a5f747c7c7c7c7c7c7c7c7c7c7c7c7c7c6f5a50463d43586d7c7c7c7c7c7c7c7c7c7c7c7c7c7c745f4a341f00000000000000000f253a4f64799097826b56402b16001e33475b6b6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6a5945301b001c3146596c7c878b8a837564513e2a16000005111a1f1f1f1f1f1f1f1f1f1f1f1f1f1d160c0000001b30445769778283828986705b46301b00000000000000000000000215283948545c5f5c5448392815020000000000000006131e29343c3d382e200f0d151d242a3035393c3e3e3e3c38342d261c11050000000000182b3e4e5861697179828a92978f88807770686059514a423a322a1e1000000c203346596c7d8f9d8d7d70655b5352545556565654524f4c505459564a392713000000001f344a5f748b98836c57422c2b2b2b2b2b31404f5e6c7b8b999082716254453627190a00001e33485e73889d927d6c5f57524f4d4c4b4c4c4e5053565a5e64758a9e8d77624d38230e00000000000000000000000000000000152a3f546a809599846e58432e1903000000000000001f34495e73899e8c7771767b8285888c8f90919391918f8d89857d756b5e534432200d0000000000000000000000000005090d0f111313131312110e0b0804000000000000000000000000000000000000000000000002070a0c0d0d0d0b08030000000000000000000000000000001c314457646767676767676767676767676767636b63594f4651616767676767676767676767676767645744311c00000000000001010f253a4f64799097826b56402b1600182b3e4e585f7072675c5a5a5a5a5a5a5a5b66717160574c3c291600162a3d4e5e6a7274746f65574735220f0000000000000000000000000000000000000000000000001f34495e73879598979887705b46301b0000000000000000000000000a1b2a3741474a4741372a1b0a00000000000000061624303b4750534b3e2d1b212931383e444a4d51535353514d4841392f231608000000000f20303c454d555d666e767d878f97938c847c746d655d564e463c2e1d0b0004172a3d4f607182919c8f82776e67605c59575657585a5c6064696e6856422e19050000001f344a5f748b98836c57424040404040404040404e5d6c7a8a9990827263544536281806001f344a5f748ba08f78644f433e3a3837363737393b3d414c5a6b7d909c88735e4a35200b00000000000000000000000001010101152a3f546a809599846e58432e1903000000000000001f344a5f748b9f8980868b9095928f8d8b89888888898b8d909792897c6d5c4a37230f00000000000000000000070e141a1e21242628292929272623201d18130d070000000000000000000000000000000000020a11171b1f21222222201d181108000000000000000000000000001528394750525252525252525252525252525f7080766c62594e4e52525252525252525252525252525047392815000000091115161616253a4f64799097826b56402b16000f203041566a7c85796e63584d444d58636d78837d6c57422e1e0c000d2030404d575d5f5f5b5347392917050000000000000000000000000000000000000000000000001f344a5f74899a9f9e93826d58442f1a000000000000000000000000000c1a252e3234322d251a0c0000000000000000122434424d5964685c4a382b343d444c53595e636668686866625c554c413426170700000002121f29313a424a525a636b737b848c949890898279716962594c3a271300000d1f3142536372828e9a958b827b75716e6c6b6c6c6f7275797d83715d4834200c0000001f344a5f748b98836c575656565656565656565656565c6b7a8998908272635446362310001e33485d72889c927d6c5e544d48444242414244484d545d6a78899a93806c5844301b07000000000000000000040d1416161616162a3f546a809599846e58432e191616120b000000001e33485d72889c94948e8984807c797774737272727374777b838f9a8c7966523e291400000000000000000a131b22292e33363a3b3d3e3e3e3c3b3835322d28211b130b02000000000000000000000000000c161e252b30343637373735322c251b100300000000000000000000000a1b2a353b3c3c3c3c3c3c3c3c3c3c3c3f54697c8f8980756b61584e443c3c3c3c3c3c3c3c3c3c3c3c3b352a1b0a00000f1b252a2b2b2b2b3a4f64799097826b56402b160002172c41556978868c82756a60555f6a75808b87796a57422d180300021222303b43484a4a4740362a1b0b000000000000000000000000000000000000000000000000001c3146596c7c868b89837464513e2a1500000000000000000000000000000812191e1f1e1912080000000000000000001a2e41525f6b76796756453e47505860676d73777b7c7d7c7b7770685e524435251403000000010d151e262e363e474f575f68707882899199958d867d756a56422d18000002142535455462707c88929b968f8a87848282828384878a8e938c77634f3b27130000001f344a5f748b98836c6b6b6b6b6b6b6b6b6b6b6b6b6b6b6b6b79899791827264533f2a15001b3044586d80939c8b7c7068615d5a57575657595d6168707b889798887563503d2915010000000000000000071521282b2b2b2b2b2b3f546a809599846e58432e2b2b2b261e110200001b2f44586d8294988379746f6b676462605e5d5c5c5e5f626770829596826c57422c1702000000000006121d262f363d43474b4f505253535352504e4a46413c362f271e150b01000000000000000000000f1d2932394045494b4c4c4c4b4640382d21130300000000000000000000000c18212627272727272727272727283d5164727d8a92897d756b61574d443a2f27272727272727272621180c00000c1d2d393f40404040404f64799097826b56402b16000012263a4c5a67758390887d7267727c88918376685b4d3b281400000004121e282f333434322c24190c0000000000000000000000000000000000000000000000000000162a3d4e5e6a7174746f65564634210e00000000000000000000000000000000000000000000000000000000000000001f34495d707c8885736353515b636c747b82888d90939493908c857b7062534332200e0000000000020a121b232b333b444c545c646d757d868e969992846e58432e190000000717273644525f6a757d878e94999b9997979798999c9995908b7d6a55402b160100001f344a5f748b9883828282828282828282828282828282828282828ea091836c57422c170015293d50637587959a8e847c76726f6c6c6b6c6e71767c848d9997897969584633200d0000000000000000031525333d40404040404040546a809599846e5843404040403a2f2010000015293d51647689998f827469615a55504d4b4a4a4b4d50555c6a7d9497836c57422c1702000000000a17242f39434b51575c606466676868686765635f5b56504a433b31281e120400000000000000000a1c2d3b454d545a5e606262625f5b544a3e312110000000000000000000000000050d111212121212121212121222354655606c77849092887d746a60574d402f1d121212121212110d05000000172a3b4a5456565656565664799097826b56402b1600000a1d2e3c4a576471808d8f8579848f8e807265584b3d2f1e0b00000000010b141b1e1f1f1d1811070000000000000000000000000000000000000000000000000000000d1f30404d575d5f5f5b5347382817050000000000000000091115161616161616161616161616161616130d030000001f34495e71849691827163646e7780888f9695918f8d8d8f9298988e8071614f3d2b180500000000000000070f172028303840495159616a727a838b93846e58432e190000000009182634414d58626b7379808487898b8b8b8a898784807b767065523e2a150000001f344a5f748ba097979797979797979797979797979797979797979ba098836c57422c17000e21344658687785909997908b87848382828384878b9098999085786b5c4c3a29170400000000000000000d2033435056565656565656566a809599846e5856565656554d3e2d1a06000e213447596a7a8a9792877d756f696563605f5f6062656970798899907d69543f2b16010000000a192835414c565e656c7175787b7c7d7d7d7c797774706b655e564e443b30221100000000000000001226394b5961686f7376777777746f675c4f3f2e1b08000000000000000000000000000000000000000000000005172837434e5a66727d8a9591887d736a5e4c39240f00000000000000000000001d324659686b6b6b6b6b6b6b799097826b56402b16000000101e2c394654616e7c8a978f968a7c6f6255473a2d1f11000000000000000000000000000000000000000000000000000000000000000000000000000000000000000212222f3a43484a4a463f36291a0b00000000000000000f1b252a2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2820150600001b2f425467788a9a90827477828a938f8984807c797877797d848d998f806d5a4734200c000000000000000000040c141c252d353d464e565e666f7780846e58432e190000000000091723303b464f575f656a6f72747474747473716e6b66625c544736230f0000001f344a5f748b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b836c57422c17000417293a4a5966727d868d93979b9998979798999b97938d867d73675b4d3e2e1d0b00000000000000000013273c50616b6b6b6b6b6b6b6b6b809599846e6b6b6b6b6b6a5c4a36210c0005182a3c4c5c6b78859099918a847d7a777674747677797d848c97918372604d3a26110000000819283746535e69727982868b8e919394949392908d89858079726a61574d402f1c0800000000000000162c405568757c83888c8d8d8d89847a6d5d4b3824100000000000000000000000000000000000000000000000000a1925313d4854606c7784909a90877c67523c271200000000000000000000001f344a5f7482828282828282829097826b56402b16000000000e1b283643505e6b78868b87796c5f5144372a1c0f01000000000000000000000000000000000000000000000000000000000000000000000000000000000000000004111e272e333434322c23180b00000000000000000c1d2d393f4040404040404040404040404040403c3224140200122537495a6b7b8b9892868b9089827a756f6b676463626468707b8a9a8a7763503b2713000000000000000000000001091119212a323a424b535b636b746a57422d1800000000000006121e29333b434b51555a5c5f5f5f5f5f5e5c5956524d4841372919060000001f34495d7074747474747474747474747474747474747474747474747474746955412c1700000b1c2c3b4955606a72787d838688898b8b898886837d78726a60564a3d2f201000000000000000000000152a3f546a8082828282828282828296998582828282828278634e38230e00000c1e2e3e4d5b67737c868d939893908d8c8b8b8c8d8f939790898073645543311e0a000001142536465563707c868e959a94908d8b8b89898b8c8f9397948d867d746a5e4c38230e00000000000000172c41566a7d918d8884838283868f8c7a67533f2a150000000000000000000000000000000000000000000000000008141f2b37434e5a66727d89958573614e3a251000000000000000000000001f344a5f748b979797979797979c97826b56402b1600000000000b182533404d5b68747474685b4e413326190c0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000b141a1e1f1f1d181006000000000000000000172a3b4a545656565656565656565656565656565042321f0b00081a2c3d4d5d6c7a88949a97837a726b645e58524f4e4d4f545d6b7c8f93806a56412c170000000000000000000000000000060e161e272f373f4750585f5a4d3b281400000000000000010c16202830363c4145474a4a4a4a4a484744413d38332d25190b000000001a2e41515d5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5a4c3a26120000000e1d2b37434d565d64696d70727474747372706d69645d564d43382c1f110200000000000000000000152a3f546a809597979797979797979fa09797979797978f78634e38230e00000010202f3d4a56606972787d84888b8d8f8f8f8d8c8987827c756c6155463726140100000b1e3143546473828e99958c86807b77767473747477797d8389909891887b66503b26110000000000000013273b4e61758079736f6c6b6d728094826c57422c170200000000000000000000000000000000000000000000000000020d1925313d4854606c77837a675644311e0b00000000000000000000001f344a5f748b8b8b8b8b8b8b8b8b8b826b56402b160000000000000815222f3d4a585f5f5f584b3d3023160800000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001d324659686b6b6b6b6b6b6b6b6b6b6b6b6b6b6b604e3b261100061727353f4e5c6976828c96968e878078726c66605a534c444d5f728680786a56412c1700000000000000000000000000000000030b131b232b343c444a473d2f1e0b000000000000000000030c141c22272c3032343434343433322f2c28241f191208000000000011233341494a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a463c2e1d0a000000000d1a26313a42494f54585b5d5f5f5f5f5d5b58544f49423a31261b0e010000000000000000000000152a3f546a808b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b78634e38230e00000002111f2c38434d565d646a6f727577787878777674716d6861594f443728190800000013273a4d607283929a8d8278706b6663605f5e5f606265696e747b848d8773604d39240f000000000000000b1f324559696d687576747373778394806b56412c170200000000000000000000000000000000000000000000000000000008131f2b37434e5a66716f5c4a3826140200000000000000000000001f34495d70747474747474747474747468543f2a150000000000000004121f2c3a454a4a4a453a2d1f12050000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001f344a5f7482828282828282828282828282827d68533e2913000f23354551565658646f79838a9299948d87827a746e67605850576a716a645c4d3b27130000000000000000000000000000000000000008101820283134322b1f1100000000000000000000000000070e13171b1d1f1f1f1f1f1e1c1a17130f0a04000000000000000515232e343434343434343434343434343434343434343434343434343434322a1e1000000000000008141e272e353b3f4346484a4a4a4a4846433f3b352e271e14090000000000000000000000000014293e53677474747474747474747474747474747474747472614c38230d00000000010e1b26303a424950555a68696263636362615f5c58534d453d3226190a00000000192d42566a7d909b8b7c6f645d5f626567696a6b6b6a6866636068707a7d6a5744311e0a000000000000020d16293b4b56586b808c8b89898c8f857664513d28181008000000000000000000000000000000000000000000000000000000020d1925313c48545e5d513f2d1b090000000000000000000000001a2e41515d5f5f5f5f5f5f5f5f5f5f5f594a3925110000000000000000010e1c283134343431281c0f02000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001f344a5f748b959191919191919191919191947d68533e291300152a3e52636b6b6b685c666f767d858c9298958f89837b746c6358595c5750493e2f1e0b000000000000000000000000000000000000000000050d151c1f1e180e010000000000000000000000000000000000000000000000000000000000000000000000000000000005111a1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1d170d0000000000000000010b131a21262b2e31333434343433312e2b26211a130b01000000000000000000000000000010243749585f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5e5444311e0900000000000009141d272e35415466777c72685f554d4c4a47433f39322a20150900000000001d32475c70869a917d6d656b6f7377797c7d808280807d7b78736d66676c5f4d3a271401000000000008142029323a41475063778b838082807b736758473a332c241b120800000000000000000000000000000000000000000000000000000008131f2b36424948403222100000000000000000000000000011233341494a4a4a4a4a4a4a4a4a4a4a463b2d1b09000000000000000000000b151c1f1f1f1c150b0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001f344a5f74898c7b7b7b7b7b7b7b7b7b7b7c937d68533e291300172c42576c828282745f535b636a70777d84898f96978f8880756a5e51433b352d20110100000000000000000000000000000000000000000000000000000000000000000000000000070b0b0b0b08020001060a0d10121313131313110e0b07010000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000060c1116191c1e1f1f1f1f1e1c1916110c060000000000000000000000000000000000081a2c3b454a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a49433626150200000000000000010a131c32475c71838f857b72675e544a41372d241e160d030000000000001f344a5f74899f8b76757a8085898c9093949597959593918d8882796e615141301e0b00000000000b1926323c464e555b60646f838a766b6a66625f5a544e4740372e251a0f030000000000000000000000000000000000000000000000000000020d19252f34332d221404000000000000000000000000000515232e343434343434343434343434322a1d0f00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001c31465a6e82938479716c6766666666677c937d68533e291300172c42576c83978b745f4a474e555c63696f757a8288989c93887c6f61524332210f020000000000000000000000000000060b0d0d0d0c0800000000000000000000000000000006121b202121201d1510161b1f23252729292929282623201b160f0700000000000000000000000000000000050a0e12141718191919171614110d09040000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000e1d293134343434343434343434343434343434343434342f25180900000000000000000000001b3045596a76828e8f857a71675d544a40362b1c0b000000000000001f344a5f748a9f8983898f94918e8b8987868484848687898d93958c80705e4c382410000000000b1b2937444f5962697075787b7d907d7d7c7a77736f69635b534b41372d21130300000000000000000000000000000000000000000000000000000007121b1f1e19110500000000000000000000000000000005111a1f1f1f1f1f1f1f1f1f1f1f1f1d170c0000000000000000000000000000000002080c1012141515151413100c08030000000000000000000000000000000000060b0b080100000000000000000000000000000000000000000000000000000000000000000000000000000000172b3e516474838f8d86827c7874706b677c897d68533e291300172c42576c83988b745f5456585b5f63686d747a828a958a909a8e8070604f3e2c190600000000000000000000000003101a20222222211c13070000000000000000000000000616242f353636363128242a2f34383b3c3e3e3e3e3d3b3835302a231a10040000000000000000000000050c13191f23272a2c2d2e2e2e2c2b2926221d18120c050000000000000000000000000000000000060b0f131618191a1a1a191715120e0a050000000000000000000000000000000000000c161d1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1b130800000000000000000000000016293c4c5965707c88948e847a70665d53483a2815020000000000001e33485d71879b98908a86807c787673706f6e6e6e6f707377808c9c8e7b67533f2a15000000081929394755616c757d858a8e91939a949493908d88847d776f675e544a3e31200e000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000810161c212527292a2a2a2a2825211c1711090100000000000000000000000009121b20201c14080000000000000000000000000000000000000000000000000000000000000000000000000000000f2235465665717b838a8f918d8986807972737365513d281300172c42576c83988b74686a6b6d7074787c83888f958c83787d8b998f7d6d5b4936230f00000000000000000000000212212d3537373736302516060000000000000000000000122434424a4b4b4b4539393f44494c50525353535352504d4a453e362d2215070000000000000000040e1820272e33383c3f414243434342403e3b37322d2620181007000000000000000000000000060e141b2024282b2d2e2f2f2f2e2c2a27231f1a140d0600000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000c1e2e3c47535e6a76828e978d847970665845311c080000000000001a2e43576b8092998575706b6763605e5c5a5958585a5b5e636d809497826c57422c17020001142637475765727d89929998938f8c8b8b8b8c8e919598928b837a71675c4f3e2b170000000000070b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0a040000000000000911151616161616161616161616161616161616151008000000000000000009131c242b3136393c3f3f3f3f3f3d3a36312b251d140a00000000000000000007131c262e3535302618080000000000000000000000000000000000000000000000000000000000000000000000000000081a2d3f4f595f686f75797d82868a8f8e867969574836220e00172c42576c83988b7d7d80828386898d9297928a82796f656d7a8a9b8b7865523e2b1602000000000000000000000d1f303f494c4c4c4b4234241100000000000000000000001a2e41525e60606057474d53595d616467686868686766635e5952493f332516060000000000000a16212b343b42484d51545657585858575553504c47413b342c231a1005000000000000000005101921292f35393d40424344444443423f3c38332e28211911080000000000000000000000000000050a0e11141617191919181714110d0802000000000000000000000000000000000000000000101e2a35414d5964707c8894968d83745f4a341f0a00000000000014283c4f627486969284776d655e5954514f4e4e4f515458606c809497826c57422c1702000b1e314355657584919c938a837d797674747476787b80868c93978e84796d5a46311c00000006121b20212121212121212121212121212121212121212121212121212121212121212121211f180e010000000f1b252a2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2a241a0d0000000000020f1b262f383f454a4e525354545454524f4b46403830271d11050000000000000616253039414a4a4336261402000000000000000000000000000000000000000000000000000000000000000000000000001124374a5c6d6d635b6065696d71757a839087735e4a35200b00172c42576c839897949495979897948f8a847d766e655c535c6c7c8f92826e59442f1a050000000000000000000014293c4e5d6262625f52412d1905000000000000000000001f34495d70767675645a61686d7276797c7d7d7d7d7c7a77736d665c514334241200000000000e1b28343e4750565d6166696b6c6e6e6e6c6a6864605b554f483f362d2216070000000000000c17222c353d43494e525557585a5a5a585754514d48423c352d241b1106000000000000000000060d141a1f2326292b2c2e2e2e2d2c2926221d17100800000000000000000000000000000000000000000c18242f3b47535e6a76828e907d6c5a46321d080000000000000c2033455768778693958a8279726d69666463636466696d737c8b9b8e7b68533f2a15000013273a4d607284949b8d82766f6964615f5f5f6063676b71778088929683705c47311c00000616242f3536363636363636363636363636363636363636363636363636363636363636363636332b1f1000000c1d2d393f40404040404040404040404040404040403f372b1b0a0000000413202d38424b535a5f6367686a6a6a6867645f5a544c433a2f2316080000000000122434424c555e5f5444311e0c00000000000000000000000000000000000000000000000000000000000000000000000000182d4154667980766e67615d5a5c606673898c77624c37220d00172c42576c838b8b8b89888785837d7a757069625a5249404e5f71847d756957422e190400000000000000000000182d42576c777777705d48331e08000000000000000000001f344a5f748b8c7b666d757c83888c8f929494949493908d8882796e615241301d090000000e1d2c3945515a636a71767a7d828384848483807c7975706a635b53494034251402000000000f1c29353f4951585e63676a6c6e6f6f6f6e6c6966625d57504941372e2417080000000000010a131a21282e33383b3e404243434342413f3b37312b241b11070000000000000000000000000000000000000006121e2935414d5964707c8573614f3d2a1703000000000000031628394a596875828c96958d88837d7b797878797b7d838890998e80705e4c3824100000192d42566a7d909e8c7c6e635b54504c4a4a4a4c4e52575d646c757d89796653402d190000122434424a4b4b4b4b4b4b4b4b4b4b4b4b4b4b4b4b4b4b4b4b4b4b4b4b4b4b4b4b4b4b4b4b4b4b483d2e1d0b00172a3b4a54565656565656565656565656565656565653493927140000021322313e4a555f676e74787b7d8080807d7c78746e6860564c4034261708000000001a2e41525f687172604e3b2917040000000000000000000000000000000000000000000000000000000000000000000000001b30465b7084928a837b76726f6f70747d8e89745f4b35200b00172c415569747474747373716f6c6965615b554e473e3630415467736b61584b3a27140000000000000000000000192e43586e848d89735e48331e09000000000000000000001f344a5f748b917b77828990928e8a87848383838384878a90958c80705f4c39251100000b1c2c3b4a57636d7780868b909396989999989795928f8a857d776f665c5243311e0a0000000f1e2d3a47525c646c72777c80838486868584827d7b76716b645d544a41352615020000000b141e262e363c42484c50535657585858575653504b463f372e24190c00000000000000000000000000000000000000000c18242f3b47535e6a7468564432200d00000000000000000a1b2c3b4a58646f7982898f94979491908f8f90919397938d857b706152412f1c0900001d32475c70869a94826e5e5147403b3735343437393d42485058616c776f5c4a37241100001a2e41525e606060606060606060606060606060606060606060606060606060606060606060605b4c3a2713001d324659686b6b6b6b6b6b6b6b6b6b6b6b6b6b6b6b6b6757432f1a00000f2031404f5c67727a83898d919495959594918e89837b73695e5244352617060000001f34495d707b857d6b594634210f0000000000000000000000000000000000000000000000000000000000000000000000001a2f435769747d888f908b8786858689908a7d6c5945311c080012263a4c5a5f5f5f5f5e5e5c5a5754514c47403a332b2325384a585e584e453b2d1d0b0000000000030707070707192e43586e849989735e48331e09070707070500000000001f344a5f748b91808a928a847d7874716f6d6c6c6d6f71757c89998f7c68543f2b16000416283a4a596875808a939a958f8b888686848486878a8e9298928b83796f614e39240f00000c1d2d3c4b58646f7880878d91959799999898999794908b86807870675d5344321f0b0000101d27313a424a50575d6165686b6c6e6e6e6c6b6865605a534a41362a1d0e000000000000000000000000000000000000000006121e2935414c585f594a392614020000000000000000000e1d2c3a47525c666e757a808487898b8b8b898886837d7871695e52433424120000001f344a5f74899f8f79655140342b2622201f202124282e353c454f59635f51402e1d0a00001f34495d70767676767676767676767676767676767676767676767676767676767676767676766a56412c17001f344a5f748282828282828282828282828282828282725c47321d00071a2c3e4f5e6d79858f9798928d8b8988898a8d9197978f867b6f6253443524130100001f34495d708395887563513e2c1907000000000000000000000000000000000000000000000000000000000000000000000014283a4b57616b737a808688898b898680776d5f4e3c291602000a1d2e3c464a4a4a4a49484745423f3c37322c261f170f1b2c3a4548453b32281d0f00000000030f171c1d1d1d1d1d2e43586e849989735e48331e1d1d1d1d1c1912070000001f344a5f748b9a938980766f69645f5c5a585757585a5c606a7d9497836c57422d18000d20334658687786929a9087807a7672706f6e6f6f7274787d848b93968c7a66503b2611000417293b4b5a6976828c949a938e8a87858483838486898c9197948c847a70614e392510000d1e2e3a444d565d656b71767a7d808383848483827d79746e675d53483b2c1d0d0000000000000000000000000000000000000000000c18232f3b454a463b2d1b0900000000000000000000000e1c29354049525a60666b6e71737474747372706d69645d554c41342516060000001f344a5f748a9f8f78644f3a2a201a16141314161a20272f3a45526067635b4c3a261200001f344a5f748b8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c836c57422c17001f344a5f748b97979797979797979797979797979788725c47321d001024374a5c6d7c8b97968c847c787573727374777c838a93998d8071625242301e0b00001a2e415365778993806d5b4936241100000000000000000000000000000000000000000000000000000000000000000000000b1d2d3a454e575f666b7072747473706b645b4f41301f0d000000101e2a3234343434343332302d2a27231e18110b04000e1c28303330281f150c000000000413212b3132323232323243586e849989735e48333232323232322e25180900001f344a5f748b8f82756b635b5a5c5e5f5f60626466686b7076849697836c57422d180014293d506375869696897d736b65615d5b5a5a5b5b5c5f64696f76808985715e4b37230e000e2134475869788794998f867d7974716f6e6c6d6e7073777c838a92978d7a65503b261100172a3c4c576069717980868b8f9395979899999896938f89837a7065594a3b2b1a0800000000000000000000000000000000000000000006121d293134322a1d0f000000000000000000000000000b17232d363e464c5156595c5e5f5f5f5e5d5b58544f4942392f231607000000001e33485d72879b927d6958483d342f2b2929292c2f343b424c5763707c786955402b1600001f344a5f748b95959595959599a1989595959595959595959595959595959595959595959b98836c57422c17001f344a5f748b8b8b8b8b8b8b91a3908b8b8b8b8b8b88725c47321d00172b3f5366798b9b9285786f6863605e5c5e5f62676e76828d9b9082705f4d3b28150200122436485a6c7d908b786653412e1c0900000000000000000000000000000000000000000000000000000000000000000000000f1d28323b444b52575b5d5f5f5e5c5751483d31231202000000000d171d1f1f1f1f1f1e1c1b1815120e090300000000000b151c1e1c150c0200000000001022323e4647474747474747586e849989735e48474747474747474136271603001f344a5f74847d706365696c6f717374747677797b7d82858a949b8d7b67533f2a15001a2f43586c80939888776b606064676a6c6f6f70706f6e6b6864636c757a6754412e1b080015293d506376879795887c726a645f5c5a5b5b5c5c5b5e62686e757d8884705d4a37230e001d32465a69737d868d949a9a95918f8c8b8b8b8b8d90959a968d837668594937251200000000000000000000000000000000000000000000000c161d1f1d170c00000000000000000000000000000006101a232b31383d414447484a4a4a494846433f3b352e261c120500000000001a2f43586c80949987756659504944403e3e3f4044494e565f6974828f826b56402b1600001f344a5f74808080808080808da08b8080808080808080808080808080808080808080809098836c57422c17001f34495d70747474747474778da18c767474747474746e5b46311c001c31465a6f8396978573665c544e4b4847484a4d535a636f7c8c9c8f7d6a5744311d090007192b3d4e6072859583705e4b3926140200000000000000000000000000000000000000000000000000000000000000000000000b151f2830373d4246484a4a4947423d352b20130400000000000000000000000000000000000000000000000000000000000000000000000000000000192d3f505b5c5c5c5c5c5c5c5c6e849989735e5c5c5c5c5c5c5c5c5445331f0b001d324659686e6e6e757a7d83858788898b8c8d8f919396999892897d6f5e4c382410001e33485d72879b8f7b696b7074787c8083848687868684827d78726a63665c4b38251200001a2f44586c80939887766a5f6165686c6e70707272706f6d6965616a74796754412e1b08001f344a5f7487909998918b86807c787775747476777b80868f999587776754412e1b0700000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000070f161d23282c2f32333434343433312e2b26211a120a0000000000000015293d51647689999485776c635d585553535356595d636a727b869297826b56402b1600001d314558676a6a6a6a6a6a778da08b746a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a799098836c57422c17001a2e41515d5f5f5f5f5f62778da18c76605f5f5f5f5f5c503e2b17001f34495e73899e907b675649403a3633323335393f47515e6d7d909a8874604c38240f00000d1f31435567798b8d7a685643311e0c000000000000000000000000000000000000000000000000000000000000000000000000020c151c23282d3133343434312e2821180e0200000000000000000000000000000000000000040c1112121212121212121212120f090000000000001e33485c6e72727272727272727284998973727272727272727271624e3a251000172a3b4b5b6a7782898f94979a9c9a9998979593918f8c88847d756c5f51402e1c09001f344a5f748a9f8a747980858a8e92959795949494959696928d877d72645544311e0b00001e33485d72879c8f7a686c7176797d8284868788878786837d79746c62655b4a37241100001d3146596d82948c847c76706b676462605f5f6063666b727b88979685715e4a36210d000000000000000000000004080c10121313131313110e0b07030000000000000000000000000000000000000000000002090e13171a1c1e1f1f1f1f1e1c1916110c060000000000000000000e213447596b7b8b9895898077726d6a6868686b6e72777d868f908b97826b56402b16000016293b4953545454545462778da08b745f545454545454545a5e5e5e5b545454545464799098836c57422c170011233341494a4a4a4a4c62778da18c76604b4a4a4a4a483f32210f001f344a5f748b9f8f78634e3e342e2a2928292b2e3236404f6073879a907b67523e29140000021426374a5c6d80928673604e3b2917040000000000000000000000000000000000000000000000000000000000000000000000000001080e14181c1e1f1f1f1c19140e0500000000000000000000000000000000000000000a1720262727272727272727272727241c1103000000001f344a5f74888888888888888888899b8d8888888888888888887b66503b261100182c4054677989959b948f8b898786848382807d7b7977736f6976746a56422d1803001f344a5f74899f8b888f94908c89868482807d7d7d808284888e98908373614e3a261100001f344a5f748a9f8a757b82868b8f93969594939393949597948f888073655644321f0b0000162a3d51647882787068625c56524f4c4b4a4a4b4d51575f6a788b9f8d79644f3a25100000000000000000030b12181d21252729292929282623201c17110b04000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005182a3c4d5d6c7a87929b938c8783807d7d7d8083878c9292897d8697826b56402b1600000c1d2c373e3f3f3f3f4c62778da08b745f4a3f3f3f3f43586b7373736d5a463f3f4f64799098836c57422c17000515232e34343434374c62778da18c76604b36343434332d221303001e33485d72879b927d6b5b5048433f3e3d3e4043464b50575e6b809596826b56412c17000000081a2c3e50627486907d6b594634210f0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000081928343b3c3c3c3c3c3c3c3c3c3c3c382e2111000000001f344a5f748b9b9b9b9b9b9b9b9b9ba59c9b9b9b9b9b9b9b9b917b66503b2611001c31455a6f8497988980797673716f6e6c6b6a68676462626d7988846e58432e1903001d32475c7085999b8b86807b7773706e6b6a6868686a6b6e727a889a917d6954402b1601001f344a5f73899e8c8a90938f8b888483807d7c7c7c7d8083868d97918473614e3b261200000e2135495c6e6f655c554e47423d3a3736343436383d434c5b70869b917c67523c2712000000000000030d171f262d32363a3c3e3e3e3e3d3b3835312c261f18110800000000000000010d15191a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1a19150d02000000000000000000000d1e2f3f4e5c69747d878e949898959494949598938d867d756f8697826b56402b160000000e1a24292a2a2a374c62778da08b745f4a40404040445a6f868988725c47323a4f64799098836c57422c17000005111a1f1f1f22374c62778da18c76604b36211f1f1e19100400001a2f43586b80929b89796d635c585453525355585b5f656b727a839498846e58432e19000000000f21334556687a8d887563513e2c190700000000000000000000000008131b1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1e190f0300000000000000070b0b07000000000000000000000000000000000000000000000000122537465052525252525252525252524c3f2e1c090000001f344a5f74868686868686868686879a8b8686868686868686867b66503b2611001d32475c72889d907a6b65615e5c5a58575654595e656c75808b98846e58432e190300192d4155697c8f9a88776b66625e5b5857545453535456595e6a7d9497836c57422c1702001d32465b7085989a8a847d7976726f6c6a68676767686a6d71798899917d6955402b16010006192d3f505b5b5855524f4c4a48474644444647484b4f566172879c917b66513c271100000000000914202a333a41474b4f515353535352504d4a45403a332c241b12080000000002121f292e2f2f2f2f2f2f2f2f2f2f2f2f2f2f2f2f2f2f2f2f2f2f29201203000000000000000000001121303e4b57616b73798083878989898887837d78726a626f8282826b56402b1600000000081014151522374c62778da08b745f5656565656565a6f869b88725c47323a4f64798b8b836c57422c170000000006090a0d22374c62778da18c76604b36210b0a09050000000014283c4f62748594988b8077716c6a6867686a6c70747980868e969f99846e58432e1900000000041527394b5d6f8293806d5b4936241100000000000000000000000918252f34343434343434343434343434343434332c2113020000000006121b20201c130b030000000000000000000000000000000000000000001a2e42556367676767676767676767675d4c38240f0000001e33475b6b6f6f6f6f6f6f6f6f6f849989736f6f6f6f6f6f6f6f6e614e39240f001c31465b7085989280716966636262626366696d72798089908999846e58432e19030012263a4d6071839296887c726a635e5a575453535456595d6470829595826b57412c170200182d4155697c8f9b89786b65605d5a5755535252525354585d697d9498836c57422c1702000014283d5265706d6a6764625f5d5c5b5a5a5b5c5e60646a7380909e8b77624e39240f000000000c1a26323d464e555b606466686868686765635f5a554e4840382e251a0f0300000f20303c43444444444444444444444444444444444444444444443d302110000000000000000000000312202e3a454e575f656a6e7073737373706d69645e5754656b6b6b62513d291400000000000000000d22374c62778da08b746b6b6b6b6b6b6b6b6f869b88725c4732394e62737474746955412c17000000000000000d22374c62778da18c76604b36210b000000000000000d20334556677684909a938c8682807d7c7d808386898e94928a829497836c57422d1800000000000a1c2e40526475888b786653412e1c0b0000000000000000000215263643494a4a4a4a4a4a4a4a4a4a4a4a4a4a4a483e31200e0000000616242f35352f271e160e06000000000000000000000000000000000000001c32475c717c7c7c7c7c7c7c7c7c7c7b67523c2712000000182b3e4e585a5a5a5a5a5a5a5a6e849989735e5a5a5a5a5a5a5a595243311e0a00182d4155687a8b988f857d7a78777777787b7d83888d92897d8398846e58432e1903000a1d3042546473828f998f867d77726f6c6a68686a6b6e7278828f9b8b7966523d291400001226394c5f70829197897d736b645f5b5856545456585a5f6670829595806b56412c17020000152a3f546a8083807c7977747270706f6f70717375797d86909e92826f5b48331f0b0000000c1b2a37444f5962697075787b7d7d7d7d7c7a77736f69635b534b41372d21130300182b3e4e585a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a584e3f2d19050000000000000000000002101c28323b434a5055595c5e5e5e5e5c5954504a434752565656514434210e00000000000000000d22374c62778da08b82828282828282828282869b88725c47323345555e5f5f5f5a4c3a2612000000000000000d22374c62778da18c76604b36210b0000000000000003162739495866727d878f959a9794949394959796928c867d768397937d6954402b1600000000000010223446586a7c8f83705e4c3a2816040000000000000000091e3144545e5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5c4f3d2a16020000122434424a4a433a322a2219110901000000000000000000000000000000001d32475c72889393939393939393937c67523c27120000000f20303c4344444444444444586e849989735e48444444444444443f34251402001225394b5d6c7a868e9593908f8d8d8d8f9093928d867d756c8397846e58432e19030001132536465564717d889198928d888482807d7d808284888d9594897c6d5c4936230f00000a1d3041536372828e999087807974706d6b6a6a6b6c6f7379838f998a7865513d2814000000152a3f546a809595928f8c8a88878786868787888b8e939a988e827363513f2c1804000008192a394855616c757d858a8e919394949493908d89847d776f675e544a3e31200e001e33475b6b6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6c5c48341f0a0000000000000000000000000b151f2830363c404447484949484744403b352f363e4040403d3426160500000000000000000d22374c62778da39997979797979797979797979d88725c4732273743494a4a4a463c2e1d0a000000000000000d22374c62778da18c76604b36210b00000000000000000a1b2b3a4855606a737a8085888a8b8b898885827c77716a75899d8d7964503b27120000000000000517293b4d5f70838e7b69574533210f00000000000000000d23384c61727474747474747474747474747474746d5945301b0500001a2e41525e5f564e463e352d251c140c0400000000000000000000000000001d32475c72808080808094868080807c67523c271200000002121f292e2f2f2f2f2f2f43586e849989735e48332f2f2f2f2f2f2b2216070000091c2e3f4e5d68727980848789898a898886837d78726a626c8282826e58432e19030000071828374653606a747c848a8f939797959494959795928e8880766b5e4f3e2c1a07000000122435455463707c868f97948e898683828080828386898e9692887b6c5b4936220e000000152a3f546a80959b8e90939597999b9b9b9b9c9a9895908b847b70635545342210000001142637485765738089929998938f8c8b8b8b8c8e919598928b837a71675c4f3e2b17001f344a5f7486868686868686868686868686868686868686868676604b36210b00000000000000000000000000020c141c22272c2f3233343433312f2b26211b232a2b2b2b292116080000000000000000000d22374c62778da18e888888888888888888888a9c88725c47323144535c5c5c5c574a382511000000000000000d22374c62778da18c76604b36210b0000000000000000000d1c2a37434e575f666b6f7274747474726f6c68635d6d80929885715d4a36210d000000000000000c1e2f415365778a877463513f2d1b09000000000000000e23384e63788b8b8b8b8b8b8b8b8b8b8b8b8b8b87705b46301b0600001f34495d70726a615951494038302820170f070000000000000000000000001a2f4356666a6a6a6a7d94866f6a6a695f4d39251000000000010d15191a1a1a1a1a2e43586e849989735e48331e1a1a1a1a1a170f05000000001021303f4b565f656b6f717373747372706d69645d5652636b6b6b6453402b17020000000a192836424e57616970757a7d82848686868483807c78736c645a4e4031210f000000000617273645525e69737b83898e929597979595979794918c8680756a5d4e3d2c1906000000152a3f546a809597827a7d80838486878787878683807b7670685e53463727160500000b1e314355657584919c938a837d797674747476787b80868c93978e84796d5a46311c001f344a5f748b9b9b9b9b9b9b9b9b9b9b9b9b9b9b9b9b9b9b9b8c76604b36210b00000000000000000000000000000000070d12171a1c1e1f1f1e1c1a16120c060f15161616140e05000000000000000000000d22374c62778da08b74727272727272727272869b88725c4732384d61707272726855402b16000000000307070d22374c62778da18c76604b36210b070602000000000000000c1926313b444b51565a5d667273635d5a57535a69798b9c8e7b6855422e1b070000000000000000122436485a6d8092806e5c4a382614030000000000000e23384e6378808080808080808080808080808080705b46301b0600001f344a5f74867d756d645c544c443b332b231b120a020000000000000000001427384852545454687d94866f5a54544e41301d0a000000000000000000000000192e43586e849989735e48331e0900000000000000000000000312212e39434b51565a5c5e5e5f5e5d5b58544f49434551565656524636241000000000000a1825303b44505d606165696c6e6f6f6f6e6d6b68645f5850473c30221303000000000009182734414c5660686e74797c80838484848382807b77726b63594d3f30200e00000000152a3f546a809597826b686b6c6e6f707070706f6d6b67625c544c413528190a00000013273a4d607284949b8d82766f6964615f5f5f6063676b71778088929683705c47311c001f344a5f7487878787878787878787878787878787878787878776604b36210b00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000050d11121222374c62778da08b745f5c5c5c5c5c5c5c6f869b88725c47323a4f64798888836c57422c170000030f171c1d1d22374c62778da18c76604b36211d1d1c160e0200000000000008141e2830373d43576a778382705f4e505d6a7888989282705e4c39261200000000000000000007192b3d506275888c7967564432200e0000000000000c2135495c686a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6555422d190400001f344a5f748b91898278706860574f473e362e261d150d05000000000000000f223547555b5753687d94866f5a443f3b30231200000000000000000000000000192e43586e848b89735e48331e0900000000000000000000000003101c262f373d41444748484a484846433f3a352e353e4040403e35281807000000000000071324374a5c6e74695e5457585a5a5a5959646f7463513f342a1f1204000000000000000917232f3a434c535a5f64686a6c6e6e6e6c6b6a66635d574f463b2f21120200000000152a3f546a809597826b565657595a5b5b5b5b5a5856524d484242423f362818060000192d42566a7d909e8c7c6e635b54504c4a4a4a4c4e52575d646c757d89796653402d19001e33485c6d7070707070707070707070707070707070707070706d5d49341f0a0000030f171c1d1d1d1d1d1d1d1d1d1d1d1d1d1d1d1d1d1d1d1d1d1d1c170f03000000000000000000000000000c182126272727374c62778da08b745f4a47474747475a6f869188725c47323a4f64799098836c57422c17000413212b31323232374c62778da18c76604b36323232312a1f1202000000000000010b141c232f44596e80928e7c6b5a626e7a88979485746352412f1c09000000000000000000000e203345576a7c8f8573614f3d2b1a080000000000061a2c3e4c545962696f737576777673706b645b5452473725120000001f344a5f748b939b958c847b736b635a524a4139312921181008000000000015293e5265706c65687d94866f5a442f261e130400000000000000000000000000182d42576a7474746f5c47321d0800000000000000000000000000000a131b22282c2f323333343333312e2a26211a22292b2b2b2923180a000000000000000013283d526779867b70655a4f444b56616c7682826f5b46311c0d0100000000000000000006121d27313e49505252535557585858585754514e49433b33291e11030000000000152a3f546a809597826b575757575757575757575757575757575757534636231000001d32475c70869a94826e5e5147403b3735343437393d42485058616c776f5c4a37241100192c3e4f595b5b5b5b5b5b5b5b6d7777776f5b5b5b5b5b5b5b5b5a4f402d1a06000413212b3132323232323232323232323232323232323232323232312b21130400000000000000000000000a1b2a353b3c3c3c3c4c62778da08b745f4a3c3c3c3c44596e7b7b7b715c473c3c4f64799098836c57422c17001022323e46474747474c62778da18c76604b47474747453d301f0e00000000000000081620272b3e516273859689786a74808c9892857566564635231100000000000000000000000316283a4d5f728591806d5a4937251301000000000b1e3041515f6b757d84888b8c8d8c898680776e6254453423100000001e33485d6f7780888f97988f877d766e665d554d453d342c241b13090000001a2e43586c8282796f7d94866f5a442f1a0b01000000000000000000000000000014283b4d5a5f5f5f5d513f2c190400000000000000000000000000000000080e13171a1d1e1e1f1e1e1c1915110c060e14161616140f0600000000000000000013283d526676838d83776c61565d68737d89897b6e5b46311c0700000000000000000000000a1d2f404f5c6467676157494345545f6667655e52433320170c00000000000000152a3f546a809597826c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c64533f2a1501001f344a5f74899f8f79655140342b2622201f202124282e353c454f59635f51402e1d0a000f21313d45464646464646465a6f868d88725c47464646464646453e31221000001022323e4647474747474747474747474747474747474747474747463e32221000000000000000000000001528394750525252525262778da08b745f525252525252526166666662545252525264799098836c57422c1700192d3f505b5c5c5c5c5c62778da18c76605c5c5c5c5c5a4e3d2a16000000000000061726333b40444a5667788a96857d87929b8f8274665748382817060000000000000000000000000b1e304255677a8d8a78665442301e0d0000000014283b4e5f6f7d89918a868382828284888f8b80726352402d19050000192d40515c646b737b838a929a928a82797169605850483f372f261a0c00001f34495d7287958d827d94866f5a442f1a050000000000000000000000000000000b1e2f3d474a4a4a48403222100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000e233648586572808e8a807369707a869186786b5d503e2b170300000000000000000000001125394c5e6d787c7b746756445363727a7c797061503d29150000000000000000152a3f546a80959783838383838383838383838383838383838383836c57422c1702001f344a5f748a9f8f78644f3a2a201a16141314161a20272f3a45526067635b4c3a2612000413212b31323232323232445a6f869b88725c47323232323232312d2316070000192d3f505b5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5b503f2d1900000000000000000000001c31445764676767676767778da08b7467676767676767676767676767676767676767799098836c57422c17001e33485c6e727272727272778da18c767272727272726c5a45311c000000000000102335445054595e646a707d8f92909a94897d71645648392a1a0a00000000000000000000000000011325384a5d6f82948472604e3c2a18060000001b2f43576a7d8e8b7d75706c6b6b6c6f747b8791826f5c48341f0b00001122323f4850585f676f767d868e96958d857c746c635b534b43382a1a08001f34495e727a8088928495866f5a442f1a0500000000000000000000000000000000111f2b32343434332d221404000000000000000000000000000a12171717171717171717171717171717171717171717171717150f0500000000000000000007192b3a4755626f7d8b91867b828d908275675a4d3f32210f000000000000000000000000152a3f54687c8c939186735f4a5b6f828f938e806c58432e190400000000000000152a3f546a8095a098989898989898989898989898989898989898836c57422c1702001e33485d72879b927d6958483d342f2b2929292c2f343b424c5763707c786955402b16001022323e46474747474747475a6f869b88725c47474747474747474034251301001e33485c6e727272727272727272727272727272727272727272726e5c48331e00000000000000000000001f344a5f747c7c7c7c7c7c7c8da08b7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c9098836c57422c17001f344a5f748888888888888890a28f88888888888888725c47321d000000000000172b3f5262696e73787d858c94a09c8b82766b605346382a1b0c000000000000000000000000000000081b2d405264778a8f7d6b59473524120000001e33485d7287907c6c615b575656575a5f68778b8c77624d38230e00000514222d343c444c535b636a7279828a9199908880776f675f5648372411001b2f435461666c7582909b866f5a442f1a0500000000000000000000000000000000010e181e1f1f1f1e19110500000000000000000000000000101d262c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2a2216080000000000000000000d1c2a3744515f6c7987948f958d807164574a3c2f221303000000000000000000000000162b40566b82959f9d8c77624c5e73889ba099856f5a442f1a0500000000000000152a3f546a808b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b836c57422c1702001a2f43586c80949987756659504944403e3e3f4044494e565f6974828f826b56402b1600192d3f505b5c5c5c5c5c5c5c5c6f869b88725c5c5c5c5c5c5c5c5c5243301d09001f344a5f7488888888888888888888888888888888888888888888745f4a341f00000000000000000000001f344a5f748b93939393939397a4969393939393939393939393939393939393939393939998836c57422c17001f344a5f748b99999999999999999999999999999988725c47321d0000000000001a2f445a6f7d83888d939999928b97897766594e4236281a0c0000000000000000000000000000000000102335475a6c809289766553412f1d0b00001f344a5f748b8d7762504844424244474d5c72888f79644f3a250f000000041019212830383f474f565e666d757d858d95938b837a726654402b1600132536444c51586372848b866f5a442f1a050000000000000000000000000000000000000000000000000000000000000000000000000000000d1e2e3a4142424242424242424242424242424242424242424242423e342616040000000000000000000c192634414e5c6976848b897b6e615346392c1e11040000000000000000000000000014293d526577858a88806f5d48596c7d888b877a6955412d18030000000000000014293e536774747474747474747474747474747474747474747474746955412c17010015293d51647689999485776c635d585553535356595d636a727b869297826b56402b16001e33485c6e727272727272727272869b8872727272727272727270604c37220d001f344a5f748b9b9b9b9b9b9b9b9b9b9b9b9b9b9b9b9b9b9b9b9b8b745f4a341f00000000000000000000001f344a5f748b8f8f8f8f8f8f8f8f8f8f8f8f8f8f8f8f8f8f8f8f8f8f8f8f8f8f8f8f8f8f8f8f836c57422c17001f344a5f748484848484848484848484848484848484725c47321d000000000000182d42566a7d929c97928b857d798b95847261503f2d1b0a00000000000000000000000000000000000006182b3d4f6274879482705e4c3a291604001e33485d7186917d6d635d5a5757595c616a798c8b77624d38230e0000000000050d151c242c333b434a525a6169717883989f968e836c57422c170008182631383d4554677474746b58432e190400000000000000000000000000000000000005090b0b0b07010000000000000000000000000000172a3c4c555757575757575757575757575757575757575757575757514433210d00000000000000000000091623303e4b58667374746b5e504336281b0e0000000000000000000000000000000f22364859677074736d6152404e5f6b7274726a5c4c3a2612000000000000000010243749585f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5a4c3a261200000e213447596b7b8b9895898077726d6a6868686b6e72777d868f908b97826b56402b16001f344a5f748888888888888888888a9c8c88888888888888888878634e38230e001f344a5f7486868686868686868686868686868686868686868686745f4a341f00000000000000000000001f34495e72787878787878787878787878787878787878787878787878787878787878787878786b56412c17001e32475a6a6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e695844301b00000000000013263a4e62768a88837c7770696d7d8f90806e5d4a37230e000000000000000000000000000000000000000e203245576a7c8f8e7c6a5846331f0b001a2e43576a7c8d8c8077726f6c6c6e70757d8890806e5b48331f0a000000041019212830383f474e565e656d757c858c94948c847b736754402b16000009151e23293749585f5f5f5b4e3c291500000000000000000000000000000000000711191e2121201c150c010000000000000000000000001d32465a696c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c62503c281300000000000000000000000512202d3b48555e5f5f5a4d403225180b0000000000000000000000000000000006192b3b49545c5f5e59504334414e585d5f5d574c3e2e1d0a0000000000000000081a2c3b454a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a463c2e1d0a000005182a3c4d5d6c7a87929b938c8783807d7d7d8083878c9292897d8697826b56402b16001f344a5f748b9b9b9b9b9b9b9b9b9ba69c9b9b9b9b9b9b9b9b8f78634e38230e001e33475b6b6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6b5b47331e00000000000000000000001b2f435461636363636363636363636363636363636363636363646b63636363636363636363635d4e3b281300182b3d4d575858585858585858585858585858585858564b3b28150000000000000b1f33465a6d77726d68635c55607183948c7a65503b2611000000000000000000000000000000000000000315283a4d5f7285978875634e39240f0014273a4d5e6e7c878f8c8784838384868a91897d7162513e2b180400000514222d343c444b535b626a72798289919891898278706860574938251100000002090e1a2c3b454a4a4a473e301f0d000000000000000000000000000000000c19242d3336363530281f120400000000000000000000001f344a5f7483838383838383838383838383838383838383838383806a543f2a15000000000000000000000000020f1d2a3743494a4a463c2f2215070000000000000000000000000000000000000d1d2c3841474a49453d3325303b44484a48433a2e2010000000000000000000000e1d29313434343434343434343434343434343434343434343434322a1e10000000000d1e2f3f4e5c69747d878e949898959494949598938d867d756f8697826b56402b16001f344a5f74868686868686868686889b8a86868686868686868678634e38230e00182b3e4e585a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a584e3e2b180000000000000000000000132536444c4e4e4e4e4e4e4e4e4e4e4e4e4e4e4e4e4e505a636d77806e5d4e4e4e4e4e4e4e4e4e4a3f301f0c000e1f2f3b42515d656766605546434856606667655c50413a2d1d0c00000000000003172b3e4f5d625e59544e4843546576887b6f604d39240f00000000000000000000000000000000000000000b1d3042556779867c73624e39240f000b1e2f40505e6a737b828688898b8987837d756c61534433220f0000001122323f4850585f676f767d868d95968e867d756d645c544c44392b1a080000000000000e1d2931343434332b2012010000000000000000000000000000000b1b2a3641484b4b4a443b30221202000000000000000000001f344a5f748b989898989898989898989898989898989898989895806a543f2a1500000000000000000000000000000c1a2630343434322a1e110400000000000000000000000000000000000000000e1a252d323434302a21151e282f3334332f271d100200000000000000000000000c161d1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1d170d0000000000001121303e4b57616b73798083878989898887837d78726a626f8282826b56402b16001e33475b6b6f6f6f6f6f6f6f6f6f869b88726f6f6f6f6f6f6f6f6d5e4b37220d000f20303c4344444444444444444444444444444444444444444444433c30200f00000000000000000000000818263138383838383838383838383838383c465059636d76828a8c7a66513c38383838383838362e211201000114293c4f616f797c7b726453435666737b7c796e5f4d3a261100000000000000000e2131404a4c49443f3a333647586a746a5d5142311e0a0000000000000000000000000000000000000000001325384a5d6f7269605545331f0b0000122232404c5760676c7073747473716e6962594f4335261604000000192d40515c646b737a838a929a938a8279726961595149403830271b0d00000000000000000c161d1f1f1f1e180f020000000000000000000000000000000417293948545c60605f584e40301f0d000000000000000000001f344a5f748b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b806a543f2a1500000000000000000000000000000009141b1f1f1f1d170d01000000000000000000000000000000000000000000000812191d1f1f1c160e040c151b1e1f1e1a140b0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000312202e3a454e575f656a6e7073737373706d69645e5754656b6b6b62513d291400182b3e4e585a5a5a5a5a5a5a5a6f869b88725c5a5a5a5a5a5a5a5950412f1c0800172a3c4c5557575757575757575757575757575757575757575757554c3c2a1700000000000000000000000009151e2323232323232323232323313b454f59626c76808a93887c70624f3a26232323232323211b1003000000182d42576c808d938f83705c4a5f738590938c7c6954402b1500000000000000000313222e3537342f2b251f2a3b4c5a5f584c4033241301000000000000000000000000000000000000000000081b2d3f515d5e564d433727160300000414222f3a444c53585b5e5f5f5e5c59544e463d32251708000000001e33485d6f7780878f97978f8780766e665e564e453d352d251d140a000000000000000000000000000000000000000000000000000000000000000000000d2134465766707676736b5e4e3c2916010000000000000000001f34495d70747474747474747474747474747474747474747474747467533e2914000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000060c1011110f0a04000000000000000000000002101c28323b434a5055595c5e5e5e5e5c5954504a434752565656514434210e000f20303c43444444444444445a6f869b88725c47444444444444443e32231200001d32465a696c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c695a46321d0000000000000000000000000002090d0e0e0e0e0e0e0e0e1f31424e58616c758089938e82766a5e5344321f0e0e0e0e0e0e0c070000000000192e43586e84989f9b89735e4b60768c9c9f96826b56402b1601000000000000000004111b20221f1b16110c1d2e3c464a453b2f221506000000000000000000000000000000000000000000000010223240484943393026190a0000000004111d2730383e4346484a4a484744403a322a20140700000000001f344a5f748b939b948c847b736b635b524a423a322a2119110901000000000000000000000000000000000000000000000000000000000000000000000013273c506375838b8c887c6c5945301c070000000000000000001a2e41515d5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5849372410000000000000000000000000020e161b1b1b1b1b1b1b1b1b1b1b1b1b1b1b1b1b1a150c00000000000b1418191919191919191919191919191919191712090000000000030b0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0e0901000000000005111a21252626241f170d0100000000000000000000000b151f2830363c404447484949484744403b352f363e4040403d342616050002121f292e2f2f2f2f2f2f445a6f869b88725c47322f2f2f2f2f2f2a21140500001f344a5f7483838383838383838383838383838383838383838383745f4a341f000000000000000000000000000000000000000000000012273b4e606b7580899294887c7064594d4135261503000000000000000000000000172c4155697a868b887d6d59485c6f80888a857866523e29140000000000000000000000070b0d0b06000000101e2a323431291d11050000000000000000000000000000000000000000000000000414222d33342f261d1409000000000000000b141d24292e3133343433322f2b261f170d020000000000001f344a5f748b91898078706860574f473f372e261e160e060000000000000000000000000000000000000000000000000000000000000000000000000000152a3f546a8093a0a19b88735e48331e0900000000000000000011233341494a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a453b2c1a0800000000000000000000000313202a30303030303030303030303030303030302f281e10000001111e282d2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2c261b0e0000000a161f2425252525252525252525252525252525231d14070000000716222d353a3b3b39332a1f12030000000000000000000000020c141c22272c2f3233343433312f2b26211b232a2b2b2b29211608000000010d15191a1a1a1a1a2f445a6f868b88725c47321d1a1a1a1a1a160e040000001f344a5f748b98989898989898989898989898989898989898988b745f4a341f0000000000000000000000000000000000000000000000152a3f54697d8892998e82766a5e52473b2f241708000000000000000000000000001226394b5c697174736b5f4f4051616c737471685a4936230f00000000000000000000000000000000000000000d171d1f1d160c0000000000000000000000000000000000000000000000000000000511191e1f1b130a0100000000000000000001090f15191c1e1f1f1e1d1a16110b0300000000000000001f344a5f74867d756d645c544c443b332b231b130b0200000000000000000000000000000000000000000000000000000000000000000000000000000000142a3f54687d8f999b9586725d48331e080000000000000000000515232e34343434343434343434343434343434343434343434343431291d0e0000000000000000000000000f21313d4546464646464646464646464646464646443b2e1e0c000e1f2f3b424343434343434343434343434343434341392c1c0a0009192733393a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3831251605000516253440494f50504d473d3021110000000000000000000000000000070d12171a1c1e1f1f1e1c1a16120c060f15161616140e05000000000000000000000000192e43586b7474746e5b46311c07000000000000000000001f344a5f748b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b745f4a341f000000000000000000000000000000000000000000000013283d5163758893887b7064584c4135291e120600000000000000000000000000000a1c2e3e4c565d5f5e584e41334250595e5f5d554a3c2b19070000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001f34495d707269615951494038302820180f070000000000000000000000000000000000000000000000000000000000000000000000000000000000000011253a4d60707d858682776856422e1a060000000000000000000005111a1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1d160c00000000000000000000000000192c3e4f595b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b584c3b281500182b3d4d5758585858585858585858585858585858554a3a271400142637454e4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4d433423100010223443525d646666625a4e3f2f1d0a0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000015293c4e5b5f5f5f5c503e2b1703000000000000000000001f34495d7074747474747474747474747474747474747474747474705d49341f00000000000000000000000000000000000000000000000e213446586a7c82756a5e52473b2f23180c000000000000000000000000000000000010202e3a43484a48443c3124323d45494a4842382c1e0e00000000000000000000000002080c1014161719191a1a1918171513100d090500000000000000000000000000050d1112121212121212121212121212121212110c040000000000050d1112121212121212121212121212121212110c040000001a2e41515d5d564e453d352d251c140c040000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000a1e314352606a6f706d665a4a3926130000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001e33485c6d707070707070707070707070707070706a58442f1a001e32475a6a6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6857432e1a001b30435562646464646464646464646464646464646052402c1800182c3f52616f787b7b766c5d4c392611000000000000000000000000000000000000000000010a11131313131008000000000000000000000000000000000000000d1f303e474a4a4a483f32210f00000000000000000000001a2e41515d5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5d51412e1a00000000000000000000000000000000000000000000000517293b4d5f707064584c4135291d120600000000000000000000000000000000000002101d272e33343330291f15202a303434332e261b0e0000000000000000000000070f161c2125282b2c2e2e2f2f2e2e2c2b2825221e1a140e070000000000000000000c18212627272727272727272727272727272727262016090000000c18212627272727272727272727272727272727262016090000112333414949423a322a211911090100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000d20324455667678705d52483c2c1b0900000000000000000000000000000000000004080a0b0b0b0b090603000000000000000000000000050f161a1d1c1a140c02000000001f344a5f7487878787878787878787878787878787705b46301b001f344a5f7484848484848484848484848484848484705b46301b001f34495e73797979797979797979797979797979796f5a45301b001e33475b6f808d91908a7b6955402c17000000000000000000000000000000000000000004121e2528292928241b0f0100000000000000000000000000000000000112202b33343434332d221303000000000000000000000011233341494a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a49413323110000000000000000000000000000000000000000000000000c1e3042525d5d52463a2f23170c000000000000000000000000000000000000000000000a131a1e1f1e1b150d030d161b1f1f1e1912090000000000000000000005101a232a31363a3d404243434444434342403d3b37332e29221b13090000000000000a1b2a353b3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3b33271807000a1b2a353b3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3b33271807000515232e34342e261e160e06000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000014283c4f61738486725e49362b1e150f070000000000000000000000000000060d14191d1f212121201e1b18130e0801000000000000000a17222a2f32322e281f14050000001f344a5f748b9898989898989c9c98989898989887705b46301b001f344a5f748b999999999999999999999999999987705b46301b001f344a5f748b909090909090909090909090909087705b46301b001f344a5f748b9ea7a598846e58432e1900000000000000000000000000000000000000011223303a3e3e3e3d382d1f0e000000000000000000000000000000000000020f181e1f1f1f1e1910040000000000000000000000000515232e3434343434343434343434343434343434343434343434342e231505000000000000000000000000000000000000000000000000011325344149494135291d11060000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000816222d363e454a4f53555758585a595858575452504c48433d362e261b1004000000001528394750525252525252525252525252525252524f45362411001528394750525252525252525252525252525252524f45362411000005111a1f1f1a130a02000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001a2f43586b80917d6a56433c362f29231b12080000000000000000000006101921282d32343636363533302d28231c160e0500000000091928343e444747433b3123140400001f344a5f7483838383838383969683838383838383705b46301b001f344a5f7486868686868686969686868686868686705b46301b001f344a5f748b8f8f8f8f8f8f9a9b8f8f8f8f8f8f87705b46301b001f34495e7286949a9991806b57422d18000000000000000000000000000000000000000a1e30414d535353524b3d2c1906000000000000000000000000000000000000000000000000000000000000000000000000000000000005111a1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1a110500000000000000000000000000000000000000000000000000000716242e34342e23170b000000000000000000000000000000000000000000000000000000000000000000000000000001090d0e0e0e0e0a020000000000081726343f4952595f64686a6c6e6e6f6e6e6d6c6a6764615d57514a42392e2215060000001c31445764676767676767676767676767676767676353412d18001c31445764676767676767676767676767676767676353412d180000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001d32475c7287917c695e57504a443e362e251b1004000000000000000b17232d353c42474a4b4b4b4a4845413d37312a2116080000021527374651595c5c574e4232221000001d32465a696c6c6c6c6c6c809595806c6c6c6c6c6c6756432e19001e33475b6b6f6f6f6f6f6f809595806f6f6f6f6f6f6957432f1a001f34495e72787878787878809597827878787878786f5a45301b001b2f435668768286847d7262503c28140000000000000000000000000000000000000011253a4d5f686868675b4935200c0000000000000000000001080b0a06000000000000000000000001080c0c080100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000006121a1f1f1a1105000000000000000000000000000000000000000000000000000000000000000000000000000007131d22232323231e15090000000315263544515c666d74787c808384848684848382807c7976716c655e554b403324150500001f344a5f747c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c705b46301b001f344a5f747c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c705b46301b000000040c111212121212121212121212121212121212110c040000000000000000000000000000000005090b0b0b0b0906010000000000000000000000001e33485d728898877a726b655e58524a41382d21140500000000000c1b2835404950575c5f6060605f5d5a56514b453d34261605000c1f324455636d72706b60503f2d190600172a3c4c5557575757576a809595806a5757575757544939271300182b3e4e585a5a5a5a5a6a809595806a5a5a5a5a5a574b3a2814001b2f43546163636363636a809597826b63636363635f513f2b17001427394a59646c6f6f6a61544533200d0000000000000000000000000000000000000013283e53687d7d7d78634e38230e00000000000000000009141c20201a1105000000000000000009141d21211c140800000000000000070b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0904000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000616253037383838383227190900000e21334453626f7982888e9295979797979797989795928f8b86827972685d504233231100001f344a5f748b939393939393939393939393939387705b46301b001f344a5f748b939393939393939393939393939387705b46301b000009162026272727272727272727272727272727272726201609000000000000000000000000050e151a1e202121201e1b16110a030000000000000000001b3045596d808f988e868079726d665e544b3f322314040000000a1b2a3946525c656b707476767674726f6b666059514434220f0012273b4e61738287877d6e5c4935210c000d1e2e3a4142424242546a809595806a544242424240382b1b0a000f20303c4344444444546a809595806a5444444444423a2d1d0b00132536444c4e4e4e4e546a809597826b564e4e4e4e4b42332210000a1b2c3b4751575a5a564e44362716040000000000000000000000000000000000000013293e53687d948f78634e38230e00000000000000000a19273035342e2316080000000000000c1927313636302517080000000006121b2021212121212121212121212121212121211e180d000000000000000000000000000000000000000000000000070b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0a0400000000000000000000000000000000000000112334434c4e4e4e4d453727140100162a3d506171808c95978f8a87848282828282838486888b8f94958d857a6e6151402f1c09001f344a5f748b8c8c8c8c8c8c99998c8c8c8c8c8c87705b46301b001f344a5f748b8c8c8c8c8c8c99998c8c8c8c8c8c87705b46301b00071827333b3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3b33271807000000000000000000010d1821292f3336363636332f2b251e170e0500000000000000162a3d5061707d889199948d88827971675d50423221100000041628394857646f788086898c8c8c8b8885807a746d62513e2a1500162c40556a7d919c9b8c78644f3a25100000101d262c2c2c2c3f546a809595806a543f2c2c2c2b251a0d000002121f292e2f2f2f3f546a809595806a543f2f2f2f2e271d0f000008182631383838383f546a809597826b5640383838373024150500000e1d2a353d424444413b32261809000000000000000000000000000000000000000013293e53687d948f78634e38230e0000000000000009192837444b49403326180a000000000e1c2a37444b4b433526160700000616242f353636363636363636363636363636363636332b1e0f00000000000000000000000000000000000000000006121b20212121212121212121212121212121212121212121212121212121212121212121211f180e0100000000000000000000000000000000091c2e415260636363615544301c08001c3145596d80909d8f837b75706e6c6b6b6b6b6c6e7072767a80878f988d806f5e4c382511001f34495d70767676767676809595807676767676766d5a45301b001f34495d70767676767676809595807676767676766d5a45301b00112436454f52525252525252525252525252525252524f45362411000000000000000003121f2b343d43484b4b4b4b48443f39322b21180d0000000000000e21334352606b757d858b9298958d857a6e60503f2d1a07000e213445576675828c949a9b989797989b99958f88826c57422c1700172c42576c8398ada7917b66503b26110000000b141819192a3f546a809595806a543f2a171716110800000000010d15191a1a2a3f546a809595806a543f2a1a1a19140b0000000009151e2323232a3f546a809597826b56402b2323221c130600000004121e2830353636332e261a0e00000000000000010202020202020202020202020213293e53687d948f78634e38230e0000000000000718273746555f5d514436281b0d0003101e2c3a4755606053443425150500122434424a4b4b4b4b4b4b4b4b4b4b4b4b4b4b4b4b4b473c2d1c0a000000000000000000000000000000000000000616242f3536363636363636363636363636363636363636363636363636363636363636363636332b1f10000000000000000000000000000000021427394b5e70787878735f4b35200b001f344a5f73899c8f7d7067605c59575656565657585b5d61656b737d8b9b8d7b6854402b16001a2e41525e60606060606a809595806a60606060605d4f3e2b16001a2e41525e60606060606a809595806a60606060605d4f3e2b1600182d41536367676767676767676767676767676767676353412d1800000000000000021221303c4751585d606060605d59544e463e342b1e0e0000000009151d2534434e58616970767d858d96988c7d6e5c4936220e0015293d50637485939f938b868382828386898e948f7a66523e2a1500162c40566b8095aaa48f79644f3a25100001111e282d2e2e2e3f546a809595806a543f2a1500000000000000000f1b252a2b2b2b3f546a809595806a543f2a1500000000000000000002090d0e152a3f546a809597826b56402b160e0d0800000000021222303b444a4b4b4842382c1d0d000000000a12171717171717171717171717171717293e53687d948f78634e38230e000000000000122436455464736f615446382b1d0f13212e3c4a58657371625243332210001a2e41525e60606060606060606060606060606060605a4b39261100000000000000000000000000000000000000122434424a4b4b4b4b4b4b4b4b4b4b4b4b4b4b4b4b4b4b4b4b4b4b4b4b4b4b4b4b4b4b4b4b4b4b483d2e1d0b00000000000000000000000000000c1f314456687a8d8f826f5d4934200a001f344a5f748b9c8872605f62636363615f5d5b585654514f51575f6c7d9297836e59442f1a00122434424a4b4b4b4b546a809595806a544b4b4b4b494031210e00122434424a4b4b4b4b546a809595806a544b4b4b4b494031210e001b30465b707c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c705b46301b000000000000000e1f303f4e5a646c7275767674726d68625a51473c2c1b080000091927313736313b454e555c6269707985939d8c7965513d2813001b2f44586c80929f8f8277706d6b6c6e707479808874604b37230f0014283d52677c91a6a18c76614c37220d000e1f2f3b4243434343546a809595806a543f2a15000000000000000c1d2d393f40404040546a809595806a543f2a1500000000000000000000000000152a3f546a809597826b56402b16010000000000000d2030404d585e60605d55493b2b19070000101d262c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c3e53687d948f78634e38230e0000000000001a2e415363728380726456493b2d2023313f4c5a687584807061513f2b17001f34495d7076767676767676767676767676767676766954402b15000000000000000000000000000000000000001a2e41525e606060606060606060606060606060606060606060606060606060606060606060605b4c3a2713000000000000000000000000000517293c4e607386988a776552402e1a06001e33485d7186988974707477787877767472706e6b6866646262636a7c929a856f5a442f1a000616242f353636363f546a809595806a543f363636342d221303000616242f353636363f546a809595806a543f363636342d221303001b30465b708793939393939393939393939393939387705b46301b00000000000006192c3d4e5d6b7780878b8c8c8b88837c756d645a4a3824100002152737444c4b433c363a41484e555d6775889c95806b56402c16001e33485d72889c968270645c585657585b5f656c736b5844311c08001025394e63788da29d88735e49341f0a00182b3d4d5758585858586a809595806a543f2a1500000000000000172a3b4a5456565656566a809595806a543f2a1500000000000000000000000000152a3f546a809597826b56402b1601000000000000162a3d4e5e6b73767671675949362310000d1e2e3a414242424242424242424242424242424253687d948f78634e38230e0000000000001e33485d71829190827467594b3e3033414f5d6a7886948f806f5a45301b001f344a5f748b8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c826b56402b16010000000000000000000000000000000000001f34495d70767676767676767676767676767676767676767676767676767676767676767676766a56412c17000000000000000000000000000f223446596b7d9092806d5a4835231100001a2e4256687a8b9282868a8d8f8f8d8c8b888684827d7b797777787d899994806c57422d18000006121b2021212a3f546a809595806a543f2a21211f1a100400000006121b2021212a3f546a809595806a543f2a21211f1a100400001b30465b70878f8f8f8f8f8f8f989e8f8f8f8f8f8f87705b46301b0000000000000f2336495b6c7b89949b9a9797989b97918a827767533e291400091e314455605f57504b47444344474d5a6f869b97836c57422c17001f344a5f748b9f937c67524843414243464a50585f5b4e3c291501000c20354a5f74899f99856f5a45311c07001e32475a6a6e6e6e6e6e6e809595806a543f2a15080100000000001d324659686b6b6b6b6b6b809595806a543f2a1500000000000000000000000000152a3f546a809597826b56402b16010000000000001d3146596c7c888c8b857766533f2a1600172a3c4c555757575757575757575757575757575757687d948f78634e38230e0000000000001d32475b6d7b8997938577695c4e4044515f6d7a89969587796b58442f1a001f344a5f747d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d6b56402b16010000000000000000000000000000000000001f344a5f748b8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c836c57422c17000000000000000000000000071a2c3e5163768999877462503d2b180600001326394b5c6c7c8f969993908f8f8f90939497989694918f8d8d8d929a94887664513d291400000a161f2425252a3f546a809595806a543f2a150b0a0600000000000a161f2425252a3f546a809595806a543f2a150b0a06000000001b30455a6f787878787878787c9399847878787878786f5a45301b000000000000162a3e5265788a9a978c85828283868b91988f7b67533e2914001024394d6173736b65605c5a58595c606a778a9e94806a55402b16001e33485d72879c958270645c544e474039363c444a473e301f0d0000081d32475c70869b96826c57422d1803001f344a5f74848484848484849695806a543f2a201c1409000000001f344a5f74828282828282829695806a543f2a1500000000000000000000000000152a3f546a809597826b56402b16010000000000001f344a5f74899aa1a096836d58432e19001d32465a696c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c7d948f78634e38230e000000000000182b3e4f5d6b7887949588796c5e5054616f7d8b99928576695b4d3c2915001c31455866686868686868686868686868686868686860503c2813000000000000000000000000000000000000001f344a5f748b95959595959599a1989595959595959595959595959595959595959595959b98836c57422c17000000000000000000000000122437495c6e82938f7c6a574532200e00000012263b5064778a9a90867d7a7878787b7c80828487898c8d8f90908e89827669594734210e0009192733393a3a3a3f546a809595806a543f2a150000000000000009192733393a3a3a3f546a809595806a543f2a1500000000000000172b3f515f636363636363677c9399846e63636363635f513f2b170000000000071c3045596d8295998879706c6c6e71767c8586725f4c38241000172b4053687c87807974716f6e6e70757c88969c8b7764503c2713001b2f44586c80919f8f82777068625b544d443a3034332b201201000002192e43586d8398937d68533e291400001f344a5f748b9999999999999c95806a543f3435302719090000001f344a5f748b9797979797979f95806a543f2a1500000000000000000000000000152a3f546a809597826b56402b16010000000000001f344a5f748999a09f95826d58432e18001f344a5f7483838383838383838383838383838383838383948f78634e38230e0000000000000f21313f4d5b68768492988a7c6e606471808e9c90827466594b3d2f1e0c0015283a485461696f727372716f6b66615a606a70706b6051402e1b080000000000000000000000000000000000001f344a5f74808080808080808da08b8080808080808080808080808080808080808080809098836c57422c1700000000000000000000000a1d2f415466798c9784725f4d3a28150300000013293e53687d939482726a6663636466676a6c6f71737677797b7978746e64594b3b2a180500142637454e4f4f4f4f546a809595806a543f2a1500000000000000142637454e4f4f4f4f546a809595806a543f2a1500000000000000102233424b4e4e4e4e4e52677c9399846e584e4e4e4e4b4233221000000000000a2034495e73889d8f7c6a5c5757585c616871796956432f1c09001d32465b6f8397948e8a87868484868a9099998d7d6d5b4835210d0015293c506272828f99958c847c76706860574c403121180f0200000000162b40556a8095907a65503b261100001f344a5f74878787878787878787806a5440494b443727150400001f344a5f74898989898989898989806a543f2a15000000000000000000070e1313152a3f546a809597826b56402b16010000000000001c3145596b7b868b89837665523e2a15001f344a5f748b989898989898989898989898989898989898a08f78634e38230e0000000000000313212f3d4a586673828f9a8d7d707482909b8e80716456483b2d1f110100162b3e5163727d848889888784807b756e6f7d86867d6f5e4b38240f0000000000000000000000000000000000001d314558676a6a6a6a6a6a778da08b746a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a799098836c57422c17000000000000000000000215273a4c5e7184968c79675442301d0b0000000013293e53687d92907a65646a6f737678797979797876736f6a666463605a51473b2d1d0c00001b3043556264646464646a809595806a543f2a15000000000000001b3043556264646464646a809595806a543f2a15000000000000000515243037383838383c52677c9399846e5843383838373024150500000000000d22374c61768c9f8a75604c424243474d555d645d4c3a261300001f344a5f7482898f94999c9a99999b9b968f867b6e5f4f3e2b1805000d2032445463707c868f9698918b847c73695e4f3f2d1b08000000000013283d52677c928d77624d38230e00001e33485c6d707070707070707070706552535d5f554533210e00001e33485d6f7373737373737373737366533e291400000000000000000d19232829292a3f546a809597826b56402b160100000000000016293c4e5d697174747066584836230f001f344a5f748b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b78634e38230e0000000000000003111f2c3a48556371808d9b8f828592988b7d6f615346382b1d0f0100001b30455a6e8290898482828384888b8a837b8e857d8a7a67523e291400000000000000000000000000000000000016293b4953545454545462778da08b745f545454545454545a5e5e5e5b545454545464799098836c57422c17000000000000000000000d20324457697c8e94826f5c4a372513000000000011263a4f637689958372777d84888c8e8f90908f8d8c8885807971685d5041352a1d0f0000001f34495e73797979797979809595806a543f2a15000000000000001f34495e73797979797979809595806a543f2a15000000000000000006131c22232323273c52677c9399846e58432e2323221c13060000000000000d22374c62778d9d88725d48332c2e3339414b4f4a3f2f1d0a00001c314558666d747a80848789898a8986827b73695d504131200f00000315263645535f69727a82888e949890877b6d5d4a37230f000000000011263b50657a908b75604b36200b0000192c3e4f5d6f73685d5b5b5b5b5b5b555a65707362503e2b160200192d40515c5e5e5e5e5e5e5e5e5e5e5749372312000000000000000b1c2b363d3e3e3e3f546a809597826b56402b16010000000000000d1f303f4c565d5f5f5b53483a2a1906001f34495d7074747474747474747474747474747474747474747472614c38230d0000000000000000010e1c2a384553616f7c8a98939596887a6c5f514336281a0d000000001d32475c72888d786e6c6b6c6f72767b82898f7a6c82826b56402b160000000000000000000000000000000000000c1d2c373e3f3f3f3f4c62778da08b745f4a3f3f3f3f43586b7373736d5a463f3f4f64799098836c57422c1700000000000000000005182a3d4f61748699897664513f2d1a0800000000000c203447596a7a8891858c9395908c8988878788898b8f93948d857a6e5f4f3d2b18040000001f344a5f748b9090909090909b95806a543f2a15000000000000001f344a5f748b9090909090909b95806a543f2a15000000000000000001101d262b2a26273c52677c9399846e58432e190e0d0800000000000009111522374c62778d9d88725c47321d191e252e373a362d211100000015283a48525960656a6e7173747473706c6760564c403223130300000009182735414c565f666d737980878f998c7a66523e291400000000000f24394e63788f88735e48331e09000014293f53687a867a6f64594e464c57616c7782806d5a45301b06001122323f474848484c5b666d6f6f695f51412f1c0800000000000015283a485253535353546a809597826b56402b16010000000000000112212f3a42484a4a4740372b1c0c00001a2e41515d5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5e5444311e09000000000000000000010e1c2a384553616f7c8fa49f89786a5d4f413326180a00000000001b30455a6e8291837b7877777778797c7d838f786a80826b56402b16000000000000000000000000000000000000000e1a24292a2a2a374c62778da08b745f4a40404040445a6f868988725c47323a4f64799098836c57422c17000000000000000000102235475a6c7d91917d6c594735221000000000000004172a3c4c5c6a788a999288827a7673727070727376797d868f988c7d6d5a47331f0b0000001f344a5f748b9090909090909090806a543f2a15010000000000001f344a5f748b9090909090909090806a543f2a1500000000000000000f1f2e3a403f3a343c52677c9399846e58432e1903000000000000000f1b252a2b374c62778d9d88725c47322b2b2b2b2b2b26221b10030000000b1c2b363e454b5155595c5e5f5f5e5c58534c433a2f2214040000000000091724303a434b52585e656b727c8c95806b56402b1601000000000d22374c62778d87705c47321c07000014293e536776848d82766c61565e6974808a887a6d5945301b05000514222c32333345586a788286847d705e4b37230e0000000000001c3145586668686868686a809597826b56402b16010000000000000003111d272e333434322c24190d00000011233341494a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a494336261502000000000000000003111f2c3a48556370808d9b919396897a6d5f514436281b0d00000000172b3f5264737d868a8d8d8d8c8b898886848f7866727267533f2a150000000000000000000000000000000000000000081014151522374c62778da08b745f5656565656565a6f869b88725c47323a4f64798b8b836c57422c170000000000000000081b2d3f52647689998673614f3c2a1805000000000000000c1f34485d7185979282756c66615f5c5b5b5c5e60656a727d8d9c8a77634e3a25100000001f34495e7379797979797979797979695440301e0d0000000000001f34495e737979797979797979797969543f2a140000000000000006192c3d4c55544f484152677c9399846e58432e19030000000000000c1d2d393f40404c62778d9d88725c47404040404040403a2e1f0f00000000000d19232a31373c414447484a4a4847433e3830271d11040000000000000006121d272f373e444a50575f6e84937d69543f2a1500000000000b21364b60768b866f5a45301b06000010243749596673828f897d7368707b869185776a5d4f3d2a160200000410191d20354b5f7488969b998e7a66513c27120000000000001f344a5f747d7d7d7d7d7d809597826b56402b16010000000000000000000a131a1e1f1f1d181107000000000515232e34343434343434343434343434343434343434343434342f25180900000000000000000613212f3d4a586673828f9c8e808391998b7d6f615446382b1d0f0200000f2335495d6d6f71747777777675737272868c77625c5c57493724100000000000000000000000000000000000000000000000000d22374c62778da08b746b6b6b6b6b6b6b6b6f869b88725c4732394e62737474746955412c1700000000000000001325384a5c6f82948e7b695644321f0d00000000000000000c21374c60768c9f8a756359514d4a47464647494c5056606f8499917c67523c27120000001b30435562646464646464646464666a5e4d3c2a180500000000001b30435562646464646869646464645d4c3a2611070000000000000c2135495b6969635c5552677c9399846e58432e1903000000000000172a3b4a5456565662778d9d88725c56565656565656554c3d2c19050000000000070f161d23282c2f3233343433312e2a241c140a00000000000000000000000a131c232930363c4a5e72868976634f3b261200000000000a1f344a5f7489846e58432e19040000081a2c3b485563707d8c90867a838e8f827467594c3f31200e0000000000000b20364b60758a9aa09d907b67523c27120000000000001f344a5f748b9494949494949e97826b56402b160100000000000000000000000000000000000000000000000005111a1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1b13080000000000000000051524313f4d5a68768492998c7d7072808f9c8e80716456493b2d2011000011263b4f6478847d7974716e6c6c6f75809084705d484743392b1a080000000000000000000000000000000000000000000000000d22374c62778da08b82828282828282828282869b88725c47323345555e5f5f5f5a4c3a2612000000000000000b1e30425567798c9683705e4c3a27150200000000000000000c22374c61768c9f8a756358514d4a48474747494c50555f6f8498917c67523c2712000000142637454e4f4f4f4f4f525c656f797c6b594734200b0000000000142637454e4f4f5466777c72685f554b41372e241a11070000000013273b5064787d7770685f677c9399846e58432e19030000000000001d324659686b6b6b6b778d9d88726b6b6b6b6b6b6b6b695b4834200b0000000000000002080e13171a1c1e1f1f1e1c19150f09010000000000000000000000000000080f1524313c51667a8d7c6b594734200c0000000000081e33485d7288836c57422d18030000000e1d2a384552606d7a88958f958c7d706356493b2e211302000000000000091d32465a6d7c878b898272604d38240f0000000000001f344a5f748b8b8b8b8b8b8b8b8b826b56402b160100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000112333424f5d6b78879497897b6d5f62707d8c9990827467594b3e2f1e0c0013293e53687d888e8e8a87848383858a928777665441322f271b0d000000000000000000000000000000000000000000000000000d22374c62778da39997979797979797979797979d88725c4732273743494a4a4a463c2e1d0a0000000000000316283a4d5f7285978b786654412f1d0a0000000000000000000a1f34495d7185979282746c66625f5d5c5c5c5e61646a717d8d9b8a76634e3a251000000009192733393a3e47515b646f78838c8977634d38230e000000000009192733393a475c71838f857b72675e544a41372d24190d000000192e42566a80928c857c72677c9399846e58432e19030000000000001f344a5f7482828282828e9d8882828282828282828277624c37220d000000000000000000000000000000000000000000000000000000000000000000000000000000122333424e576372796f5e4e3c2a17040000000002122231475c707d7d6b56402d1e0e000000000c1a2734424f5d6a77858b887a6d605345382b1d10030000000000000003172b3d4f5e6a7274736e635443311d090000000000001f34495d707474747474747474747468543f2a1500000000000000000000000000000000000811191d1e1c18110700000000000000000000030f171c1d1d1d1d1d1d1d1d1d1d1d1d1d1d1d1d1b160d0100001a2e4151606d7b89979486786b5d4f52606d7b8997928577695c4d3b28140012263b4f616d73787d838688898b89867d7568594937241a140a00000000000000000000000000000000000000000000000000000d22374c62778da18e888888888888888888888a9c88725c47323144535c5c5c5c574a3825110000000000000e203345576a7c8f93806e5c4937241200000000000000000000061a2e4255687989959288807a7774727272727376797d858f988c7d6c5a47332216070000051726333d47515a646e77828c92867a6e5e4b37220d0000000000000a161f243045596a76828e8f857a71675d544a40362b1c0b00001e33485d7186959c988f85787c9399846e58432e19030000000000001f344a5f748b979797979ba59897979797979797978d77624c37220d0000000000030b0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0e0a0200000000000000000000081b2e4151606b717270695e4f3d2b1804000000000d2030404e5864686860564a3c2c1b0800000000091724313f4c59677374746a5d4f4235281a0d000000000000000000000e2031404d575d5f5f5a5145362614010000000000001a2e41515d5f5f5f5f5f5f5f5f5f5f594a392511000000000000000000000000000000000c1a242d3233312c24190b00000000000000000413212b3132323232323232323232323232323232302a1f1101001f34495d707d8c99918476685a4d3f424f5d6b7887949588796b58432e19000c20324351595f64696d7073737473706a62584a3b2b1a08000000000000000000000000000000000000000000000000000000000d22374c62778da08b74727272727272727272869b88725c4732384d61707272726855402b16000000000006192b3d506275889a897663513e2c1a0700000000000000000000001226384a5b6a77838b9295908c8988888888898c8f93958f897a6d5f4e433e34251402000f223444505a646d77828b958c8074685c50412f1c0800000000000000030b16293c4c5965707c88948e847a70665d53483a281502001f34495e717a8288909996897c9399846e58432e19030000000000001f344a5f748989898989919f8d89898989898989898977624c37220d000000000a161f242525252525252525252525252525252525231e14080000000000000000000e22374b5e707d8688857b6d5a47331e0a00000000162a3d4e5e6b73777672685a4a37241100000000000613212e3b49565f5f5f594c3f3224170a0000000000000000000000021322303b43494a4a463e342718080000000000000011233341494a4a4a4a4a4a4a4a4a4a463b2d1b090000000000000000000000000000000a1b2a37414748464036291a09000000000000001022323e4647474747474747474747474747474747453c2f1e0c001f34495e7182908f827365584a3c2f313f4d5b687684928e7d6d59442f1a00031525333e444a4f54585b5e5e5f5e5b564f453a2c1d0d00000000000000000000000000000000000000000000000000050d11121222374c62778da08b745f5c5c5c5c5c5c5c6f869b88725c47323a4f64798888836c57422c170000000000112336485a6d8092907d6b594634210f000000000000000000000000091b2c3d4c5a656f777d84888b8d8f90908f8e8c8986807d907d6d615a585143321f0b00162b3f52626d76828a949186796e62564b3f322312000000000000000000000c1e2e3c47535e6a76828e978d847970665845311c08001b2f425360656c747c8792998c9799846e58432e19030000000000001e33485d6f73737373778d9d88737373737373737373705f4b36210c00000009192733393a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3831261706000000000000000011263b5065798e9b9d998a76614c37220d000000001c3145596c7c888c8c86786754402c1700000000000003101d2b38444a4a4a463b2e2114060000000000000000000000000004121e282f343434312b22170900000000000000000515232e3434343434343434343434322a1d0f0000000000000000000000000000000316283948545c5e5b534738271502000000000000192d3f505b5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c594d3c2915001b2f425362728280706355483a2c1e212f3d4a586673827d6f5f4f3d2a1600000716212a30363b3f434648494a4846423b33281c0e000000000000000000000000000000000000000000000000000c182126272727374c62778da08b745f4a47474747475a6f869188725c47323a4f64799098836c57422c1700000000091b2e405365778a988673604e3c291704000000000000000000000000000f1f2e3c48535c63696f73767779797979787674706b778c8c7d746f6d614e3a251000192e43586d808a93978c8073685c5045392d2114050000000000000000000000101e2a35414d5964707c8894968d83745f4a341f0a00122535434c5158606a75828f9ea699846e58432e1903000000000000192d40515c5e5e5e62778d9d88725e5e5e5e5e5e5e5e5d5242301c08000000142637454e4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4d44352411000000000000000011263b50667a8f9c9f9b8b77624c37220d000000001f344a5f74899ba1a197846e59442f1a00000000000000000d1a2730343434322a1e1003000000000000000000000000000000010b141b1f1f1f1c160f050000000000000000000005111a1f1f1f1f1f1f1f1f1f1f1f1d170c000000000000000000000000000000000b1f3345576670736f655644311e090000000000001e33485c6e727272727272727272727272727272726b58442f1a00122535445463726e615345372a1c0e111f2d3a485663717060514131200e000000040e161c21262a2e3133343433312d2720160b000000000000000000000000000000000000000000000000000a1b2a353b3c3c3c3c4c62778da08b745f4a3c3c3c3c44596e7b7b7b715c473c3c4f64799098836c57422c17000000011426384b5d6f82958d7a685643311e0c000000000000000000000000000001101e2b3640484f555a5e60636464646463615f5b5c6f82919189857c67523c271200172c405467798c9185796e62564a3e33271b1004000000000000000000000000000c18242f3b47535e6a76828e907d6c5a46321d080007172530373d444d5763708090a099846e58432e19030000000000001122323f4748484c62778d9d88725c484848484848484841342513000000001b3043556264646464646464646464646464646464646153412d1900000000000000000e23374b5f7080888b877d6e5c48331f0a000000001f34495e7388989f9e95836e59442f1a00000000000000000009141c1f1f1f1d170c000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000050c1124394e627584898373614d3823110c04000000001f344a5f7488888888888888888888888888888887705b46301b000717263645545e5c504335271a0c00010f1c2a3845535d5d514232231303000000000000070c1115191c1e1f1f1e1c18130c0300000000000000000000000000000000000000000000000000001528394750525252525262778da08b745f525252525252526166666662545252525264799098836c57422c170000000c1e314355687a8d9583705d4b39261402000000000000000000000000000000000d19232c343b4045494b4e4f4f4f4f4e4c4a46516372828d97937c67523c2712001125374a5c6e808073675c5044392d21160a0000000000000000000000000000000006121e2935414d5964707c8573614f3d2a1703000008141d2329313a45526171838b8b846e58432e19030000000000000514222c3233374c62778b8b88725c47333333333333332d241607000000001f34495e737979797979797979797979797979797979705c47321c0000000000000000081c304253616d7374726a5f503e2c1904000000001c3045586b7a868989837666533f2b160000000000000000000000000000000000000000000000000000000000000000000000000000000000000000070f13130f0800000000000000000000050d1213110a01000000000000000000000000000000000000000d182126283b50667b919e9079644f3a282620170b0000001f344a5f748b9797979797979d9d97979797979787705b46301b0000081827364349483f32251709000000000c1a273541494941332414050000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001c31445764676767676767778da08b7467676767676767676767676767676767676767799098836c57422c1700000416293b4e607285988a776553402e1c0900000000000000000000000000000000000006101920262c303436383a3a3a3a383734344554636f7a83887c67523c271200081a2c3e5163736d61564a3e33271b0f04000000000000000000000000000000000000000c18242f3b47535e6a7468564432200d0000000001090e151d2835435365747474746a57422d1803000000000000000410191d21364b60717474746e5b46311e1e1e1e1e1e19110600000000001f344a5f748b90909090909090909090909090909088725c47321d0000000000000000001324354450595e5f5d574e4132210f000000000015283b4d5c697174736f66584836231000000000000000070d11120f0901020b1012100c05000000000000000000000000000000000000000000000d1a232828241c140b010000000000071018212728251e120400000000000000000000000000000000000e1d2a343b3e3c4e63778c9e8a76624d3c3d3a33291c0d00001f344a5f7482828282828282969682828282828282705b46301b0000000918252f34332d2214070000000000000a17242e34342e231506000000000000000002090e1316191a1a1a191714100a0400000000000000000000000000080f12110c04000000000000001f344a5f747c7c7c7c7c7c7c8da08b7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c9098836c57422c1700000f213346586b7d9092806d5a48362311000000000000000000000000000000000000000000050c12171b1f212324252525232220273645525d676e737464503b261100000f213345555e5c5044382d2115090000000000000000000000000000000000000000000006121e2935414c585f594a3926140200000000000000010b17253648575f5f5f5f5a4d3b28140000000000000000000000081c3043535e5f5f5f5c503e2b17030000000000000000000000001f344a5f748b91919191919196a59591919191919188725c47321d000000000000000000061726333d45494a48433b3023130300000000000c1e2f3e4b565c5f5e5b53483a2a1907000000000004101a222627241d14151f25272521180e02000000000000000000000000000000000000000c1d2b373d3d382f271e13040000000d1a242c343c3e3a302312010000000000000000000000000000000a1b2c3b474f53514b5d708596826e5b4c51524f463a2b1a08001d324659686b6b6b6b6b6b809595806b6b6b6b6b6b6656422e190000000008131b1f1e191004000000000000000007121a1f1f1a110500000000000000060f161d23282b2e2f2f2f2e2c29251e180e04000000000000000000020f1b2327262016090000000000001f344a5f748b93939393939397a4969393939393939393939393939393939393939393939998836c57422c170007192c3e516375889a887562503e2b19060000000000000000000000000000000000000000000000000006090c0e0f0f0f0f0e0d0a182734404a535a5e5f574735210d0000041628374349483e32271b0f04000000000000000000000000000000000000000000000000000c18232f3b454a463b2d1b090000000000000000000007192a39444a4a4a4a473d2f1e0b00000000000000000000000114253542494a4a4a483f32210f000000000000000000000000001f344a5f737b7b7b7b7b7b7b8da18c7b7b7b7b7b7b7b715c47321c000000000000000000000815212a303434332f281e12040000000000000011202e3942474a49463f362a1c0c00000000000514222d363b3c3830262832393c3a352b20120200000000000000000000000000000000000417293b4952524b433b30231200000b1c2b37404850534d41301e0b0000000000000000000000000000001427394a596468665f58687d8f7a665960666763584937241100172a3b4a5456565656566a809595806a56565656565348382613000000000000000000000000000000000000000000000000000000000000000000040f19222a31373d404344444443413e39332b211609000000000000000412202d373c3b3327180900000000001f344a5f748b8f8f8f8f8f8f8f8f8f8f8f8f8f8f8f8f8f8f8f8f8f8f8f8f8f8f8f8f8f8f8f8f836c57422c1700122436495b6d80938f7c6a584533210e000000000000000000000000000000000000000000000000000000000000000000000000000917232e373f45494a44392a18050000000a19263034332c2115090000000000000000000000000000000000000000000000000000000006121d293134322a1d0f0000000000000000000000000c1b283134343434322b1f11000000000000000000000000000817252f34343434332d221303000000000000000000000000001c30445663666666666666778da18c766666666666666254412e190000000000000000000000040e161b1f1f1e1a140b01000000000000000002101c262e323434312b23190c000000000000122332404a50514d43373a454e524f483d30200f0000000000000000000000000000000001112233465966675f564e41301d0a0015283949535b64685f4d3b28170700000000000000000000000000001b2f435668777c7a736c67798376686d747b7c756654402c18000c1d2d393f40404040546a809595806a54404040403f372a1a090000030f171c1d1d1d1c18100400000009141a1d1d1d1d1a14090000000000000414212c363e454c5155585a5a5a5856534e473e332718090000000000041422303e4a514f4536271706000000001f34495e72787878787878787878787878787878787878787878787878787878787878787878786b56412c17001a2e415366788b978572604d3b281604000000000000000000000000000000000000000000000000000000000000000000000000000005111b242b30343431281b0c000000000009141b1f1e190f03000000000000000000000000000000000000000000000000000000000000000c161d1f1d170c00000000000000000000000000000a151c1f1f1f1f1e180e01000000000000000000000000000007121b1f1f1f1f1e1910040000000000000000000000000000142738464f505050505062778da18c766050505050504e4536251200000000000000000000000000000000000000000000000000000000000000000a13191d1f1f1c1710070000000000000a1d3041515d656660554649586167645b4e3e2c1a06000000000000000000000000000004111f2f3f5163767a726a5f4d392510001b304457666f777d6a584635251609000000000000000000000000001f34495d7286938f88827c6e6c727c82899092846f5a45311c00000f1b252a2b2b2b3f546a809595806a543f2b2b2b2a24190c00000413212b31323232312c221405000c1b272f323232322f271b0c00000000001022323f49525960666a6d6f6f6f6e6b68625a51453627160400000004142332404e5c6663544535230f000000001b2f43546163636363636363636363636363636363666a636363636363636363636363636363635d4e3b2813001f34495d70838b8b7a675543301e0b00000000000000000000000000000000000000000000000000000000000000000000000000000000000810171b1f1f1c150a0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000091a28343a3b3b3b3b4c62778da18c76604b3b3b3b3b3a332718070000000000050d13181a1b1b19151008000000000000000000000000000000000000000000000000000000000000000012263a4d5f6f797b7264525667757c776c5b4936220e000000000000000000010204080e17222f3d4d5d6e808f867c67523c2712001e33485e73838b887563534234271b110a05020100000000000000001f344a5f748b9f9d958e866f5f73898e969e9c87725c47321d0000010d15191a1a2a3f546a809595806a543f2a16161510070000001022323e46474747463f32231207192a38434747474743382a190700000000192d3f505c656d747a808386868684827c766d63544533210e00000111223241505e6c797263523e2a1500000000132536444c4e4e4e4e4e4e4e4e4e4e4e4e4e4e5162737d746a60574e4e4e4e4e4e4e4e4e4e4e4e4a3f301f0c001f34495d707474746f5d4a38261301000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000060c111212110c06090f1313130f0a030000000000000000060e11110e0600020b1113110b020000000000000000000000060e11110e0600020b1113110b020000000000000000000000050d11110e060000000000000000000b172025262626374c62778da18c76604b36262626251f160900000000010d1821282d2f30302e2a241b12060000000000000000060c111212110c060000000000000000000000000000162c4055697c8d90826f5b607386918a7965513c27120000000000081014151617191d222a34404d5b6a7b8c978572604d392510001c3145596b7d90938270615244382d251e1a17161515120c020000001e33475c70828d89827974727470747a828a8d806d59442f1a0002121f292e2f2f2f3f546a809595806a543f2a1500000000000000192d3f505b5c5c5c5b50412f1d11243648565c5c5c5c564836230f000000001e33485c6e7882898f8e8b8989898b8d918a807263503d291500000d1f2f40505f6e7c8a826c57422c170000000008182631383838383838383838383838383843586d8091887d736960564c433938383838383838362e211201001a2e41515d5f5f5f5d51402d1b090000000000000000000000000000000000000000040607070600000000000000000003090f13151514110c0600000000000000000000040c101213130e060b101213130f080000000000000000030f192126272726211a1e24282928241e160c0000000000000c1922272722190d131e2629261f14080000000000000000000c1922272722190d131e2629261f14070000000000000000000c1821262722190c000000000000000000040c10111122374c62778da18c76604b36211111100b030000000003111f2b343c41444646433f382e2316080000000000030f192126272726211a1005000000000000000000000000172c42576c83969e8b7662677b8fa1927d68533e2913000000000e1a24292a2b2c2e31363d46515d6b7989998a79675543311e0a0016293c4e607284948f807062554a4039332f2c2b2a2a271f14050000192d4053647177756d65687c8b7864666e75777061503d2a16000f20303c4344444444546a809595806a543f2a15000000000000001e33485c6e7272726e5e4c3a281b2e4053667272727266523e2914000000001f34495e72858d857d797673737374787d8891806c58432e190006192b3c4d5e6e7d8d807162513e2a15000000000009151e232323232323232323232323232c41556774808c90877c73695f564c42382d23232323211b1003000011233341494a4a4a4840322210000000000000000000000000000000000000010d15191b1c1d1a140a0000000000020d161e24282a2a292621191005000000000000000a16202527282822191f25272928241b0e0000000000000413212c353a3c3c3a352d31383d3e3d3932291d10000000000c1c2a363c3c362b1d23313a3e3b3226180a000000000000000c1c2a363c3c362a1d23313a3e3b3225180a000000000000000c1b2a353b3c362a1d0f0100000000000000000000000d22374c62778da18c76604b36210b000000000000000011212f3c4750565a5b5b58534b41342617060000000413212c353a3c3c3a352d221506000000000000000000000b1a2a3f5366798791927d6a6f83978f8475634f3a26170800000c1d2c373e3f404143464b5159636e7b89988c7c6c5b4a38261401000d1f314355657686958f8073675d544d484442403f3f3b312313020011243646545e62605a586d83937d69555a61625d524333210e00182b3e4e585a5a5a5a5a6a809595806a543f2a15000000000000001f34495e728488887c6957443226384b5d708388887b68543f2a14000000001b2f4355687b79716a64605e5e5e60636a7b91866f5a442f1a000f2336485a6b7c8c827062534434220f00000000000002090d0e0e0e0e0e0e0e0e0e0e0e1225384957636e7a869290867c72685f554b3d2c190e0e0c07000000000515232e34343434332d221404000000000000000000000000000000000002121f292e3032322f271b0d0000000914202932383d3f3f3e3b352d23170a0000000000091928333a3c3e3d362a32393c3e3d372c1e0d00000000011323323e494f52524f4940444d5253524e463b2e1e0d0000091a2a3a485151483b2e32424e534e433628190a0000000000091a2a3a485151483b2e32424e534e433628190a0000000000081a2a39475051483b2d1f1001000000000000000000000d22374c62778da18c76604b36210b000000000000000b1d2e3f4d5a646b6f70706d675e52443423110000011323323e494f52524f4940332415040000000000000000081a2938434a5b69747d8988767a8c867c7266574840352616050016293b4953545656585b5f656d76808d978a7c6d5e4e3d2c1a090000021425374858677685929185797068615d59575654544e42311e0b0006182836424a4c4c465a6f8697826c57464c4c494134251504001e33475b6b6f6f6f6f6f6f809595806a543f2a15000000000000001b2f435466788a998774614f3d304355677a8d9583705e4c392511000000001326394c5e6a676e7070707071727375798491826d58442f1900162b3e526577898372625346392a1a080000000000000000000000000000000000000000091b2b3945515c6874808c988f867b72675b4935200c000000000000000005111a1f1f1f1f1e1911050000000000000000000000000000000000000f20303c4346474743392b1a08010e1a27323c464d525454534f494035281a0b00000000142637454f5153514839444e5153524a3c2b18050000000c1f3041505c646767645d51566167686762584c3c2b18050013263848586565594c3e415160686154463728190a0000000013263848586565594c3d415160686053453728190a0000000012253748576465594b3d2e1f10000000000000000000000d22374c62778da18c76604b36210b0000000000000014273a4c5d6b7780858786827a706252412e1b07000c1f3041505c646767645d514233210e000000000000000013253747555e6263636b788274778274696363615c524434210e001d314558676a6b6b6d7074798289938f85796c5e4f40301f0e0000000008192a3a49586674808c958d847c76716e6c6b6a69604e3a26110011233545545d626059586d83937d69555a60625d524333210e001f344a5f74868686868686869695806a543f2a1500000000000000132537495a6d809191806c5a483a4d5f7285988a776653412f1d0a00000000091c2f404e556277878787878788898b8b87807263513e2915001c31455a6e828b776c6a6357483724110000000000000000000000000000000000000000000d1b28333f4b56626e7a8692988f8578634e38230e00000000000000000000000000000000000000000000000000000000000000000000000000182b3e4e585b5c5c5749372411121f2c38444f5961676a6a68645c5246382919080000001b30435563666865564453616668675a4734200b00000014283b4e5f6e787c7c786f6167747b7d7c756a5a4835210c00192e4256667677695c4d4d5f6f7d7164554637281808000000192e4256667677695b4d4d5f6f7d7163554637281807000000192d4255667576695b4c3d2e1e0e0000000000000000000d22374c62778da18c76604b36210b000000000000001b2f43576a7b8993999c9b978e82705d4a36220d0014283b4e5f6e787c7c786f61503d2a1600000000000000001a2e4255657277787877797264677679777878767062513e2a16001f344a5f748080828386898e918b857c72675b4e403122120100000000000c1c2b3a4956636e7882898f918b87848282807d68533e291300192c4053637177756d65687c8c7864656d75776f61503d2a16001f344a5f748b9b9b9b9b9b9b9b95806a543f2a1507000000000000081a2b3d4f617385978a77655344576a7c8f92806d5a4836241200000000000315283a48526277878787878787898c88807566564534210e001f34495e738986828380756654402c18000000000000000000000000000000000000000000000a16212d3945515c6874808c94826f5d4a36210c0000000000000000000a121717171717171717171717171717171717171717140d020000001e33475b6b7070726754402b1623303d4956616c757b80807d786f6356473726140200001f34495e737b7c735e4a5b707b7d77634e3a25110000001b2f43586b7d8c92928d806d75869094918877644f3b2611001b30465b708488796b5c50667a8a82736455463625140200001b30465b708488796b5c50667a8a82736455463625140200001b30465b708487796a5b4c3c2c1b0a00000000000000010d22374c62778da18c76604b36210b010000000000001f34495e728799a7aeb1b0ab9f8d7965503b2611001b2f43586b7d8c92928d806d59442f1a00000000000000001f34495d72848d8f8f8d8b796c6c7d8d8d8f8f8c826d59442f1a001f344a5f748b9597988884827c7770685f554a3d30221304000000000000000d1c2b3845515c656d747a808386959797947d68533e2913001e33475c70828d898279737376707479828a8c806d59442f1a001f344a5f74868686868686868686806a543f2a221b110500000000000e2032445668798c9582705d4f61748799877462503d2b190700000000000d2032455866666e7070707070717377809085725e4a35200b001f344a5f748a9596989384705b46301b000000000000000000000000000000000000000000000004101b27333f4b56626e7986766452402e1b070000000000000000101d262c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c281f130400001f344a5f748687836c57422d2633404e5b67737d89909495938c8273655544321f0c00001f34495e73898d78634f5a6f85927c68533f2a160100001e33485d72879ba3a59c87707c92a0a4a2927c67523c271200192d42556573838a7a6b5b5d6b7a89837364544332200d0000192d42556573838a7a6b5b5d6c7a8a8373645443321f0d0000192e425666748389796a5a4a39271502000000091115161622374c62778da18c76604b362116161510080000001f344a5f748ba0b5c3c6c5bda8937c67523c2712001e33485d72879ba3a59c87705b46301b00000000000000001f344a5f748ba09a8e82776f8380707984909d9b87705b46301b001f344a5f748b8d8e90908d8a86807971675d51443728190a00000000000004142332404d59646e767d84888c8f908f8d8d7d68533e2913001f344a5f748b9f9d958d866f6073898e959d9c87725c47321d001e33475b6b6f6f6f6f6f6f6f6f6f6f64513d3b362e23150600000000031427384a5c6e80928d7a68596c7d918e7b69574532200e00000000000015293d4f6275797169635e5b5b5c5e6374898d77624c37220d001d32475c7084959e9e9786705b46301b000000000000000000000000000000000000000000000000000a16212d3945515c68736b594735231100000000000000000d1e2e3a41424242424242424242424242424242424242413c31221200001f34495e73889a85705b46323744515e6c7885919c948e8d8f98928372614e3b281501001d32475c7187927d6954586d8397836d5944301b0700001f344a5f748b8d8f908c806c80958b8f8e8676634f3a2611001225374755647383897968575c6a798a8271604f3d2a1703001225374755647383897968575c6b7a8a8271604f3d2a17030013263848566473838978685645321f0c00000f1b252a2b2b2b374c62778da18c76604b362b2b2b2a241a0d00001f34495d72879aa9b2b4b3aea08e7965503b2611001f344a5f748b8d8f908c806c58442f1a00000000000000001e33485c70838d887c6f63738884706672808a8c806c58432e1a001f34495e71777778797c82868d948d857a6f62554637281807000000000112223241505e6a76828a928f89837d7b7877777767523d2813001f34495d7286938f88827c6f6c727d8289909384705b46311c00182b3e4e585a5a5a5a5a5a5a5a5a5a545152504a403324140200000000091b2d3f516375879886736376899583705e4c3a281503000000000000192f44586c808d857d7773706f6f7175808f8975604b36210c00192d4154677784898985796956422e19000000000000000000000000000000000000000000000000000004101b27333e4a565f5b4e3c2a18060000000000000000172a3c4c55575757575757575757575757575757575757574f402f1c08001c31465a6f84998a75614e414955616f7c8a96968a8079777b8694907d6b5845311d09001b30455a6f8697836e59566b829788735e4a35200c00001e33485d7287877979776e677c907d78787367584734200c000b1d2d3c48556474858674624f5c6b7b8d7d6c5946321e0a000b1d2d3c48556474868674624f5c6b7b8d7d6c5946321e0a000a1c2d3c48556474868674614e3b2713000c1d2d393f404040404c62778da18c76604b404040403f372b1b0a001b2f43576a7c8b969da09f9a9082715e4b36220d001e33485d7287877979776e614f3d29150000000000000000192d4154647278756a5e667a8f8b7764616d76776f61503d2915001b2f42536062626364686c7178828c978d8072645546362514020000000e1f3040505f6e7b89948f857b746e6966636262625a4a37240f001b2f435668777d7b736d68798376686d757b7d766754402c18000f203041505c656766605648444655606667655d5142321f0c00000000001021334557697b8d907d6e82938a776553412f1d0a00000000000000192f44586c79838b928d88868686878a928a7c6c5946311d080011243749596670737370675b4b3a2713000000000000000000000000000000000000000000000000000000000a16212d39444a473e301f0d0000000000000000001d32465a696c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6b5e4b37230e00182c41556a7d92917d6b5c565b6672808d9b9285786d64626776889b8874604c37230e00192e43586e849888735f546a80948d78634f3a261100001a2f43576a7d8f7b6a635c6073878674635f56493a2917040014273a4b5a656b6c7a8e806b616a6e6f838975614d38240f0014273a4b5a656c6c7a8e7d6a616a6e6f838975614d38240f0014273a4b5a656c6c7a8e7d6a56422d1900172a3b4a54565656565662778da18c7660565656565653493927140014273a4d5e6d7983888b89867d726453412e1b07001a2f43576a7d8f7b6a635c514232200d000000000000000011243646545e636059596d829693806b575a61625c514232200d00122535434b4c4c4e5053575d656e79869291837364534331200d000007192b3d4e5e6e7d8c97897c7268605954514e4c4c4c473c2c1b08001427394b596468666058687c8f7a66596167686358493724110012263a4d5f6e797c7b736655435464727b7c796f604e3b281300000000000416283a4c5e6f829489788b91806d5a48362412000000000000000015293d4e5d6770777d8387898b8b888680776c5e4e3d2a160200081a2b3b49545b5e5e5b544a3d2d1c0a0000000000000000000000000000000000000000000000000000000000040f1b273034332b2012010000000000000000001f344a5f7483838383838383838383838383838383838379644f3a250f0012263b4e6276899b8a796f6b6f7884909c8f8274675a504c586a7d938f7a66513d281300172c42576c82978e786453687c93927d6954402b16020014283b4e6172848878685957697a8c827061524335251401001b3044576977808382898670717d848482907b66503b2611001b3044576977828382898670717d838482907b66503b2611001b30445769778283828986705b46301b001d324659686b6b6b6b6b6b778da18c766b6b6b6b6b6b6757432f1a000b1e2f404f5c666e737473706a615446362412000014283b4e617284887868594a3c2d1c0a000000000000000007192837424a4e4c465b70879c9a866f5a474d4d4840332415030007172530363737383b3e4349515c67748391928271604f3d2b180500122437495a6b7c8d9687786b5f554c45403c39373737332b1e0e00000a1c2d3c475053524c5c708496826e5a4d52534f473a2b1a0800162c40556a7d8c939085725e495d70838f938d7d6b56422d180300000000000b1d2f40526476899486958674614f3d2b190600000000000000000d20303f4a535c63686d7173747473706b645a4e40301f0d0000000d1d2b37404649494641382d1f0f000000000000000000000000000000000000000000000000000000000000000009141c1f1e180f02000000000000000000001f344a5f748b989898989898989898989898989898989079644f3a250f000b1f3346596c7d8f988c8382848b95988b7d706356493d3b4f64788d94806a55402b1600152b40546a8095937d6955667b9197836e5a45301c07000b1e3143556676878777685a5d6d7d8e8070615343301c08001f34495e73879598969887707d90999997917b66503b2611001f34495e73879598979887707d90989996917b66503b2611001f34495e73879598979887705b46301b001f344a5f74828282828282828ea18c82828282828282725c47321d00001122313e4a535a5e5f5e5c564e443728180700000b1e3143556676878777685a4b3926120000000000000000000a19252f36383744586c7d89887c6a56423838342d22150600000008141c2122222325292e353e4a56647283948f7d6c5a4734210c001a2e415466788a998978685a4d4239312b27242222221f180d000000000f1e2a343b3e3d4e63778c9e8a76624d3d3e3b34291c0d0000172c42576c82969f9c8b75604b5f74899b9f98836e58432e190300000000000011233547596b7d8f9b8e7b69574432200e0000000000000000000212212d3740484e54585c5e5f5f5e5b5650473d30221202000000000d1a242c323434322d251b0f0100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001f344a5f748b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b79644f3a250f0004172a3d4f6070808e989897999990867a6d605345382b364b5f748a91836d58432e180014293e53687d9398846f5a64798f9b88735f4a36210c00021426374858687787877768555f6f7d8d8071604b36210c001f344a5f7489999f9e93826d7d919c9f998a76624e39240f001f344a5f7489999f9e93826d7d919c9f998a76624e39240f001f344a5f74899a9f9e93826d58442f1a001f344a5f748b9797979797979ba09a97979797979788725c47321d00000413212d373f45484a4947423b3126190a00000002142637485868778787776855402c160000000000000000000008131b2123293d4f606d73736b5e4d3a272320191005000000000001080c0d0d0e10141a222c394655657587998a77644f3a2510001f34495d7183968d7b6a5a4a3d30251d16120f0d0d0d0a040000000000000d182126293b50667b919f9079644f3a292620170c000000152a3f536678858a88806e5b475a6d7d888b86796854402b17020000000000000618293c4d5f71838b83705e4c3a2715030000000000000000000003101b242c333a3f4447484a4a4846423c342b2012040000000000000811181d1f1f1d181208000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001f34495d7074747474747474747474747474747474747473624e39240f00000d1f314252616f7b84898b89857d73685c4f4235281e33485e737c7c7a6d58432e180012273c51667b888683745f627789878478634e38230e0000081a2a3a4a596876847c6b5651606e7c8373604c37210c001c3145596b7b868b8982746472808889867b6c5a47331f0b001c3146596c7b86898982746472808889867b6c5a47331f0b001c3146596c7c868b89837464513e2a15001f344a5f748b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b88725c47321d000000030f1a242b30333434322d271e14080000000000081a2a3a4a596876847c6b56412c17000000000000000000000000070c0e203242505a5e5e584e402f1e0e0b05000000000000000000000000000000060f1b28374758697b867d74634f3a2510001f34495d707a8382705e4c3c2c1f1309020000000000000000000000000000050d1225394e6275858a8474614d3823110c04000000001024374a5a687174736c61513f4f606c737471695b4b39251100000000000000000c1e304254667474746553412f1c0a000000000000000000000000000811191f252b2f3233343433312d2821180e020000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001a2e41515d5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5e5545331f0b00000214243443515e6870737473706960564b3e3225171b304456656867665f503d29150010253a4f637373706e695a5f7073706e6b5d4a36210c0000000c1c2c3b4a5866736d5e4e42505e6b72645544311d0900162a3c4e5d697174746f6456636d727371695d4e3d2a170400162a3d4e5e697173736e6456636d727371695d4e3d2a170400162a3d4e5e6a7174746f65564634210e001f34495d7074747474747474747474747474747474746e5b46311c00000000000710171b1e1f1f1d19130b02000000000000000c1c2c3b4a5866736d5e4e3b28130000000000000000000000000000021423323d454949443c30221200000000000000000000000000000000000000000a19293a4c5f70726961564634200c001a2e41515e666f746553402f1e0e010000000000000000000000000000000000000b1f33465867717470655644311e09000000000000071a2c3c4a555d5f5e594f4233424e585e5f5d564c3d2d1b0900000000000000000113253648585f5f5f574836241100000000000000000000000000000000040b11161a1c1e1f1f1e1c18130d05000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000011233341494a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a49433727160300000006162534414c545b5f5f5f5b554d44392d21140714273948515352504c4132210e000c203345555e5e5b58554c525d5e5c59564e3f2e1b07000000000e1d2c3a48555e5c4f4032404d5a5d564737271502000d1f303f4c565d5f5f5b534750585d5e5c564c3f301f0d00000d1f30404c565c5f5e5a524750585d5e5c564c3f301f0d00000d1f30404d575d5f5f5b534738281705001a2e41515d5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5c503e2b17000000000000000000000000000000000000000000000000000e1d2c3a48555e5c4f40301f0c0000000000000000000000000000000514212a31343430291f12040000000000000000000000000000000000000000000b1d2f42525d5e564d443828170400112333414a535b5f574836231100000000000000000000000000000000000000000316283a49555d5f5c544738271502000000000000000e1e2c3842484a49453d3224313c44484a48433a2e1f0f0000000000000000000007192b3a454a4a4a44392a19060000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000515232e34343434343434343434343434343434343434343026190a00000000000716232f3940464a4a4a46413a31271c1003000a1b2a363d3e3c3b383023140300041628374349494643413a4149494744413b3021100000000000000e1c2a384349483e31222f3d4648433829190900000112212f3a42484a4a463f353d44484847423a2f21120100000212222f3a42474a49463f353d44484847423a2e21120100000212222f3a43484a4a463f36291a0b000011233341494a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a483f32210f00000000000000000000000000000000000000000000000000000e1c2a384349483e3122120100000000000000000000000000000000030e161c1f1f1b150d010000000000000000000000000000000000000000000000122434414949423a31271a0b00000515232e373f474a44392a19060000000000000000000000000000000000000000000b1c2b3842484a474137291a0a0000000000000000000e1b262e333434302a20141f29303334332e271d100100000000000000000000000d1c283134343431281b0c000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005111a1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1b14090000000000000005111c252c31343434312d261e140a000000000c192228282726231c12050000000a1926303434312e2c262e3434312f2c281f1203000000000000000c1a263034332c21131f2a31332f261a0b0000000003111d272e333434322b23292f3333322e271d11030000000004111d272e323434312b23292f3333322e271d11030000000004111e272e333434322c23180b0000000515232e343434343434343434343434343434343434332d2213030000000000000000000000000000000000000000000000000000000c1a263034332c21130400000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000616242e34342f271e150a0000000006121b242c333431281b0c00000000000000000000000000000000000000000000000d1a262e3334322d24190b00000000000000000000000912191e1f1f1b160d030d151b1e1f1e1a130a00000000000000000000000000000b151c1f1f1f1c150a00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000911181c1f1f1f1c18120a01000000000000060e131312110e0900000000000009141b1f1f1c1917121a1f1f1c1a17130c0100000000000000000009141b1f1e190f030d171c1e1b1409000000000000000a131a1e1f1f1d1710151b1e1e1d19130a00000000000000000a13191d1f1f1c170f151b1e1e1d19130a00000000000000000b141a1e1f1f1d181006000000000005111a1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1e191004000000000000000000000000000000000000000000000000000000000009141b1f1e190f030000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000006121a1f1f1b130a02000000000000000810181e1f1c150a000000000000000000000000000000000000000000000000000912191e1f1e191107000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 + m_StreamData: + offset: 0 + size: 0 + path: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/ModResources/Fonts/BioRhymeExpanded-Regular SDF.asset.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/ModResources/Fonts/BioRhymeExpanded-Regular SDF.asset.meta" new file mode 100644 index 00000000..b2401785 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/ModResources/Fonts/BioRhymeExpanded-Regular SDF.asset.meta" @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 2d0aaede2506c4ca0969c32576224028 +NativeFormatImporter: + externalObjects: {} + mainObjectFileID: 11400000 + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/ModResources/Fonts/CormorantUnicase-Regular SDF.asset" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/ModResources/Fonts/CormorantUnicase-Regular SDF.asset" new file mode 100644 index 00000000..73a0adcb --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/ModResources/Fonts/CormorantUnicase-Regular SDF.asset" @@ -0,0 +1,6417 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!114 &11400000 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 71c1514a6bd24e1e882cebbe1904ce04, type: 3} + m_Name: CormorantUnicase-Regular SDF + m_EditorClassIdentifier: + hashCode: -1435558027 + material: {fileID: 21404399205216556} + materialHashCode: 815426142 + m_Version: 1.1.0 + m_SourceFontFileGUID: 3a8e9284af26b4291a008041e2e9e241 + m_SourceFontFile_EditorRef: {fileID: 0} + m_SourceFontFile: {fileID: 0} + m_AtlasPopulationMode: 0 + m_FaceInfo: + m_FamilyName: Cormorant Unicase + m_StyleName: + m_PointSize: 47 + m_Scale: 1 + m_LineHeight: 56.9375 + m_AscentLine: 43.4375 + m_CapLine: 29.374998 + m_MeanLine: 0 + m_Baseline: 0 + m_DescentLine: -13.5 + m_SuperscriptOffset: 43.4375 + m_SuperscriptSize: 0.5 + m_SubscriptOffset: -4.7000003 + m_SubscriptSize: 0.5 + m_UnderlineOffset: -4.7000003 + m_UnderlineThickness: 2.3500001 + m_StrikethroughOffset: 10.886364 + m_StrikethroughThickness: 2.3500001 + m_TabWidth: 110 + m_GlyphTable: + - m_Index: 1 + m_Metrics: + m_Width: 11 + m_Height: 56.9375 + m_HorizontalBearingX: 0 + m_HorizontalBearingY: 43.4375 + m_HorizontalAdvance: 11 + m_GlyphRect: + m_X: 6 + m_Y: -62 + m_Width: 11 + m_Height: 57 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 2 + m_Metrics: + m_Width: 4.5624995 + m_Height: 30.062498 + m_HorizontalBearingX: 3.4999998 + m_HorizontalBearingY: 29.624998 + m_HorizontalAdvance: 11.625 + m_GlyphRect: + m_X: 278 + m_Y: 179 + m_Width: 5 + m_Height: 30 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 3 + m_Metrics: + m_Width: 10.312499 + m_Height: 13.062499 + m_HorizontalBearingX: 1.9374999 + m_HorizontalBearingY: 30.124998 + m_HorizontalAdvance: 13.3125 + m_GlyphRect: + m_X: 181 + m_Y: 452 + m_Width: 10 + m_Height: 13 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 4 + m_Metrics: + m_Width: 19.249998 + m_Height: 26.749998 + m_HorizontalBearingX: 2.6874998 + m_HorizontalBearingY: 22.937498 + m_HorizontalAdvance: 24.75 + m_GlyphRect: + m_X: 222 + m_Y: 140 + m_Width: 19 + m_Height: 27 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 5 + m_Metrics: + m_Width: 14.437499 + m_Height: 31.874998 + m_HorizontalBearingX: 2.6874998 + m_HorizontalBearingY: 26.749998 + m_HorizontalAdvance: 19.3125 + m_GlyphRect: + m_X: 279 + m_Y: 220 + m_Width: 14 + m_Height: 32 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 6 + m_Metrics: + m_Width: 24.687498 + m_Height: 22.874998 + m_HorizontalBearingX: 1.2499999 + m_HorizontalBearingY: 22.562498 + m_HorizontalAdvance: 27 + m_GlyphRect: + m_X: 93 + m_Y: 266 + m_Width: 25 + m_Height: 23 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 7 + m_Metrics: + m_Width: 23.187498 + m_Height: 23.124998 + m_HorizontalBearingX: 1.8749999 + m_HorizontalBearingY: 22.562498 + m_HorizontalAdvance: 25.125 + m_GlyphRect: + m_X: 129 + m_Y: 357 + m_Width: 23 + m_Height: 23 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 8 + m_Metrics: + m_Width: 3.6249998 + m_Height: 13.062499 + m_HorizontalBearingX: 1.9374999 + m_HorizontalBearingY: 30.124998 + m_HorizontalAdvance: 6.5625 + m_GlyphRect: + m_X: 321 + m_Y: 476 + m_Width: 4 + m_Height: 13 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 9 + m_Metrics: + m_Width: 10.124999 + m_Height: 39.687496 + m_HorizontalBearingX: 2.9999998 + m_HorizontalBearingY: 34.124996 + m_HorizontalAdvance: 14.5 + m_GlyphRect: + m_X: 230 + m_Y: 47 + m_Width: 10 + m_Height: 40 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 10 + m_Metrics: + m_Width: 10.062499 + m_Height: 39.687496 + m_HorizontalBearingX: 1.3124999 + m_HorizontalBearingY: 34.124996 + m_HorizontalAdvance: 14.5 + m_GlyphRect: + m_X: 74 + m_Y: 389 + m_Width: 10 + m_Height: 40 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 11 + m_Metrics: + m_Width: 17.562498 + m_Height: 17.937498 + m_HorizontalBearingX: 2.4999998 + m_HorizontalBearingY: 32.437496 + m_HorizontalAdvance: 21.0625 + m_GlyphRect: + m_X: 305 + m_Y: 266 + m_Width: 18 + m_Height: 18 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 12 + m_Metrics: + m_Width: 15.937499 + m_Height: 15.937499 + m_HorizontalBearingX: 1.3124999 + m_HorizontalBearingY: 18.562498 + m_HorizontalAdvance: 18.6875 + m_GlyphRect: + m_X: 231 + m_Y: 455 + m_Width: 16 + m_Height: 16 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 13 + m_Metrics: + m_Width: 5.1874995 + m_Height: 10.812499 + m_HorizontalBearingX: 2.6249998 + m_HorizontalBearingY: 3.3749998 + m_HorizontalAdvance: 10.4375 + m_GlyphRect: + m_X: 430 + m_Y: 494 + m_Width: 5 + m_Height: 11 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 14 + m_Metrics: + m_Width: 10.437499 + m_Height: 3.8124998 + m_HorizontalBearingX: 1.2499999 + m_HorizontalBearingY: 13.312499 + m_HorizontalAdvance: 13.25 + m_GlyphRect: + m_X: 305 + m_Y: 502 + m_Width: 10 + m_Height: 4 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 15 + m_Metrics: + m_Width: 4.1874995 + m_Height: 3.9999998 + m_HorizontalBearingX: 2.5624998 + m_HorizontalBearingY: 3.4999998 + m_HorizontalAdvance: 9.25 + m_GlyphRect: + m_X: 398 + m_Y: 502 + m_Width: 4 + m_Height: 4 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 16 + m_Metrics: + m_Width: 13.687499 + m_Height: 42.374996 + m_HorizontalBearingX: 1.1249999 + m_HorizontalBearingY: 34.499996 + m_HorizontalAdvance: 16 + m_GlyphRect: + m_X: 45 + m_Y: 341 + m_Width: 14 + m_Height: 42 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 17 + m_Metrics: + m_Width: 22.249998 + m_Height: 23.062498 + m_HorizontalBearingX: 1.6874999 + m_HorizontalBearingY: 22.499998 + m_HorizontalAdvance: 25.6875 + m_GlyphRect: + m_X: 427 + m_Y: 181 + m_Width: 22 + m_Height: 23 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 18 + m_Metrics: + m_Width: 12.312499 + m_Height: 22.499998 + m_HorizontalBearingX: 1.9999999 + m_HorizontalBearingY: 22.562498 + m_HorizontalAdvance: 16.1875 + m_GlyphRect: + m_X: 451 + m_Y: 257 + m_Width: 12 + m_Height: 22 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 19 + m_Metrics: + m_Width: 17.749998 + m_Height: 23.062498 + m_HorizontalBearingX: 1.5624999 + m_HorizontalBearingY: 23.124998 + m_HorizontalAdvance: 21.125 + m_GlyphRect: + m_X: 334 + m_Y: 262 + m_Width: 18 + m_Height: 23 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 20 + m_Metrics: + m_Width: 16.937498 + m_Height: 30.437498 + m_HorizontalBearingX: 1.2499999 + m_HorizontalBearingY: 23.062498 + m_HorizontalAdvance: 20.875 + m_GlyphRect: + m_X: 224 + m_Y: 99 + m_Width: 17 + m_Height: 30 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 21 + m_Metrics: + m_Width: 19.937498 + m_Height: 30.374998 + m_HorizontalBearingX: 0.56249994 + m_HorizontalBearingY: 22.687498 + m_HorizontalAdvance: 22.5625 + m_GlyphRect: + m_X: 153 + m_Y: 392 + m_Width: 20 + m_Height: 30 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 22 + m_Metrics: + m_Width: 15.187499 + m_Height: 31.312498 + m_HorizontalBearingX: 2.6249998 + m_HorizontalBearingY: 23.937498 + m_HorizontalAdvance: 20.375 + m_GlyphRect: + m_X: 154 + m_Y: 434 + m_Width: 15 + m_Height: 31 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 23 + m_Metrics: + m_Width: 19.437498 + m_Height: 29.249998 + m_HorizontalBearingX: 2.2499998 + m_HorizontalBearingY: 28.624998 + m_HorizontalAdvance: 23.5625 + m_GlyphRect: + m_X: 397 + m_Y: 216 + m_Width: 19 + m_Height: 29 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 24 + m_Metrics: + m_Width: 19.062498 + m_Height: 30.874998 + m_HorizontalBearingX: 1.6249999 + m_HorizontalBearingY: 23.374998 + m_HorizontalAdvance: 22.375 + m_GlyphRect: + m_X: 294 + m_Y: 177 + m_Width: 19 + m_Height: 31 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 25 + m_Metrics: + m_Width: 21.124998 + m_Height: 29.249998 + m_HorizontalBearingX: 2.8124998 + m_HorizontalBearingY: 28.624998 + m_HorizontalAdvance: 26.8125 + m_GlyphRect: + m_X: 428 + m_Y: 216 + m_Width: 21 + m_Height: 29 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 26 + m_Metrics: + m_Width: 19.124998 + m_Height: 29.874998 + m_HorizontalBearingX: 1.8124999 + m_HorizontalBearingY: 22.624998 + m_HorizontalAdvance: 23.5625 + m_GlyphRect: + m_X: 363 + m_Y: 257 + m_Width: 19 + m_Height: 30 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 27 + m_Metrics: + m_Width: 4.1874995 + m_Height: 19.937498 + m_HorizontalBearingX: 2.5624998 + m_HorizontalBearingY: 19.437498 + m_HorizontalAdvance: 9.25 + m_GlyphRect: + m_X: 475 + m_Y: 254 + m_Width: 4 + m_Height: 20 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 28 + m_Metrics: + m_Width: 5.1874995 + m_Height: 26.937498 + m_HorizontalBearingX: 2.6249998 + m_HorizontalBearingY: 19.437498 + m_HorizontalAdvance: 10.5 + m_GlyphRect: + m_X: 449 + m_Y: 90 + m_Width: 5 + m_Height: 27 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 29 + m_Metrics: + m_Width: 16.312498 + m_Height: 15.687499 + m_HorizontalBearingX: 1.4374999 + m_HorizontalBearingY: 18.999998 + m_HorizontalAdvance: 19.125 + m_GlyphRect: + m_X: 487 + m_Y: 335 + m_Width: 16 + m_Height: 16 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 30 + m_Metrics: + m_Width: 19.249998 + m_Height: 8.374999 + m_HorizontalBearingX: 1.3124999 + m_HorizontalBearingY: 15.374999 + m_HorizontalAdvance: 22 + m_GlyphRect: + m_X: 427 + m_Y: 475 + m_Width: 19 + m_Height: 8 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 31 + m_Metrics: + m_Width: 16.249998 + m_Height: 15.624999 + m_HorizontalBearingX: 1.3749999 + m_HorizontalBearingY: 18.999998 + m_HorizontalAdvance: 19.125 + m_GlyphRect: + m_X: 487 + m_Y: 362 + m_Width: 16 + m_Height: 16 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 32 + m_Metrics: + m_Width: 11.999999 + m_Height: 29.874998 + m_HorizontalBearingX: 1.9999999 + m_HorizontalBearingY: 29.374998 + m_HorizontalAdvance: 15.4375 + m_GlyphRect: + m_X: 222 + m_Y: 300 + m_Width: 12 + m_Height: 30 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 33 + m_Metrics: + m_Width: 26.937498 + m_Height: 27.749998 + m_HorizontalBearingX: 3.4374998 + m_HorizontalBearingY: 24.562498 + m_HorizontalAdvance: 33.8125 + m_GlyphRect: + m_X: 203 + m_Y: 220 + m_Width: 27 + m_Height: 28 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 34 + m_Metrics: + m_Width: 33.249996 + m_Height: 29.937498 + m_HorizontalBearingX: -0.24999999 + m_HorizontalBearingY: 29.999998 + m_HorizontalAdvance: 33 + m_GlyphRect: + m_X: 160 + m_Y: 6 + m_Width: 33 + m_Height: 30 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 35 + m_Metrics: + m_Width: 21.937498 + m_Height: 29.687498 + m_HorizontalBearingX: 1.8749999 + m_HorizontalBearingY: 29.562498 + m_HorizontalAdvance: 26.25 + m_GlyphRect: + m_X: 461 + m_Y: 213 + m_Width: 22 + m_Height: 30 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 36 + m_Metrics: + m_Width: 27.124998 + m_Height: 30.437498 + m_HorizontalBearingX: 2.2499998 + m_HorizontalBearingY: 29.937498 + m_HorizontalAdvance: 31.4375 + m_GlyphRect: + m_X: 125 + m_Y: 178 + m_Width: 27 + m_Height: 30 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 37 + m_Metrics: + m_Width: 28.624998 + m_Height: 29.687498 + m_HorizontalBearingX: 1.4999999 + m_HorizontalBearingY: 29.499998 + m_HorizontalAdvance: 32.5 + m_GlyphRect: + m_X: 142 + m_Y: 136 + m_Width: 29 + m_Height: 30 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 38 + m_Metrics: + m_Width: 20.937498 + m_Height: 29.374998 + m_HorizontalBearingX: 1.8749999 + m_HorizontalBearingY: 29.374998 + m_HorizontalAdvance: 25.25 + m_GlyphRect: + m_X: 485 + m_Y: 132 + m_Width: 21 + m_Height: 29 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 39 + m_Metrics: + m_Width: 19.562498 + m_Height: 29.374998 + m_HorizontalBearingX: 1.8749999 + m_HorizontalBearingY: 29.374998 + m_HorizontalAdvance: 23.9375 + m_GlyphRect: + m_X: 191 + m_Y: 301 + m_Width: 20 + m_Height: 29 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 40 + m_Metrics: + m_Width: 29.499998 + m_Height: 30.437498 + m_HorizontalBearingX: 2.2499998 + m_HorizontalBearingY: 29.937498 + m_HorizontalAdvance: 33.5625 + m_GlyphRect: + m_X: 51 + m_Y: 296 + m_Width: 29 + m_Height: 30 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 41 + m_Metrics: + m_Width: 32.499996 + m_Height: 29.374998 + m_HorizontalBearingX: 1.4999999 + m_HorizontalBearingY: 29.374998 + m_HorizontalAdvance: 35.6875 + m_GlyphRect: + m_X: 205 + m_Y: 7 + m_Width: 32 + m_Height: 29 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 42 + m_Metrics: + m_Width: 11.437499 + m_Height: 29.374998 + m_HorizontalBearingX: 2.0624998 + m_HorizontalBearingY: 29.374998 + m_HorizontalAdvance: 15.625 + m_GlyphRect: + m_X: 228 + m_Y: 342 + m_Width: 11 + m_Height: 29 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 43 + m_Metrics: + m_Width: 15.437499 + m_Height: 40.812496 + m_HorizontalBearingX: -2.1874998 + m_HorizontalBearingY: 29.374998 + m_HorizontalAdvance: 15.125 + m_GlyphRect: + m_X: 70 + m_Y: 337 + m_Width: 15 + m_Height: 41 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 44 + m_Metrics: + m_Width: 28.687498 + m_Height: 29.437498 + m_HorizontalBearingX: 1.4999999 + m_HorizontalBearingY: 29.374998 + m_HorizontalAdvance: 30.5625 + m_GlyphRect: + m_X: 182 + m_Y: 138 + m_Width: 29 + m_Height: 29 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 45 + m_Metrics: + m_Width: 22.937498 + m_Height: 29.374998 + m_HorizontalBearingX: 1.4999999 + m_HorizontalBearingY: 29.374998 + m_HorizontalAdvance: 25.0625 + m_GlyphRect: + m_X: 461 + m_Y: 173 + m_Width: 23 + m_Height: 29 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 46 + m_Metrics: + m_Width: 36.562496 + m_Height: 29.374998 + m_HorizontalBearingX: 1.6874999 + m_HorizontalBearingY: 29.374998 + m_HorizontalAdvance: 39.3125 + m_GlyphRect: + m_X: 112 + m_Y: 7 + m_Width: 37 + m_Height: 29 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 47 + m_Metrics: + m_Width: 31.437498 + m_Height: 30.124998 + m_HorizontalBearingX: 1.7499999 + m_HorizontalBearingY: 29.374998 + m_HorizontalAdvance: 34.1875 + m_GlyphRect: + m_X: 395 + m_Y: 7 + m_Width: 31 + m_Height: 30 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 48 + m_Metrics: + m_Width: 31.374998 + m_Height: 30.437498 + m_HorizontalBearingX: 2.2499998 + m_HorizontalBearingY: 29.937498 + m_HorizontalAdvance: 36 + m_GlyphRect: + m_X: 438 + m_Y: 7 + m_Width: 31 + m_Height: 30 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 49 + m_Metrics: + m_Width: 21.687498 + m_Height: 29.499998 + m_HorizontalBearingX: 1.8749999 + m_HorizontalBearingY: 29.562498 + m_HorizontalAdvance: 25.5 + m_GlyphRect: + m_X: 174 + m_Y: 260 + m_Width: 22 + m_Height: 29 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 50 + m_Metrics: + m_Width: 32.999996 + m_Height: 38.499996 + m_HorizontalBearingX: 2.2499998 + m_HorizontalBearingY: 29.937498 + m_HorizontalAdvance: 36 + m_GlyphRect: + m_X: 6 + m_Y: 98 + m_Width: 33 + m_Height: 38 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 51 + m_Metrics: + m_Width: 30.249998 + m_Height: 29.499998 + m_HorizontalBearingX: 1.8749999 + m_HorizontalBearingY: 29.562498 + m_HorizontalAdvance: 31.625 + m_GlyphRect: + m_X: 466 + m_Y: 57 + m_Width: 30 + m_Height: 29 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 52 + m_Metrics: + m_Width: 17.437498 + m_Height: 30.437498 + m_HorizontalBearingX: 3.1249998 + m_HorizontalBearingY: 29.937498 + m_HorizontalAdvance: 23.0625 + m_GlyphRect: + m_X: 162 + m_Y: 310 + m_Width: 17 + m_Height: 30 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 53 + m_Metrics: + m_Width: 26.312498 + m_Height: 30.749998 + m_HorizontalBearingX: 1.7499999 + m_HorizontalBearingY: 30.749998 + m_HorizontalAdvance: 29.8125 + m_GlyphRect: + m_X: 125 + m_Y: 219 + m_Width: 26 + m_Height: 31 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 54 + m_Metrics: + m_Width: 30.624998 + m_Height: 29.999998 + m_HorizontalBearingX: 1.2499999 + m_HorizontalBearingY: 29.374998 + m_HorizontalAdvance: 32.8125 + m_GlyphRect: + m_X: 50 + m_Y: 106 + m_Width: 31 + m_Height: 30 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 55 + m_Metrics: + m_Width: 31.749998 + m_Height: 29.499998 + m_HorizontalBearingX: -0.24999999 + m_HorizontalBearingY: 29.374998 + m_HorizontalAdvance: 31.3125 + m_GlyphRect: + m_X: 380 + m_Y: 49 + m_Width: 32 + m_Height: 29 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 56 + m_Metrics: + m_Width: 44.249996 + m_Height: 29.499998 + m_HorizontalBearingX: -0.24999999 + m_HorizontalBearingY: 29.374998 + m_HorizontalAdvance: 43.75 + m_GlyphRect: + m_X: 6 + m_Y: 7 + m_Width: 44 + m_Height: 29 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 57 + m_Metrics: + m_Width: 29.249998 + m_Height: 29.374998 + m_HorizontalBearingX: 0.62499994 + m_HorizontalBearingY: 29.374998 + m_HorizontalAdvance: 30.625 + m_GlyphRect: + m_X: 142 + m_Y: 96 + m_Width: 29 + m_Height: 29 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 58 + m_Metrics: + m_Width: 29.124998 + m_Height: 29.374998 + m_HorizontalBearingX: -0.24999999 + m_HorizontalBearingY: 29.374998 + m_HorizontalAdvance: 28.625 + m_GlyphRect: + m_X: 183 + m_Y: 97 + m_Width: 29 + m_Height: 29 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 59 + m_Metrics: + m_Width: 24.062498 + m_Height: 30.874998 + m_HorizontalBearingX: 2.3749998 + m_HorizontalBearingY: 30.874998 + m_HorizontalAdvance: 27.9375 + m_GlyphRect: + m_X: 376 + m_Y: 89 + m_Width: 24 + m_Height: 31 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 60 + m_Metrics: + m_Width: 7.1249995 + m_Height: 39.562496 + m_HorizontalBearingX: 4.1249995 + m_HorizontalBearingY: 34.124996 + m_HorizontalAdvance: 12.875 + m_GlyphRect: + m_X: 80 + m_Y: 440 + m_Width: 7 + m_Height: 40 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 61 + m_Metrics: + m_Width: 13.749999 + m_Height: 42.374996 + m_HorizontalBearingX: 1.1249999 + m_HorizontalBearingY: 34.499996 + m_HorizontalAdvance: 16 + m_GlyphRect: + m_X: 49 + m_Y: 395 + m_Width: 14 + m_Height: 42 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 62 + m_Metrics: + m_Width: 7.1249995 + m_Height: 39.562496 + m_HorizontalBearingX: 1.6249999 + m_HorizontalBearingY: 34.124996 + m_HorizontalAdvance: 12.875 + m_GlyphRect: + m_X: 96 + m_Y: 389 + m_Width: 7 + m_Height: 40 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 63 + m_Metrics: + m_Width: 12.937499 + m_Height: 12.312499 + m_HorizontalBearingX: 2.6249998 + m_HorizontalBearingY: 22.249998 + m_HorizontalAdvance: 18.4375 + m_GlyphRect: + m_X: 6 + m_Y: 494 + m_Width: 13 + m_Height: 12 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 64 + m_Metrics: + m_Width: 15.937499 + m_Height: 1.8749999 + m_HorizontalBearingX: 1.3124999 + m_HorizontalBearingY: -1.6874999 + m_HorizontalAdvance: 18.6875 + m_GlyphRect: + m_X: 479 + m_Y: 389 + m_Width: 16 + m_Height: 2 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 65 + m_Metrics: + m_Width: 11.124999 + m_Height: 5.0624995 + m_HorizontalBearingX: 0.74999994 + m_HorizontalBearingY: 25.749998 + m_HorizontalAdvance: 12.875 + m_GlyphRect: + m_X: 327 + m_Y: 501 + m_Width: 11 + m_Height: 5 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 66 + m_Metrics: + m_Width: 19.624998 + m_Height: 22.812498 + m_HorizontalBearingX: 2.9999998 + m_HorizontalBearingY: 22.437498 + m_HorizontalAdvance: 22.4375 + m_GlyphRect: + m_X: 363 + m_Y: 339 + m_Width: 20 + m_Height: 23 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 67 + m_Metrics: + m_Width: 20.062498 + m_Height: 22.312498 + m_HorizontalBearingX: 1.4999999 + m_HorizontalBearingY: 22.187498 + m_HorizontalAdvance: 23.4375 + m_GlyphRect: + m_X: 422 + m_Y: 407 + m_Width: 20 + m_Height: 22 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 68 + m_Metrics: + m_Width: 21.499998 + m_Height: 23.124998 + m_HorizontalBearingX: 1.6874999 + m_HorizontalBearingY: 22.562498 + m_HorizontalAdvance: 25.3125 + m_GlyphRect: + m_X: 164 + m_Y: 352 + m_Width: 21 + m_Height: 23 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 69 + m_Metrics: + m_Width: 23.437498 + m_Height: 22.249998 + m_HorizontalBearingX: 1.4999999 + m_HorizontalBearingY: 22.124998 + m_HorizontalAdvance: 26.6875 + m_GlyphRect: + m_X: 361 + m_Y: 444 + m_Width: 23 + m_Height: 22 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 70 + m_Metrics: + m_Width: 17.874998 + m_Height: 23.062498 + m_HorizontalBearingX: 1.6874999 + m_HorizontalBearingY: 22.562498 + m_HorizontalAdvance: 20.625 + m_GlyphRect: + m_X: 309 + m_Y: 379 + m_Width: 18 + m_Height: 23 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 71 + m_Metrics: + m_Width: 16.999998 + m_Height: 21.999998 + m_HorizontalBearingX: 1.4999999 + m_HorizontalBearingY: 21.999998 + m_HorizontalAdvance: 20.0625 + m_GlyphRect: + m_X: 394 + m_Y: 340 + m_Width: 17 + m_Height: 22 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 72 + m_Metrics: + m_Width: 23.437498 + m_Height: 23.124998 + m_HorizontalBearingX: 1.6874999 + m_HorizontalBearingY: 22.562498 + m_HorizontalAdvance: 26.1875 + m_GlyphRect: + m_X: 274 + m_Y: 379 + m_Width: 23 + m_Height: 23 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 73 + m_Metrics: + m_Width: 26.187498 + m_Height: 21.999998 + m_HorizontalBearingX: 1.4999999 + m_HorizontalBearingY: 21.999998 + m_HorizontalAdvance: 29.25 + m_GlyphRect: + m_X: 200 + m_Y: 382 + m_Width: 26 + m_Height: 22 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 74 + m_Metrics: + m_Width: 10.187499 + m_Height: 21.999998 + m_HorizontalBearingX: 1.8124999 + m_HorizontalBearingY: 21.999998 + m_HorizontalAdvance: 13.75 + m_GlyphRect: + m_X: 454 + m_Y: 404 + m_Width: 10 + m_Height: 22 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 75 + m_Metrics: + m_Width: 10.312499 + m_Height: 30.562498 + m_HorizontalBearingX: 1.2499999 + m_HorizontalBearingY: 21.999998 + m_HorizontalAdvance: 12.625 + m_GlyphRect: + m_X: 495 + m_Y: 172 + m_Width: 10 + m_Height: 31 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 76 + m_Metrics: + m_Width: 23.687498 + m_Height: 21.999998 + m_HorizontalBearingX: 1.4999999 + m_HorizontalBearingY: 21.999998 + m_HorizontalAdvance: 25.375 + m_GlyphRect: + m_X: 422 + m_Y: 340 + m_Width: 24 + m_Height: 22 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 77 + m_Metrics: + m_Width: 19.499998 + m_Height: 21.999998 + m_HorizontalBearingX: 1.4999999 + m_HorizontalBearingY: 21.999998 + m_HorizontalAdvance: 21.75 + m_GlyphRect: + m_X: 396 + m_Y: 449 + m_Width: 19 + m_Height: 22 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 78 + m_Metrics: + m_Width: 39.749996 + m_Height: 22.624998 + m_HorizontalBearingX: 1.4999999 + m_HorizontalBearingY: 22.624998 + m_HorizontalAdvance: 41.8125 + m_GlyphRect: + m_X: 249 + m_Y: 6 + m_Width: 40 + m_Height: 23 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 79 + m_Metrics: + m_Width: 25.999998 + m_Height: 22.562498 + m_HorizontalBearingX: 1.4999999 + m_HorizontalBearingY: 22.562498 + m_HorizontalAdvance: 28.0625 + m_GlyphRect: + m_X: 92 + m_Y: 300 + m_Width: 26 + m_Height: 23 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 80 + m_Metrics: + m_Width: 23.749998 + m_Height: 23.124998 + m_HorizontalBearingX: 1.6874999 + m_HorizontalBearingY: 22.562498 + m_HorizontalAdvance: 27.125 + m_GlyphRect: + m_X: 361 + m_Y: 374 + m_Width: 24 + m_Height: 23 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 81 + m_Metrics: + m_Width: 18.249998 + m_Height: 22.124998 + m_HorizontalBearingX: 1.4999999 + m_HorizontalBearingY: 22.187498 + m_HorizontalAdvance: 21.6875 + m_GlyphRect: + m_X: 427 + m_Y: 441 + m_Width: 18 + m_Height: 22 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 82 + m_Metrics: + m_Width: 26.874998 + m_Height: 30.999998 + m_HorizontalBearingX: 1.6874999 + m_HorizontalBearingY: 22.562498 + m_HorizontalAdvance: 27.125 + m_GlyphRect: + m_X: 164 + m_Y: 178 + m_Width: 27 + m_Height: 31 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 83 + m_Metrics: + m_Width: 24.062498 + m_Height: 22.124998 + m_HorizontalBearingX: 1.4999999 + m_HorizontalBearingY: 22.187498 + m_HorizontalAdvance: 25.0625 + m_GlyphRect: + m_X: 238 + m_Y: 384 + m_Width: 24 + m_Height: 22 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 84 + m_Metrics: + m_Width: 14.499999 + m_Height: 23.124998 + m_HorizontalBearingX: 2.2499998 + m_HorizontalBearingY: 22.562498 + m_HorizontalAdvance: 18.5 + m_GlyphRect: + m_X: 396 + m_Y: 415 + m_Width: 14 + m_Height: 23 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 85 + m_Metrics: + m_Width: 15.312499 + m_Height: 25.562498 + m_HorizontalBearingX: 1.6874999 + m_HorizontalBearingY: 25.062498 + m_HorizontalAdvance: 17.625 + m_GlyphRect: + m_X: 293 + m_Y: 140 + m_Width: 15 + m_Height: 26 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 86 + m_Metrics: + m_Width: 26.062498 + m_Height: 22.562498 + m_HorizontalBearingX: 1.3124999 + m_HorizontalBearingY: 21.999998 + m_HorizontalAdvance: 28.9375 + m_GlyphRect: + m_X: 240 + m_Y: 260 + m_Width: 26 + m_Height: 23 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 87 + m_Metrics: + m_Width: 24.562498 + m_Height: 22.124998 + m_HorizontalBearingX: -0.24999999 + m_HorizontalBearingY: 21.999998 + m_HorizontalAdvance: 24 + m_GlyphRect: + m_X: 238 + m_Y: 418 + m_Width: 25 + m_Height: 22 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 88 + m_Metrics: + m_Width: 34.437496 + m_Height: 22.124998 + m_HorizontalBearingX: -0.24999999 + m_HorizontalBearingY: 21.999998 + m_HorizontalAdvance: 33.875 + m_GlyphRect: + m_X: 349 + m_Y: 7 + m_Width: 34 + m_Height: 22 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 89 + m_Metrics: + m_Width: 22.562498 + m_Height: 21.999998 + m_HorizontalBearingX: 0.56249994 + m_HorizontalBearingY: 21.999998 + m_HorizontalAdvance: 23.6875 + m_GlyphRect: + m_X: 329 + m_Y: 338 + m_Width: 23 + m_Height: 22 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 90 + m_Metrics: + m_Width: 24.562498 + m_Height: 30.062498 + m_HorizontalBearingX: -0.24999999 + m_HorizontalBearingY: 21.999998 + m_HorizontalAdvance: 24 + m_GlyphRect: + m_X: 325 + m_Y: 178 + m_Width: 25 + m_Height: 30 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 91 + m_Metrics: + m_Width: 17.937498 + m_Height: 23.562498 + m_HorizontalBearingX: 1.6874999 + m_HorizontalBearingY: 23.499998 + m_HorizontalAdvance: 21.3125 + m_GlyphRect: + m_X: 309 + m_Y: 413 + m_Width: 18 + m_Height: 24 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 92 + m_Metrics: + m_Width: 10.562499 + m_Height: 39.562496 + m_HorizontalBearingX: 1.3124999 + m_HorizontalBearingY: 34.124996 + m_HorizontalAdvance: 13.5625 + m_GlyphRect: + m_X: 99 + m_Y: 440 + m_Width: 11 + m_Height: 40 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 93 + m_Metrics: + m_Width: 1.8124999 + m_Height: 36.812496 + m_HorizontalBearingX: 3.0624998 + m_HorizontalBearingY: 29.812498 + m_HorizontalAdvance: 7.875 + m_GlyphRect: + m_X: 129 + m_Y: 119 + m_Width: 2 + m_Height: 37 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 94 + m_Metrics: + m_Width: 10.562499 + m_Height: 39.562496 + m_HorizontalBearingX: 1.3124999 + m_HorizontalBearingY: 34.124996 + m_HorizontalAdvance: 13.3125 + m_GlyphRect: + m_X: 293 + m_Y: 89 + m_Width: 11 + m_Height: 40 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 95 + m_Metrics: + m_Width: 16.624998 + m_Height: 4.0624995 + m_HorizontalBearingX: 2.1874998 + m_HorizontalBearingY: 13.124999 + m_HorizontalAdvance: 20.9375 + m_GlyphRect: + m_X: 455 + m_Y: 325 + m_Width: 17 + m_Height: 4 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 96 + m_Metrics: + m_Width: 0 + m_Height: 0 + m_HorizontalBearingX: 0 + m_HorizontalBearingY: 0 + m_HorizontalAdvance: 11 + m_GlyphRect: + m_X: 6 + m_Y: -5 + m_Width: 0 + m_Height: 0 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 97 + m_Metrics: + m_Width: 4.4999995 + m_Height: 30.062498 + m_HorizontalBearingX: 3.5624998 + m_HorizontalBearingY: 17.187498 + m_HorizontalAdvance: 11.625 + m_GlyphRect: + m_X: 184 + m_Y: 387 + m_Width: 4 + m_Height: 30 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 98 + m_Metrics: + m_Width: 21.499998 + m_Height: 31.874998 + m_HorizontalBearingX: 1.6874999 + m_HorizontalBearingY: 26.749998 + m_HorizontalAdvance: 25.3125 + m_GlyphRect: + m_X: 121 + m_Y: 433 + m_Width: 21 + m_Height: 32 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 99 + m_Metrics: + m_Width: 16.499998 + m_Height: 22.562498 + m_HorizontalBearingX: 1.3124999 + m_HorizontalBearingY: 22.562498 + m_HorizontalAdvance: 20.3125 + m_GlyphRect: + m_X: 452 + m_Y: 290 + m_Width: 16 + m_Height: 23 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 100 + m_Metrics: + m_Width: 14.624999 + m_Height: 15.624999 + m_HorizontalBearingX: 2.3124998 + m_HorizontalBearingY: 17.312498 + m_HorizontalAdvance: 19.4375 + m_GlyphRect: + m_X: 491 + m_Y: 262 + m_Width: 15 + m_Height: 16 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 101 + m_Metrics: + m_Width: 22.562498 + m_Height: 21.999998 + m_HorizontalBearingX: -0.24999999 + m_HorizontalBearingY: 21.999998 + m_HorizontalAdvance: 22.625 + m_GlyphRect: + m_X: 418 + m_Y: 373 + m_Width: 23 + m_Height: 22 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 102 + m_Metrics: + m_Width: 1.8124999 + m_Height: 36.812496 + m_HorizontalBearingX: 3.0624998 + m_HorizontalBearingY: 29.812498 + m_HorizontalAdvance: 7.875 + m_GlyphRect: + m_X: 161 + m_Y: 261 + m_Width: 2 + m_Height: 37 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 103 + m_Metrics: + m_Width: 14.749999 + m_Height: 35.687496 + m_HorizontalBearingX: 3.3749998 + m_HorizontalBearingY: 28.562498 + m_HorizontalAdvance: 20.75 + m_GlyphRect: + m_X: 305 + m_Y: 219 + m_Width: 15 + m_Height: 36 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 104 + m_Metrics: + m_Width: 12.249999 + m_Height: 3.8749998 + m_HorizontalBearingX: 1.4374999 + m_HorizontalBearingY: 26.374998 + m_HorizontalAdvance: 15.125 + m_GlyphRect: + m_X: 281 + m_Y: 502 + m_Width: 12 + m_Height: 4 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 105 + m_Metrics: + m_Width: 26.999998 + m_Height: 28.187498 + m_HorizontalBearingX: 2.4374998 + m_HorizontalBearingY: 24.812498 + m_HorizontalAdvance: 31.9375 + m_GlyphRect: + m_X: 241 + m_Y: 221 + m_Width: 27 + m_Height: 28 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 106 + m_Metrics: + m_Width: 11.624999 + m_Height: 16.124998 + m_HorizontalBearingX: 1.3749999 + m_HorizontalBearingY: 29.624998 + m_HorizontalAdvance: 13.0625 + m_GlyphRect: + m_X: 457 + m_Y: 438 + m_Width: 12 + m_Height: 16 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 107 + m_Metrics: + m_Width: 16.124998 + m_Height: 15.374999 + m_HorizontalBearingX: 2.5624998 + m_HorizontalBearingY: 18.812498 + m_HorizontalAdvance: 21.4375 + m_GlyphRect: + m_X: 203 + m_Y: 456 + m_Width: 16 + m_Height: 15 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 108 + m_Metrics: + m_Width: 15.749999 + m_Height: 9.249999 + m_HorizontalBearingX: 1.3124999 + m_HorizontalBearingY: 14.249999 + m_HorizontalAdvance: 18.5625 + m_GlyphRect: + m_X: 329 + m_Y: 454 + m_Width: 16 + m_Height: 9 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 109 + m_Metrics: + m_Width: 12.687499 + m_Height: 4.3124995 + m_HorizontalBearingX: 1.2499999 + m_HorizontalBearingY: 11.999999 + m_HorizontalAdvance: 15.1875 + m_GlyphRect: + m_X: 350 + m_Y: 500 + m_Width: 13 + m_Height: 4 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 110 + m_Metrics: + m_Width: 28.374998 + m_Height: 27.562498 + m_HorizontalBearingX: 2.4374998 + m_HorizontalBearingY: 24.437498 + m_HorizontalAdvance: 33.375 + m_GlyphRect: + m_X: 163 + m_Y: 220 + m_Width: 28 + m_Height: 28 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 111 + m_Metrics: + m_Width: 12.374999 + m_Height: 1.3124999 + m_HorizontalBearingX: 1.8749999 + m_HorizontalBearingY: 24.062498 + m_HorizontalAdvance: 16.1875 + m_GlyphRect: + m_X: 374 + m_Y: 500 + m_Width: 12 + m_Height: 1 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 112 + m_Metrics: + m_Width: 12.874999 + m_Height: 12.062499 + m_HorizontalBearingX: 1.3124999 + m_HorizontalBearingY: 29.624998 + m_HorizontalAdvance: 15.625 + m_GlyphRect: + m_X: 30 + m_Y: 494 + m_Width: 13 + m_Height: 12 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 113 + m_Metrics: + m_Width: 15.937499 + m_Height: 19.812498 + m_HorizontalBearingX: 1.3124999 + m_HorizontalBearingY: 20.937498 + m_HorizontalAdvance: 18.6875 + m_GlyphRect: + m_X: 278 + m_Y: 263 + m_Width: 16 + m_Height: 20 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 114 + m_Metrics: + m_Width: 8.999999 + m_Height: 15.374999 + m_HorizontalBearingX: 1.2499999 + m_HorizontalBearingY: 34.312496 + m_HorizontalAdvance: 11.8125 + m_GlyphRect: + m_X: 245 + m_Y: 483 + m_Width: 9 + m_Height: 15 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 115 + m_Metrics: + m_Width: 9.124999 + m_Height: 15.624999 + m_HorizontalBearingX: 0.99999994 + m_HorizontalBearingY: 34.312496 + m_HorizontalAdvance: 11.8125 + m_GlyphRect: + m_X: 217 + m_Y: 428 + m_Width: 9 + m_Height: 16 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 116 + m_Metrics: + m_Width: 11.124999 + m_Height: 5.0624995 + m_HorizontalBearingX: 0.93749994 + m_HorizontalBearingY: 25.749998 + m_HorizontalAdvance: 12.9375 + m_GlyphRect: + m_X: 384 + m_Y: 483 + m_Width: 11 + m_Height: 5 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 117 + m_Metrics: + m_Width: 22.437498 + m_Height: 21.999998 + m_HorizontalBearingX: 2.4999998 + m_HorizontalBearingY: 21.999998 + m_HorizontalAdvance: 27 + m_GlyphRect: + m_X: 480 + m_Y: 289 + m_Width: 22 + m_Height: 22 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 118 + m_Metrics: + m_Width: 4.1874995 + m_Height: 3.9999998 + m_HorizontalBearingX: 2.5624998 + m_HorizontalBearingY: 13.062499 + m_HorizontalAdvance: 9.25 + m_GlyphRect: + m_X: 414 + m_Y: 502 + m_Width: 4 + m_Height: 4 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 119 + m_Metrics: + m_Width: 7.9374995 + m_Height: 12.874999 + m_HorizontalBearingX: 1.4374999 + m_HorizontalBearingY: 0 + m_HorizontalAdvance: 10.875 + m_GlyphRect: + m_X: 78 + m_Y: 493 + m_Width: 8 + m_Height: 13 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 120 + m_Metrics: + m_Width: 9.187499 + m_Height: 15.312499 + m_HorizontalBearingX: 1.3749999 + m_HorizontalBearingY: 34.249996 + m_HorizontalAdvance: 12.3125 + m_GlyphRect: + m_X: 258 + m_Y: 452 + m_Width: 9 + m_Height: 15 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 121 + m_Metrics: + m_Width: 12.437499 + m_Height: 16.124998 + m_HorizontalBearingX: 1.1874999 + m_HorizontalBearingY: 29.624998 + m_HorizontalAdvance: 14.8125 + m_GlyphRect: + m_X: 458 + m_Y: 466 + m_Width: 12 + m_Height: 16 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 122 + m_Metrics: + m_Width: 16.062498 + m_Height: 15.249999 + m_HorizontalBearingX: 2.8124998 + m_HorizontalBearingY: 18.812498 + m_HorizontalAdvance: 21.4375 + m_GlyphRect: + m_X: 279 + m_Y: 449 + m_Width: 16 + m_Height: 15 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 123 + m_Metrics: + m_Width: 25.562498 + m_Height: 29.874998 + m_HorizontalBearingX: 1.3749999 + m_HorizontalBearingY: 29.812498 + m_HorizontalAdvance: 28.1875 + m_GlyphRect: + m_X: 121 + m_Y: 476 + m_Width: 26 + m_Height: 30 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 124 + m_Metrics: + m_Width: 25.687498 + m_Height: 29.874998 + m_HorizontalBearingX: 1.3749999 + m_HorizontalBearingY: 29.812498 + m_HorizontalAdvance: 28.6875 + m_GlyphRect: + m_X: 158 + m_Y: 476 + m_Width: 26 + m_Height: 30 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 125 + m_Metrics: + m_Width: 25.437498 + m_Height: 29.937498 + m_HorizontalBearingX: 0.99999994 + m_HorizontalBearingY: 29.874998 + m_HorizontalAdvance: 27.6875 + m_GlyphRect: + m_X: 412 + m_Y: 90 + m_Width: 25 + m_Height: 30 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 126 + m_Metrics: + m_Width: 11.999999 + m_Height: 29.874998 + m_HorizontalBearingX: 1.3124999 + m_HorizontalBearingY: 16.999998 + m_HorizontalAdvance: 15.375 + m_GlyphRect: + m_X: 338 + m_Y: 371 + m_Width: 12 + m_Height: 30 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 127 + m_Metrics: + m_Width: 33.249996 + m_Height: 36.937496 + m_HorizontalBearingX: -0.24999999 + m_HorizontalBearingY: 36.999996 + m_HorizontalAdvance: 33 + m_GlyphRect: + m_X: 6 + m_Y: 196 + m_Width: 33 + m_Height: 37 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 128 + m_Metrics: + m_Width: 33.249996 + m_Height: 36.937496 + m_HorizontalBearingX: -0.24999999 + m_HorizontalBearingY: 36.999996 + m_HorizontalAdvance: 33 + m_GlyphRect: + m_X: 6 + m_Y: 244 + m_Width: 33 + m_Height: 37 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 129 + m_Metrics: + m_Width: 33.249996 + m_Height: 35.562496 + m_HorizontalBearingX: -0.24999999 + m_HorizontalBearingY: 35.624996 + m_HorizontalAdvance: 33 + m_GlyphRect: + m_X: 99 + m_Y: 47 + m_Width: 33 + m_Height: 36 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 130 + m_Metrics: + m_Width: 33.249996 + m_Height: 36.124996 + m_HorizontalBearingX: -0.24999999 + m_HorizontalBearingY: 36.187496 + m_HorizontalAdvance: 33 + m_GlyphRect: + m_X: 6 + m_Y: 293 + m_Width: 33 + m_Height: 36 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 131 + m_Metrics: + m_Width: 33.249996 + m_Height: 37.562496 + m_HorizontalBearingX: -0.24999999 + m_HorizontalBearingY: 37.562496 + m_HorizontalAdvance: 33 + m_GlyphRect: + m_X: 6 + m_Y: 147 + m_Width: 33 + m_Height: 38 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 132 + m_Metrics: + m_Width: 33.249996 + m_Height: 38.562496 + m_HorizontalBearingX: -0.24999999 + m_HorizontalBearingY: 38.624996 + m_HorizontalAdvance: 33 + m_GlyphRect: + m_X: 6 + m_Y: 47 + m_Width: 33 + m_Height: 39 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 133 + m_Metrics: + m_Width: 38.812496 + m_Height: 29.374998 + m_HorizontalBearingX: -0.12499999 + m_HorizontalBearingY: 29.374998 + m_HorizontalAdvance: 41.0625 + m_GlyphRect: + m_X: 62 + m_Y: 7 + m_Width: 39 + m_Height: 29 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 134 + m_Metrics: + m_Width: 27.124998 + m_Height: 42.812496 + m_HorizontalBearingX: 2.2499998 + m_HorizontalBearingY: 29.937498 + m_HorizontalAdvance: 31.4375 + m_GlyphRect: + m_X: 6 + m_Y: 340 + m_Width: 27 + m_Height: 43 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 135 + m_Metrics: + m_Width: 20.937498 + m_Height: 36.937496 + m_HorizontalBearingX: 1.8749999 + m_HorizontalBearingY: 36.999996 + m_HorizontalAdvance: 25.25 + m_GlyphRect: + m_X: 97 + m_Y: 334 + m_Width: 21 + m_Height: 37 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 136 + m_Metrics: + m_Width: 20.937498 + m_Height: 36.937496 + m_HorizontalBearingX: 1.8749999 + m_HorizontalBearingY: 36.999996 + m_HorizontalAdvance: 25.25 + m_GlyphRect: + m_X: 129 + m_Y: 261 + m_Width: 21 + m_Height: 37 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 137 + m_Metrics: + m_Width: 20.937498 + m_Height: 37.374996 + m_HorizontalBearingX: 1.8749999 + m_HorizontalBearingY: 37.374996 + m_HorizontalAdvance: 25.25 + m_GlyphRect: + m_X: 93 + m_Y: 169 + m_Width: 21 + m_Height: 37 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 138 + m_Metrics: + m_Width: 20.937498 + m_Height: 37.562496 + m_HorizontalBearingX: 1.8749999 + m_HorizontalBearingY: 37.562496 + m_HorizontalAdvance: 25.25 + m_GlyphRect: + m_X: 93 + m_Y: 217 + m_Width: 21 + m_Height: 38 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 139 + m_Metrics: + m_Width: 11.874999 + m_Height: 36.937496 + m_HorizontalBearingX: 1.6249999 + m_HorizontalBearingY: 36.999996 + m_HorizontalAdvance: 15.625 + m_GlyphRect: + m_X: 494 + m_Y: 214 + m_Width: 12 + m_Height: 37 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 140 + m_Metrics: + m_Width: 11.937499 + m_Height: 36.937496 + m_HorizontalBearingX: 2.0624998 + m_HorizontalBearingY: 36.999996 + m_HorizontalAdvance: 15.625 + m_GlyphRect: + m_X: 251 + m_Y: 335 + m_Width: 12 + m_Height: 37 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 141 + m_Metrics: + m_Width: 11.437499 + m_Height: 37.374996 + m_HorizontalBearingX: 2.0624998 + m_HorizontalBearingY: 37.374996 + m_HorizontalAdvance: 15.625 + m_GlyphRect: + m_X: 315 + m_Y: 89 + m_Width: 11 + m_Height: 37 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 142 + m_Metrics: + m_Width: 11.437499 + m_Height: 37.562496 + m_HorizontalBearingX: 2.0624998 + m_HorizontalBearingY: 37.562496 + m_HorizontalAdvance: 15.625 + m_GlyphRect: + m_X: 427 + m_Y: 131 + m_Width: 11 + m_Height: 38 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 143 + m_Metrics: + m_Width: 28.624998 + m_Height: 29.687498 + m_HorizontalBearingX: 1.4999999 + m_HorizontalBearingY: 29.499998 + m_HorizontalAdvance: 32.5 + m_GlyphRect: + m_X: 253 + m_Y: 137 + m_Width: 29 + m_Height: 30 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 144 + m_Metrics: + m_Width: 31.437498 + m_Height: 36.874996 + m_HorizontalBearingX: 1.7499999 + m_HorizontalBearingY: 36.187496 + m_HorizontalAdvance: 34.1875 + m_GlyphRect: + m_X: 144 + m_Y: 47 + m_Width: 31 + m_Height: 37 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 145 + m_Metrics: + m_Width: 31.374998 + m_Height: 37.499996 + m_HorizontalBearingX: 2.2499998 + m_HorizontalBearingY: 36.999996 + m_HorizontalAdvance: 36 + m_GlyphRect: + m_X: 6 + m_Y: 445 + m_Width: 31 + m_Height: 37 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 146 + m_Metrics: + m_Width: 31.374998 + m_Height: 37.499996 + m_HorizontalBearingX: 2.2499998 + m_HorizontalBearingY: 36.999996 + m_HorizontalAdvance: 36 + m_GlyphRect: + m_X: 187 + m_Y: 48 + m_Width: 31 + m_Height: 37 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 147 + m_Metrics: + m_Width: 31.374998 + m_Height: 37.937496 + m_HorizontalBearingX: 2.2499998 + m_HorizontalBearingY: 37.374996 + m_HorizontalAdvance: 36 + m_GlyphRect: + m_X: 252 + m_Y: 40 + m_Width: 31 + m_Height: 38 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 148 + m_Metrics: + m_Width: 31.374998 + m_Height: 36.687496 + m_HorizontalBearingX: 2.2499998 + m_HorizontalBearingY: 36.187496 + m_HorizontalAdvance: 36 + m_GlyphRect: + m_X: 295 + m_Y: 40 + m_Width: 31 + m_Height: 37 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 149 + m_Metrics: + m_Width: 31.374998 + m_Height: 38.124996 + m_HorizontalBearingX: 2.2499998 + m_HorizontalBearingY: 37.562496 + m_HorizontalAdvance: 36 + m_GlyphRect: + m_X: 6 + m_Y: 395 + m_Width: 31 + m_Height: 38 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 150 + m_Metrics: + m_Width: 12.562499 + m_Height: 12.624999 + m_HorizontalBearingX: 2.6249998 + m_HorizontalBearingY: 16.812498 + m_HorizontalAdvance: 17.9375 + m_GlyphRect: + m_X: 54 + m_Y: 493 + m_Width: 13 + m_Height: 13 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 151 + m_Metrics: + m_Width: 31.374998 + m_Height: 30.437498 + m_HorizontalBearingX: 2.2499998 + m_HorizontalBearingY: 29.937498 + m_HorizontalAdvance: 36.25 + m_GlyphRect: + m_X: 423 + m_Y: 49 + m_Width: 31 + m_Height: 30 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 152 + m_Metrics: + m_Width: 30.624998 + m_Height: 37.562496 + m_HorizontalBearingX: 1.2499999 + m_HorizontalBearingY: 36.999996 + m_HorizontalAdvance: 32.8125 + m_GlyphRect: + m_X: 338 + m_Y: 40 + m_Width: 31 + m_Height: 38 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 153 + m_Metrics: + m_Width: 30.624998 + m_Height: 37.562496 + m_HorizontalBearingX: 1.2499999 + m_HorizontalBearingY: 36.999996 + m_HorizontalAdvance: 32.8125 + m_GlyphRect: + m_X: 51 + m_Y: 197 + m_Width: 31 + m_Height: 38 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 154 + m_Metrics: + m_Width: 30.624998 + m_Height: 37.999996 + m_HorizontalBearingX: 1.2499999 + m_HorizontalBearingY: 37.374996 + m_HorizontalAdvance: 32.8125 + m_GlyphRect: + m_X: 51 + m_Y: 246 + m_Width: 31 + m_Height: 38 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 155 + m_Metrics: + m_Width: 30.624998 + m_Height: 38.187496 + m_HorizontalBearingX: 1.2499999 + m_HorizontalBearingY: 37.562496 + m_HorizontalAdvance: 32.8125 + m_GlyphRect: + m_X: 51 + m_Y: 148 + m_Width: 31 + m_Height: 38 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 156 + m_Metrics: + m_Width: 29.124998 + m_Height: 36.937496 + m_HorizontalBearingX: -0.24999999 + m_HorizontalBearingY: 36.999996 + m_HorizontalAdvance: 28.625 + m_GlyphRect: + m_X: 252 + m_Y: 89 + m_Width: 29 + m_Height: 37 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 157 + m_Metrics: + m_Width: 21.624998 + m_Height: 29.374998 + m_HorizontalBearingX: 1.8749999 + m_HorizontalBearingY: 29.374998 + m_HorizontalAdvance: 25.3125 + m_GlyphRect: + m_X: 207 + m_Y: 260 + m_Width: 22 + m_Height: 29 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 158 + m_Metrics: + m_Width: 23.374998 + m_Height: 23.062498 + m_HorizontalBearingX: 0.31249997 + m_HorizontalBearingY: 22.562498 + m_HorizontalAdvance: 25.125 + m_GlyphRect: + m_X: 274 + m_Y: 414 + m_Width: 23 + m_Height: 23 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 159 + m_Metrics: + m_Width: 19.624998 + m_Height: 29.937498 + m_HorizontalBearingX: 2.9999998 + m_HorizontalBearingY: 29.624998 + m_HorizontalAdvance: 22.4375 + m_GlyphRect: + m_X: 245 + m_Y: 294 + m_Width: 20 + m_Height: 30 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 160 + m_Metrics: + m_Width: 19.624998 + m_Height: 29.937498 + m_HorizontalBearingX: 2.9999998 + m_HorizontalBearingY: 29.624998 + m_HorizontalAdvance: 22.4375 + m_GlyphRect: + m_X: 363 + m_Y: 298 + m_Width: 20 + m_Height: 30 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 161 + m_Metrics: + m_Width: 19.624998 + m_Height: 30.249998 + m_HorizontalBearingX: 2.9999998 + m_HorizontalBearingY: 29.937498 + m_HorizontalAdvance: 22.4375 + m_GlyphRect: + m_X: 331 + m_Y: 220 + m_Width: 20 + m_Height: 30 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 162 + m_Metrics: + m_Width: 19.624998 + m_Height: 29.124998 + m_HorizontalBearingX: 2.9999998 + m_HorizontalBearingY: 28.812498 + m_HorizontalAdvance: 22.4375 + m_GlyphRect: + m_X: 197 + m_Y: 342 + m_Width: 20 + m_Height: 29 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 163 + m_Metrics: + m_Width: 19.624998 + m_Height: 30.562498 + m_HorizontalBearingX: 2.9999998 + m_HorizontalBearingY: 30.187498 + m_HorizontalAdvance: 22.4375 + m_GlyphRect: + m_X: 396 + m_Y: 173 + m_Width: 20 + m_Height: 31 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 164 + m_Metrics: + m_Width: 19.624998 + m_Height: 33.624996 + m_HorizontalBearingX: 2.9999998 + m_HorizontalBearingY: 33.249996 + m_HorizontalAdvance: 22.4375 + m_GlyphRect: + m_X: 49 + m_Y: 448 + m_Width: 20 + m_Height: 34 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 165 + m_Metrics: + m_Width: 27.499998 + m_Height: 22.999998 + m_HorizontalBearingX: 2.4374998 + m_HorizontalBearingY: 22.437498 + m_HorizontalAdvance: 30.125 + m_GlyphRect: + m_X: 466 + m_Y: 97 + m_Width: 27 + m_Height: 23 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 166 + m_Metrics: + m_Width: 21.499998 + m_Height: 35.499996 + m_HorizontalBearingX: 1.6874999 + m_HorizontalBearingY: 22.562498 + m_HorizontalAdvance: 25.3125 + m_GlyphRect: + m_X: 129 + m_Y: 310 + m_Width: 21 + m_Height: 35 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 167 + m_Metrics: + m_Width: 17.874998 + m_Height: 30.124998 + m_HorizontalBearingX: 1.6874999 + m_HorizontalBearingY: 29.624998 + m_HorizontalAdvance: 20.625 + m_GlyphRect: + m_X: 276 + m_Y: 295 + m_Width: 18 + m_Height: 30 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 168 + m_Metrics: + m_Width: 17.874998 + m_Height: 30.124998 + m_HorizontalBearingX: 1.6874999 + m_HorizontalBearingY: 29.624998 + m_HorizontalAdvance: 20.625 + m_GlyphRect: + m_X: 305 + m_Y: 296 + m_Width: 18 + m_Height: 30 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 169 + m_Metrics: + m_Width: 17.874998 + m_Height: 30.437498 + m_HorizontalBearingX: 1.6874999 + m_HorizontalBearingY: 29.937498 + m_HorizontalAdvance: 20.625 + m_GlyphRect: + m_X: 334 + m_Y: 297 + m_Width: 18 + m_Height: 30 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 170 + m_Metrics: + m_Width: 17.874998 + m_Height: 30.749998 + m_HorizontalBearingX: 1.6874999 + m_HorizontalBearingY: 30.187498 + m_HorizontalAdvance: 20.625 + m_GlyphRect: + m_X: 274 + m_Y: 336 + m_Width: 18 + m_Height: 31 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 171 + m_Metrics: + m_Width: 11.124999 + m_Height: 29.562498 + m_HorizontalBearingX: 0.87499994 + m_HorizontalBearingY: 29.624998 + m_HorizontalAdvance: 13.75 + m_GlyphRect: + m_X: 338 + m_Y: 412 + m_Width: 11 + m_Height: 30 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 172 + m_Metrics: + m_Width: 11.499999 + m_Height: 29.562498 + m_HorizontalBearingX: 1.8124999 + m_HorizontalBearingY: 29.624998 + m_HorizontalAdvance: 13.75 + m_GlyphRect: + m_X: 394 + m_Y: 299 + m_Width: 11 + m_Height: 30 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 173 + m_Metrics: + m_Width: 10.812499 + m_Height: 29.874998 + m_HorizontalBearingX: 1.5624999 + m_HorizontalBearingY: 29.937498 + m_HorizontalAdvance: 13.75 + m_GlyphRect: + m_X: 396 + m_Y: 373 + m_Width: 11 + m_Height: 30 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 174 + m_Metrics: + m_Width: 10.687499 + m_Height: 30.187498 + m_HorizontalBearingX: 1.6874999 + m_HorizontalBearingY: 30.187498 + m_HorizontalAdvance: 13.75 + m_GlyphRect: + m_X: 394 + m_Y: 258 + m_Width: 11 + m_Height: 30 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 175 + m_Metrics: + m_Width: 23.437498 + m_Height: 22.249998 + m_HorizontalBearingX: 1.4999999 + m_HorizontalBearingY: 22.124998 + m_HorizontalAdvance: 26.6875 + m_GlyphRect: + m_X: 417 + m_Y: 292 + m_Width: 23 + m_Height: 22 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 176 + m_Metrics: + m_Width: 25.999998 + m_Height: 28.749998 + m_HorizontalBearingX: 1.4999999 + m_HorizontalBearingY: 28.812498 + m_HorizontalAdvance: 28.0625 + m_GlyphRect: + m_X: 320 + m_Y: 137 + m_Width: 26 + m_Height: 29 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 177 + m_Metrics: + m_Width: 23.749998 + m_Height: 30.062498 + m_HorizontalBearingX: 1.6874999 + m_HorizontalBearingY: 29.562498 + m_HorizontalAdvance: 27.125 + m_GlyphRect: + m_X: 357 + m_Y: 132 + m_Width: 24 + m_Height: 30 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 178 + m_Metrics: + m_Width: 23.749998 + m_Height: 30.062498 + m_HorizontalBearingX: 1.6874999 + m_HorizontalBearingY: 29.562498 + m_HorizontalAdvance: 27.125 + m_GlyphRect: + m_X: 392 + m_Y: 132 + m_Width: 24 + m_Height: 30 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 179 + m_Metrics: + m_Width: 23.749998 + m_Height: 30.437498 + m_HorizontalBearingX: 1.6874999 + m_HorizontalBearingY: 29.874998 + m_HorizontalAdvance: 27.125 + m_GlyphRect: + m_X: 361 + m_Y: 174 + m_Width: 24 + m_Height: 30 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 180 + m_Metrics: + m_Width: 23.749998 + m_Height: 29.249998 + m_HorizontalBearingX: 1.6874999 + m_HorizontalBearingY: 28.749998 + m_HorizontalAdvance: 27.125 + m_GlyphRect: + m_X: 450 + m_Y: 132 + m_Width: 24 + m_Height: 29 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 181 + m_Metrics: + m_Width: 23.749998 + m_Height: 30.687498 + m_HorizontalBearingX: 1.6874999 + m_HorizontalBearingY: 30.187498 + m_HorizontalAdvance: 27.125 + m_GlyphRect: + m_X: 362 + m_Y: 215 + m_Width: 24 + m_Height: 31 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 182 + m_Metrics: + m_Width: 15.937499 + m_Height: 19.062498 + m_HorizontalBearingX: 1.3124999 + m_HorizontalBearingY: 20.499998 + m_HorizontalAdvance: 18.6875 + m_GlyphRect: + m_X: 452 + m_Y: 374 + m_Width: 16 + m_Height: 19 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 183 + m_Metrics: + m_Width: 23.749998 + m_Height: 23.124998 + m_HorizontalBearingX: 1.6874999 + m_HorizontalBearingY: 22.562498 + m_HorizontalAdvance: 27.125 + m_GlyphRect: + m_X: 361 + m_Y: 409 + m_Width: 24 + m_Height: 23 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 184 + m_Metrics: + m_Width: 26.062498 + m_Height: 30.124998 + m_HorizontalBearingX: 1.3124999 + m_HorizontalBearingY: 29.624998 + m_HorizontalAdvance: 28.9375 + m_GlyphRect: + m_X: 202 + m_Y: 179 + m_Width: 26 + m_Height: 30 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 185 + m_Metrics: + m_Width: 26.062498 + m_Height: 30.124998 + m_HorizontalBearingX: 1.3124999 + m_HorizontalBearingY: 29.624998 + m_HorizontalAdvance: 28.9375 + m_GlyphRect: + m_X: 240 + m_Y: 179 + m_Width: 26 + m_Height: 30 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 186 + m_Metrics: + m_Width: 26.062498 + m_Height: 30.437498 + m_HorizontalBearingX: 1.3124999 + m_HorizontalBearingY: 29.937498 + m_HorizontalAdvance: 28.9375 + m_GlyphRect: + m_X: 115 + m_Y: 392 + m_Width: 26 + m_Height: 30 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 187 + m_Metrics: + m_Width: 26.062498 + m_Height: 30.749998 + m_HorizontalBearingX: 1.3124999 + m_HorizontalBearingY: 30.187498 + m_HorizontalAdvance: 28.9375 + m_GlyphRect: + m_X: 338 + m_Y: 89 + m_Width: 26 + m_Height: 31 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 188 + m_Metrics: + m_Width: 24.562498 + m_Height: 37.624996 + m_HorizontalBearingX: -0.24999999 + m_HorizontalBearingY: 29.624998 + m_HorizontalAdvance: 24 + m_GlyphRect: + m_X: 93 + m_Y: 119 + m_Width: 25 + m_Height: 38 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 189 + m_Metrics: + m_Width: 18.249998 + m_Height: 21.999998 + m_HorizontalBearingX: 1.4999999 + m_HorizontalBearingY: 21.999998 + m_HorizontalAdvance: 21.5 + m_GlyphRect: + m_X: 457 + m_Y: 340 + m_Width: 18 + m_Height: 22 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 190 + m_Metrics: + m_Width: 24.562498 + m_Height: 38.249996 + m_HorizontalBearingX: -0.24999999 + m_HorizontalBearingY: 30.187498 + m_HorizontalAdvance: 24 + m_GlyphRect: + m_X: 481 + m_Y: 7 + m_Width: 25 + m_Height: 38 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 191 + m_Metrics: + m_Width: 0 + m_Height: 0 + m_HorizontalBearingX: 0 + m_HorizontalBearingY: 0 + m_HorizontalAdvance: 23.5625 + m_GlyphRect: + m_X: 6 + m_Y: -5 + m_Width: 0 + m_Height: 0 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 192 + m_Metrics: + m_Width: 0 + m_Height: 0 + m_HorizontalBearingX: 0 + m_HorizontalBearingY: 0 + m_HorizontalAdvance: 47.0625 + m_GlyphRect: + m_X: 6 + m_Y: -5 + m_Width: 0 + m_Height: 0 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 193 + m_Metrics: + m_Width: 0 + m_Height: 0 + m_HorizontalBearingX: 0 + m_HorizontalBearingY: 0 + m_HorizontalAdvance: 15.625 + m_GlyphRect: + m_X: 6 + m_Y: -5 + m_Width: 0 + m_Height: 0 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 194 + m_Metrics: + m_Width: 0 + m_Height: 0 + m_HorizontalBearingX: 0 + m_HorizontalBearingY: 0 + m_HorizontalAdvance: 11.75 + m_GlyphRect: + m_X: 6 + m_Y: -5 + m_Width: 0 + m_Height: 0 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 195 + m_Metrics: + m_Width: 0 + m_Height: 0 + m_HorizontalBearingX: 0 + m_HorizontalBearingY: 0 + m_HorizontalAdvance: 7.875 + m_GlyphRect: + m_X: 6 + m_Y: -5 + m_Width: 0 + m_Height: 0 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 196 + m_Metrics: + m_Width: 0 + m_Height: 0 + m_HorizontalBearingX: 0 + m_HorizontalBearingY: 0 + m_HorizontalAdvance: 20.5625 + m_GlyphRect: + m_X: 6 + m_Y: -5 + m_Width: 0 + m_Height: 0 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 197 + m_Metrics: + m_Width: 0 + m_Height: 0 + m_HorizontalBearingX: 0 + m_HorizontalBearingY: 0 + m_HorizontalAdvance: 14.0625 + m_GlyphRect: + m_X: 6 + m_Y: -5 + m_Width: 0 + m_Height: 0 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 198 + m_Metrics: + m_Width: 0 + m_Height: 0 + m_HorizontalBearingX: 0 + m_HorizontalBearingY: 0 + m_HorizontalAdvance: 9.375 + m_GlyphRect: + m_X: 6 + m_Y: -5 + m_Width: 0 + m_Height: 0 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 199 + m_Metrics: + m_Width: 0 + m_Height: 0 + m_HorizontalBearingX: 0 + m_HorizontalBearingY: 0 + m_HorizontalAdvance: 5.5 + m_GlyphRect: + m_X: 6 + m_Y: -5 + m_Width: 0 + m_Height: 0 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 200 + m_Metrics: + m_Width: 0 + m_Height: 0 + m_HorizontalBearingX: 0 + m_HorizontalBearingY: 0 + m_HorizontalAdvance: 0 + m_GlyphRect: + m_X: 6 + m_Y: -5 + m_Width: 0 + m_Height: 0 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 201 + m_Metrics: + m_Width: 0 + m_Height: 0 + m_HorizontalBearingX: 0 + m_HorizontalBearingY: 0 + m_HorizontalAdvance: 0 + m_GlyphRect: + m_X: 6 + m_Y: -5 + m_Width: 0 + m_Height: 0 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 202 + m_Metrics: + m_Width: 20.312498 + m_Height: 1.8124999 + m_HorizontalBearingX: 1.3124999 + m_HorizontalBearingY: 9.874999 + m_HorizontalAdvance: 23.0625 + m_GlyphRect: + m_X: 483 + m_Y: 322 + m_Width: 20 + m_Height: 2 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 203 + m_Metrics: + m_Width: 21.437498 + m_Height: 1.8124999 + m_HorizontalBearingX: 1.3124999 + m_HorizontalBearingY: 12.124999 + m_HorizontalAdvance: 24.1875 + m_GlyphRect: + m_X: 184 + m_Y: 428 + m_Width: 21 + m_Height: 2 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 204 + m_Metrics: + m_Width: 36.249996 + m_Height: 1.8124999 + m_HorizontalBearingX: 1.3124999 + m_HorizontalBearingY: 12.124999 + m_HorizontalAdvance: 39 + m_GlyphRect: + m_X: 51 + m_Y: 93 + m_Width: 36 + m_Height: 2 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 205 + m_Metrics: + m_Width: 26.937498 + m_Height: 1.8124999 + m_HorizontalBearingX: 1.3124999 + m_HorizontalBearingY: 9.874999 + m_HorizontalAdvance: 29.6875 + m_GlyphRect: + m_X: 200 + m_Y: 415 + m_Width: 27 + m_Height: 2 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 206 + m_Metrics: + m_Width: 5.1874995 + m_Height: 10.874999 + m_HorizontalBearingX: 1.0624999 + m_HorizontalBearingY: 30.062498 + m_HorizontalAdvance: 7.875 + m_GlyphRect: + m_X: 447 + m_Y: 494 + m_Width: 5 + m_Height: 11 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 207 + m_Metrics: + m_Width: 5.1874995 + m_Height: 10.874999 + m_HorizontalBearingX: 1.0624999 + m_HorizontalBearingY: 29.812498 + m_HorizontalAdvance: 7.3125 + m_GlyphRect: + m_X: 464 + m_Y: 493 + m_Width: 5 + m_Height: 11 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 208 + m_Metrics: + m_Width: 5.1874995 + m_Height: 10.812499 + m_HorizontalBearingX: 1.0624999 + m_HorizontalBearingY: 3.3749998 + m_HorizontalAdvance: 7.3125 + m_GlyphRect: + m_X: 476 + m_Y: 404 + m_Width: 5 + m_Height: 11 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 209 + m_Metrics: + m_Width: 12.062499 + m_Height: 10.874999 + m_HorizontalBearingX: 1.1249999 + m_HorizontalBearingY: 30.062498 + m_HorizontalAdvance: 14.3125 + m_GlyphRect: + m_X: 97 + m_Y: 491 + m_Width: 12 + m_Height: 11 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 210 + m_Metrics: + m_Width: 12.124999 + m_Height: 10.874999 + m_HorizontalBearingX: 1.0624999 + m_HorizontalBearingY: 29.812498 + m_HorizontalAdvance: 14.3125 + m_GlyphRect: + m_X: 336 + m_Y: 474 + m_Width: 12 + m_Height: 11 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 211 + m_Metrics: + m_Width: 12.124999 + m_Height: 10.812499 + m_HorizontalBearingX: 1.0624999 + m_HorizontalBearingY: 3.3749998 + m_HorizontalAdvance: 14.375 + m_GlyphRect: + m_X: 360 + m_Y: 477 + m_Width: 12 + m_Height: 11 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 212 + m_Metrics: + m_Width: 13.312499 + m_Height: 23.312498 + m_HorizontalBearingX: 1.2499999 + m_HorizontalBearingY: 23.062498 + m_HorizontalAdvance: 15.875 + m_GlyphRect: + m_X: 195 + m_Y: 483 + m_Width: 13 + m_Height: 23 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 213 + m_Metrics: + m_Width: 13.374999 + m_Height: 23.937498 + m_HorizontalBearingX: 1.2499999 + m_HorizontalBearingY: 23.124998 + m_HorizontalAdvance: 15.875 + m_GlyphRect: + m_X: 220 + m_Y: 482 + m_Width: 13 + m_Height: 24 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 214 + m_Metrics: + m_Width: 8.874999 + m_Height: 8.874999 + m_HorizontalBearingX: 2.6874998 + m_HorizontalBearingY: 15.437499 + m_HorizontalAdvance: 14.375 + m_GlyphRect: + m_X: 407 + m_Y: 482 + m_Width: 9 + m_Height: 9 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 215 + m_Metrics: + m_Width: 26.124998 + m_Height: 3.9999998 + m_HorizontalBearingX: 2.5624998 + m_HorizontalBearingY: 3.4999998 + m_HorizontalAdvance: 31.25 + m_GlyphRect: + m_X: 417 + m_Y: 325 + m_Width: 26 + m_Height: 4 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 216 + m_Metrics: + m_Width: 0 + m_Height: 0 + m_HorizontalBearingX: 0 + m_HorizontalBearingY: 0 + m_HorizontalAdvance: 9.375 + m_GlyphRect: + m_X: 6 + m_Y: -5 + m_Width: 0 + m_Height: 0 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 217 + m_Metrics: + m_Width: 37.562496 + m_Height: 22.874998 + m_HorizontalBearingX: 1.2499999 + m_HorizontalBearingY: 22.562498 + m_HorizontalAdvance: 40.0625 + m_GlyphRect: + m_X: 300 + m_Y: 6 + m_Width: 38 + m_Height: 23 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 218 + m_Metrics: + m_Width: 4.1249995 + m_Height: 15.749999 + m_HorizontalBearingX: 1.4999999 + m_HorizontalBearingY: 30.124998 + m_HorizontalAdvance: 6.5625 + m_GlyphRect: + m_X: 265 + m_Y: 478 + m_Width: 4 + m_Height: 16 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 219 + m_Metrics: + m_Width: 10.499999 + m_Height: 15.749999 + m_HorizontalBearingX: 1.4999999 + m_HorizontalBearingY: 30.124998 + m_HorizontalAdvance: 12.9375 + m_GlyphRect: + m_X: 307 + m_Y: 448 + m_Width: 10 + m_Height: 16 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 220 + m_Metrics: + m_Width: 8.874999 + m_Height: 15.312499 + m_HorizontalBearingX: 2.5624998 + m_HorizontalBearingY: 18.687498 + m_HorizontalAdvance: 14.3125 + m_GlyphRect: + m_X: 281 + m_Y: 476 + m_Width: 9 + m_Height: 15 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 221 + m_Metrics: + m_Width: 8.937499 + m_Height: 15.249999 + m_HorizontalBearingX: 2.8124998 + m_HorizontalBearingY: 18.812498 + m_HorizontalAdvance: 14.3125 + m_GlyphRect: + m_X: 301 + m_Y: 476 + m_Width: 9 + m_Height: 15 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 222 + m_Metrics: + m_Width: 36.749996 + m_Height: 34.937496 + m_HorizontalBearingX: 2.4999998 + m_HorizontalBearingY: 34.124996 + m_HorizontalAdvance: 40.25 + m_GlyphRect: + m_X: 51 + m_Y: 47 + m_Width: 37 + m_Height: 35 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 223 + m_Metrics: + m_Width: 14.374999 + m_Height: 29.562498 + m_HorizontalBearingX: -4.9374995 + m_HorizontalBearingY: 29.562498 + m_HorizontalAdvance: 4.5625 + m_GlyphRect: + m_X: 303 + m_Y: 337 + m_Width: 14 + m_Height: 30 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 224 + m_Metrics: + m_Width: 0 + m_Height: 0 + m_HorizontalBearingX: 0 + m_HorizontalBearingY: 0 + m_HorizontalAdvance: 10.4375 + m_GlyphRect: + m_X: 6 + m_Y: -5 + m_Width: 0 + m_Height: 0 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 225 + m_Metrics: + m_Width: 23.374998 + m_Height: 23.124998 + m_HorizontalBearingX: 2.0624998 + m_HorizontalBearingY: 22.562498 + m_HorizontalAdvance: 27.5625 + m_GlyphRect: + m_X: 416 + m_Y: 257 + m_Width: 23 + m_Height: 23 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 226 + m_Metrics: + m_Width: 31.062498 + m_Height: 13.999999 + m_HorizontalBearingX: 1.3124999 + m_HorizontalBearingY: 30.187498 + m_HorizontalAdvance: 33.8125 + m_GlyphRect: + m_X: 99 + m_Y: 94 + m_Width: 31 + m_Height: 14 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 227 + m_Metrics: + m_Width: 7.4999995 + m_Height: 7.4999995 + m_HorizontalBearingX: 3.3124998 + m_HorizontalBearingY: 14.874999 + m_HorizontalAdvance: 14.1875 + m_GlyphRect: + m_X: 493 + m_Y: 403 + m_Width: 7 + m_Height: 7 + m_Scale: 1 + m_AtlasIndex: 0 + m_CharacterTable: + - m_ElementType: 1 + m_Unicode: 32 + m_GlyphIndex: 1 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 33 + m_GlyphIndex: 2 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 34 + m_GlyphIndex: 3 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 35 + m_GlyphIndex: 4 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 36 + m_GlyphIndex: 5 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 37 + m_GlyphIndex: 6 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 38 + m_GlyphIndex: 7 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 39 + m_GlyphIndex: 8 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 40 + m_GlyphIndex: 9 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 41 + m_GlyphIndex: 10 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 42 + m_GlyphIndex: 11 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 43 + m_GlyphIndex: 12 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 44 + m_GlyphIndex: 13 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 45 + m_GlyphIndex: 14 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 46 + m_GlyphIndex: 15 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 47 + m_GlyphIndex: 16 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 48 + m_GlyphIndex: 17 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 49 + m_GlyphIndex: 18 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 50 + m_GlyphIndex: 19 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 51 + m_GlyphIndex: 20 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 52 + m_GlyphIndex: 21 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 53 + m_GlyphIndex: 22 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 54 + m_GlyphIndex: 23 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 55 + m_GlyphIndex: 24 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 56 + m_GlyphIndex: 25 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 57 + m_GlyphIndex: 26 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 58 + m_GlyphIndex: 27 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 59 + m_GlyphIndex: 28 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 60 + m_GlyphIndex: 29 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 61 + m_GlyphIndex: 30 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 62 + m_GlyphIndex: 31 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 63 + m_GlyphIndex: 32 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 64 + m_GlyphIndex: 33 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 65 + m_GlyphIndex: 34 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 66 + m_GlyphIndex: 35 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 67 + m_GlyphIndex: 36 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 68 + m_GlyphIndex: 37 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 69 + m_GlyphIndex: 38 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 70 + m_GlyphIndex: 39 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 71 + m_GlyphIndex: 40 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 72 + m_GlyphIndex: 41 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 73 + m_GlyphIndex: 42 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 74 + m_GlyphIndex: 43 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 75 + m_GlyphIndex: 44 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 76 + m_GlyphIndex: 45 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 77 + m_GlyphIndex: 46 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 78 + m_GlyphIndex: 47 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 79 + m_GlyphIndex: 48 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 80 + m_GlyphIndex: 49 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 81 + m_GlyphIndex: 50 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 82 + m_GlyphIndex: 51 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 83 + m_GlyphIndex: 52 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 84 + m_GlyphIndex: 53 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 85 + m_GlyphIndex: 54 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 86 + m_GlyphIndex: 55 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 87 + m_GlyphIndex: 56 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 88 + m_GlyphIndex: 57 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 89 + m_GlyphIndex: 58 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 90 + m_GlyphIndex: 59 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 91 + m_GlyphIndex: 60 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 92 + m_GlyphIndex: 61 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 93 + m_GlyphIndex: 62 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 94 + m_GlyphIndex: 63 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 95 + m_GlyphIndex: 64 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 96 + m_GlyphIndex: 65 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 97 + m_GlyphIndex: 66 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 98 + m_GlyphIndex: 67 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 99 + m_GlyphIndex: 68 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 100 + m_GlyphIndex: 69 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 101 + m_GlyphIndex: 70 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 102 + m_GlyphIndex: 71 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 103 + m_GlyphIndex: 72 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 104 + m_GlyphIndex: 73 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 105 + m_GlyphIndex: 74 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 106 + m_GlyphIndex: 75 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 107 + m_GlyphIndex: 76 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 108 + m_GlyphIndex: 77 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 109 + m_GlyphIndex: 78 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 110 + m_GlyphIndex: 79 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 111 + m_GlyphIndex: 80 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 112 + m_GlyphIndex: 81 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 113 + m_GlyphIndex: 82 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 114 + m_GlyphIndex: 83 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 115 + m_GlyphIndex: 84 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 116 + m_GlyphIndex: 85 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 117 + m_GlyphIndex: 86 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 118 + m_GlyphIndex: 87 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 119 + m_GlyphIndex: 88 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 120 + m_GlyphIndex: 89 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 121 + m_GlyphIndex: 90 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 122 + m_GlyphIndex: 91 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 123 + m_GlyphIndex: 92 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 124 + m_GlyphIndex: 93 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 125 + m_GlyphIndex: 94 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 126 + m_GlyphIndex: 95 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 160 + m_GlyphIndex: 96 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 161 + m_GlyphIndex: 97 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 162 + m_GlyphIndex: 98 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 163 + m_GlyphIndex: 99 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 164 + m_GlyphIndex: 100 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 165 + m_GlyphIndex: 101 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 166 + m_GlyphIndex: 102 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 167 + m_GlyphIndex: 103 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 168 + m_GlyphIndex: 104 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 169 + m_GlyphIndex: 105 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 170 + m_GlyphIndex: 106 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 171 + m_GlyphIndex: 107 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 172 + m_GlyphIndex: 108 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 173 + m_GlyphIndex: 109 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 174 + m_GlyphIndex: 110 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 175 + m_GlyphIndex: 111 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 176 + m_GlyphIndex: 112 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 177 + m_GlyphIndex: 113 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 178 + m_GlyphIndex: 114 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 179 + m_GlyphIndex: 115 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 180 + m_GlyphIndex: 116 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 182 + m_GlyphIndex: 117 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 183 + m_GlyphIndex: 118 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 184 + m_GlyphIndex: 119 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 185 + m_GlyphIndex: 120 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 186 + m_GlyphIndex: 121 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 187 + m_GlyphIndex: 122 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 188 + m_GlyphIndex: 123 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 189 + m_GlyphIndex: 124 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 190 + m_GlyphIndex: 125 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 191 + m_GlyphIndex: 126 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 192 + m_GlyphIndex: 127 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 193 + m_GlyphIndex: 128 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 194 + m_GlyphIndex: 129 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 195 + m_GlyphIndex: 130 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 196 + m_GlyphIndex: 131 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 197 + m_GlyphIndex: 132 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 198 + m_GlyphIndex: 133 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 199 + m_GlyphIndex: 134 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 200 + m_GlyphIndex: 135 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 201 + m_GlyphIndex: 136 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 202 + m_GlyphIndex: 137 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 203 + m_GlyphIndex: 138 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 204 + m_GlyphIndex: 139 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 205 + m_GlyphIndex: 140 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 206 + m_GlyphIndex: 141 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 207 + m_GlyphIndex: 142 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 208 + m_GlyphIndex: 143 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 209 + m_GlyphIndex: 144 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 210 + m_GlyphIndex: 145 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 211 + m_GlyphIndex: 146 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 212 + m_GlyphIndex: 147 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 213 + m_GlyphIndex: 148 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 214 + m_GlyphIndex: 149 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 215 + m_GlyphIndex: 150 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 216 + m_GlyphIndex: 151 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 217 + m_GlyphIndex: 152 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 218 + m_GlyphIndex: 153 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 219 + m_GlyphIndex: 154 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 220 + m_GlyphIndex: 155 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 221 + m_GlyphIndex: 156 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 222 + m_GlyphIndex: 157 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 223 + m_GlyphIndex: 158 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 224 + m_GlyphIndex: 159 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 225 + m_GlyphIndex: 160 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 226 + m_GlyphIndex: 161 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 227 + m_GlyphIndex: 162 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 228 + m_GlyphIndex: 163 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 229 + m_GlyphIndex: 164 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 230 + m_GlyphIndex: 165 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 231 + m_GlyphIndex: 166 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 232 + m_GlyphIndex: 167 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 233 + m_GlyphIndex: 168 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 234 + m_GlyphIndex: 169 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 235 + m_GlyphIndex: 170 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 236 + m_GlyphIndex: 171 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 237 + m_GlyphIndex: 172 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 238 + m_GlyphIndex: 173 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 239 + m_GlyphIndex: 174 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 240 + m_GlyphIndex: 175 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 241 + m_GlyphIndex: 176 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 242 + m_GlyphIndex: 177 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 243 + m_GlyphIndex: 178 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 244 + m_GlyphIndex: 179 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 245 + m_GlyphIndex: 180 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 246 + m_GlyphIndex: 181 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 247 + m_GlyphIndex: 182 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 248 + m_GlyphIndex: 183 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 249 + m_GlyphIndex: 184 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 250 + m_GlyphIndex: 185 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 251 + m_GlyphIndex: 186 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 252 + m_GlyphIndex: 187 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 253 + m_GlyphIndex: 188 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 254 + m_GlyphIndex: 189 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 255 + m_GlyphIndex: 190 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 8194 + m_GlyphIndex: 191 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 8195 + m_GlyphIndex: 192 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 8196 + m_GlyphIndex: 193 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 8197 + m_GlyphIndex: 194 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 8198 + m_GlyphIndex: 195 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 8199 + m_GlyphIndex: 196 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 8200 + m_GlyphIndex: 197 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 8201 + m_GlyphIndex: 198 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 8202 + m_GlyphIndex: 199 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 8203 + m_GlyphIndex: 200 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 8204 + m_GlyphIndex: 201 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 8210 + m_GlyphIndex: 202 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 8211 + m_GlyphIndex: 203 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 8212 + m_GlyphIndex: 204 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 8213 + m_GlyphIndex: 205 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 8216 + m_GlyphIndex: 206 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 8217 + m_GlyphIndex: 207 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 8218 + m_GlyphIndex: 208 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 8220 + m_GlyphIndex: 209 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 8221 + m_GlyphIndex: 210 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 8222 + m_GlyphIndex: 211 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 8224 + m_GlyphIndex: 212 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 8225 + m_GlyphIndex: 213 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 8226 + m_GlyphIndex: 214 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 8230 + m_GlyphIndex: 215 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 8239 + m_GlyphIndex: 216 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 8240 + m_GlyphIndex: 217 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 8242 + m_GlyphIndex: 218 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 8243 + m_GlyphIndex: 219 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 8249 + m_GlyphIndex: 220 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 8250 + m_GlyphIndex: 221 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 8258 + m_GlyphIndex: 222 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 8260 + m_GlyphIndex: 223 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 8287 + m_GlyphIndex: 224 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 8364 + m_GlyphIndex: 225 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 8482 + m_GlyphIndex: 226 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 9633 + m_GlyphIndex: 227 + m_Scale: 1 + m_AtlasTextures: + - {fileID: 28735441583538754} + m_AtlasTextureIndex: 0 + m_UsedGlyphRects: [] + m_FreeGlyphRects: [] + m_fontInfo: + Name: Cormorant Unicase + PointSize: 47 + Scale: 1 + CharacterCount: 227 + LineHeight: 56.9375 + Baseline: 0 + Ascender: 43.4375 + CapHeight: 29.374998 + Descender: -13.5 + CenterLine: 0 + SuperscriptOffset: 43.4375 + SubscriptOffset: -4.7000003 + SubSize: 0.5 + Underline: -4.7000003 + UnderlineThickness: 2.3500001 + strikethrough: 10.886364 + strikethroughThickness: 2.3500001 + TabWidth: 110 + Padding: 5 + AtlasWidth: 512 + AtlasHeight: 512 + atlas: {fileID: 28735441583538754} + m_AtlasWidth: 512 + m_AtlasHeight: 512 + m_AtlasPadding: 5 + m_AtlasRenderMode: 16426 + m_glyphInfoList: + - id: 32 + x: 6 + y: 517 + width: 11 + height: 56.9375 + xOffset: 0 + yOffset: 43.4375 + xAdvance: 11 + scale: 1 + - id: 33 + x: 278 + y: 303 + width: 4.5624995 + height: 30.062498 + xOffset: 3.4999998 + yOffset: 29.624998 + xAdvance: 11.625 + scale: 1 + - id: 34 + x: 181 + y: 47 + width: 10.312499 + height: 13.062499 + xOffset: 1.9374999 + yOffset: 30.124998 + xAdvance: 13.3125 + scale: 1 + - id: 35 + x: 222 + y: 345 + width: 19.249998 + height: 26.749998 + xOffset: 2.6874998 + yOffset: 22.937498 + xAdvance: 24.75 + scale: 1 + - id: 36 + x: 279 + y: 260 + width: 14.437499 + height: 31.874998 + xOffset: 2.6874998 + yOffset: 26.749998 + xAdvance: 19.3125 + scale: 1 + - id: 37 + x: 93 + y: 223 + width: 24.687498 + height: 22.874998 + xOffset: 1.2499999 + yOffset: 22.562498 + xAdvance: 27 + scale: 1 + - id: 38 + x: 129 + y: 132 + width: 23.187498 + height: 23.124998 + xOffset: 1.8749999 + yOffset: 22.562498 + xAdvance: 25.125 + scale: 1 + - id: 39 + x: 321 + y: 23 + width: 3.6249998 + height: 13.062499 + xOffset: 1.9374999 + yOffset: 30.124998 + xAdvance: 6.5625 + scale: 1 + - id: 40 + x: 230 + y: 425 + width: 10.124999 + height: 39.687496 + xOffset: 2.9999998 + yOffset: 34.124996 + xAdvance: 14.5 + scale: 1 + - id: 41 + x: 74 + y: 83 + width: 10.062499 + height: 39.687496 + xOffset: 1.3124999 + yOffset: 34.124996 + xAdvance: 14.5 + scale: 1 + - id: 42 + x: 305 + y: 228 + width: 17.562498 + height: 17.937498 + xOffset: 2.4999998 + yOffset: 32.437496 + xAdvance: 21.0625 + scale: 1 + - id: 43 + x: 231 + y: 41 + width: 15.937499 + height: 15.937499 + xOffset: 1.3124999 + yOffset: 18.562498 + xAdvance: 18.6875 + scale: 1 + - id: 44 + x: 430 + y: 7 + width: 5.1874995 + height: 10.812499 + xOffset: 2.6249998 + yOffset: 3.3749998 + xAdvance: 10.4375 + scale: 1 + - id: 45 + x: 305 + y: 6 + width: 10.437499 + height: 3.8124998 + xOffset: 1.2499999 + yOffset: 13.312499 + xAdvance: 13.25 + scale: 1 + - id: 46 + x: 398 + y: 6 + width: 4.1874995 + height: 3.9999998 + xOffset: 2.5624998 + yOffset: 3.4999998 + xAdvance: 9.25 + scale: 1 + - id: 47 + x: 45 + y: 129 + width: 13.687499 + height: 42.374996 + xOffset: 1.1249999 + yOffset: 34.499996 + xAdvance: 16 + scale: 1 + - id: 48 + x: 427 + y: 308 + width: 22.249998 + height: 23.062498 + xOffset: 1.6874999 + yOffset: 22.499998 + xAdvance: 25.6875 + scale: 1 + - id: 49 + x: 451 + y: 233 + width: 12.312499 + height: 22.499998 + xOffset: 1.9999999 + yOffset: 22.562498 + xAdvance: 16.1875 + scale: 1 + - id: 50 + x: 334 + y: 227 + width: 17.749998 + height: 23.062498 + xOffset: 1.5624999 + yOffset: 23.124998 + xAdvance: 21.125 + scale: 1 + - id: 51 + x: 224 + y: 383 + width: 16.937498 + height: 30.437498 + xOffset: 1.2499999 + yOffset: 23.062498 + xAdvance: 20.875 + scale: 1 + - id: 52 + x: 153 + y: 90 + width: 19.937498 + height: 30.374998 + xOffset: 0.56249994 + yOffset: 22.687498 + xAdvance: 22.5625 + scale: 1 + - id: 53 + x: 154 + y: 47 + width: 15.187499 + height: 31.312498 + xOffset: 2.6249998 + yOffset: 23.937498 + xAdvance: 20.375 + scale: 1 + - id: 54 + x: 397 + y: 267 + width: 19.437498 + height: 29.249998 + xOffset: 2.2499998 + yOffset: 28.624998 + xAdvance: 23.5625 + scale: 1 + - id: 55 + x: 294 + y: 304 + width: 19.062498 + height: 30.874998 + xOffset: 1.6249999 + yOffset: 23.374998 + xAdvance: 22.375 + scale: 1 + - id: 56 + x: 428 + y: 267 + width: 21.124998 + height: 29.249998 + xOffset: 2.8124998 + yOffset: 28.624998 + xAdvance: 26.8125 + scale: 1 + - id: 57 + x: 363 + y: 225 + width: 19.124998 + height: 29.874998 + xOffset: 1.8124999 + yOffset: 22.624998 + xAdvance: 23.5625 + scale: 1 + - id: 58 + x: 475 + y: 238 + width: 4.1874995 + height: 19.937498 + xOffset: 2.5624998 + yOffset: 19.437498 + xAdvance: 9.25 + scale: 1 + - id: 59 + x: 449 + y: 395 + width: 5.1874995 + height: 26.937498 + xOffset: 2.6249998 + yOffset: 19.437498 + xAdvance: 10.5 + scale: 1 + - id: 60 + x: 487 + y: 161 + width: 16.312498 + height: 15.687499 + xOffset: 1.4374999 + yOffset: 18.999998 + xAdvance: 19.125 + scale: 1 + - id: 61 + x: 427 + y: 29 + width: 19.249998 + height: 8.374999 + xOffset: 1.3124999 + yOffset: 15.374999 + xAdvance: 22 + scale: 1 + - id: 62 + x: 487 + y: 134 + width: 16.249998 + height: 15.624999 + xOffset: 1.3749999 + yOffset: 18.999998 + xAdvance: 19.125 + scale: 1 + - id: 63 + x: 222 + y: 182 + width: 11.999999 + height: 29.874998 + xOffset: 1.9999999 + yOffset: 29.374998 + xAdvance: 15.4375 + scale: 1 + - id: 64 + x: 203 + y: 264 + width: 26.937498 + height: 27.749998 + xOffset: 3.4374998 + yOffset: 24.562498 + xAdvance: 33.8125 + scale: 1 + - id: 65 + x: 160 + y: 476 + width: 33.249996 + height: 29.937498 + xOffset: -0.24999999 + yOffset: 29.999998 + xAdvance: 33 + scale: 1 + - id: 66 + x: 461 + y: 269 + width: 21.937498 + height: 29.687498 + xOffset: 1.8749999 + yOffset: 29.562498 + xAdvance: 26.25 + scale: 1 + - id: 67 + x: 125 + y: 304 + width: 27.124998 + height: 30.437498 + xOffset: 2.2499998 + yOffset: 29.937498 + xAdvance: 31.4375 + scale: 1 + - id: 68 + x: 142 + y: 346 + width: 28.624998 + height: 29.687498 + xOffset: 1.4999999 + yOffset: 29.499998 + xAdvance: 32.5 + scale: 1 + - id: 69 + x: 485 + y: 351 + width: 20.937498 + height: 29.374998 + xOffset: 1.8749999 + yOffset: 29.374998 + xAdvance: 25.25 + scale: 1 + - id: 70 + x: 191 + y: 182 + width: 19.562498 + height: 29.374998 + xOffset: 1.8749999 + yOffset: 29.374998 + xAdvance: 23.9375 + scale: 1 + - id: 71 + x: 51 + y: 186 + width: 29.499998 + height: 30.437498 + xOffset: 2.2499998 + yOffset: 29.937498 + xAdvance: 33.5625 + scale: 1 + - id: 72 + x: 205 + y: 476 + width: 32.499996 + height: 29.374998 + xOffset: 1.4999999 + yOffset: 29.374998 + xAdvance: 35.6875 + scale: 1 + - id: 73 + x: 228 + y: 141 + width: 11.437499 + height: 29.374998 + xOffset: 2.0624998 + yOffset: 29.374998 + xAdvance: 15.625 + scale: 1 + - id: 74 + x: 70 + y: 134 + width: 15.437499 + height: 40.812496 + xOffset: -2.1874998 + yOffset: 29.374998 + xAdvance: 15.125 + scale: 1 + - id: 75 + x: 182 + y: 345 + width: 28.687498 + height: 29.437498 + xOffset: 1.4999999 + yOffset: 29.374998 + xAdvance: 30.5625 + scale: 1 + - id: 76 + x: 461 + y: 310 + width: 22.937498 + height: 29.374998 + xOffset: 1.4999999 + yOffset: 29.374998 + xAdvance: 25.0625 + scale: 1 + - id: 77 + x: 112 + y: 476 + width: 36.562496 + height: 29.374998 + xOffset: 1.6874999 + yOffset: 29.374998 + xAdvance: 39.3125 + scale: 1 + - id: 78 + x: 395 + y: 475 + width: 31.437498 + height: 30.124998 + xOffset: 1.7499999 + yOffset: 29.374998 + xAdvance: 34.1875 + scale: 1 + - id: 79 + x: 438 + y: 475 + width: 31.374998 + height: 30.437498 + xOffset: 2.2499998 + yOffset: 29.937498 + xAdvance: 36 + scale: 1 + - id: 80 + x: 174 + y: 223 + width: 21.687498 + height: 29.499998 + xOffset: 1.8749999 + yOffset: 29.562498 + xAdvance: 25.5 + scale: 1 + - id: 81 + x: 6 + y: 376 + width: 32.999996 + height: 38.499996 + xOffset: 2.2499998 + yOffset: 29.937498 + xAdvance: 36 + scale: 1 + - id: 82 + x: 466 + y: 426 + width: 30.249998 + height: 29.499998 + xOffset: 1.8749999 + yOffset: 29.562498 + xAdvance: 31.625 + scale: 1 + - id: 83 + x: 162 + y: 172 + width: 17.437498 + height: 30.437498 + xOffset: 3.1249998 + yOffset: 29.937498 + xAdvance: 23.0625 + scale: 1 + - id: 84 + x: 125 + y: 262 + width: 26.312498 + height: 30.749998 + xOffset: 1.7499999 + yOffset: 30.749998 + xAdvance: 29.8125 + scale: 1 + - id: 85 + x: 50 + y: 376 + width: 30.624998 + height: 29.999998 + xOffset: 1.2499999 + yOffset: 29.374998 + xAdvance: 32.8125 + scale: 1 + - id: 86 + x: 380 + y: 434 + width: 31.749998 + height: 29.499998 + xOffset: -0.24999999 + yOffset: 29.374998 + xAdvance: 31.3125 + scale: 1 + - id: 87 + x: 6 + y: 476 + width: 44.249996 + height: 29.499998 + xOffset: -0.24999999 + yOffset: 29.374998 + xAdvance: 43.75 + scale: 1 + - id: 88 + x: 142 + y: 387 + width: 29.249998 + height: 29.374998 + xOffset: 0.62499994 + yOffset: 29.374998 + xAdvance: 30.625 + scale: 1 + - id: 89 + x: 183 + y: 386 + width: 29.124998 + height: 29.374998 + xOffset: -0.24999999 + yOffset: 29.374998 + xAdvance: 28.625 + scale: 1 + - id: 90 + x: 376 + y: 392 + width: 24.062498 + height: 30.874998 + xOffset: 2.3749998 + yOffset: 30.874998 + xAdvance: 27.9375 + scale: 1 + - id: 91 + x: 80 + y: 32 + width: 7.1249995 + height: 39.562496 + xOffset: 4.1249995 + yOffset: 34.124996 + xAdvance: 12.875 + scale: 1 + - id: 92 + x: 49 + y: 75 + width: 13.749999 + height: 42.374996 + xOffset: 1.1249999 + yOffset: 34.499996 + xAdvance: 16 + scale: 1 + - id: 93 + x: 96 + y: 83 + width: 7.1249995 + height: 39.562496 + xOffset: 1.6249999 + yOffset: 34.124996 + xAdvance: 12.875 + scale: 1 + - id: 94 + x: 6 + y: 6 + width: 12.937499 + height: 12.312499 + xOffset: 2.6249998 + yOffset: 22.249998 + xAdvance: 18.4375 + scale: 1 + - id: 95 + x: 479 + y: 121 + width: 15.937499 + height: 1.8749999 + xOffset: 1.3124999 + yOffset: -1.6874999 + xAdvance: 18.6875 + scale: 1 + - id: 96 + x: 327 + y: 6 + width: 11.124999 + height: 5.0624995 + xOffset: 0.74999994 + yOffset: 25.749998 + xAdvance: 12.875 + scale: 1 + - id: 97 + x: 363 + y: 150 + width: 19.624998 + height: 22.812498 + xOffset: 2.9999998 + yOffset: 22.437498 + xAdvance: 22.4375 + scale: 1 + - id: 98 + x: 422 + y: 83 + width: 20.062498 + height: 22.312498 + xOffset: 1.4999999 + yOffset: 22.187498 + xAdvance: 23.4375 + scale: 1 + - id: 99 + x: 164 + y: 137 + width: 21.499998 + height: 23.124998 + xOffset: 1.6874999 + yOffset: 22.562498 + xAdvance: 25.3125 + scale: 1 + - id: 100 + x: 361 + y: 46 + width: 23.437498 + height: 22.249998 + xOffset: 1.4999999 + yOffset: 22.124998 + xAdvance: 26.6875 + scale: 1 + - id: 101 + x: 309 + y: 110 + width: 17.874998 + height: 23.062498 + xOffset: 1.6874999 + yOffset: 22.562498 + xAdvance: 20.625 + scale: 1 + - id: 102 + x: 394 + y: 150 + width: 16.999998 + height: 21.999998 + xOffset: 1.4999999 + yOffset: 21.999998 + xAdvance: 20.0625 + scale: 1 + - id: 103 + x: 274 + y: 110 + width: 23.437498 + height: 23.124998 + xOffset: 1.6874999 + yOffset: 22.562498 + xAdvance: 26.1875 + scale: 1 + - id: 104 + x: 200 + y: 108 + width: 26.187498 + height: 21.999998 + xOffset: 1.4999999 + yOffset: 21.999998 + xAdvance: 29.25 + scale: 1 + - id: 105 + x: 454 + y: 86 + width: 10.187499 + height: 21.999998 + xOffset: 1.8124999 + yOffset: 21.999998 + xAdvance: 13.75 + scale: 1 + - id: 106 + x: 495 + y: 309 + width: 10.312499 + height: 30.562498 + xOffset: 1.2499999 + yOffset: 21.999998 + xAdvance: 12.625 + scale: 1 + - id: 107 + x: 422 + y: 150 + width: 23.687498 + height: 21.999998 + xOffset: 1.4999999 + yOffset: 21.999998 + xAdvance: 25.375 + scale: 1 + - id: 108 + x: 396 + y: 41 + width: 19.499998 + height: 21.999998 + xOffset: 1.4999999 + yOffset: 21.999998 + xAdvance: 21.75 + scale: 1 + - id: 109 + x: 249 + y: 483 + width: 39.749996 + height: 22.624998 + xOffset: 1.4999999 + yOffset: 22.624998 + xAdvance: 41.8125 + scale: 1 + - id: 110 + x: 92 + y: 189 + width: 25.999998 + height: 22.562498 + xOffset: 1.4999999 + yOffset: 22.562498 + xAdvance: 28.0625 + scale: 1 + - id: 111 + x: 361 + y: 115 + width: 23.749998 + height: 23.124998 + xOffset: 1.6874999 + yOffset: 22.562498 + xAdvance: 27.125 + scale: 1 + - id: 112 + x: 427 + y: 49 + width: 18.249998 + height: 22.124998 + xOffset: 1.4999999 + yOffset: 22.187498 + xAdvance: 21.6875 + scale: 1 + - id: 113 + x: 164 + y: 303 + width: 26.874998 + height: 30.999998 + xOffset: 1.6874999 + yOffset: 22.562498 + xAdvance: 27.125 + scale: 1 + - id: 114 + x: 238 + y: 106 + width: 24.062498 + height: 22.124998 + xOffset: 1.4999999 + yOffset: 22.187498 + xAdvance: 25.0625 + scale: 1 + - id: 115 + x: 396 + y: 74 + width: 14.499999 + height: 23.124998 + xOffset: 2.2499998 + yOffset: 22.562498 + xAdvance: 18.5 + scale: 1 + - id: 116 + x: 293 + y: 346 + width: 15.312499 + height: 25.562498 + xOffset: 1.6874999 + yOffset: 25.062498 + xAdvance: 17.625 + scale: 1 + - id: 117 + x: 240 + y: 229 + width: 26.062498 + height: 22.562498 + xOffset: 1.3124999 + yOffset: 21.999998 + xAdvance: 28.9375 + scale: 1 + - id: 118 + x: 238 + y: 72 + width: 24.562498 + height: 22.124998 + xOffset: -0.24999999 + yOffset: 21.999998 + xAdvance: 24 + scale: 1 + - id: 119 + x: 349 + y: 483 + width: 34.437496 + height: 22.124998 + xOffset: -0.24999999 + yOffset: 21.999998 + xAdvance: 33.875 + scale: 1 + - id: 120 + x: 329 + y: 152 + width: 22.562498 + height: 21.999998 + xOffset: 0.56249994 + yOffset: 21.999998 + xAdvance: 23.6875 + scale: 1 + - id: 121 + x: 325 + y: 304 + width: 24.562498 + height: 30.062498 + xOffset: -0.24999999 + yOffset: 21.999998 + xAdvance: 24 + scale: 1 + - id: 122 + x: 309 + y: 75 + width: 17.937498 + height: 23.562498 + xOffset: 1.6874999 + yOffset: 23.499998 + xAdvance: 21.3125 + scale: 1 + - id: 123 + x: 99 + y: 32 + width: 10.562499 + height: 39.562496 + xOffset: 1.3124999 + yOffset: 34.124996 + xAdvance: 13.5625 + scale: 1 + - id: 124 + x: 129 + y: 356 + width: 1.8124999 + height: 36.812496 + xOffset: 3.0624998 + yOffset: 29.812498 + xAdvance: 7.875 + scale: 1 + - id: 125 + x: 293 + y: 383 + width: 10.562499 + height: 39.562496 + xOffset: 1.3124999 + yOffset: 34.124996 + xAdvance: 13.3125 + scale: 1 + - id: 126 + x: 455 + y: 183 + width: 16.624998 + height: 4.0624995 + xOffset: 2.1874998 + yOffset: 13.124999 + xAdvance: 20.9375 + scale: 1 + - id: 160 + x: 6 + y: 517 + width: 0 + height: 0 + xOffset: 0 + yOffset: 0 + xAdvance: 11 + scale: 1 + - id: 161 + x: 184 + y: 95 + width: 4.4999995 + height: 30.062498 + xOffset: 3.5624998 + yOffset: 17.187498 + xAdvance: 11.625 + scale: 1 + - id: 162 + x: 121 + y: 47 + width: 21.499998 + height: 31.874998 + xOffset: 1.6874999 + yOffset: 26.749998 + xAdvance: 25.3125 + scale: 1 + - id: 163 + x: 452 + y: 199 + width: 16.499998 + height: 22.562498 + xOffset: 1.3124999 + yOffset: 22.562498 + xAdvance: 20.3125 + scale: 1 + - id: 164 + x: 491 + y: 234 + width: 14.624999 + height: 15.624999 + xOffset: 2.3124998 + yOffset: 17.312498 + xAdvance: 19.4375 + scale: 1 + - id: 165 + x: 418 + y: 117 + width: 22.562498 + height: 21.999998 + xOffset: -0.24999999 + yOffset: 21.999998 + xAdvance: 22.625 + scale: 1 + - id: 166 + x: 161 + y: 214 + width: 1.8124999 + height: 36.812496 + xOffset: 3.0624998 + yOffset: 29.812498 + xAdvance: 7.875 + scale: 1 + - id: 167 + x: 305 + y: 257 + width: 14.749999 + height: 35.687496 + xOffset: 3.3749998 + yOffset: 28.562498 + xAdvance: 20.75 + scale: 1 + - id: 168 + x: 281 + y: 6 + width: 12.249999 + height: 3.8749998 + xOffset: 1.4374999 + yOffset: 26.374998 + xAdvance: 15.125 + scale: 1 + - id: 169 + x: 241 + y: 263 + width: 26.999998 + height: 28.187498 + xOffset: 2.4374998 + yOffset: 24.812498 + xAdvance: 31.9375 + scale: 1 + - id: 170 + x: 457 + y: 58 + width: 11.624999 + height: 16.124998 + xOffset: 1.3749999 + yOffset: 29.624998 + xAdvance: 13.0625 + scale: 1 + - id: 171 + x: 203 + y: 41 + width: 16.124998 + height: 15.374999 + xOffset: 2.5624998 + yOffset: 18.812498 + xAdvance: 21.4375 + scale: 1 + - id: 172 + x: 329 + y: 49 + width: 15.749999 + height: 9.249999 + xOffset: 1.3124999 + yOffset: 14.249999 + xAdvance: 18.5625 + scale: 1 + - id: 173 + x: 350 + y: 8 + width: 12.687499 + height: 4.3124995 + xOffset: 1.2499999 + yOffset: 11.999999 + xAdvance: 15.1875 + scale: 1 + - id: 174 + x: 163 + y: 264 + width: 28.374998 + height: 27.562498 + xOffset: 2.4374998 + yOffset: 24.437498 + xAdvance: 33.375 + scale: 1 + - id: 175 + x: 374 + y: 11 + width: 12.374999 + height: 1.3124999 + xOffset: 1.8749999 + yOffset: 24.062498 + xAdvance: 16.1875 + scale: 1 + - id: 176 + x: 30 + y: 6 + width: 12.874999 + height: 12.062499 + xOffset: 1.3124999 + yOffset: 29.624998 + xAdvance: 15.625 + scale: 1 + - id: 177 + x: 278 + y: 229 + width: 15.937499 + height: 19.812498 + xOffset: 1.3124999 + yOffset: 20.937498 + xAdvance: 18.6875 + scale: 1 + - id: 178 + x: 245 + y: 14 + width: 8.999999 + height: 15.374999 + xOffset: 1.2499999 + yOffset: 34.312496 + xAdvance: 11.8125 + scale: 1 + - id: 179 + x: 217 + y: 68 + width: 9.124999 + height: 15.624999 + xOffset: 0.99999994 + yOffset: 34.312496 + xAdvance: 11.8125 + scale: 1 + - id: 180 + x: 384 + y: 24 + width: 11.124999 + height: 5.0624995 + xOffset: 0.93749994 + yOffset: 25.749998 + xAdvance: 12.9375 + scale: 1 + - id: 182 + x: 480 + y: 201 + width: 22.437498 + height: 21.999998 + xOffset: 2.4999998 + yOffset: 21.999998 + xAdvance: 27 + scale: 1 + - id: 183 + x: 414 + y: 6 + width: 4.1874995 + height: 3.9999998 + xOffset: 2.5624998 + yOffset: 13.062499 + xAdvance: 9.25 + scale: 1 + - id: 184 + x: 78 + y: 6 + width: 7.9374995 + height: 12.874999 + xOffset: 1.4374999 + yOffset: 0 + xAdvance: 10.875 + scale: 1 + - id: 185 + x: 258 + y: 45 + width: 9.187499 + height: 15.312499 + xOffset: 1.3749999 + yOffset: 34.249996 + xAdvance: 12.3125 + scale: 1 + - id: 186 + x: 458 + y: 30 + width: 12.437499 + height: 16.124998 + xOffset: 1.1874999 + yOffset: 29.624998 + xAdvance: 14.8125 + scale: 1 + - id: 187 + x: 279 + y: 48 + width: 16.062498 + height: 15.249999 + xOffset: 2.8124998 + yOffset: 18.812498 + xAdvance: 21.4375 + scale: 1 + - id: 188 + x: 121 + y: 6 + width: 25.562498 + height: 29.874998 + xOffset: 1.3749999 + yOffset: 29.812498 + xAdvance: 28.1875 + scale: 1 + - id: 189 + x: 158 + y: 6 + width: 25.687498 + height: 29.874998 + xOffset: 1.3749999 + yOffset: 29.812498 + xAdvance: 28.6875 + scale: 1 + - id: 190 + x: 412 + y: 392 + width: 25.437498 + height: 29.937498 + xOffset: 0.99999994 + yOffset: 29.874998 + xAdvance: 27.6875 + scale: 1 + - id: 191 + x: 338 + y: 111 + width: 11.999999 + height: 29.874998 + xOffset: 1.3124999 + yOffset: 16.999998 + xAdvance: 15.375 + scale: 1 + - id: 192 + x: 6 + y: 279 + width: 33.249996 + height: 36.937496 + xOffset: -0.24999999 + yOffset: 36.999996 + xAdvance: 33 + scale: 1 + - id: 193 + x: 6 + y: 231 + width: 33.249996 + height: 36.937496 + xOffset: -0.24999999 + yOffset: 36.999996 + xAdvance: 33 + scale: 1 + - id: 194 + x: 99 + y: 429 + width: 33.249996 + height: 35.562496 + xOffset: -0.24999999 + yOffset: 35.624996 + xAdvance: 33 + scale: 1 + - id: 195 + x: 6 + y: 183 + width: 33.249996 + height: 36.124996 + xOffset: -0.24999999 + yOffset: 36.187496 + xAdvance: 33 + scale: 1 + - id: 196 + x: 6 + y: 327 + width: 33.249996 + height: 37.562496 + xOffset: -0.24999999 + yOffset: 37.562496 + xAdvance: 33 + scale: 1 + - id: 197 + x: 6 + y: 426 + width: 33.249996 + height: 38.562496 + xOffset: -0.24999999 + yOffset: 38.624996 + xAdvance: 33 + scale: 1 + - id: 198 + x: 62 + y: 476 + width: 38.812496 + height: 29.374998 + xOffset: -0.12499999 + yOffset: 29.374998 + xAdvance: 41.0625 + scale: 1 + - id: 199 + x: 6 + y: 129 + width: 27.124998 + height: 42.812496 + xOffset: 2.2499998 + yOffset: 29.937498 + xAdvance: 31.4375 + scale: 1 + - id: 200 + x: 97 + y: 141 + width: 20.937498 + height: 36.937496 + xOffset: 1.8749999 + yOffset: 36.999996 + xAdvance: 25.25 + scale: 1 + - id: 201 + x: 129 + y: 214 + width: 20.937498 + height: 36.937496 + xOffset: 1.8749999 + yOffset: 36.999996 + xAdvance: 25.25 + scale: 1 + - id: 202 + x: 93 + y: 306 + width: 20.937498 + height: 37.374996 + xOffset: 1.8749999 + yOffset: 37.374996 + xAdvance: 25.25 + scale: 1 + - id: 203 + x: 93 + y: 257 + width: 20.937498 + height: 37.562496 + xOffset: 1.8749999 + yOffset: 37.562496 + xAdvance: 25.25 + scale: 1 + - id: 204 + x: 494 + y: 261 + width: 11.874999 + height: 36.937496 + xOffset: 1.6249999 + yOffset: 36.999996 + xAdvance: 15.625 + scale: 1 + - id: 205 + x: 251 + y: 140 + width: 11.937499 + height: 36.937496 + xOffset: 2.0624998 + yOffset: 36.999996 + xAdvance: 15.625 + scale: 1 + - id: 206 + x: 315 + y: 386 + width: 11.437499 + height: 37.374996 + xOffset: 2.0624998 + yOffset: 37.374996 + xAdvance: 15.625 + scale: 1 + - id: 207 + x: 427 + y: 343 + width: 11.437499 + height: 37.562496 + xOffset: 2.0624998 + yOffset: 37.562496 + xAdvance: 15.625 + scale: 1 + - id: 208 + x: 253 + y: 345 + width: 28.624998 + height: 29.687498 + xOffset: 1.4999999 + yOffset: 29.499998 + xAdvance: 32.5 + scale: 1 + - id: 209 + x: 144 + y: 428 + width: 31.437498 + height: 36.874996 + xOffset: 1.7499999 + yOffset: 36.187496 + xAdvance: 34.1875 + scale: 1 + - id: 210 + x: 6 + y: 30 + width: 31.374998 + height: 37.499996 + xOffset: 2.2499998 + yOffset: 36.999996 + xAdvance: 36 + scale: 1 + - id: 211 + x: 187 + y: 427 + width: 31.374998 + height: 37.499996 + xOffset: 2.2499998 + yOffset: 36.999996 + xAdvance: 36 + scale: 1 + - id: 212 + x: 252 + y: 434 + width: 31.374998 + height: 37.937496 + xOffset: 2.2499998 + yOffset: 37.374996 + xAdvance: 36 + scale: 1 + - id: 213 + x: 295 + y: 435 + width: 31.374998 + height: 36.687496 + xOffset: 2.2499998 + yOffset: 36.187496 + xAdvance: 36 + scale: 1 + - id: 214 + x: 6 + y: 79 + width: 31.374998 + height: 38.124996 + xOffset: 2.2499998 + yOffset: 37.562496 + xAdvance: 36 + scale: 1 + - id: 215 + x: 54 + y: 6 + width: 12.562499 + height: 12.624999 + xOffset: 2.6249998 + yOffset: 16.812498 + xAdvance: 17.9375 + scale: 1 + - id: 216 + x: 423 + y: 433 + width: 31.374998 + height: 30.437498 + xOffset: 2.2499998 + yOffset: 29.937498 + xAdvance: 36.25 + scale: 1 + - id: 217 + x: 338 + y: 434 + width: 30.624998 + height: 37.562496 + xOffset: 1.2499999 + yOffset: 36.999996 + xAdvance: 32.8125 + scale: 1 + - id: 218 + x: 51 + y: 277 + width: 30.624998 + height: 37.562496 + xOffset: 1.2499999 + yOffset: 36.999996 + xAdvance: 32.8125 + scale: 1 + - id: 219 + x: 51 + y: 228 + width: 30.624998 + height: 37.999996 + xOffset: 1.2499999 + yOffset: 37.374996 + xAdvance: 32.8125 + scale: 1 + - id: 220 + x: 51 + y: 326 + width: 30.624998 + height: 38.187496 + xOffset: 1.2499999 + yOffset: 37.562496 + xAdvance: 32.8125 + scale: 1 + - id: 221 + x: 252 + y: 386 + width: 29.124998 + height: 36.937496 + xOffset: -0.24999999 + yOffset: 36.999996 + xAdvance: 28.625 + scale: 1 + - id: 222 + x: 207 + y: 223 + width: 21.624998 + height: 29.374998 + xOffset: 1.8749999 + yOffset: 29.374998 + xAdvance: 25.3125 + scale: 1 + - id: 223 + x: 274 + y: 75 + width: 23.374998 + height: 23.062498 + xOffset: 0.31249997 + yOffset: 22.562498 + xAdvance: 25.125 + scale: 1 + - id: 224 + x: 245 + y: 188 + width: 19.624998 + height: 29.937498 + xOffset: 2.9999998 + yOffset: 29.624998 + xAdvance: 22.4375 + scale: 1 + - id: 225 + x: 363 + y: 184 + width: 19.624998 + height: 29.937498 + xOffset: 2.9999998 + yOffset: 29.624998 + xAdvance: 22.4375 + scale: 1 + - id: 226 + x: 331 + y: 262 + width: 19.624998 + height: 30.249998 + xOffset: 2.9999998 + yOffset: 29.937498 + xAdvance: 22.4375 + scale: 1 + - id: 227 + x: 197 + y: 141 + width: 19.624998 + height: 29.124998 + xOffset: 2.9999998 + yOffset: 28.812498 + xAdvance: 22.4375 + scale: 1 + - id: 228 + x: 396 + y: 308 + width: 19.624998 + height: 30.562498 + xOffset: 2.9999998 + yOffset: 30.187498 + xAdvance: 22.4375 + scale: 1 + - id: 229 + x: 49 + y: 30 + width: 19.624998 + height: 33.624996 + xOffset: 2.9999998 + yOffset: 33.249996 + xAdvance: 22.4375 + scale: 1 + - id: 230 + x: 466 + y: 392 + width: 27.499998 + height: 22.999998 + xOffset: 2.4374998 + yOffset: 22.437498 + xAdvance: 30.125 + scale: 1 + - id: 231 + x: 129 + y: 167 + width: 21.499998 + height: 35.499996 + xOffset: 1.6874999 + yOffset: 22.562498 + xAdvance: 25.3125 + scale: 1 + - id: 232 + x: 276 + y: 187 + width: 17.874998 + height: 30.124998 + xOffset: 1.6874999 + yOffset: 29.624998 + xAdvance: 20.625 + scale: 1 + - id: 233 + x: 305 + y: 186 + width: 17.874998 + height: 30.124998 + xOffset: 1.6874999 + yOffset: 29.624998 + xAdvance: 20.625 + scale: 1 + - id: 234 + x: 334 + y: 185 + width: 17.874998 + height: 30.437498 + xOffset: 1.6874999 + yOffset: 29.937498 + xAdvance: 20.625 + scale: 1 + - id: 235 + x: 274 + y: 145 + width: 17.874998 + height: 30.749998 + xOffset: 1.6874999 + yOffset: 30.187498 + xAdvance: 20.625 + scale: 1 + - id: 236 + x: 338 + y: 70 + width: 11.124999 + height: 29.562498 + xOffset: 0.87499994 + yOffset: 29.624998 + xAdvance: 13.75 + scale: 1 + - id: 237 + x: 394 + y: 183 + width: 11.499999 + height: 29.562498 + xOffset: 1.8124999 + yOffset: 29.624998 + xAdvance: 13.75 + scale: 1 + - id: 238 + x: 396 + y: 109 + width: 10.812499 + height: 29.874998 + xOffset: 1.5624999 + yOffset: 29.937498 + xAdvance: 13.75 + scale: 1 + - id: 239 + x: 394 + y: 224 + width: 10.687499 + height: 30.187498 + xOffset: 1.6874999 + yOffset: 30.187498 + xAdvance: 13.75 + scale: 1 + - id: 240 + x: 417 + y: 198 + width: 23.437498 + height: 22.249998 + xOffset: 1.4999999 + yOffset: 22.124998 + xAdvance: 26.6875 + scale: 1 + - id: 241 + x: 320 + y: 346 + width: 25.999998 + height: 28.749998 + xOffset: 1.4999999 + yOffset: 28.812498 + xAdvance: 28.0625 + scale: 1 + - id: 242 + x: 357 + y: 350 + width: 23.749998 + height: 30.062498 + xOffset: 1.6874999 + yOffset: 29.562498 + xAdvance: 27.125 + scale: 1 + - id: 243 + x: 392 + y: 350 + width: 23.749998 + height: 30.062498 + xOffset: 1.6874999 + yOffset: 29.562498 + xAdvance: 27.125 + scale: 1 + - id: 244 + x: 361 + y: 308 + width: 23.749998 + height: 30.437498 + xOffset: 1.6874999 + yOffset: 29.874998 + xAdvance: 27.125 + scale: 1 + - id: 245 + x: 450 + y: 351 + width: 23.749998 + height: 29.249998 + xOffset: 1.6874999 + yOffset: 28.749998 + xAdvance: 27.125 + scale: 1 + - id: 246 + x: 362 + y: 266 + width: 23.749998 + height: 30.687498 + xOffset: 1.6874999 + yOffset: 30.187498 + xAdvance: 27.125 + scale: 1 + - id: 247 + x: 452 + y: 119 + width: 15.937499 + height: 19.062498 + xOffset: 1.3124999 + yOffset: 20.499998 + xAdvance: 18.6875 + scale: 1 + - id: 248 + x: 361 + y: 80 + width: 23.749998 + height: 23.124998 + xOffset: 1.6874999 + yOffset: 22.562498 + xAdvance: 27.125 + scale: 1 + - id: 249 + x: 202 + y: 303 + width: 26.062498 + height: 30.124998 + xOffset: 1.3124999 + yOffset: 29.624998 + xAdvance: 28.9375 + scale: 1 + - id: 250 + x: 240 + y: 303 + width: 26.062498 + height: 30.124998 + xOffset: 1.3124999 + yOffset: 29.624998 + xAdvance: 28.9375 + scale: 1 + - id: 251 + x: 115 + y: 90 + width: 26.062498 + height: 30.437498 + xOffset: 1.3124999 + yOffset: 29.937498 + xAdvance: 28.9375 + scale: 1 + - id: 252 + x: 338 + y: 392 + width: 26.062498 + height: 30.749998 + xOffset: 1.3124999 + yOffset: 30.187498 + xAdvance: 28.9375 + scale: 1 + - id: 253 + x: 93 + y: 355 + width: 24.562498 + height: 37.624996 + xOffset: -0.24999999 + yOffset: 29.624998 + xAdvance: 24 + scale: 1 + - id: 254 + x: 457 + y: 150 + width: 18.249998 + height: 21.999998 + xOffset: 1.4999999 + yOffset: 21.999998 + xAdvance: 21.5 + scale: 1 + - id: 255 + x: 481 + y: 467 + width: 24.562498 + height: 38.249996 + xOffset: -0.24999999 + yOffset: 30.187498 + xAdvance: 24 + scale: 1 + - id: 8194 + x: 6 + y: 517 + width: 0 + height: 0 + xOffset: 0 + yOffset: 0 + xAdvance: 23.5625 + scale: 1 + - id: 8195 + x: 6 + y: 517 + width: 0 + height: 0 + xOffset: 0 + yOffset: 0 + xAdvance: 47.0625 + scale: 1 + - id: 8196 + x: 6 + y: 517 + width: 0 + height: 0 + xOffset: 0 + yOffset: 0 + xAdvance: 15.625 + scale: 1 + - id: 8197 + x: 6 + y: 517 + width: 0 + height: 0 + xOffset: 0 + yOffset: 0 + xAdvance: 11.75 + scale: 1 + - id: 8198 + x: 6 + y: 517 + width: 0 + height: 0 + xOffset: 0 + yOffset: 0 + xAdvance: 7.875 + scale: 1 + - id: 8199 + x: 6 + y: 517 + width: 0 + height: 0 + xOffset: 0 + yOffset: 0 + xAdvance: 20.5625 + scale: 1 + - id: 8200 + x: 6 + y: 517 + width: 0 + height: 0 + xOffset: 0 + yOffset: 0 + xAdvance: 14.0625 + scale: 1 + - id: 8201 + x: 6 + y: 517 + width: 0 + height: 0 + xOffset: 0 + yOffset: 0 + xAdvance: 9.375 + scale: 1 + - id: 8202 + x: 6 + y: 517 + width: 0 + height: 0 + xOffset: 0 + yOffset: 0 + xAdvance: 5.5 + scale: 1 + - id: 8203 + x: 6 + y: 517 + width: 0 + height: 0 + xOffset: 0 + yOffset: 0 + xAdvance: 0 + scale: 1 + - id: 8204 + x: 6 + y: 517 + width: 0 + height: 0 + xOffset: 0 + yOffset: 0 + xAdvance: 0 + scale: 1 + - id: 8210 + x: 483 + y: 188 + width: 20.312498 + height: 1.8124999 + xOffset: 1.3124999 + yOffset: 9.874999 + xAdvance: 23.0625 + scale: 1 + - id: 8211 + x: 184 + y: 82 + width: 21.437498 + height: 1.8124999 + xOffset: 1.3124999 + yOffset: 12.124999 + xAdvance: 24.1875 + scale: 1 + - id: 8212 + x: 51 + y: 417 + width: 36.249996 + height: 1.8124999 + xOffset: 1.3124999 + yOffset: 12.124999 + xAdvance: 39 + scale: 1 + - id: 8213 + x: 200 + y: 95 + width: 26.937498 + height: 1.8124999 + xOffset: 1.3124999 + yOffset: 9.874999 + xAdvance: 29.6875 + scale: 1 + - id: 8216 + x: 447 + y: 7 + width: 5.1874995 + height: 10.874999 + xOffset: 1.0624999 + yOffset: 30.062498 + xAdvance: 7.875 + scale: 1 + - id: 8217 + x: 464 + y: 8 + width: 5.1874995 + height: 10.874999 + xOffset: 1.0624999 + yOffset: 29.812498 + xAdvance: 7.3125 + scale: 1 + - id: 8218 + x: 476 + y: 97 + width: 5.1874995 + height: 10.812499 + xOffset: 1.0624999 + yOffset: 3.3749998 + xAdvance: 7.3125 + scale: 1 + - id: 8220 + x: 97 + y: 10 + width: 12.062499 + height: 10.874999 + xOffset: 1.1249999 + yOffset: 30.062498 + xAdvance: 14.3125 + scale: 1 + - id: 8221 + x: 336 + y: 27 + width: 12.124999 + height: 10.874999 + xOffset: 1.0624999 + yOffset: 29.812498 + xAdvance: 14.3125 + scale: 1 + - id: 8222 + x: 360 + y: 24 + width: 12.124999 + height: 10.812499 + xOffset: 1.0624999 + yOffset: 3.3749998 + xAdvance: 14.375 + scale: 1 + - id: 8224 + x: 195 + y: 6 + width: 13.312499 + height: 23.312498 + xOffset: 1.2499999 + yOffset: 23.062498 + xAdvance: 15.875 + scale: 1 + - id: 8225 + x: 220 + y: 6 + width: 13.374999 + height: 23.937498 + xOffset: 1.2499999 + yOffset: 23.124998 + xAdvance: 15.875 + scale: 1 + - id: 8226 + x: 407 + y: 21 + width: 8.874999 + height: 8.874999 + xOffset: 2.6874998 + yOffset: 15.437499 + xAdvance: 14.375 + scale: 1 + - id: 8230 + x: 417 + y: 183 + width: 26.124998 + height: 3.9999998 + xOffset: 2.5624998 + yOffset: 3.4999998 + xAdvance: 31.25 + scale: 1 + - id: 8239 + x: 6 + y: 517 + width: 0 + height: 0 + xOffset: 0 + yOffset: 0 + xAdvance: 9.375 + scale: 1 + - id: 8240 + x: 300 + y: 483 + width: 37.562496 + height: 22.874998 + xOffset: 1.2499999 + yOffset: 22.562498 + xAdvance: 40.0625 + scale: 1 + - id: 8242 + x: 265 + y: 18 + width: 4.1249995 + height: 15.749999 + xOffset: 1.4999999 + yOffset: 30.124998 + xAdvance: 6.5625 + scale: 1 + - id: 8243 + x: 307 + y: 48 + width: 10.499999 + height: 15.749999 + xOffset: 1.4999999 + yOffset: 30.124998 + xAdvance: 12.9375 + scale: 1 + - id: 8249 + x: 281 + y: 21 + width: 8.874999 + height: 15.312499 + xOffset: 2.5624998 + yOffset: 18.687498 + xAdvance: 14.3125 + scale: 1 + - id: 8250 + x: 301 + y: 21 + width: 8.937499 + height: 15.249999 + xOffset: 2.8124998 + yOffset: 18.812498 + xAdvance: 14.3125 + scale: 1 + - id: 8258 + x: 51 + y: 430 + width: 36.749996 + height: 34.937496 + xOffset: 2.4999998 + yOffset: 34.124996 + xAdvance: 40.25 + scale: 1 + - id: 8260 + x: 303 + y: 145 + width: 14.374999 + height: 29.562498 + xOffset: -4.9374995 + yOffset: 29.562498 + xAdvance: 4.5625 + scale: 1 + - id: 8287 + x: 6 + y: 517 + width: 0 + height: 0 + xOffset: 0 + yOffset: 0 + xAdvance: 10.4375 + scale: 1 + - id: 8364 + x: 416 + y: 232 + width: 23.374998 + height: 23.124998 + xOffset: 2.0624998 + yOffset: 22.562498 + xAdvance: 27.5625 + scale: 1 + - id: 8482 + x: 99 + y: 404 + width: 31.062498 + height: 13.999999 + xOffset: 1.3124999 + yOffset: 30.187498 + xAdvance: 33.8125 + scale: 1 + - id: 9633 + x: 493 + y: 102 + width: 7.4999995 + height: 7.4999995 + xOffset: 3.3124998 + yOffset: 14.874999 + xAdvance: 14.1875 + scale: 1 + m_KerningTable: + kerningPairs: [] + m_FontFeatureTable: + m_GlyphPairAdjustmentRecords: [] + fallbackFontAssets: [] + m_FallbackFontAssetTable: [] + m_CreationSettings: + sourceFontFileName: + sourceFontFileGUID: 3a8e9284af26b4291a008041e2e9e241 + pointSizeSamplingMode: 0 + pointSize: 47 + padding: 5 + packingMode: 4 + atlasWidth: 512 + atlasHeight: 512 + characterSetSelectionMode: 1 + characterSequence: 32 - 126, 160 - 255, 8192 - 8303, 8364, 8482, 9633 + referencedFontAssetGUID: + referencedTextAssetGUID: + fontStyle: 0 + fontStyleModifier: 2 + renderMode: 6 + includeFontFeatures: 0 + m_FontWeightTable: + - regularTypeface: {fileID: 0} + italicTypeface: {fileID: 0} + - regularTypeface: {fileID: 0} + italicTypeface: {fileID: 0} + - regularTypeface: {fileID: 0} + italicTypeface: {fileID: 0} + - regularTypeface: {fileID: 0} + italicTypeface: {fileID: 0} + - regularTypeface: {fileID: 0} + italicTypeface: {fileID: 0} + - regularTypeface: {fileID: 0} + italicTypeface: {fileID: 0} + - regularTypeface: {fileID: 0} + italicTypeface: {fileID: 0} + - regularTypeface: {fileID: 0} + italicTypeface: {fileID: 0} + - regularTypeface: {fileID: 0} + italicTypeface: {fileID: 0} + - regularTypeface: {fileID: 0} + italicTypeface: {fileID: 0} + fontWeights: + - regularTypeface: {fileID: 0} + italicTypeface: {fileID: 0} + - regularTypeface: {fileID: 0} + italicTypeface: {fileID: 0} + - regularTypeface: {fileID: 0} + italicTypeface: {fileID: 0} + - regularTypeface: {fileID: 0} + italicTypeface: {fileID: 0} + - regularTypeface: {fileID: 0} + italicTypeface: {fileID: 0} + - regularTypeface: {fileID: 0} + italicTypeface: {fileID: 0} + - regularTypeface: {fileID: 0} + italicTypeface: {fileID: 0} + - regularTypeface: {fileID: 0} + italicTypeface: {fileID: 0} + - regularTypeface: {fileID: 0} + italicTypeface: {fileID: 0} + - regularTypeface: {fileID: 0} + italicTypeface: {fileID: 0} + normalStyle: 0 + normalSpacingOffset: 0 + boldStyle: 0.75 + boldSpacing: 7 + italicStyle: 35 + tabSize: 10 +--- !u!21 &21404399205216556 +Material: + serializedVersion: 6 + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_Name: CormorantUnicase-Regular SDF Material + m_Shader: {fileID: 4800000, guid: 68e6db2ebdc24f95958faec2be5558d6, type: 3} + m_ShaderKeywords: + m_LightmapFlags: 4 + m_EnableInstancingVariants: 0 + m_DoubleSidedGI: 0 + m_CustomRenderQueue: -1 + stringTagMap: {} + disabledShaderPasses: [] + m_SavedProperties: + serializedVersion: 3 + m_TexEnvs: + - _BumpMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _Cube: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _FaceTex: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _MainTex: + m_Texture: {fileID: 28735441583538754} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _OutlineTex: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + m_Floats: + - _Ambient: 0.5 + - _Bevel: 0.5 + - _BevelClamp: 0 + - _BevelOffset: 0 + - _BevelRoundness: 0 + - _BevelWidth: 0 + - _BumpFace: 0 + - _BumpOutline: 0 + - _ColorMask: 15 + - _Diffuse: 0.5 + - _FaceDilate: 0 + - _FaceUVSpeedX: 0 + - _FaceUVSpeedY: 0 + - _GlowInner: 0.05 + - _GlowOffset: 0 + - _GlowOuter: 0.05 + - _GlowPower: 0.75 + - _GradientScale: 6 + - _LightAngle: 3.1416 + - _MaskSoftnessX: 0 + - _MaskSoftnessY: 0 + - _OutlineSoftness: 0 + - _OutlineUVSpeedX: 0 + - _OutlineUVSpeedY: 0 + - _OutlineWidth: 0 + - _PerspectiveFilter: 0.875 + - _Reflectivity: 10 + - _ScaleRatioA: 0.8333333 + - _ScaleRatioB: 0.6770833 + - _ScaleRatioC: 0.6770833 + - _ScaleX: 1 + - _ScaleY: 1 + - _ShaderFlags: 0 + - _SpecularPower: 2 + - _Stencil: 0 + - _StencilComp: 8 + - _StencilOp: 0 + - _StencilReadMask: 255 + - _StencilWriteMask: 255 + - _TextureHeight: 512 + - _TextureWidth: 512 + - _UnderlayDilate: 0 + - _UnderlayOffsetX: 0 + - _UnderlayOffsetY: 0 + - _UnderlaySoftness: 0 + - _VertexOffsetX: 0 + - _VertexOffsetY: 0 + - _WeightBold: 0.75 + - _WeightNormal: 0 + m_Colors: + - _ClipRect: {r: -32767, g: -32767, b: 32767, a: 32767} + - _EnvMatrixRotation: {r: 0, g: 0, b: 0, a: 0} + - _FaceColor: {r: 1, g: 1, b: 1, a: 1} + - _GlowColor: {r: 0, g: 1, b: 0, a: 0.5} + - _MaskCoord: {r: 0, g: 0, b: 32767, a: 32767} + - _OutlineColor: {r: 0, g: 0, b: 0, a: 1} + - _ReflectFaceColor: {r: 0, g: 0, b: 0, a: 1} + - _ReflectOutlineColor: {r: 0, g: 0, b: 0, a: 1} + - _SpecularColor: {r: 1, g: 1, b: 1, a: 1} + - _UnderlayColor: {r: 0, g: 0, b: 0, a: 0.5} +--- !u!28 &28735441583538754 +Texture2D: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_Name: CormorantUnicase-Regular SDF Atlas + m_ImageContentsHash: + serializedVersion: 2 + Hash: 00000000000000000000000000000000 + m_ForcedFallbackFormat: 4 + m_DownscaleFallback: 0 + serializedVersion: 2 + m_Width: 512 + m_Height: 512 + m_CompleteImageSize: 262144 + m_TextureFormat: 1 + m_MipCount: 1 + m_IsReadable: 0 + m_StreamingMipmaps: 0 + m_StreamingMipmapsPriority: 0 + m_AlphaIsTransparency: 0 + m_ImageCount: 1 + m_TextureDimension: 2 + m_TextureSettings: + serializedVersion: 2 + m_FilterMode: 1 + m_Aniso: 1 + m_MipBias: 0 + m_WrapU: 0 + m_WrapV: 0 + m_WrapW: 0 + m_LightmapFormat: 0 + m_ColorSpace: 0 + image data: 262144 + _typelessdata: 000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000070f1415130e050000000000030c121514110a000000000000000000000000000000000000000000050d111212100f0e0e0f10111212110c0300010a101212121212121212121212121212121212121212110d05000000000000050d11121211111111111212110d05000001090e0f0d07000000080f121212111111111111121212100a0000000000030f181d1e1e1d1b1a1a1a1b1d1e1e1d191105000000000b151b1e1e1d1c1b1a1b1b1d1e1e1e1911060000000000050d111212111111111111111212120f0900000000050d111212111111111111111212120f090000000000000911161717161616161616171717130b12171717161616161616171716110c131717171616161616171717161007000000000000000000040e161b1c1a12080000000000081016191b1b19161008000000091016191b1b19150f0800000000000000000000000000000000000000000000050b0d0c090200000000070c0d0c0700000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000070c0c090300000000000000000000000000000000000000000000060b0e1113131313110e0a05000000000000000000000000000000000000000000000000000002090c0c09030000000000000000000000000000000000000000000000000000000000000000000000000000000d1a23292a2822170a000000071520272a2a251c10020000000000000000000000000000000000000b1721262727262523232525262727261f1508131e2527272727272727272727272727272727272727272621180d000000000b1721262727262626262627272621180c08141d2325221b1104101b23272727262626262626272727251d120400000313212b32333332302f2f2f30323333322d23150600000d1c283033333231302f3030323333332d2416070000000c182126272727262626262626272727241d1104000b172126272727262626262626272727241d11040000000e1b252b2c2c2b2b2b2b2b2b2c2c2c271d262c2c2c2b2b2b2b2b2b2c2c2b251f282c2c2c2b2b2b2b2b2c2c2c2b24190b000000000000000816212a30322e25190a000006121b242a2e30302f2a241c1207121c242b2f30302e2a231b1005000000000000000000000000000000000000020f192022221e150a0006121b2122211b120600000000000000000000000000000000050d11121211111111111212100b02000000000000000000000007131c21221e170c000000000000000000000000000000000000060e151b2023262829292826231f1a140d060000000000000000000000000000000000000000000009151d21221e160c000000000000000000000000000000000000000000000000000000000000000000000000000d1d2b373e3f3d3528190800051625323b3f3f392e20100000000000000000000000000000000000091a29343b3c3c3b3a38383a3a3b3c3c3a3226172330393c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3b352b1d0d0000091a29343b3c3c3b3b3b3b3b3c3c3b352a1b172530383a362e2213202e383c3c3c3b3b3b3b3b3b3c3c3c3930231301000f21313e474848474644444446474848474033241300081a2b39444848474645444546474848484134251301000a1b2a353b3c3c3c3b3b3b3b3b3b3c3c3c392f2212091a29343b3c3c3c3b3b3b3b3b3b3c3c3c392f221201000b1c2c384042424040404040404242413a2e3a41424240404040404042424038303b41424240404040404142423f362919080000000000061726333d454742372817060917242e383f434646443f382f24182530383f444646433e372d221607000000000000000000000000000000000111202c34373732281a0b15232e3637362f24160600000000000000000000000000000b172126272726262626262727251e14060000000000000000000817252f363732291d0e00000000000000000000000000000006101922292f34383b3d3e3e3d3b38342e2921191107000000000000000000000000000000000000000c1b2731373732291e12040000000000000000000000000000000000000000000000000000000000000000000005182a3b495354514637251300102234434f54544c3e2e1b080000000000000000000000000000000014273847505251504f4e4e4f4f5052524f44352332414d525252525252525252525252525252525252525250483b2b1906001427384750525250505050505252504739282535434c4f4b4031202d3e4b5152525050505050505252524d41301e0b00192c3e4f5b5e5e5c5b5a5a5a5b5c5d5e5c5142301c0810243749575e5e5c5b5a5a5a5b5c5d5e5d5243301d090015283947505252515050505050505252524c402f1d14273847505252515050505050505252524c40301e0b0015283a4a5557575656565656565757564c3d4c5557575656565656565757554a3f4e5657575656565656565757534737251200000000001023354450595c5546352312182735414b53585b5b58534c41352936424c53585b5b58524a40332516070000000000000000000000000000000c1e2f3e484c4c453828172333414a4c4a4234241200000000000000000000000000091a29343b3c3c3b3b3b3b3b3c3c3a312415040000000000000005152535424a4c463b2c1a08000000000000000000000000010d18232c353d43494d5052535352504d48433d352d241a0f04000000000000000000000000000000000a1b2a38444c4c463b2f2214050000000000000000000000000000000000000000000000000000000000000000000e21344759666a6455422e1b07182b3f52616a685c4b382410000000000000000000000000000000001c3044566467666564636364646667676253402c3c4f5f676767676767676767676767676767676767676764594836220e001c304456646767666666666667676457453130425360645e4f3d2a374a5c6667676666666666666767675f4e3b2712001e33485c6d737372706f6f6f707272736f5f4b37220d152a3f5367737372706f6f6f7072727370604c38230e001c314457646767666666666666666767675e4d39251c304456646767666666666666666767675e4d3a2611001b304457686c6c6b6b6b6b6b6b6c6c6a5b485a696c6c6b6b6b6b6b6b6c6c68584b5d6b6c6c6b6b6b6b6b6b6c6c6554412d180000000000172b3f52626d716452412f1e273645535e676d70706d675e53453847545f686d70706d665d514334251402000000000000000000000000000215283b4d5c6261564634212e41515e625f52422f1b0800000000000000000000000014263847505252505050505052524e4233210e0000000000000212233343535f615949372410000000000000000000000004111e2a353f4951585d62666768686765615d57504940372c21160900000000000000000000000000000215273848566061584d40322314040000000000000000000000000000000000000000000000000000000000000004172a3d51647780725e4a36230f2134485b6f807a67533f2c18040000000000000000000000000000001f344a5f737c7b7979787879797b7c7c705b463041576b7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7765513c2712001f344a5f737c7c7b7b7b7b7b7c7c75604b36394c5f71796d5946333c51667a7c7c7b7b7b7b7b7b7c7c7c6a55402b16001f344a5f74838687878686868787848378634e38230e162b40566b828386878686868788888379644f3a250f001f344a5f747c7c7b7b7b7b7b7b7b7c7c7c68533e281f344a5f737c7c7b7b7b7b7b7b7b7c7c7c69543f2a14001e33485e738383828282828282838376614c607683838282828282828383735e4f6479838282828282828283836f5a442f1a00000000001a2f445a6f8082705e4d3b2934455463707a838686837b706354475664717b838686827a6f61524332200d000000000000000000000000000b1e3245586b777463503c29374a5d7077705e4b37230f0000000000000000000000001b3043566467676666666666676760513e2a150100000000000f2030405161717567533e2914000000000000000000000514222f3c47525c646c72777b7c7d7d7c7976716c645c53493e33271a0c000000000000000000000000000a1e3144566673756a5e5042322212010000000000000000000000000000000000000000000000000000000000000c2033465a6d808d7966523e2b172a3d5164778b836f5b4734200c0000000000000000000000000000001f34495e71797d888f8f8f8f877d79786e5a453041566a78797b828f93939389848383838383848a9393937d68533e2913001f34495e72787c8691918f837c78725f4a354255687c8975624e3b3b506577787b829091918e827b78786954402b15001d314558686c707987969b8b7c736f6c6a5c4935210c14293d51626c6d707a8d9b9b9282756e6a5c4a36220d001f34495e7278797c859191918b807a787867523d281f34495e7178797c849191918c807b787868533f2914001d32465a6d7374798897978a7a75736f5e4a5d6f73757a8a9797877974736d5b4d617273767d8d9796847874736a57432e190000000000192e42576a7b8d7c6a59473640526372828e7d72707687827263536474838c7c727077898070604f3d2a170400000000000000000000000114283b4e617588806c584431405366798d7a66523f2b170300000000000000000000001f34495e737c7c7b7b7b7b7b7c7c6d58432e1803000000000c1d2d3e4e5e6f80806a543f2a1500000000000000000005142332404d59646f7880878c8e88848282828487807870665c5144382a1c0d0000000000000000000000001025394d617485887c6e605040301f0d00000000000000000000000000000000000000000000000000000000000215283c4f62768995826d5a4632203346596d80948b77634f3b28140000000000000000000000000000001b2f425360646b7683919f8b776a65635e503e2b3a4d5c63646671859a9a87766f6c6c6c6c6c6f768290947d68533e2913001b2f435461646875879582706764615443384b5e7185927d6a574335485963646672869b97836f6664635c4c3926110016293b4a55575c68778994806c5f5a57564c3e2c1a060e21344451575863778ca19785736459564d3e2d1a07001b2f435461636468768a9f93806c6663635b4b38241b2f42536063646875899e95806d6664635b4b38251000172b3e4f5b5e5f6a809497826d605e5c5141515c5e606d829794806a5f5e5b4f44545d5e6170869b907a665f5e594c3b2814000000000014273a4c5d6f8288766553414a5d6f82918370605b6a7d91826f5f718393826e5e5b6c828f7d6c5a46331f0b00000000000000000000000a1d3144576a7d918874604c39495c708396826e5a46331f0b00000000000000000000001f34495d71787c8591918f827b786c57422d18030000000a1a2a3b4b5c6c7c8d806a543f2a1500000000000000000213233242505e6b76828c958c837a736f6c6b6c6f737a8383796e6255483a2b1c0d000000000000000000000014293e53687c919a8d7d6e5e4d3c2b1907000000000000000000000000000000000000000000000000000000000b1e3145586b80929d8a75624e3a283b4f6276899d93806b5743301c080000000000000000000000000000122535434c4f586472829189735f504e4b4132212f3e4a4e4f576b829796826c5a57575757575b647182927d69543f2a1400132536444c4f576a7d8e7965534f4c44364154677a8e9a87735f4c383b474d4f586e8499947d69544f4e493e2e1c0a000c1d2c3840424a5a6b7d907c67524542413a2e200f00051626343e43576a7d929f8c79675646413b2f20100000132536444c4e4f5c71879c907a65514e4e493d2d1b122535434c4e4f5b70869b917b66514f4e493d2d1c09000e20313e474852677c9395806a54494740333f4749546a8094917c675248473e36424849586e84988d77634e48463c2e1d0b00000000000b1d2e405263758783705f4e5165798d907b67535065798f8c78687b8f8e79655152677c928a76624e392510000000000000000000000013273a4d6073879a907c6854405266798c9e8a76624e3b271300000000000000000000001a2e4153606468748694827066635d4e3c291400000007172838485969798a95806a543f2a1500000000000000000f20314151606e7c899493867a6f665f5a5756575a5f666f7a8880736658493a2b1b0a00000000000000000000152a3f546a80888e958d7c6b5a483724120000000000000000000000000000000000000000000000000000000014273a4e6174889b93887d6a56423144586b80929c8a87735f4b382410000000000000000000000000000007172631373b47546272838e79665341372f2314202d36383f546a809595806a5442424242424753637487806a55402b160008182631383b5065798b75604b3a3831374a5d7084979e8f7b6754412d343843586e8499937c67523c38352c20100000000e1b252b2d3c4e607387806a56422e2c271d10020000081626394c6073869a95826f5c4a382c271e11020000081826313838465b70879c9079644f3a38352c1f0f071726313738445a6f869b917b66503b38352c1f0f00000313212b323c52677c9395806a543f322d232c323e53687d94917b66503b322b252e3342576c83988d77624c37312a1e10000000000000001122344557697a8c7d6b59576c82958d77624d4d62778d94806e83978b75604b4f647990927c68533e291400000000000000000000091d304356697c909c8984705c495c6f829695827d6a56422e1b0700000000000000000000122435434c4f566a7d8d7864534e4a3f301f0d00000414253545566676889895806a543f2a1500000000000000091b2c3e4f5f6f7d8d9a918375685c534b45424042454b535d69768685766758493928170600000000000000000013273c50626f7379828a89776654412f1c090000000000000000000000000000000000000000000000000000091d3043566a7d919d8a7d86715d4a3a4d6174889b9380877a67533f2c1804000000000000000000000000000008141d222936445464748683705e4d3b2a1806101a212a3f546a809595806a543f2c2c2c2c364557697c826c57422d18000009151e23384e637889745f4a34232c405366798da0928084705d4936222f445a6f869a917b66513c27211a0f02000000000911161f3144576a7d86715d4a3723130b00000000081c2f4256697c909f8c7764523f2d1b130b010000000009151e2330465b70879c9079644f3a2520190e010008141d222f445a6f869b917b66503b2620190e01000000030f18273c52677c9395806a543f2a191119293e53687d94917b66503b2618131a2c42576c83988d77624c3722160d00000000000000000516283a4b5d6e808977665a6f859a8b75604b4c60768c988372889c88735e484e63788f96826b56402b16000000000000000000001326394c5f72869992808478645164778c9f8c7886725e4a36230f0000000000000000000007172631373b5065798a745f4a39362e21120200011122324353637385959b93806a543f2a15000000000000011326384a5c6d7d8e9d93837364574a4037302d2b2c3037404c5967778986766757463523110000000000000000000d203344525a5e656d778583715e4c39251200000000000000000000000000000000000000000000000000001226394c5f73869a9482758979655243566a7d909e8a7780836f5b4734200c00000000000000000000000000000001090d182636465768798a7c6a59473624130106152a3f546a809595806a543f2a171718283a4d6175846f5a442f1a000000020d22374c62778b745f4a342235495c6f83969c89778b7865513e2a30455a6f869b907b66503b26110600000000000000000214273b4e6175897966523f2b1804000000001125384b5f72869996826f5c48352310000000000000000002091b30465b70879c9079644f3a250f060000000001091a2f445a6f869b917b66503b2611060000000000000012273c52677c9395806a543f2a150013293e53687d94917b66503b261100172c42576c83988d77624c37220d00000000000000000007111c2e3f516274868371606f869b8b745f4a4c61768c998472889d88725c474f64788f97826b56402b16000000000000000000081b2f4255687c8f9c89757c806c5a6e829596836f837966523e2b17030000000000000000000008141d23384e637889735e4833211b100300000f1f2f4050617082929d8d82806a543f2a150000000000000a1d30435567798b9b988675645546392d231c1816171c232e3b49596a7c8f85746452412f1c0a0000000000000000041626353f454a515a6674857b6855412e1a06000000000000000000000000000000000000000000000000081b2e4155687c8f9e8b776d82826d5a4c5f72869995826e778b77634f3b2814000000000000000000000000000000000000081828394a5b6d7d8876655342301e0d00152a3f546a809595806a543f2a150d1a2332465b7084705b46301b000000000d22374c62778b745f4a342b3e5165788c9f93806f83826d5a463330465b70879c9079644f3a250f000000000000000000000b1e3246596d80826e5b4733200c000000071b2e4154677a8fa08c7966523f2c1906000000000000000000001b30465b70879c9079644f3a250f000000000000001a2f445a6f869b917b66503b2611000000000000000012273c52677c9395806a543f2a150013293e53687d94917b66503b261100172c42576c83988d77624c37220d00000000000000010e1a242c3236455668798c7d6c6e84988b75604b4e63788d968270869b88735e4850667a90947d69543f2a150000000000000000001125384b5e72859893806c74887464778a9e8d79677b826d5a46321e0b0000000000000000000000010e23384e637889735e48331e090000000c1c2d3d4d5e6e808f9f908082806a543f2a1500000000000013263a4d607285979f8c7a68574737281b100801000108111d2b3c4d5f71859382705e4c3927140000000000000000000817232b30363e4957677985715d4a36220e0000000000000000000000000000000000000000000000001124374a5e71859895826f657989756154687b8f9f8c78656f83806b5743301c080000000000000000000000000000000000000b1b2c3d4f60728483705f4e3c2b1908152a3f546a809595806a543f2a151c2b373e4256676f6756432e19000000000d22374c62778b75604b3634475a6e82959d8a7666798a76624f3b32475c72879c8f78634e39240f0000000000000000000003162a3d5164788a76634f3c28150100001024374a5d7084989683705d4936231000000000000000000000001b30465b70879c9079644f3a250f000000000000001a2f445a6f869b917b66503b2611000000000000000012273c52677c9395806a543f2a150013293e53687d94917b66503b261100172c42576c83988d77624c37220d00000000000003121f2c3740474b4c4c5c6e808a78697d928d77624d51667b90907c6c80948a74604b54697d938d7965503c27120000000000000000071b2e4154677a8e9c8976636d827c6d809496837060738875614e3a26130000000000000000000000000e23384e637889735e48331e09000009192a3a4a5b6b7c8d9d93827182806a543f2a150000000000061a2e4256697c8fa295826f5d4b3929190b000000000000000d1e2f4254687b8f8e7b695643301c090000000000000000000610171b222b394a5c6f827965513e2a160200000000000000000000000000000000000000000000061a2d4053677a8ea08c79655d71857d695d71859896836f5c677b87735f4b372410000000000000000000000000000000000000000f2032435566778a7d6b5a48362513152a3f546a809595806a543f2a15283a49535450555a5449392713000000000c21364b60768c76604b363d5064778a9e94806d5e71857d6a574432475c72889d8d78634e38230e00000000000000000000000e2135495c7083806b5744301d090006192d405366798da08d7a6653402d1a0700000000000000000000001b30465b70879c9079644f3a250f010101010101011a2f445a6f869b917b66503b2611000000000000000012273c52677c9395806a543f2a150013293e53687d94917b66503b261100172c42576c83988d77624c37220d0000000000001121303d49535b6062625e61738584727588907b6753596c8095867364778a8e7864505c6f839584715e4a36220d00000000000000001024374a5d70849793806c59657985768a9d8d7a66586c807d6956422e1a0600000000000000000000000e23384e637889735e48331e090006162737485868798a9a9686746b82806a543f2a1500000000000d21364a5d728699a08c796552402d1c0b0000000000000000001225384c6074889986725f4c3824100000000000000000000000000715293c4f627689826d5945321e0a000000000000000000000000000000000000000000000f2336495c7083979783705c55697d867166798da08d7966536073887a67533f2b180400000000000000000000000000000000000002142537485a6b7d89776654433120162a3f546a809595806a543f2a1c314558666a61514440382b1b0a000000000b21364b60768c76604b3646596d80939e8a776455697c8773604c38485e73899f8d77624c37220d000000000000000000000006192d4054677b8873604c39251212122336495c6f83969885705d4a3724110000000000000000000000001b30465b70879c9079644f3a2516161616161616161a2f445a6f869b917b66503b2611000000000000000012273c52677c9395806a543f2a150013293e53687d94917b66503b261100172c42576c83988d77624c37220d00000000000d1e2f3f4e5b666f757777736c67798b7d6d7a8a8370656876898a79685a6b7c8c806e646a798b88776654412e1b0700000000000000061a2d405366798d9d8a7663505d718680939784705d50647886715d4a36220e00000000000000000000000e23384e637889735e48331e0903142434455565768797998977676b82806a543f2a15000000000012273c5064798da19985705d4936231000000000000000000000091d3145596e83978f7b67533f2b170300000000000000000000000b1f3245586c80928975614d3a261200000000000000000000000000000000000000000005182b3e5265788c9f8d7a67534e617589796f83969885715d4a586b80836f5b4733200c0000000000000000000000000000000000000008192b3d4e6071838372604e3d2b2b2b3f546a809595806a543f2b2b344a5f74806c57422c251a0d00000000000b21364b60768c77624c3c4f6376899d95826e5b4d6073887b6854414a5f74899f8c76604b36210c0000000000000000000000001124384c5f72877c6854412d2727272b3e5265788c9f8f7a6754412e1b080000000000000000000000001b30465b70879c9079644f3a2b2b2b2b2b2b2b2b2b2b2f445a6f869b917b66503b2611000000000000000012273c52677c9395806a543f2a150013293e53687d94917b66503b261100172c42576c83988d77624c37220d0000000005182a3c4d5d6c798387807d8580736d7d8b796c798580797c8685796b5c4e5e6d7a8680797c8884776959493725120000000000000000102336495c6f839693806d5a47566a7d8e9c8e7a6754495d71857965513e2a1602000000000000000000000e23384e637889735e48331e091121314252627384949c8c7b6a5a6b82806a543f2a150000000000172c41556a8094a7927d6955412d1a060000000000000000000001162b4054697d9497836e5a46311c08000000000000000000000115283b4e6175889c917c6955412d1a0600000000000000000000000000000000000000000e2134475b6e82959885715e4a46596d8282788c9f8f7b6854415063778a76634f3b281400000000000000000000000000000000000000000d1f3042536576897d6c5a4940404040546a809595806a54404040424c6076826b56402b16080000000000000b20364b60748b77624c45586c80929f8c78655144576b8084705d494a5f748ba08b75604b36200b000000000000000000000000081c3043576a7d84705d493c3c3c3c3c485b6e82959985725f4b382512000000000000000000000000001b30465b70879c9079644f404040404040404040404040445a6f869b917b66503b2611000000000000000012273c52677c9395806a543f2a150013293e53687d94917b66503b261100172c42576c83988d77624c37220d000000000d213447596b7b8a86756a6975888373728485736872787b7b7871675b4d404f5d6972787b7b7770665a4b3c2b1a080000000000000005182b3f5265798c9e8a77635044586b7d929885715e4b4155697d826d5945321e0a000000000000000000000e23384e637889735e48331e0e1e2f3f4f607082919f8f7d6d5d566b82806a543f2a1500000000001b30455a6f8499a28d77634f3a261200000000000000000000000012273c51667b919e89745f4b36210c000000000000000000000b1e3144576a7d929b8885705d4935220e0000000000000000000000000000000000000003172a3d5063778a9e8f7b6855413e5165798982959986725f4c38485c6f837d6a57432f1c08000000000000000000000000000000000000000113253648596b7c8a78665656565656566a809595806a56565656575c687b826b56402b16010000000000000a1f344a5f748b77624c4e6175889c96836f5c493b4f63768a7965524b60768c9f8b745f4a341f0a0000000000000000000000000014273b4e62758a78655252525252525264778b9e8f7c6955422f1c08000000000000000000000000001b30465b70879c90796456565656565656565656565656565a6f869b917b66503b2611000000000000000012273c52677c9395806a543f2a150013293e53687d94917b66503b261100172c42576c83988d77624c37220d0000000015293d506476898f7b6857586c8291806d788a806e5d636666635d554a3d313f4b565e646666635d54493c2d1e0d00000000000000000e2135485b6f829594826d5a474d6174889b8f7b6854413a4e62768975614d3a2612000000000000000000000e23384e637889735e48331e1b2c3c4d5d6d7d8f9f928270604f566b82806a543f2a1500000000001e33485d72889c9d88735e4a35200c00000000000000000000000010253a4f64798fa28e78634e39240f0000000000000000000114273a4d6074889b927d837865513d2a16020000000000000000000000000000000000000c1f3346596c80939986725f4c3936495d71858d9e907c6956432f4054677b87725f4b372410000000000000000000000000000000000000000007192a3c4d5e708285726b6b6b6b6b6b6b809595806b6b6b6b6b6c707887806a55402b16000000000000000a1f344a5f748b78634e576a7d92a08d7966533f33465a6d82826d5a4c61768c9f89735e48331e09000000000000000000000000000b1f33465a6d82826d676767676767676d82949986735f4c39261300000000000000000000000000001b30465b70879c90796b6b6b6b6b6b6b6b6b6b6b6b6b6b6b6b6f869b917b66503b2611000000000000000012273c52677c9395806a543f2a150014293e53687d94917b66503b261100182d42576c83988d77624c37220d000000001a2f43586c80948a75604c53687d938a766c7d8c79685650504e4942382c212e39434a4f50504e4841372b1e0f000000000000000004172b3e5164778b9e8a77645143576a7d91988d7965513e33465a6e837c6955412e1a060000000000000000000e23384e637889735e48331e29394a5a6a7b8c9c958473635242566b82806a543f2a1500000000001f344a5f74899f9a86705b46311c070000000000000000000000000e23384e63788fa4917b66503b26110000000000000000000a1d3043566a7d909b88757c826d5945311d0a00000000000000000000000000000000000215283b4f6275899c907c695643303246596c80949b8873604d3a26384c6073887a67533f2b180400000000000000000000000000000000000000000c1e2f4152647688828282828282828282969682828282828283868c95806a543f2a15000000000000000a1f344a5f748a78634e6073879b9783705d4a362b3e5165788a76634f62778d9d88725d48331e080000000000000000000000000003172a3e516579897c7c7c7c7c7c7c7c7c8a9d907d695643301d0a00000000000000000000000000001b30465b70879c90828282828282828282828282828282828282869b917b66503b2611000000000000000012273c52677c9395806a543f2a1502152a3f546a8095917b66503b261102192f44586e84998d77624c37220d000000001e33485d71879b87715c4751667b91907b667283867462513f39352e261b101c262f363a3b3b39342d241a0d0000000000000000000d2134475a6d829495826e5a474c6073869a8f7c826d5945313f53677a85715d4935220e0000000000000000000e23384e637889735e4833263647576778899998887666564540566b82806a543f2a1500000000001f344a5f748ba098836d58432e19040000000000000000000000000f24394e63788fa4937c67523c27120000000000000000001326394c6073869a92806c748874604d39251200000000000000000000000000000000000a1e3144586b7d929b8873604d3a283b4e6175899c927d6a5744311d3044586b80836f5b4733200c00000000000000000000000000000000000000000112243547586a7b8c7d7d7d7d7d7d7d809595807d7d7d7d7d7d828791806a543f2a1500000000000000081e33485e7389786356697c90a18d7a6754402d2236495c7084806b5763788e9c88725c47321d0700000000000000000000000000000e2236495d7084838383838383838383979b8773604d3a27140000000000000000000000000000001b30465b70879c907d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d869b917b66503b2611000000000000000212273c52677c9395806a543f2c1f15192d42576c8297917b66503b291d141c31465b70869b8d77624c37220d000000001f344a5f74899b866f5a4550667b91947d68667789806e5d4b3a281a1209000a131b21252626242019110700000000000000000003172a3d5063768a9e8b7764514256697c909986758975614d39374b5f73887865513d2a160200000000000000000e23384e637889735e4833344454657586969b8b796959483840566b82806a543f2a1500000000001f344a5f748ba097826b56412c170200000000000000000000000010253b50647990a5937c67523c27120000000000000000091c2f4256697c909c8975626d827c6855412d19060000000000000000000000000000000013273a4d6074889b927d6a5744313044576a7d929e8975614e3b2815283c5063778a76634f3b28140000000000000000000000000000000000000000000617293a4c5d6f828573686868686a809595806a68686868686c7382806a543f2a1500000000000000031e33485e738979645f7286999885715e4a3724192d4054677a88736063788f9c87705b46301b060000000000000000000000000000061a2d4154687c86726c6c6c6c6c75899c917d6a5744311e0a0000000000000000000000000000001b30465b70879c9079686868686868686868686868686868686f869b917b66503b261100000000000009151e273c52677c9395806a584a3d31292733475c70869a8f796555473a2f2827374b5f74899e8a74604b36200b000000001f344a5f74899b866f5a4450667b91937d685a6b7d8c7a69574634221100000000070c1011110f0b05000000000000000000000811203346596c809395826e5b484b5f7286998f7c6e827c6855413044586c80826d5945311e130c020000000000000e23384e637889735e48334151627283939e8e7d6c5c4b3b2b40566b82806a543f2a1500000000001f34495e73899e97826b56402b160100000000000000000000000013283d52677c92a7917b66513c271200000000000000001225384c5f72869993806c59657985705c4935210d000000000000000000000000000000091c304356697d909c8975614e3b28394d6073879b938c7966523e2b172034485c6f837d6a57432f1c080000000000000000000000000000000000000000000c1d2f4052637586806e5c53546a809595806a5453535353576478826b56402b1601000000000000001e33485e73897964687b8fa28f7b6854412e1b1124384b5f72867c686479909b866f5a45301b060000000000000000000000000000001125394c6073877a675757586b7d929b8875614e3b2814010000000000000000000000000000001b30465b70879c90796453535353535353535353535353535a6f869b917b66503b2611000000000008182631383c52677c93978676685a4e443e3c415063768b9e8a837365584c433d3c4354667a8f9a86715c47321e09000000001d32475c71869b87705b4653687c938f7a65515f718387756352402f1d0b00000000000000000000000000000000000000000e1b252a3c4f6276899c8c7865514154677a8f998673667a85705c49363c5064788974614d3a2b2820140500000000000e23384e637889735e483e4f5f6f8090a190806f5f4e3e2d2b40566b82806a543f2a1500000000001c32475c70869b97826c57422c1702000000000000000000000003182c41566b8095a38f79644f3a251000000000000000081b2e4154687b8f9c897663505e72867864503d29150100000000000000000000000000001225394c5f72869993806c5946322f4256697c909d8a80826d5a46321e192c4054677b87725f4b372410000000000000000000000000000000000000000000001122344557687a8c796856546a809595806a543f3e3e3f4b6075826b56402b1602000000000000001d32475c728879647185989986725f4c382512081c2f43566a7d8570667a9099856f5a442f1a05000000000000000000000000000000091d3044576b80836f5c4e6174889b92806c5845321e0b000000000000000000000000000000001b30465b70879c9079644f3e3e3e3e3e3e3e3e3e3e3e3e445a6f869b917b66503b26110000000000132536444c4e53687c93958085786c61585352545e6e80939583788375695f5752525661718396927d6a56422e1905000000001a2e43576b809388735e49586c82968874604c53657689826f5e4c3a2917040000000000000000000000000000000000000b1c2c383f47596c809295826f5c494c5e718598907c695f73887865534340495d70867d6a5847403c32231301000000000e23384e637889735e484c5c6d7d8e9e94837262514130202b40566b82806a543f2a150000000000192e43586d829798836e58432e190400000000000000000000000a1e32465b6f84999f8a75604c37220d000000000000001124374a5e71859893806c5946566a7d806c5844311d0900000000000000000000000000071b2e4154687b8f9d8a7663503d29384b5f7286999480788a75624e3a261324384c6073887a67533f2b1804000000000000000000000000000000000000000000051628394b5d6e80867462546a809595806a543f2a2933475b6c7065523e2d2010000000000000001d32475c72887b677a8ea1907c6956422f1c090013273a4e61758879667b9199846e58432e19030000000000000000000000000000000114283b4f63768a7764576a7d919c8975624f3c291502000000000000000000000000000000001b30465b70879c9079644f3a292929292929292929292f445a6f869b917b66503b261100000000001b2f43546163656d8296958074837d746d686769707c8c9a8a786977867b726b67676a72808f978675614e3b2713000000000014283c506375878d7864566173878f7d6b584547596b7c8d7b6a584734200c00000000000000000000000000000000000015283a4a54576576899c8f7966525357687b8e9b887360586c82827060575551576c8288756459564f41301e0a000000000e23384e637889735e49596a7a8b9b9786756554443323162b40566b82806a543f2a150000000000152a3f53687c919b86705c47321d0800000000000000000000001225394d61758a9e9985705c47321e09000000000000071a2d4054677a8d9d8a7663503d4f63768874604c392511000000000000000000000000001024374a5d71859894826d5a47332d4154677a8e9e8b7770847d6956422e1b1c3044586b80836f5b4733200c000000000000000000000000000000000000000000000b1c2e3f51627386806e5d6a809595806a543f2a182b3e4e595b54514a3e2e1b080000000000001d32475c72887b7084979a8673604d39261300000b1e3245596c80826e7c9398836c57422d1803000000000000000000000000000000000c2033475a6e82806c6073879a93806c594633200d00000000000000000000000000000000001b30465b70879c9079644f3a2513131313131313131a2f445a6f869b917b66503b261100000000001f34495e72787a808c9293806a717d88827c7b7d848e94897b6c5a67748086807c7c808690928678685745321f0c00000000000d2033465869798882716b70808e8070604e3b3c4d5e70828875634f3a25100000000000000000000000000000000000001c314558676c7383949d8d786b61666c74869894806b63646b7c8f7d726c69626b71839383756d6b5f4d3a2511000000000e23384e637889735e56677788989a8978685847372616162b40566b82806a543f2a1500000000001025394d6175899c8a75604b37230f000000000000000000000b1c2f4155687c90a4927d6a55412d19040000000000001023364a5d70849794806d5a4734475b6f837c6854402d1905000000000000000000000006192d405366798d9f8b7764513e2a364a5d70849795826e687c86715d4a362215283c5063778a76634f3b28140000000000000000000000000000000000000000000000102133455668798b7a696a809595806a543f2a1520303d465865665c4b38230f0000000000001c31465b70877b798da0907d6a5643301d0a00000216293d5063778a767c9397826c57422c17020000000000000000000000000000000004172b3e5266798975697c909e8a7663503d2a170300000000000000000000000000000000001b30465b70879c9079644f3a250f000000000000001a2f445a6f869b917b66503b261100000000001f344a5f737c7c7b7b7c7c7866606b757d84888b898680766b5d4e56636e778086898b89867d75685a4a3928150200000000000416293a4b5b697682858285857c70625242312f41536476847765503b26100000000000000000000000000000000000001f344a5f7482868888888986806a70828788888885826c6e828788888682786c828588888889837d68533e2813000000000e23384e637889735e647485959d8d7c6b5b4a3a291908162b40566b82806a543f2a1500000000000a1e3246596d80938f7a66523e2b180600000000000000000817283a4c5e7185989d8a76624e3b261200000000000006192c405366798d9e8a7764503d2c4054687b84705c4834210d00000000000000000000000f2236495c6f839696826f5b48352c3f5266798d9f8c78656074887965523e2a172034485c6f837d6a57432f1c0800000000000000000000000000000000000000000000041627394a5c6d8087756a809595806a543f2a151222374c61767a66513c27120000000000001b30465b70877c83969b8874604d3a2714010000000d2134475b6e82807d9497826b56402b160100000000000000000000000000000000000f23364a5d71857d72869994826d5a4734210d0000000000000000000000000000000000001b30465b70879c9079644f3a250f000000000000001a2f445a6f869b917b66503b261100000000001c30445664676766666767655a4e5962696f737473716b64594d3f45515b646b70737473706a61574a3c2c1c0b000000000000000b1d2d3d4c59646d72747470695e5244342524354758696f67594835210d0000000000000000000000000000000000001e33485c6f7473737272737474666d74737272727374696a7473727273747168747372727273747464513c2712000000000e23384e6378897361718293a08f806e5e4d3d2c1c0b00162b40566b82806a543f2a15000000000003162a3d5063758895826d5a47352414060000000000020c1826354657697b8ea193806d5a46331f0b0000000000000f2236495c6f839694826d5a473424384c6074887764503c29150100000000000000000811182b3e5165788c9f8d7966523f2c34485b6f829696836f5c596c80826d5a46321f192c4054677b87725f4b372416120b000000000000000000000000000000000000000000091b2c3e4f617285826f809595806a543f2a1f1f283b5064797c67523c271200000000050e1b30465b70877c8c9f927d6a5744311e0b0000000005182b3f52667988809595806a543f2a15100700000000000000000000000000000000071b2e4155697c867b8f9e8b7764513e2b17040000000000000000000000000000000008111b30465b70879c9079644f3a25130d0300000008111a2f445a6f869b917b66503b26130d03000000142738475052525150525250493c464e555a5e5f5e5c5750473c2f333e4850565b5e5f5e5b564e45392c1e0e0000000000000000000f1f2e3b4751585d5f5f5b554c4134261717293b4b575a54493b2b1906000000000000000000000000000000000000192d3f515d5f5e5e5c5c5e5f5f585c5f5e5d5c5d5e5f5a5a5f5e5c5c5e5f5e595f5e5d5c5c5e5f5f574735220e000000000e23384e637889736f8090a09282716150402f1f0e0000162b40566b82806a543f2a150000000000000e213446586a7b8d8a77645342322419110d0b0d10161e293644536475879999887563503d2a1704000000000005182b3e5265788c9e8b7764513e2b1d3145596d82806c5844301c09000000000000000e1b252a35475a6d82959783705d49362c3e5164778b9f8d7966535164788975614e3c2c2a25384c6073887a675341302b261e110200000000000000000000000000000000000000000f2132445567788a7b809595806a543f3434343846586a807c67523c27120000000917222930455a6f8682959c8975614e3b28150200000000000f23364a5d71858095947d69543f2b2a24190c000000000000000000000000000000001226394d607488859895826e5b4835210e000000000000000000000000000000000e1b252a30465b70879c9079644f3a2b28201506000e1b252a2f445a6f869b917b66503b2b282015060000091a29343b3c3c3c3b3c3c3b362c333a4145484a4947433c342a1e212b343c4246484a4846423b32281c0e0000000000000000000001101d29343d44484a4a4741392f2416080c1d2d3a424440372b1d0d0000000000000000000000000000000000000010223240484a49484747484a4a45484a49484748494a46464a494747484a49464a49484747484a4a44392a1805000000081123384e637889737c8d9e95857464534332221101000b162b40566b82806a543f2a150c02000000000417293b4c5e6e808f8270605042362c26222122252a313b4754627182939c8c7a6a584633210e00000000000c142134485b6e829595826e5b48352116293d5165798873604c3824181107000000000c1d2c383f425264778a9e8e7a6754403b40495b6d82949885705d4a495d71867d6b5949413e393f44586c8083705e4e43403a2f2010000000000000000000000000000000000000000007192837495a6c7d88809595806a544a4a4a4a4c556475887b66513c27110000061727353e41465a6f86969f93806c5945321f0c000000000000071b2e4155687c8f9a947d685343403f372a1b090000000000000000000000000000000a1d3144586c80939f8c7865523f2b18050000000000000000000000000000000b1c2c383f40465b70879c9079644f42403c3224140c1d2c383f40445a6f869b917b665042403c3224140300000b17212627272726272726221a1f262c31333434322e2821180d0f1821282d31333433312d271f150b000000000000000000000000000c1721292f333434322d261d120600000f1d272e2f2c241a0d00000000000000000000000000000000000000000414222d33343433323233343431333434333233343432323434323233343432343433323233343431281b0c0000000e1b252a384e637889798a9b9988776756463525140402111e262c42576c82806b56402b28201405000000000c1d2f40506170808e7d6e605348403a3736373a3e454e59647282909b8d7d6d5d4c3a29160400000001111e282e3e5164778b9e8c7865513e2b181924364a5d71867b675441302c24190a00000016293b4a54575f6f82949d88735e56524e555967788b9e907c68544550566b808976665b56524a545659677c8e7c6c5f57554d3e2d1a0700000000000000000000000000000000000000112436465256607283869697836d625f5f5f5f60677383917b66503b261100001023354551565a6472869b9c8976634f3c291602000000000000001225394c6073879b96826c5d585653483827140000000000000000000000000000000215293c5063778b96836f5c4936230f0000000000000000000000000000000015283a4a5456575d72889c917c675957565042321f16293b4a5456575d71879c927c68595756504232200c000000050d11121211111212110d060b12181c1e1f1f1d19140d050000050d13191c1e1f1e1c19130c02000000000000000000000000000000050e151b1e1f1f1d18120a00000000000b14191a181108000000000000000000000000000000000000000000000511191e1f1f1e1d1d1e1f1f1c1e1f1f1e1d1e1f1f1d1d1f1f1d1d1e1f1f1d1f1f1e1d1d1e1f1f1c150a0000000c1d2c383f424e63788988989c8c7a6a5949382817070010202f3a40455a6e84836d5944403c32231301000000001122324251616f7c8a7d70655c544f4c4b4c4f5359616b768390988b7d6f5f4f3f2e1d0b000000000d1f2f3b43495b6e829496826f5c493a2d1d28364044566a7d84705d4c45403628180600001d314558676c717d8e9d9d89756d6b645f6a6d7686969d8b756b6352616b6e809485776f6b6559686b6e7383968b7c726c6a5c4a36220d00000000000000000000000000000000000000182c4054646b6b6c778ca09e8c7d7774747474767b8592917b66503b26110000162b3f53636b6e768290a092806c594633200d0000000000000000091d3044576a7d929c8a7a716d6b6656432f1a050000000000000000000000000000000d2034475b6f838d796653402d1906000000000000000000000000000000001c304558676b6c707b8d9d9683746e6c6b604e3b261d314558676b6c707b8d9d9784746e6c6b614f3b271200000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000016293b4a54575e69788f97a08f7d6d5d4c3c2b1b0a00071a2d3e4d555761748988746258564f41301e0a000000000414243342515f6b778383776f696462606264686d757d88949186796d5f51413121100000000000172a3d4d585b67788b9e917b675a574b3a283546545a5b65798d7b6a5e5a544635230f00001f344a5f74828589888888888883826f677c83898888888883826d586b808388888889848270607582838888888889868279644f3a250f000000000000000000000000000000000000001a2f445a6f828283858b8b8b8b8b8b8b8b8b8b8b8b8b8b8b7b66503b26110000192e43586e82838989898b857562503d2a170400000000000000000114283b4e6275868a8989868382725c47321d0700000000000000000000000000000005182b3f53667a84705d4a37231000000000000000000000000000000000001e33485e7382838689888888888884827d68533e291f344a5f748283868888888888888482806a543f2a1500000000000000000000000000000000040a1015191c1e1e1e1d1b1914100a0400000000000000000000000000000000000000000000000000000000050b1014161819191816130f0a0500000000000000000000000000000000000000000000000000000000000002080d111415161614120e0a040000000000000000000000000000000000000000000000000000000000001d314558676c717b88959f948270604f3f2e1e0d00000d22364a5c6a6c7280919180736d6b5f4d3a2511000000000006152433414e5a65707982847d79777677787c8289918f887d73685c4f413223130300000000001d32465a6b70768596999380736f6957442f3d51646f70758294897b726f64523e291400001e33485d6f747373727272737374746b6473747372727273737469566774737272727374746c5d6f74747372727273737472614d38230e00000000000000000000000000000000000000192e43586b7474747474747474747474747474747474747471614d38240f0000182d42566a7474737373747267574533200d000000000000000000000c1f33455767727473737374746d5a46311c07000000000000000000000000000000001023374a5e6f746754412d1a0700000000000000000000000000000000001d32475c6f74747373727272727373747466523d281e33485d6f74747373727272727373747466533e29140000000000000000000000000000060f181f252a2e3133333332302d29241e1710070000000000000000000000000000000000000000000000010b131a2025292c2d2e2e2d2b28241f19120b0200000000000000000000000000000000000000000000000000070f161d2226292b2b2b2a27231e181108000000000000000000000000000000000000000000000000000000001f344a5f7482868989898a87756453423121100000000f253a4f647982868888888887837d68533e2813000000000000061523303d48535d666e757b8286888b8b8b8886827a736a61564b3e312314050000000000001f344a5f74868685848484868686725c473240566b8286868484848686826b56402b160000192d40515d5f5f5e5c5c5c5e5e5f5f5a565f5f5e5d5c5c5e5f5f5a4c585f5f5d5c5c5e5f5f5b515d5f5f5e5c5c5c5e5e5f5e5444311e0a0000000000000000000000000000000000000014283b4d5a5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5d5344311e0a000013273a4c5a5f5f5e5e5e5f5e564939281604000000000000000000000316283949565e5f5e5e5e5f5f5c4f3e2b170300000000000000000000000000000000081b2e41515d5f5849372411000000000000000000000000000000000000192c3f515d5f5f5e5e5c5c5c5c5e5e5f5f58483623192d40515d5f5f5e5e5c5c5c5c5e5e5f5f584937230f000000000000000000000000040f19232b33393f43464848484746423e39332b231a110600000000000000000000000000000000000000000a141e272e34393e4043434342403d39342e261e150c02000000000000000000000000000000000000000000040f1a232b31373b3e4040403f3c38332c241b110500000000000000000000000000000000000000000000000000001e33485d6f74737373737474695847352413030000000e23384d617274737372727373747464513c27120000000000000005121f2b36404a525a61676c707374747473706c6660574e44392d201304000000000000001e32475a6c706f6f6e6e6e6f70706a58442f3e516470706f6e6e6e6f707065523e2914000011223240484a4a4847474748484a4a47444a4a48484747484a4a463c454a4a484747484a4a4740484a4a4847474748494a494336261502000000000000000000000000000000000000000c1e2f3d474a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a49413526140200000b1d2e3c464a4a4848484a4943382b1b0a0000000000000000000000000b1c2b3943494a4848484a4a483e31200e00000000000000000000000000000000000011233240484a453a2b1a0800000000000000000000000000000000000010223240484a4a48484747474748494a4a453a2b1911223240484a4a48484747474748494a4a453a2b1a0700000000000000000000000915212c363f474e53585b5d5e5e5c5b57534d473f372d23180d000000000000000000000000000000000005111d27313a42484e53565858585755524d48423a32281e1408000000000000000000000000000000000000000916222c363e464b505354565654514d4740372e22170a00000000000000000000000000000000000000000000000000192d40515d5f5e5e5e5e5f5f584b3a291706000000000a1e3144545e5f5e5e5c5c5e5e5f5f574735220e0000000000000000010d19232d363e464d52575b5e5f5f5f5e5b57524b443b32271b0f030000000000000000182b3d4e595b5a5a5858585a5b5b584c3b2b3546545b5b5a5858585a5b5b554735230f00000514222d33343433323232333334343230343433333232333434322a313434333232333434332d33343433323232333434342f251809000000000000000000000000000000000000000000111f2b3234343434343434343434343434343434343434342e24170800000000101e2a32343433333334342f261b0d00000000000000000000000000000d1b272f34343333333434332c2113030000000000000000000000000000000000000514222d333431281c0d000000000000000000000000000000000000000414222d3334343333323232323334343431281c0d0514222d3334343333323232323334343431281c0d00000000000000000000000c1a27333e49525b62686d7072737372706c67615b534a40352a1e110400000000000000000000000000000816222f3a444d565d63686b6c6e6e6c6a67625c554e453b31261a0d00000000000000000000000000000000000b1927333f49525a6065686a6b6b6966615b534a4034271a0b00000000000000000000000000000000000000000000000011223240484a494848484a4a453b2d1d0b00000000000215263643494a4948474748494a4a44392a18050000000000000000000006111a232b32383e4246484a4a4a4846423d3730281f150a000000000000000000000e20303d44464544434346525a5c5b54493a4250585c5c564c434344464642372918060000000511191e1f1f1e1d1d1d1e1e1f1f1e1c1f1f1e1e1d1d1e1f1f1d171d1f1f1e1d1d1e1f1f1e191e1f1f1e1d1d1d1e1f1f1f1b130800000000000000000000000000000000000000000000010e181e1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1a12070000000000000d171d1f1f1e1e1e1f1f1b13090000000000000000000000000000000009141b1f1f1e1e1e1f1f1e190f0300000000000000000000000000000000000000000511191e1f1c150b0000000000000000000000000000000000000000000511191e1f1f1e1e1d1d1d1d1e1f1f1f1c150b00000511191e1f1f1e1e1d1d1d1d1e1f1f1f1c150b00000000000000000000000d1c2a3844505c656e767c82868889898886827c766e665d53473c2f22140500000000000000000000000009182633404c57606971777c8083848483807b77716961584e43372b1e100200000000000000000000000000000a1a293745515c666e75797d8082807d7b766f675d524538291a0a00000000000000000000000000000000000000000000000514222d333434333333343431281d0f000000000000000918252f3434343332323334343431281b0c00000000000000000000000000070f171e24292d313334343433312d29231c150c02000000000000000000000002121f2a2f30302f314455646e727066584751616c7270695c4c3a2f30302d251a0b000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000c1c2b3a4855626e78828a918c847d79777676797d8583796f65594d4032231405000000000000000000000918273644515e69737d868c9189837d7c7b7b7d83857d756b6055493c2e201102000000000000000000000000071828384755626e7982898f908b8988888a8a837a6f6356473828170600000000000000000000000000000000000000000000000511191e1f1f1e1e1e1f1f1c150c00000000000000000008131b1f1f1f1e1d1d1e1f1f1f1c150a0000000000000000000000000000000003090f14191c1e1f1f1f1e1c19140f08010000000000000000000000000000010d161a1b1b25394d61738288847664505d6f8087867a6956422d1b1b191208000000000000081015161615131212131315161615110a0000000000040d14161615141312131315161616120a000000000000000000000000000000000b14191a160f050000000000000000000000000913181a181107000000000000000000000000081015161615131212131315161615110a0000000000040d14161615141312131315161616120a00000000000000080c0d0d0b0b0b0b0c0d0d0b06000000000000000000000000030e161c1c191208000000000000000000000000000000000000000001070c101314151514120f0b0701000000000000000000000000000000000000000000000000000000020d141716120a00000000000000091a2a3a49586673808b958f8379706964626061646970798482776b5e5042322314040000000000000000051626364554626f7b879093887d756e69676667696e757d887d72665a4c3e2f201100000000000000000000000113243646566573808c958d837b767372727479808a827365564635241200000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000012273c52677c919d94806a5563778c9c9986705b46301b0600000000000000000d1a242a2b2b2a29272728292a2b2b2b261c0f010000071521282b2b2a29282728292a2b2b2b261d100200000000000000000000000000101d282e2f2b221608000000000000000000000d1b262d2f2c24190b000000000000000000000d1a242a2b2b2a29272728292a2b2b2b261c0f010000071521282b2b2a29282728292a2b2b2b261d100200000007131c2122222121212121222220190f020000000000000000000413212b31312d25190a0000000000000000000000000000000000070f161c2125282a2a2a292724201b150f07000000000000000000000000000000000000000000000000091520282c2c261c0f000000000003152637485867768491998b7d70665c55504c4b4c4f555d667280897c6e605142322211000000000000000012233444546372808d998f82756a615a55525052545a616b768385776a5c4d3e2f1e0e000000000000000000000b1e3042536474849195877a6f67615e5c5d60656d778484746453412f1c09000000000000000000000000000000000000000000000000070f1415130e0500000000000000000000000000000000000000000001090e0f0d070000000000060b0e1113131313110e0a05000000000000000000000000000000000000000000000000000000000000000000000000000012273c52677c929f95806a5563788d9e9a86705b46301b06000000000000000b1c2b373f40403f3e3c3c3d3e3f404040392d1f0e00041525333d40403f3e3d3c3d3e3f4040403a2e200f0000000000000000000202000d1e2e3b43443e342617080000000000010201091b2b3942444037291a0b00000000000000000b1c2b373f40403f3e3c3c3d3e3f404040392d1f0e00041525333d40403f3e3d3c3d3e3f4040403a2e200f00000616253036373736363636363737352d20110100000000000000011222313e45474137281705000000000000000000000000000007111a232a30363a3d3f3f3f3e3c3935302a231b12080000000000000000000000000000000000000000010e1b27323c4140392d1e0d000000000e21324455667686949a8b7b6d5f5349413b3736373b414954616f7d8d7d6f60503f2f1d0c0000000000000c1e2f4152627282909e8e807064584e46403c3b3c40464e59657282897a6b5c4d3c2b1a0900000000000000000114273a4d5f718293978777695d534d4947484b515a66738382705e4c39261200000000000000000000000000000000000000000000000d1a23292a2822170a0000000000000000000000000000000000000007131d2325221a0f02050d141b1f23262829292826231f1a140d06000000000000000000000000000000000000000000000000000000000000000000000010253a4e6275848a867865515d708289887c6a56422d19040000000000000015283a49535656545352525253545556544b3d2c19060d213343505656545352525253545556554c3e2c1a060000000000080e14171715162a3c4c575951443525150400060d1216171612253849565a5447382919070000000000000015283a49535656545352525253545556544b3d2c19060d213343505656545352525253545556554c3e2c1a0600112434424b4c4c4b4b4b4b4b4c4c493e2f1e0c000000000000000f1f30404f5a5c544635220e000000000000000000000000020e19242d363e454a4f5254545453514e4a443e362e251b1005000000000000000000000000000000000003111f2c39444f57554b3c2a1704000005182b3e50617384949e8d7c6c5d4f42362d26222122262d3743516070828e7d6e5d4c3b291705000000000316283b4d5e708291a09080706153463b322b2726272b323b47556374858a7a6a5a493826140200000000000000081c3044576a7c8f9d8b7968594b4038343233363d48556576887b6855422e1a060000000000000000000000000000000000000000000d1d2b373e3f3d35281908000000000000000000000000000000000008172530383a362d20111921292f34383b3d3e3e3d3b38342e29211911070000000000000000000000000000000000000000000000000000000000000000000b1f33455766707472695a4953626f74736b5e4d3a271300000000000000001c314558676b6b6a68676767686a6a6b695b4935200c14283d50616b6b6a68676767686a6a6b695c4936210d00000009131b23282c2c2a233146596a6e62534332210f111a21272b2c2b252d4155676f655647362513010000000000001c314558676b6b6a68676767686a6a6b695b4935200c14283d50616b6b6a68676767686a6a6b695c4936210d001a2e41525f6262606060606062625c4d3b28140000000000000c1c2d3d4e5e6d7064513d2813000000000000000000000005121f2b36404a52595f6467686a6a6866635e58524a41382d22170a0000000000000000000000000000000312212f3d4a56616b685947331e0900000e2235485a6d8091a292806f5e4e3f31241a120d0b0d121a253342536476898c7b6a584634210f000000000c203345586a7c8e9f95837261514235291e17121112171e2a37465667798c8978675544311f0c000000000000000f23374b6073879a93806d5c4a3b2e241f1d1e222a3747596b7d85715d4935210c000000000000000000000000000000000000000005182a3b49535451463725130000000000000000000000000000000001142535434c4f4a3e2f222c353d43494d5052535352504d48433d352d241a0f04000000000000000000000000000000000000000000000000000000000000000316283948545c5f5d564b3c44525b5f5e594e40301e0b00000000000000001f344a5f748280807d7c7c7c7d80808278634e38230e162b40566b8082807d7c7c7c7d80808279644f3a240f00000d1a262f373d41423e36364b5f74827161503e2c19232d353c4042403931465b6f8474655442301d0a0000000000001f344a5f748280807d7c7c7c7d80808278634e38230e162b40566b8082807d7c7c7c7d80808279644f3a240f001f34495d707777767676767677776b57422d180300000000091a2a3a4b5b6b7c806a543f2a1500000000000000000000061523303d48535d666d73787c7d80807d7b77736d665d544a4034281b0d00000000000000000000000000011121303f4d5b67737d76604b36210b0003172a3e5164778a9d9a87746251403021130700000000000815243547596c8093887663513e2b180500000115283c4f6275889a9c8a776554433324170b03000000030c1928384a5c6f82958573614e3c29160200000000000014293e52667a8f9f8b7764503e2d1d110a06090e192a3b4e62768a78644f3a261100000000000000000000000000000000000000000e21344759666a6455422e1b070000000000000000000000000000000a1e31435360645c4d3e353f4850585d62666768686765615d57504940372c211609000000000000000000000000000000000000000000000000000000000000000a1b2a3741474a48433a2d343f464a49453c3022120100000000000000001e33485c6e7478808d939390837b777470604c37220d152a3f54677475788090939394897c7671604d38230e000a1b2b38424b52565752473a4f64788e806e5c493527354049505557544a3c4a5f74898371604d3a26110000000000001e33485c6e7478808d939390837b777470604c37220d152a3f54677475788090939394897c7671604d38230e001f344a5f737d82898c8c8c87807d6d58432e190300000006172737485868798a806a543f2a1500000000000000000006152433414e5a66707982888e8d87838080808387827971675d5245392b1d0e0000000000000000000000000e1f2f3f4e5d6b78867a6b5b48331f0a000a1e32465a6d8295a4917d6a5745332212030000000000000006182a3d5063778c93826e5b4734200d0000081c3044586b8092a593806c5a4836251506000000000000000a1b2d3f5266798d907d6b5945321e0b000000000000182d42576c82959a85705c4834210f00000000000c1f33465b70857d68543f2a150000000000000000000000000000000000000004172a3d51647780725e4a36230f0000000000000000000000000000000f24394d6071796b5c4d47525c646c72777a7c7d7d7c7976716c645c53493e33271a0c000000000000000000000000000000000000000000000000000000000000000c1a252d3234332f271c222c32343430291f1204000000000000000000192d3f505c5f636e7d8e96837167625f5d5243301d091125384a585f6063768ca19b8a796a615e5343311d090014273949555f666b6c65564553687d928b7864503b3545535d646a6c685a494f64788e8f7c6954402b15000000000000192d3f505c5f636e7d8e96837167625f5d5243301d091125384a585f6063768ca19b8a796a615e5343311d09001c30445665696d77899684746b6861513e2a1601000003142434455566768795806a543f2a1500000000000000000314243342515f6c77838d968b8279726d6b6a6b6d727982857a6f6356493b2c1d0e000000000000000000000a1b2c3d4d5d6c7b8a7c6c5c4d3d2b1804001024394d61758a9d9c8874614d3a2816040000000000000000000d2134485c71869a8a7763503c281400000e23374b5f73889b9e8a7663503d2b19080000000000000000001023364a5e72879b8975614e3a26120000000000001b30455a6f869a95806b56412d1905000000000003182d41566b82826c57422d18030000000000000000000000000000000000000c2033465a6d808d7966523e2b1703000000000000000000000000000011263b50667b8a7a6b5c59646f7780878c8e88848282828487807870665c5144382a1c0d000000000000000000000000000000000000000000000000000000000000000812191e1f1e1b140a10181d1f1f1b160d01000000000000000000001022323f484a505f7082937c67534c4a494134251301081b2c3b454a53677b8fa2907d6c5b4d494235261401001a2f435767727a8082746352586d82978e7b67523c3f53637078808377675653687c9291806b56402b16140e050000001022323f484a505f7082937c67534c4a494134251301081b2c3b454a53677b8fa2907d6c5b4d494235261401001427394851545a6c808f7a6757534f4334220f00000011213242526373849495806a543f2a1500000000000000001021324251616f7d8a959285796e655e59565456585e656e7986827467594a3b2c1c0b0000000000000000031627394a5b6b7b8b806f5e4e3e2f1f0e0000152a3e53687c90a595826d5945311e0b0000000000000000000005192e42576b829693806b57432e1a050014283d52667a8fa397836e5b4734200e00000000000000000000071b2f43586d8297917d6955412d190400000000001d32475c72889c917c67523d28130000000000000014293e53687d846e59442f1a0500000000000000000000000000000000000215283c4f62768995826d5a46321f0b00000000000000000000000000000e23384c5e6d7c8a7a6a6a76828c948c837a736f6c6b6c6f737a8383796e6255483a2b1c0d000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000414222d3335415264778a7d69544035342e24160700000e1d2936495c6f8397988673604e3d342f25170800001d32475c72858e959282705f5d71879382705e4c3843586e828d9496857363586d8297857362503d2b2b2921160800000414222d3335415264778a7d69544035342e24160700000e1d2936495c6f8397988673604e3d342f25170800000a1b2a363d3f51667a8b75604b3e3b3225160500000e1e2f3f50607082919f95806a543f2a1500000000000000091b2d3e4f6070808e9b908273675b514944403f40444a515c687585867768594a3a291806000000000000000e2133455668798a8774635140302011010000192e43586c8296a48f7a66523e291602000000000000000000000014293e53687c929a86715d48341f0a00182d42576b8095a5917c68533f2b18040000000000000000000000152a3f54687d939985705c47321e0900000000001d32475c72889d8f79644f3a25100000000000000012273c52677c866f5a442f1a0500000000000000000000000000000000000b1e3145586b80929d8a75624e3a27130000000000000000000000000000081c2f404f5e6d7c89797b89949286796f665f5a5756575a5f666f7a8880736658493a2b1b0a00000000000000070f14151514131313131313151514110b0100000000000009101415151515151514110a0000000000000000000000000000000410191e2335475a6d82836f5b4733201a120600000005182b3f5265798c9f8f7b685643311f1b12070000001b2f445768727d88938e7c6c61768b86756352413e405364707a869092826f5e71868a796756453e40403d3426160500000410191e2335475a6d82836f5b4733201a120600000005182b3f5265798c9f8f7b685643311f1b1207000000000c192228394e637889735e48332620150700000b1c2c3c4d5d6e7d8f9f9083806a543f2a15000000000000011427394b5c6d7d8f9e9282726356493e362f2b2a2b2f363f4a58667688877768584736241200000000000005182b3e506274868f7c695745342212020000001c31465b70869b9f8b75604c37230f00000000000000000000000011263b50657990a08c76614d38230e001c31465b70859aa08c76624d39241000000000000000000000000011263b50667b909f8a75604c37220d00000000001d32475c72889d8f78634e38230e0000000000000012273c52677c866f5a442f1a05000000000000000000000000000000000014273a4e6174889b92867d6a56422e1b070000000000000000000000000000112231404f5e6d7c898c99918274685c534b45424042454b535d69768685766758493928170600000000000d1a23292a2a292929292929292a2a2a261e120400000006121d25292a2a2a2a2a2a2a251c10020000000000000000000000000000000509182b3e5164788a76634f3b281501000000000e2134485b6e82959986725f4c39261406000000000015283a4a56606b75808b8a78677a8c7a68574f51535556535e68737d898e7c6b768b7d6d5b4f50535556514434220f000000000509182b3e5164788a76634f3b281501000000000e2134485b6e82959986725f4c3926140600000000000000060e23384e637889735e48331e0c030000081929394a5a6b7b8c9c938382806a543f2a150000000000000b1e314356687a8c9c978674635445382c221b1615161b222d3a48596a7b8e86756453412f1d0a00000000000e2134475a6d809286725f4c3a281605000000001e33485e73899e9c87715c47331e090000000000000000000000000f24394e63788fa48f7965503b2610001e33485d72889d9c88725d49341f0a0000000000000000000000000f243a4f64798fa38f79644f3a251000000000001d32475c72889d8f78634e38230e0000000000000012273c52677c866f5a442f1a0500000000000000000000000000000000091d3043566a7d919d897c86725e4a36230f0000000000000000000000000000041326384a5b6c7c8d9e93827264564a4037302d2b2c3037404c596777898676675746352311000000000b1c2b373e3f3f3f3e3e3e3e3e3e3f3f3f3a302211000008172430393f3f3f3f3f3f3f3f392e200f00000000000000000000000000000000000e2235495c7084806b5744301d0900000004172a3e5164778b9e907c6956432f1c0a0000000000000b1c2c38434e59636e7883867480806e60626466686a6b5f4d56616b7682897879837160626466686a6b62513e2a150000000000000e2235495c7084806b5744301d0900000004172a3e5164778b9e907c6956432f1c0a0000000000000000000e23384e637889735e48331e0900000616263747576878899996867582806a543f2a1500000000000013273a4d607386989e8c7967564636271a0f0600000006101c2a3b4c5e70849482705f4c3a27140100000003172b3e5164778a917d695643301d0b00000000001f344a5f748ba099846e59442f1a050000000000000000000000000e23384e63788fa4917c67523c2712001f344a5f748a9f99846f5a45301b060000000000000000000000000e23384e63788fa4917b66513c271200000000001d32475c72889d8f78634e38230e0000000000000012273c52677c866f5a442f1a05000000000000000000000000000000001226394c5f73869a948275897966523e2b1703000000000000000000000000000a1d30435567798a9b998a78695a4b3c2d231c1816171c232e3b49596a7c8f85746452412f1c0a00000015283a49535454535353535353535454544d402f1c0908172634414c53545454545454544c3e2d1a070000000000000000000000000000000006192d4054677b8873604c3925110000000d2033475a6d82949a8773604d3a261300000000000000000e1b29353d46515c66707b807d72737577797b7d807c6752444e59646e79837a76727477787b7c80826c57422c1700000000000006192d4054677b8873604c3925110000000d2033475a6d82949a8773604d3a2613000000000000000000000e23384e637889735e48331e0900031323344455657586979989786b82806a543f2a150000000000071b2f43566a7d90a395826e5c4a3928180a000000000000000c1d2f4154677a8f8f7c695744301d090000000b1f33465a6d82948a75614e3a27130000000000001f344a5f748ba097836c57422d18030000000000000000000000000f253a4f64798fa4937c67523c2712001f344a5f748ba098836c57422d18030000000000000000000000000f243a4f64788fa4937c67523c271200000000001d32475c72889d8f78634e38230e0000000000000012273c52677c866f5a442f1a05000000000000000000000000000000081b2e4155687c8f9f8b776d82826d5a46321f0b0000000000000000000000000013263a4d607285979f8d7d8878695a4b3c2d1d0e000108111d2b3c4d5f71859382705e4c3927140000001c314558666a6a686868686868686a6a695e4c38240f17263544525f686a6a6a6a6a6a685c4a36220d00000000000000000000000000000000001124384c5f73877c6854412d1a06000316293d5063768a9d917d6a5744301d0a00000000000000011427384751585f666d737a777386898b8d8f91938875624f575d646b72787b6f85888b8c8f90938c7967533f2a15000000000000001124384c5f73877c6854412d1a06000316293d5063768a9d917d6a5744301d0a000000000000000000000e23384e637889735e48331e09001021314152627283949c8c7b6b6b82806a543f2a1500000000000d22364a5e7286999f8c7864513f2d1b0a0000000000000000001224384b5f7388998673604c39251100000012263a4e62768a98836f5b46321e0b0000000000001f344a5f748a9f97826b56402b160100000000000000000000000012273c51667b90a5927c67523c2712001f344a5f748ba097826b56402c160100000000000000000000000011263b50657a90a5937c67523c271200000000001d32475c72889d8f78634e38230e0000000000000012273c52677c866f5a442f1a050000000000000000000000000000001124374a5e71859896836f65798a75624e3a2713000000000000000000000000061a2e4256697c90a295826f7d8878695a4b3b2c1d0e0000000d1e2f4254687b8f8e7b695643301c0900001f344a5f7480807d7d7d7d7d7d7d80807b67523c27152535445362707c80808080808079644f3a250f0000000000000000000000000000000000091c3043576a7d84705d4936220e0a0c1f3246596c80939b8874614e3a27140100000000000000081c304456646c737a828882738271777d858b918d7c6a59616b7278808685768472767c83898f8f806e5d4a37241000000000000000091c3043576a7d84705d4936220e0a0c1f3246596c80939b8874614e3a271401000000000000000000000e23384e637889735e48331e090d1e2e3f4f5f7080919f8f7d6e5d6b82806a543f2a15000000000013273c5065798da29884705c4935221000000000000000000000081c3045596d8397907c6854402b17030004192d4155697d92927d6954402b17030000000000001e33485d72889d97826b56402b1601000000000000000000000000152a3f54697d93a5907a66503b2611001e33485e73889d97826b56402b160100000000000000000000000014293e53687c93a6917b66503b261100000000001d32475c72889d8f78634e38230e0000000000000012273c52677c866f5a442f1a050000000000000000000000000000061a2d4053677a8ea08d79665d71857d6a56422e1b0700000000000000000000000d21364a5d728699a08c78656f7d887869594a3b2c1d0e0000001225384c6074889986725f4c38241000001f34495d7076777a84939494887c77767564503b26223243526271828f95958d837b7773624e39240f00000000000000000000000000000000000014273b4e62768a7865513e2a1f1f1f283b4e6175899c927d6b5844311e0b00000000000000000d22374b607382888e8f8071738976636970767c7c6e5e5b6f80868d9183746e847a66686e757b7d7061513f2d1b08000000000000000014273b4e62768a7865513e2a1f1f1f283b4e6175899c927d6b5844311e0b00000000000000000000000e23384e637889735e48331e0b1b2b3c4c5d6d7d8e9e92827060566b82806a543f2a150000000000172c41566a8094a6927d6955402d19060000000000000000000001162b3f54697d9497836f5b46311d08000a1e33475c7085998d78644f3a2611000000000000001b30455a6f849998836c57422d18030000000000000000000000061b2f43586d8297a28d77634d39240f001c31465b70869a97836c57422c1702000000000000000000000004192d42576c8296a28e78634e39240f00000000001d32475c72889d8f78634e38230e0000000000000012273c52677c866f5a442f1a0500000000000000000000000000000f2336495c7083979884705d55697c86725e4a36230f000000000000000000000012273c5064798da19985705d606f7d877768594a3b2c1d0e0000091d3145596e83978f7b67533f2b1703001a2e41525e606266758a9f927d6a636060574734212f4050617082909f94877a7067625f5545331f0b0000000000000000000000000000000000000c1f33465a6d82826d5a46343434343444576b7d929c8975624e3b28150200000000000000000f253a4f64798f9b8d7d706173897d6b575b6268685e505f748a9a8f8272646e84836f5c5a6067696152433322100000000000000000000c1f33465a6d82826d5a46343434343444576b7d929c8975624e3b28150200000000000000000000000e23384e637889735e48331e182839495a6a7a8b9c9585736353566b82806a543f2a1500000000001b30455a6f8499a18c77634e3a261100000000000000000000000012273c51667b919e8974604b36210c000f24384d61768b9e89745f4a35210c00000000000000182c41566a809499846f5a45301b0600000000000000000000000e2135495d72879b9c88735e4a35200b00192d42576c829599846e59442f1a0500000000000000000000000c1f33485c70869a9e89745f4b36210c00000000001d32475c72889d8f78634e38230e0000000000000012273c52677c866f5a442f1a050000000000000000000000000005182b3e5265788c9f8f7b67544d6175897966523e2b170300000000000000000000172c41556a8094a7927d695551606f7d877768594a3b2c1c0d0001162b4054697d9497836e5a46311c0800122434424a4b4d5c70879c907965504b4b4539292c3c4d5e6e808f9f938476695d534d4b443727160300000000000000000000000000000000000003172b3e5165798975624e4a4a4a4a4a4d6074889b93806c5946321f0c0000000000000000000f253a4f6479908b7c6e605c72888873604d4e53534c4b60768c8e807163586e848c7764514c52544e433425150400000000000000000003172b3e5165798975624e4a4a4a4a4a4d6074889b93806c5946321f0c0000000000000000000000000e23384e637889735e48331e2636465767778899988877665645566b82806a543f2a1500000000001e33485d72889c9d88735e4934200b0000000000000000000000000f253a4f64798fa38e78644f3a240f0013283d51667b909b86705b46311c070000000000000013273c5065798d9c88725d4934200b0000000000000000000005172a3d5164788da196826d5944301b070014293d52667a8f9c87715d48331e0a000000000000000000000214283b4f63778ba097836f5a46311c0800000000001d32475c72889d8f78634e38230e0000000000000012273c52677c866f5a442f1a05000000000000000000000000000e2134475b6e82959986725f4c46596d82826d5a46321f0b000000000000000000001b30455a6f8499a28d78634f4251606f7d877768594a3a2b1c0d0012273c51667b919e89745f4b36210c000616242f3536465b70869b9079644f3a3631282738495a6b7c8d9d93847466584b4038353027190a00000000000000000000000000000000000000000f2236495d70857d6a5f5f5f5f5f5f5f6a7d909d8a7663503d2916030000000000000000000f253a4f6479897a6c5e505c7288907c6955423f3f394a5f748a7d706153586d8394826d59463e3f3b3225160700000000000000000000000f2236495d70857d6a5f5f5f5f5f5f5f6a7d909d8a7663503d2916030000000000000000000000000e23384e637889735e483323334354647485969b8b7a69594840566b82806a543f2a1500000000001f344a5f74899f9a866f5a45301b070000000000000000000000000e23384e63788fa4917b66513c271100172c41556a809597836d58432e1904000000000000000d21364a5d7185988c77634e3a27130000000000000000000111223447596d8094a28e7a66523e2a1601000f23374b5f73879b8b76614d392511000000000000000000000e1f3144576a7d92a3907c6854402b170300000000001d32475c72889d8f78634e38230e0000000000000012273c52677c866f5a442f1a0500000000000000000000000003172a3d5063778a9e907c6956433e5165798a75624e3a2713000000000000000000001e33485d72889c9d88735e4a354251606f7d87776858493a2b1c0d10253a4f64798fa28e78634e39240f000006121b202f445a6f869b9079644f3a251d233445566778899a9484746556483a2e24201c1409000000000000000000000000000000000000000000061a2d4154687c86747474747474747474869994806d5a4633200d000000000000000000000d22374b6074796b5d4e475c72889885715e4a372935475c707c6e605143576c83988975624e3b2a261f1407000000000000000000000000061a2d4154687c86747474747474747474869994806d5a4633200d000000000000000000000000000e23384e637889735e4833304151617182939e8e7d6d5c4c3b40566b82806a543f2a1500000000001f344a5f748ba098836d58432e18030000000000000000000000000f24394e63788fa4937c67523c2712001a2f44596e839895806a55402b160100000000000000061a2e4155687a8d927d6a5643301e0d0000000000000003101f2f40516376899c9885725e4b37230f0000081c3044576a7d90907c6854402d1b0900000000000000000c1b2b3d4e6173879a9b8874604d3925110000000000001d32475c72889d8f78634e38230e0000000000000012273c52677c866f5a442f1a050000000000000000000000000c1f3346596c80939b8874604d3a364a5d71857d6a56422e1b070000000000000000001f344a5f74899f9a86705b463132425160708086766758493a2b1c0e23384e63788fa4917b66503b261100000000071a2f445a6f869b9079644f3a251e2f405263748596978776665647382a1d110b080100000000000000000000000000000000000000000000001225394c6073888b8b8b8b8b8b8b8b8b909e8a7764503d2a170400000000000000000000081d31445765675b4d3f475c7287938d7a66533f2b3e51646f685e504242576c8391927d6a5744301c0b0200000000000000000000000000001225394c6073888b8b8b8b8b8b8b8b8b909e8a7764503d2a1704000000000000000000000000000e23384e637889735e48333e4e5f6f8090a09180705f4f3e2e40566b82806a543f2a1500000000001f344a5f748ba097826b56412c170200000000000000000000000010263b50657990a5937c67523c2712001c31465b70879b937d68533e29140000000000000000001226394b5e70829386725f4d3b2b1c0f07030102060c15212e3d4d5d6f82939f8d7a6855422f1b0800000114283b4e6073859684705d4a3827180b020000000007111c2a39495a6c7d91a2907d6a5744311d090000000000001d32475c72889d8f78634e38230e0000000000000012273c52677c866f5a442f1a0500000000000000000000000215283b4f6275899c927d6b5744312e4255697d86725e4a36230f0000000000000000001f344a5f748ba098836d58432e2332425161708086766758493a2b1b24394e63788fa4937c67523c271200000000001a2f445a6f869b9079644f3a252a3b4c5e6f82929a8a7868584838291a0c000000000000000000000000000000000000000000000000000000091d3044576b808374747474747474859995826e5a4734210e0000000000000000000000021528394851524b3d2f435768768086836f5a442f42576c82776757453f5365737d8487735f4a341f0a000000000000000000000000000000091d3044576b808374747474747474859995826e5a4734210e00000000000000000000000000000e23384e637889735e483b4b5c6c7c8d9e948372625241312b40566b82806a543f2a1500000000001f34495e73899e97826b56402b160100000000000000000000000014283d52677c92a6917b66513c2712001e33485e73889d927c67523c2712000000000000000000091c2e41526475868f7c6a59493a2d221b1816171a2028323e4c5b6a7b8d9e92826f5d4b392613000000000b1e3143556778898d7967564536281d16131112151b232e3a485767788a9b958572604e3b2815010000000000081d32475c72889d8f78634e38230e0300000000000512273c52677c866f5a442f1a0500000000000000000000000a1e3144586b7d929c8975624e3b28263a4e6175897966523e2b170300000000000000001f344a5f748ba097826b56412c17243342516170808676675849392a263b50657990a5937c67523c271200000000001a2f445a6f869b9079644f3a253647596a7c8d9e8d7c6b5b4a3a2a1a0b000000000000000000000000000000000000000000000000000000000115283b4f63768a77645f5f5f677a8f9f8c7864513e2b18050000000000000000000000000a1b2a363d3d382d273a4a59636b70736a574c3f475b7086867463503d475661696f726e5c48331e090000000000000000000000000000000115283b4f63768a77645f5f5f677a8f9f8c7864513e2b180500000000000000000000000000000e23384e637889735e48485969798a9b97877565554434232b40566b82806a543f2a1500000000001c31475c70869b97826c57422c1702000000000000000000000003182d41566b8095a38f79644f3a2510001f344a5f74899f917b66503b2611000000000000000000001123354657677787887766584a3f36302d2b2c2f343b444f5c6a7989999485746352402e1c090000000002142638495a6b7b8b85736353463a312b2826272a2f36404b5866758596988877665543311e0b0000000007131c2132475c72889d8f78634e38231e160b0000010f1920273c52677c866f5a453020190f0100000000000000000013273a4d6074889b94806d5946331f1e3246596d82826d5a46321f0b00000000000000001f34495e73899e97826b56402b1615243342516170808676675748392a3d52677c92a6917b66513c271200000000001a2f445a6f869b9079644f3a3042536576889991806f5e4d3d2c1c0c0000000000000000000000000000000000000000000000000000000000000c2033475a6e82806c594a5d70859896836f5c4935220f00000000000000000000000000000c19222828241b1c2c3b46515b63696c695d4c4b60758a92806c584338444e555a5d5b503f2d1905000000000000000000000000000000000c2033475a6e82806c594a5d70859896836f5c4935220f0000000000000000000000000000000e23384e637889735e4856667688989a8a796858473726162b40566b82806a543f2a150000000000192e43586c829698846e58442f190400000000000000000000000a1e32475b7085999f8a75604b37220d001f344a5f748ba0917b66503b2611000000000000000000000617283949596877858575685c524a4542404244494f57616d7a8997938576665645342311000000000000091a2c3d4d5d6c7b89827164574d45403d3b3c3f434a535d697685949789796a5a4937261401000000061625303637475c72889d8f78634e383732281b0b00101f2c34374054697d87715d4837342c1f100000000000000000091c304356697d909e8b7764503d2a17162a3e5165798a75624e3a271300000000000000001c32475c70869b97826c57422c1706152433425161708085756657483941566b8095a38f79644f3a251000000000001a2f445a6f869b9079644f3a3c4e5f708394968573625140301f0e0000000000000000000000000000000000000000000000000000000000000004182b3f52667989756153667a8da08d7966533f2c1906000000000000000000000000000000060e1313100812273b4f616e777d827a6a595064798e95836f5a442f313a414648463e322210000000000000000000000000000000000004182b3f52667989756153667a8da08d7966533f2c19060000000000000000000000000000000e23384e637889735e53637485959d8d7c6b5b4a3a2a19162b40566b82806a543f2a150000000000152a3e53677c909b86705c47321d09000000000000000000000013263a4d61758a9f9985705b47321d09001f344a5f748ba0917b66503b261100000000000000000000000b1b2c3b4a5967748286796e655e5a575657595d636a74808b988f827566584838281705000000000000000e1f2f3f4e5d6b788582756a60595452505254585e666f7a87949387796a5b4c3c2b1a0800000000112434424b4c4e5e73899e8f79644f4d4c463929170a1d2e3d484c505d6f848b7663524c483d2e1d0b000000000000001225394c5f72869995826e5b4734210e0e22364a5d71857d6a56422e1b0700000000000000192e43586d829798836e58432e19040615243342516170808575665748465b7085999f8a75604b37220d00000000001a2f445a6f869b9079644f3a48596b7d8f9b8a786756443323120100000000000000000000000000000000000000000000000000000000000000000f23364a5d71857d695c7083969783705d4936231000000000000000000000000000000000000000000000152a3f546a808b929788766554697d9389776654402c2b2a2c3133322b2113040000000000000000000000000000000000000f23364a5d71857d695c7083969783705d49362310000000000000000000000000000000000e23384e637889735e61718292a090806e5e4d3d2d1c0c162b40566b82806a543f2a1500000000001024394d6175899c8a75604c38230f000000000000000000000b1d304255697c91a5927d6955412d1804001f344a5f748ba0917b66503b26110000000000000000000000000e1d2c3b4956636e79838279736f6c6b6c6e72777d889191887d716457483a2a1a0a0000000000000000011121303f4d5a67737d877c746e69676667696d7279838d968c8275685b4d3d2e1e0d00000000001a2e41525f626368778ca1927d6b6462615747342012263a4c5b62646c7a8c93807065625b4c3a2713000000000000071b2e4154687b8fa08d7965523f2b1805061a2e4255697d86725e4a36230f00000000000000152a3f53687c919b86705c47321d0800061524334352617080857566574d61758a9e9985705b47321d0900000000001a2f445a6f869b9079644f41536577899b8f7d6b5a4938271605000000000000000000000000000000000000000000000000000000000000000000071b2e4255697c867266798c9f8d7a6753402d1a070000000000000000000000000000000000000000000013273c50616e79848f948372616d838e7c6b59483d3f403e36291e1d170f0300000000000000000000000000000000000000071b2e4255697c867266798c9f8d7a6753402d1a07000000000000000000000000000000000e23384e637889735e6e808fa09382716150402f1f0f00162b40566b82806a543f2a150000000000091e3145596c80928f7a66523f2b190700000000000000000918293a4c5f7285999c8975624e3a261200001e33485e73899e917b66513c2712000000000000000000000000000e1d2b3845515c66707780868483828284878c908b857d756a5f5347392b1c0c000000000000000000000312212f3d4a56616b757c85837d7c7b7c7d82878d908a83796f64584b3d2f1f100000000000001f34495d7077787c859191918a7d797775634f3a25172c4055697779808a91918f8279776a56412c170000000000001024374a5d7185989784705d4936230f000012263a4e6175897966523e2b17030000000000001025394d6175899c8a75604b37230f000006152534435261708085756656687c91a4927d6a55412d180400000000001a2f445a6f869b90796457565f7083959482705f4e3d2b1a0900000000000000000000000000000000000000000000000000000000000000000000001226394d607488796f82959885715d4a37241100000000000000000000000000000000000000000000000d203343515c67727c8790806e7287826f5e4e50525456524737251200000000000000000000000000000000000000000000001226394d607488796f82959885715d4a37241100000000000000000000000000000000000e23384e637889736b7c8d9d9685746453433322120100162b40566b82806a543f2a1500000000000216293d5062758796826e5b48362515070000000000030d19273647586a7c8fa292806c5946321f0b00001d32475c71879c937c68533e281300000000000000000000000000000d1b28343f4a535c646b71767a7d8080807d7a76706961584d4236291b0d00000000000000000000000003111f2c38444e58616970767b808386868683807b756e665c52463a2d1f11010000000000001f344a5f737d7d7c7c7b7b7b7b7c7c7d7965503b262a3241576b7d7d7c7c7b7b7b7c7d7d6c57422c17000000000006192d405366798da08e7a6754402d1a0700000a1e3246596d82826d5a46321f0b0000000000000a1e3246596d80938f7a66523e2b180600000716253443526170808574657185989c8976624e3a26120000000000001a2f445a6f869b90796b6c6b6a7c8f998876645341301f0e0000000000000000000000000000000000000000000000000000000000000000000000000a1d3145586c8083778b9f8f7b6754412e1b080000000000000000000000000000000000000000000000031525343f4a545f6a75808a7b7686756361636567696b6554412d1803000000000000000000000000000000000000000000000a1d3145586c8083778b9f8f7b6754412e1b0800000000000000000000000000000000040e23384e63788973798a9a998977675746362515040006162b40566b82806a543f2a150800000000000d20334558697a8c8b7765534332251a120f0d0e1117202a3745546475889998877562503d2a170300001b30455a6f849994806a543f2a150000000000000000000000000000000a16222d37404c5b635f6165686a6a6a68656261554e453b3024180b0000000000000000000000000000010e1b26313b454d555c62676b6d6f6f6f6e6b66615b534a4035291c0f01000000000000001c304456656868676766666666676868685c4a36373e464e56606868676766666667686860503d291400000000000f2236495c6f83969986725e4b38241100000003162a3e5165798a75624e3a271300000000000003162a3d5063758895826d5a4735241406000007162534435261708084747b8ea192806d5946331f0b0000000000001a2f445a6f869b90808282827c889a8d7b6a5847352413010000000000000000000000000000000000000000000000000000000000000000000000000215293c5063778a82959985725f4c38251200000000000000000000000000000000000000000000000000071623303a424d57626d7783777a72747678797c7d826f5a442f1a05000000000000000000000000000000000000000000000215293c5063778a82959985725f4c382512000000000000000000000000000000000a162025384e6378897687979c8c7a6a5a4939281807000d19212c41566b82806a55402b231b10020000000416283a4c5d6e7d8e8371615143372d27242223262b333d4855637283949b8b7a69574533200d000000182d42576c829697826c57422d180300000000000000000000000000000005101a2c4155697872675d53545457616b7573614d38281e13070000000000000000000000000000000000091424384b5c6664565256585a5f636461594d463f362d22170b00000000000000000014273948515353525250505051525353534b3e444b525a616a72726152525050515253534e4233210e0000000811182b3e5165788c9f907c6956422f1b08000000000e22364a5d71857d6a56422e1b140f06000000000e213446586a7b8d8a77645342322419110d0b0d162534435262718284869898877563503d2a17030000000000001a2f445a6f869b918380808082858b827064574839291807000000000000000000000000000000000000000000000000000000000000000000000000000d2034485b6f838f9e8f7c6955422f1c08000000000000000000000000000000000000000000000000000d1f31414d555c636a70777d6e8288898c8e9092907d6a57422e19040000000000000000000000000000000000000000000008142034485b6f838f9e8f7c6955422f1c0d000000000000000000000000000000091928333a3d4e63788984949f8f7d6d5d4c3c2b1b0a000d1d2b353b44586d83826c58433b372d2010000000000b1d2e3f50606f7d8d806f615449413c3937383b40464f5a667382919a8c7c6d5c4b3a28160300000014293e53687c9299856f5a45301b060000000000000000000000000000000000172c41566a7b857a70665c606a747d8474624d38230e010000000000000000000000000000000000000013283d53687a74666264696e747879756b5e4e3e2e1d1005000000000000000000000a1b2a363d3e3e3c3c3b3b3b3c3c3e40454b51585f666d757d8679644f3c3b3b3c3c3e3e3b3224150400000e1b252a34475a6d82959b8773604d392613010000000816212e4255697d86725e4a382c2923180a0000000417293b4c5e6e808f8270605042362c26222122252a313b4753627183949c8c7a69584533200e000000000000001a2f445a6f869b90796b6a6a6c70778382746657473624120000000000000000000000000000000000000000000000000000000000000000000000000005182c3f53667a8e998673604c392613000000000000000000000000000000000000000000000000000014293c4f5f6970777d8588798275757b82888f928372604e3b27140000000000000000000000000000000000000000000009182630363f53667a8e998673604c39332b1e0f0000000000000000000000000000142637454f525965788f92a2928270604f3f2e1e0d0005182a3b4850525f728787725f53504a3e2e1b08000000001021324251606e7b898071665d55514e4c4e50545a626c778491978a7c6e5e4f3e2d1c0b0000000010253a4e63778d9d88735e49341f0a000000000000000000000000000000000013273b4d5d6c7a8a83796f727c878374655645321e0a000000000000000000000000000000000000000013283d526677847977797d83898d8f897c6c5c4c3a29170300000000000000000000000c1922282929272726262633424e545a5f656c737a82887d72685b4936262627272929261f140600000c1d2c383f425264778a9e927d6a5744392d1f0e0000051626343d404e61758a7a675647413e352819070000000c1d2f40506170808e7d6e605348403a3736373a3e454e58647180909c8d7d6d5d4c3a281909000000000000001a2f445a6f869b9079645454575c6574868575645342301d0a000000000000000000000000000000000000000000000000000000000000000000000000001024374b5e7286907d695643301d0a00000000000000000000000000000000000000000000000000001a2e43586c7d858b9286776a807d6a676d747a8074645443311e0b00000000000000000000000000000000000000000002152636434b4c4b5e7286907d69564a4c473c2d1b09000000000000000000000000001b30435563676c768392a4978573635242312110070b0e2034475965676e7c8f8f7c6e68655c4b382410000000000314233242505e6a76828479706a6663626365696e768089959085786c5e504031201000000000000b2035495d72879b8c77624d39241000000000000000000000000000000000000b1e2f3f4e5c6b79898c82869083736456473828160300000000000000000000000000000000000000000e2336485a6a7a898d8f93958f8a8786887a695846331e0a000000000000000000000000060e13131312121114293d5060696e747982888b80756a60564b3d2c1a1112121313110b0200000016293b4a54575f6f8294a38d776357544b3d2b1805000f2234445156575c70878573645a565246362411000000001122324251616f7c8a7d70655c544f4c4b4c4f5359616a768290988b828473645546372716040000000000001a2f445a6f869b9079644f3f424856697c9183715f4c3926120000000000000000000000000000000000000000000000000000000000000000000000000a1a29364256697d8873604d3a2c1f1000000000000000000000000000000000000000000000000000001c32475c708799928475676a8086725f5960666a635646362513010000000000000000000000000000000000000000000a1e31445460605756697d887360535d625a4a392511000000000000000000000000001f34495e737b82898f8f8f8a79675645342414161c202325394e63777c828c8d8d8c827c7a67523d2813000000000005142332404d59646f788285807a787778797d838a928e867d72675b4e40322213020000000000061b2f43586c8094907b67533e2a150100000000000000000000000000000000011121303e4d5b6a79889591827264554638291a0a00000000000000000000000000000000000000000007192b3c4c5c6b78848986827a75706f758376614c37220d0000000000000000000000000000000000000000172c42576c7d83898f8f84786e63584e43392d1f0e00000000000000000000001d314558676c717d8e9d9d8f7b6f6b695a48341f0b00152a3e51626b6c707a8b9283766f6b6454402c18000000000414243342515f6b778383776f696462606264686d757d889491867a7282837364554533200c0000000000001a2f445a6f869b9079644f3a2d394e62778c8f7c6955422e1905000000000000000000000000000000000000000000000000000000000000000000000617283847535d64747c6a5d544a3d2e1e0d000000000000000000000000000000000000000000000000001d32475c728891827365576a808f7b67544b5154504638281808000000000000000000000000000000000000000000000e23384d6172746a6061747c6a5c66707768543f2a15000000000000000000000000001f34495e72797878787879796c5b4a3b352a262b3035383a394e637679787877777878797967523d28130000000000000514222f3c47525c646d747a80848789898987848079726960554a3d302213040000000000000014293d5065788d96826d5844301c0800000000000000000000000000000000000312202f3d4c5b697887827263544637281a0b00000000000000000000000000000000000000000000000d1e2e3e4d5a666f73716c66605c5a6473705f4a36210c0000000000000000000000000000000000000000162b3f5365737c84887c71665b51463b31261c0f0100000000000000000000001f344a5f748286898888888889848277624c37220d00172c42576c828386888888888984826f5a442f1a000000000006152433414e5a65707982847d79777677787c8289918f877d73686372828373634f3b26110000000000001a2f445a6f869b9079644f3a25354a5f748a9985715d48341f0a0000000000000000000000000000000000000000000000000000000000000000000010233546566470787b7b7871675b4c3c2b18050000000000000000000000000000000000000000000000001c31475c708782726456546a809584705d493d3f3c34281a0b00000000000000000000000000000000000000000000000f24394e6376867d73696467656f79837b6a55402b16010000000000000000000000001b2f435461646463636364645d4e515047393a3f454a4e4f4d4758636463636262636364645b4a37240f0000000000000004111e2a353f49515960656b6f71737373726f6a655e564d43382c1f120400000000000000000d2135495d70849888735f4b37241000000000000000000000000000000000000002111f2e3d4b5a6874706254453628190a0000000000000000000000000000000000000000000000000010202f3d49545b5e5c57514c4747565f5d51412f1b0700000000000000000000000000000000000000001024364755606870736a5f54493e33291e1409000000000000000000000000001e33485d6f74737372727272737374705f4b36210c00162c405568747473737272727374746b58432e19000000000000061523303d48535d666e757b8286888b8b8b8886827a736a6156546372827a66513c27120000000000001a2f445a6f869b9079644f3a2533485e73899f8c77624d38230e00000000000000000000000000000000000000000000000000000000000000000004182c3f526474838d80787c85786a5a4734210d0000000000000000000000000000000000000000000000001a2e43586d7d7062544653687d948d7965523e2b2721170a0000000000000000000000000000000000000000000000000c20344758677585867c726e78828a7b6c5d4e3b271200000000000000000000000000132536444d4f4f4e4e4e4f4f4a5b6664574c4f54595f636461594e4e4f4e4e4c4c4e4e4f4f493d2d1b080000000000000000000c18222c364a5f70746b635c5e5e5e5c5a56514a433a30261a0e01000000000000000000061a2d4154677a8e8f7a6753402d1a0700000000000000000000000000000000000001101f2d3c4a575f5d53443627180a000000000000000000000000000000000000000000000000000002111f2c3740464847433d373238444a494133241200000000000000000000000000000000000000000007192938434d555b5e584d42372c21160c010000000000000000000000000000192d40515d5f5f5e5c5c5c5d5e5e5f5d5242301c08001226394b595f5f5e5e5c5c5c5e5f5f5a4d3b28140000000000000005121f2b36404a525a61676c707374747473706c665f574e44455463706a5c4a37230f0000000000001a2f445a6f869b9079644f3a25344a5f748a9f8f79644f3a250f0000000000000000000000000000000000000000000000000000000000000000000a1e33475b6f82928370636e83897764503c271300000000000000000000000000000000000000000000000015293d5060686052443e53687d8f95826e5a47331f0d040000000000000000000000000000000000000000000000000005182a3a49576674848f86828b897a6b5d4e3f301e0b0000000000000000000000000008182732393a3a3838383a3c51667975676264686e737779756c5f50403938373738393a3a362c1f0f0000000000000000000000051022374c61768480776f676058524c46403b32271e14090000000000000000000000001125384b5e708396836f5c4937241201000000000000000000000000000000000000010f1e2d3a444a49413526180900000000000000000000000000000000000000000000000000000000010e1a242c3133322e29231d273034342e231506000000000000000000000000000000000000000000000b1a263039404648453b30251a0f040000000000000000000000000000000011223240484a4a484747474848494a494134251300000a1c2d3b464a4a4848474747484a4a473d2f1e0c0000000000000000010d19232d363e464d52575b5e5f5f5f5e5b57524b443b313645535b574d3e2d1b08000000000a131a2f445a6f869b9079644f3a25384d62778ca19079644f3a250f0000000000000000000000000000000000000000000000000000000000000000000d22374c61768b8f7a66566b8294806a55402b160100000000000000000000000000000000000000000000000e2133424e534e43343b4f62717c848876624d38230e0000000000000000000000000000000000000000000000000000000c1c2b394856657383919588796a5c4d3f30211201000000000000000000000000000009151e242524232323263b506476857977797d83888d8f897d6e5e4d3c2a222223242524211a0e010000000000000000000000000a1f33475967717b86837b746d66605a554f4435231000000000000000000000000000081b2e415466788a8c79665341301e0e00000000000000000000000000000000000000000f1c283134342e241709000000000000000000000000000000000000000000000000000000000000000811181c1e1d19140e09141c1f1f1a110500000000000000000000000000000000000000000000000009141d252c323330281e12070000000000000000000000000000000000000514222d3334343332323233333434342e2416070000000f1d2a3234343333323232333434322b1f11000000000000000000000006111a232b32383e4246484a4a4a4846423d3730281e27364146433b2f2010000000000f1c272d2f445a6f869b9079644f3a324053677b90a18d77634d38230e0000000000000000000000000000000000000000000000000000000000000000000e23384e63788d8b7560596e8397826b56402b16010000000000000000000000000000000000000000000000041524323b3e3b32253244535f686f7270604c37220d000000000000000000000000000000000000000000000000000000000d1b2a38475564728288786a5b4c3e2f21120300000000000000000000000000000000020a0f0f0f0e0e0e213447596979888d8f9295908a8786887b6b594734200d0e0f0f0f0d06000000000000000000000000000004172a3b49545f69737d8988827a756f6962523f2b170200000000000000000000000000122437495a6c7d8f83705f4d3c2c1b0c00000000000000000000000000000000000000000b151c1f1f1a11060000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000010a11181d1e1c150c0000000000000000000000000000000000000000000511191e1f1f1e1d1d1d1e1e1f1f1f1a120600000000000c171d1f1f1e1e1d1d1d1e1f1f1e180e0100000000000000000000000000070f171e24292d313334343433312d29231c140b18242d302e281e11020000000c1d2d3a4143465b70879c9079644f43464f5e7083979885715d4935200b0000000000000000000000000000000000000000000000000000000000000000000c21364b60758989735f637589917d68543f2a150000000000000000000000000000000000000000000000000006141f2629261f152635424c545a5d5c5243301d0900000000000000000000000000000000000000000000000000000000000c1b29384655637174695a4c3d2e2011030000000000000000000000000000000000000000000000000518293b4b5b6977838987827b75716f748277634d38230e0000000000000000000000000000000000000000000c1d2c37414c56616c76828d8f89847d6f5a442f1a050000000000000000000000000007192b3d4e5f70808f7c6b5a49392a1b0a00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000050d111212121111111111111212120f0900000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000003090f14191c1e1f1f1f1e1c18140e0801000711181b1a140b000000000016293b4b56585a5f73889d917b675a585b616d7c8d998b7a6855422e1a06000000000000000000000000000000000000000000000000000000000000000000091d3246596c7d8c77687080928573614e3a25110000000000000000000000000000000000000000000000000000020b1113110b08172530394045484740342513010000000000000000000000000000000000000000000000000000000000000b1a283745535d5f584b3c2e1f100200000000000000000000000000000000000000000000000000000c1d2d3d4c5a666f73716c66615c5a637270604c37220d000000000000000000000000000000000000000000000e1a252f3a444e59646f7a86867d756856422d190400000000000000000000000000000e203142526271828977675748392815020000000000000000000000040f181d1e1e1d1d1d1d1d1d1d1e1e1e1b13080000000000000000000000000000081115161614110d070000000000000000000000000b172126272727262626262626272727241c1103000000000000000000000001090f14171a1a1a1815110b0402090d0e0e0d0e0e0e0d09010000000000000a141a1b1b1b1b1b1b1b1b1b1b1b1b1b1b1b1d1d1d1d1d1d1d1d1c191106000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001c314559696e6f727d8f9b9683736f6e70757d8c91887b6c5c4b3926120000000000000000000000000000000000000000000000000000000000000000000003172a3d4f606e7a837d83888074665644311e0a00000000000000000000000000000000000000000000000000000000000000000007131d252c3033322d23160700000000000000000000000000000000000000000000000000000000000000000a19273641494a453b2d1e1001000000000000000000000000000000000000000000000000000000000f1f2e3c48535b5e5c58524c4745545e5d5243301d09000000000000000000000000000000000000000000000008121d27323c47525d6872706a61584a39271300000000000000000000000000000002132434445362707d8675665745311d08000000000000000000000414212c323333323232323232323333332f26190a0000000000000000000000000e1b252a2b2b2926221b1309000000000000000000091a29343b3c3c3c3b3b3b3b3b3b3c3c3c382e2111000000000000000000000a141c23292c2f2f2f2d2a251f18151e23232323232323221d1408000000000e1c272e3030303030303030303030303030303232323232323232312d23160700000000000000000000000a131a1e1d1910040000000008131a1e1e1d1d1d1d1e1e1b13080000000000000b151b1e1d170e020000000000001e33485e738486878686868687888484868a88837c746a5d4e3e2e1c0900000000000000000000000000000000000000000000000000000000000000000000000d203142505d676f7474736d6356483827150200000000000000000000000000000000000000000000000000000000000000000000000911171b1e1d191106000000000000000000000000000000000000000000000000000000000000000000000918242e343431281d0f00000000000000000000000000000000000000000000000000000000000001101e2b363f464847433e3832364349494134251301000000000000000000000000000000000000000000000000000a151f2a35404b565d5c564e453a2c1c0a00000000000000000000000000000000061626354452606d798575604b36200b000000000000000000001022323f474848474747474747474848484337281604000000000000000000000c1d2c383f40403e3b362f261a0d000000000000000014273847505252515050505050505252524c3f2e1c090000000000000004111d2730383d41444444423f3a332b283238383838383838373126170700000a1c2c3a4346464646464646464646464646464647474747474747474740342514020000000000000000010f1c262e33322c22140500000918252e33333232323233332f26190a000000000d1c283033322b20120300000000001d32465a6c727270706f6f6f707273747474726e6961574c3f302010000000000000000000000000000000000000000000000000000000000000000000000000021323323f4a545b5f5f5e595045382a1a09000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000007121a1f1f1c150c0000000000000000000000000000000000000000000000000000000000000000000d19232b3133322e29231e252f34342e241607000000000000000000000000000000000000000000000000000000020d17232e39434847423b32281c0e00000000000000000000000000000000000008172635434f5c67726f5d49341f0a00000000000000000005192d3f505b5e5e5c5c5c5c5c5c5c5e5e5d554533200c0000000000000000000016293b4a54565553504a43382b1c0d000000000000001c304456646767666666666666666767675d4c3824100000000000000514222f3a434c5257595a5a57534e473f38454c4e4e4c4d4e4e4c43352512000014273a4a575b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5c5c5c5c5c5c5c5c5c5243311e0b00000000000000000e1f2d394248473f322311000215273642484847474747484843372816040000081a2b394448463d3021120100000000172b3d4e5a5c5c5b5b5a5a5a5b5c5e5f5f5f5d59544e443a2e211202000000000000000000000000000000000000000000000000000000000000000000000000000514222d3740464a4a49453d34281a0c0000000000000000000000000000000000000c151a1b1b1b1b1b1b1b1b1b1b1b1b1b1b1b1b1b1b1b1b1b1b1b1b1b1b1b1b1b1b1b1b1b1b1b1b1b170f0400000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000710171c1e1d1a150f09131b1f1f1a120600000000000000000000000000000000000000000000000000000000000006111c272f33322d271f150b0000000000000000000000000000000000000000081725323e4a555d5c51402d1a06000000000000000000091e33485c6e737372727272727272737372634f3a2611000000000000000000001d314558676b6a68655e55493a2b19070000000000001f344a5f737c7c7b7b7b7b7b7b7b7c7c7b68533d2813000000000003142332404c5660666b6e6f6f6c68635b524856616363626263636053422f1b06001a2f435768707070707070707070707070707070727272727272727270604e3a25100000000000000005182b3d4b565d5c51402e1a070a1e3244545d5e5c5c5c5c5e5d554533200c000011243749575e5a4e3f301f0f000000000e20303d45474746464444444647494a4a4a4845403a31281d110300000000000000000000000000000000000000000000000000000000000000000000000000000004101b242c31343434302a21160a000000000000000000000000000000000000101e282f303030303030303030303030303030303030303030303030303030303030303030303030302b21140500000000000005111a1f1f1f1f1f1f1f1f1e191e1f1f1f1f1f1d171b1e1d1c1f1f1f1f1f1f1f1f1a110500000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000a141b1e1d19130b02000000000000000000000000000000000000000000000714212d384248473f322211000000000000000000000a1f344a5f7483848688888888888884837c67523c2712000000000000000000001f344a5f7482807d79726758483724110000000000001f34495e7178797c859191918b807a787766523d2813000000000010213242505d69737b82848685827d776f655a6374787877777878715e49341f0a001d32475c7287878787878787878787878787878788888888888888887c67523d2813000000000000000b1f34485a69716f5d4a3723100f24394d617273727272727372634f3a26110000162b405467736c5d4e3d2c1b0900000002121f2a31323230302f2f2f30323434343433302b261e150b000000000000000000000000000000000000000000000000000000000000000000000000000000000000000811181c1f1f1f1b160e040000000000000000000000000000000000000c1e2e3b44464646464646464646464646464646464646464646464646464646464646464646464646453e32231100000000000515232e3434343434343434332c333434343434322a3033323034343434343434342e23150600000000050d11121211111111111212120f0800000000080f1212121111111111111212120e07000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000030f1b262e33322c22140500000000000000000000081d324659686c6e717c8f9d9582736f6c6c5f4d39240f000000000000000000001e33485d6f757a878e85766654412d1a0600000000001b2f425360636468768ba094806d6663635a4a37230f00000000071a2d3f50606e7b868f8f87838282838882776c677c8f8f8d837d7c735e49341f0a001b3044586a7c8e9c907d76767676767676767676767677797d869194806a54402b15000000000000000d22374c6277867966533f2c1920273a4f64798486888888847c67523c27120000172c42576c807b6b5b4a39271502000000020e161c1d1d1b1b1a1a1a1b1d1f1f1f1f1e1b17110a020000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000016293c4c585b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5a50412e1b070000000011233341494a4a4a4a4a4a4a473e484a4a4a4a4a463c444847444a4a4a4a4a4a4a49413323120000000b17212627272626262626272727231b100202101b23272727262626262626272727231a0e0000000000000000000000000000050d111212111111111111111212120f0800000000000000000000000000000000000000000000000000000000000009131a1e1d191004000000000000000000000003172a3b4b5557585f74899e907b665a57574f41301d0900000000000000000000192d40515d6068788a9584705d4935200c0000000000122535434c4e4f5d72889c917b66514e4e483c2c1a07000000001024374a5c6e7d8d98897c726d6b6b6d737a857d707c939883706967645643301b070015283b4d5e7082949b8977666060606060606060606062656a73808f826c57422d18030000000000000b2035495c7083836f5c483526333b3e4b5e6b6e708590796e6c5f4d392510000014293d5061708279685644311e0b0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001080d1113151413100d090400000000001c3145596a7070707070707070707070707070707070707070707070707070707070707070707070706e5e4b36220d000000061a2e41515d5f5f5f5f5f5f5f5b4f5c5f5f5f5f5f5a4c565e5b565f5f5f5f5f5f5f5d51412e1b0600091a29343b3c3c3b3b3b3b3b3c3c3c382e201010202e383c3c3c3b3b3b3b3b3b3c3c3c372c1e0e0000000000000000000000000b172126272727262626262626272727231b10020000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000c1d2d394042475c72889c8f79644f42423d322313010000000000000000000011223240484b5a6e83978d77634e3a25100000000000071726313738465b70879c917b66503b38342b1e0e0000000000172b3f5366798c9c8a796a5f585656595f677280827c9394806a5452504738261400000c1e2f41536476889a958371604e4b4b4b4b4b4b4b4b4c5056617082846f5a442f1a0500000000000006192d4054677a8b7764513e35445053545457586e849079645a5244321f0c00000e2133435364778673614e3b2713000000000000060e14181a1a1916110a03000000010a11171b1e1f1f1f1c19130d0500000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000060e161c2126282a2a2825221d180f030000001f344a5f7487878787878787878787878787878787878787878787878787878787878787878787878779644f3a250f000000091f34495d70747474747474746c5a6d7474747474695666736d6373747474747474705e4a35200b001427384750525250505050505252514b3e2e1b1b2e3e4b5152525050505050505252514a3c2b190600000000000000000000091a29343b3c3c3c3b3b3b3b3b3b3c3c3c382e20100000000000000000000000000000050d11120f0a05000000000000000000000000000000000000000000000000000000000f1c262c30465b70879c8f78634e382c2920140500000000000000000000000514222d333f53687c92927c68533d281400000000000008141d2230465b70879c917b66503b2620180d0000000000071c31455a6e839693806d5b4c434040444b55616e7c8293947d68533e3b34291a0900000012243547596a7c8e9f8f7d6b5a4836363636363636383b4453647787705c47321c07000000000000001124374b5e7285826d5a4640536268686a6a6a6e8490796e6f624f3b2611000004152535475a6e837d6a56422e1a05000000010e1922292d2f2f2e2b251e170d0409141d252b3033343434312d2821191006000000000000000000000000000000000000000000000000000000000000000000000000000000000000051019222a31363b3e3f3f3d3a37322b21130300001f344a5f748a8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b79644f3a250f0000000a1f344a5f7482848b8b8b8382705c7182878b86826d5e708477667b82858b8b858276604b36210b001c30445664676766666666666767665c4b382323384b5c6667676666666666666767665a4935210c0000000000000000000114273847505252515050505050505252514b3e2d1b080000000000000000000000000b17212627241f1a140e0701000000000000000000000000000000000000000000000000000a121b30465b70879c8f78634e3823140d0300000000000000000000000000051119263b50657a9095806a55402b160100000000000001091b30465b70879c917b66503b2611050000000000000a1f34495e73889d8d7864503d2f2b2b303843505e6d7c93947d68533e2921170b000000000618293b4d5e7082949b8977665442302121212121232735485b7084735e49341f0a00000000000000081b2f4255697c8976624f465b707d7d80808080859083847d68533e291300021323303b4253687c86715d48331f0a000002111f2b363d424444433f39322a20161b2630394045484a4a4946423c352c23180c000000000000000000000000000000000000000000000000000000000000000000000000000000010c18222c353e454b50535454524f4b473e31210f00001d32475b6e74747474747474747474747474747474747474747474747474747474747474747474747471604c37230e000000081d324659686b708695806d6b6556666b778c786b63677a8e826d6a6c74898c776b685947331e09001f344a5f737c7c7b7b7b7b7b7c7c7a66513c27273c51667a7c7c7b7b7b7b7b7b7c7c78644f3a240f000000000000000000071c304456646767666666666666666767665c4a37230e00000000000000000000000a1a29343b3c38342e28221c150d05000000000000000000000000000000000000000000000000001b30465b70879c8f78634e38230e00000000000000000000000000000000000f253a4f64799097836c57422c170200000000000000001b30465b70879c917b66503b2611000000000000000b21364b60758b9e89735e4a352116161c26324052677c93947d68533e2913050000000000000c1e2f415264768899958371604e3c2b190b0b0c0d182c41556a8076604b36210b00000000000000001326394d607387806b5844586a7c8b79797b7b84907d807c68533e2813000d2031414e575b65798b76614c37220c000010202f3d4951575a5a58544e463d33282c39434d545a5d5f5f5e5b5650483f352a1e110300000000000000000000000000000000000000000000000000000000000000000000000005121e2a353f4951595f646869686764605b4f3e2b180000182b3e505c5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5e5343301d0900000003172a3b4a54586e84947d68565248535d7288745f5e7185928975625e73898b745f544a3c2a1704001f34495e71797d858f91918a7d797765513c27273c516577797c8a9191918d837c7975634e39240f0000000000000000000a1f344a5f737c7c7b7b7b7b7b7b7b7c7c7a66513c271200000000000000000000021527384750524d48433d3630292119100700000000000000000000000000000000000000000000001b30465b70879c8f78634e38230e00000000000000000000000000000000000f253a4f64799098846e58432e190300000000000000001b30465b70879c917b66503b2611000000000000000b21364b60768c9c87705b46311c07000915273c52677c93947d68533e2913000000000000000012233547586a7c8d9f8f7d6b5a4836251301000013273c50616c695a47331e0900000000000000000a1d3044576a7d8874604d4c5e6f828471666e8490796a695f4d39251100162a3d4e5f6a706f7a8d78634e38230e000a1c2e3e4d5b656c6f6f6d68615950453a3c4a5660686e72747473706b645c52473b2f211100000000000000000000000000000000000000000000000000000000000000000000000715232f3c47515c646d74797c7d7d7c79756d5b47321d00000f21323f484a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a494235251401000000000c1d2d3943586e84947d68533e37465b70877660687b8e887d7d6a5f748b89735e48392d1e0d00001b2f4253606469727d8b94806b646359493622223649596364768a9e99897b6f686462574734200b0000000000000000000a1f34495e7178797c859191918a7d7a787765503b261100000000000000000000081d3144566467625d57514b443d352c231a0f050000000000000000000000000000000000000000001b30465b70879c8f78634e38230e00000000000000000000000000000000000e23384e63788f99846e58432e190300000000000000001b30465b70879c917b66503b2611000000000000000b21364b60768c9c87705b46301b06000012273c52677c93947d68533e291300000000000000000617293b4c5e6f82939b8977665442301f0d00000d2033435057554c3c2b180400000000000000000114283b4e6275897d695643526374867c6a6e84907964544e41301d0a001c3145596c7c8684808d77624d38230e0013273a4b5c6b78828686837c756c62574c4c5a68737c83888a8b898680776f64594d3f2e1c0900000000000000000000000000000000000000000000000000000000000000000008172533404d59646f7882888e8d8782808082725d48331e00000313222d33343434343434343434343434343434343434343434343434343434343434343434343434342f25170800000000070f141b2e43586e84947d68533e30465b708676607285927d76877360748b89735e48331e0f000000122535434c4f55606c7a8a826d594d473b2b19192b3b4c5e7082949c8b7a6b5d534f4d4639291704000000000000000000061b2f425360636468778ca0937d6b656363594835210d000000000000000000000b20364b60747b77716b655f5850483f362c22160b00000000000000000000000000000000000000001b30465b70879c8f78634e38230e00000000000000000000000000000000000e23384e63788f99846e58432e190300000000000000001b30465b70879c917b66503b2611000000000000000b21364b60768c9c87705b46301b06000012273c52677c93947d68533e29130000000000000000000c1d2f405264758899958371604e3c2b190700031525333d42413a2e1e0d000000000000000000000c1f3246596c8086725f4c4557687988756e849079644f3b30231200001f344a5f74899a958e8974604b36210c001a2e4356697a8a959a908989898075695d5a6a788690988e87838080838782766a5d4c38241000000000000000000000000000000000000000000000000000000000000000000817263543515e6b76828c958d8379726d6a6a6b6656432f1b0000000410191e1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1b1207000000000d1923282a2e43586e84947d68533e2f445a6f8677697c8f88756d827c68768c88725c47321d0700000007172631373a424e5c6b7b8976645341301f11233546586a7b8d9f907d6d5c4d403a3833291b0b0000000000000000000000122535434c4e4f5d72889d907965504e4d473b2b1906000000000000000000000b20354b5f737b82868079736c645c53493f34281c0f010000000000000000000000000000000000001b30465b70879c8f78634e38230e00000000000000000000000000000000000d22374c62778d99846e59442f1a0500000000000000001b30465b70879c917b66503b2611000000000000000b21364b60768c9c87705b46301b06000012273c52677c93947d68533e29130000000000000000000011233546586a7b8d9f8f7d6b5a483625130100071521292c2c261d1000000000000000010a101517172a3d5063778a7b6754414b5c6d80826e849079644f3a25130400001f344a5f74899c9d92826e5a46311d08001f34495d7286989e8d7d7474777d877b6f6777889794867a726d6a6a6d727a847b68533d281300000000000000000000000000000000000000000000000000000000060b0e111626354453616f7c899492867a6f665e58545456534838271400000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000b1c2b363d3f3b43586e84947d68533e3e445a6f84777286927d6b64778571768c87725c47321d070000000008141d2226313e4e5e6e8082705f4e3d2b1d2f405264758899968572614f3e2f25231f170b000000000000000000000000071726313738475c70879c8f78634e3938342a1d0d0000000000000000000000081c30445561666c7278808880776f665c5145392d1f110300000000000000000000000000000000011b30465b70879c8f78634e38230e00000000000000000000000000000000000c22374c61768c9b866f5a442f1a0500000000000000001b30465b70879c917b66503b2611000000000000000b21364b60768c9c87705b46301b06000012273c52677c93947d68533e2913000000000000000000000517293a4c5e6f82939b8977665442301f0d0000040e141717120a0000000000000009141d252a2c2c2c34475b6e8284705d4a3e5061728479849079644f3a250f0000001d31465a6d7d8788827363513e2b1703001f344a5f748ba096826f605f636b758082758496968575685e585555585e67727464503c271200000000000000000000000000000000000000000000000000060e151b202326283444536271808d9a8f8274685d534a433f3f403f372a1b090000000000000000000000000000040b11171a1d1f1f1f1e1b18130d0600000000000000000000000000000000000000000015283a4852544e43586e84947d68534b5354586e84787c8f8875615c6f8379778d87705b46301b06000000000001090d13203040506172847d6b5a4937283a4c5e6f82939c8b796755433221110e0a04000000000000000000000000000008141d2230465b70879c8f78634e382320180d00000000000000000000000001142737454d52575d646b737c8783786e63574a3d2f2112020000000000000000000000000000000d1e30465b70879c8f78634e38230e00000000000000000000000000000000000b20364b60758b9b86705b46301b0600000000000000001b30465b70879c917b66503b2611000000000000000b21364b60768c9c87705b46301b06000012273c52677c93947d68533e291300000000000000000000000b1d2f405263758799958371604e3c2b190700000000000000000000000000000b1a2630393f4242413d3e5265798c7966523f4455667785849079644f3a250f000000172b3e50606c72726d64554634220f00001f34495e73889c937c68534a4f58636e79858f9e8b7867574b434040434a556060564734210d000000000000000000000000000000000000000000000006101922292f34383b3d4152617182909e8f807163574b40372f2a2a2b2a24190c00000000000000000000000000050f181f262b2f3234343433302c2721191006000000000000000000000000000000000000001c31455866696050586e84947d68535b67685e6d837886927d6b5853667a83778d86705b46301b0a000000000000000002122232445566778977665544344658697b8d9f91806d5b493726140300000000000000000000000000000000000001091b30465b70879c8f78634e38230e05000000000000000000000000000009192732383d43495058606a74808c8275685b4d3f30200f000000000000000000000000000007192a3c4d5f70879c8f78634e39271504000000000000000000000000000000000a1f34495e73899d88725c47321d0800000000000000001b30465b70879c917b66503b2611000000000000000b21364b60768c9c87705b46301b06000012273c52677c93947d68533e29130000000000000000000000001123344658697b8d9e8f7d6b5a48362513010000000000000000000000000a1a2937434d53575756524b495d7084826f5b4837495a6b7d869079644f3a250f0000000e2132424f585c5c5951463728170500001b3045596d809194806a584b4246515c6e839796826e5c49392f2b2b2f37434b4c4438291705000000000000000000000000000000000000000000010d18232c353d43494d5052535f7080909f918070615346392e231b151516151007000000000000000000000000000c17222b333a404447494a4a4845413b352d23190d0000000000000000000000000000000000001f344a5f747d6b56586e84947d685363787c676c837c908875614e4a5e7185788f866f5a443428190800000000000000000415263748596a7c85736150405263758799978573614f3e2c1a080000000000000000000000000000000000000000001b30465b70879c8f78634e38230e0000000000000000000000000000000009151e24292e353c444d57636f7d8d86796b5d4e3e2d1c0a0000000000000000000000000113253648596b7c8ea08f7a68564433210f00000000000000000000000000000000061d32475c71879b8a745f4a35200b00000000000000001b30465b70879c917b66503b2611000000000000000b21364b60768c9c87705b46301b06000012273c52677c93947d68533e29130000000000000000000000000517283a4c5d6f82929b8977665442301f0d000000000000000000000005162838475560686c6c6b665e5354677a8b7764503d3c4e5f70829079644f3a250f000000031423313c444747453e3528190a000000162a3d506272828e8775685e564e4a5f73899d8f7a66523f2c1b16161b2530363731271a0b00000000000000000000000000000000000000000004111e2a353f4951585d626667686c7d8e9e95847262524335281c1107000000000000000000000000000000000002101d29343e474e54595c5e5f5f5d5a56504940362a1e1103000000000000000000000000000000001e33485e73846f5a586e84947d685364797c676b8288917d6a58454155687c808f846e59504637251300000000000000000008192a3c4d5e6f80806e5c4c5d6f82939c8b7967554432200f000000000000000000000000000000000000000000001b30465b70879c8f78634e38230e0000000000000000000000000000000000020a0f141a2128313a45515f6e7d8f8a7b6b5c4b3927150200000000000000000000000d1f3042546577899a9584867362503e2c1b09000000000000000000000000000000001a2e43586d82968d77634e3924170d000000000000001b30465b70879c917b66503b2611000000000000000b21364b60768c9c87705b46301b06000012273c52677c93947d68533e2913000000000000000000000000000b1d2e405163758798958371604e3c2b1907000000000000000000000e2134455665737c8283807a7063545f7286806d594633415364768879644f3a250f0000000005141f292f3232302a22170a000000000e2133455463707b85867a716a625a63778d9f8a75604b37230f000008141c21211d150a0000000000000000000000000000000000000000000514222f3c47525c646c72777b7c7d7d8a97998977665c534a3f33271a0d000000000000000000000000000000000312202e3b47515b63696e72737474726f6a645c53483c2f2112020000000000000000000000000000001c31475c7087766a676f8595806a676c7d7d686f82978874614e3b394c607387928670686355422e1a060000000000000000000d1e2f40516373857a6857697b8d9f91806d5b4a38261403000000000000000000000000000000000000000000001b30465b70879c8f78634e38230e000000000000000000000000000000000000000000060d151e28344150607083958a79685744311e0b00000000000000000000081a2b3d4e607183959b897785806d5c4a38261402000000000000000000000000000000152a3e53677a8f917c67533e332a1e0f0000000000001b30465b70879c917b66503b2611000000000000000b21364b60768c9c87705b46301b06000012273c52677c93947d68533e291300000000000000000000000000001122344557697a8d9e8f7d6b5a4836251301000000000000000000162a3e51637484807979828e82726156697c8975624e3b3547586a7a77644f3a240f0000000000020d151a1d1d1b160f0500000000000416273645525e68717982867d766e6679909b86705c47321d0800000001080c0c090200000000000000000000000000000000000000000005142332404d59646f7880878c8e88848282828486807870665c5145382b1d0e0000000000000000000000000000001021303e4c59646e767d8387898b89888480786f65594d3f3020100000000000000000000000000000001b30455a6f86867d7c808b8f887d7c808b807c828d8d7d6a5744313044576a7d8f8d827c725d48331e080000000000000000000011223445566778877564758799978573614f3e2c1a0900000000000000000000000000000000000000000000001b30465b70879c8f78634e38230e0000000000000000000000000000000000000000000000010b162332425365778b988674614e3b261200000000000000000002142537485a6c7d8fa18f7d6b798b7967554432200e0000000000000000000000000000000f24384b5f728495826e5b4c473c2d1b0900000000001b30465b70879c917b66503b2611000000000000000c21364b60768c9c87705b46301b0f050b14273c52677c93947d68533e29150d020000000000000000010000000516283a4b5d6f80929b8977665442301f0d0000000000000000001c31465a6d827a6c65656f8090806c586073887d6b5744313a4c5c6665594835210c00000000000000000000000000000000000000000009182735414c555d666d747c83837a7b9198836e58432e190400000000000000000000000000000000000000000000000000000000000213233242505e6b76828c958c837a736f6c6b6c6f737a8383796e6256493b2c1d0d000000000000000000000000000c1e2e3f4e5c6a76828a928e8783807d7d82868c83776a5d4e3e2e1d0b00000000000000000000000000001a2f445a6f867a7979787878787879797c80787777786f5f4d3b28283b4e617178777778705c47321d080000000000000000000005162738495b6c7d827082929d8b7967564432200f0000000000000000000000000000000000000000000000001b30465b70879c8f78634e38230e0000000000000000000000000000000000000000000000000005142436485b6f8498917d6a55412d180000000000000000000e2032435566778a9b9483715f6d808573614f3d2b1a080000000000000000000000000000081c2f42546676858b786961594a39251100000000001b30465b70879c917b66503b2611000000000001111e28364b60768c9c87705b46302b22161d272e3c52677c93947d68533e2f2920120300000000070f1416140e05000b1c2e405163748698958371604e3c2b190700000000000000001f344a5f74836f5d505164788f88735f576a7d8873604d3a2e3e4b5151493b2b18050000000000000002080a0a08040000000000000000000917232e39414a525960686f767d859497826b56412c1714131313131313110a0000000000000000000000000000000000000000000f20314151606e7c899493867a6f665f5a5756575a5f666f7a88807366594a3b2b1b0b00000000000000000000000518293b4c5d6c7a889491857a726d6a68696b707782897b6c5c4c3a29160400000000000000000000000000192e425769736b6464636363636364646f74676262635d5141301e1f3244535f636262636052402d19050000000000000000000000091b2c3d4e5f70827c8d9e91806d5c4a382614030000000000000000000000000000000000000000000000061b30465b70879c8f78634e38230e000000000000000000000000000000000000000000000000000006182c40556a80949985705b46311c0000000000000000091a2c3d4f607284959a897665536173857d6d5b493725130200000000000000000000000000001325374858677480887c7668543f2a1500000000001b30465b70879c917b66503b261100000000000e1f2f3b434b60768c9c87705b46443f34252d3a424553687d93947d685345443d3021100000000c1923292b29211608001022344557687a8c9e8f7d6b5a4836251301000000000000001e33475b6c7166533f4c62778d8d77624e6275897c6956422f2e383c3c362b1d0d000000000000030e161d1f1f1d18100500000000000003111d252b2c2e363e454c545b626a7c9395806a55402b2a2a292929292928251d1204000000000000000000000000000000000000091b2c3e4f5f6f7d8d9a918375685c534b45424042454b535d697686857668594939281706000000000000000000000f223547596a7a8b998f8072675f58545354575c646f7c8b7a69584633200d0000000000000000000000000014273a4b585e594f4f4e4e4e4e4e4f515c5f584d4d4e4a40322313152635424b4e4c4c4e4c43342311000000000000000000000000000e1f3041536475889997857361503e2c1b09000000000000000000000000000000000000000000000000122335475b70879c8f78634e38230f0000000000000000000000000000000000000000030c1112100a0513283d52677c939e89735e48331e00000000000000031526384a5b6d7d90a08e7c6b59485668798a78665543311f0d00000000000000000000000000000e213242515f6c768086806b56402b1600000000001b30465b70879c917b66503b26110000000000182b3d4d585a63778d9d88735f5b595243313b4b575a5c6b809596826b5d5a584e3f2d1905000a1b2a363e403d34261605051628394b5d6e80929b8977665442301f0d00000000000000182b3e4e595c5648455165798f8c77624c596c8086725f4b382423272722190d0000000000000514202a313434322c221608000000000112212f394042413c323139404753687d9395806a543f3f3f3f3e3e3e3e3e3e393023130100000000000000000000000000000000011326384a5c6d7d8e9d93837364574a4037302d2b2c3037404c59677789877767574635241200000000000000000004182b3e516476889992827061554b44403e3f4248525e6d7d887563503d2a16020000000000000000000000000b1d2d3b4448463c3a38383838393a3f484a453a3838362e2314050817253037383737383730251606000000000000000000000000031527394a5c6e80919d8b7967564432210f0000000000000000000000000000000000000000000000000c1e2f41526475889c8f7863503e2c1a0800000000000000000000000000000000000008151f2627251e1a1c2d40556a80949e89735e48331e000000000000000f2132445567788a9c9482705e4d3c4a5c6e808472604e3c2b190700000000000000000000000005182b3e4f60707d8980726b61503c281300000000001b30465b70879c917b66503b261100000000001e32475a6b6f728092998f7d73706e614e3a4458696f71778799998878726f6c5c48341f0a00142739485256514434220f000a1c2e3f5163748698958371604e3c2b19070000000000000f20303d454749565a606f829586725e495064778b7a6754402d1a12120e07000000000000031423323d464a4a473f342617050000000d1f303f4c5457564f4435252c3e53687d9496826b56545454545353535353534d41301e0b000000000000000000000000000000000a1d30435567798b9b988675645546392d231c1816171c232e3b49596a7c8f86756453412f1d0a00000000000000000b1f33475b6e8294998673625244382f2b292a2d35404f5f7184806c5945311d09000000000000000000000000000f1d283033312a252323232324252d333431282323211b1105000007131c2223222223221d1307000000000000000000000000000f2132445668798c9d928371604f3e2c1b0a000000000000000000000000000000000000000000000007182a3c4d5e7082949c8f806d5b4a3826140200000000000000000000000000000000061726323a3c39322f31394a5c7084999a86705b46311c000000000000091b2d3e5061738597998876645341303e506274867d6c5a483625140400000000000000000000000d2134485b6d7d8e86736156504333200d00000000001b30465b70879c917b66503b261100000000001f344a5f748686868484848586867c67523c475c728686868484848486868676604b36210b001b304456666b62513e2b1704001022334556687a8c9e8f7d6b5a4836251301000000000002121f2a304256676f737d8e8779685643485b6e8284705d4936230f0000000000000000000e2032424f5a5f5f5b524434231100000015293c4e5d686c6b62534230293e53687d9498836c6a6a6a6a696868686868685f4e3b27130000000000000000000000000000000013263a4d607285979f8c7a68574737281b100801000108111d2b3c4d5f71859382705e4c392613000000000000000011263a4e63778b9e907c69564534261b1513141923314254667a8974604c38230e00000000000000000000000000000c151b1e1c160f0e0e0e0e0f10191e1f1c150e0e0c07000000000000080d0e0d0d0e0d090100000000000000000000000000091b2c3e50617386979886807d6d5c4a392817060000000000000000000000000000000000000000000113243647596a7c8e9f907d8b7967554332200e00000000000000000000000000000000112335444f524d4744464b5767798c9f917d6a56422d1900000000080c1627394a5c6d80919f8d7b6a58473524334556687a89776653423222140c0902000000000000000013283c5064778a937d6a56433d3325150300000008111b30465b70879c917b66503b26130c020000001e33475b6c706f6f6e6e6e6f6f7070614e3a45596a70706f6e6e6e6e6f6f706d5d49341f0a001e33485e73826e5a4633201715131627394b5c6e80929b8977665442301f0d0000000000000d1b272f445a6f8688837c74695b4a393f5266798d7965523e2b18050000000000000000162a3d4f606d74746f6252402d190500001b3044586b7b8380715f4c382a3f546a80949a8680808080807d7d7d7d7d7d7c6a56412d18030000000000000000000000000000061a2e4256697c8fa295826f5d4b3929190b000000000000000d1e2f4254687b8f8e7b695643301c0900000000000000162b4054697d929c8874604d39271608000000051324374b5f72887a66513d2813000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000031426384a5c6d80919e8c7a7486796857463423120100000000000000000000000000000000000000000d1f3042536576899a968472808572614f3d2b1908000000000000000000000000000000192d40536267615c5a5b5f68758597958573614e3b2713000007131c212534455668798b9d93826f5e4c3b291827394b5d6e8283716050403226211d150900000000000000182d41566b80948f7965503b282115070000000e1b252a30465b70879c917b66503b2b282014050000182b3e4e595b5a5a5858585a5a5b5b5344323c4c585b5b5a595858585a5a5b5a4f402d1a06001c31465b6f847662503d312c2a2927262d3f5162738697958371604e3c2b190700000000091b2b394346566871778585776756443136495d7084826e5b4734210d00000000000000001c31465a6d7d898a826f5c48341f0a00001e33485d7288988f7b66523d2b40556a80959d887778787979797b7b839494846e58432e190300000000000000000000000000000d21364a5d728699a08c796552402d1c0b0000000000000000001225384c6074889986725f4c382410000000000000001a2f44596d839797836d5945311d0a0000000000081b2f44596d83806a55402c1601000000000000000000000000000009101414110a00000000000000000000000000000000000000000000000b14191b1b18120800000000000000000000000f2032445667798b9d92806e68798674635241301f0e0000000000000000000000000000000000000008192b3c4e5f7183949b8a776673867d6c5a493725130100000000000000000000000000001c31475c707c75716f70737a8694928676675644311e0b000616253036384252627386979887756352402f1d0c1c2e3f5163768a7d6e5e50433a37312719090000000000041c31455a6f859a8b76614c37220d040000000c1d2c383f40465b70879c917b665042403c32231301000f20303d444645444343434d575c5c584e413c4a555b5c5951454343444546453e3122100000182c40556a7d806d5b4d45413f3e3c3b3b3b455668798c9d8f7d6b5a483625130100000012253849565b58575c67788c8674614d392d4154677a8a7763503d2a1603000000000000001f344a5f74899c9f8c77624c37220d00001d32475c71869a95806a55402c42576c8297998d786463646465666c839898836d58432e1903000000000000000000000000000012273c5064798da19985705d4936231000000000000000000000091d3145596e83978f7b67533f2b17020000000000001c31465b70879b937d69543f2b1601000000000000162b40556a80836d58432e190400000000000000000000000003101c25292a261d13070000000000000000000000000000000000000000101d272e30302d251a0c000000000000000000091a2c3e4f61738597988674635c6d7d82705f4e3c2b1a09000000000000000000000000000000000002142537485a6b7d8fa08f7d6c5a687a8a78665442301f0d00000000000000000000000000001c31465b6e7a83878686888f8d8780746758493827150200122434424b4d54617080929f8d7a695846372715162838454c5a6e838c7c6e61564e4c443727150200000000091e33485d72889d89735e49341f0a0000000016293b4a5456575e73889d937d685957564f41301e0a0002121f2a2f30302f2e3b4e5e6a71716c5f4f4a5a6870726d6354422f2f3030302b211304000012273b5065798a796a605a575453525050504f4f5c6e80919b8977665442301f0d000000172c415567706a59495c7086917c68533e29384b5f7286806c5946321f0b000000000000001f344a5f74899c9e8c77624c37220d00001a2e43576a7d8f98836e5a473645596e84998a8a806c594f4f505a6f859995806b56412c17020000000000000000000000000000172c41556a8094a7927d6955412d1a060000000000000000000001162b4054697d9497836e5a45311c080000000000001d32475c72889d907b66503b26120000000000000013283d53687c866f5a442f1a0500000000000000000000000212212e383f3f3a3024180a0000000000000000000000000000000000000d1e2e3a42464541372a1a0900000000000000021426384a5b6d80919e8c7a68574f6172847c6b5a4938271604000000000000000000000000000000000e203143546677899b958371604e5c6e808472604e3c2a19070000000000000000000000030b172b3e505d676e74787d887a77726b6256493a2b1b0900001a2e41525f636771808f9e98836f63605544311d1e32455661636d83978d80736963605544311d09000000000a20344a5f748a9c87705c47321c07000000001d314558676b6c707b8e9d9885756e6c6b5f4d3a25110000010d161a1b1b1b3044586b7c86877d6c59546778858882715f4b37221b1b1b160e030000000d22364b5f7489897c746f6b6a686766666664646464738597958371604e3c2915000000192e43586e8373604f5a6f8695806a543f2a2f4256697c8975624e3b2814010000000000001c31465a6d7d8889806f5c48341f0a000014283b4e6070828f8a7664534b4b5e73889a8680897664554a4e6074899d8f7a66523d28130000000000000000000000000000001b30455a6f8499a28d77634f3a261200000000000000000000000012273c51667b919d89745f4a36210c0000000000001d32475c72889d8f78634e39240f0000000000000012273c52677c866f5a442f1a0500000000000000000000000e1f303f4b53544d4236281a0b0000000000000000000000000000000000172a3c4c575b5a5448382613000000000000000e2032435567798b9c92806e5d4b435466778978675644332212020000000000000000000000000000081a2c3d4f607284959b8977665442516374867d6b59483624120100000000000000000009161f252732404b535a5f636c79878073665849392b1c0d0000001f34495d70777b838f919193877b7773604c372123384d6274787d8b919190867d7873604c37210c000000000c21364b60768c9b866f5a45301b06000000001f344a5f7482838688888888888884827d68533e281300000000000000001e33485e73889a9b89745f586e83979c8f79644f3a250f0000000000000000081c31455a6f849890898482807d7c7b7b7b7979797979798d978f7d6b58432e19040000172b4054687b7d6d62657589927d69543f2a263a4d6073887d6a5744301d09000000000000162a3d4f606c73736e6152402d190500000b1e3042526271808c8271656060687a8e938073848373665f606b7d909785725f4b37230f0000000000000000000000000000001e33485d72889c9d88735e4a35200c00000000000000000000000010253a4f64798fa28d78634e39240f0000000000001d32475c72889d8f78634e38230e0000000000000012273c52677c866f5a442f1a050000000000000000000005182b3d4e5d68695f534638291a0a000000000000000000000000000000001d32465a6a706f6656422e19000000000000091a2c3d4f6173859798877563513f3748596b7c85736251403020110300000000000000000000000003142637495a6c7d90a08f7c6b5948364557697a8977655341301e0c0000000000000000081827333a3c3930383f464b4e5b68778784766757473624110000001f344a5f747d7c7b7b7b7b7c7c7d7d77624c372e27384e63787d7c7c7b7b7b7b7c7d77624c37220d000000000d22374c62778d9a866f5a442f1a05000000001e33485d6f74747373727272727373747464513c271200000000000000001e33485e73889c9e89745f596e84989f8f79644f3a250f000000000000000001172c4055697d8983828282828282828282828282828282828282806e59442f1a0500001125384c5f71827d777883938876634f3a261d3144576b7d8773604c37220d0000000000000e2032424f595e5e5a5143342310000000011324354453616e7984837976757a87958775657482847974757c8a948878675643301c080000000000000000000000000000001f344a5f74899f9a86705b46311c070000000000000000000000000e23384e63788fa4917b66503b26110000000000001d32475c72889d8f78634e38230e0000000000000012273c52677c866f5a442f1a05000000000000000000000d2135485b6c7a7c71645647382717060000000000000000000000000000001f344a5f748685705b46301b000000060f15172737495b6d7d909e8d7a695745332b3c4d5e7082806f5e4e3e2f2116130d030000000000000000000f2032445567788a9c9483705f4e3c2a394b5d6f8283705f4d3b2a1a0b00000000000000132536454e524d41322b31363d4b59697a8d86756453412e1b0700001c3144576568676666666667676868675b524a423b35495b67686867666666666768675a47331f0a000000000e23384e63778d99846e58432e190400000000192d40515d635f5e5e5c5c5c5c5e5e6261574735220e00000000000000001b3045596c7d8989806e5b54687a878a8373604c37230e00000000000000000012263b4f64787d6d6b6b6b6b6b6b6b6b6b6b6b6b6b6b6b6b6b6b6b62523f2b17020000091c2f42536372808789888377695846332015283b4f62758276624d38230e000000000000031423313d454949463e33251605000000000617263543505c6770798086898b888277695864707a83888989878076695a4a382613000000000000000000000000000000001f344a5f748ba098836d58432e19040000000000000000000000000f24394e63788fa4937c67523c27120000000000001d32475c72889d8f78634e38230e0000000000000012273c52677c866f5a442f1a050000000000000000000012273b5064778a8f82746555453423120000000000000000000000000000001f344a5f748b87705b46301b00000b19232a2c35445567788a9c92826f5d4b3a281e3041526475887c6b5c4d3f332b2820150600000000000811151c2c3e4f61728596998876645341301e2e40516375877c6a594838291c16120a000000001a2e425462675f4f3d291d212d3b4b5d70859483705d4a36220e000015283948515352505050505252586b766e665e564e47404b52535352515050515253524a3c2b1804000000000e23384e63788f99846e58432e190300000000182d42566a7871675d53494d57616c7672604b36210c0000000000000000162a3d4f606c73746e61514b5c6a727470645543301d090000000000000000000c21364a5e70746756565656565656565656565656565656565656504434220f000000001224364554626c7273736e665a4b3b29170c1f334659686c645847331f0b000000000000000514202a303434312b221607000000000000081725323e4a545d656b707374736e66594b525d676d727473716c64594b3c2c1b09000000000000000000000000000000001f344a5f748ba097826b56412c170200000000000000000000000010253b50647990a5937c67523c27120000000000001d32475c72889d8f78634e38230e0000000000000012273c52677c866f5a442f1a0500000000000000000000152a3f54697d939a9384736352412f1e0b00000000000000000000000000001f344a5f748b87705b46301b00081929363e414652627385969887756351402e1c1a2a3746586a7d8a7a6b5d5046403c322414030000000e1b252a2d3a4a5c6d80919f8e7c6a5947362412223446586a7c8876665647392f2b261d100100001e33485d727c6c58432f1b0f1d2e41566b80958d7965513c281300000a1b2a363d3e3d3b3b3b3b3c445a6f808279726a625b544e48423e3c3c3b3b3c3d3e3d372c1e0d00000000000f243a4f64788f99846e58432e190300000000182d42576c7c847a70665c606a747d8373604c37210c00000000000000000d2031424f595e5f5a51423e4c575d5f5c534637261401000000000000000000071b2f42525d5f58494040404040404040404040404040404040403d332616050000000007182736444f585d5f5e5a53483c2d1d0c03172a3b4b555751483a2917040000000000000000020d161c1f1f1c170f0400000000000000000715212d37414950575b5e5f5e5a52483c414a53595d5f5e5c5851473b2d1e0e00000000000000000000000000000000001f34495e73899e97826b56402b160100000000000000000000000013283d52677c92a7917b66513c27120000000000001d32475c72889d8f78634e38230e0000000000000012273c52677c866f5a442f1a0500000000000000000000142a3f54687b80868d9282705e4d3b281603000000000000000000000000001f344a5f748b87705b46301b001225374752565a63708291a08d7a69574e402f1c263848535662778c897a6d625956504232200c00000c1d2c383f424a5868798b9c9382705e4d3b291810202f3a4c5f7286847365574b43403a2e1f0f00001d32475c7086725e4b372518172a3f546a809594806a55402b160100000c1922282928262626262b3f52626d7783867d766f68625c5752493b2a2627282928241b0e0000000000000f253a4f64799098836c57422d18030000000014293c4e5e6c7b8a83796f737d888373645544311d090000000000000000021323313d45494a463e332e3b43494a474036281909000000000000000000000012243441494a453b2c2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b28211608000000000000091827323c43484a48453f362b1e0f00000c1d2d3940423e352a1c0c00000000000000000000000000000000000000000000000000000000040f1a242d363c4246484a48453f362b2e373f44484a4947433d342a1d0f0000000000000000000000000000000000001c32475c70869b97826c57422c1702000000000000000000000003182c41566b8095a38f79644f3a25100000000000001d32475c72889d8f78634e38230e0000000000000012273c52677c866f5a442f1a05000000000000000000001125394c5d676b7179838e7c6a584533200d000000000000000000000000001f344a5f748b87705b46301b00192d4154656b6e76828f9d9b86706c6a5e4c38232e4256666b6f7a8e998c80756e6b614f3b2712000016293b4a54575c677686979b887564554c3d2c191a2d3e4d55576c82928375685e57554c3d2c190500192d42566b807a675442332c2c3344586d829797826b56402b1601000000060e13131311111111233544505b65707a858a847c77716b665947331f121313130f080000000000000811253a4f64799096826b56412c1702000000000d1f30404e5d6b7a8a8c8286908272645546372715020000000000000000000514202a313434312b211d282f3434322d24180a0000000000000000000000000616242e343431291d1616161616161616161616161616161616140d040000000000000000091520292f333433312b23190d000000000f1c262c2c2922180c0000000000000000000000000000000000000000000000000000000000000008111a21282d31333433302b23191b242b2f333434322f2921180c00000000000000000000000000000000000000192e43586d829798836e58432e190400000000000000000000000a1e32465b6f84999f8a75604c37220d0000000000001d32475c72889d8f78634e38230e0000000000000012273c52677c866f5a442f1a05000000000000000000000a1d2f3f4c52575d66717d8875624f3c2815020000000000000000000000001f344a5f748b87705b46301b001b30465b70828489888888888984827b66503b2632475c71828489888888888983806a543f2a1500001d314558676c707986959d9883706c695b48342021364a5c6a6c73859993867a726c695b4834200b0013283c51657a8471605146424246516174889c937d6954402b15000000000000000000000000061726333e48535d68727d89928b868076614c37220d000000000000000000000e1b252a3d51667b91937d69543f2a150000000000021222303f4e5c6b798995908272635446372819090000000000000000000000020d161c1f1f1c170f0b141b1f1f1d191107000000000000000000000000000006121a1f1f1d160c0000000000000000000000000000000000000000000000000000000000030d141a1e1f1e1c1710070000000000000a121617150e0500000000000000000000000000000000000000000000000000000000000000000000060d14191c1e1f1e1b160f070810161b1e1f1f1d1a150e050000000000000000000000000000000000000000152a3f53687c919b86705c47321d0800000000000000000000001225394d61758a9e9985705c47321e090000000000001d32475c72889d8f78634e38230e0000000000000012273c52677c866f5a442f1a05000000000000000000000011212e383d424a53607080806b5845311d090000000000000000000000001f344a5f748b87705b46301b001a2f44586b7474737272727373747473634f3a2531455a6d7474737372727273747466533e291400001f344a5f748285888888888989848277624c372223384e637882868988888888868277624c37220d000e23374c60758a7d6f635b57575a626f80919d8b7764503b2712000000000000000000000000000816212b36404b56606b77828882786d5d4a35200b0000000000000000000c1d2c383f44576b80948f7a65513c2712000000000000041221303e4d5b6a788882716254453628190a0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001025394d6175899c8a75604b37230f000000000000000000000b1c2f4155687c90a4927d6a55412d19040000000000001d32475c72889d8f78634e38230e0000000000000012273c52677c866f5a442f1a05000000000000000000000003111c24282e37425163758874604d3925110000000000000000000000001f344a5f748b87705b46301b0015293c4e5b5f5f5e5c5c5c5e5e5f5f5e554533202a3d4f5c5f5f5e5e5c5c5c5e5f5f584937230f00001e33485d6f7473727272727373747471604b362123384c617274747372727272737471604b36210c00091d32475b70858e80766f6c6c6f75808e9a8e7d6d5b4835210d0000000000000000000000000000040e19232e39434e5a646f726d655b4f402e1b0700000000000000000016293b4a54576173869a8874604c37230e000000000000000312202f3d4c5b6974706253443627180a000000000000000000000000000000000000000000000000000000000000000000000004080a0b0b0b090602000000000000000000000000000000000000000000000000000004080a0b0b0b09060200000000000000000000000000000000081115161616151515151515161616130c02000000000000000000000000000003080c0e0f0f0f0d0a0600000000000000000000000000000000050d111212121212121212121212121212121212121212110e0600000000000a1e3246596d80938f7a66523e2b180600000000000000000817283a4c5e7185989d8a76624e3b2612000000000000001d32475c72889d8f78634e38230e0000000000000012273c52677c866f5a442f1a0500000000000000000000000000090f141b25364a5d70837c6854402d190500000000000000000000001f344a5f748b87705b46301b000d1f303e474a4a4847474748484a4a494337281620313e484a4a4848474747484a4a453a2b1a070000192d40515d5f5e5c5c5c5c5e5e5f5f5e5343301c1e3144545e5f5f5e5d5c5c5d5e5f5e5343301c080003182d41566a80837d848482828489928f887c6f60503e2c19050000000000000000000000000000000006111b26313c47525c5d5851493e312211000000000000000000001d314558676b7280908d7d6b5845311d09000000000000000002111f2e3d4b585f5d524435261809000000000000000000000000000000000000000000000000000000000000000000050d13191d1f2121201e1b16110a020000000000000000000000000000000000000000050d13191d1f2121201e1b16110a020000000000000000000000000e1b252a2b2b2b2a2a2a2a2a2a2b2b2b2820140500000000000000000000000911171c2123252524221f1a140e060000000000000000000000000b172126272727272727272727272727272727272727272727221a0e0100000003162a3d5063758895826d5a47352414060000000000020c1826354657697b8ea193806d5a46331f0b000000000000001d32475c72889d8f78634e38230e0000000000000012273c52677c866f5a442f1a0500000000000000000000000000000006192c405366798d84705c4835210d00000000000000000000001f344a5f748b87705b46301b000112202b3334343332323233333434343026190a13212c333434333332323233343431281c0d00000011223240484a484747474748484a4a494235251415263643494a4a4848474748494a494235251401000013273c5165797d696f757b808282807a736a5e514232210f0000000000000000000000000000000000000009141f2a35404748443d352c211304000000000000000000001f344a5f74828687837a6e5f4e3b28150200000000000000000001101f2d3b454a484134261708000000000000000000000000000000000000000000000000000000000000000005101921282d323436363533302b251e160d020000000000000000000000000000000005101921282d323436363533302b251e160d020000000000000000000c1d2c383f4040403f3f3f3f3f3f4040403c32231301000000000000000008131c252b3136383a3a3937342f2922191006000000000000000000091a29343b3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c362c1f0f000000000e213446586a7b8d8a77645342322419110d0b0d10161e293644536475879999887563503d2a1704000000000000001d32475c72889d8f78634e38230e0000000000000012273c52677c866f5a442f1a050000000000000000000000000000000f2236495c6f83968c7764503d291501000000000000000000001f344a5f748b87705b46301b0000020f181e1f1f1e1d1d1d1e1e1f1f1f1b140900030f191e1f1f1e1e1d1d1d1e1f1f1c150b000000000514222d3334333232323233333434342f2517080918252f34343433333232333434342f2517080000000e22374b607174665b61666a6c6c6a6660574d41322314030000000000000000000000000000000000000000010d18232c32332f2922190f0300000000000000000000001e33485d6f7474726d675d5041301e0c0000000000000000000000010f1d283134332d24170800000000000000000000000000000000000000000000000000000000000000000b17222c353c42464a4b4b4b4845403932291f150900000000000000000000000000000b17222c353c42464a4b4b4b4845403932291f1509000000000000000016293b4a545656555454545454545656564f41301e0a000000000000010e1a25303840464a4e4f4f4e4c49433d352d23180c00000000000000001427384750525252525252525252525252525252525252525251493d2d1b080000000417293b4c5e6e808f8270605042362c26222122252a313b4754627182939c8c7a6a584633210e00000000000008111d32475c72889d8f78634e3823120b01000000050e14273c52677c866f5a442f1a0e050000000000000000000000000005182b3e5165788c9f90806c5844301d09000000000000000000001f344a5f748b87705b46301b000000000000000000000000000000000000000000000000000000000000000000000000000000000000000511191e1f1e1d1d1d1d1e1e1f1f1f1b1207000008131b1f1f1f1e1e1d1d1e1f1f1f1b120700000000081c3043535e5f58494d5255575755524c443b2f23140500000000000000000000000000000000000000000000000610191d1e1b150e0600000000000000000000000000192d40515d5f5f5d59534b4032231201000000000000000000000000000c151c1f1e19110600000000000000000000000000000000000000000000000000000000000000010f1c29343f4850565b5f60605f5d59544d453c32271b0e0000000000000000000000010f1c29343f4850565b5f60605f5d59544d453c32271b0e000000000000001d314558676b6b6a6a6a6a6a6a6a6b6b6b5f4d3a2511000000000004121f2c38424c545a5f63646463615d58514940352a1e11030000000000001c304456646767676767676767676767676767676767676767655b4b382410000000000c1d2f40506170808e7d6e605348403a3736373a3e454e59647282909b8d7d6d5d4c3a29160400000000000e1b252a32475c72889d8f78634e382b271e120300081621292b3e53687c86705b4631292116080000000000000000000000000e2134475b6e829598858873604c382511000000000000000000001f344a5f748b87705b46301b00000008101415151413131313141516171919191716130f0a04000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000114253542494a453a383d404242403d3830281e12050000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000011223240484a4a48443f382e2214040000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001101f2d3a46515c646b7074767674726e6861594e44382c1e1001000000000000000001101f2d3a46515c646b7074767674726e6861594e44382c1e100100000000001f344a5f7482828080808080808082827d68533e281300000000031322303d4a555f686f747779797876726c655c52473c2f21130400000000001f344a5f737c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7967533e291400000000001122324251616f7c8a7d70655c544f4c4b4c4f5359616b768390988b7d6f5f4f3f2e1d0b00000000000b1c2c383f40485d72889d8f78634e41403b302111051626343d4045576b8088735f4b403d342616050000000000000000000004172a3e5164778b9e8e7a827b6854402c19050000000000000000001f344a5f748b87705b46301b00000e1a24292a2a2929292929292a2b2c2e2e2e2c2b28241e18110a010000000000000000000000000000050d111212111111111111111212120f080000000000090f1212121212121212100b02000000000000000817252f3434312824282b2c2c2b28231d150b0000000000000000000008101415151413131313141516171919191716130f0a040000000000000000000000000000000514222d333434332f2b241b10040000000000000000000000000000010d15191a1a1919191919191a1a19140b040f161a1a1a19191919191a1a19150d0100000000000e1f2e3d4b58646e778086898c898988837c756c6156493c2e1f1000000000000000000e1f2e3d4b58646e778086898c898988837c756c6156493c2e1f1000000000001e33485d6f74767882929595897b77747464513c271200000000112131404e5b67727b83898d898686868780786f64594d3f31221302000000001f34495e7278797c8693939390878483838383838489919393806a54402b1500000000000414243342515f6b778383776f696462606264686d757d88949186796d5f514131211000000000000015283a4a5456575f748a9f907a655856554e3f2e1b0e2134445156596373878e7a685a56514434220f000000000000000000000d2034475a6d82949885717984705c4834200d0000000000000000001f344a5f748b87705b46301b000c1d2c373e3f3f3e3e3e3e3e3e3f404243434342403d38332c251d140b0000000000000000000000000c182126272727262626262626272727231b0f010006121c242727272727272727251e14060000000000000007121b1f1f1c150f1316171716130f0901000000000000000000000e1a24292a2a2929292929292a2b2c2e2e2e2c2b28241e18110a01000000000000000000000000000511191e1f1f1e1a16100800000000000000000000000000000002121f292e2f2f2e2e2e2e2e2e2f2f2e281d15222b2f2f2f2e2e2e2e2e2f2f2e291f12020000000a1b2c3d4c5b6875828b91877d777473747880887d73675a4c3d2e1e0d0000000000000a1b2c3d4c5b6875828b91877d777473747880887d73675a4c3d2e1e0d00000000192d40515d5f6064758a9f947d6a625f5f574735220e0000000c1e2f3f4f5e6c79858f8e837a74706f70747b8582766a5d4f40312010000000001b2f435461636468778ca19482726e6c6c6c6c6c6e74808d97826b56402b1600000000000006152433414e5a65707982847d79777677787c8289918f887d73685c4f41322313030000000000001c314558676b6c707c8f9d9582736e6b6a5d4b372314293d51626b6d7482919786776e6b62513e2a1500000000000000000003162a3d5063768a9d8f7b6871867763503c28150100000000000000001f344a5f748b87705b46301b0016293b495354545353535353535456575858585755514d47403931271d12070000000000000000000a1b2a353b3c3c3c3b3b3b3b3b3b3c3c3c372d1f0f0716242f383c3c3c3c3c3c3c3c3a3124150400000000000000000000000000000000000000000000000000000000000000000c1d2c373e3f3f3e3e3e3e3e3e3f404243434342403d38332c251d140b00000000000000000000000000000000000000000000000000000000000000000000000000000f20303c4344444343434343434444433b2e24333e44444443434343434444433c30200f0000031628394a5a6a7987938e80736a635f5e5f646b758385786a5b4c3c2b1a0800000000031628394a5a6a7987938e80736a635f5e5f646b758385786a5b4c3c2b1a0800000011223240484a4b5c71879c917b66514a4a44392a1805000005182a3c4d5d6d7c8a978b7c70665f5b5a5b60677280897b6d5e4f3e2e1c0b000000132536444c4e4f5e73899e90796558575757575759616e7d8f826b56412c1700000000000000061523303d48535d666e757b8286888b8b8b8886827a736a61564b3e31231405000000000000001f344a5f7482838688888888888783827a66503b26172c42576c828388888888888983826c57422c170000000000000000000c203346596c80939985725f6a7d806b5844301c0800000000000000001f344a5f748b87705b46301b001d314558676a6a6868686868686a6b6c6e6e6e6c6a66615b554d443a3024180b000000000000000015283947505252515050505050505252514a3d2c1a162534414c52525252525252524e4233210e0000000000060f15191a18120900081116191a1710070000000000000000000016293b495354545353535353535456575858585755514d47403931271d1207000000000000000000000000000000000000080e1215161614110c060000000000000000182b3e4e585a5a5858585858585a5a574c3c304251595a5a58585858585a5a584e3e2b1800000d20334557687889978e7d6f62574f4a484a4f5864728389796a5a49372614010000000d20334557687889978e7d6f62574f4a484a4f5864728389796a5a493726140100000514222d3334465b70879c917b66503b3431281b0c0000000f223547596a7b8c9a8b7b6c5e534b4644464c556170808c7c6d5c4b3a2816030000081826313838475c72889d8f78634e424242424245505f7083836c58432d18000000000000000005121f2b36404a525a61676c707374747473706c6660574e44392d20130400000000000000001e33485c6f747473737272727273747473624e3a25162b405468747473737272727374746855402c1600000000000000000215283b4f6275899c8f7c6955637688735f4c38241000000000000000001f344a5f748b87705b46301b001f344a5f7480807d7d7d7d7d7d80828384848482807b76706860574d4136291c0d000000000000001c314457646767666666666666666767665b4a3622243443525f676767676767676760513e2a15000000000b18232a2e2f2d261b0e1b252b2e2f2b24180a0000000000000000001d314558676a6a6868686868686a6b6c6e6e6e6c6a66615b554d443a3024180b0000000000000000000000000000000a141c23272a2b2b2926211a12080000000000001e33475b6b6f6f6e6e6e6e6e6e6f6f6a5946384c606e6f6f6e6e6e6e6e6f6f6b5b47331e0003172a3d506274869792806f6051443b3533353b47546576898877675543311e0b000003172a3d506274869792806f6051443b3533353b47546576898877675543311e0b0000000511191e30465b70879c917b66503b261c150a00000005182b3e5164768999907d6d5d4e4137312f313843526274868b7a69574533200d00000009151e2332475c72889d8f78634e382c2c2c2c3242536679846f5a442f1a000000000000000000010d19232d363e464d52575b5e5f5f5f5e5b57524b443b32271b0f03000000000000000000192d3f515d5f5f5e5e5c5c5c5d5e5f5f5e5545331f1125394a595f5f5e5e5c5c5d5e5f5f594b39261200000000000000000b1e3145586b7d929986725f4c5b6f837b6753402c1804000000000000001f344a5f748b87705b46301b001f34495d7076777a849494948f837b77767476787c8289847c736a5f5347392b1d0e0000000000001f344a5f747c7c7b7b7b7b7b7b7b7c7c7965503b2631415261707b7c7c7c7c7c7c7c6d58432e18000000091a29353e434441392c1e2c38404344403628180600000000000000001f344a5f7480807d7d7d7d7d7d80828384848482807b76706860574d4136291c0d00000000000000000000000003101c2730373c3f40403f3a352d251b1106000000001f344a5f7486868484848484848686735e483a4f6479868484848484848586745f4a341f000b1f3246596c80929b88756351423327201e21293647596b80928572604d3a271400000b1f3246596c80929b88756351423327201e21293647596b80928572604d3a27140000000000051b30465b70879c917b66503b261101000000000c2034485b6e8294998672604f3f30241c1a1d26344557697d918775624f3c29160200000002091d32475c72889d8f78634e382317171724374a5e7287705c47321c000000000000000000000006111a232b32383e4246484a4a4a4846423d3730281f150a000000000000000000000010223240484a4a484847474748484a4a4943372716091b2d3b464a4a4848474748484a4a463b2d1c0a000000000000000114283b4e6175889b907c69564353677b836f5b4734200c000000000000001f344a5f748b87705b46301b001a2e41525e606266778ca0968271676260606163686d757d88877c716457493b2c1c0c00000000001f34495e7278797c869191918a7d79787664503b2c3d4e5f70808f93938c827b79786c57422d180000001326384752585a554a3a2a3c4a54585a534636231000000000000000001f34495d7076777a849494948f837b77767476787c8289847c736a5f5347392b1d0e000000000000000000000312212e39434b51545656534f4941382e23180c0000001e33485c6d707279889999897972706b5a46384d606f71747d8e99938074706d5c48331e0011263a4e6275899c927d6a57453423150c080c19293c4f63778c907d6a5743301c080011263a4e6275899c927d6a57453423150c080c19293c4f63778c907d6a5743301c0800000000001b30465b70879c917b66503b2611000000000012273b4f63778b9e907c69564331211208020816273a4e61768a92806c5945311d0900000000001d32475c72889d8f78634e38230e0b18222f44596d83735e48331e00000000000000000000000000070f171e24292d313334343433312d29231c150c020000000000000000000000000414222d333434333332323233333434343026190a000f1d2a3234343333323233333434322a1d0f00000000000000000a1d3144576a7d91998673604d3a4c60748877634f3b2814000000000000001f344a5f748b87705b46301b00122434424a4b4d5e73889d907b66534d4b4b4c4e5359616a75828f837567594a3a2a1908000000001b2f435461636468778ca1927d6b656362584835394a5b6c7d8f9e98897b6e6764635d4e3c29140000001a2e4255656d6f685743334759676d6f64533f2a1601000000000000001a2e41525e606266778ca0968271676260606163686d757d88877c716457493b2c1c0c0000000000000000001021303f4b565f656a6b6b68645d544b40352a1c0c0000192c3e4f595b5d6b809596826c5d5b584d3d3143525a5c5f72879c8f79645b594f3e2c1900172b4054697d929f8a76624e3b2816050000000c2034485d71879a87735f4b37220e00172b4054697d929f8a76624e3b2816050000000c2034485d71879a87735f4b37220e00000000001b30465b70879c917b66503b26110000000000172c41556a7d939d8975604d392614030000000b1e33475c70869a8874604c38230f00000000001d32475c72889d8f78634e38230e1a29353d3f53656f695945311c00000000000000000000000000000003090f14191c1e1f1f1f1e1c19140f08010000000000000000000000000000000511191e1f1f1e1e1d1d1d1e1e1f1f1f1b14090000000c171d1f1f1e1e1d1d1e1e1f1f1d170c00000000000000000014273a4d6073879a907d6956433144586c80806b57432f1c080000000000001f344a5f748b87705b46301b000616242f3536475c72889d8f78634e393636373a3e454e5864718290867768584837251402000000132536444c4e4f5e73899e8f7964504e4d473a34455667798a9b9889796a5d524f4e4a3f301f0d0000001d32475c718285725d48364b607683836d58432e1a0500000000000000122434424a4b4d5e73889d907b66534d4b4b4c4e5359616a75828f837567594a3a2a1908000000000000000a1c2e3f4e5d69737a8082827d7870675d53473a2a1805000f21313d454653687d93947d685346443c2f25344045475a6f859a8d77624c453d31210f001b2f44596e83989985705b47331f0b00000000051a2e43586d83988f7965513c2813001b2f44596e83989985705b47331f0b00000000051a2e43586d83988f7965513c281300000000001b30465b70879c917b66503b261100000000001b30455a6f849998846f5a46311d0a0000000004192e43586c8397907b66523d281400000000001d32475c72889d8f78634e382313263847525451545a564b3b29160000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000a1d304356697c909a8773604d3a293d51657987725f4b3724100000000000001f344a5f748b87705b46301b000006121b2032475c72889d8f78634e38232022252a313b4753627283948676655443311f0c000000081826313838475c72889d8f78634e393833304152637486979a8a796a5b4d3f3a38362e2112020000001b30455a6f848b75604b37495e738887715c47321d08000000000000000616242f3536475c72889d8f78634e393636373a3e454e58647182908677685848372514020000000000001326394b5d6c7a868f94908c8b8b857a7064584734200c000313202a303c52677c93947d68533e2f291e16232c3043586e84998d77624c372a201303001e33485d72889c95806b56412d18040000000000162c40566b829694806a55412c17001e33485d72889c95806b56412d18040000000000162c40566b829694806a55412c1700000000001b30465b70879c917b66503b261100000000001e33485d72889d94806a55402c17020000000000162b40566b809595806b56412c1700000000001d32475c72889d8f78634e38231a2e4255656a635344413a2d1d0c00000000081015161615131212131315161615110a0000000000040d14161615141312131315161616120a000000000000000000000000000000000000000106090c0e0e0e0c0a070200000000000000000000000000000000000000001326394c5f728699917d6a5744312236495d71867a67533f2b180400000000001f344a5f748b87705b46301b00000000071d32475c72889d8f78634e38230e0c10161e29364454657689948372604e3c29160300000009151e2332475c72889d8f78634e38232d3d4e5f7082929c8c7b6b5b4c3d2f2523211b100300000000172c41566b808f79644f3a455a6f858a74604b36210e080000000000000006121b2032475c72889d8f78634e38232022252a313b4753627283948676655443311f0c0000000000071b2f4256697a8b9892857b76747679808276634e39240f0000020e16273c52677c93947d68533e29150c0510192e43586e84998d77624c37220e0200001f344a5f74899f927c67523d2813000000000000152a3f546a809598836e58432e19001f344a5f74899f927c67523d2813000000000000152a3f546a809598836e58432e1900000000001b30465b70879c917b66503b261100000000001f344a5f748a9f917c67523d2813000000000000152a3f546a809599846e58432e1900000000001d32475c72889d8f78634e382b2b32475c71806e58432e271c0f000000000d1a242a2b2b2a29272728292a2b2b2b261c0f010000071521282b2b2a29282728292a2b2b2b261d1002000000000000000000000000000000080f151a1e21232323221f1b1711090100000000000000000000000000000000081b2f4255687c8f9b8874614e3a271a2e42566a7d836f5b47331f0c05000000001f344a5f748b87705b46301b00000000001d32475c72889d8f78634e38230e0000020c18263647596c7d92907d6b5946331f0c0000000002091d32475c72889d8f78634e38293a4b5b6c7d8e9f8f7d6e5d4d3d2e1f110e0c0700000000000815283d52677c917c68533e42576c828d78634e3926231b100300000000000000071d32475c72889d8f78634e38230e0c10161e29364454657689948372604e3c291603000000000c21354a5e72869895837367615f60656c7675634e39240f0000000012273c52677c93947d68533e2913000000192e43586e84998d77624c37220d0000001f344a5f748ba0907a65503b2611000000000000162b40566b80959a866f5a442f1a001f344a5f748ba0907a65503b2611000000000000162b40566b80959a866f5a442f1a00000000001b30465b70879c917b66503b261100000000001f344a5f748ba0907965503b2610000000000000162b40566b82969b866f5a442f1a00000000001d32475c72889d8f78634e404040424a5e73846e58432e190a000000000b1c2b373f40403f3e3c3c3d3e3f404040392d1f0e00041525333d40403f3e3d3c3d3e3f4040403a2e200f0000000000000000000000000008131b232a2f33363838383734302b251d140a0000000000000000000000000007131c25384b5f728598927d6a5744311e13273b4e62768a76634f3b281f180e0100001f344a5f748b87705b46301b00000000001d32475c72889d8f78634e38230e0000000008192a3c4f62768a9b8975624e3b27130000000000001d32475c72889d8f78634e3837475868798a9b92827060503f2f1f100100000000000000071726323a4e63788e826b56413e53687c917c67523d3b372e211100000000000000001d32475c72889d8f78634e38230e0000020c18263647596c7d92907d6b5946331f0c0000000010253a4f64788d9f8b7765554c4a4b505964645746331f0b0000000012273c52677c93947d68533e2913000000192e43586e84998d77624c37220d0000001f34495e73899f9079644f3a250f000000000002182d42576c839799846f5a442f1a001f34495e73899f9079644f3a250f000000000002182d42576c839799846f5a442f1a00000000001b30465b70879c917b66503b261100000000001f34495e73899e9079644f3a250f000000000004192e43586d839899846e59442f1a00000000001d32475c72889d8f786356565656575b6679846e58432e19030000000015283a49535656545352525253545556544b3d2c19060d213343505656545352525253545556554c3e2c1a0600000000000000000000030f1b252f373e44484b4d4e4e4c49453f3930271c10030000000000000000000006162530364255677a8e9b8875614e3b28151f2b34475b6f837d6a574438342b1f0f00001f344a5f748b87705b46301b00000000001d32475c72889d8f78634e38230e00000000000d2033465a6e8397927d6a56422e1a0600000000001d32475c72889d8f78634e38445465758797958573635242322111010000000000000000122435444e5060748a846f5a50505064798f806b5650504b3f2f1d0a000000000000001d32475c72889d8f78634e38230e0000000008192a3c4f62768a9b8975624e3b27130000000012273c52677c919984705b483834373d474f4f47392917040000000012273c52677c93947d68533e2913000000192e43586e84998d77624c37220d0000001d32475c71879b907a65503b26110000000000091d31465b70869a97836c58432d18001d32475c71879b907a65503b26110000000000091d31465b70869a97836c58432d1800000000001b30465b70879c917b66503b261100000000001c31475c70869a907b66503b261100000000000a1e32475c70869b97826c57422d1800000000001d32475c72889d8f786b6b6b6b6b6c6f7785836c57422d1803000000001c314558676b6b6a68676767686a6a6b695b4935200c14283d50616b6b6a68676767686a6a6b695c4936210d0000000000000000000513212d38424b52585d60626363615e5a544c43392e211405000000000000000000112434424b4e5f72859894806b584a4132212d3d484c53687c877462524c483d2d1c0a001f344a5f748b87705b46301b00000000001d32475c72889d8f78634e38230e000000000003172b4054687d929a86715d4934200b00000000001d32475c72889d8f78634e405161728394998977675645352414030000000000000000001a2e4153616666718688736666666666758b846e6666665d4c392511000000000000071d32475c72889d8f78634e38231212100b02000d2033465a6e8397927d6a56422e1a0600000013293e53687d9495806b56412c1f222a343a3a34291b0b000000000012273c52677c93947d68533e2913000000192e43586e84998d77624c37220d0000001a2e43586d8296927c67523d281300000000001024384c6074899e937d69543f2a15001a2e43586d8296927c67523d281300000000001024384c6074899e937d69543f2a1500000000001b30465b70879c917b66503b26110000000000192e42576c8295937c68533e291400000000001225394d61758a9f927c68533f2a1500000000001d32475c72889d8f82828282828282858a95836c57422c1702000000001f344a5f748280807d7c7c7c7d80808278634e38230e162b40566b8082807d7c7c7c7d80808279644f3a240f0000000000000000051423313e4a555e666d727677787876736e6860564b3f3223140500000000000000001a2e41525f636c7d8fa2917b67625e503e2b384b5a6263697b90807065625a4b392611001f344a5f748b87705b46301b00000000001d32475c72889d8f78634e38230e00000000000011263a4f64798fa18c77634e39240f00000000001d32475c72889d8f78634e4d5e6f80909d8d7b6a5a4938271706000000000000000000001e33485d717b7b7b838c7b7b7b7b7b7b7b87877b7b7b7a68543f2a1500000000000d192232475c72889d8f78634e38272727251e140603172b4054687d929a86715d4934200b00000013293e53687d94947d68533e29140d1821252521180b00000000000012273c52677c93947d68533e2913000000192e43586e84998d77624c37220d000000152a3e53677b8f95806b56412d19050000000a1a2d4053677b8fa08d78644f3b261100152a3e53677b8f95806b56412d19050000000a1a2d4053677b8fa08d78644f3b261100000000001b30465b70879c917b66503b2611000000000014293d5165798d96826c57422e1a070000000c1d2f4154687c909f8b77634e3a251100000000001d32475c72889d8f7d7d7d7d7d7d7d808690836c57422c1702000000001e33485c6e7478808d939390837b777470604c37220d152a3f54677475788090939394897c7671604d38230e0000000000000002132332414f5c67727a82878b8d8f8d8c88837c73685d504232231201000000000000001f34495d70777d8b919191857a776e5b46313f546877787c88918f8279776954402b15001f344a5f748b87705b46301b00000000001d32475c72889d8f78634e38230e0000000000000d22374c61768ca1917b67523d281300000000001d32475c72889d8f78634e5b6b7c8d9e90806e5d4d3c2b1a0a00000000000000000000001f344a5f748b91919295919191919191919393919191826c57422c17020000000d1d2b363c475c72889d8f78634e3c3c3c3c3a3124150411263a4f64798fa18c77634e39240f00000013293e53687d94937c67523c271200050c10100c050000000000000012273c52677c93947d68533e2913000000192e43586e84998d77624c37220d0000000f24384c5f72869885705c483522120a090e1928384a5c6f83969885705d4935210c000f24384c5f72869885705c483522120a090e1928384a5c6f83969885705d4935210c00000000001b30465b70879c917b66503b261100000000000e22364a5d70849686715d4a3725150e0d121c2a3b4c5e71859896836f5b48331f0b00000000001d32475c72889d8f786868686868686b7280836c57422c170200000000192d3f505c5f636e7d8e96837167625f5d5243301d091125384a585f6063768ca19b8a796a615e5343311d09000000000000000e203141515f6d79858e948a837d7b79797c8288867a6e605141301f0d000000000000001f344a5f737d7c7c7b7b7b7c7c7d705c473240556a7d7d7c7b7b7b7c7d7d6a55402b16001f344a5f748b87705b46301b00000000001d32475c72889d8f78634e38230e0000000000000b20354a5f748ba094806a54402b1500000000001d32475c72889d8f78635768788a9a9483726150402f1e0d0000000000000000000000001f344a5f7382828282908282828282828282908282827d6a55402b1601000005182b3b4951525c72889d8f786352525252524e4233220f0d22374c61768ca1917b67523d281300000013293e53687d94937c67523c2712000000000000000000000000000012273c52677c93947d68533e2913000000192e43586e84998d77624c37220d000000081c304356687a8c8c7764514030241f1e222b37455667798c9f8d7a6754412d1a0600081c304356687a8c8c7764514030241f1e222b37455667798c9f8d7a6754412d1a0600000000001b30465b70879c917b66503b26110000000000071b2e415466788a8d7966534233282322262e3a4858697b8e9d8c796653402c180400000000001d32475c72889d8f78635353535353566276836c57422c1702000000001022323f484a505f7082937c67534c4a494134251301081b2c3b454a53677b8fa2907d6c5b4d494235261401000000000000071a2c3d4f5f6f7d8b978e82766f69666465686d747d8a7d6f5f4e3d2b18050000000000001c304456656867676666666768686454473f3b4e5f686867666666676868604e3b2713001f344a5f748b87705b46301b00000000001d32475c72889d8f78634e38230e0000000000000a1f34495e73899f97826b56412c1700000000001d32475c72889d8f786364758697978775645443322211000000000000000000000000001c304457676b6b6b778c826c6b6b6b6b6b7b917c6b6b6b604e3b27120000000c2135485965676772889d8f7867676767676760513e2b160b20354a5f748ba094806a54402b1500000013293e53687d94937c67523c2712000000000000000000000000000012273c52677c93947d68533e2913000000192e43586e84998d77624c37220d000000001326394b5d6e808f826f5e4e41383433373d4855637385979382705e4b3825120000001326394b5d6e808f826f5e4e41383433373d4855637385979382705e4b3825120000000000001b30465b70879c917b66503b2611000000000000112437495a6c7c8d83716051443c38373a414b586676889990806e5c493623100000000000001d32475c72889d8f78634e3e3e3e3e485e73846e58432e1904000000000414222d3335415264778a7d69544035342e24160700000e1d2936495c6f8397988673604e3d342f25170800000000000000112437495b6d7d8e9c8d7d6f645b54514f505358616c79897d6c5a4835220f00000000000014273948515352525050506071736b635b534c444d5353525050505253534e42311f0c001f344a5f748b87705b46301b00000000001d32475c72889d8f78634e38230e0000000000000a1f344a5f748ba098836c57422c1700000000001d32475c72889d8f78647183939b8a796858473625150400000000000000000000000000152839495356565e738986705b56565663778d826c57565042321f0c0000000f243a4f64777c7c7c889d8f7c7c7c7c7c7c7c6e59442f1a0a1f34495e73899f97826b56412c1700000013293e53687d94937c67523c2712000000000000000000000000000012273c52677c93947d68533e29130000011a2f445a6f869a8d77624c37220d000000000a1c2e3f506170808d7c6c5e544d49484b515a657382929485746452412e1b080000000a1c2e3f506170808d7c6c5e544d49484b515a657382929485746452412e1b080000000000001b30465b70879c917b66503b2611000000000000081a2c3d4e5e6e7d8b7d6f6157514d4c4f555d6876859591827261503e2c1a070000000000001d32475c72889d8f78634e3829293045596a706755412f221201000000000410191e2335475a6d82836f5b4733201a120600000005182b3f5265798c9f8f7b685643311f1b12070000000000000006192d405366788a9b8f7d6e5f5247403c3a3b3e444e5b6a7b8a7764513e2b170300000000000a1b2a363d3e3d3c3b3b4c61768480766f676058524b46403b3b3b3c3e3e3a31231402001f344a5f748b87705b46301b00000000001d32475c72889d8f78634e38230e0000000000000c21364b60768ca097826c57422c1700000000001d32475c72889d92827380909f8e7d6c5b4a3a29180800000000000000000000000000000b1c2b373f40465b708689745f4a404a5f748986705b463c322414050000000f253a4f6479828282889d8f828282828282826f5a442f1a0a1f344a5f748ba098836c57422c1700000013293e53687d94937c67523c2712000000000000000000000000000012273c52677c93947d68533e29140800071c31465b70879b8d77624c37220d0000000000102232425261707d897c7067615e5e60656d7784919184756657463523110000000000102232425261707d897c7067615e5e60656d778491918475665746352311000000000000001b30465b70879c917b66503b2611000000000000000e1f3040505f6d798680746b6562626469707a87948d827263544433210f000000000000001d32475c72889d8f78634e382316293c4c585b56524c40301e0b0000000000000509182b3e5164788a76634f3b281501000000000e2134485b6e82959986725f4c392614060000000000000000000c2135495d708396978472605041342b27252629313d4c5d6f82826e5a46321e0a0000000000000c1922282928272633475967717c86837b736d66605a554f4435272929261e130500001f344a5f748b87705b46301b00000000001d32475c72889d8f78634e38230e0000000000001025394e63788ea395806a55402b1600000000001d32475c72889d8f80838d9d9182705f4e3d2d1c0b000000000000000000000000000000000d1a242a2e42576c828d78634e39475c708689735f4a35322d23150600000d22364a5c6a6b6b72889d8f786b6b6b6b6b6b6453402c170c21364b60768ca097826c57422c1700000013293e53687d94937c67523c2712000000000000000000000000000312273c52677c93947d68534032251b151521354a5f73899e8b76604b36210b00000000000414253443515f6b7782837b7673737579828a928a80726557483928170600000000000414253443515f6b7782837b7673737579828a928a807265574839281706000000000000001b30465b70879c917b66503b26110000000000000001122232414f5c68737d8680797777797d858d8f867b6f62544536261504000000000000001d32475c72889d8f78634e38230e1e2e3b445664675e4d3a261100000000000000000e2235495c7084806b5744301d0900000004172a3e5164778b9e907c6956432f1c0a0000000000000000000012273b5064788ca08e7a675443322318120f10151f2e405265788a75614d38240f00000000000000060e13131312172a3b49545f69737d8988827a746f6962523f2b1713110b020000001f344a5f748b87705b46301b00000000001d32475c72889d8f78634e38230e00000000000015293e53677c91a6917c67523d281300000000001d32475c72889d8f78808f958473625241301f0f000000000000000000000000000000000002142635414853687d917c67524848586d828d77624d4847403324120000071a2d3e4d55565c72889d8f7863565656565652463624111025394e63788ea395806a55402b1600000013293e53687d94937c67523c271200000000000000000000000009161f273c52677c93947d6d5e5043372f2a2a2e3d5064788d9c88725d48331e0900000000000007162533414e5a646d767d8388898b8b89857d766c615548392a1b0a0000000000000007162533414e5a646d767d8388898b8b89857d766c615548392a1b0a00000000000000001b30465b70879c917b66503b26110000000000000000041423313e4b56606a7279808487888786827a72695e52443627180800000000000000001d32475c72889d8f78634e38230e1020354a5f737b69543f2a14000000000000000006192d4054677b8873604c3925110000000d2033475a6d82949a8773604d3a26130000000000000000000000172c40556a7d939b87725f4b3725140500000002112236495d71877b67523d2814000000000000000000000000000c1d2c37424c57616c76828d8f89847d6f5a442f1a050000000000001f344a5f748a87705b46301b00000000001d32475c72889d8f78634e38230e0000000000081c3044586d8296a08c77624e39240f00000000001d32475c72889d8f7870808977665647392a1b0c00000000000000000000000000000000000a1e3144535d5e65798f806b5e5e5e5e697d907b665e5e5c51412f1c08000010202f3a40475c72889d8f78634e404040403e3528180715293e53677c91a6917c67523d281300000013293e53687d94937c67523c27120d1215140f070000000000071827333a3d52677c9394837c6e60544a433f3f424b5a6c809395826d58442f1b0600000000000000071623303c47515a62696e7274767673706a635a4f44372a1b0c000000000000000000071623303c47515e62696e7274767673706a635a4f44372a1b0c000000000000000c141b30465b70879c917b66503b26171006000000000000000413202e3e4a51565e656a6e7072726f6c665f564c40342718090000000000000009111d32475c72889d8f78634e38231f1f24384d6277806a543f2a150000000000000000001124384c5f73877c6854412d1a06000316293d5063768a9d917d6a5744301d0a00000000000000000000001a2f44596e849896826d58432f1b080000000000061a2e43586c82806b56412c1702000000000000000000000000000e1a252f3a444f5964707b86857d746756422d18030000000000001e33485c6d74746a57432f1a00000000001d32475c72889d8f78634e38230e00000000001224384b5f73889c9985705d48341f0b00000000001d32475c72889d8f786370808474655748392a1b0c000000000000000000000000000000001025394e61717373768b847373737373737a8f807373736f5f4b37220d000002111e2632475c72889d8f78634e382b2b2b2923180a081c3044586d8296a08c77624e39240f00000013293e53687d94937c67523c271d21262a2923190c00000000122536454e5054697d94947d827d72675e585454575d69788a9c8b7865513e291501000000000000000005121f2a343e474e54595d5f6060656e746a57433226190c000000000000000000000005122034495d70746c635d5f60605e5b564f473d3226190c00000000000001111e282e30465b70879c917b66503b2f2b231708000000000000001125394c5c6663555055595b5f636361594d433a2f231609000000000000000f1b252a32475c72889d8f78634e38343434364254677b7d69543f2a15000000000000000000091c3043576a7d84705d4936220e0a0c1f3246596c80939b8874614e3a27140100000000000000000000001c32475c70879c937d68533e2a1500000000000000152a3f54697d846e58432e1904000000000000000000000000000008121d27323d47525e6972706a61574939261300000000000000192c3e4f5a5f5f594c3b281400000000001d32475c72889d8f78634e38230e000000000c1d2f4154677a8fa2907c6955412d190500000000001d32475c72889d8f78636170808475665748392a1b0d00000000000000000000000000000012273c52677c8989898e8c89898989898989928a89898979644f3a250f000000000b1d32475c72889d8f78634e38231616140f06001224384b5f73889c9985705d48341f0b00000915293e53687d94937c67523c2f32363b3f3e362a1b0a0000001a2e4154626668708397947d707d847a726d6a6a6c717a88978d7d6d5b4936220e000000000000000000000c1d2b363d42484e545b626a717982806f5a442f1a08000000000000000000000000000b20364b60758380776f676059524c46403b33271808000000000000000e1f2f3b4344475c70879c917b665046443f35261503000000000000142a3f54687a73656264696f747878756b5e4f3f2e1e0d000000000000000c1d2d393f40475c72889d8f78644f4a4a4a4a4b526071847d68533e29130000000000000000000014273b4e62768a7865513e2a1f1f1f283b4e6175899c927d6b5844311e0b0000000000000000000000001d32475c72889d907965503b26110000000000000013283d52677c866f5a442f1a05000000000000000000000000000000000a15202a35414c565d5c554e44392b1b09000000000000000f21313e464a4a453c2e1d0b00000000001d32475c72889d8f78634e38230e0000000c1a2a3b4c5e708497978572604d3926120000000000001d32475c72889d8f7863516170808575665748392b1c0d000000000000000000000000000012273c52677c8888888990888888888888888b8d88888879644f3a240f00000000001d32475c72889d8f78634e38230e000000000c1d2f4154677a8fa2907c6955412d190500081827323e53687d94937c67524244474b505452483927140100001e33485d717b7c828f90907d686c78838782808082868d91887c6f604f3e2c190600000000000000000004172a3b4952575d63696f767d8683776d62523f2b170200000000000000000000000000091d32465866707b86837b746d66605b55504536241100000000000000182b3d4d585a5b6074899e937d695d5b5a524432200c00000000000014293e536678837877797d84898d8f897c6d5d4c3b2a1805000000000000172a3b4a5456575f74899f917c69615f5f5f5f6065707d8f7d68533e2913000000000000000000000c1f33465a6d82826d5a46343434343444576b7d929c8975624e3b2815020000000000000000000000001d32475c72889d8f78634e39240f0000000000000012273c52677c866f5a442f1a050000000000000000000000000000000000020d18232e39434847413a31281c0d00000000000000000313202b32343431291e100000000000001d32475c72889d8f78634e38230e060b131d2a3848586a7b8e9c8b79685643301d0a0000000000001d32475c72889d8f78634e5161708085756657493a2b1c0e010000000000000000000000001025394e6170727272808f79727272727272848b7572726e5e4b36210d00000000001d32475c72889d8f78634e38230e0000000c1a2a3b4c5e708497978572604d3926120000132536444d53687d94937c675557595c606469665644301c0800001e33485d7079797878797975645a666f777d83868786827c756a5e514232210f000000000000000000000a1f334759666b71777d848b867a70655b504435231000000000000000000000000000000316293a49545e68737d8988827a756f6a6353412d18040000000000001e32475a6b6f70747d909999877872706f624f3b26120000000000000f2337495a6a7a898c8f9396908b8786887a6a594734200b0000000000001d324659686b6c707c8fa099877b76747474747579828e947d68533e29130000000000000000000003172b3e5165798975624e4a4a4a4a4a4d6074889b93806c5946321f0c000000000000000000000000001d32475c72889d8f78634e38230e0000000000000012273c52677c866f5a442f1a050000000000000000000000000000000000000006111c272f33322d261e150b00000000000000000000030e171d1f1f1c160c00000000000b131d32475c72889d8f78634e38231a1c1f262f3b4856667688998e7d6d5c4a382614010000000000001d32475c72889d8f78634e425161708085756758493a2c1f130a04010000000000000000000a1e3144535c5c5c677c917d685c5c5c5c6b828e78645c5b50412e1b0700000000001d32475c72889d8f78634e38230e060b131d2a3848586a7b8e9c8b79685643301d0a00001b2f435461666a8095937c686a6c6e7175797d73604b37220d0000192d41536164646363646462574d535c63696d70706f6d6861584d4032231403000000000000000000000d22374c617680868c92897d73685d53483e332617060000000000000000000000000000000b1c2b37414c56606b76828d8f8a847d705b46301b060000000000001f344a5f7486878685848484848686867d68533e2913000000000000071a2b3c4d5c6a78838987827b76716f758277634d38230e0000000000001f344a5f748283868b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b7c68533d281300000000000000000000000f2236495d70857d6a5f5f5f5f5f5f5f6a7d909d8a7663503d291603000000000000000000000000001d32475c72889d8f78634e38230e0000000000000012273c52677c866f5a442f1a050000000000000000000000000000000000000000000a141b1e1d19120b02000000000000000000000000000000000000000000000000101d272d32475c72889d8f78634e382f2f31343a424c59667484948d7d6f5f4f3e2d1b09000000000008111d32475c72889d8f78634e384251617080867667584a3c30261e1916140d04000000000000021426354147474e63788d826c57474753687c927c6853463f322311000000000b131d32475c72889d8f78634e38231a1c1f262f3b4856667688998e7d6d5c4a3826140100001f34495e727b7c889a937d7d808284878a8e8f79644f3a250f0000112435444d4f4f4e4e4f5261675f514d51575c6164645f564d453b2f23140500000000000000000000000b20354a5d6e78828882766b61564b40362b21160800000000000000000000000000000000000d1a242e39444e59636f7a858680756957432f1a050000000000001e33475b6c70706f6f6e6e6e6e6f6f707063503b2712000000000000000e1e2f3e4d5a666f73716d67615c5a647370604c37220d0000000000001e33485d6f7474747474747474747474747474747474747472634f3b26110000000000000000000000061a2d4154687c86747474747474747474869994806d5a4633200d00000000000000000000000000001d32475c72889d8f78634e38230e0000000000000012273c52677c866f5a442f1a0500000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000d1e2e3a4243485d72889d8f78644f46444446494e555f6a768493897c6e60514131200f00000000000e1b252a32475c72889d8f78634e383342516170808676685a4e4339322d2b282115070000000000000817242d32364b5f748a86705b463a4f64788e826b56412c221405000000101d272d32475c72889d8f78634e382f2f31343a424c59667484948d7d6f5f4f3e2d1b090000001f34495e737c808690937d7d8080828384868778634e39240f000006172631383a3a3938455a6f7c6f6263666b717678787267594a3a291807000000000000000000000000071b2e40505c656d726f64594e44392e23190e040000000000000000000000000000000000000007121c27313c46525d6872716a63584b3a281400000000000000182b3e4e595b5b5a5a585858585a5a5b5b534533200c000000000000000011202f3d49535b5e5c58534c4746555e5d5243301d09000000000000192d40515d5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5e544533200c0000000000000000000000001225394c6073888b8b8b8b8b8b8b8b8b909e8a7764503d2a170400000000000000000000000000001d32475c72889d8f78634e38230e0000000000000012273c52677c866f5a442f1a05000000000000050d111212121212121212121212121212121212121212110e06000000000000000000000000000000000000000000162a3c4c56585a60748a9f927d6a5f5b5a5a5b5e6269727c888c82776b5e504232231303000000000b1c2c383f40475c72889d8f78634e41403b425161708086786b60554d4743403d332515040000000000000611191d32475c708689735e49364b60758a846f5a45301b060000000d1e2e3a4243485d72889d8f78644f46444446494e555f6a768493897c6e60514131200f000000001b30435563676a73808f7c686a6a6b6c6e6f706d5d4935210c00000008141e232525242f44596c7d8077777b80868b8f8e8577685847362512000000000000000000000000001122323e4951585d5c52473c31261c110600000000000000000000000000000000000000000000000a141f2934404b565d5d574f463b2d1d0b000000000000000f20303d49545b5c5a52464c565c5c584f4236271604000000000000000002111f2c3740464847433e383337434949413425130100000000000011223240484a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a494336271604000000000000000000000000091d3044576b808374747474747474859995826e5a4734210e0000000000000000000000000000001d32475c72889d8f78634e38230e0000000000000012273c52677c866f5a442f1a0500000000000b172126272727272727272727272727272727272727272727221a0e01000000000000000000000000000000000000001c3146596a6e6f737d909b9a897a73706f6f7073777d858a82796f65594d4032231405000000000015283a4a5456575f74899f907b665956554e404b54617082897d7269615c5856504333210d000000000000000003192e43586d838c77624d38475c718788725d49341f0a000000162a3c4c56585a60748a9f927d6a5f5b5a5a5b5e6269727c888c82776b5e50423223130300000000142637454f52566170837c6754555657585a5c5a4f402d1a0600000000020a0e0f0f162a3d4f6070808d8d9095948e89868686756554412e19050000000000000000000000000413212c363e44484740352a1f14090000000000000000000000000000000000000000000000000000020c17222e38434848433b33291d0f00000000000000000e223648586770726e64555d6a70716c60503e2b1703000000000000000000010e1a242c3133322f2a241e263034342e241607000000000000000514222d3334343434343434343434343434343434343434342f251809000000000000000000000000000115283b4f63768a77645f5f5f677a8f9f8c7864513e2b18050000000000000000000000000000001d32475c72889d8f78634e38230e0000000000000012273c52677c866f5a442f1a0500000000091a29343b3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c362c1f0f000000000000000000000000000000000000001e33485e7384868786868686868788878686868784807b756e665d53483c2f2214050000000000001c304558676b6c707c8f9d9683736e6b6a5e4c5a696b6e798f8f857c75706c6b61503d2814000000000000000000152a3f54697d907a66513c44596d838c76614c37220d0000001c3146596a6e6f737d909b9a897a73706f6f7073777d858a82796f65594d40322314050000000000091928333a3d4353687c7c6752404042434547463e312210000000000000000000000d20314251616f7c86888580797470707883715c47321c0700000000000000000000000000030f1922292f33322d23180d02000000000000000000000000000000000000000000000000000000000005101b262f33332e2820160c00000000000000000014293e51657684888273606a7b86877d6d5a46321d0800000000000000000000000711181c1e1d1a150f09141b1f1f1a12060000000000000000000511191e1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1b13080000000000000000000000000000000c2033475a6e82806c594a5d70859896836f5c4935220f000000000000000000000000000000001d32475c72889d8f78634e38230e0000000000000012273c52677c866f5a442f1a05000000001427384750525252525252525252525252525252525252525251493d2d1b080000000000000000000000000000000000001d32475b6d727270706f6f6f70707273737373716f6b66605a524940352a1e1204000000000000001e33485e7382838688888888888883827b6650607682838988888888888683806b56402b1601000000000000000012273c51657a877d68533e40556a808679644f3a250f0000001e33485e7384868786868686868788878686868784807b756e665d53483c2f221405000000000000000a162025283a4f63737364503b2c2c2e3032312b211304000000000000000000000213243342515e697173706a645f5b5b69746c5a45311c06000000000000000000000000000000060e151b1e1d19110600000000000000000000000000000000000000000000000000000000000000000009131b1e1e1a140c0400000000000000000000172c42576c82959d907b677287999c8a74604b36200b0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000004182b3f52667989756153667a8da08d7966533f2c1906000000000000000000000000000000001d32475c72889d8f78634e38230e0000000000000012273c52677c866f5a442f1a05000000001c304456646767676767676767676767676767676767676767655b4b382410000000000000000000000000000000000000182b3e4f5a5c5c5b5b5a5a5a5b5c5d5e5e5e5e5c5a56524c463e362d23180d0100000000000000001d32475c6f747473737272727273737473634f5e70747473727272727273747467543f2a150000000000000000000e23384c6070726c604e3b3c506471706a5d4a36220d0000001d32475b6d727270706f6f6f70707273737373716f6b66605a524940352a1e1204000000000000000000040c10203345555e5f5647342117191b1c1c170e0300000000000000000000000006152433414d565c5e5b56504a464b595f5b4e3d2a160200000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000172c42576c82969f917c6772889b9e8b75604b36210b0000000000000000000000000000050d1112121212121212121212121212121212121212121212120e07000000000000050e1315120c03000000000000000000000000000000000000000000000000000f23364a5d71857d695c7083969783705d4936231000000000000000000000000000000000001d32475c72889d8f78634e38230e0000000000000012273c52677c866f5a442f1a05000000001f344a5f737c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7967533e29140000000000000000000000000000000000000f21313e4647474646444444464748484949484745413d38322b231a100600000000000000000000192c3f515d5f5f5e5e5c5c5c5d5e5f5f5e5545525d5f5f5e5d5c5c5c5d5e5f5f584a382511000000000000000000091d3043525c5d585042323446555c5c574d3f2d1b07000000182b3e4f5a5c5c5b5b5a5a5a5b5c5d5e5e5e5e5c5a56524c463e362d23180d010000000000000000000000000416283743494a443829170500000000000000000000000000000000000000000615232f3a42474846413c36313b464a473e301f0e00000000000000000000000000000000000000000000070c1012131313110e0904000000000000000000000000000000000001090f141515130f090200010b121616130c030000000000000000152a3e526678868b8474616b7d8889806f5b47331e09000000000000000000000000000c1821262727272727272727272727272727272727272727272727221a0e010000000a1722282a271f160c010000000000000000000000000000000000000000000000071b2e4255697c867266798c9f8d7a6753402d1a0700000000000000000000000000000000001d32475c72889d8f78634e38230e0000000000000012273c52677c866f5a442f1a05000000001f34495e7278797c8693939390878483838383838489919393806a54402b150000000000000000000000000000000000000313202b31323230302f2f2f3032333334343332302c28231d170f0700000000000000000000000010223240484a4a484847474748484a4a49433741494a4a484847474748484a4a453b2c1b0800000000000000000001132534404748443d32242837424747423b2f2110000000000f21313e4647474646444444464748484949484745413d38322b231a10060000000000000000000000000000000a192630343430271a0b0000000000000000000000000000000000000000000005121d272e3233312d27211d2a3234332b20120200000000000000000000000000000000000000040d141b20252729292826231e18110a010000000000000000000000000009141d24282a2a28231d150d131e262b2b2720170d040000000000000f2337495a6972747066575f6c73746e61523f2c18040000000000000000000000000a1b2a353b3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c362c1f0f0000081928353d3f3b33291e130700000000000000000000000000000000000000000000001226394d607488796f82959885715d4a3724110000000000000000000000000000000000001d32475c72889d8f78634e38230e0000000000000012273c52677c866f5a442f1a05000000001b2f435461636468778ca19482726e6c6c6c6c6c6e74808d97826b56402b1600000000000000000000000000000000000000030e171c1d1d1b1b1a1a1a1b1c1e1e1f1f1e1d1b17130f090300000000000000000000000000000414222d3334343333323232333334343430262e34343433333232323333343431291d0e00000000000000000000000716232d32332f29201519252e32322e281e1103000000000313202b31323230302f2f2f3032333334343332302c28231d170f0700000000000000000000000000000000000009141b1f1f1c1409000000000000000000000000000000000000000000000000000a13191d1e1c18130d0c171d1f1e180f02000000000000000000000000000000000000000c1620282f35393c3e3e3d3b38332d251d140900000000000000000000000d1a2631383d3f3f3d3831292025313a40403b332a20170e0500000000071a2c3c4b565d5f5c54484e595e5f5b51433422100000000000000000000000000015283947505252525252525252525252525252525252525252525251493d2d1b08001325374651544e463b3025180b000000000000000000000000000000000000000000000a1d3145586c8083778b9f8f7b6754412e1b080000000000000000000000000000000000001d32475c72889d8f78634e38230e0000000000000012273c52677c866f5a442f1a0500000000132536444c4e4f5e73899e90796558575757575759616e7d8f826b56412c1700000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000511191e1f1f1e1e1d1d1d1e1e1f1f1f1b141a1f1f1f1e1e1d1d1d1e1e1f1f1d160c000000000000000000000000000611191d1e1a150d0308121a1c1c19140b01000000000000030e171c1d1d1b1b1a1a1a1b1c1e1e1f1f1e1d1b17130f090300000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005121e29333c434a4e52535352504c47413930261b100300000000000000000c1c2b38444c525454524c453c3334424d55554f463d342a21180d000000000e1e2d3a43484a4741373d45494a463e34251605000000000000000000000000001c3144576467676767676767676767676767676767676767676767655b4a372410001a2e4255646962584e4236281a0b0000000000000000000000000000000000000000000215293c5063778a82959985725f4c38251200000000000000000000000000000000000c141d32475c72889d8f78634e3823160f04000000081218273c52677c866f5a442f1a1208000000081826313838475c72889d8f78634e424242424245505f7083836c58432d1800000000000000000000000000000000060a0d101213131313110f0c080300000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000b141a1b191208000000000000000000000000000000000000000000000000000000000508080600000000000000000000000000000000000000000000000000000615222f3b464f585e636768686765615b554c43392d21140600000000000007192a3a495660676a6a6660584f46435260696a625950473e342b1e0f000000000f1c272f3334332d252a303434322b22160700000000000000000000000000001f344a5f747c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7967533e2914001e33485d727d756b605446382919080000000000000000000000000000000000000000000d2034485b6f838f9e8f7c6955422f1c0800000000000000000000000000000001111e282e32475c72889d8f78634e382f2b221506000b19252d2f3e53687d87705b46312d25190b00000009151e2332475c72889d8f78634e382c2c2c2c3242536679846f5a442f1a00000000000000000000000000070f151a1f232527292929282624211d18120c0500000000000000000000000000000000000000000000000000000000000810161a1e1f1f1d1b17130d05000000000000000000000000000002070a0c0d0d0b0804000000000001010000010100000000000000000000000000000000000002070a0c0d0d0b08040000000000010100000101000000000000000000000004090b0b0a0500000000000000000000000f1d282f302d251c13090000000000000000000000000000000000000000000000000611191e1e1a1308000000000000000000000000000000000000000000000006152433404d58636b72787b7d7d7c7976706860564b3f322415060000000000112437485867737b80807b746c62584f60707d80756c635a51473c2d1b09000000000a141b1e1f1e1912161c1f1f1d170f050000000000000000000000000000001f34495e7278797c869393938f868383838383838383868b939393806a543f2a15001d32475b6e7a887d7164564737261402000000000000000000000000000000000000000005182c3f53667a8e998673604c392613000000000000000000000000000000000d1f2f3b4344485e73889d8f78634e45443e33241306192937414448596d828974604c44413729190700000002091d32475c72889d8f78634e382317171724374a5e7287705c47321c000000000000000000000009131b23292f34383a3c3e3e3e3d3b3936312d27211912080000000000000000000000000000000000000000000000000009131c242b2f33343432302c2721170a00000000000000000000000810161c1f222222201d19130c0a1115161615161616151108000000000000000000000000000810161c1f222222201d19130c0a1115161615161616151108000000000000040e181e21211f19110600000000000000000c1d2d3a434641382f261c12040000000000000000000000000000000000000000000917242d33332e251a0e0100000000000000000000000000000000000000000313243342515e6a7580878d8a8682828286847c72685c50423324150500000000192d40536676859095948f8880756b606c7d8f928980766d645a4a39251100000000000000000000000000000000000000000000000000000000000000000000001b2f435461636468788da29380716e6c6c6c6c6c6c6c7076828f95806a55402b1600182c3f505d69788a8374655543311f0c0000000000000000000000000000000000000000001024374b5e7286907d695643301d0a00000000000000000000000000000000172a3d4d585a5b61758b9f907b675c5a595142301d0f233647545a5d6676898f7c6a5d5a544736241000000000001d32475c72889d8f78634e38230e0b18222f44596d83735e48331e00000000000000000006111c262f373e43494c4f5253535352504e4b46413b352d251b0e0000000000000000000000000000000000000000000005101c2630383f44484a494745413c34281908000000000000000006111b242b303437373735322d271f1c252a2b2b2a2b2b2b2a251b0e0000000000000000000006111b242b303437373735322d271f1c252a2b2b2a2b2b2b2a251b0e000000000514212b323636332d2418090000000000000016293b4b575b544b42392f221404000000000000000000000000000000000000000718273541484842382c1f1103000000000000000000000000000000000000000f20314251616f7c88938b8076706c6b6c707782867a6e605142332312010000001d32475c708395a29183797980887d7374899c9b8d8787827768543f2a150000000000000000000000000004080a0b0b0a08050100000000000000000000000000132536444c4e4f5f74899f8f786458575757575757575b64708090826b56412c17000f21323f4b5b6c7d928372604e3b281501000000000000000000000000000000000000000b131b2f4256697d8873604d3a27160f050000000000000000000000000000001d32465a6b6f7074809099968477726f6e604d3824152a3e52656f7177849499897a726f65533f2b1600000000001d32475c72889d8f78634e38230e1a29353d3f53656f695945311c00000000000000000b17232e39424a52585d6164676868686766635f5b55504841382c1e0e00000000000000000000000000000000000000000916222e39434c53595d5f5e5c5a555046372512000000000000000a17232e373f45494c4c4c4a47413b332e393f40403f4040403f382c1d0c00000000000000000a17232e373f45494c4c4c4a47413b332e393f40403f4040403f382c1d0c0000031423323e474b4b4840362718070000000000001c3145596970675f554c403222100000000000000000000000000000000000000013253645535d5d554a3d2f2112020000000000000000000000000000000000071a2c3e4f6070808d9788796d635b5756575c646f7c8c7d70615141301e0d0000001f344a5f748a9f99857365646a747d867b8ea08d7c7172777c6a55402b1600000000000000000000060d14191d1f21211f1e1a150f080000000000000000000000081826313838485e73899f8d77624c424242424242424752617285836c57422d18000414222d3d4f617589907d6b5744301c08000000000000000000000000000000000003111d272e313a4e61747c6a574432302b22170900000000000000000000000000001f344a5f7486868684848484848686867b66503b26172c42576c828786848484848687836c57422c1700000000001d32475c72889d8f78634e382313263847525451545a564b3b2916000000000000000e1c2835414c555e666c7276797c7d7d7d7c7b7874706a645d544a3c2c1a060000000000000000000000000000000000000a192733404b565f676d727473726f6a6454412e190000000000000b1a2835414a535a5e6162625f5b564f463e4c54565654555656544a3b2916020000000000000b1a2835414a535a5e6162625f5b564f463e4c54565654555656544a3b291602000e203242505a60605c53453624120000000000001e33485e73857a72685e50402e1b080000000000000000000000000000000000091c304254637072675b4d3f30200f0000000000000000000000000000000000112437495b6d7d8f998978695b504742404248515e6d7d8f806f5f4e3c2a180500001f34495e73899e94806a555057616a747d919a86715e5d64675e4d3a2612000000000000000006101921282d3234363634332f2a241c13090000000000000000000009151e2333485e73899f8d77624c372c2c2c2c2c2d344355677a846e59442f1a000004101f3245596d829788735f4b37220e000000000000000000000000000000000011212f3a424747455664675e4e4647453e35271808000000000000000000000000001e32475a6c70706f6f6e6e6e6e6f70706f604d3924192a3f536670706f6f6e6e6e6f70706654402b1600000000001d32475c72889d8f78634e38231a2e4255656a635344413a2d1d0c0000000000000f1e2c3946525e68727982878c85807b79797c808789857d7770675a4936220e00000000000000000000000000000000000a19283744515d68727b83878989878480715c47321c00000000000819293846535d676e7376777774706a62594f5c686b6b6a6a6b6b675845311d0800000000000819293846535d676e7376777774706a62594f5c686b6b6a6a6b6b675845311d0800162a3d4f606d7576706353412e1a0600000000001c3145596c808f857b6e5d4b38241000000000000000000000000000000000000f24384c5f718285796b5d4e3e2d1c0b000000000000000000000000000000061a2d405366788b9c8e7c6a5a4b3e332d2b2d34404f6072858e7c6b594734210e00001c31465a6e829494806a5646444e57667b9197836c574850524c40301e0b000000000000000c18232d353c42464a4b4b4a48443e382f261b100400000000000000000002091e33485e73899f8d77624c3722171717171826384b5f7386705b46311c00000002162a3f53687c928f7965513c2712000000000000000000000000000000000b1d2f3f4c565c5c584f50524c545b5c5a514536261401000000000000000000000000182b3d4e595b5b5a5a585858595a5b5b5a52443d332a374048565b5b5a5a5858595a5b5b564837241100000000001d32475c72889d8f78634e382b2b32475c71806e58432e271c0f0000000000000e1e2d3c4a5764707b858e8c8277706a666464676b727c87938c857865513c271200000000000000000000000000000000091928374655626f7a868f92887d777373766c5945301b0000000001142637475664707a83888c8d8c8a857d766c61667a828280808282745f4a341f0a0000000001142637475664707a83888c8d8c8a857d766c61667a828280808282745f4a341f0a001c31455a6d7d8a8b82715d4935200b000000000016293c4f627589988d7a6753402c18050000000000000000000000000000000014283d52677b8f978a7b6c5c4b3a29170500000000000000000000000000000d2135495d7083969784705e4d3c2d2018161922314255687b8f897664513e2b170300172b3f526576869286736459514950667b9197826b56403b3c392f221201000000000002101d2a35404950575b5f60605f5d58534b43392e211406000000000000000000001e33485e73899f8d77624c37220d000000081c3044596e83725d48331e0000000010253a4f64788f947d6955402b160100000000000000000000000000000014273a4c5d6a70716c605049596770726e635443301d090000000000000000000000000e20303d444646444443434344444b555b5c5950433948535a5c5a53474443434444464642382a1a0800000000001d32475c72889d8f78634e404040424a5e73846e58432e190a0000000000000a1b2c3c4b5a6875828d94877a6e645c55514f4f52575f69758392947d69543f2a150000000000000000000000000000050916263746556472808d988d80746a635e5e605c4e3d2a16000000000b1e3143556574828d9388807978787a80887d73677c93978a7b76746f5c48331e09000000000b1e3143556574828d9388807978787a80887d73677c93978a7b76746f5c48331e09001f34495e73899ca08d77624d38230e00000000000d203346596c809297836f5b4834200d00000000000000000000000000000000152a3f546a808c92988a79695846352210000000000000000000000000000013283c5065788da08f7a6754412f1e0f0400051425384c60758994826d5a46331e0a000f233547586774808982766c655d55667b9197826b56402b27241d110400000000000211202e3b47525c646b7073757674726d675f564b3f322415060000000000000000001e33485e73899f8d77624c37220d00000001162b405467736c5a46321d000000000d22374c62778c97836c58432d18030000000000000000000000000000001a2e43576a7b86877d6d5a52667785888272604c38230e00000000000000000000000002121f2a2f30302f2f2e2e2e394b5b6870726d61524757666f726f655645332e2f2f30302e261a0c0000000000001d32475c72889d8f786356565656575b6679846e58432e19030000000000051728394a5a69778693938475685c5148413c3a3a3d434c5864738495826c57422d180300000000000000000000060e151a1e22344454647383919a8b7c6f62574e49484b483f30200d0000000013273a4d607283929283756b656363666b737d84777c9396826c615f5d513f2d19050000000013273a4d607283929283756b656363666b737d84777c9396826c615f5d513f2d1905001f34495e73889b9d8c77624d38230e00000000000316293c4f6275899c8b7763503c28150100000000000000000000000000000013283d516472777c858e877564523f2d1a0700000000000000000000000000182d42566b80949c88735f4b38241200000000091d31465b70859a8a76624d3925100006182a3a4957626d767d8680787169667b9197826b56402b160f09000000000000000f202f3e4c59646f7880868884838386827a72685d50423324140400000000000000001e33485e73899f8d77624c37220d000000001125384a585e5a4e3d2b17000000000b21364b60768c9a856f5a442f1a050000000000000000000000000000001d32475c7187999c8a7560586d82969c8f7a66503b261100000000000000000000000000010d161a1b1b1a1a19192c405568798587806f5d50647583888374624e3a251a1a1b1b191309000000000000001d32475c72889d8f786b6b6b6b6b6c6f7785836c57422d1803000000000010223446576777889695857466584b3f352d27252528303a4755667789846f5a442f1a05000000000000000006111a22292e33364051627283929b8b7b6c5e51453b343336342d21120200000003192d42566a7d909986746458504e4e5157616c78877c93947d68544a48403222100000000003192d42566a7d909986746458504e4e5157616c78877c93947d68544a484032221000001b3045596b7c8788806f5d4834200b0000000000000d203346596c809393806b5844301c090000000000000000000000000000000e223547565e6269717b88826f5c4a372410000000000000000000000000001c31465b70859a97836d5944301c080000000002182d42576c8297917c68533e291400000c1c2b3945505a626a727982857d757b9197826b56402b1601000000000000000b1d2d3e4d5c6a76828c877c746f6c6d717883867a6e60514232211000000000000000001e33485e73899f8d77624c37220d00000000081b2c3a4548463d30200e000000000b21364b60768c9b87705b46301b060000000000000000000000000000001d32475c72879b9e8b7560586d83979f907b66503b2611000000000000000000000000000000000000000000001b30455a6f84989c8c7762556a80949d927c68533e2813000000000000000000000000001d32475c72889d8f82828282828282858a95836c57422c170200000000071a2d3f51637586969988776656483a2d2219120f10141d293748596b7d87715c47321d08000000000000000c18232d363d43484b4c5d6f80919f8e7d6d5d4e4033281f1e211f19100300000000081d32475c708699917c6956463c38383c444e5b68768695947d68533e332d22140400000000081d32475c708699917c6956463c38383c444e5b68768695947d68533e332d221404000016293c4e5e6a72726d6152402d19050000000000000316293c506376899b8873604c3824110000000000000000000000000000000518293843494e555e6a7788796653402c19050000000000000000000000001e33485e73889d947d69543f2b16010000000000162b40556a809596826c57422d180000000d1b28333d464f575e656d747b83829197826b56402b16010000000000000417293a4b5c6b7a8892837569605a57585d6572828c7d7060503f2e1c09000000000000001e33485e73899f8d77624c37220d00000000000e1c283033322b201202000000000b21364b60768c9c87705b46301b060000000000000000000000000000001a2f44586b7d8889806f5b536779878a8474614d38240f000000000000000000000000000000000000000000001b30455a6f85999f8d7763566b8095a0927d68533e2913000000000000000000000000001d32475c72889d8f7d7d7d7d7d7d7d808690836c57422c1702000000000f2336495c6f8292a18e7c6a5949392a1c1005000000000b1a2a3c4e617589745f4a34200a000000000002101d2a35404951585d6062697b8d9e9482705f4f3f3022160b090b0a050000000000000a1f344a5f748a9f8b76624d3a28232328313d4a58677c93947d68533e2919110500000000000a1f344a5f748a9f8b76624d3a28232328313d4a58677c93947d68533e291911050000000d1f30404e575d5d59504334221100000000000000000d203346596c80938f7b6754402c19050000000000000000000000000000000b1a262f3439414c596a7b836f5c4834210d0000000000000000000000001f344a5f748ba0917b66513c2712000000000000152a3f546a809599846e59442f1a0000000d1821272a333b434a515960676f7b9197826b56402b16010000000000000e2134465869798a96857464574c45424349546374868f7d6e5d4b392613000000000000001e33485e73899f8d77624c37220d0000000000000b151c1e1d170e0200000000000b21364b60768c9c87705b46301b0600000000000000000000000000000015283b4e5f6c73746e61524a5b69727470655644311e0900000000000000000000000000000000000000000000182d4155697b888a82715e516577868b8576634f3a2611000000000000000000000000001d32475c72889d8f786868686868686b7280836c57422c170200000004182b3f5266798c9e9684715e4d3b2b1b0c000000000000000d1f3245596d8276614c37220d000000000111202e3b47535d656c7175777787999c8976645245392d1f1102000000000000000000000b21364b60768c9d88725d48331e0e0e151f2c3c52677c93947d68533e2913000000000000000b21364b60768c9d88725d48331e0e0e151f2c3c52677c93947d68533e29130000000000011222303b434848453d33251605000000000000000004172a3d5063768997836f5c4834210d0000000000000000000000000000000009141b1f262e3b4c5e70847764503c29150100000000000000000000001f344a5f748ba09079644f3a2510000000000000172c41566b82979b866f5a442f1a00000f1e2b353c3f3e3930363e454c53667b9197826b56402b1601000000000004172b3e51637587988b786756473a312c2e364557697c908c7a685643301c090000000000001e33485e73899f8d77624c37220d000000000000000000000000000000000000000b21364b60768c9c87705b46301b060000000000000000000000000000000c1f30414e595e5f5b51433d4c575d5f5c5447382715020000000000000000000000000000000000000000000012263a4c5d6b73746f635448596872747167584633200c000000000000000000000000001d32475c72889d8f78635353535353566276836c57422c17020000000a1e33475b6e8296a18d7a6654412f1e0d000000000000000002162a3d5164726e5e4a36210c000000000f1f2f3e4c59656f7982878b8c8888888c80756c62574a3d2f2011010000000000000000000b21364b60768c9c87705b46301b06000212273c52677c93947d68533e2913000000000000000b21364b60768c9c87705b46301b06000212273c52677c93947d68533e2913000000000000071b2e404f5a5b554736230f000000000000000000000d203346596c80938c7764503c2915010000000000000000000000000000000000060b14273a4d617488806c5844301c0900000000000000000000001e33485e73889d9079644f3a250f0000000000051a2f44586e839899846e59442f1a000a1c2d3c485054534d413329313b50667b9197826b56402b160100000000000b1f33475a6d809395826d5b4938291d1719273a4d6075899886725f4c3824100000000000001e33485e73899f8d77624c37220d000000000000000000000000000000000000000b21364b60768c9c87705b46301b06000000000000000000000000000000011323313d45494a463e342e3a43494a474137291a0a00000000000000000000000000000000000000000000000a1d2f3f4d585e5f5b53453b4a565d5f5d55493a291704000000000000000000000000001d32475c72889d8f78634e3e3e3e3e485e73846e58432e19040000001125394e62768a9e9985715d4a372412000000000000000000000e223547565d5b50412e1b070000000b1c2d3d4d5c6a76828d90867c76737273777d878074685b4d3e2f1f0e0000000000000000000b21364b60768c9c87705b46301b06000012273c52677c93947d68533e2913000000000000000b21364b60768c9c87705b46301b06000012273c52677c93947d68533e29130000000000000b20354a5d6d7065523e2a150000000000000000000004172a3d5063768a93806c5844301d090000000000000000000000000000000000000a1d3043576a7d908873604c38241100000000000000000000001c31465b70859a917b66503b261100000000000b1f33485d71879b96826b57412c17001427394b596469685f51402e263b50667b9197826b56402b1601000000000011263a4e62768a9e8d7965513e2c1a0b010a1d31465a6e84988f7b67533f2b160200000000001e33485e73899f8d77624c37220d000000000000000000000000000000000000000b21364b60768c9c87705b46301b060000000000000000000000000000000004131f2a303434322b221d272f3434322d24190b0000000000000000000000000000000000000000000000000011212f3b44494a4740352c3942484a4842382b1c0c00000000000000000000000000001d32475c72889d8f78634e3829293045596a706755412f2212010000152a3f53687c91a5927d6955422e1b0800000000000000000000051829384348473f3223110000000416283a4b5b6b7a88948d7d7269625e5c5e626a748286796b5c4d3d2c1b0900000000000000000b21364b60768c9c87705b46301b06000012273c52677c93947d68533e2913000000000000000b21364b60768c9c87705b46301b06000012273c52677c93947d68533e29130000000000000e23384d6377826b56412c1702000000000000000000000d2033475a6d80938873604c3825110000000000000000000000000000000000001326394d6073879a8f7b6754402c180500000000000000000000182d41566b8094937d68533f2a15000000000114273a4e62778ba0917c67533e2914001b2f435668777d7c6f5e4b38263b50667b9197826b56402b16010000000000172b4054697d929b87725d4936220f000002172c40556a809497836e5945301b0700000000001e33485e73899f8d77624c37220d000000000000000000000000000000000000000b21364b60768c9c87705b46301b060000000000000000000000000000000000020d161c1f1f1d170f0b141b1f1f1e191107000000000000000000000000000000000000000000000000000003111e28303434322c231b262e3334332e261b0d0000000000000000000000000000001d32475c72889d8f78634e382316293c4c585b56524c40301e0b00001a2e43586d8397a18d77634f3a26120000000000000000000000000b1a262f33322c2214050000000e2133465869798a988d7d6e61564d4947494e576371828a7a6b5a4a38271502000000000000000b21364b60768c9c87705b46301b06000012273c52677c93947d68533e2913000000000000000b21364b60768c9c87705b46301b06000012273c52677c93947d68533e29130000000000000e23384e6378836c57422d18030000000000000000000004172a3d5063768a8f7b6854402d190500000000000000000000000000000000091c2f4356697c909c89836f5b4834200c0000000000000000000013283c5064788c96826d58432f1c090000020f1f3143566a7d929d8a75614d392410001e33485d7286948d7a67533f2b3b50667b9197826b56402b160100000000001b3045596e839897826d58432f1a0600000013283d52677c919d88735e4934200a00000000001e33485e73899f8d77624c37220d000000000000000000000000000000000000000b21364b60768c9c87705b46301b060000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000010c151b1f1f1d181009131a1e1f1e1a1209000000000000000000000000000000001d32475c72889d8f78634e38230e1e2e3b445664675e4d3a261100001d32475c71879b9c88735e4935200c0000000000000000000000000009141b1e1d18100400000004172a3d506375879891806f5f5043393432343a45536475888978675644321f0c000000000000000b21364b60768c9c87705b46301b06000012273c52677c93947d68533e2913000000000000000b21364b60768c9c87705b46301b06000012273c52677c93947d68533e29130000000000000f253a4f6479846e58432e190400000000000000000000000e2134475a6d809384705c4835210d000000000000000000000000000000001225394c5f7286999380857763503c2814000000000000000000000d2135495c6f829487725f4b3927191211151f2d3d4e6073869994826d5a46321e0a001e33485e73889b97836d5945313b50667b9197826b56402b160100000000001e33485d72889c947d69543f2a150000000010253b50647990a18c77624c37220d00000000001e33485e73899f8d77624c37220d000000000000000000000000000000000000000b21364b60768c9c87705b46301b06000000000000030f181d1e1e1d1b1a1a1a1b1d1e1e1d191105000000000b151b1e1e1d1c1b1a1b1b1d1e1e1e191106000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001d32475c72889d8f78634e38230e1020354a5f737b69543f2a1400001f34495e73899e99846f5a45301b060000000000000000000000000000000000000000000000000b1f33475a6d80929a877462514132261f1d1f283646586a7d928573614e3b2815010000000000000b21364b60768c9c87705b46301b06000012273c52677c93947d68533e2913000000000000000b21364b60768c9c87705b46301b06000012273c52677c93947d68533e291300000000000011263b506579866f5a442f1a05000000000000000000000004172a3d5063768a8c7764503d2915010000000000000000000000000000081b2e4155687b8f9d8a767d806b5743301c0800000000000000000006192c3f526476888f7a685645362b27262a313d4b5b6c7d909b897764513e2b1703001b3044586c7d8f9d8974604d3a3e53687d9397826b56402b160100000000001f344a5f74899f917b67523c2712000000000f243a4f64798fa48f78634e38230e00000000001e33485e73899f8d77624c37220d000000000000000000000000000000000000000b21364b60768c9c87705b46301b0600000000000313212b32333332302f2f2f30323333322d23150600000d1c283033333231302f3030323333332d2416070000000000000000000000000000000002080d111415161614120e0a04000000000000000000000000000000000009111d32475c72889d8f78634e38231f1f24384d6277806a543f2a1500001f344a5f748ba097826c57422d180300000000000000000000000000000000000000000000000011263a4e62768a9d917d6a57443323140a060b18293b4e62768b917d6b5844301c080000000000000b21364b60768c9c87705b46301b06000012273c52677c93947d68533e2913000000000000000b21364b60768c9c87705b46301b06000012273c52677c93947d68533e291300000000000011263b50667b87705b46301b060000000000000000000000000e2134475a6d8294806c5844311d0900000000000000000000000000001124374b5e71859894826d7587735f4b38241000000000000000000000102335475869798a8573635448403c3b3e454e5b69798a9b8e7d6b5a4734210e000015293c4e6070808e907d6a584947586d829694806a543f2a150000000000001f344a5f748ba0917b66503b2611000000000f253a4f64798fa48f79644f3a250f00000000001e33485e73899f8d77624c37220d000000000000000000000000000000000000000b21364b60768c9c87705b46301b0600000000000f21313e474848474644444446474848474033241300081a2b3944484847464544454647484848413425130100000000000000000000000000070f161d2226292b2b2b2a27231e18110800000000000000000000000000000f1b252a32475c72889d8f78634e38343434364254677b7d69543f2a1500001f344a5f748ba095806b56402b1601000000000000000000000000000000000000000000000000172c4055697d929e8a75614e3a2715040000000c1f33485c71869b8873604b37230e0000000000000b21364b60768c9c87705b46301b06000012273c52677c93947d68533e2913000000000000000b21364b60768c9c87705b46301b06000012273c52677c93947d68533e291300000000000012273c52677c88725c47321d0800000000000000000000000004172a3d5164778a8874604d39251100000000000000000000000000071a2d4154677a8e9e8a77646e837a67533f2c18040000000000000000000618293b4b5b6b79888271655b5451505358616c7988978e80705f4e3c2a180500000d1f314252616f7c898875665e5c6475889c8e7965513c27120000000000001f344a5f748ba0907b66503b26110000000010263b50657990a48f78634e38230e00000000001e33485e73899f8d77624c37220d000000000000000000000000000000000000000b21364b60768c9c87705b46301b060000000000192c3e4f5b5e5e5c5b5a5a5a5b5c5d5e5c5142301c0810243749575e5e5c5b5a5a5a5b5c5d5e5d5243301d090000000000000000000000040f1a232b31373b3e4040403f3c38332c241b110500000000000000000000000c1d2d393f40475c72889d8f78644f4a4a4a4a4b526071847d68533e291300001f34495e73899f95806a543f2a15000000000000000000000000000000080d0e0c0600000000001b3045596e849899846f5b46321e0b0000000004192e43586d83988f7a66523d28130000000000000b21364b60768c9c87705b46301b06000012273c52677c93947d68533e2913000000000000000b21364b60768c9c87705b46301b06000012273c52677c93947d68533e291300000000000013293e53687d89735e48331e09000000000000000000000000000e2134475a6d82907c6854412d19060000000000000000000000001023374a5d70849795826d5a677a836f5b4733200c000000000000000000000c1d2d3d4d5c69768383776f696666686d747d8a958a7d70615141301f0d0000000214243443515f6b7682857973727682929383715e4a36220e0000000000001e33485e73889d917b67523c27120000000013283d52677c92a18c77624c37220d00000000001e33485e73899f8d77624c37220d000000000000000000000000000000000000000b21364b60768c9c87705b46301b0600000000001e33485c6d737372706f6f6f707272736f5f4b37220d152a3f5367737372706f6f6f7072727370604c38230e000000000000000000000916222c363e464b505354565654514d4740372e22170a00000000000000000000172a3b4a5456575f74899f917c69615f5f5f5f6065707d8f7d68533e291300001d32475c71879b97826b56402c160100000000000000000000000006131c2223211a10020000001e33485d72889c95806a55412c18030000000000162b40566b829695806b56412c170200000000000b21364b60768c9c87705b46301b06000012273c52677c93947d68533e2913010000000000000b21364b60768c9c87705b46301b06000012273c52677c93947d68533e2913010000000000152a3f546a808b745f4a34200a0000000000060b0d0b0500000005182b3e5164778a84705c4935210d000000000000000000000006192d405366798d9e8b7764515f738876634f3b281400000000000000000000000f1f2f3e4c5965707983837d7b7b7d8288918b83786c5f5142332313010000000006162533414e59646e778086888a8f8b82746554412e1b070000000000001c31455a6f8499947d69543f2a1501000003172c41556a80949d88735e4934200a00000000001e33485e73899f8d77624c37220d000000000000000000000000000000000000000b21364b60768c9c87705b46301b0600000000001f344a5f74838687878686868787848378634e38230e162b40566b828386878686868788888379644f3a250f0000000000000000000b1927333f49525a6065686a6b6b6966615b534a4034271a0b0000000000000000001d324659686b6c707c8fa099877b76747474747579828e947d68533e291300001a2e43586d829698836d58432e19050000000000000000000000051524303738362d20110100001f344a5f748a9f927c67523d2813000000000000152a3f546a809598846e58432e190400000000071321364b60768c9c87705b46301e170c111b273c52677c93947d68533e291d140800000000071321364b60768c9c87705b46301e170c111b273c52677c93947d68533e291d140800000000162b40566b808c76604b36210c00000005111a202220190f0100000e2134475a6d828c7864503d291602000000000000000000000f2336495c6f839695826e5b48586c807d6a57432f1b08000000000000000000000111202e3b47535d666e757b80838483827c776f665a4e4133241505000000000000071523303c47515b636b71767879766f64564736251200000000000000182c41566a809397826d58432f1b0700000a1e32465a6f849997836e5a45301c0700000009111e33485e73899f8d77624c3722120b0000000000000000000000000000000000000b21364b60768c9c87705b46301b0600000000001d314558686c707987969b8b7c736f6c6a5c4935210c14293d51626c6d707a8d9b9b9282756e6a5c4a36220d00000000000000000a1a293745515c666e75797d8082807d7b766f675d524538291a0a00000000000000001f344a5f748283868b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b7c68533d28130000152a3e53677b909b86715c47331e0a0000000000000000000000102233424b4e4a3e2f1e0b00001f344a5f748ba0907965503b2611000000000000162b40566b80959b866f5a442f1a0500000006162530364b60768c9c87705b463733291c232e363d52677c93947d68533e3631261808000006162530364b60768c9c87705b463733291c232e363d52677c93947d68533e3631261808000000172c42576c828d77624d38230e00000414232e3537342c1f10000005182b3e5164778b806c5945311d0a00000000000000000005182b3f5265788c9f8c7865523e50647887725f4b372310000000000000000000000002101d2a394b5b635f61666a6c6e6e6b68636155493d312315060000000000000000061726333e444750575d616464615b52473b3022120200000000000013273b5064778c9b87725e4a362311020615273a4d61758a9e8f7b68533f2b170200000f1b252a33485e73899f8d77624c372b261e1103000000000000000000000000000000050e21364b60768c9c87705b46301b0b010000000016293b4a55575c68778994806c5f5a57564c3e2c1a060e21344451575863778ca19785736459564d3e2d1a0700000000000000071828384755626e7982898f908b8988888a8a837a6f63564738281706000000000000001e33485d6f7474747474747474747474747474747474747472634f3b261100001024384c6074889b8b76614d3925120000000000000000000004192c40515f635c4d3b271300001f34495e73899f9079644f3a250f000000000003192d43586c839799846f5a442f1a05000000122434424b4d60768c9c87715c4e4c463a2a32414a4c53687d94947d69544d4b443626140100122434424b4d60768c9c87715c4e4c463a2a32414a4c53687d94947d69544d4b44362614010000192e43586e838f78644f3a240f000010223240494c483d2e1d0b09080e2134485b6e828874604d3925120000000000000000000e2135485b6e829595826f5c4936495d70857a66533f2b1704000000000000000000000000162c4055697872685e55575858616c7573614d382313060000000000000000001224354451595c5b554a4c4f4f585c5c574e40301f0d0000000000000c2134485c6f82948d796653402e1e171924334456697c91988673604c38241000000c1d2d393f40485e73899f8d77624d41403a2f2110000000000000000000000000000008162129364b60768c9c87705b4630271e12040000000c1d2c3840424a5a6b7d907c67524542413a2e200f00051626343e43576a7d929f8c79675646413b2f2010000000000000000113243646566573808c958d837b767372727479808a827365564635241200000000000000192d40515d5f5f5f5f5f5f635f5f5f5f5f5f5f5f5f62615f5e544533200c0000091d3144586b7d91917c6855412e1c0b0000000000000000000c2033475c6f786a56412c1702001d32475c71869b907a66503b26110000000000091d32465b70869a97826c57422d18030000001a2e41525f6266798e9f8a756663615848353f505e62646d829697836e6462605443301c08001a2e41525f6266798e9f8a756663615848353f505e62646d829697836e6462605443301c0800001a2f445a6f85907b66503b26110000192c3f515d625b4c3a27201e1e1d1c2b3e5164778b7c6855412d19060000000000000004172b3e5164778b9e8c7966523f2d4155697d836e5b47331f0b000000000000000000000000172c41566a7a857b71675d606a757d8474624d38230e000000000000000000071b2e4153626d7270685a4a4f5f6b71716a5e4e3c291501000000000005192c3f5264768996826f5d4c3c312c2e364251617386998d7a695643301d090000172a3b4a54565760758ba08f79655856554d3f2d1b07000000000000000000000000051626343d404b60768c9c87715c47403b302211000000000e1b252b2d3c4e607387806a56422e2c271d10020000081626394c6073869a95826f5c4a382c271e1102000000000000000b1e3042536474849195877a6f67615e5c5d60656d778484746453412f1c0900000000000011223240484a4a4a4a55697872675d534a4d57616b7573614d433627160400000215283b4e6173869785715e4c3a29190c010000000000000a18293c4f6376826c57422c170200192e43586c8296927c67523d281400000000001124384c60758a9e927d69543f2a15000000001f34495d70777a84919191837b787664503b465b6e77797d8c91918d807977725f4a35200b001f34495d70777a84919191837b787664503b465b6e77797d8c91918d807977725f4a35200b00031c31465b7087927c67523d281300001d32475c6f776a56423835333332323035485b6e8285705d4935220e000000000000000d2134475a6d829496836f5c4936263a4e61758a76624e3b271300000000000000000000000013273b4d5c6b7a89857a70737d888374655645321e0a0000000000000000000d22364b5e708088857866535a6d7d87877c6c5844301b0600000000000010233547596a7b8b8d7b6a5a4d4541434953606f80918f806e5d4b3927140100001d324659686b6c707c8f9d9482726d6b6a5d4a36220d0000000000000000000000000e21344451565762778d9e89735e57554e402f1c08000000000911161f3144576a7d86715d4a3723130b00000000081c2f4256697c909f8c7764523f2d1b130b01000000000000000114273a4d5f718293978777695d534d4947484b515a66738382705e4c3926120000000000000514222d3334343441566a7b857a70665c606a747d8474624d38251809000000000c1f32445668798a8e7b695847372a1e150f0c0b0c0f141d283647596b7d806a54402b15000015293e52667a8f95806b56422d19060000000b1b2d4053677b8fa08c77634f3a2611000000001f344a5f747d7c7c7b7b7b7c7c7d7a66513c475c717d7d7c7b7b7b7b7c7c7d75604b36210b001f344a5f747d7c7c7b7b7b7c7c7d7a66513c475c717d7d7c7b7b7b7b7c7c7d75604b36210b00081e33485d7288947d69543f2a1500001e33485d7286725f514d4a484847474646465164778b7865513d2a1602000000000003172a3d5063768a9e8d796653402d1e32465a6e827d6a56432f1b0700000000000000000000000b1e2f3e4d5c6a79888d8387908373645647382816030000000000000000000f253a4f64798e9c96836d585f748a9b9b88735e48331e0900000000000006182a3c4d5d6c7b8988786b605957585d65707d8e8c80706150402e1c0a0000001f344a5f74828386888888888887838279644f3a250f00000000000000000000000015293e51626b6c707d919d8e7b6f6c6a5e4c38230e0000000000000214273b4e6175897966523f2b1804000000001125384b5f72869996826f5c4835231000000000000000000000081c3044576a7c8f9d8b7968594b4038343233363d48556576887b6855422e1a060000000000000511191e1f1f273b4d5d6c7a8a83796f727c878374655645321e0a0000000000021527394a5b6c7c8c87756555483b3129242120212429303946546476897c68533e281300000f23374b5f72859786705c493523130b0b0f1a28394a5d7083979784705c4834200c000000001c31445765686767666666676768685d4b3842556468686766666666676768665946321e09001c31445765686767666666676768685d4b4342556468686766666666676768665946321e09000b20354a5f748a96826b56412c1702001a2f43586d827c6d65625f5e5d5c5c5b5b5b5b5b6e82826d5945311e0a000000000811203346596c80939683705d4a3723172b3f53667a86725e4a3723140d040000000000000000000111202f3e4c5b6978889691827264554638291a0a000000000000000000000f253a4f64798f9f97836d5860758a9d9d88735e48331e09000000000000000c1e2f3f4e5d6b7782897d746e6b6d7178828f867a6e615142322210000000001f34495d70747473737272727273747472614d39240f000000000000000000000000172c42576c828386888888888984827b66503b2611000000000000000b1e3246596d80826e5b4733200c000000071b2e4154677a8fa08c7966523f2c1906000000000000000000000f23374b6073879a93806d5c4a3b2e241f1d1e222a3747596b7d85715d4935210c000000000000000005090a0b1e2f3f4e5c6b79898c828690837364564738281603000000000000091b2c3d4e5e6d7c8a837365594d443d39363536393d434c57637283907b66503b26110000081c2f4255687a8c8c7864524131252020232c384657687a8d9f8d7a6754412d1905000000001528394851535252505050525253534c454c535b636b73705e50505052525352493b291703001528394851535252505050566a766f675f574f48505353525150505052525352493b291703000d22374c62778c98846e59442f1a0400152a3e53687c8b807a777473727270707070707070788975614d3926120000000e1b252a3c4f6276899c8d7a6653402d1a1523374b5f73877966523f2c282115070000000000000000000211202e3d4b5a697787827263544637281a0b00000000000000000000000d22374b5f72828a887a67545b6e8089897d6d5945301c0700000000000000001121303f4d59656f7880858482838687827a72685d504233241504000000001a2e41515d5f5f5e5e5c5c5c5d5e5f5f5e5444321e0a000000000000000000000000162b4055687474737372727273737473634f3a25100000000000000003162a3d5164788a76634f3c28150100001024374a5d7084989683705d49362310000000000000000000000014293e52667a8f9f8b7764503e2d1d110a06090e192a3b4e62768a78644f3a26110000000000000000000000011121303e4d5b6a79889591827264554638291a0a00000000000000000f1f30404f5e6c798684766a6058524d4b4a4b4e52585f697482918f78644f3a240f0000001326384a5c6d7d8f826f5f4f42393535383e49566474869792826f5d4a37241100000000000a1b2a363d3e3d3c3b3b3b3c40464c535960676f76808476614c3b3b3c3d3e3d372b1d0c00000a1b2a363d3e3d3c3b3b43586d80837a726a635c554e48433e3b3b3b3c3d3e3d372b1d0c000010253a4f64798f9b86705c47311c07001025394e63778c958f8c8b89888887878787878786868c7c6955412e1a06000b1c2c383f47596c80929784705d4a372a1a25333d43576b80826e5c4a413d3325150400000000000000000002101f2d3c4b596873706254453628190a000000000000000000000000081c304355646f74736a5c4b51616d73736d60503d2a160200000000000000000312212f3c48535c646b7073747474716d675f564b3f32241506000000000011233341494a4a484847474748484a4a4943362715020000000000000000000000001125394a595f5f5e5e5c5c5c5e5e5f5e554533200c00000000000000000e2135495c7083806b5744301d090006192d405366798da08d7a6653402d1a070000000000000000000000182d42576c82959a85705c4834210f00000000000c1f33465b70857d68543f2a150000000000000000000000000312202f3d4c5b697887827263544637281a0b00000000000000000001122231404e5c687480887d746c6663605f6063666c737b8692998c77624c37220d000000091b2d3e4f6070808d7c6d5f554e4b4a4d525b667483939384736352402e1b080000000000000c19222829282726354450555b60676d747b83867b70665946332627282928231a0d000000000c192228292827262a3e51616c7782867d777069635d57524a3c2b27282928231a0d00000013283d52677c919e89735e4934200a000b2034495d72889b98989898989898989898989898989885715d49341f090015283a4a54576576899c927c6856534838263343505657657a8c79685a56504333210d00000000000000000000010f1e2d3b4a575e5d53443627180a000000000000000000000000000013253746535b5f5e574d3e42505a5f5f5a504232210e0000000000000000000003111e2a36404950565b5e5f5f5f5c58534b43392e2215060000000000000515232e343434333332323233333434342f25180900000000000000000000000000091b2d3b464a4a484847474748484a494337281604000000000000000006192d4054677b8873604c39251212122336495c6f83969885705d4a3724110000000000000000000000001b30455a6f869a95806b56412d1905000000000003182d41566b82826c57422d180300000000000000000000000002111f2e3d4b5a6874706254453628190a0000000000000000000000041322303e4a57626d768087827b77767476777b80878f938d867c6f5d49341f0b000000001021314251616f7c887d7268635f5f62666e7885929083746556453422110000000000000000060e131313172b3f52626a6f757b8288897d73695e54493b2917121313130f07000000000000060e1313131211223443505a646f79858b847d77716c675a4834201313130f0700000000162b40556a8094a18c77624d38230e00061b2f44596d838683838383838383838383838383838383735f4a341f0a001c314558676c7383949d927d6f6b6656422e3c50616b6c72809286776e6b61503d28140000000000000000000000000f1d2c3a44494841352618090000000000000000000000000000000819283540474a49443b2f333e464a4a463d322314030000000000000000000000000d19232d353c4146494a4a4a47433e372f261c1004000000000000000005111a1f1f1f1e1e1d1d1d1e1e1f1f1f1b13080000000000000000000000000000000f1d2a3234343333323232333334343026190a000000000000000000001124384c5f72877c6854412d2727272b3e5265788c9f8f7a6754412e1b080000000000000000000000001d32475c72889c917c67523d28130000000000000014293e53687d846e59442f1a050000000000000000000000000001101f2d3c4a575f5d53453627190a000000000000000000000000000412202d3945505a636b7379808487898b8b8a8886837d7972695f51402d1a06000000000314243342515e6a7680857c777474777b828b91897d7164564738271705000000000000000000000000001a2f445a6f7d848a908d82766c61564c41372b1d0c000000000000000000000000000000000000051625333d47525c67727c88928c868277634e38230e00000000000000001a2f44586d8398a08f7965503b26120000162a3f53687c796d6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c665644301c07001f344a5f74828689888888898482715c473240566b8083868888888983806b56402b16000000000000000000000000000e1c283034332d24170800000000000000000000000000000000000a18232c32343430281e212b313434312a211405000000000000000000000000000006101921282d3134343434322f2a241c13090000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000c171d1f1f1e1e1d1d1d1e1e1f1f1b14090000000000000000000000081c3043576a7d84705d493c3c3c3c3c485b6e82959985725f4b382512000000000000000000000000001d32475c72889d8f79644f3a25100000000000000012273c52677c866f5a442f1a050000000000000000000000000000010f1e2c3a444a494135271809000000000000000000000000000000020f1b28333d4750585f656a6e727374747473706d69645e564d4233231100000000000006152432404d59636c757c8287898b8a88837d756b60544738291a0a0000000000000000000000000000192d425668747d85867a6f64594f44392f241a0d00000000000000000000000000000000000000000715202b353f4a555f6b76828882796e5e4b37220d00000000000000001b30465b7086898b897d68533e2913000011253a4e62727262575757575757575757575757575757544839271401001e33485c6f7473737272727373746d5945303f536674747372727273747467533f2a1500000000000000000000000000000b151b1f1e191106000000000000000000000000000000000000000610181d1f1f1b150b0e161c1f1f1c160e030000000000000000000000000000000000060d13181c1f1f1f1f1d1a150f0800000000000000000000000000070f14151514131313131415171819191917140f0902000000000000000000000000000000000000000000000000000000000000000000000000000000000014273b4e62758a78655252525252525264778b9e8f7c6955422f1c08000000000000000000000000001d32475c72889d8f78634e38230e0000000000000012273c52677c866f5a442f1a05000000000000000000000000000000000e1c283134342e2417090000000000000000000000000000000000000a16202a333c444a5055595c5e5f5f5f5e5b5854504a433a30241505000000000000000615222f3b46505961686d71737474726e6961594e4336291a0b0000000000000000000000000000001327394a57616a7072685d52473d32271c120700000000000000000000000000000000000000000000030e18222d37424d59646e726d655c50412f1c0800000000000000001a2e435768717474736f62503b271200000b1f3345545d5d5445424242424242424242424242424240372a1b0a0000192d3f515d5f5e5e5c5c5c5e5f5f5c4f3d2a3749585f5f5e5c5c5c5e5f5f58493724100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000d1a23292a2a2929292929292a2c2d2e2e2e2c28241d160d030000000000000000000b151b1e1e1e1d1d1d1d1d1d1e1e1e1d170e0200000000000000000000000b1f33465a6d82826d676767676767676d82949986735f4c39261300000000000000000000000000001d32475c72889d8f78634e38230e0000000000000012273c52677c866f5a442f1a0500000000000000000000000000000000000b151c1f1f1a11060000000000000000000000000000000000000000030e17202830363c404447494a4a4a484643403b362f271d130600000000000000000004111e29333d454d53585c5e5f5f5d59544e463c3125180b000000000000000000000000000000000a1c2c3a454e555c5d564b40352a1f150a000000000000000000000000000000000000000000000000000005101b25303b47515b5d5952493f32231200000000000000000014273a4a565c5f5f5e5b524433200c00000316273642484842362c2c2c2c2c2c2c2c2c2c2c2c2c2c2b241a0c00000010223240484a4948474747484a4a483e31202b3a454a4a48474747484a4a453b2c1a08000000000000000000000000050c11151719191816130f09030000000000000000000000000000000000000000000003080c0e0f0f0d0a060100000000000000000000000000000000000000000003080c0e0f0f0e0c0905000000000000000000000000000b1c2b373e3f3f3f3e3e3e3e3e3f4142434343413d383129201509000000000000000d1c2830333333323232323232333333322b2012010000000000000000000003172a3e516579897c7c7c7c7c7c7c7c7c8a9d907d695643301d0a00000000000000000000000000001d32475c72889d8f78634e38230e0000000000000012273c52677c866f5a442f1a050000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000040d141c22272c2f323434343433312e2b26211b130a010000000000000000000000000c17202a31393f4347494a4a4845403a32291f13070000000000000000000000000000000000000e1c28323a41474843392e23180d02000000000000000000000000000000000000000000000000000000000008131e29343f4748443e362d2114050000000000000000000a1c2c3943474a4a494640352616040000000918252e33332e251817171717171717171717171717161108000000000414222d33343433323232333434332c21131c283134343332323233343431291d0e000000000000000000000008111920252a2c2e2e2d2b28231d160e050000000000000000000000000000000000000811181d21232524231f1b150e0500000000000000000000000000000000010a11181d2123252523211e1a140d050000000000000000000015283a4953545453535353535354565758585856524c453c32271a0d0000000000081a2b3944484848474747474747484848463d301f0d00000000000000000000000e2236495d7084838383838383838383979b8773604d3a27140000000000000000000000000000001d32475c72889d8f78634e38230e0000000000000012273c52677c866f5a442f1a05000000000000081115161616161616161616161616161616161616161615110a000000000000000000000000000000000000070d12171a1d1f1f1f1f1e1c1916120d0700000000000000000000000000000000040d161e242a2e3234343433302b261e160c0200000000000000000000000000000000000000000b151e262d32332f271c10060000000000000000000000000000000000000000000000000000000000000000010c17222c3233302a221a100400000000000000000000000e1c272e32343434312c231708000000000008131a1e1e1a13080000000000000000000000000000000000000000000511191e1f1f1e1d1d1d1e1f1f1e190f030b151c1f1f1e1d1d1d1e1f1f1d160c0000000000000000000005101b252d343a3f42434343403d38322a22180e02000000000000000000000000000005111b242c3236383a3a38342f2921180f04000000000000000000000000000a141e262c3236383a3a3837332e2821180f0500000000000000001c314558666a6a6868686868686a6b6c6e6e6d6b6660594f44382b1d0e0000000010243749575e5e5e5c5c5c5c5c5c5d5e5e5a4e3d2a160000000000000000000000061a2d4154687c86726c6c6c6c6c75899c917d6a5744311e0a0000000000000000000000000000001d32475c72889d8f78634e38230e0000000000000012273c52677c866f5a442f1a0500000000000e1b252a2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b261d1204000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000020910151a1d1f1f1f1e1b17110b030000000000000000000000000000000000000000000000020b12191d1e1b14090000000000000000000000000000000000000000000000000000000000000000000000000510181d1e1b160f0600000000000000000000000000000a131a1d1f1f1f1c181006000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000916222d3841484f535758585855524c463e352b2014080000000000000000000000000a17232e3740464b4e4f4f4c49443d352b2116090000000000000000000004101c27313a40464b4e4f4f4e4c48433c352b22170b000000000000001f344a5f7480807d7d7d7d7d7d808283848483807b756c6156493b2c1c0b000000152a3f53677373737272727272727273736c5945301b0000000000000000000000001125394c6073877a675757586b7d929b8875614e3b2814010000000000000000000000000000001d32475c72889d8f78634e38230e0000000000000012273c52677c866f5a442f1a05000000000c1d2c383f4040404040404040404040404040404040404040403a2f221200000000000000000000010d15191a1a1a191919191919191a1a1a1710060000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000002090f141719191816120d07000000000000000000000000000003090d0e0e0c0802000000050b0f0f0c06000000000000000000000000000a192734404a545d63686c6e6e6c6a66605a51483d3225180a000000000000000000000b1a2835404a545b60636464625d5851483e33271a0c00000000000000000514212e3a444d555b6063646463605d5750483e34291c0f0100000000001f34495d7076777a849394948e827c7878787a80878880736759493a2917060000162b40566b828385888888888888868383725c47321d000000000000000000000000091d3044576b80836f5c4e6174889b92806c5845321e0b000000000000000000000000000000001d32475c72889d8f78634e38230e0000000000000012273c52677c866f5a442f1a050000000016293b4a545656565656565656565656565656565656565656544d402f1d0a000000000000000002121f292e2f2f2f2e2e2e2e2e2e2e2f2f2f2b23170800000000000000000000000000000000000000000001080d111416161615130f0b06000000000000000000000000000000000000000000000000000003090f1317191a1a1a1916130f0903000000000000000000000000000000000000000000000000000004080b0d0e0e0d0c0a0703000000000000000000000000000000000000000000040f171c1d1a140a00000000000000000000000000000c151e24292c2e2e2e2b27211b120800000000000000000000040e171d222323211d160f070e18202424211a1007000000000000000000000919283744515d6770777d82848483807b756d645a4f433628190a00000000000000000a1a293845525d676f7578797877726c645b5145382a1b0c000000000000041423323f4b56606970747779797876716b645b51463a2d1f1000000000001a2e41525e606266758a9f95806f67646363666a73808f8576675847352311000014293d51626c6d6f7586999d8c7a706e6c6756432f1a0000000000000000000000000114283b4f63768a7764576a7d919c8975624f3c291502000000000000000000000000000000001d32475c72889d8f78634e38230e0000000000000012273c52677c866f5a442f1a05000000001d314558676b6b6b6b6b6b6b6b6b6b6b6b6b6b6b6b6b6b6b6b695e4d3a261100000000000000000f20303c43444444434343434343434444443f35261503000000000000000000000000000000000000060e161c2126292b2b2b2a2824201a130b020000000000000000000000000000000000000000000710171e24282c2e2f2f2f2e2b28231e170f07000000000000000000000000000000000000000000060d13191d2023232323211f1c18130d0600000000000000000000000000000000000514212b31322f271c0e000000000000000000000000101e2831383e41434343403c362e251a0e01000000000000000815212b3237383836312b231a1f2b34393a352d241a110800000000000000061727374655626f7a848c8e86807c7b7c808682776d61544637281908000000000000061728384756636f7a838a8e8784848782776e635648392a1a09000000000012223242505d69737c848a8d888484848680776e64584b3d2e1e0d00000000122434424a4b4d5c70879c907a66534f4e4e51576170809286756452402d1a07000e2134445157585a6a80949b87715c58575449392714000000000000000000000000000c2033475a6e82806c6073879a93806c594633200d00000000000000000000000000000000001d32475c72889d8f78634e38230e0000000000000012273c52677c866f5a442f1a05000000001f344a5f7482828282828282828282828282828282828282827c69543f2a140000000000000005192c3e4e585a5a59585858585858585a5a5a524432200c00000000000000000000000000000000051019222a30363b3e4040403f3d39342e271f150c01000000000000000000000000000000000005101a232b32383d414344444443403d38322b231a1005000000000000000000000000000000000007111921282d3235383838383634312d27211a12090000000000000000000000000000001223323e4647433a2c1c0a000000000000000000000d1e2e3b454d525658585855504a41372c1f11020000000000081726333e464c4e4e4b463e362d303d474e4f4940372e241b1208000000000011233445556472808d93867a716b6766676b727c897d7164554637261504000000000011233546566573828d93867a726e6e727b898073665748372615030000000c1e2f4050606e7a86908f8379736f6e6f737b868275685a4c3c2b1a090000000616242f3536465b70869b9079644f3a38393c445163758994826f5d4a36220e00051626343e424352677c939b866f5a444240382b1b0a0000000000000000000000000004172b3e5266798975697c909e8a7663503d2a170300000000000000000000000000000000001d32475c72889d8f78634e38230e0000000000000012273c52677c866f5a442f1a05000000001f34495d70747679839397978d83807d7d7d7d7d80858e9795806a55402b16000000000000000a1f34485c6b6f6f6e6e6e6e6e6e6e6e6f6f6f624f3b26120000000000000000000000000000000c17222c353e454a505355565654524e49423b32281e13070000000000000000000000000000000b17232d373f464d5256585a5a5a5855514c463e362d22170b000000000000000000000000000004101a242d353c42474b4c4e4e4c4b4945413c362e251b1106000000000000000000000000081c2f41505a5c574a39271300000000000000000005182b3c4c5861676b6e6e6d6a655d544a3d2f2010000000000415263544505a606363605a5249403e4e5a63645c534a41382e25190a0000000a1c2f415263738391938475685e56525052575f6b7888827364544433211000000000091c2e415263738492948475685e59595f6a798b857566554432200d00000316293b4d5e6e7d8c988d7d71665e5a585a5f68758487786a5a493826140100000006121b202f445a6f869b9079644f3a25242734465a6e83978d7965513d291400000816222a2c3c52677c939b866f5a442f2b251a0d0000000000000000000000000000000f23364a5d71857d72869994826d5a4734210d0000000000000000000000000000000000001d32475c72889d8f78634e38230e0000000000000012273c52677c866f5a442f1a05000000001a2e41515d5f6065768ba093806f6a68686868686a707b8a97826b56402b16000000000000000b21364b60768686848484848484848486867d68533e29130000000000000000000000000002101d29353f4951595f64686a6b6b6a67635d564e453b3025180b000000000000000000000000000e1c2935404a535b61666b6d6f6f6f6d6a66615a52493f35291d0f0100000000000000000000000916212d37404950565c5f62636362605e5a56504941392e24180c00000000000000000000000d22374b5e6e726856422d190400000000000000000b2034475a6a757b82838483807971675b4d3e2e1d0b0000000e21334453616d757878746e665c534b5c6c77786f665d544b413728180600001326394c5e70829197857465574b423d3b3d434d5a6a7a8d837262513f2d1a070000001226394c5e70829299877565574b44444c5c6d82948473614f3c291602000c203346596a7c8d9c8f7d6e60544a4543454c576676898877675543311e0a0000000000071a2f445a6f869b9079644f3a250f172b3f54697d9495826c57432e19000000050f15273c52677c939b866f5a442f1a110800000000000000000000000000000000071b2e4155697c867b8f9e8b7764513e2b17040000000000000000000000000000000000001d32475c72889d8f78634e38230e0000000000000012273c52677c866f5a442f1a050000000011233341494a4b5e73889d8f7964545353535353555e6b7b8c826c57422c17000000000000000a1f34485c6d7072747a8999998f7d7572707063503b27120000000000000000000000000312202e3b47515c656d73797d808282807b77716a61584e4236291b0d00000000000000000000000f1e2c3a46525d666e757b808386868683807b756e665c52473a2d1f0e000000000000000000000b1927333f4a535c646b70747778787776736f6a655d544b41362a1d0f0000000000000000050e1623384e6378866f5a442f1a0600000000000000000e23384d63778890968b837d7d8384786b5c4c3a2815020000162a3d506271808a8f8e8982796f655b697a8a8c837970675e544635230f00081c2f4356697b8e9e8b79675647392e282628303c4c5d6f8291806e5c4a3724110000061a2e4155687b8d9f8e7b695847392f2f3e5165798e91806c5945311d090013273b4f6275889a95837060504237302e303948596c80948573604d3a26120000000000001a2f445a6f869b9079644f3a250f12273c52677c939b86705c47311c000000000012273c52677c939b866f5a442f1a050000000000000000000000000000000000001226394d607488859895826e5b4835210e000000000000000000000000000000000000081d32475c72889d8f78634e38230e0300000000000512273c52677c866f5a442f1a05000000000515232e3434475c72889d8f78634e3e3e3e3e3e414d5d6f82836d58432e190000000000000005192d3f4f595b5c5f6c80959c8872615d5b5b534533200c0000000000000000000000011121303e4c58646f7882888e8f8a8786868789867d756a605347392b1c0d0000000000000000000d1d2d3c4a58646f79838a90908b8886848486888a82796f64584b3d2b180500000000000000000b1a293744515c66707880868a8d8f8f8d8b8885807971685e53473b2d1c0a0000000000010d18222a30384e6378866f5a442f23190e0200000000000010253b506479909285786f69686f7d8a7a695744311d0900001c31455a6d80909d968880808582776d7286989f938d847a7164523e2914000f23374b5f72869995826e5c4a39291c1311141e2e405266798e8c796653402d1905000d21364a5d7185989885715e4c3a2a1b22364b60748a9c8874604c37230e00192d42566a7d929f8c7865534232241b191c2a3c5065798f907c6955412d190400000000001a2f445a6f869b9079644f3a250f13283d52677c939e89735e48331e000000000012273c52677c939b866f5a442f1a050000000000000000000000000000000000000a1d3144586c80939f8c7865523f2b18050000000000000000000000000000000007131c2132475c72889d8f78634e38231e160b0000010f1920273c52677c866f5a453020190f0100000005111a1f32475c72889d8f78634e38292929292f3f516478856f5a45301b00000000000000001021313d45464753687c939b866f5a484646413627160400000000000000000000000e1f2f3f4e5c6976828c938a827a75726f6f70747880877d716457493a2b1b0a00000000000000091a2b3b4b5a6875828d958b837c76726f6e6e6f72767c848275695a48341f0b00000000000000091929384755626e79838c948d86827c7b7b7b7c7d8387857a7065594b3a27130000000004121f2b353e454a4e6378866f5a453e362c201304000000000012273c52677b918374675b54535f72888774604d38241000001f344a5f73899d9b89776b6b717a8480778da2918277787d806b56402b160015293e52667a8fa18d7965513e2c1b0b0000001023364a5f73889683705c4834200c0013273c5065798da1907c6854412e1d0c1e33485d72889d8f7a65513c2712001d32475c70869a9985705c4936241407010d22374c61768c9985705c47321d0800000000001a2f445a6f869b9079644f3a250f172b4054697d949f89735e48331e000000000012273c52677c939b866f5a442f1a050000000000000000000000000000000000000215293c5063778b96836f5c4936231206000000000000000000000000000000061625303637475c72889d8f78634e383732281b0b00101f2c34374054697d87715d4837342c1f100000000000061d32475c72889d8f78634e38231313132235495d7187715c47321d00000000000000000313202a30303c52677c939b866f5a4431302d2418090000000000000000000000091b2c3d4d5d6c7a88948c80766d66605c5a5a5c5f646a737d8375675849392817060000000000021427384959697887938e82776f67615d5a59595a5d626870798377624c37220d0000000000000516273747566573808c968b8279726c6866666667696d71788083766956412d18030000001122303c4751595f636578866f5f5a52493d312314040000000014293e53687d87756556493f445a6f85907b67523e291400001f344a5f748a9f95806c59565d67707a84929c887363636a6d62503d281400192e43586c82969b87725d4936220f00000000071c30455a6f84998c77634f3a261100182c41566a80949e8a75614d393124161e33485e73889d937d68533e2913001f344a5f74899f94806a55412d190600000c21374c60768c9f8a745f4b35200b00000000001a2f445a6f869b9079644f3a25122133465a6e83979b87715c47321d000000000012273c52677c939b866f5a442f1a05000000000000000000000000000000000000000d2034475b6f838d79665340352f2416070000000000000000000000000000112434424b4c4e5e73899e8f79644f4d4c463929170a1d2e3d484c505d6f848b7663524c483d2e1d0b00000000001d32475c72889d8f78634e38230e0e1b262e43586d80735e48331e000000000000000000020e161b273c52677c939b866f5a442f1b1811070000000000000000000000021527394a5b6b7b8a96887a6e635a524f4f4f4a474a5057616c79867666564635231200000000000d1f324455677788978b7c70655b534d4845444445484d545d66706c5c4834200b0000000000001022344555657483919184786e655d57535050505254585d646c757d6d58432e18030000091c2f404e5a646d73787a7b8678746e655b4f4132221200000000152b40546a807c6a58473831465a6f8695806b56402b1601001d32475c708598947d6954424a545d677b9198836d584f5658524433210d001d32475c70869b96826c58432e1a060000000000172c42576c8297927d69543f2a15001b30455a6f84999985705b504d42342823374b60758b9f947d68533e2913001f344a5f748ba0917b66513c271200000817283b4f64788ea18c76614c37220c00000000001a2f445a6f869b9079644f3a2526303f506275899d96826d58442f1a000000000012273c52677c939b866f5a442f1a050000000000000000000000000000000000000005182b3f53667a84705d4a4a4a4234251300000000000000000000000000001a2e41525f626368778ca1927d6b6462615747342012263a4c5b62646c7a8c93807065625b4c3a271300000000001d32475c72889d8f78634e38230e1c2c39414351626b665644301b00000000000000000000000012273c52677c939b866f5a442f1a05000000000000000000000000000d1f32445668798a96877769646464646464645d4c5461646464697985746452412f1d0a0000000216293c4f617385968b7a6c5f5c5c5952483d3d4a545a5b5a56545c5a4e3e2c19050000000000081b2e4051627384938f8072665b514b5053565655534f4a495059626860513e2a150100000f24384c5e6b7782888d868086808682786d5f50402f1e0b000000162b40566b8275604d3a313f4f61758997826b56402b160100192d4155687a8b97836f5f534b4350667b9197826b564142433f34261604001f34495e73899e937d68533f2a15000000000000152b40546a809597836c58432d18001e33485d72889d95806b60666052453b38405266798fa3917c67523d2813001f34495e73899e9079644f3a250f040e19263545576a7d93a18c76604b36210c00000000001a2f445a6f869b9079644f3a363a424e5d6e80929f8d7966523e2a15000000000012273c52677c939b866f5a442f1a050000000000000000000000000000000000030c121723374a5e6f746754575f5e5242301c08000000000000000000000000001f34495d7077787c859191918a7d797775634f3a25162c4055697779808a91918f8279776a56412c1700000000001d32475c72889d8f78634e382315283a4a5558545056524839271400000000000000000000000012273c52677c939b866f5a442f1a050000000000000000000000000215293c4f6173869789776879797979797979796954637279797979757d82705e4c3927140000000a1e3245596c7d918f7d6c606c72726d655a4e4c5b676f706f6b645b50443728190a00000000001225384b5d6f809190807062554e585f65686b6b6a68645e574f464f534e4233210e00000013283d52677b8994897c7278866f727d8a7d6e5e4d3b281502000014293e51636e6a5a4635424f5d6d7d9194806a55402b1601001226394b5d6c7a868d7d70665f5750667b9197826b56402d2e2b22170800001f344a5f748ba0917b66503b2611000000000000152b40546a809599846f5a442f1a001f344a5f748a9f937c686f7b7063574f4c515e6f82959e8a76624e39240f001c31465b708499907965503b261117212b3744536375889b9c88735e49341f0a00000000001a2f445a6f869b9079644f4a4b4e555f6c7b8c9d92826f5d4a37230f000000000012273c52677c939b866f5a442f1a0500000000000000000000000000000000081520262c313841515d5f5b636a73705f4b36210c000000000000000000000000001f344a5f737d7d7c7c7b7b7b7b7c7c7d7965503b30282c41576b7d7d7c7c7b7b7b7c7d7d6c57422c1700000000001d32475c72889d8f78634e38231b2f4457686e6654403e362a1b0a00000000000000000000000012273c52677c939b866f5a442f1a05000000000000000000000000091d3145586c7d918d7b6a66797a809090807a79685d6f82908f82797272867b695643301c0900001025394d6175899683705f6f7d878882776c5f57697984878580776d62554637281706000000071b2e4154677a8d948372615254606b73797d8082807c78726b62584c403b32241504000000162b40556a809589796b6378866f5f6f828d7c6a5744311d0900000e2235455358564c3c47535f6d7b8b9c8d7965513c28130000091c2e3f4e5c68727c85837a726a63667b9197826b56402b19160f050000001f344a5f748a9f9079644f3a250f000000000000172c41576b82979b866f5a442f1a001f344a5f748ba0917b666e8082746a6462656e7c8d9f92826e5b47331f0b00182c4155697d90937d68543f2b2029333e485461708292a495826d5945301b0700000000001a2f445a6f869b9079645f5f606369717c8b9a9183736352402d1a07000000000012273c52677c939b866f5a442f1a05000000000000000000000000000000061726323b40464c525860676e767d8577624c37220d000000000000000000000000001c304456656868676766666666676868685c544c443c343c50606868676766666667686860503d291400000000001d32475c72889d8f78634e382f2f32475c72846e58432e23190c0000000000000000000000000012273c52677c939b866f5a442f1a050000000000000000000000001024394d6074889583705e5b6465748b8c7666645c687a8d8f80706560697c86735f4c3824100000162a3f53687c918d796665798d9a8d8b8a7d6f6073878f7d77798280726455453524120000000d21364a5d718598897665545665727d888f8f89868484868780756a5e514233241403000000182d42576c828c7a6a5b6378866f5a667b908874604c38230e0000051727353f4342414d5864707d8c9a9282705d4a36220e0000001021303e4b566068707880867d776f7b9197826b56402b160100000000001e33485d72889d9079644f3a25100000000000061b3044596e849998836e58432e19001f344a5f748ba090796561707d877d787779828d9b92847463513e2b18040012263a4d60738697836f5b4836333c46505a6672808f9f99897764513e2a160100000000001a2f445a6f869b907974747475787d858f938a807264554534231100000000000012273c52677c939b866f5a442f1a05000000000000000000000000000000102335444f555a60666d747a83877c71675a47331f0a00000000000000000000000000142739485153535252505050515254677570676058504841424e535352525050515253534e4233210e00000000001d32475c72889d8f78634e444444464b5f74846e58432e1907000000000000000000000000000012273c52677c939b866f5a442f1a05000000000000000000000000152a3e53687c908c796553494f5e73898b745f4f60728594827061524e61768a7b67533f2b1702001a2f44596d839785705d677c938e7b747b877d6e778d897363656f7c8373635341301d0b000013283c5065798d927d6c59536474839093867b74706e6e70757c867c6f61514232210f0000001a2f445a6f84826e5d4e6378866f5a6479908f7a66513c27120000000917232c3946525e6a76828f9c91857464534332200e0000000312202d39434c555d646c737a82837b9197826b56402b160100000000001b30455a6f8498917b66513c271200000000000d2135495e72889c95806b56412c17001e33485e73889d917b6651606c7780878c8f8f8c87807365564534220f00000a1e314456687a8b8a77655343464f59636d7783909e998b7b6b594835220e0000000000001a2f445a6f869b948c8b8b8b8b8d8d898680776d6255463727170500000000000012273c52677c939b866f5a442f1a05000000000000000000000000000000172b3f5262696f757a82888a8074695f544a3c2b1804000000000000000000000000000a1b2a363d3e3e3c3c3b3b3b3c40566b7d847b736b645c554f49433e3c3c3b3b3c3c3e3e3b3224150400000000001d32475c72889d8f78635a5a5a5a5b5f697a846e58432e1903000000000000000000000000000012273c52677c939b866f5a442f1a05000000000000000000000000192e43586d829685705d4936485e73898b745f576a7c908976645342475c7086836e5a45311c08001d32475c7187937d6a55677c938974606975847c778d8b7460525e6d7d82705f4d3a27140100182d41566b80948a76624f5e70829395857568605b58585c616974828070604f3e2d1b0900001c32475c71877764514e6378866f5a677c91947d68533e29130000000e1e2e3d4a5764707c8894988d807d8270604f3e2b180500000008131b263039414950585f666d757c9197826b56402b16010000000000172c4055697d92947d6954402b16020000000516293c5064788da18f7a66513d2813001c31465b70869b937c68534f5a646c7276787877726c625647382817050000011427394b5c6c7c8c8371615359626c76808a959f94887a6c5d4d3c2a18050000000000001a2f445a6f869b907974747679808982776c635a50443728190a0000000000000012273c52677c939b866f5a442f1a050000000000000000000000000000001a2f445a6f7d84898f8d82776c61574c42372c1e0d0000000000000000000000000000000c19222829292727262626283c4f606b7680878077706a635d58534b3e2d2627272929261f14060000000000001d32475c72889d8f786f6f6f6f6f70737a88836c57422c1702000000000000000000000000000012273c52677c939b866f5a442f1a050000000000000000000000001d32475c7086937d6a554133485e73898b745f617487917d6b59473543586c8289745f4a36210c001f344a5f74898f79655065798f8a745f58657586778a8e78644f4f6072857c6a5744301d09001b30455a6f8598846f5b53677a8e9d8a7766574c464344474d576371827d6d5c4a38261300001f34495e7384705b484e6378866f5f708397937d68533e29130000091b2c3c4c5b6875828e9a92877a6f73887d6d5a4734210c00000a19252f36383733353c444b525a667b9197826b56402b1601000000000012263a4e62768997836e5945311e0c02010713223346596c80949b8873604b37230e00192e43586c829695806b56414751585d616363625e584f4538291a0a000000000a1c2d3e4e5e6d7b898071646c758089939d968c82766a5d4e3f2f1e0d000000000000001a2f445a6f869b9079645f60656c76858a7d6f60503e2d1b0a000000000000000012273c52677c939b866f5a442f1a05000000000000000000000000000000182d425667747d85867b70655a4f443a2f251b0e0000000000000000000000000000000000060e13131312121111112032424e59636e78838c857d77726c675c4a372312121313110b02000000000000001d32475c72889d9086868686868686888e98836c57422c1702000000000000000000000000000012273c52677c939b866f5a442f1a050000000000000000000000001f34495e73898f7965503b33485e73898b745f6b7d918773614e3c2b40556a808d78634e39240f001f344a5f748b8c76614c6075898d77624d5768798486927c67524255687c8773604c382410001e33485d7288937d69555a6e839795826d5a4839312e2f323a4553647588796755422f1b08001f34495d70776955404e6378866f6d7c8d9f8f7a65513c27120001142638495a6a788693998d8074695d6d838a7764503b27130006182836424a4e4c473c2f30373e50667b9197826b56402b160100000000000b1f3346596c80918975614e3b2a1d17161a243140516375899c927d6b5844301c0800152a3e53677c9099846f5b46343d44494c4e4e4c49443c32271a0b000000000000102030404f5e6b778482768089929c978d84796f64594c3f30211100000000000000001a2f445a6f869b9079644f4c50596676898e7d6e5c4a372411000000000000000012273c52677c939b866f5a442f1a05000000000000000000000000000000132639495761697073695e53483d32281d1208000000000000000000000000000000000000000000000000000000021423313c46515b66707b87928d87827a65503b2611000000000000000000000000001d32475c72889d8f797979797979797c828d836c57422c1702000000000000000000000000000012273c52677c939b866f5a442f1a050000000000000000000000001f344a5f748b8c77624d3833485e73898b74707588907c6a574431293f53687d907b66503b2611001f344a5f748b8b745f4a5a6e82917c67534a5b6d808295806b56414d61768b7b67533f2a15001f344a5f748a907b66515e73889d8f7a65513e2b1d19191e273546586b7d85725e4b37230f001a2e41515e625a4b3a4e637886707d8c9b9785725f4b37230e000a1e3143566778899795887b6f6357556a8093806a56412c170011243646545e63615a4d3c2b263b50667b9197826b56402b1601000000000004172a3d4f617384917d6a59483a312c2c2f36414f5e6f8092988674614e3b281501001024394d61758a9d8a75614d39292f3437383837342f292015090000000000000002122231404d5a67737d8b929c968d877a70675d52473b2e21120300000000000000001a2f445a6f869b9079644f3a3c48596b80938c796753402c18030000000000000012273c52677c939b866f5a442f1a05000000000000000000000000000000091b2b39444e555c5e574c40362b20150b00000000000000000000000000000000000000000000000000000000000005141f29343e49535e69758088827a6f614e39240f000000000000000000000000001d32475c72889d8f78646464646464676f7d836c57422c1702000000000000000000000000000012273c52677c939b866f5a442f1a050000000000000000000000001f344a5f748b8b75604b3633485e73898d8786838d8673605142312a3f546a80937c67523c2712001f344a5f73898b745f4a5266798c826e5a475062758899846f5a45485d7288826d58442f1a001f344a5f748b8f78634e5f748ba08b76614c3723131a1f1f1d283b4f63788d7a66523e291500112333414a4c48424d57637886828e9c978978675643301c080012263a4d607385969585776a5d5145556a8095846e59442f1a00192d4053647277766b5a4835263b50667b9197826b56402b16010000000000000d20324455667686887666584c454140444a535f6d7c8d9a8b79685745321f0c00000a1e32465a6d8295907c6854412e1b1f22232322201b150d030000000000000000011427394a5a697785909c988d83797784807467594a3a2917050000000000000000001a2f445a6f869b9079644f3a2a3c5064788d97836f5b46321d080000000000000012273c52677c939b866f5a442f1a05000000000000000000000000000000000d1b28313a414748443a2e23190e030000000000000000000000000000000000000000000000000000000000000000020d17212c36414c57636d736e665d5243311e0a000000000000000000000000001d32475c72889d8f78634f4f4f4f4f536075836c57422d1803000000000000040809060100000012273c52677c939b866f5a442f1a050000020709080300000000001f34495e73898b745f4a3533485e73898b74727379867d70604e3b2c41566b82937c67523c2712001d32475c71878c76604c4a5d6f828a76635045586c809388735e49465b708787715c47321d001f344a5f748a8d77624d5f748a9f89745f4a341f262e3434312a354a5f7489826c58432e19000515232e363b48545f6a747d8f949c9186786a5a4a3826130000182c4155697c9099887667594c4043586d8397866f5a442f1a001d32475c70838d897764513d293b50667b9197826b56402b160100000000000003152637485867758385766a605a5656585d66707d8c978a7b6c5c4b39281502000003172b3e5265788c9884705d4a3826150d0e0e0d0b060000000000000000000000091c304356687888969e91857a7066667486867768584634210e0000000000000000001a2f445a6f869b9079644f3a25354a5f748a9e8a74604b36200b0000000000000012273c52677c939b866f5a442f1a0500000000000000000000000000000000000a151e262d323330271c1106000000000000000000000000000000000000000000000000000000000000000000000000040f19242f3a45505a5e5a534a4034251402000000000000000000000000001d32475c72889d8f78634e3a3a3a3a485d72826e58432e1906000000000410191d1e1b140a000012273c52677c939b866f5a442f1a05000c161c1e1d170e020000001d32475c70868c76614c3733485e73898b745f5e67798e7d6b584431455a6f84917b66513c2712001a2f44586d838e78634e4052647688806d5c4a5064788d8c77624d465b708789735e48331e001e33485d72888f78634e5d72879b89735f4a342b3842494a463d32475c728886715c47321d0000081a2b3b4a5965717c87919b93897d73675a4c3d2c1b0900001c31465a6f84998e7b6958493b394c5f72879a856f5a442f1a001e33485e73899e95826c57432f3b50667b9197826b56402b160100000000000000091a2a3a495865727d877c746e6b6b6d7279838e9186796c5d4e3e2d1c0a000000000f2236495c6e82938d7a675544332213040000000000000000000000000000000f23384c607386979e8f8073685d5356687a8f867564513e2b160200000000000000001a2f445a6f869b9079644f3a2533485e73899f8d77624c37220d0000000000000012273c52677c939b866f5a442f1a05000000000000000000000000000000000000020b12191d1e1b140a0000000000000000000000000000000000000000000000000000000000000000000000000000000007121d28333e4648453f372e23160700000000000000000000000000001d32475c72889d8f78634e3825252f4357676c6453403224140300000514222c323330271b0c0012273c52677c939b866f5a442f1a050f1d293133322b2012020000192e43586c828e78644f3a33485e73898b745f4a5f748a88735f4a374b5f74888e78644f3a251000152a3f53687c917c68533f47596a7b8b7968584a5d7288907a6651495e738889735e48331e001b30455a6f8590796550586d82958b75604b363a49565d5f5a4e3f475c728889735e48331e000013253748596876838f99958b82766c61564a3d2e1f0e0000001f34495e73889a86715e4c3b384657687b8e96826c57422d18001c31465b6f82939b87725e4a373d52677c9297826b56402b160100000000000000000c1c2b3a4754606b757d8584828283878d8c867d73685b4e3f30200f000000000006192c3e5163758797857261504031221408000000000000000000000000000012273c51667a8fa290807062564b404b5f748993826d5a46311d080000000000000a131a2f445a6f869b9079644f3a25364b60758ba08c76614c37220d0000000000000512273c52677c939b866f5a442f1a070000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000b16212b3233302b231b11050000000000000000000000000000001d32475c72889d8f78634e382314273949545754564f4232200c00001122323f474844392a190712273c52677c939b866f5a442f1a0a1c2d3b4548463d301f0e000015293e53677b8f7d6854403a485e73898b745f4a5f74898d77624d3f53667a8f8974604b36210c001025394d617589836d5a463b4d5d6e7d8776685c5c7187947d69544e62778c88725d48331e00182d41566a80937d68545165788b8e78644f3b47586772746c5d4c4a5f748989735f4a341f00071b2f4255667787959a8d82866f63594f443c372c1f0f0000001f344a5f748b94806a56423c4856647586988f7b67533e291500172b3f52647585938e7a67544342566b809595806a55402b16010000000000000000000d1c2a37434e5861697076797c7d7d7b77726a61564a3d302112020000000000000f2234465869798a90806e5e4f4032251a1109030000000000000000000000142a3f54687d949986726151443832475c70879c8974604b36210c00000000000f1c272d2f445a6f869b9079644f3a323f5165798e9c88735e4a35200b00000000010e181f273c52677c939b866f5a442f211b110500000000030f181d1e1e1d1b1a1a1a1b1d1e1e1d191105000000000b151b1e1e1d1c1b1a1b1b1d1e1e1e1911060000000000000000000000000000000000000000000000040e171d1e1c160f0800000000000000000000000000000000001d32475c72889d8f78634e38230e1b2b384558676b614f3b27120000192d40515c5e564836230f12273c52677c939b866f5a442f1a13273a4b595e5a4e3d2a1602000f24384c607387836f5b474d545e73898b745f5363778c8d78634e4a5c6f8396836f5a46311d08000a1e3246596d808975614e3b3f505f6e7d86796f6d788c96836d5856697d92846f5a45301b0013273c5064788d836d59495c6d808f7d6a584c53647685897b68534f64788d88735e48331e000e22364b5e728495988a7c78866f5a474a51514a3d2c1a0700001f344a5f7389917c6752414d59667383939785725f4c38240f0010223546576674828f84726157565f72869a907b67523d281400000000000000000000000c1925313b454e555c616567686866635d564e44392c1f1203000000000000000517283a4b5c6c7b8b8d7c6d5e5043372d241d17120b01000000000000000014293f53687d94937d6a5643342734495d72889d8d77624c37220d000000000c1d2d3a4143465b70879c9079644f44464e5d6e829593806d5945301b07000000000f1f2b34373c52677c939b866f5a4437362e23140400000313212b32333332302f2f2f30323333322d23150600000d1c283033333231302f3030323333332d2416070000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001d32475c72889d8f78634e38230e0e20364b6075806a543f2a1500001e33485d6f7366523e291412273c52677c939b866f5a442f1a182d415669736c5a45311c0600091c3044576a7d8a7763515e696a768b8c77686870809387735f4a5567798c8f7b6754402b17030003162a3d506376887d6a58463541505f6c79848483898d8287715c5f7286937d6a56412c18000d2135495d70858874604d50617182887567626371829495806b56576a7d9385705b46311c0012273c5165798e9b8a796b78866f5a495a66665b4a36220e00001d32475c7086917b6650525e6b7785929a8a79675543301c090005172839485664707c8780736c6b707d8f988774604d38240f0000000000000000000000001325354451595c5b5450525353585c5b574d40301e0f010000000000000000000b1c2d3e4e5d6c7b898c7c6e61554a4038312c271e13040000000000000012273c51657a8f937c67523c3235405163778ca18c76614c37220d0000000016293b4b56585a5f73889d917b6759585b616c7a8c95867563503d2a16010000000a1c2d3d484c4e53687d939b86705b4e4c4a4132210f00000f21313e474848474644444446474848474033241300081a2b394448484746454445464748484841342513010000000000000000000000000000040b11171a1d1f1f1f1e1b18130d06000000000000000000000000000000010d151d32475c72889d8f78634e38232323273a4e6377806a543f2a1500001f344a5f74826c57422d1912273c52677c939b866f5a442f1a1a2f445a6f84725c47321d07000114283b4d607284806e5c677c80858c8c827c7c838c86796957526273859685725f4c3824110000000e213446596a7c887564534334414e5b6771797d8079738875606b7c8f8b77634f3b271300061a2e4154677a8d7c6956445362707c857a7777828f908677655160738794806b56412d180013293e53687d93927d6c6378866f5a4f64787965503b26110000192e42576b80927c685864707c8995978a7b6c5b4a3826130000000b1b2a3846535f6a747d868282848e918879695744311d090000000000000000000000081c304253626d7270675948505f6b71706a5e4d3b281400000000000000000000000f20303f4e5d6b78858d8072675d544c46403b302312000000000000000e23374b5f728594806a574a4749515e6f82939886715d49341f0a000000001c314559696e6f727d8f9b9682726e6e70757d8a8f857768584634210e000000001126394b5a6263656e82969e89756763625e503e2b170000192c3e4f5b5e5e5c5b5a5a5a5b5c5d5e5c5142301c0810243749575e5e5c5b5a5a5a5b5c5d5e5d5243301d09000000000000000000000000050f181f262b2f3234343433302c272119100600000000000000000000000002121f292e32475c72889d8f78634e383838383a4456697c7d68543f2a1400001e33485d7286705c48342012273c52677c939b866f5a442f1a1c31465b7086725c47321d0800000b1e3143556677887a69657676767676777879797772685b53617080918c79675543301c090000000417293b4d5e6f808270615245393d4a545d65686a656a736e67778993826e5b4834200c00001225384a5d6f828673615044525f6a737b828484827c7368595a6b7d908c7764503c28130013293e53687d948c77636378866f5a576a7d7a65503b2611000014283c4f627587826d6a76828e9a9386796c5d4e3d2c1b09000000000c1b2835414d57616a71787c80807c756a5b4b3a28160300000000000000000000000e23374b5f718087857766525a6d7d87867c6b58432f1a0600000000000000000000021221303f4d5a67737d8985797067605a554e41301d0a000000000000081c2f43556777868775675f5c5e646f7c8d998b7a6856422e1a06000000001e33485e738486878686868687878484868987837b7267594a3a29170400000000152b405469777779808d919191847b78776e5b46311c00001e33485c6d737372706f6f6f707272736f5f4b37220d152a3f5367737372706f6f6f7072727370604c38230e00000000000000000000000c17222b333a404447494a4a4845413b352d23190d00000000000000000000000f20303c4344485d72889d8f7964504e4e4e4e4f566273867d68533e291300001c31465b708677634f3c2b25273c52677c939b866f5a442f2527364b5f7489735e48331e0900000114253748596a79887769616060606062636464625d56586471808f8f7d6d5c4a38261300000000000c1e2f4151627182807062564b433d414a50545451595e68768696877563513e2b18050000081b2d4052637485806e5e4f424d5760676c6e6e6c6860565968788a94826f5c4835210d0013283d51667b908c76606378866f5a62748778634e39240f00000c20334658697a89767b8894998d8275685b4e3f301f0f0000000000001125384a5a635f565d63686a6b686161615545331f0b000000000000000000000011263b5065798f9c95826c5760758a9b9a87725d48331e0800000000000000000000000312212f3c4955616c757d87837b746f6a5f4d392510000000000000001325374959687582857973727378828d92887b6c5d4b39261300000000001d32465a6c727270706f6f6f707273747474726d685f55493b2c1c0b0000000000162b40566b7d7d7c7c7b7b7b7b7c7c7d7d715c47321c00001f344a5f74838687878686868787848378634e38230e162b40566b828386878686868788888379644f3a250f00000000000000000002101d29343e474e54595c5e5f5f5d5a56504940362a1e1103000000000000000000182b3e4e585a5b61758a9f927d6c656363636364697382917d68533e291300001a2f44596e84806c59483e3a3a3c52677c939b866f5a443a3a3c4252667989735e49341f0a000000081a2b3b4c5b6a78867a6e635a544f4c4e4f4f5359616b76828f8e8070604f3e2d1b0900000000000012233444536271808273685f57514e4c4d50545b636e798795887868584634220f0000000010223445566676867c6d605349444c535758595753515c69778797887664523f2c1905000f24384d6175888d78646378866f606f808d77624c37220d00000316283a4b5c6b7b828c9994877a6f63574a3d30211204000000000000152a3f54677772675e54535556606a7473624e39240f000000000000000000000011263b50667b909f97836c5760768b9e9c88725d48331e0800000000000000000000000003111e2b38444e59626a72797d84847c67523c271200000000000000081a2b3b4a58646f77808588888b88857d756a5d4e3f2e1c090000000000172b3d4e5a5c5c5b5b5a5a5a5b5d5f5f5f5f5c59534c43372b1d0e00000000000013283c4f606868676766666666676768686454412e1900001d314558686c707987969b8b7c736f6c6a5c4935210c14293d51626c6d707a8d9b9b9282756e6a5c4a36220d00000000000000000312202e3b47515b63696e72737474726f6a645c53483c2f21120200000000000000001e33475b6b6f707480919c9b8a807978787878797d8691947d68533e29130000182d42576c838977665a534f4f4f53687c939b866f5a504f4f51566070828b745f4a35200b000000000d1d2e3d4c5b68758280766e686462606264686d757d8894897c6f61514232210f00000000000000051626354453616f7b867a726b6663626265696f77828c918577695a4a3a281705000000000516273848586775847d71665c55504d4b4c4f535a636e79879589796958473522100000091e3145586a7b8b82706378866f707d8e8b76604b36210b0000000b1f3346596b7d8e9d908375695d52463b3c382f2212010000000000162b40556a7a857a70675d5f69737d8576634e39240f00000000000000000000000e23384c6073838b887a67535c6f8089897d6c5844301b0600000000000000000000000000000e1a26323c464f575e646a6e727263503b261100000000000000000d1d2c3a47525c646a6f737474736f6a62584c3f3021100000000000000e20303d454747464644444446484a4a4a4a47443f3830261a0d000000000000000c2032424e535352525050535b636b73705f4a372512000016293b4a55575c68778994806c5f5a57564c3e2c1a060e21344451575863778ca19785736459564d3e2d1a0700000000000000001021303e4c59646e767d8387898b89888480786f65594d3f30201000000000000000001f344a5f74868787878787878787878787878787878787877c67523d28130000162b40566b809585776d67646464666d82969d897468656464666a727d8e8c76604b36210c0000000000101f2e3d4a57636f7983837c79777677787c8289918a82766b5f51423324140300000000000000000817263543515d69747d86807b787777797d838a90887d73675a4b3c2c1c0b0000000000000a1a2a3a495865727d837870696562606164686e76808c9286796a5b4b3b29170500000215283b4d5d6d7a868076788679828f8b82725d49341f0a00000011253a4e6276899b8f807264584c404750524c40301e0b000000000012263a4d5d6b7a89847a70727c86857566584734200c0000000000000000000000091d314455657074736a5c4a52616e74746d604f3d29150100000000000000000000000000000009141f29333b434a5055595d5d554634200c0000000000000000000e1c29353f4850565a5e5f5f5e5a554e463b2f21120300000000000002121f2a31323230302f2f2f313334343434322f2b241d13080000000000000000061726323b40464c525960676f767d8476614c37220d00000c1d2c3840424a5a6b7d907c67524542413a2e200f00051626343e43576a7d929f8c79675646413b2f201000000000000000000c1e2e3f4e5c6a76828a928e8783807d7d82868c83776a5d4e3e2e1d0b000000000000001e33475b6c707070707070707070707070707070707070706f604e3a25100000142a3f54697d94958a827c7979797b808c959592847c7979797b7d868f9b8d77624c37220d000000000001101f2c3946515c666f767c8387898b8b8987837d766d64594d41332415060000000000000000000008172533404c57616a737980858889898986827c746b6156493c2d1e0e00000000000000000c1c2b3a4855616c7782857d79777676787c838a92898074685b4c3d2d1d0c000000000c1e2f3f4f5c68737b82858986837d776f6455422e1a0600000014293e53687c929482706154473a455764675e4d3a261100000000000b1e2f3f4d5c6a79888d83858f84746657483a2a180500000000000000000000000114273847535c5f5e574c3e43515b5f5f5a4f4232200d0000000000000000000000000000000000020d161f282f363b404448484337281704000000000000000000000b17222c353b4146484a4a4846413b33291d11030000000000000000020e161c1d1d1b1b1a1a1a1c1e1f1f1f1f1d1a16100900000000000000000000102335444f555b60666d747b83867b71675947331f0a0000000e1b252b2d3c4e607387806a56422e2c271d10020000081626394c6073869a95826f5c4a382c271e1102000000000000000518293b4c5d6c7a889491857a726d6a68696b707782897b6c5c4c3a291604000000000000182b3e4e595b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5a5142311e0b000013283e53687c8a84838382828080808080808080808082828283838384868d78634e39240f000000000000010e1c28343f49535b62686d7173747474726e68625a51473c302315060000000000000000000000000815222e3a444e575f656b6f72737373706d6860584e44382b1e0f000000000000000000000d1c2a37434f5a646d757c8286898b8b8987837d756d62574a3d2e1f0f0000000000001121313e4b565f676c7886706d69635b524637251300000000162b40566b80958b7764534436384c60757b69543f2a1400000000000011212f3e4c5b6a788896928374655648392a1c0c00000000000000000000000000091a293640474a49443b2e333e464a4a463d3223140200000000000000000000000000000000000000030c141b21272c2f33332f26190a00000000000000000000000005101921272d3133343433312d261f160c000000000000000000000000000000000000000000000000000000000000000000000000000000000000172b3f52626a6f757b8288897d73695e54493b2a1704000000000911161f3144576a7d86715d4a3723130b00000000081c2f4256697c909f8c7764523f2d1b130b0100000000000000000f223547596a7a8b998f8072675f58545354575c646f7c8b7a69584633200d0000000000000f20303d44464646464651595c5b544a46464f585c5c574d453f33241402000012273c52677c786f6c6c6b6b6b6a6a6a6a6a6a6a6a6a6b6b6b6c6c6c6e717d7965503b261100000000000000000b17222d363f474e54585c5e5f5f5f5c59544e473e342a1e1205000000000000000000000000000004111c27313b434b51565a5d5e5f5e5c58534d453b32271a0d0000000000000000000000000c1926323d47515961676c7073747474726e6862595045392c1f10010000000000000313202e39434c526378866f5a544e473f3528190800000000162b40556a809586715c4835334355677b7d68533e29140000000000000311202e3d4c5a6977878373645647382a1b0c0000000000000000000000000000000b18242d33343430281d222b323434312a2014050000000000000000000000000000000000000000000000070d12171a1e1e1b1308000000000000000000000000000000050c13181c1e1f1f1e1c18120b030000000000000000000000000000000000000000000000000000010d151b1e1e1c160e04000000000000001a2f445a6f7d848a8f8d82776c61564c41372c1d0c000000000000000214273b4e6175897966523f2b1804000000001125384b5f72869996826f5c483523100000000000000000000004182b3e516476889992827061554b44403e3f4248525e6d7d887563503d2a1602000000000002121f2a2f3030304254636d727067594850606c71706a5e4d3b28150600000011263b4f63716e5e575756565654545454545454545456565657575758607172624e3a251000000000000000000005101a232b33393f4447494a4a4a4744403a332b21180d0100000000000000000000000000000000000a151e2830363d414548494a4847433e3931281f150900000000000000000000000000000814202a343d464d53585c5e5f5f5f5c59544e463d33281c0e01000000000000000003101c2730384e6378866f5a443a332c22170a000000000014293e53687c91866f5a443944516172857c67523c27120000000000000002101f2e3c4b5968747264554638291a0c00000000000000000000000000000000000711191e1f1f1b150b0f171d1f1f1c160e030000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000004121f29303333312b211507000000000000192d425668747d85867a6f645a4f443a2f251a0e0000000000000000000b1e3246596d80826e5b4733200c000000071b2e4154677a8fa08c7966523f2c1906000000000000000000000b1f33475b6e8294998673625244382f2b292a2d35404f5f7184806c5945311d09000000000000010d161a1b23374b5f718288857765525b6e7d87867c6a57432f1a050000000c203345545c5b5042424040403f3f3f3f3f3f3f3f3f40404042424243535d5e5445331f0b00000000000000000000000710181f252a2f3234343434322f2b251f170e050000000000000000000000000000000000000000020b141c22282d3033343433312e2a241d150c0200000000000000000000000000000000020e18212a32393e4347494a4a4a4744403a322a21160a0000000000000000000000000a1423384e6378866f5a442f1f1810050000000000001025394e62768a86715c4c4d55617080907a66503b2611000000000000000001101e2d3b4a575f5e544637281a0b0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000206090b0d0d0d0b0a0704000000000000000000000000030d1315151513131313131314151514110b01000000021222303c444848453e3325160500000000001327394a57616a7073685d52473d32271d12080000000000000000000003162a3d5164788a76634f3c28150100001024374a5d7084989683705d49362310000000000000000000000011263a4e63778b9e907c69564534261b1513141923314254667a8974604c38230e0000000000000000000011263b50667a8f9c95826c5760768b9b9a87725c47321d07000000041627364147463f322c2b2b2b2a2a2a2a2a2a2a2a2a2b2b2c2c2c2c35414949433627160300000000000000000000000000040b11161a1d1f1f1f1f1d1a16110b0400000000000000000000000000000000000000000000000000070e13181b1e1f1f1e1c19151009020000000000000000000000000000000000000000050e161e242a2e3134343434322f2b251f170e0400000000000000000000000000000d22374b5f6f746957422e190400000000000000000b1f33475a6c7d8c796961626873808f8f78634e39240f000000000000000000000f1d2c3a444a49423728190b0000000000000000000000000000000009141a1d1b18140f09030000000000000000000000000000000000000000080d0e0e0e0d0d0d0d0d0e0e0e0b04000000000000000000000000000000020a11161b1e21222222211f1c1915100a0400000000000000071520272a2a2a292929292929292a2a2a261e120400000d1f30404e585e5e5a514334231000000000000a1c2c3a454e555c5e564b40352a20150a000000000000000000000000000e2135495c7083806b5744301d090006192d405366798da08d7a6653402d1a070000000000000000000000162b4054697d929c8874604d39271608000000051324374b5f72887a66513d28130000000000000000000011263b50667b909f97826c5761768b9e9c88725c47321d07000000000918252e32312c2217161616151515151515151515161616171717242e34342f251809000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000002091015191c1f1f1f1f1d1a16110b0300000000000000000000000000000000081c3042515c5f594b3a271400000000000000000004172a3d4f60707d887b76777c8591968c77624c37220d00000000000000000000000e1c283134342f25190a000000000000000000000000000000000c1b272f32302d28231d170f070000000000000000000000000000000006131c2223232322222222222323231f170c000000000000000000000000020c151e252b3033363737373634312e2a251f18100500000000041625333c3f3f3f3e3e3e3e3e3e3e3f3f3f3a302211000016293c4e5e6b73736d6152402d190500000000000e1c28323a41474844392e23180d02000000000000000000000000000006192d4054677b8873604c39251212122336495c6f83969885705d4a3724110000000000000000000000001a2f44596d839797836d5945311d0a0000000000081b2f44596d83806a55402c16010000000000000000000f24384c6073838a877967535c6f8089897d6c58442f1b0600000000000712191c1c181004000000000000000000000000000000000007121a1f1f1b130800000000000000000000000000000000070f1415151413131313131314151515140f060000000000000000000000000000050d1112121111111111111111121212100b020000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000013243340484a453b2d1d0b000000000000000000000e20324251606d7780868a8b8b8782796e5c4935200b0000000000000000000000000b151c1f1f1b130800000000000000000000000000000000081a2a38434745413d38322b231b1108000000000000000000000000000515243037383838373737373738383833291c0c0000000000000000000007131f2832394045484b4c4c4c4b4946433e39332c2317080000000e21334350545454535353535353535454544d402f1c08001c3045596c7c8889806f5c4834200b0000000000000b151e262d323330271c110600000000000000000000000000000000001124384c5f72877c6854412d2727272b3e5265788c9f8f7a6754412e1b080000000000000000000000001c31465b70879b937d69543f2b1601000000000000162b40556a80836d58432e1904000000000000000000091d314455657074726a5c4a52616e74736c604f3c29150100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000d1a23292a2a29292929292929292a2a2a2822180b0000000000000000000000000b17212627272726262626262626272727251f1407000000000000000000000000000000000000000000050b101416161614110d07010006090a0a090a0a0a0905000000000000000000000000000615232d333431291d0f000000000000000000000002142433424f5a646b71747474726d665d503f2d190600000000000000000000000000000000000000000000000000000000000000000000000011243748565c5a56524c463f372e241a0f030000000000000000000000102233424b4e4e4d4c4c4c4c4c4e4e4d473a2a180500000000000000000a1825313b454d54595d60626262605e5b58534e474034261605000015293e51616a6a6a686868686868686a6a695e4c38230e001f34495e73889b9d8c77624c38230d00000000000000020b12191d1e1b140a00000000000000000000000000000000000000081c3043576a7d84705d493c3c3c3c3c485b6e82959985725f4b382512000000000000000000000000001d32475c72889d907b66503b26120000000000000013283d53687c866f5a442f1a050000000000000000000114273847535c5f5d574c3e43515a5f5e594f42311f0d000000000000000000040f181d1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1d19110700000000000b14191b1b1812080000000b1c2b373e3f3f3f3e3e3e3e3e3e3e3f3f3f3d35291a0900000000000000000000091a29343b3c3c3c3b3b3b3b3b3b3b3c3c3c3a322516050000000000000000000000000000000000000710191f25282b2b2b2926221c14121a1f1f1f1f1f1f1f1e1911050000000000000000000000000511191e1f1d160c00000000000000000000000000061524313d4750575c5f5f5f5d59524a40322210000000000000000000050a0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0a0600000000000000162b405466726f6b66605a524a41372c21150800000000000000000000182c3f515f6363626262626262636362584734210c000000000000000a192836434e5861686e72757777777673706c68625b524434210e0000172c42576c8080807d7d7d7d7d7d7d80807b66503b2611001f344a5f73899c9f8d77624d38230e00000000000000000000000000000000000000000000000000000000000000000000000014273b4e62758a78655252525252525264778b9e8f7c6955422f1c08000000000000000000000000001d32475c72889d8f78634e39240f0000000000000012273c52677c866f5a442f1a0500000000000000000000091a293640474a49433a2e333e464a49453d3123130200000000000000000414212c323333333333333333333333333333333333333333322d241809000000101d272e30302d251a0c000015283a4953545453535353535353535454545247382613000000000000000000001427384750525251505050505050505252524e4334220f00000000000000000000000000000000010e19232c34393d4040403f3b363028242e34343434343434332d2214050000000000000000000000000000000000000000000000000000000000000000000614202b343c43474a4a4a48443e372d221404000000000000000310191f2121212121212121212121212121212121201a11050000000000172c42576c8285807b756e665d544a3e3226190b0000000000000000001c31465b6f7878777777777777787876644f3a2510000000000000081928374653606b757c838886828080828686827c766f62513e2a150100172c4155697676787d88949491827a777675644f3a2510001c31465a6d7d8a8b82705d4935200b0000000008111617140d03000000000007101617140e04000000000000000000000000000b1f33465a6d82826d676767676767676d82949986735f4c39261300000000000000000000000000001d32475c72889d8f78634e38230e0000000000000012273c52677c866f5a442f1a0500000000000000000000000b19242d3234342f281d222b313434312a2014050000000000000000001022323f474848484848484848484848484848484848484848474136271604000d1e2e3a42464541372a1a09001c314558666a6a68686868686868686a6a6a6555422e1a050000000000000000001c304456646767666666666666666667676761523f2b1702000000000000000000000000000003111f2b3640484e5355565653504a443b3541494a4a49494a4a4840322211000000000c151a1b1b1b1b1b1b1b1b1b1b1b1b1b1b1b1b1a150c0000000000000000020e1821282e32343434332f2a231a1004000000000000000313212d343636363636363636363636363636363636342e23140500000000152a3e52636d72788088827970665c504437291b0c00000000000000001c32475c707c7d828d8d8d8d85807c7965503b2610000000000004152637465564717d888f8379716c6a6a6c7179838f8b826d58442f1a050012263a4c5a6061636a7b8f9d887465626060574734210c00162a3d4f606d74756f6353412e1a060000000c1a242b2c2920140f0f0f0e0b19242b2c2921150600000000000000000000000003172a3e516579897c7c7c7c7c7c7c7c7c8a9d907d695643301d0a00000000000000000000000000001d32475c72889d8f78634e38230e0000000000000012273c52677c866f5a442f1a050000000000000000000000000711191d1f1f1b140b0f171c1f1f1c160d0200000000000000000000192d3f505b5e5e5e5e5e5e5e5e5e5e5e5e5e5e5e5e5e5e5e5e5c534534210d00172a3c4c575b5a5448382613001f344a5f7480807d7d7d7d7d7d7d7d808080715c47321d070000000000000000001f344a5f737c7c7b7b7b7b7b7b7b7b7c7c7c6e59442f1a05000000000000000000000000000111212f3d49535c63686a6b6b68645f574e45535d5f5f5e5e5f5f5d51402d19050000101e282f303030303030303030303030303030302f281e10000000000000000000050d141a1d1f1f1f1e1a160f070000000000000000000f21313f484b4b4b4b4b4b4b4b4b4b4b4b4b4b4b4b4b4940322311000000000f23354552585d646c747d8984796d615447392a1b0c00000000000000192d41536367686e80949d88756a67665b4936220d00000000001021334454647382908f8071665d575454575d6671808f87715c47321d08000a1d2e3c474b4c4e61768c9b866f5a4d4b4b4539291805000e203242505a5f605c52453624110000000c1b2a3740423d3223242525231f29363f423d332415060000000000000000000000000e2236495d7084838383838383838383979b8773604d3a27140000000000000000000000000000001d32475c72889d8f78634e38230e0000000000000012273c52677c866f5a442f1a05000000000000000000000000000000000000000000000000000000000000000000000000000000001e33485c6e73737373737373737373737373737373737373737063503c2813001d32465a6a706f6656422e19001f34495d7076777a849494948c807a7776766e5b46311c070000000000000000001f34495e7278797d879191918c827c7978786d59442f1a04000000000000000000000000000d1f2f3f4d5a666f777c8082827d79736b615761717474737374746f5d48331e09000c1e2e3b4446464646464646464646464646464646443b2e1e0c000000000000000000000000000000000000000000000000000000000000182b3e4f5c60606060606060606060606060606060605d51402e1b07000000061727353e43495058616c77848b8072655748392a1a0a000000000000112436454f5253667b9099856f5a52514a3d2c1a0600000000071a2d3f5162728392908070615449433f3f43495361708289745f4a35200b0000101e2b3336374b60768c9b866f5a44363631281b0b0000031423323d464a4b4740352718060000091a2a394854574f4235393a3a3834384753575042332415040000000000000000000000061a2d4154687c86726c6c6c6c6c75899c917d6a5744311e0a0000000000000000000000000000001d32475c72889d8f78634e38230e0000000000000012273c52677c866f5a442f1a0500000000000000000000040e161b1c1a12080000000000081016191b1b19161008000000000000001f344a5f748384868989898989898989898989898989898989806a543f2a15001f344a5f748685705b46301b001a2e41515e606266778ca1937d6d656361605d503e2b17030000000000000000001b2f4354616364697a8fa3917d6e686563635e4f3d2a160300000000000000000000000005182b3c4d5d6b78838c928b87858587877d7469677c8b8b89878382745f4a341f0a0016293c4c585b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b584c3b2815000000000000000000000000000c14191a170f05000000000000000000001d32475b6d76767676767676767676767676767676766f5d4a35200b000000000917232a2f353c454f5a667382908375665748382817050000000000071827333b3c4f64799099846e58433c372d1f0e00000004101a24374a5c6e8091968472615143362e2a2a2e36435263758977624d38230e0000000d181e21364b60768c9b866f5a442f201d150a000000000514212a323536332c2317090000001326384857666c60504a4e4f4f4d494656656c61514233210e0000000000000000000000001125394c6073877a675757586b7d929b8875614e3b2814010000000000000000000000000000001d32475c72889d8f78634e38230e0000000000000012273c52677c866f5a442f1a050000000000000000000816212a30322e25190a000006121b242a2e30302f2a241c120600000000001d32465a696c6e717d8f9f98877b777676767676777d879396826b56402b16001f344a5f748b87705b46301b00112333414a4b4d5e73899f8f7964514d4c4b494032210f00000000000000000000132536444c4e5061768ca18d776253504e4e4b4031261e160d02000000000000000000000e2235485a6b7b8a958c8076716f6f71777d877a6e7c939985736d6b675845311c08001c3145596a707070707070707070707070707070706a5844301b000000000000000000000001111e282e2f2b2216080000000000000000001e33485e73858c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c77634d38230e0000000000060f151b2129323d4855637182928575665645342312000000000000091620263a4f64799099846e58432e231b0f0100000313222d35405366798c9e8c79665544373737373737373746596c807a65503b261100000000040b21364b60768c9b866f5a442f1a0802000000000000030e171d20201e19100600000000192e425666757d6e5e5e636464625d566473807061503d2914000000000000000000000000091d3044576b80836f5c4e6174889b92806c5845321e0b000000000000000000000000000000001d32475c72889d8f78634e38230e0000000000000012273c52677c866f5a442f1a050000000000000000061726333d454742372817060917242e383f434646443f382f24170900000000172a3c4c55575860748a9f917c686260606060606269758494826b56402b16001f344a5f748b87705b46301b000515232e3536485e73899f8d77624d383736342d221303000000000000000000000818263138384a5f748ba08c76604b4c4c4c4946403a32291f1408000000000000000000162a3e516477899a8d7c6d635c5a5a5d636b76827d7c9395806a5856544a3a281502001f344a5f7487878787878787878787878787878787735e48331e00000000000000000202000d1f2f3b43443f3426170800000000000000001b304457677483909190909090909191929395989d907a65503b26110000000000000000060d151f2b3845546373859484736352412f1d0a000000000000040f253a4f64799099846e58432e1908000000000f213240494c5c6f839697836f5c4c4c4c4c4c4c4c4c4c4c465064787c67523c271200000000000b21364b60768c9b866f5a442f1a0500000000000000000003080b0b09040000000000001b30465b70848c7c6c7277797977716a71828f806c57422c170000000000000000000000000114283b4f63768a7764576a7d919c8975624f3c291502000000000000000000000000000000001d32475c72889d8f78634e38230e0000000000000012273c52677c866f5a442f1a0500000000000000001023354450595c5546352312182735414b53585b5b58534c41352718090000000d1e2e3a4142475c72889d8f78634e4b4b4b4b4b4e57657688836c57422c17001f344a5f748b87705b46301b000006121b2033485e73899f8d77624c3722211f1a100400000000000000000000000009151e23344a5f748ba08c76605f6262615e5a554e463c3125180a00000000000000061b3044596d829595826f5e50474444484f596471808093947d6853403f382c1c0b00001f344a5f7488888888888888888888888888888888735e48331e0000000000080e14171715172a3d4d58595244352615040000000000000015283949566472808379797979797b7b7c7c808389927c68533e291400000000000000000000020d1a2736455666778a9282705e4c3a2714010000000000000f253a4f64799099846e58432e190300000000182b3e505d6263778b9f907b676262626262626262626261584a5c6a6a5f4d39251000000000000b21364b60768c9b866f5a442f1a0500000000000000000002080a0a0904000000000000192d42556574848a7d878d858383867d8090847465533f2b16000000000000000000000000000c2033475a6e82806c6073879a93806c594633200d00000000000000000000000000000000001d32475c72889d8f78634e38230e0000000000000012273c52677c866f5a442f1a050000000000000000172b3f52626d716452412f1e273645535e676d70706d675e534536271605000000101d262c32475c72889d8f78634e38363636363a47586a7d846e58432e19001f344a5f748b87705b46301b00000000061e33485e73899f8d77624c37220d0a06000000000000000000000000000000020a1f344a5f748ba08c766e74777776736f6961594e433628190a000000000000091f34495d72889c8e79655240332f2f333c475361708093947d68533e2a251b0e0000001d32465a6c727272727272727272727272727272726b5945301c00000009131c23282c2c2a2331465a6b6e62534333210f000000000000000b1c2b38465462707d8576696464666667686a6e7582806b56402b1600000000000000000000000009182738495a6c80928e7b695744311e0b0000000000000f253a4f64799099846e58432e1903000000001d32475b6e77777c929f8a7777777777777777777777777567554d55564e41301d0a00000000000b21364b60768c9b866f5a442f1a0500000000000000020e161c1f1f1e18100500000000122537475665758691897a706c6e77868f84746556473624100000000000000000000000000004172b3e5266798975697c909e8a7663503d2a170300000000000000000000000000000000001d32475c72889d8f78634e38230e0000000000000012273c52677c866f5a442f1a0500000000000000001a2f445a6f8082705e4d3b2934455463707a838686837b70635445342210000000000a121d32475c72889d8f78634e38232121212a3b4e617586705b46301b001f344a5f748b87705b46301b00000000001e33485e73899f8d77624c37220e0c08040000000000000000000000000000000a1f344a5f748ba08c76768382828489847d756b6054463728180800000000000b20364b60748b9e89745f4b36221a1a2029364352677c93947d68533e29130800000000172b3d4e5a5c5c5c5c5c5c6c73736b5c5c5c5c5c5c594d3c291600000d1b262f373d41423e36364b5f74827161503e2c1906000000000000000d1b28364452606e7c87796b5e5050525355596476836d58432e19000000000000000000000000000a1a2b3d4f617588998773604d3a27130000000000000f253a4f64799099846e58432e1903000000001e33485e7389898989898989898989898989898989898985705b4641413b3123120000000000000b21364b60768c9b866f5a442f1a050000000000000413202a313434322c221708000000091e3145596c7d8f8e7b6a5d575a68798d8573614e3b29190700000000000000000000000000000f23364a5d71857d72869994826d5a4734210d0000000000000000000000000000000000001d32475c72889d8f78634e38230e0000000000000012273c52677c866f5a442f1a050000000000000000192e42576a7b8d7c6a59473640526372828e7d72707687827263523f2d1a0600000000001d32475c72889d8f78634e38230e0b101e32465b7085725d48331e001f344a5f748b87705b46301b00000000001e33485e73899f8d77624c372323211d19130c040000000000000000000000000a1f344a5f748ba08c766b6e6b6b6f757d8a897d7264554636251402000000000b21364b60768c9c87715c47321d08050c18273c52677c93947d68533e291300000000000e20303d4547474747485e738988735e4847474747453c2f1e0c000a1b2b38434b52565752483a4f64788e806e5c4935210d00000000000000000a18263442505f6d7b8a7c6e6052443e40475b707c6e59442f1a00000000000000030a0f1213131310203245586c8094907d6a56422f1b0700000000000f253a4f64799099846e58432e1903000000001c31465a6b737373737373737373737373737373737373736a5747382c271f13040000000000000b21364b60768c9b866f5a442f1a050000000000021323313d464a4a473f3426170600000f24384c6175899885715e4d424a5d7187917d6a57432e1a050000000000000000000000000000071b2e4155697c867b8f9e8b7764513e2b17040000000000000000000000000000000000001d32475c72889d8f78634e38230e0000000000000012273c52677c866f5a442f1a05000000000000000014273a4c5d6f8288766553414a5d6f82918370605b6a7d91826f5c4935210d00000000001d32475c72889d8f78634e38230e13222d3441566a786f5c47321d001f344a5f748b87705b46301b00000000001e33485e73899f8d77624c38383836322d2720170e03000000000000000000000a1f344a5f748ba08c76605956565a616c7988908373645443311f0d000000000b21364b60768c9c87705b46301b06000012273c52677c93947d68533e2913000000000002121f2a3132323233485e738989735e4833323232302a1f11010014273949555f666b6c66564553687d928b7864503b261100000000000000000008162432414f5d6c7a8a7d70625446384053626761523f2b170000000000020d171e24272929282520293d5064788d9986725e4a36210d00000000000f253a4f64799099846e58432e1903000000001d314559696f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f655643301c0c02000000000000000b21364b60768c9b866f5a442f1a0500000000000d2031414f5a5f5f5b5244352411000013283d52667b90927d6955412f44596e849986715d48331e090000000000000000000000000000001226394d607488859895826e5b4835210e000000000000000000000000000000000000001d32475c72889d8f78634e38230e0000000000000012273c52677c866f5a442f1a0500000000000000000b1d2e405263758783705f4e5165798d907b67535065798f8c7865503c281300000000001d32475c72889d8f78634e38230f213240494b4d5c635f51402d19001f344a5f748b87705b46301b00000000001e33485e73899f8d77624c4e4e4d4b47413b332a2015090000000000000000000a1f344a5f748ba08c76604b4141464f5b6a7a8c928372614e3c2915020000000b21364b60768c9c87705b46301b06000012273c52677c93947d68533e2913000000000000020e161c1d1d1e33485e738989735e48331e1d1d1b160d0100001a2f435767727a8082746352586d82978e7b67523c2717140d0300000000000000061423313f4e5d6b7b8b807264554738444f524e4334220f000000000714202a32383c3e3e3d3a352f35495d72879c8d7965503c271300000000000f253a4f64799099846e58432e1903000000001f344a5f748686868686868686868686868686868686868684735f4a35200b00000000000000010b21364b60768c9b866f5a442f1a050000000000162a3d4f5f6d74746f6253412e1a0600152a3f546a80948e78634f3a2e43586e84988b745f4a341f0a0000000000000000000000000000000a1d3144586c80939f8c7865523f2b1805000000000000000000000000000000000008111d32475c72889d8f78634e3823120b01000000050e14273c52677c866f5a442f1a0e0500000000000000001122344557697a8c7d6b59576c82958d77624d4d62778d94806a55412c1700000000001d32475c72889d8f78634e3823172b3e505d605c4d4e4a41332311001f344a5f748b87705b46301b00000000001e33485e73899f8d776261636362605c564f473d32271a0c00000000000000000a1f344a5f748ba08c76604b362c323d4c5d6f8296907d6c5845311d090000000b21364b60768c9c87705b46301b06000012273c52677c93947d68533e2913000000000002121f2a3132323233485e738989735e4833323232302a1f1101001d32475c72858f959282705f5d71879282705e4c382b2c2920140500000000000000041321303f4d5d6c7c8c8273655647373a3c3a31251605000000071625323d464d515353524e4a433a44586d839794806a56412d1803000000000f253a4f64799099846e58432e1903000000001f34495e717b7b829698837b7b7b7b7b7b7b7b7b7b7b7b7b7b74604b3622110000000000000c161b21364b60768c9b866f5a442f1a0500000000001c3145596c7d898a82705d4935200b00152a3f546a80958c76604b3631465b70869a8b745f4a341f0a0000000000000000000000000000000d18293c5063778b96836f5c4936230f00000000000000000000000000000000000e1b252a32475c72889d8f78634e382b271e120300081621292b3e53687c86705b463129211608000000000000000516283a4b5d6e808977665a6f859a8b75604b4c60768c98836e58432e1900000000001d32475c72889d8f78634e38232231465b6e766b5742362f241505001f344a5f748b87705b46301b00000000001e33485e73899f8d776f7678787774706a635a5044382a1b0c000000000000000a1f344a5f748ba08c76604b3621202e3f52667a8f9b8874604c38230f0000000b21364b60768c9c87705b46301b06000012273c52677c93947d68533e291300000000000e1f303d4547474747485e738989735e4847474747453c2f1f0d001a2f435767727d88938e7d6c61768b86756352413e40423d32231301000000000000000312212f3f4e5e6e7d8f84746555453527251e140700000003142534424f596166686867635e564d4354697d9399856f5a45311c07000000000f253a4f64799099846e58432e1903000000001b2f42536166687c919a86706666666666666666666666666663594f402e1b0700000000101e293032364b60768c9b866f5a442f1a0500000000001f34495e73899c9f8d77624d38230e0014293e53687c928b76604b36394d6074899c88725d49341f090000000000000000000000000000101e2b3336475b6f838d796653402d1906000000000000000000000000000000000b1c2c383f40485d72889d8f78634e41403b302111051626343d4045576b8088735f4b403d3426160500000000000007111c2e3f516274868371606f869b8b745f4a4c61768c99846e58432e1900000000001d32475c72889d8f78634e38373739485d72846e58432e1b120600001f344a5f748b87705b46301b00000000001e33485e73899f8d77778280808388857d766d625548392a1a090000000000000a1f344a5f748ba08c76604b36211023374c61768ba0907b66523d28130000000b21364b60768c9c87705b46301b06000012273c52677c93947d68533e29130000000000172a3d4e5a5c5c5c5c5c5e738989735e5c5c5c5c5c594d3c2a16001427394955606b75808b8a78677a8c7a68574f515356574f41301e0a00000000080f13130f1121304050607082938473635342301e0c02000000000f21324352606c757b7d7d7c78726a605551667b919d88735e49341f0a000000000f253a4f64799099846e58432e190300000000122535444e5062768a9e8a75605050505050505050505050616e6d5d4a3723100000000c1e2e3c4547434b60768c9b866f5a442f1a0500000000001f34495e73899c9e8c77624d38230e0010253a4e63778a8d77634e3e4657697c9095826d5944301b06000000000000000000000000000b1d2e3c474b4853667a84705d4a372310000000000000000000000000000000000015283a4a5456575f748a9f907a655856554e3f2e1b0e2134445156596373878e7a685a56514434220f00000000010e1a242c3236455668798c7d6c6e84988b75604b4e63788d96826c57422d1800000000001d32475c72889d8f78634e4c4c4c4e526176846e58432e19030000001f344a5f748b87705b46301b00000000001e33485e73899f8d776a6c6a6a6d747d898a80736657483727150300000000000a1f344a5f748ba08c76604b36210b1e33485e73889d94806a55402b160000000b21364b60768c9c87705b46301b06000012273c52677c93947d68533e291300000000001c31465a6c727272727272738989737272727272726b5945301c000a1b2b38434e58636e7883867480806e60626466686b6c5f4d3925100000010f1b232828231b12223242536475889282705f4e3c29160300000006192c3e5061707d8990938b8888867d726557647990a08b75604b36210b000000000f253a4f64799099846e58432e1903000000000717263239465a6d8293907c6854423b3b3b3b3b3b3b3e53687d7966523f2b1805000016293c4c595c574f60768c9b866f5a442f1a0500000000001c3145596c7d888980705d4934200b000b1f33475a6d80907d6a59535764748699897764513e2a16010000000000000000000000000013273a4c5a605c535e6f746754412d1a140f070000000000000000000000000000001c314558676b6c707c8f9d9582736e6b6a5d4b372314293d51626b6d7482919786776e6b62513e2a1500000003121f2c3740474b4c4c5c6e808a78697d928d77624d51667b90907c68533e2a1500000000001d32475c72889d8f78636262626263666f80836d58432e18030000001f344a5f748b87705b46301b00000000001e33485e73899f8d776257545559606a778691847565554432200d00000000000a1f344a5f748ba08c76604b36210b1d32475c72889d97826c57422c170000000b21364b60768c9c87705b46301b06000012273c52677c93947d68533e291300000000001f344a5f74888888888888888d8d88888888888888735e48331e00000d1b29353e46515b66707b807d72737577797b7d807c67523c271200000f1f2d373d3d372d1f14243547586a7d908f7d6b5946331f0b0000000e2236495b6d808f9c8f827672737882847566647990a18c77624c37220d0000000b14253a4f64799099846e58432e190f040000000008151f2b3e516476889885715f4d3d2e26262626273b4f6479826f5b4834210d00001c3045596a726b6362778d9b866f5a442f1a050000000000162a3d4f5f6c73736e6252402d1a0600142637465564738488776c686b758292917d6e5e4f40301e0b00000000000000000000000000182d42566a766f675f5d5f58493a342e29231a0e00000000000000000000000000001f344a5f7482838688888888888783827a66503b26172c42576c828388888888888983826c57422c170000001121303d49535b6062625e61738584727588907b6753596c80958673604d39241000000000001d32475c72889d8f787777777777787b828e836c57422c17020000001f344a5f748b87705b46301b00000000001e33485e73899f8d77624c3f40444d5968788a94847361503d2a1703000000000a1f344a5f748ba08c76604b36210b1f34495e73889d97836c57422c170000000b21364b60768c9c87705b46301b06000012273c52677c93947d68533e291300000000001f344a5f74898989898989898e8e89898989898989735e48331e00011427384751585f666d737a777386898b8d8f91938875624e3a251000071a2c3d4a52524a3d2c1a17293b4d6074889b8975624e3b261200000015293e5165788b9d948270635d5e646e7a8572667b90a28d77624c37220d00000f1d272e3a4f64799099846e58432f2b22150600000000020e213447586a7a8b8f7c6b5b4c3f352f2e31394555687c8b7764503d291601001e33485e73857d77717b909b866f5a442f1a0500000000000d2031414f595e5e5a514435231100001b304355647383918286807d80888d85828d7c6d5e4e3b271200000000000000000000000000192e43586d80837a726a635c554e48433d372c1e0d000000000000000000000000001e33485c6f747473737272727273747473624e3a29222c405468747473737272727374746855402c1600000d1e2f3f4e5b666f757777736c67798b7d6d7a8a8370656876898a79685644311d0900000000001d32475c72889d9188888888888888898f98836c57422c17020000001f34495e7179796d5a45301b00000000001e33485e73899f8d77624c372b313c4a5a6d809491806c5946321e0a000000000a1f344a5f748ba08c76604b36211224384c61768ba095806b56402b160000000b21364b60768c9c87705b46301b06000012273c52677c93947d68533e291300000000001d32465a6d737373737373738989737373737373736b5945311c00081c304456646d737a828882738271777d848a918d7c6a5946331f0b000e22364a5b66665b4936210d1e3144586d8296927d6a55402c170200001a2f43586d82959f8b7764524849515d6a756c687c93a08c76604b36210b000b1d2d3a42444f64799099846e5846443e33241301000000000517293b4c5d6d7c8a8a796a5d51494443464d5663728593806c5945301c07001c30455868717a84878a989b866f5a442f1a050000000000021323313c454949463e3426170600001f34495e738392837272787c7d7c787173838c7c6a55402b1600000000000000000000000000162a3e51616d7782867d777069635d57524a3c2b1805000000000000000000000000192d3f515d5f5f5e5e5c5c5c5d5e5f60635a50463c353f49535d635f5e5e5c5c5d5e5f5f594b3926120005182a3c4d5d6c798387807d8580736d7d8b796c798580797c8685796b5c4b3927140100000000001d32475c72889d8f78727272727272747a87836c57422c17020000001b2f42536065645e4f3e2b1600000000001e33485e73899f8d77624c37221e2c3d5064788d9c8975614d392410000000000a1f344a5f748ba08c76604b362122304154677b90a4917c67523e29140000000b21364b60768c9c87705b46301b0c020712273c52677c93947d68533e29130a00000000172b3e4f5b5e5e5e5e5e5e738989735e5e5e5e5e5e5a4d3c2a16000d22374b607382888f8e8071738976636970767c7c6e5e4d3b2916030011263b5065797965503d2915152a3e53687d9399846f5a442f1a0500001e33485d72879b9984705b4735353f4c59605b6b80959e89735e49341f0a0015283a4b575a5c677c919b86715e5b595142311e0a00000000000c1d2e3f4f5e6c7986897a6e645d59585b60697482919988735f4a341f0a0015283a4a555e677079838c95866f5a442f1a0500000000000004131f29303434312b2216080000001e33485c6e7c8473645e64676867645d6474847667533f2a15000000000000000000000000000f223443505a646f79858b847d77716c665a4834200b00000000000000000000000010223240484a4a4848474747484a5e70776d63594f47515c6670786c5848474748484a4a463b2d1c0a000d213447596b7b8a86756a6975888373728485736872787b7b7871675b4d3e2d1c0a0000000000001d32475c72889d8f78635c5c5c5c5c5f6879836c57422c1702000000122535434c504f4b4031210e00000000001e33485e73899f8d77624c37220e21364a5f74899e917c67533e2914000000000a1f344a5f748ba08c76604b362e35404e5e7084979d8a76624d39251000000e1b25364b60768c9c87705b4630271f1319242a3c52677c93947d68533e2b261c0f0000000e20313e4748484848485e738989735e4848484848463d2f1f0d000f253a4f64798f9b8d7d706173897d6b575b6268685e50402f1e0c000010253a4f6378806c5845322014273c51667b919c87705b46301b0600001f344a5f74899f95806b56412c222e3c464b5b70859a9a86705b46311c07001b2f4457696f70768497998d7c73706e604d39240f000000000000102131404e5c68737d878278726e6e70747c86928f867c6e5b47331e09000b1c2c38414b545d666f7882866f5a442f1a0500000000000000020d161b1f1f1c170f0500000000192d3f505e6c7365554a4f5253524f4956657067584937241000000000000000000000000000051625333d47525c67727c88928c868277634e38230e0000000000000000000000000414222d3334343333323232354a5f728280766c615a646e78837d6d5944323233333434322a1d0f000015293d506476898f7b6857586c8291806d788a806e5d636666635d554a3d2f200f000000000000001d32475c72889d8f78634e474747474b5f73836d58432e18030000000b1c2b363e41413d3427180700000000001e33485e73899f8d77624c37220d1c32475c71879c96826b56412c17000000000a1f344a5f748ba08c76604b414348515e6c7c8ea091806d5a46331e0a000c1d2c383f4b60768c9c87705b46403b31222a373f4153687d93947d68534140392d1e0d00000313212b3233333333485e738989735e4833333333312a1f1101000f253a4f6479908b7c6e605c72888873604d4d53534c403222110000000c20354a5e728875614f3e30292c3f54687d939a86705b46301b0600001f344a5f74899f947d68533e29141e2a3a4e62768a9f94806b56422d1804001d32475c72868686848484848686867b66503b2611000000000000031322303e4a56616a737a8286848486898886827a73695e503f2c180400000e1b262e37404a535c646e746956422d1904000000000000000000000000000000000000000000102232404e5b5f5647373a3d3e3d3a3847555b56493a2b1a0800000000000000000000000000000715202b353f4a555f6b76828882796e5e4b37220d000000000000000000000000000511191e1f1f1e1e1d1d1d3043546372828980756d77828c7c6d5f4f3d2a1d1e1e1f1f1d170c0000001a2f43586c80948a75604c53687d938a766c7d8c79685650504e4942382c1f1102000000000000001d32475c72889d8f78634e38323232475c70796c58432d1b0c00000015283a48525756514536241100000000001e33485e73899f8d77624c37220d1b30465b70879c98836d58432e19000000000a1f344a5f748ba08c76605756585d646f7b8b9a90827262503d2a17030016293b4a545662778c9d88725d57554e402f38485356586a809495806b5956544b3c2b18040000030f181d1e1e1e33485e738989735e48331e1e1e1c170d0100000f253a4f6479897a6c5e505c7288907c6955423e3f392f221404000000071b2f44596d83806d5c4d433e404a5b6e839795826c57422e190400001d32475c71879b937d68533e29131f304356697d91a08d7965503c281300001b3044586a70706f6e6e6e6e6f6f706f604d39240f000000000000000412202d39444e575f666c707374747472706c665f564c4032210f0000000009121b242d363f49515a5f594b3a271300000000000000000000000000000000000000000000041422303e474a44382925282928252937424643392b1c0d00000000000000000000000000000000030e18222d37424d59646e736d655c50412f1c0800000000000000000000000000000005090a0a0803000114263645546271808f88808a8b7b6d5e4f4131200e04090a0a0803000000001e33485d71879b87715c4751667b91907b667283867462513f39352e261b0f0100000000000000001d32475c72889d8f78634e38231d2d405260645e4f43382a190700001c314558666b6b6353412d1800000000001e33485e73899f8d77624c37220d1e33485d72889c99846e58432e19000000000a1f344a5f748ba08c766e6c6b6d7177828d90887d7263544433210e00001d314558676b6f7c909d8d7a6f6c6a5e4c394356666b6d7485999a86756e6b695a47331e0900000000000000001e33485e738989735e48331e09000000000000000d22374b6074796b5d4e475c72889985715e4a3729251d11040000000000162a3f53687c8b7a6b5f5753555c68798b9c8b7965513d29140000001a2f43586c829594806a55402b202c3c4e607286999784705d4936210d000015283b4c585b5b5a595858585a5a5b5a5243311e0a0000000000000000020f1b27313b444b52575b5e5f5f5f5d5b57524b433a2f22140400000000000008111a232c353e474a463b2d1c0a00000000000000000000000000000000000000000000000412202b333430271a10131313101a252d302e271b0d0000000000000000000000000000000000000005101b25303b47515b5e5952493f3223120000000000000000000000000000000000000000000000000818273644536270808f958a7b6c5d4f4031231303000000000000000000001f344a5f74899b866f5a4550667b91947d68667789806e5d4b3a281a1209000000000000000000001d32475c72889d8f78634e3823112334434d505b5d564836230f00001f344a5f748282705b46301b00000000001e33485e73899f8d77624c37221124374c60758a9f97826c57422c17000000000a1f344a5f748ba08d8784838283878a87837c756b6054453626150300001f344a5f748284898888888884827c67523c475c728283878888888888838276604b36210b00000000000000001e33485e738989735e48331e0900000000000000081d31445765675b4d3f475c7287938d7a66533f2b17090000000000000011253a4e63778c8a7c726b686a6f7987978d7d6d5c4936220e00000015293d5164778a98836e5a4635343d4a5a6b7d909d8c796754412d1a0600000d1f30404e575c5c584e4451595c5b554a3c2c1a07000000000000000000000a151e2830373d4246484a4a4a4846423d3730271d1204000000000000000000071019222b3234322a1d0f00000000000000000000000000000000000000000000000000020f181e1f1c140900000000000812191b19130a0000000000000000000000000000000000000000000008131e29343f4748443e362d22140500000000000000000000000000000000000000000000000000091827354452617080897a6b5d4e3f3122130400000000000000000000001f344a5f74899b866f5a4450667b91937d685a6b7d8c7a69574634221100000000000000000000001d32475c72889d8f78634e38230e162534485c6e7266523e291400001f344a5f748b87705b46301b0000000b131e33485e73899f8d77624c3722212f4053677a8fa4927d69543f2a1500000009111f344a5f748ba08c76737476767674716d6861584e43362718090000001e33485d6f7473737272727373747363503b465a6d74747372727272737374705e4a35200b00000000000000001d32475b6d73736c5a46321d0800000000000000021528394851524a3d2f435768768086836f5a442f1a05000000000000000b2034495d72877d8086827d80848c8e877c6f604f3e2c1a060000000e2235485b6d7d8f897663534a494f5a6878899b8f806e5c4a372411000000162a3d4e5e6a71716b5f53626d7270685a493724100000000000000000000000020b141c23292d313334343433302d29231c140a00000000000000000000000000060f181e1f1d170c000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000010c17222c3233302a221a1004000000000000000000000000000000000000000000000000000000091726344351616f746b5c4e3f302113040000000000000000000000001d32475c71869b87705b4653687c938f7a65515f718387756352402f1d0b000000000000000001081d32475c72889d8f78634e3823161622374c6076806a543f2a1500001f344a5f748b87705b46301b0000101d272d33485e73899f8d77624c372f343f4d5e7083969e8b77634f3a261100000f1b252a344a5f748ba08c7660606060605f5c59534d453b3125180900000000192d40515d5f5e5e5c5c5c5e5e5f5f5646343e4f5c5f5f5e5d5c5c5c5e5e5f5d52422f1b070000000000000000182b3e4f5a5f5e5a4e3d2b170300000000000000000a1b2a363d3d372d273a4a58636a70726a57432e190400000000000000061b2f44586d82746b72787c80807d79736a5e514232210f0000000005182b3e4f6070808e8270645e5e636c7887978f807061503e2d1a080000001c3145596c7c87877d6c5f718088857866533f2a150000000000000000000000000001080f14181c1e1f1f1f1e1b18140f0801000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000060d13181b1e1f1f1f1f1e1e1e1e1e1f1f1f1c150a0000000000000000000000000000000000000000000000000000000510181d1e1b160f070000000000000000000000000000000000000000000000000000000000000816253442515c5f594d3e30211203000000000000000000000000001a2e43576b809388735e49586c82968874604c53657689826f5e4c3a29170400000000000008141c2132475c72889d8f78634e382b2b2b2d3d506579806a543f2a1500001f344a5f748b87705b46301b000d1e2e3a4243485e73899f8e78634e434448505d6b7b8da092826e5b4834200c000c1d2d393f404b60748ba08c76604b4b4b4b4a47443f3932281f1408000000000011223240484a494847474748484a4a443828313e484a4a484847474748494a49413424120000000000000000000f21313e464a49463d30200e000000000000000000000c19222828241b1c2c3b4650565b5c594c3b2814000000000000000000152a3e5366746f5d5d63686a6a68655f574c403223140300000000000e20324252616f7c8782787373777d8a92897d7061524332210f000000001f344a5f73899b9b897464798e9c96836d58432e1800000000000000000000000000000000000000000000000000000000000000000000000000000009111516161616161616161616161616161616140f0600000000000000000000000009121a21272c303334343434333333333334343431281b0c000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000071624333f484a463c2f201203000000000000000000000000000014283c506375878d7864566173878f7d6b584547596b7c8d7b6a584734200c0000000000071725303637475c72889d8f78634e40404040424b5a6c807d68533e291400001f344a5f748b87705b46301b00172a3c4c56585a60758ba0907a655a58595d636e7a8a9a91837363513e2b180500172a3b4a54565862778ca18e79655b5857565246362a251e150c020000000000000514222d333434333232323333343430271a212c3334343333323232333434342e2416060000000000000000000313202b323434312a1f12020000000000000000000000060e13130f080e1d29333b424647453c2e1d0b0000000000000000000f233749585f5c51494f53545453504b433a2f2314050000000000000314243443515e6a737c8387898a88857d756b5f524334251504000000001f344a5f74899d9d897464798f9f97836d58432e190000000000070b0b0b0b0a0a0a0a0c0e0f0f0f0f0e0b070200000000000000000000000000000f1b252a2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2922180b00000000000000000006111c262e363c4145484a4a4a4a48484848484a4a4a44392a19060000000000000000070c0d0d0b0a0909090a0b0c0d0c0801000000000000050b0d0d0b0b0a090a0a0b0d0d0c090200000000000000000000000000000000000000000615222c3334322a1f11020000000000000000000000000000000d2033465869798882716b70808e8070604e3b3c4d5e70828875634f3a25100000000000122535434b4c4e5e73889d907a655856565656575d68788a7d68533e291300001f344a5f748b87705b46301b001d32465a6a6e6f737d909b9582736f6e6e7177808c9289807364554534220f00001d324659686b6c717d929d958376706d6b6b6454402c180a020000000000000000000511191e1f1f1e1d1d1d1e1e1f1f1c14090f191e1f1f1e1e1d1d1d1e1f1f1f1a12060000000000000000000000030e171d1f1f1c170e02000000000000000000000000000000000000000c1720272d313230291e1000000000000000000000071a2b3a454a483f353a3d3f3f3e3b3630271d1205000000000000000006162533414c5760686d727374736f6a62594e413425160700000000001c31465a6d7d8989806d6072828a887a6754402b1600000006121b202121201f1f1f1f21232425252423201c17100901000000000000000000000c1d2d393f404040404040404040404040404040403e35291a09000000000000000b17232e39414a50565a5d5f5f5f5f5e5e5e5e5e5f5f5f574836220e00000000000006121b212222211f1e1e1e1f212222211d1408000000010e181f222221201f1e1f1f212222211d150900000000000000000000000000000000000000000510191e1f1d170d01000000000000000000000000000000000416293a4b5b697682858285857c70625242312f41536476847765503b261000000000001b2f425360626368778ca19582726d6b6b6b6b6c707a87947d68533e291300001f344a5f748b87705b46301b001f344a5f74848687868686868788868484878987837d766c6155463727160500001f344a5f74828386888888888889868382826f5a442f1a0500000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000040c13191c1d1b160c0000000000000000000000000d1c283134332c2225282a2a2926221c140b00000000000000000000000715232f3a444c53595c5e5f5e5a554e463c30241607000000000000172b3e50606d73736d6155646f74736a5c4b38251100000616242f35363635343434343638393a3a3a3835302b241d140a000000000000000000172a3b4a545656565656565656565656565656565652473827140100000000000c1b2835414c555d656a6f7274747473737373737374747465513d281300000000000515242f363737363433333334363737363126180900000f1f2b34373736353433343436373737312719090000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000b1d2d3d4c59646d72747470695e5244342524354758696f67594835210d00000000001f34495e7177787c859494949087838282828282868d94937d68533e291300001f344a5f748b87705b46301b001e33485c6d727270706f6f6f70727374747474726e6962594f443728190a0000001e33485d6f747473737272727273737474746b58432e19040000000000000000000000000000000000000811171b1d1d1b161009010812191e1e1b140a0100000000000000000000000000000000000004080b0d0d0d0b07030000000000000000000000000000000000000000000000000000000000000000000000000000000000000b151c1f1e19101013151514110d07000000000000000000000000000005121d2731393f4447494a4846413b33291e1306000000000000000e213242505a5f5f5a5046535b5f5e574d3e2e1b080000122434424a4b4b4a4a4a4a4a4b4d4e4f4f4f4d4a453f3830271c1105000000000000001d324659686b6b6b6b6b6b6b6b6b6b6b6b6b6b6b6b655644301c08000000000c1c2a3946525e687179808488898b8b89898989898986837d68533e29130000000000112333414a4c4c4b4a4848484a4b4c4c4b44362615020a1c2d3d484c4c4b4a4948494a4b4c4c4c443727150200000000000000000000000000000000060a0d10121313131312100e0b080400000000000000000000000000000f1f2e3b4751585d5f5f5b554c4134261717293b4b575a54493b2b190600000000001f344a5f747d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7966513c271200001f344a5f748b87705b46301b00192c3e4f5a5c5c5b5b5a5a5a5b5c5e5f5f5f5f5c59544e463d3226190a00000000192d40515d5f5f5e5e5c5c5c5c5e5e5f5f5f5a4d3b2814000000000000000000000000000000000003101b242b303232302b241d141a252e33332f271e140b0200000000000000000000000000040c13191d20222222201c18120b02000000000000000000000000000000000004080b0d0d0d0b070300000000000000000000000000000000000000000000000000000000000000000000000000000000000000000b141d242a2f32343433312d261f160c010000000000000000031423323d454a4a463e3540474a49443b2f20100000001a2e41525e60605f5f5f5f5f606263646464625e5a534c433a2e2216080000000000001f344a5f7482828282828282828282828282828282735f4a35200b000000091a2a3a485764707b858d94999d9fa0917d7b8e9d8c7d726c6b604e3a261100000000001a2e41515f6262605f5e5e5e5f606162605444311e091126394b5a6262605f5e5e5e5f606162605545321e0a00000000000000000000000000080f151a1f23252729292928272523201d1915110c070000000000000000000001101d29343d44484a4a4741392f2416080c1d2d3a424440372b1d0d0000000000001c3144576568686868686868686868686868686868686868675b4a37230f00001f344a5f748b87705b46301b000f21313e46474746464444444647484a4a4a4a4744403a332a201509000000000011223240484a4a48484747474748484a4a4a473d2f1e0c000000000000000000000000000000000413212d3840454747453f3830272b37414848433a31281e150c02000000000000000000010d1720272d323537373735312c261e150c02000000000000000000000000040c13191d20222222201c18120b0200000000000000000000000000000000050a0f12131313110e0904000000000000000000000000000000010910161a1d1f1f1e1c18120b0300000000000000000000000514212a313434312b232c32343430281e11020000001f34495d707676747474747476777879797877736e6860564c403326170800000000001e33485d6f777d889394949494949494949597978c76604b36210b00000315273848586675828e98a1a8aeb2b4a48f78768c94806e5f58564f42311e0b00000000001f34495d70777776747373737476767772614c38230d152b405469777776747373737476767773614d39240f00000000000000000000000a131b23292f34383a3c3e3e3e3d3c3a3835322e2a26211b1207000000000000000000000c1721292f333434322d261d120600000f1d272e2f2c241a0d00000000000000152839485153535353535f70746b635b5353535353535353524b3d2d1b0800001f344a5f748b87705b46301b000313202b31323230302f2f2f31323334343434322f2b261f170d030000000000000514222d3334343333323232323333343434322b1f1100000000000000000000000000000000001122313e4a545a5c5c59534c433a3a49545d5d564d443b32281f14050000000000000006131f2a333b42474a4c4c4c4a46413a32281e1308000000000000000000010d1720272d323537373735312c261e150c020000000000000000000000000a12191f242728292826231e181108000000000000000000000000000000000000000000000000000000000000000000000000000000030e161c1f1f1c1610181d1f1f1b150b00000000001f344a5f748082858b8b8b8b8b83807d7d808488837b73695e51443526170700000000192d40515d636a7584837d7d7d7d7d7d7d80848c8c76614c37220d00000e21334455667585939fabb4bcc2c7b9a48f78768c8f79655043403c3223130200000000001f344a5f737d82888b8989898b84807d77634d38230e162b40566b7d7d82888989898b8c858077644f3a240f00000000000000000008131d262f373e43494c4f5253535352514f4d4a47433f3a362f25170800000000000000000000050e151b1e1f1f1d18120a00000000000b14191a18110800000000000000000a1b2a363d3e3e3e3e4c61768480776f676058524c46403e3d382d1f0f0000001f344a5f748b87705b46301b0000030e171c1d1d1b1b1a1a1a1c1d1e1f1f1f1f1d1a17110b030000000000000000000511191e1f1f1e1e1d1d1d1d1e1e1f1f1f1e180e01000000000000000000000000000000000b1e2f404f5c676f72726e6860564d48586671726960574e453b312314020000000000081624303c464f565c5f6262615f5b554e453b3125190b0000000000000006131f2a333b42474a4c4c4c4a46413a32281e130800000000000000000007121d262d34383c3e3e3e3b38332c251b120700000000000000000811171b1d1d1b161009010812191e1e1b140a010000000000000000000000000000000000000000000000000000000000001d314558676a6b7183979e8b796e6a68686b6f757d8a867b6f6253443525130200000011223240494f5865778c827168686868686a6f7a8c77634e38230e0004172a3d5062738494a3b1bdc8d0d7cfb9a48f78768c8f78634e382b282014050000000000001c30445664686c7584939a88796f6b6866594734200b13283c4f6068696c778c9f9f8f80726a675a4835210c00000000000000000d19253039434b52585d616467686868676664625f5c58544f4a423526140100000000000000000000000000000000000000000000000000000000000000000000000000000000000c19222829292933475967717b86837b746d66605a555044352310010000001f344a5f748b87705b46301b00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000014273a4d5e6d7a838887837b73695f55657685867c736a61584e4232200c0000000008172634424e59636a7074777776746f6961584e4336291a080000000000081624303c464f565c5f6262615f5b554e453b3125190b000000000000000b18242f3941484d51535353504c4740382e24190d000000000003101b242b303232302b241d141a252e33332f271e140b02000000000000000811151616151515151515161616120a000000000016293b49535457687d9398836f5c545353565b626c78878d8071625342311f0d0000000514222d343b485d71878f7c6955535353555c6e827964503b2510000c2034475a6d8091a2b2c1cfdae4e4cfb9a48f78768c8f78634e3823130c020000000000000014273847515358657587937d6a5c565352493b2a18050c2032424e535464788da29583716155524a3c2b180500000000000003111e2b37424c565f666d7276797c7d7d7d7c7b797774706c68645e5343311d09000000000009111516161515151515151616151008010b12161616151515151516161511090000000000060e131313172a3b49545e69737d8988827a756f6962523f2b17020000001f344a5f748b87705b46301b0000000000000000000000000000000000000000050d1112121211111111111111121212110d05000000000000000000000000000000020d151b1d1d1a140b0100000000000000001b2f43576a7c8c979b8e8787867c72676f83949990877d756b604f3c28130000000415263544525f6b767d868a8c8d8c89847d756b6054473725120000000008172634424e59636a7074777776746f6961584e4336291a0800000000000d1b2936424c555c626668686865615b544b41362b1e100000000413212d3840454747453f3830272b37414848433a31281e150c02000000000e1b252a2b2b2a2a2a2a2a2a2b2b2b261d10010000000c1d2c373e3f52677c9395806a55403e3e41464f5a687789908270604f3d2a180500000005111a2030465b70879985705b463e3e4052667a7c68533e29140013273b4f63768a9dafc0d0dfecf7e4cfb9a48f78768c8f78634e38230e000000000000000000091a29353c3f4758697c8f7c6752413e3d372b1d0d00021423313a45586c80939d8a776553433d372c1e0d0000000000000312212f3c48545f69727a82878c8a85827d7c7c7d82858986827d7871604d38230e000000000f1b252a2b2b2a2a2a2a2a2a2b2b2a241a121e272b2b2b2a2a2a2a2a2b2b2a251b0f0000000000000000000c1d2b37414c56616c76828d8f89847d6f5a442f1a050000001f344a5f748b87705b46301b000000000000000000000000000000000000000b172126272727262626262626262727272621180c00000000000000000000000000051420292f32322e281e1204000000000000001f34495d72879a9e8c7c72717780857a768b9f95867d80857d6b56402b16000000102233435362707d8992978d86827d7d8083887d726555422d190000000415263544525f6b767d868a8c8d8c89847d756b605447372512000000000c1c2b3947535f6970777b7d7d7c7a766f675e54483c2e1e0c00001122313e4a545a5c5c59534c433a3a49545d5d564d443b32281f140500000b1c2c383f40403f3f3f3f3f3f4040403a2e1f0f000000000e1a24293c52677c9395806a543f2a292c333d4a596a7c8f8f7d6c5a4734210e000000000a161f31475c70879c88735e483329384c61757a69543f2a1400182d41566a7d93a6b9ccdeeefdffe4cfb9a48f78768c8f78634e38230e000000000000000000000b182227293a4c5f7285806c58433028231a0d0000000514283b4e6175889c93806d5a483628241b0e000000000000011121303f4d5a66717c868e90867c756f6b686767686b707b8b97928e79644f3a250f0000000c1d2d393f40403f3f3f3f3f3f40403f372b21303b4040403f3f3f3f3f40403f392d1d0c0000000000000000000d1a252f3a444e59646f7a86867d756856422d19040000001f344a5f748a87705b46301b000000000000000000000000000000000000091a29343b3c3c3c3b3b3b3b3b3b3b3c3c3c3b352a1b0a0000000000000000000000041423323c444747433b302212010000000000001f344a5f748ba097826e5e5d636d7680838f9e8a77696a707466533f2a150000091b2e40516171828f9b91857a726c69686a6e757d83705b46301b000000102233435362707d8992978d86827d7d8083887d726555422d1900000008192a3a495765717c858c9093908d8d8b847a7066594c3b2815000b1e2f404f5c676f72726e6860564d48586671726960574e453b312314020015283a4a5456565454545454545656554c3d2c1906000000000812273c52677c9395806a543f2a1518202c3c4d5f72869a8a7764503d29150100000919273339495e73899e89735e483a3a38455764665d4c3a2611001c31465b70859aaec2d6e9fbffffe4cfb9a48f78768c8f78634e38230e0000000000000000000000050e121d2f4255687c87735f4c38241107000000000a1d3144576a7d919d8a7663503d2b190f08000000000000000e1f2f3f4e5d6a77848f95897d7269615b5653525253565d6d8093a18c77624d38230e000000172a3b4a54565654545454545456565349392e3f4e55565654545454545656544a3b2a170000000000000000000008121d27323c47525d6872706a61584a392713000000001e33485c6d74746a57432f1a000000000000000000000000000000000000142738475052525150505050505050525252504739281502000000000000000000000f2132424f585c5c574e40301f0d0000000000001e33485d72879b947d685348505a636d7b9199846f5a555d5f584937241000001226394b5d6f80909f908273675d575453555a616b746a57432f1a0000091b2e40516171828f9b91857a726c69686a6e757d83705b46301b00000214263748586775838f989188807a7777787c8383776a58442f1a0014273a4d5e6d7a838887837b73695f55657685867c736a61584e4232200c001c314558676b6b6a6a6a6a6a6a6b6b695b4935200c000000000c18273c52677c9395806a543f2a2727251e3043576a809494806c5844301c070002152737454e4f62778c9d88725d4f4f4f4c41474f504b3f2f1d0a001f34495e73899eb3c8dcf1ffffffe4cfb9a48f78768c8f78634e38230e00000000000000000000000000001326394c6073887b6754402d19060000000013273a4d6073879b94826d5a4733210e0000000000000000081a2c3d4d5d6c7a89959485776b60564d46413e3c3c3e415063788d9f8a745f4a35200b0000001d324659686b6b6a6a6a6a6a6a6b6b675744374b5d6a6b6b6a6a6a6a6a6b6b685946321d0000000000000000000000000a151f2a35404b565d5c564e453a2c1c0a00000000192c3e4f5a5f5f594c3b28140000000000000000000000000000000000001c3044566467676666666666666666676767645745311d0800000000000000000004192c3f50606c72716a5e4e3c29150100000000001a2f43586b7d8f96826c5a4d444750667b9197826c5742484a453a2b1a0700071b2e4255687a8d9e93827162554a433f3e40454e595f594c3b281400001226394b5d6f80909f908273675d575453555a616b746a57432f1a00000c1f314355667686949b8c80746b65626264686e7783705b46301b001b2f43576a7c8c979b8e8787867c72676f83949990877d756b604f3c2813001f344a5f748282808080808080828278634e38230e0000000a1b2a353c52677c9395806a543f3c3c3c3930273c5065798f9c88735f4a36210c000a1e3245556264677c919a8570646464645f503e3a3b372e211100001f344a5f748ba0b5cbdff5ffffffe4cfb9a48f78768c8f78634e38230e00000000000000000000000000000a1d3044576b8084705c4935210e000000091c304356697c909e8b7764513d2a17040000000000000001142637495a6b7b8b99948575675a4e433a322d29272729354a5f748a9f89735e48331e090000001f344a5f7482828080808080808282735e483a4f6479828080808080808282745f4a341f00000000000000000000000000020d17232e39434847423b32281c0e00000000000f21313e464a4a453c2e1d0b0000000000000000000000000000000000001f344a5f737c7c7b7b7b7b7b7b7b7b7c7c7c75604b36200b0000000000000000000a1f33485c6e7d88877c6b5844301b07000000000014283b4e6070808b89786a60585050667b9197826b5640333431281c0d00000e22364a5e7185989b8875645344382e2a292b313c464a463c2e1d0b00071b2e4255687a8d9e93827162554a433f3e40454e595f594c3b2814000215283b4e607284949c8c7c6e6157514d4c4f535b656e6554412d19001f34495d72879a9e8c7c72717780857a768b9f95867d80857d6b56402b16001e33485c6f74767a8995958c7c777471604c37220d000002152839475052677c9395806a54525252524d4131374c61768ca18e78644f3a2510000e23384d617379798296958079797979796d5a453026231b100300001f344a5f748ba0b5cbdff5ffffffe4cfb9a48f78768c8f78634e38230e00000000000000000000000000000115283b4f63768a7864513d2a160300001225394c5f72869995826e5b4734210e00000000000000000a1d304355677889999887766657493c30261e181412121e33485e73899e89735e48331e090000001f34495d7074767c8b95958b7c76746e5b47394e6273757780909595837774705d49341f00000000000000000000000000000005111c262f33322d271f150b0000000000000313202b32343431291e10000000000000000000000000000000000000001f34495e7178797c859191918f847d7b7978725f4a35200b0000000000000000000d23384c62778b9c9b88735e49341f0a00000000000c1f314352616e7882897d746c645d667b9197826b56402b1f1c150b00000014283d5165798da1927d6a584636271b1514171e2a3234322a1e1000000e22364a5e7185989b8875645344382e2a292b313c464a463c2e1d0b00091d3144586b7d90a2907d6d5e50443c38373a3f4853585347372512001f344a5f748ba097826e5e5d636d7680838f9e8a77696a707466533f2a1500192d3f515d5f616b809599846f625f5e5343301d090000081d3144576467677c9395806a67676767675f4e3b344a5f748a9f917c67523c2712000e23384e637886868c9e90868686868686705b46301b0e08000000001f34495e73899eb3c7dcf0ffffffe4cfb9a48f78768c8f78634e38230e0000000000000000000000000000000c2033475a6e82826d5946321e0b01081b2e4155687b8f9f8c7865513e2b1805000000000000000014273a4d607285969e8c7a695848392b1e130a09131b1e1e33485d72889d89735e48331e090000001a2e41515d5f616d829697826d615f5c503f3345555e606373889c8f79655f5d51412e1a000000000000000000000000000000000009141b1e1d19130b020000000000000000030e171d1f1f1c160c00000000000000000000000000000000000000001b2f425360636468768ba095827069666463615443301c080000000000000000000e23384d63778da09e89735f4a341f0a00000000000214253443505c666f777d86807870697b9197826b56402b16080200000000182d42576b80959e8a75614e3b2918090000020c171d1f1d170d00000014283d5165798da1927d6a584636271b1514171e2a3234322a1e1000001024384c6074889b988572604f4032282322252b3640434036291908001e33485d72879b947d685348505a636d7b9199846f5a555d5f58493724100010223240484a52677c9397826b564a49423525140100000b20364b60747c7c7c9395807c7c7c7c7c7c6b564133485e73899f947d68533e2913000c21364a5d6c6f798f9e8a756f6f6f6f6f6756422e282015060000001c31465b6f8599adc1d5e8faffffe4cfb9a48f78768c8f78634e38230e00000000000000000000000000000004182b3e5266798975614e3a2716161624374a5e71859896836f5c4936220f0000000000000000071b2f4356697c90a294826f5d4b3a2a1b0d010b1a262f333334495e73899f89735e4833261a0b000011233341494a53687d94947d69544a483f32273743494b5a6f869a8d77624d4941332311000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000122535434c4e4f5d72889c917b6654504f4e4c44362614010000000000000000000b2035495d71828c8b806e5a46311c07000000000000071625333e49525b636a727982857c7b9197826b56402b160100000000001c31465b70869a98836f5a46321f0c000000000003080a080300000000182d42576b80959e8a75614e3b2918090000020c171d1f1d170d000000152a3f53677b90a38f7b6755433122150e0d1019242b2e2b24190b00001a2f43586b7d8f96826c5a4d444750667b9197826c5742484a453a2b1a07000414222d333c52677c9397826b5640342f2517080000000b20364b60757d7d7d9395807d7d7d7d7d7d6c5742344a5f74899f947d68533e291300061a2d3f4e586a809498846f5b5a5a5a5a56493f403c322414030000182d41556a7d92a5b8cbddedfcffe4cfb9a48f78768c8f78634e38230e000000000000000000000000000000000f23364a5d71857d6a56422f2b2b2b2d4054677a8ea08d796653402c190600000000000000000e22364b5f7286999e8b7764513f2e1c0c00051829384348484a4c60758ba08b745f4a4338291806000515232e343c52677c93947d68533e332d221926303443586e84998d77624c372e2315050000000000000000000000000002090f131515130f0902000000000000000000000000000000000000060a0e1113131312100d080200000000000000000000071726313738465b70879c9079644f3b3a38383126180800000000000000000000061a2e4153637076766f61513e2b1703000000000000000715212c363f474f565e656d747b839297826b56402b160100000000001e33485e73889d937d6954402b170300000000000000000000000000001c31465b70869a98836f5a46321f0c000000000003080a0803000000001a2e43586d82979c88735f4c382514040000000710171917100700000014283b4e6070808b89786a60585050667b9197826b5640333431281c0d000000051119273c52677c9397826b56402b1b120700000000081d3145586668687c9395806a6868686868604f3d374c61768ca0927c67523d2813000010213044596e8499937d695544444444424a5456504232200c000012263b4e6276899cadbfcfdeebf6e4cfb9a48f78768c8f78634e38230e00000000000000000000000000000000071b2e4255697c86725e4b4040404040495d7083979783705d4a36231000000000000000000013283d5165798ea297836f5b4735221000000e223547555d5e5f61687a8fa18c77625d564735220f000005111a273c52677c93947d68533e29191009141b2e43586e84998d77624c37221105000000000000000000000000000a151e24282a2a28241d150b0000000000000000000000000000040c141a1f23262829292725211c160f0600000000000000000008141d2230465b70879c9079644f3a2523231e150b0b080100000000000000000012243645535d61605c514333220f0000000000000005131f292f3231343b434a515860677b9197826b56402b160100000000001f344a5f748ba0907b66513c27131313121212121212120f09000000001e33485e73889d937d6954402b170300000000000000000000000000001d32475c71879b96826d5844301c0800000000000000000000000000000c1f314352616e7882897d746c645d667b9197826b56402b1f1c150b00000000000012273c52677c9397826b56402b160100000000000215283a485253677c9395806a54535353534e42323b5065798fa38e79644f3a25100000031b30465b70879b8f7965503b2f2f334759676b614f3b271200000b1f3346596c7d90a1b1c0cdd9e3e4cfb9a48f78768c8f78634e3823130c020000000000000000000000000000001226394d6074887a665656565656565666798da08d7a6754402d1a07000000000000000000182d42566b8095a4907b67533f2b1805000013283d5164727374767b879798917d747265523d28140000000012273c52677c93947d68533e2913000000192e43586e84998d77624c37220d000000000000000000000000000d1b2831393d3f3f3d3831281d100200000000000000000000010d1720282e34383b3e3e3e3c3a36312a22190f03000000000000000001091b30465b70879c9079644f3a250f0d151d20201c140900000000000000000718273640484c4c483f34251604000000000000031423313c44474640372f363d4550667b9197826b56402b160100000000001f344a5f748ba08f78634e392929292827272727272727241c110300001f344a5f748ba0907b66513c27131313121212121212120f09000000001f34495e73899f927c68533e2a150504030303030303030100000000000214253443505c666f777d86807870697b9197826b56402b1608020000000000000012273c52677c9397826b56402b16010000000000000b1c2b363d52677c9395806a543f3e3e3e3a312e42556a7d939c88745f4b36210d0000001b30465b70879b8d77624c382324384c6176806a543f2a15000003172a3c4f60728393a2afbcc6cfd6cfb9a48f78768c8f78634e382b2820140500000000000000000000000000000a1d3145586c80836f6b6b6b6b6b6b6b6f82969885715d4a372411000000000000000000001c31465b70859a9f8a75614c382410000000152a3f546a8086858483838283838384806a543f2a150000000012273c52677c93947d68533e2913000000192e43586e84998d77624c37220d0000000000000000000000000a1b2b39444d525454524d443a2e201000000000000000000002121f2a333b43494d50535353524f4b453e362c2114070000000000000000001b30465b70879c9079644f3a250f1b2831363530271909000000000000000009182638475254504434220f000000000000000e2032424f585c5b54483827293b50667b9197826b56402b160100000000001e33485e73889d8d77624d3e3e3e3e3d3c3c3c3c3c3c3c382e211101001f344a5f748ba08f78634e392929292827272727272727241c110300001f344a5f748ba0907965503b261a1a1919191919191919160f0500000000071625333e49525b636a727982857c7b9197826b56402b1601000000000000000012273c52677c9397826b56402b1601000000000000000d19273c52677c9395806a543f2a29292626384a5d71859994826d5945311c080000001a2f44596e84998c76604b36212b3f53677b7d68533e29140000000d1f314354647484919ea9b3bcc2c6b9a48f78768c8f79655143403c32231302000000000000000000000000000215293c5063778b8282828282828282828b9f8f7b6854412e1b08000000000000000000001e33485e73889d9b86705c47321e0900000013283c506370706f6e6c6c6c6c6c6d6e6e62503c27130000000012273c52677c93947d68533e2913000000192e43586e84998d77624c37220d000000000000000000000001142739495761676a696660574c3e2e1e0c00000000000000001020303d464f575d626668686867645f5952493e3225160700000000000000001b30465b70879c9079644f3a25182a39454b4b443727150200000000000000071b2f4355656a62523f2b1601000000000000162a3d4f606c717066564532263b50667b9197826b56402b160100000000001c31465b70869a8f7863535353535352525252525252524c3f2f1e0b001e33485e73889d8d77624d3e3e3e3e3d3c3c3c3c3c3c3c382e211101001f344a5f748a9f8f78634e382f2f2f2e2e2e2e2e2e2e2e2a221607000000000715212c363f474f565e656d747b839297826b56402b1601000000000000000012273c52677c9397826b56402b1601000000000000000a12273c52677c9395806a543f2a191e27344455677a8d9c8a7764513e2a1601000000172c41556a7d938d77634e3a2e37495b6e827c67523d28130000000214253647566573828c97a0a7adb2b4a48f78768c94806e5f58564f42311e0b00000000000000000000000000000d2034485b6f83807d7d7d7d7d7d7d82979986725f4c38251200000000000000000000001f344a5f748b9f98836d58432e19040000000d213445535b5b5a585757575757585859524433200d0000000012273c52677c93947d68533e2913000000192e43586e84998d77624c37220d0000000000000000000000081c30445767747c807d7b746a5c4c3c2a1805000000000000071a2d3e4e59636a71777a7c7d7d7c79746d655b504334251605000000000000001b30465b70879c9079644f3a2521354757605f5545321e0a000000000000000e22364a5e72806d58432e19030000000000001c31465a6d7d878474614e3b273b50667b9197826b56402b16010000000000182d42566b8094907968686868686867676767676767675d4d3b2713001c31465b70869a8f7863535353535352525252525252524c3f2f1e0b001e33485d72889c8d77634d4444444443434343434343433e34251604000005131f292f3231343b434a515860677b9197826b56402b1601000000000000000012273c52677c9397826b56402b16010000000000000f1c262c3c52677c9395806a543f2c2f323a4451617385978f7d6c5a4835210e0000000012273b4f637689927d69564743475566788b7b66503b261100000000081929384755636f7a848c93999c9fa0917d7c8e9d8c7d726d6b604e3a2611000000000000000000000000000005182c3f53667a88746868686868778a9e907c6956422f1c0900000000000000000000001f344a5f748ba095806b56402b160100000004162736414646444342424242424343443f342616040000000012273c52677c93947d68533e2913000000192e43586e84998d77624c37220d00000000000000000000000c21364b5f73869090837d857a6a594734210d0000000000000d22364a5c6c7680868c8a837d7b7c808682786d615243342312000000000000001b30465b70879c9079644f3a25263b50647573614d38230e0000000000000013283c516579826c57422d18030000000000001e33485e73899c927d6a55412d3b50667b9197826b56402b1601000000000013283c5065798d937d7d7d7d7d7d7d7c7c7c7c7c7c7c7b6a56412c1700182d42566b8094907968686868686867676767676767675d4d3b2713001b30455a6f84988f78635a5a5a5a5a5858585858585858514333210e00031423313c44474640372f363d4550667b9197826b56402b1601000000000000000012273c52677c9397826b56402b160100000000000c1d2d39404252677c9395806a54434244474d56627080918f8070604f3d2b1805000000000c2034475a6b7c8d8674645b585b6472848f79644f3a250f00000000000b1a293745515d6770787d8488898b8b89888888888987837d68533e29130000000000000000000000000000001023374b5e72867c695553596d80939a8673604c3926130000000000000000000000001f344a5f748a9f95806a543f2a1500000000000918242d30302f2e2d2c2c2c2c2e2e2f2b221708000000000012273c52677c93947d68533e2913000000192e43586e84998d77624c37220d00000000000000000000000d22374c62778c9785726977897664503c281400000000000010253b50647989929083776e6866676b727d8b80706152412f1d0a0000000000001b30465b70879c9079644f3a37383d52677c78634e38230e00000000000000182d41566b807d69543f2a15000000000000001d32475c7185979985705c48343c52677b9197826b56402b160100000000000d2136495d708496837b7b7b7c7c7c7c7d7d7d839393846e58432e190013283c5065798d937d7d7d7d7d7d7d7c7c7c7c7c7c7c7b6a56412c1700172c4055697d92907b6f6f6f6f6f6f6e6e6e6e6e6e6e6d61513e2915000e2032424f585c5b54483827293b50667b9197826b56402b1601000000000000000012273c52677c9397826b56402b1601000000000016293b4b55575a697d9397836e5d5857585c616973808f8a7d7061524231200e000000000004172a3c4e5f6e7b878276706e707683918d78634e38230e0000000000000b1a27343f4a545d646a6f7274747473737272727373747465513d2813000000000000000000000000000000081b2f4256697d85715d4f6376899c907d6a5643301d0a0000000000000000000000001e33485d72889d95806a543f2a150000000000000711181b1b1a19181717171718191a170f0500000000000012273c52677c93947d68533e2913000000192e43586e84998d77624c37220d00000000000000000000000b2034495d6f8084786760758b806b57422d1904000000000013283d52677c92928271655a54515256606d7d8f806f5e4c3926130000000000001b30465b70879c9079644f4c4c4e50596c8278634e38230e000000000000071c31465a6f857d68533e291400000000000000192e425567798a988b7764513f4054697d9496826b56402b16010000000000061a2d415467798c897566666767676768686d839897836c57422d18000d2136495d708496837b7b7b7c7c7c7c7d7d7d839393846e58432e190012263a4e63768a958686868686868684848484848484806c57422d1800162a3d4f606c717066564532263b50667b9197826b56402b1601000000000000000012273c52677c9397826b56402b160100000000001c314559686c6f7485989c8b7a716e6c6e70757c868b83786d605243342414020000000000000d1f3041505d6a747c83868485898680796f5d4935200c000000000000000916222d37414950555a5d5f5f5f5e5e5c5c5c5e5e5f5f574836220e0000000000000000000000000000000013273a4e6175897966596c80929b8874604d3a2714010000000000000000000000001c31455a6f859995806a55402b160100000000000000000000000004111b2123211b1105000000000000000012273c52677c93947d68533e2913000000192e43586e84998d77624c37220d0000000000000000000000061a2d4051616b6e685a687a8f866f5a45301b060000000000142a3f54697d9485736354473f3c3d434f6074888e7b6956422e1a0600000000001b30465b70879c90796462626263656b778977634d38230e0000000000000a1f34495e7388806b56422e1c0c0000000000001226384a5b6b798894826e5d514f5c6f8498927d68533f2914000000000000001124374a5c6e808f7d6c5a52525252535c70869b94806a55402b1600061a2d415467798c897566666767676768686d839897836c57422d18000b1f33475a6d82938574747476767676777777839899846e58432e19001c31465a6d7d878474614e3b273b50667b9197826b56402b1601000000000000000012273c52677c9397826b56402b160100000000001e33485e738384888787878788878483848687837d776f665b4f42342516060000000000000001122332404c5761686e72747473706c655d51402d1a06000000000000000005101b242d353b4145484a4a4a484847474748494a4a44392a1906000000000000000000000000000000000b1e3245596c80826e6175889c927d6a5744311e0b00000000000000000000000000182d41566b809497826c57422d190400000000000000000000000313222e3638362e2314040000000000000012273c52677c93947d68533e29130000001a2f445a6f859a8d77624c37220d000000000000000000000000112333424f57585e6a778798866f5a45301b060000000000172c41566b828c79675645362b27283145596e849986725d4935200c00000000001b30465b70879c907977777777777980898d77624c37220d0000000000000b21364b60768c86715d4b3a2a1a0b0000000000091b2c3d4d5c6976828c7a6d66646a798c9c8a77634f3a251100000000000000081a2c3e506171828978685a504b4b5464778b9f8c7864503c271200001124374a5c6e808f7d6c5a52525252535c70869b94806a55402b160004172b3e516375888c77645f6060606062626e849997826c57422c17001e33485e73899c927d6a55412d3b50667b9197826b56402b1601000000000000000012273c52677c9397826b56402b160100000000001d32475b6e73727270707070727374747473716e69635b53493e322516070000000000000000000414222f3a444d545a5d5f5f5e5b57514a40322211000000000000000000000008111921272c303334343433333232323334343431281b0c000000000000000000000000000000000002162a3d5064778a766a7d929c8875614e3b2815020000000000000000000000000013283c5165798d9a86705b46321d0900000000000000000000000e2031404b4e4b4132210f0000000000000012273c52677c93947d68533e29130500061c31465b70869b8d77624c37220d0000000000000000000000000515273a4c5b66707c889692806b57422d19040000000000192e43586d83826f5c4a38271812172c42576c83988d78634e3a251000000000001b30465b70879c92888888888888898d948d77624c37220d0000000000000b21364b60768c8d7a69584838291a0b00000000000f1f2f3e4b58646f7a83807b797d89978d7d6d5a4734200c00000000000000000f2132435362718087786c645f606672829593826f5c4935210d0000081a2c3e506171828978685a504b4b5464778b9f8c7864503c271200000e213446586a7a8c826f5e4f4b4b4b4c5e72879c927d68543f2a15001d32475c7185979985705c48343c52677b9197826b56402b1601000000000000000012273c52677c9397826b56402b16020000000000182c3f505b5e5d5c5b5b5b5c5d5f5f5f5f5f5c59544f483f362c201407000000000000000000000004111d2831394045484a4a4946423d362e23140500000000000000000000000000060c12171b1e1f1f1f1e1e1d1d1d1e1f1f1f1c150a000000000000000000000000000000000000000e2135485c6f837d74889b92806c5945321f0c00000000000000000000000000000e22364a5e7286998a75604c3824110000000000000000000002162a3d4f5e635e503e2b170200000000000012273c52677c93947d68533e2f221711112034495e73889d8c76604b36210c00000000000000000000000000182d42566a79838e9991847463503c28140000000000001b30455a6f867966523f2d1a0905192e43586d8398917c67523c271200000000001b30465b70879c907972727272727378828d77624c37220d0000000000000b20354a5f748998877666564738291a0b000000000111202d3b47525d6770777d848787837a6f604f3e2b18040000000000000000031525354453616f7a86807874757983909084746452402d1a060000000f2132435362718087786c645f606672829593826f5c4935210d00000517293b4c5d6d7c8b7c6d6056515259687a8e9c8976624e3a251100192e425567798a988b7764513f4054697d9496826b56402b160100000000000007131c273c52677c9397826b56402b1d1509000000000f21323f4748484746464647484a4a4a4a4a4744403a342c23190e0300000000000000000000000000000b151e252b3033343434312d29221b110500000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005192c4053677a877d909c8976634f3c2916020000000000000000000000000000071b2f4256697c8f8f7b6753402d1b0a0000000000000000000b1d3145596d786e5a45301b060000000006121b273c52677c93947d6a5b4d40342b26262b3b4e63778c9d88735e49341f0a00000000000000000000000002192e43586e8396968a807365564533200d0000000000001c32475c7187725e4a36231005132335485c70869a947d68533e291300000000001b30465b70879c9079645c5c5c5c5f64718577624c37220d000000000000071c31455a6d82939484746556473829190700000000020f1d2935404a545c636a6f70716e67605b4d3b2814000000000000000000000717263544515d68727a8286898988847c7265564635231000000000031525354453616f7a86807874757983909084746452402d1a060000000c1d2e3f4f5e6d7a877d726a66676c7787988f7d6c5946331f0b001226384a5b6b798894826e5d514f5c6f8498927d68533f291400000000000006162530363c52677c9397826b564037312719090000000414212c3233333231303032333434343434322f2b26201810070000000000000000000000000000000000020a11171b1e1f1f1f1c19140e0700000000000000000000000c151a1b1b1b1b1b1b1b1b1b1b1b1b1b1b1b1b1b1b1b1b1b171005000000000000000000000000000000000000001124384b5f7286879993806d594633200d000000000000000000000000000000001326394c5f718395836f5d4a3928190c020000000000000a17283a4d607486705b46301b060000000515242f363c52677c939587796b5d5147403b3b3e48586a7d9296836e5945301b0700000000000000000000010b151d2b3f53677b8f85786d625547382720191208000000001e33485e73826d58442f1b0b162331415264778ca0927c67523d281300000000001b30465b70879c9079644f4747474a55697d77624d38230e00000000000001162b3e51637586979384746556473625130000000000000d19232e3740484f555a5c5d656e766b58432e19040000000000000000000008172633404b565f666c707373726f696055473828170600000000000717263544515d68727a8286898988847c726556463523100000000000102131404f5d697580867d7b7b8089928a7d70604f3d2a170400091b2c3d4d5c6976828c7a6d66646a798c9c8a77634f3a2511000000000000112434424b4c53687c9397826c574d4c4437271502000000040f181d1e1e1d1c1b1b1c1e1f1f1f1f1f1d1a16110c0500000000000000000000000000000000000000000000000000000000000000000000000000000000000000101e282f3030303030303030303030303030303030303030302b221506000000000000000000000000000000000000081c2f43566a7d929e8a7763503d2a1704000000000000000000000000000000000a1d3042546677888d7a68564636291e15100c0b0b0e131b273546576a7c836e58432e1904000000102233414a4c53687d94947d847b6f635a545050535a6675889a8d7a67533f2b160200000000000000000008131e2831393f4c5f738779675b5047443f3a342e251a0c0000001c314559696f64523e2a151c2834404f5f6f8294a28e79644f3a251000000000001b30465b70879c9079644f3a32323d52667875624d382312040000000000000e2134465868788897938474655442301d0a000000000c1d2b363d42484e555b626a717982806f5a442f1a0500000000000000000000000815222e39434b52585c5e5e626a7371604c37220d00000000000000081726394a59605f666c707373726f69605547382817060000000000031322313f4c58636c747a808383827d766d60514231200d0000000f1f2f3e4b58646f7a83807b797d89978d7d6d5a4734200c0000000000001a2e41525f62646d82969a86716562605545321e0a00000000000000000000000000000000000000000000000000000000000000000000000000000000000000050a0b090300000000000106080907040000000000000000000c1e2e3b444646464646464646464646464646464646464646453f3324130000000000000000000000000000000000040c14273b4e62758995826d5a4734210e00000000000000000000000000000000000012253648596a7a8a86746454473b312a2522202123272e394553647587826b56412c1702000000192c40515f62646d8296947d738282766e696666686d77859490826f5d4a3724100000000000000000000b1925313b444d53595d6b807b66605f5c58544f4841372a1a09000016293b4b565a53463523232e3a45515e6d7c8e9f9986725e4a36210d00000000001b30465b70879c9079644f3a2523374a5a64635746392f221302000000040e161b283a4a5a697889999383715f4c39261200000004172a3b4952575d63696f767d8683776d6353402c170200000000000000000000051625323b40464b52585f676e767d8577634e38230e0000000000000000162b4055687670675f5c5e5e5d5a554d4337291a0b00000000000000081c30435360625960666a6c6c6c6863635b4c3a2714020000000111202d3b47525d6770777d848787837a6f604f3e2b18040000000000001f34495d7077797d8b91918f82797773614d38230e00000000020e161c1f1f1d18100500020e161c1f1f1d18100500020e161c1f1f1d18100500000000000310191f211e170c00030a10161a1d1e1c19130b0100000000000016293c4c585b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5a5142301c090000000000000000000000000000000a162026273246596d828b7764513e2b180600000000000000000000000000000000000007192a3b4c5c6b7a89827264584d453e39373536383c424b56637182937d69543f2a15000000001d32475c6f77797d8c94947d686f7b86837d7b7b7c828a958b80716252402e1b0800000000000000000d1b2936434e5760686d72747882777674716d68635d544838261200000c1d2d3a42444036282b36414c57636f7c8c9b9e8d7b6956432f1b0700000000001b30465b70879c9079644f3a251a2c3c494f4e50524c40311f0c00000615212a3032313c4b5a6b7b8d9f8f7c6955412d180000000a1f334759666b71777d848b867a70655b514536241100000000000000000000000f2234434e555a60666d737a83877c72675a4834200b0000000000000000172c42576c7d847b736b645c554f49433e382e2010000000000000000c21364b6071766c62585557575c6670786a56412c170200000000020f1d2d40515d605c636a6f70716e675d514232200e000000000000001f344a5f737d7c7c7b7b7b7b7c7c7d77634d38230e0000000413202a313434322c22160813202a313434322c22160813202a313434322c2216080000000313212d343632291d11171e252b2f3233312d271e130600000000001c3145596a70707070707070707070707070707070707070706f5f4c38230e0000000000000000000000000000091928333b3c383e516578826f5b48352d23170a0000000000000000000000000000000000000d1d2e3e4d5c6a778583766a6058534e4c4a4b4d50565e68738290917c67523d2813000000001e33485d727d7d7c7c7d7d78665e69737b8287898b898680786e61534434231100000000000000000c1c2b394754606a747c838788838282838687837d77716655422e1a0500000f1c272d2f2c25313d48535e6974828d9b9d8f806f5e4c3a27140000000000001b30465b70879c9079644f3a250f1e2b35435563675e4e3b271300041524333d454746403d4d5e6f83979985705b46321d0000000d22374c617680868c92897d73685d53483e342718060000000000000000000000162a3e5161696f747a82888a80746a5f554a3c2b1805000000000000000014293d50606c7682878077706a635d58534b3e2d1b080000000000000c22374c61748480756b615b656f79837c6b56412c17020000000000091e33485d6f756c645c5a5c5c5a544b403223170a000000000000001c3044566568686766666666676768675a4734200b0000021323313d464a4a473f34261723313d464a4a473f34261723313d464a4a473f3426170600000f21313f484b463b2c252b32393f44474847423a30241708000000001f344a5f7487878787878787878787878787878787878787877a66503b26110000000000000000000000000001142737454f524c3f495c6c7064524e49403528190900000000000000000000000000000000000010202f3e4c5a66727d887d746d6763615f6062656a727a86929b8f79644f3a2510000000001b2f435564686867676868665a4c565f676d71747473706c645c5044352616050000000000000008192a39495765727d8890857a736e6b6b6c717983908c84715d48331e080000000a13191c2a36434e5a65707b87929e988c80706151402f1d0a0000000000001b30465b70879c9079644f3a250f0e1f34495e727c6a55402b16000e21334250595c5b53464053687c929e89745f4a341f0000000b2035495d6d77808782766c61564b41362b211609000000000000000000000000192e43586d7d84898f8e83776d62574d42382c1e0d0000000000000000000d2032424e59636e79838c857d77726c675c4a37230e000000000000091e324556657383887d746e78828b7b6d5e4e3b28130000000000000a1f344a5f7483807770686059534c47413c34281908000000000000162b4055687670675f575050525253524a3c2b180500000d2031414f595f5f5b5244352331414f595f5f5b5244352331414f595f5f5b52443523110000182b3e4f5c60594a3c3b3f464d53595c5e5c564d42352617080000001f344a5f748a8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b7b66503b261100000000000000000000000000081c30445563675d4e4e52595d6164635d53453727170600000000000000000000000000000000000211202e3c4955606b757d86827c78767476777980868e958f887d71604c37230e000000001326384751535352525353514a3c434c53585c5f5f5e5c5751493e3326170800000000000000021425374857677583908e8072675f595656585d6671808f8a745f4a35200b000000000d1d2c3a4854606c77838d999c91867a6e615243332311000000000008111b30465b70879c9079644f3a251f1f23374c6076826b56402b1600172b3e50616d72706455434f647990a08b745f4a341f000000061a2d3f4f5b646c727064594e44392e24190f0400000000000000000000000000172c405466737c85877b70655a50453a30251b0e00000000000000000000031524323c47515c66707b88928d87827a65503b26110000000000000215283847556473829187828b8a7b6c5d4f40301f0c000000000000071c31445766707a85847c756d67615b555046372512000000000000172c42576c7d837b736b635c554f49433e382d1f0e0000162a3d4f5f6d74746f6253402d3d4f5f6d74746f6253402d3d4f5f6d74746f6253402d1a06001d32475b6d75685a4f50535a61686d7273706a6053443526160600001d32475b6e747474747474747474747474747474747474747472614d39240f000000000000000000000000000b20354b5f737b6b6263676c717679777063554535241302000000000000000000000000000000000002101e2b37434e58616a71777d8386888a8b8b898884807a746b615343301d0900000000091a29353c3e3e3d3c3e3e3d372c30383e44474a4a4947433d352c21150800000000000000000b1e314355657586948f7d6f61554b4441404349546171828d77624d38230e000000081a2b3b4a5865727d8995a0958a8074685c504334251505000000000e1b252a30465b70879c9079644f3a343434364153667a806b56402b16001d31465a6d808883725f4c506579909d88735e49341f000000001021313e4850585d5c53473c31271c1106000000000000000000000000000000112537485660697073695e53483d33281d130800000000000000000000000006141f2a343e49545e6a75808882796f604d39240f000000000000000a1a2938465563728290968a7a6b5d4e3f312212010000000000000115283948535d68727d8889827b75706a6355422e1a05000000000014293d50606c7682878077706a635d58534b3d2c1a06001c3145596c7d898a82705d493545596c7d898a82705d493445596c7d898a82705d4934200b001e33485d7285776b6464686e757c838789867d706253443424130200182b3e505c5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5e5444311e0a000000000000000000000000000a2034495d70827c77787b82878c8f8d8273635342311f0c000000000000000000000000000000000000000d1a26313b454e565d63686d707374747474726f6b6660584e443525140100000000000b18222729292827292928231a1c242a2f32343434322e2922190f0400000000000000000115283b4e6072849494827060514338302c2b2e36435364768a79644f3a25100000011426374858687683909b9a8f83786d62564b3f32251607000000000b1c2c383f40465b70879c907964504a4a4a4a4b525f7083806a543f2a15001f344a5f74899d8f7b665255697d9396836e5a45311c000000000313202b353d43484740352a1f14090000000000000000000000000000000000081a2a39444d555b5e574c41362b20160b000000000000000000000000000000020d17222c37414c58636d736d665d5142311e0a00000000000000000b1a2837455462718289796b5c4d3f3021130400000000000000000a1b2a36404b55606a75808c908a8580715c47321c0700000000000e2133424f59646e79848c857d77726c675b4936210d001f34495e73899c9f8d77624d38495e73899c9f8c77624c38495e73899c9f8c77624c37220d001b2f43566676877d79797c83899197938f8e8f8271625242311f0c000f21323f484a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a49433626150200000000000000000000000000061a2e41526373838d8d9195928c8886878270604e3b2713000000000000000000000000000000000000000008141f28323b42494f54585b5e5f5f5f5f5d5a56524b443b3226170800000000000000050e12131313121313130e070910151a1d1f1f1f1d19140e0600000000000000000000091d3144576a7d909c897664534233261c17161a2535475a6d827c67523d281300000b1e31435566768694a194897c71665a5044392d211509000000000015283a4a5456575e73889d927d69615f5f5f5f60656f7d8e806a543f2a15001e33485d72869895806a57617185988b7966533f2b170000000000030e1821292f33322d23180d02000000000000000000000000000000000000000c1b27313a414748443a2f24190e03000000000000000000000000000000000000050f1a242f3a46505a5e59524a40332413010000000000000000000a19273645536270746a5b4d3e2f211203000000000000000000000c19232e38434d58636e79858680766a5945301b060000000000041524323c47515c66717c88928c878279644f3a240f001f34495e73899c9e8d77624d38495e73899c9e8c77624d38495e73899c9e8c77624c37220d00142638485868768590909297938c857d797879808070604e3b2713000313222d333434343434343434343434343434343434343434342f25180900000000000000000000000000000011233545556472808888837c77726f717d7d6a55402b16010000000000000000000000000000000000000000020c151e272e353a3f4346484a4a4a4a4845413d3731281f1408000000000000000000000000000000000000000000000000000000000000000000000000000000000000001024384c6074889b94806d594735241508000007182a3e516579806a543f2a15000013273a4d607284959f9183766b5f54493e32272a29251c0f010000001c304558676b6c707b8ea099887b76747474747579828d95806a543f2a15001a2e43566879889285726c72808f897c6d5c4a37241000000000000000050d141a1e1d191106000000000000000000000000000000000000000000000a141e262d323330281d11060000000000000000000000000000000000000000000007121d28333e4648453e372d22150600000000000000000000000918273544525d5f594c3d2f20110300000000000000000000000007111b26303b46515c6772716a63594c3c2916010000000000000614202a343e49545e6a75808882796f604c38230e001c3145596c7d888982705d493545596c7d888982705d493445596c7d888982705d4934200b00091a2b3a4a5967737d8688858077706a6563646e7c7d6a55402b1600000410191e1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1b130800000000000000000000000000000000061727374655616c72726e68635d5a5f6e7467533f2a150000000000000000000000000000000000000000000000020b131a20252a2e31333434343433302d28231c150c0200000000000000000000000000040f181d1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1d191107000000152a3e53677b90a18d7865513d2a1806000000000e22364a5f717667533e29140004192d42566a7d90a291827265594d42362b2f393f3f382d1f0e0000001e33485e738283868b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b7d69543f2a14001327394b5b69757d868583868680766b5e4f3e2c1a07000000000000000000000000000000000000000000000000000000000000000000000000000000010a12181d1e1b150b00000000000000000000000000000000000000000000000000000b16212b3233302a231a1105000000000000000000000000000917263441494a463c2e1f110200000000000000000000000000000009141e28333f4a555d5c574f463b2e1e0c0000000000000000020d17222c37414c58636d736d665d5142301d0900162a3d4f5f6c73736e6252402d3d4f5f6c73736e6252402d3d4f5f6c73736e6252402d1a0600000d1c2c3b4956616a7072706a645c55504e505e6d7366533f2a150000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000091928374450585d5d5a544e4945505c5f58493724100000000000000000000000000000000000000000000000000000060c1115191c1e1f1f1f1f1e1b18130e080100000000000000000000000000000414212c323333333333333333333333333333333333333333322d24180900001a2f44586d82969c87725e4935210e0000000000071c2f42536062594a38241000091e32475c7086999785736354483c30242e3f4c54534b3d2c190600001d32475b6e747474747474747474747474747474747474747364503c2712000a1c2d3d4c58626a70737474716b63594d4031200f000000000000000000040f181d1e1e1e1d1d1d1d1d1d1e1e1e1b1409000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000040e171d1e1b160f07000000000000000000000000000000000816242e3434322a1e10010000000000000000000000000000000000010c16222d38424847423b33291e100000000000000000000000050f1a242f3a46515b5e59524a4033241301000d2031414f595e5f5b5144352331414f595e5f5b5144352331414f595e5f5b5144352311000000000e1d2b38444e565c5c5b565048413b38404f5c5f564837241000000000000000000000000000000000000000000000020a121616120a000000000000000000000000000000000000000a1926323d44484845403a34323f484a453a2b1a08000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001022323f474848484848484848484848484848484848484848474136271604001d32475c71879b97836d59442f1b06000000000000132535434b4d473c2c1b08000b20364b60748a9f8d79675545362a1e23374b5d68685b4935200c0000182c3f505c5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5e554634210d00000f1f2e3a464f565b5e5f5f5c5750473c3022130300000000000000000414212c323333333232323232323333332f261a0b0000000000000000000000040b1115181a1a1a1815100a030000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000006111a1f1f1d170d00000000000000000000000000000000000000000004101b252e33322e2820170c000000000000000000000000000007121d28343e4748453e372d2215060000021323313c45494a463e34261723313d45494a463e34261723313d45494a463e3426170600000000000d1a27313b42474746413b352d2723313e484a44392a19070000000000000000000000000000000000000000040c151e262b2b261d1002000000000000000000000000000000000000091520292f3333302b2520222d333431281c0d0000000000000000000000000000000000000000000000000000000000000000000000050e15191b1b1b1a16110b02000000000000000000000000192d3f505b5e5e5e5e5e5e5e5e5e5e5e5e5e5e5e5e5e5e5e5e5c534534210d001f344a5f73899f94806a55402b1601000000000000071725303738332a1e0e00000b21364b60768c9c87725e4a38271913283c51667a78634e38230e00000f21323f484a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a494337281705000001101d28333b4246494a4a47433c342a1f12040000000000000000001022323f47484848474747474747484848433829170500000000000000000610181f252a2d2f2f2f2d2a251e170e0500000000000000010b111516120a0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000008131a1e1d1a140c0400000000000000000000000000000000000b16212b3233302a231a10050000000004131f29303434312b22160813202a303434312b22160813202a303434312b2216080000000000000009151e272d3132312d2721191213212c333430271b0c00000000000000000000000000000000000000060f172028313a40403a2e200f00000000000000000000000000000000000000030d151b1e1e1b17110b10191e1f1c150b00000000000000000000000000000000000000000000000000000000000000000000000d1822292e3030302f2b251e150c01000000000000000000001e33485c6e73737373737373737373737373737373737373737063503c2813001f344a5f748ba0937d68533e291300000000000000000d182023231f170d0000000b21364b60768b99846e59442f1b091b2e42566b8077634d38230e00000414222d3334343434343434343434343434343434343434343026190a00000000000b1620272d31343434322e2821170d0100000000000000000000192d3f505b5e5e5d5c5c5c5c5c5c5e5e5d564734210d000000000000000c18232c333a3f42444444423e39322b21180d010000000007141e262b2b261d1002000000000000000000000000000000000511191e1f1f1e1e1e1e1f1f1f1b140f191e1f1f1e1e1e1e1e1f1f1d170c00000000000000000000000000000000000000000000000000000000000000000000000000000000000000040f181d1e1b160f0700000000000000020d161c1f1f1c170f0500020d161c1f1f1c170f0500020d161c1f1f1c170f05000000000000000000020b13191c1d1c18130c0500030f191e1f1c140a000000000000000000000000000000000000081119222b333c444d55554c3e2c1a060000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000e1d2a353d4346464644403a32281e12040000000000000000001f344a5f748384868989898989898989898989898989898989806a543f2a15001f344a5f74899f937c67523d2813000000000000000e1e2b3438383126180800000a1f34495d728899846e59442f1a1a27394b5e728676614c37220d0000000410191e1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1b140900000000000000030c13191c1f1f1f1d19140d040000000000000000000000001e33485c6e73737272727272727273737264503c2712000000000002101e2a353f484e54575a5a5957534e463e342a1e12050000061625313a40403a2e200f0000000000000000000000000000000414222d333434333333333434343026212c33343433333333333434322a1d0f000000000000060e14191a1a18140e0600060f171b1b18110800000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000020a131b242d363e474f586069695c4936210d00000000000000000000000000000000000000060f15191b1b1a161109000000000000000000000000000000000002090d0f0e09010000000000000000000000000000000a1b2c3b4851585b5b5b59544e453b2f22140400000000000000001d32465a696c6e717d8f9f98877b777676767676777d879396826b56402b16001d32475c71879b947d69543f2a15000000000000081b2c3c484e4c443626140100061b2f44586c809387725d4a372f2f364556687a8b75604b36200b00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001f344a5f7483848688888888888884837d68533e2913000000000212202e3b47525b63686c6f6f6e6c68625a51473c3023140400122434434d54554c3e2c1a07000000000000000000000000000010223240484a4a484848484a4a494337313e484a4a48484848484a4a463b2d1b09000000010d1922292e2f2f2d28221a1118232b30302c241b12090000000000000005111a1f1f1f1f1e1e1e1e1e1f1f1f1f1b130800000000000000000005111a1f1f1f1e1e1e1e1e1e1f1f1f1a120611191d1f1f1f1f1f1f1f1d170d0000000005111a1f1f1f1e1e1e1e1e1e1f1f1f1a12060000000000000000000000000000000000040d151e262f384049515a636b747c79644f3a25100000000000000000000000000000000000000d1922292e30302f2b251d130700000000000000000000000000010d161d2225231d130600000000000000000000000000001427394a59646c7070706d6861584d403223130300000000000000172a3c4c55575860748a9f917c686260606060606269758494826b56402b16001a2f44586d829696826c57422e190500000000001024374a5a63615444311d08000015293d506476888d796655494444495463738689745f4a341f0a0000000000000000000000000000060a0b0b09060000000002090c0d0a040000000000000000000000050d111212121111111111111212120f09000000001d324659686c6e717c8e9d9784746f6c6c604e3a2611000000001020303e4c59646f777d82848684827c756d64594e4132210f001a2e41526069695c4936230f0000000000000000000000000000192c3f515d5f5f5e5e5e5e5f5f5e55453d4f5c5f5f5e5e5e5e5e5f5f594a392511000002111f2b363d424444423d362e2429353f454640372e251c130a000000000515232e343434343333333333343434342f251809000000000000000515232e3434343333333333333434342e2416232d3234343434343434322a1e1000000515232e3434343333333333333434342e2416060000000000000000000000000000060f172029313a424b545c656d768088907965503b261000000000000000000000000000000000000f1e2b363e43464644403930251809000000000000000000000001111f2a31373a3830241505000000000000000000000000001b2f4356687782868786837d756a5e504131200f000000000000000d1e2e3a4142475c72889d8f78634e4b4b4b4b4b4e57657688836c57422c1700152a3e53677a8f9a86715d4835210f0000000003172a3f53677772604b36210c00000e213447596a7a898473655d595a5d6671829288725d48331e090000000000000000000000010c141b1f21211f1a140d040c151d21221e170e0500000000000000000b172126272727262626262626272727241c11030000172a3b4b5557585e73889d927c685a57575042311e0b0000000c1d2e3e4e5c6a76828b92958e898787888a82766b5f503e2b17001f34495d707d7965523f2b1805000000000000000000000000001d32475c6f747473737373747473624e455a6d74747373737373747468543f2a15000010202f3c4851575a5a57514a41373847525a5b544b41392f261d1104000011233341494a4a494848484848494a4a49433626150200000000000011233341494a4a4848484848484a4a494134253440474a4a4a4a4a4a4a463c2e1d0a0011233341494a4a4848484848484a4a494134241200000000000000000000000008111a222b333c454d565f677078828a92898275624d39240f000000000000000000000000000000000a1c2d3c4852585b5b59544c4236271807000000000000000000000e1f2f3c464c4f4c42332210000000000000000000000000001f34495d7286959b8e7d777c887c6e5f4f3e2c1a0700000000000000101d262c32475c72889d8f78634e38363636363a47586a7d846e58432e19000f24384b5f7286988c7764513e2c1b0d050508122133465a6d8276604c37210c00000517293b4c5c6b78858378716e6f727883908d84705c47321c070000000000000000000006131e282f343636342f2820171d28313737332a21180f060000000000091a29343b3c3c3c3b3b3b3b3b3b3c3c3c382e211100000c1d2d394042465b70879c917b665042423d3324140200000517293b4c5c6c7a8894978c827974707072767c857c6e5a45301b001f34495d7084826e5b4734210d000000000000000000000000001e33485e7382868989898985827a6650475c718283898989898984826b56402b16000a1c2e3e4d5a656c6f6f6b655d544a4656646e70675e554c43392f221201001a2e41515d5f5f5e5e5e5e5e5e5e5f5f5e5444311e090000000000001a2e41515d5f5f5e5e5e5e5e5e5f5f5d52423243525c5f5f5f5f5f5f5f5a4c3a2713001a2e41515d5f5f5e5e5e5e5e5e5f5f5d52422f1b07000000000000000000000c1a242d363e4750586169727a838c8f867d756d645746321e0a0000000000000000000000000000000014273a4b5a656d70706e685f534536251301000000000000000000182b3d4d59606460513f2c18040000000000000000000000001f344a5f748999928270626b7c8d7d6d5b4a37241100000000000000000a121d32475c72889d8f78634e38232121212a3b4e617586705b46301b00081c2f4356687a8c94826d5b4a392b201a1a1d242f3e50627589745f4a341f0a0000000c1d2e3e4d5b67727a828784848788848078706554412d1904000000000000000000061524303b43494b4b49433c342a2e3b454c4c473d342b2219100500000014273847505252515050505050505252524c3f2e1c0900000f1c262c30465b70879c917b66503b2c292115060000000f223547596a7a8b999687796e655f5c5b5d6168727c6e5a45301b001a2e4154677b8b7764503d2a16030000000000000000000000001c304558676c727b889580706c6a5d4b4256666b778c9f938579706b62513d2914001326394b5c6b77828685807970675d53647482847a71685f564c40301e0b001f34495d70747473737373737373747472614d38230e0000000000001f34495d7074747373737373737474705e4a3e506170747474747474746956412d18001f34495d7074747373737373737474705e4a35200b000000000000000000091b2a374049515a636c747d868e8c847b726a625a514739281603000000000000000000000000000000001b2f43576977828686837c71635343311e0b0000000000000000001e32475a6b75796f5b47321e090000000000000000000000001c31465a6d7d84827363525f73888b796654402d19060000000000000000001d32475c72889d8f78634e38230e0b101e32465b7085725d48331e00001326394b5d6e808f8b796857493d332f2f3238414d5c6d8088725c47321d080000000010202f3d49545e666c71747474726f6a645d544737251200000000000000000002142433424e575e60605d5750473d3d4c5860615a51473e352c22170800001c304456646767666666666666666767675d4c3824100000000a121b30465b70879c917b66503b26140e0400000004182b3e5164768899988777685c514a4746484d55606760513e2b17001125384c5f7286806c5946321f0c00000000000000000000000015283a4a54575f69768683705d554e3f3d4e60718395948474675c56514434210e001a2e4256697a89959a908989847a6f656e8292978e857b72695e4e3b2712001f344a5f74828387898989898985838279644f3a240f0000000000001f344a5f748283878989898987838276614c4a5c6d80898b8b8b8783826d58432e19001f344a5f748283878989898988838276614c3722140b020000000000000014273848545d656d7680889089827870675f574e463e352a1b0b00000000000000000000000000000000001e33485d7287959080777d8271604e3b27130000000000000000001f344a5f74888a75614c38240f000000000000000000000000162a3d4f5f6a6f6d645546586d839684705c4935210c0000000000000000001d32475c72889d8f78634e38230e13222d3441566a786f5c47321d0000091c2e3f506170808e8675675a4f484444474b535e6b7a8b86705b46301b060000000002111f2c37424b52585c5f5f5f5d5a55504941372919080000000000000000000d203242515f6b727676726b635a504a5b6a75766d645b51493f34261605001f344a5f737c7c7b7b7b7b7b7b7b7c7c7b68533d281300000000001b30465b70879c917b66503b261100000000000b1f33475b6e82949e8c7a69594b3e3632303339424d524d4233220f00081c2f4356697d8975624e3b28140100000000000000000000000b1c2c383f434c596777887b69584637485a6c7d8f9a8876665649413d34261605001e33485d7186989f8e7d747479838377768a9e97888282867c6a55402b16001d324659686b6d7386999b8877706c6b6a5c4a36210d0000000000001d324659686b6d7384989a86746d6b695a475567798b9d998a7c726d6b63523f2b16001d324659686b6d7386999a86756e6b695a47352f271e14080000000000001b2f4356667078828a8f867d756d645c544c433b322a22180c0000000000000000000000000000000000001e33485d72869385726372877d6a56422e1a0500000000000000001c3145596e83907b67523e29150100000000000000000000000e2031414e565a5851463f54697d948c78644f3b26110000000000000000001d32475c72889d8f78634e38230f213240494b4d5c635f51402d19000000102233435261707d8985776c635d5a5a5c6067707c8a98846e58432e19040000000000010e1a252f373e43474a4a4a4845413b352d25190b0000000000000000000016293c4f60707d878c8b8780766d63596778888a82776e655c524434210e001f34495e7178797c859191918b807a787766523d281300000000001b30465b70879c917b66503b2611000000000012263a4e63768a9e95826e5c4b3b2d221c1b1e2530393c3931241504000013273a4d6074887d6a5744311d0a0000000000000000000000000e1b252a2f3b49596a7b88756452435466778a9b8e7c6a5948382c2921160800001f344a5f748ba0978370605f666f7983808f9f8b786c6c737767543f2a1500172a3b4a5456586b809596826b5b5756554d3e2d1a06000000000000172a3b4a545658697d9396826b5856544b4f617285979a8a7a6c5f5856514535230f00172a3b4a5456586b809595806b595654524e4a433b3126190c00000000001f34495d72848c8c837a726a61595149403830271f170e05000000000000000000000000000000000000001a2f435668777c76675e728886715c47321d080000000000000000162b3f53687c91826d58442f1b060000000000000000000000031323303b4244433e353c52677c91937d6954402b160100000000000000001d32475c72889d8f78634e3823172b3e505d605c4d4e4a413323110000000415253443525f6b76828a8077716f6f70757a838e8e877d6a56412c17020000000000000008131b23292e3234343433302c27211a120800000000000000000000001b3045596c7d8f9b988a83838880756b7185979d948a82786f62513d2914001b2f425360636468768ba094806d6663635a4a37230f00000000001b30465b70879c917b66503b26110000000000172c4055697d92a08d7865513f2d1d0f07050a131e2527251e13060000000a1e3144586b808773604d392613000000000000000000000000000811151d2b3b4c5d6e8082705e4e607284959482705e4d3b2a1a140e050000001f34495d72889c947d69544a535c666f7b9199846f5b585f625a4a382511000c1d2d393f4053687d94947d68534240403a2f2010000000000000000c1d2d393f4052677c9395806a5441404b5c6d80909d8d7c6c5c4e43403e35271706000c1d2d393f4053687d94947d6865676767635e574e43372a1b0c000000001f344a5f748992847b736a625a5149413830281f170f0600000000000000000000000000000000000000001427394b596467645c6a7a8e89735e48331e0900000000000000001025394e62778b87725e4a35210c00000000000000000000000004131e272d2f2e29263b50667a9097836d58432e190400000000000000001d32475c72889d8f78634e38232231465b6e766b5742362f2415050000000007162534414e59646d767c83878586878987838079736b5f4e3b271300000000000000000000080f151a1d1f1f1f1e1b18120d06000000000000000000000000001f34495e73889c9c8a796e6d737c867d778ca19283797b82826b56402b1600122535434c4e4f5d72889c917b66514e4e483c2c1a0700000000001b30465b70879c917b66503b261100000000001b3045596e84989a86715d4935221000000000010a1012100a01000000000215283b4f6276897c6955422f1b080000000000000000000000000000000d1d2e40516273857c6a5a6c7d909988766452412f1e0c0000000000001b3044586c809195806b584b424953667b9197826c57434b4c473c2c1b0800000f1b252a3e53687d94947d68533e2b2b261e13120c030000000000000f1b252a3c52677c9395806a543f475868798b9c90806e5e4e3e302b292217090000000f1b252a3e53687d94947d6f797c7c7b78726a605548392a1a090000001d32465a6d7782898f877d756d655d544c443b332b221a11050000000000000000000000000000000000000a1c2d3c475057626d7a899988735e48331e0900000000000000000b1f33485c71868d78644f3b261200000000000000000000000000010b13181a1915253a4f6479909b86705b46301b0600000000000000001d32475c72889d8f78634e38373739485d72846e58432e1b1206000000000000071623303c47515a62686d7173747473716e6a655f574e41311f0c000000000000000000000000000000000000000000000000000000000000000000000000001f344a5f748a9f96826d5b596069737c86919c887565666d7064513e291400071726313738465b70879c917b66503b38342b1e0e0000000000001b30465b70879c917b66503b261100000000001e33485d72889c95806b56422e1a06000000000000000000000000000000000c2033465a6d8285725e4b3724110000000000000000000000000000000011223344566778887666778a9b8d7b6a58473523120000000000000015293d506272828d8876685e564e50667b9197826b56403637332b1e0e000000000913293e53687d94947d68533e2922252829262015070000000000000912273c52677c9395806a54435464758798938271615040302016140e0500000000000913293e53687d94947d717d7a7b8088867d72665748382615020000172b3e4f5c646d757d878f898278706860574f463e362d23150600000000000000000000000000000000000011263a4c5d6a74808b9891806d5944301b06000000000000000005192e42566b80937d6a55412c18030000000000000000000000000000000000000f253a4f6479909c88725c47321d0700000000000000001d32475c72889d8f78634e4c4c4c4e526176846e58432e1903000000000000000006121f2a343e464e53585c5e5f5f5e5c5955504b443b30231302000000000000000000000000000000000106090b0d0d0d0c0a0805010000000000000000001e32475c718699947d6853444d5660697b9198836e5951595b544635220e000008141d2230465b70879c917b66503b2620180d000000000000001b30465b70879c917b66503b261100000000001f344a5f74899f917c67523d28130b0b0a0a0a0a0a0a0a070100000000000004172a3d5164778b7a6754402d1a0600000000000000000000000000000004162738495b6c7d8372849593826f5e4c3b291706000000000000000d2033445463707a85867a716a625a667b9197826b56402b221f180d00000000000013293e53687d94947d68533e35373a3d3e3b3225160400000000000012273c52677c9395806a5450617283949786756453433222120200000000000000000013293e53687d94947d686866666b7683908475665544321f0c00000e20313e485159626a737c858d8c847b736a625a524940332312000000000000000000000000000000000000142a3f54697b8892998e827262503d2a160100000000000000000013283c5165798e84705b46321e090000000000000000000000000000000000000f253a4f6479909d88725c47321d0700000000000000001d32475c72889d8f78636262626263666f80836d58432e1803000000000000000000010d18212b33393f4447494a4a484744403c3630281f13040000000000000000000000000000020a10161a1e2022222221201d1a16110c050000000000001a2e4256697c8d97826e5d51484350667b9197826b56414446413728170500000001091b30465b70879c917b66503b26110500000000000000001b30465b70879c917b66503b261100000000001f344a5f748ba08f79644f3a252121201f1f1f1f1f1f1f1c150a0000000000000e2135485b6f8383705c4936220f00000000000000000000000000000000091a2c3d4e6071837d909987756352402f1d0c00000000000000000315273645525e68717982867d766e667b9197826b56402b160a040000000000000013293e53687d94947d6853494a4c4f52534f4333210e00000000000012273c52677c9395806a545d6e80909a8978675746362515040000000000000000000013293e53687d94947d6853505158657587948473614e3b281400000313212c353d464e5760687179828b8f877d766d655d51412e1b070000000000000000000000000000000008142a3f54687c9192877b706354443321120c0500000000000000000e22364b5f74888a75614c38230f0000000000000000000000000000000000000f253a4f6479909d88725c47321d0700000000000000001d32475c72889d8f787777777777787b828e836c57422c17020000000000000000000000050e171e252a2f3234343433322f2b27221c140c0100000000000000000000000000020c151e252b2f33363737373634322f2b25201912080000000013273a4c5e6e7c888c7b6e645c5450667b9197826b56402f302d25190a0000000000001b30465b70879c917b66503b26110000000000000000001b30465b70879c917b66503b261100000000001f34495e73899f8e78634e38363636353434343434343431281b0c000000000005182c3f5366798c7865523e2b1804000000000000000000000000000000000e1f31425466778b9c8d7b6958463523110000000000000000000009182735414b555d656d747c83827a7b9197826b56402b1601000000000000000013293e53687d94947d685e5e5f6164676861513e2a1501000000000012273c52677c9395806a5a6a7b8c9d8d7c6b5a4a39281807000000000000000000000013293e53687d94947d68533e3c47576a7d92917d6b57432f1b060000030f19212a333b444c555d666f778089918a82796f5e4b36220d00000000000000000000000000000a131b2329394e6175898375695e524536312d2721191208000000000000081c3145596e83907b66523e29150000000000000000000000000000000000000f253a4f6479909d88725c47321d0700000000000000001d32475c72889d9188888888888888898f98836c57422c170200000000000000000000000000030a11161a1d1f1f1f1e1c1a17120d0700000000000000000000000000000008141f2831393f44484b4c4c4c4b4a47443f3a342e251a0c0000000a1d2f40505e6a757d878277706860667b9197826b56402b1b191208000000000000001b30465b70879c917b66503b26110000000000000000001b30465b70879c917b66503b261100000000001d32475c71879b8e78634e4b4b4b4b4a4a4a4a4a4a4a4a44392a1a0800000000001023364a5d7085826e5a4734210d00000000000000000000000000000008192b3d4e6071839592826f5d4c3a28170500000000000000000000000917232e39414a525960686f767d869297826b56402b1601000000000000000013293e53687d94947d7273737476787c7d6d58432e1904000000000012273c52677c9395806e6777899991806f5e4d3d2c1b0b00000000000000000000000013293e53687d94947d68533e293a4e63788d9b87725e4934200b00000000050e171f283039414a525b636c757d868f8d79644f3a251000000000000000000000000006121c262f373e43495a6d827c675752504e4b46413b352d251b0e000000000001162b3f53687c91826c58432f1b0600000000000000000000000000000000000f253a4f6479909d88725c47321d0700000000000000001d32475c72889d8f78727272727272747a87836c57422c1702000000000000000000000000000000000000000000000000000000000000000000000000000000000000000c1925313b454d53595d60626262605f5c58544f4841372a1a09000000122232404d58626b737a83847c746c7b9197826b56402b16010000000000000000001b30465b70879c917b66503b26110000000000000000001b30465b70879c917b66503b261100000000001a2f44586d82978f796460606060605f5f5f5f5f5f5f5f57483724110000000000071a2e4154687b8a7763503d2916020000000000000000000000000002132537485a6c7d8f9987806f5e4c3b2a19080000000000000000000004111d262c2f2e363e454c545b626a7b9197826b56402b1601000000000000000013293e53687d9496888888898b8c8e91866f5a442f1a05000000000012273c52677c9397877d7385969483726151402f1f0e0000000000000000000000000013293e53687d94947d68533e29364b60768ba08c77624d38230e000000000000030c141d252e363f475059616a727b847965503b261000000000000000000000000b18242f39424b52585d61667a806b686766635f5b55504841382c1e0e00000000001025394e62778b87725e4935210c00000000000000000000000000000000000f253a4f6479909d88725c47321d0700000000000000001d32475c72889d8f78635c5c5c5c5c5f6879836c57422c17020000000000000000000003070b0d0d0d0b090500000000000000010101010100000000000000000000000d1c2a37434e5861686d72747777777674716d68635d54483826120000000414222f3b454e575f676e757c85807b9197826b56402b16010000000000000000001b30465b70879c917b66503b26110000000000000000001b30465b70879c917b66503b26110000000000152a3f53677b90917c76767676767674747474747474746654402b160000000000001225384c5f7286806c5945321f0b000000000000000000000000000d1f31435466778a9b8d7b837b6a59483625140300000000000000000112222f3a4144433e353139404750667b9197826b56402b1601000000000000000013293e53687d94947d7879797a7b7d80826d59442f1a04000000000012273c52677c939580848292988776655544332212010000000000000000000000000013293e53687d94947d68533e29364b60768ba08f79644f3a240f00000000000000000109121b232b343d454e565f6770705f4c38230e000000000000000000000e1c2935414c565e666d7276797c867d7d7c7b7874706a645d544a3c2c1a06000000000b1f33485c71868d78644f3b261200000000000000000000000000000000000f253a4f6479909d88725c47321d0700000000000000001d32475c72889d8f78634e474747474b5f73836d58432e180300000000000000000911181c20222222201e1a140e06060d1216161616161616120a000000000000000c1c2b3a4854606b747c838788838282838687837d77716655422e1a0500000005121e28333b444b535a61697077809197826b56402b16010000000000000000001b30465b70879c917b66503b26110000000000000000001b30465b70879c917b66503b261100000000001024384c607388978384848485868686878787888b8b836d58432e19000000000000091c304356697d8975614e3b271401000000000000000000000008192b3d4e6072849592826f76887665544332210f00000000000000000d1f30404c555a58514637262c3b50667b9197826b56402b1601000000000000000013293e53687d94947d6864646666686b6c63523f2b1d10000000000012273c52677c9395807484938b7a69584837261505000000000000000000000000000013293e53687d94947d68533e293a4e63778da28f78634e39240f00000000000000000000000710182129323a434c545c5d5242301c090000000000000000000f1e2c3947535e69727a82878c85807b79797c808789857d7770675a4936220e0000000005192e42566b80937d6955402c1803000000000000000000000000000000000f253a4f6479909d88725c47321d0700000000000000001d32475c72889d8f78634e38323232475c70796c58432d1b0c00000000000006121c252c313537373736332e29221a1921272b2b2b2b2b2b2b261d10010000000008192a3a495865727d8890857a736e6b6b6c717983908c84715d48331e0800000816232c33363430383f464e555c667b9197826b56402b16010000000000000000001b30465b70879c917b66503b26110000000000000000001b30465b70879c917b66503b26110000000000091d3144576a7d9086726e6e6f6f6f6f707070839898836e58432e190000000000000013273a4d6174887d6a5744301d0a0000000000000000000003142537485a6c7d90988775636a7c8372604f3e2d1c0b0000000000000016293c4e5e696f6d63554331263b50667b9197826b56402b1601000000000000000013293e53687d94947d68534f50515356575245423a2e1e0d0000000012273c52677c9395806a7484807061524334251607000000000000000000000000000013293e53687d94947d68533e374456697c92a08b76614c37220d00000000000000000000000000050d161e272f38404748413425130000000000000000000e1d2d3c4a5764707b868e8c8277706a666464676b727c87938c857865513c2712000000000013283c5165798e846f5b46321e09000000000000000000000000000000000f253a4f6479909d88725c47321d0700000000000000001d32475c72889d8f78634e38231d2d405260645e4f43382a1907000000000817242f3940464a4c4c4c4b48433d362d2c353c404040404040403a2e1f0f000000021426374858677683908e8072675f595656585d6671808f8a745f4a35200b000516263440484b4a443a2d323a4150667b9197826b56402b16010000000000000000001b30465b70879c917b66503b26110000000000000000001b30465b70879c917b66503b261100000000000115283b4e6072848e7a67585a5a5a5a5b5b6f849996826b56412c17000000000000000b1e3144586b808773604c39261200000000000000000911152131435466778a9b8d7a69575e70827d6d5c4a39291b151008000000001c3045596b7b848272604d3a263b50667b9197826b56402b1601000000000000000013293e53687d94947d68533e3b3c3e40455358564c3c2a170000000012273c52677c9395806a6574858070615243342516090000000000000000000000000013293e53687d94947d6853484b54617385999784705c48331f0a000000000000000000000000000000020b141c252d32332d24160700000000000000000a1b2c3b4b5a6875828e94877a6e645c55514f4f52575f69758392947d69543f2a1500000000000e22364b5f74888a75614c38230f000000000000000000000000000000000f253a4f6479909d88725c47321d0700000000000000001d32475c72889d8f78634e3823112334434d505b5d564836230f00000007172634414c545b5f616262605d585149403f4950555656565656554c3d2c190500000b1e314355667686948f7d6f61554b4441404349546171828d77624d38230e0010223444525c605f574b3b29263b50667b9197826b56402b16010000000000000000001b30465b70879c917b66503b26110000000000000000001b30465b70879c917b66503b26110000000000000b1e314355667687857362544844454f6174899d8f7b67523e2914000000000000000215283c4f63768a7c6855422e1b080000000000000f1b252a313f4f6072849592826f5d4b5364768879685747392e2a241a0d0000001e33485e738899907d6955402c3b50667b9197826b56402b1601000000000000000013293e53687d94947d68533e2927293e51636e6a5a46321d0000000012273c52677c9395806a56667585807061524334271a1008020000000000000000000013293e53687d94947d685e5d6066728091978a796754412d19050000000000000000000000000000000000000811191d1e191106000000000000000005162839495969778693938475685c5148413c3a3a3d434c5864738495826c57422d180300000000081c3145596e83907b66523e2915000000000000000000000000000000000f253a4f6479909d88725c47321d0700000000000000001d32475c72889d8f78634e38230e162534485c6e7266523e291400000214253544525e686f7476777775716c655d53525c646a6b6b6b6b6b695b4834200b000115283b4e6072849494827060514338302c2b2e36435364768a79644f3a251000182c3f52626f757369594734263b50667b9197826b56402b16010000000000000000001b30465b70879c917b66503b26110000000000000000001b30465b70879c917b66503b26110000000000000113253748586877868272655c58585f6d7d90988673604c38240f00000000000000000c2033465a6d8285715e4a37241100000000000c1d2d393f444e5d6d7d9098867463514047586a7c867565564a423f372b1c0b00001e33485d71869998846f5b47333c51667b9197826b56402b1601000000000000000913293e53687d94947d68533e29182d42576c82745f4a341f0000000812273c52677c9395806a54576675858070615245382c231c171510070000000000000913293e53687d94947d757372747a84908e85796b5b4a372411000000000000000000000000000000000000000000000000000000000000000000000010223445576777889695857466584b3f352d27252528303a4755667789846f5a442f1a050000000001162b3f53687c91826c58432f1b060000000000000000000000000000000f253a4f6479909d88725c47321d0700000000000001081d32475c72889d8f78634e3823161622374c6076806a543f2a1500000b1e31435362707b84898c8d8d8b8782797065646f7880828282828277634e38230e00091d3144576a7d909c897664534233261c17161a2535475a6d827c67523d2813001d32475b6f828b877663503c283b50667b9197826b56402b16010000000000000000001b30465b70879c917b66503b26110000000000000000001b30465b70879c917b66503b26110000000000000008192a3b4a596875828377706c6d727c8b978a7a685643301d09000000000000000004172a3e5164778c7a6753402d190600000000172a3b4a5458606c7b8b9c8c7a6857453f4d555f71858474675d57534939281501001a2e4356697a8c9a8a7663503d3f54697d9396826b56402b16010000000000000f1b252a3e53687d94947d68533e2c2d36485b7085745f4a341f00000e1b252a3c52677c9395806a544857667585807062554a3f37302c2a24190c000000000f1b252a3e53687d94947d828386868683807972685b4d3d2c1b080000000007101516130c040000000000000000000000000000000000000000000000071a2c3f51637486969988776656483a2d2219120f10141d293748596b7d87715c47321d0800000000001025394e62778b87725d4935200c0000000000000000000000000000000f253a4f6479909d88725c47321d07000000000008141c2132475c72889d8f78634e382b2b2b2d3d506579806a543f2a15000014283b4e6071828e988f857d7877797d85837776828c94958c837c7671604b37220d001024384c6073889b94806d594735241508000007182a3e516579806a543f2a15001e33485e73899f93806b57422e3b50667b9197826b56402b16010000000000000000001b30465b70879c917b66503b26110000000000000000081b30465b70879c917b66503b261104000000000000000c1d2c3b4a57646f7982868383878f8b84796b5c4b392714010000000000000000000e2135485c6f83836f5c4935220f000000001d324659686c737d8b9a97836f6b5f4d4a5d6a6c708293867a716c675744301b070013273a4c5d6d7b8a93806d5b4e4c5a6e8397937d69543f2a150000000000000c1d2d393f4153687d94947d68534242424653647789745f4a341f000b1c2c383f4152677c9395806a544148576675858273675c524b45413f372a1b0900000c1d2d393f4153687d94947d6b6e6f6f6f6d6a655e554a3d2f1f0e000000000c19242a2b2820170f060000000000000000000000000000000000000000000f2336495c6e8292a18e7c6a5949392a1c1005000000000b1a2a3c4e617589745f4a34200a00000000000b1f33485c71868d78634f3b26120000000000000000000000000000000f253a4f6479909d88725c47321d0700000000071725303637475c72889d8f78634e40404040424b5a6c807d68533e291400001a2f43576a7d8f9e8d7d726964626469707b888894988d82786f68615e5343301c0800152a3e53677b8fa18d7865513d2a1806000000000e22364a5f717667533e2914001d32475b7083959a86715d49363d52677c9297826b56402b16010000000000000000001b30465b70879c917b66503b261100000000000007131c2130465b70879c917b66503b261f170c000000000000000e1d2c3946525d666e74787b7b797770675b4d3e2d1c0a0000000000000000000005192c3f5366798c7865513e2b17040000001f344a5f7482878888888988827c67524f64798285898888888682735e48331e09000a1c2e3f4f5e6b78858a796b636268778a9e8c77644f3b2611000000000000172a3b4a5456586b809595806b5a5757575a63718289735e48331e0015283a4a545658697d9396826c5956544b5766758685796f665f595653483827140000172a3b4a5456586b809595806b595a5a5a5855514a42382d1f11010000000a1b2a373f403c332b221a110800000000000000000000000000000000000004172b3f5265798c9e9684715e4d3b2b1b0c000000000000000d1f3245596d8276614c37220d000000000005192e42566b80927d6955402c180300000000000000000000000000000f253a4f6479909d88725c47321d0700000000122535434b4c4e5e73889d907a655856565656575d68788a7d68533e291300001e33485d72879b92806f60554f4d566472808d9b92867a6f655c534d494235251401001a2e43586d82969c87725e4935210e0000000000071c2f42536062594a38241000182c4053667687958d7966534141556a809495806b56402b16010000000000000000001b30465b70879c917b66503b26110000000000061625303637465b70879c917b66503b37332a1d0d0000000000000010202e3a424a525a5f63666665625c544a3d2f20100000000000000000000000001023374a5d7085826d5a4734200d0000001e33485d6f74737272727373747464504d617274737372727273746e5b47321d080000102131404d5a67727c867d78777b86968f806e5c4835210c0000000000001d324659686b6d74869a9a86766f6c6c6c6f76829089735e48331e001c304558676b6d7384979b87766e6b695a616b6c7a8f8c827a736e6b6656432f1a05001d324659686b6d74869a9a86756e6b695a47403c362f261b0f01000000001427394853564f473e362d241c130b020000000000000000000000000000000a1e33475b6e8295a18d7a6654412f1e0d000000000000000002162a3d5164726e5e4a36210c00000000000013283c5165798e846f5b46321d0900000000000000000000000000000f253a4f6479909d88725c47321d07000000001b2f425360626368778ca19582726d6b6b6b6b6c707a87947d68533e291300001f344a5f748b9f8a766251424958667482909a8d8977685d52494039342f25170800001d32475c71879b97836d59442f1b06000000000000132535434b4d473c2c1b080011243648596876849183705f55535e708599917c68533e2914000000000000000000001b30465b70879c917b66503b26110000000000122434424b4c4e5c72879c917b67524d4c473b2b190700000000000a1d2e3e4c565c5c584f4e5050545b5c5a5246372614010000000000000000000000071b2e4154687b8a7663503c2916020000192d40515d5f5e5c5c5c5e5e5f5f574744545e5f5e5e5c5c5d5e5f5c503f2c180400000313222f3d49555f69727a82878989867d7061513f2c19050000000000001f344a5f748283888b8b8b8b8984838383848a8b8b89735e48331e001e33485e738283878888888889838276616a80828688888888888482725c47321d07001f344a5f748283888888888888838276614c3727221b13090000000000001c304456666b635a514940382f271e160d05000000000000000000000000001025394e62768a9e9985715d4a372412000000000000000000000e223547565d5b50412e1b070000000000000e22364b5f74888a75604c38230f00000000000000000000000000000f253a4f6479909d88725c47321d07000000001f34495e7177787c859494949087838282828282868d94937d68533e291300001f344a5f74899b87705c4749586775849297897c7d84725f4d3a2c241f1b12070000001f34495e73899f94806a55402b1601000000000000071725303738332a1e0e000007192a3b4a5866737d897d706a686e7c8d9a8975614e392510000000000000000000001b30465b70879c917b66503b261100000000001a2e41525f626367768b9f95806e656361594936230e000000000013273a4c5c6970726c605148596770726e645544311d090000000000000000000000001225384c5f7286806c5945321e0b000011223240484a4847474748484a4a44393643494a4948474748494a483f32210f0000000004111f2c37424d565f666c717374716a605243332210000000000000001e33485d6f74747474747474747474747474747474746c5a46311c001d32475c6f74747372727272737374705e66747473727272727273746d5a46311c07001e33485d6f74747372727272737374705e4a35200e0700000000000000001f344a5f7380766d655c544b433a322921180f070000000000000000000000152a3f53687c91a5927d6955422e1b0800000000000000000000051829384348473f32231100000000000000081c3145596e838f7b66523e291500000000000000000000000000000f253a4f6479909d88725c47321d07000000001f344a5f747d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7966513c271200001d32465b70849886705b4958677686949587786b74887c6956432f1c0a0600000000001f344a5f748ba0937d68533e291300000000000000000d182023231f170d000000000c1d2c3b4855616c768084807d828c948a7b6b5946321e0a000000000000000000001b30465b70879c917b66503b261100000000001f34495d7077787b859191918d8079777666523d28130000000000192e4256697a86877d6e5b52657784888273604d38240f000000000000000000000000091c3043566a7d8875614e3a271401000514222d333433323232333334343128252f343434333232333434332d2214040000000000010e1a25303a434b52585c5e5f5c564d423425150400000000000000192d40515d5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5a4e3d2a1600192c3f515d5f5f5e5d5c5c5c5e5e5f5d52585f5f5e5d5c5c5c5c5e5f5c4f3e2b170300192d40515d5f5f5e5d5c5c5c5e5e5f5d52422f1b070000000000000000001f344a5f748b8a827870675f564e453d342b231a1209010000000000000000192e43586d8297a18d77634f3a26120000000000000000000000000b1a262f33322c2214050000000000000001162b3f53687c91826c58432f1b06000000000000000000000000000f253a4f6479909d88725c47321d07000000001c3144576568686868686868686868686868686868686868675b4a37230f0000182c4054677a8c8874605767768695948676685b6d8286725f4b3723110800000000001f344a5f74899f937c67523d2813000000000000000e1e2b34383831261808000000000e1d2a37444f5a636c747a80838380776c5d4d3c291603000000000000000000001b30465b70879c917b66503b261100000000001f344a5f747d7d7c7c7b7b7b7b7c7c7d7c68533e281300000000001c32475c7086999c8b7660576c82959d907b66513c27120000000000000000000000000014273a4d6174887d6a5743301d0900000511191e1f1e1d1d1d1e1e1f1f1c15131b1f1f1f1e1d1d1e1f1f1e191004000000000000000008131d272f373e4347494a47423a30251607000000000000000011223240484a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a463d301f0e0010223240484a4a484847474748494a4941454a4a484847474747494a483e31200e000011223240484a4a484847474748494a4941342412000000000000000000001e33475c707d868f8c847a726a615950473f362e251d140b000000000000001d32475c70869b9c88735e4935200c0000000000000000000000000009141b1e1d1810040000000000000000001025394e62778b87725d4935200c000000000000000000000000000f253a4f6479909d88725c47321d07000000001528394851535353535353535353535353565e666e766a57524b3d2d1b0800001125384b5d6e7d8d7c6a65758595958575675953687c8f7a66533e2a251b0e000000001d32475c71879b947d69543f2a15000000000000081b2c3c484e4c4436261401000000091c2e3e4a5150505860666b6d6d6a645a4e3f2f1e0c00000000000000000008111b30465b70879c917b66503b26130c020000001c314457656868676766666666676768685e4c39251000000000001c32475c71879b9e8b7660576c82969f917b67523c2712000000000000000000000000000b1e3145586c8086735f4c38240f0000000000000000000000000000000000000000000000000000000000000000000000000000000000010a131b23292e323434322e271e13070000000000000000000514222d333434343434343434343434343434343434322b201202000414222d3334343333323232333434342e3134343333323232323434332c21130300000514222d3334343333323232333434342e24160600000000000000000000192d4052616a727a838c8f867d756c635b524a413930281e110100000000001f34495e73899e99846f5a45301b060000000000000000000000000000000000000000000000000000000000000b1f33485c71868d78634f3b2612000000000000000000000000000f253a4f6479909d88725c47321d07000000000a1b2a363d3e3e3e3e3e3e43484e555b636a727982806e5944382d1f0f000000081b2d3f505f6f7d887773849496867667584951667b91826d59453f382c1e0d0000001a2f44586d829696826c57422e190500000000001024374a5a63615444311d080000001024384b5c6664564c50555b60636461594e4132221101000000000000000e1b252a30465b70879c917b66503b2b2820140500001528394b6071736b635b535051525253534d402f1d0900000000001a2e43576a7c8889826f5c536678868a8474614d39240f000000000000000000000000000215293c4f63768a7b66503b2611000000000000000000000000000000020a11171a1c1d1c1a1610090100000000000000000000000000000000080f151a1d1f1f1d19130b0100000000000000000000000511191e1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1d170e020000000511191e1f1f1e1e1d1d1d1e1f1f1f1a1c1f1f1e1e1d1d1d1d1f1f1e190f03000000000511191e1f1f1e1e1d1d1d1e1f1f1f1a12060000000000000000000000112334434e565f6770778089918880776e665d544c433b2f1f0f00000000001f344a5f748ba097826c57422d180300000000000000000000000000000000000000000000000000000000000005192e42566b80927d6955402c18030000000000000000000000000f253a4f6479909d88725c47321d0700000000000c19222829292a3b4952575d636970777d8682776d62523f2b1b0f010000000010213241515f6d7a86829199897868584e5558697d9389756056544a3c2b18040000152a3e53677a8f9a86715d4835210f0000000003172a3f53677772604b36210c00000013283d53687a74666264696f747879756c5f50402f1e0d0000000000000c1d2c383f40465b70879c917b665042403c32231301000e23384d63778580766f676058524b46403b32261706000000000014283b4e5e6b73746f62524a5b69727470665745321e0a00000000000000000000000000000d2033475a6d746d5f4d38240f00000000000000000000000000000b151e262b2f3132312f2a241d140900000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000061625323b434b545c646d757d868e8b8279706860574d3d2c1906000000001f344a5f748ba095806b56402b16010000000000000000000000000000000000000000000000000000000000000013283c5165798e846f5b46321d090000000000000000000000000f253a4f6479909d88725c47321d07000000000000060e13131f334759666c71777d848b857a6f655a504434220f00000000000004142332414f5c6b7d8f9d8c7b6a5a4b5d6a6d758699907c6f6b675a47331f0a00000f24384b5f7286988c7764513e2c1b0d050508122133465a6d8276604c37210c00000013283d516577847877797d84898e8f897d6e5e4d3c2b1805000000000016293b4a5456575e73889d937d685957564f41301e0a000b2034475a67727c87837a736d66605a554f4435231000000000000b1e30404e585e5f5b52443d4b565d5f5c544839281502000000000000000000000000000004172a3d4f5c5f5a5041301d0900000000000000000000000002101c28313a4044474746443f3930261a0d00000000000000000000000000000005090b0d0d0c0a0703000000000000000000000000000000000c161b1d1d1c1b1b1b1b1b1d1d1c1912070000000000000000000007121b1f1f1f1f1e1e1e1e1e1e1f1f1f1a1206000000000000000000000000000000000000050a0b0b0904000000000000000000000000000000000000000007141f272f3840485159616a727a838c8d857c736a5b4935200c000000001f34495e73899f95806a543f2a15000000000000000000000000000000080d0e0c060000000000000000000000000e22364b5f74888a75604c38230f0000000000000000000000000f253a4f6479909d88725c47321d070000000000000000000d22374c617682868c92897d72685d52483d332617050000000000000005182b3f526477899b928074685c50667a83888b8b8b8b848277624c37220d0000081c2f4356687a8c94826d5b4a392b201a1a1d242f3e50627589745f4a341f0a0000000e223648596a79898d8f9396908b8786887c6b5a4835210c00000000001d314558676b6c707b8e9d9885756e6c6b5f4d3a25110005182b3c4a545f6974808988827a746f6962523f2b170000000000011222303c44494a463f342d3a43484a4741372a1b0a000000000000000000000000000000000e20313e484a463e3223130100000000000000000000000111202d3a444e54595c5c5b58534c43382b1d0d0000000000000000000000060e151a1e20222222201c18120b04000000000000000000000000101e293032323130303030303232322e25180900000000000000000817252f343434343333333333333434342e2416060000000000000000000000000000000611191f21211e180f0400000000000000000000000000000000000000020b141c242d353d464e565f676f7780898f8778634e39240f000000001d32475c71879b97826b56402c160100000000000000000000000006131c2223211a100200000000000000000000081c3145596e838f7a66523d29140000000000000000000000000f253a4f6479909d88725c47321d070000000000000000000b20354a5d6e78828882766b60564b40352b21160800000000000000000b1f33475b6e829598867a867a6e6163737474747474747475705f4b36210c0000001326394b5d6e808f8b796857493d332f2f3238414d5c6d8088725c47321d0800000006192b3c4c5b6a77838887827b75716f738277644f3a240f00000000001f344a5f7482838688888888888884827d68533e281300000d1e2c38424c57616c77828e8f89847d6f5a442f1a00000000000004121f29303434322c221c272f3334322d251a0c00000000000000000000000000000000000213212c3334322b2114050000000000000000000000000e1f2f3e4b5761696e7072706d686055493b2b1a08000000000000000006111a22292e333637373734312c261f170e040000000000000000000b1d2e3c45474746464646464647474741362716030000000000000114253542494a4a494848484848484a4a494134241200000000000000000000000000000917232d333636332b21150600000000000000000000000000000000000000050e161e272f373f4850596169727a838d8d79644f3a250f000000001a2e43586d829698836d58432e19050000000000000000000000051524303738362d20110100000000000000000001162b3f53687c91826c58432f1a0600000000000000000000000f253a4f6479909d88725c47321d07000000000000000000071b2e40505c656c726f64594e43382e23180e0400000000000000000011263a4e63778b9e8e7a6a78898071625e5f5f5f5f5f5f5f605e5242301c08000000091c2e3f506170808e8675675a4f484444474b535e6b7a8b86705b46301b06000000000d1e2e3d4c5a666f73716d67615c5a637271614d38230e00000000001e33485d6f74747373727272727373747464513c27120000000e1b25303a444f5a64707b86857d746756422d1800000000000000010d151b1f1f1d18100a141b1e1f1e19120800000000000000000000000000000000000000030f191e1f1d170e0400000000000000000000000006192b3c4d5c69747d83878687837c72675949382512000000000000000c18232d363d43484b4c4c4c4a46413b332a20160a000000000000000014283b4c595c5c5b5b5b5b5b5b5c5c5c5445331f0c000000000000081c3043535e5f5f5e5e5e5e5e5e5e5f5f5d52422f1b070000000000000000000000000617273540484b4b473e3324140300000000000000000000000000000000020f19212a323a424b535b646c747c868e8a82796f5f4b37220d00000000152a3e53677b909b86715c47331e0a0000000000000000000000102233424b4e4a3e2f1e0b000000000000000000001025394e62778b87725d4935200c000000000000000000081015253a4f6479909d88725c47321d0c020000000000000000001122323e4951585d5c52473c31261b11060000000000000000000000152a3f54697d929885715e6a7b8d82705f4e4a4a4a4a4a4a4b4a413425130000000000102233435261707d8985776c635d5a5a5c6067707c8a98846e58432e19040000000000101f2e3c48535a5e5c58534c4745545e5e5344311e0a0000000000192d40515d5f5f5e5e5c5c5c5c5e5e5f5f574735220e0000000008131d28323d47535e6972706a61574939261300000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000f2336495a6b7a879180746f74868f85776754412e19000000000002101d2a35404951585d606262615f5b554e463d33281c0f010000000000001a2f43576a7272707070707070727271624f3a26110000000000000d22374b60717474737373737373737474705e4a35200b00000000000000000000000011243545525c60605b504232200d0000000000000000000000000000000212202c353d454e565e666f778088908880776e665d51412f1c08000000001024384c6074889b8b76614d3925120000000000000000000004192c40515f635c4d3b2713000000000000000000000b1f33485c71868d77634f3a261100000000000000000d1a242a2b3a4f6479909d88725c47322820140500000000000000000413212c353d44484740352a1f140900000000000000000000000000182d42576c8297917c68545d70838f7d6a5744343434343436352e24160700000000000415253443525f6b76828a8077716f6f70757a838e8e877d6a56412c1702000000000001101e2b363f464847433e3833364349494235261402000000000011223240484a4a48484747474748494a4a44392a18050000000000000b15202a35414c565d5c554e44392b1b09000000000000000000000000000206090c0d0d0d0c0b0907040000000000000000000000000000000000000000000003070a0b0b0b090602000000000000000000162a3e52657889988673625a6b80959685715d48331e000000000111202e3b47535d656c7175777776736f69625a5045392d1f110200000000001b30465b70848687878787878786847c67523c27120000000000000e23384e6377828386898989898986838276604b36210b0000000000000000000000061a2e4153637076766e604f3d29150100000000000000000000000000000e1f303e4850596169727a838b8f867d756c635b524a403324120000000000091d3144586b7d91917c6855412e1c0b0000000000000000000c2033475c6f786a56412c170200000000000000000005192e42566b80927d6955402c17030000000000000b1c2b373f40424f6479909d88725c47403c322313020000000000000000030f1922292f33322c23170c020000000000000000000000000000192e43586e83988b76614d54687d9388735f4a35201f1f1f20201b12060000000000000007162534414e59646d767c83878586878987838079736b5f4e3b271300000000000000000d19232b3133322f2a241e252f34342f2517080000000000000514222d3334343333323232323334343431281b0c0000000000000000030d18232f39434847413a31281b0d0000000000000000000000020a11171b1f2122222221201e1c1914100a03000000000000000000000000000000020b11171c1f2121201f1b161109010000000000001b3045596d8295937d695652677c909f89745f4a341f000000000f1f2f3e4c59656f7982878b8c888888847d766d62574a3d2f20110100000000192e4256676e6f7382959c8c7a706e6d604d3925100000000000000b2034485b696b6c717d919f8f7c706c6b695a47331e0900000000000000000000000b2034495d70828b8b7d6c5844301b060000000000000000000000000000162a3d4e5c646c757d868e8d847b726a615950473f362d23150600000000000215283b4e6173869785715e4c3a29190c010000000000000a18293c4f6376826c57422c17020000000000000000000013283c5165798e846f5b46321d09000000000000152839495356575a677c919f89745f57564f42311e0b00000000000000000000060e151b1e1d19100500000000000000000000000000000000172c41566b829588725d4850667b918d77634e38230e0a0a0b0b0600000000000000000000071623303c47515a62686d7173747473716e6a655f574e41311f0c0000000000000000000710171c1e1d1a150f09131b1f1f1b120700000000000000000511191e1f1f1e1e1d1d1d1d1e1f1f1f1c150a000000000000000000000006111c272f33322d261e150a00000000000000000000020d161e252b303436373737363533312d29241e170e040000000000000000000000000b151e262c313436363634302b251d140b00000000001f34495e73889d907965504d6174868b826f5b47321d0000000b1c2d3d4d5c6a76828d90867c76737273777d878074685b4d3e2f1f0e000000001326394955585a657a909c87715d59585142311e0a00000000000005192c3d4c55565861768ca08b75605756544b3c2b180400000000000000000000000d22374c62778c9f9c88725c47321d0700000000000000000000000000001d31465a6c778089918a827970675f564e453d342b231a1105000000000000000c1f32445668798a8e7b695847372a1e150f0c0b0c0f141d283647596b7d806a54402b1500000000000000000000000e22364b5f74888a75604c38230f0000000000001b304457676b6c6f7583969d8f7c6f6c6b604e3a2611000000000000000000000000000000000000000000000000000000000000000000000014293d52667a8d88735e4954687c928f78634e38230e0000000000000000000000000000000006121f2a343e464e53585c5e5f5f5e5c5955504b443b302313020000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000a141b1e1d19120b020000000000000000000009141f2932394045494b4c4c4c4b4a4846423e39322b21160700000000000000000005121e28323a4045494b4b4b4945403931271d12060000001f344a5f748ba09079644f44576772747062523f2c1800000416283a4b5b6b7a88948d7d7269625e5c5e626a748286796b5c4d3d2c1b09000000091b2b3841434e63788f9b866f5a44433e332413010000000000001122313d4546464a5f748b9f89735e484646443c30200f00000000000000000000000d22374c61768b9c9b87725c47321d0700000000000000000000000000001f344a5f7489918880766e655d544c433a322921180f07000000000000000000021527394a5b6c7c8c87756555483b3129242120212429303946546476897c68533e28130000000000000000000000081c3145596e838f7a66523d29140000000000001e33485e7382838488888888888984827d68533e291300000000000000000000000000000000000000000000000000000000000000000000000f23374a5d70828c77655d637184988b76614c37220d0000000000000000000000000000000000010d18212b33393f4447494a4a484744403c3630281f13040000000000000005111a1f1f1f1e1e1e1e1e1e1f1f1f1a1211191e1f1f1e1e1e1e1e1e1f1f1f1b120700000000000000000000000000000000000000000000000000000000000000000000000000000000000000000d1a26323c454e545a5e60626262605f5e5b57534d463e33251503000000000000000715232f3b454e555a5e6060605d59544d443a3024170a00001f344a5f748a9f917c67523e49565e5f5c524434221000000e2133465869798a988d7d6e61564d4947494e576371828a7a6b5a4a382714020000000d1b252c384e63788f9b866f5a442f2a211506000000000000071b2e404f595b5b5b5f748b9f89735e5b5b5b584e3e2c190500000000000000081015161f33485c6e7d88877c6a57432f1a1615100700000000000000000000001f344a5f74867d756c635a5249413830271e160d05000000000000000000000000091b2c3d4e5e6d7c8a837365594d443d39363536393d434c57637283907b66503b2611000000000000000000000001162b3f53687c91826c58432f1a0600000000001d32475b6e74747373727272727373747465513d28130000000000000000000000000000000000000000000000000000000000000000000000081b2e415263738283767276829090826f5b47331e0a00000000000000000000000000000000000000050e171e252a2f3234343433322f2b27221c140c01000000000000000515232e3434343333333333333434342e24222d3334343333333333333434342f2517080000000001080c0d0d0c0b0b0b0b0b0d0d0c0801000000070b0d0d0d0d0d0d0c080100000000000000000e1d2b38444e5961686e7376777777767473706c67615a514332200c00000000000007162533414d5861696f73757675726e6860574d4135281908001d32475c71869a96826e5c4b3b43494a4840352616050004172a3d506375879891806f5f5043393432343a45536475888978675644311e0b00000000091223384e63788f9b866f5a442f1a0e04000000000000000d22364b5e6d70707070748b9f8973707070706b5c48341f0b0000000000000d1a242a2b2b2c3f50606c72726a5e4e3b2b2b2b2a24190c000000000000000000001d32465a6c7269615850473e362d251c140b020000000000000000000000000000000f1f30404f5e6c798684766a6058524d4b4a4b4e52585f697482918f78644f3a240f0000000000000000000000001025394e62778b87725d4935200c0000000000182c3f505c5f5f5e5e5c5c5c5c5e5e5f5f574836220e000000000000000000000000000000000000000000000000000000000000000000000000112335455563707a83888b89857c7162523f2c1804000000000000000000000000000000000000000000030a11161a1d1f1f1f1e1c1a17120d070000000000000000000011233341494a4a4848484848484a4a4941343240484a4a4848484848484a4a494235251401000008141c2122222121212121212222211d140806111b20222222222222211c14080000000000000d1d2c3b4855616c757c83888985838283848886827c756d614f3b271200000000000415253443515e6a757d84888b8c8b88837c736a5f534637251200192e42566a7d909e8c796858493a3434332d23170800000b1f33475a6d80929a877462514132261f1d1f283646586a7d928573614e3b281501000000000e23384e63788f9b866f5a442f1a0500000000000000000f253a4f647987878787878d8f8c878787878777624c37220d00000000000a1b2b373f40404040424f585c5c574e40404040403f372a1a09000000000000000000172b3d4e5a5d564e453c342b231a110900000000000000000000000000000000000001122231404e5c687480887d746c6663605f6063666c737b8692998c77624c37220d0000000000000000000000000b1f33485c71868d77634f3a261100000000000f21323f484a4a49484747474748494a4a44392a19060000000000000000000000000000000000000000000000000000000000000000000000000617283745525e676e73747470696053443422100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001a2e41515d5f5f5e5e5e5e5e5e5f5f5d52423f515d5f5f5e5e5e5e5e5e5f5f5e5343301d09000717253036373736363636363637373631261817242e35373737373737363025170700000000091b2b3b4a5966737d898f847a746f6c6b6c6e737d8d908a7d69543f2a1500000000001021324352616f7c8891988f888380808285877c706454412d190013273b4e6173859598877667584838271e19110600000011263a4e62768a9d917d6a57443323140a060b18293b4e62768b917d6a5744301c08000000000e23384e63788f9b866f5a442f1a0500000000000000000f24394d617378787878787878787878787878715f4a36210c000000000014273949535656565656565656565656565656565653483826130000000000000000000e20303d4648433a312920180f06000000000000000000000000000000000000000000041322303e4a57626d768087827b77767476777b80878f938d867c6f5d49341f0b00000000000000000000000005192e42566b80927d6954402b1600000000000414222d3334343433323232323334343431281b0c00000000000000000000000000000000000000000000000000000000000000000000000000000a192835414b535a5e5f5f5b554d4335261605000000000000000000000000000000000000000000000000000000000000000000000001060a0b0b0a080400000000001f34495d7074747373737373737474705e4a485c6f7474737373737373747471604c37220d00122535434b4c4c4b4b4b4b4b4b4c4c4b4436262735414a4c4c4c4c4c4c4b43352513000000031527384959687785918b7d7167605a575657595f708498947d68533e291400000000081b2d3f506170808e9a92867b736d6a6a6b6f767d82705b46301b000b1e3144566776879695867666554432200d0000000000172c4055697d929e8a75614e3a2715040000000c1f33485c71869b8873604b37230e000000000e23384e63788f9b866f5a442f1a0500000000000000000e23384c6070747474747474747474747474746f5d4935200b00000000001b304457676b6b6b6b6b6b6b6b6b6b6b6b6b6b6b6b6656422e1a0000000000000000000212202b32332f271e150d040000000000000000000000000000000000000000000000000412202d3945505a636b7379808487898b8b8a8886837d7972695f51402d1a060000000000000000000000000013283c51657987806c57422c170000000000000410191e1f1f1f1e1d1d1d1d1e1f1f1f1c150a000000000000000000000000000000000000000000000000000000000000000000000000000000000a17232e383f45484a4a46413a3025170800000000000000000000000000000000000000000000000000000000000000000000000c151b1f20211f1d1810060000001f344a5f748283878989898987838276614c4a5f748283868989898988838278634e38230e001b2f42536062626060606060606262605443303645535d6262626262626053422f1c0700000d20324456677787958b7b6c5f544b4542404244556a8094917c67523c2712000000001225384a5c6e808f9e918274685f585554575b626c766b58442f1a000214273849596877869594847362503d291501000000001b3045596e849899846f5b46321e0b0000000004192e43586d83988f7a66513d2813000000000e23384e63788f9b866f5a442f1a0500000000000000000f253a4f64798b8b8b8b8b8b8b8b8b8b8b8b8b77624c37220d00000000001f34495e7382828282828282828282828282828282725d48331e00000000000000000000020e171d1e1b130b02000000000000000000000000000000000000000000000000000000020f1b28333d4750585f656a6e727374747473706d69645e564d4233231100000000000000000000000000000e22364b5e6e716c61503d291400000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000006111b242b30333434322d261d13070000000000000000000000000000000000000000000000000000000000000000000000101e283034363634322c23170800001d324659686b6d7384989a86746d6b695a474558676b6d7384989a86746d6b695b4935200c001f34495e7177777676767676767777725f4a3644546370777777777777715f4a35200b0003172a3d5062738596907d6d5d4e4238312d2c2c3d52677c92917b66503b2611000000061a2e415467798c9d94837263564c44403f41464f5a605a4d3b28150000091a2b3b4a596776869691806c5844301b07000000001e33485d72889c95806a55412c18030000000000162b40566b829695806b56412c17000000000e23384e63788f9b866f5a442f1a0500000000000000000e23384c6070747474747a8d9f8974747474746f5d4935200b00000000001f344a5f748b909090909090909090909090909089735e48331e0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000a16202a333c444a5055595c5e5f5f5f5e5b5854504a433a302415050000000000000000000000000000071b2e41505b5c574f4233210e0000000000000009111617140d040000000000000000000000000000000811151616161616161615110800000000000000000000000000000000000000000000000000000810161b1e1f1f1d19120a0100000000000000000000000000000000000000000000000000000000000000000000000d1e2e3b44494b4b4a47403526150300172a3b4a545658697d9396826b5856544b3c3a4a545658697d9495806b5856554c3d2c1906001f344a5f747d80848c8c8c8c85807d75614c42526272828d8d8d89827d75604b36200b000b1f3346596c8091988572604f3f3025202c34373b50667b91917b66503b281b0c00000d21364a5d7185979b897665544539302b2a2d333d474b473d2f1e0c0000000d1d2c3b49586877899a88735e49341f0a000000001f344a5f748a9f927c67523d2813000000000000152a3f546a809598846e58432e19000000000e23384e63788f9b866f5a442f1a050000000000000000091d3043525d5f5f6374879894847d6b5f5f5f5d51402e1a0600000000001e33485d70797979797979797979797979797979796f5b47321d0000010d161b1d1d1d1d1d1d1d1d1d1d1d1d1d1d1d1d1b160d010000000000000000000000000000000000000000000000030e17202830363c404447494a4a4a484643403b362f271d1306000000000000000000000000000000001123323f4647433c322415040000000000000e1b252b2c2920160b000000000000000000000000000e1b252a2b2b2b2b2b2b2b2a251b0e000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000162a3c4c585e60605f5b5244321f0c000c1d2d393f4052677c9395806a544140392d2c383f4052677c93947d685441403a2e1f0f00001c31455866686a7183979a86726a686659464f5f7082919b8d80756d69665846321d090011263a4e6275899c8f7b68554331211e2f3e484c4c50667b91917b665046392a18050013283c5065798da0927d6b594736281c161518202b3336332b1f1100000000000e1d2c3a4a5a6b7c8f8c76604b36210b000000001f344a5f748ba0907965503b2611000000000000162b40566b80959b866f5a442f1a000000000e23384e63788f9b866f5a442f1a0500000000000000000113253441494b5c6e80929a8876887664514a4840322311000000000000192d415361646464646464646464646464646464646052402c180001111f2a3032323232323232323232323232323232302a1f1101000000000000000000000000000000000000000000000000040d141c22272c2f323434343433312e2b26211b130a0100000000000000000000000000000000000514222c31322e292014060000000000000b1c2c3840423d33281c1003000000000000000000000b1c2c383f404040404040403f382c1e0d00000000000000000000000002080d11131313120f0a050000030707070707070707030000000000000000000000000000000000000000040c11120f08000000000000000000001c3146596a737476746f624f3a261100000f1b252a3c52677c9395806a543f2b261c1b252a3c52677c93947d68533e2b261d1001000015283a48525355687d9397826c575352494a5b6d7d8f9b8c7c6f62595452483a29160300172c4055697d929d8874604c392614283b4d5c626263687c92917c6761574735220e00182d42566b80949e8a76624e3c29190a0000030d181e211e180e010000000000000e1c2c3c4d5f72868c76604b36210b000000001f34495e73899f9079644f3a250f000000000003192d43586c839799846f5a442f1a000000000e23384e63788f9b866f5a442f1a05000000000000000000071624334456687a8c9e8f7c6a7c826f5c4a382d221405000000000000112435444d4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4d43342310000d1f2f3c4547474747474747474747474747474747453c2f1e0c000000000000000000000000000000000000000000000000000000070d12171a1d1f1f1f1f1e1c1916120d070000000000000000000000000000000000000000000410181c1d1a140d030000000000000015283a4a555750453a2e20130400000000000000000015283a4a5456565656565656544a3c2a1704000000000000000000040e161d222628292927241f191210171c1d1d1c1c1d1d1c170e0300000000000000000000000000000000000a17202627231c130a00000000000000001e33485d72888b8c897c67523c27120000000912273c52677c9395806a543f2a15111112273c52677c93947d68533e29130a000000000b1c2b363d3e52677c9395806a54403d455668798a9b8d7d6d5e51453f3d362b1c0b00001b30455a6f849898836e5945311d192e43586b7777787b86949582777564513c2712001c31465b70859a98846f5b47331f0c000000000004090b09040000000000000000000e1e3043576c8289735e49341f0a000000001d32475c71869b907a66503b26110000000000091d32465b70869a97826c57422d18000000000e23384e63788f9b866f5a442f1a05000000000000000000091b2c3e506273869894837060728579675543311e0c0000000000000006172631383a3a3a3a42505a5e5e584e403a3a3a3a383125160500162a3c4d595c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c594d3c29160000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001c304558686c62574b3e3123140400000000000000001c314558676b6b6b6b6b6b6b675947331e0a00000000000000000c17212a31373b3d3e3e3c38332d25222b31323231313232312b201303000000000000000000000000000000081928343b3c382f261d12050000000000001b30455a6f8499a08e78644f3a25100000000012273c52677c9395806a543f2a26262626273c52677c93947d68533e29130000000000000d1923283c52677c9395806a543f3f516273869790806f5f4f40332a2823190d0000001e33485d72889d94806a55402b171a2f445a6f83828080807d8080807c68533d2813001e33485e73889d947d6955402c1704000000000000000000000000000000000000000014293f53687d85705b46311c0700000000192e43586c8296927c67523d281400000000001124384c60758a9e927d69543f2a15000000000e23384e63788f9b866f5a442f1a050000000000000000041526384a5c6e80919b89766555677a8572604e3b2918080000000000000008141e2325252d3f51616d73736c5e4e3b282525231d140700001c3146596b727272727272727272727272727272726b5945301c0000000000000000000000000000000000000000000000000000000004080b0c0d0d0c0a07040000000000000000000000000000000000000000000000000000000000000000030b0f0f0d0701000000001e33485e738075695c4f4132231303000000000000001f344a5f748282828282828276614c37220d000000000000010f1d29343d464b50535353514d484139333f46474746474747463e31210f0000000000000000000000000000001326374650514c4239302314040000000000172c41566b8296a08b75604b36210c0000000012273c52677c9395806a543f3b3b3b3b3b3b3c52677c93947d68533e2913000000000000000712273c52677c9395806a543f4a5c6e8092958472615141312216130e07000000001f344a5f748b9f937c67523d2813172c4053646c6b6b6a6a686a6a6b6a5e4c392410001f344a5f748ba0907b66513c27121211111111111111110e0800000000000000000000152a3f54697d806b56422d18030000000015293e52667a8f95806b56422d19060000000b1b2d4053677b8fa08c77634f3a2611000000040e23384e63788f9b866f5a442f1a090000000000000811152132445667798b9d8f7d6b594a5d6f827d6b5947362517140d040000000000020a0e0f1f34485c6f8089887c6b58432f1a0f0e09010000001f344a5f7488888888888888888888888888888888735e48331e00000000000000000000000000000000000000000000000000070e14191d20222222211f1c18130e07000000000000000000000000000000000000000000000000000000000a161f2424211c140a0000001c3146596a79877a6d5f5041312110000000000000001e33485c6f7476798290978d77624c37220d000000000000101f2d3a465059606568686866625c554c42515b5c5c5b5c5c5c5a4f3e2c190400000000000000000000000000071b2f435563665f554c4132210e000000000014293e53687c939d88725d48331e090000000012273c52677c9395806a54505050505050505052677c93947d68533e2913000000000000000012273c52677c9395806a54445668798c9a897766554433231304000000000000001f344a5f748ba0917b67523c27121124364653575756545453545456554e402f1d09001f344a5f748ba08f78634e392727272626262626262626231b10020000000000000000182d42576c827965513d281300000000000f23374b5f72859786705c493523130b0b0f1a28394a5d7083979784705c4834200c000009162127384e63788f9b866f5a442f251d11030000000e1b252a2f3f50617385979583715f4e405264778876645343352c28211507000000000000000d22374c62778c9d9b87725c47321d070000000000001f344a5f748a8b8b8b8b8b8b8b8b8b8b8b8b8b8b89735e48331e00000000000000000000000000000000000000000000000a131b23292e32353737373634312d28221b130b010000000000000000000000000000000000000000000000000a1a2833393a3630271b0d0000162a3c4c5b6a7b8b7d6e5f4f3f2e1d0c000000000000192d3f515d5f606473879c8d77624c37220d00000000000c1d2e3d4b58636d74797c7d7d7b7770685f55606f7272707072726d5c48331e09000000000000000000000000000a1f34495e727b72695f503e2b17030000000011263b506579909a866f5a45301b060000000012273c52677c9395806a66666666666666666666677c93947d68533e2913000000000000000012273c52677c9395806a544f617386978f7c6b59483726150500000000000000001f34495e73899e937c67523c2712071828363f4241403f3f3f3f3f40403b30221100001e33485e73899e8d77634d3c3c3c3c3b3b3b3b3b3b3b3b372d201000000000000000001a2f445a6f83735f4b37220e0000000000081c2f4255687a8c8c7864524131252020232c384657687a8d9f8d7a6754412d190500061827343c3e4e63788f9b866f5a443e392f211100000c1d2c383f424d5d6e80919b897766534235485a6d828371615347413d332515040000000000000d22374c62778c9e9c88725c47321d070000000000001e32475b6e747474747474747474747474747474746d5a45311c00000000000000000000000000000000000000000007121d262f373d42474a4c4c4c4b4a46423d362f271e14090000000000000000000000000000000000000000000002152838454e4f4a44392b1b09000d1e2e3d4d5d6e808d7d6d5d4c3b291705000000000010223240484a4b596e84998d77624c37220d000000000417293b4c5b697680898f8d89878789857c7267677c888887878684745f4a341f0a000000000000000000000000000a1f344a5f748b857c6d5a46311c07000000000e23384d62778d98836d58432e19040000000012273c52677c9395807b7b7b7b7b7b7b7b7b7b7b7b7c93947d68533e2913000000000000000012273c52677c9395806a585a6c80919583705f4d3c2a19080000000000000000001c31475c70869b947d68543f2a15000a18232a2c2c2b2a38444b4b4437271e120400001c31465b70869a8f7863525252525250505050505050504a3e2e1d0b00000000000000182c4054646c675743301c080000000000001326384a5c6d7d8f826f5f4f42393535383e49566474869792826f5d4a37241100001124364550535565798f9b87715c54534c3f2e1c090016293b4a54575e6b7b8c9d907d6b5a4d3e425056687c908071645a56504333210d0000000000000b2034485d708089897d6c58442f1b06000000000000182c3f505c5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5c4f3d2a1600000000000000000000000000000000000000000c19243039434b51575c5f616262605f5b56514a433a31271b10040000000000000000000000000000000000000000091e32455662645f57493825120000101f2f3f506173858c7a6a584735221000000000000414222d333443586e84998d77624c37220d000000000d21344759697988938e827973727274798285786b7c939a86756f6e6a5946321d08000000000000000000000000000a1f344a5f748b9988725c47321d07000000000b20364b60758b95806b56402b16010000000012273c52677c9395808080808080808080808080808093947d68533e2913000000000000000012273c52677c9395806e6e6d778a9b8977655341301e0d00000000000000000000192e43586c829696826c57422e190500061015171720344656605f5545331f0b000000192d42576b8095907967676767676766666666666666655c4c3a271300000000000000112436465357544939271507000000000000091b2d3e4f6070808d7c6d5f554e4b4a4d525b667483939384736352402e1b080000182c405363686a6f80939f8b786d69685d4c38240f001d314558676c717b8a999d8c766c6a5c4a4f616b7082958f82766e6b61503d281400000000000005192d4052616e74736d604f3c2915010000000000000f21323f484a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a483e31200e000000000000000000000000000000000000010f1d2a36424c565f666c70747677777673706b655e564d43392e211507000000000000000000000000000000000000000f24384c617479736755412c170000011121324456687a8d887664523f2d1a0700000000000511191e2e43586e84998d77624c37220d0000000015293d50637688988f7d6f655f5c5c5f656d78857c7c9395806b5a58564c3c2a170300000000090e0f0f0f0f0f0f0f0f1f344a5f748b9d88725c47321d0f06000000091e33485e7388937d68533e2914000000000012273c52677c9395806a6a6a6a6a6a6a6a6a6a6a6a7c93947d68533e2913000000000000000012273c52677c9396838484838395907d6c5a48362414030000000000000000000015293e53677b8f9a86715c4834210e000000000214283b50637473624e39240f00000014283d5165798d937d7c7c7c7c7c7c7b7b7b7b7b7b7b7a6a56412c17000000000000031423323d454848463e332516050000000000001021314251616f7c887d7268635f5f62666e7885929083746556453422110000001b30465b707d80838b8b8b8b89827d7b67523c2712001f344a5f7482868888888889868279644f546a8084898888888883806b56402b160000000000000011233443515a5f5f594f42311f0d000000000000000414222d3334343434343434343434343434343434332c211302000000000000000000000000000000000001101f2d3b48545f6972798286898c8b888888868079726a60564b3f3225170800000000000000000000000000000000000015293e52677b8e836d58432e19000000031426384b5d708594826f5c493623100000000000000005192e43586e84998d77624c37220d000000051a2f43586c809396837060524a47474a515b6673827d93947d685343423a2e1e0d00000006131c23252525252525252525344a5f748b9d88725c47322a23190b0000051c31475c7087917c67523c2712000000000012273c52677c9395806a54545454545454545454677c93947d68533e2913000000000000000012273c52677c9395807777777a82887a6f61524232200f000000000000000000000f24384c5f7386998c7764503d2c1b0e0605070f1f3144576b8079644f3a240f0000000e22364a5d718597837c7c7c7d7d7d7d808080839191846e58432e190000000000000e2032424f595e5e5a51433422100000000000000314243342515e6a7680857c777474777b828b91897d71645647382717050000001b3045596d777776757474747676777664503b2611001e33485c6f74737272727273737472614d536674747372727273747467543f2a1500000000000000061625333e464a4a453d3223140200000000000000000410191e1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1e190f030000000000000000000000000000000000000f1f2e3d4b5965717c868e9289807975737272757982867d73685d50433526170800000000000000000000000000000000061b2f44586d82917c68533f2b1600000000091b2e4154687b8f8c796653402c190500000000000000192e43586e84998d77624c37220d000000091e33485d72879b8f7a665342363232363e495563718293947d68533e2d271d1000000005152430383a3a3a3a3a3a3a3a3a3b4a5f748b9d88725c47403e36291a0800001a2f445a6f86907965503b2610000000000012273c52677c9395806a543f3f3f3f3f3f3f3f52677c93947d68533e2913000000000000000012273c52677c9395806a6263666e7b8c8070604f3e2b1805000000000000000000081c304356697c8e93806d5a49392b211b1a1b222d3d4e60738777624c37220d000000071b2e4154677a8c89756767686868686a6a6d839898836c58432d18000000000001162a3d4f606c73736d6152402d190500000000000006152432404d59636c757c8287898b8a88837d756b60544738291a0a00000000192d40515e636260605f5f5f606062635d4f3e2b1600192d3f515d5f5e5c5c5c5d5e5e5f5e544449585f5f5e5d5c5c5e5f5f584a38251100000000000000000716222b313434312a20140500000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000b1c2d3d4c5b6976838f988c80756c65605e5c5d60656c7580867a6e615344352617060000000000000000000000000000000c21354a5e72878b77624e39251000000000001225384c60748896836f5c4834210d00000000000000192e43586e84998d77624c37220d0000000b20354a5f748b9f8a74604b37241d1d222b384553677c93947d68533e29130b00000000102233424c4f4f4f4f4f4f4f4f4f50505f748b9d88725c555652473725120000192e43586e838f78634e39240f000000000012273c52677c9395806a543f2a2a2a2a2a2a3c52677c93947d68533e2913000000000000000012273c52677c9395806a544d525d6e828f7d6d5b4835220e0000000000000000000114273a4c5e7082918a786757493d34302f30353e4b5b6b7d8a745f4a35200b000000001225384a5c6e80907d6b5953535353545c70869a94806a55402b160000000000071c3145596d7d8889806f5c4834200b000000000000000615222f3b46505961686d71737474726e6961594e4336291a0b00000000001e33485d6f776d635a504a515a646f786d5a45301b0010223240484a484747474848494a4943363a454a4a48484747484a4a453b2c1b08000000000000000000040f171c1f1f1c160e02000000000000000000000000000000000000000000000000000810141515151515151515120c0300000000000000000000000517293a4a5b6a79889596887a6d6259514c4847484b5159636f7c8b807162534434241302000000000000000000000000000012263b4f64788d86715c48331f0b0000000000091d3145596d82968c7764503c281400000000000000192e43586e84998d77624c37220d0000000b21364b60768c9c87715c47321d08080f1a273c52677c93947d68533e29130000000000192c40515f646464646464646464666666748b9d88726a6a6b6555422d190000172c42576c828d77624d38230e000000000812273c52677c9395806a543f2a15151515273c52677c93947d68533e29130a0000000000000012273c52677c9395806a543f3f52677b908b7764513d2914000000000000000000000a1d2f4152637383908675675a50494544454a515c69788a88725d48331e0900000000081b2d3f51617282897767594e494a5364778b9f8d7965503c271300000000000a1f344a5f73899c9d8c77624c37220d000000000000000004111e29333d454d53585c5e5f5f5d59544e463c3125180b0000000000001f34495e718282766d6359636d7782806f5a45301b000414222d33343332323233333434342f25283134343333323233343431291d0e00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000e1a24292a2a2a2a2a2a2a2a2720140600000000000000000000102235465868788998978878695c50463d37333233373d46515e6c7c8d827162524231200e0000000000000000000000000003182c41556a7d93806b56422e1905000000000001162a3e53677c9093806b57432e1a06000000000000192e43586e84998d77624c37220d0000000b21364b60768c9c87705b46301b06000012273c52677c93947d68533e291300000000001d32475c6f7979797979797979797b7b7b7b8b9d887d808082705c47321d0000162b40556a808c76604b36210c0000000e1b252a3c52677c9395806a543f2b261c1b252a3c52677c93947d68533e2b261d1001000000000012273c52677c9395806a543f394e63788f95826c57432e19040000000000000000000012243545556472808b85776c645d5a595a5e656e79889786705b46311c060000000000102233445463728286776b625e5f657082949483705d4a36210d00000000000a1f344a5f73899d9e8c77624c37220d000000000000000000000c17202a31393f4347494a4a4845403a32291f1307000000000000001b2f42536271808a80766c76808a7d6f61513f2b1700000511191e1f1e1d1d1d1e1e1f1f1f1b13151c1f1f1e1e1d1d1e1f1f1d160c0000000000000511191e1f1f1e1e1e1e1e1e1f1f1f1b12070000000000000812191b1a150c010000000000000c1d2c373e3f3f3f3f3f3f3f3f3b322414030000000000000000071a2d4052647587979b8a79695a4c3e3329221e1d1e222a33404e5e6e80908270604e3d2b1907000000000000000000000000091e32465b6f848e7965513c2813000000000000001024394d62778c9b86725d4935200b000000000000192e43586e84998d77624c37220d0000000b21364b60768c9c87705b46301b06000012273c52677c93947d68533e291300000000001e33485d7284908f8f8f8f8f8f8f8f8f909094a39593939489735e48331e000014293f53687d8b745f4a35200b00000b1c2c383f4152677c9395806a544140392d2c383f4152677c93947d685441403a2e1f0f000000000b13273c52677c9395806a543f384e63778d9b86705b46311c0700000000000000000000061727374654616d78828a8077726f6e6f7378828b90887d6c58432e1904000000000004152636455462707c877d77737478828f9185756553402d1a060000000000071c31465a6d7d898a806f5d4834200b0000000000000000000000040d161e242a2e3234343433302b261e160c02000000000000000012253544536170808f8980898d7d6f605142332210000000000000000000000000000000000000000000000000000000000000000000000000000414222d3334343333333333333434342f251708000000000a19252d302f291e1102000000000016293b495354545454545454544f4232200c00000000000000001024374a5c6f8293a2907d6c5b4b3c2e21160e0905090e16223040516275888f7d6c5a483623110000000000000000000000000f23384c61758a88745f4b36220e000000000000000a1f34495d72889c8d77634e3a2511000000000000192e43586e84998d77624c37220d0000000b21364b60768c9c87705b46301b06000012273c52677c93947d68533e291300000000001a2e425466778980787878787878787979798b9d887c7c7d7d715c47321d000013283d52677c89735e49341f0a000015283a4a545658697d9396826c5956544b3c3a4a545658697d9496826b5956554c3d2c19060000101d272d3c52677c9395806a543f3b5065798f9d88725c47321d0700000000000000000000000919283644505c666f767c8286868486888886827b756c604f3d2915000000000000000818273645525e69737c8388898b89857d7366574736241100000000000001162a3d50606d74746f6152402d190500000000000000000000000000020910151a1d1f1f1f1e1b17110b03000000000000000000000717263543526170808e958c7d6e5f5142332415050000000000000001080c0d0d0c0b0b0b0c0d0f101111110f0c07020000000000000000000010223240484a4a4848484848484a4a4942352514010000061828374146443c2f201000000000001d314558676a6a6a6a6a6a6a6a614f3b27120000000000000004182c3f5366798c9f988572604e3d2d1e100400000000000412223345576a7d928a776653402d1a06000000000000000000000015293e52667b90836e5945311c0800000000000000061b3045596e8499927c68533e2a15000000000000192e43586e84998d77624c37220d0000000b21364b60768c9c87705b46301b06000012273c52677c93947d68533e29130000000000132537485a6b7d8d7a6963636363636464748b9d88726768686455422e1a000011263b50667b88735e48331e0900001c304558676b6d7384979b87766e6b695a474558676b6d7485989a86756e6b695b4935200c000d1e2e3a424352677c9396826b564347576a7d939a86705b46311c060000000000000000000000000a1826333e49525b62686d707374747473706c6760584e4232200d000000000000000009182734414c5760686d72747473706a61564839291806000000000000000e213242505a5f5f5b514334231100000000000000000000000000000000000000000000000000000000000000000000000000000000081725344351616f7d8a7c6d5f5041322315060000000000000008141c212222212121212122242526262624201c160f070000000000000000192d3f515d5f5f5e5e5e5e5e5e5f5f5e5343301d0900000f233546545b584d3e2e1e0e000000001f344a5f7480808080808080806a543f2a15000000000000000b1f33475b6f8396a28f7b68554331200f00000000000000000416283b4e62768a9583705c4936220e00000000000000000000061b2f43586c82917c68533f2b16020000000000000000172c41566b829696826c57422d19040000000000192e43586e84998d77624c37220d0000000b21364b60768c9c87705b46301b06000012273c52677c93947d68533e2913000000000008192b3c4e5f7083877563524e4e4e4f5f748b9d88725c53535046372512000010253a4f647988725c47321d0700001e33485e738283878888888889838276614c4a5f748283888888888888838278634e38230e00162a3c4c56585b697d9498836d5a585b6474879a907d6a56422d1804000000000000000000000000000815212c363f474e53585b5e5f5f5f5e5b57534c453c312314030000000000000000000916232f3a444c53595d5f5f5f5b564e44382a1b0b0000000000000000031423323e464a4a473f342516050000000000000000000507060100000005090b0d0d0c0a070300000000000000000000000000000000081625334251606e746d5e4f41322314050000000000000007172530363737363636363637393a3b3b3b3935312a231a0f040000000000001e33485c6f7474737373737373747471604c37220d000014293e5264706b5c4c3c2b1a090000001f344a5f74897c7c7c7c7c7c806a543f2a150000000000000011253a4e63768b9f9b87735f4c392614020000000000000000000b1f33475b7085998c7965513d2915010000000000000000000c2135495e72878b77624e39251000000000000000000014293f53687d949a86705b46301b060000000000192e43586e84998d77624c37220d0000000b21364b60768c9c87705b46301b06000012273c52677c93947d68533e29130000000000000d1f304253657688826f5d4c3a384a5f748b9d88725c473e3c3428190800000f24394e637887705b46301b0600001d32475c6f74747372727272737374705e4a485c6f7474737272727273737471604c37220d001c3146596a6e707585989b89776f6d707683928f8272614e3b2713000000000000000000000000000000040f19232b33393f4346484a4a4a4846423e3831291f1405000000000000000000000005121d2730393f44484a4a4a46413b31271a0c000000000000000000000514212b313434322c22160700000000000000000a141a1d1b160c0e151a1e20222222201c18120b0400000000000000000000000000000715243242505c5f5a4f40312314050000000000000000122535434b4c4c4b4b4b4b4b4c4e4f5050504e4a453e362c21150800000000001f344a5f748283868989898988838278634e38230e0000162b40566b827a6a5a493826140100001f344a5f748973676767677c806a543f2a1500000000000000162b3f54687d92a694806b5743301c090000000000000000000004182d41566b809595826c58442f1b0600000000000000000012263b4f64788d86715c48331f0b00000000000000000012273c52677c919d88725d48331e090000000000192e43586e84998d77624c37220d0000000b21364b60768c9c87705b46301b06000012273c52677c93947d68533e29130000000000000113243647596a7c8d7b6a5846354a5f748b9d88725c47322721170a0000000e23384d6277866f5a45301b060000192c3f515d5f5f5e5d5c5c5c5e5e5f5d52423f515d5f5f5e5c5c5c5c5e5e5f5e5343301d09001e33485e7384868786868686878483858a88837b71635443311e0b00000000000000000000000000000000000710181f252a2e313334343433312e29241d150d0200000000000000000000000000000b141d242b2f33343434322d271e1509000000000000000000000000030e171d1f1f1d18100500000000000000000d1b272f3230291e22292e333637373734312c261f170e0400000000000000000000000000061523323f484a473e312213040000000000000000001b2f42536062626060606060626364666665635f5952493e33261708000000001c314558676b6d7284979b88756d6b695b4935200c000014293d5162728378675543311e0b00001f344a5f7489735e5252677c806a543f2a15000000000000001a2f44586d8397a38e7965503c281400000000000000000000000013283d52677c929c88725e4934200b000000000000000003182c4055697d93806b56422e190500000000000000000011263b506579909f8a745f4a341f0a0000000000192e43586e84998d77624c37220d0000000b21364b60768c9c87705b46301b06000012273c52677c93947d68533e2913000000000000000618293b4c5e6f8288756452414a5f748b9d88725c47321d0d05000000000d22374c6176866f5a442f1a05000010223240484a4a484847474748494a4941343240484a4a484747474748494a494235251401001d32475b6d7271706f6f6f707273747474726e685f53453626140200000000000000000000000000000000000000040a1015191c1e1f1f1f1e1c19151009020000000000000000000000000000000000010910161b1e1f1f1f1d19130b020000000000000000000000000000000000000000000000000000000000000b1c2b394347453c2e363d43484b4c4c4c4a46413b332a20160a000000000000000000000000000514212c3334322b201304000000000000000000001f34495e71777776767676767778797b7b7978746d665c51443526170600000015283a4a545658697d9497836d5856554c3d2c190600000e2134445466778572604d3a271300001f344a5f7489735e4852677c806a543f2a15000000000000001d32475c71879b9f8a74604b36220d00000000000000000000000010253b50647990a18c77624d38230e0000000000000000091e32465b6f848e7965513c2813000000000000000000000f253a4f647990a18c76604b36210b0000000000192e43586e84998d77624c37220d0000000b21364b60768c9c87705b46301b06000012273c52677c93947d68533e291300000000000000000c1d2f405263758782705e4c4a5f748b9d88725c47321d0700000000000b21364b6075846e58432e190400000414222d3334343333323232333434342e24222d3334343332323232333434342f2517080000182b3e4f5a5c5c5b5a5a5a5b5c5e5f5f5f5d59544c423627180800000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000911151616151515151515161615110a000000000215283a49565c594c404951585d606262615f5b554e463d33281c0f01000000000000000000000000040f191e1f1e180e0300000000000000000000001f344a5f747d80848c8c8c8c8983807d8082868882796e6153443424120000000b1c2c383f4052677c9397826b5641403a2e1f0f00000005162636485b6e837d6a56422e1a05001f344a5f7489735e5e5e677c806a543f2a15000000000000001f34495e73899e9b86705c47321d080000000000000000000000000f24394e63788fa4907a65503b261100000000000000000f23384c61758a88745f4b36220e000000000000000000000e23384e63788fa18c76604b36210b0000000000192e43586e84998d77624c37220d0000000b21364b60768c9c87705b46301b09000512273c52677c93947d68533e29130700000000000000001223354658697a8c7c6a594a5f748b9d88725c47321d070000000000091e32475a6b6f6654402c17020000000511191e1f1f1e1e1d1d1d1e1f1f1f1a1211191e1f1f1e1d1d1d1d1e1f1f1f1b12070000000f21313e464747464544444647484a4a4a484540382f2418090000000000000000000000000000000001010101000001010100000001070a0b0b0b0804000000000000000000000000050e13151515151515161616161616161616161616120b0000000000000f1b252a2b2b2a2a2a2a2a2a2b2b2b261c0f000000081c31455867726a5b535c656c7175777776736f69625a5045392d1f1102000000000000000000000000000000000000000000000000000000000000001c31455866686a7083979c89776d6a686a6c7179858c80716252412f1d0a0000000e1b252a3c52677c9397826b56402b261d100100000011202e394053687c86715d48331f0a001f344a5f748973737373737c806a543f2a15000000000000001f344a5f748ba099846e58442f19040000000000000000000000000e23384e63788fa4927c67523c2712000000000000000015293e52667b90836e5945311c08000000000000000000000e23384e63788fa18c76604b36210b0000000000192e43586e84998d77624c37220d00000c1922364b60768c9c87705b4630251d111721273c52677c93947d68533e29231a0d000000000000000517283a4b5d6e80887664535f748b9d88725c47321d07000000000004182b3d4d585a554837251100000000000000000000000000000000000000000000000000000000000000000000000000000000000313202b31323230302f2f30323334343433302b251c1207000000000000000000000000000008111516161616151516161615110e161b1f2121201d19130b0200000000000000000a1722282a2a2a2a2a2b2b2b2b2b2b2b2b2b2b2b2b2b261e11030000000c1d2d393f40403f3f3f3f3f3f404040392d1e0d00000a1f344a5f74867969656f7982878b8c888888847d766d62574a3d2f201101000000000000000000000003080b0d0d0d0b08040000000000000000000015283a48525355687d9397826d59545354575d6775869082705e4c392612000000000812273c52677c9397826b56402b160a000000000b1e2f3e4b545864798b76614c37220d001f344a5f748b898989898989806a543f2a15000000000000001f344a5f748ba097826c57422c170200000000000000000000000010253a4f64798fa4937c67523c271200000000000000061b2f43586c82917c68533f2b1602000000000000000000000f253a4f64798fa18c76604b36210b0000000000192e43586e84998d77624c37220d000a1b2a363d4b60768c9c87705b463e392f2128343c3e53687c93947d68533f3d372b1d0c000000000000000b1c2e3f5162748682705f5f748b9d88725c47321d0700000000000e1e2d394248484741372b1c0b000000000c151a1b1b1b1b1b1b1b1b1b1b1b1b1b1b1b1b1b1b1b1b1b1b1b1b1b1b1b1a150c00000000030e171c1d1c1b1b1a1a1b1d1e1f1f1f1e1b1711090000000000000000000000000000000e1b252a2b2b2b2b2a2a2b2b2b2a25222a3034363635322d271e1509000000000000081928353d3f3f3f3f3f404040404040404040404040403a2f2111000003172a3b4a5456565454545454545656544b3c2b180400091e33485c6d7c887876828c90867c76737273777d878074685b4d3e2f1f0e0000000000000000010a12181c20222222201d19130b02000000000000000b1c2b363d3e52677c9395806a543f3e3f424a57697c918e7c6955412d19040000000012273c52677c9397826b56402b16010000000015283b4d5c686e6d798f78634e38230e001f34495d70747474747474747467533e2914000000000000001f344a5f74899f97826b56402b160100000000000000000000000012273c51667b91a6927c67523c2712000000000000000c2035495d72878b77624e392510000000000000000000000010253a4f647990a08b745f4a35200b0000000000192e43586e84998d77624c37220d0015283948515462778c9c88725d54534c3f2e3746505356697d9495806a565352493b29170300000000000000102233455668798b7c6b5f748b9d88725c47321d070000000007192b3c4a565d5e5c54493a2917040000101e282f3030303030303030303030303030303030303030303030303030302f281e1000000000000000000000000000000000000000000000000000000000000000000000000000000b1c2c383f404040403f3f4040403f39353e45494b4b4a47423b31271b0e000000000013263746515454545454545656565656565656565656554d3f2e1c0900091e324659686b6b6a6a6a6a6a6a6b6b695a47331f0a0004192c3e4f5e6e7d8888948d7d7269625e5c5e626a748286796b5c4d3d2c1b090000000000000a141e262c313537373735322d271f150b000000000000000d1923283c52677c9395806a543f2a2a2e3a4e62778d9885705c47321d080000000012273c52677c9397826b56402b1601000000001b3044576a7a83827d8e78634e38230e001a2e41515d5f5f5f5f5f5f5f5f5849372410000000000000001d32475c72879c97826b56412c1702000000000000000000000000162b4054697d94a5907965503b26100000000000000012263b4f63788d86715c48331f0b000000000000000000000012273c51667b919e89735e49341f090000000000192e43586e84998d77624c37220d001c31445765686c7b90a08c796d69685d4b38425564686b7284989985726b68665946321e0900000000000000041627394a5c6d80897665748b9d88725c47321d07000000000f2336495a6871737066584734210d000c1e2e3b44464646464646464646464646464646464646464646464646464646443b2e1e0c00000000000000000000000000000000050b0d0c090200000000000000000000000000000015283a4a54565656555454565656544a4751595e60605f5c564e44392c1e0f000000001b2f4355646a6a6a6a6a6a6b6b6b6b6b6b6b6b6b6b6b6a5d4c382410000b21364b60758282808080808080828277624c37220d00000f2133455768798a998d7d6e60564e4947494e576371828a7a6b5a4a3827140200000002101c27313a41464a4c4c4c4b47423b32281d10020000000000000712273c52677c9395806a543f2a1521364b60768c9f8a745f4a35200b0000000012273c52677c9397826b56402b1601000000001f34495e738898948c8b76614c37220d0011233341494a4a4a4a4a4a4a4a453b2c1a08000000000000001a2f44596e839898836d58432e18030000000000000000000000071c3044596d8397a18c77624d38230e00000000000003182c4055697d92806b56422e1905000000000000000000000014283e53687d939b86705b46311c070000000000192e43586e84998d77624c37220d001f344a5f747d82898b8b8b89827d7a66513c475c717d80858b8b8b8b86807d75604b36210b00000000000000000a1b2d3e4f6172858371748b9d88725c47321d070000000014293e5266788689857563503c27120016293c4c585b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b584c3b28150000000000000000000000000000020f192022221e150a00000000000000000000000000001c314558676b6b6b6a6a6a6b6b6b68595a646d73767674706a61564a3c2d1d0c0000001e33485d7280808080808082828282828282828282827b68533d2813000a2034495d7074767b8a95958b7c7674705f4a36210c0004172a3d5063758797928676665748393432343a45536475888978675644311e0b00000010202e39444d555b5f6162625f5c564e453a2e20120200000000000012273c52677c9395806a543f2a21293a4e63778da18c76604b36210b0000000012273c52677c9397826b56402b1601000000001f344a5f74899ea095836f5b47331e09000515232e34343434343434343431291d0e0000000000000000172b4055697d939a866f5a45311c0700000000000000000000000f23374b5f73889c9b87725d49341f0a000000000000091d32465b6f848e7965513c2813000000000000000000000000162b40556a809597836d58442f19040000000000192e43586e84998d77624c37220d001f34495d707776767474747676777664503b465b6e77777674747474767677725f4a35200b0000000000000000000f2132445567788a7d748b9d88725c47321d0700000000172c42576c82969f93806a543f2a15001c3145596a7070707070707070707070707070707070707070707070707070706a5844301b000000000000000000000000000111202c34373732281a0b000000000000000000000000001f344a5f7482828280808082828275606b7782888c8c89867d73675a4b3b2a180600001d32475c6f8294958479797979797979797c80868f95806a543f2a1500061a2e41515d5f616c829697836d615f5d52422f1b07000b1f33465a6d80929a8780857566564738281f283646586a7d928573614e3b28150100081b2d3e4b566069707476777774706a61574c3e30201000000000000012273c52677c9395806a543f32353c47576a7d929f8a745f4a35200b0000000012273c52677c9397826b56402b1601000000001d32465b6e80898b84766653402c1804000005111a1f1f1f1f1f1f1f1f1f1d160c00000000000000000012263b4f63778c9d88735e4a35210c0000000000000000000007192b3f5266798ea295806c58432f1b060000000000000f23384c60758a88745f4b36220e000000000000000000000004192e43586d8398937d6954402b16010000000000192e43586e84998d77624c37220d001a2e41525f6261605f5f5f6061626158483a3f505e6262635f5f5f5f606162605443301c0800000000000000000003142637495a6c7d89778b9d88725c47321d0700000000172c42576c8296a093806a543f2a15001f344a5f74878787878787878787878787878787878787878787878787878787735e48331e000000000000000000000000000c1e2f3e484c4c45382817040000000000000000000000001e33485c6f74767c8a959588797470677a89948c807773747d86786959473523100000192d40526476889a8f7c6a646464646465676a727d8e826c57422c17000011233341494a54687d9495806a554a4941342412000011263a4e62768a9d917d70808474655546372718293b4e62768b917d6a5744301c08000f24374a5c68737d84898a848384867d75695c4e3e2e1c0a000000000012273c52677c9395806a5445474a5059657587999784705b47321d080000000012273c52677c9397826b56402b160100000000172b3e51616d7474706658483624110000000000000000000000000000000000000000000000000000000c2034485c6f83968d7864503c281502000000000000000004132436495b6e8296a08c7865513d29140000000000000015293e52667b8f836e5945311c080000000000000000000000091e32475c71869b8e7965503b2712000000000000192e43586e84998d77624c37220d00122434424b4c4c4b4a4a4d6173756b61574d49535d67717768544a4a4b4c4c4b443626140100000000000000000000081a2b3d4e607183838b9d88725c47321d070000000014293e526678878b857663503c2712001f344a5f748a8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b89735e48331e0000000000000000000000000215283b4d5c6261564634210d000000000000000000000000192d3f515d5f616c809597826c605d6a8095897a6e645e606d7d88766553402c19040011233547586a7c8e9a887664524f4f4f505256607083846e58432e1900000515232e343e53687d9495806a543f342e2416060000172c4054697d929e8a75617080847364554536271f33485c71869b8873604b37230e0014283d52677a86908c80766f6c6f7683877a6c5c4b392714010000000012273c52677c9395806a5a5a5c5f646b768493998b7a6754402c18040000000012273c52677c9397826b56402b1601000000000f223343515a5f5f5c54483a2a190700000000000000000000000000000000000000000000000000000005192c405366798c93806b574432200f0100000000000006132231425366788b9e9683705d4935220e000000000000061b2f43586c82917c68533f2b160200000000000000000000000e22374c60758a9c88745f4b36220d000000000000192e43586e84998d77624c37220d00061625303637373634394e6376857d746a605c66707a847b6a55403536373736312618080000000000000000000000000e1f314354657789919d88725c47321d07000000000f2336495a6972747267584734210d001d32475b6e7474747474747474747474747474747474747474747474747474746d5a46311c0000000000000000000000000b1e3245586b777463503c291501000000000000000000000010223240484a53687c9395806a55576c828a796a5d51494f62778c826f5c48331f0b000617293b4d5e7083949482705e4c3a3a3b3d4253667986705b46301b00000005111a293e53687d9495806a543f2a1a12060000001b3045596e849899846f5b627182837363544535262e43586d83988f7a66513d281300162b40556a80958b7b6e625b575b6473868b7a685643301c090000000012273c52677c939580706f6f70737880889491887b6c5c4a382511000000000012273c52677c9397826b56402b160100000000041525333e464a4a4841372b1c0c0000000000000000000000000000000000000000000000000000000000112437495c6e80918874614f3e2d1f130b0705060910192431404f607183959d8b796653402d1a060000000000000c2035495d72878b77624e39251000000000000000000000000014283c5165798f96826d5945311c08000000000000192e43586e84998d77624c37220d000007131c2122222120344758667584877d736f79838a7a6b5d4d3a26212222211d1408000000000000000000000000000213253648596b7c8e9d88725c47321d0700000000071a2c3d4b575e5f5d55493a29170400182b3e505c5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5c4f3d2a1600000000000000000000000114283b4e617588806c5844301c0900000000000000000000000414222d333c52677c9395806a54596e847d6c5c4c3f364b60748b8b77624e39240f00000c1e2f41536576899b8e7b6a5846342628364a5e7287725c47321d000000000013293e53687d9495806a543f2a1500000000001e33485d72889c94806a55536271828272635344352b40566b829695806b56412c1700182d42576c828e7d6d5e50464247566b80958673604c38230f0000000012273c52677c93978786868687898d8b88837c746a5d4e3e2d1b08000000000012273c52677c9397826b56402b160100000000000715212b313434332d241a0d000000000000000000000000000000000000000000000000000000000000071a2c3e50617283917d6d5c4b3d30261f1c1a1b1e242b36414f5e6d7d8fa090806d5c493724110000000000000012263b4f63788d86715c48331f0b0000000000000000000000071b2e43576b80948e7a66523e2a1601000000000000192e43586e84998d77624c37220d00000000080c0d0c0b182a3a48576574839086828c89796b5c4d3f2f1e0b0c0d0c080100000000000000000000000000000007192a3c4d5f70829488725c47321d0700000000000e1f2d3a43494a4942382b1c0c00000f21323f484a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a483e31200e00000000000000000000000a1d3144576a7d918873604c382411000000000000000000000000051119273c52677c9395806a545b708774614f3e2e3b4e63778d917b66513c271200000012243647596b7d8f9988756351402e1c2f43586d80735e48331e000000000013293e53687d9495806a543f2a1500000000001f344a5f74899f927c675244536372828271625343343f546a809598846e58432e19001a2f445a6f8483705f4f40332d3e53687c938f7a66513d28130000000012273c52677c939580747474777980857c716861574c3f30201000000000000012273c52677c9397826b56402b1601000000000000040e171d1f1f1e19110800000000000000000000000000000000000000000000000000000000000000000f213344556574848b79695b4d423a34312f3033383f48535f6d7c8c9c91827161503e2c1a0700000000000003182c4055697d92806b56422e190500000000000000000000000f22364a5d72869986725e4b37230f00000000000000192e43586e84998d77624c37220d0000000000000000000c1c2a394756657383919688796a5b4d3e2f2111000000000000000000000000000000000000000000000d1e30415364768888725c47321d070000000000010f1d272f3434342e261b0d0000000313222d33343434343434343434343434343434343434343434343434343434332c211302000000000000000000000013273a4d6073879a8f7b6754402c18050000000000000000000000000012273c52677c9395806a545b6f796d5945313545576a7d92937c67523c271200000006182a3c4e6071839593826f5d4b3928293e51616a665644301b000000000013293e53687d9495806a543f2a1500000000001f344a5f748ba0907965503b4554637383827061524340566b80959b866f5a442f1a001c31465b70877965534131223041556a809494806a543f2a150000000012273c52677c9395806a5f5f62656c798a82736453412e21120200000000000812273c52677c9397826b56402b160a00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000004152637475665748288786b5f554e49464446484c535b65707d8c9a90827363534332210f00000000000000091d32465b6f848e7965513c2813000000000000000000000006182b3e5165798d8f7c6956422f1b0800000000000000192e43586e84998d77624c37220d000000000000000000000c1b293847556472828878695b4c3d2f201103000000000000000000000000000000000000000000000112243547586a7b88725c47321d07000000000000000b141b1f1f1f1a130900000000000410191e1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1e190f030000000000000000000000091d304356697c909c8a836f5b4834200c0000000000000000000000000012273c52677c9395806a54515f645e4f3d3443526375889a8f7965503b2611000000000d1e30425466778a9b8d7a685745332133434f545248392714000000000013293e53687d9495806a543f2a1500000000001f34495e73899f9079644f3a3645556473848070615142576c839799846f5a442f1a001e33485e7386715d49362834404e5e70859995806a543f2a150000000012273c52677c9395806a544a4c515b6e839282705d4a36220e00000000000e1b252a3c52677c9397826b56402b261d1002000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000008192938475664717d897c7269625e5b5a5b5d61676e77838f978c807163554536251403000000000000000f23384c60758a88745f4b36220e0000000000000000000000112335475a6d829585725f4c3926130000000000000000192e43586e84998d77624c37220d00000000000000000000000b1a29374654637174695a4b3d2e1f11020000000000000000000000000000000000000000000000000617293b4c5d6f746c5a45311c06000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001326394c5f7286999380867763503c28140000000000000000000000000012273c52677c9395806a54424b4f4b40364452617082929b8874604b37220e0000000001132536485a6c7d9098867462513f2d25323b3f3e362a1b0a000000000013293e53687d9495806a543f2a1500000000001d32475c71869b907a66503b27374655657484807061515b70869a97826c57422d18001f34495e727b6b5642303a45515e6c7c8ea0927c68533e29140000000012273c52677c9395806a543f373f54697d948d7965513c2813000000000b1c2c383f4152677c9397826b5641403a2e200f0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000b1a29384653606b7680857d7773706f7072767b838b958d84796e61544537271808000000000000000014293d52667a8f836e5945311c08000000000000000000000c1d2e405264778a8b79675542301d0a0000000000000810192e43586e84998d77624c37220d0000000000000000000000000b19283745545d5f584b3c2d1f100100000000000000000000000000000000000000000000000000000c1d2f40515d5f5a4e3d2a16020000000000000c151a1b1b1b1b1b1b1b1b1b1b1b1b1b1b1b1b1b1b1b1b1b1b18110600000000000000010a1015171717140f08000000000000000000000000000000081b2f4255687c8f9d8a767d806b5743301c0800000000000000000000000012273c52677c9395806a543f373a373a47546270808f9f8f7d6b5844311c08000000000007192b3d4e6072849692806e5c4a392720272a2923190c00000000000013293e53687d9495806a543f2a150000000000192e43586c8296927c67523d2828374756657585806f6060758a9e927d69543f2a15001b2f425461665e4e3b434d58636f7c8b9a9b8976624e3925100000000b13273c52677c9395806a543f2a3d52677c9394806a55402b160100000015283a4a545658697d9498836d5a57554c3e2c1a060000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000b1a2835424e59636c747b8288868686888b8f8c87827971675c5043362719090000000000000000061a2f43586c82917c68533f2b16020000000000000000000b1a2a3b4c5d6f828f7d6d5c4a3825130000000000000d1a242a2e43586e84998d77624c37220d000000000000000000000000000a19273641494a453b2d1e0f010000000000000000000000000000000000000000000000000000000011223240484a473d301f0e000000000000101e282f303030303030303030303030303030303030303030302c231708000000000009141d252a2c2c2c28231b1106000000000000000000000000001125384b5e72859893806d7787735f4b38241000000000000000000000000012273c52677c9395806a543f2a253849586572808f9e928271604e3b2815010000000003090d1f31435567788a9c8c7968564432201215140f070000000000000013293e53687d9495806a543f2a15000000000015293e52667a8f95806b56422d19293847576675857d6e677b8fa08c77634f3a261100132536444e504c404b55606a75828d9b9c8d7d6b5946331f0b0000101d272d3c52677c9395806a543f3040556a809497826b56402b16010000001c314558676b6d7385989c89776e6b695c4935210c000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000a1724303c46505860676d7276797b7b7b7976726d665d544a3e3226180a0000000000000000000c2035495d72878b77624e392510000000000000000000091a293848596a7b8d8270604f3e2c1b0800000000000b1c2b373f4043586e84998d77624c37220d00000000000000000000000000000918252e343431281d0f0000000000000000000000000000000000000000000000000000000000000514222d3334322b20120200000000000c1e2e3b444646464646464646464646464646464646464646464640352615020000000b1a2630393f4242413d372e2417090000000000000000000000071b2e4154677a8e9e8a76636f837a67533f2c1804000000000000000000000012273c52677c9395806a543f2a2c4155677583909e918373635342311e0c000000000c171e211f2537495b6d8091978673614f3e2c1a080000000000000000000013293e53687d9495806a543f2a1500000000000f23374b5f72859786705c4935231a293948576776867d7083979784705c4834200c0008182732393b46525d68727c88929e968a7d6f5f4e3c2a1703000d1e2e3a424352677c9395806a5442444c5c6f8498927d69543f2a15000000001f344a5f748283878888888889848278634e38230e000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000007131e29333d454c53595d616466666664615d58524a41372d2115080000000000000000000011263a4f63778d86715c48331f0b0000000000000000001426384756667688827263534332210f00000000000015283a495356575c70869a8d77624c37220d00000000000000000000000000000007121a1f1f1c150c00000000000000000000000000000000000000000000000000000000000000000511191e1f1e180e0200000000000016293c4c585b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5344321f0b00000a1a2937434d53575756524b4135271808000000000000000000001024374a5d70849794826d5a687b836f5b4733200c000000000000000000000012273c52677c9395806a543f2a2e43586d82949b8f8272645545362513010000000f1d2a3236342d2c3d4f6173859791806d5b493726140200000000000000000013293e53687d9495806a543f2a150000000000081c2f4255687a8c8c786452413125202a3949586776877c8d9f8d7a6754412d19050000091829394857636f7a85909a998e83786d5f5141301f0d0000162a3c4c56585b697d9497826c5857595f6a798c988876634f3b2611000000001e33485c6f7474737272727273737471604c37220d000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000010c1725364551595c5b544f505050585c5c574d3f2f251b0f040000000000000000000003172c4055697d92806b56422e19050000000000000000001b2f43566474848071635445352514030000000000001c314558676b6c70798c9f8d77624c37220d000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001c3145596a70707070707070707070707070707070707070707070614e3a25110005172838475560686c6c6b665e5345362614020000000000000000061a2d405366798d9e8b77645160748876634f3b2814000000000000000000000012273c52677c9395806a543f2a2b3f526476888a7d70625446372818070000000a1c2d3b464b49403232445667798b9c8b7967554331200d00000000000000000013293e53687d9495806a543f2a150000000000001326384a5c6d7d8f826f5f4f42393535383e49586877899892826f5d4a37241100000012243647576674828d989a90867b71665b4f413223120100001c3146596a6e707585989a86746d6c6e737b889187796a594633200c00000000192d3f515d5f5f5e5d5c5c5c5e5e5f5e5343301d0900000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000091c304254636d727067594850606c71706a5d4d3b2814000000000000000000000000091d32465b6f848e7965513c2813000000000000000000001e33485d72837a6e61534536271707000000000000001f344a5f748282858b8b8b8b77624c37220d00000000000000000000000000000000000000000a131a1d1c181005000000000000000000000000000001090f110f09010000000000000000000000000000000000000000001f344a5f748787878787878787878787878787878787878787877d68533e2813000e2134465665737c8283807a7063534332200d0000000000000000102336495c6f839695826e5b48586c807d6a57432f1b080000000000000000000012273c52677c9195806a543f2a233547596a7c806e5f52443628190a000000001226394b59605d503e2b384a5c6e8091968572604f3d2b1907000000000000000113293e53687d9495806a543f2a15010000000000091b2d3e4f6070808d7c6d5f554e4b4a4c525a667282929584736352402e1d0b0000071b2e4153657585929f93887d73695e54493d33291c0c0000001e33485e7384868786868686878383848888847d74695c4c3b2a17040000000010223240484a4a484847474748494a494235251401000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000e23384c5f728288857765525b6e7d87867b6a57432e1a0500000000000000000000000f23384c60758a88745f4b36220e000000000000000000001d32475b6d72685d50433527180900000000000000001e33485c6f74747474747474705e4a36210c000000000000000000000000000000000000000d1b272e32312c22150600000000000000000000000006131d2426241d150c04000000000000000000000000000000000000001f344a5f748a8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b7d68533e291300162a3e51637484807b7b828e8271614f3c29150100000000000005182b3f5265798c9f8c7764513e51657887725f4b3723100000000000000000000010253a4f64798f95806a54402b17293b4d5f70837a68564533210f0000000000162c405568756e5b47342c3e5062748698907d6c5a4837251301000000000008141c293e53687d9495806a543f2a1d140800000000001021314251616f7c887d7268635f5f61666d7784919083887a6b5b4c3a271300000d22364a5e7083949e8f82756a60564c464d4d473a2a180500001d32475b6d7271706f6f6f707273747474726f6961574b3e2e1e0c00000000000414222d3334343333323232333434342f251708000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000011263b50667a8f9c95826c5761768b9b9a87715c47321d07000000000000000000000014293d52667a8f836e5945311c0800000000000000000000182b3e4f5b5d564b3f33251709000000000000000000192d3f515d5f5f5f5f5f5f5f5d51412e1b07000000000000000000000000000000000000091b2b394347463f332413010000000000000000000005152430383b38302820170e0400000000000000000000000000000000001d32475b6e7474747474747474747474747474747474747474747363503b2712001c31465a6d827b6d66666f80907d6c5844301c070000000000000e2135485b6f829595826f5c4835495d71857a66533f2b17040000000000000000000d22374b60748997826b57412c171e2f41536576867462503e2c1b0900000000172c42576c827763503d2c334456687a8c9c8a77665442301e0d0000000007172530363e53687d9495806a543f3631261808000000000314243342515e6a7680857c777474767a828a91897d727989796a56422d18030012273c5065798da090807063584d4346576262584835210d0000182b3e4f5a5c5c5b5a5a5a5b5c5e5f5f5f5d5a554e443a2d2010000000000000000511191e1f1f1e1e1d1d1d1e1f1f1f1b120700000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000011263b50667b909f96826c5761768c9e9c87725c47321d0700000000000000000000061a2f43586c82917c68533f2b1602000000000000000000000f21313e474843392e2115080000000000000000000010223240484a4a4a4a4a4a4a49413323120000000000000000000000000000000000000012253849565c5b5142311e0a00000000000000000000102233424d504c443b332a21180e04000000000000000000000000000000182b3e505c5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f564634200c001f344a5f74836f5d515264798f88735f4a35200b000000000004172b3e5164778b9e8c7865523f2e4255697d836e5b47331f0b000000000000000000081d31465a6d8295846e5945302a2e353d47596b7d806e5c4a3826140300000014293d52667b806d5a49403d3b4b5d6e8092958371604e3c2a1806000000122535434b4d54697d9495806b564d4b44362614010000000006152432404d59636c757c8287898b8a88837d756b606a79806d58432e180300142a3f54697d949885726152463b3a4e63757664503b251000000f21313e464747464544444647494a4a4a4845403a31281d0f02000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000f24384d6073838a877967535c6f8089897d6c58442f1a06000000000000000000000c2035495d72878b77624e39251000000000000000000000000313212b32332f261b100400000000000000000000000414222d3334343434343434342e23150600000000000000000000000000000000000000172c415567716f604d39240f05000000000000000000182c3f51606660574f463d342b21170c02000000000000000000000000000f21323f484a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4438281704001e33475b6c726653404c62778d8d77624c37220d00000000000d2134475a6d829496836f5c4936263a4e62768a76624e3b271300000000000000000002162b3e5265788b88735f4c403f4349515a646f7a887967564432200e0000000f24384d61768a77675b5552504f51637587988f7d6b59473624110000071b2f42536062646e82979984706562605444311d0800000000000615222f3b46505961686d71737474726e6961594e5b6a6c61513e2a150100152a3f546a8095927c68544334314355697c7b66503b261100000313202b31323230302f2f30323434343433302c261e150b0000000000000000000000000000070c0d0d0d0d0d0d0d0d0d0d0d0c0700000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000091d314456657074726a5b4a52616e74736c5f4f3c2915010000000000000000000011263a4f63778d86715c48331f0b000000000000000000000000030f181d1e1b140900000000000000000000000000000511191e1f1f1f1f1f1f1f1f1a1105000000000000000000000000000000000000050d192e43586e847b66503b261e1a150f090200000000001c31465b6f7b736b625a50473d34291f14080000000000000000000000000313222d333434343434343434343434343434343434343434343430271a0b0000182b3e4e595c5648445165798f8c77624c37220d0000000003172a3d5063768a9e8d796653402d1f33465a6e837d6a56432f1b070000000000000000000f2336495b6d808f7b695b5454585d646d76828c978573614f3d2c1a0800000a1e33485c718685776f6a6766646363697b8d9b89766553412e1a06000b20354a5e717779808c91918e80797772604b36210c00000000000004111e29333d454d53585c5e5f5f5d59544e463d4c5658504233210e000014293e53687c929079644f3a333f4f60728579644f3a250f000000030e171c1d1c1b1b1a1a1b1d1f1f1f1f1e1b17110b020000000000000000000000000006121b212222222222222222222222211b110500000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000114273847535c5f5d574c3d43515a5f5e594f41311f0d0000000000000000000000172c4054697d92806b56422e1905000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005101921282e43586e847b66503b36332e29241d150b000000001c31475c707c8680766d635a50463c31251a0d0100000000000000000000000410191e1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1c14090000000f20303d4547495559606e829486725e4934200b0000000811203346596c80939683705d4a3623172b3f53677a86725e4a3723140d040000000000000006192c3e5061718287786e6a6a6c7178828a949a928f806d5b49372411000004192e42576c82958a84807c7b797878787882959483705d49341f09000b20364b60757d7c7c7b7b7b7b7c7c7d76614c37220d00000000000000000c17202a31393f4347494a4a4845403a322e3a42433d33241504000011253a4f63778a917b66524446505d6d7d8d77634d38230e000000000000000000000000000000000000000000000000000000000000000000000000000515242f363737373737373737373737362e2314040000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000091a293640474a49433a2e333e464a49453d3123130200000000000000000000001c31465a6f848e7965513c281300000000000000000000000000000000000000000710151616161616161615110a00000000000000000000000000030a0f13151616140d040000000000000000000b17222c353c4348586e847b66504e4b47433e3831281d0f000000192d40526069727b8580776d63594e43372b1e110300000000000000000000000000000000000000000000000000000000000000000000000000000000000002121f2a304256676e727d8d87786856432f1b0600000e1b252a3c4f6276899c8d796653402d1a1524374b5f73877966523f2d28211507000000000000000f2132435362707d8983808082878d94948d867d7885786754402b1601000014293d52667b8a8280808080808080808080808080725e49341f0a00081d3145586668686766666666676768665946331e0a000000000000000000040d161e242a2e3234343433302b261e1d272d2d292115060000000c2034475a6d808f826f605a5b626e7b8b8c76604b36210c00000000000000000001080c0d0d0c0b0b0b0b0b0c0d0d0c09020000000000000000000000112333414a4c4c4c4c4c4c4c4c4c4c4c4a413222100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000b19242d3234342f281d222b313434312a2013040000000000000000000000001e33485d728288745f4b36220e000000000000000000000000000000000000000d1a242a2b2b2b2b2b2b2b2b261c0f00000000000000000000020e171e24282a2b2b28211507000000000000010f1c29343f4850575d606e847b666463605c58534c453a2d1d0b0000112334434d565f68727c8880766b6055493c2f2113040000000000000000000000000000000000000000000000000000000000000000000000000000000000000c1a262f445a6f8487837d74695a4a39261300000b1c2c383f47596c80929884705d4a372a1a25333d44586b80826f5c4a413d33251504000000000000031425354452606b767d85888b8a88858079726a6676826c57422c170200000f24384d6176826d6a6a6a6a6a6a6a6a6a6a6a6a6a6455432f1b07000215283a48525353525150535b636b73705f4a36210c0000000000000000000000020910151a1d1f1f1f1e1b17110a0b131818150e040000000005182b3e5061707d8a7d736f7075808c8f85735f4a34200a000000000000000008141c212222212121212121212222221e150a00000000000000000000192d40515f62626262626262626262625e503f2c18040000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000711191d1f1f1b140b0f171c1f1f1c160d02000000000000000000000000001b2f4355656d726b5945311c080000000000000000000000000000000000000b1c2b373f4040404040404040392d1e0d00000000000000000513202a33383d3f40403d332515030000000001101f2d3a46515c646b717678847b7b797875716c6760584b3a271400000616253039424c555f6a7582897d72665a4d3f3122120200000000000000000000000000000000000000000000000000000000000000000000000000000000081a2a38414657697277868577685644311e0a000015283a4a54576576899c927c6856534838263343505657657a8c79685b56504333210d0000000000000007172634424e59636a6f737474726f6b655e5658686d63513e2a150000000a1e33485c6f74675554545454545454545454545451463726130000061726333b40464c525960676f76808476614c37220d000000000000000000000000000000000000000000000000000000000000000000000000000e21324352606d77808684868987827a72675744301c0700000000000000071725303637373636363636363737373732281a0a0000000000000000001e33485c6f77777777777777777777776e5b47321d08000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001326384752595c594d3c2a1602000000000000000000000000000000000000152839495356565656565656544b3c2b1804000000000000041423313d464d52545656504333200d000000000e1f2e3d4a58646f7780868b84857c7c7d838987827b756957432f1b06000007131d262f39434d58636f7c8a84776b5d4f4030200f0000000000000000000000000000000000000000000000000000000000000000000000000000000011253748555b57585d67798c8674614d39251000001c314558676c7383949d927d6f6b6656422e3c50616b6c72809287786e6b61503d28140000000000000000081624313c464f555a5e5f5f5d5a56504a424a5558524535220f00000004192c3f515d5f584a3f3f3f3f3f3f3f3f3f3f3f3f3d3528190800001023354450555b60676d747b83867b71665947331f0a00000000070b0b0b0b0a0a0a0a0c0e0f0f0f0f0e0b0702000000000000000000000000000003152534434f5a646b70737474716d675f56493928150100000000000000122535434b4c4c4b4b4b4b4b4b4c4c4c4c453828160300000000000000001f344a5f748b8d8d8d8d8d8d8d8d8d8a745f4a341f0a0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001070c101314151514120f0b070100000000000000000000000000000000091a29353e4547453c2f1f0d000000000000000000000000000000000000001c304457666b6b6b6b6b6b6b695a47331f0a000000000000102132414f5a62676a6b6b61503c28130000000b1c2c3d4c5b6875828c8d827770847b67686d75808d9087725d48331e09000000010a131c26303a46525e6b7a8a897b6d5e4e3e2d1b09000000000000000000000000000000000000000000000000000000000000000000000000000000172c405466706a594a5d7186917c68533e291400001f344a5f74828689888888898482715c473240566b8083868888888983806b56402b1600000000000000000006131f2a333b4146484a4a4845413c362f3841433e352717050000000010223240484a453a2c2a2a2a2a2a2a2a2a2a2a2a2822170a000000172b3f52626a6f757b8288897d73695e54493b2a1704000006121b202121201f1f1f1f21232425252423201c17100901000000000000000000000000071625323d4750575c5e5f5f5c58534b43382b1c0b00000000000000001b2f4253606262606060606060606262615645321e0a00000000000000001f34495d7077777777777777777777776e5b47321d080000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000070f161c2125282a2a2a292724201b150f070000000000000000000000000000000b18232a3032302a1f1101000000000000000000000000000000000000001f344a5f738282828282828277624c37220d0000000000071a2d3f505f6c767b8082806b56402b160000041628394a5b6a7887938b7c6f646e847b665459626e7d8d8b75604b36210c00000000000009131d2834404e5c6b7b8c8c7c6c5c4b392714010000000000000000000000000000000000000000000000000000000000000000000000000000192e43586e8473604e5a6f8695806a543f2a1500001e33485c6f7473737272727373746d5945303f536674747372727273747467533f2a1500000000000000000000020d171f272d3133343433312d28221b252c2e2a23170900000000000414222d333431281c1515151515151515151515130e05000000001a2f445a6f7d848a8f8d82766c61564c41372b1d0c00000616242f35363635343434343638393a3a3a3835302b241d140a0000000000000000000000000714202b343c4247494a4a47443e3830261b0d0000000000000000001f34495e71777776767676767676777774624d39240f00000000000000001a2e41525f62686966626262686962625e503f2c1b0800000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000007111a232a30363a3d3f3f3f3e3c3935302a231b12080000000000000000000000000000060f161b1d1b160d0100000000000000000000000000000000000000001f344a5f748b979283797674705f4a36210c00000000000f2336495c6e7d8a8f80777467533f2a1500000e21334557687889978d7c6c5e586e847b665046515f6f808d77624d38230e00000000000000000b1623303e4d5d6e80928b79685643301d090000000000000000000000000000000000000000000000000000000000000000000000000000172c4054687c7d6c61647589927d69543f2a140000192d3f515d5f5e5e5c5c5c5e5f5f5c4f3d2a3749585f5f5e5c5c5c5e5f5f5849372410000000000000000000000000040c12181c1e1f1f1e1c18130d09121719160f06000000000000000511191e1f1c150b000000000000000000000000000000000000192d425668747d85867a6f645a4f443a2f241a0d000000122434424a4b4b4a4a4a4a4a4b4d4e4f4f4f4d4a453f3830271c11050000000000000000000000030e1821282d32343434322f2a241c1309000000000000000000001f344a5f747d80858c8c8c8c8883807d78644f3a240f0000000000000000162a3e5163727c7d7b72686a7b7c736a61584a38251100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000020e19242d363e454a4f5254545453514e4a443e362e251b100500000000000000000000000000000000000000000000000000000000000000000000000000000000001f344a5f748b9e8a7565615f5d52422f1b07000000000015293e5266798c958270635f58493724100003172a3d506375869792806f5e4e586e847b66503b41516275887965503b26110000000000000000000512202f3f51637589988673604d39251100000000000000000000000000000000000000000000000000000000000000000000000000001125394c5f71837d767782928876634f3b2611000010223240484a4948474747484a4a483e31202b3a454a4a48474747484a4a453b2c1a0800000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001327394a57616a7072685d52473d32271c1208000000001a2e41525e60605f5f5f5f5f606263646464625e5a534c433a2e221608000000000000000000000000050d14191d1f1f1f1d1a150f080000000000000000000000001c31455866686a7185999a86756d6a68675b4935210c00000000000000001a2f44596d82918c84867b738890877d7567543f2a1500000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005121f2b36404a52595f6467686a6a6866635e58524a41382d22170a00000000000000000000000000020a1115161614100a0300020c131717140d0400000000000000001f344a5f748b9c87705c4c4a49413424120000000000021a2e43586d82958d7965524a453b2c1a08000a1e3246596d80929b8875635143586e847b66503b3345586b807c68533d2813000000000000000000000211213346596d8296907c6854402b160200000000000000000000000000000000000000000000000000000000000000000000000000091d304254647380888b89837869584633200c00000414222d33343433323232333434332c21131c283134343332323233343431291d0e00000000000000000001090e0f0d060000090e0f0d080000000000000000000000000000010d15191a17100912181a19130a000000000000000000000000000000000a1c2c3a444e555c5d564b40352a1f150a0000000000001f34495d707676747474747476777879797877736e6860564c403326170800000000000000000000000000000000000000000000000000000000000000000000000015283a485253556a809595806b585453524b3d2c190600000000000000001b30465b708693806f727c848c89777a7d6b56402b160000000000000000000000000000000000000000000000000000000000000000000000000000000000000000061523303d48535d666d73787c7d80807d7b77736d665d544a4034281b0d00000000000000000000000a151e252a2b2b29251e170e141f272c2c2921180e050000000000001f344a5f748b9c87705b4635342e2416060000000000081d32475c71879b89735f4a3631291d0e00001125394e6175899d93806b584543586e847b66503b283c506478806a543f2a15000000000000000000000004172a3e53687c9397836e59442f1a0500000000000000000000000000000000000000000000000000000000000000000000000000001325364655636c7274746f665a4b3b2917040000000511191e1f1f1e1d1d1d1e1f1f1e190f030b151c1f1f1e1d1d1d1e1f1f1d160c00000000000000000007141d2324211a0f121c2325221b1103000000000000000000000002121f292e2f2b231a262d2f2d271c0e000000000000000000000000000000000e1c28313a41474843392e23180d02000000000000001f344a5f748082858b8b8b8b8b83807d7d808488837b73695e514435261707000000000005111a1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1e180f040000000b1c2b363d3e53687d94947d6853403e3d382d1f0e000000000000000000192e43576b7d8a80716969768c866f6669604f3c28130000000000000000000000000000000000000000000000000000000000000000000000000000000000000006152433414e5a66707982888e8d87838080808387827971675d5245392b1d0e0000000000000000000e1b2832393f40403e39322a2126323b41423d342b22181006000000001f344a5f748b9c87705b46301f1a12060000000000000a1f344a5f74899c87705c47311d160c000000162b4054687c91a08c77634f3b43586e847b66503b2635495d6f7366523e291400000000000000000000000011263b50667b919c87725c47321d070000000000000000000000000000000000000000000000000000000000000000000000000000071828374550585d5f5f5b53493c2d1d0c000000000000000000000000000000000000000000000000000000000000000000000000000000000000000006162531383a362c1f2330383a372e211406000000000000000000000f20303c43443f352a38414442392c1c0b000000000000000000000000000000000b151e262d32332f271c11060000000000000000001d314558676a6b7183979e8b796e6a68686b6f757d8a867b6f625344352513020000000515232e3434343434343434343434343434343434343434332c2114040000000d1923293e53687d94947d68533e2928241b0f0400000000000000000014283b4e5f6d7780857c75768c846e58544e4232200c0000000000000000000000000000000000000000000000000000000000000000000000000000000000000314243342515f6c77838d968b8279726d6b6a6b6d727982857a6f6356493b2c1d0e000000000000000d1d2c39454e535656534d463d3435434e565750473e352b23190e0100001f344a5f748b9c87705b46301b0600000000000000000c21364b60768c9c87705b46301b06000000001a2f44596e83979b86715d483443586e847b66503b262e40515c5e564836230f00000000000000000000030b17293e53687c929d88725c47321d070000000001070a0905000004090a080300000000000000000000000000000000000000000000000a1927333d44494a4a4640372b1e0f000000000000000000000000000000000000000000000000000000060d10100f0f0e0e0f0f11100c0500000000112434434d4f493d3032414c4f4b3f32241609000000000000000000182b3e4e585a53453748555a564a3a28150100000000000000000000000000000000020b12191d1e1b140a000000000000000000000016293b49535457687d9398836f5c545353565b626c78878d8071625342311f0d00000011233341494a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a473f322210000000000713293e53687d94947d68533e2b2a28241e181006000000000000000c1f30414f5a646b727982828c846e58433b312314020000000000000000000000000000000000000000000000000000000000000000000000000000000000001021324251616f7d8a959285796e655e59565456585e656e7986827467594a3b2c1c0b0000000000081a2b3b4a5761686b6b68615950474353616a6c635a51483f362c1f0f00001f344a5f748b9c87705b46301b0600000000000000000d22374c62778d9b866f5a45301b05000000001e33485d72879c97826c58432e43586e847b66503b2623323f484943382a190700000000070c0e0e1013171e283546596d82969b86705c47311c070000000a151c1f1e19110f181e1f1d170d01000000000000000000000000000000000000000000000916212930343434322c241a0e0000000000000000000000000000000000000000000000000000000e1a222626252423232425262521180b000000192d415260645b4e403e505f645d50423426190b00000000000000001e33475b6b6f63514054666f685744301b060000000000000000000000000000000000000000000000000000000000000000000000000c1d2c373e3f52677c9395806a55403e3e41464f5a687789908270604f3d2a180500001a2e41515d5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5b50402d1a060000000013293e53687d94947d68533f403f3d39332b23190d0000000000000a1c2d3c495052575e656d768c846e58432e1f1405000000000000000000000000000000000000000000000000000000000000000000000000000000000000091b2d3e4f6070808e9b908273675b514944403f40444a515c687585867768594a3a29180600000000112437495968747c82827c756d63595061717d80766d645b52493d2d1c0a001f344a5f748b9c87705b46301b0600000000000000000d23384c62778d9b866f5a442f1a05000000001f344a5f74899f947d69543f2e43586e847b66503b2614222c333430271b0c00000005111b21232325282c323a45536375899c95826c58432e190400000c1b283134332d23202b3334322a1f110100000000000000000000000000000000000000000000040e151b1f1f1f1d1811070000000000000000000000000000000000000000000000000000000e1e2c363b3b3a393838393a3b3a34291b0b00001e33485d70796c5e50455a6e796e60524437291b0d000000000000001f344a5f74826b5742576c83735e4935200b000000000000000000000000000000000000000002090d0f0e0b06000000000000000000000e1a24293c52677c9395806a543f2a292c333d4a596a7c8f8f7d6c5a4734210e00001f34495d70747474747474747474747474747474747474746e5d4935200c0000000013293e53687d94947d6853545654524d473f362b1e11020000000013273a4b5a656763565160768c846e58432e1903000000000000000000000000000000000000000000000000000000000000000000000000000000000000011427394b5c6d7d8f9e9282726356493e362f2b2a2b2f363f4a58667688877768584736241200000000192d41546777869197948d8980766c616c8090938a82776f655b4b392611001f344a5f748b9c87705b46301b0600000000000000000e23384e63788f99846f5a442f1a05000000001f344a5f748ba0937c68533d2e43586e847b66503b26111c24272621180c0000000414232e3638383a3d41464d57637082939d8c7865513e2915000006192a39444a484033303e474a463d2f1e0c0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000061a2c3c4950504f4e4e4e4e4f504f4739291704001e33485d70827c6e60525a6d807d70625447392b1e100200000000001f34495e7386705c47576c8377634e3925100000000000000000000000000000000000000009151d22242320190f020000000000000000000812273c52677c9395806a543f2a1518202c3c4d5f72869a8a7764503d291501001f344a5f748283878b8b8b8b8b878686868686888b8b8b8b78634e38230e0000000013293e53687d94947d68686a6b6a67625b52483c2f201101000000192e425669787c74624e60768c846e58432e19030000000000000000000000000000000000000000000000000000000000000000000000000000000000000b1e314356687a8c9c978674635445382c221b1615161b222d3a48596a7b8e86756453412f1d0a0000001e32475c708496a2908278787d86807475899c9a8c868682786954402b15001f344a5f748b9c87705b46301b0600000000000000000e23384e63788f99846e58432e1903000000001f34495e73899e937c68533d2e43586e847b66503b26212e383c3b352a1b0b0000102232404a4e4e4f52555a616a74828f9d8f806e5c4936220e00000e223648575f5d51423c4e5b5f5a4d3c2916010000000000000000000000000000080e110f090100060c0f0e0a02000000000000000000000000020e161c1e1d1a150c000000000000000000000d2236495a656564636363636465645746331f0a00192d41526373857d70635561718280726457493c2e201205000000001e33485e738975604c566b827c68533e2a1500000000000000000000000000000000000009192731373a38352d20120100000000000000000012273c52677c9395806a543f2a15030e1e3043576a809494806c5844301c07001d324659686b6d73869a9b8878716f6f6f6f70737b86948f78634e38230e0000000013293e53687d94947d6c7c8082807b766f655a4d3e2f1f0e0000001b30465b7086927d695462778c846e58432e190300000000000000000000000000000000000000000000000000000000000000000000000000000000000013273a4d607386989e8c7967564636271a0f0600000006101c2a3b4c5e70849482705f4c3a27140100001f344a5f748a9f988572646369737c867c8fa08d7b7070767a6955402b16001f344a5f748b9c87705b46301b0600000000000000000e23384e63788f98836c57422d1803000000001d32475c70869a947d69543f2e43586e847b66503b262f3f4c5250473928160300192c3f505d636364676a6f757d8792968b7d7061503e2c1906000013283d5165746f5f4b43586b746b5945301b0600000000000000000000000003101b2326241d130e192124231e14080000000000000000000002121f2a3133322f281e1000000000000000000010263b506578797978787878797a75624d38230e00112435455666778882736558647586837567594c3e302215070000001d32475c7288796551566b82826c58432e1a050000000000000000000000000000000002152737444c4f4e493e301f0d00000000000000000012273c52677c9395806a543f2a15000014273c5065798f9c88735f4a36210c00172a3b4a5456586b829696826b5d5a5a5a5a5b5f6875868f78634e38230e0000000013293e53687d94947d6b7977777b838a82776b5c4d3d2b190700001a2f43586c7d8e836f5e65798f836d58432e19030000000000000000000000000000000000000000000000000000000000000000000000000000000000071b2f43566a7d90a395826e5c4a3928180a000000000000000c1d2f4154677a8f8f7c695744301d0900001f34495e73889d947d69554e566069737c919a86705d5c63665d4c3a2612001f344a5f748b9c87705b46301b06000000000000000010253a4f64799097826b56412c170200000000192e42576c809597826d58432f43586e847b66503b26394c5d67645746321e09001e33485c6e7878797c80848a91928b83796d60514232210f00000014293e53687d796550455a6f86735e49341f0a00000000000000000000000513212e373b3830241f2c353a38312617070000000000000000000e20303d454847443b2e1e0d000000000000000010263b5065787b7c848f8f847c7a75624d38230e000617273849596a7a8c8475685a68788986776a5c4e403325160600001d32475c7287806a55546a8086715d48331e0a00000000000000000000000000000000091d3144556064635c4e3c291500000000000000000012273c52677c9395806a543f2a1500000d22374c61768ca18e78644f3a2510000c1d2d393f40546a8095947d685345444444464c5868798c79644f3a250f0000000013293e53687d94947d6864636367717d8e897a6b5a49372410000015293c4f606f7c887c727583907d6954402b160100000000000000000000000000000000000000000000000000000000000000000000000000000000000d22364a5e7286999f8c7864513f2d1b0a0000000000000000001224384b5f7388998673604c39251100001c31455a6e829494806a5647434d56667b9197836c57474f504b3f2f1d0a001f344a5f748b9c87705b46301b06000000000000000012273c51667b9194806a543f2a15000000000014293d5165798d9b87725e4a3643586e847b66503b2c4054687b75614c37220c001f344a5f74898f8e8d8b8986827c766f665c504233241504000000152a3f546a807d6854465b708777624d38230e00000000000000000000081523313f4b504d42332f3d494f4d44352512000000000000000000172b3d4e5a5e5c584c3c2a1602000000000000000d2236495a646668788e8e786766635746331f0a00000a1a2b3c4c5d6e7d8f86786a5d6b7c8d887a6c5e514334241200001b30465b7087846f5a54697d8b76614c38230e000000000000000000000000000000000c21374c607378776b58432e1900000000000000000012273c52677c9395806a543f2a1500000a1f344a5f748a9f917c67523c271200000f1b252a3f546a8095947d68533e2f2f2f313a4a5c6f837b66503b26110000000013293e53687d94947d68534d4d54607083968a786653402c1804000d203242515e6a757d8589898071604d3a261100000000000000000000000000000000000000000000000000000000000000000000000000000000000013273c5065798da29884705c4935221000000000000000000000081c3045596d8397907c6854402b170300162b3e51647585918673655a524a50667b9197826b56403a3b372e211100001f344a5f748b9c87705b46301b060000000000000000152a3f54687d93927c67523d281300000000000e22364a5d7083958d7966524043586e847b66503b35485b6f8376604b36210c001c31465b70867a78777673706d68625b53493e3224150600000000162b40566b82826d58475c72887b66513c27120000000000000000000a182633414f5d6660513f3f4d5b646153422f1b0600000000000000001d32465a6c73726a5946311c0700000000000000061a2c3c494f5060768c8c7660504e47392917040000000d1e2e3f5060718292897a6d5f6f80908b7c6f6152412e1b06001b30455a6f8689745f53687d907b66513d2813000000000000000000000000000000000d22374c62778d866f5a442f1a00000000000000000012273c52677c9395806a543f2a150000081e33485e73899f947d68533e291300000009152a3f546a8095947d68533e291a1a1c2d4053687c7c67523d28130000000013293e53687d94947d68533e384253667a8f96836f5b47321e090002142332414d5861697074736d625343311e0a000000000000000000000000000000000000000000000000000000000000000000000000000000000000172c41566a8094a6927d6955402d19060000000000000000000001162b3f54697d9497836f5b46311d08000f2235475766737d8883776d665e56667b9197826b56402b26231b100300001f344a5f748b9c87705b46301b0600000000000006121b2d42576c82968d78634f3a25100000000000061a2d415366788a95826f5d4c43586e847b66503b4152647789735e49341f0a00192d42576c827d6962605e5c58534e4740372c2114060000000000172c42576c8286705c485e7388806a55402b1702000000000000000d1a283643515f6d7a6f5b464f5d6b78715e49341f0a00000000000000001e33485e738887735e48331e0900000000000000000e1e2b353a4b60768c8c76604b3934291b0b00000000001021324253647486968b7d6e617283948d80705e4a35200b001a2f445a6f868e786452677c93806b56412d18030000000000020607070707070707070d22374c62778d866f5a442f1a00000000000000000012273c52677c9395806a543f2a1500000a1f344a5f74899f947d68533e291300000000152a3f546a8095947d68533e2913011024394d6277806a543f2a150000000013293e53687d94947d68533e29374c61768c9f8a75614c37220d0000051423303b454e555b5f5f5a5144352514010000000000000000000000000000000000000000000000000000000000000000000000000000000000001b30455a6f8499a18c77634e3a261100000000000000000000000012273c51667b919e8974604b36210c00051729394856616c757d858279726a667b9197826b56402b160e08000000001f344a5f748b9c87705b46301b0600000000000515232e35485c70869986725d4935200c000000000000112437495a6b7c8c8d7a6a5a4c586e847b665044505f708287725c47321d0800152a3f53687d836d584b4947433f39332c2b2b2821160900000000182d42576c838a75604b5f7389836e59442f1a060000000000010f1d2b384653616f7d806e5b52606d7b82715e49341f0a00000000020607071e33485e738989735e48331e090706020000000000000e1921364b60768c8c76604b3621170b00000000000008192a3a4b5c6d7d909688735e6a7b8d988a76604b36210b00192e43586e84927d6854677c9285705b46321d08000000020e161c1d1d1d1d1d1d1d1d1d22374c62778d866f5a442f1a00000000000000000012273c52677c9395806a543f2a1500000d22374c61768ca0927c67523d281300000000152a3f546a8095947d68533e2913000b1f34485b6a6d61503c27130000000013293e53687d94947d68533e29354b5f748ba08f78634e39240f00000005121e28323a41464a4a463e33261708000000000000000000000000000000000000000000000000000000000000000000000000000000000000001e33485d72889c9d88735e4934200b0000000000000000000000000f253a4f64798fa38e78644f3a240f00000b1b2a38444e586169717880867d767b9197826b56402b160100000000001f344a5f748b9c87705b46301b060000000000112333414a5163778b8d7c6956422e1a0600000000000007192b3d4e5e6e7c8b8877695d586e847b665057616e7d8e866f5a45301b060011263b50657987715c474444434342424240403c34271808000000192e43586e848e78644f5f748b87725d48331f0a0000000004111f2d3b48566471808372615462707d86756453422f1b060000010d161b1d1d1e33485e738989735e48331e1d1d1b160d0100000000000b21364b60768c8c76604b36210b00000000000004152637475869798b9386776966778895887a6c5a47331e0900192e43586e8497836d59667b918974604b36220d000002121f2a3132323232323232323232374c62778d866f5a442f1a00000000000000000012273c52677c9395806a543f2a15000012273b5065798fa38e79644f3a251000000000152a3f546a8095947d68533e29130005182b3d4d5758514333200d0000000b14293e53687d94947d68533e29384c62778ca18f79644f3a250f00000000010c151e262d323434312b21160800000000000000000000000000000000000000000000000000000000000000000000000000000000000000001f344a5f74899f9a866f5a45301b070000000000000000000000000e23384e63788fa4917b66513c27110000000c1a27323c454e555d646b737a82839297826b56402b160100000000001f344a5f748b9c87705b46301b0600000000001a2e41515e6370828d7d6f5e4c3a271300000000000000000e1f3040505e6c7985887a6f666e847b66646a73808d97836d58432e1904000d22374c61768a75605a5a585858575757565550453625130000001a2f445a6f86927c685360768c8b76614c37230e0000000614222f3d4b59667482877665576472808a78685746362512000001111f2a3032323233485e738989735e4833323232302a1f1101000000000b21364b60768c8c76604b36210b000000000001112233445465768791837567637385938577695c4e3d2b180400172c42576c839887725d667b908e7965503b261200000e1f303d4547474747474747474747474c62778d866f5a442f1a00000000000000000012273c52677c9395806a543f2a1500091b2e42556a7d939c88745f4b36210d00000000152a3f546a8095947d68533e291300000e1f2f3b42433e332515030001111e282d3e53687d94947d68533e324052667a8fa28d77634d38230e000000000000020b12181d1f1f1c160e040000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001f344a5f748ba098836d58432e18030000000000000000000000000f24394e63788fa4937c67523c27120000010e1a23282b323a414950575f666d7b9197826b56402b160100000000001f344a5f748b9c87705b46301b0600000000001f34495d707780867a6e6051402f1d0a000000000000000001122232404e5c67737d86827a76847b74787d87908a837a6955402b160100091e33485d728878706f6f6e6e6e6c6c6c6b6a635443301c0800001b30465b708696826c5762778d8f7965503b2612000005152432404d5b6976858b7969596774838d7c6b5a4a3928180700000d1f2f3c4547474747485e738989735e4847474747453c2f1e0c000004111b21364b60768c8c76604b36210b00000000000e1f2f40516172838f8072655f708290837467594c3e30200e0000172c42576c82978c7762647990937d6954402b170200162a3d4e5a5c5c5c5c5c5c5c5c5c5c5c5c62778d866f5a442f1a00000000000000000012273c52677c9395806a543f2a150a1626384a5d71859994826d5945311c0800000000152a3f546a8095947d68533e2913000001111e282d2e2921160700000e1f2f3b424453687d94947d685343464f5d6f82969a87725e4a35200b00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001f344a5f748ba097826b56412c170200000000000000000000000010263b50657990a5937c67523c27120000101f2c363d403f3a31353c434b52667b9197826b56402b160100000000001f344a5f748b9c87705b46301b0600000000001f344a5f7483857c7266594b3b2a1806000000000000000000041422303e4a56606972787d838687878683807b766f675c4c3a26120000051b2f44596e84878686868484848383828280725f4b37230e00001c31475c70879a86705b63788d937d69543f2b16010010223342505e6b79878e7d6c5c69778590806f5e4d3d2c1b0b000000162a3c4d595c5c5c5c5c5e738989735e5c5c5c5c5c594d3c2916000313222e35374b60768c8c76604b36210b000000000a1b2c3c4d5e6f808c7d70625c6c7d8e80726456493b2e2012020000162b40566b8297917c6763788f98836e5945301b07001c31465a6c72727272727272727272727272778d866f5a442f1a00000000000000000a12273c52677c9395806a543f2a191e27344455677a8d9c8a7764513e2a160100000000152a3f546a8095947d68533e2913000000000b141818150e04000000182b3d4d57585b6b829695806b59585a616d7b8d9c8e7c6a57432f1b070000000000050b0d0d0d0d0d0d0d0d0d0d0d0d0c0800000000000000000000000000000000000000000000000000000000000000000000000000000000001f34495e73899e97826b56402b160100000000000000000000000014283d52677c92a6917b66513c2712000b1d2e3d495256544e433428303b50667b9197826b56402b160100000000001f344a5f748b9c87705b46301b0600000000001d314558676d77878477695948352310000000000000000000000412202c38434d565d64696e847b706f6d6a66615b544b3e2e1d0a000000172c41566b8091939598999999989897978f7a65513d281400001d32475c72889d89745f64788f97836d58432e1a0500192c4051606e7c8a9182705f6c79889483726151402f1f0e000000001c3146596b727272727272738989737272727272726b5945301b000f2132404a4c4b60768c8c76604b36210b00000000142739495a6b7c897b6e605868798a7d6f615446392b1d1002000000152b40546a809596826c63788f9d88735e4a35200b001f344a5f74888888888888888888888888888890866f5a442f1a000000000000000f1c262c3c52677c9395806a543f2c2f323a4451617385978f7d6c5a4835210e0000000000152a3f546a8095947d68533e291300000000000000000000000000001e32475a6a6e7076879a9a86736e6d6f757d8b938a7d6f5f4d3a271400000000010f1920222222222222222222222222211c13070000000000000000000000000000000000000000000000000000000000000000000000000000001c31475c70869b97826c57422c1702000000000000000000000003182d41566b8095a38f79644f3a25100014273a4c5a666b696052412f263b50667b9197826b56402b160100000000001f344a5f748b9c87705b46301b06000000000016293b4a545a697b8f887665523f2b180400000000000000000000020f1b26313a42494f586e847b665a5855514c4740382d20100000000013283d5266777b7d808386888a8c8f919595806b57422e1905001e33485e73899f8d78636479909b87715c47331e09001e33485c6f7d8c958573636d7c8a98877665544433221201000000001f344a5f74888888888888888d8d88888888888888735e48331e00182b3e505d625c60768c8c76604b36210b000000001b304456677887786b5d546575877a6d5f514436281b0d0000000000152a3f546a80929a867062778d988d77634e3a2510001f344a5f748a8b8b8b8b8b8b8b8b8b8b8b8b8b8b866f5a442f1a0000000000000c1d2d39404252677c9395806a54434244474d56627080918f8070604f3d2b18050000000000152a3f546a8095947d68533e291300000000000000000000000000001f344a5f74848687868686868784838589888580776d605141301e0b00000000111f2c3437373737373737373737373736302516060000000000000000000000000000000000000000000000000000000000000000000000000000192e43586c829698846e58442f190400000000000000000000000a1e32475b7085999f8a75604b37220d001b2f43576978807d705e4c38263b50667b9197826b56402b160100000000001f344a5f748b9c87705b46301b0600000000000c1d2c383f4c5f738895826f5b47331e0a00000000000000000000000009141e272e3543586e847b665043403c38332c241b1002000000000e233649596366686b6d6f727477797c808586715c48331f0a001f344a5f748a96917c67667b8f998b75604b37220d001f344a5f7489978e7b6a5b708695907d6d5c4c3b2a190900000000001f344a5f74898989898989898e8e89898989898989735e48331e001d32475b6e776f67768c8c76604b36210b000000001e33485e738476685b4d5b7083786a5d4f413326180b00000000000013283d5164737d868a75616f7b84897c68533e2813001e32475b6e747474747474747474747474747474746b58432e1900000000000016293b4b55575a697d9397836e5d5857585c616973808f8a7d7061524231200e000000000000152a3f546a8095947d68533e291300000000000000000000000000001e33485c6d7271706f6f6f707273747474736f6a635a4f42322312010000000b1e2f3d484c4c4c4c4c4c4c4c4c4c4c4c4b423424120000000000000000000000000000000000000000000000000000000000000000000000000000152a3e53677c909b86705c47321d09000000000000000000000013263a4d61758a9f9985705b47321d09001e33485d7287958e7b68543f2b3b50667b9197826b56402b160100000000001f344a5f748b9c87705b46301b060000000000000e1b253045596e84988a76614d38240f00000000000000000000000000010a131a2e43586e847b66503b2b27231e18110800000000000007192b3b474e515356585a5d5f6264676b708276614c37220d001e32475a6c798389806b60717c858a79644f3a250f001d3146596b798795897767697785938b7a69594837271605000000001d32465a6d737373737373738989737373737373736c5a45311c001e33485d7282837b7b8e8c76604b36210b000000001d32465a6c7266584a43576973685a4c3f31231608000000000000000e21344655616a7174705f5e686f747465513d281300182c3f505c5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5b4e3c29150000000000001c314559686c6f7485989c8b7a716e6c6e70757c868b83786d60524334241402000000000000152a3f546a8095947d68533e29130000000000000000000000000000192c3e4f5a5c5c5b5a5a5a5b5c5e5f5f5f5e5a5650473d322314050000000014283b4d5b6262626262626262626262625f52412e1b06000000000000000000000000000000000000000000000000000000000000000000000000001024394d6175899c8a75604c38230f000000000000000000000b1d304255697c91a5927d6955412d1804001e33485d72889b97836e5a46323c51667b9197826b56402b160100000000001f344a5f748b9c87705b46301b060000000000000008172c40556a8095907b66513c271200000000000000000000000000000000172c4155687471614e3925130e09040000000000000000000d1d2a34393c3e404345484a4c4f52566473705f4b36210c00182b3d4e5c666e737468556069707472614d39240f00162a3c4d5b6876849285746367748290887666554434231202000000172b3e4f5b5e5e5e5e5e5e738989735e5e5e5e5e5e5a4e3d2a16001b2f4356646d768089928c76604b36210b00000000172b3d4e5a5d56483a3a4b595e574a3c2e211305000000000000000005172837454e575d5f5d514c545b5f5f574836220e000f21323f484a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a473e301f0d0000000000001e33485e738384888787878788878483848687837d776f665b4f423425160600000000000009152a3f546a8095947d68533e291309000000000000000000000000000f21313e464747464544444647494a4a4a4845413b342b2014050000000000192d42576a777777777777777777777777705e4a35200b00000000000000000000000000000000000000000000000000000000000000000000000000091e3145596c80928f7a66523f2b190700000000000000000918293a4c5f7285999c8975624e3a261200001b2f44586b7d8e9d8975614e3b3e53687d9397826b56402b160100000000001f344a5f748b9c87705b46301b06000000000000000013283d52677c92947d69543f2a14000000000000000000000000000000001226394a585f5d5344321f0b000000000000000000000000000d18202527292c2e303335383a3d47565e5d5242301c08000e20303e4a535a5f5f584a4d555c5f5e5444321e0a000d1f2f3d4b586673828f8270606471808e8473625141301f0f0000000e20313e4748484848485e738989735e4848484848463d301f0e0014263847515a636c76808876604b36210b000000000e20303d464843382a2d3b454844392c1e1003000000000000000000000a1927323b42484a49413840464a4a44392a1906000414222d3334343434343434343434343434343434332b2012010000000000001d32475b6e73727270707070727374747473716e69635b53493e322516070000000000000f1b252a3f546a8095947d68533e2a251b0f0000000000000000000000000313202b31323230302f2f30323434343433312d2720180e020000000000001a2f445a6f868d8d8d8d8d8d8d8d8d8d8d77624c37220d000000000000000000000000000000000000000000000000000000000000000000000000000216293d5062758796826e5b48362515070000000000030d19273647586a7c8fa292806c5946321f0b000015283b4e5f70808d917d6a594b49596d8296947d69543f2a150000000000001f344a5f748b9c87705b46301b06000000000000000011263b50667a9096826b56402b1601000000000000000000000000000000091b2c3a454a4941352615020000000000000000000000000000050c10121416191b1e20232529384349494134251300000212202d373f454a4a453b3a41474a4943362715020001111f2d3b48566371808d7d6d5c616f7d8b806f5f4e3d2d1c0b00000313212b3233333333485e738989735e4833333333322b20120200091a29343e475059626c746e5c48341f0a0000000002121f2a31332f261a1d29313330281c0e0000000000000000000000000009151f272e3334342e252c32343431281b0c0000000410191e1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1e180f0200000000000000182c3f505b5e5d5c5b5b5b5c5d5f5f5f5f5f5c59544f483f362c2014070000000000000c1d2d393f41546a8095947d6853413f392d1d0c000000000000000000000000030e171c1d1c1b1b1a1a1b1d1f1f1f1f1e1c18130c050000000000000000192e43576b777777777777777777777777705e4a35200b00000000000000000000000000000000000000000000000000000000000000000000000000000d20334558697a8c8b7765534332251a120f0d0e1117202a3745546475889998877562503d2a170300000c1e304151616e7b888876675f5e6575899c8d7965503c27120000000000001f344a5f748b9c87705b46301b0600000000000000000f253a4f64798f97836c57422c1702000000000000000000000000000000000e1c283134342e2417080000000000000000000000000000000000000000000003080b0d101a263034342e24160700000002101a242b3134343129262d3234342f251809000000010f1d2a384553616f7c8b7a69595f6d7a897c6c5b4a3a2815020000030f181d1e1e1e33485e738989735e48331e1e1e1d170e020000000b17212b343d464f595f5c503f2d19050000000000020e171c1e1b14090c161c1e1b150b000000000000000000000000000000020c141a1e1f1f1a11181d1f1f1c150a00000000000000000000000000000000000000000000000000000000000000000000000f21323f4748484746464647484a4a4a4a4a4744403a342c23190e0300000000000000172a3b4a5456596c829795806b5856544a3b2a1703000000000000000000000000000000000000000000000000000000000000000000000000000000000014283b4d5c626262676c6f6f6c666262625f52412e1b0600000000000000000000000000000000000000000000000000000000000000000000000000000416283a4c5d6e7d8e8371615143372d27242223262b333d4855637283949b8b7a69574533200d0000000113233342505e6a7580867a74737783939282705d4a36220d0000000000001f344a5f748b9c87705b46301b0600000000000000000e23384e63788f98836e58432e190300000000000000000000000000000000000b151c1f1f1a12070000000000000000000000000000000000000000000000000000000009141b1f1f1a11060000000000000710171c1f1f1d1612191d1f1f1b13080000000000000c1a283543515e6c7a887666555c6a778679685845311d0800000000000000001e33485e738989735e48331e09000000000000000000050e17212a333c454a483f322210000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000008121a1c1b160d09131a1d1b150c00000000000000000414212c3233333231303032333434343434322f2b26201810070000000000000000001d324659686b6d75879a9a86746d6b685946321e09000000000000000000000000040c1112121212121212121212121212121212121212120e07000000000c1e2f3e495664717b828685827a7165584b42342412000000000000000000000000000000000000000000000000000000000000000000000000000000000b1d2e3f50606f7d8d806f615449413c3937383b40464f5a667382919a8c7c6d5c4b3a2816030000000006152432404c58636d767d85898c8d8a82736453412e1b070000000000001f344a5f748b9c87705b46301b0600000000000000000e23384e63788f99846e58432e19040000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000a172533404e5c697784715c4c5a67758375604b36200b00000000000000001e33485e738989735e48331e090000000000000000000000040d1720293134332d221404000000000000000000000000000000000000070d0f0e0800000000000001090e0f0d0600000000000000000000000000000001070a09050000000000000000000b1a252e32302a1f1a262e3230281e100100000000000000040f181d1e1e1d1c1b1b1c1e1f1f1f1f1f1d1a16110c0500000000000000000000001f344a5f748283888888888888838275604b36210b00000000000000000000000a172026272727272727272727272727272727272727272722190d000000091c2f42536474838f8378747680837667574634220f00000000000000000000000000000000000000000000000000000000000000000000000000000000001021324251606e7b898071665d55514e4c4e50545a626c778491978a7c6e5e4f3e2d1c0b0000000000000614222f3b46505a626a70757778756d635546362411000000000000001f344a5f748b9c87705b46301b0600000000000000000e23384e63788d9b866f5a442f1a050000000000000000000000000711181c1c181005000000000510181c1d1c1b1b1b1d1d1a130900000000000000000000000711181c1c1810050000030e161b1b1b1b1b1b1b1b1b1b19130900000000000000000000000000000000071522303e4c5967736a59454a5765726d5c48341f0a00000000000000001d32475b6d74746c5a46321d0800000000000000000000000000040d161c1f1e1910040000000000000000000000000000000000020f1a2225231c120500000007141d2324211a0f010000000000000000000000000a151c1f1e191105000000000000061829374247453c2f2a384247443b2e1f0f00000000000000000000000000000000000000000000000000000000000000000000000000000000001e33485d6f74737372727272737374705d4934200a00000000000000000000081928343b3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c362b1d0c00001125394c5f7183938372655f626e80867564513e2b1804000000000000000000000000000000000000000000000000000000000000000000000000000000000314233242505e6a76828479706a6663626365696e768089959085786c5e5040312010000000000000000004111d29333d464e555c606263605a514537281806000000000000001f344a5f748b9c87705b46301b0600000000000000000d22374c62778d9b866f5a442f1a0500000000000000000000000c19242c31312c22150600000615222c31323130303032322e261a0b0000000000000000000c19242c31312c2215060413212b303030303030303030302e261a0c000000000000000000000000000000000512202e3b49565e594c3c3947555d5b4f3f2d19050000000000000000182b3e4f5a5f5f5a4e3d2b170300000000000000000000000000000000000000000000000000000000000000000000000000000412202d363a372f2314040006162531383a362c1f1204000000000000000000000c1b283134332d23150600000000000f233547555c594d3e3748565c584c3d2d1d0c000000000000000812191b1a150c0913191b1a140b00000000000000000000000000000000000000192d40515d5f5f5e5c5c5c5c5e5e5f5d51412e1a060000000000000000000013253746505252525252525252525252525252525252525251493b2a170400182c4054687b8f8a7664544a5061758a826e5b47331f0b000000000000000000000000000000000000000000000000000000000000000000000000000000000005142332404d59646f788285807a787778797d838a928e867d72675b4e403222130200000000000000000000102232424f5a62676766625a50443528190a00000000000000001f344a5f748b9c87705b46301b0600000000000000000d22374c62778c9b86705b46301b06000000000000000000000a1b2a374046464033241300001224334046474646464647474238291806000000000000000a1b2a37404646403324131122313e4546464646464646464642382a1a080000000000000000000000000000000002101d2b394448453c2e29374348473e3121100000000000000000000f21313e464a4a463d30200e00000000000000000000000000000000010d15191a1710060000000000000000000000000000071422303e4a4f4b4132210f00112434434d4f493d30221406000000000000000006192a39444a4840332413000000000014293e5265716b5c4d405466716a5b4b3b2a190700000000000a19252d302f291e1a262e302f281d0f00000000000000000000000000000000000011223240484a4a484747474748494a494133231100000000000000000000001a2e42556367676767676767676767676767676767676767655947331f0a001c31465b6f8495826d5a4736465b6f858a76624e39240f0000000000000000000000000000000000000000000000000000000000000000000000000000000000000514222f3c47525c646d747a80848789898987848079726960554a3d3022130400000000000000000000081b2e4050606d767b7c7b766d61534433210e00000000000000001f344a5f748b9c87705b46301b110a000000000000000b20364b60758b9c87705b46301b0d0300000000000000000115283948535b5b5142301d09071b2f41515b5c5b5b5b5b5c5c554735220f0000000000000115283948535b5b5142301d1b2e404f5a5b5b5b5b5b5b5b5b5b56483724110000000000000000000000000000000000000d1b27303331291e19262f33322b2113030000000000000000000313202b323434312a1f120200000000000000000000000000000002121f292e2f2b23170900000000000000000000000009172532404e5c645e503e2b1700192d415260645b4e4032241709000000000000000e223648575f5d5142301c0800000000162b40566b807a6a5a49586d827969594836251200000000061828374146443c2f2a384246433a2d1e0f00000000000000000000000000000000000514222d3334343332323232333434342e23150500000000000000000000001e33485d727c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c76624d39240f001f34495e7389907a66523e2e43586d83917b67523c27120000000000000000000000000000000000000000000000000000000000000000000000000000000000000004111e2a353f49515960656b6f71737373726f6a655e564d43382c1f120400000000000000000000001024384b5d6e7d8a85797783807162513e2b1602000000000000001f344a5f748b9c87705b46302b261c0f000000000000091e33485e73889d88725d48332820150600000000000000071c31445766706f5f4c3925120c21364a5f6f7270707070727165523d2814000000000000071c31445766706f5f4c392520354a5d6d7070707070707070706654402b16000000000000000000000000000000000000000a141b1e1c160c08131b1e1d180f030000000000000000000000030e171d1f1f1d170e02000000000000000000000000000000000f20303c43443f35271705000000000000000000000c19273542505e6c796e5b46311c001e33485d70796c5e50423427190b00000000000013283d5165746f5f4b37220d0000000014283d5061718378675552637385766654422f1d090000000f233546545b584d3e3748565b574b3c2d1d0c00000000000000000000000000000000000511191e1f1f1e1d1d1d1d1e1f1f1f1a11050000000000000000000000001f344a5f748b93939393939393939393939393939393939079644f3a250f001f344a5f748b8d77624d382e43586e84947d68533e29130000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000c18222c353d454b51565a5c5e5e5e666e766a56433a30261a0e01000000000000000000000000162a3f53677a8d8a776665798f806d5a46311c08000000000000001f344a5f748b9c87705b464040392d1e0d0000000000051b30455a6f84998b76624e403c322415030000000000000a1f344a5f74837c6855412e1b1e25374c6277848687878786806a543f2a150000000000000a1f344a5f74837c6855412e22374c62778787878787878787836c57422c170000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000182b3e4e585a534534210e0000000000000000000e1c2a374552606e7c826f5b46311c001e33485d70827c6e60524537291c0e000000000014293e53687d7965503b2611000000000d2133445465778573604d55677983715f4c39251100000014293e5264706b5c4c40546670695a4b3b2a1907000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001f34495d727d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d76624e39240f001f344a5f748b8c76604b3633475c7086927c67523d28130000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005101d2b373d43484e555b636a727982806d58432e1e14090000000000000000000000000000192e43586d8397836e5b62778d89745f4a341f0a000000000000001f344a5f748b9d88725e5756544b3c2b18040000000000172c4055697d91917d6b5b56504232200d000000000000091e32475a6d8285715d4a372430393c495d6c6f7082937d6f6d62503c2813000000000000091e32475a6d8285715d4a372434485c70848b8b8b8b8c8e94836c57422c1700000000000000000001090e110f0b040000000000000000000000000000000000000a141b1e1d180f040000000000000000000000020b10121212121212121212110c040000001e33475b6b6f63513d29140000000000000003101e2c3a475563707d84736252402c1800192d41526373857d706355473a2c1e1003000000152a3f546a807d68543f2a150000000004152636485b6e837d6a564a5c70857b6854402c18030000162b40566b827a6a5a49586e8278695848362412000000000000060a0b080200000000000000000000000000000000000000040d141a1c1d1c19130b0200000000001b2f43556468686868686868686868686868686868686868665947331f0b001e33485d71868c76614c373d4f62768b8d78644f3a25100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000004172a3b4952575d636970777d8682776d62523f2b1601000000000000000000000000000000192e43586e84947d695465798f8b745f4a341f0a000000000000001f344a5f748ba08e7b706c6b695a47331f0a000000000012263a4e6173859289796e6b61503c281300000000000004182b3e5165788c7a66534032414d525253575a6b82937c6758534534210e00000000000004182b3e5165788c7a6653402c2d4154677982747474767882846e58432e19000000000000000007131d2326241f160a000000000000000000000000000000000f1c272f33322b21150600000000000000000008151f252727272727272727272620160a00001f344a5f74826b57422d190400000000000513212e3c4a586573828877665545342210001124354556667788827365584a3c2e2113050000162b40566b82826d58432e190400000011202e394053687c86715d48556a8084705b46321d08000014293d5162728378675553637385766553412f1c0900000004101a1f201d160d05000000000000000000000000000000000a1620292e3232312d271e14080000000013263847515353535353535353535353535353535353535352493b2a1704001a2e43576b7d8f7a6652464b5a6c7d9286725e4a36210c000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000a1f334759666c71777d848b857a6f655a504434220f00000000000000000000000000000000182d42576b80937d685c6d829586715d48331e09000000000000001f344a5f748b8b8b8b86838277624c37220d00000000000b1e31445666747d858883806b56402b16000000000000000f2235495c6f83836f5c493d4f5f67676868686b82937c6c6e63513d2914000000000000000f2235495c6f83836f5c493524374a5c6e807b6a5f606475846e58432e190000000000000006162530383b3933281a0a00000000000000000000000000000f1e2d394348473e3324150500000000000000061726323a3c3c3c3c3c3c3c3c3c3b33281908001f34495e7386705c47321e0900000000041423313f4c5a6875848c7a6a594838271605000617273849596a7a8c8475685a4c3f3123140400172c42576c8286705c47321d0800000c1e2f3e4b555864798c76615558677b89745f4a35200b00000e2134445466778572604d56677983715f4c38251100000414222d3436312921191109020000000000000000000000000c1b28333c43474747423b31261809000000162a3c4d585b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5a4f402e1b070014283b4f6173858270605b5e69788a8d7b6956432f1b07000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000d22374c617682868c92897d72685d52483d332617050000000000000000000000000000000014283c50637585826e6d7a8b8a7a6856422e1a05000000000000001e33485c6e74747474747474705f4a36210c0000000000021427384856626a7073747467543f2a150000000000000006192d4053667a8c78645143586c7c7c7d7d7d7d82938283826b56402b160000000000000006192d4053667a8c7864513e2b2d3f516374867867585a6e826e58432e1900000000000000112334434c504e46382816030000000000000000000000000a1c2d3c4b565d5b504233231200000000000000112335444e5252525252525252524f45372613001e33485e738975604c37220e00000000102232414f5d6a78868f7d6d5d4c3b2a1a090000000a1a2b3c4c5d6e7d8f86786a5d4f4132210f00182d42576c838a75604b36210c000015283b4d5c686e6d798f7863696e6d7b8c76614c37220d000005162636485b6e837d6a564a5d70857b6854402c1803000f213240494b453d352d251d160f090300000000000000000a1b2a394550575c5c5c564e433627180800001c3145596b707070707070707070707070707070707070706d5d4a36210d000c203244566675847d7470727a888c7d6e5d4c39261300000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000b20354a5d6e78828882766b60564b40352b21160800000000000000000000000000000000000d2134465766747d82828983796b5c4b3926130000000000000000192c3f505c5f5f5f5f5f5f5f5d52422f1b07000000000000091a2a38454f565b5e5f5f584a38251100000000000000001024374a5e7185826d5a4756697a8c7b7b7b7c82938082806b56402b1600000000000000001024374a5e7185826d5a473322334556687986756656636b63533f2b1600000000000000192d40526065635645321e0a0000000000000000000000001427394b5a68726e6151412f1d09000000000000182c4053616767676767676767676355432f1b001d32475c72887965513c271200000000182c3f505f6d7a89928270604f3f2e1d0d00000000000d1e2e3f5060718292897a6d5f503e2b1800192e43586e848e78644f3a251000001b3044586a7a84837d8e786c7c8482808c76604c37210c000011202e394053687c86715d48556a80846f5b46321d0800182c3f505d605950484039312a241e18120d0500000000051728394856636c7172706a61544536251401001f344a5f748787878787878787878787878787878787878779644f3a240f0003152738485766727c8386878883796e6050402e1c0a0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000071b2e40505c656d726f64594e43382e23180e04000000000000000000000000000000000000041728394856616b7174736f675b4d3e2e1c0900000000000000000f21323f484a4a4a4a4a4a4a494134241200000000000000000c1b28333b4146484a4a453b2c1b080000000000000000081b2e4255687c8a7663504b5c6e808673676b82937c6b6b61503d28140000000000000000081b2e4255687c8a7663503c2928394a5c6d8084736353565145352310000000000000001d32475c707a74624d38230e0000000000000000000000071b30445768788680705e4c39240f0200000000001b30465b707c7c7c7c7c7c7c7c7c725d48331e001d32475c7287806a55402c17020000001e33475b6e7d8b968574635342322110000000000000001021324253647486968b7d6e5b47321d001a2f445a6f86927c68533e291400001f34495e738898948d8b76758999928c89735f4a35200b000b1e2f3e4b545864798b76615558677b89745f4a35200b001d32475b6e756c645c544d453e38322c2721170b0000000e213446576674808788867d72635443311e0b001f344a5f748a8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b79644f3a250f0000091a2a3948545f686f7374736e665c5042322211000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001122323e4951585d5c52473c31261b11060000000000000000000000000000000000000000000b1b2a38444e575c5f5e5b544a3d2f20100000000000000000000414222d3334343434343434342e2416060000000000000000000a1620272d3133343431291d0e000000000000000000001226394c607387806c5845506173857d6c6b82937c6756504333210d0000000000000000001226394c607387806c584531202d3e4f6173858271604f3e35271706000000000000001e33485d728878634e38230e00000000000000000005111b2033485e7386978e7c67523c271e150a000000001b3045596d829393939393939389735e48331e001b30465b7087846f5a45311c070000001f344a5f748a988e7a6a5948382716050000000000000008192a3a4b5c6d7d909688735e48331e001b30465b708696826c57422d1804001f344a5f74899d9f94836f768b9e9f93826d5945311c070015283b4d5c686e6d798f7863696e6c7b8c76614c37220d001e33485e7383807770686059534c46413c34291a090000162a3e51637585929b9d9a908272604d3a2612001d32475b6e74747474747474747474747474747474747474705f4b37220d0000000c1b2a37424c545a5e5f5e5a534a3e32231404000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000413212c353d4448474035291f14090000000000000000000000000000000000000000000000000c1b27323b43474a494640372c1f1102000000000000000000000410191e1f1f1f1f1f1f1f1f1a12060000000000000000000000030c13181c1e1f1f1d160c00000000000000000000000a1d3043576a7d8874614e445567788a776b82937c67523d332515040000000000000000000a1d3043576a7d8874614e3a343a3b4455677a8d7d6d5b4937241000000000000000001d32475c728878634e38230e00000000000000000615232e353746596c80938874614e3a3732281b0c000000162a3e526578867d7d7d80828889745f4a341f001b30455a6f8689745f4a36210c0000001d32465a6c7a8896887766554534231302000000000004152637475869798b938677695845301c001c31475c70879a86705b46311c08001c31465a6e80898a8375656f82898a837464513e2a1602001b3044576a7a83827d8e786c7b8482808c76614c37220c001b30445666707a85847c756d67615b55504738261400001c3045596d8293a3afb3aea0907d6a55412d1800182b3e505c5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5d5242301c08000000000c192530394045484a48453f372d211405000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000030f1922292f33322c22170c0200000000000000000000000000000000000000000000000000000a151f282e323434312c241a0f01000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000060d10110f0f14273b4e6175897d6a5643495a6c7d837082937c67523c2715070000000000060d10110f0f14273b4e6175897d6a5643474f50494a5d70848b7966533f2b1703000000000000001d32475c728878634e38230e0000000000000002132433404a4c474f63778c826d58454b4c45392a1a0900000f2336495c6e807a69696a6c7588745f4a341f001a2f445a6f868e78644f3a2611000000172a3d4e5c6a778593847362524130200f00000000011122334454657687918375675a4b3b2815001d32475c72889d89745f4a35200c00172b3e51616d7374706657626e74746f64564634210e00001f34495e738898948c8b76758998928c89745f4a35200b0014273948535d67727d8889827b756f6a6456432f1b06001f34495e73889cb0c1c8bead9985705b46311c000f21323f484a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a494134251300000000000008131d252b31333433312b241a0f03000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000060e151b1e1d1910050000000000000000000000000000000000000000000000000000000000020c141a1d1f1f1c1811080000000000000000000000000000000000000000000000000000000000000000030d151a1d1d1b160e161b1d1d1a150d030000000000000e1a222626252523233245596c8086725f4c3d4e5f70837b82937c67523c271200000000000e1a222626252523233245596c8086725f4c5863655a4954687d92836f5b46311d08000000000000001d32475c728878634e38230e000000000000000d1f3142515d625a505e73887c68535660615748382614010006192c3e51627486766656586b80745f4a341f00192e43586e84927d68543f2a160100000e1f303e4c596775839082705f4e3e2d1c0c0000000e1f2f40516172838f80726557493c2d1d0c001e33485e73899f8d78634e392510000f213342505a5f5f5c5448515b5f5f5b53473828170500001f344a5f74899ea095836f768b9f9f93826d5a45311c07000a1b2a36404b55606a75808c908a8480725d48331e09001f344a5f748ba0b5cbdcc7b29d88725c47321d000313222d3334343434343434343434343434343434343434342e24160700000000000000000911171c1e1f1e1c17100700000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000081520292f32322f2a212a2f32322f29201406000000000e1e2c363b3b3a3a38383a3d5063768a7b685441425364768782937c67523c2712000000000e1e2c363b3b3a3a38383a3d5063768a7b685463767865514f64799089745f4a341f0a000000000000001d32475c728878634e38230e0000000000000016293c4e606f776c646070877a6563697274665544311e0a00000f213345566879857464546475705d49341f00192e43586e8497836d59442f1b0600000212202e3c49576472808e7d6c5c4b3a291908000a1b2c3c4d5e6f808c7d70625547392c1e0f00001f344a5f748a96917c67523d281400041524333e464a4a4740373e464a4a474036291a0a0000001d32465b6e80898b84766670828a8a837464513e2b160200000c19232e38434d58636e79858780766b5a46311c07001f344a5f73899db1c2c9bfae9a86705b46311c00000410191e1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1a1206000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001090e0f0d0700000000000000070d0f0e0901000000000000000000000006090b0b0b0906000000000000000000000000040d1315120c02000000060e1313100900000000000000000810171b1c1d1b17120a01000000000000071726323d444747443d333d444747443d322415040000061a2c3c4950504f4f4e4e4f4f505a6d8285705d4a3747586a7b85937c67523c2712000000061a2c3c4950504f4f4e4e4f4f505a6d8285705d6376806d5d56667b908b745f4a341f0a000000000000061e33485e738878634e39240f000000000000001c3145596b7d8980797573867974777d868573604d3925100000041627394a5b6d7d83726257605e51412e1a00172c42576c839887725d49341f0b00000002101e2b39475462707d8a7968584737251200142739495a6b7c897b6e60524437291b0e0000001e32475a6c798389806b56412c1700000615212b313434322d242b313434322c23180b00000000172b3e51616d7474706658626f74747065564635220f0000000007111b26303b46515c6772726b63594d3d2a1703001c31455a6d8294a4b0b4afa1907d6a56422d18000000000000000000000000000000000000000000000000000000000000000000000000000000000008121a1c1b160d01000000000000000000000000000000000000000000000000000000000000000000000000000000000000000007131d2325221b1003000000020f1a2225231d140700000000000000040d141b1f2121211e1a140d0400000000000000000a1721282a271f1405000c19222828251d120400000000020f1b242b303232302c261d130700000000021425354450585c5c59504550595c5c584f4233221000000d2236495a6566646463636464666465788c7966533f3b4c5d6f80927c67523c27120000000d2236495a6566646463636464666465788c79665a6d807a6f6b72839685715d48331e090000000000000a1f34495e738979644f3a2510000000000000001e33485e73889b938d8a898a88898c9097907c67523c27120000000b1b2c3e4f617385806f5f4e4a4133231100172c42576c82978c77624d39240f00000000000d1b293644515f6d7b87766554412e19001b304456677887786b5d50423426190b00000000182b3d4e5c666e73746855402b16000000040e161c1f1f1d1911171c1f1f1d18100600000000000f223343515a5f5f5c5448525b5f5f5b53473828170500000000000009131e28333f4a555d5d5750473c2f1f0d0000162b3e51647586939c9f9b918372614e3b2713000000000000000812191b1a150c01000000000000000000030d151a1d1d1b160e040000000000000b1a252e32302a1f110200000000000000000000000000000000000000000000000000000000000000000000000000000000000006162530383a362d211100000010202d363a383125160600000000000b1720292f34363636332f2820160b0000000000000b1a28343c3f3b3123140c1b2a363d3e392f22140400000011202d373f45474745403a302518090000000c1f314353616c72726d6154636d72726c61513f2c18040010263b5065787a7979787879797b75627083836f5c483540516374867c67523c271200000010263b5065787a7979787879797b75627083836f5c6373838380859089796855422e19050000000000000b20364b60748b7b66513c2712000000000000001c3045586b7d8980787473867873767b848573614d3925100000101d282e32445567798c7d6c5b493725150500162b40566b8297917c67523e29140000000000000b182634414f5d6a7883715c47321c001e33485e738476685b4d3f3224160900000000000e20303e4a535a5f5f584a38251100000000000000000000000000000000000000000000000000041525333e464a4a4841373f474a4a474036291a0b0000000000000000010b16212d37424848433c342a1e110100000f22354758677582888a878073645543311e0b0000000000000a19252d302f291e110200000000000000071520292f32322f2a21160800000000061829374247453c2f2011000000000000000000000000000000000000000000000000000000000000000000000000000000000000122434434c4f4a3f2f1e0d000c1d2e3e4a4f4d43342411000000000f1d29333d43494b4b4b48433c33281c0e00000000081929384650544e4232231b2a394851534c4032221200000c1e2f3e4a53595c5c5a554d4336271807000014283b4e607180878880706272808887806e5b47331e090010263b506577797b838f8f837b797462677a8b7764513e34455668797b67523c271200000010263b506577797b838f8f837b797462677a8b77645564717a7d807c766a5b4b392612000000000000060e23384d62778d7d69543f2a150801000000000015283b4e5f6f786c635f7187796461677275675644311e0a000d1e2e3b4346424a5c6f828a786754412e1a0600152b40546a809596826c57422e1904000000000000081623313f4d5a68746b5945301b001d32465a6c7266584a3d2f2114060000000000000212202d373f454a4a453b2c1b0900000000000000000000000000000000000000000000000000000715212b313434332d242c323434322c24190b000000000000000000000004101b252e33332f2821170d010000000517293a4957636d7274726c625546372614020000000000061828374146443c2f2010000000000000071625323d444747443d332617060000000f233547555c594d3e2f1e0e00000000000000000000000000000000000000000000000000000000000000000000000000000000001a2e415260645d4d3c2b1a09192a3b4c5c646052412d190000000f1e2d3a4650585d6060605d585045392c1d0e00000013253747566369605142322a39485765685e50402f1d0a0015283b4d5c676e71726f6960544536251301001a2e43576a7d909c9c8d776c80919c9c8b76604b36210b000d21354859646467788d8d78666463565e7185826d5a4633394a5b67685d4c38240f0000000d21354859646467788d8d78666463565e7185826d5a545f65696a6862594c3d2d1b090000000005111a1f2a3d51667a90836d584431201c1409000000000c1e3041515d635b5062768b7d6a5754616157493827150200162a3c4c575b55485265798e84715d4935210c00152a3f546a80929a86705c47321e09000000000000000613212f3c4a585f5a4d3c2a1600172b3d4e5a5d56483a2c1f1103000000000000000002101a242b31343431291d0e00000000000000000000000000000000000000000000000000000000040e171d1f1f1e1911181d1f1f1e181107000000000000000000000000000008131a1e1e1a140d040000000000000b1c2b394651595d5f5d584f44372819080000000000000f233546545b584d3e2e1e0d00000000021425344350585c5c59504435241100000014293e5265716b5c4d3c2c1a09000000000000000000000000000000000000000000000000000000000000000000000000000000001f34495d70796b5a48372615263748596a79705d48331e00000c1d2d3c4b58636c72767676726b63574a3b2c1b0a00001a2e425565747d6f60514239485766757c6e5e4c392511001c3045586a79838787847c71635343301e0b001d32475c718690939c8c7773888f949b8a76604b36210b0006192b3b484f4f60768c8c76604f4e4655697c8a76634f3c2c3d4b52534c3f2e1c0900000006192b3b484f4f60768c8c76604f4e4655697c8a76634f4b515454534e463c2e1f0f000000000514222d343645596d80958873604b36353026190a00000001132332404a4e49596d80928674614d4c4d45392b1b0900001c3146596a7066544b5f748a8d78644f3a25100013283d5164737d868a75614c37220c000000000000000003111e2c3a454a463d2f1f0d000e20303d464843382a1c0e0100000000000000000000000710171c1f1f1d160c000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000d1b28343d44484a48433c3227190a0000000000000014293e5264706b5c4c3c2b1a080000000b1e314352616c72726d6253412e1a060000162b40566b807a6a5a49382614010000000000000000000000000000000000000000000000000000000000000000000000000000001f34495d7084776655443322324354657684715d48331e000417293b4b5a6975808783808085807568594a39271502001e33485d72838e7d6f605148576675858d7c68543f2a14001f34495e7388978e7d767c8271604d3a2713001f344a5f7489838387806f768c8284877d6d5a47331e0900000d1d2b353a4b60768c8c76604b39394c607387806b5844312d383d3d382e211100000000000d1d2b353a4b60768c8c76604b39394c607387806b58443c3f3f3e3a332a1e10010000000214233240494b465a6d80938774604c4a4a433728190800000214243340494c475a6d80938875614d4b4b443829190800001e33485e73846f5c4b5e7389917b66503b2611000e21344655616a7174705f4a36210c000000000000000000000e1c283134322a1f11010002121f2a31332f261a0c000000000000000000000000000000000000000000000000000000000000000000000000000000000001090e0f0d09050100000000000000000000000000000000020b10111111111111111111111111100d05000000000000000000000000000000000b17212a303334332f292015090000000000000000162b40566b82796a5a4937261401000013273b4e607080878880705d4935200c000014283d5061718378675544311e0b0000000000000000000000000000000000000000000000000000000000000000000000000000001a2e4154677a84736251402f3f506172837a6754412e1a000d2134465869788788786d6a6b72828677685644311e0b001d32475b6d7c8c8e7d6f605766758594867666523e2914001f34495e72879183706172887d6a56422d19001f344a5f748b7d6f706c61768c7c6f706c60503e2b18040000000d1821364b60768c8c76604b363044576a7d8874604d3a27242828241c11030000000000000d1821364b60768c8c76604b363044576a7d8874604d3a2a2a29251f170c00000000000d203142515d60585063768b7d6a57545f5f554636251300000d203142515d61595063768b7d6a57546060564737251300001c3045586c8079695f65778c8f7965503b26110005172837454e575d5f5d51412f1b0700000000000000000000000b151c1f1d170d01000000020e171c1e1b140900000000000000000000000000000000000000000000000000000000000001070a090600000000000007141d2324221e1a16130f0b07030000000000000000000008151f252626262626262626262626262521180d00000000000000000000000000000000050e161b1e1f1e1a140d0300000000000000000014293d5162728377675543311e0b0000192e42566a7d8f9c9c8d78634e38230e00000d2133445465778573604d3a27130000000000000000000000000000000000000000000000000000000000000000000000000000001124374a5d7084806f5d4c3b4c5d6e8084705d4a3724120014293d50637688917d6a5a545665798e8674614e3a261200182b3e4f5e6d7c8c8e7d6f66758594867667584836230f001b2f435768767b74655f748986705c47311c001e33485e73887d685b585f748a7b665b584f4232210e00000000000b21364b60768c8c76604b36273b4e6175897d6956432f1c131310090000000000000000000b21364b60768c8c76604b36273b4e6175897d6956432f1c14110b04000000000000162a3d4f606f7569625e7288796460677273645442301d0900162a3d4f606f766a625e7288796460677273655442301d090015293d506375867a747784948673604b37230e00000a1927323b42484a49413324120000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000040c141c1f1f1a110500000006162531383a37332f2b2724201c1814110d09030000000007172632393b3b3b3b3b3b3b3b3b3b3b3b3b352b1d0d00000000000000000000000000000000000000000000000000000000000000000000000e2134445466778572604d3a271300001d32475c718690929c8d77634e38230e000004152636485b6e837d6a56422e1a050000000000000000000000000000000000000000000000000000000000000000000000000000081b2e415467798d7b6a594858697a8c7a6754412e1b08001a2f43586c80938b76624e3f4b60748a917d6a55412c18000f2131404f5e6d7c8c8e7d75859486766758493a2b19070014273a4a596366625e6c7c8f89735e48331e001b30455a6e83826b57475c70857d6955433c3123140300000000000b21364b60768c8c76604b36213246596c8086725f4c3825110000000000000000000000000b21364b60768c8c76604b36213246596c8086725f4c3825110000000000000000001d3145596c7d877c767370877772757a8483725f4c38240f001d3146596c7d887d777372877772757a8483725f4c38240f000d20334557677682888b898377675643301c0800000009151f272e3334342e23150600000000000b14191c1c19140b0912181b1c1a160e040000000000000b14191a1814110e0a070300000000000000000000000000000000000108101820283034342e2315060000112334434d4f4b4844403c3935312d2926221e170c000000122435444e50505050505050505050505050483b2b1805000000020e161c1f1f1d181005000000000000020d161b1f1f1c170f05000000000005162637485b6f837d6956422e1905001f344a5f7389838387806f5d4935200b000011202e394053687c86715d48341f0a0000000000000000000000000000000000000000000000000000000000000000000000000000001124374a5d70838877665565768884705d4a37241100001e33485d72879b88725d4833485d728899846f5a45301b0003132231404f5e6d7c8c8e859486766758493a2b1c0d00000a1c2c3b474f59636f7b8a9a87715c47321d00162b3f53677a86715d4a55697c846f5c49362616050000000005111b21364b60768c8c76604b3621293d5063778a7b6754412d1a0700000000000000000005111b21364b60768c8c76604b3621293d5063778a7b6754412d1a0700000000000000001f344a5f748999918b88878a87888a8f978f7b66503b2611001f344a5f748999918c89888a87888b8f978f7b66503b261100041628394958656e7374736f6659493927140100000000020c141a1e1f1f1a11050000000004121e272e31312e281e1b252d30322f2a211608000000000f1d272e2f2d2926231f1c1815110e0a0300000000000000000003090f151c242b333b444a49413323120000192d40526064605d5955514d4a46423e3a3732291d0e00001a2e41536166666666666666666666666664594835210d00000413202a313434322c2216080000000004131f29303434312b2216070000000011202e394054687d86715d48331e09001f344a5f748a7d6f706c6151402d1a06000c1e2f3e4b555864798c76614c37220d000000000000000000000000000000000000000000000000000000000000000000000000000000081a2d405366798d84726171838d796754412e1b0800001f344a5f748b9b86705b4632475c72889c88725c47321d000004132231404f5e6d7c8d9986766758493a2b1c0d0000000013273b4e5f6c76828d9a8f7d6b57432e1a001024384b5e70837a67564d6072857866544434220f0000000414232e36384b60768c8c76604b36212134475a6e8284705d4a36231000000000000000000414232e36384b60768c8c76604b36212134475a6e8284705d4a36231000000000000000001d32465a6d808a80797673877774777d868573604d39240f001d3246596c7d8a80797573877774777c868573604d38240f00000a1b2b3a47525a5e5f5f5b53483b2c1b090000000000000000000000000000000000000112222f3a424646433b302c38414647443d3326170600000c1d2d3a4244423e3b3834312d2a26231e160b0000000000030c12171d232931383f474f575f5d51412e1b07001d32475c707975716e6a66625f5b57534f4c463b2c1b08001f34495d717b7b7b7b7b7b7b7b7b7b7b7b7764503b261100021323313d464a4a473f342617060000021323313c45494a463e3425160600000c1e2f3e4b545865798b76614c37220c001e33485d72887d685b585043342311000015283b4d5c686e6d798f78634e38230e000000000000000000000000000000000000000000000000000000000000000000000000000000001124374a5d708391806e7d9083705d4a3724110000001f344a5f748b9b866f5a4533485d72889c87725c47321d00000b1a29384756657484938d8e7d6f61514233241506000000162b40556a7d8993978c8070604e3b281400081b2e4153657685736352556778837261513e2a16010000102232414a4e4b60768c8c76604b3621182b3e5265788c7966523f2c180500000000000000102232414a4e4b60768c8c76604b3621182b3e5265788c7966523f2c180500000000000000172a3d4f6170776d65607288786363697375665644311e0a00172a3d4f6070776c65607288786362697375665543301d090000000d1c2a353e45494a4a463f362a1d0e000000000000000000000000000000000000000d1f30404d575b5b574e403c4a555b5c595044352412000015283b4b575a5753504c4945423f3b3832281b0b000000081520262c31383e454c535b636a73705e4a35200b001f344a5f74898b8783807b7773706c686460594a382511001f344a5f748b8b8b8b8b8b8b8b8b8b8b8b7c67523c2712000d2031414f595f5f5b524435231100000d1f31414e595e5f5a5143342311000015283b4d5c686e6d798e78634e38230e001b3045596e83826c57443d3225160500001b3044586a7a84837d8e78634e38230e00000000000000000000000000000000000000000000000000000000000000000000000000000000071a2d405366798c8c7b8c8d796653402d1b080000001e33485d72879b87705c47364b5f748a98846e5945301b00091a2938475665748493857c8c8e8070615142332414030000152b4054697d9291857a6e615243311f0c000012243648596979826f5a495a6a7a806d58432e19030000182c3f505e635c60768c8c76604b36210f2236495c7083826f5b4834210e00000000000000182c3f505e635c60768c8c76604b36210f2236495c7083826f5b4834210e000000000000000e203243525f635a5160758b7b6651566162574838271401000d203243525f635a5060758b7b6651566162574838261401000000000c18232b31343434312b23190d000000000000000000000000000000000000000016293c4e5e6a70706a5e4e4a5a6870716d6253412e1b07001b304458696f6c6865615e5a5753504d463929180500061726323b40464c525860676e767d8476614c37220d001f344a5f7386898d9194908d8986827c79756754402b16001e33475b6e74747474747474747474747472624e3a251000162a3d4f5f6d74746f6253402d1a060016293c4e5f6c73736e6152402d1905001b3044586a7a83827d8d78634e38230e00162b3f53677a86715d4a382718070000001f34495e738898948d8b76604c37210c0000000000000000000000000000000000000000000000000000000000000000000000000000000000112336495c6f83968d9683705d4a372411000000001a2f43576b809289745f4b415165798e907c6854402c170013263847566574849385756d7c8c8f807061514232200c000011263a4e62758a8273675d514334251402000007192a3b4b5b6a746957424d5c6b746855412c170200001d32475b6e787068768c8c76604b36210b1a2d4053677a8b7764503d2a17030000000000001d32475b6e787068768c8c76604b36210b1a2d4053677a8b7764503d2a170300000000000003142534424b4e485065798e806a56454d4d46392a1a09000002142534414b4e485165798e806a57454d4d46392a1a09000000000000060f161c1f1f1f1c1710070000000000000000000000000000000000000000001c3045596b7c86867c6c59546778858780705e4a36210c001f34495e7385827d7976736f6c686561574734210c00102335444f555a60666d747b83867c71675946331e0a001c3146596a7074787c8084888b8f93928f836d58432e1800182c3f505c5f5f5f5f5f5f5f5f5f5f5f5f5e5445331f0b001c3145596c7d898a82705d4935200b001c3045596c7d888980705d4834200b001f34495e738898948c8a75604c37210c001024374b5e70837a6756453624110000001f344a5f74899d9f94836f5b47331e090000000000000000000000000000000000000000000000000000000000000000000000000000000000071a2d405366788c9f8d796653402d1a070000000014283c4f6274868e796657565d6d80948472604d392511001a2e4255657484938575665e6d7c8c8f8070614f3b271200000b1f32465a6e827b66564a3f33251607000000000c1d2d3d4c595f594b3a3e4d5a5f584a3825120000001e33485d7280847b7b8e8c76604b36210b1124374b5e7285806d5946331f0b0000000000001e33485d7280847b7b8e8c76604b36210b1124374b5e7285806d5946331f0b00000000000000071624303738465a6c80948672604d383832281b0c000000000716242f3738465a6d80948673604d393832281b0c0000000000000000000000000000000000000000000000000000000000000000000000000000001f34495e73889a9b88735e5a6f84979c8e78644f3a240f001f344a5f748b95938f8c8885827d797564503b261200172b3f5262696f757a82888a7d73695f54493b29170300162a3c4c575c5f63676b6f7276797d8286836c58432d18000f21323f484a4a4a4a4a4a4a4a4a4a4a4a494336271603001f34495e73899c9f8d77624d38230e001f34495e73889b9e8c77624d38230e001f344a5f748a9e9f94836f5b47321e0900081b2e4153657685736353402c170200001c31465a6e80898a83756553402c1804000000000000000000000000000000000000000000000000000000000000000000000000000000000000102336495c6f829583705d4a37241100000000000d2033455767778583746c6b707b8c8475665543301d0a001d32475c718493857566574f5e6d7c8c8f806a543f2a15000003172b3e52667a806b56422e2215070000000000000f1f2e3c464a453b2d2f3d464a453a2c1b090000001b2f4355636d768089928c76604b36210b081b2e4255697c8975624e3a25100000000000001b2f4355636d768089928c76604b36210b081b2e4255697c8975624e3a2510000000000000000006131c22344a5f7488998e7b66503b261e160b00000000000006121c22344a5f7488998e7b66503b261e160b000000000000000000000000000000000000000000000000000000000000000000000000000000001f344a5f74899d9e89735e5a6f85999f8f79644f3a250f001e33485d717c8084878b8e9195938f7d68533e2913001a2f445a6f7d84898f8d82776c61574c41372c1d0c00000d1e2e3b43474b4e52565a5d6165686c707367533f2b16000414222d33343434343434343434343434342f25180900001f34495e73899c9e8d77624d38230e001f34495e73899c9f8d77624d38230e001d32465b6e80898b84766553402c1804000011243647586978826f5a442f1a050000172b3e51616d73747066574836231000000000000000000000000000000000000000000000000000000000000000000000000000000000000000071a2c3f5265788a796653402d1a070000000000031628394a5967737d85828284857d7266574837251301001b3045596b7a8575665748404f5e6d7c837363503c27130000000f23374b5f7386715c47321d080000000000000001101e2a323431291d1f2a323431281c0e00000000132637465059636c75808976604b36210b001326394d6073837965503b2611000000000000132637465059636c75808976604b36210b001326394d6073837965503b261100000000000000000000081d3145596a7b89806f5e4c38230e03000000000000000000081d3145586a7a8980705e4c38230e0300000000000000000000000000000000000000000000000000000000000000000000000000000000001c31465a6d7d8989806d5a55697b888b83725f4b37220d001a2e415462676b6e7275787c8083877d68533e291300192d425668757d86867a6f645a4f443a2f251a0e00000000101d282e3236393d4145484c5054575b5e574937241000000410191e1f1f1f1f1f1f1f1f1f1f1f1f1f1b13080000001c3145596c7d888982705d4935200b001c3145596d7d898a82705d4935200b00172b3e51616e74747066584836231000000006182a3b4b5a6a746a57432e190400000f213342505a5f5f5c5448392a19060000000000000000000000000000000000000000000000000000000000000000000000000000000000000000102336495c6d746e5c49362411000000000000000a1b2c3b4956616a707374737069605548392a1908000016293c4d5c6b736657483931404f5e6d7064564634210d000000081c3044586b746f5c47321d080000000000000000000d171d1f1d160c0d171d1f1c150b0000000000081928343d465059626c746d5c48341f0a000a1d304457686e675b4a36220e000000000000081928343d465059626c746d5c48341f0a000a1d304457686e675b4a36220e000000000000000000000216293b4d5d6b746e6151412f1c08000000000000000000000216293b4c5c6b746e6151412f1c08000000000000000000000000000000000000000000000000000000000000000000000000000000000000162a3d50606d74746e61514c5d6b737470645543301c0800122536454e5256595d6063676a6e7172634f3b2611001327394a58616a7173685d52473d32271d12080000000000000b14191d2124282c3033373b3f42464844392b1a0800000000000000000000000000000000000000000000000000162a3d4f5f6c73736e6252402d1a0600162a3d4f606d74746f6253412e1a06000f223343515a5f5f5c54483a2a1906000000000c1d2d3d4c595f594c3b2814000000041524333e464a4a4740372a1b0c00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000006192c3e4f5b5f5b503f2d1a0700000000000000000e1d2b38444e555b5e5f5e5b554d43372a1b0c0000000c1e2f3e4d595e5648392a2231404f5a5c5447382817040000000014283b4d5a5f5d513f2c190400000000000000000000000000000000000000000000000000000000000a17212a333d464f595f5b4f3e2c1905000114273a4a5558544b3d2c1a07000000000000000a17212a333d464f595f5b4f3e2c1905000114273a4a5558544b3d2c1a0700000000000000000000000c1e2f3f4d595f5b51423323120000000000000000000000000c1d2e3e4d595f5b5142332312000000000000000000000000000000000000000000000000000000000000000000000000000000000000000e213242505a5f5f5b51423f4d585e5f5c53463726130000071827333a3d4144484b4e5255595c5d554533200c000a1c2c3a454e565c5e564b40352b20150a0000000000000000000002080c0f13171b1f22262a2e313330281c0d00000000000000000000000000000000000000000000000000000d2031414f595e5f5b514435231100000e2032424f5a5f5f5b52443524110000041625333e464a4a4741372a1c0c0000000000000f1f2e3c464a463c2e1d0b000000000615212b313434322d24190c00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000f21313e474a473f322210000000000000000000000d1b27313a4146484a4846413a31261a0c000000000011202f3c454844392a1b1322313e46474136291a0a00000000000c1e2f3d474a484032221000000000000000000000000000000000000000000000000000000000000000040e17202a333c454a473e31210f0000000a1c2c39414340382d1f0f000000000000000000040e17202a333c454a473e31210f0000000a1c2c39414340382d1f0f0000000000000000000000000011212f3c464a473f332415050000000000000000000000000010202f3c454a473e3324150500000000000000000000000000000000000000000000000000000000000000000000000000000000000000031423323d464a4a463e332f3b44494a47403628190800000009161f25282c2f3336393d40444748433728160400000e1c28323b42474844392e23180d020000000000000000000000000000000000050a0d1115191c1e1b150b000000000000000000000000000000000000000000000000000000021323313c45494a463e342617060000031423323d464a4a473f342617060000000716222b313434332d24190c0000000000000001101e2a3234312a1e10000000000000040e161c1f1f1d1911070000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000313212b3234322c211404000000000000000000000009151e262d31333433312d261e140800000000000002111e29313330271b0c0413202b31322d24190b00000000000000111f2b3234332d221404000000000000000000000000000000000000000000000000000000000000000000040d1620293134332b211303000000000e1b262c2e2b251b0f010000000000000000000000040d1620293134332b211303000000000e1b262c2e2b251b0f010000000000000000000000000003111e2a3234332c221506000000000000000000000000000002111e293134332b2115060000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000514212a313434322b211e28303434332d24180a0000000000030b1014171a1e2125282c2f32332f26190a000000000b151f272e323330271c11060000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000004131f29303434312b221608000000000514202a313434322c2217080000000000040f171d1f1f1e191107000000000000000000000d171d1f1d160d000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000030f181d1f1e180f0400000000000000000000000000020b12181c1e1f1e1c18120a010000000000000000010c161c1e1b140a0000030e171c1c1911070000000000000000010e181e1f1e191105000000000000000000000000000000000000000000000000000000000000000000000000030d161d1f1e180f0300000000000009121719171108000000000000000000000000000000030d161d1f1e180f030000000000000912171917110800000000000000000000000000000000010d171d1f1e180f0400000000000000000000000000000000000c161d1f1e180f040000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000030e161c1f1f1d170f0c151b1f1f1e191107000000000000000000000004090c1013161a1d1e1b1308000000000000020b13191d1e1b140a00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000020d161c1f1f1c170f05000000000000030e161c1f1f1d181005000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 + m_StreamData: + offset: 0 + size: 0 + path: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/ModResources/Fonts/CormorantUnicase-Regular SDF.asset.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/ModResources/Fonts/CormorantUnicase-Regular SDF.asset.meta" new file mode 100644 index 00000000..bd834147 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/ModResources/Fonts/CormorantUnicase-Regular SDF.asset.meta" @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: ba62bccd3bc0142bc9a0bc1addeaadce +NativeFormatImporter: + externalObjects: {} + mainObjectFileID: 11400000 + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/ModResources/Fonts/DancingScript-Regular SDF.asset" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/ModResources/Fonts/DancingScript-Regular SDF.asset" new file mode 100644 index 00000000..51bec95d --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/ModResources/Fonts/DancingScript-Regular SDF.asset" @@ -0,0 +1,5931 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!114 &11400000 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 71c1514a6bd24e1e882cebbe1904ce04, type: 3} + m_Name: DancingScript-Regular SDF + m_EditorClassIdentifier: + hashCode: -529117759 + material: {fileID: 21439481095386310} + materialHashCode: -1336671830 + m_Version: 1.1.0 + m_SourceFontFileGUID: a4c26c44047144974822de1e62b55815 + m_SourceFontFile_EditorRef: {fileID: 0} + m_SourceFontFile: {fileID: 0} + m_AtlasPopulationMode: 0 + m_FaceInfo: + m_FamilyName: Dancing Script + m_StyleName: + m_PointSize: 42 + m_Scale: 1 + m_LineHeight: 50.375 + m_AscentLine: 38.6875 + m_CapLine: 30.249998 + m_MeanLine: 0 + m_Baseline: 0 + m_DescentLine: -11.8125 + m_SuperscriptOffset: 38.6875 + m_SuperscriptSize: 0.5 + m_SubscriptOffset: -4.2000003 + m_SubscriptSize: 0.5 + m_UnderlineOffset: -4.2000003 + m_UnderlineThickness: 2.1000001 + m_StrikethroughOffset: 9.772727 + m_StrikethroughThickness: 2.1000001 + m_TabWidth: 109.375 + m_GlyphTable: + - m_Index: 1 + m_Metrics: + m_Width: 10.9375 + m_Height: 50.5 + m_HorizontalBearingX: 0 + m_HorizontalBearingY: 38.6875 + m_HorizontalAdvance: 10.9375 + m_GlyphRect: + m_X: 6 + m_Y: -56 + m_Width: 11 + m_Height: 51 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 2 + m_Metrics: + m_Width: 14.874999 + m_Height: 30.687498 + m_HorizontalBearingX: -0.93749994 + m_HorizontalBearingY: 30.249998 + m_HorizontalAdvance: 10.9375 + m_GlyphRect: + m_X: 252 + m_Y: 236 + m_Width: 15 + m_Height: 31 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 3 + m_Metrics: + m_Width: 8.624999 + m_Height: 6.0624995 + m_HorizontalBearingX: 5.4999995 + m_HorizontalBearingY: 30.249998 + m_HorizontalAdvance: 10.3125 + m_GlyphRect: + m_X: 497 + m_Y: 233 + m_Width: 9 + m_Height: 6 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 4 + m_Metrics: + m_Width: 27.437498 + m_Height: 37.062496 + m_HorizontalBearingX: 0.37499997 + m_HorizontalBearingY: 30.249998 + m_HorizontalAdvance: 28.0625 + m_GlyphRect: + m_X: 272 + m_Y: 7 + m_Width: 27 + m_Height: 37 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 5 + m_Metrics: + m_Width: 20.812498 + m_Height: 37.062496 + m_HorizontalBearingX: 0 + m_HorizontalBearingY: 30.249998 + m_HorizontalAdvance: 22.3125 + m_GlyphRect: + m_X: 75 + m_Y: 274 + m_Width: 21 + m_Height: 37 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 6 + m_Metrics: + m_Width: 24.062498 + m_Height: 33.874996 + m_HorizontalBearingX: 3.2499998 + m_HorizontalBearingY: 30.249998 + m_HorizontalAdvance: 29.3125 + m_GlyphRect: + m_X: 77 + m_Y: 418 + m_Width: 24 + m_Height: 34 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 7 + m_Metrics: + m_Width: 26.812498 + m_Height: 33.812496 + m_HorizontalBearingX: -0.18749999 + m_HorizontalBearingY: 30.249998 + m_HorizontalAdvance: 25.875 + m_GlyphRect: + m_X: 271 + m_Y: 55 + m_Width: 27 + m_Height: 34 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 8 + m_Metrics: + m_Width: 3.6249998 + m_Height: 6.0624995 + m_HorizontalBearingX: 5.4999995 + m_HorizontalBearingY: 30.249998 + m_HorizontalAdvance: 5.25 + m_GlyphRect: + m_X: 400 + m_Y: 236 + m_Width: 4 + m_Height: 6 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 9 + m_Metrics: + m_Width: 12.937499 + m_Height: 33.874996 + m_HorizontalBearingX: 2.3749998 + m_HorizontalBearingY: 30.249998 + m_HorizontalAdvance: 10.8125 + m_GlyphRect: + m_X: 174 + m_Y: 264 + m_Width: 13 + m_Height: 34 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 10 + m_Metrics: + m_Width: 12.937499 + m_Height: 33.874996 + m_HorizontalBearingX: -2.5624998 + m_HorizontalBearingY: 30.249998 + m_HorizontalAdvance: 11.25 + m_GlyphRect: + m_X: 175 + m_Y: 309 + m_Width: 13 + m_Height: 34 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 11 + m_Metrics: + m_Width: 13.312499 + m_Height: 13.249999 + m_HorizontalBearingX: 4.8124995 + m_HorizontalBearingY: 30.187498 + m_HorizontalAdvance: 16.4375 + m_GlyphRect: + m_X: 441 + m_Y: 359 + m_Width: 13 + m_Height: 13 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 12 + m_Metrics: + m_Width: 14.999999 + m_Height: 14.999999 + m_HorizontalBearingX: 0.12499999 + m_HorizontalBearingY: 14.562499 + m_HorizontalAdvance: 17.125 + m_GlyphRect: + m_X: 436 + m_Y: 383 + m_Width: 15 + m_Height: 15 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 13 + m_Metrics: + m_Width: 3.6249998 + m_Height: 6.0624995 + m_HorizontalBearingX: -0.43749997 + m_HorizontalBearingY: 2.3749998 + m_HorizontalAdvance: 8.25 + m_GlyphRect: + m_X: 467 + m_Y: 322 + m_Width: 4 + m_Height: 6 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 14 + m_Metrics: + m_Width: 14.999999 + m_Height: 2.0624998 + m_HorizontalBearingX: 1.4999999 + m_HorizontalBearingY: 8.124999 + m_HorizontalAdvance: 20.3125 + m_GlyphRect: + m_X: 108 + m_Y: 156 + m_Width: 15 + m_Height: 2 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 15 + m_Metrics: + m_Width: 3.5624998 + m_Height: 2.8749998 + m_HorizontalBearingX: 0.31249997 + m_HorizontalBearingY: 2.4374998 + m_HorizontalAdvance: 9 + m_GlyphRect: + m_X: 337 + m_Y: 503 + m_Width: 4 + m_Height: 3 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 16 + m_Metrics: + m_Width: 19.499998 + m_Height: 37.062496 + m_HorizontalBearingX: -2.8749998 + m_HorizontalBearingY: 30.249998 + m_HorizontalAdvance: 13.875 + m_GlyphRect: + m_X: 76 + m_Y: 323 + m_Width: 19 + m_Height: 37 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 17 + m_Metrics: + m_Width: 23.499998 + m_Height: 33.874996 + m_HorizontalBearingX: 2.1874998 + m_HorizontalBearingY: 30.249998 + m_HorizontalAdvance: 26.4375 + m_GlyphRect: + m_X: 107 + m_Y: 219 + m_Width: 23 + m_Height: 34 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 18 + m_Metrics: + m_Width: 15.249999 + m_Height: 33.874996 + m_HorizontalBearingX: -1.9374999 + m_HorizontalBearingY: 30.249998 + m_HorizontalAdvance: 15.3125 + m_GlyphRect: + m_X: 142 + m_Y: 219 + m_Width: 15 + m_Height: 34 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 19 + m_Metrics: + m_Width: 21.812498 + m_Height: 33.874996 + m_HorizontalBearingX: -0.81249994 + m_HorizontalBearingY: 30.249998 + m_HorizontalAdvance: 23.5 + m_GlyphRect: + m_X: 111 + m_Y: 354 + m_Width: 22 + m_Height: 34 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 20 + m_Metrics: + m_Width: 19.437498 + m_Height: 33.874996 + m_HorizontalBearingX: 0.24999999 + m_HorizontalBearingY: 30.249998 + m_HorizontalAdvance: 21.4375 + m_GlyphRect: + m_X: 113 + m_Y: 399 + m_Width: 19 + m_Height: 34 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 21 + m_Metrics: + m_Width: 19.374998 + m_Height: 33.874996 + m_HorizontalBearingX: -0.37499997 + m_HorizontalBearingY: 30.249998 + m_HorizontalAdvance: 20.0625 + m_GlyphRect: + m_X: 143 + m_Y: 264 + m_Width: 19 + m_Height: 34 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 22 + m_Metrics: + m_Width: 20.187498 + m_Height: 33.874996 + m_HorizontalBearingX: -0.18749999 + m_HorizontalBearingY: 30.249998 + m_HorizontalAdvance: 20.3125 + m_GlyphRect: + m_X: 134 + m_Y: 152 + m_Width: 20 + m_Height: 34 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 23 + m_Metrics: + m_Width: 20.124998 + m_Height: 33.874996 + m_HorizontalBearingX: 1.9999999 + m_HorizontalBearingY: 30.249998 + m_HorizontalAdvance: 23.5625 + m_GlyphRect: + m_X: 143 + m_Y: 309 + m_Width: 20 + m_Height: 34 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 24 + m_Metrics: + m_Width: 18.062498 + m_Height: 33.812496 + m_HorizontalBearingX: 2.4374998 + m_HorizontalBearingY: 30.187498 + m_HorizontalAdvance: 16.9375 + m_GlyphRect: + m_X: 175 + m_Y: 354 + m_Width: 18 + m_Height: 34 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 25 + m_Metrics: + m_Width: 18.499998 + m_Height: 33.812496 + m_HorizontalBearingX: 1.1874999 + m_HorizontalBearingY: 30.249998 + m_HorizontalAdvance: 22.125 + m_GlyphRect: + m_X: 178 + m_Y: 399 + m_Width: 18 + m_Height: 34 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 26 + m_Metrics: + m_Width: 19.437498 + m_Height: 33.874996 + m_HorizontalBearingX: 3.5624998 + m_HorizontalBearingY: 30.249998 + m_HorizontalAdvance: 23.75 + m_GlyphRect: + m_X: 144 + m_Y: 354 + m_Width: 19 + m_Height: 34 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 27 + m_Metrics: + m_Width: 5.9999995 + m_Height: 13.374999 + m_HorizontalBearingX: 0.37499997 + m_HorizontalBearingY: 12.937499 + m_HorizontalAdvance: 9.0625 + m_GlyphRect: + m_X: 480 + m_Y: 257 + m_Width: 6 + m_Height: 13 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 28 + m_Metrics: + m_Width: 6.3749995 + m_Height: 16.624998 + m_HorizontalBearingX: 0 + m_HorizontalBearingY: 12.937499 + m_HorizontalAdvance: 8.9375 + m_GlyphRect: + m_X: 336 + m_Y: 371 + m_Width: 6 + m_Height: 17 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 29 + m_Metrics: + m_Width: 8.187499 + m_Height: 11.374999 + m_HorizontalBearingX: 0.87499994 + m_HorizontalBearingY: 13.312499 + m_HorizontalAdvance: 13 + m_GlyphRect: + m_X: 497 + m_Y: 7 + m_Width: 8 + m_Height: 11 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 30 + m_Metrics: + m_Width: 14.999999 + m_Height: 6.2499995 + m_HorizontalBearingX: 2.1249998 + m_HorizontalBearingY: 10.749999 + m_HorizontalAdvance: 21.125 + m_GlyphRect: + m_X: 272 + m_Y: 359 + m_Width: 15 + m_Height: 6 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 31 + m_Metrics: + m_Width: 8.187499 + m_Height: 11.374999 + m_HorizontalBearingX: 2.4999998 + m_HorizontalBearingY: 13.312499 + m_HorizontalAdvance: 13.625 + m_GlyphRect: + m_X: 497 + m_Y: 30 + m_Width: 8 + m_Height: 11 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 32 + m_Metrics: + m_Width: 14.437499 + m_Height: 30.687498 + m_HorizontalBearingX: 4.4999995 + m_HorizontalBearingY: 30.249998 + m_HorizontalAdvance: 18.375 + m_GlyphRect: + m_X: 278 + m_Y: 236 + m_Width: 14 + m_Height: 31 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 33 + m_Metrics: + m_Width: 22.249998 + m_Height: 21.624998 + m_HorizontalBearingX: 0.12499999 + m_HorizontalBearingY: 16.624998 + m_HorizontalAdvance: 24.5 + m_GlyphRect: + m_X: 65 + m_Y: 484 + m_Width: 22 + m_Height: 22 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 34 + m_Metrics: + m_Width: 24.749998 + m_Height: 33.874996 + m_HorizontalBearingX: -0.74999994 + m_HorizontalBearingY: 30.249998 + m_HorizontalAdvance: 24.875 + m_GlyphRect: + m_X: 107 + m_Y: 264 + m_Width: 25 + m_Height: 34 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 35 + m_Metrics: + m_Width: 22.874998 + m_Height: 33.874996 + m_HorizontalBearingX: 0.74999994 + m_HorizontalBearingY: 30.249998 + m_HorizontalAdvance: 25.5625 + m_GlyphRect: + m_X: 144 + m_Y: 399 + m_Width: 23 + m_Height: 34 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 36 + m_Metrics: + m_Width: 21.249998 + m_Height: 33.812496 + m_HorizontalBearingX: 0.87499994 + m_HorizontalBearingY: 30.249998 + m_HorizontalAdvance: 22.4375 + m_GlyphRect: + m_X: 176 + m_Y: 444 + m_Width: 21 + m_Height: 34 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 37 + m_Metrics: + m_Width: 24.624998 + m_Height: 33.874996 + m_HorizontalBearingX: 2.3124998 + m_HorizontalBearingY: 30.249998 + m_HorizontalAdvance: 27.4375 + m_GlyphRect: + m_X: 107 + m_Y: 309 + m_Width: 25 + m_Height: 34 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 38 + m_Metrics: + m_Width: 21.312498 + m_Height: 33.812496 + m_HorizontalBearingX: -0.68749994 + m_HorizontalBearingY: 30.249998 + m_HorizontalAdvance: 20.9375 + m_GlyphRect: + m_X: 204 + m_Y: 197 + m_Width: 21 + m_Height: 34 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 39 + m_Metrics: + m_Width: 23.062498 + m_Height: 33.624996 + m_HorizontalBearingX: 2.7499998 + m_HorizontalBearingY: 30.062498 + m_HorizontalAdvance: 20.25 + m_GlyphRect: + m_X: 169 + m_Y: 196 + m_Width: 23 + m_Height: 34 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 40 + m_Metrics: + m_Width: 21.624998 + m_Height: 33.812496 + m_HorizontalBearingX: 0.87499994 + m_HorizontalBearingY: 30.249998 + m_HorizontalAdvance: 23.25 + m_GlyphRect: + m_X: 205 + m_Y: 332 + m_Width: 22 + m_Height: 34 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 41 + m_Metrics: + m_Width: 24.249998 + m_Height: 33.874996 + m_HorizontalBearingX: 2.2499998 + m_HorizontalBearingY: 30.249998 + m_HorizontalAdvance: 25.9375 + m_GlyphRect: + m_X: 199 + m_Y: 287 + m_Width: 24 + m_Height: 34 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 42 + m_Metrics: + m_Width: 24.624998 + m_Height: 33.874996 + m_HorizontalBearingX: -1.6249999 + m_HorizontalBearingY: 30.187498 + m_HorizontalAdvance: 19.25 + m_GlyphRect: + m_X: 208 + m_Y: 377 + m_Width: 25 + m_Height: 34 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 43 + m_Metrics: + m_Width: 22.749998 + m_Height: 33.812496 + m_HorizontalBearingX: -1.3124999 + m_HorizontalBearingY: 30.187498 + m_HorizontalAdvance: 17.25 + m_GlyphRect: + m_X: 238 + m_Y: 332 + m_Width: 23 + m_Height: 34 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 44 + m_Metrics: + m_Width: 24.187498 + m_Height: 33.874996 + m_HorizontalBearingX: 1.2499999 + m_HorizontalBearingY: 30.249998 + m_HorizontalAdvance: 24.75 + m_GlyphRect: + m_X: 209 + m_Y: 422 + m_Width: 24 + m_Height: 34 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 45 + m_Metrics: + m_Width: 26.874998 + m_Height: 33.874996 + m_HorizontalBearingX: -3.1249998 + m_HorizontalBearingY: 30.249998 + m_HorizontalAdvance: 23.9375 + m_GlyphRect: + m_X: 309 + m_Y: 56 + m_Width: 27 + m_Height: 34 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 46 + m_Metrics: + m_Width: 31.874998 + m_Height: 33.874996 + m_HorizontalBearingX: -0.74999994 + m_HorizontalBearingY: 30.249998 + m_HorizontalAdvance: 32.0625 + m_GlyphRect: + m_X: 189 + m_Y: 6 + m_Width: 32 + m_Height: 34 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 47 + m_Metrics: + m_Width: 25.937498 + m_Height: 33.874996 + m_HorizontalBearingX: 1.8749999 + m_HorizontalBearingY: 30.249998 + m_HorizontalAdvance: 26.875 + m_GlyphRect: + m_X: 198 + m_Y: 242 + m_Width: 26 + m_Height: 34 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 48 + m_Metrics: + m_Width: 24.437498 + m_Height: 33.812496 + m_HorizontalBearingX: 0.87499994 + m_HorizontalBearingY: 30.249998 + m_HorizontalAdvance: 26.1875 + m_GlyphRect: + m_X: 244 + m_Y: 377 + m_Width: 24 + m_Height: 34 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 49 + m_Metrics: + m_Width: 23.874998 + m_Height: 33.874996 + m_HorizontalBearingX: 0.74999994 + m_HorizontalBearingY: 30.249998 + m_HorizontalAdvance: 22.125 + m_GlyphRect: + m_X: 245 + m_Y: 422 + m_Width: 24 + m_Height: 34 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 50 + m_Metrics: + m_Width: 25.124998 + m_Height: 35.249996 + m_HorizontalBearingX: 1.4374999 + m_HorizontalBearingY: 30.249998 + m_HorizontalAdvance: 29.125 + m_GlyphRect: + m_X: 461 + m_Y: 58 + m_Width: 25 + m_Height: 35 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 51 + m_Metrics: + m_Width: 23.687498 + m_Height: 35.312496 + m_HorizontalBearingX: 0.62499994 + m_HorizontalBearingY: 30.249998 + m_HorizontalAdvance: 24.25 + m_GlyphRect: + m_X: 76 + m_Y: 372 + m_Width: 24 + m_Height: 35 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 52 + m_Metrics: + m_Width: 20.937498 + m_Height: 33.874996 + m_HorizontalBearingX: -0.31249997 + m_HorizontalBearingY: 30.249998 + m_HorizontalAdvance: 22.5 + m_GlyphRect: + m_X: 259 + m_Y: 467 + m_Width: 21 + m_Height: 34 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 53 + m_Metrics: + m_Width: 23.812498 + m_Height: 33.874996 + m_HorizontalBearingX: 2.8749998 + m_HorizontalBearingY: 30.249998 + m_HorizontalAdvance: 20.5625 + m_GlyphRect: + m_X: 206 + m_Y: 101 + m_Width: 24 + m_Height: 34 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 54 + m_Metrics: + m_Width: 28.812498 + m_Height: 34.437496 + m_HorizontalBearingX: 0.99999994 + m_HorizontalBearingY: 30.249998 + m_HorizontalAdvance: 29.625 + m_GlyphRect: + m_X: 232 + m_Y: 7 + m_Width: 29 + m_Height: 34 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 55 + m_Metrics: + m_Width: 26.062498 + m_Height: 33.874996 + m_HorizontalBearingX: 0.99999994 + m_HorizontalBearingY: 30.249998 + m_HorizontalAdvance: 26.5625 + m_GlyphRect: + m_X: 347 + m_Y: 57 + m_Width: 26 + m_Height: 34 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 56 + m_Metrics: + m_Width: 37.562496 + m_Height: 33.874996 + m_HorizontalBearingX: 0.99999994 + m_HorizontalBearingY: 30.249998 + m_HorizontalAdvance: 38.0625 + m_GlyphRect: + m_X: 46 + m_Y: 6 + m_Width: 38 + m_Height: 34 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 57 + m_Metrics: + m_Width: 26.312498 + m_Height: 34.999996 + m_HorizontalBearingX: 0.99999994 + m_HorizontalBearingY: 30.374998 + m_HorizontalAdvance: 27.8125 + m_GlyphRect: + m_X: 385 + m_Y: 58 + m_Width: 26 + m_Height: 35 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 58 + m_Metrics: + m_Width: 28.812498 + m_Height: 38.124996 + m_HorizontalBearingX: 0.93749994 + m_HorizontalBearingY: 30.249998 + m_HorizontalAdvance: 28 + m_GlyphRect: + m_X: 167 + m_Y: 52 + m_Width: 29 + m_Height: 38 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 59 + m_Metrics: + m_Width: 28.812498 + m_Height: 33.874996 + m_HorizontalBearingX: -1.0624999 + m_HorizontalBearingY: 30.249998 + m_HorizontalAdvance: 26.5 + m_GlyphRect: + m_X: 231 + m_Y: 52 + m_Width: 29 + m_Height: 34 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 60 + m_Metrics: + m_Width: 17.437498 + m_Height: 33.874996 + m_HorizontalBearingX: 1.1874999 + m_HorizontalBearingY: 30.249998 + m_HorizontalAdvance: 16.5 + m_GlyphRect: + m_X: 221 + m_Y: 146 + m_Width: 17 + m_Height: 34 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 61 + m_Metrics: + m_Width: 11.374999 + m_Height: 37.062496 + m_HorizontalBearingX: 6.8749995 + m_HorizontalBearingY: 30.249998 + m_HorizontalAdvance: 23.5 + m_GlyphRect: + m_X: 82 + m_Y: 173 + m_Width: 11 + m_Height: 37 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 62 + m_Metrics: + m_Width: 17.374998 + m_Height: 33.937496 + m_HorizontalBearingX: -0.62499994 + m_HorizontalBearingY: 30.249998 + m_HorizontalAdvance: 17.25 + m_GlyphRect: + m_X: 237 + m_Y: 191 + m_Width: 17 + m_Height: 34 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 63 + m_Metrics: + m_Width: 8.562499 + m_Height: 5.9374995 + m_HorizontalBearingX: 0 + m_HorizontalBearingY: 23.062498 + m_HorizontalAdvance: 8.5 + m_GlyphRect: + m_X: 88 + m_Y: 155 + m_Width: 9 + m_Height: 6 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 64 + m_Metrics: + m_Width: 30.874998 + m_Height: 3.4374998 + m_HorizontalBearingX: -0.87499994 + m_HorizontalBearingY: 0.68749994 + m_HorizontalAdvance: 35.5 + m_GlyphRect: + m_X: 46 + m_Y: 158 + m_Width: 31 + m_Height: 3 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 65 + m_Metrics: + m_Width: 5.3124995 + m_Height: 6.1874995 + m_HorizontalBearingX: 0 + m_HorizontalBearingY: 23.187498 + m_HorizontalAdvance: 5.25 + m_GlyphRect: + m_X: 499 + m_Y: 287 + m_Width: 5 + m_Height: 6 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 66 + m_Metrics: + m_Width: 20.624998 + m_Height: 16.437498 + m_HorizontalBearingX: -1.1249999 + m_HorizontalBearingY: 14.437499 + m_HorizontalAdvance: 18.3125 + m_GlyphRect: + m_X: 165 + m_Y: 490 + m_Width: 21 + m_Height: 16 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 67 + m_Metrics: + m_Width: 18.374998 + m_Height: 33.062496 + m_HorizontalBearingX: -0.43749997 + m_HorizontalBearingY: 29.999998 + m_HorizontalAdvance: 16.5625 + m_GlyphRect: + m_X: 241 + m_Y: 98 + m_Width: 18 + m_Height: 33 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 68 + m_Metrics: + m_Width: 15.124999 + m_Height: 16.562498 + m_HorizontalBearingX: -0.24999999 + m_HorizontalBearingY: 14.249999 + m_HorizontalAdvance: 13.5625 + m_GlyphRect: + m_X: 388 + m_Y: 355 + m_Width: 15 + m_Height: 17 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 69 + m_Metrics: + m_Width: 23.562498 + m_Height: 31.499998 + m_HorizontalBearingX: -0.68749994 + m_HorizontalBearingY: 30.249998 + m_HorizontalAdvance: 19.875 + m_GlyphRect: + m_X: 380 + m_Y: 105 + m_Width: 24 + m_Height: 31 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 70 + m_Metrics: + m_Width: 15.874999 + m_Height: 16.999998 + m_HorizontalBearingX: -0.62499994 + m_HorizontalBearingY: 15.124999 + m_HorizontalAdvance: 14 + m_GlyphRect: + m_X: 375 + m_Y: 479 + m_Width: 16 + m_Height: 17 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 71 + m_Metrics: + m_Width: 19.437498 + m_Height: 41.999996 + m_HorizontalBearingX: -2.8749998 + m_HorizontalBearingY: 30.249998 + m_HorizontalAdvance: 13.125 + m_GlyphRect: + m_X: 43 + m_Y: 222 + m_Width: 19 + m_Height: 42 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 72 + m_Metrics: + m_Width: 18.437498 + m_Height: 26.312498 + m_HorizontalBearingX: -0.87499994 + m_HorizontalBearingY: 14.624999 + m_HorizontalAdvance: 16.3125 + m_GlyphRect: + m_X: 304 + m_Y: 237 + m_Width: 18 + m_Height: 26 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 73 + m_Metrics: + m_Width: 21.062498 + m_Height: 31.624998 + m_HorizontalBearingX: 0.24999999 + m_HorizontalBearingY: 29.999998 + m_HorizontalAdvance: 20 + m_GlyphRect: + m_X: 340 + m_Y: 147 + m_Width: 21 + m_Height: 32 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 74 + m_Metrics: + m_Width: 11.499999 + m_Height: 22.749998 + m_HorizontalBearingX: -0.24999999 + m_HorizontalBearingY: 21.749998 + m_HorizontalAdvance: 10.125 + m_GlyphRect: + m_X: 431 + m_Y: 441 + m_Width: 11 + m_Height: 23 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 75 + m_Metrics: + m_Width: 18.562498 + m_Height: 33.687496 + m_HorizontalBearingX: -8.124999 + m_HorizontalBearingY: 21.937498 + m_HorizontalAdvance: 9.1875 + m_GlyphRect: + m_X: 297 + m_Y: 191 + m_Width: 19 + m_Height: 34 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 76 + m_Metrics: + m_Width: 19.749998 + m_Height: 31.624998 + m_HorizontalBearingX: 0.12499999 + m_HorizontalBearingY: 29.999998 + m_HorizontalAdvance: 18.75 + m_GlyphRect: + m_X: 408 + m_Y: 186 + m_Width: 20 + m_Height: 32 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 77 + m_Metrics: + m_Width: 14.437499 + m_Height: 31.499998 + m_HorizontalBearingX: 0.12499999 + m_HorizontalBearingY: 30.249998 + m_HorizontalAdvance: 9.9375 + m_GlyphRect: + m_X: 439 + m_Y: 187 + m_Width: 14 + m_Height: 31 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 78 + m_Metrics: + m_Width: 29.937498 + m_Height: 15.249999 + m_HorizontalBearingX: -1.4999999 + m_HorizontalBearingY: 13.999999 + m_HorizontalAdvance: 27.125 + m_GlyphRect: + m_X: 359 + m_Y: 236 + m_Width: 30 + m_Height: 15 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 79 + m_Metrics: + m_Width: 22.437498 + m_Height: 13.062499 + m_HorizontalBearingX: -1.6249999 + m_HorizontalBearingY: 12.312499 + m_HorizontalAdvance: 19.5625 + m_GlyphRect: + m_X: 354 + m_Y: 350 + m_Width: 22 + m_Height: 13 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 80 + m_Metrics: + m_Width: 17.062498 + m_Height: 16.124998 + m_HorizontalBearingX: -0.43749997 + m_HorizontalBearingY: 14.812499 + m_HorizontalAdvance: 15.3125 + m_GlyphRect: + m_X: 436 + m_Y: 230 + m_Width: 17 + m_Height: 16 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 81 + m_Metrics: + m_Width: 19.124998 + m_Height: 27.437498 + m_HorizontalBearingX: -3.9999998 + m_HorizontalBearingY: 15.687499 + m_HorizontalAdvance: 16.4375 + m_GlyphRect: + m_X: 134 + m_Y: 479 + m_Width: 19 + m_Height: 27 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 82 + m_Metrics: + m_Width: 18.749998 + m_Height: 26.749998 + m_HorizontalBearingX: -0.68749994 + m_HorizontalBearingY: 14.999999 + m_HorizontalAdvance: 16.8125 + m_GlyphRect: + m_X: 265 + m_Y: 278 + m_Width: 19 + m_Height: 27 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 83 + m_Metrics: + m_Width: 15.999999 + m_Height: 18.249998 + m_HorizontalBearingX: 0 + m_HorizontalBearingY: 17.187498 + m_HorizontalAdvance: 14.625 + m_GlyphRect: + m_X: 447 + m_Y: 292 + m_Width: 16 + m_Height: 18 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 84 + m_Metrics: + m_Width: 16.499998 + m_Height: 18.687498 + m_HorizontalBearingX: -0.87499994 + m_HorizontalBearingY: 16.624998 + m_HorizontalAdvance: 14.5 + m_GlyphRect: + m_X: 37 + m_Y: 487 + m_Width: 16 + m_Height: 19 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 85 + m_Metrics: + m_Width: 13.499999 + m_Height: 26.999998 + m_HorizontalBearingX: -0.18749999 + m_HorizontalBearingY: 25.124998 + m_HorizontalAdvance: 12 + m_GlyphRect: + m_X: 334 + m_Y: 236 + m_Width: 13 + m_Height: 27 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 86 + m_Metrics: + m_Width: 19.749998 + m_Height: 13.749999 + m_HorizontalBearingX: 0 + m_HorizontalBearingY: 12.562499 + m_HorizontalAdvance: 18.375 + m_GlyphRect: + m_X: 344 + m_Y: 478 + m_Width: 20 + m_Height: 14 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 87 + m_Metrics: + m_Width: 17.999998 + m_Height: 15.562499 + m_HorizontalBearingX: 0.37499997 + m_HorizontalBearingY: 13.999999 + m_HorizontalAdvance: 17.125 + m_GlyphRect: + m_X: 398 + m_Y: 262 + m_Width: 18 + m_Height: 16 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 88 + m_Metrics: + m_Width: 27.249998 + m_Height: 15.562499 + m_HorizontalBearingX: 0 + m_HorizontalBearingY: 13.999999 + m_HorizontalAdvance: 25.9375 + m_GlyphRect: + m_X: 359 + m_Y: 262 + m_Width: 27 + m_Height: 16 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 89 + m_Metrics: + m_Width: 18.374998 + m_Height: 16.437498 + m_HorizontalBearingX: 0.37499997 + m_HorizontalBearingY: 13.999999 + m_HorizontalAdvance: 17.5625 + m_GlyphRect: + m_X: 197 + m_Y: 490 + m_Width: 18 + m_Height: 16 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 90 + m_Metrics: + m_Width: 18.499998 + m_Height: 24.749998 + m_HorizontalBearingX: -0.87499994 + m_HorizontalBearingY: 12.999999 + m_HorizontalAdvance: 16.3125 + m_GlyphRect: + m_X: 324 + m_Y: 310 + m_Width: 18 + m_Height: 25 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 91 + m_Metrics: + m_Width: 17.562498 + m_Height: 26.562498 + m_HorizontalBearingX: -2.9999998 + m_HorizontalBearingY: 14.874999 + m_HorizontalAdvance: 13.3125 + m_GlyphRect: + m_X: 295 + m_Y: 278 + m_Width: 18 + m_Height: 27 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 92 + m_Metrics: + m_Width: 11.437499 + m_Height: 33.874996 + m_HorizontalBearingX: 1.4999999 + m_HorizontalBearingY: 30.249998 + m_HorizontalAdvance: 10.9375 + m_GlyphRect: + m_X: 284 + m_Y: 145 + m_Width: 11 + m_Height: 34 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 93 + m_Metrics: + m_Width: 5.5624995 + m_Height: 34.812496 + m_HorizontalBearingX: 2.2499998 + m_HorizontalBearingY: 29.312498 + m_HorizontalAdvance: 10.875 + m_GlyphRect: + m_X: 204 + m_Y: 151 + m_Width: 6 + m_Height: 35 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 94 + m_Metrics: + m_Width: 11.874999 + m_Height: 33.874996 + m_HorizontalBearingX: -0.93749994 + m_HorizontalBearingY: 30.249998 + m_HorizontalAdvance: 10.75 + m_GlyphRect: + m_X: 327 + m_Y: 191 + m_Width: 12 + m_Height: 34 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 95 + m_Metrics: + m_Width: 12.874999 + m_Height: 3.1874998 + m_HorizontalBearingX: 1.6249999 + m_HorizontalBearingY: 8.687499 + m_HorizontalAdvance: 18.25 + m_GlyphRect: + m_X: 308 + m_Y: 446 + m_Width: 13 + m_Height: 3 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 96 + m_Metrics: + m_Width: 0 + m_Height: 0 + m_HorizontalBearingX: 0 + m_HorizontalBearingY: 0 + m_HorizontalAdvance: 10.9375 + m_GlyphRect: + m_X: 6 + m_Y: -5 + m_Width: 0 + m_Height: 0 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 97 + m_Metrics: + m_Width: 14.874999 + m_Height: 30.687498 + m_HorizontalBearingX: -3.3749998 + m_HorizontalBearingY: 20.187498 + m_HorizontalAdvance: 11.0625 + m_GlyphRect: + m_X: 272 + m_Y: 316 + m_Width: 15 + m_Height: 31 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 98 + m_Metrics: + m_Width: 12.999999 + m_Height: 37.062496 + m_HorizontalBearingX: 2.1249998 + m_HorizontalBearingY: 30.249998 + m_HorizontalAdvance: 16.9375 + m_GlyphRect: + m_X: 207 + m_Y: 52 + m_Width: 13 + m_Height: 37 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 99 + m_Metrics: + m_Width: 26.874998 + m_Height: 33.874996 + m_HorizontalBearingX: -0.93749994 + m_HorizontalBearingY: 30.249998 + m_HorizontalAdvance: 27.3125 + m_GlyphRect: + m_X: 166 + m_Y: 151 + m_Width: 27 + m_Height: 34 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 100 + m_Metrics: + m_Width: 25.624998 + m_Height: 25.812498 + m_HorizontalBearingX: 3.4374998 + m_HorizontalBearingY: 26.812498 + m_HorizontalAdvance: 29.25 + m_GlyphRect: + m_X: 406 + m_Y: 149 + m_Width: 26 + m_Height: 26 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 101 + m_Metrics: + m_Width: 28.812498 + m_Height: 38.124996 + m_HorizontalBearingX: 4.5624995 + m_HorizontalBearingY: 30.249998 + m_HorizontalAdvance: 34 + m_GlyphRect: + m_X: 166 + m_Y: 102 + m_Width: 29 + m_Height: 38 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 102 + m_Metrics: + m_Width: 5.5624995 + m_Height: 34.812496 + m_HorizontalBearingX: 2.2499998 + m_HorizontalBearingY: 29.312498 + m_HorizontalAdvance: 10.9375 + m_GlyphRect: + m_X: 235 + m_Y: 242 + m_Width: 6 + m_Height: 35 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 103 + m_Metrics: + m_Width: 16.499998 + m_Height: 33.812496 + m_HorizontalBearingX: 0.24999999 + m_HorizontalBearingY: 30.249998 + m_HorizontalAdvance: 17.5 + m_GlyphRect: + m_X: 380 + m_Y: 190 + m_Width: 16 + m_Height: 34 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 104 + m_Metrics: + m_Width: 10.062499 + m_Height: 4.1249995 + m_HorizontalBearingX: 0 + m_HorizontalBearingY: 21.312498 + m_HorizontalAdvance: 10.0625 + m_GlyphRect: + m_X: 315 + m_Y: 497 + m_Width: 10 + m_Height: 4 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 105 + m_Metrics: + m_Width: 20.687498 + m_Height: 21.874998 + m_HorizontalBearingX: 3.3124998 + m_HorizontalBearingY: 26.062498 + m_HorizontalAdvance: 24.875 + m_GlyphRect: + m_X: 465 + m_Y: 223 + m_Width: 21 + m_Height: 22 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 106 + m_Metrics: + m_Width: 14.437499 + m_Height: 11.499999 + m_HorizontalBearingX: 4.3749995 + m_HorizontalBearingY: 30.249998 + m_HorizontalAdvance: 16.0625 + m_GlyphRect: + m_X: 169 + m_Y: 242 + m_Width: 14 + m_Height: 11 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 107 + m_Metrics: + m_Width: 14.499999 + m_Height: 11.374999 + m_HorizontalBearingX: 0.24999999 + m_HorizontalBearingY: 13.312499 + m_HorizontalAdvance: 18.3125 + m_GlyphRect: + m_X: 386 + m_Y: 384 + m_Width: 14 + m_Height: 11 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 108 + m_Metrics: + m_Width: 23.937498 + m_Height: 10.499999 + m_HorizontalBearingX: 1.8124999 + m_HorizontalBearingY: 11.874999 + m_HorizontalAdvance: 28 + m_GlyphRect: + m_X: 134 + m_Y: 198 + m_Width: 24 + m_Height: 10 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 109 + m_Metrics: + m_Width: 14.937499 + m_Height: 2.0624998 + m_HorizontalBearingX: 1.4374999 + m_HorizontalBearingY: 8.124999 + m_HorizontalAdvance: 20.375 + m_GlyphRect: + m_X: 298 + m_Y: 357 + m_Width: 15 + m_Height: 2 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 110 + m_Metrics: + m_Width: 20.687498 + m_Height: 21.874998 + m_HorizontalBearingX: 3.3124998 + m_HorizontalBearingY: 26.062498 + m_HorizontalAdvance: 24.875 + m_GlyphRect: + m_X: 354 + m_Y: 374 + m_Width: 21 + m_Height: 22 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 111 + m_Metrics: + m_Width: 12.062499 + m_Height: 2.8124998 + m_HorizontalBearingX: 2.4999998 + m_HorizontalBearingY: 20.374998 + m_HorizontalAdvance: 17.125 + m_GlyphRect: + m_X: 291 + m_Y: 500 + m_Width: 12 + m_Height: 3 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 112 + m_Metrics: + m_Width: 8.312499 + m_Height: 6.9999995 + m_HorizontalBearingX: 3.8124998 + m_HorizontalBearingY: 23.624998 + m_HorizontalAdvance: 11.125 + m_GlyphRect: + m_X: 497 + m_Y: 250 + m_Width: 8 + m_Height: 7 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 113 + m_Metrics: + m_Width: 13.499999 + m_Height: 15.374999 + m_HorizontalBearingX: 2.2499998 + m_HorizontalBearingY: 16.812498 + m_HorizontalAdvance: 18.875 + m_GlyphRect: + m_X: 474 + m_Y: 292 + m_Width: 13 + m_Height: 15 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 114 + m_Metrics: + m_Width: 11.249999 + m_Height: 16.999998 + m_HorizontalBearingX: 2.9999998 + m_HorizontalBearingY: 29.749998 + m_HorizontalAdvance: 14.9375 + m_GlyphRect: + m_X: 393 + m_Y: 289 + m_Width: 11 + m_Height: 17 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 115 + m_Metrics: + m_Width: 9.999999 + m_Height: 16.999998 + m_HorizontalBearingX: 3.3749998 + m_HorizontalBearingY: 30.187498 + m_HorizontalAdvance: 12.375 + m_GlyphRect: + m_X: 415 + m_Y: 229 + m_Width: 10 + m_Height: 17 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 116 + m_Metrics: + m_Width: 5.3124995 + m_Height: 6.1874995 + m_HorizontalBearingX: 3.6874998 + m_HorizontalBearingY: 23.187498 + m_HorizontalAdvance: 5.25 + m_GlyphRect: + m_X: 499 + m_Y: 305 + m_Width: 5 + m_Height: 6 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 117 + m_Metrics: + m_Width: 23.874998 + m_Height: 27.437498 + m_HorizontalBearingX: -1.6874999 + m_HorizontalBearingY: 15.687499 + m_HorizontalAdvance: 24.5625 + m_GlyphRect: + m_X: 99 + m_Y: 479 + m_Width: 24 + m_Height: 27 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 118 + m_Metrics: + m_Width: 23.124998 + m_Height: 33.687496 + m_HorizontalBearingX: 2.4999998 + m_HorizontalBearingY: 30.124998 + m_HorizontalAdvance: 27.0625 + m_GlyphRect: + m_X: 345 + m_Y: 102 + m_Width: 23 + m_Height: 34 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 119 + m_Metrics: + m_Width: 3.4999998 + m_Height: 2.8749998 + m_HorizontalBearingX: 1.5624999 + m_HorizontalBearingY: 8.124999 + m_HorizontalAdvance: 8.75 + m_GlyphRect: + m_X: 352 + m_Y: 503 + m_Width: 3 + m_Height: 3 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 120 + m_Metrics: + m_Width: 7.4999995 + m_Height: 8.874999 + m_HorizontalBearingX: 0.81249994 + m_HorizontalBearingY: 0 + m_HorizontalAdvance: 9.125 + m_GlyphRect: + m_X: 498 + m_Y: 80 + m_Width: 7 + m_Height: 9 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 121 + m_Metrics: + m_Width: 7.9374995 + m_Height: 16.937498 + m_HorizontalBearingX: 2.7499998 + m_HorizontalBearingY: 30.124998 + m_HorizontalAdvance: 10.9375 + m_GlyphRect: + m_X: 498 + m_Y: 52 + m_Width: 8 + m_Height: 17 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 122 + m_Metrics: + m_Width: 10.437499 + m_Height: 11.249999 + m_HorizontalBearingX: 4.4374995 + m_HorizontalBearingY: 30.249998 + m_HorizontalAdvance: 11.6875 + m_GlyphRect: + m_X: 458 + m_Y: 269 + m_Width: 10 + m_Height: 11 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 123 + m_Metrics: + m_Width: 14.499999 + m_Height: 11.374999 + m_HorizontalBearingX: 2.1249998 + m_HorizontalBearingY: 13.312499 + m_HorizontalAdvance: 19.125 + m_GlyphRect: + m_X: 412 + m_Y: 419 + m_Width: 14 + m_Height: 11 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 124 + m_Metrics: + m_Width: 22.874998 + m_Height: 33.874996 + m_HorizontalBearingX: 1.8749999 + m_HorizontalBearingY: 30.249998 + m_HorizontalAdvance: 26.9375 + m_GlyphRect: + m_X: 250 + m_Y: 145 + m_Width: 23 + m_Height: 34 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 125 + m_Metrics: + m_Width: 23.562498 + m_Height: 33.874996 + m_HorizontalBearingX: 2.1249998 + m_HorizontalBearingY: 30.249998 + m_HorizontalAdvance: 29.3125 + m_GlyphRect: + m_X: 415 + m_Y: 104 + m_Width: 24 + m_Height: 34 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 126 + m_Metrics: + m_Width: 23.062498 + m_Height: 33.874996 + m_HorizontalBearingX: 3.4374998 + m_HorizontalBearingY: 30.249998 + m_HorizontalAdvance: 28.75 + m_GlyphRect: + m_X: 450 + m_Y: 104 + m_Width: 23 + m_Height: 34 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 127 + m_Metrics: + m_Width: 14.499999 + m_Height: 28.124998 + m_HorizontalBearingX: -2.1249998 + m_HorizontalBearingY: 16.437498 + m_HorizontalAdvance: 17.4375 + m_GlyphRect: + m_X: 298 + m_Y: 317 + m_Width: 14 + m_Height: 28 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 128 + m_Metrics: + m_Width: 24.749998 + m_Height: 41.249996 + m_HorizontalBearingX: -0.74999994 + m_HorizontalBearingY: 37.624996 + m_HorizontalAdvance: 24.875 + m_GlyphRect: + m_X: 6 + m_Y: 276 + m_Width: 25 + m_Height: 41 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 129 + m_Metrics: + m_Width: 27.812498 + m_Height: 41.249996 + m_HorizontalBearingX: -0.74999994 + m_HorizontalBearingY: 37.624996 + m_HorizontalAdvance: 24.875 + m_GlyphRect: + m_X: 86 + m_Y: 52 + m_Width: 28 + m_Height: 41 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 130 + m_Metrics: + m_Width: 27.687498 + m_Height: 40.874996 + m_HorizontalBearingX: -0.74999994 + m_HorizontalBearingY: 37.249996 + m_HorizontalAdvance: 24.875 + m_GlyphRect: + m_X: 6 + m_Y: 170 + m_Width: 28 + m_Height: 41 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 131 + m_Metrics: + m_Width: 30.187498 + m_Height: 38.999996 + m_HorizontalBearingX: -0.74999994 + m_HorizontalBearingY: 35.437496 + m_HorizontalAdvance: 24.875 + m_GlyphRect: + m_X: 125 + m_Y: 51 + m_Width: 30 + m_Height: 39 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 132 + m_Metrics: + m_Width: 28.749998 + m_Height: 39.374996 + m_HorizontalBearingX: -0.74999994 + m_HorizontalBearingY: 35.812496 + m_HorizontalAdvance: 24.875 + m_GlyphRect: + m_X: 86 + m_Y: 105 + m_Width: 29 + m_Height: 39 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 133 + m_Metrics: + m_Width: 28.374998 + m_Height: 42.312496 + m_HorizontalBearingX: -0.74999994 + m_HorizontalBearingY: 38.687496 + m_HorizontalAdvance: 24.875 + m_GlyphRect: + m_X: 6 + m_Y: 64 + m_Width: 28 + m_Height: 42 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 134 + m_Metrics: + m_Width: 34.562496 + m_Height: 33.874996 + m_HorizontalBearingX: -0.74999994 + m_HorizontalBearingY: 30.249998 + m_HorizontalAdvance: 31.375 + m_GlyphRect: + m_X: 143 + m_Y: 6 + m_Width: 35 + m_Height: 34 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 135 + m_Metrics: + m_Width: 21.249998 + m_Height: 39.062496 + m_HorizontalBearingX: 0.87499994 + m_HorizontalBearingY: 30.249998 + m_HorizontalAdvance: 22.4375 + m_GlyphRect: + m_X: 74 + m_Y: 223 + m_Width: 21 + m_Height: 39 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 136 + m_Metrics: + m_Width: 21.312498 + m_Height: 41.249996 + m_HorizontalBearingX: -0.68749994 + m_HorizontalBearingY: 37.624996 + m_HorizontalAdvance: 20.9375 + m_GlyphRect: + m_X: 42 + m_Y: 276 + m_Width: 21 + m_Height: 41 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 137 + m_Metrics: + m_Width: 22.999998 + m_Height: 41.249996 + m_HorizontalBearingX: -0.68749994 + m_HorizontalBearingY: 37.624996 + m_HorizontalAdvance: 20.9375 + m_GlyphRect: + m_X: 42 + m_Y: 329 + m_Width: 23 + m_Height: 41 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 138 + m_Metrics: + m_Width: 22.874998 + m_Height: 40.874996 + m_HorizontalBearingX: -0.68749994 + m_HorizontalBearingY: 37.249996 + m_HorizontalAdvance: 20.9375 + m_GlyphRect: + m_X: 42 + m_Y: 381 + m_Width: 23 + m_Height: 41 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 139 + m_Metrics: + m_Width: 23.937498 + m_Height: 39.374996 + m_HorizontalBearingX: -0.68749994 + m_HorizontalBearingY: 35.812496 + m_HorizontalAdvance: 20.9375 + m_GlyphRect: + m_X: 42 + m_Y: 434 + m_Width: 24 + m_Height: 39 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 140 + m_Metrics: + m_Width: 24.624998 + m_Height: 41.312496 + m_HorizontalBearingX: -1.6249999 + m_HorizontalBearingY: 37.624996 + m_HorizontalAdvance: 19.25 + m_GlyphRect: + m_X: 6 + m_Y: 329 + m_Width: 25 + m_Height: 41 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 141 + m_Metrics: + m_Width: 24.624998 + m_Height: 41.312496 + m_HorizontalBearingX: -1.6249999 + m_HorizontalBearingY: 37.624996 + m_HorizontalAdvance: 19.25 + m_GlyphRect: + m_X: 6 + m_Y: 382 + m_Width: 25 + m_Height: 41 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 142 + m_Metrics: + m_Width: 24.624998 + m_Height: 40.937496 + m_HorizontalBearingX: -1.6249999 + m_HorizontalBearingY: 37.249996 + m_HorizontalAdvance: 19.25 + m_GlyphRect: + m_X: 425 + m_Y: 6 + m_Width: 25 + m_Height: 41 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 143 + m_Metrics: + m_Width: 24.624998 + m_Height: 39.437496 + m_HorizontalBearingX: -1.6249999 + m_HorizontalBearingY: 35.812496 + m_HorizontalAdvance: 19.25 + m_GlyphRect: + m_X: 461 + m_Y: 7 + m_Width: 25 + m_Height: 39 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 144 + m_Metrics: + m_Width: 25.687498 + m_Height: 33.874996 + m_HorizontalBearingX: 1.3124999 + m_HorizontalBearingY: 30.249998 + m_HorizontalAdvance: 27.4375 + m_GlyphRect: + m_X: 271 + m_Y: 100 + m_Width: 26 + m_Height: 34 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 145 + m_Metrics: + m_Width: 25.937498 + m_Height: 38.999996 + m_HorizontalBearingX: 1.8749999 + m_HorizontalBearingY: 35.437496 + m_HorizontalAdvance: 26.875 + m_GlyphRect: + m_X: 45 + m_Y: 172 + m_Width: 26 + m_Height: 39 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 146 + m_Metrics: + m_Width: 24.437498 + m_Height: 41.249996 + m_HorizontalBearingX: 0.87499994 + m_HorizontalBearingY: 37.624996 + m_HorizontalAdvance: 26.1875 + m_GlyphRect: + m_X: 6 + m_Y: 435 + m_Width: 24 + m_Height: 41 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 147 + m_Metrics: + m_Width: 25.374998 + m_Height: 41.249996 + m_HorizontalBearingX: 0.87499994 + m_HorizontalBearingY: 37.624996 + m_HorizontalAdvance: 26.1875 + m_GlyphRect: + m_X: 6 + m_Y: 223 + m_Width: 25 + m_Height: 41 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 148 + m_Metrics: + m_Width: 25.249998 + m_Height: 40.874996 + m_HorizontalBearingX: 0.87499994 + m_HorizontalBearingY: 37.249996 + m_HorizontalAdvance: 26.1875 + m_GlyphRect: + m_X: 388 + m_Y: 6 + m_Width: 25 + m_Height: 41 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 149 + m_Metrics: + m_Width: 27.749998 + m_Height: 38.999996 + m_HorizontalBearingX: 0.87499994 + m_HorizontalBearingY: 35.437496 + m_HorizontalAdvance: 26.1875 + m_GlyphRect: + m_X: 311 + m_Y: 6 + m_Width: 28 + m_Height: 39 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 150 + m_Metrics: + m_Width: 26.312498 + m_Height: 39.374996 + m_HorizontalBearingX: 0.87499994 + m_HorizontalBearingY: 35.812496 + m_HorizontalAdvance: 26.1875 + m_GlyphRect: + m_X: 350 + m_Y: 7 + m_Width: 26 + m_Height: 39 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 151 + m_Metrics: + m_Width: 9.937499 + m_Height: 11.999999 + m_HorizontalBearingX: 1.9999999 + m_HorizontalBearingY: 12.812499 + m_HorizontalAdvance: 15.8125 + m_GlyphRect: + m_X: 438 + m_Y: 409 + m_Width: 10 + m_Height: 12 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 152 + m_Metrics: + m_Width: 26.999998 + m_Height: 34.437496 + m_HorizontalBearingX: 0.87499994 + m_HorizontalBearingY: 30.249998 + m_HorizontalAdvance: 26.1875 + m_GlyphRect: + m_X: 423 + m_Y: 59 + m_Width: 27 + m_Height: 34 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 153 + m_Metrics: + m_Width: 28.812498 + m_Height: 41.812496 + m_HorizontalBearingX: 0.99999994 + m_HorizontalBearingY: 37.624996 + m_HorizontalAdvance: 29.625 + m_GlyphRect: + m_X: 46 + m_Y: 51 + m_Width: 29 + m_Height: 42 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 154 + m_Metrics: + m_Width: 28.812498 + m_Height: 41.812496 + m_HorizontalBearingX: 0.99999994 + m_HorizontalBearingY: 37.624996 + m_HorizontalAdvance: 29.625 + m_GlyphRect: + m_X: 6 + m_Y: 117 + m_Width: 29 + m_Height: 42 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 155 + m_Metrics: + m_Width: 28.812498 + m_Height: 41.437496 + m_HorizontalBearingX: 0.99999994 + m_HorizontalBearingY: 37.249996 + m_HorizontalAdvance: 29.625 + m_GlyphRect: + m_X: 46 + m_Y: 105 + m_Width: 29 + m_Height: 41 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 156 + m_Metrics: + m_Width: 28.812498 + m_Height: 39.937496 + m_HorizontalBearingX: 0.99999994 + m_HorizontalBearingY: 35.812496 + m_HorizontalAdvance: 29.625 + m_GlyphRect: + m_X: 126 + m_Y: 101 + m_Width: 29 + m_Height: 40 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 157 + m_Metrics: + m_Width: 28.812498 + m_Height: 45.499996 + m_HorizontalBearingX: 0.93749994 + m_HorizontalBearingY: 37.624996 + m_HorizontalAdvance: 28 + m_GlyphRect: + m_X: 6 + m_Y: 7 + m_Width: 29 + m_Height: 45 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 158 + m_Metrics: + m_Width: 20.874998 + m_Height: 33.687496 + m_HorizontalBearingX: 1.2499999 + m_HorizontalBearingY: 30.124998 + m_HorizontalAdvance: 21.3125 + m_GlyphRect: + m_X: 485 + m_Y: 104 + m_Width: 21 + m_Height: 34 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 159 + m_Metrics: + m_Width: 17.999998 + m_Height: 35.062496 + m_HorizontalBearingX: -1.8124999 + m_HorizontalBearingY: 30.249998 + m_HorizontalAdvance: 17.9375 + m_GlyphRect: + m_X: 105 + m_Y: 173 + m_Width: 18 + m_Height: 35 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 160 + m_Metrics: + m_Width: 20.624998 + m_Height: 25.374998 + m_HorizontalBearingX: -1.1249999 + m_HorizontalBearingY: 23.437498 + m_HorizontalAdvance: 18.3125 + m_GlyphRect: + m_X: 443 + m_Y: 150 + m_Width: 21 + m_Height: 25 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 161 + m_Metrics: + m_Width: 20.624998 + m_Height: 25.374998 + m_HorizontalBearingX: -1.1249999 + m_HorizontalBearingY: 23.437498 + m_HorizontalAdvance: 18.3125 + m_GlyphRect: + m_X: 475 + m_Y: 150 + m_Width: 21 + m_Height: 25 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 162 + m_Metrics: + m_Width: 20.624998 + m_Height: 24.874998 + m_HorizontalBearingX: -1.1249999 + m_HorizontalBearingY: 22.874998 + m_HorizontalAdvance: 18.3125 + m_GlyphRect: + m_X: 324 + m_Y: 274 + m_Width: 21 + m_Height: 25 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 163 + m_Metrics: + m_Width: 20.874998 + m_Height: 22.312498 + m_HorizontalBearingX: -1.1249999 + m_HorizontalBearingY: 20.312498 + m_HorizontalAdvance: 18.3125 + m_GlyphRect: + m_X: 113 + m_Y: 445 + m_Width: 21 + m_Height: 22 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 164 + m_Metrics: + m_Width: 20.624998 + m_Height: 23.562498 + m_HorizontalBearingX: -1.1249999 + m_HorizontalBearingY: 21.562498 + m_HorizontalAdvance: 18.3125 + m_GlyphRect: + m_X: 227 + m_Y: 482 + m_Width: 21 + m_Height: 24 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 165 + m_Metrics: + m_Width: 20.624998 + m_Height: 25.624998 + m_HorizontalBearingX: -1.1249999 + m_HorizontalBearingY: 23.687498 + m_HorizontalAdvance: 18.3125 + m_GlyphRect: + m_X: 465 + m_Y: 186 + m_Width: 21 + m_Height: 26 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 166 + m_Metrics: + m_Width: 25.249998 + m_Height: 17.124998 + m_HorizontalBearingX: -1.1249999 + m_HorizontalBearingY: 15.124999 + m_HorizontalAdvance: 22.8125 + m_GlyphRect: + m_X: 356 + m_Y: 290 + m_Width: 25 + m_Height: 17 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 167 + m_Metrics: + m_Width: 15.124999 + m_Height: 23.062498 + m_HorizontalBearingX: -0.24999999 + m_HorizontalBearingY: 14.249999 + m_HorizontalAdvance: 13.5625 + m_GlyphRect: + m_X: 375 + m_Y: 445 + m_Width: 15 + m_Height: 23 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 168 + m_Metrics: + m_Width: 15.874999 + m_Height: 25.562498 + m_HorizontalBearingX: -0.62499994 + m_HorizontalBearingY: 23.749998 + m_HorizontalAdvance: 14 + m_GlyphRect: + m_X: 280 + m_Y: 376 + m_Width: 16 + m_Height: 26 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 169 + m_Metrics: + m_Width: 16.312498 + m_Height: 25.562498 + m_HorizontalBearingX: -0.62499994 + m_HorizontalBearingY: 23.749998 + m_HorizontalAdvance: 14 + m_GlyphRect: + m_X: 280 + m_Y: 413 + m_Width: 16 + m_Height: 26 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 170 + m_Metrics: + m_Width: 16.437498 + m_Height: 25.062498 + m_HorizontalBearingX: -0.62499994 + m_HorizontalBearingY: 23.187498 + m_HorizontalAdvance: 14 + m_GlyphRect: + m_X: 308 + m_Y: 409 + m_Width: 16 + m_Height: 25 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 171 + m_Metrics: + m_Width: 17.062498 + m_Height: 23.749998 + m_HorizontalBearingX: -0.62499994 + m_HorizontalBearingY: 21.874998 + m_HorizontalAdvance: 14 + m_GlyphRect: + m_X: 402 + m_Y: 442 + m_Width: 17 + m_Height: 24 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 172 + m_Metrics: + m_Width: 11.499999 + m_Height: 24.499998 + m_HorizontalBearingX: -0.24999999 + m_HorizontalBearingY: 23.499998 + m_HorizontalAdvance: 10.125 + m_GlyphRect: + m_X: 389 + m_Y: 407 + m_Width: 11 + m_Height: 24 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 173 + m_Metrics: + m_Width: 12.374999 + m_Height: 24.499998 + m_HorizontalBearingX: -0.24999999 + m_HorizontalBearingY: 23.499998 + m_HorizontalAdvance: 10.125 + m_GlyphRect: + m_X: 291 + m_Y: 465 + m_Width: 12 + m_Height: 24 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 174 + m_Metrics: + m_Width: 12.937499 + m_Height: 23.999998 + m_HorizontalBearingX: -0.24999999 + m_HorizontalBearingY: 22.937498 + m_HorizontalAdvance: 10.0625 + m_GlyphRect: + m_X: 412 + m_Y: 383 + m_Width: 13 + m_Height: 24 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 175 + m_Metrics: + m_Width: 12.749999 + m_Height: 22.687498 + m_HorizontalBearingX: -0.24999999 + m_HorizontalBearingY: 21.624998 + m_HorizontalAdvance: 10.1875 + m_GlyphRect: + m_X: 431 + m_Y: 475 + m_Width: 13 + m_Height: 23 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 176 + m_Metrics: + m_Width: 21.874998 + m_Height: 31.437498 + m_HorizontalBearingX: -0.68749994 + m_HorizontalBearingY: 30.249998 + m_HorizontalAdvance: 19.875 + m_GlyphRect: + m_X: 373 + m_Y: 148 + m_Width: 22 + m_Height: 31 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 177 + m_Metrics: + m_Width: 22.437498 + m_Height: 19.187498 + m_HorizontalBearingX: -1.6249999 + m_HorizontalBearingY: 18.374998 + m_HorizontalAdvance: 19.5625 + m_GlyphRect: + m_X: 354 + m_Y: 319 + m_Width: 22 + m_Height: 19 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 178 + m_Metrics: + m_Width: 17.062498 + m_Height: 25.249998 + m_HorizontalBearingX: -0.43749997 + m_HorizontalBearingY: 23.999998 + m_HorizontalAdvance: 15.3125 + m_GlyphRect: + m_X: 307 + m_Y: 372 + m_Width: 17 + m_Height: 25 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 179 + m_Metrics: + m_Width: 17.062498 + m_Height: 25.249998 + m_HorizontalBearingX: -0.43749997 + m_HorizontalBearingY: 23.999998 + m_HorizontalAdvance: 15.3125 + m_GlyphRect: + m_X: 336 + m_Y: 408 + m_Width: 17 + m_Height: 25 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 180 + m_Metrics: + m_Width: 17.062498 + m_Height: 24.749998 + m_HorizontalBearingX: -0.43749997 + m_HorizontalBearingY: 23.437498 + m_HorizontalAdvance: 15.3125 + m_GlyphRect: + m_X: 315 + m_Y: 460 + m_Width: 17 + m_Height: 25 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 181 + m_Metrics: + m_Width: 19.249998 + m_Height: 22.187498 + m_HorizontalBearingX: -0.43749997 + m_HorizontalBearingY: 20.874998 + m_HorizontalAdvance: 15.3125 + m_GlyphRect: + m_X: 145 + m_Y: 445 + m_Width: 19 + m_Height: 22 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 182 + m_Metrics: + m_Width: 17.249998 + m_Height: 22.812498 + m_HorizontalBearingX: -0.43749997 + m_HorizontalBearingY: 21.499998 + m_HorizontalAdvance: 15.5 + m_GlyphRect: + m_X: 402 + m_Y: 477 + m_Width: 17 + m_Height: 23 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 183 + m_Metrics: + m_Width: 14.999999 + m_Height: 13.374999 + m_HorizontalBearingX: 0.99999994 + m_HorizontalBearingY: 12.937499 + m_HorizontalAdvance: 19.3125 + m_GlyphRect: + m_X: 415 + m_Y: 359 + m_Width: 15 + m_Height: 13 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 184 + m_Metrics: + m_Width: 19.374998 + m_Height: 18.937498 + m_HorizontalBearingX: -2.7499998 + m_HorizontalBearingY: 16.312498 + m_HorizontalAdvance: 15.25 + m_GlyphRect: + m_X: 6 + m_Y: 487 + m_Width: 19 + m_Height: 19 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 185 + m_Metrics: + m_Width: 19.749998 + m_Height: 22.937498 + m_HorizontalBearingX: 0 + m_HorizontalBearingY: 21.749998 + m_HorizontalAdvance: 18.375 + m_GlyphRect: + m_X: 344 + m_Y: 444 + m_Width: 20 + m_Height: 23 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 186 + m_Metrics: + m_Width: 19.749998 + m_Height: 22.937498 + m_HorizontalBearingX: 0 + m_HorizontalBearingY: 21.749998 + m_HorizontalAdvance: 18.375 + m_GlyphRect: + m_X: 427 + m_Y: 257 + m_Width: 20 + m_Height: 23 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 187 + m_Metrics: + m_Width: 19.749998 + m_Height: 22.437498 + m_HorizontalBearingX: 0 + m_HorizontalBearingY: 21.187498 + m_HorizontalAdvance: 18.375 + m_GlyphRect: + m_X: 416 + m_Y: 292 + m_Width: 20 + m_Height: 22 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 188 + m_Metrics: + m_Width: 19.749998 + m_Height: 21.124998 + m_HorizontalBearingX: 0 + m_HorizontalBearingY: 19.874998 + m_HorizontalAdvance: 18.375 + m_GlyphRect: + m_X: 415 + m_Y: 326 + m_Width: 20 + m_Height: 21 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 189 + m_Metrics: + m_Width: 18.499998 + m_Height: 33.937496 + m_HorizontalBearingX: -0.87499994 + m_HorizontalBearingY: 22.249998 + m_HorizontalAdvance: 16.3125 + m_GlyphRect: + m_X: 350 + m_Y: 190 + m_Width: 18 + m_Height: 34 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 190 + m_Metrics: + m_Width: 19.124998 + m_Height: 33.687496 + m_HorizontalBearingX: -3.9999998 + m_HorizontalBearingY: 21.999998 + m_HorizontalAdvance: 16.4375 + m_GlyphRect: + m_X: 266 + m_Y: 190 + m_Width: 19 + m_Height: 34 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 191 + m_Metrics: + m_Width: 18.499998 + m_Height: 32.124996 + m_HorizontalBearingX: -0.87499994 + m_HorizontalBearingY: 20.374998 + m_HorizontalAdvance: 16.3125 + m_GlyphRect: + m_X: 235 + m_Y: 289 + m_Width: 18 + m_Height: 32 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 192 + m_Metrics: + m_Width: 24.749998 + m_Height: 3.4374998 + m_HorizontalBearingX: 0.99999994 + m_HorizontalBearingY: 8.249999 + m_HorizontalAdvance: 28.4375 + m_GlyphRect: + m_X: 77 + m_Y: 464 + m_Width: 25 + m_Height: 3 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 193 + m_Metrics: + m_Width: 30.874998 + m_Height: 3.4374998 + m_HorizontalBearingX: 1.4374999 + m_HorizontalBearingY: 8.249999 + m_HorizontalAdvance: 35.1875 + m_GlyphRect: + m_X: 209 + m_Y: 468 + m_Width: 31 + m_Height: 3 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 194 + m_Metrics: + m_Width: 3.6874998 + m_Height: 6.0624995 + m_HorizontalBearingX: 5.2499995 + m_HorizontalBearingY: 30.249998 + m_HorizontalAdvance: 6.0625 + m_GlyphRect: + m_X: 466 + m_Y: 340 + m_Width: 4 + m_Height: 6 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 195 + m_Metrics: + m_Width: 3.6874998 + m_Height: 6.0624995 + m_HorizontalBearingX: 5.1874995 + m_HorizontalBearingY: 30.249998 + m_HorizontalAdvance: 5.25 + m_GlyphRect: + m_X: 466 + m_Y: 358 + m_Width: 4 + m_Height: 6 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 196 + m_Metrics: + m_Width: 3.6249998 + m_Height: 6.0624995 + m_HorizontalBearingX: -0.43749997 + m_HorizontalBearingY: 2.3749998 + m_HorizontalAdvance: 8.25 + m_GlyphRect: + m_X: 482 + m_Y: 319 + m_Width: 4 + m_Height: 6 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 197 + m_Metrics: + m_Width: 8.312499 + m_Height: 6.0624995 + m_HorizontalBearingX: 5.2499995 + m_HorizontalBearingY: 30.249998 + m_HorizontalAdvance: 10.6875 + m_GlyphRect: + m_X: 497 + m_Y: 269 + m_Width: 8 + m_Height: 6 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 198 + m_Metrics: + m_Width: 8.312499 + m_Height: 6.0624995 + m_HorizontalBearingX: 5.1874995 + m_HorizontalBearingY: 30.249998 + m_HorizontalAdvance: 9.875 + m_GlyphRect: + m_X: 447 + m_Y: 322 + m_Width: 8 + m_Height: 6 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 199 + m_Metrics: + m_Width: 8.249999 + m_Height: 6.0624995 + m_HorizontalBearingX: -0.43749997 + m_HorizontalBearingY: 2.3749998 + m_HorizontalAdvance: 12.875 + m_GlyphRect: + m_X: 446 + m_Y: 340 + m_Width: 8 + m_Height: 6 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 200 + m_Metrics: + m_Width: 12.749999 + m_Height: 25.874998 + m_HorizontalBearingX: 2.9374998 + m_HorizontalBearingY: 24.812498 + m_HorizontalAdvance: 16 + m_GlyphRect: + m_X: 365 + m_Y: 407 + m_Width: 13 + m_Height: 26 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 201 + m_Metrics: + m_Width: 15.749999 + m_Height: 25.874998 + m_HorizontalBearingX: 1.5624999 + m_HorizontalBearingY: 24.812498 + m_HorizontalAdvance: 17.625 + m_GlyphRect: + m_X: 388 + m_Y: 318 + m_Width: 16 + m_Height: 26 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 202 + m_Metrics: + m_Width: 4.9374995 + m_Height: 4.4999995 + m_HorizontalBearingX: 1.6249999 + m_HorizontalBearingY: 9.437499 + m_HorizontalAdvance: 10.1875 + m_GlyphRect: + m_X: 497 + m_Y: 323 + m_Width: 5 + m_Height: 4 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 203 + m_Metrics: + m_Width: 16.624998 + m_Height: 2.8749998 + m_HorizontalBearingX: 0.31249997 + m_HorizontalBearingY: 2.4374998 + m_HorizontalAdvance: 22.0625 + m_GlyphRect: + m_X: 280 + m_Y: 450 + m_Width: 17 + m_Height: 3 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 204 + m_Metrics: + m_Width: 36.124996 + m_Height: 33.874996 + m_HorizontalBearingX: 3.3124998 + m_HorizontalBearingY: 30.249998 + m_HorizontalAdvance: 41.4375 + m_GlyphRect: + m_X: 95 + m_Y: 6 + m_Width: 36 + m_Height: 34 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 205 + m_Metrics: + m_Width: 8.187499 + m_Height: 11.374999 + m_HorizontalBearingX: 0.24999999 + m_HorizontalBearingY: 13.312499 + m_HorizontalAdvance: 12 + m_GlyphRect: + m_X: 497 + m_Y: 187 + m_Width: 8 + m_Height: 11 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 206 + m_Metrics: + m_Width: 8.187499 + m_Height: 11.374999 + m_HorizontalBearingX: 2.1249998 + m_HorizontalBearingY: 13.312499 + m_HorizontalAdvance: 12.75 + m_GlyphRect: + m_X: 497 + m_Y: 210 + m_Width: 8 + m_Height: 11 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 207 + m_Metrics: + m_Width: 21.624998 + m_Height: 33.874996 + m_HorizontalBearingX: -5.0624995 + m_HorizontalBearingY: 30.249998 + m_HorizontalAdvance: 11.5 + m_GlyphRect: + m_X: 307 + m_Y: 146 + m_Width: 22 + m_Height: 34 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 208 + m_Metrics: + m_Width: 25.749998 + m_Height: 33.812496 + m_HorizontalBearingX: 0.74999994 + m_HorizontalBearingY: 30.249998 + m_HorizontalAdvance: 28.875 + m_GlyphRect: + m_X: 308 + m_Y: 101 + m_Width: 26 + m_Height: 34 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 209 + m_Metrics: + m_Width: 18.999998 + m_Height: 13.624999 + m_HorizontalBearingX: 5.8749995 + m_HorizontalBearingY: 30.124998 + m_HorizontalAdvance: 23.375 + m_GlyphRect: + m_X: 324 + m_Y: 346 + m_Width: 19 + m_Height: 14 + m_Scale: 1 + m_AtlasIndex: 0 + m_CharacterTable: + - m_ElementType: 1 + m_Unicode: 32 + m_GlyphIndex: 1 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 33 + m_GlyphIndex: 2 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 34 + m_GlyphIndex: 3 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 35 + m_GlyphIndex: 4 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 36 + m_GlyphIndex: 5 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 37 + m_GlyphIndex: 6 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 38 + m_GlyphIndex: 7 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 39 + m_GlyphIndex: 8 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 40 + m_GlyphIndex: 9 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 41 + m_GlyphIndex: 10 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 42 + m_GlyphIndex: 11 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 43 + m_GlyphIndex: 12 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 44 + m_GlyphIndex: 13 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 45 + m_GlyphIndex: 14 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 46 + m_GlyphIndex: 15 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 47 + m_GlyphIndex: 16 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 48 + m_GlyphIndex: 17 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 49 + m_GlyphIndex: 18 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 50 + m_GlyphIndex: 19 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 51 + m_GlyphIndex: 20 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 52 + m_GlyphIndex: 21 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 53 + m_GlyphIndex: 22 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 54 + m_GlyphIndex: 23 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 55 + m_GlyphIndex: 24 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 56 + m_GlyphIndex: 25 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 57 + m_GlyphIndex: 26 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 58 + m_GlyphIndex: 27 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 59 + m_GlyphIndex: 28 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 60 + m_GlyphIndex: 29 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 61 + m_GlyphIndex: 30 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 62 + m_GlyphIndex: 31 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 63 + m_GlyphIndex: 32 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 64 + m_GlyphIndex: 33 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 65 + m_GlyphIndex: 34 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 66 + m_GlyphIndex: 35 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 67 + m_GlyphIndex: 36 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 68 + m_GlyphIndex: 37 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 69 + m_GlyphIndex: 38 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 70 + m_GlyphIndex: 39 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 71 + m_GlyphIndex: 40 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 72 + m_GlyphIndex: 41 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 73 + m_GlyphIndex: 42 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 74 + m_GlyphIndex: 43 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 75 + m_GlyphIndex: 44 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 76 + m_GlyphIndex: 45 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 77 + m_GlyphIndex: 46 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 78 + m_GlyphIndex: 47 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 79 + m_GlyphIndex: 48 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 80 + m_GlyphIndex: 49 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 81 + m_GlyphIndex: 50 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 82 + m_GlyphIndex: 51 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 83 + m_GlyphIndex: 52 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 84 + m_GlyphIndex: 53 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 85 + m_GlyphIndex: 54 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 86 + m_GlyphIndex: 55 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 87 + m_GlyphIndex: 56 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 88 + m_GlyphIndex: 57 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 89 + m_GlyphIndex: 58 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 90 + m_GlyphIndex: 59 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 91 + m_GlyphIndex: 60 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 92 + m_GlyphIndex: 61 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 93 + m_GlyphIndex: 62 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 94 + m_GlyphIndex: 63 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 95 + m_GlyphIndex: 64 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 96 + m_GlyphIndex: 65 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 97 + m_GlyphIndex: 66 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 98 + m_GlyphIndex: 67 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 99 + m_GlyphIndex: 68 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 100 + m_GlyphIndex: 69 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 101 + m_GlyphIndex: 70 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 102 + m_GlyphIndex: 71 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 103 + m_GlyphIndex: 72 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 104 + m_GlyphIndex: 73 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 105 + m_GlyphIndex: 74 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 106 + m_GlyphIndex: 75 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 107 + m_GlyphIndex: 76 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 108 + m_GlyphIndex: 77 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 109 + m_GlyphIndex: 78 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 110 + m_GlyphIndex: 79 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 111 + m_GlyphIndex: 80 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 112 + m_GlyphIndex: 81 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 113 + m_GlyphIndex: 82 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 114 + m_GlyphIndex: 83 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 115 + m_GlyphIndex: 84 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 116 + m_GlyphIndex: 85 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 117 + m_GlyphIndex: 86 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 118 + m_GlyphIndex: 87 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 119 + m_GlyphIndex: 88 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 120 + m_GlyphIndex: 89 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 121 + m_GlyphIndex: 90 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 122 + m_GlyphIndex: 91 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 123 + m_GlyphIndex: 92 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 124 + m_GlyphIndex: 93 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 125 + m_GlyphIndex: 94 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 126 + m_GlyphIndex: 95 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 160 + m_GlyphIndex: 96 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 161 + m_GlyphIndex: 97 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 162 + m_GlyphIndex: 98 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 163 + m_GlyphIndex: 99 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 164 + m_GlyphIndex: 100 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 165 + m_GlyphIndex: 101 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 166 + m_GlyphIndex: 102 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 167 + m_GlyphIndex: 103 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 168 + m_GlyphIndex: 104 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 169 + m_GlyphIndex: 105 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 170 + m_GlyphIndex: 106 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 171 + m_GlyphIndex: 107 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 172 + m_GlyphIndex: 108 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 173 + m_GlyphIndex: 109 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 174 + m_GlyphIndex: 110 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 175 + m_GlyphIndex: 111 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 176 + m_GlyphIndex: 112 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 177 + m_GlyphIndex: 113 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 178 + m_GlyphIndex: 114 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 179 + m_GlyphIndex: 115 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 180 + m_GlyphIndex: 116 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 181 + m_GlyphIndex: 117 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 182 + m_GlyphIndex: 118 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 183 + m_GlyphIndex: 119 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 184 + m_GlyphIndex: 120 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 185 + m_GlyphIndex: 121 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 186 + m_GlyphIndex: 122 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 187 + m_GlyphIndex: 123 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 188 + m_GlyphIndex: 124 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 189 + m_GlyphIndex: 125 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 190 + m_GlyphIndex: 126 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 191 + m_GlyphIndex: 127 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 192 + m_GlyphIndex: 128 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 193 + m_GlyphIndex: 129 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 194 + m_GlyphIndex: 130 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 195 + m_GlyphIndex: 131 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 196 + m_GlyphIndex: 132 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 197 + m_GlyphIndex: 133 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 198 + m_GlyphIndex: 134 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 199 + m_GlyphIndex: 135 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 200 + m_GlyphIndex: 136 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 201 + m_GlyphIndex: 137 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 202 + m_GlyphIndex: 138 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 203 + m_GlyphIndex: 139 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 204 + m_GlyphIndex: 140 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 205 + m_GlyphIndex: 141 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 206 + m_GlyphIndex: 142 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 207 + m_GlyphIndex: 143 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 208 + m_GlyphIndex: 144 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 209 + m_GlyphIndex: 145 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 210 + m_GlyphIndex: 146 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 211 + m_GlyphIndex: 147 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 212 + m_GlyphIndex: 148 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 213 + m_GlyphIndex: 149 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 214 + m_GlyphIndex: 150 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 215 + m_GlyphIndex: 151 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 216 + m_GlyphIndex: 152 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 217 + m_GlyphIndex: 153 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 218 + m_GlyphIndex: 154 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 219 + m_GlyphIndex: 155 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 220 + m_GlyphIndex: 156 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 221 + m_GlyphIndex: 157 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 222 + m_GlyphIndex: 158 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 223 + m_GlyphIndex: 159 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 224 + m_GlyphIndex: 160 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 225 + m_GlyphIndex: 161 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 226 + m_GlyphIndex: 162 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 227 + m_GlyphIndex: 163 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 228 + m_GlyphIndex: 164 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 229 + m_GlyphIndex: 165 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 230 + m_GlyphIndex: 166 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 231 + m_GlyphIndex: 167 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 232 + m_GlyphIndex: 168 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 233 + m_GlyphIndex: 169 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 234 + m_GlyphIndex: 170 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 235 + m_GlyphIndex: 171 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 236 + m_GlyphIndex: 172 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 237 + m_GlyphIndex: 173 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 238 + m_GlyphIndex: 174 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 239 + m_GlyphIndex: 175 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 240 + m_GlyphIndex: 176 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 241 + m_GlyphIndex: 177 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 242 + m_GlyphIndex: 178 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 243 + m_GlyphIndex: 179 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 244 + m_GlyphIndex: 180 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 245 + m_GlyphIndex: 181 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 246 + m_GlyphIndex: 182 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 247 + m_GlyphIndex: 183 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 248 + m_GlyphIndex: 184 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 249 + m_GlyphIndex: 185 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 250 + m_GlyphIndex: 186 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 251 + m_GlyphIndex: 187 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 252 + m_GlyphIndex: 188 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 253 + m_GlyphIndex: 189 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 254 + m_GlyphIndex: 190 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 255 + m_GlyphIndex: 191 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 8211 + m_GlyphIndex: 192 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 8212 + m_GlyphIndex: 193 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 8216 + m_GlyphIndex: 194 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 8217 + m_GlyphIndex: 195 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 8218 + m_GlyphIndex: 196 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 8220 + m_GlyphIndex: 197 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 8221 + m_GlyphIndex: 198 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 8222 + m_GlyphIndex: 199 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 8224 + m_GlyphIndex: 200 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 8225 + m_GlyphIndex: 201 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 8226 + m_GlyphIndex: 202 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 8230 + m_GlyphIndex: 203 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 8240 + m_GlyphIndex: 204 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 8249 + m_GlyphIndex: 205 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 8250 + m_GlyphIndex: 206 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 8260 + m_GlyphIndex: 207 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 8364 + m_GlyphIndex: 208 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 8482 + m_GlyphIndex: 209 + m_Scale: 1 + m_AtlasTextures: + - {fileID: 28235353958641270} + m_AtlasTextureIndex: 0 + m_UsedGlyphRects: [] + m_FreeGlyphRects: [] + m_fontInfo: + Name: Dancing Script + PointSize: 42 + Scale: 1 + CharacterCount: 209 + LineHeight: 50.375 + Baseline: 0 + Ascender: 38.6875 + CapHeight: 30.249998 + Descender: -11.8125 + CenterLine: 0 + SuperscriptOffset: 38.6875 + SubscriptOffset: -4.2000003 + SubSize: 0.5 + Underline: -4.2000003 + UnderlineThickness: 2.1000001 + strikethrough: 9.772727 + strikethroughThickness: 2.1000001 + TabWidth: 109.375 + Padding: 5 + AtlasWidth: 512 + AtlasHeight: 512 + atlas: {fileID: 28235353958641270} + m_AtlasWidth: 512 + m_AtlasHeight: 512 + m_AtlasPadding: 5 + m_AtlasRenderMode: 16426 + m_glyphInfoList: + - id: 32 + x: 6 + y: 517 + width: 10.9375 + height: 50.5 + xOffset: 0 + yOffset: 38.6875 + xAdvance: 10.9375 + scale: 1 + - id: 33 + x: 252 + y: 245 + width: 14.874999 + height: 30.687498 + xOffset: -0.93749994 + yOffset: 30.249998 + xAdvance: 10.9375 + scale: 1 + - id: 34 + x: 497 + y: 273 + width: 8.624999 + height: 6.0624995 + xOffset: 5.4999995 + yOffset: 30.249998 + xAdvance: 10.3125 + scale: 1 + - id: 35 + x: 272 + y: 468 + width: 27.437498 + height: 37.062496 + xOffset: 0.37499997 + yOffset: 30.249998 + xAdvance: 28.0625 + scale: 1 + - id: 36 + x: 75 + y: 201 + width: 20.812498 + height: 37.062496 + xOffset: 0 + yOffset: 30.249998 + xAdvance: 22.3125 + scale: 1 + - id: 37 + x: 77 + y: 60 + width: 24.062498 + height: 33.874996 + xOffset: 3.2499998 + yOffset: 30.249998 + xAdvance: 29.3125 + scale: 1 + - id: 38 + x: 271 + y: 423 + width: 26.812498 + height: 33.812496 + xOffset: -0.18749999 + yOffset: 30.249998 + xAdvance: 25.875 + scale: 1 + - id: 39 + x: 400 + y: 270 + width: 3.6249998 + height: 6.0624995 + xOffset: 5.4999995 + yOffset: 30.249998 + xAdvance: 5.25 + scale: 1 + - id: 40 + x: 174 + y: 214 + width: 12.937499 + height: 33.874996 + xOffset: 2.3749998 + yOffset: 30.249998 + xAdvance: 10.8125 + scale: 1 + - id: 41 + x: 175 + y: 169 + width: 12.937499 + height: 33.874996 + xOffset: -2.5624998 + yOffset: 30.249998 + xAdvance: 11.25 + scale: 1 + - id: 42 + x: 441 + y: 140 + width: 13.312499 + height: 13.249999 + xOffset: 4.8124995 + yOffset: 30.187498 + xAdvance: 16.4375 + scale: 1 + - id: 43 + x: 436 + y: 114 + width: 14.999999 + height: 14.999999 + xOffset: 0.12499999 + yOffset: 14.562499 + xAdvance: 17.125 + scale: 1 + - id: 44 + x: 467 + y: 184 + width: 3.6249998 + height: 6.0624995 + xOffset: -0.43749997 + yOffset: 2.3749998 + xAdvance: 8.25 + scale: 1 + - id: 45 + x: 108 + y: 354 + width: 14.999999 + height: 2.0624998 + xOffset: 1.4999999 + yOffset: 8.124999 + xAdvance: 20.3125 + scale: 1 + - id: 46 + x: 337 + y: 6 + width: 3.5624998 + height: 2.8749998 + xOffset: 0.31249997 + yOffset: 2.4374998 + xAdvance: 9 + scale: 1 + - id: 47 + x: 76 + y: 152 + width: 19.499998 + height: 37.062496 + xOffset: -2.8749998 + yOffset: 30.249998 + xAdvance: 13.875 + scale: 1 + - id: 48 + x: 107 + y: 259 + width: 23.499998 + height: 33.874996 + xOffset: 2.1874998 + yOffset: 30.249998 + xAdvance: 26.4375 + scale: 1 + - id: 49 + x: 142 + y: 259 + width: 15.249999 + height: 33.874996 + xOffset: -1.9374999 + yOffset: 30.249998 + xAdvance: 15.3125 + scale: 1 + - id: 50 + x: 111 + y: 124 + width: 21.812498 + height: 33.874996 + xOffset: -0.81249994 + yOffset: 30.249998 + xAdvance: 23.5 + scale: 1 + - id: 51 + x: 113 + y: 79 + width: 19.437498 + height: 33.874996 + xOffset: 0.24999999 + yOffset: 30.249998 + xAdvance: 21.4375 + scale: 1 + - id: 52 + x: 143 + y: 214 + width: 19.374998 + height: 33.874996 + xOffset: -0.37499997 + yOffset: 30.249998 + xAdvance: 20.0625 + scale: 1 + - id: 53 + x: 134 + y: 326 + width: 20.187498 + height: 33.874996 + xOffset: -0.18749999 + yOffset: 30.249998 + xAdvance: 20.3125 + scale: 1 + - id: 54 + x: 143 + y: 169 + width: 20.124998 + height: 33.874996 + xOffset: 1.9999999 + yOffset: 30.249998 + xAdvance: 23.5625 + scale: 1 + - id: 55 + x: 175 + y: 124 + width: 18.062498 + height: 33.812496 + xOffset: 2.4374998 + yOffset: 30.187498 + xAdvance: 16.9375 + scale: 1 + - id: 56 + x: 178 + y: 79 + width: 18.499998 + height: 33.812496 + xOffset: 1.1874999 + yOffset: 30.249998 + xAdvance: 22.125 + scale: 1 + - id: 57 + x: 144 + y: 124 + width: 19.437498 + height: 33.874996 + xOffset: 3.5624998 + yOffset: 30.249998 + xAdvance: 23.75 + scale: 1 + - id: 58 + x: 480 + y: 242 + width: 5.9999995 + height: 13.374999 + xOffset: 0.37499997 + yOffset: 12.937499 + xAdvance: 9.0625 + scale: 1 + - id: 59 + x: 336 + y: 124 + width: 6.3749995 + height: 16.624998 + xOffset: 0 + yOffset: 12.937499 + xAdvance: 8.9375 + scale: 1 + - id: 60 + x: 497 + y: 494 + width: 8.187499 + height: 11.374999 + xOffset: 0.87499994 + yOffset: 13.312499 + xAdvance: 13 + scale: 1 + - id: 61 + x: 272 + y: 147 + width: 14.999999 + height: 6.2499995 + xOffset: 2.1249998 + yOffset: 10.749999 + xAdvance: 21.125 + scale: 1 + - id: 62 + x: 497 + y: 471 + width: 8.187499 + height: 11.374999 + xOffset: 2.4999998 + yOffset: 13.312499 + xAdvance: 13.625 + scale: 1 + - id: 63 + x: 278 + y: 245 + width: 14.437499 + height: 30.687498 + xOffset: 4.4999995 + yOffset: 30.249998 + xAdvance: 18.375 + scale: 1 + - id: 64 + x: 65 + y: 6 + width: 22.249998 + height: 21.624998 + xOffset: 0.12499999 + yOffset: 16.624998 + xAdvance: 24.5 + scale: 1 + - id: 65 + x: 107 + y: 214 + width: 24.749998 + height: 33.874996 + xOffset: -0.74999994 + yOffset: 30.249998 + xAdvance: 24.875 + scale: 1 + - id: 66 + x: 144 + y: 79 + width: 22.874998 + height: 33.874996 + xOffset: 0.74999994 + yOffset: 30.249998 + xAdvance: 25.5625 + scale: 1 + - id: 67 + x: 176 + y: 34 + width: 21.249998 + height: 33.812496 + xOffset: 0.87499994 + yOffset: 30.249998 + xAdvance: 22.4375 + scale: 1 + - id: 68 + x: 107 + y: 169 + width: 24.624998 + height: 33.874996 + xOffset: 2.3124998 + yOffset: 30.249998 + xAdvance: 27.4375 + scale: 1 + - id: 69 + x: 204 + y: 281 + width: 21.312498 + height: 33.812496 + xOffset: -0.68749994 + yOffset: 30.249998 + xAdvance: 20.9375 + scale: 1 + - id: 70 + x: 169 + y: 282 + width: 23.062498 + height: 33.624996 + xOffset: 2.7499998 + yOffset: 30.062498 + xAdvance: 20.25 + scale: 1 + - id: 71 + x: 205 + y: 146 + width: 21.624998 + height: 33.812496 + xOffset: 0.87499994 + yOffset: 30.249998 + xAdvance: 23.25 + scale: 1 + - id: 72 + x: 199 + y: 191 + width: 24.249998 + height: 33.874996 + xOffset: 2.2499998 + yOffset: 30.249998 + xAdvance: 25.9375 + scale: 1 + - id: 73 + x: 208 + y: 101 + width: 24.624998 + height: 33.874996 + xOffset: -1.6249999 + yOffset: 30.187498 + xAdvance: 19.25 + scale: 1 + - id: 74 + x: 238 + y: 146 + width: 22.749998 + height: 33.812496 + xOffset: -1.3124999 + yOffset: 30.187498 + xAdvance: 17.25 + scale: 1 + - id: 75 + x: 209 + y: 56 + width: 24.187498 + height: 33.874996 + xOffset: 1.2499999 + yOffset: 30.249998 + xAdvance: 24.75 + scale: 1 + - id: 76 + x: 309 + y: 422 + width: 26.874998 + height: 33.874996 + xOffset: -3.1249998 + yOffset: 30.249998 + xAdvance: 23.9375 + scale: 1 + - id: 77 + x: 189 + y: 472 + width: 31.874998 + height: 33.874996 + xOffset: -0.74999994 + yOffset: 30.249998 + xAdvance: 32.0625 + scale: 1 + - id: 78 + x: 198 + y: 236 + width: 25.937498 + height: 33.874996 + xOffset: 1.8749999 + yOffset: 30.249998 + xAdvance: 26.875 + scale: 1 + - id: 79 + x: 244 + y: 101 + width: 24.437498 + height: 33.812496 + xOffset: 0.87499994 + yOffset: 30.249998 + xAdvance: 26.1875 + scale: 1 + - id: 80 + x: 245 + y: 56 + width: 23.874998 + height: 33.874996 + xOffset: 0.74999994 + yOffset: 30.249998 + xAdvance: 22.125 + scale: 1 + - id: 81 + x: 461 + y: 419 + width: 25.124998 + height: 35.249996 + xOffset: 1.4374999 + yOffset: 30.249998 + xAdvance: 29.125 + scale: 1 + - id: 82 + x: 76 + y: 105 + width: 23.687498 + height: 35.312496 + xOffset: 0.62499994 + yOffset: 30.249998 + xAdvance: 24.25 + scale: 1 + - id: 83 + x: 259 + y: 11 + width: 20.937498 + height: 33.874996 + xOffset: -0.31249997 + yOffset: 30.249998 + xAdvance: 22.5 + scale: 1 + - id: 84 + x: 206 + y: 377 + width: 23.812498 + height: 33.874996 + xOffset: 2.8749998 + yOffset: 30.249998 + xAdvance: 20.5625 + scale: 1 + - id: 85 + x: 232 + y: 471 + width: 28.812498 + height: 34.437496 + xOffset: 0.99999994 + yOffset: 30.249998 + xAdvance: 29.625 + scale: 1 + - id: 86 + x: 347 + y: 421 + width: 26.062498 + height: 33.874996 + xOffset: 0.99999994 + yOffset: 30.249998 + xAdvance: 26.5625 + scale: 1 + - id: 87 + x: 46 + y: 472 + width: 37.562496 + height: 33.874996 + xOffset: 0.99999994 + yOffset: 30.249998 + xAdvance: 38.0625 + scale: 1 + - id: 88 + x: 385 + y: 419 + width: 26.312498 + height: 34.999996 + xOffset: 0.99999994 + yOffset: 30.374998 + xAdvance: 27.8125 + scale: 1 + - id: 89 + x: 167 + y: 422 + width: 28.812498 + height: 38.124996 + xOffset: 0.93749994 + yOffset: 30.249998 + xAdvance: 28 + scale: 1 + - id: 90 + x: 231 + y: 426 + width: 28.812498 + height: 33.874996 + xOffset: -1.0624999 + yOffset: 30.249998 + xAdvance: 26.5 + scale: 1 + - id: 91 + x: 221 + y: 332 + width: 17.437498 + height: 33.874996 + xOffset: 1.1874999 + yOffset: 30.249998 + xAdvance: 16.5 + scale: 1 + - id: 92 + x: 82 + y: 302 + width: 11.374999 + height: 37.062496 + xOffset: 6.8749995 + yOffset: 30.249998 + xAdvance: 23.5 + scale: 1 + - id: 93 + x: 237 + y: 287 + width: 17.374998 + height: 33.937496 + xOffset: -0.62499994 + yOffset: 30.249998 + xAdvance: 17.25 + scale: 1 + - id: 94 + x: 88 + y: 351 + width: 8.562499 + height: 5.9374995 + xOffset: 0 + yOffset: 23.062498 + xAdvance: 8.5 + scale: 1 + - id: 95 + x: 46 + y: 351 + width: 30.874998 + height: 3.4374998 + xOffset: -0.87499994 + yOffset: 0.68749994 + xAdvance: 35.5 + scale: 1 + - id: 96 + x: 499 + y: 219 + width: 5.3124995 + height: 6.1874995 + xOffset: 0 + yOffset: 23.187498 + xAdvance: 5.25 + scale: 1 + - id: 97 + x: 165 + y: 6 + width: 20.624998 + height: 16.437498 + xOffset: -1.1249999 + yOffset: 14.437499 + xAdvance: 18.3125 + scale: 1 + - id: 98 + x: 241 + y: 381 + width: 18.374998 + height: 33.062496 + xOffset: -0.43749997 + yOffset: 29.999998 + xAdvance: 16.5625 + scale: 1 + - id: 99 + x: 388 + y: 140 + width: 15.124999 + height: 16.562498 + xOffset: -0.24999999 + yOffset: 14.249999 + xAdvance: 13.5625 + scale: 1 + - id: 100 + x: 380 + y: 376 + width: 23.562498 + height: 31.499998 + xOffset: -0.68749994 + yOffset: 30.249998 + xAdvance: 19.875 + scale: 1 + - id: 101 + x: 375 + y: 16 + width: 15.874999 + height: 16.999998 + xOffset: -0.62499994 + yOffset: 15.124999 + xAdvance: 14 + scale: 1 + - id: 102 + x: 43 + y: 248 + width: 19.437498 + height: 41.999996 + xOffset: -2.8749998 + yOffset: 30.249998 + xAdvance: 13.125 + scale: 1 + - id: 103 + x: 304 + y: 249 + width: 18.437498 + height: 26.312498 + xOffset: -0.87499994 + yOffset: 14.624999 + xAdvance: 16.3125 + scale: 1 + - id: 104 + x: 340 + y: 333 + width: 21.062498 + height: 31.624998 + xOffset: 0.24999999 + yOffset: 29.999998 + xAdvance: 20 + scale: 1 + - id: 105 + x: 431 + y: 48 + width: 11.499999 + height: 22.749998 + xOffset: -0.24999999 + yOffset: 21.749998 + xAdvance: 10.125 + scale: 1 + - id: 106 + x: 297 + y: 287 + width: 18.562498 + height: 33.687496 + xOffset: -8.124999 + yOffset: 21.937498 + xAdvance: 9.1875 + scale: 1 + - id: 107 + x: 408 + y: 294 + width: 19.749998 + height: 31.624998 + xOffset: 0.12499999 + yOffset: 29.999998 + xAdvance: 18.75 + scale: 1 + - id: 108 + x: 439 + y: 294 + width: 14.437499 + height: 31.499998 + xOffset: 0.12499999 + yOffset: 30.249998 + xAdvance: 9.9375 + scale: 1 + - id: 109 + x: 359 + y: 261 + width: 29.937498 + height: 15.249999 + xOffset: -1.4999999 + yOffset: 13.999999 + xAdvance: 27.125 + scale: 1 + - id: 110 + x: 354 + y: 149 + width: 22.437498 + height: 13.062499 + xOffset: -1.6249999 + yOffset: 12.312499 + xAdvance: 19.5625 + scale: 1 + - id: 111 + x: 436 + y: 266 + width: 17.062498 + height: 16.124998 + xOffset: -0.43749997 + yOffset: 14.812499 + xAdvance: 15.3125 + scale: 1 + - id: 112 + x: 134 + y: 6 + width: 19.124998 + height: 27.437498 + xOffset: -3.9999998 + yOffset: 15.687499 + xAdvance: 16.4375 + scale: 1 + - id: 113 + x: 265 + y: 207 + width: 18.749998 + height: 26.749998 + xOffset: -0.68749994 + yOffset: 14.999999 + xAdvance: 16.8125 + scale: 1 + - id: 114 + x: 447 + y: 202 + width: 15.999999 + height: 18.249998 + xOffset: 0 + yOffset: 17.187498 + xAdvance: 14.625 + scale: 1 + - id: 115 + x: 37 + y: 6 + width: 16.499998 + height: 18.687498 + xOffset: -0.87499994 + yOffset: 16.624998 + xAdvance: 14.5 + scale: 1 + - id: 116 + x: 334 + y: 249 + width: 13.499999 + height: 26.999998 + xOffset: -0.18749999 + yOffset: 25.124998 + xAdvance: 12 + scale: 1 + - id: 117 + x: 344 + y: 20 + width: 19.749998 + height: 13.749999 + xOffset: 0 + yOffset: 12.562499 + xAdvance: 18.375 + scale: 1 + - id: 118 + x: 398 + y: 234 + width: 17.999998 + height: 15.562499 + xOffset: 0.37499997 + yOffset: 13.999999 + xAdvance: 17.125 + scale: 1 + - id: 119 + x: 359 + y: 234 + width: 27.249998 + height: 15.562499 + xOffset: 0 + yOffset: 13.999999 + xAdvance: 25.9375 + scale: 1 + - id: 120 + x: 197 + y: 6 + width: 18.374998 + height: 16.437498 + xOffset: 0.37499997 + yOffset: 13.999999 + xAdvance: 17.5625 + scale: 1 + - id: 121 + x: 324 + y: 177 + width: 18.499998 + height: 24.749998 + xOffset: -0.87499994 + yOffset: 12.999999 + xAdvance: 16.3125 + scale: 1 + - id: 122 + x: 295 + y: 207 + width: 17.562498 + height: 26.562498 + xOffset: -2.9999998 + yOffset: 14.874999 + xAdvance: 13.3125 + scale: 1 + - id: 123 + x: 284 + y: 333 + width: 11.437499 + height: 33.874996 + xOffset: 1.4999999 + yOffset: 30.249998 + xAdvance: 10.9375 + scale: 1 + - id: 124 + x: 204 + y: 326 + width: 5.5624995 + height: 34.812496 + xOffset: 2.2499998 + yOffset: 29.312498 + xAdvance: 10.875 + scale: 1 + - id: 125 + x: 327 + y: 287 + width: 11.874999 + height: 33.874996 + xOffset: -0.93749994 + yOffset: 30.249998 + xAdvance: 10.75 + scale: 1 + - id: 126 + x: 308 + y: 63 + width: 12.874999 + height: 3.1874998 + xOffset: 1.6249999 + yOffset: 8.687499 + xAdvance: 18.25 + scale: 1 + - id: 160 + x: 6 + y: 517 + width: 0 + height: 0 + xOffset: 0 + yOffset: 0 + xAdvance: 10.9375 + scale: 1 + - id: 161 + x: 272 + y: 165 + width: 14.874999 + height: 30.687498 + xOffset: -3.3749998 + yOffset: 20.187498 + xAdvance: 11.0625 + scale: 1 + - id: 162 + x: 207 + y: 423 + width: 12.999999 + height: 37.062496 + xOffset: 2.1249998 + yOffset: 30.249998 + xAdvance: 16.9375 + scale: 1 + - id: 163 + x: 166 + y: 327 + width: 26.874998 + height: 33.874996 + xOffset: -0.93749994 + yOffset: 30.249998 + xAdvance: 27.3125 + scale: 1 + - id: 164 + x: 406 + y: 337 + width: 25.624998 + height: 25.812498 + xOffset: 3.4374998 + yOffset: 26.812498 + xAdvance: 29.25 + scale: 1 + - id: 165 + x: 166 + y: 372 + width: 28.812498 + height: 38.124996 + xOffset: 4.5624995 + yOffset: 30.249998 + xAdvance: 34 + scale: 1 + - id: 166 + x: 235 + y: 235 + width: 5.5624995 + height: 34.812496 + xOffset: 2.2499998 + yOffset: 29.312498 + xAdvance: 10.9375 + scale: 1 + - id: 167 + x: 380 + y: 288 + width: 16.499998 + height: 33.812496 + xOffset: 0.24999999 + yOffset: 30.249998 + xAdvance: 17.5 + scale: 1 + - id: 168 + x: 315 + y: 11 + width: 10.062499 + height: 4.1249995 + xOffset: 0 + yOffset: 21.312498 + xAdvance: 10.0625 + scale: 1 + - id: 169 + x: 465 + y: 267 + width: 20.687498 + height: 21.874998 + xOffset: 3.3124998 + yOffset: 26.062498 + xAdvance: 24.875 + scale: 1 + - id: 170 + x: 169 + y: 259 + width: 14.437499 + height: 11.499999 + xOffset: 4.3749995 + yOffset: 30.249998 + xAdvance: 16.0625 + scale: 1 + - id: 171 + x: 386 + y: 117 + width: 14.499999 + height: 11.374999 + xOffset: 0.24999999 + yOffset: 13.312499 + xAdvance: 18.3125 + scale: 1 + - id: 172 + x: 134 + y: 304 + width: 23.937498 + height: 10.499999 + xOffset: 1.8124999 + yOffset: 11.874999 + xAdvance: 28 + scale: 1 + - id: 173 + x: 298 + y: 153 + width: 14.937499 + height: 2.0624998 + xOffset: 1.4374999 + yOffset: 8.124999 + xAdvance: 20.375 + scale: 1 + - id: 174 + x: 354 + y: 116 + width: 20.687498 + height: 21.874998 + xOffset: 3.3124998 + yOffset: 26.062498 + xAdvance: 24.875 + scale: 1 + - id: 175 + x: 291 + y: 9 + width: 12.062499 + height: 2.8124998 + xOffset: 2.4999998 + yOffset: 20.374998 + xAdvance: 17.125 + scale: 1 + - id: 176 + x: 497 + y: 255 + width: 8.312499 + height: 6.9999995 + xOffset: 3.8124998 + yOffset: 23.624998 + xAdvance: 11.125 + scale: 1 + - id: 177 + x: 474 + y: 205 + width: 13.499999 + height: 15.374999 + xOffset: 2.2499998 + yOffset: 16.812498 + xAdvance: 18.875 + scale: 1 + - id: 178 + x: 393 + y: 206 + width: 11.249999 + height: 16.999998 + xOffset: 2.9999998 + yOffset: 29.749998 + xAdvance: 14.9375 + scale: 1 + - id: 179 + x: 415 + y: 266 + width: 9.999999 + height: 16.999998 + xOffset: 3.3749998 + yOffset: 30.187498 + xAdvance: 12.375 + scale: 1 + - id: 180 + x: 499 + y: 201 + width: 5.3124995 + height: 6.1874995 + xOffset: 3.6874998 + yOffset: 23.187498 + xAdvance: 5.25 + scale: 1 + - id: 181 + x: 99 + y: 6 + width: 23.874998 + height: 27.437498 + xOffset: -1.6874999 + yOffset: 15.687499 + xAdvance: 24.5625 + scale: 1 + - id: 182 + x: 345 + y: 376 + width: 23.124998 + height: 33.687496 + xOffset: 2.4999998 + yOffset: 30.124998 + xAdvance: 27.0625 + scale: 1 + - id: 183 + x: 352 + y: 6 + width: 3.4999998 + height: 2.8749998 + xOffset: 1.5624999 + yOffset: 8.124999 + xAdvance: 8.75 + scale: 1 + - id: 184 + x: 498 + y: 423 + width: 7.4999995 + height: 8.874999 + xOffset: 0.81249994 + yOffset: 0 + xAdvance: 9.125 + scale: 1 + - id: 185 + x: 498 + y: 443 + width: 7.9374995 + height: 16.937498 + xOffset: 2.7499998 + yOffset: 30.124998 + xAdvance: 10.9375 + scale: 1 + - id: 186 + x: 458 + y: 232 + width: 10.437499 + height: 11.249999 + xOffset: 4.4374995 + yOffset: 30.249998 + xAdvance: 11.6875 + scale: 1 + - id: 187 + x: 412 + y: 82 + width: 14.499999 + height: 11.374999 + xOffset: 2.1249998 + yOffset: 13.312499 + xAdvance: 19.125 + scale: 1 + - id: 188 + x: 250 + y: 333 + width: 22.874998 + height: 33.874996 + xOffset: 1.8749999 + yOffset: 30.249998 + xAdvance: 26.9375 + scale: 1 + - id: 189 + x: 415 + y: 374 + width: 23.562498 + height: 33.874996 + xOffset: 2.1249998 + yOffset: 30.249998 + xAdvance: 29.3125 + scale: 1 + - id: 190 + x: 450 + y: 374 + width: 23.062498 + height: 33.874996 + xOffset: 3.4374998 + yOffset: 30.249998 + xAdvance: 28.75 + scale: 1 + - id: 191 + x: 298 + y: 167 + width: 14.499999 + height: 28.124998 + xOffset: -2.1249998 + yOffset: 16.437498 + xAdvance: 17.4375 + scale: 1 + - id: 192 + x: 6 + y: 195 + width: 24.749998 + height: 41.249996 + xOffset: -0.74999994 + yOffset: 37.624996 + xAdvance: 24.875 + scale: 1 + - id: 193 + x: 86 + y: 419 + width: 27.812498 + height: 41.249996 + xOffset: -0.74999994 + yOffset: 37.624996 + xAdvance: 24.875 + scale: 1 + - id: 194 + x: 6 + y: 301 + width: 27.687498 + height: 40.874996 + xOffset: -0.74999994 + yOffset: 37.249996 + xAdvance: 24.875 + scale: 1 + - id: 195 + x: 125 + y: 422 + width: 30.187498 + height: 38.999996 + xOffset: -0.74999994 + yOffset: 35.437496 + xAdvance: 24.875 + scale: 1 + - id: 196 + x: 86 + y: 368 + width: 28.749998 + height: 39.374996 + xOffset: -0.74999994 + yOffset: 35.812496 + xAdvance: 24.875 + scale: 1 + - id: 197 + x: 6 + y: 406 + width: 28.374998 + height: 42.312496 + xOffset: -0.74999994 + yOffset: 38.687496 + xAdvance: 24.875 + scale: 1 + - id: 198 + x: 143 + y: 472 + width: 34.562496 + height: 33.874996 + xOffset: -0.74999994 + yOffset: 30.249998 + xAdvance: 31.375 + scale: 1 + - id: 199 + x: 74 + y: 250 + width: 21.249998 + height: 39.062496 + xOffset: 0.87499994 + yOffset: 30.249998 + xAdvance: 22.4375 + scale: 1 + - id: 200 + x: 42 + y: 195 + width: 21.312498 + height: 41.249996 + xOffset: -0.68749994 + yOffset: 37.624996 + xAdvance: 20.9375 + scale: 1 + - id: 201 + x: 42 + y: 142 + width: 22.999998 + height: 41.249996 + xOffset: -0.68749994 + yOffset: 37.624996 + xAdvance: 20.9375 + scale: 1 + - id: 202 + x: 42 + y: 90 + width: 22.874998 + height: 40.874996 + xOffset: -0.68749994 + yOffset: 37.249996 + xAdvance: 20.9375 + scale: 1 + - id: 203 + x: 42 + y: 39 + width: 23.937498 + height: 39.374996 + xOffset: -0.68749994 + yOffset: 35.812496 + xAdvance: 20.9375 + scale: 1 + - id: 204 + x: 6 + y: 142 + width: 24.624998 + height: 41.312496 + xOffset: -1.6249999 + yOffset: 37.624996 + xAdvance: 19.25 + scale: 1 + - id: 205 + x: 6 + y: 89 + width: 24.624998 + height: 41.312496 + xOffset: -1.6249999 + yOffset: 37.624996 + xAdvance: 19.25 + scale: 1 + - id: 206 + x: 425 + y: 465 + width: 24.624998 + height: 40.937496 + xOffset: -1.6249999 + yOffset: 37.249996 + xAdvance: 19.25 + scale: 1 + - id: 207 + x: 461 + y: 466 + width: 24.624998 + height: 39.437496 + xOffset: -1.6249999 + yOffset: 35.812496 + xAdvance: 19.25 + scale: 1 + - id: 208 + x: 271 + y: 378 + width: 25.687498 + height: 33.874996 + xOffset: 1.3124999 + yOffset: 30.249998 + xAdvance: 27.4375 + scale: 1 + - id: 209 + x: 45 + y: 301 + width: 25.937498 + height: 38.999996 + xOffset: 1.8749999 + yOffset: 35.437496 + xAdvance: 26.875 + scale: 1 + - id: 210 + x: 6 + y: 36 + width: 24.437498 + height: 41.249996 + xOffset: 0.87499994 + yOffset: 37.624996 + xAdvance: 26.1875 + scale: 1 + - id: 211 + x: 6 + y: 248 + width: 25.374998 + height: 41.249996 + xOffset: 0.87499994 + yOffset: 37.624996 + xAdvance: 26.1875 + scale: 1 + - id: 212 + x: 388 + y: 465 + width: 25.249998 + height: 40.874996 + xOffset: 0.87499994 + yOffset: 37.249996 + xAdvance: 26.1875 + scale: 1 + - id: 213 + x: 311 + y: 467 + width: 27.749998 + height: 38.999996 + xOffset: 0.87499994 + yOffset: 35.437496 + xAdvance: 26.1875 + scale: 1 + - id: 214 + x: 350 + y: 466 + width: 26.312498 + height: 39.374996 + xOffset: 0.87499994 + yOffset: 35.812496 + xAdvance: 26.1875 + scale: 1 + - id: 215 + x: 438 + y: 91 + width: 9.937499 + height: 11.999999 + xOffset: 1.9999999 + yOffset: 12.812499 + xAdvance: 15.8125 + scale: 1 + - id: 216 + x: 423 + y: 419 + width: 26.999998 + height: 34.437496 + xOffset: 0.87499994 + yOffset: 30.249998 + xAdvance: 26.1875 + scale: 1 + - id: 217 + x: 46 + y: 419 + width: 28.812498 + height: 41.812496 + xOffset: 0.99999994 + yOffset: 37.624996 + xAdvance: 29.625 + scale: 1 + - id: 218 + x: 6 + y: 353 + width: 28.812498 + height: 41.812496 + xOffset: 0.99999994 + yOffset: 37.624996 + xAdvance: 29.625 + scale: 1 + - id: 219 + x: 46 + y: 366 + width: 28.812498 + height: 41.437496 + xOffset: 0.99999994 + yOffset: 37.249996 + xAdvance: 29.625 + scale: 1 + - id: 220 + x: 126 + y: 371 + width: 28.812498 + height: 39.937496 + xOffset: 0.99999994 + yOffset: 35.812496 + xAdvance: 29.625 + scale: 1 + - id: 221 + x: 6 + y: 460 + width: 28.812498 + height: 45.499996 + xOffset: 0.93749994 + yOffset: 37.624996 + xAdvance: 28 + scale: 1 + - id: 222 + x: 485 + y: 374 + width: 20.874998 + height: 33.687496 + xOffset: 1.2499999 + yOffset: 30.124998 + xAdvance: 21.3125 + scale: 1 + - id: 223 + x: 105 + y: 304 + width: 17.999998 + height: 35.062496 + xOffset: -1.8124999 + yOffset: 30.249998 + xAdvance: 17.9375 + scale: 1 + - id: 224 + x: 443 + y: 337 + width: 20.624998 + height: 25.374998 + xOffset: -1.1249999 + yOffset: 23.437498 + xAdvance: 18.3125 + scale: 1 + - id: 225 + x: 475 + y: 337 + width: 20.624998 + height: 25.374998 + xOffset: -1.1249999 + yOffset: 23.437498 + xAdvance: 18.3125 + scale: 1 + - id: 226 + x: 324 + y: 213 + width: 20.624998 + height: 24.874998 + xOffset: -1.1249999 + yOffset: 22.874998 + xAdvance: 18.3125 + scale: 1 + - id: 227 + x: 113 + y: 45 + width: 20.874998 + height: 22.312498 + xOffset: -1.1249999 + yOffset: 20.312498 + xAdvance: 18.3125 + scale: 1 + - id: 228 + x: 227 + y: 6 + width: 20.624998 + height: 23.562498 + xOffset: -1.1249999 + yOffset: 21.562498 + xAdvance: 18.3125 + scale: 1 + - id: 229 + x: 465 + y: 300 + width: 20.624998 + height: 25.624998 + xOffset: -1.1249999 + yOffset: 23.687498 + xAdvance: 18.3125 + scale: 1 + - id: 230 + x: 356 + y: 205 + width: 25.249998 + height: 17.124998 + xOffset: -1.1249999 + yOffset: 15.124999 + xAdvance: 22.8125 + scale: 1 + - id: 231 + x: 375 + y: 44 + width: 15.124999 + height: 23.062498 + xOffset: -0.24999999 + yOffset: 14.249999 + xAdvance: 13.5625 + scale: 1 + - id: 232 + x: 280 + y: 110 + width: 15.874999 + height: 25.562498 + xOffset: -0.62499994 + yOffset: 23.749998 + xAdvance: 14 + scale: 1 + - id: 233 + x: 280 + y: 73 + width: 16.312498 + height: 25.562498 + xOffset: -0.62499994 + yOffset: 23.749998 + xAdvance: 14 + scale: 1 + - id: 234 + x: 308 + y: 78 + width: 16.437498 + height: 25.062498 + xOffset: -0.62499994 + yOffset: 23.187498 + xAdvance: 14 + scale: 1 + - id: 235 + x: 402 + y: 46 + width: 17.062498 + height: 23.749998 + xOffset: -0.62499994 + yOffset: 21.874998 + xAdvance: 14 + scale: 1 + - id: 236 + x: 389 + y: 81 + width: 11.499999 + height: 24.499998 + xOffset: -0.24999999 + yOffset: 23.499998 + xAdvance: 10.125 + scale: 1 + - id: 237 + x: 291 + y: 23 + width: 12.374999 + height: 24.499998 + xOffset: -0.24999999 + yOffset: 23.499998 + xAdvance: 10.125 + scale: 1 + - id: 238 + x: 412 + y: 105 + width: 12.937499 + height: 23.999998 + xOffset: -0.24999999 + yOffset: 22.937498 + xAdvance: 10.0625 + scale: 1 + - id: 239 + x: 431 + y: 14 + width: 12.749999 + height: 22.687498 + xOffset: -0.24999999 + yOffset: 21.624998 + xAdvance: 10.1875 + scale: 1 + - id: 240 + x: 373 + y: 333 + width: 21.874998 + height: 31.437498 + xOffset: -0.68749994 + yOffset: 30.249998 + xAdvance: 19.875 + scale: 1 + - id: 241 + x: 354 + y: 174 + width: 22.437498 + height: 19.187498 + xOffset: -1.6249999 + yOffset: 18.374998 + xAdvance: 19.5625 + scale: 1 + - id: 242 + x: 307 + y: 115 + width: 17.062498 + height: 25.249998 + xOffset: -0.43749997 + yOffset: 23.999998 + xAdvance: 15.3125 + scale: 1 + - id: 243 + x: 336 + y: 79 + width: 17.062498 + height: 25.249998 + xOffset: -0.43749997 + yOffset: 23.999998 + xAdvance: 15.3125 + scale: 1 + - id: 244 + x: 315 + y: 27 + width: 17.062498 + height: 24.749998 + xOffset: -0.43749997 + yOffset: 23.437498 + xAdvance: 15.3125 + scale: 1 + - id: 245 + x: 145 + y: 45 + width: 19.249998 + height: 22.187498 + xOffset: -0.43749997 + yOffset: 20.874998 + xAdvance: 15.3125 + scale: 1 + - id: 246 + x: 402 + y: 12 + width: 17.249998 + height: 22.812498 + xOffset: -0.43749997 + yOffset: 21.499998 + xAdvance: 15.5 + scale: 1 + - id: 247 + x: 415 + y: 140 + width: 14.999999 + height: 13.374999 + xOffset: 0.99999994 + yOffset: 12.937499 + xAdvance: 19.3125 + scale: 1 + - id: 248 + x: 6 + y: 6 + width: 19.374998 + height: 18.937498 + xOffset: -2.7499998 + yOffset: 16.312498 + xAdvance: 15.25 + scale: 1 + - id: 249 + x: 344 + y: 45 + width: 19.749998 + height: 22.937498 + xOffset: 0 + yOffset: 21.749998 + xAdvance: 18.375 + scale: 1 + - id: 250 + x: 427 + y: 232 + width: 19.749998 + height: 22.937498 + xOffset: 0 + yOffset: 21.749998 + xAdvance: 18.375 + scale: 1 + - id: 251 + x: 416 + y: 198 + width: 19.749998 + height: 22.437498 + xOffset: 0 + yOffset: 21.187498 + xAdvance: 18.375 + scale: 1 + - id: 252 + x: 415 + y: 165 + width: 19.749998 + height: 21.124998 + xOffset: 0 + yOffset: 19.874998 + xAdvance: 18.375 + scale: 1 + - id: 253 + x: 350 + y: 288 + width: 18.499998 + height: 33.937496 + xOffset: -0.87499994 + yOffset: 22.249998 + xAdvance: 16.3125 + scale: 1 + - id: 254 + x: 266 + y: 288 + width: 19.124998 + height: 33.687496 + xOffset: -3.9999998 + yOffset: 21.999998 + xAdvance: 16.4375 + scale: 1 + - id: 255 + x: 235 + y: 191 + width: 18.499998 + height: 32.124996 + xOffset: -0.87499994 + yOffset: 20.374998 + xAdvance: 16.3125 + scale: 1 + - id: 8211 + x: 77 + y: 45 + width: 24.749998 + height: 3.4374998 + xOffset: 0.99999994 + yOffset: 8.249999 + xAdvance: 28.4375 + scale: 1 + - id: 8212 + x: 209 + y: 41 + width: 30.874998 + height: 3.4374998 + xOffset: 1.4374999 + yOffset: 8.249999 + xAdvance: 35.1875 + scale: 1 + - id: 8216 + x: 466 + y: 166 + width: 3.6874998 + height: 6.0624995 + xOffset: 5.2499995 + yOffset: 30.249998 + xAdvance: 6.0625 + scale: 1 + - id: 8217 + x: 466 + y: 148 + width: 3.6874998 + height: 6.0624995 + xOffset: 5.1874995 + yOffset: 30.249998 + xAdvance: 5.25 + scale: 1 + - id: 8218 + x: 482 + y: 187 + width: 3.6249998 + height: 6.0624995 + xOffset: -0.43749997 + yOffset: 2.3749998 + xAdvance: 8.25 + scale: 1 + - id: 8220 + x: 497 + y: 237 + width: 8.312499 + height: 6.0624995 + xOffset: 5.2499995 + yOffset: 30.249998 + xAdvance: 10.6875 + scale: 1 + - id: 8221 + x: 447 + y: 184 + width: 8.312499 + height: 6.0624995 + xOffset: 5.1874995 + yOffset: 30.249998 + xAdvance: 9.875 + scale: 1 + - id: 8222 + x: 446 + y: 166 + width: 8.249999 + height: 6.0624995 + xOffset: -0.43749997 + yOffset: 2.3749998 + xAdvance: 12.875 + scale: 1 + - id: 8224 + x: 365 + y: 79 + width: 12.749999 + height: 25.874998 + xOffset: 2.9374998 + yOffset: 24.812498 + xAdvance: 16 + scale: 1 + - id: 8225 + x: 388 + y: 168 + width: 15.749999 + height: 25.874998 + xOffset: 1.5624999 + yOffset: 24.812498 + xAdvance: 17.625 + scale: 1 + - id: 8226 + x: 497 + y: 185 + width: 4.9374995 + height: 4.4999995 + xOffset: 1.6249999 + yOffset: 9.437499 + xAdvance: 10.1875 + scale: 1 + - id: 8230 + x: 280 + y: 59 + width: 16.624998 + height: 2.8749998 + xOffset: 0.31249997 + yOffset: 2.4374998 + xAdvance: 22.0625 + scale: 1 + - id: 8240 + x: 95 + y: 472 + width: 36.124996 + height: 33.874996 + xOffset: 3.3124998 + yOffset: 30.249998 + xAdvance: 41.4375 + scale: 1 + - id: 8249 + x: 497 + y: 314 + width: 8.187499 + height: 11.374999 + xOffset: 0.24999999 + yOffset: 13.312499 + xAdvance: 12 + scale: 1 + - id: 8250 + x: 497 + y: 291 + width: 8.187499 + height: 11.374999 + xOffset: 2.1249998 + yOffset: 13.312499 + xAdvance: 12.75 + scale: 1 + - id: 8260 + x: 307 + y: 332 + width: 21.624998 + height: 33.874996 + xOffset: -5.0624995 + yOffset: 30.249998 + xAdvance: 11.5 + scale: 1 + - id: 8364 + x: 308 + y: 377 + width: 25.749998 + height: 33.812496 + xOffset: 0.74999994 + yOffset: 30.249998 + xAdvance: 28.875 + scale: 1 + - id: 8482 + x: 324 + y: 152 + width: 18.999998 + height: 13.624999 + xOffset: 5.8749995 + yOffset: 30.124998 + xAdvance: 23.375 + scale: 1 + m_KerningTable: + kerningPairs: [] + m_FontFeatureTable: + m_GlyphPairAdjustmentRecords: [] + fallbackFontAssets: [] + m_FallbackFontAssetTable: [] + m_CreationSettings: + sourceFontFileName: + sourceFontFileGUID: a4c26c44047144974822de1e62b55815 + pointSizeSamplingMode: 0 + pointSize: 42 + padding: 5 + packingMode: 4 + atlasWidth: 512 + atlasHeight: 512 + characterSetSelectionMode: 1 + characterSequence: 32 - 126, 160 - 255, 8192 - 8303, 8364, 8482, 9633 + referencedFontAssetGUID: + referencedTextAssetGUID: + fontStyle: 0 + fontStyleModifier: 2 + renderMode: 6 + includeFontFeatures: 0 + m_FontWeightTable: + - regularTypeface: {fileID: 0} + italicTypeface: {fileID: 0} + - regularTypeface: {fileID: 0} + italicTypeface: {fileID: 0} + - regularTypeface: {fileID: 0} + italicTypeface: {fileID: 0} + - regularTypeface: {fileID: 0} + italicTypeface: {fileID: 0} + - regularTypeface: {fileID: 0} + italicTypeface: {fileID: 0} + - regularTypeface: {fileID: 0} + italicTypeface: {fileID: 0} + - regularTypeface: {fileID: 0} + italicTypeface: {fileID: 0} + - regularTypeface: {fileID: 0} + italicTypeface: {fileID: 0} + - regularTypeface: {fileID: 0} + italicTypeface: {fileID: 0} + - regularTypeface: {fileID: 0} + italicTypeface: {fileID: 0} + fontWeights: + - regularTypeface: {fileID: 0} + italicTypeface: {fileID: 0} + - regularTypeface: {fileID: 0} + italicTypeface: {fileID: 0} + - regularTypeface: {fileID: 0} + italicTypeface: {fileID: 0} + - regularTypeface: {fileID: 0} + italicTypeface: {fileID: 0} + - regularTypeface: {fileID: 0} + italicTypeface: {fileID: 0} + - regularTypeface: {fileID: 0} + italicTypeface: {fileID: 0} + - regularTypeface: {fileID: 0} + italicTypeface: {fileID: 0} + - regularTypeface: {fileID: 0} + italicTypeface: {fileID: 0} + - regularTypeface: {fileID: 0} + italicTypeface: {fileID: 0} + - regularTypeface: {fileID: 0} + italicTypeface: {fileID: 0} + normalStyle: 0 + normalSpacingOffset: 0 + boldStyle: 0.75 + boldSpacing: 7 + italicStyle: 35 + tabSize: 10 +--- !u!21 &21439481095386310 +Material: + serializedVersion: 6 + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_Name: DancingScript-Regular SDF Material + m_Shader: {fileID: 4800000, guid: 68e6db2ebdc24f95958faec2be5558d6, type: 3} + m_ShaderKeywords: + m_LightmapFlags: 4 + m_EnableInstancingVariants: 0 + m_DoubleSidedGI: 0 + m_CustomRenderQueue: -1 + stringTagMap: {} + disabledShaderPasses: [] + m_SavedProperties: + serializedVersion: 3 + m_TexEnvs: + - _BumpMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _Cube: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _FaceTex: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _MainTex: + m_Texture: {fileID: 28235353958641270} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _OutlineTex: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + m_Floats: + - _Ambient: 0.5 + - _Bevel: 0.5 + - _BevelClamp: 0 + - _BevelOffset: 0 + - _BevelRoundness: 0 + - _BevelWidth: 0 + - _BumpFace: 0 + - _BumpOutline: 0 + - _ColorMask: 15 + - _Diffuse: 0.5 + - _FaceDilate: 0 + - _FaceUVSpeedX: 0 + - _FaceUVSpeedY: 0 + - _GlowInner: 0.05 + - _GlowOffset: 0 + - _GlowOuter: 0.05 + - _GlowPower: 0.75 + - _GradientScale: 6 + - _LightAngle: 3.1416 + - _MaskSoftnessX: 0 + - _MaskSoftnessY: 0 + - _OutlineSoftness: 0 + - _OutlineUVSpeedX: 0 + - _OutlineUVSpeedY: 0 + - _OutlineWidth: 0 + - _PerspectiveFilter: 0.875 + - _Reflectivity: 10 + - _ScaleRatioA: 0.8333333 + - _ScaleRatioB: 0.6770833 + - _ScaleRatioC: 0.6770833 + - _ScaleX: 1 + - _ScaleY: 1 + - _ShaderFlags: 0 + - _SpecularPower: 2 + - _Stencil: 0 + - _StencilComp: 8 + - _StencilOp: 0 + - _StencilReadMask: 255 + - _StencilWriteMask: 255 + - _TextureHeight: 512 + - _TextureWidth: 512 + - _UnderlayDilate: 0 + - _UnderlayOffsetX: 0 + - _UnderlayOffsetY: 0 + - _UnderlaySoftness: 0 + - _VertexOffsetX: 0 + - _VertexOffsetY: 0 + - _WeightBold: 0.75 + - _WeightNormal: 0 + m_Colors: + - _ClipRect: {r: -32767, g: -32767, b: 32767, a: 32767} + - _EnvMatrixRotation: {r: 0, g: 0, b: 0, a: 0} + - _FaceColor: {r: 1, g: 1, b: 1, a: 1} + - _GlowColor: {r: 0, g: 1, b: 0, a: 0.5} + - _MaskCoord: {r: 0, g: 0, b: 32767, a: 32767} + - _OutlineColor: {r: 0, g: 0, b: 0, a: 1} + - _ReflectFaceColor: {r: 0, g: 0, b: 0, a: 1} + - _ReflectOutlineColor: {r: 0, g: 0, b: 0, a: 1} + - _SpecularColor: {r: 1, g: 1, b: 1, a: 1} + - _UnderlayColor: {r: 0, g: 0, b: 0, a: 0.5} +--- !u!28 &28235353958641270 +Texture2D: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_Name: DancingScript-Regular SDF Atlas + m_ImageContentsHash: + serializedVersion: 2 + Hash: 00000000000000000000000000000000 + m_ForcedFallbackFormat: 4 + m_DownscaleFallback: 0 + serializedVersion: 2 + m_Width: 512 + m_Height: 512 + m_CompleteImageSize: 262144 + m_TextureFormat: 1 + m_MipCount: 1 + m_IsReadable: 0 + m_StreamingMipmaps: 0 + m_StreamingMipmapsPriority: 0 + m_AlphaIsTransparency: 0 + m_ImageCount: 1 + m_TextureDimension: 2 + m_TextureSettings: + serializedVersion: 2 + m_FilterMode: 1 + m_Aniso: 1 + m_MipBias: 0 + m_WrapU: 0 + m_WrapV: 0 + m_WrapW: 0 + m_LightmapFormat: 0 + m_ColorSpace: 0 + image data: 262144 + _typelessdata: 00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001080d1113151413100b06000000000000000000000000000000000000000000000000000000000911181c1d1d1a150e0500050e151a1d1d1c18120a010000000000000000000000000000000000000000030f171c1d1a150e0400000000000000000000000000000000000000000000000000000000000000000000000000000000000c151b1d1a130900000000000000000000000000000000000000000000000000000000000000000000000000030f171c1d1a130a0000000000000000000000000000000000010b13191c1d1b160d01000000000000000000000000000000000000010507070705020000000000070d1113120f090200000000000000000000000000000000070b0b09040000060b0b0904000000000000000000000000000000000000000000000000000000070f161b1e1f1f1f1c17120b0300000000000000000000000000000000000000000000000000000003090e111212120f0a05000000000000000000000000000000000000000000000000000000040d13181c1d1d1c19150f08010000000000000000000000000000000000000410191d1e1a1714131211110f0f0f0f0f0f0d090400000000000000000000000000000000070e1313100d0a0807060605050505050402000000000000000000000000000000000000000000000000060d1112110e0600000000000000000000000000010b151c2226292a2a2825201a120900000000000000000000000000000000000000000000000005121c252c3132322f2922180e1721292f3232312d261e14090000000000000000000000000000000000000413212b31322f2921160b000000000000000000000000000000000000000000000000000000000000000000000000000003111e2830322e261a0b00000000000000000000000000000000000000000000000000000000000000000000000413212b31322e271d1002000000000000000000000000000004121e272d3132302a1f1101000000000000000000000000000000070f151a1d1d1d1a1610090005111a22262827241e150c0100000000000000000000000007131c20201e1810121b20211e1911070000000000000000000000000000000000000000000000040f1a232a3033343434312c261f160d030000000000000000000000000000000000000000000000040e171d2326272727241f19120a0100000000000000000000000000000000000000000000020d1720282d313232312e29241c140a010000000000000000000000000000000514222c32332f2c2a28272626252525252524221e191108000000000000000000000000000d1923282825211f1d1d1b1b1a1a1a1a1a1917140e070000000000000000000000000000000000000008111a2126272722190e010000000000000000000006131e2830373b3e3f3f3d39342e261c11050000000000000000000000000000000000000000000514232f3940464747443e352b2029343d44474746413a31271b0f02000000000000000000000000000000001022323e4647443d34281c0e0000000000000000000000000000000000000000000000000000000000000000000000000011212f3b44474238291805000000000000000103050505060606060505030100000000000000000000000000001022323e4647433a2e201201000000000000000000000000041423303a424647453c2f1e0c00000000000000000000000000020f1a232a2f3232322f2b241c1315222d363b3e3c3832281e1204000000000000000000000717252f3536322c23232e3536332d24190c0000000000000000000000000000000000000000000715212d363e44484a4a4946403a322920150a0000000000000000000000000000000000000000000a16212a32383b3c3c3c39342e261d140a000000000000000000000000000000000000000005131f2a343c4246474746433e3830271d130800000000000000000000000000001122323f474844413f3d3c3b3b3a3a3a3a3a3937332d241b1003000000000000000000000b1c2b363d3d3a3734323230302f2f2f2f2f2e2c28231b1107000000000000000000000000000000030f1a242e353b3c3c362c1f11010000000000000000061524303b444b50535454524e4941392e2215070000000000000000000000000000000000000001132332414c555a5c5c5851483d313a4651585c5c5b554d44392d201204000000000000000000000000000000192d3f505b5c585046392c1d0e00000000000003090e0f0f0d07000000000002090d0f0f0d08010000000000000000000b1e2f3f4d585c554735220e0000000000061015181a1a1a1b1b1b1b1a1a1816130f080000000000000000000000192d3f505b5c564c3e301f0f000000000001090e11100b04102232414d565b5c594d3c29150100000000000000000000000413202c363e44474747443f3830252433404a5053514d453b30231201000000000000000000132535424a4b47403533414a4b4840372a1c0d00000000000000000000000000000000000000071625333f4952595d5f5f5e5a554e463c32271b0f020000000000000000000000000000000000000d1b28333d464c505252514d48413a30271c10040000000000000000000000000000000000051423303d4750565b5c5c5b58524b433a3025190d00000000000000000000000000192d40515c5d595654525250504f4f4f4f4f4e4c4740372d21130400000000000000000015283a4852534f4c4947474646444444444443413d372e24180b000000000000000000000000000714212c374149505251493d2f1f0d0000000000000002142433414e575f65686a6967635d554b40332516070000000000000000000000000000000000000b1e3041515e686f72726d645a4f424958636d7272706960564a3e3023140400000000000000000000000000001e33485c6e726c63574a3b2c1c0c000000010d171e232524211c140a00000c151d222525221c150b000000000000000015283b4d5d6a7164513e2a17030000000a18232a2e2f2f2f303030302f2f2d2b28231c13080000000000000000001e33485c6e71695c4e3d2c1b0900000009141d2326251f171a2d3f505f6a70726b58442f1a0500000000000000000000011222313e4952585c5c5c59534c42373342515d65686661584e41301e0a0000000000000000071c2f42535f605b534740515e605c53483a2b1a0900000000000000000000000000000000000516253443505c666d727474736f6962594f44392d201304000000000000000000000000000000000d1c2b3945505a6065676766625d554d43392e22150800000000000000000000000000000003142332414e5a636b707272706c675f564d42372b1e110300000000000000000000001e33485d6f726e6b6967676666646464646463615c544a3e3123120100000000000000001c314558666864605e5c5c5b5b5a5a5a5a5a5856524a4136291b0c0000000000000000000000091725323e4a545d6467655b4d3c2a16020000000000000d1f3142515f6a73797d807d7c7771685d514334251505000000000000000000000000000000000013273a4d5f6f7b84888782776d6052576775808788857d73685c4e4132231404000000000000000000000000001f34495e7282807568594a3a2a1a090004121f2a32383a3a3630271c10111e2831373a3a3731281d11040000000000001b3044576a7b826d5a46331f0c0000071828363f4344444446464646444443403d373026190b00000000000000001f34495e73867a6c5b4a38261402000a192631383b39332922364a5d6e7d86846f5a45301b06000000000000000000000e1f30404f5b666d7172726e685f55493f51616f797c7b756b5f4d3a251100000000000000000b20354a5f71756f6456475c6f757066584938271502000000000000000000000000000000001123344352616e7982888b8b88847d756c61564a3e3023140500000000000000000000000000000a1b2b3a4957636d757a7c7c7b77716960564b403326190a000000000000000000000000000010213242515f6c768086888886827a73695f54483c2e211204000000000000000000001f34495e738784827d7c7c7b7b7979797979787670675c4f41301e0a00000000000000001f344a5f747c787673727170706f6f6f6f6f6e6b665d5347392a19060000000000000000000818273543505c6770787c786b5945301b0600000000000015293c4e60707d888c858283868c857a6f6152433323120100000000000000000000000000000000192d42566a7d8e98877d80897d7062617486938f807d8586796c5f5041322313030000000000000000000000001b2f43546374858677685848372615041222303c464c4f4f4b433a2e20202f3b454c4f4f4b443b2f22130400000000001f34495e73888a76624e3b28140100122536465358595a5a5b5b5b5b5a5a5855524b4337291907000000000000001b3043566a7d8a79675644311e0c05172837444d504e473a2a3c5165798c927c6854402c170300000000000000000005182b3d4e5e6d7982878887837b72675a4c5c6e808d938a847d68533e281300000000000000000b20354a5e7183827465535c6f828376675644321f0c0000000000000000000000000000000a1c2e40516170808c968d847d7d8084898074685c4e4132231404000000000000000000000000031527384958677480898f908c8b8c857c73685d514437281a0b000000000000000000000000081b2d3f50606f7d89938f8682808387867c7266594c3f302212030000000000000000001b3045596d829296949391919090909090908f8b84796d5f4d3a251100000000000000001d32475c70868e8b898887878686868686868480797065574836220e0000000000000000041626364553616d79848d867d715c47321c070000000000071b3044586c7d8f8a7a706c6c7179848d8070615141301f0d000000000000000000000000000000001c31465b70869a947d696c77848271667b909e897369727d8b7d6e5f5041312110000000000000000000000000132536455667788a87766655443322101e30404e596164645f564b3e302e3e4d5860646460574c4031221201000000001f344a5f748b927d6a5744311d0a081c2f4254646d6e6f6f707070706f6f6c6a665f55473624110000000000000014273a4e6175888573614e3b28150f2234465560666358483540556a80948f79644f3a2511000000000000000000000e2135485a6c7c8b95918986878c85776a5b66798c9a87776e6c614f3b26120000000000000000071b2f425466798d83715f5163768a8573614e3b28150100000000000000000000000000001326394c5e6f808f998a7a7069686a70788386796c5f50423222120200000000000000000000000d203245566776869293867c7675777c85867a6f6255463829190a00000000000000000000001225384a5c6e7d8e9b8c7d726c6b6d727a8584776a5d4e40302110000000000000000000162a3e51637382898e9193939892908f8c8a888684837d68533e28130000000000000000192d4256697a8a93989b9c9c9b9b9b99979492908d837565513d281300000000000000000f223344546371808b857a726a6254412e190500000000000a1f34495e738894806c5d57575d6673838f806f5f4e3c2a18050000000000000000000000000000001d32475c72889d947d685966748482707c939d88725d5f6c7a8a7d6e5f4f3f2e1e0d000000000000000000000008182838495a6b7d8f84736251402e1d2a3c4d5e6b75797873695c4e3e3a4c5c6a757979746a5e4f402f1f0d000000001e33485d72879b8773604d3a26130f24384c5f718384868687878787868483807a726554412d18040000000000000b1e3245596c80907d6b5845321f162a3e5163737a7664513d42576c82978f78634e38230e0000000000000000000014293d5164778a9b908074707277828979696c8295927d6a5a57514332200c0000000000000000001225374a5d70858f7b68555a6d82917d6b5844301c0900000000000000000000000000071b2f4256697b8d9e8e7b6b5d5453555c65707d8b7d6e605040301f0e0000000000000000000003162a3d50627485959584746861606268717c89807264564737271706000000000000000000061a2e415467798c9d8f7d6d5f5756585e677380897b6c5e4e3f2e1e0d00000000000000000e21344555636d74787b7c7d8b807b787774726f6e6c6c614f3b261200000000000000001326394c5d6c777d848788899088868482807c7978777767523d28130000000000000000182b3e51627282887c71675f564e453625120000000000000a1f344a5f748b8f796550424249556475878e7c6b59473522100000000000000000000000000000001c31465b70869b96826b565665758680798f9f89745f4e5c6b7a8b7d6d5d4c3c2b1a0900000000000000000000000a1a2b3d4e60718391806e5d4c3a283346596b7c898f8e867a6c5c4c44576a7a888f8f887b6d5e4d3c2b19060000001a2f43586c8295907c6956422f1c14293e52677b8f999b9b99979593918f8d8c8983705b46301b060000000000000216293c5063768a8875614e3b281c3045596d8290806c584442576c83988f78634e39240f00000000000000000000192e43576c8094998572625b5d64708088776f85998f79644f423e33251503000000000000000000071a2d4155687c9185705d5266798e8873604c38240f000000000000000000000000000e22364b5e7286989884705e4d403e414953606e7d8d7d6e5e4e3d2c1b090000000000000000000a1e3246596c80929d8a7766564d4b4e545e6a778783746555453524130200000000000000000d21364a5d7185979985725f4f4340434b556270808b7c6c5d4c3c2b1908000000000000000517283746515a5f6366676f838f806d625f5d5a585757514332200c00000000000000000a1c2e3f4e5a646a6e7072738788786e6c6a67656362625a4a37240f00000000000000001e32475b6e8082756a5f544b433b332718070000000000000a1f34495e72888f78634e382e374657697b8f897764523f2c19050000000000000000000000000000192e43586d829799846f5a475767788a7c8a9e8c77624d4d5c6c7c8b7a6a59493827160400000000000000000000000e1f30425466778a8d7a695745343a4e62768990807d898b7a6a584c60748792827c888c7c6b5a4836231000000015293d5165798d9986725f4c3825182d42576c82969689878483807d7b79777673706957432f1a05000000000000000d2033475a6d82927d6b5744311f34495e73889b88735f4b42576c83989079644f3a2510000000000000000000001c31465b70869b927d69554648536170808472869a8c77624c372921160700000000000000000000001225394d61758a8c77634f5e72878f7b67533e2a150100000000000000000000000014283d5165798ea2907c6854412f282c3642505f6f808d7c6c5b4a3827150300000000000000001025394d6175899c95826d5a48393639414d5a6877888473635342311f0e000000000000000013283c5065798da0917c695542312b2f3844516170828b7a6a594837251301000000000000000a1928343e464b4e5153677a8f8a77645148454342423e332515030000000000000000001021303d475055595b5c6a7d9285725f5452504e4c4c473c2c1b0800000000000000001f344a5f7482877c71665b4f433628190a00000000000000061b2f44576a7c8c7965503b27283a4c5f728594826f5c4835210d0000000000000000000000000000152a3f53687c929e8974604b4a5a6b7d8a8498907b67523e4e5e6f808877665544332210000000000000000000000001132536485a6c7d90877563513f3f54687d9288736a7a8c88766452667b908a7569788a89776553402d190600000e2236495d7084978f7b6754412e1b2f445a6f8499917b716f6c6a68676463605e5c574b3a2814000000000000000004172b3e5164788c8873604d3926374c61768ca18f7a665342576c8397917b66513c2712000000000000000000001d32475c72889d8f79644f3a3542526273857d83988c76604b36210e040000000000000000000000000a1e32465b6f84937d6a55586c8095826d58442f1b06000000000000000000000000182d42576b8095a08b76614d39251319243241516172848a7967564432200e0000000000000000152a3f53687c91a38e7965513e2b21252f3c4a5a6a7a8c8270604e3d2b190700000000000000182d41566b8094a08c77624e3a26161b263442526374868977665543311f0c00000000000000000a17212b3136393c4b5f738894806c5845312e2c2c292116070000000000000000000003121f2b343b4044464f63778b8f7c6855413b393737332b1e0e0000000000000000001c314457656f798584786d605446372817060000000000000015283b4e5f6d79806a543f2a1d2f4255687c908b7764503c281400000000000000000000000000001025394e63778ca08f7965513d4e5f70828c9a96826d58444051617284857362513f2e1c0a000000000000000000000007192b3d4f61738592806e5c4a41576b8297846f5c6e8293826d5a6a809487705c6c8092836f5c4935210d0000061a2d4154677a8e9885715e4b372430465b70869b9079655a575553524f4e4b4947423a2d1d0b0000000000000000000e2235495c6f83907c6955422e384c62778d9b90836e5a47566b8296937d68533e2914000000000000000000001d32475c72889d8f78634e382434455667798982968c77624c37220d0000000000000000000000000003172c4054687d92846f5b51657a8f88725e4935200c0000000000000000000000001c31465b70869a9c88725d48331e0a06142333445566778a8573614f3d2a1805000000000000001a2f44586d83979e89745f4b36220e121e2c3c4c5d6e808f7d6c5a48362411000000000000001b30455a6f85999d88725d49341f0a09162535455667798c8472604e3c2917040000000000000000050e161c21243044586d82958874604b37231717150e04000000000000000000000000020e1821272c2f34485c70859885705c48342422221f180d0000000000000000000015283948525c6773808b7d72645546352311000000000000000b1e30414f5c666c62503c281326394c60738894806b58432f1b07000000000000000000000000000b1f34485d71869a95806c574341536476899b9c8873604c38445566778a806e5d4b3927150300000000000000000000000d1f314456687a8d8c79675542576c8398846f5a64788c8a76626a809587705b63768a8c7864503c28140000001124384b5e7084978e7a6754412e30465b70879b917b665042403e3c3a383634312e271d0f0000000000000000000006192c405366798d85715e4a37384e63788f95808a76624e546a809495806b56402b16010000000000000000001c31465b70869b8f79644f3a2527384a5d6f8380938e78634e39240f000000000000000000000000040511253a4e63778c8974604b6074898d78634e3a25110000000000000000000000001e33485d72889d9b866f5a45301b060005152637485a6d8091806c5a4734210e000000000000001c32475c71879b9b87705c47321d08000e1e2e3f506173868a776653412e1b080000000000001e33485d72889d9b866f5a45301b0600071727394a5c6e80907d6b594633200d0000000000000000000002080c15293e52667a8f8f7a66523d2914000000000000000000000000000000000000050c12171a2d4155697d928c77634f3a26110d0a0400000000000000000000000a1b2a363f4a55616f7c8b83736452402d1905000000000000011223313f4a525751443321111d3044586c809487725e4a36220e00000000000000000000000000051a2e42576b80949b87725d493547596b7d90a38f7b67533f37495a6c7d8c7a68574532200e0000000000000000000000021426384b5d6f82948572604d566b809587715c5d7186927d69697d9488735e5b6f8394806b57422e19050000081b2e415467798c9784705d4b382f445a6f869b927c67523c2b29272523211f1c19140b0000000000000000000000001024374a5d71858e7a66533f384e63788f96828c7d6a5752677c9298836d58432e1904000000000000000000192e43586d8397917b66513d281b2d405366798d99907a66503b2611000000000000000000010d15191a181f34485d71868f7965505a6e83927c68533f2a150705020000000000000000001f344a5f748a9f99846e58432e1904000008192b3d4f6275888a7764513e2b18040000000000001e33485e73899e9a856f5a442f1a0500001021324456687b8e83705e4b3825120000000000001f344a5f74899f99846e59442f1a0400000a1b2d3e51637689897563503d2a17030000000000000000000000000f23384c60758a95826c57432e1a0500000000000000000000000000000000000000000012263b4f63778c927d6955402c170200000000000000000000000000000c19232c3844515f6d7b8b82705d4834200b000000000000000413212d373e423e3426252624293d5165798e8e7965513d2814000000000000000000000000000014283c5065798ea18d7864503b3c4e6073869996836f5b47333d4e607285867462503d2b19060000000000000000000000091b2d40526476898f7c6a5853687c928a7560566b8095846f667a8f8c776254697d9386715c47321d080000001124374a5d6f82958d7a6754412e43586e8498947d69543f2a1512100e0c0a07000000000000000000000000000000071b2e4155687b8f836f5b48374c62778d97828686725f5065798f9b86705b46311c07000000000000000000152a3f54697d9294806a55412c1723364a5d718599937d68533f2a15000000000000000002121f292e2f2d2b2e43576c82937d695554697d92826d58432f1d1c1b17120b020000000000001f344a5f748ba099846f5a442f1a050000000e203245586b7d92826d5a4734200c0000000000001f344a5f748ba099846e58432e19040000041527394c5e71858d7a6754412e1b0700000000001f344a5f748ba099846e59442f1a050000000f213446596c8093806c5946331f0b000000000000000000000000091d32465b6f849986715d48331f0a0000000000000000000000000000000000000000000c2034495d728798846f5a45311c0800000000000000000000000000000006101a2633414f5d6c7b8c77634d38230e000000000000000003101a232a2c2c33383a3b3a36364a5e738895806b57432e1a06000000000000000000000000000d22364a5e73889c93806a5642314456697b8f9e8a76634f3b314355677a8d806d5a4836231000000000000000000000000010223547596c7d918875625063778c8f796552667b91887361758a907c675364798f8a74604b36200b000006141e2d405264778a9885715e4b3941566b829696826c57422d18030000000000000000000000000000000000000000001225394c5f72868b7763503c4c62778d98837d8f7a675362778c9d88735e49341f0a00000000000000000011263a4f64788d99846f5a46311d1b2e4255697d9296826c57422d1804000000000000000f20303c434442403f3d52667b90836e594f63788d87715d48333232302c261e150900000000001f344a5f74899f9b86705b46301b060000000315283b4e6275898a76634f3b28140000000000001f344a5f748ba09a866f5a442f1a050000000a1c2e4154677b8f85715d4a37230f00000000001f344a5f748a9f9b866f5a45301b0600000004172a3d5063768a8975624e3b271300000000000000000000000003182c40556a7d938b76624d38240f000000000000000000000000000000000000000000061a2f43586c829689745f4a36210c0000000000000000000000000000000000091523313f4e5d6d7d78634e38230e000000000000000000000a1928353f484d4f504f4b4544596d839786715d4934200b00000000000000000000000000071b3044586c82959a86715d4934394c5f728598927d6b574430384a5d6f828a776553402d1a07000000000000000000000005182a3c4e61738692806c5a5c708595806c5964788f8b745f6e8396836e5a62778d8c77624c37220d00041524313a3c485a6c80918e7a68554b4d53687d9399846f5a45301b06000000000000000000000000000000000000000000091d3043566a7d91806c58444b60768c9984778b836f5c5f73899e8b76614c37220d0000000000000000000c21354a5e73889c8974604b372212263a4e63778b9a86705b46311d0800000000000000182b3e4e5859575653525061768b88735e4a5e73888b76614c47474745413b31271a0c000000001e33485d72889d9d88725d48331e09000000000c1f33465a6d8293806b57432f1b0600000000001f34495e73899f9b87705b46311c07000000001225384c5f72868d7966523e2b1602000000001e33485e73889d9c88725d48331e09000000000d2034475b6e83927d6a56422e1a0600000000000000000000000012263b5064798e907b66523d28130000000000000000000000000000000000000000000015293e52677b908e78644f3a2611000000000000000000000000000000000000051321303f4f6070705e4a35210c0000000000000000000517283746525c6264656460595154687d928c77634e3a2511000000000000000000000000000015293e52667a8fa18c77634f3b2f4255687c8f9b8773604c382d405365788c826f5c4a37241100000000000000000000080f151f324456697b8e8a766455687b8f89756363788f8a745f66798d8a776461768c8c76614c37220d000e2133424e5252526173869885725f60636668798f9c88725d48331f0f0f0d0a0701000000000000000000000000000000000014273a4e6175888874604d4b60768b9b8670838c78645b70869a8f79644f3a2510000000000000000000071b3044596d83978f7965513d28141f33485c70869a89745f4b36210c000000000000001e33475b6b6e6c6b6867666471868c77625f5f6d83907a665c5c5c5c5a554e44382a1a090000001c31465b70869aa08b75604c37220d0000000003172a3e52667a8e87725e4a35210c00000000001d32475c72879c9e89735e49341f0b00000000081c2f43576a7d93826d5a46311d09000000001c31465b70869b9f8a75604b36210d0000000004182b3f53677b8f86715d4934200c0000000000000000000000000d21364a5f748995806b56412d18030000000000000000000000000000000000000000000f24384d62768b927d68543f2a15010000000000000000000000000000000000000312213142525d5d51412e1b070000000000000000000f22344555646f76797978746d645964798e927d68543f2b1602000000000000000000000000000f23374c6074899d927d6a55412d394c5f73869a8f7b6854402c36495c6f828c796653402d1a070000000000000003101b242a2d2e394c5e718494826e5c5f718392806f677b9086715c5d6f8293827065798e88735e4a35200b0014293d506067676768687a8d8f7c7275777a7d828da08b76614c37262524221f1b160e050000000000000000000000000000000b1e3145586c80907c69554a5f748b9d88727a8e826d5a6c8296927c68533e291400000000000000000000162a3f53687c9195806b57432e1a192d42576b80958e78644f3b2611000000000000001f344a5f748483807d7c7b797882917b747474747d928072727272706f6a615648382613000000192e43586c8297a38f7965503b271200000000000f23374b5f73888d7864503b261200000000001b30455a6f8499a18c77624d38240f000000000014273b4f63778c8975604c38230f00000000192e43586d8397a38e79644f3b261100000000001024384c6074888c77634f3a2611000000000000000000000000081c31455a6f8498856f5a46311c070000000000000000000000000000000000000000000a1f33485d718697836d58442f1a0500000000000000000000000000000000000000031425344149494133231200000000000000000004182b3e516373828b90908e8982766a60758a97836e5945301b0700000000000000000000000000091d31465a6e83979985705b47333043576a7d929784705c48342c3f5265798c83705d493623100000000000000313212d373e424341415466798c8c7866546676878e807984907d6a57526475858f82798392806d5945301b0700172c42576c7c7c7c7c7d80839888888b8d908f8a8a9c8f7965503c3b3a393734302a21170a00000000000000000000000000000215293c5063768a85715d4a5e73899f897372858a7663687c9196826b56412c18030000000000000000001025394d62768b9a86715d49342014283d52667b90937d6954402b17020000000000001d31465a6d7d8a939492908f8e8d978b8b8b8b8b8b95898888888887847d736656422e19040000152a3f53687c92a6937d6a55412c180400000000081c3044586d82937d6955402c170200000000172c41566b8095a5907b66523d291400000000000c2034485c71868f7a66523d281400000000152a3f54697d92a7937d6954402c170300000000081c3145596d83927d6954402b1601000000000000000000000001172c4055697d9389745f4a35200c000000000000000000000000000000000000000000051a2e43576c829687715d48331e0900000000000000000000000000000000000000000716242e34342e2315060000000000000000000a1e33475b6e82929a8b827c8086887a6c70869b88735e4a35210c0000000000000000000000000002172b4054687d929f8a76614d38273b4e62768a9e8c77634f3b2636495c70848d7966523f2b180500000000001021313e4a535758564f4a5c6f829583705d586877848d908d8272614e46576775838d908d837363503d2a160100162b405467798a9393949597969b8f8a86807a758397947d695550504f4e4c49453e3428190a00000000000000000000000000000d2033475a6d828d7965515d72889d8b74697c8f806c63778d99846f5a45301b060000000000000000000a1f33485c70859a8c77634f3a261223384c61768b98836e5a45301c07000000000000162a3d4f606d777d84878a8c8d8f92918f8f8d8d8c8e8e8887868483828080705b46301b06000011253a4e63778ca19984705b47331f0b00050c1112152a3e53677b90846e5945301b060000000013283d52667b90a495826c57432f1a060000000405192e42566a8094806b57422d180400000011263a4f64788da298846f5b46321e0a0003090e0f162a3f53687c91836e59442f1a0600000000000000000000000012263b5065798e8d78634e3925100000000000000000000000000000000000000000000014293e52677c918b76614c37230e00000000000000000000000000000000000000000006121a1f1f1a1105000000000000000000000e23384d61768a9e8e7b6d686b737d8b7b6c82978d78644f3a2511000000000000000000000000000011253a4e63778ca1907b67533e2a33475b6f8397937d69543f2a2d4054677b8f826f5b4834200d00000000091c2e3f4f5c676c6e6a63585264778a8d7a67545966717879787063544339495865707779787064554533210e00001125384a5c6b778086878684828d8976706b66687d9298836e6666656463615e595146372716030000000000000000000000000004172b3e5164788c826d5a5c72889c8c7661738688756173889d88735e49341f0a00000000000000000004192d41566a8093927d6955402c181e33475c70869a88735f4a36210d0000000000000e2031424f5a63696e727476777888897878777776848c77706f6e6c6b6a6a6555422d190600000b2034495d71869a9f8a76624e3a26120f182026272324384d62768c88725d49341f0a000000000f23384c61758a9e9b87725d4936210e030c14191a16273c5065798f86705b46311c070000000c21354a5e72879b9e8a75614d3925110c161e23242125394e62778c87725d48331e090000000000000000000000000d22364b5f7489917c67523e2914000000000000000000000000000000000000000000000f24394d62778c8f7965503b271200000000000000000000000000000000000000000000000000000000000000000000000000000011263b506579909b87725e5356606e7c8a787d92927d68543f2b160100000000000000000000080f13152034495d72879b96826d58442f2b4054687c9295806b56402b24384c5f73888b7763503c2814010000001226394b5d6d7982848075695b5a6d809384715e4b545d6364635d5245362b3a47535d6364645d5346372716040000081b2d3e4d5a646c6f70706e6f8293826e5c5163788d9d887a7b7b7a797876736d645545331f0b00000000000000000000000000000e2235495c6f838975615b70879c8d7762697c8f7d6a6e83988c77624d38230e0000000000000000000013273b5064788d9984705b47331e192d42576b80958e7964503b27120000000000000213273c50636f6e6b6a6866656e838d786362626b80907b665c5c5c5c5b58534a3f3224140200061a2e42566a8093a5927d6955422e1b212b343b3c372d34485d72878b76614c37220d00000000091e32465b6f8397a18d7965513d29161620282e2f2b22374b60758a89745f4a35200b000000061b2f43576b8094a4917c6855412d1a1e2932383a352b34495d72888b76604b36210c000000000000000000000000081d31465b6f8496826b57422d18030000000000000000000000000000000000000000000a1f34495d7287937d6954402b16010000000000000000000000000000040c1112110e08000000000000000000000000000000000011263b50667b9198836d584343505e6e8085788e97836d5944301b07000000000000000005111b23282b2a2e43586c82969c87725d493425394e63778d897866523d281c3044586c8093806b5844301c07000005192d4155687a8b90898e887969596376898e7a685542494e4f4e494035271c2a3640494e4f4f49413628190a000000000f202f3d4851575a5b5b596475878c7967545e72889c9390919190908e8c888273624e3a2510000000000000000000000000000008192d4053667a8e7d6a5a6f869b8f78635f72858874697d93907a66513c27120000000000000000080f1321364a5e72889c8a76624d392514283d52667b90937d6a55412d180400000000000013293e53687d8382807c7b79797d917c747473737b90807272727272706d675d5042321f0b000013273b4f63778b9e9985715e4a3724313e484f514a3d2f44596e838e78634e39240f0000000003172b4054687c90a394806c5945311e27333c42443e3332475b70868c77624d38230e0000000014283c5064788c9f9884705d4936232f3c464d4f483b2f44596e848e78634e39240f00000000000000000000000002182c41566a8094856f5a46311c07000000000000000000000000000000000000000000061a2f43586d8297836d59442f1a05000000000000000000000000000c1720262727221c130a00000000000000000000000000000011263b50667b9198836c574232405061738580899c88735e4a35200c000000000000000615232e373d403f393e53677c91a18c77624e3924354a5f737b766a5b49362315293d5165798e87735f4b36220e00000a1f33485c70859482737b8b887665596c809285725f4c39393a39352d23170c19242d35393a3a352e24180a000000000002111f2b353d424546464658697b8d847260586d82969c8f8d8c8b888683807c7865503b261000000000000000000000000000081726313a4a5e718586725e6e849990796456687b8e7d6b798e94806a55402b1702000000000006121c24282a2f44586d8296917c68533f2b1623384c61758a9985705b47331e0a00000000000011263a4e6274838e949391908f8d978b8b8b8989899289888888888886837a6e604e3b261100000c2034475b6f8296a18d7966534030404f5b63665b493640556a80907a66503b261100000000001125394d6074889b9c8875614d3a2837454f575951423042576c828f79644f3a2510000000000d2135495c708397a08d7965523f2e3f4d59616459483541566b80907965503b26110000000000000000000000000013283c51667a8f89735f4a35200b00000000000000000000000000000000000000000000152a3f53687c9287715d48331e090000000000000000000000000e1d29343b3c3c372f261c11050000000000000000000000000010253a4f64798f98836d58432e33445567798a869a8d78634f3a261100000000000002142433414b5254544a3b4e63778da2917b67523d28304456636662594c3d2c190e22364a5f73888e7965513d291400000d22374c61768b8f79656d809283705d6275888f7c695643302524201a11060007111a20242524211a110700000000000000010e1822292d3030303a4c5d6f808f7d6b59677b90988377767472706d6a67645a4936220d00000000000000000000000003152635434e5455697c8e7a666e8498907b66505e70838875748998836e5945301b06000000000716242f383d3f3e3e53677b9097836e5945311c1e32475c70859a8a76614d3925100000000000000b1f3345566571798085888b8c8d8f918f8f8d8d8c8d8e89888784838282807d68533e2913000005182b3f5266798c9f96836f5c4a3a4d5e6d777965503b3d53687c927c67523c27120000000000091d3144586b8092a4917d6a5643344555626b6e604d383f54697d917b66503b26110000000006192d4053677a8da095826e5b49394c5d6b757764503b3e53687c917c67523c2712000000000000000000000000000e23384c61768b8d77634e39240f0000000000000000000000000000000000000000000011253a4f63788d8b76604c37220d0000000000000000000000091b2c3b475052514b43392f23170a0000000000000000000000020d22374c61768c9a86705b463126384a5c6e828a9a927d6954402b160200000000000d203242515e666a6859464a5f73899e95806a55402b2738464f504e463c2e1f0e071c3045596e8395826c58432f1a06000e23384e63788e8d77626175888d7a66586b7d928673604d3a27140c060000000000060b0f0f0f0c060000000000000000000000050e14181b1b1d2e405162738589766461758a9d8974615f5d5b5855524f493c2c1a060000000000000000000000000d20324453616968607387836f6c8398917b66505466798c806f849988725e4934200b00000003152534424c525452484d61768a9d88745f4b3622192d41566a8094917c68533f2b160200000000000316283847545e656b707374767786897878777776838b7672706f6e6c6b6a69604e3a2611000000102336495c6f82959f8c79665442566a7c8b806a56423b50667b907c67523c271200000000000115283b4f6275899b9a8673604d3e516373807b66523e3c52677c917c67523c271200000000001124374a5d7083969e8b7865534155697a897d6955413b50667b907c67523c271200000000000000000000000000091e33475c7186917b66523d2813000000000000000000000000000000000000000000000c20354a5e73888f7965503b261100000000000000000000001226394a586367655f564c4034281a0c00000000000000000610171b1f34495d72879c89735f4a35202c3f5164778a9d97836e5945301c07000000000015293c4f60707a80745f4a465b70869b98836d58432e1a28343a3b39332a1e100100162b4054697d9487725d49341f0a000e23384e63788d8f7863586c8095836e5a617588907c6a5744311e0b000000000000000000000000000000000000000000000000000000000000112233455667788a82705e6f84988f796551484643403d3a352b1e0e0000000000000000000000000015293c4f61717d77626a7d8b776b8297927c6752495c6e8289767d938c77624e3924100000000e213243525f676a6656475c70859a8e7965513c2713273c5165798f97836e5a46311d090000000000000a1a2936414a51575b5e60616b828d78636362697d8f79655b5a58575654544e42311e0b000000071a2d405265778a9c9684715e4c5a6f869a86715d4a3a4f64798f7d68533e29130000000000000c203346596b7d91a3907d6a5845586d8291826d58453b506479907c67523d28130000000000081b2e415366798c9e95826f5d4b5a6f859985705c493a4f64798f7d68533e29130000000000000000000000000004192e43576c8295806b56412c1702000000000000000000000000000000000000000000071c30455a6f84937d68543f2a150000000000000000000000172c415568767c7972695e5245382a1b0b0000000000000c19232b30323144596d83978d78634f3a252234475a6d82949d88735f4a36210c00000000001b3044586c7d8e846e5a4544596e84999b866f5a45301b17202526241f170d00000012273c51667b908c77624d38230e000c21374c60768b917b665265798f897560586b7d918773604d3b2815020000000000000000000000000000000000000000000000000000000000041627384a5b6c7d8e7c6a687c9195806b5743312e2b282521190e00000000000000000000000000061b2f44586c808c7660627589806b8297937c67523f5164768982798e917c67523e2914000000162a3d5061707b80725c47566b809494806a56412d1822374b5f74899d8975604c382410000000000000000b19242e363d4246484b52677c917c67525065798f7d6954444342403f3f3b3123130200000000102336485a6d8091a18e7c6a58596e83988d7965523e4e63788f7c67523d28130000000000000316293c4e617386989a887563515a6f869b8874604d394e63788f7d68533e2913000000000000112437495c6e80929f8d7a68565a6f84998c7864513e4e63788f7c67523d2813000000000000000000000000000014293e53677c91846e5945301b0600000000000000000000000000000000000000000000172c40556a7d93826c58432e190400000000000000000000182e43586d7c858d867b6f63564839291908000000000c1c2a363f4547463f53687c92927c68543f2b182a3e5164778c9f8e78644f3b261200000000001f34495e738897826c574242576c83979c87705b46301b060c10110f0b04000000000f24394e63788f907b66513c271200091e33485d718795806b5660748a8f796550617588907d6a5744311e0c000000000000000000000000000000000000000000000000000000000000091b2c3d4e5f7082887665768a9b87725d4935211613100c0600000000000000000000000000000a1f34495e72888c7762596d8088748095937c67523c47596c7d8d7a8996826c57432e1a0500001c3045596d808f836d584351657a8f9a85705b46321d1c31455a6e8397907b67533f2b17030000000000000007121b22282d3133394e63778d806b564c60758b836d58432e2c2b2a2a271f1405000000000006192b3d4f617385969988756454687c9095826e5b494e63788f7b67523c2712000000000000000c1f324456687a8c9e92806e5c586c8295907c6955424e63788f7c67523c2712000000000000071a2c3e51637486979886746355697d9194826d5a474e63788f7c67523c2712000000000000000000040c10110e1024394e62778c88725d49341f0a0000000000000000000000000000000000000105060312273b5065798f86705c47321d0800000000000000000000152a3e5160697079838c827366574737251300000006192a3a48535a5c5a4f4e63778c97836d5945301c2135485c708497937d6955402c1803000000001f344a5f748b98836c574240566b82979c87705b46301b06000000000000000000000e23384d63778d937d68533f291400051a2e43576c809486715d5c7187937c6853586b7d928874614e3b2815020000000000000000000000000000000000000000000000000000000000000e1f31425364748683726f83978d7864503c281515151413110f0c07010000000000000000000b21364b60768c8f79645164778b7c8095917b66503b3c4f61738686849886715d48331f0a00001f34495e738897826b56404c61768b9e89745f4b3621172b4054687c9297836e5a46321e0a000000000000000000070e14181c20354a5f7389846f5a475c718787715c47321e161515120c02000000000000000e203244556778899a93827060607385978b7865535065798f79644f3a251000000000000000021527394b5d6e80919e8c7a695865798c9985725f4c4f64798f7b66503b2611000000000000000f2133455768798b9b92806f5e617487988a7664525065798f7964503b251000000000000000000a1620252623202034495d72888b76614c37231313110d08000000000000000000000000010d161a1b181522374b60758a89745f4a36210c090603000000000000000e2133424d555d666f7a8584756554422f1c0800001023364858656e726d5b485d71869a88735f4a3621192c4054687d9299846f5b46321d09000000001f34495e738999856f5a4540566b82979c87705b46301b060000000000000000000d1d293a4f64788f95806a54402b15000014293d5064788c8c78655a6f86947d68534e617589917d6a5845321f0c000000000000000000000000000000000000000000000000000000000000021324354657677889806e7c9094806b57432f2a2a2a29282624201b140b00000000000000000b21364b60768b927d69545c6f83858095907965503b324456687a8d83948b76624d39241000001f344a5f748b97826c5742485d72889c8d78634e392411253a4e63778c9e8a75614d39261200000000000000000000000000071c31465a6f8588735e49586d838a75604b36210d00000000000000000000000003142638495a6b7b8c9c8f7d6d5d67798a9583705e53687c8b76614c37220d00000000000000000a1c2e3f5162738494988775655c6f82928f7c695751667b8e78634e39240f00000000000000041628394a5c6d7d8e9e8d7c6c5c697a8c94826f5d53687c8c77624d38230e00000000000000081928333a3b3834322f44596d838f7965503b29292826221c140a00000000000000000002121f2a2f302d2a2732465b70858d78634e39241e1e1c18120a01000000000415243139414a535d68738083725f4b37220d0000182c405365768386715d48576c80958e7964503b2712253a4f63788d9e8a75604c38240f000000001c31455a6e839789745f4b42576c829799846f5a442f1a050000000000000000071a2b3b4654687c9195806b56402b1600000d2135495c6f8294826f5e7086927c675246596c80938875614e3b281502000000000000000000000000000000000000000000000000000000000000061728394a5a6b7c8c7b74889b87725e4a3f3f3f3f3e3d3b393530281d1103000000000000091e33485d71869884705c5366798d82978e78634e3927394b5d708294a0917c67533e2a1601001f34495e73889a85705b46455a6f869a907965503b26111f34485c71869a917c6955412d190600000000000000000000000001182d41566b808c77624d54697d8e79644f3a251100000000000000000000000000091a2b3c4d5d6e7d8e9c8c7b6b5c6c7c8d8e7c6b5b6c8286715d48331f0a000000000000000000102233445566768796948372626374859687756354697d8974604b36210c00000000000000000a1c2d3e4f5f6f808f9a8a796a5d6e7d8f8d7a6a596c8287725d49341f0a00000000000000132637454f504d4a47444353687c927d69543f3e3e3e3b3630271b0f01000000000000000e20303d4446423f3c3a41566b80917c67523d333333312c261d13070000000007162533404d59646f7a858477634e38230e00001c31465b6f8394836c574252667a8f937d6a55412c1820354a5e72889c907b67533e2a1602000000172b3f53677a8d8e7a665343586d839895826b57422d180300000000000000000f2337495962718497947d69543f2a15000006192d40526476888d7c6f758a8c77634f3d5063768a927d6b5845321f0b000000000000000000000000000000000000000000000000000000000000000a1b2c3d4d5e6e808a7a80948e796653545454545352504e4a443b2f2111000000000000051a2e43566a7d908c7866555d71858b998b76604c37212e40526476899b96826d5945311c08001b3045596d82968a75604c43586e8499917b66503b2611192e42566a80939885705c4935210e0000000000000000000000000014283d52677c907b66515065798f7c68533e2a1500000000000000000000000000000e1e2f3f505f6f7d8d9a8a7a6c5f6e7d8c8a796b7387806b57432e1a050000000000000000000415273748586877889691827061677787928270616e83846f5b46321d080000000000000000000f203141516170808f9888786a6070808e8877697286826c58432f1b06000000000000001b2f43556365625f5c5a585763778c826d5853535353504b43392d1f1000000000000000172b3d4e595b5754514f4e51657a8f806b564848484845403a3024170800000214253443515e6a7682877b70675a4834200b00001f34495e738997826c57424c61758a99846f5b46311d1b2f44586d829696826d5945311d0a0000001024374a5d6f829283705f505b70869a8f7a66523d291400000000000000000013283d526676808fa18f7a66513c271200000010233547596979898d848691826f5c4834475a6e82958875614e3b281502000000000000000000000000000000000000000000000000000000000000000e1f2f40506170828a7a8c96826e68696a6a6a686766635e574c3f2e1c0a00000000000013273a4d6071839384726359697d939b87725d48331e233547596b7d8f9c8874604b37241000162a3e5266798c907c685543586d8398917b66503b261113273b5064788da08c7864513e2a18070000000000000000000000001025394e63788d806a554c60768b826c57422d190400000000000000000000000000011121324151606e7c8a978a7b6e616e7b88897d82897764503c28140000000000000000000000091a2a3a4a5a697887948f8071636877868f8072778a7c6955402c180300000000000000000002132333435261707d8c9788796c61707d8a877c7d8a7865513d291500000000000000001e33485d72797773716f6d6c6b728686706868686868655f564b3d2e1d0a0000000000001d32465a6c706c6966646362607589846f5e5e5e5e5d5a554d4235261605000d20324352616f7c888275695e544a3c2b180500001f34495e738999846e5944475c70869b8974604b3722152a3e53677b909d8975604d392612000000081b2e40526373848e7d6e6466778a9886725f4b37230f00000000000000000013283d5266798a99978673604c38230e00000006182a3b4c5b6a7782878680726352402d3e5266798d927d6a5744311e0a000000000000000000000000000000000000000000000000000000000000000111223243536372838c879b8a7d7d7d8080807d7c7b78736a5d4c3926110000000000000b1e3043546474839182756d6b7b9194806c58432f1a182a3c4e607183958f7a67533f2b17000f2336495c6e8090857261515b70869a8e79644f3a25100d2135495d71869994826d5a473624110000000000000000000000000c21364b5f7489836d59475c718786705b46311c0800000000000000000000000000000313233242505e6c7986918c8073696a75808683796b59473421130900000000000000000000000c1c2c3c4b5a68768491908274686774828b86888472604d3a26110000000000000000000000051525344352606e7b88938a7d71666c778288867b6c5b4936221101000000000000001d32465b6f828c89878583828280808a807d7d7d7d7c7973685b4c3a26120000000000001e33485d7286827d7b797877767483887473737373726f695f534434220f0016293d4f6070808d807164584c41372c1e0d0000001d32475c70869a88725e4943586d83978f79644f3a251024384d61758a9e907c6855412e1b0900000011233445566573828c80797984948a7a685643301c080000000000000000000f23374a5b6c7a868679685744301d09000000000c1d2e3d4c5a646d70706b6154453423364a5e7283908874604d3a26120000000000000000000000000000000000000000000000000000000000000000041425354554647383919e979494949595959493908d877b6954402b150000000000000113253646566472808a89838287978a7764513d29140d1e30425466778894836e5b46311c00071a2d3e5161718290806f6566768a9b88745f4b36210d061a2e4256697d909d8a766453412d18000000000000000000000000081d31465b708687715d48586d8389745f4a35200c00000000000000000000000000000005142332404e5b68737d8990867c75706e6f6e675c4d3c3730261b0e00000000000000000000000e1e2d3c4a586672808a92867a70686e777c7b736555433121140600000000000000000000000716253442505d6a76828b8f8479726d6d72716a5e4e463c2f1f0e00000000000000182c3f536474838d93979897979595989594949494938e86796955412c170000000000001b2f43576a7c8c94918f8d8c8c8b8b8f8b8989898988847c7162513e2a15001c3045596c7d8e7d6f6153473a2e241b0e00000000192d42566a7d928d78645040556a8095927c67523d28131e32465b6f84989885715e4b382613010000051728384755636f7982888b8983796b5c4b39261300000000000000000000071a2c3d4e5d697171685b4b392714010000000000101f2e3c4851585c5b574f4436271b2e425464727d867d6955402b160000000000000000000000000000000000000000000000000000000000000000000717273646556472808a8b89898887868482807c7b787668543f2a1500000000000000071828384755616d778086898a857a6b5a4835210e0113253648596a787d7b705c47311c00000f213344536371808a82797984948f7d6b5845311c080013263a4d607387989482705b46301b00000000000000000000000002182d42576c828b75604c54697d8d78634e39251000000000000000000000000000000000051422303d4a56616c757c8286878680725d545252504b43382c1d0e00000000000000000000000f1e2c3a4855616d7782898d847c77766f6660554b463e322415050000000000000000000000071624323f4c58646e77808588878382735e56585f5a4d3d2b180500000000000010233547566570787d8386878888888887868483807d7b78766a56412c1700000000000014283b4d5e6d7983898d90919393939391908f8d8b888684826c57422c17001f344a5f73887d6f60514336291d1108000000000013273b4e61748794806d5a49546a8095937d68533e2913182c4054687c91a18e7a685543301e0c0000000a1a293845525d666d7274736f665b4d3e2d1b0900000000000000000000000e1f303f4c565c5c564b3d2d1c0a00000000000001101e2b353e444746433c3226181325374655606a717468543f2a1500000000000000000000000000000000000000000000000000000000000000000000091928374654626d7474737372706f6e6c6a68666360594a39251100000000000000000a1a293744505a636b71747470685c4d3d2b18050007192a3b4c5a6568666052402d190000041526364553616d7782878a8a867d70604e3b281501000b1e314457697a8983766857432e1a0000000000000000000000000014293e53677c8f7964505064798f7c67523d2814000000000000000000000000000000000004121f2c39444f5961686d70706f6b645c636767655f56493b2c1c0a00000000000000000000000e1c2a37444f5a646d75797d7d7c786f5c5d62605a50423323110000000000000000000000000614222f3b47515b636a707373726e66575366746b5a4834200c0000000000000618293847535d64696d70727272727270706e6e72686663605b4c3a27130000000000000b1e2f404f5c666e7477797c7c7c7c7c7b7978777473706e6b63523e2a15001f344a5f7482706051423325180b000000000000000b1f324557697a8b8a7867595a6d8397907b66513c27202325394d6175899d988572604e3b2815000000000b1a2734404a53595d5f5e5a534a3d2f20100000000000000000000000000112212e3a43474742392d1f0f0000000000000000000d18222a2f31312e2820150908192837434e575d5f594a39251100000000000000000000000000000000000000000000000000000000000000000000000a19283644515a5f5f5e5e5c5b5a58575553504e4b473c2d1b090000000000000000000b1926323d4750575c5f5f5c554b3e2f1f0d0000000d1d2e3d495153524c4334231100000008182735434f5b646c717474716a5f5142311f0c00000215273a4c5c6b747066594a3a2714000000000000000000000000001025394e63788d7d68534b60758a806b56412d18030000000000000000000000000000000000020f1b27323c4858615d5b5b5a616870777c7c797267594a3927130000000000000000000000000c1926323d4851596065686868645d627077756d6051402e1b0700000000000000000000000004111d29343e4850565b66685d59534e5f708377634e39240f000000000000000b1a293640495055585b5f69645c5c5c5b6779826f5a4e4c483d2e1d0b000000000000001222313e4a535a5f636567676867676669747772685b5956514535230f001c31465a6d736352423223150700000000000000000215283a4b5c6c7b8986776d6c778a998874604c382c3538363246596d8093a2907d6b58442f1a00000000000a16222d373f45484a494640372c1f11020000000000000000000000000003101d272e32322e261c0f0100000000000000000000050f151a1c1c19140d0300000a1926313b43484a463b2d1b090000000000000000000000000000000000000000000000000000000000000000000000000a1926333e464a4a49484746454342403e3b3936332a1e0f00000000000000000000000815202b343c42474a4a4742392e20110100000000101f2b363c3e3d383025160600000000091725323e4851585d5f5f5c564d41332413020000000a1d2e3e4d595f5c54483b2c1c0a000000000000000000000000000c20354a5f7388826c57475c7086846f5a45311c07000000000000000000000000000000000000000915253b506476706a6a6e757c858b918e8b85776856422d19000000000000000000000000000814202b353e4653657379776f616d828c8a7d6f5d4a36220d00000000000000000000000000000c17222b343b4e63767a6d61585d6c7d8f79644f3a250f00000000000000000b18242d353b4043576c7d74685d5463738587705b4637332b1f1000000000000000000413212d373f454a4e5c6c777974696276888d86786855413e3527170600172a3d4f5c5e554534241405000000000000000000000a1c2d3e4e5d6b778389838288938a7b6a5744313d494e4b403d50637688978e82705b46301b00000000000005101a232b30333434312b241a0f01000000000000000000000000000000000a131a1d1c1a130a0000000000000000000000000000000000000000000000000008141e272e3334322a1d0f00000000000000000000000000000000000000000000000000000000000000000000000000000915212b32343434333231302e2c2b282624211e170d00000000000000000000000000030e1821282e323434322d261c10020000000000010e1922272928231d13070000000000000814202b353d43484a4a47423a30241506000000000010202f3c464a4841362a1d0e0000000000000000000000000000071c3044586b7d86705c4756697a87735e49341f0a000000000000000000000000000000000000000010253a4f63748480808389908d86807976747a6e59442f1a0000000000000000000000000000030e182230455a6f838f8c80706f84959d8d7964503b2510000000000000000000000000000000050f18263b50667a8c80756b6b7a8b8a76624d38230e00000000000000000006111a21262f445a6f84867a7068718291826d59442f1f180e01000000000000000000030f1a242b31394e63788a8f887968788c9b9785705b463122170900000e20313e484943372817060000000000000000000000001020303f4d5a6670787d82837d776b5d4c3b3b4d5b635e4f3e47596a79837b706253402c180000000000000000070f161b1e1f1f1c17100700000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000020b141a1e1f1d170c00000000000000000000000000000000000000000000000000000000000000000000000000000000040e171d1f1f1f1e1d1c1b19171613110f0c090400000000000000000000000000000000050d14191d1f1f1d191209000000000000000000060e1213130f09010000000000000000030e1822292f333434322e271e130600000000000002111e2a3134332d24190c0000000000000000000000000000000115293c4e5f6b736e5b464c5c6a72705d49341f0900000000000000000000000000000000000000000c20334556667482888b888279726b65605f6561523f2b1700000000000000000000000000000000051b30455a6f84949e8d796777848c8b79644f3a251000000000000000000000000000000000000e23384c6072849288807a8a91806d5a47331e0a0000000000000000000000060d172c4055687a8b8d847c82908a7764513e2a160400000000000000000000000000071017243a4f64788c999885706e7d888d85705b46311c070000000213212c33343026190a000000000000000000000000000212212f3c48535d64696c6c69635a4e3f3044576a786d5c4c3c4c5b676c685e52443523110000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000050e151a1e1f1f1d19130b010000000000000000010d161d1f1e19110700000000000000000000000000000000000d1f30414e585e5c503e3e4c575d5d51412e1a060000000000000000000000000000000000000000041628394857636d7374726d665e57504b4b504e4334220f0000000000000000000000000000000000182c405466758289897763667077766d5d4a36220d0000000000000000000000000000000000091d3043556574828d938d92847362503d2a1704000000000000000000000000001125394b5c6c7a879290918d7c6b5a4835220f000000000000000000000000000000000c2135495c6d7c868b826f5f6b7477736654412d190400000000030f191e1f1b140900000000000000000000000000000003111e2b364049505457575550473d3033485e73887a6a5a4a3d4a5457544c4134261706000000000000000000000002080d0f0f0f0d0904000000050e15191b1a17110a00000000000000000000000000090e0f0d070000000000000000000000000000000000000000000000000000000000000000020e181e1f1c150b0000000000000000000000000000000000000000000000000000000000000000000000000000000000000006090b0d0c0b080400000000000000000000000000000000000000000000000002080b0b0802000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000011323303b4449483f322e3a43494941332311000000000000000000000000000000000000000000000a1b2a394651595e5f5d58524a433c36373b393125160500000000000000000000000000000000001124374858656f74746b5a545d62615b4f3f2d1a07000000000000000000000000000000000001142637475663707a848a827465554433210e0000000000000000000000000000091c2e3e4e5c69758088887c6e5e4e3d2b18050000000000000000000000000000000006192d3e4f5e697274716453585f625f56483725120000000000000000000000000000000000000000000000000000000000010d19242d353b404242403b342b1f33485d7186887868594b3c3f423f382f23170800000000000000000000040e161d22252525221e1810070b1721292e302f2c251d130800000000000000000006131c2325221a0f0200000000000000000000000000000000000000000000000000000000000413202b323431281c0d000000000000000000000202020000000000000000000000000000000000000000000000000000040d141a1e212222201d18120b0200000000000000000000000000000000000000000a151d20201c160d030000000000000000000000000000000000000000000000000000000000000002091015191c1d1d1b160f060000000000000000000000000000000000000000000000000004131f283034332d221d272f34342e23150500000000000000000000000000000000000000000000000c1b28343e45494a48443e362f28222326241e140700000000000000000000000000000000000007192a3a47525b5f5f594d41484c4c483e312110000000000000000000000000000000000000000819293846525e6770746f645647372615030000000000000000000000000000001020303e4b58626c73736a5e5040301f0d0000000000000000000000000000000000000f2131404c565d5f5d5446454b4c4b44392a1a0800000000000000020d161b1e1e1d1b1b1c1c1911060000000000000000000007111a21272b2c2c2b2720181a2e4256697b8e8777695a4c3e2d2b251c1206000000000000000000000915212a31373a3a3a37332c241a1b29343e43464440393025190a0000000000000008172430383a362d201000000000000000000003070707040000000000000000000000000000021323313d474a453a2b1907000000000000040d13171717130d06000000000000000000000000000000000000000000000c1721292f3336373735322d261e150a0000000000000000000000000000000000000b1b28313635312a20140700000000000000000000000000000000010910141515130e08010000050e161d242a2e3132322f2a23190d00000000000000000000000000000000000000000000000000010c151b1f1e19100b141b1f1f1a1105000000000000000000000000000000000000000000000000000a17212a303434332f29231b140d0e110f0a0200000000000000000000000000000000000000000c1c2a353f464a4a453c2f343737332b21130300000000000000000000000000000000000000000b1a2835414b545c5f5b524638291909000000000000000000000000000000000212202e3a454f585e5e584d40322212010000000000000000000000000000000000000313222f3a43484a4841363136373630271b0c000000000000000614202930333332303031312d2316070000000000000000000000060d1215171716120c051326394c5e70829388786a5c4a372311090000000000000000000000091826333d464b4f4f4f4c4740372c2a394751585b59544c4237281705000000000005162635424c4f4a3e2e1c090000000000000812181c1d1c18120b0100000000000000000000000d1f30414f5a5f584836230f00000000000b1620272c2c2c2821190f0400000000000000000000000000000000000001101d29343d43484b4c4c4a46413a31271c0f0100000000000000000000000000000005182939454b4a453d32251607000000000000000000000000000009141d24282a2a28231c140b1019212931383e43464747443e362b1e10010000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000050e161c1f1f1e1b150f07000000000000000000000000000000000000000000000000000000000c18232b32343431291e1f22221f180f03000000000000000000000000000000000000000000000a17232e3841474a474035281a0b00000000000000000000000000000000000002101d28333c444949443b2f221404000000000000000000000000000000000000000004111d272e3334332e251c2122211c140a00000000000000051524323d4548484746454647403425130100000000000000000000000000000000000000000a1d2f415364748594897a65503b261100000000000000000000000617273644505960646464615b53493e384857646d706e685f544634210d00000000000f223444535f645c4b39251200000000010f1b252d3132312d261e14080000000000000000000016293c4e5f6d7466523f2b18040000000c1b28333c4142413c352c21150700000000000000000000000000000000000f1f2e3b4750585d6062615f5b554e44392d1f110200000000000000000000000000000c21344757605f594f43342514020000000000000000000000000d1b2731393d3f3f3d3730281e242c353d454c53585b5c5c5952483c2e1f0e0000000000000000000000000000060d13171a1b1b1b1915100a030000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000610171d1f1f1c160c0a0d0d0a040000000000000000000000000000000000000000000000000006111b252d3234322c23170a0000000000000000000000000000000000000000000b16202930343430281e120400000000000000000000000000000000000000000000000a131a1e1f1e1a12080c0d0c08010000000000000000112233424f595e5e5c5b5a5b5c5243301d0900000000000000000000000000000000000000000012243546566675838a78644f3a251000000000000000000000001224354554626d75797979766f665c4f435566758286847c7264503c27120000000000182b3e516270796854412d1a06000000101f2d3841464746413a3125190b0000000000000000001c3145596c7d826e5b4734200d0000081a2a39465056575650493e32251607000000000000000000000000000000091b2c3d4c59636c7276777674706961574b3d2f2010000000000000000000000000000010253a4f6475746c61524231200d00000000000000000000000c1c2b38444d525454514b443b30374048505960676d7072726d655a4c3d2c1a08000000000000000000000005101921272c2f3030302e2a251e170e050000000000000000000000000000000000000000000000000000000000000000000002091015191c1d1d1b160f0600000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000811191e1f1d1810060000000000000000000000000000000000000000000000030d151b1f1f1b150c0100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000192d4051606c737372706f7070604c37220d0000000000000000000000000000000000000000000617283948576570746c5c4935210c00000000000000000000091c2f4153637280898f908f8a83796d6051607385938f837b7968533d281300000000001d32475b6e8085705d4936230f00000b1d2e3d4a545b5c5b554d4337291a0b00000000000000001f344a5f74898a7763503c291502001326374857636a6c6b655c50433425160600000000000000000000000000001226384a5b6a7680878b898a89857d73685b4d3e2e1e0d0000000000000000000000000010253a4f6375888070604f3d2a170400000000000000000006182a3a495660676a6a6660574d434a535c646c747b8286888882776a5a49372512000000000000000000000a17222c353c4144464646433f39322a21170c0100000000000000000000000000000000000000060d121415130f09020000050d151d242a2e3132322f2a23190d0000000000000000000000000000000911181c1d1d1a150f0600000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000004090d0f0f0e0a0400000000000000001e33485d6f7d88898787868776624d38230e000000000000000000000000000000000000000000000a1b2a3947535c5f5a4e3e2c1906000000000000000000001024384c5e708291998b827d80858b7d7061687c9097837166645c4b38241000000000001f344a5f748a8d7965523e2b18040215283a4c5b677072706a60544738291a09000000000000001f344a5f748b93806c5845321e0b091c3043556675808380786e6152433424130100000000000000000000000004192e41556779888f8277737478808b86796b5c4c3c2b1a090000000000000000000000000c203446586b7d8f7d6c5a4734200d000000000000000000102336475867737c80807a736a60545d666f77808890969b9d9c9589786754412e1b0700000000000000000d1b28353f4950565a5b5b5b58534e463e342a1e12050000000000000000000000000000000005101a2126292a28241d150b1019212931383e43474747443e362b1e0f00000000000000000000000005121c252c3132322f2a221a0f040000000000000000000000000000000000000005111a1f1f1a120600000000000000000000010608090906010000000000000000000000000000020b101313110d0702050606060300000000000000000000000000000000000000000000000000000000000000000000000000000000000710181e222525231f1910050000000000001f34495e7176767888807d796c5a47331f0a00000000000000000000000000000000000000000000000c1b293640474a463d30200f0000000000000000000000162b3f53677b8e9e8c7a6d686a707b89806f6d8397907b67534f4a3e2e1c0900000000001f344a5f748a95826e5a4734210d0a1e3245586a798588857d72655647372716050000000000001e33485d71869b8875614e3b27140f24384c5f72859397908b8070615241301f0d000000000000000000000000091e33485d7185968371635f5f646d79888a7a6a5a493826140200000000000000000000000417293b4f63768a897663503c2814000000000000000000182c40536576858783858c877d72677079838c949c9994908d8b8b8c84715d4a36220d000000000000000c1c2b3946525c646a6f7070706d68625a51473c3023160800000000000000000000000000000816222d353b3e3f3d3831281d242c353d454c53585c5c5c5952483c2d1e0d000000000000000000000514232f3940464747443e362c22160900000000000000000000000000000000000515232e34342e24170800000000000000040d151a1e1e1e1b150e04000000000000000000000006141e25282926221b171a1b1b1b18130e07000000000000000000000000000000000000000000000000000000000000020607070704020e19232c33373a3a38332c22170900000000001b2f42536060606c808a75655c4e3d2b18040000000000000000000000000000000000000000000000000b18242d3334322a1f120200000000000000000000001a2f44596e839796826e5c53555e6a79897c6f869b8d78634e3a362d20100000000000001d32475c7085998a7763503d2a161125394e61758897938b8c83746555453322100000000000001a2e43576b8094917d6a5743301d14293e52677b8f9b887a7c8780705f4e3d2b180600000000000000000000000a1f344a5f748b907b67534a4a505c69798b8977675543311e0c0000000000000000000000000c1f33475b6f8393806b58432f1b0700000000000000001d32475b6f8383746c70798590847b848d96958f8a84807a777474777c79644f3a250f00000000000007192a3a4957646f788084878786827c756d64594d4134261809000000000000000000000000081726343f49505354524c443b2f374048505860676d7072726d655a4b3c2b1907000000000000000001132332414c555a5c5c5852493f33271a0c0000000000000000000000000000000011233341494941352618090000000000091620292f3333332f2921170b000000000000000000041524313a3d3e3b362e2c2f3030302d28221b130900000000000000000000000000000000000000000000000000000911171b1d1d1c1915202c3640474c4f4f4d483f3427180900000000122535434b4b51657a8f7b66523e301f0e00000000000000000000000000000000000000000000000000000611191e1f1d170e020000000000000000000000001d32475c72879c917b67523e414d5b6b7b897684998c76614c37221a0f02000000000000192d41556a7d9293806c5946331f152a3f53687c919885757783847362513f2d1b08000000000014283c5064778c9a8773604d3926182d42576c829694806a6976867d6c5a4835231000000000000000000000000a1f344a5f74898f78634e38353e4c5c6d80928572604e3b281502000000000000000000000004182b4054687c9187725e4a36210d00000000000000001f344a5f7489786563686e7582958f958d87827b756f6a6562605f62696d5f4c38230e00000000000012253648586775828c948e86838284888a82766b5f524436271808000000000000000000000214263544515c6468696660574c414a535c646c747b828688888277695a4937241100000000000000000b1e3041515e686f72726d655c5145382a1c0d0000000000000000000000000000001a2e41515d5d5244362718080000000b1a27333d44484848443d34281c0e00000000000000000e2133424e5353504a424044464645423d362f261c12060000000000000000000000000000000000000000000004111c252c303232312e29323d49535b616464625c5245362716040000000717253036374c60758a826c57422d190400000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001d32475c72889d8f78634e392f3d4d5e6f828283988c76604b36210c000000000000000012263b4e62768a9c8975624f3b28192e43586d8397937d69647282806f5d4a38251200000000000d2135485c6f8396907c695643301d2f445a6f8499917b66586777897765523f2c190600000000000000000000081d31465b6e828f78644f3a252e3e50627589907d6b5845311e0a0000000000000000000000001125394d61758a8e7964503b271200000000000000001f34495e73887c76787c838a918b8f8b7a726c66605b55514d4b4a4d55585041301c090000000000091c2f42546575859398897b726d6c6e727983897c70625445362616060000000000000000000d20324353626f787d7d7b746a5e545d666f7780888f969b9d9c9588776654412d1a060000000000000013273a4d5f6f7b84888782796e6256483a2b1c0d00000000000000000000000000001f34495d70706254453626170800081929384550585d5e5d5850463a2c1d0e0000000000000014293d50606868655e5555595b5b5a56514a42392f24180c00000000000000000000000000000000000000000514222e384045474746433e434f5b666f767979766f63544533220f0000000008141c2132475c718686705b46321d08000000000000010a0f110e0800000000000000000000000000000000000000000000000000000000000000000000001d32475c72879c8f78634e38232f405163768980958d77624c38230d00000000000000000b1f33465a6d8094927d6b5845321f2f445a6f869a917b66546474867a6754412e1b080000000005192c405366798c9986725f4c392630465b70869b907965505a6b7c826f5c4935220e0000000000000000000002172b3e516373807c68533f29213346596c80938874614d3a26120000000000000000000000000a1e32475b708493806a55412d1803000000000000001b3044576a7a868a8b8986827c7680908a796a5a4c46413c3836353941433d3223120000000000001124384c5f7183949e8c7a6a5e5857595e66707b88807263544434231201000000000000000015293c4f6171808c86868b887c6e687179838b949c99948f8c8b8b8c83705d4936210d00000000000000192d42566a7d8e98877d828980736658493a2b1b0b000000000000000000000000001f344a5f748272635444352616061425374755626c7273726c63584a3b2c1c0b000000000000172c42576c7c7d797267696e70706f6b655e554c41362a1d1002000000000000000000000000000000000003142332404c545a5c5c5b585253606d78838a8f908b827263513e2b1804000000000108192e43586c828974604b36210c000000000008141e2426231b10030000000000000000000000000000000000000000000000000000000000000000001b30455a6f8499907965503b26223446596c8083938f79644f3a2510000000000000000003172a3d5064778a9b8875614e3b2830465b70879c9079655057687a85715e4b37241000000000001023374a5d6f83958f7b6855422f30465b70869b917b66504d5f71847864513d291501000000000000000000000f22354655636d7467533e2916293c5063768a917c6955412d1904000000000000000000000004182c4055697d9385705b46321d080000000000000015283b4c5c6971747473706c686271829289786858473727232020262c2e29211405000000000000172b4054677b8fa195826e5c4c4342444a535d6a76858272625241301e0d00000000000000001b3044586c7d8879707077858d7d7b858d96958f8a84807a777474777c79644f3a240f000000000000001c31465b70869a947d696c76838476675849392919090000000000000000000000001c31465b6f8382726253443424151e314355657380878988807568594a3a2917060000000000162b3f536572828d85797d84878785807972685e53473b2d201103000000000000000000000000000000000e213242515d686f7272706c6664717d8a969f9e9a9891806e5b47331f0b000000000000152a3f53687d8e78644f3a25110000000009182531393b372e2111000000000000000000050809080500000000000000000000000000000000000000182d41576b8296927c68533e2917293c4f63768a9e917b67523d28130000000000000000000e2134475a6d8093927d6a57443230465b70869b917b66504a5c6e827a67533f2b170200000000071a2d405366788b9885725f4c392f445a6f869a927c675242546679826d58442f1904000000000000000000000517283745515a5f58493724102034475b6f839785705c48331f0b00000000000000000000000412263b4f64788d8a75604b37241b110700000000000b1d2e3e4b565c5f5f5e5c5753536474859686756555443322110b121718150e03000000000000001b30455a6e8397a38e7965513f2e2c2f36404c5966758580705f4e3c2a1806000000000000001f34495e73887a6963686f76868e8f938d87827a756f6a6562605f62696d5f4c38230e000000000000001d32475c72889d947d68596572828676675747372716050000000000000000000000182c405467788a82716152423223273a4d6072839297898286877768584735241200000000001024364755627182918d92908883828488857b7065584b3e2f211102000000000000000000000000000008182b3e4f606f7b84888886827a7582909c968f898683848877634e3a251000000000000011263b5064798f7d68533f2a1500000005172736434d504b3f2f1d0a0000000000000a13191d1e1d1a140c020000000000000000000000000000000014293e52677b9096826c57422e192033475a6e839694806a55402b1601000000000000000005182b3d506376899b8874614e3b2f445a6f8599937c68533f516476836e59442f1a050000000000102336495b6e82938f7b6956433043586e8398947d69543f4a5c6f7c6c58442f190400000000000000000000000a1927343e464a453b2c1d1e1c2b3f53677c908b77634e3a261100000000000000000000031322303c4a5e72888f7965503f372e24190d010000000010202e3942474a4a4947433e46566777899483726151402f1d0c000000000000000000000000001e33485e73889d9f8a74604b3622171b232e3b49576777887d6b5947352310000000000000001f344a5f74897a76787c838a918f8e7d78726c66605b55514d4b4a4e55585041301c09000000000000001c31465b70869b96826b565562718286756555443423120100000000000000000000112437495b6b7b8c8070615141312e42566a7d909c8a786c738286756453412f1d0b00000000071929374a5c6d7d8da19480746d6c6e737c868376695c4d3f2f200f00000000000000000000000002101b2433475a6d7d897d78787b828a8793958c837a746f6e6e737765503b26100000000000041423374b60758b826c58432e19050000102234455460665d4c3926120000000002101c262e3233322e281f15090000000000000000000000000000000f24384d62768b9a86715c48331f172b3f53677b8f97836d58442f1a050000000000000000000e213346596b7d90917d6b58453243586d839894806a5540475a6c776957422e1904000000000816212c3e516376899986725f4d3a41566b829697826c57423f5262685e4e3d2915010000000000000000000000000916212b3234312c303233322e394d61758a927d6955402c18030000000000000000000f2131404e59626d8294806a5b534a41362b1f110400000002101c262e32343434312e2938495a6b7c8e91806f5d4c3b2a18060000000000000000000000001f344a5f748ba09d88735e48331e0907111d2b3949596a7b897764523f2c19060000000000001c31465a6d7c878b8b8986827c829383705e58524c46413c3836353941433d3223120000000000000000192e43586d829799856f5b46546373848372625241301f0d00000000000000000000081a2c3d4e5d6d7c8d806f5f4f3f34495d71869993806c5b62728382705e4c3a281503000000061a2d415467798b9b94978f7d6e5d5960697482887a6b5d4d3e2d1d0c000000000000000000000111202d373f4e63778a796b64636c7987989283786f665f5a58595f63594835210d0000000000102232414d5d718786715c47321e090000182c3f5263727a6955412e1b0700000011202e3942474847433b32271a0c00000000000000000000000000000a1f33485d71869a8b76624d39251024384c6074899b87715d48331e0900000000000000000c1a262d3c4e617386988875614f3e40556a809597836d58433d4f5e635a4b3a271400000000051626333c3f46596b7d908f7c69564d5053687d9399856f5a45344450534d4030200d0000000000000000000000000000040e17222e384045474847433e465b708598846f5b46321e090000000000000000071a2d3e4f5e6b767c7d9384756f675d53483c2f221303000000000a13191e1f1f1f1c191b2b3c4d5e6f82928d7b6a59473624120100000000000000000000001f344a5f748a9f9f89735e49341f0b00000d1b2b3b4c5e7082826f5c4935220e000000000000162a3d4f5f6a72747473706c67768a8e7a68554238322c27232020262c2e292114050000000000000000152a3f53687c929e8974604b455566768880705f4e3c2b1a08000000000000000000000e1f303f4f5f6e7d8e7d6d5d4d3d4e63778ca18c776450546475877c6a574532200d0000000d2135495d708496988588988c7b6a594c566370808a7b6b5c4b3b2a19070000000000000000000e1f2f3e4a5358677c86706267717d8a90867d8e837465554643444b4d473b2b19060000000000182c3f505f666d838a75604b36210d00001e32475b6f8285715d4a36231000000c1e2f3e4b565c5e5c574e44382a1b0c0000000000000000000000000005192e42576b8095917c68533f2a161d31465a6f84988b76614c38230e00000000000000081a2a3841444456687a8d92806c59535558677c929a86705b4631404b4e483c2d1d0b000000000f22344450545454607285978673606365686b798f9d88735e4934333b3e392f221202000000000000000000000000000001122232404b545a5c5d5c58524a566a80948a75614c38230f00000000000000001024374a5c6d7c89918f91908a837a70665a4d4031200e00000000000004090a0a0a070916212f4152637587988876655341301e16140f0800000000000000001e33485d71879ba18c77624e3925120000030e1d2f405365778b7865513e2a160300000000000e2031414e575d5f5f5e5b575a6d829585725f4b382418120e0b0b121718150e030000000000000000001025394e63778ca08f7a66513d48596a7a8c7c6b5a49372514020000000000000000000112213141506070808c7b6b5b4b53687c929b87715d494758697a8774624f3d2a1704000013273c5064788da0917c7a8b998876655345526171828a79695948362513010000000000000006192b3d4d5c676e6d7a8979777b848f887d736f808f8473635343323738342a1d0d0000000000001c31465b6e7b777d8e79644f3a261100001f344a5f748a8d7966523f2b18050316293b4d5c697173716b615548392a1a0a0000000000000000000000000014283d5165798f97836d5945311c172c4055697d938f7a66513d28130000000000000011243748555a5a5a5d6f8294897665686a6d70788e9e89745f4a352e3638342b1e0f0000000000152a3e51626a6a6a6a6b798c907d7577797d82848da18c77624d38232728251d12040000000000000000000000000000000b1e3040505d676f7272706d665d52667a90907b66523d29140000000000000000162b3f5366798c94857a878c7c828a83776b5e4f3e2b170000000000000000000000061827343c3e4657697a8d9483705f4d3c2c2b28231b11050000000000001a2f43586d8295a6917c6854412e1b0a0313202b3136485b6e82826d5945301d170e03000000021323303b43484a4a4946425165798d8e7a6754402c19050000000000000000000000000000000000000b1f34485d71869a95826c58433b4c5d6e808977665543311f0d000000000000000000000313233242516171828a796959586d829797826d58433a4c5d6f82806c594734210e0000182c41566a8094a08b766d7d8f948371604e43536475868876655442301e0c000000000000000e2236485a6b7a83786f7d878b89857d756b60617182928271604f3e2c2320180d000000000000001e33485e73838a808e7d68533f2a1500001f344a5f748996826f5b4834210e0b1f3346596a7a8689867d73665748382817050000000000000000000000000e22374b6074899d88745f4b362212263b5064798e95806b56422d1904000000000000162b4054666f6f6f707076899380797c8083868990a28d77634e3925212320180d000000000000172c42576c80808080828385998a8b8d90928d88889b907b66513d281313110a000000000000000000000000000000000115283b4d5e6e7a8488888782796f6461768c95826c57432e1a05000000000000001b30455a6e83968a776c82907b6e7680897b6d5a46311c0000000000000000000000112436455053504d5d6f82938f7c6b594742403d382e231506000000000015293e5266798da09885705d4b3927170f21313e46474352667a88735f4b36322b20130400000004121e282f3334343431364a5d71869783705c4834210d000000000000000000000000000000000000051a2e42576b80949b87725e4a353f516274868472604e3c2a1805000000000000000000000414243343536373848776665c70869b937d68543f2e40516375887663503d2a1704001b30455a6f84999c8872607182938f7d6c5a494657687a8c83715f4d3b28160300000000000015293d5165778a8b74606b727473706a61584e536476888f7d6d5b4a3725130500000000000000001b30445665707d8b95826d58442f1a00001d32465b7085998b7764513d2a1711253a4e6275889892898a8475665645342311000000000000000000000000081c31455a6e83978e7965513d291421364a5f74899a86705c47321e09000000000000172c42576c8286868687888a9a8f9093928d8883869a917c67523e29140e0b0500000000000000152a3f53667888929597989793998d88837d7873829794806b56412c1803000000000000000000000000000000000000081c3044576a7c8d98918886888d82746672889b86715d48331f0a000000000000001e33485e738899846f677c91806b636e7a7d6f5b46311c0000000000000000000000172c4053636865626063758899897664585756524b4133241503000000000f23364a5d708395a08d7a6856453527192b3e4f5a5c58545f74887965504a463e31231201000000010b141a1e1f1f1f1c2e42566a7d928c7764503c28140000000000000000000000000000000000000014283c5065798ea28d7864503c334557697b8d7d6b5947352210000000000000000000000006162636455666768785746473899e907a65503b263446586a7c806d5a4734200c001e33485d72889d9b866f5a647587988a786755444b5d6f828f7c6a584533200d0000000000001a2e43586c829588735e585d5f5e5b554e453b47586a7d908b79675542301e0b000000000000000014273948535f6d7a8887725d48331e0000182d4155697d9194806d5a463320162b3f54687d92988574768285746352402e1c09000000000000000000000002162b3f53687c9195806c57432f1a1c31455a6f84988a75614c38230f00000000000014293d516374838d929493918e9589837d78736d829596826c57422d1904000000000000000000102437495a69757d838484827d8c8a776e6963687c9299846f5b46311c080000000000000000000000000000000000000d21364b5f73889a92827470727a8585756e83988b76624d38240f000000000000001f344a5f748b98836c62778c846f5a5d6a6d6051402c1800000000000000000000001a2f445a6f7d79777473717c8e94826f6d6c6b665e514232210e00000000071b2e41536677899a988674635344372b32475b6d716c68656e847d69605f5a4f41301e0c00000000000005090a0a0a13273b4f63778c93806b5743301c080000000000000000000000000000000000000d22364a5e73889c94806b57432e394c5d708389766452402d1a0700000000000000000000000818283848586878898271768ca18d77634e3823293b4d5f728576634f3a2510001f344a5f74899f99846e5958687a8b96857361503f5164768a8875624f3c29160200000000001d32475c71879b88725c47484a4946413b32293b4d607286968572604d3a271401000000000000000a1b2a36424f5c6a7887735e48331e000012263a4e6175899c8976634f3c29192e43586d8397937d69637182826f5d4b3926130000000000000000000000021025394e62768b9b87725d493521172c4055697d93907b66523e29150000000000000e213446566570787c7d7d7b78898d7a68645e667b909a86705c47321e09000000000000000000071a2b3c4b5862696c6e6e6c6e8092826f5d4f63778c9e89745f4b36220d00000000000000000000000000000000000010253a4f64798e9d8975625b5e67738284738094907b66523d2914000000000000001f344a5f748b98836d5d728788735e4c575950423322100000000000000000000000192e42576c80908d8b8887868a9e8d848383807a7061503d29150000000000112436485a6b7b8c9a9282716255483e36485e7386827d797880827676746d5f4e3b281500000000000000000000000c2034485c70859987735f4b37230f000000000000000000000000000000000000071b3044586c82959a86715d49352e415366788b826f5c4a3724110000000000000000000000000a1a2a3a4a5b6b7b8c80788fa08b76604b36211e30425567797664503b2510001f344a5f748ba099846e594b5c6d7d9091806d5c4a475a6d8092806c5945321e0b00000000001f344a5f74899d88725c47333434312d261f1e304356697c908f7c6a5744311e0b00000000000000000c1924313e4c5a68746c5a46311c00000b1e3246596c809393806c5946331f2f445a6f869a917b66536373857a6855422f1c0800000000000000000710171b1f33485c70869a8d7864503b2712263b5064798e95826c58432f1b0600000000000517283847545d64676868666b7d8f8572604e61768b9f8a75614c38230e000000000000000000000e1e2d3b464e54585858576274868d7a68565d72879b8e7965503b271200000000000000000000000000000000000011263b50667b9199846f5a464a56637384827a8f95826c57422e19050000000000001e33485d72889b87715d6d838c77624d43443e32241505000000000000000000000014293d506373828a8f93949594949d968d8b8987806d58432e18030000000007192b3c4d5d6d7b8a97908272665a514a465a6e829293908e8d8d8c8c8a7d6b58442f1a000000000000000000000005192d41556a7d928e7a66523e2a160200000000000000000000000000000000000015293e52667a8fa18d78634f3b2636495b6e828c796654412e1b080000000000000000000000000c1c2c3d4d5d6e7d8d7c909f89735f4a341f1325374a5c6866584835210d001f344a5f748a9f9b866f5a454f617284958b796856455064778b8975614e3a261200000000001f344a5f748b9e89735e48331f1f1c18120b1426394d6073879a8773604d3a27130000000000000000000613202e3c4a585f5b4e3d2a16000003162a3d506376899c8975624e3b2830465b70879c9079655056677985725f4b382410000000000000000d19232b30323142566a8094937d6a55412d1921364a5f73889b87725d4935210c0000000000000a1a293641494f525353515f7083907d6b595c70869a8f7a66513d281400000000000000000000000f1d29333a3f434343455668798b867361586c8295937d6a55412c1803000000000000000000000000000000000011263b50667b9198836c57423845556677897a8b9a86715c48331e0a0000000000001b2f44596d83978c7763687d907b66514b463d3021100000000000000000000000000d21344555646f757a7d8080808093917d767372706855412c170200000000000d1e2f3f4f5e6c7985909184776d655e5952647480878b8c8b8886827d7c705b46301b00000000000000000000000012263b4f63778c96826d5945311d16110a020000000000000000000000000000000f23374c6074899d937d6a55412d2c3e5164778b84705d4a372411000000000000000000000000000e1f2f3f506070828d959d88725d48331e081b2d3e4c5452483a2a1805001e33485e73889d9c87725c4743556677899786746251485b6f83917d6955422e1905000000001f344a5f748ba08b745f4b35200b060000000a1d3044576b8093907d6956432f1b0800000000000000000002101e2c3b454a473e301f0e0000000d213447596c8092927d6b58453230465b70869b917b66514a5c6e807a6753402b170200000000000d1c2b363f4547453d5065798e9985705c47331e1c3045596e83978d7864503b2713000000000000000b19242e353a3d3e3e4253657688887664566b809495806b57422e190500000000000000000000000c161f262b2d2e2e394a5c6d80907d6c5a667a8f99846f5b46321d09000000000000000000000000000000000011263b5065799098836c57422d38485a6b7d86879c8b76614d38240f000000000000162a3f53677b8f93806b64788d806a6060594e3f2e1c0a000000000000000000050e1518283746525b6165686a6a6a76899b8976635c5b574a39261200000000000001112131404e5b67737d878e8a8279726d5e56636c7274767473706c69676153402c180000000000000000000000000c2034485d71869a8974604c382f2b251e150b0000000000000000000000000000091d31465a6e83979985705c47332235485b6e828d7a6754402d1a07000000000000000000000000011122324353637485969c87705b46311c070f202e393f3e362a1c0c00001c31465b70869b9f8a74604b3748596b7c8e92806e5d4b53677b8f85715d4834200b000000001f344a5f748ba08d77624d38230e000000000114283b4f63778b9986725e4b37230f00000000000000000000000e1d293134332b20120200000004172a3d506275889b8875614f3c2f445a6f8499937c68533e516376836f5a442f1a050000000007192b3a48535a5c5a4e4a5f73889d8b76614d3924162b4054687d92937d6a56412d19050000000000000007111a21252829293647596a7b8d826f5d65798e9a86715c48331f0a000000000000000000000000030b111618191b2d3e4f6172848a77666075899d8a75604c38230f00000000000000000000000000000000000e23384d63778d99846f5a442f2b3c4e6072858398907b67523e29140000000000001024384c5f7286988875627489846e76756c5d4b39261300000000000000000c1822292d2d28353f474c50535454596c7d9293806d5b48433a2c1b0900000000000000031322303d4a56606a727980838d8677634d50585d5f605f5e5b5754524e4435231100000000000000000000000005192e42566a80938f7b67534744403931281e120500000000000000000000000002172b4054687d929f8b76614d39242b3f5265798d84705d4936230f00000000000000000000000000041425354656697d949b86705b46301e0d02101c252a2923190c000000192e43586d8397a38e78644f3a3c4d5f7082948c7a69574c6074898c77634e3a2511000000001e33485e73889d907a65503b261200000000000c2034485c7085998e7a66523e2a160100000000000000000000000c161d1f1e180f0200000000000d203346586a7d9092806c59463343586c839795806a554046596c766856422d1904000000001124374858666e726c5a455a6e8397907c67533e2a15253a4e63778c9985705c4834200c000000000000000000060c101313182a3b4c5e6f808d7a685f73889c8b76624e3925100000000000000000000000000000000000000f213243556677898371606e83978f7b66523e2915010000000000000000000000000000080f1320354a5f74899c87725d48331f304355677a8da096826c57432e1a050000000000081c304356687a8d92806d6f84887b8a897a6956422e19000000000000000d1c2a353d43423b2f2b32383b3e3f3f4f6174889b8b7765523f2d1c0e00000000000000000004121f2c38444d575e6777888a786759473d43484a4b4a4846423f3c39322617060000000000000000000000000918273b5064788d97836e5e5c59544d443b2f23160800000000000000000000000011253a4e63778ca1907c67533e2a2336495d70858d7965523e2b17040000000000000000000000000007172b40566b80959b866f5d4d3c2b1a09000a1114140f0700000000162b3f54697d93a7927d69544030415364768898877563525a6e83927d68543f2b16010000001c31465b70869b937d6954402b16010000000005192d4155697d9296826d5945311c0800000000000000000000000000000000000000000000000d1b272e3b4e60728597897562503f42556a809597836d58433c4e5d61594a3927130000000000182c405466768385705c4754697d9296826d58432f1a2034495d72879b8c77634f3b261200000000000000000000000000000c1d2f40516373858674636d8295917c68533f2b160200000000000000000000000000000000000314263748596a7b8d7d6c687c9096826d5844301b0700000000000000000000000006121c23282a31465a6f84998b76614d382426384b5e7085989b86715d48341f0a0000000000001326394b5d6f82918b796a808c767d9186715c47321e000000000000091b2b3a475158574d3e2c1e2326282a3245576a7d9095826f5c4936231000000000000000000000010e1b26313b4e61738594806d5a4a3b4347463f363433312d2a27251f15080000000000000000000000000718273644505d72879b897573726e6861574d41342617080000000000000000080f13152034495d72879b96826d58442f1b2d4155687c91826e5a47331f0b0000000000000000000000000000172c42576c83979e8d7b6a5a49382716050000000000000000000011263b4f64788da297836e5a46313547586a7b8d92826f5d53687c92836d59442f1a05000000192e43586d839797836d5944301b07000000000012263a4f63778d9c88745f4b36220d00000000000a12181b1d1c19130c0200000000000000081a2b3943464655677a8c92806c5a54575a677c919b86705b46313f494c473b2c1c0a00000000001d32475b708495826c57424f64788e9b87715d48331e1a2f43586c8295927d6a55412e19060000000000000000000000000000112234455667788a806f667a8f97836e5a46311d0900000000000000000000000000000000000008192a3c4d5e6f808a786775899c88735e4a36220e00000000000000000000000716232f383d3f3e41556a8094907b66523d291b2e4154677b8fa08c77624d3924100000000000000a1c2e40516273839287767b8f7a75898a745f4a341f0000000000001326384958646c6b5c48341f0e111315283b4e6073879a8c796653402d1a060000000000000000000000091b2f43576a7d918d7864503d4c575c5b524536261c191512100b02000000000000000000000000001324364554626d77809591888987837c746a5e524435261605000000000005111b23282b2a2e43586c82969c87725d49342025394d61758a8a76624e3a26120000000000000000000000000100192e43586e84989e8f8977665544332211000000000000000000000c21364a5e72879b9e8975604d39293b4c5e6f82938d7b6a5863778c87725d48331e09000000152a3f54697d939c88735e4a35210c00000000000c2035495d72879c8e7965503c271200000004111d262d3032312d271f150a00000000000011253849565b5b5b5d6f8293897666696c6f72788e9e89745f4a352d3537332a1d0e0000000000001f344a5f748a97826b56404a5f74899f8b76614c372214293d52667a8f9985715d4935210d000000000000000000000000000005162738495a6b7c8d7b6a73889c8974604c38240f000000000000000000000000000000000000000d1e2f405162728485736e83968e7965513d29150100000000000000000002142534414b525453495065798e95826c57422e1a25384c5f72879a917c68533e2a150100000000000011223445556473829086788c7d70868a745f4a341f0000000000071b2f435667768275604b36210b00000b1e3144576a7d9196836f5c4936230f00000000000000000000000b2035495d72869a88735e4a4b5b69716f63544432210e0000000000000000000000000000000000091d3042536372808a828d9682747a838f887c70615343332311000000000615232e373d403f393e53677c91a18c77634e39241e32465a6e83927d6a55412d190500000000000000030c111516141a2f44596e849999848985736251402f1e0d000000000000000000071b2f43586c8094a4907c6854402d2f4052647588998875645e73888b75604b36210c00000011263b4f64788da28d7864503b27130000000000061b2f44596d839794806a55402c1702000212222f3941464746423b32271b0d0000000000162b4054677070707172758893827b7d8284878a91a28d78634e392520221f170c000000000000001f344a5f748b98836d5843475c70879b8f78644f3a240f23384c6075899e8c7864503c2815010000000000000000000000000000091b2c3d4e5f6f8088766c80958f7b67533e2b160200000000000000000000000000000000000000112233445566768880707a8f95806c5844301c080000000000000000000d203243525e666a66574b5f73889a86715d48341f1c3043576a809496826d5844301b0700000000000005162737465564717d8a8a8b83778784705c47321d00000000000b20354a5e728588725d48331e0900070e15273a4d6174889b8c7965523f2b180a000000000000000000000f24394e63778d9b86705b4656687987827261503d2a1704000000000000000000000000000000001125394c5f7182918072879b89746671808e8e80716151402f1d0a000002142433414b5254544a3b4e63778da2917b67523d28172b4054687c9285705c48341f0b0000000000000a161f262a2b29222f445a6f869b99847d8f806f5e4d3c2a190800000000000000000014293d5165788ca09884705c4935233546586a7b8d9382705e6f848d78634e39240f0000000c21354a5e72879b937d6a56422e1a060000000000162b3f54697d9399846f5a45301b06000e2030404c555b5c5b564e45392b1c0d00000000172c42576c8087878788898b9b919194918c8782869a927c68533e29140d0a0400000000000000001e33485d71869a87715d4844596e8499917b66503b26111d31465a6e839794806b5844301c090000000000000000000000000000000e1f3041526273848473798d96826e5a46321e0a00000000000000000000000000000000000000041526374859697a8b7d73889b88735f4b37241000000000000000000015293c4f60707a80735e48596d83978c77624e392514283c5165798f9c88735e4a36210d00000000000000091928374654616d7780888e8c86776754402d1900000000000e23384e63778d89735e48331e10151b2229303844586b809295826e5b4735281b0d00000000000000000011263b50667a909b866f5a465b70839290806d5a4733200c00000000000000000000000000000000152a3f54687c8f86736b8094907b67616f7d8f90806f5e4c3a271400000d203242515e666a6859464a5f73899e95806a55402b16253a4e63778d8c77634e3a251100000000000c1b28333b3f403e3530465b70869b988370828d7c6a59483725140200000000000000000e2135495d7084979f8c7864513e2d3e4c57606f82938e7c6a6b80907965503b2610000000071b2f43586c80949a86715d4935210e000000000012263b5065798f9c88725d48331e0900172a3d4e5e697072706a6156493a2b1a0800000014293d506373828c919392908d9488827c77716c809596826c57422e1905000000000000000000001a2e43576b80928c77634f43586d8398917b66503b2611172b4054687c919b88735f4c382511000000000000000000000000000000011223344555667688827186998975614d392612000000000000000000000000000000000000000008192a3b4b5c6d7d8c7c80938f7a6753402c1a0800000000000000001b2f44586c7d8e836e594553687c92917c68533f2a1622374b60758a9e8d7964503c281400000000000000000a192836434f5a646c808b7672685a4937241100000000000e23384e63788f8b75604b372425292f363d444c535b63768a9e8b77635246392b1b0a000000000000000011263b50667b919b86705b4655657383938a76634f3b261200000000000000000000000000000000182d42576c8395806b64788c97836f5b607082948d7b695643301c080015293c4f60707a80745f4a465b70869b98836d58432e1920354a5e7388927c68533f2a1501000000081a2a39454f5456514535465b70879c98836c7688897766544331200e0000000000000000061a2d4154677a8ea195826d5a48394b5c6a74767588998876687d917b67523c27120000000014293d5064788ca08d7864513d2a1703000000000e23384d62778c9f8b745f4b35200b001c31465a6c7b8588867d746758483725130000000d21334555646f777b7c7c7977888d7a68625d667b909a86715c47331e090000000000000000000014283b4f62758893806c5948586e8499907b66503b26111125394e62758a9e8f7b6754412e1d0b00000000000000000000000000000005162737485969798a807d91917c6955422e1d0b00000000000000000000000000000000000000000c1d2d3e4f5f6f808c7d8a96836f5c493725120b040000000000001e33485d728897826b57414e63778c97836d59442f1b1d32465b6f849994806b57432e1b0700000000000000000a1825323d4751657a8f7965564a3c2b1a0800000000000e23384d62778c8f79655140393a3e434a515860676f767d859a93806f635749392713000000000000000010253b5064798f9d88725d484755647485927d6a55412c1803000000000000000000000000000000182e43586d83937d685d7085988a7662536476899986725f4b38240f001b3044586c7d8e846e5a4544596e84999b866f5a45301b1c31465b708697836d58432e1a05000000132537485762696b63523e465b70879c98836c6a7c8e8372604f3d2c1a0800000000000000001124384b5e7184979e8a7764524155687a887d6a7b8d9482707b917c67523c2712000000000d2135495c70849794826d594633200d000000000b20354a5f74899f8c76614c37220d001f344a5f748984787b868676665543301c0800000416273746535c63666767656a7c8e8673614e61768b9f8b76614c38230f000000000000000000000c203346586a7a8b897666585d71879b8c77634e39241e232332465a6e83969884705d4b3a281400000000000000000000000000000000091a2a3b4b5c6c7c8c82899885715e4c3a281400000000000000000000000000000000000000000010203141516170828e899c8c786655422d241f170e02000000001f344a5f748a98836d5843495d72889c88725e493520182c4055697d929a86725e4a36220f0000000000000000000814202b384c61768b7d68543f2c1e0d0000000000000b1f34495d718595826e5e524e4f53585e656c737b838b929897948d82746756432e1900000000000000000e23384c61768b9f8b76624d39465667798c846f5a45311c06000000000000000000000000000000162b4054697d907d6855687c90927d6a56596c80938f7a67533e2a15001f34495e738897826c574242576c83979c87705b46301b192e43586e839887715c47321d080000071b2f425566757d826c5742475c72879c97836c5e7082907d6d5b493726140200000000000000081b2e415467798c9e95826f5c4a5a6f849884706f82938f7c798f7d68533e29130000000006192d4054677a8d9c8975624f3d2a1806000000081d32475c72889d8d77624c37220d001e33475c7082776568758684725f4b37230f0000000a19283540484e515252505e7082907d6b595c70859a907b66523d2914000000000000000000000316283a4c5d6d7b8a84756d6d7a8d9785715d493427323838323f5366798da08d7a6957432f1a00000000000000000000000000000000000c1d2d3e4e5e6e7d8d8d9e8e7b6957432f1a050000000000000000000000000000000000000000021323334353627182909c9384705b463c39332a2014050000001e33485d72889b86705c4744596e84988d77634e392412263b4f63788da18d7965523e2b1805000000000000000000020e1f33485d7288826c58432e1904000000000000061a2e4255687a8b8c7b6e666364686c727980888f97938d88837d7b7b7c705b46301b0000000000000000091e33475b6f8497917c685441384a5c6f8388725d48331e0900000000000000000000000000000011263a4d607384826c596073879986725e5063778b96826d58432e19001f344a5f748b98836c574240566b82979c87705b46301b172c42576c839889745f4a341f0a00000c21364a5e7284927c68533e475c72889d97826b566476898a7867554332200d00000000000000001225374a5c6f82939f8c7967565a6f84998b776475889989788f7c67523d281300000000001124374a5d70839692806c5947352312000000021c31465b70879c8d77624c37220d00192d40536372706f6467798d7a66523d2813000000000a18232d34393c3c3c4152647587897664566a809495806c57422e1a05000000000000000000000b1d2e3f4f5e6b78848882828a9288796754412e37454d4d45384a5d7083938f82705b46301b0000000000000000000000000000000000000f203040505f6e7d8c978f82705b46301b0600000000000000000000000000000000000000000005152535445362717d888274665652524e473d3123140500001b2f44586d82958b76624e41566b8296917b66513c27122035495d71869a95826e5a4734220f00000000000000000000051b2f44596e8486705c47321d08000000000000001226394b5c6c7a878c827b78797c82878d948f8a847d78726d696766686454412d19000000000000000004182c4054677a8d9884705e4c3c3f53687d89735e48331e090000000000000000000000000000000a1e31445565737b725d576a7d918e7a66535c70859986705c47311c001f34495e738999856f5a4540566b82979c87705b46301b232e43586e83988c76604b36210b00000f24394e63788e917b66503b475c72889d95806a55596b7d908572614f3d2b180600000000000000081b2d3f516375879897857362556a7d9294806c6a7c8e95838f7c67523c27120000000000081b2e415466788b9c89766452412f1e0e0000031b30465b70879c8b76604b36210c0011233545586d8282766c7187806a543f2a1500000000000610192024272727354758697a8c82705e64798d9a86715d48341f0b0000000000000000000000102131404e5a6670797d82827d766a5b4a383444556161564640536475827c706253402c180000000000000000000000000000000000000212223241505f6d7a837c706253402c1806000000000000000000000000000000000000000000102233414a4c53616c726e6460656767625a4f42322312000015293e5165788b917d695645546a8095937d68533e29131a2e43576b80939e8a7764513f2c1a0800000000000000000000172c41566b8089745f4b36210c00000000000000091c2e3e4e5d69737c8387898b8b898784807a75706a645e595452505350463725120000000000000000001124374a5d6f82918d7b6a594d4752677c88735e48331e09000000000000000000000000000000011426384756616764564e61738796836f5c566b809588725c47321d001c31455a6e839789745f4b42576c829799846f5a442f2333414a5d71869b8c76604b36210b00000f253a4f647990927c67523d485e73889d94806a544e607285907d6c5a4835231000000000000000001022344658697a8c9c91806e5d6175889989766370829494907965503b2613010000000000112437495b6d80909482705e4d3c2c1c0d00081e33485d72889d88735e49341f0a0006182d42566a7c88897d78897d69543f2a1400000000000000050b0f121217293a4c5d6e808d7b695e72879b8c77624e3925110000000000000000000000031322303d49545d65696c6c6963594c3d32425262737463503c4757646c695f52443523110000000000000000000000000000000000000004132332414f5c676c7275645444342416070000000000000000000000000000000000000000182c40515f615754585d656d74797c7c766d6051412f1c08000e2236495b6d808f86736253576b8296927c67523d281314283c5064778ca094826e5c4a3725120000000000000000000013283d52677c8d78634e3a251000000000000000001020303f4c5760686d7173747473716e6a65605b554f4a443f3c3b3d3c34281908000000000000000000081b2e40526373839188776a605c5e6d82836e5a45301b0600000000000000000000000000000000091a2938444d5250474457697b8e8c796756677c9387725c47321d00172b3f53677a8d8e7a665343586d839895826b57422d2d40515e68798d9f8a745f4b35200b00000f24394d63778d95806b5642485e73899f937c68534355677a8d8a776552402d1a07000000000000000517283a4b5d6d7d8f9e8c7b6b5b6a7b8d93826e6476889a8c77655342301f0d0000000000071a2c3e4f617284948e7c6b5a4a3a2b1e130e21364b60748a99846f5a45311c07000013273a4d5e70827d80838073614e3b26110000000000000000000000000b1d2e3f516273858775636c8295927c6854402b1703000000000000000000000004121f2b37414a50555757544f463b324150607080806b564039475257554d41342617060000000000000000000000000000000000000000041423313f4a53687d837161524234251709000000000000000000000000000000000000001c31465b6f746c6a6c727982888f908c8a7d6f5e4b37220d0006192c3e506171828f8070656473869a8b77634f3a25100c2135485c7084979e8c796754412d190000000000000000000010253a4f64788d7c67523e291400000000000000000212212e3a444d53585c5e5f5f5e5c5955514c46413b352f2b2726282721170a000000000000000000000011223445556472808b887c7571727b8a7966533f2b170200000000000000000000000000000000000b1a2731383c3b343a4c5e708292857466697d93836e59442f1a001024374a5d6f829283705f505b70869a8f7a66523d2932475c6f7a87979a86715c47321e0900000b2035495d72869986705c484a5f748ba0907b66513c4a5d6f8295826f5c4936230f00000000000000000b1d2e3f4f60708090998978695e6f808f8c7a696a7c8f9583715f4e3c2b190700000000000f203244556576869689786858493c3027232a3d5065798e927d6955402c170300000b1e2f4152637486776c6a635544321f0b000000000000000000000000001022334455667789826f65798e97836e5a46321d09000000000000000000000000010e1a242e363c404242403b333342515f6e7d8f7d6a55402b353e42403a30241708000000000000000000000000000000000000000000000413212d3d52677b8f8070615243352718070000000000000000000000000000000000001c31465a6d7d828082868d9189837c77747777634d38230e00000f2132435362707d8a827a79829090806e5b4834200c05192d4154677a8d9e9484705b46301b000000000000000000000c2135495d6f80826b56412c1702000000000000000003101d2731393f4447484a4a484744403c37322c26211b16121113120d05000000000000000000000000051627374654626d77808689878883796b5b4a3724100000000000000000000000000000000000000009151e242726212f415263738390847877858a7966533f2b1600081b2e40526373848e7d6e6466778a9886725f4b372332475c6f82919d907d6a56422e19050000061a2e4256697c8f8c7764524c61768ca18d77634e39405365788b8c7966523e2b1602000000000000000010213242526171828f978777686170808f87766872869a8f7d6b5a48362512000000000003142637485868778796867667594d433b383b47596c80948975624e3a2612000000001223354657677783715d5045372715020000000000000000000000000004152638495a6b7c8d7c6b73879b8a75604c382410000000000000000000000000000007111a21272b2c2c2b26344351606f7d8d8775614e3b26232a2c2b261d1206000000000000000000000000000000000000000000000000031024384c5f72858f8070615345362411000000000000000000000000000000000000172b3e4f606f7c868b89847d756e68625f6365594734200b0000031425354453606d778087898a877d7162513e2b1805001124374a5d6f808a83766857432e1a00000000000000000000061a2d4052616d746955412c1701000000000000000000000a141d242a2f3233343433322f2c27231d18120c0600000000000000000000000000000000000000000919283744505b646c717474736f675c4d3d2c1a07000000000000000000000000000000000000000002090f1211122334455564727d868a8983786b5b49372310000011233445566573828c80797984948a7a685643301c2c4052637282888271604e3b27130000000013273a4d5f718393826f5e5165798f9b87725e493536495b6e8295826d5a45301c0700000000000000000314243443536270808d9687786b61707d8b867a7d8a899689776654422f1b00000000000008192a3a4a596877869386776a5f56504d4f57657689907d6c5946331f0b0000000006172839495a6974705d4934271909000000000000000000000000000000091a2b3c4d5e6f8089776c8094907b67533f2b1703000000000000000000000000000000060d12161717162a3e5161707d8d8d7b6a5745321f0f151716110a000000000000000000000000000000000000000000000000000000091d30435567798b8f80716353412d180000000000000000000000000000000000000e203142515e697174747069615a534d4a4f50483b2a180500000007172635434f5a646c717474716b61534433220f0000081b2e4051616e746f65594a3a271400000000000000000000001123344350595f5a4c3a2612000000000000000000000000010910161a1d1e1f1f1e1d1a17130e09030000000000000000000000000000000000000000000000000a1926333e4851575c5f5f5e5a534a3e2f1f0f0000000000000000000000000000000000000000000000000000061727374654606a7174736f665a4d3d2c1a070000051728384755636f7982888b8983796b5c4b39261322344554636e726e625343311e0b000000000a1d3042536474848d7c6d656d829592806b57432f2b3e5164778b88735e49341f0a000000000000000000061626354453616f7c8995897c70656d798389877c79838883715e49341f000000000000000c1c2c3b4a596775828e897c726a6562646a7584918271604f3c2a160300000000000a1b2c3c4b595f5d51412e1a0900000000000000000000000000000000000d1e2f40516172838573788d97836e5a46321e0a000000000000000000000000000000000000000000192e43586d808f8f806e5d4c3a2815020000000000000000000000000000000000000000000000000000000000000000001326384a5c6c7d8d9082705b46301b00000000000000000000000000000000000003142332404c565d5f5f5b554e463f39353a3b352b1d0d0000000000081725323d4750585c5f5f5d574e433526160400000010223342515b5f5b53483b2c1c0a0000000000000000000000051625333d454a463c2e1d0a0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000815212b353d43474a4a494640372c20110100000000000000000000000000000000000000000000000000000009192836434e565c5f5e5a53493d2f1f0e000000000a1a293845525d666d7274736f665b4d3e2d1b0916273645515a5c5a514435251402000000000013243647566573828c80797d8c948674624f3b282235485b6f8288735e49341f0a000000000000000000000817263543515e6b77828c8e8378716c6f73726a666e73746f5d48331e00000000000000000e1d2c3b495764707b868f867d7977787d878c8072635343311f0d000000000000000e1e2d3b464a4941332311000000000000000000000000000000000000001122334454657587827185998a75614e3a2613000000000000000000000000000000000000000000182d42576c80897d706150402f1d0b00000000000000000000000000000000000000000000000000000000000000000000091b2c3e4e5f6e7c88826e5a45301b000000000000000000000000000000000000000514222f3a42484a4a46403a322b2420252621190d000000000000000714202b343d43474a4a48433b3225170800000000051524333f474a4740362a1d0e000000000000000000000000000715212a3134322a1e100000000000000000000000000000000000000004090b0b0b0803000000000000000000000000000000000000000000000000000000000000040f1821292e32343434312b241a0f0200000000000000000000000000000000000000000000000000000000000a1825313b42474a49463f362b1f110100000000000b1a2734404a53595d5f5e5a534a3d2f201000091827343e4547463e34261707000000000000071829384756636f798287898882766757453220182c3f526679806c5945301b07000000000000000000000008172533404d59656f78808689868280735e57535a5e5f5c51402d190000000000000000000e1d2b3946535e69727a8286898b898782796e6254453625140200000000000000000f1d2a3234342e23150500000000000000000000000000000000000000041526374758687889807c90917d6956422f1e0c000000000000000000000000000000000000000014293d506270746c6051423222110000000000000000000000000000000000000000000000000000000000000000000000000f203041505e6b737264523f2b17000000000000000000000000000000000000000005121d272e333434322c261e17100c10100d06000000000000000000020e1821292e323434332e281f14080000000000000615222c3234322c23190c000000000000000000000000000000040e161c1f1d170d0000000000000000000000000000000000000811191e2021201c171008000000000000000000000000000000000000000000000000000000000000050e141a1d1f1f1f1c171008000000000000000000000000000000000000000000000000000000000000000008141e272e323434312b23190e01000000000000000a16222d373f45484a494640372c1f110200000916222b3132312b22160800000000000000000b1a293845515c666d7173726d6458493928151023374a5e7070614f3d291601000000000000000000000000071523303c48525c656c717474736f6758453f45494a483f322211000000000000000000000d1b2835414c565f666c70737473716c655c514436271807000000000000000000000c171d1f1f1a11050000000000000000000000000000000000000000000819293a4a5b6b7b8b82889986725f4c3b281501000000000000000000000000000000000000000d203344535d5f594f423324140400000000000000000000000000000000000000000000000000000000000000000000000002122332404d585e5d554635230f000000000000000000000000000000000000000000000a131a1e1f1f1d18110a030000000000000000000000000000000000050d141a1d1f1f1e1a140c0200000000000000000410181e1f1e18100600000000000000000000000000000000000000000000000000000000000000000000000000000000010e1b252d32363635312b241b100400000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000010b131a1d1f1f1c1710070000000000000000000005101a232b30333434312b241a0f0100000000050f161c1d1c170f05000000000000000000000b1a27343f4952585c5e5d5951473a2b1b0a071b2e41515d5d524332200d000000000000000000000000000005121e2a35404951575c5f5f5e5b544a3a2b313434332d22140500000000000000000000000b17242f39434b52585c5e5f5f5c5851493f3327180900000000000000000000000000000000000000000000000000000000000000000000000000000000000b1c2c3d4d5d6d7c8c8f9e8f7c6a58442f1a08000000000000000000000000000000000000000416263541484a453d312415060000000000000000000000000000000000000000000000000000000000000000000000000000041422303b44494942372818060000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000101f2c3841474b4b4a4640372d21140600000000000000000000000000000000010a11171b1d1d1d1c1915110b040000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000070f161b1e1f1f1c17100700000000000000000000000000000000000000000000000000000a16222d363e43474848443e35291c0d00001223334149494134251403000000000000000000000000000000010d18232d353d43474a4a494640382c1c1c1f1f1e1910040000000000000000000000000006121c262f373e4347494a4a47433d362d221609000000000000000000000000000000000000000000000000000000000000000000000000000000000000000e1f2f3f4f5e6d7c8b968e806f5a453125190a000000000000000000000000000000000000000817242d3334312a2014060000000000000000000000000000000000000000000000000000000000000000000000000000000004121e283034342e25190a00000000000000000000000000050b10121212100c060000000711181c1e1c19140c020000000000000000000000000000000000000106090b0d0c0b080300000000000000000000000000000000000000000000000000000912181c1d1c170f03000000000000000000000000000000000000000000000d1e2e3d4a545c60605f5b534a3f32241506000000000000000000000000000007131d262c30323232312e2a251f1911090000000000000000000000000000000000000000000000000000000000080f15191b1b1b1a17130d0600000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005101a23292f3233332f2a22180c0000000615232e34342e24160700000000000000000000000000000000000006101921292e32343434312c251b0e060a0a090500000000000000000000000000000000000a131c23292e32343434322e29221a1004000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001112131404f5e6c79827b6f61564d433628190a000000000000000000000000000000000000000611191e1f1c160d02000000000000000000000000000000000000000000000000000000000000000000000000000000000000010c151b1f1f1a1308000000000000000000000000061019202527272725211a130a0d1a242c3133322e281f150a000000000000000000000000000000050e151b1e212221201d18120a0100000000000000000000000000000000000000000003101c252d3132312b211304000000000000000000000000000000000000000005182a3c4c5b67707576746f675c5042332415120c06000000000000000000000817253039404547474746433f3a332d251c13080000000000000000000000000000000000000000000000000008121b24292e3030302f2c27211a120800000000000000000000000000000000000000000000000009121719181412171917120b020000000000000000000000000000000000000000000000070f151a1d1e1e1b160e05000000000005111a1f1f1a1206000000000000000000000000000000000000000000060e14191d1f1f1f1c18110800000000000000000000000000000000000000000000000000080f15191d1f1f1f1d1a150e06000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000003132231404e5b68707474716a6054463728170500000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000b17232c34393c3c3c3a352e261c1d2b3740464847433b32271b0c000000000000000000000000000c1821292f3336373635322d261e1409000000000000000000000000000000000000000112212e39414647463e32221000000000000000000000000000000000000000000e213447596a79848a8c8983796e615142332a26211910060000000000000006172635424d555a5c5c5c5b58534e4840382f251b1004000000000000000000000000000000000000000000000c19252f373e4346464644413c362e251b10040000000000000000000000000000000000000000000d1b252c2e2d28262c2e2c261e1408000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000041a2e42566879858a87867d7264554534221000000000000000000000000000010507070705020000000000070d1113120f0902000000000000000000000000020b10120f09000000000000000000000000000000000000000000000000000000000000000000000000000b1a283540484e5252524f4942392f2c3b49535b5d5c574e45392a19060000000000000000000001101e2a343d44484b4c4b4a46413a31271b0e0100000000000000000000000000000000000d1f303f4b555b5c5b503f2d19050000000000000000000000000000000000000015293d51647689978d8282868c80706151403f3b352d23180b000000000000122435445360696f727272706d68635c544c42382d21160900000000000000000000000000000000000000000e1d2a37424b52585b5b5b5a56504a41382d22150900000000000000000000000000000000000000091b2b384143423d394143413a312517080000000000000000000000040c121415130f08000000060c1011110e090300000000000000000000000000030f171c1d1b150e040000000000000000000000000000000000000000000000000000010d161b1d1b160f0600000000000000000000000000000000000000000000000000000000030c13171918130a0000000000000000000000000000000000000000000000000000000000000000000000000000000000001d32475c71868a7871778583736352402d190600000000000000000000070f151a1d1d1d1a1610090005111a22262827241e150c0100000000000000000009151f2527241d1104000000000000000000000000000000000000000000000000000000000000000000000819293846525c63676767645d564c40394a59666f72716b61564836220e000000000000000000000f1f2e3c4750585d6062605f5b554d44392c1f100100000000000000000000000000000004172a3c4e5d6870726e5c48331e09000000000000000000000000000000000000001a2e43586c8094917d6e6b727d8c806f5e545450494035291b0c00000000061a2e415362717c8488888886827c7770675f554a3f33271a0d0000000000000000000000000000000000000d1d2c3b48545f676c7070706f6a655d544a3f3326190b00000000000000000000000000000000000013263949555857514a5558554e43352616050000000000000000000d1720262a2a28231c13080f1921252626231e160d03000000000000000000000413212b31322f2921170b00000000000000000000000000000000000000000000000001111f2a3032302b23190d00000000000000000000000000000000000000000000000000000a1620272c2e2d271c0f00000000000000000000000000000000000000000000000000000000000000000000000000000000001e33485e7389846f5c667587826f5c4935210c0000000000000000020f1a232a2f3232322f2b241c1315222d363b3e3c3832281e1204000000000000000a1926323a3c392f2212000000000000000000060a0a0a0601000000000000000000000000000000000000011325374756646f777c7c7c7872695e51455768778388867d7465513d2813000000000000000000091b2d3d4c59646c7276777674706960564a3d2e1f100000000000000000000000000000000a1f33475a6b7a8588735e49341f0a000000000000000000000000000000000000001d32475c71879b8b766157606d7c8d7c6a6a69645c5347392a1a090000000a1f34495d70828f847978797c82888b847b72675c5145382b1d0f00000000000000000000000000000000081a2b3b4a5966717a8286878784807971675d514437291a0b0000000000000000000000000000000000182d4256676e6b655b686e6a6053443422100000000000000002101e2a343b3f3f3d372f251a212c353a3b3b38322a2015090000000000000000001022323e4647443d34291c0e00000000000103030000040a0e11110f0a0300000000000c1e2f3c4547453f362b1e11020000000000000000060c10110f0a0200000000000000000b1a27333b4143413a2d1d0c000000000000000000000000000000000000000000000000000000000000000000000000000000001c31465b6f8388736158697c8c78644f3b2611000000000000000413202c363e44474747443f3830252433404a5053514d453b30231201000000000006172837444e524c402f1d0a0000000000000b141b1f1f1f1b150d04000000000000000000000000000000000a1d3043546574828c9193908d867b6f6253617486958e80787767523d28130000000000000000001326394b5b6a7680878b898a89857d73685b4c3d2e1d0d00000000000000000000000000000f24394d6276899889735e49341f09000000000000000000000000000000000000001f344a5f73899d88725d484f5e6f828880807d786f6457483827160400000a1f34495d72889c88736364686d747c868f85796e6256493b2d1e0f00000000000000000000000000000013253748596876848e938a848283868c857a6e62554738291a0a000000000000000000000000000000001a2f445a6f8480786d70847d7162513f2c18040000000000000f202e3c474f5454524b42372c323e494f50504c463d32271a0d0000000000000000192d3f505b5c5850463a2c1e0e000008101618181511181f232626241e160b0000000015293c4d595c5a52483c2f2011020000000000041019202526241e140700000000000008192938454f5658564b3b291602000000000000000000000000000000000000000000000000000000000000000000000000000000182c405467798c806f6263788f7c67523c2712000000000000011222313e4952585c5c5c59534c42373342515d65686661584e41301e0a0000000000102335465561675e4d3a26130000000003111d272f3434342f2920160a0000000000000000000000000000001125394d6072839397897d7b7c828b807162697d9196827064625a4a37240f0000000000000000061a2e42566879898f8277737479838e86786a5b4c3b2a190e0b06000000000000000000000011263b50667b91a08b75604b36210c000000000000000000000000000000000000001f344a5f748b9c87705b47596978858c80797b83827566564533210e0000061b2f44596e83978d78634f5358606973808c8c807366594b3c2d1e0f000000000000000000000000000a1d304355667787958f82766f6c6d7177808a807264564738281808000000000000000000000000000000182e43586d83958b7d6e8490826f5b47331e090000000000091b2d3e4c5963696a665f55493c41505c64666661595044382b1d0e000000000000001e33485c6e726d63584a3c2c1d0d0e1a242b2e2d2a252c33383b3b3932281c0d0000001a2f44586b726e655a4d3e2f200f000000000414222d353a3b393125160500000000001225374756626a6e695945311c080000000000000000000000000000000000000000000000000000000000000000000000000000001124374a5c6d7d8b807676828e7a65513c27120000000000000e1f30404f5b666d7172726e685f55493f51616f797c7b756b5f4d3a25110000000000192c405364737c6956422e1b0800000111212f3a43494a49443d33281b0d0000000000000000000000000000172c4054687c909d8a786b66676e798782706e8398907b66524c473c2c1b0800000000000000000a1f34495d7186968270635e6066707d8c8979695948362523201b140d03000000000000000011263b50667b91a28d77634e39240f000000000000000000000000000000000000001e33485e73899d88725c5164768880828874676f7d857362503d2a17040000162b4054697d93927d68533f454d56616e7b89918577695a4b3c2d1d0c0000000000000000000000001226394c5f728495928270635a57585c636d77838374655646362515040000000000000000000000000000172c41566b82969c8a7483978b76614c37220c00000000001225384b5c6a767d807a72675a4d4d5f6e787b7a756c6256493b2c1c0c0000000000001f34495e72828075685a4a3b2b1a1e2c373f43433f3840474d50504e463a2b1c0b00001b30455a6f7d82776b5c4d3e2d1d0c0000001122323f494e504e4334220f00000000001a2e415465747d8474604b37220e000000000000000000000000000000000000000000000000000000000000000000000000000000081b2d3e4f5f6d79838889877d705e4b37230e000000000005182b3d4e5e6d7982878887837b72675a4c5c6e808d938a847d68533e281300000000001e33475c6f8286725e4a37241000000d1e2f3f4c575d5f5d585045392b1c0d000000000000000000000000001b30455a6f849895826d5a50535c6877887d6f869b8d77634d38332b1e0e0000000000000000000b21364b60768b8f7a6653494b535f6d7d8e88776654423838342f2920160a0000000000000010253a4f64798fa3917c67523e2914000000000000000000000000000000000000001c32475c70879b89745f5b6e828672798f7b675f6f80806d5a4734200c000011263b4f64788e97836d5944313a44505d6a7888958878695a4b3b2a1a090000000000000000000004192d4155697c8f9c8875635246424348505a667280847464544332210f0000000000000000000000000000152a3f54697d94a28d7782968e78634e38230e0000000000192d415568798993958f85786b5c576a7c8c919089807366584a3a2a1a0900000000001b2f4354637385877868594838272c3c4a535858534c545b6266666258493928150200172b3f51607082897a6b5c4b3b2a190800081b2e40505c636661523f2b1702000000001f34495d7184928f7965513d2814000000000000000000000000000000000000000000000000000000000000000000000000000000000f2131414f5c666e7373726b6051412e1b0800000000000e2135485a6c7c8b95918986878c85776a5b66798c9a87776e6c614f3b261200000000001f344a5f748b8e7a6653402c190504172a3c4d5d6a7274726c6256493a2b1b0b0000000000000000000000001d32475c72889c907b66523e3e4a59697a8a7884998c76604b3621180d000000000000000000000b20364b60758a8d77624d545855535f70829483715f4e4e4d49433c33271a0a0000000000000d22374b6075899e96826c57432e1a050000000000000000000000000000000000001a2f44596d83988c776261758a7d69758a826c5761738676634f3b261100000c21364a5f73889c88735e4a3527333f4d5a69788997887868594837261504000000000000000b14181e33485c70859894806c5846342c2e343d4854616f7d827161503e2d1b090000000000000000000000000013283d52677c93a48f7980949079644f3a251000000000001d32475c70859895868085897a6b5e72879a8d7d7d86857668584838271504000000001325364555667789877666564534384a5a676d6c675f686f767b7b75675745321f0b0010223342526374868a79695948372614030e23374b5e6e787b6e59442f1a05000000001f344a5f748ba095806b57422e1905000000000000000000000000000000000000000000000000000000000000000000000000000000031323313e4a535a5e5e5d584e4233231100000000000014293d5164778a9b908074707277828979696c8295927d6a5a57514332200c00000000001f344a5f748996836f5c4835220e0b1f3346596b7b878b8880746758493928170600000000000000000000001d32475c72889d8f78634e392d3b4b5c6d808383978c76604b36210c0000000000000000000000091e32475b6f828e786354666d6a68666476898f7c696363625e584f45382816040000000000081d31465b6f84989b86715d48331f0a000000000000000000000000000000000000162b4055697d93907b6664798f7964728886705b56697b7a66513c27120000071c30455a6e83978d78644f3b26212f3d4b5a6a7a8b97877666554433210f000000000001111e282d2d384d61768b9f8e7965503c291919212b364351606f80806e5c4a3826140100000000000000000000000011263b50667b90a5917b7d93917b66503b261100000000001f344a5f74899f8c776a717d8a7a6a768c9f89746a7380877666564433210f0000000008182738495a6b7c8f85736351404054677883827a737b848b90918675614e3a26110005152435455768798b887666554332200f11263b50657a8c866f5a45301b06000000001e33485d71869a9a86715c48331f0a000000000000000000000000000000000000000000000000000000000000000000000000000000000413202c373f45484948433b31241505000000000000192e43576c8094998572625b5d64708088776f85998f79644f423e3325150300000000001c31465b6f84988c7764513e2b1711263a4e63768999918889857667574635231100000000000000000000001d32475c71879c8f78634e38232d3e5062748880958d77624d38230e000000000000000000000004182c3f526473827c67586d82807c7b797980938678787877726c625646331f0b000000000002172c4054687c91a08b76624d39241000000000000000000000000000000000000012273b5065798e95826c667b8f7863728888725c4c5f6f6b5c4b38230f000001162b4054687d92937d6955402c171f2d3c4c5c6d7d8f95847361503e2c1a08000000000e1f2f3b42423f51667b909f8a74604b362f2e2a251d2533425161728379685643311e0b000000000000000000080f141a243a4f64788fa4927c7c93927c67523c271200000000001f344a5f74899f89735e5f6c7a8978768b9f89735e616f7d857362503e2b180500000000091a2b3c4d5f708391806f5e4c42576c837c7a87878c8883807c807d6954402b150000061728394a5c6d80918472614f3e2c1a1d253a4f64798f88725d48331e08000000001a2e43576b8094a08b77624e3925100000000000000000000000000000000000000000000000000000000000000000000000000000000000030f1a242b313334332f281f1406000000000000001c31465b70869b927d69554648536170808472869a8c77624c3729211607000000000000182c4055697c9195826d5a473420162b4054697d92978473758086756453412f1c0a000000000000000000001a2f445a6f8499907965503b26213245576a7d86948f79644f3a25100000000000000000000000001023354655636d746652647480878c8f908f94928f8f8f8c878074634e39240f0000000000001125394e62768a9f917c67533e2a150100000000000000000000000000000000000d22364b5f74899b867164798f7b67748988725c47515a584d3e2e1b0800000011253a4e63778c98846f5b46321d0f1e2e3e4f6071839591806e5c4a37251200000000182b3d4d57575454687d939d88725c474644433f392f232333435465768573604e3b2814000000000000020c141c23292e33384c62778da2947d7b91937c68533e281300000000001d32475c71879b8b76614e5d6c7c8674889d89735e51606f80806d5b4835220e00000000000d1e3041536577898d7b6a58465568798283808288796e6a676c776955402b160000000a1b2d3e50627386907d6d5b49372c3233374c61768b8a745f4b35200b0000000014283c5064788da2917c68533f2a160b0702000000000000000000000000000000000000000000000000000000000000000000000000000000000710171c1e1f1e1a140c0200000000000000001d32475c72889d8f79644f3a3542526273857d83988c76604b36210e040000000000000011263a4d6175899c8a7663503d2a192e43586d8397937d6862708082705e4c39261300000000000000000000172c41566b8095937d68533f2a15283b4e6175899d917c67523d28130000000000000000000000000617283745515a5f584856636c7276787b7c8497847b7978777673624e39240f0000000000000a1e33475b6f839796826d58442f1b060000000000000000000000000000000000081c3145596e83978d7764758983717b8f856f5a453f45443c2f2010000000010d2034495d72879b8a75604c38230f102031425366778a9c8c796754422f1c090000001e32475a6a6c69666a80959c87705c5b5b5a58544c413324253647596b7d7d6a57432e1900000000000a151f2830373d43484c5060768ba094807990947d68533e291400000000001a2e43586c82958f7a66524e5e6e808284998b76604b516172857764513e2a1602000000000112243648596b7d90887563524b5b676c6c6a7182897969585a625b4c3a2612000000000f21334456687a8d8b786755433f474845485d72878d77634e39271a0b0000000d21354a5e72879b97826d59443023201b17120c0600000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001d32475c72889d8f78634e382434455667798982968c77624c37220d00000000000000000a1e3245596c809393806c594633202f445a6f869b917b66526273857b695643301c0900000000000000000013283d52667b9097826d58432e1a1f3246596d829594806a55402b17020000000000000000000000000a1928343e464a455363696664636466687c918b77656462605e5545331f0b00000000000004182c4054687c909c88725e4a35210c000000000000000000000000000000000001162b3f53687c9093806b6c7d8f868a907d6a55412d302f291e1102000002121f292e43576c82958f7b66523e292523202536485a6d80929785715f4c3926120000001f344a5f74827d7b7882979c87727270706f6d685e5142311e2a3c4e61737d6e59442f1a000000000e1b28323b434b52585d61656873899f9580788f95806a543f2a15000000000015293d5165798d96826d5a465161738580948e78644f44556779826d5a45311c06000000000006182a3c4e60728593826f5d4b4a53575755637385877665544c483d2e1d0a00000000041527394b5d6f82948572604e515c5d5a58596d83907b66514538291a090000071b2f43576b80959c88735e4a3b3834302c27211a120a000000000000000000000000000000000000000002080d0f0f0f0d0904000000050e15191b1a17110a000000000000000000000000001c31465b70869b8f79644f3a2527384a5d6f8380938e78634e39240f00000000000000000216293c506376899c8976634f3c2930465b70879c907a655055667886725f4c3825110000000000000000000f23384c61768b9b87715d493420162a3e52667a8f98836e59442f1a06000000000000000000000000000a17212b323443586e7d7b7977767676768b927d74736e675e5344311e0a000000000000001125394d6175899d8d78644f3b26120000000000000000000000000000000000001024394d6175899b887a6e707d87888272614e3b261b1a150c010000000f20303c434451667a8f96826d58443a3a38342e2b3d506375899c8f7b6855412e1b0700001d32475b6f8291918f8e9b9f8c8888878786837c70604e3a261f314457686b60513e2b160000000f1e2c39454e575f666c7176797c80889d9782788e95806a54402b1500000000000e22364a5d7084978a76624f445667798893927c68533f4a5c6f7d705c47311c070000000000000d1f31435567798c8d7a6856433f4242455667788a8371604e3b2c1f100000000000000a1b2e4052647689907d6b595d6f726f6c6c6b7d937d6b62564738271401000014283d5165798ea28e796452504d4945403b352e261d130800000000000000000000000000000000040e161d22252525221e1810070b1721292e302f2c251d13080000000000000000000000192e43586d8397917b66513d281b2d405366798d99907a66503b26110000000000000000000d203346596c809292806c59463330455a6f869b917b6651495b6d807b6854402c17020000000000000000091e33475c70869a8c77634e3a251123374b5f73889c87725d49341f0a0000000000000000000000000000050e17222f40546777848c8d8c8c8c8b8f998b8b88837b70614d38230e000000000000000a1e32465a6e8296937d6955402c18030000000000000000000000000000000000091e31465a6d8296958b80706b72736e635443311e0b00000000000000182b3e4e5859566074899c88725e4f4f4f4d49433a3346596c80939885715d4a36220e0000182c4052647380878c8e98a7958f8d8b888684837d68533e2915283a4a55564e4233220f00000b1c2d3c4a57616b737a82878b8f929497a59782778d97826b56402b160100000000071a2e415467798c92806c59474a5c6e829497836d59444053646b6052402d1904000000000000021426384a5c6e82938572604e3b2c2c38495a6d808f7d6b594633200c0000000000000010223547596b7d908976635f7488848382828390848073655544301c0800000e22364a5e72879b93806a6765625e5a555049423930251a0f02000000000000000000000000000915212a31373a3a3a37332c241a1b29343e43464440393025190a00000000000000000000152a3f54697d9294806a55412c1723364a5d718599937d68533f2a150000000000000000000417293c4f6174889a897562503d2f445a6f8499937c68533e506375846f5a442f1a05000000000000000004192d42566a8094927c6854402b171c3045596e83978c76624d38240f000000000000000000000000000001122332404c545a6770777a7d80828282958b807d7c7976634e39240f0000000000000003172b3f53677a8f98846f5b46321e09000000000000000000000000000000000002162b3e52667a8e9380888070605e5a514536261402000000000000001e33475b6b6e6b686e83978e7965646464625d574d423d5064778b9f8d7965513d29150000102335485a686b72767b91a48f79777572706e6c6b604e3b26111c2c3840413b31241504000417293a4b5a68747d878f959ba0a4a7a9acad9883768c97826b56402b160100000000001124374a5c6e829289766453425164778a9c88735f4b374652564f433423110000000000000000081b2d3f51637689907d6b584633353e434f6174888875624f3c28140100000000000005172a3c4e60728593826e5c6b7a89848686868a888384735f4b35200b0000071b2f43586c80959985807c7977736f6a645d554c42382c2013050000000000000000000000091826333d464b4f4f4f4c4740372c2a394751585b59544c423728170500000000000000000011263a4f64788d99846f5a46311d1b2e4255697d9296826c57422d18040000000000000000000d203245576a7c8f92806c59463442576c839795806a554046596b756756422d180300000000000000000013273c5065798e97836e5a46311d162b4054697d92907b66523d291400000000000000000000000000000c1e3041515e686f7272706c686a6b6b7b908f7a68676563584734200c00000000000000000f24374b5f73889c8a75614c38240f0000000000000000000000000000000000000f23374b5f72869a8679897d6e5d4c3e3427180800000000000000001f344a5f7483827d7c7c9194807979797977726a605241485c70849895826c58432f1b06000d22374c62777c7977788da2937d6e6e6c6c6b6863594c3d2b190e1b252b2c281f130600000d21344658697886929ba2aaafb5b9bcbfc0ad9883768c97836c57422c17020000000000081a2d3f516374869482706050475a6d82948f7a66523e353e403c3225160600000000000000000510223446596b7d90887563503d47515859576a7d92806b5844301c07000000000000030c1f314356687a8d8c78665c6a7887796f70858a74706e5d4934200a00000014293d5165798e9f8a7c80858a88847d7871695f554a3e312314050000000000000000000617273644505960646464615b53493e384857646d706e685f544634210d0000000000000000000c21354a5e73889c8974604b372212263a4e63778b9a86705b46311d0800000000000000000e1c282f3a4d5f728597897663504043556a809498836d58433b4d5c605849392613000000000000000000000d22364a5f73889c8974604b372311263a4f64788d95826c57422e19050000000000000000000000000115283b4e5f6f7b8488888682796f6362778c95806b56504e473a2a18050000000000000000081c3044586c8094907b67523e2a15010000000000000000000000000000000000081b2f43576a7d928d797b8c7a6958463523110000000000000000001c314457687682878b8e919c909090908f8c867d705d484055697d929b87725d4934200b000c21364b6074888f8d8a90a3978684848382807d766a5a4935210c09111617130c0200000014293d5063758797a4aeb6bec4c9ced1d4c3ad9883748b98836c57422c170200000000000010223445566778898f7d6e5e505164778c95826d5a4632292b28201407000000000000000610191f21293c4e60738692806d5a4857646d6e6062758a87735f4a36210d00000000060f171d2026384b5d6f829583705e5a6977867a6c808e78645b50402e1a060000000e22364b5f73889c907b6b70757b838c8d857c72675b4f413223130100000000000000001224354554626d75797979766f665c4f435566758286847c7264503c2712000000000000000000071b3044596d83978f7965513d28141f33485c70869a89745f4b36210c00000000000000091b2c3a4447475567798c93806d5a55585b677c919b86705c47323e484b463a2b1b0900000000000000000000071c3045596d82968f7a66523e291521354a5e73889a86715c48331f0a000000000000000000000000081c3145586b7d8d98918886888c82746573889a86705c473933291c0c0000000000000000000115293d5165788d96826d5844301c0700000000000000000000000000000000000014273b4e62768a95826e8087756452402e1b09000000000000000015283a4a59646d72767884988d7b7b79797876746e5b473a4e63778da18c77634e39240f00081d3145586a79858c90939da39892908f8c89888778644f3a2415110a01000000000000001a2f43586c8093a5b5c1cad2d8dee3e6d8c3ad9883748998836c57422c1702000000000000051628394a5a6a79898c7c6e61575c6f83978975614e3a2716130c02000000000000000a17232d333636344356687a8d8a77645265758278645b6f848e7964503b26110000000a17232b31353635405365778a8d7a6855596776867b7b907c68533f32231100000000071c3044586c829596826d5b61676f77828e8f85796d5f5141301f0d00000000000000091c2f4153637280898f908f8a83796d6051607385938f837b7968533d281300000000000000000000162a3f53687c9195806b57432e1a192d42576b80958e78644f3b2611000000000000001125384a575c5c5c5d6e80928a77686a6d7073788d9e89745f4a362c343632291c0d000000000000000000000001162a3e53677b9095826c58442f1b1b3045596e83978b76624d3924100000000000000000000000000d22374b6074889b91807470727a8584746f84998b75614c3823170c00000000000000000000000e2135495d71869988735f4a36220e0000000000000000000000000000000000000c1f33465a6d82958a767486826f5d4b38261300000000000000000b1c2c3b4751585d61697d9293806a646463615f5b503f35495e73889d917b67523d2813000215283b4c5b6770777b7d92a48f7c7b78767472706e604c382b2a251d13070000000000001e33485d72879bafc2d3dee6edf3f7eed8c3ae9984738998836c57422d1803000000000000000a1b2c3c4c5b6a79878c7d736b676f7b8f917d6956422f1b0800000000000000000919283540484b4b4a484b5e708395826f5c6d8289745f55697d937d68533e291400000a1a28353f464a4b4b47485a6d809285725f4d586775857b8b826d58432f1a06000000000015293d5165798e9c87725e4c535c65707c8a978b7d6f5f4e3c2a17040000000000001024384c5e708291998b827d80858b7d7061687c9097837166645c4b382410000000000000000000001025394d62768b9a86715d49342014283d52667b90937d6954402b1702000000000000162b4055687272727273758794827c808386888c92a18d78634e3a251f201d160b000000000000000000000000051024384d61768a9c88725e4a3621162b4054697d92907c67533e2a1501000000000000000000000010263b5065798f9c8874625b5e677483847380948f7a66513d2813000000000000000000000000061a2e42566a7d928e7965513c281400000000000000000000000000000000000004172a3e5164788c92806c7a8d7a685543301d0a00000000000000000e1d2a343d44494e62768b9a86715d4f4e4c4a473f3230455a6f849994806a54402b1500000c1d2e3d4a545d6266778c9f95826d63615f5d5b5951423d403f393025170800000000001f344a5f748a9fb4c9def0f9ffffffeed9c4af9984728899846e58432e190300000000000000000e1e2e3d4c5b6976828d86807c8278889986725e4b372410000000000000000114263746535c60605f5e5d5e66788c8c79666e848a745f51667b91806a543f2a15000517283846525b5f605f5c55506375888f7c695749576676868887725d49341f0b00000000000e22364b5f73889c8d7864504048535e6b7a8a9a8e7d6b5a4734200c000000000000162b3f53677b8e9e8c7a6d686a707b89806f6d8397907b67534f4a3e2e1c09000000000000000000000a1f33485c70859a8c77634f3a261223384c61768b98836e5a45301c07000000000000172c41576b80888888898b8d9b929394908b8680859a927c68533e2a150b090300000000000000000000000912191e1f33475b7085998e7965503c2813263a4f64788d96826d5844301b07000000000000000000000012273c52677c9298836e59464a56647485807b9095806b56422d190400000000000000000000000013273a4e62768a94806b57432e1a060000000000000000000000000000000000000e2235495c6f839689756f8385725f4c3926120000000000000000000c18212d3941475c7085998d7864503c3735322c212d42576c829797826c57422c17000000101f2d3841484d5c7084989d8975614e4a4846443e475156544d4235261606000000001f344a5f748ba0b4cadff4ffffffffeed9c4af9984728899846e58432e1903000000000000000000101f2e3d4b58647079828788837380948e7a6653402c1905000000000000081d314455646f767674737273706e829483706b808d786451667b917d69543f2a14000f22354656646e74767470695f586b7d908773614e48586777888c77624e3925100000000000071c3044586c8295937d6a554136414e5c6b7c8e9b897663503b27130000000000001a2f44596e839796826e5c53555e6a79897c6f869b8d78634e3a362d2010000000000000000000000004192d41566a8093927d6955402c181e33475c70869a88735f4a36210d00000000000014283c506272828a8f91908f8c9388807b76706b809596826c58432e1a050000000000000000000000000f1b262e33343341556a7d9394806b56422e1921354a5e73889c88735e4a36210d000000000000000000000012273c52677c9397826b564138465667788a7a8c9a86705c47321e090000000000000000000000000b1f33475b6e839786725d4935210d00000000000000000000000000000000000006192c3f5366798c92806d788b7c6955422e1b0700000000000000000a1c2d3d4b555b5c697d9294806b57432f201d18152a3f546a809598836d58432e19000000010f1b252d344154687c8fa3917d6956433331364857646b68605344342312000000001e33485d72889cb1c5d9ebfcffffffeed9c4af9984718799846e58432e190300000000000000000001101f2d3a47535d666d70726f65778c96836f5c4835210e0000000000000c21364b607382898b898988867364768a8d7a677689806e626c808c7965503b271200172b3f52647482898788857c7063607386917d6b58454959697a8b7c68533f2b1601000000000015293d5165798e9985705c4733303e4d5e70839693806a56412d180000000000001d32475c72879c917b67523e414d5b6b7b897684998c76614c37221a0f0200000000000000000000000013273b5064788d9984705b47331e192d42576b80958e7964503b27120000000000000d20334454636e76797b7b7876888e7b69615c667a8f9b86715d48331e0a00000000000000000000000e1e2d3942484a483f5064788d9a86715c48331f1b3044596d83978e7965503c2813000000000000000000000011263b50667b9097826c57422c38495a6c7d86889c8a75614c38230e00000000000000000000000004182b3f53677a8f8d7864503c281400000000000000000000000000000000000000102336495c6f82958a776e8285715e4a37230f000000000000000013273a4b5b68707267778b9b87725e4a36220f0313293e53687d9499846e58432e19000000000008121925394c607386999986725f4c39293e526575807c706252412f1e0b0000001b3044596d8296aabccedeedfaffffedd8c3ae9984708799846e58432e190500000000000000000000010f1c2935404a52585c5c5a5c7084988c7764513e2a170400000000000c21364b6071737376897d7b75685a6c809285726a7a887d777b8a806f5c4936210d001d32465b6e828e7c7074808f827262697c8f8875624f3d4c5c6d80836d59442f1a0400000000000e22364a5e72879b8b76624e39252f4153677b8f9a85705b46311c0000000000001d32475c72889d8f78634e392f3d4d5e6f828283988c76604b36210c000000000000000000000000080f1321364a5e72889c8a76624d392514283d52667b90937d6a55412d180400000000000315273645515b61656666646a7b8d8673614f61758a9f8b76614d38240f00000000000000000000091b2c3c4a555d5f5c504a5e73889c8b77624e3925162a3f53687c9194806b56422e1a06000000000000000000000f24394e63788e99846e59442f2b3d4e607386859a8f7a66513d2814000000000000000000000000001024384b5f738794806b57432e1a06000000000000000000000000000000000000071a2d3f5265778b94826f798d7966523e2a1601000000000000041a2e42566979857d6a7084988e7965523e2a160214293e53687d9498836d58432e1800000000000000091d3043576a7c90a28f7c6956443140566b80908f82705e4d3a2815020000162a3e53667a8d9fb0c0cfdce8f2fbedd8c3ad9883708799846e58432e22170900000000000000000000000c18232d373e4347474554687c9094826d5a4633200d0000000000081c3043535e5e5e6d8288746258506375898f7b696a767d83827b7061513f2d1a06001f344a5f748987725e62728490806d5f728592806c59463e4f6173806d59442f1a040000000000071b2f43586b8094917c6854402b24384c61768b9d88725c47321d0000000000001d32475c72879c8f78634e38232f405163768980958d77624c38230d0000000000000000000006121c24282a2f44586d8296917c68533f2b1623384c61758a9985705b47331e0a000000000000091827343e474c5050504f5e6f82917d6c5a5b708599907b66523d2914000000000000000000001226384a5a6871746e5b46596d8397917c68533f2a1625394e62778c9a86715d4935210c0000000000000000080f1321364b6074899b87715c47331f314356687b8ea195806b57422d1904000000000000000000000000081c3044576b809386725d4935210d00000000000000000000000000000000000000102336485b6d80938d7b7085826d5945311c08000000000000091e33485d7186917b66697d9195826d5945311e0a162b40556a809597826b57412c17000000000000000114273a4d60728598998673604e3c3d50617283948e7c6a5744311e0b00000f23374a5d6f8292a2b1becad5dfe7edd8c3ad98836f8699846e58494035271808000000000000000000000006111a232a2e3132394c6074889b8a76634f3c291502000000000114253542494853687c8e79655046596b7d9286726062696c6c685e524333221000001f344a5f7489866f5a54677b8f8a7763687a8e897663503d4456666b61513e2a1601000000000a151d283c5064788d97836e5a46311e33485e73899d88725c47321d0000000000001b30455a6f8499907965503b26223446596c8083938f79644f3a25100000000000000000000716242f383d3f3e3e53677b9097836e5945311c1e32475c70859a8a76614d392510000000000000000917222b33383b3b3b40526375868a7765556a7d9395826c57432e1a05000000000000000000192d4155677885846f5b4653687c9297836d59442f1b1f34485d71869a8d7864503b271300000000000006121c24282a32465b70859a8b76614c382326394c5e7185989a86705c47331e0a0000000000000000000303010114283c5063778b8d7865503c29140000000000000000000000000000000000000006192b3e506375889887757d88745f4a36210d0000000000000a1f344a5f748a937c6862768a9c8975614d3926121a2e43586d8397937d69543f2a1500000000000000000b1d304356687a8c9e907d6b5948364454657688998874614e3a27130000081b2e405263738493a0adb8c3cbd3d9d8c3ad98836f8699846e625c524536261401000000000000000000000000070f151a1c1d3144586c809392806c5845321f0b00000000000817252f34394e62778c7d6955404e617488907c6957545757534c413425160500001d32465b6e828975645061768c927c675e718593806d5a47384853564f4333210e000000000d1b27313737495d7186998975604c382434495e73899a86705b46311c000000000000182d41576b8296927c68533e2917293c4f63768a9e917b67523d2813000000000000000003152534424c525452484d61768a9d88745f4b3622192d41566a8094917c68533f2b160200000000000000050f181e23262626344657687a8c83705e64788d9b86715d4834200b0000000000000000001e33475c708597826b56414e63788d9c87725d49341f1a2e42576b809593806a56422e1b07000000000716242f383d3f3e41566b80948f7a65513c281c2f4255687c8f9f8b76614d38240f000000000000000b1418181613102034485b6f8394806c5843301c08070603000000000000000000000000000000000f213346586a7c8f9382778c79644f3a2510000000000000091e33485d728796826c5b6f8396907c6955412d1a2034485d71869b8f7965503b26120000000000000000011426384b5d6e80929b89776553423647596a7c8e917d6a56422e190500001123344556657483909ba6afb8bfc5cac3ad98836f86998471776f635444311d08000000000000000000000000000000000115293c5063778b9c8875614e3b281501000000000007121b2034495e7388836e594445576a7d918673604d42423f382f241607000000172b3e5163727b7968535f748b947d6854677a8d8a7764513e373f403c322516040000000b1c2b39444c4c47566a7d92907b67533e2a3a4d62768c94806b57422e1900000000000014293e52677b9096826c57422e192033475a6e839694806a55402b1601000000000000000e213243525f676a6656475c70859a8e7965513c2713273c5165798f97836e5a46311d09000000000000000000040a0e10111728394b5c6e808e7c6a5e72879b8c77634e3a26110000000000000000001f344a5f748b97826b56414a5f74899e8c76614c372214283d5165798f9a86725d4a36220e00000003152534414c525452485165798f94806b56422d1926394c6073879b907b67523e2915000000000001111e282d2e2b2825232c4053677a8f87735f4b37231d1d1b18140f09010000000000000000000000000416293b4d5f70839490828b7c67523d2813000000000000041a2f43586c8092887360677a8d9885705d4936222b3d5063778c9c88745f4b37220d000000000000000000091b2d3f5162738596958371604f3f3b4c5e70839686715d4834200b000005172838475664717d89939ca4abb1b5b9ac97826f869984848c8272604b36210c00000000000000000000000000000000000d2134485b6f8396927d6a5744311e0a00000000000000071b30455a6f8488725d493b4e617487907d6a5744312a241c1206000000000f223445546066655c4f63778d8f7a66515d708494826d5a48352a2b282015070000000316293a495660615a5063768a96826d59453b4757697c918a7764503c28140000000000000f24384d62768b9a86715c48331f172b3f53677b8f97836d58442f1a0500000000000000162a3d5061707b80725c47566b809494806a56412d1822374b5f74899d8975604c38241000000000000000000000000000000b1c2d3e506172848876646c8095927d6954402c170300000000000000001f344a5f748a98836e5944465b70869b8f79644f3a251022374b5f74889d8d7965513d29160200000d203243525f676a66564b6074899a86705c47331e1d3044576b809596826c58432f1b06000000000e1f2f3b4243403d3a3836384b5f72868e7a66523e333232302d29241c140a0000000000000000000000000c1e3041536576889894947d68533e29130000000000000014293c50637587907d6c5d7083958d7965513e2e3a495a6c809394806d5945311c08000000000000000000001022334556677889998f7d6d5d4d3d415366788c8c77634e3a25100000000a1a29384654606c76808890969ca0a4a7978274869b908b837a71604b36210c000000000000000000000000000000000005182c3f53667a8e9b8873604d3a27140000000000000000172c41556a808c77624d3844576a7d908874614e3b28150900000000000005172736434c5050565e6c809286735f4b54677a8d8a7764513e2c19130c03000000000a1e3246586774766c635b6f83978974604c4e596575878d7d6c5a4734210d0000000000000a1f33485d71869a8b76624d39251024384c6074899b87715d48331e09000000000000001c3045596d808f836d584351657a8f9a85705b46321d1c31455a6e8397907b67533f2b170300000000000000000000000000001021324355667688827065798e98846f5b46321e0900000000000000001d32475c70869a87725d4944596e8499917b66503b26111c3145596d839795826c5945311d0a0000162a3d5061707b80725c475a6e83988b76614d382414283d51667a8f9b87725d4935210c00000000182b3d4d575855524f4d4b4b4a566a7d91826d5a4748474745423e3830271c10030000000000000000000000122436475869798a98907b66513c2712000000000000000d203346586879898a796a65778790826d5944414b5867788a9b897664503d2916010000000000000000000004162738495a6a7a8b9a8c7a6b5b4c3e495c6f83927c68533e2914000000000b1a2836434e59636c747b82878c8f939786898b9783776f675f5343301c080000000000000000000000000000000000001024374a5e728599907d695643301c090000000000000013283d52667b907b66513d3a4d607488917d6b5845321f0c0000000000000009182530383e5266727b8b87786856434a5d708495826e5c493623100000000000000e23384d6275868a80766d677a8f8f7b675c626b76848b7d6f5f4e3d2b180500000000000005192e42576b8095917c68533f2a161d31465a6f84988b76614c38230e000000000000001f34495e738897826b56404c61768b9e89745f4b3621172b4054687c9297836e5a46321e0a00000000000000000000000000000314263748596a7b8c7c6b72879b8a75614d3924100000000000000000192d42566a7d918d78645043586c8398917b66503b2611162b3f53677c909c8874604d39261301001b3045596c808f836d584454697d92907b67533e2a1523384c61758a9f8d7864503b2713000000001e32475a6a6d6a676462605f5f5e6175898975615c5e5c5c5a57524c43392e2113020000000000000000000006182a3b4b5c6b7a868674604c38240f000000000000000416283a4b5b6a7987887a6d69757b766a5750555d697686968f7d6c5a4734210e000000000000000000000000091b2b3c4c5c6c7b8b9989796a5c4f4353677b90806b56402b1600000000000a1825313c47505960676d727678899480778696826b5b544b4235251401000000000000000000000000000000000000081b2e4255697c909986725f4c392512000000000000081827394d62778d806a56413144576a7d918875614e3c29160300000000000000081422323f5468788383796d5e4e3d4154677a8d8b7865523f2c190600000000000d23384c61727a838a8a8279738797836e70767d8885796d5f5141301f0d000000000000000014283d5165798f97836d5945311c172c4055697d938f7a66513d2813000000000000001f344a5f748b97826c5742485d72889c8d78634e392411253a4e63778c9e8a75614d39261200000000000000000000000000000008192a3b4c5d6e808a786b8094907c68533f2b17030000000000000013273b4e61738694806d5a49596e8499907a66503b26111024394d6175899d907c6955422f1e0c001f34495e738897826b56404f63788d96826d58432f1a1e32475b708599937d6a56422e1a060000001f344a5f7483807c797776747473737280917d72727372716f6c6760564b3e31200e00000000000000000000000c1d2d3e4d5c697273675744311d0900000000000000000b1c2d3d4c5b6875828b80766e68646363656a717a87958e80705f4e3d2a1805000000000000000000000000000e1e2e3e4e5d6c7a8996897a6d60565062778d826b56402b1600000000000007131f2a343d454c53595d61748b947d708694806a5440382f25170800000000000000000000000000000000000000001326394d6073879a8f7b6854412e1a06000000000013253645505f7389846f5a45303b4e617588927d6b594633200d00000000000000081b2e40505c606571828b7c6c5a48374a5e718595826f5c493623100000000000091e3144545f676f767c83888986958a838688827a71675c4f413223130200000000000000000e22374b6074899d88745f4b362212263b5064798e95806b56422d19040000000000001f34495e73889a85705b46455a6f869a907965503b26111f34485c71869a917c6955412d19060000000000000000000000000000000c1d2e3f506171828674788c97836f5b46331f0b000000000000000b1e3144566879898a78675b5f72879c8c77624d38230e0e1e3146596d82959985725f4d3c2915001f344a5f748b97836c57424a5e73889b87725d49341f182d41556a7d939a86715d4935220e0000001c31465a6e8291918f8d8c8b8b898988889289888888888785827b73685c4f3d2a160000000000000000000000000f202f3e4b565e5e5749392815020000000000000000000f1f2e3d4a58636e78828a837d797878797d858d90887c70615241301f0d0000000000000000000000000000001020303f4e5c6a7785908b7d736a6567798e806a55402b1600000000000000020d17212931383e444b60768b947d7087927c67523d281c12070000000000000000000000000000000000000000000a1d3044576a7d909885705d4a36220e00000000071b2f43546368708588735e49343145586b80928975624f3c2916030000000000000e23374a5d6e766e6273868a7765523e4154687b8f8c786553402d19060000000002152636434b535b62686d7276788b927d77736d665e544a3e31231405000000000000000000081c31455a6e83978e7965513d291421364a5f74899a86705c47321e090000000000001b3045596d82968a75604c43586e8499917b66503b2611192e42566a80939885705c4935210e000000000000000000000000000000001121324353647586837285988a76624e3a271301000000000000021527394a5b6b798886776f707c8f9583705c483424211f2a323e5265788c9e8f7c6b58442f1a001f34495e73889a86705b47455a6f84998c77624d382312273b5064788da18d7865513e2a17040000172b3e516372808a9095999c9d9f9f9d9d9f9d9c9b99979492908e867a6d5945301b0000000000000000000000000211202e3a43494944392b1b0a0000000000000000000001101f2d3a46515c656e757c8286888a8b8987837c746a5f514334241302000000000000000000000000000000021221303e4c5a67737d8990867d797b858a7764503c2712000000000000000000040d161d242a374c62778d937c72888f7964503b251000000000000000000000000000000000000000000000000114273a4d607386988d7965513c2813000000000a2034495e727d78828c77624d38283c4f63768a92806c594633200c00000000000012273c51667a8b7d68697c90826d5945384c5f728695826f5c49362310000000000009182530383f474d53595d616f839785715e59524b41382c2113050000000000000000000002162b3f53687c9195806c57432f1a1c31455a6f84988a75614c38230f000000000000162a3e5266798c907c685543586d8398917b66503b261113273b5064788da08c7864513e2a1807000000000000000000000000000000041425364657677788827c90927d6a5643301e0c000000000000000a1b2c3d4d5c6976828a85858d908677665340393a36303d464b4c5c6f82918c806f5a45301b001b3045596d82958a75614d41576b8297907b66503b261121354a5e72879b95826d5a4734210f00000f22344554626d757b80848788898b8b8a898887868482807c797877766d5a45301b0000000000000000000000000002101c272f343430271b0d000000000000000000000000010f1c28343f49525a61686c7073747473716d6860574d413325160600000000000000000000000000000000000312202e3c4955616c757d84888b89857a6b5a4835210d000000000000000000000002091024394e63788f8f7973888b76614c37220d0000000000000000000000000000000000000000000000000b1e314356687a8c94806b56402b16000000000b20364b6075828b80907b66523d2833465a6d82958975624f3b281502000000000013293e53687d8d786461758b88725d483343566a7d918c7865523f2c1906000000000008131c242b33393f444954687b8f8d7965523e372e251b0f030000000000000000000000021025394e62768b9b87725d493521172c4055697d93907b66523e29150000000000000f2336495c6e8090857261515b70869a8e79644f3a25100d2135495d71869994826d5a473624110000000000000000000000000000000007182839495a6a7a8a83889986725f4d3c291a12080000000000000e1f2f3e4c58646e767c80807b73685948494e4f4b434e5a60625d6373807a6e61513f2b1700162a3e5266798c907c695644546a8095937c67523c27121b2f43576b80949d8a7663513e2c1907000517273644505a61676b6f7073737474747372716f6e6c6a67656362605d4f3e2b160000000000000000000000000000000a141b1f1f1b140a0000000000000000000000000000000b17222c363e464d53585b5e5f5f5e5c59534d443b302316070000000000000000000000000000000000000002101e2b37444e5961696f73747470675c4e3d2b18050000000000000000000000000011263b50667b898674748883705b47331e09000000000000000000000000000000000000000000000000011426394b5c6d7d89806b56402b1600000000081d31455764707d8a95806b56422d2a3e5165798d92806b5845321e0b000000000013283d53687c8d78645f748988735e48333a4e61758995826f5c4935220e000000000000000810171e252a2f384c60738795826e5b473421120800000000000000000000000710171b1f33485c70869a8d7864503b2712263b5064798e95826c58432f1b060000000000071a2d3e5161718290806f6566768a9b88745f4b36210d071a2e4256697d909d8a766453412d1800000000000000000000000000000000000b1b2c3c4c5c6c7b8b909f8f7c6b5844342e251a0d00000000000111202e3b47515b62676a6a6660564a515d63645f565d6c75777165626a665d5042332210000f2336495c6e809086736252586c8297917b67523c271214283c5064788da093806d5b493724110000091827333d464d52565a5c5e5e5f5f5f5e5d5c5a58575452504e4c4b494031210e000000000000000000000000000000000000000000000000000000000000000000000000000000051019232b32393e4346484a4a4947443f3931281e1205000000000000000000000000000000000000000000000d1a26323c464e555a5e5f5f5b544b3e301f0e00000000000000000000000000000f24394d606e7473676b73736553402c180400000000000000000000000000000000000000000000000000091b2d3e4f5f6c7470614f3c2813000000000215283947525f6c798886705b46302236495d7183908875614e3a271300000000001025394d6173858275717b8e826e5a453132465a6d808e8c7864513e2b16020000000000000000040a10161d3044576a7d908a7764513e291500000000000000000000000d19232b30323142566a8094937d6a55412d1921364a5f73889b87725d4935210c0000000000000f213344536371808a82797984948f7d6b5845312720152534414d607387989482705b46301b0000000000000000000000000000000000000e1e2e3e4e5d6c7b8a948d806f5a4c4942372b1c0c000000000002101d29353e474e525454524c444c5f6f78787367657a8a8c84756454524a3f3224150500071a2c3e50617182908070656573879b8a77624e39240f0d2135495d7085989e8b786654412d180000000916212a32383d41444748494a4a4a4848474543423f3d3b383736342d2213030000000000000000000000000000000000000000000000000000000000000000000000000000000000060f171e252a2e3133343434322f2a251d150b0100000000000000000000000000000000000000000000000009141f29323a4046494a4a4741382d20120100000000000000000000000000000a1e3142515a5f5e57585f5e5647362411000000000000000000000000000000000000000000000000000000102131414e595f5d524332200c00000000000a1b2935414e5c697786705b46301b2e415464727d867d6a56412c1702000000000a1e314456667480868786807263513e2b2a3e5161707b85826d5a45301b0600000000000000000000000114273a4d6072828b826c57422c17020000000000000000000d1c2b363f4547453d5065798e9985705c47331e1c3045596e83978d7864503b2713000000000000041526364553616d7782878a8a867d70604e3c3f3c33263042525d5d697a8983766857432e1a000000000000000000000000000000000000001020303f4e5d6b77807a6e6160625d55483a2a19070000000000000c17222b33393d3f3f3d383d52677c8d8e8576677c8f9d94826c5742372d2215060000000f213344536271808a82797982918f806d5a47331f0b061a2e4154687a8d9e9484705b46301b00000000040e171e24282c2f323334343434333332302e2c2a28262322211f1a10040000000000000000000000000000000000000000000000000000000000000000000000000000000000000000030a1015191c1e1f1f1f1d1a16100a02000000000000000000000000000000000000000000000000000000020d161f262c31343434322d251b1002000000000000000000000000000000011324333e464a4944444a494338291907000000000000000000000000000000000000000000000000000000031323303d464a4840342515030000000000000b1823303e4b5a68726856432e1925364654606a71746955412c170100000000021527384856626b7073716b6154453422213343525e6870746d5945301b050000000000000000000000000b1e3043546370747165533f2b1601000000000000000007192b3a48535a5c5a4e4a5f73889d8b76614d3924162b4054687d92937d6a56412d190500000000000008182735434f5b646c717474716a5f514350545044373b4d5f7070616b747066594a3a271400000000000000000000000000000000000000081b2e40505c63646a665d6b75777166584836231000000000000000050f181f24282a2a28283d53687c8f9b94826c71808a8d826c57422d1b100400000000041526354453616d7780878a8a867d7061503e2b1804001225394b5e6f808a82766857432e1a000000000000030a0f14171a1c1e1f1f1f1f1e1e1c1b19171513100e0d0b0a0600000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000030b12181c1f1f1f1d1812080000000000000000000000000000000000000615222b3134343030343430261a0b000000000000000000000000000000000000000000000000000000000004131f2a3134332d23160700000000000000000612202d3c4a575c574a392713192837434d565d5f5a4c3a2612000000000000091a2a38454f575c5e5c574f44362717152534414c555c5f5c4f3d2a16020000000000000000000000000113253645535c5f5d54473624100000000000000000001124374858666e726c5a455a6e8397907c67533e2a15253a4e63778c9985705c4834200c00000000000000091725323e4851585d5f5f5c564d4152616a61544948596a7c806b595f5c54483b2c1c0a000000000000000000000000000000000000000e23374b5e6e777973686479898c857666533f2b16000000000000000000040a0f1315151324394d5f707d888b806b616d75777263513e29150000000000000008172635434f5b646c717474716a60524333210e0000091c2e4052616f746f65584a3a271400000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000030f171c1d1b150e040000000000000000000000000000000000000000000000000000000811181c1d1c1a140b000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000040f171d1f1f1b1c1f1f1b140900000000000000000000000000000000000000000000000000000000000000020d161c1f1e19110600000000000000000000020f1e2c3a4447443a2c1c0a0a1925313a42484a463c2e1d0a000000000000000c1a27323b42474847433c322618090716232f3941474a483e31200e00000000000000000000000000000818273540484a484137291907000000000000000000182c405466768385705c4754697d9296826d58432f1a2034495d72879b8c77634f3b261200000000000000000814202b353d43484a4a47423a475b6f8072665c56667688836c574a4841362a1d0e000000000000000000000000000000000000000012273c51667a8c8f8677667a8f9c95836d59442f1a000000000000000000000000000000091d304252606b73746f61505a60625e544534210e0000000000000000081725323e4851585c5f5f5c574e433425150400000011233443515b5f5b52473a2c1c0a00000000000000000000000000000000000001080c101417191b1d1d1d1d1b17120b02000000000000000000000413212b31322f2921170b000000000000000000000000000000000000000000000000000e1b252c3132322e271d110300000000000000000000030f171c1d1b150e0400000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000e1c282f322f281c0e000008141e272e3334322a1e100000000000000000000a1520282e3233322e28201509000006121c252d3234332c2113020000000000000000000000000000000917232d3334332e25190b000000000000000000001d32475b708495826c57424f64788e9b87715d48331e1a2f43586c8295927d6a55412e19060000000000000000030e1822292f333434322e33485e738884786f667485917d695540332d24190c00000000000000000000000000000000000000000012273c51667a8e9b95836d7080898d826d58432e1900000000000000000000000000000001132434424e585e5f5c5243464b4c4a42362717050000000000000000000714202b353d43474a4a47433b3125160700000000051625343f474a473f352a1c0e00000000000000000000000000000000000008141c2125292c2f3032323232302c261e15090000000000000000001022323e4647443d34291c0e000000000000000000070d10110f0900000000000000000e1e2c3840464747433a2f21110000000000000000000413212b31322f2921170b00000000000000000000000000000000000000000000000000050e141716110a000000000004080a0a090500000000000000000000000000000000030b101313120d07000000040b0f0f0f0d080100000000000000000000000000000000000000000000000000000000000b151b1d1b150b00000000010b131a1e1f1d170d0000000000000000000000030c14191c1e1c19140c0300000000000912191d1f1e190f0300000000000000000000000000000000000611191e1f1e19120800000000000000000000001f344a5f748a97826b56404a5f74899f8b76614c372214293d52667a8f9985715d4935210d00000000000000000000050e151a1e1f1f1d1b3044586c7d8d8c837a84938674614e3a26191107000000000000000000000000000000000000000000000f23374b5e6f7d878b806c616c75777264523f2b1600000000000000000000000000000000061624313b44494a474034323637352f2518090000000000000000000000030e1821292f323434322e281e14070000000000000716222c3334322c23180c00000000000000000000000000000000000007172530363a3e4144464747474745403a31271a0b0000000000000000192d3f505b5c5850463a2c1e0e00000000000006121b212526241d12040000000000081b2c3c4a545b5c5c574c3f2f1d0a00000000000000001022323e4647443d34291c0e00000000000000000000000000000000000000000000000a1722292c2b261d1103000711181d1f1f1e19130b020000000000000000000000000c161f25282927221b11070e181f242525221c150c020000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001f344a5f748b98836d5843475c70879b8f78644f3a240f23384c6075899e8c7864503c28150100000000000000000000000003080a0a0815293c4e5f6f7c89948f938a79685744311e0b000000000000000000000000000000000000000000000000081c2f41515f6a72747062505960625f554635230f000000000000000000000000000000000006141f28303434332c221d2122201b13080000000000000000000000000000050e151a1d1f1f1d1a140b0200000000000000000510181e1f1d18100600000000000000000000000000000000000000122535434b4f5356585b5c5c5c5c59554e4438291a09000000000000001e33485c6e726d63584a3c2c1d0d000000000716242e363a3b382f221302000000001225384a5a677072716a5d4c3a26120000000000000000192d3f505b5c5850463a2c1e0f000000000000000000000000000000000000000000091928353e4240392f21120d19242c323434322e271e1509000000000000000000010f1d29333a3e3e3b362e2419202b33393a3a3731281f14080000000000000000000006090a08050000000000000000000000000000000711181b1a140a0000000000000000000000030a0f1112100b04000000000202010000000000000000000000000000000000030a0f1112100b04000000000202010000000000000000000000000000000000000000000000001e33485d71869a87715d4844596e8499917b66503b26111d31465a6e839794806b5844301c0900000000000000000000000000000000000d1f3141515f6b77828986796b5b4a3927150200000000000000000000000000000000000000000000000000122333414e575d5f5c5244464b4c4a4337281806000000000000000000000000000000000000020c151b1f1f1e1910090c0d0b07000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001b2f42536064686b6e70727272716e69615647382714010000000000001f34495e72828075685a4a3b2b1a09000002142534414a4f504c40311f0c00000000192d415467788488867b6955412c1702000000000000001e33485c6e726d63584a3c2d1d0d0000000000000000000000000000000000000002152737465157544c3f301f1c2b3740474a4a47423b31271a0d00000000000000000e1f2d3b464e5353504a41362b313d474e4f4f4b443b3126190c0000000000000005111a1f1f1d1a140d0400000000000000000000000918242d302e271c0e0000000000000000000c161e242727251f180f070f14171716130d06000000000000000000000000000c161e242727251f180f070f14171716130d060000000000000000000000000000000000000000001a2e43576b80928c77634f43586d8398917b66503b2611172b4054687c919b88735f4c382511000000000000000000000000000000000002132332414e5a646d7372685c4d3d2d1c0a0000000000000000000000000000000000000000000000000000051523303b43494a484035313637362f26190a00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000002091015191c1d1d1a160f05000000000000000000020e161b1b18130b01000000000000001f34495e71787c80838688888887847d73655644311e0a0000000000001b2f4354637385877868594838271605000b1f3243525e64665e4e3b2713000000001e33475c70859482787d6e58432e1903000000000000001f34495e72828075685a4a3b2b1a090000000000000000000000000000000000000c1f324555646c695d4e3c2a2a3a48545b5f5f5c564e44382b1d0e000000000000081b2c3d4b58626868655d54483b404f5a62646460584e43372a1c0d00000000000515232e3434322e2821170e020205050502000000051627364146433a2c1b0900000000000001101e2932383c3c39332b221a23292c2c2c272119100500000000000000000001101e2932383c3c39332b221a23292c2c2c27211910050000000000000000000000000000000000000014283b4f62758893806c5948586e8499907b66503b26111125394e62758a9e8f7b6754412e1d0b0000000000000000000000000000000000051423303c4751595f5d564b3e2f1f0f0000000000000000000000000000000000000000000000000000000006131e282f3434332d231d2122211c130800000000000000000000000000000000000810151a1c1d1d1c1a17120c05000000000000000000000000000000000000060d121415130f09020000050e161d242a2e3132322f2a22180d000000000000000313202a30302d271e13060000000000001e33485d7085929494949494959798918473604d392510000000000000132536455566778987766656453422110011263b4e6170797b6a55402b16010000001f344a5f748b9079656963533f2b1601000000000000001b2f4354637384877868594938271605000000000000000000000000000000000013273b4e6173827b6b5a473436485866707474716a6156493b2c1d0e00000000001125384a5b69757c7d797066594c4c5e6d777979746b615548392b1b0c0000000011233341494a47433c342a2014171a1a1a17120b0414233345535b574a3926120000000000000f1f2e3b464d51514e483e342c373e4242403c352d22170b00000000000000000f1f2e3b464d51514e483e342c373e4242403c352d22170b0000000000000000000000000000000000000c203346586a7a8b897666585d71879b8c77634e39241e232332465a6e83969884705d4b3a281400000000000000000000000000000000000005121f2a343e454a4943392d2011010000000000000000000000000000000000000000000000000000000000010b141b1f1f1e1911080c0d0c07000000000000000000000000000000000007121c242a2e313232322f2c2721191007000000000000000000000000000005101a2126292a28241d150b1019212931383e43474747443e352a1d0f0000000000000f21313d4545423a302415060000000000192d41556a80947d7d7d7d80808283868a7c68533e291400000000000008182738495a6b7c8f85736251402f1d0b142a3f54697d8e826c57422c17020000001f344a5f7489917c675451453523100000000000000000132536455566778987766656453422110000000000000000000000000000000000182d41566a7d92897663503d3f536676848a8a867d7367594a3b2c1b0a00000000182c405467788892938d83776a5b576a7c8a908f887d72655749392a19080000001a2e41515d5f5c5750473d32252b2f2f2f2c261e152332415163706855412c180300000000091b2d3d4c59616666635b51453e4a5257575550493f35281b0e000000000000091b2d3d4c59616666635b51453e4a5257575550493f35281b0e00000000000000000000000000000000000316283a4c5d6d7b8a84756d6d7a8d9785715d493427313838323f5366798da08d7a6957432f1a00000000000000000000000000000000000000010d18212a3134342f271c0f020000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000c19252f383f434747474744403b342c23190d0100000000000000000000000816222d363b3e3f3d3831281d242c353d454c53585c5c5c5951483b2d1e0d0000000000192c3e4f595a564d42332413020000000012273c5065798f846f68686a6a6b6d70757b69543f2a1400000000000000091a2b3c4e5f708391806f5e4c3a291a1e293e53687c93846e59442f1a050000001d32475c708696826d594534271706000000000000000008182738485a6b7c8f85736351402f1d0b000000000000000000000000000000001c31465b70859a93806c5946455a6f83958a7978828577685949392817050000001d32475b7084979687828688796a5d7287998d7d808884756757473726140300001f34495d7074716b635a4f433940444444403a31273241505f6f806f5a442f1a05000000001226394b5b6a757b7b776e63564e5c666c6c6a645c5246392c1d0e00000000001226394b5b6a757b7b776e63564e5c666c6c6a645c5246392c1d0e00000000000000000000000000000000000b1d2e3f4f5e6b78848882828a9288796754412e37444c4d45384a5d7083938f82705b46301b000000000000000000000000000000000000000000050e161c1f1f1b130a0000000000000000000000000000000000000000000007121a1e1d180f04000000000000070b0b090604030202020202020200000000000000000000000d1c2a36424c53585c5c5c5c5955504840362b1f1205000000000000000000081726344049505354524c443a2f374048505960676d7072726d64594b3c2b1907000000001e33485c6d6f6a5f5142311f0d000000000e23374c61768b88735e53545456585c61665e4d3a261100000000000000000d1e3041536577898d7b6a5846342e33323b5065798f87705c47321d08000000192d42566a7d928874604c39251200000000000000000000091a2b3c4d5f708392826f5e4c3a2917050000000000000000000000000000001f34495e73899d898975614e475c72889b866f646f7c87776757453422100000001f344a5f74899f8d786b727d897969768c9a86706b7482867565554432200e00001f34495d70808680766c60534d54595a5a554e443942515f6e7d846e59442f1a0500000000192d415568798890918b8273655c6c79828380786f6457493b2c1c0c00000000192d415568798890918b8273655c6c79828380786f6457493b2c1c0c0000000000000000000000000000000000102131404e5a6670797d82827d766a5b4a383345556162564540536475827c706253402c18000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000040d1315120c0817242e33322c21140500000006121b20201e1b19181717171717171715120d070000000000000a1b2b3a48545f676d707272716e6a645c53483d30231405000000000000000315263544525c6568696660574c414a535c646c747b828688878277695948362411000000001f344a5f73867d70604e3c291602000000091e33485d71878d77634e3f3f4043474c504c40301e0b00000000000000000112243648596b7d90887563513f414847444c61768b89745f4a35251708000013273b4f63778b907c6854412d1906000000000000000000000d1e3041536576898d7b6a58463422100000000000000000000000000000001f344a5f748b9b86887d6a56465b70869b87715d5e6c7c867463523f2d1b0800001f344a5f748a9f89735e606d7c8877768b99846e596370808472614f3d2b1805001a2e4152616e7a888a7d71645f686e6f6f6961574a51606f7d8d7d6955402c1702000000001e32475c7085988f807d86847566798b958c878a827567594a3a2a19080000001e32475c7085988f807d86847566798b958c878a827567594a3a2a190800000000000000000000000000000000031322303d49545d65696c6c6963594c3d2c3b4f6273746353434757646c695f5244352311000000070e1313110f0c0a080706050505050504030303030303030303030302000000000000000000000000081621282a271f1426354148473f32231301000616242f353633302e2d2c2c2c2c2c2c2c2a27211b120700000002152738495866717b8287888887847d776f665a4e41322313030000000000000d20324453626f797d7d7b746a5e555e666f77808890969b9d9c9588776653402d19060000001c3044586d828f7d6b5945321e09000000041a2f44596d83917c67523d2a2b2e32383b382f22120100000000000000000006192a3c4e60728593826f5d4b535d5c59575d71878c77624d4335261706000c2034485b6f839785705d4935210d000000000000000000000112243647596b7d9088756452402d1b0900000000000000000000000000001f344a5f748a9b868086725f4b576c82968c77634f5e6e7d826f5d4a37241100001e33485d71879b8b76604f5e6d7d8573889b86705c52617080806d5a4734210e0012243443505d6a7685908273717c8386847d74685b616f7d8d8774614e3a261200000000001f344a5f748a9d887369738084738296907c70768286776858483725130200001f344a5f748a9d887369738084738296907c7076828677685848372513020000000000000000000000000000000004121f2b37414a50555757544f463b2e2a3f54697d8270615142475257554d413426170600000d192328282624211f1e1c1b1a1a1a1a1a1a19191919191919191919181716130e0902000000000000061726333c3f3b31243143535d5b5041301d0a00122434424a4b48454342424242424242423f3b362e25190d00000c1f3244566776838f8c83807d8289938c83776c5f514232211000000000000016293d4f6171828c86868b877b6e68717a838c949c99948f8c8b8b8c83705c4935200c000000152a3e53677c918975614d39241000000000162b4054697d94806b56412c17191e2426231c110400000000000000000000000d1f31435567798c8c7a68556071716e6c6c6d82907a6a6053443423110004182c4053677a8f8c7864503c2814000000000000000000000006182a3c4e60728593826f5d4b38261401000000000000000000000000001e33485e73889b86778b7a675352667b9093806a5750607284796754412d1a06001a2f43586d82958f7a66524f5f70828084998a75604b526273857764513d2a1600061625323f4c596674839283828f9894959186796a70808e8c7b695744311e0b00000000001f344a5f748b9d88725d6270808284998c76616470808676655443311e0c00001f344a5f748b9d88725d6270808284998c76616470808676655443311e0c0000000000000000000000000000000000010e1a242e363c404242403b33291d2a3f54687c8f806f6051423e42403a3024170800000b1c2b363d3e3b3937343331302f2f2f2f2f2f2e2e2e2e2e2e2e2e2e2e2d2c2b27231d160e05000000001124354450544e42353c4e60716e5f4d3a2611001a2e41525e605d5a58575757575757575754504a41372b1c0b0013273b4e617485948b7b6f6a696d76828f958a7c6f60503f2e1c0a00000000001b3045596c808779707078858d7d7b858d96958f89847d79777474777c78634e38230e0000001025394e63778d907c68533f2a150000000012273c51657a90846f5a45301b06090f110e0800000000000000000000000000021426384a5c6e8293857260637787848382828394837d716252402d1900001024384b5f738794806b57432f1b0600000000000000000000000d1f31435567798c8d7a685643311e0c000000000000000000000000001c31465b70869a88728383705d4c60758a9a86725e4a54667884705d49341f0a0015293e5266798d95826d59465263748680948f7a65514556687a826d5945301b00000715212e3b485664748592909789808089968979808f8f806e5d4c3a28150200000000001f34495e73889d8b75615261718282978e7964536170808372604e3b281502001f34495e73889d8b75615261718282978e7964536170808372604e3b28150200000000000000000000000000000000000007111a21272b2c2c2b2620171125394d6073868e7d6f615244352b261d120600000015283a485253504e4c4a484646444444444444434343434343434343434342403c38312a21180d010000192d41536269605247495a6b7d7c6954402b15001f34495d7075726f6e6c6c6c6c6c6c6c6c69655d54483a281500192e42566a7d9192806d5d545459637080919b8d7d6e5d4b39271401000000001f34495e73887a6863686f76868d8f938d87827a756f6a65625f5f62696c5e4b36210d0000000b20354a5f738997826d58432e1a050000000e23384d61768c88725d49341f0a00000000000000000000000000000000000000091b2d3f51637689907d6a5c6e7c8b848686868d848382705c47311c0000081c3044586c809487725d4935200b0000000000000000000000011425384a5c6e82938573604e3b291604000000000000000000000000192d42576c82968b75798c7966545b70869a8d786450495c6e8275604b36200b000f23364a5d7185978975614e4556687a869295826c58434b5d7080705c47321c00000004101d2b3847566778899b89786b6c778797878f90807061503f2e1d0b0000000000001b30455a6e83978f7b6653546474869694806d5a516172837d6b5845321f0b001b30455a6e83978f7b6653546474869694806d5a516172837d6b5845321f0b0000000000000000000000000000000000000000060d1216171715110c040a1e314456687a8c8e807062523f2b170a00000000001c31455866686663605f5d5b5b5a5a5a5a5a5958585858585858585858585755514c463e342a1e1101001e33485d707d70645a57677789826b56402b16001f34495d708288868483838383838383827d7971665845311c001d32475c71869a8c77634f403f4653627284969c8c7a685644311e0a000000001f344a5f748a7a76787d838a918f8c7d78726c66605b55504d4b4a4e56584f402e1b07000000071c31465b70869b87715c47321d080000000a1f34495e73888c76614c38230e000000000000000000000000000000000000000510223447596b7d908875635f6d7b86766f73888670706c5a45311c00000114293c5065798e8d77634e39240f000000000000000000000000081b2d3f51637689907d6b584633210e000000000000000000000000152a3e53687c928e786f8284715f576c8397937d68543f526570665846321d0900071b2e4154677a8d927d6b59474b5d6f82949b87725e4a4054656c6153412d1900000000000d1a29394d62778c927d6b5a5a68798a9a8f827161524232221100000000000000172b4054687c9096826e5a475767788a9b8a7664525465768875614e3b271300172b4054687c9096826e5a475767788a9b8a7664525465768875614e3b2713000000000000000000000000000000000000000000000000000000000000011427394b5d6d7d8e8f826f5a442f1a0500000000001f344a5f747c7a7876747270706f6f6f6f6f6e6e6e6e6e6e6e6e6e6e6e6c6c6a66605a51473c2f1f0d001f344a5f748a82766d667586907c68533e2a15001a2e415363717a82848789898b8b898988878683745f4a341f001f344a5f748a9d88725d48342a35445567798ca0988673604d392611000000001d32465a6d7d878b8b8986827c8294826f5d58524c46403c3835353a41433d3122110000000001192e43586d83978a745f4a35200b000000061b30455a6f848f7965503b261200000000000000000000000000000000000611191f21293c4e60738692806d5a5d6b7a86776f848a75605a4e3d2a160000000d22364b5f748a917b66513c27120000000000000000000000000010223446596b7d90887563503e2b180600000000000000000000001025394e63778c927c68778a7d6d616d839795806b564047555b56483a29160300001225384a5d6f829389766452415264778a9e8e7965513d47535750443524110000000000000f253a4f64798f8e78634f4a5b6d7d918c7966534434251404000000000000001125394d6073879a8a7663504a5a6b7c8e94826f5c49596a7c7d6a56412c17001125394d6073879a8a7663504a5a6b7c8e94826f5c49596a7c7d6a56412c17000000000000000000000000000000000000000000000000000000000000000a1c2e3f4f606f7d88826d58442f190400000000001e33485c7083908e8c89888786868686868684848484848484848484848382807a756d64594d3c2a16001d32465a6d808f8a827985948573604d3925100011243645535f666b6f7173737474737372706f6d695a46321d001f344a5f748a9c87705b46301b26374a5d708498a3907c6955402c1804000000172a3d4f5f6b72747473706c67778a8d7966534037312c27232020272d2d292013040000000000162b40556a80958d77624d38230e00000000172c41566b80937d69543f2a15000000000000000000000000000000000a17232d333636344356687a8d8a7764525c6a798878808f7964503d301f0e000000081e33485d7288937d68533e2913000000000000000000000000000517293c4e60738693806d5a4835231000000000000000000000000b2034495d728797836e6c7d8b7d7679899c94806a543f37424642382b1c0b000000081b2d40526475879382705f4f475a6d829495826c5844363f423d332617060000000000000f253a4f6479908d77624d3d4f61748796836f5b4834200c0000000000000000091d3144576a7c8f93806d5a484e5f7082928c7965514d5f727a6a56412c1700091d3144576a7c8f93806d5a484e5f7082928c7965514d5f727a6a56412c17000000000000000000000000000000000000000000000000000000000000000010213142515f6b737163513e2a15010000000000192d4053647380878d919597999b9b9b9b9b99999999999999999999989794938f8982776b5945301b00172b3e5161707d8b958e948978675643301d090006182736414b52575a5c5e5e5f5f5e5e5c5b5a58554c3c2a17001e33485d71879b88725d4833201a2d4154687c92a69884705b47321d080000000e2031414e585d5f5f5e5b575b6e829583705d4a362318120f0c0b131818150d0200000000000013283d53687c938f79644f3a25100000000013283d52677c91826d58432e190400000000000000000000000000000919283540484b4b4a484b5e708395826f5c4c5b6a7888798f7d6954402b1602000000122234495e7389947d68533e291300000000000000000000000000000c1e314356687a8d8a7764523f2d1a0700000000000000000000061a2f43576c80958975627082908b8d97a08e7965513c272d302e261a0d0000000000112235465768798a8e7d6d5d4f5164778b9c88735f4b372b2c29211508000000000000000f253a4f64798f8f7964503b44576a7d928b77634f3b261200000000000000000114273a4d607284958a776654435263758690806a54425464685c4c3a2713000114273a4d607284958a776654435263758690806a54425464685c4c3a2713000000000000000000000000000000000000000000000000000000000000000003142332414e595f5d544534210e0000000000001124364655616b72787c80838487888889898b8b8b898989888786848382807d7c7b7979705c47321c000e21334352606d78838a86796a5a4a3826140100000918242f373d41454748484a4a484847464543413a2e1e0d001a2e43576b80928b76624e3e2c1a253a4e63778da29f8a75604b36210c000000031323303b43484a4a4946425266798d8d7966523e2b272624211c140a0000000000000000000011263b50657a90917b66513c2712000000000f24394e63788d86705c47321d08000000000000000000000000000114263746535c60605f5e5d5e66788c8c7966534c5a6978898b836e5945301c0700000a1d2f404f63778c927c68533d28130000000000000000000000000000021426394b5d708395826f5c4a372411000000000000000000000014293d5165798e9080736671808c93959082705e4b3622191b1913090000000000000517283a4a5b6b7a8a8c7b6d60555b6f83978f7a66523e2917140e0400000000000000000e23384d62778d927d68533f3b4e62768a927d6a55412c180300000000000000000b1e30425466778995837261504657687a7c736758474650534b3e2e1d0b00000b1e30425466778995837261504657687a7c736758474650534b3e2e1d0b000000000000000000000000000000000000000000000000000000000000000000051423303c454a49413627170500000000000006182837444f585e63676a6c6f70727373737474747373737271706f6d6b6a68676664646153412d190004152534424f5b666f7472685b4c3d2c1b090000000007121c23292d30323333343433333231302e2c261d10000014283c4f627486927d6b5c49352120354a5f74899fa38d78634e38230e0000000004131f282f3334344048494a5e728695826e5a473c3c3b3a3630271c0f0000000000000000000f24394e63788d937c68533e2813000000000c21364a5f748989745f4b36210c00000000000000000000000000081d3144556470767674737273706e829483705d4b4b5b6a7a8b88735f4a36210d00001125394d5e6d7d928976634e3b2916030000000000000000000000000000091c2e415366788b8c796653412e1b08000000000000000000000e22364b5f73879b8f8576686e777d807c726353412e1b0700000000000000000000000b1c2d3d4d5c6b7a888b7d7269666e7b8f95826d5844301c08000000000000000000000b20354a5f748997836d594533465b6f8397846f5b46311c08000000000000000001132537495a6b7b8c90806e5e4f4b5d6b808476634f3b3c3d382e201000000001132537495a6b7b8c90806e5e4f4b5d6b808476634f3b3c3d382e2010000000000000000000000000000000000000000000000000000000000000000000000005131f293034342e25180900000000000000000a1926323c434a4e5255575a5b5c5e5e5e5f5f5f5e5e5e5c5c5b5a5856545352504f4f4d443524110000071624323e49535b5f5e564a3d2e1f0e00000000000000080f14181b1d1e1e1f1f1e1e1d1c1b1917120a0000000d203345576775808278634e38231d32475c72889da48f79644f3a250f0000000000010c141b1e2c3f515d5e5b586a7d938a7663535252504f4a43392d1e0e00000000000000000c21364b60768c94806a543f2a1500000000081d32465b70868d78634e392510000000000000000000000000000c21364b607382898b898988867364778a8d7a6754424c5c6c7d8e7864503b2712000013283e53687c879182786a5846321f0b000000000000000000000000000000112436495c6e829483705d4b38251300000000000000000000071c3043586c80948a8087776764696a68605445362412000000000000000000000000000f1f2f3e4d5c6a77838e857d7b8078889c88735f4b37220e00000000000000000000071c31465a6f849888735f4b384054697d9289745f4a35200b000000000000000000081a2b3c4d5d6d7c8c8d7c6d5f5353687d937d68533e2928241c100200000000081a2b3c4d5d6d7c8c8d7c6d5f5353687d937d68533e2928241c1002000000000000000000000000000000000000000000000000000000000000000000000000010d161c1f1f1a120700000000000000000000091520282f353a3d40424446474848494a4a4a4948484747464443413f3e3c3b3a3a38312617060000000614202c363f464a4943392d1f10010000000000000000000000000000000000000000000000000000000000031628394957636a6c6a5c4a36211d32475c72889da48f78644f3a240f0000000000000000051d32475c6f73706d6b778c927d6a68676766645f564b3c2c1b08000000000000000a1f34495e738997826b56402c160100000002192e42576c82917c67523e2914000000000000000000000000000c21364b6071737376897d7b75685a6d809285725f4c3e4e5f70827d6a55402b16000012273b50626d7382928875624e3a251100000000000000000000000000000007192c3e5164768a8d7a6755422f1d0a0000000000000000000014293c5064788d907c828675645454534d4336271806000000000000000000000000000111202f3e4c5966717a838889847482968f7965513d28140000000000000000000001172c4055697d928f7a6753403a4f64788e8d77624d38230e000000000000000000000d1e2f3f4f5e6d7b898c7d7066626d82927c68533d28131009000000000000000d1e2f3f4f5e6d7b898c7d7066626d82927c68533d2813100900000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000030c141b2025282b2d2f30323333343434343433333232302f2e2c2a2927262525231e14080000000000030f19232b3234342f261b0f01000000000000000000000000000000000000000000000000000000000000000a1b2b3946505557554d3e2d1a21354a5f74899ea18c77624d38230e0000000000000000001d32475c718586838280869a867d7d7c7c7b7873685a4a38241000000000000000071d32475c728798836c57422d180300000000152a3f53687d93806b56412d1803000000000000000000000000081c3043535e5e5e6d8288736258506375898f7b695643415364767d6a55402b1600000c2033445258637588927d6854402b16010000000000000000000000000000000f2234475a6c809285725f4c392614010000000000000000000d2135495d7085988472848271604e3e39302618090000000000000000000000000000000211202e3b48545e676e727370677b9095806b57432e1a050000000000000000000012263a4e62768a97836f5c4a384c60768c8f78634e3929190900000000000000000000112131404f5d6b78848f837a777c8a8775624e3a251000000000000000000000112131404f5d6b78848f837a777c8a8775624e3a251000000000000000000000000000000000000000000c151b1d1a1309000000000000000000000000000000000000000000000000000000000000000000000000070c101316181a1b1d1e1e1f1f1f1f1f1e1e1d1c1b1a1817151312110f0f0e0a0200000000000000000710171d1f1f1b1309000000000000000000000000000000000000000000000000000000000000000000000d1c28333b4042403a2f29282c3d5064788da29c88725e4934200b000000000000000000192e41546776838b9195959c9594949393918e867867533e291400000000000000001b30455a6f8699846e59442f1a040000000011263b5065798f856f5a45311c070000000000000000000000000114253542494853687c8e79655046596b7d928672604d3a4759686a5f4e3b27120000041626343f45586c8095836e59442f1b0600000000000000000000000000000005182a3d506275888f7c695643301d0b000000000000000000061a2d4155697c908c7776897d6c5a4836241408000000000000000000000000000000000002101d2a36414b53595d5e5b61768b9b86715d48331f0a0000000000000000000a192837475a6e82958c796755444a5f748b8f7867574737271606000000000000000000031322313f4d5a66727b84898b898377695846331f0b00000000000000000000031322313f4d5a66727b84898b898377695846331f0b00000000000000000000000000000000000003111e2830322e261a0b0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000b16202837424745413f3d40495a6c8093a693806c58442f1b070000000000000000001225374958656f777c80838c998583827d7c79777467533e29140000000000000000192e43586d8398866f5a45301b06000000000d22374c61768b88735e4a35200b000000000000000000000000000817252f34394e63778c7d6955404e617588907c6957443c4a54554e41301e0b0000000817222b3d51667b9088725d49341f0a000000000000000000000000000000000d203346596b7d918673604d3a2714010000000000000000001226394d60748894806d7c8a776653412f1c09000000000000000000000000000000000000000d19242e383f454848485c71879b8b76614c38230e00000000000000000a19283746556574849597857362525063778d968675645444342414040000000000000000000413212f3c49545f686f7375746f66594b3a29160300000000000000000000000413212f3c49545f686f7375746f66594b3a29160300000000000000000000000000000000000011212f3b44474238291805000000000000010a10141514110b040000000000000000000000000005111a1f1f1c160d0100000000000000010c151b1f1f1d170c00000000000000000000000000000000000000000000000000060a0b090300000000000000070b0b0801000000000000000000000000000000000000000000000000000c203446555c5a565352545b67778a9c99887663503d291501000000000000000000081a2b3a48535b62676b71869a88736b696764625f58493724100000000000000000172c41566b829687705c47311c0700000000091e33485d72878d77634e39240f000000000000000000000000000007121b2034495e7388836e594445576a7d918673604d3b393f403b3023130100000000050f23384d62778d8b76614c37220d000000000000000000000000000000000416293b4e617488907c6a5744311e0b0000000000000000000a1e3145586c80938976718383705e4c392613000000000000000000000000000000000000000007121b293742464244596e83988f7965503b2610000000000000000b1a28374555647383938b9091807064606e8093909383726252423222120200000000000000000003111f2b37424c545a5e605f5b635f51412e1b0800000000000000000000000003111f2b37424c545a5e605f635b4b3c2d1c0b0000000000000000000000000000000000000b1e2f3f4d585c554735220e000000000009141e25292a29251f170d01000000000000000000000515232e343431291f1204000000000004121f28303434322a1d0f0000000000000000000000000000000000000000000009121a1f201d160b0000000006121b20201c140a00000005070706020000000000000000000000000000000011263b5063716f6b6867696f788696978a7a6a594734210d00000000000000000000000d1c2a3640484e52566a80938f7a6654524f4d4b453b2c1a080000000000000000152a3f54697d9488725d48331e0800000000051a2f44596e83917b67523d281300000000000000000000000000000000071b30455a6f8488725d493b4e617488907d6a5744312a2b271e12040000000000000b20354b5f748a8f79644f3a251000000000000000000000000000000000000c1f3244576a7d918773604e3b28150200000000000000000215293c5063768a93806c788b7b6856432f1c0900000000000000000000000000000000000000000f223547555b5752566b8297927c67523c281d100100000000061829384655637383928c7b83928f8277757d8d92808c91827060504030201000000000000000000000010e1a252f384046494b556677705e4b37230e00000000000000000000000000010e1a252f384046495b6d7869584838291a0b000000000000000000000000000000000015283b4d5d6a7164513e2a17030000000a192631393e3f3e3a332a1f120500000000000000000011233341494a453c30221202000000031323303b44494a463b2d1b090000000000000000000000000000000000000002101c262e343632291c0c00000616242f353530271c0e0b141a1d1d1b171108000000000000000000000000000012273c51667b84827d7c7d838b958e85796c5d4c3b2917040000000000000000000000000c19232c33393d5064788d96826d5e5c59544d443a2f2316070000000000000013283d52677c9289735e49341f0a0000000000172b40556a8094806b56412c180300000000000000000000000000000000172c41556a808c77624d3844576a7d908874614e3b2816120b0100000000000000091e33485d7288927c67523d281300000000000000000000000000000000000215283b4e617387907d6a5744321f0c0000000000000000000d2034475a6d82948a766e8286725f4c382511000000000000000000000000000000000000000014283d5265706c67636b8095937d6853443a2e1f0f000000000f23354756647382928d7d6d73828f938c8b9093857380908f7d6e5e4e3e2e1d0d000000000000000000000008131c252c3544536373847a65503b261100000000000000000000000000000008131c252c384d6277877666564738291b0d000000000000000000000000000000001b3044576a7b826d5a46331f0c000007182837444d5354534e463c3023140500000000000000001a2e41515d5f594e40301f0e0000000f2132414e585e5f594a3925110000000000000000000000000000000000000312202e3942494b463a2a190600122434424a4a44392c1d1d272e3232302b251b11060000000000000000000000000e23384d62778c7d8284868684807a72685c4e3f2e1e0c0000000000000000000000000000061018273644515e72879b887473716d6861574c413325160700000000000011263b50657a908b745f4a35200b000000000013283d51667b90846f5a46311c070000000000000000000000000000000013283d52667b907b66513d3b4e617488917d6b5845321f0c000000000000000000041c31465b708694806a55402b160100000000000000000000000000000000000b1e3144576a7d908874614e3b281502000000000000000004172b3e5164778a94826e778b7b6754402d190500000000000000000000000000000000000000152a3f546a80827c78748297937c6760574c3d2d1c0a000001172b3f52647383928f7d6e5f64717d868c8d898274667284958d7c6c5c4c3b2b1a080000000000000000000000091a293745536271828d7965503b26100000000000000000000000000000000000091123384c61768a8474645647392b1c0c0000000000000000000000000000001f34495e73888a76624e3b28140100122436465560686a6862594e4132231404000000000000001f34495d70746b5e4e3d2b19060006192c3e505f6b737468543f2a150000000000000000000000000000000000001121303e4b555d60584836220e001a2e41525e5f564a3b2c2e3a4347474540382e23170a00000000000000000000000b1f34495d7288826c6f6f6f6e6b665f564a3e302110000000000000000000000000000000011325364554626d77829791888987837c746a5e51433425150500000000000f24394e63788f8c76604b36210c00000000000f24394d62778c89735f4a36211212110e0a0400000000000000000000081827394d62778d806a55413144576a7d918875614e3b2916030000000000000000001a2f445a6f8497836c58432d190700000000000000000000000000000000000214273a4d607387917d6b584532200d0000000000000000000e2134475a6d82938c796f8384705c4834200c0000000000000000000000000000000000000013283d516476858c8d8a899b907c7974695b4a3927130000071c31465a6e82928f8070605053606a727677746d6457667788988a7a695948372411000000000000000000000114273847546371829083705d4a36210d0000000000000000000000000000000000000a1e33475a6d809283746557493a29170300000000000000000000000000001f344a5f748b927d6a5744311d0a081b2e415364737c807c766b5f5142322211000000000000001f34495e72877c6c5a4836230f000e2236495c6e7d88826b56412c1701000000000000000000000000000000000c1d2f3f4e5c68717565513c2711001f34495d7073685949383e4c575c5c5a544b413528190a00000000000000000000061b2f44596d8386715d5a5a5956514b43382d2012030000000000000000000000000000000a1d3042536372808b828e9682747a8490887c6f61524333221100000000000d22374c62778c8d77624c37220d00000000000b2034495e72888d78644f3a26272726231e180f04000000000000000013253645505f7389846f5a45303b4e617588927d6b584633200d000000000000000000182d42576c839786705b4631221a0f02000000000000000000000000000000000b1e3144576a7d918875614f3c291603000000000000000005182b3e516376899785727a8c77634f3b2612000000000000000000000000000000000000000e223548586770777b808ba08f898c88796856432e1900000a1f344a5f7489908270615142424d565d61625f5a51495a6a79868f88776654402b1600000000000000000000071c3044566472829089776553402d1a0600000000000000000000000000000000000004172a3d50637486928475675846331e0a00000000000000000000000000001e33485d72879b8773604d3a26130e23374b5e7183909592897d6f6050402f1e0c0000000000001b2f44586d828a7765523e2b180414283d5165788c98836d58432e18030000000000000000000000000000000316293b4c5d6c7a857564503b2611001f34495d7083776755434d5c6a71726f675e52453728190a00000000000000000000162a3f53687c8b76624d4544413d372f261b0f02000000000000000000000000000000001125394d5f7182908073889b88746671808e8e80706151402e1c0a000000000b20364b60748b8f78634e38230e0000000000061b3044596d83927d6954403b3c3c3b38332b211507000000000000071b2f43546368708588735e49343145586b80928875624f3c2916030000000000000000162b40566b809588735e4a3a362d2010000000000000000000000000000000000114283b4e617488927d6c594633200d0000000000000000000e213447596c7d91907d72877d6a55402c170300000000000000000000000000000000000005182a3a49545c62677b8f9b877476787c705b46301b00000b21364b60768c827262524333303a43494c4c4b463e3c4c5b68737a7d7c6c57422c17000000000000000000000a1f344a5f7383918b7b6b594836241100000000000000000000000000000000000000000e21334557687889938576614c37220d00000000000000000000000000001a2f43586c8295907c6956422f1c14283d52667a8e9c8a7c80897d6e5e4c3b291705000000000015293e52677b90826e5b4733200c182d42576b80959a866f5a45301b060000000000000000000000000000000d203346586a7b8b806b584735210d001a2e4154687c8572604d596a7a8688837a706355463727170600000000000000000011253a4e63778c7c67533e2f2c28231b1309000000000000000000000000000000000000162b4054687c8f86726c80948f7b67616f808f8f806f5d4c39261300000000091e33485e73898f79644f3a250f000000000000162a3f53687c90836e5a4c505252504d473e3325160500000000000a2034495e727d78828c77624d38283c4f63768a92806c594633200c000000000000000014293e53687c928d77634e4f4a3e2e1c09000000000000000000000000000000000b1e3145586b80928975624f3c291603000000000000000005172a3d4f617386988b7a82846f5a45301b06000000000000000000000000000000000000000c1c2b37414c5e70849794806b6063686454412d1900000a20344a5f74837263544435251e272e34373735312b2e3d4b566066686860503d291400000000000000000000091e33485d7185887b6c5d4d3c2b19060000000000000000000000000000000000000000041628394a5a6a79868874604b36210c000000000000000000000000000015293d5165798d9986725f4c3825182d41576b809595806c6b78887b6a584634210e00000000000f24384c61758a8a76634f3b27131c31465b70869a9d88725d48331e0900000000000000000000000000000115293c4f6275888d7864503c2a18050011253a4e63788d7c68556275887c75808e82736455453423120000000000000000000b2034495d7287826d58442f1b130e080000000000000000000000000000000000000000192e43586d8394806a65788d96836e5a617183948d7b6856432f1c08000000051d32475c7287907965503b26110000000000001024394d60748889745f6164676766615b514334221000000000000b20364b6075828b80907b66513d2833465a6d82958975624f3b2815020000000000000011263b5064798e927c685e645c4b382410000000000000000000000000000000000215283b4f62768a92806c594633200d0000000000000000000d20324456687a8c98898088725d48331e0900000000000000000000000000000000000000081a2b3a49596a7c8e9e8b7764504e5350463725120000071c3145596d736454453626170b131a1f2222201d171f2d39444c5153534e4233210e00000000000000000000041a2e42556773736a5d4e3f2f1e0d000000000000000000000000000000000000000000000a1b2c3c4c5b687274695845311d0800000000000000000000000000000e2236495d7084978f7b6754412e1b2f445a6f8499917b675a6979887663513e2b180500000000091e32465b6f84927d6a56422e1a20354a5e73899ea08b76604c37220d0000000000000000000000000000091d3144586c809287725d4935210d00000c21364a5f748985705c697d8b766270829283736352412f1d0a0000000000000000061b2f43586c8287725e4935200f11110f0d080300000000000000000000000000000000192e43586e83937c675d7185998a75615365778a9886725f4b37230f000000001b30455a6f86917b66503b2611000000000000091d3145596c808f7a7276797c7c7a766e6151402d190600000000081d31455764707d8a95806b56422d2a3e5165798d927d6b5845321e0b000000000000000d22364b5f7388988572707968533d281300000000000000000000000000000000000c2033465a6d82958975624f3c2915020000000000000000021527394b5d6e8091999489735e48331e090000000000000000000000000000000000000011253849586777889992826e5b48393d3c34281908000001162a3d4f5c5e5546362718080000060a0c0d0b08020f1c2730383c3e3d3a31241504000000000000000000000012263849575f5f574c3f3021110000000000000000000000000000000000000000000000000e1e2e3d4a565e5f594b3b2815020000000000000000000000000000061a2d4154677a8e9885715e4b372430465b70869b907965505c6d7d826d5a4734210d0000000003182c4055697d9286715d49352123384d62778ca19d8f7964503b261100000000000000000000000000000f24384c60748896826d58432f1b060000081d32475c70868c77636e8388725d6375889282705e4c39271400000000000000000015293e52677b8d78634f3b2624262624221d170f060000000000000000000000000000162b4055697d917d6855697c90917d69555a6c80938f7a66523e291500000000192e43586e84937c67523c27120000000000000216293c4f61738484878b8f9292908a806f5c4935210c000000000215283947525f6c798885705b46302236495d7183908875614e3a271300000000000000081c3044586b7d909185857b67523d2813000000000000000000000000000000000004172a3e5165798d92806c5845321e0b0000000000000000000a1c2e3f51627283929a86715c47321d0800000000000000000000000000000000000000162b40546776869694867563513e2b282721170a000000000e20313e4849433728190900000000000000000000000a141d23272928251e1406000000000000000000000000091b2b39444a4a443b2f21120300000000000000000000000000000000000000000000000000101f2d3943494a453b2d1d0c000000000000000000000000000000001124384b5e7084978e7a6754412e30465b70879b917b66504f6172857763503c2914000000000011263a4f63778c8d7864503b27263b50657a909688927d68533f2a150000000000000000000000000000162a3e53677b8f917c68533e2a1500000002192e43586d83927d69708788725c586a7d928e7b695643301c0800000000000000000f24384d61758a7d695541373a3b3b3a37322b23190d0000000000000000000000000012263a4e617385826c596074889985715d5064778c96826c57432e1900000000172c42576c82937d68533e2913000000000000000d203244566675838e908f8f8d8f918c78644f3a251000000000000a1b2935414e5c697786705b46301b2e415464727d867d6a56412c17020000000000000115283b4e61718089898272604c38240f0000000000000000000000000000000000000e2236495d7083908875614e3b27130000000000000000000010223344556473828a7d6a57432e1a0500000000000000000000000000000000000000172c41576b7d89898376675745342213120d0500000000000213212c33343026190a0000000000000000000000000001090e121313100b0200000000000000000000000000000d1b2730343430281d11030000000000000000000000000000000000000000000000000000010f1b262f343431291d0f0000000000000000000000000000000000081b2e415467798c9784705d4b382f445a6f869b927c67524355687a806c58432e1904000000000c2034485d718693806a56422e2a3f54697d93927c92826c58432e1905000000000000000000000000071b3044596d82968c77634e39251000000000162b4054697d94846f728888725d4e61758a9986735f4c3824100000000000000000091e32475b708585705c494c4f50504f4b463f362a1d0e0000000000000000000000000b1e31445666747b725d576a7d918d7966535c70869a86705b46311c00000000162b40556a80947d68533e29140000000000000003152738485765717979797878787c827c67523d28130000000000000b1823303e4b5a68726856422e1925364654606a71746955412c1701000000000000000c1f324353626d73746f635443301d09000000000000000000000000000000000000061a2e415364727d867d6a56412c1700000000000000000000041526374655636f746e604e3b2814000000000000000000000000000000000000000014283c4f606d74746f65584939281605000000000000000000030f191e1f1b140900000000000000000000000000000000000000000000000000000000000000000000000000000a141c1f1f1c150b00000000000000000000000000000000000000000000000000000000000009131b1f1f1d160c000000000000000000000000000000000000001124374a5d6f82958d7a6754412e43586e8498947d69543f4b5d707d6d59442f1a0400000000051a2e42576b809486715d48342d42576c82978f798e86715c47321e090000000000000000000000000c20354a5e73889c88725e4934200b0000000012273c51667b908873708789745f4a5a6e83978f7b67533f2a16010000000000000004182d41556a7d8b77635d6164666664605a52483b2c1b090000000000000000000000021527384856616764564e61748796836f5c566b809588725c47321d0000000014283e53687d93806a543f2a150000000000000000091a2a3948545e646464636364676d7466523d2813000000000000000612202d3c4a575c574a392713192837434d565d5f5a4c3a261200000000000000000214263544515a5e5f5b524536251401000000000000000000000000000000000000001124364654606a71746955412c1700000000000000000000000819283746525b5f5b5142311f0c00000000000000000000000000000000000000000d2032424f5a5f5f5b53473a2b1b0a00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000006141e2d405264778a9885715e4b3941566b829696826c57424153646b60503e2a1601000000000014283c5065798e8c77634e3a30455a6f859a8c768a8a75604c37220e00000000000000000000000011253a4f63788d98836e5944301b06000000000f24394e63778d8d786e848d77634e53687c9297836d59442f1a06000000000000000012273b5064788d806f7276797a7b78756e65594a392714000000000000000000000000091a2a38444d52504744576a7c8e8c796756687d9387715c47321c0000000011273c51667b91806a543f2a150000000000000000000c1b2a36414a4f4f4f4e4e4f525a5f584836230e0000000000000000020f1e2c3a4447443a2c1c0a0a1925313a42484a463c2e1d0a000000000000000000081726333e45494a463f35271808000000000000000000000000000000000000000007182837434d565d5f5a4c3a26120000000000000000000000000a1928353f474a473f332413020000000000000000000000000000000000000000021423313d464a4a463f362a1c0d00000000000000000000000000040b10110f0b04000000050d13161715110b0300000000000000000000000000040c11141514110b040000000000000000000000000000000000080f14171715100901000005070707030000000000000000000000000000000000000000060d1112110e06000000000000041524313a3c485a6c80918e7a68554b4d53687d9399846f5a45364652564f4232210e0000000000000d22364a5f7388927d69544034495e73889d8973868f7965503c2712000000000000000000000000152a3f53687c92937d6954402b1602000000000b20354b5f748a917c697d917c68534f64788e9c87725d48331e0800000000000000000c21354a5e72888c86888c8f90908f8a82776856432f1c070000000000000000000000000c1b2731393c3b343a4c5e708292857365697d94826d59442f1a000000000f243a4f64788f806b56402b16000000000000000000000c19252e363a3a3a38383a3e464a453a2b1907000000000000000000000e1c282f322f281c0e000008141e272e3334322a1e1000000000000000000000000816212b313434322c221709000000000000000000000000000000000000000000000a1925313a42484a463c2e1d0a000000000000000000000000000a17222c3234332c221506000000000000000000000000000000000000000000000514202a313434322b23180c000000000000000000000000000c171f2526241f170c000c1821282b2c2a261f160c00000000000000000000000d1720262a2a29251f170d020000000000000000000000000004101b23292c2c2a241d140c14191c1d1c18120b0200000000000000000000000000000008111a2126272722190e01000000000e2133424e5252526173869885725f60636668798f9c88725d4934353e403c32231404000000000000071c3044586d8296846f5a46374c61768b9b86708294806a55402c17020000000000000000000004192e43586d82978f7965503b27120000000000081d32475c718796826b7588836f5f4d60768c9f89745f4a341f0a0000000000000000061b2f44586d82969b9ca0a3a4a5a39e9586725f4a36210c000000000000000000000000000a151e242726212f41536373839083787786897866523e2a16000000000d22374c61768c826b56402b16000000000000000000000007121b212425252323252a323431281c0d0000000000000000000000000b151b1d1b150b00000000010b131a1e1f1d170d00000000000000000000000000040e161c1f1f1d18100500000000000000000000000000000000000000000000000008141e272e3334322a1e100000000000000000000000000000000510181d1f1e181004000000000000000000000000000000000000000000000000020e161c1f1f1d171006000000000000000000000000000d1c2933393b3933291d0f1d2a343c40423f3a32291d11030000000000000000101e2a343b3f3f3e3a332a20140700000000000000000000000414222e373e41413f3930261f282e3232312d261e140a000000000000000000000000030f1a242e363b3c3c362c1f110100000014293d506067676768687a8d8f7c7275777a7d828da08b76614c3823292b28201405000000000000000015293e52667b8f8975604c3a4f64798f98836e7c91846f5a45311c0800000000000000000000091e33475c71869b8b75604c37220d0000000000031a2f44596e8398856f6a79827c67525f748b9f89735e49341f0a000000000000000000152a3e53677b9093908f8d8f909295998d77624d38230e0000000000000000000000000000020a0f1211122435465564727d868a8983786a5b4936230f000000000a1f34495e73897d69543f2a1500000000000000000000000000070d0f0f0f0e0e10171d1f1c150b000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000010b131a1e1f1d170d0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000081a2b3a464e504e463b2d1e2d3b47505657544e463b2f2113040000000000000e1e2e3c474f5454534e463d3125160700000000000000000001122332404a525656534d4338313b43474746413a31271b0f010000000000000000000714212c374149505251493d2f1f0d000000172c42576c7c7c7c7c7d80839888888b8d908f8a8a9c8f7a65513c271416130c020000000000000000000f23384c6075898f7a66523d52677c9295806b778c89745f4a36210c000000000000000000000d22374c60758b9b86715c47331e09000000000000162b40556a809589735e666c6b5f4d60768c9b86715c47321d080000000000000000000f24384d6176827d79787778797c80848877624c38230d00000000000000000000000000000000000000061728374654606a7174736e665a4c3d2c190700000000071c31465b708676634f3b2612000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000a13181917110800000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000a12191d1e1e1a130b0000000000000000000000000000000000000000000000070e14191b1b1b191510090100000000000000000000001124374958636662594b3a2b3c4b59646b6c6962584c3f322313030000000007192b3c4c5963696a6862594f423425160700000000000000000b1e3041505d666b6b68605649424e575c5c5b554e44392d1f120300000000000000091725323e4a545d6467655b4d3c2a16020000162b405467798a9393949597969b8f8a86807a75839794806a55402c1702000000000000000000000000091d31465a6e8395826c5843556a8095937d6872878e78644f3b26110000000000000000000011263b5065798f97826d58432e190500000000000013283d52677b918c77625357564f4f64788e95826c57432e19050000000000000000000a1e33475a6a6c686563626364676b6f73705d49341f0b00000000000000000000000000000000000000000a192837434e575d5f5e5a53493c2e1f0e000000000000182d42566a7469594734200c0000000000000000000000000000000000000410191d1e19151211100f0f0f0d08020000000000000000000000000002101d272d2e2c241a0c0000000000000000000000000000000000000000000000071015181917130c040000000000000000000000000000000000000000000912191c1d1c18110800000000000000000000000002101c262d3233332e271e12050000000000000000000000000000000000000004101a22292e3030302e2a241d150b00000000000000000000182c405466767b7669574437485a697680827d756a5d5041312110000000000f2336495a6a767d807c766c605243342514030000000000000014283b4e5f6e7a82827c73675a51606b7172706961564a3d3021120100000000000818273543505c6770797c786b5945301b0600001125384a5c6b778086878684828d8976706b66687d9299846f5a45311c0700000000000000000000000002172b3f54687c9187725d49586e8398907a666d82937d6954402b1702000000000000000000162b3f54697d93927d68533f2a15000000000000000f24394e63788d907b665142404155697d928d7965513d29140000000000000000000004182b3d4d575853504e4d4e5052565a5e5d51412e1a060000000000000000000000000000000000000000000a1926313b43484a49463f362b1e100100000000000013273a4c5a5f584b3c2a170400000000000000000000000000000000000514222c32332e2a272625252524221d150b00000000000000000000000010202e3a414340372a1b0a0000000000000000000000000000000000000000000e1a242a2e2e2c2720170b000000000000000000000000000000000000010f1b262d3132312c241a0e000000000000000000000011202e3942474848423a3023150600000000000000000000000000000000000715222d363d42464646433f3931281d120500000000000000001c31465a6f84918773604c4154667788948c8b887b6e5f4f3f2e1d0b000000162b3f52667889938c87897d70615243322110000000000000001b2f43576a7d8d968e8e85786a5e707d8688857d73685b4e3f301f0f00000000041626364553616d79848d867d715c47321c070000081b2d3e4d5a646c6f70706e6f8293826e5c5163788d9d89735f4a36210c000000000000000000000000001125394e62768b8d77634f5c70869b8d7863687c91836f5a45311c080000000000000000041a2e43586d83978e79644f3a2611000000000000000c21364b5f748994806a554036495c70849784705d4a36220e00000000000000000000000e1f2f3b42433e3b3838383b3d4145494941332311000000000000000000000000000000000000000000000008141e272e333434312b23190e00000000000000000b1d2e3c464a453b2d1e0d0000000000000000000000000000000000001122323f4748423f3c3b3a3a3a3a3731281d11030000000000000000000a1c2e3e4c5658544839281603000000000000000000000000000000000000000f1e2c373f4343413b33291d1001000000000000000000000000000000000f1f2d394147474640372c1e0f0000000000000000000b1e2f3e4b555c5e5d564d4133241506000000000000000000000000000000071625333f4951575b5b5b58534d443a2f221405000000000000001e33485e73889d8f7b67534a5d7083958577757c887d6d5d4c3a29170500001b3045596e82958e7c717682807061503f2d1b090000000000001e33485d72879b8c7a78828879697c8e9787828686796b5d4e3d2d1c0b0000000f223344546371808b857a726a6254412e19050000000f202f3d4851575a5b5b596475878c7967545e72889c8e78644f3b2611000000000000000000000000000a1f33475c7085927d69555f74899e8b766062778c89745f4b36220d0000000000000000091e33475c71879b8a75604b36210d00000000000000081d32475c708698836d5844435366798c8b796754412e1b07000000000000000000000001111e282d2d2a2623232325282c3034342e231505000000000000000000000000000000000000000000000000020b141a1e1f1f1c17100700000000000000000000101e2a323431291d0f00000000000000000000000000000000000000192d40515c5d575452504f4f4f4f4b453b2f21110100000000000000001427394b5c696e665745331f0c0000000000000000000000000000000000000a1c2d3c4a535858564f463a2e1f100000000000000000000000000000000a1c2d3d4b555c5c5b544a3c2d1c0a000000000000000015283b4d5c687073716a5f514233231301000000000000000000000000000113253443515c656c7070706d6860574c40322314040000000000001f344a5f748ba095826e5a5165798d8b7766606a77877a6a584634210e00001e33485e73889c88725e637080806e5c4b3927140200000000001f344a5f748b9d8872646f7c887783988e7a6b727d8a7b6b5b4b3a2816040000182b3e51627282887c71675f564e453625120000000002111f2b353d424546464658697b8d847260586d8296937d6955402c170300000000000000000000000004192d41556a7d93846f5a62778c9d88735e5d71868e7965503c271200000000000000000d22374c60758b9b86705c47321d080000000000000002192e43586c829787715c47526171838f7d6d5c4a37241100000000000000000000000000000b14181815110e0e0e1014171b1f1f1a110500000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000d171d1f1d160c00000000000000000000000000000000000000001e33485d6f716c6867666464646460584c3f2f1f0d00000000000000001b2f4356697a8474624f3b28140000000000000000000000000000000000001427394b5a666d6e6a63584c3d2e1e0e000000000000000000000000000013273a4b5b68707270675a4b39281502000000000000001b3044576a7a8589867c70615141301f0d000000000000000000000000000b1e314252616e7982868786837c746a5e51423222100000000000001f344a5f748b9984897561566b8094836f5b4d596878887563513e2b1804001f344a5f748b9b866f5a526172837a685644311e0b00000000001f344a5f748b9d88735e5e6d7c8584998c7661606d7b8a7968574534210e00001e32475b6e8082756a5f544b433b332718070000000000010e1822292d3030303a4c5d6f808f7d6b59677b9098846f5a46311d08000000000000000000000006131e273b4f64788d89756065798f9b86705b576b8094806a55412d18040000000000000011263b5065798f97826c58432e19040000000000000000152a3f54687d938b7560536270808e8070604f3e2c1a08000000000000000000000000000000000000000000000000000000000000000000000000000000000000040c12161715100600000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001f344a5f7486827d7c7b79797978746a5d4d3c2b1907000000000000001e33485d7286927d6b57432f1b0700000000000000000000000000000000001b2f4356687883848075695b4c3c2c1a09000000000000000000000000001a2e4356697985888478685744311e0a000000000000001f34495e7388857d888e80705f4e3d2b190700000000000000000000000014273b4e6070808c867d79797c83877c6f60503f2d1b0800000000001f344a5f748b9984867c695b7085907b6753454a5b6c7d826d5a4734200c001f344a5f748a9b866f5a445465778673604e3b281502000000001e33485d72879c8c77624f5e6e8086978f7a66535d6c7c877563513e2b1805001f344a5f7482867c71665b4f433628190a0000000000000000050e14181b1b1d2e405162738589766461758a9e8974604b37230e00000000000000000000061524303a40495d72878f7a66687d9399846e5951667a8f85705b47321e0900000000000000152a3f54697d93927d68533f2a1500000000000000000011263b5064798e8f79645e7080877c7061524232210f000000000000000000000000000000000000000000000000010b1114130e0600000000000000000000000c1720272c2c2a23180a0000000000000000000000000000000000000000000000000000000000060d13171a1b1b1b1915100a03000000000000000000000000001d31465a6e82909392919090908f887b6b5a48362411000000000000001d32475c70869a87725e4a36220e00000000000000000000000000000000001f34495d728686889388796a5a49382714020000000000000000000000001e33485d7286878e978674614e3a2611000000000000001f344a5f748b7b6a77878e7d6c5a483624120000000000000000000000001a2e43576a7d8f847469646468707b8a7d6e5d4a37241000000000001e33485e73889b877d85715e73888b756761594f4f60738677634f3b2713001e33485d72889b87705c4748596c7d7d6a5744311e0a000000001a2f44586d8296917c6854506171829396836f5c4e5e6f80806d5a4734210d001c314457656f798584786d6054463728170600000000000000000000000000112233455667788a82705e6f84988f7a65513d291400000000000000000001132433424d5457576c8095806c6b829697826b574c6075898a75614c38240f00000000000004192e43586d82978e78644f3a25110000000000000000000d22364b60758a927d6862778b786d60534536271809000000000000000000000000000000000000000000000004121e262a2822190e0000000000000000000e1d29343b40423f36281806000000000000000000000000000000000000000000000000000005101921272c2f3030302e2a251e160d040000000000000000000000172b3e5163727d86898b898887868489776653402d1a06000000000000192d42566a80948e7965513d291400000000000000000000000000000000001f344a5f748b77758493897867564432200d0000000000000000000000001f344a5f7376717d91917d6954402c17020000000000001f34495d72887c6869798b8a776653412f1c0a00000000000000000000001e33485d71868d7966564f4f545d6b7c8c7a67533f2b1702000000001c31465b70869a8975887966748b88807b756c615456697b806a56422d19001b30455a6f859a89735e493c4e61738774614d38230e00000000152a3e52667a8e9884705c4953647586978c796754516273857764503d29140015283948525c6773808a7d7164554635231100000000000000000000000000041627384a5b6c7d8e7c6a687c9195806c57432f1b0600000000000000000a1d30425160696c6865798f86716e8499947d6954465b6f84907b67523e2915010000000000091e32475c71869b8a74604b36210c000000000000000000081d32475c708697826c5c6e808a7d7063544536271706000000000000000000000000000000000000000000001122303a3f3d362b1e1000000000000000091b2c3b475055575346362310000000000000000000000000000000000000000000000000000a17222c353c4144464646433f39322a20160b000000000000000000000f22344554616a7073747372706f788d83705d4935210d00000000000013273c5065798e95806c58432f1b06000000000000000000000000000000001e33485d728779667485958573614f3d2a170500000000000000000000001c304456636461748998846f5a45301b060000000000001b2f44586c808572616d809283705e4c39261300000000000000000000001f344a5f748b89735e4a3a3a404d61758b836e5a45301b0600000000192e42576c82968d777d836f6f7579828b897d7263545f72836f5a442f1a00182d42576b80958c7762534444576a7d77644f3a240f000000000f23374a5e7185978c796653465768798b9684715f4c566879806c57422c17000a1b2a363f4a55626f7d8b83736452402d190500000000000000000000000000091b2c3d4e5f7082887665768a9b87725e4935210d000000000000000011263a4d60707c83725f74888c7772879c917b66514054697d92826d58442f1b0700000000000d21364b60758a9a86705b47321d0800000000000000000003192d42576c829586715c616f7d8e8272635445352413010000000000000000000000000000000000000000081c2f404d5451493c2e1d0c0000000000001326394a58636a6c64533f2a150100000000000000000000000000000000000000000000000d1b28353f4950565a5b5b5b58534d463d33281c0f02000000000000000005162736434e565c5f5f5f5d5c5d72868d7865503c28140000000000000d22364a5f73889b87725e4935210c0a0703000000000000000000000000001a2f43576a7d8371667789917d6c5a4734210e0000000000000000000000142738464f4f5a6e839888725d48331e0900000000000015293c4f61738380706374878e7b685643301d09000000000000000000001f344a5f748b89735f4a352b394b5f748b88725c47321d0700000000152a3e53687c92917b7588796660666e7986908272605669716454402c180014283d52667b909180716253444e606b65594835210c00000000081b2e4154677a8d96836f5d4b4a5c6d7d908f7b67534a5c6f766754402b1600000c19232d3844515f6d7b8b826f5c4834200b00000000000000000000000000000e1f30415263748683726f83978d7864503c28140000000000000000162b3f54697c8f846e596d83927c748a9f8e78644f3a4e63778c87725e4a35210d000000000011253a4f64798e96826c57422d19040000000000000000000014293d52667b908a756051606f808f8272635242301f0d00000000000000000000000000000000000000000e23384c5e69655a4c3b29160300000000061b2f4356677680836c57422d1803000000000000000000000000000000000000000000000c1c2b3946525c646a6f7070706d68615950453a2d2012040000000000000000091826313b42474a4a4a4847576c8294806b57422d19040000000000071c3044596d83978d78644f3b261f1f1c18110a010000000000000000000014283b4e617385806f6b7d90897664513e2b170400000000000000000000091a28343a4055697d938b75604b36210c0000000000000d2032445564738282756a7d9086725f4c392612060000000000000000001e33485d71868d786552413c4957677a8e87725c47321d07000000001025394e63778c95826c7d84715f525b68778a907d6a56585c5546362411000f24384c61758a9a8882716252434f5652483b2b180500000000001225384a5d6f82928d7a6857464f6072838c7d69543f515f62584938251100000006101a2633414f5d6c7b8c77634d38230e0000000000000000000000000000021324354656677889806e7c9094806b57432f1b0700000000000000172c42576c8397856f5a687c9183778da08b76604c37485d71868d7864503b2713000000000014293e53687c92917c68533e291400000000000000000000000f23384c61758a8f796551516170829182705f4e3c2a17040000000000000000000000000000000000000011263b50667b786a5846321e0a000000000b20354a5e728693846e59442f1a0500000000000000000000000000000000000000000007192a3a4957646f788084878786827c756c62574b3e30221304000000000000000008141e272d32343434333d52667b9086705c47331e09000000000001162a3f53687c91937d695540343434312c261e140a0000000000000000000c1f3144556676878072728594826d5a4733200d00000000000000000000000b1720273b50657a8f8d77634d38230e00000000000003152637475564717d887c73888f7c6855412e23190d01000000000000001a2e4256697b8a826f5f4d4d5a67758596836d59442f1a05000000000b2034495d71869a867172847d6c5d505a6e8398856f5a4547423728190700091e32475b6f849888828270615040403e352b1d0d000000000000081b2d405263748696867564534454667778756b5b49424b4d473a2b1a080000000000091523313f4e5d6d7d78634e38230e00000000000000000000000000000006172839495a6b7b8c7b74889b87725e4a36230f00000000000000172c41576b829688735e62768b897b909d88735e493442566b8093806a56422d190500000002192d42576c82968d77634e3925100000000000000000000000091e32465b6f8394806a5542526374868f7d6b594633200c00000001080c0d0b09070606050505050505051025394e63788875624e392510000000000e23384e63778d9b87705c47311c0700000000000000000000000000000000000000000012253648586775828c948e8683828488898075685c4e40312213020000000000000000020b13191d1f1f1f23384c61768b8b76614c38230e0000000000001025394d62768b99846f5b484a4a4946403a31271c10020000000000000002142638485868768583777b8f8a7663503c281b100500000000000000000000040e23384d62778c907964503b251000000000000000091929384653606b758085809285715d4a40362a1e120500000000000013273a4c5d6c777d7c67525e6b7785948a7966533f2b160100000000061a2e43576b80948c7767788a7b6e64626f849887705b46322e25190a000003182c4054687c918e7984806e5e4d3c2a23180d00000000000000001022344557677788938271615348596a80897965513c373833291c0d00000000000000051321303f4f6070705e4a35210c000000000000000000000000000000000a1b2c3c4d5e6e808a7a80948e7966523e2b180700000000000014293e53677b8f8d79655b70858e7d9399856f5a45303c5065798e86705c48331f0b000000081c31465b70869a88735e4a35200b000000000000000000000003172b4054687c9085705b474556687a8d8976634f3b2713000008141c2122201e1d1b1b1a1a1a1a1a1a1a1a21364b60748b7c68533e2914000000000f253a4f64798f9e89735f4a35200b0000000000000000000000000000000000000000091c2f42546575869398897b726d6c6e737b8587796c5e4f40312010000000000000000000000001070a0a0a1e33475c70868f7a65513c27120000000000000a1f33485d71869a8a75605d5f5f5e5b554d44392d20130400000000000000091a2b3b4a596773808a808693806b5844382d22160a000000000000000000000a20344a5f7389917b67523c271200000000000000000b1a2836424e58636d77828c8d79665d53483c3022150600000000000a1d2f3f4e5a64696b5f63707c8995897b6c5b4937231000000000000014283c5065798d927d696c7d8c807977808e96836d59442f1a1208000000001125394e62758a958276877b6a594836241301000000000000000005172839495a697888908071635853687d947d68533e29231f170c0000000000000000000312213142525d5d51412e1b0700000000000000000000000000000000000e1e2f40506170828a7a8c95826e5a4736241a1206000000001024384c60738695826d5a6a7d93869695826b57422d364a5e72878b77634e3a26110000000c20354a5f748998846f5a45301c070000000000000000000000001125394d6074888b76624e3a4a5d7185927d6a56422d190007172530363735333230302f2f2f2f2f2f2f2f2e33485e7389826b57412c17070000000f24394e63788fa28d77634e39240f00000000000000000000000000000000000000001125384c5f7183949e8c7a6a5e5857595f67717c897c6d5e4f3e2e1d0c000000000000000000000000000004192e42576c82947d6955402b1601000000000005192e42576b80958f7a69717474736f6960564b3e31221304000000000000000d1d2c3b4956626e78828b9588735f554a3f34281b0e010000000000000000071c32475c7087937d68533e29140000000000000002132332404c54595a5a646e839683797065594d403324150600000000001121303d475054596774828e9085786b5d51483b2d1e0e00000000000d21364a5d72869985705f6f808d8e8d92988a7966533f2b160100000000000a1e32465a6e829688747a8977655342301e0c0000000000000000000a1b2c3c4b5a6977858f82756b676f83907b67523d28130b04000000000000000000000003142534414949413323120000000000000000000000000000000000000111223243536372838c879b8a77645341342e241708000000091d304356687a8c8a776564788d9ba2907b66523d292f43586c82927d6955402c180400001025394e63788d94806a55402c1702000000000000000000000000091d3145586c80927d69564241566a809486705b46311c00122535434b4c4b4847464644444444444444444343475c7288846e58432e241a0d00000d22374c61768ba0917b67523d28140000000000000000000000000000000000000000172b4054687b8fa195826e5c4c4342454c545f6b78867c6d5c4c3b2a1907000000000000000000000000000014293e53677c91836d59442f1a0500000000000014283d52667b8f95807886898b89847c73685c4f4031221101000000000000000e1d2b3845515b656f77898f7c72675d5145392c1f100100000000000000011a2f44596e8495806a55402b16010000000000000c1f3141515e686e6f6d65677b8f8c8383776b5e5142332414030000000003121f2b35475868778692897d7877746d64594b3c2b1a0800000000071b2e42566a7d928c7765616f7b858b8b867a6c5b4a37241000000000000003172b3f53667a8e8f7b6e8083715f4d3b2917040000000000000000000e1e2d3c4b596773808a88807c828e8472604c38240f00000000000000000000000000000716242e34342e23150600000000000000000000000000000000000000041425354555647383929e9483705b494941352616040000011427394b5d6d7d8e83726373889d9d8a75614c3824293d5165798e84705b47331f0b000014293e52677c918f7965503c2712000000000000000000000000000215293d5063768a86725e4b3c52677b9189735e49341f001b2f425360625f5e5c5b5b5a5a5a5a5a5a5a5a5858585c7288846e59463f372b1c0b00091e33485d71879b95806b57422d1904000000000000000000000000000000000000001b30455a6e8397a38e7965513f2e2c3038424d5a6776857a6a594836241300000000000000000000000000001025394e63778d87715d48331e090000000000000f23384c61758a9a8670737478808990867a6d5e4f402f1e0d00000000000000000d1a27333e49525b6d829588857a6f63574a3d2e1f0f0000000000000000172c41566b8296836d58432e190400000000000015283b4e5f6f7b838682786c7489927d7a867c6f615142322110000000000004192c40526476879685838c8f8d898277695a49372411000000000013273b4f63768a9482766a5d6871767671685c4e3d2c1a07000000000000000f23374b5e728698847074867c6a584634210f000000000000000000000f1e2d3b4956626d767d8486847d73655543301e1103000000000000000000000000000006121a1f1f1a11050000000000000000000000000000000000000000000717273746556473828a847668575d5d534433210e0000000a1c2e3f4f5f6f7d8b827470879c95826d5a46321e22364b5f72878b76634e3a26120001182d42576b82968a75604b37220d00000000000000000000000000000d2034475a6d808e7a68554450667b918b745f4a341f001f34495e717774737270706f6f6f6f6f6f6f6f6e6e6e6e7288846e615b534939281500051a2e43586c82959a86705c47331e09000000000000000000000000000000000000001f34495e73889d9f8a745f4b3622171c25303c4a5867768776655342301e0b000000000000000000000000000b20354a5f73888b75604b36210d000000000000091e32475c70869a8b76615f646c7683918b7c6d5e4d3c2b190600000000000000000916212c363f52667a8e897a858274685a4c3d2d1d0c0000000000000014293e53687c9286705b46311c080000000000061b2f44586b7d8d968b898a7c6e8397857174828070604f3e2d1b09000000000b1f33485c6f82949489838082848c9588786654412d1905000000000c1f33475b6e829693887b6d5f5d60605d564b3e301f0f0000000000000000081b2f43566a7d918c78697a887563513e2b1906000000000000000000000f1d2b3844505a636a6e706f6a615851473c2f21110100000000000000000000000000000000000000000000000000000000000000000000000000000000000000091928374655636e747066595e707062503d29150000000010213141515f6d798688848e98897764513e2b2a313843576a7c8d7d6a55422e1a00071c31465b708599846f5b46321d08000000000000000000000000000004172a3d506375888573615353687c9288725d48331e001e33485d6f7d88898887868686868686868685848484848389847a756f665744301b000015293e52667a8f9f8b76614d38240f000000000000000000000000000000000000001f344a5f748ba09d88725d48331e0908131e2c3a4959697983715f4d3b281502000000000000000000000000071c31455a6f848e78644f3a251000000000000004192d42576b8095907b66525059657282918c7c6b5a48362311000000000000000000040f1923374b5f73888f7b738086786a5b4b3b29180600000000000010253a4f64788e89745f4a3622150a000000000a1f34495d72889b8977737c897b7c918c776472827d6d5c4a382613000000000e23384d62778b9886766d6a6b707a899684705c48331f0a0000000004182b3f5266798d917d8b7d6e5e4f4b4942392e20120200000000000000000013273a4e61758895826e7083806e5b4936231000000000000000000000000d1a27333d474f55616c7273726d64594d3f2f1f0d00000000000000040c1112110e08000000000000000000000000000000000000000000000000000000000000172b3e51616a625f5c5458697b806c58432d180000000003132332414f5c68737c8388857a6b5a4835363e454c51525e6e7c85715d48331e000c21354a5f7489937d6a55402c18030000000000000000000000000000000e213346586a7a8c807065636f8394826d5944301b00192d4051606b73797d8283858687888888898988888887878a85848382735e48331e00000f23374b6074889c907b67523e2915010000000000000000000000000000000000001f344a5f748a9f9f89735e49341f0b00010e1c2b3b4b5c6d807c6a5745321f0b00000000000000000000000001182c41566b80927c68533e29140000000000000014283d52667b9095806b564247546272849589776553402d1a0600000000000000000000081c3044596d8296826d6d7a89796958473523100000000000000c21364a5f74898e7965513e31271a0a0000000a1f344a5f748b9b866f5f6a7888788b937d6a6373857a6755422f1b0800000011263b50657990907b685955565c6b7d928b77624d38230e00000000000f23374a5d718598867a8b7c6d5c4c3a2e261c1002000000000000000000000b1e3245596c80938a7765778b7865523f2c190600000000000000000000000915212a384c5f708087898882776b5d4d3c2b190600000000000c1720262727231c130a000000000000000000000000000000000000000000000000000000001c31455a6e8073675c55657587846e58432e190000000000051423313e4a5660686f7270685c4d3f434a525960656767626a716d5b47321d0010253a4e63788d8d78634f3b2612000000000000000000000000000000000416283a4c5d6d7c8a827978808e877664513e2a1600112233424e585f65686b6d6f70707272727373727272727083806e6c6b675845301c0000081c3145596d829696826d58442f1b070000000000000000000000000000000000001e33485d72879ca18c77624e3925110000000d1d2d3e4f61738775614e3925100000000000000000000000000013283d52677b91806b56412c17020000000000000f24384d62768b9a86705c473745556677899583705d4936220e000000000000000000000a1c2f4053677c9188735e6a7988766452402d1a070000000000081c31455a6e8395826e5c4c443828160400000a1f344a5f748a9c87715c5a697985869985705c677985725f4b37230f00000011263b506579908c76614c40414e63788d8f79644f3a250f0000000000071b2e4155687c8f8f7b7c8b7a6958473523110000000000000000000000000216293c5063768994826d6d82826f5c4935220e0000000000000000000000000313283d52667b8f8274747d897a6b5a4836230f000000000d1c29343b3c3c372f271d120600000000000000000000000000000000000000000000000000001d32475c718785796f67738492806a56412d180000000000000513212d39434d545a5c5b5f605754575e656d747a7c7b766c5f5a4f3e2b1800152a3e53687c9286715d4935200c00000000000000000000000000000000000b1d2e3f4f5e6c7782888b88827668594735220f00051524313b444b505356585a5b5c5c5c5c5e5e5c5c5c5c66787d685756544a3a2815000001162a3e52667a8f9c88725e4a36210d0000000000000000000000000000000000001a2f44586d8295a5917c6854412e1b0a0000000f21324457697c7865503b2610000000000000000000000000000f24394e63778d846f5a45301b060000000000000a1f33485d72879b8a75624f3c37485a6c80938d7965513e2915010000000000000000001126394c5e6b778c8e78645b6b7c826f5c4936230f000000000001172b3f53677a8e8b796a605646331f0b0000081d32475c71879b8a75604c5c6c7d82978b76625c6e827a66523e29140000000e23384d62778c8c77624d3e3d4d63778d9079644f3a250f0000000000001226394c5f72869885728088766452402e1b080000000000000000000000000d203346596d80938a7764778a7864513e2a170300000000000000000000000013293e53687d8f7964616e7d897765523f2b16020000091b2b3a474f52514b43392f23170a000000000000000000000000000000000000000000000000001a2e43576a7c8d8c837a83928875624f3b271300000000000000030f1b2630394045485d70736b6a6c727982898f908c897d6e5d4a35210f001a2f43586d828f7d6a56422e1a06000000000000000000000000000000000000102131404e5a656d7374736e65594a3b2a1805000006131f2830363b3e41434446474747474848474747495b6b746450403f382c1c0b0000051223374b6073889c8d7864503b2713100f0c080100000000000000000000000000152a3e5266798da09884705d4b3927170900000315273a4d5f6c665a4936220d000000000000000000000000000b20354a5e738888725d48331e09000000000000051a2f44586d8397927d6c5947363d5063778b95826d58442f1b06000000000000000000152b4054697b7487937d6a555e70837966523e29140000000000001024384b5e708290887b74634e39240f0000031a2e43586d82968f7a66524e5f708294917c675364777a68543f2a140000000b1f34485c7083917c6a5b535258697c918e78634e39240f000000000000091d304356697c908f7b7385826f5d4a38251200000000000000000000000004172a3d5063768994826e6d82826d5a46321f0b00000000000000000000000012273b5065798d7d6958617388826e5a45301b06000012253849586367655f564c4135281a0c00000000000000000000000000000000000000000000000014283b4d5e6e7c89938f928b7a69584633200c00000000000000000009141d252b32475b6e80828082878d9089827b76747776614c37220d001f34495d72878070604e3b271300000000000000000000000000000000000000031322303d4852595e5f5e5a52483b2c1d0c00000000020c151c2226292c2e2f303232323233333232323d4d5a5f5747352a251b0e00000414232f3744586c829593806a56412d262624211c150c0000000000000000000000000f23374a5d708395a08d7a6856453527190e07010a1d30414f5754493c2c1a0600000000000000000000000000071c31455a6f848b76604c37220d00000000000000162a3f54697d939c897665534334485c70869b87725d49341f0a000000000000000000152b4054697c808397846f5a5365777d6b56402b16000000000000081b2e4152627283948273624e39240f000000152a3e53677b9095826d59455364778c96826d585b6a695c4c39251100000005192d405366788988796e68676b76869988745f4b36210c0000000000000014273a4d607286988673798c7a6754412e1a060000000000000000000000000e213446596c80928b7866788a75624e3a26120000000000000000000000000d22364a5d70838775675e6e8488725c47321d070000172c415567767c7a72695e5246382a1b0c00000000000000000000000000000000000000000000000b1e3040505e6b768088877a6c5c4c3a28160300000000000000000000010911182c3f5061707c868b89847c756d67615f63645846331e0a001f34495d70736d615243311e0b000000000000000000000000000000000000000004121f2b363e45484a49453e352a1d0e0000000000000001080d111417181a1b1c1d1d1d1e1e1d1d1f2f3d474a44392a1811080000000e2132414b4e5165798d9a85705c483c3b3b393631281e110200000000000000000000071b2e41536677899a988674635344372b221b160e1323323d4240372b1e0e000000000000000000000000000000182c41566b808f79644f3a25100000000000000011263b5065798f9984837161514243586d83988c76604c37210c0000000000000000001126394c5f72867d9389745f4b5a6a6b604f3c28130000000000000014293e53677b8f8c77645545331f0b0000000f24384c6075899c8874604d495d72889b87725d4c56554c3e2e1c0a00000000112437495a6a79868b827c7c80889491806c5945311c08000000000000000a1d304356697b8e907d6f8285705d4a36220e00000000000000000000000004172a3d4f62758896837070857d6955412d19040000000000000000000000071b2e4153657585857973798985705c47321c070000182e43586d7c858d867b70635648392a19080000000000000000000000000000000000000000000001122232404d59636d7372695c4e3e2e1d0b00000000000000000000000000000f213242515f6a7174736f686159534d4a4f50483a291703001a2e41515d5f5a504334251302000000000000000000000000000000000000000000010e19232a30333434302b23180c00000000000000000000000000000000000000000000000001111f2b323431281b0c0000000000162a3e505e63605e72869a8b7662525250504e4b453b2f20100000000000000000000000112436485a6b7b8c9a9282716255483e35302a21141420292c2b241a0e0000000000000000000000000000000014283d52677c917c68533d2814000000000000000d22374c61768b9c8882806f605146576c83988d77624c37220d0000000000000000000a1d3043566a7d83908e79644f4d57574e4232200c00000000000000172c41576b829688725d4837271603000000091d3145596d8295907c695544596e83978b76614c41413a2e20100000000000071a2b3c4c5b68747d8387888798928473614f3d29160100000000000000011426394c5e7184968876788c7965513d2914000000000000000000000000000d203345586a7c8f8e7c6a7c85705c48331f0a000000000000000000000000112436475766748087898a85786855412d19040000152a3e5160687079828c827466574837251300000000000000000000000000000000000000000000000414222f3c4750595e5d574c3e30201000000000000000000000000000000004152433414d565d5f5f5b544d453e38343a3b352a1c0c000011233341494a463e33251607000000000000000000000000000000000000000000000000060f161b1e1f1f1b160f060000000000000000000000000000000000000000000000000000010e181e1f1c150a0000000000001a2f44596d7875726f7d92917c6867676665635f584d3e2e1d0b0000000000000000000007192b3c4d5d6d7c8a97908272665a514a443e3223120d141716110800000000000000000000000000000000000f24394e63788d806b56412c1702000000000000091e33485d72889c8c76877d7063595d71869a8b76604c37210c0000000000000000000014273b4e62758a9a937d69543f42423b3123140200000000000000172c42576c839886705b46301b0a0000000002162a3e5165788c9885725f4d5367798b8f79644f3a2c261d10020000000000000e1e2e3d4b5761696e76828d8e827465554432200d0000000000000000000a1c2f415466798b93827085806c57432e19050000000000000000000000000316283b4d607285968876778b76624d38240f00000000000000000000000007192a394856626c72747470675a4a3826120000000e2133424d555d666f79858575655543301c08000000000000000000000000000000000000000000000004111e2a343d454949433a2e20120200000000000000000000000000000000061523303a43484a4a464039312a2420252521180c0000000515232e3434312a211507000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001a2f44596d838b8886838e97837d7c7c7b7978746a5c4c3a271300000000000000000000000d1e2f3f4f5e6c7985909184776d655e5950412f1c08000000000000000000000000000000000000000000000c20354a5f7489846e59442f1a05000000000000051b30455a6f84998f79798a82756e6e7b8d9986715d48331f0a000000000000000000000b1f32465a6e829697836d58442f2d281e13050000000000000000172c41566b829686705b46311c0600000000000e2236495c6f82938f7c69544a5c6c797c7865503b26120a000000000000000000101f2d394b5d6c7a8893887c706356504333210e00000000000000000000122437495c6d80928d7c8086715c47321d08000000000000000000000000000b1e30425567798b948272887b66513c2712000000000000000000000000000c1b2a38454f585d5f5f5c544a3c2c1b0900000004152431394149525c67738084725f4b37220d000000000000000000000000000000000000000000000000000c17212a3034342f271d100200000000000000000000000000000000000005121e272e333434312c251e16100c10100d05000000000005111a1f1f1c160e0400000000000000000000000000000000000000000000060e14191c1d1d1c19150f0801000000000000000000000000000000000000030c141a1c1d1d1c1a1817161616181a1812090000000000162b3f536677868f95989b9f9494939391908e887a6a56412c17020000000000000000000001112131404e5b67737d878e8a8278726d5e4b37220d03000000000000000000000000000000000000000000081c31465b708687725d48331e0900000000000000172c41566b8095937d6b7b8a8984848c9a8d7c6956422e1a050000000000000000000003172b3e5266798d9b87715c47321d140c0200000000000000000014293e53687c9288735e4934200b000000000006192c3f52647585827767533e4e5c6567645a4936220d0000000000000000000001182c4054687a8b8f82766a5e656b61503e2b1805000000000000000000071a2c3e50627486988a8089745f4a341f0a00000000000000000000000000011325374a5b6d80919082897d68533e291300000000000000000000000000000c1b27333c43494a4a4741382c1e0e000000000007162533404d59646f7a858478634e38230e0000000000000000000000000000000000000000000000000000040e161c1f1f1b140a000000000000000000000000000000000000000000010b131a1e1f1f1c18110a0200000000000000000000000000000000000000000000000000000000000000000000000000000000030f1922292e313232312e2a241c140a00000000000000000000000000000000091520282e323232312f2e2c2b2b2c2d2f2d261a0c00000000102336485967737a80848691928483807d7b7877766a56412c17020000000000000000000000031322303d4a56606a727980838d8677634d38231c1710050000000000000000000000000000000000000002192d42576c828b75604b36210c0000000000000014293e53687c9296826c6b78848c9090897d6f5e4c3a27130000000000000000000000000f23374a5e7185988a745f4b35200b00000000000000000000001025394e62778b8c77634e3a2612000000000000102235475766706d6559494b4d49505250493c2c1a0600000000000000000000001c31465b708490807064586476806d5a4734210e000000000000000000000f2133455668798b9a948b745f4a341f0a0000000000000000000000000000081a2c3e506173849595937d68533e29130000000000000000000000000000000a1620292f343434322d251b0e00000000000214253443515e6a7682877b70675b4935200c00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000614212c353d4246474746433e3830271d1206000000000000000000000000000b1a27323b4347474746444341404040424441382a1a0800000007192b3b49565f666b6e758a95826c6b68666462605b4c3a27130000000000000000000000000004121f2c38444d575f6777888a786759473432312b22170900000000000000000000000000020506020000152a3e53687c8e78634e3925100000000000000010253b5064798f99846f5b6770777b79756c6051402f1d0a000000000000000000000000071b2e4255687b8e8c76604b36210b00000000000000000000000b1f33485c7085927d6955412d190500000000000517293948545b595248515f6258483c3b352b1e0e0000000000000000000000001e33485e73898873615353687d8a7764513d2a1602000000000000000000041627394b5c6d7d8e9c88725d48331e090000000000000000000000000000000f21324455667788978e7965503b261100000000000000000000000000000000030d141b1f1f1f1d1912080000000000000d1f314252616f7c888375695e544b3d2c19060000000000000000000000060b0f0f0f0f0c08020000000000000000000000000000000000000000000009131a1f1f1e191107000000000000000000000000000000000000000000000000000000000000000000000004090b0b0a060000000000000000000000000000071624323e4951575b5c5c5b58534c433a2f231709000000000000000000000009192938444f575c5c5c5b5a5856565656575a554837241100000001132332404a5357565a6e829687725e53504f4c4b483d2e1d0b0000000000000000000000000000010e1b26313b4e61738594806d5a493b4347463f3527180900000000000000000000020e161b1b17120e11253a4f64798e7c67523d2813000000000000000d23384c61768c9d88725d545d63666561594f4232231200000000000000000000000000001226394c5e708080705d48341f0a000000000000000000000004192d4155697d9185705c4835210d0000000000000b1b2a374146443e4b5f70766655453526190e000000000000000000000000001e33485d7288866f5a4551667b90826d5945311d09000000000000000000000a1b2d3e4f5f6f7d89806c58442f1b0600000000000000000000000000000003152637485969788685725e4b36220d00000000000000000000000000000000000000000000000000000000000000000015293c4f6070808d807164584c41382d1f0e000000000000000000020b141b2024252524211c171008000000000000000000000000000000000000000e1b262e3434332d24190c00000000000000000000000000000000000000000000000000000000000000000711191e20211f1b140c02000000000000000000000415253442505b646c707272706d675f564c413427190b000000000000000000001426374756616b717272706f6d6b6b6b6b6c6f6654402b160100000b1e3041505d666c6756667a8f8e7965503c3a3836332b1f100000000000000000000000000000000000091b2f43576a7d918d7864503d4c575c5b52453627160500000000000000000313202a30302c27232121364b60758a806a55402b16010000000000000a1f344a5f73899e8b76604c484e50504c463d312314050000000000000000000000000000091c2f4152616b6c6253412d1d0f00000000000000000000000012263a4e62758a8c7764503d2916020000000000000c1a252d302f3c51667a84736353443526180a0000000000000000000000001b30455a6e8388735f4c4c6075898974604c38230e00000000000000000000000f20314151606c746f614f3c29150100000000000000000000000000000000091a2b3b4b5a6872736655422f1b0700000000000000000000060d13171b1c1d1c1915100902000000000000000000001b3044586c7d8e7d706154473a2f241b0f01000000000000000008141e282f35393a3a3936312b241b1107000000000000000000000000000000000d1d2c3942494a4740362a1c0d0000000000000000000000000000000000000000000000000000000000000c19242d333536342f281f14080000000000000000000f21324252616d788086888886827b73695e524537291a0b0000000000000000001b3043556573808788888785838282808283826c57422c1702000014283b4e5f6e7a82705b5f738794806b57432f23211f180e0100000000000000000000000000000000000b2035495e72869a88735e4a4b5b6a726f63544534221000000000000000000f21313d4545403c38363534475c7086836e58442f1a05000000000000071c31475c70869b8e78644f3a393b3b38322a20130500000000000000000000000000000000122334434f56575550473b2d1d0d00000000000000000000000b1e32465a6e8294806c5945311d0a000000000000000812181b263b5065798d8271615344362819080000000000000000000000172b3f53677a8e7b6856465a6e828f7a66513c2712000000000000000000000003132332424f595f5c524332200d0000000000000000000000000000000000000d1d2d3c4a565e5e564837251300000000000000000007111921272c303232312e2a241d150c0200000000000000001f34495e7388806f60514336291d12080000000000000000000b1926313b434a4e4f4f4e4b463f372e241a0e0200000000000000000000000000071a2b3b4a565d5f5c53483a2b1b0a000000000000000000000000000000000000000000000000000000000b1b2a3741474b4b49433b3126190a00000000000000081a2d3e506170808b958b838082888f867c706355473829190900000000000000001f34495e73848686888a8d949897979592897966533e2a150000001a2f43576a7d8d806a55576b809387725d4935210d0a04000000000000000000000000000000000000000f24394e63778d9b86705b4656687987827263513f2d1a0600000000000004192c3e4f595a55514e4b4a4a48586c8287715c47321d08000000000000011a2f44596e8498917b67523c272626231e170d02000000000000000000000000000000000016293c4e5d676b6a63594b3b2a1805000000000000000000000d1f303f52667a8f8874604d392511000000000000000000000e22364a5d708390807162544637261300000000000000000000001024384b5e70838674635552667a8f806a543f2a15000000000000000000000000051423313d464a484034251403000000000000000000000000000000000000000f1e2c3943494943382a1a0800000000000000020e19242d353c4145474746433f3931281f1408000000000000001f344a5f7482706151423326180b000000000000000000000b1a2937434e575e636464635f5a534a41372c2013060000000000000000000000001024374959687274706658493928170500000000000000000000000000000000000000000000000000000417293948545c5f605d574e43362819090000000000001124374a5c6e808f9787786e6b6d747d8b8e827365564737271706000000000000001e33485c6d706f7072747789898283827d776b5b4a37230f0000001e33485d7287917b66515063778b8d7864503c28140b0d0d0b080200000000000000000000000000000011263b50667b909b866f5a465b70839291826f5c4936220f000000000000091e33485c6d6f696663605f5f5e5e687c8a745f4b36210c00000000000000172c41566b8296947d69543f2a15110e0903000000000000000000000000000000000000001c3145596b7a82807669594734210d0000000000000000000014293c4e5d617388907c6854402c1700000000000000000000071b2e41546677899082726455432f1b0600000000000000000000081b2e41536575868272665c5f7489806a543f2a15000000000000000000000000000513202a3134332d2316070000000000000000000000000000000000000000000e1b262f343430271b0c0000000000000004121f2b36404950565a5c5c5b58534d453b31261a0c0000000000001c31465a6d736353423324150800000000000000000000081929384755606a7277797978746e675d54493d312417080000000000000000000000172b40536677868b837667574634221000000000000000000000000000000000000000000000000000020c2034475766707476726b615446372615030000000006192d405467798c9d8a78685b5658616d7a8a92847465554534231201000000000000192c3e4f595b5a5b5c5f6d82907c6c6b69635a4d3d2c1a070000001f344a5f748a9079644f485c6f8394806b57432f1d202222201c160d030000000000000000000000000011263b50667b919b86705b4655657383928c7965523e29150100000000000a1f344a5f74847d7a77767474737373788d78634e39240f0000000000000014293e53687d9394806a543f2a1500000000000000000000000000000000000000000000001e33485e73899793887764503c271300000000000000000000182d42576c766e8498846f5a45311c0000000000000000000000112437485a6b7b8c9183725d48331e09000000000000000000000012243647576775838478706c72887c68533e29140000000000000000000000000000020d161d1f1e191105000000000000000000000000000000000000000000000009131b1f1f1b140900000000000000041423303d49535c646a6f7172706d6860584e43372a1c0d0000000000162a3d4f5c5e5546352515060000000000000000000002142637475665727d878d908f8d89837a70665b4f4235261809000000000000000000001c31455a6f8396928b867563513f2d1a07000000000000000000000000000000000000000000040c12171a263b4f6375848b89877d7264554432200d000000000c2135495c70849694806d5b4a40444f5d6b7b8c938373635241301e0d0000000000000f21313d454644464752667a8f85715d544f473c2f1f0f000000001f34495e7388907b66504054677b8f87725e4a363235373735312a20150900000000000000000000000010253b5064798f9c88725d48475564748595826d5844301b060000000000091e33485d708493908d8c8b8989898989907b66513c27120000000000000011273c51667b8b867664503c271200000000000000000000000000000000000000000000001e33485d7185949d94806a543f2a1500000000000000000000182d42566a7d80859988725c47321d000000000000000000000007192b3c4d5d6d7b8885705c47321d08000000000000000000000006182939495865717c848683858272604d39251000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000002122332414e5a6670788084878886827c746b6155483a2b1b0b000000000e20313e4849433728170700000000000000000000000c1f3143556574849095887d797879808784786d605244362717080000000000000000001e33485e73889b877585826f5c4936231000000000000000000000000000000000000000010d171f262c2f303c52677c8b7a747c898372614f3d29160100000012273b5064788ca08d7864513e2c323f4d5d6e80919182705f4e3c2a180500000000000313202a30302f30374b6074898d7864503c342b1f1101000000001c31455a6e83937d6955444c5f73878d79655144474a4c4c4b453d33271a0b00000000000000000000000e23384c61768b9f8b76614d39465667798c88735e49341f0a000000000004192d415466758086888a8b89888683807b7665513c2712000000000000000f24384c6070747268594734210d0000000000000000000000000000000000000000000000192e415466758289897c68533f29140000000000000000000013273b4e61707d8889806d5a45311c0000000000000000000000000d1f2f3f4f5d6a73736654412d19040000000000000000000000000b1b2b3a47545f686f7374736d635443311e0a0000000000000000000000040e161b1f1f1f1c181109000000000000000000000000050a0d0d0c0803000000000000000000000000000000000000000e203041505f6c78838a847d7c7b7c8287887d72665849392918070000000213212c33343026190a00000000000000000000000215283b4e607284939686766b6463656a737d8a7d706254453526150500000000000000001f344a5f748b98836d788c7966533f2c1804000000000000000000000000000000000005131f2a333b404446464f6375836e5f6a798a806c5945301c07000000172c40556a7d939c88725e493521212f3f50617386988e7c6b5947352210000000000000020e161b1b1a1c3145596e8394806b57432f1b0d010000000000172b3f5366798c8571615752576a7d92806c58595c5f61625f59504437291a0b00000000000000000000091e33475b708497907c685441384a5c6e838c76614c37220c0000000000001225374857636b707374747372706d6a6662594936220e00000000000000091d3042515d5f5d564a3b2a180500000000000000000000000000000000000000000000001225374857646e73746d5e4c392510000000000000000000000c1f324352606b73746e61513e2b16000000000000000000000000011121313f4d575f5f564837251200000000000000000000000000000d1c2a36424c555b5e5f5e5a514536251401000000000000000000000916212a30343434312c251c110600000000000000000711191f2222211d170f0500000000000000000000000000000000081a2c3d4e5f6e7c8a82776f696766686c727b86847667574736241300000000030f191e1f1b1409000000000000000000000000091d3144586b7d909e8b7867594f4e5057606d7a89827263534433231200000000000000001f344a5f738998836c6f82836f5b47331f0b00000000000000000000000000000000061523303c464f55595b5b5b586672766e636d8088735f4a35200b0000001b30455a6f849999846e59442f1b1122334456687a8d9b897664523f2c19060000000000000000000001162b3f54687d9287725d4935210c0000000000001024374a5c6e7d8e80736c676463758988736b6e71747677746c62554738291a0900000000000000000004182c4054677a8d9784705e4c3c3f53677c8d77624c37220d000000000000081a2a394650575b5e5f5f5f5d5b5855514d473b2b1907000000000000000113243341494a4943392c1d0c000000000000000000000000000000000000000000000000081a2a3947515a5e5f5a4f402f1d090000000000000000000002142534434e585e5f5b514333210e000000000000000000000000000313212f3b444a4a44392a1a080000000000000000000000000000000c192530394046494a49453e3427180800000000000000000000091827333d45494a494640382f2317080000000000000c19242d34373736322b22180c000000000000000000000000000000122537495b6c7c8b7c6f635b5f6466635d5f6974828675655342301d0a00000000000000000000000000000000000000000000001024384c6074889b96826e5b493b383c444f5c6a798a82716151402f1e0c000000000000001e33485d728899846f66798b76634e3b261200000000000000000000000000000004142433414e59636a6e7070706d68768a82756b798c77624c37220d0000001e33485d72889c97826b57412c17041527394b5d70839694826f5c4936230f000000000000000000000011253a4f63788d8d7864503b2712000000000000071a2d3f50606f7d8987807c797878808f7d828387898c8d898073655647372714010000000000000000001124374a5d6f82918d7b6a5a4e4a5065798b76604b36210c000000000000000c1b29343c4246484a4a4a484644403d38332a1d0d0000000000000000000615232e3434342f261b0e00000000000000000000000000000000000000000000000000000c1b29353e45494a463d312212000000000000000000000000071625313b44494a463e33251504000000000000000000000000000003111e2830343430271b0c000000000000000000000000000000000007131d252c31343434312b21160900000000000000000000041627364550595e5f5e5b544c4134261708000000000b1b2a3741484c4c4b463e35291d1002000000000000000000000000071b2e415467788a7c6c5e596773797a7870655764728383715f4d3a2713000000000002080b0a0502080b0a050000000000000000152a3e53677b90a38f7a66523e2c2328313e4c5b6b7c8d806f5e4d3c2a18060000000000001b30455a6f869a87725e72877d6955412d1804000000000000000000000000000010223242515f6b767d84878786827c758280887d808874604b36200b0000001f344a5f74899f95806a54402b1500091b2e405366798d9f8c7865523f2b1804000000000000000000000c20354a5e7388937d6a55412d180400000000000010213242515f6b77828a91908f8f90999496989a98969493918474655544301c08000000000000000000081b2e40526373839188786b625f606c8085715d48331e0900000000000000000b1721282d313334343433312f2b28241f170c000000000000000000000005111a1f1f1f1b1309000000000000000000000000000000000000000000000000000000000b17222b313434312a2013040000000000000000000000000007141f28303434322b22160700000000000000000000000000000000000b151c1f1f1c140a00000000000000000000000000000000000000000a11181c1f1f1f1c160e0500000000000000000000000e21334454626d7374736f685e52443526150400000517283948545d6262605a51473b2e20120e0b070100000000000000000e22364a5d7184826f5e5366778689878a837463556576897c6956422f1b070000000b151d201f19151d201f191003000000000000192e43586c82969f8a75604b37230f14202e3d4e5e6f828d7c6a5947352310000000000000182d42576c82968b76616b8085705b47321d0900000000000000000000000000091c2e3f50606f7d89928e8783828488898085787c7c776a5845311d080000001f344a5f748ba095806a543f2a1500001124374a5d70859895826e5b4734200c00000000000000000000071b30455a6e849885705b47321d0900000000000003142332414e5a646d757c8286898b8b8b89888683827d7d7d8084735f4b35200b0000000000000000000011223445556472808b897d7774757c8b7a6855422e1905000000000000000000040d14191c1e1f1f1f1e1c1916130f0a040000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000050f161c1f1f1c160e02000000000000000000000000000000020c151b1f1f1d170f040000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000162a3d50627280888889847b7062534433210f00000e2134465766707777756e64594c3e302323201b150d0300000000000014293d5165798b7764525b6f838575707788806c58596c8086725e4a36210d00000d1c283136342d283136342d21130200000000001c31475c70869b9c87715c47321d0802101f30405263758889766452402d1a070000000000152a3e53687c928f796565798a75604c372315100900000000000000000000001326394b5d6e7d8e97887b726d6c6e737b8586857268645a4c3b2815020000001f344a5f748ba096826b56402b160100071a2e4155687c909e8a77634f3b27130000000000000000000000172c40556a80948a75604c38230e00000000000000051423303c47515a61686d707374747473726f6d6b6968686a6e6e5d4934200a00000000000000000000051627374655626e7882878a898983796c5c4b392612000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000003080b0b08020000000000040707050000000000040a0e0f0f0c070000000000000000000000000002080b0a05000000000000001c3045596d80907d7275828e827161503e2b180500162a3e516475848c8d8a82766a5c4e3f38383530282015090000000000192e42576c82846f5b4a5f74897c685b6b8086705b4f63778b7864503b261100091b2b3a454b483f39454b483f31200e00000000001e33485e73899e9a866f5a442f1a05000112233446586a7c8f826f5c4a372411000000000011253a4f64788e937d6a5f74897965503b2c2a241c12070000000000000000071b2f4255687a8c9c8a796a5e5857595f67727d897d6e5e4f3f2e1e0d000000001f344a5f748b9f97836c57422d180300001225394d6075899d937d6a56422e1a060000000000000000000012273c51657a8f8f7a66513c2813000000000000000005121f2b343e464d53585b5e5f5f5f5e5c5a5856545353555b5b50402e1a0600000000000000000000000919283744515c656c717474736f675c4e3e2e1c0900000000000000000000000000000000000000030c13181917110a0000000000000000000000000000000000000000010b12171917130c020000000000000000000000000000000000070d1011100c0600000000000000000000000000000000000000000000020c141a1e1f1f1d19130c03000000000000000000000000060f171d20201d150a00020c13191c1c1a120800030e181f232524211c140b000000000000000000000b151d201f19100300000000001f34495e738888736062728490806d5b4834200c001b3044596d829392858288887a6c5d4e4e4d4a443c32271a0b000000001c31465b70867d69544a5f748b79645266787b6d59485c71867d69543f2a15001326384958605c4e4857605c4f3d2a1704000000001f344a5f748ba099846e58432e190400000516283a4d5f72868c796653402d1a06000000000c21364a5f738899846f5b6f857d695442423f382f24190b000000000000000e22364a5e72859892806d5b4c4342454c545f6b78867c6d5d4c3b2a19070000001e33485e73889d99846f5a442f1a0500000a1d3145596d82969a86715d4935200c000000000000000000000e23384c61768b94806b56412d18030000000000000000010d18212b32393e4346494a4a4a49474543413f3e3e4046463f322311000000000000000000000000000a1926333e4951585c5f5f5e5a534a3e30201000000000000000000000000000000000000000071420282d2e2b261d1205000000000000000000000000000000000004121e262c2e2c271f1408000000000000000000000000000005111b21252625211a11060000000000000000000000000000000000000007141f282f333434322d2720160c010000000000000000000b18232b31353631281b0b141f272d31322e25190a13202b33383a393630271d1205000000000000000d1c283136342d211202000000001f34495e738987705b54677a8f8b77634f3a2511001e33485d72889c89756c75828b7b6c6063625e584f4438291a0a0000001e33485e73897a65504a5f748b79644f5a65675e4f43586d83826c57422c17001a2e425667756c595466756d5a4733200d000000001f344a5f748ba09a856f5a442f1a050000000b1d304356697c9083705d4936220e00000000071c30455a6e839789745f6b82826c575757534c4236291b0c00000000000014283d5165798e9f8a76634f3d2f2c3038424e5a6876867a6a59483625130100001c31465b70869b9c87715c47321d08000002162a3e53677b90a18d77634f3b261100000000000000000000091e33485d72879985705b46311d0800000000000000000000050e171e242a2e31343434343432302e2c2a29292c31312c22140500000000000000000000000000000915212c353d43474a4a494640372c201202000000000000000000000000000000000000051625323c4143403a2f231405000000000000000000000000000000021323303a4143413b322517080000000000000000000000000716232e363b3b3a352d24180b0000000000000000000000000000000000061625313b43484a4a47423b33291e120500000000000000091a29353f464b4b4539291824313b4246474237281723313e474d4f4e4a433a2f2315060000000000091b2b3a454b483f30200d000000001c31465a6e828a75645160758b927d68533e2914001f344a5f748b9b86705b6370808a7a757877736b6156473828170500001f344a5f748b78634e4a5f748b79644f4951524c4040566b80836e58432e19001e33485d728575625c718576634f3c2917050000001f34495e73899f9b86705b46311c07000000001326394d6073888c7965513e2a160100000001172b4054697d928f7965687d846e686c6c675f5347392a1b0a0000000000182d42576b809599846f5b473320171c25303c4a5867768777665442301e0b0000192e43586d83979f8a74604b36210c0000001024384d61758a9f927d6954402b1702000000000000000000051a2f44596d83978974604b36210d000000000000000000000000030a1015191c1f1f1f1f1f1d1b1917141313171c1c18100400000000000000000000000000000000040f1922292e32343434312b241a0f0200000000000000000000000000000000000000112334434f5658554d413223120000000000000000000000000000000d2031414d5558564e43352615030000000000000000000004162534404a50504f494036291c0d00000000000000000000000000000001132434434e585d5f5f5c564f463b2f23150700000000000014263847525a5f605747342133424e565b5c5546342130414f5a6264635f574d4033241405000000001326384958605c4e3d2a1603000000172b3e5163727c7b69545f738994806a543f2a15001f34495e73899b86705b52617082888a888888807365564634220f00001f344a5f748b78634e4a5f748b79644f3f4546423840556a80846e58432e19001f344a5f748b7d6a5e7389806c59463423130200001d32475c72889c9d88735e49341f0a000000000a1d3044586b8094826d5945311c080000000011263a4e63778c94806b667b86737c83827b7165574838281605000000001c31465b70869a95806b56412c180408131f2c3a4959697a83715f4d3b28150200162b4054697d93a38e78644f3a2511000000091e32475c70869a98836e5945301b0600000000000000000000162b4054697d938e79644f3b2611000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000060e151a1d1f1f1f1c171008000000000000000000000000000000000000000000192d4052616b6e695e51412f1d0a0000000000000000000000000000162a3d4f5f6a6e6a61534432200d000000000000000000000f223343525d6466645d5347392b1b0b00000000000000000000000000000b1e314252606b727473706a62594d413325160700000000001b304356656e747564503d2a3e51606a707164513e2a3c4e5f6d767978736a5e5142322212010000001a2e425667756c5946321f0c0000000f223445546067665e4e62768c907b67523d2813001d32475c70869a897460526475858c8273727780847463513f2c1804001e33485e73897a66504a5f748b79644f515a5b554842576c82836c57422c17001f34495e738888756372878976635241311f0d00001b30455a6f8599a08c76614d38230e000000000115283c5064788d88745f4b37220e000000000b2034495d71869a8671667b878587807d84837566564534220f000000001e33485e73889d937c68533e28140000010e1c2b3b4b5c6d807c6a5745321e0a0012273b5065798fa3927c68533f2a1501000004192d42566b80959c88725d49341f0a0000000000000000000012273b5065798f937d68543f2a1501000000000000020b111414120d0604080a0906000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001e33485c6f80837c6f5e4c39251100000000000000000000000000001a2f44596c7c847d71614f3c281400000000000000000000172b3e51616f797b7870655749392918070000000000000000000000000013273b4e60707d878b89867d756b5e514334251505000000001f34495e738289806c58453144596d7d86826d5a473445596b7d8a908e877c6f615140301e0d0000001e33485d728575624e3b281605000005172736444d5251545d6b7d918774614d38240f00192e42576c80958f7a665c6f828c798c7a68636e7c826e5b48331f0a001c31465b70867d69554a5f748b79644f606f706654465b6f85806a55402b16001b3045596d8292806f6d829382705f4f3c28140000182d42576b8296a5907a66513d281400000000000d2135495d71868f7965513c281300000000061a2e43576b80948c77687c9388766a69707d857463513e2c19060000001f344a5f748ba0937c67523c2712000000000d1d2d3e5061748774614d39240f000d22374b6074899e97826d58442f1b0600000013283d52677b91a08c76614c37220d000000000000000000000e23374c61768b97836d58432e1a05000000000009151f25292a272119191d1f1e1a140c020000000000000000000000030f171c1d1a130a0000000000000000000a12191c1d1a140a000000000000000000000000020e161b1b18130b02000000000000001f344a5f748b988e7c68543f2a1400000000000000000000000000001b30465b70879990806b57422d18030000000000000000001d32465b6e808d8b8d837567574736241301000000000000000000000000192e42566a7d8f9688828286887c6f615243332312010000001e33485c71869a8874614e3b44596e83978a7663503e4b5f74889a877a7c86806f5e4d3c2a180600001f344a5f748b7d6a584533231201000009182631393c5064717a89887a695744311e090014293d5165798d95826d63778c826f8285725f5e6f8276604b36210b00192d42576b8084705c4a5f748b796554687d85705b4d61758a7a65513c271200162a3e5265788b8d7d6b778a8e7d6b57412c17000014293e52677b90a595806b57422e1a0500000001061a2e43576b8094806b56412d18030000000014283c5065798d927d6d82927d6a5854607082826e5c4935220e0000001f344a5f748ba0937c67523c2712000000000010213244576a7d77644f3a240f00081d31465a6e83979c87725d4935200c0000000f24394e63778da28f79644f3a2510000000000000000000000a1f33485d72879b87715c47331e09000000000b1a27323a3e3f3c352c2d3234332f281f15090000000000000000000413212b31322e271d1002000000000003101c262d31322f271b0d000000000000000000000313202a30302d271e13060000000000001e33475b6e7d8a8f806a543f2a1500000000000000000000000000001a2f44586b7c898f836e58432e19030000000000000000001f344a5f748a8076828f8675645342301e0c0000000000000000000000001d32475c71869a8a776c6c717a868070615140301e0d000000192e42566a8093917d6a57453f53687b9093806d5a484c62778d97826b6874847c6b594835231000001f34495e73888875635141301f0c000000081421313e5368798382796d5e4e3d2b1906000e22364a5d7084978975697d917b67778b7a67536571685947331e090014283d5165798b7764525d7287806d65708385705b56697c8874604b37230e000f2336495c6d7d8a7d6a6d7d8a7d6b56412c1700000f24384d62768b9f9a86715d4835210d010a11161714283d51657a8f856f5a46311c07000000000d21364a5e7287988475888c77624e42526374867864513c27120000001f344a5f748ba0947d68533f291400000000000315273a4d5f6c66594835210c0002172b4054687c91a18d78634f3b26120000000b20354a5f748a9f917c67523c2712000000000000000000010a1a2f44596e84988b75604c37220d00000007192938454e535450493e41474a48433b32271a0c00000000000000001022323e4647433a2e2010000000000212212e3941464743392b1a080000000000000000000f21313d4545423b312416070000000000182c3f51606d76787263503c2713000000000000000000000000000015283b4e5e6b75787566533f2b16010000000000000000001f344a5f748b79657082928371604e3c29170400000000000000000000001f344a5f738999856f5b575e687583806f5e4d3c2a1806000013273b5064788d9b8874614f3d4c6074899d8a7765534c62778c97836d59667789776553402d1a07001b3045596d8292806f5f4e3b2813000000061a2d3e4f5a5f6672828b7c6c5a4936230f00071b2e415467798b927d6d838d77636f83836e5a555c574a3c2a1704000e22364a5d7084826f5e586c7d8b7d7a808c7b6855627386806c5844311c080006192c3e50606e746e605f6d746f604f3c281300000a1e33475b708498a08c7764503c2815131d252b2c2823374c60758a89735e4934200a00000000071b2f43586c80948b7d9188725d49344557697b7867523d28130000001e33485e73899e96826b56412c170200000000000b1e30414f5754483b2b180500001125394d6175899d927d6a55412e19060000081e33485d72889c937d68533e2913000000000000000005131e252c40556a80948f7964503b26110000001124364756616869655c4f545c5f5d584e44372a1b0c00000000000000192d3f505b5c564c3e2e1e0c0000000e1f303f4c555b5c5749372410000000000000000000192c3e4f595a564e423425140200000000102233424f5a667368564534210e00000000000000000000000000000c1f30404e596063615748372410000000000000000000001e33485c71857d6a6373868f7d6b594634210e00000000000000000000001f344a5f748a98836c57424b576573847c6b594735231000000c2135495d71869a92806c5a4845596d82969583715f4e5e73889c88725e596b7d826f5c4936230f00162a3e5265788b8d7d6b56412c170000000d2136495c6d746d6373868a7865523f2b1600001124374a5c6d7d8d8976868c7660687c8974604b47443a2c1e0d0000071b2e415466788a7c6c5e60707d8688857b6e5d606f808674624f3c29150100000f213242505b5f5b504f5a5f5c514232200c000004182c4055697c91a593806b5744301d25303940413c3132475c70868c77624c37220d000000000014293d5065798d928899846e5945303a4c5d6a665b4b3824100000001c31475c70869b99846f5a45301b070000000000011323323d4240372b1d0d0000000a1e32465a6d82959985715d4935210e0000031b30465b70869b94806a543f2a1500000000000000041423303a3f3f51667b90927d68533e2914000000192d405365737d7d786d60667074726b615548392a1a090000000000001e33485c6e71695c4c3c2a17050005182b3d4e5d69707267533f2a150000000000000000001e33485c6d6f6a605242311f0d00000000041524323f53687d7362503d2b190700000000000000000000000000011222304153626f74634f3a261100000000000000000000192e4255687a887768687a8c897663503e2b1805000000000000000000001e33485e738898836c57423947566676887664523f2c190600061a2e42576b80949c8a7766544353677b909f8f7d6b5a5a6e83978d7964506072857966523f2b17000f2336495c6d7d8a7d6a56412c1700000011263b5065798a7d69697c90826e5a45311c0000081a2c3e4f5f6e7a8382848d786363778d78644f3a2f281c0e00000000112437495a6c7c8b7c6e63606a70726f695d65707d897968564532200d000000031423323e464a473f3e464a48403324140200000011263a4e6175899c9b8873604c392635434d54574f402f43586d838f79644f3a240f00000000000d21364a5d72869a9c95806b56412c2e3f4e5553493d2d1b08000000192f44586d83979d88735e4a35210c000000000000051420292c2b241a0d0000000003172a3e5265798c9f8c7864513d2a170400001a2f445a6f849995806a543f2a15000000000000000f2132414d54544e62778c96826c57422d180300001e32475c70839286887d6f758489877d736657483827150300000000001f34495e73867a6a594734210e000d2134475a6c7a85826b56402b160100000000000000001f344a5f73867d70604e3c291602000000000614273c51667b806d5b4836241100000000000000000000000000000a1f34495d70827d6954402b16010000000000000000001226394b5d6d7d86796d6f8293806d5a4734210e000000000000000000001c31465b708699846f5a442f3848596a7c826f5c4936220e000014283c5065798ea2918371604f4c6075899d8988776655687c9294806b5655677a826e5a46321d0006192c3e50606e746e604e3b271300000013293e53687d8f796560758a88735e49341f0000000f203141505d686e6c80927d6a60768c7b66503b26150b0000000000071a2b3d4e5e6e7c8a80766e68646365696f778388796a5b4a39271503000000000514212b3234332c2b3234332c221506000000000a1e3245596c8093a3907c69554233445360686b5e4c3840546a80917b66503b26110000000000071b2e42566a7d929b8f7b67533e2921303b403f372c1f0f00000000162b4054697d93a28d78644f3b261200000000000001030d14171611080000000000000f2236495c70839694826d594633200e0000192e43586e849994806a543f2a1500000000000000172b3e505f6869625e73889a856f5a45311c0700001f344a5f748a8b7575827d7d9382767d847566554433210e00000000001b3044596d82897664513e2a170313283c5064778a98836c58432d180300000000000000001c3044586d828f7d6c5945321e0900000000000f24384d62768a776653412e1b09000000000000000000000000000b21364b60768c836e59442f1a05000000000000000000091c2e3f4f5f6d7b887d73788c8a7764503d2a180d010000000000000000192e43586c829687725d48332a3b4c5e70837865513d281300000d21364a5e73889c8b857d6d5c4c5a6f8397907c84726163778c9a86705c4b5e7184725d48331e00000f213242505b5f5b5042311e0b00000013283d52677b8e78645e738989745f4a341f00000003132332404b545865788c867465788d79644f3a2510000000000000000e1f3040505e6c78848a837c7978797d838b8276695b4d3d2c1b0a000000000000040f171d1f1e18171d1f1e191005000000000002162a3d5063768a9c9985725f4c3d5061717c7b66513d3d52677c927c67523c271200000000000013273b4f63778b9480705f4c38281a1e272b2a24190e010000000012263b5064798ea2927d6955412d190500000a111516130e0600000000000000000000061a2d405366798c9d897663503d2b1907001a2f445a6f8499937c68533e2813000000000000001c31465b6e7d7d756b6f849988735e49341f0a00001f344a5f748b8b7663718280947d686d7a847362503d2a170400000000162a3f53687c91826d5a46321f0b182d41566b809499856f5a45301b060000000000000000152a3e53687c918975614d39241000000000000a1f33485c708683705d4b382613010000000000000000000000000b21364b60768c87715c47321d0800000000000000000000102131414f5d6a7682867b8393806d5946352a1e120500000000000000152a3e53687c928b76614d38242f415366797c69543f2a150000071b3044596d8397917c8b7a695954697d92968282806e5f73889d8a74604b5568716555432f1b0000031423323e464a473f322313020000000f24384d60738582746f7a8d836f5b47321d000000000414222e3840495c6f80908378828975614c37230e0000000000000001122232404e5b6670798086898a888580776f64594c3d2f1f0e0000000000000000000000000000000000000000000000000000000d2134475a6d8092a28f7c695644586c808f806c58443b506579907c67523d28130000000000000c2034485b6f839786725f5346382a1c12161510070000000000000d21364a5e73889c9985705c4834200d04121d252a2b2822190d00000000000000000000112436495c6e829293806d5a48362413071c31465b70869b8f7965503b2611000000000000001e33485e738992887d7180948c76614c37220d00001e33485d71868f7a656272839484705d6c7c806d5a4734200c000000001024394d61768b8975624e3a26121c31455a6f85999c88725d48331e0900000000000000001025394e63788d907c68533e2a15000000000005192d42566a7d8d7a685543301d0b0000000000000000000000000a20344a5f74898a75604b37220e00000000000000000000031323313f4c58636e7883849289756252473c302316080000000000001025394e63778c907b67523e2a2437495c6c6b5f4e3b2612000000162a3f53687d9296827d8877685964798f9a8675867d70758a9f8c77624c4a575c55473726130000000514212b3234332c22140500000000091d31445666748087868880746453402c18000000000004111c252d3f516271808889877c6b5946321e090000000000000000041422303d49545d656c70737473706b645c52473b2e1f1101000000000000000a13191d1f1f1d19120a0000000000000000000004172a3d5062758899998673614f5a6f869b87735f4c3a4f64788f7d68533e291300000000000004182c4053677b8f8e7d706356483a2c1d0e000000000000000000071b3044586c82959f8c7763503c281513222f393f403d362b1e10010000000000000000071a2c3f51637587988a776553423121132035495e73889d8a76614c38230e000000000000001c31465a6b76828e8f837a8f8f79644f3a261100001a2e43576b8092826d5a6575878c79675e6f8276634f3b2612000000000a1e33475b7085927d6955412d191f34495e73889da08b75604b36210d00000000000000000c20354a5f748996826d58432e1904000000000013273b4f63778b85725f4d3a2714020000000000000000000000071c31465b6f848f7965513d2915020000000000000000000e1f303f4c565c5e5c666f7987927d6f64594d413426180900000000000b2034495d728796826d58443231303f4e58584e41301e0b00000011263a4f64798f9b87718287776962778d9e897378888587949f8a75604b3a4447423829190800000000040f171d1f1e1810040000000000011427384857636c7274726d63564736231000000000000000091122344453616c7274726a5e4e3c2a160300000000000000000004121f2c37414a51575c5e5f5e5b5650483f35291d100100000000000002101c262e323434322d261d12060000000000000000000e203345586a7c8e9f91806d5b586d82968f7b6754414e63788f7c67523c2712000000000000001024384c5f73879a8f82746658493b2c1d0d00000000000000000015293d5165798da093806b5844311d2131404d545651483c2e1f0e0000000000000000000f22344557687a8b9583715f4f3f3126273b4f63778d9884705b47331e0900000000000000172a3d4d5964707c8a95898d927d68533f2a15010014283b4f6375898a766358697a8c85725e64767d68533e28130000000004182d41556a7d9385705c48342023384d61768ca1a08e78644f3a25100000000000000000081d32475c70869b86705c47321d0800000000000c2034485c70848f7c695744311e0c000000000000000000000001182c4054687c8f806c5844311f0e000000000000000005182b3d4e5d697173716a606b80938c82766b5e51443627180800000000061a2e43576b80958874604c474645434244433c302313010000000d22374c62778c9c8a747384887a717a8fa08b756977848d928f826f5b47322f322e261a0b0000000000000000000000000000000000000000091a2a394550585d5f5d59504538291806000000000000000005162635444f585d5f5d574d40301f0d0000000000000000000000020e1a242e363d4247484a4846423c352c23180c000000000000000010202e3942474a4a4741393024170900000000000000000416283a4c5e7082939c8a786756667a8d9884705d4b4f64788f7b66513c271200000000000000081c3043576a7d928a83857667594a3b2b1b0b00000000000000000e2236495d7085989b8874604d3a272b3e4f5e686b655a4c3d2c1b0a00000000000000000516283a4b5c6d7d8e8f7d6d5d4f423a3844576a7d928f7b6854402c1804000000000000000d1f2f3c47525f6b7886939e97826d58442f1b06000c203346596b7d8f826e5d5c6e8089776259696c5f4d3a2511000000000012273b4f64788d8c77634f3b26263b5065798f978b927c68533e2914000000000000000002192f44586e839889745f4a35200b000000000005192d4055687c918773614e3b28150200000000000000000000001125394c5f72848874614e3d2b1a0a000000000000000d2135485a6c7b8689867d7266778c8d7d887c6f615345362616050000000316293d5165798e8f7b675e5c5b5a5857545148392714010000000b20354a5f71808885726575858d8789979f8b745f6671797c7a7263523f2c1b1d1a1309000000000000000000000000000000000000000000000c1b28333d43484a48443d34281a0b00000000000000000000081726323d44484a48433b2f2212010000000000000000000000000007111a22292e31333433312d282119100600000000000000000b1d2e3e4b565c5f5f5c554c413527180800000000000000000b1d2f415263758696978573635d7082948d7a685651667b8e78644f3a240f000000000000000014283b4e627589927d8386776858493929190900000000000000061a2e4154687b8fa2907c6956433033485b6d7c80776a5b4a3927150200000000000000000b1c2d3e4f5f6f7d8e8b7b6d60554f4e546273869583715f4c382511000000000000000001111e2935414e5b687583919c87725d49341f0b000417293c4e6071828c7a6a5a61737d78685556584f41301e0a00000000000c2135495d7287927d6a55412d293f53687d93937c92826c57422d19040000000000000000162c40566b80958c77624c37220d0000000000001125394d617589917d6a5845321f0d0000000000000000000000091d30425466788a7d6c5a493827170700000000000013283c5064778a998d888b84767186958275828071635444342312000000091d3246586672879783737372706f6e6c6a655644301b06000000071c2f4253616c727166576674838f999f9986715c545e6467665f54453522100000000000000000000000000000000000000000000000000000000a1620292f333433302a21160a000000000000000000000000081520292f3334332f281e120400000000000000000000000000000000060e14191c1e1f1e1c18130d050000000000000000000015283b4c5c6971747470695f5345362615040000000000000000122335465767788998928270616476879786736154697d8a75604b36210d00000000000000000c1f3346596d8094877384877667574737271605000000000000001225384c5f728598998673604d3b364b607588958979685644321f0c0000000000000000001020314151606f7d8b8b7d726964636771809187766654412f1c09000000000000000000000c1723303d4a57657282908c77624d38230e00000c1e30425363738388786a5d6a80856f5a44433d312312010000000000061a2f43576c809585705c48332d42576c82968f798f86705c47321d08000000000000000014293e53687c938f79644f3a240f0000000000000a1e3245596d82958875614f3c291603000000000000000005111a222737495a6c7d8a78675645352514040000000000172c41566b8094917d727783867680948874718082726252412f1d0b00000b20364b60758085958e8989888786848280735e48331e09000000001325354450585d5c55485664717c868b887b6956424a5052514c423627170500000000000000000000000000000000000000000000000000000000040d151a1e1f1e1b160e040000000000000000000000000000030d151b1e1f1e1a140b00000000000000000000000000000000000000000000000000000000000000000000000000000000001b3044576a7a868686857c7063544433210e0000000000000000061728394a5a6a798a988f806f6069798991806f5f6d8385705c47321d09000000000000000003172a3d5064778a8f7b7485867565554434231100000000000000091c2f4255677a8d9f907d6a5845334659697a8b978673614e3b28150200000000000000000313233242515f6d79858f857d78787b838f847668584836251200000000000000000000000006121f2c3947556371809079644f3a250f0000011324354655647382887a717284836e59442f292013040000000000000014293d5165798f8b76624e3930455a6f84998c778b8a75604b37220d000000000000000011263b50657a90917b66513c271100000000000002162a3e5165798d927d6b594633200d000000000000000615222d363c3f3d4e5f708285736353423222120200000000192e43586e84988c776265718085798e8f7b67708082705e4c3a271401000b20364b60757b798c95827676777778797b725d48331e0900000000071726323d4448474239475460697174736b5d4c39363b3c3c383025180900000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000060d1112100b04000000000000001f34495e738880716f7785827262503e2b180400000000000000000a1b2c3c4c5c6b7a89978e7d70616a79888d7d6f76897d6a55412d19040000000000000000000e2134475a6d82958571778884736251402f1d0c000000000000001326384b5d6f82949a887563513f3b4c5c6d7d90917d6b5844311d0900000000000000000005142332414f5c67727a8287898b88837c7266594a3a2a190700000000000000000000000000010e1b2937455362718278634e39240f000000071728374655636f7a848787837666533f2b160d0200000000000000000e22374b5f7488917c68533f33485d72889c8974868f7965503b261200000000000000000f24394e63788d937c68533e2813000000000000000e22364a5d7186998975624f3c291603000000000002142433404a51545043536374858270615140301f0f00000000192e43586e84998d776254617080828996826d6170827c6a5744311d0a00091d32465865667084978a776462626364666355432f1b060000000000081520293033322e2936424d565d5f5e584d3f2e21252727231c1308000000000000000000000000000000000000000000000000000000000000000000000000000000020c151b1e1e1c170f0e161b1e1e1d19130c020000000000000000000000000000000000000000000000000000000000000000020f1a222627251f170c0000000000001f344a5f748b7c675b667586806d5a47331f0b0000000000000000000e1e2e3e4d5c6a7886938e8072666976838d84868674614e3b26120000000000000000000005182b3e5164778a8d7a697a8b806f5e4c3b291705000000000000091b2e40526476889992806e5d4b3a3e4f617285978874604c39241000000000000000000000051423313e4a555f676d727474736f685f55483b2c1c0c000000000000000000000000000000000b192735445362726e5d4935210c000000000a19283745525d676f73747066584836231000000000000000000000081c3145596d8297836e5a45364b60768b9b877082937d6954402b1702000000000000000c21364b60768b94806a543f2a1500000000000000071b2e4256697d9192806c594633200d00000000000d203242515d656a61504556677889806f5e4e3d2c1b0a000000182d42576c8297907b665252617182879b88735f64768773604d392510000316293a485154677b8f94826e5c4c4e4f504f4537261300000000000000030d151b1e1d191825303a42484a49443b2f21111012110e090000000000000000000000000000000000000000000000000000000000000000000000000000000005131f282f3333312b23212a303333322e271f150b0000000000000000000000000000000000000000000000000000000000000212202d363b3c3a332a1d1001000000001e33485c7185826f5d57687b8a76624e39240f0000000000000000000010202f3e4c5a6875828d9084776d667079807d75675645321f0b00000000000000000000000f2235485a6d829484706d7d8d7c6a584634220f0000000000000011233547596a7b8d9e8c7a69584737435567798c907c68533f2b1602000000000000000000000513202c38424b53585c5f5f5e5a544c43372b1d0e0000000000000000000000000000000000000917263544545e5c50402d1a0600000000000a192734404b545b5f5f5b53483a2a19070000000000000000000001162a3f53677b908974604b3a4f64788e98846e7c92836e5945301b07000000000000000a1f34495e738997826b56412c17020000000000000013263a4e6175899c8975624f3c2916030000000015293c4f606f79806b5640495a6b7c8d7c6c5b4a392715030000152a3f53687c9196826d5a4754647586988e7965596b7d7c68533e281300000b1c2a363c4c5f72869a8c786653413a3b3a33281908000000000000000000000000000007131d272e33343430281e11030000000000000000000000000000000000000000000000000000000000000000000000000000000000000000051423313b444848463f36333d44484847423b32281d1003000000000000000000000000000000000000000000000000000000000e1f303e4950524e463b2e1f0e00000000192e4255687b8c7b6b5e5f74897b66503b2611000000000000000000000211202e3c4a57636f7a848c8a827975736e6963574939271502000000000000000000000005182b3e516476898e7a687283887563513e2c19060000000000000618293b4c5e6f8090988776655545384a5c6f8295836e5945301b060000000000000000000000030f1b252f373e44474a4a4845403930251a0d0000000000000000000000000000000000000000081726364349483f322210000000000000000916232e3840464a4a4740372b1c0c0000000000000000000000001024384d61758a8f7965513d52677c9196826b778d88735e4a35200c00000000000000071c32475c718798836c57422d1803000000000000000b1e32465a6d829592806c5946321f0c000000001b3044586c7d8d7d68533e3c4e5f70838a7968564532200d00001025394e6275899c8a766451465768798f94806a5661757364513c27120000000c19223043566a7d909683705e4c39262520160a00000000000000000000000000000000010a13191e1f1f1b150c01000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000112232414e585d5e5a52484450595d5e5c564e453a2e211304000000000000000000000000000000000000000000000000000000172a3d4e5c656763594c3d2c1a070000001226394c5d6f7d8a7c7170788c78644f3a2510000000000000000000000002101e2c3946525d6770777c8082807a705e5046392b1b0a000000000000000000000000000e2134475a6c8092857266778a826e5b4935220e000000000000000c1d2f4051617182919484736353453f5164788c88735e49341f0a0000000000000000000000000008131c242a2f32343433302b251d1308000000000000000000000000000000000000000000000918252f34332d221404000000000000000005111b252c313434322c24190d00000000000000000000000000091e32465b6f8495806b5742556a8094937d6872888d78634f3a251100000000000000001b3045596d7b86826c57422d18030000000000000003172a3e5165798d9c8975624e3b2815020000001f34495e7388917b66503b30415366798c867462503d2a1602000a1e3246596c809294826f5d4c4b60758a9985705b576361554735220e000000000614273a4d6073879a8e7b685643311e0c04000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000091c2e40515f6b72736e655953626d7273706a61574c3f3122130300000000000000000000000000000000000000000000000000001d32465a6c797c766a5a4936230f000000091c2e4051606e7a848686877d6e5c4935210c000000000000000000000000000e1b2834404a545c63686b6b6a69776e5d4d3d2d1e100100000000000000000000000005172a3d4f627487907d6b6c7d8b7864513e2a160200000000000000112233435363728291918271635549495d71868c76604c37210c000000000000000000000000000000080f151a1d1f1f1e1b1711090000000000000000000000000000000000000000000000000008131b1f1e19100400000000000000000000000811181c1f1f1d181107000000000000000000000000000003182c4054697d9286715d48586d8397907b666d83927d68543f2b160200000000000000162a3d4f5e69707163513e29150000000000000000000f22364a5d718598927d6b5844311e0b0000001f344a5f748b917b66503b2636495c708492806c5945311d090003172a3d50627486978d7b6a5a4b5b70869a89745f4b4e4d443829180500000000000b1e3144576a7d90988673604e3b281603000000000000000000060b0e0e0c080100070f141616130e06000000000000000000000000000000000000000000020b12161615100a0100000000000000000000000000000000001225394c5e6f7d88898277696071808889867d75695d4f4031211100000000000000000000000000000000000000000000000000001f344a5f748a92887866523d28140000000011223242505d676f7374716a5f503f2d1a0600000000000000000000000000000a17222d3740484e5356565c71867b6b5b4b3c2e1f11030000000000000000000000000d20324557697b8d8977667488826d5945311d08000000000000000415253545546372828f908273675b53576c828d77624c37220d00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000011263a4e63778c8c77634e5b70869b8e7863687c92836e5945301b07000000000000000e203345535b5b5c544535220e000000000000000000061a2e4155687c909b8874614e3a27140100001f344a5f748b937d68533e2a2d4054697d928975604c38230e00000d20334556687889988978695b566a7d918e78634e393932271a0b0000000000000114273a4d60738698907d6a584533200d00000000000000061119202323211c140e1923292b2b2822190f0400000000000000000000000000000000000008141f262b2b2a251d140900000000000000000000000000000000182d4155687b8d9186868877687c8f8e7d7c83877a6d5e4f3f2f1e0c000000000000000000000000000000000000000000000000001f34495e72849095806a543f2a1500000000041423323f4a545b5e5f5d574e413222100000000000000000000000000000000005101b242d343a3e40475c70858979695a4c3d2f21110000000000000000000000000315283a4c5e70829384736b808974604b37220d000000000000000007172736455462707d8a9285786e67646f838a75604b36210c000000000c151b1d1a13090000000000000000000000000000000000000000000000000000000000000000000000000000010a11171b1d1b160d0100000000000000000000000000000a141a1d1b150c000000000000000000000000000000000b1f34485d7186927c68545e73899e8b766063778c88735e4a36210c0000000000000011263b4f6370685c4f40301e0b000000000000000000001225394d6073889b917d6a5643301d0900001e33485d728896826d584430263a4f64788e8f7a66513c27120000041627394a5a6a7a899788796c61617282867b66503b261e150900000000000000000b1e314356687a8d9b8875624f3c28150100000000000917232d3538383630271e2b363e40403c352c21150700000000000000000000000000000000081726323b40403f3930261a0d0000000000000000000000000000001d32465b7085988672727d867482978771676f7a887c6d5d4d3c2a18060000000000000000000000000000000000000000000000001b2f425565737c807766523d281400000000000514212d374046494a48433b302314040000000000000000000000000000000000000811192025292d4154677a8d88786a5b4d3f2e1c090000000000000000000000000b1d2f4152647586928376798f7965503b2611000000000000000000091827364452606d78848d8b827c79808d826f5b47321d09000003111e2830322e261a0b00000000000000000000000000000000000000000000000000000000000000000000000006131d262c3032302a1f11010000000000000000000000000e1b272f3230281e1001000000000000000000000000000005192e42566a8094836e5a62778c9e89735e5d72878d78644f3b26120000000000000012273c52677c7a6d5e4d3b2814000000000000000000000a1d3144586b80929a86735f4c38251100001b2f44596d83978873604c3927374c61768c937d68533e29130000000a1b2c3d4c5c6a7886918a7d746d6b70766d5f4d38240f02000000000000000000011427394b5d6f829392806b58442f1b06000000000718273540494d4e4b443a2e3c4952565651493e32251607000000000000000000000000000002142635444e5556534d43382b1e0f00000000000000000000000000001f344a5f748995806b606f8082839887705c5d6a77877b6a5947352311000000000000000000000000000000000000000000000000132537475560686a66594936230f00000000000004101b242c313434332e281e1305000000000000000000000000000000000000000000050b101425384b5d6f829289796b5d4c38240f000000000000000000000000001123354657687889948a88937c68533e28130000000000000000000009182735424f5b66707982878a8b88807364523f2b1804000011212f3b44474238291805000000000000010a10141514110b0400000000000000000000000000000000000000061524303a404547453c2f1e0c00000000000000000000000d1d2c394347443b2e1f0f0000000000000000000000000004111b273c5064798d89745f65798f9b87705c586c82937d6955402c170300000000000011263b50667b8c7c6a57432f1b060000000000000000000115283b4f63768a9d8f7b6854412d1a0600162b3f53677a8f8f7c69564534364b60768c947d68533e2913000000000e1f2e3e4c5a677380899188838283846e5843301d0900000000000000000000000a1c2e40526475869688725e49341f0a0000000214253645525d63635f574c3f4b5a666b6b655c5043342516080d0f0f0d0903000000000000000c1f324453616a6b686056493c2d1e0e090e0f0f0d08000000000000001f344a5f748b947d685361738580958974604c5a697889766553402d1a07000000000000000000000000000000000000000000000008192937434d535452493b2b190700000000000000000811181c1f1f1e1a140b0100000000000000000000000000000000000000000000000000081b2e4052637384938a7b67523c271200000000000000000000000000061728394a5a6a7988949c937d68533e29130000000000000000000000091724313d49545d666c717474726d63554635221000000b1e2f3f4d585c554735220e000000000009141e25292a29251f170d010000000000000000000000000000000001132433424d555a5c594d3c291501000000000000000000081a2b3b4a565c584c3d2c1a0700000000000000000000000414222e373d4a5e72888f7965687c9299846e5952667b90846f5b46321d090000000000000f243a4f64788f87725e4934200b000000000000000000000c2033465a6d80949884705d4935210d001024384b5f72859786746352443b4f64788e937c68533e2813000000000110202e3c4a56626c767d85898b887d6a57422d1803000000000000000000000000112335465768778687735e49341f0a0000000b1e3143536370777873695d4e5769788280786e61524334241c212425221e160d01000000000013273b4e61717d827c7367594b3c2c1c1e232524211c140a00000000001f34495e738995806a5556677987948f7965514b5b6b7c82705d4a3723100000000000000000000000000000000000000000000000000b1a2631393e3f3d362b1d0d0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000011223445556574828a7965513c271100000000000000000000000000000b1c2c3d4c5b6a768289887864503b26110000000000000000000000000614202c37414a52585c5f5f5d58504537281705000015283b4d5d6a7164513e2a17030000000a192631393e3f3e3a332a1f12050000000000000000000000000000000a1d3042515f696f726b58442f1a05000000000000000000132537495968726a5b4a37230f0000000000000000000000122232404b5254586d8294806b6b809597826c574c61758a8a75604c37230e0000000000000d22374c62778d8c77624c37220d0000000000000000000004172a3d5164778a9d8c7864503d291400081c2f425567798a92827062564e586a7d928d7964503b2611000000000002101e2c39444f59636a707374736c5f4e3b281400000000000000000000000000051728394a59687274685744301b0700000013273b4e6071828c8e877a6c5d607387958c8b80706152423230363a3a3732291f120400000000192d42566a7d90908c8577695a4a3a2932383a3a3630271c0f010000001c31465b708698836e594a5c6f829495826d59454d5e70837966533f2b170000000000060c0f0f0e0a040000000000000000000000000009141d25292e32312d251b0f010000000000000001080b0b0604090b0904000000000000000000000000000000000000000000000000000000051627384756646f746d5d4a36220e0000000000000000000000000000000e1f2e3d4c59656e73736b5b4935210d00000000000000000000000000020e1a242e363e43474a4a49443d3327190a0000001b3044576a7b826d5a46331f0c000007182837444d5354534e463c3023140500000000000000000000000000001025394d60707c8487705b46301b060000000000000000091d3042556677867966523d281300000000000000000000091c2f40505d666a66667a8f86716e8498947d6954475b70848f7a66523d29140000000000000b20364b60758b8d77624c37220d00000000000000000000000e2134475a6d809294806c57432e1a00001325384a5b6c7b8a8f807369636876889685715e4a36210d000000000000000e1b27323d464f565b5f5f5e584e41301e0b00000000000000000000000000000b1c2c3b4a565e5f574a3a281501000000192e42566a7d908d82828b7b6a65798f8c787b898070604f3e434b4f4f4c463c302314040000001d32475c70869582778088786858473c464c4f4f4b43392d1f10000000182d42566b809588735f4b5264778a9c8874604d41536578836e59442f1a000000051019202425231f180f0400000000000000000000000010212f3b43474641382d1f1000000000000008141c20201b171e211e180d010000000000000000000000000000000000000000000000000000091a293846525b5f5a4f3f2d1a0700000000000000000000000000000001101f2e3b47525a5f5e594d3d2c190600000000000000000000000000000007111b23292f32343434302921160a000000001f34495e73888a76624e3b28140100122436465560686a6862594e41322314040000000000000000000000000013283e53687c8f9888725d48331e0800000000000000001125394c5f72858c7966523d2813000000000000000000001025384c5e6e7a80726075898b7671879c917c675241556a7d93826c57432e1a0600000000000a1f34495e73898d77624c37220d000000000000000000000005182b3d506274869687715c47321d0000081a2c3d4e5d6c798690867c787b869387776754412e1b0700000000000000000915202a333b41464a4a49443c302312010000000000000000000000000000000e1d2c3943494a443a2c1c0b000000001d32475c718698846f6e7b8977677c9388726a798a7d6d5c4b565f646461594e413222110000001f34495e7389917b667080867565544d596164645f564b3d2e1e0d000014283d51667a8f8e796552475a6d8093907c695541495b6e756856422d1900000615222d35393a38332b21160900000000000000000000081b2e3f4d575c5b554a3d2e1d0c000000000918263035352e2a3336332b1f110100000000000000000000000000000000000000000000000000000b1a283540474a463e312110000000000000000000000000000000000001101d2a353f464a49453c2f1f0e000000000000000000000000000000000000070f151a1d1f1f1f1b150e0400000000001f344a5f748b927d6a5744311d0a081b2e415364737c807c766b5f51423222110000000000000000000000000013283e53687c939f89745f4a35200b0000000000000004182c4054687c8f84705c4936230e00000000000000000000152a3f53687b8d846f5a6e83917c74899f8f79644f3b4f64788d87725d4935200c0000000000061d32475c72888f78634e38230e0000000000000000000000000e2133455668778685715c47321c0000000e1f303f4e5c68737c84888b8986807568594937251200000000000000000000030d171f272d3234343430291f130400000000000000000000000000000000000e1b272f343431281c0e00000000001f344a5f748a94806a5d6d7d84717d9488725c6b7c8c7a695968737979756b5f50402f1d0b00001f344a5f748b917b666171838371605d6b75797873685b4c3b2a1806000e23374b60748895826d5a46506375899885715d4a3f505e61584a39271300031424333f494e4f4d473e332618090000000000000000001024384b5d6a7170685b4c3b281500000004152736434a4a413c474b473d2f1f0f0000000000000000000000000000000000000000000000000000000b17232c3234322b201303000000000000000000000000000000000000000c18232b31343430291e110100000000000000000000000000000000000000000000000000000000000000000000001e33485d72879b8773604d3a26130e23374b5e7183909592897d6f6050402f1e0c00000000000000000000000011263b5065798fa18c77624c37220d000000000000000a1e33475b7084917c6854402d1a0700000000000000000000172c42576c8297846f5a687c9282778da08c76614c37495d72878d77634f3b26120000000000001b30465b70868f78634e39240f000000000000000000000000031627394a596872736656422e1a000000011221303e4a5660686f737474716b63584a3b2b1a08000000000000000000000000040c13181d1f1f1f1b150d020000000000000000000000000000000000000009141b1f1f1c150b0000000000001f344a5f748b947d68535f70837d7c9388725c5e6f8287756777868582877d6e5e4c3a271401001f344a5f748b917b66536476887d6c6b7b89838386796a594835231000081c3145596d82958975624e46596c80928d7966523e414a4c463a2c1c0a000d203242515c6364625b514436271707000000000000000014293e53677a8785796a5845311c00000010223344545f5e524b59605a4d3d2c19060000000000000000000000000000000000000000000000000000000610181e1f1d170e03000000000000000000000000000000000000000000060f171c1f1f1c160c0000000000000000000000000003090b0b07010000000000000000000000000000000000001a2f43586c8295907c6956422f1c14283d52667a8e9c8a7c80897d6e5e4c3b29170500000000000000000000000e23384d62778ca18f79644f3a2510000000000000000f24384d61768b8c77624e3925110000000000000000000000172c42576c829788725d62778b887a909d88735e493443576c80927d6955412d18040000000000192f44586e849079644f3a250f000000000000000000000000000a1b2c3b4a565e5e5648382613000000000312202d39444d545a5e5f5f5c5750463a2c1d0d000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001e33485d728895806b56536577887b9189735e5264768880728586736c74837b6a5744311d09001f344a5f748a937c6752596a7c89777689826f6d77877765523f2c19000116293d5164778c927d6b58464f62768993826c57422e363732281c0e0000162a3d4f616f7879776e6254453525171007000000000000152a3f546a80929788745f4a341f00000b1c2e3f51627270615768766b5b4935210c0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000b161d20201c150d020000000000000000000000000000000015293d5165798d9986725f4c3825182d41576b809595806c6b78887b6a584634210e00000000000000000000000a2034495e73899e917c67523d28130000000000000013283d52667b9088725d49341f0b0000000000000000000000152a3f53687c908d78645c70868e7d939a86705b46313d5165798e85705b47331e0a0000000000172c42576c82907b66503b261100000000000000000000000000000e1d2c3943494944392a1a090000000000020f1b2731394045484a4a47433c33291c0e000000000000000000000000000000000000000000000000000000030d14191c1c1a150e0500040a0d0d0c080300000000000000000000000000001b30455a6f8499846f5b485a6c7d808f8b76604b586a7d8c798e806b5764758773604d38230e001e33485e7389947d69544d5f7184827d907a6559687a826f5c48331e00000e2235485c6e82938875634e46596c80807667533f2b21221e160b0000001c3045596c808c8c8b8072635343312b24190d000000000013273c506374828987745f4a341f000416283a4b5d6e80806c63758778644f3a2510000000000000090e0f0d07000000000000000000000000000000000000000000000000000000000000000000000001070c0f0f0f0f0d09050000000000000000000000000000000000000000000c1c2932363530291f13050000000000000000000000000000000e2236495d7084978f7b6754412e1b2f445a6f8499917b675a6979887663513e2b180500000000000000000000071c31465b70869a94806a55402b1601000000000000172c41566b8095846f5a45301b0600000000000000000000001025394d61748893806c596a8093839696826c57422d364b5f73888b76624e3925110000000000162b40556a80917c67523c27120000000000000000000000000000000e1b272f343430271b0c00000000000000000a141d252c30333434322e2820160b000000000000000000000000000000000000000000000000000000081520282e31312f29221811191f2222211d170f07000000000000000000000000172c40556a7d938975604c4f6173868f8e78634e4d60728687947d6853586a7d78644f3a240f001d32475c728896826b56425467798c838f78634e5d6f82735f4a341f000005192c3f516475858073624e3d50626d6a6358493724100c0903000000001f34495e73888b7877828271604e453f362b1c0d000000000d20334556646e7473695845311c000e21344557697a8c826d6f828d7965503b26100000000006131c2325221a0f0200000000000000000000000000000000000000000000000000000000000000050e161c2124252524221e19130b02000000000000000000000000000000000006192a3a464b4a453c312314050000000000000000000000000000061a2d4154677a8e9885715e4b372430465b70869b907965505c6d7d826d5a4734210d0000000004080906020000182d42576c829697836d58432e19040000000000001a2f44596e8497826c57422d180300000000000000000000000a1e3144576a7c8d89766464798e98a0917c67533e293044596d82917c6854402b17030000000014283e53687d937c68533e2813000000000000000000000000000000000a141b1f1f1b140a00000000000000000000010a11171b1e1f1f1d1a140d04000000000000000000000000000000000000000000000000000000081726323c434647443e352b232d33373736322b23190e020000000000000000000012273b5064788d907b67534457697c8f907b66514356687b8f947d68534d606d685a4935210c001c31465b708797836c57424a5c6f83918f78634e53646e645644301c000000102235465767706d6355454a4e52585650473a2b1a08000000000000001f344a5f748b88726471827d6c5b5a53483a2b19070000000416283846515a5f5e574b3a281500172b3e516375878a776a7b8d83705d4a36220d00000008172430383a362d20100000000000000000000307070704000000000000000000000000000000010d18212a3036393a3a3a37332e271f150c010000000000000000000000000000000e22364858605f584e413223120100000000000000000000000000001124384b5e7084978e7a6754412e30465b70879b917b66504f6172857763503c291400000410191d1e1b171513152a3f53687d939b86705b46311c070000000000001c32475c708795806a55402b160100000000000000000000000215283a4c5e6f808f82706173889d9e8a76624d39242a3e52667a8f836f5b46321e0a0000000012273c51667b917d68543f2a140000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000004162635444f575b5c5851483d3540484c4c4b463f362b2013050000000000000000000d21364a5e728697836f5c484c5f728694806a55404c5f728695806b56425158554a3c2b1906001b30465b708698836d5843405366798d907a655146535853473827140000000517293949555b5950454f5d635b4b413b34291c0d00000000000000001e33485d72878a756063748676706e66584836230e000000000a1a28353e464a49443a2d1d0b001d32465a6d80907d6c758889776553412e1b07000005162635424c4f4a3e2e1c090000000000000812181c1d1c18120b01000000000000000000000004121f2a343e454a4e4f4f4f4c48423b32281e1206000000000000000000000000000011273c516575736c5f5141301e0c0500000000000000000000000000081b2e415467798c9784705d4b382f445a6f869b927c67524355687a806c58432e19000514222c3233302c2a2827263b5065798f9e89735f4a3520110700000000001e33485e738894806a543f2a15000000000000000000000000000b1d2f40516170808d807270879c96836f5b47331e23374b6073888a75614e392611000000000f243a4f64788f806a543f2a150000000000000000000000000000000000000000000000000912181a1a160e05000000000000000000000000000000030c1115161614110c05000000000000000000000000000000000e21334453616b70706d645a4e46535c6162605b52493d312315060000000000000000071b2f43576a7d928b77645143586d8297836e594544596e849985705c493e4341382c1e0e00001a2f44596e8395836e584336495d708794806b574340433f35291a09000000000b1c2b384246443d485b6d7869584838291a0c0000000000000000001b2f44586d828f7b6756687a8087837666523d281300000000000a17222b31343430281d0f00001f344a5f748a8472677c8f7d6b59483624110000000f223444535f645c4b39251200000000010f1b252d3132312d261e1408000000000000000000041422303c4751595f63646464615c564e453b302417090000000000000000000000000011263b506476887d6f5e4d3b292019120a0100000000000000000000001124374a5d6f82958d7a6754412e43586e8498947d69543f4b5d707d6d59442f1a001122323f474845423f3e3c3b3b4c60758b9f8c77624d382e24190c000000001f34495e7389947d68533e291300000000000000000000000000001222334352616f7c8886828c9a8b7966533f2b181c3044586c7d8f7c6955412d19000000000d22374c61768c826b56402b1600000000000000000000000000000000000000000000000e1b252d2f2f2a21170a000000000000000000000000000a161f262a2b2b2925201911070000000000000000000000000000162a3d50627180868782776b5e5564707677756e665b4f4133241505000000000000000014283b4f62768994826d5b4953687c9288735f4a43586d83988c7864513e2e2c251b0e000000172b4055697a807b6a554130455a6f869a8773604d3a2e2b23180b0000000000000d1a262d302f384d6277877666564738291b0d000000000000000015293e5165798c836f5c5e71877d737566523d2813000000000000050f171c1f1f1b150b0000001f34495e72857966667a86725f4e3c2a1806000000182b3e516270796854412d1a06000000101f2d3841464746413a3125190b0000000000000001122232404d5a646d737879797976716a61584d413427190a00000000000000000000000d18223548596c808e7c6a58463a342e261d140900000000000000000006141e2d405264778a9885715e4b3941566b829696826c57424153646b60503e2a1600192d40515c5d5a575453525050505c71869b907b66514a41362a1c0d0000001f344a5f748b947d69543f2a1500000000000000000000000000000515253443515e6a757d868a887c6d5c4936231015293c4e60708084705c47321d000000000a1f34495e73897d69543f2a15000000000000000000000000000000000000000000000d1d2c384144443e3428190900000000000000000000000c1b28333b3f40403e3a342d24190e020000000000000000000000001c3045596d80909589898a7c6e6173828b8d8a82786d5f514233231201000000000000000c203346596c7d908b78644f4e63778b8c77624c41566b809595826e5a45311c1209000000001126394c5c676a685d4d3a2e43586d8397907c6955402b16100600000000000000000912191b23384c61768a8474645647392b1c0c000000000000000e2236495c6f828c79675e7389826c60594937230f0000000000000000000000000000000000001b2f43566672705e5c6c746a5642301e0d000000001d32475b6e8085705d4936230f00000b1d2e3d4a545b5c5b554d4337291a0b0000000000000c1e2f40505e6b7782888d908f8d8b867d756a5f52453728190a000000000000000003111e2a353e465063768a887562534e48423a30261b0e01000000000000041524313a3c485a6c80918e7a68554b4d53687d9399846f5a45364652564f4232210e001e33485d6f726f6c6a6867666666666d8297947d69655d53483a2b1c0c00001f344a5f748a95806a54402b1500000000000000000000000000000007162533404c58626a7174736b5e4f3e2c1a070d1f314251616d746f5c47321d00000000071c31465b708676634f3b261200000000000000000000000000000000000000000005182a3b4a555a59514537271604000000000000000000081a2a39454f545656534f4840362c20130600000000000000000000001f34495e73889c8a76737c897c6d7d9195837b808a7d70615141301f0d0000000000000003172a3c4f6172807d72614d485b6d79796e5c483d52667a8f9c88725c47321d0700000000000a1c2e3e4b5354534c3f2f2b4054697d9297836c57422c17020000000000000000000000000a1e33475a6d809283746557493a291703000000000000061a2d405264768885746473898874614d3b2b1a0700000000000000000000000000000000000013263848565e5d524e5a5f5a4c3a271301000000001f344a5f748a8d7965523e2b18040215283a4c5b677072706a60544738291a09000000000417293c4d5e6e7c899491867d7878798086887c70635546372819090000000000000112212f3c47515a61666f83927d6b68635d554d43382c1f110200000000000e2133424e5252526173869885725f60636668798f9c88725d4934353e403c32231404001f344a5f74888482807d7c7b7b7b7b7b7c9398837c79706558493a291805001e33485e738997826b57412c17020000000000000000000000000000000715232f3b464f575c5f5e584d4031200f0002142433424f5a5f5d513f2c190000000000182d42566a7469594734200c0000000000000000000000000000000000000000000d21344759676f6d63554533210e000000000000000000122537485762696b6b68635c53493d31241506000000000000000000001f344a5f748b9d8872606b78887b84998d78666d7987806f5f4e3d2b1907000000000000000d20324354636b696154443e4f5d64645d503f374b5f72838b806d5945301b0600000000000010202e383e3f3e382e21263b4e627586897a6854402b160100000000000000000000000004172a3d50637486928475675846331e0a0000000000000010233547596a7a8b83737288917d6955402b1601000000000000000000000000000000000000091a2a38434949413d464a463c2e1d0b00000000001f344a5f748a95826e5a4734210d0a1e3245586a798588857d72655647372716050000000c203346596b7c8d9a928273696463656a727c8782736455463726160500000000000e1f303f4d59646d757b80829387807c77716960554a3d2f2010000000000014293d506067676768687a8d8f7c7275777a7d828da08b76614c3823292b2820140500001d32475b6e8290979493929191919191919aa093938d837667584734210d001d32475c728898846e59442f1a040000000000000000000000000000000005121d28333b42474a49443b302213030000061524323d464a4840322210000000000013273a4c5a5f584b3c2a170400000000000000000000000000000000000000000013283c50647785827362503e2b17040000000000000000192e415466757d82827d776f665b4f42332415060000000000000000001f344a5f748a9e89735f5a69798983988c77625c6977877d6c5a483624110000000000000002142636455056544e443631404a504f4a40323042546471746f61503d2a160100000000000002101b24292a29241c111f3346586772746c5d4b38251100000000000000000000000000000e21334557687889938576614c37220d0000000000000006182a3b4c5d6c7b89857c8293826c57422c1702000000000000000000000000000000000000000c1a262f34342e2a3234322a1e100000000000001d32475c7085998a7763503d2a161125394e61758897938b8c837465554533221000000014283c506376899a9a877463564f4e50565f69758283736454443423120000000007192b3d4e5d6b76828a908b878a9186898c857c73675b4d3e2e1d0c00000000172c42576c7c7c7c7c7d80839888888b8d908f8a8a9c8f7a65513c271416130c02000000182b3e51627182918a898b8c8c8c8c8b8b8d9e90888888867664503b2611001b30455a6f869a86705c47311c080000000000000000000000000000000000000c1620282e32343430281e1204000000000614202a3134332d22140400000000000b1d2e3c464a453b2d1e0d00000000000000000000000000000000000000000000172c41566b809491806d5a47331e0a00000000000000001e33475c71848983868e8c83786d6051423324130200000000000000001d32475c71869a8d78634f5b6b7b8b99907c68555968798a776653402d1a0700000000000000081827333d403f3a3126222e363b3a362d22253746545d5f5b514232210e000000000000000000081014151410090316283a49565e5f594e3f2e1c090000000000000000000000000000041628394a5a6a79868874604b36210c00000000000000000c1d2e3f4e5d6b778289897c7565523e291500000000000000000000000000000000000000000009141b1f1f1a171d1f1d170d00000000000000192d41556a7d9293806c5946331f152a3f53687c919885757783847362513f2d1b080000192e42576b8093a6927d6a57453a383c434c5763708083726252412f1e0c0000000f2336495a6b7b89948a7d767184937d747a838f85786b5c4c3b2a1805000000162b405467798a9393949597969b8f8a86807a75839794806a55402c17020000000000000f223444536373838d7c7476767676747485998f797272737665513c271200192d43586c829789745f4a35200c00000000000000000000000000000000000000030c141a1d1f1f1b150c01000000000000030e161c1f1e19110500000000000000101e2a323431291d0f0000000000000000000000000000000000000000000000192e43586e8498868876624e39251000000000000000001f344a5f748b7a6d727a86928a7d7061514231200e0000000000000000192e42576b8094927d6a564d5d6e80909885725f4c5b6b7c83705d4a37230f0000000000000000091621282b2a261e14111b222525211a1019283641484a473f3324150300000000000000000000000000000000000b1c2b3943494a463d302110000000000000000000000000000000000a1b2c3c4c5b687274695845311d080000000000000000001021303f4d5a666e73746d63574735230f0000000000000000000000000000000000000000000000000000000000000000000000000000000012263b4e62768a9c8975624f3b28192e43586d8397937d69647282806f5d4a38251200001d32475c70869aa18c77624e3a282327303a4653616f80806f5e4d3b2917050000162b3f5266788a998a796c62697d92846f66707d8d897a6a594735220f0000001125384a5c6b778086878684828d8976706b66687d9299846f5a45311c070000000000000516263645556473838b7b6c6060605f6b8094937d685c5e61594936220e00152a3f54697d938d78634e39251000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000d171d1f1d160c000000000000000000000000000000000000000000000000192e43586e849782807c68533f2a1500000000000000001e33485d728779655e687482908f8070604f3d2c19070000000000000014283c5064778c9a86725f4c50617283948f7c69574e5f70837966523e2a15000000000000000000040d141615110b0200070d10100d06000a19252e3334332c221506000000000000000000000000000000000000000d1b272f3434312a1f120300000000000000000000000000000000000e1e2e3d4a565e5f594b3b2815020000000000000000000312212f3c48525a5e5f5a4f46392a180600000000000000000000000000000000000000000000000000000000050b0e0d08000000000000000b1f33465a6d8094927d6b5845321f2f445a6f869a917b66546474867a6754412e1b08001f344a5f74899f9f89735e49341f0e141d283542516170827c6a594735221000001b30455a6e829693806c5b4f63788d89745f5f6e8092887664513e2b17030000081b2d3e4d5a646c6f70706e6f8293826e5c5163788d9d89735f4a36210c000000000000000818273746556473838b7b6c5e4f51667a8f97826d58494c473b2b19070011263b5065798e927c68533f2a15010000000000000000000000030f171c1d1a140b0100000000000000060f161b1d1b160d010000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000192e43586e8397827b826c58432e1904000000000000001b2f43586b7d82706056637182918f7d6d5b49372411000000000000000d2135485c6f82958f7b68554354657688998774614e536577826c57422c17000000000000000000000000000000000000000000000000000007121a1e1f1e1810050000000000000000000000000000000000000000000a141b1f1f1d160d0100000000000000000000000000000000000000101f2d3943494a453b2d1d0c000000000000000000000003111f2b363f46494a463e34291b0c000000000000000000000000000000000000000000000000000000000d182023221c1205000000000003172a3d5064778a9b8875614e3b2830465b70879c9079655057687a85715e4b372410001f344a5f748ba09d88735e48331e09000b17253342526374867664523f2d1a06001f34495e73889d8d78634f4a5e72888e78645061758994826d5a46321d080000000f202f3d4851575a5b5b596475878c7967545e72889c8e78644f3b261100000000000000000919283746556473828b7c6d5e5061768b9b86705c4737332a1d0d00000d22364b5f748997826d5844301b07000000000000000000000413212b31322f281e120500000000000c19232a2f32302a1f11010000000000000000000000000002080c0d0c0903000000000000000000000000000000000000000000000000070d172c42576c8297847886705b46301b060000000000000014283b4e6172837d706256627384958a786653402d1a0600000000000005192c3f5265778a988572604e47586a7b8d917d6954475a6c7263523e2a15000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000010f1b262f343431291d0f00000000000000000000000000010d19232b313434312b21170b000000000000000000000000000000000000000000000000000000000d1d2a3438372f23140500000000000e2134475a6d8093927d6a57443230465b70869b917b66504a5c6e827a67533f2b17001f34495e73899e9f8a74604b36210d0000071524344556687a826f5c4936220d001f344a5f748ba08c76604b44596d83927d68535a6e84998a75604b37220d00000002111f2b353d424546464658697b8d847260586d8296937d6955402c170300000000000000000a19283746556472828c7c6e5f5c71869a8a75604b3621170c000000081c31455a6e839788735e4a36220e000000000000000000001022323e4647433b302314050000000d1c2a363e4447453c2f1e0c0000000000000000000000020d161d2122211d170e04000000000000000000000000000000000000000009131b21242a3f54697d94877688725c47321d07000000000000000c1f3243546473828073685c66778a9683705d4935210d00000000000000102335485a6c7d8f907d6b5a494c5d6f80877b6854414e5a5d544535230f000000000000050a0c0c0a0600000000000307090a0907030000000000000000000000000000000000040b0f11100c0c13191d1f1f1b150c01000000000000000000000000000000000000000000000000000000000009131b1f1f1d160c00000000000000000000000000000000070f171c1f1f1c170e04000000000000000000000000000000000000000000000000000000000a1a2b3b474d4b41322311000000000005182b3d506376899b8874614e3b2f445a6f8599937c68533f516476836e59442f1a001c31465b708599a38e7965503c2915030000061727394b5d6f827965503b2610001f344a5f748a9f8c77624d3f53687c92826d58576c83988f79644f3a251000000000010e1822292d3030303a4c5d6f808f7d6b59677b9098846f5a46311d080000000000000000000a19283746546371828d7d6f606c82968e78644f3a25110000000001162b3f53677b8f8e7965513d291502000000000000000000192d3f505b5c574d413223120000081a2b3a4852595c594d3c29150100000000000000000004131f2a31363737322b2115090000000000000000000000000000000000000d1a262f363a3a3c51667b91897688725c47321d070000000000000002142636465563717d86796e636d82958c7864503c28130000000000000006182b3d4f607182928a786757475163737d7a6f5e4c3d46484236271706000000000711191f21221f1b130a000911181c1e1f1e1c18120c04000000000000000000000000000c171f2426252120272d32343430281e11030000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000091828384959635e51412e1b0700000000000e213346596b7d90917d6b58453243586d839894806a5540475a6c776957422e1900182d41566a7d92a694806c584532200f0000000a1b2d4052657770614e392510001d32475c708699907b66523e4e63778d86715c5a6e8499917b66503b2611000000000000050e14181b1b1d2e405162738589766461758a9e8974604b37230e000000000000000000000a19283645536271808e7d70677b90927c68533e2a1500000000001024384c60738795806c5845311d0a0000000000000000001e33485c6e726a5f51402f1d0a001124374958656d726b58442f1a050000000000000000021323313d454b4c4c463e33261809000000000000000000000000000000000c1c2b38434b4f4f4c4e63788d8d7787725c47321d070000000000000000081828374553606c778382756b798d94806b56412c1803000000000000000d2031435364748493867565574a55697d8d7b66523d32332e251809000000000c19242d333637342f271d121c252c31333433312d261f170d03000000000000000000000f1d2a33393b3a36343b42474a49443b2f211100000000000000020b101313120d06040c101313120f090200000000000000000000000000000000000002090d0f0f0f0b0600000000000000000000000000050d1112100e0d0b0b0a0a0a0a09070400000000000000000009182636465667776f5e4a36220d000000000c1a262d3c4e617386988875614f3e40556a809597836d58433d4f5e635a4b3a27140013273b4f6276899c9b8875614f3e2d1e100400001023364859635e5344321f0b00192d42566a7c8f96826e5b48495e72888b75606275899d907965503b2611000000000000000000000000112233455667788a82705e6f84988f7a65513d291400000000000000000000000a18273644536170808f8070768b96826c58432e190400000000091c3044576a7d928874604d3926130000000000000000001f344a5f73877c6f5e4c3a271304192d415467768287705b46301b0600000000000000000d2031414e596062605a504436271808000000000000000000000000000006192a3a49555f646461595f7489917c866f5a453024190d01000000000000000a192735424e5a66717c887d738899846f5a45301b0500000000000000021425364656657484918475685d57697d947d68533e291e1a1308000000000c1b2a3741484b4c49433a2f232f394046484a4846413b332a20140900000000000000000b1d2d3b474e504f4a4850565c5f5e584d3f2f1e0b00000000000a151f252829262119172025282927241d150c020000000000000000000000000000000b151d22252524201a130a000000000000000000000c1821262725232221201f1f1f1f1e1c18140d0500000000000b19273644546474857965503b2610000000081a2a3841444456687a8d92806c59535558677c929a86705b4631404b4e483c2d1d0b000c1f3346596c7d90a192806d5c4b3c2e21170f0a06192b3b474d4b41352615020013273a4d607082908a77665545596d838f7965708092a08c77624d38230e000000000000000000000000041627384a5b6c7d8e7c6a687c9195806c57432f1b0600000000000000000000000918263543526170808f8271869a86705c47321d08000000000114283b4e617588907c695642301d0b00000000000000001c31465b70858d7c6956422e1a091e33475c708495866f5a442f1a050000000000000000162a3d4f5f6c7477756d6254453626150400000000000000000000000000102336485866727979756c6170869682826c584a41372b1e1102000000000000000a1725313d48545f6a758085869b87705b4630201102000000000000000718283847566573828d8679706c72858d7965513c271200000000000006192a3948545c60615d564d4134404c545a5e5f5e5a554f463d32261a0d0000000000000015283a4b596366645d5b636a7074736b5d4d3b2815010000000d1b28323a3e3e3b352c2a333a3e3e3c3831281f140800000000000000000000000001101d2831373a3a39352e271d1206000000000000000a1b2a353b3c3a383736353434343433312d2821180d000000091a293745546272828c78644f3a251000000011243748555a5a5a5d6f8294897665686a6d70788e9e89745f4a352e3638342b1e0f000004172a3c4f607283939c8b79695a4c3e332a241f170d1d2a3438372f23170800000b1e30425362717d888472634f54697d937d71808f9e9785715d4834200b00000000000000000000000000091b2c3d4e5f7082887665768a9b87725e4935210d0000000000000000000000000817253443516170808f8280958a75604b37220d00000000000c1f3245586b7d9086725f4c3a28160400000000000000182d42566b809586715d4834200c20364b60758b9b86705b46301b0600000000000000001c3146596c7d898d8a807263544433211000000000000000000000000000172b3f536576858e8f897d726c82968d7c6c655d54493c2f2011010000000000000007131f2b36414d58626e79869a87705b4c3e2f200f00000000000000000a1a29384755636f7a858d8583868c806f5d4a362a1e10000000000010233648576670767672695e5244515e686f7374736f6a63594f44382b1d0e0000000000001b30445769767b78716f77808689887b6a5744311c0800000b1c2b39454e535350493f3c474f5353514c453b3125190b00000000000000000000000e1f2e3a444c4f4f4e49423a3024170a0000000000001528394750514f4d4c4b4a4a4a4a494846423c342b1e0e0000142738475563718291826f5c4935210c000000162b4054666f6f6f707076899380797c8083868990a28d77634e3925212320180d000000000d1f314354657585939888786a5c50463e3933291b0d182023221c1206000000011324354453606b73787966514f64798e83828f9e9c8b796754412e190500000000000000000000000000000e1f30415263748683726f83978d7864503c2814000000000000000000000000000716253342516170808f828f8f7964503b261100000000000215283b4e6073868f7c6957453322110100000000000014283d52667b908c77634f3a261221364b60768c9c87715c47321c0700000000000000001f344a5f748982798591827261503f2d1b090000000000000000000000001c31465b6f8395988a868a82737b909086827970665a4d3e2f1f0e0000000000000000020d1924303a45505c6f869786786a5c4d3e2d1d0c00000000000000000b1a293745525d6872797d807d796f61514a463c2e1e0d00000000172b3f536575848b8c867c706253616f7b84888a88857d766c6155483b2c1d0e00000000001f34495e73887d8584838b8d8986848874604b37230e000417293a4957616868645c514c596368686660584e4336291a0b000000000000000000081b2c3d4c57606464635d564d4135281a0b00000000001c3144576466646361605f5f5f5f5e5d5b5750473c2c1b08001c3044566573829088766553402d1a06000000172c42576c8286868687888a9a8f9093928d8883869a917c67523e29140e0b0500000000000214253747576674838f97887a6e635a534d46392917050b0e0d0800000000000006172635434e575f63645b525d6974898e94a0998c7d6d5c4a382512000000000000000000000000000000021324354656677889806e7c9094806b57432f1b07000000000000000000000000000715243342516170808f98937d6954402b160100000000000c1e314456687a8c87746351402f1f0f0000000000000f24384d62778c927d6955402c1820364b60748b9e89735e49341f0a00000000000000001f344a5f748b7966748590806e5c4b3826140100000000000000000000001f344a5f73899e8d7a70778483768b907b7d8584776b5c4d3d2c1b090000000000000009151e23232c3c4d6074898e7a877a6b5c4b3b29180600000000000000000b192734404b555e65696b69655c51585f594c3c2a17040000001d32465b6f83949184848b8071626e808d8f827b797c8289807366594a3b2c1c0b000000001f34495d72848488868c7d7874706f7679644f3a250f000e2134465867757c7d786e615a6a767c7d7b756b60544738291a0a00000000000000001125384a5b697479797772695f534638291a0b000000001f344a5f747b79777676747474747372706b645a4a382410001f344a5f7383918b7a6a59473523100000000014293d516374838d929493918e9589837d78736d829596826c57422d1904000000000000000008192939485664717d88928c80766d67625746331f0a0000000000000000000000081725313b444a4e4f56636f7b8691a19d92877a6e5f4f3e2d1b080000000000000000000000000000000006172839495a6b7b8c7b74889b87725e4a36230f00000000000000000000000000000615243342526170829197836d59442f1b060000000000021426394b5c6e8090806f5e4d3d2d1e0f01000000000a1f34485d71879884705b47331e1f34495e73889d8b76604c37210d00000000000000001e33485d71867d696677898c7a685643311e0b00000000000000000000001f344a5f748b9f89735e667384828596826d727c897a6b5b4a3826140100000000000c1a273238383c4a596a7c9083707686796959473523100000000000000000000916222e39424a5354565450495567746a5a47331f0a0000001f344a5f74899e89746f79868070788c9582706664686e7782847668594a3a2918060000001b2f435565717473707c8c7d6e5e5a64685c4a36220d0015293d5063758692908c8070647789928987887d72645647382817060000000000060f182c40546779878f908d867c70645647382919080000001e32475a6c7a84898c8c8b8b8b8b898886807767533e2914001f34495d7286877a6c5d4c3b2a1806000000000e213446566570787c7d7d7b78898d7a68645e667b909a86705c47321e090000000000000000000b1b2a394753606b757d868b89827b75624d3823100c050000000000000000000007141f28303646566574828d98a1978a8075695d50413121110100000000000000000000000000000000000a1b2c3c4d5e6e808a7a80948e7966523e2b180700000000000000000000000000000615243443536272839488725d4935220f000000000000091b2d3f506172838d7b6b5a4b3c2d1f1206000000051a2e43586c82968a76614d39241c31465b70869a8e78644f3a251000000000000000001a2e43576a7d8674646b7d908573604d3b281502000000000000000000001f34495e73889d8a745f556576877d9288735f6a788879675644311e0b0000000007192a38454d4c4b5a687788877665677687766452402d1a0600000000000000000005112135485967685c4f444f60728576624d38230e0000001f344a5f748b9d88725c6775847d80948e7965524f535a64707d877768584736241200000013263847545d5f5e5e6e7d8d7c6c5b50534b3e2d1a07001b2f44586c80938a7b7c87806e809589767179848374655646352412010000000a18232931465a6f84978f7d797d888274655647372615040000182b3d4e5d686f73767879797979797877767467533e2914001a2e42566774736a5d4e3f2e1e0c00000000000517283847545d64676868666b7d8f8572604e61768b9f8a75614c38230e000000000000000000000c1b2936424e58616a70767d8f8070604c37262520180d00000000000000000000020c1a2d4052647484929f978c927d6d63584c47453c2f1f0d0000000000000000000000000000000000000e1e2f40506170828a7a8c95826e5a473624110000000000000000000000000000000616253544556575868c7764513e2a16010000000000001021324354647484897869594b3d3023150500000014293e52667b90917c68533f2b182d42576c8296917c67523d2813000000000000000014273a4d5f70808373677285907d6a5744311e0b000000000000000000001c31455a6f84988e78645058697a8c948f7b675a69798573604d3a27140000000010243748566161546978878577685859697a826f5c4936220e0000000000000000000011263b5064777a6d61575e6d7d8f78644f3a240f0000001f344a5f73899e8a745f5765758583988b7560524c464753606d7c8675645341301d0b0000091a293741484a49506071838a79675644382e200f00001e33485d728897836e6976867a839887705d6672808474645341301e0c0000071828353e40475c72889d8c76646a7582847465554433210f00000e1f303f4b545b5f6166746d6464646362605f58493724100013263949575f5e574c3f302110000000000000000a1a293641494f525353515f7083907d6b595c70869a8f7a66513d281400000000000000000000000b1825303b454e5b6d7d8f8573615243383b3a342b1e10010000000000000000000e22364a5d6f8292a09285798c836d584a565c594d3c2a170400000000000000000000000000000000000111223243536372838c879b8a776453412d180400000000000000000000000000000007172737475868798b826d5945301b060000000000000415263646566574838877695b4e413323110000000f24384c61758a97836e5a46311d293e53687c9195806b56412c1702000000000000000b1e30425262708085786d7b8f8874614e3a27140a000000000000000000172c4054687c9093806a574b5c6d80919884705d5c6d807d6a57422e1900000000152a3f536673725f69767d8a827467585c6e827965513d29140000000000000000000012273c52677b8b7d746b6c7b8c8975604c37220d0000001c31465b7085998e79655157677788998c766b66605951494f5e6d7d83705f4d3a27140100000b19252e33343442536577898573614e3b29160200001f344a5f748b947d6958687987829788725d5461708082705f4d3b281502001124364652564f5b7085998f796558637080837261503f2d1a08000212212e3940464a52667b7c6b584f4e4d4b4a453b2c1a0800091b2b39444a49443a2e21120300000000000000000b19242e353a3d3e3e4253657688887664566b809495806b57422e1905000000000000000000000007131e2b3f5265788b907c695644424c504f473c2e1f0f00000000000000000013283c5165798d9f908273728787715c5a68716b594734210d000000000000000000000000000000000000041425354555647383929e9483705b46301b06000000000000000000000000000000000919293a4a5c6d8088725d48331e090000000000000008182838475665728088796b5e51402d19000000091e32475b7084998974604c382325394e63778c99846e5945301b0600000000000000011324344452616e7985807586917d6a574331271c1004000000000000001125394d6174889a86725f4c50617385978d7a67556174806f5a442f1a00000000162b40556a7d7b685a626c7989857667576477806b56402b16000000000000000000000f24394d6173859188807b8b907d6c5945311d09000000182d41556a7d9294806c5849596a80948f84807b756d655c514f5f70827c6a5744311d090000000812191e27313947596c7d907d6b5945321f0b00001f344a5f7489947d68545c6d8080938c77624e516171837c6a5845321f0b00192d4053646b60566a809395826d5a52617080806e5c4a372411000313202a303031394e637888735e4a3838363431291d0e0000000d1c2831343430281d10030000000000000000000007111a21252829293647596a7b8d826f5d65798e9a86715c48331f0a000000000000000000000000081d32465a6e82958b76614d43525f66635a4c3d2d1b0a0000000000000000162c40556a8094968372636e838b75606678867663503d2916020000000000000000000000000000000000000717273746556473828a84766857432e1a0500000000000000000000000000000000000b1c2d3e4f617386715d48331e0800000000000000000a1a29384755626e7a837c6f5c47321d00000003182c4055697d928f7b66523e2a2034495d72879c88725d49341f0a00000000000000000616263443505c67727c867d9286735f4d44392e2215080000000000000a1e3144576a7d908f7b6855445567798b9885725f57686e62523f2b170000000012273b4f637685725f4f5b6b7b8d8675635c6f7161503d2814000000000000000000000a1e3144566674828e938e918372614f3c29160200000012263b4e6276899c8874614e5165798f958080898982786e63575263758773604c38230e00000000091a2a39444d52506175888875614e3a261200001e33485d728796826c575062748799927d6955435465768875614e3b2714001e33485d707d6b5864778c9d8a75624e52627284796754412e1a000f21313d4545423f4c61768c78634e3e3b373129201406000000000b151c1f1f1b150b0000000000000000000000000000060c101313182a3b4c5e6f808d7a685f73889c8b76624e3925100000000000000000000000000d22374b60758a9c87725d485061707b776a5b4a3927140100000000000000172c42576c83988e796655697d8f79646d8393806c5945311d0900000000000000000000000000000000000000091928374655636e747066594a3a2714000000000000000000000000000000000000000f2032445668746856432e1a050000000000000000000b1a293744515d676f746f5c47321d0000000012263b4f63778c96826d5844301c2f44586d82968c77624d38240f000000000000000000081726323f4a555f69737d898f7b6a60564b3f3326180900000000000215283b4e607285968572604e4a5b6d80918f7c685556595244352310000000000c2033475b6f837b68554d5e708393826e5b5d5e534333210d0000000000000000000002152738485664707b85898273645443321f0d000000000b1f3346596c8092917d6a584b5f73879a887375808a8c82756859586a7c78644f3a240f000000001326384856616763586c80927d6955412d1904001a2f44596d839786705c4757697c8f9985705d4947596b7d7d6a57422e19001f34495e738675615c6f8397927d69554455667784705d49341f00192c3e4f595a5754545f748b7b665353504c453c322414030000000000000000000000000000000000000000000000000000000000000c1d2f40516373858674636d8295917c68533f2b1602000000000000000000000010253a4f64798f9b866f5a45596d808f8979685644311e0a00000000000000172c42576c83988b756051657a8f7d686c82978874604c38230f00000000000000000000000000000000000000000a19283745515b5f5c54483b2c1c0a00000000000000000000000000000000000000031527394a595f584a39271300000000000000000000000b1926333f4a545b5f5d513f2c19000000000c2034495d71869a88735f4b36222a3e53677b90907b66513d2813000000000000000004152635434f585d5e5c606d8295877d73685d51433627180900000000000b1e314355677889907d6c5b4b506173869785715d48443f342617060000000004182b3f5366798572604e53677b908b76624e4942352515040000000000000000000000091a2a3946535e6870746e635546362514020000000003172a3d506275879988756351576a7d91907c696d788591867768595f6d685a4935210c000000061a2e425566747c715c64788d85705c47321d0800162b3f54687d928b76624e4c5f7285988c7864513d4e60737d6e59442f1a001b304356697c7d6b58677b8f9985705c48485a6d80705d49341f001e33485c6d6f6c6a6868748b7c6868686560594f4232200c00000000060c0e0c0700000000000000000000000000000000000000000000112234455667788a806f667a8f97836e5a46311d09000000000000000000000011263b50667b919b866f5a455a6d7c8c978673604d3a261100000000000000162b40556a80948b75604c61768b826c687c918f7b66523d29140000000000000000000000000000000000000000000a1927343e474a4841372a1d0e000000000000000000000000000000000000000000091b2d3b464a453b2c1c0a0000000000000000000000000916222d3740464a4840322210000000000c1d2e42576b80948e7965513d2c2c384d61768a94806b56412d1b11050000000000000e21334453616c7273706966798e8c80867a6e615345362616050000000002142637495a6b7b8c8a7969594b5668798688735e48332b2216080000000000001023374a5d70847d6b5b4c61768c917c67523c2f251708000000000000000000000000000c1b2835414c555c5f5b5145372818080000000000000d20334557697a8c92806f5d4e61738698877462667382908777665458554a3c2b19060000000a1f34495d7285836e595d72888a75604b36210c0011253a4e63778c927d69554255677a8d94826d59464457676b60513e2b160014273a4d60738775616074889c8b76604c3e51616a6152412e1a001f34495e738482807d7d7d8b7d7d7d7d7a756c614f3b27120000010e192023211b1003000000000000000000000000000000000000000005162738495a6b7c8d7b6a73889c8974604c38240f000000000000000000000011263b50667b919c87705b464f5e6d7c8d907c6955402c180400000000000013273c5165798e8e7965515d7287867061768a95826b57422d18000000000000000000000000000000000000000000000916222b3234332d24190c00000000000000000000000000000000000000000000000f1d2a323431291d0e000000000000000000000000000004101b242c3234332d22140400000004172a3b495165798d95806c5843424140475b708599856f5b46362e2316090000000000162a3d506271808789857b6f73889380768380716354443423120000000000081a2b3d4d5d6d7c8c8877695d535b697b7d6d5a46321e0f0500000000000000071b2e4154677a8a78695c60758b947d68533e2913070000000000000000000000000000000b18242f3941474a463e3427190a000000000000000316283a4c5d6e808f8d7b6b5b56687a8c92806e5d6371829284715f4b41392c1e0e000000000b21364b60768b836c575a6f848d77624c37220d000b2034485c70859885715d4a4b5e7084978975624e3a4954574f4233220f000a1d3044576a7d7d6a596d83978d77624c374350544f43342412001b30435666737b828486878e888787868483806a543f2a150000111f2c3538362e2112010000000000000000000000000000000000000000091b2c3d4e5f6f8088766c80958f7b67533e2b1602000000000000000000000f24394e63788e9e89735f4a404f5e6e809184705b47321d080000000000000e22364a5e728595826d5b596e8389745f6f8498846f5a442f1a0000000000000000000000000000000000000000000000050f181d1f1e191107000000000000000000000000000000000000000000000000000c171d1f1d160c00000000000000000000000000000000000811181d1f1e191105000000000a1f334759656672879b87725e5857565656556a7d9389745f504a4034261808000000071c3045596d80909387868b807082968672718082726252412f1d0b00000000000e1f2f3f4f5e6d7b89887a6f68666e808a75604b36210b0000000000000000001124374a5d6e8088796f6c7b8f907b67523d2813000000000000000000000000000000000006121c252d3234322b2216090000000000000000000b1d2e3f506170808f8979695b5d6e808f8c7b6b5b6374878e7a66523d281b0e00000000000a1f344a5f7489846f5b586d838d77624c37220d0005192d4155697c908d7966534154677a8e927d6a55413840413c31241504000114283b4e627586735f6b82978b76614c37333c3f3b3225160600142738485660676b6e70748b7d71706f6f6d6b61503c2713000c1e2f3d494e4a3f301f0f0000000000000000000000000000000000000000000e1f3041526273848473798d96826e5a46321e0a000000000000000000000c21364a5f73889c8d7864503c40516274878a745f4b35200b000000000000071b2e425567798b8b7867576a808d7863697d9287705b46301b000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000d22374c61767b7880958d796f6e6c6b6b6b6a6a788d8e7968655d52443625130000000a1f34495e73889c88747078867d7b908d7965708082705e4c3a2714010000000001112131404f5d6b77838c837c7b808d8975604b36200b000000000000000000081b2d3f516272828c848289958774614d38240f000000000000000000000000000000000000000912191d1f1d170f05000000000000000000000010223242526170808e88796c616170809589796b5d6a7d93806b56402c16010000000000071c31455a6d828a76645c708689745f4b36210c00001226394d6073869683705e4b4a5e7185897d6b56412c2b2c281f14060000000b1f32465a6d827b6772859483705c483320272a272014070000091b2a38444d5256595f748b7d685b5a5a5856504333200d0015283b4d5b635d4e3d2d1d0d0000000000000000000000000000000000000000011223344555667688827186998975614d39261200000000000000000000071c3044586c809393806b58453444576b808d77624c37220d000000000000001326384a5c6d7d8e867567667a907c6764788e86705b46301b00000000010a11171b1d1d1d1b1915110b040000000000000000000000000000000000000000000000000000050d13181b1d1d1d1b19140f0800000000000000000000000000000711191c1d1a140b0100000000000000000000000000000c21364b6074878f8c9794878483838282828080808793807d796f6254432f1b0700000a1f344a5f748b9b866f5b6775857a8a94806b6171837c6a5744311d090000000000031322313f4d5a66707a83888b8984796a5945311d0800000000000000000000102233445463717d868b8a8377685744311e09000000000000000000000000000000000000000000000000000000000000000000000000000000041425344352616f7c898a7d75727788828e897b6f677990836c57422c1702000000000001162b3e5164758582736f7a8c806c5945311c0800000a1d314457697b8d8a79644f41546778756d604f3c281617140d020000000003172a3e5265798472809085756553402d191315120c03000000000c1b2731383e41485e73887c6752454443413d33251503001c3044586b786c5b4b3b2b1c0e000000000000000000000000000000000000000005162737485969798a807d91917c6955422e1d0b0000000000000000000115293d506376889988756352443e51667b8d77624c37220d00000000000000091b2d3e4f5f6f7d8b85776c768b806b63778d836d58442f1900000007131e262c30323232302e2a251f18110800000000000000000000000000000000000000000000040f1821282d30323232302d29231c130a00000000000000000000000918242d32322e281e130800000000000000000000000000081d3145586977838a8f9d999597979797959493918f978e8b8982725e49341f0a00000a1f344a5f74899c87725d57677787859a86715d65768773604d3924100000000000000413212f3c48545e676d72747370675b4d3c29160200000000000000000000041626364554606a7174746f66594a3a28150200000000000000060f15191a1a160f070000000000000000000000000000000000000000000000000716253443515e6b7680898a888a85757c888d837c8092806a55402b16010000000000000e213446576674808786888070614f3d2a160200000114273a4c5e6f7b766b5d4a384b5b63605a504232200d0000000000000000000f22364a5e7287858f82756657483624110000000000000000000009141d242931465a6f847b66503b2f2e2c2821150700001f344a5f7388796859493a2c1d0f0100000000000000000000000000000000000000091a2a3b4b5c6c7c8c82899885715e4c3a2814000000000000000000000d203346586a7b8c92827061575355677b89745f4a35200b00000000000000000f213141515f6d79858a807787847074828d7a67533f2a160000091825313a404547474746433f39332c241b1208000000000000000000000000000000000000000815212b353c414547474746423d372f261c1105000000000000000006172736414747433b3125190b0000000000000000000000000215283a4b5a666f7582958d8082828282807d7c7b798f897473726e5c48331e090000071d32475c70869a8b76614d59697a86978c7763596c807c68533e29140000000000000003111e2b36414b53595d5f5f5b544a3d2f1e0c00000000000000000000000009182736434e575d5f5f5b53483b2c1c0b000000000000000d19222a2e2f2f2a231a0f02000000000000000000000000000000000000000000000007162533414d59636d74787a7972676b7680868989837463503b271200000000000000051728394857636c7274736c61524332200d000000000a1d2f40515e66635a4e3f2d3d494e585f594c3c2a170400000000000000000b20354a5f73878d7d70645748392a19070000000000000000000000010910172c4054677a78634e39241817140d040000001f34495e7287877767584a3b2d1f0f00000000000000000000000000000000000000000c1d2d3e4e5e6e7d8d8d9e8e7b6957432f1a050000000000000000000417293b4c5d6d7c8a8f80736b68697283826d5a46311c08000000000000000003132332414f5c67727a83898b8a8689887d6e5d4a3724100007182736434d555a5c5c5c5b58534e4840382e251a0f0400000000000000000000000000000000081726333e4850565a5c5c5c5b57524b43392e2216080000000000000011233545535c5c574e4336291b0c0000000000000000000000000b1d2d3c48535b667a8f927d6b6b6b6b6a69686674888e79655c5b503f2d1905000001192d42576c8095907c67534c5d6e8092927c685463767767533e29140000000000000000000d19242e373f44484a4a4640372d1f110000000000000000000000000000091825313b43484a4a4740372b1d0e000000000000000e1d2a363e4344443e372c2013040000000000000000000000000000000000000000000000071523303c4750595f6466645f5659636b7174747065564533200c00000000000000000b1b2a394550585d5f5e584f43342514030000000000112232414c504f53534b3e32435567746a5a47331f0a00000000000000000b20364b60758b8872605346392a1b0c0000000000000000000000000000001125384b5d6f71604b36210d000000000000001b2f43576a7c8f867668594b3d2c1a0700000000000000000000000000000000000000000f203040505f6e7d8c978f82705b46301b06000000000000000000000c1d2f3f4f5e6b78838c87807c7d85837463513e2b1602000000000000000000051423313e4a555f676e747d8c7978736b5f50402e1b0800122536455460696f727272706d68625b544b41372d21150900000000000000000000000000000617263544505b646b6f727272706c665f564b4033261708000000000000192d40536370716a605447392a1b0c0000000000000000000000122232404b52545f73889884705b5656545453596d8394806a56463e3222100000000014293d51667a8f97836e5a465163768b97836d5959666659493724100000000000000000000007121b242b30333434312c241b0f0100000000000000000000000000000008141e282e333434322c24190d00000000000000091b2c3b4852585a59524a3e31221303000000000000000000000000000000000000000000000005121e2a343d454b4f504f4b43464f575c5f5f5b5347382816040000000000000000000c1b28333d44484a49443c322516070000000000000414232f38485967685c4f444f60728576624d38230e0000000000000000091e33485c70858e7965503b281b0c00000000000000000000000000000000081b2e40515d5e5343301c080000000000000014273a4d5f7183948677695b4a36220e00000000000000000000000000000000000000000212223241505f6d7a837c706253402c18030000000000000000000000112131404e5a6670777c8282807a7165564634210e00000000000000000000000513202c38424b535a65798d7b665f584e4132221000001b2f425363717c8488888886827c7770675e544a3e33261a0c000000000000000000000000001224354453616e77808588888886827a72685d51443526170600000000001e33485d7082867d72655748392a1b0b000000000000000000091c2f40505d666a666d82958a76614d40403f3f53677b9085705b4732211304000000000e23374b5f73889b8a76624e485d71879b88725e495252483b2c1a080000000000000000000000000810161b1e1f1f1c181108000000000000000000000000000000000000020b141a1e1f1f1d18110700000000000000001326394a59656d6f6d665c4f40312110000000000000000000000000000000000000000000000000010c17212a31363a3b3a362f333b42474a4a474036291a0a00000000000000000000000a1621292f333434302920140700000000000000000512263b5064777a6d61575e6d7d8f78644f3a240f000000000000000004192d41546779887a65503b26110000000000000000000000000000000000001022324048494235251401000000000000000b1e30425465758695887965503b261100000000000000000000000000000000000000000004132332414f5c676c727564513e2915000000000000000000000000031322303d49535c63686b6b6f7768554738281705000000000000000000000000030f1b252f383f4a5d6f80806a55443b3023140400001f34495e718290837978797c82888b847a71675c5044372a1c0e00000000000000000000000a1d2f41526271808b9489827d80858d8f867a6f61534434241301000000001f34495e71808c9083756657483929190800000000000000001024384c5e6e7a8072667a8f917c68533f2b2a384d61758a8a75614d38240f0000000000081c3044586c8093927d6a5744586d82958c77624d3d3d362b1d0e000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001b2f43566877828682796d5e4f3f2e1d0b00000000000000000000000000000000000000000000000000040e161c21242624211c20282e323434322c24190b00000000000000000000000000040d151b1e1f1f1b150d030000000000000000000012273c52677b8b7d746b6c7b8c8975604c37220d0000000000000000001225384a5b6a746f5e4b37230e0000000000000000000000000000000000000414222d33342f25170800000000000000000113253647586776848a77634e3a25100000000000000000000000000000000000000000000006152332404f5f6f80826c57422c170200000000000000000000000004121f2b3640484f535c6c7c85705b46301b0a00000000000000000000000000000008131c242e4051616d7468543f2a1f13050000001f34495e73889c88726364686d747c878e84796e6155483a2c1e0f0000000000000000000114273a4d5e7082909585766d686a707a88968d8071625242301f0d000000001b2f4253616e7b8a9385756657473626150300000000000000152a3f53687b8d846f5f738897836e5a45311e32465b6f83907b67523e291501000000000115293c5063768a9a8773614e526577888e7965503b2823190d000000000000000000000000060f161918140d030000000000000000000000000000000000000000000000060a0c0d0d0b080300000000000000000000001f34495d728688828b8b7c6d5d4c3a291705000000000000000000000000000000000000000000000000000001080c0f110f0d070c14191d1f1f1d18110700000000000000000000000000000000000000000000000000000000000000000000000f24394d6173859188807b8b907d6c5945311d09000000000000000000081b2c3d4c585f5c51412f1c08000000000000000000000000000000000000000511191e1f1b12070000000000000000000007192a3a49586671746c5b4834200c0000000000000000000000000000000000000000000415243341505e6d7d8e806b56412c170200000000000000000000000000010e1924303e4d5b6a7a8a836f5a45301b0600000000000000000000000000000000000811233342505a5f594a39251101000000001c30455a6f84998c7763505359606a74808d8c807366584a3c2d1e0e0000000000000000081c304356697c8e9e8a77665954555d697888999082705f4e3c2a170400000012253543505e6c7a8a94857565544332210f00000000000000172c42576c8297856f5a6d82958974604b37232b4054687c91826d58442f1b0600000000000d2034475a6d8091917d6954485a69757875644f3a2510070000000000000000000000000917232a2e2d2820150800000000000000000000000000000000000000030d141b1f222222201d18110a0100000000000000001f344a5f748b7c6d7a8a8c7a695846342210000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000a1e3144566674828e938e918372614f3c291602000000000000000000000f1f2e3b454a483f3223120000000000000000000000000000000000000000000000000000000000000000000000000000000c1c2b3a48545d5f5a4e3e2c19050000000000000000000000000000000000000000000e213342515f6e7c8c887663503c28130000000000000000000000000000000a1d2f404e5c6b79898c796653402b1703000000000000000000000000000000000000051524333d464a463b2d1b090000000000172c40556a8094927c68533f454d57626e7b8a918476685a4b3c2c1c0c000000000000000f23374b5f73869996836e5b493f414b5a6a7b8d9f8f7d6b594633200d00000007172632404e5c6b7a8b93837261503e2c1b09000000000000172c42576c829788735e65798e8f7a66523e2925394e62768a87725e4a35210c000000000004172a3d506272827d7465523d4b59616360574734210c000000000000000000000000071827353e43423c3226170800000000000000000000000000000000000a1620292f3437373735322c261d1409000000000000001f34495e73887c676b7c8d887564513f2d1a0800000000000000000000000000000002070a0a070000000000000000070c0e0e0d0904000000000000000000000000000410181c1c170f030000000000000000000000000000000000000000000002152738485664707b85898273645443321f0d000000000000000000000001101d283134332d221405000000000000000000000000000000000000000000000002080b0a050000000000000000000000000d1c2a3741484a463d30200f0000000000000000000000000000000000000000000014293d50616f7d8c8e7c6b594633200d0000000000000000000000000000001125394d5e6c7a8a91806e5c4a37241000000000000000000000000000000000000000000615212a3134322a1d0f00000000000012273c5065798f97826d5844313a45515e6b7989958778695a4a3a2a190800000000000014293e52667a8fa3907b67533f2b2e3c4c5d7083969b897663503c291400000000081522303e4d5d6d7d8e90806d5c4a382613010000000000152a3f53687c908d79655f738895826c58442f1e33475b6f848d78644f3b27120000000000000e20324454636c69615647353d474c4e4c45392b1c0c000000000000000000000000122536455258575044352616050000000000000000000000000000000c1a27333c43494c4c4c4a46403930261a0e0100000000001c3045596d8283705f6f8293826f5c4a37241100000000000000000000000000040e161c1f1f1b1409000000000a141c212323221e181006000000000000000000000514222c31312b21130400000000000000000000000000000000000000000000091a2a3946535e6870746e63554636251402000000000000000000000000000c151c1f1e19100400000000000000000000000000000000000000000000000b151d201f19100300000000000000000000000c19252e3334322a1f120200000000000000000000000000000000000000000000172c42576c808e8f806f5e4d3b29170400000000000000000000000000000013283e53687c8b92837262513f2d1a07000000000000000000000000000000000000000000040e161d1f1d170c000000000000000d22374b6074899c88725e49352833404d5b6a7989968877685847372614030000000000192d42576c8295a08b76614c38241e2e405366798da293806c58432f1b07000000000412202f3f4f5f7082928b79675543301e0b00000000001025394d61748895826d5a6c809587725e4a36212c4054687c917d6a55412d1904000000000003152636455157554f4f4c444e5a61625e55493a2a190700000000000000000000001a2e4154636d6b61534433221000000000000000000000000000000a1a2a38454f585d6162625f5b554d43382c1f100200000000162a3e516475867d6e6476898c796654412e1b0800000000000000000000000816212a3134343026190a00000e1b273036383837332c23190d0000000000000000001123323f46463e32221000000000000000000000000000000000000000000000000c1b2835414c555c5f5b51453728180800000000000000000000000000000000000000000000000000000000000000000000000000000000000000000d1c283136342d21130200000000000000000000000812191e1f1d170e020000000000000000000000000000000000000000000000172c41566a7d898070615141301e0c0000000000000000000000000000000013283d52667a8a827364544433210f00000000000000000000000000000000000000000000000000000000000000000000000000081d31465a6f84988d78634f3a26222f3d4c5b6b7b8c96867665544332200f00000000001c31465b70869a9c88725d48331e1123374a5e72879b9b87725e4a35200c0000000000021121314152637587978572604d3a271401000000000a1e3144576a7c8d8a776465798d8d7964503c2725394d61758a85705c47331f0a0000000000000918273441515d646460565c6c76777267584836231000000000000000000000001f34495d718280716251402e1b09000000000000000000000000041628384856626c7276777774706960554a3d2e2010000000000e213446586776857d726c809284705d4a37241103000000000000000000071726333e454a4943372817050d1d2c39434a4e4e4c473f362a1d0f01000000000000061a2e40505b5b50402e1c0900000000000000000000000000000000000000000000000b18242f3941474a463e3427190a00000000000000000000000002080b0a06040a0b09030000000000000000000002080b0a0500000000000000091b2b3a454b483f31200e0000000000000000000000000000000000000000000000000000000000000000000000000000000000000013273b4e6170746d61524333231201000000000000000000000000000000000f23384b5e6e746f63554636261504000000000000000000070b0b0904000000000000000000000000000000000000000000000002172c4055697d93927d6954402c171f2e3d4d5d6d7d90948372614f3e2c1a07000000001e33485e73889d9b86705b46301b071b2f43586c8296a28d78634e39240f000000000000031323344557697b8d907c6a5744311e0a000000000215283a4c5e6f808f827060728794806a55412c1e32465a6e828b76624e392511000000000000000f23384c5e6f7879736865798a8d857666533f2b1601000000000000000000001f344a5f748a90806f5d4b3826130000000000000000000000000d20334556667480878c898989847c72675a4c3e2e1d0c0000000517293a4959677480847975898d7a6653402d201509000000000000000012253544515a5f5e554634220f192b3b4a565f6363615b53483b2d1f0f0000000000000a2034495d6e6e5d4b39261401000000000000000000000000000000000000000000000006121c252d3234322b2216090000000000000000000000000a151d201f1a181f211e170c00000000000000000b151d201f19100300000000001226384958605c4f3d2a1703000000000000050d121414110c04000000000000000000000000000000000000000000000000000000000c1f3243525c5f5a4f43342515050000000000000000000000000000000000081b2e40505b5f5b524537281908000000000000000006121b20201e1912080000000000000000000000000000000000000000000012263b4f64788d98846f5a46311d101f2f3f4f6072849690806d5b49372412000000001f344a5f748b9f9b866f5a442f1a0515293e53687c92a6917b66513c2712000000000000000517283a4c5e7083968773604d3a271300000000000b1d2f40516170808d7d706c8297846e58432e192b3f52667a8d7c6854402c180400000000000012273c51667b8d8f8677667b8f9c95836d58432e1903000000000000000000001d32475b7085988d7a685542301c09000000000000000000000014293c5062748592877a73747a859085786a5c4c3b2918050000000b1c2b3b4956636e7983828094836f5c493d32271b0f010000000000001b2f4253626d737363513f2d1b2336485968737878766f65594b3d2d1d0c00000000000b20354b5f747a685643301e0b000000000000000000000000000000000000000000000000000912191d1f1d170f050000000000000000000000000c1b273136342d2b333632291d0e0000000000000d1c283136342d211302000000001a2e425567756d5946331f0c00000000000d1821272a2a2620170c0000000000000000000000000000000000000000000000000000000214253440484a463d32251607000000000000000000000000000000000000001122323e474a473f3427190a00000000000000000616242f3536332d251b100300000000000000000000000000000000000000000c21354a5e72889c8975604c38230f112132435466788b9c8b786654412e1b080000001f344a5f748ba09b866f5a45301b0610263b50657990a5937d68533e291300000000000000000b1c2e415366798c907d6956432f1b0800000000001122334352616f7c8882798095836e58432e1923374a5e7184846f5b47331f0b00000000000012273c51667b8e9b95836c707d898c826d58432e180300000000000000000000182d4155697c919885725f4c39261200000000000000000000001a2f43586c80928c79685e5f6773829089796a594735220f000000000d1d2b3945515c66707a858f8c7864594f44392c1f120400000000001f34495e718089826e5c4a38262a3e526577868e8a888377695b4b3b2a190700000000091e33485d728673604d3a2815020000000000000000000000000000000000000000000000000000000000000000000000000000000000000000091a2a39444b49403d484b463b2c1b0a00000000091b2b3a454b483f31200e000000001e33485d718576624f3b291605000000101e2b353c3f3f3b332a1e100100000000000000000000000000000000000000000000000000000716232d3334312a20140700000000000000000000000000000000000000000413212b3234322c22170a000000000000000000122434424a4b4841382d21130400000000000000000000000000000000000000071b2f44586d82968f7a66523e291503142537495b6d80939683705e4b3825110000001f344a5f748ba09c87725d48331e090f243a4f64788fa4947d68533e2913000000000000000000112436495c6f839686725e4b37230f00000000000515253443515e6a757d868a887a6854402b171b2e415466778576634e39240f0000000000000f23384c5e6f7d878a806b606c74777264513e2a15010000000000000000000012263a4e6175899c8f7b6855412e1b08000000000000000000001e33485d71879985705c4a4b5562718294887664513e2b18040000001121303d485055565d6771849482766c61564a3d30221303000000001e33485d7186998c79675543312e43586d82958a77737c887969594836241200000000051b30455a6f847d6a5744311e0b0000000000000000000000000000000000040a0d0d0b060000050a0d0d0c08030000000000000000000000001326384856605d504e5b60594a382716040000001226384958605c4f3d2a17030000001f344a5f748b7d6b594634231302000b1d2e3c485054544f463b2e1f0f0000000000000000000000000000000000000000000000000000000611191e1f1c160e0300000000000000000000000000000000000000000000030f181e1f1d181005000000000000000000001a2e41525e605c544a3e312314040000000000000000000000000000000000000015293e52677b9095826c58432f1b07081a2c3e5163768a9d8e7a6754412d190600001e33485e73899e9f8b75614c38241111263b50657990a5937c68533e2813000000000000000000071a2d4053677a8f8e7a66523e2a1501000000000007162533404c58616a7174736b5d4b3925111224374859677273624e39240f000000000000081c2f41515f6a72746f6150595f625e544635220f00000000000000000000000a1e3245596d80949885715e4a372410000000000000000000001f344a5f748997826c574238445364768994826e5b47331e0a00000a1d2e3f4e5a646a6b6961687c918d878073685b4e40312111010000001a2e42566a7d92978572604e3c2f445a6f869b88725f6b7a88766553412f1d0a00000000172c4055697d8774614e3b28150200000000000000000000000000000510191f2222201b1311191f2222211d170f06000000000000000000001b2f435666746e5d5c6c756756453322100000001a2e425567756d5946331f0c0000001e33485d72888875635141311f0d0015283a4c5a64696863594c3d2d1c0a000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001f34495d707570675c4f41322212010000000000000000000000000000000000000f24384c60758a9b87725e4a36210d000f2134475a6d82949884705d4935210d00001c32475c71879ca4907b6754402e221f2b3f53687c92a48f7965503b2611000000000000000000001024374b5f728795826d5844301b070000000000000715222f3a454e565c5f5e584d3f2e1c0907192b3b49565d5e5545331f0b00000000000000122332414e575d5f5b5243454b4c4a4237281705000000000000000000000002162a3d5064778b9f8d7a6653402c19050000000000000000001f34495e738997826b56402b3647596c80938a76624d39240f000013273a4c5d6c7780827d7569758a907c7d86796c5e4f3f2f1e0d00000013273a4e62768a9e907d6c5a483743586d83978a75605c6c7d83715f4c3926130000000012263b4f63788d7d6a5744311e0b000000000000000000000000000816222c333737352f26242d34373736322b23190e0200000000000000001f34495d72857a696579857462513f2e1c0a00001e33485d718576624f3b29160500001b2f44586d8293826f5f4f3c2814001c3044576a777d7d766a5b4b3927130000000000000000040c10100d0a07060503030202020202010000000000000000000000000000000000000000000000000001070c0f0f0f0f0d0905000000000000000000000000000000001f34495d7080857a6d5f5040301f0e000000000000000000000000000000000000091d32465b6f83978d7964503c28130004172a3e5164788ca08c7864503c281400001a2f44596e8498ab9783705d4c3e36343a485a6e83979e8a75614c38230e00000000000000000000081c2f43586c809588735e4a36210c0000000000000005111d28323b42474a49443b2f211000000d1d2c38424949433727160300000000000000051423303b43484a474034313537352f25190a000000000000000000000000000e2134485b6f829696836f5c4834210d0000000000000000001d32475c718698836d59442f293c5063788d917c67523d281300051a2e4356697b8a948f8d87796f8498846f77867c6d5d4d3c2b190700000b1f33465a6e83979b89776654433f53687c928f7b67545f70837c695643301c090000000c2035495d72868874614e3a2714070605020000000000000000071726343f484c4c4a43393641484c4c4b463f362b201306000000000000001f34495e73888775667b8f806e5d4b39271401001f344a5f748b7d6b5946342313020015293e5165788b8e7d6b57412c17001f344a5f7388949288796856432e1a000000000000000b17202526221f1c1b1a191917171717171715110c0500000000000000000000000000000000000000050e161c2124252524221e19130b02000000000000000000000000001a2e41516172858c7d6e5e4e3d2c1a08000000000000000000000000000000000003172b4054687c9294806b56422e1a05000e2135495d70859994806b57432e1a0500172c41566b8095aaa08d7b6a5b514b4a4d5766778a9e95826e5b46321e09000000000000000000000014293d51657a8f8e78644f3a26110000000000000000000b151f272e32343430281e11030000000e1b262e34343026190a00000000000000000005131e282f3334322c221c2022201b1308000000000000000000000000000005182c3f5266798d9f8b7764503d2916020000000000000000192e42576b809387725f4b382535495e738895806a543f2a1500091e33485d7186998b7a778089797d928b766775857b6b5a48362411000003172b3f53677b909b8683726150404e62778b97836f5c53657786725f4c38241000000d19232e43576b80917d6a5744311d1d1c1a160f0600000000000113253544525c61625e564b47535d6162605a52493d312415060000000000001b3044576a7d8f826f71848c7a685644311d09001e33485d72888875635141311f0d000e2235495b6d7d897d6a56412c17001f344a5f74899ea69886725d48331e000000000000091a28343a3b373432302f2e2e2c2c2c2c2c2c2a2620180f05000000000000000000000000000000010d18212a3036393a3a3a37332e271f150c010000000000000000000000112333445567798c8d7c6c5b493725130000000000000000000000000000000000001125394e62768b9a86715d4834200c0006192d41556a7d939a86715d48341f0a0013283d52667b90a59a8889796d65605f616975859599897765523f2b170300000000000000000000000e23374b60758a927d68533f2a1500000000000000000000020c13191d1f1f1b150c01000000000009131a1f1f1b14090000000000000000000000010b141a1e1f1d1810080b0d0b070000000000000000000000000000000000102336495d70839694806c5945311e0a000000000000000014283c506375888e7a6754423131465b708795806a543f2a15000a1f344a5f748b9b8670636e7b87778c927d69667688776653402d1a0600001024384c6075899d8b82806e5e4f485c71869a8b77634e5a6d807b68533d2813000b1c2b363d3e5064788d8773604d3a3232312f2b23190c000000000b1e304353626f767772685c5665707677746e655b4f4233241506000000000015283b4d5f71838d7a67788a8673604d38240f001b2f44586d8293826f5f4f3c28140006192b3e4f606d746e604e3b2713001d32465a6e80919d9a88735e48331e000000000000142738464f504c4947454443434242424242413f3a342b2216090000000000000000000000000004121f2a343e454a4e4f4f4f4c48423b32281e120600000000000000000000051526384a5c6e82948a78675542301d0a00000000000000000000000000000000000b1f33485c7085998c77634f3b2713000012263b4f64788da08c76624d38230e000f24384d61768b9f9b877d8a80797574767c879495897a6b5a4836230f000000000000000000000000081d32475c708696826c57422d1800000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000071a2d4053667a8d9c8875614d3a261200000000000000000c20334658697a8c8572604f3e32475c7187907c67523e2914000a1f344a5f748b9b86705b5d6c7c838798846f5b697b83705d4936220e0000091d31465a6e8397917c867c6d5e50576c8297927d68535062757665513d28130015283a485253505d7286907c695647474746443f362a1b0c00000013273a4d6071828b8d867a6c6173838c8d8a82786d60514233241303000000000b1e304254667789846e6c7d907b66503b26110015293e5165788b8e7d6b57412c1700000f2031424f5a5f5b5042311e0b00172b3e5162728089887b6b5844301b0000000000001c3044566365615e5c5a5a5858575757575756544f483e3427190a0000000000000000000000041422303c4751595f63646464615c564e453b3024170900000000000000000000081a2d3f5164768a9685725f4d3a2714000000000000000000000000000000000004192d41556a7d92937d6a56422e1905000c21354a5f73899e907b66513c2712000a1e33475c70859aa18c777782898b8b8b90908b83776b5c4d3c2b190600000000000000000000000003192e43586c8297846f5a45301b0000000000000000000000000000040c13181b1b1b1a16110a020812181b1a140b0000000000000000000000020c13181a1b1b18130c04000000000000000000000000000000000000000000001124374a5d708497907c6955412e1a06000000000000000416293a4c5d6d7d8e7d6d5c4b3b4b5f74898272604c39241000091e33485d72879c89745f4e5e6e8082978a75615d70837965513d2813000002162b3f54687c92978278897c6e61586b829796826b5646596666584836220e001c314558666865626b809486725f5c5c5c5b595248392a19080000192e42566a7d8f8f82838b7a6a7d928c7b7880897d7061514231200f0000000001132536485a6c80806c6073877865503b2610000e2235495b6d7d897d6a56412c170000031423323e464a473f32231302000f21334454626d73736a5d4d3b28150000000000001f344a5f73797673706f6f6e6e6c6c6c6c6c6b68635b51453728170500000000000000000001122232404d5a646d737879797976716a61584d413427190a00000000000000000000102234475a6d80938f7c695643301c0900000000000000000000000000000002101c263b4f63778c9a86715d4834200c00071c31465b70869a937d69543f2a140004192d41566a7d93a7927d696d74797c7d7d7b766f655a4d3e2f1e0d0000000000000000000000000000152a3f54697d9487715c47321c000000000000000000000000020d1720272c3030302f2b251e151b252d302f281d0f0000000000000000000a151f272c2f30302d2720170c000000000000000000000000000000000000000000081b2e4154677a8d9985715d4936220e00000000000000000b1d2e3f4f5f6f7d8b796959494a5f71746e635443301d0900041a2f44596d83978e7965515061738596907b665366797d69543f2a1500000011253a4f64788e9c87727b8b7d736d71859997826b5640495252483a2a1906001f344a5f747c797774788d8f7b72727272706e65574837251200001d32475c71869985706f7b887783978770636c77858070604f3e2c1a080000000007192b3c5064737061586b746b5b4935210d0006192b3e4f606d746e604e3b27130000000514212b3234322c22140500000416273644515a5e5e574d3f2f1e0c0000000000001e33485d71868c8987868484848383838383827d776e63554634210d0000000000000000000c1e2f40505e6b7782888d908f8d8b867d756a5f52453728190a00000000000000000005182a3d5063768a9986735f4c38251100000000000000000000000000000010202e3941485d71869a8c7763503b27130001182d43586c839796826b56402b16000013273b4f63778c9f9884705c606568686866625b53483c2f201101000000000000000000000000000013283d52677c9288725d48331e000000000000000000000005131f2a343b4145464644403931282c384146433a2d1d0b000000000000000c1a27323b41444645413b332a1e110400000000000000000000000000000000000000001124374a5d7084978d7965513e2a1602000000000000000010213141516070808877675747535f5f5a5145362514010000162b3f53687c9194806b58445567798d95826c575d6d6d5f4e3b26120000000c21364b60768ba08b766c7b8b88838590a1927d68543f373d3d362b1c0c00001f34495d72868f8d8b898e9888888888888782756654412d1803001f344a5f748a95806a5d6c7d83839787715c5a6674857d6d5b4a37251300000000000d213447565f5c524e5b5f594d3d2c190600000f2031424f5a5f5b5042311e0b00000000030e171d1f1d18100400000000091826333e454949443b2f2111010000000000001a2e43576a7c8c969b9b999998989898989795928b827364503c271200000000000000000417293c4d5e6e7c899491867d7878798086887c70635546372819090000000000000000000e2134475a6d80938f7b6854412d1906000000000000000000000000000b1d2e3e4b555b5c6a7d9393806a56432e1b0700162b40566b809598836c57422c1700000c2034485c7084989f8b77634f50535353514d473f362b1e110200000000000000000000000000000011263b50667a9089735e48331e00000000000000000000051423303c474f565a5b5b59544d443a3d4a545b574b3a2714000000000000091a2a38454e565a5b5a5650463c2f22130300000000000000000000000000000000000000081b2e4154677a8d95826d5945321e0a000000000000000003132332425161708285756554444a4b463e342718080000001025394e62768a9b87735f4b4a5e73889a86715c4f5a594f41301e0b0000000a1f34495e73838c8a75606c7a87929a9d988875624e3a25282823190d0000001a2e42566877848b909394999d928f8c888582806f5a442f1a05001f344a5f748b947d68535f708380948a75614c56667687796755422f1c090000000005172938444a48403e474a463c2f1f0f000000031423323e464a473f322313020000000000000000000000000000000000000916212a31343430281e11030000000000000014273a4d5e6e798286898b8c928a88878482807c7b797968533d281300000000000000000c203346596b7c8d9a928273696463656a727c87827364554637261605000000000000000004172a3d5063778a9884705c4935220e0000000000000000000000000014273a4c5c69707266778c9a86725d4a36220e00152a3f546a809598836c57422c17000005192d4154687c8fa3927d6a57433e3e3e3c38332c23190d00000000000000000000000000000000000f253a4f64799089735e48331e00000000000000000003142332414e59636a6f70706e6861574c4d5b67706957422e190400000000021527384856616a6f706f6a63594d4031211000000000000000000000000000000000000000001124374a5d7084968975614d392612000000000000000000051424334352627284837261514035312b221609000000000a1e33475b6f83968f7a6753455a6f84988b75604c45453d31231301000000071b304355647077766b5a5c697580868885796a594633281d130e07000000001326394a596770767b7d7d8c97827976736f6c6a6454402c1803001e33485e738895806b565365778a968f7b67534858687a85725f4c38251100000000000b1a273034332d2b3334312a1e1101000000000514212b3234322c2214050000000000000000000000000000000000000000040e161c1f1f1b150b0100000000000000000b1e3040505d666c70737476888676706f6c6a686664645c4b382410000000000000000014283c506376899a9a877463564f4e50565f69758283736454443423120000000000000000000e2134475a6d82958c7865513e2a16030000000000000000000000061b2f43576a7a857d6971869a8d7965513d291501152a3f546a809597836c57422c170000001125394c607386999a86725f4c38292927241f1810060000000000000000000000000000000000000e23384e63788f88725d48331e00000000000000000010213242515f6c7680848787837c746a5e5a6b79856f5a442f1a05000000000c1f32445666747d84878580766b5e4f3f2e1d0b00000000000000000000000000000000000000081b2e415466798d907c6955412d1906000000000000000000061525344455657689806f5d4b3a27170f05000000000004182b3f53667a8d9783705d4b55697c8e8f79644f3a302a201304000000000014263746535c62615a4d4c58626b707270685c524d453b2e20110100000000091e33485c6e716e6b687084988b7766666564625a4f40301f0d001b30455a6f8499846f5a485a6d809296836e5a464b5c6e827b6854402c1800000000000009141c1f1e19181e1f1d160d01000000000000030e171d1f1d181004000000000000000000000000000000000000000000000000000000000000000000000000000000011222323f4a52585c5e5f6c809383715e575553504f4f4a3e2e1c090000000000000000192e42576b8093a6927d6a57453a383c434c5763708083726252412f1e0c000000000000000004182b3e5165788c95826d5946321e0b00000000000000000000000a1f34495e7287917b666a7d9295826c5845311d09172c41566b829695806b56402b16000000091d304356697c8fa28f7b6754412e1c120f0a0d1213110a010000000000000000000000000000000f253a4f64798f87705c47321c0000000000000000081b2d3f50606f7d89938e86838387877b6f647789846e58432e19040000000013273b4e6173859291878487897b6d5d4c3a281604000000000000000000000000000000000000001124374a5d70839685705d4935210d000000000000000000000717273748596b7d8d7a695643301c08000000000000001024374a5d7083968d7a67534c5e6f7c827a66503b26160e020000000000000919283640484c4c4c4b42464f575c5c6267686761584c3e2f1f0d000000000a1f344a5f748783827d7c7c9194807b7b7979766d5e4e3c291500182c41556a80948974604c506275889b8a76624e3f516376836f5a442f1a00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000414222d373e4347495064788c8e7a6754403d3b3a3a362d20100000000000000000001d32475c70869aa18c77624e3a282327303a4653616f80806f5e4d3b29170500000000000000000f2235495c6f83968975614e3a271300000000000000000000000a1f344a5f748b917c6763778b9c8874604c3925111a2f44596e8398927c68533e29140000000114273a4d607285979885715e4c3927150a17212728251e1409000000000000000000000000000011263b50657a90846f5a442f1a00000000000000001225384a5c6e7d8e98897b716c6d737d8a80707d93836c57422c170200000000192d42566a7d919583736e73828b7a69584633210e00000000000000000000000000000000000000081a2d405366798c8c7864503c2914010000000000000000000009192a3c4e61758a86735f4b37230e00000000000000081b2e4154667788857a685441515f686b685d4b37230e0000000000000000000a18242d344455605f565559606870767c7d7b756a5c4d3d2a1703000000081d32465b6e808f96949291999e92919190908a7c6b58432e190013273c5065798e8f7b675345586a7d91927d6a5743475a6c726554412d180000000002080b0a05050a0b090300000000000000000000000001080b0b06000000000000000000000000000000000000000000000000000000000000000000000000000000000000000004101a23292e3135495d718697836f5b4733262525221a0f020000000000000000001f344a5f74899f9f89735e49341f0e141d283542516170827c6a5947352210000000000000000006192c4053677a8e917d6a56422f1b08000000000000000000000a1f34495e738895806b5c708497907c6854402d192135495d72879c8e78644f3a2611000000000a1d30435567798c9d8e7b68564432211928343c3e3931271a0b0000000000000000000000000013283d52677c92806b56412c1700000000000000071b2e4154677a8c9c8b796a5e5758606c7a8a808095826b56412c1702000000001c31465b70869a8d796558637588887563503d2a170400000000000000000000000000000000000000112336495c6f8294806c5844301c0800000000000000000000000c1f32465a6e838f7a66513d28130000000000000000112437495a697471695c4c39414d5456534c3f2e1b0800000000000000000000061121374c6073726b6a6e747c848b918e8b887a6b5a46311c0700000003172b3e5162707c83878a8b8c979887837d7b78766c58442f19000d21364a5e728797836f5b474e6173879a86735f4c3d4e5a5d54473725120000000b151d201f19191f201d160b0000000000000000000008141c20201b12060000000000000000000000000000000000000000000000000000000000000000000000000000000000000000070f15191c2e42566a7d938b76624e3a25110f0d0700000000000000000000001f344a5f748ba09d88735e48331e09000b17253342526374867664523f2d1a0600000000000000001024374b5e72869986725e4b37231000000000000000000000061b3044586d8093877260677a8e9884705c4835212c3e5164788d9b88735f4a36210c00000000011326384a5c6e809098867361503f2e25374650534d4438291a08000000000000000000000002172c41566b80907b66523d2814000000000000000e22364a5d71859792806d5c4c42434e5c6b7c8d7c92836d58432e1803000000001f34495e73899e89735f4a586a7d91806d5a4734200d00000000000000000000000000000000000000071a2c3f5264778a87735f4b37230f000000000000000000000003172b4054697d93806a55402b16000000000000000007192b3c4b585f5d554c3e2e30393f403f392f21100000000000000000000000000c21364b5f718282808389908e878079757378725d48331e09000000000f223344535f686e727476798e9a8773696663615c4e3d291500071b2f43576b80938b77635044576a7d908f7b67533f3d4648423729190800000d1c283136342d2c343632291c0c00000000000000000918263035352e241607000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000013273b5064788d927c6854402b1602000000000000000000000000001f34495e73899e9f8a74604b36210d0000071524344556687a826f5c4936220d0000000000000000081b2e4256697c908e7a66533f2b18040000000000000000000015293d506376888f7d6b5e7184968c7764503d2f3b4a5b6d809493806c5844301c070000000000091b2d3e506172839391806e5d4c3d2e415464686056473726130000000000000000000000091d31465a6f848a75614c38240f0000000000000013283c5165798d9e8a76624f3e2f303e4d5e6f828a93866f5a45311c07000000001f344a5f748b9d88725c474e6175898a7663503c29150100000000000000000000000000000000000000102235475a6d808e7a66523e291501000000000000000000000012273c51667a90826b56402b160100000000000000000d1e2d3b454a4842392e201d252a2b29251d1103000000000000000000000000081c30425363717d878a88827a726b65605e646355432f1b060000000004162635424c53595d5f607286998f7b67534e4c483f30200d000014283c5063768a93806d5a484d6074888f826c57422c32332e25190b0000091b2b3a454b483f3e484b463a2a190600000000000004152736434a4a4134251503000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000c21354a5e728897836e5945301b07000000000000000000000000001c31465b708599a38e7965503c2915030000061727394b5d6f827965503b261000000000000000000013263a4d60748896836f5b4734200d000000000000000000000e2134465869798a89786966778890806c5843424c5968798b9b897663503c2915010000000000000f21324354657585958c7a6a5b4c3f465b707c736555432f1b07000000000000000000001125384c607489836e5a46321e0900000000000000182d42566b809499846f5b463320202f40526376899c88735e4a35200c000000001f344a5f74899d88725d4846596d8293806c5844311d090000000000000000000000000000000000000005182b3d50637588826d58442f1b0700000000000000000000000e23384d61768b7d6955402b16000000000000000000000f1d283134332e261c100a1115161410090000000000000000000000000000001325354554616b7274726d665f57514b49504f4537261300000000000008172430393f44484a56697d9197836f5b4837342d21120200000c2033475a6c80918a77644f44576a7d7b7364523e2a1d1e1a13080000001226384958605c4f4f5c60584836230f00000000000010223344545f5e524333200d00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000071b2f44586d829788735e4a35210c00000000000000000000000000182d41566a7d92a694806c584532200f0000000a1b2d4052657770614e3925100000000000000000000a1e3145586c80938b7763503c2815010000000000000000000417293b4c5c6b798788796d69767b76695650555e697786978e7c6b594633200d000000000000000315263647576676859389786a5c514b5a6f8684725e4a35200b0000000000000000000a1c2e4154687b8d7966533f2b1703000000000000001c31465b70859a95806b56412c1811223446596c80938d77634f3a2611000000001e33485d72889d8b75604b3e52667a8f8874604c39251100000000000000000000000000000000000000000e213346586a7d88725e4a35200b00000000000000000000000a1e33475b6f7a70604e3b261303000000000000000000000c151c1f1e19120a000000000000000000000000000000000000000000000007172736434e575d5f5d59524b433c36353b3a332819080000000000000006131d242b2f333a4d6174889b8b77634f3b2719100300000004172a3d506172827c70604d3b4e60696660554635230f000000000000001a2e425567756d595c6d7565523f2b1805000000000b1c2e3f5162727061503d29140000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000152a3f53687c918d78634f3a25110000000000000000000000000013273b4f6276899c9b8875614f3e2d1e100400001023364859635e5344321f0b0000000000000000000215293c5063778b93806b5844301d09000000000000000000000c1d2e3e4d5b6975828b80756e68646363656a717b88958d806f5f4e3c29170400000000000000000819293948586775838f887a6e655f6071878d77624c37220d0000000000000000021527394b5d708482705d4a37231000000000000000001e33485e73889d937c68533e28130517293c4f63768a927d6954402b17030000001b30455a6f84998e78644f3b4b607489907c6854402c1804000000000000000000000000000000000000000416293b4e60728577634e39240f0000000000000000000000071a2d405262665e554c40322110000000000000000000000000000000000000000000000000000000000000000000000000000000000000091825323b43484a48443e372f282221252520160a000000000000000000000910161a1e3145586b8092927d6a56422e190500000000000e20324455646c6960524332424e54524c443a2d1f0f000000000000001e33485d718576626579826e5b473422100000000416283a4b5d6e80806c57422d1800000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001025394e62778c927c68533f2a15000000000000000000000000000c1f3346596c7d90a192806d5c4b3c2e21170f0a06192b3b474d4b4135261502000000000000000000000d2034485b6f83968873604c392511000000000000000000000010202f3d4b58646f79828a837c797878797d858e90877c6f615141301e0c000000000000000000000b1b2b3a495764717d888c827974757d8e87745f4b36210c00000000000000000a1e324556687a86766453402d1a0700000000000000001f344a5f748b9f937c67523c27120c0e2033475b6f8397836f5b46321e0a000000172c41556a7d93937d695540455a6e8397836f5b47331e0a00000000000000000000000000000000000000000c1e30435567797b66503b2c1e0f000000000000000000000d22364a5c6a7170695e503f2d1906000000000000040d13161714131717130c020000000810151716120a000000000000000000000000000008141f282f333433302a231b140e0d10100c0400000000000000000000000000000315283b4f6175889a86715c48331e09000000000003152637465157554e4f4d464b5860625f574b3d2d1c0a0000000000001f344a5f748b7d6b677c8a7764513f2d1d0d00000e21344557697a8c826d58432e1800000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000b1f34495d728797826c58432e190500000000000000000000000004172a3c4f607283939c8b79695a4c3e332a241f170d1d2a3438372f231708000000000000000000000005182c3f53667a8e8f7c6854412d19060000000000000000000002111f2d3a46525c666e767c8286888a8b8987837c736a5e51423323120100000000000000000000000d1c2b394753606a747c8388898b888378695744311c0800000000000000000e23384d617484776858473523110000000000000000001f344a5f748ba0937c67523c271a2123232b3f53687c918a75614d39251100000012273b4f63778b98846f5b473f53687c918a76624e3925110000000000000000000000000000000000000000011325384a5c6d796653493c2d1c0a00000000000000000010263b50657987857b6e5c4935200c00000000000a1721282b2c29272c2c271f14080d0f1b242a2c2c261c0f0000000000000000000000000000020c141a1e1f1e1b160f08000000000000000000000000000000000000000000000c203245586a7c8f8b76614c37220c000000000000091928353e4e5b636461595969757773695b4b3a27130000000000001e33485d72888875657a8f826e5c4b3b2b180500172b3e516375878a7764513e2a150000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000061a2f43586d829686715c47331e09000000000000000000000000000d1f314354657585939888786a5c50463e3933291b0d182023221c1206000000000000000000000000001024374b5e72869884705d4935220e0000000000000000000000010f1d29353f49525b62686d7073747473716d6860574c4033241505000000000000000000000000000d1b2936424e5760686e727474726e665a4b3a28150100000000000000000d23384c61727066594a3a2918060000000000000000001f344a5f748ba0947d68533f292c35383838394d62778c917c6854402c190400000c2034485c6f82928a76634e3a4e62778c917c6854402b1702000000000000000000000000000000000000000013283c4f616e726f665a4b3a271400000000000000000011263b50667a8f998c78634e38230e000000000a1a28343c40423d3b41413b32251c22232d373e4140392d1d0c000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000315283b4d5f70828a76614c37220d000000000000000b2034485b6c7779756a6175888d87796956432e1a0500000000001b2f44586d8293826f75898c7a69594835210c001d32465a6d80907d6c5a4835220f000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000152a3e53687c928b75604c37220d000000000000000000000000000214253747576674838f97887a6e635a534d46392917050b0e0d08000000000000000000000000000000081b2f43566a7d928c7865513e2a16030000000000000000000000000b17222d363f474e53585b5e5f5f5e5c58534d443a2f2315060000000000000000000000000000000b1825303b444d54595d5f5f5d5953493c2d1d0b000000000000000000091e3144545e5c54483b2c1c0c000000000000000000001f34495e73899e96826b56412e3e494e4e4d4e4f5d72889884705c48331f0b000005192c3f52637382847b67523c485d718697836e5a46311d080000000000000000000000000000000000000000172c41566b808883786957432f1a0000000000000000000e23374b5f7080898776624d38230e00000003162838465056574f4d56554e43343037383d4a5356554b3b2916020000000000000005070704000000000000000005090b0b0b070100000000000000000000000000000000000000000c1e3041526270746b5a47331e0a000000000000000e23384d63778a90887a69778b9a9886715c47321d07000000000015293e5165788b8e7d6c80918877644f3a240f001f344a5f748a8472604e3d2b18050000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001025394e63778c8f7965503b2611000000000000000000000000000008192939485664717d88928c80766d67625746331f0a000000000000000000000000000000000000000013273b4e62768a95826d5946321e0b0000000000000000000000000005101a232b33393f4346484a4a4947443f3931281d1205000000000000000000000000000000000007131e2831394044484a4a48453f362b1e0f000000000000000000000215263643494841372b1d0e00000000000000000000001c32475c70879b99846f5a45394c5c6363626364676f84998b77624e39240f0000001022344655636d6e695d4c3842576c82958974604b37220e0000000000000000000000000000000000000000172c42576c82939687725c47321d000000000000000000081c2f4152616d7473695947331f0b0000000b1f334556636b6c5f5c6a6a605242434b4e4b5b676b685945311c0700000000020c14191c1c191106000000000711191e2121201b160e040000000000000000000000000000000000000112243444525d5f5a4d3d2a1704000000000000000e23384d63778b989986706d7c888c85715c47321c0700000000000e2235495b6d7d897d6a73838876634e39240f001f34495e728579665443311f0d000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000b2034495e7288937d69543f2a150100000000000000000000000000000b1b2a394753606b757d868b89827b75624d3823100c050000000000000000000000000000000000000b1f33465a6d82958975614e3a2613000000000000000000000000000000070f171e252a2e3133343434322f2a241d150b0000000000000000000000000000000000000000010b151e252b2f33343433302b23190e0000000000000000000000000918252f34332d24190d0000000000000000000000001a2f44596e83989d88735e4a3f546878787777797c808597907c67523d28130000000517283746515858554c3f2e3d52667b908f7965513c2813000000000000000000000000000000000000000014293d516474838983705c47321c0000000000000000000012243443515a5f5e574b3c2a170400000010253a4e6274807b6662777d705f4e5460635c687982735e48331e0900000006141f282e32322d24170800000c19242d33363635302a21160a0000000000000000000000000000000000000616263440484a463d2f1f0d00000000000000000b2034485b6c7a868a836f5e6a7377736755422e1905000000000006192b3e4f606d746e60657173695947331f0b001b2f43566672705e4a3725130200000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000061b2f44596d8397836d58432e19050000000000000000000000000000000c1b2936424e58616a70767d8f8070604c37262520180d000000000000000000000000000000000003172b3e5266798d917d6956422e1b0700000000000000000000000000000000040a1015191c1e1f1f1f1d1a151009010000000000000000000000000000000000000000000000020a11161b1e1f1f1e1b161007000000000000000000000000000008131b1f1e19110700000000000000000000000000162b4055697d93a28d78644f3e53677b8f8d8d8f91918a837b7566523d2813000000000a1928343e434340392f23384c61768b94806b56422d1904000000000000000000000000000000000000000e22354756657074706454412d1900000000000000000000061625333e464a49443a2d1e0d0000000012273c52677c907b665a6e827d6b586172786b6f84846e5945301c070000051524313b43474741352615030b1b2a3741484b4b4a453d33281b0d0000000000000000000000000000000000000816232d3334322a1f1101000000000000000005182b3e4e5d697174716453575e625f5649382612000000000000000f2031424f5a5f5b50545d5e584b3c2a17040013263848565e5d52422f1b08000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000162b3f54697d9286715c47321e09000000000000000000000000000000000b1825303b454e5b6d7d8f8573615243383b3a342b1e1001000000000000000000000000000000000f23364a5e72869986725e4a37230f0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000012273b5065798ea2937d6a55414c5f7080888b88837c766f6761594937230f00000000000a1721292e2e2c261d1e33475c70869a86705c47321e09000000000000000000000000000000000000000517293847535b5f5c534636241100000000000000000000000715212b31343430271d0f000000000011273c51657a8f7d68546579887561697d88746f86846e58432e19040000112333424e575c5c534432200e17293948545c60605e595045392b1d0d0000000000000000000000000000000000000611191e1f1d170d01000000000000000000000f20303f4b565c5f5d5446444a4c4b44392b1a0900000000000000031423323e464a473f414849453b2d1e0d0000091a2a38434949413424120000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000011263a4f64788e8a75604b36210d000000000000000000000000000000000007131e2b3f5265788b907c695644424c504f473c2e1f0f00000000000000000000000000000000071b2e4256697d918e7966523f2b1804000000000000000000000000000000000000000000000000040b11161a1c1d1c19140c030000000000000000030c13191c1d1d1c1a161009020000000000000000000000000000000000020d151a1b1b160f06000000000000000000000000000000000000000d22364a5f73889c9985705c484152616d7374736e68625b534c463b2b1a07000000000000050e15181917110a192d42576c82958a75614c38230e00000000000000000000000000000000000000000b1a293640474a474136281907000000000000000000000000040e171d1f1f1b140b0000000000000e23384c60758a836d585d70837d6b6b82907c6f85866f5a45301b0600001a2e4151606b717062503d2b192134475766707676736c6357493b2b1b0b0000000000000000000000000000000000000000000000000000000000000000000000000212212e3942474a4841363035373530271b0d0000000000000000000514212b3234322c2e333430281d0f000000000c1a262f34342e241606000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000c21364a5f74898e79644f3a2511000000000000000000000000000000000000081d32465a6e82958b76614d43525f66635a4c3d2d1b0a0000000000000000000000000000000013263a4e61758a96826e5a4733200c000000000000000000000000080f141515130e0801010911181f252b2f3232322e282015080000000000000a1620282d313232312f2a241d150b010000000000000000000000000000041320292f30302a23190d000000000000000000000000000000000000071c3044586d8295a08c7764503c4350595e5f5e5a544e473f3832291d0d00000000000000000000000000000014293d52667b908f7a66513d28130000000000000000000000000000000000000000000b19242c3234322d24180a00000000000000000000000000000000000000000000000000000000091d32465b6f8388725e53677a88736b828d85718388725d48331e0900001f34495d707d86806d5a483624293e516475848b8c888075675949392817050000000000000000050c11141615130f0a0300000000000000000000000000000000000003101c262e3234332e251b2022201c140a0000000000000000000000030e171d1f1d181a1e1f1c150c00000000000009141b1f1f1a12060000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000081c31465a6f84927c68533e2a150000000000000000000000000000000000000d22374b60758a9c87725d485061707b776a5b4a392714010000000000000000000000000000000b1e32465a6d82958a76634f3b28140100000000000000000007121c24282a2a27231c15151d252c333a4044474747433c32261809000000000b1a27333b4246474747443f3931281e1307000000000000000000000000021323313d4446453e362b1e1001000000000000000000000000000000000115293e5165798da093806c5844333d45494a49454039332d261e170c000000000000000000000000000000000f24384d62768c95806b56412d18030000000000000000000000000000000000000000000711181d1f1d191107000000000000070b0b090604030202020201010000000000000000000003172b4054687c8d7864505e71857c6a80888579808b76614c37220d00001f34495d72879a8a77665341302e43586c82948b79767d8677675746352311000000000000020e1820262a2b2a28241e170e040000000000000000000000000000000000000a13191e1f1e1912070b0d0b0801000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001182c41556a8094826c57422d1804000000000000000000000000000000000010253a4f64798f9b866f5a45596d808f8979685644311e0a00000000000000000000000000000003172b3e5266798e927d6a5743301c0800000000000000000817242f383d3f3f3c37302829313940474e54595c5c5c574f4436271706000007192938454f565b5c5c5c58534d443b3025180b00000000000000000000000d2031414f585b5952483c2e1f0e00000000000000000000000000000000000e22364a5d7185989c8874604d3a2a303434343942474742392e2112020000000000000000000000000000000a1f34485d71879a85705b46311d080000000000000000000000000000000000000000000000000000000000000000000006121b20201e1b191817171717161614120f0a040000000000001125394d61758a806a5655687c8571808a7b827b8f7964503b261100001b2f43576a7d929583715f4d3b2f445a6f869b8872616d7c86756452402e1b08000000000513202b343b3f403f3d38322a21170b00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000002080b0a06000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000003030113273c51657a8f86705b46311c07000000000000000000000000000000000011263b50667b919b866f5a455a6d7c8c978673604d3a2611000000000000000000000000000000000f23364a5e72869a87735f4c3824110000000000000005162635424c525454514b443b3c444c545b62686d7172716b61544535231100001124364756626b707272706d6860574e4236291b0c0000000000000000000015293d4f5f6c706d655a4c3d2c1b0800000000000000000000000000000000061a2e4155687b8fa2907d6a5644311e1f2a3b4a565c5c564c3f30200f000000000000000000000000000000051a2f43586d829789745f4b36210c000000000000000000030b0f0f0c090706060505050505050400000000000000000616242f353633302e2d2c2c2c2c2b2b2a27241f191007000000000a1e32465a6e8286715d4c607386797d8c7686778c7d68543f2a15010014283b4f63778b9f8f7c6a58473544586d839789745f5e6e80826f5d4b382512000000041423313d474f545654524d463d34291d1003000000000000000000000000000000080e12120f0a0200000000000000000000000000000000070b0b08020000030b0f0f0b040000000000000000000a151d201f1a1004000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000b131818161223374c61758a89745f4a35200b060400000000000000000000000000000011263b50667b919c87705b464f5e6d7c8d907c6955402c1804000000000000000000000000000000071b2f42566a7d928f7b6754402c190500000000000010223444535f676a6a6660574e505860686f767c8387888680726352402e1b0800192d405365748086888887837c746a605447392a1b0c0000000000000000001b3044586c7d8782776a5b4a38251200000000000000000000000000000000001225394c5f728598998673604e3b2921354859687170695d4e3e2c1b08000000000000000000000000000000152a3f53687c928e78644f3a251100000000000000000a161f2424211e1c1b1b1a1a1a1a1a1a1915100a0100000000122434424a4b484543424242424240403f3c39332c23190c0000000e1b2b3f53667a8d786450576a7d827c8d777c8288836d58442f1a05000c2033475b6f84989a88766453414054697d928f7a66536172847a6754412e1b080000102232414f5a63696b6a67615a50463a2e21130400000000000000000000000005121c232727241e150a0000000000000000000000000006121b20201d160d0a161f24241f160a000000000000000c1b273136342d2214040000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000101d272d2e2b272432475c70868d77634e39241b1b19150f080000000000000000000000000f24394e63788e9e89735f4a404f5e6e809184705b47321d080000000000000000000000000000000013273b4e62768a97836f5c4834210d000000000000182c3f5262717b80807a736a60636c747c848b92979c9d9b9182705d4a37230f001d32475c70839282777679828c887d71645748392a1a0a00000000000000001e33485e73889c9589796755422e1a0500000000000000000000000000000000091c2f4255677a8d9f907d6a584634263b50647786867a6c5c4a38251200000000000000000000000000000011253a4f63788d927c68533e2a150000000000000009192733393936333230302f2f2f2f2f2f2e2a251d140a0000001a2e41525e605d5a585757575757565554514d4840362a1b0a000c1d2c383f4b5f7287806b574e6175887b8e7873888387725d48341f0a0004182c4054687c919b8782705f4f3f4f63778c96836e5b55667985715e4b37240f00081b2e40505f6d777d80807b756d63584c3f31221304000000000000000000000514232f373c3c3931271b0c00000000000000000000000616242f353631291f192733393933281a0a0000000000091a2a39444b4940322110000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000d1e2e3a4243403c3a3742576b80907b66523d3030302e2a231b1005000000000000000000000c21364a5f73889c8d7864503c40516274878a745f4b35200b000000000000000000000000000000000b1f33475b6e83968c7764503c29150100000000001d32475b6f828a83848a887d7377808890979c9894918f8f8f8d7a66523e2a16001f344a5f748989756361656e7a888f837566574838281706000000000000001e33485e73899ea79785715c47321c0700000000000000000000000000000000001326384b5d6f82949b88756351402e3c51657786968a796754412e1a0600000000000000000000000000000c21354a5f738996826c57422d1904000000000000142637454e4e4b48474646444444444444433f3931271c0f00001f34495d7074726f6e6c6c6c6c6c6b6a6866625c53483927140016293b4a5456576a7d86725e4c596c807d8f786a7d848c77624d39241000001125394d61758a9e8a837d6d5d4d485d71879b8a76624e5c6e827a67523d2813001125384b5d6e7d8a938e8c8d8980756a5d4f4031221101000000000000000000112332414b51524d44392a1b0a00000000000000000000122434424a4b453c302637454e4e4638271502000000001326384856605d503f2e1c0b000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000162a3c4c565854514f4c4b52667b90806a5546464646433e372e221506000000000000000000071c3044586c809393806b58453444576b808d77624c37220d0000000000000000000000000000000004182b3f53677a8f93806c5844311d0900000000001f344a5f748a7c6d6f77828f858b9395908c8883807c79787980826d59442f1a001e33485d708487715c4c515c697889938575665646352413010000000000001c31465b70859aa8937d695844301b060000000000000000000000000000000000091b2e40526476889993826f5d4c3b36495967788a9785715d4935210d000000000000000000000005090a071c31455a6f849986705b46311c070000000000001b3043556263605e5c5b5b5a5a5a5a5a5a58534d443a2d1d0c001f34495d7183878684838383838282807d7b766f665644301b001d314558676b686676897966616063778a8d77627488917c67533e2a1600000a1e32465b6f8498907b887a6b5c4e586d8397917c68535163767866523d281300172b4054677a8d94847976777c84887a6d5e4f402f1f0e0000000000000000071b2e41515e6667615648392815020000000000000000061a2e41525e60594e4033445562635644311d08000000001b2f435666746e5d4b3a28170500000000000000000000000000000000000000000000000000000000000000000000000000000000000000001c3146596a6d69666462605f61758a846e5b5b5b5b5b58534a403324150400000000000000000115293d506376889988756352443e51667b8d77624c37220d00000000000000000000000000000000001024374b5f7384918874604c39251000000000001f34495d7286857c7d8288918f9885807b77726e6a676463656d776f5a45301b00192d415465737d725c473e4b5a6a7b8c948474635342301f0d000000000000182d41566a8094a8937c67523c28150100000000000000000000000000000000000011233547596a7b8d9d8d7a695848373b4a5a6c7d928d7864503b26120000000000000000000410191e1f1c182c41556a809489745f4a35200b0000000000001f34495e737875737170706f6f6f6f6f6f6d6860574b3b2a17001a2e415464717a82858789898b8b898988878683735e48331e001f344a5f74827d7b7b80827876767474838a74606a7c8f826d5945311d000003172c4054697d9396827a8a7a6b5f566b829796826b56475a69685a4937230f001c31465a6f83978a7666606268707b887c6d5e4d3c2b1a08000000000000000d21364a5e6f7a7b74665745321e0a00000000000000000a1f34495d70746b5e4f4051627374604b36200b000000001f34495d72857a69584634221100000000000000000000000000000000000000000000000000000000000000000000000000000000000000001e33485e73837d7b78777574737284887270707070706c665d514233210e0000000000000000000d203346586a7b8c92827061575355677b89745f4a35200b0000000000000000000000000000000000081c30435565737d877c68533f291400000000001b2f4356697782868684827c79888e8071625d5955524f4e515a635f513f2b17001124374756616a6757432f3c4c5d6e80929282705f4e3c2a1805000000000013273c5064788da1937d68533e2914000000000000000000000000000000000000000618293b4c5e6e808f998876665545363d4f617488937d69543f2a1500000000000000000313222d3334312d293c51667b908d77624d38231a140b000000001e33485c6f808b88878787868686868686827c73695946321d0012253646545f666c6f7173737474737372706f6d685945311c001e33475b6d7a828688898a8b8b8b8b8b8b806e5a5f708086745f4a341f00000011263b4f64798f9b87717c8a7c716b70849897826b56404b54544a3c2b1a07001f34495e738998846e5a4b4d545e6a77867b6b5a4937251300000000010d1519243a4f64798e918575614e39240f04000000000000000a1f34495d70827c6d5c4c5d6e80745f4a35200b000000001f34495e738887756352402e1b08000000000000000000000000000000000000000000000000000000000000000000000000000000000000001b3044586c7d8e918f8c8b8a8988888e888787878786827a6f61503d29140000000000000000000417293b4c5d6d7c8a8f80736b68697283826d5a46311c080000000000000000000000000000000000001426384756616b727467533e2914000000000014273a4b5a656c6f6f6e6b686978888f82716252433d3a383d474d4b423322100007192938444e55534939272e3f51627487998f7d6b594735221000000000000d2135495d71869996826c57422d1904000000000000000000000000000000000000000c1d2f4050617182919484736354453845586c8094826c57422c1700000000000000000f21323f484a45413e3c4d61768c907a66503b342f271d11030000192d4051616e777c828486878787878685838280745f4a341f0007182836424b52575a5c5e5e5f5f5e5e5c5b5a58554b3b291600182b3e4f5d676d707273747474747474746f615152616d70695946321d0000000d22374c60768c9f8b756e7d8d8580838fa0937d69543f39403f392d1e0e00001f344a5f748b97826b564139414c5967768778665442301d0a000002121f292e2f394d62768792917b66503b261d19120a0100000000061a2e415365778a796758697a88725d48331e150a0000001b3044576a7d8f826f5d4b3825110000000000000000000000000000000000000000000000000000000000000000000000000000000000000015293c4e606f7c858b909394959595959493918f8d8b8986806c57422c17000000000000000000000c1d2f3f4f5e6b78838c87807c7d85837463513e2b1602000000000000000000000000000000000000091a2938444e575d5f584937241000000000000a1c2d3c4852575a5a5956535a6a798a90827061514130232a3438373024150500000b1a27323b403f372b1b213345576a7c909b897664523f2c190600000000061a2e4256697d919a86705c47331f0a00000000000000000000000000000000000000001122334353637282909282726356493f5065798f836c57422c170000000000000000172b3e505c5f5a565351505d7288937c67524c49433a2f211101001a2e41525e5f63686b6e6f707070706f6f6e6c6a675845311d00000a18252f383e42454748484a4a48484746444340392d1d0c000f21313f4b53585b5c5e5f5f5f5f5f5f5f5b52434350595b564b3b2a170000000a1f344a5f74858f8b76606e7c8995979f9a8a76634f3b262b2a251b0f0000001f344a5f748b98836d58432e2f3b4958687984725f4c39261300000f20303c434441465868757d8074624e3936322d261d13070000000e1c2935475a6d808573647587826d59443631281b0b000015283b4d5f71838d7a6754402c17000000000000000000000000000000000000000000000000000000000000000000000000000000000000000d1f3142515e6971767a7c80808080807d7c7b79777573706e65533f2b160000000000000000000000112131404e5a6670777c8282807a7165564634210e00000000000000000000000000000000000000000b1a27323b43484a453b2c1a080000000000000f1e2b363e42444444413e4c5b6b7b8c8f806f5f4e3e2d1c2023221c13060000000009151f262b2a241a0d16283a4d6073879a94826f5c4936230f000000000013263a4e6175899c8b76624e3a261100000000000000000000000000000000000000000415253545546372828f918273675b534f62778d806b56402b1600000000000000001c31465b6e736f6b686665646e83907b6762615d574c3f2f1e0c001f34495d7074716e6c6c6b6b6b6b6b6b6b68645d53493b291600000007121c23292d303233333434333332312f2e2c261c0f00000313212e383f434647484a4a4a4a4a4a4a473f34333d4446423a2d1d0c000000071c314457667279786d5b5e6b7782888b877c6c5a47342015151109000000001e33485e73889b87715d48342b333a4a5c6d807c6956422e1b0700182b3e4e58585654525862686a63564e4d4b47413a30251606000a1c2c3a464e5264778b7d6f828a7764514d4b4539291805000b1e304254667789846e58432e190000000000000000000000000000000000000000000000000000000000000000000000000000000000000002132332414c555d6265686a6a6b6a707668666462605e5b5954473624100000000000000000000000031322303d49535c63686b6b70776757473828190a00000000000000000000000000000000000000000009151f282f333431291d0e00000000000000000d1922292d2f2f2f2c2e3d4d5e6e80908e7d6c5c4b3a29170e0d0800000000000000020b121615100a0e111d3043576a7d929f8c7865523f2b1804000000000b1e3246596d8094917d6955412d1905000000000000000000000000000000000000000007172736455462707d8a9285786e67646a7b8e7965513d281300000000000000001c32475c708584827d7b797978808578777776726a5d4d3b2814001f34495d718387848383828282828282827d7870655744311c0000000000080f14181b1d1e1e1f1f1e1e1d1c1a1916120a0000000003111b242a2e30323334343434343434332c22212a2f302d271c0f000000000115283948555f64645c4f4e5a646d7374726a5e4e3d2a1704000000000000001b30455a6f84988c7763503c3d474d4d50627586725e4a36210c001e33475b6b6e6b69676666666464646362605c554d42342412001427394a5862676a6e82887b8d806d66646260574734210c0001132536485a6c80806c58432d1800000000000000000000000000000000000000000000000000000000000000000000000000000000000000000514232f3942484d505354545d6d7d846f5a4f4d4b494644403729190700000000000000000000000004121f2b3640484f53566479867564554537281a0c000000000000000000000000000000000000000000020c141a1e1f1d160c00000000000000000000060f14181a1a1a171f2f4050617283948b796858463523120000000000000000000000000811191f232627273b4e62768a9e95826e5b4733200c0000000003162a3d5064778b9884705c4834200d020000000000000000000000000000000000000000091827364452606c78838d8b827c797d8983705e4a36220e0000000000000000192d4155687988929391908f8f8f8f8f8d8d8c877b6b58432e19001a2e415464727b828688898b8b8b8b8989888683745f4a341f000000000000000000000000000000000000000000000000000000000000081015191b1d1e1f1f1f1f1f1f1f1e18100e161a1b19130a0000000000000a1b2a38434b4f4f493f3c4851595e5f5d574d40301f0d0000000000000000172c4055697d9193806b58454e5a62625c596c8075614c37220c001f344a5f7483827d7c7b7b7b79797978777470696052412e1a001c30445768757c8082828f8988807d7b797775644f3a2510000007192b3c5064737061503d291500000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005121d262e33383b3f4e5c6b7b8c826d5944383634312f2c24190b0000000000000000000000000000010e19242d343a3e4e63778c8373635546382a1b0a000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000111223243546576889887756452412f1d0b00000000000000000004101b242c33383b3c3c3b475b6e83979e8a76634f3b27130000000006122134485b6f82968c7763503c281917120b0200000000000000000000000000000000000009182634424e5a66707982878a8b8880736453412e1b0700000000000000001226394a5b6a757d838789898989888684827d7b776d59442f1a0012253646545f676c70727374747474747372706e6a5a47321e000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000c1a262f373a3a352d2b353e45494a49433b2f221201000000000000000011263a4e6175899b8875624f5c6c76776f60636e655746321e09001c314457697782888c8f90909090908f8d8a857c705d49341f001f344a5f738689898b8b92968c8d8e8d898274634f3a25100000000d213447565f5c524333210e00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000a12191f30414f5d6c7a8a8a7865523e2a211f1c1a1711070000000000000000000000000000000000071119202534485c6f8291827264564839281500000000000000000000000000000000000000000002090f11100d07000000000000000000000000000000000000000415253648596a7c8f9382705e4c3a281604000000000000000614212d3740484d505252504d53687c90a4927d6a56422e190500000616242f353f5266798d93806b5744302e2c261f1509000000000000000000000000000000000000081624313d49535d656c717474726d635546362412000000000000000000091b2d3d4c5862696e717373737372706e6b6966635d4f3d2a160007192837424c53575b5d5e5f5f5f5f5f5e5c5b59574d3d2b18000000000000000000000000000001080d0f0f0f0b0500000000000000000000000000000000000000040e1417161007000000000000000000000000000009131c222524211a18222a303434342f281e11040000000000000000000b1e3246596c809192806d5b6378888c7d6c59585347392816030015283a4b5a656d737678797b7b7b7b7979787774705d49341f001e33485c6d727373747d8f8384777877746e64564634200c00000005172938444a4840342515040000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000012263b4e5f6d7b8b907d6d5b4936230f0a060000000000000000000000000000000000000000000000050c192c3f52647688918374665744311c00000000000003070706010000000000000000000b151e242626221b110500000000000000000000000000000000000008192a3b4d5f7183968e7c6a584533210e000000000000061524323f4a545c6265676765625c61758a9f9a86715d4834200b0000122434424a4a4a5d7083978773604c4343413b32271a0b0000000000000000000000000000000000000613202b37404a51585c5f5f5d58504537281806000000000000000000000f1f2e3a464e54595c5e5e5e5e5c5b595754514d4a4031200e00000a192530383e424648494a4a4a4a4a48474644423b2f1f0e000000000000000000000000000a141c222525242019110700000000000000000000000000000000071521292c2b24190b000000000000000000000000000000080d0f0f0c06050f161b1f1f1f1b140b00000000000000000000000316293c4f617386978a78675c697a8d89745f4b4036291b0b00000b1d2d3c4852595e61636466666666656463625f5d51412e1a00192c3e4f5a5c5e61758884798d7a6762605a514638281704000000000b1a273034332d2316070000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000152a3f54697d8c918271614f3e2b1906000000000000000000000000000000000000000000000000000000102235475869798a9284745f4a341f000000000710171c1d1b160c000000000000010f1c2831383b3b362e2316070000000000000000000000000000000000000c1e30415366788b99887562503d2a1704000000000213243342505c6770767a7c7c7a767069708499a08c77634e3a251100001a2e41525e5f5d5b677a8d8f7b67585858554e4438291a0a000000000000000000000000000000000000020e19242d363e43474a4a49443d3327190a000000000000000000000001101d28323a40444748494948474644413f3c39352e22130300000008131d242a2d30333434343434343332302f2d281e11010000000000000000000000000e1b2730373a3a39342d241a0e0200000000000000000000000000051625333d423f362919080000000000000000000000000000000000000000000000000000000000000000000000000000000000000d20324456677889978675655d71868d77624d3824180b000000000f1e2b363e45494c4e50606c726f66584e4c4a4941332311000f21313d4547576a7d8d79708584705d4b463e35281a0b00000000000009141c1f1e19110600000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000014293e53687c8a807263534332200e000000000000000000000000000000000000000000000000000000000517293b4b5c6b7a8686725d49341f0000000d1a242b313230291e100000000001101f2d3a444d50504a4034251605000000000000000000000000000000000000122436495b6e829492806d5a4734210e000000000d20314251606e79848b90908c8c8b857c738094a6927d68543f2b1601001f34495d707472706f70859784706e6e6e6a615647382817060000000000000000000000000000000000000007111a22292e32343434302921160a00000000000000000000000000000b161f262b2f323334343332312f2c2a2724201b1104000000000000091015191b1e1f1f1f1f1f1f1e1d1b1a18140b000000000000000000000000000c1d2c39434b4f4f4e4841372c1f1204000000000000000000000000102233435057534737251200000000000000000000000000000000060d13171b1c1d1c191510090200000000000000000000000000031527394a5b6b7a89938475696c838d77624c38230d0000000000000d19232a30343742576b7d87837666544035342e231505000313202a34495d7286836f677a8d7a6753402d22170a0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001025394c5f6e746e6254453525140300000000000000000000000000000000000000000000000000000000000c1d2d3e4d5c6872736756432f1b00000f1e2b37404647453c2e1e0c0000000f1f2e3d4b576166655d52433423100000000000000000000000000000020a111414192c3e5164778a9d8a7663503d2a1703000004172a3d4f60707d8c9790847b7776787d8585798fa497836d59442f1b06001f344a5f74898887868483928c838484837d7365564635230f000000000000000000000000000000000000000000070e151a1d1f1f1f1b150e0400000000000000000000000000000000030b11171a1d1e1f1f1e1d1c1a1715120f0b0700000000000000000000000000000000000000000000000000000000000000000000000000000006192a3b4a565f6464635d54493d302214100e09030000000000000000182c3f51616c6554412e1b070000000000000000000000000007111921272c303232312e2a241d150c02000000000000000000000000091b2c3d4d5c6b788590877c788586725e4a35200b00000000000000060f161b1f2e43586e84959484705b46301f1a1105000000020e22374c61768c79665d6f8283705c4936220e00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000091d3041505b5f5b514436271707000000000000000000000000000000000000000000000000000000000000000f202f3e4b565d5e5749392613000a1c2d3c49535a5c594c3b281501000c1c2d3d4c5b68747b796f6152402c19040000000000000000000000000b151e252929252134475a6d829593806d5946321f0b00000c2034475a6c7d8f9d8f807167626063697280898da29c88725d48331f0a001c31465a6d808c92969898999b9895949391847464523e2a1500000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000040b1014151614120d070000000000000000000000000f23364859687379797770665b4e40322625231e170f050000000000001d32475b6f80715e4a3724110000000000000000000000020e19242d353c4145474746433f3931281f14080000000000000000000000000e1f2f3e4d5a67737d85898b86796856432f1b060000000000000000000006172c40546777848a84705b46301b060000000000000c21364b607584705d526473827865513c271100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001223323f474a463e3327180900000000000000000000000000000000000000000000000000000000000000000211202d3943494944392b1b090014273a4b5a666f726a58442f1b070719293a4b5b6a7987908d806f5c47321d080000000000000000000001101d2832393f3f382d2b3e5165788c9c8975624e3a2612000013273b4f63768a9c95837061544d4b4e5661718395a8a08b76614c37220d00162a3d50616e777c828384848d8e80807c7c7c7d6c57422c17020000000000000000030f171c1c19161311110f0f0e0e0e0e0e0d0c0803000000000000000000000000000000000000000000030b12171a1b1b1b18130e070000000000000000000000000000000000000000020e171f25292a2b2a26221c140b01000000000000000000162b3e526576868f908c84786c5e50413b3a38322b22170b00000000001f344a5f748a796653412e1d0c00000000000000000004121f2b36404950565a5c5c5b58534d453b31261a0c00000000000000000000000111202f3d4956606970747471685b4b3927130000000000000000000000001124374959667074726554402c1803000000000000081d314558687467544655646f7464503b261100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000514222c3334322b2216090000000000000000000000000000000000000000000000000000000000000000000002101c272f343430271b0d00001b30445769778388725e4a35210c1425364758687989979b8d7d6f5c47321d08000000000000000000000f1f2e3a454e53534b3d2b35495c708498927d6955412d190400182d41566a8093a28d7966534338363a445366788da0a38f78644f3a2510000e213242515c63686b6c6e6f8393806d6867676962513e2a1500000000000000000413212b31322e2b2827262525232323232323211d1710070000000000000000000000000000000000010c161f262c2f3030302d28221b130900000000000000000000000000000000000513202a333a3e3f403f3b362f271e140900000000000000001b3045596e829591827d868a7c6e5f50504f4c463e34291c0d000000001f344a5f748a83705d4b3b2a190700000000000000041423303d49535c646a6f7172706d6860584e43372a1c0d000000000000000000000002111f2c38434d555c5f5f5d564b3d2d1c0a000000000000000000000000081a2b3b49545c5f5d5547372411000000000000000215283a4a595f58493746525b5f574735210d0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000410181e1f1d170f04000000000000000000000000000000000000000000000000000000000000000000000000000a141b1f1f1b140a0000001f34495e7387968d7864503b27122031435465768797998b7c6e6051402d1905000000000000000000091b2d3d4c586168685a48342d4155687c919985705c48331f0a001c31465b70859a9c88725e4a3625212636495d71869aa6917b66513c271200031524333f484f5356575865788b897663525254504434220f00000000000000001022323e464743403d3c3b3a3a38383838383836312b231a0f02000000000000000000000000000004121e29333b4044464645423d362f261c12060000000000000000000000000000041423313d474e53545554504a433b31261a0e000000000000001e33485e73889d88746972808d7d6e636664615a51473a2b1c0c0000001d32475c70858d7a69584837241000000000000002122332414e5a6670788084878886827c746b6155483a2b1b0b0000000000000000000000010e1b26313a41474a4a4842392d1f0f00000000000000000000000000000d1d2b3740474a49433829190700000000000000000b1c2d3b464a453b2c353f474a44392a18050000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001f344a5f748a9f937d6a55412d1a2b3d4f60718394998a7b6c5e5042332311000000000000000000001225384a5b69757c77624c3725394e62768b9f8b76624d39240f001f34495e73889d99846f5a45301b0c1a2e42576c8297a8937c67523d281300000615222c343a3e4142495b6d8092806c59463f3c332616050000000000000000192d3f505b5c58555351504f4f4e4e4e4e4e4c4b463f362c2012040000000000000000000000000414222f3b464e555a5b5b5a56514a42392f24180c00000000000000000000000000112232414f5a62686a6a68655f574e43382b1e110200000000001f344a5f748b9b866f5a616f7d8c7b787a79756e6458493a2a18060000192d4155697d90877666533f2a150000000000000e203041505f6c78838a847d7c7b7c8287887d726658493929180700000000000000000000000009141e262d323434332e261c0f010000000000000000000000000000000d1a242d3234342f261a0b000000000000000000000f1d2a323431291d232c323431281b0c0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000040c10100d0a0706050303020202020201000000000000000000000000000000000000000000000000070e14191c1d1d1c1a17110b0400000000000000000000000000001d32475c7085999985705b47322537495b6c7d909a8b7a6b5d4e403224150500000000000000000003192d415568798887715d49352033475c70859a907b67523d2813001f344a5f748ba098836c58432d1803152a3f54697d94a9947d68533e29130000000410192025292c2d3e50637588897663503d2a2116080000000000000000001e33485c6e706d6a68666664646363636363625f5b53493d302212000000000000000000000003132332404d5962696f70706f6b655e554c41362a1d100200000000000000000000091c2e40505f6c767c80807d79726a6055493c2f201102000000001f34495e73899b86705c515f6f808a8c8686898275675847362311000012263a4d60738593826b56402b160100000000081a2c3d4e5f6e7c8a82776f696766686c727b86847667574736241300000000000000000000000000010a12191d1f1f1e1a130a0000000000000000000000000000000000000711191d1f1f1b13090000000000000000000000000c171d1f1d160c10181e1f1c150a00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000b17202526221f1c1b1a191917171717171715110c0500000000000000000000000000000000000006111a22292e313232322f2b261f180e05000000000000000000000000192d41556a7d929f8a75614c3830425466788a9c8c7b6c5c4d3f3022140600000000000000000000081d32475c708597836e58432e1a2d42566b809595806b56412c17001f344a5f748ba098836d58432e190313293e53687d94a9947d68533e29130000000000050c111417213346586a7c8f806c5a4734220f000000000000000000001f34495e738683807c7b7a7979787878787877746f665b4e402f1d0a000000000000000000000f203141505e6b757d84878785807972685e53473b2d2011030000000000000000001225394b5d6e7d8a9188848488877d73675a4d3e2f2010000000001c31465b70869a8a7560536576878983716f757d86766553402d1905000a1e31435566757d7564513e29140000000000122537495b6c7c8b7c6f6364635850535f646974828675655342301d0a0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000091a28343a3b373432302f2e2e2c2c2c2c2c2c2a2620180f050000000000000000000000000000000c18232d363d424647474744403a332b21170c000000000000000000000012263b4f63778ca0907b67523e3b4d607284968f7d6e5e4e3e2f21120400000000000000000000000a1f344a5f748a98836c57422c17283d52677c9298836e58432e19001f34495e73899f9a856f5a45301b06142a3f54697d94a8937c67523d28130000000000000000000416293b4d6072848a7664513e2c1a070000000000000000001c30455a6e829394939190908f8f8f8f8f8f8d8983786c5e4d392511000000000000000000081a2c3e4f5f6e7c8892908883828488857b7065584b3e2f2111020000000000000000182d4155687a8d9282746e6f72798385786b5c4d3e2e1d0c000000192d42566b80948f7b675d70838a788b7c69616c7a836f5c48341f0a00011426384857636863574735220e00000000071b2e415467788a7c6c5e6a787666535e70797064728383715f4d3a271300000000000000000000060d1112110e060b1012120f0900000000000000000610171d1f1f1f1b160f070000000000000000000000000000000000030f191e1f1c150a00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000142738464f504c4947454443434242424242413f3a342b221609000000000000000000000000000e1c2936404a51575b5c5c5c59544e473e34291d10030000000000000000000c2034485d71869a96826c584346586a7d8f928270605040302011030000000000000000000000000a1f344a5f748b98836e58432e19253a4f64798f9b866f5a442f1a001d32475c71869b9d88735e4935200c162b40566b8095a5907a66503b261100000000000000050d13171e30425567798c826e5c49372412000000000000000000162b3e516474828a8f929495999391908d8b898786847c68533e28130000000000000000001124374a5c6d7d8d9a8d7d736d6c6e737c868376695c4d3f2f200f00000000000000001d32475b708598897563595a5e66707c897a6b5c4c3b2a1907000013283c5064788c96836e64788d826d808673605c6d8075604b36200b0000091a2a39464f535047392a1805000000000e22364a5d7184826f5e5a6f86826b56687b8b77626576897c6956422f1b070000000000000008111a2126272722191f252727241c120500000000000a17232b32343434302a231a0f0400000000000000000000000000000213212c333431281c0e0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001c3044566365615e5c5a5a5858575757575756544f483e3427190a00000000000000000000000d1d2c3a47535d656c707272716e69635a51463b2e211304000000000000000005192e42566a7d939b87725d495063758896857363524232221202000000000000000000000000000a1f34495e73899b86705b46311c23384e63788f9b866f5a442f1a00192e43586c8296a18d77634f3b27141a2f44586d8398a18c77624d38230e0000000000010e1821282c2f2f374a5c6e808b786654412f1d0b00000000000000000f22354656646f75797c7d808c7d7c79787673706f6e6d62503b27120000000000000000061a2d415467798b9c907d6e6058575960697482887a6b5d4d3e2d1d0c000000000000001f344a5f748999846f5a47444a535f6b79897a6a594836241200000d2135495c6f83958a766a80907b66768a7b6854636f665846321d090000000c1b29343b3e3b34291b0d020000000014293d5165798b7764525a6f86826b5e7185826f5b596c8086725e4a36210d0000000000030f1a242e363b3c3c362c33393c3c382f2315060000000a1928353f464a4a49453e362c211508000000000000000000000000000e20313e484a443a2c1d0c00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001f344a5f73797673706f6f6e6e6c6c6c6c6c6b68635b514537281705000000000000000000081a2b3b4a586570798286888887837d766d63584c3f31231404000000000000000013273b5064788ca18c77634e5a6d80928a78675645342414040000000000000000000000000000071c31465b6f849989745f4b372324394e63788f99846f5a442f1a0015293e52667a8ea2937d6a5744311f1f34485d71879b9c88725e4934200b0000000001111f2b353c41444444445163758883715f4d3b291706000000000000000517283847525b616567686f838f7d6c63605e5c5a5858524433200c00000000000000000d2135495d70849699867260504442454c566370808a7b6b5c4b3b2a19070000000000001f344a5f748b99846e605b554e464e5b6a7988766553412f1c090006192d405366778993806e838d77626e82836f5b535a55483a291603000000000b1720262c31322f291f1406000000192e42576c82846f5b485a6f86826b677a8d7966524f63778b7864503b2611000000000714212c374149505251493e474e52524c4133241200000516283746525b5f5f5e5952493e33251708000000000000000000000000162a3d4f5c5f574a3b2a1805000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001e33485d71868c8987868484848383838383827d776e63554634210d00000000000000000013253748596876838d958d85828083878a82766a5d4f4132231303000000000000000c2135495d71869a927d695464778a907d6c5b493827160600000000000000000000000000000000182c4155697d918f7a66523f2d273c51667a9095826b57412d18000f23374b5f7285989a8773604e3d2e283b4e63778ca095826c58442f1b06000000000d1f2f3d485056595a5a5a59586a7c8f7c6a584635241302000000000000000b1a29353f474c505253677b8f8a76635049474443433f34261604000000000000000013273c5064788da0927d695643322c303945526171828a796959483625130100000000001f344a5f73899b86787570696259504c5b6b7b83705e4c3926120000102336485a6b7b8a8a77868c7660677b8a75604b4441382a1c0b00000000000a1b2a37404647433c3124150600001c31465b70867d6954445a6f86826b708383705d49485c71867d69543f2a15000000091725323e4a545d6467655b515a6367675e51412f1c08000e21344555646f7474736d665c50433526170800000000000000000000001b3045596d7468594734210e000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001a2e43576a7c8c969b9b999998989898989795928b827364503c27120000000000000000091d3042556676879497887a706b6b6d727983887a6d5f504131211100000000000000061a2e42566a809397836e5b6e82948573614f3d2c1a09000000000000000000000000000000000012263a4e61748796826f5c4b3d3843566a80948f7a66523d291400081b2f4255687a8c9d907d6c5b4c403d45576a7d929e8c7864513d29150100000004172a3c4d5a646b6e6f6f6f6e6e6c7284887564524231200f00000000000000000b18232c32373b3d4c60748893806c5844322f2e2e2b221708000000000000000000182c41566a8094a18c77624e3a26171d273543536475868876655442301e0c00000000001c31465b7085998c838a857d756c62574d5e6f827b6855422e1a000007192b3c4d5d6c78807d848e786462778d79644f3a2d261a0c00000000000114273948545b5c584f4233241200001e33485e73897a6550445a6f86826b798c7a67534043586d83826c57422c1700000818273543505c6770797c786b636d767c7b6f5f4b37220d00162a3e51637382898b8882796e61534435251504000000000000000000001b30455a6f847664513d29150000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000014273a4d5e6e798286898b8c928a88878482807c7b797968533d281300000000000000001125394c5f7284959e8b79695d5756585e66707b887d6e5f4f3f2f1e0d0000000000000013273b4f63778c9d897464778b8d7a68564432200e0000000000000000000000000000000000000a1e314457697b8c8c7a695a504e536173869886725f4b37230f00001326384b5d6e7d8f9b8a796a5d5452576374879a92826e5c4935220e000000000a1f33475a6b77808486868684838282808f8270604f3e2c1a0900000000000000000610181e23263145596d829688735f4b37231919160f05000000000000000000001b30455a6f84999d88725d49341f0b0a1725364657687a8c83715f4d3b28160300000000182d41556a7d92917c78828c898074685c51637585715c47321c0000000d1f2f3f4e5b656b6a80937d6a60768c7b66503b261209000000000000081c3044566670716c605141301d09001f344a5f748b78634e445a6f868279828572685a4a40566b80836e58432e1900041626364553616d79848d867d7176828a898077634d38230e001c3045596d82928f837d8289807162534332210f00000000000008101414172c42576c82826c58432e1a060100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000b1e3040505d666c70737476888676706f6c6a686664645c4b3824100000000000000000172c4054687c8fa295826d5b4b4240434a535e6a77857d6d5d4d3c2b19080000000000000c2034485d71869a8f7a6e8294826f5d4a382614040000000000000000000000000000000000000215283a4c5d6d7d8c87786c6563667080908b7a6856432f1c080000091b2d3f506070808c98897a7069676a73829294857463513f2c1906000000000e23384d62768994999b9b9b99989797959a8f7d6d5b4a3826140100000000000000000004090e162a3e52677b908f7a66513d291400000000000000000000000000001e33485d72889d9b86705b46301b0600081828394b5d6f828f7c6a584533200d0000000012263b4e6276899885716f79859087796c5d586b776a5945301b000000011121303d49515664778b887667788e79644f3a2510000000000000000c21364b607384877d705f4c38240f001f344a5f748b78634e445a6f868888888a8678675542556a80846e58432e19000f223344546371808b857a726d7b88877d756d65594734200b001f34495e73889a8571686c7583827161503e2c1a07000000000e1a24292a272a3f54697d87715d48331f1b160f07000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000011222323f4a52585c5e5f6c809383715e575553504f4f4a3e2e1c0900000000000000001c31455a6f8498a28e7965513e2d2b2f37414c596675847b6b5a4837251301000000000005192e42566a7d929580778b8a776452402d231e18110a02000000000000000000000000000000000b1d2e3f4f5f6d7a86898079777b838f897c6d5c4b392613000000001021324251616e7a868f8d847d7c8086928d837566564534220f00000000000e23384e63788e9a9793908f8d8d8d8d8f90938b79675543301c080000000000000000000000000f24384c60758a95806c57422e1905000000000000000000000000001f344a5f74899f99846e59442f1a0400000a1c2d3f5164768a8875624f3c2916020000000b1f3346596c80928e7b696772808e8a7b6b5a5c625a4c3c2916000000000312202c363d485b6d808f857b838874604b37220d000000000000000d22374c62778c9b8f7b67523c2712001e33485e73897a6650445a6f86827272758385715d48576c82836c57422c1700182b3e51627282887c71676e7d8b80746a615951483b2a1805001f344a5f748b97826c5759647283806e5c4a3724110000000c1d2c373e3f3c393d53687c8b75604b3634302a231a0f0300000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000414222d373e4347495064788c8e7a6754403d3b3a3a362d20100000000000000000001f34495e73889d9f8a745f4a3622161b242f3b495766758677665443301e0c00000000000013273b4f63778c9a868092806c5a473f3c38332c261e150b02000000000000000000000000000000112131414f5d68737c83888a8a8782776b5e4f3e2e1c09000000000414243342505d68727b8287898b8987827a706557483928160500000000000d21364b5f738885827d7b7878777777787a7c8285725f4a35200b000000000000000000000000091d32465b70849986715c48331e0a000000000000000000000000001f344a5f748ba099846e59442f1a04000000102234475a6d8092806c5945321e0b00000003172a3d5062748698867462616f7d8e897866534c473c2e1e0c0000000000020f1a222b3e5061707c8587847a6a5845311d08000000000000000b2034485c6e7d878a7b67523c2712001c31465b70867d6955445a6f86826b5c667a8c76614c5b6f85806a55402b16001e32475b6e8082756a5f697b86796d62574e453d352b1d0d00001f344a5f748997836c574754647586796653402d1906000016293b495354514e4c52677c8d77624d4b49443e362d211304000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000004101a23292e3135495d718697836f5b4733262525221a0f020000000000000000001f344a5f748ba09d88725d48331e0907111d2b39485868798472604e3b29160300000000000c2034485c7085988d898774625a5754514c47403a31281e14080000000000000000000000000000031323313f4b5660686e727474726c645a4e40312010000000000000061524323f4b565f676d71737473716d665d5347392a1b0a000000000000081c3044576a74706c686664636262636366686c71705e4a35200b00000000000000000000000003182c41556a7d938b76614d38230e000000000000000000000000001f344a5f748a9f9b866f5a45301b0600000005172a3d5064778b8975614e3a2612000000000d20334557687a8b92806f5f606f809283705c48332b1e100000000000000000070f213242515f6970726f685c4c3b2a19060000000000000005192c3f505f6a72746e5e4c38240f00192d42576b8084705c485a6f86826b5663788d77624d61758a7a65513c2712001f344a5f7482867c71666d808980756a5e53473a2d1e0f0000001d32475c70869a86705b474657687a83705c4935210d00001d314558676966636260667b8f786460605d5952493e32221000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000070f15191c2e42566a7d938b76624e3a25110f0d0700000000000000000000001f344a5f748a9f9f89735f4a34200b00000d1b2a3a4a5b6c7d7d6b5846331f0b000000000005192d4155697d919b8f7c73726f6c6965615b554d443b31261a0d00000000000000000000000000000413212e39434d54595d5f5f5d5851473c30221303000000000000000615222e39434c53585c5e5f5e5c58524a4136291b0c000000000000000115283b4d5a5f5b5754514f4e4c4c4e4e5053575d5d52422f1b070000000000000000000000000012273b5065798e907b66513d2813000000000000000000000000001e33485e73889d9c87725c47321d08000000000e2134485b6f83917d6955422e1905000000031628394b5c6d7d8e8e7d6d5f6275898b76624d38230e0000000000000000000003142433414d555b5c5a6062574836230f00000000000000000f2132414e575d5f5b50412f1d090014283d5165798b7764525a6f86826b666c7d8a756056697c8874604b37230e001c314457656f798584786d6c7682887c7064584a3c2d1c0b0000192d42576c80958a76624e3b4b5d6f827864503c281300001f344a5f747d7b787776767b9079767675726d665c503f2d19000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000013273b5064788d927c6854402b1602000000000000000000000000001d32475c71879ba18c77624e3a26120000000c1c2c3d4f61738675624e3a251000000000000012263a4e62768a9b8786888786827d7a76706961574e43372b1e0f000000000000000000000000000003101c2730394045484a4a48433d342b1f120400000000000000000004101c2630383e4447494a4947433e372e24180b0000000000000000000b1e2f3d474a46423f3c3a38373738393b3e4249494134241200000000000000000000000000000d22364b5f748994806b56412c18030000000000000000000000001c31465b70869b9f8a74604b36210c0000000005182c3f53677b8f85715d4834200b000000000a1c2e3e4f5f6f7d8d8c7d6f636e838f79644f3a250f0000000000000000000000061524303a41464f60717565523e2a160100000000000000041423303b43494a473e32231200000e22364a5d7084826f5e5a6f86827b7b808a826e5a627386806c5844311c080015283948525c6773808a7d71646f7c898275685a4b3a2816030014293d52667a8f927d6a5744405264777d69543f2a1500001d3246596b7b868c8d8c8c8c948c8c8c8b8882796e5c48331e00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000c21354a5e728897836e5945301b07000000000000000000000000001a2f43586c8295a6927c6955412e1c0a0000000e20324456697c7765503b26100000000000000b1e33475b6f83978a7572757980858c8a847c746a6055493c2d1e0e0000000000000000000000000000000a141d252b30333434332f2921180d010000000000000000000000000a141c242a2f32343434322f2a231b11060000000000000000000000111f2b3234312d2a2724232222232426292e34342e2416060000000000000000000000000000081c31465a6f8499846f5a45311c07000000000000000000000000192e43586d8397a38e78644f3a261100000000001024384c6074898c77634e3a251100000000001021314151606e7c898d827672838f79644f3a240f000000000000000000000000061322303f4e5e6d7d826d58432e1903000000000000000005121e282f3434322b2114050000071b2e415466788a7c6c5e6f83878787857d7162606f808674624f3c291501000a1b2a363f4a55626f7d8b8373646b78878778695846331f0b000e23374b6074889b8874614e3c485b6d6f604e3b27120000172a3c4e5d6971777b7d8082908280807d7c7b79725e49341f0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000071b2f44586d829788735e4a35210c0000000000000000000000000015293e5165798d9f9885715e4b3928180a0000021427394c5e6a65594835210d00000000000004172b3f53677b8f907b6760656a7077828a90887d72675a4b3c2c1a09000000000000000000000000000000010911171b1e1f1f1e1a150e0500000000000000000000000000000000080f151a1d1f1f1f1d1a150f0800000000000000000000000000010e181e1f1c1815120f0e0d0d0e0f11141a1f1f1a120600000000000000000000000000000002172c40556a7d9388735f4a35200b000000000000000000000000162b3f54697d93a7927d6954402b170300000000091d31455a6e83927d68543f2b1601000000000313233242505e6b77828a8b888e85735f4b37220d000000000000000000000003142331404e5d6c7c8c826c58432d1803000000000000000000010b141b1f1f1d180f0400000000112437495a6c7c8b7c6e64707070706f6a6065707d897968564532200d0000000c19232d3844515f6d7b8b826f5c6876868775624e3a261100081c3145596d8295917d6b59463e4f5a5b5142321f0c00000d1f303f4c565d6266686a7b90796a6a686766646154432f1b000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000152a3f53687c918d78634f3a2511000000000000000000000000000e22364a5d708394a18e7a68574636281a1008030a1d2f404e5552483b2b1906000000000000001024384c60748896826d5950565c646d778491908577695a493826130000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000012273b5065798f8d77634e39240f00000000000000000000000011263b4f64788da297836e5a46311d090001080d0e162b3f53687c92836d59442f1a05000000000005142332404d59646f767b7d7c75675643301c0800000000000000000000000d2032414f5e6c7b8b8a7764513d2915000000000000000000000000000000000000000000000000071a2b3d4e5e6e7c8a80766e68646365696f778388796a5b4a392715030000000006101a2633414f5d6c7b8c7763596776877d69543f2a14000116293d5165788c9b897663513f3e4646403324140200000112212e3942494d5153667b8f7964545352514f4c443625130000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001025394e62778c927c68533f2a1500000000000000000000000000071a2d405365768899988675645445382c231c17101222313b403e362a1d0d0000000000000000091d3144586c80948874604b4148515a6672828f968878675543301c080000000000000000000910161a1c1d1d1c1915100a02000000000000000000000000000000000a11171b1d1d1d1c1a17130f0a0400000000000000000000000000000000000000000000040c12171a1b1b1b1a16120c060000000000000000000000000000000000000000000d22374b60748a917c67523d28140000000000000000000000000c21364a5e72879b9e8975604d3925110b151c22231f25394e63778c87725d48331e090000000000000514222f3c48525b6267686762605444321f0b000000000000000000000014293d4f5f6d7c8b8f7d6c5a4734210e000000000000000000000000000000000000000000000000000e1f3040505e6c78848a837c7978797d838b8276695b4d3d2c1b0a00000000000000091523313f4e5d6d7d78634e5968797d69543f2a1500000e2235495c6f839593826e5c493731312c2215060000000003111c262e34383c50667b8f78634e3e3d3c3a38312618080000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000b1f34495d728797826c58432e19050000000000000000000000000011233647596a7a8b9993827263564a3f37312b2215131f272b2a23190d0000000000000000000115293d5164788d8f7a66523e353e4855627082939685725f4b37230f0000000000000008131d242b2f323232312e2a251e160d0300000000000000000000000006131d252c30323232312f2c28241e19120c040000000000000000000000000000000000010d1720262c2f3030302f2b262119110800000000000000000000000000000000000000081d32465b708595806b56412d18030000000000000000000000071b2f43586c8094a4907c6854402d191d28313738332934495e73888b75604b36210c0000000000000004111e2a353f474d5253637472614e3b26120000000000000000000000172c42576c7d8c908270604f3d2b18050000000000000000000000000000000000000000000000000001122232404e5b6670798086898a888580776f64594c3d2f1f0e000000000000000000051321303f4f6070705e4a4a5b6c7363503b2712000006192d405366788b9d8c796653402c1c181005000000000000000a131a1f24394e63788d77624c37282725231e150900000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000061a2f43586d829686715c47331e090000000000000000000000000006182a3b4c5c6c7a8996918273675c524b463f3324130c1316150f0600000000000000000000000e2135495d708596826d5945312b3744536375889b8f7a66523e29140000000000000c192530383f4447474746433f39322920150900000000000000000000071624303940454747474644413d38332d261f181007000000000000000000000000000005121f2a333b404446464644403b352d241b1004000000000000000000000000000000000003182d41566b8095856f5a45311c0700000000000000000000000014293d5165788ca09884705c4935222e3b444b4d473a30455a6f848d78634e39240f0000000000000000010d18232b3342516170827d69543f2a150000000000000000000000162b4055697d8a807162534231200d000000000000000000000000000000000000000000000000000000041422303d49545d656c70737473706b645c52473b2e1f1101000000000000000000000312213142525d5d51413d4e5b5f564634200c000000102336495b6d809096836f5b47321e1f1b14090000000000000000060c20354a5e738776604b362111100d0902000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000152a3e53687c928b75604c37220d00000000000000000000000000000c1e2e3e4e5d6b77848f9285796f665f5a5142301c0800000000000000000000000000000000061a2d4155697c908874604c3824263546586c809496826c57422d1800000000000d1c2a37424c53595c5c5c5b58534d453c32271b0e000000000000000003152534424c545a5c5c5c5b5956524d47413b332b231a10050000000000000000000000051423303c464f55595b5b5b59554f4941372d221508000000000000000000000000000000000013283d51667b9088735e4a35200b0000000000000000000000000e2135495d7084979f8c7864513e2d3e4c57606258473441566b80907965503b2610000000000000000000061726344251606f808f7c68543f2a14000000000000000000000012263b4e6170746e625344352513020000000000000000000000000000000000000000000000000000000004121f2c37414a51575c5e5f5e5b5650483f35291d1001000000000000000000000000031425344149494133303e474a443828170400000007192c3e506171828e89735e4833333430261a0b0000000000000000071b3044576b7d735f4a341f0a000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001025394e63778c8f7965503b26110000000000000000000000000000001020303f4d5a66727c868d8c8279746f5f4b37220d04000000000000000000000000000000001226394d6175898f7b67533f2b17293c5065798f99846e58432e1900000000091b2b3a48545f686d717272706d6861594f44392c1e10010000000000000d203243525f686f727272706e6b66615c554f473f362d22180c00000000000000000002132332414e59636a6e7070706e69645d544a3f33261708000000000000000000000000000000000e23384c61768b8c77624d39240f000000000000000000000000061a2d4154677a8ea195826d5a48394b5c6a7476644f3a3e53687d917b67523c27120000000000000000001123354452606f7d8e8673604d39251100000000000000000000000b1e3143525d5f5b514435261707000000000000000000000000000000000000000000000000000000000000020e1a242e363d4247484a4846423c352c23180c0000000000000000000000000000000716242e34342e23202b333430271a0b00000000000f21324353637079796c59463e48494338291907000000000000000014283b4e60716f5c47321d08000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000b2034495e7288937d69543f2a150100000000000000000000000000000212212f3c49555f6971787d828f8576624d38231d19110600000000000000000000000005121d253145596d8294836e5a46321e23384d62778d99846e58432e1900000002152738495866727b8387888886837c756c61564a3c2e1f10000000000000162a3d5061707c848788888784807b76706a635b52493f35291e1104000000000000000e203142515f6b767d84878786837d7870675c5144352617070000000000000000000000000000000a1e33485d7186907b66513d2813000000000000000000000000001124384b5e7184979e8a7764524155687a887d6955403b50667b917c67523c2712000000000000000000182c405362707d8e8c7a695644311e0a00000000000000000000000214253440484a473e3326170800000000000000000000000000000000000000000000000000000000000000000007111a22292e31333433312d2821191006000000000000000000000000000000000006121a1f1f1a110f181e1f1c14090000000000000315263645535e65655c4e3e4f5c5e554737241100000000000000000c1f3143535e5d513f2c190400000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000061b2f44596d8397836d58432e190500000000000000000000000000000003111e2b37424c565d68788989776658473333322d24180a000000000000000000000514232f393e3d5164788c8a75614e3a2623384c62778d97826c57422d180000000b1f3244566776848f9086807d828991898073675a4c3d2e1e0d00000000001c3045596c808f989c9d9d9b9895908b857d766f665c52473b2f221506000000000005182b3d4f606f7d8992908987878b928c84796e615344352514020000000000000000000000000000041a2e43586c8294806a55402c1702000000000000000000000000081b2e415467798c9e95826f5c4a5a6f849884705c483a4f64798f7d68533e29130000000000000000001b30465b70808f8e7d6e5d4b392714010000000000000000000000000716232d3334322b221608000000000000000000000000000000000000000000000000000000000000000000000000060e14191c1e1f1e1c18130d05000000000000000000000000000000000000000000000000000000000000000000000000000000000b1e30404d5452504a3e485a6d736554412d1900000000000000000214253542494840322210000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000162b3f54697d9286715c47321e0900000000000000000000000000000000000d1a25303b4e61748693806c5a493b444847403628190a000000000000000000122332414c53524b5c7084917d6955422e2d3d5165798f907c68533f2a1500000013273b4e617385948f80726b696d76828f9186786a5b4c3c2b1908000000001f34495e7388918f8f8f8f909295989d99928a82796f64594d4032241506000000000d2135485a6d7d8e96887c74707276808a978c807162534332200d000000000000000000000000000000152a3e53687c91846e59442f1b06000000000000000000000000001225374a5c6f82939f8c7967565a6f84998b7764503d4e63788f7c67523d28130000000000000000001a2f44596d82897d6f60503f2e1c0a00000000000000000000000000000611191e1f1e180f0400000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000060d12151514110c05000000000000000000000000000013273b4e5e6965584c4454667784705c47311c0000000000000000000817252f34332d22140400000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000011263a4f64788e8a75604b36210d000000000000000000000000000000000000081b2f43576b7d928d7864503e4d585e5c53463728170500000000000000091d3041515e68675e54687b8f85715d4a38404b5a6c80948774614d392510000000192e42566a7d9196837161565459647080909789796a5948372512000000001f344a5f74807b78787878797c8084888e949b968c82766a5e50423324150500000014293d5064778a9887776a605b5d636c788796908271604f3d2a1704000000000000000000020a0f0f0d1025394e63778d88725d48331e0900000000000000000000000000081b2d3f516375879897857362556a7d9294806c59474e63788f7c67523c2712000000000000000000162a3e516472746c605142322110000000000000000000000000000000000000000000000000000000000000000000000000000001080d0f0f0f0b05000000000000000000000000000000000000030f171c1c1810040000000000000000000000000000000000020f1921272a2a292620191006000000000000000000000000182d41566a7c75695e5562728388725d48331e0000000000000000000007121b1f1e191105000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000c21364a5f74898e79644f3a25110000000000000000000000000000000000000b20354a5e72879b88735e494c5c6b7370645546352310000000000000000f24394c5f6f7c7a70675f73878d7966524d535d69788a8b7a695744311e0a0000001d32475c71869a8d796653433f4653617284969888776654422f1d090000001d324659686b6e7677666365676a6e73798088909994887b6e615142332312000000192e43576c80948e7a69594d46484f5a6878899b8f7d6c5a4733200c000000000000000009151e2424211e2035495e72888b76614c37221212100c06000000000000000000001022344658697a8c9c91806e5d61758899897663515064798f7965503b26100000000000000000000f223546555e5f594f42322314040000000000000000000000000106090b0b0a070300000000000000000000000000000000000a141c22252524201911070000000000000000000000000000000413212b31312c2214050000000000000000000000000000000312202c353c3f3f3e3a342c23180c0000000000000000000000192e43586d83877b7169708291836e5a45311c00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000081c31465a6f84927c68533e2a150000000000000000000000000000000000000f24394e63778d9b86705b4656697a8883736352402d1a0700000000000012273c52677c8a8d847a716a7d92826e5e61676f7a87887a6c5c4c3a2815020000001f344a5f74899d88735e4a362a35445566798c9f9584715f4c392512000000172a3b4a5c6f808b806c57505255595e656c737c8691998d80706151402f1d0b00001d32475c71869b86725e4b3b31333d4a5a6b7d919c8a76634f3b26120000000000000008182732393a3633303044596d838f7965503b27272725211b130900000000000000000517283a4b5d6d7d8f9e8c7b6b5b6a7b8d93826e5c52677c8c77624d38230e0000000000000000000517283742494a463d312314050000000000000000000000040e151b1e20201f1c17110a02000000000000000000000000000e1b2730373a3a39342d241a0e02000000000000000000000000001022323e46463f3223110000000000000000000000000000001021303e49505454534f4840352a1d1001000000000000000000162b3f5367798a8e857c808f8b7866533f2b1700000000000b14191a160f04000007121b1f1e19110500000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001182c41556a8094826c57422d1804000000000000000000000000000000000011263b50667b909b866f5a465b70829192826f5d4a36230f00000000000010253a4e616e767d868c857d79898b7773767b838a82766a5c4e3e2e1d0b000000001f344a5f748a9c87705b46311c2637495c708497a18f7c6855412d190400000d22374c62778c9b86715d483d40454a5058606973808c998f806f5e4c3a281502001f34495e738998836d58432e1d202c3c4e61758a9e927d6955402c1702000000000000132536444d4f4b4846434254687d927d68543f3c3c3c3a352e261a0e00000000000000000b1d2e3f4f60708090998978695e6f808f8c7a69586b8088725d49341f0b000000000000000000000a19252f3434312a20130500000000000000000000000b1721292f33353634312c261e150b00000000000000000000000c1d2c39434b4f4f4e4841372c1f1204000000000000000000000000192d3f505b5b50402e1b09000000000000000000000000000a1c2e3f4e5b656a6a68635c52473b2e1f100100000000000000001024374a5b6b79869190908e7d6d5b49362310000000000f1d272e2f2b2215060a17252f34332d22140400000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000003030113273c51657a8f86705b46311c07000000000000000000000000000000000011263b50667b919b86705b4654647282928d7966523e2a160100000000000b1f3243515b636a71777c8286888a888986827c766d64594c3e30201000000000001e33485d71879b88725d4833201a2d4054687c92a69885705c48331f0a00000d22374c61768ca08c77634e3a2c30363d444d57616d7a89988d7c6a5744311e0a001f34495e738997836c57422d180e1f32465b70869a98846e59442f1a050000000000001a2e42546164605d5b58575663778d826c58525252524e4a42382c1e0f000000000000000010213242526171828f978777686170808f8776687286826d58442f1b06000000000000000000000008131b1f1f1d160d0200000000000000000000000d1b28343d44484a4b4946403931271d1205000000000000000006192a3b4a565f6464635d54493d302214100e090300000000000000001e33485c6e6e5d4b382613000000000000000000000000001326394b5d6c7880807d776f65594c3d2e1f0e0000000000000000081b2c3d4d5b68747d87887d6f5f4f3e2c1a070000000c1d2d3a42443e3324131a283542494840322210000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000b131818161223374c61758a89745f4a35200b060400000000000000000000000000000010253a4f64798f9d88725d48465463738596826d5945301b070000000000021425343e474e565d63686c7073747473706d68625a51473b2e20120200000000001a2e43576b80928b77624e3e2c1a25394e63778da29f8b76614d38230e00000a1f34485d71869a927c68543f2b1b2129313a44505d6a798a998874614d392511001d32475c71879985705b47342210192e43586d83989b86705b46301b060000000000001e33485d72787572706e6c6b6a728786706767676767635e554a3c2d1c0a000000000000000314243443536270808d9687786b61707d8b867a7d8b7965523e2915010000000000000000000000000000000000000000000000000000000000000a1b2b394650585d5f605e5a554d443a2f231609000000000000000f23364859687379797770665b4e40322625231e170f050000000000001f344a5f747a675543301d0a000000000000000000000000192e4256697a8b948d898b8276695b4c3d2c1b0900000000000000000f1f2f3d4a56616b72736b5f514131200f0000000015283b4b5759514231202b3846535e5d513f2c19000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000101d272d2e2b272432475c70868d77634e39241b1b19150f080000000000000000000000000d22374c61758a9f8b76624d39455566788b88735e49341f0a0000000000000716222b333b42484e53585b5e5f5f5e5c58534e463e34291d100200000000000014283c4f627486927d6b5c49352120354a5f748b9fa5907a65503b2611000005192e42566a809397836e5a45311c0d151d27323f4d5c6c7c8f907c68543f2b16001a2e43586c80948a7663513f2e1e1a2f44596e84999b86705b46301b060000000000001d32475b6f838b8886838282807d808a7d7c7c7c7c7b7872675a4b3926120000000000000000061626354453616f7c8995897c70656d798389877c6d5c4936220f00000000000000040b1014151614120d0700000000000000000000000000041628394957636c727474736f6960574c4134271809000000000000162b3e526576868f908c84786c5e50413b3a38322b22170b00000000001e33485e7385725f4c3a27140100000000000000000000001e33475c718698897973768088796a5a4a392715020000000000000001111f2d39444e575d5e584e4132231302000000001c304558696e604f3e2d3b485664716f5c47321d00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000d1e2e3a4243403c3a3742576b80907b66523d3030302e2a231b100500000000000000000000091e32475b6f8396917c68544138495b6e828c76614c37220c00000000000000050f181f272e34393f4346484a4a4847433f39332b21170c00000000000000000d203345576775808278634e38231e33485e73899fa7927c67523c271200000013273b5064788d9d88745f4b36220d010a15212f3e4e5f718597836d58442f190014293d5164778a93806e5d4c3c2e2235495d72879b97836d58442f1904000000000000182c40536575848e94989796959494979493939393918d85786855402c160000000000000000000817263543515e6b77828c8e8378716c6f73726b5f4f3e2c1a070000000000020e171f25292a2b2a26221c140b01000000000000000000000e21344657677580888b8b89847c746a5e52443627180900000000001b3045596e829591827d868a7c6e5f50504f4c463e34291c0d000000001b30455a6f847c695643301d0a00000000000000000000001f344a5f748b98836d5e626d7a8978675644321f0c0000000000000000010f1b27323b434849443b3023140500000000001f34495e737d6d5c4b3c4a58667482715d48331e0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000162a3c4c565854514f4c4b52667b90806a5546464646433e372e22150600000000000000000004182c405366798c9885715e4d3d3e53677c8d77624c37220d000000000000000000040b13191f252a2e3133343433322e2a251e170e05000000000000000000031628394957636a6c6a5c4a36211f34495e73899fa7917b66513c27120000000d21354a5e72879b8e7965503c27130000031120304255687c9286705b46301b000e2134475a6c7d8f8c7a6a5a4c3e30405264788da1927d6954402b16010000000000001124364857667179808487888989898988878684827d7c79776a56412c170000000000000000000008172533404d59656f78808689868280735e584e4131210f00000000000513202a333a3e3f403f3b362f271e140900000000000000000015293d5063758593897d78797c84877c6f62544536271706000000001e33485e73889d88746972808d7d6e636664615a51473a2b1c0c000000172c4055697d8673604d3a271401000000000000000000001f344a5f748b97826b564f5c6b7b8673614e3b2815020000000000000000000a151f282f333430281f12050000000000001f34495e73897969594b5a687685806b57432e1a00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001c3146596a6d69666462605f61758a846e5b5b5b5b5b58534a40332415040000000000000000001024374a5d6e80918e7c6b5b504b50657a8b76604b36210c000000000000000000000000050b1015191c1e1f1f1e1c1915100a030000000000000000000000000a1b2b3946505557554d3e2d1a22374c61768ba0a38e78644f3a2510000000071b2f43586c809594806a56412d190404060a12253a4e63788f87705b46301b0005182b3d4f607082918978695c4e414c5d6f82959c8976624e3a26110000000000000007192a3948545e656b6f71737374737372716f6e6b696764625c4d3b27130000000000000000000000071523303c48525c656c717474736f6758453b3023130300000000041423313d474e53545554504a433b31261a0e00000000000000001b2f44586c80938d7a6a6464687079858272635445352413010000001f344a5f748b9b866f5a616f7d8c7b787a79756e6458493a2a1806000012263b4f64788d7c695643301d0a000000000000000000001e33485d728898836e59444d5e6e807d6b5845311d0900000000000000000000020c141b1e1f1b150c01000000000000001c31455a6d828877675b6978878775624f3b281400000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001e33485e73837d7b78777574737284887270707070706c665d514233210e000000000000000000071a2d3f516272829089796d6460626d8085705c48331e0b00000000000000000000000000000000000000000000000000000000000000000000000000000000000d1c28333b4042403a2f2016293d5165798fa39c88745f4b36210c0000000014293d5165798e9985705c47331e17191b1f232a394e63788d856f5a45301b00000e203142536372828f88796c5f5158697a8d9f92806c5946331f0b00000000000000000c1b2a37414a51565a5c5e5e5f5e5e5d5c5a58575452504d493e2f1e0b00000000000000000000000005121e2a35404951575c5f5f5e5b544a3a281e12040000000000112232414f5a62686a6a68655f574e43382b1e11020000000000001f34495d72889b86715d4f4f545d6774828272635241301e0c0000001f34495e73899b86705c515f6f808a8c868689827567584736231100000c2135495d72868673604d3a2713000000000000000000001b3045596e839888725e4b405163758774604d392510000000000000000000000000000000000000000000000000000000162b3e5164768885756a79888a7969574533200c00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001b3044586c7d8e918f8c8b8a8988888e888787878786827a6f61503d29140000000000000000000010223344546371808a8a807875767d8a7967544338291907000000030f171c1d1b150e0400000000000000000000000000000000000000000000000000000000000b1620272b2c2b261e21293345586c8094a693806c5945311c08000000000e22364a5e72879b8a76614d382c2c2e3034383e4755687c91806b56422d1800000214253545546371808c8a7c6f626676889997867462503d2a17030000000000000000000c19252e363c41444748484a484848474543413f3d3b38352d20110100000000000000000000000000010d18232d353d43474a4a494640382c1c0c010000000000091c2e40505f6c767c80807d79726a6055493c2f20110200000000001f344a5f748b99846e58514b444a5663718282705f4e3c2a170400001c31465b70869a8a7560536576878983716f757d86766553402d190500061a2e43576b80907c695643301d0a000000000000000000172b4054697d928e7a66534045576a7c7c68533f291400000000040c1112110e080a1012120f0a030000000000000000000f223547596a7b8c8579898a7a6b5c4b3a281603000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000015293c4e606f7c858b909394959595959493918f8d8b8986806c57422c1700000000000000000000041626364554616d77808688898882786b5c5e554736241100000413212b31322f2921170b0000000000000000000000000000000000000000000000000000000000040c121617161626343d44516275889c9a897663503d29160100000000071b2f43586c8094907b67534242424345494d5259647285897663503c2813000000071727364553616e7b888e80737384949a8a7968564532200d000000000000000000000008121b22282c2f3233333433333332302e2c2a28252320190f020000000000000000000000000000000006101921292e32343434312c251b0e000000000000001225394b5d6e7d8a9188848488877d73675a4d3e2f201000000000001f344a5f748b99846f6b655f585046536272827d6b594734210e0000192d42566b80948f7b675d70838a788b7c69616c7a836f5c48341f0a000014283c5064798d86725f4c39261300000000000000000011263a4e63778c96836f5c4a3a4d60727766533e29140000000c1720262727231c1e252727241e160d03000000000000000518293b4c5d6e7d8e8b8a7a6b5c4d3e2d1c0b0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000d1f3142515e6971767a7c80808080807d7c7b79777573706e65533f2b16000000000000000000000008182736434f5a636b707373726d665a6d736554412d1900001022323e4647443d34291c0e0000000000000000000000000000000000000000000000000000000000000000000e213444515862708092998c7c6b594734210e00000000000014293d5165798d96826d58575757585a5d61666d76828a7b6b594734200d000000000918273543505d6a7784908582929c8c7b6b5b4a3927150300000000000000000000000000070e13171a1c1e1e1f1e1e1e1c1b19171513100e0b060000000000000000000000000000000000000000060e14191d1f1f1f1c1811080000000000000000182d4155687a8d9282746e6f72798385786b5c4d3e2e1d0c000000001e33485d72879c8984807a736c63594e546475877663503d2a16020013283c5064788c96836e64788d826d808673605c6d8075604b36200b00000d2136495d72868f7c6855422f1b0800000000000000000b2034485c7085988c7966544143566465594937230f00000d1c29343b3c3c372f31393c3c3832292015090000000000000011233547576878889285756657483828170500000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000002132332414c555d6265686a6a6b6a707768666462605e5b595447362410000000000000000000000000091825323d47505e69655e5d5954667783705c47311c0000192d3f505b5c5850463a2c1e0f00000000000003090e0f0f0d080100000000000000000000000000000000000014293d51626c74808f92887b6d5e4d3c2a17040000000000000e21364a5e72869a88726c6c6c6c6e6f72767b828983786b5d4d3c2a17040000000000091725323f4c596672808d929e8e7d6e5d4d3d2c1b0a000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001d32475b708598897563595a5e66707c897a6b5c4c3b2a19070000001a2f44586d82968e79828b8880766b605358697a806d5a45311c06000d2135495c6f83958a766a80907b66768a7b6854636f665846321d090000061a2e43576b809485725e4b3824110a0600000000000005192d4155697c909683705e4c3a475051493b2b1a0700091b2b3a474f52514b43434d52524d463c32271b0e0000000000081b2e40526475868a808f8575665645342210000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000514232f3942484d5053545456667a857363544d4b4946444037291907000000000000000000000000000814202d41566a7c75695e5562728388725c47321d00001e33485c6e726d63584a3c2d1d0d000000010c161e232524211c140b0000000000000000000000000000000000162b40566b80888f867d756a5d4f402f1e0c00000000000000071b2f43576b80938d83838383838486888884807870665b4d3f2f1e0d000000000000000715222f3c4d5e6e7d8fa195807264564839291a0a0000000000000001080c0d0c09050000000000000000000000060f171c1d1c18110800000000000000000000060f161b1d1c170e0300000000000000000000000000000000000000000000001f344a5f748999846f5a47444a535f6b79897a6a5948362412000000152a3e52667a8e95826e77828d897d7163555d7080705c47321c070006192d405366778993806e838d77626e82836f5b535a55483a291603000313202a3c5064788d8e7a6754412d211f1b140a00000000001226394d6074889b8e7b695744343b3c362b1d0d000012253849586367655f565460676761594f44382c1e10020000000f23374a5d70828b7a707d8e847463523f2d1a060000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005121d262e33383b3e3f3f5065798d827262544537312f2c24190b00000000000000000000000000000003192e43586d83877a7168708290836e5a45311c00001f34495e72828075685a4b3b2b1a090003111e2932383a3a3630271d100300000000000000000000000000000814283d50616d77848980756a5c4e3f2f1f0e000000000000000014283c5064778c937d7c8082868a87837d7770675e53493d2f2111000000000000000002142637495a6b7c8d9d918691837466574738281706000000000008141c2122211e19120900000000000000000c18232b3132312c241a0d00000000000000000d19232b3032312b201303000000000000000000000000000000000000000000001f344a5f748b99846e605b554e464e5b6a7988766553412f1c0900000f23374a5e718597897665707b888f82736454646c6253412d19040000102336485a6b7b8a8a77868c7660677b8a75604b4441382a1c0b00000f21313d45495d71869784705d4a3636342f271c0f010000000a1e3144576a7d90998673614e3b282722190d000000172c415567767c7a726963727c7b756c6156493c2e2010000000152a3e53667a8d7c6c606f7d8c826f5c4935210d0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000a12191f2326282a364a5d708390827163554738261711070000000000000000000000000000000000162b3f5367798a8e857c808f8b7866533f2b1700001b2f435463738487786859493827160511212f3c464c4f4f4b443a2e2112030000000000000000000000000d1a242b3343505a66738291887a6c5d4d3d2c1a09000000000000000c2135485d70859984706a6c70747a82898b847a7066594c3d2d1c0a000000000000000c1f3143556778899a958474839284756556453524120000000007172530363737332e261b0e0000000000000e1c29353f46474640372b1d0e0000000000000e1d2a363f4547463e31210f000000000000000000000000000000000000000000001f344a5f73899b86787570696259504c5b6b7b83705e4c3926120000081b2e4154677a8c93826e5e6a7786928271605357514435241100000007192b3c4d5d6c78807d848e786462778d79644f3a2d261a0c000000192c3e4f595a576a7d938d7966524b4b49433a2d1f0f0000000215283b4e60738597917d6b57432f1b0e0700000000182e43586d7c858d867b707a828a898073675a4c3e2e1e0d0000172c42576c82806e5e515f6e7b8a7865503c28130000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000050a0e11131a2d40536577899082736556432f1b060000000000000000000000000000000000001024374a5b6b79869290908e7d6d5b493623100000132536455566778987776656453423111e2f3f4d596164645f574c3f30211100000000000000000000000c1c2b374043413d4855637384948b7b6b5a493826130100000000000005192d4155697d928a7661575b60666d757d898e83776a5b4a3928150200000000000115283b4e607285969988766673839384736352412f1d0a000000122535434b4c4c4842382c1d0d000000000e1d2c3a47525a5c5b54493b2c1b09000000000a1b2c3b48525a5c5a4f3e2b18040000000000000000000000000000000000000000001c31465b7085998c838a857d756c62574d5e6f827b6855422e1a0500001225384a5d6e80928c7a6959677687907d6b58443e33261706000000000d1f2f3f4e5b656b6a80937d6a60768c7b66503b261209000000001e33485c6d6f6c68778c96826e6060605e564b3d2d1c0a0000000b1e3143566778899787725d48331e090000000000152a3e5160687079828c82746e76808985786a5c4c3c2b180500172c42576c8272615041505e6b79806a56412c170000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000011233648596a7a8b9183725d48331e09000000000000000000000000000000000000081b2c3d4d5b68747d87887d6f5f4f3e2c1a07000008182737485a6b7c8f85736352402f1d293b4d5d6b75797973695d4e3f2f1e0c00000000000000000005182a3a495458564d424555657688998978675543301d0a0000000000000012263a4e62768a917c6853464b5259616b7785948879685744311e0b0000000000081c3144586b7d90a08e7c6a596475869282705e4c3a27130000001b2f42536062605d554a3b2b190700000b1c2c3b4a58646e727066594a392613000000001427394a59656e726d5b47331e0a000000000000000000000000000000000000000000182d41556a7d92917c78828c898074685c51637585715c47321c070000081b2d3f516373859487766658687a8d88735f4a362116080000000000011121303d49515664778b887667788e79644f3a251000000000001f344a5f7385827d7b85998b7776767672695b4b3a2713000000021426384a5b6b798483715d4833231405000000000e2133424d555d666f79858575656c7682897a6a5a4835220e00152a3e52657066544333404e5b68746955412c170000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000006192a3c4c5d6c7a8785715c47321d08000000000000000000000000000000000000000f1f2f3d4a57616b72736b5f514131200f00000000091a2b3c4d5f708392826f5e4c3b293246586a7b898f8e877a6c5d4d3c2a180500000000000000000e21344758676e6a5f514148596a7c90968572604d3a2612000000000000000b1f33475b6f8397836e5a46373e464e5a677687978674614e3a261100000000000e23374b6074889b9784705e4c57687a8c8e7c6956432f1b0700001f34495e71777671685948362310000819293a4a596876828884776856422e19040000001b2f43566877828876614d39241000000000000000000000000000000000000000000012263b4e6276899885716f79859087796c5d586b776a5945301b060000001022334556667686948474675d71868e78634e39240f000000000000000312202c363d485b6d808f857b838874604b37220d00000000001c31465a6e82919391919e958c8c8c8c86796956422d1900000000091b2c3d4d5b676f6f64544b413222110000000004152431394149525c67738084725f646f7b887764513d2813000f233547555b56483726303d4b585f5a4c3a261200000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000d1e2e3f4e5d6972726654412e19050000000000000000000000000000000000000001111f2d39454e575d5e584e413223130200000000000d1e3041536576898d7b6a584635394e61758891807d888b7b6a594735220f000000000000000015293d516476837d705f4c3b4d6072869a907c6955422e1a0600000000000004182b3f53677b8f8a75614d392a323c4958697c8f917d6955402c17000000000013273c51667a8fa38f7a6754414b5d6f839686725e4a36210d00001e33485d70848b857766533f2b17041526374758677786949d9183705b46301b060000001f34495e728695907c67533e2a160100000000000000000000000000000000000000000b1f3346596c80928e7b696772808e8a7b6b5a5c625a4c3c2916010000000416273848586776849185776d6c839079644f3a250f0300000000000000020f1a222b3e5061707c8587847a6a5845311d080000000000172b3e5163727d878b8b8c9e8d83827d7c7b6e59442f1a00000000000e1f2f3d4a545a5a5a635e51402d1a060000000007162533404d59646f7a858478636c7682877d69543f2a150006182937424642382a191f2d3a454a463c2e1d0a0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001021303f4c575e5e5648372512000000000000000000000000000000000000000000010f1c28323b434949453c302314050000000000000112243647596b7d9088756452403e53687c9188746a798b897664513e2b1805000000000000001a2e43586c82948f7b66503b43566a7d929985715d4934200b000000000000001024384c607388907c6854402c1f2b3a4c60748998846f5a45301b0000000000162b40556a80949d89735f4b374053677b908d7964503b26110000192d4054687b8f95836e5a46311d1021334454657586969d8f82726555422d19040000001f344a5f74899f96826d5944301b07000000000000000000000000000000000000000003172a3d5062748698867462616f7d8e897866534c473c2e1e0c0000000000091a2a3a49586673808b8a827c868b77624d382b2013030000000000000000070f213242515f6970726f685c4c3b28150200000000000f22354554616b7274748296917d6b69676661523f2b17000000000001111f2c3840465667776f5d4a36210d0000000214253443515e6a7682877b7067727d8980736a5f4e3b261200000b1a252d302e261a0c0f1c283134322a1e10000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000312212e3a43494943382a1a0800000000000000000000000000000000000000000000000a151f282f343430291f1205000000000000000006182a3c4e60728593826f5d4b40566b8095866f5c6d8093826e5b4834200c000000000000001c32475c71879b8874604c383b4f63778ca18c77634e39240f0000000000000a16203044586b8093836f5b47331f1d31455a6f849987725c47321d0000000000172c42576c82979a866f5a4531384c61768b937d68533e291400001125384c6073889c8975604c38231c2e3f50617283949c8e8070625547372512000000001d32475b7085999c88735e4a36210d0000000000000000000000000000000000000000000d20334557687a8b92806f5f606f809283705c48332b1e10000000000000000c1c2b3a4855626e78828789877d6e5b4a473e31211000000000000000000003142433414d555b5c625f514030201101000000000005172736444e575d5f667a8e9986725f52504e4334220f0000000000000c1a2836455464748579644f3a240f0000000d1f314252616f7c888375696b788587796d61574d41301e0b0000000812191b19130900000b151c1f1d170d00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000003101d272f34342f271b0c00000000000000000000000000000000000000000000000000020c141b1f1f1c150c01000000000000000000000d1f31435567798c8d7a685643566b8297866f5a63778b8b77634f3b2712000000000000001e33485e738999846f5a453134495e73889d917b67523c271200000000000c1b28333b3e5063778b8b76634f3b27182e43586d839888725c47321d0000000000172c42576c829799846e58432e34495e738995806a543f2a150000091d3044586c80948f7b66523e2a28394b5d6e80909c8d7d6f61524437291a0800000000182d4155697d92a28d7864503b2712000000000000000000000000000000000000000000031628394b5c6d7d8e8e7d6d5f6275898b76624d38230e0000000000000000000d1c2a3845515c656c7173726b5f565f5b4f3f2e1b08000000000000000000061524303a415467766f5e4e3e2f1f11020000000000091826323b43484b5e72869a8e7a67533f393125160500000000000a1b2a3746546372838c77634e39240f00000015293c4f6070808d8071646c7b898476685c4f443a302313010000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000b141b1f1f1b140900000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000011325384a5c6e82938573604e556a809587725d5c7085937d6a55412d18030000000000001d32475c728898836d58432e31465b70879c937d68533e281300000000081a2a39465053505b6f83927d6a57432f233044596e849986705b46311c0000000000162b40556a809499846f5a453034495e738995806a543f2a1500000115293d5064788d96826d584430334557687a8c9c8d7d6e5f51423427190b000000000012263a4e63778ca0937d6a55412c18040000000000000000000000000000000000000000000a1c2e3e4f5f6f7d8d8c7d6f636e838f79644f3a250f000000000000000000000c1a27333e4952585c5e5d585164736d5d4a37230e0000000000000000000006131e30455a6f847c6c5c4d3d2f201204000000000009151f282f3343566a7d9196836f5b47331f1407000000000002152839475564728291826f5c4834200c0000001b3044586c7d8e7d706166798a837365584a3e32271e1204000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000040a0e11121212100c0701000000000000000000000000000000000000000000081a2d3f51637688907d6b5852677b918b7661556a809485705b46311c070000000000001b2f44596d829686705d4a3d38475c71879c917c67523c27120000000012253748576368635a667a8d86725f4b38383f4d5f738896826d58432e19000000000013283c51657a8f9d88735f4c3d3b4d61768c927c68533e28140000000d2135495d71869a88735f4b363f51637486988e7d6e5f5041322416090000000000000b2034485c7085999984705b47321e09000000000000000000000000000000000000000000001021314151606e7c898d827672838f79644f3a240f0000000000000000000000091d31445665695e51484c5d6e827a66513c27120000000000000000000000011b3045596e838b7a6b5b4d3e302212010000000000020c141a273a4e6175899c8a76634e3b2612000000000000081d31455765738291887664523f2c19050000001f34495e7388806f60586d8284736456483a2d20150b010000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000060b0f0f0f0f0c08020000000000000000000000000000000000000000000000000711181e232627272725211c150e0500000000000000000000000000000000000000000f223446596b7d908875635062768b8f7a6652667a9089735f4a341f0a000000000000162a3e5266798b8c79685a504d5363768a9f8b77634e39251000000000182d415466747d766c6371858f7a6754494c525d6b7c8f8c7966523e291500000000000e23374b5f7285968f7c6a5a504d586a7c918b77634e3a2510000000061a2e42566a7d928e7965513c4a5c6e80928f806f5f5041322314060000000000000005192d41556a7d939f8a75614c38230f000000000000000000000000000000000000000000000313233242505e6b77828a8b888e85735f4b37220d00000000000000000000000d22374c60747c6f63595a6a7a8c7c68533e2813000000000000000000000000172b3f5366798c89796b5c4e40301e0b00000000000000000b1e3245596c8092927d6a55412d190400000000000b20364b607584928a7a6a5847352210000000001f344a5f7482706151586d8375655546382a1c0f0300000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000020b141b2024252524211c1710080000000000000000000000000000000000000000030f1a242c33383b3c3c3c3a36302921180e030000000000000000000000000000000000000517293b4e60738693806d5a5b708495826d5963788e8b76604b36210b0000000000000f2336495c6d7d8d87786c65626670809291826f5c4834200b000000001a2f445a6f848d8980766e7b8f84705d5e61666f7a8a8d806e5c4a37230f0000000000081c2f42556778899788786c646369768792826f5c4834200b0000000013273b4f63778b94806b57435467798c9282716151413223140500000000000000000012273b4f63778ca0907b66523e2915000000000000000000000000000000000000000000000005142332404d59646f767b7d7c75675643301c0800000000000000000000000e23384e63778d82766d6978898c7864503b2611000000000000000000000000102336495c6e80908a7a6c5e4d3a261100000000000000000216293c506375899985705c47331e0900000000000a1f34495e7286877a6b5c4c3b291805000000001c31465a6d7363534253677468584737281a0c000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000008141e282f35393a3a3936312b241b110700000000000000000000000000000000000614212d3740474d505252524f4a443d342b20140800000000000000000000000000000000070f151e314356687a8d8a776454677a8e89766362778d8b75604b36210b000000000000071a2c3e4f606e7c888a8079777a838f8d827263523f2c190500000000182d425667717982888a837c868d797273767a828c867b6f61503f2d1a07000000000000132638495a6a78858f898078777c878f837363513f2c1905000000000c2034485c70849886725d4d5f728597857463534333231404000000000000000000000c2034485d71869a95826c58432f1a0600000000000000000000000000000000000000000000000514222f3c48525b626768676157493827140100000000000000000000000b2035495d7082908982788893826f5c4935210d000000000000000000000000071a2c3e50617283928b7c69543f2a140000000000000000000d203346596b7d8f8b76614c37220c0000000000061b2f4356687473695c4d3e2e1d0c0000000000162a3d4f5c5e55463749585f594b3a2a1a0a00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000b1926313b434a4e4f4f4e4b463f372e241a0e020000000000000000000000000000061524323e4a535b6166676767645f5851473d3226190b00000000000000000000000000020f1a232a2d2e394b5d708395826f5c5e7083938270667a8f87725d49341f09000000000000000f213142505e6a747c83888a8a88827a70635445342210000000000013263949565d656d7379808487898988898784807972695e514233221000000000000000091a2c3c4c5a67727b83888b8b88847c71645545342210000000000004192d4055697d918d7864576a7c8f8a7867564635251505000000000000000000000005192e42566a80939b87725d4935200c00000000000000000000000000000000000000000000000004111e2a353f474d576a786c5b4b3b2c1d0e0000000000000000000000061a2e41536372808c948d9486756452402d1a06000000000000000000000000000f213344546473828b7c68533e29140000000000000000000416293c4e6070828a76614c37220d0000000000001427394a575f5e574c3e2f20100000000000000e20313e484943372c3b454a463b2d1c0c00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000b1a2937434e575e636464635f5a534a41372c20130600000000000000000000000002132333424f5c666f767a7c7c7b78736c645a4f4337291b0c00000000000000000000000212202c373e424341415366788b8c7966546575868f80798491806c58432f1b060000000000000003132332404c5761686e727474726d665d5245362716050000000000091b2b39424a51585f656b6f7273747473726f6a655d564c403324150400000000000000000e1e2e3c4a565f686e727474736f685f53463728170500000000000011263a4e62768a937d6a617487907d6c5b4a392817070000000000000000000000000013273b4f64788da18d77634f3a261714100d09040000000000000000000000000000000000000000010d18232b34495e73887969594a3b2c1e1001000000000000000000001124354554616e79838983766757463523100000000000000000000000000000041526364655636f746f5f4c392410000000000000000000000c1e3042536270746b5a47331e0a0000000000000a1c2c3a444a49443a2e2011020000000000000213212c333430261d293134322a1d0f0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000081929384755606a7277797978746e675d54493d3124170800000000000000000000000e20314251606d79838b908f8c8b8d8880776d615447392a1b0c000000000000000000000f20303e4a5357585650495c6e829483705d586776848d908d8272614f3c29140000000000000000000514222f3b444d545a5d5f5f5d59534a4035271809000000000000000d1b262e363d444b51565a5c5e5f5f5e5c5a55504a42392f23150600000000000000000000101e2c38434c53595d5f5f5e5a544c423628190a000000000000000b1e33475b6f839785706c7d928572604f3d2c1b0a00000000000000000000000000000c2135495d71869a927d6954402e2c2925221d18120b040000000000000000000000000000000000000006101f34495d7286887768594a3c2e1f0f000000000000000000000617273644515c666f7470655849392817060000000000000000000000000000000818283745525b5f5c5141301d09000000000000000000000113243544525d5f5a4d3d2a1704000000000000000e1c2831343430271d10020000000000000000030f191e1f1b140c161d1f1d170c000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000002142637475665727d878d908f8d89837a70665b4f423526180900000000000000000005182b3d4f60707d8c968f837a7676777c848a8072655748392a1a0a0000000000000000081b2d3e4e5c666c6e6a63595164768a8d7a67555866707879787063554432200d0000000000000000000004111d2831394045484a4a48443e372e23170900000000000000000009131b222930373c414547484a4a494745413c362e261d12050000000000000000000000000e1b2630383f44484a4a494640393025180a000000000000000004182c4054687c918b7675898c7967554331200e000000000000000000000000000000061a2e42566a809398836f5a4643413e3a37322d261f170e05000000000000000000000000000000000000061b2f4356697c8f8676685a4c3d2c1a0700000000000000000000091826333f4a535b5f5c53483a2b1b0b00000000000000000000000000000000000a1927353f474a483f3223120000000000000000000000000617263540484a463d2f1f0d0000000000000000000b151c1f1f1b140b00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000c1f3143556574849095887d797879808784786d6052443627170800000000000000000d2134475a6c7d8e9c9180716661606368707985837566574838281807000000000000001125384a5c6c79828480766a5b5a6c809285725f4c545d6364635d5346372615030000000000000000000000000b151e252b30333434332f2a231b1106000000000000000000000000070e151c22282c30323334343432302c27211b130a00000000000000000000000000000009131d242b3033343434312c251d1307000000000000000000001125394d61758a927c8092806e5c4a382614020000000000000000000000000000000013273b5063778c9e8974605a5856534f4b47413b332b21180d02000000000000000000000000000000000014273a4d5f7183948777695b4a36220e00000000000000000000000815212d373f464a4740362a1c0d000000000000000000000000000000000000000a17222c3334332d221405000000000000000000000000000817232d3334322a1f1101000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000010b12181a1a1916110a02000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000215283b4e607284939686766b6463656a737d8a7d70625445352615050000000000000014293d5064778a9c99867361534c4b4e545d677280857566564636251302000000000004182c405467798b90898d88796a596275888f7c695643494e4f4e4941352819090000000000000000000000000000020a11171b1e1f1f1e1b160f080000000000000000000000000000000001080e13171b1d1e1f1f1f1d1b17120d07000000000000000000000000000000000000000910161b1e1f1f1f1c17110a0000000000000000000000000a1e32465a6e83978389887563513e2c1a0800000000000000000000000000000000000c2034485d71869a8f7a706f6e6b6864605b554e473e342a1f1307000000000000000000000000000000000a1d30425365758694887965503b261100000000000000000000000004101a242c3234322d24190c0000000000000000000000000000000000000000000510181e1f1e1910040000000000000000000000000000000611191e1f1d170d0100000000000000000000000000000000000000000000080f1418191a1815110b0400000000000000000000000000000006131e262c2f2f2f2b251e150b000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000091d3144586b7d909e8b7867594f4e5057606d7a898272635344332312000000000000001a2e43576c8094a5917c695644373639404a55616f7d8574645342311f0d0000000000091e32475b70849582737b8b887766586b7d918673604d3a393a39352e24170a000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000003172b3f53677b908e8f7c6a58463a2e2115080000000000000000000000000000000005192e42566a7d939587878683807c7975706a635a51473d312518090000000000000000000000000000000013243647576776848a78644f3a251000000000000000000000000000000710181d1f1d19110700000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005111b23292d2e2f2d2a251f180f05000000000000000000000000061524303a41444444403931281d1103000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001024384c6074889b96826e5b493b383c444f5c6a798a82716151402f1e0c0000000000001d32475c71879ba08b76624d392621252d3844515f6d7d8271604e3d2b1906000000000c21364b60758a907a656c7d9183715e617488907c6a5744312524201a110600000000000000000002090e10100e0a0300000000010100000000000000000000000000000000000000070c0e0e0e0a040000000000000000000000000000000000000000000000000000040c12171a1b1b1b1915100a030000000000000000000000000000000000001024384c6075899d897c7064584b3f3326190c0000000000000000000000000000000013273b4f63778c9a867376797d838a8a857d766d645a4e43362718090000000000000000000000000000000718293949586670746c5c4935210c00000000000000000000000000000000000000000000000000000000000000000000000000000000020c151b1e1e1c170f0e161b1e1e1d19130c020000000000000000000000000000000000000005090b0b0906000000000000000000000000000816232e373e424344433f3a332b22170c0000000000000000000002132433424d555a5a58544d443a2e211304000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000152a3e53677b90a38f7a66523e2c2328313e4c5b6b7c8d806f5e4d3c2a180600000000001f344a5f748a9f9e89735e49341f0b111b2633414f5f6f807d6c5a48362411000000000d22374c62778d8f78636173888e7a67576a7d908773604e3b28150c06000000000000000000000b151d232526231e170e060d13161615110c050000000000000000000000000009131b202323231e18100600000000000000000000000000000000000000000000010d171f262c2f3030302e2a251e170d0400000000000000000000000000000000091d31465a6e8296878e8275695d5044372a1d100300000000000000000000000000000c2034485c7085998c776364696e757c86908a82766c605345362716040000000000000000000000000000000b1b2b3a48545d5f5a4e3e2c1906000000000000000000000001060b0e0e0e0b06000000000000000000000000000000000000000005131f282f3333312b23212a303333322e271f150b000000000000000000000000000000000912191e20211e1a140b0100000000000000000006172634404a5257585958544e473e34291e110400000000000000000c1f314251606a6f6f6d6861574c3f322314040000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000192e43586c82969f8a75604b37230f14202e3d4e5e6f828d7c6a594735231000000000001f344a5f748ba09d88735e48331e0900081523314151617284776553402e1b080000000d22374c62778d8f7964576b8094836f5b607387907d6a5744321f0c000000000000000000000f1d2831373a3b38322a211921282b2b2a2620180f04000000000000000000000d1a262f35383838332c23190d010000000000000000000000000000000000000005131f2a333b4044464646433f39322a20160b000000000000000000000000000006131d2b3f53677b8f898290877a6e6155483b2e2113060000000000000000000000000005192d4155697d92927d6955545a6169727d8994897d71635444332210000000000000000000000000000000000d1c2a3741484a473d30200f00000000000307070403080f151b20232323201a13090000000000000000000000000000000000051423313b444848463f36333d44484847423b32281d1003000000000000000000000000000e1a262e333636332e271e1307000000000000000113243444525d666c6e6e6c68635a51473b2f2114040000000000000014283b4e60707d8486837c74695d504132221100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001c31475c70869b9c87715c47321d0802101f30405263758889766452402d1a07000000001f34495e73889da08b75604b37220e0000051323334455667883705d4a37230e0000000b20364b60758a927c675264798e8a7561576a7d908874614e3b28150300000000000000000e1e2d3a444c4f504d463d332b353c40403f3b342b21160a00000000000000000c1c2b38424a4e4e4d4740362b1e11030000000000000000000000000000000000061523303c464f55595b5b5b58534d463d33281c1002000000000000000000000007162430383e4c6074898f7a808d8c807266594c3f312416080000000000000000000000000012263a4e62768a98846f5b47464d56606b7786948f827262513f2d1a06000000000000000000000000000000000c19242d3334322b201202000000030f171c1c19181d23292f34383838352e261b0e01000000000000000000000000000000112232414e585d5e5a52484450595d5e5c564e453a2e21130400000000000000000000000d1d2c3841484b4b48433a302517080000000000000b1e304252626f7a828484837d766e64594c3f322314040000000000001b2f43586b7d8f93888486877b6e5f50402f1e0c000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001e33485e73899e9a866f5a442f1a05000112233446586a7c8f826f5c4a372411000000001c31465a6f8499a38f7965513d2a1704000005152637495b6e827a65503b2611000000091e32475c708696826c575f7489907a6651607387917d6b584532200d00000000000000081b2c3c4b57606465615a50443d49505556544f473e33271a0d0000000000000518293a49555e6363615b53483c2f21130f0d080200000000000000000000000004142433414e59636a6e7070706d68615950453a2d20120400000000000000000002142534424c5254596d8295826f7c8a9184766a5d4f42342618090000000000000000000000000b1f33475b6f83978a76614d393a434e5a6775869791806e5c4936220e00000000000000000000000000000000000711191e1f1e180e020000000413212b31312d2d31373e44494d4e4d4942382c1f100000000000000000000000000000091c2e40515f6b72736e655953626d7273706a61574c3f3122130300000000000000000006192b3b49555d60605d574d4235261707000000000013273a4d6070808d8e848080848a82766a5d50413223120200000000001f34495d72879b87746e717a877d6e5e4d3c2a17050000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001f344a5f748ba099846e58432e190400000516283a4d5f72868c796653402d1a06000000182c4055697d91a595826d5946342211020000081a2c3e5164756e604d39240f00000004192d42566b809386725d5b7086937d6853576a7d918875624f3c2916030000000000001225384a5a69747979756d62554d5a656a6b69635b5145382b1c0d00000000000f2235475867727878766f655a4d3f312524211d160e040000000000000000000010223242515f6b767d84878786827c756c62574b3e3022130400000000000000000c1f3243525f676a64667a8f87726b788694887a6d6052443627190a000000000000000000000004182c4054687c90917c6854402b303c495867788b9e8c7865513d281400000000000000000000000000000000000000000000000000000000001022323e46474242464b52585e6263635d554a3d2e1e0c000000000000000000000000001225394c5e6f7d88898277696071808889867d75695d4f403121110000000000000000000e2236485967717576726a6053443525130100000000192e42566a7d8f907d706a6b6f7680887b6e5f504130200f00000000001f344a5f748b97836c595d6876867c6b594734210e0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001f344a5f748ba09a856f5a442f1a050000000b1d304356697c9083705d4936220e00000012263a4e6175889a9c89766351402f20120600000f21344757605c5142311e0a0000000013283c5064778b8d7966596e8495806a544e61748892806c594633200d000000000000192d41546778878f908a8072645b6b7880827d776d6356483a2b1b0b00000000162a3e516476858d8f8b83776b5d4f403a3936312a21160a0000000000000000091c2e3f50606f7d89928e8783828488898075695c4e40312213030000000000000013273b4e60707b806f6074888d7964687684928c7d706254453728190a00000000000000000000001125394c60748897836f5b46321e2b3a4a5b6d829595806b57422d190000000610171c1d1a160e14191c1c19130f161b1d1b160f0500000000192d3f505b5c57575a60666d7277787772675b4c3c291600000000000000000000000000182d4155687b8d9186868877687c8f8e7d7c83877a6d5e4f3f2f1e0c000000000000000013283d516577858b8a867d71625342301e0b000000001e32475c71869a88736055565a626d79877d6e5f4e3d2c1b09000000001f344a5f748a97826c574b586878897664513e2b170400000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001f34495e73899f9b86705b46311c07000000001326394d6073888c7965513e2a160100000b1e3245586a7c8f9f93806e5d4d3e302319120d06182939454b483f33241301000000000d2134485b6e829383705f6f85937d685344586b7d928975624f3c29160300000000001d32475c7085978f808087837466788a948d888b8074665849392918070000001b3045596d829492838087897b6d5e4f4f4e4b453d33281b0c000000000000001326394b5d6e7d8e97887b726d6c6e737b85877a6c5e4f4031211000000000000000182d42566a7d8f826b586d8294806a58667382908f80726355463728180800000000000000000000091d3145596d82958a75614d39251c2c3e5165798f9a86705b46301b00000917232b31322f2a21272e32312d26222b3032302a22170a0000001e33485c6e706c6c6f747a82888c8f8d85796a5945301b000000000000000000000000001d32465b7085988672727d867482978771676f7a887c6d5d4d3c2a180600000000000000152a3f546a808979747d8a8271604d3a2714000000001f344a5f748a99846e594a4546505c6876867d6c5b4a382614010000001d32475c718799846f5a454a5a6b7d826d5a47331f0b00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001d32475c72889c9d88735e49341f0a000000000a1d3044586b8094826d5945311c0800000215283b4d5f7082919e8d7b6b5c4e41362d2721190d1b283136342d211506000000000005182b3e516475878e7d7075898d7864503b4f62768992806c594633200d00000000001f344a5f748a9d88736a748283738296907d72778385766757473624130100001e33485d72889c88746b73808c7c6d62646360595045392a1b0b0000000000071b2f4255687a8c9c8a796a5e5857595f67727d897c6d5e4f3f2e1e0d0000000000001a2f445a6f8697826c57667a8f86715d5564728290908273645545362615040000000000000000000216293d5165788d917c6854402c1822374b60758b9d88725c47321d00071827353f4547443d333a4347464239343e4547453e3428190a00001f34495e7282828284898f918a847d797879715c47321c000000000000000000000000001f344a5f748995806b606f8082839887705c5d6a77877b6a59473523110000000000020e18283c516477806c606c7b8c7d6a57432e1a050000001f344a5f748b99846e645f59524a4a5867768779675643311e0b0000001a2f43586d82968974604d3c4e60728576634e3b261200000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001b30455a6f8599a08c76614d38230e000000000115283c5064788d88745f4b37220e0000000c1e30415363738391998a7a6c5e5349413b352b1d0d151d201f191004000000000000000f223447586979888d84869182705d4935465a6d82958975624f3c291502000000001f344a5f748b9d88725d6371828284998c76616572808675645342301e0b00001f344a5f748b9b866f5a62707d8b7a777978746d63574839291706000000000e22364a5e72859892806d5b4c4342454c545f6b78867c6d5d4c3b2a190700000000001a2f445a6f859985705b5f73888c77634f546271808f928373635444332210000000000000000003101b2435495d71859884705b4834201f34495e73899c87715c47321c0012253645525a5c5950444c575c5b564b44515a5c59514637281705001b2f4354647280888b89837c766f696563656254412e19000000000000000000000000001f344a5f748b947d685361738580958974604c5a697889766553402d1a070000000513202b343b48596872766d626e8286715d48331e090000001f34495e73889b877c79746d655d53495868798573604d3a2714000000152a3e53687c90907c6955424255677a7d69543f2a150000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000182d42576b8296a5907a66513d281400000000000d2135495d71868f7965513c28130000000112243545556472808d988a7c70655c5550483b2a1805080b0a050000000000000000000517293a4b5b6a7682878780736352402d3e5165788d92806c5845321e0b000000001f34495e73889d8b75605362728382978d78645461708283715f4d3b281502001f34495e73899b86705b51607080898c87878980746657473523100000000014283d5165798e9f8a76634f3d2f2c3038424e5a6876867a6a59483625130100000000182d41566b80938a7662586c82927d695544536170808f92827161513f2d1b080000000000000313212d373d4155697c908b77634f3b2721364b60748b98846e5945301b00192e4154636f726d62535b6a7170695c52626e726d63554634210e001325364654626c7374736f68625b55504e504e45362512000000000000000000000000001f34495e738995806a5556677987948f7965514b5b6b7c82705d4a3723100000041423313d474f545663788a80746a7b8b745f4a341f0a0000001c31455a6f84988c808888827970665a4e5b6d7d7d6a57432f1a0600001024394d61758a9885725f4c394a5d707364513d2813000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000014293e52677b90a595806b57422e1a0500000001061a2e43576b8094806b56412d1803000000061727374654626f7b868f8e8278706965594734200b00000000000000000000000000000b1c2d3d4c59646d70706c625546352336495d7083908875614e3b2713000000001c31455a6f84988f7a6652556575869793806c59526273847d6a5744311e0b001c31475c70869a8a7560526476868b8371707680857564523f2c1905000000182d42576b809599846f5b473320171c25303c4a5867768777665442301e0b0000000013283c5064778a927d6a5765798e84705b4744526171829090806e5d4b3825120000000000001021313f4a52534d617488927d6a57432f303e5165798e907c6955402c17001e33485d718287807161667986867a6b5b6f8288827363513d291400081828374450585e5f5e5a544e47403b383b3a33271807000000000000000000000000001c31465b708698836e594a5c6f829495826d59454d5e70837966533f2b170000102232414f5a63696b6a718382877d8286725d49341f0a000000172c4054687c90927d747d888d83776c5f51617386725c47321d0700000a1e32465b6e83968f7c69564441525f60554634210e00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000f24384d62768b9f9a86715d4835210d010a11161714283d51657a8f856f5a46311c07000000000919283744515d69727b83888c847d77634d3823130e07000000000000000000000000000f1f2e3b4751585b5b58504537281a2d415364727d867d6a56412c1702000000172c4054687c9096826d5a475868798a9b897663515566778874614e3a261200192d42576b80948f7a665c6f828b798c7b69626d7b826f5c48341f0a0000001c31465b70869a95806b56412c180408131f2c3a4959697a83715f4d3b2815020000000d2134475a6d7d8f8774625e72878a76614d394353627282928c7a6754412e190500000000061a2d3f4f5d67685f596c809486725f4b39414d5c6d82948673604d3a2611001f344a5f748999907d6a687d919889756172879892826c57422c1700000a1926333d44494a49454039332c262326251f16090000000000000000000000000000182d42566b809588735f4b5264778a9c8874604d41536578836e59442f1a00081b2e40505f6d777d80807b7688777c7c766856432f1b060000001125394d6074889a87736b75828d8a7c6f605669736757432f1a06000003172b3f53677a8e998673614e3c424b4c443728170500000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000a1e33475b708498a08c7764503c2815131d252b2c2823374c60758a89735e4934200a00000000000a192734404c565f676e73828f7d6e5e4b372928231a0f02000000000000000000000001101d2a353e444646433d3327191124364654606a71746955412c17010000001125394d6074889b8a7663504a5b6c7d8f93826e5c49596b7d7d6a55412c170014283c5065798d96826e64788c826e8286725f5d6e8275604b36210b0000001e33485e73889d937c68533e28140000010e1c2b3b4b5c6d807c6a5745321e0a00000005182b3d4f60718291806e5e6b80917c67533e3544546473859585715d48341f0b000000000c21364a5c6d7a7b726864778c8f7a67534e555f6b7a8b8878685644311e0a001c3146596c7b868b7d6a617282898875616a79858b826c57422c170000000915202930343434312b251e18120e10100b0300000000000000000000000000000014283d51667a8f8e796552475a6d8093907c695541495b6e756856422d19001125384b5d6e7d8a938e8c8d898083716863594a392714000000000a1e3144576a7d90907d6b636f7c8b8d7d6e5d595e5649392714000000001024374b5e728598907d6c59473436373127190a00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000004182c4055697c91a593806b5744301d25303940413c3132475c70868c77624c37220d0000000000000916222e39434c5c6e809084716050413a3e3d372d2012030000000000000000000000000c1822292f31312e2920160907182836434d565d5f5a4c3a2612000000000a1e3144576a7d9093806c5a484e5f7082938b7865514e60727b6a56412c17000d2136495d7083968a766a7d907b67778a7b67536470675946321e090000001f344a5f748ba0937c67523c2712000000000d1d2d3e5061748774614d39240f000000000e203243536372828d7c6e657990826b56402b3646566676888c77624c38230d000000000e23384e6378898f857b736f839683705f6268717c8a86786a5a4a3927140100162a3d4e5d6972746f6154636d74736a595c6871747063513d291400000000030d151b1f1f1f1c17110a040000000000000000000000000000000000000000000e23374b60748895826d5a46506375899885715d4a3f505e61584a39271300172b4054677a8d94847976777c848e7c6d5f5040301f0e000000000215283b4e607284968876655e6c7b8b8c7a68554844392b1b0a00000000081b2f4255687a8d9b897664513e2a211d1509000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000011263a4e6175899c9b8873604c392635434d54574f402f43586d838f79644f3a240f0000000000000005111c2c405366798c8f7b675442444e53524a3e30211100000000000000000000000000050e151a1c1c1a140d0300000a1925313a42484a463c2e1d0a000000000215283b4e607285968a776553425364758792806a54435565695d4d3b271300061a2d405366788a92806e838d77636f83836f5b545b56493b2917030000001f344a5f748ba0937c67523c2712000000000010213244576a7d77644f3a240f0000000002142535455463707d8980797d92806b56402b283848596a7a8c77624d38230e000000000d21364b5e6d757c848b87807a8e8c7974777c85887d73675a4c3c2c1b0a00000d1f303f4c565d5f5c5245515a5f5f584c4b555d5f5d534534210e00000000000000000000000000000000000000000000000000000000000000000000000000081c3145596d82958975624e46596c80928d7966523e414a4c463a2c1c0a001c31465a6f83978a7666606268707b887d6e5e4e3d2b1a08000000000b1e314355667789948371615d6d7d9085715d4934271b0d0000000000001326394b5e70829393826d5945311c09020000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000a1e3245596c8093a3907c69554233445360686b5e4c3840546a80917b66503b26110000000000000000091e32475b6f83968a75604c45546168665c4e3f2e1d0b0000000000000000000000000000000000000000000000000008141e272e3334322a1e100000000000000b1e31435567788a958371604f4758697b7d746657464752544c3f2f1e0b0000112437495b6c7c8c8977868c7660677c8a75604b4643392b1d0c000000001f344a5f748ba0947d68533f291400000000000315273a4d5f6c66594835210c0000000000071727364553606b7680878b877865513d281a2a3b4c5d6e8075604b36210c00000000071b2e404f59616970767c8286888a888986827b746b61564a3c2e1e0e0000000112212e3a43484a4840343e464a4a453b3942484a4841362716050000000000000000000000010a12171a1a19150f08000000000000000000000000000000000116293d5164778c927d6b58464f62768993826c57422e363732281c0e00001f34495e738998846e5a4b4d545e6a77867c6b5a493725130000000001142537495a6a7a8b908070616073888c77634d38230e00000000000000091c2e41536475859389735e48331e090000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000002162a3d5063768a9c9985725f4c3d5061717c7b66513d3d52677c927c67523c271200000000000000000d22374c61758a9c87715c475163727d796c5d4c3a28150200000000000000000000000000000000000000000000000000010b131a1e1f1d170d0000000000000001142638495b6b7c8d8f7d6d5e4e4c5d6c828375634f3a3d3f3a2f2111010000071a2c3d4e5e6d798280848d786362778d78644f3a2e271b0d00000000001e33485e73899e96826b56412c170200000000000b1e30414f5754483b2b180500000000000009182735424e59636c727472695a4936220e1d2e3f5163736d5a46321d0800000000001122313d464e555c62686c7073747473706c6660584e44392c1e10000000000003111d272e3334332c232b3134343028262e3334332d241809000000000000000000000006131d262c2f2f2f2a231b11050000000000000000000000000000000e2235485c6e82938875634e46596c80807667533f2b21221e160b0000001f344a5f748b97826b564139414c5967768778665442301d0a00000000081a2b3c4d5d6c7b8a8f8072676d839079644f3a250f000000000000000011233547576775807d6f5b47321d1105000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000d2134475a6d8092a28f7c695644586c808f806c58443b506579907c67523d2813000000000000000010253a4f64798f9b866f5a455a6e82918b7b6a5745321f0b000000000000000000000000000000000000000000000000000000000000000000000000000000000000091a2c3d4e5e6e7d8d8c7b6c5e5253687d927d68533e282a261d1103000000000e1f30404f5c676c6b80927d6a60768c7b66503b26130a0000000000001c31475c70869b99846f5a45301b070000000000011323323d4240372b1d0d0000000000000000091724303c4750585d5f5d574b3c2b190610223345555e5c4f3d2a170300000000000413202a323a41474d53575b5e5f5f5e5b57524c443b32271b0e00000000000000000a131a1e1f1e1910161c1f1f1c1512191e1f1e1911060000000000000000000000061524303a414444443e372e23170a000000000000000000000000000005192c3f516475858073624e3d50626d6a6358493724100c0903000000001f344a5f748b98836d58432e2f3b4958687984725f4c39261300000000000d1e2f3f4e5d6b788690847a76838d78634e39240f0100000000000000061829394957636a6a60513f372e22150600000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000004172a3d5062758899998673614f5a6f869b87735f4c3a4f64788f7d68533e2913000000000000000011263b50667b919b866f5a44596c7a8a998875614e3b2612000000000000070e1313110e0b0806060505050504030303030303030302000000000000000000000000000e1f3040505f6e7c8a8b7c6f65606c80927c68533e2814110a000000000000021222313e4a535764788c877566788d79644f3a251005000000000000192f44586d83979d88735e4a35210c000000000000051420292c2b241a0d0000000000000000000006131f2a343c43484a49433a2d1e0e00041627374349483e31200e00000000000000030e161e262d33393e4246484a4a4846423e3831281f1509000000000000000000000000000000000000000000000000000000000000000000000000000000000001132433414d555a5a58534a4035281a0c0603000000000000000000000000102235465767706d6355453b4752585650473a2b1a08000000000000001e33485e73889b87715d48342b333a4a5c6d807c6956422e1b0700000000001121303f4d5b68737d878d8c8d83715e4a36291e1204000000000000000b1b2b39465055555456524a40332414030000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000e203345586a7c8e9f91806d5b586d82968f7b6754414e63788f7c67523c2712000000000000000011263b50667b909c87705c474e5c6b7a8b927d6a55412d1904000000000d192328282623201e1c1b1a1a1a1a1a19191919191919191715110c050000000000000000000112223241505e6c79858d8279767a8a8876634e3a251d150b000000000000000413212d373e495c6e808f8479828975604c372520180f0400000000162b4054697d93a28d78644f3b261200000000000001030d1417161108000000000000000000000000010d1720292f3334342f271d0f0000000a19263034332c211302000000000000000000030a11191f25292d3133343433312e29231d150c0200000000000000000000000000000000000000000000060d12151514110c0500000000000000000000000b1e3041515f696f6f6d665d5246382a1b1b18140d050000000000000000000517293949555b595045384859635f514134291c0d00000000000000001b30455a6f84988c7763503c3d474d4d50627586725e4a36210c00000000000312212f3d4a56616b727779787164544b453c30221202000000000000000d1b2833455562696b675d514232210e0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000416283a4c5e7082939c8a786756667a8d9884705d4b4f64788f7b66513c271200000000000000000f24394e63788d9e89745f4a3e4d5c6d7d9085705c47321e090000000b1c2b363d3e3b38353331302f2f2f2f2f2e2e2e2e2e2e2e2e2c2a2620191006000000000000000004142332404e5b67737c858a8c8b84786a59463c3831281d0f0100000000000003101b242c3e5161707d8688867b6b59453d3a342b21150600000012263b5064798ea2927d6955412d190500000a111516130e06000000000000000000000000000000000000040d141a1e1f1f1b140b000000000009141b1f1e190f0300000000000000000000000000040a1015191c1e1f1f1e1c19140f090100000000000000000000000000000000000000000000020f1921272a2a29262019100600000000000000000013273a4d5f707c8486827a6f6356483930302d2821180e0300000000000000000b1c2b384246443d3645556677705e4b37230e000000000000000000172c4055697d9193806b58454e5a62625c596c8075614c37220c00000000000003111f2c39444e575e6364635e5f6260594e40301f0e000000000000000012263b4f62737d807a6f60503d2a17030000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000b1d2f415263758696978573635d7082948d7a685651667b8e78644f3a240f00000000000000000c20354a5e72879b8e7965503d3e4f6073868a75604b36200b00000015283a485253504d4a48464544444444444343434343434343423f3a342c23180c0000000000000000041422303d4a5660697074777570675a5253514d443a2d1f100000000000000000081423334352606a717370695d5153534f483e3224150600000d21364a5e73889c9985705c4834200d04121d252a2b2822190d0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000312202c353c3f3f3e3a342c23180c0000000000000000192e42566a7d8f988c898d82746657484645423c352b20140500000000000000000d1a262d302f3544536373847a65503b261100000000000000000011263a4e6175899b8875624f5c6c76776f60636e655746321e09000000000000000115283a4b596264625a56667377756b5e4e3d2a170300000000000000142a3f54697d91958d7d6d5a46311d0800000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000122335465767788998928270616476879786736154697d8a75604b36210d0000000000000000071b2f43576b7d9294806c59473643566a7d8d77624c37220d0000001c314558666865625f5d5b5a5a5a5a5a59585858585858585857544f4840352a1d0f00000000000000000412202c38454d555c6062605c5c6367686660574b3d2e1e0c000000000000000f2132414a4c4e575c5e5c5960666868635b50423324130100071b3044586c82959f8c7763503c281513222f393f403d362b1e100100000000000000070e1313110f0c0a0807060505050505050403030303030303030303020000000000000000000000000000000000000000000000000000050c12171b1d1d1d1c1915110b040000000000000000000000001021303e49505454534f4840352a1d10010000000000001d32475c71869a8c79747c88857566595b5a5750483e32231405000000000000000009121a293745536271828d7965503b26100000000000000000000b1e3246596c809192806d5b6378888c7d6c595853473928160300000000000000071c304457697679776d5f72858d897c6c5a46321e090000000000000014293e53687c8e9a9d89745f4a341f0a00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000061728394a5a6a798a988f806f6069798991806f5f6d8385705c47321d0900000000000000000014283b4e6174869889766453464050657a8c77624c37220d0000001f344a5f747c79777472706f6f6f6f6f6e6e6e6e6e6e6e6e6d6c69635c52473b2d1d0b00000000000000000a1e324556615f56555a606870777c7d7b74695b4c3c291600000000000000172b3e505e615854585e656d747a7d7c776e615142301d09000015293d5165798da093806b5844311d2131404d545651483c2e1f0e0000000000000d192328282624221f1e1c1b1a1a1a1a1a1a19191919191919191919181716130e09020000000000000000000000000000000000000006101920272c30323232312e2a251f170f050000000000000000000a1c2e3f4e5b656a6a68635c52473b2e1f100100000000001f344a5f74899b87705f6a768585746d706f6b645a4f4232231201000000000000000114273847546371829083705d4a36210d0000000000000000000316293c4f617386978a78675c697a8d89745f4b4036291b0b00000000000000000a1f344a5f7388908a7d6d7388989b8a75604b36210b000000000000001024394c5e6f7c878b85725d48331e0900000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000a1b2c3c4c5c6b7a89978e7d70616a79888d7d6f76897d6a55412d19040000000000000000000c1f32455768798a948271645a5657687c88735f4a35200b0000001e33485c70848f8c8a88878686868686848484848484848483827d776f65594b3a271400000000000000000e23384d6274716b6a6e757c848b918e8b87796a5945301b000000000000001b30455a6e756d6a6c727982898f908c898070604c38230e00000e2236495d7085989b8874604d3a272b3e4f5e686b655a4c3d2c1b0a000000000b1c2b363d3e3b3937343331302f2f2f2f2f2f2e2e2e2e2e2e2e2e2e2e2e2c2b27231d160e05000000000000000000000000000000000c18232c343b404547474746433f39332b22180d02000000000000001326394b5d6c7880807d776f65594c3d2e1f0e00000000001f344a5f748a9b866f5a596776868283868680776d605141301e0b00000000000000071c3044566472829089776553402d1a06000000000000000000000d20324456677889978675655d71868d77624d3824180b0000000000000000000a1f344a5f7388969c8a746a79868c8875604b36200b00000000000000091d2f41515f6a7274726655422e1a060000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000e1e2e3e4d5c6a7886938e8072666976838d84868674614e3b261200000000000000000000021528394b5b6b7a889082766e6b6c7485806c5945301c0f010000192d41546675828b9095989b9b9b9b9b99999999999999989794928c82766957422e1900000000000000000d22374c60728380808389908e868079757378715c47321c000000000000001a2f44596c7c828082878d9189827b76747678644f3a240f0000061a2e4154687b8fa2907c6956433033485b6d7c80776a5b4a3927150200000015283a485253504e4c4a484646444444444444434343434343434343434342403c38312a21180d01000000000000000000000000000e1c29353f4850555a5c5c5c5b58534e473e352b1f1305000000000000192e4256697a8b948d898b8276695b4c3d2c1b09000000001e33485d72889c88725e4e5f708091827a7980887d6f5f4d3b2815020000000000000a1f344a5f7383918b7b6b59483624110000000000000000000000031527394a5b6b7a89938475696c838d77624c38230d00000000000000000000071c3044576978848986735e687276756a5945311d080000000000000000122332414d575d5f5e5648382613000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000010202f3e4c5a6875828d9084776d667079807d75675645321f0b00000000000000000000000a1c2d3d4d5c69768289898380828782726250433a2d1f0f00001124374857646f767b8083868788898a8b8b89898887868482807c7b79796e59442f1a0000000000000000091d314354647280878a888279726b65605f656254412e1900000000000000162a3d4e5e6e7a858989847c756d67615f62655a4935210c0000001225384c5f728598998673604d3b364b607588958979685644321f0c0000001c31455866686663615f5d5b5b5a5a5a5a5a5a58585858585858585858585755514c463e342a1f110100000000000000000000000e1d2c3a47525c636a6f717272706d68625a51483d3023150600000000001e33475c718698897973768088796a5a4a392715020000001b2f44596d83978d7863586b7d8f7d8976656a74827c6a5845311d08000000000000091e33485d7185887b6c5d4d3c2b1906000000000000000000000000091b2c3d4d5c6b788590877c788586725e4a35200b000000000000000000000115283a4b5a677074726757565d6160594c3b2916020000000000000000051423303a43494a4943382a1a0900000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000211202e3c4a57636f7a848c8a827975736e69635749392715020000000000000000000000000f1f2f3e4c58636d757a7d7d7c776f63625f574b3d2d1c0a0007192a3947525b62676b6e70727373747474737372706f6e6b6a6766646460513e2b160000000000000000011426364655616c7274726d665e57504b4a504e45362512000000000000000d1f3040505d687073736f69615a534d4a4e50493c2b1906000000091c2f4255677a8d9f907d6a5845334659697a8b978673614e3b28150200001f344a5f747d7b7876747270706f6f6f6f6f6f6e6e6e6e6e6e6e6e6e6e6d6c6a66605a51473c2f1f0d00000000000000000000091b2c3b4a58646f777d8487888886837c766e645a4e4133241505000000001f344a5f748b98836d5e626d7a8978675644321f0c000000162b3f53687c90937d6a617588867385826e5b63738674604b36200b000000000000041a2e42556773736a5d4e3f2f1e0d00000000000000000000000000000e1f2f3e4d5a67737d85898b86796856432f1b0600000000000000000000000b1d2d3c49545b5f5d564942494c4b463b2e1e0c0000000000000000000005121e272f3434342f261a0c0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000002101e2c3946525d6770777c8082807a705e5146392b1b0a000000000000000000000000000111202e3b47515a61656868676368747773695b4b3a271300000c1b29353f474d5256585b5c5e5e5f5f5f5e5e5c5c5a58575452504f4f4c4233220f00000000000000000008182837444f585d5f5d58524a433c36353b3a3327180700000000000000021222323f4b555c5e5e5b554d463e3834393b362c1e0e00000000001326384b5d6f82949a887563513f3b4c5c6d7d90917d6b5844311d0900001e33485c7083908e8c89888787868686868686848484848484848484848382807a756d64594d3c2a160000000000000000000215273849596876828c938f89868686898e8a82776c5f5142332312000000001f344a5f748b97826b564f5c6b7b8673614e3b28150200001024394d6074889a8672687c907d697b8b77645668796e5d4934200a0000000000000012263849575f5f574c3f3021110000000000000000000000000000000111202f3d4956606970747471685b4b392713000000000000000000000000000f1e2c3740474a4943392e34373632291e10000000000000000000000000010b141b1f1f1f1b1309000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000e1b2834404a545c63686b6b6a68786f5c4935200d00000000000000000000000000000002101d2934475a6b7679756a6075878d86796956432e1a0000000b18232c33393d4043464748484a4a4a484847474543413f3d3b3a3a3830241504000000000000000000000a1926323c43484a48443e372f28222126251f16090000000000000000000413212e3941474948464039322a241f2526221a0e000000000000091b2e40526476889992806e5d4b3a3e4f617285978874604c3924100000192d405364737d878d919597999b9b9b9b9b9b999999999999999999989794938f8982776b5945301b0000000000000000000b1e3144566777879491857a74706f707379828a8a7d6f6151402f1e0c0000001e33485d728898836e59444d5e6e807d6b5845311d090000091d3144576a7d908f7b6c828f79647286806b585c645e50402e1a0600000000000000091b2b39444a4a443b2f2112030000000000000000000000000000000002111f2c38434d555c5f5f5d564b3d2d1c0a00000000000000000000000000000e1a242c3234342f271b1f22211d160c000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000a17222d3740484e53565666768778634e38230e00000000000000000000000000000000000e23384d62778a8f887a69778b9a9886715d48331e000000000610181f24282c2e3032333334343433333232302e2c2a28262525231d1306000000000000000000000000081520292f3334332f2a231b140d0d10100b03000000000000000000000003101c252d323433312c261e16100b10100d06000000000000000011233547596a7b8d9e8c7a69584737435567798c907c68533f2b1602001124364655616b72787c80838486888889898b8b8b898989888786848382807d7c7b7979705c47321c00000000000000000012263a4e61738596928273675f5b5a5b5f656d78858e806f5e4d3b28150200001b3045596e839888725e4b405163758774604d39251000000215283b4e607183928572848c77626a7d87725e4a4f4b403223110000000000000000000d1b2730343430281d1103000000000000000000000000000000000000010e1b26313a41474a4a4842392d1f0f000000000000000000000000000000000811181d1f1f1b14090a0d0c09030000000000000000000a111619191815100901000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005101b242d343a47566474848a76624d38230e00000000000000000000000000000000000e23384d62778a999986716d7c888d86715c47321d000000000000040a0f1316191b1d1e1e1f1f1f1e1e1d1c1b1917151311100f0e09010000000000000000000000000000030d141a1e1f1e1b150f0700000000000000000000000000000000000000000912191d1f1e1c18110a0200000000000000000000000000000618293b4c5e6f8090988776655545384a5c6f8295836e5945301b060006182837444e585e63676a6c6f70727273737474747373737271706f6d6b6a68676664646153412d19000000000000000000182d41556a7d9199877463554b4644464a515a6775868d7c6a5845311e0a0000172b4054697d928e7a66534045576a7c7c68533f29140000000b1e3143546473828b7d848d776264798c77624d3a372f221405000000000000000000000a141c1f1f1c150b0000000000000000000000000000000000000000000009141e262d323434332e261c0f010000000000000000000000000000000000000000000000000000000000000000000000000005121d252b2e2e2d2a241c14090000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000816293a495765738392806d5a47331f0a00000000000000000000000000000000000b1f33485b6c7b868b83705e6a7377746756422e1a0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000c1d2f4051617182919484736353453f5164788c88735e49341f0a00000a1926323b434a4e5255575a5b5c5d5e5e5f5f5f5e5e5e5c5c5b5a5856545352504f4f4d443524110000000000000000001c31465b708599927d6a574537312f31363e4957687a8e8875614d392510000011263a4e63778c96836f5c4a3a4d60727766533e2914000000011325364655646f767482907b6761768c7965503b261c1204000000000000000000000000000000000000000000000000000000000000000000000000000000000000010a12191d1f1f1e1a130a0000000000000000000000020b13191b1b1b17110900000000000000000000000000000000000514232f39404343423e3830261b100200000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000091d32465867758492867563513e2b1804000000000000000000000000000000000004182b3d4e5d697174726554575f626057493926130000000000000000000000000000000000000000000000000000060e1313110a0100000000000000000000000000000000000000000000000000000000050e1213120c030000000000000000000000000000000000000000000000000000000000000000000000000000112233435363728291918271635549495d71868c76604c37210c00000009151f282f35393d40424446474848494a4a4a4948484747464443413f3e3c3b3a3a38312617060000000000000000001f34495e73899e8d78634e3a281c1a1c222b394b5e7287917c68533f2a1500000b2034485c7085988c7966544143566465594937230f000000000718283746525b60677b8f837062778c7a65503b26110000000000000000000811171a1a18130c0a12171a1a19150f0800000000000000000000000000000000000000000000000000000000000000000000000000000007141e272d3030302b251c1206000000000000000000000000000001132332414c54585857534c43392d2013040000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000b20364b60758593897868574533210e000000000000000000000000000000000000000e20303f4c565d5f5d5547444a4c4b44392b1b09000000000000000000000000000000000000000000000000000d19222828251e130500000000000000000000000000000000000000000000000000000c1822272926201508000000000000000000000000000000000000000000000000000000000000000000000000000415253545546372828f908273675b53576c828d77624c37220d00000000020c141b2025282b2d2f30323333343434343433333232302f2e2c2a2827262525231e1408000000000000000000001f344a5f748ba08c76604b36210c01070e1b2f445a6f8497826c58432d18030005192d4155697c909683705e4c3a475051493b2b1a0700000000000a19283540474c6073858e7d717c8c77634e3924110500000000000002101b252c2f2f2d271f1d262c2f2f2e2a241b1207000000000000000000000000030c14191d1f1f1e1b161009000000000000000000000000071625313b4246464540382f24180b000000000000000000000000000b1e3041515e686e6e6c6760564b3e3122130300000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000b20354a5f738786796a5a4a39281604000000000000000000000000000000000000000212212e3942484a4942373036373631281c0d000000000000000000000000000000000000000000000000000e1d2b363d3e3a302314030000000000000000000000000000000000000000000000000c1c2a353c3e3b322617070000000000000000000000000000000000000000000000000000000000000000000000000007172736455462707d8a9285786e67646f838a75604b36210c00000000000000070c101316181a1b1d1e1e1f1f1f1f1f1e1e1d1c1b1a1817151312110f0f0e0a0200000000000000000000001f344a5f74899f8d77624d38241000020e1e31455a6f8599856f5a442f1a0500001226394d6074889b8e7b695744343b3c362b1d0d000000000000000a17232c3343566777868e878b82705c48342d221506000000000212202e38404444423b322f3a404444433e382e25190d000000000000000000000a1620282e323434332f2b241c140a00000000000000000002132534434e565b5b5a544c4136291b0d07050000000000000000000014283b4e5f6f7c8384827b73685c4f403121110000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000071c304457687372685b4c3d2c1c0a00000000000000000000000000000000000000000003111c262e3334342e251c2122211d150b00000000000000000000000000000000000000000000000000081a2c3b4851534d4132210f000000000000000000000000000000000000000000000007192a3a4851534f443525130100000000000000000000000000000000000000000000000000000000000000000000000000091827364452606d78848d8b827c79808d826f5b47321d090000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001d32475c71869a907b67533f2b1909131f2c3c4d6074889a856f5a442f1a0500000a1e3144576a7d90998673614e3b282722190d0000000000000000000610182638495968737a7c79716352494840332414020000000f20303e4b54595a564e44414d55595a58534b41372b1e1001000000000000000c1a27333c4347494948443f3830261c1004000000000000000b1e314252606a70706e685e5347392b1d1c1a150f06000000000000001a2f43576a7d8e94898687867a6d5e4f3f2e1d0c000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000114273a4a575f5d564a3d2e1f0e0000000000000000000000000000000000000000000000000a131a1e1f1f1a13080c0d0c08020000000000000000000000000000000000000000000000000000122537495965685f503e2c19060000000000000000000000000000000000000000000011243748586468625342301d0a000000000000000000000000000000000000000000000000000000000000000000000000000009182735424f5b66707982878a8b88807364523f2b18040000000000000000000000000000000000000000000000060e131516140f080000000306060502000000000000000000000000192e42576b809296836e5b4937271a25313d4a5a6b7c9097826c58432d180300000215283b4e60738597917d6b57432f1b0e07000000000000000000000000091b2c3b4a56606567655e53535e5d5142311e0b0000071a2c3e4e5c676e6f6a6156515e696e6f6d675e54483c2e1f100100000000000a1a2a38454f575c5e5e5d59534c43392e22150800000000000014273b4e60707d8687837b706457493a32312e29221a0f0400000000001e33485d72879b88756f727b887c6d5d4c3b291704000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000a1c2c3a444a4942392c1f1001000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001a2e415467777d6e5c4936220e00000000000000000000000000000000000000000000192d415466767d715f4d392612000000000000000000000000000000000000000000000000000000000000000000000000000000091724313d49545d666c717474726d63554635221000000000000000000000000000000000000000000000030f1a22282b2b28231c130b12181b1b1a1711090100000000000000000014283b4f627485928b78665545332c37434e5b6877899a907c68533f2a15000000000b1e3143566778899787725d48331e0900000000000000000000000000001124354450545052504b4e60716f604e3b261200001024374a5c6c7a84857d73665e6f7c8486827a7166594c3d2e1f0e00000000041627384856626b717373726d675f564b403326170800000000001a2e42576a7d8f978b888e83756758494746433e362c211506000000001f344a5f748b98836d5a5f6a77877b6a584634210e00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000e1c283034342e261b0e01000000000000000000000000000000000000000000000000000000000000000000000000000000060c11151717171715110c0700000000000000000000000000001f34495d71858b7865513e2a16020000000000000000000000000000000000000000001d32475c70838f7c6955412d19050000000000000000000000000000000000000000000000000000000000000000000000000000000614202c37414a52585c5f5f5d585045372817050000000000000000000000000000000000000000000413212d363c40403d372f251e262d30302f2b251d130900000000000000000c20334556667480898473634f3b3e4955606c788796998774614d39251000000000021426384a5b6b798483715d48331e080000000000000000000000000005192d4153626a615448495a6b7d7d6a55402b160100172b3f5366798b948a8a8475677a8d9083808684776a5b4c3d2c1b0a0000000d2033455666748086898988837b73685d514335261708000000001d32475c71869a8b78737a878676675a5c5b5852493f332415060000001f344a5f748a97826c574c596879887563503d2a170300000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000b151c1f1f1a130900000000000000000000000000000000000000000000000000000000000000000000000000000008121a21262a2c2c2c2c2a26211b130b0100000000000000000000001f34495e738895826d5946321e090000000000000000000000000000000000000000001e33485d72879985705d4835210c00000000000000000000000000000000000000000000000000000000000000000000000000000000020e1a242e363e43474a4a49443d3327190a000000000000000000000000000000000000000000001222313e49515455524b4237303a41464644403930261a0e00000000000000031627384856626c747879665146515c67727d8a979c8c7b695744311e0a0000000000091b2c3d4d5b676f6f64544131211000000000000000000000000000091e33485d708071655b57677789826c57422c1702001c31465a6f8396887676828372829688726b737d88796a5a4a39281604000015293d50627485928a80797a7d85867a6e615344352616050000001f344a5f74899b86705e68758486756f71706d655c50423324130100001e33485d728799846f5a454b5b6c7d806d5a46331f0b0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000030f1b252e353b3f414242413f3b352f271e1409000000000000000000001b3044586d82958975614d3925110000000000000000000000000000000000000000001b2f43586c82958c7764503b271300000000000000000000000000000000000000000000000000000000000000000000000000000000000007111b23292f32343434302921160a000000000000000000000000000000000000000000000b1e2f404f5c656a6a665f5548414d555b5b59544c43382c1e11020000000000000a1a2a384550596063645b4c58636e7984909b998d7d6e5d4c3a2815020000000000000e1f2f3d4a545a5a635e4f3e2e1e0f0000000000000000000000000a1f344a5f748983776e667586907c68533f2a1500001f34495e738996826c63718280839887705b606d7a897868574533210f00001b2f44586c80928d7b6c656569717a8680716253443423120000001f344a5f74899b866f5a586675868384878782796e615142301f0c00001a2f44586d83978874604c3d4f60728576624e3a26110000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000410191d1e1d19130b0201000000000000000000000000000000000000000000000000060e1317191918151009010000000000000000000000000000000413202c3841494f5457575756534f4a433a31261b0f02000000000000000015293e52667a8f907c6854402b1703000000000000000000000000000000000000000014293d5165798e937d6a56422d190500000000000000000000000000000000000000000000000000000000000000000000000000000000000000070f151a1d1f1f1f1b150e04000000000000000000000000000000000000000000000014273a4d5e6d7980807a726659515f6a70706e686055493c2f2011010000000000000c1a27333d454b4e4f525e6a75808b969f94887b6e5f503f2e1d0b0000000000000001111f2c38435669776d5c4c3c2d1e0f0100000000000000000000071c31465a6d7d8e8b827a85948573604d39251000001f344a5f748b947d6853647588829689735f4f5d6b7b867463513e2b1805001e33485d72879b86715d5050555e68758382716252412f1e0c00001e33485d72879c88735e4e607080918279787d8680705f4e3b29160200162a3f53687c918f7b6854414355687a7d69543f2a1400000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000514222c3233322e271e1716130e0600000000000000000000000000000000000000030f1922282c2e2e2d2a241d140a00000000000000000000000000041423313e4a545d64686b6c6c6b68645e564d43382c201204000000000000000f23374b5f738897836f5a46321e0900000005080908050000000000000000000000000e22364b5f73889a86705c48331f0b0502000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001a2e43576a7c8c948f8f8477685e6f7c8587837c72675a4d3e2f1f0e000000000000000a16202a31364554626f7b87929e988d82766a5e5041322111000000000000000000010f1e33485d71867a6a5a4b3c2d1f100200000000000000000001162a3d4f606f7d8a958e948978675643301d0a00001f34495e738994806a54586a7c83938e7864504d5d6e80806e5b4835220e001f344a5f748b99846e58504a434b57647282806f5e4d3b291704001a2f44596d83978d7864596b7d8f7d8a77656973827d6b5945311d08001025394d62768a9885715e4c394b5e717464513d281300000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001122323f474847423a312c2b28221a1106000000000000000000000000000000000514212c353c414343423f3931271b0e000000000000000000000000112132414f5c6771787d828383827d78726a60564a3e30221404000000000000081c3044586c80958a75614c382418110c141a1e1e1d1a140d04000000000000000000071c3044586c82958b77624e39251a1a17120c05000000000000000000000000000000040b101313110c060000000103030300000000000000000000000000000000040c1213110b0200000000000000000000000000000000000000001e33485d72869a8d7b79828778687b8d9888838785786a5c4d3d2c1b0a00000000000000040e213244546372828d999b90867a6f64594d403326170600000000000000000000001d32475c7185897869594b3d2e2010000000000000000000000e203242515f6c77828985786a5a493826140100001d32475c708697836d584c5e70839694806b5743506172857764513e2a16001f344a5f748b99846e69645e574e46546372837c6a584633200d00162a3f53677b9093806b617589857285826f5c62728575604b36200b000a1e33475b6f83978e7b68564341536062564735220e0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000192d40515c5e5c564d4342403c362d23170b0000000000000000000000000000031423323e495156585857534d44392c1e0f000000000000000000000b1d2e3f505f6d79858b84807d7d808387867d73685c4e403222120000000000000015293d5165798d907b67533e322c241f282f3333322e2921170d01000000000000000015293d5165798e917c68533f2f2f2f2c27211910050000000000000000000000010d171f25282826211910081015181918140e070000000000000000000000000916202729261f1407000004080a0a090400000000000000000000001f344a5f748b9d887266707d877683978f7a6c7380897a6b5a4a3927160400000000000004172a3d50617282919f94897d73685d524e5350443523110000000000000000000000192e4255687b8e8777695a4c3e2e1b0800000000000000000003142433414e5a646d7371685a4c3c2c1b09000000192e43576c829687725d495466798c9b87735f4b4355677a826d59442f1a001e33485d72889c88837d79726a61584d556576887563503d2a16001024384c6073879a8773687c917d697a8c77645568786d5d49341f0a0004182c4053677b8f988672604e3c434c4d453829180500000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001e33485d6f73716a60545756514a4035291c0e020000000000000000000000000f213242505c656b6e6e6c6860564a3c2d1d1107000000000000000215283a4c5d6e7d8b8277706b68686a6d72798285796c5e50402f1d0a0000000000000e22364a5e728696826d5948464037313b43484847433d342a1e1205000000000000000e22364b5f738897836e5945444444413b352c22170b00000000000000000002111f2a333a3d3d3b352d231b242a2e2e2d29231b1106000000000000000000081827333b3e3a3225160610181d1f1f1e1912080000000000000000001f344a5f748b9d88735e5f6e7d8484998c7660616e7c897868564533210e0000000000000b1f33475a6d80909f9083766b60564b5561686253412e1b09000000000000000000001226394c5e70829288786a5c4b38230f00000000000000000000061523313d48515a5e5d554a3d2e1e0e0000000014293e52677b908d786450495c6f82958f7a6753404a5d70786b58432e19001b2f44596d82968d7a838c867d756a5f52586a7b806c5945301b00091d3144576a7c8f8f7b6c828e78647286806c585b635d4f402d1a0600001024384c5f728699907d6b594634373832281a0b0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001f34495e717d867d72696c6b655d5247392c1d1715110c0400000000000000071a2d3e4f606e78808484827c73685a4b3a2c241a0f0300000000000a1e314457697b8c8070645b5a555354585e656d77837c6e5e4d392511000000000000071b2f43576b809488735f5e5b544a424e585d5e5c5850473c30231506000000000000071c3044586c829588735f575a5a595550483f35291c0f000000000000000010202f3c474e52524f4940352e383f4343423d362e23180c00000000000000001325364550534e43342417232c323434322d251b1004000000000000001e33485d72889c8b7662505f6f8085978f7966525e6d7d867462503d2a170400000000001025394e62768a9d91827265594e435164737d705d4b38261300000000000000000000091c2f415264748594897a66513c2712000000000000000000000005131f2b353e45494842382c1f1000000000000f24384c61758a94806c58445164778a97836f5c49415361655b4d3b281400162a3e53677a8e94806f79838f887c7062545e7082715c47321c000114273a4d5f7082918672848c76616a7d88725e4a4e4a3f312210000000081c2f4356697b8e9b897663503d2a231e160a000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001b2f4253606d7a8a847d8280796f64574a3b2c2c2a2620180e0300000000001023374a5c6d7d8b8f87868a90867869584740372c211305000000001125394d6074878472616a6f6f6a61564c575f6365717d7c68533e28130000000000000014283c5064788d8e79717370675b51606b7273716c63594e413324150600000000000015293e52667a8f8e79656c6f6f6e6a645c52473a2d1e100000000000000a1c2e3e4d5a636767645c52463f4b53585857524a40362a1c0f000000000000061b2f4254636861524231283540474a4a4741382e2215070000000000001b2f44596d8296917c6854516172839496826f5c4f5f7082806d5a4734210d000000000013283d52677c919885736354473c43586c828d7a6855422f1b080000000000000000000011233546566675838b7965503b2611000000000000000000000000020d18222a3134332e261b0e010000000000091e32465a6e82968874604d485a6d82948c7864503d444e50493d2f1e0c000f24374b5f728598897566717c898e82726354656d6354412e1900000b1e3042536372828980848d776264788d77634d39362e211304000000001326394c5e70839493806d5945301c0a030000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000122535434f5c6b7a8b92938d8d827568594a41423f3b342b21150700000000162b3f5366798c8c7c72707685968775635b534a3e31231404000000172b4054687c8d7966707d86847d73675b6a747878746e7262503d2e1e0d0000000000000d2135495d72869480868984796b5d6f7d87898780766b5f51423324140300000000000f23374c607589937d758286868480776f64584a3c2e1e0e00000000001326394b5c6b767c7c786f64574f5d676d6e6c665d53473a2d1e0f00000000000a1f34495e727d70604f3e3746525b5f5f5c544b40332516070000000000162a3e53667a8e97836f5c4954657687988c796654526374867663503c2814000000000013293e53687d94917c685645362e43586e849885725e4b372410000000000000000000000617283848576570746d5d4a36220d0000000000000000000000000000050f161c1f1e1a12090000000000000003172b3f5266798d907c6956445164778b94806c574232393b362c1f110000081b2f4255687a8d93806d5f6b788791827060545852453625120000011324354554636e747282907b6760768c7965503b261b100300000000000a1d2f41536576869488735e4833201b130900000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000071725314055697d929c88777c87867768595657544f473d322516070000001c30455a6e8392806d5f6870798d9380766f665c4f413222120000001b3045596e838772687c8f8d838685776879888d89898276695b4c3c2b1a080000000000061a2e43576b8095909588868a7a6a798d91807b82897c6f61514231210f0000000000091d31465a6f8499847378797d858e8c8275685a4c3c2c1b0a00000000192e4256697a8992928c8275665c6d7a838482797065584a3c2d1d0d000000000a1f344a5f74897d6d5c4c4455646f747470675d504334251505000000000f23374b5f7285988c7865524758697a8c9683705e4b56687a806b57412c17000000000013293e53687d948f78634e39272d42576c82968e7a6753402c1804000000000000000000000a1a2a3947535c5f5b4f3f2d1a07000000000000000000000000000000000000000000000000000000000000000f23374a5d7083958673614d485b6e8283796955402b2526221a0e010000001326394b5d6f82928b79685a6877888f7d6a57443f342718070000000617273645515a5f677b8f837062778c7965503b261100000000000000001224364758687680806f5c4737352f261b0e0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000008182e43586d83989290867575848777686b6c69635a50433425150400001f34495e73888b76626f7a8583879c878283796d5f50402f1e0b00001e33485d7288836d6c8397846f72808777838f7b73778288796a5a4937251300000000000014283d51667a8fa08b77707c89777d948b75666d78868070604f3e2d1b090000000002172c40556a80948974636469707b889387786a5a4a392816040000001e33485d7186988e7d7c858576677a8c978a86898376685a4b3b2b1a08000000081c3145596c808b7a69594f6273828a8a857a6e61524333231201000000081b2f4255687a8d95826f5c4a4b5c6d80908e7a67534b5d6f776855402b16000000000012273c51667b908f7965503b27293e53677b8f97836f5b47331f0b00000000000000000000000c1b293640484a473e312110000000000000000000000001080c0d0c08020000000000000000000000000000071b2e41536677888476634e3e5164716e675b4b392611100d060000000000091b2e40526374859586756559697a8d87735f4a362217090000000000091827343e464c5f72858f7d727d8c77624d39240f030000000000000007192a3a4a58646b6b61524c4c4a43382c1d0d00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000192e43586e84998c829183727384857c82827d766d61524333210f00001f344a5f748b8872728282766f84998b7477837d6e5e4d3b281502001f344a5f748a806a6c8397846f616f7d86858c766164707d8877665542301d0a00000000000e23384c61758a9d88735e6c7d8480948a745f5b6775857d6d5c4a392614010000000012273c5165798f8f796550555e69768595887868574533210e0000001f344a5f748b9d8872687280857483978f7c6f7582877869594837261402000002162a3d4f617385887666586c80918d8280888070615141301e0c000000001326394b5d6f82938c7a685645506172848d806a5440526064594a38251100000000000e23384d61758a937d6a56433024384c6074889c8b77634e3a26110000000000000000000000000b19242d3334332b2113030000000000030a0e0f0f0b141c2122211d160c0100000000000000000000000000112437485a6a74706658473547555c5a534a3d2d1c0a0000000000000000001122344656677787938373665d71868e78634e39240f000000000000000916222b3143556676858e888c826f5c48342b2115060000000000001122323f494e515657505961625e564a3b2b1a08000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000172c42576c82978d788491806e77898a807d8288807061513f2c1a06001f344a5f748b8974828070646e84998c766572837c6a5845321e0a001f344a5f748b806b697d9388735e6070828a907b675460708285725f4c3925120000000000091e32475c70869a89735e5f70827d918d77634e5766768779685643301d0a000000000e23374c61768b94806a55414c5966768797867463503e2b180400001f344a5f748b9d88725d6170808384998c766163707d8776665543321f0d0000000d20324455677889847363738895826e6c7684806f5e4d3c2a1705000000091c2e405264758697867463534355667878746a5a49434d4f483b2c1b090000000000091e32465b6e829686725f4c3a293145596d8295927d6954402b16000000000000000000000000000711191e1f1e180f0300000000000c171e2325241f273036373631291e120400000000000000000000000007192b3c4c595f5d54483a2a384247453f372d1f0f000000000000000000000517283949596877859284766c6c839079644f3a250f0000000000000000050f17253749586772797b787062524c473e3224150500000000071b2e40505c636460575b6b757772675949372411000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000152a3f53687c92927d77888d7b86868d7a686c7580806e5c4936220e001e33485d71869185827061596e84998b756064758775614e3a2611001f34495e7389836d64788d8e7965526373859684715e526476897c6855412d19040000000004192e42576c82968b75605364768990927d6955485868798673604d3a271300000000091e33485d728799846f5a463b4958697a8c92806d5a4734200c00001f34495e73889d8b76615161708282978e796552606f808472614e3c29160300061727343d495a6b7c8d8270798e907b66596574857c6b594734210e0000000011233546586878899282706152495a6a80887865503b383a352b1d0e00000000000003172b3f5266798c8f7c6a5847362a3e5165798d97836d59442f1a00000000000000000000000000000000000000000000000000000f1d2933383a393338434a4c4b453c302212020000000000000000000000000d1e2e3b454a4841372b1c262e32302b241b0f0100000000000000000000000a1b2b3b4a596774828c89807b858c77634d39240f00000000000000000000081a2b3a49555e6466635d5e62615a5042332311000000000e22364a5d6e787974696478898d85776754402c1700000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000011253a4e63778b98846f7b8d8a8d7a8285725f6270827965513c2711001a2e4256697a888a7666565c70879b88735e58697b7d69543f2a14001c31465b708686715d708495826e5b566777898e7c6956596d8285705c47331e09000000000014293e53687c928d78634e596c7d919884705c484a5c6d807c6956422e1a00000000041a2f44596e83988974604c3a3a4b5d6f82958a7663503c281400001b3045596e8397907b6753536373859595826d5a516171827d6c594633200c001123354551544e5e6f808f7d7d938d77634e566777897664513e2b17040000000617293a4a5a6a79898f8070625753687d937d68533e292421180d00000000000000000f2336495c6e8092877564544538364a5e72869a87715c47321c000000000000000002070b0f1316191b1b1a160e04000000000b1d2d3b464d4f4d4748565f6260594e4030200e00000000000000000000000000101e293134332d241a0d131a1d1b17100800000000000000000000000000000d1d2c3b4956636f7982888b887d6e5c4834200b0000000000000000000011243748566064635c52637177766d6151402e1b0700000011263b5065798c8f877867798d9b96846f5a442f1a0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000b1f33485c7083968b776f80918671778a7c685564777565513c27110013273a4b5c6a76808473635f748998846e5a4c5e717465523d281400192d42576b808c776367798c8b7765535a6b7c8e86725e52667a8b76614c37220d000000000010253a4f64788e917b66524e617387998c7764503e50627586715c47321d0000000000162b40556a80948f7c695744333f5265798d93806b57422e190500162b3f53677b8f97836e5b47566777899a8a7764525364758875624f3b271300192d405363695f516171828c82968b75604b495a6b7c826d5a47331f0b000000000b1c2c3d4c5b6a78868f82746a666f82907c67523d28130c05000000000000000000071a2c3f516373859383726356493e43576b809488735e48331e00000001080c0f13171b2024282b2e30302f2a21160800000015283a4b596264625a56667377756b5e4e3d2a1703000000000000000000000000000c161d1f1e19110800000000000000000000000000000000000000000000000e1d2b3946525d666d7274736c60513f2c190500000000000000000000182c4054667479786f616e828d8a806f5d4a36220d00000011263b5065798d9a97846e6f7d888d836e59442f1a00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000004192c405366798c93806c798f8e7c6d8285705c5a6765584836220e000a1c2d3e4c59627080827064788e927d695541536062564735220f0014283c5165798d806c5d6f80928371604f5f708283735e4d62778d79644f3a250f00000000000c21364b60758a95806b564457697c8f93806c584545586c766a5945301b000000000013283d51667b9199867462503f36495d72879a86715c47331e09001024384c607386998a776451495a6b7c8d95826f5d4a586a7c7d6a56412c17001e33485d707d6a5753637384929d89735e483c4d5f718476634e3a251000000000000e1f2e3d4c5a6875828b877d7b808d8573604d39240f0000000000000000000000000f22334556667685918273675b524c51667b9088725c47321d000008141c2124282c3035393d40434646443e3326170700001c304457697679776d5f72858d897c6c5a46321e090000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000d1b2834404a52595d5f5e594f4233221000000000000000000000001b30465b70848f8c80706f84959d8d79644f3a250f0000000e22364a5d6e7c868a826d606c74777265533f2b17000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001124374a5c6e809089767c93908876798c77634f5251483a2a1906000010202e3b46516272847d6b7d938c77634f3b434c4d4538291806000e22364a5d70848976636373858f7d6d5d5264738279695562778c79644f3a250f0000000000091e32475c718799846f5a454d5f7286998874614d3c4e5d61594c3c291600000000000f24394e63788d9883806e5d4d3e44596e83988b75604b36210c00091d304356697c8f94826d5b494d5e6f80928d7966524c5e71796955412c17001f34495e738675624f566675879c87725c4736415466797c67523c2712000000000001101f2e3c4a57636e7780858786807466564431271c0f01000000000000000000000416273848586775838f85786e666160657990836e5a45301b000717253036393d4145494d5155585b5b59514435251300001f344a5f7388908a7d6d7388989b8a75604b36210b0000000610171c1d1a160e040000000000000610181c1d1a150d03000000000000000000000000000000000000000a17222d373e44484a49453d3224150400000000000000000000001b30465b7084949e8d786776848b8a78644f3a240f000000071b2e40505e6a7174706251595f625f554736231000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000071a2d3f516171828d827d937d908273887c68533e3d362a1c0c00000002101e2934445566778977839786715d493431373832281a0b0000061a2e415467798c826f5f6675858c7b6d605a6f86856f5a65798e78634e39240f0000000000041a2f44596e849888735e4a4356697c8f917d6955413f494c473c2e1e0c00000000000c21364b60758b9c87857b6b5c4e42576c83988d77624c37220d000114273a4c5f7183958b78665544516374868f806a54415363665b4c3a2612001b3043566a7d806c5a495e73889b8673635344374a5d6d6d5e4c39240f00000000000001101e2c3945515b646b6f71706b62564c4a443a2d1f0f0000000000000000000000091a2a3a495764717c888b827a767577838b7966533f2b1700122535434b4e52565a5e63666a6d70706d6253422f1c07001f344a5f7387969c8a746a79868c8875604b36200b00000917232b31322f2a211608000000000a18232c31322f292015070000000000000000000000000000000000000005101a232a30333434302a201406000000000000000000000000182c405466758289887762667076766d5c4935210c00000000112232404d575d5f5c5244454a4c4a433729180600000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001022334453626f78797b9180858d7b86826b56412c22190c0000000000000c17263748596b7d838794806b56422e1d22231e160a000000001124374a5d6e808e7d6d5e6775838b7d726c7488836e596c808975604b36210d000000000000172c41566b80958d77634e394c5f728695856f5a442f3537332a1e10000000000000091e33485d72889c8b788a7a6b5e545b6f84998c76614c37220d00000a1d3042546677889684726151455668797b72685947454f514a3d2e1d0a0014273a4d60748877655361768b998d8271625242404f5a594f402f1d0900000000000000000e1b28343e4850565a5c5b575860625f574b3d2d1c0a00000000000000000000000c1c2b3947535f6a737c8387898b89847a6c5c4a372410001b2f42536063676b6f73777b8083868780715f4a35200b001c3044576978848986735e687276756a5945311d0800071827353f4547443d33261708000008192836404547443d322516070000000000000000000000000000000000000000070f161b1e1f1f1b160d03000000000000000000000000001124374857646e73736a5a545c60605a4f3e2d1a06000000000414222f3a43484a474035313537352f261a0b0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000415263544525d6364768b87798b8786836c57422c1706000000000000000008192a3c4d6072858e8e7965503c28130d0e0a030000000000081b2d3f516273838c7c6e6165727d87868385877867647588826e5a46311d0800000000000014293e53687c93917c67533e4356697c80786a57422e20221f170d00000000000000041b30455a6f84998f797d8a7c706969788b9b88735e4934200a00000012243648596a7a8b90806f5f504a5c6b80857664503b3b3c372d1f1000000b1e3144586b7d83716065798f937d8a80706151423e45453d312211000000000000000000000a182b3e4e5b636461595969757773695b4b3a27130000000000000000000000000d1b2936424d5760686d717374736f675c4e3e2c1a07001f34495e71787b8084888d908f8a858079715f4a35200b0015283a4b5a667074726757565d6160594c3b2916020012253645525a5c595044352615020013253746535a5c5850433425140200000000000000000000000000000000000000000000000000000000000000000000000000000000000000081a2a3947525a5f5e584c41484c4c473d31210f00000000000004121e272e3334322d231c2022201c130800000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000817263440494e5b6f82918080918f806a55402b16030000000000000000000d1e304255677a8f89745f4b36220d0000000000000000000010223344556574838d807368606a73797b7a74696673838a7765523e2b170300000000000011263b5065799096826c57423a4d5f6d6b655a4c3a27140d0a04000000000000000000182d42576c8297937d6f808e847d7d879690806c5844301b0700000007192a3b4c5c6c7b8b8e7d6e605453687d937d68533e2927231b0f0100000215283b4e6175887d706c80948d797a8a807061524439302a201304000000000000000000000b2034485b6c7779756a6175888d87796956432e1a050000000000000000000000000b1824303a444c53585c5e5f5e5b544b3e30200f00001e33485d7082898b8886837d7975706a655f53422f1c07000b1d2d3c49545b5f5d564942494c4b463b2e1e0c0000192e4154636f726d625344321f0c001b2f4255646f726c615243311e0b00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000c1b29353f464a49443b2e333737332b20130300000000000000000b141a1e1f1e1911080b0d0b0700000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000816232d353f526475858f848a8e7a68564432210e000000000000000000011326384e63788f88725c47321d08000000000000000000000416273747566572808c857b726c68656666696f78848c7c6c5a4836230f000000000000000e23384d62778d9a86705c47324150585751493d2e1d0b000000000000000000000000152a3f54697d9496826b6f7d899193958e8272614f3c291501000000000d1d2e3e4e5d6c7a888d7d7268636d82917c67523d28130f0800000000000c1f3245586a7b8c83808b9684716b7a89807062554c3e2d1a0700000000000000000000000e23384d63778a90887a69778b9a9886715c47321d070000000000000000000000000007131e2831393f4447494a494640382d2012020000192d4052626f747473706d6965605b56504a423525130000000f1e2c3740474a4943392e34373632291e100000001e33485d7182878071614e3b2712001f34495e7283878070604e3a26110000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000b18232b31343430281d1f21211e180e020000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005111a2235475766737c80808c867362503d2a16010000000000000000000d22374c61768b89745f4a36210c0000000000000000000000091929384755626e79848d87827c79797b7d848c867a6d5e4e3d2b1906000000000000000b20354b5f748b9b87725d4833323d43423d352b1f100000000000000000000000000012273c52677b9195806b5f6b757c80807a7063544432200d0000000000001020303f4e5c6a77838d857c787d8b8675614e392510000000000000000215283b4c5d6d7b878c8c8577665c6a79878072685c4a36220d00000000000000000000000e23384d63778b989986706d7c888c85715c47321c070000000000000000000000000000010b151d242a2f32343434312c251b100200000011233544525b5f5f5e5b5854504b46413c362f251707000000000e1a242c3234342f271b1f22211d160c000000001f344a5f748999907d6a55402b16001f344a5f748a998f7d69543f2a1400000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000060f171c1f1f1b150c0a0c0c0904000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000006172939485661686b6f8089806d59442f1a04000000000000000000091e33475b6f828b77624c37220d0000000000000000000000000b1a293744515c6770788085888b8b8a88837c73695d4f40301f0e0000000000000000091e33485d7287887d6b58442f21292e2d2822190e010000000000000000000000000010253a4f64798a867764515962686b6a665e534536261403000000000000021221303e4c5965707a838889888276685745321e0a00000000000000000b1d2f3f4f5d6a7277777267594c5b6976838579644f3a250f00000000000000000000000b2034485b6c7a868a836f5e6a7377736755422e190500000000000000000000000000000000010910161a1d1f1f1f1c1811080000000000061726343f464a4a484643403b37322d27211c13070000000000000811181d1f1f1b14090a0d0c090300000000001c3146596c7b868b7d6a55402b16001d32465a6d7c878b7d69543f2a140000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000b1b2a38444d5356616d73746b58432e190400000000000000000004182c3f526270746e5d4935200b000000000000000000000000000b1926333f4a545d646b7073747474726e6860574b3f312212010000000000000000041a2f43576973736c5f4e3b2815151818140e060000000000000000000000000000000d22364a5d6e7471685948464e535655524b413527180800000000000000000312202e3b48535d676d7274736d64584a392815020000000000000000001121313f4c575e62625d554a3d4b596670746e5f4c38230e000000000000000000000005182b3e4e5d697174716453575e625f56493826120000000000000000000000000000000000000000000000000000000000000000000000000816222b32343433312e2b27221d18130d07000000000000000000000000000000000000000000000000000000162a3d4e5d6972746f614e3b271200172b3d4f5e6a72746f604e3a2611000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000c1a2731393e4351595e5f5a4d3b2814000000000000000000000010223444525d5f5c50402d1a0600000000000000000000000000000915212d37414950565b5e5f5f5f5d59544d443a2e2113040000000000000000000014283a4b585f5e594e41301f0c000000000000000000000000000000000000000000071b2e40505b5f5d564a3b32393e40403d372e2417090000000000000000000002101e2a36414a53595d5f5e5951473b2c1c0b000000000000000000000313212f3a43494c4c4942382d3b48545d5f5b5041301c090000000000000000000000000f20303f4b565c5f5d5446444a4c4b44392b1a09000000000000000000000000000000000000000000000000000000000000000000000000000510171d1f1f1e1c1916120d08030000000000000000000000000000000000000000000000000000000000000d1f303f4c565d5f5c5243321f0c000e2031404c575d5f5c5142311e0b000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000009151e2529333e45494a473d2f1e0c00000000000000000000000516263540484a483f3222100000000000000000000000000000000004101b242d353c4146484a4a4a4845403931271c100300000000000000000000000b1d2d3b454a49453c31231201000000000000000000000000000000000000000000001123323f474a4842392c1e25292b2b28231b1206000000000000000000000000000d19242e373f44484a48453e352a1d0e00000000000000000000000003111d272f343737342e261d2a3641494a463e322312000000000000000000000000000212212e3942474a4841363035373530271b0d000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000112212e3a43484a484034251402000213222f3a43494a474033241402000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000020a1016212a313434322b1f11000000000000000000000000000817232d3334332c21140400000000000000000000000000000000000008111a21282d313334343433302b251d140a00000000000000000000000000000f1d2830343430291f130400000000000000000000000000000000000000000000000514222c3234332e261b0e10141616130f080000000000000000000000000000000007111b242a2f333433302a22180c0000000000000000000000000000000b141b202222201a130c19242e3434322b211405000000000000000000000000000003101c262e3234332e251b2022201c140a00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000003111d272e3334332c23160700000004111d272f3434332c22150600000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000040e161c1f1f1e180e0100000000000000000000000000000611191e1f1e190f04000000000000000000000000000000000000000000060d13181c1e1f1f1f1e1b16110a01000000000000000000000000000000000c151c1f1f1c160d02000000000000000000000000000000000000000000000000000410181d1f1e1a130900000000000000000000000000000000000000000000000000000810161b1e1f1e1b160f05000000000000000000000000000000000000060b0d0d0b06000007111a1f1f1d170f0400000000000000000000000000000000000a13191e1f1e1912070b0d0b08010000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000a131a1e1f1e1910050000000000000b141b1f1f1e1910050000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 + m_StreamData: + offset: 0 + size: 0 + path: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/ModResources/Fonts/DancingScript-Regular SDF.asset.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/ModResources/Fonts/DancingScript-Regular SDF.asset.meta" new file mode 100644 index 00000000..af9cf9b3 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/ModResources/Fonts/DancingScript-Regular SDF.asset.meta" @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 7b50419dd5d254755b7929b05d413472 +NativeFormatImporter: + externalObjects: {} + mainObjectFileID: 11400000 + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/ModResources/Fonts/IndieFlower SDF.asset" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/ModResources/Fonts/IndieFlower SDF.asset" new file mode 100644 index 00000000..15604cdb --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/ModResources/Fonts/IndieFlower SDF.asset" @@ -0,0 +1,5904 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!114 &11400000 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 71c1514a6bd24e1e882cebbe1904ce04, type: 3} + m_Name: IndieFlower SDF + m_EditorClassIdentifier: + hashCode: -1165128645 + material: {fileID: 21280864327797902} + materialHashCode: 1515307088 + m_Version: 1.1.0 + m_SourceFontFileGUID: f5a6c1b3d1a264b139eb058baf98b182 + m_SourceFontFile_EditorRef: {fileID: 0} + m_SourceFontFile: {fileID: 0} + m_AtlasPopulationMode: 0 + m_FaceInfo: + m_FamilyName: Indie Flower + m_StyleName: + m_PointSize: 46 + m_Scale: 1 + m_LineHeight: 67.125 + m_AscentLine: 44.625 + m_CapLine: 31.124998 + m_MeanLine: 0 + m_Baseline: 0 + m_DescentLine: -22.4375 + m_SuperscriptOffset: 44.625 + m_SuperscriptSize: 0.5 + m_SubscriptOffset: -4.5820312 + m_SubscriptSize: 0.5 + m_UnderlineOffset: -4.5820312 + m_UnderlineThickness: 2.2910156 + m_StrikethroughOffset: 8.068182 + m_StrikethroughThickness: 2.2910156 + m_TabWidth: 172.5 + m_GlyphTable: + - m_Index: 1 + m_Metrics: + m_Width: 17.25 + m_Height: 67.0625 + m_HorizontalBearingX: 0 + m_HorizontalBearingY: 44.625 + m_HorizontalAdvance: 17.25 + m_GlyphRect: + m_X: 6 + m_Y: -72 + m_Width: 17 + m_Height: 67 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 2 + m_Metrics: + m_Width: 5.3124995 + m_Height: 37.999996 + m_HorizontalBearingX: 0.68749994 + m_HorizontalBearingY: 37.937496 + m_HorizontalAdvance: 6.875 + m_GlyphRect: + m_X: 249 + m_Y: 147 + m_Width: 5 + m_Height: 38 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 3 + m_Metrics: + m_Width: 9.062499 + m_Height: 14.312499 + m_HorizontalBearingX: 0.43749997 + m_HorizontalBearingY: 36.749996 + m_HorizontalAdvance: 10.8125 + m_GlyphRect: + m_X: 496 + m_Y: 431 + m_Width: 9 + m_Height: 14 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 4 + m_Metrics: + m_Width: 33.749996 + m_Height: 22.687498 + m_HorizontalBearingX: 0.37499997 + m_HorizontalBearingY: 22.687498 + m_HorizontalAdvance: 35.375 + m_GlyphRect: + m_X: 124 + m_Y: 148 + m_Width: 34 + m_Height: 23 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 5 + m_Metrics: + m_Width: 25.687498 + m_Height: 42.812496 + m_HorizontalBearingX: 0.24999999 + m_HorizontalBearingY: 42.749996 + m_HorizontalAdvance: 26.75 + m_GlyphRect: + m_X: 6 + m_Y: 408 + m_Width: 26 + m_Height: 43 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 6 + m_Metrics: + m_Width: 27.749998 + m_Height: 28.124998 + m_HorizontalBearingX: 0.37499997 + m_HorizontalBearingY: 28.124998 + m_HorizontalAdvance: 29.3125 + m_GlyphRect: + m_X: 169 + m_Y: 149 + m_Width: 28 + m_Height: 28 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 7 + m_Metrics: + m_Width: 19.687498 + m_Height: 32.124996 + m_HorizontalBearingX: 0.43749997 + m_HorizontalBearingY: 32.124996 + m_HorizontalAdvance: 21 + m_GlyphRect: + m_X: 195 + m_Y: 52 + m_Width: 20 + m_Height: 32 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 8 + m_Metrics: + m_Width: 3.0624998 + m_Height: 11.187499 + m_HorizontalBearingX: 0.87499994 + m_HorizontalBearingY: 33.624996 + m_HorizontalAdvance: 4.6875 + m_GlyphRect: + m_X: 480 + m_Y: 464 + m_Width: 3 + m_Height: 11 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 9 + m_Metrics: + m_Width: 17.749998 + m_Height: 28.562498 + m_HorizontalBearingX: 0.87499994 + m_HorizontalBearingY: 26.812498 + m_HorizontalAdvance: 19.4375 + m_GlyphRect: + m_X: 97 + m_Y: 243 + m_Width: 18 + m_Height: 29 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 10 + m_Metrics: + m_Width: 12.187499 + m_Height: 29.874998 + m_HorizontalBearingX: 0.37499997 + m_HorizontalBearingY: 27.249998 + m_HorizontalAdvance: 13.3125 + m_GlyphRect: + m_X: 142 + m_Y: 409 + m_Width: 12 + m_Height: 30 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 11 + m_Metrics: + m_Width: 16.874998 + m_Height: 17.749998 + m_HorizontalBearingX: 0.74999994 + m_HorizontalBearingY: 28.124998 + m_HorizontalAdvance: 18.9375 + m_GlyphRect: + m_X: 352 + m_Y: 432 + m_Width: 17 + m_Height: 18 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 12 + m_Metrics: + m_Width: 19.937498 + m_Height: 19.562498 + m_HorizontalBearingX: 0.31249997 + m_HorizontalBearingY: 19.499998 + m_HorizontalAdvance: 21.1875 + m_GlyphRect: + m_X: 249 + m_Y: 196 + m_Width: 20 + m_Height: 20 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 13 + m_Metrics: + m_Width: 4.0624995 + m_Height: 15.249999 + m_HorizontalBearingX: 0.37499997 + m_HorizontalBearingY: 6.5624995 + m_HorizontalAdvance: 6 + m_GlyphRect: + m_X: 501 + m_Y: 359 + m_Width: 4 + m_Height: 15 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 14 + m_Metrics: + m_Width: 14.874999 + m_Height: 3.5624998 + m_HorizontalBearingX: 0.62499994 + m_HorizontalBearingY: 14.749999 + m_HorizontalAdvance: 17.25 + m_GlyphRect: + m_X: 230 + m_Y: 454 + m_Width: 15 + m_Height: 4 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 15 + m_Metrics: + m_Width: 6.1249995 + m_Height: 8.687499 + m_HorizontalBearingX: 1.9999999 + m_HorizontalBearingY: 8.687499 + m_HorizontalAdvance: 9.375 + m_GlyphRect: + m_X: 256 + m_Y: 454 + m_Width: 6 + m_Height: 9 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 16 + m_Metrics: + m_Width: 12.999999 + m_Height: 34.499996 + m_HorizontalBearingX: 0.43749997 + m_HorizontalBearingY: 34.499996 + m_HorizontalAdvance: 14.25 + m_GlyphRect: + m_X: 142 + m_Y: 364 + m_Width: 13 + m_Height: 34 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 17 + m_Metrics: + m_Width: 17.749998 + m_Height: 19.937498 + m_HorizontalBearingX: 0.81249994 + m_HorizontalBearingY: 19.874998 + m_HorizontalAdvance: 19.8125 + m_GlyphRect: + m_X: 97 + m_Y: 283 + m_Width: 18 + m_Height: 20 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 18 + m_Metrics: + m_Width: 12.999999 + m_Height: 27.187498 + m_HorizontalBearingX: 0.62499994 + m_HorizontalBearingY: 27.187498 + m_HorizontalAdvance: 14.625 + m_GlyphRect: + m_X: 493 + m_Y: 40 + m_Width: 13 + m_Height: 27 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 19 + m_Metrics: + m_Width: 21.249998 + m_Height: 24.999998 + m_HorizontalBearingX: 0.31249997 + m_HorizontalBearingY: 24.999998 + m_HorizontalAdvance: 22.875 + m_GlyphRect: + m_X: 169 + m_Y: 230 + m_Width: 21 + m_Height: 25 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 20 + m_Metrics: + m_Width: 17.749998 + m_Height: 24.249998 + m_HorizontalBearingX: 0.81249994 + m_HorizontalBearingY: 24.187498 + m_HorizontalAdvance: 19.8125 + m_GlyphRect: + m_X: 97 + m_Y: 315 + m_Width: 18 + m_Height: 24 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 21 + m_Metrics: + m_Width: 17.249998 + m_Height: 27.749998 + m_HorizontalBearingX: 0.81249994 + m_HorizontalBearingY: 27.749998 + m_HorizontalAdvance: 18.9375 + m_GlyphRect: + m_X: 41 + m_Y: 369 + m_Width: 17 + m_Height: 28 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 22 + m_Metrics: + m_Width: 24.249998 + m_Height: 30.312498 + m_HorizontalBearingX: 0.74999994 + m_HorizontalBearingY: 30.374998 + m_HorizontalAdvance: 26.25 + m_GlyphRect: + m_X: 61 + m_Y: 264 + m_Width: 24 + m_Height: 30 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 23 + m_Metrics: + m_Width: 18.124998 + m_Height: 27.687498 + m_HorizontalBearingX: 0.81249994 + m_HorizontalBearingY: 27.687498 + m_HorizontalAdvance: 20.25 + m_GlyphRect: + m_X: 94 + m_Y: 154 + m_Width: 18 + m_Height: 28 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 24 + m_Metrics: + m_Width: 17.062498 + m_Height: 24.687498 + m_HorizontalBearingX: 1.0624999 + m_HorizontalBearingY: 24.624998 + m_HorizontalAdvance: 18.9375 + m_GlyphRect: + m_X: 442 + m_Y: 359 + m_Width: 17 + m_Height: 25 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 25 + m_Metrics: + m_Width: 15.437499 + m_Height: 26.499998 + m_HorizontalBearingX: 0.56249994 + m_HorizontalBearingY: 26.437498 + m_HorizontalAdvance: 17.25 + m_GlyphRect: + m_X: 376 + m_Y: 320 + m_Width: 15 + m_Height: 26 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 26 + m_Metrics: + m_Width: 12.937499 + m_Height: 27.249998 + m_HorizontalBearingX: 0.43749997 + m_HorizontalBearingY: 27.624998 + m_HorizontalAdvance: 13.8125 + m_GlyphRect: + m_X: 493 + m_Y: 79 + m_Width: 13 + m_Height: 27 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 27 + m_Metrics: + m_Width: 2.6249998 + m_Height: 12.187499 + m_HorizontalBearingX: 0.81249994 + m_HorizontalBearingY: 15.562499 + m_HorizontalAdvance: 3.9375 + m_GlyphRect: + m_X: 494 + m_Y: 487 + m_Width: 3 + m_Height: 12 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 28 + m_Metrics: + m_Width: 5.4374995 + m_Height: 26.437498 + m_HorizontalBearingX: -0.68749994 + m_HorizontalBearingY: 18.062498 + m_HorizontalAdvance: 5.9375 + m_GlyphRect: + m_X: 403 + m_Y: 320 + m_Width: 5 + m_Height: 26 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 29 + m_Metrics: + m_Width: 21.249998 + m_Height: 18.937498 + m_HorizontalBearingX: -0.12499999 + m_HorizontalBearingY: 18.999998 + m_HorizontalAdvance: 22.4375 + m_GlyphRect: + m_X: 169 + m_Y: 266 + m_Width: 21 + m_Height: 19 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 30 + m_Metrics: + m_Width: 21.999998 + m_Height: 11.812499 + m_HorizontalBearingX: 0.81249994 + m_HorizontalBearingY: 17.812498 + m_HorizontalAdvance: 24.125 + m_GlyphRect: + m_X: 307 + m_Y: 355 + m_Width: 22 + m_Height: 12 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 31 + m_Metrics: + m_Width: 17.124998 + m_Height: 21.249998 + m_HorizontalBearingX: 1.2499999 + m_HorizontalBearingY: 21.249998 + m_HorizontalAdvance: 18.5625 + m_GlyphRect: + m_X: 467 + m_Y: 431 + m_Width: 17 + m_Height: 21 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 32 + m_Metrics: + m_Width: 11.312499 + m_Height: 39.687496 + m_HorizontalBearingX: 0.31249997 + m_HorizontalBearingY: 39.749996 + m_HorizontalAdvance: 12.5625 + m_GlyphRect: + m_X: 38 + m_Y: 223 + m_Width: 11 + m_Height: 40 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 33 + m_Metrics: + m_Width: 35.374996 + m_Height: 41.187496 + m_HorizontalBearingX: 0.81249994 + m_HorizontalBearingY: 41.062496 + m_HorizontalAdvance: 37.5 + m_GlyphRect: + m_X: 6 + m_Y: 54 + m_Width: 35 + m_Height: 41 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 34 + m_Metrics: + m_Width: 23.749998 + m_Height: 35.124996 + m_HorizontalBearingX: 0.81249994 + m_HorizontalBearingY: 34.999996 + m_HorizontalAdvance: 25.875 + m_GlyphRect: + m_X: 70 + m_Y: 361 + m_Width: 24 + m_Height: 35 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 35 + m_Metrics: + m_Width: 32.374996 + m_Height: 31.937498 + m_HorizontalBearingX: 0.87499994 + m_HorizontalBearingY: 31.937498 + m_HorizontalAdvance: 34.125 + m_GlyphRect: + m_X: 261 + m_Y: 6 + m_Width: 32 + m_Height: 32 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 36 + m_Metrics: + m_Width: 21.562498 + m_Height: 29.874998 + m_HorizontalBearingX: 0.81249994 + m_HorizontalBearingY: 29.812498 + m_HorizontalAdvance: 23.75 + m_GlyphRect: + m_X: 241 + m_Y: 413 + m_Width: 22 + m_Height: 30 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 37 + m_Metrics: + m_Width: 31.937498 + m_Height: 29.437498 + m_HorizontalBearingX: 0.87499994 + m_HorizontalBearingY: 28.937498 + m_HorizontalAdvance: 34.125 + m_GlyphRect: + m_X: 305 + m_Y: 7 + m_Width: 32 + m_Height: 29 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 38 + m_Metrics: + m_Width: 21.124998 + m_Height: 28.562498 + m_HorizontalBearingX: 0.81249994 + m_HorizontalBearingY: 28.499998 + m_HorizontalAdvance: 24.125 + m_GlyphRect: + m_X: 382 + m_Y: 263 + m_Width: 21 + m_Height: 29 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 39 + m_Metrics: + m_Width: 29.812498 + m_Height: 26.999998 + m_HorizontalBearingX: -1.6249999 + m_HorizontalBearingY: 27.624998 + m_HorizontalAdvance: 23.6875 + m_GlyphRect: + m_X: 208 + m_Y: 147 + m_Width: 30 + m_Height: 27 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 40 + m_Metrics: + m_Width: 24.312498 + m_Height: 27.312498 + m_HorizontalBearingX: 1.4374999 + m_HorizontalBearingY: 24.187498 + m_HorizontalAdvance: 26.25 + m_GlyphRect: + m_X: 166 + m_Y: 297 + m_Width: 24 + m_Height: 27 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 41 + m_Metrics: + m_Width: 22.124998 + m_Height: 31.187498 + m_HorizontalBearingX: 0.68749994 + m_HorizontalBearingY: 31.124998 + m_HorizontalAdvance: 24.125 + m_GlyphRect: + m_X: 313 + m_Y: 185 + m_Width: 22 + m_Height: 31 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 42 + m_Metrics: + m_Width: 6.2499995 + m_Height: 25.937498 + m_HorizontalBearingX: 0.62499994 + m_HorizontalBearingY: 25.874998 + m_HorizontalAdvance: 7.75 + m_GlyphRect: + m_X: 96 + m_Y: 454 + m_Width: 6 + m_Height: 26 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 43 + m_Metrics: + m_Width: 18.437498 + m_Height: 32.562496 + m_HorizontalBearingX: 0.93749994 + m_HorizontalBearingY: 32.499996 + m_HorizontalAdvance: 20.1875 + m_GlyphRect: + m_X: 299 + m_Y: 140 + m_Width: 18 + m_Height: 33 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 44 + m_Metrics: + m_Width: 19.562498 + m_Height: 27.124998 + m_HorizontalBearingX: 0.81249994 + m_HorizontalBearingY: 26.999998 + m_HorizontalAdvance: 21.5625 + m_GlyphRect: + m_X: 447 + m_Y: 250 + m_Width: 20 + m_Height: 27 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 45 + m_Metrics: + m_Width: 14.312499 + m_Height: 24.937498 + m_HorizontalBearingX: 0.81249994 + m_HorizontalBearingY: 24.937498 + m_HorizontalAdvance: 15.9375 + m_GlyphRect: + m_X: 380 + m_Y: 423 + m_Width: 14 + m_Height: 25 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 46 + m_Metrics: + m_Width: 22.374998 + m_Height: 28.249998 + m_HorizontalBearingX: 0.81249994 + m_HorizontalBearingY: 28.249998 + m_HorizontalAdvance: 24.5625 + m_GlyphRect: + m_X: 348 + m_Y: 264 + m_Width: 22 + m_Height: 28 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 47 + m_Metrics: + m_Width: 25.499998 + m_Height: 24.687498 + m_HorizontalBearingX: 1.2499999 + m_HorizontalBearingY: 24.624998 + m_HorizontalAdvance: 28.0625 + m_GlyphRect: + m_X: 166 + m_Y: 335 + m_Width: 25 + m_Height: 25 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 48 + m_Metrics: + m_Width: 25.999998 + m_Height: 22.374998 + m_HorizontalBearingX: 0.74999994 + m_HorizontalBearingY: 22.312498 + m_HorizontalAdvance: 28.0625 + m_GlyphRect: + m_X: 455 + m_Y: 92 + m_Width: 26 + m_Height: 22 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 49 + m_Metrics: + m_Width: 27.437498 + m_Height: 27.624998 + m_HorizontalBearingX: 0.87499994 + m_HorizontalBearingY: 27.624998 + m_HorizontalAdvance: 28.875 + m_GlyphRect: + m_X: 166 + m_Y: 371 + m_Width: 27 + m_Height: 28 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 50 + m_Metrics: + m_Width: 28.937498 + m_Height: 29.874998 + m_HorizontalBearingX: 1.1249999 + m_HorizontalBearingY: 24.749998 + m_HorizontalAdvance: 29.5625 + m_GlyphRect: + m_X: 433 + m_Y: 6 + m_Width: 29 + m_Height: 30 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 51 + m_Metrics: + m_Width: 26.124998 + m_Height: 30.812498 + m_HorizontalBearingX: -0.49999997 + m_HorizontalBearingY: 28.749998 + m_HorizontalAdvance: 26.625 + m_GlyphRect: + m_X: 162 + m_Y: 188 + m_Width: 26 + m_Height: 31 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 52 + m_Metrics: + m_Width: 26.999998 + m_Height: 28.062498 + m_HorizontalBearingX: 0.87499994 + m_HorizontalBearingY: 27.687498 + m_HorizontalAdvance: 28.875 + m_GlyphRect: + m_X: 166 + m_Y: 411 + m_Width: 27 + m_Height: 28 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 53 + m_Metrics: + m_Width: 30.499998 + m_Height: 28.187498 + m_HorizontalBearingX: 0.12499999 + m_HorizontalBearingY: 28.187498 + m_HorizontalAdvance: 26.75 + m_GlyphRect: + m_X: 391 + m_Y: 7 + m_Width: 30 + m_Height: 28 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 54 + m_Metrics: + m_Width: 24.437498 + m_Height: 25.062498 + m_HorizontalBearingX: 1.2499999 + m_HorizontalBearingY: 25.062498 + m_HorizontalAdvance: 26.25 + m_GlyphRect: + m_X: 340 + m_Y: 320 + m_Width: 24 + m_Height: 25 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 55 + m_Metrics: + m_Width: 17.374998 + m_Height: 24.062498 + m_HorizontalBearingX: 0.81249994 + m_HorizontalBearingY: 23.999998 + m_HorizontalAdvance: 19.4375 + m_GlyphRect: + m_X: 306 + m_Y: 456 + m_Width: 17 + m_Height: 24 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 56 + m_Metrics: + m_Width: 31.124998 + m_Height: 22.937498 + m_HorizontalBearingX: 0.43749997 + m_HorizontalBearingY: 22.937498 + m_HorizontalAdvance: 32.375 + m_GlyphRect: + m_X: 126 + m_Y: 230 + m_Width: 31 + m_Height: 23 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 57 + m_Metrics: + m_Width: 23.312498 + m_Height: 26.999998 + m_HorizontalBearingX: 0.87499994 + m_HorizontalBearingY: 24.187498 + m_HorizontalAdvance: 24.5625 + m_GlyphRect: + m_X: 478 + m_Y: 209 + m_Width: 23 + m_Height: 27 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 58 + m_Metrics: + m_Width: 17.062498 + m_Height: 30.249998 + m_HorizontalBearingX: 0.62499994 + m_HorizontalBearingY: 29.562498 + m_HorizontalAdvance: 18.5625 + m_GlyphRect: + m_X: 113 + m_Y: 408 + m_Width: 17 + m_Height: 30 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 59 + m_Metrics: + m_Width: 24.749998 + m_Height: 28.562498 + m_HorizontalBearingX: 0.74999994 + m_HorizontalBearingY: 28.499998 + m_HorizontalAdvance: 26.25 + m_GlyphRect: + m_X: 205 + m_Y: 371 + m_Width: 25 + m_Height: 29 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 60 + m_Metrics: + m_Width: 24.124998 + m_Height: 36.687496 + m_HorizontalBearingX: 0.87499994 + m_HorizontalBearingY: 32.437496 + m_HorizontalAdvance: 21.9375 + m_GlyphRect: + m_X: 126 + m_Y: 182 + m_Width: 24 + m_Height: 37 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 61 + m_Metrics: + m_Width: 18.624998 + m_Height: 25.062498 + m_HorizontalBearingX: 0.43749997 + m_HorizontalBearingY: 25.062498 + m_HorizontalAdvance: 19.8125 + m_GlyphRect: + m_X: 471 + m_Y: 359 + m_Width: 19 + m_Height: 25 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 62 + m_Metrics: + m_Width: 18.624998 + m_Height: 42.499996 + m_HorizontalBearingX: 0.37499997 + m_HorizontalBearingY: 38.187496 + m_HorizontalAdvance: 19.8125 + m_GlyphRect: + m_X: 94 + m_Y: 101 + m_Width: 19 + m_Height: 42 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 63 + m_Metrics: + m_Width: 12.499999 + m_Height: 9.437499 + m_HorizontalBearingX: 2.1874998 + m_HorizontalBearingY: 33.687496 + m_HorizontalAdvance: 17.25 + m_GlyphRect: + m_X: 352 + m_Y: 412 + m_Width: 12 + m_Height: 9 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 64 + m_Metrics: + m_Width: 28.124998 + m_Height: 4.7499995 + m_HorizontalBearingX: 1.2499999 + m_HorizontalBearingY: 4.8124995 + m_HorizontalAdvance: 30.1875 + m_GlyphRect: + m_X: 348 + m_Y: 303 + m_Width: 28 + m_Height: 5 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 65 + m_Metrics: + m_Width: 6.2499995 + m_Height: 5.5624995 + m_HorizontalBearingX: 0.81249994 + m_HorizontalBearingY: 25.624998 + m_HorizontalAdvance: 7.9375 + m_GlyphRect: + m_X: 154 + m_Y: 500 + m_Width: 6 + m_Height: 6 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 66 + m_Metrics: + m_Width: 21.124998 + m_Height: 22.937498 + m_HorizontalBearingX: 0.81249994 + m_HorizontalBearingY: 22.999998 + m_HorizontalAdvance: 23.25 + m_GlyphRect: + m_X: 376 + m_Y: 357 + m_Width: 21 + m_Height: 23 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 67 + m_Metrics: + m_Width: 21.562498 + m_Height: 29.374998 + m_HorizontalBearingX: 0.43749997 + m_HorizontalBearingY: 29.312498 + m_HorizontalAdvance: 22.875 + m_GlyphRect: + m_X: 280 + m_Y: 187 + m_Width: 22 + m_Height: 29 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 68 + m_Metrics: + m_Width: 18.624998 + m_Height: 20.374998 + m_HorizontalBearingX: 0.81249994 + m_HorizontalBearingY: 20.312498 + m_HorizontalAdvance: 20.6875 + m_GlyphRect: + m_X: 440 + m_Y: 396 + m_Width: 19 + m_Height: 20 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 69 + m_Metrics: + m_Width: 22.187498 + m_Height: 33.499996 + m_HorizontalBearingX: 0.81249994 + m_HorizontalBearingY: 33.499996 + m_HorizontalAdvance: 24.125 + m_GlyphRect: + m_X: 226 + m_Y: 51 + m_Width: 22 + m_Height: 33 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 70 + m_Metrics: + m_Width: 21.562498 + m_Height: 23.812498 + m_HorizontalBearingX: 0.81249994 + m_HorizontalBearingY: 23.812498 + m_HorizontalAdvance: 23.75 + m_GlyphRect: + m_X: 480 + m_Y: 323 + m_Width: 22 + m_Height: 24 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 71 + m_Metrics: + m_Width: 21.312498 + m_Height: 32.437496 + m_HorizontalBearingX: -0.43749997 + m_HorizontalBearingY: 32.437496 + m_HorizontalAdvance: 17.3125 + m_GlyphRect: + m_X: 329 + m_Y: 134 + m_Width: 21 + m_Height: 32 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 72 + m_Metrics: + m_Width: 23.062498 + m_Height: 41.374996 + m_HorizontalBearingX: -6.2499995 + m_HorizontalBearingY: 18.999998 + m_HorizontalAdvance: 16.875 + m_GlyphRect: + m_X: 53 + m_Y: 54 + m_Width: 23 + m_Height: 41 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 73 + m_Metrics: + m_Width: 18.749998 + m_Height: 32.562496 + m_HorizontalBearingX: -0.68749994 + m_HorizontalBearingY: 32.437496 + m_HorizontalAdvance: 19.6875 + m_GlyphRect: + m_X: 463 + m_Y: 47 + m_Width: 19 + m_Height: 33 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 74 + m_Metrics: + m_Width: 6.6249995 + m_Height: 27.749998 + m_HorizontalBearingX: 0.49999997 + m_HorizontalBearingY: 27.749998 + m_HorizontalAdvance: 8.0625 + m_GlyphRect: + m_X: 378 + m_Y: 461 + m_Width: 7 + m_Height: 28 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 75 + m_Metrics: + m_Width: 15.374999 + m_Height: 47.749996 + m_HorizontalBearingX: -5.0624995 + m_HorizontalBearingY: 26.999998 + m_HorizontalAdvance: 9.25 + m_GlyphRect: + m_X: 38 + m_Y: 106 + m_Width: 15 + m_Height: 48 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 76 + m_Metrics: + m_Width: 18.249998 + m_Height: 28.562498 + m_HorizontalBearingX: -0.12499999 + m_HorizontalBearingY: 28.562498 + m_HorizontalAdvance: 18.5625 + m_GlyphRect: + m_X: 420 + m_Y: 319 + m_Width: 18 + m_Height: 29 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 77 + m_Metrics: + m_Width: 3.1874998 + m_Height: 26.187498 + m_HorizontalBearingX: 1.1249999 + m_HorizontalBearingY: 26.312498 + m_HorizontalAdvance: 5.5 + m_GlyphRect: + m_X: 479 + m_Y: 168 + m_Width: 3 + m_Height: 26 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 78 + m_Metrics: + m_Width: 31.999998 + m_Height: 19.499998 + m_HorizontalBearingX: 1.2499999 + m_HorizontalBearingY: 19.499998 + m_HorizontalAdvance: 34.5 + m_GlyphRect: + m_X: 126 + m_Y: 265 + m_Width: 32 + m_Height: 19 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 79 + m_Metrics: + m_Width: 18.999998 + m_Height: 20.562498 + m_HorizontalBearingX: 1.2499999 + m_HorizontalBearingY: 20.374998 + m_HorizontalAdvance: 21.1875 + m_GlyphRect: + m_X: 437 + m_Y: 427 + m_Width: 19 + m_Height: 21 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 80 + m_Metrics: + m_Width: 20.249998 + m_Height: 19.124998 + m_HorizontalBearingX: 0.81249994 + m_HorizontalBearingY: 19.062498 + m_HorizontalAdvance: 22.4375 + m_GlyphRect: + m_X: 448 + m_Y: 289 + m_Width: 20 + m_Height: 19 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 81 + m_Metrics: + m_Width: 22.124998 + m_Height: 32.374996 + m_HorizontalBearingX: 0.81249994 + m_HorizontalBearingY: 15.999999 + m_HorizontalAdvance: 23.9375 + m_GlyphRect: + m_X: 314 + m_Y: 228 + m_Width: 22 + m_Height: 32 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 82 + m_Metrics: + m_Width: 16.374998 + m_Height: 37.624996 + m_HorizontalBearingX: 0.81249994 + m_HorizontalBearingY: 22.937498 + m_HorizontalAdvance: 18.9375 + m_GlyphRect: + m_X: 41 + m_Y: 320 + m_Width: 16 + m_Height: 38 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 83 + m_Metrics: + m_Width: 14.812499 + m_Height: 20.687498 + m_HorizontalBearingX: 0.74999994 + m_HorizontalBearingY: 20.749998 + m_HorizontalAdvance: 15.9375 + m_GlyphRect: + m_X: 114 + m_Y: 449 + m_Width: 15 + m_Height: 21 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 84 + m_Metrics: + m_Width: 21.624998 + m_Height: 20.999998 + m_HorizontalBearingX: 0.74999994 + m_HorizontalBearingY: 20.999998 + m_HorizontalAdvance: 23.6875 + m_GlyphRect: + m_X: 409 + m_Y: 359 + m_Width: 22 + m_Height: 21 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 85 + m_Metrics: + m_Width: 14.437499 + m_Height: 29.249998 + m_HorizontalBearingX: 0.43749997 + m_HorizontalBearingY: 28.624998 + m_HorizontalAdvance: 15.125 + m_GlyphRect: + m_X: 305 + m_Y: 274 + m_Width: 14 + m_Height: 29 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 86 + m_Metrics: + m_Width: 21.999998 + m_Height: 21.749998 + m_HorizontalBearingX: 0.37499997 + m_HorizontalBearingY: 21.999998 + m_HorizontalAdvance: 23.0625 + m_GlyphRect: + m_X: 274 + m_Y: 365 + m_Width: 22 + m_Height: 22 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 87 + m_Metrics: + m_Width: 16.874998 + m_Height: 17.374998 + m_HorizontalBearingX: 0.43749997 + m_HorizontalBearingY: 17.312498 + m_HorizontalAdvance: 17.9375 + m_GlyphRect: + m_X: 169 + m_Y: 451 + m_Width: 17 + m_Height: 17 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 88 + m_Metrics: + m_Width: 28.687498 + m_Height: 19.499998 + m_HorizontalBearingX: 0.37499997 + m_HorizontalBearingY: 19.499998 + m_HorizontalAdvance: 30.1875 + m_GlyphRect: + m_X: 126 + m_Y: 296 + m_Width: 29 + m_Height: 19 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 89 + m_Metrics: + m_Width: 20.437498 + m_Height: 20.249998 + m_HorizontalBearingX: -0.18749999 + m_HorizontalBearingY: 17.937498 + m_HorizontalAdvance: 20.625 + m_GlyphRect: + m_X: 376 + m_Y: 392 + m_Width: 20 + m_Height: 20 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 90 + m_Metrics: + m_Width: 20.937498 + m_Height: 43.312496 + m_HorizontalBearingX: 0.68749994 + m_HorizontalBearingY: 20.937498 + m_HorizontalAdvance: 22.4375 + m_GlyphRect: + m_X: 39 + m_Y: 463 + m_Width: 21 + m_Height: 43 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 91 + m_Metrics: + m_Width: 18.999998 + m_Height: 23.812498 + m_HorizontalBearingX: 0.81249994 + m_HorizontalBearingY: 23.812498 + m_HorizontalAdvance: 21.1875 + m_GlyphRect: + m_X: 470 + m_Y: 395 + m_Width: 19 + m_Height: 24 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 92 + m_Metrics: + m_Width: 17.374998 + m_Height: 45.749996 + m_HorizontalBearingX: 0.81249994 + m_HorizontalBearingY: 41.062496 + m_HorizontalAdvance: 18.125 + m_GlyphRect: + m_X: 65 + m_Y: 106 + m_Width: 17 + m_Height: 46 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 93 + m_Metrics: + m_Width: 5.1249995 + m_Height: 29.812498 + m_HorizontalBearingX: 0.81249994 + m_HorizontalBearingY: 29.812498 + m_HorizontalAdvance: 6.875 + m_GlyphRect: + m_X: 331 + m_Y: 271 + m_Width: 5 + m_Height: 30 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 94 + m_Metrics: + m_Width: 19.062498 + m_Height: 53.812496 + m_HorizontalBearingX: 0 + m_HorizontalBearingY: 43.312496 + m_HorizontalAdvance: 20.25 + m_GlyphRect: + m_X: 6 + m_Y: 171 + m_Width: 19 + m_Height: 54 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 95 + m_Metrics: + m_Width: 16.249998 + m_Height: 6.6874995 + m_HorizontalBearingX: 0.87499994 + m_HorizontalBearingY: 24.937498 + m_HorizontalAdvance: 18.5 + m_GlyphRect: + m_X: 69 + m_Y: 342 + m_Width: 16 + m_Height: 7 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 96 + m_Metrics: + m_Width: 0 + m_Height: 0 + m_HorizontalBearingX: 0 + m_HorizontalBearingY: 0 + m_HorizontalAdvance: 17.25 + m_GlyphRect: + m_X: 6 + m_Y: -5 + m_Width: 0 + m_Height: 0 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 97 + m_Metrics: + m_Width: 5.1249995 + m_Height: 30.874998 + m_HorizontalBearingX: 0.87499994 + m_HorizontalBearingY: 30.499998 + m_HorizontalAdvance: 6.875 + m_GlyphRect: + m_X: 200 + m_Y: 188 + m_Width: 5 + m_Height: 31 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 98 + m_Metrics: + m_Width: 18.812498 + m_Height: 27.437498 + m_HorizontalBearingX: 0.81249994 + m_HorizontalBearingY: 24.749998 + m_HorizontalAdvance: 20.6875 + m_GlyphRect: + m_X: 450 + m_Y: 320 + m_Width: 19 + m_Height: 27 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 99 + m_Metrics: + m_Width: 33.187496 + m_Height: 33.312496 + m_HorizontalBearingX: 0.43749997 + m_HorizontalBearingY: 33.249996 + m_HorizontalAdvance: 34.875 + m_GlyphRect: + m_X: 172 + m_Y: 7 + m_Width: 33 + m_Height: 33 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 100 + m_Metrics: + m_Width: 24.999998 + m_Height: 23.374998 + m_HorizontalBearingX: 1.3124999 + m_HorizontalBearingY: 24.437498 + m_HorizontalAdvance: 28.4375 + m_GlyphRect: + m_X: 340 + m_Y: 357 + m_Width: 25 + m_Height: 23 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 101 + m_Metrics: + m_Width: 18.624998 + m_Height: 34.687496 + m_HorizontalBearingX: 0.18749999 + m_HorizontalBearingY: 34.437496 + m_HorizontalAdvance: 17.9375 + m_GlyphRect: + m_X: 275 + m_Y: 274 + m_Width: 19 + m_Height: 35 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 102 + m_Metrics: + m_Width: 2.8749998 + m_Height: 26.999998 + m_HorizontalBearingX: 0.99999994 + m_HorizontalBearingY: 26.374998 + m_HorizontalAdvance: 5.375 + m_GlyphRect: + m_X: 335 + m_Y: 454 + m_Width: 3 + m_Height: 27 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 103 + m_Metrics: + m_Width: 21.749998 + m_Height: 30.499998 + m_HorizontalBearingX: 1.4999999 + m_HorizontalBearingY: 30.562498 + m_HorizontalAdvance: 23.6875 + m_GlyphRect: + m_X: 395 + m_Y: 128 + m_Width: 22 + m_Height: 30 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 104 + m_Metrics: + m_Width: 11.812499 + m_Height: 4.4374995 + m_HorizontalBearingX: 3.0624998 + m_HorizontalBearingY: 24.187498 + m_HorizontalAdvance: 18.3125 + m_GlyphRect: + m_X: 388 + m_Y: 304 + m_Width: 12 + m_Height: 4 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 105 + m_Metrics: + m_Width: 28.687498 + m_Height: 25.999998 + m_HorizontalBearingX: 1.4374999 + m_HorizontalBearingY: 25.874998 + m_HorizontalAdvance: 30.75 + m_GlyphRect: + m_X: 126 + m_Y: 326 + m_Width: 29 + m_Height: 26 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 106 + m_Metrics: + m_Width: 10.312499 + m_Height: 12.437499 + m_HorizontalBearingX: 0.74999994 + m_HorizontalBearingY: 22.937498 + m_HorizontalAdvance: 12.25 + m_GlyphRect: + m_X: 415 + m_Y: 489 + m_Width: 10 + m_Height: 12 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 107 + m_Metrics: + m_Width: 32.187496 + m_Height: 21.937498 + m_HorizontalBearingX: -0.12499999 + m_HorizontalBearingY: 21.937498 + m_HorizontalAdvance: 34.75 + m_GlyphRect: + m_X: 473 + m_Y: 6 + m_Width: 32 + m_Height: 22 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 108 + m_Metrics: + m_Width: 14.312499 + m_Height: 6.9999995 + m_HorizontalBearingX: 1.4999999 + m_HorizontalBearingY: 18.499998 + m_HorizontalAdvance: 17 + m_GlyphRect: + m_X: 197 + m_Y: 469 + m_Width: 14 + m_Height: 7 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 109 + m_Metrics: + m_Width: 14.874999 + m_Height: 3.5624998 + m_HorizontalBearingX: 0.62499994 + m_HorizontalBearingY: 14.749999 + m_HorizontalAdvance: 17.25 + m_GlyphRect: + m_X: 223 + m_Y: 469 + m_Width: 15 + m_Height: 4 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 110 + m_Metrics: + m_Width: 28.687498 + m_Height: 25.999998 + m_HorizontalBearingX: 1.5624999 + m_HorizontalBearingY: 26.687498 + m_HorizontalAdvance: 32.5625 + m_GlyphRect: + m_X: 376 + m_Y: 90 + m_Width: 29 + m_Height: 26 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 111 + m_Metrics: + m_Width: 11.874999 + m_Height: 3.4999998 + m_HorizontalBearingX: 1.4999999 + m_HorizontalBearingY: 24.874998 + m_HorizontalAdvance: 13.1875 + m_GlyphRect: + m_X: 274 + m_Y: 468 + m_Width: 12 + m_Height: 3 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 112 + m_Metrics: + m_Width: 9.624999 + m_Height: 12.749999 + m_HorizontalBearingX: 0.31249997 + m_HorizontalBearingY: 25.499998 + m_HorizontalAdvance: 11.75 + m_GlyphRect: + m_X: 437 + m_Y: 483 + m_Width: 10 + m_Height: 13 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 113 + m_Metrics: + m_Width: 19.937498 + m_Height: 20.749998 + m_HorizontalBearingX: 0.62499994 + m_HorizontalBearingY: 22.124998 + m_HorizontalAdvance: 21.1875 + m_GlyphRect: + m_X: 406 + m_Y: 427 + m_Width: 20 + m_Height: 21 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 114 + m_Metrics: + m_Width: 11.499999 + m_Height: 15.062499 + m_HorizontalBearingX: 0.24999999 + m_HorizontalBearingY: 24.999998 + m_HorizontalAdvance: 13.6875 + m_GlyphRect: + m_X: 494 + m_Y: 156 + m_Width: 11 + m_Height: 15 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 115 + m_Metrics: + m_Width: 9.374999 + m_Height: 14.874999 + m_HorizontalBearingX: -0.24999999 + m_HorizontalBearingY: 27.124998 + m_HorizontalAdvance: 9.375 + m_GlyphRect: + m_X: 496 + m_Y: 456 + m_Width: 9 + m_Height: 15 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 116 + m_Metrics: + m_Width: 7.1874995 + m_Height: 7.1249995 + m_HorizontalBearingX: 0.37499997 + m_HorizontalBearingY: 25.249998 + m_HorizontalAdvance: 8.3125 + m_GlyphRect: + m_X: 396 + m_Y: 499 + m_Width: 7 + m_Height: 7 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 117 + m_Metrics: + m_Width: 21.999998 + m_Height: 24.812498 + m_HorizontalBearingX: 0.37499997 + m_HorizontalBearingY: 21.999998 + m_HorizontalAdvance: 23.0625 + m_GlyphRect: + m_X: 307 + m_Y: 378 + m_Width: 22 + m_Height: 25 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 118 + m_Metrics: + m_Width: 16.562498 + m_Height: 25.062498 + m_HorizontalBearingX: 0.87499994 + m_HorizontalBearingY: 23.562498 + m_HorizontalAdvance: 19 + m_GlyphRect: + m_X: 69 + m_Y: 306 + m_Width: 17 + m_Height: 25 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 119 + m_Metrics: + m_Width: 5.6249995 + m_Height: 5.3124995 + m_HorizontalBearingX: 2.1874998 + m_HorizontalBearingY: 13.437499 + m_HorizontalAdvance: 9.8125 + m_GlyphRect: + m_X: 500 + m_Y: 396 + m_Width: 6 + m_Height: 5 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 120 + m_Metrics: + m_Width: 11.999999 + m_Height: 15.312499 + m_HorizontalBearingX: 6.8749995 + m_HorizontalBearingY: 1.2499999 + m_HorizontalAdvance: 20.5 + m_GlyphRect: + m_X: 494 + m_Y: 183 + m_Width: 12 + m_Height: 15 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 121 + m_Metrics: + m_Width: 8.874999 + m_Height: 17.999998 + m_HorizontalBearingX: -0.68749994 + m_HorizontalBearingY: 28.062498 + m_HorizontalAdvance: 9.0625 + m_GlyphRect: + m_X: 414 + m_Y: 459 + m_Width: 9 + m_Height: 18 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 122 + m_Metrics: + m_Width: 9.624999 + m_Height: 12.749999 + m_HorizontalBearingX: 0.31249997 + m_HorizontalBearingY: 25.499998 + m_HorizontalAdvance: 11.75 + m_GlyphRect: + m_X: 458 + m_Y: 478 + m_Width: 10 + m_Height: 13 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 123 + m_Metrics: + m_Width: 27.374998 + m_Height: 22.374998 + m_HorizontalBearingX: 1.2499999 + m_HorizontalBearingY: 22.312498 + m_HorizontalAdvance: 30.3125 + m_GlyphRect: + m_X: 416 + m_Y: 92 + m_Width: 27 + m_Height: 22 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 124 + m_Metrics: + m_Width: 25.624998 + m_Height: 35.187496 + m_HorizontalBearingX: 0.74999994 + m_HorizontalBearingY: 34.187496 + m_HorizontalAdvance: 28.8125 + m_GlyphRect: + m_X: 76 + m_Y: 408 + m_Width: 26 + m_Height: 35 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 125 + m_Metrics: + m_Width: 24.249998 + m_Height: 35.062496 + m_HorizontalBearingX: 0.24999999 + m_HorizontalBearingY: 32.937496 + m_HorizontalAdvance: 26.0625 + m_GlyphRect: + m_X: 202 + m_Y: 231 + m_Width: 24 + m_Height: 35 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 126 + m_Metrics: + m_Width: 24.374998 + m_Height: 35.437496 + m_HorizontalBearingX: 0.49999997 + m_HorizontalBearingY: 31.999998 + m_HorizontalAdvance: 26.0625 + m_GlyphRect: + m_X: 202 + m_Y: 278 + m_Width: 24 + m_Height: 35 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 127 + m_Metrics: + m_Width: 12.062499 + m_Height: 34.249996 + m_HorizontalBearingX: 1.0624999 + m_HorizontalBearingY: 34.374996 + m_HorizontalAdvance: 12.5625 + m_GlyphRect: + m_X: 290 + m_Y: 228 + m_Width: 12 + m_Height: 34 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 128 + m_Metrics: + m_Width: 23.749998 + m_Height: 42.874996 + m_HorizontalBearingX: 0.81249994 + m_HorizontalBearingY: 42.687496 + m_HorizontalAdvance: 25.875 + m_GlyphRect: + m_X: 88 + m_Y: 46 + m_Width: 24 + m_Height: 43 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 129 + m_Metrics: + m_Width: 23.749998 + m_Height: 43.124996 + m_HorizontalBearingX: 0.81249994 + m_HorizontalBearingY: 42.937496 + m_HorizontalAdvance: 25.875 + m_GlyphRect: + m_X: 6 + m_Y: 354 + m_Width: 24 + m_Height: 43 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 130 + m_Metrics: + m_Width: 23.749998 + m_Height: 44.812496 + m_HorizontalBearingX: 0.81249994 + m_HorizontalBearingY: 44.687496 + m_HorizontalAdvance: 25.875 + m_GlyphRect: + m_X: 6 + m_Y: 297 + m_Width: 24 + m_Height: 45 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 131 + m_Metrics: + m_Width: 23.749998 + m_Height: 41.749996 + m_HorizontalBearingX: 0.81249994 + m_HorizontalBearingY: 41.562496 + m_HorizontalAdvance: 25.875 + m_GlyphRect: + m_X: 124 + m_Y: 95 + m_Width: 24 + m_Height: 42 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 132 + m_Metrics: + m_Width: 23.749998 + m_Height: 41.812496 + m_HorizontalBearingX: 0.81249994 + m_HorizontalBearingY: 41.624996 + m_HorizontalAdvance: 25.875 + m_GlyphRect: + m_X: 159 + m_Y: 95 + m_Width: 24 + m_Height: 42 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 133 + m_Metrics: + m_Width: 23.749998 + m_Height: 42.187496 + m_HorizontalBearingX: 0.81249994 + m_HorizontalBearingY: 42.062496 + m_HorizontalAdvance: 25.875 + m_GlyphRect: + m_X: 123 + m_Y: 42 + m_Width: 24 + m_Height: 42 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 134 + m_Metrics: + m_Width: 42.312496 + m_Height: 35.124996 + m_HorizontalBearingX: 0.81249994 + m_HorizontalBearingY: 34.999996 + m_HorizontalAdvance: 44.1875 + m_GlyphRect: + m_X: 6 + m_Y: 7 + m_Width: 42 + m_Height: 35 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 135 + m_Metrics: + m_Width: 21.562498 + m_Height: 43.937496 + m_HorizontalBearingX: 0.81249994 + m_HorizontalBearingY: 29.812498 + m_HorizontalAdvance: 23.75 + m_GlyphRect: + m_X: 6 + m_Y: 462 + m_Width: 22 + m_Height: 44 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 136 + m_Metrics: + m_Width: 21.124998 + m_Height: 36.624996 + m_HorizontalBearingX: 0.81249994 + m_HorizontalBearingY: 36.562496 + m_HorizontalAdvance: 24.125 + m_GlyphRect: + m_X: 61 + m_Y: 165 + m_Width: 21 + m_Height: 37 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 137 + m_Metrics: + m_Width: 21.124998 + m_Height: 36.312496 + m_HorizontalBearingX: 0.81249994 + m_HorizontalBearingY: 36.249996 + m_HorizontalAdvance: 24.125 + m_GlyphRect: + m_X: 43 + m_Y: 409 + m_Width: 21 + m_Height: 36 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 138 + m_Metrics: + m_Width: 21.124998 + m_Height: 40.624996 + m_HorizontalBearingX: 0.81249994 + m_HorizontalBearingY: 40.624996 + m_HorizontalAdvance: 24.125 + m_GlyphRect: + m_X: 194 + m_Y: 95 + m_Width: 21 + m_Height: 41 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 139 + m_Metrics: + m_Width: 21.124998 + m_Height: 35.374996 + m_HorizontalBearingX: 0.81249994 + m_HorizontalBearingY: 35.312496 + m_HorizontalAdvance: 24.125 + m_GlyphRect: + m_X: 238 + m_Y: 228 + m_Width: 21 + m_Height: 35 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 140 + m_Metrics: + m_Width: 7.8749995 + m_Height: 35.312496 + m_HorizontalBearingX: -0.99999994 + m_HorizontalBearingY: 35.249996 + m_HorizontalAdvance: 7.75 + m_GlyphRect: + m_X: 271 + m_Y: 228 + m_Width: 8 + m_Height: 35 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 141 + m_Metrics: + m_Width: 8.062499 + m_Height: 34.062496 + m_HorizontalBearingX: -1.1249999 + m_HorizontalBearingY: 33.999996 + m_HorizontalAdvance: 7.75 + m_GlyphRect: + m_X: 41 + m_Y: 275 + m_Width: 8 + m_Height: 34 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 142 + m_Metrics: + m_Width: 12.499999 + m_Height: 40.624996 + m_HorizontalBearingX: -2.3124998 + m_HorizontalBearingY: 40.624996 + m_HorizontalAdvance: 7.75 + m_GlyphRect: + m_X: 37 + m_Y: 171 + m_Width: 12 + m_Height: 41 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 143 + m_Metrics: + m_Width: 11.812499 + m_Height: 31.499998 + m_HorizontalBearingX: -4.8124995 + m_HorizontalBearingY: 31.437498 + m_HorizontalAdvance: 7.75 + m_GlyphRect: + m_X: 353 + m_Y: 91 + m_Width: 12 + m_Height: 31 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 144 + m_Metrics: + m_Width: 31.937498 + m_Height: 29.437498 + m_HorizontalBearingX: 0.87499994 + m_HorizontalBearingY: 28.937498 + m_HorizontalAdvance: 34.125 + m_GlyphRect: + m_X: 348 + m_Y: 7 + m_Width: 32 + m_Height: 29 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 145 + m_Metrics: + m_Width: 25.499998 + m_Height: 31.937498 + m_HorizontalBearingX: 1.2499999 + m_HorizontalBearingY: 31.874998 + m_HorizontalAdvance: 28.0625 + m_GlyphRect: + m_X: 204 + m_Y: 411 + m_Width: 25 + m_Height: 32 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 146 + m_Metrics: + m_Width: 25.999998 + m_Height: 32.624996 + m_HorizontalBearingX: 0.74999994 + m_HorizontalBearingY: 32.562496 + m_HorizontalAdvance: 28.0625 + m_GlyphRect: + m_X: 158 + m_Y: 51 + m_Width: 26 + m_Height: 33 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 147 + m_Metrics: + m_Width: 25.999998 + m_Height: 32.249996 + m_HorizontalBearingX: 0.74999994 + m_HorizontalBearingY: 32.187496 + m_HorizontalAdvance: 28.0625 + m_GlyphRect: + m_X: 105 + m_Y: 364 + m_Width: 26 + m_Height: 32 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 148 + m_Metrics: + m_Width: 25.999998 + m_Height: 35.187496 + m_HorizontalBearingX: 0.74999994 + m_HorizontalBearingY: 35.187496 + m_HorizontalAdvance: 28.0625 + m_GlyphRect: + m_X: 203 + m_Y: 325 + m_Width: 26 + m_Height: 35 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 149 + m_Metrics: + m_Width: 25.999998 + m_Height: 30.187498 + m_HorizontalBearingX: 0.74999994 + m_HorizontalBearingY: 30.124998 + m_HorizontalAdvance: 28.0625 + m_GlyphRect: + m_X: 354 + m_Y: 48 + m_Width: 26 + m_Height: 30 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 150 + m_Metrics: + m_Width: 25.999998 + m_Height: 31.187498 + m_HorizontalBearingX: 0.74999994 + m_HorizontalBearingY: 31.124998 + m_HorizontalAdvance: 28.0625 + m_GlyphRect: + m_X: 317 + m_Y: 48 + m_Width: 26 + m_Height: 31 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 151 + m_Metrics: + m_Width: 13.624999 + m_Height: 12.249999 + m_HorizontalBearingX: 2.1874998 + m_HorizontalBearingY: 14.999999 + m_HorizontalAdvance: 20.625 + m_GlyphRect: + m_X: 71 + m_Y: 468 + m_Width: 14 + m_Height: 12 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 152 + m_Metrics: + m_Width: 25.999998 + m_Height: 34.499996 + m_HorizontalBearingX: 0.74999994 + m_HorizontalBearingY: 29.874998 + m_HorizontalAdvance: 28.0625 + m_GlyphRect: + m_X: 238 + m_Y: 275 + m_Width: 26 + m_Height: 34 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 153 + m_Metrics: + m_Width: 24.437498 + m_Height: 32.624996 + m_HorizontalBearingX: 1.2499999 + m_HorizontalBearingY: 32.562496 + m_HorizontalAdvance: 26.25 + m_GlyphRect: + m_X: 391 + m_Y: 46 + m_Width: 24 + m_Height: 33 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 154 + m_Metrics: + m_Width: 24.437498 + m_Height: 32.249996 + m_HorizontalBearingX: 1.2499999 + m_HorizontalBearingY: 32.187496 + m_HorizontalAdvance: 26.25 + m_GlyphRect: + m_X: 427 + m_Y: 48 + m_Width: 24 + m_Height: 32 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 155 + m_Metrics: + m_Width: 24.437498 + m_Height: 40.624996 + m_HorizontalBearingX: 1.2499999 + m_HorizontalBearingY: 40.624996 + m_HorizontalAdvance: 26.25 + m_GlyphRect: + m_X: 227 + m_Y: 95 + m_Width: 24 + m_Height: 41 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 156 + m_Metrics: + m_Width: 24.437498 + m_Height: 31.187498 + m_HorizontalBearingX: 1.2499999 + m_HorizontalBearingY: 31.124998 + m_HorizontalAdvance: 26.25 + m_GlyphRect: + m_X: 317 + m_Y: 91 + m_Width: 24 + m_Height: 31 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 157 + m_Metrics: + m_Width: 17.062498 + m_Height: 38.812496 + m_HorizontalBearingX: 0.62499994 + m_HorizontalBearingY: 38.124996 + m_HorizontalAdvance: 18.5625 + m_GlyphRect: + m_X: 97 + m_Y: 193 + m_Width: 17 + m_Height: 39 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 158 + m_Metrics: + m_Width: 19.749998 + m_Height: 35.249996 + m_HorizontalBearingX: 2.1874998 + m_HorizontalBearingY: 28.062498 + m_HorizontalAdvance: 22.875 + m_GlyphRect: + m_X: 241 + m_Y: 367 + m_Width: 20 + m_Height: 35 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 159 + m_Metrics: + m_Width: 24.874998 + m_Height: 38.374996 + m_HorizontalBearingX: 1.4374999 + m_HorizontalBearingY: 32.312496 + m_HorizontalAdvance: 27.1875 + m_GlyphRect: + m_X: 61 + m_Y: 214 + m_Width: 25 + m_Height: 38 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 160 + m_Metrics: + m_Width: 21.124998 + m_Height: 29.874998 + m_HorizontalBearingX: 0.81249994 + m_HorizontalBearingY: 29.874998 + m_HorizontalAdvance: 23.25 + m_GlyphRect: + m_X: 307 + m_Y: 314 + m_Width: 21 + m_Height: 30 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 161 + m_Metrics: + m_Width: 21.124998 + m_Height: 31.812498 + m_HorizontalBearingX: 0.81249994 + m_HorizontalBearingY: 31.812498 + m_HorizontalAdvance: 23.25 + m_GlyphRect: + m_X: 347 + m_Y: 177 + m_Width: 21 + m_Height: 32 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 162 + m_Metrics: + m_Width: 21.124998 + m_Height: 33.624996 + m_HorizontalBearingX: 0.81249994 + m_HorizontalBearingY: 33.687496 + m_HorizontalAdvance: 23.25 + m_GlyphRect: + m_X: 274 + m_Y: 320 + m_Width: 21 + m_Height: 34 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 163 + m_Metrics: + m_Width: 21.124998 + m_Height: 31.874998 + m_HorizontalBearingX: 0.81249994 + m_HorizontalBearingY: 31.874998 + m_HorizontalAdvance: 23.25 + m_GlyphRect: + m_X: 348 + m_Y: 220 + m_Width: 21 + m_Height: 32 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 164 + m_Metrics: + m_Width: 21.124998 + m_Height: 29.562498 + m_HorizontalBearingX: 0.81249994 + m_HorizontalBearingY: 29.562498 + m_HorizontalAdvance: 23.25 + m_GlyphRect: + m_X: 413 + m_Y: 169 + m_Width: 21 + m_Height: 30 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 165 + m_Metrics: + m_Width: 21.124998 + m_Height: 29.999998 + m_HorizontalBearingX: 0.81249994 + m_HorizontalBearingY: 30.062498 + m_HorizontalAdvance: 23.25 + m_GlyphRect: + m_X: 446 + m_Y: 167 + m_Width: 21 + m_Height: 30 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 166 + m_Metrics: + m_Width: 39.187496 + m_Height: 23.999998 + m_HorizontalBearingX: 0.81249994 + m_HorizontalBearingY: 22.999998 + m_HorizontalAdvance: 40.5625 + m_GlyphRect: + m_X: 121 + m_Y: 6 + m_Width: 39 + m_Height: 24 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 167 + m_Metrics: + m_Width: 18.624998 + m_Height: 34.062496 + m_HorizontalBearingX: 0.81249994 + m_HorizontalBearingY: 20.312498 + m_HorizontalAdvance: 20.6875 + m_GlyphRect: + m_X: 263 + m_Y: 96 + m_Width: 19 + m_Height: 34 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 168 + m_Metrics: + m_Width: 21.562498 + m_Height: 30.687498 + m_HorizontalBearingX: 0.81249994 + m_HorizontalBearingY: 30.687498 + m_HorizontalAdvance: 23.75 + m_GlyphRect: + m_X: 428 + m_Y: 125 + m_Width: 22 + m_Height: 31 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 169 + m_Metrics: + m_Width: 21.562498 + m_Height: 32.312496 + m_HorizontalBearingX: 0.81249994 + m_HorizontalBearingY: 32.312496 + m_HorizontalAdvance: 23.75 + m_GlyphRect: + m_X: 362 + m_Y: 134 + m_Width: 22 + m_Height: 32 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 170 + m_Metrics: + m_Width: 21.562498 + m_Height: 33.624996 + m_HorizontalBearingX: 0.81249994 + m_HorizontalBearingY: 33.687496 + m_HorizontalAdvance: 23.75 + m_GlyphRect: + m_X: 260 + m_Y: 50 + m_Width: 22 + m_Height: 34 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 171 + m_Metrics: + m_Width: 21.562498 + m_Height: 28.999998 + m_HorizontalBearingX: 0.81249994 + m_HorizontalBearingY: 28.999998 + m_HorizontalAdvance: 23.75 + m_GlyphRect: + m_X: 414 + m_Y: 210 + m_Width: 22 + m_Height: 29 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 172 + m_Metrics: + m_Width: 6.5624995 + m_Height: 27.499998 + m_HorizontalBearingX: 0.62499994 + m_HorizontalBearingY: 27.499998 + m_HorizontalAdvance: 8.0625 + m_GlyphRect: + m_X: 396 + m_Y: 460 + m_Width: 7 + m_Height: 27 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 173 + m_Metrics: + m_Width: 7.6874995 + m_Height: 28.812498 + m_HorizontalBearingX: -0.49999997 + m_HorizontalBearingY: 28.749998 + m_HorizontalAdvance: 8.0625 + m_GlyphRect: + m_X: 333 + m_Y: 414 + m_Width: 8 + m_Height: 29 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 174 + m_Metrics: + m_Width: 12.499999 + m_Height: 33.687496 + m_HorizontalBearingX: -2.2499998 + m_HorizontalBearingY: 33.687496 + m_HorizontalAdvance: 8.0625 + m_GlyphRect: + m_X: 293 + m_Y: 95 + m_Width: 12 + m_Height: 34 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 175 + m_Metrics: + m_Width: 11.812499 + m_Height: 26.937498 + m_HorizontalBearingX: -2.2499998 + m_HorizontalBearingY: 26.874998 + m_HorizontalAdvance: 8.0625 + m_GlyphRect: + m_X: 494 + m_Y: 117 + m_Width: 12 + m_Height: 27 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 176 + m_Metrics: + m_Width: 17.562498 + m_Height: 24.937498 + m_HorizontalBearingX: 1.0624999 + m_HorizontalBearingY: 24.374998 + m_HorizontalAdvance: 18.75 + m_GlyphRect: + m_X: 349 + m_Y: 461 + m_Width: 18 + m_Height: 25 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 177 + m_Metrics: + m_Width: 19.062498 + m_Height: 29.062498 + m_HorizontalBearingX: 1.2499999 + m_HorizontalBearingY: 28.874998 + m_HorizontalAdvance: 21.1875 + m_GlyphRect: + m_X: 447 + m_Y: 209 + m_Width: 19 + m_Height: 29 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 178 + m_Metrics: + m_Width: 20.249998 + m_Height: 25.687498 + m_HorizontalBearingX: 0.81249994 + m_HorizontalBearingY: 25.624998 + m_HorizontalAdvance: 22.4375 + m_GlyphRect: + m_X: 480 + m_Y: 286 + m_Width: 20 + m_Height: 26 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 179 + m_Metrics: + m_Width: 20.249998 + m_Height: 27.937498 + m_HorizontalBearingX: 0.81249994 + m_HorizontalBearingY: 27.874998 + m_HorizontalAdvance: 22.4375 + m_GlyphRect: + m_X: 415 + m_Y: 250 + m_Width: 20 + m_Height: 28 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 180 + m_Metrics: + m_Width: 20.249998 + m_Height: 30.374998 + m_HorizontalBearingX: 0.81249994 + m_HorizontalBearingY: 30.374998 + m_HorizontalAdvance: 22.4375 + m_GlyphRect: + m_X: 217 + m_Y: 186 + m_Width: 20 + m_Height: 30 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 181 + m_Metrics: + m_Width: 20.249998 + m_Height: 24.999998 + m_HorizontalBearingX: 0.81249994 + m_HorizontalBearingY: 24.937498 + m_HorizontalAdvance: 22.4375 + m_GlyphRect: + m_X: 274 + m_Y: 398 + m_Width: 20 + m_Height: 25 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 182 + m_Metrics: + m_Width: 20.249998 + m_Height: 24.249998 + m_HorizontalBearingX: 0.81249994 + m_HorizontalBearingY: 24.187498 + m_HorizontalAdvance: 22.4375 + m_GlyphRect: + m_X: 408 + m_Y: 392 + m_Width: 20 + m_Height: 24 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 183 + m_Metrics: + m_Width: 11.874999 + m_Height: 12.187499 + m_HorizontalBearingX: 1.6249999 + m_HorizontalBearingY: 15.562499 + m_HorizontalAdvance: 15.4375 + m_GlyphRect: + m_X: 434 + m_Y: 460 + m_Width: 12 + m_Height: 12 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 184 + m_Metrics: + m_Width: 20.312498 + m_Height: 21.249998 + m_HorizontalBearingX: 0.74999994 + m_HorizontalBearingY: 21.249998 + m_HorizontalAdvance: 22.4375 + m_GlyphRect: + m_X: 274 + m_Y: 435 + m_Width: 20 + m_Height: 21 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 185 + m_Metrics: + m_Width: 21.999998 + m_Height: 30.937498 + m_HorizontalBearingX: 0.37499997 + m_HorizontalBearingY: 31.124998 + m_HorizontalAdvance: 23.0625 + m_GlyphRect: + m_X: 461 + m_Y: 125 + m_Width: 22 + m_Height: 31 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 186 + m_Metrics: + m_Width: 21.999998 + m_Height: 31.062498 + m_HorizontalBearingX: 0.37499997 + m_HorizontalBearingY: 31.249998 + m_HorizontalAdvance: 23.0625 + m_GlyphRect: + m_X: 380 + m_Y: 178 + m_Width: 22 + m_Height: 31 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 187 + m_Metrics: + m_Width: 21.999998 + m_Height: 33.437496 + m_HorizontalBearingX: 0.37499997 + m_HorizontalBearingY: 33.687496 + m_HorizontalAdvance: 23.0625 + m_GlyphRect: + m_X: 266 + m_Y: 142 + m_Width: 22 + m_Height: 33 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 188 + m_Metrics: + m_Width: 21.999998 + m_Height: 27.874998 + m_HorizontalBearingX: 0.37499997 + m_HorizontalBearingY: 28.062498 + m_HorizontalAdvance: 23.0625 + m_GlyphRect: + m_X: 478 + m_Y: 247 + m_Width: 22 + m_Height: 28 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 189 + m_Metrics: + m_Width: 20.937498 + m_Height: 53.312496 + m_HorizontalBearingX: 0.68749994 + m_HorizontalBearingY: 30.874998 + m_HorizontalAdvance: 22.4375 + m_GlyphRect: + m_X: 6 + m_Y: 107 + m_Width: 21 + m_Height: 53 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 190 + m_Metrics: + m_Width: 21.812498 + m_Height: 31.999998 + m_HorizontalBearingX: 1.1874999 + m_HorizontalBearingY: 23.437498 + m_HorizontalAdvance: 23.9375 + m_GlyphRect: + m_X: 381 + m_Y: 220 + m_Width: 22 + m_Height: 32 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 191 + m_Metrics: + m_Width: 20.937498 + m_Height: 49.437496 + m_HorizontalBearingX: 0.68749994 + m_HorizontalBearingY: 26.999998 + m_HorizontalAdvance: 22.4375 + m_GlyphRect: + m_X: 6 + m_Y: 237 + m_Width: 21 + m_Height: 49 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 192 + m_Metrics: + m_Width: 11.874999 + m_Height: 3.4999998 + m_HorizontalBearingX: 0.62499994 + m_HorizontalBearingY: 14.687499 + m_HorizontalAdvance: 13.1875 + m_GlyphRect: + m_X: 457 + m_Y: 464 + m_Width: 12 + m_Height: 3 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 193 + m_Metrics: + m_Width: 21.374998 + m_Height: 3.4999998 + m_HorizontalBearingX: 0.62499994 + m_HorizontalBearingY: 14.624999 + m_HorizontalAdvance: 23.5625 + m_GlyphRect: + m_X: 197 + m_Y: 455 + m_Width: 21 + m_Height: 3 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 194 + m_Metrics: + m_Width: 3.0624998 + m_Height: 11.187499 + m_HorizontalBearingX: 0.87499994 + m_HorizontalBearingY: 33.624996 + m_HorizontalAdvance: 4.6875 + m_GlyphRect: + m_X: 479 + m_Y: 487 + m_Width: 3 + m_Height: 11 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 195 + m_Metrics: + m_Width: 3.0624998 + m_Height: 11.187499 + m_HorizontalBearingX: 0.87499994 + m_HorizontalBearingY: 33.624996 + m_HorizontalAdvance: 4.6875 + m_GlyphRect: + m_X: 223 + m_Y: 485 + m_Width: 3 + m_Height: 11 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 196 + m_Metrics: + m_Width: 3.0624998 + m_Height: 11.249999 + m_HorizontalBearingX: 1.0624999 + m_HorizontalBearingY: 9.812499 + m_HorizontalAdvance: 4.6875 + m_GlyphRect: + m_X: 238 + m_Y: 485 + m_Width: 3 + m_Height: 11 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 197 + m_Metrics: + m_Width: 9.062499 + m_Height: 14.312499 + m_HorizontalBearingX: 0.43749997 + m_HorizontalBearingY: 36.749996 + m_HorizontalAdvance: 10.8125 + m_GlyphRect: + m_X: 71 + m_Y: 492 + m_Width: 9 + m_Height: 14 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 198 + m_Metrics: + m_Width: 9.062499 + m_Height: 14.312499 + m_HorizontalBearingX: 0.43749997 + m_HorizontalBearingY: 36.749996 + m_HorizontalAdvance: 10.8125 + m_GlyphRect: + m_X: 92 + m_Y: 492 + m_Width: 9 + m_Height: 14 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 199 + m_Metrics: + m_Width: 9.124999 + m_Height: 14.312499 + m_HorizontalBearingX: 3.3124998 + m_HorizontalBearingY: 8.499999 + m_HorizontalAdvance: 15.75 + m_GlyphRect: + m_X: 113 + m_Y: 492 + m_Width: 9 + m_Height: 14 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 200 + m_Metrics: + m_Width: 15.062499 + m_Height: 29.812498 + m_HorizontalBearingX: 0.93749994 + m_HorizontalBearingY: 29.812498 + m_HorizontalAdvance: 17.25 + m_GlyphRect: + m_X: 306 + m_Y: 414 + m_Width: 15 + m_Height: 30 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 201 + m_Metrics: + m_Width: 22.062498 + m_Height: 34.312496 + m_HorizontalBearingX: -2.6249998 + m_HorizontalBearingY: 34.374996 + m_HorizontalAdvance: 17.25 + m_GlyphRect: + m_X: 240 + m_Y: 321 + m_Width: 22 + m_Height: 34 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 202 + m_Metrics: + m_Width: 8.062499 + m_Height: 8.749999 + m_HorizontalBearingX: 4.7499995 + m_HorizontalBearingY: 16.312498 + m_HorizontalAdvance: 15.75 + m_GlyphRect: + m_X: 134 + m_Y: 497 + m_Width: 8 + m_Height: 9 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 203 + m_Metrics: + m_Width: 24.874998 + m_Height: 8.687499 + m_HorizontalBearingX: 1.9999999 + m_HorizontalBearingY: 8.687499 + m_HorizontalAdvance: 28.1875 + m_GlyphRect: + m_X: 340 + m_Y: 391 + m_Width: 25 + m_Height: 9 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 204 + m_Metrics: + m_Width: 21.249998 + m_Height: 18.937498 + m_HorizontalBearingX: -0.12499999 + m_HorizontalBearingY: 18.999998 + m_HorizontalAdvance: 22.4375 + m_GlyphRect: + m_X: 415 + m_Y: 289 + m_Width: 21 + m_Height: 19 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 205 + m_Metrics: + m_Width: 17.124998 + m_Height: 21.249998 + m_HorizontalBearingX: 1.2499999 + m_HorizontalBearingY: 21.249998 + m_HorizontalAdvance: 18.5625 + m_GlyphRect: + m_X: 140 + m_Y: 451 + m_Width: 17 + m_Height: 21 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 206 + m_Metrics: + m_Width: 12.999999 + m_Height: 34.499996 + m_HorizontalBearingX: 0.43749997 + m_HorizontalBearingY: 34.499996 + m_HorizontalAdvance: 14.25 + m_GlyphRect: + m_X: 293 + m_Y: 50 + m_Width: 13 + m_Height: 34 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 207 + m_Metrics: + m_Width: 32.937496 + m_Height: 32.062496 + m_HorizontalBearingX: -0.062499996 + m_HorizontalBearingY: 31.999998 + m_HorizontalAdvance: 34.125 + m_GlyphRect: + m_X: 217 + m_Y: 7 + m_Width: 33 + m_Height: 32 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 208 + m_Metrics: + m_Width: 49.937496 + m_Height: 28.249998 + m_HorizontalBearingX: 0.12499999 + m_HorizontalBearingY: 28.249998 + m_HorizontalAdvance: 51.375 + m_GlyphRect: + m_X: 60 + m_Y: 7 + m_Width: 50 + m_Height: 28 + m_Scale: 1 + m_AtlasIndex: 0 + m_CharacterTable: + - m_ElementType: 1 + m_Unicode: 32 + m_GlyphIndex: 1 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 33 + m_GlyphIndex: 2 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 34 + m_GlyphIndex: 3 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 35 + m_GlyphIndex: 4 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 36 + m_GlyphIndex: 5 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 37 + m_GlyphIndex: 6 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 38 + m_GlyphIndex: 7 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 39 + m_GlyphIndex: 8 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 40 + m_GlyphIndex: 9 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 41 + m_GlyphIndex: 10 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 42 + m_GlyphIndex: 11 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 43 + m_GlyphIndex: 12 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 44 + m_GlyphIndex: 13 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 45 + m_GlyphIndex: 14 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 46 + m_GlyphIndex: 15 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 47 + m_GlyphIndex: 16 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 48 + m_GlyphIndex: 17 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 49 + m_GlyphIndex: 18 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 50 + m_GlyphIndex: 19 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 51 + m_GlyphIndex: 20 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 52 + m_GlyphIndex: 21 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 53 + m_GlyphIndex: 22 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 54 + m_GlyphIndex: 23 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 55 + m_GlyphIndex: 24 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 56 + m_GlyphIndex: 25 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 57 + m_GlyphIndex: 26 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 58 + m_GlyphIndex: 27 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 59 + m_GlyphIndex: 28 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 60 + m_GlyphIndex: 29 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 61 + m_GlyphIndex: 30 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 62 + m_GlyphIndex: 31 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 63 + m_GlyphIndex: 32 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 64 + m_GlyphIndex: 33 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 65 + m_GlyphIndex: 34 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 66 + m_GlyphIndex: 35 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 67 + m_GlyphIndex: 36 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 68 + m_GlyphIndex: 37 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 69 + m_GlyphIndex: 38 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 70 + m_GlyphIndex: 39 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 71 + m_GlyphIndex: 40 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 72 + m_GlyphIndex: 41 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 73 + m_GlyphIndex: 42 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 74 + m_GlyphIndex: 43 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 75 + m_GlyphIndex: 44 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 76 + m_GlyphIndex: 45 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 77 + m_GlyphIndex: 46 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 78 + m_GlyphIndex: 47 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 79 + m_GlyphIndex: 48 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 80 + m_GlyphIndex: 49 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 81 + m_GlyphIndex: 50 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 82 + m_GlyphIndex: 51 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 83 + m_GlyphIndex: 52 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 84 + m_GlyphIndex: 53 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 85 + m_GlyphIndex: 54 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 86 + m_GlyphIndex: 55 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 87 + m_GlyphIndex: 56 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 88 + m_GlyphIndex: 57 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 89 + m_GlyphIndex: 58 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 90 + m_GlyphIndex: 59 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 91 + m_GlyphIndex: 60 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 92 + m_GlyphIndex: 61 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 93 + m_GlyphIndex: 62 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 94 + m_GlyphIndex: 63 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 95 + m_GlyphIndex: 64 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 96 + m_GlyphIndex: 65 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 97 + m_GlyphIndex: 66 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 98 + m_GlyphIndex: 67 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 99 + m_GlyphIndex: 68 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 100 + m_GlyphIndex: 69 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 101 + m_GlyphIndex: 70 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 102 + m_GlyphIndex: 71 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 103 + m_GlyphIndex: 72 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 104 + m_GlyphIndex: 73 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 105 + m_GlyphIndex: 74 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 106 + m_GlyphIndex: 75 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 107 + m_GlyphIndex: 76 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 108 + m_GlyphIndex: 77 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 109 + m_GlyphIndex: 78 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 110 + m_GlyphIndex: 79 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 111 + m_GlyphIndex: 80 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 112 + m_GlyphIndex: 81 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 113 + m_GlyphIndex: 82 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 114 + m_GlyphIndex: 83 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 115 + m_GlyphIndex: 84 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 116 + m_GlyphIndex: 85 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 117 + m_GlyphIndex: 86 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 118 + m_GlyphIndex: 87 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 119 + m_GlyphIndex: 88 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 120 + m_GlyphIndex: 89 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 121 + m_GlyphIndex: 90 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 122 + m_GlyphIndex: 91 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 123 + m_GlyphIndex: 92 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 124 + m_GlyphIndex: 93 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 125 + m_GlyphIndex: 94 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 126 + m_GlyphIndex: 95 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 160 + m_GlyphIndex: 96 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 161 + m_GlyphIndex: 97 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 162 + m_GlyphIndex: 98 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 163 + m_GlyphIndex: 99 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 164 + m_GlyphIndex: 100 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 165 + m_GlyphIndex: 101 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 166 + m_GlyphIndex: 102 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 167 + m_GlyphIndex: 103 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 168 + m_GlyphIndex: 104 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 169 + m_GlyphIndex: 105 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 170 + m_GlyphIndex: 106 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 171 + m_GlyphIndex: 107 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 172 + m_GlyphIndex: 108 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 173 + m_GlyphIndex: 109 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 174 + m_GlyphIndex: 110 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 175 + m_GlyphIndex: 111 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 176 + m_GlyphIndex: 112 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 177 + m_GlyphIndex: 113 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 178 + m_GlyphIndex: 114 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 179 + m_GlyphIndex: 115 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 180 + m_GlyphIndex: 116 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 181 + m_GlyphIndex: 117 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 182 + m_GlyphIndex: 118 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 183 + m_GlyphIndex: 119 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 184 + m_GlyphIndex: 120 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 185 + m_GlyphIndex: 121 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 186 + m_GlyphIndex: 122 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 187 + m_GlyphIndex: 123 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 188 + m_GlyphIndex: 124 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 189 + m_GlyphIndex: 125 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 190 + m_GlyphIndex: 126 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 191 + m_GlyphIndex: 127 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 192 + m_GlyphIndex: 128 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 193 + m_GlyphIndex: 129 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 194 + m_GlyphIndex: 130 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 195 + m_GlyphIndex: 131 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 196 + m_GlyphIndex: 132 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 197 + m_GlyphIndex: 133 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 198 + m_GlyphIndex: 134 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 199 + m_GlyphIndex: 135 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 200 + m_GlyphIndex: 136 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 201 + m_GlyphIndex: 137 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 202 + m_GlyphIndex: 138 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 203 + m_GlyphIndex: 139 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 204 + m_GlyphIndex: 140 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 205 + m_GlyphIndex: 141 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 206 + m_GlyphIndex: 142 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 207 + m_GlyphIndex: 143 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 208 + m_GlyphIndex: 144 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 209 + m_GlyphIndex: 145 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 210 + m_GlyphIndex: 146 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 211 + m_GlyphIndex: 147 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 212 + m_GlyphIndex: 148 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 213 + m_GlyphIndex: 149 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 214 + m_GlyphIndex: 150 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 215 + m_GlyphIndex: 151 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 216 + m_GlyphIndex: 152 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 217 + m_GlyphIndex: 153 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 218 + m_GlyphIndex: 154 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 219 + m_GlyphIndex: 155 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 220 + m_GlyphIndex: 156 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 221 + m_GlyphIndex: 157 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 222 + m_GlyphIndex: 158 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 223 + m_GlyphIndex: 159 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 224 + m_GlyphIndex: 160 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 225 + m_GlyphIndex: 161 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 226 + m_GlyphIndex: 162 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 227 + m_GlyphIndex: 163 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 228 + m_GlyphIndex: 164 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 229 + m_GlyphIndex: 165 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 230 + m_GlyphIndex: 166 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 231 + m_GlyphIndex: 167 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 232 + m_GlyphIndex: 168 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 233 + m_GlyphIndex: 169 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 234 + m_GlyphIndex: 170 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 235 + m_GlyphIndex: 171 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 236 + m_GlyphIndex: 172 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 237 + m_GlyphIndex: 173 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 238 + m_GlyphIndex: 174 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 239 + m_GlyphIndex: 175 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 240 + m_GlyphIndex: 176 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 241 + m_GlyphIndex: 177 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 242 + m_GlyphIndex: 178 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 243 + m_GlyphIndex: 179 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 244 + m_GlyphIndex: 180 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 245 + m_GlyphIndex: 181 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 246 + m_GlyphIndex: 182 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 247 + m_GlyphIndex: 183 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 248 + m_GlyphIndex: 184 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 249 + m_GlyphIndex: 185 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 250 + m_GlyphIndex: 186 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 251 + m_GlyphIndex: 187 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 252 + m_GlyphIndex: 188 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 253 + m_GlyphIndex: 189 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 254 + m_GlyphIndex: 190 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 255 + m_GlyphIndex: 191 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 8211 + m_GlyphIndex: 192 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 8212 + m_GlyphIndex: 193 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 8216 + m_GlyphIndex: 194 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 8217 + m_GlyphIndex: 195 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 8218 + m_GlyphIndex: 196 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 8220 + m_GlyphIndex: 197 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 8221 + m_GlyphIndex: 198 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 8222 + m_GlyphIndex: 199 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 8224 + m_GlyphIndex: 200 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 8225 + m_GlyphIndex: 201 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 8226 + m_GlyphIndex: 202 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 8230 + m_GlyphIndex: 203 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 8249 + m_GlyphIndex: 204 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 8250 + m_GlyphIndex: 205 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 8260 + m_GlyphIndex: 206 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 8364 + m_GlyphIndex: 207 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 8482 + m_GlyphIndex: 208 + m_Scale: 1 + m_AtlasTextures: + - {fileID: 28938319353549906} + m_AtlasTextureIndex: 0 + m_UsedGlyphRects: [] + m_FreeGlyphRects: [] + m_fontInfo: + Name: Indie Flower + PointSize: 46 + Scale: 1 + CharacterCount: 208 + LineHeight: 67.125 + Baseline: 0 + Ascender: 44.625 + CapHeight: 31.124998 + Descender: -22.4375 + CenterLine: 0 + SuperscriptOffset: 44.625 + SubscriptOffset: -4.5820312 + SubSize: 0.5 + Underline: -4.5820312 + UnderlineThickness: 2.2910156 + strikethrough: 8.068182 + strikethroughThickness: 2.2910156 + TabWidth: 172.5 + Padding: 5 + AtlasWidth: 512 + AtlasHeight: 512 + atlas: {fileID: 28938319353549906} + m_AtlasWidth: 512 + m_AtlasHeight: 512 + m_AtlasPadding: 5 + m_AtlasRenderMode: 16426 + m_glyphInfoList: + - id: 32 + x: 6 + y: 517 + width: 17.25 + height: 67.0625 + xOffset: 0 + yOffset: 44.625 + xAdvance: 17.25 + scale: 1 + - id: 33 + x: 249 + y: 327 + width: 5.3124995 + height: 37.999996 + xOffset: 0.68749994 + yOffset: 37.937496 + xAdvance: 6.875 + scale: 1 + - id: 34 + x: 496 + y: 67 + width: 9.062499 + height: 14.312499 + xOffset: 0.43749997 + yOffset: 36.749996 + xAdvance: 10.8125 + scale: 1 + - id: 35 + x: 124 + y: 341 + width: 33.749996 + height: 22.687498 + xOffset: 0.37499997 + yOffset: 22.687498 + xAdvance: 35.375 + scale: 1 + - id: 36 + x: 6 + y: 61 + width: 25.687498 + height: 42.812496 + xOffset: 0.24999999 + yOffset: 42.749996 + xAdvance: 26.75 + scale: 1 + - id: 37 + x: 169 + y: 335 + width: 27.749998 + height: 28.124998 + xOffset: 0.37499997 + yOffset: 28.124998 + xAdvance: 29.3125 + scale: 1 + - id: 38 + x: 195 + y: 428 + width: 19.687498 + height: 32.124996 + xOffset: 0.43749997 + yOffset: 32.124996 + xAdvance: 21 + scale: 1 + - id: 39 + x: 480 + y: 37 + width: 3.0624998 + height: 11.187499 + xOffset: 0.87499994 + yOffset: 33.624996 + xAdvance: 4.6875 + scale: 1 + - id: 40 + x: 97 + y: 240 + width: 17.749998 + height: 28.562498 + xOffset: 0.87499994 + yOffset: 26.812498 + xAdvance: 19.4375 + scale: 1 + - id: 41 + x: 142 + y: 73 + width: 12.187499 + height: 29.874998 + xOffset: 0.37499997 + yOffset: 27.249998 + xAdvance: 13.3125 + scale: 1 + - id: 42 + x: 352 + y: 62 + width: 16.874998 + height: 17.749998 + xOffset: 0.74999994 + yOffset: 28.124998 + xAdvance: 18.9375 + scale: 1 + - id: 43 + x: 249 + y: 296 + width: 19.937498 + height: 19.562498 + xOffset: 0.31249997 + yOffset: 19.499998 + xAdvance: 21.1875 + scale: 1 + - id: 44 + x: 501 + y: 138 + width: 4.0624995 + height: 15.249999 + xOffset: 0.37499997 + yOffset: 6.5624995 + xAdvance: 6 + scale: 1 + - id: 45 + x: 230 + y: 54 + width: 14.874999 + height: 3.5624998 + xOffset: 0.62499994 + yOffset: 14.749999 + xAdvance: 17.25 + scale: 1 + - id: 46 + x: 256 + y: 49 + width: 6.1249995 + height: 8.687499 + xOffset: 1.9999999 + yOffset: 8.687499 + xAdvance: 9.375 + scale: 1 + - id: 47 + x: 142 + y: 114 + width: 12.999999 + height: 34.499996 + xOffset: 0.43749997 + yOffset: 34.499996 + xAdvance: 14.25 + scale: 1 + - id: 48 + x: 97 + y: 209 + width: 17.749998 + height: 19.937498 + xOffset: 0.81249994 + yOffset: 19.874998 + xAdvance: 19.8125 + scale: 1 + - id: 49 + x: 493 + y: 445 + width: 12.999999 + height: 27.187498 + xOffset: 0.62499994 + yOffset: 27.187498 + xAdvance: 14.625 + scale: 1 + - id: 50 + x: 169 + y: 257 + width: 21.249998 + height: 24.999998 + xOffset: 0.31249997 + yOffset: 24.999998 + xAdvance: 22.875 + scale: 1 + - id: 51 + x: 97 + y: 173 + width: 17.749998 + height: 24.249998 + xOffset: 0.81249994 + yOffset: 24.187498 + xAdvance: 19.8125 + scale: 1 + - id: 52 + x: 41 + y: 115 + width: 17.249998 + height: 27.749998 + xOffset: 0.81249994 + yOffset: 27.749998 + xAdvance: 18.9375 + scale: 1 + - id: 53 + x: 61 + y: 218 + width: 24.249998 + height: 30.312498 + xOffset: 0.74999994 + yOffset: 30.374998 + xAdvance: 26.25 + scale: 1 + - id: 54 + x: 94 + y: 330 + width: 18.124998 + height: 27.687498 + xOffset: 0.81249994 + yOffset: 27.687498 + xAdvance: 20.25 + scale: 1 + - id: 55 + x: 442 + y: 128 + width: 17.062498 + height: 24.687498 + xOffset: 1.0624999 + yOffset: 24.624998 + xAdvance: 18.9375 + scale: 1 + - id: 56 + x: 376 + y: 166 + width: 15.437499 + height: 26.499998 + xOffset: 0.56249994 + yOffset: 26.437498 + xAdvance: 17.25 + scale: 1 + - id: 57 + x: 493 + y: 406 + width: 12.937499 + height: 27.249998 + xOffset: 0.43749997 + yOffset: 27.624998 + xAdvance: 13.8125 + scale: 1 + - id: 58 + x: 494 + y: 13 + width: 2.6249998 + height: 12.187499 + xOffset: 0.81249994 + yOffset: 15.562499 + xAdvance: 3.9375 + scale: 1 + - id: 59 + x: 403 + y: 166 + width: 5.4374995 + height: 26.437498 + xOffset: -0.68749994 + yOffset: 18.062498 + xAdvance: 5.9375 + scale: 1 + - id: 60 + x: 169 + y: 227 + width: 21.249998 + height: 18.937498 + xOffset: -0.12499999 + yOffset: 18.999998 + xAdvance: 22.4375 + scale: 1 + - id: 61 + x: 307 + y: 145 + width: 21.999998 + height: 11.812499 + xOffset: 0.81249994 + yOffset: 17.812498 + xAdvance: 24.125 + scale: 1 + - id: 62 + x: 467 + y: 60 + width: 17.124998 + height: 21.249998 + xOffset: 1.2499999 + yOffset: 21.249998 + xAdvance: 18.5625 + scale: 1 + - id: 63 + x: 38 + y: 249 + width: 11.312499 + height: 39.687496 + xOffset: 0.31249997 + yOffset: 39.749996 + xAdvance: 12.5625 + scale: 1 + - id: 64 + x: 6 + y: 417 + width: 35.374996 + height: 41.187496 + xOffset: 0.81249994 + yOffset: 41.062496 + xAdvance: 37.5 + scale: 1 + - id: 65 + x: 70 + y: 116 + width: 23.749998 + height: 35.124996 + xOffset: 0.81249994 + yOffset: 34.999996 + xAdvance: 25.875 + scale: 1 + - id: 66 + x: 261 + y: 474 + width: 32.374996 + height: 31.937498 + xOffset: 0.87499994 + yOffset: 31.937498 + xAdvance: 34.125 + scale: 1 + - id: 67 + x: 241 + y: 69 + width: 21.562498 + height: 29.874998 + xOffset: 0.81249994 + yOffset: 29.812498 + xAdvance: 23.75 + scale: 1 + - id: 68 + x: 305 + y: 476 + width: 31.937498 + height: 29.437498 + xOffset: 0.87499994 + yOffset: 28.937498 + xAdvance: 34.125 + scale: 1 + - id: 69 + x: 382 + y: 220 + width: 21.124998 + height: 28.562498 + xOffset: 0.81249994 + yOffset: 28.499998 + xAdvance: 24.125 + scale: 1 + - id: 70 + x: 208 + y: 338 + width: 29.812498 + height: 26.999998 + xOffset: -1.6249999 + yOffset: 27.624998 + xAdvance: 23.6875 + scale: 1 + - id: 71 + x: 166 + y: 188 + width: 24.312498 + height: 27.312498 + xOffset: 1.4374999 + yOffset: 24.187498 + xAdvance: 26.25 + scale: 1 + - id: 72 + x: 313 + y: 296 + width: 22.124998 + height: 31.187498 + xOffset: 0.68749994 + yOffset: 31.124998 + xAdvance: 24.125 + scale: 1 + - id: 73 + x: 96 + y: 32 + width: 6.2499995 + height: 25.937498 + xOffset: 0.62499994 + yOffset: 25.874998 + xAdvance: 7.75 + scale: 1 + - id: 74 + x: 299 + y: 339 + width: 18.437498 + height: 32.562496 + xOffset: 0.93749994 + yOffset: 32.499996 + xAdvance: 20.1875 + scale: 1 + - id: 75 + x: 447 + y: 235 + width: 19.562498 + height: 27.124998 + xOffset: 0.81249994 + yOffset: 26.999998 + xAdvance: 21.5625 + scale: 1 + - id: 76 + x: 380 + y: 64 + width: 14.312499 + height: 24.937498 + xOffset: 0.81249994 + yOffset: 24.937498 + xAdvance: 15.9375 + scale: 1 + - id: 77 + x: 348 + y: 220 + width: 22.374998 + height: 28.249998 + xOffset: 0.81249994 + yOffset: 28.249998 + xAdvance: 24.5625 + scale: 1 + - id: 78 + x: 166 + y: 152 + width: 25.499998 + height: 24.687498 + xOffset: 1.2499999 + yOffset: 24.624998 + xAdvance: 28.0625 + scale: 1 + - id: 79 + x: 455 + y: 398 + width: 25.999998 + height: 22.374998 + xOffset: 0.74999994 + yOffset: 22.312498 + xAdvance: 28.0625 + scale: 1 + - id: 80 + x: 166 + y: 113 + width: 27.437498 + height: 27.624998 + xOffset: 0.87499994 + yOffset: 27.624998 + xAdvance: 28.875 + scale: 1 + - id: 81 + x: 433 + y: 476 + width: 28.937498 + height: 29.874998 + xOffset: 1.1249999 + yOffset: 24.749998 + xAdvance: 29.5625 + scale: 1 + - id: 82 + x: 162 + y: 293 + width: 26.124998 + height: 30.812498 + xOffset: -0.49999997 + yOffset: 28.749998 + xAdvance: 26.625 + scale: 1 + - id: 83 + x: 166 + y: 73 + width: 26.999998 + height: 28.062498 + xOffset: 0.87499994 + yOffset: 27.687498 + xAdvance: 28.875 + scale: 1 + - id: 84 + x: 391 + y: 477 + width: 30.499998 + height: 28.187498 + xOffset: 0.12499999 + yOffset: 28.187498 + xAdvance: 26.75 + scale: 1 + - id: 85 + x: 340 + y: 167 + width: 24.437498 + height: 25.062498 + xOffset: 1.2499999 + yOffset: 25.062498 + xAdvance: 26.25 + scale: 1 + - id: 86 + x: 306 + y: 32 + width: 17.374998 + height: 24.062498 + xOffset: 0.81249994 + yOffset: 23.999998 + xAdvance: 19.4375 + scale: 1 + - id: 87 + x: 126 + y: 259 + width: 31.124998 + height: 22.937498 + xOffset: 0.43749997 + yOffset: 22.937498 + xAdvance: 32.375 + scale: 1 + - id: 88 + x: 478 + y: 276 + width: 23.312498 + height: 26.999998 + xOffset: 0.87499994 + yOffset: 24.187498 + xAdvance: 24.5625 + scale: 1 + - id: 89 + x: 113 + y: 74 + width: 17.062498 + height: 30.249998 + xOffset: 0.62499994 + yOffset: 29.562498 + xAdvance: 18.5625 + scale: 1 + - id: 90 + x: 205 + y: 112 + width: 24.749998 + height: 28.562498 + xOffset: 0.74999994 + yOffset: 28.499998 + xAdvance: 26.25 + scale: 1 + - id: 91 + x: 126 + y: 293 + width: 24.124998 + height: 36.687496 + xOffset: 0.87499994 + yOffset: 32.437496 + xAdvance: 21.9375 + scale: 1 + - id: 92 + x: 471 + y: 128 + width: 18.624998 + height: 25.062498 + xOffset: 0.43749997 + yOffset: 25.062498 + xAdvance: 19.8125 + scale: 1 + - id: 93 + x: 94 + y: 369 + width: 18.624998 + height: 42.499996 + xOffset: 0.37499997 + yOffset: 38.187496 + xAdvance: 19.8125 + scale: 1 + - id: 94 + x: 352 + y: 91 + width: 12.499999 + height: 9.437499 + xOffset: 2.1874998 + yOffset: 33.687496 + xAdvance: 17.25 + scale: 1 + - id: 95 + x: 348 + y: 204 + width: 28.124998 + height: 4.7499995 + xOffset: 1.2499999 + yOffset: 4.8124995 + xAdvance: 30.1875 + scale: 1 + - id: 96 + x: 154 + y: 6 + width: 6.2499995 + height: 5.5624995 + xOffset: 0.81249994 + yOffset: 25.624998 + xAdvance: 7.9375 + scale: 1 + - id: 97 + x: 376 + y: 132 + width: 21.124998 + height: 22.937498 + xOffset: 0.81249994 + yOffset: 22.999998 + xAdvance: 23.25 + scale: 1 + - id: 98 + x: 280 + y: 296 + width: 21.562498 + height: 29.374998 + xOffset: 0.43749997 + yOffset: 29.312498 + xAdvance: 22.875 + scale: 1 + - id: 99 + x: 440 + y: 96 + width: 18.624998 + height: 20.374998 + xOffset: 0.81249994 + yOffset: 20.312498 + xAdvance: 20.6875 + scale: 1 + - id: 100 + x: 226 + y: 428 + width: 22.187498 + height: 33.499996 + xOffset: 0.81249994 + yOffset: 33.499996 + xAdvance: 24.125 + scale: 1 + - id: 101 + x: 480 + y: 165 + width: 21.562498 + height: 23.812498 + xOffset: 0.81249994 + yOffset: 23.812498 + xAdvance: 23.75 + scale: 1 + - id: 102 + x: 329 + y: 346 + width: 21.312498 + height: 32.437496 + xOffset: -0.43749997 + yOffset: 32.437496 + xAdvance: 17.3125 + scale: 1 + - id: 103 + x: 53 + y: 417 + width: 23.062498 + height: 41.374996 + xOffset: -6.2499995 + yOffset: 18.999998 + xAdvance: 16.875 + scale: 1 + - id: 104 + x: 463 + y: 432 + width: 18.749998 + height: 32.562496 + xOffset: -0.68749994 + yOffset: 32.437496 + xAdvance: 19.6875 + scale: 1 + - id: 105 + x: 378 + y: 23 + width: 6.6249995 + height: 27.749998 + xOffset: 0.49999997 + yOffset: 27.749998 + xAdvance: 8.0625 + scale: 1 + - id: 106 + x: 38 + y: 358 + width: 15.374999 + height: 47.749996 + xOffset: -5.0624995 + yOffset: 26.999998 + xAdvance: 9.25 + scale: 1 + - id: 107 + x: 420 + y: 164 + width: 18.249998 + height: 28.562498 + xOffset: -0.12499999 + yOffset: 28.562498 + xAdvance: 18.5625 + scale: 1 + - id: 108 + x: 479 + y: 318 + width: 3.1874998 + height: 26.187498 + xOffset: 1.1249999 + yOffset: 26.312498 + xAdvance: 5.5 + scale: 1 + - id: 109 + x: 126 + y: 228 + width: 31.999998 + height: 19.499998 + xOffset: 1.2499999 + yOffset: 19.499998 + xAdvance: 34.5 + scale: 1 + - id: 110 + x: 437 + y: 64 + width: 18.999998 + height: 20.562498 + xOffset: 1.2499999 + yOffset: 20.374998 + xAdvance: 21.1875 + scale: 1 + - id: 111 + x: 448 + y: 204 + width: 20.249998 + height: 19.124998 + xOffset: 0.81249994 + yOffset: 19.062498 + xAdvance: 22.4375 + scale: 1 + - id: 112 + x: 314 + y: 252 + width: 22.124998 + height: 32.374996 + xOffset: 0.81249994 + yOffset: 15.999999 + xAdvance: 23.9375 + scale: 1 + - id: 113 + x: 41 + y: 154 + width: 16.374998 + height: 37.624996 + xOffset: 0.81249994 + yOffset: 22.937498 + xAdvance: 18.9375 + scale: 1 + - id: 114 + x: 114 + y: 42 + width: 14.812499 + height: 20.687498 + xOffset: 0.74999994 + yOffset: 20.749998 + xAdvance: 15.9375 + scale: 1 + - id: 115 + x: 409 + y: 132 + width: 21.624998 + height: 20.999998 + xOffset: 0.74999994 + yOffset: 20.999998 + xAdvance: 23.6875 + scale: 1 + - id: 116 + x: 305 + y: 209 + width: 14.437499 + height: 29.249998 + xOffset: 0.43749997 + yOffset: 28.624998 + xAdvance: 15.125 + scale: 1 + - id: 117 + x: 274 + y: 125 + width: 21.999998 + height: 21.749998 + xOffset: 0.37499997 + yOffset: 21.999998 + xAdvance: 23.0625 + scale: 1 + - id: 118 + x: 169 + y: 44 + width: 16.874998 + height: 17.374998 + xOffset: 0.43749997 + yOffset: 17.312498 + xAdvance: 17.9375 + scale: 1 + - id: 119 + x: 126 + y: 197 + width: 28.687498 + height: 19.499998 + xOffset: 0.37499997 + yOffset: 19.499998 + xAdvance: 30.1875 + scale: 1 + - id: 120 + x: 376 + y: 100 + width: 20.437498 + height: 20.249998 + xOffset: -0.18749999 + yOffset: 17.937498 + xAdvance: 20.625 + scale: 1 + - id: 121 + x: 39 + y: 6 + width: 20.937498 + height: 43.312496 + xOffset: 0.68749994 + yOffset: 20.937498 + xAdvance: 22.4375 + scale: 1 + - id: 122 + x: 470 + y: 93 + width: 18.999998 + height: 23.812498 + xOffset: 0.81249994 + yOffset: 23.812498 + xAdvance: 21.1875 + scale: 1 + - id: 123 + x: 65 + y: 360 + width: 17.374998 + height: 45.749996 + xOffset: 0.81249994 + yOffset: 41.062496 + xAdvance: 18.125 + scale: 1 + - id: 124 + x: 331 + y: 211 + width: 5.1249995 + height: 29.812498 + xOffset: 0.81249994 + yOffset: 29.812498 + xAdvance: 6.875 + scale: 1 + - id: 125 + x: 6 + y: 287 + width: 19.062498 + height: 53.812496 + xOffset: 0 + yOffset: 43.312496 + xAdvance: 20.25 + scale: 1 + - id: 126 + x: 69 + y: 163 + width: 16.249998 + height: 6.6874995 + xOffset: 0.87499994 + yOffset: 24.937498 + xAdvance: 18.5 + scale: 1 + - id: 160 + x: 6 + y: 517 + width: 0 + height: 0 + xOffset: 0 + yOffset: 0 + xAdvance: 17.25 + scale: 1 + - id: 161 + x: 200 + y: 293 + width: 5.1249995 + height: 30.874998 + xOffset: 0.87499994 + yOffset: 30.499998 + xAdvance: 6.875 + scale: 1 + - id: 162 + x: 450 + y: 165 + width: 18.812498 + height: 27.437498 + xOffset: 0.81249994 + yOffset: 24.749998 + xAdvance: 20.6875 + scale: 1 + - id: 163 + x: 172 + y: 472 + width: 33.187496 + height: 33.312496 + xOffset: 0.43749997 + yOffset: 33.249996 + xAdvance: 34.875 + scale: 1 + - id: 164 + x: 340 + y: 132 + width: 24.999998 + height: 23.374998 + xOffset: 1.3124999 + yOffset: 24.437498 + xAdvance: 28.4375 + scale: 1 + - id: 165 + x: 275 + y: 203 + width: 18.624998 + height: 34.687496 + xOffset: 0.18749999 + yOffset: 34.437496 + xAdvance: 17.9375 + scale: 1 + - id: 166 + x: 335 + y: 31 + width: 2.8749998 + height: 26.999998 + xOffset: 0.99999994 + yOffset: 26.374998 + xAdvance: 5.375 + scale: 1 + - id: 167 + x: 395 + y: 354 + width: 21.749998 + height: 30.499998 + xOffset: 1.4999999 + yOffset: 30.562498 + xAdvance: 23.6875 + scale: 1 + - id: 168 + x: 388 + y: 204 + width: 11.812499 + height: 4.4374995 + xOffset: 3.0624998 + yOffset: 24.187498 + xAdvance: 18.3125 + scale: 1 + - id: 169 + x: 126 + y: 160 + width: 28.687498 + height: 25.999998 + xOffset: 1.4374999 + yOffset: 25.874998 + xAdvance: 30.75 + scale: 1 + - id: 170 + x: 415 + y: 11 + width: 10.312499 + height: 12.437499 + xOffset: 0.74999994 + yOffset: 22.937498 + xAdvance: 12.25 + scale: 1 + - id: 171 + x: 473 + y: 484 + width: 32.187496 + height: 21.937498 + xOffset: -0.12499999 + yOffset: 21.937498 + xAdvance: 34.75 + scale: 1 + - id: 172 + x: 197 + y: 36 + width: 14.312499 + height: 6.9999995 + xOffset: 1.4999999 + yOffset: 18.499998 + xAdvance: 17 + scale: 1 + - id: 173 + x: 223 + y: 39 + width: 14.874999 + height: 3.5624998 + xOffset: 0.62499994 + yOffset: 14.749999 + xAdvance: 17.25 + scale: 1 + - id: 174 + x: 376 + y: 396 + width: 28.687498 + height: 25.999998 + xOffset: 1.5624999 + yOffset: 26.687498 + xAdvance: 32.5625 + scale: 1 + - id: 175 + x: 274 + y: 41 + width: 11.874999 + height: 3.4999998 + xOffset: 1.4999999 + yOffset: 24.874998 + xAdvance: 13.1875 + scale: 1 + - id: 176 + x: 437 + y: 16 + width: 9.624999 + height: 12.749999 + xOffset: 0.31249997 + yOffset: 25.499998 + xAdvance: 11.75 + scale: 1 + - id: 177 + x: 406 + y: 64 + width: 19.937498 + height: 20.749998 + xOffset: 0.62499994 + yOffset: 22.124998 + xAdvance: 21.1875 + scale: 1 + - id: 178 + x: 494 + y: 341 + width: 11.499999 + height: 15.062499 + xOffset: 0.24999999 + yOffset: 24.999998 + xAdvance: 13.6875 + scale: 1 + - id: 179 + x: 496 + y: 41 + width: 9.374999 + height: 14.874999 + xOffset: -0.24999999 + yOffset: 27.124998 + xAdvance: 9.375 + scale: 1 + - id: 180 + x: 396 + y: 6 + width: 7.1874995 + height: 7.1249995 + xOffset: 0.37499997 + yOffset: 25.249998 + xAdvance: 8.3125 + scale: 1 + - id: 181 + x: 307 + y: 109 + width: 21.999998 + height: 24.812498 + xOffset: 0.37499997 + yOffset: 21.999998 + xAdvance: 23.0625 + scale: 1 + - id: 182 + x: 69 + y: 181 + width: 16.562498 + height: 25.062498 + xOffset: 0.87499994 + yOffset: 23.562498 + xAdvance: 19 + scale: 1 + - id: 183 + x: 500 + y: 111 + width: 5.6249995 + height: 5.3124995 + xOffset: 2.1874998 + yOffset: 13.437499 + xAdvance: 9.8125 + scale: 1 + - id: 184 + x: 494 + y: 314 + width: 11.999999 + height: 15.312499 + xOffset: 6.8749995 + yOffset: 1.2499999 + xAdvance: 20.5 + scale: 1 + - id: 185 + x: 414 + y: 35 + width: 8.874999 + height: 17.999998 + xOffset: -0.68749994 + yOffset: 28.062498 + xAdvance: 9.0625 + scale: 1 + - id: 186 + x: 458 + y: 21 + width: 9.624999 + height: 12.749999 + xOffset: 0.31249997 + yOffset: 25.499998 + xAdvance: 11.75 + scale: 1 + - id: 187 + x: 416 + y: 398 + width: 27.374998 + height: 22.374998 + xOffset: 1.2499999 + yOffset: 22.312498 + xAdvance: 30.3125 + scale: 1 + - id: 188 + x: 76 + y: 69 + width: 25.624998 + height: 35.187496 + xOffset: 0.74999994 + yOffset: 34.187496 + xAdvance: 28.8125 + scale: 1 + - id: 189 + x: 202 + y: 246 + width: 24.249998 + height: 35.062496 + xOffset: 0.24999999 + yOffset: 32.937496 + xAdvance: 26.0625 + scale: 1 + - id: 190 + x: 202 + y: 199 + width: 24.374998 + height: 35.437496 + xOffset: 0.49999997 + yOffset: 31.999998 + xAdvance: 26.0625 + scale: 1 + - id: 191 + x: 290 + y: 250 + width: 12.062499 + height: 34.249996 + xOffset: 1.0624999 + yOffset: 34.374996 + xAdvance: 12.5625 + scale: 1 + - id: 192 + x: 88 + y: 423 + width: 23.749998 + height: 42.874996 + xOffset: 0.81249994 + yOffset: 42.687496 + xAdvance: 25.875 + scale: 1 + - id: 193 + x: 6 + y: 115 + width: 23.749998 + height: 43.124996 + xOffset: 0.81249994 + yOffset: 42.937496 + xAdvance: 25.875 + scale: 1 + - id: 194 + x: 6 + y: 170 + width: 23.749998 + height: 44.812496 + xOffset: 0.81249994 + yOffset: 44.687496 + xAdvance: 25.875 + scale: 1 + - id: 195 + x: 124 + y: 375 + width: 23.749998 + height: 41.749996 + xOffset: 0.81249994 + yOffset: 41.562496 + xAdvance: 25.875 + scale: 1 + - id: 196 + x: 159 + y: 375 + width: 23.749998 + height: 41.812496 + xOffset: 0.81249994 + yOffset: 41.624996 + xAdvance: 25.875 + scale: 1 + - id: 197 + x: 123 + y: 428 + width: 23.749998 + height: 42.187496 + xOffset: 0.81249994 + yOffset: 42.062496 + xAdvance: 25.875 + scale: 1 + - id: 198 + x: 6 + y: 470 + width: 42.312496 + height: 35.124996 + xOffset: 0.81249994 + yOffset: 34.999996 + xAdvance: 44.1875 + scale: 1 + - id: 199 + x: 6 + y: 6 + width: 21.562498 + height: 43.937496 + xOffset: 0.81249994 + yOffset: 29.812498 + xAdvance: 23.75 + scale: 1 + - id: 200 + x: 61 + y: 310 + width: 21.124998 + height: 36.624996 + xOffset: 0.81249994 + yOffset: 36.562496 + xAdvance: 24.125 + scale: 1 + - id: 201 + x: 43 + y: 67 + width: 21.124998 + height: 36.312496 + xOffset: 0.81249994 + yOffset: 36.249996 + xAdvance: 24.125 + scale: 1 + - id: 202 + x: 194 + y: 376 + width: 21.124998 + height: 40.624996 + xOffset: 0.81249994 + yOffset: 40.624996 + xAdvance: 24.125 + scale: 1 + - id: 203 + x: 238 + y: 249 + width: 21.124998 + height: 35.374996 + xOffset: 0.81249994 + yOffset: 35.312496 + xAdvance: 24.125 + scale: 1 + - id: 204 + x: 271 + y: 249 + width: 7.8749995 + height: 35.312496 + xOffset: -0.99999994 + yOffset: 35.249996 + xAdvance: 7.75 + scale: 1 + - id: 205 + x: 41 + y: 203 + width: 8.062499 + height: 34.062496 + xOffset: -1.1249999 + yOffset: 33.999996 + xAdvance: 7.75 + scale: 1 + - id: 206 + x: 37 + y: 300 + width: 12.499999 + height: 40.624996 + xOffset: -2.3124998 + yOffset: 40.624996 + xAdvance: 7.75 + scale: 1 + - id: 207 + x: 353 + y: 390 + width: 11.812499 + height: 31.499998 + xOffset: -4.8124995 + yOffset: 31.437498 + xAdvance: 7.75 + scale: 1 + - id: 208 + x: 348 + y: 476 + width: 31.937498 + height: 29.437498 + xOffset: 0.87499994 + yOffset: 28.937498 + xAdvance: 34.125 + scale: 1 + - id: 209 + x: 204 + y: 69 + width: 25.499998 + height: 31.937498 + xOffset: 1.2499999 + yOffset: 31.874998 + xAdvance: 28.0625 + scale: 1 + - id: 210 + x: 158 + y: 428 + width: 25.999998 + height: 32.624996 + xOffset: 0.74999994 + yOffset: 32.562496 + xAdvance: 28.0625 + scale: 1 + - id: 211 + x: 105 + y: 116 + width: 25.999998 + height: 32.249996 + xOffset: 0.74999994 + yOffset: 32.187496 + xAdvance: 28.0625 + scale: 1 + - id: 212 + x: 203 + y: 152 + width: 25.999998 + height: 35.187496 + xOffset: 0.74999994 + yOffset: 35.187496 + xAdvance: 28.0625 + scale: 1 + - id: 213 + x: 354 + y: 434 + width: 25.999998 + height: 30.187498 + xOffset: 0.74999994 + yOffset: 30.124998 + xAdvance: 28.0625 + scale: 1 + - id: 214 + x: 317 + y: 433 + width: 25.999998 + height: 31.187498 + xOffset: 0.74999994 + yOffset: 31.124998 + xAdvance: 28.0625 + scale: 1 + - id: 215 + x: 71 + y: 32 + width: 13.624999 + height: 12.249999 + xOffset: 2.1874998 + yOffset: 14.999999 + xAdvance: 20.625 + scale: 1 + - id: 216 + x: 238 + y: 203 + width: 25.999998 + height: 34.499996 + xOffset: 0.74999994 + yOffset: 29.874998 + xAdvance: 28.0625 + scale: 1 + - id: 217 + x: 391 + y: 433 + width: 24.437498 + height: 32.624996 + xOffset: 1.2499999 + yOffset: 32.562496 + xAdvance: 26.25 + scale: 1 + - id: 218 + x: 427 + y: 432 + width: 24.437498 + height: 32.249996 + xOffset: 1.2499999 + yOffset: 32.187496 + xAdvance: 26.25 + scale: 1 + - id: 219 + x: 227 + y: 376 + width: 24.437498 + height: 40.624996 + xOffset: 1.2499999 + yOffset: 40.624996 + xAdvance: 26.25 + scale: 1 + - id: 220 + x: 317 + y: 390 + width: 24.437498 + height: 31.187498 + xOffset: 1.2499999 + yOffset: 31.124998 + xAdvance: 26.25 + scale: 1 + - id: 221 + x: 97 + y: 280 + width: 17.062498 + height: 38.812496 + xOffset: 0.62499994 + yOffset: 38.124996 + xAdvance: 18.5625 + scale: 1 + - id: 222 + x: 241 + y: 110 + width: 19.749998 + height: 35.249996 + xOffset: 2.1874998 + yOffset: 28.062498 + xAdvance: 22.875 + scale: 1 + - id: 223 + x: 61 + y: 260 + width: 24.874998 + height: 38.374996 + xOffset: 1.4374999 + yOffset: 32.312496 + xAdvance: 27.1875 + scale: 1 + - id: 224 + x: 307 + y: 168 + width: 21.124998 + height: 29.874998 + xOffset: 0.81249994 + yOffset: 29.874998 + xAdvance: 23.25 + scale: 1 + - id: 225 + x: 347 + y: 303 + width: 21.124998 + height: 31.812498 + xOffset: 0.81249994 + yOffset: 31.812498 + xAdvance: 23.25 + scale: 1 + - id: 226 + x: 274 + y: 158 + width: 21.124998 + height: 33.624996 + xOffset: 0.81249994 + yOffset: 33.687496 + xAdvance: 23.25 + scale: 1 + - id: 227 + x: 348 + y: 260 + width: 21.124998 + height: 31.874998 + xOffset: 0.81249994 + yOffset: 31.874998 + xAdvance: 23.25 + scale: 1 + - id: 228 + x: 413 + y: 313 + width: 21.124998 + height: 29.562498 + xOffset: 0.81249994 + yOffset: 29.562498 + xAdvance: 23.25 + scale: 1 + - id: 229 + x: 446 + y: 315 + width: 21.124998 + height: 29.999998 + xOffset: 0.81249994 + yOffset: 30.062498 + xAdvance: 23.25 + scale: 1 + - id: 230 + x: 121 + y: 482 + width: 39.187496 + height: 23.999998 + xOffset: 0.81249994 + yOffset: 22.999998 + xAdvance: 40.5625 + scale: 1 + - id: 231 + x: 263 + y: 382 + width: 18.624998 + height: 34.062496 + xOffset: 0.81249994 + yOffset: 20.312498 + xAdvance: 20.6875 + scale: 1 + - id: 232 + x: 428 + y: 356 + width: 21.562498 + height: 30.687498 + xOffset: 0.81249994 + yOffset: 30.687498 + xAdvance: 23.75 + scale: 1 + - id: 233 + x: 362 + y: 346 + width: 21.562498 + height: 32.312496 + xOffset: 0.81249994 + yOffset: 32.312496 + xAdvance: 23.75 + scale: 1 + - id: 234 + x: 260 + y: 428 + width: 21.562498 + height: 33.624996 + xOffset: 0.81249994 + yOffset: 33.687496 + xAdvance: 23.75 + scale: 1 + - id: 235 + x: 414 + y: 273 + width: 21.562498 + height: 28.999998 + xOffset: 0.81249994 + yOffset: 28.999998 + xAdvance: 23.75 + scale: 1 + - id: 236 + x: 396 + y: 25 + width: 6.5624995 + height: 27.499998 + xOffset: 0.62499994 + yOffset: 27.499998 + xAdvance: 8.0625 + scale: 1 + - id: 237 + x: 333 + y: 69 + width: 7.6874995 + height: 28.812498 + xOffset: -0.49999997 + yOffset: 28.749998 + xAdvance: 8.0625 + scale: 1 + - id: 238 + x: 293 + y: 383 + width: 12.499999 + height: 33.687496 + xOffset: -2.2499998 + yOffset: 33.687496 + xAdvance: 8.0625 + scale: 1 + - id: 239 + x: 494 + y: 368 + width: 11.812499 + height: 26.937498 + xOffset: -2.2499998 + yOffset: 26.874998 + xAdvance: 8.0625 + scale: 1 + - id: 240 + x: 349 + y: 26 + width: 17.562498 + height: 24.937498 + xOffset: 1.0624999 + yOffset: 24.374998 + xAdvance: 18.75 + scale: 1 + - id: 241 + x: 447 + y: 274 + width: 19.062498 + height: 29.062498 + xOffset: 1.2499999 + yOffset: 28.874998 + xAdvance: 21.1875 + scale: 1 + - id: 242 + x: 480 + y: 200 + width: 20.249998 + height: 25.687498 + xOffset: 0.81249994 + yOffset: 25.624998 + xAdvance: 22.4375 + scale: 1 + - id: 243 + x: 415 + y: 234 + width: 20.249998 + height: 27.937498 + xOffset: 0.81249994 + yOffset: 27.874998 + xAdvance: 22.4375 + scale: 1 + - id: 244 + x: 217 + y: 296 + width: 20.249998 + height: 30.374998 + xOffset: 0.81249994 + yOffset: 30.374998 + xAdvance: 22.4375 + scale: 1 + - id: 245 + x: 274 + y: 89 + width: 20.249998 + height: 24.999998 + xOffset: 0.81249994 + yOffset: 24.937498 + xAdvance: 22.4375 + scale: 1 + - id: 246 + x: 408 + y: 96 + width: 20.249998 + height: 24.249998 + xOffset: 0.81249994 + yOffset: 24.187498 + xAdvance: 22.4375 + scale: 1 + - id: 247 + x: 434 + y: 40 + width: 11.874999 + height: 12.187499 + xOffset: 1.6249999 + yOffset: 15.562499 + xAdvance: 15.4375 + scale: 1 + - id: 248 + x: 274 + y: 56 + width: 20.312498 + height: 21.249998 + xOffset: 0.74999994 + yOffset: 21.249998 + xAdvance: 22.4375 + scale: 1 + - id: 249 + x: 461 + y: 356 + width: 21.999998 + height: 30.937498 + xOffset: 0.37499997 + yOffset: 31.124998 + xAdvance: 23.0625 + scale: 1 + - id: 250 + x: 380 + y: 303 + width: 21.999998 + height: 31.062498 + xOffset: 0.37499997 + yOffset: 31.249998 + xAdvance: 23.0625 + scale: 1 + - id: 251 + x: 266 + y: 337 + width: 21.999998 + height: 33.437496 + xOffset: 0.37499997 + yOffset: 33.687496 + xAdvance: 23.0625 + scale: 1 + - id: 252 + x: 478 + y: 237 + width: 21.999998 + height: 27.874998 + xOffset: 0.37499997 + yOffset: 28.062498 + xAdvance: 23.0625 + scale: 1 + - id: 253 + x: 6 + y: 352 + width: 20.937498 + height: 53.312496 + xOffset: 0.68749994 + yOffset: 30.874998 + xAdvance: 22.4375 + scale: 1 + - id: 254 + x: 381 + y: 260 + width: 21.812498 + height: 31.999998 + xOffset: 1.1874999 + yOffset: 23.437498 + xAdvance: 23.9375 + scale: 1 + - id: 255 + x: 6 + y: 226 + width: 20.937498 + height: 49.437496 + xOffset: 0.68749994 + yOffset: 26.999998 + xAdvance: 22.4375 + scale: 1 + - id: 8211 + x: 457 + y: 45 + width: 11.874999 + height: 3.4999998 + xOffset: 0.62499994 + yOffset: 14.687499 + xAdvance: 13.1875 + scale: 1 + - id: 8212 + x: 197 + y: 54 + width: 21.374998 + height: 3.4999998 + xOffset: 0.62499994 + yOffset: 14.624999 + xAdvance: 23.5625 + scale: 1 + - id: 8216 + x: 479 + y: 14 + width: 3.0624998 + height: 11.187499 + xOffset: 0.87499994 + yOffset: 33.624996 + xAdvance: 4.6875 + scale: 1 + - id: 8217 + x: 223 + y: 16 + width: 3.0624998 + height: 11.187499 + xOffset: 0.87499994 + yOffset: 33.624996 + xAdvance: 4.6875 + scale: 1 + - id: 8218 + x: 238 + y: 16 + width: 3.0624998 + height: 11.249999 + xOffset: 1.0624999 + yOffset: 9.812499 + xAdvance: 4.6875 + scale: 1 + - id: 8220 + x: 71 + y: 6 + width: 9.062499 + height: 14.312499 + xOffset: 0.43749997 + yOffset: 36.749996 + xAdvance: 10.8125 + scale: 1 + - id: 8221 + x: 92 + y: 6 + width: 9.062499 + height: 14.312499 + xOffset: 0.43749997 + yOffset: 36.749996 + xAdvance: 10.8125 + scale: 1 + - id: 8222 + x: 113 + y: 6 + width: 9.124999 + height: 14.312499 + xOffset: 3.3124998 + yOffset: 8.499999 + xAdvance: 15.75 + scale: 1 + - id: 8224 + x: 306 + y: 68 + width: 15.062499 + height: 29.812498 + xOffset: 0.93749994 + yOffset: 29.812498 + xAdvance: 17.25 + scale: 1 + - id: 8225 + x: 240 + y: 157 + width: 22.062498 + height: 34.312496 + xOffset: -2.6249998 + yOffset: 34.374996 + xAdvance: 17.25 + scale: 1 + - id: 8226 + x: 134 + y: 6 + width: 8.062499 + height: 8.749999 + xOffset: 4.7499995 + yOffset: 16.312498 + xAdvance: 15.75 + scale: 1 + - id: 8230 + x: 340 + y: 112 + width: 24.874998 + height: 8.687499 + xOffset: 1.9999999 + yOffset: 8.687499 + xAdvance: 28.1875 + scale: 1 + - id: 8249 + x: 415 + y: 204 + width: 21.249998 + height: 18.937498 + xOffset: -0.12499999 + yOffset: 18.999998 + xAdvance: 22.4375 + scale: 1 + - id: 8250 + x: 140 + y: 40 + width: 17.124998 + height: 21.249998 + xOffset: 1.2499999 + yOffset: 21.249998 + xAdvance: 18.5625 + scale: 1 + - id: 8260 + x: 293 + y: 428 + width: 12.999999 + height: 34.499996 + xOffset: 0.43749997 + yOffset: 34.499996 + xAdvance: 14.25 + scale: 1 + - id: 8364 + x: 217 + y: 473 + width: 32.937496 + height: 32.062496 + xOffset: -0.062499996 + yOffset: 31.999998 + xAdvance: 34.125 + scale: 1 + - id: 8482 + x: 60 + y: 477 + width: 49.937496 + height: 28.249998 + xOffset: 0.12499999 + yOffset: 28.249998 + xAdvance: 51.375 + scale: 1 + m_KerningTable: + kerningPairs: [] + m_FontFeatureTable: + m_GlyphPairAdjustmentRecords: [] + fallbackFontAssets: [] + m_FallbackFontAssetTable: [] + m_CreationSettings: + sourceFontFileName: + sourceFontFileGUID: f5a6c1b3d1a264b139eb058baf98b182 + pointSizeSamplingMode: 0 + pointSize: 46 + padding: 5 + packingMode: 4 + atlasWidth: 512 + atlasHeight: 512 + characterSetSelectionMode: 1 + characterSequence: 32 - 126, 160 - 255, 8192 - 8303, 8364, 8482, 9633 + referencedFontAssetGUID: + referencedTextAssetGUID: + fontStyle: 0 + fontStyleModifier: 2 + renderMode: 6 + includeFontFeatures: 0 + m_FontWeightTable: + - regularTypeface: {fileID: 0} + italicTypeface: {fileID: 0} + - regularTypeface: {fileID: 0} + italicTypeface: {fileID: 0} + - regularTypeface: {fileID: 0} + italicTypeface: {fileID: 0} + - regularTypeface: {fileID: 0} + italicTypeface: {fileID: 0} + - regularTypeface: {fileID: 0} + italicTypeface: {fileID: 0} + - regularTypeface: {fileID: 0} + italicTypeface: {fileID: 0} + - regularTypeface: {fileID: 0} + italicTypeface: {fileID: 0} + - regularTypeface: {fileID: 0} + italicTypeface: {fileID: 0} + - regularTypeface: {fileID: 0} + italicTypeface: {fileID: 0} + - regularTypeface: {fileID: 0} + italicTypeface: {fileID: 0} + fontWeights: + - regularTypeface: {fileID: 0} + italicTypeface: {fileID: 0} + - regularTypeface: {fileID: 0} + italicTypeface: {fileID: 0} + - regularTypeface: {fileID: 0} + italicTypeface: {fileID: 0} + - regularTypeface: {fileID: 0} + italicTypeface: {fileID: 0} + - regularTypeface: {fileID: 0} + italicTypeface: {fileID: 0} + - regularTypeface: {fileID: 0} + italicTypeface: {fileID: 0} + - regularTypeface: {fileID: 0} + italicTypeface: {fileID: 0} + - regularTypeface: {fileID: 0} + italicTypeface: {fileID: 0} + - regularTypeface: {fileID: 0} + italicTypeface: {fileID: 0} + - regularTypeface: {fileID: 0} + italicTypeface: {fileID: 0} + normalStyle: 0 + normalSpacingOffset: 0 + boldStyle: 0.75 + boldSpacing: 7 + italicStyle: 35 + tabSize: 10 +--- !u!21 &21280864327797902 +Material: + serializedVersion: 6 + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_Name: IndieFlower SDF Material + m_Shader: {fileID: 4800000, guid: 68e6db2ebdc24f95958faec2be5558d6, type: 3} + m_ShaderKeywords: + m_LightmapFlags: 4 + m_EnableInstancingVariants: 0 + m_DoubleSidedGI: 0 + m_CustomRenderQueue: -1 + stringTagMap: {} + disabledShaderPasses: [] + m_SavedProperties: + serializedVersion: 3 + m_TexEnvs: + - _BumpMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _Cube: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _FaceTex: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _MainTex: + m_Texture: {fileID: 28938319353549906} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _OutlineTex: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + m_Floats: + - _Ambient: 0.5 + - _Bevel: 0.5 + - _BevelClamp: 0 + - _BevelOffset: 0 + - _BevelRoundness: 0 + - _BevelWidth: 0 + - _BumpFace: 0 + - _BumpOutline: 0 + - _ColorMask: 15 + - _Diffuse: 0.5 + - _FaceDilate: 0 + - _FaceUVSpeedX: 0 + - _FaceUVSpeedY: 0 + - _GlowInner: 0.05 + - _GlowOffset: 0 + - _GlowOuter: 0.05 + - _GlowPower: 0.75 + - _GradientScale: 6 + - _LightAngle: 3.1416 + - _MaskSoftnessX: 0 + - _MaskSoftnessY: 0 + - _OutlineSoftness: 0 + - _OutlineUVSpeedX: 0 + - _OutlineUVSpeedY: 0 + - _OutlineWidth: 0 + - _PerspectiveFilter: 0.875 + - _Reflectivity: 10 + - _ScaleRatioA: 0.8333333 + - _ScaleRatioB: 0.6770833 + - _ScaleRatioC: 0.6770833 + - _ScaleX: 1 + - _ScaleY: 1 + - _ShaderFlags: 0 + - _SpecularPower: 2 + - _Stencil: 0 + - _StencilComp: 8 + - _StencilOp: 0 + - _StencilReadMask: 255 + - _StencilWriteMask: 255 + - _TextureHeight: 512 + - _TextureWidth: 512 + - _UnderlayDilate: 0 + - _UnderlayOffsetX: 0 + - _UnderlayOffsetY: 0 + - _UnderlaySoftness: 0 + - _VertexOffsetX: 0 + - _VertexOffsetY: 0 + - _WeightBold: 0.75 + - _WeightNormal: 0 + m_Colors: + - _ClipRect: {r: -32767, g: -32767, b: 32767, a: 32767} + - _EnvMatrixRotation: {r: 0, g: 0, b: 0, a: 0} + - _FaceColor: {r: 1, g: 1, b: 1, a: 1} + - _GlowColor: {r: 0, g: 1, b: 0, a: 0.5} + - _MaskCoord: {r: 0, g: 0, b: 32767, a: 32767} + - _OutlineColor: {r: 0, g: 0, b: 0, a: 1} + - _ReflectFaceColor: {r: 0, g: 0, b: 0, a: 1} + - _ReflectOutlineColor: {r: 0, g: 0, b: 0, a: 1} + - _SpecularColor: {r: 1, g: 1, b: 1, a: 1} + - _UnderlayColor: {r: 0, g: 0, b: 0, a: 0.5} +--- !u!28 &28938319353549906 +Texture2D: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_Name: IndieFlower SDF Atlas + m_ImageContentsHash: + serializedVersion: 2 + Hash: 00000000000000000000000000000000 + m_ForcedFallbackFormat: 4 + m_DownscaleFallback: 0 + serializedVersion: 2 + m_Width: 512 + m_Height: 512 + m_CompleteImageSize: 262144 + m_TextureFormat: 1 + m_MipCount: 1 + m_IsReadable: 0 + m_StreamingMipmaps: 0 + m_StreamingMipmapsPriority: 0 + m_AlphaIsTransparency: 0 + m_ImageCount: 1 + m_TextureDimension: 2 + m_TextureSettings: + serializedVersion: 2 + m_FilterMode: 1 + m_Aniso: 1 + m_MipBias: 0 + m_WrapU: 0 + m_WrapV: 0 + m_WrapW: 0 + m_LightmapFormat: 0 + m_ColorSpace: 0 + image data: 262144 + _typelessdata: 000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000508090701000000000000000000000000060a0a070200040606070707060606050301000000000000000000000000000000000000000000000000000000000000000002090e0f0f0d090200000000000000000000000000000000000000000000050b0f0f0f0d070000000000000000000000000000000003050709090906020000000000000000060d13171b1d1e1f1e1c1a17120c050000000000000000000000000000060c0f1111100d080100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000003070a0b0b0a0907050200000000000000000000000000000000000000000000000000000000000000000002070b0f1316191b1c1d1e1e1d1c191510090200000000000000000000000000000000000000000000000000060b0e1113131312110e0a0600000000000000000000000000000000000000000000000000000000000000060b0e1113131312110e0a060000000000000000000000000000000000000000000000000000000000000000000001080d0e0e0d08010000000000000000000000000000000000000000000000000000000000000000000000000000000000020d141a1d1d1a140b01000000000000000000000000000000000000000000010a12191d1e1d170f04000000000000000000000000000000000000000000000611191d1e1b150c00000000000000000009141b1f1f1c1615191b1b1d1d1c1b1b1b1a181613100c080200000000000000000000000000000000000000000000000000000a151d232525221d150a00000000030709070300000000000000000000020f1920242525221a100200000000000000000000040b1014181a1c1e1e1e1b17130f0904000008121a21272c3032333433322f2b2620191107000000000000000000000a131b2024262625221c150c0200000000000000000000000000000000000000000000000000000000000000000000000000000000000000010a12181c1f2021201e1c1a1714110e0a0602000000000000000000000000000000000000000000000000010a12171b2024282b2e303232333332312e2a241e160d020000000000000000000000000000000000000000020c141b2023262829292726231f1b150e0600000000000000000000000000000000000000000000000000020c141b2023262829292726231f1b150e0600000000000000000000000000000000000000000000000000000000000009141c222323211c1409000000000000000000000000000000000000000000000000000000000000000000000000000000081420282f32322f271e1205000000000000000000000000010406090c0e1013151d262d3233322b22150600000000000000000000000000000000000000000918242d323330281d10010000000000000c1a262f3434312a2a2d30303232323030302f2d2b2825211c160f0700000000000000000000000000000000000000000000000c1b2831373a3a3731271a0b00040f171c1e1c171006000000000000000212202c34393a3a362d201201000000000000000811191f25292d2f32333333302c28231e1812111b252e353c414547484a484744403b342d241a0f0300000000000004111c272f35393b3b3b3730281f150a0304070a0c0e0e0e0d0b080300000000000000000000000000000000000000000000000000000000000a141e262c313436363433322f2c2926231f1b17120d07010000000000000000000000000000000000000008131d262c3035393d404345474748484746423e3932292014080000000000000000000000000000000000000b151f282f34383b3d3e3e3c3b38342f29221a1107000000000000000000000000000000000000000000000b151f282f34383b3d3e3e3c3b38342f29221a11070000000000000000000000000000000000000000000000000000000c1a26303738383630261a0b000000000000000000000000000000000000000000000000000000000000000000000000000a1826323c434747433a3022140400000000000000050a0f1215191b1e212325282a3139414748463e332414020000060a0a0904000000000000000000000006182736414748443b2e1f0f000000000007192a3843494a463d3f4245464747474646454442403d3a36312a231a0f020000000000000000000000000000000000000000091a2a39444c4f4f4c443829190614212b3133312b23180a0000000000000e1f303e484e4f4f4a3e301f0d000000000005101b242c33393e42444748484845413d38322c26232e38414950565a5c5e5f5e5c59554f4840372d211405000000000414222e3a434a4e5050504b443b32271e18191c1f2223232322201d170f0600000000000000000000000000000000000000000000000000010f1b27313a4146494b4b4a484744413f3b3834302b26211b150d04000000000000000000000000000000010e1a26303a40454a4d5155585a5c5c5e5e5c5b57534d453c3226190a000000000000000000000000000000000f1d28323b43494d5052535352504d49433d362d241a0f03000000000000000000000000000000000000000f1d28323b43494d5052535352504d49433d362d241a0f03000000000000000000000000000000000000000000000000091a2a38434b4e4e4b433829180600000000000000000000000000000000000000000000000000000000000000000000000a192836434f585c5c574d4032221000000000040c141a1f24272b2d303336383b3d3f444d555c5e5b5142321f0c0c141b1f1f1e19100500000000000000000012243645535c5e584c3d2c19050000000010243748565d5f5a5053575a5b5c5c5c5b5b5a595755524f4a453e362c20120200000000000000000000000000000000000001142738485760646460564736231323323e4648463f362819080000000004172a3d4e5c6364645c4e3d2a16000000000816222e3740484e53575a5c5d5e5d5a56524c47403a35404b545d646a6f72737473716e69635c534a3e322314040000001122323f4c565e6366666460574e443a312d2e3134373838383735312b23180c000000000000000000000000000000000000000000000001101f2c39444d555a5e60605f5e5c595753504d4945403b36302920170c0000000000000000000000000002111f2c38434d555a5e63666a6d6f7172737372706c6861594f443728190900000000000000000000000000000e1e2d3a454e575e62666768686765625d58514940372c20140600000000000000000000000000000000000e1e2d3a454e575e62666768686765625d58514940372c2014060000000000000000000000000000000000000000000001142638485660636360554735230f00000000000000000000000000000000000000000000000000000102020201000000081827374654616b72726a5e513f2c190000000b1720282e34383c404346484b4d50525458606970736e604e3b271720282f3434332c22150600000000000000081b2e41536370736a5b4834200b00000000172b40536672736d61686c6f7072727170706f6e6c6a67645f5952493e30200f0000000000000000000000000000000000000a1e314456667479797465533f2a1e3041505b5e5b534637251300000000091e33475a6c7779796c5945301b00000009182634404a545c62686c6f707273726f6b66615b554e48525d67717880848889898987837d7770665c4f4232221100000a1d2f40505d6972787b7b79736b61574d45424346494c4d4e4e4c4a463e352a1c0c000000000000000000000000000000000000000000000f1f2e3d4a5660696f7375767473706e6b6865615d5955504a443c33291d0e00000000000000000000000010202f3d495560696f73777b808386878889898886827c756c61554637271604000000000000000000000000081a2c3c4b58616a72777a7c7d7d7c7977726c655d53493e32241607000000000000000000000000000000071a2c3c4b58616a72777a7c7d7d7c7977726c655d53493e322416070000000000000000000000000000000000000000000a1d304355667378787365523e2a150000000000000000000000000000000000000000000002090e13161717171614110f182636455564727d87877c6f5c47321d00000d1c29333c43484d5154585b5d60636467696c737c85897d6a56412c2c333c43494a4840332414020000000000000f23374b5e70828877624c37220d000000001a2f445a6f838980737c8286878888878787868483807c78746d665b4e3e2c1a06000000000000000000000000000000000011263a4d6073858f8f836c57422c273a4d5f6e736f6455422e1a060000000d22374c61768a9088735e48331e00000617273644515d6770777c82848788898884807b757069635c64707a858d94999c9f9d9d9c98938c83796d6050402e1b070013273a4c5e6e7b868d91918f887d7469605a57585b5e61636363625f5a52473a29170400000000000000000000000000000000000000000a1b2d3d4c5b68737d84898b8c8b888784827d7976726e69645e5850463b2c1c0b00000000000000000000081b2d3e4d5a67727c84888d90949799989899999b9a9690897d7264554533210e0000000000000000000000001024374a5a69757d878c9093949492908c87827970665b4f42342516070000000000000000000000000000102437495a69757d878c9093949492908c87827970665b4f423425160700000000000000000000000000000000000000001125394d6073848f8e826c57422c170200000000000000000000000000000000000000050e161d23282b2c2c2c2b29262428364454637383909b9184715c47321d000a1b2b3a4650575d62666a6c70727577797c7d8287909995826c57423e41464f575e5f5c5142321f0c000000000000152a3e53667a8e8d77624c37220d000000001a2f445a6f869b8e8690979a9c9d9d9c9c9c9b999795928e8982786c5c4936210d0000000000000000000000000000000000172c4054697c90a393806b56412c2d42566a7d8983725d48331e080000000f243a4f64798f9d88735e48331e00001224354554626f7a838b9296999c9d9f9d9995908a847d776f74828d989a95908d8a8888898b8c8d8f8c7d6e5e4b36210d001a2e4356697b8c99a2a6a7a39b91877c746f6c6e70737677787877746e645847331f0b00000000000000000000000000000000000000021527394a5b6a7986909998979798999c9996938f8c88837d79736c63584a3a2815000000000000000000001024384b5c6b788590999d97908b87848383848486888c949c91837363513e2b18040000000000000000000000162b3f53677887929a9f9a95909092969b9b958d83786d6052433425150400000000000000000000000000162b3f53667887929a9f9a95909092969b9b958d83786d6052433425150400000000000000000000000000000000000000172b4054687c90a294806b56412c17020000000000000000000000000000000000030e18222a31383d40424242403f3b393a465462728292948a80736554412e19001327394958636b71777b808386888b8d909294979b978f8576655251535659626b72746f604e3b27120000000000051a2f44586d82968c76604c37210c00000000192e43586e83989e9a938f8d8d8f8f90919496989b9c9fa09d958b7965503b261000000000000000000000000000000000041b30455a6e84989c8a7663503c2830465b70869a89735e48331e0900000012273c51667b919d88725c47321d000a1d3041536372808d979a94918f8d8d8f919396999c99928b838592978e86807b7774737273747677797b7c77634e38230e001e33485d718699aab5bbbcb7aea399908984838486888c8d8f8e8c898276624d38230e000000000000000000000000000000000000000b1e3144566879899790888382828385888c9094999e9c98938e888076685744301b00000000000000000000152a3f53677a8996a29c8e837b76726f6d6d6e6e707277828e9d91806d5a47331e0a0000000000000000000000192e43586e839797918b86807b7b7c82878e97a0968b7d7061524332210f00000000000000000000000000192e43586e839697918b86807b7b7c82878e97a0968b7d7061524332210f000000000000000000000000000000000000031b3045596e83989c8a7764503c281300000000000000000000000000000000000814202b353e464c51555757575653504e4d57647182908c82776d61554737251200192e4356677580868c9094979a9d9c9895938f8c88827b7267616366686b6e7580878b7d6a55402b160000000000091e33485d72879c88735e49341f0a00000000162b40556a80949d8b7d7977777878797c7d82838688898c8c8d857965503b261100000000000000000000000000000000091e33485d72889c92806c5a47342130465b70879c89735e48331e0900000014293e53687d939b86705b46301b001126394c5f708291978d86807b787777787b7d828487898b8b929590857a726b66625f5e5d5e606163646667665a4834200b001f344a5f748b9fb0b1b1b1b0aeaca9a49d9998999b9da0a3a4a19a9082715f4b37220d0000000000000000000000000000000000000013273a4e617386978a7d736e6b6b6c6f72767a8084898d9195989a9387735e48331e00000000000000000000162b40566b80909aa18e7d7067615d5a585858595b5d646f80909e8a76624d38230e0000000000000000000000182e43586d8288837c76706c6666686c727a848e9a9c8f807061503e2d1b08000000000000000000000000182e43586d8288837c76706c6666686c727a848e9a9c8f807061503e2d1b080000000000000000000000000000000000081e33485d72889c92806d5a4734210d000000000000000000000000000000000a1926323d48515960666a6c6c6c6b6866636269758290867a6f645a504438291908001b30465b7086939aa09f98928e8a8783807c7977726d6e717376787b7d828389929b93806b56402b1601000000000c21374c60768b99856f5a45311c070000000012273c51657a8f9b866f64626263636467696b6e6f727476777772695b4a36220e000000000000000000000000000000000b20354a5f748a9f8a75614f3d2a1b30465b70879c89735e48331e09000000162b40566b809598836e58442f1900182c4055697c8f92857a716b666362626466686c6f72737480928f8072675e57514d4a4848494b4c4e4f5052514a3c2b1805001f34495d7286959b9c9c9c9b999794939da79b93919191918f8c867d72635442301c0800000000000000000000000000000000000004192d42566a7d918a796b60595656575a5d61666a6f73787c8083868683715d48331e0000000000000000000014283d5063727d899987725f544d4845434343444649516174889d907b66503b26110000000000000000000000152a3e526572726d68728382736153585f67707c89969e8f806e5c4a372411000000000000000000000000152a3e526572726d68768782736153585f67707c89969e8f806e5c4a37241100000000000000000000000000000000000b20354a5f748a9f8a7662503d2b18050000000000000000000000000000000b1a2836434f5a646d757a80838383827d7b78777c86928776685c51473d32271a0b00001a2f44586b7c8c9b9f8e847d7975716e6b6c73777c808487898c8e909396989b958d837564503c281300000000000f24394e63788e96826b57412d1803000000000e23374c61768b9b866f5a4c4d4e4e50525456585a5c5f6062625d564c3d2c1a07000000000000000000000000000000000d23384c62778c9b86705c4732201b30465b70879c89735e48331e09000000182d43586c839795806b56402c16001c31465b7084958373675d56514e4c4d4f5154575a5c64778a93827061554b433d38353333343637383a3b3c3c372c1e0d00001b2f435668778286878787868482807d8e9d89807b7b7b7b7977726a615445362513000000000000000000000000000000050707070a1e33485c708692806c5c4e4441414245494d51555a5f63676b6d6f6f6e6454412e19000000000000000000000d21344554606a7c928b78644f3a33302e2e2e2f3035455a6f8599937c67523c271200000000000000000000000f233547555d5d5964788d9079644f434b545e6a7786959d8c796754412e1a0600000000000000000000000f233547555d5d596579909079644f434b545e6a7786959d8c796754412e1a06000000000000000000000000000000000d22374c62778c9b86705c4733200e000000000000000000000000000000091929384654616d7782898f949798989693908d8d9199937d6a584a3f352b20150900000015293c4e5e6d7c8c9b8b7b6c64605c687680888d9195999c9d9a9793908d8b8782797065574734210d000000000011263b50657a90917c67523e291400000000000a1f33485d72889b866f5a443838393b3d3f414345474a4b4c4c49423a2e1f0f000000000000000000000000000000000010253b5064798f97836d58432e191b30465b70879c89735e48331e090000001a2f445a6f8599917c67523d2813001f344a5f73898f7965564a423d3937383a3c3f42495a6d82958a7563524c4b48433e362e251f20222325262727231a0e0000001427394a59646c707070706f6e6c6a6f80918d796666666664625d574e43362718070000000000000000000000000009141a1d1d1c1a23384c61768b8a75624f3e302c2c2d3034383c41464a4e5256585a5a59534637251200000000000000000000041627364453687d939079644f3a251b1818191a1b2f44586e8499917b66513c271200000000000000000000000618293843494953687c92917b66513c37414d5a677687989784705d4936210d00000000000000000000000618293843494950667b91917b66513c37414d5a677687989784705d4936210d0000000000000000000000000000000010253b5064798f97836d58432e190400000000000000000000000000000516273747566472808a959d9894919191959fa5a3a3a5a8937d706457493a2b1a09000000000d1f30404f5e6d7c8c998b7c6f625b7086949ca29e97918c8886827d7b7875716c655d534839291705000000000012273c52677c918e78644f3a2510010305080b0e1d32475c72889b866f5a442f232425282a2c2e303234363737352e271d1001000000000000000000000000000000000013283d53687c92937d69543f2a151b30465b70879c89735e48331e090000061c32475c71879c8e78644f3a2510001f344a5f748b8f79645141362e282423262e3a485666778a9d8872616262605d58524a41382d22150e0f1112120e07000000000a1c2c3b4851585b5b5b5b5a59575461738696826d5950504f4d49433b31261809000000000000000000000000000c1b272f3232312f2c3c51667a9085705b4633201717181b1f23272c3135393d40434444443f36281908000000000000000000000009182c41576b82968f78644f3a240f000008142334485c70869b8c77634e39240f0000000000000000000000000b1a262f343f546a8095937c67523c272f3c4a5969798c9e8d7965503c27130000000000000000000000000b1a262f343b50667b91937d68533e292f3c4a5969798c9e8d7965503c27130000000000000000000000000000000013283d52677c92947d69543f2b160100000000000000000000000000001122344555657483909c938a847d7c7b7b8290a3a89b999b9c8f82756758493827150200000001122231404f5e6d7b88958d8073676b7b8b9a9e8d837c77736f6c686663605d57514a40362a1b0b00000000000012273c52677c938b75604b36211616181a1d20232532475c72889b866f5a442f1a0f10131417191b1d1f212222201a130a00000000000000000000000000000000000000162b40556a8095907a66513c27121b30465b70879c8b745f4a341f0a00000a1f34495e73899e8a75604b36210c001f34495e728894806e5f534a433d39373a414c58657485959b867076777775716c655d544a3f33251607000000000000000000000e1d2a353e43464646464444424456697c9089745f4b3b3a38342e281e14080000000000000000000000000007192a384347474644413f54697d94826c57422d201c1a1714100e13181c2025282c2e2f2f2f2b23180a000000000000000000000000031a2f445a6f84998d77624d38230e08111a2532415163778b9785705d4834200b0000000000000000000000000009131b2b40566b8297937d68533e291e2c3b4b5c6e809394806a56412c170000000000000000000000000a13191b263b50667b9195806a543f2a1e2c3b4b5c6e809394806a56412c1700000000000000000000000000000000162b40556a8095907b66513c27120000000000000000000000000000091c2e405263738493958a80766f6967666674899f998a84878e98938676675644321f0c0000000004132231404f5e6a76838f9185796d6c7b8b998b7b6d625e5a5754514e4b48433d362d24190c0000000000000012273c52677c9388725d48332b2b2b2d2f3235383a3b485e738999846f5a442f1a0d0b0a08060402080a0b0d0d0b06000000000000000000000000000000000000000000192e43586d83988c77624d38230e1b30465b70879c8b745f4a341f0a00000c21364b60768b9c87715c47321e09001b2f44586c80938d7c70655d57524e4c4f555e69758493a29884828b8d8d8b87827971675d504334251504000000000000000000000d1822292e303030302f2f2d3a4d6073878f7965513c27231f1a140b0200000000000000000000000000000f233648565c5c5b595653586d8394806a543f3834312f2c28262323221f19101416191a1a1a16100600000000000000000000000000081d32475c72879c8b75604b3620151c242d3743505f6f82938c7a6754412d1905000000000000000000000000000000172c42576c8397937c67523c27121d2d3e5163778c99846f5a45301b00000000000000000000000e1c272d2f2e3b50667b91947d68543f2a23232d3e5163778c99846f5a45301b00000000000000000000000000000000182e43586d83978c77624d38230e00000000000000000000000000001326394b5d6f82919285776c635b55525264778c9d8c7b6e727a8591958573614e3b2815010000000004132231404c5965717d8a968b80746c7b8a988b7d7063574a3f3c3936332e29221a110700000000000000081a2a3c52677c9387705b46404040404244474a4d4f50525f748a9a856f5a442f2422201f1d1b1916130f0a040000000000000000000000000000000000000000000000021b30455a6f869a89735e4a35200b1b30465b70879c8b745f4a341f0a06050e23384e63778d98836e59442f1a050015293d50637688998e8379726b6763626369717b8794a2a9948089918e8c9198958d857a6e61524332210f0000000000000000000000050e15191b1b1b1b1a1a1d3044576b8093806a56412d180b06000000000000000000000000000000000014293e52667272706e6b68677186947d6853504c4a4744403d3b383837342d23170800000000000000000000000000000000000000000c21364b5f748a9d88725d483322293037404a55616e7d8e90806e5c4a38251200000000000000000000000000000000172c42576c8398907b66503b26110f2134485c71869b87725c47321d000000000000000000000a1c2c394244434252677c938f7965513c3638383634485c71869b87725c47321d000000000000000000000000000000021b30455a6f869a89735f4a35200b00000000000000000000000000081b2f4255687a8d938373665a4f47404b5d6f829491806e5d5e6773808f917d6b5844301b0700000000000413222f3b4854606c78859192877b6f7a87938e8274685c51453a2f231a140e070000000000000000001325374859697b9087705b5756565656575a5c5f6264666766778c9b86705b463b3937363432302e2b28241f191209000000000000000000000000000000000000000000081e33485d72889b86705b46311c071b30465b70879c8b745f4a341f1b1b1a18263b5065799094806a55402b1601000e213447596a7a8a97958d86807b7877787d858e989eaba48f797b7b78777c848c95978c807061503f2d1a07000000000000000000000000000009151e24252421283b5063778c85705b47321e09000000020200000000000000000000000000152a3f546a80888784827d7c7c8c96826d6764625f5c595653504d4e4c484034261706000000000000000000000000000000000000000f24394e63778d99846f5a4530363d444b535d6772808d92827261513f2d1b0800000000000000000000000000000000192e43586e84998e78634e39240f05192e43586e849889735e48331e000000000000000000001327394a565a585755687d938a75604c464b4e4e4a4043586e849889735e48331e000000000000000000000000000000081d32475c72889b86705b46311c07000000000000000000000000000f23374b5e72859887756556483d334356687a8d96857362504b556170809388735e4a35200b00000000000004111e2a36424e5a6773808c988d807475828f9286796e63584c4034281d11050000000000000000001b2f42556676879788756e6c6b6b6b6b6c6f727477797b7c7b7b909c88725d52504e4c4b49474643403d38332d251c1105000000000000000000000000000000000000000b20354a5f748997836d58432e19041b30455a6f869b8b745f4a343030302f2d283c52677c92917b66513d281300000417293b4c5c6b798690999a95918f8d8d929790898da1a48f7866666462687078838d9a8f806e5c4936220e0000000000000000000000000008182732393a39363234485d71868a75614c3824100d0f151717150f0600000000000000000000152a3f546a808e929395939191999d8c807c797773706e6b68656263615c52443524120000000000000000000000000000000000000012273c51667b9096826b5741434a51585f677079849090827363544433211000000000000000000000000000000000001a2f445a6f84998c76614c37220d04192e43586e839888735e48331e00000000000000000000192d4256686f6e6c6a6b809585705b585b6063635d5043586e839888735e48331e0000000000000000000000000000000a20344a5f748997836d58432e19040000000000000000000000000014293d52667a8e8f7c695847382b364b5f7285988a7867554438445263768c8d77634d38230e00000000000000000c1925303d4955616e7a879392867a707d89958c80756a5e52463a2f23170b00000000000000001f34495e728595a393888483828282828384878a8d8f9193918d97a08c776a67656362605e5c5b5855524d4841392f2314050000000000000000000000000000000000000d22374c61768c94806a55402b16011a2f44596e84998b745f4a4045464644413d3f54687d948d78634e39240f0000000c1d2e3e4d5b68737c858a8e90908e8b87827b758ba0a5907965514f4d545c66707c89988c7965513d291400000000000000000000000001142636444d4f4e4b474243576c82907b6753402d2322232a2c2c2a23180b00000000000000000014293e536674787c7d808384878d979c95928f8c898683807c797778766f6253412e1b06000000000000000000000000000000000000152a3f54697d93927c685350575e656c737a838d978e80726355463626150400000000000000000000000000000000001b30465b70869b88735e49341f0a0b1e32475b70869a87715c47321c000000000000000000001a2f445a6f868483807c839682706f6e707478786e5c485b70869a87715c47321c0000000000000000000000000000000c22374c61768c94806a55402b160100000000000000000000000000192e43576c82958873604c3a29263b5065798e8d7c6b5a493827384d62778c8f78634e38230e00000000000000000007131f2b3844505c6975828d988c807477849092877b6f63584c4034281c10050000000000001f344a5f74848d9d979695949391908f8d8c8b8a898887868691a4a69385807c797877757372706d6a66625c554c403223130100000000000000000000000000000000000f24394e63788e917c67523d281300182d42576c83988b745f4c54595b5b5a56524b546a80958a74604b36210c0000000010202f3d4a56606970757879797876726d67778da29f937d695541394049535e6b798a95826c57422d180300000000000000000000000a1d304354616463605c575353687c93836f5c4b3d3837373e42423e35291a0900000000000000000f233749575f6467686b6c6e72798da1928b8b8c8f939695928f8d8d8c82705e4a35200b000000000000000000000000000000000000182d42576c82978e78645c646b727980888f9795897c6f625445372818080000000000000000000000000000000000051d32475c72879a86705b46311c0715273a4e61758a98836e59442f1a00000000000000000000192e43586c809297949291988987868486898d8c77624e61758a98836e59442f1a0000000000000000000000000000000e23384e63788e927c67523d281300000000000000000000000000001d32475c708697836d5844301d263b50667a897d6e5e4d3d2b2d4053677b908d77624d38230e00000000000000000000010e1a26333f4b57636f7c889492867a727d8b978d82756a5e52463a2e22160a00000000001c314457677084938282807d7c7b7978777675747372706f74889db1a2999492908e8c8b89888683807b7670685e5141301e0b000000000000000000000000000000000010263b506579908f79644f3a251000162b40566b82968b745f5f686e70706f6b6660586b829688725c47321d080000000002111f2c39434d555b6063646463615d596b7d9295899885705c4a372d36414d5b6d8397846e58432e190300000000000000000000001025394d6072797875706c6867687b918c7a695b514d4c4c52575752473827140100000000000000071a2b39444b4f52535657595e72869a85757577797d828588898b8b8a83735f4b35200b0000000000000000000000000000000000061b30455a6f859a8a74656f7780878e959c988e83776b5e51443627190a000000000000000000000000000000000000091e33485e738996826c57422d1810213244576a7d91927d6954402b160000000000000000000015293d506374838d93979d9e9b9b9a999b9d97897560576a7d91927d6954402b1600000000000000000000000000000010263b506579908f79644f3a251000000000000000000000000000001f34495e738995806a543f2a1523374b5e6e746c5f50402f28394a5d70839787725e4935200b0000000000000000000000000915212e3a46525e6a76828e988c807379869293887b6f63574b3f34281b0e0000000015283949586e84937c6b6a68676664636261605f5e5c5b5a6f8499ab9788848486888a8d9094989894908b857b6f5f4e3b2713000000000000000000000000000000000012273c52677c918c77624c37220d00152a3f54697d948b7464717b83878784807a736b708599866f5a45301b060000000000010f1b26313a41474b4e4f4f4e4c556676899b8a7c908c79675545372d2f43586c8397846e58432e1903000000000000000000000012273c52677c908e8a86827d7c7c85959887786d65626262666c6c655644311d080000000000000009192733393a3a3c3e404245576a8093856f606265686c6f727374747470645544301c0800000000000000000000000000000000000a1f34495e73889a867077838c949ba29990867b7065594d413426180a000000000000000000000000000000000000000b20364b60748b937d68533f2a151e2e3e4f6173879a8a76634e3a2611000000000000000000000e213445566571797d83908f868687888888847a6b596173879a8a76634e3a261100000000000000000000000000000012273c52677c918c77624c38230d00000000000000000000000000001f344a5f748b94806a543f2a151b2e40505c5f594f49433835465668798d93806b58432f1b060000000000000000000000000004101c2834404c5864707b869091857874808d998d8275695d5145392c1e0d0000000b1c2c42576c82937c67545352504f4e4d4c4b4a484746586e8499a9947d6e6e707274777b8083878a8d90918d7d6a56412c17020000000000000000000000000000000014293e53687d9389745f4a35200b0013283e53687c938b7474838f979c9c99958f887d7a8c99846e58442f19040000000000000009192b3b4a55575349444d5865738495907d7387968573635549413e4c5e728796826c57422d1803000000000000000000000011273c516576868d91969793939397a2a5978a827a77777777828273604b37220d00000000000000142637454e4f4e4b4845423f5063778c88735f4d5053575a5d5e5f5f5f5b53463727140100000000000000000000000000000000000e23374c61768c95827688959fa7a693867c73685e53483c3023160800000000000000000000000000000000000000000e23384d62778d8f7965503b261f2d3c4c5c6d809195826e5b47331f0b000000000000000000000416283847545e65697d938b7670717272726f675c5c6d809195826e5b47331f0b00000000000000000000000000000014293e53687d9389745f4a35200b00000000030607060200000000001f344a5f748b95806a543f2a151122323f484a545d5e56474253647486978975634f3c2814000000000000000000000000000000000b17232f3b47535e69737d868070636f7b889493877a6e63574a3c2b1805000000162b40556a80937c67523e3c3b3a39383736343332455a6f869ba9947d68595b5d5f63666a6d7174787b7c7d806e58432e190300000000000000000000000000000000152a3f546a809587725c47321d080812273c52677c928b7485939a928e8d8f929b9b928d9999846e58432e1903000000000000000e22364959686c665b59606a768492938372697b8d918272665c55535c6a7b8e917c68533e2a150000000000000000000000000e223648586773777c82878b8f939ba7b5a79d958f8d8d8d8d968f79644f3a240f000000000000001b304355626463605d5a5754515c70858f7b69584a40424548494a4a4a47443d32231402000000000000000000000000000000000012263b5065798f917b798d969ca2a48f7a6960564c41362a1e120500000000000000000000000000000000000000000012263b5065798f8b76614c37222f3d4b5a6a7a8b9c8a7764513e2b180400000000000000000000000a1a2936414a576b829689735e5c5d5c5c5a545a6a7a8b9c8a7764513e2b1804000000000000000000000000000000152a3f546a809588725c47321d08060b1115181b1c1b160e040000001f344a5f748a97826b56412c17041422364a5b677172645251617082928f7d6b594633200d000000000000000000000000000000000005121d2935414c56606a727061525d6975828d988c8274685a4834200b00000014293e53687d937c68533e282625242322211f1e33485d72889da9947d685346484b4e5155585c60636667696a63533f2b160100000000000000000000000001040709172c41566b8297866f5a45301b181d22283b50667b918f839394887d7877787d8893a1a2a999846e58432e19040000000000000012273c51657782796e6e737c8894938574645e6f808f918478706a686e7989998975614e39251000000000000000000000000006192a3a49575e63686c717679808998a79e94949494949494948f79644f3a240f060000000000001f34495e73797875726f6c696666697d928776675c5453565a5b59545a5b594f42311f0c0000000000000000000000000000000000162b3f54697d938c776f7982878d949886756453423024190d010000000000000000000000010a1113120c0400000000162b4054697d9388725d493434404d5b697888988f7d6c5a4835220f00000000010a1113120c0400000b192531455a6f859987705c474847474d5b697888988f7d6c5a4835220f00000000000000000000000000030507172c41566b8297866f5a45301b161b20252a2d3032302b21140500001e33485d728798836e58432e1a0511263b50657985826f5c6170808f948371604e3c291704000000000000000000000000000000000000000c17242f3a444d565e5d51434c5864707a8590928677634e38230e00000013283d52677c937d69543f2a14100f0e0d0b0d22374c60758ba0a9947d68533e3335393c4044474b4e5052545451453523100000000000000005070a0d101416191c1e202d43586c8398836d58432e272c31373c4150667b919d989485766a6362646a758392a3af9a866f5a45301b060000000000000012273c51667b918b848488909a9083746657516170808d968c84807d828b988e7d6b5946321e0a000000000000000000000000000c1c2b39444a4e53585d61646b79899a90807d7d7d7d7d7d7d7d715f4b37221d1a140b000000001f34495e73888d8b8885827d7b7b7b7d8e9486796f69686a6f706d696e706c604e3b271300000000000000000000000004050200061a2f44586d839787725d666d7278808b9382715f4d3a271401000000000000000000000005131e25282620170e0a07051a2f44596e8398846f5a453a45515e6b788897928271604f3d2b180500000005131e25282620170e0a070a1f34495e738899846f5a443a45515e6b788897928271604f3d2b18050000000000000306090c0f1215181a1c1f2d42576c8398836d58432e262b30353a3f424547453e32231301001a2f44596d839787715d4834200d0f24394e62758a8c77636f808f978776655442301e0c00000000000000000000000000000000000000000006121c27313a43494941343a47525d68727c867d6f5e4b36210d00000012273c51667b91806b56402b16010000000012273b5065798f9a9d947d68533e292224272b2f3236393b3d3f3f3d3427170600000000000812191c1f2225282b2e3133353744596e8497826b5641393c41464b51565a677c91a799887666584e4c4f5865748698aa9c87725d48331e09000000000000000f24394d6275889698989a938a7d726557484352616e7a868e95949396938a7d6f5f4e3c29160300000000000000000000000000000d1c283035393e43484d4f5b6b7c8f8f7968686868686868686153423030322f281d100000001c3045596d808f999d999793919191939ba4978c847d7c808587827d83877d6a55402b16010000000000000000010d15191a17110b1f34495d728797826d5852585e646d798a8f7c6a5744301c0700000000000000000000031423303a3e3b332a231f1c1a1d32475c718797826c57434d57636f7c899792837363534231200d000000031423303a3e3b332a231f1c1a23384c61768c97836c57434d57636f7c899792837363534231200d00000000000611181b1e2124272a2d2f32343544596e8497826b5641383b3f44494e53575a5c5a5041301d0a00162b3f53687c908c77634f3d2b1e1b1e32475b7086927d70808e9889786858473625130100000000000000000000000000000000000000000000000a141e272f34342e232935404b556069726e6051402e1b0700000010253a4f64798f836c58432d180300000003182c40556a7d93888e947d68533e37373636353434333332333b42433e332414030000000a19252e3234373b3d404346484a4c4d5b708695806a544c4e51555b60656b6f728296a18e7b6a58483b373b4756687a8da09f8b75604b36210c000000000000000a1e3246596a7883898a8680766c615447393443515d68727a8084868480776c5f5141301f0c000000000000000000000000000000000b151b20252a2e33383d4d5f7285937d69555353535353534e44353d4547433a2e1e0d0000162a3d5061707c85898c8f8f8f90909193969b9f98949394999c9694988f806a55402b160a0100000000000002121f292e2f2b251f25394e62778c927c68533f444a515c6b7d9287735f4a36210d000000000000000000000d2032414d534f463d3834322f2e374b60758a947d6954565f6a75828d9a8f8273645545352513020000000d2032414d534f463d3834322f2e3b5065798f95806b56565f6a75828d9a8f827364554535251302000000000917232c303336393c3f424447494b4b5a6f8695806a544a4c5054595e63686c6f716d5f4d392510001024394d60748893806c5a493b3130313543586e839782808f9789796a5a4a3a2a190700000000000000000000000000000000000000000000000000010b141b1f1f1a1117232e39434d565e5c5042322311000000000e23384d62778d866f5a45311c070000000a1e32465b6f8496828d947d68534e4c4c4b4b4a4a4a484847474f5658514232200c0000061828374147494c505356585b5d5f6162637187947d69626263666a6f74798084888d9f9885715e4c3b2a2229394b5d718599a28d77624d38230e000000000000000316293b4c5a666f7474716b635a4f4337292533404b565f666b6e706f6a635a4e4132231201000000000000000000000000000000000000070b10151a1e23304255697c91846f5b473e3e3e3e3e3a323f4e595c574c3c2a1704000e213343525f6970747778787979797b7d8288929fa9a89f9c98938d867d71614f3b28251e120400000000000f20303c43444039332c4054687c918d77634e392f353e4f64788f8e79644f3a25100000000000000000000015293d4f5f686359514d49474443425065798f937c676169727c8792978b7d71635546372717070000000015293d4f5f686359514d494744434255697d93937d686169727c8792978b7d716355463727170700000000051727354046484b4e5154575a5c5e5f60627187947d69605f6265696d72777c8286877c68533e291400091d3144586b7d90897767594d47454649515f72879b8d929588796a5b4c3c2c1c0c0000000000000000000000000000000000000000000000000000000000070a09060006111c26303a4349483f32231405000000000b20364b60748a88735e49341f0b00000013263a4e62758a907c8d947d686363626260605f5f5f5e5e5c5c636a6d614f3c2813000011243646545c5e6164686b6d70727476777878889480797777787b8084898f94999ca0a08d7a6754412f1d0d1b2e4155697d91a48f78634e38230e00000000000000000c1d2e3c49535b5f5f5c5750473d32261915222e39434b5156595b5a5650473d312314050000000000000000000000000000000000000000000000050a13263a4d61758a8a76624e3b2929292825384b5d6c726a5947331e0a0004152534424d555b5f62636364646466686c75828e9b9b8a87837d78726a6053443b3e3a3023120100000000182b3e4e5859544e4740475b6f839788725e49353439435265798f917b66503b2611000000000000000000001b2f44586c7d766c66615e5c5a5857576b8094917b6e757c868f999085796d6053453728190a00000000001b2f43586c7d766c66615e5c5a58575a6f8498917c6e757c868f999085796d6053453728190a000000000010223545535b5d606366696c6f71737476777788947d78757477797d83888d92979a93806a543f2a15000215283b4e6173859586766a615c5a5b5e646e7d8fa29f928577695b4c3d2e1e0e0000000000000000000000000000000000000000000000000000000000000000000000000009131d272f34332d2214050000000000091e33485d71878c77624d3924100000091c2f4256697d918a778d917c7978787777767674747373737272767d806b56402b160100182c405364717376797c808386888b8c8d8f8f929e948f8d8d8f9094999996928d98a59583705e4b3825120012263a4e62758a9e8f78634e38230e000000000000000000101e2c373f464a4a47423c342a20140804101c262f373d41444645413b342b20130500000000000000000000000000000000000000000000000000000a1e32465a6e83927d6a56443222191b2e4154677a8776614c38230d0000071624303a41464a4c4e4e4f4f4f51535863707d8b9883716e69645e564d42434f534d41301f0d000000001e33475b6b6e68625b545063768a97836d594c4a494d55617082958d78644f3a2510000000000000000000001f34495e728889807a7673706f6e6c6c72869a917d8389919990887d72675c4f433527190a0000000000001f34495e728789807a7673706f6e6c6c75899e917d8389919990887d72675c4f433527190a000000000000182c3f5263707275787b7d828487898b8c8d8d919d928d8b8b8c8f93979b97938f89827564513d281300000c1f31435566778895887d75706f707378828d9c998d827366594b3d2e1f10000000000000000000000000000000000000000000000000000000000000000000000000000000010a131b1f1e191004000000000000041a2f44596d83917c67533e2a1703051527394c5f72869683778d968f8f8f8e8d8d8c8c8b8b89898888888a917d6a55402b1600001d32475b7083888c8f9295989b9c9b9b9999989795949391908d8c898784827c80959688766553412e1b08000b1e32465a6e82958d78634e38230e000000000000000000000e1a242b313434322e2820170d0200000009131b23282c2f30302c2720180d0200000000000000000000000000000000000000000000000000000003172b3f53677a8f8673614f40342e2d384a5d70858f78634e38230e00000006131d262d32353738383a3a3a3c3e46525f6d7b8a8d80736960585048415261685f4e3c2915010000001f344a5f74837c766f675f6e8093937d6e66615f5e626872808f9483705d4a36210c000000000000000000001f34495e73889695908c8987868483838390a29a9397958d867d746a60554a3e3225170a000000000000001f34495e73889695908c8987868483838390a49a9397958d867d746a60554a3e3225170a000000000000001d32475b6f82878b8d909497999c9d9c9c9b9a999897959391908d8c8986837d79746d64574735220e0000021426384959697887939089878686888d949c92877b6f6356493b2d1f100100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000162b3f54687d92826d5a4633200e1523334456687b8e8e7a778d989897979595949493939191919191938c8272614f3b271200001f344a5f74898989898988888787868684848382807d7c7b79787674726f6b6a7d898478695948362411000003172b3e5265778885725e4a36210c00000000000000000000000710171c1f1f1e19140d0400000000000000080e13171a1b1b18130c040000000000000000000000000000000000000000000000000000000000001024374b5f7286907d6d5e514843424755677a8d8d78634e38230e00000000000a12181d20222323252525272934414f5d6b798891867c736b635c545f707d6b58442f1a060000001f344a5f748a918a837b737c8c9d998c827a767473767c85909285756553412e1b07000000000000000000001b3044576a78838a9094989b9a999898989996928d878079726961574d43382d21140700000000000000001b3044576a78838a9094989b9a999898989996928d878079726961574d43382d21140700000000000000001f344a5f74898b8b8b8b8a8989888888878686848382807d7b79787673706d69656059514639291805000000091a2b3b4b5a6875828c959b9b9b9d9891898075695e5245382b1d0f0100000000000000000000000000000000000000000000000000000000000000000000000000000000060b0e0d09010000000000000000000011253a4e63778c8975624f3d2c232732415162738698857271808383828280807d7d7c7c7b7b7b7b7b7c786f63544432200c00001e33485d6f737373737372727270706f6e6e6c6b6b6968666463605f5c5a57616f7370675a4b3b2a19070000000f2336485a6a72716655432f1b0700000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000081c2f4356697c8f8c7c6e635c58575b6573859789745f4b36210c0000000000000002080b0d0e0e0f0f10111723313f4d5c6a7785929088807770686b7c87725c47321d070000001e32475b6d7b858c938f898f9baaa99e958f8c8a898c91968c8274665747362411000000000000000000000015283a4c5a666f767b80838687898b898785827c77726c655e564d443b31261b0f0300000000000000000015283a4c5a666f767b80838687898b898785827c77726c655e564d443b31261b0f030000000000000000001f34495d70747474747474737373727270706f6e6c6b6a68676463605e5c5854504b453e34281b0b00000000000d1d2d3c4a58646f7982878a8b89847d756c62574c4034271a0d000000000000000000000000000000000000000000000000000000000000000000000000000000000410192023221d14080000000000000000000b2034485c708492806c5a4a3d383b44505f6f80918e7b68626a6c6c6c6b6a6a68686767666666666667655c5245362715030000192d40515c5e5e5e5e5e5c5c5c5b5b5a59585756565453514f4e4c4a474543525b5e5b54493c2d1d0c0000000006192b3c4c575d5d5648382613000000000000000000000000060a0a0802000000000000000000000001070b0b0904000000000000000000000000000000000000000000000000000000000000000000000000000013273a4d607285968d8277706d6c6f77839292806d5945311c0800000000000000000000000000000000000613212f3e4c596774828d98938b847c7a8988725c47321d07000000182b3e4f5e6871777d84898d9295999c9fa09e9b96918a82796f635748392a190700000000000000000000000b1d2e3c49535b61666a6d6f72737473726f6c68635d58514a423a31281e140900000000000000000000000b1d2e3c49535b61666a6d6f72737473726f6c68635d58514a423a31281e140900000000000000000000001a2e41515d5f5f5f5f5f5f5e5e5e5c5c5b5b5a585756545352504e4c494743403b37312a21170b000000000000000f1e2c3a47525c656c717474736f6961594f453a2f231609000000000000000000000000000000000000000000000000000000000000000000000000000000000414212d35383731261808000000000000000005192d4154677b8e8a78685a504d4f56616e7d8d9482705e4f5557575756555453535252505050505052504940352718090000001122323f47484848484847474746464444434241403f3e3c3a3837343230344047484640372b1e0f0000000000000d1e2e3b44484842382a1a090000000000000000000008131a1f1f1d160d0100000000000000000a151c20201e180f040000000000000000000000000000000000000000000000000000000000000000000000000a1d30435567778896938b868383848a9495867463503d2a16020000000000000000000000000000000000000311202e3b4956636f7a868f9798918f94836f5b46311c070000000f2131404c555d63696f74787c808487898b8986827c756e665c5145392a1b0c00000000000000000000000000101e2b363f474d5155585a5c5e5f5e5c5a57534e49433d362f271e150b0100000000000000000000000000101e2b363f474d5155585a5c5e5f5e5c5a57534e49433d362f271e150b0100000000000000000000000011233341494a4a4a4a4a4a48484847474646444342413f3e3c3b383734312e2b27221c160e050000000000000000000e1c2935404951585c5f5f5e5a554e453c33281d110500000000000000000000000000000000000000000000000000000000000000000000000000000000001122323f494d4c443626140100000000000000001125384c5e70839487786c6562646a73808d9787766453414042424240403f3e3e3c3c3b3b3b3b3b3c3b352d231709000000000514222c32333333333332323230302f2f2e2d2c2b2a28272523211f1d1b232c3233322c241a0e0000000000000000101d282f33332e261a0c000000000000000000000a19252e3434312a1e11020000000000000d1b28313536322b22150700000000000000000000000000000000000000000000000000000000000000000000000113263749596977858f979b989899978f847667574533210e000000000000000000000000000000000000000002101d2b3845525d68727c83888a8983766653402c18030000000313222f3941484f555a5f63686b6e71747473706d68615a52493f34281b0c0000000000000000000000000000000e19232c33383d40434547494a494745423e39352f29221b130b02000000000000000000000000000000000e19232c33383d40434547494a494745423e39352f29221b130b0200000000000000000000000000000515232e34343434343434333333323230302f2e2d2c2a29272523211f1c1916120d08020000000000000000000000000b17222d363d43474a4a4946403a322920160b000000000000000000000000000000000000000000000000000000000000000000000000000000000000091c2e40505c63605444311e0a0000000000000000091c2e4153647585948a807977797d8691968979695847352c2c2c2c2b2b2a2929272726262626262726211910050000000000000410191d1e1e1e1e1e1d1d1d1b1b1a1a19181716151312100e0c0a070510181d1e1d181108000000000000000000000b151b1e1e1a1309000000000000000000000719283742494a463c2f200f0000000000081a2b39444a4b473e332516070000000000000000000000000000000000000000000000000000000000000000000000081a2b3c4b5a67727c8388898b88837c7266584939281604000000000000000000000000000000000000000000000d1a2734404b565f686e7274736f655848372411000000000004111c262e343b40464a4f5356595c5f5f5e5c58534d463f362d22170a00000000000000000000000000000000000710181e24282b2e303234343432302d2925201b140e0700000000000000000000000000000000000000000710181e24282b2e303234343432302d2925201b140e0700000000000000000000000000000000000005111a1f1f1f1f1f1f1f1e1e1e1d1d1b1b1a191817151412100e0c0a070000000000000000000000000000000000000005101a22292f32343434312c261e160d03000000000000000000000000000000000000000000000000000000000000000000000000000000000000000f24384c5d6e7772604d39251100000000000000000012243647576675838d948f8d8f93999085786a5b4b3b291817171716161514131212111111111112110d060000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000012253646545d5f594d3e2d19060000000011243749575f605b51433425140100000000000000000000000000000000000000000000000000000000000000000000000d1e2d3c49555f686e727474736e685f55483a2b1b0a0000000000000000000000000000000000000000000000000a16222e39434c54595d5f5e5a53483a2b19070000000000000009121920262c31363a3e4144474a4a4947433e39322b231a10050000000000000000000000000000000000000000040a0f1316191b1d1f1f1f1d1b1814100b0600000000000000000000000000000000000000000000000000040a0f1316191b1d1f1f1f1d1b1814100b060000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000060e151a1d1f1f1f1c17110a0200000000000000000000000000000000000000000000000000000000000000000000000000000000000000000012273c52677b8c7c6854402b1602000000000000000006182939485764707a82878a8b89857d73675a4c3d2d1d0c0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000020d141819161007000000000000000000050f16191a17110900000000000000081c2f42546472746b5c4935200b00000000172c40546774756e615243311e0a0000000000000000000000000000000000000000000000000000000000000000000000000f1e2b38434c54595d5f5f5e5a544c42372a1c0d000000000000000000000000000000000000000000000000000005111c2630394045484a49463f362a1c0d00000000000000000000050c12171c2125292c2f32343434322e2a251e170f0700000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000020a1014171716130f0801000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000013293e53687d94836e5945301b070000000000000000000b1b2a3947535e676d7274747370696056493c2e1f0f000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005141f282d2e2b24190c000000000000000816222a2f2f2c251c100300000000001024384c5f71838977624c37220d000000001a2f445a6f848a8070604d39240f000000000000000000000000000000000000000000000000000000000000000000000000000d1a2630394045484a4a484540393025190c000000000000000000000000000000000000000000000000000000000009131d252b30333434312b23190c000000000000000000000000000001080c1014171a1d1f1f1f1d1915100a03000000000000000000000000000000000000000000000000000000000000000000000000000000000000000004080b0d0e0d0a07040100000000000000000000000000000000000000000000000000000004080b0d0e0d0a070401000000000000000000000000000000000000000000000c151e25292c2c2b28231c140b02000000050b0f0f0e0901000000000000000000000000000002080c0f0f0e0c0701000000000000000000000000000000000000000000000000060d10100e090100000000030b1113120d0500000000000000000000000013293e53687d9488735e4a35200b000000000000000000000c1b2936414b53595d5f5f5f5b554d44382c1e100100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000041423313c42433f362a1c0c0000000000051626343e444440392e21120300000000162a3f53677b8f8d77624c37220d000000001a2f445a6f869b8f7c67523d2813000000000000000000000000000000000000000000000000000000000000000000000000000009131d252b3033343433302b251d130800000000000000000000000000000000000000000000000000000000000000000911171b1e1f1f1c17100600000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000060d14191d202223231f1c1916120e09030000000000000000000000000000000000000000060d14191d202223231f1c1916120e09030000000000000000000000000000000004111e2832393e4142403d3730281e1409020e18202425231d14080000000000000000000000050e161d21242523201b150d040000000000040707060100000000000000000000010e19212625231d1408000009161f26292721180d00000000000000040b0e0e13293e53687d938d77634e39240f00000000000000000000000b18242e373e44484a4a4a46413a31261b0e0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000f2132424f575853483a291703000000000e213444515859554b3f302110000000051a2f44596d82978c76604b36210c00000000192e43586d839894806a55402b16000000000000000000000000000000000000000000000000000000000000000000000000000000000911161b1e1f1f1e1b171109000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000080f1415120c020000000000000000000000000000000000000000000007111a21282e323537383834312e2b27231d1710080000000000000000000000000000000007111a21282e323537383834312e2b27231d171008000000000000000000000000000514222f3b454d53565756524b443b31261b12202b34393a38302517080000000000000000000b17212a3136393a3835302920170d02000711181c1d1b150d0100000000000000000f1f2c353b3b38302618090a1927333a3e3c352b1d0e00000000010e181f232320273c52677c92917c67523d281300000000000000000000000006111b242a2f33343434322d261e140900000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000006192c3e50606b6e665846331e0a00000000162a3e51626d6e685d4e3f2d1b080000091e33485d72879c88735e49341f0a00000000162b4055697d9497826c57422c170000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001090f13151513100b060000000000000000000000000000000000000000000000000000000003090e12151717171614100c0600000000000000000000020f1b24292a271f140600000000000000000000000000000000000000020e1a242d353c42474b4c4e4c494643403c37312b241b1207000000000000000000000000020e1a242d353c42474b4c4e4c494643403c37312b241b12070000000000000000000004142332404d5861686b6c6b6660574e44392d21303d484e4f4c4335261401000000000000000e1c29343e464b4e4f4e4a443d342a20140c19242c313230291f12020000000000000a1c2d3d4950504c43362716182837454e5350483b2c1b09000000111f2b333838342b3b50657a9095806b56412c170200000000000000000000000000080f161a1e1f1f1f1d18120b01000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000e2135495c6e7d8376614c37220d000000001a2f44596d82847a6c5d4a37230e00000d22374c61768b99846f5a45301b070000000012273c5065798f99846e59442f1a00000000000000000000000002080d121416171714100d0a0702000000000000000000000000000000000003090c0d0d0d0a050000000000000000000000000000000000000000000000000a141d24282a2a2825201a130a0100000000010302000000000000000000000000000000000810171e23272a2c2c2c2b2825201b140d040000000000000010202d373e3f3b3224150500000000000000000000000000000000000614202c37404950575c5f6263625e5b5855514c463f372e24190d000000000000000000000614202c37404950575c5f6263625e5b5855514c463f372e24190d00000000000000000011223242505e6a757c8283807a736a60564a3e333e4e5b6364605343311d090000000000000f1e2c3a46515a606364635e5850473d32261b2a37404647443c3020100000000000001326394b5b6564605445332123364655626864594a39261300000c1e2f3d474d4d483e394e63788f98836e59442f1a0500000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000014283d5165788c8d77624c37220d000000001a2f445a6f86988b7a65513c271200000f24394e63788e95806b56412c1803000000000e22374c61768b9b866f5a442f1a00000000000000000000060f161d22262a2b2c2c2825221f1b17110c04000000000000000000000000000c171e212222221f191108000000060e1112110c0400000000000000000000000e1b2731383d3f3f3d3a352e261e1409000811161917140e05000000000000000000000006111b242b32383c3f424242403d3a352f2920170d02000000000b1d2e3e4a53544e4233221100000000000000000000000000000000061524313d49535d656b707477787773706d6a65605a534b41362a1d100100000000000000061524313d49535d656b707477787773706d6a65605a534b41362a1d10010000000000000b1d2e3f50606e7c88919697958f877d73685c50444a5c6c777971604d38240f00000000000c1d2d3c4a58636d74787978736c63594f44382c3948545b5c584e3e2d1a070000000004192e42566978797263503d292a3f5364737d776856432f1b070016293c4d5a62635b50434c62778d9b87715c47321d0800000000000000000000000000000000000000000000050a0c0d0e0e0e0e0d0c0a080502000000000000000000000000000000000000000000000000000000000003080c0f111212110e08000000000000000000000003192e42576b80948c76614c37220d000000001a2f44596e8499947d69543f2a15000011263b50667a90917c67523d28140000000000091e33485e73889b866f5a442f1a0000000000000000040f19222a31373b3f4042413d3b3734302c2620191007000000000000000000010f1d293236373737332d241a0e010c192227272620160a0000000000000000000f1e2c39444c525454524e49423a31271c101b252b2e2c2821170a0000000000000000000c18242e373f464c515457575755534e4a433c342a1f130600000014273a4c5c67696051402e1c09000000000000000000000000000006152433424f5b66707880868a8d8f8c898683807a756e675e53483b2e1f0f00000000000006152433424f5b66707880868a8d8f8c898683807a756e675e53483b2e1f0f00000000000215283a4c5d6e7d8d9a9d979595989b9086796e61565467798a8f7b66513c27120000000006182a3b4b5a687582898e908d8880766c61554a3d46576670726b5c4a36220d00000000091e33475c71868f806c57422c2c42576c839286725e4a36210d001c3145596b77776e61524b60768b9f89745f4a35200b00000000000000000000000000000000000000000811191f21222323232322211f1d1b17140f0a0500000000000000000000000000000000000000000000060c12181d212426272726221c1309000000000000000000081d32475c70869a89745f4a35200b00000000172c41566b809597826b56412c17000012273c52677c928d78634e392510020407090c0f1d32475c72889b866f5a442f1a000000000000000a16222c363e454b505456575653504c4945403a342c241a0f0300000000000001101f2d3b464b4c4c4c4841372c1f111c2a363c3c3a33281a0a000000000000000d1e2d3c4a5660676a6a67635d564d44392e212c384043413d3428190900000000000002101d2a36414a535b61666a6c6c6c6a68635e5850473d3123150600001b3044576a797d6f5d4b39261300000000000000000000000000021323334251606d78838c949a98928f90929598948f89837a7066594c3d2d1d0b00000000021323334251606d78838c949a98928f90929598948f89837a7066594c3d2d1d0b000000000c1f324557697b8c9d948a838080838990978c8073675f718597917b66513c2712000000001224364758697887939d9f9d9d9c93897d73675b4f51637584887965503b2611000000000c21364b60758b98836c57422c2c41566b82978e7964503b2611001f344a5f74898b807061525e73899f8c77624d38230e00000000000000000000000000000000000007111b242d3437373838383837363432302c28241f19130b0200000000000000000000000000000000010a121921272d3236393b3c3c3b3730261b0f01000000000000000c21364b60748a9a86705b46321d080000000013283d52667b9098836e58432e19000012273c52677c938a75604b36211717191c1f21242632475c728899846f5a442f1a0000000000000d1b28333e4951596065686b6c6b6864615e5a554f4840372c21140600000000000e1f2e3d4b59606262615c54493d2f202a3a4851524f46382816030000000000091a2b3c4b5a68737b80807c77716960564b3f323b4a545857514637271401000000000111202e3b47535d676f757b80828383807c78726c635a4e4133241402001f34495e73878d7a6855432f1c090000000000000000000000000d1f31415161707d8a969d938b847d79797c8084898f95968e8377695b4b3a2916040000000d1f31415161707d8a969d938b847d79797c8084898f95968e8377695b4b3a29160400000115283b4e617587999183766e6a6a6e747c869091857a717c8fa08c77624e39240f000000081b2e4153657687979b918b88888b90979185796d615b6d8293927c67523c2712000000000e23384e63778d98836c57422c2a3f546a8095937d68533f2914001f34495e7385978f8070615c72889d907965503b261100000000000000000000000000000000040f1a242e3740484c4c4e4e4e4e4c4b4a4745413d39342e271e150a00000000000000000000000000010b141d262d353b41464b4e505252504b43392c1f10010000000000000e23384e63778d97826c57422e1904000000000f24384d62778c9a866f5a442f1a000012273c52677c9388725d48332c2c2c2e313436393b3c485e738999846e58432e1900000000000d1c2b3945515c656d74797d8283807c7976736f69635c53493e32241607000000081b2c3d4c5b697577777670675b4d3e2f3848586567635645331f0b0000000002142638495a697886909594928d867c73685d50424959676d6b645544311d08000000000f1f2f3e4c5965707a838a909497989795928d8780766c5f5142311f0c001f344a5f74899885725f4c392512000000000000000000000005182b3d4e5f70808f9c968b80776f696465676b6f747a828a9495887969584633200d000005182b3d4e5f70808f9c968b80776f696465676b6f747a828a9495887969584633200d0000081c3044586b7d92928272645a55555a6069727d8b978d878b9a9986715d48341f0b0000001225384b5e70839497897d757272767c838d978a7d7369778b9e8e79644f3a25100000000010253a4f64798f97836c57422c293e53687d9396826b56412c17001b304355677889988f806f5f70879b937d68533e29140000000000000000000000000000000a16212c37414a535c60626363636362605f5c5a56524d48423a31281c0f000000000000000000000008141e273139414950555b5f63666767655f564a3d2e1f0e00000000000010253b50647990927d68533f2a1500000000000b2034495e73899b866f5a442f1a00091b2b3c52677c9287705b46424242424346494b4e5052535f748b98836c57422d18000000000c1c2b3a4956636e7882898f93969895928f8c88847d776f665c4f423425150400001225384a5b6a79888d8d8b84786b5c4d3c465666767c74624e39240f000000000b1e314355677788979d9897989c9990867a6e6052536677838073604b37220d0000000b1d2d3d4d5c6a76838d969e999592908f9091939493897d70604e3b2713001d32465b7084988f7b6854412e1a07000000000000000000000f2235485a6c7d8e9e9285786d635b544f5052565a5f666d77828f98877563503c281400000f2235485a6c7d8e9e9285786d635b544f5052565a5f666d77828f98877563503c281400000f24384c6073889986746454474040454c56606d7a8a999c9fa6927d6a56422e19050000061a2d4154677a8e9888786b615d5d61687079859190867d85959c88735f4a36210d0000000011263b50667b9195806b56402b273c52677c9298836c57422c17001426384a5a6a7989998e7d6d6f869b96826b56412c1702000000000000000000000000020f1b28333e49545d6770767778787878777674726f6b67625d564e44392d1e0e0000000000000000010e1a25303a444d555d646a7074787b7c7c7972685b4c3d2c1b09000000000012273c51667b918f7964503b26110000000306081d32475c72889b866f5a442f1a0013263849596a7b9087705b5857575757585b5e606366676867778d97826b56412c1700000007192a3a49586774808c959d968f898687898c909498928b83796d60524333221000001a2e425567788998908e95968a7a6b5a49536474858876634e39240f0000000114283b4e60738596958a838283888f99988c7d70615b6f83968c78634e38230e00000517293a4b5b6b7a8894988f8984807c7a78797b7d808283847d6a55402b1600182c4055697d919885705d4a36220f00000000000000000004182b3e5164778a9b908273675b5047403a3b3d41454b525a6470809092806b57432f1a0004182b3e5164778a9b908273675b5047403a3b3d41454b525a6470809092806b57432f1a0000152a3e53677b8f8f7b695746362b2b3139434f5d6b7b8c9daf9e8a76624e3b27130000000d2135495d7085988b79695a4e48484d545d6773828f999497a395826d5844301c070000000012273c52677c93937c68533e29263b50667b9198836c57422c1700091a2c3d4c5b6b7a8a9a8b7a6f869b99846e59442f1a0500000000000000000000000512202c3945515c66707a838c8d8e8f8f8d8d8c898784807c77716a61574a3c2c1a0800000000000003111f2b37434d57606970787d85898d9093938f86796a5b4a382613000000000012273c52677c938b76614c372211111315181b1e2032475c72889a866f5a442f1a001b2f4355677788988876706e6c6c6c6c6e707376787b7c7d7c7c9195806a543f2a150000001224364758677685929e958b827a74707073767a80868d95968b7d706151402d1b08001e33485d7185978f7d78828d99897867566171828c7b6a594734200c000000081c3044576a7d909786776e6b6d737c87929d8f807061758a9c87715d4935200c00000e2134465869798a988f857b746f6b6765646567686a6b6c6e6f65523e2a150011263a4e6175899c8d7965523e2b170300000000000000000b1f33475a6e82959282716356493e342c2626282c31373e47536173869a87725d49341f000b1f33475a6e82959282716356493e342c2626282c31373e47536173869a87725d49341f00071b3044586d829686725f4c3a2818171d26323f4d5d6e8093a796836e5a47331f0b00000013273c5064788d92806d5c4b3c333339404a5662708090a2aba18d7965513d2915010000000013293e53687d93907965503b26253a4f64799098836c57422c1700000e1f2e3d4d5c6b7b8b988878899c9b87715c47321d0800000000000000000000061423303d4a57636e79848d9797928e8c8b8b8d9094999995918c867d74685a4a37241100000000000212212f3c4955606a737c858c93999e9c9897989f978978675543301d090000000012273c52677c9388735e4934262626282a2d30333436485e738899846e58432e19001f34495e728596a494898684838383838486888b8e909394928f98937c68533e281300000a1d304253657586959b8f83776e66605b5c5e61666b7179828c988f806f5d4a372410001f344a5f748b998672656f7b89968574636f8090806e5d4c3b2a18050000000f23374b6073879b8d79685a5659606974828e9c8f806e7c9099846e59442f1a060004182b3e51637587988a7c7168605a5652504f505253545657585a544736230f000a1e3246596c809395826d5a46321f0b000000000000000011253a4e62768a988674635345382c2118111013171c232b3544576c82978b745f4a341f0011253a4e62768a988674635345382c2118111013171c232b3544576c82978b745f4a341f000b20354a5e7388937d6a56432f1c0a020a14212f3f5063778ca18f7a67533f2b1704000004192d42566a8094897562503e2d1e1e242d38455262728496aa9986715d4a36220e0000000000152a3f546a80948d77624d3823253a4f64798f97826b56412c17000001101f2f3e4d5d6c7b8c968d96a69e89735f4a341f0a00000000000000000006152432414e5b6874808c96938a837c78767475777a80858a8f959a999186786754402b1601000000001020303f4d5a67727d8790999f98928c888482848c999785725f4c3925110000000517273c52677c9387705c473b3b3b3b3d3f4245484a4b4c5f748998836d58432e19001f344a5f73838c9c9694949391908f8d8c8b8988888786848490a3907b66513c271100001326394c5f718394998b7d70655b524b4647494d51565d656f7a89988d7a67533f2b17001f34495e738997826d585e6b79889282737d8e857361503f2f1e0c0000000014293e52667a8f9985705d4a40444c5763707d8d9d8d7d869997826c57422c1702000c2034475a6d82938c7a6c5f544c46413d3b3a3b3c3e3f4042434441372919060003162a3d5063768a9c8a75624e3a26130000000000000000152a3f53687c928d7a68564535271a0f0500000001080f1d31465a6f849988735e48331e00152a3f53687c928d7a68564535271a0f0500000001080f1d31465a6f849988735e48331e000f24394e63778d8d78644f3b271300000003112134495e73899c8873604b3824100000000a1e33485c708695826d594633210f0a111b27344455677a8ea2927d6a56422e1a060000000000162b40566b80958b74604b362023384e63788f947d69543f2a150000000111202f3f4e5e6d7c8c9ca8b4a18c76614c37220d00000000000000000514243342515f6c798692948980766f6864605f6062666a70757a80868a8e90836c57422c17020000000b1d2e3e4e5d6b7885909a9a928b847d77726e6b6f7a8a9a8f7c6854402c180400001022344555667b9187705b52505050505254575a5d5f606261768c97826c57422c17001c304456666e849382807d7c7b7978777675747372706f6e73889d8e78634e39240f00071b2f4256697c8f9a8a7a6c5f53483f37313234383c4249525d6a798c96836e5a46311c001d32475c70869b87725d4d5b69798a91888c8c7a6756443322110000000000192e42576c8296937d6a55412d303a4552606e7d8f9a9397a494806a543f2a15000012273b4f63778a94826e5d4e44413d38322a242627282a2b2c2e2f2d25190b0000000e2134475a6d8093927d6a56422e1a0600000000000000192e43586d839785715d4b39281709000000000000031426394d60758999846f5a45311c00192e43586d839785715d4b39281709000000000000031426394d60758999846f5a45311c0013283d52677c9188735e4a35210c000000000e23384d61768c95826c5844301c080000000e23384c61768b8f7a66523e2a16030000091626374b5f748a9f8a76624e3a2613000000000000172c42576c829788725d48331e23384e63788f917b66513d28130000000002112130404f5e6e7d8d9daca38f78644f3a240f00000000000000021223324251606f7c8a978d82766c635b544f4c4a4b4d51565b60656b707578797a6955402c160100000316283a4c5c6c7b8996998f867d766f69635d59565d6b7c8f9884705b47331e090000192d405263738494887269676666666667696c6f72747677767a8f95806a55402b160014273948586e83937c6a68676664636261605f5e5c5b5a5a6f84998b76604b36210c000e22364a5e7286998d7b6b5c4e41362b231d1c1f23282e363f4c5c6f849889745f4a341f00192e43586c82958d7864504c5c6c7d919d97836f5d4a3827150400000000001d32475c70869a8d78644f3b261d2834425060708294a6aba8937c68533e28130000182c41556a7d938c77645a5a5856524c463e342a1f13151617191a1812080000000004172a3d5063778c9986715d4a36220e000000000000001c31465b7086937d6a55412e1b0a000000000000031121324456697c90937d6a55412c18001c31465b7086937d6a55412e1b0a000000000000031121324456697c90937d6a55412c1800172c41566b8095846e5945301b070000000013283c51667a908f7a66523d29150100000012273c51657a8f8a75604b37230f000000000d21364b60758b97836f5b47331f0b000000000000192e43586d8398866f5a45301b243a4f64788f8d78634e39240f00000000000312223140505f6e7d8e9da6917b66513c2712000000000000000f2030415160707d8d97897c6f64594f47403a373436383c41464c51565b606364665d4c3a26120000000c20334658697a8b9a90867c726a635b554e4944414d5f7286998a76614d38240f00001e33485c6f8291a08f837d7c7b7b7b7b7c7d8285888a8c8d8c8895937d68533e2914000a1b2c41576b82937c675352504f4e4d4c4b4a48474644586e849988725d48331e090013273c5165798e93826f5e4d3e3024190f08070a0e131a232e43586d839789745f4a341f0015293e52667a8e94806b57434f61768ba0937c6753412e1b090000000000001f344a5f73899c87725e4a35210c16233242536476899cafa6917b66503b261100001b30455a6f849987716d6f6f6e6b66615a51473d3123150600000000000000000000000e2034485c7085998d7965513d2915010000000000001d32475c7288907a65503b26120000000000000613212f3f50617386998b77634f3b2712001d32475c7288907a65503b26120000000000000613212f3f50617386998b77634f3b2712001a2f44596e8395806b56412c170200000004192d41566b80948974604b37230f00000000152b4054697d9486705b46321d080000000011263a4f64798e917c6854402c18040000000000001a2f445a6f8497836c58432d18283d51667b9089745f4a36210c000000000000041322324150606f808f9e937d68533e29140000000000000a1b2c3d4e5f6f7d8f9587786b5e524740403e39322a2123282d32373d42474b4e4f504b3f2f1d0a00000013273b4f627588988c8073695f564e47403a342f304256697d92907b66523d281300001f344a5f748991a09c979493919191919291908f8e8d8c8b8a94a3917b67523c27120000152b40546a80937c67523c3b3a3938373634333230465b708699846f5a45301b0600172c41566a809489766351402f2013060000000000000e2134485d71869b87715c47321d000f23374b5e72869987735f4b5063778da29482705d4a37230f0000000000001f344a5f748b9b866f5a45301b060614243547596c8095a9a48f79644f3a250f00001e33485e738898837682868684807b756d645a4e41332415040000000000000000000005192d4155697d9195826c5845311c090000000000001e33485d72888f78634e39240f00000000050e1924313f4d5d6e809194826f5b4834200c001e33485d72888f78634e39240f00000000050e1924313f4d5d6e809194826f5b4834200c001c31465b7086937c68533e291400000000091e32475c708598846f5a45311c0800000000192d43586c8397826c57422d180400000001162b4054697d928b76624e392511000000000000031c31465b708795806a55402b213043576b8095846f5a46311c08000000000000000414233242516170829495806b56402c160000000000031527394a5b6c7d8d958676685a4d4f535655534d463d33271b182025282d3236393a3b372e211100000000182d41566a7d928d7c6e61564c433b332c26201b263a4f63778d95806b56412c1702001d32465a6b758495878686848382807d7c7b7a7978777674768a9e8f79644f3a2510000014293e53687d937c68533e2825242322201f1e1e33485d728895806b56412c1702001a2f445a6f8496826d5a4634221102000000000000091a2b3d5064778c97826d58442f1a00081b2f4256697c8f8f7a6754596c8093a4a08d7a66523e29150000000000001f344a5f748b9c87725d48331e0a000a172a3d51657a90a5a38d77634d38230e00001f344a5f748b9782829596949695908982776c5f5142322211000000000000000000000012263a4e62768a9c8874604c3824100000000000001e33485d7288907965503b261201050a1119212b36424f5d6b7b8c9a897664523f2c1805001e33485d7288907965503b261201050a1119212b36424f5d6b7b8c9a897664523f2c1805001e33485d7288907b66503b2611000000000e23374c61758a95806b56412c1702000000001b30455a6f86947d69543f2a1500000000071c3045596e839786705c47331f0a000000000000081e33485d7288937d68533e32343e4e607387927d6954402c1703000000000000000004142332425165798e98836d58432e1900000000000e2133455668798a9787776758525c63686b6a6861595045392c2b34393c3c3b36302726231b1003000000001b30455a6f8595826e5e50443930271f18110b0c20354a5e738898846e59442f1a0500172a3d4d596e84937c706f6e6c6b6a68686766646362605f70869a8c76614c37220d000013283d52677c937d69543f2a140f0e0c0b0a0d22374c61768b917b67523d281300001c32475c7187917c67533e2a17050000000000000a182738495a6d80938f7b67533f2a1500001326394c5f72869784705d647689908f9595826c58432f1a0500000000001e33485e73889d8b76624d392613131c2734414f63788fa4a18c76604c37210c00001f344a5f748b97828084827d82889099948a7d706150402e1c09000000000000000000000b1e33465b6e83978f7b67533f2b160300000000001c31465b7086937d6955412e1d171a1f252c343e48535f6d7a8a998e7c6b594735221000001c31465b7086937d6955412e1d171a1f252c343e48535f6d7a8a998e7c6b594735221000001f34495e73898f79644f3a250f0000000012273c51657a8f947d68533e291400000000001d32475c7287917b66513c2712000000000c21364a5f738896826c57422d19040000000000000b20354a5f748a917c67564c4749505c6c7d908a76624e3a261100000000000000000000051424364a5f73899a866f5a45301b0000000005182b3d50627486978a79695958646f777d80807c756c62564a3d3e484e5252504b43392e20120300000000001d32475c7187917b67534032271d140b040000071c31465b70869a87705c47321c07000d1f2f42576c82937c675a58575654535352504f4e4c4b586e849989735e49341f0a000011273c51667b91806b56402b16010000000012273c5065798f8c77624d39240f00001d32475c72888f79644f3a25100000000000040f1a2836455566788a9a8873604c38241000000a1d304356687b8e8d7a686e82948278869887725d48331f140d030000001c31465b70859a917c6955433125272f3945515f6d7c8fa4a08b745f4a35200b00001f344a5f748a97826c6e6c686d747c86909b8e806e5d4b3925120000000000000000000003172b3f53677b8f96836e5a46321e090000000000192e43586c829585705d4b3b2e2c2f33394048515a65707d8b998f806f5e4d3c2a18050000192e43586c829585705d4b3b2e2c2f33394048515a65707d8b998f806f5e4d3c2a180500001f344a5f748b8f78634e38230e00000000152b4054697d94947d68533e291300000000001e33485e73899079644f3a25100000000011253a4f64788d947d69543f2a15000000000000000d22374c61768c93807469605c5e636d7a8a94826d5a46331f0b0000000000000000000000071c31465a6f859a88725c47321d000000000e2235475a6d80928e7c6b5b586775828c92959591898074685b4d515b636767655f564b3e30211100000000001e33485d728897826c57422c170a000000000000192e43586d839888735e48331e090001162b40566b80937c6752434240403f3d3c3b3a3837455a6f869a86705b46311c07000010253a4f64798f836d58432e190400000004182c41556a809487725d49341f0b00001e33485e73898f79644f3a250f000000060e17212c384553637384968f7d6a5744311d090000001326394c5e7083968674788c8a77687b8f8b76614d382d282014060000182d42566b8095988572604f413a3b424c56626f7d8c9bab9e89735e49341f0900001e33485d728897826b585754586069727d8a988d7a6855412d1804000000000000000000001024384c6074889c8975614d392410000000000015293e52667a8e8d7a69594b414144484d545c646d77838f9b8e8070615141301e0d00000015293e52667a8e8d7a69594b414144484d545c646d77838f9b8e8070615141301e0d0000001f344a5f748b8f78634e38230e00000000182d42576c8397947d68533e291300000000001f344a5f748b8f78634e39240f0000000014293e53687c92947d68533e2913000000000000000f243a4f64788f9e92867c74727377808b99897764513e2b1703000000000000000000000001182d42576c829689735e49341f00000004172b3e5164778a9482705f5365768694928c8b8b91999286786b5d616e777c7c7973685c4e3f2f1e0c000000001b2f44576a7c88806b56412c1702000000000000172c41566b82978b745f4a341f0a0000142a3f54697d937c67523d2d2c2b29282726252332475c728796826c57422d190400000e23384d62778d86705b46311c070000000b1f33475b708496826d58442f1b0600001d32475c7288917b66523d29160b0e1319212a333e495663718291958472604d3b2815010000000a1c2f415466798c93838295826d607489907b665245413c322415030013283d5165798ea2907d6d5f544f50565f6874808e9ca1ae9c87725c47321d0800001b30455a6f8499846f5a463f444c56606c7a8a9885705b47321d0800000000000000000000091d3145596d8295907c68533f2b1703000000000f23374b5e7185978877695d5656585d62686f77828a95968a7d70615243332312010000000f23374b5e7185978877695d5656585d62686f77828a95968a7d70615243332312010000001f34495e73898f78634e38230e000000001a2f44596e8499937c67523d281300000000001f344a5f748b8f78634e38230e00000000172c41576b8296947d68533e29130000000000000012273c51667b919f9f998f8988888c939d8f7d6b5a4734210e0000000000000000000000000014293e52677b908b745f4a341f0000000c1f33475a6d8294897664525e7083948a7d7774767c869297897a6c72808b91928e867a6c5d4d3c2a180500000015283b4d5e6b737062503c281300000000000000162b40566b82978b74604b36200b000013283e53687c937d68533e291615141312110f21364b5f748a927c68533e2a150000000b20354b5f748a88735e4934200b00000013273a4e62768a907b67533e2a150100001b30455a6f8495806c584533242023282e353d46505b67748290978876665442301e0b0000000000122437495c6f829495908d78655b708695826d5c5a574f4232200d000e22364b5e7286999c8c7d706864656a727b8692988c8fa29b866f5a45301b060000172c40556a7d938975614d3a3139434e5c6b7d9289745f4a341f0a0000000000000000000002162a3e5265798e97836e5a46321e0900000000081b2e415467798b96877a706b6b6e71767c838b94998f85786c5f51433425150500000000081b2e415467798b96877a706b6b6e71767c838b94998f85786c5f514334251505000000001e33485d72888f79644f3a2a1a090000001a2f445a6f869b907b66503b261100000000001f344a5f74898f78634e38230e00000000192e43586e8499937d68533e291300000000000000152a3f54697d948e8c969f9e9d9da19b8f80705f4e3c2a1805000000000000000000000000000f24384c60738589735e48331e00000013273b4f63768a917d6b5953677a8e8b7a6c635f616974808e998b7a82909b918f96988b7b6a594734210e0000000b1e2f404e585e5c524433200d00000000000000162b40566b80958a745f4a35200b000012273c52677b91806a55402b16000000000011253a4f64788e8e78644f3a2511000000081d32475c71878c77624e39251000000a1d3043566a7d928975604c38240f000000172c41556a7d9288756251423635383c42495059636d788592978979695948372513010000000000071a2d3f5164778a9e9b87725d596e84998975706f6b61503d291400071b2f4356697c8fa09b8e837c79797d868f9891867a8ba098836e58432e1904000012273b4f63778c907d6a58463629313e4f6479908b745f4a341f0a00000000000000000000000f22364a5e72879b8a75614d39241000000000001225384a5c6c7c8c988d85828283878b9197978f867c72675b4e41332516070000000000001225384a5c6c7c8c988d85828283878b9197978f867c72675b4e413325160700000000001c31465b7086917c6756483827140100001a2f44596e84998d78634e39240f00000000001e33485e73898f78634e3924150d0b06001a2f445a6f869b917b67523c271200000000000000182d42576c82978879838b9194938f887d70615242301f0d0000000000000000000000000000091d3144566672746b5946311c0000051a2e42566a7d928874614e596d8396826e5c4e4a4d5662707d8f998990998a7d79839099897664513e2b17040000011222303b444847403526150300000000000000172c42576c829788725d48331e08000010263b50657990826c57422d180300000001162b3f54687d9289745f4a36210c000000031a2f44586d83917c68533f2b17040516283a4c5f728696826d5a46311d0900000012263b4f63768a92806f60534a4a4d51565d646c76808b969487786a5b4b3b2a190800000000000000102235475b6e829698836d58576c839892888784806c57422d1800001326394c5f708292a1a097918f90939a968b8073748ba096826b56412c170200000c2034485c6f839688756454473c374154687d9289735e49341f0a0000000000000000000000071b2f43576b8093907c68533f2b170200000000081b2c3e4e5e6d7b8892999797989b96908a837b72695f55493d3123150700000000000000081b2c3e4e5e6d7b8892999797989b96908a837b72695f55493d31231507000000000000192e43586c82968273665644301d090008182d42576c829789745f4b36210c00000000001c32475c7187907a66514233222220190f1a2f445a6f85998f79644f3a2510000000000000071c31465b70859a87706f777c7d7d7a746a5f52433424130100000000000000000000000000000114273848565e5f594d3c2a1600000b2034485d7186927d6b58485d7288907b66523e343a4551607080929e9a8a7a6c6671829294826d5a47331f0b00000004121e283033322d2317080000000000000000192e43586e839887705b46311c0700000e23384e63788d846f5a45301b06000000091d3145596d8397836e5a45311c0700000000152a3f53687c92836e5a4633200f1623344557697c8f8d7966523e2b16020000000c2033475a6d80928e7d70665f5f62656b7178808993998f8376685a4c3d2d1d0c000000000000000005182b3f53667b8f97836e5c576c839597979899846e58432e1900000a1d2f4153647383909ba2a4a29d968d83786d62768ba0947d68543f2a1400000005192d405366788b9382726459504c515f70849886705c47321d0800000000000000000000000014283c5064788c97836e5a46311d0900000000000f2030404f5d6a757d868a8d8b87827c756f675f564d42372c2013050000000000000000000f2030404f5d6a757d868a8d8b87827c756f675f564d42372c20130500000000000000152a3e53677a8f908573604c37220d0e1a242a3f53687d92836e5a46311c0800000000001a2f44596e8394806d6151403637352d20182e43586d83978b76614c37220d0000000000000b20354a5e73889a866f5b626768686560584e413425160600000000000000000000000000000000091b2a3843494a463c2f1e0d00001025394e63778c8a76634f4a5f748a8f78634e39242734425162768ba0947d6b5c53637486998a76624e3a261100000000010c151b1e1d1911060000000000000000031b30455a6f869b866f5a45301b0500000c21364b60768b88725d48331e090000001124384c607488927d6954402b17020000000011253a4e63778b8a7663503d2d24283342526374869885715d4a37230f0000000004172a3d50627385958f83797474777a80868c949a91877c7065584a3c2e1f0f000000000000000000000f23384c60758a9e8c7966566a7a80828283867c6a55412c17000000122435465564727d888d8f8d89827970665b63788ea3917b66513c271200000000102436495b6d7d8f9183766c6561636e7d8f93806b57422e19040000000000000000000000000d2135495d7185998975604c38240f0000000000021222313f4c58626a70757875716d67615b534c433a30251a0e0200000000000000000000021222344554636c6a70757875716d67615b534c433a30251a0e0200000000000000000f24384b5f7183918e78634e3823121f2c373f404e63768a7a67533f2b17030000000000172b4055697d928a806f5d494b4c493e30222b40556a809486715c48331e090000000000000f24394e63778c97836d584e525353514c443b302416070000000000000000000000000000000000000c1b272f3434322a1f11010000152a3e53687c92846f5b474a5f748b8f78634e39241624374c62778da397826b564557697c8f927d6954402b17020000000000000000000000000000000003070a0b0a1e33485d728899846f5a442f1a050000091e33485d72888b76614c38230e0000071a2d4053677b8f8b77634e3a261100000000000b1f33485c708493806d5b4b3e393c4551607080928d7a6754412e1b0700000000000e2133455666768591968d8b8b8c8f949a958e867d746a5f53473a2d1e100100000000000000000000091e33485e73899f9683705d5c676b6c6b6d6f6a5e4d3a2612000000061728374655616b73777877746d665d5352677c91a38e78634e39240f00000000071a2c3e4f6070808e948980797677808d98887663503c281a0a00000000000000000000000006192e4155697d92907b67533e2a160100000000000413212f3b464e565c6063605c58534d46403e3d3830251809000000000000000000000000162b3f52637282725e6063605c585d605f5a53463627180a00000000000000000000081c2f425464737c7d705f4b362122303d4a5356545a6b766d5c4a37241000000000000012263a4e627588988d7863555f625c4e4031273c5165798d7d6a56422e190500000000000015293e52677b9194806a55403d3e3e3c3731281e1306000000000000000000000000000000000000000009141b1f1f1d170d01000000182d42576c82927d695440485e7388907a65503b271222374c62778da398836c57424c60738898836f5a45301c0700000000000000000000000000000810171c1f211f20354a5f748a99846e58432e19030000051b30455a6f848f7a66513d29150101122436495c6f839784705c48331f0b000000000004192c4054677a8d8a79695b524e5157626f7d8e93826f5d4b3825120000000000000416273848586673808991969996928d88827a726a61574d4136291c0f000000000000000000000000041e33485e73899fa08d79665352565756585a574d402f1e0b000000000a192837444e585e6263625f59524a42576b82969f8b75604b36210c00000000000f2032425261707d8993948f8c8d9394897a6a5850463827150200000000000000000000000012263a4e62768a96826d5944301c0700000000000003111d28333b42474b5153524a403c485053524c423627180700000000000000000000001b30455a6e828b745f4b4e53606a7276746e64544536281a0d0000000000000000000012253646556168686152422f2332404e5b676b685e5a605b4f3f2d1b080000000000000b1f3346586a79858575616473776c5e4f4133364a5d707d72614e3b2713000000000000051a2f43586c82968f7a66513c28292927231d150c010000000000000000000000000000000000000000000000000000000000000000001b30455a6f868d77634e3a465a6f85937d6955402c1822374c62778da397826b564144586c809588735e4934200b00000000000000000000000005111b242b3134363430384d62778d99846e58432e1903000000172c40556a7d93806c5844301d0b101f30415366798c907c6855412d19040000000000001124384b5d70829388796d6663666b74808e9787756452402e1b0800000000000000091a2a3a4856626d757c8284827c78736d665f574e443a3024180c00000000000000000000000000001e33485e73899fa996836f5b474042404344423b3022120000000000000a1926323b444a4d4e4d4a453e37475c70869a9c87725d48331e0900000000000314243443515f6b7680868b8d8e8982776a6668635644311d090000000000000000000000000b1f33475b6f839788735f4b36220e00000000000000000b161f2d3e4e5c6568665d514b596468675f544536251200000000000000000000001e33485d72888b76604c5865717d868c898372635446382b1c0c00000000000000000007182837444e53534e4334243342505e6b78827c6a564b483e312110000000000000000316293b4c5b68707067586a808b7c6d5f51433541526168625443311e0b0000000000000a1f34485d72879b8a75614c38231313120e090100000000000000000000000000000000000000000000050c0f0f0e0a040000000000001e33485d728889735f4a3541566b809484705b48342221364b60768ba0937d695c50415165798f8c77624d38230e00000000000000000000000816222e3740464a4b49443d5065798f98836c57422c170200000012273b5064798d8873604d3a291e222e3d4e5f7083968873604d39251100000000000000081b2e4052647484928b827b787a8088929688786858473523110000000000000000000c1c2a3845505a61676c6f6c68645e58524b433b31281d12060000000000000000000000000000001e33485d72889db29e8a76624d392c2b2e2f2d281e12040000000000000008141f28303538383835312a384d61768b9f98836e59442f1a0500000000000006162533475a6c797b74767878746e646e7a7d74604c37220d00000000000000000000000004182c4054687c908e7965513c28130000000000000000001024374a5c6c797d7a6f615969777d7b716353422f1b07000000000000000000001e33485e73888f7a675e6975838f9391959182726456493a2917030000000000000000000a1927313a3e3e3a3125334251606e7c8a97846e5843332b21130300000000000000000c1d2e3d4b555b5b55546a80938c7d6f61534536434e534f45362614020000000000001024394d62778c98846f5b47321e0900000000000000000000000000000000000000000000000000000d18202425231f170d00000000001f344a5f738986705b46313c5064788d8b7764513f2e1f33485c7186988e79756e5f4e4c60758b8f79644f3a25100000000000000000000008172634404a535a5f605e585054687d9398836c57422c17020000000d21364a5e7286907c6957473833363f4c5b6b7c8e907d6a5744311d0a000000000000000011233546566574828c95908f909499908577695a4a3a291706000000000000000000000c1a27333d464d53575a57534f4a443e40403b32261706000000000000000000000000000000001c32475c71879cb1a5917c67523e2916191a18140b01000000000000000000020c151b20232323201c2a3e53677b90a5937d6955402b1601000000000000000f24394e63768a9086796a63605e6e7d8d8f79644f3a250f000000000000000000000000001125394d60758994806b56422d19050000000000000000152a3f5367798b948d806e637688948f82715f4a36210c000000000000000000001c31455a6e83958677737b879489807b828b918374675846331e0a0000000000000000000009151e252829261e2d3f51616f7d8d998b7c6a56422d180f0300000000000000000000101f2d394146464250637688988d8071635445363b3e3b332718080000000000000014293e52677b90927d6955402c1804000000000000000000000000000000000000000000000000000d1d2a34393a38332a1e0f000000001f344a5f748b846e59442f35495d708494826e5c4c3d302e4256697a878270827d6c59485d7288917b66513c27120000000000000000000516263544525d676f7476736c635a6d829797826b56412c1702000000071b2f43566a7d90877564564b484a515d6a798a978573604e3b2815010000000000000000061728384756636f7982939b9d8b847d73675a4b3c2d1c0b0000000000000000000000000916212a32393e4244423e3a39465156554f44352311000000000000000000000000000000001b30465b70869bb0aa95806b56412c17010000000000000000000000000000000000070b0e0e0e0b1c3044586d8296a38e7965503b271200000000000000000f24394e63758492978979695d6d7c8d9d8f78644f3a240f00000000000000000000000000091d3145596d829686705c48331e0a0000000000000000172c42576c8397a99d8a74687d93a6a08e78634e38230e00000000000000000000172b3f53667788958c898e8c82766c666c7a87928576614d38230e0000000000000000000000020b111313112336495c6e808e988a7b6d5e4d3a2713000000000000000000000000010f1b262d30303447596a7988958f82726354433129262016090000000000000000182d42576c82968b77634e3a261100000000000000000000000000000000000000000000000000071a2b3b474e4f4d473c2d1c0a0000001f344a5f748b846e58432e2d415467798c8c7a6a5b4e433d3b4b5d6a716f7c8d89745f4b5b7086937c67523c27120000000000000000001122344453626f7a83898c8880766d72879b97826b56402b16010000000013273a4e60738693837467605d5f656f7a89988b79675644311e0b000000000000000000000a1a29384a5e70828f8886898f82726256493c2d1e0f0000000000000000000000000000030e171e24292d2f2d2d3c4957636b6a6253402d19050000000000000000000000000000001a2f445a6f869aafad98836d58432e1803000000000000000000000000000000000000000000000d22364b5f73889c9d89745f4b36220d00000000000000000b203447576573828f9888776c7b8b9b9a8873604b37220d0000000000000000000000000002162a3e52667a8f8b76624d38240f0000000000000000162c4055697b8d9e96857066798b9b988874604b36210c00000000000000000000102336485a697782888982786f6459525c6976848676614d38230e0000000000000000000000000000000014283d5266798c9388796b5d4f402f1d0b00000000000000000000000000000912181b1b2a3b4c5b6a778591918272604e3a26120c030000000000000000001c31465b70869884705c48331f0b000000000000000000000000000000000000000000000000001024374959636462594b3a27130000001f344a5f7489866f5a453024374a5c6e809088786b605752505257606c7a8a9a8a75604b5b7086937c67523c27120000000000000000081b2e40526271808d979ea09c938a827c8da295806a55402b1601000000000b1e31445668798992857a74727479828c998d7c6c5c4a38261402000000000000000000000013283d51667a8e7d726f768291806c58442f1e0f0000000000000000000000000000000000030a101418202f3d4b5967748280705c48331e09000000000000000000000000000000192e43586e8499aeaf99846e58432e19030000000000000000000000000000000000000000000012273c5065798ea297836e5945311c0800000000000000000417293947556371808f96857d8b9a9e8e7c6a5744301c0800000000000000000000000000000f23374b5f7489907b67523d2914000000000000000012263a4c5e6f808a8577675b6c7c8a867a6a5845311d080000000000000000000007192b3c4b59646e73736e655c51473e4b58657272685946331e0a00000000000000000000000000000000162b40566b808780766a5c4d3f312212000000000000000000000000000000000000000c1d2e3d4c5a6673808b907d6955402b1600000000000000000000001f34495e7389917c6855402c190400000000000000000000000000000000000000000000000000162b3f53667779766956422d190400001d32475c728788725d49341f2d3f5161728291897d726b6766676b737d8a9990826f5b485d7287927c67523c271200000000000000001024374a5d6f82909c928b8b8b8f9695919aaa95806a543f2a150000000000021427394a5b6a7987928f8a88898e95958a7c6e5e4e3e2c1b09000000000000000000000000152a3f546a808974605a64738688725d48331e0900000000000000000000000000000000000000000a1c2e3e4d5b697786928b745f4a341f0a000000000000000000000000000000182d42576c8398adae99846e58432e190300000000000000000000000000000000000000000000172c41556a8094a38f7b67533f2b16020000000000000000000b1b293745536170809193909ba090806f5f4d3b2815010000000000000000000000000000081d32475c708695826c57422d1800000000000000000a1d2f4051616f747067594e5e6c7471685c4c3b28150200000000000000000000000d1e2d3b48525a5e5f5a52493f352d3b48555e5d564a3b2917030000000000000000000000000000000014293d516471716b63594c3e2f2113040000000000000000000000000000000000000000101f2e3c4955616d79867d6a55402b1601000000000000000000001f34495e73828975614d39251100000000000000000000000000000000000000000000000000001a2f44596d838f86705b46301b0600001a2f44596e838c77634e3a26213344546372828e8f86807c7b7c808790968c807263524c61758b907b66503b26110000000000000000172b3f53677a8d9b8c7d7674767a838f9eaca9947d68533e2914000000000000091b2c3d4c5b697580878c8f908f8a82776b5e504030200f00000000000000000000000000152a3f546a80897461575e6f8488735e48331e0900000000000000000000000000000000000000011427394b5c6b7988968f826f5d48331e09000000000000000000000000000000172c41566b8297acaa95826b56412c1702000000000000000000000000000000000000000000001b30455a6f84999a87735f4c38241000000000000000000000000b1a2835435161738699a5a3938372615141301e0b00000000000000000000000000000002192e43586d839786705b46311c00000000000000000011233443515c5f5c5449404e5a5f5d564b3e2e1d0c000000000000000000000000000f1d2a353f45484a453e362c221d2a3743494943392c1d0c00000000000000000000000000000000000e223546555d5c574f463b2e20110300000000000000000000000000000000000000000001101e2b37444f5b67736e604e3b271200000000000000000000001b304355646f746d5a46321e0a00000000000000000000000000000000000000000000000000001c31475c708797826c57422e19040000162b4054697d927d6956422f1c2636455463707b868f9591919295938c83796e62544553677b8f8e78644f3a240f00000000000000001b30455a6e83978f7d6d625f6166718091a3a8937c67523d2813000000000000000e1f2e3d4b58626c7277797978756e655a4e40322212020000000000000000000000000013283d5166798d80726c707c8c836e5a45311c0700000000000000000000000000000000000000081c304356687a89988f80716352402d1905000000000000000000000000000000162b40556a8095aba18f7a66523d291400000000000000000000000000000000000000000000001d32475c71879c907d6a5743301c080000000000000000000000000a1725334456697d91a59585746454443323120000000000000000000000000000000000162b3f54697d9289735e48331e0000000000000000000516253340484a474137303d464a4842392d20100000000000000000000000000000000d18232b313334312b2319100c19262f34342f271c0e00000000000000000000000000000000000005172837424847433c332a1d10020000000000000000000000000000000000000000000000000d1a26323e4a565f5b5042311e0b000000000000000000000014263746525b5f5c4f3d2a170300000000000000000000000000000000000000000000000000001e33485d728897826b56402b1601000011263a4e63778b86725e4c392718273645525e69727a82868887837d7770665c51444a5c6f83978a75604b36210d00000000000000001e33485e73889b8773604f4a4c536273869aa6917b66503b26110000000000000001101f2d3a4550585e626464646b6a61523f3022140400000000000000000000000000000e23374a5d6f808d8683848e897766533f2b1702000000000000000000000000000000000000000d22374b607386958c7d706153453523110000000000000000000000000000000014293e53687c909d9484725f4b37230f00000000000000000000000000000000000000000000001d32475c7287948472604d3a271401000000000000000000000000000715273a4e62768b9b897766564636261605000000000000000000000000000000000011263a4f63778b89745f4a341f000000000000000000000715222c3334322d25202a3234332e261c100200000000000000000000000000000000060f161c1e1f1c160f06000008131b1f1f1b140a00000000000000000000000000000000000000000a19252e33322e2820170c0000000000000000000000000000000000000000000000000000000914202c39444a473e322313020000000000000000000000091928353f464a483e31200e0000000000000000000000000000000000000000000000000000001e33485e738995806a543f2a150000000b2034485c70848e7b6856443221182734414c565f666c7072726e69635c534a3f435566798c9985705c47321e0900000000000000001e33485e738998836d5843343744576a8094a48f79644f3a25100000000000000000010f1c28333c43494d5a6875827d6f5b46321d08000000000000000000000000000000071b2e4051616f7a83888b867a6b5a4836231000000000000000000000000000000000000000000f253a4f64798882796e60514335271706000000000000000000000000000000001024394c6072838882756654422f1c0800000000000000000000000000000000000000000000001a2f44596d808576665543301e0b0000000000000000000000000000000b1f33485c71868a7c6b5948382818080000000000000000000000000000000000000c2034485c6f8285725d48331e00000000000000000000000510191e1f1d19120e171d1f1e1a130a000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000008121a1e1d1a140c040000000000000000000000000000000000000000000000000000000000030f1b273034332b211405000000000000000000000000000a18232b3234332c2113020000000000000000000000000000000000000000000000000000001e33485e738995806a543f2a1500000005192c4054677a8e867361503f2f1f16232f3a434b52575b5c5c59554f484037415161728496907d6a56412d190400000000000000001e33485d728898836c57422d273c51657a90a38d77634d38230e000000000000000000000b16202f3f4e5c6a78869389735e48331e090000000000000000000000000000000011223342515d676f737472685c4d3c2b190700000000000000000000000000000000000000000d22374b5e6e726d655c5042332517090000000000000000000000000000000000091d3043556570726e645748372513000000000000000000000000000000000000000000000000162a3e51616f736758483725130100000000000000000000000000000004192e42566974746d5f4e3c2b1b0a0000000000000000000000000000000000000005192c3f526270726656422e1a0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000a141c1f1e180f040000000000000000000000000000000610171d1f1e190f03000000000000000000000000000000000000000000000000000000001e33485e738995806a543f2a15000000001125384b5e718591806e5d4d3d2f21131d2730373e4246474744403b343643515f6f8090938372604d3a27130000000000000000001c31455a6f859985705b463223384e63788ea08b75604b36210c000000000000000000000215283a4c5d6b7a89978f826e5b47321d080000000000000000000000000000000005152433404b545a5e5f5d564b3e2f1f0d000000000000000000000000000000000000000000081c2f41505b5d5952493f322415070000000000000000000000000000000000000114263747545b5c5a5247392a19080000000000000000000000000000000000000000000000000e213343525c5f56493a2a1908000000000000000000000000000000000013273a4b595f5f5a4f41301e0d00000000000000000000000000000000000000000010223444535d5e5648382613000000000000000000000001070b0e0e0d0a06000000000000000000000000000000000000000000000000000000000000030c1213120e060000000000000000000000000000020a10151a1d1f1f1f1c1916120e0a05000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001d32475c728895806a55402b1601000000081b2e415467798c8c7b6b5b4d3f312519141c23292d3032322f2b323d4854616f7d8e948575645443311e0b000000000000000000182d41566a80948a75614d3a27384e63788e9d88725d48331e0900000000000000000000091e3144576a7b8a998e807062513f2c180400000000000000000000000000000000000615222e384045494a4942392d201101000000000000000000000000000000000000000000001223323f4648453e362d221406000000000000000000000000000000000000000008192936414647453f35291b0c000000000000000000000000000000000000000000000000000415253440484a44392b1c0c0000000000000000000000000000000000000a1c2d3b454a4a463e312312010000000000000000000000000000000000000000000516263541494943382a1a09000000000000000000040d151b202323221f1a140c03000000000002060605000000000000000000000000000000000007152026292722190e0000000000000000000000040d161e252a2e32343434312e2b27231f1a140f080100000000000000000000000000080e11120e0700000000000000000000000000000000000000000000000000000000000000000000000000000000000003080c0f1112110e0b08050100000000000000000000000000000000000000000000001d32475c728897826b56402b1601000000001225374a5c6e80908a796b5d4f42362b21191314191c232a323b444f5a6571808d9385756657473625140100000000000000000013273c5064788c907c69564432394e63788f99846f5a45301b06000000000000000000000e23384d617487958c7d6f6152443422100000000000000000000000000000000000000005111b242b313434342e261c100200000000000000000000000000000000000000000000000514222c3233302a231a1004000000000000000000000000000000000000000000000b19242d3132302b23180b0000000000000000000000000000000000000000000000000000000716232c333430271b0d00000000000000000000000000000000000000000f1d29313434322b21130400000000000000000000000000000000000000000000000817242e34342f271b0c0000000000000000000a1620293035383837342e281f160c01000610171b1b1a140b0000000000000000000000000000071625323b3e3c362b1e0e0000000000000000000b16202a32393f4347494a494643403c38342e29231c150d0400000000000000000004111b232727221a10040000040a0e0f0d060000000000000000000000000000000000000000000000000000000000010a11181d212426272623201d1a16120c060000000000000000000000000000000000060d131b30465b708797826b56412c170200000000081a2d3e5061728393897a6d6053483e352e28272c31373e464e57616c77838f91837566574839291908000000000000000000000d2135495c70839686736150403a4f64799095806b56412c18030000000000000000000011263b50667b8882786d5f5142342616050000000000000000000000000000000000000000000811171c1f1f1f1a130a00000000000000000000000000000000000000000000000000000410181d1e1b160f07000000000000000000000000000000000000000000000000000711181c1d1b170f0600000000000000000000000000000000000000000000000000000000000510191e1f1c140a000000000000000000000000000000000000000000000c161d1f1f1d170e030000000000000000000000000000000000000000000000000006111a1f1f1b14090000000000000000000d1b28333d444a4d4e4c49433b33291e130b18232b30302e281e1102000000000000000000000004152534434f5351493c2c1b0800000000000003101d28333d454d53585c5e5f5e5b5854514d48433d37302820170c010000000000000213222e373c3c362d2115090c171f2324211a100500000000000000000000000000000000000000000000000000000b141d252c3236393b3c3b3835322f2b26211b140b0200000000000000000000000006101921272c30465b708798836c57422c170200000000000f21324454657585948b7d71665b5149423d3c40454b5259616a747d89958d8072655748392a1b0b000000000000000000000006192d405366798c91806e5e504551667b918f7b66523d281300000000000000000000000f24384c606f726d655c4f41322416080000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000e1d2b394550585e6263625d574e463b31251a29363f4546433b2f200f00000000000000000000000e213343526168655a4a38251100000000000413202e3a45505961686d71737473706d6a66615d58524b443c33291f130600000000000e2031404b51514a3f33271b1d2933383a362d22160a000000000000000000000000000000000000000000000006121d27313940464b4e5052504d4a4744403b352f271f150a000000000000000000000b17232d353c4145485c728899846e58432e19040000000000041526374757667585938f83776d645d565251555a60666d757d889194887c6f625547392a1b0c000000000000000000000000001124374a5c6e80918c7c6e6159576a7d938975604c38230f0000000000000000000000091d3042515b5d5951493e31231406000000000000000000000000000000000000000a111516140e05000000000000000000020c131717140f0700000000000000000000010b131717150f06000000000000000000040e1418181610080000000000000000000000060c111416171717171616151312100e0a06020000000000000000000000000000000000020a1014171716130f08010000000000000000000000000000000000000000000000000000000001060a0b0b0a070200000000000000000000000000000000000000050e151818140d0400000000000000000000000b1c2c3b4956626c73777877726a62584e43372b3847535a5b574d3e2c1a0600000000000000000002172b3e5061707d786754402b1600000000031322313e4b58636c757c8287898b888683807b76716c665f584f463c3024160800000000162a3d4f5e66655c5144382c2c3b464d4f4a3f34281b0f0300000000000000000000000000000000000000000917232f3a444d545b6063666766625f5c5955504a433b32281c1002000000000000000c1b2935404950565a5d6173899b866f5a45301b060000000000000819293948576674828f958a8278716b67666a6f747a828991978d82766a5e514437291b0c0000000000000000000000000000071a2d3f51627283938d80756e6c758795826d5a46311d09000000000000000000000001132433404748443e362c21130500000000000000000000000000000000000004111d262b2b2821170a00000000000000061420282c2c29231a0e010000000000000004121e272c2c2a23180b00000000000000071521292d2e2b241b0f020000000000000007111a2025292b2c2c2c2c2b2b2a292725231f1b16100900000000000000000000000000000c151e25292c2c2b28231c140b02000000050b0f0f0e09010000000000000000000000000000040d151b1f21211f1c17110900000000000000000000000000000000081621292e2d292116080000000000000000000617293a4a59677480888d8f8c867d756b6054483c4556656e706a5c4936210d000000000000000000081d32465a6d808f836d58432e1900000000102131404f5c6975808990979b979494979794908c87827a736b63594e42342617070000001c31455a6d7a796e62564a3d37495962645d5145392d21140800000000000000000000000000000000000009182734414c5760686f74787b7c7a7774716e69645e574e443a2e2013040000000000091a2a3947525c646a6f7276798c9c87715c47321c07000000000000000b1b2a39485664717d8993948c86807c7a7d84898f95968d84796f64584c403427190b000000000000000000000000000000000f21334455657483919288838287948b7765513e2b16020000000000000000000000000615222c3233302a22190f030000000000000000000000000000000000000212222f3a40403d34281a0a0000000000031524323c41423e362c1f10010000000000031323303b41423e35291b0b0000000000041525333d42433f372d20110200000000000d19242d353a3e404242424240403f3e3c3a3834302b241c13080000000000000000000004111e2832393e4142403d3730281e1409020e18202425231d14080000000000000000000000000a1620293034363634312b251c120700000000000000000000000000071726343e43423d3326170700000000000000001123354758687786929ca19f9f9a92887d72665a4e50637483877965503b26110000000000000000000b20354a5f748999846e58432e190000000b1d2e3f4f5e6d7a87929c988f88837d808286898d9298958f8880756b5f52443525140300001f34495e73898c8073675b4f42546776796f63574a3e3226190d010000000000000000000000000000000818273645525e69737c848a8e9193908d8a87837d78726a61574b3e31221201000000021527384857646f788084888b8f979e89735e49341f0a00000000000000000c1b2a384653606b7680899097959190949897918a837a70675d52473b2f22160900000000000000000000000000000000000415263747566572808b9598979a8f806d5b4836220f00000000000000000000000000000510181d1e1b160e0600000000000000000000000000000000000000000e2030404c5456514638281502000000000d2032424f565752493d2e1f0e00000000000f2031414e5657524739281603000000000e213343505758534a3e2f200f000000000e1d2b3741494f53565757575756565453524f4d49453f382f25190a00000000000000000514222f3b454d53565756524b443b31261b12202b34393a3830251708000000000000000000000b1a27333d44494b4b494540382f24180a00000000000000000000000012243544515857504435241200000000000000081b2e4052647586969c928c89898c92989084776b605a6d8092927c67523c27120000000000000000000e23384d62778c97836c57422c1700000416283a4c5d6d7c8b98998f857c746d696a6c7074787d8598929a93897d7062534332200e00001f344a5f7386959185796c6053596e838c8274685c4f43372b1e12050000000000000000000000000004152636455463707c8790989b948f8b8c8e919598938d867d74695c4f40301f0d0000000b1e3144556675828c9492909198a5a08b75604b36210c0000000000000000000c1b2836424e59636c757c8287898b8987837c766f665d544a4035291d110500000000000000000000000000000000000000091929384755616d7782878a887d70614f3e2b190600000000000000000000000000000000000000000000000000000000000000000000000000000000000005182b3d4e5e696b635645321e090000000015293d50606b6c665a4c3d2c1a0600000005182b3e4f5f6a6c645746321e090000000015293d50616c6d675c4d3e2d1a0700000b1c2c3b48545d63686b6c6c6c6c6b6b6a686764625e59534c423728190800000000000004142332404d5861686b6c6b6660574e44392d21303d484e4f4c433526140100000000000000000b1a29384550585e60605e5a544c413628190900000000000000000000081b2e4153626d6c6253422f1c080000000000001124374a5d708294988a7d777373777d858e95897d7268778a9d8e7964503b251000000000000000000010253a4f64798f95806b56402b1600000d20334658697a8b9b95887c71697d82766357626e7a8691867d86909a8f8271614f3d2a1704001c30445768778592978a7d71655a6f83949286796d6155483c2f23170a00000000000000000000000010213344546372828e999a908780797576787b80858b929a91877a6d5e4e3d2b1805000013273b4e6173849393867d797c879ba28d77624d38230e000000000000000000000a1824303c46505961686d71737474726d68625b534a41372d22170c000000000000000000000000000000000000000000000b1a293744505b646c7274746b60514232210f00000000000000000000000000000000010a111415151515151515151515151515141009000000000000000d2134475a6c7c8074614c37220c00000000192e43586c7d82786a5b4936220d0000000d2135485b6d7d8275614c37220c00000000192f44586d8083796b5c4a36220e000416283a4a596670787c80828383838282807d7b7977736e675f544637261300000000000011223242505e6a757c8283807a736a60564a3e333e4e5b6364605343311d0900000000000000061828384756626c737676736f685f5346372716040000000000000000000f23374b5e718280715f4b37230e000000000005192d4054677a8d9889796c635e5e6369717a86928f857c84959c88745f4b36220d00000000000000000012273c52677c91937d68533e29140002162a3d50637587989385766a5f6f84927c676673808c8e82746a737c88958f806d5a4733200c001427394a596774828e9b8f83766a65758491978b807266594d4134281b0e02000000000000000000071a2d3f51627282919f93887c736b65606163676b70767d8791988b7c6b5a4835220e0000192d42566a7d9196857569656d8397a5907965503b2610000000000000000000000007131e29333d454d53585c5e5f5f5c59544e473f372e241b10050000000000000000000000000000000000000000000000000b1926333e4851585d5f5f584e423324140300000000000000000000000000000007141e25292a2a2a2a2a2a2a2a2a2a2a2a2a29241d1307000000000013283c5064778a8d77624c37220d000000001a2f445a6f8696897965503b261200000014283c5064778b8d77624c37220d000000001a2f445a6f86978a7965513c2712000c203346586877838d92959798989797969593918f8c88837b726455432f1c07000000000b1d2e3f50606e7c88919697958f877d73685c50444a5c6c777971604d38240f000000000000031424364656657480888b8c88837b7163554533210e00000000000000000015293e52667a8e8f7a66513c271200000000000c2134485c7084978c7a6a5b4f49494e555e68748290989396a295826d5945311c08000000000000000000152a3f54697d94907a66503b261100091e3245596c809295857466595f7389907a6a7784918a7d706356606a7685958a76634f3a2611000a1b2c3b495663707c899594887b6f6573808d999084776b5e5245392c20130600000000000000001124374a5c6e80909d8f82756a6057504b4c4e52565c626a73808d9a8a7764513e291500001c31465b70869a8c79675754697d92a7927c67523d2813000000000000000000000000010c17202a31393f4447494a4a47443f39332b241b11080000000000000000000000000000000000000000000000000000000815212b353d43484a4a453c3124150600000000000000000000000000000006162531393e3f3f3f3f3f3f3f3f3f3f3f3f3f3e383024170800000002192d42566b80938c77624c37220d000000001a2f445a6f8499937d68543f2a14000003192d42576b80948c77624c37220d000000001a2f44596e8499937d69543f2a150014283c50637587959793919393949597999b9da0a2a19c978f83725f4a36210c0000000215283a4c5d6e7d8d9a9d979595989b9086796e61565467798a8f7b66513c27120000000000000f2131425364748492958d8b8b8c8f827262503d2a160100000000000000041a2e43586c8295937c67523c2712000000000013273b5064778c93806e5c4c3d34343a414b5763718291a2aaa18d7965523e2a1601000000000000000000172c41566b82968d78634e39240f001024394d6175899a887766564d62778d8b767a889286786c5f52454d5966778b927d69543f2a1500000e1d2b3946525f6b778490998d8073666f7b889495897c7063574a3d3124170a00000000000005192d405366798c9e8e7d7063584d443c3737393d41474e57616e7d8e95826d5844301b00001f34495e73899a86705d494f64788da295806a55402c170000000000000000000000000000040d161e242a2f32343434322f2b251e181008000000000000000000000000000000000000000000000000000000000000040f1822292f33343431291f130600000000000000000000000000000000122434434d5354545454545454545454545454524c42352616040000081d32465b70869a8a745f4a35200b00000000182d41576b829696826b56412c170000081d32475c70869a89745f4a35200b00000000172c41566b809596826b56412c1700192d42576b80928c827d7b7c7d7d80828487888b8d8f9191908877624c37220d0000000c1f324557697b8c9d948a838080838990978c8073675f718597917b66513c2712000000000005192c3e4f607082939083787474778791806d5945301b0600000000000000091e33485c71879b917c67523c27120000000004192d41566a80938a7663513e2e1f20262e39465363738597aa9a86725e4a36220f00000000000000000000192e43586e83988b75604b36210c00152a3e53677c90907c6a594851667b90867d8b8f8274685b4e41343b495b708697826b56402b160000000d1b2835414e5a66727d8a969184776b6a76828f9a8e8274685b4e4235281a0b00000000000c2034485c70839690806f6052463a3028222224282d333b44505f71859a88735e49341f00001f344a5f748b97826c57424a5e72889c98836e59442f1a00000000000000000000000000000000020910151a1d1f1f1f1d1a16110a0400000000000000000000000000000000000000000000000000000000000000000000050e151a1e1f1f1c150d0200000000000000000000000000000000081c2f425260686a6a6a6a6a6a6a6a6a6a6a6a6a675f534433210e00000b20354a5f74899b86705c47321d080000000014293e52677c9198836d58432e1900000c21364b5f748a9b86705c47321d080000000014283d52677b9198836d58432e19001d32475c708697826e68666768686a6c6f70737577797b7b7c746a5b4834200b00000115283b4e617587999183766e6a6a6e747c869091857a717c8fa08c77624e39240f00000000000a1f34485c6d7d8f8c8072655f5f6b809588735e48331e09000000000000000d22374c60758ba0907b66503b261100000000091e33475c708596826d5a463321100b121c28354555677a8fa3927d6a56422e1b07000000000000000000021b30455a6f869b88725d48331e0900192e42576c82968773604d3f54697d93808e8a7d7064574c453d332f445a6f8597826b56402b16000000000a1724303c4854606c78859195897c6f64707c89959286796c5f524638291b0c0000000011263b4f63778c96847261514235281e140d0c0f13191f273242576c82978b745f4a341f00001f344a5f738997826c574244586d82969c87725d48331e00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000e23374b5f707c808080808080808080808080807b7162503d291400000e23384d62778d97836d58432e1904000000001024394e63778d9a866f5a442f1a00000e23384d63778d97826c58432e1904000000000f24394d62778d9a866f5a442f1a001f34495e738997826b565152535355575a5c5e60626466666761584d3d2c19050000081c3044586b7d92928272645a55555a6069727d8b978d878b9a9986715d48341f0b00000000000b20364b60758382796e61544a54697d9489735e48331e090000000000000010253a4f64788fa38e78634e39240f000000000e23374c61768b8f7a66523e2a170400000a1727384b5f748a9f8b77634f3b271300000000000000000000081d32475c728899856f5a45301b06001b30465b708695806b574342576c8297928679706e6a666059504539445a6f8695806b56402b16000000000006121e2b37434f5b6773808d9a8d8072636b778490978a7d70645647392a1b0b000000162b4054697d938c786654433324170b0100000000040b1f33475b70869a88725d48331e00001d32475c718699846f5b473e53677b909e89735e48331e00000000000000000000000000000002080d1011110e0a030000000000000000000000000000000000000000000000070e141717140f060000000000000000000000000000010910141515131211100d0a060000000000000000000012273c51667a8f959595959595959595959595958f806c57422c17000010253a4f64798f937d69543f2a1501000000000b20354a5f74899b866f5a442f1a000010253a4f647990937d68543f2a1500000000000b20354a5f73899b866f5a442f1a001f344a5f748b97826b56403c3e3e40424447494b4d4f5050524d443b2f1f0f0000000f24384c6073889986746454474040454c56606d7a8a999c9fa6927d6a56422e19050000000000091d324658666c6c665c5053575e6d829687725d48331e080000000000000013283d52677c91a08b76604b36210c0000000012273b5065798f8a75604c38230f000000000c21364b60758a9884705b47331f0c000000000000000000000b20354a5f748996826c57422d1803001d32475c7288917b66513d44596e84998c87888683807a756d635749475c7187937d68543f2a14000000000000010d1925313d4956626f7c8a98908273646672808c998f82746557483929190700001a2f44596e8397836f5c49372515060000000000000617283b4e62768a98836e5945301b0000192e43576c80958a7664544d5161768b9884705b46311c00000000000000000000000000080f161c21252626231e170e040000000000000000000000000000000000000009131b22282c2c2922190d00000000000000000000000009141d24292a2a29272725221f1a140d040000000000000013293e53687d939f9f9f9f9f9f9f9f9f9f9f9fa698836c57422c17000012273c51667b918f7965503b26110000000003071d32475c72889b866f5a442f1a000012273c51667b918f7965503b26110000000204071d32475c72889b866f5a442f1a001f344a5f748b97826b56402b29292b2d2f313436383a3b3b3c3931281e1101000000152a3e53677b8f8f7b695746362b2b3139434f5d6b7b8c9daf9e8a76624e3b27130000000000000316293a49535757575e64686b717b8b95826d59442f1a0600000000000000152a3f54697d949c87725d48331e0900000000152a3f54697d9386705b47321d090000000011253a4f64788e927d6954402c1804000000000000000000000d22374c62778c937d68533f2a1500001e33485d72889079644f42465b70869b928f8f8f90938f89807567584c61758a907a66513c271200000000000000000814202c3844515e6b79899991837363616e7b899793847566574736241200001c31465b7087927d6854402c1a080000000000000614243446586a7d92927d6954402b17000014293d5164788b9382716762656f7d8f8f7c6955402c18000000000000000000000008121b232b31363a3b3b38322b2116090000000000000000000000000000000006111c262e363d41413e362b1d0e000000000000000000000e1b2730393e3f3f3e3c3c3a37332f2921170c00000000000013283d52677c8889898989898989898989898a9897826c57422c17000012273c52677c938c76614c37230e0e101315181b1d32475c72889b866f5a442f1a000012273c52677c938c76614c37220f0f111417191c1e32475c72889b866f5a442f1a001f344a5f748a95806a55402b161416181a1c1f202325262627241e150c00000000071b3044586d829686725f4c3a2818171d26323f4d5d6e8093a796836e5a47331f0b000000000000000b1c2b3742515f6a73787c82868d94877664513e2a160100000000000000172c42576c829798836e59442f1a0600000000182d42576c8297826c57422d190400000000162b3f54687d928b77624e3a2611000000000000000000000010253a4f64798f8f7965503b261100001e33485e7388917b6651565a5c72889c88787878797d85929286756454677b908b76614c38230e000000000000020d161f2830373e454e5c6a7a8c9f91806d5a5d6a7887969385756554412e1b07001d32475c7288907965503b26110000000000000a16233242526375889b8976624e3a261100000e2235495c6e809090837b7779828d9283715f4c39261100000000000000000005101b252e373f454b4f50504d463e3327180900000000000000000000000000000b17232e39424a51565752483b2c1b0a00000000000000000f1e2c39434d5254545352514f4c48433d34291c0e00000000001024394c5e6b7373737373737373737373737d9395806b56402b16000012273c52677c9389735e493423232325282a2d303233485e738899846e58432e19000012273c52677c9388735e493425252526292c2f313334485e738899846e58432e19001e33485d728895806a543f2a150807050306090b0e0f1111120f090200000000000b20354a5e7388937d6a56432f1c0a020a14212f3f5063778ca18f7a67533f2b17040000000000000002162a3d4f60707d878e92908d88827668594835220f0000000000000000192e43586e849994806a55402b1702000000001b30455a6f86947d69543f2a1500000000071b3045596d839786705c48331f0b000000000000000000000013283d52677c918c76614c38230e00001c31475c708695806b5a696f63728899846f6363656973879b93806c5d70839785705c47331e0a00000000000a151f29333b434b53595f64677084999d89745f4c5a6878899b9483715e4a36210d001e33485e73888f78644f3a240f0000000109121c273442506070829392806d5a46331f0b000006192c3e506171828d96908d8e958f8273645342301d0a00000000000000000a16222d38414a535a5f646666615a5044362718080000000000000000000000000e1c2935414c555e656b6b65594a392715020000000000000c1d2d3c4a5660676a6a68676664615d5850463a2c1d0c00000000091d2f404f585e5e5e5e5e5e5e5e5e5e5e677c9394806a543f2a15000415273c52677c9387715c47393838383a3d3f424547484a5f738998836e58432e19000516273c52677c9387705c473a3a3a3a3b3e414446484a4b5f748998836d58432e19001c31465b708695806a543f2a1f1e1c1a181614100d0904000000000000000000000f24394e63778d8d78644f3b271300000003112134495e73899c8873604b3824100000000000000000091d3145596c7d8f8d847d7977736d64594a3b2a180500000000000000001b30455a6f869b907b66513c271300000000001d32475c7287917b67523c2712000000000c20354a5e738897826c57422e19050000000000000000000000162b40556a809488725d49341f0a0000192e43586c8296867164777d69718797826b574e50586d839799846e67798d917d6955412d1904000000020f1b27323c464e575f676d73787c808a9c9f89745f5b60656b7d94a18d79644f3a240f001d32475c7288907b66513c271305090e141c252e394552606e7d8f98877563503d2a17030000000f21334453626f7a83898b89847b7064554636251300000000000000000d1b27343f4a545e666e74797b7a756d6254453626140300000000000000000001101e2c3a47535e687279808277685644311e0a000000000006182a3b4b5a67737c80807d7c7b7976726c63584a3b291704000000001222313c444848484848484848484852677c93937d68533e2913000f21334353667b9187705b4f4e4e4e4e4f5254575a5c5e5f61768c97826c57422c17001022344454667b9187705b504f4f4f4f505356585b5e5f6061768c97826c57422c1700192e43586d8396826b5640363433312f2d2b2825221e19130b020000000000000013283d52677c9188735e4a35210c000000000e23384d61768c95826c5844301c0800000000000000000e23374c6075898d7c706965625f5951473b2c22180c00000000000000001c31465b70879c8c77624d38230e00000000001e33485e73899079644f3a25100000000010253a4f63788d947d69543f2a150000000000000000000000071b2f44596d8397846f5a45301b06000015293e52667a8f8c786d8284726d808479675b5b5b5f6c7d9495826c7385978975614e3a26120000000312202d39444f59626a737a82888e929499949188726a7075797c8597a48f79644f3a250f001c31465b708694806a564330201b1e23293038414c5663707d8d9b8b7a69574533210e000000000415263544525d676f7374736f685f534637281807000000000000000e1d2b3845515d67717a82898e91908a807263544332200e0000000000000000000f1f2e3c4a5864707b858d95958674614d3a2611000000000010233547596978869095949393918f8b878076685846331f0b0000000004131f28303333333333333333333c52677c93927c67523c271200182b3e5161718292877266646363636364676a6c6f72737473798f95806b56402b1600192c3f5162728393877268666464646466686b6e7073747674798f95806b56402b1600172c41566b8297836d584e4b4a48464442403d3b37332d271f150b000000000000172c41566b8095846e5945301b070000000013283c51667a908f7a66523d291501000000000000000512263b5065798f86705e555252504f4d4a453e35291c0d000000000000001d32475c72889d88735e49341f0a00000000001f344a5f748a8f78634e39240f0000000014293e53687c92947d68533e291300000000000000000000000c21354a5e728894806a55412c170200000f23374b5f73879480728890837974727271707070737c8b96887770809191806c5946321e0b0000001121303e4a56616c757d878f969b958f8984807b76777d858a8f929797938d77624d38230e00182d42576b809486725f4e3e313032373d444c545e6874828e9b8d7c6d5c4b3a281604000000000008172634404b545a5e5f5e5b544c413628190a000000000000000c1c2c3b4956636f79858d969b9797999d918272614f3d2b1805000000000000000d1e2d3d4c5a6875828e98a1a4a3917d6955402c170300000006192d4052657688969e948d8887898d9194938776634e3a25100000000000020d151b1e1e1e1e1e1e1e1e273c52677c93907b66503b2611001e33475b6e80909f8e807b7978787878797b80828587898b898694947d68543f2a14001e33485c6e8090a08f827c7b797979797b7c808386888b8c8b8794947d68533f291400162b40566b829686716563605f5d5b5a575553504c47423b32281c0e00000000001a2f44596e8395806b56412c170200000004192d41566b80948974604b37230f00000000000000061523303d52677c938470666667676664625f5a51473a2b19070000000000061e33485e738999846f5a45301b0600000000001f344a5f748b8f78634e38230e00000000172c41566b8296947d68533e2913000000000000000000000012273b5064788d907b66513d2813000000081c3044576b7d928976828f968e8a888887878787888f8e857870808f988674614f3c29160300000c1e2f3f4e5c68737d89929b958e878079746f717a838b929998928c87837d7a6e5d4935200b0014283c5065788c8f7d6c5c4e4545474c51585f67717b8692988b7c6e5e4f3e2d1c0b000000000000000816232e384046494a494640382f24180a0000000000000008192a3a4a586774828c97988e878282858d9990806d5a4734210e000000000000091a2b3c4b5b6a7886939a928f8f9798846f5a46311c070000000d2135495c6f82949a8d8278737074777b8082847c67523c27120000000000000000000000000000000012273c52677c928f79644f3a250f001f344a5f748b93a19e9491908f8f8f8f8f91939290908f8d8d96a1917c67523c2712001f344a5f748a92a19d96939190909090919391908f8f8d8c8c95a2917c67523c2712001b3044586c82978c7d7a77767472706f6c6a6864605c564e453a2c1d0d000000001c31465b7086937c68533e291400000000091e32475c708598846f5a45311c0800000000000005152433414d59677c9385787b7b7c7c7b7977746d6458483623100000000000091f34495e738996826b57412c180300000000001f344a5f748a8f78634e38230e00000000192e43586e8499937d68533e29130000000000000000000001172c40556a7d938b76614d38230f0000000114283b4e6174879382707c8487898c8d8f8f8d8a8682797173828f9b8b7968564432200d00000015283b4d5d6c7986919990888279726c656f7a858e9799928b847d77726d69655d50402d1a06000d2135495c6f83958a7a6c615a5a5c60656c737b858e9893877a6d5e504031201000000000000000000005111b252b31343434312c251c120600000000000000001325374858687685929e92867b726c6b707b8a998a7764513e2a1602000000000415273849596979899792877d797a889989735e4934200b00000013283c5064788c9b8b7b6e645e5b5f63666a6c6e6d614e3a25100000000000000000000000000000000011263b50667b918e78634e38230e001e33475b6d7784968a89888786848382807d7d7c7b797877778b9f8f79644f3a2510001e32475a6c76849588888786848382807d7c7c7b79787776778a9f8f79644f3a2510001f34495e73889c9a93908d8c8988878483807c7975706a61574a3b2a18050000001e33485d7288907b66503b2611000000000e23374c61758a95806b56412c170200000000000012233342515f6b757d908b8e90919392918f8d89827666533f2a1500000000000a1f344a5f748b937c68533e29140000000000001e33485e73898f78634e392414040000001a2f445a6f869a917c67523c271200000000000000000000081c31465a6f849986715d48331e0a000000000c1f3245576a7c8d8d7b6b6f7274767778787774716c6f7a86929c8d7d6d5c4b392715030000001c3045586b7b8a9795877c746d655e6774828d98948d857d767069635d5854514a403222100000061a2d4053657788988a7d746f6f72757a80878f98968c8275695c4f403222130200000000000000000000000811171c1f1f1f1c181109000000000000000000091d304254667687959b8d8074685e57565d6b7b8d94826d5946311d09000000000f21334456677788989082746a646a7d928c77624c37220d000000182d41566b80948f7d6d5e5149464a4e51555758585143321f0b0000000000000000000000000000000011263b50667b918d77624c37220d00182b3e4f5c6e84937c7372706f6e6c6b6a6968676664636270869b8c77624d38230e00182b3d4e5a6e84937c72706f6e6c6b6a696867666463626070869a8c77624c38230d001f344a5f748798978b898b8c8d9093969795928f8b867d7568594734210d0000001f34495e73898f79644f3a250f0000000012273c51657a8f947d68533e29140000000000000b1d2f405161707c88929b9b9793908f8f8d8f8f9090836c57422c1700000000000a1f344a5f748b907a66503b26110000000000001d32475c7187907a6550423221100000001a2f445a6f859a8f79644f3a2510000000000000000000000c21364a5f748995806c57432e1a05000000000215283a4c5e6f829189796c615f6162636363697179838d97998c7d6e5f4f3e2d1b0a000000001f34495e73889a94867669605853657685929b8d80787169625b554e49433f3c372e22140400000010233648596a7a899691888686878a8f959a938b83796e63584b3e3122140400000000000000000000000000000000000000000000000000000000000000001125394c5f728495998b7c6f62564c43414d5d6f82958975604d38241000000006192b3e506273859692827163574f64798f8f78644f3a240f0000001c31455a6f85968371604f40353135393d404243433e342514020000000000000000000000000000000011263b50667b918c76604b36210b000f213142576c83937c675c5b5a58575655545352504f4e586e849989745f4a35200b000e203042576c83937c675b5a58575655545352504f4e4c586e849989735f4a34200a001c314558697c93907973747677797d8285888c90949792877764503c27120000001f344a5f748b8f78634e38230e00000000152b4054697d94947d68533e291300000000000215283a4c5e6f808e9a968e87827d7b7978777878797b7467533f2b1600000000000a1f344a5f74898f78634e39240f0000000000001a2f44596e84937d6c60503f2d19120c04182e43586d83988b76614c37220d0000000000000000010a10253a4f64788e8f7a66513d29140000000000000b1d2f4052637383928a7d756f6c6d6f73777d858d969f94887b6d5f504131200f00000000001f34495e738488827567594c45596e8395988b7c6e645d554e47403a342f2a27231b11040000000006192a3b4c5c6a78848e969b9b9b97928d8680776f665c51463a2e201304000000000000000000000000000000000008121a1e1e1a13090000000000000000162b3f54687c8f998a7a6c5e5145392f2f405266798d907b67533e2a150100000f2336485b6d80919785736353454e63788f907965503b26110000001e33485d7288917b66544231221c2024282b2c2e2e2a221607000000000000000000000000000000000011263b50667b918b745f4a341f0a0003162b40566b80937c67524644434241403f3e3c3b3a445a6f859986705c47311c070002162b40566b80937c675244434241403f3e3c3b3a38445a6f859a86705b46311c070015283c52677c939079645f606365686c7073777a7d8383847d69543f2a150000001f344a5f748b8f78634e38230e00000000182d42576c8397947d68533e291300000000000a1e3144576a7c8d9e90847a726d6866646362636364666157493724100000000000081e33485e73898f78634e38230e000000000000172c40556a7d92897d6e5c4935292620171c2b40556a809486715d48331f0a0000000000000007131e25283d53687c9288735f4b37230f0300000000000012233445556473828f918a85838385888d92999d958c82766a5d4f413223130200000000001b3044566670726e6458493b44596e8289867a6c5e5149413a332c26201a15120e08000000000000000d1d2e3e4c5a67727a82868987837d78726b645c53493f34281d100200000000000000000000000000000000000b1a252e33332e261b0d00000000000000192e43586d83978b7a6b5c4e4033271c23364a5e728796826d58442f1a060004182b3e5265778b9d8c79675645384e63788f917b66503b26110000001e33485e7388937d6954412f1f110b0f1316171919160f0500000000000000000000000000000000000011263b50667b9189735e48331e090000152a3f54697d937c67523d2f2e2d2c2b2a28272632475c718797826d58432e19040000142a3f54697d937c67523d2e2d2c2b2a2827262532475c718797826c58432e19040012273c52677c939079644f4b4d5053575b5e6266696c6c6e6f64513d28130000001f34495e73898f78634e38230e000000001a2f44596e8499937c67523d281300000000001125394d607487998f8072665e5854514f4e4c4e4e4f504e45392b1a0800000000050c1e33485e73898f78644f3a24130e070000000012263b4f637689998c78634e3e3e3b34292f383d5165798e7d6a56422e1a0500000000000008172531393e40556a8093806c5844352c201304000000000005162737465563717d89929798989a9b99958f8982796f64594c3f3123140400000000000014273948545b5c5a52473a2b3f5363707471685c4e40352e261f18110b0600000000000000000000000010202e3c49545f666c7174716d69635d5750483f362c22170b000000000000000000000000000000000000091a293742484842382b1c0b000000000000192e43586e848d7c6c5d4d3e3023160a1b2f44586d829687725d48331f0a000b1f33475b6e829595826f5c4a38384e63788f917b66503b26110000001c31465b70869884705e4d3d2f221509000000000000000000000000000000000000000000000000000011263b50667b9188725c47321d08000013283e53687d937d68533e291918171615131220354a5f7489937d68543f2a1500000013283e53687c937d68533e291817161413121121364a5f7489927d68533f2a15000012273c52677c939079644f3a383b3e4246494d51545757585a544635220e0000001e33485d72888f79644f3a2a1a090000001a2f445a6f869b907b66503b26110000000000162b4054687c9094827061544a433f3c3a383738383a3b3932281c0d000000000c18212633485d71838272604d382928231a0e0000000c1f3346596a7a868676624d53534f473b404c52535e718073614e3b271300000000000004162635434d5353566b828775635350493e312212010000000000091928374653606b757d838687878684807b756e665c52473b2f211304000000000000000a1b2a37414647453f3529233545535c5f5d564b3e30221a120b0400000000000000000000000000000002101e2b37424b52585c5f5c58544f49433c342c231a10050000000000000000000000000000000000000013263847555d5d56493a2816030000000000182d42576b7d7d6e5e4e3f2f20120500152a3e53687c928b76614c37220d0011263a4e62768a9e8c7865523f2d394e63788f917b66503b2611000000192d42576b80928e7c6b5b4d3f33271b0f0300000000000000000000000000000000000000000000000011263b50667b9187705b46311c07000012273c52677c91806a54402b1500000000001025394e63788d8e7964503b261100000012273c52677c91806a55402b16000000000011253a4e63788d8e78644f3a2611000012273c52677c939079644f3a25262a2d3134383c404242434440362817050000001c31465b7086917c6756483827140100001a2f44596e84998d78634e39240f00000000001b2f44596e83978b77645243372f2a2724232223232526241e150b000000000e1d2a343a3c4154646e6d6354433c3e3d362c1e0e00000417293c4d5c697172685960686863594c515e676865626a635544321f0c0000000000000f2233445360686863667476686768655b4f402f1e0b0000000000000a192835424e5962696d6f7070706e6b66605a524940352a1e11030000000000000000000c1a252d3132312b231817273640474a4842392e20120600000000000000000000000000000000000000000e1a252f373e43474a47443f3a352e28211910070000000000000000000000000000000000000000081c304355657171675846331f0b000000000014283b4e606b6c60504030211102000010253a4f64798f8f7965503b261100172b4054697d9296836f5c4936253a4f647990917b66503b261100000014283b4f627586978a796b5d5044382c201306000000000000000000000000000000000000000000000012273c51667b91866f5a45301b06000011263b50657990826c57422c170200000000152a3f53687c9289745f4b36210d00000010263b50657990826c57422d180300000001162a3f53687c9289745f4a36210c000012273c52677c939079644f3a32323130302f2f2e2e2c30383d3d372c1e0e000000192e43586c82968273665644301d090000182d42576c829789745f4b36210c00000000001e33485d72889a86705b4835251b15120f0e0d0e0e0f110f0a0200000000091b2c3b474f524e47535958514549515352493c2c1a0700000c1e2f3e4c565c5c5662717c7d766a5b5f6f7b7d786d5e504637271502000000000000172b3e5162717c7d766a61626f7b7d786d5e4d3b2814000000000000000a1725303c464e54585a5b5b5b5956524c463e362d23180c0000000000000000000000000811181c1d1c170f060918242d3234332e261c10020000000000000000000000000000000000000000000008131b23292e3234322f2b26201a140d05000000000000000000000000000000000000000000000f23374b5f72848575624e3a251100000000000c1f31424f56574f42322212030000000d22374c61768c927c68533e2814001b3045596e83988d796653402d273c51667b91917b66503b26110000000c20334557687989988a7b6e61564a3e312416070000000000000000000000000000000000000000000012273c52677c93846f5a442f1a0500000f24394e63788e846e59442f1a05000000081c3044586d8297846f5b46311d080000000f24394e63788e846f5a442f1a06000000081c3045596d8397846f5a46311c08000012273c52677c939079644f4847474646454444434342444b52524a3c2c1a070000152a3e53677a8f908573604c37220d0000152a3f53687d92836e5a46311c0800000000001f344a5f748a97826c57422d18080004111b20221e170c000000000000001326384a596467635a4e44433e4d5b6568665a4936220e00000011202e3a4347475b6e8090938879676a7d8d948b7c6a57432e1909000000000000001d32465b6e8090938879676a7d8d948b7c6a57432e19000000000000000007131f29323a3f434546464644413d38312b231a100600000000000000000000000000000000000000000000000611191d1f1e1a130a0000000000000000000000000000000000000000000000000000080f15191d1f1d1a16110c060000000000000000000000000000000000000000000000000015293e52667a8f927c68533e28130000000000021423323c41423d32231404000000000a1f344a5f748995806a55402b16001e33485d72889683705d4a3723293e53687d939079644f3a2510000000031628394a5b6a7988958c8073675c4f423425160700000000000000000000000000000000000000000012273c52677c93836d58432e190300000c21374c60768b87725d48331e090000000f23374b5f7388937d6955402c18030000000c21364b60768b87725d48331e090000001024374b5f7388927d6955402c1703000012273c52677c939079645e5e5c5c5b5b5a5a5a585857575f67675a4936220e00000f24384b5f7183918e78634e38230e000011253a4e63768a7a67533f2b170300000000001f344a5f748b97826b56402b16010313222e353733291d0e0000000000001a2e425567767c766b5f50414d5c6b787d7865513d281300000002101d272e344a5f748a9ea697836c70869aa89a86705b46301b06000000000000001f344a5f748a9ea697836c70869aa89a86705b46301b000000000000000000010c161f262b2e303030302f2c28231d160f0700000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000004192e43586c8296947d68533e2913000000000000051420282c2c292014050000000000071d32475c728797836c57422d18001f344a5f748b8c796654412d1a2b40566b80958f78634e39240f000000000b1c2d3d4c5b697684909185796d60524334251403000000000000000000000000000000000000000013283e53687d93836c57422c170200000a1f34495e73888b75604c37220e000005182b3f52667a8f8c77634f3b261200000000091f34495e73888b76614c37230e000006192c3f53677a8f8c77634f3a261100000012273c52677c938f79747373727270706f6f6f6e6e6c6c737a7865513c27120000081c2f425464737c7d705f4b36210d00000b1f33475a6b766d5c4a3724100000000000001f344a5f748b97826c57422d18030e2031404a4c463b2c1b0900000000001f34495d728591897c6e5f4f5b6b7a8a947d69543f2a1500000000000a131e33485d7082949d907d696d80919e93826d58432e1904000000000000001e33485d7082949d907d696d80919e93826d58432e190000000000000000000000030b1116191b1b1b1b1a17130f09020000000000000000000000000000000000000000000000000000000000000000000000000000040b1014171819191715110d08010000000000000000000000000000000000000000000000000000000000040f171c1e1d1a130a0000000000000000091e32475c71869b937c68533d281300000000000000020c131717140d03000000000000011b30455a6f8499846e59442f1a001f344a5f7388806f5c4a3724192e43586d83988d77624d38230e00000009161f262e3d4b596672808c978b7d7061524232200f000000000000000000000000000000000000000013293e53687d94826b56402b16010000061b30455a6f848f7965513c28140000112235485b6e829685715d4834200c00000000061b30455a6f848f7a65513d28140000112336495c6f839685705c4834200c00000012273c52677c93908b8a89898888878786868484848383878f7b67523c271200000012253646556168686152422f1b09010004172a3d4d5a605b4f3f2d1b080000000000001e33485d728899846f5b46311e0a162a3d4f5d61594a38261300000000001f34495e71808f9b8d7d6d5d69798999947d68543f2a1400000000000005192d41536475858980716062728289827463513e29150000000000000000192d41536475858980716062728289827463513e291500000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000911191f25292c2e2e2e2c2a26221c160e0500000000000000000000000000000000050c10131313100c05000615212b3133322e271c0e000000000000000c21364b60758a9f917b66513c271200000000000000000000000000000000000000000000172c42576c8297866f5a45301b001c30455869757062513f2d1a1c31465b70869b8c76604b36210c0000081827333a3e3d3b4855616d7a89978f8070604f3e2b180500000000000000000000000000000000000000152a3f546a8094806a543f2a1500000000182c41566a8094806b57432f1c090e1d2e405264778b917d6955422e19050000000000172c41556a8094806b5743301d0a0f1e2f415365788c907c6955412d190500000012273c52677c919d9d9c9b9a99989898989797979798988f8473614d39240f00000007182837444e53534e433427241d140905121f2f3d474b483e312110000000000000001b2f44596d83978975614d3a28171a2f44596d766755422f1b07000000001b2f425361707d8c9a8c7b6b7788979e8c7965503c27120000000000000011243547586772736d6253546370746f64564634210e000000000000000011243547586772736d6253546370746f64564634210e000000000000000000000000000000000000000000000000000000000001070c0f12131315151514120e0a040000000000000000000000000000000008121c252d33393e41434343423f3b36312a22180e0300000000000000000000000006111920252829282520190f1524333e46484743392c1c0b0000000000000f24394e63788ea38f79644f3a251000000000000000000000000000000000000000000000152a3f546a809487705b46311c0015283b4b59615f53443322101f34495e73899e89745f4a341f0a0001142636454f53524b41434f5d6a7888988f7d6d5b4835210d00000000000000000000000000000000000000162b40556a80947d68533e29140000000013273c5165798e86725f4c39271b202c3b4c5d6f82958975614e3a261200000000000012273c5065798e87735f4c39281c212d3c4d5e7082958874614d3a26120000000010253a4f647785888887868684838383838282828283837c72655544311e0a000000000a1927313a3e3e3a373c3c3831271b15232f383d3e3b332b21130300000000000000162a3f53677b8f907c69574535292331465b7085725e4a36210d000000001225354452606e7b8b9a897a8896a291826f5c4936220d000000000000000618293a49565e5e5a514445535d5f5b52463828170500000000000000000618293a49565e5e5a514445535d5f5b524638281705000000000000000000000000000000000000000000000000000000070f161b20242728292a2a2a2a27231e181007000000000000000000000000000d19252f3841484e52565858585754504b453e352b201407000000000000000000000d19242d343a3d3e3d3a342c21213242515a5e5c564a3a281500000000000012273c51667b91a08b76614c37220d0000000000000000000000000000000004070a0a0a0713283d52677c9388725c47321d000c1d2d3b464c4a423526160d22374c61768c9c87725c47321d0800081c3043546268675d53493f4c5a6a7a8c9c8b7764503c271300000000000000000000000000000000000000172c41566b82937c67523d2813000000000e22364b5f73878f7b6856453630333d4a596a7b8d92806c5945321e0b0000000000000d22364a5e72878f7c6956463731343e4b5a6b7c8d917d6b5845311e0a000000000c2135485a6870727270706f6e6e6c6c6c6c6b6b6b6c6c6860554738271502000000000009151e2528313f4a51514c44392c2433414c5253504537261401000000000000001024384c5f72869887746353463c383c4c6074897965503b2612000000000717263442505e6c7c8d978f98a494847363513f2d1a0600000000000000000b1c2b38434949453e333641484a463f35281a0a000000000000000000000b1c2b38434949453e333641484a463f35281a0a000000000000000000000000000000000000000000000000000006111a232a3035393c3d3e3f3f3f3f3c38332b23190e0200000000000000000003111e2b37424c545c62676b6d6e6e6c69655f5951483e322516070000000000000001101d2a3640484f5253524f483e332a3d50616e7371685744301c000000000000142a3f54687d939c88725d48331e0900000000000000000000000000010a12181c1f1f1f1b16263b50667b9088725c47321d00000f1d2a3237362f24170811263b5065798f9a866f5a45301b06000c21364b5f727d7a70665c52494c5d6f839694806a55412c1701000000000000000000000000000000000000182e43586d83917b66513c271200000000071c3044576b7d92867363544945484f5b687788988774624f3c291602000000000000071b2f43576a7d91867463554a4749505c697889988673614e3b2815020000000005182b3c4b555b5c5c5b6467635a57575757565a6568665a4c4337291a0900000000000000020b192c3e4f5d656660564a3c3342515e6768635543301c0800000000000000081c304356687a8d9282716458514e50596a7c8f7d69543f2a14000000000008162432404e5e6f8295a4a7978776665545342210000000000000000000000d1b272f3434312a21242d3334322c23170b0000000000000000000000000d1b272f3434312a21242d3334322c23170b00000000000000000000000000000000000000000000000000000c18232d373e454a4e51535354545454514d473f362b1f1204000000000000000212212f3c48545f6870777c80838484827d79746d645b4f42342514030000000000000f1f2e3b48535c63676867635c51443745596d808886735f4a341f000000000000162c40566b829698846e59442f1b0600000000000000000000000009141d262d31343434302a253a4f64798f88725d48331e0000000c171e22211b12060014293e53687d9397836c58432d1803000e23384e63788e8d83786f655d5453687c9298836d58432e19030000000000000000000000000000000000001a2f445a6f85907965503b2610000000000014283b4f627587918272655d5a5c636c7887968c7a69574532200d000000000000000014283b4e617486928273665e5c5e646d7988978c7a685644321f0c0000000000000d1e2d394146475668777c766b5e50424c5c6b787d7865513d28190b0000000000000000000c2135485b6d7a7b73675a4b4151616f7b7d735f4b36210c00000000000000001326394b5d6e808f9082756c6563646b778895806a543f2a1500000000000006142230405265798da199897868584837271605000000000000000000000009141b1f1f1c160e11191e1f1d181006000000000000000000000000000009141b1f1f1c160e11191e1f1d18100600000000000000000000000000000000000000000000000000000f1d2935404a52595e636668686a6a6a6866615b53493d302213030000000000001020303f4d5a66717b848b919598999897938e8882776d60524232200c00000000000c1d2d3d4c596570777c7d7c776e6255464a5f74899d89735f4a341f000000000000182d43586c839894806a55402c170200000000000000000000010e1a26303a41464a4a49453d34384e63788d89735e48331e0000000003090c0c07000001182d42576c829695806a55402b1601000e23384d6377828b948c8279706861667b9197836c58432d18030000000000000000000000000000000000071c32475c71878f79644f3a250f00000000000c1f324557697a8b908378726f7176808a978f7d6e5d4b3a28150300000000000000000b1f32445768798a91847973707377808b988e7d6d5c4b39271502000000000000000f1c262d34495d728591897c6e5f4f5a6a7a8994806a543f2a150000000000000000000010253a4f64778b908678695a505f6f808e8d78634e38230e00000000000000000a1c2e40516170808e9388807a78798089968d7a66523d28130000000000000004122336495d72869a8d7b6a5a4a3a2a1a0900000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000e1e2d3b47535d666d73787b7c7d8080807d7b766f665a4e4031200f00000000000c1d2e3e4e5d6b77848f989c9794918f8d8f909193948a7d70614f3c28130000000007192a3b4b5b6a77838c9294928c807264554e63778d96826e5a45311c0000000000001a2f44596e8499907b66513d28130000000000000000000002111f2c38434d555b5f5f5e5950473d4c62778d88725c47321d0000000000000000000000071c31465b70869a927c67523d281300000b20344759656e77828c958c847c76737b918e7a67533f2a150100000000000000000000000000000000000a1f34495e73898e78634e38230e00000000000b1c2c3b4c5d6c7b89958d8786878b92978c7d7060503f2e1c0b000000000000000000021527394b5c6b7a88938e8887888c93968b7d6f5f4f3e2d1b0a0000000000000000000a121f34495e71808f9b8d7d6d5d68788999947d69543f2a140000000000000000000010253b5064768593968878685e6e7d8e9e8d77634d38230e0000000000000000001022334352616f7c889294908f8f93958b7d6f5d4a37230e0000000000000000061a2e43576b808b826f5d4c3c2c1c0c00000000000000000000000000000000000000000000000000000000000000080f1313110c03000000000000000000000000000000000000000000000003080c0f1111110f0d090500000000000000000000000a1b2c3c4b5864707982888d90939494959594908a83786c5e4f3e2d1b080000000517293b4c5c6c7b8995968e88837d7b7977787a7c7d808283806b56402b16000000001224364859697988959a928f8f969183736454677b918f7a67533f2b160000000000001b30465b70869b8c77624d38240f0000000000000000000011202f3d49556069707474736d63594f4c62778d88725c47321d00000000000000000000000b20354a5f73899e8f79644f3a2510000005182a3b48525b646e79859298908b898e9583705e4b3824100000000000000000000000000000000000000d22374c61768c8d77624c37220d000000000215283a4a59676c6b77828a8f9293918d857a6e60514232221000000000000000000000000a1c2d3e4d5c6a7682888e9091908b83796d5f51413121100000000000000000000000061b2f425361707d8c9a8c7b6b7787979e8c7865503c2712000000000000000000000d21354858667483909787766d7c8c9c9986725e4a35200b0000000000000000000415253443515e6a757d84888b898680786d6051402e1b0800000000000000000014283d51647374706252402e1e0e00000000000000000000000000000000000000000000000000000000000006121c232828261f160a00000000000000000000000000000000000000020a11181d212426262624221e1a140e0700000000000000021528394a5a6976828d9698928d8c8c8c8c8c8e9299958a7c6d5c4a3724100000000f223547596a7a8b998d837a736d69666462646567686a6b6c6e64523e2914000000081b2e41536576889894887d787a8490928372636e829687735f4b37240f0000000000001c31465b70879c88735e4934200b0000000000000000000e1e2f3e4d5a67727c85898b8880766c615663788f88725c47321d00000000000000000000000f24394e63778da08b76614c37220d0000000d1d2b363f48515c67748292a4a09fa08c786653412e1b0800000000000000000000000000000000000010253a4f64798f8c76604b36210c00000000081d3145586877806c646e75797c7c7b7771675c5042332414040000000000000000000000000f202f3e4c59636d74787b7b797670665b4f41322313030000000000000000000000001225354452606e7b8b9a8a7a8796a292826f5c4935210d0000000000000000000005182a3a48566472808f95847d8c9b9d8d7b6956432f1b070000000000000000000007162533414d5861696f737473706c645b5042322211000000000000000000000e213446555e5f5c53443422110000000000000000000000000000000000000000000000000000000000000716232f383d3e3a3327190900000000000000000000000000000000010b151e252c3136393b3b3b3a37332e29221a110700000000000c1f32455768788894978d847c787676767676787d86929b8b7967533f2b17020005182b3e5164768898897b70665f5954514f4d4f50525354565758534635230f0000001225384b5e7083949384756a646672808f918274798b93806b5844301c080000000000001d32475c728899856f5a45311c070000000000000000091b2c3c4d5c6b7885909997979993897d7369687c9187705b46301b000000000000000000000013283d52667b909d88725d49341f0a000000000d19232e3c4956606974889bafaa9c87715c493624120000000000000000000000000000000000000014293e53687c928b74604b36200b000000000d22374b607486846e585a6064676d7476736d5f504132241608000000000000000000000000071a2c3d4d5b65686663666665646868605546372614010000000000000000000000000717263442505d6c7b8d978f98a594847363513f2d1a0600000000000000000000000c1c2a3846546170829292909c9f8f806e5e4c3a27140000000000000000000000000716232f3b454e555a5e5f5e5c5751493e32231404000000000000000000000517283743494a484035261605000000000000000000000000000000000000000000000000000000000006162534414c52534f4537271502000000000000000000000000000007131e28313940464b4e5050504f4c48433d362e241a0e0000000014283b4e617486979085797068636060606061646a73839597836e5a45301b06000c2034485b6e82948b7a6b5e534b443f3c3a383a3b3c3e3f40424340362818060000061a2e4154677a8e97867465584f5562708090928689988c7764503c2814010000000000001e33485d728896826c57422d18030000000000000002142738495a6a7a89968e868282848a9391867c778397866f5a45301b0000000000000000000000172c41556a809499846f5a45301b06000000000b1c2d3c4c5a67737c84899a9e968d85735e48331e0900000000000000000000000000000000000003182d42576b82968a745f4a341f0a000000000f243a4f64798f846f5a4f5c697580888c887d6e5f50423426170600000000000000000000000f2336495b6b787d7a6f615868767d7c72645543301d0900000000000000000000000000081624323f4e5e6f8295a4a7978776665545342210000000000000000000000000000c1a283644526374889ba5a29282706150402f1c0a0000000000000000000000000005121e28323a4146494a4947433d352c2114050000000000000000000000000a1926303434332d23170800000000000000000000000000000000000000000000000000000000000113243443525e6668625545321e0a000000000000000000000000000b1824303b444d545b5f6365666664615d58514a41372b1e11010000182d42576b7d928a7d72675d544e4c4b4b4b4c4f5666798f9c88725c47321d070013273b5063778b93806d5c4d45433f39332b23242627292a2b2c2e2b24180a0000000d2136495d7085988c796857473b445262728495999b9985705c4835210d000000000000001e33485e7389937d68533f2a1500000000000000000c1f32445667788997887b726c6b6f76808b98918d9299846e59442f1a00000000000000000000061b30455a6f849995806b56412c17020000000517283a4a5a6a788590989b938a837a71675744301b07000000000000000000000000000000000000091d32465b70869a89735e48331e09000000000f253a4f64798f887462616d7a87939292978d7d6e605244352311000000000000000000000014293e5266788a948d806f62758793908372604c37230e000000000000000000000000000006142130405164788ca09989786858483827160500000000000000000000000000000b18263445576a7d92a5948473635343322211000000000000000000000000000000000b151f262c31343434322e2922190f03000000000000000000000000000009141b1f1f1e1911060000000000000000000000000000000000000000000000000000000000000c1f30425261707b7c73614e39240f0000000000000000000000000c1b2936424d5760686f7478797b7b7876716c655d54493c2f1f0f0000182d42576c7b82776c60554a4039383838393d424f64788f9c87725c47321d0700182d41566a80938c77635b5b5a58534e473f362b201413151617191710070000000014283c5065798d96826f5c4a39293444556677899ca994806a56412d1905000000000000001e33485e7389917b66513c2712000000000000000216293c4e6173859688786a5e57565b636d798796a3a598836c57422d18000000000000000000000a1f34495d72889c917c67523d2814000000000e21344658687888969a908880776f665e5449392815010000000000000000000000000206090d10131723384c60758a9a86705b46321d08000000000d22374c607589918275747d8b91867c7c838f8d7d706253402c180300000000000000000000162b40566b8295a89e8b76677c92a5a18f79644f3a250f00000000000000000000000000000004122235495d71869a8d7b6a5a4a3a2a1a09000000000000000000000000000000000816283b4f63778c998876655545352515040000000000000000000000000000000000020b12181c1f1f1f1d19140e060000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000316293c4e5f70808e917b66503b261100000000000000000000000b1b2a3947535f6a747c84898d9091908f8b87827970665a4d3d2d1c090014293c4e5e696d655a4f43464a4c4c4e4e4e52565e6d7d9298846f5a45301b06001c31455a6f859987716e70706f6c68625b52493e32241607000000000000000000051a2e43576b80948d7966523f2d1b2637485a6c8093a7927c67523c2713000000000000010a1e33485d72889079644f3a2510000000000000000b1f3245596b7d918d7a6a5a4c424147505c69778797a896826b56402b16000000000000000000000e23384d62778ca18d77634e39251000000005182b3e516375879792877d746b635b534a41382b1c0b00000000000000000000050c11161b1e2125282c303e52667a8f96826c57422d180400000000091d3145596b7d8c928a8991897d736968707d8c8f82705b46311c0700000000000000000000152a3f54687a8c9d97867264778a9a998975614c38230e00000000000000000000000000000000061a2e42576c828b826f5d4d3d2c1c0c0000000000000000000000000000000000000c2034495d72878a7b6a58473727170700000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001080f141615120c04000000000000000000000000000000000d203346596b7d8f9e8e78644f3a25100000000000000000000007192939485764717d8890989e9b999795979899958d84786b5b4b392511000d1f30404c5658524b52575b5f6062636363666b727c8b9c8e7b6854402c1702001e33485e738898837783878786827c766e655b4f423425150500000000000000000a1f33485d71869a86725e4a362310192b3d4f63778ca1917b66503b2611000000000007131d2532475c72889079644f3a25190f03000000000013273b4e61758995826f5d4c3c2f2c343e4b5968798b9d947d69543f2a140000000000000000000012273c51667a909d88735f4a35200b0000000c2034475a6d82938f82746a605850473f372e251a0d00000000000000000006101920262b2f33373a3d404549596d8296927c68533e291400000000000216293c4e5f6e7a85898780756b615654606d7a8882705b46311c07000000000000000000001125384b5d6e808a8578685a6b7b89867a6b5946321e09000000000000000000000000000000000014293d51647374706252402f1f0e00000000000000000000000000000000000000061b2f43576a74746d5e4c3b2a1a09000000000000000000000000000000000000000000000000000000000000000000000000050d1113130f0901000000000000000000000000000000010b151c23282b2a2620170c00000000000000000000000000000316293c4f6275899b9885725e4a36210c0000000000000000000113253647576674838f9a968f8a87848280828384868789897968543f2a15000212222f3a414b565f666c707376777878787b80868e9a8f80705e4c39251100001f344a5f748b9782829595939597918a82786d60524333231200000000000000000e23384d61768b94806b57432e1b070d20354a5f748ba0907964503b25100000000008172530393d475c72888f7b66503c352c211304000000061a2e42566a7d928d796552402e1e18212d3b4a5b6d8398927c67523d281300000000000000000000162b40556a809499846f5a45311c0700000012273b4f63778a90807063574d443c342b231b12080000000000000000000917232c343a4044484c4f5255595e6475899d8d78644f3a25100000000000000d1f3041505d687073726b62594e44424f5c6a74706353402c180300000000000000000000091c2e3f50616e7471675a4d5d6b7472695d4d3c2a170300000000000000000000000000000000000e223547565e5f5c534434231101000000000000000000000000000000000000000014283b4c595f5f5a4f402f1d0c0000000000000000000000000000000000000000000000000000010608090806010000000d1821262928241d13060000000000000000000000000008131e2830373d403f3b33291d0f000000000000000000000000000d203346596c80929e8c7a6856422f1b070000000000000000000b1e30435465758593948a827b75716e6c6a6c6d6f70727374766954402b1500000f203141505d69727a8286898c8d8f8f8f90959aa18e7d7064574838271502001f344a5f748b97827d83807c80878f98958b7d706151402f1d0a0000000000000012273c51667a908f7965513c2814000a1f344a5f748ba08f79644f3a250f00000005162635434d53535a6d7d7c705f5350493e3122120100000c2035495d71869985715d49362310040f1d2e43586e84998f7965503b261000000000000000000000192e43586d839794806a55412c1702000000182c41556a7d9385726152453a312820181008000000000000000000000718273540484f54595d6064676a6e727880929986725d4935210c000000000000011323323f4b555c5e5d584f463c31313e4c595f5c534536241100000000000000000000000010223342505b5f5c554a3f4e595f5d564c3f2f1e0d0000000000000000000000000000000000000518293843494a4840352616050000000000000000000000000000000000000000000b1d2e3c464a4a463d31221100000000000000000000000000000000000000000000000000070f161b1e1e1e1b160f060e1d2a353b3e3d393024150500000000000000000000000d1925313b444b5256544f463b2d1e0d00000000000000000000000216293c4f6275899c92806e5c4b3926130000000000000000000215283b4e607183938f82776e66605c59575557585a5b5c5e5f605a4b39261100071a2c3e4f5f6e7a868f959a9795949493939393969a978d8375665644321f0b001f344a5f748a97826b6c6b676b727a858f9a8f806f5e4c39261200000000000000142a3f54687d938b75604c37220e000a1f344a5f748ba08f78634e38230e0000000f22344453606868635f6868606668645c4f40301e0c000011263a4f63788d927d6a55422e1a0600001a2f445a6f859a8d77624d38230e000000000000000000071c31465b70869b8f7965503c2712000000001c31455a6f84907b67554334281e150c0400000000000000000000000012253645535c63696e7276787c8084888d939e8f7c6956422e1a06000000000000000414222e3941474949433c33291f212e3b454a474036271806000000000000000000000000041524323f474a474138303c464a48433a2e211101000000000000000000000000000000000000000b1a26303434332d2317080000000000000000000000000000000000000000000000101e2a323434322a201304000000000000000000000000000000000000000000000004101a232a2f333333302a23181b2c3b485053524d4233221000000000000000000002101d2a37434e5760666b6963584b3c2b1a08000000000000000203030b1f3245596c809297867462513f2d1b090000000000000000000a1d3144576a7d90908070645a524c474442404243444647484a4b473c2d1c0a000f2336495b6d7d8c98938a8582807d7d7c7c7c7d82868d99938573614e3b2713001e33485d728897826c575652575f67717c89978d7b6955412d1904000000000000162b40566b829687725d48331e09000a1f344a5f748ba08d77624c37220d000000172b3e5162717c7d766a5b5f6f7a7d786d5e4e3b28140000152a3f54687d928d78634f3b26120000001b30465b70869b8a745f4b35200b0000000000000000000a1f34495e73899e8974604b37220d000000001f34495e73888d77624d3825160b0200000000000000000000000000001a2e4154636f777d83888b8e9195989c9e988e80705f4d3a271300000000000000000004101b252d3234342f2820160c101d293134332d24180900000000000000000000000000000615222c3334322e261f2a3134332f271d100300000000000000000000000000000000000000000009141b1f1f1e191106000000000000000000000000000000000000000000000000000d171d1f1f1d170e0200000000000000000000000000000000000000000000000815212d373e44484848443e352a26384a596468676051402c1900000000000000000211202e3b4855606a737a807d76695a493725130000000000081117191815283b4e6175899c8c79685645332110020000000000000000001025394d6074889784726153473e38322f2c2b2c2e2f3032333436332b1e0f0000152a3e5266798b9b8c8076706c6a6868676767686b717b899a917d6a56412c18001b30455a6f8498846f5b463d434b545f6b79899985705c47321d08000000000000172c42576c8398866f5a45301b06000a1f344a5f748ba08b75604b36200b0000001d31465a6e8290938979676a7d8d948b7c6b58432f1a0000192e43586d829788725e4935200c0000001c31465b70879c87725c47321d080000000000000000000c22374c61768c97836f5a46311d08000000001f344a5f748b8e7965503d2915030000000000000000000000000000001e33485d71828c92989c9b9895928f8b89847c70615241301d0a00000000000000000000000912191d1f1f1b140d0300000c161d1f1e191106000000000000000000000000000000000410181e1f1d19120d161d1f1e1a140a00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000081726333f4a52595d5e5d5952483c2f425567777d7c6f5c48331e000000000000000211202f3e4c5966727d888f959287776755422f1c080000000c1a242c2e2e2a3144576a7d9293806e5c4a392a261e15090000000000000000162b3f53687c908e7a67545352504b463f382e251a1a1b1d1e1f211e180d0000001a2f44586d82968d7c6e635b5754535352525253575e6a7d9299846f5a442f1a00172c4055697d928a75614e3b2f38424d5b6a7c918a745f4a341f0a0000000000001a2f44596e8499846e58432e1904000a1f344a5f748b9c87725d48331e090000001f344a5f74899ea697836c70869aa89b87705b46301b00001b30465b708698836e59442f1b060000001d32475c728899846e59442f1a050000000000000000000f24394e63788e917c6854402b1703000000001f344a5f748b94806c584532200f000000070f1415120c0300000000001f34495e7282888989888683807c7976736f685e524334241200000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000b151b1d1e1f1f1a1206000000000000000000000000000000000000000000040e161c1f1f1c1710070000000000000000000616263543515c666d7273726d65594d3f485d7185938b745f4a341f0000000000000010202f3e4d5c6977849097908c8f9685725f4b38240f00000a1b2a374043433f3a4d6073889b8976635143423f3a32271a0b000000000000001a2f44596d839788736668686765605b534b41372b1e1104090a0b0904000000001c32475c71879b89745f5047423f3e3e3c3c3c3e424f6479909b866f5a442f1a0012263b4f63778b917d6a5847372b303d506479908b745f4a341f0a0000000000001a2f445a6f869b86705b46301b06000a1f344a5f748b97836d59442f1a060000001e33485c7082949e907d696c80909f93826d59442f1a00001d32475c7288947d6955402b16010000071e33485e738995806b56412c170200000000000000000010263b506579908a75624e39251100000000001f34495d72889c8875614f3d2d1d0f040d1923292a27201507000000001b2f4254636d72747373706e6b6764615e5b554c4134251606000000000000000000000000000000000000000000000000000000000009121719160f06000000000000000000000000000000000000000000000003090c0c080200000000000000000103030301000000000000000000000000000000000000000000000f1d282f323334342e241606000000000000000000000000000000000000000615212b313434312b241a0e00000000000000011224344453616e798288898882776b5d4e4c61768b9a86715d48331e0000000000000e1e2e3e4d5c6b7988958d837b767d908f7a67533e2a16010014273948545858544f56697d9095826d595a5857544e44382917050000000000001e33485d72879984717b7d7d7c79756f675e54493c2f20100000000000000000001d32475c72889d8e796456514f4c4b4a4847464a505a6a7d9298836e59442f1a000c2034485c6f839588766555483e384255697d9289735e49341f0a0000000000001a2f445a6f859a88725d48341f0a000a1f344a5f74888f7b67533f2b1601000000192d40526475858982726161728289837464513e2a1600001e33485d7288907b66513c27120000000a1f34495e7389917c67523d28140000000000000000000010253a4f64798e826d5a46321e0a00000000001b3044596d829592806d5b4a3b2d21171d2b363e3f3b322516050000001325364551595d5f5f5e5b5956524f4c494640392f23160700000000000000000000000000000000000000000000000000000000000e1b252c2e2b2317090000000000000000000000000000000000000000000c161d21211d150a00000000010a1115181918151009010000000000000000000000000000000000000b1d2d3a4447484a4941342412000000000000000000000000000000000000031524333e464949463f372b1e100000000000000c1e3041526271808c969c999a95897b6c5d5065798f927d6a56422e1a00000000000c1c2c3c4c5c6b7a8a92867a706761738896826d59442f1a06001b304456666e6d686460728699917b6b6e6f6e6c6961564735220e0000000000001f344a5f74899782808f9494928f8a837a71665a4d3e2e1e0d00000000000000001c32475c7086999582726a666462605f5e5c5b5f646c778899917d6954402b170005192c3f5365778a948373655a514d526071859886705b46311c07000000000000182d42576c82958c77624d38230e00081d31455869777c705f4c3824100000000011233547576672736d6354546370746f65564735220f00001f344a5f74898d77634e39240f0000000a1f344a5f748b8d78634e392510000000000000000000000d22374b5f70787363513e2b17030000000000162a3e5265788c9c8a7968594a3e332b2c3b4852544f43342310000000081827353e44484a4a484644413d3a3734312c251d120600000000000000000000000000000000000000000000000000091013130f1c2c3841433f35271809000000000000000000000000000000000000000e1d2932373631271a0b000009141e252a2e2e2e2a241d1409000000000000000000000000000000000014273a4b575c5d5f5d52422f1b0700000000000000000000000000000000000e213242505a5e5e5a53493c2e1e0d000000000417293c4e5f7082909c908884858d998b7b6b5c6a7d938b77634f3b27130000000009192a3a4a5a6a798a8f8274685d53596d839787725d48331e09001f34495e7384827d79757b8fa2907d82848484837d7364513e29140000000000001f344a5f748b9782828b8886888e96978e84786a5c4c3c2b190600000000000000192d4256697c8e9d9086807b797775747372707478808996948573614e3a26110000102336485a6c7d8e9284776d6662646f7d8f927d6a56422d190400000000000014293d5165788b8e78634e38230f151616293b4c5a64676051412f1c09000000000617293948565e5f5a514545535d5f5b53473829170500001f344a5f748b8a74604b36210c0000000a1f344a5f748b88735f4a35200c00000000000000000000081c2f41515e6361554534210e0000000000000f2336495c6e8090978777685b5047403b4959666a6152402c18040000000917222a3033343433312f2c2825221f1c1811090000000000000000000000000000000000000000000000000004121d24282824283a4a55585245362718090000000000000000000000000000000000091b2c3b464c4b4438291a090d1b2731393f4343433f3930261b0e01000000000000000000000000000003192e425769727274705e4a35200b0000000000000000000000000000000000162a3d50616d73736f665a4c3c2b18050000000d203346596b7d8f9b8c7d746e707b89978a7a6c738697836f5b4734200c0000000616273748586878898f807063574b4054697d938b76614c37220d001f344a5f748a97928e8a8b9aaa9993969999999791826b56402b160100000000001f344a5f748b97827274726f737a828c9696897a6a594836230f0000000000000013263a4d5e707d8b959a94918f8d8b89888887898e93968e8375665644311e0a000006192b3d4e5f6f808d958a827a7778828e978775624f3b2713000000000000000e2236495c6d7c82725f4b3621232a2b2b262e3c4850524d423324120000000000000b1b2a3843494a463e343641494a474036291a0b0000001e33485d728887725d48331e0d0a0400091f34495e7389836e5a45311c07000000000000000000051524303a414a4e4d4537281605000000000000071a2c3e50617283929687796d635a5450596777806f5b47321d0800000000050f161b1e1f1f1e1c1a1714100d0a060000000000000000000000000000000000000000000000000000000313222f393d3d37314558686d63544536271502000000000000000000000000000000001226384a58606056473726151c2b38444d54585858534c43382c1f100100000000000000000000000000081d32475c7086888976604b36210b00000000000000000000000000000000001c31465a6d80898983786a5a4835210c000002162a3d506376899b8c7c6d61595d6a7888978a7d8291907b6854402c180400000213243445556676868f8070615346393c51667b918f78634e39240f001d32465a6d7c868b8e9097a69a9693918f8d8c8a897c67523e2a150000000000001f34495e738997826b5f5d5a5f666f78839099897765523e2b16020000000000000a1d2f4151606d7982899ba6a19e9b999795938f8c88827a71655748382715020000000e20314151616f7c889295908d8e9493887969584633200c0000000000000006192c3e4f5e696b635443302a363e40403a302b353b3c3930241506000000000000000c1a262f3434312b21242e3434322c23180b000000001b2f44586c80846f5a453022221f170c061d32475c71877c6854402b1702000000000000000000122333424d5557544b3e2e1d0a00000000000000000f213344546473828f978b80766e69656976868a745f4a341f0a0000000000000000000000000000000000000000000000000000000000000000000000000000040c111313100c09060e2131404c52524b414c61758272635444321e0a00000000000000000000000000000000192d415568757465554432212a3a495660686d6e6d6860554a3d2e1f10000000000000000000000000000c21364b60748a9d89745f4a341f0a00000000000000000000000000000000001f344a5f74899d9e968977644f3a251000000a1e3245596c809391806e5e4f454c5a69798a9b8f929c8874604c3824110000000f2031415263738490807061514335283a4f64798f907b66503b261100172b3e4f5e6a71767879909b88827d7b79777674736e5f4d3925100000000000001c31465b708698836e5948454b525c6671808e95826e5a45301c070000000000000012233343546473828d98918c89878482807c7977736d665e5448392a1a09000000000213233342515e6a757d858a8c8c888076695b4b3a28160300000000000000000f2131404d54575145362e3b485256554d4132212627241d130600000000000000000009141b1f1f1c170e111a1f1f1d181006000000000015293d50616f74675440323737332a1d0e1a2f44586d8074614e392511000000000000000000091c2f41515f6a6c675c4c3a2612000000000000000004152636465563717d8a95938a837d797b879589745f4a341f0a000000000000000000040b11151719181715120e09020000000000000000000000000000000a162026292825211e1b182b3e4f5e67675e5151667b908272614d39240f000000000000000000000000000000001c31465b7085847361503e2c35475867737c8384837c72675a4c3d2e1d0c0000000000000000000000000f24394e63788d9d88725d48331e0900000000000000000000000000000000001f344a5f748ba0aea6917b66503b261100001125394d6175899a8774615040323c4b5b6c7d8fa1a596826d5945311d090000071a2c3e4f5f7082918372615142332523384e63788f927c67523c2712000e2031404d575d61667b9198836d68666462605f5e5b5041301d0a000000000000192d42576b809588725e4b37373f4954616f829488735e49341f0a0000000000000011263a4d607283928f857c7773706e6c6a6865625e5a5e5c5243311e0c00000000000005152432404c58616a70747777736d63584b3d2d1d0b0000000000000000000313222f3a40413d34303e4c59666b695f4f3d2915120f0901000000000000000000000000000000000000000000000000000000000000000d203243525c5f584a3b464c4c473b2c1e152a3e51616c675745321e0a0000000000000000001024384c5e6f7d837a6955402b16000000000000000000081828374553606c77828a9297939090988e7d6c5945311c0700000000000000020d171f252a2c2e2e2c2a27231d160f060000000000000000000000000a1928333b3e3d393633302c33475a6d7c7a7060546a80949079644f3a250f000000000000000000000000000000001d32475c728791806d5c49373f52647685909799979085786a5b4c3b2a1806000000000000000000000011273c51667b909a86705b46311c0600000000000000000000000000000000001e33485d7184929a9b8a77624e39240f0001172b4054687c91927d6a574433222d3d4e60718497a8937c68533e2a16020000102336495b6d7d8f897665544434241523384e63788f937c67523c271200031322303a434851667b9195806b56514f4d4b4a48463e3223130100000000000014283d5165798e8e7a675442322c3743516479908b745f4a341f0a00000000000000172c4055697c908f7d7268625e5b59575553505a656e7370614e3a2510000000000000000615222f3b454e555c65738080725f4a3b2d1f0f000000000000000000000004121d262b2c2931404e5c6a77827d6c58442f1a050000000000000000000000000000000000000100000001070a0b0b060000000000000315253440474a453b4a586161594a3c2d1f2133435157544939281502000000000000000000152a3f53687b8e95806a55402b16010000000000000000000a192836434f5a646e767d84888b89857c70604f3d2a160200000000000007141f2a333a3f424343423f3b37312b22190f0300000000000000000004162737454f53524e4b4845413e4c61768a8e7b66576c82978e78634e39240f101212120f08000000000000000000001a2f44596d83968b79665442465a6e82948b89898d959789796a5947352310000000000000000000000012273c52677c9395806b56422d18040000000000000000000000000000000000192e415466758086877c6c5a47331f0b00081c31455a6e83978a75624e3b27151f304254677a8fa3917b66513c2712000000162b3f5366788b907d6b59473626160d22374c62778d937c67523c2712000004121e272e3c52677c93937d68533e3a38363433312b211405000000000000000e22364b5f728697847160504136303e52677b918a745f4a341f0a000000000000001b30455a6f8498867160554e4946444241505e6b7782897c67523c2712000000000000000004111d2b3c4b59677584918d77624c37220f01000000000000000000000000000a11161f31414f5e6c7a889587705b46301b060000000000000000000000000000070e131516151210161b1f21201b120600000000000716222c3334314155687576685a4b3d2f2225333e4240372b1b0a00000000000000000000172c42576c82978e7a66513d281300000000000000000000000a1825313d48515b63696f72747470695e514232200d000000000000071625313d464e545758585754504c463e362b20140700000000000000000c2033455563686763605d5a57535063788f917b66596e84998a75604b36212325272727231b11030000000000000000162a3f53677a8f9684715f4c4a5f74898d78737378828e9888766553402d1a060000000000000000030713283e53687c93907b66513d28130704000000000000000000000000000000001225374857626a70706b5e4e3d2b1804000c21364a5f748997836e5a46321f0b1325384b60758ba0907b66503b26110000001c30455a6e83968773604e3c2a19080e23384d62778d947d68533e2913000000010b14273c52677c93907a66503b2623211f1e1c170f040000000000000000071b2f4356697c8f8f7d6e5f534a454b5b6d829687725d48331e08000000000000001e33485d728898836c574c4746474a4e545f6e7c89958d7965513c2711000000000000000000112437495a697786949183725f4b36210c00000000000000000000000000000004172a3d4e5f6d7c8b988d7d6c59442f1a0500000000000000000000000004101a22282b2b2a27252a303436352e24160700000000000510191e1f30455a6f858778695b4d40322321292c2b241a0d0000000000000000000000172c41566b7d8882705e4b37230e0000000000000000000000000714202b353e474f555a5d5f5f5b554c4133241403000000000006162534424f5962686c6e6d6c6965605a51493e322516070000000000000612273b5063737d7c7875726f6b686564798f917b665c70879b87715c473835383a3c3c3c382e211201000000000000001024384b5f7286998f7c69564a5f748b8d77625e656f7d8d94826f5c4936220e000000000000040e171c1f293e53687d948d77634e39241f1c1915100a03000000000000000000000000081a2a39454f565b5b574e4030200e000010253a4f64788e927c68543f2b17030a1f344a5f748ba09079644f3a250f0000001f34495e7388937d6a5743311e0c000e23384e63788f937c67523d2813000000000012273c51667b918d78634e39240f0c0a080300040707070500000000000013273a4c5f7082938d7d70665e5a5d69798b95826d59442f1a05000000000000001e33485e738899857367605c5b5c5f6268717d8c9a91826f5d4a36220e0000000000000000061a2e415466788796908272655542301c080000000000000000000000000000000c2034475a6c7d8c9a8c7d6f604f3d2a160100000000000000000000000514222d363c40403f3c3a3f44494b4a413425140200000000000004091b30455a6f849788796b5e50423223151716110800000000000000000000000013283b4e5f6d736f6253412e1b0800000000000000000000000000020e18222b333b4045484a4a4641392f2315060000000000011224344352606c767d828483827d79756d655b4f4334251505000000000a18232b3f54697d92918e8b8884827d7a777d93917b686373899b866f5a524d4a4c4f5152514b3f301f0c00000000000000081c2f4356697c90998673604e5e73898f7a6551525f6f80938c7965513c281300000000000514212b31343340566b80958b76604b373634312e2a251e160c0100000000000000000000000c1b28333b424646433b30221202000013283d52677c928d77634e392511000a1f344a5f748ba08f78634e39240f0000001f344a5f748b8f7964503b271401000f24394e63788f907b66503b2611000000000010263b506579908b75604b36210c0000000912191c1d1c191207000000000a1d2f4153647485938e8379736f717a88978c7966523e2a1601000000000000001c31455a6e829592857b7572707273777c858f9c9183736352402d1a0700000000000000000b1f34495d7084968d80716355473725130000000000000000000000000000000011263b4f637689948a7b6d5f514232200d0000000000000000000000021323323f4a51545654514f53595e605e5243321f0b0000000000000000182c4055687b8c988a7c6e60514232210f0000000000000000000000000000000c1f30414f5a5e5b524435241200000000000000000000000000000000050f181f262c30333434322d261d12060000000000000b1e30415261707d899297999897938f8982786d605243332211000000081928363f4454697a8084898d91959693908d8e9c92837d77778c9c87706b66625f62646667665d4e3b2814000000000000000013263a4d60728698907d6a585b6f8495806c58445163778b94806b56412d1800000000011323323e464a4847586d839889745f4d4c4b4946433e3932291e110300000000000000000000000d1c293237383630281e1204000000162b40556a809589735e4a35200b000a1f344a5f748ba08d77634d38230e0000001f34495d72868d7865523e2914000012273c51667b918f78644f3a240f00000000000f24394e63788d89735e48331e0900000e1b262d3232322e2518090000000012243646566674828f968d8886868d988e7d6e5c4936230f0000000000000000162b3f5265778896988f8a888787898c9298968c80736455453423110000000000000000000d22374c627788837a70615345372919080000000000000000000000000000000013293e53687d8780776b5d4f413324140200000000000000000000000d1f3142505c656a6b696664686d737670614e3b261200000000000000001125394c5d6e7d8c998c7d6f60503f2d1a060000000000000000000000000000011323313d4548474034261706000000000000000000000000000000000000040c12171b1e1f1f1d18120a000000000000000215283b4d5f70808f9c9f9894919395999d958b7d706151402e1c0900001325374653595a5d666b6f73787c8084888c9198a89f97928d8a969d8b86807b777477797b7c7a6b58432e1900000000000000000a1d304356697b8e9b88756255697d928874614f485d728899846f5a442f1a000000000b1e3041505a5f5e5c5b70869b8973636362605e5b58534d463c2f211100000000000000000000081a2b3a464c4e4b4336271604000000172c42576c829786705b46311c07000a1f344a5f748ba08c76614c37220c0000001b2f4356687884806b56402b160100152a3f54697d948d77624d38230e00000000000c21364b60758b8a745f4a35200b000f1e2c3841474747413627160300000006182838485664707c868d9294948f887c6f60503e2d1a0700000000000000000f233648596977848e959a9d9c9c9b97918a83796e625546372716050000000000000000000b2034485c6d736e665d51433527190b000000000000000000000000000000000011263b4f6270726c645a4d3f3123150600000000000000000000000015293c4f606e7980827d7b797c83888c7d69543f2a150000000000000000091c2e3f505f6d7a88948e7d6e5c4935210d0000000000000000000000000000000413202a3133322c2317080000000000000000000000000000000000000000000000000000000000000000000000000000091d3144576a7c8f9e958b847d7c7c80848a939c8f806f5d4b39251200001a2e4255646d6f6d68625b5f63676b6f72777b8d9f8d8b8f93979ea99e9a95908c8b8c8f9193866f5a442f1a0000000000000008101526394c5e71839692806c59627589917d6c5b4c5e738999856f5a442f1a0000000012263a4d5f6d73737070788b9d88787877777673706c6861594d3f2f1d090000000000000000001124374958616360544533200d000000192e43586d8398846e59442f1a05000a1f344a5f748b9e89735f4a341f0a0000001326394a5a676f6f61503c28130000182d42576c82978b75604b36200b0000000000091e33485d71878d77634e3a26130f1e2d3c4a555c5c5c5445331f0b000000000b1b2a3946535f6971787c7d807b746a5f514232210f00000000000000000006192b3b4b5a66717a828688898886827c766f665c5145372819090000000000000000000005192d3f4f5a5e5a534a41342617090000000000000000000000000000000000000c1f3244535c5d5850473d2f211304000000000000000000000000001b3044586c7d8c9496949190928b86837866523d2814000000000000000000112132414f5d6a76828e8c7864503b251000000000000000000000000000000000020e161c1e1d1810050000000000000000000000000000000000000000000000000000000000000000000000000000001024394d6074889a9284786f6967686a6f76828e9d8d7a6855412d1904001e33485d728386827c767068615a565a5d62778d9a8575797d838f9e90909496979898989791826d58432e19000000000007121b242a2e2f415466788b9c897663596c80918a796a5e66798e95806c57422d1800000000162b4055697d898987868a97a0908f8f8d8d8b8986827c756b5d4c392510000000000000000000162b40546775787263503c28130000001a2f445a6f8699846f5a442f1a05000a1f344a5f748b9a86705b46311c07000000091b2c3c4a545a5a524333200d00041b30455a6f859988735e48331e090000000000041a2f43586d82927d69564330211d2d3c4b5a68707271624e3a251000000000000c1b28364a5e6f777067696a6660574d4133241404000000000000000000000d1d2d3c49545e666c70727372706d68625b53493f3327190a0000000000000000000000001021313e4648453f372e2316080000000000000000000000000000000000000003152635414748443d342b1f110300000000000000000000000000001e33485e73889c9e968d87888f79706d665a4a37230f000000000000000000041423313f4c5864707c897965503b261000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000162a3f53687c90958373665b545253555b637080909885705c47321e09001f344a5f74899a97928b847c756e68646162778d97826c6569778d93807b7d8283838383837d7263513e2915000000000b18242e383f434444495b6d809293806c5a61748697897b727584968c7965513d291400000000172c42576c82898b8d939fa7a9a2a1a1a3a2a09e9b9691897b68533f2914000000000000000000192e43586e838e806b56412c170200001a2f445a6f869b87705c47321c08000a1f344a5f748b93806b56422d1804000000000e1e2c374045453f3425150300091e33485d72889b86705b46311c07000000000000152a3f53687c918672604e3f322d3b4b5a697885887b66503b26110000000000000f24394e63788d80716355514c443b302315060000000000000000000000000f1e2b37414b52575b5d5e5d5b58534e473f362d221609000000000000000000000000000313202b3133312b241b11050000000000000000000000000000000000000000000817242d32332f2921180e010000000000000000000000000000001e33485d72858d8a8279727484826e5d534a3c2c1a07000000000000000000000413212e3b47525e6b746b5c4936220d00000000000000000000000000000000000000000000000000000000000000000000000000060c111416171717171616151312100e0a060200000000000000001a2f44586d83978a77655549403c3d4047526173869a8a75604b36210c001c3146596c7c8891989e98908a837d7876767a8e95806c6464788f937c67696b6c6c6c6c6c6961544534210e0000000c1b2936414b53585a5a5550627486988a76635668798a988e88889392826f5c4936220e00000000152a3e5162707374778291a4998d8c8c8e8f9090908d8b867a67533e29140000000000000000001b30465b708698836c57422c170200001a2f44596e839889745f4b36210c04091f34495d7080867663503c28130000000000000e1a242c30302b22160700000c21364b60758b98846e59442f1a040000000000001025394d61758a8f7d6c5d4f45404b59697888978a76624d39240f0000000000000f24394e63788d9082736558493b2c1e120500000000000000000000000000000d1a252e373e424648484846433f39332b231a1004000000000000000000000000000000030e171c1e1c1710080000000000000000000000000000000000000000000000000611191d1e1a150d0500000000000000000000000000000000001b2f4356667377756e665d66778b7b6a56422e1e0e00000000000000000000000003101d2935414d595f594d3e2c1a06000000000000000000000000000000000000000000000000000000000000000000000007111a2025292b2c2c2c2c2b2b2a292725231f1b1610090000000000001d32475c718796826d5a48372c27282c3443576c82968d77624c37220d00162a3d4e5e6b757d848a8f939797928e8c8c8c999c897979798092937c6763625f6267706c615244362717050000091a2a3947535e676d6f6f6a6259687a8c93806c595b6b7987929a999083736352402d1a06000000000f223444535c5e5f6474899e8c7a76777879797979787671695c4b3824100000000000000000001d32475c718798836c57422c17020000162b4054697c908e78634e38251f170c1a2e4152626e7168594734200d000000000000000811171b1b1710050000000f24394e63788d96826b56412c17020000000000000a1e32465a6d82948b7b6d6159565c6977889792826e5b47331f0a0000000000000c2135495d70839391847567594a3b2b1a0700000000000000000000000000000008121b23292e31333333312e2a251e1810070000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000013263848565f62605b52495b6f8386725d4a36210d00000000000000000000000000000c17232f3c464a453c2f200f00000000000000000000000000000000000000000000000000000000000000000000000d19242d353a3e404242424240403f3e3c3a3834302b241c1308000000001f344a5f7489907b66523e2b1912131b2d40546a80958d77624c37220d000d2030404d5861696f75797d8386898d909499a4a797909090909d937c7b787774777b8480705d4934200a000003152738485765717a8286847d756a5e6f8292897663505c69758086857d726556463422100000000000051626354047484a5b708798836f6062636464646463605c564b3e2e1b080000000000000000001d32475c728897836c57422c170200001126394d6073848a77624d3c39332a1e12233444515a5c564a3b2a170400000000000000000000000000000000000012273c51667b90937d68533e29140000000000000003172b3e51647689998b7d746e6b6e79889694857463513e2b1804000000000000061a2e4153647484919486776859493724110000000000000000000000000000000000080f14191c1e1e1e1c1915100a040000000000000000000000000000000000000000000000000000000000000000000000000000060c1116191c1e1f1f1f1c1914100b0500000000000000000000000000070b0d0c07000000000000091a2a38434a4c4b463f4054687c8d7864503b261100000000000000000000000000000006121e2a323431291e1102000000000000000000000000000000000000000000000000000000000000000000000e1d2b3741494f53565757575756565453524f4d49453f382f25190a0000001f344a5f748b8d77624d3b312b27242a394a5c6f83978a74604b36200b00021222303b454e555b6065696d7074777b8086989c959190959eac9b93908e8c8b8c90978875604b36200b00000d203244566675838e94949892887b6d63758793806c594b58636b6f6f6a615547382817050000000000000817232d3134495e7388947d69554c4e4f4f4f4f4e4b4842392e20100d0f10100b02000000001e33485e738997826b56402b160100000a1e3144566573766b5a50524e463c2f21303d49515351483b2c1d0c00000000000000000000000000000000000000152a3f54697d948f7965503b261100000000000000000e213447596b7c8d9b91888382838b9891847566564534220f000000000000000011243647566573808d9687776654402c180400000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000009121a20262b2e3133343434312e29251f19130c05000000000000000009141b2022211b120600000000000c1b27303537363235394e63778d7d68543f2a1400000000000000000000000000000000000d171d1f1d160c00000000000000000000000000000000000000000000000000000000000000000000000b1c2c3b48545d63686b6c6c6c6c6b6b6a686764625e59534c423728190800001f344a5f748b907c69594d453f3c3a3c485768798c9985705c47321d08000004121e28323a40464b5054585c5f63666b82978c827b7b828e9e92909090909090908878695946321d08000014293c4f62738594887d7d848c978c7b6a687a8c897663514650575a5a564e4337291a0a000000000000000406111921364b60758b917c67523c383a3a3a3a3836332e261c191e222426251f15080000051e33485e738995806a55402b160000000114273847565f615a5a646762594d3f313f4e5b656865594835210d00000000000000000000000000000000000000182d42576c82978c77624d38230e000000000000000005182a3c4d5e6e7c8a959c989798948a8073665748382716050000000000000000071829384755626f7b879384705b46311c0700000000000000000000000000000000000000000000000000000000000000000000000003080d10121416161613100b0702000000000000000000000000000006121c252e353b3f4346484a4a4a46423e39342e272019100600000000000b1a262f3437362f241607000000000009141c2022303e494c4a5f7389806b56402b16010000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000416283a4a596670787c80828383838282807d7b7977736e675f544637261300001f34495e73889987776a605954514f4f5966758697907c6955412d1904000000010c151e262c32373b3f43474a4d566b829788726766708396837979797979797977695a4b3b2a170300001a2f43586c80918c796a69707986958875626e8092826f5d4c3c424444413b3126190b0000000000000912191b191422374c62778c917b66503b262525252523211e1b22282e33373a3b393226170600091e33485e738995806a543f2a1500000000091a2938434a4c5769777c766b5d4f404d5d6c797d7764503b2611000000000000000000000000000000000000041b30455a6f849988735e49341f0b0000000000000000000d1e3040505f6c7782878b8b8780776d625548392a1a0a000000000000000000000b1a293745515d69758283705c47321c07000000000000000000000000000000000000000000000000000000000000000000010911171d2125272a2b2b2b2825201b16100a04000000000000000000000917242f3941494f54585b5d5f5f5f5b57534e48423b342d23190c0000000517293843494c4a423425140200000000000007172a3d4e5c625a5c7288826b56402b1601000000000000000000070d1216181a1a1a191714100b0400000000000000000000000000000000000000000a121616130d04000000000000000c203346586877838d92959798989797969593918f8c88837b726455432f1c07001c31465b70859a95887c746d696664646b768594958572604d3a2612000000000000020a11181d22262a2e323540566b8297836d595d71868f7a66646464646464645a4b3c2d1d0c0000001e33485d72879a86705c545c687688927d696274868c7a695847362f2f2d271e14080000000000000c1a262d302e2826374c62778d917b66503b261d1e1e1e20242a30363c42484c4f504e44352311000a1f344a5f748b94806a543f2a1500000000000b1a2630364a5f738691897b6d5e4e5b6b7b8a937d68533e2913000000000000000000000000000000000000091e33485d728899856f5a45311c0700000000000000000001122232414e5a646d727474726c645a5044382a1b0c0000000000000000000000000b192734404c586470716454412d190400000000000000000000000000000000000000000000000000000000000000000a141d252c32363a3c3f4040403d3935302b251e181008000000000000000a192735414c555d63696d7072737473706c68625d56504840362a1b0a00000d213447565e625f5243311e0b000000000000091d32465a6c776a5f7389806a55402b16000000000000000009131b21272b2d2f2f2f2e2c29251f1810060000000000000000000000000000000002101d262b2b2820160900000000000014283c50637587959793919393949597999b9da0a2a19c978f83725f4a36210c00182d41566b8094a59a9088837d7b79797d8995958777675543301d0a00000000000000000003080d1215191d2b40566b82947d695464788c8974604f4f4f4f4f4f4f483c2d1e0f000000001f344a5f748a98836c58434a596a8094846e5967798b8776655443332318130b02000000000000081a2a384146433c3b3b4c62778d937c67523d333233333335393e444a50565c6164656153402c18000a1f344a5f748b947d68533e2913000000000000091420354a5f72828f9a8c7c6c5c69798a9a927c68533e28130000000000000000000000000000000000000c21364b60758b95806b56412d180300000000000000000000041423303d4851585d5f5f5d5850473e33271a0c00000000000000000000000000000916222e3a46525d5d54463624110000000000000000000000000000000000000000000000000000000000000002101c27303940464b4f5254555655524e4a453f39332b241b1104000000000718283745525e6871787d838688898b8986827c77716a635c5347392815020011263b5064727770614e3b26120000000000000b20364b6075877263788d7b67523d281300000000000004101c262e363b404344444443413e39332c23190d01000000000000000000000000000111202e3a40403c332718080000000000192d42576b80928c827d7b7c7d7d80828487888b8d8f9191908877624c37220d0013283c5165798e9f8e8f959793908f8f93968d837668594937261401000000000000000000000000000002162b40566b82907b66546a8093846f5a463a3a3a3a3a3a352b1e0f00000000001e33485d728899846f5b4948586b8095866f5a5b6d7d8f8372615141302010000000000000000012253748555b585250504f63778d947d68534a48474848484a4d53585e656b71767979705b46301b000a1f344a5f748b947d68533e291300000000000000081c3043546270808d9b8b7a6a7888989d8b77634f3a26110000000000000000000000000000000000000f24394e63788d917b67523d281400000000000000000000000004121f2b353e44484a4a48433d342b2115090000000000000000000000000000000005111d283541494941362819070000000000000000000000000000000000000000000000000000000000000412202d39434c545b606467696a6b6a67635e59534d4740372e221405000001132536465563707b858d93979b9d9fa09e9a96918c8680776f655745321e090014293e53687d8c7d6a55412c170200000000000b21364b60768c786c808a76624d38240f00000000000514222e39424a5054585a5a595856534e473f362b1e11030000000000000000000000000e1f2f3e4c5556504536251300000000001d32475c708697826e68666768686a6c6f70737577797b7b7c746a5b4834200b000e22364a5e72879a887a82868889898886827a7066594a3b2b1a0800000000000000000000000000000000162b40566b828e7863546a8094806a55402c252525252421180d0000000000001b3045596e83978b7766595a66758897836d584f60718390806f5f4e3e2e1d0d000000000000001a2e415466706b67666664687b9094806c635f5d5c5d5e5e5f62676d737980868b8f836e59442f1a000a1f344a5f748b937c67523d281300000000000000011426364453616f7c8c99897b8897a191806d5b4834200c00000000000000000000000000000000000012273c51667b908c77624d39240f00000000000000000000000000020e1822292f333434332f2921180e04000000000000000000000000000000000000000b17242e34342e25190a000000000000000000000000000000000000000000000000000000000000011222303e4b5660686f74787c7d8082807c77736e68615b534a4032221100000a1d3042536473828e9899938f8d8c8c8d8f9295989b9a938c8374614c37220c00162c40566b8095846f5a45301b0600000000000b20354a5e7287827b89826e5a47331e0a0000000005142332404b555d64696c6f6f6e6e6b68625b52483c2f2112020000000000000000000006192b3d4d5c696b635443301c08000000001f34495e738997826b565152535355575a5c5e60626466666761584d3d2c190500071b2f43576a7d928c776c7072737373706c665d54483b2c1d0d0000000000000000000000000000000000152a3f54687a887661506477867b66513c27120f0f0f0f0c0500000000000000162b3f53677a8e9585766d6e7784948d7a675343536475878e7c6c5c4c3b2b1a090000000000001f34495d7185807c7b7b797b86989b8b7d7874727272737374777c82888e949a96887766533f2b16000a1f344a5f748b937c67523c271200000000000000000818273543515e6d7c8e968f99a393837262503e2b1805000000000000000000000000000000000000152a3f54687d9386715d48341f0a000000000000000000000000000000050e151a1e1f1f1e1a140d050000000000000000000000000000000000000000000006111a1f1f1a1207000000000000000000000000000000000000000000000000000000000000000e1f30404e5c68737c848a8e9194959795918d88837c766f675d51402e1b070012263a4d60718292968c857d7977767677797c8083868889898977624c37220d00192e43586d839888725c47321d080000000000071b2f4357697a868a837463513e2b17040000000011223242505d6872797d8384868483827c766f655a4d3f302010000000000000000000000e2236485a6b7a80725f4b36210c000000001f344a5f748b97826b56403c3e3e40424447494b4d4f5050524d443b2f1f0f00000014283b4e61758894826e5c5c5e5e5e5c58524a41362a1d0e0000000000000000000000000000000000001125394c5c6a73705e4a5a69706f604d38230e000000000000000000000000001024374b5e708292948983838a959182705e4b384758697a8b8b7a6959483726150300000000001f344a5f74848d929191909098a4a99c928d8988888889898b8c91969c9c968e8477695a48362310000a1f344a5f748b937c67523c271200000000000000000009172533404f5f708396a4a696867565544433210f00000000000000000000000000000000000000162b40566b8293806a56422e1a0500000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000006192b3d4e5e6c7a8690989c9996959597999b9e9d97918a837a6f5d4a35200b00182d4155697c8f9184797069656260606264676b6d70727377796f5c48341f0b001a2f445a6f869a89745f4a341f0a00000000000014273a4c5c6972747065564534220f00000000091c2f4051606e7a858d93979493939596918b82776b5d4e3e2d1c0a00000000000000000013283d5165778a8e78634e38230e000000001f344a5f748b97826b56402b29292b2d2f313436383a3b3b3c3931281e11010000000c1f3245586b7d908c79685748484847433e372e24190c000000000000000000000000000000000000000a1c2e3e4c575e5d52424b565b5a5243311d0900000000000000000000000000081b2e4153647483919a9898968d82726352412e3a4b5c6d7d8f887766554432210f00000000001c31445766717980868b8f9395989a9c9d9f9f9d9d9d9f9d9b9996928d88827a71665a4b3c2b1907000a1f344a5f748b937c67523c27120000000000000000000007152231415366798da2988877675747372615040000000000000000000000000000000000000014293e5266798675634f3b271300000000000000000000000000000000000000000000000000000000000002080d1215181a1b1b1b1915110c0701000000000000000000000000000000000000000000000000000000000000000005090b0b0802000000000f2336495a6c7c8b98958d8884828080828487898c8f9193938d77624c37220d001d32465b7085958272665c55504d4b4b4d505256585b61738788725d48331e08001c31465b70879c8b75604b36200b0000000000000b1d2e3e4c565d5f5c534738281705000000001225394c5e6f7d8d989b9087807c7c80868d9695897b6c5c4b392714010000000000000000162b40556a80948e78634e38230e000000001f344a5f748a95806a55402b161416181a1c1f202325262627241e150c00000000000215283b4e61738597867564554537312e29231b1f1f1b140900000000000000000000000000000000000010202e3b44494941343a42464540342514010000000000000000000000000000112435465665727d86898883796f62544534232d3e4f60708292847361503e2c19060000000015283948545e656c7176797c8083868788898b8b8b8b89888684827c78736d665e54493c2d1e0d00000a1f34495e7389937c67523c27120000000000000000000000041323364a5e72879c8c7a6959493929190800000000000000000000000000000000000000000f2336495b6b7268584633200c00000000000000000000000000000000000000000000000000000000050e161c22272a2d2f3030302d2a25211b160f09010000000000000000000000000000000000000000010000000000000611191e21201c160c000000162a3e5265788a988c8279726e6b6a6a6b6e707477797b7c7c7c725f4b36210c001f344a5f74898f79655549413b383636383b3d40495a6b7d9089735e48331e09001d32475c72889d8c76604b36210b0000000000000010202e3a43484a474036291a0a0000000000192d4155687b8d9b91887d736a67676b71798491998b7a685644311e0a0000000000000000182d43586c83978c77624c37220d000000001e33485d728895806a543f2a150807050306090b0e0f1111120f0902000000000000000c1f31445667798b9383726355473a2d22252f343430261a0c000000000000000000000000000000000002101d283034342e24272e30302c231607000000000000000000000000000000061728384755616a7173726e665d52453627172131425363748591806d5b4935210c000000000a1b2a37414a51575d6165686b6d6f717273747474747372706e6b68645e59524a41372b1e0f000000071e33485e7389937c67523c2712000000000000000000000000071b2f44586d828b806e5c4c3c2b1b0b000000000000000000000000000000000000000000071a2c3d4d585c564a3a2917040000000000000000000000000000000000000000000000000000030e18222a31373b3f4244464646423f3a35302a231c150d030000000000000000000000000000080e13161616130e08000817242d33363531291e1000001b3044596d8295887a6e655e5956545457595c5f6264666f8386725c47321d08001f344a5f748b8f7965514237302a262327303b49576777899b88725d48331e08001e33485e73899e8d77624c37220d0000000000000002101d272f3334322d24180b0000000000001e32475c7085988a7d746a60575252565d67728290988673604d3a261100000000000000021b30455a6f869a8b74604b36200b000000001c31465b708695806a543f2a1f1e1c1a181614100d0904000000000000000000000000021426384a5b6d7d8f91827365584b3f353742494943382a19080000000000000000000000000000000000000b151b1f1f1a1213191b1b18100500000000000000000000000000000000000a1a2937444e575c5e5d59534a403427180914243545566676878b78644f3a240f00000000000c19252e363d43484c505356585a5c5d5e5f5f5f5f5e5d5b5956534f4a453e372e241a0d00000000001e33485e7389917b66513c271200000000000000000000000000152a3e526673746f61513f2e1e0d00000000000000000000000000000000000000000000000f1f2f3c444743392c1c0b00000000000000000000000000000000000000000000000000000614202b353e454b505457595b5b5b57534f4a443e383129201509000000000000000000000009131c23282b2b2b28231b1116263541484b4a453c2e1e0c001e33485d7288907c6a5c514a44413f404144474a4c5567798c89735e48331e09001f34495d728794826f60544b443e3b383c434d59667585969b86705b46311c07001e33485e73899f8d77624c37220d0000000000000000000a141a1e1f1e191107000000000000001f344a5f748a907c6b61574e443d3d424a5562718294907c6955402c1703000000000000081d32475c72879c88725d48331e0900000000192e43586d8396826b5640363433312f2d2b2825221e19130b0200000000000000000000091b2c3e4f5f708090918375685c514849545e5e564837251200000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000b1926323b43474848453f372d2216090006172838485868778679644f3a250f00000000000007121b22292e33373b3e4143454748484a4a4a4a49484644413e3a35302a231b12070000000000001e33485e7389917b66503b2611000000000000000000000000000f233648565f5f5c524333221000000000000000000000000000000000000000000000000001111e2930322f271c0e0000000000000000000000000000000000000000000000000000071624323d4851596065696c6e7070706c68645e59524c453c322618080000000000000000010f1b262f373d4040403d372e24223444535d605f594c3c2916001f344a5f748b8f78634e3e362f2c2a2b2c2f3442516172849688735e48331e09001b2f43586c80938d7d71675f5853504e50565f6a768594a398836e58442f1904001f344a5f748a9f8d77624c37220d000000000000000000000000000000000000000000000000001e32475b6e808573604e443b3128282e37445364768998846f5a45311c070000000000000a20344a5f74899a86705b46301b0600000000172c41566b8297836d584e4b4a48464442403d3b37332d271f150b000000000000000000000f203141526271829094877a6e645c5b6671736654412e1a0600000000000000000000000b141818150f08020000000000000000000000000000000000000000000000000000000000000008141f282e323333302b231a11050000000a1a2b3a4a5968746f5e4b37230e0000000000000000070e141a1e2226292c2e30323333343434343433312f2c2925211b160f0800000000000000001e33485e7389917b66503b26110000000000000000000000000007192a39444a4a48403425150400000000000000000000000000000000000000000000000000010c151b1d1a140a000000000000000000000000000000000000000000000000000005152534424f5b646d74797d8284868786827c78736d6660584f443625140100000000000003121f2c38434b51555655514b41352b3e51627076746a5945311c001f344a5f7489917c6a594c423b35312f333a4551606f80909c87715c47321d070014293d50637587988f847a736d686563656a727c8895a3a8937d6955402b1601001f344a5f748ba08d77624c37220d0000000000000000050b0f10110f0c07010000000000000000182b3e51616e7066564432281e14131a263647596d829588735e49341f0a0000000000000c22374c61768c97836d58432e190400000000162b40566b829686716563605f5d5b5a575553504c47423b32281c0e0000000000000000000213243444536271808e988c8277706d788484715d4934200b00000000000000000002111e282d2d29221c17151312121111111111111212120f090000000000000000000000000000000000020c141a1d1e1e1b1610070000000000000d1c2c3b4a575f5d51412f1c08000000000000000000000004090d111417191b1c1e1e1f1f1f1f1f1e1c1a1714100c0700000000000000000000001e33485e7389907965503b261000000000000000000000000000000c1b27303434332c2316070000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001122334352606d7782898f9397999b9c9a97928d88827b746c625443301c080000000000011121303d4a555f666a6b6a665e534739465a6e828b89745f4a341f001d31465b6f83978876695e564f4a4744474e5762707d8e9e99846f5a45301b05000d2033465869798996968e88827c79787980868f999daaa28e7965503b271200001f344a5f748ba08d77624c37220d0000000000000611191f24262624211c150d040000000000000f223343515a5b54483827150b010008182a3d51667b908b75604b36200b0000000000000f24394e63788e95806a55402b1601000000001b3044586c82978c7d7a77767472706f6c6a6864605c564e453a2c1d0d000000000000000000061626354453616f7c8994948c86838a968c77624c37220d00000000000000000010202f3b42433e36312c2a292727262626262626272727241d13070000000000000000000000000000000000000000000000000000000000000000000e1d2c39444a484032231200000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001e33485e73899079644f3a250f0000000000000000000000000000000a141c1f1f1e19100500000000000000000000000000000000000000000000000000000000000000000000010200000000000000000000000000050a0b0b06000000000000081b2e405161707d8a959c9793919090919396999c9c968f888072604b36210c00000000000e1f2f3f4e5b67727a8082807a706457484b6074899c88735e49341f00172b4054677a8d95877b726a645f5c5a5c616a74808e9daa96826b57422d1803000417293a4b5b6a78858f979c9692908e8f94958f888ca19b87735f4a36220d00001f344a5f748ba08d77624c37220d00000000000c19242d34393b3b3936302920160b0000000000041625343e454641372a1b09000000000e23384e63788f8c76604b36210b00000000000011263b50657a90927c67523d281300000000001f34495e73889c9a93908d8c8988878483807c7975706a61574a3b2a18050000000000000000000817263543515f6b76828c949a989d968875614c37220c0000000000000000081b2d3e4d5758524b45413f3e3c3c3b3b3b3b3b3b3c3c3c38302517080000000000000000000000000000000000000000000000000000000000000000000e1b283134332d221405000000000000000000000000000000000000000000000003080d10121212100d0904000000000000000000000000001e33485e73899079644f3a250f00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000a121717150f060000000000000000030f191f21201b1207000000001125384b5d6f808f999088837d7b79797b7d828487898c8d8d8d77624c37220d00000000081a2b3d4d5d6c79858f9497958e827566574e63788d95826d5945301b001124374a5d6f808f998e867d7874706f70767d87929eaca5907b67523e29140000000b1d2d3d4c5a67727b83898c8f8f8d8a86827a758ba093806b5844301c0700001f344a5f748ba08c76604b36210c000000000e1d2a3640484d50504e4a443d33281c0e00000000000716222b30302d251a0c000000000011263a4f64798f8b745f4a35200b00000000000013283d52677c928f79644f3a251000000000001f344a5f748798978b898b8c8d9093969795928f8b867d7568594734210d0000000000000000000008172633414d59646f778086898983786a5946321e0900000000000000001125384b5c6a6c655f5a57545352525050505050505152524c42352514010000000000000000000000000000000000000000000000000000000000000000000a151c1f1e191105000000000000000000000000000000000000000000000710171d222527272725221d18110900000000000000000000071e33485e73899079644f3a250f00000000000000000000000000000000000000000000000000000000060b0f11121211110f0d0a06000000000000000000000000000002101d262c2c2a23180a0000000000000413212c3436352e24180b000000172b4054677a8d94877c746d6966646466686b6f7174767777776f5d4935200b00000000132537495a6b7b8a9798908c8d949385756656687c918e7966523e2a1600081b2e40516170808c979a938d898786868b91989092a39e8a76614d38240f000000000f1f2e3c49555f686f737778787774706c66788d9e8a7763503c28140100001f344a5f748ba08c76604b36210b0000000d1d2c3b48535c626566635f585046392c1d0c0000000000050f171b1b181208000000000005192d4055697d9287725d48331e09000000000000152b40546a80948b76614c37220d00000000001c314558697c93907973747677797d8285888c90949792877764503c27120000000000000000000000081623303c47525c646b7073736e665a4c3b2916030000000000000000182c4054677a8279746f6b6a6867676666666666666667675f5343301c080000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005101a232b32373a3c3c3c3a37322c251d130900000000000000000a1f34495e73898f79644f3a240f00000000000000000000000000000000000000000000000000020c141b2024262727262624221f1a150e06000000000000000000000010202e3a41423e3528190a00000000001022323e484b4a4136291a0a00001c31465a6f8396857569605954514f4f5153565a5c5f61728588725c47321d080000000a1d3042556778899a91857b7677828f948574656f839786725e4a36230f00001022334352616e7a848c9296989896938f8a847c8ba097836f5b47331e0a0000000001101e2b37424c545a5f626363625f5c5a6c809394826d5a4734200d0000001f344a5f748ba08c76604b36210b0000081a2b3b4a59657077797a78736c63574a3b2a190700000000000000000000000000000000000e2134485c708497836d59442f1a06000000000000182d42576c829788725d49341f0a000000000015283c52677c939079645f606365686c7073777a7d8383847d69543f2a1500000000000000000000000005121e2a353f4850575b5e5e5a53493c2e1e0c0000000000000000001c31465b7084958e898482807d7c7c7b7b7b7b7b7b7b7c7b71604b36210c0000000000000000000000000000000000000000000000000000040c12161716110a00000000000000000a12171a1c1c1810040000000000000000000916222d373f464b4f5252524f4c47403930261b0f020000000000000a1f344a5f748b8f78634e38230e00000000000000000000000000000000000000000000000009151f282f35393b3c3c3b3b3937332f29221910040000000000000000081b2e3e4c5557524637271604000000081b2e40505c605e534738281502001f34495e73898f7a67584d453f3c3a3a3c3f41444758697c8f89735e48331e090000001326394c5f728596918273676164707d8e9384767b8c927d6a57432f1b0700000415253443515d6770777c828383827d79756f768ca18f7a67533f2b18040000000000000e1a25303840454a4c4e4e4c4b566677899b897664513e2b18050000001f344a5f748ba08b745f4a341f0a000516263748596876838c90908d8880756758483624110000000000000000000000000000000005172a3d5164778c907c68533f2b16010000000000041b30455a6f8499846f5a45301b06000000000012273c52677c939079644f4b4d5053575b5e6266696c6c6e6f64513d281300000000000000000000000000010d18232c353c42464948453f362b1e10000000000000000000051d32475c72889d9e9b99979494939291919191919191938d77624c37220d000000000000000000000000000000000000000000000000020d171f262b2c2b261c10020000000000101d262c2f31312c221405000000000000000a1927343f4a535a606467676764605b544c43382d20130400000000000b21364b6076848878634e38230e00000000000000000000000000000000000000000000000c1a27323b434a4e50525250504e4c48433d362c221508000000000000001024384b5c696c64554533200c0000001125384b5d6e7670645645321e09001f344a5f748b8f79644f3f342c272525272c3845546475879988725d48331e090000071b2f4256697c8f95847363564c52606f7d8f94898c9a8b77634f3b271400000000071625333f4a545d63686b6c6c6b686560687b909885725f4b3824100000000000000000081a2c3c4b5658544a464e59667485958f7d6c5a4734210e000000001f344a5f748ba08b745f4a341f0a0011223344556676879592888686889186766653402c18000000000000000000000000000000000f2234475a6d80948874604d392410000000000000091e33485d728796826b57412d1803000000000012273c52677c939079644f3a383b3e4246494d51545757585a544635220e00000000000000000000000000000006101921282d313433312b23190e00000000000000000000091e33485e73899e8d86868687888a8c8e8f90909090909082705d4935200b00000000000000000000000000080f13130e06000000000914202a333b404240392e2012020000000d1e2e3a414447463f3223110000000000000919283745515c666e75797b7c7b79756f685f564a3e31231303000000000a1f33485b6a6f7272614c38230d000000000000000000000000000000000000000000000c1b2a38444e575e63666767666563615d5851493f33261708000000000000162b3f53677a8273634f3b2611000001172b4054677a8c8374614c37220c001f34495e738893806d5d5047403a3734383f4956637283939b87705c47311c0700000e22364a5e7286998a78665545384251607082949c9e9984705b4834200c00000000000715222d3841484e53565757565450617285988e7b6855422f1c0800000000000000000e23374a5a696e675c5a616b778593928271604e3c2a1805000000001f344a5f748a9f89735e48331e0900192d4051627284958e80746f6f73849583705b47321d000000000000000000000000000000081a2c3e5164768a93806c5945311d090000000000000c21364b60758a927c68533e291400000000000012273c52677c939079644f3a25262a2d3134383c404242434440362817050000000000000000000000000000000000050d14191c1f1e1c17100700000000000000000000000b20354a5f748b95826f6f70707274767879797979797979716252402d1a060000000000000000000000000e1b24282822190e01010e1a26323d464f5557554c3e301f0e000004182b3c4c55595c5b50402e1a0600000000041526374655636f79838a8f9193918f8a847c72685c4f413121110000000004182b3d4c565a5d5e5444311e0900000000000000000000000000000000000000000007192a394855616b72777b7c7c7b797876726c655c51443526160500000000001a2f44596d83927c67523c27120000071c31465a6f83978a75614c37220c001b3045596d82958b7a6e635b544f4c4a4c525c67738291a199846e59442f1a05000014293d5165798e95826d5b4937273242536476889ba8947d6955402c180400000000000004101b2635444d4f4b424246525f6e80909583705e4c39261300000000000000000012273c516678837a706f757d8995928473645342311f0d00000000001e33485e73899e89735e48331e09001e33485d6f8091897c6f635a5a697d948a745f4a341f000000000000000000000000000001132537495c6e8294897663503d29160200000000000011263a4f64788d8e78644f3a251000000000000012273c52677c939079644f3a32323130302f2f2e2e2c30383d3d372c1e0e0000000000000000000000000000000000000000000000000000000000000000000000000000000b21364b60768c917b675a5b5c5d5f6163646464646464646153443523110000000000000000000000000e1e2c373d3d362b1f10121f2c38444f5962696c695c4e3d2a170300091e33475a696e706e5d4934200a000000000f213344556473828c969892908f92979f988f85796d5f4f3f2f1d0c000000000e1f2e3a414548494336261502000000000000000000000000000000000000000000132536475766737d878d90929391908f8b8782786e62534434221000000000051c32475c7187937c67523c271200000b20354a5f748999846f5b46321e0900162a3e5164778a998c80766f6964615f61666e798592a0a994806a55412c170200061a2f43586c82958d7865513e2b1a243547586b7d92a6927c67523c271200000000000000000c1f32445361645f55515963707d8d9988766553412f1c0900000000000000000012273c51667b908c858589919b8f82736556463625130200000000001e33485e73899d88725c47321d07001f34495e717d7d766b5e514653687d938b745f4a341f00000000000000000000000000000d1e30425466798c907d6b594633200d00000000000003172c4055697d9289745f4b36210c00000000000012273c52677c939079644f4847474646454444434342444b52524a3c2c1a07000000000000000000000000000000000b141a1b1b18100600000000000000000000000000000d22374c61768c8d77634e4647484a4c4e4f4f4f4f4f4f4f4d44352617060000000000000000000000071a2c3c4a5251493d2e1d22303d4955616c767d837a6c5a46311c07000b21364b6076838776604b36210b00000005182b3e5062728391988d847d79797c848c96a1978b7c6d5d4c3b29160400000001101d272c3033342f251809000000000000000000000000000000000000000000091d304254657585919b9f9893908f9093979b958c80716252402d1a06000000091e33485e7389917b66503b261100000e23384d62778d97826c57422d1803000f2235485a6b7c8c99938a847d797674757b828c96a1ada38f7a65513c281300000a1f34495d72879a86715d4935220e17293b4e62768ca1917b66503b2611000000000000000011263a4f6271797267666c75828e998b7a6a5948362412000000000000000000000f24384d617587959a9a9e92887d71645647382818070000000000001e33485d72889c87715c47321c07001b2f4253616868635953575b616e829688725d48331e000000000000000000000000000a1a2b3c4e5f7184968573614e3c291704000000000000081d32465b6f849886705b46321d0800000000000012273c52677c939079645e5e5c5c5b5b5a5a5a585857575f67675a4936220e000000000000000000000000000002101d272e30302c231709000000000000000000000000000e23384d62778d8a745f4b3531333537383a3a3a3a3a3a3a38312617080000000000000000000000000f2336495a67655a4c3a2733404e5a67737d89929487735e48331e09000a1f344a5f748b8c76614c37220c0000000d2134485b6d809195877a7068656468707984909d9b8c7b6a584633200d00000000000b13171b1e1f1b1308000000000000000000000000000000000000000000001125384c5f718394a0958b847d7a78797d838b959e90826f5d4936210d0000000a20344a5f748b917b66503b2611000010253a4f64798f947d69543f2a15000005182b3d4e5e6d7b88929b98928f8c8a8b9096938c8fa29c8974604b37230e00000f24384d62778c94806a56422e1a060c1f344a5f748ba09079644f3a2510000000000000000012273c52677c8f847b7b80899397897b6c5c4c3b2a1907000000000000000000000a1e3245586977828b9b97827a7063544638291a0a000000000000001d32475c72889c87705b46301b0600122535444e53535a62686c70757d8d93826d5944301b0000000000000000000000000d1a2837485a6b7d8f8c79675644311f0d000000000000000e22374b60758a95806b56422d180400000000000012273c52677c938f79747373727270706f6f6f6e6e6c6c737a7865513c2712000000000000000000000000000010202e3a43464540352718070000000000000000000000000f243a4f64798f87725d48331e1e20222324252525252525231e140800000000000000000000000002162a3e526678786a57433543515e6b788591998e8276685744301b07000a1f344a5f748b8d77624c37220d00000014283c5064778b988776695d54504f545c6672808d9c99887563503c2814000000000000000000000000000000000000000000000000000000000000000000000003182c4054687b8f9e8f83776f69656465696f7783919f8d7965503c27120000061221364b60768c917b66503b2611000011263b50667b91917c67523d28130000000d1f30404f5d6a7580878d909393908e8a857d778ba095826d5945311d08000012273c51667b908f7965503c2713000a1f344a5f748ba08f79644f3a250f000000000000000010253a4f64788c979090959b9085786b5d4e3e2e1d0c00000000000000000000000215283a4d6072838d86848a8e8272614e3b281400000000000000001d32475c72889b866f5a442f1a0500071726334453626d767c82868a9191847463513e2a160000000000000000000002101e2b38465566778993826e5c4a382614020000000000000012273c5165798f8f7b66523d28130000000000000012273c52677c93908b8a89898888878786868484848383878f7b67523c271200000000000000000000000000091b2d3e4c575b5a534536251200000000000000000000000012273c51667b90856f5a45301b090b0d0e0f0f0f0f0f0f0f0e0a0200000000000000000000000000081d3145596d8287725c474553616f7c8a9691867b7064584a3a281501000a1f344a5f748b8d77624c37220d000000192d42576b80938d7a69594b403b3a404954616f7d8d9e92806b57432f1b060000000000000000000000000009101516130c030000000000000000000000000000081d32465b6f8498908071655b54504f50545b66728394947d69543f2a15000515242f384d63778d917b66503b2611000012273c52677c928f79644f3a2510000000011222313f4c58636b72777b7c7c7b7874706a778c9f8c7865513e2a16020000152a3f54697d948a75604b37220d000a1f344a5f748ba08e78634e38230e00000000000000000c2135495c6f7d8a91928e877d73675b4d3f30201000000000000000000000000000152a3f53687c8e7c716f7683907d6a57422d1904000000000000001d32475c728899846f5a442f1a050003172a3d506271808a91908c89857d7366564634210e0000000000000000000111202e3c495664738495867563513f2d1b090000000000000000172c40556a80948a75614c38230f0000000000000012273c52677c919d9d9c9b9a99989898989797979798988f8473614d39240f000000000000000000000000001125394b5c6a706f6354422f1b070000000000000000000000152a3f54697d94826c57422d180300000000000000000000000000000000000000000000000000000e23374b60748988725c47556371808d978a8073695e53473b2c1c0b00000a1f344a5f748b8d77624c37220d0000001d32475c70869884705d4b3b2e26252d3743515f6f80929b87725d49341f0a000000000000000000000002101c252a2b28201509000000000000000000000000000d21364b60758a978472615348403b3a3b40485464768a97826b56402b1600102233414a51667b90917b66503b261b120913283d53687c938d77634d38230e000000000413212f3b4650585e636667676663605b6a7d9296836f5c4936220e000000162c40566b829787715c47321d08000a1f344a5f748ba08c77624c37220d0000000000000000061a2d3f51606d767c7c78726a615651493e32231302000000000000000000000000172c41576b8288725e5a64748886705b46311c07000000000000001d32475c728893806b56422d180300091d32465a6d80908b827a7673706a615648382817050000000000000000000f1f2f3e4c5a6774829289796857463422100000000000000000051b30455a6f8498846f5b46321e090000000000000010253a4f647785888887868684838383838282828283837c72655544311e0a00000000000000000000000000152a3f54687a8782715e4a35200b0000000000000000000001192e43586d8394806a54402b1500000000000000000000000000000000000000000000000000000013283d51657a8f866f5a566573828f9285786d61564c4135291d0e0000000a1f344a5f748b8e78634e38230e0000001f34495e7389927c6854402e1d11111a253241516274889b8c77624d38230e000000000000000000000010202e383f403c32271a0b00000000000000000000000010253a4f64788e8f7a675443362c2624262c394c60758b96826b56402b1600192c40515f616c8095917b665041382e261d14293e53687d948b76604b36210c000000000003111d29333c43494e505252504e546475889a8c796653402d1a06000000182d42576c8398856f5a442f1a05000a1f344a5f748b9f8a745f4b35200b00000000000000000e213243525f68686767645e5d6668655c5041301f0d000000000000000000000000172c41576b828872605860718687715c47321c07000000000000001d32475c7288867663503c281300000d22374c6075898b796d66615e5b554e44382a1b0a000000000000000000091b2c3d4d5c6a7785928c7b6b5b4a392817050000000000000000091e33485d7288917c6854402c1803000000000000000c2135485a6870727270706f6e6e6c6c6c6c6b6b6b6c6c686055473827150200000000000000000000000000162b40566b82978a745f4b35200b00000000000000000000071c31465b7086927c67523d2813000000000000000000000000000000000000000000000000000003192d42566b8095826c58667483918e8273675b4f443a2f23180c000000000a1f344a5f748b8f78634e38230e0000001f344a5f748b8f79644f3a251100000815233345576b80948f79644f3a240f000000000000000000000a1c2e3e4b53564f4438291907000000000000000000000012273c52677b918b75604b3725191e262f3a4757697b8f927c68533e2914001e33485c6f76798a9c9079665d544b413930272a3f546a809589735e49341f0a000000000000000c182a394852545047424b566371829391806e5c49362310000000001a2f445a6f8499846e58432e1904000a1f344a5f748b9b87715d48331e090000000000000000162a3d5061707c7d776b5c5e6e7a7d796e5f4e3c2915010000000000000000000000152a3e53677b8e7d726d727d8f806c58442f1a05000000000000001b2f445769737368584634200d000010253b5064798f85705c514c4946413a31271a0c000000000000000000001426394a5b6b7a88968d7d6d5d4d3d2c1c0b0000000000000000000b20364b60758b8875614d392511000000000000000005182b3c4b555b5c5c5b5b5a58585758656b6a60565757544c4337291a090000000000000000000000000000162b40566b829788725d48331e09000000000000000000000b20344a5f73898f7964503b25100000000000000000000000000000000000000000000000000000091d32475c7086917c67677685938c7d7063564a3d32271c110600000000000a1f344a5f748b8f78634e39240f0000001f344a5f748b8f78634e3924100200000515283c51667b909079644f3a250f000000000000000000001226394c5c686b6156473724110000000000000000000000142a3f54687d948b75604b36292d333a424c58657586998a77634e3a2511001f344a5f748b8d98a691827970675e554c433a3140566b829787715c47321d08000000000000000d21354757666a6459565d6874829095857362513e2c1a07000000001a2f445a6f869b86705b46311c06000a1f344a5f748b96826d58442f1a0500000000000000001c3145596d808f93897a68697c8d948c7d6c58442f1b0600000000000000000000001024384c5e70808e86838690887664513d2915010000000000000015283a4b575f5e574a3a291704000012273c51667b9186715c473834312d261e150900000000000000000000081c30435668798a988e7d6e5f4f3f2f1f0e000000000000000000000b21364b60768a7d6b5845311e0a0000000000000000000d1e2d3941464747464644434d5b6976827d6d5a454240393025190b000000000000000000000000000000162b40566b829787705b46311c07000000000000000000000e23384d62778c8d77624d38230e00000000000000000000000000000000000000000000000000000d22374c60758a8c77687686948a7b6d5f5245382c20150a000000000000000a1f344a5f748b9079644f3a250f0000001e33485e7388907b67533f2e1f150e0c15202e3e52667b918d77634e38230e00000000000000000000182d4155697a80736554402c170200000000000000000000162b40566b80958e78634e3c3f42474e555f6975849392826d5a47331f0b001e33485d707d8896a89f958d847a71685f564e4442576c8398866f5a45301b060000000000000011263b50647580766c6b717a869295877666564533210f00000000001a2f445a6f849988725d4934200c080a1f344a5f74868d7a66533e2a150100000000000000001e33485e73899da698846e6f8599a99b88725c47321d070000000000000000000000091c2f415261707b84898b857869584734210e00000000000000000b1d2d3a444a4944392c1c0c00000011263b50667b9084705b46311f1c18120b0200000000000000000000000e23374b5f73869790806f60504131211f1b120700000000000000000a1f33485b6c766e5f4e3b28151213130e070000000000000f1c262d3132323130404e5d6b79879488725c47322b251d130800000000000000000000000000000000162b40566b829687705b46311c070000000000000000000011263b5065798f8a745f4b35200b000000000000000000000000000000000000000000000000000012273b5065798f877277879589796b5d4f4134271b0e0300000000000000000a1f344a5f748b9079644f3a250f0000001b30455a6e8396836f5d4c3d3128221f28323e4c5c6e829688745f4a35200b000000000000000000001b30455a6f8591846e58432e190300000000000000000000172c42576c8297907b67555153575c6269727b879495857463513e2b180400192d4052606a798ea1939297978e857b726a61584e596e8499846e59442f1a040000000000000012273c52677c91898282868d98928576685849382716040000000000182d41566b80948c77624d3823211d141c3144576875796e5d4a37230f0000000000000000001d32475b6f82939e917d6a6c7d909f94826e5945301b0600000000000000000000000012243443525e686f737471675a4b3b2917050000000000000000000f1d2830343430271b0e000000000f24394d62778a7a6854402c180700000000000000000000000000000011273c51657a8f9282716151423a3837342f251708000000000000000d182b3e4e5a605c5041301e22272928231a0e0000000000000a12191c1d1d293b4d5e6c7b8a988e806d5a46311c1109010000000000000000000000000000000000152a3f546a809588725d48331e0900000000000000000000152a3f54687d9388725d48331e090000000000000000000000000000000000000000000000000000162b4054697d938377879689796a5c4d3f31231609000000000000000000000a1f344a5f748b9079644f3a250f000000172b4054687b8f8c7a6a5b4e443c37343b444f5c69798b95826d5945311c07000000000003050504011c32475c718799846e58432e190300000000000000000000192e43586d83989683726866686c70767d858f9992857667574534210e0000112334434e62778d97847c838a93988f867d746b625b708698836c58432d1803000000000000001025394e63768a9896969a968c827467594a3b2b1a0900000000000013283c5064778a8e78634e38373631261828394a5862645d50402e1b08000000000000000000182c40526374848982726161718289837564523f2b160200000000000000000000000006162534414c545a5e5f5d54493c2d1d0c00000000000000000000000b151c1f1f1b140a00000000000a1f33475a6c746c5c4b3925110000000000000000000000000000000013293e53687d938674645352504f4d4c49423526150200000000000e1d2a343a3d474b483f32232b363c3e3d362c1e0e0000000000000000000b1f3346596b7c8b9a8d7d6f61503e2b17030000000000000000000000000000000000000013283e53687d938a745f4b36210c00000000000000000001192d42576c8297856f5a45301b0600000000000000000000000000000000000000000000000000041a2f44596e83947d87968a796a5b4c3e2f21130500000000000000000000000a1f344a5f748b9079644f3a250f0000001124384c5f72849589796c6158514c494e57616d7988988c7965523e2a16020000000811181a1a19161c32475c708799846e58432e1907070601000000000000031b30455a6f869aa191857d7b7d82868b9199958b8074665849392816050000061625384e63788f937d686f768088919a91887d756c728897826c57422c1702000000000000000b1f33475a6b7a868c8d8882796e6356493b2c1d0d000000000000000d2134475a6b7a7d705e4a484c4b4436281b2c3a464d4f4a403222110000000000000000000010223446576672736e6354536270746f65574735230f00000000000000000000000000000716232f384046494a4841382c1e0f0000000000000000000000000000000000000000000000000004182b3d4e5a5f5a4e3e2e1b090000000000000000000000000000000013293e53687d9389766c6867646463605e5344321f0b00000000091b2c3b474f524e473c30222f3d49515352493c2c1a0700000000000000001025394e627588948b7c6e60514333210e000000000000000000000000000000000000000011263b50657a908d78634e392410000000000000000000081c31465b708697826c57422d180300000000000000000000000000000000000000000000000000091e33485d72879286958c7b6b5c4c3d2e20130c0600000000000000000000000a1f344a5f748b9079644f3a2510000000091c2f4254667788988a7d736b65605e626a747d8b9893826f5c4936230f0000000c1a252c2f2f2e2c28344a5f738999846e58432e1d1d1d1b150c0000000000081d32475c71879c999a98939193969a97918a82786e6356493a2b1b0a000000000f253a4f64798f917b665b636b747d879099928980778a97826b56402b16010000000000000004172a3d4d5c68717777736d665c5145392b1d0e000000000000000005182b3d4d5c666961524f5c6260544637291c2932383a362e221404000000000000000000000517283948555e5e5a514544525c5f5b53473929180600000000000000000000000000000006111c252c313434332e251a0e0000000000000000000000000000000000000000000000000000000e20303d474a463d302010000000000000000000000000000000000011263b5065798d9588807d7b7978777671614e3a2510000000001326384a596467635a4e40323e4d5a6568665a4936220e000000000000000012273c52677c8882776c5e50423325150400000000000000000000000000000000000000000e23384d62778c917c67533e29150000000000000000001024384b60738994806a54402b1500000000000000000000000000000000000000000000000000000d22374c60768ba09b8f7d6e5d4d3e38322d27211a12090000000000000000000a1f344a5f748b917b66503b261100000000132537495a6a798895918880797673767d88919c97867563523f2d1a070000091b2a3740444443403d384d62778c99846e58433232323230281e10010000000c21364b60748a9685868a8f8f8d8b88837c766e655c5145382b1c0d000000000011263b50667b908f78634e4f58616a737c868f99948b8f95806a543f2a15000000000000000000152a3f536674776a625f5952493f34281b0d000000000000000000000d1f2f3e4a52544e485c6d7772645547392b1d1e2325221b11040000000000000000000000000a1b2a38434949463e343540484a474036291b0b0000000000000000000000000000000000000911171c1f1f1e191208000000000000000000000000000000000000000000000000000000000212202b3234322a1f120200000000000000000000000000000000000d21364a5f748ba09b959491908f8d8c7c67523c2712000000001a2e425668777c766b5e50414c5c6b787d7865513d281300000000000000001025394e6170726d645b4e40322316070000000000000000000000000000000000000000000b1f34495e728896826c58432f1b06000000000000000013283d52677a8f917b67523d2813000000000000000000000000000000000000000000000000000010253a4f64798fa3938271605a55514c47413b352d251c1207000000000000000a1f344a5f748b917b66503b261100000000081a2b3c4c5b6976838e97948f8b898a929ba195887868584634221000000014273848545a5a5855514d5065798f99846e584747474747443b2e1f0e0000000f24394e63788d907b707678797876726d68625a52493e33271a0d00000000000013283d52677c928c76614c3c444d576069727c868f98a094806a543f2a15000000000000000000182d43586c83897a6b5d4f41362d22160a00000000000000000000000111202d373d3f3b4c61768b82736557493b2d1f100f0d070000000000000000000000000000000c1a262f3434312b22232d3334322c23180b00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000020e181e1f1d170e0200000000000000000000000000000000000014283c5064788da19b989695959595927c67523c2712000000001f34495d728591897c6e5f4f5a6a7a8994806a543f2a1500000000000000000a1e3143525c5d5851483e3022140500000000000000000000000000000000000000000000061b3044596d839787725d4935210d0000000000000004182d41566a80948e78644f3a2510000000000000000000000000000000000000000000000000000013283d52677c92a08b7d78736f6a66615b56504941392f24180b0000000000000a1f344a5f748b937c67523c271200000000000d1e2e3d4b5965707a848b9095989a9a968f8477695a4a3a2817050000001b2f4356666f6f6e6a66625f697d9399846e5c5c5c5c5c5c584c3d2c1b09000013283d52677c918c776261646463605d59534e463e362c21160a00000000000000142a3f54697d9489735f4a34313a434d565f69727b858f947d68533e2913000000000000000000182d42576c82968a7b6d5f51433425160600000000000000000000000002101b23282a364b60768a92837567594b3d2e1f0f00000000000000000000000000000000000009131b1f1f1c170f11191e1f1d181006000000000000000000000000000000000005090b0a0600000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000192e42576b809391868382808080808274634f3a2510000000001f34495e71808f9b8d7d6d5d68788999947d69543f2a14000000000000000002142534404748443d352b201204000000000000000000000000000000000000000000000000162b3f54687c928d7864503c2814000000000000000a1e33475b7085998b76604b36210d0000000000000000000000000000000000000000000000000000162b40556a8095a799928d8884807a75706a645d554c4136291b0c00000000000a1f344a5f7489937c67523c2712000000000000101f2d3b48535e6770767b80838686827a7166594b3c2c1c0b000000001f34495e72848683807b77747282979984727272727272726a5b4a3826130000172c41566b809589735e4c4f4f4e4b48443f39332b23190f040000000000000000172c41566b829687715c47321e27303a434c565f687389947d68533e2913000000000000000000152a3e5266798a9a8c7d706152433423120000000000000000000000000000080f141e33475b6e8291938577695b4c3d2d1c0a0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000711191e21201a110500000000010a111415130d04000000000000000b151b1f1e19100500000000000000000000000000000000000000000000000000000000000000000000001b30465b70869a86736d6b6a6a6a6a6b64564633200c000000001b2f425361707d8c9a8c7b6b7787979e8c7865503c27120000000000000000000716232d32332f2921180f02000000000000000000000000000000000000000000000000001125394e62778b94806b5743301c080000000000000f24384d61768a9d88725d48331e090000000000000000000000000000000000000000000000000000192e43586d83989996989b9d99948f8a85807870685e5347392a1a0900000000071e33485e7389947d68533e291300000000000005192c3e4f5d65666062676b6e6f6f6d6768635543301e0e00000000001f344a5f748b969894908c8988899b9b8988888888888888796756432f1b00041b3045596e849987705c473a3a3836332f2b251e170f0600000000000000000000192e43586d8398846f5a442f1a141d273039424c5e7389937d68533e29130000000000000000000f2336495b6c7b8a978e80706152412f1c0800000000000000000000000000000004182b3e51627282909688796a5b4b3927140000000000000000000000000000000000000000040b11161a1d1f1f1f1e1b18130e080100000000000000000000000b19242d3336342e231404000007141e25292a2721170a00000000000e1c283034332d221506000000000000000000000000000000000000000000000000000000000000000000001b30465b70879b86705b565454545456514738281604000000001225354452606e7b8b9a8a7a8796a292826f5c4935210d000000000000000000000611191d1e1b150e050000000000000000000000000000000000000000000000000000000b1f33485c70859987735f4c38241100000000000015293e53677b9096846f5a45301b0600000000000000000000000000000000000000000000000003081b30465b70869b8a828487898d92979c99938d857b7065574838271502000000011e33485d728894806a543f2a150000000000000c2135485b6d7a7b73675a56585a616f7b7d735f4b36210c00000000001e33485c6f7c8286898d91959a9ea7a79e9d9d9d9d9c9b9785725d48331e00091e33485d728899846e59442f2523211e1b16100a030000000000000000000000001b30455a6f8697826c57422d18030a131d2633485e7389937c67523c2712000000000000000000071a2c3d4e5d6b7986928f80705e4c38240f000000000000000000000000000000000f223444546371808c9789796856432f1b060000000000000000000000000000000000050f181f262b2f3234343433302d28231c140b0200000000000000000b1a293641484b49403222100006162531393e3f3c342819090000000a1c2c3a44494840332414020000000000000000040a0e0f0f0a020000000000000000000000000000000000001b30455a6f85998b776656473f3f3f403d35291a0a00000000000717263442505d6c7b8d978f98a594847363513f2d1a06000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000040f1b2d41556a7d938f7b6754402d190500000000061b2f44586d82968e7a6654402c180300000000000000000000000000000000000000000000020e171d2032475c72889985706e7074787c82878d949c988e8375665644311e0a000000001d32475c728795806a543f2a1500000000000010253a4f64778b908678695a505f6f808e8d78634e38230e0000000000192d405160676c7074787c808593a69c95928f8c898786837d6f5c47321d000c21364b60758b96826b56412c170e0c0905000000000000000000000000000000021c32475c708794806a543f2a150000000a1e33485e7389937c67523c2712000000000000000000000f1f303f4e5b6874808c8e7b67523d281300000000000000000000000000000000051627364553616d79869186725e49341f0a000000000000000000000000000000010d18222b333a4044474a4a4a4845413d3730281e14080000000000000618293847535c605d503f2c1803112434434d5354504637271502000014273a4a575e5c514231200d000000000000000c171f2325241e15090000000000000000000000000000000000182d4155697c8d95857465584a3d302b2922170b00000000000000081624323f4e5e6f8295a4a79787766655453422100000000000000000050a0e1112100a0000000000000000000000000000000000000000000000000000000000000915212d38424f63788d9783705c4835210d000000000c2135495e72879c88735f4b372411000000000000000000000000000000000000000000000312202a323634495e738994806b595c5f63686d72788088929d938573614e3a2611000000001b30455a6f86927d69543f2a1500000000000010253b5064768593968878685e6e7d8e9e8d77634d38230e0000000000112333424d52575b5f63676b778d9f8d807c797774726f6e6a6152402c19000f24394e63788e947d69543f2a1500000000000000000000000000000000000000081e33485e7388927c67523d2813000000001d32475c7288937c67523c271200000000000000000000011221303d4a57636e7a877b68533d281300000000000000000000000000000000000918273643505c68738085735e49341f0a000000000000000000000000000006131f2b353e474e54595c5f5f5f5d5a56514b443b3126190c000000000011233547566570766e5b46311c07192d415260686a635545321f0c00001b2f435768736f604f3d2a17040000000001101d2a33383a39322719090000000000000000000000000000000012263a4c5e6e7d8d938475685b4e413426170800000000000000000006142130405164788ca0998978685848382716050000000000000a12191e232627251d12040000000000000000000000000000000000000000000000000000000c1a26333e4a555f6973899e8c7764503d29150100000012263b4f64788d96826d5844301e17110b05000000000000000000000000000000000000001121303d464b484a5f748b8f7a6651474b4f53585e646c75808d9c917d69543f2a1500000000182d42576a7a7c7463503b27120000000000000d21354858667483909787766d7c8c9c9986725e4a35200b000000000005152430393e42464a4e5262778d9984706864625f5c5a58554e433423100012273c51667b90917b67523c2712000000000000000000000000000000000000000a1f344a5f74898f79644f3a2510000000001d32475c7288937c67523c2712000000000000000000000003121f2c3945515d69746c5e4c382410000000000000000000000000000000000000091825323e4a56626f72665643301b0700000000000000000000000000071623303c47515a62696e72737474726f6b655f574e43372a1b0b000000071a2d405364748387725c47321d071e33485d707c8073614e3b271300001e33485d72877d6c5a4734210d00000001111f2e3b474d4f4d45372715020000000000000000000000000000000a1d2f40505f6e7d8d9486796c5f52443526170700000000000000000004122235495d71869a8d7b6a5a4a3a2a1a09000000000003111c262e33383b3c3930231301000000000000000000000000000000000000000000000000000e1d2a3744505c67727c8690a094806c5844311d09000000172c4055697d92927c68534039322b251f19140e090300000000000000000000000000000a1d2f3f4e5a605c4e5f748b8f79644f3a363a3f444a5058626e7d8f97826c57422c170200000014283b4d5d656763564634200c00000000000005182a3a48566472808f95847d8c9b9d8d7b6956432f1b0700000000000006131d24292d31353b5065798f937d6a554f4c4a474543403b3125160500162b4054697d948f79644f3a2510000000000000000000000000000000000000000b20354a5f748b8d77624d38230e000000001d32475c7288937c67523c2712000000000000000000000000010f1b28333f4b585f5a4e402f1c09000000000000000000000000000000000000000814212d3944515c5e55483827140000000000000000000000000007162534414e5a646e767d8387898b8a8885807a736a6055483929180600000f23364a5d70829386705b46301b061e33485e7388927d6a56422d1804001f344a5f748b897663503d29160200000f1f2f3d4c596264615545321e0a0000000000000000000000000000000011223241505f6e7d8d978a7d7062534435251504000000000000000000061a2e42576c828b826f5d4d3d2c1c0c00000000000011212e3942484c50524d41301e0b0000000000000000000000000000000000000000000000000e1d2c3b4855616e79858f99a0a09c8874604c3824100000001d31465b6f84988e78645b544d464039332e28231d18130e09050000000000000000000013273a4c5d6c756c585e73888d78634e3924252a2f353c455160748997826b56412c17020000000b1e2f3f4a51524f4638281704000000000000000c1c2a3846546170829292909c9f8f806e5e4c3a2714000000000000000001091014181c2b4054697d938d78644f3b383532302e2b261e140700001a2f44596d83978d77624d38230e000000000000000000000000000000000000000b21364b60768c8a745f4a35200b000000001c32475c7187937c67523c271200000000000000000000000000000a16222e3a454a463d302211000000000000000000000000000000000000000000030f1b27333f484943382a1b090000000000000000000000000414253443515f6b77828a92979c9f9d9c9d99958f877d7265574735230f000015293e5266798d98836d58432e19041c31475c70879a86705b46311c07001e33485d728893806c5945321e0c000d1d2d3d4d5b6a767973614d38230e000000000000000000000000000000000414233241505f6e7d8d9b8e807162534332210f0000000000000000000014293d51647374706252402f1f0e0000000000000a1d2f3f4c555c6165675f4e3b261200000000000000000000000000000000000000000000000c1d2c3b4a596673808c97958e8b8e9f8f7b67533f2b170300001f344a5f74899e8c80776f68615b544e48423d37322d28231e19140b00000000000000001a2e4256697b866f5a5b6f8280705d49352e2f32373e4753606f7d8e927d68533f2a1500000000101f2c373f454848453d31231302000000000000000c1a283644526374889ba5a29282706150402f1c0a000000000000000000000000051b3045596e839888725e4a3523201d1b1916120b020000001e33485d72879c8b75604b36210c000000000000000000000000000000000000000b21364b60768c88725d48331e09000000001b30465b7087937c67523c271200000000000000000000000000000004101d283134322a20120400000000000000000000000000000000000000000000000916222d33342f261a0c00000000000000000000000000102132425261707d89949c96918d8a888788898b8c8e8f847565523e291400061b2f44586d8295947d6955402b16011b30455a6f869b89735e49341f0a001b30455a6e83978975614e3c2917091a2b3b4b5b6b79888d78634e38230e00000000000000000000000000000000000414233241505f6e7d8d9b90827161503e2c1a070000000000000000000e223547565e5f5c53443423110100000000000012263a4c5d697176797c69543f2a1500000000000000000000000000000000000000000000081a2a3b4a5968768491978c827974839697836e5a46311d0900001e33485d71859399938b847c756f68625c57514c46413c37332e281d10010000000000001e33485d718688746054646e6d625241424344474b515a64707d8e9b8976624e3a25110000000b1d2e3d4a535a5d5e594e4131200e00000000000000000b18263445576a7d92a594847363534332221100000000000000000000000000091e33485d728896826d58442f1b0b080200000000000000001e33485e73899e89735e49341f0a000000000000000000000000000000000000000b21364b60768c866f5a45301b06000000001b30465b7087937c67523e2a1602000000000000000000000000000000000b151c1f1d170e02000000000000000000000000000000000000000000000000000410191e1f1b130900000000000000000000000000081b2d3f506170808e9a9088827c777472707274757778797b7c6b56402b16000b2035495e72889c8f7a65513c2712001a2f445a6f869b8b74604b36200b00172b3f53687b8f917d6a59473523162738485969798a9684715e4a36210c000000000000000000000000000000070d111214233241505f6e7d8c9b90806e5c4936230f0000000000000000000518293843494a48403526160500000000000000162b4055697b858b8f7d68533e2913000000000000000000000000000000000000000000021426374858687787959486796e65677a8e9e8975604c38230e00001a2e4255677680878e9597918a837c77716b65605b56514c47433b2e1f0f0000000000001f344a5f748b907d6e625c595957575757585a5c60656d77828f9d8f7d6c5946331f0b00000015283b4c5b666e72736c5f4f3d2a170300000000000000000816283b4f63778c99887665554535251504000000000000000000000000000a1f344a5f748b907b67533e2a1501000000000000000000001e33485e73889987705c47321c07000000000000000000000000000000000000000b20364b607484826d58432e1904000000001b30465b708595826d5945301b05000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001225384a5c6e808f94887d746d67635f5d5c5d5f6062636466675f4f3c2813000f24394e63778d9f8b75614c37230e011b30465b70869b8c76604b36210b001024384c5f72869989766452402e22344555667788988a786654412e1b070000000000000000000000000007121b2226272725233241505f6d7c8c9b8c7966523e2a15010000000000000000000b1a26303434332d2317080000000000000000162b40556a8093a0917b67523c27120b0b0a0907050300000000000000000000000000000c1f31435566768796938475685c515e7185998f7a66523d281400001226384958636a727982888f9697918b86807a75706a65615c574c3d2c1a0700000000001e33485d7186988d8076706d6c6c6c6b6c6d6f717579828a949a8e8070604e3d2a17040000001b3044576a798388887d6d5a46321d090000000000000000000c2034495d72878a7b6a58473727170700000000000000000000000000000a1f34495e71828373614d38240f00000000000000000000001b3044586b7b85846e59442f1a0500000000000000000000000000000000000000081d314457676f6e63513e2a150100000000182d415568798886705b46301b06000000000000000000000003090f1316191b1c1d1c1a16120d080200000000000000000000000711181b1d1f1e191105000000000000000000000000000000000000000000071b2e415467798c9484766a6058534e4b4847484a4b4c4e4f50524d4132200c0013283d51667b919a86705c47331e09071d32475c72879c8b745f4a35200b00091c304356697b8e94826f5d4c3a2f4051627385958e7d6c5a49372512000000000000000000000000000a18242e363b3c3c3a332732414f5e6d7d9296826d58442f1a050000000000000000000009141b1f1f1e19110600000000000000000013273b5064788da2907965503b262121211f1e1d1b1815110c070100000000000000000215283b4e6172849595857566584a4255697c9095806b56422d180300091b2b3a474f575e656d747b82888e949a958f8a85807a75716a5b4a36220e00000000001a2e4256687a8a97928a868383838282838384878a8f959b92887c70615242311f0d000000001f34495e7388969d9b8a75604b36210c000000000000000000061b2f43576a74746d5e4c3b2a1a09000000000000000000000000000000061b2f4253627172645544311e09000000000000000000000015283b4d5d6970746955412c1702000000000000000000000000000000000000000215283949545a59524535220f00000000001226394b5b6a74746856422d1904000000000000000000070f171e24282b2e303232322f2b27221d17100a03000000000000000918242d303234332d23150600000000000000000000000000000000000000000f23374a5e718597887565584d453e3935333233343637383a3b3c393023140200152a3f546a809496826c57422e19040b20354a5f74899d88735e48331e0900001326394c5e7083958d7b6a58473c4d5e6f80919282705f4e3d2c1a0800000000000000000000000008192836414a5052524e45372731404f63788f9b87705b46311c07000000000000000000000000000000000000000000000000000000000c21354a5e73889d8f78634e3936363636343332302d2a26211c150e050000000000000a1e3245586b7d909988776757483a394d6073879a856f5a45311c0600000d1c29343b434a525960676d737980868a8f9397948f8b867965503b261100000000001326394b5c6b79868f929698989897979898999c98938e8780756a5f514334241302000000001f344a5f748a9e9e968976614c37220c0000000000000000000014283b4c595f5f5a4f402f1d0c000000000000000000000000000000000012253544535d5e55463727150200000000000000000000000c1e2f3f4c555b5f5a4c3a26120000000000000000000000000000000000000000000b1c2b384044443f352717050000000000091b2d3d4c585f5f574a3926130000000000000000040f1a232b32383d40434547474744403b37312b251e170e0400000000041627364146474a4840332312000000000000000000000000000000000000000014293d5266798e917d6a584c4b4945403931281f1f212223252627251e13050000182d42576c8297927c68533e2a15000f24384d62778c9a86705b46311c0700000a1c2f415366778999887664534a5a6b7c8d968573635241301f0e0000000000000000000000000214263746535e656767625544312a384e63788f9c87705c47321c070000000000000000000000000000020c13181918130b010000000000071c31455a6f85998d77624c484b4b4b4b4a484745423e3a36302921180e02000000001125394e6175889b8c7a6a5949392a3044576b809488735e48331e090000000c1720282f363e454c53595f656b7075797d8386888a8b7864503b25100000000000091c2d3e4d5b6873797c828487898b8b8b8b8987837d79726b62584d413325160600000000001d32475b6e80898983786b5a47331e09000000000000000000000b1d2e3c464a4a463d3122110000000000000000000000000000000000000717263541494943372819090000000000000000000000000111212e3941464a463c2e1d0a000000000000000000000000000000000000000000000d1a252c2f2f2b231709000000000000000f1f2e3b454a4a443a2c1b09000000000000000715212d363f464d5255585a5c5c5c5954504b463f39322a21160a0000000c203345535b5c5f5d51412e1b0600000000000000000000000000000000000000192e43576c82958a75616262605e5a544d453b3126190d0e0f1112100a010000001a2f44596e84998f79644f3a25110013283d51667b9096826c57422e1904000000122436485a6b7c8e94827160576778899a8977675645342313020000000000000000000000000b1e3144556471797c7c73604c3c3e445165798f99846f5a45301b060000000000000000000000000006141f282d2e2d271e12040000000000182d42576c82978b7560505c606060605f5e5c5a57534f4a443d352b201406000000162b4054687c9192806e5d4c3b2b1b283d52677c918b745f4a35200b00000000040c141b222a31383e454b51565c6065696d707374746d5b4935210d00000000000010202f3d4a566064686b6f71737474747473716e69645e574f463b30231607000000000000182b3e51616e73736f665b4d3c2a17040000000000000000000000101e2a323434322a201304000000000000000000000000000000000000000817242e34342f26190a000000000000000000000000000003111c262d3234322a1e100000000000000000000000000000000000000000000000000811181a1a160f06000000000000000001101d2831343431281c0e00000000000000081725333e49525a61666a6d6f7172716d6965605a534d463d34271909000011263b4f637070746f5e4a35200b000000000000000000000000000000000000001d32475c70869a867075777776736e6861584e43372a1b0c0000000000000000001b30465b70869b8d77624d38230e06192e42566b8095927c68533e2a150000000007192b3c4e5f7082928f7d6e657586968d7c6b5a49382716060000000000000000000000000011263a4e6172838e938f78634f515358616f8094927d6955402c1702000000000000000000000000051524323b4143413a3022120100000000152a3f546a809589735e5e6e767676767473716f6c68645f5851483d3224150600001a2f44596e8397887563513f2e2220253a4f64798f8c76604b36210b00000000000000070f161d242a30363c42474c5054585b5e5f5f5c4f3e2c190600000000000002111f2c39434b4f53575a5c5e5f5f5f5f5e5c5955504a433b33291e1205000000000000000f223443515a5e5e5a53493d2f1f0d000000000000000000000000000d171d1f1f1d170e0200000000000000000000000000000000000000000007121a1f1f1b130800000000000000000000000000000000000a12181d1f1d170d000000000000000000000000000000000000000000000000000000000000000000000000000000000000000c151c1f1f1c150b000000000000000516263543505c666e757b808386878887837d79746e68615a5045372614010014293f53687d878976604b36210b000000000000000000000000000000000000001f34495e738998837b898d8d8c88837c756b615547392a1a0900000000000000001d32475c72889c8d77624c37220d0e2135495d71869a8b77624e39251000000000000d1e304152637485968c7c74849492826f5e4d3c2b1a090000000000000000000000000000162b4054697d90897d7c73656466686d73808e988775614e3a261200000000000000000000000000112333424e5658564d40301e0b0000000013293e53687d9388725c65798b8c8c8c8b898784827d78736d645a4f4233241301001c31465b7087927d6b5846343637352d374c6175848776604b36210b00000000000000000002090f161c22282d32373b404346484a4a483e31210f0000000000000000010f1b2630373a3e414447494a4a4a4a494744403b362f2820160c010000000000000000051625343e464949463f372c1f110100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001223344453616e79828a9095989b9c9d9b98938f89837c756d635544311d0800172c42576c82968c76604b36210b000000000000000000000000000000000000001f344a5f748b978283918f8c8e959791887d7265574838271503000000000000001e33485d72889d8f78644f3b2715182a3d5064788c9985705c48331f0b0000000000011223354556677789998d87939987756352402f1e0d000000000000000000000000000000172c42576c83978886837d79797b7d828891988a7a695845321f0b000000000000000000000000061a2d4051606b6e6a5e4d3b28140000000012273c52677c9386705b667b909494949494959796928e8882776d605142301e0b001d32475c72888975624e3b434a4c493f3246586770726a5a47331e0900000000000000000000000001080e13191e22272b2e31333434332c2113030000000000000000000009141c2226292d2f32343434343434322f2b27211b140c0300000000000000000000000716222b313434312b241a0e0100000000000000000000000000000000000000000000000000000000000001070b0f111212121211110f0e0d0b080501000000000000000000000000000000000000070d0f0f0b04000000000000000000000000050a0d0f0f0f0c0802000000000000000000000000000000050c1112100a0000000000000000000000000000000000000000091c2f41526271808c969b9692908f8f909295979b9d9790898073604b36210c001a2f44596e84998b745f4a35200b000000000000000000000000000000000000001f344a5f748b9782797b7976798088929b90847566554432200d000000000000001e33485e73899f937d6a564433282535475a6c8094927d6955412d190500000000000006172839495a6a7b8c9c9ca28f7b69574534231200000000000000000000000000000000172c42576c82929b9b979390909193969b9287796b5c4c3a2815020000000000000000000000000c2035495d6f7d847c6a57432f1a0600000012273c52677c93846f5a6277807d7d7d7d7d808284888e96948a7d705f4e3b2814001c31465b707b7d6d594645545f625d4f413a49545b5c574c3c2a17040000000000000000000000000000000004090e1216191c1e1f1f1e190f0300000000000000000000000001080d1114181a1d1f1f1f1f1f1f1d1a16120d07000000000000000000000000000000050f171c1f1f1c171007000000000000000000000000000000000000000000000000000000000000030d151b202426272727272626252322201d1a16110b0400000000000000000000000000020f1a2225241f170d0000000000000000000a13191f23252524211c160f060000000000000000000000000c18212627251d12050000000000000000000000000000000000001125394c5e708090988f87827c797878797c808386888b8c8c8c77624c37220d001b30465b70869b8b745f4a341f0a000000000000000000000000000000000000001f344a5f738997826b666461656c757d8995948473614f3c2814000000000000001e33485e73899f9a86736151443c3842536476899c8975624e3a261200000000000000000a1b2b3c4c5d6d7d8fa09a86725f4f3f3122140500000000000000000000000000000014293d5164738086898b898988888787878075695c4d3e2e1d0b000000000000000000000000000e23384e63788d9987725c47321d0700000012273c52677c93836d585a686a68686868686a6b6f7379838f9c8f7d6a57422e1900182c405361676861513e4f6372776d5f504237404647433a2e1e0d000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000091520293035393b3c3c3c3c3b3b3a383735322f2b261f170e03000000000000000000000211202d363a39332a1e0f00000000000006121d262e34383a3a3936312a23180d000000000000000000000d1c29343b3c39302314050000000000000000000000000000000000182c4054687b8e93867b726c6865636365676a6d7073747676776e5d4935200b001d32475c72889d89735e49341f0a000000000000000000000000000000000000001d32475c718797836c584f4c5159616c77849291806b58432f1a060000000000001e33485e73899fa39180706257504e536170829493806c5946321f0b0000000000000000000d1e2e3f4f6070879c9e8d7c6d5d4f403223160800000000000000000000000000000e21344655636b717374737372727070706b62574b3e2f201000000000000000000000000000000e23384e63788d9a86715c47321c0700000013293e53687d94826b564b5354535353535354575a5e667182949a86715c47321c00112335444e52534f433f54687d8c7d6e6051443631322f271d100000000000000000000000060d12151615110a010000000000050f161b1e1e1d1a160f08000000000000000000000000000000000005090c0d0d0d0b08050304080d12171b1e1f1f1b140a0000000000000000000000000003090b0b060000000000000000000000000000000000000000000000000a1926323c444a4e505252525250504f4e4c4a47443f3a332a2115060000000000000000000f202f3e4a4f4e473c2d1c0a000000000a1724303942484c4f4f4e4a453e352a1d0e0000000000000000081a2b3a4750524d4132231301000000000000000000000000000000001c31465b6f84968474685f5853504e4e505255585b5e5f728688725d48331e08001e33485d72889d89735e48331e09070707070707060402000000000000000000001a2f44586d829786715c48373d454e596673859687725d48331e090000000000001e33485e73899493998f80746b65636670808f99887563503d2a170300000000000000000007192b3d5063768b9f9b9b8c7b6d5e50423326180b00000000000000000000000000051728374550575c5e5f5f5e5c5c5c5b5b584f453a2d20110200000000000000000000000000000c2135495d7080867c6a57432e1a05000000152a3f546a8094806a543f3f3f3e3e3e3e3e3f41454a5364788f9d88725c47321d0006172632393c3e3b323e53687d928d7d7062544637281a140b00000000000000000000030f1921272b2b2a261d13080000010d18222a303333322f2a241b1208000000000000000000000000020b131a1e21222222201d1a19191d22272c303334342f271b0d00000000000000000000000c161d20201b120600000000000000000000000000000000000000000008192837444f585e63666767676766666463615f5c59544e473d3224150500000000000000091b2d3e4d5c6463594b3a271300000009192735414c565d616464635f5952483b2c1c0a00000000000000122537485864675f5141301e0a000000000000000000000000000000001f34495e73898f7966574c433e3b38393b3d404347586a7c8f89735e48331e09001e33485e73899f8a745f4a341f1b1d1d1d1d1d1d1b1a17120d0600000000000000152a3f53687c908c7764513e2d323c4856677a908b745f4a341f0a0000000000001e33485e7389837d8690918780797879838f9d8d7b6a584633200d00000000000000000002132536485a6c80938e868a958b7c6e60514436291c0f020000000000000000000000000a1927333c4347484a4a484747474646433c33281c0f02000000000000000000000000000000061a2e4152616c6f6b5e4d3b271400000000172c41566b82937d68533e292a29292929292a2c303a4f64788f9a86705b46311c000008151f25272926263a4e627587978e8072645546372715030000000000000000000614212c353b40403f3a3025190c05121f2b353e44484847443e372e251a0d0000000000000000000009141e272e333637373735322f2e2e31373c4045484a4943392b1c0b0000000000000000000e1d293236352e23150600000000000000000003060604000000000000011425374655616c73777a7b7c7c7c7b7b79787674716d69625a5042332311000000000000001226384b5c6b79766956432e1900000617273745535f697176797978746d65594a3a2714010000000000081b2e415466767c6f5f4d392510000000000000000000000000000000001f344a5f748b8f79645040352d272324262d3947556576889a88725d48331e08001e33485e73899f8b745f4a342f30323232323232302f2c272119100600000000001024394d61758994826e5c4b3c302a3c51667a908b745f4a341f0a0000000000001d32475b6e797869737d8892948f8e8f96998d7d6e5e4c3b2916040000000000000000000d1f31425466778a91806f7783908c7d70615447392d2014080000000000000000000000000a1620282e323334343332323230302f2820160b000000000000000000000000000000000000112334434f585a584e40301e0b00000000192e43586d83917b66513c271514131313141521304154687c9294806b57422d19000000020b101213121f3346586878879590827364554432200c0000000000000000061524323e49505456544d42372a1d1523303d4851595d5e5c59534b41372b1e1102000000000000000b1926313b42484b4c4c4c4a47444343464b50555a5e5f5e56493a281603000000000000000a1c2c3b464b4a413324130a0d0e0e0c09080d13181b1b19130a000000000a1e314354647380888d90919393929190908e8c8a87837d766d6151402d1a06000000000000182d415568798a86705c47321c0000112334455563707c868c8f908d898277685744301b0700000000001024374b5e71848e7c67523c2712000000000000000000000000000000001f34495e738893806d5e5148413c383639404a57647384949b87705b46311c07001e33485e73899f8b745f4a4244464747474747474644403c352d23180b00000000091e3245596c80928c7a695a4d443f46586b809488735e48331e09000000000000182c3f505e65645a606a7580888f949490887c6e6050402f1d0c00000000000000000007192b3d4e607183958573616571808e8e807264574a3e3225190e020000000000000000000000040d14191d1e1f1f1e1d1d1c1b1b1a140d0300000000000000000000000000000000000000051625323d4344433b30221201000000051c31465b7086907964503b251000040c131c26323f4e5e7084978a7764503c281400000000000000000316293a4b5a69768490928373614f3b2713000000000000000314243342505c64696b696054483b2d2533414e5a646d7273726d675e54493c2f20110100000000000a1a2937444e565d606262625f5c5a58585b60656a6f737472675846331f0b0000000000000114273a4a58605e5142301d1f222323211e1c22282d30302e271c0e00000012263a4d607283919b98979899999b9c9fa1a3a19f9c97928a806f5d4935200b0000000000051c31465b70859888725c47321d00081b2e41526373828f97908c8b8b8f9587735e49341f0a0000000003172b3f53677a8e8f7965503b2611000000000000000000000000000000001b3044586d82948c7b6f645c55514d4b4e545d68748392a198846e59442f1a05001e33485e73899f8b745f5357595b5c5c5c5c5c5c5b595550494035291b0c0000000216293d4f6274869788786b6058545764758898846f5a45301b06000000000000102232414b5057544e58626b747b80807b746a5e504232221100000000000000000000122537485a6c7d8f8c79675554616f7d8c908375685c4f43372b201304000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000071420292e2f2e281f120400000000091e33485d72888f78634e39240f12191f272f39444f5d6c7c8e90806d5a4734210d0000000000000000000b1c2d3c4b5966727d8a91806a56412c17020000000000000f21324251616e787d827c7266594b3e3443515f6c7782888987827a71665a4d3e2f1f0e00000000051728384755616a717677777774716f6e6e7074798084888b8675624e39240f000000000000081c304457687570604d3a2d33373838363331363c41454642392c1d0c0000182c4155697d90908783828384848687898c8e9092949697958d77624c37220d0000000000091e33485d72889c87705b46311c001024384b5d70829190847b7774767a838b76604b36210b000000000a1e32465b6e83968c76614c38230e0000000000000000000000000000000015293e51647789998d8277706a6562606268707a8693a1a994806a55402c1702001e33485d72889d8c7663686c6e70727272727272706e6a645c5347392a19080000000d2033455768798997897d736c686a7583938f7c6854402c17020000000000000e21334453626c6757464f5860666a6a6761584c4032231404000000000000000000091c2f425466778a94826f5c4a43515f6d7c8b9386796d6054483d3122120000000000000000000000000000000000000000050a0f131313110c060000000000000000000000000000000000000000030d14191a19140c0100000000000c21364b60758b8c77624c37221f262d333b434c56616d7b8b938372614f3d2b1805000000000000000000000f1e2d3b4854606c7885806b57412c17020000000000071a2c3e506070808b93978f8376695c4e435261707d8a959c9f9c968e84776b5c4d3d2c1b090000000e2134465665737d868b8d8d8c8a8785848486898f94999d9a8f79644f3a250f0000000000000c21364b5f73877c69564241484c4e4d4b48464b50565a5b564a3b291704001c31465a6f849782736d6c6c6e6e6f727476787a7c80828282796f5e4a36210c00000000000c21364b60758b99856f5a442f1a00172b3f53677a8d92807167625f60667080715d49341f0a000000001024394d61758a9d88735e49341f0a000000000000000000000000000000000e213447596b7b8b98948c85807a7776777c838d979faca38f7965513c271300001d32475c72889d8c76777c828487888888888888868380786f645748372614010000031628394a5b6b7988949087827d8087939283715f4c3925110000000000000015293e51627180745f4a3c444d565d60605b54473728190b000000000000000000001225394c5f718395897664523f33414f5e6c7b8b978b7d72665a4f402f1d0900000000000000000000000000000000010a12191f24282928262119110600000000000000000000000000000000050b10131415151410090000000000000f24394e63788e8b75604b362c333a41484f565f68737d8c94857565554432200e0000000000000000000000000f1d2a37434f5a67736e614f3c2814000000000000112437495c6d7d8f9d96959a94887a6c5e526170808e9b928d8b8c919996897a6b5b4a382614010000162a3e51637484909aa0a3a3a19f9c9999999a9e96908c8a868071604c38230e0000000000000d22374c62778d86725e4a545c616363605d5b5f656b6f70685846331f0b001f34495e738897826b58575758585a5c5f616365676a6b6b6c665d51412e1b0700000000000e23384d62778d97836c57422d18001c31455a6e83978a7562544d4a4c53616a6354412e1a0600000001162b3f53687c9099856f5a45301b060000000000000000000000000000000005182a3c4d5d6c7a87919a9994908d8c8c9197928a8ea19c88735f4b37220e00001b30465b70879c8e848c9296999b9d9d9b9b9b9c9b98948c8275655543301d0a0000000a1c2d3d4d5c6976828c93969494968d8274645442301d09000000000000001a2f44586d808c76604b46535f697176746f65554637291b0e000000000000000004192d4155687b8f917d6c5a47352331404e5d6c7b8a959084776c5e4c38240f0000000000000000000000000000000b141d262d33393d3e3e3b352d23180b000000000000000000000000000711192025282a2a2a29241d12050000000013283d51667b9189735e49373f474e555c636a727b869091847566574737261403000000000000000000000000000c1925313d49565e5c514232200d000000000005192d405366798b9a8b82808691988a7c6e6170808f94887d7776777c8690998a79675643311e0a00001b3044596d8292a2aeb4b8b3aba49e9b9b9fa693837b7774706b615343301d090000000000000c22374c61768b8e7965586670767877757270737980858676634e39240f001f344a5f748b97826b564242434345474a4c4e50525456565752494032231100000000000010253b5064798f94806a55402b16001f34495e73889b86705b46383537435054504536251200000000071c3045596d839796826c57422d180300000000000000000000000000000000000d1e2f3f4e5c69747d868b8f91918f8d88837c768ba094826c5845301c0800001a2f445a6f869a9b979e9a97938f8c89878687888c91989f938472604d392511000000000f1f2f3e4c59646f777d838686827a70655d504232200e000000000000001c32475c71878c77624d5764707c868c8a8473645547392c1d0d00000000000000091e32475c7085988673614f3d2a1822303f4e5d6c77838c938a7b66503b26110000000000000000000000000007121d27313941484d5253534f494035291a0b00000000000000000000000c19242d343a3d3f3f3f3e382f231404000000162b40556a809488725c474b535b626970777d868f988e8273655748392919080000000000000000000000000000000814202b384349483f3324140300000000000c2134485c6f83968d7b6d6a73808f9b8d7d70808f9384766a6360626972808f978573604d3a261200001e33485d72889cb0b3aea79f978f8986868c978f7967625f5c574f44352514010000000000000a1f33485d718695826d6776838b8f8d8a8887888e94928c79644f3a240f001f344a5f748b97826b56402c2e2e30323437393b3d3f4041423e362d22140500000000000013283d52677c92927c67523d2813001f344a5f748b9b86705b46312025333c3f3b33271807000000000d21364a5f73889c937d68533e2914000000000000000000000000000000000000001121303e4b57616a7176797b7b7977736e68778d9f8c7864513d2915010000192e43586e8398958d8986827d797773706f7073767c85909e907c6854402b16000000000115293c4f60707b7d776e70706d7a7d796e604f3d2a16020000000000001d32475c7287907c685e6875828f94919592837365574a3b2a18050000000000000a1f344a5f748a8c7a685644321f0d1221303f4e5a6670787d7d73614d39240f0000000000000000000000000c1924303a444d555c62676868645c534738291a090000000000000000000c1b2a3640484e52545454524c4132210f000002192e43586d839786705b545e676f767d858b929a94897c70635547392a1b0b0000000000000000000000000000000000020e1a263034332c22150600000000000013273b5064778c9683705e56627080909d8f868f96857466594f4b4e5661708092907c6955412d1804001e33485e7388989d9d9a938c837b747070798795826f5d4c47423c3226170800000000000000051a2e43576c80958873728595a0a4a39d999b9888827c786d5d4a36210d001f344a5f748b95806b56402b19191b1d1f222426282a2b2c2c29231a100400000000000000142a3f54697d948f79644f3a2510001f344a5f74899e89745f4b38241520272a27201609000000000012273b5064798ea28f7965503b2611000000000000000000000000000000000000000312202e3a444e565d6164666664625e5a6a7d9295826f5c4935210e000000172c42576c8297907974706c6865625e5b5a5b5e626972809097836e59442f1a00000000001b2f44586c7d8e948a7b69687a8c948c7d6d5a45311c070000000000001a2f44596d82948778737a86938a807b828a92837567594734200b0000000000000a1f344a5f7489806e5c4b39271402031221303d48535d646869635544311e0a00000000000000000000010f1d2a36414c57606970777b7d7d786f645647382716040000000000000007192a3948535c6367696a6a675e503e2b170300081d32475c708699846f5a66717a838a92989f978d82766b5f524537291b0c000000000000000000000000000000000000000009141b1f1e19100400000000000003182d41566a80938f7a67534451617183939f9b9c8a786757483b363943516274889985705b46321d08001b3044576a7a8488888680777067605b5c6877898d7b6a5a4b3a2820150800000000000000000014293d5165798e8e79778da2a39b91898587927d6c68645c4f3f2d1a06001e33485e738995806a543f2a150301070a0c0f111315161717150f07000000000000000000172c41566b82968c77624c38230d001d32475c70869a8f7a6754412f1d0d1315120c04000000000002172c40556a7d93a08b76614c37220d000000000000000000000000000000000000000002101c28323b42484c4f50504f4d556576889b8b7865523f2c1906000000162b40566b8296917c675b5754504d49464446494e556173889b87705b46301b00000000001d32475c72889ca799856f6e8498a99c89735e48331e09000000000000162a3e51647687948c898d8c82776d666c7986938677634e39240f000000000000071c3145596a736f61503f2d1b09000003121f2b3640495053544f453727150200000000000000000000101f2d3b47535f69737c858b9194938c827465564533210f0000000000000011243748576570777c7d80807b6e5b46311c07000b20354a5f748998836c6676848e979fa4988e857a6f64594d4134271a0b0000000000000000000000000000000000000000000000000000000000000000000000081d32475b7085998974604b3743546475879ba693806d5b49392a21263345586c829789745f4a34200a0015283b4c5c68707272706b645c544c464a5a6b7d908878695744301d09000000000000000000000e22364a5e728795807689908f887d756f74848572604f493e31211000001c31475c708695806a543f2a1a18171513110e0b0804000000000000000000000000000000192e43586d839889735f4a34200a00192d42576b80939784705e4c3a291706000000000000000000081c31465a6f84999d88735e49341f0a000000000000000000000000000000000000000000000a192a3a4953565148434c576472839491806d5b4936231000000000152a3f546a8095947d6853423f3b3834312f313439465b70879c87705b46301b00000000001c31465a6e80929e92806b6a7d8f9e95836f5b46311c070000000000000f22354759687682888983796f655a515b6875838777634e39240f0000000000000116293c4c595f5d514232211000000000010e19242d353b3e3f3b33281909000000000000000000000e1e2e3d4b5865717c879099989494979e93847362513f2c1906000000000000182c40546675838c9294959588725c47321d07000f24394d63778d97826b6e8395a1aaaf9a867a71675d53473c3023160900000000000000000000000000000002090f1215151515120e06000000000000000000000d22374b60758a99846f5a46313647586c82979d8a7663503d2c1b0c162b40546a80958c76604b36210b000b1d2e3e4b545b5d5d5b5650484038313c4e607387978873604c39251100000000000000000000071b2f43576a80938772777b79736a615a66778b7d6d5c48342113030000192f44586e8495806b5640312f2e2c2a282623201d19140e060000000000000000000000041b30465b70869b86705c47311c070014283c5064778b9f8e7b6958463524120100000000000000000d21364b5f74899e99856f5a45301b06000000000000000000000000000000000000000000000e22364858676b655a585f6975839194847261503e2b190600000000152a3f546a809595806b5640312a24201c1c222c3b4c60748999846f5a442f1a0000000000172b3e51627383898273636070808983766653402c180300000000000005182a3b4a58646d73746e665c52483d4a58647272695a4734200b000000000000000c1e2e3c454a4840332414040000000000000711192126292a2620160a00000000000000000000091b2c3c4c5a6976838f99968c84807d828a9792806e5c4936230f0000000000001c31465b7084949f97928d8b826e5a45311c060012273c51667b9094806a6d808a91979c9c887665544a40352a1e12060000000000000000000000000000020d161d23272a2a2a2a27221a0f03000000000000000011263a4f64798f95806b56412c2a3f54697d9496826d5a4633200e04182d42576c82978b76604b36210b000010202d394046484846423c352d241e3144576a7d93907c6854402c18040000000000000000000817283b4f63778c8d786466645f574e485b6e828c7764503b2713000000172c42576c8297836c5748464443413f3d3b3835322d28221a1106000000000000000000091e33485d728897836d58432e1904000d2134485b6f8295998775645341301e0d000000000000000011263b5064798ea296826c57422d18030405050402000000000000000000000000000000000011273c51657680776d6c727b879394867566554432210f0000000000152a3f546a809597826c594e453e39353131363e4a58697c8f95806b57422d1800000000000f213345566572736e645552616f747066584836241100000000000000000c1d2c3b4751595e5f5a534940352c3a47545e5e574b3c2b18050000000000000000101e293134332d231506000000000000000000060d121414120c040000000000000000000001142738495a6a7887949c908479706a686d7988978c7865523f2b170300000000001e33485e73899e8f837c78757163523f2b170200152a3f54697d94937d68616d767c83889194837261503e2b180d01000000000000000000000000000008141f2931383c3f3f3f3f3c362d2113030000000000000014293e53687c92927c67523d28283d52677c93907b67533e2b17040a1e33475b70869a89735e49341f0a000002101b252c313333312d2821191114283b4f63778c9884705b47331f0a000000000000000002142635434d5d7186937d6a55504b443b3f53677b90806a56422e19050000162b40566b82978570605d5b5a58565452504d4a46423d362d23180a00000000000000000b20354b5f748b947d6954402b16010005182c3f5265778a9c9382705f4e3c2a180600000000000000162b3f54697d93a7937d68533f2a1618191a1a191714110b040000000000000000000000000012273c52677b918a8383878f99918475675848372615030000000000152a3f546a80959b88776a6159534e4a46474a515b677688998d7965513d281400000000000416273847555d5f5b524643525c5f5c53483a2a19070000000000000000000e1d29353e45484a463f362d231c2936424949433a2d1e0d000000000000000000000c161c1f1e191105000000000000000000000000000000000000000000000000000000000a1e31445667788897998b7d72665c55535b69798b95826e5a46321e0a00000000001d32475c72889984716863605d544535220f0000182d42576c8297917b66515a62686d747d8b90806d5b4835220e00000000000000000000000000000a1826323c454c515454545451493e31200f00000000000000172c41566b80958f79644f3a25273c52677c938a75614c38240f0012263a4e62768a9a86705b46311c07000000000911181c1e1e1c19130d05000c2034485d71869a8b76624d38240f00000000000000000b1e31435360666b809585705b47373028384c61758a86715c47331e0900001a2e43566b82968a787572706f6d6b696765625f5b5751494035281909000000000000000e23384d62778d907b66513c2712000000102336485a6d8091a08f7c6b5947352310000000000000051a2f44586d8397a5907a65503b292c2d2f2f2f2e2c29251f18100600000000000000000000051424394e6276899797979b958b80736658493a2a1908000000000000152a3f546a8095a096887d756d68635f5b5c5f656d7886959483705d4a36220e000000000000091a293742494a463f353440484a4740362a1c0c00000000000000000000000c18222a303334312b231a100b18252f34342f271d0f000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000011263a4d6073859697897a6d605449403f4b5c6e82958a75614d39251000000000001b30455a6f84988f7c6a574b48413627170500001a2f445a6f84999079644f474e5359616c7b8d8a7764513e2915000000000000000000000000000a192836434f596066696a6a6a655c4f3e2b1804000000000000192e43586e83988d77624d3823283e53687c9386705c47321e09061a2d4155697d9196826c57422e19040000000000000000000000000000030707192e42576b8295907b66513d2813000000000000000010253a4e61717b6d7a8f8a75614d38242632475c70868b75604b36210c00001e33485d72869a968d8b88878483827d7c797774706b655d53463727150200000000000011263b50657a908c77624d38240f00000006192b3d4f617385979b897664523f2c19060000000000091e33485d72879ca28d77624d393e404344444443423e3a332c23180c0000000000000000051423313b46596a79848b8c8782776d6255483a2b1c0c00000000000000152a3f546a80958b959a9189827c777370707479828b979687766553412e1b07000000000000000b19252e3434312b22222c3334322d24190c00000000000000000000000000050f161b1e1f1c171007000008131b1f1f1b140b00000000000000000000000000000000000000000000000000000000030e161a1d1c1912090000000000000000000000162b4054697d909788786a5c4f43372c2d3e5164788d917c68533f2b160100000000172c4054697d9199877562503d2e2518090000001c31465b70879b8e78634e38393f454e5e708695826d58432e1a050000000000000000000000061728374654616c757b7d808080796d5b48331f0a0000000000001b30465b70869b8b75604b3620293e53687d92806c57432e19040e2235495d708598927c68533e2a15000000000000000000000000000410181c1c17293d52677b91947d69543f2a15000000000000000012273c52677c8a757589907b67523e343b3c43586d838d77624c37220d00001f344a5f748a9b9b908f90919395969492908d8986807970645545321f0b000000000001162b3f54687d9388735e4934200b000000000e2032445667798a9b94826f5c4935210e00000000000e23374c61768ba09f89745f4a4d525658585a5a5857534e473f35291c0d00000000000001122332424e56555b67707576726c645b5044382a1c0d000000000000000014293e53687d9480838c959c96918d898687898e959c92867768594836241100000000000000000008131a1f1f1c170f10191e1f1d191107000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000040a0f1212120f0a04000514202a2f32312d261b0d00000000000000000000192e43586e83988979695a4c3e31251a2235495d728797836d59442f1b060000000011263a4e6175899c92806d5a48352210000000001e33485d72889d8c77624c37272a3243586e849987705c47311c070000000000000000000000122435465564727d8990949595948b76614c37220d0000000000001d32475c72879c89735e49341f263b4f6274807463503c291402162a3e5165788da08c77634e3925100000000000000000000000000514222c31312b24394e63788d96826b56402b16010000000000040913293e53687d8f796f8496826c58434750514a556a808f78634e38230e00001e32475a6c7d93907c78797b7c8083878a8e919599958d8273614e3a26110000000000081c3045596d8397846f5a45311c070000000a1927333a4a5b6c7d8f9f8c7865513d2813000000000012263b5065798fa49c87715c5a61676b6c6e6f6f6e6c68635b52473a2b1c0c00000000000a1e304151606b695a545c60605d58514b4741392c1c0d000000000000000013293e53687d94836f7982888e929598999897948f88807467594b3b2a19070000000000000000000000000000000000000000000000000000000000000000000000000000000000060b0b0a0500000000000000000000060a0b0b07000000000000000000000000000510181f24272727241f180e1423323d44474641382b1b0a000000000000000000192e43586e848b7a6b5b4b3c2e2114081a2e43576c829688725d49341f0a000000000a1e3246596c80939d8a7764523f2c19060000001e33485e73899f8b75604b3e3c3e44505f72869a87725c47321d07000000000000000000000a1d2f4153637383909c9a948f8b878475604c37210c0000000000001e33485e73899c88725c47321d1f334556646a64564533200d091d3145596d82959a86715d48341f0b0000000000000000000000021423323f46463f33364b60768c97826b56402b1601000000010e181e21283d52677c937d697d9387725d495664665b566b808d77634e38230e0000182b3d52677c939079646466686a6e7175787c80848888897d68543f2a1400000000000d22364b5f738895806b56412c1803000004172837454e52546070829394806b56422d180300000000152a3f54697d93a898846e626d757c808384868684827c776f6458493a2917050000000011263a4d5f6f7d77634e474b4b545c60605c554a3a2b1c0e0000000000000012273c52677c93866f656d73787c80838483827d79746c62564a3c2d1d0c000000000000000000000000070e14191c1e1e1e1c19140f0801000000000000000000000000000007121b20211f1910040000000000000b141b2021201b1308000000000000000000000c17222c33393c3c3c39332b202032424f595c5b5549392714000000000000000000182d41566a7c7c6c5d4d3d2d1e10030014293e53677c928c77624d38230e0000000003162a3d506376899b95826f5c4936230f0000001e33485e73899f89735e5653515258616e7d8f95826d59442f1a050000000000000000000013273a4c5e7082929b9087807976726f685946321e090000000000001f344a5f73899b86705b46301b1627384651545146382716041024394d6075899c94806b57432e1a0500000000000000000000000d1f3142505b5b5143374c61768c97826b56402b1601000001111f2b3336353c52677b91836d788d8c77634e62747967586d838b76604c37210c000012273c52677c939079644f505355585c6063676b6f7272737467533e2914000000000012273c5065798e907b66523d28130000000d2134465562676a6c71798b99846f5a442f1a0500000000192e43586d8397ab95806b72808a919598999b9b9996928b827667584735220f00000000162b4054697d8e79644f44515d67707675706858493a2c1e1002000000000011273c51667b9188725d585f64686b6c6e6d6c696560584f45392c1e0f000000000000000000000008121b22292e31333333312e29231c140b0100000000000000000000000817242e3536342d22140400000005121e272f3436352f25180900000000000000000f1c29353f474d5152514d473d322a3d4f606d7270675744301b00000000000000000013273a4d5e68695e4e3f2f1f0f00000010253a4f64788e8f7965503b261100000000000d203346596b7d909f8c7865523e2b180400001e33485e73899e897a716b6866676c747d8c97887665523e2a1601000000000000000000071b2f4356697c8e98897d736b65615d5a554a3b2917030000000000001f344a5f748b99846e59442f1a0a1a28343d3f3d34281a0a00162b3f53687c90a28d7965503c281400000000000000000000000014293c4f606e6f61503d4f64798f947d69543f2a150000000c1e2f3d474b4a435065799086707288927c6853687c836e5d728787725d48331e09000012273c52677c939079644f3b3e4044474b4e52565a5c5c5e5f58493724100000000001182c41556a80948b76614d38230f00000013283c5063737c8082868c9898846f5a442f1a05000000001c31465b70869ba7937c7082919d9c938c89898b8e92999f94867664513e2b1602000000192e43586d83907b665155616e7a858b8b857667584a3c2e2010000000000010253a4f6479908b75604b4a4f53565758585754514b443c32271b0e00000000000000000000020f1a252e363d424648484846423e3730271e130800000000000000000004162635414a4b483f32221100000b17232f3a43494b4a42362716040000000000000f1e2d3a47525b62666766625a4f433645596c7d8785735e49341f0000000000000000000b1e30404d53544d40302111010000000d21374c60768b937d68533e291400000000000417293c4e6173869895826e5b47331f0b00001e33485d72879c988d86807c7b7c82889192867869594835230f000000000000000000000e22364b5f7286998a796b6057504c484541382c1d0c000000000000001f344a5f748b98836c57422d18030b1721282a2821170b00041b2f44596d83979a86725e4a36210d0000000000000000000000001a2e43586c7d806d594554687d92907b66513c271200000016293c4d5a605f564e63788f89736d8296826d59687d897465798d826d58442f1a06000012273c52677c939079644f3a282b2f32363a3d41454747484a453b2c1a0800000000071c31465a6f849986705c48331e0a000000162b40566b80929497999690887a6855412c1803000000001e33485e73889da5907a798d9a91888077737375787d86909c94826d5a45311c07000000192e43586e8394806c5e6672808c959194958676685a4c3e2e1b08000000000e23384e63788d8d78634e393a3e40424343423f3c37312920150a000000000000000000000412202c37414a51575b5d5e5d5b57524b443a3025190c00000000000000000e213344535e605c50402e1b07111d2834404d575e605e544534210d00000000000c1c2d3c4b58646f767b7c7b766d6154454a5f73889c89745f4a341f0000000000000000000112222f393f3f3a30221203000000000a1f34495e738995806b56402b160000000000000c1f314456697b8e9e8a76634e3b261200001a2f44596d8296a9a09a9593919296938a8074685a4b3b2a18060000000000000000000013283d5165798e907d6b5b4e433c3733302c251b0e00000000000000001f344a5f748996826b56402b160100050e1315130e050000091e33485d72889c927d6a56432f1b070000000000000000000000001c32475c708788745f4b5a6e83978b76614d38230e0000001c3145596b7673665862778d8c76677c9088725e677b907d73838c7965523e291501000012273c52677c939079644f3a2c2c2c2b2b2a2a2c30323233383832281a0b000000000b20354a5f748994806b56422d1904000000162b40556a7d85868684827c756a5c4b39251200000000001f344a5f748ba0a38d787d8e867d756c635e5e606469727d8d9d89745f4a35200b000000162b4055697d918a7a737884908c827b80879586776a5c4b38230f000000000c21364b60768b907b66513c27292c2c2e2e2c2a27221c150d0300000000000000000000031322303d4a545e656c70727372706c6660574d43372a1c0d00000000000002162a3d506271766e5d4a362216222e3a46525e6a72767263503c2813000000000618293a4a5a6876828b9093918a807163544d63778d97836e5a46311c0000000000000000000004121d25292a261e12040000000000071d32475c718797836c57422d18000000000000021427394c5e718598927d6a55412d190400162a3e5366798b989c999895918c8680766d63574a3c2d1d0c0000000000000000000000182d42566b80958874604e3d3028221e1b1812090000000000000000001e33485d7287947d69543f2a1400000000000000000000000a1f344a5f748b998875614e3b2713000000000000000000000000001d32475c72888f7a665263768a9884705b47331e0a0000001f344a5f738985766660768b8f7964768b8d77636073858d8990806f5d4a36220f00000012273c52677c939079644f4342424140403f3f3e3e3c3f464d4d45382817040000000f24394e63778d8d7864503c28130000000013273b4e5f6a6f6f6f6e6c6861584c3e2e1c0900000000001f344a5f748ba0a18c767a78726a61585049494b4f56606f82978c77624c37220d00000012263a4e617384928d898c8e84796f666b768491887a66523d281300000000091e33485e7388937d68533f2914161719181715120e0801000000000000000000000000102131404e5b677179828688898886827a736a605447392b1b0b0000000000081d3145596d808c7965513c272834404c58636f7c878c806b56402b16000000001123354758687887949b949090989082726353667b908f7b67533f2b170000000000000000000000000a111414110b01000000000000001a2f44596e8499846e59442f1a000000000000000a1c2f4154677b8f9985705c47321e09000f23374a5c6c7a84878483807c77726b635a5045392c1e0f0000000000000000000000001c31455a6f8598836e5945311f140d09040000000000000000000000001a2f44596d83917c67523d281300000000000000000000000a1f344a5f73878c7c6a5845321f0b000000000000000000000000001c32475c718796826f626e80938f7b6854402c18040000001f34495d7083948574647489917c677086927c6856667580837d7162513f2d1a0700000012273c52677c93907964585857575656555454535352525a6262564634200c00000011273c51667b9085715d4935210d000000000c1f31414e565a5a5a5957534d453a2e20100000000000001f34495e73899ea08b7566645f574e453c3434363a43546a80958d77624c37220d0000000b1e314456657380888a847a71675c5259667380887a66523d281300000000051b30455a6e8085826b56412c170200000000000000000000000000000000000000000a1c2e3e4f5e6c79848d959a99989b9a968f877d7265574939291806000000000d22374b607489937d68533e2e3a45515d6975828d9a8f7c69543f2a15000000081b2e405364768797958980797b8591918271626d82968873604c3824100000000000000000000000000000000000000000000000000000172c41566b829686705b46301b00000000000000001225384c5f73889c8a75604c37220d00071a2c3e4e5d676f706f6c6b67635d574f473d33281b0e000000000000000000000000001e33485d728897826b56412c1702000000000000000000000000000000162b3f5367798878644f3a25100000000000000000000000071c3044576877796d5e4c3b281502000000000000000000000000001a2e43586c80928d7d777d8d9584725f4c392511000000001a2e4153657686938371738994806a6b8094826d5857636b6c6a6153443422100000000012273c52677c9390796f6e6e6c6c6b6b6a6a6a686867676e767463503b261100000012273c52677c8d7a6855412e1a0600000000021323313b4244454444423e3931281d10020000000000001c31465b70869a9e89735e4f4a433b3129201f263344586d82978b76604b36210c000000021527384756626c727470675e544a3f4855626f736b5d4b38230f0000000000162b3e51626b70746955412c170100000000000000000000000000000000000000011427394b5c6d7c8a97958d878483868c959e9a9083756757473624120000000011263b5064798f937d68533e3f4b57636f7b879295898070604d3a26110000001124374a5d7082949485766b6568738290908273788a94806c5844301c090000000000000000000000000000000000000000000000000000152a3f54697d9487705c47311c00000000090f110e091c3044586d82968f78644f3a240f00000f20303f4b545a5b5a5756524e49433b332a21160a00000000000000000000000000001f344a5f748997826b56402b16010000000000000000000000000000001024374a5c6b736e5d4a36210c00000000000000000000000114273a4b5a64655c4f402f1d0b000000000000000000000000000014293c5063748592918d91948776665442301c09000000001124364858687788907d728897836c65798f87725d49505657554e43352616050000000012273c52677c938d86858484838382828080807d7d7c7c828a7c67523c271200000011263b5064757b6e5d4b3926180c000000000004131f272d2f302f2f2d2a241e150b0000000000000000192d42576b80949d88725d4e443d37322e2d313943516274889a86715d48331e0900000000091a29384550585d5f5b544b41372d3744515d5f594e3f2e1b0800000000000f22344450565b5f5a4c3a26120000000000000000000000000000000000000000091d314456687a8b9b8f8378716e6d7178828c97a19486756453412f1c0900000014283e53687c92917b665145515d6975828d998f83776d615243301e0a000006192d4154677a8d9886756659505663718291918588978d7864503d2915010000000000000000000000000000000000000000060a0d0d0c0913283d52677c9288725c47321d000005121d2426231c15293e53687c93917b66503b261100000212212e384044464442403d39342e2820170e040000000000000000000000000000001f344a5f748998836d58432f1a05000000000000000000000000000000081b2d3e4d595e5c50402e1b070000000000000000000000000a1c2d3c484f504a3f3122110000000000000000000000000000000d203345566674808789888276685948372513000000000006192a3a4a5a6a7a8a8c7b8a9a856f5f74898c77624d3c4142413b31261708000000000012273c52677c929e9b9999999898979795959494939393948876634f3a25100000000d2134475763665e50403d352a1b0a0000000000020d161c1f1f1b1a1815100a0200000000000000000014283c5064778b9e8c796b6058514b474343464c55616f8091927d6b57432e1a0500000000000b1a27333d44484a4740382e251a263440484a453c302110000000000000051626333c41474a463c2e1d0a00000000000000000000000000000000000000001125394d607386988d7d70655d59585d646e798694a29483705e4c382511000000162b40556a80958d78634e56636e7a879294887c70655a50433425130100000d2135495d7084978d7a6858483c455363738596989a9a86715d4935210d000000000000000000000000000000000000030d141b1f2222221e18263b50667a9088725c47321d0004142330383b382f22263b50667b91917b66503b261100000003101b252c2f302f2c2b2825201a140c0400000000000000000000000000000000001d32475c71879b87715d4834200c000000000000000000000000000000000f202f3c4549483f32221100000000000000000000000000000f1e2b353a3b362d211304000000000000000000000000000000041628394856636c7274736d64584a3b2a19080000000000000c1c2c3c4c5c6c7c8c90989c87725c6e83917c67523e2c2c2c271e140800000000000010263b5065798a8d8d8c8b8a8988888888878787878888827669594733200c00000005182939464f514e555651473928150200000002121f2a31343430291f120400000000000000000000000d2135485b6e8092988a7d736c65605c58585b606872808e988775624f3b281400000000000000091620292f3334322c251b120916232d333430291f120300000000000000081621282d3234322a1e10000000000000000000000000000000000000000000172b4054687c9091806f605349444349515c68758493a08e7b6854402c18040000172c42576c82978b75605b6874808c988d82766a5f53483d3225160700000013283c5064788c96836f5d4b3a2a35455566788a9ca994806a56422e1a0600000000000000000000000000000000000b1620292f34373737332c243a4f64788f88735e48331e00102232414c504c40302d3d52677c918e78644f3a240f00000000000811171a1b1a171614100b0600000000000000000000000000000000000000001a2f44586d82968c77634f3b27130000000000000000000000000000000002111e293034332c2114040000000000000000000000000000000d18212526221a100300000000000000000000000000000000000a1b2a394550585d5f5e5951473a2c1d0c00000000000000000e1e2e3e4e5e6e7d8e9e9f89745f697d92826c57422d1917120b02000000000000000d22364a5d6d75777776757473737272727170707072726d64594b3b291704000000000d1b2a384653606a6b645745321e0a0000001020303d454a49443c302212010000000000000000000005182b3e51637384939b9088807a75706e6c70757c8590998a7a69574533200c0000000000000000030d151b1e1f1d18110800000511191e1f1c160d01000000000000000000040d13181d1f1d170d000000000000000000000000000000000000000000001b30455a6e83978874625142362f2e353f4a58657586979884705b47321d090000192e43586d839888725f6d79869294887b6f64594d41362a21150700000004192e42566b80948e7a6653402d1c2738495a6d8093a7937c67523d28130000000000000000000000000000000003101d28333c43494c4c4c474036384e63778d89735e48331e00182c3f505f665e4e434248586b80958a75604b36210d00000000000000000000000000000000000000000000000000000000000000000000000000152a3e53677b8f927d6a56422f1b0800000000000000000000000000000000000c161c1f1e190f040000000000000000000000000000000000050c10100d0700000000000000000000000000000000000000000c1b28333d43484a48453e35291c0e00000000000000000000102030405060708090a08c766163778d86705c47321d0800000000000000000000071b2e3f4f5a60626260606768645c5c5c5c6668655d5c5951473b2d1d0c000000000c1c2b39485664717d8275614d38230e0000081b2d3e4e595f5e584e40301e0b00000000000000000000000f213345566574838f999b958f8a8683838589909894887a6b5c4b3a2816030000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001e33485d728894806b584433241a1a222d3a475767798c9f8a75604b36210c0000192e43586e8499866f707d8a979083766a5e52473b3024190e0300000000091e33485c71869a87725e4b3723101a2b3d5063778ca1917b66503b26110000000000000000000000000000000413212e3a454f585d6162615b53493f4c62778d88725c47321d001e32475b6e7b6c5f57575c66758896836e5a46321d08000000000000000000000004080b0e0f101111100e0a0500000000000000000000000000000f24384c6073889a86725e4b3724110000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000a1620292f333433302a22180c0000000000000000000000021222324251617182928e78635d72878a75604b36210d00000000000000000000001021313e464b4c4f60707b7d776b5d5d6d7a7d796e604f3e352a1d0f000000000517293a49576674828f9079644f3a250f00000f24374a5c6c74736b5e4d3b2713000000000000000000000004162738475664717c868e94999c9b98989a99928a82766a5c4d3e2d1c0b0000000000000000000000000000000000000000000000000001090d0f0f0f0a0200000000000000000000040a0f13151616161615151312110f0c09050000000000000000001f344a5f748b907a66513c28150606101c2a394a5c6f83978e78634e39240f0000192f44586e84998471808e9b8e807265594c4035291e12070000000000000e23384c61768b95806b57432f1b080e20354a5f748ba0907965503b26100000000000000000000000000000021222313f4c58626c727677766f665c514c62778d88725c47321d001f344a5f748a7c726c6c707784938c7966533f2b17030000000000000000070e14191d20232525262626231f19130b020000000000000000000000091c3044576b7d928e7a6754412e1c090000000000000000000000000000000000000000010000000000000000000000000000000000000000000000030c1215141009000000000000000000000000000000000000040d141a1e1f1e1b160f0500000000000000000000000000041423334353637488907b66586c828e79644f3a261100000000000000000000000313202b323644586c7d8e948a7b69687a8c948c7d6d5a45311c0c00000000000f2235475867758492938574614d39240f0000152a3e53677a89887c6a56422d18030000000000000000000000091a293847535f697279808487898b8a88847d776e64584c3e2f20100000000000000000000006080806000000000000000000000009141d222525241e150a000000000000000610191f24282a2b2b2b2b2a2a29272624211e1a150f080000000000001f344a5f748b8f78634e38230e0000000c1b2c3f53687c929079644f3a250f00001a2f445a6f86998480909a8c7d6f6154483b2f23170c000000000000000011263b50657a8f8f7a65513d2814000a1f344a5f748ba09079644f3a250f0000000000000000000000000000102030404f5d697580878c8d8b83796e635964788f87725c47321d001f344a5f74898f878383868b9590806e5c4a3724100000000000000009131b22282d3235383a3a3b3b3b38332e261e150b000000000000000000000115283b4e6175889784705d4b39271504000000000000000000000000000000000911151615100800000000000000000000000000000000000000081520262a29241d120400000000000000000000000000000000000000000000000000000000000000000000000000000000000616263645596d83937c6853687c927c68533e2914000000000000000000000000030e171e32475c72889ca799856f6e8498a99c89735e48331e090000000000172b3e5164768694928374675745321e0a0000162b40566b82969a856f5a442f1a050000000000000000000000000b1a2936424d565e656a6e71737474726f6a635b51473b2e20110200000000000000000a141a1e1e1a140c01000000000000000a192631373a3a3932281a0a00000000000c18232c33393d3f404040403f3f3e3c3b3936332e29231b1106000000001f344a5f74898f7965503b28180c05030d19273b50657a908f78644f3a240f0000192e43586e8499888e9a8b7b6d5f5144372a1d110500000000000000000014293f53687d938b76614c37230e000a1f344a5f748ba08f78634e38230e000000000000000000000000000b1c2d3e4e5e6d7a879298949496968c82766b687c9287705b46301b001d32465b6e808f9897979a988d827161513f2d1a07000000000004101c262f363d42474a4d4f4f5050504d48423a31281d11050000000000000000000c1f3245586b7d908d7a685644332110000000000000000000000000000003101c252a2b2a241b0f0100000000000000050606020000000000061726323b3f3e392f2214040000000000000000000000000000000000000000010a12191d1e1d170f04000000000000000000000008182b3f54697d94806a54657990826c57422d180300000000000000000000000000031c31465a6e80929e92806b6a7d8f9e95836f5b46311c0700000000001d32465b6e82948f8273655649392815020000152a3f54687b89897d6b57422d1803000000000000000000000000000b1824303a424a5055595c5e5f5f5d5a554f473e34291d100200000000000000000d1b272f33332f281e1103000000000004162837444c4f4f4d45382816040000000d1c2a3540484d52545656565654545352504e4b48433e372e2418090000001d32475c708693806b58463629201917202a3645576a7d938b76614c37220d0000192e43586e84999b9b8b7b6c5d4f413326190c0000000000000000000000162b40566b829688725d48331e09000a1f344a5f748ba08d77624c37220d0000000000000000000000000416283a4b5c6c7c8b978c837d7d828890938980798598866f5a442f1a00172b3e5161707c84898b89847a6f62534433221000000000000514222e39424b51575c5f626464666665615c564e443a2f22150600000000000000000215283b4e60728596867361503f2e1e0f0000000000000000000000000112212e383f403f382d1f0e00000000010b141a1b1b160e04000000122435444f54534c40322110000000000000000000000000010406090c0e1013151d262d3233322b221506000000000000000000000012273c51667b90826b5663778d856f5a45301b060000000000000000000000000000172b3e51627383898273636070808983766653402c180300000000001e33485e7388847b71635547392b1b0a0000001125394c5e6d74736d5f4e3b281400000000000000000000000000000007131d272f363c414447484a4a4845413b342b22170c0000000000000000000b1c2b39434848433b2f211100000000000d2134455560646461564633200c00000a1b2b3a47535c6267696b6b6b6b6a6a68676563605d58524a41362718080000192d42566b809388756454473c332e2a333c47546374879985705c48331e090000192e43586e84999e8e7c6d5d4e3f31231508000000000000000000000000172c42576c8397866f5a45301b06000a1f344a5f748ba08b75604b36200b0000000000000000000000000e20334557697a8b9586796f69686c747d899593909499846e58432e19000f223443525f686f7374736f685e52443526150400000000041423323f4b565e656b70747779797b7b7976716a61574c403324150600000000000000000c1e31435567788a91806e5d4c3c2d1e110a111414100900000000000d1f303f4b5456534b3d2c1a07000003111e282f30302b21150600061b2e41536269685e503f2d1a0600000000000000050a0f1215191b1e212326282a3139414748463e33241402000000000000000000000e23384d61768a826b565f748987725c47321d0700000000000000000000000000000f213345566572736e645552616f74706658483624110000000000001c31465a6b736f675f534537291b0d000000000a1d2f404f5a5f5f5a4f41301f0c00000000000000000000000000000000000a131b22272c2f3233343433302c2620180f050000000000000000000115283949565d5d574d3f2e1c090000000013283c506373797974634f3a261100031628394958656f777b7d8082828280807d7c7a7875716d665d5345362513000013283b5063768993827264594f48423f464f5965728292907c6955412d19040000192e43586e849992806f5f4f3f30211305000000000000000000000000001a2f44596e8499846e58432e1904000a1f344a5f748b9c88725d48331e09000000000000000000000004172a3d50627587978676685c545358606b778594a3a797836c57422d180005162534414c545b5f5f5f5b544b4034261708000000000010213242505d6872798086898d8f9091918f8b867d746a5e5142332414020000000000000001132537495a6c7d8f8c7a6a5a4b3c2f221e252a29251d1103000004172a3d4e5d686b675b4a37230e000011212f3b4346453e332415030b20354a5e707d7c6e5c4936220e00000000040c141a1f24272b2d303336383b3d3f444d555c5e5b5142321f0c000000000000000000000a1e33475a6d7c7c6a555b6f8488725c47321d0700000000000000000000000000000416273847555d5f5b524643525c5f5c53483a2a1907000000000000172a3d4d595e5b544c423527190b0000000000001122313d464a4a453d3123130100000000000000000000000000000000000000070d12171a1d1e1f1f1e1b17120c040000000000000000000000081c3144576772726b5d4c38241000000000172c41566b808f907c67523c2712000c203345576776828b91949597979695949492908e8b87827a706354422f1b07000c203346596b7d8f9183766b635c57545a626c768391988673604d3a26120000031b30455a6f869b95837261514030201001000000000000000000000000001a2f445a6f869a866f5a45301b06000a1f344a5f748b97836e59442f1b0600000000000000000000000c2033465a6c80928b7968584a403e444e5a67758595a795806b56402b1600000716242f3940464a4a4a4640382e2316080000000000081b2d3f50606e7a868e959a9f9d9a98999b9da09991887c6f61514231200e0000000000000000081a2b3d4e5f7082918978695a4d4035303a3f3e392f211100000b1f33475a6c7a827966513d2813000b1e2f3f4d575b5a514232200d0d22374c62778d8c7965513d28140000000b1720282e34383c404346484b4d50525458606970736e604e3b27130000000000000000000004172b3e4f5f68685e4d54687c85705b46311c07000000000000000000000000000000091a293742494a463f353440484a4740362a1c0c000000000000000d1f2f3c45484640382f251709000000000000000413202a313434312a201304000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000e23374b607486877b68533e2914000000001a2f44596e8499937c67523c27120013273b4f6274869498949394959597989b9d9fa1a3a09b958d82725e4a36210c0004172a3c4e5f70808f94898077706c6a6d758089949d8c7a685644311e0a0000081e33485d7288949090806f5e4e3e2e1f0f000000000000000000000000001a2f445a6f869a88725d48331f0d060a1f344a5f74898f7c68543f2b1602000000000000000000000014283b4f63768a94826e5c4a3a2d29313c49576777899c947d68543f2a1400000006121d252c31343434312c251c11050000000000001024374a5c6e7d8c9899938f8b8886838486888c929b998d8070604f3d2b180500000000000000000e1f3041526273839388786a5d5248424d54534c3f2f1d0a0011253a4e63768a94806a543f2a150115283b4d5d6a706d61503d29140d22374c62778c95806b57422d1900000d1c29333c43484d5154585b5d60636567696c737c85897d6a56412c1702000000000000000000000e2031414d53534d404c5e6e736654412d1804000000000000000000000000000000000b19252e3434312b22222c3334322d24190c000000000000000001111f2a3033312c251c1207000000000000000000020e171d1f1f1c160e03000000000000000000000000000000000000000000000000000000000000000000030e161b1b1a150e04000000000011263b5065798f95806a543f2a15000000041c31465b70869b917c67523c271200192d42566a7d928d837d7c7d8080828386888a8c8f909293928977624c37220d00000d1f30415261707d8b96928b8682808289929c9d8f806e5d4b3927140100000b20354a5f748a8c82918d7c6c5c4c3d2d1e0e000000000000000000000000182d42576c82958b76614d382721191a223246596a797d705f4c3925110000000000000000000000071b2f43576b80938c7764513e2c1c151f2b39495a6c8398917c67523c271200000000000911181c1f1f1f1c1811090000000000000000172b3f53677a8c938a847d7976726f6e6e6f73777d88939e8f7d6d5a4835210d000000000000000002132434455565748493897b6f645c576068685d4c3a26120014293f53687c9295806a543f2a15091d3144576a7b87806c57432e190b21364b60768b9a86705b46311c000a1b2b3a4650575d62666a6c70727577797c7d8287909995826c57422c17020000000000000000000003132330393f3f392f41505c5e564837251200000000000000000000000000000000000008131a1f1f1c170f10191e1f1d19110700000000000000000000010d161c1e1c18110900000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000413202a30302f292116080000000011263b50667b9195806a543f2a15000000091e33485d72889d907965503b2610001c31465b708697826f6968686a6a6b6e70727476787b7c7c7d756b5c4935200b0000011324344352606d79838c949a9795959d9f978c7d7061503f2e1c0a0000000e23384d62778d897484958b7a6a5b4b3c2c1d0d000000000000000000000014293e5165798c8f78634e3e3c352c2c363d3e4c5b6568615242301d0900000000000000000000000d21364a5e72879884705c4835210f020d1b2e43586e84998f79644f3a25100000000000000000000000000000000000000000000000001b3045596e839080766f6a65615d5a58585a5e636a7582919c8a7764503c2813000000000000000000061627374756657484918d8277706c717d7b6955402c1700152a3f546a809594806a543f2a151024394c6074889a86705b46301b0a1f34495e73899d88725d48331e001327394958636b71777b808386888b8d909294979b978f857665523e291400000000000000000000000004121d2529292523323f484943382a1a08000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000508080500000000000000000000000000011223313d4546443d3326170600000011263b50667b9195806a543f2a150000000b20354a5f748a9f8d78634e39240f001f34495e738997826b565353545456585b5d5f61636667676862594e3e2d190600000006162534424f5b6670788085898c8f8f8b84796e6051423222100000000011263b5065799088727788998979695a4a3b2b1b0c000000000000000000000e2236495c6e7d827360525350493d3e4a5153524a51534e4334251300000000000000000000000012263b5064788d927d6955412d190500001a2f445a6f869a8c77624d38230e0000000000000000000000000000070a0a070100000000001d32475c72888c76635b55504c4845434345494f586472849694806b56422d18030000000000000000000919293847566573828e958c8682848f846e59442f1a0013293e53687d94937c68533e2813162b3f53687c909a856f5a45301b071d32475c71879c89745f4a341f00192e4356677580868c9094979a9d9c9895938f8c88827b7267584836220f00000000000000000000000000000a1114141114222c333430271b0c00000000000000000000000000000000000000080f1414110b01000000000000000000000000000000000000000000000000000000000000040e15181918171510070000000000000000000000000000000000000000000812191d1e1a130b00000000000000000000000b1e30414f595b58504435241100000011263b50667b9195806a543f2a150000000d23384c62778c9f8b75604b36210c001f344a5f748b97826b56403e3f3f414346484a4c4e505252534e463c30200f0000000000071624323e49535c646b70747778787670675c5042332414040000000014293e53687d9386706a7b8c978877685949392a190a000000000000000000071a2d3f505f6a6d645e6768655b4e4e5c6568665d51423a31251607000000000000000000000000162b4054697d938c77634e3a26110000001b30465b70869b89745f4a35200b00000000000000000000000009141b1f1f1b140a000000001e33485e73898c76604b403b3733302e2e30343b465566798d99846f5a442f1a05000000000000000000000b1a2938475563707c88929a979891806d58432e190014293e53687d94907a66503b26111c3145596e839793806a56412d18031a2f445a6f84998b745f4a341f001b30465b7086939aa09f98928e8a8783807c7977726d675f55493a2a1906000000000000000000000000000000000000000410191e1f1b140900000000000000000000000000000000000002101b24292a261e1305000000000000000000000000000000000000000000000000000000000615212a2e2e2d2c2a24190c000000000000000000000000000000000000000b19252e32332e271d100000000000000000000011263a4d5f6d706d6253412e1a06000011263b50667b9195806a543f2a150000000f243a4f64798f9c87725d48331e09001f344a5f748b97826b56402b2a2a2c2e30333537393b3c3d3e3a332a1f12020000000000000614202e4357697576675f626363615c544a3e322415060000000000172c41566b8296846e5d6e808f96877667574737271809000000000000000000102132414e56585f6f7b7d786c5e5c6c797d7a6f61503e2b180700000000000000000000000000192e43586d839787725d4934200b0000001c31465b70879c87715c47321d0800000000000000000000000a192630343430271c0e0000001d32475c72878b76604b3627231e1b19191b2028374a5e738899856f5a442f1a0500000000000000000000000b1a293745525f6a757d868a8a827263513e291500152a3f546a80958d78634e38230e22364b5f74889d8b77634f3b271300182d43586c83988b745f4a341f001a2f44586b7c8c9b9f8e847d7975716e6b6865625e59534c42372b1c0c0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000011202d373e3f3a302314030000000000000000000000000000000000000000000000000000011324333e434342423f372a1a090000000000000000000000000000000000091a2937414748433a2e1e0d000000000000000000142a3f54697d8780705d4935200b000011263b50667b9195806a543f2a1500000011273c51667b9199846e59442f1a06001f344a5f748a95806a55402b161517191b1e20222426272828251f160d010000000000000000031c31475c70868677685a4e4e4c4740372d2114060000000000001a2f44596e8497826c5761718292958675655545362718080000000000000000041423303b43576a7d8d948a7c6a67798b948d806e5b47321d08000000000000000000000000001c31465b708697836d58442f1a060000011d32475c728898836e59442f1a050000000000000000000009192837434949443a2c1c0b00001a2f44586d8086725d49341f0e09050000060c1c31465b708799846e58432e19030000000000000000000000000b192734414d58626a7174746e63544533210e00162b40566b80958c76604b362113283c5165798e9884705c4834200c051a2f44596e849989735e49341f0015293c4e5e6d7c8c9b8b7b6c64605c595653504c49443f382f251a0d0000000000000000000000000000070e1313100900000000000000000000000000000000000000000000000000000c1e2f3e4a53544d4132210f00000000000000000000000000000000000000000000000000000a1e314251585857575348382613000000000000000000000000000000000114263747545c5d564c3c2a16020000000000000000152b40546a80958d77624c37220d000011263b50667b9195806a543f2a1500000014293e53687d9395806b56412c1702001e33485e738895806a543f2a1507050403080b0d0f11121313110b0300000000000000000000001c31465b70869687786a5d4f41332d241b0f03000000000000001c31475c708795806a54536474859594847363544536251402000000000000000004131e30465b70869aa89a86706c8397a99d8a745f4a341f0a000000000000000000000000001d32475c7288937d69543f2b16010000071e33485e738995806a55402c17020000000000000000000315273746555e5e574a3a2815010015293d506372776956432e1a0600000000000b1e32475c728797826c57422d180300000000000000000000000000091723303b464f565c5f5f5b51453627160400172c42576c82978b745f4b35201a2e42566b8094947d6955402c1905091e33485d72879c87715c47321d000d1f30404f5e6d7c8c998b7c6f62564a403d3b3834302a241c130800000000000000000000000000000d19232828251d110300000000000000000000000000000000000000000000000115283b4d5c67695f503e2d1a07070401000000000000000000000000000000000000000000000f24394d606d6e6c6c6656422e19040000000000000000000000000000000a1e3144556571716a5946311c070000000000000000162b40566b82978a75614c37220c000011263b50667b9195806a543f2a15000000162b40556a8095917c67523d281300001c31465b708695806a543f2a1e1c1b191715120f0c080300000000000000000000000000000000192d4256697c8d97897b6d5f504131200e0000000000000000001e33485e7389937c685346566676879692827263534332200d000000000000000000011a2f44596d80919e93826d697c8e9e9585705c47321d08000000000000000000000000001e33485d7288907a66513c27120000000a1f344a5f7489917b67523d2813000000000000000000000c20324455647373685744311c07000e2133455460635a4b3a2713000105090e141d293a4d61758a927d68543f2a1500000000000000000000000000000006121e29333b42474a4a463e342718090000192e43586e84988b75604b36212236495d71869a947d68533f2b19090f24384c61768b98836e59442f1a0001122231404f5e6d7b88958d8073675b50453a2f231b1610080000000000000000000000000000000d1d2b363d3e392f21110000000000000000000000000000000000000000000000081c3145586a7a7d6e5c4a37241d1c191613100c0802000000000000000000000000000000000011263b50667b848382705b46311c0700000000000000000000000000000011263a4d60738486725d48331e090000000000000000182d42576c8398866f5b46321e09000011263b50667b9195806a543f2a15060604182d43586c83978d78634e39240f0000192e43586d8396826b5640353332302e2c2a2724211c18110a010000000000000000000000000013273a4d5e6f7d8d998c7d6e5f4f3e2b180500000000000000001f344a5f748b8e7964503b495868778794918271614f3d291601000000000000000000162a3d4f617282898274645e6f808a84776754412d1904000000000000000000000000001f344a5f74898d77624d38230e0000000a1f344a5f748b8d77634e39240f0000000000000000000013283c4f61738387745f4a35200b0004162736444c4e483c2d1c1114161a1e2228303a47586a7c908c77634f3a261100000000000000000000000000000000010c1620272e323434322b2216090000001b30455a6f869a8d78634f3b272c3e5165798da197836e5a4837271a172b3e53677b90937d6955402b17000004132231404f5e6a76838f9185796d62574c4033271c1004000000000000000000000000000007192b3b4952534c3f2f1d0a000000000000000000000000000000000000000000000b20354a5f74888c796653403032312e2b2825211c17110902000000000000000000000000000010253a4f64798f9888725d48331e08000000000000000000000000000002182c4055697c9088725c47321d0700000000000000001a2f44596e849986705b46301b06000011263b50667b9095806a543f2a1b1b1b191b30455a6f859a89745f4b36210c0000172c41566b8297836d584c4a48474543413f3c3936312c261e14090000000000000000000000000a1d2f4051606e7b88948d7d6d5b4834200b00000000000000001f344a5f748b8a74604b363b4a5968768490907d6c5945301b060000000000000000000e203244556471746f645651616e747066594937251200000000000000000000000000001f344a5f748a8a745f4a3520110c0409101f344a5f748b88735e4a35200b00000000000000000000172c41566b80918c76604b36210b0000091826313738342b202326292c2f32373c434c586575879683705c4834200c000000000000000000000000000000000000030c13191d1f1f1d170f05000000001c32475c70879c927d6a56443538495b6e8295a89e8a77665545372b2234475a6e82968d7864503b261200000004132231404c5965717d8a968b8074695e5145392e22160a00000000000000000000000000102336495966685d4c3a271400000000000000040b0e0e0a040000000000000000000b20364b60758b9683705d4a46474643403d3936312b251d150c010000000000000000000000000e23384d62778d9f89735e49341f0a0000000000000000000000000000081c31465b6f849888725c47321d0700000000000000001b30455a6f869b87705b46301b0600000f253a4f64799095806a543f2e3030302e2b32475c72879b87705c47321d080000162b40566b8296867064615f5e5c5a585654514e4a46403931271b0d00000000000000000000000012223242505e6a76838f8a77634e39240f00000000000000001e33485d7082826f5b47322c3b4a5866727d8688725c47321d070000000000000000000314263746545d5f5b534742515b5f5c54493b2b1a0800000000000000000000000000001e33485d728787715c4732292620171d242833485e7389836d5945301b07000000000000000000001a2f44596e84988b74604b36200b00000008141d2223212d34383b3e4044474b51575f697584948a786653402d19050000000000000000000000000000000000000000000000000000000000000000001e33485e73889d9a8673625249495667788b9a939b9584726355483e363f5163768a9a86725d4935210d000000000413222f3b4854606c78859192877b6f62574b3f33281b10040000000000000000000000162b3f5366777b6956432f1c0800000000000c171f23231f170d0000000000000000091e33475c71869a8d7966595b5c5b5855524e4a453f3931281e13070000000000000000000b141920364b60758ba08b74604b3620170e040000000000000000000000000b20354a5f74899c87705c47321c0700000000000000001b30465b70879c87705b46301b0600000f24394e63788f95806a543f4246464643403a4a5f748998836e58442f1a0500001b3044586c82978c7c79767473706f6d6b6966635f5b554d44392b1c0c000000000000000000000005142332404d5965707d8877644f3a240f0000000000000000192d41536370706353402c1d2c3a4855606a71736a5844301b06000000000000000000000819283641494a463f35333f474a4741372b1d0d0000000000000000000000000000001a2f43576b7d836e59443e3e3b33292f383d3e475c71877c68533f2b1602000000000000000000061c31465b70869b89735e49341f0a0000000001090e20313f484d505356595c60656b727c87948e7d6c5b4937241100000000000000000000000000020a11171b1d1e1e1c18120b0200000000000000001f34495e73899fa3918070645e5e667485968c7d8d9b918273665a514a4d5d6e8093917d6a56422e1a06000000000004111e2a36424e5a6773808c988d8074685d5145392d211609000000000000000000001a2f44596d8386725f4b37230f000000000d1c29333838332a1e100000000000000004192e42566a809396836f6e7072706d6a67635f5a544d443b3125180b00000000000003111d272e3134495e73899e8c76614c37332a21170b00000000000000000000000e23384d63778d9c87705b46301b0600000000000000001c32475c71879c87705b46301b0600000e23384d62778d95806a5450575b5b5b58544f4a5f748b95806b56402c160100001f34495e73889b99918f8c8a88878683827d7b78746f696056493a29170400000000000000000000000514222f3b47535f6b746a5a4835210c000000000000000011243645535c5c53453523101c2a37434e565c5e594c3b28150100000000000000000000000a18252e3434322c23222c3334322d241a0d0000000000000000000000000000000014283b4e606d7266534e53534f463a414c525350586c7d73604d39241000000000000000000000091f34495e73889c87715c47321d08000000000004182b3d4f5c6265686b6e71757980878f988c7d6f5f4e3d2c19070000000000000000000000010c151e252b30323333312d261e150a000000000000001f344a5f748b9b979e8f8278737379849290806e7c8c999184776d655f606b7b8c9a8875614e3b271300000000000000000c1925303d4955616e7a879392867a6e63564b3f33271b0e0000000000000000001a2f445a6f858f7a66523e2a16010000071a2b3a474d4d473c2e1e0c00000000000212212f3d4f63778b9f8c808487878683807b78746e6860584e4336281a0b000000000010212f3a424747485c70879c8d77634d4b473d34291b0b0000000000000000000010263b506579909b86705b46301b0600000000000000001d32475c72889c87705b46301b0600000c21364b60768c95806a59636b7070706d69635c61768b937d68533e29140000001f344a5f748899988d8b8c8d8f9194979694918d89847c7367584734200c00000000000000000000000004111e2a36414e5a5f584c3d2b180500000000000000000718273640474741362717060c1925313b434748463c2e1e0c0000000000000000000000000007121a1f1f1d181010181e1f1d19110800000000000000000000000000000000000c1f31424f595c565461686863584b515e6768645a6069645544311d09000000000000000000000c21364b60758b99846f5a442f1a0500000000000a1f33475a6d77797c8083878a8f949b91867a6d60514130200e000000000000000000000007131e283239404547484846413b31271b0e0000000000001f344a5f748b8f85949f958d89898d96918272616d7b8997958a827974747c8a998e7c6a5745321e0b00000000000000000007131f2b3844505c6975828d988c8074685c5145382c1e0e0000000000000000182d42576c8296826d5945311c080000102437495862625a4c3b291602000000000f20303f4d5b687382979894999995979794918d89837c746b605446382919080000000a1c2e3f4c575c5c5e5e6f84998f796460605a50473929170400000000000000000012273c52677c919b866f5a442f1a0500000000000000001d32475c72889b866f5a45301b0600000a1f344a5f748995806a6b7680868786837d7770677a8f917b66513c27120000001d3145586a7c939079747677787b8083868a8d91959890867663503b271200000000000000000000000000000c1824303d464a453b2e1f0e000000000000000000000918242d31312d241809000008141e272e3233312a1e100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000021323323d45475263727c7d75695a60707b7d776c5d54514738261401000000000000000000000e23384d63778d97826c57422d180300000000000e23384d62768a909395989b9d9790887d74685c4f423223130200000000000000000000091725303b454e54595c5e5e5b554e44392c1e0f00000000001f34495e73898975849098999997928a807263545d6b7886929e958e8a8a8f9a9082705e4d3b28150200000000000000000000010e1a26333f4b57636f7c889492867a6e6256493c2b19060000000000000015293e53687c9188745f4b37220e090e152a3f536676766a5945311d080000000a1c2d3e4e5d6b7986919ea7948a84808284878b8f959790887d716456473625130100001126394c5d6a70727373738397907a7676766d635746331f0a00000000000000000013283e53687d9399846f5a442f1a0500000000000000001d32475c72889b866f5a442f1a050000081e33485e738995806e7c89939a9c9b97928c847a83969079644f3a251000000016293c52677c93907964606264666a6d7174787c808484867d69543f2a1500000000000000000000000000000006121f2a323431281d100100000000000000000000000611191c1c19110700000000010b131a1d1e1c160d00000000000000000000000000000000000002090f141719191917140f0a030000000000000000000000000000000000000514202a33485c6f8290928777666c7d8e948a7b69564135291a09000000000000000000000010253a4f64798f947d69543f2a150000000000000e23384e63788da0a397938e89837b746b61574b3f312314050000000000000000000009182735424e5861686e727373706a61564a3c2d1e0e000000001d32475b6d79776a727d838484837d776d6254454d5a6774808b959c9f9e988d82716252412f1e0b000000000000000000000000000915212e3a46525e6a76828e988c8073675a4935210c000000000000001025394d62768b8f7965513d28161e23252e43586d838875604b36210c0000031528394b5c6c7b8a979b9298917c6f6b6b6e71757a8288909a908374655442301d0a0000172b4055697a86888889898b99958b8c8c8a8075624d38230e00000000000000000014293e53687d9499846e58432e190300000000000000001d32475c728899846e58432e19040000021d32475c728895807d8d9a958f8d8d90969f978d91a09079644f3a250f00000012273c52677c939079644f4c4f5154585c5f63676b6e6e6f7065523d281400000000000000000000000000000000010d171d1f1c150c0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000030d161d24282c2e2e2e2c28241e170f060000000000000000000000000000000000030e21364b60768b9fa596826b72889ca799856f5a442f1a0b00000000000000000000000012273c52677c91917b66513c27120000000000000c21364a5d7083969b867d79746e6760584e44392e21130500000000000000000000071827364553606b757c83878988857d73685a4b3c2c1a09000000182b3e4f5d64635a60696d6e6e6c69635a5144363c4a56636e7882888b89847a6f62534434231200000000000000000000000000000004101c2834404c5864707b8690918578644f3a240f000000000000000a1f33485c708595806b57432e2932383b3b465b70868d77624c37220d00000d2032455768798a9a978a7d8e9884705c57595c60666c747d88949383725f4d3926120000192e43586e839294969797979da19999968f8373604c37220d000000000000000000152a3f546a809598836c58432d180300000000000000001d32475c728898836c57422d18030000001c32475c708799868c9c8e827a77777a828d9aa2a4a59079644f3a251000000012273c52677c939079644f3a3a3c4043474b4e525658585a5b554735220f0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000003080b0d0d0d0b08040000000000000000000000000000000000000a16202a31383d41434343413d38322b23190f03000000000000000000000000000000000b20354a5e7183959c8f7c686e82929e92806b57422d1803000000000000000000000000142a3f54687d948e78634e39240f000000000000071b2e405366788c9b8670645f5a534c443b32271c10030000000000000000000002132536455463717d88919899999b99918678695a493826140200000f21313f4a4f4e474d5458585857544f473e33262c3945515b646d7374736f685e52443526160600000000000000000000000000000000000b17232f3b47535e69737d868070604c38230e0000000000000004192d4155697d9286715d48343b464c50504c5c71878c76604b36210c000215293c4f6174869896877972879b8c77634f44474c5158606a7685948f7c6955412d190000182d42566a797c7d8282828291958484827b72655644311d09000000000000000000152a3f546a809598836c57422c170200000000000000041e33485d728897826b56412c17020000061b30465b70879c999b8d7d70656262666f7c8b9baca6917b66503b261100000012273c52677c939079644f3a25272b2e3236393d41434344464237291806000000000000000000000000000000000000000000010a12191d1e1d170f04000000000000000000000000020b12181d20222222201d18130c0500000000000000000000000000000e1b28333d454c525658585856524d463f362c211508000000000000000000000000000000061b2f42546676868880705f63738389827362503c281400000000000000000000000000172c41566b82968b75604b36210c00000000000000112436495c6e82958b776350453f3831281f150a070a0d0c09030000000000000c1f3143536372828f958d878484868d97978878675644311e0b00000313212d363a39343a40434343423f3a332b21151b27333e4951595e5f5f5b544b40342617080000000000000000000000000000000000000005121d2935414c56606a7270615243301d09000000000000000012263a4e62768a8c77634e3e4c59616466605c728889735e49341f0a00091d3145586c8092978777686b8094937d6a564233373d444d586676899985705c47321e000013273a4c5c6567686b6b6b798f95806e6b675f564b3d2e1d0a000000000000000a12192a3f546a809597826c57422c1a1610070000000000091e33485e738994806a543f2a15000000112336495d72879ca290806e5f524d4d525e6c7d8fa1a8937d68533e291400000012273c52677c939079644f3a3030302f2f2e2e2c2c2e2e363c3c362b1d0d00000000000000000000000000010406090c0e1013151d262d3233322b221506000000000000000000000b151e262d323537373735322d2720180e0500000000000000000000000f1e2c3945505960666b6d6e6d6b67615b52493e3225170900000000000000000000000000000012253648596773736d6152556471736e63554533200d00000000000000000000000000192e43586e839887725d48331e090000000000000007192c3e5164778a93806c594633241d171819191c1f22221e160c000000000316293c4e607182918f8379726e6e71798590968573604e3b271400000003101b22252420262b2e2e2e2d2a2620180e040a16212b353e44494a4a4640382e231608000000000000000000000000000000000000000000000c17242f3a444d565e5d51433425130100000000000000000b1f33475b6f84927c68544c5c6a75797a746a728886705b46311c07000f24384c6074889b8a78685964788c9a86725d4a362329313b48596d83988a745f4a341f00091b2e3e4c555a5c5e5f6263778d97826c6d6f70685b4c3a2612000000000004121d262d323f546a809597826b5640302f2b23190d000000000a1f344a5f748b937c68533d28130000081b2d405265788ca09885726150413838404e5f718497ab96826b56412c1702000012273c52677c939079644f4746464544444343424240424a5151493b2b19060000000000000000050a0f1215191b1e212325282a3139414748463e332414020000000000000005121e28323a41464a4c4c4c4a46413b342b21170b0000000000000000000d1d2d3c4a57626c757b80838483807b756e655b504335271808000000000000000000000000000007192a3b4a575e5e59504346545d5f5b514537271604000000000000000000000000061c31465b708699846e59442f1a0600000000000000000f2235485a6d82938975624e3b2e2c2c2d2e2e3134373732291d100000000b1e3246596b7d8f8d7d70655d59585d6774889b907d6a57432f1b0700000000070d0f0f0b11161919191815110c04000000040f19222a30343434312c251c110500000000000000000000000000000000000000000000000006121c27313a434949413425160700000000000000000004182c41556a8094836e5957697a888f90887c7388836e58432e19040014293e52677b8f907d6c5a4a5d7085998d7965513d29151e2f44596e839889735e49341f001226384b5c696f70737477787a8b988482838586796955412c17010000000313222f3a41474b54697d9495806b564646443f362b1d0d0000000b21364b60768b907a66503b261100001124374a5d6f8295a18e7a675543322323304254677a8fa398836e58432e1903000012273c52677c939079645c5c5b5b5a5a595858575756565e6565594836220e0000000000040c141a1f24272b2d303336383b3d3f444d555c5e5b5142321f0c0000000000000615232f3b454e555b5f6162615f5b564f473e34281c0f0100000000000007192a3b4b5a68748089909598999895908a82786d6153453626150400000000000000000000000000000c1d2c39444949453d323641494a463e3428190900000000000000000000000000091f34495e738895806b56412c1702000000000000000005182b3e51637689927d6b574443424242434345494c4c463b2e1e0d000011263a4e61758991806e60534944434a586b7d8f9a87725e4a36210d000000000000000000000000000000000000000000000000060e161b1f1f1f1c181109000000000000000000000000000000000000000000000000000000000a141e272f34342e2316070000000000000000010a1218273c5065798e88735f617587918a8b918e828d826b57412c170200182d42576c82968873614e4155697d9294806c5844301c23364a5e72889a86705c47311c00182d4155677a8487888b8c8f9095a1969796928c806c57422c17020000000f2132404d555c6062687d9495806a5b5b5b5953483b2b1a0700000d22374c62778d8d78634e39240f0000192d4154677a8d9f9785715e4b3826141325384b5f73879b99846f5a442f1a05000012273c52677c938f7973727270706f6f6e6e6e6c6c6b6b72797765513c2711000000000b1720282e34383c404346484b4d50525458606970736e604e3b2713000000000005152433414d586169707476777674706a635a51463a2d1f100000000000001224364859697886929a928c89888b91999e958b807163534433210f0000000000000000000000000000000e1b27303434302a21252e3434312b22170a00000000000000000000000000000d22374c60768b917c67523d2814000000000000000000000e2135485a6c809488735f585857575758585a5e6161584c3c2b180500172c4055697d918673615042362f2e3c4e5f7083958e7965503b271200000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000010b141b1f1f1a1105000000000000000007131d262d30364b5f74898e7964697d918074757d8c9797836c57422d1803001b30455a6f8595806b58443a4e62768a9b88735f4b37232e405366798e95826c57422e19001a2f445a6f82848687888888888a9c8984827c776f61503d291400000000182b3e505e69707477777c92947d727070706d66594937230f00000f24394e63788f8b75604b36210c00001e32475c7084979e8c7a6754412e1b08081c3044586b80949a866f5a442f1a05000012273c52677c9390898888888787868684848383838282868d7c67523c27120000000d1c29333c43484d5154585b5d60636467696c737c85897d6a56412c17020000000112233342515e6a757d85898c8d8c89857d776d63584a3d2e1e0e00000000081b2e41546677889792877d777373767d86909c9d90827161503e2c1a070000000000000000000000000000000a141b1f1f1c160e121a1f1f1c170f0500000000000000000000000000000011253a4f64788f8d78634e3925100000000000000000000010253b50647679908e79706e6d6c6c6c6e6e6f7376756a5a4835210c001b30455a6f84937d6a564432241a1e30415365798d937d6954402b1600000000000000000000030a0f1212110e0903000000000000020303030302000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000a1825303a414547475a6f84937d696f84867361616d7c8d99846f5a45301b06001d32475c7288917b66513d33475b6f83978e7966523e2b3b4c5d6f83968e7965513d291400182c4054646c6f707072727272849987726b68635c524333210e000000001d32475b6e7c858a8d8d8d969a8d87878786837766523d2813000012273c51667b9187725d48331e0900001f344a5f748a9c8f806e5d4a382512000114283c5064788c97836d58432e1904000012273c52677c919f9f9d9c9b9b99999999989898979797918574614e39240f00000a1b2b3a4650575d62666a6c70727577797c7d8287909995826c57422c17020000000c1e304151616f7c889199979594979c9a938a8275685a4c3c2b1a090000000f23374a5e7083959082756a625e5e6269737d8b98a090806e5c4936230f00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000002172b4054687d9289745f4a36210c0000000000000000000010263b5065798d95968b868483838383848486888c8877644f3a240f001e33485e73888f7964503b271506122436495e738997836c58432d180000000000000000040e171e24272727231e170e0400080f1417191919181716120a00000000000000000000000000000000000000000000000000000000000000060c1011100b03000000000000000b1a2836424d555a5c5c58697d93846f7288806a564f5e6f809288735e49341f0b001d32475c72888f79644f3a2b3f53677b9095826d58443a4959697b8d9885715e4a36220e001124364651575a5b5c5c5c5c6b829788735e534e483f34251504000000001f344a5f748a9597989b9da7a49d9c9b9999917c68533d28130000162b3f54697d94846e59442f1a0600001f344a5f748788807061513f2d1b0800000d2135495c6f82887b68543f2b1601000010253a4f647886898988878786848484848383838384847d73665645321e0a00001327394958636b71777b808386888b8d909294979b978f857665523e29140000000316293b4d5f6f808e9a928983807d8389919b9e9387786a5a49382614010000152a3e52667a8e94837263574e49484e56616d7988979d8c7866523e2b1602000000000000000000000000010b131717150f06000000000000000000040e14181816100800000000000000081c31455a6e839786705b46311c08000000000000000000000d22374b5f71828e969a9b999898989899999b9a928676634e39240f001f344a5f748b8d77624c37220d00081e33485d728899846e59442f1a000000000000000916212b33383c3c3c38322a2117111b24292c2e2e2e2d2c2b261d1206000000000000000000000000000000000000000000000000000000020f19212526251f160b00000000000b1a2938465360696f72726d64798e8974748a7b665140516375898c77624d38230e001e33485e73889079644f3a25384c6074889c88735f4b4a58667688998d7a6755422e1b0700071928353e42444647474c6073879b8d7a675441342c22160700000000001e33485d707d808284868b9e9688878684848072614e39251000061b2f44586d8395806b56412c170200001c3145586872726c61524333221000000006192c3f52626f736d5e4c3825110000000c2135495b6a7173737271706f6f6e6e6e6d6c6c6c6e6e69615648382715020000192e4356677580868c9094979a9d9c9895938f8c88827b7267584836220f0000000b1f3246586b7c8e998b80756d6a696d757d8994a1978878675543311e0a00001a2f44586d82968a766554463a34333a444f5c6978899a95826d5a45311c08000000000000000000000004121e272c2c2a23180b00000000000000071521292d2e2b241b0f0200000000000d22374b60748995806b57422d180400000000000000000000081c2f425463707a8286888989898989898a88857d7567584734200c001f344a5f748b8f78644f3a2611000d21364a5f748999846e59442f1a0000000000000c1a27333e464d5152514c463d3429232e383e424343434241403a2f231607000000000000000000000000000000000000000000000000000212202c353a3b3933291c0e00000009192938475664717c858887807573888e78748b7b66503b46596c80907a66503b2611001c32475c7187927c68533e2b3145596d82958f7a66525a6775859591806f5d4b3826120000000a1722292d2f30314155687c8fa39784705d4a37241105000000000000192d415362686a6c6e70869b947d706f6f6e6b635444311e0a000b2034495d7287907b66523d281300000015283a4a575d5d584f43342515040000000010223444525b5e5a4f402f1c0900000006192c3d4c575c5e5e5c5c5b5a5a585858585757575858554d44382a1b0a0000001b30465b7086939aa09f98928e8a8783807c7977726d675f55493a2a190600000012263a4e6175889a8b7a6d6159555459616b7683919f968573604d3a261200001e33485d728796826d5a4736281f1f27313e4c5a6b7c8e9d89745f4a35200b00000000000000000000031323303b41423e35291b0b0000000000041525333d42433f372d2011020000000012273c5065798f907b66523d281400000000000000000000000012253645535e666c70727373737373747473706a6257493a2a1805001e33485d7288927d6955412d1b0b17293c5064788e96826c57422d1800000000000c1b2a3845505a62666766615a50463a34404b53575858585757554c41342516070000000000000000000000000004070809070603000000001020303e494f504e463a2c1d0c000014263747566574828f8986878e857383937d73897d6a55413d5063778b7c67523c2712001a2f44596e8396826e5a48372a3e5165798e95826c606b7886949384736251402e1b0900000000050e14181a23364a5d71859895998d7a6653402d1a07000000000000112435444f535457596e8499937c675a5a58575045362615020011263a4e63778c8c77624d39240f0000000b1c2c3a434848443d32251607000000000005162634404748463e31221200000000000e1f2e3a434748484747464444434343434242424343413a31271a0c000000001a2f44586b7c8c9b9f8e847d7975716e6b6865625e59534c42372b1c0c00000000182c4155697d928f7d6c5d4f45403f454e5965728290a1907d6955422d1905001f344a5f748a917b67523e2a180b0b14202e3c4d5e7185988d77634e38230e000000000000000000000f2031414e5657524739281603000000000e213343505758534a3e2f200f00000000172c40556a80948b76614d38240f00000000000000000000000007182735414b52575b5c5e5e5e5e5e5f5f5e5b564f45392b1c0c00001b2f44586d829584705d4b392820283546596c80948f7a66523e291400000000091a2a394856626d767b7c7b756d63584a43525e676c6e6e6e6c6b695e524334251302000000000000000000060d14191c1e1e1d1b18130f0a081b2d3e4e5b646662584a3b291704001b3043556574848c7d7470727d8f7a7d9383708685705c4834485c70807764503b261100162b4054687c908a776554463b3a4a5e72879a8873727d8996928475655545342210000000000000000005182b3f5266798d91828d9683705d4a372411000000000000061726323a3e4042576c8397917c67524443423c332718090000172b4054697d9287725d49341f0b000000000e1c272f33332f29201407000000000000000817232c3233312b211304000000000001101d272e3233333232302f2f2e2e2e2e2c2c2c2e2e2c261e1409000000000015293c4e5e6d7c8c9b8b7b6c64605c595653504c49443f382f251a0d00000000001c31465a6f84998672604e3f322b2a313c4754627283949985705c48331e09001f344a5f748b8f78634e39240f000002101e2f4155697d938f79644f3a250f00000000000000000005182b3e4f5f6a6c645746321e090000000015293d50616c6d675c4d3e2d1a070000061b30455a6f849985705c47331e0a000000000000000000000000000917242e373e42464748484848484a4a4846413b33281c0d00000015293e5165798c8d7a6857463a363b45536476899a8773604b37230f0000000416273848576673808a9093908a8075685a52616f7a8284848483827c70615242311e0c00000000000000040f1921282d31333332302c28231e1925384a5c6c787b75685846331f0a001f34495e73838c7c6d615b5f748b7c788d8873828b77634f3b4154646b66594835210d001125394d61748895837263574f4f52576b80938e7a858f9b8f82746657473727160500000000000000000d2134475b6e82948272869a8d796653402d1a0700000000000008151f26292b40566b8297917b66503b2e2d282016090000001b3045596e8396826d58432f1a0600000000000a141b1e1e1b150d030000000000000000000510181d1e1c170e0300000000000000000b141a1d1e1e1d1c1b1a1a19191919171717191917120b020000000000000d1f30404f5e6d7c8c998b7c6f62564a403d3b3834302a241c13080000000000001f34495e7388937d6a5643302116161e2a37445465778a9d8b76614c37220d001f344a5f748a8f79644f3a26150800000814263b506579908f79644f3a250f0000000000000000000d2135485b6d7d8275614c37220c00000000192f44586d8083796b5c4a36220e00000a1f34495e7388927d6a55412d1904000000000000000000000000000006121b23292e30323333333333343433312d271f160b000000000e2236495c6f8294867464574d4b4e57637182938f7d6a5744301c080000000f21334455667585929795979e9d938778696170808d9699999998978e8070604e3b28150200000000000916222c353c424648484745413d38332e2c4054677a8b918776624d39240f001f34495e7388806e5e4f4f62778c7b73888d777c907d6a55413646525652493b2b1805000a1e3144576a7d8f9182756a6464676b70778c978f98958a7d7164564839291a0900000000000000000216293d5063778a89766a7d929683705d4a37241100000000000000030c11162b40566b82979079644f3a2518140d04000000001e33485d7288907b67533e2a15000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001122231404f5e6d7b88958d8073675b50453a2f231b16100800000000000000001f344a5f748b8f7965503b271303020c192636475a6d82958f78634e39240f001e33485d7187927d69554332251b14121b25324254687c928c77624d38230e00000000000000000014283c5064778b8d77624c37220d000000001a2f445a6f86978a7965513c271200011122374c61768c8a77634f3b26120000000000000000000000000000000000080f15191b1d1e1e1e1e1e1f1f1e1c18130c030000000000061a2d3f52647587938375696160636a748290958472604d3a271401000006192c3e50627384948e8380838a949f97887870808f99908b8b8c929a9e8f7d6b5844311d09000000000a1927333f4950575b5d5e5c5a56514c48433e465b708497968878644f3a240f001c3045586a76716150545f6d7d8a766e83927c758a85705b4631353e403e372b1d0d00000215283b4d5f70829092887d79797c80858b92a3968c82776c605346382a1b0b0000000000000000000b1e3145596c80927d6b63768a9d8d796653402d1a07000000000000000000172c42576c83978f79644f3a250f000000000000001f344a5f748b8a75614d38241000000000000000000000000000000000000000020406080b0c0e10121314161718191a1a1a17100600000000000000010a101313120c04080f1313120d060000000000000000000004132231404f5e6a76838f9185796d62574c4033271c100400000000000000001f344a5f748b8f78634e38230e00000009192a3e52677b919079644f3a250f001a2f43586c82958572615143372e28252e3743516071849887725d49341f0a000000000000000003192d42576b80948c77624c37220d000000001a2f44596e8499937d69543f2a15000d1f2f3d4e63788f826e5b4733200c000000000000000000000000000000000000000000000000000000000000000000000000000000000000102235475869798a93867c7675777d8792988877665442301e0b0000000f2236495b6e80918e7d706a6e76828d9a9786808f97887c7674777d89979b8874604c38230f0000000919283745515c646b707273726f6b66615c57534f5f748a9a8677695b4935210c0015283b4c5a61605c6268707c8c806d687d92826f8488725c473223292b29231a0d000000000b1e3042526272808d9892909091959a9791948d786f645a4e4236281a0c0000000000000000000013273a4e6175888a76625a6d80939683705d4a372411000000000000000000192e43586e84998f78634e38230e000000000000001f344a5f748b836f5b46321e090000000000000000000000000004080b0e111417191c1e2022232527282a2b2c2d2e2f2f2f2b23180a000000000007131e2528292620171c2428292721190f0300000000000000000004132231404c5965717d8a968b8074695e5145392e22160a000000000000001f34495e7389907a65513d2b1b100807101c2a3c51667b908e78634e39240f0015293e5165788c90806f60544a433d3a414a55616f7d8f93806b57432f1a060000000000000000081d32475c70869a89745f4a35200b00000000172c41566b809596826b56412c1700162a3c4d5a6276827464513e2b18040000000000000000000000000000000000000000000000000000000000000005070703000000000000000517293a4b5b6b7a8996908c8b8d929a9789796a594837251301000003172b3e5265788b93827060545a646f7c8b9a938f9c8a786a615f626b788a9c8f7b66513d28130000041627374655626e78808688898884807b76716c686462768c99846e594b3d2c1906000c1e2e3e51606970767c848e85746363788d867175786e5b46311c1416140f070000000000011324354554626f7a858c9094918d88837c8a927d6955483d3125180a00000000000000000000081c2f4356697d91846f5b506376899c8d796653402d1a0700000000000000001a2f445a6f859a8d77624c37220d000000000000001f344a5f74897c6854402b1703000000000000000000060c1115191d202326292c2e31333537383a3c3d3f404142434444443f3528190700000008172531393e3e3b34292f383d3e3c352c2013040000000000000000000413222f3b4854606c78859192877b6f62574b3f33281b100400000000001c31465b708595806c5a49392d231d1a232d3948596c80948a75604b36210c000e2236495c6e80918e7d71675e57524f555d6772808d9b8976634f3c28140000000000000000000c21364b5f748a9b86705c47321d080000000014283d52677b9198836d58432e19001c3145596b76746c6556463422110300000000000000000000000000000000000000000000000000040b0f0f0d121a1c1c170f040000000000000b1d2d3d4d5c6a77848f989ea09b9186786a5b4c3b2b19080000000a1e32465a6e8295897663524247525e6c7b8d9fa393806c5b4c4a4e5a6c809494806a55402b1600000f213344556473808c949a9b99999995908b86827c7877778d99846e58432e1f0e0000001c31465b6e7d858b918c827566565e73888b7661635d503e2b1703000000000000000000000617273644525d6870777b7d7c77736e6e8397846f5b46321f130700000000000000000000001124384b5f7286927d6955475a6c80929683705d4a37241100000000000000001a2f445a6f869b8b76614c37220d000000000000001d3145596a746b5e4c39241100000000000000020c141b21252a2e3235383b3e414346484a4c4e4f515254555657585a5a595346362512000004162635434d53534f473b404c525350493e3122120100000000000000000004111e2a36424e5a6773808c988d8074685d5145392d21160900000000182d4155697d918a7767574a3f37322e36404b5766768997836f5b46321d080006192c3f51627384938f8479726b676468707a85909d8f7d6b594633200c0000000000000000000e23384d63778d97826c58432e1904000000000f24394d62778d9a866f5a442f1a001f34495e7389847567594b3d2f21120300000000000000000000000000000000000000000000000b171f242523262e32312b2114050000000000000f1f2f3e4c5a66727c84898b877d74685a4c3d2e1d0d000000001024394d61758a95826d5a473434404e5e6f8296a18d7864503d343d5065798f97826b56402b160005182b3e51627383919a918a868484848686888a8e928f8d8d9499846e58432e19030000001c32475c70838c91978571645748596d838f796550494032210f00000000000000000000000009182634404b555c62666967635e59677b8f8a75604c37230e000000000000000000000006192d4054677a8f8e78644f3d4f6275889a8d796653402d1a09000000000000001a2f445a6f838b806e5c48331f0a0000000000000016293c4c5a5f594e402f1d0900000000000007141f282f353a3f43474a4d505356585b5d5f6163646667696a6b6c6e6f6f6e6454422f1b07000f2233445360686863594c515e6768655b4f402f1e0b00000000000000000000000c1925303d4955616e7a879392867a6e63564b3f33271b0e00000012263a4e617487958575685c534b46434a535d687584948f7b6754402c180300000f223345556574838f968d86807c797c858d97a0928271604e3c2a170400000000000000000010253a4f647990937d68543f2a1500000000000b20354a5f73899b866f5a442f1a001f34495e7388948576695b4d3f302111000000000000000000000000000000000000000000000c1b2933393a38384247463e3223120100000000000111202e3c49555f69707374716b61564a3d2e1f100000000000152a3e53687c918f7a66523e2a22304053687d939c88725e493523384c62778d97826b56402b16000d2135485b6e809194887d75706e6e6e6f707274798087919ea799846e58432e1903000000192d41536472777c848d8273635153687c927d6955402d221303000000000000000000000000000816232e3941484d5154524e4a4c60758b8f7a65513c281300000000000000000000000e2235495c70839789745f4a3645576a7c8f9683705c4938261401000000000000172c40536470746e61513f2c1904000000000000000c1e2e3c464a453c302211000000000000061625313b434a4f54585c5f6366686b6e7072747678797b7c7d80828384848682715e4a35200b00172b3e5162717c7d766a5b5f6f7b7d786d5e4d3b281400000000000000000000000007131f2b3844505c6975828d988c8074685c5145382c1e0e00000b1e314457697a8c9486796f66605b585d666f7a86949684715f4c38251100000004162737475664717d8891999591909098a09b908373645342311f0d0000000000000000000012273c51667b918f7965503b26110000000204071d32475c72889b866f5a442f1a001b3044586c7d8f9587796b5d4e3f2f1e0c000000000000000000000000000000000000000005182a39464e4f4c48555c5b5041301e0b00000000000002101e2b37424c555b5f5f5d574e44392c1f10010000000000192e43586c82968a75604b372312273c52677c9399846f5a453023384e63788d94806a543f2a150014283c5064778b9384756a615c5858595a5b5c60646a73808e9e99846e58432e19030000091d2f404e585d6268707a89826d594e63778c836e59442f1a0600000000000000000000000000000005111c252d34393c3f3d3935485d728894806b56412c180300000000000000000003172a3e5164788c98836e5a45313a4d5f7183968c79665644311d0900000000000011243646545c5f5b5142332210000000000000000000101e2a323431291f1204000000000000112334434e575e64686d7074777a7d828386888a8c8d9091939495979899999b8d77624c37220d001d32465b6e8090938879676a7d8d948b7c6a57432e1900000000000000000000000000010e1a26333f4b57636f7c889492867a6e6256493c2b1906000215283a4c5d6d7d8c978c837a74706e7179838c989a8a786654422f1c0900000000091929384653606b757d858a8f91949490897d72645546362513010000000000000000000012273c52677c938c76614c37220f0f111417191c1e32475c72889b866f5a442f1a0015293c4f6070808f978a7b6c5d4d3b291602000000000000000000000000000000000000000e223547576364615966716e5f4d3a271300000000000000000d1a25303940464a4a48433b32271b0e010000000000001c31465b70869a86705c47321d11263b50667b9197826c57422d283c51667b90907b66513d281300192d42576b8094877565584e474343444446474b5057616f809299846e58432e190300001025394c5e6c7268595d6a7d866f5a495d728787725d48331e0900000000000000000000000000000000000912191f24272a282430455a6f8499846f5a45311c060000000000000000000c1f33465a6d8295917c6854402b30425466788b968573604c38230e0000000000000718283641474a473f33241504000000000000000000000d171d1f1c160d01000000000000001a2e4152606a72787d8286898d909396989b9d9c9b999999999999999999999487745f4b36210c001f344a5f748a9ea697836c70869aa89a86705b46301b0000000000000000000000000000000915212e3a46525e6a76828e988c8073675a4935210c00000b1d2e3f4f5f6d7b8892968f898684858d969f998c7c6b5a493725120000000000000b1a2836424e5861697075797c7d7d7b756c60544637281807000000000000000000000012273c52677c9388735e493425252526292c2f313334485e738899846e58432e19000d2032425261707d8a968b7b6b5945311d090000000000000000000000000000000000000014293e51647579756974857d6a56422d1905000000000000000008131d262c313434332e281f150a00000000000000001e33485d728898836d58432e1910263b5065799094806a543f2a2e42566b80948b76624d38240f001d32475c7086927d6a58473b322e2e2f2f3032363b445162758999846e58432e19030000152a3f53687b83716e6e7380826d5844586d828b76614c37220d00000000000000000000000000000000000000050a0f121513172c41556a809488735e48331e0900000000000000000012273b4f62768a9b8975614e39252537495c6e82898d79644f3a250f000000000000000a19242d3334332c22150600000000000000000000000000000000000000000000000000001f34495d707d878d92979693908f8d8c8a89888786848484848484848484848077695744311c08001e33485d7082949d907d696d80919e93826d58432e190000000000000000000000000000000004101c2834404c5864707b8690918578644f3a240f000000102131414f5d6a75808990969a9999a09b93887b6d5e4e3d2c1a08000000000000000a1825303b454e555b606467748280705c4e433628190a00000000000000000000000516273c52677c9387705c473a3a3a3a3b3e414446484a4b5f748998836d58432e19000214253443525f6c7884908875604c37210c00000000000000000000000000000000000000192d42576c828f8770788e86705c47331e09000000000000000000000a11181c1f1f1e1a140c020000000000000000001e33485e738997826c57422c170f253a4f64798f927c67523d2836495d71869885705c48331f0a001f344a5f73898f78644f3a291e2a363d404040404040465a6f8499846e58432e19030000162b40566b828c878484878b7966523f54687d8f7965503b26110000000000000000000000000000000000000000000000000012273c5065798d89735e48331e09000000000000000000152a3f54697d928f7d6c5946321e1a2c3e51626d747771604d38230e00000000000000000711191e1f1e1810040000000000000000000000000000000000000000000000000000001f344a5f74898b8b8886827d79787776747372706f6e6e6e6e6e6e6e6e6e6e6b64594b3a28150100192d41536475858980716062728289827463513e29150000000000000000000000000000000000000b17232f3b47535e69737d868070604c38230e000000031323313f4c58636c757b8286888b8b8780766a5d4f40301f0e00000000000000000007131e28323a414d5b697786928b745f4a3425180a0000000000000000000000001022344454667b9187705b504f4f4f4f505356585b5e5f6061768c97826c57422c17000007162534414e5a66727d8675614c37220c000000000000000000000000000000000000001b30455a6f8699846e7a908b75604c37220d0000000000000000000000000000000000000000000000000000000000001e33485e738898846e59442f1b0e23384e63788f8f7964503b2d3f5265798d8f7c6855412d1904001f344a5f748b8f78644f3a242c3b485156565656565656576c8398846e58432e1903000014293d52657683848484847b6d5c4a3c51667b917d68533e2914000000000000000000000000000000000000000000000000000d2136495d708285705c47321d0800000000000000000013283d516577898070604e3c29160f21344451595f625f5343311d0900000000000000000000000000000000000000000000000000000000000000000000000000000000000000001c3145596a73747473706c68656362605f5e5c5b5a595858585858585858585751483b2d1c0b000011243547586772736d6253546370746f64564634210e0000000000000000000000000000000000000005121d2935414c56606a7270615243301d09000000000413212e3a46505960676c70737474726c63594d3f3122120100000000000000000000010c1527394b5c6b7988968f826f5d48331e0900000000000000000000000000192c3f5162728393877268666464646466686b6e7073747674798f95806b56402b16000000071624303d4955606d73685846321e09000000000000000000000000000000000000001c32475c718798836c7b918f78644f3a240f00000000000000000000000003080b0d0f0f0e0b070100000000000000001c31465b70869b88725d4934200d22374c6277888975604c37394b5d6f829585725f4c39251200001f344a5f748b917b67523e29394a59656b6b6b6b6b6b6b6b6f8499846e58432e190300000f22364858666e6e6e6e6e695d4f3e3a4f64798f826b56412c1702000000000000000000000000000000000000000000000000061a2d40536371726654412d19040000000000000000000e2236485a6a746d615243311f0d051626343e454b4c4a4235261401000000000000000000000003090f1316191b1c1d1c1a16120d0802000000000000000000000000000000000016293c4c595e5f5f5e5b5753504e4c4b4a4847464544434343434343434343413d352a1d0f0000000618293a49565e5e5a514445535d5f5b5246382817050000000000000000000000000000000000000000000c17242f3a444d565e5d514334251301000000000003111d29333d454c52575b5e5f5f5d5850473b2f211304000000000000000000000000081c304356687a89988f80716352402d1905000000000000000000000000001e33485c6e8090a08f827c7b797979797b7c808386888b8c8b8794947d68533f29140000000006131f2b37434f5b5f574a3b291603000000000000000000000000000000000000001d32475c728897826b7c93917b66513c2711000000000000000000010a11181d2022242523201b150e05000000000000192e43586d83978c77634e3925101f34485b6a75786c5946324055687a8c8a79675643301d0a00001e33485d728795826c584531435668768082828282828282828b99846e58432e1903000006192a3a49535858585858554c3f31374c61768b836d58432e19030000000000000000000000000000000000000000000000000011243645545d5e56483725120000000000000000000006192b3c4c595f5b514334251402000816212a313637362f25170800000000000000000000070f171e24282b2e303232322f2b27221d17100a0300000000000000000000000000000c1e2e3c45494a4a4846423e3b38373634333231302f2e2e2e2e2e2e2e2e2e2c2821180d00000000000b1c2b38434949453e333641484a463f35281a0a000000000000000000000000000000000000000000000006121c27313a434949413425160700000000000000000b16202931383e4246484a4a48433d34291e1103000000000000000000000000000d22374b607386958c7d7061534535231100000000000000000000000000001f344a5f748a92a19d96939190909090919391908f8f8d8c8c95a2917c67523c27120000000000020e1a25323e474a44392c1d0c00000000000000000000000000000000000000001d32475c728895806a7c93937c68533e2813000000000000000009141d252c323537393a3835302921180d0100000000152a3f53687c91927c68533e2914182b3d4d5861635c4e3d2e43586d83887b6c5c4a3826130000001a2f44596d82968874604e3b4a5f73869597979797979797979a93826c57422d18030000000c1c2b373f434343434340392f2133485d7186846e58432e1903000000000000000000000000000000000000000000000000000618273641494943382a1a0800000000000000000000000d1e2e3c464a473e33251607000000050e161c2122211b1207000000000000000000040f1a232b32383d40434547474744403b37312b251e170e0400000000000000000000000000101e293134343433312e2a262322211f1e1d1c1b1a19191919191919191917140e05000000000000000d1b272f3434312a21242d3334322c23170b00000000000000000000000000000000000000000000000000000a141e272f34342e23160700000000000000000000040d161d24292d31333434332f2921170c0000000000000000000000000000000f253a4f64798882796e6051433527170600000000000000000000000000001e32475a6c76849588888786848382807d7c7c7b79787776778a9f8f79644f3a2510000000000000000814212b333430271c0e0000000000000000000000000000000000000000001d32475c728895806a7c93947d68543f2a1400000000000004101b26303940464a4c4e4f4d4a443d342a1e11030000001025394d61758996826b56402b160e1f2f3b464d4e493e302b3f536571736b5d4e3e2c1b09000000162a3e52667a8d907d6b59474b60768c908a83828384888b8c8d847563513d291400000000000d1a242b2e2e2e2e2e2c261d1a2e43576b80826c57422d180300000000000000000000000000000000000000000000000000000918252e34342f261a0c00000000000000000000000000101e2a3134322b21150700000000000002080c0d0c07000000000000000000000715212d363f464d5255585a5c5c5c5954504b463f39322a21160a000000000000000000000000000c161c1f1f1f1e1c1915110e0d0c0a080300000000000000000000000000000000000000000000000009141b1f1f1c160e11191e1f1d18100600000000000000000000000000000000000000000000000000000000010b141b1f1f1a11050000000000000000000000000002090f14191c1e1f1f1e1a150d04000000000000000000000000000000000d22374b5e6e726d655c504233251709000000000000000000000000000000182b3d4e5a6e84937c72706f6e6c6b6a696867666463626070869a8c77624c38230d0000000000000000030f181e1f1c140a000000000000000000000000000000000000000000001d32475c728895806a7c9395806a543f2a1500000000000815212d39434d555b5f626364625e5851473c2f21110100000a1e3246596c8091826b56402b1601111e29323838352c20233647555d5e584d3f30200f000000000f23374a5d708496887665544a5e73807c756e6b6c6f727576777165574634210e000000000000071016191919191917120a14283b4f61707264513e29150000000000000000000000000000000000000000000000000000000007121a1f1f1b14090000000000000000000000000000000d161d1f1d180f0400000000000000000000000000000000000000000000081725333e49525a61666a6d6f7172716d6965605a534d463d342719090000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000081c2f41505b5d5952493f32241507000000000000000000000000000000000e203042576c83937c675b5a58575655545352504f4e4c586e849989735f4a34200a000000000000000000000000000000000000000000000000000000000000000000060d1214151b30465b708795806a7c9395806a543f2a15000000000b1926333f4b566068707477787977736c64594d3f2f1f0d000003162a3d4f6173847d69543f2a1500000c161e232320190f192937424848453b2f21120200000000081b2e415466788a948372625255646a68615a56575a5d6061625d54483928170500000000000000000000000000000000000c203243525d5e554634210e00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000516263543505c666e757b808386878887837d79746e68615a50453726140100000000000000000000000004080b0b0a08030000000000000000000000000000000000000000000000000000000003090e12141513110c06000000000000000000030c1213130f0800000000000000000000000000050e131615110a0000000004090c0d0d0d0a05000000000000000000000000000000000000091013130f0800000000000000000000000000000000000000001223323f4648453e362d221406000000000000000000000000000000000002162b40566b80937c675244434241403f3e3c3b3a38445a6f859a86705b46311c070000000000000000000000000000000000030c131717150f06000000000000040f1a2127292a2930465b708795806a7c9395806a55402b160000000d1b293644505c68737c84898c8f8f8d8880766b5d4d3c2b180500000d2032445566746e604e3b2612000000030a0e0e0c06000b1a252e333330281e1103000000000000112437495b6c7d8e90807062545154534d46404245484b4c4c4941372a1b0b0000000000000000000000000000000000000314253441494943372817050000000000000000000000000000000000000000000000000000080e11110e09010000000000000000000000000000000000000000000004090e11141617171715110d080300000000000000000000001223344453616e79828a9095989b9c9d9b98938f89837c756d635544311d08000000000000000000010b13191d20211f1c181109010000000000000303020000000000000000000000000000050e171e2327292a282620191005000000000000081520262928231b1105000000000000000000000d1822282b2b261d12040710181e212222221f191208000000000000000000000000000003111d252828241b10030000000000000000000000000000000000000514222c3233302a231a100400000000000000000000000000000000000000142a3f54697d937c67523d2e2d2c2b2a2827262532475c718797826c58432e190400000000000000000000000000000000071520282c2c2a23180a000000000414212d353b3e3f3e3c465b708795806a7b9195806b56402b1600000f1d2b394754616e7a86909897949393959a94897b6b5a4734210d00000314263748575f5c5142311e0b000000000000000000000008121a1e1e1c150c0000000000000000071a2c3d4e5f70808f8f807265584c4139322c2d3033363737352e2b24180a000000000000000000000000000000000000000716242e34342f26190a0000000000000000000000000000000000000000000000000002101b232626231d1409000000000000000000000000000000000000020b12191e2326292b2c2c2c2a26211d18120b0500000000000000091c2f41526271808c969b9692908f8f909295979b9d9790898073604b36210c000000000000000008141e272d32353634312c251d140a0000040d14181917110900000000000000000000010d18222b32383c3f3f3e3a352d22170900000000071726323b3e3d372e22140500000000000000000e1d2a353d40403a3023131a242c3237373737342e251a0d0000000000000000000000000112212f393e3d382e2112010000000000000000000000000000000000000410181d1e1b160f0700000000000000000000000000000000000000000013283e53687c937d68533e291817161413121121364a5f7489927d68533f2a1500000000000000000000000000000000061625323c41423e352819080000001222323f495053545352505b708796826b7b9195806a543f2a15000c1d2d3b49576572808c989188827d7c7d8086909a897764503c2813000000091a2a39444a483f33241302000000000000000000000000000000000000000000000000000000000e203141516170808f9083766a5e544a423b35312f31383e424340362818060000000000000000000000000000000000000006121a1f1f1b1308000000000000000000000000000000000000000000000000000011202d373b3b3831271a0b000000000000000000000000000000000b151e262d33383b3e404242423f3b36312c262019120900000000001125394c5e708090988f87827c797878797c808386888b8c8c8c77624c37220d000000000000000b1925313a42474a4b4a46403930271c11091621292d2e2c251b0f000000000000000005121f2a353e464c515354534f494034271809000000122435444f53524b4032231302000000000000081a2c3b485155544d4131232d3740474c4c4c4c4841372b1c0b00000000000000000000070e1f303f4c53524b3f301f110f0b0701000000000000000000000000000000000000000000000000000000000000000000000000000000000000000012273c52677c91806a55402b16000000000011253a4e63788d8e78644f3a261100000000000000000000000000000000122434434f5657524637251300000b1e2f40505c65686a68676666728897826b7b9095806a543f2a1500172a3b4b596775839095897d746d6967686b72809194806b56412d18000000000c1b283134332c221506000000000000000000000000000000000000000000000000000000000002132333435261707d8b94887c70665d564f4a4644464c535758534635230f000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000c1e2f3e4a50504c44382919070000000000000000000000000003111d28313a41484c505355575757534f4b46403a342d251c1205000000182c4054687b8e93867b726c6865636365676a6d7073747676776e5d4935200b0000000000000c1b2937434d565c5f605f5b544c43392e231827333d424340392d1e0d000000000000051423303c47515a6166686a68635c52453627160400001a2e41536268665d514231200e0000000000001124374959646a695f4e3c35404a535b606262615d54493a2916030000000000000009131b22293c4e5d68675d4e3d2b2624201b150d020000000000000000000000000000070d1216191b1b1b1a1714100a04000000000000000000000000000010263b50657990826c57422d180300000001162a3f53687c9289745f4a36210c000000000000000000000000000000091c2f4152616b6c6455422e1a060013273a4d5e6e787d807d7c7b7b7d8d98836c799095806a543f2a15001d324659697786939385776c61595452535661748999846e59442f1a00000000000a151c1f1e19100400000000000000000000000000000000000000000000000000000000000000061625344351606d7986928e8479716a635e5b5a5b60676c6e64523e2914000000000000000000000000000000000004080b0d0e0d0a0704010000000000000000000000000000000000000000000000000014283b4d5c65656056473624110000000000000000000000000413212e3a444e555c6165686a6c6c6c6864605b554e4841392f23150500001c31465b6f84968474685f5853504e4e505255585b5e5f728688725d48331e0800000000000a1a2a394754606a707476746f6860564c4035293645505758554a3c2b18050000000004142332414e5a646d757b7d807c786f63544533220f00001f34495d717d7a6f604f3d2b18050000000000172b40546777807c6c584347525c666f7577777671675846321e0a000000000004101c262f363d43586b7b7a6c5a473e3b3935302920140500000000000000000000020b141b22272b2e3030302f2c29241f1811080000000000000000000000000f24394e63788e846f5a442f1a06000000081c3045596d8397846f5a46311c080000000000000000000000000000001024384c5f708082725d48331e0900192d42566a7c8c939594929191939a98846e7990947d68533e2913001f344a5f748896928374665a4f453f3c3e485d728899846e59442f1a00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000007162533424f5c6874808a948d867d7873706f70757b82826b56402b160100000000000000000000000000060d14191d202223231f1c1916120e0903000000000000000000000000000000000000000000192e43586b7a7a736553402c180300000000000000000000021323313f4c5761697076797d808283827d79746f69635c554c4133231100001f34495e73898f7966574c433e3b38393b3d404347586a7c8f89735e48331e090000000004162738485765727d868a8c89847c73695e52463a4454636c6e685a4835210c0000000011223242515f6b77828a909495928c827263513e2b1804001f344a5f748b8d7d6d5b4835220e0000000000192e43586e839587725d4e59646f79838a8d8d8c8575624d39240f000000000514212e39424a51565a6f868a77645553504e4a443c3223140200000000000000000a151e272f363c404346464644413e39332c241b1105000000000000000000000c21364b60768b87725d48331e090000001024374b5f7388927d6955402c1703000000000000000000000000000000162b3f53687b8f8b745f4a341f0a001d32475c708699a8aba9a7a7a7a8ad99856f7990937c67523d2813001f344a5f73889585746556493d322a2d3c4d61758b96826c57422d18000000000000000000000002091015191c1e1f1f1c1915120e0a0500000000000000000000000000000000000000071624313e4a56626d77828a93928d89868586898f917d69543f2a1500000000000000000000000007111a21282e323537383834312e2b27231d171008000000000000000000000000000000000000001b30465b70868f836f5a45311c06000000000000000000000f2031414f5d69747d858b8f9395979896938e89847d7770685e51412e1b07001f344a5f748b8f79645040352d272324262d3947556576889a88725d48331e0800000000102233455666758390999fa19e988f867b6f64584c4f6172808477644f3a25100000000a1c2e3f50606f7c89948e878384899391806e5b47331f0b001f344a5f748a9c8a7764513e2a170300000000182d43586c83978b7660606b76828c969f9f9b989079644f3a250f000000041423323f4b555e656b6f728694806c6a6866635e584f4232200d00000000000003101b27313b434a5055585b5b5b5957524d4740372e221609000000000000000000091f34495e73888b76614c37230e000006192c3f53677a8f8c77634f3a2611000000000000000000000000000000001a2f44596d83978b745f4a341f0a001f34495e73899eb3c0bebcbcbcbdb09b86707990917b66513c2711001c3045586b7a8276665647382b2e363f4b5a6a7d90907c68533e2a15000000000000000000040d161e242a2e32333434312e2b27231f1a150f0801000000000000000000000000000000000613202d3945505a646d7680868d93979a9b9b928573614e3a261100000000000000000000020e1a242d353c42474b4c4e4c494643403c37312b241b120700000000000000000000000000000000001b30465b70879c87725c47321d07000000000000000000071a2c3e4f5f6d7b8791999b9795949495979a9d9e98928c857b705e4a36210c001f34495e738893806d5e5148413c383639404a57647384949b87705b46311c07000000071a2d3f51637385949e958f8c8c8f94988d8275695d596c8090927c67523c271200000114273a4c5d6e7d8d93867a726d6e7582918b76624e39240f001e33485d72879c95826d5a46321e0900000000162b3f54697d948e7966717d89949c958f8b87838277634e39240f00000011223242505d6872798084888b9a8782807d7b77736c604f3c281400000000000413202d39444e575e656a6e7070706e6b67625b534a40342718080000000000000000061b30455a6f848f7a65513d28140000112336495c6f839685705c4834200c000000000000000000000000000000061d32475c71879c8b745f4a341f0a001f344a5f748ba0b5cad3d1d1d1c7b29c88727b908f79644f3a25100015283b4d5c676b66584838383d4249515c697889998773604d39241000000000000000000b16202a32393f4347484a494643403c38342e29231c150d04000000000000000000000000000000030f1b27333d47515a636a72787d838788878075665644311e0b0000000000000000000614202c37404950575c5f6263625e5b5855514c463f372e24190d000000000000000000000000000000001b30465b708795806c58442f1a050000000000000000000f2336495b6d7d8c99938c8683807d7d808386888b8d9091918d77624c37220d001b3044586d82948c7b6f645c55514d4b4e545d68748392a198846e59442f1a05000000102336495c6e80929a8c827976767980879093877b6f6576899c8f7965503b26110000091c304356697b8c948475685e585a637386917b67523c2712001a2f44586d82959d8975614d3924100000000012273c51667b91948278838f988f88827a75716e6b67594734200b00000b1d2f4050606e7a858e95999c9fa59a979593908d887d6b57422d1800000000041423313e4b56616a7279808386878684827c766f675d5244362616040000000000000000172c41556a8094806b5743301d0a0f1e2f415365788c907c6955412d19050000000000000000000000000000000a1f34495e73899f89735e49341f0a001e33485e73899eb3c7dce7e6dec9b49f89737c938d77624d38230e000c1e2f3e4b5356524842484d52575d656f7a88968d7b695744311d0900000000000003101d28333d454d53585c5e5f5e5b5854514d48433e37312921170d010000000000000000000000000000000a15202b353e474f575d64696d7073716c635748382715020000000000000000061524313d49535d656b707477787773706d6a65605a534b41362a1d100100000000000000000000000000001b30465b7087947d68533e291501000000000000000000162a3e5266798b978a8077716d6a68686a6c6f727578797b7b7b715f4a36210c0015293e51647789998d8277706a6562606268707a8693a1a994806a55402c1702000004182c3f5366798c9a8b7b6e656061656b737d88948d827a82939d8974604b37220d00000f24384c60738699897666574b43465a6f86947d68533e29130015293e5165788c9f907c68533f2a160100000011263b50667b919f928e9590857b736c66615c585653493b2a1805000114273a4c5e6e7d8c98a29a948f909e8b878686878888806c57422d1800000001122232414f5c68737d878e94989b9c9b9996918b837a6f62544433210d000000000000000012273c5065798e87735f4c39281c212d3c4d5e7082958874614d3a2612000000000000000000000000000000000a1f344a5f748b9d88725d48331e08001c31465b708599aec1d5e6f0e0cbb5a08b7682968b75604b36210c000011202e383f444b52575c61666b7178828c988f806f5e4c3a27140100000000000413212e3a46505961686d70737473706d6966615d58524b453d342a1f1306000000000000000000000000000000030e18222b343b43494f54585c5e5c575045392a1b09000000000000000006152433424f5b66707880868a8d8f8c898683807a756e675e53483b2e1f0f00000000000000000000000000001b30465b7087947d68533e2913000000000000000000001b3045596d829687796d645d5855535355575a5d606365708487725c47321d08000e213447596b7b8b98948c85807a7776777c838d979faca38f7965513c27130000000c2033485b6f83968d7c6c5d514c4c5157606b768492959093a096826e5a46311d08000014293e52677b8f94806c594839384b5f7388927c68533e2813000e2236495c6f829597826d59442f1b0600000011263b50667b91a7a59b8c7d72686058524c4744413f372c1d0d0000091d304457697b8d9c9a8f878079889984706f6f7072736d61503d29140000000d1f3040505f6d7a86919a9a95918e8c8b8c8d8f90928d827262503d281400000000000000000d22364a5e72878f7c6956463731343e4b5a6b7c8d917d6b5845311e0a000000000000000000000000000000000b21364b60758b9c87705b46311c0700182d41566a7d92a5b8c9d6dbdccdb8a491888b9c88725d48331e09000002142739495660666c71767b80868d95998d80706151402f1d0a0000000000031322313f4c58636c757c8286898b8886837d7b76716c66605850473c3024160700000000000000000000000000000000050f1820282e353b4044474847433c33281b0c0000000000000000021323334251606d78838c949a98928f90929598948f89837a7066594c3d2d1d0b000000000000000000000000001b30465b7087937c67523c2712000000000000000000001f34495e7388907c695b504843403e3e404245484b55677a8d89735e48331e090005182a3c4d5d6c7a87919a9994908d8c8c9197928a8ea19c88735f4b37220e00000012263b4f63778b94826f5e4e3f37373c444d5966738393a4a7a28f7a66533f2b16020000172c41576b82968f7964503c324355677a8f8d78644f3a261100061a2d3f5264778b9c87725d49341f0a00000011263b50667b91a79f8d7c6d60554c443e38332f2c2a241a0e0000001024384c6073879998897c726b728899846e5a5a5b5c5e5a504333210d000006192b3c4e5e6e7d8b98948c86807b7876747677797b7c7d80806b56402b160000000000000000071b2f43576a7d91867463554a4749505c697889988673614e3b281502000000000000000000000000000000000b21364b60768c99856f5a442f1a050013273b4f6275899aabb9c3c6c7c7c0afa29b9c99846f5a45301b060000001a2f435667737a82868b90959a9990877b6e615142332211000000000000112131404f5d6975808990979b979495979794908c87827a746c63594e42342516070000000000000000000000000000000000040c141a21262b2f3233322e2920160a0000000000000000000d1f31415161707d8a969d938b847d79797c8084898f95968e8377695b4b3a2916040000000000000000000000001b30465b7087937c67523c2712000000000000000000001f344a5f748b8f78634e3d342e2b29292b2d3542516273859788735e48331e0900000d1e2f3f4e5c69747d868b8f91918f8d88837c768ba094826c5845301c08000003182c4155697d928a7764524030222228313b485564758698ab9b87725f4b37230f000000172c42576c83988d77624d3840506072859583705d4935210c0000102335485b6e82968c76614c37220d00000011263b50667b91a797836f5e4f43393029231e1a1715100800000000152a3e53677b8f9b8a796b5f5e738999846e5845464748463e332515040000102336485a6b7c8d978b8277706b676361606163646667686a6b62513d291400000000000000000014283b4e617486928273665e5c5e646d7988978c7a685644321f0c00000000000000000000000000000000000d22374c61768c98836d58432e1803000c1f3346596b7c8d9ba7aeb1b1b1b3b4b4b0a995806b56412c17020000001e33485d72868f959aa0a5aa9a877d73695d50423324150500000000000c1d2e3f4f5e6d7a87929c978f88837d808386898e9399958f8880766b5f52433425140200000000000000000000000000000000000000060c11161a1c1e1d1a140d0400000000000000000005182b3d4e5f70808f9c968b80776f696465676b6f747a828a9495887969584633200d0000000000040a0e0e0e0e0e1b30465b7087937c67523c27120e0c07000000000000001f344a5f7489927d6a594d433c373330343b4652617080919c87715c47321c070000001121303e4b57616a7176797b7b7977736e68778d9f8c7864513d2915010000091d32475b708497836e5b473522120e141e2a374757697b8fa493806b57432f1c08000000172c42576c8297907b675343505e6e7d9089776653402d1a06000006182b3e53677b908f7964503b251000000011263b50667b91a795806a544031261c150f090400000000000000001a2e43586d8296907d6b5b4d5e73899a856f5a44303233312b211507000006192d40536577899687796d645c56524e4c4b4c4e4f5052535456514434210e0000000000000000000b1f32445768798a91847973707377808b988e7d6d5c4b3927150200000000000000000000000000000000000d22374c62778d96826b56412c1701000316293c4d5e6e7d8a93999c9c9c9d9f9f9d998d7a66513d2813000000001d32475b6e7d8b8f93979ca29b8774675b4f413324150600000000000417293b4c5d6d7c8c99998e847b736d696a6c7074797d858b929993897d7061524332200e000000000000000000000000000000000000000000000000000000000000000000000000000000000f2235485a6c7d8e9e9285786d635b544f5052565a5f666d77828f98877563503c2814000000020e181f23232323232330465b7087917b66513c272323211b120800000000001c31465a6e839688776a5f57504b4846494f586370808f9e99846f5a442f1a050000000312202e3a444e565d6164666664625e5a6a7d9295826f5c4935210e0000000d22374c60758a907b67533f2b180500010c1a29394c60758b9f8c7763503c281400000000152a3f53687c9097836f5b54606e7c8d8b7b6b5a48362411000000000f24384d62778c927c67523c271200000012273c52677c91a79884705d4b3927160600000000000000000000001d32475c70879b8974614e4a5f74899b866f5a442f1d1e1c170e040000000d2135495c6f83958a78685c5148423d39373637383a3b3c3e3f403d34261605000000000000000000021527394b5c6b7a88938e8887888c93968b7d6f5f4f3e2d1b0a0000000000000000000000000000000206090e23384e63778d947d69543f2a150000000c1e3040505f6c77808487878788898988847c6f5e4b37230e00000000182b3e50606f76797d83888e959386796d5f5141301d0a00000000000e213446586a7b8c9b94887b706f75797c8082838483827c767d868f9a8f8070604f3d2a1704000000000911171917120a0000000000000001070b0d0e0e0c0905000000000000000000000004182b3e5164778a9b908273675b5047403a3b3d41454b525a6470809092806b57432f1a00000313202b3338383838383838465b7087917b66503b383838362e251b1002000000172b3f5366798c96887c736b65605d5b5d636b75828f9eaa95806b56412d18030000000002101c28323b42484c4f50504f4d556576889b8b7865523f2c190600000011263b5065798f8b76614d382410000000000c21364b5f748a9985705c4834200c000000001025394d607285968b776666727d8d897b6c5d4d3c2b1907000000000b21364b60768c947d68533e291300000014293e53687d93a8a08d7a68564534231304000000000000000000001f34495e738998846e5a454a5f748b9b866f5a442f1a050000000000000013283c5064788c92806c5a4b4745413c362e252223252627292a2b2921160800000000000000000000000f23354756626a7682888e9091908b83796d5f514131211000000000000000000000000000000810171b1f2023384e63788f937c67523d281300000001122232414e5a646b6f707070727373726f695f51402e1b08000000000f213242515c6165696d7379828a958a7d6f5f4d3a26120000000003172a3d50637588999384766b77838a8f9294979899989692897b727c88958f7d6d5a47331f0b0000010f1b252c2e2c261c1002000000050e161b20222323221e1a140c0400000000000000000b1f33475a6e82959282716356493e342c2626282c31373e47536173869a87725d49341f00001021313d474d4e4e4e4e4e4e4e5b7087907965504e4e4e4e4a41382e20100000001024374a5c6e808f9a8f87807975727071777d88939fada4907b66523d2814000000000000000a192a3a4953565148434c576472839491806d5b4936231000000000152a3f54687d9386705c47331e090000000010253a4e63788d927d6955412d1905000000000a1e31435567778895847578839086786b5d4e3f2f1e0d00000000000b20364b60758b947d68533e2913000000162c40566b80959d9c988673635241312212030000000000000000001f344a5f748b97826b56414a5f748b9b866f5a442f1e1204000000000000182d42566b80948b76635e5e5c5a56504941382e22161112131516140e05000000000000000000000000162b3e5264747c786e74787b7b7976767d7a6955402c160300000000000000000000000006111b242b303435363a4f647990907b66503b261100000000041423303d4750565a5b5b5c5c5e5e5d5a554d4132231100000000061726343f474a4c5054595f666d7784928e7c6955402b16010000000a1e3246596d809395847468798995908886868687888a8c8d8c826b6a7786958a76634e3a251100000e1f2d39404340392e201000030f18222a303437383837332e2820160c0000000000000011253a4e62768a988674635345382c2118111013171c232b3544576c82978b745f4a341f00071a2d3e4f5a616363636363636363708790796463636363635d544b3e2d1b080000071a2d3f5061707d8b969b948f8b8887878c92978f91a39e8a75614d38240f000000000000000e22364858676b655a585f6975839194847261503e2b190600000000182d42576c8297826c58432e190400000000152a3f53687c928c77634f3b261200000000000114263849596a7a8a93888b958576685a4d3f302111010000000000091f34495d7288917c67523c2712000002192f44586e83988b878a9282705f4f403021110200000000000000001f344a5f748b97826b56404a5f748b9b866f5a443a3023130200000000001c31465b70869a8670717373726f6a655d544b40342618090000000000000000000000000000000000001b30455a6e82928c807063666667778793836e58432e190300000000000000000000000a17232e383f45494a4b4851667b918f78644f3a240f000000000004131f2b343c41444646474748484845413a302314050000000011243544525b5f5d5242454b525a66738698836e58432e19030000001025394d6175899a8876667386988e7d746f6f6f70737476777671635967778b927d68543f2a1400081b2c3d4b5558554c3e2e1c0a15212b353e44494c4e4e4c48433c33291e11030000000000152a3f53687c928d7a68564535271a0f0500000001080f1d31465a6f849988735e48331e000e22364a5c6d76787878787878787878878f7878787878787871675c4a37230e0000001021324251606d79838b9094979794928e88837b8ba096836e5a46321e090000000000000011273c51657680776d6c727b879394867566554432210f00000000001b30455a6f85947d69543f2a1500000000061b2f44586d829786715d4834200c00000000000818273645525e6c7c939d9e8b7767584a3c2f211203000000000000061b3045596d828a77634e3925100000081d32475c708699847076838e7d6d5e4e3f2f201102000000000000001f344a5f748997836d58434a5f748b9b866f5a544d41311f0d00000000001f34495e73899883798689898884807971675d52443627170600000000000000000000000000000000001b30455a6e7d8c9a8f8070606575869697836d58432e1803000000000000000000000a192835414b535a5e5f605d5a6a7d948d77624d38230e000000000000020d1821282d2f30303232333333302c261d130500000000061a2e4153626f74705e514f4e4e51576a8095826c57422d1803000000152a3f53687c918f7c6a667a8f95826f615a5a5a5c5e5f6062605d54495c708796826b56402b16001125384a5b686e695c4b39261926323e4851595e626363615d574f463b2f21130400000000192e43586d839785715d4b39281709000000000000031426394d60758999846f5a45311c0011273c5165798a8f8f8f8f8f8f8f8f8f90958f8f8f8f8f8f8d857a65503b261100000004142433424f5c666f767b808282807c78736d768ca18e7a66533f2b17030000000000000012273c52677b918a8383878f999184756758483726150300000000001c32475c7187917c67523d2813000000000b2035495e728897826c58432e1a050000000002142536455463707c8997979f8b75604d3b2c1e11030000000000000000162b3f5266777b6c5a47331f0b00000b20354a5f748996826b6474858c7c6c5d4d3e2f2012040000000000001d32475c70869a86715c484a5f748b99846e64695f4e3c291602000000001f344a5f748b9782829592909298948d857a6f6254453524130100000000000000000000000000000000172b3e505f6d7b8a978f7d6e748494a2907c6854402b16010000000000000000000818283745525d676e737475726f7185998c76604b36210c0000000000000000050d13181a1b1b1c1d1e1e1e1b18120a0100000000000b2035495d70828a766966646363656b7585917c68543f2a1500000000192e43586d829786725f6b80958d78655245444547484a4b4c4b4941445a6f8697826b56402b1600182d41546778847a6956422e283744505b646d7377787876716b63584c3f312212010000001c31465b7086937d6a55412e1b0a000000000000031121324456697c90937d6a55412c180012273c52677c8b8c8d8f90919293939396989494959595938e8373614e39240f00000000061524323e49535b62666a6b6b6a67645f687c909885715e4b37241000000000000000000f24394e6276899797979b958b80736658493a2a19080000000000001e33485e7389907965503b2610000000001025394e63778d94806a543f2a1500000000000b1e3143546372828e93898391907c6a59483827170500000000000000000f2336485966685d4e3d2b180400000f24394e63778d927c685667788a8b7b6b5c4d3e302212020000000000192d42576b80948c7763504a5f748b98836d6f7d6c5945321e09000000001f344a5f748b97827c807c797d848c95988d8072635342301e0b000000000000000000000000000000000f2132414f5e6b7988978d7c8593a2958472604d39251100000000000000000002142536465563707a83888b8b8784838fa18c76604b36210b0000000000000000000000000000000000000000000000000000000000000e23384d63778d8f837d7b7878787a8088938875614e392511000000001c31465b708694806b596e849989745f4a362f303134393937363430455a6f8695806a54402b15001d32475b70849786715c4833384655616d7782888c8f8d8b8680756a5d4f402f1f0d0000001d32475c7288907a65503b26120000000000000613212f3f50617386998b77634f3b27120010253a4e617074767778797b7c7c7c7c898c7d7d8080807d7971655544311e0a00000000000614212c3740474d52545656545251617385988d7a6754412e1b0800000000000000000b1f3346596a79848b8c8782776d6255483a2b1c0c000000000000001f344a5f748a8f78644f3a240f0000000014293e52677c91947d68533e2913000000000013273b4e607282918f82767282918877665645342311000000000000000007192a3b4953544c3f301f0e00000013283d52667b918e79644f5b6d80918a7a6b5c4e4030200d000000000014283c5064778c93806d5b4a5f748b97826b708775614c38240f000000001f344a5f748997826b6a6865697078828d98918270604d3a27130000000000000000000000000000000004142331404d5b6978899a8f96a2978776665543301d0a0000000000000000000c1f3143546473828d979d9f9f9c99989fa08b75604b36200b0000000000040e14171611080000000000000000000000000000000000000e23384d62778b999793908f8f8f9094968a7a6a5845321e0a000000001e33485d7288907b665a6f869b87705c47311c293a474e4d45372733485d7287937d68533e2914001f344a5f74899f8b75604b3747566472808b959c9e9c9c9c9a92887b6d5e4d3c2b180600001e33485d72888f78634e39240f00000000050e1924313f4d5d6e809194826f5b4834200c000b1e3143525d5f6062636466676767748b8b76696a6a6a68655e5a5143342412000000000000030f1a2736454e504c43404753606f80919482705d4b38251200000000000000000004172a3c4d5b67707576726c6b635444382a1c0d00000000000000001f344a5f748b8f78634e38230e00000000172c41566b8095947d68533e29130000000000182d41566a7d908e7d70646372829285736352402f1c0900000000000000000d1d2b373e3f392e211202000000172c40556a80948a75604b4f617385968a7a6c5e4e3d291501000000000d2135485c6f82948b79685a60768c94806a768a7b66523d2813000000001e33485d728797826c575350555c656f7a87958f7d6a56422e1905000000000000000000000000000000000513222f3d4b5a6b7d91a4a89a8a796959483725130100000000000000000215283b4e607283929d938d89898b8d939ca18c77624c37220d00000000081621292c2b251a0d0000060a0b0b08030000000000000000000b1f34485b6d7c868b8b8b8b8b8b8b8983786b5c4c3a281502000000001e33485e7389907964596e849987705b46311f3347586361554533394d61768b8f7965503b2611001f344a5f748ba08c76604b4555657483919d968e898787888d95998c7c6b5a4835230f00001e33485d7288907965503b261201050a1119212b36424f5d6b7b8c9a897664523f2c18050013263847545c5f6061626262626262768c89745f5754555e68706e6152412e1b060000000000000c2033455462666056535a64707d8e9887766453412e1b08000000000000000000000d1e2f3d4a545c6066738080715d49341f0c0000000000000000001f344a5f748a8f78634e38230e00000000192e43586e8398937d68533e291300000000001a2f445a6f8496827060525464748692826f5e4c382511000000000000000d1c28313638352d221404000000051a2f44596e849886715c474456677889988a7b6c58442f19040000000005192c3f526476889787776a62778d917c6e8092806a543f2a15000000001a2f44596e839785705b473b4149525d6977879886715c47321e09000000000000000000000000000000000004111f2d3d4e6174899c9c8c7b6b5b4b3b2a1a080000000000000000000a1e3245586b7d90998b807874737478808ca08f78634e39240f000000081726333d4240382b1c0b131a1f21201d1711070000000000000005182b3e4f5e697174747474747474736f665b4d3e2e1d0b00000000001e33485e7389907b66566b829588725c473223384d627673624f3c4054687c908a76614c37230e001f344a5f748ba08b76604b5263738393998d83797470707278828f9a897765523f2b1704001c31465b7086937d6955412e1d171a1f252c343e48535f6d7a8a998e7c6b594735221000001b2f43556570747676777777777777778d88726e6c6a69707b8580705e4a35200b00000000000011263b4f63727b7368676d76828f988a79695847352311000000000000000000000000111f2d3d4c5a687685928c76604b36210b0000000000000000001e33485e73898f78634e382313020000001a2f445a6f869a927c67523c271200000000001d32475c728795806d5b4a46576a7c8f8d7b6854402c170200000000000b1c2b39444b4e493f322212000000091e33485d728797826d584338495a6a79868e856f5a442f1a0500000000001022354758697a8a96887c72788f8e787d8c937d69543f2a1400000000162b4054697d928a76624f3d2d36404b59697c908a745f4a341f0a000000000000000000000000000000000000010f1f3145596d8297917d6e5e4d3d2d1d0c000000000000000000001025394d6175889a8a7a6d635f5e606472879c907a66503b2611000004162635445057544939281d272e343636322c24190b000000000000000f2031404c565d5f5f5f5f5f5f5f5e5b53493d2f20100000000000001d32475c718794806a56667b908974604c3a2c3b506479806b57434a5d70849785705b47331e09001f344a5f74899d88735e4e5f70829296887b6f665f5c5b5d6470809195826e5b47331e0a00192e43586c829585705d4b3b2e2c2f33394048515a65707d8b998f806f5e4d3c2a180500001f34495d72848b8c8c8d8d8d8d8d8c8c928b878482807d858e988b76604b36210b00000000000012273c52677c90857c7c828a9495887a6b5b4b3a2918060000000000000000000000001326384a5b6a7887959083705e4a35200b0000000000000000001d32475c7287907965504031200e0000001a2f445a6f869a8f7965503b261000000000001c31465b6f84988b7967584c4e5f728898846f5a45301b06000000000316283a495760635c50402f1d0900000d22374c61768b927d68543f2c3d4c5b687378776855412d180300000000000517293b4c5c6b7a88938f8783908d878f968876634f3b26120000000011263a4e62768a92806c5a49392d2e3b506579908b745f4a341f0a0000000000000000000000000000000000000002162a3f53687c8b84736150402f1f0f0000000000000000000000162a3f53687c918f7c6b5c504a484b5a6f869a927c67523d281300000e21334453626c67574431303a42494b4b46403729190a0000000000000313222f3a43484a4a4a4a4a4a4a494640372c1f11020000000000001a2f43586d829685705c6074888f7b69584a3f44566a7d87715d4856687a8d917d6955412d1804001e33485e738999846f5a596b7d8f9586776a5d534b474649526173869a8a76614d38240f0015293e52667a8e8d7a69594b414144484d545c646d77838f9b8e8070615141301e0d0000001f34495e72838c92959799999b9b9b9ba199999897959498978f82705c48331f0a00000000000010253a4f64788c98929296998f84776a5c4d3d2d1d0c000000000000000000000000071b2f4255677988978f80726453412e1b060000000000000000001b30455a6f84937d695e4f3d2b18050000192e43586d83988c77624d38230e0000000000182c4054687a8d978676695f5e6474899c87705b46301b06000000000b1f3346586774786e5e4c392510000011263b5065798f8e78644f3a262e3d4b575f63635a4b392612000000000000000c1d2e3e4d5c6976828a91969c97938d847869594734200c000000000b1f33475a6d8294897766574a403b44566a7d9389735e49341f0a00000000000000000000000000000000000000001025394e617174726555443222110100000000000000000000001a2f44586d839785715f4d3e353343586e8498947d69543f2a14000015293e51627180745f4a35414d565d60605b54473728190b00000000000004111d272e333434343434343434312c241a0e0100000000000000152a3e53677b8f8c7763596c7d918776675c52566273868b766152637385978975614e3a261200001d32475c728897826c5765778998877767594c403731303544566a7d93907b66513c2712000f23374b5e7185978877695d5656585d62686f77828a95968a7d70615243332312010000001b2f43556470777c80838484868686869684848384848484827b716353402d1905000000000000122435495c6e7d8990918c867c72665a534e433423100000000000000000000000000c21364a5e7285968d807062544636241200000000000000000000172c41566a8093877b6d5b4834200b0000162c40566b809587725d49341f0a00000000001125384b5e6f809195877b747377839298846f5a45301b060000000011253a4e6275868c7c68533f2a150000152a3e53687d9388735f4a36211f2d39444b4e4d473c2d1c0a000000000000000010202f3e4c58646d767c8296827d7870675a4b3b2917040000000004182b3e51647689958575675c5450546173869985705b46311c0700000000000000000000000000000000000000000a1e3144535d5f5d5547372614040000000000000000000000001d32475c7187927d69554230212c42576c839895806b56402b1601001a2f44586d808c76604b46535f697176746f65554637291b0e000000000000000a131a1e1f1f1f1f1f1f1f1f1c1810070000000000000000000f24384c60748893806c596173849486796f666a7282918c77626170829292806c5946321e0b00001c31465b708797826b5d7083958b796959493b2e231c1b273b5064798f947d69543f2a1400081b2e415467798b96877a706b6b6e71767c838b94998f85786c5f5143342515050000000013253746535d63676a6c6e6e6f6f6f84937d6e6e6e6e6e6e6c685f5345362411000000000000091d2f41515f666c757a7b777169606068686152402c180400000000000000000000000e23384e63788882796f615244362818070000000000000000000013273b5063778a988a77634d38230e000013283d52667a8f806b57432f1a060000000000091c2e405262728290988f89898c94998b7a6754402c17020000000014283e53687c9296826b56402b160100182d42576c8296836e5a45301c0f1c2730363838342b1e0f0000000000000000000211202e3a46515a62708695806b645d54493c2d1d0c0000000000000f223447596b7b8c9486796f686567718091917d6a55412d180300000000000000000000000000000000000000000214263541494a494237291a09000000000000000000000000001f344a5f74898e78644f3a26162b40566b829798836c57422d1803001c32475c71878c77624d5764707c868c8a8473645547392c1d0d00000000000000000000000000000000000000000000000000000000000000091d3144586b809289766355667585928c827b7d86919584716471808f988674614f3c29160300001a2f445a6f8597826b687a8d907d6d5c4b3b2b1d11080d22374c62778d95806a543f2a1500001225384a5c6c7c8c988d85828283878b9197978f867c72675b4e413325160700000000000819283640484e52555758595a5d7288907b66585858585857534c42362718060000000000001024384c5f707b7a716666635d5663717c7d6f5b47321d0800000000000000000000000c21364a5d6e736e665d51433426180a00000000000000000000000c2034475a6c7c898977624d38230e00000f23374b5f72827563503c28140000000000000011233444546371808c969d9d9992887b6c5c4b3825110000000000152a3f546a8095917c68533f2a1500001b30455a6f85917c6854402b16020a141c21232320180d000000000000000000000002101d29343e475c72888f7a66524941372b1e0f0000000000000005182a3c4d5e6e7d8b978c837d797b8490958673614e3a2612000000000000000000000000000000000000000000000817242e3434342e251a0b00000000000000000000000000001f344a5f748b8c77624c3722152a3f546a809599846f5a442f1a05001d32475c7287907c685e6875828f94919592837365574a3b2a18050000000000000000000000000000000000000000000000000000000000000115283c4f62758893826f5d576674828c959193968f8476687582909b8b7a68574532200d000000182e43586d8397836d7386988573614f3e2d1d0d00000e23384d62778d947d69543f2a140000081b2c3e4e5e6d7b8892999797989b96908a837b72695f55493d31231507000000000000000a18242d34393d404243444c61768b8e78634e43434343423f38302518090000000000000014293e53687b8f8f83756657526272829089745f4a341f0a0000000000000000000000071b2e40505b5e5a524a403325160800000000000000000000000005182b3d4e5e6b74746a5a47331f0b0000081c304355646c66574533200d00000000000000051626364554616e79838888857d756a5d4e3e2d1b08000000000013293e53687d898577634e39251100001e33485d72888a76624e392511000001080d0e0e0b0500000000000000000000000000000c172132475c72888773604c382e241a0e0000000000000000000c1e2f40505f6d79858f9792909097918577675644311e0b000000000000000000000000000000000000000000000007121a1f1f1f1a13080000000000000000000000000000001f344a5f748b8d77624d382313293e53687d939b86705b46311c07001a2f44596d82948778737a86938a807b828a92837567594734200b000000000000000000000000000000000000000000000000000000000000000d203345586a7c8e8d7b6b5c56636f79828786827b72707a86939c8d7d6d5c4b39281503000000172c41566b829688767d908e7a68564332200f00000215283c5165798f907b66513c27120000000f2030404f5d6a757d868a8d8b87827c756f675f564d42372c2013050000000000000000000611192025282b2d2e3d51667a8f8c76614c372e2e2e2d2a241d1307000000000000000014293f536879889594857565617080909e89735f4a341f0a0000000000000000000000001122323e4648453f372d22150700000000000000000000000000000e1f30404e595f5f594c3c2b180400000013263746525753483928160400000000000000000918273644505c666f72726f6a62584d3f30201000000000000011263a4e616f7370685a4734200b00001f344a5f748a836f5b47331e0a000000000000000000000000000000000000000000000000051c32475c71867c6a5744301c11080000000000000000000000112232414f5c68727b8387898a867d736759493927150200000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001f34495e7389907a66513c2813273c51667b919d88725d48331e0800162a3e51647687948c898d8c82776d666d7986938677634e39240f000000000000000000000000000000000000000000000000000000000000000316283b4d5e7082918a7a6d615a5c656d72706d7179838d98998c7d6f5f4f3e2d1c0a00000000142a3f54697d94948a8e9885715e4b3926140300000c1e3144586b80948c77624d38240f000000021222313f4c58626a70757875716d67615b534c433a30251a0e02000000000000000000000000050b101416192d42566b809589745f4a3520191918151009000000000000000000001025384b5b6977859394847370808f9e95836f5b46311c070000000000000000000000000413212b3133302b231a1105000000000000000000000000000000021222303c454a4a453c2e1e0d00000000081928353e423f362a1b0a00000000000000000000091826333e4a535a5d5c5a554e463b2f2112020000000000000b1f3243525b5e5c554a3c2b180500001f34495e72847866533f2b180400000000000000000000000000000000000000000000000000192e425668746e5e4d3a271401000000000000000000000000041323313e4a565f676d727474706a6156493b2b1b0900000000000000000000000000000000000000000508090701000000000000000000000000060a0a07020000000000001c31475c708694806b56422e1b24394e63788e9f89745f4a341f0a000f22354759687682888983796f655a515b6875838777634e39240f00000000000000000000000000000000000000000000000000000000000000000b1d2f4152637383928b80756f6c6d6f73787d868d969f94897b6e5f5141312110000000000013283d52677c92a69fa18f7b6754412e1b0900000416283b4e6174889b87725d49341f0b00000000091b2c3b474f52565c6063605c5853515352493c2c1d1308000000000000000000000000000000000000091e32475c70869a87725c47321d08000000000000000000000000000000091c2d3d4b59677483929182828f9e9a8a7766533f2b170300000000000000000000000000030f171c1e1b160f0700000000000000000000000000000000000004121f2931343431291e100000000000000a18232a2c2a23190c0000000000000000000000000815212d373f45484745413b33291e110300000000000000021425344047484741382c1e0d0000001b2f4255656f695a4936231000000000000000000000000000000000000000000000000000001326394a585f5c50402f1e0b00000000000000000000000000000413202d38434c53595d5f5f5c564e44382b1d0d000000000000000000000000000000000000000611191d1e1b150c00000000000000000009141b1f1f1c160e0300000000192e42576c829686725e4a372421364b60758ba08c76604b36210c0005182a3b4a58646d73746e665c52483e4a58647272695a4734200b000000000000000000000000000000000000000000000000000000000000000000122334455564738290928984838385888d92999d958c82766a5e504132231303000000000011263b50667b90a5ad9a86725f4c3825120000000e213346586b7d9195826c58432f1a06000000001326384a596467635a4e4e4b474d5a6568665a4936220e000000000000000000000000000000000000000e23384c61758a99846f5a45301b06000000000000000000000000000000000f1f2d3b49566473849590929f9d8d7c6b5a48362310000000000000000000000000000000000000000000000000000000000000000000000000000000000000010d161c1f1f1d160c0000000000000000060f15171510070000000000000000000000000000040f1a242b313332302d261f160c000000000000000000000716232c3233322d251b0e0000000013253747545a574b3c2b19070000000000000000000000000000000000000000000000000000091b2c3b454a483f32221200000000000000000000000000000000020f1b2630383f44484a4a47423b31271b0d000000000000000000000000000000000000000918242d323330281d10010000000000000c1a262f3434312a21140600000014293e52667a8f8d7a665441301f33485d71879b8d77634d38230e00000c1d2c3b4751595e5f5a534940352c3a47545e5e574b3c2b180500000000000000000000000000000000000000000000000000000000000000000005162737465564717d89929798989a9b99958f8982796f64594d40322314050000000000000f253a4f64798fa4a6927d6a56432f1c08000005182b3d506375889b8f7a66523e291500000000061a2e425668777c766b5e50414c5c6b787d7865513d28130000000000000000000000000000000000000013273c51667a9096826c57422d180300000000000000000000000000000000010f1d2b39465566778b9ea69f8f7d6e5e4d3d2b19070000000000000000020c14181b1b1b1b1b1b1b1b1b1b1b1b1b1b1b1b1b1b1b160e040000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000710171c1e1d1b18120b030000000000000000000000000510181d1e1d1912090000000000081929374144423a2d1e0e000000000000000000000000000000000000000000000000000000000e1d293134332c21140400000000000000000000000000000000000009131c242b2f333434322d271e15090000000000000000000000000000000000000006182736414748443b2e1f0f000000000007192a3843494a463d3224150600000f23374b6073889684715f4e3d2f2e43586c82958f79644f3a25100000000e1d29353e45484a463f362d231c2936424949433a2d1e0d0000000000000000000000000000000000000000000000000000000000000000000000091928374654606c757d838687878684807b756e665c52473c2f221405000000000000000e23384e63788ea39e8a76624e3b27130000000f2235485a6d80929c8874604b37230f000000000a1f34495d728591897c6e5f4f5a6a7a8994806a543f2a1500000000000000000000000000000000000000162b40556a8094937d68533f2a15000000000000000000000000000000000000000d1b2837485b6e8396a29182706050402f1f0e000000000000000005141f282d303030303030303030303030303030303030302a21170d000000000000000000060d10110e07000000000000000000000000040b0f0f0e09010000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000b19252d2f2e271d0f0000000000000000000000000000000000000000000000000000000000000c161d1f1e190f040000000000000000000000000000000000000000000910161a1e1f1f1d19130b02000000000000000000000000000000000000000012243645535c5e584c3d2c19050000000010243748565d5f5a50423324130100081c3044576a7d908f7c6b5b4d403b3f52667a8f917b66513c2712000000000c18222a303334312b231a100b18252f34342f271d0f000000000000000000000000000000000000000000000000000000000000000000000000000a192836434e5962696d6f7070706e6b66605a524940352a1e110400000000000000000d22374c62778da397836f5b47331f0b000004182b3e5164778a9d95826d5945311c08000000000a1f34495e71808f9b8d7d6d5d68788999947d69543f2a1400000000000000000000000000000000000000172c42576c83978f7964503b261100000000000000000000000000000000000000000a1a2b3f53677b909684726252423222110100000000000000041423313b42454646464646464646464646464646464646453d332a1e10000000000000020f1a212626221a10030000000000000000000b17202425231d130700000000000000000000000000040b1014181a1c1e1e1e1b17130f0904000000000000000000000000000000000000000000000812181a19140b00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000081b2e41536370736a5b4834200b00000000172b40536672736d615142301d09000115283b4e607385968a796a5d5350535c6a7c91927c67523c27120000000000050f161b1e1f1c171007000008131b1f1f1b140b0000000000000000000000000000000000000000000000000000000000000000000000000000000a1825313c464e54585a5b5b5b5956514c463e362d23180c000000000000000000000c21374c60768ca1917c6854402b180400000b1f33475b6e8295a08d7965513e2a160100000000061b2f425361707d8c9a8c7b6b7787979e8c7865503c271200000000000000000000000000000000000000172c42576c83988974604b37220d0000000000000000000000000000000000000000001024384d61768b88786755443424140400000000000000000e2132424e575a5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5950463c2e1d0b000000000011202c363b3b362d211304000001010100000d1c2934393a3830251708000000000000000000000811191f25292d2f32333333302c28231e18110b0400000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001070a0a07010000000000000000070d0f0f0c05000000000000000000000f23374b5e70828877624c37220d000000001a2f445a6f83898070604d38240f00000b1e31445567778998897b6f6865686e7989998d78644f3a2510000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000007141f29333a40434546464644413d38312b231a100600000000000000000000000b21364b60768c9f8a76614d3925110000001025394e63778b9e9784705d4a36220e0000000000001225354452606e7b8b9a8a7a8796a292826f5c4935210d00000000000000000000000000000000000000172c41566b8088836f5a46311d080000000000000000000000000000000000000000000a1e33475b6d74746a5a4937261606000000000000000000172b3e50606b6f70707070707070707070707070707070706d63594c3a2713000000000b1e2f3e4950504a3f312212101416161615121d2b3a474e4f4c43352614020000000000000005101b242c33393e42444748484845413d38322c261f180f05000000000000000000000001070d1216191b1d1e1f1f1f1f1e1c18130c0400000000000000000000000000000000000a12171917120a0000000000000000000000000000000000000000000000000000000000000c151b1f1f1c150b0000000000020f1a22252421180d000000000000000000152a3e53667a8e8d77624c37220d000000001a2f445a6f869b8f7b67523d2813000002142638495a6a7988948d837c797c828c9891826f5d4935210c0000000000000000000508090701000000000000000000000000060a0a07020000000000000000000000000000000000000000000000000000000000000000000000020d161f262b2e303030302f2c28231d160f07000000000000000000000000000d22374c61768c9985705b47331e0a00000013283d53687c929f8d7a6754412e1a060000000000000717263442505d6c7b8d978f98a594847363513f2d1a060000000000000000000000000000000000000013283c50616e72746754402b170300000000000000000000000000000000000000000004182b3e4f5b5f5f584c3d2c1a09000000000000000000001c31465a6d7d86878787878787878787878787878787878780766a56422d180300000014283b4d5c65655c4f40302025292b2b2b2a272b3b49586364605343321f0c0000000000000816222e3740484e53575a5c5d5e5d5a56524c47403a332b22170b0000000000000000020b141c22272b2e3032333434343433312d2720170d020000000000000000000000000002101d262c2e2c261d1104000000000000000000000000000000000000000000000000000002111e2830343431281c0e0000000111202d363a3a352b1e0f00000000000000051a2f44586d82968c76604c37210c00000000192e43586e839894806a54402b15000000091a2b3c4c5b6976838d9592909296958c82726352402d1a06000000000000000611191d1e1b150c00000000000000000009141b1f1f1c160e030000000000000000000000000000000000000000000000000000000000000000000000030b1116191b1b1b1b1a17130f090200000000000000000000000000000011263a4f64798f937d6a55412d1804000000152a3f546a809593826f5d4a3724110000000000000000081624323f4e5e6f8295a4a797877666554534221000000000000000000000000000000000000000000d203243525a5d5f584a38251100000000000000000000000000000000000000000000000f21313e474a4a453b2e1f0e00000000000000000000001f344a5f748995969899999b9c9c9c9c9c9c9c9c9c9c9c9990806c58432d1803000000192e43576a79796d5e4e3d353a3e4040403f3c3a495967757971614e3b2814000000000009182634404a545c62686c6f707273726f6b66615b554e473e35281a0900000000000009141e2830363b40434647484a4a4a4a4846413b332a20140700000000000000000000000010202e3a4143403a2f2212010000000000000000000000000000000000000000000000000010202f3b44494a44392c1c0c00000c1e2f3e4a4f4f483c2d1d0b000000000000091e33485d72879c88735e49341f0a00000000162b40556a809497826c57422c17000000000d1e2e3d4b59657079828789898782796f625445342311000000000000000918242d323330281d10010000000000000c1a262f3434312a2114060000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000014293e53687d928e7965503b271200000000152a3f546a809085746452402e1b0800000000000000000006142130405164788ca0998978685848382716050000000000000000000000000000000000000000031525343f45494a453b2c1b0800000000000000000000000000000000000000000000000313212b33343431281e100100000000000000000000001e33485d707d80828384858687878787888888898b8b89857d7162503d2915000000001b30465b70868c7c6c5b4a494f5355565654514d586777868f7d6b57422d18030000000617273644515d6770777c82848788898884807b757069625b514638271502000000000c1a26313b444b5054585b5c5e5f5f5f5f5e5a564f473d3125160700000000000000000000091c2e3e4c5558554c40301e0b000000000000000000000000000000000000000000000000081b2e3e4d585e5f574a3a2917040015293c4d5c64645a4b3a28150200000000000c21374c60768b99856f5a45311c070000000012273c51657a8f99846e58442f190000000000101f2d3b47535d666d717374726d655c51453627160500000000000006182736414748443b2e1f0f000000000007192a3843494a463d32241506000000000000000000000000000001060a0d0e0f0f0c0906020000000000000000000000000000000000080f1415120c020000000000000000000000000000162b40566b809589745f4a36220d0000000012273c5064757a73665746352311000000000000000000000004122235495d71869a8d7b6a5a4a3a2a1a09000000000000000000000000000000000000000000000716222b30343431291d0e00000000000000000000000000000000000000000000000000030f181e1f1f1c150c00000000000000000000000000192d405261686a6b6c6e6f6f7070707172727273747473706a60534433200d000000001a2f44596d83978a7968565d63686a6b6b696661667686968b7b6c57422d18030000001224354554626f7a838b9296999c9d9f9d9995908a847d766e645644311d090000000d1c2a37444e575f65696d70727374747474736f6a635a4f42342516050000000000000000001226394b5c696e695e4d3b28140000000000000000000000000000000000000000000000001125384b5c6a737468584734210d001b3044586b7977695845321f0b00000000000f24394e63788e96826b57412d1803000000000e23374c61768b9b866f5a442f1a0000000000010f1d2a36414a52585c5e5f5d5852493f342718090000000000000012243645535c5e584c3d2c19050000000010243748565d5f5a5042332413010000000000000000000000070f151a1f22232524211e1a17140f0a040000000000000000000000020f1b24292a271f140600000000000000000000000000162b40566b8286846f5a46311c08000000000d21354757636661564839281706000000000000000000000000061a2e42576c828b826f5d4d3d2c1c0c000000000000000000000000000000000000000000000000050f171b1f1f1d160c000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000112334434e53545657585a5a5b5b5b5c5c5c5d5e5f5f5e5b554e433526150400000000162b3f53677a8e9786746971787c8082827d7b767484948b7b6c5e4e3c29140000000a1d3041536372808d979a94918f8d8d8f919396999c98928a8273604c37210c00000a1b2b3a4855616a73797d838688898a8b8b8b88857d766c605243332211000000000000000000192d4255687a847c6a57432e1a050000000000000000000000000000000000000000000000162b4054677a88867663503c2813001e33485e73888775614e3b2713000000000011263b50657a90917c67523e291400000000000a1f34495e73889b866f5a442f1a000000000000000c18242e373e4347484a48433e362d22160900000000000000081b2e41536370736a5b4834200b00000000172b40536672736d615142301d0900000000000000000008121b23292f3337383a3936332f2c28241e18110900000000000000000010202d373e3f3b3224150500000000000000000000000014293d51626d71746955412c17030000000005182a39464e504d44382a1b0a000000000000000000000000000014293d51647374706252402f1f0e00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000010b13181a19161006000000061625323b3e3f404243444446464647474748494a4a48464142413b2f2213020000001024384b5e71849692827c868d9295949594908a84928e7c6c5d4e40301f0d0000001126394c5f708291978d86807b787777787b7d828487898b8b8a77624c37220d0004162839495866737d878e9397989797979797979999928a7d706151402e1b0800000000000000001b30465b70859886715c47331e09000000000000000000000000000000000000000000000a1a2f44586e839793806b56412c17001f344a5f748a927d6a56422d19050000000012273c52677c918e78644f3a2510010305080b0e1d32475c72889b866f5a442f1a000000000000000006111b23292e323334332f29221a100500000000000000000f23374b5e70828877624c37220d000000001a2f445a6f83898070604d38240f00000000000000040f1b252e373e44484c4e4f4e4b4844413d38332c251c13080000000000000b1d2e3e4a53544e423322110000000000000000000000000e21344451585d5f5a4c3a26120000000000000c1b2933393b3831271a0c0000000000000000000000000000000e223547565e5f5c53443423110100000000000000000000000000000000000000000000060c0f0e09010000000000000000000000000000000000000000000000000000000000000001080c0f0f0f0d08010004121e272d2f2e2b23190b0000071827343e4446474748484848484747464442403d3b3e495257564d4031200f000000081b2e415466788a9b8e8f948a848080808389929998837365564736251302000000182c4055697c8f92857a716b666362626466686c6f72737475786f5c4834200b000e21344557677684909b968d8683828282828282858a929c8f806f5d4a37230f00000000000000001a2f44596d83978b76614c37220e00000000000000000000000000000000000000000007172838485c70879b96826c57422c17001e33485e73889986705c48331f0a0000000012273c52677c938b75604b36211616181a1d20232532475c728899856f5a442f1a00000000000000000000070f151a1d1e1f1e1a150f0700000000000000000000152a3e53667a8e8d77624c37220d000000001a2f445a6f869b8f7b67523d28130000000000000715212d38414a52585d61636463605d5a56524d47403830251a0e000000000014273a4c5c67696051402e1c090000000000000000000000051626343e43494a463c2e1d0a000000000000000b171f2426231e1509000000000000000000000000000000000518293843494a4840352616050000000000000000000000000000000000000000010911192124231d140700000000000000000000000000000000000000000000000000000000030d161c21242524211c150c1222303b4244433f36291a09001225364551585b5c5c5e5e5e5e5e5c5c5b5957555350515c666c6a5e4f3e2b1800000000122537495a6c7d8f9d8e82766f6b6a6a6e757d8995928474645342301e0b0000001c31465b7084958373675d56514e4c4d4f5154575a5c60738688725d48331e0800172b3e5163758695948a8279726d6b6b6b6b6b6c6f75808e9e8d7a66523d29140000000000000000162b3f54687d928f7965503b2712000000000000000000000000000000000000000003142535465666778b9f8e7a66523e2914001c31465b70859a8b76624d38240f0000000012273c52677c9388725d48332b2b2b2d2f3235383a3b485e738999846e58432e1900000000000000000000000000000000000000000000000000000000000000051a2f44586d82968c76604c37210c00000000192e43586e839894806a54402b150000000000071625323e4a545e666d727678797874726f6b67615b544c42372b1e11020000001b3044576a797d6f5d4b392613000000000000000000000000081621292e3434322a1e10000000000000000000040b0f110e09020000000000000000000000000000000000000b1a26303434332d231708000000000000000000000000000000000000000005131d252d353a38312516050000000000000000000000000000000000000000000000000000091520293136393a393631281e1e30404d565a585347382613001a2e4154636d70727273737373737271706e6c6a6866666e78827b6d5b47331e000000000a1e3245586b7d908e7d70645b5654555a616c778593938371604d3a27140000001f344a5f73898f7965564a423d3937383a3c3f4248596b7d9089735e48331e09001d32465a6d80928f82776e665d585656565656575b626f839795826b56412c17000000000000000011253a4f63788d937d6955402b1705020000000000000000000000000000000000001121324253637485959684715e4b37230f00182d42576b8095907b66513d2813000000081a2a3c52677c9387705b46404040404244474a4d4f50525f748a98836c57422d1800000000000000000000000000000000000711171a1a171007000000000000091e33485d72879c88735e49341f0a00000000162b40556a809497826c57422c17000000000616253443505c67717982878b8e908d8a8784807b766f685f55493c2f20100000001f34495e73878d7a6855432f1c09000000000000000000000000050e151a1f1f1d170d00000000000000000000000000000000000000000000000000000000000000000000000009141b1f1f1e1911060000000000000000000000000000000000000000031423303941494f4d43342310000000000000000000000000000000000000000000000000000d1a27323d454b4e4f4e4b443b30283b4e5e6a6f6d6555432f1b001f34495d718287888889898989898887868482807c7b7a828c968a745f4a341f000000001025394d617588938270605247413f40464e59667484948f7d6a57432f1c0700001f344a5f748b8f79645141362e282423262e3a48566677899b88725d48331e08001f344a5f7484877d70645b524a434140404040424654687d9498836c57422c1700000000000000010c21354a5e738898836e59442f1b1a1711080000000000000000000000000000000d1e2e3f50607082929d8b796654412e1b080014283d52677b9194806a55402b160100001325374859697b9087705b5756565656575a5c5f6264666766778c97826b56412c17000000000000000000000000000000000a18242c2f2f2b241a0d00000000000c21374c60768b99856f5a45311c070000000012273c51657a8f99846e58442f19000000021424344352616e79858d959c97918d8f90949795908a847b72675a4d3e2e1d0c00001f344a5f74899885725f4c39251200000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000e2132414d545c646052402c180300000000000000000000000000000000000000000000000d1c2b384450595f6364635f584d413444586b7c8583725e49341f001f344a5f74869196999c9d9f9f9e9d9c9b999795939190959a9283705c47321e00000000152a3f53687c908976635242352c2a2b323c48566576889987725f4a36210d00001f34495e728894806e5f534a433d39373a414c58657485959b86705b46311c07001c3145586770706b6053473f36383a3c3f4043474e596b809596826b56412c170000000000040e15181c30455a6f849888725d49342f2f2c251a0c00000000000000000000000000091a2b3c4c5d6e7d8fa091806d5c4937251200000f24394d62778c98836d58432e190400001b2f42556676879788756e6c6b6b6b6b6c6f727477797b7c7b7b9095806a54402b150000000000000000000000000000000819283640444440372b1d0d000000000f24394e63788e96826b57412d1803000000000e23374c61768b9b866f5a442f1a0000000e203242526170808c979c928a837c78787b7d83888d94988f85786a5c4c3b291704001d32465b7084988f7b6854412e1a070000000000000000000000000000000000000000000000000a111516140d0400000000000000000000000000000000000000000000000000000000080f1415151616151413100d090500000000000000000000000015293d505f6870786f5a45301b06000000000000000000000000000000000000000000000a1b2b3a4956626c74787978746a5f52434a5e73889989745f4a341f001c31455868747c82858788898989898989898988888888888680746554412d1900000000192d43586c8297836d5a4634231815161f2b3847586a7c8f8e7964503b261100001b2f44586c80938d7c70655d57524e4c4f555e69758493a298836e59442f1a040015283a49545b5b584e434146494c4f515356585c626a77889b8f7b67523e2914000000000615212a2e2f3040556a80958c77624d40444440372a1b0a00000000000000000000000616273849596a7b8c9c97857362503e2c1a0800000b2034495e73889b86705b46311c0700001f34495e728595a393888483828282828384878a8d8f9193918d97937d68533e281400000000000000000000000000000013253746535a5a53493b2b190700000011263b50657a90917c67523e291400000000000a1f34495e73889b866f5a442f1a000006192b3d4f6070808f9d958a80766e68636466696d727980899396897a6a594634210d00182c4055697d919885705d4a36220f00000000000000000000000000000000000000000000000f1c262b2b282116080000000000000000000000000000000000000000000000000004101b23292a2a2b2b2b2a2825221e1a15100a040000000000000000182e43586d7c8486705b46301b06000000000000000000000000000000000000000000051628384958667380888e908e887c7061524d62778c97846f5b46321d0015283a4a5761686c6f707273737373737373737272727272706b625647362411000000001b30455a6f86937d68543f2a170500030d1a2a3a4d5f7387937d68533e2914000015293d50637688998e8379726b6763626369717b8794a2a894806a55402b1702000b1c2b37404646434850565a5e626466686b6d71767d88959485725f4c38240f000000021424333e4344454752677c92907b665254595a544839271401000000000000000000021324344556667788999b8a7867564433210f000000061b30455a6f849988735e49341f0a00001f344a5f74848d9d979695949391908f8d8c8b8a898887868691a4917b66513c27120000000000000000000000000000061a2e4255646f6f66594837241000000012273c52677c918e78644f3a2510010305080b0e1d32475c72889b866f5a442f1a0000102336495b6d7d8f9e9184776c625a534e4f5154595e656c76828f99887663503d29140011263a4e6175899c8d7965523e2b17030000000000000000000000000000000000000000000d1e2d3940403d3326170600000000000000000000000000000000000000000000000414222d373e3f3f4040403f3d3a37332e2a241f19120c040000000000192e43586e8498846f5a442f1a0d0c0b0a0805010000000000000000000000000000001022344556677685919c9693939a8e80706151667b90907c6854402c18000b1c2c39444d53575a5c5d5e5e5e5e5e5e5e5e5c5c5c5c5c5b574f4538291907000000001b30465b7087937c67523c2712000000000c1d3043586c8295806a543f2a1500000e213447596a7a8a97958d86807b7877787d858e989eaba28e7965503c27120000000d1a242c3845515b636a6f7377797b7d8283868b9199908476665543301c090000000b1e314251585a5a5c5e667a9095806b5f686e6f665644301b070000000000000000000f20314152637385959f8e7d6c5b4a3827150400000005182d42576c83978b745f4a341f0a00001c314457677084938282807d7c7b7978777675747372706f74889d8e78634e39240f00000000000000000000000000000b2035495d728383776653402b1702000012273c52677c938b75604b36211616181a1d20232532475c728899856f5a442f1a0004182b3f5265788a9c8f8072665a4f463f393a3c40444a51596370809093806c58432f1b000a1e3246596c809395826d5a46321f0b000000000000000000000000000000000000000005182b3c4b5456504435241200000000000000000000000000000000000000000000011223323f4a53545456565454524f4c48433e39332d2620170b000000001a2f445a6f8698836d58432e212222211f1d1a16110a030000000000000000000000071a2d3f5163748595978b827c7d88948f8070616c82958974604d39251100000e1c2831393e424447484848484848484848474747474746423c33271a0b00000000001b30455a6f86947d6955412e1e120904060c172a3f546a8095806a543f2a1500000417293b4c5c6b798690999a95918f8d8d929790898da19c88735f4b36220d000000021526374756636e778085888c8f91949695928f8b857c726658483726130000000012263b4e606d6f6f717373799099856f737c8384735e4a35200b00000000000000000c1c2d3e4f5f708292a29282705f4e3d2c1b09000000000e223547576b82978c76604b36210b000015283949586e84937c6b6a68676664636261605f5e5c5b5a6f84998b76604c37210d00000000000000000000000000000f24394e63778d95836f5a45301b06000012273c52677c9388725d48332b2b2b2d2f3235383a3b485e738999846e58432e19000b1f33475b6f82959182706255483d332b2524272b2f363d46526172869a87725d49341f0003162a3d5063768a9c8a75624e3a261300000000000000000000000000000000000000000e2135485a696b6253412e1b070000000000000000000000000000000000000000000b1e3041505d666a6a6b6b6a696764615d58534d47413b33291c0d0000001b30465b708797826c5742323637373634322f2b251e160d02000000000000000000102336495c6e82929687796d686a7583928f8071778995826d5945311d090000000b151e25292d2f313333333333333333333232323232312d2820160a000000000000192e43586c829785705d4c3c2f251e191b20283545586c82927c67523d28130000000c1d2e3e4d5b68737c858a8e90908e8b87827b758ba094806c5844301c080000000c1f3244556573828b93938f8b88878483807c797670696055483a2a1a0800000000172c41556a7d85868788898b949e8a86888f978c76604b36210b000000000000000819293a4b5c6d7d8f9f958573635241301f0e000000000013283d51647583988c76604b36210b00000b1c2c42576c82937c67545352504f4e4d4c4b4a484746586e849988725d49341f090000000000000000040a0e11121212273c51667b919c87705b46301b0600081a2a3c52677c9387705b46404040404244474a4d4f50525f748a98836c57422d180011253a4e63778b978573625244372b2017100f12161b212a3443576c82978b745f4a341f00000e2134475a6d8093927d6a56422e1a060000000000000000000000000000000000000015293d51647780705e4a36210d00000000000000000000000000000000000000000014273a4d5f6e7a80808282807d7c7976716d68625c554f463a2b1a0800001d32475c718796826b5640464b4c4c4b4a47443f3932291f14070000000000000005192c405366798c998877685b5358657383938f8386958d7965513e2a160200000000020a1014181a1c1e1e1e1e1e1e1e1e1e1d1d1d1d1d1c19140c0300000000000000152a3f53687c908d7b6a5a4d4138322e2f343c46536375888c77634e3925100000000010202f3d4a56606970757879797876726d67778d9e8b7764503d29150100000014283b4e6173849290867d797673706f6c6a6865615c554d43372a1c0c0000000000192e43586e839497989897979ba59c9999979387735f4a35200b00000000000004152636475869798b9b988877665645342313020000000000152a3f546a808e9c8a745f4a35200b000000162b40556a80937c67523e3c3b3a39383736343332455a6f8699846f5a45301b06000000000000040f181f2326272725283e53687d939b86705b46301b06001325374859697b9087705b5756565656575a5c5f6264666766778c97826b56412c1700162b3f54687d928d7a6756453426190d0300000000070e1e32465b6f859988725d48331e000004172a3d5063778c9986715d4a36220e000000000000000000000000000000000000071b2f44586c808d79644f3a25100000000000000000000000000000000000000000051a2f43576a7c8c959597979594928f8b87827c76706a63584938251100051e33485d728895806a54545b606261605f5c59544e463c312516070000000000000c2034485c6f83968e7b6a594a3e47556475869795989a86725e4a36220e00000000000000000000000000000000000000000000000000000000000000000000000000011124394d6074889989786a5e544c4743444950586371829284705c48341f0b0000000002111f2c39434d555b6063646463615d596b7d9295826e5b4834210d000000061a2f43576b7d918e7d726a65605e5b5a6d7875685847413930261a0c000000000000172b40546776808383838283879a928484837d76685744301c080000000000001122334354657687989b8b7a6a594838271706000000000000152a3f54697d949985705c47321d0800000014293e53687d937c68533e282625242322211f1e33485d728895806b56412d180300000000000816212b33383b3c3c3a333e53687d9499846e59442f1a05001b2f42556676879788756e6c6b6b6b6b6c6f727477797b7c7b7b9095806a54402b1500192e43586d839785705d4a382717080000000000000415273a4d61758a99846f5a45301b0000000e2034485c7085998d7965513d29150100000000000000000000000000000000000c20354a5e7288917b66503b26110000000000000000000000000000000000000000091e33485d72879a978d8c8d8f93989da09b96918b857d756754402c1700091e33485e7389947d6860686f7577767673716d6861594f4234251605000000000013273b4f63778b9784705e4c3b2c37475768798c9eaa95806b57432e1b07000000000a141a1b1a17140f060000000000000000000000000000000000000000000000000f1f2f3f4e5d6c7d9197897c7068615c58595d636b75828f8d7a6754402d19050000000000010f1b26313a41474b4e4f4f4e4c556676899b8a7764513e2b18050000000a1f34495d728797836f6056504c494b60768a8775614d38261d1408000000000000001124374959646a6c6c6c6b6c7d93917b6e6c6a63594a3a28150100000000000d1e2f4050617283949e8e7d6d5c4c3b2b1a090000000000000012273c50647788897c6955412d190400000013283d52677c937d69543f2a14100f0e0d0b0d22374c60758b917c67523d28140000000000091826333e474d5052524e484053687d9496826b56412c1702001f34495e728595a393888483828282828384878a8d8f9193918d97937d68533e2814001c31465b7086937d6955412d1b09000000000000041222334456697c90927d6a55402c1700000005192d4155697d9195826c5845311c09000000000000000000000000000000000010253a4e63788d907a65503b261100000000000000000000000000000000000000000a1f344a5f748ba08b787677797d83888d92979c9f9992846f5a442f1a000a1f344a5f748b937c6c747c838a8d8c8b8987837c756c6052433423110000000004192d41566a7d938f7b6754412f1d29394a5c6e8294a8937c67523d2814000000000e1c272e302f2c2923180a000000000000000000000000000000000000000000000c1d2d3d4d5d6c7b8b9a9d998e847b75706e6d72778088939782705f50403223140500000000000009192b3b4a55575349444d5865738495907d6c5a4835220f000000000c22374c61768c947d685446413e3f4b607589907b66503b2611010000000000000000081a2b3b4750555757575663778d937c6757554f473b2c1c0b0000000000091a2b3c4d5e6e8090a090806f5f4f3e2e1d0d00000000000000000d2135485a6a73746c5e4c3926120000000012273c51667b91806b56402b16010000000012273b5065798f8c77634e39240f000000000617273644515b62666767635c5353687d94927c68533e291400001f344a5f74848d9d979695949391908f8d8c8b8a898887868691a4917b66513c2712001d32475c7288907965503b2612000000000000081422304050627386998a77634f3b26120000000012263a4e62768a9c8874604c382410000000000000000000000000000000000014293e53687c928f78644f3a24130d060000000000000000000000000000000000000a1f344a5f74899d8a75626265696e73787d83878b8f90856f5a442f1a000b21364b60768b917b8088909799969495979c9791897d706152402e1b08000000091e32475c70859988735f4c3824121b2d3e5164788da2917b66503b2611000000091b2c3a434644413e3528180700000000000000000000000405030100000000000618293b4b5b6b7b8b9a96898d9998908a868483878c939b98988e7d6e5e50413222110000000000000e22364959686c665b59606a768492938372614f3d2b1805000000000d22374c62778d95806e625b565354575f6d82907b66503b2611000000000000000000000d1d2a343c404242424a5e7388947d6954403b34291d0e000000000005162738495a6b7b8d9d92827161514131201000000000000000000005182b3d4c585e5f5a4e402f1d0a0000000010253a4f64798f836c58432d180300000003182c40556a7d9388725e4934200b000000001224354554626e767a7c7c776f665b6a80958f7965503b261100001c314457677084938282807d7c7b7978777675747372706f74889d8e78634e39240f001e33485e73888f78634e39240f0000000006101a2532404e5e6e809194826e5b4733200c000000000b1e33465b6e83978f7b67533f2b160300000000000000000000000000000000182d42576c82968b76614c372c27211a130b02000000000000000000000000000000071c31455a6d829392806d5a5054595e64696d72767879776955412d18000d22374c61768c948b939b928a84827d8083878f989c8f806f5d4b37240f0000000d22374c60758a95826c5844301c080f22354a5f748ba0907965503b26110000001226394a575b595752463624100001000000000000020c14191a18150f06000000112335475869798a999486787b8690989f9b98989ca19f948787948d7c6e5f51402d1900000000000012273c51657782796e6e737c889493857465544332200e00000000000b20354a5e7286988d80766f6b68696c727c8b8c77634e39240f00000000000000000000030c1821282b2c2c31465b708696826b56412c20170c00000000000012233445566777899a95857464534333231302000000000000000000000e1f2e3b44494a463d30221100000000000e23384d62778d866f5a45311c070000000a1e32465b6f8496826d58442f1b060000000b1e3041536372808a9092928b83786d6b80958c77624c38230d000015283949586e84937c6b6a68676664636261605f5e5c5b5a6f84998b76604c37210d001e33485d7288907a65503b261203060c121a232c3743505e6c7c8d99887664513e2b18040000000003172b3f53677b8f96836e5a46321e09000000000000000000000000000000051b30455a6f859988735e4946413c352e271e150b000000000000000000000000000001162b3e51637586978a77645140454a4f54595d616364645a4c3a2612000e23384d62778da3a096897d756f6b696a6d727a86929e8d7a67533e2a1500000011263b5065798f907b66523e2915010a1f344a5f748ba09079644f3a250f000000172c415568706e6b6453402b17131615120e080004131f282d2f2e2a23180b0000192d4053647688989184766869737c848a8f939595938c82757684918d7d6f5d48331e00000000000012273c51667b918b848488909a908374665747362514020000000000071b2f4356697a8a97928a84807d7d82878f9282705d4834200b0000000000000000000b161f262a2c2e2e2e2f445a6f8598836e58432e19040000000000000b1d2f41526373859697877666564636261505000000000000000000000001101e28303434312a20120400000000000b20364b60748a88735e49341f0b00000013263a4e62758a907c67533e2a150100000114273a4d5f7082909ea1a0a29f958b807383988a745f4a35200b00000b1c2c42576c82937c67545352504f4e4d4c4b4a484746586e849988725d49341f09001c31465b7086937d6955412f1e181b20262d363f4954606e7c8b9a8d7b6a594734220f0000000000001024384c6074889c8975614d392410000000000000000000000000000000091e33485d72889c8770605e5a565049423a31281e12060000000000000000000000020e172134465768798a94826e5c4a38353a3f44484c4e4f4f483d2e1d0a000e23384e63788fa49687786c625b565455585f6874839496826c58432d1900000014293e53687d938b76614d38230f000a1f344a5f748ba08f78634e38230e000000192e43586e8484826e58432e22272b2a27221c141323313b4244433e35291a09001e33485c7082948d807366585660686f75797c80807d786f646673808a87735e49341f0000000000000f24394d6275889698989a938a7d7265574839291908000000000000001427394b5c6b79858e959995949496958d82736453402d190500000000000000000d1c28333a3f4243434342445a6f8599856f5a442f1a0500000000000215283a4c5e7082929989786858483828180800000000000000000000000000000c151b1f1f1c160e02000000000000091e33485d71878c77624d3924100000091c2f4256697d918a75614d392410000000081c3043576a7c8f9f938c8b8d929b9d91868d9e89735e48331e09000000162b40556a80937c67523e3c3b3a39383736343332455a6f8699846f5a45301b0600192e42576c829585715e4c3c2f2d30343a4149525c66727d8c9a8f7d6e5e4d3b291705000000000000091d3145596d8295907c68533f2b170300000000000000000000000000000c21364b60758b9b867676736f6a645d564e443a3024170a0000000000000000000112202b3233394a5b6b7b8d8c7967554433262b2f3337393a3a352b1f1000000f253a4f6479909d8a78685a4e46413f40444b566476899a866f5a442f1a000000162b40566b809588725d48331f0a000a1f344a5f748ba08d77624c38230d000000192e43586e8499846e584331373c403f3c372f272031414e575a585247382613001f344a5f7487867b6f625548434d545b6065686a6a68645c5255626d7575695744301b0000000000000a1e3246596a7883898a8680766c615447392a1b0b00000000000000000a1c2e3e4d5b67727a8286888989868279706455463523110000000000000000081a2b39464e545758585857575a6f869b866f5a442f1a0500000000000c1f3245576a7c8e9a8a7a6a5a4a3a2a1a0a000000000000000000000000000000000000000000000000000000000000041a2f44596d83917c67533e2a1703051527394c5f728696836e5a46321e090000000f23374b5f73879a8f827774777d8894a29b9e9f89735e49341f0a00000014293e53687d937c68533e282625242322211f1e33485d728895806b56412d18030014293d5165798d8e7b6a5a4c424245494f555d656f7984909a8d7d706050402f1e0c0000000000000002162a3e5265798e97836e5a46321e0900000000000000000000000000000f24394e63788d9c8b8c8c89848078726961574d4135281a0b00000000000000000d1f303d464848464d5e6e80918573615142343033332f28252421180e01000011263b50667b9094806d5a4a3c322c2a2b2f39475b70869b866f5a442f1a000000172c42576c8397866f5a45301b06000a1f344a5f748ba08b76604b36210c000000192e43586e8499846e5843454b515554514b43392e3d4f5f6b6f6d6555432f1b001c314558687373695d514437303940474c50535454544f493f44505a6060594b3a27140000000000000316293b4c5a666f7474716b635a4f4337291b0c0000000000000000000010202f3d4a555e666c70737373706c665d5246372817060000000000000000122537495762696c6e6e6e6c6c6b70879b866f5a442f1a05000000000014283b4e617588998c7b6c5c4c3c2c1c0c0000000000000000000000000000000000000000000000000000000000000000162b3f54687d92826d5a4633200e1523334456687b8e8e7a66533f2b170300000014293e52667a8f928270635f636b768492a1b1a08b76604b36210d00000013283d52677c937d69543f2a14100f0e0d0b0d22374c60758b917c67523d281400000e22364a5d70849688786a5f57575a5e63697079828c9695897c6f6051423222110000000000000000000f22364a5e72879b8a75614d392410000000000000000000000000000011263b50657a90a59fa1a09e99948d867d746a5f534638291a0900000000000000162a3d4e5a5e5d5b575461748891806f605246454848433c33291e110100000012273c51667b918f7965513d2c1f18202833415163768a97836d58432e19000000192f44586e8498846e58432e1904000a1f344a5f748b9d88735e49341f09000000192e43586e8499846e58515960656a69655f564b3f475a6d7d8582725d49341f0015283a4a575f5e564c4033271d252c32373b3e3f3f3f3b352d333d464b4b463b2d1d0b000000000000000c1d2e3c49535b5f5f5c5750473d3226190b000000000000000000000002111f2c38424b52575b5e5e5e5c58524a403528190a000000000000000000192d415467757d8284848483828282889b866f5a442f1a0500000000001b2f43576b7d928d7d6d5e4e3e2e1e0e00000000000000000000000000000000000000000000000000000000000000000011253a4e63778c8975624f3d2c23273241516273869885725e4b37231000000000192e42576c8296887563524a4e5965738393a4a38e78644f3a251100000012273c51667b91806b56402b16010000000012273b5065798f8c77634e39240f0000071b2e415466788a97887b726c6c6f72777d858d95988e83776b5e514233241404000000000000000000071b2f43576b8093907c68533f2b17020000000000000000000000000013283d53687c939c93908f8d8d90959991887c70645647382716040000000000001a2f44596c7372706c69686e84998e7d70635a585e5d574f463b2f1f0e00000013283d52677c938f78634e3924272d333b45515f6f8092907c68533f2a150000001a2f445a6f869a866f5a45301b06000a1f344a5f748b98846f5a45301b06000000192e43586e8499866f5a646d7479807d7972695d504f63768a9989745f4a341f000b1c2c3a444a49433a2e22160911181d2226282a2a2a262119212a32363632291d0f000000000000000000101e2c373f464a4a47423c342a20140800000000000000000000000000010e1a252f373e424648484847433e372e23170a000000000000000000001b30465b70859297999897979595959595866f5a442f1a0500000000001e33485d72878e7d6e5f4f40302010000000000000000000000000000000000000000000000000000000000000000000000b2034485c708492806c5a4a3d383b44505f6f80918e7b6855422e1b08000000001c31465b708695826c5845353b485564758697a7927c68533f2a1500000010253a4f64798f836c58432d180300000003182c40556a7d9388725e4934200b000000112437495b6b7b8b988f86838384888c9299968e857b70665a4d4032241506000000000000000000000014283c5064788c97836e5a46311d0900000000000000000000000000162c40556a8095917d7a7877787b8088909a8f827465564533210e0000000000001b30465b70868886827d7d7d8a9e9d8e82756e6b73726b62584d3d2b1804000014293e53687d94917b67523c393c41474f58636f7d8d998773604d3925100000001a2f445a6f869a87725c47331e09000a1f344a5f748a907c6954402c1702000000192e43586e8499866f6c7780888f94948f867a6e61566a7d9298846f5b46321d00000e1c2830343430271d1104000003090d1113151514110c060e171d20201d160c00000000000000000000000e1a242b313434322e2820170d020000000000000000000000000000000008131b23292e31333333312e29231b110600000000000000000000001b30455a6e828887848382828080808080806f5a442f1a0500000000001f344a5f7489806f605041312212020000000000000000000000000000000000000000000000000000000000000000000005192d4154677b8e8a78685a504d4f56616e7d8d9482705e4c39261300000000001f34495e7389907b66523d292a37475768798c9f97826d58432e190500000e23384d62778d866f5a45311c070000000a1e32465b6f8496826d58442f1b06000000081a2c3d4e5e6c7a8691989898999a958f89827a71685e53483c302214060000000000000000000000000d2135495d7185998975604c38240f00000000000000000000000000172c42576c83988b7665636363666c737d899693847363513e2b18040000000000192e43586c8292989694949498a7ac9f93898482888780756b5b48331f0a0000152a3f546a8095937d69554c4e51565b636b75808d9c8c7b695744311e0a000000192e43586c82968a76614c37220d00091e32475a6c7b8072604d3a261100000000192e43586e8499866f7d89949c9793939b988c80706071869a907c6854402c180000000b151c1f1f1b140a0000000000000000000000000000000003090b0b0903000000000000000000000000000710171c1f1f1e19140d040000000000000000000000000000000000000000080f14191c1e1e1e1c19150f0700000000000000000000000000162b3f52657473706f6d6c6b6a6a6a6a6a6b6554412d180300000000001d3146596a746f615142322313040000000000000000000000000000000000000000000000000000000000000000000000001125384c5e70839487786c6562646a73808d9787766453412e1c0900000000001f344a5f748b8d77634d38231929394a5c6f82949b86715c47321e0900000b20364b60748a88735e49341f0b00000013263a4e62758a907c67533e2a1501000000000e1f30404e5c69747c84898c8986807a746d665e554c41362b1f12040000000000000000000000000006192e4155697d92907b67533e2a1601000000000000000000000000172c42576c839887725d4e4d4e5258606b77869692806d5a47331e0a000000000015293e5164737d83888b8e91959aa0aaa59d98979a9b928876604b36210b0000162b40566b8095988572646063666a70767d8892988c7d6e5d4c3a271401000000152a3e52667a8d8f78634e38230e0004182b3d4e5d686b635444311e0a00000000192e43586e8499867c8d9b978b827d7d88949d8e7d6c788d9c8975614d392511000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000f233648575f5e5b5a5857565454545454565247372512000000000000162a3c4c595f5d51423223140400000000000000000000000000000000000000000000000000000000000000000000000000091c2e4153647585948a807977797d86919689796958473524110000000000001f344a5f748b8c76614c37220d1b2d3f5264778a9e8a75604b36210c0000091e33485d71878c77624d3924100000091c2f4256697d918a75614d3924100000000000011222303e4b5761696f737774706b666059524a42392f24190d0100000000000000000000000000000012263a4e62768a96826d5944301c07000000000000000000000000172c42576c8398846e594438393d444d5967778a9c8a76614d38230e00000000000e2134465562696e7275787b80868d99a4948c898786837b6e5c48341f0a0000172c41576b8297a190827976777b80858b929b92877a6d5f503f2e1d0b000000000f23374a5d6f808574604c37220d00000e1f303f4c535650453626140100000000192e43586e849986889a9687796e686a7684929c8a77829595826d5945311e0a00000000000811161918140e0500040e14181916110800000a12171918130c0200000000000000000000000000000000000000000000000000050b0f0f0d0700000000000000000000000000000000060a0d0f0f0f0d0a0601000000000000000000000000000006192a39444a484644434240403f3f3f3f403e362919080000000000000d1e2e3c454a48403324150500000000000000000000000000000000000000000000000000000000000000000000000000000012243647576675838d948f8d8f93999085786a5b4b3b2918060000000000001f344a5f748b8e78644f3a2611102235475a6d82958d78634e38230e0000041a2f44596d83917c67533e2a1703051527394c5f728696836e5a46321e090000000000000412202e3a444d555a5f62626057524c453e372e261c120700000000000000000000000000000000000b1f33475b6f839788735f4b36220e00000000020b1113120e0500172c42576c8397826b56412c2429313c495a6d82958f79644f3a250f000000000005172837454e54595d6063676b707b8a9a89777372706d685e503f2d19050000182d42576c83989f9f958e8c8d9094999790888075695d4f413221110000000000081b2e4051616d6f665744311d0900000212212e383f403c342718080000000000192e43586e8499868f998877685c53586573839396858a9e8d7965513e2a1602000000010f1b252b2e2d2921170b1621292d2e2b241b10121d262c2e2d271f140800000000000000000000000000000000000000000000000d18202425221b11050000000000000000000000050d141b1f23242524231f1b150f07000000000000000000000000000c1b28313433312f2e2c2b2b2a2a2a2a2b2a23190b0000000000000000101e293134332d2215060000000000000000000000000000000000000000000000000000000000000000000000000000000006182939485764707a82878a8b89857d73675a4c3d2d1d0c000000000000001e33485e7389927d6955402c1905182b3e5165788c9079644f3a250f000000162b3f54687d92826d5a4633200e1523334456687b8e8e7a66533f2b17030000000000000002101c27313a40495d6e7771635446382a231b12090000000000000000000000000000000000000004182c4054687c908e7965513c281300000007141f26292722180c172c42576c8395806a543f2a15151e2c3d52677c938f79644f3a240f0000000000000a1927333a4045484b4e52565d6b7d908b76615c5b58534c41322210000000192e43586e84998b8a8e949593918d89837c756c62574c3f312313030000000000001123334250585a54483928150200000003111c252a2b28211609000000000000182d42576c8398969a8e7c6a594a3f47556575869795989a86725e4a36220e00000000101f2c384043423d34281b27343d424340382d21222f3a4143413b32261809000000000000000000060b0d0b05000000000000000f1d2a34393a362e2314050000000000000000020e1821292f34383a3a3a38342f29231a11070000000000000000000000000a151c1f1e1c1a191716151515151516150f06000000000000000000000c161c1f1e19110500000000000000000000000000000000000000000000000000000000000000000000000000000000000012263b4f6372776d6d7274747370696056493c2e1f0f00000000000000001c31465b70869884705c4834200c0f2236495d70858776624d38230e00000011253a4e63778c8975624f3d2c23273241516273869885725e4b372310000000000000000000000a151e26384d62778c82726456483b2c1e0f0000000000000000000000000000000000000000001125394d60758994806b56422d190500051625323b3e3c352a1c172c42576c83947d68533e29151e28354355697d938d77634e38230e000000000000000a161f262b303336393d424d607488907c685346433f382f2314040000001a2f445a6f86988374797d807d7b78746e6861584f453a2e21130400000000000000051524333d444541372a1b0a00000000000009101516130d0400000000000000172c42576c8398ab9884715e4c3c2d37475768798c9eaa95806b57432f1b070000000c1d2e3d4a5458575146392a3745505758544b3e3131404d5558564e443627170700000000000005111a1f2220190f02000000000f1e2d3b474e4f4b40322211000000000000000714202b343d43494c4f4f4f4c49443e362d24190d000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000142a3f54687d8c7d6e605f5f5f5b554d44382c1e10010000000000000000192e43586d82968b77634f3b2814061a2d4155687472695946331f0a0000000b2034485c708492806c5a4a3d383b44505f6f80918e7b6855422e1b080000000000000000000000020e23384d62778c91827466584a3c2d1e0e0000000000000000000000000000000000000000091d3145596d829686705c48331e0a000f2234434e5351483a2b192c42576c83927c67523c2728313a45526172859989745f4a36210c0000000002070908050b11171b1e2125283145596e8397836d58432e2a241c1205000000001b30465b708698836c65686a6866635f5a544d453c33281d1003000000000000000000061521292f302d251a0c000000000000000000000000000000000000000000172c42576c8398a38f7b6754412f1e29394a5c6e8295a8937c67523d28140000000417293b4c5b676e6c645748394555636c6e675c4f403e4f5e696e6a61544535251301000000000615232d3437342c20120200000e1e2d3c4b5963645e51402e1b080000000000081725323d4750585d62646464625e58524a40362b1e110300000000000000000000000000000004090d0f1112121212100e0c08020000000000000000000000000001090f14181b1b1b191714110d0803000000000000000000000000040b0f110f0b0500000000000000000000000014293e53687d928d7d7062544a46413a31261b0e00000000000000000000152a3e53687c9193806b57432f1b071226394b595f5d574b3b2a170400000005192d4154677b8e8a78685a504d4f56616e7d8d9482705e4c392613000000000000000000000000000b1f34485c6f8292928576685a4b3c2c1b090000000000000000000000000000000000000002162a3e52667a8f8b76624d38240f00162b3e51616864584837252c42576c83907b66503b353c444d586370809094826d5945311c080000000c161c1e1d19140c0505090c10172c40556a8095866f5a442f1a10090000000000001c31465b708798836c57535453514e4a454039312920160b000000000000000000000000040e151a1b18120800000000000000000000000000000000000000000000172c42576c83989c88735f4c3825121c2d3f5164788da2917b66503b26110000000d213446586a7983827566574651637380837a6d5e4d4a5c6d7c847d72635342301d0a0000000013243340494c483e30200e000c1c2c3c4b5a6977796f5d4a37240f0000000007172635434f5a646c727779797977726d665d53483c2f2112020000000000000000000000030b13191e212426272727272523211c160f06000000000000000000000a141d24292d3030302e2c2926221d17110a0100000000000000000d171f24262420180f040000000000000000000011263a4e627587978e807264554637271e140900000000000000000000001025394e62768b9b87725f4b37230e0a1c2d3b464a48433a2d1d0c00000000001125384c5e70839487786c6562646a73808d9787766453412e1c090000000000000000000000000005192d405263738391958778695a4a38261200000000000000000000000000000000000000000f23374b5f7489907b67523d2914001b3045596e7d766654422f2c42576c828f78644f43495057606a75828f99887664513e2a160200000f1d293133322e282018110e10141d2b3f54697d94856f5a442f1a05000000000000001d32475c728899846e58433f3e3c3936312b251e150d0300000000000000000000000000000000000000000000000000000000000000000000000000000000000000172c42576c839895826c5844301c090f22354a5f748ba0907a65503b261100000014293c506376889793857563515c6f8292978c7c6a5854677a8c999082715f4d3a2612000000091d3042515d625c4e3d2c190b1a2a3a4a5a6978878d7a67533e2914000000021425354453606d7780878c8f908f8c88827970665a4d3f30200f000000000000000000010c161f272d32363a3b3c3c3c3c3a3836312b23180c00000000000000010f1c2730383e4245464543413e3b37312b251d140b000000000002111e2a33393b39342b2216080000000000000000000b1f3346586878879590827364554432200c0000000000000000000000000a1f33475b7084988e7966523d2914000f1d2a3234332f271d0f000000000000091c2e4153647585948a807977797d869196897969584735241100000000000000000000000000000010233545556472808c9788786755422e190500000000000000000000000000000000000000081d32475c708695826c57422d18001e33485d728884715f4c403f3f5164747d756152575d646b737d8892988a7a6a594735220e00000c1d2d3b454847423b342c26232529303a495a6e8397826c58432d1803000000000000001e33485d72889a866f5a442f292724211c17110a020000000000000000000000000000000000000000080f151a1d1f1f1f1d1a161009020000000000000000000000172c42576c8398907b66523e2915010a1f344a5f748ba09079644f3a250f0000001a2e43586c8093a5a393826e5b64788c9ea99a8875625c708497a9a08f7c6955412d190000000f24384c5f6f776c5b4936231929384858687888978f7c68533f29140000000d2031435362717d8a949a959391949a9c958d83776a5d4e3e2d1c0a0000000000000005121e29333b41474b4f50525252514f4d4a463e352a1c0d000000000000101f2d3a444c52575a5b5a585653504b46403931271d10020000000f202f3c474e504e483e3326170800000000000000000316293a4b5a69768490928373614f3b271300000000000000000000000004182c4055697d9195826c57422d1803000c171d1f1e1b140b000000000000000012243647576675838d948f8d8f93999085786a5b4b3b291806000000000000000000000000000000061728374654616e7a869285715d48331e080000000000000000000000000000000000000002192e43586d839786705b46311c001e33485e73898f7b6958555454565663686662666b71788088909a93887a6b5c4c3b2a18050000172a3b4b595e5c574f48403a383a3e434c5867778a917c68533f2a1500000000000000001e33485e73899b86705b46301b120f0c070100000000000000000000000000000000000000000009131c242a2f32343434322f2a241e150c02000000000000000000172c42576c83988b76614d38240f000a1f344a5f748ba08f78634e38230e0000001e33485d71879bafb09e8a7661697d93a7b7a5927c6861768b9fb3ac9985705b46311c00000011263b50667b8a786653402d27374756667687969685725f4c392510000004172a3d4f6071828f9a8f86807c7c80868f98a095897a6c5c4b392815020000000000061523303b464e565c6064666767676664635f5a52473a2b1a07000000000b1d2e3d4b5760676c6f706f6e6b6864605a544d443a2e201100000a1c2d3e4d596366635b51443526140200000000000000000b1c2d3c4b5966727d8a91806a56412c170200000000000000000000000011263a4e62768a9a856f5a442f1a05000003080a08030000000000000000000006182939485764707a82878a8b89857d73675a4c3d2d1d0c00000000000000000000000000000000000a19283644515d68748284725d48331e080000000000000000000000000000000000000000162b3f54697d9289735e48331e001f344a5f748b9886756d6a6a6a6b6b6d7073777b80868d939b958c8276695c4d3e2e1d0c0000001d3246596973716a635b554f4e4f52585f697685968875614e39251100000000000000001f344a5f748a9c87725c47321d07000000000000000000000000000000000000000000000003101b2630383e44474a4a4a47443f3931281f14090000000000000000172c42576c839888725d49341f0a000a1f344a5f748ba08d77624c38230d0000001f344a5f748a9fb4b7a28d77626b8297acbfa9947d6963788fa4b9b19c88725c47321d00000011263b5065798f83705d4a37364555647485959a8a78675542301d0900000c2033475a6c7d8f97897c726b67676b727b86929f998a79685744321f0b0000000005152433414d58626a7075787b7c7c7c7b7977746e6558493724100000000015283a4c5b69737b8286878684827d79746f6860574c3e2f1e0c001326394b5c6a767b776e625343321f0c0000000000000000000f1e2d3b4854606c7885806b57412c17020000000000000000000000000b1e33475b6f828b86705b46301b060000000000000000000000000000000000000b1b2a3947535e676d7274747370696056493c2e1f0f000000000000000000000000000000000000000a1926333f4b57636f726555422e1a06000000000000000000000000000000000000000011263a4f63778b89745f4a341f001f34495e73879593888380808080828386888c90959a97908982786f64584c3e2f2010000000001f344a5f74888680777069646364676c737c88958e7c6b5846321e0a00000000000000001f344a5f748b9d88735e48331e09000000000000000000000000000000000000000000000413212d39434c53585c5f5f5f5c59534d453b32261a0d00000000000000172c42576c839886705b46301b06000a1f344a5f748ba08b76604b36210c0000001e33475c718599acb29e89745f697d91a5b8a5917b676175899db1ad99846f5a45301b0000000e23384c6175898d796754414654637383939d8d7c6b5a4937251300000013273b4f6376899989786b5f575252565f6974828f9e988674614e3b27130000000012233342515f6b757d858a8e91939393918f8d89827666533f2a15000000071b3044576a79878f969a9c9b9896938f89837c73695c4d3c2916001a2e4256687989908b8071614e3b2713000000000000000000000f1d2a37434f5a67736e614f3c28140000000000000000000000000004182c4053637074726756422e1904000000000000000000000000000000000000000c1b2936414b53595d5f5f5f5b554d44382c1e100100000000000000000000000000000000000000000815222e3945525d5e55473725130000000000000000000000000000000000000000000c2034485c6f8285725d48331e001b3044576877828a90959595959597989a9995928d88837c756d655c51473a2e201102000000001f34495e73889a938b847d7978797c82878f988c7d6f5e4d3b29160300000000000000001f344a5f748b9f8a745f4a341f0a000000000000000000000000000000000000000000041423313e4b565f676d71747474716d6861584e44382b1d0e000000000000192e43586e8398846e58432e1904000a1f344a5f748b9d88735e49341f09000000192e4155697c90a2a896836f5a6175889bad9e8a76625a6d8294a6a5927d6a55412c18000000091e3246596c7d9084705e4d56637282919e8f806f5e4e3d2c1a08000000182d41566a7d928e7c6a5b4d433d3d434c566370808f9f917d6a56432e1a0500000b1d2f4051616f7c88929a9b9693908f8d8d8d8f8f90836c57422c170000000a1f34495e738898a3a197908d8f9194999e9790877a6b5945301c001f34495d728698a59e907d6a56412c1700000000000000000000000c1925313d49565e5c514232200d000000000000000000000000000010233545535c5f5d56493926130000000000000000000000000000000000000000000b18242e373e44484a4a4a46413a31261b0e000000000000000000000000000000000000000000000004101c28344048494237291a0800000000000000000000000000000000000000000005192c3f526270726656422e1a0014273a4a59656e757b8285888b8b89888784807c78736d68615a51493f35291d100200000000001b3044586b7c89939a98928f8f8f9296948d857a6e605141301e0c0000000000000000001f344a5f748ba08b75604b36210b000000000000000000000000000000000000000000112132414f5c68727b8287898b8987837c756b6155483b2c1c0c00000000001a2f445a6f869a856f5a45301b06000a1f344a5f748b98846f5a45301b060000001226394d60728597998b796653586b7d909d91806d5a516476899b968775624e3b261200000003162a3d4f6172848e7c6b5a667382919e8f8070615140301f0e000000001c31465b70859985715e4d3d3028282f394552617082939a86715d48341f0a000215283a4c5e6f808e9a968d87827d7a787777777879797467533f2a150000000a1f344a5f748b9fa492837b78787b80848a90979988735f4a341f001f344a5f74899cada996826c57422c170000000000000000000000000814202b384349483f3324140300000000000000000000000000000617273540474a4943392b1b090000000000000000000000000000000000000000000006111b242a2f33343434322d261e140900000000000000000000000000000000000000000000000000000a16232d33342f25190b000000000000000000000000000000000000000000000010223444535d5e5648382613000a1c2c3b48525a61666b707374747372706e6b68635e59534d463e362c22170c0000000000000015283b4d5e6b76808688898b89888783807971675d5042322312010000000000000000001f344a5f748a9f8c76604b36210b00000000000000000000000000000000000000000b1d2e3f505f6d7a858f969a98979a9c9790887d7366584a3a2a1907000000001a2f445a6f869a87725c47331e09000a1f344a5f748a917d6955402c17020000000a1d304356677989867b6c5c4a4e607283898072625147596b7d8a8578695845331f0b000000000d1f32435566778889786d7785929e8f807061524232221201000000001f34495e7389937d6955412f1f14131c273442526375899c8c76614c37220d000a1e3144576a7c8d9e8f8379726c686663626262636464615749372410000000091e33475c7085989f8974676364666a6f757c838c86725d49341f001d3146596c7d8f9f998c7966523e291400000000000000000000000000020e1a263034332c221506000000000000000000000000000000000917232c3334342f271b0d00000000000000000000000000000000000000000000000000080f161a1e1f1f1f1d18120b01000000000000000000000000000000000000000000000000000000000511191e1f1b13080000000000000000000000000000000000000000000000000516263541494943382a1a0900000e1d2a353e464c52575b5e5f5f5f5d5b5956534e4a453f39322a2219100500000000000000000c1e30404d59636a707373747373706e6a655d544b3f32231405000000000000000000001e33485e7389998c76604b36210b000000000000000000000000000000000000000215283a4c5d6e7d8c98948b868382858b939d9b91857668584836251200000000192e43586d82968a76614c37220d00091e32475a6c7b8073614d3a261100000000011426384a5b6b74726a5d4e3e43556472736d6254443c4e5f6e7470675a4b3a28160300000000021426374859697a8b89838a959d8f80706152433424150500000000001f344a5f748b8f7964503b261201000a17243546596c80958f78644f3a240f001125394d607487998f8071665e5853504e4d4c4d4e4f4f4d44392b1a0800000004192d4154687a8d9f8c7866544f51555b61686f77786856432f1b00162a3d4f6071828b867c6d5c4a37230f00000000000000000000000000000009141b1f1e1910040000000000000000000000000000000000000611191e1f1f1b1409000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000817242e34342f271b0c000000000d18232b32383d4246494a4a4a484644413e3a35302b241e160f0600000000000000000000011222303c4750565b5e5e5f5e5e5c5955504a41382d21140500000000000000000000001c32475c71868480745f4b35200b000000000000000000000000000000000000000a1e314457697b8c9b8d8277706c6c7077808b96a29587766554422f1d09000000152a3e53667a8d8f78634e38230e0004182b3d4e5e686b635544311e0a0000000000091b2c3d4d595f5d574c3f303746555e5e5a5144363041505b5f5c54493c2d1c0b000000000000081a2b3b4c5c6d7d90979c9c8e8070615243342516060000000000001f344a5f748b8f78634e39240f0000000617293d51667b919079644f3a250f00162b4054687c9094827061544a433f3b39383738383a3a3831281c0d00000002121f2a394b5d6f829295837261514141464c545c64655a4a392714000d1f31435362707472695e4f3f2d1a07000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001090d0e0b050000000000000000000000000000010000000000000000000000000000000000000000090e0f0f0c0500000000000000000000000000000000000000000000000006111a1f1f1b1409000000000000060f171e24292d313434343433312f2c2925201b161009030000000000000000000000000004121f2a343b424648494a49484744403c362e251b1004000000000000000000000000192e43576a736f6a645744311c08000000000000000000000000000000000000001125394d607487998d7d6f645c58575c636d788593a19483715f4c3925110000000f23374a5d6f808574604c37220d00000e2030404c54565146372614020000000000000f1f2f3c464a48433a2f212837434949453e332623323e474a4741382c1e0f0000000000000009182736445362758a9f9f8d7d6f61524334251607000000000000001f34495e7388907b66523e2d1d120b09131e2c3d51667b918d78634e39240f001b2f44596e83978b77645243372f2a2624232223232425231e150b000000000f20303d4547526374859690806f5f4f3f363940485051493c2c1b0a000214253544525d5f5d564c4031211000000000000000000000000000000000060d111215191b1a160e040000000000000000000000000000000000000000050a0d0f111111110f0f0e0d0b090704000000000000000000000000000000000008141d222320180d00000000000000000000020c121616120c02000000000000000000000000000007131c23252421180e01000000000000000000000000000000000000000000000000000000000000000000000000000003090f14181c1f1f1f1f1e1c1a1714100c07000000000000000000000000000000000000010d1720272d313334343433312f2b27211a1208000000000000000000000000000014283b4c595e5a5551473928150100000000000000000000000000000000000000172c4054687c9091806e5f5248434248505b67748392a18f7c6855412d18040000081b2e4052616d70665744311d0900000212222f393f403d342819090000000000000001111e2a3134332f271d1119262f3434312b211613212b3334322d251a0e000000000000000817273645546271828fa29f8e7d706255483c2f23160a0000000000001c31455a6f8495826d5b4a3b2f261f1d26303c4a5a6d829589745f4b36210c001e33485d72889a85705b4735251b15110f0e0d0e0e0f0f0e0a020000000005192c3e4e5a5c5e5e677788988e7d6d5d4d4b4947453d3c362c1e0e0000000717263440484a48433a2f2213030000000000000000000000000000010f1a222627292e302f2a21160700000000000000000000000000000000020b141a1f22252626262625252322201f1c1915100903000000000000000000000000091826313738342b1e0f000000000000000005141f272b2b271f150800000000000000000000000008172530383a3a352b1f1000000000000000000000000510171c1c1a150e050000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000040c13181c1e1f1f1f1e1c1a17120d06000000000000000000000000000000000b1d2e3c464845413c352a1b0a00000000000000000000000000000000000000001b30455a6f84988773615041352d2d343e4956647485969884705b47321e090000001123344350595b54483928150200000004111d252a2b2821170a000000000000000000010d161d1f1e1a140b0008131b1f1f1c160e04030f181e1f1d19120800000000000000061626354554637282909c9190988e807266594d4034271b0d0000000000172c4055687c908b7968594c423a343139424d5968788a96836e5a46311d08001f344a5f748a97826c57422d18070005111b21221e170c000000000000000b1f34485c6c7273737474798a9c8c7b6b62605e5c594f402f1e0e00000000000817232d3334332e271d1104000000000000000000000000000000111f2c363b3c3c4346443e33251606000000000000000000000000000008141e272e34373a3b3b3b3b3a3a38373634312e29241e160d0200000000000000000003162736444c4e483c2d1b09000000000000031423313b40403b322617080000000000000000000003152635424c4f4f483d2e1e0c0000000000000000000716222b31322f2921170c0000000000000000000000000000000000000000000000000000000002050709090a090806030000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000101e2a3133302c2722180c0000000000000000000000000000000000000000001e33485e738894806b574432231919212c39465667788b9e8a75604b36210d000000051625333d444641372a1b0a0000000000000a111516140e050000000000000000000000000000000000000000000000000000000000000000000000000000000000000000031424344453637282919a8c7d7c85919184776a5e5245382b1e11030000001125394d6073869787776a5f554e49464c555f6a7786968d7a66533f2b1703001f344a5f748b97826b56402b16010414232e363732291d0e0000000000000e23384d62778889898b8b8c8d9e9a8979777673726d5e4d3b28150100000000000611191e1f1e1a130a000000000000000000000000000000000c1e2f3d4950524e585b59514334231105000000000000000000000000091825313b43484c4f505050504f4f4e4c4b4946423e3932291f140500000000000000000c2033455460635a4a3926130000000000000e2132424e55554e44352514010000000000000000000d203244535f64645a4c3c2a170300000000000000041525333f4647443d34291d0f0200000000000000000000000000000000000000000000050a0f13171a1c1e1e1f1e1d1b18140f090300000000000000000000020e161c1e1c170e04000000000000060c10121313120f0a040000000000000000000000000d161c1e1b17130e05000000000000000000000000000000000000000000001f344a5f748b907a65513c281405050f1b2838495b6e82968e78634e39240f000000000715212a2f302d251a0c000000000000000000000000000000000000000000000000000000000000000000000000050c1112100b04000000060e1213130e0700000000001021314252627182919a8b7b6d6873808c95897c6f6356493c2f21130400000a1d30435668798a96887c7169635e5b6068727c89969583705d4a37241000001f344a5f748b97826c57422d18030f2132414a4c463b2c1b0900000000000e23384e63788e90939597999c9ea0958f8d8b89877c6b58442f1a0500000000000000000000000000000000000000000000000000000000000115283b4d5b6567606b706d6152402d2019110800000000000000000007182736434e575d61646566666664646362605e5b57534d463c312314040000000000000013283c4f6272776856432f1b08000006090b162a3d50606a6a615343301d0900000000000000000013283c50617179776a5946321e09000000000000000e213343515b5c5851473b2d201102000000000000000000000000000000000000040c13191f24282c2f313333343332302d29241e170e04000000000000000413202a3133312b2114050000010a131b202527292827241f19110800000000000000000000000000000000000000000000000000000000000000000000000000000000001f344a5f748b8f78634e38230e0000000b1a2c3e53677c919079644f3a250f0000000000040e161a1b1912080000000000000000000000000000000000000000000000000000000000000000000000000d18212627251f170d010e1922272928231a0e000000091b2d3e4f607080909b8c7b6c5d56616e7b89968d8274675a4d3f3122110000011426394a5b6b7b8a978f857d777370737c858f9a9988766553412e1b0800001e33485d728899846f5b46321e0a172b3e505e61594a38261300000000000c21364a5f7079797c80838587898b91a2988b8d8d87705b46301b060000000000000000000000000000000000000000000000000000000000081c3044586a797c6f768680705d493a342d241b1004000000000000011325364554606a7176797a7b7b7b797978777573706c6861594f4232221000000000000000182d41566b8086725f4b37230f0c141a1e20203045596d7d7d71604c38240f000000000000000000162b40566b808f8975604b36210b00000000000000162a3e50616f716d63584b3e2f201000000000000000000000000000000000050e1720272e33393d41444748484a484745423e38322a21170b0000000000001222313d4548463e3223130208131d272f353a3c3e3e3c39332d241b100400000000000000000000000000000810161a1c1d1b18130f0a06010000000000000000000000001f344a5f73898f7965503c29190e06040e1a283b50667a908f78634e39240f0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000e1d2a343a3c3a332a1f121f2b363c3e3d362c1e0e00001326384a5c6d7d8f9b8c7c6d5d4e44505d6a7886939285776a5d4f402f1d090000091b2c3d4e5d6b79859099928c8887888f98a2978a7a6a59483624110000001b2f44596d83978a75614d3a28171b30455a6e756755422f1b0700000000071b2f42525f6465686a6c6f717376859795807777756a57432f1a0500000000000000000000000000000000000000000000000000000000000c21364a5f73888b77788d8d7863534e4841372d22150700000000000a1d30425363727d868c8f90919191908f8f8d8b8886827c756c60513f2d1905000000000000192e43586e848e7a66523e2a161f282f33353634495e7388907b66503b2611000000000000000000162b40566b829789735e49341f0a000000000000001c31455a6d80878076695c4d3e2e1e0e00000000000000000000000000010c17212b333b42484d5256595c5e5e5f5e5c5a57524d463d34291c0f000000000b1d2f404f5a5e5a5041311f0c1925303a434a4e525353514d4841382d221507000000000000000000000006111b242b2f3232302c28241f1b16120d090500000000000000001d32465b708694806b5947372b211a18212b3746576a80938b75604c37220d00000000000000000000020e161b1b1a150e0500000000000000000000000000000000030e161a1b18120900000000091b2c3b474f524e473c30222f3d49515352493c2c1a07001b2f4355687a8c9a8c7c6d5e4f3f333f4d5a6775839196897b6d5e4c3925100000000f1f303f4d5b67737d868d93979b9c9d999186796b5c4c3b2a1806000000162a3f53677b8f907c69574535292331465b7085725e4a36210d0000000000122434424b4f505355575a5c5e67798b99846f6260594c3b28140000000000000000000000000000000000000000000000000000000000000e23384e63788d927c7a9090796b68635c544a3f33251708000000001126394d5f7182909a9998999a9b9c9da0a2a2a09d9a9690897d6f5c4834200b000000000000172c41576b8296826d59453124313b43484a4b484b60758b907b66503b2611000000000000000000162b40566b829788725c47321d08000000000000001f34495e73899c9388796b5c4c3c2b1a09000000000000000000000005121e2a343e474f565c62676b6e7073737473726f6c67615a50463a2d1e0f00000013273a4d5e6d736d5f4e3b281d2a37424d565e6367686866625c544a40332516070000000000000000000a17232e383f44474745413d38342f2b27221e19150e050000000000192d42566a7d9288766555483d352f2c343d48556475889885705c47331e090000000000000000000413202a30302f2a21170900000000000000000000000000000514212a2f302d261b0f0000001326384a596467635a4e40323e4d5a6568665a4936220e001e33485d728595897b6d5e4f4031222f3c4a576573808d988c7c68533e28130000000112212f3d4a56606a72797d83868888857d73685b4d3e2e1d0c000000001024384c5f72869887746353463c383b4c6074897965503b261200000000000616242f373a3b3e404244474a5b6d82948a75614d463c2e1d0b0000000000000000000000000000000000000000000000000000000000081323384e63788f968280948e84827c7770675d514335261605000000172c4055697c8f9188848384868687888b8d8f9194969798978c77624c37220d00000000000014293e52677c918874604b3734424e575d5f605c5660768c8d78634e39240f000000000000000000162b40566b829787705b46301b06000000000000001e33485d708292a1988a7a6a5a4938271604000000000000000000071523303c47515a636a71777b808487888989898885827b756d63584b3c2d1d0b00001a2e43566a7c897d6b58432f2c3b4854606972787c7d7d7b7770675d514334251504000000000000000b1a2835414b53595c5c5a56514d4944403b37332e2921180c0000000013273b4f627588948373665a5049444147505a66738393907c6955412d19040000000000000000001122313d4546443e34271808000000000000000000000000031423323d444641392d1e0e00001a2e425668777c766b5e50414c5c6b787d7865513d2813001e33485d728282776b5d4f403122131e2c394755626f7b85897965513c27120000000003112336495b6b787d7a6f6d7072767d7c726455433020100000000000081c304356687a8d9282716358514e4f59697c8f7d69543f2a1400000000051524323d4447453d312d2f323e5164788d907b67533e2a1e100000000000000000000000000000000000000000000000000000000005101b25303c4e63788f998485999d9996928c847a6e6153443423110000001c31455a6f849782746f6d6e6f6f70737577797b7d828383837a705f4a36210c0000000000001024394d62768b8f7a66523d4352606b727475716960768c89745f4a35200c000000000000000000162b40556a809587715c47321d0700000000000000192d415364738392a199897867564533210f000000000000000007162533414d59636d767d868b9095999998979898999a9690898075695a4b3a291704001e33485d71869987725d49343c4a5966727c868d919493908b847a6e6152433322100000000000000919293846525e676d70726f6b66625d5954504c47433e342a1e100100000c203346596b7c8e9284776c645d59565b636d778492978673604d392612000000000000000000091d2f404f595b5851453625130000000000000000000000000d20324250595b554a3c2b1907001f34495d728591897c6e5f4f5a6a7a8994806a543f2a15001a2e4255646d6d645a4d3f312213040e1b293744515d6871736c5c4936220e000000000014293e5266788a948d806f62758793908372604c37230e0000000000001326394b5d6e808f9082756b6563646b778895806a543f2a15000000001022334250585c594f41322c2c354a5e738996826c57422c17020000000000000000000000000000000000000000000000000000010c17222d37424e5967798f9d8b8ea09d8f88898e978c80716151402e1c0900001e33485e738897826b5a58585a5a5c5e60626467686b6c6c6d675e51412f1b070000000000000a1f33475c708595826c58435061707d878b8b867c73778d86705b46321d08000000000000000000142a3f54697d9489735e49341f0a00000000000000112436465564738392a196857362513e2c1a080000000000000415253443515e6b76828a92928e8b888684838283838486898e9593877869584633200c001f344a5f748a9f8b76604b3b4a5a6876848f999e999797979c978d807061513f2d1b080000000004162737475664707a83878784807b77726e6965605c5851473b2e1f0f00000316293b4d5e6f808e958a8078726e6b6f77808a959c8c7a685643301d0a0000000000000000000f24394c5e6d706d635443301c080000000000000000000002162a3d4f606d70685a4936230f001f34495e71808f9b8d7d6d5d68788999947d69543f2a14001325374652585951483c2f21130400000b192734404c555c5e594e3e2d1a060000000000162b40566b8295a89e8b76677c92a5a18f79644f3a250f0000000000000a1c2e40516170808e9388807978797d88968d7a66523d281300000000182c3f51616c716d5f5042424242485d728899846e58432e19030000000000000000000000000000000000000000000000000005121e29353f4a545f6b778696a99d9fa89883727379859290806f5e4c39261200001f344a5f748b97826b564343444547494b4d4f525456575758534b413324120000000000000004192d4155697d9287725d495c6e808f908c8c9190867d91846e58432e190400000000000000000013283d52677c918b76614c37220d0000000000000006182837465564738392a191806e5c4a3724120000000000001022334352616f7c89938c847d787572706e6c6b6c6c6e707379838f97887563503c2813001f344a5f748ba08c76604b4959687887959b91898482828388909b8f806e5d4a382511000000000f213345556574828d979c9c9995908c88837d7975716c64594c3d2c1b0800000c1e304151616f7d8a95948d878382838a939d9c8e7d6d5c4a3926140100000000000000000013283d52677c8782725f4b37220d00000000000000000000091d3145596c7d857866523e2a15001b2f425361707d8c9a8c7b6b7787979e8c7865503c271200081928353f44443e352b1f1103000000000916222e39424748463d30200f000000000000152a3f54687a8c9d97867264778a9a998975614c38230e000000000000001022334352616f7c889294908f8f93958b7d6f5d4a37230e000000001e33475b6f80877d6e5e575757575760758a97826c57422d18030000000000000000000000000000000000000000000000000816232f3c47515c67727d8995a49e908c9897826b5f677383948d7b6855422e1a06001f344a5f748b97826b56402e2f30313436383a3c3f404242433f372e231506000000000000000012263a4e62768a8d78645165788c8a7c76777d88949399846e59442f1a0500000000000000000010253a4f64788e8f7965503b261200000000000000000a1928374655647383929e8c796654412e1c0900000000081b2d3f516170808e8f8378706964605d5b5957565757585b5f6670809393806b56422d18001f344a5f748ba08b75604b566677879795897d756f6b6b6d737d8b9a8c7a6754412d1905000006192c3e51627384929c948f8d8f9094989c98938f8b8682766a5b4a37241000000112233342515f6c77828b92989897979e9e968a7d6f604f3e2d1b090000000000000000000014293e53687d948f79644f3a240f000000000000000000000f24384c60758996826d58432e18001225354452606e7b8b9a8a7a8796a292826f5c4935210d00000a18232b2f2f2a22180d0100000000000005111c262e3233312a1f12020000000000001125384b5d6e808a8578685a6b7b89867a6b5946321e09000000000000000415253443515e6a757d85898b898682786e6051402e1b08000000001f344a5f748b9c8d7c6f6c6c6c6c6c6e7d90917c68543f2a1500000000000000000000000000000000000000000000000008172634414d59646f79858f91949f93807c9297826b56566576899885715d4935210c001f344a5f748b96826b56402b1a1b1c1f202325272a2b2c2d2e2b241b11050000000000000000000b1f33475b6f84927d69576b808f7c6b61626a7684939c87725d48331f0a0000000000000000000d21364b60758a937d6954402c170300000000000000000a1928374655647484949684715e4c392613000000001124374a5d6e808f8f8071665c554f4b4846444241424243464a5364788f9a856f5a45301b001f34495e73899c88725d51627385959284766b615a565658606c7c8e9784705c4834200b00000f2236495c6e80919789807978787b7d83878c9094989b94887967533f2a150000000b1f33475a6a797d6f777d84888b8d8d8a83786d5f51423121100000000000000000000000152a3f546a80958b77634e39240f0000000000000000000014283d52667b9099846e58432e19000717263442505d6c7b8d978f98a594847363513f2d1a06000000060f16191a160f05000000000000000000000912191d1e1c160d0100000000000000091c2e3f50616e7471675a4d5d6b7472695d4d3c2a1703000000000000000007162533414d58616a70737474716c655c504232221100000000001f34495e7286949b8d848383838383848b988774614e39251100000000000000000000000000000000000000000000000416263544525e6b76828c8f837c82928f79798f97826b5647596c80948d78644f3a2611001e33485e738995806a543f2a150206090b0e10121416171819161008000000000000000000000004182c4055697d93846f5b708687725f4d4e58657485968b77624d39240f000000000000000000091e32475c708698846f5a46311d090000000000000000000a1928374656667687988e7b6855422f1b08000000182c4054677a8c948270615349403a3633312f2d2c2c2c2e31394e63788f9b87705b46301b001e33485e738999846e595c6e809192827366594e464140444e5e7084988c77634e3925100003172b3e5265788c9787786c65636366696e72777b8084878989826b56402b160000001025394e637789826b63696f7376777776726c5d4f41322315060000000000000000000000162c40566b829787705c4834200b00000000000000000000182d42566b809598836d58432e190000081624323f4e5e6f8295a4a797877666554534221000000000000000000000000000000000000000000000000000000000000000000000000000000010223342505b5f5c554a3f4e595f5d564c3f2f1e0d000000000000000000000716232f3b454e555b5e5f5f5c5751493e3223140500000000001b2f43566776828b9196989898989898938879695744311e0a00000000000000000000000000000000000000000000000e21334453626f7c89948e80706775898f78768b97826b56405064798e927d68533f2a15001c32475c708795806a543f2a19171513120f0d0a070200000000000000000000000000000000000c1a263b4f64788e8975607288846e59443b475667788a917c67523e291400000000000000000004192d42576b80958975604c382410000000000000000000000a1928384858697a8c9885725f4b3824110000001e32475b6f84978b77645343362d26211e1c1a1819232d37414c56667a9097836d59442f1a001d32475c728897826b57687a8c9484736355483c322c2b304154687c92917c67523d281300091e32465a6d82958b79695a504e4e5154595d62666a6e7173737063513e291400000012273c52677b91826c57555e6a7682898c877b6c5d4e403224150400000000000000000000182d42576c839888725c47321d07000000000000000000061c31455a6f859997826c57422c1700000006142130405164788ca099897868584838271605000000000000000000000000040c11161a1c1e1e1e1e1e1d1b160e050000000000000000000000041524323f474a474138303c464a48433a2e211101000000000000000000000005121e28323a4146494a4a47433d352c2114050000000000001427394958656f767c828487898b898680766a5b4b3a2815020000000000000000000000000000000000000000000000162b3e516271808e9a8f806f61596d82907a738897826b56404b60748a96826b56412c17001a2f44596e8495806b5640302e2c2a282724221f1b17120c0500000000000000000000000000091b2a37414a5e73888f7a657288846e59453138495b6d8093806b56412c170000000000000000000014283d51657a8f907b67533f2b1804000000000000000000000a1a2a3a4b5c6e80928e7a6754402d190500001f344a5f748a9985705b48352519110c090d17212b36404a545f697484968d7a67533f2b16001b30465b708697826b607285988876655545372a1e1716253a4f64788e94806a543f2a15001024384d61758a93806d5b4b3d38393c4044494d5155595c5e5e5c534535220e00000012273c52677c91867261636e7b88949192988b7b6c5e504233210e000000000000000000001a2f44596e849988725c47321d070000000000000000000a1f34495e73889d94806a543f2a150000000004122235495d71869a8d7b6a5a4a3a2a1a090000000000000000000000030e1820262b2f313333333333322f2a22180b00000000000000000000000615222c3334322e261f2a3134332f271d100300000000000000000000000000000c151f262d31343434322e2922190f03000000000000000a1b2b3a47525b62676b6f71737474716b63594c3d2d1c0b0000000000000000000000000000000000000000000000001b30455a6d80909e8f8070615153687c927d708697826c5742485d728898836d58432e1800172c42576c8297826c57474543413f3e3c3a3734302c2721191005000000000000000000000114273848545a596e8394806b70868975614d3a2c3e50637689826c57422c17000000000000000000000e23374b60748897836f5b4733200c00000000000000000000000c1c2d3e506274889784705c4834210c00001d32475c708595806b56412d1807010b15202a343e49535d67717b869290806f5d4a372410001a2f44596e8497826b6b7d908d7b6a59483727190c020d22374c62778d95806a543f2a150014293e53677b908b7763503e2d2324272b2f34383d414447484847413627170500000010253a4e63778b8f807475808d8f857c7d84908b7c6e61513e2a15010000000000000000001a2f445a6f869b88725c47321d070000000000000000000c21374c60768ba0917b67523d28130000000000061a2e42576c828b826f5d4d3d2c1c0c00000000000000000000000815212b333b404447484848484847443e35291a0a00000000000000000000000410181e1f1d19120d161d1f1e1a140a0000000000000000000000000000000000020b12181c1f1f1f1d19140e06000000000000000000000d1c2a353f474e52565a5c5e5f5f5c5750473b2e1f0f000000000000000000000000000000000000000000000000001c32475c7187968f80706152424e63788e826d8398836d5843485e738999846e58432e1900162b40566b8297856f5f5c5a58575453514f4c4945413b342c221709000000000000000000081c304456666f6b687d9285706c82917d695643303346596d777365523e2a1500000000000000000000081c3145596d82968a76634f3b281401000000000000000000000010213345576a7d918c7764503b27130000192d4154677a8b7d68533e29140a141e28323d47515b656f79848f998f82716251402e1b0800182d42576c8397836e76889583705e4c3b2a190900000f24384d63778d937d68533e291400192e42576c829685705c4834210f0f12161b1f24282c2f323333322d241809000000000b2034485b6e808e908a8991887c72686972808d8d806d58442f19040000000000000000001b30465b70879c87725c47321d070000000000000000000f24394e63788ea28d78634e39240f00000000000014293d51647374706252402f1f0e0000000000000000000000081726323e474f54595c5e5e5e5e5e5c59514738281502000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000c18232c33393e414447484a4a47433c34291d1001000000000000000000000000000000000000000000000000001a2e43576a7a827b70615243364b60758b86708095866f5a454c61768b97826c57422c17001a2e42566b82968a7774716f6d6b6a686664615e5a5550483f3427180900000000000000010b20354b5f73857763778d8a75667a8f86725f4c382a3d4f5d6260564735230f0000000000000000000b17232d3e53677b90927d6b5744301c0900000000000000000000000316283b4e61758993806a56422d1905001225384b5c6c797c67523d28131c27313b454f59636e78838d97968b7d706253443322100000162b40566b80958b7a82938c786553412f1d0c000004172b3e52667b908f7965503b2611001c31465b708694806a56412d1905000000060a0f13171a1c1e1e1d191107000000000005182b3e5061707c8689867d746a605554616f7c8a806d58442f19040000000000000000001b30465b70879c87705b46301b0600000000000000000011263b50667a909e89745f4a35200c0000000000000e223547565e5f5c534434231101000000000000000000000516263544505a63696e707373737373726d645645321e0a00000000020d15191a19171512100d0907050305050506060605010000000000000000000000080f141615100700000000000001060a0a080200000000000000000000000610181f25292c2f32333434322e2821170c00000000000000000000000000000000000000000000000000000014283b4d5d676b685f52433433485e73888a757c9287725d4854677b90917c68533f2a15001e33485d71869a958c8987868382807d7b7876736f6a645c52453626150200000000000c161c21364b60768c7c6872888f7a6573878f7b67533e2931404a4c4b44382918060000000000000003101d2935404a5561758a9b8773604c3824110000000000000000000000000b1e32465a6e839786705c47331e0900081b2d3e4e5c65685e4c3924252f39434d58626c76828b95988e84786d60534435261605000014293e53687d94988f9295826f5c493623110000000e2134475a6d82968b76614c37230e001e33485e7388917b67523d281300000000000000000000000000000000000000000000000f213342515e697174716a61574d4244515e6b746f61513e2a15010000000000000000001b30465b70879c87705b46301b0600000000000000000013283d52677c939a86705b46311c080000000000000518293843494a48403526160500000000000000000000001123344453616d767d83878889898989888274614d39240f000000031220292f2f2e2c2a2725211f1c1a191a1a1b1b1b1b1a160d020000000000000004101b24292b2a24190c000000000b151b1f1f1d160d010000000000000000000000040b1014171a1c1e1f1f1d1a140d04000000000000000000000000000000000000000000000000000000000b1e2f3f4b5356534c41342531465b70878f79798f8b756050607285988774614d392510001f344a5f748b9c9c9290919294979593918f8c88847d776f635444311e0b00000000101e293033364b60768c826d6d8294806b6b7d92826b56412c222e35373630271a0b000000000000000514212e3a46525d67727a889d8f7b6754402c1905000000000000000000000002162b40556a80948b76604c37220d00001020303e4951534d402f2d37414c56606a75808993988e857a70665b4f423526170800000012273c52677c91a7a4a08d7965523f2c1906000006192b3e5063768a9a86705c47331e09001f344a5f748b8f78644f3a2510000000000000000000000000000000000000000000000004152433414c565c5f5d574e443a3033404d5a5f5b524333210e000000000000000001001b30465b70879b866f5a442f1a05000000000000000000142a3f54687d9496826c57422d1904000000000000000b1a26303434332d2317080000000000000000000000081b2e40526271808a92989b9d9f9f9f9e9c917b66503b26110000001021303d444443423f3c3a3734312f2e2f2f303030302f2a20120400000000000414222e373e403f372a1a090000101d28303434312a1f110100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000111212e383e403e382f241a2f445a6f859480768c8f7a655f6e7d908d7b6a5744311e0a001e33475b6d7d93907d797b7c7d8284888b8f939699938c8272614e3a25110000000d1e2e3c4548474a5f748a8670687c91857063747d7b6b56412c171b2022211c140900000000000000051423313f4c58646f7a858e98a597836f5c4834200c00000000000000000000000013283e53687c938f78634e38230e00000212202c363c3e392f333f4a545f69737d8892968d857a71675e54493e322517080000000011263b50657990a5ab9884705d49362310000000112336485a6d809394806b56422d1904001f344a5f748b8d77624c37220d0000000000000000000000000000000000000000000000000615232f3a42474a48433b31281e222f3d464a473f34251604000000000007101516151b30465b708799846e59442f1a08020000000000000000162b40556a8095927c68533e291400000000000000000009141b1f1f1e1911060000000000000000000000001024374a5d6f82909c979493908f8d8b89878679644f3a25100000071a2d3f4e585a585754524f4c49464443444445464646443d3022110000000001122332404b53565348382613000d1e2e3b44494a463c2f1f0f0000000000060c0f0f0b05000000000000000000000000000000000000000000000000000000000000060d10100d060000000000000003101b24292b29241c12192e43586e849884738895826d6e7d8d8f806f5e4c3a28150200182b3e52677c939079646667696c6f7276797d828689898b7d68533f2914000000172a3c4c595e5b515e73888a7462778c8a75606368685e4e3b2813070b0d0c08010000000000000005142332424f5d6975828d979a97989f8b77634f3b2713000000000000000000000000152a3f54687d948f78634e38230e000000020f1a222728253443505d67717b8690958c837970675e544b41372c20140700000000000f24394e63788fa4a4907c6854412d1a060000081b2d405365778a9d8d7965503c281300001f344a5f748b8c76614c37220c0000000000000000000000000000000000000000000000000005121d272e3234332e271e150b121f2a3234322c22160700000000000c19242a2b2b2930465b708798836c58432d1f1d160d00000000000000162c40566b82978e78644f3a2510000000000000000000000000000000000000000000000000000000000000162b3f53677a8d9a8a82807c7b78777573726f6a5c4936210d00000d22364a5d6c6f6e6c696764605e5b5a585a5a5a5b5b5b594e402f1c090000000d1f3041505d676b6656422e1904172a3c4c575e5f594d3d2c19060000020f1920242420180d020000000000000000000000000000000000000000000000060e1315131a222626221a0e01000000000000000810141614100900172c42576c83988974869a8a78808d8f80706151402f1d0b000012273c52677c93907964505254575a5d6165686c707373747667533e29140000001d3246596a736e625c70878d776271878f79655053534c40301f0c000000000000000000000000011223324251606d7a8793968c8582889b93806a56422e1a0500000000000000000000061a2e42576c82968c77624c37220d0000000000060e1221324352616e79848f958a82786f665d544b41382e241a0f020000000000000e23384d63778da39c8974604d3925110000001124374a5d6f83959a87725e4a36210d00001e33485d72888d77624d38230e0000000000000000000000000000000000000000000000000000000a13191d1f1e1a140b0200010d171d1f1d1810050000000000091b2a373f40403e3c465b708797826b56413434312a1e10000000000000172c42576c83988a75604b36210c00000000000000000000000000000912181a1711070000000000000000001b3045596e83978d7b6c6a68666462605e5c5a574d3e2c1a06000010263b5065798684827d7b787673706f6e6f6f6f7070706c5e4c38240f000004172a3c4e5f6e7a82705b46301b081d32465a6a73746b5b4936220f000111202c353939342b1f13070000000000000000000000000000000000000000000d1922282a282c363b3b362c1f10000000000000000000000000000000172c42576c82978e788397978a908d7d7061524233221100000012273c52677c939079644f3d3f4245494c5053575b5e5e5f60594a3824100000001f344a5f74888072626f86907a666c82937d6a55403d382f2212010000000000000000000000000d1f304151606f7d8c98908479706c80939a86715d4834200b000000000000000000000e2235495d71869a88735e49341f0a00000000000005182b3e506170808c978d82776e655c534a41382e251b120d08000000000000000d22374c62778da296826d5945311d090000061a2e4154677a8d9f93806b57432f1b0700001b3045596e83907a65513c2713000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001427384853565453514e5c728894806a54474a4a463c2e1e0d0000000000182d42576c839887725d48331e09000000000000000000000000000c1a262d2f2c24190c00000000000000001e33485d72889985705d5453504f4c4b494745423b2f200f00000010263b5065798a959794918e8b888684848586868787877b67523c271200000c203346596b7d8d866f5a45301b0a1f344a5f7488897865523e2915000c1e2f3e494e4e473d3125190c000000000000000000000000000000000000000e1d2b363d3f3d3d495050493d2e1e0d000000000000000000000000000b182b40566b8297927c8095a79b8b7c6e6051433425150400000012273c52677c939079644f3a2a2d3034373b3f424648484a4b473c2c1b080000001f34495d70839082716e83937d68677b90846e5a4530241c110400000000000000000000000007192b3d4e5f6f7d8e9c8e8072665c63768a9e8c77634e3a251100000000000000000007192b3e5164788d97836e5945301b070000000000000e2135485b6d808f94877a6f645b514940372e251b202425221c130700000000000c21364b60768ca18f7a66523e2a160200000c2135495d7084979e8b7763503c2814000000172b4054697d92806a56422e1b08000000000000000000000000000000000000000000000000040a0e0e0c06090c0e0f0f0d0a06010000000000000000000000001a2f4356666b6a686663607288927c67575c5f5f594c3c2a170300000000192e43586e8499846e59442f1a0500000000000000050b0d0c08081a2a38414440362a1b120c0400000000001f344a5f748b96826b56413d3b3a38363432302e281e11020000000d2136495c6c7782878b8f9194989b9999999b9b9b978f7c67523c2712000013273b4f63768998836e58432e19091f34495e738995826c58432e190016293c4d5c63635a4e42362a1e110500000000000000000000000000000000091b2c3b485154524c5b65655b4c3c2b180400000000000000000000000c1a283643566b8297988c8c999e8c7c6c5e5042332516070000000012273c52677c939079644f3a2b2b2a2a2a292a2d3133333437373127190a0000001a2e415364738490806f8396826b62768b88735e4a35200b0000000000000000000000000000102336485a6c7c8d9d8e7d6f6154495a6d8295927d68543f2a16010000000000000003142536485a6d8295917c68543f2b160200000000000014293d5164778b938475685d52483e362d241b242d34393a3730251708000000000b21364b60768c9d8974604b37230f00000011263b4f64788da095826e5b4734200c00000011263a4e63778b86725e4b3825140300020a0e0f0d070000000000000000000000000000020e181f232320191e21232524221f1b150f07000000000000000000001d32475c7282807d7b7774738990796a6c7174746a5946321d0800000000192e43586e8497826c57422c17020000000000010f192022211c15243748555a5348392a2720160a000000001f344a5f748b95806a543f2a262423211f1d1b19140b0000000000061a2d3e4e5b646c7176797c7d879c8a8888888886827b705f4c39240f00051a2e42566a809394806a55402c16061d32475c72889b86705b46311c001b3045596b78776c6054473b2f22160a0000000000000000000000000000011426394a59656a665a6979786a5a47331e09000000000000000000000b1b2a3846546170829799867c8c9a856f5e4e4032241507000000000012273c52677c939079644f4240403f3f3f3e3e3c3c3b3e454c4c4437281604000012243646566574848e7d8398846f5c71868d77634e3925100000000000000000000000000006192d405366778a9b8f806f5f51433e5165788c97836d58442f1a0500000000000007122131425365778a9c8975614d39251100000000000000192e43576c8094877565584b40352b2219212c3740484e4f4b42352514010000000e23384c62778d97836e5a45311d0800000014293e53687d939c8a7764513e2b18050000000b1f33485b6f838e7a67554331201008141e2325221b1207000000000000000000000002121f2b333838352e3337383a3937342f2a231b110700000000000000001d32475c72879593908d8a878d8f828082868a8974604b36200b0000020e182e43586d8395806a54402b15000000000000111f2c34373630282d4154666f6557473f3b3327190a0000001f344a5f748995806a55402b160f0d0b0a06000000000000000000000f20303d4851585d61646770879c8772727272706d675f5142301d09000a1f33485d71869a907b66513d2813001b30465b70879c88735e48331e001f34495e73888a7d7165594c4034281b0f02000000000000000000000000091d304356687780786875878976604b36210b0000000000000000000618293948566471808f9f947d6e8093846e58433022140600000000000012273c52677c9390796457575656545454535352525051596060554533200c00000618283847566575858c8f9c87715c6b80927c68533e2914000000000000000000000000000d2135495c6f83959382716151413235495c6f839787715c47321d0800000000020f1a23303f4f6071839593806d5946321e0a000000000000001c31465b7086937d6a57473a2e23222228333e49535d63645f5343301c0800000012273b5065798f927d6854402b23180a0000152a3f546a80958f7d6d5a4835220f0000000004182c4053677a8d8572604f3e2e1f172631383a362f241708000000000000000000001020303d474d4e4942484c4e4f4e4c49443e372e24190d010000000000001a2f43586b7d8c959a9c9f9c9e9c9795979a9989745f4a35200b000112202b3342576c8395806a543f2a1500000000000c1e2f3d484c4a443b33485c70837565545450453727160400001e33485e738897826b56412c1702000000000000000000000000000b19232b2e353d43484c4f5d72889c87705c5c5c5b58534c4133241300000e23384d62768ba08c77624d38240f011c31465b70879c8b745f4a341f001f344a5f7488978f83766a5e5145392c20130700000000000000000000001125394c60738695846f7d928c76604b36210b000000000000000000122436475766748390959e937c67778c846e59442f1a050000000000000012273c52677c9390796e6c6c6b6b6a6a696868676766666d7573634f3b26110000000a1a29384757667586959f89745f667b8f826c57422d190400000000000000000000000013283c5065788c99877564534332232d4054687d9389745f4a341f0a0000000212202d373e4e5d6d7d8f9c8a7663503d2a1603000000000000001d32475c7288917b6651453f3b3837373b45505b6670777971604b36210c000000152a3f54697d938d77634f423f3628190c141b2a3f54697d8b8271604f3d2b180500000000001024374a5d7083907d6d5c4c3d2f2435444d4f4b42352617070000000000000000071a2d3e4e5a62635c575c60636463625e58524a41372b1f1103000000000014283b4e5f6d78808588898b968e8c8c8b8b867b6c5946311c08000d1f303d484c576c8394806b56402b16010000000014283b4d5b625f584c3c4d62778b836f696a63554533200c00001d32475c728798836e58432e1904000000000000000000000000091a29363f4343423f3b384c60768b9c87705b474746433f382f241506000012273c51667b909b87725d48341f0a071d32475c72889d8a745f4a341f001c3145586979889594887b6f63564a3e3125180b00000000000000000001172b4054687c90917c6b82978c76604b36210b0000000000000000071b2e415364758593898090937c67728786705b46311c060000000000000012273c52677c938d84838383828280807d7d7d7c7c7b7b82897c67523c2712000000000b1a2a394857677686958c766161758a86705c47321d08000000000000000000000000182d42566b80948e7b695846362515263b50667b908b76604b36210b0000000e20303e4a515c6c7b8c9c91806c5a4734210e00000000000000001b30455a6f8494806e615953504e4c4c4f57626d78838c8c77624c37220d000000162b40566b829688735e5257534636241f282f343b4f6271756f62534332200e000000000000081b2e415366788b8b7a6a5b4d3f32415361645f534435251301000000000000000d22364a5c6c76786e6b717678797877726d665d53483c2f211203000000000c1f30414f5c656b6f72738094847676767471695d4e3d2a160200162a3d4e5b61616a7c827565523e291400000000001a2f43586b77736a5a4851667b908b767b807363503b271200001b30465b70879b866f5a45301b06000000000000000000000000132638475358585754504d4f64798f9c87705b4747474747443b2e1f0e0000152a3f54697d9497836d58442f1a060a20344a5f74899d88735e48331e0015283b4c5b69768490998d8274685b4f4236281c0f0300000000000000081c31455a6e83978b766c83988c76604b36210b00000000000000000d22364a5e70839383767388937c676e8488735e49341f0b0000000000000012273c52677c929c999898979797959594949393929191958977634f3a251000000000000c1b2a3949586777888f78635c70858a74604b36210c0000000000000000000000001b30455a6f859784705e4c3a29180f24394e63778d8c76604b36210b000005182b3d4e5c666c7a8a9a958573614f3d2a17040000000000000000182c4155697c8f8d80746d6865636262636a75808b969584715d4934200b000000162b40556a7c82836d59656c6454412d323b43494b4a535d605c52443525140300000000000000112437495b6d809089796b5d5044475c707971625342301e0b000000000000000f253a4f64798a8c7d80868b8e908f8c88827970665a4d3f30211000000000011323313e4951565a5c6c8295806b60605f5d564c3f301f0d00001c3146596c7674656a6b65574735230f00000000001d32475c718788776653556a80948d808d92806a55402b1601001a2f445a6f859a88725d48331e080000000000000000000000001a2e4255656e6e6c6965625e687c929c87705c5c5c5c5c5c584c3d2c1b0900182d42576c8297937d69543f2a15010e23384d62778c9b86705b46311c000c1d2e3d4b596672808b979286796d6053463a2d2014070000000000000c21364a5f74899b86716e84998c76604b36210b000000000000000011263b5065798d9079656f86937c686c838c77624d3824190b00000000000011263b5065798b8f8f8d8c8c8b8989898988888888898982776a594734200c0000000000000c1b2b3a49596b80917b66566b808e78644f3a25100000000000000000000000001d32475c71878e7a6754412f1d0b0b20354a5e707b7d725f4a35200b00000c2135485b6c797b8a9995877666554432200d00000000000000000012263a4d5f70808f9188827d79787777787d88929b9185766654412e1a0600000013273b4e5e686c6f66657482705b4637444e585e605f59524b4840342617070000000000000000071a2c3e4f61728494897b6e61554a5b70868271604d3b2814010000000000000f24394e63778a9b90939a969393949a9c958d83776b5d4e3f2e1d0b000000000413212c353d42495d7187907b66524b4a48433a2f21120100001f344a5f7489847466585247392a180600000000101e31475c70879583715f596e839895929e8d7966533f2a150000192e43586d83988a745f4a35200b0000000000000000000000001f34495d728384827d7a77737282969c87727272727272726a5b4a382613001a2f445a6f84998f7965503b26110012273c5165798f97836d58432e190000101f2d3b4855616d798692978b7d7164574b3e31251607000000000010253a4e63788e96826c6f869b8b745f4a341f0a000000000000000012273c52677c939079656e8494806a6b82907b66514136291a0a00000000000e22374b5e6e77787877767677747373737272727273736e665a4c3c2a1805000000000000000d1c2b3d52667b917d6853667b917c67523d28140000000000000000000000001d32475c718786725e4b37241200071b2e41515f66686154432f1c0700000f243a4f64778a909a908577685948382614030000000000000000000a1d30425261707c878f9692908f8d8c8d93938e877d73675848372512000000000c1f31404c53585a5c708388725c474955616b7276746d6252433426190b000000000000000000000f20324355657686968c8073675d56697c8f7d6a5744301c07000000000004172a3d4f60708094a59888827d7c80868e98a095897b6c5d4c3a28160300000000030f1922283a4e63778c8c77624d3834332e271d11030000001f344a5f7388938475685a4c3e2f20100000000d1e2e3b44586c80958f7c6b5e73889ca8a592826f5d4a3724100000172c41576b82978c77624d38230e0000000000000000000000001f344a5f748b9697938f8c8988899b9d8b88888888888888786755422e1a001c31465b70879c8d77624c38230d03182c40556a7d94937d69543f2a150000010f1d2a3743505c6874808d988f8275685c4f42342517080000000014283d52677c92917c6770879c89735e48331e09000000000000000012273c52677c9294806d708697826c6a80947d695d53473828150200000000081b2e40505c62636362687d8c7d6e605e5d5c5c5c5e5e5b52483c2e1e0d0000000000000000000f24394e63778d806a5464798f806b56412c170200000000000000000000001a2f44586b72746956422e1b080000122333414c52534e443625130000000f253a4f64798989867d7367594a3b2b1a09000000000000000000000113243443525f6a737b8286888a8b8987837d79726b6156493a2a1a08000000000213222f393e434b60758b88735e4d5966737d878c89827061524437291a090000000000000000000314263748586877879691857a706660748987735f4a36210c00000000000c1f33475a6c7d8f98949a897768676b727a86919e9a8b7a6a584633200d00000000000006162a3f53687c9287725d49341f1e1a130a00000000001c3045596c808f9486786a5c4d3e2e1d0c0000172a3c4c585e65788d9a897766798ea2ac9987756352402d1a070000152a3f546a80948f7964503b25100000000000000000000000001e33485d707b8286898d92979a9ea7a99e9d9d9d9d9d9b9785725d48331e001e33485d72889d8c76604b36210b0a1e32465b6f84998d78644f3b2611000000000c1926323e4a56626e7a87949387796d60524335261708000000172c41566b80958c776372889c87715c47321d07000000000000000010253a4f637586968b7d7c8d99846f6b8297827870655645321e0900000000001122323f484d4e4e53687d928d7d7062544747474848463f362b1e10000000000000000000000b2035495d7184806a5461768c846e59442f1a04000000000000000000000015293c4d595d5f5a4c3a27130000000615242f383d3e3a322718080000000d22364a5d6d7373716a6155493b2c1d0d00000000000000000000000006162534414d5760666c7073747473706d69645e574e44382b1c0c00000000000004121d2429364b60768b8c78655f6a7785919391968f80706254473827140100000000000000000008192a3a4a5968778693978d837a7677898e78644f3a240f000000000012273b4f63768a9b8a829195857362565e6873808f9d998875624f3c2914000000000000001a2f44586d8396826d58442f1a090400000000000000162a3d4f6170808f96897a6b5c4c3b281502001d3246596a737371869a9585748395a9a4907c6a584534231100000013283d53687c93927c67523d2813000000000000000000000000192d415260676c7074787c828692a69d9693908d8b8886847d705c47321d001e33485e73899f8c76614c37220e14273a4e61758a9b87725e4a35210c00000000000814212d3945515d6975828f988b7d70615344352514030000192f44586e839888725e72889a866f5a45301b0600000000000000000c203346576777879492909b9c8873728297908d8374614c38230d00000000000414212c3338383a4e627587978e8072645546373333322b23190d0000000000000000000000061a2e415465717163515e738886705b46301b0600000000000000000000000c1e2f3c45484a463c2e1d0a0000000006121c232829261f150900000000071b2e3f4f5a5e5e5c564e44382b1d0e0000000000000000000000000000071624303a444c52575b5e5f5f5e5c5855504a433b32271a0d00000000000000000009101e33485d7185958476737c8993887d7b828d8f8272655644301c07000000000000000000000c1c2c3b4a596774828d98968e8c8d959079644f3a250f0000000000182d41556a7d928f7d73859791806e5d4b5662707d8e9e92806c58432f1b070000000000071d32475c7187917c68533e2a150100000000000000000d2032435261707d8b978a7a6a5845311d08001f344a5f74888985859a9f938890a0b2a08b7560544a3c2c1b08000011263b50667b9095806a55402b16010000000000000000000000112434434c53575b5f64686c778ca08f827d7b777472706f6a6152402d19001f344a5f748ba08f7965513d2b1e1f304356697d9194806c58432f1b07000000000000030f1b2733404c5864717d8c9a8f807162534332200d00001b30465b708697826d5e738897836d58432e19040000000000000000041628394a596876838e98a0a291898886979a8e8476624d38230e000000000000040f191f23233346586878879590827364554432201d170f070000000000000000000000000012253747555d5c54455a6f8387705b46301b06000000000000000000000001111f2a303334322a1e1000000000000000080f1313110b020000000000001021313e46484947423b31261a0d0000000000000000000000000000000006121e2730383e4246484a4a494744403b362f281f1509000000000000000000000005192e4255687a8a948b898f8a80756a676e7b899183735f4a35200b00000000000000000000000e1d2c3b495764707b868f969b9f9d8b77624e39240f00000000001c31455a6f8599867267798b9c8c7a69574652607080929b87725e4a35200b00000000000a1f34495e73898a76624d392410000000000000000000031425344352606d7985918874604b36200b001d32475b6f828d9591868f9f9da2aeb5a08c7970675a4a37240f00000f24394e63788e98836d58432e1904000000000000000000000006162530383e42464b4f5362778d9a8670686663605d5b5a564e43342311001f344a5f748ba095826d5a493b312e3d4e607286998c7864503d29140000000000000000000a16222e3a4753606e7b8b9b8f8271614f3d2a1602001d32475c7288907c685e738994806a55402b16010000000000000000000b1b2c3b4a5864707a858c96a39f9c9ba28d7b71675846331e0a0000000000000000040a0e16293a4b5a69768490928373614f3b27130000000000000000000000000000000008192937424847414054687c836f5a45301b06000000000000000000000000010d161b1e1f1d170d0000000000000000000000000000000000000000000313202b313334322e271e1409000000000000000000000000000000000000010b141c23292d3133343434322f2b26211b140c02000000000000000000000000001226394b5c6b7883898882776d6358535e6b778585735f4a35200b0000000000000000000000000e1d2b3946525e69727a82878989806e5b48331f0b00000000001e33485e738894806a5b6d7d90988775635242516274889b8d77634d39240f00000000000a1f344a5f748b84705b47331e0a0000000000000000000007162534424f5c6773808675604b36200b00182c4052627079828373879cb1b6bfb0a8988c847867533e291400000c21374c60768b9b86705b46301b0600000000000000000000000007131d24292d32363b5065798f94806b56514d4b484644413b32251606001f344a5f748ba09d8a7867594d46434b5b6b7d909683705c4935210d00000000000000000a141d252d353c42505e6c7c8e9f90806c5945311c07001f34495e73898975615e73898f7a65513c271200000000000000000000000e1d2c3a47535e677079909b908b8b928c766054493a29170300000000000000000000000b1c2d3c4b5966727d8a91806a56412c1702000000000000000000000000000000000b1a252e33322e394c5f6f736653402c170300000000000000000000000000000000000000000000000000000000000000000000000000000000000000030e171c1e1f1d19130b0200000000000000000000000000000000000000000001090f14191c1e1f1f1f1c1a16120d0700000000000000000000000000000000091b2d3e4d5b666f73736d645a5046404d5a677371665644301c07000000000000000000000000000d1b2835414c565f676d7173736d61503e2b180400000000001e33485e7389907b66516172859693826f5d4c45576a8093907965503b261000000000000a1f344a5f74897c6854402c18040000000000000000000000071624313e4a56616d73685845311d080010233444525d666b6c7b8da0b0b3afa194949490826b56402b160100091f34495e73889c88725c47321d070000000000000000000000000001091014191d2b4054697d938e7965503c393633302f2d271f140700001f344a5f748b9e9e9686766a605a585d69788a9b8c796653402d190600000000000007121d273039414950575c616470859a9c89745f4a341f0a001f34495e73837d6c595e73898975604c37230e0000000000000000000000000e1c2936414b5463788f917c76778d8c76604b372b1c0c000000000000000000000000000f1e2d3b4854606c7885806b57412c1702000000000000000000000000000000000008121a1e1d1d3041515c5e56483724110000000000000000000000000000000000000009121719161008000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000010202f3d49535b5e5e5951473e332f3c49565f5d55483927140100000000000000000000000000000a17232e39434b53585c5e5e5a504233210f0000000000001e33485e73899079644f5567788a9c8d7b6957455065798f917b66503b26110000000000081d3246596a746d5f4d392511000000000000000000000000000614202c3844505c5f574a3a281502000517263542515f6d7b8a9a9b9ca1999b867d7d7b7465523e29140000061b30455a6f849989735e48331e090000000000000000000000000000000000051b3045596e839888745f4b3624201e1b1a18130c020000001f344a5f748b89899095887c756f6e707a889792826f5c4a3724110000000000000d1925303a434c555d646b7176797c889b9f8a745f4a341f0a001b304356656c6b5f4e5e7386806c5945311d09000000000000000000000000000c18242e384d62778d907b66778d8c76604b36210d0000000000000000000000000000000f1d2a37434f5a67736e614f3c281400000000000000000000000000000000000000000000001223323f484943382a19070000000000000000000000000000000000000e1b262c2e2b241a0d000000000000000000000000000000060c0f0f0b0500000000000000000000000000000000000000000000000000000000000000040c10110f0901000000000000000000000000000000000000000000000002111f2c3740464949453e342b211e2b39444a4842382a1b0a0000000000000000000000000000000006111c2630383e44474849463e322415040000000000001d32475c7287917c6853495a6c7d9098877462505065798f8f79644f3a2510000000000003172a3c4c595f5a4f41301d0a0000000000000000000000000000030f1b26323e484a44392c1c0b00000013283b4e606f7d8c9a93888d95848f94887c7064584a3c2d1c0a0000172c41566a809489735e48331e090000000000000000000000000000000000091e33485d728897836e5945311c0b090400000000000000001f344a5f74857d747d889290898583868d9894857363513f2d1a070000000001101e2b37424c566068707880868b8f9298979388725d48331e0900142638475357564e445768747061503d2a16020000000000000000000000000000061122374c61768c907b66778d8c76604b36210b000000000000000000000000000000000c1925313d49565e5c514232200d00000000000000000000000000000000000000000000000514222d333430271b0c0000000000000000000000000000000000000b1c2c3941433f372b1d0e000000000000000000000000020f1920242420180d02000000000000000000000000000000000000000000000000000000000c17202526241d13070000000000000000000000000000000000000000000000010e1a242b313434302a21180e0d1b273034332e261a0c000000000000000000000000000000000000000a131c242a2f323334312b211506000000000000001a2f44596d8397836f5d4c4f6072849592806d5b596c80948a76614c37220d0000000000000c1e2e3c464a463d31231200000000000000000000000000000000000914212c333430271b0e00000000172c41566b7d8e968b80778d8a777d8c998e8275685a4b3a2714000013273c5165798e87725c47321d0800000000000000000000000000000000000a1f344a5f748b917c68533f2b1602000000000000000000001c314558686f6e606a758089929a989a9a90847566564534221000000000000f1f2e3c48545f69737c858c949a97918b87827d796b5945301b0600091a29363f42413b394a585f5c524332200d000000000000000000000000000000000a2034495e7388917c69748a8c76604b36210b00000000000000000000000000000000000814202b384349483f332414030000000000000000000000000000000000000000000000000410191e1f1b14090000000000000000000000000000000000000215283a4a555853493b2c1b09000000000000000000000111202c353939342b1f130700000000000000000000000000000000000000000000000000000e1d29343a3b38302516070000000000000000000000000000000000000000000000000710171c1f1f1b160e0500000a141c1f1e1a120900000000000000000000000000000000000000000000080f151a1d1e1f1c160e030000000000000000162b3f53677b8f8c7a695a4d5466778a9b8b78666777899884705b47331e0900000000000000101e2a3234312a201304000000000000000000000000000000000000030f191e1f1c140a0000000000172c42576c808f84796e73867d6c6d7b88959387786957432f1a00000e22364a5e7284806c58442f1a0500000000000000000000000000000000000a1f34495e71828474624e392510000000000000000000000015283a4a555a5a5158626c757d868a8a867d7265574838271605000000000b1d2d3d4c5966717c868f9897908a837c76716d69655c4d3c29160100000b19232a2c2c282c3a454a48403425150300000000000000000000000000000000071c31455a6e8397846f6f828c76604b36210b000000000000000000000000000000000000020e1a263034332c2215060000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000b1e324557686e67594a382612000000000000000000000c1e2f3e494e4e473d3125190c0000000000000000000000000000000000000000000000000d1d2c3b474f504c43342515030000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001024384c5f72859688786b5f565a6b7d8f9684717685958f7b6754402c180400000000000000000c171d1f1d170e02000000000000000000000000000000000000000000000000000000000000000015293e5162717971665c677270615d6a77838f9787725c47321d0000071b2f425565706d61503d2915010000000000000000000000000000000000061b2f4253637172655645331f0b00000000000000000000000b1c2c384145453e454f59626a717474716a605547392a1a0a000000000014273a4b5b6a77848f99928a837c756e68625d585451493e2f1e0c000000000610151717131c283134332d231607000000000000000000000000000000000000172b3f53677a8e806b64758076604b36210b000000000000000000000000000000000000000009141b1f1e191004000000000000000000000000000000000000000000000000000000000000000000000000000410181c1d1a130a0000000000000114283b4e617483776755412d190400000000000000000016293c4d5c63635a4e42362a1e110500000000000000000000000000000000000000000008192a3b4a59636660524332210e0000000000000000000810141515141312110f0e0c0b09080706050302050a0c0d0c070000000000000009111516161412100d0a07040202070b0c0c090300000000000000000811161918140e05000000000000091c2f425567788997897c726a63607183958f7c88959584715f4c38251100000000000000000000000000000000000000000000000000000000000000000000030e171d1e1b1409000000000000000e2133445360645f5449565c5c534c5966717c8685705c47311c00000013253747545b58504232200d0000000000000000000000000000000000000012253645535d5d5547382816030000000000000000000000000e1b262d30302b333d464f565c5f5f5c564e43372a1b0c0000000000001b3044576979889597897d766f68615a534e48433f3c362c201101000000000000000000000b151c1f1e191106000000000000000000000000000000000000001024384b5e70807b6657636a695a47331e09000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000514222c31322e271c0f0000000000081c3043576a7d9185705b46301b060000000000000000001b3045596b78776c6054473b2f22160a0000000000000000000000000000000000000002142537485968767b7061503e2b1805000000000000000e1a24292a2a29282726252322201e1d1c1b1a19171a1f2222211b1206000000000f1b252a2b2b2a2725221f1c1a17171c2021211d160c0000000000010f1b252b2e2d2921170b000000000000132537495a6a7a89968f867d77737077899a90999989776654412f1c09000000000000000000000000000000060a0b0904000000000000000000000000000813202b32332f261a0b00000000000004162635434d4f4c4239434747413b48545f6971746754412d19000000081929374146443d3324150300000000000000000000000000000000000000071827364149494337291a0a00000000000000000000000000000912181b1b16202a333b42474a4a47423b3125190c000000000000001f34495e7387989688796b635b544d463f39332e2a27221a0f020000000000000000000000000000000000000000000000000000000000000000000000000000081b2e4152616e73634f5054544b3c2b1804000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000041423323f4647433a2d1e0d000000000f24374b5f73879a856f5a45301b060000000000000000001f34495e73888a7d7165594c4034281b0f0200000000000000000000000000000000000d1f3143556677878f806d5a4835220f0000000000000c1d2c373e3f3f3e3e3c3b3a383735333231302f2e2c2e333737362e24160700000c1d2d393f40403f3c3a3734312f2c2c3135373632291d0f00000000101f2c384043423d34281b0c0000000000081a2b3c4c5c6a78858f99928d8987888f9fa5978a7a6a5a48372512000000000000000000000000000006121a1f211e180e0200000000000000000000091825313e4648433829190600000000000008172531383a3830272f32322d2a36424d565d5f5849382512000000000b19242d302f292115060000000000000000000000000000000000000000000918242e34342f261a0b0000000000000000000000000000000000000000030d171f272e323434322e271e140800000000000000001f344a5f74878b8577695b4f474039322b251f1a15120e0600000000000000000000010b12181b1d1d1a150e05000000000000000000000000000000000000000011233443515b5f56463c3f40392d1e0d0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000010223242505b5c564b3c2a1704000001162a3e53677a8f96826c57422d18030000000000000000001f344a5f7488978f83766a5e5145392c20130700000000000000000000000000000005172a3c4e607284959d8a7764513e2b1804000000000016293b49535454535352504f4e4c4a4847464544434243484c4c4a413425130100172a3b4a54565654514f4c4946444242454a4c4b463b2d1c0a00000c1d2e3d4a5458575146392a1b0a00000000000e1e2e3e4c5a67727c868d92979b9c9c9b9f8a796b5c4c3c2b1907000000000000000000000000000716242e3436332b1f1203000000000000000002152736434f5a5d564736230f0000000000000007141d2325231c141a1d1c191925303a42484a453b2c1a0800000000000711181b1a150e04000000000000000000000000000000000000000000000007121a1f1f1b13080000000000000000000000000000000000000000000000030c13191d1f1f1d19130b020000000000000000001c31455868727471675a4b3d332c251e17100a050000000000000000000000000008141e262d3032322f2921170c00000000000000000000000000000000000000051625333e474a4438282a2b261c0f00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000081b2d4050606e71695947331f0b0000081c3145596d8296907b67533e2914000000000000000000001c3145586979889594887b6f63564a3e3125180b00000000000000000000000000000f213447596b7d90a19b95826e5a4733200c00000000001d314558676a6a686867666463615f5e5c5b5a595857585d61625e5243301d09001d324659686b6b696664615e5b5957575a5f6060594b3a2713000417293b4c5b676e6c64574839281705000000000010202e3c49555f6971787d838687888692917d6955412e1e0d000000000000000000000000000013253441494b473d30211100000000000000000a1e3244545f6d7265523e2a16000000000000000001090e0f0e09000000000007131d272e333431291d0e000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000015283a4a575e5f5d54493c2d1f181109030000000000000000000000000000000c1925313a41454747443d34291c0d000000000000000000000000000000000000000715212b333430271a1515110a00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000f23374a5d6e7d8676624d38230e00000e22374b5f74889d8a76614d3824100000000000000000000015283b4c5b69768490998d8274685b4f4236281c0f03000000000000000000000005182b3e516376899b9086978a76634f3b281400000000001f344a5f7480807d7c7c7b797876747372706f6e6e6c6e71767770604d39240f001f344a5f7482827d7b787673706e6c6c6f7476756956432e1a000d213446586a7983827566574634220f000000000002101e2b37434d565d64696d707172768a99856f5a442f1a05000000000000000000000000000a1d3042525d605a4e3f2f1e0c000000000000000f24394d61727d826d58432e190000000000000000000000000000000000000000010a13191e1f1d160c000000000000000000000000000000000000000000000000000009101414110b0200000000000000000000000a141c1f1f1b130800000000000000000000000000040a0d0d0b05000000000000000000000000000000000000000b1c2c3a43494a4841372b1e0f0400000000000000000000000000000000000d1c2a37434d555a5c5c5851473a2b1b0900000000000000000000000000000000000000040f181e1f1c140900000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000013283d51667a8d9079644f3a250f000013283c5165798f9884705b47331e0a000000000000000000000c1d2e3d4b596672808b979286796d6053463a2d201407000000000000000000000f2235485b6d829391827c9093806b57432f1b07000000001e33485d708392949391908f8d8c8b8988878684848383878b8d7c67523c2712001f34495d72879694918f8b898684838384898c86715c47321c0014293c506376889793857563513e2b18040000000000000e1a25303a42494f54585b5c5c6c7d89846f5a442f1a05000000000000000000000000011427394c5f70766c5d4d3b29170400000000000012273c51667b8f86705b46301b000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000003111c24292a261f14080000000000000000000c1b273034342f25180900000000000000000000010e181f2222201910040000000000000000000000000000000000000e1c272f3434332e251a0d0000000000000000000000000000000000000d1c2b3a4855606a6f72726d645849392714010000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000152a3f546a80948f79644f3a240f0002182d41566b8094927d6955402c18040000000000000000000000101f2d3b4855616d798692978b7d7164574b3e31251607000000000000000005182b3e5164778b968573758a9a87725e4a36220e00000000192d4154657480888d91949798999b9c9c9c9b999898989b9a8f7b66513c2712001b2f43576a7a8992979a9c9c9b999898999d9685705b46311c001a2e43586c8093a5a393826e5b47331e090000000000000008131d262e353a3f4346474e5f6d74716554402c18030000000000000000000000000b1e304356697c8a7b6a594634210e000000000000152a3f54697d9387705b46311c0000000000000000040b1116191c1e1e1e1c19140d040000000000000000000000000000030d15191a17110800000000000000000112212e383e3f3a3226170800000000000000091a2a39444a494336261502000000000000000000111f2b333737342d2214040000000000000000000000000000000000000a141b1f1f1e1912080000000000000000000000000000000000000b1c2b3a495865727d8588878276675644311d09000000000000000000000000000911181c1e1e1c19140e0600000000000000000000000000000000000000000000000002080d1011110e0a030000000000000000000000000000000000000000000000000000000000000000000000000000182d42576c82978d77624d38230e00081c31465b7085998a76624e3a2611000000000000000000000000010f1d2a3743505c6874808d988f8275685c4f4234251708000000000000000e2134485b6e82958c79676f84988e7965513e2a16010000001124364756626c73787c8082838486878787878888898989867d705f4c38230e0014273a4c5c6a767d838687878788898b8b8984786855412d19001e33485d71879bafb09e8a76614c37220c0000000000000000010a131a21262a2e3032414f5a5f5d54473724110000000000000000000000000114273a4d60738699887663503e2b17040000000000172c41576b829688725c47321d000000000000050f181f262b2f31333333312e2820170c000000000000000000000000051420292e2f2b241a0d000000000000000d1f303f4c53544e443525140100000000000012263848565f5e5444321f0b00000000000000000c1e2f3d474c4c483f32221000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000015283a49586775848f8784868c8673604c38230e000000000000000000000005121c252c313333312e29221a10050000000000000000000000000000000000000000080f161c21252626231e170e040000000000000000000000000000000000000000000000000000000000000000000000001a2f445a6f84998b75604b36210c000c21364a5f748998846f5b47331f0b00000000000000000000000000000c1926323e4a56626e7a87949387796d60524335261708000000000004172b3e5164778b95826e5c687c9195826d5945311d0900000007192938454f585e63676a6c6e6f6f707070707272737473716b605242301c08000b1d2e3e4d5962696d6f70707072737474736f675a4a392612001f344a5f748a9fb4b7a28d77624c37220d0000000000000000000000060c1115191b23313d464a4841372919070000000000000000000000000b1e3144576a7d90a393806d5a4734200d00000000001a2f44596e849988725c47321d00000000000c18222b333a3f444748484847423c33291e1103000000000000000000031423323d434440372b1c0c00000000000216293c4e5d6869615343311e0a000000000000192d4255667372614e3a2611000000000000000016293c4d5a62625c50402d1a06000000000000000810141515130f0b060202070b0d0d0a040000000000000000030a0e0e0c070000000000001c314558677686897c726e707b8e7b66513c2712000000000000000000000716232f394046484847423d362d221609000000000000000000000000000000000008121b232b31363a3b3b38322b21160900000000000000000000000000000000000000000000000000000000000000000000071c32475c71879c88735e49341f09001025394e63788d927d6954402c18040000000000000000000000000000000814212d3945515d6975828f988b7d7061534435251403000000000d2034475a6d82948c78655161758a9c8874604c382410000000000b1a27333c444a4e525457585a5a5b5b5b5b5c5c5e5f5e5c574e4334241300000010202f3c464e54585a5b5b5c5c5e5f5f5e5b54493c2d1b09001e33475c718599acb29e89745f4b35200b000000000000000000000000000000000413202a3134332e25190b0000000000000000000000000215273a4d6073879a989b8a7663503c291501000000001b30465b70869b88725c47321d000000010f1d29353e474e54585c5e5e5e5c5750463b2f21120200000000000000000e2132424f585954493a29180500000000091e3245596b7b7d71604d3a26110000000004091c31465b70857d6954402c1702000000000911151c3045596b77776e5d4935200c0600000000000e1a24292a2a28241f1b17171c2022221e170d0000000000000b161e2323211b1105000000001f344a5f748689796b5f595f748b7c67523c271200000000000000000007162534414c555a5d5e5c5751493f34261808000000000000000000000000000005101b252e373f454b4f50504d463e332718090000000000000000000000000000000000000000000000000000000000000000000a1f34495e73899b86705b46311c070013283d52677c918d78644f3a26110000000407070601000000000000000000030f1b2733404c5864717d8c9a8f807162534332200d0000000316293d5063768a9884705c495a6d82958f7b67533f2b1804000000000a1620293035393d4042434444464646464747484a4847433b3225160600000002111e29333a3f434446464747494a4a494640372c1e0f0000192e4155697c90a2a896836f5a46311d080000000000000000000000000000000000020e171d1f1e191208000000000000000000000000000b1e3144576a7d909b878c93806c5844301c08000000001d32475c72889c87725c47321d0000000f1f2d3b47515b63696d70737373706b63594d3f3020100000000000000003172a3d50606c6e66584734210d000000001024394d617589907c69543f2a150000020f181e2132475c7288846f5a45301c070000000f1b252a2b34495e73888c78634e3824211a0f0200000c1d2c373e3f3f3d3934302c2c31353737332a1e0f000000000d1c29323838362e2314040000001f34495e72867c6b5b4d5364788d7965503b261100000000000000000314253443525e686f7273706c655c5144362615040000000000000000000000000a16222d38414a535a5f646666615a50443627180800000000000000000000000000000000000000000000000000000000000000000c21364b60768b98836d58432e190400162b40556a80948a745f4b36210c0a1015191c1d1b160c000000000000000000000a16222e3a4753606e7b8b9b8f8271614f3d2a160200000b1f3246596c8093917c6854415265798c97836f5b473422110000000000030d151b2125282b2c2e2f2f303030313232333433322e281f14070000000000000c171f262b2e2f3030323234343434312c241a0e0000001226394d60728597998b7966533f2b170300000000000000000000000000000000000000000000000000000000000000000000000000000114273a4e6173879a927d84988873604c38240f000000001f34495e73899c87705b46301b00000c1d2d3d4b59646e777d83868889898680766a5d4e3e2d1c0a0000000000000a1e32465a6d7d837664503d281400000000152a3e53687c9097826b56402b16000212202b333635475c718788735e4a35200b00000c1d2d393f4040495d72858c77634d3a3a352d2012010016293b49535454514d49454242454a4c4c473c2d1d0b0000091b2b3a464d4e4a403222100000001b2f435667726e5e555b6471828874604c37230e0000000000000000102132435261707b8488888682796f62544433210e00000000000000000000000d1b27343f4a545e666e74797b7a756d62544536261403000000000000000000070c0f0f0b03000004090a07010000000000000000000e23384d63778d95806b56402c160100192e43586d839788725d48331e191e242a2e313230291e1000000000000000000a141d252d353c42505e6c7c8e9f90806c5945311c07000114283b4e6175899c8a75614d39495d7083968a766350402f1d0a00000000000000070c10131517191a1a1b1b1b1c1d1d1e1f1e1d19140c020000000000000000030b1116191a1b1b1c1d1f1f1f1f1c181108000000000a1d304356677989867b6c5c4a372410000000000810141515120f0b060202060a0b0b09030000000000000000000000000000000000000a1d3043576a7d919e8a767d928f7b67533e2a16010000001f344a5f748b9c87705b46301b000517293b4b5b6976828b92979b9b9b9e9a93887b6c5c4b3927140100000000001025394d61758a94806b56412c1700000003192e43586c829696826b56402b16000e20303e474b4a465b70868d77624d38230e0000172a3b4a54565653566673766e5c4d4f4f493e301f0d001d314558676a6966625d5a57575a5f6261594b3a27140000132638495862635d513f2d1905000014273949565d5d63696f77828e7c6a5744311d09000000000000000c1d2e3f506170808e98908d8d8f8c827262503d2a16020000000000000000000e1d2b3845515d67717a82898e91908a807263544332200e0000000000000006111b2124241f160a0f181e1f1c1409000000000000000010253a4f64798f927c68533d281400001b30455a6f869a88725d48332b2e33393e434747453c2e1e0c000000000007121d273039414950575c616470859a9c89745f4a341f0a000b1e3144576a7d9296826e5a4632405366798c93806e5e4c3a2713000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000011426384a5b6b74726a5d4e3e2c1a070000000e1a24292a2a27241f1b17171b1f21201d160c00000000000000000000000000000000001326394c6073879a95826d788d96826d5945311c080000001f344a5f748b9b86705b46301b000e2134475869798894978f8a878686898f98998b7a685643301d090000000000152a3e53687c9198836c57422c17000000081d32475c70869b95806a543f2a1500182b3d4e5b605e54586e84907b66513c271200001d324659686b6b6864615f615c5d6264645c4e3c2916001f344a5f74807d7b77726f6c6c6e7477766957432f1a00081c2f43566775786f5c48331e0900000a1b2e42566671777d848a8d80705f4d3b28150100000000000003172a3b4c5d6e808f95887c7777798790806d5a46311c0800000000000000000c1c2c3b4956636f79858d969b9797999d918272614f3d2b180500000000000817242e363a39332719202b333430271a0f0300000000000013283d52677c918f7964503b251000001d32475c71879c8a75604d414043484d53585c5c594c3b2815000000000d1925303a434c555d646b7176797c889b9f8a745f4a341f0a0014273a4d6073879b8d7966523e2b374a5c6f83958d7b6956422d190000000000000000000000000000010c161b1e1d1a140c00000000000009111516161412100d0a07040202070b0c0c0903000000000000000000000000091b2c3d4d595f5d574c3f30200f0000000c1d2c373e3f3f3c3834302c2c3034363632291d0f000000000000000000000000000000081b2e4255697c8f9f8c786473889c88745f4b36220e0000001f344a5f748b9b866f5a442f1a0015293d516476889890857b75716f70747b8591988673604c3924100000000001192e43576c829697826c57422c170000000b20354a5f748a9f937c68533e2813001e32475a6c767165576c82937d69543f2a1500001f344a5f7482807d7976727070727779786b5945301b001f344a5f738994908c8884838284898d87725c47321d000e23374b5f72858b76604b36210b0000001d32475c71858c9298857a6f615141301e0b00000000000000081d3246596a7a8c9084766a62626a809489745f4a35200b0000000000000008192a3a4a586774828c97988e878282858d9990806d5a4734210e0000000005162635414a4f4e453728303e474a44382c2113040000000000152a3f54697d948c76614c37220d00001e33485d72889d8e7c6b5e5654585c62686d70726a58442f1a000001101e2b37424c566068707880868b8f9298979388725d48331e09001c3044576a7d909683705d4a37232d40536578878d86705b46301b0000000000000000000000000001111e293033322e281e11010000000f1b252a2b2b2a2725221f1c1a17171c2021211d160c0000000000000000000000000f1f2f3c464a48433a2f21120200000016293b49535454514d4945424144494b4b463b2d1d0b00000000000000000000000000001124374b5e72859896836f5c6f84998e7965513c28130000001f344a5f748b9b866f5a442f1a001a2f44586c809390807267605c5a5b6068738292907c68533f2b1601000000071d32475c70869b95806b56402b160000000e23384d62778da28f7965503b2611001f344a5f748a8375666a8095826c57422d1803001f34495e738895938f8b888787888c8f88725c47321d001c31465a6e8291999c9c999897989d9786715c47321c0013283c51657a8f8c76604b36210b0000001c31455a6d7d83888e88786b5c4b39261201000000000000000a1f344a5f7485867d7266594d52677c938c76604b36210b000000000000001325374858687685929e92867b726c6b707b8a998a7764513e2a16020000000e213444535d64625546363d4e5b5f564a3e3122110000000000172c42576c829788735e49341f0a00001f344a5f748a9e9a8a7b706b6a6c71767c828686705b46301b00000f1f2e3c48545f69737c858c949a97918b87827d796b5945301b06001f344a5f73879889786653412e1b2336495b6a7278776b58432f1a000000000000000000000000000f1f2f3c454847433b2f1f0d00000c1d2d393f40403f3c3a3734312f2c2c3135373632291d0f000000000000000000000001111e2a3134332f271d1103000000001d314558676a6966625d595756595e6060594b3a271400000000000000000000000000061a2d4054677a8ea18e7a67556a809494806b56412d180400001f344a5f748b99846e58432e19001e33485d728799857261544c4745464c5663748697836d59442f1a060000000b20354a5f74899e937d68533e291400000011263b50657990a18c76614c38230e001e33485d6f82908575687d94856f5a45301b06001b3044586b7b888d8f8f90919393918d826f5b46311c00172b3e5163727d84878787898b8b8984796956432e1a00172c41556a80948c76604b36210b000006192a3d4f5f696d737a84897a6955412d180300000000000000081d3145586870706b605550535a6a7d938a745f4a34200a000000000000091d304254667687959b8d8074685e57565d6b7b8d94826d5946311d0900000015293e51627078736454454a5b6b73675c4f402f1d0a000000031a2f445a6f8499856f5a45301b0600001e33485d72888a8c938e85808082868b919694826d58442f19000b1d2d3d4c5966717c868f9897908a837c76716d69655c4d3c291601001e33485c6f82877a6b5a49372411192b3d4d575e63635b4d3b281400000000000102020100000006192c3d4d595e5c584d3d2a170300172a3b4a54565654514f4c4946444242454a4c4b463b2d1c0a0000000000000000000000010d161d1f1e1a140b0000000000001f344a5f74807d7b77726e6c6b6e7376756957432f1a000000000000000000000000000f2236495c7083979986725e51667b909a85705b47321d0900001f344a5f748989846e58432e19001f344a5f748a94806a5543383230313945576a7d9287725d48331e090000000e23384d62778ca1907a66503b261100000013283d52677c929d88725d49341f0a00192d40526271829183727c9388725d48331e090015283b4d5d6a73777878797b7c7c7b777062523f2b17000f22354554616a6f707072747474736f675b4b3a2713001a2f44596e84988b745f4b35200b00000e223648586468615f677282856f5a442f1a05000000000000000216293b4a555b5b575a6064686d77879885705c47321d080000000000001125394c5f728495998b7c6f62564c43414d5d6f82958975604d382410000000182e43586d828d8372635257687985796d5e4c392511000000081d32475c718796826b57422d180300001b2f44586b7976778088909595979b9c9791857665523e2a150014273a4b5b6a77848f99928a837c756e68625d585451493e2f1e0c0000192c3f52637273695c4d3c2b19070e1f2f3b434a4e4e483d2f1e0c000000091116171716151413122135495b6b73716b5a46311c08001d324659686b6b696664615e5b5957575a5f6060594b3a271300000000000000000000000000000000000000000000000000001e33485e738894908c8884838283888c87725c47321d00000000000000000000000004172b3e5165788c9f907c69564e63778d9f8a75604c37230e00001e33485d6f7373736a56422d18001f344a5f7489937d6853402f201d20273b4f63778d8a745f4a341f0a00000010253a4f64798fa18c77624d38230e000000152a3f546a809499846f5a45301b0600112234445362728291827d938b75604b36210c000c1e2f3f4d575f6263667680746766635d52443422100005172736444e565a5b5b5c5f5f5f5e5b544a3d2d1c0a001b30465b70869b89735e49341f0a000014283d5165767d6c66666c7d846e59442f1a0500000000000000000c1d2c38414e5b666e74797d8289968b7a6855412d1904000000000000162b3f54687c8f998a7a6c5e5145392f2f405266798d907b67533e2a15010000172c4155697c8f91827061657586978b7b68543f2a140000000c21364b5f748a927c68533e291400000015283b4d5d6563636c747c83888b8b88837c7467584735230f001b3044576979889597897d766f68615a534e48433f3c362c201101000010223445545e5f574c3e2f1f0e0001111e282f353838342c1f110000000f1b252b2c2c2b2a292827263a4f64788887745f4a35200b001f344a5f7482827d7b787673706e6c6c6f7476756956432e1a00000000000000000000000000000000000000000000000000001b3045596d82919a9c9c999797989c9786715c47321c0000000000000000000000000c1f33465a6d82959b8874604d4a5f73899e8f7965513c271200001a2f445a6f8283826b56402b16001d32475c718697836f5d4d3e3232353a414f61768c8c76604b36210b00000012273c52677b919d88735e49341f0b000000162b40566b829695806b56412c170200051626354554637282908e9b8d78634e39240f000111212f3b444a4d5b708393826b564e4940352617050000091826323b41444646474a4a4a494640382c1f0f00001d32475c72889c87725c47321d080000162b40566b80867d7b7b808a7c6955402c17020000000000000000001326394b5c6b7883898e93918d857a6c5c4b39251200000000000000192e43586d83978b7a6b5c4e4033271c23364a5e728796826d58442f1a06000012263a4d607283938f806f73849492837566523e291400000012263b4f64788e8e78644f3a25100000000c1e2f3f4a504e505960686e737474726d686256493a2a1806001f34495e7387989688796b635b544d463f39332e2a27221a0f020000000517273643494a443a2e2011010000000b141b20232320190f0100000c1d2d39404241403f3e3d3c3b3b4f64798f8c77624d38230e001f34495d72879694918f8b898684838384898c86715c47321c0000000000000000000000000000000000000000000000000000162a3e5163727d85878788898b8b8984796956432e1a00000000000000000000000014283b4e62768a9d927d6b5744465b70869a947d6955402b1601001a2f445a6f8697826b56402b16001a2e43576c80938d7b6b5c4f47474a4e555f6d7d908b745f4a35200b00000014293e53687d9499846f5a45301b07000000182d42576c8398907b66523d281300000008172736455463728291a1907b66503b2611000003111e2830354a5f748a917d6a5540352d2317080000000009151f272c2f30303234343434312c251b0f0100001e33485e738999856f5a45301b060000152a3f54687c898b8b8b8a8271604d3a2611000000000000000000061a2e4256687a8a9289837d7b7771685c4e3e2d1b0900000000000000192e43586e848d7c6c5d4d3e3023160a1b2f44586d829687725d48331f0a00000a1d304254647483928d7d829294847365574836230f000003182c41556a7d9389745f4b36210c0000000111212d363b393d454d545a5e5f5f5d59534d45392b1c0c00001f344a5f74878b8577695b4f474039322b251f1a15120e060000000000000918252f343430271d1002000000000000070c0e0e0b0500000000172a3b4a555756565453525250505061768b8f79644f3a2510001b2f43576a7a8992979a9c9c9b999898999d9685705b46311c00000000000000000000000000000000000000000000000000000e21344554616a6f7272727474747370675b4b3a27130000000000000000000000081c3043576a7d929c8975624e3b42576c829698836e59442f1a05001a2f44596e8497826b56402c160014293d5063768999897a6d615c5c5f6369717c8b9b88725d48331e09000000162b40556a809595806b56412c1803000000192e43586e84998d77634d39240f0000000009182736455463728392937d68533e2914000000010b151f344a5f74898272614e3b271a1106000000000000020c13171a1b1b1d1f1f1f1f1c181108000000001f34495e738996826c57422d180300001125394c5e6c74747474746f625343301d0a0000000000000000000b2035495d72869182756e6966635d554b3e3020100000000000000000182d42576b7d7d6e5e4e3f2f20120500152a3e53687c928b76614c37220d0000011325364656647384968f91958676665547392a19070000091d32475b70849985705b46321d080000000003101b2226252931393f45494a4a48453f3932281b0d0000001c31455868727471675a4b3d332c251e17100a05000000000000000000000008131b1f1f1c140b0000000000000000000000000000000000001d324659686c6b6b6a686767666666677288917b66503b26110014273a4c5c6a767d838687878788898b8b8984786855412d19000000000000000000000000000000000000000000000000000005162736444e565a5c5c5c5f5f5f5f5b544a3d2d1c0a00000000000000000000001024384b5f72879a93806c5946333e53687c929c87715c47321e0900192e43586e8498836c57422d18000d2134475a6b7d8d988b7d75707274777c858f9b99846f5a45301b06000000172c41566b8297917b67523d2813000000001a2f445a6f859a89735f4a35200b000000000009182736455564738395806b56402b160000000000081c3146596b7470645544311e0b000000000000000000000000000000000000000000000000000000001f344a5f748b917c67533e29140000000a1d2f404e595f5f5f5f5f5b5244352513010000000000000000000f24394e63778d8873635954514e4942392e2019150e0500000000000014283b4e606b6c60504030211102000010253a4f64798f8f7965503b26110000000e1c2b3b4a59687c91a397867667584837291b0f0000000e23374c60758a95806b56412d1804000000000000070e1110161d252b3034343433302b251e160a0000000015283a4a575e5f5d54493c2d1f18110903000000000000000000000000000000000000000000000000000000000000000000000000000000001f344a5f74838282807d7c7c7b7b7b7b7d88917b66503b2611000b1d2e3e4d5962696d6f70707072737474736f675a4a392612000000000000000000000000000000000000000000000000000000091826323b42454747474a4a4a4a4640382c1f0f000000000000000000000004182c3f53677a8fa08c7764503d293a4e63788d9f8a74604b36210c00192e43586e8499846e59442f1a0004172a3c4e5f6e7d899391898788898d9295919e937d6a55402c1702000000182d42576c83988d77634e39240f000000001a2f445a6f869a86705b46311c07000000000000091827374655667a8f836d58432e18000000000002162a3c4d595f5c5346372614020000000000000000000000070f15181a1915100800000000000000001f344a5f748b8975614d392410000000001122303d464a4a4a4a4a473f342617070000000000000000000b1a283b50667a9086705c56514d4944403b37332e2921180c00000000000c1f31424f56574f42322212030000000d22374c61768c927c68533e28140000101e2c3a495968778797a39988796b5e5245392d1e0e000013273c51657a8f8f7a66513d28130000000000000000000000020911161b1f1f1f1e1b16100a0300000000000b1c2c3a43494a4841372b1e0f04000000000000000000000000000000000000000000000000000000000000000000000000000000000000001e33485d728797969594939291919191949a917b66503b2611000010202f3c464e54585a5b5b5c5c5e5f5f5e5b54493c2d1b090000000000000000000000000000000000000000000000000000000008151f272d3032323234343434322c251b0f0100000000000000000000000b1f33475b6f83979885705c483421364a5f74899e8d77634d38230e00192e43586e8499866f5a45301b00000d1f3041505f6b7680868a8c8c8b89868084998d7864503b271200000000192e43586e849989745f4a35200b000000001b30465b708797826c58432e190400000000000000091928384c61768b866f5a45301b0000000000000d1f2f3c464a48403628190800000000000000000000030f1a232a2e2f2e2a241b11060000000000001e33485d70827d6c5946321e0a000000000412202a313434343434322c221608000000000000000000091929384653667b9187726f6b66625d5954504c47433e342a1e1001000000021423323c41423d32231404000000000a1f344a5f748995806a55402b16000d1e2e3c4a5867778796968d9197897c6f63574a3c2c1b0800172c41556a80948975604c37230e000000000000000000000000000000000000000000000000000000000000000e1c272f3434332e251a0d0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001a2f44596d828b8b8b8b8b8b8b8b8b8b8b8b8b7b66503b2611000002111e29333a3f434446464747494a4a494640372c1e0f000000000000000000000000000000000000000000000000000000000000020c13181b1d1d1d1f1f1f1f1d1811080000000000000000000000000012263b4e63778b9f907c6955412d1c31465a6f84998f79644f3a2510001a2f44596e849987705b46301b000001122332414e5a636b7174767674737072879a86725e4a36210d00000000192f44586e849986705c47311c08000000001b30465b708794806a54402b150000000000000000000a1e33485d728787715c47321c00000000000001111f2a3134332d24180a000000000000000000000413212d373e4344433f382e2317080000000000192d415363726e604e3c2916030000000000020d161d1f1f1f1f1f1e18100500000000000000000004162737475664707b8d888784807b77726e6965605c5851473b2e1f0f00000000051420282c2c292014050000000000071d32475c728797836c57422d1800162a3c4c5a687686959184797d88948d8275685a4a382511001b30455a6f8497836e5a46311d0900000000000000000000000000000000000000000000000000000000000000000a141b1f1f1e19120800000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000162a3e5265737474747474747474747474747473634f3a2510000000000c171f262b2e2f3030323234343434312c241a0e000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000182d41556a7d929b8874604d3926172c41556a7d93917b66503b2611001a2f445a6f869b88725c47321d000000041423303c495d6f7d80776e645e697b8f927d6a56432f1b07000000001a2f445a6f8698836d58432e1904000000001b30465b7086937c68533e2813000000000000000000051a2f44586c8087705b46311c00000000000000010d161c1f1e19110600000000000000000000021323313e4a52585a58534b41342617080000000011243645545e5c5042311f0d000000000000000000000000000000000000000000000000000000000f213345556574828e989c9c9995908c88837d7975716c64594c3d2c1b0800000000020c131717140d03000000000000011b30455a6f8499846e59442f1a001c3146596a778695908272666a7683919286786754402b16001e33485d72888f7b67533f2b17030000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000f233547565e5f5f5f5f5f5f5f5f5f5f5f5f5f5f564634200c0000000000030b1116191a1b1b1c1d1f1f1f1f1c181108000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001d32465b708599907d6a5744311d12273b5065798e917b66503b2611001a2f445a6f869b88725c47321d000000020c1324394e63788d938b82776e7587998875614e3b271708000000001a2f445a6f8695806b56402b1601000000001a2f445a6f86937c67523c27120000000000000000000015293d506270746a58442f1a00000000000000000000000000000000000000000000000000000e2030414f5c666d6f6d675e524435251403000000071827364349483f3223130200000000000000000000000000000000000000000000000000000006192c3e51627384929c948f8d8f9094989c98938f8b8682766a5b4a37241000000000000000000000000000000000000000172c42576c8297866f5a45301b001e33485e7389969182716255586572828f96826c57422c17001f344a5f748a8673604c382410000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000618293843494a4a4a4a4a4a4a4a4a4a4a4a4a4a44382817040000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001f344a5f7489968573614e3b28150d21364a5e72878f7965503b2610001a2f445a6f869b87725c47321d000005141f282c3a4f64798f979e958a8282938f7d6b5d5244352615030000001a2f445a6f84947d68533f291400000000001a2f445a6f86937c67523d291a0a0000000000000000000d203344535d5f5a4c3b2815000000000000000000070f15181a191510080000000000000005182b3d4e5f6d798286837a7062534332200d000000000918252f34332d221405000000000000000000000000000000000000000000000000000000000f2236495c6e80919789807978787b7d83878c9094989b94887967533f2a1500000000000000000000000000000000000000152a3f546a809487705b46311c001c3146596c7a868272635344475462707d887a66523e2914001f344a5f738479685643301d0900000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000b1a263034343434343434343434343434343430271a0b000000000000030a0e0e0c07000000000000000000040b0f0f0d08000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001f344a5f74858477675644311e0b071b2f43576a7d8675614c37230e001a2f445a6f8695826d59442f1a00021423313b41414e63757a838c939896939e89837a6f62534432200c000000192e43586e84947d68533e291300000000001a2f445a6f8387786652473828160300000000000000000315263541494a463c2e1e0c00000000000000030f1a232a2e2f2e2a241b110600000000000d2135485a6c7d8c8d8b8f8e8271614f3d2a17030000000008131b1f1e1910040000000000000000000000000000000000000000000000000000000003172b3e5265788c9787786c65636366696e72777b8084878989826b56402b160000000000000000000000000004070a0a0a0713283d52677c9388725c47321d00162a3d4e5c68717263544536374452606c726c5d4a37230f001c304456666f695b4b3927140100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000009141b1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1c14090000000000000b161e2323211b11050000000000000c171f2425221c120500000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001c314558687070675949382614020014283b4e606e70685845321e09001a2f445a6f85887866523e2a16000d2032424e56564e5761676f7780879c9b9b9b978d8271614f3b2612000000192e43586e84947d69543f2a140000000000172b3f53647172696a645645321e0a0000000000000000000817242e3434322a1e10000000000000000413212d373e4344433f382e2317080000000014283c5064778a8478747c8990806c5946321e0a00000000000000000000000000000000000000000000000000000000000000000000000000000000091e32465a6d82958b79695a504e4e5154595d62666a6e7173737063513e291400000000000000000000010a12181c1f1f1f1b16263b50667b9088725c47321d000d1f303e4b565d5e544536272634424f595c594e3f2d1b080014273948545a564c3d2d1c0a0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000d1c29323838362e231404000000000e1d2a33393a372f2314040000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000015283a4a555b5b54493b2b1a0900000b1e3142515a5b564a3a28150200182d41556773746a5a4936230f00162a3d4f606b6a60565b646f7b87939086868d979f907d68533e2913000000182d42576c7d827564513d2813000000000a1a2938465462707c8074624d39240f0000000000000000000006111a1f1f1d170d00000000000000021323313e4a52585a58534b4134261708000000192e42576b80887566606b79898975624e3925100000000000030a0e0e0c070000000000000000040a0d0d0b050000000000000000000000000000001024384d61758a93806d5b4b3d38393c4044494d5155595c5e5e5c534535220e00000000000000000009141d262d31343434302a253a4f64798f88725d48331e000112202e39424849433627181725323d4547453d30211000000a1b2a374044423a2e1f0f000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000091b2b3a464d4e4a403222100000000a1b2c3b474e4f4b41322210000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000b1c2c3841464640372b1d0d000000021324333e454643392c1c0b000012263849575e5f584c3c2b1907001b3045596c7d7d72696f77828d99918272717985918a7764503c271200000917293c4f606b6c65574735220e0000000416283847566472828e907b66503b2611000000000000000000000000000000000000000000000000000e2030414f5c666d6f6d675e52443525140300001c32475c70867d6a584d5b6b7d907c68533e2914000000000b161e2323211b110500000000010e181f2222201910040000000000000000000000000014293e53677b908b7763503e2d2324272b2f34383d414447484847413627170500000000000000010e1a26303a41464a4a49453d34384e63788d89735e48331e000002101c262e33342f2518090714202a3032302a2012030000000c19242c2f2d271d1001000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000132638495862635d513f2d190500011427394a5963645e513f2d1905000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000e1b262d30302c251a0d00000000000615222b30302e271c0e000000091b2b3944494a453b2e1e0e00001f34495e738890867d838b959a8f8272635d6773807c6d5a4734210d000618273540464f57585248392918050000000e2133455665748391948776634e3a25100000000000000001080d101313130f0b050000000000000005182b3d4e5f6d798286837a7062534332200d00001e33485e738978644f3d4e607387826b56402c160000000d1c29323838362e231404000000111f2b333737342d221404000000000000000000000000192e42576c829685705c4834210f0f12161b1f24282c2f323333322d2418090000000000000002111f2c38434d555b5f5f5e5950473d4c62778d88725c47321d000000000a131a1e1f1b13080000020d161b1d1b160d0200000000000711171a18130a00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000081c2f43566775786f5c48331e0900081c3043566876796f5c48331e0900000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000912181b1b18110800000000000000040f171b1b19130a00000000000d1b2730343431281e100000001f34495e7388969894979690887c7062544a55616a6a5f4f3d2b18050011243645535b5e5f5a4f3f2d1b0b00000000162a3d5063748492948576695946331f0b0000000000010c151c2225282928241f19130b02000000000d2135485a6c7d8c8d8b8f8e8271614f3d2a1703001f344a5f748a76604b3644586d83836c57422c170000091b2b3a464d4e4a4032221000000c1e2f3d474c4c483f3222100000000000000000000000001c31465b708694806a56412d1905000000060a0f13171a1c1e1e1d191107000000000000000011202f3d49556069707474736d63594f4c62778d88725c47321d0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000e23374b5f72858b76604b36210b000e23374b5f73868b76604b36210b000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000a141b1f1f1c150c000000001b3044576a7883888886827b736a5f524538444f55554d4131200e0000192d4053636f73746d5d4a36210c000000001c31455a6d809290847566594b3b2a17040000000006131e2830363a3d3e3d39342e271e150900000014283c5064778a8478747c8990806c5946321e0a001e33485e738877634e3b43576c82826b57412c170000132638495862635d513f2d19050016293c4d5a62625c50402d1a0600000000000000000000001e33485e7388917b67523d28130000000000000000000000000000000000000000000000000e1e2f3e4d5a67727c85898b8880766c615663788f88725c47321d0000000000000000000000060d10100d06000000000000000000000000000000060d10100d06000000000000000000000000000000060d10100d060000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000013283c51657a8f8c76604b36210b0013273c51657a8f8c76604b36210b0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000015283a4c5a666f7373706c6760574d413527323b40403a3023130200001e32475c7082898a78634e38230e000000001e33485e7389867d736557483b2d1d0c00000000061524303b444b4f5253524e48423b3127190a0000192e42576b80887566606b79898975624e392510001c31465a6f857d6a584a506072867d68543f2a1500081c2f43566775786f5c48331e09001c3045596b77776e5d4935200c00000000000000000000001f344a5f748b8f78644f3a25100000000000000000000000000000000000000000000000091b2c3c4d5c6b7885909997979993897d7369687c9187705b46301b000000000000060e1315131a222626221a0e010000000000000000060e1315131a222626221a0e010000000000000000050d1213121a222626221a0e010000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000172c41556a80948c76604b36210b00162b40556a80948c76604b36210b000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000b1d2e3c49535a5e5e5b58534c443b30241720272b2b261e12040000001f344a5f748a978673604b36210d000000001c3146596b737169605548392a1d0f0000000002132433414e585f64676867625d564e4437271603001c32475c70867d6a584d5b6b7d907c68533e291400182d4155697d8876685d616e7d8c77634f3a2611000e23374b5f72858b76604b36210b001f34495e73888c78634e38230e00000000000000000000001f344a5f748b8d77624c37220d0000000000000000000000000000000000000000000002142738495a6a7a89968e868282848a9391867c778397866f5a45301b00000000000d1922282a282c363b3b362c1f10000000000000000d1922282a282c363b3b362c1f10000000000000000c18212729272c363b3b362c1f1101000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001a2f44596e84988b745f4b35200b00192e43586d83988c76604b36210b0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000101e2b373f46484846433e3831281e13060c131616120b01000000001f344a5f74888778685744301c0800000000162a3c4d595e5c564d44382a1b0c00000000000c1f3142515f6b73797c7d7c77716a615545331f0b001e33485e738978644f3d4e607387826b56402c160012263a4d607385867a7273808d83705c4834200c0013283c51657a8f8c76604b36210b001f34495d72858c77634d38230e00000000000000000000001f344a5f748b8c76614c37220c000000000000000000000000000000000000000000000c1f32445667788997887b726c6b6f76808b98918d9299846e59442f1a000000000e1d2b363d3f3d3d495050493d2e1e0d00000000000e1d2b363d3f3d3d495050493d2e1e0d00000000000d1c29343c3e3c3d495050493d2f1f0e000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001b30465b70869b89735e49341f0a001b30465b70869b8a745f4a341f0a0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000e1a242b313333312e2a241d150b010000000000000000000000001d3145596a7373695a4b39271401000000000d1f2f3c464847423a31271a0c00000000000015283b4e60707d888e9090918c867d73624e3a2510001f344a5f748a76604b3644586d83836c57422c17000a1e3144566777878d8786918a786653402d190500172c41556a80948c76604b36210b001b2f43566673766e5c4935200b00000000000000000000001e33485d72888d77624d38230e0000000000000000000000000000000000000000000216293c4e6173859688786a5e57565b636d798796a3a598836c57422d18000000091b2c3b485154524c5b65655b4c3c2b1804000000091b2c3b485154524c5b65655b4c3c2b1804000000081a2b3a475053514c5b65655b4d3d2b18050000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001d32475c72889c87725c47321d08001d32475c72889d88725d48331e08000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000710171c1e1e1c1915100901000000000000000000000000000016293c4c585e5f574b3c2d1c0a000000000001111f2a3133322e271e1409000000000000001b2f44586b7d8d837c79797c8284847a65503b2611001e33485e738877634e3b43576c82826b57412c1700011427384959687580878b887b6c5b4937241100001a2f44596e84988b745f4b35200b0014273848565f615c503f2d190600000000000000000000001b3045596e83907a65513c27130000000000000000000000000000000000000000000b1f3245596b7d918d7a6a5a4c424147505c69778797a896826b56402b160000011426394a59656a665a6979786a5a47331e090000011426394a59656a665a6979786a5a47331e0900000013253749586468655a6979796b5a48341f0b0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001e33485e738999856f5a45301b06001e33485e73899a866f5a45301b060000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000c1e2e3b44494a443a2d1e0f00000000000000010d161c1e1d19130b0100000000000000001f34495d72887c6f686465686b6f8378634e38230e001c31465a6f857d6a584a506072867d68543f2a150000091b2c3b4a58636c7274736a5d4e3d2c1a0700001b30465b70869b89735e49341f0a00091b2a38434a4c483f322210000000000000000000000000172b4054697d92806a56422e1b08000000000000000000000000000000000000000013273b4e61758995826f5d4c3c2f2c343e4b5968798b9d947d69543f2a140000091d304356687780786875878976604b36210b0000091d304356687780786875878976604b36210b0000081c2f425566767d786974878a77624c37220d0000000000030d14191a19161007000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001f34495e738996826c57422d1803001f344a5f748a96826c57422d190400000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000101e2830343430281c0f00000000000000000000000000000000000000000000000000001f344a5f748b7661534f505968798c78634e38230e00182d4155697d8876685d616e7d8c77634f3a26110000000e1d2c3a4650585d5f5e574c3f301f0e0000001d32475c72889c87725c47321d0800000d1c2a363d403e35291a0b00000000000000000000000011263a4e63778b86725e4b3825140300020a0e0f0d070000000000000000000000061a2e42566a7d928d796552402e1e18212d3b4a5b6d8398927c67523d281300001125394c60738695846f7d928c76604b36210b00001125394c60738695846f7d928c76604b36210b00000f24374b5f72849485707c918d77624c37220d00000000091520282d2f2f2b241a100400000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001f344a5f748b917c67533e291400001f344a5f748b917c68533e2a150000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000c151b1f1f1c150b0000000000000000000000040a0d0c0902000000000000000000001f34495d72877d706761616a77878c77624c37220d0012263a4d607385867a7273808d83705c4834200c000000000e1c28333d43484a49443b2f2112010000001e33485e738999856f5a45301b060007192b3a48525652473829180600000000000000000000000b1f33485b6f838e7a67554331201008141e2325221b12070000000000000000000c2035495d71869985715d49362310040f1d2e43586e84998f7965503b26100001172b4054687c90917c6b82978c76604b36210b0001172b4054687c90917c6b82978c76604b36210b0000162a3e53677a8f917c6a80958d77624c37220d0000000a1927333c4244443f372d211405000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001f344a5f748b8975614d39241000001f344a5f748b8975614d3925100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000010e181f22221e150a0000000000000000001b2f43576a7c8e837b76757c889588735e4934200a000a1e3144566777878d8786918a786653402d190500000000000b1620292f33343430281d1103000000001f34495e738996826c57422d1803001124374858656b65564735230f000000000000000000000004182c4053677a8d8572604f3e2e1f172631383a362f241708000000000000000011263a4f63788d927d6a55422e1a0600001a2f445a6f859a8d77624d38230e00081c31455a6e83978b766c83988c76604b36210b00081c31455a6e83978b766c83988c76604b36210b00071b3044596d82968c776b82978d77624c37220d0000071828374450575a58534a3f32231405000000000000000000020c131616140e05000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001e33485d70827d6c5946321e0a00001e33475c70827d6c5946321e0a0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001111f2b33373732281a0c000000000000000014283b4d5f6f7d888e8c8b89828f826d5945301b0700011427384959687580878b887b6c5b4937241100000000000000040d141a1e1f1f1b150b0000000000001f344a5f748b917c67533e29140000182c40536676807464523e29140000000000000000000000001024374a5d7083907d6d5c4c3d2f2435444d4f4b423526170700000000000000152a3f54687d928d78634f3b26120000001b30465b70869b8a745f4b35200b000c21364a5f74899b86716e84998c76604b36210b000c21364a5f74899b86716e84998c76604b36210b000b2034495e73889b87716d83988c76604b36210b00011325364655626b6f6d665c5042322312010000000000000007141f272b2b2922180c000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000192d415363726e604e3c2916030000192d405363726f604f3d2a1603000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000d1f2f3d474c4c45382a1b0d000000000000000b1e3041515f6b74787978747b8e7a67533e2a16020000091b2c3b4a58636c7274736a5d4e3d2c1a0700000000000000000000000000000000000000000000001f344a5f748b8975614d39241000001d32475b708393826b56402b16000000000000000000000000081b2e415366788b8b7a6a5b4d3f32415361645f534435251301000000000000192e43586d829788725e4935200c0000001c31465b70879c87725c47321d080010253a4e63788e96826c6f869b8b745f4a341f0a0010253a4e63788e96826c6f869b8b745f4a341f0a000f24394d62778c97826d6f84998b745f4b35200b000b1e3143546473808683796e605141301e0b0000000000000a1825313b40403d352a1b0a000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000011243645545e5c5042311f0d00000011233545545e5c514232200d0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000162a3c4d5a61615648392b1d0f01000000000001122332414e5860646463718485725f4b37240f000000000e1d2c3a4650585d5f5e574c3f301f0e0000000000000000000000000000000000000000000000001e33485d70827d6c5946321e0a00001f344a5f748a917d6a55402b1600000000000000000000000000112437495b6d809089796b5d5044475c707971625342301e0b0000000000001b30465b708698836e59442f1b060000001d32475c728899846e59442f1a050014283d52677c92917c6770879c89735e48331e090014283d52677c92917c6770879c89735e48331e090012273c51667b90927c686f869b89735e49341f0a0013273a4d607183919a968c7d6f5f4d3b281501000000000c1a2836434e555651473928150200000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000071827364349483f32231302000000061727364349483f3324140200000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001c3145596b76746657493b2d1f11030000000000051423384c606f726872808c7a6855422f1b0800000000000e1c28333d43484a49443b2f211201000000000000000000000000000000000000000000000000192d415363726e604e3c29160300001f344a5f74898272614e3b271200000000000000000000000000071a2c3e4f61728494897b6e61554a5b70868271604d3b28140100000000001d32475c7288947d6955402b16010000071e33485e738995806b56412c170200172c41566b80958c776372889c87715c47321d0700172c41566b80958c776372889c87715c47321d0700152b40546a80948d786370879c88725c47321d08001a2e42566a7d90a0afa99d8e7c6a5744301c070000000d1b2a384653606a6b645745321e0a00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000918252f34332d22140500000000000918252f34332d2215060000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001f34495e7389847567594b3d2f21120300000000000f253a4f6479857d858c7d6d5c4b382613000000000000000b1620292f33343430281d11030000000000000000000000000000000000000000000000000011243645545e5c5042311f0d0000001c3146596b7470645544311e0b00000000000000000000000000000f20324355657686968c8073675d56697c8f7d6a5744301c0700000000001e33485d7288907b66513c27120000000a1f34495e7389917c67523d28140000192f44586e839888725e72889a866f5a45301b0600192f44586e839888725e72889a866f5a45301b0600182d42576c839788735f72879b86705b46301b06001e33485d71869aadbebbac9a88735f4a35200b00000c1c2b39485664717d8275614d38230e00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000008131b1f1e1910040000000000000008131b1f1e191004000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001f34495e7388948576695b4d3f30211100000000000e23384d6174858b857a6e5f4f3e2d1b090000000000000000040d141a1e1f1f1b150b000000000000000000000000000000000000000000000000000000071827364349483f32231302000000162a3c4d595f5c53463726140200000000000000000000000000000314263748586877879691857a706660748987735f4a36210c00000000001f344a5f74898d77634e39240f0000000a1f344a5f748b8d78634e39251000001b30465b708697826d5e738897836d58432e1904001b30465b708697826d5e738897836d58432e1904001b30455a6f8597836e5c728898836d58432e1904001f344a5f748ba0b4c6c9b5a08b75604b36200b000517293a49576674828f9079644f3a250f0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001b3044586c7d8f9587796b5d4e3f2f1e0c00000000091e32455766717471685d504131211000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000918252f34332d221405000000000d1f2f3c464a4840362819080000000000000000000000000000000008192a3a4a5968778693978d837a7677898e78644f3a240f00000000001f344a5f748b8a74604b36210c0000000a1f344a5f748b88735f4a35200c00001d32475c7288907c685e738994806a55402b1601001d32475c7288907c685e738994806a55402b1601001d32475c7187917c685e738994806a55402b1601001e33485d708597a9bbbfae9a86715d48331e09000f2235475867758492938574614d39240f00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000015293c4f6070808f978a7b6c5d4d3b2916020000000215283948545d5f5d554b3f3223130300000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000008131b1f1e191004000000000001111f2a3134332d24180a0000000000000000000000000000000000000c1c2c3b4a596774828d98968e8c8d959079644f3a250f00000000001e33485d728887725d48331e09000000091f34495e7389836e5a45311c0700001f34495e73898975615e73898f7a65513c271200001f34495e73898975615e73898f7a65513c271200001f34495e73898975625e73898f7a66513c27120000192d415467798c9daeafa2907d6a57432e1a0500172b3e5164768694928374675745321e0a0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000d2032425261707d8a968b7b6b5945311d09000000000a1b2a3741484a4842392e211304000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000010d161c1f1e19110600000000000000000000000000000000000000000e1d2c3b495764707b868f969b9f9d8b77624e39240f00000000001b2f44586c80846f5a45301b06000000061d32475c71877c6854402b170200001f34495e73837d6c595e73898975604c37230e00001f34495e73837d6c595e73898975604c37230e00001f344a5f73837d6c595e73898975604c38230e00001225384a5c6e80909f9c928472614e3b271400001d32465b6e82948f8273655649392815020000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000214253443525f6c7884908875604c37210c00000000000c1a252e3334332e261c1003000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000e1d2b3946525e69727a82878989806e5b48331f0b000000000015293d50616f746754402c1702000000001a2f44586d8074614e3925110000001b304356656c6b5f4e5e7387806c5945311d0900001b304356656c6b5f4e5e7387806c5945311d0900001c304456666e6c5f4f5e7387806d5a46311d090000081b2d3f506171828b888073655544311e0b00001e33485e7388847b71635547392b1b0a000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000007162534414e5a66727d8675614c37220c00000000000008121a1e1f1e191209000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000d1b2835414c565f676d7173736d61503e2b180400000000000d203243525c5f584a3825110000000000152a3e51616c675745321e0a000000142638475357564e445768747061503d2a16020000142638475357564e445768747061503d2a16020000142739485458574f445768737062503d2a16020000001021324353626f74736c6256473726140200001c31465a6b736f675f534537291b0d00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000071624303d4955606d73685846321e0900000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000a17232e39434b53585c5e5e5a504233210f0000000000000315253440474a453b2c1b0800000000000e2133435157544939281502000000091a29363f42413b3a4a585f5c524332200d000000091a29363f42413b3a4a585f5c524332200d0000000a1b2a374043423c3a4a575f5d534433210e000000000415253544525c5f5e58504538291908000000172a3d4d595e5b544c423527190b00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000006131f2b37434f5b5f574a3b29160300000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000006111c2630383e44474849463e32241504000000000000000716222c333431291d0e000000000000041625333e4240372b1b0a00000000000b19232a2c2c282c3a454a484034251503000000000b19232a2c2c282c3a454a484034251503000000000c1a242b2e2d292c3a444a48413526150400000000000717263440484a49443d33271a0b000000000d1f2f3c45484640382f2517090000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000020e1a25323e474a44392c1d0c0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000a131c242a2f323334312b2115060000000000000000000510191e1f1d160c0000000000000000071621292c2b241a0d000000000000000610151717131c283134332d2316070000000000000610151717131c283134332d2316070000000000000811161918141c283034332d241708000000000000000816232d3334343029211609000000000001111f2a3033312c251c120700000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000814212b333430271c0e000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000080f151a1d1e1f1c160e0300000000000000000000000004090a080200000000000000000000040e151716110800000000000000000000000000000b151c1f1e191106000000000000000000000000000b151c1f1e191106000000000000000000000000000b151c1f1e1911060000000000000000000510191e1f1f1b150e0400000000000000010d161c1e1c1811090000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000030f181e1f1c140a000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 + m_StreamData: + offset: 0 + size: 0 + path: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/ModResources/Fonts/IndieFlower SDF.asset.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/ModResources/Fonts/IndieFlower SDF.asset.meta" new file mode 100644 index 00000000..8392910a --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/ModResources/Fonts/IndieFlower SDF.asset.meta" @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 2a0d250d860e74880b33abdcb4a9da2a +NativeFormatImporter: + externalObjects: {} + mainObjectFileID: 11400000 + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/ModResources/Fonts/Merriweather-Regular SDF.asset" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/ModResources/Fonts/Merriweather-Regular SDF.asset" new file mode 100644 index 00000000..cb7b355c --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/ModResources/Fonts/Merriweather-Regular SDF.asset" @@ -0,0 +1,6201 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!114 &11400000 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 71c1514a6bd24e1e882cebbe1904ce04, type: 3} + m_Name: Merriweather-Regular SDF + m_EditorClassIdentifier: + hashCode: -229269377 + material: {fileID: 21605244428125924} + materialHashCode: -326895084 + m_Version: 1.1.0 + m_SourceFontFileGUID: 035b6cab9473c4803838a9b4bbc0269a + m_SourceFontFile_EditorRef: {fileID: 0} + m_SourceFontFile: {fileID: 0} + m_AtlasPopulationMode: 0 + m_FaceInfo: + m_FamilyName: Merriweather + m_StyleName: + m_PointSize: 37 + m_Scale: 1 + m_LineHeight: 46.5 + m_AscentLine: 36.4375 + m_CapLine: 27.499998 + m_MeanLine: 0 + m_Baseline: 0 + m_DescentLine: -10.125 + m_SuperscriptOffset: 36.4375 + m_SuperscriptSize: 0.5 + m_SubscriptOffset: -3.7000003 + m_SubscriptSize: 0.5 + m_UnderlineOffset: -3.7000003 + m_UnderlineThickness: 1.8500001 + m_StrikethroughOffset: 9.568182 + m_StrikethroughThickness: 1.8500001 + m_TabWidth: 87.5 + m_GlyphTable: + - m_Index: 1 + m_Metrics: + m_Width: 8.75 + m_Height: 46.5625 + m_HorizontalBearingX: 0 + m_HorizontalBearingY: 36.4375 + m_HorizontalAdvance: 8.75 + m_GlyphRect: + m_X: 6 + m_Y: -52 + m_Width: 9 + m_Height: 47 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 2 + m_Metrics: + m_Width: 5.2499995 + m_Height: 33.062496 + m_HorizontalBearingX: 3.9374998 + m_HorizontalBearingY: 32.687496 + m_HorizontalAdvance: 13.125 + m_GlyphRect: + m_X: 406 + m_Y: 283 + m_Width: 5 + m_Height: 33 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 3 + m_Metrics: + m_Width: 13.499999 + m_Height: 13.749999 + m_HorizontalBearingX: 4.5624995 + m_HorizontalBearingY: 30.624998 + m_HorizontalAdvance: 22.625 + m_GlyphRect: + m_X: 455 + m_Y: 389 + m_Width: 13 + m_Height: 14 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 4 + m_Metrics: + m_Width: 22.062498 + m_Height: 27.499998 + m_HorizontalBearingX: 2.9374998 + m_HorizontalBearingY: 27.499998 + m_HorizontalAdvance: 27.5 + m_GlyphRect: + m_X: 49 + m_Y: 325 + m_Width: 22 + m_Height: 27 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 5 + m_Metrics: + m_Width: 17.749998 + m_Height: 36.499996 + m_HorizontalBearingX: 3.4374998 + m_HorizontalBearingY: 31.874998 + m_HorizontalAdvance: 24.375 + m_GlyphRect: + m_X: 80 + m_Y: 412 + m_Width: 18 + m_Height: 36 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 6 + m_Metrics: + m_Width: 34.374996 + m_Height: 27.812498 + m_HorizontalBearingX: 1.9374999 + m_HorizontalBearingY: 27.812498 + m_HorizontalAdvance: 38.375 + m_GlyphRect: + m_X: 106 + m_Y: 45 + m_Width: 34 + m_Height: 28 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 7 + m_Metrics: + m_Width: 25.062498 + m_Height: 28.124998 + m_HorizontalBearingX: 2.1874998 + m_HorizontalBearingY: 27.874998 + m_HorizontalAdvance: 28 + m_GlyphRect: + m_X: 118 + m_Y: 327 + m_Width: 25 + m_Height: 28 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 8 + m_Metrics: + m_Width: 3.9374998 + m_Height: 13.749999 + m_HorizontalBearingX: 4.5624995 + m_HorizontalBearingY: 30.624998 + m_HorizontalAdvance: 13.0625 + m_GlyphRect: + m_X: 476 + m_Y: 357 + m_Width: 4 + m_Height: 14 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 9 + m_Metrics: + m_Width: 10.812499 + m_Height: 37.437496 + m_HorizontalBearingX: 2.4374998 + m_HorizontalBearingY: 30.687498 + m_HorizontalAdvance: 15.9375 + m_GlyphRect: + m_X: 193 + m_Y: 181 + m_Width: 11 + m_Height: 37 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 10 + m_Metrics: + m_Width: 10.874999 + m_Height: 37.437496 + m_HorizontalBearingX: 2.5624998 + m_HorizontalBearingY: 30.687498 + m_HorizontalAdvance: 15.9375 + m_GlyphRect: + m_X: 193 + m_Y: 230 + m_Width: 11 + m_Height: 37 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 11 + m_Metrics: + m_Width: 18.187498 + m_Height: 18.937498 + m_HorizontalBearingX: 2.7499998 + m_HorizontalBearingY: 30.499998 + m_HorizontalAdvance: 23.8125 + m_GlyphRect: + m_X: 245 + m_Y: 265 + m_Width: 18 + m_Height: 19 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 12 + m_Metrics: + m_Width: 16.687498 + m_Height: 17.124998 + m_HorizontalBearingX: 3.8749998 + m_HorizontalBearingY: 20.249998 + m_HorizontalAdvance: 24.4375 + m_GlyphRect: + m_X: 247 + m_Y: 419 + m_Width: 17 + m_Height: 17 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 13 + m_Metrics: + m_Width: 5.5624995 + m_Height: 13.874999 + m_HorizontalBearingX: 3.6249998 + m_HorizontalBearingY: 5.5624995 + m_HorizontalAdvance: 12.375 + m_GlyphRect: + m_X: 496 + m_Y: 313 + m_Width: 6 + m_Height: 14 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 14 + m_Metrics: + m_Width: 14.937499 + m_Height: 2.6874998 + m_HorizontalBearingX: 4.1249995 + m_HorizontalBearingY: 13.249999 + m_HorizontalAdvance: 23.25 + m_GlyphRect: + m_X: 227 + m_Y: 503 + m_Width: 15 + m_Height: 3 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 15 + m_Metrics: + m_Width: 5.1874995 + m_Height: 5.0624995 + m_HorizontalBearingX: 2.3124998 + m_HorizontalBearingY: 4.7499995 + m_HorizontalAdvance: 9.8125 + m_GlyphRect: + m_X: 479 + m_Y: 341 + m_Width: 5 + m_Height: 5 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 16 + m_Metrics: + m_Width: 13.249999 + m_Height: 35.437496 + m_HorizontalBearingX: 1.3124999 + m_HorizontalBearingY: 28.937498 + m_HorizontalAdvance: 15.9375 + m_GlyphRect: + m_X: 190 + m_Y: 134 + m_Width: 13 + m_Height: 35 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 17 + m_Metrics: + m_Width: 19.249998 + m_Height: 23.687498 + m_HorizontalBearingX: 2.2499998 + m_HorizontalBearingY: 23.374998 + m_HorizontalAdvance: 23.8125 + m_GlyphRect: + m_X: 337 + m_Y: 125 + m_Width: 19 + m_Height: 24 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 18 + m_Metrics: + m_Width: 14.062499 + m_Height: 23.374998 + m_HorizontalBearingX: 1.4374999 + m_HorizontalBearingY: 23.437498 + m_HorizontalAdvance: 16.25 + m_GlyphRect: + m_X: 337 + m_Y: 483 + m_Width: 14 + m_Height: 23 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 19 + m_Metrics: + m_Width: 19.124998 + m_Height: 23.374998 + m_HorizontalBearingX: 1.6874999 + m_HorizontalBearingY: 23.437498 + m_HorizontalAdvance: 22.125 + m_GlyphRect: + m_X: 306 + m_Y: 483 + m_Width: 19 + m_Height: 23 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 20 + m_Metrics: + m_Width: 16.812498 + m_Height: 29.312498 + m_HorizontalBearingX: 2.0624998 + m_HorizontalBearingY: 23.437498 + m_HorizontalAdvance: 20.75 + m_GlyphRect: + m_X: 247 + m_Y: 135 + m_Width: 17 + m_Height: 29 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 21 + m_Metrics: + m_Width: 21.749998 + m_Height: 31.124998 + m_HorizontalBearingX: 1.3124999 + m_HorizontalBearingY: 25.187498 + m_HorizontalAdvance: 23.8125 + m_GlyphRect: + m_X: 50 + m_Y: 231 + m_Width: 22 + m_Height: 31 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 22 + m_Metrics: + m_Width: 16.124998 + m_Height: 29.749998 + m_HorizontalBearingX: 3.3124998 + m_HorizontalBearingY: 23.812498 + m_HorizontalAdvance: 22 + m_GlyphRect: + m_X: 345 + m_Y: 247 + m_Width: 16 + m_Height: 30 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 23 + m_Metrics: + m_Width: 19.062498 + m_Height: 29.499998 + m_HorizontalBearingX: 2.7499998 + m_HorizontalBearingY: 29.124998 + m_HorizontalAdvance: 24.5625 + m_GlyphRect: + m_X: 309 + m_Y: 207 + m_Width: 19 + m_Height: 29 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 24 + m_Metrics: + m_Width: 18.437498 + m_Height: 29.437498 + m_HorizontalBearingX: 1.7499999 + m_HorizontalBearingY: 23.124998 + m_HorizontalAdvance: 21.75 + m_GlyphRect: + m_X: 215 + m_Y: 267 + m_Width: 18 + m_Height: 29 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 25 + m_Metrics: + m_Width: 18.812498 + m_Height: 28.187498 + m_HorizontalBearingX: 2.3749998 + m_HorizontalBearingY: 27.874998 + m_HorizontalAdvance: 23.4375 + m_GlyphRect: + m_X: 155 + m_Y: 327 + m_Width: 19 + m_Height: 28 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 26 + m_Metrics: + m_Width: 19.187498 + m_Height: 29.562498 + m_HorizontalBearingX: 2.5624998 + m_HorizontalBearingY: 23.437498 + m_HorizontalAdvance: 24.4375 + m_GlyphRect: + m_X: 345 + m_Y: 288 + m_Width: 19 + m_Height: 30 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 27 + m_Metrics: + m_Width: 5.1249995 + m_Height: 20.312498 + m_HorizontalBearingX: 3.7499998 + m_HorizontalBearingY: 19.999998 + m_HorizontalAdvance: 12.75 + m_GlyphRect: + m_X: 371 + m_Y: 448 + m_Width: 5 + m_Height: 20 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 28 + m_Metrics: + m_Width: 5.5624995 + m_Height: 28.249998 + m_HorizontalBearingX: 3.6249998 + m_HorizontalBearingY: 19.999998 + m_HorizontalAdvance: 12.75 + m_GlyphRect: + m_X: 376 + m_Y: 86 + m_Width: 6 + m_Height: 28 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 29 + m_Metrics: + m_Width: 17.499998 + m_Height: 20.249998 + m_HorizontalBearingX: 2.9999998 + m_HorizontalBearingY: 21.312498 + m_HorizontalAdvance: 24.75 + m_GlyphRect: + m_X: 453 + m_Y: 166 + m_Width: 17 + m_Height: 20 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 30 + m_Metrics: + m_Width: 16.687498 + m_Height: 12.874999 + m_HorizontalBearingX: 3.7499998 + m_HorizontalBearingY: 17.562498 + m_HorizontalAdvance: 24.1875 + m_GlyphRect: + m_X: 215 + m_Y: 434 + m_Width: 17 + m_Height: 13 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 31 + m_Metrics: + m_Width: 17.562498 + m_Height: 20.249998 + m_HorizontalBearingX: 4.1874995 + m_HorizontalBearingY: 21.312498 + m_HorizontalAdvance: 24.75 + m_GlyphRect: + m_X: 482 + m_Y: 166 + m_Width: 18 + m_Height: 20 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 32 + m_Metrics: + m_Width: 15.187499 + m_Height: 33.874996 + m_HorizontalBearingX: 1.4999999 + m_HorizontalBearingY: 33.562496 + m_HorizontalAdvance: 18 + m_GlyphRect: + m_X: 194 + m_Y: 458 + m_Width: 15 + m_Height: 34 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 33 + m_Metrics: + m_Width: 32.687496 + m_Height: 37.499996 + m_HorizontalBearingX: 3.4374998 + m_HorizontalBearingY: 28.124998 + m_HorizontalAdvance: 39.875 + m_GlyphRect: + m_X: 6 + m_Y: 178 + m_Width: 33 + m_Height: 37 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 34 + m_Metrics: + m_Width: 26.562498 + m_Height: 27.687498 + m_HorizontalBearingX: -0.49999997 + m_HorizontalBearingY: 27.749998 + m_HorizontalAdvance: 25.625 + m_GlyphRect: + m_X: 344 + m_Y: 6 + m_Width: 27 + m_Height: 28 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 35 + m_Metrics: + m_Width: 22.312498 + m_Height: 28.062498 + m_HorizontalBearingX: 1.6874999 + m_HorizontalBearingY: 27.812498 + m_HorizontalAdvance: 25.375 + m_GlyphRect: + m_X: 275 + m_Y: 246 + m_Width: 22 + m_Height: 28 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 36 + m_Metrics: + m_Width: 21.562498 + m_Height: 28.249998 + m_HorizontalBearingX: 1.1874999 + m_HorizontalBearingY: 27.812498 + m_HorizontalAdvance: 24.1875 + m_GlyphRect: + m_X: 344 + m_Y: 330 + m_Width: 22 + m_Height: 28 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 37 + m_Metrics: + m_Width: 25.124998 + m_Height: 28.124998 + m_HorizontalBearingX: 1.6874999 + m_HorizontalBearingY: 27.812498 + m_HorizontalAdvance: 28.0625 + m_GlyphRect: + m_X: 303 + m_Y: 40 + m_Width: 25 + m_Height: 28 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 38 + m_Metrics: + m_Width: 21.624998 + m_Height: 27.499998 + m_HorizontalBearingX: 1.6874999 + m_HorizontalBearingY: 27.499998 + m_HorizontalAdvance: 24.0625 + m_GlyphRect: + m_X: 152 + m_Y: 46 + m_Width: 22 + m_Height: 27 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 39 + m_Metrics: + m_Width: 20.187498 + m_Height: 27.499998 + m_HorizontalBearingX: 1.5624999 + m_HorizontalBearingY: 27.499998 + m_HorizontalAdvance: 22.875 + m_GlyphRect: + m_X: 307 + m_Y: 444 + m_Width: 20 + m_Height: 27 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 40 + m_Metrics: + m_Width: 25.124998 + m_Height: 28.249998 + m_HorizontalBearingX: 1.5624999 + m_HorizontalBearingY: 27.812498 + m_HorizontalAdvance: 27.375 + m_GlyphRect: + m_X: 303 + m_Y: 80 + m_Width: 25 + m_Height: 28 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 41 + m_Metrics: + m_Width: 26.874998 + m_Height: 27.499998 + m_HorizontalBearingX: 1.8124999 + m_HorizontalBearingY: 27.499998 + m_HorizontalAdvance: 30.625 + m_GlyphRect: + m_X: 382 + m_Y: 7 + m_Width: 27 + m_Height: 27 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 42 + m_Metrics: + m_Width: 10.874999 + m_Height: 27.499998 + m_HorizontalBearingX: 1.9374999 + m_HorizontalBearingY: 27.499998 + m_HorizontalAdvance: 14.9375 + m_GlyphRect: + m_X: 404 + m_Y: 244 + m_Width: 11 + m_Height: 27 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 43 + m_Metrics: + m_Width: 12.937499 + m_Height: 34.124996 + m_HorizontalBearingX: -0.24999999 + m_HorizontalBearingY: 27.499998 + m_HorizontalAdvance: 14.125 + m_GlyphRect: + m_X: 165 + m_Y: 367 + m_Width: 13 + m_Height: 34 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 44 + m_Metrics: + m_Width: 25.124998 + m_Height: 27.499998 + m_HorizontalBearingX: 1.7499999 + m_HorizontalBearingY: 27.499998 + m_HorizontalAdvance: 26.875 + m_GlyphRect: + m_X: 377 + m_Y: 46 + m_Width: 25 + m_Height: 27 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 45 + m_Metrics: + m_Width: 21.062498 + m_Height: 27.499998 + m_HorizontalBearingX: 1.7499999 + m_HorizontalBearingY: 27.499998 + m_HorizontalAdvance: 23.4375 + m_GlyphRect: + m_X: 275 + m_Y: 359 + m_Width: 21 + m_Height: 27 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 46 + m_Metrics: + m_Width: 36.187496 + m_Height: 27.499998 + m_HorizontalBearingX: 0.18749999 + m_HorizontalBearingY: 27.499998 + m_HorizontalAdvance: 36.625 + m_GlyphRect: + m_X: 58 + m_Y: 46 + m_Width: 36 + m_Height: 27 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 47 + m_Metrics: + m_Width: 26.749998 + m_Height: 27.499998 + m_HorizontalBearingX: 1.8124999 + m_HorizontalBearingY: 27.499998 + m_HorizontalAdvance: 29.5625 + m_GlyphRect: + m_X: 420 + m_Y: 7 + m_Width: 27 + m_Height: 27 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 48 + m_Metrics: + m_Width: 24.249998 + m_Height: 28.249998 + m_HorizontalBearingX: 1.2499999 + m_HorizontalBearingY: 27.812498 + m_HorizontalAdvance: 26.6875 + m_GlyphRect: + m_X: 340 + m_Y: 86 + m_Width: 24 + m_Height: 28 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 49 + m_Metrics: + m_Width: 21.312498 + m_Height: 27.749998 + m_HorizontalBearingX: 1.7499999 + m_HorizontalBearingY: 27.749998 + m_HorizontalAdvance: 24 + m_GlyphRect: + m_X: 344 + m_Y: 369 + m_Width: 21 + m_Height: 28 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 50 + m_Metrics: + m_Width: 32.124996 + m_Height: 35.124996 + m_HorizontalBearingX: 1.3124999 + m_HorizontalBearingY: 27.812498 + m_HorizontalAdvance: 26.875 + m_GlyphRect: + m_X: 6 + m_Y: 227 + m_Width: 32 + m_Height: 35 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 51 + m_Metrics: + m_Width: 24.374998 + m_Height: 27.812498 + m_HorizontalBearingX: 1.6874999 + m_HorizontalBearingY: 27.812498 + m_HorizontalAdvance: 26.0625 + m_GlyphRect: + m_X: 309 + m_Y: 247 + m_Width: 24 + m_Height: 28 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 52 + m_Metrics: + m_Width: 18.249998 + m_Height: 28.249998 + m_HorizontalBearingX: 2.2499998 + m_HorizontalBearingY: 27.812498 + m_HorizontalAdvance: 22 + m_GlyphRect: + m_X: 245 + m_Y: 296 + m_Width: 18 + m_Height: 28 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 53 + m_Metrics: + m_Width: 24.124998 + m_Height: 27.499998 + m_HorizontalBearingX: 0.62499994 + m_HorizontalBearingY: 27.499998 + m_HorizontalAdvance: 25.625 + m_GlyphRect: + m_X: 309 + m_Y: 287 + m_Width: 24 + m_Height: 27 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 54 + m_Metrics: + m_Width: 25.937498 + m_Height: 27.812498 + m_HorizontalBearingX: 0.87499994 + m_HorizontalBearingY: 27.499998 + m_HorizontalAdvance: 27.375 + m_GlyphRect: + m_X: 414 + m_Y: 45 + m_Width: 26 + m_Height: 28 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 55 + m_Metrics: + m_Width: 26.062498 + m_Height: 27.812498 + m_HorizontalBearingX: -0.62499994 + m_HorizontalBearingY: 27.499998 + m_HorizontalAdvance: 24.8125 + m_GlyphRect: + m_X: 458 + m_Y: 6 + m_Width: 26 + m_Height: 28 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 56 + m_Metrics: + m_Width: 38.374996 + m_Height: 27.687498 + m_HorizontalBearingX: -0.74999994 + m_HorizontalBearingY: 27.499998 + m_HorizontalAdvance: 37 + m_GlyphRect: + m_X: 68 + m_Y: 6 + m_Width: 38 + m_Height: 28 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 57 + m_Metrics: + m_Width: 25.999998 + m_Height: 27.499998 + m_HorizontalBearingX: 0.24999999 + m_HorizontalBearingY: 27.499998 + m_HorizontalAdvance: 26.375 + m_GlyphRect: + m_X: 451 + m_Y: 46 + m_Width: 26 + m_Height: 27 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 58 + m_Metrics: + m_Width: 24.812498 + m_Height: 27.499998 + m_HorizontalBearingX: -0.49999997 + m_HorizontalBearingY: 27.499998 + m_HorizontalAdvance: 23.8125 + m_GlyphRect: + m_X: 308 + m_Y: 326 + m_Width: 25 + m_Height: 27 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 59 + m_Metrics: + m_Width: 21.562498 + m_Height: 27.624998 + m_HorizontalBearingX: 1.2499999 + m_HorizontalBearingY: 27.624998 + m_HorizontalAdvance: 24.1875 + m_GlyphRect: + m_X: 275 + m_Y: 397 + m_Width: 22 + m_Height: 28 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 60 + m_Metrics: + m_Width: 8.937499 + m_Height: 34.812496 + m_HorizontalBearingX: 3.4999998 + m_HorizontalBearingY: 29.749998 + m_HorizontalAdvance: 15.8125 + m_GlyphRect: + m_X: 170 + m_Y: 412 + m_Width: 9 + m_Height: 35 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 61 + m_Metrics: + m_Width: 13.249999 + m_Height: 35.437496 + m_HorizontalBearingX: 1.0624999 + m_HorizontalBearingY: 28.937498 + m_HorizontalAdvance: 15.9375 + m_GlyphRect: + m_X: 135 + m_Y: 461 + m_Width: 13 + m_Height: 35 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 62 + m_Metrics: + m_Width: 8.999999 + m_Height: 34.812496 + m_HorizontalBearingX: 3.3124998 + m_HorizontalBearingY: 29.749998 + m_HorizontalAdvance: 15.8125 + m_GlyphRect: + m_X: 174 + m_Y: 458 + m_Width: 9 + m_Height: 35 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 63 + m_Metrics: + m_Width: 18.249998 + m_Height: 22.749998 + m_HorizontalBearingX: 3.1249998 + m_HorizontalBearingY: 27.687498 + m_HorizontalAdvance: 24.625 + m_GlyphRect: + m_X: 368 + m_Y: 125 + m_Width: 18 + m_Height: 23 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 64 + m_Metrics: + m_Width: 31.624998 + m_Height: 2.2499998 + m_HorizontalBearingX: -0.37499997 + m_HorizontalBearingY: -4.4999995 + m_HorizontalAdvance: 30.875 + m_GlyphRect: + m_X: 53 + m_Y: 504 + m_Width: 32 + m_Height: 2 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 65 + m_Metrics: + m_Width: 8.624999 + m_Height: 8.499999 + m_HorizontalBearingX: -0.31249997 + m_HorizontalBearingY: 32.749996 + m_HorizontalAdvance: 12.3125 + m_GlyphRect: + m_X: 408 + m_Y: 497 + m_Width: 9 + m_Height: 8 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 66 + m_Metrics: + m_Width: 18.124998 + m_Height: 21.437498 + m_HorizontalBearingX: 1.6249999 + m_HorizontalBearingY: 20.999998 + m_HorizontalAdvance: 20.75 + m_GlyphRect: + m_X: 398 + m_Y: 126 + m_Width: 18 + m_Height: 21 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 67 + m_Metrics: + m_Width: 20.937498 + m_Height: 30.749998 + m_HorizontalBearingX: -0.12499999 + m_HorizontalBearingY: 30.312498 + m_HorizontalAdvance: 22.4375 + m_GlyphRect: + m_X: 340 + m_Y: 205 + m_Width: 21 + m_Height: 31 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 68 + m_Metrics: + m_Width: 16.187498 + m_Height: 21.499998 + m_HorizontalBearingX: 1.1874999 + m_HorizontalBearingY: 21.124998 + m_HorizontalAdvance: 19 + m_GlyphRect: + m_X: 406 + m_Y: 328 + m_Width: 16 + m_Height: 21 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 69 + m_Metrics: + m_Width: 20.124998 + m_Height: 30.749998 + m_HorizontalBearingX: 1.4999999 + m_HorizontalBearingY: 30.312498 + m_HorizontalAdvance: 23 + m_GlyphRect: + m_X: 215 + m_Y: 392 + m_Width: 20 + m_Height: 31 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 70 + m_Metrics: + m_Width: 17.062498 + m_Height: 21.499998 + m_HorizontalBearingX: 1.5624999 + m_HorizontalBearingY: 21.124998 + m_HorizontalAdvance: 20.125 + m_GlyphRect: + m_X: 424 + m_Y: 162 + m_Width: 17 + m_Height: 21 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 71 + m_Metrics: + m_Width: 14.187499 + m_Height: 30.624998 + m_HorizontalBearingX: 1.1249999 + m_HorizontalBearingY: 30.687498 + m_HorizontalAdvance: 14.8125 + m_GlyphRect: + m_X: 453 + m_Y: 84 + m_Width: 14 + m_Height: 31 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 72 + m_Metrics: + m_Width: 20.562498 + m_Height: 31.124998 + m_HorizontalBearingX: 1.4999999 + m_HorizontalBearingY: 21.187498 + m_HorizontalAdvance: 22.4375 + m_GlyphRect: + m_X: 271 + m_Y: 74 + m_Width: 21 + m_Height: 31 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 73 + m_Metrics: + m_Width: 22.749998 + m_Height: 30.312498 + m_HorizontalBearingX: 0.49999997 + m_HorizontalBearingY: 30.312498 + m_HorizontalAdvance: 24.375 + m_GlyphRect: + m_X: 303 + m_Y: 120 + m_Width: 23 + m_Height: 30 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 74 + m_Metrics: + m_Width: 9.812499 + m_Height: 29.312498 + m_HorizontalBearingX: 1.4999999 + m_HorizontalBearingY: 29.374998 + m_HorizontalAdvance: 12.3125 + m_GlyphRect: + m_X: 426 + m_Y: 237 + m_Width: 10 + m_Height: 29 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 75 + m_Metrics: + m_Width: 9.249999 + m_Height: 38.312496 + m_HorizontalBearingX: -0.43749997 + m_HorizontalBearingY: 29.374998 + m_HorizontalAdvance: 11.75 + m_GlyphRect: + m_X: 496 + m_Y: 7 + m_Width: 9 + m_Height: 38 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 76 + m_Metrics: + m_Width: 22.312498 + m_Height: 30.312498 + m_HorizontalBearingX: 0.68749994 + m_HorizontalBearingY: 30.312498 + m_HorizontalAdvance: 22.1875 + m_GlyphRect: + m_X: 275 + m_Y: 162 + m_Width: 22 + m_Height: 30 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 77 + m_Metrics: + m_Width: 9.999999 + m_Height: 30.312498 + m_HorizontalBearingX: 1.3124999 + m_HorizontalBearingY: 30.312498 + m_HorizontalAdvance: 12.3125 + m_GlyphRect: + m_X: 426 + m_Y: 195 + m_Width: 10 + m_Height: 30 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 78 + m_Metrics: + m_Width: 34.624996 + m_Height: 20.999998 + m_HorizontalBearingX: 1.1874999 + m_HorizontalBearingY: 21.062498 + m_HorizontalAdvance: 36.8125 + m_GlyphRect: + m_X: 166 + m_Y: 6 + m_Width: 35 + m_Height: 21 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 79 + m_Metrics: + m_Width: 22.312498 + m_Height: 20.999998 + m_HorizontalBearingX: 1.1874999 + m_HorizontalBearingY: 21.062498 + m_HorizontalAdvance: 24.5625 + m_GlyphRect: + m_X: 275 + m_Y: 285 + m_Width: 22 + m_Height: 21 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 80 + m_Metrics: + m_Width: 19.124998 + m_Height: 21.499998 + m_HorizontalBearingX: 1.6249999 + m_HorizontalBearingY: 21.124998 + m_HorizontalAdvance: 22.5 + m_GlyphRect: + m_X: 480 + m_Y: 198 + m_Width: 19 + m_Height: 21 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 81 + m_Metrics: + m_Width: 20.624998 + m_Height: 29.999998 + m_HorizontalBearingX: 1.0624999 + m_HorizontalBearingY: 21.124998 + m_HorizontalAdvance: 23.25 + m_GlyphRect: + m_X: 275 + m_Y: 436 + m_Width: 21 + m_Height: 30 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 82 + m_Metrics: + m_Width: 20.499998 + m_Height: 29.999998 + m_HorizontalBearingX: 1.4999999 + m_HorizontalBearingY: 21.124998 + m_HorizontalAdvance: 22.5625 + m_GlyphRect: + m_X: 372 + m_Y: 201 + m_Width: 20 + m_Height: 30 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 83 + m_Metrics: + m_Width: 14.437499 + m_Height: 21.062498 + m_HorizontalBearingX: 1.6874999 + m_HorizontalBearingY: 21.124998 + m_HorizontalAdvance: 16.9375 + m_GlyphRect: + m_X: 426 + m_Y: 361 + m_Width: 14 + m_Height: 21 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 84 + m_Metrics: + m_Width: 14.937499 + m_Height: 21.437498 + m_HorizontalBearingX: 1.9999999 + m_HorizontalBearingY: 20.999998 + m_HorizontalAdvance: 18.6875 + m_GlyphRect: + m_X: 363 + m_Y: 481 + m_Width: 15 + m_Height: 21 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 85 + m_Metrics: + m_Width: 13.312499 + m_Height: 26.249998 + m_HorizontalBearingX: 1.1249999 + m_HorizontalBearingY: 25.874998 + m_HorizontalAdvance: 15.0625 + m_GlyphRect: + m_X: 428 + m_Y: 124 + m_Width: 13 + m_Height: 26 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 86 + m_Metrics: + m_Width: 20.749998 + m_Height: 21.437498 + m_HorizontalBearingX: 1.3124999 + m_HorizontalBearingY: 20.999998 + m_HorizontalAdvance: 23.375 + m_GlyphRect: + m_X: 339 + m_Y: 448 + m_Width: 21 + m_Height: 21 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 87 + m_Metrics: + m_Width: 21.312498 + m_Height: 20.874998 + m_HorizontalBearingX: -0.062499996 + m_HorizontalBearingY: 20.562498 + m_HorizontalAdvance: 21 + m_GlyphRect: + m_X: 447 + m_Y: 197 + m_Width: 21 + m_Height: 21 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 88 + m_Metrics: + m_Width: 31.812498 + m_Height: 20.874998 + m_HorizontalBearingX: -0.31249997 + m_HorizontalBearingY: 20.562498 + m_HorizontalAdvance: 31.0625 + m_GlyphRect: + m_X: 212 + m_Y: 6 + m_Width: 32 + m_Height: 21 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 89 + m_Metrics: + m_Width: 21.624998 + m_Height: 20.562498 + m_HorizontalBearingX: 0.18749999 + m_HorizontalBearingY: 20.562498 + m_HorizontalAdvance: 22 + m_GlyphRect: + m_X: 447 + m_Y: 229 + m_Width: 22 + m_Height: 21 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 90 + m_Metrics: + m_Width: 21.249998 + m_Height: 29.749998 + m_HorizontalBearingX: -0.12499999 + m_HorizontalBearingY: 20.562498 + m_HorizontalAdvance: 21.1875 + m_GlyphRect: + m_X: 270 + m_Y: 32 + m_Width: 21 + m_Height: 30 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 91 + m_Metrics: + m_Width: 18.062498 + m_Height: 20.562498 + m_HorizontalBearingX: 1.0624999 + m_HorizontalBearingY: 20.562498 + m_HorizontalAdvance: 20.5 + m_GlyphRect: + m_X: 483 + m_Y: 260 + m_Width: 18 + m_Height: 21 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 92 + m_Metrics: + m_Width: 13.812499 + m_Height: 34.874996 + m_HorizontalBearingX: 2.0624998 + m_HorizontalBearingY: 29.874998 + m_HorizontalAdvance: 18.8125 + m_GlyphRect: + m_X: 189 + m_Y: 366 + m_Width: 14 + m_Height: 35 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 93 + m_Metrics: + m_Width: 2.9999998 + m_Height: 35.499996 + m_HorizontalBearingX: 6.2499995 + m_HorizontalBearingY: 32.187496 + m_HorizontalAdvance: 15.625 + m_GlyphRect: + m_X: 151 + m_Y: 367 + m_Width: 3 + m_Height: 35 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 94 + m_Metrics: + m_Width: 13.749999 + m_Height: 34.874996 + m_HorizontalBearingX: 2.8124998 + m_HorizontalBearingY: 29.874998 + m_HorizontalAdvance: 18.8125 + m_GlyphRect: + m_X: 190 + m_Y: 412 + m_Width: 14 + m_Height: 35 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 95 + m_Metrics: + m_Width: 17.687498 + m_Height: 5.9374995 + m_HorizontalBearingX: 3.9374998 + m_HorizontalBearingY: 14.062499 + m_HorizontalAdvance: 25.625 + m_GlyphRect: + m_X: 426 + m_Y: 393 + m_Width: 18 + m_Height: 6 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 96 + m_Metrics: + m_Width: 0 + m_Height: 0 + m_HorizontalBearingX: 0 + m_HorizontalBearingY: 0 + m_HorizontalAdvance: 8.75 + m_GlyphRect: + m_X: 6 + m_Y: -5 + m_Width: 0 + m_Height: 0 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 97 + m_Metrics: + m_Width: 5.1874995 + m_Height: 32.624996 + m_HorizontalBearingX: 3.8749998 + m_HorizontalBearingY: 25.937498 + m_HorizontalAdvance: 13.125 + m_GlyphRect: + m_X: 409 + m_Y: 360 + m_Width: 5 + m_Height: 33 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 98 + m_Metrics: + m_Width: 16.249998 + m_Height: 29.624998 + m_HorizontalBearingX: 2.5624998 + m_HorizontalBearingY: 25.312498 + m_HorizontalAdvance: 21.5625 + m_GlyphRect: + m_X: 247 + m_Y: 377 + m_Width: 16 + m_Height: 30 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 99 + m_Metrics: + m_Width: 23.624998 + m_Height: 28.062498 + m_HorizontalBearingX: 1.8124999 + m_HorizontalBearingY: 27.812498 + m_HorizontalAdvance: 27.5 + m_GlyphRect: + m_X: 83 + m_Y: 322 + m_Width: 24 + m_Height: 28 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 100 + m_Metrics: + m_Width: 20.562498 + m_Height: 21.437498 + m_HorizontalBearingX: 3.6249998 + m_HorizontalBearingY: 24.687498 + m_HorizontalAdvance: 27.9375 + m_GlyphRect: + m_X: 479 + m_Y: 102 + m_Width: 21 + m_Height: 21 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 101 + m_Metrics: + m_Width: 24.249998 + m_Height: 27.499998 + m_HorizontalBearingX: 2.0624998 + m_HorizontalBearingY: 27.499998 + m_HorizontalAdvance: 28.4375 + m_GlyphRect: + m_X: 308 + m_Y: 365 + m_Width: 24 + m_Height: 27 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 102 + m_Metrics: + m_Width: 2.9999998 + m_Height: 35.499996 + m_HorizontalBearingX: 6.2499995 + m_HorizontalBearingY: 32.187496 + m_HorizontalAdvance: 15.625 + m_GlyphRect: + m_X: 160 + m_Y: 461 + m_Width: 3 + m_Height: 35 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 103 + m_Metrics: + m_Width: 18.312498 + m_Height: 34.124996 + m_HorizontalBearingX: 3.3124998 + m_HorizontalBearingY: 30.437498 + m_HorizontalAdvance: 24.875 + m_GlyphRect: + m_X: 185 + m_Y: 39 + m_Width: 18 + m_Height: 34 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 104 + m_Metrics: + m_Width: 13.124999 + m_Height: 5.0624995 + m_HorizontalBearingX: 2.6874998 + m_HorizontalBearingY: 29.687498 + m_HorizontalAdvance: 18.5 + m_GlyphRect: + m_X: 455 + m_Y: 415 + m_Width: 13 + m_Height: 5 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 105 + m_Metrics: + m_Width: 31.437498 + m_Height: 31.687498 + m_HorizontalBearingX: 3.4999998 + m_HorizontalBearingY: 33.937496 + m_HorizontalAdvance: 38.5 + m_GlyphRect: + m_X: 6 + m_Y: 273 + m_Width: 31 + m_Height: 32 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 106 + m_Metrics: + m_Width: 16.062498 + m_Height: 17.124998 + m_HorizontalBearingX: 2.1249998 + m_HorizontalBearingY: 29.874998 + m_HorizontalAdvance: 19.1875 + m_GlyphRect: + m_X: 455 + m_Y: 279 + m_Width: 16 + m_Height: 17 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 107 + m_Metrics: + m_Width: 20.312498 + m_Height: 18.437498 + m_HorizontalBearingX: 2.0624998 + m_HorizontalBearingY: 20.437498 + m_HorizontalAdvance: 24.8125 + m_GlyphRect: + m_X: 480 + m_Y: 231 + m_Width: 20 + m_Height: 18 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 108 + m_Metrics: + m_Width: 17.874998 + m_Height: 9.687499 + m_HorizontalBearingX: 3.7499998 + m_HorizontalBearingY: 13.062499 + m_HorizontalAdvance: 25.4375 + m_GlyphRect: + m_X: 483 + m_Y: 292 + m_Width: 18 + m_Height: 10 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 109 + m_Metrics: + m_Width: 14.937499 + m_Height: 2.6874998 + m_HorizontalBearingX: 4.1249995 + m_HorizontalBearingY: 13.249999 + m_HorizontalAdvance: 23.25 + m_GlyphRect: + m_X: 423 + m_Y: 312 + m_Width: 15 + m_Height: 3 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 110 + m_Metrics: + m_Width: 31.437498 + m_Height: 31.687498 + m_HorizontalBearingX: 3.4999998 + m_HorizontalBearingY: 33.937496 + m_HorizontalAdvance: 38.5 + m_GlyphRect: + m_X: 6 + m_Y: 316 + m_Width: 31 + m_Height: 32 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 111 + m_Metrics: + m_Width: 10.124999 + m_Height: 2.6249998 + m_HorizontalBearingX: 0.99999994 + m_HorizontalBearingY: 28.437498 + m_HorizontalAdvance: 12.3125 + m_GlyphRect: + m_X: 253 + m_Y: 491 + m_Width: 10 + m_Height: 3 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 112 + m_Metrics: + m_Width: 12.812499 + m_Height: 12.687499 + m_HorizontalBearingX: 2.1249998 + m_HorizontalBearingY: 29.687498 + m_HorizontalAdvance: 17.125 + m_GlyphRect: + m_X: 460 + m_Y: 458 + m_Width: 13 + m_Height: 13 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 113 + m_Metrics: + m_Width: 16.687498 + m_Height: 20.624998 + m_HorizontalBearingX: 3.8749998 + m_HorizontalBearingY: 20.687498 + m_HorizontalAdvance: 24.4375 + m_GlyphRect: + m_X: 434 + m_Y: 326 + m_Width: 17 + m_Height: 21 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 114 + m_Metrics: + m_Width: 14.624999 + m_Height: 18.812498 + m_HorizontalBearingX: 2.1249998 + m_HorizontalBearingY: 30.312498 + m_HorizontalAdvance: 18.4375 + m_GlyphRect: + m_X: 376 + m_Y: 408 + m_Width: 15 + m_Height: 19 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 115 + m_Metrics: + m_Width: 13.999999 + m_Height: 18.999998 + m_HorizontalBearingX: 2.4374998 + m_HorizontalBearingY: 30.437498 + m_HorizontalAdvance: 18.0625 + m_GlyphRect: + m_X: 388 + m_Y: 438 + m_Width: 14 + m_Height: 19 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 116 + m_Metrics: + m_Width: 8.687499 + m_Height: 8.499999 + m_HorizontalBearingX: 3.7499998 + m_HorizontalBearingY: 32.749996 + m_HorizontalAdvance: 12.3125 + m_GlyphRect: + m_X: 496 + m_Y: 339 + m_Width: 9 + m_Height: 8 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 117 + m_Metrics: + m_Width: 20.937498 + m_Height: 27.624998 + m_HorizontalBearingX: 2.2499998 + m_HorizontalBearingY: 20.937498 + m_HorizontalAdvance: 25.25 + m_GlyphRect: + m_X: 421 + m_Y: 84 + m_Width: 21 + m_Height: 28 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 118 + m_Metrics: + m_Width: 22.624998 + m_Height: 30.874998 + m_HorizontalBearingX: 1.8749999 + m_HorizontalBearingY: 30.937498 + m_HorizontalAdvance: 27.0625 + m_GlyphRect: + m_X: 275 + m_Y: 203 + m_Width: 23 + m_Height: 31 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 119 + m_Metrics: + m_Width: 5.1249995 + m_Height: 5.0624995 + m_HorizontalBearingX: 0.62499994 + m_HorizontalBearingY: 16.687498 + m_HorizontalAdvance: 6.5 + m_GlyphRect: + m_X: 480 + m_Y: 383 + m_Width: 5 + m_Height: 5 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 120 + m_Metrics: + m_Width: 7.4374995 + m_Height: 9.187499 + m_HorizontalBearingX: 0.18749999 + m_HorizontalBearingY: 0.24999999 + m_HorizontalAdvance: 11.125 + m_GlyphRect: + m_X: 389 + m_Y: 497 + m_Width: 7 + m_Height: 9 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 121 + m_Metrics: + m_Width: 12.624999 + m_Height: 19.062498 + m_HorizontalBearingX: 2.9374998 + m_HorizontalBearingY: 30.499998 + m_HorizontalAdvance: 17.9375 + m_GlyphRect: + m_X: 452 + m_Y: 359 + m_Width: 13 + m_Height: 19 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 122 + m_Metrics: + m_Width: 15.437499 + m_Height: 16.874998 + m_HorizontalBearingX: 1.8124999 + m_HorizontalBearingY: 29.624998 + m_HorizontalAdvance: 19.0625 + m_GlyphRect: + m_X: 389 + m_Y: 468 + m_Width: 15 + m_Height: 17 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 123 + m_Metrics: + m_Width: 20.249998 + m_Height: 18.437498 + m_HorizontalBearingX: 2.4374998 + m_HorizontalBearingY: 20.437498 + m_HorizontalAdvance: 24.8125 + m_GlyphRect: + m_X: 423 + m_Y: 283 + m_Width: 20 + m_Height: 18 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 124 + m_Metrics: + m_Width: 39.437496 + m_Height: 32.937496 + m_HorizontalBearingX: 2.9374998 + m_HorizontalBearingY: 30.124998 + m_HorizontalAdvance: 43.5625 + m_GlyphRect: + m_X: 6 + m_Y: 89 + m_Width: 39 + m_Height: 33 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 125 + m_Metrics: + m_Width: 38.749996 + m_Height: 32.937496 + m_HorizontalBearingX: 2.9374998 + m_HorizontalBearingY: 30.124998 + m_HorizontalAdvance: 43.3125 + m_GlyphRect: + m_X: 6 + m_Y: 133 + m_Width: 39 + m_Height: 33 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 126 + m_Metrics: + m_Width: 40.062496 + m_Height: 32.937496 + m_HorizontalBearingX: 2.4374998 + m_HorizontalBearingY: 30.124998 + m_HorizontalAdvance: 43.6875 + m_GlyphRect: + m_X: 6 + m_Y: 45 + m_Width: 40 + m_Height: 33 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 127 + m_Metrics: + m_Width: 15.124999 + m_Height: 33.874996 + m_HorizontalBearingX: 1.2499999 + m_HorizontalBearingY: 26.062498 + m_HorizontalAdvance: 18 + m_GlyphRect: + m_X: 221 + m_Y: 458 + m_Width: 15 + m_Height: 34 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 128 + m_Metrics: + m_Width: 26.562498 + m_Height: 36.312496 + m_HorizontalBearingX: -0.49999997 + m_HorizontalBearingY: 36.312496 + m_HorizontalAdvance: 25.625 + m_GlyphRect: + m_X: 6 + m_Y: 360 + m_Width: 27 + m_Height: 36 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 129 + m_Metrics: + m_Width: 26.562498 + m_Height: 36.312496 + m_HorizontalBearingX: -0.49999997 + m_HorizontalBearingY: 36.312496 + m_HorizontalAdvance: 25.625 + m_GlyphRect: + m_X: 6 + m_Y: 408 + m_Width: 27 + m_Height: 36 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 130 + m_Metrics: + m_Width: 26.562498 + m_Height: 36.312496 + m_HorizontalBearingX: -0.49999997 + m_HorizontalBearingY: 36.374996 + m_HorizontalAdvance: 25.625 + m_GlyphRect: + m_X: 6 + m_Y: 456 + m_Width: 27 + m_Height: 36 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 131 + m_Metrics: + m_Width: 26.562498 + m_Height: 35.312496 + m_HorizontalBearingX: -0.49999997 + m_HorizontalBearingY: 35.374996 + m_HorizontalAdvance: 25.625 + m_GlyphRect: + m_X: 86 + m_Y: 133 + m_Width: 27 + m_Height: 35 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 132 + m_Metrics: + m_Width: 26.562498 + m_Height: 35.374996 + m_HorizontalBearingX: -0.49999997 + m_HorizontalBearingY: 35.374996 + m_HorizontalAdvance: 25.625 + m_GlyphRect: + m_X: 83 + m_Y: 180 + m_Width: 27 + m_Height: 35 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 133 + m_Metrics: + m_Width: 26.562498 + m_Height: 36.374996 + m_HorizontalBearingX: -0.49999997 + m_HorizontalBearingY: 36.374996 + m_HorizontalAdvance: 25.625 + m_GlyphRect: + m_X: 86 + m_Y: 85 + m_Width: 27 + m_Height: 36 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 134 + m_Metrics: + m_Width: 36.937496 + m_Height: 27.499998 + m_HorizontalBearingX: -3.3124998 + m_HorizontalBearingY: 27.499998 + m_HorizontalAdvance: 34.0625 + m_GlyphRect: + m_X: 118 + m_Y: 7 + m_Width: 37 + m_Height: 27 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 135 + m_Metrics: + m_Width: 21.562498 + m_Height: 36.749996 + m_HorizontalBearingX: 1.1874999 + m_HorizontalBearingY: 27.812498 + m_HorizontalAdvance: 24.1875 + m_GlyphRect: + m_X: 124 + m_Y: 134 + m_Width: 22 + m_Height: 37 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 136 + m_Metrics: + m_Width: 21.624998 + m_Height: 36.312496 + m_HorizontalBearingX: 1.6874999 + m_HorizontalBearingY: 36.312496 + m_HorizontalAdvance: 24.0625 + m_GlyphRect: + m_X: 81 + m_Y: 364 + m_Width: 22 + m_Height: 36 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 137 + m_Metrics: + m_Width: 21.624998 + m_Height: 36.312496 + m_HorizontalBearingX: 1.6874999 + m_HorizontalBearingY: 36.312496 + m_HorizontalAdvance: 24.0625 + m_GlyphRect: + m_X: 157 + m_Y: 85 + m_Width: 22 + m_Height: 36 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 138 + m_Metrics: + m_Width: 21.624998 + m_Height: 36.312496 + m_HorizontalBearingX: 1.6874999 + m_HorizontalBearingY: 36.374996 + m_HorizontalAdvance: 24.0625 + m_GlyphRect: + m_X: 157 + m_Y: 133 + m_Width: 22 + m_Height: 36 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 139 + m_Metrics: + m_Width: 21.624998 + m_Height: 35.374996 + m_HorizontalBearingX: 1.6874999 + m_HorizontalBearingY: 35.374996 + m_HorizontalAdvance: 24.0625 + m_GlyphRect: + m_X: 215 + m_Y: 39 + m_Width: 22 + m_Height: 35 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 140 + m_Metrics: + m_Width: 10.874999 + m_Height: 36.312496 + m_HorizontalBearingX: 1.9374999 + m_HorizontalBearingY: 36.312496 + m_HorizontalAdvance: 14.9375 + m_GlyphRect: + m_X: 248 + m_Y: 39 + m_Width: 11 + m_Height: 36 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 141 + m_Metrics: + m_Width: 10.874999 + m_Height: 36.312496 + m_HorizontalBearingX: 1.9374999 + m_HorizontalBearingY: 36.312496 + m_HorizontalAdvance: 14.9375 + m_GlyphRect: + m_X: 155 + m_Y: 279 + m_Width: 11 + m_Height: 36 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 142 + m_Metrics: + m_Width: 12.937499 + m_Height: 36.312496 + m_HorizontalBearingX: 0.99999994 + m_HorizontalBearingY: 36.374996 + m_HorizontalAdvance: 14.9375 + m_GlyphRect: + m_X: 247 + m_Y: 87 + m_Width: 13 + m_Height: 36 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 143 + m_Metrics: + m_Width: 13.687499 + m_Height: 35.374996 + m_HorizontalBearingX: 0.62499994 + m_HorizontalBearingY: 35.374996 + m_HorizontalAdvance: 14.9375 + m_GlyphRect: + m_X: 145 + m_Y: 414 + m_Width: 14 + m_Height: 35 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 144 + m_Metrics: + m_Width: 25.124998 + m_Height: 28.124998 + m_HorizontalBearingX: 1.6874999 + m_HorizontalBearingY: 27.812498 + m_HorizontalAdvance: 28.0625 + m_GlyphRect: + m_X: 340 + m_Y: 46 + m_Width: 25 + m_Height: 28 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 145 + m_Metrics: + m_Width: 26.749998 + m_Height: 35.312496 + m_HorizontalBearingX: 1.8124999 + m_HorizontalBearingY: 35.374996 + m_HorizontalAdvance: 29.5625 + m_GlyphRect: + m_X: 83 + m_Y: 227 + m_Width: 27 + m_Height: 35 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 146 + m_Metrics: + m_Width: 24.249998 + m_Height: 36.749996 + m_HorizontalBearingX: 1.2499999 + m_HorizontalBearingY: 36.312496 + m_HorizontalAdvance: 26.6875 + m_GlyphRect: + m_X: 121 + m_Y: 182 + m_Width: 24 + m_Height: 37 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 147 + m_Metrics: + m_Width: 24.249998 + m_Height: 36.749996 + m_HorizontalBearingX: 1.2499999 + m_HorizontalBearingY: 36.312496 + m_HorizontalAdvance: 26.6875 + m_GlyphRect: + m_X: 121 + m_Y: 230 + m_Width: 24 + m_Height: 37 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 148 + m_Metrics: + m_Width: 24.249998 + m_Height: 36.749996 + m_HorizontalBearingX: 1.2499999 + m_HorizontalBearingY: 36.374996 + m_HorizontalAdvance: 26.6875 + m_GlyphRect: + m_X: 44 + m_Y: 411 + m_Width: 24 + m_Height: 37 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 149 + m_Metrics: + m_Width: 24.249998 + m_Height: 35.749996 + m_HorizontalBearingX: 1.2499999 + m_HorizontalBearingY: 35.374996 + m_HorizontalAdvance: 26.6875 + m_GlyphRect: + m_X: 109 + m_Y: 413 + m_Width: 24 + m_Height: 36 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 150 + m_Metrics: + m_Width: 24.249998 + m_Height: 35.812496 + m_HorizontalBearingX: 1.2499999 + m_HorizontalBearingY: 35.374996 + m_HorizontalAdvance: 26.6875 + m_GlyphRect: + m_X: 99 + m_Y: 460 + m_Width: 24 + m_Height: 36 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 151 + m_Metrics: + m_Width: 16.312498 + m_Height: 16.562498 + m_HorizontalBearingX: 3.0624998 + m_HorizontalBearingY: 19.437498 + m_HorizontalAdvance: 22.5625 + m_GlyphRect: + m_X: 402 + m_Y: 410 + m_Width: 16 + m_Height: 17 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 152 + m_Metrics: + m_Width: 24.249998 + m_Height: 34.937496 + m_HorizontalBearingX: 1.2499999 + m_HorizontalBearingY: 31.062498 + m_HorizontalAdvance: 26.75 + m_GlyphRect: + m_X: 157 + m_Y: 228 + m_Width: 24 + m_Height: 35 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 153 + m_Metrics: + m_Width: 25.937498 + m_Height: 36.624996 + m_HorizontalBearingX: 0.87499994 + m_HorizontalBearingY: 36.312496 + m_HorizontalAdvance: 27.375 + m_GlyphRect: + m_X: 81 + m_Y: 273 + m_Width: 26 + m_Height: 37 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 154 + m_Metrics: + m_Width: 25.937498 + m_Height: 36.624996 + m_HorizontalBearingX: 0.87499994 + m_HorizontalBearingY: 36.312496 + m_HorizontalAdvance: 27.375 + m_GlyphRect: + m_X: 118 + m_Y: 278 + m_Width: 26 + m_Height: 37 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 155 + m_Metrics: + m_Width: 25.937498 + m_Height: 36.624996 + m_HorizontalBearingX: 0.87499994 + m_HorizontalBearingY: 36.374996 + m_HorizontalAdvance: 27.375 + m_GlyphRect: + m_X: 44 + m_Y: 363 + m_Width: 26 + m_Height: 37 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 156 + m_Metrics: + m_Width: 25.937498 + m_Height: 35.687496 + m_HorizontalBearingX: 0.87499994 + m_HorizontalBearingY: 35.374996 + m_HorizontalAdvance: 27.375 + m_GlyphRect: + m_X: 114 + m_Y: 366 + m_Width: 26 + m_Height: 36 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 157 + m_Metrics: + m_Width: 24.812498 + m_Height: 36.312496 + m_HorizontalBearingX: -0.49999997 + m_HorizontalBearingY: 36.312496 + m_HorizontalAdvance: 23.8125 + m_GlyphRect: + m_X: 157 + m_Y: 181 + m_Width: 25 + m_Height: 36 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 158 + m_Metrics: + m_Width: 21.124998 + m_Height: 27.499998 + m_HorizontalBearingX: 1.6249999 + m_HorizontalBearingY: 27.562498 + m_HorizontalAdvance: 23.875 + m_GlyphRect: + m_X: 343 + m_Y: 409 + m_Width: 21 + m_Height: 27 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 159 + m_Metrics: + m_Width: 21.749998 + m_Height: 29.437498 + m_HorizontalBearingX: 0.87499994 + m_HorizontalBearingY: 29.062498 + m_HorizontalAdvance: 23.5 + m_GlyphRect: + m_X: 275 + m_Y: 318 + m_Width: 22 + m_Height: 29 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 160 + m_Metrics: + m_Width: 18.124998 + m_Height: 33.124996 + m_HorizontalBearingX: 1.6249999 + m_HorizontalBearingY: 32.749996 + m_HorizontalAdvance: 20.75 + m_GlyphRect: + m_X: 215 + m_Y: 222 + m_Width: 18 + m_Height: 33 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 161 + m_Metrics: + m_Width: 18.124998 + m_Height: 33.187496 + m_HorizontalBearingX: 1.6249999 + m_HorizontalBearingY: 32.749996 + m_HorizontalAdvance: 20.75 + m_GlyphRect: + m_X: 245 + m_Y: 176 + m_Width: 18 + m_Height: 33 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 162 + m_Metrics: + m_Width: 18.124998 + m_Height: 32.249996 + m_HorizontalBearingX: 1.6249999 + m_HorizontalBearingY: 31.874998 + m_HorizontalAdvance: 20.75 + m_GlyphRect: + m_X: 56 + m_Y: 134 + m_Width: 18 + m_Height: 32 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 163 + m_Metrics: + m_Width: 18.124998 + m_Height: 30.249998 + m_HorizontalBearingX: 1.6249999 + m_HorizontalBearingY: 29.812498 + m_HorizontalAdvance: 20.75 + m_GlyphRect: + m_X: 245 + m_Y: 336 + m_Width: 18 + m_Height: 30 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 164 + m_Metrics: + m_Width: 18.124998 + m_Height: 29.812498 + m_HorizontalBearingX: 1.6249999 + m_HorizontalBearingY: 29.437498 + m_HorizontalAdvance: 20.75 + m_GlyphRect: + m_X: 376 + m_Y: 283 + m_Width: 18 + m_Height: 30 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 165 + m_Metrics: + m_Width: 18.124998 + m_Height: 34.249996 + m_HorizontalBearingX: 1.6249999 + m_HorizontalBearingY: 33.812496 + m_HorizontalAdvance: 20.75 + m_GlyphRect: + m_X: 215 + m_Y: 176 + m_Width: 18 + m_Height: 34 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 166 + m_Metrics: + m_Width: 29.187498 + m_Height: 21.499998 + m_HorizontalBearingX: 1.4999999 + m_HorizontalBearingY: 21.124998 + m_HorizontalAdvance: 32.125 + m_GlyphRect: + m_X: 303 + m_Y: 7 + m_Width: 29 + m_Height: 21 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 167 + m_Metrics: + m_Width: 16.187498 + m_Height: 29.999998 + m_HorizontalBearingX: 1.1874999 + m_HorizontalBearingY: 21.124998 + m_HorizontalAdvance: 19 + m_GlyphRect: + m_X: 393 + m_Y: 84 + m_Width: 16 + m_Height: 30 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 168 + m_Metrics: + m_Width: 17.062498 + m_Height: 33.124996 + m_HorizontalBearingX: 1.5624999 + m_HorizontalBearingY: 32.749996 + m_HorizontalAdvance: 20.125 + m_GlyphRect: + m_X: 488 + m_Y: 57 + m_Width: 17 + m_Height: 33 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 169 + m_Metrics: + m_Width: 17.062498 + m_Height: 33.187496 + m_HorizontalBearingX: 1.5624999 + m_HorizontalBearingY: 32.749996 + m_HorizontalAdvance: 20.125 + m_GlyphRect: + m_X: 309 + m_Y: 162 + m_Width: 17 + m_Height: 33 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 170 + m_Metrics: + m_Width: 17.062498 + m_Height: 32.249996 + m_HorizontalBearingX: 1.5624999 + m_HorizontalBearingY: 31.874998 + m_HorizontalAdvance: 20.125 + m_GlyphRect: + m_X: 57 + m_Y: 90 + m_Width: 17 + m_Height: 32 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 171 + m_Metrics: + m_Width: 17.062498 + m_Height: 29.812498 + m_HorizontalBearingX: 1.5624999 + m_HorizontalBearingY: 29.437498 + m_HorizontalAdvance: 20.125 + m_GlyphRect: + m_X: 377 + m_Y: 324 + m_Width: 17 + m_Height: 30 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 172 + m_Metrics: + m_Width: 11.312499 + m_Height: 32.687496 + m_HorizontalBearingX: 0 + m_HorizontalBearingY: 32.749996 + m_HorizontalAdvance: 12.3125 + m_GlyphRect: + m_X: 76 + m_Y: 459 + m_Width: 11 + m_Height: 33 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 173 + m_Metrics: + m_Width: 10.437499 + m_Height: 32.749996 + m_HorizontalBearingX: 1.4999999 + m_HorizontalBearingY: 32.749996 + m_HorizontalAdvance: 12.3125 + m_GlyphRect: + m_X: 404 + m_Y: 199 + m_Width: 10 + m_Height: 33 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 174 + m_Metrics: + m_Width: 13.374999 + m_Height: 31.812498 + m_HorizontalBearingX: -0.62499994 + m_HorizontalBearingY: 31.874998 + m_HorizontalAdvance: 12.3125 + m_GlyphRect: + m_X: 185 + m_Y: 323 + m_Width: 13 + m_Height: 32 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 175 + m_Metrics: + m_Width: 12.999999 + m_Height: 29.374998 + m_HorizontalBearingX: -0.37499997 + m_HorizontalBearingY: 29.437498 + m_HorizontalAdvance: 12.3125 + m_GlyphRect: + m_X: 400 + m_Y: 159 + m_Width: 13 + m_Height: 29 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 176 + m_Metrics: + m_Width: 18.624998 + m_Height: 33.874996 + m_HorizontalBearingX: 1.4374999 + m_HorizontalBearingY: 33.499996 + m_HorizontalAdvance: 21.5 + m_GlyphRect: + m_X: 245 + m_Y: 220 + m_Width: 19 + m_Height: 34 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 177 + m_Metrics: + m_Width: 22.312498 + m_Height: 29.812498 + m_HorizontalBearingX: 1.1874999 + m_HorizontalBearingY: 29.812498 + m_HorizontalAdvance: 24.5625 + m_GlyphRect: + m_X: 210 + m_Y: 307 + m_Width: 22 + m_Height: 30 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 178 + m_Metrics: + m_Width: 19.124998 + m_Height: 33.124996 + m_HorizontalBearingX: 1.6249999 + m_HorizontalBearingY: 32.749996 + m_HorizontalAdvance: 22.5 + m_GlyphRect: + m_X: 338 + m_Y: 161 + m_Width: 19 + m_Height: 33 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 179 + m_Metrics: + m_Width: 19.124998 + m_Height: 33.187496 + m_HorizontalBearingX: 1.6249999 + m_HorizontalBearingY: 32.749996 + m_HorizontalAdvance: 22.5 + m_GlyphRect: + m_X: 177 + m_Y: 279 + m_Width: 19 + m_Height: 33 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 180 + m_Metrics: + m_Width: 19.124998 + m_Height: 32.249996 + m_HorizontalBearingX: 1.6249999 + m_HorizontalBearingY: 31.874998 + m_HorizontalAdvance: 22.5 + m_GlyphRect: + m_X: 214 + m_Y: 349 + m_Width: 19 + m_Height: 32 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 181 + m_Metrics: + m_Width: 19.124998 + m_Height: 30.249998 + m_HorizontalBearingX: 1.6249999 + m_HorizontalBearingY: 29.812498 + m_HorizontalAdvance: 22.5 + m_GlyphRect: + m_X: 369 + m_Y: 160 + m_Width: 19 + m_Height: 30 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 182 + m_Metrics: + m_Width: 19.124998 + m_Height: 29.812498 + m_HorizontalBearingX: 1.6249999 + m_HorizontalBearingY: 29.437498 + m_HorizontalAdvance: 22.5 + m_GlyphRect: + m_X: 373 + m_Y: 242 + m_Width: 19 + m_Height: 30 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 183 + m_Metrics: + m_Width: 16.874998 + m_Height: 19.999998 + m_HorizontalBearingX: 3.8749998 + m_HorizontalBearingY: 21.999998 + m_HorizontalAdvance: 24.625 + m_GlyphRect: + m_X: 478 + m_Y: 134 + m_Width: 17 + m_Height: 20 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 184 + m_Metrics: + m_Width: 19.124998 + m_Height: 28.249998 + m_HorizontalBearingX: 1.4999999 + m_HorizontalBearingY: 24.312498 + m_HorizontalAdvance: 22.1875 + m_GlyphRect: + m_X: 275 + m_Y: 478 + m_Width: 19 + m_Height: 28 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 185 + m_Metrics: + m_Width: 20.749998 + m_Height: 33.124996 + m_HorizontalBearingX: 1.3124999 + m_HorizontalBearingY: 32.749996 + m_HorizontalAdvance: 23.375 + m_GlyphRect: + m_X: 215 + m_Y: 86 + m_Width: 21 + m_Height: 33 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 186 + m_Metrics: + m_Width: 20.749998 + m_Height: 33.187496 + m_HorizontalBearingX: 1.3124999 + m_HorizontalBearingY: 32.749996 + m_HorizontalAdvance: 23.375 + m_GlyphRect: + m_X: 215 + m_Y: 131 + m_Width: 21 + m_Height: 33 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 187 + m_Metrics: + m_Width: 20.749998 + m_Height: 32.249996 + m_HorizontalBearingX: 1.3124999 + m_HorizontalBearingY: 31.874998 + m_HorizontalAdvance: 23.375 + m_GlyphRect: + m_X: 44 + m_Y: 460 + m_Width: 21 + m_Height: 32 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 188 + m_Metrics: + m_Width: 20.749998 + m_Height: 29.812498 + m_HorizontalBearingX: 1.3124999 + m_HorizontalBearingY: 29.437498 + m_HorizontalAdvance: 23.375 + m_GlyphRect: + m_X: 377 + m_Y: 365 + m_Width: 21 + m_Height: 30 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 189 + m_Metrics: + m_Width: 21.249998 + m_Height: 41.937496 + m_HorizontalBearingX: -0.12499999 + m_HorizontalBearingY: 32.749996 + m_HorizontalAdvance: 21.1875 + m_GlyphRect: + m_X: 50 + m_Y: 177 + m_Width: 21 + m_Height: 42 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 190 + m_Metrics: + m_Width: 20.999998 + m_Height: 39.249996 + m_HorizontalBearingX: -0.062499996 + m_HorizontalBearingY: 30.312498 + m_HorizontalAdvance: 22.5 + m_GlyphRect: + m_X: 49 + m_Y: 274 + m_Width: 21 + m_Height: 39 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 191 + m_Metrics: + m_Width: 21.249998 + m_Height: 38.562496 + m_HorizontalBearingX: -0.12499999 + m_HorizontalBearingY: 29.437498 + m_HorizontalAdvance: 21.1875 + m_GlyphRect: + m_X: 124 + m_Y: 84 + m_Width: 21 + m_Height: 39 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 192 + m_Metrics: + m_Width: 0 + m_Height: 0 + m_HorizontalBearingX: 0 + m_HorizontalBearingY: 0 + m_HorizontalAdvance: 18.5 + m_GlyphRect: + m_X: 6 + m_Y: -5 + m_Width: 0 + m_Height: 0 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 193 + m_Metrics: + m_Width: 0 + m_Height: 0 + m_HorizontalBearingX: 0 + m_HorizontalBearingY: 0 + m_HorizontalAdvance: 5.5625 + m_GlyphRect: + m_X: 6 + m_Y: -5 + m_Width: 0 + m_Height: 0 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 194 + m_Metrics: + m_Width: 0 + m_Height: 0 + m_HorizontalBearingX: 0 + m_HorizontalBearingY: 0 + m_HorizontalAdvance: 2.25 + m_GlyphRect: + m_X: 6 + m_Y: -5 + m_Width: 0 + m_Height: 0 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 195 + m_Metrics: + m_Width: 0 + m_Height: 0 + m_HorizontalBearingX: 0 + m_HorizontalBearingY: 0 + m_HorizontalAdvance: 0 + m_GlyphRect: + m_X: 6 + m_Y: -5 + m_Width: 0 + m_Height: 0 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 196 + m_Metrics: + m_Width: 0 + m_Height: 0 + m_HorizontalBearingX: 0 + m_HorizontalBearingY: 0 + m_HorizontalAdvance: 0 + m_GlyphRect: + m_X: 6 + m_Y: -5 + m_Width: 0 + m_Height: 0 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 197 + m_Metrics: + m_Width: 0 + m_Height: 0 + m_HorizontalBearingX: 0 + m_HorizontalBearingY: 0 + m_HorizontalAdvance: 0 + m_GlyphRect: + m_X: 6 + m_Y: -5 + m_Width: 0 + m_Height: 0 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 198 + m_Metrics: + m_Width: 21.812498 + m_Height: 2.6874998 + m_HorizontalBearingX: 4.1249995 + m_HorizontalBearingY: 13.249999 + m_HorizontalAdvance: 30.125 + m_GlyphRect: + m_X: 194 + m_Y: 503 + m_Width: 22 + m_Height: 3 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 199 + m_Metrics: + m_Width: 35.562496 + m_Height: 2.6874998 + m_HorizontalBearingX: 4.1249995 + m_HorizontalBearingY: 13.249999 + m_HorizontalAdvance: 43.875 + m_GlyphRect: + m_X: 6 + m_Y: 503 + m_Width: 36 + m_Height: 3 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 200 + m_Metrics: + m_Width: 5.7499995 + m_Height: 15.374999 + m_HorizontalBearingX: 4.0624995 + m_HorizontalBearingY: 31.374998 + m_HorizontalAdvance: 14.125 + m_GlyphRect: + m_X: 443 + m_Y: 464 + m_Width: 6 + m_Height: 15 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 201 + m_Metrics: + m_Width: 5.7499995 + m_Height: 15.499999 + m_HorizontalBearingX: 4.2499995 + m_HorizontalBearingY: 31.062498 + m_HorizontalAdvance: 14.125 + m_GlyphRect: + m_X: 470 + m_Y: 483 + m_Width: 6 + m_Height: 15 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 202 + m_Metrics: + m_Width: 5.7499995 + m_Height: 15.437499 + m_HorizontalBearingX: 4.2499995 + m_HorizontalBearingY: 5.8124995 + m_HorizontalAdvance: 14.125 + m_GlyphRect: + m_X: 462 + m_Y: 327 + m_Width: 6 + m_Height: 15 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 203 + m_Metrics: + m_Width: 5.7499995 + m_Height: 15.437499 + m_HorizontalBearingX: 4.0624995 + m_HorizontalBearingY: 31.312498 + m_HorizontalAdvance: 14.125 + m_GlyphRect: + m_X: 479 + m_Y: 314 + m_Width: 6 + m_Height: 15 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 204 + m_Metrics: + m_Width: 15.499999 + m_Height: 15.374999 + m_HorizontalBearingX: 4.0624995 + m_HorizontalBearingY: 31.374998 + m_HorizontalAdvance: 23.8125 + m_GlyphRect: + m_X: 416 + m_Y: 469 + m_Width: 15 + m_Height: 15 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 205 + m_Metrics: + m_Width: 15.499999 + m_Height: 15.437499 + m_HorizontalBearingX: 4.2499995 + m_HorizontalBearingY: 31.312498 + m_HorizontalAdvance: 23.8125 + m_GlyphRect: + m_X: 457 + m_Y: 432 + m_Width: 15 + m_Height: 15 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 206 + m_Metrics: + m_Width: 15.499999 + m_Height: 15.437499 + m_HorizontalBearingX: 4.2499995 + m_HorizontalBearingY: 6.1874995 + m_HorizontalAdvance: 23.8125 + m_GlyphRect: + m_X: 443 + m_Y: 491 + m_Width: 15 + m_Height: 15 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 207 + m_Metrics: + m_Width: 13.562499 + m_Height: 27.937498 + m_HorizontalBearingX: 2.8749998 + m_HorizontalBearingY: 29.874998 + m_HorizontalAdvance: 19.4375 + m_GlyphRect: + m_X: 453 + m_Y: 126 + m_Width: 14 + m_Height: 28 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 208 + m_Metrics: + m_Width: 13.687499 + m_Height: 37.812496 + m_HorizontalBearingX: 2.8749998 + m_HorizontalBearingY: 29.874998 + m_HorizontalAdvance: 19.4375 + m_GlyphRect: + m_X: 190 + m_Y: 84 + m_Width: 14 + m_Height: 38 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 209 + m_Metrics: + m_Width: 7.0624995 + m_Height: 7.3124995 + m_HorizontalBearingX: 4.1249995 + m_HorizontalBearingY: 16.124998 + m_HorizontalAdvance: 15.375 + m_GlyphRect: + m_X: 455 + m_Y: 308 + m_Width: 7 + m_Height: 7 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 210 + m_Metrics: + m_Width: 24.687498 + m_Height: 5.0624995 + m_HorizontalBearingX: 2.3124998 + m_HorizontalBearingY: 4.7499995 + m_HorizontalAdvance: 29.3125 + m_GlyphRect: + m_X: 447 + m_Y: 262 + m_Width: 25 + m_Height: 5 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 211 + m_Metrics: + m_Width: 50.687496 + m_Height: 27.812498 + m_HorizontalBearingX: 1.9374999 + m_HorizontalBearingY: 27.812498 + m_HorizontalAdvance: 54.6875 + m_GlyphRect: + m_X: 6 + m_Y: 6 + m_Width: 51 + m_Height: 28 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 212 + m_Metrics: + m_Width: 5.6874995 + m_Height: 11.812499 + m_HorizontalBearingX: 3.8124998 + m_HorizontalBearingY: 32.374996 + m_HorizontalAdvance: 12.4375 + m_GlyphRect: + m_X: 491 + m_Y: 358 + m_Width: 6 + m_Height: 12 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 213 + m_Metrics: + m_Width: 13.937499 + m_Height: 11.812499 + m_HorizontalBearingX: 3.8124998 + m_HorizontalBearingY: 32.374996 + m_HorizontalAdvance: 20.75 + m_GlyphRect: + m_X: 430 + m_Y: 410 + m_Width: 14 + m_Height: 12 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 214 + m_Metrics: + m_Width: 10.437499 + m_Height: 18.437498 + m_HorizontalBearingX: 2.0624998 + m_HorizontalBearingY: 20.437498 + m_HorizontalAdvance: 14.9375 + m_GlyphRect: + m_X: 413 + m_Y: 439 + m_Width: 10 + m_Height: 18 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 215 + m_Metrics: + m_Width: 10.437499 + m_Height: 18.437498 + m_HorizontalBearingX: 2.4374998 + m_HorizontalBearingY: 20.437498 + m_HorizontalAdvance: 14.9375 + m_GlyphRect: + m_X: 435 + m_Y: 434 + m_Width: 10 + m_Height: 18 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 216 + m_Metrics: + m_Width: 16.624998 + m_Height: 33.062496 + m_HorizontalBearingX: 3.9374998 + m_HorizontalBearingY: 32.687496 + m_HorizontalAdvance: 24.4375 + m_GlyphRect: + m_X: 275 + m_Y: 117 + m_Width: 17 + m_Height: 33 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 217 + m_Metrics: + m_Width: 15.999999 + m_Height: 32.937496 + m_HorizontalBearingX: -4.5624995 + m_HorizontalBearingY: 30.124998 + m_HorizontalAdvance: 6.9375 + m_GlyphRect: + m_X: 248 + m_Y: 447 + m_Width: 16 + m_Height: 33 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 218 + m_Metrics: + m_Width: 23.749998 + m_Height: 28.749998 + m_HorizontalBearingX: 0.81249994 + m_HorizontalBearingY: 28.249998 + m_HorizontalAdvance: 25.8125 + m_GlyphRect: + m_X: 308 + m_Y: 403 + m_Width: 24 + m_Height: 29 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 219 + m_Metrics: + m_Width: 36.437496 + m_Height: 14.374999 + m_HorizontalBearingX: 2.4374998 + m_HorizontalBearingY: 28.124998 + m_HorizontalAdvance: 41.125 + m_GlyphRect: + m_X: 255 + m_Y: 7 + m_Width: 36 + m_Height: 14 + m_Scale: 1 + m_AtlasIndex: 0 + m_CharacterTable: + - m_ElementType: 1 + m_Unicode: 32 + m_GlyphIndex: 1 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 33 + m_GlyphIndex: 2 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 34 + m_GlyphIndex: 3 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 35 + m_GlyphIndex: 4 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 36 + m_GlyphIndex: 5 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 37 + m_GlyphIndex: 6 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 38 + m_GlyphIndex: 7 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 39 + m_GlyphIndex: 8 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 40 + m_GlyphIndex: 9 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 41 + m_GlyphIndex: 10 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 42 + m_GlyphIndex: 11 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 43 + m_GlyphIndex: 12 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 44 + m_GlyphIndex: 13 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 45 + m_GlyphIndex: 14 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 46 + m_GlyphIndex: 15 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 47 + m_GlyphIndex: 16 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 48 + m_GlyphIndex: 17 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 49 + m_GlyphIndex: 18 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 50 + m_GlyphIndex: 19 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 51 + m_GlyphIndex: 20 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 52 + m_GlyphIndex: 21 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 53 + m_GlyphIndex: 22 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 54 + m_GlyphIndex: 23 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 55 + m_GlyphIndex: 24 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 56 + m_GlyphIndex: 25 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 57 + m_GlyphIndex: 26 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 58 + m_GlyphIndex: 27 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 59 + m_GlyphIndex: 28 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 60 + m_GlyphIndex: 29 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 61 + m_GlyphIndex: 30 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 62 + m_GlyphIndex: 31 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 63 + m_GlyphIndex: 32 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 64 + m_GlyphIndex: 33 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 65 + m_GlyphIndex: 34 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 66 + m_GlyphIndex: 35 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 67 + m_GlyphIndex: 36 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 68 + m_GlyphIndex: 37 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 69 + m_GlyphIndex: 38 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 70 + m_GlyphIndex: 39 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 71 + m_GlyphIndex: 40 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 72 + m_GlyphIndex: 41 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 73 + m_GlyphIndex: 42 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 74 + m_GlyphIndex: 43 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 75 + m_GlyphIndex: 44 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 76 + m_GlyphIndex: 45 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 77 + m_GlyphIndex: 46 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 78 + m_GlyphIndex: 47 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 79 + m_GlyphIndex: 48 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 80 + m_GlyphIndex: 49 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 81 + m_GlyphIndex: 50 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 82 + m_GlyphIndex: 51 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 83 + m_GlyphIndex: 52 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 84 + m_GlyphIndex: 53 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 85 + m_GlyphIndex: 54 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 86 + m_GlyphIndex: 55 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 87 + m_GlyphIndex: 56 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 88 + m_GlyphIndex: 57 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 89 + m_GlyphIndex: 58 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 90 + m_GlyphIndex: 59 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 91 + m_GlyphIndex: 60 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 92 + m_GlyphIndex: 61 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 93 + m_GlyphIndex: 62 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 94 + m_GlyphIndex: 63 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 95 + m_GlyphIndex: 64 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 96 + m_GlyphIndex: 65 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 97 + m_GlyphIndex: 66 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 98 + m_GlyphIndex: 67 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 99 + m_GlyphIndex: 68 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 100 + m_GlyphIndex: 69 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 101 + m_GlyphIndex: 70 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 102 + m_GlyphIndex: 71 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 103 + m_GlyphIndex: 72 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 104 + m_GlyphIndex: 73 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 105 + m_GlyphIndex: 74 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 106 + m_GlyphIndex: 75 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 107 + m_GlyphIndex: 76 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 108 + m_GlyphIndex: 77 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 109 + m_GlyphIndex: 78 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 110 + m_GlyphIndex: 79 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 111 + m_GlyphIndex: 80 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 112 + m_GlyphIndex: 81 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 113 + m_GlyphIndex: 82 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 114 + m_GlyphIndex: 83 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 115 + m_GlyphIndex: 84 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 116 + m_GlyphIndex: 85 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 117 + m_GlyphIndex: 86 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 118 + m_GlyphIndex: 87 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 119 + m_GlyphIndex: 88 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 120 + m_GlyphIndex: 89 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 121 + m_GlyphIndex: 90 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 122 + m_GlyphIndex: 91 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 123 + m_GlyphIndex: 92 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 124 + m_GlyphIndex: 93 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 125 + m_GlyphIndex: 94 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 126 + m_GlyphIndex: 95 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 160 + m_GlyphIndex: 96 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 161 + m_GlyphIndex: 97 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 162 + m_GlyphIndex: 98 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 163 + m_GlyphIndex: 99 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 164 + m_GlyphIndex: 100 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 165 + m_GlyphIndex: 101 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 166 + m_GlyphIndex: 102 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 167 + m_GlyphIndex: 103 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 168 + m_GlyphIndex: 104 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 169 + m_GlyphIndex: 105 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 170 + m_GlyphIndex: 106 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 171 + m_GlyphIndex: 107 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 172 + m_GlyphIndex: 108 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 173 + m_GlyphIndex: 109 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 174 + m_GlyphIndex: 110 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 175 + m_GlyphIndex: 111 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 176 + m_GlyphIndex: 112 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 177 + m_GlyphIndex: 113 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 178 + m_GlyphIndex: 114 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 179 + m_GlyphIndex: 115 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 180 + m_GlyphIndex: 116 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 181 + m_GlyphIndex: 117 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 182 + m_GlyphIndex: 118 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 183 + m_GlyphIndex: 119 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 184 + m_GlyphIndex: 120 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 185 + m_GlyphIndex: 121 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 186 + m_GlyphIndex: 122 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 187 + m_GlyphIndex: 123 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 188 + m_GlyphIndex: 124 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 189 + m_GlyphIndex: 125 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 190 + m_GlyphIndex: 126 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 191 + m_GlyphIndex: 127 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 192 + m_GlyphIndex: 128 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 193 + m_GlyphIndex: 129 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 194 + m_GlyphIndex: 130 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 195 + m_GlyphIndex: 131 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 196 + m_GlyphIndex: 132 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 197 + m_GlyphIndex: 133 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 198 + m_GlyphIndex: 134 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 199 + m_GlyphIndex: 135 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 200 + m_GlyphIndex: 136 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 201 + m_GlyphIndex: 137 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 202 + m_GlyphIndex: 138 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 203 + m_GlyphIndex: 139 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 204 + m_GlyphIndex: 140 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 205 + m_GlyphIndex: 141 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 206 + m_GlyphIndex: 142 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 207 + m_GlyphIndex: 143 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 208 + m_GlyphIndex: 144 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 209 + m_GlyphIndex: 145 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 210 + m_GlyphIndex: 146 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 211 + m_GlyphIndex: 147 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 212 + m_GlyphIndex: 148 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 213 + m_GlyphIndex: 149 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 214 + m_GlyphIndex: 150 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 215 + m_GlyphIndex: 151 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 216 + m_GlyphIndex: 152 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 217 + m_GlyphIndex: 153 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 218 + m_GlyphIndex: 154 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 219 + m_GlyphIndex: 155 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 220 + m_GlyphIndex: 156 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 221 + m_GlyphIndex: 157 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 222 + m_GlyphIndex: 158 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 223 + m_GlyphIndex: 159 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 224 + m_GlyphIndex: 160 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 225 + m_GlyphIndex: 161 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 226 + m_GlyphIndex: 162 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 227 + m_GlyphIndex: 163 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 228 + m_GlyphIndex: 164 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 229 + m_GlyphIndex: 165 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 230 + m_GlyphIndex: 166 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 231 + m_GlyphIndex: 167 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 232 + m_GlyphIndex: 168 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 233 + m_GlyphIndex: 169 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 234 + m_GlyphIndex: 170 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 235 + m_GlyphIndex: 171 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 236 + m_GlyphIndex: 172 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 237 + m_GlyphIndex: 173 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 238 + m_GlyphIndex: 174 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 239 + m_GlyphIndex: 175 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 240 + m_GlyphIndex: 176 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 241 + m_GlyphIndex: 177 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 242 + m_GlyphIndex: 178 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 243 + m_GlyphIndex: 179 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 244 + m_GlyphIndex: 180 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 245 + m_GlyphIndex: 181 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 246 + m_GlyphIndex: 182 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 247 + m_GlyphIndex: 183 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 248 + m_GlyphIndex: 184 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 249 + m_GlyphIndex: 185 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 250 + m_GlyphIndex: 186 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 251 + m_GlyphIndex: 187 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 252 + m_GlyphIndex: 188 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 253 + m_GlyphIndex: 189 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 254 + m_GlyphIndex: 190 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 255 + m_GlyphIndex: 191 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 8194 + m_GlyphIndex: 192 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 8201 + m_GlyphIndex: 193 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 8202 + m_GlyphIndex: 194 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 8203 + m_GlyphIndex: 195 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 8204 + m_GlyphIndex: 196 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 8205 + m_GlyphIndex: 197 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 8211 + m_GlyphIndex: 198 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 8212 + m_GlyphIndex: 199 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 8216 + m_GlyphIndex: 200 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 8217 + m_GlyphIndex: 201 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 8218 + m_GlyphIndex: 202 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 8219 + m_GlyphIndex: 203 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 8220 + m_GlyphIndex: 204 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 8221 + m_GlyphIndex: 205 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 8222 + m_GlyphIndex: 206 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 8224 + m_GlyphIndex: 207 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 8225 + m_GlyphIndex: 208 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 8226 + m_GlyphIndex: 209 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 8230 + m_GlyphIndex: 210 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 8240 + m_GlyphIndex: 211 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 8242 + m_GlyphIndex: 212 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 8243 + m_GlyphIndex: 213 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 8249 + m_GlyphIndex: 214 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 8250 + m_GlyphIndex: 215 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 8252 + m_GlyphIndex: 216 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 8260 + m_GlyphIndex: 217 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 8364 + m_GlyphIndex: 218 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 8482 + m_GlyphIndex: 219 + m_Scale: 1 + m_AtlasTextures: + - {fileID: 28888467089585806} + m_AtlasTextureIndex: 0 + m_UsedGlyphRects: [] + m_FreeGlyphRects: [] + m_fontInfo: + Name: Merriweather + PointSize: 37 + Scale: 1 + CharacterCount: 219 + LineHeight: 46.5 + Baseline: 0 + Ascender: 36.4375 + CapHeight: 27.499998 + Descender: -10.125 + CenterLine: 0 + SuperscriptOffset: 36.4375 + SubscriptOffset: -3.7000003 + SubSize: 0.5 + Underline: -3.7000003 + UnderlineThickness: 1.8500001 + strikethrough: 9.568182 + strikethroughThickness: 1.8500001 + TabWidth: 87.5 + Padding: 5 + AtlasWidth: 512 + AtlasHeight: 512 + atlas: {fileID: 28888467089585806} + m_AtlasWidth: 512 + m_AtlasHeight: 512 + m_AtlasPadding: 5 + m_AtlasRenderMode: 16426 + m_glyphInfoList: + - id: 32 + x: 6 + y: 517 + width: 8.75 + height: 46.5625 + xOffset: 0 + yOffset: 36.4375 + xAdvance: 8.75 + scale: 1 + - id: 33 + x: 406 + y: 196 + width: 5.2499995 + height: 33.062496 + xOffset: 3.9374998 + yOffset: 32.687496 + xAdvance: 13.125 + scale: 1 + - id: 34 + x: 455 + y: 109 + width: 13.499999 + height: 13.749999 + xOffset: 4.5624995 + yOffset: 30.624998 + xAdvance: 22.625 + scale: 1 + - id: 35 + x: 49 + y: 160 + width: 22.062498 + height: 27.499998 + xOffset: 2.9374998 + yOffset: 27.499998 + xAdvance: 27.5 + scale: 1 + - id: 36 + x: 80 + y: 64 + width: 17.749998 + height: 36.499996 + xOffset: 3.4374998 + yOffset: 31.874998 + xAdvance: 24.375 + scale: 1 + - id: 37 + x: 106 + y: 439 + width: 34.374996 + height: 27.812498 + xOffset: 1.9374999 + yOffset: 27.812498 + xAdvance: 38.375 + scale: 1 + - id: 38 + x: 118 + y: 157 + width: 25.062498 + height: 28.124998 + xOffset: 2.1874998 + yOffset: 27.874998 + xAdvance: 28 + scale: 1 + - id: 39 + x: 476 + y: 141 + width: 3.9374998 + height: 13.749999 + xOffset: 4.5624995 + yOffset: 30.624998 + xAdvance: 13.0625 + scale: 1 + - id: 40 + x: 193 + y: 294 + width: 10.812499 + height: 37.437496 + xOffset: 2.4374998 + yOffset: 30.687498 + xAdvance: 15.9375 + scale: 1 + - id: 41 + x: 193 + y: 245 + width: 10.874999 + height: 37.437496 + xOffset: 2.5624998 + yOffset: 30.687498 + xAdvance: 15.9375 + scale: 1 + - id: 42 + x: 245 + y: 228 + width: 18.187498 + height: 18.937498 + xOffset: 2.7499998 + yOffset: 30.499998 + xAdvance: 23.8125 + scale: 1 + - id: 43 + x: 247 + y: 76 + width: 16.687498 + height: 17.124998 + xOffset: 3.8749998 + yOffset: 20.249998 + xAdvance: 24.4375 + scale: 1 + - id: 44 + x: 496 + y: 185 + width: 5.5624995 + height: 13.874999 + xOffset: 3.6249998 + yOffset: 5.5624995 + xAdvance: 12.375 + scale: 1 + - id: 45 + x: 227 + y: 6 + width: 14.937499 + height: 2.6874998 + xOffset: 4.1249995 + yOffset: 13.249999 + xAdvance: 23.25 + scale: 1 + - id: 46 + x: 479 + y: 166 + width: 5.1874995 + height: 5.0624995 + xOffset: 2.3124998 + yOffset: 4.7499995 + xAdvance: 9.8125 + scale: 1 + - id: 47 + x: 190 + y: 343 + width: 13.249999 + height: 35.437496 + xOffset: 1.3124999 + yOffset: 28.937498 + xAdvance: 15.9375 + scale: 1 + - id: 48 + x: 337 + y: 363 + width: 19.249998 + height: 23.687498 + xOffset: 2.2499998 + yOffset: 23.374998 + xAdvance: 23.8125 + scale: 1 + - id: 49 + x: 337 + y: 6 + width: 14.062499 + height: 23.374998 + xOffset: 1.4374999 + yOffset: 23.437498 + xAdvance: 16.25 + scale: 1 + - id: 50 + x: 306 + y: 6 + width: 19.124998 + height: 23.374998 + xOffset: 1.6874999 + yOffset: 23.437498 + xAdvance: 22.125 + scale: 1 + - id: 51 + x: 247 + y: 348 + width: 16.812498 + height: 29.312498 + xOffset: 2.0624998 + yOffset: 23.437498 + xAdvance: 20.75 + scale: 1 + - id: 52 + x: 50 + y: 250 + width: 21.749998 + height: 31.124998 + xOffset: 1.3124999 + yOffset: 25.187498 + xAdvance: 23.8125 + scale: 1 + - id: 53 + x: 345 + y: 235 + width: 16.124998 + height: 29.749998 + xOffset: 3.3124998 + yOffset: 23.812498 + xAdvance: 22 + scale: 1 + - id: 54 + x: 309 + y: 276 + width: 19.062498 + height: 29.499998 + xOffset: 2.7499998 + yOffset: 29.124998 + xAdvance: 24.5625 + scale: 1 + - id: 55 + x: 215 + y: 216 + width: 18.437498 + height: 29.437498 + xOffset: 1.7499999 + yOffset: 23.124998 + xAdvance: 21.75 + scale: 1 + - id: 56 + x: 155 + y: 157 + width: 18.812498 + height: 28.187498 + xOffset: 2.3749998 + yOffset: 27.874998 + xAdvance: 23.4375 + scale: 1 + - id: 57 + x: 345 + y: 194 + width: 19.187498 + height: 29.562498 + xOffset: 2.5624998 + yOffset: 23.437498 + xAdvance: 24.4375 + scale: 1 + - id: 58 + x: 371 + y: 44 + width: 5.1249995 + height: 20.312498 + xOffset: 3.7499998 + yOffset: 19.999998 + xAdvance: 12.75 + scale: 1 + - id: 59 + x: 376 + y: 398 + width: 5.5624995 + height: 28.249998 + xOffset: 3.6249998 + yOffset: 19.999998 + xAdvance: 12.75 + scale: 1 + - id: 60 + x: 453 + y: 326 + width: 17.499998 + height: 20.249998 + xOffset: 2.9999998 + yOffset: 21.312498 + xAdvance: 24.75 + scale: 1 + - id: 61 + x: 215 + y: 65 + width: 16.687498 + height: 12.874999 + xOffset: 3.7499998 + yOffset: 17.562498 + xAdvance: 24.1875 + scale: 1 + - id: 62 + x: 482 + y: 326 + width: 17.562498 + height: 20.249998 + xOffset: 4.1874995 + yOffset: 21.312498 + xAdvance: 24.75 + scale: 1 + - id: 63 + x: 194 + y: 20 + width: 15.187499 + height: 33.874996 + xOffset: 1.4999999 + yOffset: 33.562496 + xAdvance: 18 + scale: 1 + - id: 64 + x: 6 + y: 297 + width: 32.687496 + height: 37.499996 + xOffset: 3.4374998 + yOffset: 28.124998 + xAdvance: 39.875 + scale: 1 + - id: 65 + x: 344 + y: 478 + width: 26.562498 + height: 27.687498 + xOffset: -0.49999997 + yOffset: 27.749998 + xAdvance: 25.625 + scale: 1 + - id: 66 + x: 275 + y: 238 + width: 22.312498 + height: 28.062498 + xOffset: 1.6874999 + yOffset: 27.812498 + xAdvance: 25.375 + scale: 1 + - id: 67 + x: 344 + y: 154 + width: 21.562498 + height: 28.249998 + xOffset: 1.1874999 + yOffset: 27.812498 + xAdvance: 24.1875 + scale: 1 + - id: 68 + x: 303 + y: 444 + width: 25.124998 + height: 28.124998 + xOffset: 1.6874999 + yOffset: 27.812498 + xAdvance: 28.0625 + scale: 1 + - id: 69 + x: 152 + y: 439 + width: 21.624998 + height: 27.499998 + xOffset: 1.6874999 + yOffset: 27.499998 + xAdvance: 24.0625 + scale: 1 + - id: 70 + x: 307 + y: 41 + width: 20.187498 + height: 27.499998 + xOffset: 1.5624999 + yOffset: 27.499998 + xAdvance: 22.875 + scale: 1 + - id: 71 + x: 303 + y: 404 + width: 25.124998 + height: 28.249998 + xOffset: 1.5624999 + yOffset: 27.812498 + xAdvance: 27.375 + scale: 1 + - id: 72 + x: 382 + y: 478 + width: 26.874998 + height: 27.499998 + xOffset: 1.8124999 + yOffset: 27.499998 + xAdvance: 30.625 + scale: 1 + - id: 73 + x: 404 + y: 241 + width: 10.874999 + height: 27.499998 + xOffset: 1.9374999 + yOffset: 27.499998 + xAdvance: 14.9375 + scale: 1 + - id: 74 + x: 165 + y: 111 + width: 12.937499 + height: 34.124996 + xOffset: -0.24999999 + yOffset: 27.499998 + xAdvance: 14.125 + scale: 1 + - id: 75 + x: 377 + y: 439 + width: 25.124998 + height: 27.499998 + xOffset: 1.7499999 + yOffset: 27.499998 + xAdvance: 26.875 + scale: 1 + - id: 76 + x: 275 + y: 126 + width: 21.062498 + height: 27.499998 + xOffset: 1.7499999 + yOffset: 27.499998 + xAdvance: 23.4375 + scale: 1 + - id: 77 + x: 58 + y: 439 + width: 36.187496 + height: 27.499998 + xOffset: 0.18749999 + yOffset: 27.499998 + xAdvance: 36.625 + scale: 1 + - id: 78 + x: 420 + y: 478 + width: 26.749998 + height: 27.499998 + xOffset: 1.8124999 + yOffset: 27.499998 + xAdvance: 29.5625 + scale: 1 + - id: 79 + x: 340 + y: 398 + width: 24.249998 + height: 28.249998 + xOffset: 1.2499999 + yOffset: 27.812498 + xAdvance: 26.6875 + scale: 1 + - id: 80 + x: 344 + y: 115 + width: 21.312498 + height: 27.749998 + xOffset: 1.7499999 + yOffset: 27.749998 + xAdvance: 24 + scale: 1 + - id: 81 + x: 6 + y: 250 + width: 32.124996 + height: 35.124996 + xOffset: 1.3124999 + yOffset: 27.812498 + xAdvance: 26.875 + scale: 1 + - id: 82 + x: 309 + y: 237 + width: 24.374998 + height: 27.812498 + xOffset: 1.6874999 + yOffset: 27.812498 + xAdvance: 26.0625 + scale: 1 + - id: 83 + x: 245 + y: 188 + width: 18.249998 + height: 28.249998 + xOffset: 2.2499998 + yOffset: 27.812498 + xAdvance: 22 + scale: 1 + - id: 84 + x: 309 + y: 198 + width: 24.124998 + height: 27.499998 + xOffset: 0.62499994 + yOffset: 27.499998 + xAdvance: 25.625 + scale: 1 + - id: 85 + x: 414 + y: 439 + width: 25.937498 + height: 27.812498 + xOffset: 0.87499994 + yOffset: 27.499998 + xAdvance: 27.375 + scale: 1 + - id: 86 + x: 458 + y: 478 + width: 26.062498 + height: 27.812498 + xOffset: -0.62499994 + yOffset: 27.499998 + xAdvance: 24.8125 + scale: 1 + - id: 87 + x: 68 + y: 478 + width: 38.374996 + height: 27.687498 + xOffset: -0.74999994 + yOffset: 27.499998 + xAdvance: 37 + scale: 1 + - id: 88 + x: 451 + y: 439 + width: 25.999998 + height: 27.499998 + xOffset: 0.24999999 + yOffset: 27.499998 + xAdvance: 26.375 + scale: 1 + - id: 89 + x: 308 + y: 159 + width: 24.812498 + height: 27.499998 + xOffset: -0.49999997 + yOffset: 27.499998 + xAdvance: 23.8125 + scale: 1 + - id: 90 + x: 275 + y: 87 + width: 21.562498 + height: 27.624998 + xOffset: 1.2499999 + yOffset: 27.624998 + xAdvance: 24.1875 + scale: 1 + - id: 91 + x: 170 + y: 65 + width: 8.937499 + height: 34.812496 + xOffset: 3.4999998 + yOffset: 29.749998 + xAdvance: 15.8125 + scale: 1 + - id: 92 + x: 135 + y: 16 + width: 13.249999 + height: 35.437496 + xOffset: 1.0624999 + yOffset: 28.937498 + xAdvance: 15.9375 + scale: 1 + - id: 93 + x: 174 + y: 19 + width: 8.999999 + height: 34.812496 + xOffset: 3.3124998 + yOffset: 29.749998 + xAdvance: 15.8125 + scale: 1 + - id: 94 + x: 368 + y: 364 + width: 18.249998 + height: 22.749998 + xOffset: 3.1249998 + yOffset: 27.687498 + xAdvance: 24.625 + scale: 1 + - id: 95 + x: 53 + y: 6 + width: 31.624998 + height: 2.2499998 + xOffset: -0.37499997 + yOffset: -4.4999995 + xAdvance: 30.875 + scale: 1 + - id: 96 + x: 408 + y: 7 + width: 8.624999 + height: 8.499999 + xOffset: -0.31249997 + yOffset: 32.749996 + xAdvance: 12.3125 + scale: 1 + - id: 97 + x: 398 + y: 365 + width: 18.124998 + height: 21.437498 + xOffset: 1.6249999 + yOffset: 20.999998 + xAdvance: 20.75 + scale: 1 + - id: 98 + x: 340 + y: 276 + width: 20.937498 + height: 30.749998 + xOffset: -0.12499999 + yOffset: 30.312498 + xAdvance: 22.4375 + scale: 1 + - id: 99 + x: 406 + y: 163 + width: 16.187498 + height: 21.499998 + xOffset: 1.1874999 + yOffset: 21.124998 + xAdvance: 19 + scale: 1 + - id: 100 + x: 215 + y: 89 + width: 20.124998 + height: 30.749998 + xOffset: 1.4999999 + yOffset: 30.312498 + xAdvance: 23 + scale: 1 + - id: 101 + x: 424 + y: 329 + width: 17.062498 + height: 21.499998 + xOffset: 1.5624999 + yOffset: 21.124998 + xAdvance: 20.125 + scale: 1 + - id: 102 + x: 453 + y: 397 + width: 14.187499 + height: 30.624998 + xOffset: 1.1249999 + yOffset: 30.687498 + xAdvance: 14.8125 + scale: 1 + - id: 103 + x: 271 + y: 407 + width: 20.562498 + height: 31.124998 + xOffset: 1.4999999 + yOffset: 21.187498 + xAdvance: 22.4375 + scale: 1 + - id: 104 + x: 303 + y: 362 + width: 22.749998 + height: 30.312498 + xOffset: 0.49999997 + yOffset: 30.312498 + xAdvance: 24.375 + scale: 1 + - id: 105 + x: 426 + y: 246 + width: 9.812499 + height: 29.312498 + xOffset: 1.4999999 + yOffset: 29.374998 + xAdvance: 12.3125 + scale: 1 + - id: 106 + x: 496 + y: 467 + width: 9.249999 + height: 38.312496 + xOffset: -0.43749997 + yOffset: 29.374998 + xAdvance: 11.75 + scale: 1 + - id: 107 + x: 275 + y: 320 + width: 22.312498 + height: 30.312498 + xOffset: 0.68749994 + yOffset: 30.312498 + xAdvance: 22.1875 + scale: 1 + - id: 108 + x: 426 + y: 287 + width: 9.999999 + height: 30.312498 + xOffset: 1.3124999 + yOffset: 30.312498 + xAdvance: 12.3125 + scale: 1 + - id: 109 + x: 166 + y: 485 + width: 34.624996 + height: 20.999998 + xOffset: 1.1874999 + yOffset: 21.062498 + xAdvance: 36.8125 + scale: 1 + - id: 110 + x: 275 + y: 206 + width: 22.312498 + height: 20.999998 + xOffset: 1.1874999 + yOffset: 21.062498 + xAdvance: 24.5625 + scale: 1 + - id: 111 + x: 480 + y: 293 + width: 19.124998 + height: 21.499998 + xOffset: 1.6249999 + yOffset: 21.124998 + xAdvance: 22.5 + scale: 1 + - id: 112 + x: 275 + y: 46 + width: 20.624998 + height: 29.999998 + xOffset: 1.0624999 + yOffset: 21.124998 + xAdvance: 23.25 + scale: 1 + - id: 113 + x: 372 + y: 281 + width: 20.499998 + height: 29.999998 + xOffset: 1.4999999 + yOffset: 21.124998 + xAdvance: 22.5625 + scale: 1 + - id: 114 + x: 426 + y: 130 + width: 14.437499 + height: 21.062498 + xOffset: 1.6874999 + yOffset: 21.124998 + xAdvance: 16.9375 + scale: 1 + - id: 115 + x: 363 + y: 10 + width: 14.937499 + height: 21.437498 + xOffset: 1.9999999 + yOffset: 20.999998 + xAdvance: 18.6875 + scale: 1 + - id: 116 + x: 428 + y: 362 + width: 13.312499 + height: 26.249998 + xOffset: 1.1249999 + yOffset: 25.874998 + xAdvance: 15.0625 + scale: 1 + - id: 117 + x: 339 + y: 43 + width: 20.749998 + height: 21.437498 + xOffset: 1.3124999 + yOffset: 20.999998 + xAdvance: 23.375 + scale: 1 + - id: 118 + x: 447 + y: 294 + width: 21.312498 + height: 20.874998 + xOffset: -0.062499996 + yOffset: 20.562498 + xAdvance: 21 + scale: 1 + - id: 119 + x: 212 + y: 485 + width: 31.812498 + height: 20.874998 + xOffset: -0.31249997 + yOffset: 20.562498 + xAdvance: 31.0625 + scale: 1 + - id: 120 + x: 447 + y: 262 + width: 21.624998 + height: 20.562498 + xOffset: 0.18749999 + yOffset: 20.562498 + xAdvance: 22 + scale: 1 + - id: 121 + x: 270 + y: 450 + width: 21.249998 + height: 29.749998 + xOffset: -0.12499999 + yOffset: 20.562498 + xAdvance: 21.1875 + scale: 1 + - id: 122 + x: 483 + y: 231 + width: 18.062498 + height: 20.562498 + xOffset: 1.0624999 + yOffset: 20.562498 + xAdvance: 20.5 + scale: 1 + - id: 123 + x: 189 + y: 111 + width: 13.812499 + height: 34.874996 + xOffset: 2.0624998 + yOffset: 29.874998 + xAdvance: 18.8125 + scale: 1 + - id: 124 + x: 151 + y: 110 + width: 2.9999998 + height: 35.499996 + xOffset: 6.2499995 + yOffset: 32.187496 + xAdvance: 15.625 + scale: 1 + - id: 125 + x: 190 + y: 65 + width: 13.749999 + height: 34.874996 + xOffset: 2.8124998 + yOffset: 29.874998 + xAdvance: 18.8125 + scale: 1 + - id: 126 + x: 426 + y: 113 + width: 17.687498 + height: 5.9374995 + xOffset: 3.9374998 + yOffset: 14.062499 + xAdvance: 25.625 + scale: 1 + - id: 160 + x: 6 + y: 517 + width: 0 + height: 0 + xOffset: 0 + yOffset: 0 + xAdvance: 8.75 + scale: 1 + - id: 161 + x: 409 + y: 119 + width: 5.1874995 + height: 32.624996 + xOffset: 3.8749998 + yOffset: 25.937498 + xAdvance: 13.125 + scale: 1 + - id: 162 + x: 247 + y: 105 + width: 16.249998 + height: 29.624998 + xOffset: 2.5624998 + yOffset: 25.312498 + xAdvance: 21.5625 + scale: 1 + - id: 163 + x: 83 + y: 162 + width: 23.624998 + height: 28.062498 + xOffset: 1.8124999 + yOffset: 27.812498 + xAdvance: 27.5 + scale: 1 + - id: 164 + x: 479 + y: 389 + width: 20.562498 + height: 21.437498 + xOffset: 3.6249998 + yOffset: 24.687498 + xAdvance: 27.9375 + scale: 1 + - id: 165 + x: 308 + y: 120 + width: 24.249998 + height: 27.499998 + xOffset: 2.0624998 + yOffset: 27.499998 + xAdvance: 28.4375 + scale: 1 + - id: 166 + x: 160 + y: 16 + width: 2.9999998 + height: 35.499996 + xOffset: 6.2499995 + yOffset: 32.187496 + xAdvance: 15.625 + scale: 1 + - id: 167 + x: 185 + y: 439 + width: 18.312498 + height: 34.124996 + xOffset: 3.3124998 + yOffset: 30.437498 + xAdvance: 24.875 + scale: 1 + - id: 168 + x: 455 + y: 92 + width: 13.124999 + height: 5.0624995 + xOffset: 2.6874998 + yOffset: 29.687498 + xAdvance: 18.5 + scale: 1 + - id: 169 + x: 6 + y: 207 + width: 31.437498 + height: 31.687498 + xOffset: 3.4999998 + yOffset: 33.937496 + xAdvance: 38.5 + scale: 1 + - id: 170 + x: 455 + y: 216 + width: 16.062498 + height: 17.124998 + xOffset: 2.1249998 + yOffset: 29.874998 + xAdvance: 19.1875 + scale: 1 + - id: 171 + x: 480 + y: 263 + width: 20.312498 + height: 18.437498 + xOffset: 2.0624998 + yOffset: 20.437498 + xAdvance: 24.8125 + scale: 1 + - id: 172 + x: 483 + y: 210 + width: 17.874998 + height: 9.687499 + xOffset: 3.7499998 + yOffset: 13.062499 + xAdvance: 25.4375 + scale: 1 + - id: 173 + x: 423 + y: 197 + width: 14.937499 + height: 2.6874998 + xOffset: 4.1249995 + yOffset: 13.249999 + xAdvance: 23.25 + scale: 1 + - id: 174 + x: 6 + y: 164 + width: 31.437498 + height: 31.687498 + xOffset: 3.4999998 + yOffset: 33.937496 + xAdvance: 38.5 + scale: 1 + - id: 175 + x: 253 + y: 18 + width: 10.124999 + height: 2.6249998 + xOffset: 0.99999994 + yOffset: 28.437498 + xAdvance: 12.3125 + scale: 1 + - id: 176 + x: 460 + y: 41 + width: 12.812499 + height: 12.687499 + xOffset: 2.1249998 + yOffset: 29.687498 + xAdvance: 17.125 + scale: 1 + - id: 177 + x: 434 + y: 165 + width: 16.687498 + height: 20.624998 + xOffset: 3.8749998 + yOffset: 20.687498 + xAdvance: 24.4375 + scale: 1 + - id: 178 + x: 376 + y: 85 + width: 14.624999 + height: 18.812498 + xOffset: 2.1249998 + yOffset: 30.312498 + xAdvance: 18.4375 + scale: 1 + - id: 179 + x: 388 + y: 55 + width: 13.999999 + height: 18.999998 + xOffset: 2.4374998 + yOffset: 30.437498 + xAdvance: 18.0625 + scale: 1 + - id: 180 + x: 496 + y: 165 + width: 8.687499 + height: 8.499999 + xOffset: 3.7499998 + yOffset: 32.749996 + xAdvance: 12.3125 + scale: 1 + - id: 181 + x: 421 + y: 400 + width: 20.937498 + height: 27.624998 + xOffset: 2.2499998 + yOffset: 20.937498 + xAdvance: 25.25 + scale: 1 + - id: 182 + x: 275 + y: 278 + width: 22.624998 + height: 30.874998 + xOffset: 1.8749999 + yOffset: 30.937498 + xAdvance: 27.0625 + scale: 1 + - id: 183 + x: 480 + y: 124 + width: 5.1249995 + height: 5.0624995 + xOffset: 0.62499994 + yOffset: 16.687498 + xAdvance: 6.5 + scale: 1 + - id: 184 + x: 389 + y: 6 + width: 7.4374995 + height: 9.187499 + xOffset: 0.18749999 + yOffset: 0.24999999 + xAdvance: 11.125 + scale: 1 + - id: 185 + x: 452 + y: 134 + width: 12.624999 + height: 19.062498 + xOffset: 2.9374998 + yOffset: 30.499998 + xAdvance: 17.9375 + scale: 1 + - id: 186 + x: 389 + y: 27 + width: 15.437499 + height: 16.874998 + xOffset: 1.8124999 + yOffset: 29.624998 + xAdvance: 19.0625 + scale: 1 + - id: 187 + x: 423 + y: 211 + width: 20.249998 + height: 18.437498 + xOffset: 2.4374998 + yOffset: 20.437498 + xAdvance: 24.8125 + scale: 1 + - id: 188 + x: 6 + y: 390 + width: 39.437496 + height: 32.937496 + xOffset: 2.9374998 + yOffset: 30.124998 + xAdvance: 43.5625 + scale: 1 + - id: 189 + x: 6 + y: 346 + width: 38.749996 + height: 32.937496 + xOffset: 2.9374998 + yOffset: 30.124998 + xAdvance: 43.3125 + scale: 1 + - id: 190 + x: 6 + y: 434 + width: 40.062496 + height: 32.937496 + xOffset: 2.4374998 + yOffset: 30.124998 + xAdvance: 43.6875 + scale: 1 + - id: 191 + x: 221 + y: 20 + width: 15.124999 + height: 33.874996 + xOffset: 1.2499999 + yOffset: 26.062498 + xAdvance: 18 + scale: 1 + - id: 192 + x: 6 + y: 116 + width: 26.562498 + height: 36.312496 + xOffset: -0.49999997 + yOffset: 36.312496 + xAdvance: 25.625 + scale: 1 + - id: 193 + x: 6 + y: 68 + width: 26.562498 + height: 36.312496 + xOffset: -0.49999997 + yOffset: 36.312496 + xAdvance: 25.625 + scale: 1 + - id: 194 + x: 6 + y: 20 + width: 26.562498 + height: 36.312496 + xOffset: -0.49999997 + yOffset: 36.374996 + xAdvance: 25.625 + scale: 1 + - id: 195 + x: 86 + y: 344 + width: 26.562498 + height: 35.312496 + xOffset: -0.49999997 + yOffset: 35.374996 + xAdvance: 25.625 + scale: 1 + - id: 196 + x: 83 + y: 297 + width: 26.562498 + height: 35.374996 + xOffset: -0.49999997 + yOffset: 35.374996 + xAdvance: 25.625 + scale: 1 + - id: 197 + x: 86 + y: 391 + width: 26.562498 + height: 36.374996 + xOffset: -0.49999997 + yOffset: 36.374996 + xAdvance: 25.625 + scale: 1 + - id: 198 + x: 118 + y: 478 + width: 36.937496 + height: 27.499998 + xOffset: -3.3124998 + yOffset: 27.499998 + xAdvance: 34.0625 + scale: 1 + - id: 199 + x: 124 + y: 341 + width: 21.562498 + height: 36.749996 + xOffset: 1.1874999 + yOffset: 27.812498 + xAdvance: 24.1875 + scale: 1 + - id: 200 + x: 81 + y: 112 + width: 21.624998 + height: 36.312496 + xOffset: 1.6874999 + yOffset: 36.312496 + xAdvance: 24.0625 + scale: 1 + - id: 201 + x: 157 + y: 391 + width: 21.624998 + height: 36.312496 + xOffset: 1.6874999 + yOffset: 36.312496 + xAdvance: 24.0625 + scale: 1 + - id: 202 + x: 157 + y: 343 + width: 21.624998 + height: 36.312496 + xOffset: 1.6874999 + yOffset: 36.374996 + xAdvance: 24.0625 + scale: 1 + - id: 203 + x: 215 + y: 438 + width: 21.624998 + height: 35.374996 + xOffset: 1.6874999 + yOffset: 35.374996 + xAdvance: 24.0625 + scale: 1 + - id: 204 + x: 248 + y: 437 + width: 10.874999 + height: 36.312496 + xOffset: 1.9374999 + yOffset: 36.312496 + xAdvance: 14.9375 + scale: 1 + - id: 205 + x: 155 + y: 197 + width: 10.874999 + height: 36.312496 + xOffset: 1.9374999 + yOffset: 36.312496 + xAdvance: 14.9375 + scale: 1 + - id: 206 + x: 247 + y: 389 + width: 12.937499 + height: 36.312496 + xOffset: 0.99999994 + yOffset: 36.374996 + xAdvance: 14.9375 + scale: 1 + - id: 207 + x: 145 + y: 63 + width: 13.687499 + height: 35.374996 + xOffset: 0.62499994 + yOffset: 35.374996 + xAdvance: 14.9375 + scale: 1 + - id: 208 + x: 340 + y: 438 + width: 25.124998 + height: 28.124998 + xOffset: 1.6874999 + yOffset: 27.812498 + xAdvance: 28.0625 + scale: 1 + - id: 209 + x: 83 + y: 250 + width: 26.749998 + height: 35.312496 + xOffset: 1.8124999 + yOffset: 35.374996 + xAdvance: 29.5625 + scale: 1 + - id: 210 + x: 121 + y: 293 + width: 24.249998 + height: 36.749996 + xOffset: 1.2499999 + yOffset: 36.312496 + xAdvance: 26.6875 + scale: 1 + - id: 211 + x: 121 + y: 245 + width: 24.249998 + height: 36.749996 + xOffset: 1.2499999 + yOffset: 36.312496 + xAdvance: 26.6875 + scale: 1 + - id: 212 + x: 44 + y: 64 + width: 24.249998 + height: 36.749996 + xOffset: 1.2499999 + yOffset: 36.374996 + xAdvance: 26.6875 + scale: 1 + - id: 213 + x: 109 + y: 63 + width: 24.249998 + height: 35.749996 + xOffset: 1.2499999 + yOffset: 35.374996 + xAdvance: 26.6875 + scale: 1 + - id: 214 + x: 99 + y: 16 + width: 24.249998 + height: 35.812496 + xOffset: 1.2499999 + yOffset: 35.374996 + xAdvance: 26.6875 + scale: 1 + - id: 215 + x: 402 + y: 85 + width: 16.312498 + height: 16.562498 + xOffset: 3.0624998 + yOffset: 19.437498 + xAdvance: 22.5625 + scale: 1 + - id: 216 + x: 157 + y: 249 + width: 24.249998 + height: 34.937496 + xOffset: 1.2499999 + yOffset: 31.062498 + xAdvance: 26.75 + scale: 1 + - id: 217 + x: 81 + y: 202 + width: 25.937498 + height: 36.624996 + xOffset: 0.87499994 + yOffset: 36.312496 + xAdvance: 27.375 + scale: 1 + - id: 218 + x: 118 + y: 197 + width: 25.937498 + height: 36.624996 + xOffset: 0.87499994 + yOffset: 36.312496 + xAdvance: 27.375 + scale: 1 + - id: 219 + x: 44 + y: 112 + width: 25.937498 + height: 36.624996 + xOffset: 0.87499994 + yOffset: 36.374996 + xAdvance: 27.375 + scale: 1 + - id: 220 + x: 114 + y: 110 + width: 25.937498 + height: 35.687496 + xOffset: 0.87499994 + yOffset: 35.374996 + xAdvance: 27.375 + scale: 1 + - id: 221 + x: 157 + y: 295 + width: 24.812498 + height: 36.312496 + xOffset: -0.49999997 + yOffset: 36.312496 + xAdvance: 23.8125 + scale: 1 + - id: 222 + x: 343 + y: 76 + width: 21.124998 + height: 27.499998 + xOffset: 1.6249999 + yOffset: 27.562498 + xAdvance: 23.875 + scale: 1 + - id: 223 + x: 275 + y: 165 + width: 21.749998 + height: 29.437498 + xOffset: 0.87499994 + yOffset: 29.062498 + xAdvance: 23.5 + scale: 1 + - id: 224 + x: 215 + y: 257 + width: 18.124998 + height: 33.124996 + xOffset: 1.6249999 + yOffset: 32.749996 + xAdvance: 20.75 + scale: 1 + - id: 225 + x: 245 + y: 303 + width: 18.124998 + height: 33.187496 + xOffset: 1.6249999 + yOffset: 32.749996 + xAdvance: 20.75 + scale: 1 + - id: 226 + x: 56 + y: 346 + width: 18.124998 + height: 32.249996 + xOffset: 1.6249999 + yOffset: 31.874998 + xAdvance: 20.75 + scale: 1 + - id: 227 + x: 245 + y: 146 + width: 18.124998 + height: 30.249998 + xOffset: 1.6249999 + yOffset: 29.812498 + xAdvance: 20.75 + scale: 1 + - id: 228 + x: 376 + y: 199 + width: 18.124998 + height: 29.812498 + xOffset: 1.6249999 + yOffset: 29.437498 + xAdvance: 20.75 + scale: 1 + - id: 229 + x: 215 + y: 302 + width: 18.124998 + height: 34.249996 + xOffset: 1.6249999 + yOffset: 33.812496 + xAdvance: 20.75 + scale: 1 + - id: 230 + x: 303 + y: 484 + width: 29.187498 + height: 21.499998 + xOffset: 1.4999999 + yOffset: 21.124998 + xAdvance: 32.125 + scale: 1 + - id: 231 + x: 393 + y: 398 + width: 16.187498 + height: 29.999998 + xOffset: 1.1874999 + yOffset: 21.124998 + xAdvance: 19 + scale: 1 + - id: 232 + x: 488 + y: 422 + width: 17.062498 + height: 33.124996 + xOffset: 1.5624999 + yOffset: 32.749996 + xAdvance: 20.125 + scale: 1 + - id: 233 + x: 309 + y: 317 + width: 17.062498 + height: 33.187496 + xOffset: 1.5624999 + yOffset: 32.749996 + xAdvance: 20.125 + scale: 1 + - id: 234 + x: 57 + y: 390 + width: 17.062498 + height: 32.249996 + xOffset: 1.5624999 + yOffset: 31.874998 + xAdvance: 20.125 + scale: 1 + - id: 235 + x: 377 + y: 158 + width: 17.062498 + height: 29.812498 + xOffset: 1.5624999 + yOffset: 29.437498 + xAdvance: 20.125 + scale: 1 + - id: 236 + x: 76 + y: 20 + width: 11.312499 + height: 32.687496 + xOffset: 0 + yOffset: 32.749996 + xAdvance: 12.3125 + scale: 1 + - id: 237 + x: 404 + y: 280 + width: 10.437499 + height: 32.749996 + xOffset: 1.4999999 + yOffset: 32.749996 + xAdvance: 12.3125 + scale: 1 + - id: 238 + x: 185 + y: 157 + width: 13.374999 + height: 31.812498 + xOffset: -0.62499994 + yOffset: 31.874998 + xAdvance: 12.3125 + scale: 1 + - id: 239 + x: 400 + y: 324 + width: 12.999999 + height: 29.374998 + xOffset: -0.37499997 + yOffset: 29.437498 + xAdvance: 12.3125 + scale: 1 + - id: 240 + x: 245 + y: 258 + width: 18.624998 + height: 33.874996 + xOffset: 1.4374999 + yOffset: 33.499996 + xAdvance: 21.5 + scale: 1 + - id: 241 + x: 210 + y: 175 + width: 22.312498 + height: 29.812498 + xOffset: 1.1874999 + yOffset: 29.812498 + xAdvance: 24.5625 + scale: 1 + - id: 242 + x: 338 + y: 318 + width: 19.124998 + height: 33.124996 + xOffset: 1.6249999 + yOffset: 32.749996 + xAdvance: 22.5 + scale: 1 + - id: 243 + x: 177 + y: 200 + width: 19.124998 + height: 33.187496 + xOffset: 1.6249999 + yOffset: 32.749996 + xAdvance: 22.5 + scale: 1 + - id: 244 + x: 214 + y: 131 + width: 19.124998 + height: 32.249996 + xOffset: 1.6249999 + yOffset: 31.874998 + xAdvance: 22.5 + scale: 1 + - id: 245 + x: 369 + y: 322 + width: 19.124998 + height: 30.249998 + xOffset: 1.6249999 + yOffset: 29.812498 + xAdvance: 22.5 + scale: 1 + - id: 246 + x: 373 + y: 240 + width: 19.124998 + height: 29.812498 + xOffset: 1.6249999 + yOffset: 29.437498 + xAdvance: 22.5 + scale: 1 + - id: 247 + x: 478 + y: 358 + width: 16.874998 + height: 19.999998 + xOffset: 3.8749998 + yOffset: 21.999998 + xAdvance: 24.625 + scale: 1 + - id: 248 + x: 275 + y: 6 + width: 19.124998 + height: 28.249998 + xOffset: 1.4999999 + yOffset: 24.312498 + xAdvance: 22.1875 + scale: 1 + - id: 249 + x: 215 + y: 393 + width: 20.749998 + height: 33.124996 + xOffset: 1.3124999 + yOffset: 32.749996 + xAdvance: 23.375 + scale: 1 + - id: 250 + x: 215 + y: 348 + width: 20.749998 + height: 33.187496 + xOffset: 1.3124999 + yOffset: 32.749996 + xAdvance: 23.375 + scale: 1 + - id: 251 + x: 44 + y: 20 + width: 20.749998 + height: 32.249996 + xOffset: 1.3124999 + yOffset: 31.874998 + xAdvance: 23.375 + scale: 1 + - id: 252 + x: 377 + y: 117 + width: 20.749998 + height: 29.812498 + xOffset: 1.3124999 + yOffset: 29.437498 + xAdvance: 23.375 + scale: 1 + - id: 253 + x: 50 + y: 293 + width: 21.249998 + height: 41.937496 + xOffset: -0.12499999 + yOffset: 32.749996 + xAdvance: 21.1875 + scale: 1 + - id: 254 + x: 49 + y: 199 + width: 20.999998 + height: 39.249996 + xOffset: -0.062499996 + yOffset: 30.312498 + xAdvance: 22.5 + scale: 1 + - id: 255 + x: 124 + y: 389 + width: 21.249998 + height: 38.562496 + xOffset: -0.12499999 + yOffset: 29.437498 + xAdvance: 21.1875 + scale: 1 + - id: 8194 + x: 6 + y: 517 + width: 0 + height: 0 + xOffset: 0 + yOffset: 0 + xAdvance: 18.5 + scale: 1 + - id: 8201 + x: 6 + y: 517 + width: 0 + height: 0 + xOffset: 0 + yOffset: 0 + xAdvance: 5.5625 + scale: 1 + - id: 8202 + x: 6 + y: 517 + width: 0 + height: 0 + xOffset: 0 + yOffset: 0 + xAdvance: 2.25 + scale: 1 + - id: 8203 + x: 6 + y: 517 + width: 0 + height: 0 + xOffset: 0 + yOffset: 0 + xAdvance: 0 + scale: 1 + - id: 8204 + x: 6 + y: 517 + width: 0 + height: 0 + xOffset: 0 + yOffset: 0 + xAdvance: 0 + scale: 1 + - id: 8205 + x: 6 + y: 517 + width: 0 + height: 0 + xOffset: 0 + yOffset: 0 + xAdvance: 0 + scale: 1 + - id: 8211 + x: 194 + y: 6 + width: 21.812498 + height: 2.6874998 + xOffset: 4.1249995 + yOffset: 13.249999 + xAdvance: 30.125 + scale: 1 + - id: 8212 + x: 6 + y: 6 + width: 35.562496 + height: 2.6874998 + xOffset: 4.1249995 + yOffset: 13.249999 + xAdvance: 43.875 + scale: 1 + - id: 8216 + x: 443 + y: 33 + width: 5.7499995 + height: 15.374999 + xOffset: 4.0624995 + yOffset: 31.374998 + xAdvance: 14.125 + scale: 1 + - id: 8217 + x: 470 + y: 14 + width: 5.7499995 + height: 15.499999 + xOffset: 4.2499995 + yOffset: 31.062498 + xAdvance: 14.125 + scale: 1 + - id: 8218 + x: 462 + y: 170 + width: 5.7499995 + height: 15.437499 + xOffset: 4.2499995 + yOffset: 5.8124995 + xAdvance: 14.125 + scale: 1 + - id: 8219 + x: 479 + y: 183 + width: 5.7499995 + height: 15.437499 + xOffset: 4.0624995 + yOffset: 31.312498 + xAdvance: 14.125 + scale: 1 + - id: 8220 + x: 416 + y: 28 + width: 15.499999 + height: 15.374999 + xOffset: 4.0624995 + yOffset: 31.374998 + xAdvance: 23.8125 + scale: 1 + - id: 8221 + x: 457 + y: 65 + width: 15.499999 + height: 15.437499 + xOffset: 4.2499995 + yOffset: 31.312498 + xAdvance: 23.8125 + scale: 1 + - id: 8222 + x: 443 + y: 6 + width: 15.499999 + height: 15.437499 + xOffset: 4.2499995 + yOffset: 6.1874995 + xAdvance: 23.8125 + scale: 1 + - id: 8224 + x: 453 + y: 358 + width: 13.562499 + height: 27.937498 + xOffset: 2.8749998 + yOffset: 29.874998 + xAdvance: 19.4375 + scale: 1 + - id: 8225 + x: 190 + y: 390 + width: 13.687499 + height: 37.812496 + xOffset: 2.8749998 + yOffset: 29.874998 + xAdvance: 19.4375 + scale: 1 + - id: 8226 + x: 455 + y: 197 + width: 7.0624995 + height: 7.3124995 + xOffset: 4.1249995 + yOffset: 16.124998 + xAdvance: 15.375 + scale: 1 + - id: 8230 + x: 447 + y: 245 + width: 24.687498 + height: 5.0624995 + xOffset: 2.3124998 + yOffset: 4.7499995 + xAdvance: 29.3125 + scale: 1 + - id: 8240 + x: 6 + y: 478 + width: 50.687496 + height: 27.812498 + xOffset: 1.9374999 + yOffset: 27.812498 + xAdvance: 54.6875 + scale: 1 + - id: 8242 + x: 491 + y: 142 + width: 5.6874995 + height: 11.812499 + xOffset: 3.8124998 + yOffset: 32.374996 + xAdvance: 12.4375 + scale: 1 + - id: 8243 + x: 430 + y: 90 + width: 13.937499 + height: 11.812499 + xOffset: 3.8124998 + yOffset: 32.374996 + xAdvance: 20.75 + scale: 1 + - id: 8249 + x: 413 + y: 55 + width: 10.437499 + height: 18.437498 + xOffset: 2.0624998 + yOffset: 20.437498 + xAdvance: 14.9375 + scale: 1 + - id: 8250 + x: 435 + y: 60 + width: 10.437499 + height: 18.437498 + xOffset: 2.4374998 + yOffset: 20.437498 + xAdvance: 14.9375 + scale: 1 + - id: 8252 + x: 275 + y: 362 + width: 16.624998 + height: 33.062496 + xOffset: 3.9374998 + yOffset: 32.687496 + xAdvance: 24.4375 + scale: 1 + - id: 8260 + x: 248 + y: 32 + width: 15.999999 + height: 32.937496 + xOffset: -4.5624995 + yOffset: 30.124998 + xAdvance: 6.9375 + scale: 1 + - id: 8364 + x: 308 + y: 80 + width: 23.749998 + height: 28.749998 + xOffset: 0.81249994 + yOffset: 28.249998 + xAdvance: 25.8125 + scale: 1 + - id: 8482 + x: 255 + y: 491 + width: 36.437496 + height: 14.374999 + xOffset: 2.4374998 + yOffset: 28.124998 + xAdvance: 41.125 + scale: 1 + m_KerningTable: + kerningPairs: [] + m_FontFeatureTable: + m_GlyphPairAdjustmentRecords: [] + fallbackFontAssets: [] + m_FallbackFontAssetTable: [] + m_CreationSettings: + sourceFontFileName: + sourceFontFileGUID: 035b6cab9473c4803838a9b4bbc0269a + pointSizeSamplingMode: 0 + pointSize: 37 + padding: 5 + packingMode: 4 + atlasWidth: 512 + atlasHeight: 512 + characterSetSelectionMode: 1 + characterSequence: 32 - 126, 160 - 255, 8192 - 8303, 8364, 8482, 9633 + referencedFontAssetGUID: + referencedTextAssetGUID: + fontStyle: 0 + fontStyleModifier: 2 + renderMode: 6 + includeFontFeatures: 0 + m_FontWeightTable: + - regularTypeface: {fileID: 0} + italicTypeface: {fileID: 0} + - regularTypeface: {fileID: 0} + italicTypeface: {fileID: 0} + - regularTypeface: {fileID: 0} + italicTypeface: {fileID: 0} + - regularTypeface: {fileID: 0} + italicTypeface: {fileID: 0} + - regularTypeface: {fileID: 0} + italicTypeface: {fileID: 0} + - regularTypeface: {fileID: 0} + italicTypeface: {fileID: 0} + - regularTypeface: {fileID: 0} + italicTypeface: {fileID: 0} + - regularTypeface: {fileID: 0} + italicTypeface: {fileID: 0} + - regularTypeface: {fileID: 0} + italicTypeface: {fileID: 0} + - regularTypeface: {fileID: 0} + italicTypeface: {fileID: 0} + fontWeights: + - regularTypeface: {fileID: 0} + italicTypeface: {fileID: 0} + - regularTypeface: {fileID: 0} + italicTypeface: {fileID: 0} + - regularTypeface: {fileID: 0} + italicTypeface: {fileID: 0} + - regularTypeface: {fileID: 0} + italicTypeface: {fileID: 0} + - regularTypeface: {fileID: 0} + italicTypeface: {fileID: 0} + - regularTypeface: {fileID: 0} + italicTypeface: {fileID: 0} + - regularTypeface: {fileID: 0} + italicTypeface: {fileID: 0} + - regularTypeface: {fileID: 0} + italicTypeface: {fileID: 0} + - regularTypeface: {fileID: 0} + italicTypeface: {fileID: 0} + - regularTypeface: {fileID: 0} + italicTypeface: {fileID: 0} + normalStyle: 0 + normalSpacingOffset: 0 + boldStyle: 0.75 + boldSpacing: 7 + italicStyle: 35 + tabSize: 10 +--- !u!21 &21605244428125924 +Material: + serializedVersion: 6 + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_Name: Merriweather-Regular SDF Material + m_Shader: {fileID: 4800000, guid: 68e6db2ebdc24f95958faec2be5558d6, type: 3} + m_ShaderKeywords: + m_LightmapFlags: 4 + m_EnableInstancingVariants: 0 + m_DoubleSidedGI: 0 + m_CustomRenderQueue: -1 + stringTagMap: {} + disabledShaderPasses: [] + m_SavedProperties: + serializedVersion: 3 + m_TexEnvs: + - _BumpMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _Cube: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _FaceTex: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _MainTex: + m_Texture: {fileID: 28888467089585806} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _OutlineTex: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + m_Floats: + - _Ambient: 0.5 + - _Bevel: 0.5 + - _BevelClamp: 0 + - _BevelOffset: 0 + - _BevelRoundness: 0 + - _BevelWidth: 0 + - _BumpFace: 0 + - _BumpOutline: 0 + - _ColorMask: 15 + - _Diffuse: 0.5 + - _FaceDilate: 0 + - _FaceUVSpeedX: 0 + - _FaceUVSpeedY: 0 + - _GlowInner: 0.05 + - _GlowOffset: 0 + - _GlowOuter: 0.05 + - _GlowPower: 0.75 + - _GradientScale: 6 + - _LightAngle: 3.1416 + - _MaskSoftnessX: 0 + - _MaskSoftnessY: 0 + - _OutlineSoftness: 0 + - _OutlineUVSpeedX: 0 + - _OutlineUVSpeedY: 0 + - _OutlineWidth: 0 + - _PerspectiveFilter: 0.875 + - _Reflectivity: 10 + - _ScaleRatioA: 0.8333333 + - _ScaleRatioB: 0.6770833 + - _ScaleRatioC: 0.6770833 + - _ScaleX: 1 + - _ScaleY: 1 + - _ShaderFlags: 0 + - _SpecularPower: 2 + - _Stencil: 0 + - _StencilComp: 8 + - _StencilOp: 0 + - _StencilReadMask: 255 + - _StencilWriteMask: 255 + - _TextureHeight: 512 + - _TextureWidth: 512 + - _UnderlayDilate: 0 + - _UnderlayOffsetX: 0 + - _UnderlayOffsetY: 0 + - _UnderlaySoftness: 0 + - _VertexOffsetX: 0 + - _VertexOffsetY: 0 + - _WeightBold: 0.75 + - _WeightNormal: 0 + m_Colors: + - _ClipRect: {r: -32767, g: -32767, b: 32767, a: 32767} + - _EnvMatrixRotation: {r: 0, g: 0, b: 0, a: 0} + - _FaceColor: {r: 1, g: 1, b: 1, a: 1} + - _GlowColor: {r: 0, g: 1, b: 0, a: 0.5} + - _MaskCoord: {r: 0, g: 0, b: 32767, a: 32767} + - _OutlineColor: {r: 0, g: 0, b: 0, a: 1} + - _ReflectFaceColor: {r: 0, g: 0, b: 0, a: 1} + - _ReflectOutlineColor: {r: 0, g: 0, b: 0, a: 1} + - _SpecularColor: {r: 1, g: 1, b: 1, a: 1} + - _UnderlayColor: {r: 0, g: 0, b: 0, a: 0.5} +--- !u!28 &28888467089585806 +Texture2D: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_Name: Merriweather-Regular SDF Atlas + m_ImageContentsHash: + serializedVersion: 2 + Hash: 00000000000000000000000000000000 + m_ForcedFallbackFormat: 4 + m_DownscaleFallback: 0 + serializedVersion: 2 + m_Width: 512 + m_Height: 512 + m_CompleteImageSize: 262144 + m_TextureFormat: 1 + m_MipCount: 1 + m_IsReadable: 0 + m_StreamingMipmaps: 0 + m_StreamingMipmapsPriority: 0 + m_AlphaIsTransparency: 0 + m_ImageCount: 1 + m_TextureDimension: 2 + m_TextureSettings: + serializedVersion: 2 + m_FilterMode: 1 + m_Aniso: 1 + m_MipBias: 0 + m_WrapU: 0 + m_WrapV: 0 + m_WrapW: 0 + m_LightmapFormat: 0 + m_ColorSpace: 0 + image data: 262144 + _typelessdata: 0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000040f171b1b1b1b1a140a0000000000000001060a0b0b0b070300000000000000000005090b0b0b0905000000000000000000000000000000000000000000000811171919191917120900000000010c141819191919171107000000000000000000000000000000081014151515151515151515141008091014151515151515151515151515151515151515151515130d030000000000000d171d1f1f1f1f1f1f1f1f1f1f1a191e1f1f1f1f1f1f1f1f1f1f1b1b1f1f1f1f1f1f1f1f1f1f1d170d0000000000000000000000000611191c1d1d1d1c191106000008121a1c1d1d1d1c181005000000000000000000000000000000040b0f0f0f0f0f0f0f0f0f0e0a0a0f0f0f0f0f0f0f0e0a10121212100c0f0f0f0f0f0f0f0f0d070000000000000000000003090e12131413110d080100000000050b0f12131513110e090400000000000000000000000b141819191919191919191917120900020d1518191919191919191919191710070000000000081014151515151515151515151410090008101415151515151515151515140f070000000000081014151515151515151515140f07000000000000091014151515140f06000000000000000000000000000000000000000611181b1b1b1b1a160d010000000000000000000000000000000000080d1011110f0b060000000000000000000000000000000000000000000514212b303030302e271c0e00000000050e151b1f2121201c17110800000000020b131a1e2021201e19130b020000000000000000000000000000000000000c1a252c2e2e2e2e2c261b0e000002111e282d2e2e2e2e2c24190b000000000000000000000000000e1a24292a2a2a2a2a2a2a2a2a29241a1c25292a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2720150700000000101e2a32343434343434343434342e2c33343434343434343434342f2f34343434343434343434322a1e10000000000000000000000716232d31323232322d2417080a19252e32323232312c221506000000000000000000000000000a161f242525252525252525231e1e24252525252525231e2527272725202425252525252525221a0f02000000000000030d161e2327292a2826221c150c02091219202427292a2927231e1811090000000000000001111e282d2e2e2e2e2e2e2e2e2e2c261b0e1320292d2e2e2e2e2e2e2e2e2e2e2b24180a0000000e1a24292a2a2a2a2a2a2a2a2a2a29251c0f1b24292a2a2a2a2a2a2a2a2a2a2923190c0000000e1a24292a2a2a2a2a2a2a2a2a29231a0d000000010f1c25292a2a2a2822180b00000000000000000000000000000000000817232c303030302f2a1f1202000000000000000000000000000006131c2225262624201a1208000000000000000000000000000000000000001123323e45464646433a2c1b0900000c1821293034363635312c251b12060009141e272e33363636322e271f150a00000000000000000000000000000000091a2a37404343434341392c1c0b000f202f3b4243434343403729190700000000000000000000000c1d2c373e3f3f3f3f3f3f3f3f3f3e372c2d383f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3c3325150400000a1d2e3c464a4a4a4a4a4a4a4a4a49413e484a4a4a4a4a4a4a4a4a494343494a4a4a4a4a4a4a4a4a463c2e1d0a00000000000000000114253440474747474741352614172837424747474746403324120000000000000000000000000a1a2833393a3a3a3a3a3a3a3a383132393a3a3a3a3a3a3831393c3c3c3934393a3a3a3a3a3a3a362d201000000000000815202a32383c3e3f3e3b3630281f141c252e34393c3e3f3e3c38332c251c120800000000000e1f2f3b4243434343434343434341392c1c22313d43434343434343434343434036281806000c1d2c373e3f3f3f3f3f3f3f3f3f3f3f382d1f2c383e3f3f3f3f3f3f3f3f3f3f3e362a1b09000c1d2c373e3f3f3f3f3f3f3f3f3f3e372b1c0b00000e1f2d383f3f3f3f3d35291a08000000000000000000000000000000021526354046464646443d30200e0000000000000000000000000005152430373a3b3b39342e251b100300000000000000000000000000000000071b2e41505a5b5b5b574a39261301101d29343d44494b4b4a4640382e24170c1a26313b42484b4b4b47423b32271b0e000000000000000000000000000000122638485458585858554a3a281505192c3e4d57585858585447362410000000000000000000000016293b495354545454545454545453493b3d4b53545454545454545454545454545454545454545454504333210d000012263a4c5a5f5f5f5f5f5f5f5f5f5d514f5c5f5f5f5f5f5f5f5f5f5e54545e5f5f5f5f5f5f5f5f5f5a4c3a26120000000000000000091d3143525c5c5c5c5c5344311e203446555c5c5c5c5b51412f1c080000000000000000000002152738464e4f4f4f4f4f4f4f4f4d44444d4f4f4f4f4f4f4d434d5252524d474e4f4f4f4f4f4f4f4a3e2e1c090000000a1926323d464c51535453504b443b31262e3941484e52535453514c4740382f25190d00000000182b3d4d57585858585858585858554a3a272e404f5858585858585858585858534635230f0016293b495354545454545454545454534b3d2b3c4a535454545454545454545452483827140016293b4953545454545454545454534939281501091a2c3d4b5354545452473725120000000000000000000000000000000b1f3244535b5b5b5b594e3d2b1704000000000000000000000000102233424b4f50504e4941382d2113040000000000000000000000000000000c21364a5e6e7070706856422f1b101f2e3b4751585e60605f5b544b4135281b2a37444e565d6060605c564e44392c1e0f0000000000000000000000000004192d4155666e6e6e6e6857442f1b0b2034485c6b6e6e6e6e65533f2b1602000000000000000000001d314558676a6a6a6a6a6a6a6a6a675845485a686a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a61503d29140000172c415569747474747474747474705d596d747474747474747474726161727474747474747474746955412c1700000000000000001024394d607072727270614d3925273b5063717272726f5f4b37220e00000000000000000000081d3144566364646464646464646153546164646464646460525f6767675f5863646464646464645c4b3824100000081828364450596166686968655f574e4337404b555d636768696866615b544c42372b1d0e0000001e32475a6a6e6e6e6e6e6e6e6e6e6857432e364b5e6c6e6e6e6e6e6e6e6e6e6e64523e2914001d314558676a6a6a6a6a6a6a6a6a6a685a48344759676a6a6a6a6a6a6a6a6a6a6656432f1a001d314558676a6a6a6a6a6a6a6a6a665744301b071527384a5b686a6a6a6555422d1904000000000000000000000000000013263b4e61707070706c5a47331e0a000000000000000000000000172b3f515f646666635d544b3e3122120100000000000000000000000000000d22374c6176878786725e4b37241e2e3d4c59646d737676746f675e53463729394855616a71757674716a61564a3c2d1d0c0000000000000000000000000b1f33485c7084848484725e4a362111263a4e6377848484836e5945311c08000000000000000000001f344a5f74808080808080808080745f4a4c62778080808080808080808080808080808080808080806c57422d190400172c42576c838b8b8b8b8b8b8b8b745f5b70878b8b8b8b8b8b8b8b786363788b8b8b8b8b8b8b8b836c57422c170000000000000002162b3f53677c8888887c68533f2a2d42566a808888887965513d2914000000000000000000000b20364b60747979797979797979705c5d727979797979796f5a6b7c7c7c6a62767979797979797968533d281300011325364654616c757b7d7d7d79736b615548515d6871777b7d7d7d7a766f675f54483b2c1c0a00001f344a5f74848484848484848484705b4630384e6378848484848484848484826b56402b16001f344a5f748080808080808080808077624c374b607680808080808080808080725c47321d001f344a5f74808080808080808080735e48331e0f213244566779808080705b46301b0600000000000000000000000000061a2e42566a7d87878776624e3925110000000000000000000000001b30455a6f797b7a7771675c4f40301f0d00000000000000000000000000000a1e33465a6d82958e7a6753402c2a3b4c5b6a7682888c8c89847a7063554637475766737d868b8c8a867d74685a4b3b2a190600000000000000000000001125394e62768b99998d7964503b27182c4055697d92999988745f4b37220e000000000000000000001f344a5f748b959595959595958b745f4a4c62778d9495959595959595959595959595959595959586705b46321d0800172c42576c838a8d97a0998d8b88745f5b70878a8d96a09b8e8b8878636378888c90a0a0918c89836c57422c1700000000000000091d31455a6e83979d97836d59453033485c70869a9d95806c57432f1b060000000000000000000b21364b60768c90909090909088725c5e73899090909087705f728793867163788f90909090907d68533e2913000b1e31435464728089909494938e887d726659616f7a858c91949493908a847b7166594a39271300001f344a5f748b9296999995939087705b4630384e63788f9194999999999490826b56402b16001f344a5f748b95959595959595958d77624c374b60768c959595959595959488725c47321d001f344a5f748b9595959595959489735e48331e1b2d3e50617385959587705b46301b06000000000000000000000000000d2135495d7186999c917c6854402c180400000000000000000000001d32475c728891908c857a6d5e4e3d2b18050000000000000000000000000003172a3e5165788c96836f5c48343547596a798894928a888c958e82736453425465758490968c888a919186786959483623100000000000000000000003172b4054687c929f9393806a56412d1e32475b6f8498988b8f7965513c2814000000000000000000001f344a5f737c808391a48f83807c735f4a4c61757c80838a9fa18c828283848486878788888a989e8974604b36210d00162b40546771747c93a8958075726d5c586a72747b91a7978275736f5f5f6f7376889da08b7674716754402b16000000000000000f23384c6074899d949588735f4a363a4e62778ba0939587725d4935210c0000000000000000000b20364b60747b7d849993807c7a705c5d727b7d888c7d7a6f667a8ea08d7864767c809496827c7968533d28130012263a4d607283919ca1968f8c8c909085776871808d98a099928d8c8d91968f84776856422d1904001f34495e71797c839798837c7a786e5a4530384d6274797b7d8da3a48f7d7b776955402b16001f344a5f737c80838ca09f8a83807c76614c374b60757c80838da29f8a83807c715c47321c001f344a5f737c80838d958482807c725d48331e27394a5c6e8091a29c87705b46301b060000000000000000000000000115293d5065788da1a09884705b47331f0b00000000000000000000001f344a5f7482868d97988b7c6b5a4835220f00000000000000000000000000000e2236495d7084988b7764503d3e5164768898918275727783939282715f4d5f7283949786787275808f9788766553402d1906000000000000000000091e32465b6f839897839085705c483324394d61758a9f937d91806b57422e1a050000000000000000001c30445663676a75889c93806c67635644465764676a73899fa18c766c6c6e6e6f707072737b8fa28e79644f3a26110011253849565c677c93a895806a5d594f4c585d667b91a797826b5e5a51515a5e72889da08b745f5c564938251100000000000001152a3e52667a8f9c888a8e7965503c4054687c929c878a8d7864503b2713000000000000000000081d31445663666e8499937c6765615354616670878d7766606d82959292806b636b8095947d69645c4b38241000182d4155697d90a0a291847a76777b848f877780909e9f91867c7876787b828992836f5a442f1a05001b2f42536064687c909c887466635e503e2b32455661646a7d92a79c887466635b4c3a2612001c30445663686a748ba09f89736a6864584633455764686a768ca19f89736a676254412e19001c30445663686b768c947d6c6a676355432f2233455668798c9dae9c87705b46301b06000000000000000000000000081c3044586c8094a08e8f8b76624e3a261200000000000000000000001d32465a696c717988989b8a7764513e2b170300000000000000000000000000061a2d4154687b8f93806c5945465a6e8294998673635d6575889b8f7c6956687c8f9f8c79685d6170829595836f5c4935210c0000000000000000001024384c61758a9e937d8b8b76624e392a3f53677c90a38e798d86715d48341f0b000000000000000000142738464f52596c80939b8873604f463839474f525e73899fa18c76605758595a5b5b5c5f728699927d68543f2a1500081a2b394352677c93a895806a54453d3b4450667b91a797826b56463f3f475c72889da08b745f4a43392b1a08000000000000081c3044586d829697838694806b5642465a6f8397978385937d6a56422d1905000000000000000002152738464e586e8499937c67524d44444d5a6f868f78636075899b878886725e6c8297927c67524a3e2e1c09001c31465b708599ac98857366606267717d8d858d9ea190827369636063676d75807a66533f2b170200122535434b4f61758a9e8f7a66524a4134343438454c5c708599aa95826d594e483d2e1d0a00142738464f535f748ba09f89735e5350483a2939474f5360768ca19f89735e524e4536251200142738464f5360768c947d6854524f4537262e3f5162748697a5a29c87705b46301b060000000000000000000000001024384b6073889c9a8687927d6955412d190500000000000000000000172a3c4c55575d697a8da195826e5a46321e0900000000000000000000000000001125384c6073879b8875614d4d61758a9e927d695648586a7d939986725d7085989884705c4a5265788d9f8c7864503b2612000000000000000001162a3e53677b90a38f7986917c68533f3145596d83979e8974898c77634e3a2511000000000000000000091a28343a3d5063778a9e8f7b6854403f3f3f3f485e73899fa18c76604b43444446464756697c9097826d58432e1a00000d1b273c52677c93a895806a543f2a283b50667b91a797826b56402b32475c72889da08b745f4a34271b0d000000000000000e22364b5f73889c937d829586705c484c6075899e937d809486705c48331f0b0000000000000000040c1a283343586e8499937c67523c313243586e84907964687c909582828d79656d8398907a65503b2d201000001f34495e73899ea7927c68554c4d54606e7d8f9aa996847262564e4c4e5359626e6e5e4a37241000000717253037465a6e839795826c584a4a4a4a4a4a4a4e62778b9fa28e7a66523e342c1f100000091a28343a4a5f748ba09f89735e483b352a1c29343b4b60768ca19f89735e483a3327180700091a28343b4b60768c947d68533e3a3328283a4b5d6e8092a3938d9c87705b46301b06000000000000000000000003172b3f53677a8fa39480829685705c4834200c000000000000000000000d1e2e3a41424b5d71869a9e8a75614c38230e0000000000000000000000010508091d3044576a7d92917d695651667b90a28d77634e3b4f64798ea18d7763758a9f937d6955404a5e73889d937d6954402b150000000000000000081c3145596d82969f8a758296836e5a45374b5f74889d99857086927d6854402b17020000000000000000000b17202534475b6e82969784705c5454545454545e73899fa18c76604b362f2f30313a4d6073879287715d48331e00000012273c52677c93a895806a543f2a263b50667b91a797826b56402b32475c72889da08b745f4a341f0a000000000000000014293d5165798ea28e797b908b76624e52667b8fa28e79798f8b77634e3a2611000000000000000b172025262e43586e8499937c67523c272c42576c83917b666f84978f7a7a8f806c6f84998f78634e39240f0200001f344a5f748ba0a59079644f3a38425064788da1a08c796654443a37393e46505b5b50412e1b0800000008141c2b3f53677b8f9c88735f5f5f5f5f5f5f5f5f697d92a69b88735f4b3723190f010000000b1720344a5f748ba09f89735e483321180c1821364b60768ca19f89735e48331f16090000000b1721364b60768c947d68533e292022344557687a8c9e9c89869b87705b46301b0600000000000000000000000b1e32465a6e8396a28e797b908c77634f3b26130000000000000000000000101d262c2e42576c8296a48f7a66513c2712000000000000000000070f161a1d1e1e283b4f63768a9986725e53687d949f8a745f4a374c60768ca1907b66788da3907b66513c465b70869b97836c57422d1800000000000000000e23374b5f74889c9b86717c918974604b3d51657a8fa395806c8297836e5a46311d0800000000000000000000040c182b3f5266798d9f8c776a6a6a6a6a6a6a6a73899fa18c76604b36343f43434344576a7d7c776f5c47321d00000012273c52677c93a895806a543f2a263b50667b91a797826b56402b32475c72889da08b745f4a341f0a00000000000000071b2f43586c80959e8974778c917c6853586d82969e8974758a927d6954402c17030000000000091a28343a3b3b43586e8499937c67523c3c3b40566b80937c67778b9c88747388887370869b8c77624c37220d0000001e33485e73889da5907b665241363f54697d93a79985705c49372f2f2f2f323e46463f3223110100000000011024384c6074899c8e79747474747474747474748498a895806c5844301c080000000000000a1f344a5f748ba09f89735e48331e09010b21364b60768ca19f89735e48331e0900000000000b21364b60768c947d68533e291d2e405263758798a59280869b87705b46301b06000000000000000000000012263a4e62758a9e9c8873768b927d6a56422e190500000000000000000000000a1217293e53687c93a8947d69543f2a1500000000000000030f1a232a2f3233333133475a6d82958e7a66546a80959f89735e48344a5f748ba0937c67788fa49079644f3a445a6f869b99846e58432e19000000000000000014293d51667a8fa396826c778c8f7a655143586c8095a48f7b687d928974604b37230e0000000000000000000000000f23364a5d7085989480808080808080808080899fa18c76604b364452585858544e606c68635d513f2c1900000012273c52677c93a895806a543f2a263b50667b91a797826b56402b32475c72889da08b745f4a341f0a000000000000000d21364a5e72879b98846f728797836d595e72889c98846f708498846f5b46321e090000000000142738464f50504a586e8499937c67525052504b54697d947d6a7d9295826d6d828e7a71879c8b745f4a35200b0000001b3045596d8295a795826f5f524944586c8397a8947d6a5544444444444444444444433b2f1f0d0000000000091d3145596d8296958b8b8b8b8b8b8b8b8b8b8b8e9fa18d7965513d2915010000000000000a1f344a5f748ba09f89735e48331e16161621364b60768ca19f89735e48331e0900000000000b21364b60768c947d68533e29293a4c5d6f8292a49b8875869b87705b46301b060000000000000000000006192d4155697d91a595826d70859986715d4834200c0000000000000000000000000011263b50667b90a597826b56402c160100000000000614212d363e4447484845413e5265798d96836f5b687d949f89735e49364b60768ca0917b66788da3907965503b455a6f869b98836d58432e1900000000000000071b2f43586c8295a4907b67718695806c57495e72879b9e8a7563788d8f7a66513d2914000000000000000000000000071a2e4154687b8f9e9595959595959595959598a6a18c76604b3b50626d6e6e66545057544e484032221000000012273c52677c93a895806a543f2a263b50667b91a797826b56402b32475c72889da08b745f4a341f0a0000000000000014283c5065798da2927d696c829588735f64798da2927d696a7d938a75614d38241000000000001c3044566366655c586e8499937c67556367665d52677c938071869a8e7a6665798e8273889d88735e48331e0a000000162a3e5265788a999f8d7d6f655d595a6f869aa5907b665a5a5a5a5a5a5a5a5a5a5a584d3d2a17030000000002162a3e52667a8fa3918d8d8d8d8d8d8d8d8d8e9bac9a86725e4a36220e000000000000000a1f344a5f748ba09f89735e48332b2b2b2b2b364b60768ca19f89735e48331e0900000000000b21364b60768c947d68533e293546586a7b8d9fa2917d6f869b87705b46301b06000000000000000000000d2135495d708599a28e79656a7d938c7763503b2713000000000000000000000000000f253a4f64798fa498836c57422c170200000000061524323e4952595c5e5d5a554e495d7085988b7763667b90a08c76614c3a4e63788da38f7964758a9f927c68533e485d72889c96826b56412c17000000000000000d21364a5e72879b9e8a75616b809487725d5064788da198846f5e728795826c57432e1a060000000000000000000000001225394c5f73879a958484848484848484848a9fa18c76604b3f54697d84846e5843423f3a342d22140400000012273c52677c93a895806a543f2a263b50667b91a797826b56402b32475c72889da08b745f4a341f0a000000000000061a2e42576b8094a18d7864667b908e79656a8094a18d786464788d907b67533e2a1601000000001f344a5f737b7a68586e8499937c675d727c7a6853667b9182798d9b88735f5f73888874899c87705c473628180600000f2336495a6b7b89949c8e8279726d6b70879ca48f786f6f6f6f6f6f6f6f6f6f6f6f6b5a46311d0800000000000f23374b5f73889c8c7777777777777777778397a793806a57432e1b07000000000000000a1f344a5f748ba09f89735e48404040404040404b60768ca19f89735e48331e0900000000000b21364b60768c947d68533e2f415264758899a89785736f869b87705b46301b060000000000000000000014283c5064788ca09b87725f63778c93806a56422e1a060000000000000000000000000e23384e63788fa498836c57422c17020000000213243342505c666d7273726f69615755687c9093806c61758a9e907b67534355687c929f8a756170849896826d59474f63778ca0917c67533e29140000000000000013273c5064798da298846f5b65798e8d7763566a7d93a7927d69586d829687725d4934200c000000000000000000000000091d3043576a7d929884706e6e6e6e6e6e73899fa18c76605353576c8297846e58432e2b251f1911050000000012273c52677c93a895806a543f2a263b50667b91a797826b56402b32475c72889da08b745f4a341f0a0000000000000c2035495d71869a9b87725e61758a94806b70869a9b87725e5e738896826d5945311c08000000001f344a5f7489826d586e8499937c6760768b7d685664799082829594806c58586c808f7b8b9a856f5a5346362310000006192b3d4e5d6b77828a92958d8783807d889da38f86868686868686868686868686745f4a35200b0000000000081c3044586c8295937d6a626262626262758a9ea08c7764503b281400000000000000000a1f344a5f748ba09f89735e56565656565656565660768ca19f89735e48331e0900000000000b21364b60768c947d68533e3b4d5e708293a59c8a78676f869b87705b46301b06000000000000000000081c3043576b8094a794806c585d71869a86715d4935210d0000000000000000000000000e23384e63788fa498836c57422c17020000000d20314251616e7982878988847d74695c6073889b8874606e829497837060586071859897836f5b687b8e9d897664595c6c7d929d8975614d39241000000000000005192e42566a8094a7927d69555e7388927d695c70859aa18c776353677c908c77634f3a26110000000000000000000000000114273b4e6175899c8c7864585858585e73899fa18c76686868686f8599846e58432e19110b0500000000000012273c52677c93a895806a543f2a273c51667b91a797826b56402b32475c72889da08b745f4a341f0a00000000000012273b4f63778da196826c585b7085998670778ba096826d58596d829788745f4b37220e000000001e33485d728888726e6e8499937c6c6d798f7d686a6d788e83889c8d7965515165798e828c98836e6c64533f2a150100000e1f303f4d59646e767d83888c8f909294a2a7958f8f8f8f8f8f8f8f8f919b9b8c77624c37220d00000000000115293d5165798e9985705c4c4c4c53687c90a49985715d4834210c00000000000000000a1f344a5f748ba09f89736b6b6b6b6b6b6b6b6b6b6b768ca19f89735e48331e0900000000000b21364b60768c947d68533e47596a7c8e9fa2907d6d5b6f869b87705b46301b060000000000000000000f23374b5f73879ba18d786550566b80948d7864503c28140000000000000000000000000e23384e63788fa498836c57422c1702000004172a3d4f6070808c96908b8b919187796b5b6b8093907c69647688988f7d726d717d8f9d8c7967535e7082939483756e6f798a9b91806d5a46321e0a0000000000000c2034485d71869aa18c77634f586d8296847062778b9f9b87725d4d62768b927d6955402c18030000000000000000000000000b1f3246596c809494806c594543485e73899fa18c7d7d7d7d7d7d8899846e58432e1903000000000000000012273c52677c93a895806a543f2a273c52677c93a895806b56402b33485d72889d9f89735e49341f0a000000000005192d41556a7d93a4907b6752566a80948b767c91a4907b675253687c918f7965513d2914000000001c31465b70878d848383859a9382838384927d687783848f83909a86725d4a4a5e7287888c978684836c57422c170200000112212f3c47515a62696e7376787b7c879ca48f787878787878787878889da38d77634e38230e0000000000000e22364a5e72879b8b77624e3a465a6e8397a6927d6a55412e190500000000000000000a1f344a5f748ba09f8a828282828282828282828282828ca19f89735e48331e0900000000000b21364b60768c947d6853415364768899a7958472605a6f869b87705b46301b06000000000000000003172b3e52667a8fa29a86725d495064788d94806b57432f1b0700000000000000000000000e23384e63788fa498836c57422c170200000c2034475a6c7d8f9c8c7d75767d8c988a796863768a9985715d697988948f8683868f9a8e806e5c4a5364748390938884848b9892847362503d2a170300000000000012263a4f63778ca09b86725d4952667b8f8a75687c92a695806c57485c708698846f5b46321d0900000000000000000000000003162a3d5064778b9c8874604d39485e73899fa6979394949494949799846e58432e190300000000000001111e283c52677c93a895806a543f352e3e53687d93a895806a543f2f354a5f74899f9d88735e48331e0900000000010d1f33485c7085999f8a75614c5065798e8f7982969f8a75614c4d62768b95806c58432f1b0b0000001a2f445a6f858b8b8b8b8b8b8b8b8b8b8b8b7d68778b8b8b8b8b8b806a574343586b808b8b8b8b8b836c57422c1702000007192a38424642474e54595e61646670879ca5907b6663636363636372889da48f78634e38230e000000000000071b2f43576b8094927d6854404c6075899d9f8b77634e3b26120000000000000000000a1f344a5f748ba0a699979797979797979797979797979aa99f89735e48331e0900000000000b21364b60768c947d68534e5f708394a69b8a7766555a6f869b87705b46301b0600000000000000000a1e32465a6d8296a793806a56424a5e72879b87725e4a36220e00000000000000000000000e23384e63788fa498836c57422c1702000013273b5063768a9c927d6d60616d7d91978673606e82958d79665b697682898f91908d877c7061503f465665727d878d91918f89807365554433210e00000000000004182c4155697d92a795806c57434c60758a907b6f8397a38f7a665142566b80948a75604c38230f000000000000000000000000000e2134485b6f8396907c695541485e73899fa28d8384848484868a99846e58432e19030000000000000e1f2f3b4252677c93a895806a5c51494343566b8095a8937c68534943424e63778ca19b87705c47321c0700000002121f2a3a4e63778ba09985705b474a5f7388927c869a9985705b47485c71869a87725e4935281d0f0000182d42576a747474747474747474747474747466717474747474747363503b3c5064747474747474746955412c1701000011243748565b564c434045494c4f5d72889da8947d69554e4e4e4e5d72889da28d77624c38230d0000000000000014283c5064788d98846f5b4653677b90a49884705b47331f0b0000000000000000000a1f344a5f748ba09f8b868686868686868686868686868da29f89735e48331e0900000000000b21364b60768c947d6853596b7c8fa0a18f7d6c5a485a6f869b87705b46301b0600000000000000001125394d6175899da08c77634f3b43576c80958d7965513d291400000000000000000000000e23384e63788fa498836c57422c17020000182d42566a80939e8a75614f4f6175899d907c6866798d96826e5b58646d75797b7b78726a5f514232384755606a72787b7b79746d635647382715030000000000000a1e33475b708499a38f7a65513d465a6f839682758a9e9d8974604b3c51657a8f8f7b66523e29150000000000000000000000000005182c3f5366798d9885705d49485e73899fa18c766e6e6e6e708699846e58432e1903000000000000182b3d4d575c677c93a89786796e645d58585f71869aa5907a6f655d58575c6b7d92a698836e59442f1a050000000f20303d4455697d92a6937d6a554245596e8395808a9e937d6a554143576b80948d786450433a2d1d0b0014283b4d5a5f5f5f5f5f5f5f5f5f5f5f5f5f5f585e5f5f5f5f5f5f5f5646343547575f5f5f5f5f5f5f5a4c3a26120000071a2d40536670685f57504a47474b60758a9fad98846f5b4839384c60758b9f9e89745f4b35200b000000000000000d2135495d71869a8a75614d596d8296a5917c6854402c18040000000000000000000a1f344a5f748ba09f89736f6f6f6f6f6f6f6f6f6f6f768ca19f89735e48331e0900000000000b21364b60768c947d68546677899ba6958371604e445a6f869b87705b46301b060000000000000005192d4155687c91a59985705c48343d5165798e95806c58432f1b07000000000000000000000e23384e63788fa498836c57422c170200001c31465b70869a99846f5a46465a6f849997836d5d7185988a776350515a60646666635e574d4133242937434e575e636666646059504538291a09000000000000001125394d62768a9f9d8974604b374054687c92887b90a497836e5a46374b60748996826c58432f1b06000000000000000000000000001023374a5d7185988d786551485e73899fa18c76605858596c8397846e58432e1a120800000000001e32475a6a70767c93a4918b8b8278716d6d727d8fa19f928c8279726d6c7079899ba6927d6955402b1601000000182b3e4e595e708498a28d78645b554854687c92848ea28d78645049565c65798f93806a5d574b3a2814000b1e2f3d474a4a4a4a4a4a4a4a4a4a4a4a4a4a45494a4a4a4a4a4a4a4438282a39444a4a4a4a4a4a4a463c2e1d0a00000f23374a5d70837c736b645f5c5c5f687a8fa3a69f8b7766564c4c56677b8fa49884705b46321d0800000000000000061a2e42566a7d93907c68536074899d9e8a75614e392511000000000000000000000a1f344a5f748ba09f89735e5a5a5a5a5a5a5a5a5a60768ca19f89735e48331e0900000000000b21364b60768c947d6860718395a69a8977655442445a6f869b87705b46301b06000000000000000c2034485c708498a6927d6955412d364b5f73889b87725f4b36220e000000000000000000000e23384e63788fa498836c57422c170200001e33485e73899e95806b564141566b82979b87715c697c9093806b5844464b4f50504e4a433a3023151926313b434a4e50504f4b463d33271a0b0000000000000002172b3f54687c91a597836e5a45313a4e62778b8e8296a6927d68544031465a6f849887725e4a35210c00000000000000000000000000071b2e4155687c9095826d59485e73899fa18c76604b4354697d87846e5843322e25190a000000001f344a5f74868b909aa38d7a87928c868383868f9ca5948286918d878383868c98a79b8a76634f3b2612000000001e33475b6c73778a9f9c8877737066544e63778c94989c88735e4a5567707478899a8677726957432f1a0000111f2b32343434343434343434343434343431343434343434343430271a1b283134343434343434322a1e1000000013283d5266798d8f87807874727274798798a3929295847468616166738598a18f7c6855402c1803000000000000000013273b4f63778c97836e5a667a8fa397836e5a46321e0a000000000000000000000a1f344a5f748ba09f89735e48444444444444444b60768ca19f89735e48331e0900000000000b21364b60768c947d686c7d8fa1a08f7c6b594836445a6f869b87705b46301b060000000000000014283b5063778c9f9f8b76624e3a263044586d82958e7965513d2915010000000000000000000e23384e63788fa498836c57422c170200001f344a5f748ba0947d69543f3f546a80959d88725c6074889b8874604d39373a3b3b39352f271e120508141e282f36393b3b3a37312a2116090000000000000000091d31465a6e8397a5917c68533f2b33485c7086968f9ea08c77634e3a2c4055697d938d78644f3b271200000000000000000000000000001226394d6073879b8975614d5e73899fa18c76604b3c50647070706855474742372817040000001f344a5f748b96989b9e8c777580899198989b9f9b938776737d889097989a9f9d978c7d6c5a4733200c000000001f344a5f74888d94a0a0908c89836c57495d72879ba096826d5944586e84898d92a0928c87705b46301b0000010e181e1f1f1f1f1f1f1f1f1f1f1f1f1f1f1c1f1f1f1f1f1f1f1f1c14090a151c1f1f1f1f1f1f1f1d170d0000000013283d526778848e97938d898888898e97a59886829092857b76767a8492a19383715f4c3925110000000000000000000c2034485c7085998974606d8296a4907b67533f2b1703000000000000000000000a1f344a5f748ba09f89735e48332f2f2f2f2f364b60768ca19f89735e48331e0900000000000b21364b60768c947d6876899ba59482705f4d3c2f445a6f869b87705b46301b06000000000000071b2f43576b8093a798846f5b47331f293e52667a8f95826c5844301c080000000000000000000e23384e63788fa498836c57422c170200001f34495e73899f95806a543f40566b80959d88725c586b8093907c6955412e25262624201b140b000000020b141b2124262625221d160e040000000000000000000f23384c6075899d9f8b76624e39252d42566a8093a4ac9a86715d4834263b4f64788d937d6a55412d1804000000000000000000000000000a1d3044576a7d92917c69555e73899fa18c76604b3646545b5b5b585c5c5c554634200c0000001f344a5f747d828486898673626c757d84888b8a87807668616b747c83888b8b88837a6e5f4e3d2a1704000000001f344a5f748b8b8b8b8b8b8b8b836c5743586c828b8b8b7c685343586e848b8b8b8b8b8b87705b46301b000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000f24374a5a66717a848b92979b9d9d9c99928879717d8a93908c8c8f96978f8374645442301d0a00000000000000000005192d4155697d928f7a6673889c9d8974604c38241000000000000000000000000a1f344a5f748ba09f89735e48331e1a1a1a21364b60768ca19f89735e48331e0900000000000b21364b60768c947d6f8294a6998876645341302f445a6f869b87705b46301b060000000000000f23364a5e72879aa5917c6854402c1823374b6074889c88735f4b37230f0000000000000000000e23384e63788fa498836c57422c170200001d32475c71869b97826c574244586d83989b86705b5063778a9885715d4a362311110f0c070000000000000000070c0f1111100d0802000000000000000000030f172a3e52667b8fa49a86705c48331f273b5064788da2a994806b57422e21354a5e73889985705b47321e12080000000000000000000000000314283b4f6276899985715d5e73899fa18c76604b3637414646576972727163503b26110000001c31445764686b6e70737368585961696f737474726c63584e5860686e727474736f675d5041311f0d00000000001f34495d7074747474747474747469554152667474747472614d42576a74747474747474746d5945301b0000000000000000000000000000000000000000010b13171a1a1a19150f08000000000000000000000000000000000000081b2c3c49545e6770777d8387888887847d756a606c768086898b8b88837b71645647362513000000000000000000000012263a4e62768b96826d7a8fa396826d5945311d0900000000000000000000030e1f344a5f748ba09f89735e48331e10051021364b60768ca19f89735e48331e0e02000000030f21364b60768c947d798c9f9f8e7c6a594735242f445a6f869b87705b46301b0c00000000030f172a3e5266798ea29e8a75614d3925111c3145596d82968f7a66523e2a181004000000000000000e23384e63788fa498836c57422c17020000192e43586c82959a86715d494a5e72879b96826d58475b6e82968d7966523e2b1804000000000000000000000000000000000000000000000000000000000413212b3144586d8296a894806a56422d272f364a5e72889da38f7965513c2b263044596d82978a75614d382e25190a000000000000000000000413212b33465a6d82958d79665e73899fa18c76604b36343436495d7186887c67523c271200000015283947505356595b5e5f564a464e555a5e5f5f5d5850473b444d53595d5f5f5e5a544a3f3223130200000000001a2e41515d5f5f5f5f5f5f5f5f5f5a4c3a48585f5f5f5f5e54443b4d5a5f5f5f5f5f5f5f5f5c4f3d2a160000000000000000000000000000000000000004121e272c2f2f2f2d2a241b120600000000000000000000000000000000000e1e2b37414b545c63696d707373726f6a63584f5a636a70737474736e685f53473829180700000000000000000000000b1f33475b6f849888728295a38f7a66523e2a16020000000000000000000313202b344a5f748ba09f89735e48332c2215222c364b60768ca19f89735e48332a1f1202000413212b364b60768c947d8597a593826f5e4c3b292b31445a6f869b87705b4630291e1000000413212b3245596d8295a997836e5a46321f11162a3e53677b9096826d5945322c2214050000000000000e23384e63788fa498836c57422c1702000015293d5165798c9e8c7966585867798da28f7b67533f5266798d95826e5a4733200c000000000000000000000000000000000000000000000000000000001022323e464b5f73889ca28e796450463e3843485064788da19d88745f4b463e38424753687c91907b67534842372817040000000000000000001022313e45485164788c96826e5e73899fa18c76604b4a4a4a4b4f63778c907a65503b26110000000a1b2a353b3e414446494a4439323a4045494a4a48433d342931393f45484a4a494540372d22140400000000000011233341494a4a4a4a4a4a4a4a4a463c2e3a454a4a4a4a4943362f3d474a4a4a4a4a4a4a4a483e31200e000000000000000000000000000000000000001122303a41444444433e382e24180b00000000000000000000000000000000000e1a252e3840484e54595c5e5e5c5a554f463d474f565b5f5f5f5e5a544c4236291a0b00000000000000000000000004182c4054687c918d78879b9c88735f4b37230f000000000000000000000f21313e464a5f748ba09f89735e4a46403324323f464b60768ca19f89735e49453d301f0e001022323e464b60768c947d8fa29987756452412f323e46495a6f869b87705b49453c2e1d0b001022323e464d6075899da48f7b6753453c2f1e2534404c6075899c8874604c463f3223110000000000071323384e63788fa498836c57422c170200000e2236495c6f82919685756c6c7585979785725f4c384a5d7185998a76634f3b281501000000000000000000000000000000000000000000000000000000192d3f505b5f65798ea29c8873615e5b5048565d606a8093a797836e605e5a4f47555c5f62778c96826d605d554634200c0000000000000000061a2d404f5a5d5f606f83978a766373899fa18c76605e5f5f5f6060697d928e78634e39240f000000000c182126292c2f31343430271e262c31343434332f2921171d242b3033343434312b241b1004000000000000000515232e34343434343434343434322a1e283134343434342f251f2b323434343434343434332c211302000000000000000000000000000000000000081c2f404d56595a5a58534b4136281a0b000000000000000000000000000000000008121b252c333a40444748484745413b332a343b42464a4a4a484540382f24180b00000000000000000000000000001125394d61758a927d8ca195806c5844301c0800000000000000000000182b3e4f5a5e61748ba09f8973625f5b51412f40505b5f62768ca19f8973615e5a4e3d2a1600192d3f505b5f62768c998f9a9e8d7b695846352d3f505b5e616f869b8770615e594c3b281400192d3f505b5f687c90a49c8974605e594d3c293043525c5f6e83978f7b675f5b50402e1a0600000006162530384e63788fa498836c57422c17020000061a2d3f5163738390948882828894978a79685643304255697c9093806b5744301d090000000000000000000000000000000000000000000000000000001e33485c6e74788095a997827876736e5c5266727579869aa7927c7876736d5b516471747779869b8879757163503b261100000000000000000a1f34495d6d727476777a8e927d7676899fa18c76737374747475767684998c76614c37220c0000000000050d1114171a1c1f1f1c140b11171c1f1f1f1e1a150d040910161b1e1f1f1f1c1711080000000000000000000005111a1f1f1f1f1f1f1f1f1f1f1d170d151c1f1f1f1f1f1b130e181e1f1f1f1f1f1f1f1f1e190f03000000000000000000000000000000000000000e23384c5e6a6e6f6f6c675e5346382919080000000000000000000000000000000000000811191f262b2f32333332302c261f1720272d3234343433302b251c12070000000000000000000000000000000a1e32465a6e83978592a28d7965513d291501000000000000000000001d32475b6d7376798ba09f897977736f5f4a36495d6e7377798ca19f897976736c5a45311c001e33485c6e7377798ca1a4a492826f5d4c3a2933485c6e737679869b877976736a57432e19001e33485c6e74788498ac97827876736b58442f374c607074777c91968278746e5d4934200a000000122434424b5063788fa498836c57422c1702000000102234455564727d888f9394918d85796b5b4a38263a4d6074889b8873604c3925100000000000000000000000000000000000000000000000000000001f344a5f74898d929da09d918e8c89745f546a808b8e93a0a099908d8b88735e53687d898c8f92a0948f8b7c67523c271200000000000000000b21364b607688898c8d8f959b8d8c8c90a0a08f888989898b8b8b8c8c8f9f89745f4a341f0a0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000011263b50667b848686827a706456473726140300000000000000000000000000000000000000040b11161a1c1e1e1d1b17120c040c13191d1f1f1f1e1b171109000000000000000000000000000000000003172b3f53677b909a9f9a87725e4a36220e00000000000000000000001e33485e73898c8f95a0a0948f8c8977624c374b6076898c8f95a0a0948f8c88725c47321d001f344a5f74898c8f95a0a09886746351402e1f344a5f74898c8f92a0938f8b866f5a442f1a001f344a5f74898d92a0a09d918e8b87705b4630384e6378898d90999f928d8976604b36210b0000061a2e41525f6469788fa498836c57422c1702000000051627374654606b73797c7d7c7871675b4d3d2c1e3145586c808b8b7c68533f29140000000000000000000000000000000000000000000000000000001f344a5f748b8b8b8b8b8b8b8b8b8b745f546a808b8b8b8b8b8b8b8b8b89735e53687d8b8b8b8b8b8b8b8b7c67523c271200000000000000000b21364b60768b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b88725c47321d080000000000000000000000000000000000000000000000000000000000000105090b0b0d0c0b09060100000000000000000000000000050d11121212121212121212121212121212121212121212100a01000000000000040c101111111111111111111111100b03000000000011263b50667b919b9a968e837465554432200e0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001024384c6074898b8b8b806b57432f1b0700000000000000000000001e33485e73898b8b8b8b8b8b8b8b8b77624c374b60768b8b8b8b8b8b8b8b8b88725c47321d001f344a5f748b8b8b8b8b8b8b7a68574534221f344a5f748b8b8b8b8b8b8b8b866f5a442f1a001f344a5f748b8b8b8b8b8b8b8b8b87705b4630384e63788b8b8b8b8b8b8b8b76604b36210b00000a1f34495d70797d8390a598836c57422c17020000000009192836434e585f65676867635d544a3d2f1f15293c50637374747467533e29140000000000000000000000000000000000000000000000000000001f34495d7074747474747474747474705d536774747474747474747474746f5c52667474747474747474747464503b261100000000000000000b20354a5e7074747474747474747474747474747474747474747474747474746d5945301b06000000000000000000000000000000000000000000000000000000050b10151a1e20212221201e1b161009010000000000000000000c182126272727272727272727272727272727272727272727251e1305000000000a1620252626262626262626262626251f16090000000011263b50667b91949599a0938372614f3d2a17040000000000000000000000000000020506060606060607090a0b0c0d0c0b0805000000000000000000000000000000000000000000000000000000000000091d3145596d747474747363503c28140000000000000000000000001d32475c6f7474747474747474747471604b364a5e70747474747474747474746e5b46311c001f34495d70747474747474746e5c4b3928161f34495d707474747474747474746b58432e19001f34495d70747474747474747474746d594530384c61727474747474747474705e4a35200b00000a1f344a5f748b93989eab98836c57422c170200000000000a1825313b444b505253524e4941382c1f110d203446565f5f5f5f58493724100000000000000000000000000000000000000000000000000000001a2e41515d5f5f5f5f5f5f5f5f5f5f5d5149585f5f5f5f5f5f5f5f5f5f5f5d5148585f5f5f5f5f5f5f5f5f5f574735210d0000000000000000071b2f42525d5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5c4f3d2a1602000000000000000000000000000000000000000000000000050e13191f252a2f333536373636332f2b241d140a000000000000000a1b2a353b3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c39302314020000081928333a3b3b3b3b3b3b3b3b3b3b3b3a3327180700000011263b50667b807d80858f9b91806c5a4734210e000000000000000000000000020e161b1b1b1b1b1b1b1d1e1f21222221201d19150f0800000000000000000000000000000000000000000000000000000002162a3d4f5c5f5f5f5f5f564634210d000000000000000000000000192c3f515d5f5f5f5f5f5f5f5f5f5f5e53433042525d5f5f5f5f5f5f5f5f5f5f5c503e2b17001a2e41515d5f5f5f5f5f5f5f5c503f2d1c0a1a2e41515d5f5f5f5f5f5f5f5f5f5b4e3c2915001a2e41515d5f5f5f5f5f5f5f5f5f5f5c4f3d2a3144545e5f5f5f5f5f5f5f5f5d52422f1b0700000a1f344a5f748b8f91939698836c57422c170200000000000008141f2830373b3d3e3c3a352e251b0f0104172838444a4a4a4a453b2c1a0800000000000000000000000000000000000000000000000000000011233341494a4a4a4a4a4a4a4a4a4a49413b454a4a4a4a4a4a4a4a4a4a4a48403a454a4a4a4a4a4a4a4a4a4a44392a180500000000000000000012243441494a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a483e31200e0000000000000000000000000000000000000000000000000b1822282e34393f44484a4b4c4b4b48443f3930271c1003000000000015283947505252525252525252525252525252525252525252524d4132200c0000132637454f50505050505050505050504e453625120000000f24394e616e6b686a717d8c9b8a7663503d2a1703000000000000000000000313202a303030303030303233343637373635322e29231b130a00000000000000000000000000000000000000000000000000000e20313e484a4a4a4a4a443828170400000000000000000000000010223240484a4a4a4a4a4a4a4a4a4a494235253441494a4a4a4a4a4a4a4a4a4a483f32210f0011233341494a4a4a4a4a4a4a483f3221100011233341494a4a4a4a4a4a4a4a4a473e301f0d0011233341494a4a4a4a4a4a4a4a4a4a483e3120263643494a4a4a4a4a4a4a4a4941342412000000091f34495d7076787b7d8284796a56412c170200000000000000020c151c222628292725201a12080000000b1a27303434343431291d0e000000000000000000000000000000000000000000000000000000000515232e3434343434343434343434342e29313434343434343434343434332d28313434343434343434343431281b0c000000000000000000000616242e343434343434343434343434343434343434343434343434343434332c2113020000000000000000000000000000000000000000000000091a29353c42484e53585d5f606260605d59534c43392e211304000000001c314457646767676767676767676767676767676767676767675f4f3c281300001b2f43556366666666666666666666666254412e190000000a1e314352595653555f6d7d8f93806d5a46331f0c000000000000000000000f21313d4546464646464647484a4b4c4c4b4a47433e372f261c11060000000000000000000000000000000000000000000000000213212c33343434343430271a0b000000000000000000000000000414222d3334343434343434343434342f2517242e3434343434343434343434332d221303000515232e3434343434343434332d221404000515232e34343434343434343434332b201201000515232e3434343434343434343434332c211318252f343434343434343434342e241606000000061a2e41515d616466686b6e695c4c3a27130000000000000000000001080d11131312100c0600000000000009141c1f1f1f1f1d160c00000000000000000000000000000000000000000000000000000000000005111a1f1f1f1f1f1f1f1f1f1f1f1f1a161d1f1f1f1f1f1f1f1f1f1f1f1e19151c1f1f1f1f1f1f1f1f1f1f1c150a00000000000000000000000006121a1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1e190f030000000000000000000000000000000000000000000000001426384751565d62686d717476777674726d6860564b3f322313020000001f344a5f747c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c6b56412c1702001e33485d727b7b7b7b7b7b7b7b7b7b7b715c47321c000000021425343f44423e424f607285988976624f3b281400000000000000000000192c3e4f595b5b5b5b5b5b5c5e5f606162605f5c58524b43392f23170a000000000000000000000000000000000000000000000000030f191e1f1f1f1f1f1c14090000000000000000000000000000000511191e1f1f1f1f1f1f1f1f1f1f1f1b1207121a1f1f1f1f1f1f1f1f1f1f1f1e19100400000005111a1f1f1f1f1f1f1f1f1e19100400000005111a1f1f1f1f1f1f1f1f1f1f1e180f0200000005111a1f1f1f1f1f1f1f1f1f1f1f1e190f0308131b1f1f1f1f1f1f1f1f1f1f1a1206000000000011233341494c4f595f605f594f4131200e00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001b2f4356646b71777c82878a8c8d8c8b88837c73695d504130200e0000001f344a5f748b93939393939393939393939393939393939393846f5a45301b06001e33485e738991919191919191919188725c47321d000000000716222b2f2d29314254677a8f927d6a57432f1c080000000000000000001e33485c6d7070707070707273747676777674716c665f564c4135281a0c0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000515232e3a4c5d6b7476746c5f4f3e2b18040000000000000000000000000000000c14191b1d1e1c160d000000000000000000000000000000000000000000000000000000000000000008101415151515151515151515130d04000000000000000000030c12151515151515151515151514110a000000000000000000000000000000040f171b1b1b1b1a140a0000000000000001060a0b0b0b0703000000000000000000000000081014151515151515151515151515151515151515151515130d03000000001e33485d7280868c9297938e8b89898b8f9590867a6e5f4e3d2b180500001f344a5f748083858ca0a28d84868687888889898b8b8c999c88725d48331e09001e33485e738283868898a79688868380715c47321d0000000000050f171a1924384c5e6a72869a87725f4b37230f0000000000000000001f344a5f748787878787878888898b8c8d8c8a86827a72695e5246382a1b0b000000000000000000020506060606060607090a0b0c0d0c0b08050000000000000000000000000000000000000810141515151515151515151515120c020000020b11141515151515141009000000000000000000000000000000040b1115181a1b1b1a1815110a03000000000000000000000000000008101415151515151515151515140f0810141515151515151515151515141008000000000000000000000000000005192e4256697b888c897d6d5a47331f0a0000000000000000000000000001111e282e303233312a1e100000000000000000000000000000000000000000000000000000000000000e1a24292a2a2a2a2a2a2a2a2a2a28211608090e0f0f0f0e09061420272a2a2a2a2a2a2a2a2a2a2a2a251c10020000000000000000000000000514212b303030302e271c0e00000000050e151b1f2121201c1711080000000000000000000e1a24292a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a272015070000001d32475c72889a9e90867d78757373767a828d988c7d6c5a4835220e00001c314558666a6c73899fa18c766f70707272737374767c90a08b76604c37220d001b304457666b6e708297a9947d6f6d6a6555422e1a000000000000000004182b3f53677b8282968f7a66523e2b160200000000000000001f344a5f748b8e90959c9c948d8b8b89898b8e93958e867b7063564839291909000000000000020e161b1b1b1b1b1b1b1d1e1f21222221201d19150f0800000000000000000000000000000e1a24292a2a2a2a2a2a2a2a2a2a2a271f140506131e262a2a2a2a2a2a29251c0f0100000000000000000000000610181f252a2d2f30302f2d2a251e170e0400000000000000000000000e1a24292a2a2a2a2a2a2a2a2a2a29231a24292a2a2a2a2a2a2a2a2a2a2a29241a0e00000000000000000000000000001c32475c718699a19c8a76624d38230e000000000000000000000000000d1f2f3b43464748463c2e1d0b00000000000000000000000002080b0b0b0b0a0500000000000000000c1d2c373e3f3f3f3f3f3f3f3f3f3f3c3326161d23252525231c1424323b3f3f3f3f3f3f3f3f3f3f3f3f392e200f0000000000000000000000001123323e45464646433a2c1b0900000c1821293034363635312c251b12060000000000000c1d2c373e3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3c3325150400001c31465b70879c9580736a64605e5e61666f7d8e9b8a7764513d2914000015283a4852555e73899fa18c76605b5b5c5c5e5f5f6074889c8f79644f3a251000152839495356586b8297a9947d685855524738261300000000000000000c1f33475b6f8397979696826d5a46311d0900000000000000001f34495d7076787b899fa08b78767473747579808791998e827466574737261504000000000313202a303030303030303233343637373635322e29231b130a00000000000000000000000c1d2c373e3f3f3f3f3f3f3f3f3f3f3f3b3123131524313a3f3f3f3f3f3f3f382d1f0e000000000000000000010d19232c333a3f4244464644423f39332a21160a0000000000000000000c1d2c373e3f3f3f3f3f3f3f3f3f3f3e362c373e3f3f3f3f3f3f3f3f3f3f3f3e372c1d0c000000000000000000000000001d32475c72889db2a59079644f3a250f00000000000000000000000000172a3d4d585b5c5e594c3a271400000000000000000000000a151d202121211f19100300000000000016293b4953545454545454545454545044342430383a3a3a38302332424f5454545454545454545454544c3e2c1a0600000000000000000000071b2e41505a5b5b5b574a39261301101d29343d44494b4b4a4640382e24170a000000000016293b4953545454545454545454545454545454545454545454504333210d00001b30455a6f869b927c67564f4b48494c525f71869b95826c57432e1904000b1c2b363d485e73899fa18c76604b464747484a4a586c8093927c68533e2914000b1c2b373e41566b8297a9947d6853403d35291a09000000000000000013273b4f63768a9e9282968975604d39241000000000000000001a2e41515d616373899fa08b74605f5e5f60646b74808c9b92857565554433210f000000000f21313d4546464646464647484a4b4c4c4b4a47433e372f261c110600000000000000000016293b495354545454545454545454544e42311e2433424e545454545454534b3d2b18050000000000000003111e2b363f484e53575a5b5b5a57534e463d33281b0e000000000000000016293b49535454545454545454545452483b4953545454545454545454545453493b2916000000000000000000000000001c31465a6f8395a09e8c77634e39240f000000000000000000000000001c31465a6b7072736a57432f1c080000000000000000000b1b283136363636342d21120200000000001d314558676a6a6a6a6a6a6a6a6a6a62513e33424c4f4f4f4c41323b4f616a6a6a6a6a6a6a6a6a6a6a685c4935210c000000000000000000000c21364a5e6e7070706856422f1b101f2e3b4751585e60605f5b544b413528190a000000001d314558676a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a61503d28140000192e43586e84998f79644f3b3633343846596e84999b86705b46301b0600000d192333485e73899fa18c76604b36323233343c5063778b92806b56412c1700000d1a232b40566b8297a9947d68533e2922180b0000000000000000071b2f42566a7d92a08c7b90907c68533f2b17030000000000000011233341494c5e73899fa08b745f4a494a4b5057616e7c8c9c94847362503e2c1907000000192c3e4f595b5b5b5b5b5b5c5e5f606162605f5c58524b43392f23170a00000000000000001d314558676a6a6a6a6a6a6a6a6a6a69604e3a2631425160696a6a6a6a6a685a48341f0b0000000000000112212f3c48535b63686c6f70706f6c68625a5045392c1d0e000000000000001d314558676a6a6a6a6a6a6a6a6a6a66564558676a6a6a6a6a6a6a6a6a6a6a675845311d00000000000000000000000000172b40536676858b89806f5c4935200b000000000000000000000000001e33485d72868786725f4b372410000000000000000005182939454b4b4b4b483f30200d00000000001f344a5f74808080808080808080806c57423e51606464645f503e3f546a808080808080808080808078634e38230e000000000000000000000d22374c6176878786725e4b37241e2e3d4c59646d737676746f675e5346372818070000001f344a5f748080808080808080808080808080808080808080806b57412d180300182d42576c83988c76614c373139414a566375889d9c87705b46301b06000000071e33485e73899fa18c76604b36303b404040485b6f837d776a56412c1700000007162b40566b8297a9947d68533e2913060000000000000000000f22364a5e72869a9a86758a97836e5a46321e0a000000000000000515232e34485e73899fa08b745f4a3434363b44505e6e7d90a291806e5c493623100000001e33485c6d7070707070707273747676777674716c665f564c4135281a0c000000000000001f344a5f74808080808080808080807d68533e2b3d4f60707d808080808077624c37220d0000000000000e1f303f4d5a656f777c8284868786827c766d6357493b2c1c0b0000000000001f344a5f7480808080808080808080725c4a5f748080808080808080808080745f4a341f000000000000000000000000001024364858677174746d6151402d1906000000000000000000000000001b2f43576a7d928f7a67533f2c180400090f121212121221344757606060605c4e3d291506000000001f344a5f748b9595959595959593836c5742465a6e7979796d59453f546a809395959595959595958f78634e38230e000000000000000000000a1e33465a6d82958e7a6753402c2a3b4c5b6a7682888c8c89847a706355463624130100001f344a5f748b95959595959595959595959595959595959595846f5a45301b0600162b40566b828888735e493d454d555d67738292a596836d59442f1a05000000001e33485e73899fa18c76604b363f4e5556565253656f69635b4c3a271300000000162b40566b8297a9947d68533e291300000000000000000002162a3e5265798da2937d6f84988a75614d392511000000000000000005111e33485e73899fa08b745f4a341f2128324050617386999d8b7866523f2c180400001f344a5f748787878787878888898b8c8d8c8a86827a72695e5246382a1b0b0000000000001f344a5f748b9595959595959595937d68533e36485a6c7d8f959595958d77624c37220d0000000000091b2c3d4e5d6b77838b92979591909093918a807467594a3a29170600000000001f344a5f748b959595959595959488725c4a5f748b9495959595959595958b745f4a341f0000000000000000000000000007192b3a49545d5f5f5a5143342210000000000000000000000000000014283b4f63768a96836f5b4734200c111d242727272727273a4f64757676766c58442f22190c0000001f344a5f737c8083899e8c83807d7b6c57424c607589908874604b3f54697b7d80838ea39f8a83807d77634d38230e0000000000000000000003172a3e5165788c96836f5c48343547596a798894928a888c958e8273645342301d0a00001f344a5f737c80838a9fa18c8283838486868787888889989d88725d49341f0a00152a3f53667272726c5a4951596069717a8592a09d8c7966533f2a1601000000001e33485e73899fa18c76604b374b5d6a6b6b6554545a554f483d2e1d0b00000000162b40566b8297a9947d68533e29130000000000000000000a1e3245596d8295a18d78697d92917c6854402b17030000000000000000001e33485e73899fa08b745f4a341f0d1522324356697c90a495826f5b47331f0b00001f344a5f748b8e90959c9c948d8b8b89898b8e93958e867b706356483929190900000000001f344a5f737c8083899ea28d83807d7a68533e415366778a9cab9e8f848076614c37220d00000000001326384a5b6b7b89959e9188807b797a7d858f92867768584735231000000000001f344a5f737c808388998f83827d7c715c4a5f737c80828597aba08f83807c735f4a341f00000000000000000000000000000d1c2b3741484a4a463e3325160500000000000000000000000000000c1f33475a6e82968b7763503c2814222f393c3c3c3c3c3c3c50667b8c8c866f5a443c362a1c0b00001c30445663686a70869b8b766b68665f4f3f53677b90a38f7a66523e4d5e66686b798fa49c87716b6865594734200b00000000000000000000000e2236495d7084988b7764503d3e5164768898918275727783939282715f4d3a271300001c30445663676a73899fa18c766c6e6e6f6f707172737b8fa08b76614c37220d0010243748565c5c5c5a535c656d747c858d97a39d8e7d6e5c4a37231000000000001e33485e73899fa18c76604b3c51667a82826f5a4444403a342b1f100000000000162b40566b8297a9947d68533e29130000000000000000001225394d6175899d9a867263778c97836f5b46321e0a0000000000000000001e33485e73899fa08b745f4a341f0a041426394d6074899d9f8b76634e3a261100001f34495d7076787b899fa08b78767473747579808791998e827466574737261504000000001c30445663676a72889da18c766b68665d4c3a4c5e708395a7a29180706a645846331e0a00000000081c2f425567798a999e8f80746b66646669717c8b9686756452402d1906000000001c30445663676a6c7c8e95827069676254445663676a77899ba69483706b68635644301c0000000000000000000000000000000d1a252e333434312b21150700000000000000000000000000000004172b3f5266798e93806b5744301f30404c5252525252525252667b919b866f5a5251483a29160300142738464f53586e84988d776253514d41465a6e8397aa95826d5844404c5153667b91a699846f5a5350483b2a18050000000000000000000000061a2d4154687b8f93806c5945465a6e8294998673635d6575889b8f7c6956422e1a0600142738464f525e73899fa18c766058585a5a5b5c5c5f73879b8f7964503b26110007192a38434747505c666f7882889098a1a09799857566564432200d00000000001e33485e73899fa18c7660505154697d93866f5a442f2c2620180e010000000000162b40566b8297a9947d68533e2913000000000000000005192d4155687c90a494806b5d72869a8a75614d3925110000000000000000001e33485e73899fa08b745f4a341f0a000a1d31455a6e8397a6927d6954402b1702001a2e41515d616373899fa08b74605f5e5f60646b74808c9b92857565554433210f00000000142738464f525c72889da18c766053514b3f4456697b8ea0a8968572615550483a291703000000001024384b5f728597a39180706258514f50555f6c7c8e94826f5c4935210e00000000142738464f52555e7082938d7a68564e4538464f5e708395a79a88766456534f46382714000000000000000000000000000000000812191e1f1f1d170e0400000000000000000000000000000000000f23374a5e7286998773604c382c3d4e5e6767676767676767677b919b866f6767655846321d0900091a28343a41566b82968f79644f3c38394d6075899d9b9a88735f4b36383e53687d93a897826c57423b352b1d0d000000000000000000000000001125384c6073879b8875614d4d61758a9e927d695648586a7d939986725d4935200b00091a28343a485e73899fa18c76604b434445464747576a7d92927c68533e291400000c1b2a394855626e79838c959ca4a0978e838b94857362503d291601000000001e33485e73899fa18c76666666676c8297866f5a442f1a110c0500000000000000162b40566b8297a9947d68533e291300000000000000000d2135485c708598a28d7965576b8095917c6854402b170300000000000000001e33485e73899fa08b745f4a341f0a0002162b4054697d94a898836e59442f1b060011233341494c5e73899fa08b745f4a494a4b5057616e7c8c9c94847362503e2c1907000000091a28343a475c72889da18c76604b3c373c4e61738699ab9c8b786755443c352a1c0c0000000000162a3f53677a8fa29a87736151443d3a3b414e5f7084978c7864513d281400000000091a28343a3d4152647588988673614f3d334557697b8ea0a08e7c6a59473e3b34281a0900000000000000000000000000000000000000000000000000000000000000000000000000000000010101071b2f42566a7d918f7b675440374a5b6c7c7c7c7c7c7c7c7c7c7c919b867c7c7c75604b36200b00000b17202a3f54697d94917b66513c2b3f53687c90a08b8a8e7965513d2b40556a8095a9947d69543f2a21190d0000000000000000000000010508091d3044576a7d92917d695651667b90a28d77634e3b4f64798ea18d77634e39240f00000b172033485e73899fa18c76604b362f3030323b4f63768a8f826b57412c17000114263748576673808b969fa69d958c847a707d9291806c5945311c08000000001e33485e73899fa18c7b7b7b7b7c7c869a866f5a442f1a05000000000000000000162b40566b8297a9947d68533e2913000000000000000115283c5064778ca09b87725e5165798e97836f5b46321e0a00000000000000001e33485e73899fa08b745f4a341f0a000012273c51667b91a69c88725d48331e09000515232e34485e73899fa08b745f4a3434363b44505e6e7d90a291806e5c49362310000000000b172032475c72889da18c76604b363446596b7d91a3a391806d5b49372721180c0000000000071b3045596d8397a7937d6a574433282526304154677b8f94806b57432e1905000000000b172026283546586a7b8d917d6c5a473e5163758799a59482705e4d3b292620170b00000000000000000000000004080b0c0c0b09060100000000000000000000000000000002080d11141616161413273a4e6175899784705c483e5367798a9393939393939393939aa19493938c76604b36210b0000000412273c51667b91937c68533e32465a6e83979a868695806c57432f42576c8397a6917b66513c27120600000000000000000000070f161a1d1e1e283b4f63768a9986725e53687d949f8a745f4a374c60768ca1907b66503b2611000000041e33485e73899fa18c76604b36323d434343475a6e827b756855402c16000a1e314355667584919da69c938a8278706762768b9c8874604b36210d000000001e33485e73899fa594919191919393949b866f5a442f1a05000000000000000000162b40566b8297a9947d68533e291300000000000000081c3044586b8094a794806b574b5f73889c8a75614d39251100000000000000001e33485e73899fa08b745f4a341f0a00000f243a4f64798fa4a08b75604b36200b000005111e33485e73899fa08b745f4a341f2128324050617386999d8b7866523f2c180400000000041d32475c72889da18c76604b363e516376899ba9978673614f3e2c1a0d050000000000000b2034495e73889ca28e78644f3b2715101224384c60758a9a86715c47321e090000000000040c1117293a4c5e6f8293897764524a5c6e8092a49988766453412f1e110c0400000000000000000000040c13191d202122211e1b1610090100000000000000000000050f161d2226292b2b2b2a27233246596d82958c7764503f53687b8e98837d808282838384919c8a88898b76604b36210b0000000010253a4f64798f95806a543f394d61758a9e9582809587725e4a36445a6f8499a38f78644f3a2510000000000000000000030f1a232a2f3233333133475a6d82958e7a66546a80959f89735e48344a5f748ba0937c67523c2712000000001e33485e73899fa18c76604b3641505858585551636c6660594b3926120012263a4d60728494a29f948980766d655c545e73899f8e79644f3a2510000000001e33485e73899fa28d8686878787888a9b866f5a442f1a05000000000000000000162b40566b8297a9947d68533e2913000000000000001024384b5f73889ba28d79655045596d8296917c6854402b1703000000000000001e33485e73899fa08b745f4a341f0a00000e23384e63788fa4a18c77624c37220d000000001e33485e73899fa08b745f4a341f0d1522324356697c90a495826f5b47331f0b00000000001d32475c72889da18c76604b37495b6e8293a69e8c7a68564432200f00000000000000000e23384d62778ca19f89745f4a36210c00091d32475c70869b8a75604b36210c00000000000000000b1d2f405263758794826f5d5567798c9e9f8e7c6a58473524120000000000000000000000010c1720272d3235363736332f2a241c140a00000000000000000a17222a31373b3e4040403f3c38333e5165798d94806c58454c5e7184968f7d6d6b6b6c6e798f9b86727374715f4a35200b000000000d22374c62778c97826c57424053687c90a4907b7b908d7864503c475c70879ca18c76614c37220d00000000000000000614212d363e4447484845413e5265798d96836f5b687d949f89735e49364b60768ca0917b66513c2712000000001e33485e73899fa18c76604b384c5f6d6e6e67565257524c453b2d1c0a00182d4155697c90a29c8e82766c635a51495063778ca0917b66503b2611000000001e33485e73899fa18c7670707070728398866f5a442f1a05000000000000000000162b40566b8297a9947d68533e291300000000000004182b3f53677a8fa39b87725e4a3e53677b9097836f5a46321e09000000000000001e33485e73899fa08b745f4a341f0a00000e23384e63788fa3a38d77624c37220d000000041e33485e73899fa08b745f4a341f13131426394d6074899d9f8b76634e3a261100000000001d32475c72889da18c766354445466788b9ea492806e5c4a39271503000000000000000010253a4f64798fa49c87725c47321d080003192e43586e83988d77634e38230e0000000000000000001123344658697a8d8d7a6860728597a59382705e4c3b2917060000000000000000000004121e2a333b42474a4b4c4b48443f3830271d12050000000000071928353e464b505355565554514d4740495d7085988874604d415467798c9c8b7966565763788e9b866f5f5f5f53422f1c07000000000b20354a5f748998836e5843465b6f83979f8a76768b94806b5742485e73889d9e89735e49341f0a00000000000000061524323e4952595c5e5d5a554e495d7085988b7763667b90a08c76614c3a4e63788da38f79644f3a2510000000001e33485e73899fa18c76604b3f51667b84846f5a44423e3831291d0f00001c31465b7085999e8d7d7064594f4648525f6e8092a5907965503b2611000000001e33485e73899fa18c76605b5b5c6a8095866f5a442f1a0e040000000000000000162b40566b8297a9947d68533e29130000000000010d1f33475b6f8397a894806b5743384d61758a9e8a75614d392410050000000000001e33485e73899fa08b745f4a341f0a00000f24394e63788fa4a38d77624c37220d000008162033485e73899fa08b745f4a34292929261e31455a6e8397a6927d6954402b1702000000001d32475c72889da492827162525f718496a899877563513f2d1b0900000000000000000011263b50667b91a79b86705b46301b060000172c42576c82978f79644f3a250f0000000000000000000517283a4c5d6f829286736b7d90a29988756452412f1d0c00000000000000000000041422303c464f565c5f6061605d59534c433a2f2316070000000011243646515a6065686a6b6a6966615b534a55697c90907c6855414a5c6f8294968472604d62778c9b866f5a4b4a423525130000000000081d32475c72879b866f5a454d61758a9e99857071869a86715d494b60758ba09b87705c47321c070000000000000213243342505c666d7273726f69615755687c9093806c61758a9e907b67534355687c929f8a75614c37220d000000001e33485e73899fa18c7660535454697d94866f5a442f2a231d160c0000001f34495e73899e93806e5f524748515a64707d8c9d9e8a76614d38230e000000001e33485e73899fa18c76604b4652677c89866f5a442f2921150600000000000000162b40566b8297a9947d68533e29130000000002121f2a3b4e62768a9ea28d7965503c32465b6f8498907c68533f2b22150600000000001e33485e73899fa08b745f4a341f0a000011263b50667b90a5a18c76614c37220c00051726333b485e73899fa08b745f4a3e3e3e3e3a312b4054697d94a898836e59442f1b06000000001d32475c72889dac9f908070606b7c8fa19f8d7b6957453322100000000000000000000012273c52677c93a89b866f5a442f1a050000162b40566b82979079644f3a250f000000000000000000000b1d2e4051637586907d76899b9f8d7b6a58463523120000000000000000000002132332404d59636a7074767675726d675f564c4134251605000000182c4054646d74797d8082807d7b766f665c4f6074889885705d493f5264778a9c8f7d6b5960758b9b866f5a44352f2517070000000000021b30455a6f859a87725c4754687c91a5937d6a6b80948d77634f4d62778da299846e59442f1a050000000000000d20314251616e7982878988847d74695c6073889b8874606e829497837060586071859897836f5b47321e09000000001e33485e73899fa18c766868696a6d8397866f5a442f1a0f0902000000001f344a5f748ba08d7763514b535b646d77828e9ba393826e5b47331e0a000000001e33485e73899fa18c76604b394e617273736b5843423d33241402000000000000162b40566b8297a9947d68533e2913000000000f20303d44566a7d92a69b87725e4a3b324055697d9297836e5a463f33241301000000001e33485e73899fa08b745f4a341f0a0000152a3f54687d93a89f89745f4a35200b000f22344450535e73899fa08b745f53535353534e42313c51667b91a69c88725d48331e09000000001d32475c72889da28e8b8f7d6e77899aa492826f5d4c3a2816040000000000000000000012273c52677c93a89b866f5a442f1a050000162b40566b82979079644f3a250f00000000000000000000001022344557687a8c898294a593826f5e4c3a291706000000000000000000000f203141505e6b7680868a8c8c8b88827b73695e524334220f0000001a2f445a6f82898f9395979594908b83796d60596c80948c7865513d475a6d80929a8876645f748687866f5a442f1c130700000000000000182d42576c839789735e495b6f8397a18d786365798e937d6a564f64798fa496826b56412c1702000000000004172a3d4f6070808c96908b8b919187796b5b6b8092907c69647688988f7d726d717d8f9d8c796753402c1804000000001e33485e73899fa18c7d7d7d7d8080869b866f5a442f1a050000000000001f344a5f74899e8b745f565f676f77828a959fa294857564513e2b1804000000001e33485e73899fa18c76604b3644545d5e5e5a5757575042311e0b000000000000162b40566b8297a9947d68533e291300000000182b3e4e595f72869aa894806b5c584d41505a63778c9e8975605a5142301d09000000001e33485e73899fa08b745f4a341f0a00081c3044586d8297ac9b86705c47321d0800162b3f5262686873899fa08b74686868686868604e3b3a4f64798fa4a08b75604b36200b000000001d32475c72889da18c7c8d8d7c8495a69887756352402e1c0b000000000000000000000012273c52677c93a89b866f5a442f1a050000162b40566b82979079644f3a250f0000000000000000000000051628394b5d6e8092919f9987756352402f1d0b00000000000000000000071a2c3d4f5f6e7c89939a9f99959495978f867c7061513e2a160100001a2f445a6f868c8783838384888e98968c7d6e5d64778c95826d59453d506275889b93826f5d6a6f70726a57432e19040000000000000000162b40556a80958b75604e62768a9e9a86715d5e73889985705c51667b91a6937d68533f29140000000000000c2034475a6c7d8f9c8c7d75767d8c988a796863768a9985715d697988948f8683868f9a8e806e5c4a37241100000000001e33485e73899fa697949494949595969b866f5a442f1a050000000000001c31465b7084988c776369727a838b949da69c91857667574635220f000000000c1e33485e73899fa18c76604b363642484854656c6c6c604e3a251000000000000b162b40566b8297a9947d68533e29130a0000001e33475b6c73798da1a28d7974716b5a4b5e6e7276869a907b746f604c38230e000000001e33485e73899fa08b745f4a341f0a031224374b5f73889caa95826c57432e190400192e43586d7d7d7d899fa08b7d7d7d7d7d7d7d69543f384e63788fa4a18c77624c37220d000000001d32475c72889da18c76808f8c91a29c8b7a68574534221100000000000000000000000012273c52677c93a89b866f5a442f1a050000162b40566b82979079644f3a250f0000000000000000000000001122344557697a8da2a18d7b6958463423110000000000000000000000112437495b6d7d8d9aa3978c84807d80848a918e806d58432e190300001a2f445a6f7d77726e6c6c6f737a86959c8d7a685c7084978975614e3a45586a7d909f8d7a68565a5b5c594c3b281400000000000000000013283d53687c938d776254687c91a594806b57586d82958c776353687d93a5907b66513c271200000000000013273b5063768a9c927d6d60616d7d91978673606e82958d79665b697682898f91908d877c7061503f2d1b0800000000001e33485e73899fa28d838484848486889b866f5a442f1a05000000000000182c4055687b8e9280727c868f979fa59c9389807366584939281705000001111e2833485e73899fa18c76604b36333334475c7083837c67523c271200000001111e282d40566b8297a9947d68533e2d271c0f00001f344a5f74888e97a0a0938d8a87735e4e6378888c8f9e988e8979644f3a250f000000001e33485e73899fa08b745f4a341f0f1621304154677a8ea2a28f7a66523e29140000192e43586e84949496a5a697949494949494806a543f384e63788fa3a38d77624c37220d000000001d32475c72889da18c76718292a29d8e7d6d5c4b3a28170500000000000000000000000012273c52677c93a89b866f5a442f1a050000162b40566b82979079644f3a250f00000000000000000000000b1d2e405163758798a1948f7d6b5a493726140300000000000000000006192d405366798a9ba4948679706b686b6f757d887c6854402c17020000182c40546469635d5957575a5f6876899c9885705b687b8f917d6955423b4e60738698988673614f4647453c2e1d0b00000000000000000011263b506579908f78645b6f8498a28e79655052667a8f927d69566b8095a38e78634e39240f000000000000182d42566a80939e8a75614f4f6175899d907c6866798d96826e5b58646d75797b7b78726a5f51423221100000000000001e33485e73899fa18c766e6e6e6e6f8398866f5a442f1a050000000000001125394c5e7082908d858f99a2a29a918980766c6156483a2b1b0b0000000d1f2f3b43485e73899fa18c76604b4748484a4d62768b917b66503b26110000000e1f2f3b4245566b8297a9947d685345413a2d1d0c001f344a5f748b8b8b8b8b8b8b8b89735e4e63788b8b8b8b8b8b8b79644f3a250f000006131e33485e73899fa08b745f4a34212429323f4e5f718497aa9986725f4b37230f0000192e43586d7d7d7d899fa08b808080808080806a543f394e63788fa4a38d77624c37220d000000001d32475c72889da18c76637385958e7d6f5f4f3e2d1c0b0000000000000000000000000012273c52677c93a89b866f5a442f1a050000162b40566b82979079644f3a250f000000000000000000000517283a4c5d6f8292a495838a897766554332210f0000000000000000000c2135495d708396a8988775675c5654565b616a7573604c3925110000001124364651544e48444242454b596d83979f89745f6073889985715d4a364356687b8ea0917d6c5a483630291e10000000000000000000000e23384e63778d907b6662768a9f9c88725e4a4b6074899884705b6c8397a08b76604b36210c0000000000001c31465b70869a99846f5a46465a6f849997836d5d7185988a776350515a60646666635e574d41332415040000000000001e33485e73899fa18c76605858596a8094866f5a442f1a10060000000000091c2f41526271809299a29f978e867d756c63594f44382c1f0f00000000172a3d4d585c5f73899fa18c76605c5c5e5e5f5f687c918f79644f3a250f000000182b3d4d575a5d6b8297a9947d685c5a564b3b2815001f34495d707474747474747474746f5c4c61727474747474747473624e39240f000515243037485e73899fa08b745f4a3636393d45505d6c7d8fa1a08f7c6956432f1c080000162b3f5262686873899fa08b746a6a6a6a6a6a614f3b3b50667b90a5a18c76614c37220c000000001d32475c72889da18c76606676879485746454443525150500000000000000000000000012273c52677c93a89b866f5a442f1a050000162b40566b82979079644f3a250f000000000000000000001122344658697b8d9e9c8a7780918472614f3e2d1b0a000000000000000012273b5064788ca0a18e7a69584a413f41464e5863625543301d09000000071928353d3f3b4952524b4448576c82979f8a745f586b80938d7965523e394c5e7083969c8a776553412f1d0c00000000000000000000000c21364b60768b937c67697c91a595826c5844455a6e83978b76626f84999d88735e49341f090000000000001e33485e73899e95806b564141566b82979b87715c697c9093806b5844464b4f50504e4a433a30231506000000000000001e33485e73899fa18c76604b4351667b87866f5a442f2b2317080000000005192d415467788a9aa4978c837a726a6159504e4e4e493d2d1b080000001c31465a6b707477899fa18c76717272737373747483978d77624d38230e0000001e32475a6a6f72748297a9947d74726f695844301b001a2e41515d5f5f5f5f5f5f5f5f5f5d5144545e5f5f5f5f5f5f5f5e5545331f0b00102233424b4f5e73899fa08b745f4b4b4b4d5259626d7b8b9ba29382705f4d3a27140000000f22344450535e73899fa08b745f54545454544f42323f54687d93a89f89745f4a35200b000000001d32475c72889da18c76605969798a93837262534333231304000000000000000000000012273c52677c93a89b866f5a442f1a050000162b40566b82979079644f3a250f0000000000000000000b1d2f405263758799a391806c738690806d5c4a3928160500000000000000172c41556a8093a79a86715e4b3a2c2a2c323a464e4e4537261401000000000a172228334759666660585c6574879b9885705c5063778b95826d5a4633415466798c9e9583705e4c3a28150200000000000000000000091f34495e738894806a6f8498a38f7a66523e3f53687c90917c6870879c9b86705b46311c070000000000001f344a5f748ba0947d69543f3f546a80959d88725c6074889b8874604d39373a3b3b39352f271e120500000000000000001e33485e73899fa18c76604b394d606f7070695744443f352615030000000b2034485d708496a494867970675f564e505e6363635b4b3824100000001e33485e7386898c92a2a28e878788888989898b8b8c9d8b76604b36210c0000001f344a5f7485888a8d9ba4988d8a8784725c47321d0011233341494a4a4a4a4a4a4a4a4a48403643494a4a4a4a4a4a4a49433727160300172b3f515f646873899fa08b746260606063666c75808c9a9f928474645341301d0a000000051726333b485e73899fa08b745f4a3f3f3f3f3b323044586d8297ac9b86705c47321d08000000001d32475c72889da18c76604b5b6b7c8d918270615141322212020000000000000000000012273c52677c93a89b866f5a442f1a050000162b40566b82979079644f3a250f00000000000000000517293a4c5e6f8293a598867361687a8d8b79685645342211000000000000001b30455a6f8499a894806a56423c3c3c3c3c3c3c3c3c3b3327180700000000000511263a4e62767a746e70778493988b7a6754475b6f83968a76624e3b37495c6f8294a08e7b695745321e0a00000000000000000000061c31465b708697826b768a9f9d8974604b37394d61758a97836f73899e98836d58432e19040000000000001f34495e73899f95806a543f40566b80959d88725c586b8093907c6955412e25262624201b140b000000000000000000001e33485e73899fa18c76604b3643525a5b5b575a5a5a5244321f0c0000000f24394e63778ca0998776685c534b43455a6d78787867523e29140000001e33485e73898d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d89735e49341f0a0000001f344a5f748b8f8f8f8f8f8f8f8f8f88725c47321d000515232e34343434343434343434332d252f3434343434343434343026190a00001b30455a6f797c808a9fa08b7977767476777b8288929d988d8274655646362412000000000008162033485e73899fa08b745f4a342a2a2a2724374b5f73889caa95826c57432e1904000000001d32475c72889da18c76604b4e5e6e7d8f8f806f5f50403020100703000000000000000012273c52677c93a89b866f5a442f1a050000162b40566b82979079644f3a250f000000000000000511233546586a7b8d9f9f8d7a68565d6f829486746351402f1d0c0500000000001d32475c72879ca48f796552525252525252525252524f45362411000000000000162b4055697d8f8884868b918d867a6c5c4b3f53677a8f927d6a56432f3f5164778a99998775614d38230e00000000000000000006111a2f44596e8498836d7c91a597836d59453132475b6f84988a75768ba095806b56402c18100400000000001d32475c71869b97826c574244586d83989b86705b5063778a9885715d4a362311110f0c0700000000000000000000030e1e33485e73899fa18c76604b363440454656676f6f6f624f3a261100000011263b50667b90a5917c69584a4037354a5e73888f806a543f2a150000001e33485d70777777777777777777777777777777777777776f5b47321d080000001f34495e727878787878787878787878705c47311c000005111a1f1f1f1f1f1f1f1f1f1f1e19131b1f1f1f1f1f1f1f1f1f1b14090000001b30465b7087929599999994908d8c8b8c8d909597938c857a7064564738281806000000000000041e33485e73899fa08b745f4a341f151621304154677a8ea2a28f7a66523e2914000000030e1d32475c72889da18c76604b4050607082918e7d6e5e4e3e2e201c170e0300000000000312273c52677c93a89b866f5a442f1a0e020c162b40566b82979079644f3a250f030000000009141a1e2f405264758899a694826f5d4b5264768992826f5d4c3b291e1a13090000001e33485e73899fa28d776767676767676767676767676353412d18040000000000172c42576c7c838a938f807b7872685d4e3e374b5f72869a86725e4b3735475a6d8084848473614d38230e00000000000000000716232d3241566b8296866f8397a4907b67533f2a2c4055697d928f7b778da3937c68533e312c22140500000000192e43586c82959a86715d494a5e72879b96826d58475b6e82968d7966523e2b18040000000000000000000000000313202b33485e73899fa18c76604b36363637485c7186867c67523c271200000011263b50667b90a48f78634e3c38373a4e63788d95806a55402b16010000192d41525f626262626262626262626262626262626262625f51402c18040000001b2f4354616363636363696f666363636052402d19000000000000000000000000000000000000000000000000000000000000000000001b30465b7084848484848484868788898b898886837d7870675e524638291a0a00000000000006131e33485e73899fa08b745f4a34212429323f4e5f718497aa9986725f4b37230f00000313202b32475c72889da18c76604b364252637384948c7c6c5c4c3c34312b2013030000000413212b3c52677c93a89b866f5a44312a1f121d283040566b82979079644f3a2b20130300000c1b272f333b4c5e6f8293a59b897664524047596b7d908d7b6a584736332e261a0b00001f344a5f748ba0a18c7c7c7c7c7c7c7c7c7c7c7c7c7c705b46311c07000000000a16293d4f5f686e76808c93897d6f5f4e3f302f43576a7d928e7a66533f2b3d50626d6e6e6e655645321e0a000000000000000113253440474954697d948774899d9e8a75614d3824263a4e63778c96827990a5907a655049463f3223110000000015293d5165798c9e8c7966585867798da28f7b67533f5266798d95826e5a4733200c0000000000000000000000000f21313e46495e73899fa18c76604b4a4b4b4c4e62778c907b66503b26110000000f24394d62778c9f907b6758514e4c4f53687c9297826b56402b16010000112434424b4c4c4c5e6c75767167584c4c5d6b74767267584a4133221000000000132536444c4e4e5864707b83776c5e4e4c43342311000000000000000000000106090b0c0d0d0c0a0703000000000000000000000000001a2e4357686e6e6e6e6e6e6f70717273747373706d69635d544b4135281a0b0000000000000515243037485e73899fa08b745f4a3636393d45505d6c7d8fa1a08f7c6956432f1c0800000f21313e46495c72889da18c76604b46404555657687978a7a6a5a4d49463e31210f0000001022323e4652677c93a89b866f5a49453d301f2d3b4448566b82979079644f463e31210f0007192a3843484c586a7c8d9fa2907d6b5947393c4e60728597887664534b484238291805001f34495e73899fa69793939393939393939393939389735e49341f0a0000000919273339414d535b636d7a8a9b8e7d6c594632273b4e62768a96836e5b47333344525858585854473827150200000000000000091d3043525c5e60667b91897b8fa498836f5b46321e1f34485c70869a877c92a28d7763605e5b50402e1a060000000e2236495c6f82919685756c6c7585979785725f4c384a5d7185998a76634f3b2815010000000000000000000000182b3e4f5a5e6173899fa18c76605f5f60606162687c928f78644f3a240f0000000b1f34485c6f82949785766b66636264686f829797836c57422c1702000006162530363743576a7c898c8576645156697b898c857664513d2915050000000008182631404e5c6976828e958977634e383025160600000000000000010910161a1e20212222211f1c18130d060000000000000000000014273a4a555858585858585a5b5c5d5e5f5e5e5b58544f4941382e23170a00000000000000102233424b4f5e73899fa08b745f4b4b4b4d5259626d7b8b9ba29382705f4d3a2714000000182b3e4f5a5e6172889da18c76625f5b5143525c68788998897868625e5a4f3e2b18040000192d3f505b5f677c93a89b866f615e5a4e3d2a3a4b585d606b82979079645f5a4f3e2b18000f233648565d6064768899a8968572605d57494b585d67798c94827063605d554735220e001e33485d72889ca38e8282828282828282828ba0a08b745f4a35200b000002142737454e4e463f47505c6b7d919b8975614d382333475a6e82958a76634f3b28343f434343434037291a0900000000000000000d22374c60707376787a8f8b8296a6927c6854402b17192d42566a7d938d8094a08b797776736e5d4934200a000000061a2d3f5163738390948882828894978a79685643304255697c9093806b5744301d0900000000000000000000001d32475b6d737679899fa18c76747474767676777783978d77624c38230d00000005192c4053657586939488807a7877787c838c9c98836c57422d180300000007131c2132475c718699a094826c585c708699a194826c57422d1904000000000d1f30404f5e6c7a87949a8a7a6a5a4834201307000000000000000a141d252b2f33353637373634312d272119110700000000000000000a1c2c394143434343434344464748484a48484643403b352d251b11060000000000000000172b3f515f646873899fa08b746260606063666c75808c9a9f928474645341301d0a0000001d32475b6d737679889da18c7977746f5f4c607074777b8e97877977736d5b47321d0800001e33485c6e73777c93a89b867976736c5a45314156697276798297907a77736d5b47321d0014293e52667276798294a5a18c7a7775726753566972757880948f7d78757164513c2712001b30455a6f8499a38e786b6b6b6b6b6b6b73899fa18c76604b36210b00000e203244556263574e49474e61768ca1907b66503b262b3e5266798d927d6b574330222b2e2e2e2e2c24190b0000000000000000000e23384e6378898b8d90978d889c9f8b76624e39251113273b5064788d938397a095908d8b8976604b36210b00000000102234455564727d888f9394918d85796b5b4a38263a4d6074889b8873604c39251000000000000000000000001e33485e73898c8f94a0a09089898b8b8c8c8c8d8d8f9e8b75604b36200b0000000010233547586775828b9394908e8d8f9297948f89846e58432e19030000000000081e33485e73889daf9a866f5a5c72889daf9a866f5a442f1a050000000015293c4e5e6d7c8b989c8c7c6c5c4c3c2b1805000000000000010f1b2731393f44484a4b4c4c4b4946413b352d241a0f03000000000000000e1b262c2e2e2e2e2e2e2f30323333343333312e2b2620191208000000000000000000001b30455a6f797c808a9fa08b7977767476777b8288929d988d8274655646362412000000001e33485e73898c8f93a0a0958f8c8977624e6378898c8f96a0958f8c89735e48331e0900001f344a5f74898d909aa0a0928f8c88725c473243586e848b8f929d98908c89735e48331e00152a3f546a808b8f92a0a0a095908d8b826b56586e848b8d909b9b918e8b7d68533e291300172c41556a7d93a5907b6656565656565e73899fa08b75604b36200b0000172a3d4f6173756a635e5c5d65788da2917b66503b2623364a5e71869987735f4c38241619191919171107000000000000000000000e23384e63788b8b8b8b8b8b8b8b8b85705c47331f0b0c2135495d72878b8b8b8b8b8b8b8b8b76604b36210b00000000051627374654606b73797c7d7c7871675b4d3d2c1e3145586c808b8b7c68533f291400000000000000000000001e33485e73898b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b89735e49341f0a000000000618293a4957646e777d8488898b8988848079746f6554402c17020000000000001c31465b708497a095826d585a6f8395a095826d58432e190400000000192e43586b7c8c9b9e8e7d6e5e4e3e2e1e0d00000000000000101f2d39444d53595d5f606262605e5b56504940372c211407000000000000000912171919191919191a1b1c1e1e1f1e1e1c1916110c060000000000000000000000001b30465b7087929599999994908d8c8b8c8d909597938c857a7064564738281806000000001e33485e73898b8b8b8b8b8b8b8b8b77624e63788b8b8b8b8b8b8b8b89735e48331e0900001f344a5f748b8b8b8b8b8b8b8b8b88725c473243586e848b8b8b8b8b8b8b89735e48331e00152a3f546a808b8b8b8b8b8b8b8b8b8b826b56586e848b8b8b8b8b8b8b8b7d68533e29130012273b5064778c9f94806b574340404b60758ba09d88735e49341f0a00001d32465a6c7d877d777370727784959e8c77634e3a251b2e4256697d918f7b6753402c1905000000000000000000000000000000000d23384c6172747474747474747474746955412d1904061a2f43576a74747474747474747474705e4a35200b000000000009192836434e585f65676867635d544a3d2f1f15293c50637374747467533e291400000000000000000000001d32475c6f747474747474747474747474747474747474746e5b46311c0700000000000b1c2b3946515b636a6f72737473726f6a65605a544737241100000000000000182c40546778868b85776552536677868b867765523e2a1501000000001a2f44596d7b87928f8070605040302010000000000000000d1e2e3d4a5660686d72747677777673706a645c534a3e3225160700000000000000000000000000000000000000000000000000000000000000000000000000000000001b30465b7084848484848484868788898b898886837d7870675e524638291a0a00000000001d32475c6f7474747474747474747471604c61727474747474747474746f5c47321d0800001f34495d70747474747474747474746e5b463142576a7474747474747474746f5c47321d0014293e53677474747474747474747474746854576a7474747474747474747466523d2813000c2135485c6f83959a86725f4f444453667a8fa398846f5a45311c0700001f344a5f748691928c8887888c949c90806f5c48342013263a4e61758997836f5c4834210d00000000000000000000000000000000091e3144545e5f5f5f5f5f5f5f5f5f5f5a4c3a2612000014283b4d5a5f5f5f5f5f5f5f5f5f5f5d52422f1b070000000000000a1825313b444b505253524e4941382c1f110d203446565f5f5f5f58493724100000000000000000000000192c3f515d5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5c503e2b17030000000000000d1b28353f484f555a5c5e5f5e5c5a55514b464037291907000000000000001124374a5a6872747167594848596871747268594836230f0000000000162a3d4f5e69758282716151423222120200000000000006192b3c4c5b68737c83878a8c8d8d8c8985807870665c50423425150500000000000000000000000000000001060a0c0e0f0f0e0d0a0703000000000000000000000000001a2e4357686e6e6e6e6e6e6f70717273747373706d69635d544b4135281a0b000000000000192c3f515d5f5f5f5f5f5f5f5f5f5f5e5344545e5f5f5f5f5f5f5f5f5f5d513f2c190400001a2e41515d5f5f5f5f5f5f5f5f5f5f5c503e2b3b4d5a5f5f5f5f5f5f5f5f5f5d513f2c190010243749585f5f5f5f5f5f5f5f5f5f5f5f594a4d5a5f5f5f5f5f5f5f5f5f5f584836230e0005192c40536577899a8f7d6d60595961708396a3907c6955402c170300001d31455867747d868c919394938f89807162513f2d190b1e3246596d82958b7763503c2915010000000000000000000000000000000215263643494a4a4a4a4a4a4a4a4a4a463c2e1d0a00000b1e2f3d474a4a4a4a4a4a4a4a4a4a4941342412000000000000000008141f2830373b3d3e3c3a352e251b0f0104172838444a4a4a4a453b2c1a08000000000000000000000010223240484a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a483f32210f00000000000000000b17222c343b404547484a484745413c37312c24190b0000000000000000081a2c3c4b565d5f5d564a3b3b4a565d5f5d564a3b2b190600000000000e2031404c58636e7263534333231404000000000000000f2336485a6a7986909799928d8c8c8c8f94938c83796d60524333231200000000000000000000000000080f151b1f2223242423221f1c17120d070100000000000000000014273a4a555858585858585a5b5c5d5e5f5e5e5b58544f4941382e23170a0000000000000010223240484a4a4a4a4a4a4a4a4a4a49423643494a4a4a4a4a4a4a4a4a484032221000000011233341494a4a4a4a4a4a4a4a4a4a483f32212f3d474a4a4a4a4a4a4a4a4a484032221000081a2c3b454a4a4a4a4a4a4a4a4a4a4a4a463b3d474a4a4a4a4a4a4a4a4a4a453a2b19070000102336485a6b7b8c998c7d736e6e73808fa0968673604d3a261100000016293b4a56616a72777b7d7d7d7a756c61534434221003162a3e5165788d93806c5844301c07000000000000000000000000000000000918252f3434343434343434343434322a1e1000000000111f2b3234343434343434343434342e241606000000000000000000020c151c222628292725201a12080000000b1a27303434343431291d0e0000000000000000000000000414222d3334343434343434343434343434343434343434332d22130300000000000000000005101820272c303233343332302c27221d171107000000000000000000000e1e2d3943484a4842382c2c3942484a4842392c1d0d0000000000000313222f3a45515c5e5445352515050000000000000000162a3e5265778997a191857c7876767779808790968b7d706151402f1d0a0000000000000000000008121b232a2f3437383939383734312c27211c15110c040000000000000a1c2c394143434343434344464748484a48484643403b352d251b110600000000000000000414222d3334343434343434343434342f252f34343434343434343434332d2214040000000515232e3434343434343434343434332d22131f2b32343434343434343434332d22140400000e1d2931343434343434343434343434322a2b323434343434343434343431281c0d00000006192b3c4d5d6d7b88939088848488909d948878675644311e0a0000000c1d2c39444e575d63666868686660594f4335261605000e2235495d70858987735f4a341f0a000000000000000000000000000000000008131b1f1f1f1f1f1f1f1f1f1f1f1d170d0000000000010e181e1f1f1f1f1f1f1f1f1f1f1f1a120600000000000000000000000001080d11131312100c0600000000000009141c1f1f1f1f1d160c00000000000000000000000000000511191e1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1e191004000000000000000000000000050c12171b1d1e1f1e1d1b17130e0802000000000000000000000000000f1c272e3334332e261b1b262e3334332e261b0e000000000000000004111d28343f484943362717070000000000000000001b3045596d8295a69583736963606062656b737d8c9b8f806f5e4c3926130000000000000000030f1b252e373e44494c4e4e4e4e4c4945413c36302a2620170b0000000000000e1b262c2e2e2e2e2e2e2f30323333343333312e2b262019120800000000000000000000000511191e1f1f1f1f1f1f1f1f1f1f1f1b131b1f1f1f1f1f1f1f1f1f1f1e191105000000000005111a1f1f1f1f1f1f1f1f1f1f1f1e1910040e181e1f1f1f1f1f1f1f1f1f1e191105000000000c161d1f1f1f1f1f1f1f1f1f1f1f1f1d17181e1f1f1f1f1f1f1f1f1f1f1c150b00000000000d1e2f3f4f5d6a7680888e9193938f8a8276695a4a39271401000000000e1b27323b43494e51535353514c453d322517080000061a2d4155687473726d5c48331e09000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000a131a1e1f1e1a130909131a1e1f1e1a130900000000000000000000000b16222d33342f251809000000000000000000001e33485e73889da08c7765564e4b4b4c5057606d7d8f9e8d7b6956422e1a060000000000000513202c38414b52585d6163636363615e5a55504a443f3b34281a090000000000000912171919191919191a1b1c1e1e1f1e1e1c1916110c060000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000011121313f4c58636c73787c7c7c79756e64594b3c2c1b090000000000000a151f272e34393c3e3e3e3c38312a201408000000001225394a595f5e5c594f3e2c19040000000000000000000000000000000000000000000000000000000000000000000000000000000000000000050d11121212121212121212110c040000070e1212121212121212121212100a010000000000000000070f1316161615110c050000000000000000000000000000000000000000040c101111111111111111111111111111111111111111110f090000000000000000000000000510171b1b1b1a160d010000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000510191e1f1b130800000000000000000000001f344a5f748ba09d88725d483a3636373c434f5f72869a9986715d49341f0a0000000000061523313e4a545e666d72767878787876736f6a655f58534f46382714010000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000050e14191d1f1f1e1b1610070000000000000000000000000000081116171717171611080000000000000000000000000000000000000000061015171717171717171717171717150e040000000000000000000000000000000000000313212e3b4650585f6467676765615a51473b2d1e0e0000000000000000020c141a20242729292927231d160d030000000000091b2d3b464a4947453d31210f00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000c182126272727272727272727262016090e1a232727272727272727272727251e13050000000000010f1a23282b2b2b2a2620180e0300000000000000000000000000000000000b172025262626262626262626262626262626262626262626241d12040000000000000000000615222b3030302f2a1f12020000000000000000000000000000000002070a0b0d0b0905000003080a0a0a07040000000000000000000000000000000000000000000000000000000000001e33485d72889c9c87715c4738383838383943586c8398a18c77624c38230d0000000004142433424f5c67717a82878b8e8f8f8e8c88848079736d68635644301c07000000000000000000000000000001060a0d0e0f0e0d0b0702000000000000000000000000000000000001090e0f0c0600000000000000000000000000081621292e32343433302b241a0f0200000000000000000000000c1a242b2c2c2c2c2b241a0c0000000000000000000000000000000000000a18232a2c2c2c2c2c2c2c2c2c2c2c2c2921160700000000000000000000000000000000000003111d29343d444a4f5b65696051463e35291d0f000000000000000000000000060b0f12131313120e090200000000000000000f1d2a32343432302a201303000000000000000000000000000000000000000000000000000000000000000000000000000000000000000a1b2a353b3c3c3c3c3c3c3c3c3c3b3327181e2c373c3c3c3c3c3c3c3c3c3c3c3930231402000000000f1f2c373d4040403f3a342b211508000000000000000000000000000000091a28343a3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b382f22130200000000000000001324333f454646443d30200e00000000000000000000000000000710171c1f2122201e1a130e171d1f1f1f1c18140e05000000000000040c101111111111111111111111100b02000000001b3044596d82949e8975604e4e4e4e4e4e4e515a6f8499a48f78634e38230e000000001122324251606d79858e96968e898787878a8e94948e88827c735f4a341f0a000000000000000000000000070f151b1f2223242323201b161008000000000000000000000000000008131d232421190e0100000000000000000000051626343d43474a4a48453f372c201202000000000000000000091a2a37404242424240372a1a0900000000000000000000000000000000061828363f4242424242424242424242423e33251503000000000000000000000000000000000000000e1d2b384653606d787d7061523f2b180c0000000000000000000000000000000000000000000000000000000000000000000c171d1f1f1d1b160e02000000000000000000000000000000000000000000000000000000000000000000000000000000000000000015283947505252525252525252524f4536242b3c4a51525252525252525252524d4132200c000000071a2c3d4a52555656544f473e322517080000000000000000000000000000142738464f5050505050505050505050505050505050505050504c40311f0c00000000000000081c3042515a5b5b594e3d2b17030000000000000000000000020f1a232b3134363736332e27212b31343434312d2822170a000000000b1720252626262626262626262626251f1508000000162a3e5164768898907c6a63636363636363666a778a9ea28d77624d38230e0000000c1d2f405060707d8b979d8f837a7470707174798089949c978b745f4a341f0a0000000000000000000006101a22292f3437383a383834302b241c130800000000000000000000000c192530383a352b1f11030000000000000000000f22344451575c5f5f5d59534a3e30200f0000000000000000001226384854575757575448382612000000000000000000000000000000001023364653575757575757575757575757514332200c0000000000000000000000000000000000000e1d2c3b495664717d8a8e806e59442f1a050000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001c314457646767676767676767676353412d34485a66676767676767676767675f4f3c28130000000e22364a5b666a6b6b68635a504335261606000000000000000000000000001c304456636666666666666666666666666666666666666666665e4e3b2713000000000000000d22374b5f6f70706c5a46321d08000000000000000000000312202c373f45494b4c4b48423b333e464a4a4a46423d352819070000091a28343a3b3b3b3b3b3b3b3b3b3b3b393226170600000e21344759697988948876787878787878787b808896a79a87725e4a35200b00000316293b4c5e6e7d8e9c9d8e7d71665f5b5b5c5f656c768ba0a08b745f4a341f0a0000000000000000000b17232d363e44494c4e4f4e4c49453f382f251b0f0300000000000000000a1b2a36434c4f493d2f2111010000000000000000152a3e51626c717474726e665c4e3e2d1b080000000000000000182d4155666c6c6c6c6655412d1803000000000000000000000000000000152a3f53646c6c6c6c6c6c6c6c6c6c6c6c614f3b261200000000000000000000000000000000000d1d2c3b4a586674828f9989786856422d1904000000000000000000000000000000000000000913191b1c1d1d191105000000000000000000000000000000000000000000000000000000000000000000000000000001070b0e0e0f0e0c0804000000000000000000001f344a5f747c7c7c7c7c7c7c7c7c705b4630384e63777c7c7c7c7c7c7c7c7c7c6b56402b1600000011263b5065798082827d776d615344342412010000000000000000000000001f344a5f737b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b6a56412c17020000000000000f24394e63788787735e48331e09000000000000000000001121303e4a535a5e6062605c564f46515a5f5f5f5b5651463624110001142738464f50505050505050505050504e4435231100000518293b4c5b6a7682948b8e8f8f8f8f8f8f90949ba59b8e7c6a57432f1b0600000d203346586a7b8d9da18f7d6f60544b4646474b505f748ba0a08b745f4a341f0a00000000000000000e1c2935404a52585d61636463625e59534b42382c21130500000000000000152839485460645a4d3f2f1f0e0000000000000000172c42576c828689898883796c5c4a37241000000000000000001a2f445a6f838383836f5a442f1a05000000000000000000000000000000172c42576c83838383838383838383837d68533e291300000000000000000000000000000000091a2b3b4a59687685929d8c7b6b5a4a392713000000000000000000000000000000000000000c1a262e303132322d2315060000000000000000000000000000000000000000000000000000000000000000000000060f161b2023232423211d18120b03000000000000001f344a5f748b9393939393939387705b4630384e63788f9393939393939393826b56402b1600000011263b50667b919796928a8071625241301e0c0000000000000000000000001f344a5f748b91919191919191919191919191919191919191846e59442f1a060000000000000f253a4f6479908b745f4a341f0a0000000000000000000c1e2f3f4e5c666e73767775716a6259616d747473706b6454402c1800071c3044566366666666666666666666666153402c180300000c1f34485c6f82919ea09f9c9c9c9c9c9c9c9a9792897d6f5f4d3a271400000115293c4f62758899a996837160514237313032364a5f748ba0a08b745f4a341f0a000000000000000e1d2c3a47525d656d727678797877736e675f554a3e312314050000000000001c3144576572786b5d4d3d2b1a0800000000000000172c42576c83989b9d9c968b7967533f2b1601000000000000001a2f445a6f869898866f5a442f1a0e0b06080e1112110f0b070100000000172c42576c83919395989898949391907d68533e291300000000000000000000000000000000132638495968778795a08f7d6e5d4d3c2c1c0a00000000000000000000000000000000000007192a3842464647474033241200000000000000000000000000060a0b0b0b0b0801000000000000000000000000030f19222a303538383a3836322d261f160d0200000000001f344a5f748084889a9988848280705b4630384e63788083868fa3a69286837d6b56402b1600000011263b50667b9198999d9d9082705f4d3b28150200000000000000000000001f344a5f748284868da0a28d8687878889898b8b8c8c8d999c87725d48331e0900000000000011263b50667b918b76604b36210b00000000000000000215283b4d5d6c7983888c8c8b867d756b6d80898b8986806f5a442f1a000a1f344a5f737b7b7b7b7b7b7b7b7b7b7b705b46301b0600000e23384d62778c9f9e918b8887878787878786837d766c5f5141301e0b0000081c3144586c8092a5a08c7966544332251c1b1f344a5f748ba0a08b745f4a341f0a0000000000000c1c2c3b4a58646f7982888c8f8f8f8c88837a72675c4f423223140400000000001f344a5f74838a7b6b5a4937251200000000000000172c42576c83878688919f97836d59442f1a05000000000000001a2f445a6f869b9b866f5a442f2523201b1c2326272624201b150c000000172c41566b797b7d8095a893807d7b797867523d2813000000000000000000000000000000001a2e425567778796a392827060503f2f1e0e0000000000000000000000000000000000000010243748565b5b5c5c51412f1c080000000000000000000005111a20212121201c1408000000000000000000000614212c363e454a4d4e4f4e4b47413a32291f1408000000001c314558666b6e7d939a86726c6a6454412d35495b676b6d7c91a59f8b766d6960503c281300000011263b50667b84838489929e8f7c6a5845321f0c00000000000000000000001d314558676b6e73899fa18c767072727373747576777d91a08b75604b36210d00000000000012273c52677b918c76614c37220c00000000000000000a1e3245586a7b8b969d9b96949592887d71879c9b8f8f866f5a442f1a000a1f344a5f748b91919191919191919187705b46301b0600000f253a4f647990a3908075727070707070706f6d6862594e413223120100000e23374b6074889cac9884705c49372514191f21344a5f748ba0a08b745f4a341f0a00000000000618293a4a596875828d95978e888686888d968f85796d60514232221100000000001f34495e71829389786654422f1c08000000000000162b4054697670707482959b87705b46301b06000000000000001a2f445a6f869b9b866f5a443a3a38352f2f373b3c3b393530281e11010013283b4e5d64666a8095a8937c686665635b4b382410000000000000000000000000000000001d32475c718595a49585746353433222110100000000000000000000000000000000000000152a3f53667070726f5f4b3724100000000000000000000414232e3436363635302618080000000000000000061524323e4952595e62636463605b554e463c3125180900000015283a48525663778ca08d7864545046372e2e3d4b535a6e8397ab98846f5b544e4232200d00000010253a4f63726f6c6e75808f9a8875614e3b2815020000000000000000000016293b4953565e73899fa18c76605c5c5e5e5f60606275899c8e78644f3a251000000000000013283d52677c938d77624c37220d00000000000000001025394d6175889aa49488827d80848c8f82889d978278786d59442f1a000a1f344a5f74828486899aa79588858380705b46301b0600000f24394e63788e9d8873615d5b5b5b5b5b5b5a58544e463d3123140500000014283d52667a8fa3a6927d6955412d1a202c3437384a5f748ba0a08b745f4a34261808000000001123354758687786949f91857a736f6f7279838f978b7d6f6050402f1d0c000000001b2f425364768a9684715f4c3825110000000000001126394b5a605c5b6579909b86705b46301b06000000000000001a2f445a6f869b9b866f5a4c4f4f4e4a43414b5052504e4a443b2f1f0d000c1f303f4a4f546a8095a8937c6752504e493d2d1b08000000000000000000000000000000001b3045596a7886948877675646352514040000000000000000000000000000000000000000162b40556a7d87887a67533f2c1805000000000000000010223240494b4b4b4a433626140100000000000004152433424f5b656d737778787875706a62594f433627170600000b1c2b363d485c70859993806a56434343434343434c6075899da4917c6854403b322415030000000c203345555d5a575962708091927d6b5844311e0a000000000000000000000c1d2c373e485e73899fa18c76604b4748494a4b4b596c8094927c67523d281400000000000014293e53687d948f78634e38230e0000000000000000152a3f53687c91a59986756c696a7078838f8fa097826b635e503e2a1600081d314558676b6e708398a8937c6f6c6a6454412d190400000c21364a5f73879988735f5b5b5b5a57524b44433f3a332a1f130500000000182d42566b8095aaa18c77634e3a261e2f3e484c4d4f5f748ba0a08b745f4a43362614010000081b2e415364768796a2918272675f5a5a5e6671808f9c8e7d6e5e4c3b291704000000122535475a6d82958f7b6754402c180400000000000a1c2d3c474b474e63788f95826c58432e190d020000000000001b30455a6f869b9b866f5b606464635e56525f666766635e584d3d2a17000112212e363f546a8095a8937c67523c39352c1f0f000000000000000000000000000000000016293c4c5a6876847a6a59493828170700000000000000000000000000000000000000000012273b4f62768a97836f5b4734200c00060e1112121212182c3f505d6060605f5444311d090000000000001021324251606d7882888c8f8f8d8a857d756c6054453523100000000d19232d4155697d929a86715d5858585858585858677b8fa49e8a75614d39261f14060000000004162837434846424551627386998874604d3a261200000000000000000000000e1a2433485e73899fa18c76604b36333434363d5064778c93806b56412c17000000000000152a3f546a80958f79644f3a250f0000000000000000192e43586d8397a5917c695854555c65707d91a797826b564b4132210e000216293b495356586c8398a8937c6758555146372512000000071c304357697b8c8f7b6d7070706f6b665f564b3f3123170d0200000000001b30455a6f8599ae9d88735e493420283b4d5c60636466748ba0a08b74635f5444311d0800001124374a5d708294a496847262554b45454a53617082939d8d7b6a584634210e00000007172a3e5266798f97836f5b47331e0a00000000000a1824303a424953677c918c7966523e342a1f130500000000001b30465b70879c9b866f6f75787977726960707a7c7b77736b5a46311c000003101b2a3f546a8095a8937c67523c2720190e0100000000000000000000000000000000000c1e2e3c4a5866736d5c4c3b2b1a0a000000000000000000000000000000000000000000000c1f33475a6e82968b7763503c28150c192227272727272731465b6e76767672604b36241d1104000000081b2d3f5061707d8b959c9d969391939692897d7263533f2b16010000000712263a4e62768b9f8c776e6e6e6e6e6e6e6e6e6e8296aa97836e5a46321e0b020000000000000a19262f33312d334456697c90907c6955422e1a060000000000000000000000081e33485e73899fa18c76604b362f3a3f3f3f485c6f8380786a56412c17000000000000162b40566b80959079644f3a251000000000000000001c31465b70869ba28d77624d3f414953667b91a797826b56402f23140400000c1d2c373e42576c8398a8937c6752403d352819080000000114273a4c5e6e7c89898286878785827a72685d4f413121100000000000001d32475c72889caf9a866f5a45311c2d42576b7677797b7c8ba0a08b7b7872604b36210c0004192c4054677a8da09f8c786655443730303643526475899c99887563503d2a17030000000f23374b6074899f8a76614d38240f000000000a192836424d565d636f8393826f5f5850473c30231506000000001b30465b70879c9b8678838a8f908d867c6f7c8f93908d88735e48331e00000000152a3f546a8095a8937c67523c2712060000000000000000000000000000000000000000101e2c3a48565f5c4f3e2e1d0d000000000000000000000000000000000000000000000004172b3e5266798d93806b5844301d1c2a363c3c3c3c3c3c3c475c72888c8c77624c3c392f22120000001225384b5d6e808f9ca19489827c7b7d82888f90826e58432e1903000000000b1f33475b6f8498928484848484848484848484899ca48f7b67533f2b1703000000000000000008131b1e1c23364a5b6674889985715d4a36220e0000000000000000000000001e33485e73899fa18c76604b363f4c545454515366706a645c4d3b2713000000000000172c41576b8297917b66503b261100000000000000001d32475c72889da08b745f4a352c3b50667b91a797826b56402b1605000000000e1a242c42576c8398a8937c67523c2822170a000000000b1e30425362717d89989793908f91958e867a6d5f4f3e2d1b0800000000001e33485e73899fad98836d58432e192e43586e848d8f919397a3a396908d77624c37220d000b1f33485c708397aa96836f5c4937261c1b253546596c8093a593806d5946321e0a0000000c1d32475c70879c907b66513c27120000000718283746535f6971777b8c877c79736c63594e41332413000000001b30465b70879c9b86899698939393988e8080959d8c8b89735e48331e00000000152a3f546a8095a8937c67523c2712000000000000000000000000000000000000000000000e1c2a38444a483e312110000000000000000000000000000000000000000000000000000f23374a5e7286998873604c3825293a4851525252525252525c72889d8d776252524c402f1d0a00071b2e4154677a8c9da39283766d6866686d737a857a6753402b17020000000004182c4054687c91a097949494949494949494949ba79c8874604c38241000000000000000000000000003162a3e5266797c80958d7965513d29150100000000000000000000001e33485e73899fa18c76604b374a5d696a6a6454565b5650493e2f1e0b000000000000182d42576c8398927c67523c271200000000000000001e33485e73889d9f89735e4833263b50667b91a797826b56402b1601000000000008172c42576c8398a8937c67523c271205000000000014273a4d6070828f9b95887d79787c838f988c7d6d5c4b38251200000000001f344a5f748ba0ac97826c57422c192e43586e848d8d8d8d8d8d8d8d8d8d77624c37220d001025394e62778b9fa48f7a67533f2c1a090717293c5063778ca09d8975614e39251100000517293a4a5b70869b947d69543f2a15000001132536465564717c868d919895928e8880766c5f5142301c080000001b30465b70879ca194988f847d7c7d848e8d80959b8674746f5c47321d00000000152a3f546a8095a8937c67523c271200000000000000000000000000000000000000000000000c1a273034332c21130300000000000000000000000000000000000000000000000000071b2e4256697d918f7b6854402d36475865676767676767676772889d8d776767675e4d392511000d21364a5d718598a99785746559535153585f6773715f4b3824100000000000001125394d61758a9e8b7d7d7d7d7d7d7d7d7d8297aa95826d5945311d090000000000000000000000000a1e3246596d8293939995826c5844301c0800000000000000000000001e33485e73899fa18c76604b3b50657a80806f5a4446423b352d201101000000000000192e43586e8499937c68533e281300000000000000001e33485e73899f9f89735e4833263b50667b91a797826b56402b1601000000000000172c42576c8398a8937c67523c27120000000000061b2f43576a7d8f9f9886766a6563677080929c8c7a6754412e1a06000000001e33485e73899fac97826b56402b182d42576c777777777777777777777773604c37210c00152a3f53687c92a69e8a75604c38241000000d2034485d71869ba5917c6854402b1702000e2134475868788a9e96826b56402b1600000b1e3042536473828f99a198908d8d8e9293897d705f4b37220d0000001b30465b70879cb09e8d7d70696769707c8b8d999b866f5f5d513f2c1900000000152a3f546a8095a8937c67523c271200000000000000000000000000000000000000000000000009141c1f1e190f0300000000000000000000000000000000000000000000000000000013263a4e6175899784705c4835435465757c7c7c7c7c7c7c7c7c889d8d7c7c7c7c68533e28130013283c5065798da1a08d796756473e3c3f444b55606053422f1c080000000000000a1e32465a6e8397917c6868686868686873889ca28e7a66523e2a16020000000000000000000000001226394d6175899d93859788735f4b37230f00000000000000000000001e33485e73899fa18c76604f5054697d93866f5a44302d27211a0f02000000000006091a2f445a6f859a947d68533e291409040000000000001e33485e73899f9f89735e4833263b50667b91a797826b56402b1601000000000000172c42576c8398a8937c67523c271200000000000b2035495e72869aa28f7a6858504e536275899d9885715d4935200c000000001e33485d72889dad98836c57422c17293c4e5d6262626262626262626262605544311d0900192e43586c8297ab9a86705b46321d090000051a2e43586c8297ac97836e5a45301b060014283d5164768797a897826b56402b16000215283b4e60718292a09e90857c7777787d848c8a76624d38230e0000001b30465b70879ca793806e5f5452545e6c7c8fa39b866f5a484032221000000000152a3f546a8095a8937c67523c271200000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000030c1215151515151515151e3246596d82958c7764503d4b60728393939393939393939395a3979393937d68533e291300182c41566b8094a89985705d4a382a2a2a3038444b4b433525120000000000000003172b3f53677b9097836e5a5353535365798ea29b87735f4b37230f00000000000000000000000006192d4155697c91a18d7c918f7a66523e2a1602000000000000000000001e33485e73899fa18c76646465666c8297866f5a442f1a130d06000000000005111a1f1f30465b70869b95806a543f2a1f1e180e01000000001e33485e73899f9f89735e4833263b50667b91a797826b56402b1601000000000000172c42576c8398a8937c67523c271200000000000e23384d62778da19d88735f4b3b3945596e8398a18d78634e3a2510000000001c31465b70869aae99846e59442f1a1f303f494c4c4c4c4c4c4c4c4c4c4c4c4437271502001c31465b70869aac97836c58432d1904000000152a3f54697d93a89d88735e49341f0a00172c41576b8094a5a8947d69543f2a1500091d3144576a7d8fa0a08f807268626264687079826d5a47331f0b0000001b30465b70879ca28d776351413c414e60768ca19b866f5a442f22140400000000152a3f546a8095a8937c67523c2712000000000000000000000000070f13130f0700000000000000000000010a1012100a0100000000000000000000000000061420272a2a2a2a2a2a2a2a2a2a3e5165798d94806c58454b607386998c7d808082838384899e9088898b7d68533e2913001b30455a6f8499a8937d6955413f3f3f3f3f3f3f3f3f3d35291a08000000000000001024384c6075899d8975604c3e43586c8095a894806c5844301c080000000000000000000000000d2135495d7085989b87768b96826d5945311d09000000000000000000001e33485e73899fa18c797979797b7b869a866f5a442f1a050000000000000515232e343434465b70869b95806a543f3434322b1f11000000001e33485e73899f9f89735e4833263b50667b91a797826b56402b1601000000000000172c42576c8398a8937c67523c271200000000000f253a4f647990a59b866f5a45302c40566b8296a6917c67523c271b11030000192e42576c8296ab9b87715c47321e12212d35373737373b404040403b37373127190900001e33485d72889dab95806a55402b160100000012273c51667b91a7a08c76614c37220d00172c42576c8398ada08d7965513c2712001024394c6074889ba895827161554d4c4f545c666e63513e2b18040000001b30465b70879ca18c76604b3627364b60768ca19b866f5a442f1a050000000009152a3f546a8095a8937c67523c2716130d0300000000000000000d1a232828231a0d000000000000000005131e2527251e13050000000000000000000000031424323b3f3f3f3f3f3f3f3f3f3f3f495d7085988874604d4457697c8f9685736a6b6c6c70879c8d7773747566523d2813001d32475c72889ca48f79655454545454545454545454524737251200000000000000091d3145596d82968f7b67523e4a5e72879ba18d7965503d29140100000000000000000000000115293c5064788ca0948070859a8874604c38240f000000000000000000001e33485e73899fa593909090909191929b866f5a442f1a0500000000000011233341494a4a48586e8398937c6853484a4a473d2f1e0b0000001e33485e73899f9f89735e4833263b50667b91a797826b56402b1601000000000000172c42576c8398a8937c67523c271200000000000f253a4f64798fa499846f5a442f2b40556a8095a8937d68533e372e21120100152a3e53687c91a59f8a75614c382410101a2022222f404e555656554e41301d15090000001f344a5f74899fa9947d68533e29140000000010253a4f647990a5a38e78634e38230e00172c41566a7d90989283705e4a36220e00152a3f53687c90a49f8b7765534339373a40495458534534210e000000001b30465b70879ca18c76604b3621364b60768ca19b866f5a442f1a050000000f1b252a3f546a8095a8937c67523c2b2b282015060000000000000e1d2b373d3d372b1d0e01040606050205142330393c3930231405000000000000000000000c2032424f54545454545454545454545455687c90907c6855414c5f72859792806e5c575a6f869b8d77625f60594937230f001e33485e73899fa28d776a6a6a6a6a6a6a6a6a6a6a6a6555422d190400000000000002162a3e52667a8f96826d59445065798ea29a86725d4a36210d000000000000000000000000081c3044586c8094a28e796a80938f7b67533e2a16020000000000000000001e33485e73899fa28e8788888888898b9b866f5a442f1a050000000000001a2e41515d5f5f5e5e6b8296907b665e5e5f5f5a4d3b28140000001e33485e73899f9f89735e4833263b50667b91a797826b56402b1601000000000000172c42576c8398a8937c67523c271200000000000e23384d61768ba09b86705c47363543586c8297a6917c67524f4b3f301e0b001025394d62768a9ea48f7b67533f2c1a08060b0f24384c5e6a6b6b6a5f4d392510000000001f344a5f748ba0a9947d68533e2913000000000f24394e63788fa4a59079644f3a250f0013273b4e61717d8380736453412e1b07001a2f44586d8297ab98846f5b48362622252d3740433f35271705000000001b30465b70879ca18c76604b3621364b60768ca19b866f5a442f1a0500000c1d2d393f40546a8095a8937c67524040403c32241402000000000e1d2c3b495252493b2c1d16191b1b1a17142332414d524d413223140500000000000000000012273b4f616a6a6a6a6a6a6a6a6a6a6a6a6a6274889885705d494254677a8d9e8c796755586e84998d77624c4b463b2b1a07001f344a5f748ba0a18c80808080808080808080808080705c47321d08000000000000000f23374b6073889c88735f4b576b8094a793806a57432e1b070000000000000000000000001024384c6073889b9c887364798d96826d5945311d090000000000000000001e33485e73899fa18c7672727272738498866f5a442f1a050000000000001f34495d7074747373727d948f7872737374746a57422d180000021e33485e73899f9f89735e4833263b50667b91a797826b56402b1601000000000000172c42576c8398a8937c67523c271200000000000a1f33485c7084979f8b7663534b4b505f72879ba08c776464645d4e3b2712000a1e33465a6e8295a896836f5c493726180e0a13283d52667b82827c67523c2712000000001f344a5f748ba0a9947d68533e2913000000000e23384e63788fa4a59079644f3a250f000c1f32435360696c6a62554636241200001d32475c71879ba8937d6954402c180d111a242c2e2b23170900000000001b30465b70879ca18c76604b3621364b60768ca19b866f5a442f1a050000172a3b4a5456566a8095a8937c67565656565042321f0b0000000c1d2c3b4a596666594a3b2c2a2e30302f2c273241515f675f5142322313010000000000000000152a3f546a808080808080808080808080806c6c80948d7865513e4a5d6f829597857260576c83978d77624c3732291d0d00001e33485e73899fa89894949494949494949495959589735e49341f0a00000000000000081c3044586d82958e7965515e72879ba08c7763503b271400000000000000000000000004182b3f53677b8fa395826c5e73889c8974604c38240f0000000000000000001e33485e73899fa18c76605c5c5d6b8095866f5a442f1a0c0200000000001f344a5f748b89898988889590888889898b846e58432e190003132033485e73899f9f89735e48332a3b50667b91a797826b56402b1601000000000000172c42576c8398a8937c67523c2712000000000005192d415467798b9b93827066605f636d7c8fa29783797979796a55402b160003172b3e5265778b9d9f8c78665544362a231f202c41566b8095937c68533e2813000000001e33485e73899ea9947d69543f2a14000000000f253a4f64798fa4a48f78644f3a240f0002142535434e5557554f453728180700001f344a5f74899fa48f7965503b26110000071117191610060000000000001b30465b70879ca18c76604b3621364b60768ca19b866f5a442f1a0500001d324659686b6b6b8095a8937c6b6b6b6b6b604e3b261100000016293b4a5968777768594a3b3f43464644413b41505f6f7c6f605141301e0b0000000000000000152a3f546a809193959595959595959492836c64778c95826d5946405265778a9d907d6b596b82868777624c3722170c0000001d32475c72879ca38d7d7d7d7d7d7d7d7d7d8ba0a08b745f4b35200b000000000000000115293d5165798e95806c5864788da29985705d4834200c0000000000000000000000000c1f33475b6f8397a38f7a66586d82968f7b67533e2a160200000000000000001e33485e73899fa18c76604b4752677c8b866f5a442f28201405000000001f344a5f748b9b9b999999a09d9999999b99846e58432e19000f21313d485e73899f9f89735e48333d4550667b91a797826b56402b1601000000000000172c42576c8398a8937c67523c27120000000000001125384a5c6d7c8c988f8379757478808c9b989590909090826b56402b1600000f2336485b6d8090a19684726253473d37343537455a6f8499947d68533f2914000000001c32475c70879bab95806b56402b160100000011263b50667b90a5a38d77634d38230e0000081725313a4042403b3327190a0000001f344a5f748ba0a38d77624d38230e0a13191a1a1a1813090000000000001b30465b70879ca18c76604b3621364b60768ca19b866f5a442f1a0500001f344a5f748282828296a89382828282827d68533e29130000001d314558687787877768594d53585b5b5a5550505f6e7d8e7d6f5f4e3b26120000000000000000142a3f5469797c7d8082869b9483827d7c7a6b5c7084978975614e3a485a6d80939b897664646e70726f5f4a36210c000000001a2f44596e8498a38f786868686868686873899fa18c76604b36210b00000000000000000e22364b5e72879b87725e6b8094a6927d6955412d190500000000000000000000000013273b4f63768a9e9c88735f52667b8f96826d5945311d0900000000000000001e33485e73899fa18c76604b3a4e627374746b5843403c322313010000001f344a5f74878686848484938e8484858686846e58432e1900192c3e4f5a6073899f9f89735e483d4e595e667b91a797826b56402b1601000000000000172c42576c8398a8937c67523c2712000000000000081b2d3e4f5e6d7a868f968e8b8b8d93979086838f989e97826b56402b16000006192b3e5061728392a19080716459514c4a4a4c505e73889d95806a543f2a15000000001a2f44596d8397ac98836d58432e190500000014293e53687d93a8a08b75604b36210c00000007141e262b2c2c27201609000000001f344a5f748ba0a18c76604c37210e1c272d2f2f2f2d261b0d00000000001b30465b70879ca18c76604b3621364b60768ca19b866f5a442f1a0500001f344a5f748b9497979fae9e97979797947d68533e29130000001f344a5f7487969687776861686d70706f6a635f6e7d8d9c8e7d69543f2a15000000000000000011263a4c5d6567686a6f869b947d6b6967655e54677b8f917d6956423e506375889b94826f5d595b5c5b51412f1b0700000000172c4055697d92a6917b6753535353535e73899fa08b74604b36200b0000000000000000071b2f43586b80948d786472869a9f8b76634e3a2612000000000000000000000000071b2e42566a7d92a695826d584c6075899d8974604c38240f00000000000000001e33485e73899fa18c76604b3645555e5f5f5b5656564f41301e0a0000001e33485c6d706f6f6e6e7d948f786e6f6f6f706855412c17001e33485c6d747a899f9f89735e48465a6c73787c91a797826b56402b1601000000000000172c42576c8398a8937c67523c2712000000000000000f2031404f5c68727a828789898987837c73717c84898b826b56402b160000000f21324454647483919d9082766d65615f5f61656b778ca197826b56402b1601000000162b4054697d92a79b86715c47331e0a000004192d42576c8296ab9c87725d48331e09000000000a131b1f1f1f1b140b00000000001f344a5f74899fa18c76614c37221c2c394244444442392b1b09000000001b30465b70879ca18c76604b3621364b60768ca19b866f5a442f1a0500001f34495e727a80838897a99588888888887d68533e29130000001d32465a6a798998968777757c8386878480776e7d8d9c91827263513d281300000000000000000a1d2f3f4a5052535a6f869b947d685452504b4c6073879986715d4a3646596b7d909f8d7a685646474640332412000000000012263b4f63778a9e95806c58443e3e4c61768ba09d88735e49341f0900000000000000000014283c5065798d94806b788da19884705b47331f0b0000000000000000000000000f22364a5e72869aa38f7a6652465a6e83978f7b67533e2a16010000000000000b1e33485e73899fa18c76604b363743494a54646b6b6b5f4d392510000000192c3e4f595b5a5a596b80959079655a5a5a5b574a392612001f344a5f74898f95a39f89735e48485e73888d929aa497826b56402b1601000000000000172c42576c8398a8937c67523c271200000000000000031322313e4b565f676d71737373716d68605f687073747468543f2a150000000315263646566472808b969489827a7674747679808894a597836c57422c170200000011263a4f63778ca09f8b76614d39251100000c1f33485c70869aab97826d58442f1a050000000f1c272f3434342f271d11030000001d32475c71879ba38d77634d382327394a565a5a5a5649382512000000031b30465b70879ca18c76604b3621364b60768ca19b866f5a442f1a0500001b2f435461666a6e8095a8937c727272727164513c2712000000172a3c4c5b6a79899896878891979b9c99938b828d9c91827263544534210e00000000000000000011212d363b3c445a6f869b947d68533e3b3744576b80938d7966523e3b4e61738699988673614f3d312c22150600000000000c2034475b6e82949b87736151474754677b8fa497836e5a45301b060000000000000000000d2136495d72869a86718093a5917c6854402c1804000000000000000000000002162a3e5265798da19c88735f4b4054687c9196826d5945311c080000000000101d2733485e73899fa18c76604b36323234475b7082827c67523c27120000000f21313d45464444576c8397917c6752444546433a2c1b09001f344a5f7488898b8d8f89735e48485e7387898b8d8f90826b56402b1601000000000000172c42576c8398a8937c67523c271200000000000000000413212d39434b52585c5e5e5e5c58534c4c555b5f5f5f594a39251100000000081928384655616e78828a92958f8c8b8b8c8f949794908c836e58432e19030000000c2034485c708498a5907c6854412e1c0c0a17293b4f63778b9fa4907b67533f2a160100000e1e2d3943494a49433a2f21120100001a2f44586d8297a5907a65513c272d4256686f6f6f6755412c17020003132030465b70879ca18c76604b3627364b60768ca19b866f5a442f1a050000132536444c51556a8095a8937c675c5c5c5c554735220e0000000d1e2e3d4c5b6a798897999b99908c8b8d929b969c9082726354453627170500000000000000000003101b22262f445a6f869b947d68533e29283c5063778b95826d5a46334456697b8fa191806d5a483624120500000000000004182b3e5164768898907d6f625c5c63718497a28f7c6854402b1702000000000000000000061a2e43566a80938b7685999e8a75614d3925110000000000000000000000000a1e3245596d8295a995826d5844394e62768b9c8874604b37230f010000000d1e2e3a42485e73899fa18c76604b464747484d61768a917b66513c27110000000313202a30302f44596e8499937d68533e30302e271c0e00001e33485c6d7273767779796d5b47465a6c72737577787a7367533f2a150000000000010c172c42576c8398a8937c67523c271209000000000000000003101b262f373e434748484847443f393940464a4a4a463b2d1b0900000000000a1a283744505c666f767c838688898989888683807b77726855412c170200000005192d4154677a8ea09784705d4b3a2a201f263546586b7d92a69b8874604c3824100000091b2c3c4b565d5f5e574c3f301f0d0000152a3f53677b90a394806a56422f32475c708686846e58432e1904000f21313e465b70879ca18c76604b3639434b60768ca19b866f5a442f1a05000008182631383f54697d94a8937c675247474742382f251809000000101f2e3d4c5b6a7b8fa293867c7674777d899898837163544536271809000000000000000000000000070d1a2f445a6f869b947d68533e292034475b6f83968a76624e3b394c5f7184979c8a77665441301d0b000000000000000f22344758697989978e80757070768290a19584725f4c392511000000000000000000000013273b5064778c917c8b9f97836e5a46321e0a00000000000000000000000f1c26394d6175899da38f7a66523e33485c7085998f7a66523e2a1f12030000162a3c4c565a5e73899fa18c76605b5b5c5c5d5e677c908f79644f3a251000000000101d262c2c30465b70869b95806a543f2c2c2b24190b0000192c3e4f595c5e606264655b4f414c54595c5e606263666157493724100000000002111e282d42576c8398a8937c67523c2c261b0e00000000000000000009131c242a2e32333333322f2a24252c31343434322a1d0f000000000000000a1926333e49525b62686d707373747372706d6a66625d574a39261200000000001125384b5e708394a08d7a6858483c35343944526375889ba3917d6b5845311d0900001226384a5a687274726a5d4e3d2a1704001024384c6073879a9a86725f4c3c364b60758a9b866f5a442f1a0500192c3e4f5a6170879ca18c76604b3849565e64768ca19b866f5a442f1a0500000009151e273c51667b90a4937c67523d3a40484943362615020000011023374b5f73869994847469615f636b798a9b8e7b6855412d19090000000000000000000000000000001a2f445a6f869b947d68533e29182c3f53677a8e927d6a56432f415467798c9f9583715f4d3a2713000000000000000517293b4c5c6b798690928a87878a939b928576665542301d0900000000000000000000000c2134485d7185968290a48f7b67533f2b1703000000000000000000000c1d2d394155687c90a49c88735f4b382f41566a7d9396826d59453b30211100001c3146596a6f7276899fa18c76707070727272737382978d77624d38230e0000000d1e2e3a414242455a6f859a947d69544242423f36291907000f21313d4547494b4d4f504947535e68675b4d4b4c4e504e44392b1a08000000000f202f3b4245576c8398a8937c67524441392c1c0a00000000000000000000080f151a1d1e1e1e1c1a151011181c1f1f1f1d170c0000000000000000000815212c363f474e53585b5e5e5f5e5c5b5855514d49443a2c1b090000000000081b2e41536576889898867566594f4a4a4d5561708293a5968573614e3b2815020000192d41556878868b877b6c5a47331f0a00091d3144576a7c8fa08f7c6a5a4e4a5064798e9b866f5a442f1a05001e33485c6d757c879ca18c76604b4054677278808ca19b866f5a442f1a0500000000020f23384c6175899c95806b574e4f535d5e5444311e0900000013273c51657a8f9c897665574d4b4f5b6b7d929885705c48331e09000000000000000000000000000a101a2f445a6f869b947d68533e291324374b5f72869a86725f4b37374a5d6f8295998f7c6a56412c1702000000000000000c1d2e3e4d5b68737d868b8f90908d8880746758483725130000000000000000000000091a293744556a7d92939a9c8974604c3a2c1e0e00000000000000000000172a3b4b555c708598aa95826d58544a3e4d5664788d9c88735f564e3f2e1b08001e33485e7385888b91a2a28d8686878788888889898b9c8b76604b36210c000000172a3c4c55575756586c8397927c67565757575347372411000313202a30323436383a3d4b5864707c796b5c4b38393b3931271b0d0000000005192c3e4d575a5d6c8398a8937c675c5a554a3a27140000000000000000000000000000000000000000000000000000000000000000000000000000000000040f1a232b333a3f434648494a48474643403c38342f281c0e000000000000001124364759697989979485766b635f5f616873808f9f978878675644321f0c0000001c31465b708597a0998a76624d38230e000114283a4d5f7082929988786b625f60697d939b86705b46301b06001f344a5f748a91989d9f8c76604b42576c838d939a9d9b866f5a442f1a050000000000091e3246596c80929a8674676364686f72614c38230d000000162b40556a809495826d594739353d4e62768b9f8b76614c37220d000000000000000000000004121d25272f445a6f869b947d68533e29131b2f43566a7d928e7a66533f2d405265778484847a6955412c1701000000000000000112222f3d4a56616a717679797977736c6256493a2a190800000000000000000000021527374755616a778b9fa996826d63584a3c2c1a080000000000000000001d324659686f778ca0a38f7a706d67584a5c6a6f72879b8f7a706b5d4b37220d001e33485e73898f8f8f8f8f8f8f8f8f8f8f8f8f8f8f8f8f89735e49341f0a0000001d32465a696c6c6b6b6b809590796b6b6c6c6c6554402c170000020e161b1d1f23313f4d5b6875828e897a66513c2726241e140a00000000000a1f34485c6b6f72748398a8937c74726f6857432e1a0500000000000000000001070b0b0a0700000000000005090b0b08030000000000000000000000000000000710181f252a2e313334343332302e2b27241f1b150b000000000000000006182a3b4b5b6a788692958980777473767c85919e9387796a5a49382715020000001d32475c72889db1a59079644f3a250f00000b1e3042536373829097897d7774747985989c87705b46301b06001f344a5f7483848688898876604b42576c82848687888a856f5a442f1a05000000000002162a3d506274869692847b78797c8378634e38230e000000172c42576c8397917c67523d2a2033485d72889c8f79644f3a240f0000000000000000000001132330393c3a445a6f869b947d68533e291314273b4e62768a96836f5b473436485a6a6e6e6e6b5c4c3a261200000000000000000b1e30404c596361565d61646464635e5e645c5044352411000000000000000000000c1f32445565737d868d959495878075685a493825120000000000000000001f344a5f74848a94a4a390898683735e4e637884888c9c968a8679644f3a250f001e33485d7178787878787878787878787878787878787878705c47321d080000001f344a5f74838382828080948d8082828283836e58432e19000000000002122232414f5d6b798794948372624f3a26110f0a020000000000000b21364b607686888b8e9ca4978c898784705b46301b0600000000000000000b151c20211f1b140b00000711191e21201d170f05000000000000000000000000000000040b1115191c1e1f1f1e1d1b1916120f0b0600000000000000000000000c1d2d3d4c5a6874808991938d8a898c9098928a8275685b4c3c2c1b09000000001b30455a6e82939f9d8d78634e39240f000001132435465564717d8992928c8b8b8e95979187705b46311c07001d324659686c6f707274746a5b483e52636c6e6f707374736756422d18030000000000000d203345566777879497908f8f928f78634e38230e000000172c42576c8398917b66513c271d32475c70879c9079644f3a250f000000000000000000000b1e30414d524f4a5a6f869b947d68533e29130b1f33465a6d82958a76634f3b2b3d4d57585858574d3e2e1d0a000000000000000011263a4d5e6a767163544c4f4f4f4f5e6e796e6153412d190400000000000000000013273b4e617384918f85807d82899387776755422e1a0600000000000000001f344a5f748b8f8f8f8f8f8f8f89735e4e63788f8f8f8f8f8f8f79644f3a250f001a2e4153606363636363636363636c6c63636363636363636052402d19040000001f344a5f748b98979795959e999596979798846e58432e1900000000000f203040505f6d7b8a97978775655544321f0c0000000000000000000b21364b60768c8f8f8f8f8f8f8f8f8f87705b46301b0600000000000003111d28303536342f271d110b19242d333635322b22160900000000000000000000000000000000000000000000000000000000000000000000000000000000000000000f1f2e3d4a56626c757c8387898a8987837d766d63584b3d2e1e0e0000000000162b3e516474828a89806f5d4935200c000000061728374654606c767d84888b8b8a87837c766d5a46311c0700172a3b4a55575a5b5d5f5f584d3d35455257585a5c5e5f5f5649392613000000000000000316273949596876838d969ca0a08f78634e38230e000000162b40566b8095937d6955402e2b3a4c6074899e8f78644f3a240f0000000000000000000012273b4e5f67645f5a6f869b947d68533e291303172b3e5266798d93806b5744302f3b42434343423b2f2010000000000000000000142a3f54697b8882726354453f4f5e6d7c8c80705c47321c07000000000000000000182d41566a7d919180716a696c76889685715d4935200b00000000000000001f34495e72787878787878787878715d4d62757878787878787876634e39240f00122435434c4e4e4e4e4e4e5869737d8075695d504e4e4e4e4c43342311000000001f344a5f748b8d8d8c8c8b96918b8c8c8d8e846e58432e1900000000061a2c3e4e5e6e7d8c9a9a8a79685847372615030000000000000000000b20354b5f7378787878787878787878786f5a45301b0800000000000011212e3b444a4b49433a2f211a293641484b4b463e342718080000000000050d101111111111111111110e080d101111111111111111110f0a020000000000000000000001101f2c3945505962686e72737473716e69635a51463a2d1f100000000000000f22354656646f74746d6151402d1a06000000000a192836434f5962696f73747474726d68615b4f3e2b1703000c1d2d3940424446484a4a453b2f27353e42434547484a4a44382b1b0900000000000000000a1b2b3b4a5865707a82888b8b8778634e38230e00000014283d52677b909884705d4c403f4958697c8f9f8a75604c37220d00000000000000000000182c41556a7c78746f6f869b947d68533e2913000f23364a5d71869987735f4c3824282d2e2e2e2d281e110200000000000000000014283d5265768891827263544e5d6d7c8c8f7d6c5a45311c060000000000000000001b30455a6f859a8975615554596b80958d77634d38230e00000000000000001b2f43546163636363636363636360534657626363636363636362584734200c0007172631373838383838475c71839192877a6e60524438383730251606000000001f34495e7278777776767d948e7876777778786c58432d18000000000d2136495b6c7c8d9b9d8d7c6b5b4a3a2919080000000000000000000015283948556167636363636363636363675f524637261300000000000b1d2f3f4c575f605e574c3f30283847545c605f5a5144362614020000000c182125262626262626262626231c2125262626262626262626241e140700000000000000000000010e1b27333d464e54595c5e5f5e5c59544e473e34291c0f010000000000000517283847525b5f5f5a50423322100000000000000a1825313d464e555a5e5f5f5f5d59534d473e31200e0000000f1b252b2d2f3133343431281e17232a2c2e303233343430271b0d000000000000000000000d1d2c3a47535d666d727474726c5e4b36210d0000000f24384d6175899c8d7a6a5c55545b6675879997836f5b47321d09000000000000000000001d31465b6f848e89847d869b947d68533e291300071b2e4256697d918f7b6754402c191819191918140c01000000000000000000000f223648596a7b8d918272635d6c7b8c948371604f3d2a16020000000000000000001b30465b70879c87705b464354697d948f79644f3a250f0000000000000000132536444c4e4e4e4e525c60605b51443f4d5960605d554e4e4e4d473a2a1805000008141d22232323232e425565758595988c7d7062534435251d130700000000001b2f435461636362616b8296907965626263635e4f3d2915000000000f243a4f64798b9ba090806e5e4d3d2c1c0b00000000000000000000001c31445766727c6f63564e4e4e5864717c706455432f1b000000000014283b4c5d6a7376726a5d4e3c334556657076746e625444311e0b00000c1c2a353b3b3b3b3b3b3b3b3b3b382f353b3b3b3b3b3b3b3b3b3b393125160500000000000000000000000a16202a3239404447484a484744403a332b21170b0000000000000000000b1a29353f474a4a463e332415050000000000000008141f2a333a4045484a4a4a48443f39332b21130300000000091116181a1c1e1f1f1c150c060f1517191b1c1e1f1f1c14090000000000000000000000000e1c2a36414a53595d5f5f5d584f402e1b0700000817263545596c809199897a6f6a696e7785949e8c796753402e1f10010000000000000000001f344a5f74848a9198928f9e947d68533e2913000013263a4e61758997836f5c4834210d000000000000000000000000000000000006192a3b4c5e6f80919182726c7b8b99887665534231200e000000000000000000001a2f44596e83978975625a585e6f83978d77634d38230e0000000000000000081826313838384153627076756f62524c5d6b747672675847383833291c0c0000000001090d0e0e0e1225374757677687979d8f8271625342301c08000000000000132536444c4e4e4c586d8398917c67524c4e4e4b4031200d000000000e23384c5f6f7d8c9382716150402f1f0e0000000000000000000000001f344a5f74838e8273675a4f5c6875838e82725d48331e00000000001b2f43576a7b888c877b6b5a463b506374838b8a8272614e3b2612000317293a48505050505050505050504c4048505050505050505050504e4334220f000000000000000000000000030d171e252b2f32333433322f2b261f180e0500000000000000000000000b18232c323434312b211506000000000000000000020d171f262c3033343434332f2a251e180f03000000000000000000000000000000000000000000000000000000000000000000000000000000000000000c18242e373e44484a4a48443d312211000007172635445362718291a2988c84807d838a95a39b88786a5b4c3d2e1f0f0000000000000000001d324659686f767d858e98a3947d68533e291300000a1e3245596d82958b7764503c29150100000000000000000000000000000000000c1e2f40516273859691827a8b9a8d7b6a58473625130200000000000000000000162b4054677a8d9282746f6e717c8c9685715d4935200b00000000000000000009151e2323364a5e70828b8a80705d56697b898c857664513d291f170c0000000000000000000000081929394959697889999f9082705f4b36210c00000000000008182631383838455a6f869b947d68533f3838362e22130200000000091c3041515f6d7b8574645343332212010000000000000000000000001e33475b6c7b8c9285776b5f6d7987948a7a6b5a46311c00000000001e33485d728799a1998976614d40556a8092a09e907d6a55402b16000a1e334658646666666666666666665e4d586466666666666666666661523f2b170000000000000000000000000000030a11161a1d1e1f1e1d1a16110b0400000000000000000000000000000610181d1f1f1c160e04000000000000000000000000030b12171b1e1f1f1f1e1a16100a040000000000000000000000000000000000000000060b0e0f0f0e0b0701000000000000000000000000000000000006111b232a30333434332f2920130400001225354453627182909d8e909b989594979e978e969789796a5b4c3d2d1c0a0000000000000000172a3b4a545b6269727a8691927d68533e2913000002162a3d5165788c93806c5844311d09000000000000000000000000000000000000112233445667788a9b918a9991806e5d4c3b29180700000000000000000000001124384b5d6f7d8a92888484868e9287786754412e1a0600000000000000000000020910253a4f64798e9f9e8d79655c708699a094826c57422d1904000000000000000000000000000b1b2b3b4b5b6b7a8b968b8073604c37210c0000000000000009151e232330465b70879c95806a543f2a23211b1104000000000000122332414f5d6b746757463625150400000000000000000000000000182b3e4e5d6d7c8d96897c707d8b988b7b6c5c4d3d2a1700000000001f344a5f74899fb1a59079644f40566b8297abad98836c57422c17000d22374c61767b7b7b7b7b7b7b7b7b695461767b7b7b7b7b7b7b7b7b6e59442f1a000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000009131a2023252523201b160f080000000000000000000000000000000000080f161b1e1f1f1e1a150d020000001b2f4253627182909e8e7d7d878e9193908b847a86959889796a5b4b39261100000000000000000c1d2d3940464e555e6873807c7867523d28130000000e2235495d7085988874604d39251000000000000000000000000000000000000004162738495a6b7d8e9f9f9685736251402e1d0c000000000000000000000000081b2e4051606d778087898b89868075685a493825120000000000000000000000000011263b50667b90a5a8937c675c72889daf9a866f5a442f1a0500000000000000000000000000000d1d2d3d4d5d6d7c84786d615544311d09000000000000000002090d1b30465b70879c95806a543f2a150d070000000000000000051423313f4d5a5f58493928180700000000000000000000000000000f20303f4f5e6e7d8e9a8d828f9b8c7c6d5d4e3e2f1f0d00000000001d32475b6f83939e9b8b77624d3f53677b8d9b9e92806b56412c17000d22374c62778d91919191919191806a5462778d91919191919191866f5a442f1a000000000000000000030a10141719191916130d07000000000000000000000000010d15191a1a1a19150d0200000000000b14191a1a1a1a160f0400000000000000000002090e111213120f0a04090f1212110f0c0803000000000000000000010f1b262e35383a3a3834302a241c130a0000000000000000000000000000000000000000000000000000000000001f34495e7182909e8f806f6a72787b7c7a7670687686959889796954402b150000000000000000000f1b252c333a424b56626b68635b4b382410000000061a2d4155687c89887c68533e281300000000000000000000000000000000000000091a2b3d4e5f70828b8b8a786756443322110000000000000000000000000000112232424f5b646c71747473706b63584b3c2c1a08000000000000000000000000000f24394e62778b9c9f8e7a655a6f8396a095826d58432e19040000000000000000000000000000000f1f2f3f4f5e6f72665b50443727150200000000000000000000001b30465b70878b8b806a543f2a1500000000000000000000000513212f3c464a453a2b1b0a000000000000000000000000000000021221314050606f808f9e979d8d7d6e5e4f3f302011010000000000182c405365748289887d6e5b48384c5e6f7d8789837463503c2813000d22374c627782848b9ea08c8683806a5462778284889aa5908683806f5a442f1a00000000000000030d171e25292c2e2e2e2b27211b120800000000000000000002121f292e2f2f2f2f29201203000000101d282e2f2f2f2f2b221506000000000000020d161d2326272827241f181d2427272624211d170f04000000000000000f1f2d3942494d4f4f4d49443e3730261c100200000000000000000008131a1e1e1e1d170e020000000000000000001f34495d70808f8f807061575e64666765615b586776869589796954402b15000000000000000000000911171e262e39455056534e493d2d1b08000000001225394d607174727064503c271200000000000000000000000000000000000000000e1f30415263737474746c5a49382716040000000000000000000000000000041423313d4851585c5f5f5e5c564f463a2d1e0e00000000000000000000000000000b1f33475b6d7d898a82705e536677868b867765523e2a15010000000000000000000000000000000111213140515d5e54493e322719090000000000000000000000001b3045596d7474747467533e291400000000000000000000000003111f2a323431281c0d00000000000000000000000000000000000313223242516170808b8b8b7d6f5f5040312112020000000000001023364756646e73726c5f503e2f40515f6a72736f65564533200d000b1f34485a686c72889d9f89736d6a614f5a686c6f8499a48f786e6b6454402c180000000000000915202a32393e41434343403c362e251b0f03000000000000000f20303c43444444443d30211000000c1e2e3b43444444443e33241301000000000814202931373b3c3d3c39332c31383c3c3b3936312b21140500000000000a1c2d3d4a565d636464625e59534b43392e201000000000000000000918252e333333322b20120100000000000000001a2e415161708080706151434a4f5152504d474958677686796a5b4b392611000000000000000000000000030b131c27333d403e3a352c1f0f0000000000091d3143535e5f5d5b544634210d00000000000000000000000000000000000000000112243546555e5f5f5f5b4e3d2c1a09000000000000000000000000000000000514202b353d43474a4a4947423b33291c0f00000000000000000000000000000004182b3e4f606c73746f625349596871747268594836230f00000000000000000000000000000000000313223240484942372c21150900000000000000000000000000162a3d4f5c5f5f5f5f584937241000000000000000000000000000010d171d1f1c150b0000000000000000000000000000000000000004142333425261707474747060514132221303000000000000000618293847525a5e5d584e41322332414e575d5e5b5347382816040005182b3d4b535c72889d9f89735e554f424b53586e8499a48f786356514636241100000000000b1926323d464d535758585855504a41382c201304000000000000182b3e4e585a5a5a584e3f2d1a060116293c4c575a5a5a595142301d09000000091826323c454c505252514d4740444d5152504e4a463e32231100000000001427394b5b687277797977736d675f564b3e2d1b080000000000000215273642484848463d301f0d0000000000000000112333425261707061514233363a3c3c3b38333a495867746a5b4c3d2d1c0a0000000000000000000000000000000a1621282b292520190e0100000000000114263542494a484641372817050000000000000000000000000000000000000000000617283743494a4a4a473e301f0e000000000000000000000000000000000000020e1821292e32343434312d2820160b00000000000000000000000000000000000f2132424f595f5f5b52443b4a565d5f5d564a3b2b19060000000000000000000000000000000000000414222d33342f251a0f0300000000000000000000000000000e20313e484a4a4a4a453b2c1a0800000000000000000000000000000000000000000000000000000000000000000000000000000000000515243443525d5f5f5f5d51423223140400000000000000000014283b4c595c5c5c574a38251f3345545c5c5c5b50402e1a0a0000000e1f2d38475c72889d9f89735e483b323843586e8499a48f78634e3d35281907000000000a1a293744505961686b6e6e6d6a655d544a3e3123140400000000001e33475b6b6f6f6f6c5d4935210d081c3145596a6f6f6f6e604c38230e000007182736434f596065676766625b535460666766635f5b50412e1b07000000071c3043566879868d908f8c88827a72695c4a37230e0000000000000a1e3244545d5e5e5a4e3d2a1601000000000000000515243443525d5d514233242125272726231e2b3a49585f5a4c3d2e1f0f0000000000000000000000000000000000040d141614100c0600000000000000000817252f343433312d25190a00000000000000000000000000000000000000000000000a19263034343434332b2012010000000000000000000000000000000000000000050e141a1d1f1f1f1c19130c04000000000000000000000000000000000000031423313d454a4a473f342c3942484a4942392c1d0d00000000000000000000000000000000000000000511191e1f1b1308000000000000000000000000000000000213212c333434343431291d0e0000000000000000000000000000000004080c0d0e0d0a06000004090b0b0b0905000000000000000000000616253441494a4a4a49413324140500000000000000000000192e43576a7272726855402c253a4e627172726e5d4934200a000000010f1d32475c72889d9f89735e4833202e43586e8499a48f78634e3823170a00000000061728384755616c757c82848483807971675c4f4132221201000000001f344a5f748686867864503b27130f23374b5f7486868678644f3a240f00011325364554616c74797c7c7b766f6561727b7c7b78746e5e4a36210c0000000c21364a5f738697a19f989697968f867a65503b26110000000000000f24394d617273736c59442f1b06000000000000000006162534414949413324150c101212110e0d1c2b3a454a463c2e1f10010000000000000000000000000000000000000000000000000000000000000000000007121b1f1f1e1c1912080000000000000000000000000000000000000000000000000009141b1f1f1f1f1e180f0200000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000514202a313434322c221b262e3334342e261b0e00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000030f191e1f1f1f1f1d160c0000000000000000000000000000000811181d212223221f1b1410181e2121201e1a150f0600000000000000000716242e34343434342e23150600000000000000000000001a2f445a6f8688846e58432e273c52677c888876604b36210b00000000001d32475c72889d9f89735e48331e2e43586e8499a48f78634e38230e00000000001124354656657380899196908f90948d85796d5f5040301f0d000000001c3145596d829693806a56422e1a15293e52667a8f9a86725d4935210c000a1d30425363727d898f9393908b83776c7d9093908d8977624c37220d00000010253a4f64788ea2a18f83828284888b77634e3a251000000000000010253a4f64798988725c47321d070000000000000000000716242e34342e231506000000000000000d1c283134322a1e10010000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000040c10111111111111111111100b020000060d10111111111111111111110f090000000000000000000000020d161c1f1f1d181009131a1e1f1f1a130900000000000000000000040c101111111111111111111111111111111111111111110f09000000000000000000000000000000000000000000000000000000000000000000000003101b252c3236373837342f29222c33363636332e2a23190b000000000000000006121a1f1f1f1f1f1a11050000000000000000000000001b30465b708699846e59442f283d52677c938d77624c37220d00000000001d32475c72889d9f89735e48331e2e43586e8499a48f78634e38230e00000000091c2f4152647383919c8e837b787a828b978b7d6e5e4e3d2b1907000000162a3e52667a8f9a86715d4834201c3044586d829594806b57432e1a060012263a4d607182909ca1968f8d8e948a7d8095a08c878777624c37220d00000011263b50667b91a69a86716b6b6f737a705c48331f0b00000000000011263b50667b9188725d48331e080000000000000000000006121a1f1f1a11050000000000000000000b151c1f1d170d0000000000000000000000000000000000000000000000000913191b1c1d1d1911050000000000000000000000000000000000000000000000000000000000000000000000050a0d0e0f0e0b0700060b0e0e0d0b0804000000000000000b172025262626262626262626251f15080d19212626262626262626262626241d12040000000000000000000000000000000000000000000000000000000000000000000000000b172025262626262626262626262626262626262626262626241d12040000000000070e131313131310080000000000000000000000000000000000000413212d3840474b4c4e4c49433d343f474b4b4b48433e362919080000000000000000000000000000000000000000000000000000000000001c32475c70879b866f5a442f293e53687d948d77634d38230e00000000001d32475c72889d9f89735e48331e2e43586e8499a48f78634e38230e000000001226394c5e708292a08f7d706663656d7a8a9b8d7c6c5a483623100000000f23374b6074899d8c77634f3b2622364b5f73889c8d7864503c28140000192d4155697c8fa0a191847a777980898e80959f8973706e5e4a36210c00000011263b50667b91a798836d58575a5f666353412d190400000000000012273c52677c9289735e48331e090000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000c1a262e303132322d23150600000000000000000000000000000000000000000000000000000000000000000912191f22232423201b141a20232323201d19140b01000000091a28343a3b3b3b3b3b3b3b3b3b393226171d2b353b3b3b3b3b3b3b3b3b3b3b382f2213020000000000000000000000020a1115181a1a18151009010000000000000000000000091a28343a3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b382f2213020000000d19232829292928241b0f01000000000000000000000000000000011222313f4b545b606263615d585047525b6060605d5852473725120000000004080c0f111111100f0c090500000000000000000000000000031d32475c72889c87705b46302a3f546a80958f78634e38230e00000000001d32475c72889d9f89735e48331e2e43586e8499a48f78634e38230e000000071b2e4255687b8e9f96837060534e515c6c7d909b8a776653402d19060000081c3145596d8296937d6a55412d293d5165798e9b87725d4935210d00001d32475c708599aa9784726662646c75828d9e9f89735e5a50412e1b0700000011263b50667b91a797826b5741454b514f453624110000000000000013283e53687d938b745f4a341f0a0000000000000000000000000000010c151b1f1f1e191108000000000000000000000000000000000000000000000000000000000000000007192a3842464647474033241200000000070e1212121212121212121212121212110c040000000000000005111c262d3337383938352f282d3538383835322d281e11020000142738464f5050505050505050504e4435232a3b4850505050505050505050504c40311f0c0000000000000000000008141e252a2d2f2f2d2a241d140800000000000000000000142738464f5050505050505050505050505050505050505050504c40311f0c00000b1c2b363d3e3e3e3d382d1f0e0000000000000000000000000000000c1e30404f5d677074777876726c635a616f767675716c6554412d180000030f181d21242626262624211e19140e0600000000000000000000081e33485e73899c87715c47322b40566b80959079644f3a250f00000000001d32475c72889d9f89735e48331e2e43586e8499a48f78634e38230e0000000d21364a5d718598a18d79665342393e4e6073889c95836f5c4935210d000002162a3e53677b8f9985705c48332f43586c809594806b57432f1b0600001f344a5f74899fa5907b67544d5059636f869b9f89735e483e3223110000000011263b50667b91a797826b564030373c3b332718070000000000000014293e53687d948b75604b36200b0000000000000000000000000004121e28303434332d241a0d0000000000000000000000000000000000000000000000000000000000000010243748565b5b5c5c51412f1c0800000d192227272727272727272727272727272620160900000000000615222e3941484c4e4e4d4a433c40494d4e4c4a46423b2f200f00001c304456636666666666666666666153402c34475965666666666666666666665e4e3b271300000000000000000006172631393f434444423f393026190b0000000000000000001c304456636666666666666666666666666666666666666666665e4e3b2713000015283a4852535353524b3d2c1a06000000000000000000000000000316293c4e5e6d7a848a8d8d8c8780766c6d808b8c8b87826f5a442f1a000313212b3236393b3b3b3b3936332e28211a110800000000000000000a1f344a5f748a9d88725c47322c41566b8297907a66503b261100000000001d32475c72889d9f89735e48331e2e43586e8499a48f78634e38230e00000013273c5065798da19b87725e4a36243144586c82959f8c7864503c28140000000f24384c6074899d8b77634e3a364a5e72879b8d7965503c28140000001f344a5f748ba0a38d77624d383c465a6f869b9f89735e48332114050000000011263b50667b91a797826b56402b2327262016090000000000000000152a3f546a80958c76604b36210c000000000000000000000000021222303b44494a4741372b1d0d000000000000000000000000000000000000000000000000000000000000152a3f53667070726f5f4b372410000d1d2b363c3c3c3c3c3c3c3c3c3c3c3c3c3c3b3327180700000005152433404c555c616363625e584f515d6263625f5b574d3e2d1906001f344a5f737b7b7b7b7b7b7b7b7b705b4630384d63777b7b7b7b7b7b7b7b7b7b6a55402b16000000000000000000112435444e53585a5957534c4337291a0900000000000000001f344a5f737b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b6a56412c1702001c31455866686868675b4936210d000000000000000000000000000a1e3246596b7c8c979f9a95939493897d72879c9b8e8d866f5a442f1a000f21313e474b4e505050504e4b47423d362e241b10040000000000000b20354b5f748b9f89735e48332c42576c8398917b66503b261100000000001d32475c72889d9f89735e48331e2e43586e8499a38d77634e38230e000000172c41566a8094a896826c58432f1b293e52677b91a694806b57422d19040000091d31465a6e8397927d6955403c5065798d9b87725e4a36210d0000001f344a5f74899ea38d78634f3f36445a6f869b9f89735e48331e09000000000011263b50667b91a797826b56402b1612110c04000000000000000000162b40566b82968d77624c37220d0000000000000000000000000e2030404e585e5f5c54493b2b1a080000000000000000000000000000000000000000000000000000000000162b40556a7d87887a67533f2c1805182a3b4951525252525252525252525252524f4536241100000011223342515d687076787877726b61606f77787774706a5c4935200b001f344a5f748b9191919191919187705b4630384e63788f9191919191919191826b56402b16000000000000000000192d415361686c6f6e6c6860554737261401000000000000001f344a5f748b91919191919191919191919191919191919191846e59442f1a06001f344a5f747d7d7d7964503b2713000000000000000000000000001125394e6275899ba39387807c7d838a9083889d978277776d59442f1a00182b3e4f5b60636666666563605c57514941372d21150800000000000c21364b60768c9f89745f4a342e43586e8499937c67523c271200000000001d32475c72889d9f89735e4833232f445a6f8599a38d77624c37220d0000001b30455a6f8499a7927c68533e291524394e63788da29a86705c47321d08000002162b3f53677b909884705b4743576b809495806b57432f1b070000001c31465b6f8497a792806d5d514a455a6f869b9f89735e48331e09000000000011263b50667b91a797826b56402b1601000000000000000000000000172c42576c82978e78634e38230e000000000000000000000003172a3d4e5e6b737470665949372512000000000000000000000000000000000000000000000000000000000012273b4f62768a97836f5b4734200c2034475965676767676767676767676767676353412d190400081b2e4051616f7b858b8f8f8d878074687c8d8f8d898677624c37220d001f344a5f748285899a9a89868380705b4630384e637882848790a4a6928784806b56402b160000000000000000001c32475c707c828584827c72655544311e0a000000000000001f344a5f748284868da0a28d8687878889898b8b8c8c8d999c87725d48331e09001d32465b6f849493806a56412d1904000000000000000000000000162b3f54687c91a59885746b68696e77828e90a097826b625d4f3d2a16001d32475b6d75787a7b7b797875716b655d544a3f33251708000000000d22374c62778da08b745f4a352f445a6f8499937d68533e291300000000001d32475c72889d9f89735e493f3733475c70879ba18c76604c37210c0000001e33485d72889ca5907965503b261121364b60768ba09f8a745f4b35200b0000001024384c6075899e8b76624e495d72869a8e7965513d281400000000182c4054677a8c9c9c8b7b6e655e5a5a6f869b9f89735e48331e09000000000011263b50667b91a797826b56402b1601000000000000000000000000182d42576c83988f78634e39240f0000000000000000000000091d32465a6c7c888b84776754412d1904000000000000000000000000000000000000000000000000000000000c1f33475a6e82968b7763503c2815273b4f63777c7c7c7c7c7c7c7c7c7c7c7c7c705c47321d08001125384b5d6f808d98a09a9391929286798095a18f8b8b77624c37220d001d314558676c6f80939a86716d6b6555422d35495c686c6f7b90a49f8b776e6b61503d28140000000000000000001d32475c718797999997908473604d392510000000000000001d314558676b6e73899fa18c767072727373747576777d91a08b75604b36210d00182c40556a7d939985705c47331e0a000000000000000000000000192e43586d8397a5907c685753545a646f7c91a797826b564a4031200e001e33485e73898e909191908e8b86807970675c5043352617070000000e23384e63788da18c76604b3630455a6f869b947d68533f291400000000001d32475c72889d9f8973665c534b484c6074899e9e89745f4a34200a0000001f344a5f74899fa38d78634e38230e1f344a5f74899fa28d77624d38230e000000091d31465a6e8397917c68545064788d9b87725e4a36220e000000001125384b5d6e7d8b969a8c8279736f6c6f869b9f89735e48331e09000000000011263b50667b91a797826b56402b1601000000000000000000000000192e43586e84999079644f3a250f00000000000000000000000c21364b60758a9b9f9585705c47321d080000000000000000000000000000000000000000000000000000000004172b3e5266798d93806b5844301d2e42576a7d93939393939393939393939389745f4b36210c00182c4054677a8d9ea394877d7b7c838c8b80959f89747471604b36210c0016293b49535764778ca08d7763565247372c2c3e4c54596e8397ab9884705c56504333210d0000000000000000001b30465b70878b8b8f98a2907c68533e29140000000000000016293b4953565e73899fa18c76605c5c5e5e5f60606275899c8e78644f3a25100012263b4f64788d9f8b76614d3824100000000000000000000000001c31465b70869ba18c77624d3e404752667b91a797826b56402e221303001e33485e7389898888898b8f959a948d84796e6153443525130200000f24394e63788fa28d77624c3730465b70879c95806a543f2a1500000000001d32475c72889da29084796f66605e606a7c8fa39a86705c47321d080000001f344a5f748ba0a38d77624c37220d1e33485e73899fa48f78634e38230e00000002172b3f53687c9097836f5b566a809395806c58432f1b0700000000081b2d3f505f6d79838c93958d88848282869b9f89735e48331e09000000000011263b50667b91a797826b56402b16060500000000000000000000001a2f445a6f869a917b66503b261100000000000000000000000d22374c62778ca1b19f89735e48331e0900000000000000000000000000000000000000000000000000000000000f23374a5e7286998873604c38252f44596e7d8a968484868788898b8c8d998d78634e392510001c31465b6f8498aa9986756a66686f7984909c9f89735f5e5343301c08000c1d2c373f485d718599937d6a55424242424242424b6074899da5917c6855413c332515040000000000000000001b30465b707975767a889b96826b56402b16010000000000000c1d2c373e485e73899fa18c76604b4748494a4b4b596c8094927c67523d2814000c21354a5e72879c907b67533e2a150100000000000000000000001d32475c72889da08b745f4a352b3b50667b91a797826b56402b160400001f34495e737773727273767a8289939f978c8071625342311f0d000010253a4f647990a38d77624d3832475c72889c96826b56402b1601000000001d32475c72889d9b888d8c837a7573757b8999a794806b57422d19040000001f344a5f748ba0a18c76604b36210c1e33485e73899fa59079644f3a250f000000001024394d61758a9e8a75615d71869a8e7965513d2914000000000000102132414f5c6670778085898d90929395a29f89735e48331e09000000000211263b50667b91a797826b56402b1b1b1a140b0000000000000000001b30465b70869b917b66513c27120000000000000000050d11122034495d7284949c9786715d48331e12110c040000000000000000000000000000000000000000000000000000071b2e4256697d918f7b6854402d2b3f52616c788590857870727375767b8f917c67523d2814001f34495e73899ea6917c695851545c6672869b9f89735e49423525140100000e1a242e41556a7d929985705c5757575757575757667a8fa39e8a75614e392820150700000000000000000000182c4053616560606b809597826b56402b1605000000000000000e1a2433485e73899fa18c76604b36333434363d5064778c93806b56412c1700061b2f44586d829696826d5844301b0700000000000000000000001e33485e73899e9f89735e4833263b50667b91a797826b56402b160100001b30435562635e5c5c5e61666d76828e9d9d908270604e3c2a17030011263b50667b91a48f78634e3833485d72889d97826b57412c1702000000001d32475c72889d9c877c88928f8b898b8f99a69a897764503c2814000000001f344a5f74899fa28d77624c37220d1f34495e73899fa48f78634e38230e00000000091e32465b6f8397907c6863778c9c88735f4a36220e000000000000031323313e4a535c646a707477797c7d869b9f89735e48331e090000000313202a3b50667b91a797826b56403030302f281d0f00000000000000011c31465b70879c937c67523c2712000000000000000c18212627272e42556675828784786856422e27272620170a000000000000000000000000000000000000000000000000000013263a4e6175899784705c48352234434f5a6773828f8a7d70626061728595806b56412c18001f344a5f748ba0a38d78634e3c40495a6f869b9f89735e4833251708000000000812263b4e63778b9f8b776c6c6c6c6c6c6c6c6c6d8296aa97836f5b46321e0d030000000000000000000000112335444e504b53687d94927d69543f2a1e1a140a000000000000081e33485e73899fa18c76604b362f3a3f3f3f485c6f8380786a56412c17000015293e52677b909c88735e4a36210d00000000000000000000001e33485e73899f9f89735e4833263b50667b91a797826b56402b16010000142637454e4e494747494c5159636f7d8e9f9f8f7d6c5946331f0b0012273c52677c91a59079644f3a34495e73899f98836c57422c1702000000001d32475c72889d9c8872758089909699999792897b6b5a4734210d000000001d32475c72879ca38d78634e38230e20364b60758ba0a28d77624d38230e0000000003172b4054687c9197836e6a7d9395826c5844301c07000000000000031526353f44424850565b5f6365676f869b9f89735e48331e090000000f21313d4550667b91a797826b5646464646433a2d1d0b000000000a12171d32475c72889d947d68533e2917150f060000000a1b2a353b3c3c3c3c4857646d706f675a4a3c3c3c3c3b34281908000000000000000000000000000000030c1215151515151515151e3246596d82958c7764503d2925313d495663707d8d8e80726355697c86826f5a442f1a001f344a5f748a9fa38d77634e3c32445a6f869b9f89735e48331e090000000000000b1f33485c708498928383838383838383838383889ca4907b68533f2b17030000000000000000000005111d2730393f4549566a80958a77634f3e38322e271c0e0000000000001e33485e73899fa18c76604b363f4c545454515366706a645c4d3b271300000f24384c61758a9f8d7864503b271200000000000000000000001e33485e73899f9f89735e4833263b50667b91a797826b56402b1601000009192733393934323234373e4652606f8293a69b8976624e3a26120013283d52677c93a5907965503b344a5f748ba099846e58432e1903000000001d32475c72889d9d8872636c757b828484837d766b5d4e3c2b1805000000001a2f44596e8398a5907965503b261123384d62778da29f8b75604b36210c00000000001125394d61758a9d89757085998e7965513d2915010000000000000c1f3244525a564c4341464a4d505b70869b9f89735e48331e09000000192c3e4f595b667b91a797826b5b5b5b5b5b574b3a2714000000101d262c2c33485d72889d947d68533e2c2c2a2317090000152839475052525252525252595b5a5452525252525250463725120000000000000000000000000000061420272a2a2a2a2a2a2a2a2a2a3e5165798d94806c5845311d1f2b384552606e7d8d908272635f70716d6554412d18001d32475c708599a6917d6a5a4e46445a6f869b9f89735e48331e0900000000000004192c4055697c919f98959595959595959595969aa69d8975604c382410000000000000000000000816232f3a444c53595e61718692806d5d58534c47433a2c1b0900000000001e33485e73899fa18c76604b374a5d696a6a6454565b5650493e2f1e0b0000091e32475b708499937d6a55412d1804000000000000000000001e33485e73899f9f89735e4833263b50667b91a797826b56402b16010000000a161f2424201d1d1f232a34425263768a9fa5927d6955402b170014293e53687d94a7917b66503b364b60768ca099846f5a442f1a05000000001d32475c72889d9f89735e5960676b6e6e6c6963594d3f301f0d0000000000172b4054697d92a6937d68543f2b16273c51667a90a59b87715d48331e0900000000000a1e32465b6f84988f7b778c9c88735f4b36220e0000000000000215283b4f626f695f57504a48484c5f73889d9c88725d48331e080000001e33485c6d70707b91a797827070707070706957422e1904000d1e2e3a414242465b70869b927c67524242423e35271705001c3144576467676767676767676767676767676767676355422e1a00000000000000000000000000031424323b3f3f3f3f3f3f3f3f3f3f3f495d7085988874604d3925121a273442505f6e7d8e918272625d5c58524737251200192d4155697c8f9e9a88786b615a565a6f869b9f89735e48331e090000000000000011263a4e62768a9e8b8080808080808080808297aa96826d5945311d0900000000000000000008172634404c5660686e73767a8d857876726d67615c574a39261300000000001e33485e73899fa18c76604b3b50657a80806f5a4446423b352d201101000003182c41556a7d939985705b47321e09000000000000000000001e33485e73899f9f89735e4833263b50667b91a797826b56402b160100000000030b0f0f0b0706090e172334475b6f8499ad98836e59442f1a00152a3f546a8095a8937c67523c374c61768ca19b866f5a442f1a05000000041d32475c72889d9f89735e484c5256585858544f473c2f211201000000000011263a4f63778b9f97836d5945321f2e42566a8094a996826d58432f1a05000000000003182c4054687c9196827d9295826d5844301c070000000000000a1e3144576a7d7c736b645f5d5d60697a8ea299846f5a45301b060000001f344a5f7487878793a798878787878787866f5a442f1a0500172a3c4c55575756596e849990796556575757524535220e001f344a5f747c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c715c47321c000000000000000000000000000c2032424f54545454545454545454545455687c90907c6855412d1a0917243241505f6f80909080705f4e433e362919080012263a4d5f70808f9a97897d756f6b686f869b9f89735e48331e09000000000000000a1e33475b6f8397907c6a6a6a6a6a6a6a72879ba38f7a66523e2a160200000000000000000717263544515e69737c83888c8f988f8d8b87827b75716856422d1803000000001e33485e73899fa18c76604f5054697d93866f5a44302d27211a0f020000000012263b4f64788d9f8a75614d38240f000000000000000000001e33485e73899f9f89735e4833263b50667b91a797826b56402b160100000000000000000b121615100a182c42576c8297ac9b87705b46301b00162b40566b8095a8937d68533e384c62778da39c87705b46301b0600000b172032475c72889d9f89735e48383e41434343403b332a1f11030000000000000c2034485b6f82959d8975614e3d34384a5d71869aa28f7a66523e2a15000000000000001125394e62768a9c8885998f7a66523e2915010000000000000e23384d6174888f878078747272747b8898a693806a56412c18030000001f344a5f748a8f96a1b0a2999999999999866f5a442f1a05001d32465a696c6c6b6b6c82978f786b6b6c6c6c63513e2914001f344a5f748b93939393939393939393939393939388725c47321d0000000000000000000000000012273b4f616a6a6a6a6a6a6a6a6a6a6a6a6a6274889885705d4936220e091423324151617283958e7d6b5a473423190b00000a1d30415261707c879097918a84807d7c869b9f89735e48331e090000000000000004172b4054687c9097836e595454545465798ea29c88735f4b37230f0000000000000000021425354453626f7b869097958d898787888b9196908a86705b46311c07000000001e33485e73899fa18c76646465666c8297866f5a442f1a130d060000000000000c21354a5e72879c907b67533e2a15010000000000000000001e33485e73899f9f89735e4833263b50667b91a797826b56402b160100000000000002111e262b2a251f212e43586c8398ad9b87705b46301b00172c41566b8297a9947d68533e384e63788fa49c87725c47321d0700091a28343a475c72889d9f89735e4833292c2e2e2d2b2620170d010000000000000004182c3f5265778a9b917d6b5b4e494b5667798da09986725f4b37230f000000000000000a1e33475b6f8498908e9c88735f4b37230f000000000000000f243a4f6477848e98938d8988888a8f98a69a8976634f3b2713000000001e33485c6e757a8494a697858484848484846f5a442f1a05001f344a5f74838382828080958c8082828283826b56402b16001f344a5f748b90909090909090909090909090909088725c47321d00000000000000000000000000152a3f546a808080808080808080808080806c6c80948d7865513e2a181e1f1c2333435465778a9b897764513e2a160200000012243443525f6a737b83888d9194939392a09f89735e48331e0900000000000000001125394d6175899d8974604b3f43576b8095a995826c5844301c0800000000000000000d203142536271808d999a8d827973707072767d88959d88735e49341f0a000000001e33485e73899fa18c797979797b7b869a866f5a442f1a050000000000000000061b2f44586d829696826d58442f1b070000000000000000031e33485e73899f9f89735e4833263b50667b91a797826b56402b160100000000000010202f3a403f3934363c4b5d71869bab97836e59442f1a00172c42576c8398ab95806a543f3a4f64798fa49d88725c47321d0800142738464f535c72889d9f89735e48331e1719191816110c0400000000000000000000102336485a6c7d8e9b8a796b625e60677485979e8d7b695643301c080000000000000004182c4055697d92a2a195826d5844301c08000000000000000c2135485966717a848c93999d9d9f9d9a93897b6b594734200c00000000192d3f505b6066768a9e97826e6e6e6e6e6e6756422d1803001f344a5f748b98979795959e999596979797826b56402b16001f34495e737979797979797979797979797979797979705c47321c00000000000000000000000000152a3f546a809193959595959595959492836c64778c95826d5946322b333430272536485a6d829594826d5945311c0800000006162534414d5760686e73787b7d8282869b9f89735e48331e090000000000000000091e32465a6e82968f7a66523e4a5e72879ba28e7965513d2915010000000000000005182b3d4f607082909e9a8b7b6f655e5c5b5d616a788ca08c77624d38230e000000001e33485e73899fa593909090909191929b866f5a442f1a0500000000000000000015293e52677b909c88725e4a35210c0000000000000004132133485e73899f9f89735e48332b3b50667b91a797826b56402b16010000000000061a2d3e4d55534e484b505a687a8da1a18f7b68543f2b1600192e43586e8499ab96826b56403b50657990a59f89735e48331e09001c30445663686a72889d9f89735e48331e09000000000000000000000000000000000006192b3d4e5f6f7d8c98897d7673757a85939c8f806f5d4c39261300000000000000000011263a4e62768b9fa08f7a66523e2915010000000000000005182b3b48545e6770777d84888989888680776b5d4d3c2a1704000000001022323e474c5a6e839797826b5858585858554939261300001f344a5f748b8d8d8c8c8b98908b8c8d8d8f826b56402b16001b3043556264646464646464646464646464646464646153412d1900000000000000000000000000142a3f5469797c7d8082869b9483827d7c7a6b5c7084978975614e3a3e474a44382b2b3e52667b909d89745f4b36210c000000011323323c40444c535a5f6366696b6f869b9f89735e48331e09000000000000000002162b3f53677b8f95826d58445065798da29b87725e4a36220e00000000000000000e2134475a6c7d8f9f9e8d7b6c5e524a4746484e5c7084978f7965503b2611000000001e33485e73899fa28e8788888888898b9b866f5a442f1a050000000000000000000f24384c61758a9f8d78644f3b2612000000000000001022323e485e73899f9f89735e48333e4650667b91a797826b56402b160100000000000d21364a5c6a68625e5f646c778798a19383715f4c382511001a2f445a6f8499ac97826b56413b50667b91a79f8a745f4a341f0a001f344a5f737c8083899e9f89735e48331e090000000000000000000000000000000000000d1f304151606e7a8690928c898b8f98928a7d706151402e1c0a0000000000000000000b1f33475b70848b8b8874604b37230f0000000000000000000d1d2b37414b545d646a6f72747473706b645a4e3f2f1e0d00000000000413212b323f53687c9195806b564343434341382b1b0900001f34495e72787777767682968d7776777778786a55402b1600142637454e4f4f4f4f4f4f525a5c5a544f4f4f4f4f4f4d443524110000000000000000000000000011263a4c5d6567686a6f869b947d6b6967655e54677b8f917d6956424e5b5f56493d35394e63788fa38e78634e38230e0000000a1e30414f56524940454a4e51545a6f869b9f89735e48331e090000000000000000000f24384c6074889c88735f4a576b8094a894806b57432f1b070000000000000003162a3e5164778a9ca693826f5e4e40363131334054677b8f937d68543f2a15000000001e33485e73899fa18c7672727272738498866f5a442f1a05000000000000000000091e32475b708599937d6a55412c1804000000000000192d3f505b6173899f9f89735e483e4f5a60667b91a797826b56402b1601000000000014283c5065797c77737478808996988f8374655442301c09001b30455a6f869ba098836c57423c52677c93a0a08b745f4a35200b001f344a5f748b9497999b9e89735e48331e090000000000000000000000000000000000000112233242505d69737c8388898988847d766c6052433322110000000000000000000004182c415568747474746c5945311c08000000000000000000000d19242e3841484f555a5d5f5f5e5b5650473c30211101000000000000030f1825394e62778c95806a543f2e2e2e2c251b0d0000001b2f435461636362616d83988f7964626263635c4d3a26120009192733393a3a3a3a4756646e726f675b4c3b3a3a3a3831261706000000000000000000000000000a1d2f3f4a5052535a6f869b947d685452504b4c6073879986715d4c5c6c73665a504a4954677b90a48f78634e38230e00000013263a4d5f6b655c534c464444495d72889c9d88725d48331e09000000000000000000091c3145596d82958e7965515d72869aa18d7864503c28140000000000000000091e32465a6d8294a79d8a7663514030221c1c25384c5f7384827d6b56402b16000000001e33485e73899fa18c76605c5c5d6b8095866f5a442f1a0c02000000000000000004182d41556a7d939984705b47321e090000000000001e33485c6e757b899f9f89735e48475b6d74797d91a797826b56402b16010000000000192e43576b80918c898a8d8f8e8a857c7164564736251200001b30465b70878b8b8b846e58433e53687d8b8b8b8b76604b36210b001f344a5f737c7d8284878983735e48331e0900000000000000000000000000000000000000051423323f4b5660686e727373726f6a635a4f423425150500000000000000000000001226394b595f5f5f5f5b4e3d2a1601000000000000000000000007121b252d353b4145484a4a4846423c342a1f12030000000000000000000a1f34485d71868b806a543f2a191917120900000000132536444c4e4d4c5a6f8599907b66504c4e4e4a3e2f1e0b00000a161f2425252a3e516474828784796a5946322525231e140800000000000000000000000000000011212d363b3c445a6f869b947d68533e3b3744576b80938d7966596a7a85776d645f5e647184979f8b76614c37220d0000091c304356697c786f67605b59595c67798da19a86705b46311c0600000000000000000001162a3e52667a8e95806b5764788da19a86715d4935210d00000000000000001024384d6175899daa96826d5a4634221207091c304357686f6c6960503c2813000000001e33485e73899fa18c76604b4752677c8b866f5a442f28201405000000000000000012273b5064788d9f8a75614c38240f0000000000001f344a5f748a9096a19f89735e48485e73898e939ba397826b56402b160100000000001b30465b7080858b9399867d787570695f53473829180700001b3045596d74747474746a57423d52667474747474705e4a35200b001c3044566367696c6e707372665644301b0600000000000000000000000000000000000000000514222e3a444d54595d5e5e5d5a554f473d312416070000000000000000000000000a1c2d3b464a4a4a4a473e301f0d000000000000000000000000000008111921272c3033343433312d2821180d0100000000000000000000051a2e43576a74747467533e2914000000000000000008182631383838475c70879c937c67523d3838362d201100000000030b0f0f1a2f44596d82939c978875614d38230f0e0a020000000000000000000000000000000003101b22262f445a6f869b947d68533e29283c5063778b95826d5c7183928a80787473778290a19684705c48331f0a00000e23384c5f72868c837b74706e6e70778596a894806b57422d1804000000000000000000000f23374b5f73889b87725d6a8093a7927d6a56422e1a06000000000000000014293e53677b90a4a48f7a66523e2a1705000014273a4a565a57544e4232200d000000001e33485e73899fa18c76604b3a4e627374746b5843403c32231301000000000000000c21354a5e72889c907b67523e29150000000000001f344a5f7486888a8c8e89735e48485e738688898b8d8f826b56402b16010000000000192d4154646a707780899492887c6f61534436291a0b000000162a3d4f5c5f5f5f5f5f5a4d3b3648585f5f5f5f5f5d52422f1b0700142738464f525457595c5e5e54483927140100000000000000000000000000000000000000000004101c2730393f444849494845413b332a20140600000000000000000000000000000f1d2a3234343434332b20120100000000000000000000000000000000050c12181b1e1f1f1e1c18130d050000000000000000000000000014283b4d5a5f5f5f584937241000000000000000000009151e232332475c72889d947d68533e2923211a100200000000000000001a2f445a6f869bafa59079644f3a250f000000000000000000000000000000000000000000070d1a2f445a6f869b947d68533e292034475b6f83968a76626473828d948d89898c949f9689786654402d190400000f253a4f64798792978f89868484868b95a39d8b7865513d28140000000000000000000000081c3044586c80958d786471869a9f8b77634f3b2713000000000000000000192d42576c8296ab9f8a75604c38230f0000000a1c2c394244423f3b32241503000000001e33485e73899fa18c76604b3645555e5f5f5b5656564f41301e0a00000000000000071b2f44586d829696826c58432f1b0600000000001e33475b6b7072747678776c5a46465a6b7072747677797266533f2a150000000000001225374650565b636c768290998d8071625241301e0b0000000e20313e484a4a4a4a4a473d2f2b3a454a4a4a4a4a49413424120000091a28343a3d3f424447494942362a1b0a0000000000000000000000000000000000000000000000000a141d252b2f33343433302c2720170d02000000000000000000000000000000000c171d1f1f1f1f1e180f0200000000000000000000000000000000000000000000000000000000000000000000000000000000000000000b1e2f3d474a4a4a453b2c1a080000000000000000000002090d1d32475c72889d947d68533e29130c0600000000000000000000192e43586c80919e9e8d78634e39240f00000000000000000000000000000000000000000000001a2f445a6f869b947d68533e29182c3f53677a8e927d6a56636f7a858c919494918c83786a5a493724110000000d22364a5c69747d8890979b99999b9f9e978d7d6d5c4935210e00000000000000000000000015293d5165798d93806a778ca09884705c4834200c0000000000000000001c31465b70869aaf9b86705c47321d09000000000e1c272d2f2d2a261f1406000000000b1e33485e73899fa18c76604b363743494a54646b6b6b5f4d3925100000000000000000152a3e53677b909b87725e4935210c0000000000182b3e4e585b5d5f6163645a5156514d585b5d5f606264605648372410000000000000081928343c41485059647180909e8f80705f4d3b28150100000213212c333434343434322b1f1c28313434343434342e2416060000000b172025282a2c2f3234342f25190c0000000000000000000000000000000000000000000000000000010911161b1e1f1f1e1b18120c04000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000070e1212121212121212121212100b0200000000000000000000000000111f2b3234343431291d0e00000000000000000000000000001d32475c72888b8b7d68533e291300000000000000000000000015293d506373828989806f5d4935210c0000000000000000000000000000000000000000000a101a2f445a6f869b947d68533e291324374b5f72869a86725f525d6770777b7d7d7b7770665a4c3c2b1a08000000071a2d3e4c57616b747b83888c8d8d8c89837a6f60503e2c19060000000000000000000000000e22364a5e72869a86707d93a5917d6955412d19050000000000000000001e33485e73889dad98836d58432e190400000000000a13191a1815120b0200000000101d2733485e73899fa18c76604b36323234475b7082827c67523c271200000000000000000f24384d61758a9f8d78644f3b261200000000000f20303c4346484a4c4e4f56636b645a4e46484a4b4d4f4c43382a19070000000000000b131721282d343c4753617183959e8f7c6a5744301c08000000030f191e1f1f1f1f1f1e180e0b151c1f1f1f1f1f1f1a12060000000000040c101315171a1c1f1f1b130800000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001070b0d0e0f0e0c08030000000000000000000000000000000d19222727272727272727272727251f1407000000000000000000000000010e181e1f1f1f1d160c0000000000000000000000000000001c31465b6e7474747466523d28130000000000000000000000000e21334555636e74746d6152402d1a060000000000000000000000000000000000000004121d25272f445a6f869b947d68533e29131b2f43566a7d928e7a66534b545d6367686867635c54493c2e1e0e00000000000f202e3a454e5860686e7376787877746f675d514232210f00000000000000000000000000071b2f43576b80938b7685999e8a76624e3a2611000000000000000000001f344a5f748b9fab97826b56412c170100000000000000000000000000000000000d1e2e3a42485e73899fa18c76604b464747484d61768a917b66513c27110000000000000000091e32475b708599937d6955402c18030000000002121f292e313335374457667382776b5f52453736383a3830261a0c000000000001101d272c2c271d202a36435466788da19a8873604b37230e00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000004080b0b0d0b09060100000000000000000000000000000000000000060e161b2023232423211d1811090000000000000000000000000c1d2b363c3c3c3c3c3c3c3c3c3c3c3a32251605000000000000000000000000000000000000000000000000000000000000000000000000172b3e505c5f5f5f5f584836230e0000000000000000000000000416273745515b5f5f5a51433423110000000000000000000000000000000000000001132330393c3a445a6f869b947d68533e291314273b4e62768a96836f5b4741484e525353524e4840372b1e10000000000000081b2d3d4a56626356595e616363625f5c645e5246382715020000000000000000000000000014283c5064788d907b8a9f97836f5b47331e0b000000000000000000001f344a5f748ba0ab95806a543f2a15000000000000000000000000000000000000162a3c4c565a5e73899fa18c76605b5b5c5c5d5e677c908f79644f3a2510000000000000000004182d41556a7d9399846f5b46321d090000000000010d15191c1e20344a5f748492897d70635547392b25231d13090000000000000e1f2e3a41413a2f241c2636495d72879ca38f7a65513c27120000000000080e111111111111111111110e090f111111111111111111110e07000000000000000000000000000006090c0d0e0d0b07020000000000000000000000000000000000040c13191d202122211e1a150f07000000000000000000000000000000030f19222a303438383a3836322c251c130800000000000000000004172a3b4951525252525252525252524e4334220f0000000000000000000000070c1013141413110e090300000000000000000000000000000f21323f484a4a4a4a453a2b190700000000000000000000000000091927343e464a4a463e33251605000000000000000000000000000000000000000b1e30414d524f4a5a6f869b947d68533e29130b1f33465a6d82958a76634f3b34393c3e3e3c39342d241a0e000000000000000f23374a5b6874746556494c4e4e4c5c6b7970645644311d08000000000000000000000000000d2135495d7186968290a4907c6854402b1804000000000000000000001f344a5f748ba0ab95806a543f2a150000000000000004060606050200000000001c3146596a6f7276899fa18c76707070727272737382978d77624d38230e00000000000000000012273b5064788d9e8a75604c38230f00000000000000000003091e32475a6b7c8d9b8e82736557493a2b1b0b0100000000000007192c3d4c56564c4138312d30455a6f869ba8937d68533e291300000003101b2326262626262626262626231d2426262626262626262626221a0f01000000000000000000050d141a1e21222322201c17110a02000000000000000000000000010c1720272d3235363736332f29221a10060000000000000000000000000614212c363e44494c4e4f4e4b4640382f251a0d00000000000000000a1f334759656767676767676767676761513e2a160100000000000000010b141b212528292a2826231d1710080000000000000000000000000313222d333434343431281c0d0000000000000000000000000000000a17222b323434312b211507000000000000000000000000000000000000000012273b4e5f67645f5a6f869b947d68533e291303172b3e5266798d93806b57443024272929272420191107000000000000000012273c5166798684746556473d4c5b6a7a8a8274604b36200b00000000000000000000000000061a2e42566a7d9292999d8975604d39241100000000000000000000001f344a5f74899fab95806a55402b1600000000000812191b1b1b1b160e020000001e33485e7385888b91a2a28d8686878788888889898b9c8b76604b36210c0000000000000000000c21354a5e72889c8f7b66523e29150000000000000000000004182b3d4d5e6f80909f91847567584939291806000000000000122437495b6a6a5e544b4542434c5e73889da9947d68533e291300000011212e373b3b3b3b3b3b3b3b3b3b3730383b3b3b3b3b3b3b3b3b3b362c1f0f00000000000000020e1821292f333637383735312b251e150b0100000000000000000004121e2a333b42474a4b4c4b48443e362d23170b00000000000000000000071624323e4951595e62636463605b544c42372b1e0f000000000000000d22374c61767c7c7c7c7c7c7c7c7c7c6d58432e190300000000000007131e272f353a3d3e3f3e3b37322b241b110600000000000000000000000410191e1f1f1f1f1c150b0000000000000000000000000000000000050f171d1f1f1c170e04000000000000000000000000000000000000000000182c41556a7c78746f6f869b947d68533e2913000f23364a5d71869987735f4c3824121313120f0b050000000000000000000011263b4f63738593847465574b5b6a798992826f5d4934200a00000000000000000000000007121c273b4f63778b939393826d5a46311d1103000000000000000000001e33485d72879cac97826c57422d18030000000b1a252d303030302a20130300001e33485e73898f8f8f8f8f8f8f8f8f8f8f8f8f8f8f8f8f89735e49341f0a000000000000000000071b2f44586d829695826c58432f1b06000000000000000000000e1f2f405161728393a19485766757473624110000000000001a2e415466787c70675f5a57585e6a7b8ea2a5917b67523c27120000091d2f3f4b505050505050505050504a414d505050505050505050504a3d2c1a0700000000000513202b343d43484b4c4d4c4a45403931281e130600000000000000051423303c464f565c5f6061605d5852494035291c0d00000000000000000415253442505b656d7377787978746f685f54493c2d1e0f0000000000000d22374c62778d9393939393939393846e58432e190300000000000a1825303a434a4f52535453504c463f372e24180c0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001d31465b6f848e89847d869b947d68533e291300071b2e4256697d918f7b6754402c19050000000000000000000000000000000c2033455667788a938475665a6979899786746352402e1a0600000000000000000000000a19242f3941485c707c7c7c7c7a6753443b2f2112010000000000000000001a2f44596e8498ad99846f5a45301b0600000618293742464646453d31210f00001e33485d7178787878787878787878787878787878787878705c47321d0800000000000000000000152a3e53677b909b87725d4935200c0000000000000000000001122233435464758697a39586756453402c170200000000001f34495d71838e847a746f6c6d727b8999ab9c8a76624d39240f00001025394c5d666666666666666666655c4f5f666666666666666666655b4a36220e00000000051423313d4750585d606262625f5a544d443b30241708000000000003132332414e59636a7074767676726d655c5247392b1c0d000000000000001022334352616d7882888c8f8f8d8a847b7266594b3c2d1c0b00000000000d22374c62778083858fa39a8783827d6d58432e1903000000000a192836434d575e646768696865605b534a41362a1c0d0000000000000000000000000000000000000000000000080d0f0d07000000000000030b0f0f0b04000000000000000000000000000000000000000000000000000000001f344a5f74848a9198928f9e947d68533e2913000013263a4e61758997836f5c4834210d00000000000000000000000000000004162738495a6c7d8f948575697888988b79685645342311000000000000000000000005172836414c555853636767676766625f574c3f301f0e000000000000000000172c4055697d93a79d88735e4935210d00000f223547555b5b5b594f3e2c1904001a2e415360636363636365646363636363636363656463636052402d1904000000000000000000001024384d61768a9f8d78634f3a261100000000000000000000000415263647576878899aa093836f5a442f1a0500000000001f34495d70808b968f88848383878e99a79c8f806d5a46331e0a000013283e53687a7b7b7b7b7b7b7b7b7a66576c7b7b7b7b7b7b7b7b7b7965503b261100000003142332414e5a646c7276777777736f6860574e4235261705000000000f203141515f6b767d86898c8c8b8782796f6457493a2b1b0a0000000000091c2e40516170808b9599908a88898f988f8477695a4b3a291705000000000a1f33475a676a6c778da399846e6b6962523f2b1601000000071828374654606a72787c7d7d7d79756f675d53473a2b1b09000000000000000000000000000000000000000008121b2225221b10030000000a161f24241f170d0300000000000000000000000000000000000000000000000000001d324659686f767d858e98a3947d68533e291300000a1e3245596d82958b7764503c291501000000000000000000000000000000091b2c3d4e5f70829394857888978f7d6d5b4a3928160500000000000000000000000e223546545e696d604f525e6a737777736a5d4e3d2b1906000000000000000012263b4f63778c9fa18d7864503c2815030014293e52657070706d5c48331e0900122435434c4e4e4e5f6b7876695d4f4e4e515e6b78766a5d4c4334231100000000000000000000000a1e33475b708599927d6955402c17030000000000000000000000081829394a5a6b7c8d9083746655412d180300000000001a2e4152616e79838c939998989b9e9a938a8070614f3d2a1703000013293e53687d91919191919191917c67576c8391919191919191917b66503b26110000000f213242515f6c7780878b8d8d8c89837c746a5f534434220f000000081a2c3e4f5f6f7c89929a928d8b8c91958c827567584939271604000000001326394b5d6e808f9d96887c7572747a86949588786958473522100000000004182b3c4a525562778da399846e5854504434220f00000001132536465564717d868d929494938f8a837a7065584938251200000000000000000000000000000000000007111b252e373a362d21110000091927333939332a20160d02000000000000000000000000000000000000000000000000172a3b4a545b6269727a8691927d68533e2913000002162a3d5165788c93806c5844311d09000000000000000000000000000000000e1f30415364758798948a97948371604f3e2c1b0a00000000000000000000000013283d5164707b7c695662707c888d8d887b6b5a4836230f00000000000000000c2034485c708396a793806b58453221120b182d42576b828787745f4a35200b000717263137383f54697d8a887a6d605455626f7c89887b68533e281606000000000000000000000004182d41556a7d9398846f5b46321d090000000000000000000000000b1b2c3d4d5e6e80807264564838261200000000000012243443505c666f778085888b8b898680776d61524332200e00000013293e53687d83868fa39c8985837c67576c80838793a79f8d85837b66503b26110000081b2d3e4f606f7d8a949b9e979493949790887d7062523f2b160100001124374a5c6d7d8d9b988a7d7774777d889693867667564533210e000000071b2f4255687a8d9e9b89786a605d5f6875869897877564523f2c1906000000000d1e2c373e4c62778da399846e58433b332617050000000b1e304253647383909aa298918d8c8d91968d83766755412c170200000000000000000000000000000007111a242e38414b4f4a3f2f1d0a00142637454e4e463d33291f150c02000000000000000000000000000000000000000000000c1d2d3940464e555e6873807c7867523d28130000000e2235495d7085988874604d39251000000000000000000000000000000000011324354657687a8b9c9f99887665544331200f00000000000000000000000000142a3f54697d8e86736b73808e9a9392998a7765523f2b17030000000000000005192c405366798c9e9b887461503f3025212131465b70859a8c76604b36210c000008141d22283d51637383938c7d71646672808d92837263503c27120000000000000000000000000012273b5064788d9e8a75604c38230f000000000000000000000000000e1f2f405061716f615446392a1a09000000000000061625323e49535c646a7073747473706b645a4f433425140300000011263a4e606a6d778da39b866f6c695f51626b718496a593826f6c695e4c38230e00001124374a5c6d7d8e9ba2958a837d7c808389908f826d58432e190300061a2e415467798b9c9c8b7a6c635f626a77889995857463503e2b180500000e22364a5e728598a5927d6b5a4c484b57687a8da194826f5c4935210d00000000000e1b24374c62778da399846e58432e2016080000000114273a4d60718292a19e90857c7776787c838a93826d58432e18030000000000000000000000000006101a232d37414a545e645d4c3a2611001b30435562635950463c32281e150b010000000000000000000000000000000000000000000f1b252c333a424b56626b68635b4b382410000000061a2d4155687c89887c68533e281300000000000000000000000000000000000617283a4b5c6d7d8b8b8b7b6a5947362514020000000000000000000000000011263a4e6275899285808691988a7d7c8895826e5b46321e0900000000000000001124374a5c6e8091a292806e5d4e41393636384a5f74899e8d77624c37220d00000001090e213445556474849490837576849193847364544534210d000000000000000000000000000d21364a5e73889c8f7a66523d2914000000000000000000000000000111223243535e5d514436281b0c00000000000000000715212c36404850565b5e5f5f5e5b5650473e32251607000000000b1e31424e5562778da39b866f5a554e46586a7c8fa19988756457554d402f1c0800061a2e415467798b9ca39385776e69676a6e747c867b6754402c1702000d2136495d708497a692806d5c4f4a4e596a7c8fa292806d5a4734200c000014283d5165798ea29e8a75614e3c33394b5e71869a9f8c7864503c28140000000000000d22374c62778da399846e58432e190400000000081c3044576a7d8fa0a08f807268636163686e76807865513e2a15010000000000000000000000050f19232d36404a545d67717969543f2a14001f34495e73766c62594e453b31271e140a0000000000000000000000000000000000000000000911171e262e39455056534e493d2d1b08000000001225394d607174727064503c27120000000000000000000000000000000000000b1c2d3e4f60717474746f5d4c3b2a190700000000000000000000000000000b1f3346596b7d8e9995999588796c697a8d8775604b36210b0000000000000000071a2d3f51627384949d8c7b6c5f544d4b4b4d5163788da28f78634e38230e000000000005172737475666758595948788959485746555463627160400000000000000000000000000071b3044586d829695826c57432e1a060000000000000000000000000004152535424948403326180a00000000000000000000030f1a232c353b4146494a4a4946423c342b2014070000000000021323313b4c62778da39b866f5a443f516375889aa08e7c6a5846403a30221100000d2135495d708497a9988675665b54525559606974725f4c382511000013283c5065798da09f8a7663503e353b4c5f72879b9d8a7763503b27130000192d42576b8095a998846f5a46321f2e42576b8095a894806b57422d190400000000000d22374c62778da399846e58432e1903000000000f23374b6073879aa794827061554e4c4e535a636f6e5c4936220e00000000000000000000040e18222b363f49535d66707a85806a543f2a15001f344a5f748980756c61584e443a31271d130a000000000000000000000000000000000000000000030b131c27333d403e3a352c1f0f0000000000091d3143535e5f5d5b544634210d0000000000000000000000000000000000000010213243535e5f5f5f5d51402f1d0c0000000000000000000000000000000316293c4e5f6f7d878b898376695b5d7080746a5b48331f0a0000000000000000001022334555667585929a8b7c716862606062666c7c91a48f79644f3a250f0000000000000a192938485767768796999995867566564737281809000000000000000000000000000000152a3e53677b909b87725d4934200b00000000000000000000000000000817252f34332d2316080000000000000000000000000007101921272d3134343434312d2821180e0300000000000000051422374c62778da399846e58434a5c6e8093a59483705e4c3b2b261e1204000013273c5064788da0a08d7a685748403d40454d5661615443301c090000182d41566b8094a89984705b4733202f43576c8296a793806a56412d1804001c31465b70869aa994806a55402c17283d52677c91a69a86705c47321d0800000000000d22374c62778da399846e58432e19030000000014293e52667a8fa39e8a776453433937393f46515b5b503f2d1a060000000000000000040e17212b353e48525c666f79838d95806a543f2a15001f344a5f748b92897d756a61574d433a30261c1308000000000000000000000000000000000000000000000a1621282b292520190e0100000000000114263542494a48464137281705000000000000000000000000000000000000000314253542494a4a4a484032221100000000000000000000000000000000000c1f3041515f6a7274746f65594b54656b61574c3d2b18040000000000000000000416273848576674828d988f857c777576777a828997a3907b66503b2611000000000000000b1a2a3949586877888b8b87766757483829190a000000000000000000000000000000001024384d61768a8b8b77634e39240f00000000000000000000000000000007121b1f1e19110500000000000000000000000000000000050c13181c1f1f1f1f1c18130d05000000000000000000000d22374c62778da398837061525567798c9e9b89766553412f1d120b01000000172c41566a8094a89985715d4b392b292b3139454d4c443625130000001c31455a6f859aaa95806b56412c18293e52677c92a79a85705b46311c07001e33485e73889da7917c67523d2813253a4f64798fa49f89745f4a35200b00000000000d22374c62778da399846e58432e190300000000192d42576c8296aa97836e5b47352f2f2f2f343f46463e32221000000000000000030d17202a343e47515b656f79838d969b92806a543f2a15001f344a5f748b969b92887d746a60564d43392f251b1208000000000000000000000000000000000000000000040d141614100c0600000000000000000817252f343433312d25190a0000000000000000000000000000000000000000000817252f34343434332d221404000000000000000000000000000000000001122332414d575d5f5f5b53483b4752564f453a2e1f0e0000000000000000000000091a2a394856636f7a858d94918d8b8c8d909597938f8b7b67523c271200000000000000000c1b2b3a4a596974747474685849392a1a0b00000000000000000000000000000000000a1e33475b6e74747473624e39240f0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000d22374c62778da39f8f80706160728597a18f7d6b59473624120000000000001b30455a6f8499a8937d6a55413e3e3e3e3e3e3e3e3e3c3428190800001e33485e73889da7927c67523d2813253a4f64798fa49e89745f4a34200a001f344a5f748ba0a5907965503b261023384e63788fa3a18c76604b36210c00000000000d22374c62778da399846e58432e1903000000001c31465b70869aa7927c685344444444444444444444423a2d1d0b00000000020c162029333d47515a646e77828c969b92887d7567533e2914001e33485d6f79838d969b91877d73695f564c42382e241b110700000000000000000000000000000000000000000000000000000000000000000000000007121b1f1f1e1c191208000000000000000000000000000000000000000000000007121b1f1f1f1f1e19110500000000000000000000000000000000000000051423303b43494a4a4640362a363e403c32281d10010000000000000000000000000c1b2a3845525d677178808488898a898886827d79757163503b26110000000000000000000d1c2c3b4b595f5f5f5f584a3a2b1b0c00000000000000000000000000000000000004182c3f505c5f5f5f5e5545331f0b0000000000000000050a0d0e0f0e0b0700060b0e0e0d0b08040000000000000000000000000004080c0d0e0c0a0500040a0c0d0c0a060300000000000000000d22374c62778da39c8f8f80706b7d90a2968472604e3c2a18060000000000001d32475c72889ca48f79655353535353535353535353504637251200001f344a5f748ba0a5907a65503b261123384e63788fa4a18c76604b36210c001f344a5f748ba0a59079644f3a250f23384d62778da3a38d77624c37220d00000000000d22374c62778da399846e58432e1903000000001e33485d72889da38f78645a5a5a5a5a5a5a5a5a5a5a574b3a281400000009151f28333c46505a636d77828b959b92887d756b61584937241000192d40515d667079838d969a90867c72685f554b41372e241a0f02000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005121e282f343434322c2319232a2b2820150b0000000000000000000000000000000c1a2834404b545d656a6f72737473726f6c6965605d554634200c000000000000000000000e1d2d3b464a4a4a4a453b2c1c0d00000000000000000000000000000000000000000f21323f484a4a4a4943372716030000000000000912191f22232423201b141a20232323201d19140b0100000000000000000811181d212223221f1a13191f2222211f1b18120a0000000000000d22374c62778da39984888f8076899b9c8a78665442301e0d000000000000001e33485e73899fa28d776868686868686868686868686454412d1904001f344a5f748ba0a59079644f3a250f23384d62778da3a38d77624c37220d001f344a5f748ba0a59079644f3a250f24394e63788fa4a18c76614c37220c00000000000d22374c62778da399846e58432e1903000000001f34495e73899fa18c776f6f6f6f6f6f6f6f6f6f6f6f6957432f1a0500081826323b454f59636c76808a949b91887d756b61584e463b2c1a0800112232404a535d667079838c96998f867b72675e544a40372c201000000000000000000000000000000000000000000001070c101213151513120f0b060000000000000000000000000000000000000000000000040e161b1e1e1e1c19130c02000000000000000000000000000000000000000000000000000000000000010b141b1f1f1f1d1810060f1516130c0300000000000000000000000000000000000a17222e38414950565a5d5e5f5e5c5a5754504c48423728170400000000000000000000000f1d2a323434343431291d0e0000000000000000000000000000000000000000000414222d33343434343026190a000000000005111c262d3337383938352f282d3538383835322d281e1102000000000004101b242c3236373837332e272c3337373634302c261d1001000000000d22374c62778da3998478888f8393a2907d6c5a4937251301000000000000001f344a5f748ba0a18c7d7d7d7d7d7d7d7d7d7d7d7d7d705c47311c07001f344a5f748ba0a59079644f3a250f23384e63788fa4a18c76614c37220d001e33485d72889da6917b66503b2611263b50657990a59f8b745f4b35200b00000000061222374c62778da399846e58432e1903000000001f344a5f748a9fa28d86868686868686868686868686725c47321d0800132536444e58626c76808a939a91887d746a61584e453b32291d0e00000514222d37404a535d666f79838c96988f857a70675d534a3e2e1d0a000000000000000000000000000000000000050e151b202527292a2a292724201b140e06000000000000000000000000000000000000000615212b30333333312d271f150a0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005111b252e353c414548484a484745423f3b37332e25190a000000000000000000000000000c171d1f1f1f1f1d160c00000000000000000000000000000000000000000000000410191e1f1f1f1f1b140900000000000615222e3941484c4e4e4d4a433c40494d4e4c4a46423b2f200f000000000514212d3740474b4c4d4c48423b3f484c4c4b4945413a2e1f0f000000000d22374c62778da39a866f798998a0978573614f3d2b190800000000000000001f34495e73899fa79894949494949494949494949489735e49341f0a001e33485e73889da5907b66503b2611263b50657990a5a08b75604b36200b001b30455a6f8499a8937d68533f2a152a3e53687c93a79c87725d48331e090000000515232e374c62778da399846e58432e1903000000001e33485e73899ea6948f8f8f8f8f8f8f8f8f929b9b89745f4a341f0a001b2f4354616b758089939a90877d746a61574e453b32281f160c0000000005111a242d37404a535c666f79838c95988e847a70665c4c3a261200000000000000000000000000000000040f1822293035393c3e3f3f3e3c39342f292119100600000000000000000000000000000000011324333e4548484847423b32271b0e0000000000000000000000000000000000050d11121212121212121212110c040000070e1212121212121212121212100a0100000000000000000000000000000008121a21272c303333343332302d2a26221e1a1208000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005152433404c555c616363625e584f515d6263625f5b574d3e2d19060000041423323f4a545b606262615d564e505c6162605e5a554c3d2c19050000000d22374c62778da39b866f6a798a998c79675748392b1c0d01000000000000001d32475c72879ca38d8080808080808080808ba0a08b745f4a35200b001c31465b708599a8937c68533e2914293e53687c92a79c88725d48331e0900172c41556a7d92a697826d5844301d3044586d8296ab97836d59442f1a06000000112333414a4e62778da399846e58432e1903000000001c32475c70879ba38d7878787878787878788a9fa08b75604b36210b001f34495e727d88929a90877d736a61574e443b32281f150c030000000000000007111a242d364049535c666f78828c95978d83796955402b160000000000000000000000000000000a16212b353d444a4e5253545453514d49433d352d23180c0000000000000000000000000000000a1e3142515a5d5e5e5c564e45392c1d0e0000000000000000000000000000000c182126272727272727272727262016090e1a232727272727272727272727251e130500000000000000000000000000000000060d13181b1e1e1f1e1d1b1815110d09040000000000000000000000000000080e11111111111111111111111111100b020000000000000000000000000000000000000000050e1213100900000000000011223342515d687076787877726b61606f77787774706a5c4935200b000010223242505c676f75777776716a605f6e767776736f695b4834200b0000000d22374c62778da39b866f5b6b7a8a9385756657493a2b1c16120b01000000001b30455a6f8499a38e786a6a6a6a6a6a6a73899fa18c76604b36210b00182d41566a8093a796826c57432f1b2f43576c8296ab97836e5945301b060012263b4f63768a9d9c87735f4c3a31394c5f73879ca3907c68533f2a1601000000192d40515e6368778da399846e58432e1903000000001a2f44586d8397a48f796463636363636373899fa18c76604b36210b001f344a5f748b9b97877d736a60574e443b31281f150c02000000000000000000000007111a232d364049535c656f78828ea096826b56402b1600000000000000000000000000000e1b28343e4851585e6367686a6a6866625d58514940352a1d0f00000000000000000000000000000f24394d606d727373706a6156493b2c1c0b000000000000000000000000000a1b2a353b3c3c3c3c3c3c3c3c3c3b3327181e2c373c3c3c3c3c3c3c3c3c3c3c3930231402000000000000000000000000000000000000000000000000000000000000000000000000000000000000000004111c2326262626262626262626262626251f15080000000000000000000000000000000000000c18222728241c1004000000081b2e4051616f7b858b8f8f8d878074687c8d8f8d898677624c37220d00081b2d3f50606e7a848a8d8d8b867d73687c8b8d8b888477624c37220d0000000d22374c62778da39b866f5a5c6b7a8b9485756758493a2e2b261e1304000000172c40556a7d93a5907b6654545454545e73899fa08b75604b36200b0013273b5064778c9f9b87725e4b392f384a5e72879ba5917c6854402b1602000c2034475a6d8092a28f7c69584b474a57687b8fa29a8873604c392410000000001d32475c6f777c828ea399846e58432e190300000000162a3f53687c91a4927c68534e4e4e4e5e73899f9f8b745f4a35200b001f344a5f748b96998b82776e655c52493f362d231a100700000000000000000000020b151e28313a444d576069737c86909b91826b56402b16000000000000000000000000000f1e2c3945515b646c73787b7d80807d7b77726c655c52473b2d1c0a0000000000000000000000000011263b50667b888989867d7467594a3928170500000000000000000000000015283947505252525252525252524f4536242b3c4a51525252525252525252524d4132200c0000000000000000000000040b101417191a191815110c06000000000000000000000000000000000000000112222f383b3b3b3b3b3b3b3b3b3b3b3b3b393226170600000000000000000000000000000002101d2a353c3d382e22150800001125384b5d6f808d98a09a9391929286798095a18f8b8b77624c37220d001124374a5d6e7d8c979f9b9593939085788095a1908c8c77624c37220d0000000d22374c62778da39b866f5a4d5d6c7b8b94857667584943403b30231200000012263b4f63778b9f95806b57433f3f4c60768ba09d88735e49341f0a000c2135485c6f8294a28e7a685649444855677a8ea29b8975614d392511000004182b3e5063748696998776685f5c5e677586989f8f7c6a5744311d09000000001e33485e738992979da999846e58432e1903000000001025394d6175899c96826d5946383a4e62778ca19c87725d48331e09001e33485d6f79838d97958b82786f655c524940362d231a1107000000000000020c151e28313b444d57606a737d86909992887d7467533f2a150000000000000000000000000d1d2d3c4a57636e7782888d9194959493908c8780786f64594b3a27130000000000000000000000000011263b50667b919f9e9a9286776857463422100000000000000000000000001c314457646767676767676767676353412d34485a66676767676767676767675f4f3c28130000000000000000000710191f25292c2e2f2e2d2a26211a120900000000000000000000000000000000000b1e30404c505050505050505050505050504e4435231100000000000000000000000000000412202e3b4751534b3f3326170600182c4054677a8d9ea394877d7b7c838c8b80959f89747471604b36210c00172b4054677a8c9da49588807c7d858d8a80959f89767672604b36210c0000000d22374c62778da39b866f5a444e5d6c7c8c958676675c58544e41301d0a00000c2034485b6f82949b87736050454653667a8fa498846f5a45301b070005192c3f5264768898988674665d595c65738597a1907d6b5945321e0a0000000e213345576877879595877a7370737985939f9182705f4d3a281501000000001e33485e73898d8f929497846e58432e190c000000000a1e3245596c7d919d897664554c4c57697c91a596826d58442f1a0500192d40515c66707a848e98958c82786f655c534940362d241a0f0200000009151f28313b444e57606a737d879099938980756b61574937241000000000000000000000000a1b2b3b4b596774808b959a938d89878787898c8f948c82766956412d180300000000000000000000000011263b50667b919091959e96867563513f2c190600000000000000000000001f344a5f747c7c7c7c7c7c7c7c7c705b4630384e63777c7c7c7c7c7c7c7c7c7c6b56402b1600000000000000030f1a242c333a3e42434443423f3a352e251c120600000000000000000000000000000011263a4d5e666666666666666666666666666153402c1803000000000000000000000000041322303e4c5964685d5144352311001c31465b6f8498aa9986756a66686f7984909c9f89735f5e5343301c08001c31465a6f8397aa9987766b6769707a85909b9f8973605f5444311d080000000d22374c62778da39b866f5a4450616a6e7c8c958677716d695f4d392510000005182c3f5264768899907d6e615a5a62708396a2907c6854402c17020000102235475869798997938578716e70778392a1938372604e3c291602000000041628394a5a6876848f988f8987888d97978d8272635341301e0b00000000041d32475b6e7477797c8083796a574230281e110300000216293c4f61738494938272676161677587999f8d7966523e2a1501001122323f49535d67717a858f99958c82786f665c534940372d20100000081827323b444e57616a747d87909a948a80766c62584e44392b1a0800000000000000000000041627384959697786929b90877d787472707173767a80868e806d58432e180300000000000000000000000011263b50667b7c797b828b9893826e5c4936231000000000000000000000001f344a5f748b9393939393939387705b4630384e63788f9393939393939393826b56402b160000000000000614202c3740484e5357585a5857544f4941392f24180b0000000000000000000000000000142a3f54697b7b7b7b7b7b7b7b7b7b7b7b7b705b46301b06000000000000000000000002122231404e5c6a767a6e6253402c18001f34495e73899ea6917c695851545c6672869b9f89735e494235251401001f34495e73899ea6927c695952555d6773869b9f89735e4a43362614010000000d22374c62778da39b866f5a44566b8084888d9e968a87837c67523c271200000010233547596a7a8a988d7d746f6f75808fa0958572604d3925110000000517293b4c5b6b798691968c8684868b94998f8374645443311f0c00000000000a1b2c3c4b5966717b848a8f90908d89837a6f62544535241201000000021323313f505b5f6264676a6c685c4d4a443b2f21100000000d1f3244556676859391847a76767b85939f91826f5d4a37230f00000514222d37404a545e68727c869099958c83796f665c534a3e2e1c0a00132536444e58616a747d88909a958a82766d63594f453b32281c0d00000000000000000000000f2133455667778896978a7d736a645f5c5b5c5e61666b727a7764503d2915000000000000000000000000000f24384c5e6a6764666d7989998c7865523f2c1805000000000000000000001f344a5f748084889a9988848280705b4630384e63788083868fa3a69286837d6b56402b160000000000061524323e49535c63686c6e6f6e6c69645d554c4135291c0d00000000000000000000000000152a3f546a80919191919191919191919187705b46301b0600000000000000000000000f1f30404f5e6c7a888c80705b46301b001f344a5f748ba0a38d78634e3c40495a6f869b9f89735e483325170800001f344a5f748ba0a38d78634e3d414a5a6f869b9f89735e4833261808000000000d22374c62778da39b866f5a44566b8290909090909090907c67523c271200000006182a3b4c5d6c7a87929189868689929c938677675543301d0a000000000c1d2e3d4d5b68737d878d919393908c867c71645647372514020000000000000e1e2d3b48545f68707578797978746f675d524436271706000000000d1f31414f5a60605d54525557565e605f584d3f2e1d0a00000214263748586774828c958f8c8c8f98968d82726252402d1a0700000004101a242e37414b555f69727c86909b968c837970665c4c392511001b2f4354616b747d88919b958c82776d645a50463c33281f150b000000000000000000000005182b3e50627485969788796c60574f4a474647494c51575e68695a4734210e04000000000000000000000000091d2f404e55524f525c6a7b8d95826f5b4834210d000000000000000000001c314558666b6e7d939a86726c6a6454412d35495b676b6d7c91a59f8b766d6960503c28130000000005152433424f5b666f777c82848484827d7871685e5347392b1c0d000000000000000000000000152a3f546a808284868896a79a8987858380705b46301b06000000000000000000000a1b2d3d4e5e6d7c8b9586766957432f1a001f344a5f748a9fa38d77634e3c32445a6f869b9f89735e48331e090000001f344a5f748a9fa38d77624d3b31445a6f869b9f89735e48331e0900000000000d22374c62778da39b866f5a44556a7979797979797979797966513c2712000000000c1e2e3f4e5c69757d878d9091918e898075685949382614010000000000101f2f3d4a56616a72787b7c7c7b7771695f544738291908000000000000000d1c28333d464c545b6064646463605a534a4034271809000000000016293c4e5f6d75767166574758687276736a5d4c3a2713000000091a2a3a4957636f788086898b8b88837a6f63544534221000000000000007111b242e38424c566069737d88919b968c837968543f2a14001f34495e727d88919b968c83786f645a51473d332a20160c020000000000000000000000000e2135485b6d8092998978695b4e443e42413e3734383c434b54544b3c332a21160a0000000000000000000000001222313b403e3a3e4c5d6f83968b7764503d29150200000000000000000015283a48525663778ca08d7864545046372e2e3d4b535a6e8397ab98846f5b544e4232200d000000001223334251606d79838b929693909092928d857b706457493a2b1b0b000000000000000000000012273b4f616a6c6e707d94a99883716f6c6b6555422d1904000000000000000000031627394a5b6c7b8c98887767584b3a2814001d32475c708599a6917d6a5a4e46445a6f869b9f89735e48331e090000001d32475c718699a5917c6a594d45445a6f869b9f89735e48331e0900000000000d22374c62778da39b866f5a444e5d646464646464646464645b4a37230f00000000001021303e4b57626b72777a7b7b78746d63584a3b2b1a0900000000000001111f2c39444e575e6366676766625d564d4236291a0b00000000000000071a2b3a45505a5d54474c4f5b656b6c6b645b4e402f1f0d00000000001c3045596c7d8a8b847563516476868c887a6956432e1a000000000c1c2b3946525c656c71747474726d675d524536271605000000000000000008121b262f39434d57606a747d88929c95806a543f2a15001f344a5f748b9b978d83796f655c51483e342a21170d030000000000000000000000000002162a3e5164778b9d8d7c6a5a4b424c535757524b413436434d5456534e463d33271b0e010000000000000000000004131f272b2a2531425366798d94806c5845311d090000000000000000000b1c2b363d485c70859993806a56434343434343434c6075899da4917c6854403b322415030000000c1e2f415161707d8b96998d847d79797c838c988e827567584939281706000000000000000000000c2032424f555759687d94a998836c5a58565247372512000000000000000000000e2133455668798a9a8c7a6a59493b2d1d0b00192d4155697c8f9e9a88786b615a565a6f869b9f89735e48331e09000000192e42566a7d8f9f9988776a6059545a6f869b9f89735e48331e0900000000000d22374c62778da39b866f5a443f4b4f4f4f4f4f4f4f4f4f4f493d2d1b0800000000000312202d3a454f575e63666666645f5950463a2c1d0d0000000000000000010e1b27313b434a4e566169645648423a3025180b00000000000000000f23374958626d72614f515f6c78808380786c5e4d3c2a1704000000001f344a5f73889ba092806a566b8094a19986725d48331e00000000000d1b28343f4951575c5f5f5f5d59534a4034271809000000000000000000000009131d26303a444e57616b75808993806a543f2a15001f344a5f748b8e847a70665c53493f352b21170e04000000000000000000000000000000081d3145596d82949683705e4d47545f686c6b675e5245455460686b68625a5045392c1f100100000000000000000000020c13161525394d606e7185998874604d392511000000000000000000000d19232d4155697d929a86715d5858585858585858677b8fa49e8a75614d39261f14060000000316293b4d5e6f808f9c98897b70696565686f7a879694867667574635231100000000000000000000031424323b404253687d94a998836c5743403d35291a0800000000000000000005182b3d506274869792806e5d4c3b2b1d0f000012263a4d5f70808f9a97897d756f6b686f869b9f89735e48331e0900000013273a4d6070828f9b96887c746d69676f869b9f89735e48331e09000000000b1722374c62778da39b866f5a442f373a3a3a3a3a3a3a3a3a3a362c1f0f0000000000000002101c283343515f6a675d524f4b453d34281c0e00000000000000000000000a172633414f5c68747d74665846321d130700000000000000000014293e53667580806c5b616f7d8a9598948a7c6b594734210d000000001f344a5f748ba0ad98836c576c8397aca08b745f4a341f0000000000000a17222d353d43474a4a4a48443f372e23170900000000000000000000000000000a141d27313b444e58626c7680806a543f2a15001f344a5f74857a71675d534a40362c22180e0500000000000000000000000000000000000e23374b6074899c8c796653465665727b82827a7063545363727d807c766d62564a3d2e1f100000000000000000000000000005192d4155687c868696907c6854402c1804000000000000000000000712263a4e62768b9f8c776e6e6e6e6e6e6e6e6e6e8296aa97836e5a46321e0b02000000000d203346586a7c8e9e9b8a796a5e555050545d697788999586756452412e1c0900000000000000000000061420272b3e53687d94a998836c57422c2822180b000000000000000000000e2235475a6d80929a887462503f2e1d0d0000000a1d30415261707c879097918a84807d7c869b9f89735e48331e090000000b1e30425362717d8891989088837d7c7b869b9f89735e48331e09000000091a28343a4c62778da39b866f5a442f2225252525252525252524211a0e0100000000000000000015293e51616f7d7a6f6357493c2e21170b00000000000000000000000918273543515f6d7986928575604b36200b00000000000000000000142a3f54697d928a796f72808e9b908c8e98897663503c2814000000001e33485d718698a093806b56697d919f9a87725d49341f0000000000000005101922292e3234343433302b241b110500000000000000000000000000000000010a141e28323b464f59636d7467533e2914001f34495d7072685e544a40372d231910050000000000000000000000000000000000000013283d51667a8f9985705d49536474838f96968d8272635d70829095928a8074685b4c3d2e1e0d0000000000000000000000000d2135485c7085989a9297836f5b47331f0b00000000000000000000000b1f33475b6f8498928484848484848484848484899ca48f7b67533f2b1703000000000115283c4f6275889aa3907d6c5c4d413b3b404b596a7b8da09382705e4b3926120000000000000000000000030c13293e53687d94a998836c57422c170f060000000000000000000004182b3e5164778a9d917d6a5745332110000000000012243443525f6a737b83888d9194939392a09f89735e48331e09000000011325354453606b757c848a8f92949291919f9f89735e48331e09000000142738464f5362778da39b866f5a442f1a0f0f0f0f0f0f0f0f0f0f0d060000000000000000000000172c42576c808e8d8274675a4c3e3021120300000000000000000007172736455361707d8b978f7d6e5c48341f0a0000000000000000000011263a4e627689988a8486909a8c7d767a8993806b57422d19040000001a2e42566879878b847563506173828a887b6a57432f1b000000000000000000060e14191d1f1f1f1e1b1610080000000000000000000000000000000000000000010b151f29333d46505a5f5849372410001a2e41515d5e554b41372e241a1006000000000000000000000000000000000000000000172c41566b8095937d69554b5e708293a19b979891827064788da0958d909286786a5b4c3c2b1a08000000000000000000000115293c5064778ca09180958a76624e3a2611000000000000000000000004182c4054687c91a097949494949494949494949ba79c8874604c3824100000000000081c3044586b8092a59a8773604e3e2f26262d3c4c5e7084979f8d7a6855422e1b0700000000000000000000000013293e53687d94a998836c57422c170200000000000000000000000c2034475a6d82949c8874614e3b281604000000000006162534414d5760686e73787b7d8282869b9f89735e48331e090000000007172635434e5861696f75797c808283879b9f89735e48331e090000001c30445663686b778da39b866f5a442f1a0500000000000000000000000000000000000000000000162b3f53667687989286776a5c4e3f30211100000000000000000214253545546271808e9b92827060503f2d1905000000000000000000000b1f3346596b7c8c98999b968a7b6e616b7d887d6e59442f1a050000001326394b5b6972747166574655646f74736b5d4d3b28140000000000000000000000000000000000000000000000000000000000000000000000000000000000000000020c16202a333d464a453b2c1a080011233341494942392e251b110700000000000000000000000000000000000000000000001a2f445a6f84998e78644f53677a8ea097888285908f7d6b7c919d89777b859189796a5a4937261402000000000000000000081c3044586c80949f8a798f927d6955402c190400000000000000000000001125394d61758a9e8b7d7d7d7d7d7d7d7d7d8297aa95826d5945311d0900000000000e22374b5f73889ba7927d6a5744312011111e2f4154677b8fa39885715d4a36220e00000000000000000000000013293e53687d94a998836c57422c1702000000000000000000000014283b5063768a9e94806c5845311e0b000000000000011323323c40444c535a5f6366696b6f869b9f89735e48331e0900000000001223303b3f454e555b6064686a6c6f869b9f89735e48331e090000001f344a5f737c80838ea39b866f5a442f1a0500000000000000000000000000000000000000000000102436485869798a9b96897a6c5d4e3f2f1e0c000000000000000c20324353637282909e958573635342322110000000000000000000000003172a3c4d5e6e7a85898983786b5d506276746a61523f2b17020000000a1c2d3d4c575d5f5d54483946535b5f5e584d3f2f1e0b0000000000040c1011111111111111111111100c0400000000000000000000000000000000000000000000000000030d17212a323431291d0e00000515232e34342f261c1208000000000000000000000000000000000000000000000000001d32475c71879c8a74604b596e83979e8b786b72809089767c9399846e6772808f8877665543311f0d0000000000000000001024384b5f73889b988474899884705c48331f0b00000000000000000000000a1e32465a6e8397917c6868686868686873889ca28e7a66523e2a1602000000000013273c5165798fa3a18c77634f3b271402001124384c6074899da18d7965513d2814000000000000000000000007192c3e53687d94a998836c57422e1b0800000000000000000000061a2e43576b8093a18d7864503d2915020000000000000a1e30414f56524940454a4e51545a6f869b9f89735e48331e09000000000a1d30414e54514740464b5053555a6f869b9f89735e48331e090000001f344a5f748b9497999c9b866f5a442f1a050000000000000000000000000000000000000000000007192a3b4b5c6c7d8e9e998a7b6c5d4d3c2a170300000000000013283c4f607182919f988877665645352414030000000000000000000000000c1e3040505d687073736f665a4d47586361574e4334220f00000000000f1f2e3a43494a4841372a3540474a49443b2f211100000000000b172025262626262626262626262520170b0000000000000000000000000000000000000000000000000000040e171d1f1d160c0000000005111a1f1f1b13090000000000000000000000000000000000000000000000000000001e33485e73899c88725d495e73889d97836f5b61718294827b9198836c57617082928572614e3c2916030000000000000004182b3f53677a8fa3927d6e83978b77634e3a2612000000000000000000000003172b3f53677b9097836e5a5353535365798ea29b88735f4b37230f000000000000172c41556a8094a99c88725d4934200c0000091d31455a6f8499a995806b57422e190400000000000000000000112436495b6d8094a79883705d4b382513000000000000000000000c2035495d72869a9a86715d4935210d0000000000000013263a4d5f6b655c534c464444495d72889c9d88725d48331e09000000001326394d5f69645a524b454242495d72889c9d88725d48331e090000001f344a5f737c8082848789826f5a442f1a0500000000000000000000000000000000000000000000000c1d2d3e4e5f6f8091a19a8b7b6a5946321e09000000000000162b40566b7d8f9f9b8b7a6959483827170600000000000000000000000000011222323f4b555b5e5e5b53493d3a474e4d443b32251605000000000001101d272f3434332e251a232c32343430281e110300000000091a28343a3b3b3b3b3b3b3b3b3b3b3a34281a090000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001f344a5f748b9b86705b4b60768ca0927d6854536476888c798f98836c5752637486907d6b594633200c000000000000000b1f33475b6f8397a08c77687c91927d6955412d190400000000000000000000001024384c6074899d8975604c3e43586c8095a894806c5844301c080000000000001a2f44596e8499ad99846e59442f1b06000002172c41566b8095aa9a86705c47321d080000000000000000000a1c2e415366788b9e94908d7a6754422f1d0a00000000000000000011253a4f63788da195806b57422e1a06000000000000091c304356697c786f67605b59595c67798da19a86705b46311c06000000081c2f4255687c776e665f5a57575b66788ca19a86705b46311c070000001c30445663676a6c6f71736f6353402c17020000000000000000000000000000000000000000000000000f2030415162728494a5988975604b36210b00000000000014293e526473828f8e7d6d5c4c3b2b1a0a0000000000000000000000000000000414212e39414749494640372c2a34393831281f140700000000000000000b141b1f1f1e19120810181d1f1f1b150c010000000000142738464f505050505050505050504f463827140000000000000000000000020e161c1d1d1d1c191106000000000000000000000000000000000000000000060c1013131513110d08020000000000000000000000000000000000001f344a5f748b9b866f5a4c62778da38f79645047586a7c90828c99846e584556697b8f8975624f3b28140000000000000013273b4e62768a9e99857062768b9985705c48331f0b0000000000000000000000091d3145596d82968f7b67523e4a5e72879ba18d7965513d2915010000000000001d32475c71879cab96826b56412c170200000013283d52677c92a79f8a745f4b35200b0000000000000000021427394c5e7083959d89849785725f4c392714010000000000000000152a3f53687d92a5907b66513d2814000000000000000e23384c5f72868c837b74706e6e70778596a894806b57422d18040000000e23374b5f72858a8279736f6c6c6f768495a895806c57422d1904000000142738464f5254575a5c5f5d5245362411000000000000000000000000000000000000000000000000000212233444556576879587796b5c48341f0a0000000000000f2335465563708080705f4f3e2e1d0d000000000000000000000000000000000004101c252d323434312c241a182024231e150c0200000000000000000000000000000000000000000000000000000000000000001c3044566366666666666666666666635644301c0000000000000000000002121f2a31323232322d2417080000000000000000000000000000000000010b131b202528292a2926221d160e04000000000000000000000000000000001f344a5f748a9b866f5a4c62778ca18f78634e3b4d60728689899b86705b464c5f7286927d6a57432e1a060000000000071b2e42566a7d92a6937d6a5c70859a8b77634e3a2612000000000000000000000002162a3e52667a8f96826d59445065798ea29a86725d4a36210e000000000000001e33485e73899ea9947d69543f2a150000000011263b50667a90a5a28d77624d38230e00000000000000000c1f314456687b8ea095827a8e8f7c695643301e0b0000000000000000182d42576c8297a18c77624d38230e000000000000000f253a4f64798792978f89868484868b95a39d8b7865513d2814000000000f253a4f64798893958e88848383858a94a29e8c7965513d291400000000091a28343a3d3f4244474a484034271806000000000000000000000000000000000000000000000000000005162637475868798576695b4e3e2c1905000000000000061828374553616f7262524131201000000000000000000000000000000000000000000912181d1f1f1c181107050c0f0e0a0200000000000000000000000000010d15191a1a1a1a1a1a1a1a1a1a19140b000000001f344a5f737b7b7b7b7b7b7b7b7b7b735f4a341f000000000000000000000e1f303d4547474747413526150200000000000000000000000000000008131e272f353a3d3e3f3e3b37312a21170c0000000000000000000000000000001e33485e73899b86705b4b60748a9f8f78644f3a4356697c90919d88725d4842566a7d9286725d4935200b00000000000e22364a5e72869aa08c7763566a8093927d6955412d190400000000000000000000000f23374b5f73889c88735f4b576b8094a793806a57432e1b07000000000000001f344a5f748ba0a9947d68533e2913000000000f253a4f64798fa4a48f78644f3a240f000000000000000517293c4e617386989f8c787185988673604d3a281502000000000000001b30455a6f869a9e89735e49341f0a000000000000000d22364a5c69747d8890979b99999b9f9e978d7d6d5c4935210e000000000d22364a5d6a7580899198999898999e9f988e806e5c4936220e00000000000b172025282a2d2f3234332d2317090000000000000000000000000000000000000000000000000000000009192a3a4b5b6c7366594b3d30200f00000000000000000a19273543515d5e54443423130200000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000002121f292e2f2f2f2f2f2f2f2f2f2f2e271d0f0000001f344a5f748b91919191919191918b745f4a341f00000000000000000003172a3d4e5a5c5c5c5c5344321f0b00000000000000000000000000000b1925303a434a4e52535453504b453d342a1e1104000000000000000000000000001c32475c71879c88725c475c71879b907b66513c394d6074889ca08b76604b3b4f63788d8d77634e3a25100000000002162a3e5165798da19a86715d5064788d9985705c48331f0b0000000000000000000000081c3044586c82958e7965515e72879ba08c7764503b271400000000000000001f344a5f748ba0a9947d68533e2913000000000e23384e63788fa4a59079644f3a250f000000000000000f223446596b7d90a3968370687b8f907d6a5744321f0c000000000000001d32475c72889c9c87715c47321c0700000000000000071a2d3e4c57616b747b83888c8d8d8c89837a6f60503e2c190600000000071b2d3f4d59636c757c84898d8f8f8d8a857b7061513f2d1a06000000000000040c101315181a1d1f1e1911050000000000000000000000000000000000000000000000000000000000000c1c2d3d4e5b5f56483b2d1f12020000000000000000000917253340484943362616050000000000000000000000000000000000000000000000000000000005111a1f1f1f1f1f1f1f1f1f1f1f1f1d160c0000000f20303c4344444444444444444444423a2d1d0b00001f344a5f748284868da19d8a868382745f4a341f0000000000000000000b1f33465a6c72727270614e3b2713000000000000000000000000000b1a2836434d565e636768696865605950473c2f2213040000000000000000000000001a2f44596e84998a745f4a586c8296947d6955403144586c8095a38e78644f3a4a5f7389927c68533e2914000000000a1e3145596d8295a7937d6a564a5e72879b8b77634e3a261200000000000000000000000115293d5165798e95806c5864788da29985705d4834210c00000000000000001f344a5f73899fa9947d68533e2913000000000f24394e63788fa4a59079644f3a250f000000000000071a2c3e516376899b9f8c79665f7285988774614e3c2916040000000000001f34495e73899f9b866f5a442f1a0500000000000000000f202e3a454e5860686e7376787877746f675d514232210f00000000000010212f3b46505961696f74777979787570695e51423321100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000f1f303e474a44382b1d0f0100000000000000000000000715222d33342f251809000000000000000000000000000000000000000000000000000000000515232e34343434343434343434343431291d0e0000182b3e4e585a5a5a5a5a5a5a5a5a5a574b3a281400001d314558676b6e748ba09c87706d6b675845311d00000000000000000013273b4e62768888887d6a56422e1b070000000000000000000000071828384654606a72787c7d7d7d79746d63594d40312212020000000000000000000000172c41566b80958d77634e52667a8f98846f5b46333d5165798ea2917c67523d465b708695806b56402c16000000001125394d6175899ca08c77634f43586c8295927d6955412d180400000000000000000000000e22364a5e72879b87725e6b8094a6927d6a55412d190500000000000000001e33485d72889daa95806a543f2a150000000010253b50647990a5a38f78634e38230e000000000000122437495c6e8293a695826f5c55687b8f917d6b594633200e0000000000001f344a5f748ba099846e58432e1904000000000000000002101d28323b444c545b5f626363625f5a544b403223140300000000000003111e29333d464e545b5f63646463605c554c413324150400000000000000000000000c161b1d1d1d1d1d1d1d1c1911161c1d1d1d1d1d1d1c1810050000000000000000000000000000000212202b333430271a0d00000000000000000000000000000511191e1f1b1308000000000000000000000000000000000000000000000000000000000011233341494a4a4a4a4a4a4a4a4a4a4a453b2c1a08001e33475b6b6f6f6f6f6f6f6f6f6f6f6957432f1a050016293b4953565f748ba09c87705b5653493b29160000000000000000071b2f42566a7d929d9986715d4a36220e0000000000000000000001132536465664727d868d919494938f8980766b5e4f4030200e000000000000000000000013283d52667b90917c68534b5f73879a8a76624f3d364a5e73889c95806b5641445a6f8498836d58432e1800000005192d4154687c90a49a86715d483d52667a8f9985705b47331f0b0000000000000000000000071b2f43576b80948d786472869a9f8b76634e3a26120000000000000000001b30455a6f859aac97826c57422d180300000013283d52677c91a7a18c77624c37220d00000000000a1d2f415466798c9e9e8b7764524c5f728598897563503d2a180500000000001f344a5f748ba099846e58432e1903000000000000000000000d1f30404f5c676f74777776726b62574a3b2b1a080000000000000000000c17202a32414f5c69695f544e4b4741392f2315060000000000000000000000101e293032323232323232322d242a31323232323232312c221506000000000000000000000000000000020f181e1f1c1409000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000061a2e41515d5f5f5f5f5f5f5f5f5f5f5f5849372410001f344a5f7486868686868686868686705b46301b06000c1d2c373e4a5f748ba09c87705b463e372c1d0c00000000000000000f23374a5e72869a9a958d7965513e2a16020000000000000000000b1e304354647483909a958b8583848a9393897b6d5e4e3d2c1a08000000000000000000000f24384d61768a96826d5945576a7d9092806c5a4a4044586d829799846f5a4543586e8499846e58432e19000005112134485c708498a7937d6a5642374b6074899d8b76624e3a261308000000000000000000000014283c5064788d94806b788da19884705b47331f0b000000000000000000182d42576b8295aa99846f5a45301b07000001162b40556a8094a99e89735f4a35200b000000000215273a4c5e718396a694826d5b484255687b8f92806d5a4734220f00000000001f344a5f748ba099846e58432e190400000000000000000004172a3d4e5e6d7983898c8d8c878074685949372513000000000000000000000412263b4e5f6d7a7c7166594c3e30261d120500000000000000000000000b1d2e3c45474747474747474741353d4547474747474746403324120000000000000000000000000000000000000000000000000000000000000000000000000000000002080d11151719191a1917130f090200000000000000000000000000000000000000091f34495d70747474747474747474747467533e2914001f344a5f748b8f91969b9b94908f87705b46301b0600000e1a24344a5f748ba09c87705b4630241a0e000000000000000003172b3e5266798ea28f8495826d5945311d0900000000000000000115283b4e60718393a1938477706c6f7682909a8c7c6c5b4a37251200000000000000000000091e33475b7084988874604c4d607385968a78685b56595e687c929d88735e49445a6f8599846e58432e19000514222d3c5064778c9fa08c77634f3b31455a6e8397927d6955402f251809000000000000000000000d2135495d72869a86718093a5917c6854402c180400000000000000000014293d52667b8fa49d88735e4a36210d0000081c3045596e8398ad9985705b46311c070000000b141f324456697b8ea19c8a7664513e394c5f7285988a7664513e2b1912090000001f344a5f74899f9a866f5a442f1a050000000000000000000c2034475a6c7c8c968a8483848a9286776755422f1b0700000000000000000000152a3f54697d8b8f83766a5c4e4132231405000000000000000000000014283b4c595c5c5c5c5c5c5c5c53444e5a5c5c5c5c5c5c5b51412f1b070000000000000000000003090e12131513120f0a0400000000000000000000000000000000050f161c22262a2c2e2e2f2e2c28231d150c0200000000000000000000000000000000000a1f344a5f748b8b8b8b8b8b8b8b8b8b806a543f2a15001f34495d7077797c8ba09c877b78776d5a45301b060000000a1f344a5f748ba09c87705b46301b080000000000000000000b1f33465a6e82969c887d928974604d3925110000000000000000091d3144576a7d90a1988674655b575a647283959b8a796754412e1b0800000000000000000004182c4054687c908f7b685443556778899687796f6b6d72798393a18c77624d465b708799846e58432e19001122324048586b8093a79a86715d483f354253687c919884705b4a4336271502000000000000000000061a2e42566a80938b7685999e8a75614d392511000000000000000000000f23384c6074889ca28d7864503c291605001124374b5f73889da793806a56412d18030001111e282e3c4f61738699a693806d5a47342f4255697c8f94826e5b49362c261b0e00001e33485d72889d9c87705b46311c0700000000000000000012263b4f63768a9887776f6c6f77879685725e4a36220d0000000000000000000013283d516373849595887a6c5f50423223130300000000000000000000192e43576a7272727272727270614d5a6c7272727272726f5f4a36210c0000000000000000050f171e2327292a2927241f191108000000000000000000000000000b18222a31363b3f4143434443413d3831281f1509000000000000000000000000000000000a1f344a5f748688898c90a0a0908b88806a543f2a15001a2e41525e6264748ba09c877064625d4f3e2b16020000000a1f344a5f748ba09c87705b46301b0600000000000000000013273b4e62768a9e9582778c907c6854402d1905000000000000001024384c6074889ba38f7b69574842465465778c9f9684715e4b37230f000000000000000000001125394d6074889885715e4c495a6b7a8a978b848283888e969ca1907b66524a5f748997826c57422c1700192d40515d6373879ba7937d6a605c5043535e62768b9f8a76635e5444321e0a0000000000000000000013273b4f63778c917c8b9f97836e5a46321e0a00000000000000000000091d3145596c8093a594806c5846332316151e2e4053667a8fa3a08c7864503b271300000e1f2f3b4247596c7d91a39c897663503d2a29394c5f7286998b7865534541392c1c0a001b30455a6f869a9d88735e49341f0a000000000000000000152b4054697d938f7b685b575a697c928e7965503b2611000000000000000000000e2134455566768898988b7c6e605141312110000000000000000000001a2f445a6f8688888888888879644f5c7288888888888877624c37220d000000000000010d18222b32383c3e3f3e3c39332c241a100400000000000000000000091a29353e454b5054575858595856524c453b32271a0d000000000000000000000000000000091e33475b6b70727476889da08b75726f64513d281300122434424a4d5f748ba09c87705b4c494031210e000000000a1f344a5f748ba09c87705b46301b060000000000000000071b2f42566a7d92a38f7a71869884705c4834200c00000000000000152a3e53677b90a39c8873604c392d36485c708499a18e7a66523e2a15000000000000000000000a1d3144576a7d918e7b6856454d5c6b7986909797989a968f879391806b564f64788d947d6954402b15001e33485d6f777c8fa2a18c7c78756e5b4c6071767a8599917c7872614d39240f000000000000000000000c2034485d7085968290a4907b67533f2b1703000000000000000000000216293d506376899a9c8875635141332b2a2f3c4c5d708396a99683705c4935210c0000182b3d4d575c6476899ca592806c5954473636475459697c8f95826f5e5a554a3a271400182d42576c8296a18c76614c38230e000000000000000000172c42576c83978b75604c424e63788f937c67523d281300000000000000000000051727384859697a8b9b9b8d7d6f5f4f3e2d1a070000000000000000001a2f445a6f868b8d8f959d9079644f5c72889d9a908d8a77624c37220d000000000003111e2a353e464c51535453514d4840372d2115070000000000000000011427384751595f65686b6e6e6e6e6b6660584e44382b1d0e00000000000000000000000000040a182b3e4e585b5d5f72889da08b745f5a544635220e000616242f354a5f748ba09c87705b46342d221303000000000a1f344a5f748ba09c87705b46301b0600000000000000000f23374a5e72869a9c88736b80958c7763503c281400000000000000192e43586d8296ab97836d5944301d2c41556a8094a996826d58432f1a050000000000000000000115283b4e6173869886746251414d5b68737c83878886827b76837c756955576a7d938f7a66513c2712001f344a5f748b929a9c9c97918e89735e4e63788c8f939c9b928d79644f3a250f000000000000000000000a192d41556a7d92939a9d8974604c3824100000000000000000000000000d203346596b7c8e9e92806f5f5045403f434c5a6a7b8da09d8b796653402d190600001e32475a6a70758294a69c8875726e65533f3f53656e727486998c79736f6857432e1a0014293e53687c91a48f7a65513c2813000000000000000000172c42576c82978b74604b465065798f937c67523d28130000000000000000000000091a2a3b4c5c6d7d8e9f9d8e7d6d5c4a36220d000000000000000000192e43576a737577798da39079644f5c72889d947d7774705f4b36210c000000000313212f3c48515a616668696866625c544a3f3225160700000000000000071c304456646d74797d8283848483807b746b6156493b2c1d0d00000000000000000000050f181e2428303c4346485c72889da08b745f4a4036281705000006121f344a5f748ba09c87705b46301b100400000000000a1f344a5f748ba09c87705b46301b060000000000000003172b3e5266798ea295826d65798e93806b5743301c080000000000001d32475c70869ba8947d69543f2b16273c51667b90a59b87725d48331e09000000000000000000000b1e314456687a8d92806f5f4f404a5660686d7072706c67686e68615a4e6073869a8a75604c38230e001f344a5f74878787878787878787735e4e63788787878787878779644f3a250f0000000000000000000f1c27303a4e63778b919191826d594531281e1102000000000000000000000417293c4d5f7080909e8d7d6e62595454575f6a7888999f8f806d5c4a3724110000001f344a5f74868a8f9ea49e8f8a87836c574242576c83878a8d9c978c8884705b46301b001025394e62768b9f94806b56422e1a060000000000000000152a3f54687c918f7a695e5b5f6d80948e7965503b26110000000000000000000000000c1d2e3e4f5f708291a29a8c79644f3a250f00000000000000000014283b4c595e6062778da39079644f5c72889d947d685f5d5242301c08000000001121313f4d59646e757a7d7d7d7b7670675c5043342516050000000000000a1f344a5f7382898e939694919092958f887d7367594a3b2b1a0900000000000000000c18222b33383d3e3f3d3a475c72889da08b745f4a3424190a000000000a1f344a5f748ba09c87705b46301b060000000000000a1f344a5f748ba09c87705b46301b06000000000000000b1f33465a6e8296a28e7a665e72879b87735f4b3723100000000000001f34495e73899ea7917b66513c2712243a4f64788fa49f8b74604b36200b00000000000000000000021527394b5d6e80918e7d6d5e5043434d53595b5c5b57535558544d4a5a6b7d9096826e5a46321d09001e33485c6d7070707070707070706c5a4b5f6f707070707070706f604d38230e00000000000000000d1d2d3a444a4b5b707b7b7b7b7966524a443b2f201000000000000000000000000c1e3041526271828f9b8d80756d6a696c727c88979c8f827061503e2c1a070000001f344a5f748b8f8f8f8f8f8f8f8f836c574242576c838f8f8f8f8f8f8f87705b46301b000a1f33485c7084989a86715d4935210d00000000000000001125394e61748695887a7370737c8c9685725f4b36220d000000000000000000000000001020314152627384948a7c6e5f4c38230e0000000000000000000b1d2e3c46494c62778da39079644f5c72889d947d68534841342513000000000c1e2f3f4f5d6b77828a90939494908b83796e6152433323120000000000000a1f344a5f748b9da29186807b7a7c828a96918577685949382715020000000000000f1d29353e474d515353524f495c72889da08b745f4a341f0a00000000000a1f344a5f748ba09c87705b46301b060000000000000a1f344a5f748ba09c87705b46301b060000000000000013273b4e62768a9e9b87735f576b80948f7a66533f2b170300000000001f344a5f748ba0a59079644f3a251023384e63788da3a18c76614c37220d00000000000000000000000a1c2e4051627283938c7c6e6054493e3f44464746423e4143414c5968788a9b8c7966523f2b170300192c3e4f595b5b5b5b5b5b5b5b5b59544b515a5b5b5b5b5b5b5b5a5243311d090000000000000006192b3b4b575f605e6166666666655e605f574d3e2e1d0a0000000000000000000001122334445362707d8993928983807d82868f99948a7d7062534332210f000000001f34495e72787878787878787878786b5a564d566b7878787878787878786f5a45301b0004192c4054687c8fa08d7864503d291602000000000000000a1e314456677785908e8887888f9287776755422f1b0700000000000000000000000000021323344555667687796b5e5041301c0900000000000000000000101e2a31374c62778da39079644f5c72889d947d68533e2d24160700000005182a3c4d5d6d7b89959388827d80848e978c80706151412f1d0b00000000000a1f344a5f748ba09c87736a6665676e788695958777675644321f0c00000000000f1e2d3b47515b6266686867635d5c72889da08b745f4a341f0a00000000000a1f344a5f748ba09c87705b46301b060000000000000a1f344a5f748ba09c87705b46301b06000000000000071b2f42566a7d92a594806c585065798d96836e5a46331f0b00000000001f344a5f748ba0a59079644f3a250f23384e63788da3a38d77624c37220d0000000000000000000000001022334454647484928c7d71665b524a44403e3c3e41454c545e6a77879793826f5c4a36230f00000f21313d4546464646464646515f6a675d524546464646464646454034251401000000000000000e22364859687376736a5c505059687376736a5c4c3a271300000000000000000000000616263544525f6b7680878d91949494918d8882776c60524435251403000000001b2f43546163636363636363636363656f695f535d6363636363636363635f513f2b1700001125394c6073869994806c5945321f0c0000000000000002152739495967737c848889898680756859493826130000000000000000000000000000000616273748586974695b4d403223120000000000000000000000000d1622374c62778da39079644f5c72889d947d68533e291306000000000f223547596b7b8c9a9282756c686a707c8c9c8f806f5e4c3a271401000000000a1f344a5f748ba09c87705b5150535b67768899958573614e3b2815020000000c1d2d3c4b58646e767b7d7d7c78716772889da08b745f4a341f0a00000000000a1f344a5f748ba09c87705b46301b060000000000000a1f344a5f748ba09c87705b46301b060000000000000f23374a5e72869aa18d7965514a5d72869a8a76624e3a261300000000001f344a5f748a9fa59079644f3a251024394e63788fa4a18c76604b36210c000000000000000000000000041526374656657382909083786e665e5955535253565a6067707b88969686756452402d1a0700000313202a3030303030303e51616f7d7a6f6356493c3030303030302c231607000000000000000014293d516577878c887a6956516476868c887a6956432e1a05000000000000000000000008172634414e59636c72787c7d807d7c78736d645a4f42352617070000000000132536444c4e4e4e4e4e4e4e4e5e6c77827c7165594e4e4e4e4e4e4e4e4e4b423322100000091d304356697c909c8975614e3c291705000000000000000a1b2b3b495560686f727473706b62584a3b2c1a090000000000000000000000000000000009192a3b4b595f584b3d2f221405000000000000000000000000000d22374c62778da39079644f5c72889d947d68533e29130000000004182b3e5164768999998674645853555e6d7d909e8e7c6a5744311d0a000000000a1f344a5f748ba09c87705b463b3e49596a7c90a2917d6b5845311d0900000517293a4b5a6976828a909494928d857a70879ca08b745f4a341f0a00000000000a1f344a5f748ba09c87705b46301b060000000000000a1f344a5f748ba09c87705b46301b06000000000003172b3e5266798ea29a86725e4a43576b8093927d6956422e1a06000000001e33485d72879ca7917b66513c2712273c51667b90a59f89745f4a35200b0000000000000000000000000008192838475664717d8b958b8279736d6a6867686b6f747b848d9995877768574635221000000000020e161b1b1b1b1b2e43586d808e8d8274675a4c3e30211b1b1b181005000000000000000000172c42576c8295a19986725d566b8094a19986715d48331e09000000000000000000000000081624303c4650585e6367686b6d67645f5851473d312517080000000000000818263138383838383838384e637789958f8376695c4e40383838383838373024150500000114273a4d60728597927d6b594635231202000000000000000d1d2b38434d545a5d5f5e5c564f463a2c1d0e0000000000000000000000000000000000000c1d2d3b464a453b2d1f110400000000000000000000000000000d22374c62778da39079644f5c72889d947d68533e2913000000000b1f33475b6e8294a4907c6956463e414f6073869a998773604d392511000000000a1f344a5f748ba09c87705b46302c3b4d6073889c9b8874604d39241000000f22354758697888949e9d938d8b8c908d80879ba08b745f4a341f0a00000000000a1f344a5f748ba09c87705b46301b060000000000000a1f344a5f748ba09c87705b46301b0600000000010d1f33465a6e8296a793806b57433b5064788d9986715d49362210050000001a2f44596e8397a8947d6954402b162b4054697d93a89b86715c47321d0800000000000000000000000000000b1a29384653606d78838d958e8883807c7c7d8084898f97998f847668594a392817050000000000000000000000172c4054667688989285776a5c4e3f30201000000000000000000000000000172c42576c8398ada08b745f576c8397aca08b745f4a341f0a0000000000000000000000000006131e2a333c434f5c68737d80746958443d342b201407000000000000000009151e2323232323232334485a6a7a8b9a94887a6c5e4f403023232323221c1306000000000a1d30435567798c9b897664524130201103000000000000000d1a2630394045484a4847423b33281c0e00000000000000000000000000000000000000000f1d2a323431291d0f010000000000000000000000000000000d22374c62778da39079644f5c72889d947d68533e29130000000011263a4e63768a9e9e8975604d39293143576a8093a3907c6854402b17020000000a1f344a5f748ba09c87705b46301d3044586d8296a4907c68533f2a150005182b3e5164768797a5998b807874767b85908a9ca08b745f4a341f0a00000000000a1f344a5f748ba09c87705b46301b060000000000000a1f344a5f748ba09c87705b46301b0600000002121f2a3b4e62768a9ea08c7764503b35495d71869a8d7965513d2c2316070000162b3f54687c91a497836e5a45322232465a6e8397a995826c57432e19050000000000000000000000000000000b1a2836434f5b66707a838a91969493939395999a958e867c7266594a3b2c1c0b0000000000000000000000001125374859697a8b9b96887a6b5d4e3e2e1e0c000000000000000000000000172c41556a7d929f9987725e55697d919f9987725d49341f0a0000000000000000000000000000061726354452606d7986919284715c473221180e020000000000000000000002090d0e0e0e0e0e182b3c4c5c6c7c8d9c988b7c6d5e4e3d2a160e0e0d08000000000000011326384a5c6e80909382705f4e3e2f2112020000000000000009141d252c30333433312d2820160b000000000000000000000000000000000000000000000c171d1f1d160c00000000000000000000000000000000081122374c62778da39079644f5c72889d947d68533e291300000000162b4054697d92a699846f5a46311d273b5065798fa397836e5a45301b060000000a1f344a5f748ba09c87705b46301b2a3e53687c92a797826d58432e19000c2034485b6e8294a59b8b7a6d635f6168727d8d9fa08b745f4a341f0a000000000a1721344a5f748ba09c87705b46301b060000000000000a1f344a5f748ba09c87705b46301b060000000f20303d44566a7d92a59985715d48383242566a7d9295826d59464034251402001125394d6175889b9d8975614f3e373d4e6175899da18e7966523e291400000000000000000000000000000000000a1825323e49545d666f767c828688898b898885807972696054483b2c1d0e00000000000000000000000000081a2a3b4b5c6d7d8e9e988a7b6c5c4c3b291703000000000000000000000012273b4f6274838a887b6a574e6173828a887b6a57432f1b060000000000000000000000000000122434445362707d8b979586756555422e1a0500000000000000000000000000000000000000000d1e2e3e4e5e6e7d8f9e9b8c7c6c59442f1a0500000000000000000000091b2d3e50617283928e7d6c5c4d3f30200d0000000000000000010a11171b1e1f1e1c19130c03000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005111b242b374c62778da39079644f5c72889d947d68533e2913000000001a2f44596e8397aa95806a55402c1722374c61768ca19d88735e49341f0a0000000a1f344a5f748ba09c87705b46301b263b50657990a59b86705c47311c0012273b4f63778b9ea3907d6c5c504b4c556072889da08b745f4a341f0a000000081928343c4a5f748ba09c87705b46301b060000000000000a1f344a5f748ba09c87705b46301b06000000182b3e4e595f72869aa6927d6a5c554841505a63778c9c8874605b5243311e0a000a1e3145586b7d8fa0917d6c5c504c4f5b6b7d91a49785725e4b37230f0000000000000000000000000000000000000714202c37414a535b62686c7072747474726f6b655f564d42372a1d0e0000000000000000000000000000000c1d2d3e4f5f708091a29a8b7a6a5946321e0900000000000000000000000c20334556657074736b5d4c4455646f74736b5d4c3a27140000000000000000000000000000061b2e41526271828f9c9788776757473725120000000000000000000000000000000000000000000010203040506070809092877b6e5a45301b0600000000000000000000000f21334454647484938b7a6b5d4e3d2915000000000000000000000000000000000000000000000000000000000000000000000000000000080e14181b1b1c1b1916100a020000000000000000000000000816232e3840464c62778da39079644f5c72889d947d68533e2913000000001d32475c71879ca7927c67523d28131f344a5f748ba0a08b76604b36210b0000000a1f344a5f748ba09c87705b46301b24394e63788fa49e89735e48331e00172c40556a7d93a79c8874604e3e3538475c72889da08b745f4a341f0a0000001225374650555f748ba09c87705b46301b060000000000000a1f344a5f748ba09c87705b46301b060000001e33475b6c73798ea2a08b78747066544b5e6e73778599907c746f614e39240f000215283b4e607183929c8a7a6d6461636b78899b9c8c796755422e1b0700000000000000000000000000000000000000030f1a242e373f474d53575b5d5f5f5f5d5a56514b433a3025190c0000000000000000000000000000000000102031415262738494a5978875604b36210b00000000000000000000000316273847535c5f5e584d3f3746535b5f5e584d3f2f1d0b00000000000000000000000000000b20354a5e7082909f99897969594939291a08000000000000000000000000000000000000000000000212223242516171828075695e503e2b17020000000000000000000000041526364656657484918a7b6c58442f19000000000000000002070a0c0c0b08040003080b0b0b08050100000000000000000000000009131b23282d303032302e2a251e150b0000000000000000000008172634404b545a5f62778da39079644f5c72889d947d68533e2913000000001f34495e73899fa5907b66503b26111f344a5f748ba0a18c76604b36210b0000000a1f344a5f748ba09c87705b46301b23384e63788fa49f89735e48331e001b30455a6f8499ab96826d5844312132475c72889da08b745f4a341f0a000000192d4154646a6f748ba09c87705b46301b060000000000000a1f344a5f748ba09c87705b46301b060000001f344a5f74888e98a0a0948d89836c574e6378888c909e998f897b66503b261100000c1e30425364748391998b807876787d89979a8d7d6d5c4a3825130000000000000000000000000000000000000000000007111b242b33393e4246484a4a4a4845423d362f271d13080000000000000000000000000000000000000213233444556676879587796b5c48341f0a0000000000000000000000000a1a293640474a49443b2f283540474a49443b2f21110000000000000000000000000000000b20354a5f72808a968b7a6b5b4b3b2b1b0b00000000000000000000000000000000000000000000000004142433435363736e63574c4132210f0000000000000000000000000008182838475665738285786b58432e190000000000000710161c202122201d1912171d2021201d1a1611090000000000000000020f1b262f373d4245464746433f3931281d1103000000000000000415263544525d676f7477788da39079644f5c72889d947d68533e2913000000001f344a5f748ba0a59079644f3a250f22374c61768ca1a18c76604b36210b0000000a1f344a5f748ba09c87705b46301b253a4f64798fa49f89735e48331e001e33485d72889ca7927c68533e291d32475c72889da08b745f4a341f0a0000001b30465b7080848990a29c87705b46301b060000000000000a1f344a5f748ba09c87705b46301b060000001f344a5f748b8b8b8b8b8b8b8b836c574e63788b8b8b8b8b8b8b7b66503b261100000113253646566472808a93938e8c8d929992887c6f604f3e2d1b080000000000000000000000000000000000000000000000000810181e24292d313334343433302d28221b140a01000000000000000000000000000000000000000005162737485869798576695b4d3e2c1905000000000000000000000000000b19242d32343430281e18232c32343430281e1103000000000000000000000000000000081c304354616d78847c6d5d4d3d2d1d0d00000000000000000000000000000000000000000000000000000616263545555e5c51453a2f23140400000000000000000000000000000a1a29384755636f73675b4e3c291500000000030f1a232b3134363735322d262b32363635322f2b251c0f0100000000000412202d38434b52575a5b5c5b58534d443a2e2113040000000000000f21334453626f7a83898d8f94a59079644f5c72889d947d68533e2913000000001f344a5f748ba0a59079644f3a2a23283b5065798fa39f89745f4a35200b0000000a1f344a5f748ba09c87705b46301b283d52667b91a69d88725d48331e001f344a5f74899fa59079644f3a251d32475c72889da08b745f4a341f0a0000001b30465b7087999c9fa19c87705b46301b0600000000000b1720344a5f748ba09c87705b46301b060000001f34495d7074747474747474747469554c61727474747474747473634f3a2510000000071828384755616d768086898b8b88847d756b5e514231210f000000000000000000000000000000000000000000000000000000040a1015191c1e1f1f1f1e1b18130e0700000000000000000000000000000000000000000000000009192a3b4b5c6c7366584b3d2f200f0000000000000000000000000000000711191e1f1f1b150c0610181d1f1f1b150c010000000000000000000000000000000001142636444f5b66726f5f4f3f2f1f0f00000000000000000000000000000000000000000000000000000000081727374349483f33281d1205000000000000000000000000000000000b1a293745515c5e554a3e301f0d0000000413202c363f454a4b4c4b47413a3e464b4b4a474440392d1f0e00000000021222303e4b555f666b6f7071706d6860574c3f312213020000000005182b3e506171828d979ea2a4a7a59079644f5c72889d947d68533e2913000000001e33485e73899ea5907b6654473d383945576a8093a89a86705c47321d080000000a1f344a5f748ba09c87705b46301d2e42566b8094a99a86705b46301b001f344a5f748ba0a48f78634e38231d32475c72889da08b745f4a341f0a0000001b30465b70828587898c8f86705b46301b0600000000091a28343a4a5f748ba09c87705b46301b060000001a2e41515d5f5f5f5f5f5f5f5f5f5a4c44545e5f5f5f5f5f5f5f5f564634200c000000000a1a293744505a636a70737474736f6a62594d403223130300000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000c1d2d3e4e5b5f56483b2d1f1102000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000081826323d49545e5d51413121110100000000000000000000000000000000000000000000000000000000000a19263034332c21160b000000000000000000000000000000000000000b1927343f484943382c2012010000031323313e49535a5f60615f5c554d4f5a60605f5c59544b3d2b18050000000e1f30404e5c68727a8084878786837c74695d4f4031200f000000000d2135485b6e80909faab2b7b9bba59079644f5c72889d947d68533e2913000000001c32475c70879ba89482726459514d4d556374879aa693806b56422d19040000000a1f344a5f748ba09c87705b4636323b4b5e71869aaa95826c57422d18001f344a5f748ba0a48f78634e38231d32475c72889da08b745f4a341f0a000000192e4256666c6f72747779756756432e190400000000142738464f535f748ba09c87705b46301b0600000011233341494a4a4a4a4a4a4a4a4a463c3643494a4a4a4a4a4a4a4a443828170400000000000b1926323d4750565b5f5f5f5e5a554e463b30221405000000000000000000000000000000000000000000000000000000000000000000000000000000000001070a0d0d0d0a060000000000000000000000000000000000000000000f20303e474a44382a1d0f01000000000000000000040c10111111111111111111100c04000000000000050d10111111100b0200000000000000000000000000000915202c3742494840322313030000000000000000000000000000000000000000000000000000000000000009141b1f1e190f040000000000000000000000000000000000000000000916222d333430261a0f020000000f2131414f5b666e7376767470695f5e6d747674716e685a48341f0b0000081a2c3d4e5e6c79858e95958f8d909690877b6d5e4f3e2d1b0900000014283c5064778b9daebcc6cccebba59079644f5c72889d947d68533e2913000000001a2f44586d8397aca09083766c65626368728292a49c8a7663503c2813000000000a1f344a5f748ba09c87705f534a474c59697a8ea1a28f7a66523d2914001e33485e73889da48f79644f3a251d32475c72889da08b745f4a341f0a0000001326384853575a5c5f626463574939271300000000001c30445663686a748ba09c87705b46301b060000000515232e34343434343434343434322a252f34343434343434343430271a0b000000000000000815202a343b42464a4a4a4946413b33291e120500000000000000000000000000000000000000000000000000000000000000000000000000000000070f161b1f2222221f1a130a000000000000000000000000000000000000000212202b333430271a0c000000000000000000000b1720252626262626262626262520160a000000000c182125262626251f15080000000000000000000000000000030e1a252f34332d22140400000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000510191e1f1b140900000000071a2d3e4f5f6d7983898c8c8a857c72677b8a8c8a878377624c37220d00001225374a5b6c7c8b989a8b8079787a838f998c7c6d5c4a392614010000192d42576b8094a8bbccdae1d0bba59079644f5c72889d947d68533e291300000000162b3f54687d92a69c888c89807a77777c85919f9d8f7d6c5a4734200d000000000a1f344a5f748ba09e8c7d70655e5c6069778798aa9886725f4b37230e001c31465b70869aa6917b66513c271d32475c72889da08b745f4a341f0a000000091a2a373f4c5a676a61564e46392b1b0a00000000001f344a5f737c80838ca09c87705b46301b060000000005111a1f1f1f1f1f1f1f1f1f1f1d17131b1f1f1f1f1f1f1f1f1f1c1409000000000000000000030e1720272d3234343434312c261f160c0100000000000000000000000000000000000000000000000000000000000000000000000000000006111a232a3034373737342e271d1104000000000000000000000000000000000000020f181e1f1c140900000000000000000000091a28343a3b3b3b3b3b3b3b3b3b3a3328190800000c1c2a353b3b3b3b393226170600000000000000000000000000000008131b1f1e1911050000000000000000000000000000000000000000000000010a11181d1e1a1207000000000000000000000000000000000000000000000000000000000000000000000000000000000000001024374a5c6d7d8b969d9c9694958f84778095a1918d8d77624c37220d00071b2e415467788a9b9d8b7b6d6563667080919b8b79685643301d0900001c31465b70869aafc3d7eae5d0bba59079644f5c72889d947d68533e29130000000011253a4e63778b9fa08b7b8893908d8d90989d968c8070604f3d2a1704000000000a1f344a5f748ba0a1938e83797372747c8896a59d8d7a6856432f1c0800182d42566b8094a894806a55412c1d32475c72889da08b745f4a341f0a000000000d22364a5c6a777d73685c4e4133251708000000001f344a5f748b9497999c9c87705b46301b060000000000000000000000000000000000000000000000000000000000000000000000000000000000000000040c13191d1f1f1f1f1c18120b03000000000000000000000000000000000000000000000000000000000000000000000000000000010d19242d363e44494c4c4c49423a2f2214040000000000000000000000000000000000000000000000000000000000000000000000142738464f5050505050505050504f453726130007182a3a48505050504e4435231100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005131e252b32332e2417080000000000000000000000000000000000000000000000010a1113120d04000000000000000000000000172b3f5366798c9ca59689827d80868f8980959f89777773604c37210c000e22364a5d718496a693806d5d514e5361738699978672604c39251100001f34495e73899eb3c8ddf2e5d0bba59079644f5c72889d947d68533e2913000000000b1f33485c708397a6927d7580878b8e8f8c8882796e61514231200d00000000000a1f344a5f748ba09c8786938d8888898f99a59b8e806e5d4b392613000013283c5065798da09984705b48352432475c72889da08b745f4a341f0a000000000f253a4f6479889186796c5f5143352617080000001f344a5f737c7d8284878983705b46301b06000000000009111516161616161616161614101516161616161616161616140e0500000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000006121f2b36404a52595e6162615d564c40322211000000000000000000000000000000000000070b0d0d0d0d0b050000000000000000001c304456636666666666666666666355432f1b061324364758646666666153402c180300000000000000000000000000040b101417191a191815110c0600000000000000000000000000000000000314233039404748413526140100000000000000000000000000000000000000000006131e25282721170b00000000000000000000001c31455a6e8396a99a88776d686b727b868f9a9f897362605544311d090014283d5165798da09f8a7663503f384456697d92a28f7c6854402c1804001f344a5f748ba0b5cbdff5e5d0bba59079644f5c72889d947d68533e29130000000004192c4054677a8ea09a87736b7276787877736e665c50423324130200000000000a1f344a5f748ba09c8775828b93989b9b9791887d6f6150402e1c0a00000d21364a5d7084979f8b776452423632475c72889da08b745f4a341f0a000000000e23384c5f708291978b7d6f6153443526170600001c3044566367696c6f7173706555422d1904000000000f1b252a2b2b2b2b2b2b2b2b2b29242a2b2b2b2b2b2b2b2b2b2b29221709000000000000000000000000070e13130f0800000000030c1213110a0100000000000000000000000000000000000000000000000000000000000000000a1723303c48535d666d7376777671695e50402e1b0700000000000000000000000000000004111b202222222220190f01000000000000001f344a5f737b7b7b7b7b7b7b7b7b725d48331e0d1f30425365767b7b7b705b46301b0600000000000000000000000710191f25292c2e2f2e2d2a26211a12090000000000000000000000000000000d2032414d545b5d5343311e151312100c070000000000000000000000000000000b1824303a3e3c34281c0e000000000000000000001f34495e73889da6927d6a5a53565f6974869b9f89735e4c443727150200182d42576b8095a999846f5b4733273a4e62778ca098846f5b47321e09001f344a5f748ba0b5cadff4e5d0bba59079644f5c72889d947d68533e291300000000001124374b5e708395a3907d6b5d616363625f5a52493e322415060000000000000a1f344a5f748ba09c87706e777d848686837c756b5f5142322210000000061a2e415467798b9c94827060524a47495c72889da08b745f4a341f0a00000000091c304152637384959b8e80716253443524130100142738464f5254575a5c5e5d5347372512000000000c1d2d393f4040404040404040403d373f404040404040404040403e35271706000000000000000000000d19232828241b0f03000815202628251e13070000000000000000000000000000000000000000000000000000000000010e1a2734414e5a65707982888c8d8c867c6e5d4a35200b00000000000000000000000000000313222e3537373737342c1f10000000000000001f344a5f748b9191919191919189735e48331e192b3c4e5f7183919187705b46301b06000000000000000000030f1a242c333a3e42434443423f3a352e251c12060000000000000000000000000014293d4f5f686f71604d3a292a292725201b140d040000000000000000000000091a2936424d5350463a2c1e100100000000000000001f344a5f748ba0a38e78634e3e424c5a6f869b9f89735e483327190900001c31465b70869aa994806a55412c1f34495d72889c9f8a75614c37230e001e33485e73889db1c6daece5d0bba59079644f5c72889d947d68533e291b1003000000081b2e415366788a9c9b897665544e4e4c4a453f362d211406000000000000000a1f344a5f748ba09c87705b636a6e6f6f6d6861584e4133241504000000001124374a5c6d7d8f9d8f7d70655e5c5e6372889da08b745f4a341f0a00000000001224344555667688989e8f8271625242301e0a00091a28343a3d3f42444749494136291a0800000000172a3b4a5456565656565656565651495356565656565656565656514535230f0000000000000000000d1c2b363d3d372d2115091726323b3e3a3025190e000000000000000000000000000000000000000001060a0d0e0f0e0d131f2b3845525f6b77838d959ca1a09c998b77624c37220d00000000000000000000000000000e2031404a4c4c4c4c483d2e1d0a0000000000001f344a5f748284878f9688868382735e48331e2537485a6b7d8fa09c87705b46301b0600000000000000000614202c3740484e5357585a5857544f4941392f24180b000000000000000000000000172c42576c7c837c6955423e3f3e3c39352f2920170d0200000000000000000013263847535f6863584a3c2e1f1000000000000000001f344a5f748a9fa38d77624d3a2f445a6f869b9f89735e48331e090000001e33485e73889da7917c67523d281b30455a6f8499a48f7965503b2612001b30455a6e8397aabdcfdde5d0bba59079644f5c72889d947d68533e362e211201000000112437495a6c7d8f9f9483726151423735302b231a0f0400000000000000000a1f344a5f748ba09c87705b5055595a5a58544e453b302315060000000000081a2c3e4f60707d8c988f827973727377808d9fa08b745f4a341f0a0000000000061627384859697a8b9b9f908270604d3a251100000b172025282a2d2f3234342e24180b00000000001d324659686b6b6b6b6b6b6b6b6b6257676b6b6b6b6b6b6b6b6b6b63523e2a1500000000000000000d1c2b3a4852524a3e3226192735444f534d42362b1e0e0000000000000000000000000000000000060e151b1f222324232225303d495663707c8995a0a39a928b878786715c48331f0a0000000000000000000000000000162a3d4f5d626262625b4c3a26120000000000001d314558676c6f768c947d706e6b66574430203143546677899bac9c87705b46301b0600000000000000061524323e49535c63686c6e6f6e6c69645d554c4135291c0d0000000000000000000000162b4054677b8f85715d51535453524e4a433c342a1f130700000000000000001a2e425564707d75685a4c3d2e1e0e000000000000001e32475c71869aa5907c69584c43445a6f869b9f89735e48331e090000001f344a5f748b9fa59079644f3a25182d42576c8297a8937d68543f2a1400162b3f53677a8ea0b1bfcbd4d0bba5907964535c72889d947d68534f4a3f301f0c00000007192b3d4f60708291a1908070615245382d231a130b00000000000000000a161f344a5f748ba09c87705b4640444444433f3932281e1205000000000000000f21314251606e7a868f958d8988898d939593998b745f4a341f0a000000000000091a2a3b4b5c6d7d8e9e9d8f7d68533e2813000000040c101315181a1c1f1f1a12060000000000001f344a5f748282828282828282826b5c72828282828282828282826c57422c17000000000000000e1d2b3a495866675c5044352837455361686054493c2c1a06000000000000000000000000000005101a22292f3437383a383738424e5a6774828e9ba39990867d767270716956422e190500000000000000000000000000001a2f44596d777777776955402b1600000000000016293b49535760768c947d685856534939282b3d4e60728395a7a69c87705b46301b0600000000000005152433424f5b666f777c82848484827d7871685e5347392b1c0d000000000000000000001124384c5f72868d796666686a6867635e5850473c31251709000000000000001d32475c71838f86786a5b4c3c2c1c0b0000000000001a2e42566a7d90a0998776695f58535a6f869b9f89735e48331e090000001f344a5f748ba0a59079644f3a25162b40566b8296ab96826b56412c17001024384b5e708293a1aeb9c1c6bba5907967686a72889d947d6967645d4e3b2813000000000e20314253637383929e8f807063564a40362e271d10010000000000091927333a4a5f748ba09c87705b46302f2f2f2e2b251e150c0100000000000000000314243342505d68737b82878a8b8b8886827d8483735f4a341f0a000000000000000c1d2d3e4f5f7080918d7d7062503b2712000000000000000000000000000000000000000000001f344a5f748b94979797979491826b5c72889397979797979692836c57422c170000000000000e1d2c3b49586776796e61534138465563717d71665a4936220d000000000000000000000000000b17222d363e44494c4e4f4e4c4b54606c7885929f9b90867c736a625d5b5c584b3a27130000000000020a0e0e0e0e0e0e0e0e1a2f445a6f868d8d826b56402b160d08000000000c1d2c373f4b60768c947d6853413e372b2637495a6c7d90a196919c87705b46301b060000000000001223334251606d79838b929693909092928d857b706457493a2b1b0b00000000000000000112213043576a7d9282777b7d807d7c78726c63594e42352718090000000000001b2f44576875859589796a5a4a3a291806000000000013273b4e607182909c95877b726c68666f869b9f89735e48331e090000001f34495e73899fa59079644f3a25152a3f546a8095ab98836c57422c1700081b2e4153647484919ca5acb1b4a5907d7c7d8082899e94827d7b796b56412c1700000000021324354555647382909d8f8273675c524a423a2e1f0f0000000000142637454e525f748ba09c87705b46301b1a1a1916110a020000000000000000000000061524323f4b565f676d7274747473706c696f72645644301c07000000000000000010203141526273847c6e60524433200c000000040c1011111111111111111111100b020000001f34495e737b7d82929682807c796a5c707a7d8294a9a291827c796b56412c1700000000000f1e2c3b4a596776868c80715d4848566472828f837865503b26100000000000000000000000000e1c2835404951585d61636463616067717d8a969c92887d736960574e484647443b2d1c0a0000000009151e2323232323232323232f445a6f869b97826b56402b23221c12050000000e1a24364b60768c947d68533e29232032435566788a9b9e8b869b87705b46301b0600000000000c1e2f415161707d8b96998d847d79797c838c988e827567584939281706000000000000000e1f303f4e5c6875898c8c90939494918d8780766c60534536271808000000000015283a4a5866768798887868584735241200000000000b1e3143546372808992988f87827d7b79869b9f89735e48331e090000001d32475c72879ca6917b66513c27152a3f546a8095ab98836c57422c17000011243546566573808992979c9fa09a93939495979a9999979491836c57422c1700000000000617273746556471808c989285796f665d564c3d2c1905000000001b30435562676a748ba09c87705b46301b060000000000000000000000000000000000000614222e39434c53595c5f5f5f5e5b57555b5d554738271401000000000000000002132334445566746b5e50423526160400000b17202526262626262626262626251f150800001b3043556266697485968c7968645d536166778a9ba695847268655d4e3b2813000000000f1e2d3c4a59687786958f7d6d5b495766748391948372614e39251000000000000000000000000e1d2c3946525c656d727678797876747a848f97918980756b60564d433b33303230281d0f000000000919273238383838383838383838445a6f869b97826b56403838372f2314040000000b21364b60768c947d68533e291b2c3e4f61728496a69482869b87705b46301b06000000000316293b4d5e6f808f9c98897b70696565686f7a8796948676675746352311000000000000091b2c3d4e5d6c798691a0948a84808083889193897d7163544536251403000000000b1c2c3a485869798b9786756453412f1d0b00000000021425364554616c767d868b9094939090909f9f89735e48331e090000001b30455a6f8499a8937d68543f2a162b40556a8095ab98836c57422c170000061828384755616c757d8387898b8b8b89888786868484848484836c57422c17000000000000091928374654616e7a8691978c8279716a5b4834200b000000001f34495e737c80828ca09c87705b46301b060000000000000000000000000000000000000004101c2730383f44474a4a4a4946424046484337291a09000000000000000000000516273748575f5a4e40322517080000091a28343a3b3b3b3b3b3b3b3b3b3b393226170600142637454e515667788998867463524f60728495a79988766655504b3f301f0c000001101e2d3c4b5968778795948371604f5967758493978776655544321f0b000000000000000000000b1c2c3b4a57646f7982878c8e8f8f8c898f8f88837c756c62594e443a30271f1b1d1b150c0000000002152737454d4e4e4e4e4e4e4e4e4e4e5a6f869b97826b564e4e4e4b4132210e0000000b21364b60768c947d68533e2927384a5b6d7d90a29c8a76869b87705b46301b06000000000d203346586a7c8e9e9b8a796a5e555050545d697788999586756452412e1c0900000000011426384a5b6b7b8a97a39b86776f6b6a6d747d8b998f827263534332200f00000000000e1c2a3a4b5c6d80919382705e4c3a2815020000000008182736444f59626a70767a7d828384889b9f89735e48331e09000000172c40556a7d93a797826d58432f1b2d42576c8297ac97826b57412c170000000a1a2937444f5962696e7274747474747371706f6e6e6e6e6e6e65533f2b16000000000000000a19283643505d68737d888f968d8677624c37220d000000001f344a5f748b9497999c9c87705b46301b060000000000000000000000000000000000000000000a141c242a2f3234343434312d2c31332f26190b00000000000000000000000009192a39444a473d30221407000000142738464f505050505050505050504e443523110009192733393c495a6b7c8d92826f5e5a6c7d90a29d8c7a6a59483b372e2112010000101f2e3c4b5a6977879698877665535a687786949b8a79685847372615020000000000000000000618293a4a596875828c95978e888686888d958f857a6d61594f463b31271d140b0500000000000000000d1f3244556163636363636363636363636f869b97826b636363635e503e2a160000000b21364b60768c947d68533e2933445667798b9ca593806f869b87705b46301b060000000115283c4f6275889aa3907d6c5c4d413b3b404b596a7b8da09382705e4b392612000000000a1d30435567798a9aa393878c7864565559616d7a8b9b918271614f3e2c190700000000000c1c2d3e4f6174879a8e7c6a5744311e0b000000000011222f393e464f565c6166696b6e6f869b9f89735e48331e0900000012273b5064778c9f9b87725e4b372630455a6f8499a994806a543f2a15000000000b1926323d464e54595c5f5f5f5f5f5e5c5b5a585858585858544736241000000000000000000a1826333f4b56616a737b8288826d5b48341f0b000000001f344a5f737c808284878982705b46301b0600000000000000000000000000000000000000000000010910161a1d1f1f1f1f1c19181c1e1b130800000000000000000000000000000c1b283134322b1f1204000000001c30445663666666666666666666666153402c1800000a161f242b3c4d5e6f80908d7c6a67788a9ca190806e5d4c3b2a221b110300000d1e2e3d4c5a697888969d8c7a69585b6a7887959e8e7c6c5b4b3a2a1908000000000000000000001123354758687786939f91857a73706f7279838f978c7d706151402f1f140a0100000000000000000000172a3d4f6173787878787878787878787878869b978278787878786d59442f1a0000000b21364b60768c947d68533e2d3e5061738597a89987756f869b87705b46301b06000000081c3044586b8092a59a8773604e3e2f26262d3c4c5e7084979f8d7a6855422e1b0700000013263a4d60728597a89785798d806b5844454f5c6c7d90a090806d5b493623100000000000000f203244576a7d90998774614e3b281502000000091d2f404d53504642484d5154575a6f869b9f89735e48331e090000000c2135485c6f8396a28e7a675544393b495e72889da5907b66513d281300000000000915202a323a4044474a4a4a4a4a4847464443434343434340372919070000000000000000000815222e39444e5760676d727364513e2b1805000000001c30445663676a6c6f7173706555422d1904000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000a151c1f1e180e0100000000001f344a5f737b7b7b7b7b7b7b7b7b7b705b46301b000000030b0f1e2f4051617283948876728596a594837261503f2e1d0d0800000000172a3c4c5b6a788897a190806e5d5d6b798897a190806f5f4e3d2d1c0c00000000000000000000081b2e405364758696a2918273675f5b5a5e65707d8f9c8f806f5e4d3b29170500000000000000000000001d3246596c7d8f8f8f8f8f8f8f8f8f8f8f8f909f9b8f8f8f8f8f866f5a442f1a0000000b21364b60768c947d68533e394a5c6e8091a39e8d7b696f869b87705b46301b060000000e22374b5f73889ba7927d6a5744312011111e2f4154677b8fa39885715d4a36220e0000061a2e4256697c90a29f8c79728688735f4b373e4e607286999c8b786653402c190500000000000315273a4d6074889b917d6a5744311d0a0000001225394c5e6863595149444141485d72879c9d88735e48331e0900000005192d405366788a9b97857261544e505864778ca1a18c77624d39240f000000000000030d171f262b2f3234343434343332302f2e2e2e2e2e2e2c24190b000000000000000000000004101c27313b444c53595d5f564634210f0000000000142738464f5254575a5c5e5d5347372512000000000000000000000000000000000000000000000000060d1216191a1b1a18140f080100000000000000000000000000000000000000000000000000000000000000001f344a5f748b919191919191919187705b46301b000000000001112233445465768794827d90a29887766554433221100000000000001d32465a6a798897a6958472615d6c7b8a98a4948372615141301f0f00000000000000000000001124374a5d708294a496847262554b46454953607082929d8d7c6a594734210e00000000000000000000001f344a5f74899c9788898b8c8c8d8f90919394a1a09798999a9b866f5a442f1a0000000b21364b60768c947d68533e455668798c9da492826f5d6f869b87705b46301b0600000013273c5165798fa3a18c77634f3b271402001124384c6074899da18d7965513d281400000c2135495d718699aa96836f6a7d8f7a67533f314356697c91a495836f5c4834200c0000000000000b1e3144586c80949b8874604d3925110000081b2e4154687c766d655d5956565965778ca09a86705b46311c0700000000102336495b6c7d8e9c9080726863656a758293a79b87725d49341f0b0000000000000000030b11161a1d1f1f1f1f1f1e1c1b1a19191919191917110700000000000000000000000000000a141e2830383f44494a44382817050000000000091a28343a3d3f42444749494135291a080000000000000000000000000000000000000000000007111921272b2e2f302f2d29231c140a0000000000000000000000070f141515151515151515151515140f070000001f344a5f748284868da19d8a858380705b46301b00000000000004152637475869798b8d8b9c9c8b7a695847362514040000000000001f344a5f748998a6998876665562778b99a8978775655444332312020000000000000000000004182c4053677a8d9f9f8c796655443730303642526375889b9a887663513e2a1703000000000000000000001d3246596c80929987757476777778797b7c869b978283848686866f5a442f1a0000000b21364b60768c947d68533f5162748697a9988674635a6f869b87705b46301b06000000172c41556a8094a99c88725d4934200c0000091d31455a6f8499a995806b57422e19040011263b4f64788da1a48f7b6763778b836e5a4633394d61758a9e9f8b77634f3b27120000000000000215293c5064788da1907c6855402c1804000d22374b5e7185898278726e6b6b6e758395a895826c57422e19040000000007192b3d4e5f6f7d8b9790857c7879808893a0a794806b57432e1a060000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000020b151d242a2f343430271a0b000000000000000b172025282a2d2f3234342e24180b000000000000000000000000000000000000000000000d19242d353b4043444644423d3730271d120600000000000000000d1a23292a2a2a2a2a2a2a2a2a2a2a2923190c00001d314558676b6e748ba09c87706d6b6555422d190000000000000008192a3a4b5c6d7d909da18f7d6d5c4b3a291808000000000000001f344a5f748ba0a38e7b6a594c62778da3a08b796858473726150500000000000000000000000b1f33475b6f8397aa96836f5c4937271c1b243445586b7d92a693826d5a46331f0b00000000000000000000172a3d4f6275899c93826f6062636364666f869b97826c6e6f70716a57432e190000000b21364b60768c947d68534b5d6e8092a39e8c7a68575a6f869b87705b46301b060000001a2f44596e8499ad99846e59442f1b06000002172c41566b8095aa9a86705c47321d0800162b4054697d93a79e8a75605b6f838a76624e3a32465b6f8599a7937d6a55412d18030000000000000d2135495d71869a9884705b47331e0a000f253a4f64798994948d87838282838993a19e8d7965523d29140000000000000e20314151606d79848d93918f90938d8d9f9f8c7764503c28140000000000020506060606060607080a0a0b0b0a090704000000000000000000000000000000000000000000000000000000010910161b1f1f1c1409000000000000000000040c101315181a1d1f1f1a110600000000000000000000000000000000000000000001101e2b3640495055585a5b5a57524b433a2f2316080000000000000b1c2b373e3f3f3f3f3f3f3f3f3f3f3f3e362a1b090016293b4953565f748ba09c87705b56524737251200000000000000102031425363748696a0948c7b6a5a4938281707000000000000001f344a5f748b9da6948371604f62778d9ea49282705f4e3e2d1c0b00000000000000000000001025394e62768b9fa48f7b67533f2c1a090616283b4f63778ba09d8a76624e3a2611000000000000000000000d203346596c80929e8c7966534e4e4f5a6f849997826b585a5b5c594c3b28140000000b21364b60768c947d685357697a8c9ea391806e5c4b5a6f869b87705b46301b060000001d32475c71879cab96826b56412c170200000013283d52677c92a79f8a745f4b35200b001a2f44586d8397ac9a86705b54687b907d6955422e41566b8095aa9985705b46311c07000000000000061a2e43576c82959f8b76614d38240f000d22374b5d6b76828a9299989797989da09a8f806f5d4a36220f00000000000002132332424f5c6770787d8283837d798c9f95836f5c4835210d000000020e161b1b1b1b1b1b1b1d1e1f1f20201f1e1c1915100a03000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000f1f2e3c48535d646a6e6f706f6b665f564c41342617080000000000152839495354545454545454545454545248382714000c1d2c373e4a5f748ba09c87705b463d35291a080000000000000c1d2d3e4f60708292a394828e8977675646352514030000000000001e33485d6f7d8e9da18f7d6d5b6071808f9e9f8f7d6c5c4b3a29180700000000000000000000152a3e53687c91a69f8a75604c38241000000c2033485c71869aa5927d6954402c17020000000000000000000316293c4f6275899c9683705d4a3943586e849997826b56444647453c2e1d0b0000000b21364b60768c947d685363758798a99786736251445a6f869b87705b46301b060000001e33485e73899ea9947d69543f2a150000000011263b50667a90a5a28d77624d38230e001c31475c70879bac97826c574c60748885715d49353d52677c92a79e89745f4a35200b0000000000000014293d52677b91a5907b66523d281300081b2e3f4e5a646d767d858b8f90908f8c867c706151402d1a0700000000000000051423313e4a545d64696c6c6c6f82959c8b786553402c190500000313202a303030303030303233343435353433312e2a251e170e040000000000000000020e161b1b1b1b1b1b1b1b1b1b1b1b1a140a00020d151a1b1b1b1b1b1b1811070000000000071015181a1a1a1a1714110c060000000000000000000000000000000b1c2d3d4c596670787d83868684827a73695e524435261706000000001b304457666a6a6a6a6a6a6a6a6a6a6a6656432f1a00000e1a24344a5f748ba09c87705b463022180b00000000000008192a3a4b5c6d7d8fa099887683948574635342322111030000000000192d4051606f7d8e9d9c8a7967566270808f9d9b8a7968584736251404000000000000000000192d42576c8296ab9b86705c47321d09000004192e42576c8296ab98846f5a45301b07000000000000000000000d203346596c8092a08d7a67544143586e849997826b5640303230291e10000000000b21364b60768c947d685d6f8292a49c8b79675644445a6f869b87705b46301b060000001f344a5f748ba0a9947d68533e2913000000000f253a4f64798fa4a48f78644f3a240f001e33485e73889daa95806a5445596d828d7864513d3b50657990a5a18c77624c37220d000000000000000f24394e63788da294806a55402c1600001121303c47515a636a7076787b7a7976716a5f524334221000000000000000001123323f4b575f5a50545757687a8c9f91806d5b493623100000000f21313d454646464646464748494a4b4b4a4846433f39322a21160a0000000000000313202a3030303030303030303030302e271c0e1320292f3030303030302d2418090000000c19242a2d2f2f2f2f2c2925201a130b0100000000000000000000000517293a4b5b6977838c9398939193958f867c70625344342412000000001e33485e738080808080808080808080725c47321d0000000a1f344a5f748ba09c87705b46301b06000000000008121926364758697a8b9c9f8d7c6a768892827060503f2e1e1710050000001122324251606f7d8e9d97857362526170808e9c9787756454433221110000000000000000001b30465b70869aac97836d58432e1904000000152a3f53687d93a89d88735e49341f0a000000000000000000000316293c4f6276899c9784715e4b43586e839897826b56402b1c1b160c00000000000b21364b60768c947d686a7b8d9fa291806d5c4a39445a6f869b87705b46301b060000001f344a5f748ba0a9947d68533e2913000000000e23384e63788fa4a59079644f3a250f001f344a5f748a9fa9947d68533e5165798d806c5844394e63788fa4a48f78634e39240f000000000000000c21364b60758ba098836e58432e19000003121f2a343e474f565c6164666664615d564d423425160500000000000000071b2e41505d69746b5b4a546475869895857361503e2b1906000000192c3e4f595b5b5b5b5b5b5c5d5e5f5f5f5f5e5b58534e463d33271b0c00000000000f21313d454646464646464646464646433a2c1b23313d44464646464646413627160400091b2a373f4344444444423e3a352e271e140a000000000000000000000e21344658697988959d8f857d7b7d848e998e8271625241301e0b0000001e33485e738994959595959595959488725c47321d0000000a1f344a5f748ba09c87705b46301b06000000000b1a252d33435465768798a492826f5e6a7b8d8f7d6e5d4c3c312b2216070000051423324251606f7d8e9d92806f5d51616f7d8d9c94837161503f2e1e0d00000000000000001e33485d72889dab95806a55402b160100000012273c51667b91a6a18c76614c37220d00000000000000000000000d203346596c8093a18e7a685542576c839897826b56402b1601000000000000000b21364b60768c947d68748799a8968573614f3e2f445a6f869b87705b46301b060000001f344a5f73899fa9947d68533e2913000000000f24394e63788fa4a59079644f3a250f001f344a5f748ba0a9947d68533e4a5d71868873604c384e63788fa4a59079644f3a250f00000000000000091f34495e73899e9b86705b46301b000000010d18212b333b41474d59636a625448423a3024160700000000000000000c21364a5e6e7a877868576372839398887766554432200f000000001e33485c6d7070707070707272737474747473706d68615a5045382a1b0c00000000192c3e4f595b5b5b5b5b5b5b5b5b5b5b574a392631414f585b5b5b5b5b5b534533200c001427384853585a5a5a5957534f49423a31271c11040000000000000004182b3e5163758797a08f8071696668707c8c9d9082705f4d3b28150200001e33485d727c80828597aa9584827d7b705c47321c0000000a1f344a5f748ba09c87705b46301b060000000619293742475061728394a598867463525d6e80918c7b6a5a4a453f342514020000051423324251606f7d8e9d8d7b6a5851606e7d8c9b90806e5d4c3b2b1906000000000000001f34495e73899fa9947d68533f2914000000000f253a4f647990a5a38f78634e39240f000000000000000000000003172a3d5063768a9d9885725f4c576c838486826b56402b1601000000000000000b21364b60768c947d6d8092a49c8a78675544322f445a6f869b87705b46301b060000001e33485d72889daa95806a543f2a150000000010253b50647990a5a38f78634e38230e001f344a5f748a9fa9947d68533e42566a7d8f7b67533f4e63788fa4a59079644f3a250f00000000000000061d32475c72889d9c87715c47321c0000000000050e1a283644515e6a7680726355422e1e13060000000000000000000c22374c6175859586756673829198897969594837261503000000001f344a5f748787878787878888898b8b8b8b8886827c756d625648392a1a080000001e33485c6d70707070707070707070706855412c3d4e5f6c707070707070634f3b2611001a2f4356666c6f6f6f6e6c68635d564d443a2e2215070000000000000b1f33475a6d8293a5958370615551545e6e80929f8e7c6a5744311e0a00001b2f435563676a6c8297a9947d6b69666153412d190000000a1f344a5f748ba09c87705b46301b060000000f233647555c606e8090a19d8c7968574c54627385958977675e5a5243311e0a000000051423324251606f7d8e9988766453505f6d7c8b9a8c7b6a594835210d000000000000001f344a5f748ba0a9947d68533e2913000000000e23384e63788fa4a59079644f3a250f0000000000000000000000000d2034475a6d8294a28f7b695653646c6f707267533f2a1500000000000000000b21364b60768c947d778a9ca1907d6c5b4937262f445a6f869b87705b46301b090000001b30455a6f859aac97826c57422d180300000013283d52677c91a7a18c77624c37220d001e33485e73889da994806a543f3b4e62768a836f5b474f64798fa4a48f78634e39240f00000000000000001c31465b70879c9d88725c47321d00000000000c1b29384654616f7c889082715c47321c0700000000000000000000091e32465767778893837784919789796a5b4b3b2b1a0900000000001f344a5f748b8e90959c9c948d8b8b898b8c8f9497918980746657483726140200001f344a5f7487878787878787878787846e584335485a6c7d87878787877c67523c2712001d32475c728285868684827c77716a60574c4033251607000000000011263a4e63768a9ea18d796553423c41506275899d9a8874614d3925110000132637454f52566b8297a9947d6854514e443524110000000a1f344a5f748ba09c87705b46301b06000000152a3e526570757b8d9da6918075716a596470737789968577736f614e39240f00000000051423324251606f7d8e9483715d484f5e6c7b8a99887765503b2610000000000000001f344a5f748a9fa9947d68533e2913000000000e23384e63788fa4a59079644f3a250f00000000000000000000000004172a3e5164778b9e9986725f4d53575a5b5c574937241000000000000001111e28364b60768c947d8395a7958472604f3d2c282f445a6f869b87705b4630251b0d0000182d42576b8295aa99846f5a45301b07000001162b40556a8094a99e89735f4a35200b001c31465b70869bab96826b564133475b6f838a76624e51667b91a6a28d77624d38230e00000000000000001c32475c70879c9d88725c47321d000000000a1a2a3947566472808d9a8c7b6b5945301b060000000000000000000315263540495969798a9089959386786a5b4c3d2d1d0d0000000000001f34495d7076787b899fa08b787674747476798088939d928575665543311e0b00001f344a5f748b8e90959c9c97918f8d846e58433f5164778a9b9c9c948f7c67523c2712001d32475c72888f8e8f9296928d867d73695d51433425160500000000172b4054697d92a69a86715d4936273246596d8397a4907c6854402b170200081928333a40566b8297a9947d68533e39322617060000000a1f344a5f748ba09c87705b46301b06000000162b40566b828a8f99a0a0968e8a87725c6a80898c90a0938d887b66503b26110000000000051423324251606f7d84796d5b47404e5d6c7a887c71624e3a2510000000000000001e33485e73889da9947d69543f2a15000000000f253a4f64798fa4a48f79644f3a250f000000000000000000000000000e2134485b6e8295a28f7c6956434244464743392b1a080000000000000e1f2f3b424b60768c947d8d9f9b8977665443312f3b42455a6f869b87705b4641382b1b090014293d52667b8fa49d88735e4a36210d0000081c3045596e8398ad9985705b46311c0700192e43586c8297ab99846e59442f3f53677b8f7d6a5654697d93a89f8a745f4b35200b00000000000000061d32475c72889d9c87705b46311c000000061728384857657483909e8f7d6e5d4d3c2916010000000000000000000c1f3244535b636d7782949d8f8275685a4c3d2e1f0f000000000000001a2e41515d616373899fa08b74605f5f5f60656b758393a3948472604e3b281400001f34495d7076787b899fa18c7b7977756a5742485b6e8295a7a29082797464503b2611001c32475c70797878797c8288919990867b6f615243342312010000001a2f44596e8398ab96826c57432e1a2b3f54687d93a898836e5a45301b0600000a16202b40566b8297a9947d68533e291f1508000000000a1f344a5f748ba09c87705b46301b06000000162b40566b828b8b8b8b8b8b8b8b88725c6a808b8b8b8b8b8b8b7b66503b2611000000000000051423324251606f72675c4f3e303f4e5c6b746a5f5445331f0b000000000000001c31475c70879bab96826b56412c170100000011263b50667b90a5a38d78634e38230e0000000000000000000000000005182b3f5265798ca0998673604d3a2f31322f271b0d00000000000000182b3d4d575b60768c978b98a18f7d6b5a48372b3d4d575a5d6f869b87705d5a5549392613000f23384c6074889ca28d7864503c291605001124374b5f73889da793806a56412d180300152a3f53687c91a59c87725d4934384c60738886715d596d8397ac9a86705c47321d08000000000000000a1f34495e73899e9b866f5a45301b000000102335465666758492a092827060503f2f1e0c0000000000000000000011263a4f627077808a9492908d7c6c5c4c3c2e1f10010000000000000011233341494c5e73899fa08b745f4a4a4a4c50586475879aa2907d6a57432f1b06001a2e41515d616373899fa18c766462605a4d3e5164778b9ea99684726560574735210d00192d41536164636364686d757d8996998d8070615141301e0c0000001e33485d72879ca8937d68533e2914263b50657990a59d88735e49341f0a00000004162b40566b8297a9947d68533e29130200000000030f1f344a5f748ba09c87705b46301b06000000152a3f5468747474747474747474746e5b67747474747474747473634f3a2510000000000000000514233242515d5e55493e3121303e4d5a5f584d4236271603000000000000001a2f44586d8397ac98836e58442f1a0500000014293e53687c93a7a08b76604b36210c00000000000000000000000000000f2336495c708397a3907d6a5744311e1d1a140a00000000000000001e32475a6a7073768ca1a0a69483715f4e3c2b32475a6a6f7275869b8775726f6756422d1800091d3145596c8093a594806c5846332316151e2e4053667a8fa3a08c7864503b271300001025394e62768a9ea18c77634e3b3044586c808d79655f73889ca995826c57422e1904000000000000000c21364b60758ba098836e58432e19000000172b3f5264748494a2958573635342322111000000000000000000000012273c52677b8b938f877d82918a79695947331f0a00000000000000000515232e34485e73899fa08b745f4a3434373c46576a7d92a79a87725e4935200b0011233341494c5e73899fa18c76604d4b473d475a6d8295a89e8c7967554b44392a180500112435444d4f4e4e4f5359616b7786959e8f80705f4d3b29160300001f344a5f74899fa6917b66503b261124394e63788fa4a08b76604b36210b00000000162b40566b8297a9947d68533e2913000000000213212c344a5f748ba09c87705b46301b060000001125394a595f5f5f5f5f5f5f5f5f5f5c50585f5f5f5f5f5f5f5f5f564634200c00000000000000000514233240484942372c2113202f3c464a453b302518090000000000000000162b3f54697d92a79b87715c48331e0a000004192d42576b8296ab9c88725d48331e090000000000000000000000000000061a2d4053677a8ea19a8774614e3b281502000000000000000000001f344a5f7486888b92a4a49a8976655342301f344a5f7485888b8f9e8f8b88846f5a442f1a000216293d506376899a9c8875635141332b2a2f3c4c5d708396a99683705c4935210c00000a1e33475b6e8295a6927d6a5643303d5064788d826d677a8fa3a28e7965513d291400000000000000000f24394e63788da395806b56412c170000001a2f445a6f8292a29888776656453524140300000000000000000000000f24384c607388837b736a7384948876614c37220d00000000000000000005111e33485e73899fa08b745f4a341f22283b4f63788da3a18d77634e39240f000515232e34485e73899fa18c76604b36323d5063768a9ea694826e5c4a3731281b0c000006172631383a38383a3e454e5a677687989e8e7c6a5846331f0b00001f344a5f748ba0a59079644f3a250f23384d62778da3a28d77624c37220d00000000162b40566b8297a9947d68533e2913000000000e20313e484c5f748ba09c87705b46301b06000000091b2d3b464a4a4a4a4a4a4a4a4a4a483f454a4a4a4a4a4a4a4a4a44382817040000000000000000000514222d33342f251a0f03111e2a323431291e130700000000000000000011263a4f63778ca0a08b76614d39251100000c1f33475c70869aab97836d59442f1b060000000000000000000000000000001124374a5e718598a3917d6a5845321f0d000000000000000000001f344a5f748b8f8f8f8f8f8e7c6b594836262f354a5f748b8f8f8f8f8f8f8f866f5a442f1a00000d203346596b7c8e9e92806f5f5045403f434c5a6a7b8da09d8b796653402d1906000004172b3f5265788b9d998672604e3d35495d71858874718497aa9986725e4b36220e000000000000000014283d52677b91a6917c67523d2814000000182d4256677584928b7a69594838271706000000000000000000000000091d3044586b756f6760576676877a6d5d4935200b00000000000000000000001e33485e73899fa08b745f4a341f0d21364b60768ca1a5907b66503b2611000005111e33485e73899fa18c76604b363346596c8093a69c897664513f2d1d150a0000000008141e23252323252a313c4958697a8da09a8875624e3b271300001f344a5f748ba0a59079644f3a250f23384e63788fa3a28d77624c37220d00000000162b40566b8297a9947d68533e291300000000162a3d4f5c6166748ba09c87705b46301b06000000000f1d2a3234343434343434343434332d3134343434343434343430271a0b00000000000000000000000511191e1f1b13080000010d171d1f1d160c01000000000000000000000c2034485c708497a5917c6854412e1c0d0a17283b4e63768b9fa4907c68533f2a1601000000000000000000000000000000081b2e4255687c8fa39b8875614e3c2916030000000000000000001f34495e7278787878787878705e4d3c2e39434a4c5e727878787878787878786d59442f1a00000417293c4d5f7080909e8d7d6e62595454575f6a7888999f8f806d5c4a372411000000000f2336495b6e8091a2907d6c5b4d414155697d907c7c8fa1a08f7c6956432f1b070000000000000005192e42576b8095a18d77634e39251000000013263949586573827d6d5c4c3b2b1a0a000000000000000000000000000115283b4d5c605b534c485869746a5c4f3f2d1a0600000000000000000000001e33485e73899fa08b745f4a341f1921364b60768ca1a7917b66503b2611000000001e33485e73899fa18c76604b363d506376899ca492806c594734220f02000000000000020a0e0f0e0e10161f2b3a4b5d708498a5927d6a56422d1904001f34495e73899ea5907965503b2610253a4f64798fa4a08b76604b36210b00000000162b40566b8297a9947d68533e2913000000001b3045596d767b808ba09c87705b46301b0600000000000c171d1f1f1f1f1f1f1f1f1f1f1e191d1f1f1f1f1f1f1f1f1f1c1409000000000000000000000000000000000000000000000000000000000000000000000000000000000005192d4154677a8da09884705d4b3a2b201f263446586a7d92a69c8875614d39241000000000000000000000000000000000001226394c6073869aa5927d6b594633200d0000000000000000001b2f43546163636363636363605853453f4b565e6262616363636363636363635e503e2a160000000c1e3041526271828f9b8d80756d6a696c727c88979c8f827061503e2c1a070000000006192c3e50627384949b8a796a5e544f4f62758a838a9ba39382705f4c39261300000000000000000c2034485d71869a9b87725d4935200b000000091b2b3a48556371705f4f3e2e1d0d0000000000000000000000000000000c1e2f3e484b4640383a4b595f594c3e3121100000000000000000000000001e33485e73899fa08b745f4a342c2e313b4f64788ea3a5907965503b2610000000001e33485e73899fa18c76604b3647596c8093a6998774624f3d2a17050000000000000000000000000000020d1c2e4155697d92a79a86705c47321e09001d32475c70869ba7927c67523d2813283d52677b91a69e89735e49341f0a00000000162b40566b8297a9947d68533e2913000000001b30465b708790959ba89c87705b46301b060000000000000000000000000000000000000000000000000000000000000000000000000000000000010b12161616161616161616161616161616161616130c02000000000000000000001125384b5e708394a08d7a6958493c35343944526375889ba391806c5945311e090000000000000000000000000000000000091d3043576a7d91a49b897562503d2a17040000000000000000132536444c4e4e4e4e4e525c676e6351505c68727777746c60504e4e4e4e4e4e4b4132210e00000001122334445362707d8993928983807d82868f99948a7d7062534332210f0000000000000f213344556675859298897b70686464676e839599a09385746453412f1d0a000000000000000014283b4f63778ca094806c57432f1b06000000000d1c2a3845535e5d5141312010000000000000000000000000000000000111202c3436322b242d3b464a453b2e2113030000000000000000000000001e33485e73899fa08b745f4a424243464c596b7d93a79f8a76614d38230e000000001e33485e73899fa18c76604b44526476899ca18f7c6a574532200d000000000000000000000104040100000011263b5064798fa49f8a74604b36200b00192e43586c8295aa95806b56412d192d41566a8094a99985705b46311c0700000000162b40566b8297a9947d68533e2913000000001b30465b70878e9093959887705b46301b060000000000000001070b0b0a060000000003080b0b09050000000004090b0b08040000000000000004121e272b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b28201405000000000000000000081b2e4153657688989887766659504a494d5561708292a5978673614f3c29160200000000000000000000000000000000000114273a4e6175889ca592806c594634210e00000000000000000818263138383838394e616f79806c59606e7a868d8d897d6e5d4c3938383838372f231404000000000616263544525f6b7680878d91949494918d8882776c605244352514030000000000000415273848576674828d988d847d79787b828b99998e82746656463624120000000000000000091c3043576a80939f8c7864503d29140000000000000c1a283642494941332313020000000000000000000000000000000000020f191f201d17101d2a323431291d1003000000000000000000000000001e33485e73899fa08b745f585757585a606977889ba594826f5b47331e0a000000001e33485e73899fa18c76605a5a5f6f8293a59583715f4d3a2815030000000000000000020d151919150e08030e23384e63788fa4a28d77624c37220d0015293e52667a8ea29985705c48352834485c708599a793806a56412d180300000000162b40566b8297a9947d68533e2913000000001b3045596d76787b7d80837c6d5a45301b060000000000000c151c20211f1b140b030e171d20211e1912080611191e21201d18100500000000001122303b4040404040404040404040404040404040403c322313010000000000000000001124364758697989979485776c635f5e616872808f9f98897868564432200d000000000000000000000000000000000000000b1e3245596c8093a69c897663503d2a1703000000000000000009151e232323263b5065798c89766b717d8c989491978d7b6956422f232323221c120500000000000008172634414e59636c72787c7d807d7c78736d645a4f42352617070000000000000000091a2a394856636f7a858c92928f8f9196928f8d7b706456483928180600000000000000001326394c5f73879a96836f5c4935210d000000000000000a18252f34342e2315050000000000000000000000000000000000000000050a0b0903000c171d1f1d160c0000000000000000000000000000001e33485e73899fa08b746e6c6c6c6e6f747b8795a195877665523f2c1804000000001e33485e73899fa18c766f6f6f6f7d8e9f978876665342301d0b0000000000000000071320292f2f29221c1816253a4f64798fa4a38d77624c37220d000f23374b5e7285979f8b776452433d425164778b9f9e8b7763503b27130000000000162b40566b8297a9947d68533e291300000000162a3d4f5c606366686b6e6b5e4f3e2b16020000000003111e28303536342f271d14202a323636332e251a17232d333636322b221709000000081c2f404e5556565656565656565656565656565656564f41301e0a00000000000000000006182a3b4b5b6a788692958980787473767c85909e9387796a5a4a39271503000000000000000000000000000000000000000216293c5063768a9ea693806d5a46321d0800000000000000000002090d0e0e22364b5f7286958682848f9a8d807c859586725e4a36210e0e0d08000000000000000000081624303c4650585e63696e6a6867645f5851473d31251708000000000000000000000c1b2a3846525d6770777d82848684827d7d92806c5846392a1b0b00000000000000000c1e304255687b8f9f8d796653402d1906000000000000000007121b1f1f1a1105000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001e33485e73899fa08c84848383838486898f99958e847768594735231000000000001e33485e73899fa28d86868686868d9c958678695a4d3e2f1f0e00000000000000061625313d44443d36312d2c2f4053687c92a7a08b76604b36210c00081b2f425567798c9c94827061565255606f8294a594826f5b4834200c0000000000162b40566b8297a9947d68533e2913000000000e20313e484b4e595f605f594f4131210e000000000011212f3b444a4b49433a2e23323d464b4b4841372b283540484b4b473f3427180900001225384c5e6a6b6b6b6b6b6b6b6b6b6b6b6b6b6b6b6b6b5f4d392510000000000000000000000c1d2d3d4c5a6874808991938d8a898c9098928a8276695b4c3d2c1b0a0000000000000000000000000000000000000000000d2034475a6e8295968c82745f4a341f0a00000000000000000000000000071b2f4356687a8b989698978a7c6e6777898978634e38230e0000000000000000000000000006131e2a333f5365707c82776c60534a443d342b2014070000000000000000000000000c1b2835404b545d63686c6e6f6e6c68768a8873604c382511000000000000000008192a3b4d5f7285989583705d4a3724110000000000000000000000000000000000000000000000000000000000000000000000000000000000000b151b1e1e1e1e1d180f04000000000000000000000000001e33485e73899fa7999595959595979a898786827a7166594a3b2a180600000000001e33485e73899fa69590909090909196978a82776b5c4d3d2c1a08000000000000122434434f5858514b464240444d5c6f8397ab9c88725d49341f0a00001326384a5c6d7d8e9c8f80726a676a717d8e9e98887664513f2c18050000000000162b40566b8297a9947d68533e2913000000000213212c3a4c5d6b7476746c5f4f3e2b18040000000b1d2e3f4d585f605e574c3e32424f5a60605d54493a3746535c60605b524536261502001a2e4154677b828282828282828282828282828282827c68533d281300000000000000000000000f1f2e3c4a56626c757c8387898a8987837d776e64584b3d2e1f0e0000000000000000000000000000000000000000000004182b3e5265798b84796f665845311c0800000000000000000000000000001326394b5c6c7a868b8a85796c5e5a6d82766b5d4a36210c0000000000000000000000000000010c172c42576c808e958a7d70645648392a1b0e0200000000000000000000000000000a17232e3841484f5457585a58575b6f838f7b6854402b16010000000000000916263647586a7c8f9b8a776553402d1a0700000000000000000000000003080e1213110a000000000000000000000000000000000000000000000d1c283033333333322c2114040000000000000000000000001e33485e73899fa08b808080808083888f8982776b5e54493b2c1d0c0000000000001e33485e73899fa18c79797979797c828c9895897a6b5a493725120000000000001a2e4152606c6c655f5a5756585f6a7a8c9fa895826d59442f1b060000091b2d3e4f60707d8c979086807c80858f9c958879695847352210000000000000162b40566b8297a9947d68533e2913000000000003192e4256697b888c897d6d5a47331f0a00000014273a4c5d6a737672695c4d3f50606d7476716658484455647076746f635444321f0c001f34495d718597979795979797979797979797979795806a55402b16000000000000000000000001101e2c3945505961686e71737473726e69635b51473a2d1f100100000000000000000000000000000000000000000000000f2236495d6f7470665c52483a2815020000000000000000000000000000091b2d3e4e5d6971747470675b4e51626b63594e3f2e1b070000000000000000000000000000000014293d50617082919b8f82746657483929170500000000000000000000000000000005111b252d343a3f424344434253677b867d6c57422c170200000000000818263444546576889a8f7d6c5a4836231100000000000000000000040c12171d222728251d120400000000000000000000000000000000000205071a2b394448484848473f32210f0200000000000000000000001e33485e73899fa08b746a6a6a6a6d737d8d95897b6b5a49362310000000000000001e33485e73899fa18c7664646464676e7a899a998a786654412e1b0700000000001f34495d707d8079746f6c6b6d727c8998a99d8b7865523e2a16010000000f21324251606d79848d9394939497928c83776a5b4b3b291705000000000000162b40566b8297a9947d68533e29130000000000001c32475c718699a19c8a76624d38230e0000001b2f43576a7b888c877a6a58485c6e7d8a8b847666534d6072828b8a8272614e3b2712001f34495e718394a59480828283838484868687889997826c57422d18030000000000000000000000000e1b27333d464e54595c5e5f5e5c59554f473e34291d0f01000000000000000000000000000000000000000000000000061a2d40515d5f5d544a40362b1c0b000000000000000000000000000000001020303f4b565d5f5f5c544a3d44515651473c30211000000000000000000000000000000000000e2133435362728393a092857566574734210d000000000000000000000000000000000008121920262a2d2e2f2e384c6071716a61513e2915000000000000132536445261728394918270604e3d2b1906000000000000000000091620262c31373c3e392f2211000000000000000000000000000000040f161a19233749575e5e5e5e5b503f2c1817150f0500000000000000001e33485e73899fa08b745f54545558616f80929989786653402c18040000000000001e33485e73899fa18c76604f4f4f525c6b7c8fa29684715e4a36220e00000000001f34495e7389958e8985838283878f99a69b8f7d6e5c4936220f0000000003142433424f5c6770787d838484827d776f65594c3d2d1d0c00000000000000162b40566b8297a9947d68533e29130000000000001d32475c72889db2a59079644f3a250f0000001f34495d728799a1998874604d62778c9ca095836f5a53687c909f9e917d6a55412c17001b2f4254647587989d8e80706c6d6e6f6f70707d9299846e59442f1a05000000000000000000000000000a16202a3239404447484a484744403b342b22170c00000000000000000000000000000000000000000000000000000011223240484a4941372d23190d00000000000000000000000000000000000212212e3942484a4a4741382c343d403d342a1f1203000000000000000000000000000000000004152535455564748595a294857564503b261100000000000000000000000000000000000000050c111518191a1c3043535e5d564f4333210e0000000000001b2f435462708090918272635342311f0d000000000000000000071827333b40464b51534d402f1d09000000000000000000000000000615222b2f2e293e5366737373736e5b47322a2c2a221608000000000000001e33485e73899fa08b745f4a3f40445162758a9e95836f5b47331f0a0000000000001e33485e73899fa18c76604b3a3a3e4d5f73879ba18d7965513d281400000000001c31475c70869b88878e9497989c9c9992897d7060503e2c19060000000000061523323e4a545d64696d6e6e6c69635c53483b2e1f0f000000000000030f172b40566b8297a9947d68533e29160e02000000001c31465a6f8395a09e8c77634e39240f0000001f344a5f748a9fb2a38d78634e63788fa4b29d88725c546a8094a9ad98836e58432e1900122536475868798b9c9e8f827261585a5a5b62768a9b87705b46311c070000000000000000000000000000030d171e252b2f32333433322f2b2620180f05000000000000000000000000000000000000000000000000000000000514222d3334342e241a10070000000000000000000000000000000000000003101c262e333434322d251b21292b2921170d0100000000000000000000000000000000000000071727374756667687978d827665513c27120000000000000000000000000000000000000000000000000001142535424948423b322516040000000000001f34495e72808f8f827263544535241302000000000000000000112436454f555a6065685e4c392511000000000000000000000000011324333e44423a3f546a80898988725d48363f423e342616040000000000001e33485e73899fa08b745f4a342b33465b6f85999f8b76624d38230e0000000000001e33485e73899fa18c76604b36253043586d8297a995806b57422d180300000000192f44586e83988b76798084878887847d766c60514232210f0000000000000b1d2f404e595f605d56585858575e605f594e40301f0d00000000000413212b3140566b8297a9947d68533e312a1f1202000000172b40536676858b89806f5c4935200b0000001d32475c7084959f9c8a76614c60758898a09885705c52667a8d9ba094806b57412c17000718293a4b5c6d7d8f9f9f90806e5d4c44475b6f839788735e48331e0900000000000000000000000000000000030a11161a1d1e1f1e1d1a17120c04000000000000000000000000000000000000000000000000000000000000000511191e1f1f1a110800000000000000000000000000000000000000000000000a13191e1f1f1d1912080e1416140e05000000000000000000000000000000000000000000000919293949586878877b7064594936220e00000000000000000000000000000000000000000000000000000817252f34332e27201507000000000000001e33485c6e7a867d706354453627170600000000000000000000182d415363696f74797c6854402c180400000000000000000000000c1e30425159574c3f53687d939b86705b46475357514433210f0000000000011e33485e73899fa08b745f4a341f2d42576c8398a5907a66503b26110000000000001e33485e73899fa18c76604b36212a3f546a8095aa99856f5a45301b0500000000172c41566b80958f79656b6f7172716f6a635a4e423324140300000000000014273a4c5e6b74767267594757667276746c5e4e3c291601000000001022323e4649566b8297a9947d685349453d301f0e0000001024364858677174746d6151402d1906000000192d41546676838a897d6d5a47586a79868b877968554a5d6e7d888b857564513d281400000b1c2d3e4f60708292a39d8c7a6958473f53677b888675604b36200b000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000b1b2b3b4a5a6a74695e53473b2b190700000000000000000000000000000000000000000000000000000007121b1f1e19130c030000000000000000192d3f505c68746d6053453627180900000000000000000000001b30465b707d84898f836f5b47331f0b000000000000000000000517293b4e606e695d5052677b9198836d584c58646c62513e2c190700000008141e33485e73899fa08b745f4a34202d42576c8398a8937c67523c27120000000000001e33485e73899fa18c76604b3621293e53687d94a99c87705b46301b060000000014293e53687c93937d69565a5c5c5c5a554f473d31241506000000000000001a2e43576a7b898c857664516274858c897c6b5945311c0800000000192d3f505b5e616b8297a9947d68605e5a4e3d2a1600000007192b3a49545d5f5f5a5143342210000000001124374858667074736c604f3e4c5b68727472695b4b40505f6b73747166584734210e0000000f2031425363748697a79888766554434c607173706c5c48341f0a0000000000000000000000000000000000000000060b1014171819191715120e0902000000000000000000000000000000000000080e0f0f0f0f0f0f0f0f0f0f0f0f0a0200000000000000000000000000000000000000000000000001070d11141617171614110d0700000000000000000000000000000000000000000000000000000000000d1d2d3c4d5a5f574c41352a1d0d0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001022323e4b575f5a4f42352718090000000000000000000000001a2e43576a7d919e9f8a76624e3a2612000000000000000000000f223446596b7d7a6e615565799096826b565d6a76806e5b4936241100000717263137485e73899fa08b745f4a343539465b6f8499a6917b66513c27120000000005111e33485e73899fa18c76604b36222c40556a8095ab9b86705b46301b060000000011263b5065799097836d584547474745403b332a1f130700000000000000001d32475c718699a194826c58697d92a19b88745f4a35200b000000001e33485c6e7376788297a9947d7876736c5a45311c000000000d1c2b3741484a4a463e332516050000000007192a3a48535c5f5f594f42323d4b565d5f5d574c3d32414e585e5f5d54483a29170500000002132435465767788a9ba5948372615043535e5e5b584e3f2d19050000000000000000000000000000000000020b131a2025292c2d2e2e2c2a27231d160f07000000000000000000000000000004121c232525252525252525252525241e1509000000000000000000000000000000000000000000030c151c2126292b2c2c2b2926211b130a000000000000000000000000000000000000000000000000000000000f1e2f3d474a443a2f23180c000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000413212d39444a473d322517090000000000000000000000000014273b4e6175899ca5927d6955412d1905000000000000000000182c3f516376888c80736663788f947d68626e7b888b786653412e1b0700122435434c505e73899fa08b745f4a484a4d5463768a9ea18d78634e3a25100000000414232e36485e73899fa18c76604b36373b485b6f8499ac98836e58442f1904000000000e23384d62778d9b87715c4733323230303030302d241809000000000000001e33485e73889daf9b866f5a6a8095aaa28d77624c37220d000000001f344a5f74898c8e919da09b908e8b88725c47321d00000000000d1a252e333434312b2115070000000000000c1c2a3740474a4a453d31232d3942484a49433a2e23313b44494a4841372b1c0b0000000000061728394a5a6b7c8e9ea190806d5c4b42494946443d30211000000000000000000000000000000000010c151f272e353a3e41424343423f3c37312b231a110600000000000000000000000213222f373a3a3a3a3a3a3a3a3a3a3a3932271808000000000000000000000000000000000000000a15202830363b3e404242403f3b362f271d1307000000000000000000000000000000000000000000000000000000111f2b323431281d110600000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000003101c283134322b20140700000000000000000000000000000b1e3245596c8093a79985705c4834200c0000000000000000001d32475b6e82939d9185776b768c907b6773808d999683705e4b36210d001a2e415360656873899fa08b74605f5e5f6268728293a69785715d4935200c0000000f2132414b4f5e73899fa18c76604b4b4c505866778b9fa5927d6954402b1601000000000b20354a5f748a9f8b75604c464646464646464641362716040000000000001c31465b6f8396a095826d58677b8f9e9c8975604b36210c000000001f344a5f748b8b8b8b8b8b8b8b8b8b88725c47321d0000000000000812191e1f1f1d170e0400000000000000000c19242d323434312a20141c262e3334342f271d131f28303434332e251a0d0000000000000c161c2c3d4e5e6f8091a29d8c7a6958473634312f2920120300000000000000000000000000000007131e28323b42494e53565758585754514c463e362d23190d010000000000000000000d1f31404b4f4f4f4f4f4f4f4f4f4f4f4d443625130000000000000000000000000000000000000e1b27323c444a50535657575653504a433a3024180b0000000000000000000000000000000000000000000000000000010e181e1f1c150b000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000a151c1f1e180e020000000000000000000000000000000216293d5063778b9e9f8c77634f3b27130000000000000000001e33485d717d88909a95897b72888b767685919e958d8478634e38230e001e33485d71797c808a9fa08b7776747374777c84909f978a796755422e1a06000000172b3e505e646773899fa18c7662606061646a758495a89a8875624e3a26110000000000081d32475c72879c8f79655b5b5b5b5b5b5b5b5b534533200c000000000000182c40546678868b867765525f71828a897d6c5946311d08000000001f34495d7074747474747474747474746e5b46311c000000000000000000000000000000000000000000000000000711191e1f1f1c160d020a131a1e1f1f1b140b020c151b1f1f1e1912080000000000000f1d29313333415162738595a6988776655443322119150d020000000000000000000000000000000c1925303b454e565d63686b6c6e6e6c6965605a524a40362b1e1205000000000000000014283c4f5e64646464646464646464646154422e1a06000000000000000000000000000000000f1e2c39454f585f64686b6c6c6b68645e564d4236281a0b000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000d2134475b6f8296a7927d6a56422e1a0600000000000000001a2e4153616a737d8790988b7c8387798795938b827970675b4935200c001e33485e73899295999999928d8b8a898a8c9097958e85796b5b4a382612000000001b30455a6e787c808a9fa18c7977767576797d8893a2988c7c6b5946331f0b0000000000031b30455a6f8499937d70707070707070707070634f3b2611000000000000112437495a6872747268594853626f74746c5f4f3d2a1602000000001a2e41515d5f5f5f5f5f5f5f5f5f5f5f5c503e2b1700000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000a1c2d3b45484848455566778999a5948371604f3e2d1c0b000000000000000000000000000000000e1c2a36424e58616a72777c80838484827d7a756e665d53483c3022140600000000000000172c41576b7979797979797979797979725d48331e080000000000000000000000000000000c1d2d3c4a56616b73797d808283827d7972695f534638291909000000000000000000000000000000000001070d11141617171614110d07000000000000000000000000000000040c101111111111111111111111100b030000000000000000000000000005090c0d0e0d0b070200000000000000000000000000000000000000000000000005182b3f5266798da19a86715d4935210d0000000000000000122435444e57606a737c848a8c80828a8c8680776e665d544b3d2c1906001e33485e73848484848484848687898989898784807972675b4d3d2c1b09000000001b30465b70879295999999948f8d8c8b8c8f9399958e867a6d5e4d3b291603000000000000182d42576c829797878787878787878787877d68533f2a15000000000000081a2b3c4a565d5f5d564a3b44525b5f5f594f4131200d000000000011233341494a4a4a4a4a4a4a4a4a4a4a483f32210f00000000000000000000000000000000000000000000000000000000000000000000000001070b0d0d0b080401070a0b0b0a0704000000000000001226394b595e5e5e594b596a7b8d9da1907d6d5c4b3a29180700000000000000000000000000000e1d2c3a4754606b757d868d929391909092948f89827970655a4d4032241506000000000000172c42576c8390909090909090909089735e48331e09000000000000000000000000000006192a3b4b5a687480888e9395959494938d867c71645647372715040000000000000000000000000000030c151c2126292b2c2c2b2926211b130a0000000000000000000000000a1620252626262626262626262626251f1609000000000000000000050d141a1e21222322201c16100800000000000000000000000000000000000000000000001023374a5d718599a18d7864503c28140000000000000000091928333c454e5760696f767c898d7d77716b645b524941382d1f0e00001c3146596a6e6e6e6e6e6e6f707273747373726f6b655e554a3d2f1f0f00000000001b30465b70848484848484868788898a89898784807972695d4f402f1e0c00000000000000152a3f54697d94a49c9c9c9c9c9c9c9c9c97826c57422d18040000000000000e1e2c3942484a4842392c343f464a4a453d3123130200000000000515232e343434343434343434343434332d22130300000000000000000000000000000000000000000000000000000000000000000000040e161b202222201d18141b2021211f1c19140b0000000000162c40556873737368554d5d6e8090a19c8b7a695847362514030000000000000000000000000c1d2c3b4a5865717d88928f88837d7b79797c80868c948d83776b5e5142332414040000000000172c42576c7d82868ca09f8c8684827d725d48331e0900000000000000000000000000001124364859697886929b958b84807d7d8389928f837465554433210e000000000000000000000000000a15202830363b3e404242403f3b362f271d1307000000000000000000081928333a3b3b3b3b3b3b3b3b3b3b3b3a33271807000000000000020e1821292e333637383735302b241b1107000000000000000000000000000000000000000000071b2e4255697c90a494806b57432f1b0700000000000000142637454f58616a737c83898d7d828c8a837c736960574d443626140100162a3c4c565858585858585a5b5c5e5f5e5e5c5a56514b42382c1f110100000000001a2e4357686e6e6e6e6e6e6f707273747373716f6b655f564b3f312211000000000000000012273c51667b90909090909090909090909a86705b46311c07000000000000000e1b262e3334332e261b222b323434312a2013040000000000000005111a1f1f1f1f1f1f1f1f1f1f1f1f1e191004000000000000000000000000000000000000000000000000000000000000000000000a16212a3035373736322c273034363634312d281e1101000000172c42576c8389846f5a455061728394a498877564534332200f0000000000000000000000091a2a3b4a596876838f90857b736d69666465676b7077808a95897c6f615142322211000000000015293e5161686c73899f9d88726e6b696456432f1b0600000000000000000000000000071a2d405365768796a09183776f6a68696d75808e93847362503e2b180400000000000000000000000e1b27323c444a50535657575653504a433a3024180b0000000000000000132637454f50505050505050505050504e4536251200000000000513202b343d43484b4c4e4c4a453f372e24190c00000000000000000000000000000000000000000012263a4d6174889c9b87725e4a36220e000000000000001b304355636c757d8790978b7c84867c8b9790867c736a605443301c08000d1e2e3a42434343434343444647484a49484745413d362f261b0f0100000000000014273a4a555858585858585a5b5c5e5f5e5e5c5a56514b43392e21130400000000000000000f24394e637679797979797979797979808b89735f4a341f0a000000000000000009131a1e1f1e1a130910171d1f1f1c160d020000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000d1b28343d454a4c4c4b47403a44494b4b4a46423b2f1f0e000000172c42576c839888725d51505465768795a4948371604f3e2d1c0a000000000000000000031426374858687786948a7d7268605954514f5052565c646d7784908d807060503f2e1d0b000000000e2133434f545e73899f9d88725c5654514738261402000000000000000000000000000f22364a5d708394a5938272655b55535459626f809091806d5a4734200c000000000000000000000f1e2c39454f585f64686b6c6c6b68645e564d4236281a0b000000000000001b2f43556366666666666666666666666254412e1900000000061523313d4750585d606263625e5a534a41362a1d0e00000000000000000000000000000000000000000a1e3145596c8094a28e7965513e2915010000000000001f34495e738088919a94887a73888a757a89959990877d725f4a35200b0000101d272d2e2e2e2e2e2e2f30323334343332302c28221b130900000000000000000a1c2c3941434343434343444647484a49484745413d362f261c10030000000000000000000b203447586364646464646464646464737474705d49341f0900000000000000000000000000000000000000000000000000000000000000000000000000000001070b0b0a070000000000000000000000081013120e0500000000050d12131009000000000000000000000000000b1b2b394550595e6162605b544c575e60605f5b574d3d2b18040000172c42576c83988c76676666656468768695a08f7d6d5c4b3a27140000000000000000000e203244556676879687786c60554c4e53565757545049505a6672808f8f7d6e5d4c3a291604000000041625323b485e73899f9d88725c473f3c3529241d160d03000000000000000000000015293e5265798da09c8976645448403e3f4551617386998a76634f3b27130000000000000000000c1d2d3c4a56616b73797d808283827d7972695f5346382919090000000000001e33485d727b7b7b7b7b7b7b7b7b7b7b715c47321c00000003142433424f5a646c7176777777736e675d53483b2c1d0e000000000000000000000000000000000000000216293d5064778c9f95826d5845311c090000000000001e33485c6e82949b8f83766a788d8f796b7784909c9684725e4a35200b0000000b13181919191919191a1b1d1e1f1f1e1d1b18130e0700000000000000000000000e1b262c2e2e2e2e2e2e2f31323334343332302c28221b130a00000000000000000000000417293a474e4f4f4f4f4f4f4f4f4f565f5f5f5d51412e1a060000000000000000000001091015191a1b1a17120c11171a1a191714100b03000000000000000b151c20211f1b140b0000000000000004101b24282722180c00000c17212728251d110300000000000000000000051729394957636d7376777470685e6973767674706a5b48331f0a0000172c42576c83988f7c7c7b7b7a7979787886979c8b796857432e1a050000000000000005182b3d4f617384958777685b4e515b63686b6c6c69645c5348556170808f8c7b6a584634210e0000000007152033485e73899f9d88725c474443413d38312920150a000000000000000000061a2f43586c8295a894806c5946362c292a334356697c9193806a56412d19040000000000000006192a3b4b5a687480888e9395959494938d867c716456473727150400000000001e33485e738991919191919191919188725c47321d0000001021324251606c7780878b8d8d8c88837a7065584a3b2c1c0b000000000000000000000000000000000000000d2135485c7084979c8874604c382410000000000000192c3f516476898a7d7165667b91917c676672808b8c796754422f1b07000000000000000000000000000000000000000000000000000000000000000000000000000912171919191919191a1c1d1e1f1f1e1d1b17130e0700000000000000000000000000000c1c2a34393a3a3a3a3a3a3a3a3a444a4a4a49413323110000000000000000000009141d242a2e2f302f2c2620252c2f2f2e2c28251f160a0000000003111d28303536342f271d1103000000000916222e383d3c352a1b0d121d29343c3e392f2112030000000000000000000e21344757677580888c8d8a847b7076878c8c898676604b36210b0000172c42576c8398999393919190908f8f8f8d99a09885705b46301b06000000000000000e2134475a6d80918a7968594a58646e777c8283827d786f655a4d5261718294887563503d2a170400000000031e33485e73899f9d88725c585a5856524c453c32271b0e00000000000000000a1f34495d72879ba38f7965503d2919141626394d61768b9a85705b47321d08000000000000001124364859697886929b958b84807d7d8389928f837465554433210e00000000001e33485e738283868898a79688868380715c47321d0000081b2d3f5060707d8a949a918b898b90968d837668594a3928170500000000000000000000000000000000000005192d4054677b8fa38f7b67533f2b1703000000000010223447596c7d786c6054687d93947d6855616d79826e5c4a372513000000010e181e1f1f1f1f1f1f1f1f1f1f1a151c1f1f1f1f1f1f1f1f1f1f1c14090000000000000000000000000000000000000000000000000000000000000000000000000000000000000c18202425252525252525252730343434342e2315050000000000000000000e1b2630393f43444544403b333840444443413d3933281a0a00000011212e3b444a4b49433a2f2112010000081827333f4b525147392b1d222f3b4750534c3f302112040000000000000000162a3e51647586929c958d8b8c8e827990a18f898976604b36210b0000172c42576c838b8b8b8b8b8b8b8b8b8b8b8b8b8b8b7b6855412d190400000000000003162a3e5164778a907d6c5b4b586775828b92969897938c83776b5c4d5364768893806d5a4733200c00000000001e33485e73899f9c87706c6e6f6e6b6660594f44392c1e0f000000000000000d22374c61768ca09f8a75604b37220d000a1e33475c71879b89745f4b35200b000000000000071a2d405365768796a09183776f6a68696d75808e93847362503e2b1804000000001b304457666b6e708297a9947d6f6d6a6555422e1a00001225384a5c6e7d8e9c97897d7673767c879594877768574634220f000000000000000000000000000000000000001125384c6073879b96836e5a46321e0a000000000005172a3c4f616d675b4e566b809595806a554f5c687064513f2d1a08000000111f2b32343434343434343434342e28313434343434343434343430271a0b000000000000000000050e13151515151515151515151515151515120c02000000000000000000000000050c0f0f0f0f0f0f0f0f0f141c1f1f1f1f1a11050000000000000000000f1e2c38434d53585a5a59554f474a54595a5856524e4538281502000b1d2f3f4c575f605e574c3f301f0d000013253645515d676457493b2c31404c5864685d4e3f30221304000000000000001b3045596d8293a3928378747780898390a08b74736f5e4a35200b0000172c41556974747474747474747474747474747474705f4c39261200000000000000091e3246596d82948673614f54667686939e9b928d8b8b8e95897a6b5847586a7d908a76634f3b271300000000001e33485e73899f9c878083848484807b756c62564a3c2d1e0e0000000000000f243a4f64798fa49c88725d48331e0900041a2f44596e84998d77624d38230e0000000000000f22364a5d708394a5938272655b55535459626f809091806d5a4734200c00000000152839495356586b8297a9947d685855524738261300071b2e415467798c9d9c8a796b615e616976879896867563513e2b1805000000000000000000000000000000040502091c3044576b80939d8a75614d3925110000000000000d1f32435158544943586c839797826c57424b565b544634220f0000000b1e2f3d474a4a4a4a4a4a4a4a4a49413a454a4a4a4a4a4a4a4a4a4a443828170400000000000000091721282a2a2a2a2a2a2a2a2a2a2a2a2a2a2a271f14050000000000000000000000000000000000000000000000000000000000000000000000000000000c1d2d3c4a5660686d6f6f6e6a635a5a676e6f6e6b67625645321e090014283b4c5d6a7376726a5d4e3c2a1703001b2f4354626e7a7567594a3c3c4f5e6a767b6c5d4e40312213040000000000001f34495e73889d9b8773645f636c778495a08b745f5c51412e1b06000012263a4c5a5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5d5242301d09000000000000001024394d617589907c69564c5f718494a495897d77747479828c826d59444e607488927d6a56422e1905000000001e33485e73899fa29495959190919590898074675a4b3c2c1b0a000000000011263b50667b91a69b86705b46301b060000172c42576c82978f78644f3a240f00000000000015293e5265798da09c8976645448403e3f4551617386998a76634f3b2713000000000b1c2b373e41566b8297a9947d6853403d35291a09000e22364a5d718597a5927d6c5b4e494d58697b8ea293826e5b4834210d0000000000000000000000040c1115191a171014283c5063778b9f917c6854402c18040000000000021425343e434038455a6f858b8b846e5944394346413728170500000014283b4d5a5f5f5f5f5f5f5f5f5f5d5248585f5f5f5f5f5f5f5f5f5f564634200c000000000000061727343d3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3b31231302000000000000000000000000020c131615110b0500000000000000000000000000000000000417293b4b5a67737c838686847d766c6578848684807c74614c37220c001b2f43576a7b888c877b6b5a46331e0a001f34495e72808c8676685a4c41576b7c888b7b6c5e4f403122130400000000001f344a5f748ba098836d584a4f59677c93a08b745f4a403323120000000a1d2e3c464a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4941342513000000000000000015293e53677c908975614d54687b8fa19686776b635f60656e7b7663513e44586c809486715d48331f0a000000001e33485e73899fa39287807b7a7c828a95918678695a4a392715030000000012273c52677c92a79b866f5a442f1a050000162b40566b82979079644f3a250f0000000000061a2f43586c8295a894806c5946362c292a334356697c9193806a56412d1904000000000d1a232b40566b8297a9947d68533e2922180b000013283d5165798da19e8a76624f3d343a4c5e72869a9e8b7764503c2813000000000000000000000b1720262a2d2f2b23172034475b6f839698846f5b47331f0b0000000000000716222a2e2c3045596d747474746b58432e2e302d25190a00000000182d42576a747474747474747474705e526674747474747474747473634f3a251000000000000010233545515454545454545454545454545454544e42311e0b0000000000000000000000051420282b2a252019120a0100000000000000000000000000000e2134475869788590979b9b9892897d727d949b96948d77624c37220d001e33485d728799a1998976614d38230e001e33485c6e7d8f9587786a5b4d5568798a9a8b7c6d5e4f4032231404000000001f34495e73889c99846f5c4e4852677c93a08b745f4a3423150600000000101e2a3234343434343434343434343434343434342e2416070000000000000000192e42576c8296836e5a465b6f84989d8a7867594f4a4b515d6a685946343d5165798f8b76614c38230e000000001e33485e73899f9f89746b6766676d77859496887867564532200d0000000012273c52677c93a89b866f5a442f1a050000162b40566b82979079644f3a250f00000000000a1f34495d72879ba38f7965503d2919141626394d61768b9a85705b47321d08000000000007162b40566b8297a9947d68533e291306000000182d42566b8095a999846f5b4633202f43576b8095a793806b56422d19040000000000000000091a28343a3e42443f3526182c3f53677a8f9f8b76634e3a261200000000000000050f1619172a3d4f5c5f5f5f5f5b4e3c29191b1912080000000000192e43586e848b8b8b8b8b8b8b8b766053687d8b8b8b8b8b8b8b8b7b66503b2611000000000000162b3f53636a6a6a6a6a6a6a6a6a6a6a6a6a6a69604e3a261100000000000000000000021323323c403e3a342e261d140a0000000000000000000000000015293d5063768896a39b8f8886878c908380959f897d7d77624c37220d001f344a5f74899fb1a59079644f3a250f00192d3f50607182929788796b5d4e5b6c7d8f9a8c7c6d5e5041322314050000001b3045596d82929f8b796b625d59677c93a08b745f4a341f0a0000000000000d171d1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1a12060000000000000000001c31465b7086937d69544b5f74899e95806d5a493c35363f4d56554b3b29374b60758a8f7965503b2611000000001e33485e73899f9f89735e5250535a67768799968674624f3d2a160300000012273c52677c93a89b866f5a442f1a050000162b40566b82979079644f3a250f00000000000d22374c61768ca09f8a75604b37220d000a1e33475c71879b89745f4b35200b000000000000162b40566b8297a9947d68533e2913000000001c31465b70869aa994806a55412c18283d52677c91a79a86705c47321d080000000000000000142738464f53575a5244332024374b5f72869a927d6a55412d1905000000000000000000000e20313e484a4a4a4a473e301f0d000000000000000000192e43586e848a8d97a0998d8b88766053687d898c94a09e8f8b897b66503b2611000000000000192e43586e80808080808080808080808080807d68533e2913000000000000000000000c1e31424f56534e48413930271c100500000000000000000000001a2f44586c8093a59d8c7d736f7178828c88979f897368675a47331f0a001d32475b6f83939e9b8b77624d39240f00102232435364748596988a7b6c5e50607082939b8c7c6e5f5041322314050000162a3e516374849198897d76716e6c7c93a08b745f4a341f0a00000000000000000000000000000000000000000000000000000000000000000000000000001e33485e7388907b66514d62778da28f7965513d2c20222f3b4140392d1e32475c7287937c68533d2813000000001e33485e73899f9f89735e483b3e4958697c8fa292806c5946321e0a00000012273c52677c93a89b866f5a442f1a050000162b40566b82979079644f3a250f00000000000f243a4f64798fa49c88725d48331e0900041a2f44596e84998d77624d38230e000000000000162b40566b8297a9947d68533e2913000000001e33485e73889da7927c67523d2813253a4f64798fa49e89745f4a35200b00000000000000001c30445663686c6f62503b271c2f43576a7d929985705d4835210c000000000000000000000213212c3334343434332b201201000000000000000000172c41556872747c93a8958075726d5d50647073788fa49b86767371624e3a2510000000000000192e43586e84939595959595959595959594937d68533e29130000000000000000000316283b4e606b68635d554d43392e221609000000000000000000001e33485d72879ca894806d5f5a5d646e7a879b9f89735e524a3c2b180400182c405365748289887d6e5b48341f0b0004142535465667778999998b7c6e6053647587989b8c7d6e5f504132231200000e2134465665737d878e928b8784838293a08b745f4a341f0a00000000000000000000000000000000000000010c141819191918130a0000000000000000001f344a5f748a8f79644f4e63788fa08b76604b37220e171e272c2c261c1b30465b7086947d68533e2913000000001e33485e73899f9f89735e48332b3a4c5f72879b9c8975614e39251100000012273c52677c93a89b866f5a442f1a050000162b40566b82979079644f3a250f000000000011263b50667b91a69b86705b46301b060000172c42576c82978f78644f3a240f000000000000162b40566b8297a9947d68533e2913000000001f344a5f748ba0a5907965503b261123384e63788fa3a18c76604b36210c00000000000000001f344a5f737d82806a56422e1b273b4f62768a9e8c7764503c28140000000000000000000000030f191e1f1f1f1f1e180f02000000000000000000001226394a575c677c93a895806a5d5a4f46545c63788fa49b866f5e5c5445331f0b000000000000182e43586d7b7d808283899ea48f8382807d7c7a68533e28130000000000000000000b1f3345586b7d7c77716960564b403327190b0000000000000000001f344a5f748ba0a48f7965504549515c6f869b9f89735e48372c1e0d00001023364756646e73726c5f503e2b1805000007172839495a6a7b8c9c9b8d7d6f6158697a8c9c9c8d7d6e5f5141301c0900051728384755616b73797d838688898b96a08b745f4a341f0a00000000000000000000000000000000000002111e282d2e2e2e2d271c0f00000000000000001f344a5f748b8f78634e4e63788f9f89745f4a341f1d2932363636332b1e2f445a6f86947d68533e2913000000001e33485e73899f9f89735e48331e3043586c8296a5917c68543f2b1600000012273c52677c93a89b866f5a442f1a050000162b40566b82979079644f3a250f000000000012273c52677c92a79b866f5a442f1a050000162b40566b82979079644f3a250f000000000000162b40566b8297a9947d68533e2913000000001f344a5f748ba0a59079644f3a250f23384d62778da3a38d77624c37220d00000000000000001e33485d72889686715d4834302f33475a6e829693806b57432f1b070000000000000000000000000000000000000000000000000000000000000000091b2c3a4352677c93a895806a54453e37414e63788fa49b866f5a474136271603000000000000152a3e516066686a6b72889da48f786c6a6867665d4c3925100000000000000000000f24394e627588928c857c73685d514537291b0c00000000000000001f344a5f748ba0a38d77624c3735445a6f869b9f89735e48331e0e0000000618293847525a5e5d584e4132210f000000000a1b2b3c4c5d6e7d8fa09c8e8070615c6d7d90a19c8d7d6f5f4c38230e00000b1d2e3c454e575f65696d7072737c93a08b745f4a341f0a0000000000000000000000000000000000000f202f3b42434343413a2d1d0c000000000000001f34495e7389907965504d62778da08b745f4a35202b3b464b4b4b473c2d31475c7087937d68533e2913000000001e33485e73899f9f89735e48331e293e53687c92a797836d59442f1a00000012273c52677c93a89b866f5a442f1a050000162b40566b82979079644f3a250f000000000012273c52677c93a89b866f5a442f1a050000162b40566b82979079644f3a250f000000000000162b40566b8297a9947d68533e2913000000001f344a5f748ba0a59079644f3a250f23384e63788fa4a18c76614c37220c00000000000000001c31465b70869b8c77634f464544444452667a8e9a86725e4a36220e0000000000000000000004080c0e0e0f0e0d0a07020000000000000000000000000e1c273c52677c93a895806a543f2b25384e63788fa49b866f5a442f251809000000000000000e2133424d5153545c72889da48f7863555452504b3f2f1d090000000000000000000f24394e63747c858d9890867a6f625547392a1b0b000000000000001f34495d72889ca48f796653463d445a6f869b9f89735e48331e090000000014283b4c595c5c5c574a3825140300000000000d1e2e3f5060708292a39e8f7d685360728394a59c8e79644f3a250f000215283b4c595c554d5054585b5c687d94a08b745f4a341f0a000000000000000000000000000000000005192c3e4d57585858564b3b2815000000000000001d32475c7187927c68534a5e73889c8d77634e39263749596060605a4b39354a5f7389917b66513c2712000000001e33485e73899f9f89735e48331e253a4f64798fa49c87725c47321d00000012273c52677c93a89b866f5a442f1a050000162b40566b82979079644f3a250f000000000012273c52677c93a89b866f5a442f1a050000162b40566b82979079644f3a250f000000000000162b40566b8297a9947d68533e2913000000001e33485e73889da5907b66503b2611263b50657990a5a08b74604b36200b00000000000000001a2f44596e8499927d695b5b5a5a5a5a5a5e72869a8d7965513d291501000000000002080e14191d2123232523221f1b160f08000000000000000000000012273c52677c93a895806a543f2a23384e63788fa49b866f5a442f1a07000000000000000004152431393c3e475c72889da48f78634e3f3d3b372e2111000000000000000000000b1f3346566168707a8591988d8073655748392919080000000000001b3044586d8293a59683716359514d5a6f869b9f89735e48331e0900000000192e43576a7272726855402c170200000000000011213242536374859aa9947d6853546576889da59079644f3a250f000c1f3244576a7169615b565354596d82969d88735e49341f0a00000000000000000000000000000000000a1f34485c6b6e6e6e695844301b000000000000001a2f44596e8396826c5845596d8295917c695543363e52667576766954403a4f63778d8d77634e39240f000000001e33485e73899f9f89735e48331e23384e63788ea39f89735f4a341f00000012273c52677c93a89b866f5a442f1a050000162b40566b82979079644f3a250f000000000012273c52677c93a89b866f5a442f1a050000162b40566b82979079644f3a250f000000000000162b40566b8297a9947d68533e2913000000001c31455a6f8499a8937d68533e2a15293e53687c92a79c88725d48331e090000000000000000172c42576c829799857070706f6f6f6f6f6e6e7d9295826c5844301c080000000911161d23282d323638383a383734302a231b110700000000000000000012273c52677c93a895806a543f2a23384e63788fa49b866f5a442f1a0500000000000000000006131e242732475c72889da48f78634e382826231b10030000000000000000000004162838454d545d6873808d9c91847566574737261504000000000015293d5164768795a19082756c66625f6f869b9f89735e48331e09000000001a2f445a6f8688846e58432e1903000000000006172839495a6b7c8d9ea3947d68535b6c7d8fa1a19079644f3a250f0014283b4e6174857c756f6b68696d77899c98846f5a46311c0700000000000000000000000000000000000b21364b6076848484725c47321d00000000000000162b4054697d9387725e4a5165788b98857261524b4b586d828c826b56404155697d9288735e4a35200b000000001e33485e73899f9f89735e48331e22374c62778da3a08b745f4a341f00000012273c52677c93a89b866f5a442f1a050000162b40566b82979079644f3a250f000000000012273c52677c93a89b866f5a442f1a050000162b40566b82979079644f3a250f000000000000162b40566b8297a9947d68533e291300000000182c41556a7d93a796826c58432f1c2f43586c8296ab97836d59442f1b060000000000000000152a3f546a80949f8c87878786868686868484848e9c8873604b37240f00000f1b252b31373d42474b4d4e4f4e4c49453e372e24190c000000000000000012273c52677c93a895806a543f2a23384e63788fa49b866f5a442f1a0500000000000000000000010a0f1d32475c72889da48f78634e3823110e08000000000000000000000000000a1a283239414b56616f7d8c9c94857565544433210f00000000000e213447586877858f989389827a777473869b9f89735e48331e09000000001b30465b708699846e59442f1a05000000000313243546566778899aa2938576665667798a9ca1928373624e39240f00182d42576b7d91918a84807d7d8289969e8e7c6854402c170300000000000000000000000000000000000b21364b60768c9988725c47321d0000000000000011263b4f63778c8d796653495b6d809090807065606064738897826b56404a5d718595826d5944301b07000000001e33485e73899f9f89735e48331e24394e63788fa4a08b745f4a341f00000012273c52677c93a89b866f5a442f1a0a0008162b40566b82979079644f3a250f000000000012273c52677c93a89b866f5a442f1a050000162b40566b82979079644f3a250f000000000000162b40566b8297a9947d68533e29130000000012273b4f63778b9e9b87725f4c3930384b5f72879ba4907c68543f2b1601000000000000000013283d52677c92a09e9c9c9c9b9b9b9b9a9999999da08f7a67523d2813000c1d2d3940454b51575c6062636463625e59534a41362a1d0f0000000000000012273c52677c93a895806a543f2a23384e63788fa49b866f5a442f1a05000000000000000000000000001d32475c72889da48f78634e38230e000000000000000000000000000000000a151e252e3844515f6d7d8e9e93837261503e2d1b08000000000517293a4a5967727c858c92958f8c8a898a9c9f89735e48331e09000000001c32475c70879b866f5a442f1a0500000000102031425363748696a1928475665862738597a1928373645545331f0b00182d42576a7782899096959494979c968d80705e4c392511000000000000050d111212121212121212121221364b60768c9d88725c47321d000000000000000c2034485c708496836f5d4a506171828f8f8279767678808e97826b564354677a8d8d7966523e2a1601000000001e33485e73899f9f89735e48331e273b50667a90a59e89735e48331e0001111e283c52677c93a89b866f5a442f271c0f1a252c40566b82979079644f3a271d100000000012273c52677c93a89b866f5a442f1a050000162b40566b82979079644f3a250f000000000000162b40566b8297a9947d68533e2913000000000c2034485b6e8293a28f7b68574a454956687a8ea29b8874614d39251100000000000000000010263b5065798b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8a7866523d281300172a3b4a545960666b70747778797877736d665d53483b2d1e0e00000000000012273c52677c93a895806a543f2a23384e63788fa49b866f5a442f1a05000000000000000000000000001d32475c72889da48f78634e38230e00000000000000000000000000000000000a131b222733414f5f6f8092a190806e5c4a38251300000000000c1c2c3b49555f6870777c8286888a8b8d9e9f89735e48331e09000000031d32475c72889c87705b46301b060000000c1d2d3e4f60708292a091837465575d6f8092a1928373645546372716030014283b4d5a646d757b8286898b8987827a6f6152412f1d0900000000000c1821262727272727272727272727364b60768c9d88725c47321d0000000000000005192d4154677a8e8c796856455362717d8a938e8c8c8e939b95826b564f6072849784705d4a36230f00000000001e33485e73899f9f89735e48331e2d4155697d93a89b86705b46311c000e1f2f3b4252677c93a89b866f5a45413a2d1d2a374044566b82979079644f423a2e1e0d00000012273c52677c93a89b866f5a442f1a050000162b40566b82979079644f3a250f000000000000162b40566b8297a9947d68533e29130000000005182b3e5163758797988675675e5a5d66748598a08f7d6a5845311e0a0000000000000000000e23384d617274747474747474747474747474747474746b5b4a37230f001d324659686d747a80868a8d8f8f8f8c88827a7065594b3c2c1c0b000000000012273c52677c93a895806a543f2a23384e63788fa49b866f5a442f1a05000000000000000000000000001d32475c72889da48f78634e38230e00000000000000000000000000000004101c262f363c40424251627486989d8c796755422f1c0900000000000e1d2b37434c555c63686c70727476869b9f89735e48331e09000000081e33485e73899c87715c47321c07000008192a3a4b5c6d7d8f9f9082736456586a7b8d9e9283736455463728190a00000b1e2f3d47515960676c70737473716d665d514334241200000000000a1b2a353b3c3c3c3c3c3c3c3c3c3c3c3c4b60768c9d88725c47321d00000000000000001125384b5e708395867463534453606c7780868b8c8c8a87827768545c6d7d908c796754412e1b0700000000001e33485e73899f9f89735e4837323a4a5d708599aa96826c58432e1900182b3d4d575b677c93a89b866f5d5a564b3b283748545a5d6b82979079645b564c3c2a1600000012273c52677c93a89b866f5a442f1a050000162b40566b82979079644f3a250f000000000000162b40566b8297a9947d68533e291300000000000f2234465868788896948679726f72788492a0928271604e3b281502000000000000000000091e3144545e5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5b4e3d2c1a07001f344a5f7483898f95958f8a8887888b90968d8376695a4a392816030000000012273c52677c93a895806a543f2a23384e63788fa49b866f5a442f1a05000000000000000000000000001d32475c72889da48f78634e38230e00000000000000000000000000000514222e39434a505457575756687a8ea19785725f4c3925120000000007192b3b474c4941484e53575b5d5f6f869b9f89735e48331e090000000a1f344a5f748a9d88725c47321d0800001325374758697a8b9c8f8272635553647688999383736455463728190a00000000111f2b343e454c53585c5e5f5e5c58534a4034251606000000000015283947505252525252525252525252525260768c9d88725c47321d0000000000000000081b2e41536677899282716255484f5a636b7175777774716c655a5c6b7a8b91806e5c4a3724110000000000001e33485e73899f9f897360544a474c5868798da0a38f7b67533e2915001e32475a6a70737c93a89b8676726f695844304054666f72758297907973706a5946311c00000012273c52677c93a89b866f5a442f1a050000162b40566b82979079644f3a250f000000000000162b40566b8297a9947d68533e291300000000000517283a4b5a6a778590978d8886878c95988e8273645342301e0c000000000000000000000215263643494a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a473e301f0e00001f344a5f748a9d988b827974727072757c869495887868574533200d0000000012273c52677c93a895806a543f2a23384e63788fa499846e59442f1a05000000000000040809090906011d32475c72889da48f78634e38230e0508090908050000000000000005142332404b565e65696c6c6c6863718598a28f7b6854412d19050000000f22364959615d534b433e4246485c70879c9e89735e48331e090000000b20354b5f748b9f89735e48331e0900001b2f4354657687988f807162544e607183949384746455463728190a0000000000010e18212a31383e4347494a4947443e372e2216070000000000001c314457646767676767676767676767676767768c9d88725c47321d00000000000000000012243648596b7b8c90827265594e4750575d606262605c5854606d7a8a93837261503f2d1a080000000000001e33485e73899fa08d7d71665f5c6069768697a99986735f4c38240f001f344a5f7486898c97a49e8f8b8885725c473243586e84878b8e9b958c8886735e48331e00000012273c52677c93a89b866f5a442f1a0a0008162b40566b82979079644f3a250f00000000000b162b40566b8297a9947d68533e29130a00000000000b1c2d3d4c5a67727c868c9091918f8b847b706355463625130100000000000000000000000918252f343434343434343434343434343434343434332b20120100001e33485e73899f90796d65605c5b5d616975859797867562503c2915010001111e283c52677c93a895806a543f362e3a4f64798fa498836e58432e1903000000000410191d1e1e1e1b141d32475c72889da48f78634e3823121a1e1e1e1e191106000000000012223242505d6872797d8283827d776e7c90a49885705d4834200c000005182b3e52657670675e575250505361758a9f9c87715c47321c070000000c21364b60768c9f89745f4a341f0a00001f34495e7283948e8070615344566b7d8f9384746556463728190a0000000000000000050e161d24292e31343434322f2a231b1105000000000000001f344a5f747c7c7c7c7c7c7c7c7c7c7c7c7c7c7c8c9d88725c47321d00000000000000000007192b3c4d5d6d7d8c9183766b6159524d4a4b4c4c4f555d67727d8b92847465554433210f000000000000001e33485e73899fa4958f83797372747b8795a49e8d7b695643301c08001f344a5f748b8f8f8f8f8f8f8f8f88725c474144586e848f8f8f8f8f8f8f89735e48331e0001111e283c52677c93a89b866f5a442f271c0f1a252c40566b82979079644f3a271d10000001111e282d40566b8297a9947d68533e2d271c0f00000000000f1f2e3c495560697177797b7b797670685e5345372818070000000000000000000000000008131b1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1e180f020000001d32475c72889d8d7762524b4746484d57677a8ea292806c5844301c07000e1f2f3b4252677c93a895806a5c5249434353687c92a797826c57422c17020000000514222c3233333330271d32475c72889da48f78634e3823242e333333332d2416070000000b1d2f4051606e7a868e94979897928a82758a9ea08c77634f3b261200000c2135485b6e82837a726b67646468708092a597836d59442f1a050000000d22374c62778da08b745f4a35200b00001e33485c6e79857d6f615243405568758284746556473828190a000000000000000000000002090f15191c1f1f1f1d1a150f080000000000000000001f344a5f748b9393939393939393939393939393979d88725c47321d000000000000000000000d1e2f3f4f5f6d7b8995897d756d66615f5e5e6064697179848f8f827465564737261504000000000000001e33485e73899f9f8985928e8988898f98a49b8f806f5e4c3a271401001f34495e7278787878787878787878705c4a545a586c787878787878787878715d48331e000e1f2f3b4252677c93a89b866f5a45413a2d1d2a374044566b82979079644f423a2e1e0d000e1f2f3b4245566b8297a9947d685345413a2d1d0c0000000001101e2b38434d565d6265666664615c544c413528190a0000000000000000000000000000000000000000000000000000000000000000000000000000000000001d32475c71879c8a745f4b373230333a4a5e73889d9c88735f4a36210c00182b3d4d575c677c93a89786796f655d58585e6f8397a8937d68543f2a15000000001122323f4748484844392a32475c72889da48f78634e38263541484848484134251300000215283a4c5e6f7d8d989d91888383848991878498a7937d6955402c1702000f243a4f64778b968e87807c79797c838e9da2907c68533f2b16010000000e23384e63788da18c76604b36210b0000192d3f505c67726e60514234384a58636e7365564738291a0a00000000000000000000000000000000000000000000000000000000000000000000001f344a5f748b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b88725c47321d0000000000000000000000112131414f5d6b77838e9188827b7673737375787d858d93897d706456473829190800000000000000001e33485e73899f9f8974808a92989b9b9791897d706151402f1d0a00001b2f4354616363636363636363636360525d676f675e6363636363636363636053412e1a00182b3d4d575b677c93a89b866f5d5a564b3b283748545a5d6b82979079645b564c3c2a1600182b3d4d575a5d6b8297a9947d685c5a564b3b28150000000000000d1a26303e4c5a676a61564f4c4741392f24170a000000000000000000000a141a1b1b1b1b1b1b1b1b1b1b1612191b1b1b1b1b1b1b1b1b1b181106000000001b30465b70879c88725d48331e1b1e31465b70879ca28d78634e39240f001e32475a6a70767c93a4918c8c8279716d6c717c8c9fa28d7964503b261100000000192d40515c5e5e5e56483632475c72889da48f78634e383143535d5e5e5d5242301c08000a1e3144576a7c8d9d9d8d80746e6c6f757d898c9aad98846f5a45301b06000e23384d61707c8790999591909092979fa0948572604d392510000000000f24394e63788fa28d77624c37220d00001022323f4a555e5c504233242c3a46515c5f564738291a0b00000000000000000000000000070d1011100c06000000000000000000000000000000001f34495d707474747474747474747474747474747474746e5b46311c0000000000000000000000031323313f4d5a66707b858c93908c8988898b8e928f8880766b5f534638291a0b0000000000000000001e33485e73899f9f89736d767d838686837d756b5f5142332211000000132536444c4e4e4e4e4e4e4e4e4e4e56636f7a85796d604e4e4e4e4e4e4e4e4c43352412001e32475a6a70737c93a89b8676726f695844304054666f72758297907973706a5946311c001e32475a6a6f72748297a9947d74726f695844301b000000000000000e23374a5c6a787d73685b4e4133251c1206000000000000000000000e1c272e303030303030303030302b252d303030303030303030302c2317080000001a2f445a6f868d856f5a45301c26303c4c5f73889da59079644f3a250f001f344a5f74868b909aa38d7b88938d878383868d9ba79785725e4a36210d000000001e33485d6f73737365523d32475c72889da48f78634e38384d60717373705f4b36210c001125394d61748899a391806e6159575a616b778797a99d88735e49341f09000a1e3144535f6a737c858b9195979795928c8375665543301d090000000010253a4f647990a38d77624d38230e00000414212d384349483f3223151c29343f484a4438291a0b00000000000000000000000007121b22252625211a110600000000000000000000000000001a2e41515d5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5c503e2b170000000000000000000000000413212f3c48545e6870787d8387898b8a8886827b746c63594e4235281a0b000000000000000000001e33485e73899f9f89735e63696e6f6f6d6861594e41332415050000000818263138383838383838383e4d5a6774828d968b7a65503b3838383838383731261707001f344a5f7486898c97a49e8f8b8885725c473243586e84878b8e9b958c8886735e48331e001f344a5f7485888a8d9ba4988d8a8784725c47321d0000000000000011263b50657a899186796c5f514335261708000000000000000000091b2c3a43464646464646464646453e374146464646464646464646403526150200001a2f44596d7777776b57422d2f39424d5a6a7b8fa2a48f79644f3a250f001f344a5f748b96989b9e8d777580899298989aa09c9589796855422f1b07000000001f344a5f748989806b564132475c72889da48f78634e383c51667a898977624c37220d00162b4054687c90a49b877361504442464e5a68798ea3a08b76604b36210c0002142635424d57606970777c808282807c7770655748372614010000000011263b50667b91a48f78634e38230e00000004101b262f34332d2214050b17222c333430271a0b0000000000000000000000000a19252e363b3b3a352d23170a0000000000000000000000000011233341494a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a483f32210f0000000000000000000000000003111e2b36414c545d64696e7273747473706c67605950463c3024170a00000000000000000000031e33485e73899f9f89735e4f55585a5a58544e463c30241506000000000009151e2323232323232e3e4e5c6b7886929c8c7c6c5c4a37232323232323221d140800001f344a5f748b8f8f8f8f8f8f8f8f88725c474243586e848f8f8f8f8f8f8f89735e48331e001f344a5f748b8f8f8f8f8f8f8f8f8f88725c47321d000000000000000f24394d60708292978a7d6f6152443526160600000000000000001226394a575b5b5b5b5b5b5b5b5b5a4f46545b5b5b5b5b5b5b5b5b5b5344321f0b0000162a3d4f5d6262625c4d3b3a434c555f6a788899ab9e8a75614c37220d001f344a5f747d828486898676636c757d84888b8b8882776b5b4a38261300000000001e33485e738899846e594432475c72889da48f78634e383f54697d938c76604b36210c001a2f44596e8397aa95806c5844322d313c4c61768ca1a38d77624d38230e0000081724303a444d555c62676a6c6c6b68635c5347392a1a08000000000012273c52677c91a59079644f3a250f000000000009131b1f1e1910040000050f191e1f1c140900000000000000000000000009192836414a50504f49403528190a0000000000000000000000000515232e34343434343434343434343434343434343434332d2213030000000000000000000000000000000d19242f3841494f55595c5e5f5f5e5b57524c453d33291e1306000000000000000000000a161f33485e73899f9f89735e4840444444433f3a32291f13060000000000000002090d0e0e0e13273a4c5c6c7a89969e8e7d6e5e4e3e2d1b0e0e0e0e0e0d09010000001f34495e7278787878787878787878705c5a564c586c787878787878787878715d48331e001f34495e727878787878787878787878705c47311c000000000000000a1e314252637385959b8e80706253443424130100000000000000172c4155687070707070707070706d5d506470707070707070707070614e39251000000e2031404a4c4c4c493e444d565f68727c8997a6a695826f5b47321e09001c31445764686b6e70737468595962696f737474726d655a4d3d2d1b0900000000001d32475c72879c87725d4833475c72889da48f78634e3842576c82978b74604b36200b001d32475c72879ca6917b67523d291820354b5f748ba0a48f78634e38230e0000000e213242505b60605c53555757575f605e574c3d2d1b09000000000013283d52677c93a5907965503b2611000000000000000000000000000000000000000000000000000000000000000000000416273746545e6466645d53463728170500000000000000000000000005111a1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1e191004000000000000000000000000000000000007121c252d353b404447494a4a4846423e38312920170c0100000000000000000000091927333a485e73899f9f89735e48332f2f2f2e2b251e160c010000000000000000000000000000182d42566a7a8a999f90807060504030201000000000000000000000001b2f4354616363636363636363636360656f695f535e6363636363636363636053412e1a001b2f435461636363666f6863636363636052402d1900000000000000011324344556667788989e8f8271625242301e0a00000000000000192e43586e848787878787878787766053687d87878787878787877b66503b261100000313222e35373739444e576169727b858f9aa6a698887765523f2b18040015283947505356595b5e5f584a464e555a5e5f5f5d5952483c2f1f0f0000000000001b30465b70869b8b75604b36475c72889da48f78634e38455a6f869a8a745f4a341f0a001f34495e73899fa48f78644f3a240f21364b60768ca1a48f78634e38230e000003172b3e50606e7576706555485a697376736a5b4b392512000000000014293e53687d94a7917b66503b2611000000000b141819191919191919191919191919191918130b0000000000000000000e213345556471797b787064554534220f00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000009121921262b2f3234343433312d29241d160d04000000000000000000000000142637454e525e73899f9f89735e48331e1a1a1916110b0300000000000000000000000000000000182d42576c7a8691918271615142322212020000000000000000000000132536444c4e4e4e4e4e4e4e4e4e5e6c77827c7065584e4e4e4e4e4e4e4e4e4c4335241200132536444c4e606d78847a6f63574e4e4c4334231100000000000000000617273848596a7a8b9c9f9082705f4d3a251100000000000000192e43586e848e919a9c9c918f8c766053687d8d90979c9c928f8d7b66503b261100000004111b23313e4b56606a747d868f98a2aca19589796a594836231000000a1b2a353b3e414446494a453a333a4045494a4a48443e362b1e11010000000000001a2f445a6f84998e78644f3a475c72889da48f78634e38495e73889d89735e48331e09001f344a5f748a9fa38d77624d38230e22374c62778da2a38d77624d38230e0000091d32465a6d7d8a8b837361526677878c87796855412d190400000000152a3f546a8095a8937c67523c2712000001111e282d2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2d271d10000000000000000015293d506373838e918d827363513e2b1703000000000000000000000000000a1113120d04000000000000010c161b1c19120700000000000000000000000000000000000000000000000000060c12171a1d1f1f1f1e1c19140f090200000000000000000000000000001b30435562676973899f9f89735e48331e090000000000000000000000000000000000000000000014293c4e5d687380837363534333231404000000000000000000000000081826313838383838383838384e637789958f8376695c4e40383838383838373126170700081826313b50657a8b968d8274685a4c3e30251606000000000000000000091a2b3b4c5c6d7d8f9f9d8f7d68533e281300000000000000182d42576a76787c93a895807976705e52667477798fa49b86797775644f3a251000000000102131414f5c68737d889199a2aba3998f84776a5b4c3b2a19060000000c182126292c2f31343431281f262c31343434332f2a23190d0000000000000000192e43586d8398927c67524c4b5c72889da48f78634e4c4c61768c9d88725c47321d08001e33485e73889da38d77634d382310253a4f64798fa4a08b75604b36210c00000c21364b60758a9da0917d69586d8295a19885705c47311c0700000000162b40566b8095a8937d68533e281300000e1f2f3b42434343434343434343434343434343423a2e1e0d000000000000001b3044586c8092a1a7a092826e5b46321d08000000000000000000000005121d2528272116090000000006121e2930322e25190b0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001f34495e737b7d828a9f9f89735e48331e09000000000000000000000000000000000000000000000d1f303f4b56616d7365554535251506000000000000000000000000000009151e232323232323232334485a6a7a8b9b94887a6c5e4f402f23232323221d1408000000091523374a5c6c7c8d9d9286786a5c4d3e2e1d0a000000000000000000000d1d2e3e4f5f7082918c7d7062503b27120000000000000014283b4d5a60677c93a895806a615d5248585f63788fa49b866f6260574734210c0000000b1d2e3f4f5f6d7a86909ba4aca29990867c71665a4c3d2e1d0d0000000000050d1114171a1c1f1f1c150b12171c1f1f1f1e1b160f06000000000000000000172c42576c829795806b6262606072889da48f786360616264798f9c87715c47321d07001c31465b70859aa48f7965503b2615293e53687c92a79b87715d48331e0900000d22374c62778ca1ac97826b586e8499ae9e89735e48331e0900000000172c41566b8297a9947d68533e29140000182b3d4d57585858585858585858585858585858564c3c2a16000000000000001e33485d72889cafbbb09e8a75604b36200b000000000000000000000715232f393e3c342718090000051523303c45474136291b0c000000000000000000000000000000000000000000000000060b1014171819191715120e09020000000000000000000000000000001f344a5f748b9497999c9e89735e48331e09000000000000000000000000000000000000000000000212212d3944505b5f5647372717070000000000000000000000000000000002090d0e0e0e0e0e0e182b3c4c5c6c7c8d9d988b7c6d5e4d3b28140e0e0d09010000000000081b2d3e4e5e6e7d8f9e97897a6b5c4c3a2612000000000000000000000010203141526373847b6e60524433200c000000000000000b1e2f3d4752677c93a895806a5449413a454e63788fa49b866f5a4b453929180500000215283a4c5d6d7c8b98a3aca2998f867c73695f54483c2e1f100000000000000000000000000000000000000000000000000000000000000000000000000000162b40566b80959984787777767574889da48f7874767677787c929c87705b46301b0600182d41566a8093a7937d6955412d1d2f43586c8296a995826c58432f1a0500000b20354a5e7387999f927d69566b80929f9886715c47321d0800000000172c42576c8398ab95806a543f2a1500001e32475a6a6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6a5946311c000000000000001f344a5f748a9fb4c8b7a18c76604b36210b00000000000000000006162533414d5350453627180600112333414e595c5447392a1a090000000000000000000000000000000000000000020b131a2025292c2d2e2e2c2a27231d160f07000000000000000000000000001f344a5f737c7d8284878983735e48331e09000000000000000000000000000000000000000000000003101b27323e474a443829190900000000000000000000000000000000000000000000000000000d1e2e3e4e5e6e7d8f9e9b8c7c6b58432e190400000000000000000000102030405060708090a0998a796955412c17000000000000000000000003132434455566746b5e5042342616040000000000000000111f2b3c52677c93a895806a543f2e28384e63788fa49b866f5a4431281b0b0000000a1e3144576a7a8c9ba9a5998f867c726960564c42372b1f13040000000000000006090a0a0a0a0a0a0a07040a0e11121312110e0a0500000000000000000000152a3f54697d949f908f8d8c8c8b8b8e9fa0928b8b8c8c8d8d8f999b866f5a442f1a050013273b5064778b9e9985705d4b3a32394b5f72879ba18d7966523e2915000000071b3044576a7b888b837461506374838a887a6956422e190500000000192e43586e8499ab96826b56402b1601001f344a5f74848484848484848484848484848484735e48331e000000000000001e33485d718699aab4ae9c89745f4a35200b00000000000000000314243343515e68635445362411001a2e41515f6b71655748382716040000000000000000000000000000000000010c151f272e353a3e41424343423f3c37312b231a110600000000000000000000001c3044566367696c6e707371665644301b06000000000000000000000000000000000000000000000000000915202b333430271a0b0000000000000000000000000000000000000000000000000000000010203040506070809092877b6d59442f1a04000000000000000000000212223242526171829291867a6a56412c170000000000000000000000000616273748575f5a4d40322417080000000000000000000112273c52677c93a895806a543f2a23384e63788fa49b866f5a442f1a0a000000001125394d61748799aaa193877c72695f564d434040403b312212000000000005111a1f1f1f1f1f1f1f1f1c181f232627282726231f19120a010000000000000013283e53687c8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b846e59442f1a04000c2134485b6e8293a08d7a68584c474b57687a8ea29784715e4a37230f0000000014283a4c5d6a73747065564556657074736a5c4b39261300000000001a2f445a6f8499ac97826b56412c1702001f344a5f748b9999999999999999999999999989735e48331e000000000000001a2e4256697b8c999f9c90806c5945311c0700000000000000000f2031425161707c726353402c17001f34495d707c837566554433210f0000000000000000000000000000000007131e28323b42494e53565758585754514c463e362d23190d01000000000000000000142738464f525457595c5e5d5448392714010000000000000000000000000000000000000000000000000000030f181e1f1c140900000000000000000000000000000000000000000000000000000000000212223242526171828075695e4f3d2a160100000000000000000000000414243444546373848073685c4d3b271300000000000000000000000000091a2a39444a473d2f221406000000000000000000000012273c52677c93a895806a543f2a23384e63788fa49b866f5a442f1a0500000000152a3f53687c91a4a29283756a5f564c434a545656554e402f1d090000000515232e3434343434343434312b33383b3c3e3c3b38332e261d130800000000000011263b50647474747474747474747474747474747474747474747474746a57422d18030005182b3e5164758696988676685f5c5f677586989a8a796754412e1b07000000000b1d2f3f4d575e5f5c54473847545c5f5e574c3e2e1c0a00000000001b30455a6f869ba098836c57422c1702001f344a5f748b8b8b8b8b8b8b8b8b8b8b8b8b8b89735e48331e0000000000000013273a4c5e6d7b858988807161503d2a160200000000000000071a2c3e4f6070808e826f5a442f1a001f344a5f748794847362503e2b180500000000000000000000000000000c1925303b454e565d63686b6c6e6e6c6965605a524a40362b1e12050000000000000000091a28343a3d3f424447494941362a1b0a000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000004142434445463736e63574c4031200e0000000000000000000000000006162636465666746d61564b3e2f1e0b00000000000000000000000000000c1b283134322b1f110400000000000000000000000012273c52677c93a895806a543f2a23384e63788fa49b866f5a442f1a0500000000182d43586c8397ab98857364584d43394558676b6b6a5e4c38240f00000011233341494a4a4a4a4a4a4a443e484d50525352504d48413a3025190b00000000000d213547575f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5a4d3b28140000000f223446576877879495877b7472747a8693988b7c6c5b4a37251200000000000011212f3b44494a474136293641474a49443b2e20100000000000001b30465b70878b8b8b846e58432e1903001f34495d707474747474747474747474747474746f5c47321d000000000000000a1d2f404f5d697073726c61534332200d0000000000000000112437495b6d7d8f8d7b6b58432e19001d314558687a8d91806d5b4835210e000000000000000000000000000e1c2a36424e58616a72777c80838484827d7a756e665d53483c3022140600000000000000000b172025282a2d2f3234342e25190c000000000000000000000000000000000000000000000004060603000000000000000005080b0b0b0b08040000000000000000000000000000000000000000000000000616263646555e5c51453a2f22130300000000000000000000000000000818283848575f5a4f44392d2011010000000000000000000000000000000a151c1f1e180e010000000000000000000000000012273c52677c93a895806a543f2a23384e63788fa49b866f5a442f1a05000000001a2f445a6f8499a5907b6756473a3034495e7382827b66513c27120000001a2e41515d5f5f5f5f5f5f5f574e5b616567686765615c554d4237291a0b0000000005182a39444a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a473d2f1e0b000000051728394a596875828d958f8988898f9790867a6c5e4e3d2c1a0800000000000003111e28303434332d2419242d32343430281d10020000000000001b3045596d74747474746a57422d1803001a2e41515d5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5d513f2c1900000000000000001122313f4c555c5f5d584f433526150300000000000000061a2d405366788b95836f5e4e3c29150016293b4b5d7085988b7764513d29150100000000000000000000000e1d2c3a4754606b757d868d929391909092948f89827970655a4d40322415060000000000000000040c101315181a1c1f1f1a1207000000000000000000000000000000000000000000020b14191b1b18130b010002090f14191d202121201d19130b0200000000000000000000000000000000000000000000081828374349483e33281d1104000000000000000000000000000000000a1a2a39444a473d32271b10020000000000000000000000000000000000000000000000000000000000000000000000000012273c52677c93a895806a543f2a23384e63788fa49b866f5a442f1a05000000001a2f44596e8499a28d77624d382923384d62778c937c67523c27120000001f34495d707474747474747464586b76797c7c7c797671695f544738291908000000000c1b2831343434343434343434343434343434343434343434343434322b1f1100000000000b1c2c3b4a58646f798286898b8a88837c73685c4e40301f0e0000000000000000000b151b1f1f1e19110711191e1f1f1b150b0000000000000000162a3d4f5c5f5f5f5f5f5a4d3b2814000011233341494a4a4a4a4a4a4a4a4a4a4a4a4a4a4a484032221000000000000000000413212e3942474a48443d3226170800000000000000000d2135495c7083968d79655340301f0d000c1d2e4155687c9194826c5845301c08000000000000000000000c1d2c3b4a5865717d88928f88837d7b79797c80868c948d83776b5e5142332414040000000000000000000000000000000000000000000000000000000000000000000000000000000005131e282e30302d271e130f161d23292e3235363635322d271e150a000000000000000000000000000000000000000000000a19263034332c21160b000000000000000000000000000000000000000c1b283134322b201509000000000000000000000000000000010c151a1b1b1b1b1b1b1b1b1b1b1a160d0100000000000012273c52677c93a895806a543f2a23384e63788fa49b866f5a442f1a0500000000182d41576b8095a28d77624d3b35343b5065798f937d68533e29130000001f344a5f748b8b8b8b8b8b7c675a6f868f929393908b857c7265564737251300000000000a151c1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1e180e010000000000000e1d2c3a47525d656c71737474726e6860564b3e30221202000000000000000000000000000000000000000000000000000000000000000000000e20313e484a4a4a4a4a473d2f1e0b00000515232e34343434343434343434343434343434332d22140400000000000000000003111c262d323433302920150800000000000000000013283c5064788c9a86715d4a3623120100001225394d62768b9c88735f4b36220d000000000000000000091a2a3b4a596876838f90857b736d69666465676b7077808a95897c6f61514232221100000000000000000000050e1315151515120b010b1114151515130e0500000000000000000000041423313b424646413a3125242a31383e43474a4b4b4a47413b31271c0f0100000000000000000000000000000000000000000009141b1f1e190f040000000000000000000000000000000000000000000a151c1f1e180e0300000000000000000000000000000001111e292f303030303030303030302f2a1f1202000000000012273c52677c93a895806a543f2a23384e63788fa49b866f5a442f1a050000000014283d5165798da0917c69584e4a494b54687d93947d68533e29140000001f344a5f74888b8e9ba0937c675a6f868f8c8b8c8f98998f83746554422f1c090000000000000000000000000000000000000000000000000000000000000000000000000000000000000e1c2935404951575c5f5f5f5d59544d44392d2012040000000000000000000000000000060d1217191a1b1a18140f090200000000000000000213212c333434343434322b1f110000000005111a1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1e1911050000000000000000000000000a12191d1f1e1b150d0300000000000000000000182d42566b809495806b57422e1a070000000a1f33485d72889c8e7965503b26110000000000000000031426374858687786948a7d7268605954514f5052565c646d7784908d807060503f2e1d0b0000000000000000091721282a2a2a2a261e131e262a2a2a2a2822170a0000000000000000000f2132424e575b5b564d4336383e454c52575c5f60605f5c564e44392d1f10010000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000d1f2f3c4446464646464646464646443d30200e000000000012273c52677c93a895806a543f2a23384e63788fa499846f5a442f1a05000000000e22364a5d7082939987766a625f5e60656c829795806a543f2a150000001e33485c6d72758297a8937c675a6f80797674767b8593a19383725f4c382410000000000000000000030c1215151515151515151515151515140f060000000000000000000000000000000b18232d363d43474a4a4a4845403931271c10020000000000000000000000000007111a21272c2f2f302f2d29241e160e0400000000000000030f191e1f1f1f1f1f1e180e0100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001c31465b70869a917b66523d281400000001132535465b70869b937d68533e291400000000000000000e203244556676879687786c605656565656544b3d4550555a6672808f8f7d6e5d4c3a291604000000000000061727343d3f3f3f3f3b3023303a3f3f3f3f3d352819070000000000000000182b3e50606a70706a6054474c535960666c7174767674706a61564a3d2e1f0e0000000000000000000000000105090b0d0d0d0c09050000000004080a0b0a08050000000000000000000000000000000002070a0d0e0e0e0c080400000000000000000000000000162a3c4d585b5b5b5b5b5b5b5b5b5b594e3d2b17030000000e1a273c52677c93a895806a543f322b3a4f64798fa499846e58432e190300000000071a2d40536474849295887d7774737579808a9b95806a54402b15000000192c3e4f595d6b8297a8937c6755666c65615f616775879aa18f7b67533f2a150000000000000000061420272a2a2a2a2a2a2a2a2a2a2a2a2a2822180b00000000000000000000000000000006111a22292e3234343433302b251d140a00000000000000000000000000000d19242d353c4044444544423e38322a21170c00000000000000000000000000000000000000000000000000000000000000000000000811161717171717171717171717171717171717150e04000000000000070e13130f0700000000000000001e33485e73899e8f79644f3a24110100000b1e3042536374889c95806b56402b160000000000000005182b3d4f617384958777686b6b6b6b6b6b6b695a4755636a6b6b6b70808f8c7b6a584634210e0000000000001023354551545454544e4130404d54545454514636241100000000000000001d32475b6e7d86857d72645c61676d747a82868a8c8c8a857d74685b4c3d2c1b09000000000000000000080f151a1e20222222211e1a150f0a12191d1f211f1d19140b0000000000000000000000010a11171c2022232323211d19130c04000000000000000000001b3045596b707070707070707070706c5a46321d0800000c1d2c373e52677c93a895806a594e463f3f52677c91a697826c57422c1702000000000011233547566573808a92928c8a898b8e94948f89826b56402b160100000f21313d45566b8297a8937c67525457514c4a4c576a7d94a997826d58432e1900000000000000031424323b3f3f3f3f3f3f3f3f3f3f3f3f3f3d35291a0800000000000000000000000000000000060e14191d1f1f1f1e1b17110a0100000000000000000000000000000f1d2a3640495055585a5a5a57524d463d34291e1103000000000000000000000000060b1013131413110d08010000000000000000000c1a242b2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c29211607000000000d19232828231a0f020000000000001f344a5f748ba08f78644f3f2f1f0e000012263a4d60718292a397826b56402b16000000000000000e2134475a6d80918a7968687d82828282828276605063738082828274718294887563503d2a17040000000000162b3f53636a6a6a695f4d394c5e696a6a6a6454402c1803000000000000001f344a5f748a9a9990837371767b82898f959a97979799999186796a5b4a3826130000000000000009131c242a2f333637373736332f29231d262d32343634322e271d100000000000000000000a141d252b30343738383836322d2720170e0300000000000000001d32475c7287878787878787878787735e48331e09000016293b495358677c93a89682766b615954545b6d8295a8947d69543f2a15000000000000061829384756626d767d8488898a8987847d79746e64523e29140000000313202b40566b8297a8937c675240423d37343d52677c93a89b866f5a442f1a000000000000000c2032424f545454545454545454545454545247372512000000000000000000000000000000000000000000000000000000000000000000000000000000000000000f1e2d3b48535d646a6e6f6f6f6c67615950473b2f2111010000000000000000000a131a202528292a2826221c160d04000000000000091a2a374042424242424242424242424242424242423e3325150300000d1c2b363d3d372c20120300000000001f344a5f748a9f92806d5d4d3d2c1a0700162b4055697d8f9faa95806a55402b1600000000000003162a3e5164778a907d6c5b687d8d9397958f8a76605a6d809297968b7464768893806d5a4733200c0000000000192e43586e8080807c67523d50667b8080806f5a442f1a05000000000000001f34495d728595a0a09286878b9095918d8885838282848b97978978675543301c0800000000020f1b262f383e44484b4c4c4c4b48433e362f3941474a4b4a47433a2e1e0d00000000000003101c2731394045494c4e4e4d4b47423b332a201408000000000000001d32475c72888d90939c9c94908d89735e48331e0900001d314558676d727c93a5938f897d756d69686d798a9da38f7965513c2712000000000000000b1a293845505a63696f72737473726e6a65605a534635230f0000000002162b40566b8297a8937c67523c2c29243444566a8094a99b866f5a442f1a0000000000000012273b4f616a6a6a6a6a6a6a6a6a6a6a6a6a6555422d190400000000000000000000000000000000000002070a0d0e0f0e0e0c09050000000000000000000000000b1c2d3c4b596670788083868684827b756d63594d3f2f1e0c0000000000000006121d262e35393d3e3f3e3b37312921170d020000000012263848545757575757575757575757575757575757514332200c000b1c2b3a4852524a3d30211100000000001e33485d72879c9c8b7a6b5b4a37230f00172c42576c8398ada4907c67523d2814000000000000091e3246596d829486736151657378869b8d79756f5d6175899d958479715e6a7d908a76634f3b27130000000000182d42576c839594806a543f4f64798f9587705c47321c07000000000000001a2e42556776838c91929b918784807c77736f6c6b6c6f78899b9785725f4b38230f0000000312202c38424b53585d60626262605d58524a414c555c5f605f5c574c3c2a1703000000000413212e3a444d545a5e61636362605c564f473d3226180a0000000000001c31465b6e76787a889d9f897977766f5c47321d0800001f344a5f7482878c97a38d7d8b9289837d7d828a98a79987735f4b37220e00000000000000000b1a27333e474f555a5d5e5f5e5c5955504b4540362818060000000000162b40566b8297a8937c67523c27243342526273869aac97836d58432e1900000000000000152a3f546a80808080808080808080808080705b46301b06000000000000000000000000000000010910161b1f2223242323211e1a150f0905000000000000000416283a4a5a6977838d94989b9b9996908980766a5d4d3b28140000000000000917242f3942494e52535453504b453d342a1f1305000000182d4155666c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c614f3b26120015283a495866665b4e3f2f1e0d000000001a2f44596d8296a9998a7966533e2a1500172c42576c8295a0988875614d39240f0000000000001024394d617589907c695648565e6f869b8d77625c53677c909e8a77666053607488927d6a56422e190500000000162b40556a809597826c57424d62778d9e89735e48331e090400000000000013263849586670777b82959282706b67635e5a5756575b6b8094a28f7a66523e29140000011121303e4a555f676d727577777775716c665d535e6970747574716a5a46321d08000000011222313f4b5760686e737678787774706a635a4f44362819090000000000172b3e505c606372889d9f897363605d513f2c190400001f344a5f748b999c9fa28d7779838d959494969da0998c7c6a5744301c080000000000000000000916212b333b404548484a484744403c37312b24180a000000000000162b40566b8297a8937c67523c2733425161708091a3a3907c68543f2b1600000000000000152a3f546a80939595959595959595959487705b46301b0600000000000000000000000000000a141d242b303437383a383837332f2a241e1a140a00000000000e2134465768788895a09c928b8786878b9093887b6b57422d18030000000009182735414c565d6367686968655f5950473c3023150600001a2f445a6f838383838383838383838383838383837d68533e2913001c3145586776796c5d4d3c2b1907000000162a3e53677a8ea0a896826c57422c170015293e526576858b86796a5845311e0900000000000015293e53677c908975614d3a445a6f869b8d77624c5a6e839795826e5a4b44586c809486715d48331f0a0000030f17283e53687c9399846e59444b60758ba08b75604b36201c19110600000000091a2b3a48535d6366798ea08f7c69554e4a4642404250667a90a596826b56412c1700000d1f2f3f4e5c67727a82878b8d8d8d8b8782797065707c858a8b8986745f4a341f0a0000000d1f30404f5d69737c83888c8e8f8d8a867d766c61544637271705000000000f21323f484b5c72889d9f89735e4b48403222100000001f344a5f748285888a8d8a7766707982888c8f8f8b867b6e5e4c3a27140100000000000000000000040e1820262c3033333433322f2c27221d17100700000000000000162b40566b8297a8937c67523c3342516170808f9ea8978673604d39251100000000000000142a3f54697b7d80828495aa998583827d7c705b46301b0600000000000000000000000005111d2730393f45494c4e4f4e4e4c48433e38322e271c0e00000003172a3d5063758797a6998b7d76716f72767c848d7d6a57422d18030000000718273645535e6971777c7d7d7c79746c63594e4133241300001a2f445a6f869898989898989898989898989898947d68533e2913001f344a5f74868a7b6b5a483624120000000f24374b5e7083939f96826c57422c17000f2236485967717472695b4c3a281502000000000000192e42576c8296836e5a4631445a6f869b8d77625463768a9d8c7966523e3d5165798f8b76614c38230e000413212b313b50667b909b86705b46495e73899e8d77624d3832322d241708000000000d1c2a3740484e60748a9f9985715d4835312d2b3a4f647990a598836c57422c170005182b3c4d5d6c79858f96968f8b89898b8f958d8377828e989f968f8b745f4a341f0a000005182b3d4e5e6d7a86909790898684868b93928a8072645545342311000000000313222d33475c72889d9f89735e48332d2214040000001d324659686c6f727477786b5b5d666d737778787671695d50402f1d0b00000000000000000000000000040c12171b1e1e1f1e1d1a17120d0802000000000000000000162b40566b8297a8937c67523c41516170808f9ea89a8a79685643301d0a0000000000000011263a4d5e66686a6c7d94a998836d6b68676153402c180300000000000000000000000816232f3a444c53595e6163646363605d58534c47433a2c1b0900000a1e33465a6d8093a49c8b7a6d625c5a5d6168707a76624f3b281400000001132536455463707c868d919494938f8880766c5f5142301c08001a2f445a6f868b8b8b8b8b8b8b8b8b8b8b8b8b8b8b7d68533e2913001f34495d70829389776654412e1b080000081b2e41536474828a867866523e29150006192a3b49555d5f5d564b3d2e1d0b000000000000001c31465b7086937d6954402f445a6f869b8d776a6a71829393826f5c4936374b60758a8f7965503b2611001022323e46474e63788e9d88725d48475c71879c8f79644f4747474135261402000000000c19242d34475c71879ba08c77624d38231a2c3e53677c92a797826c57422c17000e2235485a6b7b8a979a8d827a767373767a828b958a93a0998d837a76705d49341f0900000e2235485a6c7c8c9895887c74706e7076808d9b9083736352402d1a070000000004101d32475c72889d9f89735e48331e110500000000172a3b4a54575a5d5f62635b4d4a52595e626363615d564c3f322211000000000000000000000000000000000000000000000000000000000000000000000000000000162b40566b8297a8937c67523c4d5e6f808f9ea6988a7b6b5c4a39271401000000000000000b1e30404c515355687d94a998836c5754524e44352311000000000000000000000008172634404c5660686e73767878787876726d67615c574a39261300001125394e62768a9da4917d6d5c4f4745484d545d69685946331f0c0000000b1e3042536372828e99a198908d8d8e9293897d705f4b37220d00192e43586b747474747474747474747474747474747466523d2813001a2e41516376899583705e4b3824110000001224364756646f7472685a4936230f00000c1d2b3842484a48433a2d1f1000000000000000001e33485e7388907b66513c2f445a6f869b8d808080848f8e83746452403032475c7287937c68533d281300192d3f505b5c5c61768ca08b74605c5c5c6f859a917b665c5c5c5c5344311e0a000000000007111a2f445a6f8499a5907a65503b262135495c6d829697927d68543f2a150015293e516477899a9b8b7b6f66615e5e61666e7a8c9fa497897b6f66615d51412e1a06000015293d5164778a9b9887766a605b595c636e7c8d9f92826f5d4a36230f0000000000001d32475c72889d9f89735e48331e0900000000000c1d2d393f424548505b5d5344424f5b656b6c6a645a4e3f2f2114040000000000000000000000000000050a0d0e0f0e0b0700060b0e0e0d0b08040000000000000000162b40566b8297a8937c675244586a7c8e9ea596897a6b5d4d3e2d1b0900000000000000000112222f383c3e53687d94a998836c57423c3932261706000000000000000000000717263544515e69737c83888c8f8f8f8d8b87827b75716856422d180300162b3f54687c91a59c8874614f3e33303339404c54544a3b2a170400000215283b4e607182919f9e90857c7777787d848c8a76624d38230e0015293c4e5b5f5f5f5f5f60768888866f5f5f5f5f5f5f584836230e0011233446596d82958e7a6754402d190500000718293847535b5f5d564b3c2b19070000000d1a262e3334332f271c0f0100000000000000001f344a5f748a8f79644f3a2f445a6f869b9995959494988b83796d5e4e3d30465b7086947d68533e2913001e33485c6e72727274899f8d7772727272728398937d7272727270614d38230e000000000008131b2e43586e8499a7927c67523c2723384e63788282828275624e3a2511001b2f44586d8295a3907d6c5e524c494d5c6b7a8a98a59c907d6d5e534c49413323110000001a2f43586d8295a18d7a68594c464447515e6f82959f8d7966523d29140000000000001d32475c72889d9f89735e48331e090000000000000f1b252a384a58636d71614e51606d79808380776c5d4d3b2917040000000000000000000000000912191f22232423201b141a20232323201d19140b010000000000162b40566b8297a8937c67524b5f74889aa59687786a5c4d3f2f200f0000000000000000000004111c23293e53687d94a998836c57422c251f150800000000000000000000021425354453626f7b869097958d898787888b9196908a86705b46311c07001a2f44586d8397aa95826c584436363636363639403f392d2213030000091d3144576a7d8fa0a08f807268626264687079826d5a47331f0b000d1f303e474a4a4a4a4b60768c9b866f5a4a4a4a4a4a453a2b19070005172a3d5165798e9784705c4834200b0000000b1a293540474a4843392d1e0e00000000000912191e1f1e1b140a000000000000000000001f344a5f748b8f78634e392f445a6f869b8e80807d80858f968c7c6c5a4734445a6f86947d68533e2913001f344a5f74888888888c9f91888888888888889896888888888879644f3a250f000000000a19262f3343586e8499a8937c67523c3333364a5c6a6b6b6b6b675846331f0b001e33485d72889c9b8773604e403b4b5b6a7a8a99a49688928b79675441342e2315050000001d32475c72879b9a86715d4b3b312f344052657a8fa495826c57422d180000000000001d32475c72889d9f89735e48331e090000000000000009152a3f546775807d6b5a61707d8b9598948a7b6a594633200c0000000000000000000005111c262d3337383938352f282d3538383835322d281e110200000000162b40566b8297a8937c67524f64788ea3998877685a4c3e2f2111020000000000000000000000000813293e53687d94a998836c57422c170b0200000000000000000000000d203142536271808d999a8d827973707072767d88959d88735e49341f0a001c32475c70879ba5907b66524b4b4b4b4b4b4b4b4b4b494031210e00001024384c6074889ba895827161554d4c4f545c666e63513e2b1804000112202b33343434364b60768c9b866f5a443434343431281c0d0000000e22364a5e73889c8c77634e3a2511000000000b18232c3234332e271c0f000000000000000000000000000000000000000000000000001f34495e7389907965503b2f445a6f869b8d776a686a7180909b8a7763503b475c7087937d68533e2913001f344a5f748b919191929e9b919191919191919aa0929191919079644f3a250f00000004162837434848586e8499a8937c6752484848473f4d5556565656544a3a291603001f344a5f748ba097836d584339495969798999a5968677869684705d4935211105000000001f34495e73899f97826c57422e1d1a25384d62778da39a866f5a45301b0000000000001d32475c72889d9f89735e48331e090000000000000000162b40556a7d9289786f73808e9c908c8f998876634f3b27130000000000000000000615222e3941484c4e4e4d4a433c40494d4e4c4a46423b2f200f00000000162b40566b8297a8937c67524f647990a5927d6a594a3c2e201103000000000000000000000000000013293e53687d94a998836c57422c1702000000000000000000000005182b3d4f607082909e9a8b7b6f655e5c5b5d616a788ca08c77624d38230e001e33485e73899ea38d786360606060606060606060605d4f3e2b160200152a3f53677b90a49f8b7765534339373a40495458534534210e00000313202a30303030364b60768c9b866f5a44303030302e271c0e000000071b3044596d8398927d68543f2a1500000000000610181d1f1e1a130a00000000000000050e1315120c030000000000000000000000001d32475c7187927c68533e2f445a6f869b8d776253556173869a93806a55414a5f7389917b66513c2712001f344a5f737b7b7b7b8297947d7b7b7b7b7b7c929b867b7b7b7b78644f3a240f0000000c203345555d5e5e6e8499a8937c675e5e5e5e5c514040404040403f382c1c0b00001f344a5f748ba097826b5641475767778897a6978777697d918d7865503c281400000000001f34495e73899f95806a543f2a1f29354253667a8fa49b86705b46301b0000000000001d32475c72889d9f89735e48331e09000000000000000012273b4f63768a978a848691998b7d767b8a927d6a56412c17020000000000000005152433404c555c616363625e584f515d6263625f5b574d3e2d1906000000162b40566b8297a8937c67524d61768a9c907964503f2f20100200000000000000000000000000000013293e53687d94a998836c57422c170200000000000000000000000e2134475a6c7d8f9f9e8d7b6c5e524a4746484e5c7084978f7965503b2611001f344a5f74899fa18c767676767676767676767676766d5a45301b06001a2f44586d8297ab98846f5b48362622252d3740433f3527170500000f21313d45464646464b60768c9b866f5a4646464646433a2c1b09000005162b40556a809597826c57422d180000000000000000000000000000000000000000091721282a2720160b00000000000000000000001a2f44596e8396826c58432f445a6f869b8d77624c43576c829799846e58444f63778d8d77634e39240f001c304456636666666a809596826b666666667a909c8872666666655a4935210c00000010253a4f63727373738499a8937c73737373736f5d48332b2b2b2b2a251b0e0000001f34495e73889c99846f5b485565758696a69888786861768b94806b57422d190e030000001d32475c70869a97826c574330313c475261708396aa98846e59442f1a0000000000001d32475c72889d9f89735e48331e0900000000000000000c2034475a6c7d8d99999b95897b6d606c80887d6d58432e18030000000000000011223342515d687076787877726b61606f77787774706a5c4935200b000000162b40566b8297a8937c6752475a6d7d9093806d5d4d3e2e1e0d0000000000000000000000000000091b2e4053687d94a998836c5743301d0a0000000000000000000003162a3e5164778a9ca693826f5e4e40363131334054677b8f937d68543f2a15001f344a5f74899fa4918c8c8c8c8c8c8c8c8c8c8c8c88725d48331e09001d32475c71879ba8937d6954402c180d111a242c2e2b231709000000192c3e4f595b5b5b5b5b60758b99846e5b5b5b5b5b5b574a39261200011323334253687d949a856f5a442f1a000000000001070b0b0a0600000000000000000b1927343d3f3b33281d1003000000000000000000162b4054697d9387725e4a37445a6f869b8d77624c49576c82979a866f5a4455697d9288735e4a35200b00142738464f505053687d9398836d58505063788e9f89735e505050493c2b190600000011263b50667b8989898a9ba995898989898989745f4a341f161616151108000000001b3044596d82949f8b77655463738494a4998a796a5a5c71879a86705b46322b2113040000192d42566a7d929b87725f4e3d444e596470808fa0a5927d6a55402c170000000000051d32475c72889d9f89735e48331e09000000000000000004172a3d4e5f6e7b85898983776b5d4f6376746a60513e2a1501000000000000081b2e4051616f7b858b8f8f8d878074687c8d8f8d898677624c37220d000000162b40566b8095a8937c67523d4f607182938c7b6b5c4c3c2b1a08000000000000000000000000011426384b5d6f8295a39985725f4d3a271402000000000000000000091e32465a6d8294a79d8a7663514030221c1c25384c5f7384827d6b56402b16001e33485e73889da4908888888888888888888ea1a08b745f4a341f0a001f344a5f73899fa48f7965503b2611000007111719161006000000001e33485c6d70707070706f748b98836f7070707070706855412c17000b1e304151607082959b866f5a442f1a000000000b151c20211f1b140b0000000000091a29374551544f453a2e211406000000000000000011263b4f63778c8d79665346545c6f869b8d77625c5e6473879b96826d584a5d718595826d5944301b0700091a28343a3b3c51667b9199856f5a444c61768ca08b76604b3b3b362c1e0e0000000011263b50667b8d8d8d8e9daa978d8d8d8d8d8b745f4a341f0a000000000000000000162a3e516477899995837262718291a29b8b7b6b5b4c586e849889745f4a453e312210000013273b4f627587988f7d6b5b4d57616b76828f9ea8998875624e3b26120000000009172132475c72889d9f89735e48331e090000000000000000000d1f3041505e697073736f665a4d47586361574e4233210e000000000000001125384b5d6f808d98a09a9391929286798095a18f8b8b77624c37220d00000014293f53687d93a8937d68533e4354647486978a7a6a5a493725120000000000000000000000000c1e304355677a8d9f918d8f7c695644311e0c0000000000000000001024384d6175899daa96826d5a4634221207091c304357686f6c6960503c2813001c31465b70869aa38d777272727272727273899fa18c76604b36210b001f344a5f748ba0a38d77624d38230e0a13191a1a1a181309000000001f344a5f74878787878786868a9985868687878787846e58432e190014283b4e5f6f7d8f9f9a856f5a442f1a000002101d28303536342f271d10020000001427384755636a62584b3f32241709000000000000000c2034485c708496836f5d50647175869b8d777372737882919b8c79665354677a8d8d7966523e2a160100000b192630343a4f64798f9c87705c474a5f74899f8d77624d3834342e24160600000010253b5064767777778499a8937c7777777777715e49341f0a0000000000000000000e223547596b7a8a97908272808f9f9d8d7c6d5d565c5f6c83988c76605d5a4f402d1a06000c1f33455769798a988a796b606a747d89949fa5988a7a6a5846331f0b000000061727343d475c72889d9f89735e48331e0900000000000000000002132332404c555c5e5e5b53483c3a474e4d443b3124150400000000000000182c4054677a8d9ea394877d7b7c838c8b80959f89747471604b36210c00000012263b50657a8fa495806b564036465768798c9889776654412e1b07000000000000000000000416283b4d607285989b8882958673604e3b281503000000000000000014293e53677b90a4a48f7a66523e2a1705000014273a4a565a57544e4232200d00192d42576c8295a48f79655c5c5c5c5c5e73899fa08c76604b36210b001f344a5f748ba0a18c76604c37210e1c272d2f2f2f2d261b0d0000001f344a5f748b9c9c9c9c9b9a9ba39a9b9b9c9c9c99846e58432e1900192e43576a7d8e9daa95826c57422d18000010202e3b444a4b49433a2e20110000001c30445665738075695d50423427190a00000000000005192d4154677a8e8c796856687d8b909c928b8988898d94938a7d6e5c4f6072849784705d4a36230f00000316273743494a4d62778d9d88735e4a4a5c72889c8f79644f4a4a49413424120000000d213548586162626e8499a8937c67626262626053422f1b0700000000000000000005182a3c4d5d6b79869190838d9e9f8f806f5f546770737683988d7775726d5d49341f0a000316283a4b5c6b7987928a7c737d87919ba6a194887a6b5c4c3a2816030000001023354551565c72889d9f89735e48331e09000000000000000000000414222f39414749494640372b2a34393831281e140600000000000000001c31465b6f8498aa9986756a66686f7984909c9f89735f5e5343301c080000000e23374c60758a9e98846e5a4531394a5c6f83979584715e4a36210d000000000000000000000e213346586a7d90a29380798c907d6a584532200d0000000000000000192d42576c8296ab9f8a75604c38230f0000000a1c2c394244423f3b322415030014293d52667a8ea2937d69554747474a5f748a9f9f89745f4a341f0a001f344a5f74899fa18c76614c37221c2c394244444442392b1b0900001f344a5f74898989898988878b9986878889898989846e58432e19001c31475c70869baca08e7a66523e2914000b1d2e3e4c575f605e574c3e2f1e0c00001f344a5f738391877a6e6052453628190a0000000000001125384b5e708395867463687d8787878787888989888480766c5f505c6d7d908c796754412e1b0700000b1f3345555e5f5f60768ba08b745f5f5f5f70869b907b665f5f5f5d52422f1b07000005182a3a464c4c586e8499a8937c67524c4c4c4b4335251f1b140900000000000000000d1e2f3f4d5b68747d88979ca39182706151576c83898c8f9c948d8b8876604b36210b00000b1c2d3e4d5c6975808a8f87909aa4a59a8f8376695c4d3e2e1d0b00000000162b3f53636b7075889d9f89735e48331e09000000000000000000000004111d262d323434312c2419182024231e150b020000000000000000001f34495e73899ea6917c695851545c6672869b9f89735e494235251401000000091d32465a6e83969d8874604c392d4054697d94a18d79644f3a251000000000000000000006192b3e506375889a9e8b776f83968875624f3c2a1704000000000000001c31465b70869aaf9b86705c47321d09000000000e1c272d2f2d2a261f140600000e23374b5f7286989884705c4a3e3e5064788da29a86705c47321d08001d32475c71879ba38d77634d382327394a565a5a5a564938251200001e33485d6f737373737372748b9883707273737373736a56422d18001c31465b70869a9f9383705e4a37230f0014273a4c5c6a737672695c4d3b281502001e33475b6c7c8d988c7d70625446372819090000000000081b2e415366778992827164707070707071727373726f6a635a4f5c6b7a8b91806e5c4a3724110000000f24394e627374747474899f8c7774747474748398937c74747474705e4a35200b0000000c1c29333743586d8398a8937c67523c373736302c33343026190a000000000000000011212f3d4a5664758798a69a8a7c706558576c83909090909090908c76604b36210b0000000f202f3e4d5c6a7783939ca3a69e99887c7165594c3e2f20100000000000192e43586e80858a90a09f89735e48331e09000000000000000000000000000a12191d1f1f1c181007050c0f0e0a0200000000000000000000001f344a5f748ba0a38d78634e3c40495a6f869b9f89735e48332517080000000003172b3f5366798c9f8f7b685645393e53687d93a7927c67523c2712000000000000000000112436485b6d8092a594826e66798d92806c594634210e000000000000001e33485e73889dad98836d58432e190400000000000a13191a1815120b02000000081b2f4356687b8d9e8c79685a53535c6d8093a693806b57422d1904001a2f44586d8297a5907a65513c272d4256686f6f6f6755412c170200192d40515c5e5e5e5e5e5f748b99846e5d5e5e5e5e5e594c3a271300192e42576a7c898a82746453412e1b08001b2f43576a7a888c877a6a5845311d0800182b3e4e5e6f80909c8f827264554637271605000000000012243648596b7b8c908272655b5b5b5b5c5c5e5e5c5a565054606d7a8a93837261503f2d1a080000000f253a4f64798b8b8b8b8e9f918b8b8b8b8b8b8b9b978b8b8b8b8b76604b36210b000000000c171e2c41566b8095a8937c68533d282221313e4849433727160400000000000000031225384b5d708294a598888c8f8376695c6b79797979797979797974604b36200b00000215283a4b5c6b7a8895a1a89e93898d8c8274675849392817050000000000192e43586e84989b9da09f89735e48331e150a0000000000000000000000000000000000000000000000000000000000000000000000000000001f344a5f748a9fa38d77634e3c32445a6f869b9f89735e48331e090000000000001023374a5d6f829398867363564e4e586b8095a7927c67523c27120000000000000000091c2e415365778a9d9d8a76645d708396897663503e2b18050000000000001f344a5f748b9fab97826b56412c17010000000000000000000000000000000000001326394c5d6f80909787776d68686d798a9c9b897663503c28140000152a3f53677b90a394806a56422f32475c708686846e58432e1904001122323f47484848484b60768c9b866f5a4848484848463c2e1d0b0014273a4d5e6c74746f64564736241200001f34495d728799a1998874604b36210c000f20304051617283939f91837364554534220f000000000007192b3c4d5d6d7d8c9183766b6159524d4a48484b4f555d67727d8b92847465554433210f000000000f253a4f64798f8f8f8f8f9c988f8f8f8f8f8f8f989e8f8f8f8f8c76604b36210b00000000000314283d52667b90a494806a55402c29333f4f5c5e554533221000000000000000061a2e4154677a8d9f9c8b797c8b94887a6c5e646464646464646464635644311d0800000b1f32455769798a98a6a1958b80767b8992857667574634220f000000000b192e43586e808386888b8d86735e483932271b0f0100000000000000000000000000000001070b0d0e0f0e0c08030000000000000000000000001d32475c708599a6917d6a5a4e46445a6f869b9f89735e48331e09000000000000071a2d4052637485959282736963636875889ba28e7964503b251000000000000000021426394b5d708395a693806d5a5366798d93806d5a483522100000000000001f344a5f748ba0ab95806a543f2a15000000000000000000000000000000000000000a1c2e40516171808d968a827c7c828b98998d7c6b594734200d00001024384c6073879a9a86725f4c3c364b60758a9b866f5a442f1a05000514222c32333333364b60768c9b866f5a4433333333312a1e1000000b1e2f404e595f5f5b52463829180600001f344a5f748a9fb2a38d78634e38230e0002122333435464758696a192837362513e2a160000000000000d1e2f3f4f5f6d7b8995897d756d66615f5e5e6064697179848f8f827465564737261504000000000f24394e6376787878788397947d78787878787b91998478787878735f4b35200b0000000000000f24384c6075899c98846f5b473b3e45505d6d7362513f2e1c0b0000000000000d2135495d708598a3907d6d6c7a8b988b7b6b594f4f4f4f4f4f4f4f4e4638271502000012263a4e61758798a89c8f83786d636a788995867563513e2b18050000091a28354153636b6d707275777568584e4d45392c1f0f00000000000000000000000000060e161b2023232423211d18110900000000000000000000192d4155697c8f9e9a88786b615a565a6f869b9f89735e48331e090000000000000010223546576776859291867c78787c8694a39685725e4a36220d000000000000000c1e314356687a8da09c897663504a5d7083968a7764523f2c1a0700000000001f344a5f748ba0ab95806a543f2a1500000000000000040606060502000000000000001122334453616f7b868e949393969690887c6e5e4e3c2a17040000091d3144576a7c8fa08f7c6a5a4e4a5064798e9b866f5a442f1a0500000410191d1e1e21364b60768c9b866f5a442f1e1e1e1c160d000000001222303c454a4a473f35281a0b0000001d32475c7084959f9c8a76614c37220d000005152636475767788999a191806d58432e1900000000000000112131414f5d6b77838e9188827b7673737375787d858d93897d706456473829190800000000000c20344758626363636a809596826b63636364798f9c8771636363615544301c08000000000000091d3145596c80919e8a766455505259626d7b806e5d4b3a281603000000000012273b5064788da0998673615c6c7c8e99897764513e3a3a3a3a3a3a3933281a0a000000172c4055697d92a49d8d7d71665b515a6a7c8f93826e5b4834200b000014273846525f645b585b5d60636258576361564a3d2d1b0800000000000000000000030f19222a303438383a3836322c251c1308000000000000000012263a4d5f70808f9a97897d756f6b686f869b9f89735e48331e09000000000000000517283949586774808a93928e8d9198999186776755432f1b070000000000000417293b4e60738698a592806c5946405366798d95826f5c4936241102000000001f344a5f74899fab95806a55402b1600000000000812191b1b1b1b160e0200000000000516263544515e69727980838484827c746a5e5040301f0d0000000114283a4d5f7082929988786b625f60697d939b86705b46301b06000000000000000b21364b60768c9b866f5a442f1a05000000000000000004121f29313434322c23170b00000000192d41546676838a897d6d5a47331e09000000081829394a5a6a7b8c9183756654402c1700000000000000031323313f4d5a66707b858c93908c8988898b8e928f8880766b5f534638291a0b00000000000005182a3a474d4e4e53687d9398836d584e4e62778d9e89735e4e4e4d45372714010000000000000216293c4f617385959482736966676c75808c8c7a695746321e090000000000162b4055697d93a6927d69564e5f70849794826e5a46322525252525241f160a000000001a2f44596e8498a2907d6e6053493e4d5f72879b8b77634e3a251100001c3044566470796a5c4d484b4e4d56657574685b4a37230f0000000000000000000614212c363e44494c4e4f4e4b4640382f251a0d000000000000000a1d30415261707c879097918a84807d7c869b9f89735e48331e0900000000000000000a1b2b3a4956636d778085888b8b88847d736859493826130000000000030f17213446596b7d90a39b8875624f3c374a5d7083978c796653402d1b160d0100001e33485d72879cac97826c57422d18030000000b1a252d303030302a201303000000000008172635404c565f656a6d6e6e6c6760574c4032221201000000000b1e3042536373829097897d7774747985989c87705b46301b06000000000000000b21364b60768b8b866f5a442f1a05000000000000000000020d161c1f1f1d18100600000000001124374858667074736c604f3e2b1804000000000b1b2c3c4d5d6e7d827365574837251100000000000000000413212f3c48545e6870787d8387898b8a8886827b746c63594e4235281a0b00000000000000000c1c293338383b50667b909b86705b464b60748ba08b76604b38383227190900000000000000000d203244566676869391857d7b7c8289929d988775614c37220c0000000000182e43586d8398a18c77624e4154687c919e8a75604b36210f0f0f0f0f0b0400000000001b30465b70879c9b8672605042363044586d8398927c68533e291400001f344a5f7382897a6b5c4d3e4756657484867966513c27120000000000000000071624323e4951595e62636463605b544c42372b1e0f0000000000000012243443525f6a737b83888d9194939392a09f89735e48331e090000000000000000000d1c2b3845505a636a70737474736f6961564a3b2c1a09000000000413212b323e516375889ba3917d6b5845322d4053677a8d9683705d4a37302a1f1101001a2f44596e8498ad99846f5a45301b0600000618293742464646453d31210f000000000011243544525c60605b55585858595f605d564a3b2a18050000000001132435465564717d8992928c8b8b8e95979187705b46311c07000000000000000b20354a5e707474746b58432e190400000000000000000000000000000000000000000000000007192a3a48535c5f5f594f4232200e0000000000000e1e2f3f50607070635547392a1a0800000000000000000003111e2b36414c545d64696e7273747473706c67605950463c3024170a000000000000000000000c171f2324394e63788f9c88725d48485e73889d8d77634d38231e15090000000000000000000315273849586775828c94929191969b978f877c6f5f4a36210c0000000000192e43586e84999f8a745f4a394d62778da28e78644f3a240f00000000000000000000001b30465b70879c97826c574332242d42576c839895806a55402b1600001e33485c6e80918a7a6b5c4d5565748493877563503b2611000000000000000415253442505b656d7377787978746f685f54493c2d1e0f00000000000006162534414d5760686e73787b7d8282869b9f89735e48331e09000000000000000000000d1b27333e4750565b5e5f5f5e5a554e44392c1d0e00000000001022323e464b5b6e8093a59a8774614e3b2c2c3a4a5d7084978d7a675449453c2f1e0c00172c4055697d93a79d88735e4935210d00000f223547555b5b5b594f3e2c1904000000071b2e4153626f76756f62534c5d6b74767267594835220e0000000000061728374654606c767d84888b8b8a87837c766d5a46311c0700000000000000071b2f42525d5f5f5f5b4e3c291500000000000000000000000000000000000000000000000000000c1c2a3740474a4a453d312314030000000000000011213242515d5d534537291b0c0000000000000000000000000d19242f3841494f55595c5e5f5f5e5b57524c453d33291e1306000000000000000000000000040b0e22374c62778c9f8a745f4a465b70869b8f79644f3a2510020000000000000000000000091a2b3a4957646f788086898b8987827b736a5e51412f1b070000000000182e43586d83979f8b745f4a364b60768ca1907a66503b261100000000000000000000001a2f44596e849897836c5843342f35475b70869a95806a543f2a150000192c3f50617284958a7a6b5c647383938c7a68574634200c000000000000001022334352616d7882888c8f8f8d8a847b7266594b3c2d1c0b0000000000011323323c40444c535a5f6366696b6f869b9f89735e48331e0900000000000000000000000a16212b343b4146494a4a4845403a31271b0e000000000000192d3f505b5f66788b9ea3907d6a5d574a38384a575d677a8d978571625e594d3c29150012263b4f63778c9fa18d7864503c2815030014293e52657070706d5c48331e090000000c21364a5d70828b8a82705e56697a898c857664513e29150000000000000a192836434f5962696f73747474726d68615b4f3e2b1703000000000000000012243441494a4a4a473e301f0d0000000000000000000000000000000000000000000000000000000c19242d323434312a201405000000000000000003142433414949413527190b000000000000000000000000000007121c252d353b404447494a4a4846423e38312920170c010000000000000000000000000000000b20354a5f748a9f8c77624c44596e8499917c67523c2712000000000000000000000000000d1c2b3946525c656b70737473716d6760574c41332412000000000000162b3f54687c91a28d786451434e62778ca18f7964503b25100000000000000000000000172c4055697d919b877360514744485364768a9f907c67523d281400000f21334455667789998a7a6b73839290806d5c4b3a281704000000000000091c2e40516170808b9599908a88898f988f8477695a4b3a291705000000000a1e30414f56524940454a4e51545a6f869b9f89735e48331e09000000000000000000000000040e1820272d3134343433312c261e150a000000000000001e33485c6e74798396a89b8678767268554040556872767884988e7b77736b58442f1a000c2034485c708396a793806b58453221120b182d42576b828787745f4a35200b0000000f243a4f64788d9f9f8e79655c708699a195826d58432e19040000000000000a1825313d464e555a5e5f5f5f5d59534d473e31200e0000000000000000000616242e34343434332b201201000000000000000000000000000000000000000000000000000000000711191e1f1f1c160d02000000000000000000000615232e34342e241709000000000000000000000000000000000009121921262b2f3234343433312d29241d160d040000000000000000000000000000000000081e33485d72888b8b78644f42576c828b8b7d69543f2a1400000000000000000000000000000d1b28353f4951575c5e5f5e5c58534c443a2f2315060000000000001125394e6174879894826f60585b6a7d929c8975614c37230e000000000000000000000011263a4e61748697907d6f635c5a5c64718294998875614d392410000004152637485a6b7c8e998a7a839295847261503e2d1c0b000000000000001326394b5d6e808f9d96887c7572747a86949588786958473522100000000013263a4d5f6b655c534c464444495d72889c9d88725d48331e090000000000000000000000000000050c13181c1f1f1f1e1c18120a0200000000000000001f344a5f74898e93a0a0a0928e8b836c574242576c838b8e919e9a908c87705b46301b0005192c405366798c9e9b887461503f3025212131465b70859a8c76604b36210c0000000f253a4f647990a5a8937c675c72889daf9b866f5a442f1a050000000000000008141f2a333a4045484a4a4a48443f39332b2113030000000000000000000006121a1f1f1f1f1e180f02000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005111a1f1f1a12060000000000000000000000000000000000000000060c12171a1d1f1f1f1e1c19140f090200000000000000000000000000000000000000031b3045596d74747473624e3f54687474747467533e29140000000000000000000000000000000b17222c353d4247484a4847443f3830271d1205000000000000000a1e314457697a8b988e7d726e6f78889b8f7d6c5946321e0900000000000000000000000b1e314457687989968e8076706f71778290998c7b6a5845321e09000000081a2b3c4d5e6f8292998a919a897766554332211000000000000000071b2f4255687a8d9e9b89786a605d5f6875869897877564523f2c19060000091c304356697c786f67605b59595c67798da19a86705b46311c060000000000000000000000000000000000000000000000000000000000000000000000001f344a5f748b8b8b8b8b8b8b8b8b836c574242576c838b8b8b8b8b8b8b87705b46301b00001124374a5c6e8091a292806e5d4e41393636384a5f74899e8d77624c37220d0000000e23384d62768a9c9f8f7a665a6e8395a095826d58442f19040000000000000000020d171f262c3033343434332f2a251e180f030000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000040f161a1a1a1a160e0400000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000162a3d4f5c5f5f5f5e5545394a595f5f5f5f58493724100000000000000000000000000000000005101921282e31333433322f2a241d140b0000000000000000000215283a4b5c6c7a87918f8783858b968c8070614f3d2a16030000000000000000000000021528394a5b6a77848e938b8686878b9491877b6d5d4d3b281502000000000d1e2f4152637486979f9f8e7c6b594837261403000000000000000e22364a5e728598a5927d6b5a4c484b57687a8da194826f5c4935210d00000e23384c5f72868c837b74706e6e70778596a894806b57422d180400000000000810141515151515151515151515151515151515151515130e0500000000001f34495d70747474747474747474746955414155697474747474747474746d5945301b0000071a2d3f51627384949d8c7b6c5f544d4b4b4d5163788da28f78634e38230e0000000a1f33475a6d7d888a82715f536677858b867766523e2a160100000000000000000000030b12171b1e1f1f1f1e1a16100a04000000000000000000000000000000000000000000000000000004090b0b0b0b0b0b0b0b0b0b0b0b0b0a0400000000000615222b2f2f2f2f2a211405000000020e161b1b1b1b191309000000000000000000000000000000000000040c10111111111111111111100b020000060d10111111111111111111110f090000000000000000000000000000000e20313e484a4a4a4943372d3b464a4a4a4a453b2c1a08000000000000000000000000000000000000060e14191c1e1f1e1d1a1510090100000000000000000000000b1d2e3e4e5c69747d85898b8a8782796e61524332200d000000000000000000000000000a1c2d3d4c5a66717a8287898b8a88837c74695d4f3f2f1e0c000000000001122334455667798a8b8b826f5e4d3c2b1908000000000000000014283d5165798ea29e8a75614e3c33394b5e71869a9f8c7864503c281400000f253a4f64798792978f89868484868b95a39d8b7865513d281400000000000e1a24292a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2822170a000000001a2e41515d5f5f5f5f5f5f5f5f5f5f5a4c3a3a4c5a5f5f5f5f5f5f5f5f5f5c4f3d2a160000001022334555667585929a8b7c716862606062666c7c91a48f79644f3a250f00000004182b3e4f5f6c73746f625348596771747268594836230f0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000d171e212121212121212121212121211f180e010000011324333e444444443e32231200000313202a303030302e261a0c000000000000000000000000000000000b172025262626262626262626251f15080d19212626262626262626262626241d1204000000000000000000000000000213212c333434343430261d2a323434343431291d0e0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001020303e4b57616a70737474726d665c51433425140200000000000000000000000000000f1f2e3c49545e666d71747474726e6861574c3f31211100000000000000051627394a5b6c747474736352412f1e0d000000000000000000192d42576b8095a998846f5a46321f2e42576b8095a894806b57422d1904000d22364a5c69747d8890979b99999b9f9e978d7d6d5c4935210e000000000c1d2c373e3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3d3528190700000011233341494a4a4a4a4a4a4a4a4a4a463c2e2e3c464a4a4a4a4a4a4a4a4a483e31200e0000000416273848576674828d988f857c777576777a828997a3907b66503b2611000000000e2031414f595f5f5b52443b4a555d5f5d564a3b2b19070000000000000000040e15171717171717130b00000000000000070b0b0b0b0b0b0b0b0b0b0b0b0b080200000000000000000e1e2a3336363636363636363636363636332b1f100000091d304251595a5a5950412f1c08000f21313d4546464642382a19070000000000000000000000000000091a28343a3b3b3b3b3b3b3b3b3b393226171d2b353b3b3b3b3b3b3b3b3b3b3b382f22130200000000000000000000000000030f191e1f1f1f1f1b140c171d1f1f1f1f1d160c000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000212202e3a444e555b5e5f5f5d59524a3f3325160700000000000000000000000000000001101e2b37414b52585c5f5f5f5d5a544d443a2e21130300000000000000000a1b2c3d4e5b5f5f5f5e5545342312010000000000000000001c31465b70869aa994806a55402c17283d52677c91a69a86705c47321d0800071a2d3e4c57616b747b83888c8d8d8c89837a6f60503e2c19060000000016293b4953545454545454545454545454545454545454545451463624110000000515232e3434343434343434343434322a1e1e2a32343434343434343434332c21130200000000091a2a394856636f7a858d94918d8b8c8d909597938f8b7b67523c271200000000031323313d454a4a473f342c3842484a4942392c1d0d0000000000000000071621292c2c2c2c2c2c271d100100000006121b202121212121212121212121201d150a000000000000081b2c3c474b4b4b4b4b4b4b4b4b4b4b4b4b483d2e1d0b000f24384c606e6f6f6d5e4b37220d00192c3e4f595b5b5b56483724100000000000000000000000000000142738464f5050505050505050504e4435232a3b4850505050505050505050504c40311f0c000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000002101c28313a4146494a4a48443e362d2215070000000000000000000000000000000000000d1a252e373e43474a4a4a4845403931281d1103000000000000000000000e1f303e474a4a4a494337281705000000000000000000001e33485e73889da7917c67523d2813253a4f64798fa49f89745f4a35200b00000f202e3a454e5860686e7376787877746f675d514232210f00000000001d314558676a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6454402c180300000005111a1f1f1f1f1f1f1f1f1f1f1f1d170d0d171d1f1f1f1f1f1f1f1f1f1e190f030000000000000c1b2a3845525d677178808488898a898886827d79757163503b261100000000000413202a303434322c221b262e3334342e261b0e0000000000000000031525333e4242424242413a2e1f0e00000616242f3536363636363636363636363631281b0b00000000001024384a59606060606060606060606060605b4c3a27130011263b50667b868678634e39240f001e33485c6d70707066533f2b1602000000000000000000000000001c304456636666666666666666666153402c34475965666666666666666666665e4e3b271300000000000000000000000001070d11141617171614110d07000000000000000000000000000000040c101111111111111111111111111111111111111111110f09000000000000000000000000000000000b151e262d31343434332f2a231a1004000000000000000000000000000000000000000008121b23292e3234343433302b251e150b0000000000000000000000000212202b33343434343026190a00000000000000000000001f344a5f748ba0a5907965503b261023384e63788fa3a18c76604b36210c000002101e2a353f474c53595e616363625f5a544b403223140300000000001f344a5f748080808080808080808080808080808080808080705b46311c07000000000000000000000000000000000000000000000000000000000000000000000000000000000000000c1a2834404b545d656a6f72737473726f6c6965605d554634200c000000000000020d161c1f1f1d181009121a1e1f1f1a13090000000000000000000c203243515757575757564c3d2b180400122434424a4b4b4b4b4b4b4b4b4b4b4b4b45392918050000000014293e5367767676767676767676767676766a56412c170012273c52677b919079644f3a2510001f344a5f748787836d5945301c07000000000000000000000000001f344a5f737b7b7b7b7b7b7b7b7b705b4630384d63777b7b7b7b7b7b7b7b7b7b6a55402b1600000000000000000000030c151c2126292b2c2c2b2926211b130a0000000000000000000000000b172025262626262626262626262626262626262626262626241d1204000000000000000000000000000000020b12181c1f1f1f1e1a160f07000000000000000000000000000000000000000000000000080f151a1d1f1f1f1e1b17110a020000000000000000000000000000020f181e1f1f1f1f1b14090000000000000000000000001f344a5f748ba0a59079644f3a250f23384d62778da3a38d77624c37220d00000b1d2e3c47525c5c514549515d666b6c6a63594c3d2c1b0a00000000001f344a5f748b95959595959595959595959595959595959588735e49341f0a00000000000000000000040d1315151515151515151515151515120b010000000000000000000000000000000a17222e38414950565a5d5e5f5e5c5a5754504c48423728170400000000000000000000000000000000000000000000000000000000000000000012263b4f616c6c6c6c6c6a5b48331f0a001a2e41525e606060606060606060606060574734210c00000000152a3f546a808c8c8c8c8c8c8c8c8c8c8c836c57422c170013283d52677c93917b66503b2611001d32475c72879c88735f4a36210c000000000000000000000000001f344a5f748b9191919191919187705b4630384e63788f9191919191919191826b56402b160000000000000000000a15202830363b3e404242403f3b362f271d1307000000000000000000091a28343a3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b382f2213020000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001f344a5f748ba0a59079644f3a250f24394e63788fa4a18c76614c37220c000013273a4c59646f6f5e4c53616f7a82837d766a5b4a39271401000000001f344a5f737c8083899ea28d84868687878888898b8b96a08c76614c37220d000000000000000000081621282a2a2a2a2a2a2a2a2a2a2a2a2a261e130400000000000000000000000000000005111b252e353c414548484a484745423f3b37332e25190a00000000000000000001091015191a1b1a17130d08111619191816120d080000000013293e53687d8383838376604b36210b001f34495d70767676767676767676767675644f3a251000000000152a3f546a808688898b8d9e988c8a8887836c57422c170014293e53687d94927c67523c2712001b30455a6f84998e7864503b2612000000000000000000000000001f344a5f748285899a9a89868380705b4630384e637882848790a4a6928784806b56402b1600000000000000000e1b27323c444a50535657575653504a433a3024180b0000000000000000142738464f5050505050505050505050505050505050505050504c40311f0c0000000000000000000000000002090e12151719191816120e0801000000000000000000000000000008101415151514100800000000000001080c0c09040000000000000000000000000000000000000000000000060d13181b1d1d1d1b18140f09010000001e33485d72889da6917b66503b2611263b50657990a59f8b745f4b35200b0000182d42566a76827b68596371808d9697938879685643301d09000000001c30445663676a72889da18c766f6f7071727373747a8ea28f79644f3a25100000000000000000051626333c3f3f3f3f3f3f3f3f3f3f3f3f3f3b302312000000000000000000000000000000000008121a21272c303333343332302d2a26221e1a120800000000000000000009141d252a2e2f302f2c28211b252b2e2e2e2b27221c1205000013293e53687d9398988b745f4a34200a001f344a5f748b8c8c8c8c8c8c8c8c8c8c7b66503b26110000000013283d51636e70727374869b947d7472706f65533f2b1600152a3f546a8095937d68533e291300182d42576c8297937d6955402c17030000000000000000000000001d314558676c6f80939a86716d6b6555422d35495c686c6f7b90a49f8b776e6b61503d2814000000000000000f1e2c39454f585f64686b6c6c6b68645e564d4236281a0b000000000000001c304456636666666666666666666666666666666666666666665e4e3b27130000000000000000000000040e161d23272b2c2e2e2d2b27231c150b0200000000000000000000000e1a24292a2a2a29241a0e0000000008141c21221e19120b02000000000000000000000000000000000000040f1921282d30323232302d28241d140700001b30455a6f8499a8937d68533f2a152a3e53687c93a79c87725d48331e090000182e43586d829486766e7482909a8f8c90978673604c39241000000000142738464f525c72889da18c76605a5b5c5c5e5e5f73889b927c68533d281400000000000000000f22344450545454545454545454545454544e41301d0a000000000000000000000000000000000000060d13181b1e1e1f1e1d1b1815110d0904000000000000000000000d1b2731393f43444644413c352e3840434343403b372f2314040012273c52677c93a89f89735e49341f0a001f344a5f7486888994a19b8b898887867b66503b2611000000000e21344553595b5c5e6f869b947d685d5b5a544736241000162b40566b829694806a543f2a1500152a3f54697d9398846f5a46311d0800000000000000000000000016293b49535764778ca08d7763565247372c2c3e4c54596e8397ab9884705c56504333210d0000000000000c1d2d3c4a56616b73797d808283827d7972695f5346382919090000000000001f344a5f737b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b6a56412c17020000000000000000000b16212a31373c4042434342403c3730281e14080000000000000000000c1d2c373e3f3f3f3e372c1d0c0000071725303637332d261e150b000000000000000000000000000000000514212c353c414547474745423d383125160500172c41556a7d92a697826d5844301d3044586d8296ab97836d59442f1a06000015293e5266798c958984889297897c767c8d907c68533f2a1500000000091a28343a475c72889da18c76604b4647474848586c809495806b56412c170200000000000000152a3e51626a6a6a6a6a6a6a6a6a6a6a6a695f4d39251000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000d1d2b38444d53585a5b5a565049404b5458585855504b4132210e0012273c51667b91a79d88735e48331e09001e33475b6b70727990a598837372706f6e604d39240f00000000051727353f4446475a6f869b947d68534644403729190700172c42576c829795806b56402b160012273c51667b909e8974604b37220e0000000000000000000000000c1d2c373f485d718599937d6a55424242424242424b6074899da5917c6855413c33251504000000000006192a3b4b5a687480888e9395959494938d867c716456473727150400000000001f344a5f748b91919191919191919191919191919191919191846e59442f1a0600000000000000010f1c28333d454c51545758585755514b443b3125190c000000000000000016293b495354545453493b29160001132535434b4c47413a31281d110400000000000000000000000000041423323e4950565a5c5c5c5a57524d433423100012263b4f63768a9d9c87735f4c3a31394c5f73879ca3907c68533f2a160100000f23364a5c6e808f9a999c9487796b606e82867c6a55402b1601000000000b172032475c72889da18c76604b363232333d5165798d98846e59442f1a0500000000000000172c42576c8080808080808080808080807c67523c27120000000000000000010d15191a1a1a1a1a1a1a1a1a1a1a1a1a160e03000000000000000000000000000000081a2b3b495660686d6f706f6b645c535c676e6e6d69655e503e2a160011263b50667b90a59d88725c47321d0700182b3e4e585b647990a598836c5d5c5a595142311e0a00000000000917232b2f30445a6f869b947d68533e2f2c24190b0000182e43586d839897826c57422c17000f24394e63788da38f7965513c2713000000000000000000000000000e1a242e41556a7d929985705c5757575757575757667a8fa39e8a75614e39282015070000000000001124364859697886929b958b84807d7d8389928f837465554433210e00000000001f344a5f748284868da0a28d8687878889898b8b8c8c8d999c87725d48331e0900000000000000101f2d3a4650596065696c6e6e6c6a655f574e43372a1b0c000000000000001d314558676a6a6a675845311d000d1f30425360615c554e443a2f22150600000000000000000000000010223242505c656b6f7272726f6b666052402c18000c2034475a6d8092a28f7c69584b474a57687b8fa29a8873604c392410000000071a2d3f5161707d8689888276695b52667972695f4e3b2713000000000000041d32475c72889da18c76604b36211d21364a5e72869a87715c47321d0800000000000004172c42576c8390939495959595959491907c67523c27120200000000000002121f292e2f2f2f2f2f2f2f2f2f2f2f2f2f2a2013040000000000000000000000000000132537495967737c8286868480786f656a7a8384837d796d59442f1a000f253a4f647990a59c87705b46311c07000f20303c434f647990a598836c574745443e332413010000000000000610161a2f445a6f869b947d68533e29171107000000192e43586e849998836c58432d18000c21364b60758ba094806a56412d1804000000000000000000000000000812263b4e63778b9f8b776c6c6c6c6c6c6c6c6c6d8296aa97836e5b46321e0d03000000000000071a2d405365768796a09183776f6a68696d75808e93847362503e2b1804000000001d314558676b6e73899fa18c767072727373747576777d91a08b75604b36210d0000000000000d1e2e3d4b58636c747a7d82838483807a736a605547392a1a0a0000000000001f344a5f74808080745f4a341f00172a3c4e607176706a61574c403324150600000000000000000000081b2e4051606e78808587888785807b6f5a45301b0004182b3e5063748696998776685f5c5e677586989f8f7c6a5744311d090000000010223343525f6a7173736e64584b4a5b645f564d41311f0c000000000000001d32475c72889da18c76604b36210b1b2e43576a808d8a745f4b35200b00000000030f191e2c41566b787a7c808296a38e827d7c797766513c271d160c00000000000f20303c43444444444444444444444444443d31221100000000000000000000000000081c2f425567778590979a9b99948c8377708697999693866f5a442f1a000f24394e63788fa49b86705b46301b060002121f293a4f647990a598836c5742302f2b221506000000000000000000001a2f445a6f869b947d68533e291300000000001a2f445a6f869b99846e58442f1900091e33485d72889d9a85705b47321e0900000000000000000000000000000b1f33485c708498928383838383838383838383889ca4907b68533f2b1703000000000000000f22364a5d708394a5938272655b55535459626f809091806d5a4734200c0000000016293b4953565e73899fa18c76605c5c5e5e5f60606275899c8e78644f3a2510000000000007192b3c4c5b697580898f9497949393948f887d726557483827160400000000001f344a5f748b958b745f4a341f001d32465a6b7d8b857d746a5e5142332414020000000000000000000f23374a5d6f7d8c94999b9693939387705b46301b00000e213345576877879595877a7370737985939f9182705f4d3a2815010000000004152534424d565c5f5e5a52473b3d494f4c433a30231302000000000000001d32475c72889da18c76604b36210b14283b50647777746f5d4934200a0000000213212c33343b4e5d6366676a8095a38d77696765635a4a373431291d0e00000000182b3e4e585a5a5a5a5a5a5a5a5a5a5a5a594f402e1b070000000000000000000000000f23374b5f728595a3998e8886878b92897c889d978280806f5a442f1a000e23384e63788ea39a866f5a442f1a050000010f253a4f647990a598836c57422c1a160f0400000000000000000001071a2f445a6f869b947d68533e291300000000001b30465b70879c9b866f5a45301b00051b30455a6f869a9f8a75614c38230f000000000000000000000000000004192c4055697c919f98959595959595959595969aa69d8975604c382410000000000000000015293e5265798da09c8976645448403e3f4551617386998a76634f3b2713000000000c1d2c373e485e73899fa18c76604b4748494a4b4b596c8094927c67523d2814000000000011243748596a7987939c948a837d7c7d82889190847566564533210f00000000001f344a5f748ba08b745f4a341f001f344a5f74828a9591877b6f61514231200e00000000000000000015293e53667a8d9da09287827d7c7d7d705b46301b0000041628394a5a6876848f988f8987888d97978d8272635341301e0b000000000000071624303a42474a48453e35292c363a3830261d120400000000000000001d32475c72889da18c76604b36210b0c2135485964635f5c51402e1a060000000e20313e484a4a4a4a4e50546a8095a38d776252504e4a4a4a4a453b2c1a080000001e33475b6b6f6f6f6f6f6f6f6f6f6f6f6f6d5d4a35200b00000000000000000000000014293d52667a8fa29c8a7b727071767d898d8a9e97826b6a6454402c18000d22374c62778da399846e58432e19030000000f253a4f647990a598836c57422c1702000000000000000000000b151b1e2f445a6f869b947d68533e291300000000001d32475c72879c9c87705b46311c0000182d42576c8397a0907b66523d291400000000000000000000000000000011263a4e62768a9e8b8080808080808080808297aa96826d5945311d0900000000000000061a2f43586c8295a894806c5946362c292a334356697c9193806a56412d1904000000000e1a2433485e73899fa18c76604b36333434363d5064778c93806b56412c1700000000071b2e4154667788979f9082766e6967686c73808d94857463513e2b1805000000001f344a5f748ba08b745f4a341f001c314558666d778492998d8070604f3d2b19060000000000000000182d42576c8296a79482746b686768696555422d190000000a1b2c3c4b5966717b848a8f90908d89837a6f625445352412010000000000000006131e272e323433312b23181a2124231c130a000000000000000000001d32475c72889da18c76604b36210b05182b3b484f4d4a473f32231100000000162a3d4f5c5f5f5f5f5f5f5f6a8095a38d77625f5f5f5f5f5f5f58493724100000001f344a5f7486868686868686868686868677624c37220d000000000000000000000000182d42576c8295a793806c5e5b5c626b768393a797826b565146362411000c21364b60768ca198836c57422d18030000000f253a4f647990a598836c57422c17020000000000000000000d1c28303331445a6f869b947d68533e291300000000001e33485d72889d9d88725c47321d0000152b40546a808b8b8b826c57422d180000000000000000000000000000000a1e33475b6f8397907c6a6a6a6a6a6a6a72879ba38f7a66523e2a1602000000000000000a1f34495d72879ba38f7965503d2919141626394d61768b9a85705b47321d080000000000081e33485e73899fa18c76604b362f3a3f3f3f485c6f8380786a56412c17000000000f23374a5d708395a5928271645a54525358616e7d9092806e5b4834200d000000001f344a5f748ba08b745f4a341f0015283a48525a667383949d8f7d6d5b4936230f00000000000000001a2f445a6f8499a28d786457535253545247372512000000000e1e2d3b48545f68707578797978746f675d524436271706000000000000000000010b13191d1f1e1c160f06060d0f0e090000000000000000000000001d32475c72889da18c76604b36210b000d1d2b353a3835322c221405000000001b3045596d74747474747474748095a38d77747474747474747467533e29140000001f344a5f748b8f92969b9b989492908f8d77624c37220d0000000000000000000000001b30455a6f859aa38e78644f46474e59667b91a797826b564035281907000b21364b60768ba097826c57422c17020000000f253a4f647990a598836c57422c17020000000000000000071a2b39444846445a6f869b947d68533e291300000000001f34495e73898b8b89735e48331e000013283d516574747474746a57422d1800000000000000000000000000000004172b4054687c9097836e595454545465798ea29c88735f4b37230f00000000000000000d22374c61768ca09f8a75604b37220d000a1e33475c71879b89745f4b35200b0000000000001e33485e73899fa18c76604b363f4c545454515366706a645c4d3b271300000000152a3e5266798da09b88756353473f3c3e4450607285988b7763503c2713000000001f344a5f748ba08b745f4a341f000b1c2b363e48556476889b9c8a7865523e2b1703000000000000001a2f44596e8499a08b745f4a3e3c3e3f3d35291a080000000417293a48546064595b6064646463605a646055483b2b1805000000000000000000000000000000000000000000000000000000000000000000000000001d32475c72889da18c76604b36210b00000d18212423201d19100400000000001b30465b70878b8b8b8b8b8b8b8b98a4918b8b8b8b8b8b8b8b806a543f2a150000001f34495d7077797c889da18c7d7c7a787772604b36210c0000000000000000000000001d32475c72879ca08b75604b36333c50667b91a797826b56402b170a00000a1f344a5f748ba097826b56402b16010000000f253a4f647990a598836c57422c1702000000000000000010243749575e5b565a6f869b947d68533e291300000000001f34495d70747474746f5c47321d00000e223648575f5f5f5f5f5a4d3b2814000000000000000000000000000000001125394d6175899d8974604b3f43576b8095a995826c5844301c0800000000000000000f243a4f64798fa49c88725d48331e0900041a2f44596e84998d77624d38230e0000000000001e33485e73899fa18c76604b374a5d696a6a6454565b5650493e2f1e0b000000061b2f44586d8296a894806b5846352b2729324355687c9093806a56422d19040000001f344a5f748ba08b745f4a341f00000d19232b3747586a7d92a695826e5a46321d0900000000000000182d42576c8297a18c77624d3827292a2822180b000000000b1f33475866727768594c4f4f4f4e5968777266594835210c000000000000000000000000000000061015171717161108000000000000000000000000001d32475c72889da18c76604b36210b000000050c0f0e0b0803000000000000001b30465b70878b8b8b8b8b8b8b8b98a4918b8b8b8b8b8b8b8b806a543f2a150000001a2e41525e626572889da18c76676663625f5444311d080000000000000000000000001e33485d72889d9f89735e4934263b50667b91a797826b56402b16010000091e33485e73899f95806a543f2a15000000000f253a4f647990a598836c57422c17090f110e0800000000152a3f536673706b666f869b947d68533e291300000000001a2e41515d5f5f5f5f5d513f2c19000006192a39444a4a4a4a4a473d2f1e0b00000000000000000000000000000000091e32465a6e82968f7a66523e4a5e72879ba28e7965513d291501000000000000000011263b50667b91a69b86705b46301b060000172c42576c82978f78644f3a240f0000000000001e33485e73899fa18c76604b3b50657a80806f5a4446423b352d2011010000000a1f34495d72889ca38e7965503c2817121526394d61758a9a86705c47321d080000001f344a5f748ba08b745f4a341f000000070f19293b4e63778ba09e8a75604c37220d00000000000000152a3f53687d92a48f7965503c271315140f0600000000000e23384d627683877768594a3b49586777878477644f3a240f00000000000000000000000000000a18232a2c2c2c2b241a0c0000000000000000000000001d32475c72889da18c76604b36210b00000000000000000000000000000000001b3045596d74747474747474748095a38d77747474747474747467533e2914000000122434424a4d5c72889da18c7660504e4c4a43362614010000000000000000000000001e33485e73899f9f89735e4833263b50667b91a797826b56402b16010000051e33485e73889d947d68533f2914000000000f253a4f647990a598836c57422c1c1d2426231b100300001b2f44586d8285807a74869b947d68533e2913000000000011233341494a4a4a4a48403222100000000c1b28313434343434322b1f11000000000000000000000000000000000002162b3f53677b8f95826d58445065798da29b87725e4a36220e00000000000000000012273c52677c92a79b866f5a442f1a050000162b40566b82979079644f3a250f0000000000001e33485e73899fa18c76604f5054697d93866f5a44302d27211a0f02000000000d22374c61768ca19f8a74604b36220d00091e32475c71879b8a74604b36200b0000001f344a5f748ba08b745f4a341f00000000000c1f33485c71879ba38f7965503b26100000000000000011253a4e63778ca0947d6a55402c170200000000000000000d22374b5f708293877768594b58677686958472614d38230e00000000000000000000000000061828363f42424240372a1a0900000000000000000000001d32475c72889da18c76604b36210b0000000000000000000000000000000000162a3d4f5c5f5f5f5f5f5f5f6a8095a38d77625f5f5f5f5f5f5f58493724100000000616242f35475c72889da18c76604b39373530261808000000000000000000000000001e33485e73899f9f89735e4833263b50667b91a797826b56402b16010000001d32475c72889d937d68533e2913000000000f253a4f647990a598836c5742363231383b372e211100001f34495d728793958f89879b947d68533e291300000000000515232e3434343434332d221404000000000a151c1f1f1f1f1f1e180e010000000000000000000000000000000000000f24384c6074889c88735f4a576b8094a894806b57432f1b0700000000000000000012273c52677c93a89b866f5a442f1a050000162b40566b82979079644f3a250f0000000000001e33485e73899fa18c76646465666c8297866f5a442f1a130d0600000000000010253a4f64798fa49c88725c47321d0800041a2f44586e84988d77624d38230e0000001f344a5f748ba08b745f4a341f0000000000051a2e43586d8398a7927c67523d2813000000000000000b2034485d71869a98846f5a45301c070000000000000000081c304253647587968777695a667686958977665544311e0a000000000000000000000000001023364653575757544838261200000000000000000000001d32475c72889da18c76604b36210b0000000000000000000000000000000000112335444e505050505050546a8095a38d7762505050505050504c40301e0b0000000006121d32475c72889da18c76604b362a2927231e18110800000000000000000000001e33485e73899f9f89735e4833263b50667b91a797826b56402b16010000001c31465b70879c937c67523c2712000000101d283a4f647990a598836c5b514b47464d504b3f2f1d09001f34495d70777d868e969aa5947d68533e291300000000000005111a1f1f1f1f1f1e1911050000000000000000000000000000000000000000000000000000000000000000000000091c3145596d82958e7965515d72869aa18d7864503c28140000000000000000000012273c52677c93a89b866f5a442f1a050000162b40566b82979079644f3a250f0000000000001e33485e73899fa18c797979797b7b869a866f5a442f1a05000000000000000011263b50667b91a69b86705b46301b060000172c42576c82978f79644f3a240f0000001f344a5f748ba08b745f4a341f000000000000162b40566b8095a9947d69543f2a150000000000000005192e42566a80939d88735e4a35200b0000000000000000001324354658687a8b968878697585958e7c6b5a483726140200000000000000000000000000152a3f53646c6c6c6655412d1803000000000000000000001d32475c72889da18c76604b36210b0000000000000000000000000000000000182c405361666666666666666a8095a38d7766666666666666665e4d3a26110000000000001d32475c72889da18c76604b403f3f3c38332c241b11060000000000000000001e33485e73899f9f89735e4833263b50667b91a797826b56402b16010000001b30465b70869b917b66503b261100000c1e2e3b434f647990a59884786d655f5c5b60665d4c392510001a2e41515d636a727a838e99947d68533e2913000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001162a3e52667a8e95806b5764788da19a86715d4935210d0000000000000000000012273c52677c93a89b866f5a442f1a050000162b40566b82979079644f3a250f0000000000001e33485e73899fa593909090909191929b866f5a442f1a05000000000000000012273c52677c92a79b866f5a442f1a050000162b40566b82979079644f3a250f0000001f344a5f748ba08b745f4a341f000000000000152a3f546a8094a995806a543f2a150000000000000a1217273b5064788ea18c77624d38230e0000000000000000000617283a4b5c6d7d9097887885949282705e4d3c2b19080000000000000000000000000003172c42576c8383836f5a45301b12090000000000000000001d32475c72889da18c76604b36210b00000000000000000000000000000000001b30465b707b7b7b7b7b7b7b7b8095a38d7b7b7b7b7b7b7b7b7b69543f2a140000000000001d32475c72889da18c766054565453514c4740372e23170b00000000000000001e33485e73899f9f89735e4833263b50667b91a797826b56402b16010000001a2f445a6f869a907965503b2610000016293c4c575d647990a18c8a8b8279747070747a68533e28130011233341494f565e66707b88867d68533e29130000000000000000000000000001080b0b0a0600000000000000000000000000000000000000000000000000000000000000000000000f23374b5f73889b87725d6a8093a7927d6a56422e1a060000000000000000000012273c52677c93a89b866f5a442f1a050000162b40566b82979079644f3a250f0000000000001e33485e73899fa28e8788888888898b9b866f5a442f1a05000000000000000012273c52677c93a89b866f5a442f1a050000162b40566b82979079644f3a250f0000001f344a5f748ba08b745f4a341f00000000000013293e53687d94a997826b56402b160100000000101d262c2d364a5f748a9f907965503b2610000000000000000000000b1c2d3e4f61728394978a94988675635241301e0d000000000000000000000000000915202b40566b829787705b46352e261c1106000000000000001d32475c72889da18c76604b36210b00000000000000000000000000000000001b30465b708791919191919191919c9c969191919191919191806a543f2a150000000000001d32475c72889da18c766a6a6b6a6866615b544a4135281b0c000000000000001e33485e73899f9f89735e4833263b50667b91a797826b56402b1601000000192e43586e84998f79644f3a250f00001b3045596a71767b90a08b7d8e958e898787887d68533e2913000515232e353b434a535e6a74706c614f3b26120000000000000000000000010c151c20211f1b140a000000000000000000000000000000000000000000000000000000000000000000081c3044586c80958d786471869a9f8b77634f3b2713000000000000000000000012273c52677c93a89b866f5a442f1a050000162b40566b82979079644f3a250f0000000000001e33485e73899fa18c7672727272738498866f5a442f1a05000000000000000012273c52677c93a89b866f5a442f1a050000162b40566b82979079644f3a250f0000001f344a5f748ba08b745f4a341f00000000000013293e53687d94a997826b56402b16010000000d1e2e3a414344485e73899f917b66503b261100000000000000000000001021324354657688999f9c8b79685746342312010000000000000000000000000c1a26323c45546a809588725c504941392f23170a00000000020e1d32475c72889da18c76604b3621160c000000000000000000000000000000001b30465b7084848484848484889c9d8a8c8f84848484848484806a543f2a150000000000001d32475c72889da18c7d808082807d7a766f675d5346392a1b0b0000000000001e33485e73899f9f89735e4833263b50667b91a797826b56402b1601000000182e43586d83988f78634e38230e00001d32475c72868b9099a18c76808d9a9e9c9c947d68533e2913000005111a20272f37414c595f5c58514332200c0000000000000000000003111e28313536342f271c0f01000000000000000000000000000000000000000000000000000000000000000015293d5165798d93806a778ca09884705c4834200c000000000000000000000012273c52677c93a89b866f5a442f1a050000162b40566b82979079644f3a250f0000000000001e33485e73899fa18c76605c5c5d6b8095866f5a442f1a0c020000000000000012273c52677c93a89b866f5a442f1a050000162b40566b82979079644f3a250f0000001f344a5f748ba08b745f4a341f00000000000012273c52677c93a897826b56402b1601000000172a3c4c5558595c64768ba08d79644f3a251000000000000000000000000314253748596a7b8b8b8b7d6d5c4b392817050000000000000000000000000b1b2a38444f5960687d94897369645d554c413527190a000002121f2a32475c72889da18c76604b3630291e100000000000000000000000000000001a2e4357686e6e6e6e6e6e7d8fa19482829583706e6e6e6e6e6e63513d28130000000000001d32475c72889da697949594949593908a837a7064574839291807000000000e1e33485e73899f9f89735e4833263b50667b91a797826b56402b1601000000172c42576c83978d77624c38230d00001d32475c72889497999c8c766f7c88939b9f947d68533e291300000000060c131b242f3b454a47433e332515030000000000000000000111212f3b454a4b49433a2d1f1000000000000000000000000000000000000000000000000000000000000000000e22364a5e72869a86707d93a5917d6955412d1905000000000000000000000012273c52677c93a89b866f5a442f1a050000162b40566b82979079644f3a250f0000000000001e33485e73899fa18c76604b4752677c8b866f5a442f2820140500000000000012273c52677c93a89b866f5a442f1a050000162b40566b82979079644f3a250f0000001f344a5f748ba08b745f4a341f00000000000012273c52677c93a897826b56402b16010000001d32465a696c6e717782939183705d4a36210d00000000000000000000000008192a3b4c5d6f74747471614f3e2d1c0a000000000000000000000000081929394855616c747b80938b827d7871685e524537271603000e1f303d45495c72889da18c76604b48453c2e1d0b000000000000000000000000000014273a4a55585858586677899b9e8a77778a8f7c6a5858585858534534210e0000000000001d32475c72889da28d8280807d80838a93978d82756657473624120000000c1d2c37485e73899f9f89735e4833373f50667b91a797826b56402b1601000000162b40566b82978c76614c37220d00001c32475c717c808285888476616a7580868a8b7d68533e29130000000000000008121d293134322e29211607000000000000000000000c1e2f3f4d585f605e564b3d2e1d0b00000000000000000000000000000000000000000000000000000000000000071b2f43576b80938b7685999e8a76624e3a261100000000000000000000000012273c52677c93a89b866f5a442f1a050000162b40566b82979079644f3a250f0000000000001e33485e73899fa18c76604b3a4e627374746b5843403c32231301000000000012273c52677c93a89b866f5a442f1a050000162b40566b82979079644f3a250f0000001f344a5f748ba08b745f4a341f00000000000012273c52677c93a897826b56402b16010000001f344a5f748384878b918a80736453412e1b07000000000000000000000000000c1d2f40515d5f5f5f5e534332210f000000000000000000000000021425374757657380898f949d9b97938d857b70635545331f0b00162a3d4e5a5e6172889da18c7662605d594c3b281400000000000000000000000000000a1c2c394143434e60718395a592806d6d8093887563514343433f352717050000000000001d32475c72889da18c766a6a686a6e76808e9c9385756453412f1c09000016293b49535e73899f9f89735e4839495358667b91a797826b56402b1601000000162b40556a80958c76604b36210b0000192e415462676a6c6f7272665859636b7174747264513c27120000000000000000000c161d1f1d19150e04000000000000000000000015283b4d5d6b747672695b4c3a2815010000000000000000000000000000000000000000000000000000000000000014283c5064788d907b8a9f97836f5b47331e0b00000000000000000000000012273c52677c93a89b866f5a442f1a050000162b40566b82979079644f3a250f0000000000001e33485e73899fa18c76604b3645555e5f5f5b5656564f41301e0a000000000012273c52677c93a89b866f5a442f1a050000162b40566b82979079644f3a250f0000001f344a5f748ba08b745f4a341f00000000000012273c52677c93a897826b56402b16010000001f344a5f748b9993827c766d62554636241100000000000000000000000000000011223240484a4a4a4942352514030000000000000000000000000c1e314355657584919c9f958d89888a8e948e8273624e39240f001c31455a6c737679889da18c797775726a57432e190400000000000000000000000000000e1b262c37485a6b7d8fa19a88756363768993826f5d4b392e2b231709000000000000001d32475c72889da18c76605454555a636f7d8fa09383715f4c39251200001d314558676e74899f9f89735e484457666d717b91a797826b56402b1601000000152a3f546a808787745f4a341f0a0000122536454e5254575a5d5d55484650575d5f5f5d554735220e00000000000000000000000000000000000000000000000000000000001b3044586a7b888c86796a5744301c08000000000000000000000000000000000000000000000000000000000000000d2135495d7186968290a4907c6854402b180400000000000000000000000012273c52677c93a89b866f5a442f1a0a0008162b40566b82979079644f3a250f00000000000b1e33485e73899fa18c76604b363743494a54646b6b6b5f4d392510000000000012273c52677c93a89b866f5a442f1a050000162b40566b82979079644f3a250f0000001f344a5f748ba08b745f4a341f00000000000012273c52677c93a897826b56402b16010000001f344a5f748b8d8f918c867c706252402d1a0600000000000000000000000000000414222d33343434342f2517080000000000000000000000000215283b4e60728394a29d8e82787373747980888a76634e39240f001d32475c72888c8f93a0a095908d8b866f5a442f1a050000000000000000000000000000000d1f3143546677899ba18f7c6a58596b7d918d7a6856443220100600000000000000001d32475c72889da18c76604b3f40465160708497a08f7b6855412d1904001f344a5f74838890a19f89735e48485e7382878b95a997826b56402b160100000013283d51647070706d5c48331e090000071827333a3d3f424548484338333c43484a4a484238291805000000000000040f161a1a1a1a160e040912181a1a1a19130a000000001f34495e73889aa19888735f4a36210c00000000000000000000000000000000000000000000000000000000000000061a2e42566a7d9292999d8975604d392411000000000000000000000001111e283c52677c93a89b866f5a442f271c0f1a252c40566b82979079644f3a271d10000000101d2733485e73899fa18c76604b36323234475b7082827c67523c2712000000000012273c52677c93a89b866f5a442f1a050000162b40566b82979079644f3a250f0000001f344a5f748ba08b745f4a341f00000000000012273c52677c93a897826b56402b16010000001f34495e717777797d87968f826f5d4935210c0000000000000000000000000000000511191e1f1f1f1f1b120700000000000000000000000000091d3144586b7d90a19f8e7d70645e5e5f646c75806d5a47331f0b001d32475c72888b8b8b8b8b8b8b8b8b866f5a442f1a05000000000000000000000000000b141a2b3d4e60728495a79684715f4d4e61748798867361503e2c1a150e030000000000001d32475c72889da18c76604b362b334254677b90a49885705c48331e09001f344a5f748b9092949689735e48485e73899091939596826b56402b160100000011213446545b5b5b594f3e2c190400000009161f25282a2d3033332f2620282e333434332e261a0b0000000000000615222b2f2f2f2f2a21141a262d2f2f2f2d271c0e0000001f344a5f748ba0b3a28d77624c37220d000000000000000000000000000000000000000000000000000000000000000013273b4f63778b939393826d5a46311d0900000000000000000000000e1f2f3b4252677c93a89b866f5a45413a2d1d2a374044566b82979079644f423a2e1e0d000d1e2e3a42485e73899fa18c76604b464747484d61768a917b66513c2711000000000012273c52677c93a89b866f5a442f1a050000162b40566b82979079644f3a250f0000001f344a5f748ba08b745f4a341f00000000000012273c52677c93a897826b56402b16010000001b2f4253606262656a778c9f8d78644f3a25100000000000000000000000000000000000000000000000000000000000000000000000000000001024384c6074889ba794827060524a484b5058626a61503d2a1704001c31465b6e74747474747474747474746b58432e1904000000000000000000000001111e282e37495a6c7d90a19e8b7966544244576a7c8f91806d5b49372e2921140500000000001d32475c72889da18c76604b362124384c61768ba09f8b76614c37220d001f34495e7178797c7d827d715d48485d7078797b7d8082796a55402b160000000b1e2f3f4d575d5f5d554a3d2e1d0b00000000030b101315181b1e1e1b130d141a1e1f1f1e1a1309000000000000011324333e444444443e32232a384144444442392c1c0a00001e33485d7185959f9b8975604b36210c00000000000000000000000000000000000000000000000000000000000000000c2034485c707c7c7c7c7a67533e2b16020000000000000000000000182b3d4d575b677c93a89b866f5d5a564b3b283748545a5d6b82979079645b564c3c2a1600162a3c4c565a5e73899fa18c76605b5b5c5c5d5e677c908f79644f3a2510000000000112273c52677c93a89b866f5a442f1a0b0009162b40566b82979079644f3a250f0000001f344a5f748ba08b745f4a341f00000000000012273c52677c93a897826b56402b1601000000122535434b4c4d505e73899f917b66503b261100000000000000000000000000000109101418191a1815110a101518191816120e090200000000152a3e53677b90a49f8b776452423533363c455054504333210e0000172b3e505c5f5f5f5f5f5f5f5f5f5f5f5b4e3c29150000000000000000000000000e1f2f3b42475566778a9ba592806e5c49373a4d607285988b78665447433d32231200000000001d32475c72889da18c76604b36211e33485d72889da48f79644f3a2510001b2f425360636567696b6b61534141525f636467686a6c665c4d3a261200000015283b4d5d6a727471685b4c3a281502000000000000000000000000000000000000000000000000000000000000091d304251595a5a5950412f3748555a5a5a564a3927130000192e41546676848a887d6c5946321d09000000000000000000000000000000000000000000000000000000000000000008192d41536367676b6d665c4b3b28150100000000000000000000001e32475a6a70737c93a89b8676726f695844304054666f72758297907973706a5946311c001c3146596a6f7276899fa18c76707070727272737382978d77624d38230e00000002121f293c52677c93a89b866f5a442f281d101b262d40566b82979079644f3a281e1101001f344a5f748ba08b745f4a341f00000000000012273c52677c93a897826b56402b1601000000071725303637384a5f74899f907965503b2610000000000000000000000000000b141d24292d2e2f2d2a251e242a2e2e2d2b27231e1509000000192e43586d8296ab9984705b4835231e2129333c3f3c3325150400000f21323f484a4a4a4a4a4a4a4a4a4a4a473e301f0d000000000000000000000000182b3d4d575c60728496a79a887563554a3a425158687a8e968472605c585041301c09000000001d32475c72889da18c76604b36211c31465b70879ca7917b66503b261100122535434b4e5052565e605f584d3f43525c60605b5557544a3e2f1e0b0000001b3044576a7b878b8579695744311d08000000000002070906010000000811171c1e1e1c19130b020000000000000f24384c606e6f6f6d5e4b374054666f6f6f6856422d1904001225374958667074736c5f4e3d2a17030000000000000000000000000000000000000000000000000000000000000008172634424f5c68737d8074695844301b0600000000000000000000001f344a5f7486898c97a49e8f8b8885725c473243586e84878b8e9b958c8886735e48331e001e33485e7385888b91a2a28d8686878788888889898b9c8b76604b36210c0000000f20303c4352677c93a89b866f5a47433b2e1e2b394246566b82979079644f433b2f1f0d001f344a5f748ba08b745f4a341f00000000000012273c52677c93a897826b56402b16010000000008141c21263a4f63788da28d77624d38230e000000000000000000000004111d2731383e424344423f3932373f434342403c383127190900001c31465b70869ba994806a55402c18080d1620272a272015070000000313222d333434343434343434343434332b2012010000000000000000000000001e32475a6a70747d90a2a38f7c726f6857434d606d70738497907d74716d5f4c38230e000000001d32475c72889da18c76604b36211c31465b70879ca7917b66503b2611000717253036394759687276746b5d4d52616f76756f625341372d2011000000001f34495e73889aa0978874604b37220d000000000c161c1e1b140a04101b242c313333312d271e1509000000000011263b50667b868678634e3943586e848686705b46301b0600081a2b3a48545c5f5e594e4131200d00000000000000000000000000000000000000000000000000000000000000061626354452606d7986919284715c47321d0700000000000000000000001f344a5f748b8f8f8f8f8f8f8f8f88725c473243586e848f8f8f8f8f8f8f89735e48331e001e33485e73898f8f8f8f8f8f8f8f8f8f8f8f8f8f8f8f8f89735e49341f0a000000182b3e4e585c677c93a89b866f5f5c574c3c293849565b5e6b82979079645c584d3d2a17001f344a5f748ba08b745f4a341f00000000000012273c52677c93a897826b56402b160100000000000108192d4155697d929e89735f4a35200b000000000000000000000414222f3a444c5357585957534e46495358585754514c4437271502001e33485e73889da6917b66513c27120002070d1315130d0300000000000410191e1f1f1f1f1f1f1f1f1f1f1f1e180f02000000000000000000000000001f344a5f74868a8e9ca0a0928b8884705b4650667b86898c999b8e8a8679644f3a250f000005111d32475c72889da18c76604b36212434495e73889da5907965503b2610000008141c283d516476868c887b6a575c6f808b8a82705e4b37231002000000001f344a5f748ba0b3a38f78634e38230e0000000f1d29313330271b15212d374046484846413b31271b0e0000000012273c52677b919079644f3a445a6f849987705c47311c0700000d1c2b3740474a49453c3023130200000000000000000000000000000000000000000000000000000000000000122434445362707d8b979686756555422e1a0500000000000000000000001f34495e7278787878787878787878705c473143586c787878787878787878715d48331e001e33485d7178787878787878787878787878787878787878705c47321d080000001e33475b6b71747c93a89b867774706a5945304155677073768297907974716b5a46311c001f344a5f748ba08b745f4a341f00000000000012273c52677c93a897826b56402b16010000000000000b1f33485c70859999846f5a46311c0700000000000000000003132332404c5760676c6e6e6c68625959666d6e6c6965615544311d09001f344a5f74899fa48f79644f3a240f0d161c1e1e1e1c170d010000000000000000000000000000000000000000000000000000000000000000000000001f344a5f748b8b8b8b8b8b8b8b8b87705b4650667b8b8b8b8b8b8b8b8b79644f3a250f000414232e36475c72889da18c76604b363639415063778ca1a18c77624d38230e00000001172c41566b8094a19a87725e63778c9e9f8e7a65513c271100000000001e33485d7185959f9b8b77624d38230e00000d1d2d3b454844392a26333f4a545a5e5e5b564e44392c1e0f00000013283d52677c93917b66503b465b70869b88725c47321d080000000d19242d32343430291f130400000000000000000000000000000000000000000000000000000000000000061b2e41526271808f9c9888776757483826130000000000000000000000001b2f435461636363636363636367636052402e3d4f5e6367636363636363636053412e1a001a2e41536063636363636363636363646d6a6363636363636052402d19040000001f344a5f74878a8d98a39f908c8986725c473243586e84888c8f9b968d8987735e48331e001f344a5f748ba08b745f4a341f00000000000012273c52677c93a897826b56402b16010000000000001025394e62778b9f94806a56412c180300000000000000000010213141505e69737b828484827c756c65778384837d7a73604c37210c001f344a5f74899fa48f78634e3823101e2a31333333312a1f110000000000000a12171717171717171717171717171717171717171717161007000000001f34495d70747474747474747474746d59454f6373747474747474747473624e39240f000f2132414a4e5c72889da18c76604b4a4b4d535e6e8093a79986715d49341f0b00000000172c42576c8397aca18c766063788fa4a8937d68533e29130000000000192e42556777848a887d6d5b47331f0a000a1b2b3b4b595e5648393744505c676f7373706a61564a3c2d1d0c000014293e53687d94927c67523c475c70879c89735e49341f09000000000711191e1f1f1b160d0200000000000000000000000000000000000000000000000000000000000000000b20354a5e7082909e998a79695949392a1a09000000000000000000000000132536444c4e4e4e4e4e5563707c7265584b3e4855626f7c7266584e4e4e4e4c4335241200122435434c4e4e4e4e4e4e4e525f6b76827c7165534e4e4e4c43342311000000001f344a5f748b8d8d8d8d8d8d8d8d88725c473243586e848d8d8d8d8d8d8d89735e48331e001f344a5f748ba08b745f4a341f00000000000012273c52677c93a897826b56402b1601000000000000152a3e53687c91a5907b66513c281312110c040000000000091b2d3e4f5f6e7b87909699999791897d7280959997948d77624c37220d001e33485d72889da48f78634e38231d2e3c46484848463d2f1e0c00000000101d262c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2b24190b0000001a2e41515d5f5f5f5f5f5f5f5f5f5f5c4f3d46565f5f5f5f5f5f5f5f5f5e5545331f0b00172b3e505e636672889da18c7662605f606368707c8c9d9f8f7c6956422e1a0600000000162b4054697d919f9a88735f6175899b9f8f7b66513c271200000000001225384959667074736b5f4f3e2b1804001528394959687366574a4854616e79838889857d73675a4b3b2a190600152a3f546a8095937d68533e475c72889d8b745f4a34200a000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000b20354a5f72808a968b7b6b5b4b3b2b1c0c00000000000000000000000000081826313838383838475c71828e8376695c4f596673808e8476614c38383837312617070007172631373838383839485663707c89948f806c574238383730251606000000001f34495e71777777777777777777776f5b463142576c777777777777777777705d48331e001f344a5f748ba08b745f4a341f00000000030e17273c52677c93a897826b56402b170e030000000000182d42576c8296a28d77624d3825262726201609000000001326384a5c6d7d8d99a399908b898a8e90838297a08b828277624c37220d001c31455a6f859aa5907965503b26273a4c595e5e5e5a4d3b28140000000d1e2e3a4142424242424242424242424242424242424242423f36291907000011233341494a4a4a4a4a4a4a4a4a4a483e3138444a4a4a4a4a4a4a4a4a494337271603001b30455a6e787b7d889da18c7877767475777c838d9b9c9082705f4d3a2713000000000011263a4e6173828a887c6b58596c7d888a82715f4c38230f0000000000081a2b3b49545c5f5e584e4131210f00001c31445767768575685e5c6672808c979d9e9a91867769594836231000162b40566b829694806a543f485e73899f8c76604b36210b00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000081c304354616d78847d6d5d4d3d2d1d0d00000000000000000000000000000009151e2323232330445869788994877a6d606a7784918d7d6e5d4a352323221d140800000008141d222323283948576673828e9a91827161503d2923221d130700000000001b2f425360626262626262626262625f51443443525d6262626262626262625f52412d19001f344a5f748ba08b745f4a341f0000000313202b313c52677c93a897826b5640312b20130300000000192f44586e8499a08b74604b3b3a3b3c3b332718070000071b2f4255677a8c9ca595887c75737479838e8798a08b746b695b4834200b00182d42566b8094a7937d68533f2a2d42566a7373736b58432e19040007192b3c4c555757575757575757575757575757575757575757534737241100000515232e3434343434343434343434332c212730343434343434343434343026190a00001b30465b70879194989b9b938f8d8b8b8b8d91979791898072635342301d0a00000000000b1e314455646f74736b5e4d4e5f6c73746f635442301c080000000000000d1d2b3741474a49443c3023130300001f344a5f748593867a73717783909d958c898c9296887665533f2b1600172c42576c829795806b56404a5f748ba08d77624c37220d0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001142636444f5b66726f5f4f3f2f1f0f000000000000000000000000000000000002090d0e0e15283b4b5a6a798a988c7d717b88958e7d6f5f50402e1b0e0d0901000000000001090d0e20334656667584929f93837363534333210e0d0901000000000000122535434b4c4c4c4c4c53627076756e62524152616f76756f62524c4c4c4c4b42342411001f344a5f748ba08b745f4a341f0000000f21313e464952677c93a897826b5649463e31210f000000001a2f445a6f8599a18c776355504f50514f4536241100000e22364b5e728597a99887766a615e5f66707d8d9fa08b745f554c3d2c19050013283c5165798da197836d59463332465b708689866f5a442f1a0500122436485a696c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6554402c1702000005111a1f1f1f1f1f1f1f1f1f1f1f1e190f141c1f1f1f1f1f1f1f1f1f1f1b14090000001b30465b70868686868686868788898b8b8a8886837c766c6154453524130000000000000214263746535b5f5e584e40414e595e5f5b524536251300000000000000000d1a242d32343430291f13040000001e32475a6d7d8f978e88878b959c9083787377808c92826e58432e1900182e43586d839897826c57424b60768ca08e78634e38230e0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000081826323d49545e5d514131211101000000000000000000000000000000000000000000000c1d2d3c4c5c6b7b8b9a8f838c998f807060514132221100000000000000000000000010253a4f63748594a295857565554535251504000000000000000000071725303637373737495d70828b8a80705e4b5d6f808b8a82705e4b3737373630251606001f344a5f748ba08b745f4a341f000000182b3e4f5a5e61677c93a897826b615e5a4f3e2b1800000000182e43586d8297a793827269666466666353412d18000014293d5165798ea2a08d7a68594d484b535f70879ca08b745f4a3a2e1f0f00000e22364a5d7185979d8975625041384b5f74899b86705b46301b06001a2e4153667783838383838383838383838383838383838383836f5a442f1a05000000000000000000000000000000000000000000000000000000000000000000000000001a2f4357696f6f6f6f6f6f6f71737374747473706d6862594f4436271706000000000000000919283540474a49443c30303c45494a4740352718070000000000000000000811191d1f1f1b150d0100000000182b3d4f60707d8c969d9c9e968b7d71665e636d7b84736453402b1700192e43586e849998836c58434c62778ca18f79644f3a250f0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000915202b3742494840322313030000000000000000000000000000000000000000000000000f1e2e3e4d5d6c7c8c9c979d9080706151423223130400000000000000000000000010253b506476828d97877667574737271707000000000000000000000008141c21222224394e63788d9f9e8e79655163778c9e9f8e7965503b2622211c130700001f344a5f748ba08b745f4a341f0000001d32475b6d7376787c93a897827976736d5b47321d00000000152a3f53677b8e9e9f90857d7a797a7b705b46301b0000192d42576c8295a99985705d4b3b3337465b70879ca08b745f4a341f10010000071b2e4154677a8c9d92806e5f534e4f64798e9c87705b46301b06001f34495d70839598989293949596979898989898989898989887705c47311c070000000000000000000000000000030a1014181a1a1a1a1815110c0700000000000000000014283a4b575a5a5a5a5a5a5a5c5e5e5f5f5f5e5b58544e463d322618090000000000000000000a18232c32343430291e1f29303434322c2317090000000000000000000000000000000000000000000000000e20324251606d7983888b8983796d615449505d6d74655546362410001a2f445a6f869b99846e58444e63778da3907a66503b261100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000030e1a252f34332d221404000000000000000000000000000000000000000000000000000010202f3f4e5e6d7d8b8b8b827161524233231404000000000000000000000000000d21354858646f7b8778685949392919090000000000000000000000000001080c0d0f253a4f647990a5a8937d685364798fa4a8937c67523c27120c08000000001f344a5f748ba08b745f4a341f0000001e33485e73888c8f919aa09d928f8c89735e48331e000000001024384c5e70808e979c989390909087705b46301b00001c31465b70869aa8947d6a55412d1e30465b70879ca08b745f4a341f0a000000001225384a5c6e7d8f9d8d7d6f666363687d929c88725c47321d07001f34495d708394a698847c7d808282838486878888898b999e89735e49341f0a000000000000000000000000040e171e24292d2f2f2f2f2d2a26211b140d080100000000000b1d2d3a42444444444444454748494a4a4a4846433f39332a20150800000000000000000000000610181d1f1f1b150c0d161b1f1f1d181006000000000000000000000000000000000000000000000000000314243342505c666e7374746f665c4f43363f4f5d60564737281807001b30465b70879c9b866f5a454f64788fa4917b67523c271200000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000008131b1f1e19110500000000000000000000000000000000000000000000000000000002112130404f5f6e7474747262534334241505000000000000000000000000000005182a3a47525e69746a5a4a3b2b1b0b0000000000000000000000000000000000000e23384d62768a9c9f8f7a66516175899b9f8f7a66513c27120000000000001f344a5f748ba08b745f4a341f0000001e33485e73898b8b8b8b8b8b8b8b8b89735e48331e00000000091c2f415261707a8387898b8a87837d705b46301b00001e33485e73889da5907b66513c271b30465b70879ca08b745f4a341f0a00000000081b2d3f506070808c988d837b78787c87989d88725d48331e08001a2e41536576899aa29283726a6b6c6c6e6f707272737d92a08b75604b36210c00000000000000000000000b16212a32393e4244444444423f3b352f29211c140900000000000f1d272e2f2f2f2f2f2f3032333434343433312e2a251e170d030000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000061524323e49535a5e5f5f5b53493e32253140494b443829190a00001d32475c72879c9c87705b464f647990a5937c68533d28130000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000312223141505c5f5f5f5e544435251606000000000000000000000000000000000c1c2935404c575f5a4d3c2d1d0d000000000000000000000000000000000000000a1f33475a6d7d888a82715f4b596c7d888a82715f4b37230e0000000000001f344a5f748b8b8b745f4a341f0000001d32475c6f74747474747474747474746f5c47321d000000000012243443525e676d72747474726e696353412d1800001f344a5f748ba0a38f78634e39241b30465b70879ca08b745f4a341f0a00000000001021324251616e7a858e94908f8f9198948e87735e48331e090012243647596b7c8ea0a1918270605758585a5b5c5d63778b9f8d77634d38230e000000000000000000010f1c28343d464d5357595a5a5a57544f4a433d363027190900000000000b14191a1a1a1a1a1a1b1c1e1f1f1f1f1e1c1916110a0300000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000614212d373f45494a4a4640372c2114222d343631271a0b0000001e33485d72889d9d88725c4750667b91a0947d68533f29140000000000000000000000000000000000000000000000000000000000000000000000000000000000040c10111111111111111111100b020000060d10111111111111111111110f09000000000000000000000000000000041323323f484a4a4a4943362617080000000000000000000000000000000000000c18232e3a444a473d2f1e0f000000000000000000000000000000000000000004182b3e4f606c73746f6253424e5f6c73746f6353422f1c080000000000001f34495d70747474705d49341f000000192c3f515d5f5f5f5f5f5f5f5f5f5f5f5d513f2c19000000000006162534414b53595d5f5f5f5d59544f4536241100001f344a5f748ba0a38d77624c37221b30465b70879ca08b745f4a341f0a00000000000314243342505d6872798084899887848079726b5a46311c070006182a3c4d5f708294a69f8f7d6c5a4843444647485c7085998f7964503b2510000000000000000000101f2d3a46505a61676c6e6f6f6f6c69645e58504b4437271502000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000030f1a232b30343434312c241a0f04101a1f201d150a000000001f34495e73898b8b89735e4852677c8b8b8b806a543f2a15000000000000000000000000000000000000000000000000000000000000000000000000000000000b172025262626262626262626251f15080d19212626262626262626262626241d120400000000000000000000000000000414222d33343434342f251809000000000000000000000000000000000000000006111d283134322b1f11000000000000000000000000000000000000000000000e2032424f595e5f5b524435414e595e5f5b5245362512000000000000001a2e41515d5f5f5f5d51412e1a00000010223240484a4a4a4a4a4a4a4a4a4a4a48403222100000000000000716232e383f44484a4a4a4844403b3327180700001f344a5f748a9fa38d77624d38231b30465b70879ca08b745f4a341f0a000000000000061524323f4b555e656a6f8698836e6a655e584d3d2a170300000c1e3041536476889aac9b8a776654423030324155697d92927c67523d281300000000000000000e1e2e3d4b58636d757c8284868684837d78726c645f5545321e0a0000000810141515151515151515151515140f07000000000000000000000000000000000510181b1b1b1b1b1b1b1b1b1b1b1b1b1b1a140a0000000000000000000000000000000000000000000000000000000000000000000710161c1f1f1f1c181007000000060a0b080200000000001f34495d70747474746f5c475064747474747467533e2914000000000000000000000000000000000000000000000000000000000000000000000000000000091a28343a3b3b3b3b3b3b3b3b3b393226171d2b353b3b3b3b3b3b3b3b3b3b3b382f22130200000000000000000000000000000410191e1f1f1f1f1b130800000000000000000000000000000000000000000000000b151c1f1e180e0100000000000000000000000000000000000000000000031423313d45494a473f3426303c45494a4740352718070000000000000011233341494a4a4a49413323110000000414222d333434343434343434343434332d2214040000000000000006111b242b2f33343434332f2b262016090000001e33485d72889ca48f78644f3a251b30465b70879ca08b745f4a341f0a000000000000000614222e39424a51586e8499846f5a514a433b2f1f0d0000000112243547596a7c8ea0a7958371604e3c2b263a4e63778b947d69543f2a15000000000000000a1b2c3c4c5b687580899196928f8d8d90938d87807973614d38230e00000e1a24292a2a2a2a2a2a2a2a2a2a2a29231a0d00000000000000000000000000000716232c30303030303030303030303030302e271c0e00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001a2e41515d5f5f5f5f5d513f47575f5f5f5f5f5849372410000000000000000000000000000000000000000000000000000000000000000000000000000000142738464f5050505050505050504e4435232a3b4850505050505050505050504c40311f0c000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000514202a303434322c22171f29303434322c23170900000000000000000515232e34343434342e231505000000000511191e1f1f1f1f1f1f1f1f1f1f1f1e191105000000000000000000000810161a1e1f1f1f1e1a16110c04000000001b3045596e8498a6917b66523d281b30465b70879ca08b745f4a341f0a000000000000000004101b262e3642576c839786705b46362f281e1101000000000618293b4d5e708294a6a18f7d6b5a48362433485c7085827c6a55402b16000000000000031627394a5a6a7987929b8f857d7977787b828b97948e7964503b2510000c1d2c373e3f3f3f3f3f3f3f3f3f3f3f3e372b1c0b00000000000000000000000001142534404546464646464646464646464646433a2c1b0900000000000008101516120b01000000000008111516120b00000000000000020e161b1b1b1b19130b141a1b1b1b1a150c00000000000011233341494a4a4a4a48403239444a4a4a4a4a453b2c1a080000000000000000000000000000000000000000000000000000000000000000000000000000001c304456636666666666666666666153402c34475965666666666666666666665e4e3b27130000000000000000000000040b101417191a191815110c0600000000000000000000000000000000000000000000070f14151515130e0500000000000000000000000000000000000000000000000000020d161c1f1f1d1810050d161c1f1f1d1810050000000000000000000005111a1f1f1f1f1f1a110500000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000172c4055697d92a695806b56422e1b30465b70879ca08b745f4a341f0a0000000000000000000009131b2b40566b828b88725c47321d140c000000000000000c1e2f41536476889aac9b8977655342302d415567706c675f4e3b27130000000000000d20334556687889979b8c7d7269646263666e798698917c67523c27120016293b4953545454545454545454545453493928150100000000000000000000000a1e3143525a5b5b5b5b5b5b5b5b5b5b5b5b5b574a39261200000000000d1a242a2b271e12030000000e1b252a2b261e1103000000000313202a303030302e261d282f3030302f281e1000000000000515232e3434343434332d222831343434343431291d0e000000000000000000000000000000000000000000000000000000000000000000000000000000001f344a5f737b7b7b7b7b7b7b7b7b705b4630384d63777b7b7b7b7b7b7b7b7b7b6a55402b160000000000000000000710191f25292c2e2f2e2d2a26211a1209000000000000000000000000000000000000000c1923292a2a2a282117090000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000050e15191b1b1b1a1815120d08000000000000030b1015191b1d1d1c1a17120c0400000000000000000011263a4e63768a9e9a86715d4a382a30465b70879ca08b745f4a341f0a00000000000000000000000014293e53677474746e5b46311c0700000000000000000012243547596a7c8ea0a79583715f4e3c2a3849565b57534d41311f0c000000000003162a3d50627486979f8e7c6d5f554f4c4e525c687c91937d68533e2914001d314558676a6a6a6a6a6a6a6a6a6a6a665744301b0700000000000000000000001125394d606f707070707070707070707070706855412d18030000000d1c2b373f403b30211202000d1d2c383f403a2f2111020000000f21313d4546464642382d3a43464646443b2e1e0c000000000005111a1f1f1f1f1f1e1911151c1f1f1f1f1f1d160c00000000000000000000000000000000000000000000000000000000000000000000000000000000001f344a5f748b9191919191919187705b4630384e63788f9191919191919191826b56402b1600000000000000030f1a242c333a3e42434443423f3a352e251c120600000000000000000000000000000000091b2a363e3f3f3f3d3427170600000000000000000000000000000000000000040b101417191a191815110c0600000000000000000000000000000000010a101212121212121212121212120f08000000000000000c1822292e3030302f2d2a27221c13070000000a161f25292d303232322f2c261f170c00000000000000000b1f33475a6d8293a18d7a6756473d3a465b70879ca08b745f4a341f0a00000000000000000000000010243749585f5f5f5c503e2b17030000000000000000000618293b4d5e708294a6a18f7d6b5947362b394346423e39302313020000000811151e3246596c8092a39582705e4f423a37393f4d61758a95806a55402b16001f344a5f748080808080808080808080735e48331e090000000000000000000000192d4155687c87878787878787878787878785705b46311c0700000c1c2b3a4953554e3f3020110c1c2b3b4a54554d3f2f2011020000192c3e4f595b5b5b56483a4b575b5b5b584c3b2815010000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001f344a5f748285899a9a89868380705b4630384e637882848790a4a6928784806b56402b160000000000000614202c3740484e5357585a5857544f4941392f24180b0000000000000000000000000000001427384852545454514535231000000000000000000000000000000000000710191f25292c2e2f2e2d2a26211a12090000000000000000000000000005131e25272727272727272727272727231b0f01000000000c1b2a353e4346464644423f3b37302516060009192733393e424647474744403b332a1e110300000000000004172b3e51637588989785746559524f525b70879ca08b745f4a341f0a000000000000000000000000081a2c3b454a4a4a483f32210f00000000000000000000000c1e2f41536476889aab9b897765534130272e302d29251d12040000000e1b252a2b3a4e6175899ca08d78655341312b2b2832465a6e8288826c57422c17001f344a5f748b94959595959595959389735e48331e0904000000000000000000001c31475c7084959a8f909193949597989a9c89735f4a35200b000a1b2a3a4958676a5d4e3e2f1f1b2a3a4959676a5d4d3e2f201000001e33485c6d70707066534257697070706a5844301b070000000000000003090b0b0a06000000070b0b0b080100000000000000000000000000000000000000000000000000000000000000000000000000000000000000001d314558676c6f80939a86716d6b6555422d35495c686c6f7b90a49f8b776e6b61503d28140000000000061524323e49535c63686c6e6f6e6c69645d554c4135291c0d00000000000000000000000000001a2f4356666a6a6a63533f2b16010000000000000000000000000000030f1a242c333a3e42434443423f3a352e251c12060000000000000000000002142330393c3c3c3c3c3c3c3c3c3c3c3c372d1f0e00000007192a394751585b5b5b5a5754504b4234241100142637454e53575b5c5c5c59554f463c2f2111010000000000000e21344658697a8a989384766d6764676b74879ca08b745f4a341f0a000000000000000000000000000e1d2931343434332d22130300000000000000000000000012243547596a7c8e9fa69483705f4d3c2a191b1914100a000000000b1c2c383f404054697d91a59a86715d49404040403c323f536675726e65533f2b16001f344a5f737c80838a9fa08c83807d7b725d4833231e18110800000000000000001c31455a6c77849085797b7c7d80828385968d77634e39240f00152839485867767b6c5c4d3d2e2939485867777b6b5c4d3e2d1b08001f344a5f748787836d59455a6f858787735e4a35210c0000000000020e171d20211f1a1209141b2021201c160d0100000000000000000000000000000000000000000000000000000000000000000000000000000000000016293b49535764778ca08d7763565247372c2c3e4c54596e8397ab9884705c56504333210d0000000005152433424f5b666f777c82848484827d7871685e5347392b1c0d00000000000000000000050c111d32475c728080806e58432e1908000000000000000000000000000614202c3740484e5357585a5857544f4941392f24180b0000000000000000000c2032414d5252525252525252525252514a3d2c1a0600001023364857646d7070706f6c69655f52412d19001b30435562686c707272706e6a63594d3f2f1e0d0000000000000517293a4b5c6b7a88939489827b797b808892a2a08b745f4a341f0a00000000000000000000000000000c161d1f1f1f1e191004000000000000000000000000000618293b4d5e708294a5a08f7c6b5947352412000000000000000015283a4a5456565a6f8498aa95806b5656565656565042374959605d595447362410001c30445663676a73899fa08b746b68666355433b38322c241b1105000000000000162a3d4e5a6672808c8b8072696b6c6e798d907b66523d2813001c3144576676868b7a6b5b4c3c3847576676868a7a6b5c4a37230e001d32475c72879c88735f4a576c82978d78644f3b2611000000000413202a323636342e251b272f35363531291f120400000000000000000000000000000000000000000000000000000000000000000000000000000000000c1d2c373f485d718599937d6a55424242424242424b6074899da5917c6855413c33251504000000001223334251606d79838b929693909092928d857b706457493a2b1b0b000000000000000a121920262b32475c728895846f5a442f241b120700000000000000000000061524323e49535c63686c6e6f6e6c69645d554c4135291c0d000000000000000013283c4f5f6767676767676767676767665b4936210d0000172b3f5366758286878785827d79705d48331e001f34495e737c8286888887847d766b5d4d3c2a17040000000000000b1d2d3e4d5c6976828a9195919091959594a2a08b745f4a341f0a000000000000000000000000000000000000000000000000000000000000000000000001070a0d1e2f415264768899ab9a89766453412f1e0c000000000000001c304558676b6b6b73889da6917b6b6b6b6b6b6b6b604e3b3b464b4845403729190700142738464f525e73899fa08b745f5454545453504c4740372e22160800000000000e1f303d4854616e7b8990837567595d708392806a55402c16001f344a5f748594998a796a5a4b465565748594998a7a65503b2611001b30455a6f84998e78645054697d94937d6955402c17020000011323313d464b4b4942372b39434a4b4a453c3022120100000000000000000000000000000000000000000000000000000000000000000000000000000000000e1a242e41556a7d929985705c5757575757575757667a8fa39e8a75614e3928201507000000000c1e2f415161707d8b96998d847d79797c838c988e82756758493928170600000000000f1c262e343a4044485c72889b866f5a443e372e24190c000000000000000005152433424f5b666f777c82848484827d7871685e5347392b1c0d00000000000000162b40566b7c7c7c7c7c7c7c7c7c7c7c79644f3a240f00001c31465a6f83949b949494949389735e48331e001f344a5f748b939393969c9892897b6b5946331f0b0000000000000010202f3e4c58646d767c828586868480879ca08b745f4a341f0a00000000000000000000000001080c0d0d0d0b0700000000000000000000000000000a141b1f2225233547586a7c8e9fa69482705e4d3b2917060000000000001e33485e73828282828ca1a48f828282828282827d6a56422e323633302c24190b0000091a28343a485e73899fa08b74686a6a6a6a6865615b544a40342618090000000002121f2b3743505d6b7988948677685966797c786a56412c17001e32475a6b7a8a98988978695954647384939d8e8070604d39240f00182d42576c8297937d695551667b9198846f5a46311c0800000c1f30414f5a60605d55493a49565e605f594e40301e0c0000000000000000000000000000000000000000000000000000000000000000000000000000000000000812263b4e63778b9f8b776c6c6c6c6c6c6c6c6c6d8296aa97836e5b46321e0d03000000000316293b4d5e6f808f9c98897b70696565686f7a8796948676675746352311000000000c1d2d3942484f54595d6072889b866f5e59534b41362a1d0e000000000000001223334251606d79838b929693909092928d857b706457493a2b1b0b000000000000162b40566b829393939393939393939079644f3a250f00001f34495e73899e937d7d7d7d7d7d735e48331e001f344a5f747d7c7c7d828995a49a8976624e3a2511000000000000000211202e3a46515a62686c6f6f6f6e70879ca08b745f4a341f0a000000000000000000000008141d21222222201b110400000000000000000000000c1b273034373a38303b4c5e708294a5a08e7c6a59473523120000000000001c3045596d829494949aa9a5969494949494949486715d493520211f1b171107000000000b172033485e73899fa08b7c7d808080807d7a756f675d51443626160500000000020e1925323f4d5b697788968777685c6868635c4d3b271300182b3d4d5c6b79899897887768637283929c8e7d6f615142311e0a00152a3f54697d9398846f5a4e63788e9d89745f4b36220d000015283b4e5f6d75767166584758677276746b5e4e3b2815010000000000000000000000000000000000000000000000000000000000000000000000000000000000000b1f33485c708498928383838383838383838383889ca4907b68533f2b170300000000000d203346586a7c8e9e9b8a796a5e555050545d697788999586756452412e1c09000000172a3b4b555d63696e727577889b8676736d675e54483b2c1d0c00000000000c1e2f415161707d8b96998d847d79797c838c988e8275675849392817060000000000162b40566b7d82838690a59d8a85838079644f3a240f00001f344a5f748ba0937c6868686868655644301b001d31455867696867686d768698a6927c68533e2914000000000000000002101d29343e474e53575a5a5a5b70879ca08b745f4a341f0a000000000000000000000818263136373737352e22130300000000000000000006192a3944494c4f4c4132415264768899ab9a88766452412f1d0c0000000000162a3e5165797d7d7d91a79f897d7d7d7d7d7d7d7d77624c37220d0a050000000000000000041e33485e73899fa595929393939395938f8a837a6f6254443423110000000000000814222f3d4b5a6978899687766656534e493e2f1e0b000e1f2f3e4d5b6a7988979687767182919c8d7d6f605142332413010012273c51667b909e8974604b60768ba08e7965503c271300001b3044586b7d8a8c857564516376868c887c6b5845311c0800000000000000000000000000000000000000000000000000000000000000000000000000000000000004192c4055697c919f98959595959595959595969aa69d8975604c38241000000000000115283c4f6275889aa3907d6c5c4d413b3b404b596a7b8da09382705e4b3926120000001d3246596871777d83878b8d919b8f8c88827a7166594a3b2a19080000000316293b4d5e6f808f9c98897b70696565686f7a8796948676675746352311000000000013283c5060696b6e788fa49c87706c6a675b4936210d00001f344a5f748ba0937c675353535351483927140016293b49535453525359687c91a695806a543f2a15000000000000000000000c17212b33393f424444465b70879ca08b745f4a341f0a00000000000000000001142636444b4c4c4c4a4031200e0000000000000000000e223648565e61645f503d3547586a7c8e9fa69482705e4c3b291705000000000e22364a5c6868687b91a79f897368686868686868675a4734261604000000000000000000001e33485e73899fa08b807d7c7c7c80858e99978d80726252402e1b0800000000000004111f2d3c4b5b6b7b8d95857363513f352d201101000111202f3d4c5b69788896958680909b8c7d6e5f51423224150600000f24394e63788da38f7965515d72889d94806a56412d1804001f34495e73889ba194806c576a8093a19b88745f4a35200b0000000000000000000000000000000000000000000000000000000000000000000000000000000000000011263a4e62768a9e8b8080808080808080808297aa96826d5945311d090000000000081c3044586b8092a59a8773604e3e2f26262d3c4c5e7084979f8d7a6855422e1b0700001f344a5f74858c9297938c888786878a90968e83766859483725120000000d203346586a7c8e9e9b8a796a5e555050545d697788999586756452412e1c09000000000d2032424e545663788fa49c87705b55524b3d2c1a0600001f344a5f748ba0937c67523e3e3e3d362a1b0a000c1d2c373e3f3e3c3e4f647990a595806a543f2a150000000000000000000000050e171f252a2f383b465b70879ca08b745f4a341f0a000000000000000000081c304354606262625d4f3d2a1601000000000000000013283d51657376796d5945313b4c5e708294a59f8e7c6a584635231100000000182b3d4d575858667b91a69f89735e5858585858585858524433210d000000000000000000001e33485e73899fa08b74686767686b717b89989e90826f5d4a3724100000000000050e12131e2d3d4d5d6e809292806e5c493623100200000002111f2e3d4b5a6977879694909b8c7c6e5f5041322314060000000c21364b60758ba094806a565a6f869a9985705b47321d09001f344a5f748a9faf99846e586b8297aca28d77624c37220d000000000000000000000000000000000000000000000000000000000000000000000000000000000000000a1e33475b6f8397907c6a6a6a6a6a6a6a72879ba38f7a66523e2a160200000000000e22374b5f73889ba7927d6a5744312011111e2f4154677b8fa39885715d4a36220e00001f344a5f748b9f9789807773707071757c88969587766654422f1b08000115283c4f6275889aa3907d6c5c4d413b3b404b596a7b8da09382705e4b39261200000000031524323b3f4e63788fa49c87705b463d382d1f0e0000001f344a5f748ba0937c67523c29292822190c0000000e1a24292a28273c51667b90a5927c68533e281400000000000000000000000000040d1f31404c50535b70879ca08b745f4a341f0a0000000000000000000b20354a5f727777776d59442f1a04000000000000000013283e53687c8c8975614d392f415264768899ab9988766452402f1d0b0000001e32475a6a6e6e6e7990a59f89736e6e6e6e6e6e6e6e6d62503c2814000000000000000000001e33485e73899fa08b745f525253565e6a7a8c9f9f8d7a67533f2b17020000000b18222728241f2f40516275889c8c7966533f2b17020000000001101f2d3c4b596877869ba28d7c6d5e50413223140500000000091e33485d72889d9a85705b576c82979f8a75604c38230e001d32475c708597a094826c58687c909e9b8975604b36210c0000000000000000000000000000000000000000000000000000000000000000000000000000000000000004172b4054687c9097836e595454545465798ea29c88735f4b37230f00000000000013273c5165798fa3a18c77634f3b271402001124384c6074899da18d7965513d281400001e33485e73899f907b6c635e5b5b5c606a77889b9584715f4b37230f00081c3044586b8092a59a8773604e3e2f26262d3c4c5e7084979f8d7a6855422e1b070000000006141f26384e63788fa49c87705b4630241b0f010000001f344a5f748ba0937c67523c2713130e06000000000008101414172b4055697d94a28d78644f3a2611000000000000000000000000000014283c4f5e66686b70879ca08b745f4a341f0a0000000000000000000b21364b60768c8d866f5a442f1a05000000000000000011263b50657a90907c685441393847586a7c8d9fa593826f5e4c3a29170500001f344a5f74848484848fa4a08c848484848484848484806b5843301c15120b010000000000001e33485e73899fa08b745f4a3c3d424d5c6f8397aa97836e5a45311c0700000a1a29353c3d382d223345596c829596836e5a46311c08000000000a19283645546271808f9b9894857667584a3b2c1e0f00000000051b30455a6f869a9f8a7561546a8094a48f7a66513d281400192d41556779868b8576645160728289887c6c5945311d0800000000000000000000000000000000000000000000000000000000000000000000000000000000000000001125394d6175899d8974604b3f43576b8095a995826c5844301c08000000000000172c41556a8094a99c88725d4934200c0000091d31455a6f8499a995806b57422e1904001e33485d72889d8d77634f494646474d596a7d92a18e7a66523e2915000e22374b5f73889ba7927d6a5744312011111e2f4154677b8fa39885715d4a36220e0000000000020e23384e63788fa49c87705b46301b0800000000001f344a5f748ba0937c67523c27120000000000000000000000071b3045596e83989c88735e4a36210c0000000000000000000000000000172c41576b7b7d8083889ca08b745f4a341f0a0000000000000307070b21364b60768c9b866f5a442f1a0707060100000000000f24394e63788d9884705c4f4e4e4c4c5e6f8292a29f8d7b6a584634221100001c3145586d8291919193a2a89791919191919191919187735f4b372a2a261e130400000000001e33485e73899fa08b745f4a34282f3f53687c91a69d89735f4a35200b00081828384751524b3e32293d52677c919d89745f4a35200b0000000b1a28374654637282909b8c869695867668594a3c2d1e0f01000000182d42576c8397a0907b6652677b91a095806b57422e19001226384a5b6872747167584754636f74736c5e4e3d2a16020000000000000000000000000000000000000000000000000000000000000000000000000000000000000000091e32465a6e82968f7a66523e4a5e72879ba28e7965513d2915010000000000001a2f44596e8499ad99846e59442f1b06000002172c41566b8095aa9a86705c47321d08001d32475c72889d89745f4a353130323b4f64788ea396826c57422d180013273c5165798fa3a18c77634f3b271402001124384c6074899da18d7965513d28140000000000000e23384e63788fa49c87705b46301b0600000000001f344a5f748ba0937c67523c271200000000000000000000000b20354a5e73889d95826c5844301b070000000000000000000000000000172c42576c839395989a9c9e8b745f4a341f0a00000000030f171c1d1d21364b60768c9b866f5a442f1d1d1d1b150c000000000c21364b60768b9f8c776664636362626063738595a59988756352402e1b070015293d5165787b7b7b869ba48f7b7b7b7b7b7b7b7b7b7b77634d3f3f3f3b30231200000000001e33485e73899fa08b745f4a341f253a4f64788fa4a18c76614c37220d00132536465564675c4f443e3e52677c91a18c76614c37220d0000091a29384655647282909c8d7c778897958777685a4b3c2d1f0f000000152b40546a808b8b8b826c5764788b8b8b86715c47321d00091b2c3d4b565d5f5d55493a45525b5f5e584e40301f0d00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000002162b3f53677b8f95826d58445065798da29b87725e4a36220e000000000000001d32475c71879cab96826b56412c170200000013283d52677c92a79f8a745f4b35200b001b30465b70879b86705b46311c1b26374c62778da39a866f5a442f1a00172c41556a8094a99c88725d4934200c0000091d31455a6f8499a995806b57422e190400000000000e23384e63788fa49c87705b46301b0600000000001f344a5f748ba0937c67523c271200000000000000000000000f24394e63778da28f7a66523d2915010000000000000000000000000000172c42576c7c7d828386878984745f4a341f0a0000000413212b31323232364b60768c9b866f5a443232323230281d0f0000000a1f34495e73889d93807b7978787777767474768899a593826f5d4a36210c000e2236495a6566666c8295a7927d6866666666666666666559525454544e41301d0a000000001e33485e73899fa08b745f4a341f23384d62778da3a38d77624c37220d001b2f43546473796c615853535c6d8295a08b76604b36210b00001427384756647382919d8e7d6e69788998968777695a4b3d2c1a07000013283d516574747474746a576071747474746f5c47321d00000f1f2d3943484a4842382b353f464a49443c30221202000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000f24384c6074889c88735f4a576b8094a894806b57432f1b07000000000000001e33485e73899ea9947d69543f2a150000000011263b50667a90a5a28d77624d38230e001b30465b708686836d58432e212b364454667a8fa49b866f5a442f1a001a2f44596e8499ad99846e59442f1b06000002172c41566b8095aa9a86705c47321d0800000000000e23384e63788fa49c87705b46301b0600000000001f344a5f748ba0937c67523c2712000000000000000000000013283d51667b919e8974604b37231611080000000000000000000000000014293d4f5f67686b6d6f717372665744311c070000001022323e46474747474b60768c9b866f5a4747474747443b2d1c0a0000061c31465b70869b9d9290908f8f8d8c8c8b8b898a99a09e8b78634e38230e00071a2c3c49505052667a8ea297836e59505050505050505055656a6a695f4d392510000000001e33485e73899fa08b745f4a3421263a4f64798fa4a28d77624c37220d001f34495e72828a7d746c68686d798a9d9a86715d48331f0a00001c304456657483929e8f7d6f5f5a6a798a99968878695b4a36220e00000e223648575f5f5f5f5f5a4d535e5f5f5f5f5d513f2c190000010f1c272e3334332e261a222b32343430291f12040000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000091c3145596d82958e7965515d72869aa18d7864503c281400000000000000001f344a5f748ba0a9947d68533e2913000000000f253a4f64798fa4a48f78644f3a240f00192d4256686f6f6f65533f2a333d485461718396aa98846e59442f1a001d32475c71879cab96826b56412c170200000013283d52677c92a79f8a745f4b35200b00000000000e23384e63788fa49c87705b46301b0600000000001f344a5f748ba0937c67523c27120000000000000000000000152a3f54697d949b86705b46312d2b241a0c0000000000000000000000000d2032414d525456585a5c5e5e554839281501000000192d3f505b5c5c5c5c5b60758b99846e5b5c5c5c5c5c584b3a27130000001a2f44596e848b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b826e5b4935200c00000e1e2c363b3b4b5f72869a9d8974604d3b3b3b3b3b3b475c7080807c67523c2712000000001e33485e73899fa08b745f4a3636394456697d92a79f8a74604b36200b001e33485c6f7d8d9188827c7c828a989e8f7d6a57432e1a0500001f344a5f7384929e8f807060514c5c6b7a8b9a97887965503b2611000006192a39444a4a4a4a4a473d42494a4a4a4a4840322210000000000a131a1e1f1e19120910171d1f1f1b150d0200000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001162a3e52667a8e95806b5764788da19a86715d4935210d00000000000000001f344a5f748ba0a9947d68533e2913000000000e23384e63788fa4a59079644f3a250f001327394a565a5a5a5447363c46505a66728090a1a6927d6a55402c17001e33485e73899ea9947d69543f2a150000000011263b50667a90a5a28d77624d38230e00000000000e23384e63788fa49c87705b46301b0600000000001f344a5f748ba0937c67523c27120000000000000000000000152a3f546a809599846e5947434240372a1a09000000000000000000000003142330393c3f40434547494943372a1b0a000000001e33485c6e727272727070748b9883707072727272726956412d18000000172c4155697474747474747474747474747474747474747364513e2c19060000000e1a22262f43576a7d90a3907c69564434272626354a5f7489937d68533e2913000000001e33485e73899fa08b745f4c4b4b4e5461728699ac9885705b47321d0800192d3f51606e7b8690969393969c968d80705f4d3a27140000001e33475b6d7c8c9080706151423e4d5d6c7c8c908070614e39240f0000000c1b28313434343434322b2f3434343434332d22140400000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000f23374b5f73889b87725d6a8093a7927d6a56422e1a0600000000000000001f344a5f73899fa9947d68533e2913000000000f24394e63788fa4a59079644f3a250f000a1c2c3942444444413a444e59636d7783909eaa9a8976634f3b2612001f344a5f748ba0a9947d68533e2913000000000f253a4f64798fa4a48f78644f3a240f00000000000e23384e63788fa49c87705b46301b0600000000001f344a5f748ba0937c67523c2712000000000000000000000014293f53687d929b8772625c5857544838261200000000000000000000000005131d24272a2c2e303234342f25190c00000000001f344a5f74888888888787868b9986868788888888846e58432e1900000012263a4c5a5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f564734220f0000000000060d14273a4d607385979986736252443b37373a4e63778d94806a543f2a15000000001e33485e73899fa08b74636260606368728090a2a08f7c6955412d18040010223242505d69737c84888b8a88837a6f615242301e0b000000182b3e4f5e6d7c8271625243332f3f4e5e6d7d8271615243311e0a000000000a151c1f1f1f1f1f1e181b1f1f1f1f1f1e19110500000000000000070e13130f0800000000091013120d0500000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000081c3044586c80958d786471869a9f8b77634f3b27130000000000000000001e33485d72889daa95806a543f2a150000000010253b50647990a5a38f78634e38230e00000e1c272d2f2f37424d57616b75808a95a1a89b8c7c6b594633200c001f344a5f748ba0a9947d68533e2913000000000e23384e63788fa4a59079644f3a250f00000000000e23384e63788fa49c87705b46301b0600000000001f344a5f748ba0937c67523c2712000000000000000000000011253a4e61758694908076706e6c6655412d180000000000000000000000000001090f121416181b1d1f1f1b13080000000000001f344a5f748b9d9d9d9c9c9b9ca49b9b9c9d9d9d99846e58432e190000000a1d2e3c464a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4438291705000000000000000b1e31435667798a9a91807062564f4c4c4f54667b9095806b56402b16000000001e33485e73899fa08b7b78777676777c85909e9e9182705f4c392612000004142332404c5760696f737474726d675d5143342413010000000f2131404f5e6e7263534434252130404f5f6f71625344342514020000000000000000000000000000000000000000000000000000000000000d19232828241b0f0303111d25282721180c0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000015293d5165798d93806a778ca09884705c4834200c0000000000000000001b30455a6f859aac97826c57422d180300000013283d52677c91a7a18c77624c37220d0000000a13212f3c48545f6a747d89929da7a2968a7c6e5e4d3c291704001f344a5f73899fa9947d68533e2913000000000f24394e63788fa4a59079644f3a250f00000000000e23384e63788fa49c87705b46301b0600000000001f344a5f748ba0937c67523c271200000000000000000000000b1f3245576776828c928a8684836f5a442f1a0000000000000000000000000000000000000000000000000000000000000000001f344a5f74898989898988878b9986878889898989846e58432e1900000000101e2a323434343434343434343434343434343434343430271a0b0000000000000000011426384a5b6c7c8b998f80736a646262646970809497826c57422c17000000001e33485e73899fa596918f8d8c8c8d91989a938b8072635341301d0a0000000514222e3a444d555a5e5f5f5d59534a4033251606000000000313223140505c5e544535261612223141515d5e5344352616070000000000000000000000081013120e05000000000000000000000000000d1c2b363d3d372d201312212f393e3c34291c0e0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000e22364a5e72869a86707d93a5917d6955412d1905000000000000000000182d42576b8295aa99846f5a45301b07000001162b40556a8094a99e89735f4a35200b0000000f20303f4d5a66727c87919ba5a59b9085796c5f50402f1e0c00001e33485d72889daa95806a543f2a150000000010253b50647990a5a38f78634e38230e00000000000e23384e63788fa49c87705b46301b0600000000001f344a5f748ba0937c67523c27120000000000000000000000021528394958646f777d829799866f5a442f1a0000030f171c1d1d1d1d1d1d1d1d1d1d1d1d1d1d1d1d1d1b150c000000000000001e33485d6f737373737372748b9883717273737373736a56422d1800000000000d171d1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1c140900000000000000000000091b2c3d4e5e6d7b889491867d787777797d848d9c98836d58432e190000020e1e33485e73899fa08b848687898a8b8a888580776e625445352412000000000004111c27313a4045484a4a48443f372e221607000000000000041322323f484943362717080413233240484942352617080000000000000000000004101b24282722180c00000000000000000000000b1c2b3a4852524a3e312221303f4c5350473a2c1d0e0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000071b2f43576b80938b7685999e8a76624e3a26110000000000000000000014293d52667b8fa49d88735e4a36210d0000081c3045596e8398ad9985705b46311c070000091b2d3e4e5d6b77848f9aa4a89e93887d72675b4e413222110000001b30455a6f859aac97826c57422d180300000013283d52677c91a7a18c77624c37220d00000000000e23384e63788fa49c87705b46301b0600000000001f344a5f748ba0937c67523c271200000000000000000000000a1e31445665737d878e928f8d866f5a442f1a000413212b31323232323232323232323232323232323230281d0f000000000000192d40515c5e5e5e5e5e5f748b99846e5d5e5e5e5e5e594c3a271300000000000000000000000000000000000000000000000000000000000000000000000000000000000f1f30404f5d6a76828b92928f8d8d8f9298938d88836f5a442f1a000313202a33485e73899fa08b746f727374747473706a645b514436271706000000000000000a141e262c3133343433302b241b110500000000000000000414222d33342f25180900000414222d33342f251708000000000000000000000916222e383d3c352a1b0d0000000000000000000015283a495866675c4f40312d3f4e5d6864584a3b2c1b0b000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000014283c5064788d907b8a9f97836f5b47331e0b000000000000000000000f23384c6074889ca28d7864503c291605001124374b5f73889da793806a56412d180300011426394a5c6c7b8995a1aa9f958b80756b60554a3d30231404000000182d42576b8295aa99846f5a45301b07000001162b40556a8094a99e89735f4a35200b00000000000e23384e63788fa49c87705b46301b0600000000001f344a5f748ba0937c67523c271200000000000000000000001025394d6173849192857c7877776d59442f1a001022323e464747474747474747474747474747474747443b2d1c0a00000000001122323f47484848484b60768c9b866f5a4848484848463c2e1d0b00000511191e1f1f1f1f1f1f1f1f1f1f1f1c150a000000000000000000000000000000000000000000021222313f4c59646e777d8488898b8987847d78726d6655412d18000f21313d45495e73899fa08b745f5c5e5f5f5f5e5b5650483e33261809000000000000000000010a11171c1e1f1f1e1b16100800000000000000000000000410191e1f1b1308000000000511191e1f1b120700000000000000000000081827333f4b525147392b1d0e0000000000000000001c3145586776796d5e4f3e364a5d6c7b7668594a39281705000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000d2135495d7186968290a4907c6854402b180400000000000000000000091d3145596c8093a594806c5846332316151e2e4053667a8fa3a08c7864503b27130000091c30435668798a99a7a3988d82776d63594e43372c21180b0000000014293d52667b8fa49d88735e4a36210d0000081c3045596e8398ad9985705b46311c0700000000000e23384e63788fa49c87705b46301b0600000000001f344a5f748ba0937c67523c2712000000000000000000000014293e53687c919c8874686462625d4f3d2a1600192d3f505b5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c584b3a271300000000000514222c32333333364b60768c9b866f5a4433333333312a1e1000000414222d33343434343434343434343431281b0c0000000000000000000000000000000000000000000413212e3b47515b63696f72737473726e69645e58544838261200192c3e4f5a5e6173899fa08b74625e5b524a4a4846413c342b2115080000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000013253645515d676457493b2c1e1001000000000000001f344a5f74868b7c6d5c4b3a4f64798b877767574635221000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000061a2e42566a7d9292999d8975604d39241100000000000000000000000216293d506376899a9c8875635141332b2a2f3c4c5d708396a99683705c4935210c00000f24384c60738697a8a092857a6f655b51463b3b3b3a34291b0a0000000f23384c6074889ca28d7864503c291605001124374b5f73889da793806a56412d180300000000000e23384e63788fa49c87705b46301b0600000000001f344a5f748ba0937c67523c27120000000000000000000000152a3f546a809599846e594f4c4c4a4031200e001e33485c6e72727272727272727272727272727272726956412d180000000000000410191d1e1e21364b60768c9b866f5a442f1e1e1e1c160d00000010223240484a4a4a4a4a4a4a4a4a4a4a44392a180500000000000000000000000000000000000000000003111e29353e474f555a5d5e5f5e5c5955504a4440372a1a09001e33485c6d737679899fa08b7977736f604d3833312d2721180f04000000000000000000000000000000000000000000040b11161a1d1f1f1f1e1b18130d060000000000000000000000000000000000010a1113120c0400000000001b2f4354626e7a7567594a3c2e1f11030000000000001f34495d7080908b7a6957454e62738495867564523f2d1a070000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000013273b4f63778b939393826d5a46311d090000000000000000000000000d203346596b7c8e9e92806f5f5045403f434c5a6a7b8da09d8b796653402d1906000014293e53677b8fa2a2918273685d52483e485050504f47392815020000091d3145596c8093a594806c5846332316151e2e4053667a8fa3a08c7864503b27130000000000091223384e63788fa49c87705b46301b0f04000000001f344a5f748ba0937c67523c27120000000000000000000000152a3f54697d949b866f5a463837352e221303001f344a5f7488888888888888888888888888888888846e58432e1900000000000000000000000b21364b60768c9b866f5a442f1a0500000000000000192c3f515d5f5f5f5f5f5f5f5f5f5f5f574735210d00000000000000000000000000000000000000000000000c18222b343b404548494a494744403b362f2b241a0c00001f344a5f74888c8f94a0a0958f8c8979644f3a251c18130d05000000000000000000000000000000000000000000010d171f262b2f3234343433302c2721191005000000000000000000000000000005121e252827201609000000001f34495e72808c8676685a4c3d2f21120400000000001a2e4151617285988775624f455566778a93826f5c4936230f000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000c2034485c707c7c7c7c7a67533e2b16020000000000000000000000000417293c4d5f7080909e8d7d6e62595454575f6a7888999f8f806d5c4a372411000000182d42576c8296aa97857363564b40364759656666645745311d0800000216293d506376899a9c8875635141332b2a2f3c4c5d708396a99683705c4935210c000000000c1a262d384e63788fa49c87705b46302b2215060000001f344a5f748ba0937c67523c2712000000000000000000000013283d52677b919e89745f4b3622201b110400001f344a5f748b9c9c9c9c9c9c9c9c9c9c9c9c9c9c99846e58432e1900000000000000000000000b21364b60768b8b866f5a442f1a05000000000000001d32475c6f747474747474747474747464503b2611000000000000000000000000000000000000000000000000050f1820262c3033343434322f2c26211b1611080000001f344a5f748b8b8b8b8b8b8b8b8b8b79644f3a250f00000000000000000000000000000000000000000000000000111f2a333a404447494a4a4845413c352c22170a000000000000000000000000061523303a3e3b33271b0f0200001e33485c6e7d8f9587786a5b4d3f30221405000000001123334355687b8f92806c5845485b6e82958c7966523f2b17030000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000f2335465363696e6767665c4a37240f00000000000000000000000000000c1e3041526271828f9b8d80756d6a696c727c88979c8f827061503e2c1a070000001a2f44596e8499a38f7a675545382d394e63777b7b75604b36200b0000000d203346596b7c8e9e92806f5f5045403f434c5a6a7b8da09d8b796653402d1906000000081a2a3841454e63788fa49c87705b47443e3324130100001f344a5f748ba0937c67523c271200000000000000000000000f24394e63788da28e7965513d291407000000001f344a5f7487878787878787878787878787878787846e58432e1900000000000000000000000b20354a5e707474746b58432e1904000000000000001e33485e73898b8b8b8b8b8b8b8b8b7c67523c27120000000000000000000000000000000000000000000000000000050c12171b1e1f1f1f1d1a17120d070000000000001f34495d707474747474747474747473624e39240f0000000000000000000000000000000000000000000000000c1e2f3d474e54595c5e5f5f5d5a5650493f35281b0c0000000000000000000008162433414d535045392d20100000192d3f50607182929788796b5d4e4032231507000000051526394c6074889c8874604c3e5266798f96826e5a46321d0900000000000000000000000000000000000000000000000000000000000000000000000000000000000000000014293e5264707c82776c605346382a1c0d0000000000000000000000000001122334445362707d8993928983807d82868f99948a7d7062534332210f000000001a2f445a6f8599a08b76604b3727293e52677c918d77624c37220d0000000417293c4d5f7080909e8d7d6e62595454575f6a7888999f8f806d5c4a3724110000000011243748555a5d63788fa49c87705f5c595142301d0900001f344a5f748ba0937c67523c271200000000000000000000000c20354a5f73899d95806c58432f1b06000000001e33485c6d70707070707070707070707070707070706855412c170000000000000000000000071b2f42525d5f5f5f5b4e3c291500000000000000001e33485e73888b8e97a09a8f8c8b887c67523c271200000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001a2e41515d5f5f5f5f5f5f5f5f5f5f5e5545331f0b00000000000000000000000000000000000000000000000014283b4d5a62696e71737473726f6a645c5246382a1a0a00000000000000000917263442515f6862564a3e2e1c0900102232435364748596988a7b6c5e504233251607000000091d3145596d83978f7b66523d4b5f74899e8a75604c37220d000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000162b40566b808e958a7d716456483a2b1b0b000000000000000000000000000616263544525f6b7680878d91949494918d8882776c6052443525140300000000182d43586c8297a08b76604c3b353442576b82968d77624c37220d000000000c1e3041526271828f9b8d80756d6a696c727c88979c8f827061503e2c1a0700000000162b4054666f7275788fa49c877774716e604c38230e00001f344a5f748ba0937c67523c27120000000000000000000000071c31455a6f84999b87725e4a35200c00000000192c3e4f595b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b574a39261200000000000000000000000012243441494a4a4a473e301f0d00000000000000001d32465a6c72757b91a7958077747270634f3b261100000000000000000000000000050e1315151515151515151515151515140f0700000000000000000000000000000011233341494a4a4a4a4a4a4a4a4a4a494337271603000000000000000000000000000000000000000000000000192e43586b767d8387898b89888480786f645648382716040000000000000b1927354452616f7d73685c4b3824100004142535465667778999998b7c6e60514234251503000001162b40556a809495826b5741465b70869b8f7965503b261100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000013283c50617082919c8f8274665849392917050000000000000000000000000008172634414e59636c72787c7d807d7c78736d645a4f42352617070000000000152a3f53687c8fa28f7b68584f4a494c5b70859a8e78634e38230e0000000001122334445362707d8993928983807d82868f99948a7d7062534332210f0000000000172c42576c83888b8d95a3a0908c898779644f3a250f00001f344a5f748ba0937c67523c27120f0a020000000000050d1112172c41556a8094a28d78634f3a2510000000000f21313d454646464646464646464646464646464646433a2c1b090000000000000000000000000616242e34343434332b2012010000000000000000172b3d4e595d667b91a795806a5f5d5b534533200c0000000000000000000000000a1722282a2a2a2a2a2a2a2a2a2a2a2a2a29231a0d00000000000000000000000000000515232e3434343434343434343434343026190a000000000000000000000000000000000000000000000000001a2f445a6f8692928f8e8f909399948c827466564533200d00000000000c1a283745536170808e867968533d2813000007172839495a6a7b8c9c9b8d7d6f61524332200c00000616293e53687d9499846e5944445a6f8499937c68533e28130000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000d2032435262728393a092857567574734210d0000000000000000000000000000081a2c3d4b5763665e6367686a68676463665c4f42332517080000000000001024394c607285959886766a635f5e606674899e8f78634e38230e00000000000616263544525f6b7680878d91949494918d8882776c605244352514030000000000172c42576c838d8d8d8d8d8d8d8d8d8d79644f3a250f00001f344a5f748ba0937c67523c2725241e15090000000c1821262726283d51667b91a6927c68533d2813000000000313202a3030303030303030303030303030303030302e271c0e000000000000000000000000000006121a1f1f1f1f1e180f020000000000000000000e20303d4450667b91a795806a5448464136271d160e05000000000000000000071928353d3f3f3f3f3f3f3f3f3f3f3f3f3f3e372b1c0b000000000000000000000000000005111a1f1f1f1f1f1f1f1f1f1f1f1f1b140900000000000000000000000000000000000000000000000000001a2f445a6f86837d7978787a7d86909e93857462503d2915000000000d1c2a3846556371808f97867564513c27120000000a1b2b3c4c5d6e7d8fa09c8e8070614f3b2612000113243444566a80949b866f5a444a5c70869b947d69543f2a1400000000000000000000000000000000000000000000000000000000000000000000000000000000000000000003152534445464748595a394857564503b261100000000000000000000000000000d2136495b6875796d60535354535b6874796d60513e2a1501000000000000091d3043556777869495887d777473767a8390a28f79644f3a250f00000000000008172634414e59636c72787c7d807d7c78736d645a4f4235261707000000000001172c41566a777777777777777777777775634e39240f00001f344a5f748ba0937c67523c3a3a3932271808000a1b2a353b3c3b3a3c4f647990a595806a543f2a15000000000e1f2f3b42434343434343434343434343434343434340372a1a0800000000000000000000000000000000000000000000000000000000000000000002121f2a3b50667b91a795806a543f3e3e3b37312a21180d0100000000000000112436465154545454545454545454545454534939281501000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000192f44586c756e68646363656a72808fa192806c58442f1b0000000f1d2b394856647282909a8a7868574735220e000000000d1e2e3f5060708292a39e8f7d68533e2913000b1e304152627386999b866f5a475767798c9f947d68533e291400000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000071727374656667687978e827665513c271200000000000000000000000000000f243a4f6479868b7d706457525f6b78868b7d6d58432e18030000000000000113263749596875828c94928d8a898b8f96948e8879644f3a250f0000000000000008172836414c55585e6367686a6867645f5851473d312517080000000000000c1f30414f5c626262626262626262626261574839281604001f344a5f748ba0937c67524f4f4f4d4436251300152839475051504f5157677b90a595806a543f2a1500000000182b3d4d575858585858585858585858585858585858544837251100000000000000010d151a1b1d1e1c160c00000000000000000000000000000000000111263b50667b91a795806a54535353504b453e342a1f1205000000000000182c4054646a6a6a6a6a6a6a6a6a6a6a6a6a665744301b070000000000000000000000000000000002090d11121312100b0501090e1111110e0a05000000000000000000060c1011100b0500000000000015293d4e5c605a54504e4e50566171869a9c87725d48331e0000101e2d3b4957667483919d8d7c6b5b4a39291805000000000011213242536374859aa9947d68533e29130014283b4e5f708091a397836d585364758697a6917c67523d281300000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000919283848586878877b7064594936220e00000000000000000000000000000e23384c5f6f808f8f827568626f7c8a9687766755412c170200000000000000081a2b3b4a58646f7880868995948988848079736c5e4b37230e000000000000000e223546545e696d5f4e525f6a737777736a5d4d3d2b19070000000000000015283b4e5f6d75767066574c4d5e6c75767166574533200c001f344a5f748ba0937c67646464646154422e1a001c31445764666564666a748597a7927d68533e2914000000001e32475a6a6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6654402c1700000000000002121f292e30323331291d0f000000000000000000000000000000000011263b50667b91a7947d696868686865605951473c3023140500000000001a2f445a6f80808080808080808080808080735e48331e090000000000000000000000000000030d161d2226272827252019141d23262626231f1a140b000000000004101a2125262520190f04000000000d20303f484b463f4646403b43566b8297a08b745f4a341f000d1e2e3c4b5967758493a090806e5e4d3d2c1c0b000000000006172839495a6b7c8d9ea3947d68533e291300192e43576a7d8f9ea6927d69545d708393a3a08c77624e39240f0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000b1b2a3a4a5a6a74695e53473b2b19070000000000000000000000000000091c3041516170809093867973808e9788776858493825120000000000000000000d1d2c3a47525c646b707c939079726f6b655f584f402f1c080000000000000013283d5164707b7c695662707c888d8d887b6b5a4836230f000000000000001b3044586b7d8a8b84746350576a7c8a8b847563503b2713001f344a5f74899f937c7979797979725d48331e001f344a5f747b79797b808792a29c8a77634f3a2611000000001f344a5f7484848484848484848484848484848484846e58432e190000000000000f20303c43464748453b2d1c0a0000000000000000000000000000000011263b50667b91a7947d797c7d7d7c79746d645a4e4132231405000000001a2f445a6f86949595959595959595949389735e48331e09000000000000000000000000000714202a31373b3c3e3c39342e2731383b3b3b38342f281d0f0000000514222d353a3b39342c2114050000000212212d343641505b5b544d505d6e83979c88735e49341f00172a3c4c5a68778694a29383716150402f1f0e00000000000313243546566778899aa293857666523d2813001c31475c70869bac9c8a76624e62778da0a99784705c48341f0b000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000c1c2c3c4c5a5f584c41352a1d0d00000000000000000000000000000000122333425261718291978a859198897869594a3a2b1b09000000000000000000000e1c29353f495056677c939079645a56514b443c3122120000000000000000142a3f54697d8e86736b73828e9a9392998a7765523e2b17030000000000001f34495e73889ba092806b565d72879aa092806a56412c17001d32475b70859799909090909089735e48331e001f344a5f748b909090949a9b958b7d6d5a4734200c000000001f344a5f748b999999999999999999999999999999846e58432e19000000000000182b3e4e585b5c5e594b3926120000000000000000000000000000000011263b50667b91a7978b8f929494938f8982776b5f5142322212000000001a2f44596e7c8082889ca48f838282807d7c725d48331e09000000000000000000000000081725323d454c505253524e484139444c5050504d48433a2d1d0b00031423323f494f504e483e3223140300000003101922364a5e6e6f6862656d7a8c9e92806d5945301b001d32465a6a788795a4978675645443332211010000000000102031425363748696a192847566584836230e001c31465b70869a9d8f806d5a4c62778c9e998b796754412d190500000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000e1e2e3c464a453a2f23180c0000000000000000000000000000000000051525344453637282929b97998a796a5a4b3b2c1c0d0000000000000000000000000b17232d353c52677c939079644f413c3630291f1304000000000000000011263a4e6276899185808691988a7d7c8895826e5a46321d080000000000001f344a5f748b9fad98846e585f74899fad98836d58432e1900182d4154677885898b8a8886837d725d48331e001f344a5f748084888b8b898782786d5f4f3d2b1805000000001f344a5f748b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b846e58432e190000000000001e33475b6b7072736855422e1b0700000000000000000000000000000011263b50667b91a79f918883807d82889194897d6f6051402f1e0c000000172b3f5261676a70879ca48f786c6b6a68676355432f1b06000000000000000000000004152635434f596065676867635d554c5660666665625d574b3a2714000d203242515c6466635c504232200e000000000014293d516579847c7779808b9990847463503d2a16001f344a5f748997a59a89786857473625150400000000000c1d2d3e4f60708292a09183746557483a2b190700192e42576a7c88898071614f485d708289877b6c5c4a37241100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000101e2a323431281d1106000000000000000000000000000000000000000716263545546473848b8b8b7a6b5b4c3c2d1d0e0000000000000000000000000000061019273c52677c8b8b79644f3a28221c150d020000000000000000000b1f3346596b7d8e9995999488796c697a8d87745f4a341f0a0000000000001e33485d718698a093806b575c708597a093806b57412c17001225384a5a687073747473706d696355432f1b001c314457646a6f72747473716c655c4f4131200e00000000001f34495d7074747474747474747474747474747474746a57422d180000000000001f344a5f74878785715d4a36230f00000000000000000000000000000011263b50667b91a79682746d6a696d74808e9b8e7d6f5e4d3b29160400000f2234434e525b70879ca48f7863565453524f453726130400000000000000000000000f21334453616c75797c7d7b7771685e65737b7b7976726957422e1900162a3d4f606f787b776e604f3d2a170300000000172c42576c808e918d8f8888847d7265564534210e001f344a5f748ba0a38e7b6b5a4a39291808000000000008192a3a4b5c6d7d8f9f908273645647392a1c0d000014273a4d5e6b73746d6153434052626f74726a5d4e3e2c1b0800000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000d171d1f1c150b0000000000000000000000000000000000000000000008172736465565737474746c5c4d3d2e1e0f000000000000000000000000000000000011263b506474747473624e39240f0801000000000000000000000003172a3c4e5f6f7d878b898376695b5d708074695a46321d080000000000001a2e42566879878b85756450546778868b857563503c281400081b2c3c4a555c5f5f5f5e5b58545046372613001528394750555a5d5f5f5f5c5851493e3123130200000000001a2e41515d5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5a4d3b28140000000000001c3144586c80938d7966523e2b1703000000000000000000000000000011263b50667b91a795806a59545458616f7d8f9d8d7c6a584633200d00000516253139465b70879ca48f78634e3f3e3c3a3328221f180d00000000000000000005182b3e51617180898f9393918c857b706f839091908c866f5a442f1a001c3045596c7d8c918b7d6d5a46321d0900000000162b4055687379828a93897d736960554738281604001f344a5f748b9da69584726251402f1f0e00000000001325374758697a8b9c8f827263554638291b0c0000000b1e2f404e585e5f5a5043353444515b5f5d574c3f30200f0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000918283747565f5f5f5f5b4e3e2f1f100000000000000000000000000000000000000d213547575f5f5f5e5545331f0b00000000000000000000000000000d1f3041515f6a7274746f65594b54656b61574c3c2a17030000000000001326394b5c6a7274716658474a5a6972747167584734210d00000e1e2c3841474a4a4a4846433f3b34281908000a1b2a353c4145484a4a4a47433e362c21130400000000000011233341494a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a473d2f1e0b00000000000015293c5063778b95826d5a46331f0b000000000000000000000000000011263b50667b91a795806a543f3f4451607184979a887563503c291501000007141e30465b70879ca48f78634e38292b34373737332b1e0e00000000000000000c2034485b6e80909c9f958f8d8f928e8376889d988888866f5a442f1a001f34495e73889ca69c8a75604c37210c000001111e28384a585f666e7784929185756553412e1a0a00001e33485d6f7d8d9ca291806f5e4d3c2c1b0a000000001b2f4354657687988f807162544537281a0b00000000001222303c44494a463e332626343f464a49433b2f211202000000000000000000000000000000000000000000000000000000000000000000000000000000040c10111111111111111111100b020000060d10111111111111111111110f0900000000000000000000000000000a192938444a4a4a4a473e3020110100000000000000000000000000000000000005182a39444a4a4a494337271603000000000000000000000000000001132332414e575d5f5f5b53483b4752564f443a2e1e0d000000000000000a1c2d3e4c575d5f5d54483a3c4b565d5f5d55493a2917040000000e1b252d3234343433312e2b2620170a0000000c1821272c3033343434322e2922190f03000000000000000515232e343434343434343434343434343434343434322b1f11000000000000000d2134485c6f83978a76624e3b2713000000000000000000000000000011263b50667b91a795806a543f2a334254677a8fa393806c5844301c07000000021b30465b70879ca48f78634e382d3d484c4c4c473c2c1b080000000000000012273b4f63778b9ea08f827a77787d868f87889d978272726a57432e19001f34495e73899eaea28d77624c37220d00000e1f2f3b4242454b525b667384969483705d4935210c0000192d4051606f7d8c9b9e8d7c6b5a49392817060000001f34495e7283948e80706153443627190a00000000000004121e29303434312b211516222b3234342f281d11030000000000000000000000000000000000000000000000000000000000000000000000000000000b172025262626262626262626251f15080d19212626262626262626262626241d1204000000000000000000000000000b1a273034343434332b20120200000000000000000000000000000000000000000c1b2831343434343026190a00000000000000000000000000000000051423303b43494a4a463f362a363e403c32281d100000000000000000000f202e3a43494a4841372b2d3a43494a4842372b1c0b00000000000912191d1f1f1f1e1c1916120c040000000000050d12171b1e1f1f1f1d1a150e060000000000000000000005111a1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1e180e010000000000000005192c4053677a8f927d6a56432f1b080000000000000000000000000011263b50667b91a795806a543f2a25384b6074899d9b88735f4a36210d000000001b30465b70879ca48f78634e38384b5a6262625a4a37240f00000000000000172c40556a7d93a796837065636469727d8995a397826b5c594c3b2814001c31465a6e82919a9788735f4a36210c0007192b3d4d57574d433e485566798ea08d78644f3a2510000011223242515f6e7c8b9a9a89786756463524130300001e33485c6e79857d6f615243352618090000000000000000010c151b1f1f1c160e040510171d1f1f1b140b00000000000000000000000000000000000000000000000000000000000000000000000000000000091a28343a3b3b3b3b3b3b3b3b3b393226171d2b353b3b3b3b3b3b3b3b3b3b3b382f2213020000000000000000000000000009141c1f1f1f1f1e180f02000000000000000000000000000000000000000000000a151c1f1f1f1f1b140900000000000000000000000000000000000005121e282f343434322b2319232a2b2820150b0000000000000000000002101d272f3434332e251a1c272f3434332e251a0d000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001024384b5f73879a86725e4b3723100000000000000000000000000011263b50667b91a795806a543f2a1c31455a6f8599a28e7964503b2611000000001b30465b70879ca48f78634e383f536877777767523d2813000000000000001a2f44596e8498a48f7a66534d4f56606b7b91a797826b56453c2e1d0b00172b3e516372808683796a5744301c0800122537495b6a6b5f5752505161768ca1917b66503b261100000514233241505e6d7b8a999686746353423120100000192d3f505c67726e605142342517080000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000142738464f5050505050505050504e4435232a3b4850505050505050505050504c40311f0c000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000010b141b1f1f1f1d1710060f1516130c03000000000000000000000000000b141b1f1f1e1912080a141a1f1f1e1912080000000000000000000001080e1216181a1b1b1b19150e05000000000000000000000912191c1d1b1610060000000000000000000000000000000000000000050c1116191b1d1d1d1b19140f09000000000000081c3043576a7d928e7a66533f2b180400000000000000000000000011263b50667b91a795806a543f2a182d42576c8297a8937d68533f2914000000001b30465b70879ca48f78634e4747586d828d7d68533e2913000000000000001c31475c70879ca18c76614c383a4350667b91a797826b56402b1e1000000f22344554616b6f6e675b4c3a281501001a2e415466787c726b6765666d7c90a4907a66503b261100000005142332404f5d6c7a8998928270604f3e2d1b08001022323f4a555e5c5042332416070000000000000000000000000000000000030b11151819171510090200000000000000000000000000000000000000000000000000000000000000000000000000000000001c304456636666666666666666666153402c34475965666666666666666666665e4e3b27130000000000000000000005090d0e0f0e0c070100050b0d0d0d0a060100000000000000000610161919191919191919191918150e040000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000008141c22272b2d2f3030302e2921170b0000000000000002101c262d3132302b23190c000000000000000000000000000000000007111920262b2e30323232302d29241c1307000000000014283b4f63768a96836e5b4733200c00000000000000000000000011263b50667b91a795806a543f2a162b40556a8095ab96826b56402c16000000001b30465b70879ca48f78635b5c5c5c7186947d68533e2913000000000000001d32475c72889d9f8a745f4a34263b50667b91a797826b56402b1601000005162736444f575a59544a3d2e1d0b00001f34495d71848f87807c797b808b9a998874604c38230e00000000041322313f4e5c6b7988978f7d6d5c4b382410000414212d384349483f3223150600000000000000000000000000000000010c161f262a2d2e2c2a241d150b000000000000000000000000000000000000000000000000000000000000000000000000000000001f344a5f737b7b7b7b7b7b7b7b7b705b4630384d63777b7b7b7b7b7b7b7b7b7b6a55402b1600000000000000000a12191e22232523211c1611191f2222221f1b16110800000000000917232b2e2e2e2e2e2e2e2e2e2e2e2a211506000000000000000000000000060c1216191a1b1a1916120d0700000000000000000000000000000000000000000000000000060e1313131313100900000000000008101415151514100800000007172530373c404344464646433d34291b0b00000000000011202d39414647453f362a1c0d0000000000000000000000000000010e19242d343b3f434647474746423e3830251708000000000c2033475b6e82968a76634f3b281400000000000000000000000011263b50667b91a795806a543f2a152a3f546a8095ab98836c57422c17000000001b30465b70879ca48f787070727272758b947d68533e2913000000000000001e33485e73899f9f89735e4833263b50667b91a797826b56402b1601000000091826323c42444440382d1f100000001f34495d707d899295919091959b94897a6a5845311d090000000000041321303e4d5b6a7887968b7a67523d2813000004101b262f34332d2214050000000000000000000000000000000005121e29333a3f4243423e3931281d100300000000000000000000000000000000000000000000000000000000000000000000000000001f344a5f748b9191919191919187705b4630384e63788f9191919191919191826b56402b1600000000000004111c262e3337383a3836312a232d3437373734302b241a0c000000051727353f43434343434343434343433e3324130100000000000000000008121a21262b2e2f302f2e2b27221b130a000000000000000000000000000000000000000000000c19222829292928241c10020000000e1a24292a2a2a29241a0e0000122535434b5154585a5b5b5b58514739291806000000000c1e2f3e4b555b5c5a53483a2b1b0900000000000000000000000004121f2c3740484f54585b5c5c5c5b57534c423525140100000004182b3f52667a8e92806b5743301c08000000000000000000000011263b50667b91a795806a543f2a162b40556a8095ab98836c57422c17000000001b30465b70879ca5908687878788888991947d68533e2913000000000000001e33485e73899f9f89735e4833263b50667b91a797826b56402b160100000000081520282d2f2f2b251b0f010000001a2e4152606c757d83888a8b8a8780766a5c4c3a2815020000000000000312202f3d4c5a697786807364513c27120000000009131b1f1e19100400000000000000000000000000000000051423303c464e54575857534d443a2e211303000000000000000000000000000000000000000000000000000000000000000000000000001f344a5f748285899a9a89868380705b4630384e637882848790a4a6928784806b56402b1600000000000514222f3941484c4e4f4e4a453e3540484c4c4c494440372a1a0900000e2134455358585858585858585858585142311e0a0000000000000004101b252d353b404344464443403c362f271d1307000000000000000000000000000000000000000a1b2a363d3e3e3e3d382e200f00000c1d2c373e3f3f3f3e372c1d0c001b2f42536065696c6f7070706c64574735230f0000000215283b4d5c6870726e6558493826130000000000000000000000021322303d49535c63696d70727272706c675f5343301c08000000000f23374a5e72869987735f4c382411000000000000000000000011263b50667b91a795806a543f2a182d42576c8297ab96826b56402b16000000001b30465b70879ca8979193939393949498947d68533e2913000000000000001e33485e73899f9f89735e4833263b50667b91a797826b56402b16010000000000030c14181a1a1711080000000000122434424f5962696e72747474716c64594d3e2e1d0b000000000000000002111f2e3c4b5968746c61564735220e00000000000000000000000000000000000000000000000000000003142332414e5962696c6e6c6860574c3f312111000000000000000000000000000000000000000000000000000000000000000000000000001d314558676c6f80939a86716d6b6555422d35495c686c6f7b90a49f8b776e6b61503d28140000000002132332404c555c616364635f595148535d6262615e595448382612000013283d51636e6e6e6e6e6e6e6e6e6e6d604d39240f0000000000000715212d3841494f54585a5b5a5855504a433a3025190c0000000000000000000000000000000000011528394851535353534b3e2d1a070016293b495354545453493b2916001f34495e71797d8385878786827565523f2b16000000081d3145586a7a858883766756432f1b0700000000000000000000102031404e5b6670777d838688888886827b71604b36210c00000000081b2f42566a7d928f7b6753402c19050000000000000000000011263b50667b91a795806a543f2a1f32475b70869aa8937d69543f2a15000000001b30465b70879ca48f7c7c7c7c7d7d7d8d947d68533e2913000000000000001e33485e73899f9f89735e4833263b50667b91a797826b56402b160100000000000b151b1f1f1f1a130a0000000000061625313d464e54595d5f5f5f5d5850473c2f20100000000000000000000001101e2d3b4a585f5a4f44382918050000000000000000000000000000050c1112120e080000000000000f213142515f6b757d8384827c74695d4f3f2f1e0c00000000000000000000000000000000000000000000000000000000000000000000000016293b49535764778ca08d7763565247372c2c3e4c54596e8397ab9884705c56504333210d000000000d1f3141505e697176787977746d645b6270777776726e6655412d180000152a3f546a808484848484848484847b66503b26110000000000071625333f4a545d64696d6f706f6e6a655e564d42362a1d0e00000000000000000000000000000000081c31445765686868685c4a36220d001d314558676a6a6a675845311d001f344a5f748b94949494949b94826e5a45301b0000000c21364b607488989c9585725e4a35200b0000000000000000000a1c2e3e4f5e6c78838c92979b9c9c9c9a968a76614c37220c000000000013273a4e62758997836f5c4834210d000000000000000001111e283b50667b91a795806a543f2d2d3c4e62758a9fa48f7a65513c2712000000001b30465b70879ca48f7867676768687388947d68533e2913060000000000001e33485e73899f9f89735e4833263b50667b91a797826b56402b160100000002101d28303434342e271c0f010000000007141f2a323a4045484a4a4a48433d342a1e11020000000000000000000000000f1d2c3a454a473d32271a0b00000000000000000000000000010d1821262727231b1105000000071a2c3e4f606f7c899297999690877a6d5d4d3b29160300000000000000000000000000000000000000000000000000000000000000000000000c1d2c373f485d718599937d6a55424242424242424b6074899da5917c6855413c3325150400000004172a3d4e5f6e7b858b8f8f8d8882776d6d828c8d8c88836f5a442f1a0000152a3f546a808f929499999993918f7b66503b2611000000000616253443505c6770787d8386868683807972695f54483b2c1d0e0000000000000000000000000000000e22364b5f747d7d7d79644f3a250f001f344a5f74808080745f4a341f001f344a5f747d7d7d7d7d7d949d88725d48331e0000000d22374c62778da2b1a28d77624c37220d00000000000000000114273a4b5c6d7c8a969f9e958f8a8787878986705c47331e0900000000000b1f32465a6d82958b7764503c291501000000000000000e1f2f3b4350667b91a795806a544942424b5a6b7d92a59d8975604c37230e000000001b30465b70879ca48f78635252535a6f84947d68533e2921190d00000000001e33485e73899f9f89735e4833263b50667b91a797826b56402b160100000010202e3a44494a4942392d1f100000000000020d171f262b3033343434332e2921180d0000000000000000000000000000000e1c283134322b2015090000000000000000000000000003111f2b343b3c3c372e23150600000f2336495c6d7d8e988d8684878e998c7b6a5946331f0c0000000000000000000000000000000000000000000000000000000000000000000000000e1a242e41556a7d929985705c5757575757575757667a8fa39e8a75614e3928201507000000000b1f3346596c7d8d99a099939193958a8073879c9a8c8c866f5a442f1a000014293f536877797c8095a7917d7b797664503b2510000000011324344352616e7a858d9397918f8f91948e867c7166584a3b2c1c0c000000000000000000000000000013283c5165798e948974604b37230e001f344a5f748b958b745f4a341f001c3145586668686868687d949f89745f4a341f0000000c21364b5f748898a29d8a76614c37220c00000000000000000a1e314457697a8b9aa4978c827a74727070747b6b56422d1904000000000003172a3e5165798d93806c5844311d0900000000000000182b3d4d585d667b91a7958070655c57575d6978899ba694826d5946311d09000000001b30465b70879ca48f78634e3c41566b80807d68533e3b352b1d0d000000001e33485e73899f9f89735e4833263b50667b91a797826b56402b160100000b1d2e3e4c575e5f5d564b3d2e1d0b000000000000030b11171b1e1f1f1f1e1a140d0500000000000000000000000000000000000b151c1f1e180e03000000000000000000000000000010212f3d485052514b413324130100162a3e5266798b98887a716e727b8a998875624f3b2612000000000000000000000000000000000000000000000000000000000000000000000000000812263b4e63778b9f8b776c6c6c6c6c6c6c6c6c6d8296aa97836f5b46321e0d03000000000011263a4e6276899ba292867d7b7c82899184889d978276766c58442f1900001025384b5a62646a8095a7917b666461584835210d0000000c1e3041526170808c97988c837c78787b828b978f837668594a3a29180600000000000000000000000004192d42566b809498846f5a46311d08001f344a5f748ba08b745f4a341f0015283a485253535353687d94a08b745f4a341f000000081c3144576a79878d8a7d6d5a47331e0900000000000000001125394d60738698a49486796e66605c5b5c60665e4e3b2813000000000000000e22364a5d7185998874604c392511000000000000001e32475a6b71777c91a5938f8378706c6c707a8796a79a897664513e2a1602000000001b30465b70879ca48f78634e383c4f616a6a6960505050483b2a18050000081e33485e73899f9f89735e4833263b50667b91a797826b56402b1601000014273a4c5c6a737472695b4c3a2815010000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000c1d2e3f4d5a6467665e5142301e0b001b3045596d82968c79695d595e6b7c8f927d6a55412c1700000000000000000000000000000000000000000000000000000000000000000000000000000b1f33485c708498928383838383838383838383889ca4907b68533f2b1703000000000000162b4054697d92a69885736966686d76808d91a197826b605c4e3d29150000091c2d3d484d546a8095a7917b66504c463a2a1805000004172a3c4e5f70808f9d97887a6f686463676e7986959587776858473624120000000000000000000000000a1f33485c70869a927d6954402c1703001f344a5f748ba08b745f4a341f000b1c2b363d3e3e3e53687d94a08b745f4a341f0000000115283a4c5b697377756d60503e2b18040000000000000000172c4054687c90a3978675675c524b4746474c504c40311f0c00000000000000061a2e4155697c90907c6854412d19060000000000001f344a5f74878c919aa38d808e8c858282868d98a59a8d7c6b594734210e00000000001b30465b70879ca48f78634e3832424f54545965666665594734200b0007172533485e73899f9f89735e4833303b50667b91a797826b56402b160100001b2f43576a7a888b86796a5744301c08000000000000000000091015191c1d1c1a16110a0100000000000000000000000000050c1112120e08000000080e1212110d0600000000000316283b4c5d6b777c7a6f5f4d3a2612001f34495e738899846f5c4b444d60748999846f5a442f1a000000000000000000000000000000000000000000000000000000000000000000000000000004192c4055697c919f98959595959595959595969aa69d8975604c38241000000000000000192f44586d8397a5907b6756515359636e7b91a797826b56483f30200d0000000f1f2b343f546a8095a7917b66503b33291c0c0000000d203346596b7d8f9e9b8978695d534f4e535c687687989687766553412f1d0a00000000000000000000001025394e62768ba08c77634f3a261100001f344a5f748ba08b745f4a341f00000d19232829293e53687d94a08b745f4a341f000000000b1d2e3d4c575f62605a504232210e0000000000000000001b30455a6f8498a08c7968574a3e37323031383b382f22130200000000000000001226394d6175889884705c4935210e0000000000001f344a5f748b9497999c8d777c899297979a9f9a93897c6e5e4d3c2a1805000000030f1b30465b70879ca48f78634e3824323b3f4f64777b7b77634d38230e00122535434c5e73899f9f89735e4834424b50667b91a797826b56402b160100001e33485d728799a09888735f4a36210c0000000000000009131d242a2e3132312f2b251d140b00000000000000000000010d1821262727231b1105111b2327272621190e010000000b1f3246586a7a8a938e7d6955402b16001f344a5f748b97826b564131465b70879c87705b46301b00000000000000000000000000000000000000000000000000000000000000000000000000000011263a4e62768a9e8b8080808080808080808297aa96826d5945311d09000000000000001c31465b70869ba18c77624d3c3e4651667b91a797826b56402d211202000000010e182a3f546a8095a7917b66503b26170c0000000115293d506376899ba3907d6b5b4c403a393f4a59697a8da09483705e4c3926130000000000000000000001162b3f53687c919b87725d4934200c00001f344a5f748ba08b745f4a341f000000070e1313293e53687d94a08b745f4a341f0000000000101f2e3e4d555656565042321f0b0000000000000000001e33485e73889d9984705c4a392c231d1b1c2326241d12040000000000000000000a1e3145596c80948c7864513d2a160200000000001f344a5f737c8082858885766b768086898b8a8680766b5e5040301e0d0000000413212b31465b70879ca48f78634e383636374055697d918d77634d38230e001b2f4253606673899f9f89735e4841525f65697b91a797826b56402b160100001f344a5f74899fb3a28d77624c37220d0000000000010e1b2630383f43464747443f3931271d10030000000000000003111f2b343b3c3c372e2316232e373c3c3b352c1f1101000012263b4e62758899a798836c57422c17001f344a5f748997836d58453d4b5e72889a866f5a45301b0000000000000000000000000000000000000000000000000000000000000000000000000000000a1e33475b6f8397907c6a6a6a6a6a6a6a72879ba38f7a66523e2a1602000000000000001d32475c72889da08b745f4a352a3b50667b91a797826b56402b1603000000000000152a3f546a8095a7917b66503b261100000000081c3144586c8093a69a8673604e3d2e25242c3b4b5d708396a08e7b6956422f1b07000000000000000000081c3045596d839795826c57432e1a0600001f344a5f748ba08b745f4a341f00000000000013293e53687d94a08b745f4a341f00000000000f22364a5c6a6b6b6b604e3b26110000000000000000001f344a5f748ba094806a55412d1b0f0803080e110f0900000000000000000000000216293d5064788c94806c5945311e0a00000000001c30445663676a6c6f72726659636a70747474716b63594d40322212010000001022323e46495b70879ca48f78634e4b4b4b4c4c5a6f84988c76614c37220d001f34495e717a828a9f9f89735e48485d70797d8392a797826b56402b160100001d32475c7084959f9c8a75604c37210c0000000001101f2c38434c53585b5c5c59544d443a2e21130400000000000010212f3d485052514b41332533404a515250493d2f1f0e0000182d41556a7d92a5a392806b56412c17001d32465b708599887563565259687a8d95806b57422d1800000000000000000000000000000000000000000000000000000000000000000000000000000004172b4054687c9097836e595454545465798ea29c88735f4b37230f00000000000000001e33485e73899e9f89735e4833263b50667b91a797826b56402b1601000000000000152a3f546a8095a7917b66503b2611000000000e23374b6074889ca6927d6a5643301f100f1d2e4053677a8fa39986725e4a36220e0000000000000000000d22364b5f73889d8f7a66523d29140000001f344a5f748ba08b745f4a341f00000000000013293e53687d94a08b745f4a341f000000000015293e52657982827d68533e29130000000000000000001f344a5f748ba0947d68533e29160a000000000000000000000000000000000000000e2135495c7084988975614d3a26120000000000142738464f5254575a5d5d56484f565c5f5f5f5c5750463c2f22140400000000192d3f505b5e6170879ca48f78635f60606062626374899e8b75604b36210b001f344a5f748b959a9c9d89735e48485e738993989b9d97826b56402b16010000192d41546676848a897d6d5a46321e09000000000e1f2e3d4a565f676d7072706d6860574c3f31221101000000000c1d2e3f4d5a6467665e51423343515d6567645b4d3d2b1805001c31465a6f8599a695857462503c281300182d4155697c9092827369676c7787988c7865513d2814000000000000000000000000000000000000000000000000000000000000000000000000000000001125394d6175899d8974604b3f43576b8095a995826c5844301c0800000000000000001e33485e73899f9f89735e4833263b50667b91a797826b56402b1601000000000000152a3f546a8095a7917b66503b26110000000013283c51657a8fa3a18c77634e3b271401001124374b5f74889da28e7965513d291400000000000000000013273c5065798e9e8975604c37230e0000001f344a5f748ba08b745f4a341f00000000000013293e53687d94a08b745f4a341f00000000071b3044586d8295937c67523d28130000000000000000001f34495e73889d95806a544134281b1004000000000000000000000000000000000006192d4054687b8f907c6955412e1a0600000000091a28343a3d404245484843383b42474a4a4a47423c332a1e120400000000001e33485c6e737679879ca48f787474747676777778798f9f89745f4a341f0a001f344a5f74828385878885735e48485e73828384868889826b56402b160100001124374958667074736c604f3d2a1703000000091b2c3d4c5a67727b82868887837c73695d4f402f1e0d0000000316283b4c5d6b777c7a6f5f4d4051616f7a7c786b5b4835210c001f34495e73889d9a897767564533200c0012263a4d6072839391857d7c80899590806e5c4936220e00000000000000000000000000000000000000000000000000000000000000000000000000000000091e32465a6e82968f7a66523e4a5e72879ba28e7965513d29150100000000000000001e33485e73899f9f89735e4833263b50667b91a797826b56402b1601000000000000152a3f546a8095a7917b66503b261100000000172c41566b8094a99c87725d4934200b0000081c31455a6e8498a995826c57432e19050000000000000004192d42566a809498846f5a46311d090000001f344a5f748ba08b745f4a341f00000000000013293e53687d94a08b745f4a341f000000000b20354a5e73889c917b66513c27110000000000000000001b3045596e829697836f5f5245392e22150900000000000000000000000000000000001125384c6073889985715d4a36220f00000000000b172025282b2d3033332f26272d32343434322e2820170c010000000000001f344a5f74898c8f93a0a09289898b8b8c8c8d8d8e8f979d88735e48331e09001d314558676b6d6f7073736858454457666b6c6f7072746d62513d2914000000081a2b3a48545c5f5f594f4232200e000000011426394a5b6a78858f968d898a8f90877a6d5e4d3c2b180500000b1f3246586a7a8a938e7d69554b5d6f808d938a77644f3a2510001f344a5f748ba0927d6b594939281604000a1d3043546574838f98939394978d807161513f2c19060000000000000000000000000000000000000000000000000000000000000000000000000000000002162b3f53677b8f95826d58445065798da29b87725e4a36220e0000000000000000001e33485e73899f9f89735e4833263b50667b91a797826b56402b1601000000000000152a3f546a8095a7917b66503b2611000000001b30455a6f8499ad98846e59442f1a06000001172c40556a8095aa9b86715c47321e09000000000000000a1f33485c70869a927d6954402c17030000001f344a5f748ba08b745f4a341f00000000000013293e53687d94a08b745f4a341f000000000f24394e63778da2917b66503b2611000000000000000000162b3f5266798c9d8d7d6f63564b3f3326190c00000000000000000000000000000000091d3044586b80938d7965513e2a17030000000000040c101315181b1e1e1b1413191d1f1f1f1d19140c0400000000000000001f344a5f748b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b88725c47321d070016293b495356585a5c5e5e564a3a39495356575a5b5d5f5b514434210e000000000d1c2b3741474a4a453d31231403000000091d3043566878899795867973747a87978c7b6b5a4835220f000012263b4e62758899a798836c5754677a8d9ea7927c67523c2712001f344a5f74899f8f78634e3c2b1b0a000001132537475665717c84898b88837a6f62534433210f0000000000000000000000000000000000000000000000000000000000000000000000000000000000000f24384c6074889c88735f4a576b8094a894806b57432f1b070000000000000000001e33485e73899f9f89735e4833263b50667b91a797826b56402b1601000000000000152a3f546a8095a7917b66503b2611000000001d32475c72879cab96826b56412c170200000013283d52677c92a79f8a74604b36210c000000000000001025394d62768b9f8c77634f3a2611000000001f344a5f748ba08b745f4a341f00000000000013293e53687d94a08b745f4a341f0000000012273c51667b91a5907a65503b271a0e01000000000000000f2336495c6e808f9c8e8274685d5144372a1b0c0000000000000000000000000000000115283c5063778b95826d5a46321f0b00000000000000000000000000000000000000000000000000000000000000000000001f34495d7074747474747474747474747474747474747474746d5945301b06000c1d2c373e40434447484943382c2b373e40424446484a473e3426160500000000000d19242d323434312a201405000000001024394c607386979c8977675e5f68798c9a897764513e2b170300182d41556a7d92a5a392806b565b708498aa9e8d7965503b2611001e33485d72889c8f79644f3a2510000000000819293847545f686f7374736e675d524435261504000000000000000000000000000000000000000000000000000000000000000000000000000000000000091c3145596d82958e7965515d72869aa18d7864503c2814000000000000000000001e33485e73899f9f89735e4833263b50667b91a797826b56402b1601000000000000152a3f546a8095a7917b66503b2611000000001e33485e73899fa9947d69543f2a150000000011263b50657a90a5a28d77624d38230e00000000000000162a3f53687c919b87725d4934200c000000001f344a5f748ba08b745f4a341f00000000000013293e53687d94a08b745f4a341f0000000013293e53687d93a5907b665245382b1f1205000000000000071a2c3e506170808f9c92867a6e625548392a1b090000000000000000000000000000000d2034485b6f83978975624e3a27130000000000000000000004090e0f0c06000000000000000000000000000000000000001a2e41515d5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5c4f3d2a160200000e1a24292c2e2f32333430261b1a23292b2d2f313334332b211608000000000000000711191e1f1f1c160d020000000000162b3f53687c90a393806c59494b5c6f849995826e5a46321d09001c31465a6f8599a7968574624f61768b9fa291806f5d4a36220e001b3045596e8398927c68533e291501000000000b1a2936424c555b5e5f5e5a534a40342617080000000000000000000000000000000000000000000000000000000000000000000000000000000000000001162a3e52667a8e95806b5764788da19a86715d4935210d000000000000000000001e33485e73899f9f89735e4833263b50667b91a797826b56402b16010000000002101b2a3f546a8095a7917b66503b2611000000001f344a5f748ba0a9947d68533e2913000000000f253a4f64798fa4a48f78644f3a240f000000000000071c3044596d829795826c57432e1a06000000001f344a5f748ba08b745f4a341f00000000000013293e53687d94a08b745f4a341f0000000012273c51667b8fa29382706256493c302315070000000000000f2132435261707d8b98988c807366574838271502000000000000000000000000000005182c3f53677a8f927d6a56422f1b07000000000000000611181e232421190e00000000000000000000000000000000000011233341494a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a483e31200e0000000008101416181a1c1e1f1b1409070f1416181a1c1e1f1e180f0500000000000000000000000000000000000000000000001a2f44596d8397a18d77634f3c40556a80949e8a75604c37220d001f34495e73889d9d8a7867564f64798fa49785736252402e1b0700172b4054697d9196826d5844301d0a00000000000b192530394046494a48453f372e2216080000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000f23374b5f73889b87725d6a8093a7927d6a56422e1a06000000000000000000041e33485e73899f9f89735e4833263b50667b91a797826b56402b16010000000010202e383f546a8095a7917b66503b2611000000001f344a5f748ba0a9947d68533e2913000000000e23384e63788fa4a59079644f3a250f0000000000000d21364a5f73889c8f7a66523d291400000000001f344a5f748b948b745f4a341f00000000000013293e53687d94a08b745f4a341f000000000f23384c607385959f8f8273675a4e40332516070000000000041525344352606d7986939e918475665644311e0b0000000000000000000000000000001024384b5f72869986725e4a37230f0000000000000817232c32383a352b1e0e00000000000000000000000000000000000515232e343434343434343434343434343434343434343434332c211302000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001e33485d72879c9d88735e49353d52677c91a48f7965503b2611001f344a5f748ba094806d5a4950667b91a28e7a675544342211000011263a4e6175899c8873604c39271706000000000007131d252c31343433302b241b110500000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000081c3044586c80958d786471869a9f8b77634f3b271300000000000000000005142233485e73899f9f89735e48332c3b50667b91a797826b56402b1601000000081b2d3e4b52576a8095a7917b66503b2611000000001f34495e73899fa9947d68533e2914000000000f243a4f64788fa4a59079644f3a250f00000000000013273c5065798e9e8a75604c38230f00000000001f344a5f747d7d7d745f4a341f00000000000013293e53687d94a08b745f4a341f00000000091d304356677685929f9185786b5e514334251504000000000007162534424f5c687582909f948573614e3a2511000000000000000000000000000000081c2f43576a7d928e7966523f2b1704000000000315263540474c4f493c2c1a07010000000000000000000000000000000005111a1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1e190f0300000000000000000000000000000000000000000000000000000000000000000003080d1012131312100d080200000000000000001f344a5f74899f9b86705b46313b50667b91a6927c67523d2813001f344a5f74899f907965503d50667a909e89735f4a3827160500000a1e3246596c80928f7c695645352310000000000000000a11181c1f1f1e1b1710080000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000015293d5165798d93806a778ca09884705c4834200c0000000000000000001122323f485e73899f9f89735e48333f4850667b91a797826b56402b16010000000e23374a5c666b708095a7917b66503b2611000000001e33485d72889caa95806a54402b150000000010263b50657990a5a38f78634e38230e000000000004192d41566a809498846f5b46321d0900000000001c31455866686868665845311c00000000000013293e53687d94a08b745f4a341f000000000114263849586673828d9996897c6f615243332210000000000000071624313e4b5764718293a3917d68543f2a150000000000000000000000000000000014273b4f62768a96826e5a47331f0c000000000c1f3244535b61645a4936231916130e070000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000050c12181d21252728282725211c160e050000000000001f344a5f748ba09b866f5a442f3a4f647990a5947d68533e2913001e33485d72889c8f78634e394e63788e9d88725c47321d0900000003162a3d5062748697867362523f2b17000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000e22364a5e72869a86707d93a5917d6955412d1905000000000000000000192d40515c6273899f9f89735e483f505c61667b91a797826b56402b160100000011263b50657a80868a98a7917b66503b2611000000001b30455a6f8599ac97826c57422d180300000013283d52677c91a7a18c76614c37220d00000000000a1e33475c70859a927d6955402c1703000000000015283a485253535352483a281500000000000013293e53687d94a08b745f4a341f0000000000091a2b3a4856636f7b88949a8d807061513f2d1b080000000000000613202d39465363778da397826b56402b16010000000000000000000000000000000c1f33475a6e82968a76634f3b28140000000011263a4f6270757866523e2f2e2c28221b130a000000000000000000000000090f121212121212121212121212121212121212120e070000000000000000080f1212121212121212121212121212110e06000000000004101920262c32363a3c3d3d3c3a36312a21180d00000000001f344a5f74899f9b866f5a442f3c51667b91a7937d68533e2913001b3045596e83988f7964503b4b6074899e89735e49341f0a000000000d2033455768798991826f5a442f1a00000000000000000000000000000810141410080000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000071b2f43576b80938b7685999e8a76624e3a2611000000000000000000001e33485d6f777c899f9f89735e48475b6e767a8091a797826b56402b160100000011263b50667b919a9fa1a4917b66503b261100000000182d41566b8095a999856f5a45311c07000001172b40556a8094a99e89735e4934200a00000000001024394d61768b9f8d77634f3a26110000000000001122323f47484848473f32221100000000000013293e53687d94a08b745f4a341f0000000000000d1c2a3845525e6a76828f9d8f806e5d4a37241100000000000000030f1c28384e63788fa494806a543f2a150000000000000000000000000000000004172b3e5266798d927d6a5743301b0000000012273c52677b8a826d59464443403c362f261c1105000000000000000004111d2427272727272727272727272727272727272727231a0e0000000000010f1b2327272727272727272727272727272722190c0000000514222c343b41464b4f515252524f4b453e342a1e11020000001d32475c71879c9c87705c47323f53687d93a6917b66513c271200172b4054687c91927c68543f465b6f83978c77624e3a271404000000031628394a5b6a79877c6c58442f19000000000000000000000000000e1a242929241b10030000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000014283c5064788d907b8a9f97836f5b47331e0b000000000000000000001f344a5f748b9298a09f89735e48485e73898f949ca197826b56402b160100000011263b50667b8587898c8f8e7b66503b26110000000014283d51667a8fa39d88735f4a36210e0000081c31455a6e8398ad99846f5a46311c070000000000162a3e53677c909b87725d4935200c000000000000192d40515c5e5e5e5c51402d1900000000000013293e53687d94a08b745f4a341f000000000000000c1a2734404c5864707d8e9d8c7a6754402c180400000000000000000e23384e63788fa4907b66513d281300000000000000000000000000000000000f23374a5e72868987735e49341f000000000f24384c607488897561585a5855514b43392f2316080000000000000112222f393c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c372c1e0d000000000e1f2d373c3c3c3c3c3c3c3c3c3c3c3c3c3c3c362a1c0b00001122323f484f555b606466676767645f5951473c2f20110100001a2f44586d82969e89745f4b3744586d8296a28d78634e39240f001125394e61758997836f5b494054677b8f917c695644322313010000000a1b2c3d4c5b69746d5e4e3d29150000000000000000000000000e1d2c373e3e382e2013030000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000d2135495d7186968290a4907c6854402b1804000000000000000000001f344a5f748587898b8c89735e48485e738587888a8c8d826b56402b16010000000f24384d5f6c6f727477797b6f604d39240f000000000e23374b6073889ba28e7965513d2a1705011224384b6074889da7937d6a55412c180300000000071b3044596d829695826c58432f1a060000000000001e33485d6f7373736f5d48331e00000000000013293e53687d94a08b745f4a341f00000000000000000a16232f3a4753606f80959784705b47321e0900000000000000000f24394e63788fa08b76624d38240f0000000000000000000000000000000000071b2e4256697473716d5c48331e000000000e1d3145596d82907c6c6e6f6e6a655e564c403426170800000000000b1e30404c525252525252525252525252525252525252514a3c2b18050000061a2c3d4a515252525252525252525252525251483a29160300192d40515c636a7074787b7c7c7b78746d64594d3e2f1f0d0000152a3e52667a8da08f7a6654474e6073889c9a87725e4a35200c000a1e3246596c80918b786654444c5f7285978673615041301e0b000000000e1f2e3d4b575f5c4f4030200d00000000000000000000000c1d2c3b4953534b3e3121110100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000a1a2e42566a7d9292999d8975604d39241103000000000000000000001e32475a6a6f70737477766b5a4646596a6f70727476787165523e2a1500000000091d30414f575a5c5f6264665e5142311e0a00000000081c3044586c8092a594806c5946342317161f2f4154677a8fa39f8c77634f3b271200000000000d21364a5e73889c8f7a66523d2914000000000000001f344a5f74898989745f4a341f00000000000013293e53687d94a08b745f4a341f00000000000000000005111d29354253687d939f8a75604b36210c00000000000000000f253a4f6479909985705c48331f0a00000000000000000000000000000000000013263a4c5a5f5e5c594f3e2c190000000a1b2c3b4a5865798d8482848483807972695e5244352616060000000012263a4d5e676767676767676767676767676767676767665a4835210c00000d2136495b6667676767676767676767676767655846321d09001e33485d6f777d848a8e919393918e8982776b5c4d3c2b1906000f23374a5d708294968472635c5e6b7d90a2907d6a57432f1b06000316293c4f6174869684726252425567798b91806e5f4e3b26120000000001101f2d3a444a483e31221202000000000000000000000016293b4a5967675c4f3f2f1f0e000000000000000000000000000000000000000000000000000000000000000000000000000000000000010f1c28343b4f63778b939393826d5a46372d211406000000000000000000182b3d4d575a5c5e606462594d3d3c4c565a5b616361635e544736230f00000000011323323d424547505c66695e504232200d000000000115293c4f627588999c8976635242342c2b303d4d5e708497a896836f5c4834200c000000000012273b5064798e9e8a75604c38230f000000000000001f344a5f748b9f8b745f4a341f00000000000013293e53687d94a08b745f4a341f00000000000000000000000c18273c51667b91a38d77634d38230e000000000000000011263b50667b86867d6955412d19050000000000000000000000000000000000000a1d2e3c464a4947453d31210f00000416283949596875828d9596959394948e867b6f62534434231200000000192e41556a7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c77644f3a251000000f243a4f64797c7c7c7c7c7c7c7c7c7c7c7c7c75604b36200b001f344a5f748b9399928a84828083889194897a6b5a4836220f00081b2e41536475869490827670727b8a9b938472614e3b28140000000d2032445668788990826f5a444a5c6d7d8e8d7d69543f2a150000000000010f1c283134332c2113040000000000000000000000001d31455868777a6d5d4d3c2b1a0800000000000000000000000000000000000000000000000000000000000000000000000000000000000e1f2d394650515c707c7c7c7c7a6753514a3e3224150400000000000000000e1f2f3b424453626e796d5e4f40313a45546372766a5d4e413729190600000000000514202c3a4855616e797c6e604f3d291400000000000d203346586a7c8d9e9382706051474140444e5b6b7c8ea09c8a786653402c19050000000004182d41556a7d9398846f5b46321d09000000000000001f344a5f748ba08b745f4a341f00000000000013293e53687d94a08b745f4a341f00000000060c0e0c0602040b172a3e52677c92a38d77634d38230e00000000000000000f24394e616e6f6f6e604d3a26120000000000000000000000000000000000000000101e2a32343432302a20130300000d20334556677786939e9688807c7d858f998d8071625241301e0b0000001e33485d718593939393939393939393939393939393917c67523d281300000f253a4f64799093939393939393939393938c76604b36210b001f344a5f748ba08f80756f6b6a6d73809199897765523e2a16000011243547576775838d938a87888e978e8374655543311e0b000000031527394a5a6a79877c6c58443e4f5f6f7d877767533e2914000000000000000b151c1f1e190f03000000000000000000000000001f344a5f74878b7b6b5a4937251200000000000000000000000000000000000000000000000000000000000000000000000000000000061a2c3d4b5763665c6367676767665c63665c4f4233210e000000000000000001111e2832475c70808c7c6d5e4f404453627282887b6a55402b190b000000000001101f2e3c4a586672808c8d7d6c57422c1702000000000316283b4c5e6f808f9e8e7d6f635b565558606b7989999e8f7d6d5b4936231000000000000a1e33475b708599927d6955402c1703000000000000001f344a5f748ba08b745f4a341f00000000000013293e53687d94a08b745f4a341f0000020f1a2123211a17191e283547596d8296a08c76614c37220c00000000000000000a1e314352595a5a595142311f100000000000000000000000000000000000000000000d171d1f1f1d1b160e02000003162a3d5062748696a4948b826e6769717d8d9d9082705f4d3b28150200001f34495e72808a95988788898b8d8f9091939496989b95806a55402c1702000f253a4f6479808283848696a896868483828075604b36210b001f344a5f748b9d8873625a5655586274889d95826d59442f1b000006182939495865707a8287898987837a7064564737261402000000000a1b2c3c4c5b69746d5e4e3d3141515f6d7468594a382410000000000000000000000000000000000000000000000000000000001e33485d6f809289786654412f1c090000000000000000000000000000000000000000000000000000000000000000000000000000000d2136495b6875796d60535252525a6774796d61513e2a15010000000000000000000b1b3045596b7c8e8c7c6d5e4f5362718291897766533f2a150000000000000f1f2e3d4c5a687684919787766654402b160100000000000c1d2f40516170808d998e82766f6b6a6d737d89989b8e8070604f3d2c190700000000001024384d61768a9f8d77634f3a261100000000000000001f344a5f748ba08b745f4a341f000000030b0f13293e53687d94a08b745f4a341f000010202c3538362e2c2e333a45536476899c9c87725d49341f0a00000000000000000b1d2e3e4c575d5f5d554a3d2e1d0c00000000000000000000000000000000000000000000000000000000000000000a1e3246596c8092a3998880897561555f6e80929f8e7c6a5744311e0a00001b2f4354626d7784908d8276767778797b7d8082838c98836e59442f1a05000d22364a5c686a6b6c6e8095ab95806e6c6b6a665946321e09001f344a5f748b98846f5a464140455a6f869b9c88725d48331e0000000b1c2b3a47535d666d727373726d675e5347382919080000000000000e1e2e3d4b575f5c4f40302332414f5a5f584a3c2c1b0800000000070e13130f0700000000091013120d050000000000000000192d40516275899684715f4c3825110000000000000000000000000000000000000000000000000000000000000000000000000000000f243a4f6479868b7d706457515e6b78868b806d58432e180300000000000000000000162a3c4e5f7082928c7c6d5e627182908e7c6b5a4937241000000000000b1c2d3d4c5b6a7887949b8a79695848372411000000000000001223334352616f7c8892938a8482808388909b93897d7061524231200e000000000000152a3e53677b909b87725d4935200c00000000000000001f344a5f748ba08b745f4a341f00000a161f2425293e53687d94a08b745f4a341f000a1c2e3e494e4a434243474e5763718293a695826c58442f1b06000000000000000014273a4c5c6a727471685b4c3b28150200000000000000000000000a12171717171717171717171717130b010000001025394d6175899ca4907c788c7c6854506275899c9a8874614e3a26110000132536444f5a66727d8b94887c6f636466686a6b6f839787715c47321e0900071a2d3e4b535456576a8095ab95806a57565452493b291703001f344a5f7488887d6a5540414a546173889c9f89735e48331e000000000d1c2936414a52595d5e5e5d59534b4136291a0b0000000000000000101f2d3a444a483e31221423313d474a453b2c1e0e000000000d19232828231a0f0202101c24282721170b0000000000000011223346596c80948f7b6754412d190500000000000000000000000000000000000000000000000000000000000000000000000000000e23384c5f6f808f8f827568626f7c8a9687766755412c1702000000000000000000000d1f304152637586978c7c6d7080909382705f4e3c2b1a07000000000015283a4b5b6a7989979e8d7c6c5b4b3a2a1a08000000000000000515253443515e6a757d868c90939393908c8780766b5f5143342414020000000000071b2f44586d829695826c58432f1b0600000000000000001f344a5f748ba08b745f4a341f0009192733393a3a3e53687d94a08b745f4a341f001125394c5c635d5857585c626a758290a09c8a7764513d29150100000000000000061b2f43576a7a878b85796a5845311d0900000000000000000000101d262c2c2c2c2c2c2c2c2c2c2c2c271e11020000152a3f53687c91a59d8974708584705c48596d8297a4917c6955402c170300081827323d4854606d7a88958e82736659535456677b8f8a75604b36210c00000f202e383d3f41546a8095ab95806a54403f3d372b1d0c00001e33485c6e72727163504c545d66728091a39d88725d48331e00000000000b18242e373e4448494948443f382e24180b000000000000000000010f1c283134332c21130513202b323431291d0e000000000d1c2b363d3d372c201211202e383d3c34291c0e0000000000000516293d5064788d9884705c4834200c0000000000000000000000000000000000000000000000000000000000000000000000000000091c3041516170809093867973808e978877685949382512000000000000000000000001122335465768798b9b8c7c808f988775645241301f0d0000000000001c31445769798998a190806f5e4e3d2d1c0c00000000000000000007162533404c58616a71777b7c7d7c7a77726b63594e41342516060000000000000c21354a5e72889c8f7b66523e29150000000000000000001f344a5f748ba08b745f4a341f00142637454e4f4f4f53687d94a08b745f4a341f00152a3f546878726d6c6e70767d87929f9e8f7d6d5a4835220e0000000000000000091f34495d7287999f978875604c37220d0000000000000000000d1e2e3a4142424242424242424242413b2f200f0000192e43586d8297ab98836e697d8b77634f53687c92a798846f5a46311c0700000915202b37434f5c69768593928577695b4c4c5f73868277624c37220d000002101c24282a3f546a8095ab95806a543f2a28231a0d000000192d3f505b5c5c5c55586068707984909ea896836e5a45301b00000000000007111b232a2f333434332f2b241b12070000000000000000000000000b151c1f1e190f0300020e181e1f1d160c000000000b1c2b3a4852524a3e3022202f3e4b5350463a2c1d0d0000000000000d2135495e72879c8c77634f3a2611000000000000000000000000000000000000000000000000000000000000000000000000000000122333425261718291978a8591988979695a4a3b2b1b09000000000000000000000000061728394a5c6d7d8f9b8d8f9d8c7a685746352412010000000000001f344a5f748797a4938372615140301f0f000000000000000000000007192b3c4b575f605e62666768676662605f574c3e302316070000000000000012273b5064788d9e8a75604c38230f0000000000000000001f344a5f748ba08b745f4a341f001b3043556264646464687d949f8a745f4a341f001b2f44586d8287838383868a919aa39a8e8070604f3d2b180500000000000000000a1f344a5f748a9fb3a48f79644f3a250f000000000000000000172a3c4c5557575757575757575757564d3e2d1906001c32475c70869ba994806a62768a7d6a564f64798fa49e89735e49341f0a000000030e1925323e4b59667484939588796a5b4c5769706c685a48341f0b000000000910152a3f546a8095ab95806a543f2a150f07000000001022323e46474e59636c747c848d96a1a89a8a7866533f2b160000000000000000080f161a1e1f1f1e1a161008000000000000000000000000000000000000000000000000000000000000000000000015283a495866665c4e40302d3e4d5c6864584a3b2b1b0a0000000000061b2f44586d8397927d69543f2a15000000000000000000000000000000000000000000000000000000000000000000000000000000051524344353627282929b97998a7a6a5b4b3c2c1d0d00000000000000000000000000000a1b2d3e4f60718394a0a090806d5c4b3a281706000000000000001e33475b6c7a889686756454443323120200000000000000000000000f2236485a697376736a5c525359687376736a5c4b3a27130000000000000004182d41556a7d9398846f5b46321d090000000000000000001f344a5f748ba08b745f4a341f001f34495e7379797979797d949d88735e48331e001f34495d7287989898989b9e9b968f877c7061524332200e000000000000000000091e32475c7185969f9c8c77634d39240f0000000000000000001d32465a696c6c6c6c6c6c6c6c6c6c6a5c4935200b001e33485e73899ea7927c675b6f8386725d4d63778da3a18c76614c37220c00000000000814202d3b4957657484949789796a5b4b575b58534b3d2b1805000000000000152a3f546a8095ab95806a543f2a150000000000000413213242515f6b7680889098a0a9a0968a7b6c5b49362310000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001c3145586776796c5e4e3e364a5c6b7a75685949392817050000000006162b40556a809497836c58432d18000000000000000000000000000000000000000000000000000000000000000000000000000000000616253544546473838b8b8b7b6b5c4c3d2d1e0e000000000000000000000000000000000f203143536576888b8b847261503e2d1c0b0000000000000000182b3e4e5c6a7786786857473626150500000000000000000000000014293e526577878c887a6956516476868c887a6956422e1a05000000000000091e32475b708599927d6955402c18030000000000000000001f344a5f748ba08b745f4a341f001f344a5f748b90909090909a96846f5a46311c001f34495e717d83888a8b8b8986827b736a5f52433425140300000000000000000004192e41546777848a887d6e5c4834200b0000000000000000001f344a5f748383838383838383838377624c37220d001f344a5f748b9fa5907b6654687c8d79655162778da3a38d77624c37220d00000000000003101d2b3947566575869798897969594846433f382d1f0e00000000000000152a3f546a8095ab95806a543f2a15000000000000071a2d3f50616f7d89939ca3a69e968d83786c5d4e3d2c1a070000000000060a0d0e0e0c080400000000000000000000000000000000070f1414110b01000000000000000000000000000000000000001f344a5f74868b7c6c5c4b3a4f64798a8677675746342210000000021324334253687d949a866f5a442f1a000000000000000000000000000000000000000000000000000000000000000000000000000000000008172736465565737474746c5d4d3e2e1f0f00000000000000000000000000000000000314253647586a747474746655433221100000000000000000000f20303e4c5a68746b5a4a3929180800000000000000000000000000182d42576c8295a19886715d576b8094a19886715d48331e090000000000000f24384c61758a9f8d78634f3b2612000000000000000000001f344a5f748ba08b745f4a341f001f344a5f737d8386888a8b8985776754402c18001b2f425361696e7274747473706c6760574d413425160700000000000000000000001225384959677074736c60503e2c19050000000000000000001f344a5f748b98989898989898988d77624c37220d001f344a5f748b9fa59079644f607589806c5862778da3a38d77624c37220d00000000000000000d1b2938485868788a9b978876665443312a251c0f0100000000000000152a3f546a8095ab95806a543f2a150000000000000f2236495c6e808e9ba6a49b928a837970665b4e3f301f0e000000000c141b1f222323211d18110700000000000000000000000004101a23292a261e12040000000000000000000000000000000000001f34495d7080908b7a6957454e62738394867563513f2d1a0700000c1f314251617082959b866f5a442f1a0000000000000000000000000000000000000000000000000000000000000000000000000000000000000918283747565f5f5f5f5b4e3f2f2010010000000000000000000000000000000000000718293b4c5a5f5f5f5f5848372614030000000000000000000212202e3c4a585f5a4d3c2c1b0b0000000000000000000000000000192e43586e8398ada08b745f576c8398ad9f8b745f4a341f0a00000000000015293e52677b909b87725d4935200c000000000000000000001f344a5f748ba08b745f4a341f001c30445664696d70737474737067594937241100122535444e54595d5f5f5f5e5c58534c443a30231607000000000000000000000000081a2c3b49545c5f5f594f4232210f000000000000000000001f344a5f748b8b8b8b8b8b8b8b8b8b77624c37220d001e33485e73889da7917b6650596d8288736063788fa3a18c77624c37220d0000000000000000000b1a2a3a4a5b6c7d90a2958472604e3b281509000000000000000000152a3f546a8095ab95806a543f2a1500000000000015293e5265798c9da99b91887d766f665d544942392c1c0a000001111e282f3437383836322c241a0e000000000000000000000915222d373e3f3a3022140600000000000000000000000000000000001a2e4151617184968774614e455565768992826f5c4936230f000014283b4e6070808f9f99856f5a442f1a000000000000000000000000000000000000000000000000000000000000000000000000000000000000000a192938444a4a4a4a473e3021110200000000000000000000000000000000000000000c1d2e3c464a4a4a4a453a2b1908000000000000000000000002101e2c3a454a473d2f1e0e000000000000000000000000000000172c41556a80929f9987725d55697d919f9987725d48331e090000000000001b2f44586d829695826c58432f1b06000000000000000000001f344a5f748ba08b745f4a341f00142738475054585b5e5f5f5e5b544a3b2b1a0800071726313a4045484a4a4a4947433e3831281e120600000000000000000000000000000e1d2b3741474a4a453d31231404000000000000000000001f34495d707474747474747474747471604b36210c001c31465b70869aa8937c685352667a8f7a67667b90a59f8a745f4a35200b000000000000010200000c1c2c3d4e60728598a1907d6a5744311d09000000000000000000152a3f546a8095ab95806a543f2a15000000000000192e43586c8295a99a8b7d746b635b545a5a5a564a39271300000e1f2f3b43494c4e4d4b4740372b1e0f00000000000000000c1926333f4a53544d403224150400000000000000000000000000000000112333435466798c927d6b584447596b7d928c7965523e2b1602001a2e43576b7d8f9ea995826c57422d1800000000000000000000000000000000000000000000000000000000000000000000000000000000000000000b1a273034343434332b20120300000000000000000000000000000000000000000000101e2a323434343431281c0d00000000000000000000000000000e1c283134322b1f110100000000000000000000000000000013273b4f6274838a887b6a574e6173838a887b6a57432f1b060000000000001f34495e72878b8b7b66523e291500000000000000000000001f344a5f748b8b8b745f4a341f00091a29343b404346484a4a494641382c1d0d00000008141e262b303334343434312e2a241d140b00000000000000000000000000000000000d1a242d323434302a1f130500000000000000000000001a2e41515d5f5f5f5f5f5f5f5f5f5f5e5343301c0800192d42576c8295a995806b564b5f7388836e6a8094a99a86705c47321d080000000008111617140e040e1f314355687b8fa39b8874604d392410000000000000050e14162a3f546a8095ab95806a543f2a150000000000001b30465b70869ba08d7b6c61574f52646f6f6f6856422d190400182b3d4d585d616362605b53493c2d1c0b0000000000000e1c2a3744515c66695e504233210e0000000000000000000000000000000005152537495d70859a8874604c3c4e62768b95826e5a46311d08001c32475c70879baca08d7966523d291400000000000000000000000000000000000000000000000000000000000000000000000000000000000000000009141c1f1f1f1f1e180f020000000000000000000000000000000000000000000000000d171d1f1f1f1f1c150b000000000000000000000000000000000b151c1f1e180e01000000000000000000000000000000000c20334556657074736a5d4c4455647074736b5d4c3a2714000000000000001f34495d7074747471604c38230f00000000000000000000001f34495d70747474705d49341f00000b1721262b2e3133343434322d251b0e0000000000020a11171b1e1f1f1f1f1c1915100901000000000000000000000000000000000000000811191e1f1f1c160d0200000000000000000000000011233341494a4a4a4a4a4a4a4a4a4a4942352514010014293d5266798ea19a85705c48586c808a75708599a895806b57422e19040000000c1a242b2c292115071426394c6073889da4907c68533f2a150100000000091722292b2a3f546a8095ab95806a543f2a150000000000001b30465b70879c9b86715e4e4443586c8286866f5a442f1a05001e32475a6b72767877756f665a4b3a28150200000001101e2c3a4855626e797c6e60503d29140000000000000000000000000000000000071a2d41566b80958f7b66523d485d72879c8975604b37220d001c31465b7086999e9282705d4a37230f000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000316283847545c5f5e584d3f3746535b5f5e584d3f2f1d0b000000000000001a2e41515d5f5f5f5e5343311d0900000000000000000000001a2e41515d5f5f5f5d51412e1a000000050d1216191c1e1f1f1f1d1812080000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000515232e3434343434343434343434342f25170800000e23364b5e7285979f8c7764525065788d7c798ca0a08d7965513d2814000000091a2a3740423d3325180c1c3045596e8398ab97836d58432e1904000000061727353e403d3f546a8095ab95806a543f2a150000000000001b30465b70859a99846f5a4b484b5d72879b866f5a442f1a05001f344a5f74878c8f8d8a8378695744311e09000001101f2e3c4a586673808c8d7d6c57422c1700000000000000000000000000000000000014293e53687d9495806b5641445a6f869a8f7965503b261100192e42566a7b888982736453412e1b07000000000000000000000000000000000000000000000000000000000000000000000b14181919191919191919191919191919191919191919191919191919191919191919191919191710070000000000030b0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0e08000000000000000000000000000a1a293641474a49443b2f283640474a49443b2f2111000000000000000011233341494a4a4a494235261401000000000000000000000011233341494a4a4a494133231100000000000000000000000000000000000000000000000b14181919191919191919191919191919191919191919191917120900000000000b141819191919191919191919191919191918130b0000000005111a1f1f1f1f1f1f1f1f1f1f1f1f1b1207000000071b2e425567798c9c95827061555d7186848496a79583705d4a36220e000004152738485457504336291f1b2c40566b8297ac9b86705b46301b060000000f2335455156524e546a8095ab95806a543f2a15000000000000182d41566a7d919d8976675f5e5f66778d9b866f5a442f1a05001f344a5f748b97989b9f968774614c38240f00000f1f2e3d4c5a687684919888776654402b1600000000000000000000000000000000000516293e53687d9499846e5944445a6f8499937c68533e28130013273a4c5d6b73746e63554635241100000000000000000000000000000000000000000000000000000000000000000001111e282d2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2b24180a0000000a161f242525252525252525252525252525252525252525252525252525252525252525231c12040000000000000000000000000b19242d32343430281e18242c32343430281e110300000000000000000515232e34343434342f2517080000000000000000000000000515232e34343434342e23150500000000000000000000000000000000000000000001111e282d2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2c261b0e000001111e282d2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2d271d10000000000000000000000000000000000000000000000000001326384a5c6e7d8f9d8f807269666a7d8f91a19989776653412d1a0600000f21334455666c6153473b33303242576c8297ac9c87705b46301b06000000162a3e52636b67635e6a8095ab95806a543f2a1500000000000013273b4e6173849394857a7473747983939b866f5a442f1a05001f344a5f748482838893a4907b66513c2712000b1c2d3d4c5b6a7887949b8b7a6a5949372411000000000000000000000000000000000112233446586c82969b866f5a444b5e72879c947d69543f2a14000b1d2f3f4d585e5f5a5145372817060000000000000000000000000000000000000000000000000000000000000000000e1f2f3b4243434343434343434343434343434343434343434343434343434343434343434343434340362818060009192733393a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a372f2213020000000000000000000000000711191e1f1f1b150c0611181d1f1f1b150c010000000000000000000005111a1f1f1f1f1f1b1207000000000000000000000000000005111a1f1f1f1f1f1a1105000000000000000000000000000000000000000000000e1f2f3b424343434343434343434343434343434343434343434341392c1c0a000e1f2f3b42434343434343434343434343434343423a2e1e0d000000000000000000000000000000000000000000000000091b2d3e5060707d8c9890857d7b7d8492a1968a7a6b5a48372411000000172b3e506173807164594e4845474f5f72869aae99846f5a45301b060000001a2e43586d807c77726d8095ab95806a543f2a150000000000000b1f3244556574828c958e89898a8e96958f866f5a442f1a05001e33485c6e6f6b6d74879b937d68533e2813001528394a5b6a7988979e8e7d6d5c4c3b2b1a08000000000000000000000000000000000b1e3041526375889b9b866f5a4657687a8ea1947d68533f2914000011212f3b44494a463e3428190a00000000000000000000000000000000000000000000000000000000000000000000182b3d4d57585858585858585858585858585858585858585858585858585858585858585858585858534635230f00142637454e4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4b40311f0d000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000182b3d4d5758585858585858585858585858585858585858585858554a3a271400182b3d4d57585858585858585858585858585858564c3c2a16000000000000000000000000000000000000000000000000001021324251606e7a858d9493919398949184786b5c4d3c2b19070000001c31465b6e808f82766b625d5a5c616d7c8fa2a693806a56412c18030000001d32475c7187918d88828095ab95806a543f2a15000000000000021527384756646f798086898b898885807a746a57432e190400192d3f505b5b57586d8398917c67523c2712001c31445768788998a19180705f4f3e2e1d0d000000000000000000000000000000000014283b4d5f708292a597836d585364758698a6917c67523d2813000003111e28303434312b22170a00000000000000000000000000000000000000000000000000000000000000000000001e32475a6a6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e64523e2914001b3043556264646464646464646464646464646464646464646464646464646464646464645e4f3c28140000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001e32475a6a6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6857432e1a001e32475a6a6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6a5946311c000000000000000000000000000000000000000000000000000314243342505c67717980848686837d927d695a4d3e2f1e0d000000001c31465b6e7d8d94887d76726f70757d8b9bab9b897663503b2713000000001f344a5f7483888f9896919cab95806a543f2a1500000000000000091a293846525c656b7073747372706b6660594c3b281400001022323e464642576c83978c77634e3a2510001f344a5f748697a4948372625141312010000000000000000000000000000000000000192e43576a7c8e9fa6927d69545d708293a4a08c77634e39240f000000010c151b1f1f1c170f050000000000000000000000000000000000000000000000000000000000000000000000001f344a5f748484848484848484848484848484848484848484848484848484848484848484848484826b56402b16001f34495e7379797979797979797979797979797979797979797979797979797979797979796b57412c170000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001f344a5f7484848484848484848484848484848484848484848484705b46301b001f344a5f74848484848484848484848484848484735e48331e0000000000000000000000000000000000000000000000000000061524323f4b555e656b6e6f6f6e778c84705b473320110100000000182c3f50606f7c8994928b8786878a919ba59a8d7d6c5a4734200c000000001d324659686e747b848d98a2ab95806a543f2a1500000000000000000b1a2835404951575b5e5f5e5d5b57524b453c2e1d0b00000413212b3136495d70869583705c4834200b001e33475b6b7988968675655544342313020000000000000000000000000000000000001c31475c70869aac9d8a76634e62778da0a99784705c4834200b000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001f344a5f748b99999999999999999999999999999999999999999999999999999999999999999997826b56402b16001f344a5f748b909090909090909090909090909090909090909090909090909090909090836c57422c170000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001f344a5f748b999999999999999999999999999999999999999987705b46301b001f344a5f748b9999999999999999999999999989735e48331e0000000000000000000000000000000000000000000000000000000614212d38424a5156595a5a5c70848b76624e3a2511000000000010223242515e6b76828b93999b9c9e9d9992897c6e5f4e3d2a170400000000172a3b4a54596068707a85909d95806a543f2a150000000000000000000a17232d363d4246484a494846423d3731291e1000000000030f192d415365788c8a776653402d190500182b3e4e5c6977867868584737261605000000000000000000000000000000000000001c31475c70869a9e90806d5a4c62778c9f9a8b796754412d1905000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001f344a5f748b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b826b56402b16001f344a5f748b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b836c57422c170000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001f344a5f748b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b87705b46301b001f344a5f748b8b8b8b8b8b8b8b8b8b8b8b8b8b89735e48331e0000000000000000000000000000000000000000000000000000000004101b262e363c4144444455697c877d68533e2813000000000004142332404d59646e778085888b8b88857d766b5e5041301f0d00000000000c1d2d393f454c545d6772808986806a543f2a150000000000000000000005101a22282d3133343433312d28231c160c000000000000001c32475c7082887c6c5a4836241100000f20303e4c5967746b5b4a3a2919080000000000000000000000000000000000000000192e43576a7c898a80716150495d70828a887c6d5c4a38251100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001f34495d7074747474747474747474747474747474747474747474747474747474747474747474747468543f2a15001f34495d7074747474747474747474747474747474747474747474747474747474747474746955412c170000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001f34495d70747474747474747474747474747474747474747474746d5945301b001f34495d707474747474747474747474747474746f5c47321d00000000000000000000000000000000000000000000000000000000000009121b22282c2f2f394e6172716c614f3b26120000000000000514222f3c47515b636a7073747473706a63594d40322313020000000000000f1b252b3138414b55616e74706d62503c2813000000000000000000000000060e14191c1e1f1f1e1c18140f080200000000000000001b3045596b72736d5e4e3d2b190700000212202e3c49575f5a4d3d2c1c0b00000000000000000000000000000000000000000014283b4d5e6c74746d6253434153626f74736a5e4f3e2d1b0800000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001a2e41515d5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f594a392511001a2e41515d5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5a4c3a26120000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001a2e41515d5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5c4f3d2a16001a2e41515d5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5d513f2c190000000000000000000000000000000000000000000000000000000000000000070e13171a1e3144545e5d57514332200c0000000000000004121e2a353e4850565b5e5f5f5e5b564f463c3022140400000000000000000911161d252e3843505c5f5c58514433210d0000000000000000000000000000000000000000000000000000000000000000000000162a3c4d585d5f594f40301f0d0000000002101e2c39444a473d2f1f0e000000000000000000000000000000000000000000000b1e30404e595f5f5a5144353544525b5f5e584d4031210f00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000011233341494a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a463b2d1b090011233341494a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a463c2e1d0a00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000011233341494a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a483e31200e0011233341494a4a4a4a4a4a4a4a4a4a4a4a4a4a4a484032221000000000000000000000000000000000000000000000000000000000000000000000000002152636434948433e332515030000000000000000010c18222b343b4146494a4a4946413b33291e120400000000000000000000000109111b26323f484a47433e3426160400000000000000000000000000000000000000000000000000000000000000000000000d1f2f3c44484a453d312212010000000000000e1c283134322b1f110100000000000000000000000000000000000000000000011222303d454a4a463e332626343f474a49443b2f2213030000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000515232e34343434343434343434343434343434343434343434343434343434343434343434343434322a1d0f00000515232e343434343434343434343434343434343434343434343434343434343434343434322a1e10000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000515232e3434343434343434343434343434343434343434343434332c211302000515232e34343434343434343434343434343434332d221404000000000000000000000000000000000000000000000000000000000000000000000000000918252f34332e292116070000000000000000000000050f1820272d3134343434312d2720170c010000000000000000000000000000000915222d3334322e2a22160800000000000000000000000000000000000000000000000000000000000000000000000001111e292f3334302a20130400000000000000000b151c1f1e180e0100000000000000000000000000000000000000000000000004121f2a313434322b211617222c32343430281e1204000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005111a1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1d170c0000000005111a1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1d170d00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005111a1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1e190f0300000005111a1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1e19110500000000000000000000000000000000000000000000000000000000000000000000000000000008131b1f1e1a150e040000000000000000000000000000050c13181c1f1f1f1f1c18130c040000000000000000000000000000000000000410191e1f1d19160f050000000000000000000000000000000000000000000000000000000000000000000000000000010c151a1e1f1c160e02000000000000000000000000000000000000000000000000000000000000000000000000000000000000020d161c1f1f1d170e040510181e1f1f1b150c01000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 + m_StreamData: + offset: 0 + size: 0 + path: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/ModResources/Fonts/Merriweather-Regular SDF.asset.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/ModResources/Fonts/Merriweather-Regular SDF.asset.meta" new file mode 100644 index 00000000..89390dee --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/ModResources/Fonts/Merriweather-Regular SDF.asset.meta" @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: ea4179ba609564f33b822e1be581b321 +NativeFormatImporter: + externalObjects: {} + mainObjectFileID: 11400000 + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/ModResources/Fonts/Orbitron-Regular SDF.asset" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/ModResources/Fonts/Orbitron-Regular SDF.asset" new file mode 100644 index 00000000..ceb2a99a --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/ModResources/Fonts/Orbitron-Regular SDF.asset" @@ -0,0 +1,4878 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!114 &11400000 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 71c1514a6bd24e1e882cebbe1904ce04, type: 3} + m_Name: Orbitron-Regular SDF + m_EditorClassIdentifier: + hashCode: -1440140617 + material: {fileID: 21623678745554260} + materialHashCode: 1269651036 + m_Version: 1.1.0 + m_SourceFontFileGUID: b15471d1f905d4be4a0b18923063b3b8 + m_SourceFontFile_EditorRef: {fileID: 0} + m_SourceFontFile: {fileID: 0} + m_AtlasPopulationMode: 0 + m_FaceInfo: + m_FamilyName: Orbitron + m_StyleName: + m_PointSize: 42 + m_Scale: 1 + m_LineHeight: 42 + m_AscentLine: 31.5 + m_CapLine: 30.249998 + m_MeanLine: 0 + m_Baseline: 0 + m_DescentLine: -10.5 + m_SuperscriptOffset: 31.5 + m_SuperscriptSize: 0.5 + m_SubscriptOffset: -4.2000003 + m_SubscriptSize: 0.5 + m_UnderlineOffset: -4.2000003 + m_UnderlineThickness: 2.1000001 + m_StrikethroughOffset: 7.6363635 + m_StrikethroughThickness: 2.1000001 + m_TabWidth: 114.375 + m_GlyphTable: + - m_Index: 1 + m_Metrics: + m_Width: 11.4375 + m_Height: 42 + m_HorizontalBearingX: 0 + m_HorizontalBearingY: 31.5 + m_HorizontalAdvance: 11.4375 + m_GlyphRect: + m_X: 6 + m_Y: -47 + m_Width: 11 + m_Height: 42 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 2 + m_Metrics: + m_Width: 3.4374998 + m_Height: 30.249998 + m_HorizontalBearingX: 2.3749998 + m_HorizontalBearingY: 30.249998 + m_HorizontalAdvance: 9.25 + m_GlyphRect: + m_X: 64 + m_Y: 49 + m_Width: 3 + m_Height: 30 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 3 + m_Metrics: + m_Width: 9.937499 + m_Height: 5.8749995 + m_HorizontalBearingX: 2.4374998 + m_HorizontalBearingY: 30.249998 + m_HorizontalAdvance: 15.625 + m_GlyphRect: + m_X: 353 + m_Y: 397 + m_Width: 10 + m_Height: 6 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 4 + m_Metrics: + m_Width: 31.062498 + m_Height: 30.187498 + m_HorizontalBearingX: 1.3124999 + m_HorizontalBearingY: 30.249998 + m_HorizontalAdvance: 33.5 + m_GlyphRect: + m_X: 423 + m_Y: 7 + m_Width: 31 + m_Height: 30 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 5 + m_Metrics: + m_Width: 30.562498 + m_Height: 39.874996 + m_HorizontalBearingX: 1.3749999 + m_HorizontalBearingY: 35.124996 + m_HorizontalAdvance: 33.125 + m_GlyphRect: + m_X: 79 + m_Y: 42 + m_Width: 31 + m_Height: 40 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 6 + m_Metrics: + m_Width: 37.124996 + m_Height: 30.374998 + m_HorizontalBearingX: 1.9999999 + m_HorizontalBearingY: 30.312498 + m_HorizontalAdvance: 40.5625 + m_GlyphRect: + m_X: 234 + m_Y: 7 + m_Width: 37 + m_Height: 30 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 7 + m_Metrics: + m_Width: 36.124996 + m_Height: 30.187498 + m_HorizontalBearingX: 2.1874998 + m_HorizontalBearingY: 30.249998 + m_HorizontalAdvance: 39.375 + m_GlyphRect: + m_X: 283 + m_Y: 7 + m_Width: 36 + m_Height: 30 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 8 + m_Metrics: + m_Width: 3.4374998 + m_Height: 5.8749995 + m_HorizontalBearingX: 2.4374998 + m_HorizontalBearingY: 30.249998 + m_HorizontalAdvance: 9.4375 + m_GlyphRect: + m_X: 446 + m_Y: 414 + m_Width: 3 + m_Height: 6 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 9 + m_Metrics: + m_Width: 6.3124995 + m_Height: 30.249998 + m_HorizontalBearingX: 2.1249998 + m_HorizontalBearingY: 30.249998 + m_HorizontalAdvance: 11.625 + m_GlyphRect: + m_X: 192 + m_Y: 468 + m_Width: 6 + m_Height: 30 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 10 + m_Metrics: + m_Width: 6.2499995 + m_Height: 30.249998 + m_HorizontalBearingX: 2.3124998 + m_HorizontalBearingY: 30.249998 + m_HorizontalAdvance: 11.6875 + m_GlyphRect: + m_X: 204 + m_Y: 426 + m_Width: 6 + m_Height: 30 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 11 + m_Metrics: + m_Width: 17.812498 + m_Height: 16.937498 + m_HorizontalBearingX: 0.99999994 + m_HorizontalBearingY: 30.249998 + m_HorizontalAdvance: 20.625 + m_GlyphRect: + m_X: 376 + m_Y: 421 + m_Width: 18 + m_Height: 17 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 12 + m_Metrics: + m_Width: 16.437498 + m_Height: 16.374998 + m_HorizontalBearingX: 0.68749994 + m_HorizontalBearingY: 20.624998 + m_HorizontalAdvance: 18.1875 + m_GlyphRect: + m_X: 376 + m_Y: 450 + m_Width: 16 + m_Height: 16 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 13 + m_Metrics: + m_Width: 3.4374998 + m_Height: 8.937499 + m_HorizontalBearingX: 2.2499998 + m_HorizontalBearingY: 3.4999998 + m_HorizontalAdvance: 8.125 + m_GlyphRect: + m_X: 502 + m_Y: 397 + m_Width: 3 + m_Height: 9 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 14 + m_Metrics: + m_Width: 16.374998 + m_Height: 3.4374998 + m_HorizontalBearingX: 2.4374998 + m_HorizontalBearingY: 14.187499 + m_HorizontalAdvance: 21.6875 + m_GlyphRect: + m_X: 405 + m_Y: 428 + m_Width: 16 + m_Height: 3 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 15 + m_Metrics: + m_Width: 3.4374998 + m_Height: 3.4374998 + m_HorizontalBearingX: 2.2499998 + m_HorizontalBearingY: 3.4999998 + m_HorizontalAdvance: 9 + m_GlyphRect: + m_X: 414 + m_Y: 479 + m_Width: 3 + m_Height: 3 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 16 + m_Metrics: + m_Width: 21.249998 + m_Height: 30.249998 + m_HorizontalBearingX: 0.24999999 + m_HorizontalBearingY: 30.249998 + m_HorizontalAdvance: 21.875 + m_GlyphRect: + m_X: 84 + m_Y: 145 + m_Width: 21 + m_Height: 30 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 17 + m_Metrics: + m_Width: 30.562498 + m_Height: 30.249998 + m_HorizontalBearingX: 2.3749998 + m_HorizontalBearingY: 30.249998 + m_HorizontalAdvance: 35 + m_GlyphRect: + m_X: 218 + m_Y: 102 + m_Width: 31 + m_Height: 30 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 18 + m_Metrics: + m_Width: 12.624999 + m_Height: 30.249998 + m_HorizontalBearingX: 0 + m_HorizontalBearingY: 30.249998 + m_HorizontalAdvance: 16.4375 + m_GlyphRect: + m_X: 210 + m_Y: 468 + m_Width: 13 + m_Height: 30 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 19 + m_Metrics: + m_Width: 30.562498 + m_Height: 30.312498 + m_HorizontalBearingX: 2.3749998 + m_HorizontalBearingY: 30.312498 + m_HorizontalAdvance: 34.875 + m_GlyphRect: + m_X: 260 + m_Y: 102 + m_Width: 31 + m_Height: 30 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 20 + m_Metrics: + m_Width: 30.562498 + m_Height: 30.312498 + m_HorizontalBearingX: 2.1874998 + m_HorizontalBearingY: 30.312498 + m_HorizontalAdvance: 34.6875 + m_GlyphRect: + m_X: 302 + m_Y: 102 + m_Width: 31 + m_Height: 30 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 21 + m_Metrics: + m_Width: 29.249998 + m_Height: 30.312498 + m_HorizontalBearingX: 0.24999999 + m_HorizontalBearingY: 30.312498 + m_HorizontalAdvance: 30.6875 + m_GlyphRect: + m_X: 168 + m_Y: 384 + m_Width: 29 + m_Height: 30 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 22 + m_Metrics: + m_Width: 30.562498 + m_Height: 30.312498 + m_HorizontalBearingX: 2.3749998 + m_HorizontalBearingY: 30.312498 + m_HorizontalAdvance: 34.875 + m_GlyphRect: + m_X: 126 + m_Y: 336 + m_Width: 31 + m_Height: 30 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 23 + m_Metrics: + m_Width: 30.562498 + m_Height: 30.312498 + m_HorizontalBearingX: 2.3749998 + m_HorizontalBearingY: 30.312498 + m_HorizontalAdvance: 34.4375 + m_GlyphRect: + m_X: 126 + m_Y: 378 + m_Width: 31 + m_Height: 30 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 24 + m_Metrics: + m_Width: 25.249998 + m_Height: 30.312498 + m_HorizontalBearingX: 0.12499999 + m_HorizontalBearingY: 30.312498 + m_HorizontalAdvance: 27.75 + m_GlyphRect: + m_X: 234 + m_Y: 468 + m_Width: 25 + m_Height: 30 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 25 + m_Metrics: + m_Width: 30.562498 + m_Height: 30.312498 + m_HorizontalBearingX: 2.3749998 + m_HorizontalBearingY: 30.312498 + m_HorizontalAdvance: 35 + m_GlyphRect: + m_X: 120 + m_Y: 420 + m_Width: 31 + m_Height: 30 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 26 + m_Metrics: + m_Width: 30.562498 + m_Height: 30.312498 + m_HorizontalBearingX: 2.1249998 + m_HorizontalBearingY: 30.312498 + m_HorizontalAdvance: 34.75 + m_GlyphRect: + m_X: 162 + m_Y: 426 + m_Width: 31 + m_Height: 30 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 27 + m_Metrics: + m_Width: 3.4374998 + m_Height: 24.687498 + m_HorizontalBearingX: 2.2499998 + m_HorizontalBearingY: 24.749998 + m_HorizontalAdvance: 9 + m_GlyphRect: + m_X: 502 + m_Y: 223 + m_Width: 3 + m_Height: 25 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 28 + m_Metrics: + m_Width: 3.4374998 + m_Height: 30.187498 + m_HorizontalBearingX: 2.1249998 + m_HorizontalBearingY: 24.749998 + m_HorizontalAdvance: 8.125 + m_GlyphRect: + m_X: 467 + m_Y: 100 + m_Width: 3 + m_Height: 30 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 29 + m_Metrics: + m_Width: 16.937498 + m_Height: 23.499998 + m_HorizontalBearingX: 0.18749999 + m_HorizontalBearingY: 24.249998 + m_HorizontalAdvance: 19.875 + m_GlyphRect: + m_X: 338 + m_Y: 468 + m_Width: 17 + m_Height: 23 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 30 + m_Metrics: + m_Width: 21.687498 + m_Height: 11.874999 + m_HorizontalBearingX: 2.4374998 + m_HorizontalBearingY: 18.187498 + m_HorizontalAdvance: 26.8125 + m_GlyphRect: + m_X: 281 + m_Y: 397 + m_Width: 22 + m_Height: 12 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 31 + m_Metrics: + m_Width: 16.874998 + m_Height: 23.562498 + m_HorizontalBearingX: 2.4374998 + m_HorizontalBearingY: 24.124998 + m_HorizontalAdvance: 19.9375 + m_GlyphRect: + m_X: 348 + m_Y: 431 + m_Width: 17 + m_Height: 24 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 32 + m_Metrics: + m_Width: 26.812498 + m_Height: 30.249998 + m_HorizontalBearingX: 1.2499999 + m_HorizontalBearingY: 30.249998 + m_HorizontalAdvance: 28.5 + m_GlyphRect: + m_X: 322 + m_Y: 144 + m_Width: 27 + m_Height: 30 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 33 + m_Metrics: + m_Width: 30.562498 + m_Height: 30.249998 + m_HorizontalBearingX: 2.3749998 + m_HorizontalBearingY: 30.249998 + m_HorizontalAdvance: 34.875 + m_GlyphRect: + m_X: 150 + m_Y: 468 + m_Width: 31 + m_Height: 30 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 34 + m_Metrics: + m_Width: 30.249998 + m_Height: 30.249998 + m_HorizontalBearingX: 2.3749998 + m_HorizontalBearingY: 30.249998 + m_HorizontalAdvance: 35.125 + m_GlyphRect: + m_X: 238 + m_Y: 144 + m_Width: 30 + m_Height: 30 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 35 + m_Metrics: + m_Width: 30.187498 + m_Height: 30.249998 + m_HorizontalBearingX: 2.4374998 + m_HorizontalBearingY: 30.249998 + m_HorizontalAdvance: 34.9375 + m_GlyphRect: + m_X: 280 + m_Y: 144 + m_Width: 30 + m_Height: 30 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 36 + m_Metrics: + m_Width: 30.124998 + m_Height: 30.249998 + m_HorizontalBearingX: 2.3124998 + m_HorizontalBearingY: 30.249998 + m_HorizontalAdvance: 34.5 + m_GlyphRect: + m_X: 233 + m_Y: 186 + m_Width: 30 + m_Height: 30 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 37 + m_Metrics: + m_Width: 30.249998 + m_Height: 30.249998 + m_HorizontalBearingX: 2.3749998 + m_HorizontalBearingY: 30.249998 + m_HorizontalAdvance: 35 + m_GlyphRect: + m_X: 275 + m_Y: 186 + m_Width: 30 + m_Height: 30 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 38 + m_Metrics: + m_Width: 27.562498 + m_Height: 30.249998 + m_HorizontalBearingX: 2.3749998 + m_HorizontalBearingY: 30.249998 + m_HorizontalAdvance: 32.1875 + m_GlyphRect: + m_X: 344 + m_Y: 102 + m_Width: 28 + m_Height: 30 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 39 + m_Metrics: + m_Width: 27.562498 + m_Height: 30.249998 + m_HorizontalBearingX: 2.3749998 + m_HorizontalBearingY: 30.249998 + m_HorizontalAdvance: 30.375 + m_GlyphRect: + m_X: 360 + m_Y: 144 + m_Width: 28 + m_Height: 30 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 40 + m_Metrics: + m_Width: 30.187498 + m_Height: 30.249998 + m_HorizontalBearingX: 2.3124998 + m_HorizontalBearingY: 30.249998 + m_HorizontalAdvance: 34.875 + m_GlyphRect: + m_X: 317 + m_Y: 186 + m_Width: 30 + m_Height: 30 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 41 + m_Metrics: + m_Width: 30.999998 + m_Height: 30.249998 + m_HorizontalBearingX: 2.3749998 + m_HorizontalBearingY: 30.249998 + m_HorizontalAdvance: 35.75 + m_GlyphRect: + m_X: 383 + m_Y: 100 + m_Width: 31 + m_Height: 30 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 42 + m_Metrics: + m_Width: 3.4374998 + m_Height: 30.249998 + m_HorizontalBearingX: 2.3749998 + m_HorizontalBearingY: 30.249998 + m_HorizontalAdvance: 9.25 + m_GlyphRect: + m_X: 502 + m_Y: 140 + m_Width: 3 + m_Height: 30 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 43 + m_Metrics: + m_Width: 30.249998 + m_Height: 30.249998 + m_HorizontalBearingX: 0.12499999 + m_HorizontalBearingY: 30.249998 + m_HorizontalAdvance: 32.75 + m_GlyphRect: + m_X: 425 + m_Y: 100 + m_Width: 30 + m_Height: 30 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 44 + m_Metrics: + m_Width: 28.874998 + m_Height: 30.249998 + m_HorizontalBearingX: 2.3749998 + m_HorizontalBearingY: 30.249998 + m_HorizontalAdvance: 33.5 + m_GlyphRect: + m_X: 359 + m_Y: 186 + m_Width: 29 + m_Height: 30 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 45 + m_Metrics: + m_Width: 30.249998 + m_Height: 30.312498 + m_HorizontalBearingX: 2.3749998 + m_HorizontalBearingY: 30.312498 + m_HorizontalAdvance: 32.6875 + m_GlyphRect: + m_X: 399 + m_Y: 142 + m_Width: 30 + m_Height: 30 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 46 + m_Metrics: + m_Width: 34.437496 + m_Height: 30.249998 + m_HorizontalBearingX: 2.3124998 + m_HorizontalBearingY: 30.249998 + m_HorizontalAdvance: 39 + m_GlyphRect: + m_X: 331 + m_Y: 7 + m_Width: 34 + m_Height: 30 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 47 + m_Metrics: + m_Width: 30.187498 + m_Height: 30.249998 + m_HorizontalBearingX: 2.3124998 + m_HorizontalBearingY: 30.249998 + m_HorizontalAdvance: 34.9375 + m_GlyphRect: + m_X: 399 + m_Y: 184 + m_Width: 30 + m_Height: 30 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 48 + m_Metrics: + m_Width: 30.249998 + m_Height: 30.249998 + m_HorizontalBearingX: 2.2499998 + m_HorizontalBearingY: 30.249998 + m_HorizontalAdvance: 34.75 + m_GlyphRect: + m_X: 441 + m_Y: 189 + m_Width: 30 + m_Height: 30 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 49 + m_Metrics: + m_Width: 30.187498 + m_Height: 30.187498 + m_HorizontalBearingX: 2.3124998 + m_HorizontalBearingY: 30.249998 + m_HorizontalAdvance: 33.25 + m_GlyphRect: + m_X: 247 + m_Y: 228 + m_Width: 30 + m_Height: 30 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 50 + m_Metrics: + m_Width: 34.187496 + m_Height: 30.249998 + m_HorizontalBearingX: 2.2499998 + m_HorizontalBearingY: 30.249998 + m_HorizontalAdvance: 37.125 + m_GlyphRect: + m_X: 377 + m_Y: 7 + m_Width: 34 + m_Height: 30 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 51 + m_Metrics: + m_Width: 30.249998 + m_Height: 30.187498 + m_HorizontalBearingX: 2.2499998 + m_HorizontalBearingY: 30.249998 + m_HorizontalAdvance: 34.625 + m_GlyphRect: + m_X: 289 + m_Y: 228 + m_Width: 30 + m_Height: 30 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 52 + m_Metrics: + m_Width: 30.249998 + m_Height: 30.249998 + m_HorizontalBearingX: 2.1249998 + m_HorizontalBearingY: 30.249998 + m_HorizontalAdvance: 34.5 + m_GlyphRect: + m_X: 331 + m_Y: 228 + m_Width: 30 + m_Height: 30 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 53 + m_Metrics: + m_Width: 30.249998 + m_Height: 30.249998 + m_HorizontalBearingX: 0.81249994 + m_HorizontalBearingY: 30.249998 + m_HorizontalAdvance: 31.875 + m_GlyphRect: + m_X: 373 + m_Y: 228 + m_Width: 30 + m_Height: 30 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 54 + m_Metrics: + m_Width: 30.249998 + m_Height: 30.249998 + m_HorizontalBearingX: 2.2499998 + m_HorizontalBearingY: 30.249998 + m_HorizontalAdvance: 34.75 + m_GlyphRect: + m_X: 440 + m_Y: 231 + m_Width: 30 + m_Height: 30 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 55 + m_Metrics: + m_Width: 38.874996 + m_Height: 30.249998 + m_HorizontalBearingX: 1.4374999 + m_HorizontalBearingY: 30.249998 + m_HorizontalAdvance: 42.125 + m_GlyphRect: + m_X: 184 + m_Y: 7 + m_Width: 39 + m_Height: 30 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 56 + m_Metrics: + m_Width: 46.687496 + m_Height: 30.249998 + m_HorizontalBearingX: 1.4374999 + m_HorizontalBearingY: 30.249998 + m_HorizontalAdvance: 49.5 + m_GlyphRect: + m_X: 6 + m_Y: 49 + m_Width: 47 + m_Height: 30 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 57 + m_Metrics: + m_Width: 29.812498 + m_Height: 30.249998 + m_HorizontalBearingX: 1.8749999 + m_HorizontalBearingY: 30.249998 + m_HorizontalAdvance: 34.125 + m_GlyphRect: + m_X: 256 + m_Y: 312 + m_Width: 30 + m_Height: 30 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 58 + m_Metrics: + m_Width: 31.249998 + m_Height: 30.249998 + m_HorizontalBearingX: 0.68749994 + m_HorizontalBearingY: 30.249998 + m_HorizontalAdvance: 33.875 + m_GlyphRect: + m_X: 466 + m_Y: 7 + m_Width: 31 + m_Height: 30 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 59 + m_Metrics: + m_Width: 30.249998 + m_Height: 30.249998 + m_HorizontalBearingX: 2.1249998 + m_HorizontalBearingY: 30.249998 + m_HorizontalAdvance: 34.5 + m_GlyphRect: + m_X: 253 + m_Y: 270 + m_Width: 30 + m_Height: 30 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 60 + m_Metrics: + m_Width: 6.3124995 + m_Height: 30.312498 + m_HorizontalBearingX: 2.2499998 + m_HorizontalBearingY: 30.312498 + m_HorizontalAdvance: 11.5625 + m_GlyphRect: + m_X: 421 + m_Y: 270 + m_Width: 6 + m_Height: 30 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 61 + m_Metrics: + m_Width: 21.249998 + m_Height: 30.374998 + m_HorizontalBearingX: 0.18749999 + m_HorizontalBearingY: 30.499998 + m_HorizontalAdvance: 21.8125 + m_GlyphRect: + m_X: 482 + m_Y: 98 + m_Width: 21 + m_Height: 30 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 62 + m_Metrics: + m_Width: 6.3124995 + m_Height: 30.312498 + m_HorizontalBearingX: 2.1249998 + m_HorizontalBearingY: 30.312498 + m_HorizontalAdvance: 11.5625 + m_GlyphRect: + m_X: 294 + m_Y: 421 + m_Width: 6 + m_Height: 30 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 63 + m_Metrics: + m_Width: 30.624998 + m_Height: 3.4374998 + m_HorizontalBearingX: 2.2499998 + m_HorizontalBearingY: 0 + m_HorizontalAdvance: 34.75 + m_GlyphRect: + m_X: 374 + m_Y: 392 + m_Width: 31 + m_Height: 3 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 64 + m_Metrics: + m_Width: 4.8124995 + m_Height: 5.8124995 + m_HorizontalBearingX: 1.3124999 + m_HorizontalBearingY: 42.499996 + m_HorizontalAdvance: 8.9375 + m_GlyphRect: + m_X: 353 + m_Y: 414 + m_Width: 5 + m_Height: 6 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 65 + m_Metrics: + m_Width: 24.812498 + m_Height: 24.374998 + m_HorizontalBearingX: 2.1249998 + m_HorizontalBearingY: 24.374998 + m_HorizontalAdvance: 29.125 + m_GlyphRect: + m_X: 166 + m_Y: 147 + m_Width: 25 + m_Height: 24 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 66 + m_Metrics: + m_Width: 24.812498 + m_Height: 32.312496 + m_HorizontalBearingX: 2.2499998 + m_HorizontalBearingY: 32.374996 + m_HorizontalAdvance: 28 + m_GlyphRect: + m_X: 159 + m_Y: 292 + m_Width: 25 + m_Height: 32 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 67 + m_Metrics: + m_Width: 24.812498 + m_Height: 24.374998 + m_HorizontalBearingX: 2.1249998 + m_HorizontalBearingY: 24.374998 + m_HorizontalAdvance: 29.1875 + m_GlyphRect: + m_X: 202 + m_Y: 146 + m_Width: 25 + m_Height: 24 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 68 + m_Metrics: + m_Width: 24.874998 + m_Height: 32.312496 + m_HorizontalBearingX: 0.93749994 + m_HorizontalBearingY: 32.374996 + m_HorizontalAdvance: 28 + m_GlyphRect: + m_X: 374 + m_Y: 312 + m_Width: 25 + m_Height: 32 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 69 + m_Metrics: + m_Width: 24.812498 + m_Height: 24.374998 + m_HorizontalBearingX: 2.1249998 + m_HorizontalBearingY: 24.374998 + m_HorizontalAdvance: 29.0625 + m_GlyphRect: + m_X: 471 + m_Y: 318 + m_Width: 25 + m_Height: 24 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 70 + m_Metrics: + m_Width: 13.937499 + m_Height: 32.312496 + m_HorizontalBearingX: 2.1874998 + m_HorizontalBearingY: 32.374996 + m_HorizontalAdvance: 17.125 + m_GlyphRect: + m_X: 415 + m_Y: 226 + m_Width: 14 + m_Height: 32 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 71 + m_Metrics: + m_Width: 24.749998 + m_Height: 33.999996 + m_HorizontalBearingX: 1.6874999 + m_HorizontalBearingY: 24.374998 + m_HorizontalAdvance: 28.6875 + m_GlyphRect: + m_X: 271 + m_Y: 467 + m_Width: 25 + m_Height: 34 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 72 + m_Metrics: + m_Width: 24.812498 + m_Height: 32.312496 + m_HorizontalBearingX: 2.2499998 + m_HorizontalBearingY: 32.374996 + m_HorizontalAdvance: 28.0625 + m_GlyphRect: + m_X: 410 + m_Y: 312 + m_Width: 25 + m_Height: 32 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 73 + m_Metrics: + m_Width: 3.4374998 + m_Height: 32.312496 + m_HorizontalBearingX: 2.1249998 + m_HorizontalBearingY: 32.374996 + m_HorizontalAdvance: 8.75 + m_GlyphRect: + m_X: 502 + m_Y: 354 + m_Width: 3 + m_Height: 32 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 74 + m_Metrics: + m_Width: 15.437499 + m_Height: 42.499996 + m_HorizontalBearingX: -7.8749995 + m_HorizontalBearingY: 32.374996 + m_HorizontalAdvance: 10.0625 + m_GlyphRect: + m_X: 49 + m_Y: 91 + m_Width: 15 + m_Height: 42 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 75 + m_Metrics: + m_Width: 24.312498 + m_Height: 32.312496 + m_HorizontalBearingX: 2.2499998 + m_HorizontalBearingY: 32.374996 + m_HorizontalAdvance: 27.125 + m_GlyphRect: + m_X: 281 + m_Y: 354 + m_Width: 24 + m_Height: 32 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 76 + m_Metrics: + m_Width: 9.187499 + m_Height: 32.312496 + m_HorizontalBearingX: 2.1249998 + m_HorizontalBearingY: 32.374996 + m_HorizontalAdvance: 12.6875 + m_GlyphRect: + m_X: 353 + m_Y: 354 + m_Width: 9 + m_Height: 32 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 77 + m_Metrics: + m_Width: 37.249996 + m_Height: 24.374998 + m_HorizontalBearingX: 2.2499998 + m_HorizontalBearingY: 24.374998 + m_HorizontalAdvance: 41.0625 + m_GlyphRect: + m_X: 117 + m_Y: 149 + m_Width: 37 + m_Height: 24 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 78 + m_Metrics: + m_Width: 24.812498 + m_Height: 24.374998 + m_HorizontalBearingX: 2.2499998 + m_HorizontalBearingY: 24.374998 + m_HorizontalAdvance: 29.25 + m_GlyphRect: + m_X: 374 + m_Y: 356 + m_Width: 25 + m_Height: 24 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 79 + m_Metrics: + m_Width: 24.812498 + m_Height: 24.374998 + m_HorizontalBearingX: 2.1249998 + m_HorizontalBearingY: 24.374998 + m_HorizontalAdvance: 29.0625 + m_GlyphRect: + m_X: 410 + m_Y: 356 + m_Width: 25 + m_Height: 24 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 80 + m_Metrics: + m_Width: 24.812498 + m_Height: 34.062496 + m_HorizontalBearingX: 2.2499998 + m_HorizontalBearingY: 24.374998 + m_HorizontalAdvance: 27.875 + m_GlyphRect: + m_X: 222 + m_Y: 422 + m_Width: 25 + m_Height: 34 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 81 + m_Metrics: + m_Width: 24.874998 + m_Height: 34.062496 + m_HorizontalBearingX: 0.81249994 + m_HorizontalBearingY: 24.374998 + m_HorizontalAdvance: 27.875 + m_GlyphRect: + m_X: 258 + m_Y: 422 + m_Width: 25 + m_Height: 34 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 82 + m_Metrics: + m_Width: 18.749998 + m_Height: 24.374998 + m_HorizontalBearingX: 2.1249998 + m_HorizontalBearingY: 24.374998 + m_HorizontalAdvance: 21.5 + m_GlyphRect: + m_X: 416 + m_Y: 392 + m_Width: 19 + m_Height: 24 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 83 + m_Metrics: + m_Width: 24.812498 + m_Height: 24.374998 + m_HorizontalBearingX: 1.9999999 + m_HorizontalBearingY: 24.374998 + m_HorizontalAdvance: 28.8125 + m_GlyphRect: + m_X: 466 + m_Y: 354 + m_Width: 25 + m_Height: 24 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 84 + m_Metrics: + m_Width: 13.937499 + m_Height: 32.312496 + m_HorizontalBearingX: 2.1874998 + m_HorizontalBearingY: 32.374996 + m_HorizontalAdvance: 17.25 + m_GlyphRect: + m_X: 446 + m_Y: 309 + m_Width: 14 + m_Height: 32 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 85 + m_Metrics: + m_Width: 24.812498 + m_Height: 24.374998 + m_HorizontalBearingX: 2.1874998 + m_HorizontalBearingY: 24.374998 + m_HorizontalAdvance: 29.1875 + m_GlyphRect: + m_X: 466 + m_Y: 390 + m_Width: 25 + m_Height: 24 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 86 + m_Metrics: + m_Width: 30.937498 + m_Height: 24.374998 + m_HorizontalBearingX: 0.87499994 + m_HorizontalBearingY: 24.374998 + m_HorizontalAdvance: 33.1875 + m_GlyphRect: + m_X: 439 + m_Y: 273 + m_Width: 31 + m_Height: 24 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 87 + m_Metrics: + m_Width: 42.437496 + m_Height: 24.374998 + m_HorizontalBearingX: 1.4374999 + m_HorizontalBearingY: 24.374998 + m_HorizontalAdvance: 45 + m_GlyphRect: + m_X: 130 + m_Y: 7 + m_Width: 42 + m_Height: 24 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 88 + m_Metrics: + m_Width: 24.874998 + m_Height: 24.374998 + m_HorizontalBearingX: 1.8749999 + m_HorizontalBearingY: 24.374998 + m_HorizontalAdvance: 29.0625 + m_GlyphRect: + m_X: 317 + m_Y: 396 + m_Width: 25 + m_Height: 24 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 89 + m_Metrics: + m_Width: 24.812498 + m_Height: 33.937496 + m_HorizontalBearingX: 1.7499999 + m_HorizontalBearingY: 24.312498 + m_HorizontalAdvance: 28.75 + m_GlyphRect: + m_X: 481 + m_Y: 272 + m_Width: 25 + m_Height: 34 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 90 + m_Metrics: + m_Width: 24.812498 + m_Height: 24.374998 + m_HorizontalBearingX: 2.2499998 + m_HorizontalBearingY: 24.374998 + m_HorizontalAdvance: 29.3125 + m_GlyphRect: + m_X: 312 + m_Y: 432 + m_Width: 25 + m_Height: 24 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 91 + m_Metrics: + m_Width: 8.312499 + m_Height: 30.249998 + m_HorizontalBearingX: 0.93749994 + m_HorizontalBearingY: 30.249998 + m_HorizontalAdvance: 12.125 + m_GlyphRect: + m_X: 482 + m_Y: 231 + m_Width: 8 + m_Height: 30 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 92 + m_Metrics: + m_Width: 3.4374998 + m_Height: 40.187496 + m_HorizontalBearingX: 2.2499998 + m_HorizontalBearingY: 35.374996 + m_HorizontalAdvance: 9 + m_GlyphRect: + m_X: 165 + m_Y: 185 + m_Width: 3 + m_Height: 40 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 93 + m_Metrics: + m_Width: 8.249999 + m_Height: 30.249998 + m_HorizontalBearingX: 2.1249998 + m_HorizontalBearingY: 30.249998 + m_HorizontalAdvance: 12.125 + m_GlyphRect: + m_X: 446 + m_Y: 353 + m_Width: 8 + m_Height: 30 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 94 + m_Metrics: + m_Width: 14.249999 + m_Height: 4.5624995 + m_HorizontalBearingX: 0.99999994 + m_HorizontalBearingY: 14.874999 + m_HorizontalAdvance: 16.9375 + m_GlyphRect: + m_X: 405 + m_Y: 442 + m_Width: 14 + m_Height: 5 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 95 + m_Metrics: + m_Width: 3.4374998 + m_Height: 30.562498 + m_HorizontalBearingX: 2.1874998 + m_HorizontalBearingY: 30.624998 + m_HorizontalAdvance: 8.8125 + m_GlyphRect: + m_X: 502 + m_Y: 181 + m_Width: 3 + m_Height: 31 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 96 + m_Metrics: + m_Width: 24.687498 + m_Height: 35.312496 + m_HorizontalBearingX: 1.3749999 + m_HorizontalBearingY: 30.499998 + m_HorizontalAdvance: 26.6875 + m_GlyphRect: + m_X: 48 + m_Y: 422 + m_Width: 25 + m_Height: 35 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 97 + m_Metrics: + m_Width: 27.374998 + m_Height: 30.249998 + m_HorizontalBearingX: 1.6249999 + m_HorizontalBearingY: 30.249998 + m_HorizontalAdvance: 30.8125 + m_GlyphRect: + m_X: 297 + m_Y: 312 + m_Width: 27 + m_Height: 30 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 98 + m_Metrics: + m_Width: 10.999999 + m_Height: 3.4374998 + m_HorizontalBearingX: 2.2499998 + m_HorizontalBearingY: 40.124996 + m_HorizontalAdvance: 16.1875 + m_GlyphRect: + m_X: 392 + m_Y: 479 + m_Width: 11 + m_Height: 3 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 99 + m_Metrics: + m_Width: 14.187499 + m_Height: 13.749999 + m_HorizontalBearingX: 1.8749999 + m_HorizontalBearingY: 30.624998 + m_HorizontalAdvance: 18.4375 + m_GlyphRect: + m_X: 366 + m_Y: 477 + m_Width: 14 + m_Height: 14 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 100 + m_Metrics: + m_Width: 4.8124995 + m_Height: 5.8124995 + m_HorizontalBearingX: 1.3749999 + m_HorizontalBearingY: 42.499996 + m_HorizontalAdvance: 8.9375 + m_GlyphRect: + m_X: 406 + m_Y: 493 + m_Width: 5 + m_Height: 6 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 101 + m_Metrics: + m_Width: 30.499998 + m_Height: 30.562498 + m_HorizontalBearingX: 2.3124998 + m_HorizontalBearingY: 30.562498 + m_HorizontalAdvance: 35 + m_GlyphRect: + m_X: 295 + m_Y: 269 + m_Width: 30 + m_Height: 31 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 102 + m_Metrics: + m_Width: 4.8124995 + m_Height: 5.8749995 + m_HorizontalBearingX: 1.3749999 + m_HorizontalBearingY: -1.3124999 + m_HorizontalAdvance: 8.9375 + m_GlyphRect: + m_X: 422 + m_Y: 493 + m_Width: 5 + m_Height: 6 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 103 + m_Metrics: + m_Width: 26.749998 + m_Height: 30.874998 + m_HorizontalBearingX: 0.74999994 + m_HorizontalBearingY: 30.624998 + m_HorizontalAdvance: 28.375 + m_GlyphRect: + m_X: 336 + m_Y: 311 + m_Width: 27 + m_Height: 31 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 104 + m_Metrics: + m_Width: 30.249998 + m_Height: 42.187496 + m_HorizontalBearingX: 2.3749998 + m_HorizontalBearingY: 42.187496 + m_HorizontalAdvance: 35.125 + m_GlyphRect: + m_X: 6 + m_Y: 145 + m_Width: 30 + m_Height: 42 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 105 + m_Metrics: + m_Width: 30.249998 + m_Height: 42.124996 + m_HorizontalBearingX: 2.3749998 + m_HorizontalBearingY: 42.187496 + m_HorizontalAdvance: 35.125 + m_GlyphRect: + m_X: 6 + m_Y: 199 + m_Width: 30 + m_Height: 42 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 106 + m_Metrics: + m_Width: 30.249998 + m_Height: 41.187496 + m_HorizontalBearingX: 2.3749998 + m_HorizontalBearingY: 41.249996 + m_HorizontalAdvance: 35.125 + m_GlyphRect: + m_X: 48 + m_Y: 369 + m_Width: 30 + m_Height: 41 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 107 + m_Metrics: + m_Width: 30.249998 + m_Height: 41.562496 + m_HorizontalBearingX: 2.3749998 + m_HorizontalBearingY: 41.562496 + m_HorizontalAdvance: 35.125 + m_GlyphRect: + m_X: 121 + m_Y: 42 + m_Width: 30 + m_Height: 42 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 108 + m_Metrics: + m_Width: 30.249998 + m_Height: 39.374996 + m_HorizontalBearingX: 2.3749998 + m_HorizontalBearingY: 39.374996 + m_HorizontalAdvance: 35.125 + m_GlyphRect: + m_X: 76 + m_Y: 94 + m_Width: 30 + m_Height: 39 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 109 + m_Metrics: + m_Width: 30.249998 + m_Height: 41.187496 + m_HorizontalBearingX: 2.3749998 + m_HorizontalBearingY: 41.249996 + m_HorizontalAdvance: 35.125 + m_GlyphRect: + m_X: 118 + m_Y: 96 + m_Width: 30 + m_Height: 41 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 110 + m_Metrics: + m_Width: 54.437496 + m_Height: 30.249998 + m_HorizontalBearingX: 2.2499998 + m_HorizontalBearingY: 30.249998 + m_HorizontalAdvance: 57.75 + m_GlyphRect: + m_X: 6 + m_Y: 7 + m_Width: 54 + m_Height: 30 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 111 + m_Metrics: + m_Width: 30.124998 + m_Height: 36.062496 + m_HorizontalBearingX: 2.3124998 + m_HorizontalBearingY: 30.249998 + m_HorizontalAdvance: 34.5 + m_GlyphRect: + m_X: 183 + m_Y: 49 + m_Width: 30 + m_Height: 36 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 112 + m_Metrics: + m_Width: 27.562498 + m_Height: 42.187496 + m_HorizontalBearingX: 2.3749998 + m_HorizontalBearingY: 42.187496 + m_HorizontalAdvance: 32.1875 + m_GlyphRect: + m_X: 48 + m_Y: 261 + m_Width: 28 + m_Height: 42 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 113 + m_Metrics: + m_Width: 27.562498 + m_Height: 42.187496 + m_HorizontalBearingX: 2.3749998 + m_HorizontalBearingY: 42.187496 + m_HorizontalAdvance: 32.1875 + m_GlyphRect: + m_X: 48 + m_Y: 315 + m_Width: 28 + m_Height: 42 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 114 + m_Metrics: + m_Width: 27.562498 + m_Height: 41.187496 + m_HorizontalBearingX: 2.3749998 + m_HorizontalBearingY: 41.249996 + m_HorizontalAdvance: 32.1875 + m_GlyphRect: + m_X: 84 + m_Y: 187 + m_Width: 28 + m_Height: 41 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 115 + m_Metrics: + m_Width: 27.562498 + m_Height: 39.749996 + m_HorizontalBearingX: 2.3749998 + m_HorizontalBearingY: 39.812496 + m_HorizontalAdvance: 32.1875 + m_GlyphRect: + m_X: 435 + m_Y: 48 + m_Width: 28 + m_Height: 40 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 116 + m_Metrics: + m_Width: 4.8124995 + m_Height: 42.187496 + m_HorizontalBearingX: 1.4999999 + m_HorizontalBearingY: 42.187496 + m_HorizontalAdvance: 9.25 + m_GlyphRect: + m_X: 159 + m_Y: 238 + m_Width: 5 + m_Height: 42 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 117 + m_Metrics: + m_Width: 4.8124995 + m_Height: 42.187496 + m_HorizontalBearingX: 1.4999999 + m_HorizontalBearingY: 42.187496 + m_HorizontalAdvance: 9.25 + m_GlyphRect: + m_X: 175 + m_Y: 237 + m_Width: 5 + m_Height: 42 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 118 + m_Metrics: + m_Width: 8.437499 + m_Height: 41.187496 + m_HorizontalBearingX: -0.56249994 + m_HorizontalBearingY: 41.249996 + m_HorizontalAdvance: 9.25 + m_GlyphRect: + m_X: 163 + m_Y: 43 + m_Width: 8 + m_Height: 41 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 119 + m_Metrics: + m_Width: 10.999999 + m_Height: 39.749996 + m_HorizontalBearingX: -1.2499999 + m_HorizontalBearingY: 39.812496 + m_HorizontalAdvance: 9.25 + m_GlyphRect: + m_X: 160 + m_Y: 95 + m_Width: 11 + m_Height: 40 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 120 + m_Metrics: + m_Width: 30.187498 + m_Height: 41.562496 + m_HorizontalBearingX: 2.3124998 + m_HorizontalBearingY: 41.562496 + m_HorizontalAdvance: 34.9375 + m_GlyphRect: + m_X: 123 + m_Y: 184 + m_Width: 30 + m_Height: 42 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 121 + m_Metrics: + m_Width: 30.249998 + m_Height: 42.187496 + m_HorizontalBearingX: 2.2499998 + m_HorizontalBearingY: 42.187496 + m_HorizontalAdvance: 34.75 + m_GlyphRect: + m_X: 6 + m_Y: 253 + m_Width: 30 + m_Height: 42 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 122 + m_Metrics: + m_Width: 30.249998 + m_Height: 42.187496 + m_HorizontalBearingX: 2.2499998 + m_HorizontalBearingY: 42.187496 + m_HorizontalAdvance: 34.75 + m_GlyphRect: + m_X: 6 + m_Y: 307 + m_Width: 30 + m_Height: 42 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 123 + m_Metrics: + m_Width: 30.249998 + m_Height: 41.187496 + m_HorizontalBearingX: 2.2499998 + m_HorizontalBearingY: 41.249996 + m_HorizontalAdvance: 34.75 + m_GlyphRect: + m_X: 225 + m_Y: 49 + m_Width: 30 + m_Height: 41 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 124 + m_Metrics: + m_Width: 30.249998 + m_Height: 41.562496 + m_HorizontalBearingX: 2.2499998 + m_HorizontalBearingY: 41.562496 + m_HorizontalAdvance: 34.75 + m_GlyphRect: + m_X: 267 + m_Y: 48 + m_Width: 30 + m_Height: 42 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 125 + m_Metrics: + m_Width: 30.249998 + m_Height: 39.749996 + m_HorizontalBearingX: 2.2499998 + m_HorizontalBearingY: 39.812496 + m_HorizontalAdvance: 34.75 + m_GlyphRect: + m_X: 351 + m_Y: 48 + m_Width: 30 + m_Height: 40 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 126 + m_Metrics: + m_Width: 17.812498 + m_Height: 17.249998 + m_HorizontalBearingX: 2.1874998 + m_HorizontalBearingY: 21.312498 + m_HorizontalAdvance: 22.9375 + m_GlyphRect: + m_X: 87 + m_Y: 338 + m_Width: 18 + m_Height: 17 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 127 + m_Metrics: + m_Width: 30.249998 + m_Height: 42.187496 + m_HorizontalBearingX: 2.2499998 + m_HorizontalBearingY: 42.187496 + m_HorizontalAdvance: 34.75 + m_GlyphRect: + m_X: 6 + m_Y: 361 + m_Width: 30 + m_Height: 42 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 128 + m_Metrics: + m_Width: 30.249998 + m_Height: 42.187496 + m_HorizontalBearingX: 2.2499998 + m_HorizontalBearingY: 42.187496 + m_HorizontalAdvance: 34.75 + m_GlyphRect: + m_X: 6 + m_Y: 415 + m_Width: 30 + m_Height: 42 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 129 + m_Metrics: + m_Width: 30.249998 + m_Height: 41.187496 + m_HorizontalBearingX: 2.2499998 + m_HorizontalBearingY: 41.249996 + m_HorizontalAdvance: 34.75 + m_GlyphRect: + m_X: 309 + m_Y: 49 + m_Width: 30 + m_Height: 41 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 130 + m_Metrics: + m_Width: 30.249998 + m_Height: 39.749996 + m_HorizontalBearingX: 2.2499998 + m_HorizontalBearingY: 39.812496 + m_HorizontalAdvance: 34.75 + m_GlyphRect: + m_X: 393 + m_Y: 48 + m_Width: 30 + m_Height: 40 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 131 + m_Metrics: + m_Width: 31.249998 + m_Height: 42.187496 + m_HorizontalBearingX: 0.68749994 + m_HorizontalBearingY: 42.187496 + m_HorizontalAdvance: 33.875 + m_GlyphRect: + m_X: 6 + m_Y: 91 + m_Width: 31 + m_Height: 42 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 132 + m_Metrics: + m_Width: 30.562498 + m_Height: 30.562498 + m_HorizontalBearingX: 2.3749998 + m_HorizontalBearingY: 30.624998 + m_HorizontalAdvance: 35 + m_GlyphRect: + m_X: 337 + m_Y: 269 + m_Width: 31 + m_Height: 31 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 133 + m_Metrics: + m_Width: 24.812498 + m_Height: 37.874996 + m_HorizontalBearingX: 2.1249998 + m_HorizontalBearingY: 37.937496 + m_HorizontalAdvance: 30.4375 + m_GlyphRect: + m_X: 6 + m_Y: 468 + m_Width: 25 + m_Height: 38 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 134 + m_Metrics: + m_Width: 24.812498 + m_Height: 37.874996 + m_HorizontalBearingX: 2.1249998 + m_HorizontalBearingY: 37.937496 + m_HorizontalAdvance: 30.4375 + m_GlyphRect: + m_X: 42 + m_Y: 468 + m_Width: 25 + m_Height: 38 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 135 + m_Metrics: + m_Width: 24.812498 + m_Height: 36.937496 + m_HorizontalBearingX: 2.1249998 + m_HorizontalBearingY: 36.999996 + m_HorizontalAdvance: 30.4375 + m_GlyphRect: + m_X: 168 + m_Y: 335 + m_Width: 25 + m_Height: 37 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 136 + m_Metrics: + m_Width: 24.812498 + m_Height: 37.187496 + m_HorizontalBearingX: 2.1249998 + m_HorizontalBearingY: 37.249996 + m_HorizontalAdvance: 30.4375 + m_GlyphRect: + m_X: 78 + m_Y: 469 + m_Width: 25 + m_Height: 37 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 137 + m_Metrics: + m_Width: 24.812498 + m_Height: 35.499996 + m_HorizontalBearingX: 2.1249998 + m_HorizontalBearingY: 35.499996 + m_HorizontalAdvance: 30.4375 + m_GlyphRect: + m_X: 84 + m_Y: 422 + m_Width: 25 + m_Height: 35 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 138 + m_Metrics: + m_Width: 24.812498 + m_Height: 36.874996 + m_HorizontalBearingX: 2.1249998 + m_HorizontalBearingY: 36.937496 + m_HorizontalAdvance: 30.4375 + m_GlyphRect: + m_X: 180 + m_Y: 182 + m_Width: 25 + m_Height: 37 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 139 + m_Metrics: + m_Width: 46.062496 + m_Height: 24.374998 + m_HorizontalBearingX: 2.1874998 + m_HorizontalBearingY: 24.374998 + m_HorizontalAdvance: 49.5 + m_GlyphRect: + m_X: 72 + m_Y: 7 + m_Width: 46 + m_Height: 24 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 140 + m_Metrics: + m_Width: 24.812498 + m_Height: 30.187498 + m_HorizontalBearingX: 2.1249998 + m_HorizontalBearingY: 24.374998 + m_HorizontalAdvance: 29.125 + m_GlyphRect: + m_X: 317 + m_Y: 354 + m_Width: 25 + m_Height: 30 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 141 + m_Metrics: + m_Width: 24.812498 + m_Height: 37.874996 + m_HorizontalBearingX: 2.1249998 + m_HorizontalBearingY: 37.937496 + m_HorizontalAdvance: 26.8125 + m_GlyphRect: + m_X: 114 + m_Y: 468 + m_Width: 25 + m_Height: 38 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 142 + m_Metrics: + m_Width: 24.812498 + m_Height: 37.937496 + m_HorizontalBearingX: 2.1249998 + m_HorizontalBearingY: 37.937496 + m_HorizontalAdvance: 26.8125 + m_GlyphRect: + m_X: 474 + m_Y: 48 + m_Width: 25 + m_Height: 38 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 143 + m_Metrics: + m_Width: 24.812498 + m_Height: 36.937496 + m_HorizontalBearingX: 2.1249998 + m_HorizontalBearingY: 36.999996 + m_HorizontalAdvance: 26.8125 + m_GlyphRect: + m_X: 191 + m_Y: 230 + m_Width: 25 + m_Height: 37 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 144 + m_Metrics: + m_Width: 24.812498 + m_Height: 35.499996 + m_HorizontalBearingX: 2.1249998 + m_HorizontalBearingY: 35.499996 + m_HorizontalAdvance: 26.8125 + m_GlyphRect: + m_X: 209 + m_Y: 375 + m_Width: 25 + m_Height: 35 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 145 + m_Metrics: + m_Width: 5.1249995 + m_Height: 37.937496 + m_HorizontalBearingX: 0.62499994 + m_HorizontalBearingY: 37.937496 + m_HorizontalAdvance: 9 + m_GlyphRect: + m_X: 216 + m_Y: 181 + m_Width: 5 + m_Height: 38 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 146 + m_Metrics: + m_Width: 4.8124995 + m_Height: 37.874996 + m_HorizontalBearingX: 1.9999999 + m_HorizontalBearingY: 37.937496 + m_HorizontalAdvance: 9 + m_GlyphRect: + m_X: 240 + m_Y: 325 + m_Width: 5 + m_Height: 38 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 147 + m_Metrics: + m_Width: 8.437499 + m_Height: 36.937496 + m_HorizontalBearingX: -0.68749994 + m_HorizontalBearingY: 36.999996 + m_HorizontalAdvance: 9 + m_GlyphRect: + m_X: 227 + m_Y: 230 + m_Width: 8 + m_Height: 37 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 148 + m_Metrics: + m_Width: 10.999999 + m_Height: 35.562496 + m_HorizontalBearingX: -1.3749999 + m_HorizontalBearingY: 35.624996 + m_HorizontalAdvance: 9 + m_GlyphRect: + m_X: 231 + m_Y: 278 + m_Width: 11 + m_Height: 36 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 149 + m_Metrics: + m_Width: 24.812498 + m_Height: 37.187496 + m_HorizontalBearingX: 2.2499998 + m_HorizontalBearingY: 37.187496 + m_HorizontalAdvance: 29.75 + m_GlyphRect: + m_X: 182 + m_Y: 97 + m_Width: 25 + m_Height: 37 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 150 + m_Metrics: + m_Width: 24.812498 + m_Height: 37.937496 + m_HorizontalBearingX: 2.1249998 + m_HorizontalBearingY: 37.937496 + m_HorizontalAdvance: 29.0625 + m_GlyphRect: + m_X: 87 + m_Y: 239 + m_Width: 25 + m_Height: 38 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 151 + m_Metrics: + m_Width: 24.812498 + m_Height: 37.937496 + m_HorizontalBearingX: 2.1249998 + m_HorizontalBearingY: 37.937496 + m_HorizontalAdvance: 29.0625 + m_GlyphRect: + m_X: 123 + m_Y: 237 + m_Width: 25 + m_Height: 38 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 152 + m_Metrics: + m_Width: 24.812498 + m_Height: 36.937496 + m_HorizontalBearingX: 2.1249998 + m_HorizontalBearingY: 36.999996 + m_HorizontalAdvance: 29.0625 + m_GlyphRect: + m_X: 195 + m_Y: 278 + m_Width: 25 + m_Height: 37 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 153 + m_Metrics: + m_Width: 24.812498 + m_Height: 37.187496 + m_HorizontalBearingX: 2.1249998 + m_HorizontalBearingY: 37.187496 + m_HorizontalAdvance: 29.0625 + m_GlyphRect: + m_X: 87 + m_Y: 289 + m_Width: 25 + m_Height: 37 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 154 + m_Metrics: + m_Width: 24.812498 + m_Height: 35.562496 + m_HorizontalBearingX: 2.1249998 + m_HorizontalBearingY: 35.624996 + m_HorizontalAdvance: 29.0625 + m_GlyphRect: + m_X: 441 + m_Y: 141 + m_Width: 25 + m_Height: 36 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 155 + m_Metrics: + m_Width: 19.937498 + m_Height: 24.249998 + m_HorizontalBearingX: 0.74999994 + m_HorizontalBearingY: 24.374998 + m_HorizontalAdvance: 21.3125 + m_GlyphRect: + m_X: 307 + m_Y: 468 + m_Width: 20 + m_Height: 24 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 156 + m_Metrics: + m_Width: 24.812498 + m_Height: 37.937496 + m_HorizontalBearingX: 2.1874998 + m_HorizontalBearingY: 37.937496 + m_HorizontalAdvance: 29.1875 + m_GlyphRect: + m_X: 123 + m_Y: 286 + m_Width: 25 + m_Height: 38 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 157 + m_Metrics: + m_Width: 24.812498 + m_Height: 37.937496 + m_HorizontalBearingX: 2.1874998 + m_HorizontalBearingY: 37.937496 + m_HorizontalAdvance: 29.1875 + m_GlyphRect: + m_X: 90 + m_Y: 366 + m_Width: 25 + m_Height: 38 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 158 + m_Metrics: + m_Width: 24.812498 + m_Height: 36.999996 + m_HorizontalBearingX: 2.1874998 + m_HorizontalBearingY: 37.062496 + m_HorizontalAdvance: 29.1875 + m_GlyphRect: + m_X: 204 + m_Y: 326 + m_Width: 25 + m_Height: 37 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 159 + m_Metrics: + m_Width: 24.812498 + m_Height: 35.499996 + m_HorizontalBearingX: 2.1874998 + m_HorizontalBearingY: 35.499996 + m_HorizontalAdvance: 29.1875 + m_GlyphRect: + m_X: 245 + m_Y: 375 + m_Width: 25 + m_Height: 35 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 160 + m_Metrics: + m_Width: 24.812498 + m_Height: 47.624996 + m_HorizontalBearingX: 1.7499999 + m_HorizontalBearingY: 37.937496 + m_HorizontalAdvance: 28.875 + m_GlyphRect: + m_X: 48 + m_Y: 144 + m_Width: 25 + m_Height: 48 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 161 + m_Metrics: + m_Width: 24.812498 + m_Height: 45.249996 + m_HorizontalBearingX: 1.7499999 + m_HorizontalBearingY: 35.624996 + m_HorizontalAdvance: 28.875 + m_GlyphRect: + m_X: 48 + m_Y: 204 + m_Width: 25 + m_Height: 45 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 162 + m_Metrics: + m_Width: 25.249998 + m_Height: 3.4374998 + m_HorizontalBearingX: 2.2499998 + m_HorizontalBearingY: 14.124999 + m_HorizontalAdvance: 29.75 + m_GlyphRect: + m_X: 338 + m_Y: 503 + m_Width: 25 + m_Height: 3 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 163 + m_Metrics: + m_Width: 30.312498 + m_Height: 3.4374998 + m_HorizontalBearingX: 2.2499998 + m_HorizontalBearingY: 14.124999 + m_HorizontalAdvance: 34.5 + m_GlyphRect: + m_X: 374 + m_Y: 407 + m_Width: 30 + m_Height: 3 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 164 + m_Metrics: + m_Width: 3.4999998 + m_Height: 8.937499 + m_HorizontalBearingX: 1.3749999 + m_HorizontalBearingY: 30.124998 + m_HorizontalAdvance: 7.0625 + m_GlyphRect: + m_X: 502 + m_Y: 417 + m_Width: 3 + m_Height: 9 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 165 + m_Metrics: + m_Width: 3.4374998 + m_Height: 8.999999 + m_HorizontalBearingX: 2.2499998 + m_HorizontalBearingY: 30.312498 + m_HorizontalAdvance: 7 + m_GlyphRect: + m_X: 446 + m_Y: 394 + m_Width: 3 + m_Height: 9 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 166 + m_Metrics: + m_Width: 10.999999 + m_Height: 8.937499 + m_HorizontalBearingX: 1.9374999 + m_HorizontalBearingY: 30.062498 + m_HorizontalAdvance: 15.25 + m_GlyphRect: + m_X: 404 + m_Y: 458 + m_Width: 11 + m_Height: 9 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 167 + m_Metrics: + m_Width: 11.062499 + m_Height: 8.999999 + m_HorizontalBearingX: 2.2499998 + m_HorizontalBearingY: 30.312498 + m_HorizontalAdvance: 15.25 + m_GlyphRect: + m_X: 256 + m_Y: 353 + m_Width: 11 + m_Height: 9 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 168 + m_Metrics: + m_Width: 3.4374998 + m_Height: 3.3124998 + m_HorizontalBearingX: 5.9999995 + m_HorizontalBearingY: 16.937498 + m_HorizontalAdvance: 15.5625 + m_GlyphRect: + m_X: 477 + m_Y: 142 + m_Width: 3 + m_Height: 3 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 169 + m_Metrics: + m_Width: 19.312498 + m_Height: 3.4374998 + m_HorizontalBearingX: 2.2499998 + m_HorizontalBearingY: 3.4999998 + m_HorizontalAdvance: 24.125 + m_GlyphRect: + m_X: 375 + m_Y: 503 + m_Width: 19 + m_Height: 3 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 170 + m_Metrics: + m_Width: 30.437498 + m_Height: 30.312498 + m_HorizontalBearingX: 1.4374999 + m_HorizontalBearingY: 30.312498 + m_HorizontalAdvance: 33.5625 + m_GlyphRect: + m_X: 379 + m_Y: 270 + m_Width: 30 + m_Height: 30 + m_Scale: 1 + m_AtlasIndex: 0 + m_CharacterTable: + - m_ElementType: 1 + m_Unicode: 32 + m_GlyphIndex: 1 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 33 + m_GlyphIndex: 2 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 34 + m_GlyphIndex: 3 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 35 + m_GlyphIndex: 4 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 36 + m_GlyphIndex: 5 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 37 + m_GlyphIndex: 6 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 38 + m_GlyphIndex: 7 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 39 + m_GlyphIndex: 8 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 40 + m_GlyphIndex: 9 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 41 + m_GlyphIndex: 10 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 42 + m_GlyphIndex: 11 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 43 + m_GlyphIndex: 12 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 44 + m_GlyphIndex: 13 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 45 + m_GlyphIndex: 14 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 46 + m_GlyphIndex: 15 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 47 + m_GlyphIndex: 16 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 48 + m_GlyphIndex: 17 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 49 + m_GlyphIndex: 18 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 50 + m_GlyphIndex: 19 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 51 + m_GlyphIndex: 20 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 52 + m_GlyphIndex: 21 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 53 + m_GlyphIndex: 22 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 54 + m_GlyphIndex: 23 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 55 + m_GlyphIndex: 24 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 56 + m_GlyphIndex: 25 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 57 + m_GlyphIndex: 26 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 58 + m_GlyphIndex: 27 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 59 + m_GlyphIndex: 28 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 60 + m_GlyphIndex: 29 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 61 + m_GlyphIndex: 30 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 62 + m_GlyphIndex: 31 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 63 + m_GlyphIndex: 32 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 64 + m_GlyphIndex: 33 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 65 + m_GlyphIndex: 34 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 66 + m_GlyphIndex: 35 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 67 + m_GlyphIndex: 36 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 68 + m_GlyphIndex: 37 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 69 + m_GlyphIndex: 38 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 70 + m_GlyphIndex: 39 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 71 + m_GlyphIndex: 40 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 72 + m_GlyphIndex: 41 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 73 + m_GlyphIndex: 42 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 74 + m_GlyphIndex: 43 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 75 + m_GlyphIndex: 44 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 76 + m_GlyphIndex: 45 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 77 + m_GlyphIndex: 46 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 78 + m_GlyphIndex: 47 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 79 + m_GlyphIndex: 48 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 80 + m_GlyphIndex: 49 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 81 + m_GlyphIndex: 50 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 82 + m_GlyphIndex: 51 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 83 + m_GlyphIndex: 52 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 84 + m_GlyphIndex: 53 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 85 + m_GlyphIndex: 54 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 86 + m_GlyphIndex: 55 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 87 + m_GlyphIndex: 56 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 88 + m_GlyphIndex: 57 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 89 + m_GlyphIndex: 58 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 90 + m_GlyphIndex: 59 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 91 + m_GlyphIndex: 60 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 92 + m_GlyphIndex: 61 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 93 + m_GlyphIndex: 62 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 95 + m_GlyphIndex: 63 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 96 + m_GlyphIndex: 64 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 97 + m_GlyphIndex: 65 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 98 + m_GlyphIndex: 66 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 99 + m_GlyphIndex: 67 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 100 + m_GlyphIndex: 68 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 101 + m_GlyphIndex: 69 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 102 + m_GlyphIndex: 70 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 103 + m_GlyphIndex: 71 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 104 + m_GlyphIndex: 72 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 105 + m_GlyphIndex: 73 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 106 + m_GlyphIndex: 74 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 107 + m_GlyphIndex: 75 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 108 + m_GlyphIndex: 76 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 109 + m_GlyphIndex: 77 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 110 + m_GlyphIndex: 78 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 111 + m_GlyphIndex: 79 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 112 + m_GlyphIndex: 80 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 113 + m_GlyphIndex: 81 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 114 + m_GlyphIndex: 82 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 115 + m_GlyphIndex: 83 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 116 + m_GlyphIndex: 84 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 117 + m_GlyphIndex: 85 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 118 + m_GlyphIndex: 86 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 119 + m_GlyphIndex: 87 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 120 + m_GlyphIndex: 88 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 121 + m_GlyphIndex: 89 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 122 + m_GlyphIndex: 90 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 123 + m_GlyphIndex: 91 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 124 + m_GlyphIndex: 92 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 125 + m_GlyphIndex: 93 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 126 + m_GlyphIndex: 94 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 161 + m_GlyphIndex: 95 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 162 + m_GlyphIndex: 96 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 163 + m_GlyphIndex: 97 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 168 + m_GlyphIndex: 98 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 176 + m_GlyphIndex: 99 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 180 + m_GlyphIndex: 100 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 182 + m_GlyphIndex: 101 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 184 + m_GlyphIndex: 102 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 191 + m_GlyphIndex: 103 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 192 + m_GlyphIndex: 104 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 193 + m_GlyphIndex: 105 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 194 + m_GlyphIndex: 106 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 195 + m_GlyphIndex: 107 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 196 + m_GlyphIndex: 108 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 197 + m_GlyphIndex: 109 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 198 + m_GlyphIndex: 110 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 199 + m_GlyphIndex: 111 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 200 + m_GlyphIndex: 112 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 201 + m_GlyphIndex: 113 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 202 + m_GlyphIndex: 114 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 203 + m_GlyphIndex: 115 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 204 + m_GlyphIndex: 116 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 205 + m_GlyphIndex: 117 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 206 + m_GlyphIndex: 118 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 207 + m_GlyphIndex: 119 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 209 + m_GlyphIndex: 120 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 210 + m_GlyphIndex: 121 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 211 + m_GlyphIndex: 122 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 212 + m_GlyphIndex: 123 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 213 + m_GlyphIndex: 124 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 214 + m_GlyphIndex: 125 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 215 + m_GlyphIndex: 126 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 217 + m_GlyphIndex: 127 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 218 + m_GlyphIndex: 128 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 219 + m_GlyphIndex: 129 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 220 + m_GlyphIndex: 130 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 221 + m_GlyphIndex: 131 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 223 + m_GlyphIndex: 132 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 224 + m_GlyphIndex: 133 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 225 + m_GlyphIndex: 134 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 226 + m_GlyphIndex: 135 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 227 + m_GlyphIndex: 136 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 228 + m_GlyphIndex: 137 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 229 + m_GlyphIndex: 138 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 230 + m_GlyphIndex: 139 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 231 + m_GlyphIndex: 140 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 232 + m_GlyphIndex: 141 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 233 + m_GlyphIndex: 142 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 234 + m_GlyphIndex: 143 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 235 + m_GlyphIndex: 144 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 236 + m_GlyphIndex: 145 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 237 + m_GlyphIndex: 146 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 238 + m_GlyphIndex: 147 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 239 + m_GlyphIndex: 148 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 241 + m_GlyphIndex: 149 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 242 + m_GlyphIndex: 150 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 243 + m_GlyphIndex: 151 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 244 + m_GlyphIndex: 152 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 245 + m_GlyphIndex: 153 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 246 + m_GlyphIndex: 154 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 247 + m_GlyphIndex: 155 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 249 + m_GlyphIndex: 156 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 250 + m_GlyphIndex: 157 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 251 + m_GlyphIndex: 158 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 252 + m_GlyphIndex: 159 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 253 + m_GlyphIndex: 160 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 255 + m_GlyphIndex: 161 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 8211 + m_GlyphIndex: 162 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 8212 + m_GlyphIndex: 163 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 8216 + m_GlyphIndex: 164 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 8217 + m_GlyphIndex: 165 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 8220 + m_GlyphIndex: 166 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 8221 + m_GlyphIndex: 167 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 8226 + m_GlyphIndex: 168 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 8230 + m_GlyphIndex: 169 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 8364 + m_GlyphIndex: 170 + m_Scale: 1 + m_AtlasTextures: + - {fileID: 28974264394003402} + m_AtlasTextureIndex: 0 + m_UsedGlyphRects: [] + m_FreeGlyphRects: [] + m_fontInfo: + Name: Orbitron + PointSize: 42 + Scale: 1 + CharacterCount: 170 + LineHeight: 42 + Baseline: 0 + Ascender: 31.5 + CapHeight: 30.249998 + Descender: -10.5 + CenterLine: 0 + SuperscriptOffset: 31.5 + SubscriptOffset: -4.2000003 + SubSize: 0.5 + Underline: -4.2000003 + UnderlineThickness: 2.1000001 + strikethrough: 7.6363635 + strikethroughThickness: 2.1000001 + TabWidth: 114.375 + Padding: 5 + AtlasWidth: 512 + AtlasHeight: 512 + atlas: {fileID: 28974264394003402} + m_AtlasWidth: 512 + m_AtlasHeight: 512 + m_AtlasPadding: 5 + m_AtlasRenderMode: 16426 + m_glyphInfoList: + - id: 32 + x: 6 + y: 517 + width: 11.4375 + height: 42 + xOffset: 0 + yOffset: 31.5 + xAdvance: 11.4375 + scale: 1 + - id: 33 + x: 64 + y: 433 + width: 3.4374998 + height: 30.249998 + xOffset: 2.3749998 + yOffset: 30.249998 + xAdvance: 9.25 + scale: 1 + - id: 34 + x: 353 + y: 109 + width: 9.937499 + height: 5.8749995 + xOffset: 2.4374998 + yOffset: 30.249998 + xAdvance: 15.625 + scale: 1 + - id: 35 + x: 423 + y: 475 + width: 31.062498 + height: 30.187498 + xOffset: 1.3124999 + yOffset: 30.249998 + xAdvance: 33.5 + scale: 1 + - id: 36 + x: 79 + y: 430 + width: 30.562498 + height: 39.874996 + xOffset: 1.3749999 + yOffset: 35.124996 + xAdvance: 33.125 + scale: 1 + - id: 37 + x: 234 + y: 475 + width: 37.124996 + height: 30.374998 + xOffset: 1.9999999 + yOffset: 30.312498 + xAdvance: 40.5625 + scale: 1 + - id: 38 + x: 283 + y: 475 + width: 36.124996 + height: 30.187498 + xOffset: 2.1874998 + yOffset: 30.249998 + xAdvance: 39.375 + scale: 1 + - id: 39 + x: 446 + y: 92 + width: 3.4374998 + height: 5.8749995 + xOffset: 2.4374998 + yOffset: 30.249998 + xAdvance: 9.4375 + scale: 1 + - id: 40 + x: 192 + y: 14 + width: 6.3124995 + height: 30.249998 + xOffset: 2.1249998 + yOffset: 30.249998 + xAdvance: 11.625 + scale: 1 + - id: 41 + x: 204 + y: 56 + width: 6.2499995 + height: 30.249998 + xOffset: 2.3124998 + yOffset: 30.249998 + xAdvance: 11.6875 + scale: 1 + - id: 42 + x: 376 + y: 74 + width: 17.812498 + height: 16.937498 + xOffset: 0.99999994 + yOffset: 30.249998 + xAdvance: 20.625 + scale: 1 + - id: 43 + x: 376 + y: 46 + width: 16.437498 + height: 16.374998 + xOffset: 0.68749994 + yOffset: 20.624998 + xAdvance: 18.1875 + scale: 1 + - id: 44 + x: 502 + y: 106 + width: 3.4374998 + height: 8.937499 + xOffset: 2.2499998 + yOffset: 3.4999998 + xAdvance: 8.125 + scale: 1 + - id: 45 + x: 405 + y: 81 + width: 16.374998 + height: 3.4374998 + xOffset: 2.4374998 + yOffset: 14.187499 + xAdvance: 21.6875 + scale: 1 + - id: 46 + x: 414 + y: 30 + width: 3.4374998 + height: 3.4374998 + xOffset: 2.2499998 + yOffset: 3.4999998 + xAdvance: 9 + scale: 1 + - id: 47 + x: 84 + y: 337 + width: 21.249998 + height: 30.249998 + xOffset: 0.24999999 + yOffset: 30.249998 + xAdvance: 21.875 + scale: 1 + - id: 48 + x: 218 + y: 380 + width: 30.562498 + height: 30.249998 + xOffset: 2.3749998 + yOffset: 30.249998 + xAdvance: 35 + scale: 1 + - id: 49 + x: 210 + y: 14 + width: 12.624999 + height: 30.249998 + xOffset: 0 + yOffset: 30.249998 + xAdvance: 16.4375 + scale: 1 + - id: 50 + x: 260 + y: 380 + width: 30.562498 + height: 30.312498 + xOffset: 2.3749998 + yOffset: 30.312498 + xAdvance: 34.875 + scale: 1 + - id: 51 + x: 302 + y: 380 + width: 30.562498 + height: 30.312498 + xOffset: 2.1874998 + yOffset: 30.312498 + xAdvance: 34.6875 + scale: 1 + - id: 52 + x: 168 + y: 98 + width: 29.249998 + height: 30.312498 + xOffset: 0.24999999 + yOffset: 30.312498 + xAdvance: 30.6875 + scale: 1 + - id: 53 + x: 126 + y: 146 + width: 30.562498 + height: 30.312498 + xOffset: 2.3749998 + yOffset: 30.312498 + xAdvance: 34.875 + scale: 1 + - id: 54 + x: 126 + y: 104 + width: 30.562498 + height: 30.312498 + xOffset: 2.3749998 + yOffset: 30.312498 + xAdvance: 34.4375 + scale: 1 + - id: 55 + x: 234 + y: 14 + width: 25.249998 + height: 30.312498 + xOffset: 0.12499999 + yOffset: 30.312498 + xAdvance: 27.75 + scale: 1 + - id: 56 + x: 120 + y: 62 + width: 30.562498 + height: 30.312498 + xOffset: 2.3749998 + yOffset: 30.312498 + xAdvance: 35 + scale: 1 + - id: 57 + x: 162 + y: 56 + width: 30.562498 + height: 30.312498 + xOffset: 2.1249998 + yOffset: 30.312498 + xAdvance: 34.75 + scale: 1 + - id: 58 + x: 502 + y: 264 + width: 3.4374998 + height: 24.687498 + xOffset: 2.2499998 + yOffset: 24.749998 + xAdvance: 9 + scale: 1 + - id: 59 + x: 467 + y: 382 + width: 3.4374998 + height: 30.187498 + xOffset: 2.1249998 + yOffset: 24.749998 + xAdvance: 8.125 + scale: 1 + - id: 60 + x: 338 + y: 21 + width: 16.937498 + height: 23.499998 + xOffset: 0.18749999 + yOffset: 24.249998 + xAdvance: 19.875 + scale: 1 + - id: 61 + x: 281 + y: 103 + width: 21.687498 + height: 11.874999 + xOffset: 2.4374998 + yOffset: 18.187498 + xAdvance: 26.8125 + scale: 1 + - id: 62 + x: 348 + y: 57 + width: 16.874998 + height: 23.562498 + xOffset: 2.4374998 + yOffset: 24.124998 + xAdvance: 19.9375 + scale: 1 + - id: 63 + x: 322 + y: 338 + width: 26.812498 + height: 30.249998 + xOffset: 1.2499999 + yOffset: 30.249998 + xAdvance: 28.5 + scale: 1 + - id: 64 + x: 150 + y: 14 + width: 30.562498 + height: 30.249998 + xOffset: 2.3749998 + yOffset: 30.249998 + xAdvance: 34.875 + scale: 1 + - id: 65 + x: 238 + y: 338 + width: 30.249998 + height: 30.249998 + xOffset: 2.3749998 + yOffset: 30.249998 + xAdvance: 35.125 + scale: 1 + - id: 66 + x: 280 + y: 338 + width: 30.187498 + height: 30.249998 + xOffset: 2.4374998 + yOffset: 30.249998 + xAdvance: 34.9375 + scale: 1 + - id: 67 + x: 233 + y: 296 + width: 30.124998 + height: 30.249998 + xOffset: 2.3124998 + yOffset: 30.249998 + xAdvance: 34.5 + scale: 1 + - id: 68 + x: 275 + y: 296 + width: 30.249998 + height: 30.249998 + xOffset: 2.3749998 + yOffset: 30.249998 + xAdvance: 35 + scale: 1 + - id: 69 + x: 344 + y: 380 + width: 27.562498 + height: 30.249998 + xOffset: 2.3749998 + yOffset: 30.249998 + xAdvance: 32.1875 + scale: 1 + - id: 70 + x: 360 + y: 338 + width: 27.562498 + height: 30.249998 + xOffset: 2.3749998 + yOffset: 30.249998 + xAdvance: 30.375 + scale: 1 + - id: 71 + x: 317 + y: 296 + width: 30.187498 + height: 30.249998 + xOffset: 2.3124998 + yOffset: 30.249998 + xAdvance: 34.875 + scale: 1 + - id: 72 + x: 383 + y: 382 + width: 30.999998 + height: 30.249998 + xOffset: 2.3749998 + yOffset: 30.249998 + xAdvance: 35.75 + scale: 1 + - id: 73 + x: 502 + y: 342 + width: 3.4374998 + height: 30.249998 + xOffset: 2.3749998 + yOffset: 30.249998 + xAdvance: 9.25 + scale: 1 + - id: 74 + x: 425 + y: 382 + width: 30.249998 + height: 30.249998 + xOffset: 0.12499999 + yOffset: 30.249998 + xAdvance: 32.75 + scale: 1 + - id: 75 + x: 359 + y: 296 + width: 28.874998 + height: 30.249998 + xOffset: 2.3749998 + yOffset: 30.249998 + xAdvance: 33.5 + scale: 1 + - id: 76 + x: 399 + y: 340 + width: 30.249998 + height: 30.312498 + xOffset: 2.3749998 + yOffset: 30.312498 + xAdvance: 32.6875 + scale: 1 + - id: 77 + x: 331 + y: 475 + width: 34.437496 + height: 30.249998 + xOffset: 2.3124998 + yOffset: 30.249998 + xAdvance: 39 + scale: 1 + - id: 78 + x: 399 + y: 298 + width: 30.187498 + height: 30.249998 + xOffset: 2.3124998 + yOffset: 30.249998 + xAdvance: 34.9375 + scale: 1 + - id: 79 + x: 441 + y: 293 + width: 30.249998 + height: 30.249998 + xOffset: 2.2499998 + yOffset: 30.249998 + xAdvance: 34.75 + scale: 1 + - id: 80 + x: 247 + y: 254 + width: 30.187498 + height: 30.187498 + xOffset: 2.3124998 + yOffset: 30.249998 + xAdvance: 33.25 + scale: 1 + - id: 81 + x: 377 + y: 475 + width: 34.187496 + height: 30.249998 + xOffset: 2.2499998 + yOffset: 30.249998 + xAdvance: 37.125 + scale: 1 + - id: 82 + x: 289 + y: 254 + width: 30.249998 + height: 30.187498 + xOffset: 2.2499998 + yOffset: 30.249998 + xAdvance: 34.625 + scale: 1 + - id: 83 + x: 331 + y: 254 + width: 30.249998 + height: 30.249998 + xOffset: 2.1249998 + yOffset: 30.249998 + xAdvance: 34.5 + scale: 1 + - id: 84 + x: 373 + y: 254 + width: 30.249998 + height: 30.249998 + xOffset: 0.81249994 + yOffset: 30.249998 + xAdvance: 31.875 + scale: 1 + - id: 85 + x: 440 + y: 251 + width: 30.249998 + height: 30.249998 + xOffset: 2.2499998 + yOffset: 30.249998 + xAdvance: 34.75 + scale: 1 + - id: 86 + x: 184 + y: 475 + width: 38.874996 + height: 30.249998 + xOffset: 1.4374999 + yOffset: 30.249998 + xAdvance: 42.125 + scale: 1 + - id: 87 + x: 6 + y: 433 + width: 46.687496 + height: 30.249998 + xOffset: 1.4374999 + yOffset: 30.249998 + xAdvance: 49.5 + scale: 1 + - id: 88 + x: 256 + y: 170 + width: 29.812498 + height: 30.249998 + xOffset: 1.8749999 + yOffset: 30.249998 + xAdvance: 34.125 + scale: 1 + - id: 89 + x: 466 + y: 475 + width: 31.249998 + height: 30.249998 + xOffset: 0.68749994 + yOffset: 30.249998 + xAdvance: 33.875 + scale: 1 + - id: 90 + x: 253 + y: 212 + width: 30.249998 + height: 30.249998 + xOffset: 2.1249998 + yOffset: 30.249998 + xAdvance: 34.5 + scale: 1 + - id: 91 + x: 421 + y: 212 + width: 6.3124995 + height: 30.312498 + xOffset: 2.2499998 + yOffset: 30.312498 + xAdvance: 11.5625 + scale: 1 + - id: 92 + x: 482 + y: 384 + width: 21.249998 + height: 30.374998 + xOffset: 0.18749999 + yOffset: 30.499998 + xAdvance: 21.8125 + scale: 1 + - id: 93 + x: 294 + y: 61 + width: 6.3124995 + height: 30.312498 + xOffset: 2.1249998 + yOffset: 30.312498 + xAdvance: 11.5625 + scale: 1 + - id: 95 + x: 374 + y: 117 + width: 30.624998 + height: 3.4374998 + xOffset: 2.2499998 + yOffset: 0 + xAdvance: 34.75 + scale: 1 + - id: 96 + x: 353 + y: 92 + width: 4.8124995 + height: 5.8124995 + xOffset: 1.3124999 + yOffset: 42.499996 + xAdvance: 8.9375 + scale: 1 + - id: 97 + x: 166 + y: 341 + width: 24.812498 + height: 24.374998 + xOffset: 2.1249998 + yOffset: 24.374998 + xAdvance: 29.125 + scale: 1 + - id: 98 + x: 159 + y: 188 + width: 24.812498 + height: 32.312496 + xOffset: 2.2499998 + yOffset: 32.374996 + xAdvance: 28 + scale: 1 + - id: 99 + x: 202 + y: 342 + width: 24.812498 + height: 24.374998 + xOffset: 2.1249998 + yOffset: 24.374998 + xAdvance: 29.1875 + scale: 1 + - id: 100 + x: 374 + y: 168 + width: 24.874998 + height: 32.312496 + xOffset: 0.93749994 + yOffset: 32.374996 + xAdvance: 28 + scale: 1 + - id: 101 + x: 471 + y: 170 + width: 24.812498 + height: 24.374998 + xOffset: 2.1249998 + yOffset: 24.374998 + xAdvance: 29.0625 + scale: 1 + - id: 102 + x: 415 + y: 254 + width: 13.937499 + height: 32.312496 + xOffset: 2.1874998 + yOffset: 32.374996 + xAdvance: 17.125 + scale: 1 + - id: 103 + x: 271 + y: 11 + width: 24.749998 + height: 33.999996 + xOffset: 1.6874999 + yOffset: 24.374998 + xAdvance: 28.6875 + scale: 1 + - id: 104 + x: 410 + y: 168 + width: 24.812498 + height: 32.312496 + xOffset: 2.2499998 + yOffset: 32.374996 + xAdvance: 28.0625 + scale: 1 + - id: 105 + x: 502 + y: 126 + width: 3.4374998 + height: 32.312496 + xOffset: 2.1249998 + yOffset: 32.374996 + xAdvance: 8.75 + scale: 1 + - id: 106 + x: 49 + y: 379 + width: 15.437499 + height: 42.499996 + xOffset: -7.8749995 + yOffset: 32.374996 + xAdvance: 10.0625 + scale: 1 + - id: 107 + x: 281 + y: 126 + width: 24.312498 + height: 32.312496 + xOffset: 2.2499998 + yOffset: 32.374996 + xAdvance: 27.125 + scale: 1 + - id: 108 + x: 353 + y: 126 + width: 9.187499 + height: 32.312496 + xOffset: 2.1249998 + yOffset: 32.374996 + xAdvance: 12.6875 + scale: 1 + - id: 109 + x: 117 + y: 339 + width: 37.249996 + height: 24.374998 + xOffset: 2.2499998 + yOffset: 24.374998 + xAdvance: 41.0625 + scale: 1 + - id: 110 + x: 374 + y: 132 + width: 24.812498 + height: 24.374998 + xOffset: 2.2499998 + yOffset: 24.374998 + xAdvance: 29.25 + scale: 1 + - id: 111 + x: 410 + y: 132 + width: 24.812498 + height: 24.374998 + xOffset: 2.1249998 + yOffset: 24.374998 + xAdvance: 29.0625 + scale: 1 + - id: 112 + x: 222 + y: 56 + width: 24.812498 + height: 34.062496 + xOffset: 2.2499998 + yOffset: 24.374998 + xAdvance: 27.875 + scale: 1 + - id: 113 + x: 258 + y: 56 + width: 24.874998 + height: 34.062496 + xOffset: 0.81249994 + yOffset: 24.374998 + xAdvance: 27.875 + scale: 1 + - id: 114 + x: 416 + y: 96 + width: 18.749998 + height: 24.374998 + xOffset: 2.1249998 + yOffset: 24.374998 + xAdvance: 21.5 + scale: 1 + - id: 115 + x: 466 + y: 134 + width: 24.812498 + height: 24.374998 + xOffset: 1.9999999 + yOffset: 24.374998 + xAdvance: 28.8125 + scale: 1 + - id: 116 + x: 446 + y: 171 + width: 13.937499 + height: 32.312496 + xOffset: 2.1874998 + yOffset: 32.374996 + xAdvance: 17.25 + scale: 1 + - id: 117 + x: 466 + y: 98 + width: 24.812498 + height: 24.374998 + xOffset: 2.1874998 + yOffset: 24.374998 + xAdvance: 29.1875 + scale: 1 + - id: 118 + x: 439 + y: 215 + width: 30.937498 + height: 24.374998 + xOffset: 0.87499994 + yOffset: 24.374998 + xAdvance: 33.1875 + scale: 1 + - id: 119 + x: 130 + y: 481 + width: 42.437496 + height: 24.374998 + xOffset: 1.4374999 + yOffset: 24.374998 + xAdvance: 45 + scale: 1 + - id: 120 + x: 317 + y: 92 + width: 24.874998 + height: 24.374998 + xOffset: 1.8749999 + yOffset: 24.374998 + xAdvance: 29.0625 + scale: 1 + - id: 121 + x: 481 + y: 206 + width: 24.812498 + height: 33.937496 + xOffset: 1.7499999 + yOffset: 24.312498 + xAdvance: 28.75 + scale: 1 + - id: 122 + x: 312 + y: 56 + width: 24.812498 + height: 24.374998 + xOffset: 2.2499998 + yOffset: 24.374998 + xAdvance: 29.3125 + scale: 1 + - id: 123 + x: 482 + y: 251 + width: 8.312499 + height: 30.249998 + xOffset: 0.93749994 + yOffset: 30.249998 + xAdvance: 12.125 + scale: 1 + - id: 124 + x: 165 + y: 287 + width: 3.4374998 + height: 40.187496 + xOffset: 2.2499998 + yOffset: 35.374996 + xAdvance: 9 + scale: 1 + - id: 125 + x: 446 + y: 129 + width: 8.249999 + height: 30.249998 + xOffset: 2.1249998 + yOffset: 30.249998 + xAdvance: 12.125 + scale: 1 + - id: 126 + x: 405 + y: 65 + width: 14.249999 + height: 4.5624995 + xOffset: 0.99999994 + yOffset: 14.874999 + xAdvance: 16.9375 + scale: 1 + - id: 161 + x: 502 + y: 300 + width: 3.4374998 + height: 30.562498 + xOffset: 2.1874998 + yOffset: 30.624998 + xAdvance: 8.8125 + scale: 1 + - id: 162 + x: 48 + y: 55 + width: 24.687498 + height: 35.312496 + xOffset: 1.3749999 + yOffset: 30.499998 + xAdvance: 26.6875 + scale: 1 + - id: 163 + x: 297 + y: 170 + width: 27.374998 + height: 30.249998 + xOffset: 1.6249999 + yOffset: 30.249998 + xAdvance: 30.8125 + scale: 1 + - id: 168 + x: 392 + y: 30 + width: 10.999999 + height: 3.4374998 + xOffset: 2.2499998 + yOffset: 40.124996 + xAdvance: 16.1875 + scale: 1 + - id: 176 + x: 366 + y: 21 + width: 14.187499 + height: 13.749999 + xOffset: 1.8749999 + yOffset: 30.624998 + xAdvance: 18.4375 + scale: 1 + - id: 180 + x: 406 + y: 13 + width: 4.8124995 + height: 5.8124995 + xOffset: 1.3749999 + yOffset: 42.499996 + xAdvance: 8.9375 + scale: 1 + - id: 182 + x: 295 + y: 212 + width: 30.499998 + height: 30.562498 + xOffset: 2.3124998 + yOffset: 30.562498 + xAdvance: 35 + scale: 1 + - id: 184 + x: 422 + y: 13 + width: 4.8124995 + height: 5.8749995 + xOffset: 1.3749999 + yOffset: -1.3124999 + xAdvance: 8.9375 + scale: 1 + - id: 191 + x: 336 + y: 170 + width: 26.749998 + height: 30.874998 + xOffset: 0.74999994 + yOffset: 30.624998 + xAdvance: 28.375 + scale: 1 + - id: 192 + x: 6 + y: 325 + width: 30.249998 + height: 42.187496 + xOffset: 2.3749998 + yOffset: 42.187496 + xAdvance: 35.125 + scale: 1 + - id: 193 + x: 6 + y: 271 + width: 30.249998 + height: 42.124996 + xOffset: 2.3749998 + yOffset: 42.187496 + xAdvance: 35.125 + scale: 1 + - id: 194 + x: 48 + y: 102 + width: 30.249998 + height: 41.187496 + xOffset: 2.3749998 + yOffset: 41.249996 + xAdvance: 35.125 + scale: 1 + - id: 195 + x: 121 + y: 428 + width: 30.249998 + height: 41.562496 + xOffset: 2.3749998 + yOffset: 41.562496 + xAdvance: 35.125 + scale: 1 + - id: 196 + x: 76 + y: 379 + width: 30.249998 + height: 39.374996 + xOffset: 2.3749998 + yOffset: 39.374996 + xAdvance: 35.125 + scale: 1 + - id: 197 + x: 118 + y: 375 + width: 30.249998 + height: 41.187496 + xOffset: 2.3749998 + yOffset: 41.249996 + xAdvance: 35.125 + scale: 1 + - id: 198 + x: 6 + y: 475 + width: 54.437496 + height: 30.249998 + xOffset: 2.2499998 + yOffset: 30.249998 + xAdvance: 57.75 + scale: 1 + - id: 199 + x: 183 + y: 427 + width: 30.124998 + height: 36.062496 + xOffset: 2.3124998 + yOffset: 30.249998 + xAdvance: 34.5 + scale: 1 + - id: 200 + x: 48 + y: 209 + width: 27.562498 + height: 42.187496 + xOffset: 2.3749998 + yOffset: 42.187496 + xAdvance: 32.1875 + scale: 1 + - id: 201 + x: 48 + y: 155 + width: 27.562498 + height: 42.187496 + xOffset: 2.3749998 + yOffset: 42.187496 + xAdvance: 32.1875 + scale: 1 + - id: 202 + x: 84 + y: 284 + width: 27.562498 + height: 41.187496 + xOffset: 2.3749998 + yOffset: 41.249996 + xAdvance: 32.1875 + scale: 1 + - id: 203 + x: 435 + y: 424 + width: 27.562498 + height: 39.749996 + xOffset: 2.3749998 + yOffset: 39.812496 + xAdvance: 32.1875 + scale: 1 + - id: 204 + x: 159 + y: 232 + width: 4.8124995 + height: 42.187496 + xOffset: 1.4999999 + yOffset: 42.187496 + xAdvance: 9.25 + scale: 1 + - id: 205 + x: 175 + y: 233 + width: 4.8124995 + height: 42.187496 + xOffset: 1.4999999 + yOffset: 42.187496 + xAdvance: 9.25 + scale: 1 + - id: 206 + x: 163 + y: 428 + width: 8.437499 + height: 41.187496 + xOffset: -0.56249994 + yOffset: 41.249996 + xAdvance: 9.25 + scale: 1 + - id: 207 + x: 160 + y: 377 + width: 10.999999 + height: 39.749996 + xOffset: -1.2499999 + yOffset: 39.812496 + xAdvance: 9.25 + scale: 1 + - id: 209 + x: 123 + y: 286 + width: 30.187498 + height: 41.562496 + xOffset: 2.3124998 + yOffset: 41.562496 + xAdvance: 34.9375 + scale: 1 + - id: 210 + x: 6 + y: 217 + width: 30.249998 + height: 42.187496 + xOffset: 2.2499998 + yOffset: 42.187496 + xAdvance: 34.75 + scale: 1 + - id: 211 + x: 6 + y: 163 + width: 30.249998 + height: 42.187496 + xOffset: 2.2499998 + yOffset: 42.187496 + xAdvance: 34.75 + scale: 1 + - id: 212 + x: 225 + y: 422 + width: 30.249998 + height: 41.187496 + xOffset: 2.2499998 + yOffset: 41.249996 + xAdvance: 34.75 + scale: 1 + - id: 213 + x: 267 + y: 422 + width: 30.249998 + height: 41.562496 + xOffset: 2.2499998 + yOffset: 41.562496 + xAdvance: 34.75 + scale: 1 + - id: 214 + x: 351 + y: 424 + width: 30.249998 + height: 39.749996 + xOffset: 2.2499998 + yOffset: 39.812496 + xAdvance: 34.75 + scale: 1 + - id: 215 + x: 87 + y: 157 + width: 17.812498 + height: 17.249998 + xOffset: 2.1874998 + yOffset: 21.312498 + xAdvance: 22.9375 + scale: 1 + - id: 217 + x: 6 + y: 109 + width: 30.249998 + height: 42.187496 + xOffset: 2.2499998 + yOffset: 42.187496 + xAdvance: 34.75 + scale: 1 + - id: 218 + x: 6 + y: 55 + width: 30.249998 + height: 42.187496 + xOffset: 2.2499998 + yOffset: 42.187496 + xAdvance: 34.75 + scale: 1 + - id: 219 + x: 309 + y: 422 + width: 30.249998 + height: 41.187496 + xOffset: 2.2499998 + yOffset: 41.249996 + xAdvance: 34.75 + scale: 1 + - id: 220 + x: 393 + y: 424 + width: 30.249998 + height: 39.749996 + xOffset: 2.2499998 + yOffset: 39.812496 + xAdvance: 34.75 + scale: 1 + - id: 221 + x: 6 + y: 379 + width: 31.249998 + height: 42.187496 + xOffset: 0.68749994 + yOffset: 42.187496 + xAdvance: 33.875 + scale: 1 + - id: 223 + x: 337 + y: 212 + width: 30.562498 + height: 30.562498 + xOffset: 2.3749998 + yOffset: 30.624998 + xAdvance: 35 + scale: 1 + - id: 224 + x: 6 + y: 6 + width: 24.812498 + height: 37.874996 + xOffset: 2.1249998 + yOffset: 37.937496 + xAdvance: 30.4375 + scale: 1 + - id: 225 + x: 42 + y: 6 + width: 24.812498 + height: 37.874996 + xOffset: 2.1249998 + yOffset: 37.937496 + xAdvance: 30.4375 + scale: 1 + - id: 226 + x: 168 + y: 140 + width: 24.812498 + height: 36.937496 + xOffset: 2.1249998 + yOffset: 36.999996 + xAdvance: 30.4375 + scale: 1 + - id: 227 + x: 78 + y: 6 + width: 24.812498 + height: 37.187496 + xOffset: 2.1249998 + yOffset: 37.249996 + xAdvance: 30.4375 + scale: 1 + - id: 228 + x: 84 + y: 55 + width: 24.812498 + height: 35.499996 + xOffset: 2.1249998 + yOffset: 35.499996 + xAdvance: 30.4375 + scale: 1 + - id: 229 + x: 180 + y: 293 + width: 24.812498 + height: 36.874996 + xOffset: 2.1249998 + yOffset: 36.937496 + xAdvance: 30.4375 + scale: 1 + - id: 230 + x: 72 + y: 481 + width: 46.062496 + height: 24.374998 + xOffset: 2.1874998 + yOffset: 24.374998 + xAdvance: 49.5 + scale: 1 + - id: 231 + x: 317 + y: 128 + width: 24.812498 + height: 30.187498 + xOffset: 2.1249998 + yOffset: 24.374998 + xAdvance: 29.125 + scale: 1 + - id: 232 + x: 114 + y: 6 + width: 24.812498 + height: 37.874996 + xOffset: 2.1249998 + yOffset: 37.937496 + xAdvance: 26.8125 + scale: 1 + - id: 233 + x: 474 + y: 426 + width: 24.812498 + height: 37.937496 + xOffset: 2.1249998 + yOffset: 37.937496 + xAdvance: 26.8125 + scale: 1 + - id: 234 + x: 191 + y: 245 + width: 24.812498 + height: 36.937496 + xOffset: 2.1249998 + yOffset: 36.999996 + xAdvance: 26.8125 + scale: 1 + - id: 235 + x: 209 + y: 102 + width: 24.812498 + height: 35.499996 + xOffset: 2.1249998 + yOffset: 35.499996 + xAdvance: 26.8125 + scale: 1 + - id: 236 + x: 216 + y: 293 + width: 5.1249995 + height: 37.937496 + xOffset: 0.62499994 + yOffset: 37.937496 + xAdvance: 9 + scale: 1 + - id: 237 + x: 240 + y: 149 + width: 4.8124995 + height: 37.874996 + xOffset: 1.9999999 + yOffset: 37.937496 + xAdvance: 9 + scale: 1 + - id: 238 + x: 227 + y: 245 + width: 8.437499 + height: 36.937496 + xOffset: -0.68749994 + yOffset: 36.999996 + xAdvance: 9 + scale: 1 + - id: 239 + x: 231 + y: 198 + width: 10.999999 + height: 35.562496 + xOffset: -1.3749999 + yOffset: 35.624996 + xAdvance: 9 + scale: 1 + - id: 241 + x: 182 + y: 378 + width: 24.812498 + height: 37.187496 + xOffset: 2.2499998 + yOffset: 37.187496 + xAdvance: 29.75 + scale: 1 + - id: 242 + x: 87 + y: 235 + width: 24.812498 + height: 37.937496 + xOffset: 2.1249998 + yOffset: 37.937496 + xAdvance: 29.0625 + scale: 1 + - id: 243 + x: 123 + y: 237 + width: 24.812498 + height: 37.937496 + xOffset: 2.1249998 + yOffset: 37.937496 + xAdvance: 29.0625 + scale: 1 + - id: 244 + x: 195 + y: 197 + width: 24.812498 + height: 36.937496 + xOffset: 2.1249998 + yOffset: 36.999996 + xAdvance: 29.0625 + scale: 1 + - id: 245 + x: 87 + y: 186 + width: 24.812498 + height: 37.187496 + xOffset: 2.1249998 + yOffset: 37.187496 + xAdvance: 29.0625 + scale: 1 + - id: 246 + x: 441 + y: 335 + width: 24.812498 + height: 35.562496 + xOffset: 2.1249998 + yOffset: 35.624996 + xAdvance: 29.0625 + scale: 1 + - id: 247 + x: 307 + y: 20 + width: 19.937498 + height: 24.249998 + xOffset: 0.74999994 + yOffset: 24.374998 + xAdvance: 21.3125 + scale: 1 + - id: 249 + x: 123 + y: 188 + width: 24.812498 + height: 37.937496 + xOffset: 2.1874998 + yOffset: 37.937496 + xAdvance: 29.1875 + scale: 1 + - id: 250 + x: 90 + y: 108 + width: 24.812498 + height: 37.937496 + xOffset: 2.1874998 + yOffset: 37.937496 + xAdvance: 29.1875 + scale: 1 + - id: 251 + x: 204 + y: 149 + width: 24.812498 + height: 36.999996 + xOffset: 2.1874998 + yOffset: 37.062496 + xAdvance: 29.1875 + scale: 1 + - id: 252 + x: 245 + y: 102 + width: 24.812498 + height: 35.499996 + xOffset: 2.1874998 + yOffset: 35.499996 + xAdvance: 29.1875 + scale: 1 + - id: 253 + x: 48 + y: 320 + width: 24.812498 + height: 47.624996 + xOffset: 1.7499999 + yOffset: 37.937496 + xAdvance: 28.875 + scale: 1 + - id: 255 + x: 48 + y: 263 + width: 24.812498 + height: 45.249996 + xOffset: 1.7499999 + yOffset: 35.624996 + xAdvance: 28.875 + scale: 1 + - id: 8211 + x: 338 + y: 6 + width: 25.249998 + height: 3.4374998 + xOffset: 2.2499998 + yOffset: 14.124999 + xAdvance: 29.75 + scale: 1 + - id: 8212 + x: 374 + y: 102 + width: 30.312498 + height: 3.4374998 + xOffset: 2.2499998 + yOffset: 14.124999 + xAdvance: 34.5 + scale: 1 + - id: 8216 + x: 502 + y: 86 + width: 3.4999998 + height: 8.937499 + xOffset: 1.3749999 + yOffset: 30.124998 + xAdvance: 7.0625 + scale: 1 + - id: 8217 + x: 446 + y: 109 + width: 3.4374998 + height: 8.999999 + xOffset: 2.2499998 + yOffset: 30.312498 + xAdvance: 7 + scale: 1 + - id: 8220 + x: 404 + y: 45 + width: 10.999999 + height: 8.937499 + xOffset: 1.9374999 + yOffset: 30.062498 + xAdvance: 15.25 + scale: 1 + - id: 8221 + x: 256 + y: 150 + width: 11.062499 + height: 8.999999 + xOffset: 2.2499998 + yOffset: 30.312498 + xAdvance: 15.25 + scale: 1 + - id: 8226 + x: 477 + y: 367 + width: 3.4374998 + height: 3.3124998 + xOffset: 5.9999995 + yOffset: 16.937498 + xAdvance: 15.5625 + scale: 1 + - id: 8230 + x: 375 + y: 6 + width: 19.312498 + height: 3.4374998 + xOffset: 2.2499998 + yOffset: 3.4999998 + xAdvance: 24.125 + scale: 1 + - id: 8364 + x: 379 + y: 212 + width: 30.437498 + height: 30.312498 + xOffset: 1.4374999 + yOffset: 30.312498 + xAdvance: 33.5625 + scale: 1 + m_KerningTable: + kerningPairs: [] + m_FontFeatureTable: + m_GlyphPairAdjustmentRecords: [] + fallbackFontAssets: [] + m_FallbackFontAssetTable: [] + m_CreationSettings: + sourceFontFileName: + sourceFontFileGUID: b15471d1f905d4be4a0b18923063b3b8 + pointSizeSamplingMode: 0 + pointSize: 42 + padding: 5 + packingMode: 4 + atlasWidth: 512 + atlasHeight: 512 + characterSetSelectionMode: 1 + characterSequence: 32 - 126, 160 - 255, 8192 - 8303, 8364, 8482, 9633 + referencedFontAssetGUID: + referencedTextAssetGUID: + fontStyle: 0 + fontStyleModifier: 2 + renderMode: 6 + includeFontFeatures: 0 + m_FontWeightTable: + - regularTypeface: {fileID: 0} + italicTypeface: {fileID: 0} + - regularTypeface: {fileID: 0} + italicTypeface: {fileID: 0} + - regularTypeface: {fileID: 0} + italicTypeface: {fileID: 0} + - regularTypeface: {fileID: 0} + italicTypeface: {fileID: 0} + - regularTypeface: {fileID: 0} + italicTypeface: {fileID: 0} + - regularTypeface: {fileID: 0} + italicTypeface: {fileID: 0} + - regularTypeface: {fileID: 0} + italicTypeface: {fileID: 0} + - regularTypeface: {fileID: 0} + italicTypeface: {fileID: 0} + - regularTypeface: {fileID: 0} + italicTypeface: {fileID: 0} + - regularTypeface: {fileID: 0} + italicTypeface: {fileID: 0} + fontWeights: + - regularTypeface: {fileID: 0} + italicTypeface: {fileID: 0} + - regularTypeface: {fileID: 0} + italicTypeface: {fileID: 0} + - regularTypeface: {fileID: 0} + italicTypeface: {fileID: 0} + - regularTypeface: {fileID: 0} + italicTypeface: {fileID: 0} + - regularTypeface: {fileID: 0} + italicTypeface: {fileID: 0} + - regularTypeface: {fileID: 0} + italicTypeface: {fileID: 0} + - regularTypeface: {fileID: 0} + italicTypeface: {fileID: 0} + - regularTypeface: {fileID: 0} + italicTypeface: {fileID: 0} + - regularTypeface: {fileID: 0} + italicTypeface: {fileID: 0} + - regularTypeface: {fileID: 0} + italicTypeface: {fileID: 0} + normalStyle: 0 + normalSpacingOffset: 0 + boldStyle: 0.75 + boldSpacing: 7 + italicStyle: 35 + tabSize: 10 +--- !u!21 &21623678745554260 +Material: + serializedVersion: 6 + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_Name: Orbitron-Regular SDF Material + m_Shader: {fileID: 4800000, guid: 68e6db2ebdc24f95958faec2be5558d6, type: 3} + m_ShaderKeywords: + m_LightmapFlags: 4 + m_EnableInstancingVariants: 0 + m_DoubleSidedGI: 0 + m_CustomRenderQueue: -1 + stringTagMap: {} + disabledShaderPasses: [] + m_SavedProperties: + serializedVersion: 3 + m_TexEnvs: + - _BumpMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _Cube: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _FaceTex: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _MainTex: + m_Texture: {fileID: 28974264394003402} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _OutlineTex: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + m_Floats: + - _Ambient: 0.5 + - _Bevel: 0.5 + - _BevelClamp: 0 + - _BevelOffset: 0 + - _BevelRoundness: 0 + - _BevelWidth: 0 + - _BumpFace: 0 + - _BumpOutline: 0 + - _ColorMask: 15 + - _Diffuse: 0.5 + - _FaceDilate: 0 + - _FaceUVSpeedX: 0 + - _FaceUVSpeedY: 0 + - _GlowInner: 0.05 + - _GlowOffset: 0 + - _GlowOuter: 0.05 + - _GlowPower: 0.75 + - _GradientScale: 6 + - _LightAngle: 3.1416 + - _MaskSoftnessX: 0 + - _MaskSoftnessY: 0 + - _OutlineSoftness: 0 + - _OutlineUVSpeedX: 0 + - _OutlineUVSpeedY: 0 + - _OutlineWidth: 0 + - _PerspectiveFilter: 0.875 + - _Reflectivity: 10 + - _ScaleRatioA: 0.8333333 + - _ScaleRatioB: 0.6770833 + - _ScaleRatioC: 0.6770833 + - _ScaleX: 1 + - _ScaleY: 1 + - _ShaderFlags: 0 + - _SpecularPower: 2 + - _Stencil: 0 + - _StencilComp: 8 + - _StencilOp: 0 + - _StencilReadMask: 255 + - _StencilWriteMask: 255 + - _TextureHeight: 512 + - _TextureWidth: 512 + - _UnderlayDilate: 0 + - _UnderlayOffsetX: 0 + - _UnderlayOffsetY: 0 + - _UnderlaySoftness: 0 + - _VertexOffsetX: 0 + - _VertexOffsetY: 0 + - _WeightBold: 0.75 + - _WeightNormal: 0 + m_Colors: + - _ClipRect: {r: -32767, g: -32767, b: 32767, a: 32767} + - _EnvMatrixRotation: {r: 0, g: 0, b: 0, a: 0} + - _FaceColor: {r: 1, g: 1, b: 1, a: 1} + - _GlowColor: {r: 0, g: 1, b: 0, a: 0.5} + - _MaskCoord: {r: 0, g: 0, b: 32767, a: 32767} + - _OutlineColor: {r: 0, g: 0, b: 0, a: 1} + - _ReflectFaceColor: {r: 0, g: 0, b: 0, a: 1} + - _ReflectOutlineColor: {r: 0, g: 0, b: 0, a: 1} + - _SpecularColor: {r: 1, g: 1, b: 1, a: 1} + - _UnderlayColor: {r: 0, g: 0, b: 0, a: 0.5} +--- !u!28 &28974264394003402 +Texture2D: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_Name: Orbitron-Regular SDF Atlas + m_ImageContentsHash: + serializedVersion: 2 + Hash: 00000000000000000000000000000000 + m_ForcedFallbackFormat: 4 + m_DownscaleFallback: 0 + serializedVersion: 2 + m_Width: 512 + m_Height: 512 + m_CompleteImageSize: 262144 + m_TextureFormat: 1 + m_MipCount: 1 + m_IsReadable: 0 + m_StreamingMipmaps: 0 + m_StreamingMipmapsPriority: 0 + m_AlphaIsTransparency: 0 + m_ImageCount: 1 + m_TextureDimension: 2 + m_TextureSettings: + serializedVersion: 2 + m_FilterMode: 1 + m_Aniso: 1 + m_MipBias: 0 + m_WrapU: 0 + m_WrapV: 0 + m_WrapW: 0 + m_LightmapFormat: 0 + m_ColorSpace: 0 + image data: 262144 + _typelessdata: 0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000030b0f0f0f0f0f0d07000000000000000000000000000000000000040b0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0d0700000000000000000000060c10121212121212121212121212121212121212121212121212121212121212121212121212121212121212110e0600000000000000000000000000000000090f12121212100a010000000000000000000000030c11121212120f08000000000000000000000000000000000000000000000000000000000000000000080d0f0f0f0f0f0d07000000000000000000000000000000000000000000000000000000060d10100b020000000000000000000000000000000000060c10121212121212100c06000000000000000000000000000002080c0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0d0a0400000000000000000000000000000000030b0f0f0f0f0f0d0600000000000000000000000000000000000000000000030b0f0f0f0f0f0d070000000000000000000004090d0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0c050000000000000000020a0e0e0e0e0e0b05000000000000080d0e0e0e0e0d080000000000000000000000000000000000000000000000000000000000000000040b0f0f0f0f0f0c06000000000000000000000000000000000000000000000000000000000a161f2425252525221a0f020000000000000000000000000000000b17202425252525252525252525252525252525252525252525252525252525221a0f0200000000000007111a21252727272727272727272727272727272727272727272727272727272727272727272727272727272727272722190c0000000000000000000000000004111d2427272727251e130500000000000000000008151f2627272727231b0f01000000000000000000000000000000000000000000000000000000000003111b222525252525221a0f020000000000000000000000000000000000000000000000000e1a2226251f1508000000000000000000000000000007111a202527272727272725211a120800000000000000000000040e161d2123232323232323232323232323232323232323232323221f1911070000070f1414100900000000000a161f2425252524211a0e01000000000000000000000000000000000000000a161f2425252525221a0f02000000000000050f181e222525252525252525252525252525252525252525252525252525252525252420180c00000000000009151e232323232320180d00000005121c2223232323221c120500000000000000000000000000000000000000000000000000000000000a161f242525252421190e000000000000000000000000000000000000000000000000000009192733393a3a3a3a362d201000000000000000000000000000000b1b2934393a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a362d201000000000000c19242e353a3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c362a1c0b00000000000000000000000112222f393c3c3c3c393023140300000000000000061726323a3c3c3c3c372d1f0e000000000000000000000000000000000000000000000000000000000112212e373a3a3a3a3a362d201000000000000000000000000000000000000000000000000e1e2c363b393226180b0000000000000000000000000c19242d353a3c3c3c3c3c3c3a352e251a0d00000000000000000916212a31363838383838383838383838383838383838383838383837332c24190d101a232929251c0f01000009192733393a3a3a3a362c1f0f00000000000000000000000000000000000009192733393a3a3a3a362d201000000000000a17222b33373a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a39342a1c0c00000000091927323838383838342b1e0e000414232f3738383838372f2314040000000000000000000000000000000000000000000000000000000a1a2833393a3a3a3a352b1e0e00000000000000000000000000000000000000000000000000142637454e4f4f4f4f4a3e2e1c0900000000000000000000000003162839474e4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4a3e2e1c090000000e1d2a3741494f52525252525252525252525252525252525252525252525252525252525252525252525252525252525251483a291603000000000000000000000b1e30404c525252524d4132200d00000000000000112335444f525252514a3d2c1a060000000000000000000000000000000000000000000000000000000c1e303f4b4f4f4f4f4f4a3e2e1d0a00000000000000000000000000000000000000000006192b3c49504e4436281b0d000000000000000000000d1c2a3640494e5152525252514f4941372b1e0f0000000000000a1927333d454b4e4e4e4e4e4e4e4e4e4e4e4e4e4e4e4e4e4e4e4e4e4e4c4840362a1d222d373e3f382d1f0e0000142637454e4f4f4f4f493d2d1b080000000000000000000000000000000000142637454e4f4f4f4f4a3e2e1c090000000b1a28343e474c4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4e473a291704000001142737454d4e4e4e4e483c2c1b080e2132414b4e4e4e4e4b4132210e000000000000000000000000000000000000000000000000000002152738464e4f4f4f4f493c2c1a060000000000000000000000000000000000000000000000001b30435562646464645c4b382410000000000000000000000000091e32465763646464646464646464646464646464646464646464646464646464645c4b38241000000b1c2c3b48545d64676767676767676767676767676767676767676767676767676767676767676767676767676767676767655846321d090000000000000000000013273a4d5e676767675f4f3d2916020000000000061a2d405362676767665b4936220e00000000000000000000000000000000000000000000000000000416293b4e5d64646464645c4c3a27150200000000000000000000000000000000000000000c2135495a65615446392b1d1002000000000000000a1b2b3a48535d63666767676766645d54493c2d1d0d00000000081928374550596063636363636363636363636363636363636363636363615c53483b2d353f4a53534b3d2b1805001b30435562646464645b4a37230f00000000000000000000000000000000071b30435562646464645c4b3824100000091a293846515b61646464646464646464646464646464646464646464646464646464646464635847331f0b0000081c30445561636363635a4a37240f162a3e505e636363635e503e2a160100000000000000000000000000000000000000000000000000081d31445663646464645a4936220d0000000000000000000000000000000000000000000000001f34495e737979797968533d28130000000000000000000000000c22374c61757979797979797979797979797979797979797979797979797979797968533d2813000417293a4a586670787c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c75604b36200b000000000000000000071b2e42566a7c7c7c7c6c5945311e0a00000000000f2236495c707c7c7c7965513e2a1602000000000000000000000000000000000000000000000000000f213346586a797979797969574432200d00000000000000000000000000000000000000000f243a4f6478726457493b2e20120400000000000416283949586570787b7c7c7c7c7b7871675a4b3b2a19060000021426374655626d7478787878787878787878787878787878787878787878767066594b3d47515c66685a48341f0b001f34495e737979797966513c2712000000000000000000000000000000000a1f34495e737979797968533d281300031527384756636e7679797979797979797979797979797979797979797979797979797979797976624d38230e00000b20354b5f737878787767533e2a161a2f44596d787878786d5945311c08000000000000000000000000000000000000000000000000000b20364b60747979797865503b26100000000000000000000000000000000000000000000000001f344a5f748b90907d68533e29130000000000000000000000000d22374c62778d90909090909090909090909090909090909090909090909090907d68533e2913000e213446586876848d92939393939393939393939393939393939393939393939393939393939393939393939393939393938c76604b36210b0000000000000000000f22364a5e728693938875614d3a26130000000004182b3e5165788c9393826d5945311d0900000000000000000000000000000000000000000000000007192c3e516375889090908673614f3d2a1805000000000000000000000000000000000000000f253a4f6479837467594c3e30221507000000000d213445576776838d9193939393918d847769594836231000000c1f324455647380898d8f8f8f8f8f8f8f8f8f8f8f8f8f8f8f8f8f8f8f8f8f8b837769594f5a646f7977624c37220d001f344a5f748b90907c67523c2712000000000000000000000000000000000a1f344a5f748b90907d68533e2913000c203244566574828a8f909090909090909090909090909090909090909090909090909090908f78634e38230e00000a2034495e72878f8f826d5944301c192e43576b808f8f88745f4b37230e000000000000000000000000000000000000000000000000000b21364b60768c90907b66503b26110000000000000000000000000000000000000000000000001f344a5f748ba0947d68533e29130000000000000000000000000d22374c62778da3a5a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3947d68533e291300162a3d5063758695a0a2a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1a2a8a8a8a4a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1a18c76604b36210b000000000000000003162a3e5265798da1a4917d6956422f1b080000000d2034475a6e8295a89c8974604d392511000000000000000000000000000000000000000000000000122436495b6d8093a5a1a3917d6c5947352210000000000000000000000000000000000000000f253a4f6479908577695c4e403325170a00000015293d5063758694918f8f8f8f8f8f9096887765533f2b18040014283b4e617283919da3a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a49f95887767626c76828c77624c37220d001f344a5f748ba0937c67523c2712000000000000000000000000000000000a1f344a5f748ba0947d68533e29130014283c4f617384929ea4a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a5a5a5a5a3a3a38f78634e38230e0000061b2f43576c80959c88735f4b362214283d5165798ea28f7a65513d29140a0a0a0a0904000000000000000000000000000000000000000b21364b60768ca1917b66503b26110000000000000000000000000000000000000000000000001f344a5f748ba0947d68533e29130000000000000000000000000d22374c62778da3958d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d7d68533e2913001b3044596d8093a4968d8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8d9caa9b8f8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c76604b36210b00000000000000000a1e3246596d8295a9ad9986725e4b37241000000216293c5063768a9eb1a4907c6854402c1905000000000000000000000000000000000000000000000a1c2f415366788b9e988c999c897664523f2d1b080000000000000000000000000000000000000f253a4f64799095887a6c5e514335271a0c00061b2f44586c80928b7c7878787878787b8995836f5b47321d09001a2f43576b7d91a1999190909090909090909090909090909090909090909096a396857275808a948d77624c37220d001f344a5f748ba0937c67523c2712000000000000000000000000000000000a1f344a5f748ba0947d68533e2913001a2e43576b8091a2988f8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8f95a2a4928d8d8d8d78634e38230e00000514293d5165798ea28e7965513d291f22364a5f73889c95826c58432f1f1f1f1f1f1e180e0100000000000000000000000000000000000b21364b60768ca1917b66503b26110000000000000000000000000000000000000000000000001f344a5f748ba0947d68533e29130000000000000000000000000d22374c62778da3907977777777777777777777777777777777777777777777777767523d2813001f34495e73889c9987797676767676767676767676767676767684999f8c7c7676767676767676767676767676767676767676715f4a35200b000000000000000012263a4e6175899db1b4a28e7a66533f2c1805000b1e3245596c8093a6b4ab9784705c4834200c000000000000000000000000000000000000000000021427394c5e7083969f8d7c8fa194826f5c4a3725130000000000000000000000000000000000000f253a4f647990a3988b7c6f615345382a1c0f091f34495d728897826d6363636363636a7d948a75604b36210c001e33485d72879b9b8a7c79797979797979797979797979797979797979797a8594a28f7c88929c928777624c37220d001f344a5f748ba0937c67523c2712000000000000000000000000000000000a1f344a5f748ba0947d68533e2913001e33485d71879b9a887a7777777777777777777777777777777777777777788495a28d7777777774624d38230e000515232e364b5f73889c95806c57433434343444586d82959b87725e4a353434343434322b1f1100000000000000000000000000000000000b21364b60768ca1917b66503b26110000000000000000000000000000000000000000000000001f344a5f748ba0947d68533e29130000000000000000000000000d22374c62778da390796462626262626262626262626262626262626262626262625a4a37240f001f344a5f748ba0947d696060606060606060606060606060606e84999b867060606060606060606060606060606060606060605f53422f1c0700000000000000061a2e4155697d91a59f9faa96836f5b4834210d0014273a4e6175889ca99fa29f8b77634f3b27140000000000000000000000000000000000000000000d1f324456697b8ea095827184969f8c79675542301d0b00000000000000000000000000000000000f243a4f64778693a19b8d80716356483a2d1f111f344a5f748b97826b564e4e4e4e53687d948d77624c37220d001f344a5f748ba094806b64646464646464646464646464646464646464646b768a9f9a919a958a8074695b4834200b001f344a5f748ba0937c67523c27120000000000020b10100d0600000000000a1f344a5f748ba0947d68533e2913001f344a5f748a9f947d6a626262626262626262626262626262626262626265788ea39079646262615645321e0a0011233341494a586d82969b87725d4a4a4a4a4a4a52667a8fa28d7864504a4a4a4a4a4a473d2f1e0b000000000000000000000000000000000b21364b60768ca1917b66503b26110000000000000000000000000000000000000000000000001f344a5f748ba0947d68533e29130e0e0e0e0e0e0e0e0e0e0e0e0e22374c62778da39079644f4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c473c2c1b08001f344a5f748ba0947d68534b4b4b4b4b4b4b4b4b4b4b4b4b586e84999b866f5a4b4b4b4b4b4b4b4b4b4b4b4b4b4b4b4b4b4b4b4a4235251300000000000000000e2235495d718599a18e8d9f9f8b7764503d2916091d3043576a7d91a59c8b91a4937d6a57432f1b070000000000000000000000000000000000000005172a3c4e617386989c8a7766798c9e9785725f4d3a281603000000000000000000000000000000000c21354859677583909e9d8f827366584b3d2f211f344a5f748b97826b564038383e53687d948d77624c37220d001f344a5f748ba0947d68534f4f4f4f4f4f4f4f4f4f4f4f4f4f4f57616a747d8892a2a3988d83776d62574c3d2c1905001f344a5f748ba0937c67523c27120000000008151f2526221a0e000000000a1f344a5f748ba0947d68533e2913001f344a5f748ba0947d68534c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c62778da39079644f4c4c4538281603001a2e41515d5f5f667a8fa18d78645f5f5f5f5f5f5f6074899d93806a5f5f5f5f5f5f5f5a4d3b2814000000000000000000000000000000000b21364b60768ca1917b66503b26110000000000000000000000000000000000000000000000001f344a5f748ba0947d68533e29232323232323232323232323232323374c62778da39079644f3a373737373737373737373737373737373737373737332b1e0e00001f344a5f748ba0947d68533e363636363636363636363643586e84999b866f5a44363636363636363636363636363636363636352f2517070000000000000002162a3d5165788da099868396a793806c5945311e1225394c5f73869aa79380899d9a86725e4a36230f0000000000000000000000000000000000000010223447596c7d91a392806d5c6e8293a28f7c6a574533200e0000000000000000000000000000000005182b3b49576472808e9ca0928476685b4d3f3224344a5f748b97826b56402b293e53687d948d77624c37220d001f344a5f748ba0947d68533e3a3a3a3a3a3a3a3a3a3b444e57616a747d88919ba2ab97867a70655a4f453a2e1f0f00001f344a5f748ba0937c67523c271200000007172632393b362c1e0e0000000a1f344a5f748ba0947d68533e2913001f344a5f748ba0947d68533e37373737373737373737373737373737374c62778da39079644f3a3732281a0a00001f34495d7074747474899d93807474747474747474747483979a8674747474747474746a57422d18030000000000000000000000000000000b21364b60768ca1917b66503b26110000000000000000000000000000000000000000000000001f344a5f748ba0947d68533e38383838383838383838383838383838384c62778da39079644f3a2522222222222222222222222222222222222222221f180d0000001f344a5f748ba0947d685348484848484848484848484848586e84999b866f5a484848484848484848484848484848484848484740332312000000000000000a1d3145596d8295a5917d7a8ea19c8875614d3a261b2e4155687b8fa29e8a778295a28e7966523e2a16020000000000000000000000000000000000081a2d3f516476899b99887562516476899b99887562503d2b1906000000000000000000000000000000000d1d2b39475462707d8c99a29487796b5d504234344a5f748b97826b564038383e53687d948d77624c37220d001f344a5f748ba0947d68533e292525252527313a444e57616a747d88919b988e8fa195806a5d53483d32281d100100001f344a5f748ba0937c67523c2712000005152535444e50493c2c1b0b00000a1f344a5f748ba0947d68533e2913001f344a5f748ba0947d68533e29222222222222222222222222222222374c62778da39079644f3a251e150a0000001f344a5f748b8b8b8b8d9e9a8b8b8b8b8b8b8b8b8b8b8b8b98a08f8b8b8b8b8b8b8b846e58432e19030000000000000000000000000000000b21364b60768ca1917b66503b26110000000000000000000000000000000000000000000000001f344a5f748ba0947d68534e4e4e4e4e4e4e4e4e4e4e4e4e4e4e4e4e4e4e62778da39079644f3a251d1d1d1d1d1d1d1d1d1d1d1d1d1d1d1b150d0d0d0a04000000001f344a5f748ba0947d685e5e5e5e5e5e5e5e5e5e5e5e5e5e5e6e84999b866f5e5e5e5e5e5e5e5e5e5e5e5e5e5e5e5e5e5e5e5e5c51412e1b060000000000001125394d6074899c9d8975728699a4917d6956422f23374a5d718598a895826e798da295826d5945321e0a00000000000000000000000000000000001325374a5c6f8294a28f7c6a5747596c7d91a392806d5a4836231100000000000000000000000000000000000d1b293644525f6d7b8997a4978a7b6e605244374a5f748b97826b564e4e4e4e53687d948d77624c37220d001f344a5f748ba0947d68533e29141e27313a444d57606a747d88919b988e857a899f95806a5440362b20150b000000001f344a5f748ba0937c67523c27120002122233435361655a4939291908000a1f344a5f748ba0947d68533e2913001f344a5f748ba0947d68533e29130d0d0d0d0d0d0d0d0d0d0d0d0d22374c62778da39079644f3a250f02000000001f344a5f748ba0a0a0a1aaa8a0a0a0a0a0a0a0a0a0a0a0a0a7ada2a0a0a0a0a0a099846e58432e19030000000000000000000000000000000b21364b60768ca1917b66503b26110000000000000000000000000000000000000000000000001f344a5f748ba0947d68636363636363636363636363636363636363636363778da39079644f3a3232323232323232323232323232323230281d0f000000000000001f344a5f748ba0947d737373737373737373737373737373737384999b867373737373737373737373737373737373737373736f5e4a35200b000000000006192d4155687c90a495826d697c90a49986725e4b372c3f5366798da09f8c786572869a9d8975614d392511000000000000000000000000000000000b1d30425467798c9e9785725f4d3c4e617386999c8a776553402e1b0900000000000000000000000000000000000b192634414f5d6b788694a29a8c7d70625547495d728897826d6363636363636a7d948a75604b36210c001f344a5f748ba0947d68533e2927313a444d57606a737d88919b988e857a7173899f95806a543f2a190e0300000000001f344a5f748ba0937c67523c2712001020304051617178675747372616060a1f344a5f748ba0947d68533e2913001f344a5f748ba0947d68533e29130000000000000000000000000d22374c62778da39079644f3a250f00000000001f344a5f748b9494949495a1a29594949494949494949494949ca798949494949494846e58432e19030000000000000000000000000000000e21364b60768ca1917b66503b26120100000000000000000000000000000000000000000000001f344a5f748ba0947d78787878787878787878787878787878787878787878788da39079644f4747474747474747474747474747474747443b2d1c0a0000000000001f344a5f748ba0968989898989898989898989898989898989898a9b9c8b89898989898989898989898989898989898989898976604b36210b00000000000d2135495c708498a08d79656174889ca28e7a66533f35485c6f8396a996836f5c6a7d92a4907c6854402d190500000000000000000000000000000315283a4d5f7184979f8c79675542324456697b8ea095826f5d4b382614010000000000000000000000000000000000081623313f4d5a687584919f9c8f827265574a586c80938b7c7878787878787b8995836f5b47321e09001f344a5f748ba0947d68533e303a444d57606a737d87909b988f857b71675e73899f95806a543f2a15000000000000001f344a5f748ba0937c67523c27120d1d2e3e4e5e6f8086756554443424140a1f344a5f748ba0947d68533e2913001f344a5f748ba0947d68533e29130000000000000000000000000d22374c62778da39079644f3a250f00000000001f344a5f747d7d7d7d7d83979b867d7d7d7d7d7d7d7d7d7d7d91a18c7d7d7d7d7d7d7d6d58432e19030000000000000000000000000000091a2c3d4e60768ca1917b665241301f0e00000000000000000000000000000000000000000000001f344a5f748ba0998f8f8f8f8f8f8f8f8f8f8f8f8f8f8f8f8f8f8f8f8f8f8f8f94a59079645c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c584b3a27130000000000001f344a5f748ba0a59f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9fa8a99f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f8c76604b36210b000000000115293d5064788ca09885705d586c8093a696836f5b483e5164778c9fa18d7a665363768b9f9884705c4834200c00000000000000000000000000000e203245576a7c8fa194826f5c4a3827394c5e7083969f8d7a685543311e0c000000000000000000000000000000060e15191b212f3c4a586573828f9d9f918375675a5063758695908f8f8f8f8f8f8f96887765533f2c1804001f344a5f748ba0947d68533e434d57606a737d87909a988f857b72685e545e73899f95806a543f2a15000000000000001f344a5f748ba0937c67523c27121b2b3b4c5c6c7c8d9383726252423121111f344a5f748ba0947d68533e2913001f344a5f748ba0947d68533e29130000000000000000000000000d22374c62778da39079644f3a250f00000000001c3145586668686868687c91a08c77686868686868686868768a9f917c68686868686862523f2b16010000000000000000000000000005162738495a6b7d8ea29382705f4e3d2c1a09000000000000000000000000000000000000000000001f344a5f748ba0a9a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a7a59079727272727272727272727272727272727272726956412d180300000000001f344a5f748b959595959595959595959595959595959595959596a1a2969595959595959595959595959595959595959da18c76604b36210b00000000091d3144586c8094a4907c69555063778a9e9f8b776450465a6d8294a89885715d4a5b6f83979f8c7763503c28140000000000000000000000000006182b3d50627487999c897664523f2d1c2f415466788b9e988572604e3b291604000000000000000000000000020e1922292e303030303a475563707d8d9aa19486776a5c576776838d9293939393928d857869594836231000001f344a5f748ba0947d68534d56606a737d87909a988f857b72685f554c485e73899c95806a543f2a15000000000000001f344a5f748ba0937c67523c271828394959697a8b9ba1918070604f3f2f1f1f344a5f748ba0947d68533e2913001f344a5f748ba0947d68533e29130000000000000000000000000d22374c62778da39079644f3a250f000000000015283a48525353535362768a9f927d69555353535353535b6f849898846f5b53535353504434220f0000000000000000000000000000122334455667788a9bac9f8e7d6b5a49382716050000000000000000000000000000000000000000001f344a5f748ba0998f8f8f8f8f8f8f8f8f8f8f8f8f8f8f8f8f8f8f8f8f8f8f8f94a69288888888888888888888888888888888888888846e58432e190300000000001f344a5f7480808080808080808080808080808080808080808084999b8680808080808080808080808080808080808093a18c76604b36210b000000001125384c6074889c9c8874604d475b6e8296a793806c584f6276899da28f7b68544154677b8fa393806b57432f1b08000000000000000000000000112335485a6d8092a391806c5a473522122437495c6e8293a2907d6b584633210f00000000000000000000000413202c363d434646464646464552606e7c8a97a496897a6d5f586670787c7c7c7c7c7c7972675a4b3b2b190600001f344a5f748ba0947d68566069737c87909a998f867b72685f554c4239485e73878787806a543f2a15000000000000001f344a5f748ba0937c67523c272636465767778898a4a29e8f7d6d5d4d3d2c1f344a5f748ba0947d68533e2913001f344a5f748ba0947d68533e29130000000000000000000000000d22374c62778da39079644f3a250f00000000000b1c2b363d3e3e3e475b6f84989884705b473e3e3e3e4055697d929e8a75614d3e3e3e3b33261705000000000000000000000000000d1e2f405163738596a7a4a89b8a786756453423120000000000000000000000000000000000000000001f344a5f748ba0947d78787878787878787878787878787878787878787878788da3a29d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d99846e58432e190300000000001d314558676a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6e84999b866f6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a7c93a18c76604b36210b00000005192c4054687b8fa394806c59453f5266798da19c887461586b8092a69986725f4c394c6074889c9b87725f4b37230f0000000000000000000000091b2e405365778a9c998774614f3d2a18071a2c3e516376899b9b887563513e2c1907000000000000000000031322313d4951585b5b5b5b5b5b5853505e6b798795a2998b7d6f61545d64676767676767645e55493c2d1d0d0000001f344a5f73889995806e69737c86909a998f867c72685f554c42392f32465a6c7070707065523d2814000000000000001f344a5f748ba0937c67523c2733445464748595a3928d9c9c8c7b6b5a4a3a2a344a5f748ba0947d68533e2913001f344a5f748ba0947d68533e29130000000000000000000000000d22374c62778da39079644f3a250f0000000000000d19232829292c4055697d929f8b76624e392929293a4e62778b9f917c68533f2b292720160800000000000000000000000000091a2b3c4d5e6f8092a39c8f97a79685736351402f1e0d00000000000000000000000000000000000000001f344a5f748ba0947d68636363636363636363636363636363636363636363778da39c97979797979797979797979797979797979797846e58432e1903000000000016293b495354545454545454545454545454545454545454586e84999b866f5a5454545454545454545454545454677c93a18c76604b36210b0000000c2034485c6f8497a08c7864503d374a5d718598a4907c696074889ba4907d6956433144586c8094a28e7a66523e2b1703000000000000000000011426384b5d6f8295a18f7c69574432200d000f213446596b7d90a393806d5b493624120000000000000000000f2131404f5b656c7070707070706d675d515b69768592a09b8e807164564f525252525252504a42382b1e0f000000001c3044586a7b89938d807d869099998f867c72695f564c42392f261c2b3d4e595b5b5b5b554735220f000000000000001f344a5f748ba0937c67523c31415161728393a395857d8f9f99897868584837344a5f748ba0947d68533e2913001f344a5f748ba0947d68533e29130000000000000000000000000d22374c62778da39079644f3a250f0000000000000007131e2426263a4e62778b9f917c6854402b262633485c70859997836e5a463226262521180b000000000000000000000004152637485a6b7c8d9ea08f7d8a9ba392806f5e4d3c2b1a09000000000000000000000000000000000000001f344a5f748ba0947d68534e4e4e4e4e4e4e4e4e4e4e4e4e4e4e4e4e4e4e62778da39082828282828282828282828282828282828282826e58432e190300000000000c1d2c373e3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f43586e84999b866f5a443f3f3f3f3f3f3f3f3f3f3f3f52677c93a18c76604b36210b00000114283c5063778b9f9884705c49352e4155697c90a3998672697c90a49b8874604d3a293d5165788da096826d5a46321e0a0000000000000000000c1e314355687a8d9f9684715f4c3a271503000517293c4e607386989e8b786653412f1c0a00000000000000081b2d3e4f5e6d7882868787878786837a6f615259667482909e9e90827466594b3d3c3c3c3c3b362f251a0e000000000015283b4d5d6b767d838994999990867c72695f564c43392f261c130e20303d44464646464237291806000000000000001f344a5f748ba0937c67523c3f4f5f6f8090a0988876708291a1978776655545354a5f748ba0947d68533e2913001f344a5f748ba0947d68533e29130000000000000000000000000d22374c62778da39079644f3a250f00000000000004152431393b3b3b485c70859997836f5b463b3b3b3b4155697d929e8a75614c3b3b3b3a34291b0a0000000000000000000011223344556677899aa39282707d8e9e9e8d7c6b5a48372615040000000000000000000000000000000000001f344a5f748ba0947d68533e38383838383838383838383838383838384c62778da390796b6b6b6b6b6b6b6b6b6b6b6b6b6b6b6b6b6b6b6453402b170200000000000b1c2b363d3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e43586e84999b866f5a443e3e3e3e3e3e3e3e3e3e3e3e52677c93a18c76604b36210b0000081c3044576b8093a3907c6854402d26394d6073889ba18e7a728699a5927d6b5744312135495d7185999d8975614d39261200000000000000000416293b4e607285989e8c796654422f1d0a0000000c1f314456687b8ea09683705e4c392714020000000000001124374a5c6d7c8a959b9b9b9b9b9b978d8070604e566371808d9ba0928577695b4e4032272725211b13080000000000000c1e2f3f4d59647585939990867c73695f564c433930261c13090002121f2a2f303030302d251a0b00000000000000001f344a5f748ba0937c67523c4c5d6d7d8e9e9a8a796962738494a49484736353424a5f748ba0947d68533e2913001f344a5f748ba0947d68533e29130000000000000000000000000d22374c62778da39079644f3a250f0000000000000e2133424d5050505055697d929e8a75615050505050505063778ca0907b67535050504f473928150200000000000000000c1d2e405161738495a6968574636f8091a29a89776655443322110000000000000000000000000000000000001f344a5f748ba0947d68533e29232323232323232323232323232323374c62778da3907964565656565656565656565656565656565656524636241000000000000015283a485253535353535353535353535353535353535353586e84999b866f5a5353535353535353535353535353677c93a18c76604b36210b00001024384b5f73879b9b8873604c39251d3144586b8092a696837a8fa29c8975624e3b281a2e4255697d92a5917c6955412d1905000000000000000f213446586b7d90a293826e5c4a37251200000000021427394c5e708395a08e7b695644311f0d000000000000172b405467798b938886868686868687908f7d6b584653616f7c8b98a39588796c5e504235271a0d07000000000000000000112133485c6f829392867c736960564c433930261d130a000000010b12161a1b1b1b1b1912080000000000000000001f344a5f748ba0937c67524a5a6a7a8b9c9d8d7c6c5b5565758697a291827060504a5f748ba0947d68533e2913001f344a5f748ba0947d68533e29130000000000000000000000000d22374c62778da39079644f3a250f000000000000152a3e5160666666666666778ca0907b67666666666666666671869a97836e66666666645745311d080000000000000008192a3b4c5d6e8091a2998977675662738495a695847361513f2e1d0c00000000000000000000000000000000001f344a5f748ba0947d68533e29130e0e0e0e0e0e0e0e0e0e0e0e0e22374c62778da39079644f40404040404040404040404040404040403e352818070000000000001c31455866686868686868686868686868686868686868686972869a9c87736968686868686868686868686868686d8093a08c76604b36210b0004182c3f53677a8fa393806c5844301d15283c4f63768a9e9f8b8497a793806c5946331f12263a4e62768a9e9885705c4835210d00000000000007192c3e516375889b9b897664513f2d1a0800000000000a1c2e415366788b9e988673614e3c2a170500000000001c31465a6f839786756f6f6f6f6f6f72829588735f4a43515f6c7a8896a3988a7c6e615345372a1c0e0100000000000000000e23384d62778b9f8f786960564d433930261d130a0000000003121e272b2b2b2b2b261e11020000000000000000001f344a5f748ba0937c675257687889999f8f806e5e4e4758687889999f8f7d6e5e4e5f748ba0947d68533e2913001f344a5f748ba0947d68533e29130000000000000000000000000d22374c62778da39079644f3a250f000000000000182e43586d7b7b7b7b7b7b7b869b97837b7b7b7b7b7b7b7b7b7b7d939d897b7b7b7b7b75604b36200b0000000000000314253748596a7b8d9e9d8c7b6a5a495566768899a291806e5d4c3b2a1908000000000000000000000000000000001f344a5f748ba0947d68533e29130000000000000000000000000d22374c62778da39079644f3a2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2923180a000000000000001f344a5f747d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d8390a2a391847d7d7d7d7d7d7d7d7d7d7d7d7d7d7d808c9c9b87725d49341f0a000c2033475b6f83979f8b7763503c29150c2033475a6e8295a79692a09e8a7763503d2a160b1f33465a6e8396a08c7764503c2814010000000000122436495b6d8093a3917d6c594734221000000000000000112436495b6d8093a3917d6c594734221000000000001f34495e738997826b5a5a5a5a5a5a677c938d78634e38414e5c6a778693a19a8d80706355483a2c1f1103000000000000000f253a4f647990a48f78634e433a30261d130a0000000000001121303b40404040403a2f20100000000000000000001f344a5f748ba0937c675565758696a29282706150403a4a5a6a7b8c9c9d8d7c6c5b5f748ba0947d68533e2913001f344a5f748ba0947d68533e29130000000000000000000000000d22374c62778da39079644f3a250f000000000000192e43586e8491919191919192a09f9291919191919191919191919aa595919191918c76604b36210b000000000000102132435465768899a090806e5d4d3c48596a7a8c9c9e8c7b6a5948362514030000000000000000000000000000001f344a5f748ba0947d68533e29131313131313131313131313131322374c62778da39079644f3a251616161616161616161616161616161413131313110a010000001f344a5f748b9494949494949494949494949494949494949497a1aeafa197949494949494949494949494949494959c9f8f7d6a57432f1b060014273b4f63768a9f97836f5c4834200d04172b3e5265798da0a9a7a895826e5a4734210d03172b3f53677a8fa293806b5844301c08000000000a1c2f415366788b9e998673614e3c2a17050000000000000007192c3e516375889b9b897664513f2d1a08000000001f344a5f748b97826b564444444452677c938f78634e38303e4c59677583909e9d8f827365584a3d2f2113040000000000000f253a4f647990a48f78634e38271d151515151515151515151b2e3f4e55565656554d3e2d1a0600000000000000001f344a5f748ba0937c6762728394a4948473635343322c3c4d5d6d7d8e9e9a8a79695f748ba0947d68533e2913001f344a5f748ba0947d68533e29131313131313131313131313131322374c62778da39079644f3a250f000000000000192e43586e8499a3a3a3a3a3a3a3aaa7a3a3a3a3a3a3a3a3a3a3a3a3a7a8a5a3a3a18c76604b36210b00000000000b1c2e3e5061728394a493827161503f2f3b4c5d6d7d8fa09988766554433221100000000000000000000000000000001f344a5f748ba0947d68533e29292929292929292929292929292929374c62778da39079644f3a292929292929292929292929292929292929292928251e120400001f344a5f748ba0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a09f998f8271604e3b281400001b2f43576a7d92a08f7b6753402c1905000f2236495d708498a0a09f8c7865513e2b1805001024374b5f73879b9b87735f4b37230f000000021527394c5e708396a08e7b695644311f0d0000000000000000000f213446596b7d90a293826e5c4a372512000000001f344a5f748b97826b56402f2f3c52677c938f78634e38232e3c49576472808e9c9f918476685a4d3f3122120000000000000f253a4f647990a48f78634e382a2a2a2a2a2a2a2a2a2a2a2a2a374b5d6a6b6b6b6a5c4a36210c00000000000000001f344a5f748ba0937c67708291a197877666554535251e2f3f4f5f708090a198877666748ba0947d68533e2913001f344a5f748ba0947d68533e29292929292929292929292929292929374c62778da39079644f3a250f000000000000192e43586e848d8d8d8d8d8d8d8e9b9e8f8d8d8d8d8d8d8d8d8d8d8d96a4928d8d8d8c76604b36210b000000000718293a4b5c6d8090a197867564534332222e3f4f60708292a394837261503e2e1c0b00000000000000000000000000001f344a5f748ba0947d68533e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e4c62778da39079644f3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3a30231201001f344a5f748b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b89867d71625343311e0b00001f34495e72868b8b87735f4c3824100000061a2d4154687b8b8b8b8b836f5c4936220f0000081c3044576b808b8b8b7a66523d28130000000d1f324456697b8ea09683705e4c392714020000000000000000000417293b4e607386989e8c79675442301d0b0000001f344a5f748b97826b56402e2e3c52677c938f78634e38231e2b39475462707d8c99a29486786b5d4f402f1d0900000000000f253a4f647990a48f78634e3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f4f647982828278634e38230e00000000000000001f344a5f748ba0937c6e7d8f9f9a8979685848382717112131415262728393a3958574748ba0947d68533e2913001f344a5f748ba0947d68533e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e4c62778da39079644f3a250f000000000000182d42576c777777777777777780949b8777777777777777777777798da28d79777777725f4a35200b000000021425364758697a8c9d9a89786857463625142132425364748696a190806d5c4b3a291807000000000000000000000000001f344a5f748ba0947d68535353535353535353535353535353535353535362778da390796453535353535353535353535353535353535353535353534d41301e0a001f34495d70747474747474747474747474747474747474747474747474747474747474747474747474747474747474706a6053443525130200001f34495d70747474746a5743301c080000001125384c607174747474746653402d190600000014283c5063737474747466523d2813000005172a3c4e617386999e8b786653412f1c0a00000000000000000000000c1e314356687a8da09684715f4c3a28150300001f344a5f748b97826b564343434352677c938f78634e38230e1b293644525f6d7b8997a497897b6d5e4c38240f00000000000f253a4f647990a48f78635454545454545454545454545454545454647990978f78634e38230e00000000000000001f344a5f748ba0937c7b8c9c9c8c7b6b5b4a3a2a1a0903132334445464758696a29282748ba0947d68533e2913001f344a5f748ba0947d68535353535353535353535353535353535353535362778da39079644f3a250f00000000000014293c4e5d6262626262626264788da18e7965626262626262626272869a95806c6262605443301c080000000f20314253647587989e8d7c6b5a4a3928180714253546576778899a9d8c7a695847362513020000000000000000000000001f344a5f74899f94806d68686868686868686868686868686868686868686a7a8fa490796868686868686868686868686868686868686868686868685f4d3a2511001a2e41515d5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5c564d42352617070000001a2e41515d5f5f5f5f5a4d3b281400000000091d3043535e5f5f5f5f5f5849372410000000000d213446565f5f5f5f5f584836230e000010223547596c7d91a393806e5b49372412000000000000000000000000011426394b5d708395a18f7c69574532200e00001f34495e738997826b585858585858677c938e78634e38230e0b192634414f5d6b788694a2998c7b66503b261100000000000f253a4f64798fa4907c6c6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6d7d92a48f78634e38230e00000000000000001f344a5f748ba0937c8a9a9f8f7d6e5d4d3d2d1c0c000006162636475767778898a090808ba0947d68533e2913001f344a5f74899f94806d68686868686868686868686868686868686868686a7a8fa48f79644f3a250f0000000000000d1f303f494c4c4c4c4c4c4c5d72869a95826d584c4c4c4c4c4c576b80949c88735f4c4b443626140100000a1b2d3e4f60718394a190806f5e4d3d2c1b0b0007172839495a6b7c8d9e98877564534231200f0000000000000000000000001d32475c7085999c8c807d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d8898a5907d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d68533e28130011233341494a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a47423a302517080000000011233341494a4a4a4a473d2f1e0b000000000114253542494a4a4a4a4a453a2b1a070000000004172838444a4a4a4a4a453a2b190700081a2d3f516476899b9b887663513e2c1a0700000000000000000000000000091c2e415365778a9d998774614f3d2b1806001c31465b70849885736e6e6e6e6e6e70829589745f4b36210c00081623313f4d5a687584919f917b66503b261100000000000d23384c61768a9e998a828080808080808080808080808080808080828c9b9b8874604c37220d00000000000000001f344a5f748ba0958a97a191827060503f2f1f0f0000000008192939495a6a7a8b9b9e8e8fa2947d68533e2913001d32475c7085999c8c807d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d88989e8a76614c38230e0000000000000212212d3537373737373742566a80939c8873604b373737373c5064788da18f7a66523e312618080000061728394a5c6d7d8fa09483726151402f1f0e0000000a1b2c3c4d5e6f8090a1948271604f3e2c1b0a0000000000000000000000192d4155697c8e9e9c949494949494949494949494949494949494949494949aa6ab9a9494949494949494949494949494949494949494949494947d68533e2913000515232e34343434343434343434343434343434343434343434343434343434343434343434343434343434343434322d271e130700000000000515232e3434343434322b1f110000000000000817252f34343434343431281c0d0000000000000b1a2730343434343431281c0d00001325374a5c6f8294a3907d6b594634210f000000000000000000000000000000112336485b6d8092a492806c5a4735231000182c4054687a8d9286848484848484858f90806c5945311c0800000613212f3c4a586573828f917b66503b26110000000000091e33475b6e8292a29c969595959595959595959595959595959595969d9e8f7d6b5845311d0900000000000000001f344a5f748ba0a49fa49483726252423221110100000000000b1b2b3c4c5c6d7d8e9ea0a1a9947d68533e291300192d4155697c8e9e9c949494949494949494949494949494949494949494949aa292826e5b47331e090000000000000003101a202222222222273b5064788da08f7a66523e2a222235495d71869a95826d5945311d09000000122435465768798b9c97877565544333221201000000000e1e2f405161728394a08f7d6d5c4a39281604000000000000000000001226394c5e70808e999fa0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0947d68533e2913000005111a1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1d19130b010000000000000005111a1f1f1f1f1f1e180e010000000000000007121b1f1f1f1f1f1f1c150b000000000000000009141c1f1f1f1f1f1c150b0000001b2f425467798c9e988673604e3b29170400000000000000000000000000000006192b3e506375889a9c8a776452402c18001125394b5d6f7d8d97999999999999998f8272614f3d2a160200000003111e2c3a475563707d8d7b66503b2611000000000004182b3e51637484919ba0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a09f998e80705f4e3b28150200000000000000001f344a5f748ba0a0a096867565554434241404000000000000000d1e2e3e4f5f6f8090a0a0a0947d68533e2913001226394c5e70808e999fa0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a09f9b91847463513e2b1804000000000000000000060b0d0d0d0d0d2135495d71869a96826d5945311d1a2e42566a80939c8874604c38240f0000001a2e4152637586979b8a79685847362615040000000000011122334454657687989c8b79685746331f0b000000000000000000000a1d2f415261707c85898b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b7d68533e291300000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001f34495e72858b8b8b7a685643311e0c00000000000000000000000000000000000e213346586a7d8b8b8b826f5b46311c00091c2e4051606e7a83888989898988857c7163544432200d0000000000000e1c2a374552606e7c7b66513c27110000000000000f22344656657380878b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8a867c6f615141301e0c0000000000000000001f344a5f748b8b8b8b89786857473727160600000000000000000010203141516171828b8b8b8b7d68533e2913000a1d2f415261707c85898b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8a87807365564634220f00000000000000000000000000000000061a2e42566a7d8b8b8974604c372113273b5064788b8b8b7b67523d28130000001f34495d70828b8b8b7c6c5b4a3a2919080000000000000004152637475869798b8b8b8675634e39240f000000000000000000000012233443525e697074747474747474747474747474747474747474747474747474747474747474747474747474747474747474747474747474747466523d2813000000000000000000000000000000000000000000000009131a1d1d1d1d1c170f0300000000000000000000000000000000000009111516161616130c0200000000000000000000000000000000000b121616161616120b010000000000000000030a0e0e0e0e0e0b05000000000000001f34495d7074747474705d4b3926140200000000000000000000000000000000000416293b4d6071747474746e5b46311c000011223242505d676f727373737373706960534536261503000000000000000c19273542505e6b7464503b2611000000000000051728384755616b727474747474747474747474747474747474747471695e5143332413010000000000000000001f34495d7074747474746a5a4a39291909000000000000000000000213233343536473747474747466523d2813000012233443525e697074747474747474747474747474747474747474747474726b62564738281705000000000000000000000000000000000013273b4f637374747471604b36210c2135495d6f7474747466523d28130000001f34495d70747474746f5f4e3d2d1c0b00000000000000000008192a3a4b5c6c7474747473624e39240f000000000000000000000006162534414c555c5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f584836230e000000000000000000000000000000000000000000000b1a262e32323232312b211304000000000000000000000000000000000f1b252a2b2b2b2b28201405000000000000000000000000000002111e262b2b2b2b2b271e12030000000000000a161e232323232320180d0000000000001a2e41515d5f5f5f5f5d51412e1c09000000000000000000000000000000000000000c1e3043535e5f5f5f5f5c503e2b17000004142332404b545a5d5e5e5e5e5e5b554d423627180800000000000000000009172432404e5a5f574735210d000000000000000a1a2938444f585d5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5c564c4133251606000000000000000000001a2e41515d5f5f5f5f5f5a4d3c2c1c0b0000000000000000000000000515263646555e5f5f5f5f5f584836230e000006162534414c555c5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5d574f4438291a0a0000000000000000000000000000000000000c203446565f5f5f5f5e5343301c08192d40515d5f5f5f5f584836230e0000001a2e41515d5f5f5f5f5d5141301f0f00000000000000000000000c1c2d3e4e5b5f5f5f5f5e5545331f0b0000000000000000000000000716232f3a41474a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a453a2b1907000000000000000000000000000000000000000000051829384247474747463e3222100000000000000000000000000000000c1d2d393f404040403c322313010000000000000000000000000010202f3a40404040403b30211100000000000a1a28323838383838342a1d0d000000000011233341494a4a4a4a494133231100000000000000000000000000000000000000000114253542494a4a4a4a483f32210f0000000514222e38404548484848484846413a302518090000000000000000000000061422303d474a44392a180500000000000000000b1a27323c43484a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4742392f231507000000000000000000000011233341494a4a4a4a4a473d2f1e0e00000000000000000000000000000818283743494a4a4a4a4a453a2b19070000000716232f3a41474a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a48433c32271a0b0000000000000000000000000000000000000004172838444a4a4a4a49423525140111223240484a4a4a4a453a2b190700000011233341494a4a4a4a4840322312010000000000000000000000000f20303e474a4a4a4a4943372716030000000000000000000000000006121d262d3234343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434343431281c0d000000000000000000000000000000000000000000000e223547555c5c5c5c5b503f2d19050000000000000000000000000000172a3b4a54565656564f41301e0a000000000000000000000000061a2d3e4d55565656554e3f2e1b0800000002152838454d4e4e4e4d473b2b1906000000000515232e3434343434342e2315050000000000000000000000000000000000000000000817252f3434343434332d2213030000000004101b242b30333333333333312d261d13070000000000000000000000000004121f2b323431281b0c00000000000000000000091520282f3334343434343434343434343434343434343434322e261d12050000000000000000000000000515232e343434343434322b1f11000000000000000000000000000000000a19263034343434343431281c0d000000000006121d262d3234343434343434343434343434343434343434343434332f282015090000000000000000000000000000000000000000000b1a273034343434342f251708000514222d333434343431281c0d000000000515232e3434343434332d221405000000000000000000000000000212202b3334343434343026190a000000000000000000000000000000000a12191d1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1c150b000000000000000000000000000000000006090b0b0b0b12273c5164717272726e5c48331e0b0b0b0b0b080300000000000000001d324659686b6b6b6b5f4d3925100000000000000000000000000c21364a5c6a6b6b6b6a5d4b37220d000000091e3245566263636363594835210d000000000005111a1f1f1f1f1f1f1a1105000000000000000000000000000000000000000000000007121b1f1f1f1f1f1e191004000000000000000811171b1e1e1e1e1e1e1c18120a01000000000000000000000000000000010e181e1f1c150a000000000000000000000000030d141a1e1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1e19130a00000000000000000000000000000005111a1f1f1f1f1f1f1e180e01000000000000000000000000000000000009141b1f1f1f1f1f1f1c150b00000000000000000a12191d1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1e1a140d03000000000000000000000000000000000000000000000009141c1f1f1f1f1f1b12070000000511191e1f1f1f1f1c150b00000000000005111a1f1f1f1f1f1e191105000000000000000000000000000000020f181e1f1f1f1f1f1b14090000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000010b141a1e2121212121293e53687d888888745f4a342121212121201d1710070000000000001f344a5f748282827c67523c27120000000000000000000000000e23384e637882828279644f3a250f0000000c22374c61747878787765503b2610000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000040b0f0f0f0f0f0a0200000000000000000000000000060c0f0f0f0f0e090100000000000000000000000000000000030b0f0f0f0f0f0d070000000000000007131e272e333636363636363e53687d949d8b745f4a36363636363635312b23190e01000000001f344a5f748b97937c67523c27120000000000000000000000000e23384e63788f979079644f3a250f0000000d22374c62778d8f8f7b66503b2611000000000000000000000000000000000002080b0b0b0b0b08010000000000000000000000000000000000000000000000000002080c0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0d090400000000000000000000000000020a10141616161616161616161616161616161616161616161615110c040000000000000000000000000002080c0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0d090400000000000000000000000000050e14181a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1a19150f08000000000000000000000000050e14181a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1a19150f080000000000000000010d15191a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1a18120800000000000000000811171c1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1d170e02000000000000000000000000000000000000000000000a161f24252525241e150900000000000000000000000e192124252525231d130600000000000000000000000000000a161f2425252525221a0f0200000000081725303b43484b4b4b4b4b4b4b53687d94a08b745f4b4b4b4b4b4b4b4a463f362b1f11020000001f344a5f748ba0937c67523c27120000000000000000000000000e23384e63788fa49079644f3a250f0000000d22374c62778da3917b66503b2611000000000000000000000000000000000a151d20212121201c140800000000000000000000000000000000000000000000040e161d2123232323232323232323232323232323232323232323221e181007000000000000000000000b151e25292b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2a2620170e02000000000000000000040e161d2123232323232323232323232323232323232323232323221e181007000000000000000000020e1821282d2f2f2f2f2f2f2f2f2f2f2f2f2f2f2f2f2f2f2f2f2f2f2e2a241b11050000000000000000020e1821282d2f2f2f2f2f2f2f2f2f2f2f2f2f2f2f2f2f2f2f2f2f2f2e2a241b1105000000000002121f292e2f2f2f2f2f2f2f2f2f2f2f2f2f2f2f2f2f2f2f2f2f2f2f2f2f2f2f2f2d25190b000000000004111b252c31333333333333333333333333333333333333333333322b20120100000000000000000000000000000000000000000a1a2833393a3a3a39322718080000000000000000000e1e2b353a3a3a3a383024150400000000000000000000000009192733393a3a3a3a362d201000000006172635424e575d6060606060606060687d94a08b7460606060606060605f5b53493d2f20100000001f344a5f748ba0937c67523c27120000000000000000000000000e23384e63788fa49079644f3a250f0000000d22374c62778da3917b66503b26110000000000000000000000000000000a1a273136363636353026180900000000000000000000000000000000000000000916212a31363838383838383838383838383838383838383838383837332c23190d00000000000000010f1c2831393e404040404040404040404040404040404040404040403f3a342a201305000000000000000916212a31363838383838383838383838383838383838383838383837332c23190d0000000000000004121f2b353d4244444444444444444444444444444444444444444444433e372e23160800000000000004121f2b353d4244444444444444444444444444444444444444444444433e372e231608000000000f20303c434444444444444444444444444444444444444444444444444444444441372919060000000615222e384046484848484848484848484848484848484848484848463d301f0d0000000000000000000000000000000000000002152738464e4f4f4f4d443625130000000000000000061a2c3c494f4f4f4f4c4233220f000000000000000000000000142637454e4f4f4f4f4a3e2e1c0900011324354453606a727676767676767676767d94a08b767676767676767676746f665a4d3e2e1d0b00001f344a5f748ba0937c67523c27120000000000000000000000000e23384e63788fa49079644f3a250f0000000d22374c62778da3917b66503b2611000000000000000000000000000004162838444b4b4b4b4a43362615020000000000000000000000000000000000000a1927333d464b4e4e4e4e4e4e4e4e4e4e4e4e4e4e4e4e4e4e4e4e4e4e4c4740362a1d0f000000000000101f2d3a444d5356565656565656565656565656565656565656565656544f473d3123140400000000000a1927333d464b4e4e4e4e4e4e4e4e4e4e4e4e4e4e4e4e4e4e4e4e4e4e4c4740362a1d0f0000000000031322303d4851575a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a58534a403426170700000000031322303d4851575a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a58534a4034261707000000182b3e4e585a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a544736230f000005152432404b545a5e5e5e5e5e5e5e5e5e5e5e5e5e5e5e5e5e5e5e5e5e5a4e3d2a1600000000000000000000000000000000000000091d314456636464646154422f1b07000000000000000e2236495a6464646460513e2b170300000000000000000000001b30435562646464645c4b382410000b1e30425362717d868b8c8c8c8c8c8c8c8c8c98a2908c8c8c8c8c8c8c8c8c8983786b5c4c3a281502001f344a5f748ba0937c67523c27120000000000000000000000000e23384e63788fa49079644f3a250f0000000d22374c62778da3917b66503b261100000000000000000000000000000b1f334656606060605f5444311e090000000000000000000000000000000000081928374550596063636363636363636363636363636363636363636363615b53483b2d1d0d000000000d1e2e3d4b5761686b6b6b6b6b6b6b6b6b6b6b6b6b6b6b6b6b6b6b6b6b6b69635a4e4132221200000000081928374550596063636363636363636363636363636363636363636363615b53483b2d1d0d000000000f2131404e5a646b6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6d675d5244352514020000000f2131404e5a646b6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6d675d52443525140200001e33475b6b6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f65523e2a15000011223342515d676f7373737373737373737373737373737373737373736c59442f1a000000000000000000000000000000000000001024384c6074797979725e4a36220e0000000000000115293d5165787979796e5a46321e0a00000000000000000000001f34495e737979797968533d28130013273a4d6070828f9aa0a1a1a1a1a1a1a1a1a1a7aea3a1a1a1a1a1a1a1a1a19e96897a695744311e0a001f344a5f748ba0937c67523c27151515151515151515151515151523384e63788fa49079644f3a250f0000000d22374c62778da3917b66503b261100000000000000000000000000000f24394e637476767672614c38230f00000000000000000000000000000000021426374655626d7478787878787878787878787878787878787878787878766f66594b3b2b1907000006192b3c4c5b69747c808282828282828282828282828282828282828282827d766c5f51402f1e0b0000021426374655626d7478787878787878787878787878787878787878787878766f66594b3b2b19070000081b2d3e4f5e6c778084868686868686868686868686868686868686868686827a6f62534332200d0000081b2d3e4f5e6c778084868686868686868686868686868686868686868686827a6f62534332200d00001f344a5f74868686868686868686868686868686868686868686868686868686826b56402b1600091c2e4051616f7a84888989898989898989898989898989898989898987705b46301b00000000000000000000000000000000000004182b3f53677b90908d7965513d2915010000000000081c3044586c8290908a75614d39251100000000000000000000001f344a5f748b90907d68533e291300192e42566a7d8f9f9c949393939393939393939ca59693939393939393939397a2988774614d392510001f344a5f748ba0937c67523c2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a384e63788fa49079644f3a250f0000000d22374c62778da3917b66503b2611000000000000000000040a0d0f0f0f24394e62778c8c8c7b66523d28140f0f0f0f0f0f0f0f0f0f0b04000000000c1f324455647380898d8f8f8f8f8f8f8f8f8f8f8f8f8f8f8f8f8f8f8f8f8f8b837769594837241100000f2336485a6a79879095979797979797979797979797979797979797979797928a7d6f5e4d3a271401000c1f324455647380898d8f8f8f8f8f8f8f8f8f8f8f8f8f8f8f8f8f8f8f8f8f8b837769594837241100001024374a5c6d7c8a94999b9b9b9b9b9b9b9b9b9b9b9b9b9b9b9b9b9b9b9b9a968d8071604f3c291602001024374a5c6d7c8a94999b9b9b9b9b9b9b9b9b9b9b9b9b9b9b9b9b9b9b9b9a968d8071604f3c291602001f344a5f748b9b9b9b9b9b9b9b9b9b9b9b9b9b9b9b9b9b9b9b9b9b9b9b9b9b97826b56402b16001125394c5d6f808d989d9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9c87705b46301b0000000000000000000000000000000000000b1f33475b6f8397a595826c5844311c0900000000001024384c6073889ca5917c6854402c1905000000000000000000001f344a5f748ba0947d68533e2913001e32475c71869a9c8c807c7c7c7c7c7c7c7c7d94a08b7c7c7c7c7c7c7c7c7c8493a4917c68533e2914001f344a5f748ba0937c67523f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f4e63788fa49079644f3a250f0000000d22374c62778da3917b66503b2611000000000000000510181e232525252534485d71879b95806b57422d252525252525252525252420170b00000014283b4e617283919da3a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a39f9588776653402d190500162a3e5265778998a49d9c9c9c9c9c9c9c9c9c9c9c9c9c9c9c9c9c9c9c9c9da29b8d7c6a5744301c070014283b4e617283919da3a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a39f9588776653402d190500172b405367798b9ba1999898989898989898989898989898989898989898999e9e8f7d6c5945311d0800172b405367798b9ba1999898989898989898989898989898989898989898999e9e8f7d6c5945311d08001f344a5f748ba09f989898989898989898989898989898989898989898989897826b56402b1600182c4055687b8d9d9f979595959595959595959595959595959595959587705b46301b00000000000000000000000000000000000012263a4e62768a9eb09c8874604c3824100000000003172b3f53677b8fa3ac9884705c4834200c000000000000000000001f344a5f748b8f8f7d68533e2913001f344a5f748a9f95806d67676767676767687d94a08b746767676767676768768a9f96826b56402b16001f344a5f748ba0937c67545454545454545454545454545454545454545463788fa49079644f3a250f0000000d22374c62778da3917b66503b26110000000000000b17222b33383a3a3a3a3a43586c82969a86705c473a3a3a3a3a3a3a3a3a3a3a3934291b0b00001a2e43576a7d91a199908f8f8f8f8f8f8f8f8f8f8f8f8f8f8f8f8f8f8f8f9096a39583705c48341f0b001b3045596d8295a292888787878787878787878787878787878787878787888f9e9a87735f4a36210c001a2e43576a7d91a199908f8f8f8f8f8f8f8f8f8f8f8f8f8f8f8f8f8f8f8f9096a39583705c48341f0b001c31465a6f83979f8f858383838383838383838383838383838383838383848c9b9c8974604b37220d001c31465a6f83979f8f858383838383838383838383838383838383838383848c9b9c8974604b37220d001f344a5f748ba093838383838383838383838383838383838383838383838383826b56402b16001d32465b7084989e8e828080808080808080808080808080808080808080705b46301b000000000000000000000000000000000005192d4155697d92a5b1a38f7b67533f2b17030000000a1e32465a6e8396aab09f8b77634f3b2713000000000000000000001f34495e727878787867523d2813001f344a5f748b90907d6853525252525253687d94a08b745f5252525252525e73899f97826b56402b16001f344a5f748ba0937c6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a788fa49079644f3a250f0000000d22374c62778da3917b66503b261100000000000c1b28353f474c4f4f4f4f4f4f52677b909f8a75614f4f4f4f4f4f4f4f4f4f4f4f4e4739281603001d32475c71869a9b897c7878787878787878787878787878787878787878798595a08c77624d38230e001e33485e73889d9784757070707070707070707070707070707070707070728092a28e78634e39240f001d32475c71869a9b897c7878787878787878787878787878787878787878798595a08c77624d38230e001f34495e73899e9682716c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6e7c90a38f79644f3a240f001f34495e73899e9682716c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6e7c90a38f79644f3a240f001f344a5f748ba0937c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c63513e2914001f344a5f73899e96826f6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6555422d1900000000000000000000000000000000000d2135485d708599a29ca397836e5a46321e0a0000001126394e61758a9e9f9ba6927d6a56422e1a060000000000000000001b2f435461636363635b4b382410001f34495e737979797968533d3c3c3c3e53687d94a08b745f4a3c3c3c3c485e73899f97826b56402b16001f344a5f748ba0938080808080808080808080808080808080808080808080808fa49079644f3a250f0000000d22374c62778da3917b66503b2611000000000a1b2a3946525b616464646464646464768ba08f7a66646464646464646464646464635746321e09001f344a5f748a9f947d6b636363636363636363636363636363636363636366798ea39079644f3a250f001f344a5f748ba0947d685b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b62778da39079644f3a250f001f344a5f748a9f947d6b636363636363636363636363636363636363636366798ea39079644f3a250f001f344a5f748ba0947d68575757575757575757575757575757575757575762778da39079644f3a250f001f344a5f748ba0947d68575757575757575757575757575757575757575762778da39079644f3a250f001f344a5f748ba0937c675757575757575757575757575757575757575757575757524535220e001f344a5f748ba0947d6854545454545454545454545454545454545454545247372512000000000000000000000000000000000014283c5064778ca09487969e8a75624e3a2612000005192d4155697c91a490889a9a86725d4a36220e000000000000000000132536444c4e4e4e4e493d2d1b08001b30435562646464645c4b382727293e53687d94a08b745f4a34272733485e73899f97826b56402b16001f344a5f748ba09d9595959595959595959595959595959595959595959595959aa59079644f3a250f0000000d22374c62778da3917b66503b2611000000041628384857646f76797979797979797979869b95807979797979797979797979797975614c37220c001f344a5f748ba0947d68534e4e4e4e4e4e4e4e4e4e4e4e4e4e4e4e4e4e4e62778da39079644f3a250f001f344a5f748ba0947d68534646464646464646464646464646464646464c62778da39079644f3a250f001f344a5f748ba0947d68534e4e4e4e4e4e4e4e4e4e4e4e4e4e4e4e4e4e4e62778da39079644f3a250f001f344a5f748ba0947d68534242424242424242424242424242424242424c62778da39079644f3a250f001f344a5f748ba0947d68534242424242424242424242424242424242424c62778da39079644f3a250f001f344a5f748ba0937c6752424242424242424242424242424242424242424242423e35271705001f344a5f748ba0947d68533f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3d35291a0800000000000000000000000000000000071b2f43576b8093a18d7b8fa3917d6955412d1905000c2034485c7084989d898093a18d7965513d2915010000000000000000182b3e4e585a5a5a5a534534210d00142637454e4f4f4f4f4a3e2e1c17293e53687d94a08b745f4a341f1e33485e73899f97826b56402b16001f344a5f748ba0a39d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9da1a59079644f3a250f0000000d22374c62778da3917b66503b26110000000d203345566675828a8f9090909090909090919f9c909090909090909090909090908d77624c37220d001f344a5f748ba0947d68533e38383838383838383838383838383838384c62778da39079644f3a250f001f344a5f748ba0947d68533e30303030303030303030303030303030374c62778da39079644f3a250f001f344a5f748ba0947d68533e38383838383838383838383838383838384c62778da39079644f3a250f001f344a5f748ba0947d68533e2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c374c62778da39079644f3a250f001f344a5f748ba0947d68533e2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c374c62778da39079644f3a250f001f344a5f748ba0937c67523c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2a23170900001f344a5f748ba0947d68533f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3d35291a08000000000000000000000000000000000f22364a5e72879b9a8673889c9885705c4834200c0013273b4f63778c9f9582778ca095806c5844301c0800000000000000001e33475b6b6f6f6f6f63503c27120009192733393a3a3a3a362d2c2c2c2c3e53687d94a08b745f4a342c2c33485e73899f97826b56402b16001f344a5f748ba09588888888888888888888888888888888888888888888888891a59079644f3a250f0000000d22374c62778da3917b66503b261100000015293d50627485939ea4a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a38d77624c37220d001f344a5f748ba0947d68533e29232323232323232323232323232323374c62778da39079644f3a250f001f344a5f748ba0947d68533e291b1b1b1b1b1b1b1b1b1b1b1b1b1b22374c62778da39079644f3a250f001f344a5f748ba0947d68533e29232323232323232323232323232323374c62778da39079644f3a250f001f344a5f748ba0947d68533e29171717171717171717171717171722374c62778da39079644f3a250f001f344a5f748ba0947d68533e29171717171717171717171717171722374c62778da39079644f3a250f001f344a5f748ba0937c67523c271717171717171717171717171717171717171717150f060000001f344a5f748ba0947d685454545454545454545454545454545454545454524737251200000000000000000000000000000002162a3e5265798ea2927d6c8295a08c7763503b2814071b2f43566a7d93a28e7a7085999c88735f4b37240f00000000000000001f344a5f748686867d68533e291300000a161f2429323a3f4242424242424253687d94a08b745f4a42424242485e73899f97826b56402b16001f344a5f748ba0937c72727272727272727272727272727272727272727272788fa49079644f3a250f0000000d22374c62778da3917b66503b26110000001b2f44586c8092a3978f8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d77624c37220d001f344a5f748ba0947d68533e29130e0e0e0e0e0e0e0e0e0e0e0e0e22374c62778da39079644f3a250f001f344a5f748ba0947d68533e29130000000000000000000000000d22374c62778da39079644f3a250f001f344a5f748ba0947d68533e29130e0e0e0e0e0e0e0e0e0e0e0e0e22374c62778da39079644f3a250f001f344a5f748ba0947d68533e29130000000000000000000000000d22374c62778da39079644f3a250f001f344a5f748ba0947d68533e29130000000000000000000000000d22374c62778da39079644f3a250f001f344a5f748ba0937c67523c272727272727272727272727272727272620170a000000000000001f344a5f748ba0947d6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6555422d19000000000000000000000000000000091d3145596d82959f8b7765798da193806a57432f1b0e22364a5e72869a9b8772697d92a38f7a67533f2b1703000000000000001f344a5f748b9b947d68533e291300000111202e3b464e545757575757575757687d94a08b745f5757575757575e73899f97826b56402b16001f344a5f748ba0937c675c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c63788fa49079644f3a250f0000000d22374c62778da3917b66503b26110000001f34495d72889c99877a7777777777777777777777777777777777777777777777777773604c37210c001f344a5f748ba0947d68533e29130000000000000000000000000d22374c62778da39079644f3a250f001f344a5f748ba0947d68533e29130000000000000000000000000d22374c62778da39079644f3a250f001f344a5f748ba0947d68533e29130000000000000000000000000d22374c62778da39079644f3a250f001f344a5f748ba0947d68533e29130000000000000000000000000d22374c62778da39079644f3a250f001f344a5f748ba0947d68533e29130000000000000000000000000d22374c62778da39079644f3a250f001f344a5f748ba0937c67523c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3b342819080000000000001f344a5f748ba09480808080808080808080808080808080808080808080705b46301b0000000000000000000000000000001024384c6074889c98846f5e72869a9a86725e4a362215293d5165798da294806b62768a9e96826e5a46321e0a000000000000001f344a5f748ba0947d68533e291300000e1f2f3e4c5862696c6c6c6c6c6c6c6c6c7d94a08b746c6c6c6c6c6c6c6c788ca095806b56402b16001f344a5f748ba0937c67524747474747474747474747474747474747474e63788fa49079644f3a250f0000000d22374c62778da3917b66503b26110000001f344a5f748ba0937d6962626262626262626262626262626262626262626262626262605544311d09001f344a5f748ba0947d68533e29130000000000000000000000000d22374c62778da39079644f3a250f001f344a5f748ba0947d68533e29130000000000000000000000000d22374c62778da39079644f3a250f001f344a5f748ba0947d68533e29130000000000000000000000000d22374c62778da39079644f3a250f001f344a5f748ba0947d68533e29130000000000000000000000000d22374c62778da39079644f3a250f001f344a5f748ba0947d68533e29130000000000000000000000000d22374c62778da39079644f3a250f001f344a5f748ba0937c6752525252525252525252525252525252525250463725120000000000001f344a5f748ba09e95959595959595959595959595959595959595959587705b46301b000000000000000000000000000004182b3f53677b90a4907c68566a7d93a28d7965513d291c3144586c8295a08c78645b6f83979d8a75614d392511000000000000001f344a5f748ba0947d68533e29130007192b3d4d5c6a757d8283838383838383838394a08b8383838383838383838997a28f7a66523d2813001f344a5f748ba0937c67523c32323232323232323232323232323232384e63788fa49079644f3a250f0000000d22374c62778da3917b66503b26110000001f344a5f748ba0937c67524c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4437271502001f344a5f748ba0947d68533e29130000000000000000000000000d22374c62778da39079644f3a250f001f344a5f748ba0947d68533e29130000000000000000000000000d22374c62778da39079644f3a250f001f344a5f748ba0947d68533e29130000000000000000000000000d22374c62778da39079644f3a250f001f344a5f748ba0947d68533e29130000000000000000000000000d22374c62778da39079644f3a250f001f344a5f748ba0947d68533e29130000000000000000000000000d22374c62778da39079644f3a250f001f344a5f748ba0937c676767676767676767676767676767676767676355422e1a0500000000001f344a5f748ba0a59f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9fa79c87705b46301b00000000000000000000000000000b1f33475b6f83979d8975614f63778c9f95826d58453124384c6074889c9985715d53687b90a4917c6854402c19050000000000001f344a5f748ba0947d68533e291300102336495a6b7a889297989898989898989898a0a89b9898989898989898989ca39584725f4b37230f001f344a5f748ba0937c67523c271d1d1d1d1d1d1d1d1d1d1d1d1d1d23384e63788fa49079644f3a250f0000000d22374c62778da3917b66503b26110000001f344a5f748ba0937c67523c3737373737373737373737373737373737373737373737373127190900001f344a5f748ba0947d68533e29130000000000000000000000000d22374c62778da39079644f3a250f001f344a5f748ba0947d68533e29130000000000000000000000000d22374c62778da39079644f3a250f001f344a5f748ba0947d68533e29130000000000000000000000000d22374c62778da39079644f3a250f001f344a5f748ba0947d68533e29130000000000000000000000000d22374c62778da39079644f3a250f001f344a5f748ba0947d68533e29130000000000000000000000000d22374c62778da39079644f3a250f001f344a5f748ba0937c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c715c47321c0700000000001f344a5f748ba0968989898989898989898989898989898989898a9a9c87705b46301b000000000000000000000000000012263a4e62768a9e96826d59485c7084989c8874604c382b3f53677b8fa3927d69554c6074899c9884705c4834200c0000000000001f344a5f748ba0947d68533e291300172b3f5366788a99a49d9c9c9c9c9c9c9c9c9ca3ab9e9c9c9c9c9c9c9c9c9c99918576665542301c08001f344a5f748ba0937c67523c27120000000000000000000000000e23384e63788fa49079644f3a250f0000000d22374c62778da3917b66503b26110000001f344a5f748ba0937c67523c2722222222222222222222222222222222222222222222211d15090000001f344a5f748ba0947d68533e29130000000000000000000000000d22374c62778da39079644f3a250f001f344a5f748ba0947d68533e29130000000000000000000000000d22374c62778da39079644f3a250f001f344a5f748ba0947d68533e29130000000000000000000000000d22374c62778da39079644f3a250f001f344a5f748ba0947d68533e29130000000000000000000000000d22374c62778da39079644f3a250f001f344a5f748ba0947d68533e29130000000000000000000000000d22374c62778da39079644f3a250f001f344a5f748ba09b9393939393939393939393939393939393939388725c47321d0700000000001f344a5f748ba0947d737373737373737373737373737373737383989c87705b46301b0000000000000000000000000005192d4155697d92a28f7a66524155697c91a38f7b67533f32465a6e83979e8a76624e45596d82959f8b77634f3b27130000000000001f344a5f748ba0947d68533e2913001c31465a6e8396a2928887878787878787878795a18d878787878787878787847d7367584837251300001f344a5f748ba0937c67523c27120505050505050505050505050e23384e63788fa49079644f3a250f0000000d22374c62778da3917b66503b26110000001f344a5f748ba0937c67523c27120d0d0d0d0d0d0d0d0d0d0d0d0d0d0d0d0d0d0d0d0d0c0902000000001f344a5f748ba0947d68533e29130000000000000000000000000d22374c62778da39079644f3a250f001f344a5f748ba0947d68533e29130000000000000000000000000d22374c62778da39079644f3a250f001f344a5f748ba0947d68533e29130000000000000000000000000d22374c62778da39079644f3a250f001f344a5f748ba0947d68533e29130000000000000000000000000d22374c62778da39079644f3a250f001f344a5f748ba0947d68533e29130000000000000000000000000d22374c62778da39079644f3a250f001f344a5f748ba0a6a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1a19d88725c47321d0700000000001f344a5f748ba0947d685e5e5e5e5e5e5e5e5e5e5e5e5e5e5e6c83989c87705b46301b000000000000000000000000000d2135485d7085999b87735f4b394e61758a9e97836e5b463a4e61758a9e97836f5b473e5266798ea2927d6a56422e1a0600000000001f344a5f748ba0947d68533e2913001f34495e73899e97847470707070707070707d94a08b7470707070707070706f6a6156493a2a1a0800001f344a5f748ba0937c67523c271a1a1a1a1a1a1a1a1a1a1a1a1a1a23384e63788fa49079644f3a250f0000000d22374c62778da3917b66503b26110000001f344a5f748ba0937c67523c2712000000000000000000000000000000000000000000000000000000001f344a5f748ba0947d68533e29130000000000000000000000000d22374c62778da39079644f3a250f001f344a5f748ba0947d68533e29130000000000000000000000000d22374c62778da39079644f3a250f001f344a5f748ba0947d68533e29130000000000000000000000000d22374c62778da39079644f3a250f001f344a5f748ba0947d68533e29130000000000000000000000000d22374c62778da39079644f3a250f001f344a5f748ba0947d68533e29130000000000000000000000000d22374c62778da39079644f3a250f001f344a5f748ba0978c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c88725c47321d0700000000001f344a5f748ba0947d685348484848484848484848484848576c83989c87705b46301b0000000000000000000000000014283c5064778ca094806b584332465a6e83969e8a76624e4155697c91a4907b685340374b5f72879b9a86725d4a36220e00000000001f344a5f748ba0947d68533e2913001f344a5f748ba0947d685b5b5b5b5b5b5b687d94a08b745f5b5b5b5b5b5b5b5a554e44382b1c0c0000001f344a5f748ba0937c67523c2f2f2f2f2f2f2f2f2f2f2f2f2f2f2f2f384e63788fa49079644f3a250f0000000d22374c62778da3917b66503b26110000001f344a5f748ba0937c67523c2712000000000000000000000000000000000000000000000000000000001f344a5f748ba0947d68533e29130000000000000000000000000d22374c62778da39079644f3a250f001f344a5f748ba0947d68533e29130000000000000000000000000d22374c62778da39079644f3a250f001f344a5f748ba0947d68533e29130000000000000000000000000d22374c62778da39079644f3a250f001f344a5f748ba0947d68533e29130000000000000000000000000d22374c62778da39079644f3a250f001f344a5f748ba0947d68533e29130000000000000000000000000d22374c62778da39079644f3a250f001f344a5f748ba0937c767676767676767676767676767676767676766e5b46311c0700000000001f344a5f748ba0947d68533e343434343434343434343442576c83989c87705b46301b000000000000000000000000071b2f43576b8093a08d7864503c2b3f53677b8fa3917d6955485c7085989c8874604c382f43576b8094a18d7965513d291501000000001f344a5f748ba0947d68533e2913001f344a5f748ba0947d6853464646464653687d94a08b745f4a46464646464645413b31271e180d0000001f344a5f748ba0937c67524444444444444444444444444444444444444e63788fa49079644f3a250f0000000d22374c62778da3917b66503b26110000001f344a5f748ba0937c67523c2712000000000000000000000000000000000000000000000000000000001f344a5f748ba0947d68533e29130000000000000000000000000d22374c62778da39079644f3a250f001f344a5f748ba0947d68533e29130000000000000000000000000d22374c62778da39079644f3a250f001f344a5f748ba0947d68533e29130000000000000000000000000d22374c62778da39079644f3a250f001f344a5f748ba0947d68533e29130000000000000000000000000d22374c62778da39079644f3a250f001f344a5f748ba0947d68533e29130000000000000000000000000d22374c62778da39079644f3a250f001f344a5f748ba0937c676060606060606060606060606060606060605d503f2c180300000000001f344a5f748ba0947d68534a4a4a4a4a4a4a4a4a4a4a4a4a576c83989c87705b46301b0000000000000000000000000f22364a5e72879b9986715d493524384c6073889c9985705c5063778c9f95826d594531283c5064788da095806c5844301c08000000001f344a5f748ba0947d68533e2913001f344a5f748ba0947d68533e3030303e53687d94a08b745f4a3430303030303536363636332b1e0f00001f344a5f748ba0937c685a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a63788fa49079644f3a250f0000000d22374c62778da3917b66503b26110000001f344a5f748ba0937c67523c2712000000000000000000000000000000000000000000000000000000001f344a5f748ba0947d68533e29130000000000000000000000000d22374c62778da39079644f3a250f001f344a5f748ba0947d68533e29130000000000000000000000000d22374c62778da39079644f3a250f001f344a5f748ba0947d68533e29130000000000000000000000000d22374c62778da39079644f3a250f001f344a5f748ba0947d68533e29130000000000000000000000000d22374c62778da39079644f3a250f001f344a5f748ba0947d68533e29130000000000000000000000000d22374c62778da39079644f3a250f001f344a5f748ba0937c67524b4b4b4b4b4b4b4b4b4b4b4b4b4b4b4b4b49403222100000000000001f344a5f748ba094806a5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f6e83989c87705b46301b000000000000000000000002162a3e5265798ea2927d6a56422e1c3044586c8295a08c7763576a8093a28e7965523e2a2135495d7185999c88735f4b37240f000000001f344a5f748ba0947d68533e2913001f344a5f748ba0947d68533e291b293e53687d94a08b745f4a341f1b2333414a4b4b4b4b473c2d1c0a001f34495e73899e9682726f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f707d91a28e78634e39240f0000000d22374c62778da3917b66503b26110000001f344a5f748ba0937c67523c2712000000000000000000000000000000000000000000000000000000001f344a5f748ba0947d68533e29130000000000000000000000000d22374c62778da39079644f3a250f001f344a5f748ba0947d68533e29130000000000000000000000000d22374c62778da39079644f3a250f001f344a5f748ba0947d68533e29130000000000000000000000000d22374c62778da39079644f3a250f001f344a5f748ba0947d68533e29130000000000000000000000000d22374c62778da39079644f3a250f001f344a5f748ba0947d68533e29130000000000000000000000000d22374c62778da39079644f3a250f001f344a5f748ba0937c67523c36363636363636363636363636363636342e2314040000000000001e33485d72879c9987787474747474747474747474747474747a8a9d99846f5a45301b0000000000000000000000091d3145596d82959f8a76624e3a2615293d5165798da293806b5e72869a9b87725e4a36221a2e42556a7d92a38f7a67533f2b17030000001f344a5f748ba0947d68533e2913001f344a5f748ba0947d68533e2925293e53687d94a08b745f4a3425252d40515e606060605a4b392611001c31465a6f8396a090868686868686868686868686868686868686868686868d9c9b88735f4a36210c0000000d22374c62778da3917b66503b26110000001f344a5f748ba0937c67523c2712000000000000000000000000000000000000000000000000000000001f344a5f748ba0947d68533e29130000000000000000000000000d22374c62778da39079644f3a250f001f344a5f748ba0947d68533e29130505050505050505050505050d22374c62778da39079644f3a250f001f344a5f748ba0947d68533e29130000000000000000000000000d22374c62778da39079644f3a250f001f344a5f748ba0947d68533e29130909090909090909090909090d22374c62778da39079644f3a250f001f344a5f748ba0947d68533e29130000000000000000000000000d22374c62778da39079644f3a250f001f344a5f748ba0937c67523c27212121212121212121212121212121201a1109090701000000001a2f44586c8093a4968d8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8e99a1907d6955412c1800000000000000000000001024384c6074899c97836f5b47331f0e22364a5e72869a9a867265798da293806b57432f1b12263b4e63768b9f96826e5a46321e0a0000001f344a5f748ba0947d68533e2913001f344a5f748ba0947d68533e3a3a3a3e53687d94a08b745f4a3a3a3a3a475c6f767676766954402b1500172b3f5366798a9aa29b9b9b9b9b9b9b9b9b9b9b9b9b9b9b9b9b9b9b9b9b9ba09d8f7d6b5844301c080000000d22374c62778da3917b66503b26110000001f344a5f748ba0937c67523c2712000000000000000000000000000000000000000000000000000000001f344a5f748ba0947d68533e29131212121212121212121212121222374c62778da39079644f3a250f001f344a5f748ba0947d68533e291a1a1a1a1a1a1a1a1a1a1a1a1a1a22374c62778da39079644f3a250f001f344a5f748ba0947d68533e29130000000000000000000000000d22374c62778da39079644f3a250f001f344a5f748ba0947d68533e291e1e1e1e1e1e1e1e1e1e1e1e1e1e22374c62778da39079644f3a250f001f344a5f748ba0947d68533e29130000000000000000000000000d22374c62778da39079644f3a250f001f344a5f748ba0937c67523c271e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1c150b00000015293d5063758695a1a2a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a29f938472604d3a26120000000000000000000004182b4053687b90a4907c6854402c18071b2f43576a8093a28e796d8295a08c7764503c28140b1f33475b6f83979d8a75614d3925110000001f344a5f748ba0947d68533e2913001f344a5f748ba0947d68534f4f4f4f4f53687d94a08b745f4f4f4f4f4f4f5e73898c8c826b56402b16001024374a5b6c7b899398999999999999999999999999999999999999999999958c80705f4e3b2815010000000d22374c62778da1917b66503b26110000001f344a5f748ba0937c67523c2712000000000000000000000000000000000000000000000000000000001f344a5f748ba0947d68533e29272727272727272727272727272727374c62778da39079644f3a250f001f344a5f748ba0947d68533e2f2f2f2f2f2f2f2f2f2f2f2f2f2f2f2f374c62778da39079644f3a250f001f344a5f748ba0947d68533e29130000000000000000000000000d22374c62778da39079644f3a250f001f344a5f748ba0947d68533e33333333333333333333333333333333374c62778da39079644f3a250f001f344a5f748ba0947d68533e29130000000000000000000000000d22374c62778da39079644f3a250f001f344a5f748ba0937c67523c33333333333333333333333333333333333333333330281c0e00000d213446576776848d93949494949494949494949494949494928c8274655543311e0a000000000000000000000b1f33475b6f83979c8974604d3925110014273b4f63778c9f958274889c9985705c4834210c04182c4054687c90a4917c6855402d190500001f344a5f748ba0947d68533e2913001f344a5f748ba094806b64646464646464687d94a08b74646464646464646575899f96826b56402b1600071a2c3d4e5d6b767d8384848484848484848484848484848484848484848480796e615141301e0c000000000d22374c62778c8c8c7b66503b26110000001f344a5f748ba0937c67523c2712000000000000000000000000000000000000000000000000000000001f344a5f748ba0947d68533e3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c4c62778da39079644f3a250f001f344a5f748ba0947d68534444444444444444444444444444444444444c62778da39079644f3a250f001f344a5f748ba0947d68533e29130000000000000000000000000d22374c62778da39079644f3a250f001f344a5f748ba0947d68534848484848484848484848484848484848484c62778da39079644f3a250f001f344a5f748ba0947d68533e29130000000000000000000000000d22374c62778da39079644f3a250f001f344a5f748ba0937c675248484848484848484848484848484848484848484848453a2c1b08000416283949586671797c7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7c776f645647372614010000000000000000000012263a4e62768a9e95826d5945311d09000c2034485c7085989c887b8fa3927d6955412d1905001125394d6175899d9884705c4834200c00001f344a5f748ba0947d68533e2913001e33485d71879b9b8a7d79797979797979797d94a08b79797979797979797a8292a5927d68533f2a1500000f20303f4d59636a6d6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6b655c504233241301000000000c21364b607276767675644f3a25100000001f344a5f748ba0937c67523c2712000000000000000000000000000000000000000000000000000000001f344a5f748ba0947d68535252525252525252525252525252525252525262778da39079644f3a250f001f344a5f748ba0947d685a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a62778da39079644f3a250f001f344a5f748ba0947d68533e29130000000000000000000000000d22374c62778da39079644f3a250f001f344a5f748ba0947d685e5e5e5e5e5e5e5e5e5e5e5e5e5e5e5e5e5e5e5e63778da39079644f3a250f001f344a5f748ba0947d68533e29130000000000000000000000000d22374c62778da39079644f3a250f001f344a5f748ba0937c675e5e5e5e5e5e5e5e5e5e5e5e5e5e5e5e5e5e5e5e5e5e5e584a38251100000b1c2b3a48545d646868686868686868686868686868686867635c5246382919080000000000000000000006192d4155697d92a28e7966523e2a16020005192d4155697c91a48f83979e8a76624e3a26120000091e3146596d82969f8b77634f3b271300001f344a5f748ba0947d68533e2913001a2e43576b7d91a19a929090909090909090909aa49490909090909090909095a09a8976624e3a251100000212212f3c474f55585858585858585858585858585858585858585858585651493e3224150600000000030f1d3144545f60606060574734210c0000001f344a5f748ba0937c67523c2712000000000000000000000000000000000000000000000000000000001f344a5f74899f94806c676767676767676767676767676767676767676769798fa38f79644f3a250f001f34495e73889d9683726f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f707d91a38e78644f3a240f001f344a5f748ba0947d68533e29130000000000000000000000000d22374c62778da39079644f3a250f001e33485d72889c9885767373737373737373737373737373737373737373748092a28d78634e39240f001f344a5f748ba0947d68533e29130000000000000000000000000d22374c62778da39079644f3a250f001f344a5f748ba0937c73737373737373737373737373737373737373737373737367543f2a150000000d1c2a37414a5053535353535353535353535353535353524f484035281a0b00000000000000000000000d2135495d7085999b87725f4b37230f00000012263a4e61758a9e9c96a097836e5b46331f0b000002162a3e52667a8fa2937d6a56422e1b07001f344a5f748ba0947d68533e29130014283b4e617383929da3a5a5a5a5a5a5a5a5a5abb1a7a5a5a5a5a5a5a5a5a4a1988c7c6b5946331f0b00000003111e2a343b4043434343434343434343434343434343434343434343413d362c211506000000000413212b3136434a4b4b4b4b45392e261a0b00001f344a5f748ba0937c67523c2712000000000000000000000000000000000000000000000000000000001d32475c7086999c8b7d7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c87979f8b76614d38230e001c31455a6e8396a090868686868686868686868686868686868686868686868d9c9b88745f4b36210d001f344a5f748ba0947d68533e29130000000000000000000000000d22374c62778da39079644f3a250f001b3044596d8294a2948a898989898989898989898989898989898989898989909e9986725e4a35210c001f344a5f748ba0947d68533e29130000000000000000000000000d22374c62778da39079644f3a250f001f344a5f748ba095898989898989898989898989898989898989898989898989826b56402b16000000000c19252e363b3d3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3d3a342d23170a00000000000000000000000014283c5064788ca093806b57432f1b070000000a1e32465a6e8397aaaba38f7b67533f2b17030000000f23374b5f73889b9a86725d4a36220e001f344a5f748ba0947d68533e2913000c1f3244556473808a8f9090909090909090909aa49490909090909090908f8d867a6d5e4d3c2a170400000000010d1720272c2e2e2e2e2e2e2e2e2e2e313940474b4b49453f372e2e2c28221a0f0400000000001022323e464747453c37424747474238291805001f344a5f748ba0937c67523c2713131313131313131313131313131313131313131313130f0800000000192d4256697c8f9f9b9393939393939393939393939393939393939393939399a393826f5b47331e0a00172b3f5366788a9aa29b9b9b9b9b9b9b9b9b9b9b9b9b9b9b9b9b9b9b9b9b9ba09d8f7d6b5845311c08001f344a5f748ba0947d68533e29130000000000000000000000000d22374c62778da39079644f3a250f00162a3e5164768897a29f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9fa39a8c7b6956432f1b07001f344a5f748ba0947d68533e29130000000000000000000000000d22374c62778da39079644f3a250f001f344a5f748ba0a49f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f97826b56402b16000000000007121b212628292a30323232322f29292929292929282520191006000000000000000000000000001b2f43576b8093a08c7864503c28140000000003172b3f53677b8fa0a09c8874604c38241000000000081c3044586c8094a08d7965513d2915001f344a5f748ba0947d68533e291300021426374655636d757879797979797979797d94a08b7979797979797979797772695d4f40301e0c00000000000000040c1216191b232726212128303a444d555b60605e5a5349392817130e0600000000000000192d3f505b5c5c594c46555c5c5c554735220e001f344a5f748ba0937c67523c292929292929292929292929292929292929292929292928241b0e00000013273a4d5f70828f9aa0a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1a09c92857564523f2c180400102336495b6c7b899398999999999999999999999999999999999999999999958c80705f4e3b281501001f344a5f748ba0947d68533e29130000000000000000000000000d22374c62778da19079644f3a250f000e213447596978858f9495959595959595959595959595959595959595959591897c6d5d4c3a271400001f344a5f748b95947d68533e29130000000000000000000000000d22374c62778d959079644f3a250f001f344a5f748b9595959595959595959595959595959595959595959595959595826b56402b1600000000000000070d111e2f3c454747474743382a191313131313100c050000000000000000000000000000001f34495e72878b8b85705d4935210d00000000001024384c6074888b8b8b826d5945311d09000000000015293d5065788b8b8b806c58432d18001f344a5f748b8b8b7d68533e291300000919283745505a606364646464646464687d94a08b746464646464646464635d564b3f31221201000000000000000000000e1f2d373c3b37363b434d576069707476736e665744301b070000000000000000001e33485c6e72726a59526471727164513c2712001f344a5f748ba0937c67523e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3d372c1e0d00000a1d30425362717d868b8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8880746657473523100000071a2c3d4e5d6b767d8384848484848484848484848484848484848484848480796e615142301f0c00001f344a5f748b8c8c7d68533e29130000000000000000000000000d22374c62778c8c8c79644f3a250f000518293b4b5a67737a7d8080808080808080808080808080808080808080807c756b5e4f3f2e1d0a00001f344a5f748080807d68533e29130000000000000000000000000d22374c627780808079644f3a250f001f344a5f74808080808080808080808080808080808080808080808080808080806b56402b1600000000000000000015293c4d595c5c5c5c5648372410000000000000000000000000000000000000000000001f34495d70747474746855412d19060000000000091c3144586b747474747465513d29160100000000000d2135495d70747474746a57422d18001f34495d707474747466523d28130000000a1927333e464b4e4f4f4f4f4f4f53687d94a08b745f4f4f4f4f4f4f4f4d4942392e21130400000000000000000000061a2c3d4a514f4c4b50576069737c848a8c8883735e48331e090000000000000000001f34495e72858876655e6f82887a67523d2813001f344a5f748ba0937c6753535353535353535353535353535353535353535353535353524a3c2b180400011324354453606a7175767676767676767676767676767676767676767676736d635748392917060000000e1f303f4d59636a6d6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6b655c50423324130100001f34495d707676767566523d28130808070601000507070705000c21364b607276767674634e39240f00000c1d2d3c4a565f66696a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6761594d403121110000001d314558676a6a6a69604e3a261213131313120d0f1313131313101f34485a686a6a6a695d4a36220d001d314558676a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a61503d28140000000000000000001a2f44586b7272727266533f2a15010000000000000000000000000000000000000000001a2e41515d5f5f5f5f594b3926120000000000000115293c4e5b5f5f5f5f5f574836220e000000000000061a2e41515d5f5f5f5f5a4d3b2814001a2e41515d5f5f5f5f584836230e000000000916212a3237393a3a3a3a3a3e53687d94a08b745f4a3a3a3a3a3a3a38352e261c100300000000000000000000000d2136495b66646060646b737c8790928c898d89735e48331e090000000000000000001b2f435567798c83716a7c8d826f5d4b382410001f344a5f748b9f94806d68686868686868686868686868686868686868686868686868675a47331f0a000006172635424e575d606060606060606060606060606060606060606060605e585045392a1b0b000000000212212f3c474f55585858585858585858585858585858585858585858585651493f332415060000001a2e41525e6060606059493723191d1d1d1b16121a1c1d1d1a13091d3144545f606060605646331f0b0000000f1e2c38434b5154545454545454545454545454545454545454545454524d463c2f22130300000016293b4953545454544e42312027292929292721242829292928251d2b3d4b53545454544c3f2d1b070016293b495354545454545454545454545454545454545454545454545454545454504333210d0000000000000000001b30465b70858888826d58442f1b0600000000000000000000000000000000000000000011233341494a4a4a4a463b2d1c0a000000000000000d1f303e474a4a4a4a4a44392a19060000000000000011233341494a4a4a4a473d2f1e0b0011233341494a4a4a4a453a2b19070000000000040e171d222425252525293e53687d8b8b8b745f4a34252525252523201a130a000000000000000000000000000f243a4f6479787676788087908e857d77747780745f4a341f0a0000000000000000001325374a5c6e80907d7688897664523f2d1b08001e33485d71869a9c8c807d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d77624c37220d000000081725303b43484b4b4b4b4b4b4b4b4b4b4b4b4b4b4b4b4b4b4b4b4b4b49443d34281b0c00000000000003111e2a333b4043434343434343434343434343434343434343434343413d362d21150600000000122434424a4b4b4b4b463b2b222c3232323029252e3232322e261a142636434a4b4b4b4b4438281604000000000e1b2630373c3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3d3932291e1204000000000c1d2c373e3f3f3f3f3b3126333b3e3e3e3e3c34373d3e3e3e3e392f212d383f3f3f3f3f3a2f211000000c1d2c373e3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3c33251504000000000000000000182d41566b80949c87725d49341f0b0000000000000000000000000000000000000000000515232e3434343434322a1d0f00000000000000000112202b33343434343431281b0c00000000000000000515232e3434343434322b1f1100000515232e343434343431281c0d000000000000000003080d0f0f0f0f13283d526674747474705d49341f0f0f0f0f0e0b060000000000000000000000000000000f253a4f64798e8c8c8e938d847a7169625f636b6a5a47321e09000000000000000000081a2d3f516375888a82907d6b594735221000001a2e42566a7d8f9f9c949494949494949494949494949494949494949494949494948d77624c37220d0000000007131e272e33363636363f474747453c37424747474238363636363634302921160a0000000000000000000c1720272b2e2e2e2e2e2e2e2e2e2e303940474b4b49453f372e2e2c28221a100400000000000616242f3536363636322922323f474747453c374247474742382918182630353636363631271a0a00000000000009141c23272a2a3444505353535350464a52535353534c3f2e2a2a28251e160c010000000000000e1a24292a2a2a2a27223444505353535350464a52535353534c3f2e1c25292a2a2a2a261d11030000000e1a24292a2a2a2a2c3d4b52535353534c434f535353535046372a2a2a2a2a2a272015070000000000000000000013283c51657a8fa18c77624e3925100000000000000000000000000000000000000000000005111a1f1f1f1f1f1d170c00000000000000000000020f181e1f1f1f1f1f1c150a0000000000000000000005111a1f1f1f1f1f1e180e0100000005111a1f1f1f1f1f1c150b000000000000000000000000000000000e233648585f5f5f5f5d51412e1a060000000000000000000000000000000000000000000f253a4f647986898987827970675e554e4a4f57574d3d2b1804000000000000000000000f223446586a7c8b8b8572604e3c291705000013273a4d5f70828f999fa0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a08d77624c37220d0000000000010b141a1e21212d40515c5c5c594c46555c5c5c554735222121211f1b150e040000000000000000000000040c1216191b232726222128303a434d555b60605e5a53493b2917140e06000000000000000006121b20212121211e192d40515c5c5c594c46555c5c5c554735220e141c20212121201d150a000000000000000000080e12162b3f52626868686864545a67686868685d4b37231513100a0300000000000000000008101415151515162b3f52626868686864545a67686868685d4b3723101415151514110a0000000000000810141515152035495b67686868685d5161686868686454412d1915151515130d0300000000000000000000000e23374c60758a9e917c68533e2a15000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000007192b3a454a4a4a4a4941332311000000000000000000000000000000000000000000000e23374b5e6b707374716c655d544b423a353b42423b2f1f0e00000000000000000000000416293b4d5f70747474675543301e0c0000000b1e30425262707c86898b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b77624c37220d000000000000000005090b1e33485d6f72726a59526371727164513c27120b0b0a0700000000000000000000000000000000000e1f2d373c3b37363b434d566068707476736e675845311d08000000000000000000000000070b0b0b0b0b091e33485d6f72726a59526371727164513c271201080b0b0b0b0b080200000000000000000000000000192e43586d7d7d7d7d705b62777d7d7d7a66503b26110000000000000000000000000000000000000000192e43586d7d7d7d7d705b62777d7d7d7a66503b26110000000000000000000000000000000000000e23384e63787d7d7d7a66576c7d7d7d7d705b46301b060000000000000000000000000000000000091d32465b70859996826d58432e1a05000000000000000000000000000000000000000000000000000000000000000000000000020a0e0e0e0e0e0b050000000000000000000000000000000000000000081014151515151515151515151514110c040000000000000000000000000000000000000000000000000d1c283134343434342e23150500000000000000000000000000000000000000000000081c2f404f575c5e5f5d58514a41372e2620282d2d281e11010000000000000000000000000c1e3042525d5f5f5f5849382513010000000113243544525f6970747474747474747474747474747474747474747474747474747471604b36210c000000000000000000000a1f34495e72848877665e6f82887a67523d28130000000000000000000000000000000000000000061a2c3d4a51504c4b50576069737c848a8c8883745f4a341f0a0000000000000000000000000000000000000a1f34495e72848877665e6f82887a67523d281300000000000000000000000000000000000000000000192e43586e84949487705b62778d94917b66503b26110000000000000000000000000000000000000000192e43586e84949487705b62778d94917b66503b26110000000000000000000000000000000000000e23384e63788f94917b66576c83949487705b46301b06000000000000000000000000000000000003182d41566a808b8b87715d48331e08000000000000000000000000000000000000000000000000000000000000000000000009151e232323232320180d0000000000000000000000000000000000000e1a24292a2a2a2a2a2a2a2a2a2a2a292520180e0300000000000000000000000000000000000000000000000b151c1f1f1f1f1f1a11050000000000000000000000000000000000000000000000001222313c4347484a48433d362e241b120c141818140b00000000000000000000000000000013243441494a4a4a453b2c1a08000000000006172635424d565c5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5e5343301c0800000000000000000000061b2f425467798b84726a7b8d826f5d4b38241000000000000000000000000000000000000000000d2136495b66646160646a737c8690928c898d8b745f4a341f0a000000000000000000000000000000000000061b2f425467798b84726a7b8d826f5d4b38241000000000000000000000000000000000000000000000192e43586e84999c87705b62778da0917b66503b26110000000000000000000000000000000000000000192e43586e84999c87705b62778da0917b66503b26110000000000000000000000000000000000000e23384e63788fa0917b66576c83989c87705b46301b0600000000000000000000000000000000000013273c5064747474746f5c47321d0800000000000000000000000000000000000000000000000000000000000000000000091927323838383838342a1d0d000000000000000000000000000000000c1d2c373e3f3f3f3f3f3f3f3f3f3f3f3e3a342b20140600000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000004131f282e323334332f29221a1108000000000000000000000000000000000000000000000616242e3434343431291d0e00000000000000081724303a42474a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a49423525140100000000000000000000001325374a5c6e80907d768889766452402e1b0800000000000000000000000000000000000000000f243a4f6479787676788087908e867d7774777d745f4a341f0a000000000000000000000000000000000000001325374a5c6e80907d768889766452402e1b0800000000000000000000000000000000000000000000192e43586e848b8b87705b62778b8b8b7b66503b26110000000000000000000000000000000000000000192e43586e848b8b87705b62778b8b8b7b66503b26110000000000000000000000000000000000000e23384e63788b8b8b7b66576c838b8b87705b46301b060000000000000000000000000000000000000d213547575f5f5f5f5d513f2c190400000000000000000000000000000000000000000000000000000000000000000001142737454d4e4e4e4d473b2b190600000000000000000000000000000016293b49535454545454545454545454534f473d322415060000000000050d11121212120f09000000000000000000000000000000000000070e12121212120f0800000000000000000000000000000000020d14191d1e1f1e1a150e060000000000000000000000000000000000000000000000000006121a1f1f1f1f1d160c00000000000000000006131d262d323434343434343434343434343434343434343434343434343434342f251708000000000000000000000000081a2c3e516375888b82907d6b59473522100000000000000000000000000000000000000000000f253a4f64798e8c8c8e938d857a7269625f636b6a5a47321e0900000000000000000000000000000000000000081a2c3e516375888b82907d6b59473522100000000000000000000000000000000000000000000000182d42576a747474746d59607174747473634f3a25100000000000000000000000000000000000000000182d42576a747474746d59607174747473634f3a25100000000000000000000000000000000000000d23384c617274747473635569747474746d5945301b0500000000000000000000000000000000000005182a39444a4a4a4a484032221000000000000000000000000000000000000000000000000000000000000000000000081c3044556163636363594835210d0000000000000000000000000000001d314558676a6a6a6a6a6a6a6a6a6a6a68635a4f42332414020000000c18212627272727241c11030000000000000000000000000000000e1a232727272727231b0f010000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000010a13191d1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1b120700000000000000000000000000000f213346586a7c8b8b8572604e3c2a18050000000000000000000000000000000000000000000f253a4f647986898987827970675e564e4a4f57574d3d2b180400000000000000000000000000000000000000000f213346586a7c8b8b8572604e3c2a1805000000000000000000000000000000000000000000000014283b4d5a5f5f5f5f5c4f535e5f5f5f5f564634200c000000000000000000000000000000000000000014283b4d5a5f5f5f5f5c4f535e5f5f5f5f564634200c000000000000000000000000000000000000091e3144545e5f5f5f5f564c5a5f5f5f5f5c4f3d2a1602000000000000000000000000000000000000000c1b283134343434332d221404000000000000000000000000000000000000000000000000000000000000000000000b20354b5f737878787765503b26100000000000000000000000000000001f344a5f7480808080808080808080807d776d60514231200d00000a1b2a353b3c3c3c3c382e211100000000000000000000000000000d1e2c373c3c3c3c3c372d1f0e0000000002090d0e0e0e0e0b05000000000000000000000000000000000000040a0e0e0e0e0e0b040000000000000000000611171a1a1a1a19150d010000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000416283a4d5f70747474675543311f0c000000000000000000000000000000000000000000000e23374b5e6b707374726c655d544b423a353b42423b2f1f0e0000000000000000000000000000000000000000000416283a4d5f70747474675543311f0c0000000000000000000000000000000000000000000000000b1e2f3d474a4a4a4a483e42494a4a4a4a443828170400000000000000000000000000000000000000000b1e2f3d474a4a4a4a483e42494a4a4a4a44382817040000000000000000000000000000000000000215263643494a4a4a4a443c464a4a4a4a483e31200e0000000000000000000000000000000000000000000a151c1f1f1f1f1e19110500000000000000000000000000000000000000000000000000000000000000000000000b21364b60768c8f8f7b66503b26110000000000000000000000000000001f344a5f748b95959595959595959595928a7d70604f3d2a1703001528394750525252524c3f2e1c0900000000000000000000000005182b3c4a51525252514a3d2c1a06000009151e232323232320180d000000000000000000000000000000000b171f23232323231f170c000000000000000918242c2f2f2f2f2e291f12020000000000000002090d0e0e0e0e0c0600000000000000000000000000070c0e0e0e0e0d0800000000000000000000000000000000000000000000000b1d3042525d5f5f5f584a3826140200000000000000000000000000000000000000000000081c2f404f575c5e5f5d58514a41382f2620282d2d281e1101000000000000000000000000000000000000000000000b1d3042525d5f5f5f584a3826140200000000000000000000000000000000000000000000000000111f2b3234343434332c2f343434343430271a0b00000000000000000000000000000000000000000000111f2b3234343434332c2f343434343430271a0b00000000000000000000000000000000000000000918252f3434343434302a3234343434332c211302000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000b21364b60768ca1917b66503b26110000000000000000000000000000001f344a5f748b9f9f9f9f9f9f9f9f9f9fa49c8f7d6c5946331e0a001c31445764676767675d4c38240f0000000000000000000000000b2034485a66676767665b4936210d00081826313838383838342b1e0e00000000000000000000000000000b1b2933383838383833291c0c0000000000041627364044444444433c30200f00000000000009151e232323232320190e0100000000000000000003101b2123232323221c13060000000000000000000000000000000000000000000012243441494a4a4a453b2c1b090000000000000000000000000000000000000000000000001222313c4247484a48433d362e251b130c141818140b0000000000000000000000000000000000000000000000000012243441494a4a4a453b2c1b090000000000000000000000000000000000000000000000000000010e181e1f1f1f1f1e191b1f1f1f1f1f1c14090000000000000000000000000000000000000000000000010e181e1f1f1f1f1e191b1f1f1f1f1f1c14090000000000000000000000000000000000000000000008131b1f1f1f1f1f1c171d1f1f1f1f1e190f03000000000000000000000000000000000000000000000000000000000000000000000000000000000000040c11120f0800000000000000000000000000000000000000000b21364b60768ca1917b66503b26110000000000000000000000000000001f344a5f74898989898989898989898a909e9c8976624d39240f001f344a5f747c7c7c7b67523c27120000000000000000000000000e23384e63777c7c7c79644f3a240f00132536444c4e4e4e4e483c2c1a0700000000000000000000000004172939464d4e4e4e4d473a2a1805000000000d213445535a5a5a5a584e3e2b180400000000081826313838383838352c1f0f00000000000000000112212e363838383837302415050000000000000000000000000000000000000000000616242e3434343431291d0e0000000000000000000000000000000000000000000000000004131f282e323334332f29221a120800000000000000000000000000000000000000000000000000000000000000000616242e3434343431291d0e00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000916202627231b0f010000000000000000000000000000000000000b21364b60768ca1917b66503b26110000000000000000000000000000001e33485d6f73737373737373737373748091a4917c67523d2813001f344a5f748b93937c67523c27120000000000000000000000000e23384e63788f939079644f3a250f001b2f435461636363635a4a37230e0000000000000000000000000a1f3346576263636362584734200c0000000012273c50636f6f6f6f6b5b47331e0900000000132536444c4e4e4e4e493d2d1b08000000000000000c1f303f4a4e4e4e4e4b423322100000000000000000000000000000000000000000000006121a1f1f1f1f1d160c000000000000000000000000000000000000000000000000000000020d14191d1e1f1e1a150e07000000000000000000000000000000000000000000000000000000000000000000000006121a1f1f1f1f1d160c00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000030b0f0f0f0f0f0d0700000000000000000000000000000000000000070d0f0f0f0f0f0b03000000000000000000040a0d0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0e0b050000000000000000000002090d0e0a0300000000000000000000000000000000000000000000000000000000071827333b3c372d1f0e0000000000000000000000000000000000000b21364b60768ca1917b66503b2611000000000000000000000000000000192d40515c5e5e5e5e5e5e5e5e5e5e61768ca1947d68533e2913001f344a5f748ba0937c67523c27120000000000000000000000000e23384e63788fa49079644f3a250f001f34495e727878787766513c27120000000000000000000000000e23384d627578787876634e39240f0000000013293e53687d868686745f4a341f0a000000001b2f435461636363635b4b3824100000000000000013283b4e5d636363635f513f2b1700000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000a161f2425252525221a0f02000000000000000000000000000000020f1a2225252525241f160a000000000000050f181e2325252525252525252525252525252525252525252525231f1911070000000000000009151e23231e170d020000000000000000000000000000000000000000000000000004152536454f514a3d2c1a0600000000000000000000000000000000000b21364b60768ca1917b66503b26110000000000000000000000000000001122323f474848484848484848484b60768ca1947d68533e2913001f344a5f748ba0937c67523c27120000000000000000000000000e23384e63788fa49079644f3a250f001f344a5f748b8f8f7c67523c27120000000000000000000000000e23384e63788f8f8f79644f3a250f0000000013293e53687d949b8b745f4a341f0a000000001f34495e727878787867523d281300000000000000172c41566b787878786f5a45301b0000000000000003090d0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0c0700000000000000000000040c10111111111111111111111111111111111111111111111111111111111111110f0900000000000000000000040b0f11111111111111111111111111111111111111111111100d0801000000000000000000030b0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0d080000000009192733393a3a3a3a362d201000000000000000000000000000000010202d363a3a3a3a3933271909000000000b17222b33383a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a38342d241a0d0000000000081826313838332a201406000000000000000000000000000000000000000000000001112232435363665b4936210d00000000000000000000000000000000000b21364b60768ca1917b66503b26110000000000000000000000000000000514222c323333333333333333364b60768ca1947d68533e2913001f344a5f748ba0937c67523c27120000000000000000000000000e23384e63788fa49079644f3a250f001f344a5f748ba0937c67523c27120000000000000000000000000e23384e63788fa49079644f3a250f0000000013293e53687d94a08b745f4a341f0a000000001f344a5f748b8f8f7d68533e291300000000000000172c42576c838f8f87705b46301b0000000000050f171e222525252525252525252525252525252525252525252524211b140a000000000000000b17202526262626262626262626262626262626262626262626262626262626262626241d12040000000000000610191f242626262626262626262626262626262626262626262625221c150b010000000000000a161f2425252525252525252525252525252525252525252525252525252525221b11030000142637454e4f4f4f4f4a3e2e1c0900000000000000000000000000091c2e3e4a4f4f4f4f4e453726140000000c1b28353f474c4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4d4841372b1e0f00000000132536444c4d463d31241506000000000000000000000000000000000000000000000e1f2f4050617179644f3a240f00000000000000000000000000000000000b21364b60768ca1917b66503b2611000000000000000000000000000000000410191d1e1e1e1e1e1e1e21364b60768ca1947d68533e2913001f344a5f748ba0937c67523c27120000000000000000000000000e23384e63788fa49079644f3a250f001f344a5f748ba0937c67523c27120000000000000000000000000e23384e63788fa49079644f3a250f0000000013293e53687d94a08b745f4a341f0a000000001f344a5f748ba0947d68533e291300000000000000172c42576c83989c87705b46301b000000000a16222b32373a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a39352f271d110400000000091a28343a3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b382f221302000000000b18232c33393b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3a3731281e12050000000009192733393a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a372e211201001b30435562646464645c4b382410000000000000000000000000001024384b5c64646464625543301b00000a1a2a3946525b6164646464646464646464646464646464646464646464625c54493c2d1e0d0000001b2f43546162594f423324130200000000000000000000000000000000000000000b1c2c3d4d5e6e8079644f3a250f00000000000000000000000000000000000b21364b60768ca1917b66503b261100000000000000000000000000000000000000000000000000000b21364b60768ca1947d68533e2913001f344a5f748ba0937c67523c27121111111111111111111111111123384e63788fa49079644f3a250f001f344a5f748ba0937c67523c27120000000000000000000000000e23384e63788fa49079644f3a250f0000000013293e53687d94a08b745f4a341f0a000000001f344a5f748ba0947d68533e291300000000000000172c42576c83989c87705b46301b0000000b1a28343e464c4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4e4a433a2f211404000000142738464f505050505050505050505050505050505050505050505050505050505050504c40311f0c0000000c1b293540484d505050505050505050505050505050505050505050504f4b443b30221405000000142637454e4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4b3f301e0b001f34495e737979797968533d28130000000000000000000000000013283d536879797979735e49341f00041627384857646e76797979797979797979797979797979797979797979797770665a4b3c2b190700001f34495e72766c60514231200d000000000000000000000000000000000000000819293a4a5b6b7c8d79644f3a250f00000000000000000000000000000000000d21364b60768ca1917b66503b261200000000000000000000000000000000000000000000000000000b21364b60768ca1947d68533e2913001f344a5f748ba0937c67523c27262626262626262626262626262626384e63788fa49079644f3a250f001f344a5f748ba0937c67523c27120000000000000000000000000e23384e63788fa49079644f3a250f0000000013293e53687d94a08b745f4a341f0a000000001f344a5f748ba0947d68533e291300000000000000172c42576c83989c87705b46301b0000091a293845515a6164646464646464646464646464646464646464646464635e564c3f3222120100001c30445663666666666666666666666666666666666666666666666666666666666666665e4e3b271300000a1b2a3947525c62666666666666666666666666666666666666666666666460574d403223130200001b30435562646464646464646464646464646464646464646464646464646464645d4e3b2712001f344a5f748b90907d68533e29130000000000000000000000000013293e53687d90908b745f4a341f000d203345566675828a8f9090909090909090909090909090909090909090908c847769594837241100001f344a5f74897d70604f3d2a1703000000000000000000000000000000000005162637475868788a9079644f3a250f00000000000000000000000000000000091a2b3c4d60768ca1917b6651402f1e0d000000000000000000000000000000000000000000000000000b21364b60768ca1947d68533e2913001f344a5f748ba0937c67523c3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b4e63788fa49079644f3a250f001f344a5f748ba0937c67523c27120d0d0d0d0d0d0d0d0d0d0d0d0e23384e63788fa49079644f3a250f0000000013293e53687d94a08b745f4a341f0a000000001f344a5f748ba0947d68533e291300000000000000172c42576c83989c87705b46301b00021527374756636e75797979797979797979797979797979797979797979797872695d5040301e0d00001f344a5f737b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b6a55402b1600041628394857646f777b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b79746a5e5141311f0d00001f34495e73797979797979797979797979797979797979797979797979797979796a55402b16001f344a5f748ba0947d68533e29130000000000000000000000000013293e53687d94a08b745f4a341f0015293d50627485939ea4a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a09588776653402d1904001f344a5f748b8f7d6c5946331e0a00000000000000000000000000000000021323344455657586979079644f3a250f00000000000000000000000000000004152637495a6b7c8da293826f5e4d3c2b1a090000000000000000000000000000000000000000000000000b21364b60768ca1947d68533e2913001f344a5f748ba0937c67525050505050505050505050505050505050505063788fa49079644f3a250f001f344a5f748ba0937c67523c27222222222222222222222222222223384e63788fa49079644f3a250f0000000013293e53687d94a08b745f4a341f0a000000001f344a5f748ba0947d68533e291300000000000000172c42576c83989c87705b46301b000c1f3244556574828a8f9090909090909090909090909090909090909090908d867b6e5e4e3c2a1704001f344a5f748b9191919191919191919191919191919191919191919191919191919191826b56402b16000d203345566675828b909191919191919191919191919191919191919191918f887c6f5f4e3d2a1704001f344a5f748b9090909090909090909090909090909090909090909090909090826b56402b16001f344a5f748ba0947d68533e29130000000000000000000000000013293e53687d94a08b745f4a341f001b2f44586c8092a3978f8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8f95a29583705c48331f0a001f344a5f748b9c8976624e39251000000000000000000000000000000000102031415162728394978775634e39240f00000000000000000000000000000011223344556677899aab9e8d7c6b5a483726150400000000000000000000000000000000000000000000000b21364b60768ca1947d68533e2913001f344a5f748ba0937c67666666666666666666666666666666666666666666788fa49079644f3a250f001f344a5f748ba0937c67523c37373737373737373737373737373737384e63788fa49079644f3a250f0000000013293e53687d94a08b745f4a341f0a000000001f344a5f748ba0947d68533e291300000000000000172c42576c83989c87705b46301b0014283b4e617384929ea4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a2998c7c6b5946331f0b001f344a5f748ba0a7a7a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a397826b56402b160015293d50637485949fa3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a39a8d7d6c5a4733200c001f344a5f748ba0a5a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a397826b56402b16001f344a5f748ba0947d68533e29130000000000000000000000000013293e53687d94a08b745f4a341f001e33485d72879c99887a77777777777777777777777777777777777777777884959f8b76614d38230e001f344a5f748ba0917c67523d28130000000000000000000000000000000d1d2e3e4f5f7080919a8a7968584734200b00000000000000000000000000000c1d2f405162738495a6a5a99a897766554433221100000000000000000000000000000000000000000000000b21364b60768ca1947d68533e2913001f344a5f748ba0937c7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b8fa49079644f3a250f001f344a5f748ba0937c67524c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4e63788fa49079644f3a250f0000000013293e53687d94a08b745f4a341f0a000000001f344a5f748ba0947d68533e291300000000000000172c42576c83989c87705b46301b001a2e43576b7d91a2928f8f8f8f8f8f8f8f8f8f8f8f8f8f8f8f8f8f8f8f8f8f939f9b8976624e3a2511001f344a5f748ba0a6988f8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d826b56402b16001b2f44586c8092a3988f8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d929e9b8a76634f3a2611001f344a5f748ba0978d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d826b56402b16001f344a5f748ba0947d68533e29130000000000000000000000000013293e53687d94a08b745f4a341f001f344a5f748ba0937d69626262626262626262626262626262626262626266798fa48f79644f3a240f001f344a5f748ba0947d68533e291300000000000000000000000000000a1a2b3b4c5c6d7d8e9d8d7c6b5b4a3a2917040000000000000000000000000008192a3b4c5d6e8091a29d9098a69584736251402e1d0c000000000000000000000000000000000000000000000b21364b60768ca1947d68533e2913001f344a5f748ba09a91919191919191919191919191919191919191919191919197a59079644f3a250f001f344a5f748ba0937c67626262626262626262626262626262626262626263788fa49079644f3a250f0000000013293e53687d94a08b745f4a341f0a000000001f344a5f748ba0947d68533e291300000000000000172c42576c83989c87705b46301b001e33485d71869a9f8b7c7878787878787878787878787878787878787878788291a3927d68533f2914001f344a5f748ba09b897a77777777777777777777777777777777777777777777777777776955402b16001f34495d72889c9b897a7777777777777777777777777777777777777777778090a3927d68543f2a14001f344a5f748ba0937c7777777777777777777777777777777777777777777777776955402b16001f344a5f748ba0947d68533e29130000000000000000000000000013293e53687d94a08b745f4a341f001f344a5f748ba0937c67524c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4e63788fa49079644f3a250f001f344a5f748ba0947d68533e291300000000000000000000000000071728384959697a8b9b8f806e5e4d3d2c1c0b000000000000000000000000000314263748596a7b8d9ea090808b9ca291806e5d4c3b2a19080000000000000000000000000000000000000000000b21364b60768ca1947d68533e2913001f344a5f748ba0a6a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1a5a59079644f3a250f001f344a5f748ba0937c77777777777777777777777777777777777777777777788fa49079644f3a250f0000000013293e53687d94a08b745f4a341f0a000000001f344a5f748ba0947d68533e291300000000000000172c42576c83989c87705b46301b001f344a5f748a9fa99a8d80716463636363636363636363636363636363636473899e96826b56402b16001f344a5f748ba094806a62626262626262626262626262626262626262626262626262625b4c3a2612001f344a5f748b9494806a62626262626262626262626262626262626262626273889d96826b56402b16001f344a5f748ba0937c6762626262626262626262626262626262626262626262625b4c3a2612001f344a5f748ba0947d68533e29130000000000000000000000000013293e53687d94a08b745f4a341f001f344a5f748b8f8f7c67523c37373737373737373737373737373737384e63788fa49079644f3a250f001f344a5f748ba0947d68533e2913000000000000000000000000041425354556667788989282716150402f1f0e0000000000000000000000000000102132435465768899a49383717d8f9f9e8d7b6a59483725140300000000000000000000000000000000000000000b21364b60768ca1947d68533e2913001f344a5f748ba0978c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c93a59079644f3a250f001f344a5f748ba0978d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d94a59079644f3a250f0000000013293e53687d94a08b745f4a341f0a000000001f344a5f748ba0947d68533e291300000000000000172c42576c83989c87705b46301b001f344a5f748ba0ada89d90827467594e4e4e4e4e4e4e4e4e4e4e4e4e4e4e5c72889d97826b56402b16001f344a5f748ba0947d68534c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c483d2e1d0a001f344a5f747d7d7d7d68534c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c5c72889d97826b56402b16001f344a5f748ba0937c67524c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c483d2e1d0a001f344a5f748ba0947d68533e29130707070707070707070707070713293e53687d94a08b745f4a341f001f34495e727878787766513c27222222222222222222222222222223384e63788fa49079644f3a250f001f344a5f748b9b947d68533e291300000000000000000000000111223242536373859595857463534332221101000000000000000000000000000b1d2e3f5061728395a697867564708292a399887665544332211000000000000000000000000000000000000000000b21364b60768ca1947d68533e2913001f344a5f748ba0937c76767676767676767676767676767676767676767676788fa49079644f3a250f001f344a5f748ba0a8a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a6a59079644f3a250f0000000013293e53687d94a08b745f4a341f0a000000001f344a5f748ba0947d68533e291300000000000000172c42576c83989c87705b46301b001f344a5f748ba09c939ca09285776a5c4f413838383838383838383838475c72889d97826b56402b16001f344a5f748ba0947d68533e373737373737373737373737373737373737373737373737342c1f1000001c31455866686868685f4d3a3737373737373737373737373737373737475c72889d97826b56402b16001f344a5f748ba0937c67523c373737373737373737373737373737373737373737342c1f1000001f344a5f748ba0947d68533e291d1d1d1d1d1d1d1d1d1d1d1d1d1d1d293e53687d94a08b745f4a341f001b2f435461636363635a4a37230e0d0d0d0d0d0d0d0d0d0d0d0d0e23384e63788fa49079644f3a250f001f344a5f748686867d68533e291300000000000000000000000e1e2f3f506070829298887767564635251504000000000000000000000000000718293a4b5c6e8090a19a8a78685763748596a694837261503e2e1d0b000000000000000000000000000000000000000b21364b60768ca1947d68533e2913001f344a5f748ba0937c67606060606060606060606060606060606060606063788fa49079644f3a250f001f344a5f748ba09990909090909090909090909090909090909090909090909096a59079644f3a250f0000000013293e53687d94a08b745f4a341f0a000000001f344a5f748ba0947d68533e291300000000000000172c42576c83989c87705b46301b001f344a5f748ba0947d8c99a395887a6d5f514436292323232323232332475c72889d97826b56402b16001f344a5f748ba0947d68533e29222222222222222222222222222222222222222222222220190f01000015283a4852535353534d41302222222222222222222222222222222232475c72889d97826b56402b16001f344a5f748ba0937c67523c27222222222222222222222222222222222222222220190f0100001f344a5f748ba0947d68533e32323232323232323232323232323232323e53687d94a08b745f4a341f00132536444c4e4e4e4e483c2c1a070000000000000000000000000e23384e63788fa49079644f3a250f001e33475b6b6f6f6f6f63503c2712000000000000000000000b1c2c3c4d5d6e7d8f9b8b7a6a59493828170700000000000000000000000000021425364758697a8c9d9e8d7c6b5b4a5667778999a190806e5c4b3a2918070000000000000000000000000000000000000b21364b60768ca1947d68533e2913001f344a5f748ba0937c67524b4b4b4b4b4b4b4b4b4b4b4b4b4b4b4b4b4b4e63788fa49079644f3a250f001f344a5f748ba0937c79797979797979797979797979797979797979797979798fa49079644f3a250f0000000013293e53687d94a08b745f4a341f0a000000001f344a5f748ba0947d68533e291300000000000000172c42576c83989c87705b46301b001f344a5f748ba0947d7a8996a3988b7d6f625447392c1e110e0e0e1d32475c72889d97826b56402b16001f344a5f748ba0947d68533e2926262626262626262626262626262626262626231d150d0b05000000000b1c2b363d3e3e3e3e3a30231616161616161616161616161616161d32475c72889d97826b56402b16001f344a5f748ba0937c67523c271d1d1d1d1d1d1d1d1d1d1d1d1d1d1d1c160e0d0d0b05000000001f344a5f748ba0947d68534747474747474747474747474747474747474753687d94a08b745f4a341f00081826313838383838342b1e0e000000000000000000000000000e23384e63788fa49079644f3a250f00182b3e4e585a5a5a5a534534210d000000000000000000081929394a5a6b7b8c9d8e7d6d5c4c3b2b1a0a00000000000000000000000000000f2031425364758798a190806f5e4d3d495a6a7b8c9d9d8c7a6958473625140200000000000000000000000000000000000b21364b60768ca1947d68533e2913001f344a5f748ba0937c67523c36363636363636363636363636363636384e63788fa49079644f3a250f001f344a5f748ba0937c67646464646464646464646464646464646464646464788fa49079644f3a250f0000000013293e53687d94a08b745f4a341f0a000000001f344a5f748ba0947d68533e291300000000000000172c42576c83989c87705b46301b001f344a5f748ba0947d6a778693a19b8e807265574a3c2f211406001d32475c72889d97826b56402b16001f344a5f748ba0947d68533e3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3731281e120500000000000d19232829292928272b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b32475c72889d97826b56402b16001f344a5f748ba0937c67523c32323232323232323232323232323232312a1f12020000000000001f344a5f748ba0947d685c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c687d94a08b745f4a341f000009151e232323232320180d00000000000000000000000000000e23384e63788fa49079644f3a250f000f20303c434444444440362716040000000000000000051526364757687889999180705f4f3e2e1d0d00000000000000000000000000000a1b2d3e4f60718394a5948372615140303c4d5d6e8090a198877564534231200f00000000000000000000000000000000000b21364b60768ca1947d68533e2913001f344a5f748ba0937c67523c27212121212121212121212121212123384e63788fa49079644f3a250f001f344a5f748ba0937c67524f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f63788fa49079644f3a250f0000000013293e53687d94a08b745f4a341f0a000000001f344a5f748ba0947d68533e29130f0f0f0f0f0f0f172c42576c83989c87705b46301b001f344a5f748ba0947d68677583909e9e908375675a4d3f322416091d32475c72889d97826b56402b16001f344a5f748ba0947d68535050505050505050505050505050505050505050504c453b302314050000000000070e13131321303b40404040404040404040404040404040404040475c72889d97826b56402b16001f344a5f748ba0937c67524747474747474747474747474747474747453d301f0e0000000000001f344a5f748ba0947d72727272727272727272727272727272727272727272727d94a08b745f4a341f00000002090d0e0e0e0e0b050000000000000000000000000000000e23384e63788fa49079644f3a250f0002121f292e2f2f2f2f2c2418090000000000000000021223334454647586979483726252413120100000000000000000000000000000061728394a5c6d7d8fa097877565544433222f3f5061718393a4948371604f3e2d1b0a000000000000000000000000000000000b21364b60768ca1947d68533e2913001f344a5f748ba0937c67523c27120b0b0b0b0b0b0b0b0b0b0b0b0e23384e63788fa49079644f3a250f001f344a5f748ba0937c67523c3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a4e63788fa49079644f3a250f0000000013293e53687d94a08b745f4a341f0a000000001f344a5f748ba0947d68533e292525252525252525252c42576c83989c87705b46301b001f344a5f748ba0947d68576472808e9ba19386786a5d4f423427191d32475c72889d97826b56402b16001f344a5f74899f95806d6666666666666666666666666666666666666666666560584e413223130200000000000000081b2e3f4e55565656565656565656565656565656565656565c72889d97826b56402b16001f344a5f748ba0937c675c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5a4e3d2a160200000000001f344a5f748ba0968888888888888888888888888888888888888888888888888896a08b745f4a341f0000000000000000000000000000000000000000000000000000000e23384e63788fa49079644f3a250f0000010d15191a1a1a1a1711060000000000000000000f2030415161728393978675655544342313030000000000000000000000000001132435465768798b9c9b8a796858473726152232435464758697a08f7d6d5c4a392817060000000000000000000000000000000b21364b60768ca1947d68533e2913001f344a5f748ba0937c67523c27120101010101010101010101010e23384e63788fa49079644f3a250f001f344a5f748ba0937c67523c27252525252525252525252525252525384e63788fa49079644f3a250f0000000013293e53687d94a08b745f4a341f0a000000001f344a5f748ba0947d68533e3a3a3a3a3a3a3a3a3a3a3a42576c83989c87705b46301b001f344a5f748ba0947d685354616f7d8b98a496897b6d605245372a1d32475c72889d97826b56402b16001d32475c71869a9c8c7d7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b79746b5f514131200e000000000000000d22374b5d6a6b6b6b6b6b6b6b6b6b6b6b6b6b6b6b6b6b6b6b6c778a9f95806a55402b16001f344a5f748ba0937c727272727272727272727272727272727272726c5a45311c0600000000001f344a5f748ba0a49d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9da4a08b745f4a341f0000000000000000000000000000000000000000000000000000000e23384e63788fa49079644f3a250f0000000000000000000000000000000000000000000c1d2d3e4e5f6f80909a8a786858473726160500000000000000000000000000000e1f304152647586979e8e7d6c5b4b3a291908152536475868798a9b9c8b796857463524130100000000000000000000000000000b21364b60768ca1947d68533e2913001f344a5f748ba0937c67523c27161616161616161616161616161623384e63788fa49079644f3a250f001f344a5f748ba0937c67523c27120f0f0f0f0f0f0f0f0f0f0f0f0f23384e63788fa49079644f3a250f0000000013293e53687d94a08b745f4a341f0a000000001f344a5f748ba0947d68534f4f4f4f4f4f4f4f4f4f4f4f4f576c83989c87705b46301b001f344a5f748ba0947d685344515f6c7a8895a3998c7d706355483a2d32475c72889d97826b56402b1600192e42566a7d90a09c939191919191919191919191919191919191919191918f887d6f5f4f3d2a17040000000000000f253a4f647982828282828282828282828282828282828282828896a28f7a66523d2813001f344a5f748ba0958888888888888888888888888888888888888888725c47321d0700000000001f344a5f748ba09f979797979797979797979797979797979797979797979797979fa08b745f4a341f0000000000000000000000000000000000000000000000000000000e23384e63788fa49079644f3a250f0000000000000000000000000000000000000000091a2a3b4b5c6c7d8e9d8d7c6b5b4a3a29190900000000000000000000000000000a1b2c3d4e5f708293a291806f5f4e3d2d1c0b000818293a4a5b6c7c8e9e978675645241301f0e00000000000000000000000000000b21364b60768ca1947d68533e2913001f344a5f748ba0937c67523c2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b384e63788fa49079644f3a250f001f344a5f748ba0937c67523c27120000000000000000000000000e23384e63788fa49079644f3a250f0000000013293e53687d94a08b745f4a341f0a000000001f344a5f748ba095806c6464646464646464646464646464646f83989c87705b46301b001f344a5f748ba0947d68533e414e5c69778592a09c8f827366584b3d32475c72889d97826b56402b160013273a4d607182909ba1a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a49b8e7d6c5a4734200c0000000000000f253a4f647990979797979797979797979797979797979797979ba59585725f4b37230f001f344a5f748ba0a39d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d88725c47321d0700000000001f344a5f748ba0948282828282828282828282828282828282828282828282828294a08b745f4a341f0000000000000000000000000000000000000000000000000000000e23384e63788fa49079644f3a250f0000000000000000000000000000000000000006172738485969798a9b8f806e5e4d3d2c1c0b0000000000000000000000000000051627384a5b6c7d8f9f948473625141301f0f0000000b1c2c3d4e5f6f8091a29382705f4e3d2c1b0a000000000000000000000000000b21364b60768ca1947d68533e2913001f344a5f748ba0937c67524040404040404040404040404040404040404e63788fa49079644f3a250f001f344a5f748ba0937c67523c27121212121212121212121212121223384e63788fa49079644f3a250f0000000013293e53687d94a08b745f4a341f0a000000001f344a5f748ba09c8b7d7979797979797979797979797979797d8d9f97836e59442f1a001f344a5f748ba0947d68533e303e4c596774828f9d9f918476685b4d40475c72889d97826b56402b16000b1e31435363727d888c8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d929e9c8a76634f3a26110000000000000f253a4f6479909d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9da3af9c8876665543301c08001f344a5f748ba09e9797979797979797979797979797979797979788725c47321d0700000000001f344a5f748ba0947d6b6b6b6b6b6b6b6b6b6b6b6b6b6b6b6b6b6b6b6b6b6b6b7d94a08b745f4a341f0000000000000000000000000000000000000000000000000000000e23384e63788fa49079644f3a250f000000000000000000000000000000000000031424354555667688989282716150402f1f0e000000000000000000000000000000112334455667788a9b98887666554434231202000000000f1f304151627384959f8f7d6c5b49382716030000000000000000000000000b21364b60768ca1947d68533e2913001f344a5f748ba0937c67565656565656565656565656565656565656565663788fa49079644f3a250f001f344a5f748ba0937c67523c27272727272727272727272727272727384e63788fa49079644f3a250f0000000013293e53687d94a08b745f4a341f0a000000001f344a5f748ba0a99b92909090909090909090909090909090929c9e8d7a67533f2b16001f344a5f748ba0947d68533e292e3b49566471808d9aa29487796b5e50475c72889d97826b56402b1600011325364554616b72767777777777777777777777777777777777777777778090a2927d68543f2a150000000000000f253a4f647988888888888888888888888888888888888888919f9a85715d4937251300001f344a5f748ba0938282828282828282828282828282828282828282725c47321d0700000000001f344a5f748ba0947d68565656565656565656565656565656565656565656687d94a08b745f4a341f0000000000000000000000000000000000000000000000000000000e23384e63788fa49079644f3a250f000000000000000000000000000000000000112132425263738495958574635343322211010000000000000000000000000000001a2e4152637485979b8b7a695848372616050000000000011223344455667688989b8a78675645331f0b0000000000000000000000000b21364b60768ca1947d68533e2913001f344a5f74899f95806f6b6b6b6b6b6b6b6b6b6b6b6b6b6b6b6b6b6b6b6b6c7c90a38f78644f3a240f001f344a5f748ba0937c67523c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c4e63788fa49079644f3a250f0000000013293e53687d94a08b745f4a341f0a000000001f344a5f748ba0a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a29b8f806f5d4b382410001f344a5f748ba0947d68533e291d2b384653616f7c8a97a5978a7c6e61535c72889d97826b56402b16000007182736434e585e6162626262626262626262626262626262626262626273889d96826b56402b160000000000000e23384d6170727272727272727272727272727272727272738294a18c77624d38230e00001f344a5f748ba0937c6b6b6b6b6b6b6b6b6b6b6b6b6b6b6b6b6b6b6b6757432f1a0600000000001f344a5f748ba0947d68534040404040404040404040404040404040404053687d94a08b745f4a341f0000000000000000000000000000000000000000000000000000000e23384e63788fa49079644f3a250f00000000000000000000000000000000000e1e2f3f506070829298887766564635251404000000000000000000000000000000001f34495d70828c8c8c7d6d5c4b3b2a1909000000000000000516273748596a7a8c8c8c8574624e39240f0000000000000000000000000b21364b60768ca1947d68533e2913001d32475b7085989e8e838282828282828282828282828282828282828282828a999c8975604b37220d001f344a5f748ba0937c67525252525252525252525252525252525252525263788fa49079644f3a250f0000000013293e53687d94a08b745f4a341f0a000000001f344a5f748b8f8f8f8f8f8f8f8f8f8f8f8f8f8f8f8f8f8f8f8d877d706151402e1b08001f344a5f748ba0947d68533e29131a283643515e6c798795a29a8d8071635c72889d97826b56402b16000000091826323b44494c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c5c72889d97826b56402b16000000030b0f0f1e3144535c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c647990a48f78634e38230e00001f344a5f748ba0937c6756565656565656565656565656565656565653493927140000000000001f344a5f748ba0947d68533e2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b3e53687d94a08b745f4a341f0000000000000000000000000000000000000000000000000000000e23384e63788fa49079644f3a250f000000000000000000000000000000000a1b2c3c4d5d6e7d8f9b8b7a6a59493828170700000000000000000000000000000000001f34495d7076767676705f4f3e2d1d0c020607070707050000091a2a3b4c5c6d7676767674634e39240f0000000000000000000000000b21364b60768ca1947d68533e291300182d4155687b8d9d9f979797979797979797979797979797979797979797979ca091806d5946311d08001f344a5f748a9f94806c6767676767676767676767676767676767676767697a8fa48f79644f3a250f0000000013293e53687d94a08b745f4a341f0a000000001f34495e72787878787878787878787878787878787878787877736a60524334231100001f344a5f748ba0947d68533e29130a182533404e5b697684929f9d8f82746672889d97826b56402b1600000b17202526282f343737373737373737373737373737373737373737475c72889d97826b56402b1600000a161f2425252635414747474747474747474747474747474747474f647990a48f78634e38230e00001f344a5f748ba0937c675240404040404040404040404040404040403f372b1b0a0000000000001f344a5f748ba0947d68533e29161616161616161616161616161616293e53687d94a08b745f4a341f0000000000000000000000000000000000000000000000000000000e23384e63788fa49079644f3a250f000000070e1313131313110a01000000152839495a6a7b8c9c8e7d6d5c4c3b2b1a0a0000000000000000000000000000000000001a2e41525e606060605e51413120100e161c1d1d1d1d1a1409000c1d2e3e4f5c60606060605646331f0b0000000000000000000000000b21364b60768ca1947d68533e2913001225394c5d6f7d8c979c9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9c988f827261503d2a1602001d32475c71869a9b8b7d7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c87979e8a76614c37220d0000000013293e53687d94a08b745f4a341f0a000000001b2f4354616363636363636363636363636363636363636363625e574e423425160500001f344a5f748ba0947d68533e291300071522303d4b586673828f9da092857772889d97826b56402b1600091a28343a3b3b3b3b372e222222222222222222222222222222222232475c72889d97826b56402b160009192733393a3a3a3a3632323232323232323232323232323232323a4f647990a48f78634e38230e00001f344a5f748ba0937c67523c2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2a241a0d000000000000001f344a5f748ba0947d68533e29130000000000000000000000000013293e53687d94a08b745f4a341f0000000000000000000000000000000000000000000000000000000e23384e63788fa49079644f3a250f00000d19232829292928251e120400001c314457677889999180705f4f3e2e1d0d00000000000000000000000000000000000000122434424a4b4b4b4b4a41332413121f2a31323232322f271b0c001021313f484b4b4b4b4b44382816040000000000000000000000000b21364b60768ca1947d68533e291300091c2e4051606e7a8387888888888888888888888888888888888888888888847c7163544432200e0000192e42566a7d8f9f9b9393939393939393939393939393939393939393939399a393826e5b47331e090000000013293e53687d94a08b745f4a341f0a00000000132536444c4e4e4e4e4e4e4e4e4e4e4e4e4e4e4e4e4e4e4e4e4d4a443b302416070000001f344a5f748ba0947d68533e2915151515151f2d3b485563707d8c9aa295887a889d97826b56402b1600142738464f505050504b3f2f1d15151515151515151515151515151d32475c72889d97826b56402b1600142637454e4f4f4f4f4a3e2e1d1d1d1d1d1d1d1d1d1d1d1d1d1d253a4f647990a48f78634e38230e00001f344a5f748ba0937c67523c271616161616161616161616161616161513131313110b020000001f344a5f748ba0947d68533e29130000000000000000000000000013293e53687d94a08b745f4a341f0000000000000000000000000000000000000000000000000000000e23384e63788fa49079644f3a250f000b1c2b363d3e3e3e3e3a30231201001f344a5f74869694837262514131201000000000000000000000000000000000000000000616242f3536363636352e23150e1f303d454747474743382a19070313212d34363636363631271a0a000000000000000000000000000b21364b60768c8c8c7d68533e2913000011223242505d676d717272727272727272727272727272727272727272726f695f534536261503000013273a4d6071828f9aa0a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1a09c92857564523f2b18040000000013293e53687d94958b745f4a341f0a0000000008182631383838383838383838383838383838383838383838383530281e1306000000001f344a5f748ba0947d68533e2a2a2a2a2a2a2a2a2a384552606e7b8997a4988b899e97826b56402b16001c30445663666666665d4c392a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a32475c72889d97826b56402b16001b30435562646464645c4b382a2a2a2a2a2a2a2a2a2a2a2a2a2a2a3a4f647990a48f78634e38230e00001f344a5f748ba0937c67523c292929292929292929292929292929292929292929261f140600001f344a5f748ba0947d68533e29130000000000000000000000000013293e53687d94a08b745f4a341f0000000000000000000000000000000000000000000000000000000e23384e63788fa49079644f3a250f0015283a4852535353534d41301e0a001f344a5f748b9786756555443423130200000000000000000000000000000000000000000006121b2021212121201b1206162a3d4e5a5c5c5c5c564836230f000310191f21212121201d150a00000000000000000000000000000b20354a5f717676767566523d28130000041423323f4a53595c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5a554d42362718080000000b1e30425362717d868b8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c88807466574635220f000000000013293e53687d808080745f4a341f0a000000000009151e2323232323232323232323232323292f343635322d27201b140b0100000000001f344a5f748ba0947d68533f3f3f3f3f3f3f3f3f3f3f3f42505d6b788694a19c9ba797826b56402b16001f344a5f737b7b7b7a68533f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f475c72889d97826b56402b16001f34495e737979797968533f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f4f647990a48f78634e38230e00001f344a5f748ba0937c67523e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3b32241503001f344a5f748ba0947d68533e29130000000000000000000000000013293e53687d94a08b745f4a341f0000000000000000000000000000000000000000000000000000000e23384e63788fa49079644f3a250f001c31455866686868685f4d3a2511001f344a5f748b897868584737261605000000000000000000000000000000000000000000000000070b0b0b0b0b0b0600001c31455a6c7272727266523e2915000000050a0b0b0b0b0b0802000000000000000000000000000000071c2f42535f60606060594937230f0000000514222d373f44474747474747474747474747474747474747474747474540393024180900000000011325354453606a7175767676767676767676767676767676767676767676736c63564839281705000000000711263a4e60696a6a6a675845311d0e07000000000002090d0e0e0e0e11120f0e1018222b353d44494b4b47423b312313020000000000001f344a5f748ba0947d68545454545454545454545454545454545a687583919eacac97826b56402b16001f344a5f748b91917d6854545454545454545454545454545454545454545c72889d97826b56402b16001f344a5f748b90907d6854545454545454545454545454545454545454647990a48f78634e38230e00001f344a5f748ba0937c6753535353535353535353535353535353535353535353534e4232200d001f344a5f748ba0947d68533e29130000000000000000000000000013293e53687d94a08b745f4a341f0000000000000000000000000000000000000000000000000000000e23384e63788fa49079644f3a250f001f344a5f747d7d7d7d68533e2813001f344a5f748b7b6b5b4a3a29190800000000000000000000000000000000000000000000000000000000000000000000001c32475c70868888826c58432e1a0500000000000000000000000000000000000000000000000000000317293b4952535353534d41301e0a0000000004101b242b2f32323645505353535350454b52535353534c3f323232302c261d130700000000000007172635434e575d606060606060606060606060606060606060606060605e585045392a1b0b000000000d19232831424e5454545453493b292823190d000000000000000008151f26272321242b353e4851585e605f5c564e42311e0b0000000000001f344a5f73899e96826f6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a72808f9caa95806b56402b16001f34495e73899e9682706a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6b768a9f95806a55402b16001f344a5f748a9f9682706a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6d7d91a38e78634e38230e00001f344a5f748ba0937c68686868686868686868686868686868686868686868686860503c2813001f344a5f748ba0947d68533e29130000000000000000000000000013293e53687d94a08b745f4a341f0000000000000000000000000000000000000000000000000000000e23384e63788fa49079644f3a250f001f344a5f748b94947d68533e2913001f344a5f747d6e5e4d3d2c1c0b000000000000000000000000000000000000000000000000000000000000000000000000192d42576b80959b87715d48331f0a0000000000000000000000000000000000000000000000000000091e32465966686868685f4d3a25110000000000000810161a1d2c4053636868686863535b67686868685d4b37231d1b17110a000000000000000000081725313b43484b4b4b4b4b4b4b4b5458585858554d4b4b4b4b4b4b4b49443d33281b0c000000000b1c2b363d3e3e3e3f3f3f3f3e3e3e3e3d362b1c0b000000000000061726323a3c3836383f48515b646c727674706a604e3a26110000000000001d32465b7085989e8e828080808080808080808080808080808080808080808093a3907b67523d2814001d32465b7085989e8f838080808080808080808080808080808080808080808695a3907b67523d2814001d32475c7085999e8f8380808080808080808080808080808080808080828b9b9c8974604b36210c00001f344a5f748ba0937d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d6b56402b16001f344a5f748ba0947d68533e29130000000000000000000000000013293e53687d94a08b745f4a341f0000000000000000000000000000000000000000000000000000000e23384e63788fa09079644f3a250f001f344a5f748ba0947d68533e2913001f34495d70706050402f1f0e0000000000000000000000000000000000000000000000000000000000000000000000000014283d52667b90a08b76624d38240f00000000000000000000000000000000000000000000000000000b21364b60757d7d7d7d68533e2813000000000000000000001a2f445a6f7d7d7d7d6f5a63787d7d7d7a66503b2611000000000000000000000000000007131e282e3336363636363d4e5d676e6e6e6e6a5f5141363636363634302921160a000000000015283a4852535353534d424e5353535352483a2815000000000000102335444f514d4b4d535b646e7780888c8a867d68533e2913000000000000182d4155697c8e9e9e96959595959595959595959595959595959595959595959d978673604c38240f00182d4155687b8e9e9f9795959595959595959595959595959595959595959599a4978673604c38240f00192d4255697c8e9e9f9795959595959595959595959595959595959595969ca191806d5945311d0800001f344a5f748ba09c949494949494949494949494949494949494949494949494826b56402b16001f344a5f748b8b8b7d68533e29130000000000000000000000000013293e53687d8b8b8b745f4a341f0000000000000000000000000000000000000000000000000000000e23384e63788b8b8b79644f3a250f001f344a5f748b8b8b7d68533e2913001a2e41515d5d524332221101000000000000000000000000000000000000000000000000000000000000000000000000000f23384c61768b9f907b67523e291400000000000000000000000000000000000000000000000000000b21364b60768c94947d68533e2913000000000000000000001a2f445a6f869494866f5a63788f94917b66503b2611000000000000000000000000000000020b141a1e2121212134485a6c7a838484847d705f4c39252121211f1b150e040000000000001c31455866686868685f4e6068686868665845311c000000000000172b3f526266626062676f77828b948f8a8b8f7d68533e29130000000000001226394c5e70808e999fa0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a09c948878685644311d09001225394c5e6f808e989ea0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a09f9c948878685643301d090012263a4c5e70808e989ea0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a09f9a90837362503d2a160200001f344a5f748ba0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a097826b56402b16001f34495d707474747466523d28130000000000000000000000000013283d526674747474705d49341f0000000000000000000000000000000000000000000000000000000d23384c617274747473624e39240f001f34495d707474747466523d28130011233341494941342514040000000000000000000000000000000000000000000000000000000000000000000000000000091e33475c70869a96826c57422e1905000000000000000000000000000000000000000000000000000b21364b60768ca0947d68533e2913000000000000000000001a2f445a6f869b9b866f5a63788fa0917b66503b261100000000000000000000000000000000000005090b0b10253a4f63778a8b8b8b8b8e7c68533f2a150b0b0a060000000000000000001f344a5f747d7d7d7d6854697d7d7d7d745f4a341f0000000000001a2f445a6f7b7776777b838b938a827974767b7d69543f2a150000000000000a1d2f415161707c85898b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b888276695a4a3927140100091c2f4151616f7b85898b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b89888276695a4a39271401000a1d2f415261707b85898b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b89867d7264554433210e0000001f344a5f748b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b826b56402b16001a2e41515d5f5f5f5f584836230e000000000000000000000000000e233648585f5f5f5f5d51412e1a000000000000000000000000000000000000000000000000000000091e3144545e5f5f5f5e5545331f0b001a2e41515d5f5f5f5f584836230e000515232e34342e24160700000000000000000000000000000000000000000000000000000000000000000000000000000004192d42566b808b8b86715c47321d08000000000000000000000000000000000000000000000000000b21364b60768b8b8b7d68533e2913000000000000000000001a2f445a6f868b8b866f5a63788b8b8b7b66503b26110000000000000000000000000000000000000000000011263b50667b917c7474778d826b56402b16010000000000000000000000001f344a5f748b94947d68546a8094948b745f4a341f0000000000001a2f445a6f868c8c8c90918980766d655f61676e63513d28130000000000000012233443525e697074747474747474747474747474747474747474747474736d64594b3c2c1b0a00000012233342515e687073747474747474747474747474747474747474747474726d64594b3c2c1b0900000012233443515e6970737474747474747474747474747474747474747473716a615446372715030000001f34495d707474747474747474747474747474747474747474747474747474747468543f2a150011233341494a4a4a4a453a2b19070000000000000000000000000007192b3a454a4a4a4a49413323110000000000000000000000000000000000000000000000000000000215263643494a4a4a4943372716030011233341494a4a4a4a453a2b1907000005111a1f1f1a1206000000000000000000000000000000000000000000000000000000000000000000000000000000000013283d5165747474746f5c47321d08000000000000000000000000000000000000000000000000000b20354a5e707474747466523d281300000000000000000000192e43586b747474746b58617274747473634f3a25100000000000000000000000000000000000000000000011263b50667b917c6762778d826b56402b16010000000000000000000000001f344a5f748ba0947d68546a8095a08b745f4a341f0000000000001a2f445a6f84888a89847d756c635a524b4c5358534534210e0000000000000005162534414c555c5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5e5951473b2d1e0e0000000005152433414c555b5e5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5d5851473b2d1e0e0000000006162534414c555b5e5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5e5c564e4337281909000000001a2e41515d5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f594a392511000515232e343434343431281c0d0000000000000000000000000000000d1c283134343434342e231505000000000000000000000000000000000000000000000000000000000918252f34343434343026190a00000515232e343434343431281c0d000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000e223648575f5f5f5f5d513f2c190400000000000000000000000000000000000000000000000000071b2f42525d5f5f5f5f584836230e0000000000000000000015293c4e5b5f5f5f5f5b4e545e5f5f5f5f564634200c0000000000000000000000000000000000000000000011263b50667b917c6e6e778d826b56402b16010000000000000000000000001f344a5f748b8b8b7d68546a808b8b8b745f4a341f000000000000182d4155666f7374736f69615950463e373840433f3527170500000000000000000716232f3941474a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a48453e352a1d0f0000000000000615232f394146484a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a48443e34291d0f0000000000000716232f394146484a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4947423b3126190a000000000011233341494a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a463b2d1b09000005111a1f1f1f1f1f1c150b00000000000000000000000000000000000b151c1f1f1f1f1f1a110500000000000000000000000000000000000000000000000000000000000008131b1f1f1f1f1f1b14090000000005111a1f1f1f1f1f1c150b00000000000000000000000000000000000000000000000000030b0f0f0f0f0f0d070000000000000000000000000000000000000006192a39444a4a4a4a484032221000000000000000000000000000000000000000000000000000000012243441494a4a4a4a453a2b1907000000000000000000000d1f303e474a4a4a4a473e43494a4a4a4a44382817040000000000000000000000000000000000000000000010263b5065798e84848484907d6a55402b16000000000000000000000000001f34495d707474747466536774747474705d49341f00000000000012263848545a5e5f5e5b554e463d332a22242b2e2b2317090000000000000000000005121d262d323434343434343434343434343434343434343434343433302a22180c000000000000000005121c252d3133343434343434343434343434343434343434343434332f2921180c000000000000000005121d262d31333434343434343434343434343434343434343434322e271e14080000000000000515232e3434343434343434343434343434343434343434343434343434343434322a1d0f00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000a161f2425252525221a0f020000000000000000000000000000000000000c1b283134343434332d2214040000000000000000000000000000000000000000000000000000000616242e343434343431281c0d00000000000000000000000112202b3334343434332b2f343434343430271a0b00000000000000000000000000000000000000000000000d22364a5e7080898b8b8b8373624f3b2712000000000000000000000000001a2e41515d5f5f5f5f5849585f5f5f5f5d51412e1a000000000000091a2a374045484a4946403a322920170f101719161006000000000000000000000000000a12191d1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1e1b160f0500000000000000000000000912181c1e1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1e1b150e0500000000000000000000000a12181c1e1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1d19130b02000000000000000005111a1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1d170c000000000000000000000000000000000000000000040c10111111111111111111111111111111111111111111111111111111111111100d06000000000000000000010910141616161616161616161616161616161616130f0800000000000000000000060c1011110e0901000000000000000000000000000009192733393a3a3a3a362d2010000000000000000000000000000000000000000a151c1f1f1f1f1e191105000000000000000000000000000000000000000000000000000000000006121a1f1f1f1f1f1c150b00000000000000000000000000020f181e1f1f1f1f1e181b1f1f1f1f1f1c1409000000000000000000000000000000000000000000000000071b2e4152616d747474747064564533200c0000000000000000000000000011233341494a4a4a4a453b454a4a4a4a4941332311000000000000000c1a242c30333434312c261e160d0400000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000b17202526262626262626262626262626262626262626262626262626262626262626221a0e000000000000000a141d24292b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b28231c1308000000000000020f1a21252626231d140800000000000000000000000000142637454e4f4f4f4f4a3e2e1c0900000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000011233443515a5f5f5f5f5c534738271603000000000000000000000000000515232e343434343431293134343434342e23150500000000000000000811171b1e1f1f1c18110b03000000000000000000000000000000000000000000000000000000000000000000000000000000030b0f0f0f0f0f0d06000000000000000000000000000000000000050c0f0f0f0f0f0c05000000000000030b0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0e0b05000000000000000000000000000000020a0e0f0f0f0f0d08000000000000000000000000000000000000000000000000030b0f0f0f0f0f0d0600000000000000000000000000000000000000000000000000000000091a28343a3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b362c1e0e00000000010f1c2731393e40404040404040404040404040404040403d3730251a0d000000000112202d353a3b3b38302517080000000000000000000000001b30435562646464645c4b3824100000000002090d0e0e0e0e0b05000000000000000000000000000000000000040a0e0e0e0e0e0b0400000000000000000000050f151717171717171717171717171717171716141009010000000000000000030b0f0f0b040000000000000000000000000000000000000000000000000000000000000000000000000000061625333e464a4a4a4a474036291a0900000000000000000000000000000005111a1f1f1f1f1f1c161d1f1f1f1f1f1a110500000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000a161f2425252524211a0e010000000000000000000000000000000c1820242525252421180d000000000a161f242525252525252525252525252525252525252525252525252525231f19110700000000000000000000000008141e2325252525221b11030000000000000000000000000000000000000000000a161f2425252524211a0e010000000000000000000000000000000000000000000000000000142738464f50505050505050505050505050505050505050505050505050505050505050493c2b1906000000101f2d39444d535656565656565656565656565656565655524b43372b1c0d0000000d1f303e494f50504c433526150200000000000000000000001f34495e737979797968533d281300000009151e232323232320180d000000000000000000000000000000000b171f23232323231f170c00000000000000000816222a2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2b29241d14090000000000000a161f24241f160a00000000000000000000000000000000000000000000000000000000000000000000000000000715212b3134343434332d24180b000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000060c10121212121212121212121212121212121212121212110c0400000009192733393a3a3a3a362c1f0f00000000000000000000000000000c1c2a34393a3a3a3a352b1d0d000009192733393a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a38342d241a0d0000000000000000000006172631383a3a3a3a372e2112010000000000000000000000000000000000000009192733393a3a3a3a362c1f0f00000000000000000000000000000000000000000000000000001c30445663666666666666666666666666666666666666666666666666666666666666655a4935210c00000c1d2e3d4a5660676b6b6b6b6b6b6b6b6b6b6b6b6b6b6b6b6a665f55493a2b1b0a0000172a3d4e5c646665605344321f0b00000000000000000000001f344a5f748b90907d68533e29130000081826313838383838342b1e0e00000000000000000000000000000b1b2933383838383833291c0c000000000000041626343e42424242424242424242424242424242403e3830261a0d0000000009192733393933281a0a0000000000000000000000000000000000000000000000000000000000000000000000000000040e171d1f1f1f1f1e19110600000000000000000000000000000000000000000000000000000000060c10121212121212121212121212121212121212121212110c040000000000000006111a2025272727272727272727272727272727272727272727262016090000142637454e4f4f4f4f493d2d1b080000000000000000000000000417293a474e4f4f4f4f483b2b180500142637454e4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4d4841372b1e0f000000000000000000112435444d4f4f4f4f4b3f301e0b00000000000000000000000000000000000000142637454e4f4f4f4f493d2d1b08000000000000000000000000000000000000000000000000001f344a5f737b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b78644f3a240f0005182a3b4c5b68737c80828282828282828282828282828282807a7266584939271502001d32465a6c787b7971614e3a251100000000000000000000001f344a5f748ba0947d68533e29130000132536444c4e4e4e4e483c2c1a0700000000000000000000000004172939464d4e4e4e4d473a2a180500000000000d213344515757575757575757575757575757575756534c43382b1c0d000000142637454e4e463828170700000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000007111a21252727272727272727272727272727272727272727272620160900000000000c19242d353a3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3b33271807001b30435562646464645b4a37230f0000000000000000000000000b1f3347586364646464594835210c001b304355626464646464646464646464646464646464646464646464646464625c54493c2d1e0d0000000000000000192d415361646464645d4e3b2712000000000000000000000000000000000000001b30435562646464645b4a37230f000000000000000000000000000000000000000000000000001f344a5f748b919191919191919191919191919191919191919191919191919191919079644f3a250f000f223547596978869095979797979797979797979797979797958f8576675645321f0c001f344a5f748a91907d68533e281300000000000000000000001f344a5f748ba0947d68533e291300001b2f435461636363635a4a37230e0000000000000000000000000a1f3346576263636362584734200c000000000013283c50626c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6b676055493a2b1b0a00001b30435562635645352514040000000000000000000000000000000000000000000000050d1112121212100a0000000000000000060e11121212120f090000000000000000070e12121212120f08000000000000000c19242d353a3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3b332718070000000d1c2a3640494f5252525252525252525252525252525252525252524f45362411001f34495e737979797966513c27120000000000000000000000000e23384d627679797977644f3a240f001f34495e7379797979797979797979797979797979797979797979797979797770665a4b3c2b1907000000000000001c32475c70797979796a55402b16010000000000000000000000000000000000001f34495e737979797966513c2712000000000000000000000000000000000000000000000000001f344a5f748ba0a7a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1a19079644f3a250f00162a3e5164768897a39e9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9fa2958674614e3b2713001f344a5f748ba0947d68533e291300000000000000000000001f344a5f748ba0947d68533e291300001f34495e727878787766513c27120000000000000000000000000e23384d627578787876634e39240f0000000000152a3f546a80838383838383838383838383838383827b7267584939271502001f34495e7374635343322211010000000000000000000000000000000000000000000c18212627272727251d120400000000000c19222727272727241d110400000000000d19222727272727231b0f01000000000d1c2a3640494f5252525252525252525252525252525252525252524f4536241100000a1b2b3a47535d636767676767676767676767676767676767676767676353412d18001f344a5f748b90907c67523c27120000000000000000000000000e23384e63788f909079644f3a250f001f344a5f748b909090909090909090909090909090909090909090909090908c8477695948372411000000000000001d32475c72889090826b56402b16010000000000000000000000000000000000001f344a5f748b90907c67523c2712000000000000000000000000000000000000000000000000001f344a5f748ba0988c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c79644f3a250f001b3045596d8294a3948a8888888888888888888888888888888b96a3927d6a56412d18001f34495e72868b897a66523d281300000000000000000000001f344a5f748ba0947d68533e291300001f344a5f748b8f8f7c67523c27120000000000000000000000000e23384e63788f8f8f79644f3a250f0000000000152a3f546a80959898989898989898989898989898968f8576675644311e0b001f344a5f7482706050402f1f0e00000000000000000000000000000000000000000a1b2a353b3c3c3c3c39302313010000000b1c2a363c3c3c3c3c392f2212000000000c1d2b363c3c3c3c3c372d1f0e0000000a1b2b3a48535d646767676767676767676767676767676767676767676353412d18000416283949586570787c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c705b46301b001f344a5f748ba0937c67523c27120000000000000000000000000e23384e63788fa49079644f3a250f001f344a5f748ba0a5a5a4a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a09588776653402d19040000000000001d32475c72889d97826b56402b16010000000000000000000000000000000000001f344a5f748ba0937c67523c2712000000000000000000000000000000000000000000000000001f344a5f748ba0947d767676767676767676767676767676767676767676767676767674634e39240f001e33485e73889c98857672727272727272727272727272727278899c9a856f5a45301b001b2f4356677274746d5d4b38230f00000000000000000000001f344a5f748ba0947d68533e291300001f344a5f748ba0937c67523c27120000000000000000000000000e23384e63788fa49079644f3a250f0000000000152a3f546a80959d9d9d9d9d9d9d9d9d9d9d9d9d9d9fa2958674614e3b2612001f344a5f748b7d6e5e4d3d2c1c0b000000000000000000000000000000000000001528394750525252524d41301e0b00000316293a4851525252524c402f1d0a000004172a3b4951525252514a3d2c1a06000416283949586570787c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c705b46301b000d203345576775838d919393939393939393939393939393939393939387705b46301b001f344a5f748ba0937c67523c27120000000000000000000000000e23384e63788fa49079644f3a250f001f344a5f748ba0a5978f8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8f95a29583705c48331f0a0000000000001d32475c72888f8f826b56402b16010000000000000000000000000000000000001f344a5f748ba0937c67523c2712000000000000000000000000000000000000000000000000001f344a5f748ba0947d6860606060606060606060606060606060606060606060606060605646331f0b001f344a5f748ba0947d695c5c5c5c5c5c5c5c5c5c5c5c5c5c5c6d83989c87705b46301b0014273949565e5f5f5a4f3f2e1b0800000000000000000000001f344a5f748ba0947d68533e291300001f344a5f748ba0937c67523c27120000000000000000000000000e23384e63788fa49079644f3a250f0000000000152a3f546a808888888888888888888888888888888b97a3917d6a55402c17001f344a5f748b8c7b6b5b4a3a2919090000000000000000000000000000000000001c31445764676767675f4e3b26120000091d32465865676767675e4d39251100000a1f33475965676767665b4936210d000d213345576776838d919393939393939393939393939393939393939387705b46301b0014293d5063748594a0a2a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1a19c87705b46301b001f344a5f748ba0937c67523c27120000000000000000000000000e23384e63788fa49079644f3a250f001f344a5f748ba099877a77777777777777777777777777777777777777777984959f8b76614d38230e0000000000001c31475c70787878786a55402b16000000000000000000000000000000000000001f344a5f748ba0937c67523c2712000000000000000000000000000000000000000000000000001f344a5f748ba0947d68534b4b4b4b4b4b4b4b4b4b4b4b4b4b4b4b4b4b4b4b4b4b4b4b4b4438281604001f344a5f748ba0947d685347474747474747474747474747576c83989c87705b46301b000a1b2b3943494a4a463d3121110000000000000000000000001f344a5f748ba0947d68533e291300001f344a5f748ba0937c67523c27120000000000000000000000000e23384e63788fa49079644f3a250f000000000014293e52667272727272727272727272727272727278899c99846f5a442f1a001f344a5f748b9a89786858473726160600000000000000000000000000000000001f344a5f747c7c7c7c69543f2a1500000b20364b60757c7c7c7c68533e281300000d22374c61767c7c7c79644f3a240f0015293d5063758694a0a2a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1a2a89c87705b46301b001a2f43586c8092a3978e8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c87705b46301b001f344a5f748ba0937c67523c27120000000000000000000000000e23384e63788fa49079644f3a250f001f344a5f748ba0937d69626262626262626262626262626262626262626266798fa48f78634e38230e000000000000192d405260636363635c4d3a2612000000000000000000000000000000000000001f344a5f748ba0937c67523c2712000000000000000000000000000000000000000000000000001f344a5f748ba0947d68533e36363636363636363636363636363636363636363636363631271a0a00001f344a5f748ba0947d68533e323232323232323232323242576c83989c87705b46301b00000d1b272f343434312a2013030000000000000000000000001f344a5f748ba0947d68533e291300001f344a5f748ba0937c67523c27120000000000000000000000000e23384e63788fa49079644f3a250f00000000000f233648565c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5d6d83989c87705b46301b001f34495e73849497867565554434231303000000000000000000000000000000001f344a5f748b9393806a543f2a1500000b21364b60768c93937d68533e291300000d22374c62778d939079644f3a250f001b2f44586c8092a3978e8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8d9c9c87705b46301b001e33485d72879b9a887976767676767676767676767676767676767676766d5a45301b001f344a5f748ba0937c67523c27120e0e0e0e0e0e0e0e0e0e0e0e0e23384e63788fa49079644f3a250f001f344a5f748ba0937c67524c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4e63788fa48f78634e38230e000000000000112334434c4e4e4e4e4a3e2f1e0b000000000000000000000000000000000000001f344a5f748ba0937c67523c2712000000000000000000000000000000000000000000000000001f344a5f748ba0947d68533e2921212121212121212121212121212121212121212121201d150a0000001f344a5f748ba0947d68533e291d1d1d1d1d1d1d1d1d2c42576c83989c87705b46301b0000000a141b1f1f1f1d170e02000000000000000000000000001f344a5f748ba0947d68533e291300001f344a5f748ba0937c67523c27120d0d0d0d0d0d0d0d0d0d0d0d0e23384e63788fa49079644f3a250f0000000004111b2a3843474747474747474747474747474747576c83989c87705b46301b001b30435566768797948372625241312110000000000000000000000000000000001f344a5f748ba095806a543f2a1500000b21364b60768ca1947d68533e291300000d22374c62778da39079644f3a250f001e33485d72889c9987797676767676767676767676767676767684999c87705b46301b001f344a5f748b9f94806a60606060606060606060606060606060606060605d4f3e2b16001f344a5f748ba0937c67523c27232323232323232323232323232323384e63788fa49079644f3a250f001f344a5f748ba0937c67523c37373737373737373737373737373737384e63788fa48f78634e38230e000000000000162a3c4d585b5b5b5b5648372412121212121212121212100b05000000000000001f344a5f748ba0937c67523c2712000000000000000000000000000000000000000000000000001f344a5f748ba0947d68533e29130b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0802000000001f344a5f748ba0947d68533e291300000000000000172c42576c83989c87705b46301b00000000000000000000000000000000000000000000000000001f344a5f748ba0947d68533e291300001f344a5f748ba0937c67523c27222222222222222222222222222223384e63788fa49079644f3a250f0000000615222e384046484848484848484848484848484848576c83989c87705b46301b00142637485868798a9a9180705f4f3e2e1e0d0000000000000000000000000000001f344a5f748ba095806a543f2a1500000b21364b60768ca1947d68533e291300000d22374c62778da39079644f3a250f001f344a5f748ba0947d696060606060606060606060606060606e84999c87705b46301b001f344a5f748ba0947d68534b4b4b4b4b4b4b4b4b4b4b4b4b4b4b4b4b4b4b494031210e001f344a5f748ba0937c67523c38383838383838383838383838383838384e63788fa49079644f3a250f001f344a5f748ba0937c67523c27222222222222222222222222222223384e63788fa48f78634e38230e0000000000001b3045596b7070707066533f2a27272727272727272727252019100500000000001f344a5f748ba0937c67523c2712070707070707070707070707070706020000000000000000001f344a5f748ba0947d68533e2913000000000000000000000000000000000000000000000000000000001f344a5f748ba0947d68533e291300000000000000172c42576c83989c87705b46301b00000000000000000000000000000000000000000000000000001f344a5f748ba0947d68533e291300001f344a5f748ba0937c67523c37373737373737373737373737373737384e63788fa49079644f3a250f000005152433404b545a5e5e5e5e5e5e5e5e5e5e5e5e5e5e5e5e6c83989c87705b46301b0009192a3a4b5b6b7c8d9d8e7d6d5c4c3c2b1b0a00000000000000000000000000001f344a5f748ba095806a543f2a1500000b21364b60768ca1947d68533e291300000d22374c62778da39079644f3a250f001f344a5f748ba0947d68534b4b4b4b4b4b4b4b4b4b4b4b4b586e84999c87705b46301b001f344a5f748ba0947d68533e363636363636363636363636363636363636342d221303001f344a5f748ba0937c67524e4e4e4e4e4e4e4e4e4e4e4e4e4e4e4e4e4e4e63788fa49079644f3a250f001f344a5f748ba0937c67523c27151515151515151515151515151523384e63788fa48f78634e38230e0000000000001d32475c72878787826b56403c3c3c3c3c3c3c3c3c3c3c3a342c221609000000001f344a5f748ba0937c67523c271d1d1d1d1d1d1d1d1d1d1d1d1d1d1d1c160e02000000000000001f344a5f748ba0947d68533e2913000000000000000000000000000000000000000000000000000000001f344a5f748ba0947d68533e291300000000000000172c42576c83989c87705b46301b00000000000000000000000000000000000000000000000000001f344a5f748ba0947d68533e291300001f344a5f748ba0937c67524c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4e63788fa49079644f3a250f000011223342515d676f737373737373737373737373737373737383989c87705b46301b00000c1c2d3d4e5e6e808f9c8b7a6a594939281807000000000000000000000000001f344a5f748ba095806a543f2a1500000b21364b60768ca1947d68533e291300000d22374c62778da39079644f3a250f001f344a5f748ba0947d68533e363636363636363636363643586e84999c87705b46301b001f344a5f748ba0947d68533e2921212121212121212121212121212121211f1a100400001f344a5f748ba0937c67636363636363636363636363636363636363636363788fa49079644f3a250f001f344a5f748ba0937c67523c2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a384e63788fa48f78634e38230e0000000000001d32475c72889c97826b565252525252525252525252524e483f3427190a0000001f344a5f748ba0937c67523c32323232323232323232323232323232312a1f12020000000000001f344a5f748ba0947d68533e2913000000000000000000000000000000000000000000000000000000001f344a5f748ba0947d68533e291300000000000000172c42576c83989c87705b46301b00000000000000000000000000000000000000000000000000001f344a5f748ba0947d68533e291300001f344a5f748ba0937c67626262626262626262626262626262626262626263788fa49079644f3a250f00091c2e4051616f7a8488898989898989898989898989898989898a9a9c87705b46301b0000000f1f30405061718292998877675646362515040000000000000000000000001f344a5f748ba095806a543f2a1500000b21364b60768ca1947d68533e291300000d22374c62778da39079644f3a250f001f344a5f748ba0947d685348484848484848484848484848586e84999c87705b46301b001f344a5f748ba0947d68533e29130b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0a06000000001f344a5f748ba0937c78787878787878787878787878787878787878787878788fa49079644f3a250f001f344a5f748ba0937c67523f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f4e63788fa48f78634e38230e0000000000001d32475c72889c97836f67676767676767676767676767635c51453728180700001f344a5f748ba0937c67524747474747474747474747474747474747453d301f0e0000000000001f344a5f748ba0947d68533e2913000000000000000000000000000000000000000000000000000000001f344a5f748ba0947d68533e291300000000000000172c42576c83989c87705b46301b00000000000000000000000000000000000000000000000000001f344a5f748ba0947d68533e291300001f344a5f748ba0937c77777777777777777777777777777777777777777777788fa49079644f3a250f001225394c5d6f808d989d9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9fa79c87705b46301b000000011222324353637485959685746453433322120100000000000000000000001f344a5f748ba095806a543f2a1500000b21364b60768ca1947d68533e291300000d22374c62778da39079644f3a250f001f344a5f748ba0947d685e5e5e5e5e5e5e5e5e5e5e5e5e5e5e6e84999c87705b46301b001f344a5f748ba0947d68533e2913000000000000000000000000000000000000000000001f344a5f748ba0988f8f8f8f8f8f8f8f8f8f8f8f8f8f8f8f8f8f8f8f8f8f8f8f95a59079644f3a250f001f344a5f748ba0937c67545454545454545454545454545454545454545463788fa48f78634e38230e0000000000001b30455a6e83979f8e827c7c7c7c7c7c7c7c7c7c7c7c7c776f63554636251300001f344a5f748ba0937c675c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5a4e3d2a160200000000001f344a5f748ba0947d68533e2913000000000000000000000000000000000000000000000000000000001f344a5f748ba0947d68533e291300000000000000172c42576c83989c87705b46301b00000000000000000000000000000000000000000000000000001f344a5f748ba0947d68533e291300001f344a5f748ba0978d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d94a59079644f3a250f00182d4155687b8d9d9f9795959595959595959595959595959597a1af9c87705b46301b0000000004152535465666778898928271615140301f0f00000000000000000000001f344a5f748ba095806a543f2a1500000b21364b60768ca1947d68533e291300000d22374c62778da39079644f3a250f001f344a5f748ba0947d737373737373737373737373737373737384999c87705b46301b001f344a5f748ba0947d68533e2913000000000000000000000000000000000000000000001f344a5f748ba0a9a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a7a59079644f3a250f001f344a5f748ba094806e6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6c7c90a38e78634e38230e000000000000172b4054677a8d9e9e95939393939393939393939393928c8273645342301d09001f344a5f748ba0937c727272727272727272727272727272727272726c5a45311c0600000000001f344a5f748ba0947d68533e2913000000000000000000000000000000000000000000000000000000001f344a5f748ba0947d68533e291302020202020202172c42576c83989c87705b46301b00000000000000000000000000000000000000000000000000001f344a5f748ba0947d68533e291300001f344a5f748ba0a8a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a6a59079644f3a250f001d32465b7085989e8e828080808080808080808080808080808491a29c87705b46301b0000000000071728384959697a8b9b90806f5e4e3d2d1c0c000000000000000000001f344a5f748ba095806a543f2a1500000b21364b60768ca1947d68533e291300000d22374c62778da39079644f3a250f001f344a5f748ba0968989898989898989898989898989898989898a9b9c87705b46301b001f344a5f748ba0947d68533e2913000000000000000000000000000000000000000000001f344a5f748ba0988f8f8f8f8f8f8f8f8f8f8f8f8f8f8f8f8f8f8f8f8f8f8f8f95a59079644f3a250f001f344a5f748ba09d8d828080808080808080808080808080808080808080828a999c8974604b36210c0000000000001124384b5d6f808d999fa1a1a1a1a1a1a1a1a1a1a1a1a29e9282715f4c392511001f344a5f748ba0958888888888888888888888888888888888888888725c47321d0700000000001f344a5f748ba0947d68533e2913000000000000000000000000000000000000000000000000000000001f344a5f748ba0947d68533e291717171717171717172c42576c83989c87705b46301b00000000000000000000000000000000000000000000000000001f344a5f748ba0947d68533e291300001f344a5f748ba09990909090909090909090909090909090909090909090909096a59079644f3a250f001f344a5f73899e96826f6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a72869a9c87705b46301b0000000000000a1a2b3b4c5c6c7d8e9d8d7c6c5b4b3a2a1a090000000000000000001f344a5f748ba095806a543f2a1500000b21364b60768ca1947d68533e291300000d22374c62778da39079644f3a250f001f344a5f748ba0a59f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9fa89c87705b46301b001f344a5f748ba0947d68533e2913000000000000000000000000000000000000000000001f344a5f748ba0937c78787878787878787878787878787878787878787878788fa49079644f3a250f001f344a5f748ba0ab9e979595959595959595959595959595959595959595969c9f90806c5945311c08000000000000081b2e4051616f7b858a8c8c8c8c8c8c8c8c8c8c8c8c8e99a08f7c6854402b16001f344a5f748ba0a39d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d88725c47321d0700000000001f344a5f748ba0947d68533e2913000000000000000000000000000000000000000000000000000000001f344a5f748ba0947d68533e2c2c2c2c2c2c2c2c2c2c2c42576c83989c87705b46301b00000000000000000000000000000000000000000000000000001f344a5f748ba0947d68533e291300001f344a5f748ba0937c79797979797979797979797979797979797979797979798fa49079644f3a250f001f344a5f748ba0947d685454545454545454545454545454576c83989c87705b46301b000000000000000d1d2e3e4e5f6f80909a8a796958483727170600000000000000001f344a5f748ba095806a543f2a1500000b21364b60768ca1947d68533e291300000d22374c62778da39079644f3a250f001f344a5f748b959595959595959595959595959595959595959596a19c87705b46301b001f344a5f748ba0947d68533e2913000000000000000000000000000000000000000000001f344a5f748ba0937c67636363636363636363636363636363636363636363788fa49079644f3a250f001f344a5f748ba0b0a59e9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9fa6aa968271614f3d2916020000000000000011223342515e6970747676767676767676767676767b8b9e97836e59442f1a001f344a5f748ba09e9797979797979797979797979797979797979788725c47321d0700000000001f344a5f748ba0947d68533e2913000000000000000000000000000000000000000000000000000000001f344a5f748ba0947d685342424242424242424242424242576c83989c87705b46301b00000000000000000000000000000000000000000000000000001f344a5f748ba0947d68533e291300001f344a5f748ba0937c67646464646464646464646464646464646464646464788fa49079644f3a250f001f344a5f748ba0947d68533f3f3f3f3f3f3f3f3f3f3f3f42576c83989c87705b46301b000000000000000010203041516172839397877666554534241403000000000000001f344a5f748ba095806a543f2a1500000b21364b60768ca1947d68533e291300000d22374c62778da39079644f3a250f001f344a5f7480808080808080808080808080808080808080808084999c87705b46301b001f344a5f748ba0947d68533e2913000000000000000000000000000000000000000000001f344a5f748ba0937c67524e4e4e4e4e4e4e4e4e4e4e4e4e4e4e4e4e4e4e63788fa49079644f3a250f001f344a5f748ba0a19289888888888888888888888888888888888888888a94a493806b574332200d000000000000000004152433404c555c5f6060606060606060606060606e84999b86705b46301b001f344a5f748ba0938282828282828282828282828282828282828282725c47321d0700000000001f344a5f748ba0947d68533e2913000000000000000000000000000000000000000000000000000000001f344a5f748ba0947d685757575757575757575757575757586c83989c87705b46301b00000000000000000000000000000000000000000000000000001f344a5f748ba0947d68533e291300001f344a5f748ba0937c67524f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f63788fa49079644f3a250f001f344a5f748ba0947d68533e2a2a2a2a2a2a2a2a2a2a2c42576c83989c87705b46301b000000000000000002122333445464758696948473635242322111000000000000001f344a5f748ba095806a543f2a1500000b21364b60768ca1947d68533e291300000d22374c62778da39079644f3a250f001d314558676a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6e84999c87705b46301b001f344a5f748ba0947d68533e291313131313131313131313131313131313120d040000001f344a5f748ba0937c67523c38383838383838383838383838383838384e63788fa49079644f3a250f001f344a5f748ba09784757272727272727272727272727272727272727276869a9a86715c47321c070000000000000000000615232f3941474a4b4b4b4b4b4b4b4b4b4b4b586e84999c87705b46301b001f344a5f748ba0937c6b6b6b6b6b6b6b6b6b6b6b6b6b6b6b6b6b6b6b6757432f1a0600000000001f344a5f748ba0947d68533e2913000000000000000000000000000000000000000000000000000000001f34495e73899e9783716c6c6c6c6c6c6c6c6c6c6c6c6c6c6c74869a9b86705b46301b00000000000000000000000000000000000000000000000000001f344a5f748ba0947d68533e291300001f344a5f748ba0937c67523c3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a4e63788fa49079644f3a250f001f344a5f748ba0947d68533e291515151515151515172c42576c83989c87705b46301b00000000000000000005152636475767788999918270604f3f2f1e0e0000000000001f344a5f748ba095806a543f2a1500000b21364b60768ca1947d68533e291300000d22374c62778da39079644f3a250f0016293b495354545454545454545454545454545454545454586e84999c87705b46301b001f344a5f748ba0947d68533e2929292929292929292929292929292929292721160900001f344a5f748ba0937c67523c27232323232323232323232323232323384e63788fa49079644f3a250f001f344a5f748ba0937c675c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c6b80959e89735e48331e090000000000000000000005121d262d32353636363636363636363643586e84999c87705b46301b001f344a5f748ba0937c6756565656565656565656565656565656565653493927140000000000001f344a5f748ba0947d68533e2913000000000000000000000000000000000000000000000000000000001c31465a6f8397a090858383838383838383838383838383838693a394806c57432e1900000000000000000000000000000000000000000000000000001f344a5f748ba0947d68533e291300001f344a5f748ba0937c67523c27252525252525252525252525252525384e63788fa49079644f3a250f001f344a5f748ba0947d68533e291300000000000000172c42576c83989c87705b46301b0000000000000000000008182939495a6a7b8c9c8f7d6d5d4d3c2c1b0b00000000001f344a5f748ba095806a543f2a1500000b21364b60768ca1947d68533e291300000d22374c62778da39079644f3a250f000c1d2c373e3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f43586e84999c87705b46301b001f344a5f748ba0947d68533e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3c34271806001f344a5f748ba0937c67523c27120e0e0e0e0e0e0e0e0e0e0e0e0e23384e63788fa49079644f3a250f001f344a5f748ba0937c67524747474747474747474747474747474747546a80959f89735e48331e090000000000000000000000000a12191e202121212121212121212e43586e84999c87705b46301b001f344a5f748ba0937c675240404040404040404040404040404040403f372b1b0a0000000000001f344a5f748ba0947d68533e291300000000000000000000000000000000000000000000000000000000172b405367798b9ba19a9898989898989898989898989898989aa399897664503d291400000000000000000000000000000000000000000000000000001f344a5f748ba0947d68533e291300001f344a5f748ba0937c67523c27120f0f0f0f0f0f0f0f0f0f0f0f0f23384e63788fa49079644f3a250f001f344a5f748ba0947d68533e291300000000000000172c42576c83989c87705b46301b00000000000000000000000b1b2c3c4c5d6d7d8f9c8c7b6a5a4a39291808000000001f344a5f748ba095806a543f2a1513131321364b60768ca1947d68533e291313131322374c62778da39079644f3a250f000b1c2b363d3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e43586e84999c87705b46301b001f344a5f748ba0947d6853535353535353535353535353535353535353535045362411001f344a5f748ba0937c67523c27120000000000000000000000000e23384e63788fa49079644f3a250f001f344a5f748ba0937c67523c3232323232323232323232323232323f546a80959f89735e48331e09000000000000000101010101010104090b0b0b0b0b0b0b0b0b192e43586e84999c87705b46301b001f344a5f748ba0937c67523c2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2a241a0d000000000000001f344a5f748ba0947d68533e2913000000000000000000000000000000000000000000000000000000001024374a5c6d7c8a959a9c9c9c9c9c9c9c9c9c9c9c9c9c9c9c9a93897a6a594734210d00000000000000000000000000000000000000000000000000001f344a5f748ba0947d68533e291300001f344a5f748ba0937c67523c27120000000000000000000000000e23384e63788fa49079644f3a250f001f344a5f748ba0947d68533e291300000000000000172c42576c83989c87705b46301b0000000000000000000000000e1e2e3f4f60708291998978675747362615050000001f344a5f748ba095806a543f2a2929292929364b60768ca1947d68533e292929292929374c62778da39079644f3a250f0015283a485253535353535353535353535353535353535353586e84999c87705b46301b001f344a5f74899e96826f68686868686868686868686868686868686868686353402c17001f344a5f748ba0937c67523c27131313131313131313131313131323384e63788fa49079644f3a250f001f344a5f748ba0937c67523c271d1d1d1d1d1d1d1d1d1d1d1d1d2a3f546a80959f89735e48331e0900000000091115161616161616161616161616161616161616192e43586e84999c87705b46301b001f344a5f748ba0937c67523c271616161616161616161616161616161513131313110b020000001f344a5f748ba0947d68533e291300000000000000000000000000000000000000000000000000000000081b2d3e4f5e6c7882868787878787878787878787878787878680766a5c4d3c2a180500000000000000000000000000000000000000000000000000001f344a5f748ba0947d68533e291300001f344a5f748ba0937c67523c27121212121212121212121212121223384e63788fa49079644f3a250f001f344a5f748ba0947d68533e291300000000000000172c42576c83989c87705b46301b000000000000000000000000001121314252627384949686756454443323120200001f344a5f748ba095806a543f3e3e3e3e3e3e3e4b60768ca1947d68533e3e3e3e3e3e3e3e4c62778da39079644f3a250f001c31455866686868686868686868686868686868686868686872869a9b86705b46301b001d32465b7085989e8e827d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d6f5a442f1a001f344a5f748ba0937c67523c29292929292929292929292929292929384e63788fa49079644f3a250f001f344a5f748ba0937c67523c29292929292929292929292929292a3f546a80959f89735e48331e090000000f1b252a2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2e43586e84999c87705b46301b001f344a5f748ba0937c67523c292929292929292929292929292929292929292929261f140600001f344a5f748ba0947d68533e291300000000000000000000000000000000000000000000000000000000000f2131404e5b656c6f7070707070707070707070707070706f6b63594c3e2f1e0d0000000000000000000000000000000000000000000000000000001f344a5f748ba0947d68533e291300001f344a5f748ba0937c67523c27272727272727272727272727272727384e63788fa49079644f3a250f001f344a5f748ba0947d68533e291300000000000000172c42576c83989c87705b46301b000000000000000000000000000314243445556576879793837261514130200f00001f344a5f748ba095806a5453535353535353535360768ca1947d685353535353535353535362778da39079644f3a250f001f344a5f747d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d8390a295826c58432e1900182d4155697b8e9e9e9694949494949494949494949494949494949494866f5a442f1a001f344a5f748ba0937c67523e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e4e63788fa49079644f3a250f001f344a5f748ba0937c67523e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3f546a80959f89735e48331e0900000c1d2d393f404040404040404040404040404040404040404043586e84999c87705b46301b001f344a5f748ba0937c67523e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3b32241503001f344a5f748ba0947d68533e29130000000000000000000000000000000000000000000000000000000000031322303d4951575a5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5a5650473c2e2011000000000000000000000000000000000000000000000000000000001f344a5f748ba0947d68533e291300001f344a5f748ba0937c67523c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c4e63788fa49079644f3a250f001f344a5f748ba0947d68533e291300000000000000172c42576c83989c87705b46301b000000000000000000000000000006162737485868798a9a90806f5f4e3e2d1a07001f344a5f748ba097826f686868686868686868686a798da295806e686868686868686868686b7a8fa38f79644f3a250f001f344a5f748b9494949494949494949494949494949494949497a09b8b7865523e2915001226394c5e6f808e989ea0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a09b866f5a442f1a001f344a5f748ba0937c67535353535353535353535353535353535353535363788fa49079644f3a250f001f344a5f748ba0937c67535353535353535353535353535353535353546a80959f89735e48331e090000172a3b4a54565656565656565656565656565656565656565656586e84999c87705b46301b001f344a5f748ba0937c6753535353535353535353535353535353535353535353534e4232200d001f344a5f748ba0947d68533e29130000000000000000000000000000000000000000000000000000000000000412202b363d424546464646464646464646464646464645423c342a1e1002000000000000000000000000000000000000000000000000000000001f344a5f748ba0947d68533e291300001f344a5f748ba0937c67525252525252525252525252525252525252525263788fa49079644f3a250f001f344a5f748ba0947d68533e291300000000000000172c42576c83989c87705b46301b00000000000000000000000000000009192a3a4a5b6b7c8d9d8e7d6c5c4a36220d001f344a5f748ba09f8e827d7d7d7d7d7d7d7d7d7d808897a99d8d827d7d7d7d7d7d7d7d7d7d8089989e8a76614c38230e001f344a5f748ba0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a09e978c7d6d5b4936220f000a1d2f4151616f7b85898b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b866f5a442f1a001f344a5f748a9f94806d68686868686868686868686868686868686868686a7a8fa48f79644f3a250f001f344a5f748ba094806d686868686868686868686868686868686868686f82979d88725d48331e0800001d324659686b6b6b6b6b6b6b6b6b6b6b6b6b6b6b6b6b6b6b6b6b6b73869a9a866f5a45301b001f344a5f748ba0937c68686868686868686868686868686868686868686868686860503c2813001f344a5f748ba0947d68533e291300000000000000000000000000000000000000000000000000000000000000020e1922292e30303030303030303030303030303030302d2821170c0000000000000000000000000000000000000000000000000000000000001f344a5f748b8b8b7d68533e291300001f344a5f748a9f94806c6767676767676767676767676767676767676767697a8fa48f79644f3a250f001f344a5f748ba0947d68533e291300000000000000172c42576c83989c87705b46301b000000000000000000000000000000000c1c2d3d4d5e6e808f9b8b79644f3a250f001f344a5f748ba0ac9e9694949494949494949494949aa5b5ab9e9694949494949494949494959ba292826e5b47331e0a001f344a5f748b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8983796d5f4f3e2c1906000012233342515e69707374747474747474747474747474747474747474746b58432e19001d32475c7086999c8c807d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d88989e8a75614c37220d001f344a5f748ba09c8c807d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d808e9e97846f5a45301b0600001f344a5f74828282828282828282828282828282828282828282828591a294806b57422d18001f344a5f748ba0937d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d6b56402b16001f344a5f748ba0947d68533e2913000000000000000000000000000000000000000000000000000000000000000000060e1423303a3e3e3e3e3d37353c3e3e3e3e3b322418130d04000000000000000000000000000000000000000000000000000000000000001f34495d707474747466523d281300001d32475c71869a9b8b7d7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c87979e8a76614c37220d001f344a5f748ba0947d68533e291300000000000000172c42576c83989c87705b46301b00000000000000000000000000000000000f1f2f4050617182929079644f3a250f001f344a5f748ba0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a09f9b91847463513e2b1804001f34495d707474747474747474747474747474747474747474736f675c4f4131200f00000005152433414c555b5e5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5b4e3c291500192d4256697c8f9e9c949494949494949494949494949494949494949494949aa292826e5a46321e09001f344a5f748ba0aa9c9494949494949494949494949494949494949494959d9e8d7a6754402c170200001f344a5f748b97979797979797979797979797979797979797979798a29a8a7764503d2814001f344a5f748ba09c949494949494949494949494949494949494949494949494826b56402b16001f344a5f748b8b8b7d68533e2913000000000000000000000000000000000000000000000000000000000000000000000a1e30414d5353535352494751535353534e4232200d0000000000000000000000000000000000000000000000000000000000000000001a2e41515d5f5f5f5f584836230e0000192e42566a7d8f9f9b9393939393939393939393939393939393939393939399a393826e5b47331e09001f344a5f748ba0947d68533e291300000000000000172c42576c83989c87705b46301b00000000000000000000000000000000000111223243536373859079644f3a250f001f344a5f748b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8a87807365564634220f00001a2e41515d5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5e5a534a3e31231302000000000615232f394146494a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a473e301f0d0013263a4d5f70808f999fa0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a09f9b91847463513e2b1703001f344a5f748ba0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a09e988d806f5d4b3825110000001f344a5f748ba0a0a0a0a0a0a0a0a0a09f9f9f9f9f9f9f9f9f9f9f9d968a7b6b5a4734210d001f344a5f748ba0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a097826b56402b16001f34495d707474747466523d28130000000000000000000000000000000000000000000000000000000000000000000011253a4d5f68686868665955646868686860503c281300000000000000000000000000000000000000000000000000000000000000000011233341494a4a4a4a453a2b1907000013273a4d6071828f9aa0a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1a09c92857564523f2b1804001f344a5f748ba0947d68533e291300000000000000172c42576c83989c87705b46301b00000000000000000000000000000000000004142535455666768879644f3a250f001f34495d70747474747474747474747474747474747474747474747474747474747474747474716b61554738281705000011233341494a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a494640372d21130400000000000005121d262d32343434343434343434343434343434343434343434332b201201000a1d30415261707c85898b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8a87807365564534220f00001f344a5f748b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b89857b6f6151402e1b080000001f344a5f748b8b8b8b8b8b8b8b8b8b8b89898989898989898989898883786c5d4e3d2b1805001f344a5f748b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b826b56402b16001a2e41515d5f5f5f5f584836230e0000000000000000000000000000000000000000000000000000000000000000000013283e53687d7d7d7d75605c717d7d7d7d6b56402b160100000000000000000000000000000000000000000000000000000000000000000515232e343434343431281c0d0000000b1e30425362717d868b8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c88807466574635220f00001f344a5f748ba0947d68533e291300000000000000172c42576c83989c87705b46301b00000000000000000000000000000000000000071728384859697979644f3a250f001a2e41515d5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5d574f4438291a0a0000000515232e34343434343434343434343434343434343434343434312b241b0f030000000000000000000a12181d1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1e180f0200000012243443525f697074747474747474747474747474747474747474747474716b6155473828160500001f34495d707474747474747474747474747474747474747474747474747470685e5142332211000000001f34495d7074747474747474747474747373737373737373737373726e665b4e3f301f0d00001f34495d707474747474747474747474747474747474747474747474747474747468543f2a150011233341494a4a4a4a453a2b19070000000000000000000000000000000000000000000000000000000000000000000013293e53687d94948c76605c72889494826b56402b160100000000000000000000000000000000000000000000000000000000000000000005111a1f1f1f1f1f1c150b00000000011325354453606a7175767676767676767676767676767676767676767676736c6356483928170500001f344a5f748ba0947d68533e291300000000000000172c42576c83989c87705b46301b00000000000000000000000000000000000000000a1a2b3b4b5c6d73624e39240f0011233341494a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a48433c32271a0b000000000005111a1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1c1710080000000000000000000000000000000000000000000000000000000000000000000000000000000000000006162534414d555c5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5d574f4438291a0a0000001a2e41515d5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5b554c4033241505000000001a2e41515d5f5f5f5f5f5f5f5f5f5f5f5e5e5e5e5e5e5e5e5e5e5e5d5a53493d3021120100001a2e41515d5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f594a392511000515232e343434343431281c0d000000000000000000000000000000000000000000000000000000000000000000000013293e53687d94a08c76605c72889d97826b56402b16010000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000007172635434e575d606060606060606060606060606060606060606060605e585045392a1b0b0000001f344a5f748ba0947d68533e291300000000000000172c42576c83989c87705b46301b0000000000000000000000000000000000000000000d1d2d3e4f5c5e5545331f0b000515232e34343434343434343434343434343434343434343434343434343434343434343434332e282015090000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000008131b1e1e1e1e1e19110600000000000000000000071624303a41474a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a48433c32271a0b0000000011233341494a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4641392f231506000000000011233341494a4a4a4a4a4a4a4a4a4a4a494848484848484848484848453f362c20120300000011233341494a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a463b2d1b09000005111a1f1f1f1f1f1c150b00000000000000000000000000000000000000000000000000000000000000000000000013293e53687d8b8b8b76605c72888b8b826b56402b16010000000000000000000000000000000000000000000000000000000000000000000009111516161616130d03000000000000081725313b43484b4b4b4b4b4b4b4b4b4b4b4b4b4b4b4b4b4b4b4b4b4b49443d33281b0c000000001f344a5f748b91917d68533e291300000000000000172c42576c83919187705b46301b000000000000000000000000000000000000000000000f20313e48494337271603000005111a1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1e1a140c03000000000000000000000000000000000000000000000000000710161a1d1d1d1d1d1d1d1d1d1d1d1d1d1d1d1d1d1d1d1d1d1b160d01000000000a19262f33333333332d2416070000000000000000000006121d262d3234343434343434343434343434343434343434343434332e2820150900000000000515232e3434343434343434343434343434343434343434343434343434322d251c11050000000000000515232e343434343434343434343434343333333333333333333333302b231a0e02000000000515232e3434343434343434343434343434343434343434343434343434343434322a1d0f000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000013283d526674747474705e5b6e7474747468543f2a15000000000000000000000000000000000000000000000000000000000000000000000f1b252a2b2b2b2b2820150600000000000007131e282e3336363636363636384347474747453c3636363636363634302921160a00000000001f344a5f737b7b7b7a68533e281300000000000000172c42576c7b7b7b7b705b46301b000000000000000000000000000000000000000000000213212c33343026190a000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000004101a242b2f323232323232323232323232323232323232323232302a1f1101000004162837434848484848413425130000000000000000000000000a12191d1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1e1a140c030000000000000005111a1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1d18120900000000000000000005111a1f1f1f1f1f1f1f1f1f1f1f1f1f1e1e1e1e1e1e1e1e1e1e1e1b1610070000000000000005111a1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1d170c0000000000030b0f0f0f0f0f0d060000000000000000000000000000000000070d0f0f0f0f0f0f0c05000000000000000000000e233648585f5f5f5f5d52505c5f5f5f5f594a3925110000000000000000000000000000000000000000000000000000000000000000000c1d2d393f404040403c32241402000000000000020b141a1e2121212121243748565c5c5c5c594d3c2921212121211f1b150e040000000000001c30445663666666665d4c3925100000000000000014293d4f5f666666666153402c180000000000000000000000000000000000000000000000030f191e1f1b1409000000000000000000000009111516161616130c02000000000000000000000000000000040d14161616161616120b00000000000002090d0e0e0e0e0c060000000000000514212d373f44474747474747474747474747474747474747474747453c2f1e0c00000c203345555d5e5e5e5d5242301c080000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000a161f2425252524211a0e010000000000000000000000000003101b2225252525252420180c00000000000000000007192b3a454a4a4a4a49413f484a4a4a4a463b2d1b09000000000000000000000000000000000000000000000000000000000000000000172a3b4a54565656565042321f0b00000000000000000005090b0b0b0b152a3f5366727272726b58442f1a0b0b0b0b0a06000000000000000000142738464f505050504b3f2f1d09070707070703000d2032414d505050504e4435231100000000000000000000000000000000000000000000000000000000000000000000000000000000000f1b252a2b2b2b2b2820140500000000000000000000000000071521282b2b2b2b2b2b261e110200000009151e232323232320190e01000000041423323f4a53595c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c594d3c2915000010253a4f6372737373705f4b36210c00000000000000040a0d0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0b04000000000000030b0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0e0b050000000000000000000000000000040a0d0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0e0b0500000000000000000000030b0f0f0f0f0f0d0700000000000000000000000000000000080d0f0f0f0f0f0e0a0200000009192733393a3a3a3a362c1f0f0000000000000000000000000111212d363a3a3a3a3a39342a1c0c0000000000000000000d1c283134343434342e2d3334343434322a1d0f000000000000000000000000000000000000000000000000000000000000000000001d324659686b6b6b6b604e3b26110000000000000000000000000000061b2f44586d82888885705b46301b060000000000000000000000000000091a28343a3b3b3b3b372e21131a1d1d1d1d1c170e03142330383b3b3b3b393226170600000002090d0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0c06000000000c1d2d393f404040403c322313010000000000000000000000051525333d4040404040403a2f20100000081826313838383838352c1f0f00000010223242505c666e7272727272727272727272727272727272727272726b58442f1a000011263b50667b89898977624c37220d00000000000510181e2325252525252525252525252525252525252525252525252525252420170b000000000a161f242525252525252525252525252525252525252525252525252525231f191108000000000000000000000510181e2325252525252525252525252525252525252525252525231f191107000000000000000a161f2425252525221a0f0200000000000000000000000003111b222525252525231e14080000142637454e4f4f4f4f493d2d1b0800000000000000000000000e1f2f3f4a4f4f4f4f4f4e473a2917040000000000000000000b151c1f1f1f1f1f1a191e1f1f1f1f1d170c00000000000000000000000000000000000000000000000000000000000000000000001f344a5f748282827d68533e291300000000000000000000000000000b2034495d72879c95806b56412d18040000000000000000000000000000000b17202526262626231b1a262e32323232312b201305131d2426262626251f150800000009151e2323232323232323232323232323232323232323232323232323232323211a10020000172a3b4a54565656564f41301e0a000000000000000000000213233343505656565656554d3e2d1a0600132536444c4e4e4e4e493d2d1b0800091c2e4050606e7983878888888888888888888888888888888888888887705b46301b000011263b50667b919f8d77624c37220d000000000b17222b33383a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3934291b0b000009192733393a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a38342d241a0d00000000000000000b17222b33383a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a38342d241a0d000000000009192733393a3a3a3a362d201000000000000000000000000212212e373a3a3a3a3a3831261706001b30435562646464645b4a37230f000000000000000000000c1c2c3d4d5d6464646464635847331f0b00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001f344a5f748b97947d68533e291300000000000000000000000000001025394e63778ca18f7a66513d28130000000000000000000000000000000000040c10111111110e1829384247474747463e31210f01090f11111111100b02000000081826313838383838383838383838383838383838383838383838383838383838362d201100001d324659686b6b6b6b5f4d392510000000000000000000001020314151616b6b6b6b6b6a5c4a36210c001b2f435461636363635b4b382410001125394b5d6e7d8c969c9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9c87705b46301b000011263b50667b91a38d77624c37220d0000000c1b28353f474c4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4e473928160300142637454e4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4d4841372b1e0f0000000000000c1b28353f474c4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4d4841372b1e0f00000000142637454e4f4f4f4f4a3e2e1c09000000000000000000001020303f4b4f4f4f4f4f4d44352411001f34495e737979797966513c2712000000000000000000091a2a3a4a5a6b797979797976624d38230e0000000000000004090d0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0e0b050000000000000000000000000000000000000000000000000000001f344a5f748ba0947d68533e29130000000000000000000000000000162a3f53687c929f8a75614c38230e0000000000000000000000000000000000000000000000000e223547555c5c5c5c5a4f3e2b1804000000000000000000000000132536444c4e4e4e4e4e4e4e4e4e4e4e4e4e4e4e4e4e4e4e4e4e4e4e4e4e4e4e4e4a3e2f1e0b001f344a5f748282827c67523c27120000000000000000000d1e2e3e4f5f6f808282828278634e38230e001f34495e727878787867523d281300182c4054687a8d9d9f989797979797979797979797979797979797a29c87705b46301b000011263b50667b91a38d77624c37220d00000a1b2a3946525b616464646464646464646464646464646464646464646464646464635746321e09001b304355626464646464646464646464646464646464646464646464646464625d54493c2d1e0d000000000a1b2a3946525b6164646464646464646464646464646464646464646464625c54493c2d1e0d0000001b30435562646464645c4b3824100000000000000000000d1e2e3e4e5d64646464646153412d19001f344a5f748b90907c67523c271200000000000000000717273748586878899090908f78634e38230e0000000000050f181e2225252525252525252525252525252525252525252525231f191108000000000000000000000000000000000000000000000000001f344a5f748ba0947d68533e291300000000000000000000000000061b2f44596d82979a86705c47321e0900000000000000000000000000000000000000000000000012273c5164717272726d5b47331e090000000000000000000000001b2f435461636363636363636363636363636363636363636363636363636363635c4d3a2612001f344a5f748b97937c67523c271200000000000000000b1b2b3c4c5c6d7d8e9797978f78634e38230e001f344a5f748b8f8f7d68533e2913001d32465b7084989f8f838282828282828282828282828282828285999c87705b46301b000011263b50667b91a38d77624c37220d00041628384857646f76797979797979797979797979797979797979797979797979797975614c37220c001f34495e7379797979797979797979797979797979797979797979797979797770665a4b3c2b1a070000041628384857646f76797979797979797979797979797979797979797979797770665a4b3c2b190700001f34495e737979797968533d281300000000000000000b1b2b3c4c5c6c7979797979705c47321c001f344a5f748ba0937c67523c27120000000000000004142535455565768797a5a5a48f78634e38230e000000000a17222b33373a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a38342d241a0e0000000000000000000000000000000000000000000000001f344a5f748ba0947d68533e2913000000000000000000000000000a1f34495e72888b8b806b57422d190400000000000000000000000000000000000000000000000013283d52677c88888876614c38230f0000000000000000000000001f34495e72787878787878787878787878787878787878787878787878787878786a55402b16001f344a5f748ba0937c67523c27120000000000000008192939495a6a7a8b9ba7aaa48f78634e38230e001f344a5f748ba0947d68533e2913001f344a5f74899e9682706b6b6b6b6b6b6b6b6b6b6b6b6b6b6b6e84999c87705b46301b000011263b50667b91a38d77624c37220d000d203345566675828a8f9090909090909090909090909090909090909090909090908d77624c37220d001f344a5f748b909090909090909090909090909090909090909090909090908c8477695a4937241100000d203345566675828a8f9090909090909090909090909090909090909090908c847769594837241100001f344a5f748b90907d68533e2913000000000000000818293949596a7a8b90908c7b6b5945301b001f344a5f748ba0937c67523c271200000000000001122232425363738494a4999ca48f78634e38230e0000000b1a28343e474c4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4d4841372b1e1000000000000000000000000000000000000000000000001f344a5f748ba0947d68533e291300000000000000000000000000091f34495d707474747466523d2814000000000000000000000000000000000000000000000000001024394d62778c9d907b66523d28140000000000000000000000001f344a5f748b8f8f8f8f8f8f8f8f8f8f8f8f8f8f8f8f8f8f8f8f8f8f8f8f8f8f826b56402b16001f344a5f748ba0937c67523c271200000000000006162636475767778898a09297a48f78634e38230e001f344a5f748ba0947d68533e2913001f344a5f748ba0947d685656565656565656565656565656586e84999c87705b46301b000011263b50667b91a38d77624c37220d0015293d50627485939ea4a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a38d77624c37220d001f344a5f748ba0a5a5a4a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a09688776654412d19050015293d50627485939ea4a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a09588776653402d1904001f344a5f748ba0947d68533e2913000000000000051626364757677788989f8f7d6e5d4d3c2a16001f344a5f748ba0937c67523c27120000000000000f1f30405060708291a297868fa48f78634e38230e0000091a293846515b6164646464646464646464646464646464646464646464625d54493c2e1e0e000000000000000000000000000000000000000000001f344a5f748ba0947d68533e291300000000000000000000000000061a2e41515d5f5f5f5f584836230e000000000000000000000000000000000000000000000000000a1f34485d71869b95806b57422d190400000000000000000000001f344a5f748ba0a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a497826b56402b16001f344a5f748ba0937c67523c2712000000000003132434445464758696a392828fa48f78634e38230e001f344a5f748ba0947d68533e2913001f344a5f748ba0947d685340404040404040404040404043586e84999c87705b46301b000011263b50667b91a38d77624c37220d001b2f44586c8092a3978f8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d77624c37220d001f344a5f748ba0a6988f8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8f95a29684705c48341f0a001b2f44586c8092a3978f8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8f95a29583705c48331f0a001f344a5f748ba0947d68533e2913000000000003132334445464748596a191827060503f2f1f0d001f344a5f748ba0937c67523c271200000000000d1d2d3d4e5e6e7d8f9f9989788fa48f78634e38230e00031527384756636e76797979797979797979797979797979797979797979797770675a4c3c2b1a080000000000000000000000000000000000000000001f344a5f748ba0947d68533e2913000000000000000000000000000011233341494a4a4a4a453a2b190700000000000000000000000000000000000000000000000000051a2e43576c82969a86705c47321e0900000000000000000000001f344a5f748ba0988f8f8f8f8f8f8f8f8f8f8f8f8f8f8f8f8f8f8f8f8f8f8f8f826b56402b16001f344a5f748ba0937c67523c27120000000000112131425262728393a39585788fa48f78634e38230e001f344a5f748ba0947d68533e2913001f344a5f748ba0947d68533e3e3e3e3e3e3e3e3e3e3e3e43586e84999c87705b46301b000011263b50667b91a38d77624c37220d001f34495d72889c99877a7777777777777777777777777777777777777777777777777773604c37210c001f344a5f748ba099887a7777777777777777777777777777777777777777788495a08c77624d38230e001f34495d72889c99877a77777777777777777777777777777777777777777984959f8b76614c38230d001f344a5f748ba0947d68533e29130000000000102131415162728393a394837262524232211101001f344a5f748ba0937c67523c2712000000000a1a2b3b4b5b6b7c8d9d9c8c7b788fa48f78634e38230e000c203244566574828a8f9090909090909090909090909090909090909090908c84786a5a493724110000000000000000000000000000000000000000001f344a5f748ba0947d68533e291300000000000000000000000000000515232e343434343431281c0d00000000000000000000000000000000000000000000000000000014293e52677b909f8a75614c38230e00000000000000000000001f344a5f748ba0937c7878787878787878787878787878787878787878787878786a55402b16001f344a5f748ba0937c67523c2712000000000e1e2f3f4f60708091a1988876788fa48f78634e38230e001f344a5f748ba0947d68533e2913001f344a5f748ba0947d685353535353535353535353535353586e84999c87705b46301b000011263b50667b91a38d77624c37220d001f344a5f748ba0937d6962626262626262626262626262626262626262626262626262605544311d09001f344a5f748ba0937d6a626262626262626262626262626262626262626265798fa48f79644f3a250f001f344a5f748ba0937d69626262626262626262626262626262626262626266798fa48f78634e38230e001f344a5f748ba0947d68533e2913000000000e1e2e3f4f5f708090a19686756555443424140300001f344a5f748ba0937c67523c271200000007182838485969798a9a9e8f7d6d788fa48f78634e38230e0014283c4f617384929ea4a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a09689786754412d190500000000000000000000000000000000000000001f344a5f748ba0947d68533e291300000000000000000000000000000005111a1f1f1f1f1f1c150b000000000000000000000000000000000000000000000000000000000f24384d62768b8b8b7a66513c271200000000000000000000001f344a5f748ba0937c6763636363636363636363636363636363636363636363635c4d3a2612001f344a5f748ba0937c67523c27120000000c1c2c3c4d5d6d7d8f9e9a8a7969788fa48f78634e38230e001f344a5f748ba0947d68533e2913001f344a5f748ba0947d686868686868686868686868686868686e84999c87705b46301b000011263b50667b91a38d77624c37220d001f344a5f748ba0937c67524c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4437271502001f344a5f748ba0937c67524c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4e63788fa49079644f3a250f001f344a5f748ba0937c67524c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4e63788fa48f78634e38230e001f344a5f748ba0947d68533e29130000000b1c2c3c4c5d6d7d8e9e998978685747372716060000001f344a5f748ba0937c67523c2712000005152536465666768798a191807063788fa48f78634e38230e001a2e43576b8091a2988f8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8f95a29684705d4834200b00000000000000000000000000000000000000001f344a5f748ba0947d68533e29130000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000a1f33485c6f7474747464503b261100000000000000000000001f344a5f748ba0937c67524e4e4e4e4e4e4e4e4e4e4e4e4e4e4e4e4e4e4e4e4e4e4a3e2f1e0b001f344a5f748ba0937c67523c2712000009192a3a4a5a6b7b8c9c9d8d7c6c63788fa48f78634e38230e001f344a5f748ba0947d68533e2913001f344a5f748ba0947d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d84999c87705b46301b000011263b50667b91a38d77624c37220d001f344a5f748ba0937c67523c3737373737373737373737373737373737373737373737373127190900001f344a5f748ba0937c67523c37373737373737373737373737373737384e63788fa49079644f3a250f001f344a5f748ba0937c67523c37373737373737373737373737373737384e63788fa48f78634e38230e001f344a5f748ba0947d68533e29130000091929394a5a6a7a8c9c9c8c7a6a5a4a39291909000000001f344a5f748ba0937c67523c27120002122333435364748595a39383726263788fa48f78634e38230e001e33485d71879b9a887a7777777777777777777777777777777777777777788495a08c77624d38230e00000000000000000000000000000000000000001f344a5f748ba0947d68533e29130000000001080c0d0d0d0d0a0400000000000000000000000000000000000002090c0d0d0d0c0903000000000000000000000000000005192d3f515d5f5f5f5f574735210d00000000000000000000001f344a5f748ba0937c67523c383838383838383838383838383838383838383838362d201100001f344a5f748ba0937c67523c271200061727374758687889999f8f806e5e63788fa48f78634e38230e001f344a5f748ba0947d68533e2913001f344a5f748ba09d94949494949494949494949494949494949495a19c87705b46301b000011263b50667b91a38d77624c37220d001f344a5f748ba0937c67523c2722222222222222222222222222222222222222222222211d15090000001f344a5f748ba0937c67523c27222222222222222222222222222223384e63788fa49079644f3a250f001f344a5f748ba0937c67523c27222222222222222222222222222223384e63788fa48f78634e38230e001f344a5f748ba0947d68533e291307071627374757687889999e8e7d6d5d4d3c2c1c0b00000000001f344a5f748ba0937c67523c271200102030415161718292a2968675655463788fa48f78634e38230e001f344a5f748a9f947d6a626262626262626262626262626262626262626265788ea39079644f3a250f00000000000000000000000000000000000000001f344a5f748ba0947d68533e291300000008141c21222222221f170c000000000000000000000000000000000a151e22222222221e160b000000000000000000000000000010223240484a4a4a4a44392a180500000000000000000000001f344a5f748ba0937c67523c272323232323232323232323232323232323232323211a100200001f344a5f748ba0937c67523c271204142434455565758697a2928270615063788fa48f78634e38230e001f344a5f748ba0947d68533e2913001f344a5f748ba0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a99c87705b46301b000011263b50667b91a38d77624c37220d001f344a5f748ba0937c67523c27120d0d0d0d0d0d0d0d0d0d0d0d0d0d0d0d0d0d0d0d0d0c0902000000001f344a5f748ba0937c67523c27120d0d0d0d0d0d0d0d0d0d0d0d0e23384e63788fa49079644f3a250f001f344a5f748ba0937c67523c27120d0d0d0d0d0d0d1b262d2f2f2f2f384e63788fa48f78634e38230e001f344a5f748ba0947d68533e291d1d1d2434445565758696a19080705f4f3f2f1e0e0000000000001f344a5f748ba0937c67523c27120d1e2e3e4e5f6f8090a099887767574e63788fa48f78634e38230e001f344a5f748ba0947d68534c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c62778da39079644f3a250f00000000000000000000000000000000000000001f344a5f748ba0947d68533e29130000071725303637373737332a1d0d00000000000000000000000000000a1a2832373737373732281b0b000000000000000000000000000414222d333434343431281b0c0000000000000000000000001f344a5f748ba0937c67523c271b1b1b1b1b1b1b1b1b1b1b1b1b1b1b1a150e0e0e0c06000000001f344a5f748ba0937c67523c2712112232425263738494a494847363534e63788fa48f78634e38230e001f344a5f748ba0947d68533e2913001f344a5f748b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8c9c9c87705b46301b000011263b50667b91a38d77624c37220d001f344a5f748ba0937c67523c2712000000000000000000000000000000000000000000000000000000001f344a5f748ba0937c67523c27120000000000000000000000000e23384e63788fa49079644f3a250f001f344a5f748ba0937c67523c27120000000000091b2b394244444444444e63788fa48f78634e38230e001f344a5f748ba0947d68533e3232323232425262728394a3938372625141312111000000000000001f344a5f748ba0937c67523c27121b2b3c4c5c6c7c8d9e9b8b7a6a5a494e63788fa48f78634e38230e001f344a5f748ba0947d68533e37373737373737373737373737373737374c62778da39079644f3a250f00000000000000000000000000000000000000001f344a5f748ba0947d68533e29130000122535434b4c4c4c4c473b2b190700000000000000000000000003162838454c4c4c4c4c4639291704000000000000000000000000000511191e1f1f1f1f1c150a000000000000000000000000001f344a5f748ba0937c67523c303030303030303030303030303030302f291e11010000000000001f344a5f748ba0937c67523c27121f2f405060708291a29787766655454e63788fa48f78634e38230e001f344a5f748ba0947d68533e2913001f34495d7074747474747474747474747474747474747474747484999c87705b46301b000011263b50667b91a38d77624c37220d001f344a5f748ba0937c67523c2712000000000000000000000000000000000000000000000000000000001f344a5f748ba0937c67523c27120000000000000000000000000e23384e63788fa49079644f3a250f001f344a5f748ba0937c67523c2712000000000012253849565a5a5a5a5a5a63788fa48f78634e38230e001f344a5f748ba0947d68534747474747475060708291a196867564544434231303000000000000001f344a5f748ba0937c67523c2718293949596a7a8b9b9e8e7d6d5c4c3c4e63788fa48f78634e38230e001f344a5f748ba0947d68533e29222222222222222222222222222222374c62778da39079644f3a250f00000000000000000000000000000000000000001f344a5f748ba0947d68533e291300001b2f42536062626261594936220e0000000000000000000000000a1e3245566162626261574734200b000000000000000000000000000000000000000000000000000000000000000000000000001f344a5f748ba0937c67524646464646464646464646464646464646443c2f1f0d0000000000001f344a5f748ba0937c67523c271d2d3d4d5e6e7d8f9f998978685848384e63788fa48f78634e38230e001f344a5f748ba0947d68533e2913001a2e41515d5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f6e84999c87705b46301b000011263b50667b91a38d77624c37220d001f344a5f748ba0937c67523c2712000000000000000000000000000000000000000000000000000000001f344a5f748ba0937c67523c27120000000000000000000000000e23384e63788fa49079644f3a250f001f344a5f748ba0937c67523c27120000000000172c4155676f6f6f6f6f6f6f788fa48f78634e38230e001f344a5f748ba0947d685c5c5c5c5c5c5c5d6e7d8f9f9888776757473626160600000000000000001f344a5f748ba0937c67523c272636475767778898a090806f5f4f3e384e63788fa48f78634e38230e001f344a5f748ba0947d68533e29130d0d0d0d0d0d0d0d0d0d0d0d0d22374c62778da39079644f3a250f00000000000000000000000000000000000000001f344a5f748ba0947d68533e291300001f34495e717777777665513c27120000000000000000000000000e23384d627477777775634e39240f0000000000000000070d0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0e0c0801000000000000001f344a5f748ba0937c675b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b584d3c2a160200000000001f344a5f748ba0937c67523c272a3b4b5b6b7c8d9d9c8c7b6b5b4a3a384e63788fa48f78634e38230e001f344a5f748ba0947d68533e29130011233341494a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a586e84999c87705b46301b000011263b50667b91a38d77624c37220d001f344a5f748ba0937c67523c2712000000000000000000000000000000000000000000000000000000001f344a5f748ba0937c67523c27120000000000000000000000000e23384e63788fa49079644f3a250f001f344a5f748ba0937c67523c27120000000000192e43586e848686868686868690a48f78634e38230e001f344a5f748ba0947d7272727272727272727b8c9c9b8b7a6a5a49392919080000000000000000001f344a5f748ba0937c67523c2734445464748596a392827161514131384e63788fa48f78634e38230e001f344a5f748ba0947d68533e29130000000000000000000000000d22374c62778da39079644f3a250f00000000000000000000000000000000000000001f344a5f748ba0947d68533e291300001f344a5f748b8d8d7c67523c27120000000000000000000000000e23384e63788d8d8d79644f3a250f00000000000003101b222525252525252525252525252525252523211c150d0200000000001f344a5f748ba0937c707070707070707070707070707070707070706b5945301b0600000000001f344a5f748ba0937c67523c2838485869798a9a9f8f7d6e5d4d3d2c384e63788fa48f78634e38230e001f344a5f748ba0947d68533e2913000515232e3434343434343434343434343434343434343443586e84999c87705b46301b000011263b50667b91a38d77624c37220d001f344a5f748ba0937c67523c2712000000000000000000000000000000000000000000000000000000001f344a5f748ba0937c67523c27120000000000000000000000000e23384e63788fa49079644f3a250f001f344a5f748ba0937c67523c27120000000000192e43586e84999b9b9b9b9b9b9fa48f78634e38230e001f344a5f748ba096888888888888888888888a9a9e8e7d6d5c4c3c2b1b0b000000000000000000001f344a5f748ba0937c67523c31415162728393a39585746454433323384e63788fa48f78634e38230e001f344a5f748ba0947d68533e29130000000000000000000000000d22374c62778da39079644f3a250f00000000000000000000000000000000000000001f344a5f748ba0947d68533e291300001f344a5f748ba0937c67523c27120000000000000000000000000e23384e63788fa39079644f3a250f00000000000011212d363a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a383631291f1407000000001f344a5f748ba0948787878787878787878787878787878787878787725c47321d0700000000001f344a5f748ba0937c67523c35455666768797a191827060503f2f23384e63788fa48f78634e38230e001f344a5f748ba0947d68533e2913001122323f4748484848484848484848484848484848484848586e84999c87705b46301b000011263b50667b91a38d77624c37220d001f344a5f748ba0937c67523c2712000000000000000000000000000000000000000000000000000000001f344a5f748ba0937c67523c27120000000000000000000000000e23384e63788fa49079644f3a250f001f344a5f748ba0937c67523c27120000000000192e43586e849999999999999999998f78634e38230e001f344a5f748ba0a49d9d9d9d9d9d9d9d9d9d9ea590806f5f4f3e2e1e0d00000000000000000000001f344a5f748ba0937c67523c3f4f5f708090a1988877675646362623384e63788fa48f78634e38230e001f344a5f748ba0947d68533e29130000000000000000000000000d22374c62778da39079644f3a250f00000000000000000000000000000000000000001f344a5f748ba0947d68533e291300001f344a5f748ba0937c67523c27120000000000000000000000000e23384e63788fa49079644f3a250f00000000000a1d2f3f4a4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4e4b453c312516070000001f344a5f748ba0a29c9c9c9c9c9c9c9c9c9c9c9c9c9c9c9c9c9c9c88725c47321d0700000000001f344a5f748ba0937c67523c435363738595a4948372625242322123384e63788fa48f78634e38230e001f344a5f748ba0947d68533e291300192d40515c5e5e5e5e5e5e5e5e5e5e5e5e5e5e5e5e5e5e5e5e6e84999c87705b46301b000011263b50667b91a38d77624c37220d001f344a5f748ba0937c67523c2712000000000000000000000000000000000000000000000000000000001f344a5f748ba0937c67523c27120000000000000000000000000e23384e63788fa49079644f3a250f001f344a5f748ba0937c67523c27120000000000192e43586e848484848484848484848478634e38230e001f344a5f748ba09f9797979797979797979798a494837262524231211100000000000000000000001f344a5f748ba0937c67523c4d5d6d7d8e9e9b8a7969594938281823384e63788fa48f78634e38230e001f344a5f748ba0947d68533e29130000000000000000000000000d22374c62778da39079644f3a250f00000000000000000000000000000000000000001f344a5f748ba0947d68533e291300001f344a5f748ba0937c67523c27120000000000000000000000000e23384e63788fa49079644f3a250f000000000011263a4c5d64646464646464646464646464646464635f584e433425160500001f344a5f748ba09f9898989898989898989898989898989898989888725c47321d0700000000001f344a5f748ba0937c6752405161718292a296867565554434241423384e63788fa48f78634e38230e001f344a5f748ba0947d68533e2913001e33485d6f7373737373737373737373737373737373737373798a9d99846f5a45301b000011263b50667b91a38d77624c37220d001f344a5f748ba0937c67523c2712000000000000000000000000000000000000000000000000000000001f344a5f748ba0937c67523c27120000000000000000000000000e23384e63788fa49079644f3a250f001f344a5f748ba0937c67523c27120000000000172c4054666e6e6e6e6e6e6e6e6e6e6e6c5e4b36210d001f344a5f748ba094828282828282828282828696a1918070604f3f2f1e0e000000000000000000001f344a5f748ba0937c67524a5a6a7a8c9c9d8d7c6c5c4b3b2b1b0e23384e63788fa48f78634e38230e001f344a5f748ba0947d68533e29130000000000000000000000000d22374c62778da39079644f3a250f00000000000000000000000000000000000000001f344a5f748b8d8d7d68533e291300001f344a5f748ba0937c67523c27120000000000000000000000000e23384e63788fa49079644f3a250f0000000000142a3f54697979797979797979797979797979797978746c60524334231100001f344a5f748ba0938383838383838383838383838383838383838383725c47321d0700000000001f344a5f748ba0937c67524e5e6f808fa09989786757473726160e23384e63788fa48f78634e38230e001f344a5f748ba0947d68533e2913001f344a5f7489898989898989898989898989898989898989898d98a2907d6955402c17000011263b50667b91a38d77624c37220d001f344a5f748ba0937c67523c2712000000000000000000000000000000000000000000000000000000001f344a5f748ba0937c67523c27120000000000000000000000000e23384e63788fa49079644f3a250f001f344a5f748ba0937c67523c2712000000000011253748545858585858585858585858584f402e1b07001f344a5f748ba0947d6b6b6b6b6b6b6b6b6b7789999e8f7d6d5d4d3c2c1c0b0000000000000000001f344a5f748ba0937c675258687889999f8f806e5e4e3e2d1d0d0e23384e63788fa48f78634e38230e001f344a5f748ba0947d68533e29130000000000000000000000000d22374c62778da39079644f3a250f00000000000000000000000000000000000000001f34495e717777777767523d281300001f344a5f748ba0937c67523c27120b0b0b0b0b0b0b0b0b0b0b0b0e23384e63788fa49079644f3a250f0000000000152a3f546a809090909090909090909090909090908e887d706152402e1b08001f344a5f748ba0937c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6857442f1b0600000000001f344a5f748ba0937c67525c6c7c8d9d9b8b7a6a5a4a392919090e23384e63788fa48f78634e38230e001f344a5f748ba0947d68533e2913001f344a5f748b9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9fa1a0938473604d3a2612000011263b50667b91948d77624c37220d001f344a5f748ba0937c67523c2712000000000000000000000000000000000000000000000000000000001f344a5f748ba0937c67523c27120000000000000000000000000e23384e63788fa49079644f3a250f001f344a5f748ba0937c67523c27120000000000081a2a37404343434343434343434343433d31221100001f344a5f748ba0947d68565656565656565a6a7a8b9b9c8c7b6b5a4a3a29190900000000000000001f344a5f748ba0937c675565758696a292827161504030200f000e23384e63788fa48f78634e38230e001f344a5f748ba0947d68533e29130000000000000000000000000d22374c62778da39079644f3a250f00000000000000000000000000000000000000001b2f425360626262625a4a37240f00001f344a5f748ba0937c67523c27212121212121212121212121212123384e63788fa49079644f3a250f0000000000152a3f546a8095a5a5a5a5a5a5a5a5a5a5a5a5a5a5a39b8f806f5d4a372410001f344a5f748ba0937c67575757575757575757575757575757575757554a3a28150100000000001f344a5f748ba0937c6759697a8b9b9e8e7d6d5d4c3c2c1b0b000e23384e63788fa48f78634e38230e001f344a5f748ba0947d68533e2913001f344a5f748b95959595959595959595959595959595959595938d8375665543311e0b000011263b50667a7d7d7d77624c37220d001f344a5f748ba0937c67523c2712000000000000000000000000000000000000000000000000000000001f344a5f748ba0937c67523c27120000000000000000000000000e23384e63788fa49079644f3a250f001f344a5f748ba0937c67523c27120000000000000c1a252c2e2e2e2e2e2e2e2e2e2e2e2d2920130400001f344a5f748ba0947d68534040404040404c5c6d7d8e9e99897868584737271606000000000000001f344a5f748ba0937c6762728394a494847363534332221202000e23384e63788fa48f78634e38230e001f344a5f748ba0947d68533e29130000000000000000000000000d22374c62778da39079644f3a250f0000000000000000000000000000000000000000122535434b4c4c4c4c473c2c1b0800001f344a5f748ba0937c67523c36363636363636363636363636363636384e63788fa49079644f3a250f0000000000152a3f546a80909090909090909090909090909090929d9e8d7a67533f2a15001f344a5f748ba0937c6752424242424242424242424242424242424240382c1c0b0000000000001f344a5f748ba0937c6767778898a090806f5f4f3f2e1e0e00000e23384e63788fa48f78634e38230e001f344a5f748ba0947d68533e2913001f344a5f7480808080808080808080808080808080808080807d79706557483726140100000e23374b5d68686868675a47331f0a001f344a5f748ba0937c67523c2712000000000000000000000000000000000000000000000000000000001f344a5f748ba0937c67523c27120000000000000000000000000e23384e63788fa49079644f3a250f001f344a5f748ba0937c67523c271200000000000000081117191919191c2a34393a3a3a39342a1c0c00001f344a5f748ba0947d68533e2b2b2b2b2e3e4f5f6f8090a0978675655545342414030000000000001f344a5f748ba0937c67708291a19787766656453525150400000e23384e63788fa48f78634e38230e001f344a5f748ba0947d68533e29130000000000000000000000000d22374c62778da39079644f3a250f000000000000000000000000000000000000000016293b4953545454544e42311e0b00001f344a5f748ba0937c67524b4b4b4b4b4b4b4b4b4b4b4b4b4b4b4b4b4b4e63788fa49079644f3a250f0000000000142a3f546979797979797979797979797979797979808e9f97826d58432e19001f344a5f748ba0937c67523c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2b251b0e000000000000001f344a5f748ba0937c67748595a39383726151413121100000000e23384e63788fa48f78634e38230e001f344a5f748ba0947d68533e2913001d314558676a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a68655d5347392a1a09000000081b2e3f4c53535353524a3c2b1804001f344a5f748ba0937c67523c2713131313131313131313131313131313131313131313130f08000000001f344a5f748ba0937c67523c27131313131313131313131313131323384e63788fa49079644f3a250f001f344a5f748ba0937c67523c27131313131313131313131313131317293a474e4f4f4f4e473a291704001f344a5f748ba0947d68533e291616162031415161728293a39483736252423221110100000000001f344a5f748ba0937c6e7d8f9f9a8a79685848382717070000000e23384e63788fa48f78634e38230e001f344a5f748ba0947d68533e29130000000000000000000000000d22374c62778da39079644f3a250f00000000000000000000000000000000000000001d314558676a6a6a69604e3a261100001f344a5f748ba0937c67606060606060606060606060606060606060606063788fa49079644f3a250f000000000011263a4c5d646464646464646464646464646464646f84999b86705b46301b001f344a5f748ba0937c67523c271717171717171717171717171717171612121212100a010000001f344a5f748ba0937c728393a3958574645444332313030000000e23384e63788fa48f78634e38230e001f344a5f748ba0947d68533e29130016293b4953545454545454545454545454545454545454545453504a4136291b0c000000000010212f393e3e3e3e3d372c1e0d00001f344a5f748ba0937c67523c292929292929292929292929292929292929292929292928241b0e0000001f344a5f748ba0937c67523c29292929292929292929292929292929384e63788fa49079644f3a250f001f344a5f748ba0937c67523c2929292929292929292929292929292933475863646464635847331f0b001f344a5f748ba0947d68533e29130003132333445464748595a191827060503f2f1f0e00000000001f344a5f748ba0937c7b8c9c9c8c7b6b5b4b3a2a1a0a000000000e23384e63788fa48f78634e38230e001f344a5f748ba0947d68533e29130000000000000000000000000d22374c62778da39079644f3a250f00000000000000000000000000000000000000001f344a5f748080807d68533e291300001f344a5f748ba0937c76767676767676767676767676767676767676767676788fa49079644f3a250f00000000000a1d2f3f4a4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f576c83989c87705b46301b001f344a5f748ba0937c67523c272727272727272727272727272727272727272727251e130500001f344a5f748ba0937c8090a098887767564636261505000000000e23384e63788fa48f78634e38230e001f344a5f748ba0947d68533e2913000c1d2c373e3f3f3f3f3f3f3f3f3f3f4044444444413f3f3f3f3e3b362e24180b0000000000000d1b272f32323232302a1f110100001f344a5f748ba0937c67523e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3d372c1e0d00001f344a5f748ba0937c67523e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e4e63788fa49079644f3a250f001f344a5f748ba0937c67523e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e4d627679797976624d38230e001f344a5f748ba0947d68533e29130000051526364656677788989f8f7d6e5d4d3d2c1c0c000000001f344a5f748ba0937c8a9a9f8f7d6e5d4d3d2d1c0c00000000000e23384e63788fa48f78634e38230e001f344a5f748ba0947d68533e29130000000000000000000000000d22374c62778da39079644f3a250f00000000000000000000000000000000000000001f344a5f748b95947d68533e291300001f344a5f748ba0978c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c93a59079644f3a250f000000010f1c2731393e404040404040404040404040404042576c83989c87705b46301b001f344a5f748ba0937c67523c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3930231402001f344a5f748ba0937d8e9e9b8a7a6959493928180800000000000e23384e63788fa48f78634e38230e001f344a5f748ba0947d68533e291300000e1a24292a2a2a2a2a2a2a32404c55595a5a59554d40322a2926211a1106000000000000081a2b394347474747453c2f1e0c00001f344a5f748ba0937c6753535353535353535353535353535353535353535353535353524a3c2b1804001f344a5f748ba0937c67535353535353535353535353535353535353535363788fa49079644f3a250f001f344a5f748ba0937c67535353535353535353535353535353535353535363788f908f78634e38230e001f344a5f748ba0947d68533e2913000000081828394959697a8a9b9c8c7b6b5b4a3a2a19090000001f344a5f748ba0958a97a191827060503f2f1f0f0000000000000e23384e63788fa48f78634e38230e001f344a5f748ba0947d68533e29131313131313131313131313131322374c62778da39079644f3a250f00000000000000000000000000000000000000001f344a5f748ba0947d68533e291300001f344a5f748ba0a6a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1a5a59079644f3a250f000000101f2d39444d53565656565656565656565656565656576c83989c87705b46301b001f344a5f748ba0937c6752525252525252525252525252525252525252525252524d4132200c001f344a5f748ba0988f9b9d8d7c6c5c4c3b2b1b0a0000000000000e23384e63788fa48f78634e38230e001f344a5f748ba0947d68533e291300000008101415151515151a2d3f505e696e6f6f6e695e50402e1b120d06000000000000000010243749575c5c5c5c594d3c291501001f344a5f748b9f94806d68686868686868686868686868686868686868686868686868675a47331f0a001f344a5f748ba094806d68686868686868686868686868686868686868686a7a8fa48f79644f3a250f001f344a5f748b9f94806d68686868686868686868686868686868686868686a7b8fa38f78634e38230e001f344a5f748ba0947d68533e2913000000000a1b2b3b4c5c6c7c8d9d9989786858483727170600001f344a5f748ba0a49fa4948372625242322111010000000000000e23384e63788fa48f78634e38230e001f344a5f748ba0947d68533e29292929292929292929292929292929374c62778da39079644f3a250f00000000000000000000000000000000000000001f344a5f748b8b8b7d68533e291300001f344a5f748ba09a91919191919191919191919191919191919191919191919197a59079644f3a250f00000c1d2e3d4a5760676b6b6b6b6b6b6b6b6b6b6b6b6b6b6b6b6c83989c87705b46301b001f344a5f748ba0937c6767676767676767676767676767676767676767676767675f4f3c2813001f344a5f748ba0a9a4a08f806f5e4e3e2e1d0d000000000000000e23384e63788fa48f78634e38230e001f344a5f748ba0947d68533e2913000000000000000000000e22364a5d6e7c848686847c6e5d4a37230e00000000000000000000162b3f5367727272726b58442f1a05001e33485d71869a9c8c807d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d77624c37220d001f344a5f748ba09c8c807d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d88989e8a75614c37220d001e33485d71869a9c8c807d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d89989d8a75604c37220d001f344a5f748ba0947d68533e291300000000000d1d2e3e4e5e6f808fa097877665554534241403001f344a5f748ba0a0a096867565554534241404000000000000000e23384e63788fa08f78634e38230e001f344a5f748ba0947d68533e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e4c62778da39079644f3a250f00000000000000000000000000000000000000001f34495d707474747466523d281300001f344a5f748ba0937c7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b8fa49079644f3a250f0005182a3b4c5b68737c808282828282828282828282828282828283989c87705b46301b001f344a5f748ba0937c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c6b56402b16001f344a5f748b99999992827161514030201000000000000000000e23384e63788f998f78634e38230e001f344a5f748ba0947d68533e29130000000000000000000012273c5165798c8a89898a8d7a66523d2813000000000000000000071b3044596d83888885705b46301b06001a2e42566a7d8f9f9c949494949494949494949494949494949494949494949494948d77624c37220d001f344a5f748ba0aa9c949494949494949494949494949494949494949494949aa292826e5a46321e09001a2e42566a7d8f9f9c949494949494949494949494949494949494949494949aa292806d5a46321d09001f344a5f748ba0947d68533e2913000000000000102030405161718292a294847363524232210e001f344a5f748b8b8b8b89786858473727160600000000000000000e23384e63788b8b8b78634e38230e001f344a5f748ba0947d68535353535353535353535353535353535353535362778da39079644f3a250f00000000000000000000000000000000000000001a2e41515d5f5f5f5f584836230e00001f344a5f748ba0937c67666666666666666666666666666666666666666666788fa49079644f3a250f000f223547596a798690959797979797979797979797979797979797a19c87705b46301b001f344a5f748ba09b939393939393939393939393939393939393939393939393826b56402b16001f344a5f748484848484736353433322120200000000000000000e23384e637884848478634e38230e001f344a5f748ba0947d68533e29130000000000000000000013293e53687d9079737379907d68533e29130000000000000000000c20354a5e73889c94806a56412d18030013273a4d5f70828f999fa0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a08d77624c37220d001f344a5f748ba0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a09f9b91847463513e2b17030013273a4d5f70828f999fa0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a09f9b91847363513e2b1703001f344a5f748ba0947d68533e291300000000000002122233435363738595a091827060503e2b16001f34495d7074747474746a5a4a3a2919090000000000000000000d23384c617274747472614c38230d001f344a5f74899f94806d68686868686868686868686868686868686868686a7a8fa48f79644f3a250f000000000000000000000000000000000000000011233341494a4a4a4a453a2b190700001f344a5f748ba0937c67525050505050505050505050505050505050505063788fa49079644f3a250f00162a3e5164768897a39e9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9fa8b19c87705b46301b001f344a5f748ba0a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1a197826b56402b16001e32475a6a6e6e6e6e6e665645352515040000000004090b0b0a0d21364b5e6c6e6e6e6c5e4b36210d001f344a5f748ba0947d68533e29130000000000000000000013293e53687d9079646479907d68533e291300000000000000000011253a4f63788da28f7965513c271300000b1e30425262707c86898b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b77624c37220d001f344a5f748b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8a87807365564534220f00000b1e30425262707c86898b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8a877d7365564533210e00001f344a5f748b8b8b7d68533e2913000000000000000415253545566676878b8b8b7d6d5a45301b001a2e41515d5f5f5f5f5f5a4d3c2c1c0b00000000000000000000091e3144545e5f5f5f5e5444311e09001d32475c7085999c8c807d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d88989e8a76614c38230e00000000000000000000000000000000000000000515232e343434343431281c0d0000001f344a5f748ba0937c67523c3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b4e63788fa49079644f3a250f001b3045596d8294a3948a8888888888888888888888888888888b96a69c87705b46301b001f344a5f748b8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c826b56402b1600182b3d4d5758585858585448382817070000010a12181e20211f1b1b2e404f58585858584f402e1b07001f344a5f748ba0947d68533e29130000000000000000000013293e53687d90796e6e79907d68533e2913000000000000000000162b3f54687d929f8a75604c37220e00000113243544525f6970747474747474747474747474747474747474747474747474747471604b36210c001f34495d707474747474747474747474747474747474747474747474747474716b6155473828160500000113243544525f697074747474747474747474747474747474747474747474716b6155473827160400001f34495d707474747466523d281300000000000000000717283848586974747474746d5945301b0011233341494a4a4a4a4a473d2f1e0e00000000000000000000000215263643494a4a4a49433626150200192d4155697c8e9e9c949494949494949494949494949494949494949494949aa292826e5b47331e0900000000000000000000000000000000000000000005111a1f1f1f1f1f1c150b000000001f344a5f748ba0937c67523c27262626262626262626262626262626384e63788fa49079644f3a250f001e33485e73889c98857672727272727272727272727272727278899c9c87705b46301b001f34495d70767676767676767676767676767676767676767676767676767676766954402b15000e1f2f3b42434343434340372a1a0a00010b141d262d32363634302b24313d43434343433d31221100001f344a5f748ba0947d68533e29130000000000000000000013283d52677b8f84848484907c68533d28130000000000000000001b3044596d83979a85705b47321d0900000006172635424d565c5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5e5343301c08001a2e41515d5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5d574f4438291a0a0000000006172635424d565c5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5d574e4437291a0a0000001a2e41515d5f5f5f5f584836230e0000000000000000000a1a2a3b4b595f5f5f5f5f5c4f3d2a16000515232e343434343434322b1f11000000000000000000000000000918252f34343434342f25180900001226394c5e70808e999fa0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a09f9b91847463513e2b18040000000000000000000000000000000000000000000000000000000000000000000000001f344a5f748ba0937c67523c27121111111111111111111111111123384e63788fa49079644f3a250f001f344a5f748ba0947d695c5c5c5c5c5c5c5c5c5c5c5c5c5c5c6d83989c87705b46301b001a2e41525e606060606060606060606060606060606060606060606060606060605a4b3926110001111e282d2e2e2e2e2e2c251a110c0d141e27313941474b4b49453f372b292d2e2e2e2d2920130400001f344a5f748ba0947d68533e2913000000000000000000000f24384c6071828a8b8b8a8272604d3925100000000000000000001f34495e73888b8b806b56412d180400000000081724303a42474a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4942352514010011233341494a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a48433c32271a0b000000000000081724303a42474a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a48433b3226190b0000000011233341494a4a4a4a453a2b1907000000000000000000000c1d2d3b464a4a4a4a4a483e31200e000005111a1f1f1f1f1f1f1e180e01000000000000000000000000000008131b1f1f1f1f1f1b13080000000a1d2f415261707c85898b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8a87807365564634220f00000000000000000000000000000000000000000000000b141819191919160f05000000001f344a5f748ba0937c67523c27120000000000000000000000000e23384e63788fa49079644f3a250f001f344a5f748ba0947d685347474747474747474747474747576c83989c87705b46301b00122434424a4b4b4b4b4b4b4b4b4b4b4b4b4b4b4b4b4b4b4b4b4b4b4b4b4b4b4b4b473c2d1c0a0000000b141819191919191b232726212128303a444d555b60605e59534939281819191918150d020000001f344a5f748ba0947d68533e291300000000000000000000091d304253626e747474746f635443301d0a0000000000000000001f34495d707474747465513d281300000000000006131d262d323434343434343434343434343434343434343434343434343434342f25170800000515232e343434343434343434343434343434343434343434343434343434332e28201509000000000000000006131d262d3234343434343434343434343434343434343434343434332e281f150900000000000515232e343434343431281c0d0000000000000000000000000f1d2a323434343434332c211302000000000000000000000000000000000000000000000000000000000000000000000000000000000000000012233443525e697074747474747474747474747474747474747474747474726b6256473828170500000000000000000000000000000000000000000001111e282d2e2e2e2e2b2217080000001f344a5f748ba0937c67523c27121111111111111111111111111123384e63788fa49079644f3a250f001f344a5f748ba0947d68533e323232323232323232323242576c83989c87705b46301b000616242f35363636363636394448474741363c454747463e363636363636363636332b1e0f0000000000000000000010202e383c3b37363c444d576069707576736e665744301b070000000000000000001f344a5f748ba0947d68533e2913000000000000000000000113253544515b5f5f5f5f5b5245362514010000000000000000001a2e41515d5f5f5f5f574836220e00000000000000010a13191d1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1b12070000000005111a1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1e1a140c0300000000000000000000010a13191d1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1e1a140c020000000000000005111a1f1f1f1f1f1c150b00000000000000000000000000000c171d1f1f1f1f1f1e190f030000000000000000000000000000000000000000040c10111111110e080000000000000000000000000000000006162534414c555c5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5d574f4438291a0a000000000000000000000000000000000000000000000e1f2f3b42434343433f3426160400001f344a5f748ba0937c67523c27262626262626262626262626262626384e63788fa49079644f3a250f001f344a5f748ba0947d68533e291d1d1d1d1d1d1d1d1d2c42576c83989c87705b46301b000006121b2021212121233749575e5c5c54454d595c5c5a4f3e2b212121212121211e180d00000000000000000000081b2d3e4b514f4c4b5057606a737c858a8c8883735e48331e090000000000000000001f344a5f748ba0947d68533e29130000000000000000000000071726343e464a4a4a4a473f342718080000000000000000000011233341494a4a4a4a44392a19060000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000b17202526262626231b10030000000000000000000000000000000716232f3a41474a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a48433c32271a0b0000000000000000000000000000000000000000000000182b3d4d5758585858524433200c00001f344a5f748ba0937c67523c3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b4e63788fa49079644f3a250f001f344a5f748ba0947d68533e291300000000000000172c42576c83989c87705b46301b00000000070b0b0b0b14293e536673727162515a6b72726d5b47321d0b0b0b0b0b0b090400000000000000000000000e23374a5c66646060646b737c8790918b898d89735e48331e090000000000000000001f344a5f748ba0947d68533e29130000000000000000000000000816222b3234343434322c22160900000000000000000000000515232e343434343431281b0c000000000000000000000000000000000000000002090d0e0e0e0e0b0500000000000000000000000000000000000000000000000000000000000000000002090d0e0e0e0e0b050000000000000000000000000000000000060c0e0e0e0e0e0e0a020000000000000000000004090d0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0e0b05000000000000000000000000000000000000000000000000080d0f0f0f0f0e0a020000000000000000000000000000000000091a28343a3b3b3b3b372e21110000000000000000000000000000000006121d262d3234343434343434343434343434343434343434343434332f282015090000000000000000000000000000000000000000000000001e32475a6a6e6e6e6d62503b271200001f344a5f748ba0937c67525050505050505050505050505050505050505063788fa49079644f3a250f001f344a5f748ba0947d68533e291300000000000000172c42576c83989c87705b46301b00000000000000000014293f53687a88806e5d66788884715d48331e0800000000000000000000000000000000000011263b50657a787676798087908d857d76747780735e48331e090000000000000000001f344a5f748ba0947d68533e291300000000000000000000000000050f171d1f1f1f1f1d1810050000000000000000000000000005111a1f1f1f1f1f1c150a000000000000000000000000000000000000000009151e232323232320180d0000000000000000000000000000000000000000000000000000000000000009151e232323232320180d0000000000000000000000000000010e19202323232323231e150900000000000000050f181e2225252525252525252525252525252525252525252525231f191108000000000000000000000000000000000000000003111b2225252525231e140800000000000000000000000000000000142738464f505050504b3f2f1d0900000000000000000000000000000000000a12191d1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1e1a140d03000000000000000000000000000000000000000000000000001f344a5f748484847d68533e291300001f344a5f748a9f947d6b666666666666666666666666666666666666666668798fa48f79644f3a250f001f344a5f748ba0947d68533e291300000000000000172c42576c83989c87705b46301b0000000000000000001025384b5d6f828d7b6972848b786654412e1a0500000000000000000000000000000000000011263b50667b8e8c8c8e938d847a7169625f636c6a5946311c070000000000000000001f344a5f748b8b8b7d68533e29130000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000081826313838383838342b1e0e0000000000000000000000000000000000000000000000000000000000081826313838383838342b1e0e00000000000000000000000000101f2c353838383838383227190900000000000a17222b33373a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a38342d241a0e0000000000000000000000000000000000000112212e373a3a3a3a38312617060000000000000000000000000000001c30445663666666665d4c392510000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001f344a5f748b99947d68533e291300001e33485d71869a9b8a7d7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b86979f8b76614c38230d001f344a5f748ba0947d68533e291300000000000000172c42576c83989c87705b46301b000000000000000000091c2e405264768988767d90806d5b493725120000000000000000000000000000000000000011263b50667b86898987827970675e554e4a4f57564c3c2a16020000000000000000001f34495d707474747466523d281300000000000000000000000000000000000811171c1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1d170e0200000000000008131a1e1e1e1e1e1a12070000000000132536444c4e4e4e4e483c2c1a0700000000000000000000000000000000000000000000000000000000132536444c4e4e4e4e483c2c1a0700000000000000000000000d1d2e3d494e4e4e4e4e4d45372714010000000b1a28343e474c4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4d4841372b1e1000000000000000000000000000000000000b1e303f4b4f4f4f4f4d443524110000000000000000000000000000001f344a5f737b7b7b7a68533e2813000000000000000000000000000000000004090d0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0e0b050000000000000000000000000000000003090d0f0f0f0c06000000001f344a5f748b9b947d68533e291300001a2e43576a7d90a09a9291919191919191919191919191919191919191919198a494826f5b47331e0a001f344a5f748ba0947d68533e291300000000000000172c42576c83989c87705b46301b0000000000000000000011233547596c7d90828a877562503e2c1a08000000000000000000000000000000000000000f24384d5f6c717374716c655d544a423a353c42423a2e1e0d000000000000000000001a2e41515d5f5f5f5f584836230e00000000000000000000000000000004111b252c31333333333333333333333333333333333333333333322b201201000000000918252e33333333332e241708000000001b2f435461636363635a4a37230e000000000000000000000000000000000000000000000000000000001b2f435461636363635a4a37230e000000000000000000000b1b2b3b4c5b6363636363615544301c080000091a293846515b6164646464646464646464646464646464646464646464625d54493c2e1e0e0000000000000000000000000000000012273b4e5d646464646153412d190400000000000000000000000000001f344a5f748b91917d68533e2913000000000000000000000000000000050f181e2225252525252525252525252525252525252525252525231f191108000000000000000000000000050e171e2225252421190e0000001f344a5f748686867d68533e2913000014273b4e607282909ca1a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a29d93867664523f2c1804001f344a5f748ba0947d68533e291300000000000000172c42576c83989c87705b46301b0000000000000000000006182a3c4e6073858b8b7c6a574533210f0000000000000000000000000000000000000000091d30414f575c5e5f5d58514941372e2620292d2d271d10000000000000000000000011233341494a4a4a4a453a2b190700000000000000000000000000000615222e384046484848484848484848484848484848484848484848463d301f0d0000000215273642484848484841352614010000001f34495e727878787766513c2712000000000000000000000000000000000000000000000000000000001f34495e727878787766513c27120000000000000000000818283949596a7878787878735f4b35200b00031527384756636e76797979797979797979797979797979797979797979797770675a4c3c2b1a08000000000000000000000000000000162b40556a79797979705c47321c0700000000000000000000000000001f344a5f748ba0947d68533e291300000000000000000000000000000a17222b33373a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a38342d241a0e000000000000000000000a16212b32373a3a3a352b1e0e00001e33475b6b6f6f6f6f63503c271200000b1e314354637280888c8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d89827567584735231000001f344a5f748ba0947d68533e291300000000000000172c42576c83989c87705b46301b00000000000000000000000d1f31435668747474705e4c3a2816040000000000000000000000000000000000000000011323323d4347484a48433d362d241b120d141818130b0000000000000000000000000515232e343434343431281c0d000000000000000000000000000005152432404b545a5e5e5e5e5e5e5e5e5e5e5e5e5e5e5e5e5e5e5e5e5e5a4e3d2a160000000a1e3244545d5e5e5e5d5343311d090000001f344a5f748b8f8f7c67523c2712000000000000000000000000000000000000000000000000000000001f344a5f748b8f8f7c67523c271200000000000000000516263646576777888f8f8f806f5d4934200a000c203244566574828a8f9090909090909090909090909090909090909090908c84786a5a49372411000000000000000000000000000000162b40566b82909088725c47321d0700000000000000000000000000001f344a5f748ba0947d68533e2913000000000000000000000000000b1a28343e474c4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4d4841372b1e1000000000000000000b1a28343e464c4f4f4f493c2c1a0600182b3e4e585a5a5a5a534534210d0000021425364554616c7377777777777777777777777777777777777777777777746d6458493a29180600001f344a5f748ba0947d68533e291300000000000000172c42576c83989c87705b46301b0000000000000000000000021426384a585f5f5f5d51412f1d0b00000000000000000000000000000000000000000000051420292e323334332e29221a1108000000000000000000000000000000000000000005111a1f1f1f1f1f1c150b00000000000000000000000000000011223342515d676f7373737373737373737373737373737373737373736c59442f1a0000000f24394d617273737371604c37220d0000001f344a5f748ba0937c67523c2712000000000000000000000000000000000000000000000000000000001f344a5f748ba0937c67523c27120000000000000003132333445464748595a29282716151402e1a060014283c4f617384929ea4a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a09689786754412d19050000000000000000000000000000162b40566b82979d88725c47321d0700000000000000000000000000001f344a5f748ba0947d68533e2913000000000000000000000000091a293846515b6164646464646464646464646464646464646464646464625d54493c2e1e0e0000000000000919293845515a616464645a4936220d000f20303c4344444444403627160400000008182736444f585e626262626262626262626262626262626262626262625f5a51463a2b1c0c0000001f344a5f748ba0947d68533e291300000000000000172c42576c83989c87705b46301b000000000000000000000000091b2c3b454a4a4a4941332312000000000000000000000000000000000000000000000000030d14191d1e1f1e1a150e060000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000091c2e4051616f7a84888989898989898989898989898989898989898987705b46301b0000000f253a4f647989898978634e38230e0000001f344a5f748ba0937c67523c2712000000000000000000000000000000000000000000000000000000001f344a5f748ba0937c67523c271200000000000000102131415161728393a395857464534333231100001a2e43576b8091a2988f8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8f95a29684705d4834200b0000000000000000000000000000162b40566b82979d88725c47321d0700000000000000000000000000001f344a5f748ba0947d68533e29130000000000000000000000031527384756636e76797979797979797979797979797979797979797979797770675a4c3c2b1a0800000000021527374756636d7579797865503b26100002121f292e2f2f2f2f2c2418090000000000091826323c444a4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4a463e34291c0d000000001f344a5f748ba0947d68533e291300000000000000172c42576c83989c87705b46301b000000000000000000000000000e1d2931343434342e23150600000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000030a0e0e0e0e0e0b05000000001125394c5d6f808d989d9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9c87705b46301b0000000f253a4f6479909f8f78634e38230e0000001f344a5f748ba0937c67523c2712000000000000000000000000000000000000000000000000000000001f344a5f748ba0937c67523c27120000000000000e1e2e3f4f5f6f8090a09787766656463625150500001e33485d71879b9a887a7777777777777777777777777777777777777777788495a08c77624d38230e0000000000000000000000000000162b40566b82979d88725c47321d0700000000000000000000000000001f344a5f748ba0947d68533e291300000000000000000000000c203244566574828a8f9090909090909090909090909090909090909090908c84786a5a49372411000000000c1f3244556573828a8f907b66503b26110000010d15191a1a1a1a171106000000000000000814202930353737373737373d45464646464137373737373737373735312b22170b00000000001f344a5f748ba0947d68533e291300000000000000172c42576c83989c87705b46301b00000000000000000000000000000c161d1f1f1f1f1a11050000000000000000000000000000000000000000000811171c1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1b161007000000000000000000030a0e0e0e0e0e0b050000000000000a161e232323232320180d000000182c4055687b8d9d9f979595959595959595959595959595959595959587705b46301b0000000f253a4f647990a48f78634e38230e0000001f344a5f748ba0937c67523c2712000000000000000000000000000000000000000000000000000000001f344a5f748ba0937c67523c271200000000000b1b2c3c4c5d6d7d8e9e9a8a79695948382818080000001f344a5f748a9f947d6a626262626262626262626262626262626262626265788ea39079644f3a250f0000000000000000000000000000162b40566b82979d88725c47321d0700000000000000000000000000001f344a5f748ba0947d68533e2913000000000000000000000014283c4f617384929ea4a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a09689786754412d190500000014283b4e617384929ea4917b66503b2611000000000000000000000000000000000000000000030d151b20222222222c3e4f595b5b5b5b53453322222222222222201c160f050000000000001f344a5f748ba0947d68533e291300000000000000172c42576c83989c87705b46301b0000000000000000000000000000000000000000000000000000000000000000000000000000000000000004111b252c313333333333333333333333333333333333302b231a0f030000000000000a161e232323232320180d000000000a1a28323838383838342a1d0d00001d32465b7084989e8e828080808080808080808080808080808080808080705b46301b0000000f253a4f647990a48f78634e38230e0000001f344a5f748ba0937c67523c2712090909090909090909090909090909090907040000000000000000001f344a5f748ba0937c67523c271209090909091929394a5a6a7a8b9c9d8d7c6b5b4b3b2b1a0a000000001f344a5f748989897d68534c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c62778da39079644f3a250f0000000000000000000000000000162b40566b82979d88725c47321d0700000000000000000000000000001f344a5f748ba0947d68533e291300000000000000000000001a2e43576b8091a2988f8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8f95a29684705d4834200b0000041a2e43576b7d91a299908f7b66503b2611000000000000000000000000000000000000000000000000070b0d0d0d1e33485c6d7070707063503b27120d0d0d0d0d0b080200000000000000001f344a5f748ba0947d68533e291300000000000000172c42576c83989c87705b46301b0000000000000000000811171c1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1b16100700000000000000000615222e3840464848484848484848484848484848484848453f372c201304000000000a1a28323838383838342a1d0d000002152838454d4e4e4e4d473b2b1906001f344a5f73899e96826f6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6555422d190000000f253a4f647990a48f78634e38230e0000001f344a5f748ba0937c67523c271e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1c19130b010000000000001f344a5f748ba0937c67523c271e1e1e1e1e1e26374757677889999f8f7d6e5e4e3d2d1d0d00000000001e33485d6f7373737365513d37373737373737373737373737373737374c62778da39079644f3a250f0000000000000000000000000000162b40566b82979d88725c47321d0700000000000000000000000000001f344a5f748ba0947d68533e291300000000000000000000001e33485d71879b9a887a7777777777777777777777777777777777777777788495a08c77624d38230e0000091e33485d71879b9b897b787765503b2610000000000000000000000000000000000000000000000000000000000a1f34495e738787877d6a55402c17030000000000000000000000000000001f344a5f748ba0947d68533e291300000000000000172c42576c83989c87705b46301b0000000000000004111b252c313333333333333333333333333333333333302b231a0f03000000000005152432404b545a5e5e5e5e5e5e5e5e5e5e5e5e5e5e5e5e5d5a534a3e31221202000002152838454d4e4e4e4d473b2b190600091e3245566263636363594835210d001f344a5f748ba0947d68545454545454545454545454545454545454545452473725120000000f253a4f647990a48f78634e38230e0000001f344a5f748ba0937c67523c33333333333333333333333333333333333333312d271e140800000000001f344a5f748ba0937c67523c3333333333333334445565758696a1918270605040301f14080000000000192d40515c5e5e5e5e56483622222222222222222222222222222222374c62778da39079644f3a250f0000000000000000000000000000162b40566b82979d88725c47321d0700000000000000000000000000001f344a5f748ba0947d68533e291300000000000000000000001f344a5f748a9f947d6a626262626262626262626262626262626262626265788ea39079644f3a250f00000a1f344a5f748b9f94806b6363594835210d00000000000000000000000000000000000000000000000000000000071b3045596e839799846f5a45311c080000000000000000000000000000001f344a5f748b99947d68533e291300000000000000172c42576c83989987705b46301b0000000000000615222e3840464848484848484848484848484848484848453f372c2013040000000011223342515d676f73737373737373737373737373737373726e665c4f4030200e0000091e3245566263636363594835210d000c22374c61747878787765503b2610001f344a5f748ba0947d68533f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3d35291a080000000f253a4f647990a48f78634e38230e0000001f344a5f748ba0937c6752484848484848484848484848484848484848484847423a3125190a000000001f344a5f748ba0937c67524848484848484848485262728394a4948473635247423b3126190a000000001122323f474848484844392a1d1d1d1d1d1d1d1d1d1d1d1d1d1d1d22374c62778da39079644f3a250f0000000000000000000000000000162b40566b82979d88725c47321d0700000000000000000000000000001f344a5f748ba0947d68533e291300000000000000000000001f344a5f748ba0947d68534c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c62778da39079644f3a250f00000a1f344a5f748ba0947d68534d473b2b19060000000000000000000000000000000000000000000000000000000000162b4054697d929d89745f4a36210d0000000000000000000000000000001f344a5f748484847d68533e291300000000000000172c42576c83848484705b46301b000000000005152432404b545a5e5e5e5e5e5e5e5e5e5e5e5e5e5e5e5e5d5a534a3e312212020000091c2e4051616f7a84888989898989898989898989898989898883796d5e4e3d2c1906000c22374c61747878787765503b2610000d22374c62778d8f8f7b66503b2611001f344a5f748ba0947d68533f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3d35291a080000000f253a4f647990a48f78634e38230e0000001f344a5f748ba0937c675e5e5e5e5e5e5e5e5e5e5e5e5e5e5e5e5e5e5e5e5e5c564d43362819090000001f344a5f748ba0937c675e5e5e5e5e5e5e5e5e5e60708291a1978675655e5e5c564e43372819090000000514222c323333333331323232323232323232323232323232323232374c62778da39079644f3a250f0000000000000000000000000000162b40566b82979d88725c47321d0700000000000000000000000000001f344a5f748ba0947d68533e291300000000000000000000001f344a5f748ba0947d68533e37373737373737373737373737373737374c62778da39079644f3a250f00000a1f344a5f748ba0947d68533e342a1d0d00000000000000000000000000000000000000000000000000000000000011263a4f64788da28e7964503b26120000000000000000000000000000001e32475a6a6e6e6e6d62503b271200000000000000162b3f53656e6e6e6e6857432e1a000000000011223342515d676f73737373737373737373737373737373726e665c4f4030200e00001125394c5d6f808d989d9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9d968b7c6c5b4936220f000d22374c62778d8f8f7b66503b2611000d22374c62778da3917b66503b2611001f344a5f748ba0947d68545454545454545454545454545454545454545452473725120000000f253a4f647990a48f78634e38230e0000001f344a5f748ba0937c73737373737373737373737373737373737373737373706a6054463727160400001f344a5f748ba0937c7273737373737373737373737d8f9f9b897873737373706a60554637271604000000041019212d373f4446474747474747474747474747474747474747474c62778da39079644f3a250f0000000000000000000000000000162b40566b82979d88725c47321d0700000000000000000000000000001f344a5f748ba0947d68533e291300000000000000000000001f344a5f748ba0947d68533e29222222222222222222222222222222374c62778da39079644f3a250f00000a1f344a5f748ba0947d68533e29180d000000000000000000000000000000000000000000000000000000000000000c21354a5e73889c937d6955402b17020000000000000000000000000000182b3d4d5758585858524433200c00000000000000102436475458585858554a3a271400000000091c2e4051616f7a84888989898989898989898989898989898883796d5e4e3d2c190600182c4055687b8d9d9f9795959595959595959595959595959597a19b8a7865523e2915000d22374c62778da3917b66503b2611000d22374c62778da3917b66503b2611001f344a5f748ba0947d6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6555422d190000000f253a4f647990a48f78634e38230e0000001f344a5f748ba0948688898989898989898989898989898989898989898989867d7264554433210e00001f344a5f748ba094868889898989898989898989898c9cac9a8a8989898989867d7264554533210e000000041423323f4a53595b5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c62778da39079644f3a250f0000000000000000000000000000162b40566b82979d88725c47321d0700000000000000000000000000001f344a5f748ba0947d68533e291300000000000000000000001f344a5f748ba0947d68533e29130d0d0d0d0d0d0d0d0d0d0d0d0d22374c62778da39079644f3a250f00000a1f344a5f748ba0947d68533e2913000000000000070e1313131313110a0100000000000000000000000000000000071b3044596d838b8b836e5a45301b0600000000000000000000000000000e1f2f3b42434343433f342616131313110b11131313192937404343434341392c1c0a000000001125394c5d6f808d989d9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9d968b7c6c5b4936220f001d32465b7084989e8e828080808080808080808080808080808490a295826d58432e19000d22374c62778da3917b66503b2611000d22374c62778da3917b66503b2611001f344a5f748ba09480808080808080808080808080808080808080808080705b46301b0000000f253a4f647990a48f78634e38230e0000001f344a5f748ba0a19b9d9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9e9a90837362503d2a1602001f344a5f748ba0a19b9d9f9f9f9f9f9f9f9f9f9f9fa0aaaba79f9f9f9f9f9e9a90837363513e2b1703000010223242505c666d707272727272727272727272727272727272727272728092a28e78634e39240f0000000000000000000000000000162b40566b82979d88725c47321d0700000000000000000000000000001f344a5f748ba0947d68533e291300000000000000000000001f344a5f748ba0947d68533e29130000000000000000000000000d22374c62778da39079644f3a250f00071725344a5f748ba0947d68533e291300000000000d19232829292928251e120400000000000000000000000000000000162b3f5467747474746d5945301b05000000000000000000000000000001111e282d2e2e2e2e2b242829292928251f262929292927242c2e2e2e2e2c261b0e0000000000182c4055687b8d9d9f9795959595959595959595959595959597a19b8a7865523e2915001f344a5f73899e96826f6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a72869a9b86705b46301b000d22374c62778da3917b66503b2611000d22374c62778da3917b66503b2611001f344a5f748ba09e95959595959595959595959595959595959595959587705b46301b0000000f253a4f647990a48f78634e38230e0000001f344a5f748ba0ab9e979595959595959595959595959595959595959595969ca191806d5a46311d08001f344a5f748ba0ab9e979595959595959595959595959595959595959595969ca191806d5a46321d0900081b2e4050606e7983878888888888888888888888888888888888888888888f9e9a88735f4a36210c0000000000000000000000000000162b40566b82979d88725c47321d0700000000000000000000000000001f344a5f748ba0947d68533e29131212121212110d050000001f344a5f748ba0947d68533e29130000000000000000000000000d22374c62778da39079644f3a250f00122535434e5f748ba0947d68533e2913000000000b1c2b363d3e3e3e3e3a302312010000000000000000000000000000001125384a585f5f5f5f5c4f3d2a1602000000000000000000000000000000000b14181919191e2c373d3e3e3e3e39323b3e3e3e3e3c35291a1919191712090000000000001d32465b7084989e8e828080808080808080808080808080808490a295826d58432e19001f344a5f748ba0947d685454545454545454545454545454576c83989c87705b46301b000d22374c62778da3917b66503b2611000d22374c62778da3917b66503b2611001f344a5f748ba0a59f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9fa79c87705b46301b0000000f253a4f647990a48f78634e38230e0000001f344a5f748ba09c8d828080808080808080808080808080808080808080828a999d8975604b36210d001f344a5f748ba09d8d828080808080808080808080808080808080808080828a999d8a75604c37220d001125384b5d6e7d8c969c9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9da29c8e7c6a5744301c070000000000000000000000000000162b40566b82979d88725c47321d0700000000000000000000000000001f344a5f748ba0947d68533e292727272727272621170b00001f344a5f748ba0947d68533e29130000000000000000000000000d22374c62778da39079644f3a250f001b2f4253606b768ba0947d68533e29130000000015283a4852535353534d41301e0a000000000000000000000000000000081b2c3b454a4a4a4a483e31200e00000000000000000000000000000000000000000004182b3c4a52535353534d424e53535353514738261300000000000000000000001f344a5f73899e96826f6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a72869a9b86705b46301b001f344a5f748ba0947d68533f3f3f3f3f3f3f3f3f3f3f3f42576c83989c87705b46301b000d22374c62778da3917b66503b2611000d22374c62778da3917b66503b2611001f344a5f748ba0968989898989898989898989898989898989898a9a9c87705b46301b0000000f253a4f647990a48f78634e38230e0000001f344a5f748ba094806e6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6c7c90a38e78634e38230e001f344a5f748ba094806e6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6c7c90a38f79644f3a240f00182c4054677a8d9d9f98979797979797979797979797979797979797979797938a7d6f5e4d3b2815010000000000000000000000000000162b40566b82979d88725c47321d0700000000000000000000000000001f344a5f748ba0947d68533e3c3c3c3c3c3c3c3b34291a09001f344a5f748ba0947d68533e29130000000000000000000000000d22374c62778da39079644f3a250f001f34495e717d899491847666523d2813000000001c31455866686868685f4d3a2511000000000000000000000000000000000e1d293134343434332c2113020000000000000000000000000000000000000000000a1f33475a67686868685e5060686868686455422e1a05000000000000000000001f344a5f748ba0947d685454545454545454545454545454576c83989c87705b46301b001f344a5f748ba0947d68533e2a2a2a2a2a2a2a2a2a2a2c42576c83989c87705b46301b000d22374c62778da3917b66503b2611000d22374c62778da3917b66503b2611001f344a5f748ba0947d737373737373737373737373737373737383989c87705b46301b0000000f253a4f647990a48f78634e38230e0000001f344a5f748ba0937c67545454545454545454545454545454545454545463788fa48f78634e38230e001f344a5f748ba0937c67545454545454545454545454545454545454545463788fa49079644f3a250f001c31465b7084989e8f838282828282828282828282828282828282828282827d776d605141301e0b000000000000000000000000000000162b40566b82979d88725c47321d0700000000000000000000000000001f344a5f748ba0947d685352525252525252525047382614001f344a5f748ba0947d68533e29130000000000000000000000000d22374c62778da39079644f3a250f001f344a5f748b9b8f827365584836230e000000001f344a5f747d7d7d7d68533e281300000000000000000000000000000000000c161d1f1f1f1f1e190f03000000000000000000000000000000000000000000000d22374c62777d7d7d7c67566b7d7d7d7d715c47321d07000000000000000000001f344a5f748ba0947d68533f3f3f3f3f3f3f3f3f3f3f3f42576c83989c87705b46301b001f344a5f748ba0947d68533e291515151515151515172c42576c83989c87705b46301b000d22374c62778da3917b66503b2611000d22374c62778da3917b66503b2611001f344a5f748ba0947d685e5e5e5e5e5e5e5e5e5e5e5e5e5e5e6c83989c87705b46301b0000000f253a4f647990a48f78634e38230e0000001f344a5f748ba0937c67523f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f4e63788fa48f78634e38230e001f344a5f748ba0937c67523f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f4e63788fa49079644f3a250f001f34495e73899e9582706b6b6b6b6b6b6b6b6b6b6b6b6b6b6b6b6b6b6b6b6b69635a4f4232231201000000000000000000000000000000162b40566b82979d88725c47321d0700000000000000000000000000001f344a5f748ba0947d686767676767676767676456432f1b001f344a5f748ba0947d68533e29130000000000000000000000000d22374c62778da39079644f3a250f001f344a5f748b8c7d706255483a2b1907000000001f344a5f748b94947d68533e291300000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000d22374c62778d94937c67566b82949488725c47321d07000000000000000000001f344a5f748ba0947d68533e2a2a2a2a2a2a2a2a2a2a2c42576c83989c87705b46301b001f344a5f748ba0947d68533e291300000000000000172c42576c83989c87705b46301b000d22374c62778da3917b66503b2611000d22374c62778da3917b66503b2611001f344a5f748ba0947d685348484848484848484848484848576c83989c87705b46301b0000000f253a4f647990a48f78634e38230e0000001f344a5f748ba0937c67523c2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a384e63788fa48f78634e38230e001f344a5f748ba0937c67523c2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a384e63788fa49079644f3a250f001f344a5f748ba0947d68565656565656565656565656565656565656565656544f473d3123140500000000000000000000000000000000162b40566b82979d88725c47321d0700000000000000000000000000001f344a5f748ba0947d7c7c7c7c7c7c7c7c7c7c725d48331e001f344a5f748ba0947d68533e29130000000000000000000000000d22374c62778da39079644f3a250f001f344a5f748b908275685a4d402f1d0a000000001f344a5f748ba0947d68533e2913000000000000000002080c0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0d090400000000000000000000000000000d22374c62778da0937c67566b82979d88725c47321d07000000000000000000001f344a5f748ba0947d68533e291515151515151515172c42576c83989c87705b46301b001f344a5f748ba0947d68533e291300000000000000172c42576c83989c87705b46301b000d22374c62778da3917b66503b2611000d22374c62778da3917b66503b2611001f344a5f748ba0947d68533e343434343434343434343442576c83989c87705b46301b0000000f253a4f647990a48f78634e38230e0000001f344a5f748ba0937c67523c27151515151515151515151515151523384e63788fa48f78634e38230e001f344a5f748ba0937c67523c27151515151515151515151515151523384e63788fa49079644f3a250f001f344a5f748ba0947d685340404040404040404040404040404040404040403f3b342b2421180d00000000000000000000000000000000162b40566b82979d88725c47321d0700000000000000000000000000001f344a5f748ba09c9393939393939393939389735e48331e001f344a5f748ba0947d68533e29130000000000000000000000000d22374c62778da39079644f3a250f001f344a5f748b969386786b5e4d392511000000001f344a5f748b8b8b7d68533e2913000000000000040e161d2123232323232323232323232323232323232323232323221e1810070000000000000000000000000d22374c62778b8b8b7c67566b828b8b88725c47321d07000000000000000000001f344a5f748ba0947d68533e291300000000000000172c42576c83989c87705b46301b001f344a5f748ba0947d68533e291300000000000000172c42576c83989c87705b46301b000d22374c62778da3917b66503b2611000d22374c62778da3917b66503b2611001f344a5f748ba0947d68534a4a4a4a4a4a4a4a4a4a4a4a4a576c83989c87705b46301b0000000f253a4f647990a48f78634e38230e0000001f344a5f748ba0937c67523c27120000000000000000000000000e23384e63788fa48f78634e38230e001f344a5f748ba0937c67523c27120000000000000000000000000e23384e63788fa49079644f3a250f001f344a5f748ba0947d68533e2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b34393a3a3a3a352b1d0d000000000000000000000000000000162b40566b82979d88725c47321d0700000000000000000000000000001f344a5f748ba0a7a1a1a1a1a1a1a1a1a19f89735e48331e001f344a5f748ba0947d68533e29130000000000000000000000000d22374c62778da39079644f3a250f001e33485d6f79848f97897c68533e2813000000001f34495d707474747466523d281300000000000916212a31363838383838383838383838383838383838383838383837332c23190d00000000000000000000000c21364b607174747474645468747474746e5b46311c07000000000000000000001f344a5f748ba0947d68533e291300000000000000172c42576c83989c87705b46301b001f344a5f748ba0947d68533e291300000000000000172c42576c83989c87705b46301b000d22374c62778da3917b66503b2611000d22374c62778da3917b66503b2611001f344a5f748ba094806a5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f6e83989c87705b46301b0000000f253a4f647990a48f78634e38230e0000001f344a5f748ba0937c67523c27121212121212121212121212121223384e63788fa48f78634e38230e001f344a5f748ba0937c67523c27121212121212121212121212121223384e63788fa49079644f3a250f001f344a5f748ba0947d68533e291616161616161616161616161616162839474e4f4f4f4f483b2b1805000000070e131313131313131313162b40566b82979d88725c47321d1313131313131313131009000000001f344a5f748ba0988c8c8c8c8c8c8c8c8c8c89735e48331e001f344a5f748ba0947d68533e29130000000000000000000000000d22374c62778da39079644f3a250f00192d40515d66748ba0947d68533e2913000000001a2e41515d5f5f5f5f584836230e000000000a1927333d464b4e4e4e4e4e4e4e4e4e4e4e4e4e4e4e4e4e4e4e4e4e4e4c4740362a1d0f00000000000000000000081c3043535e5f5f5f5f574a595f5f5f5f5c503e2b1703000000000000000000001f344a5f748ba0947d68533e291300000000000000172c42576c83989c87705b46301b001f344a5f748ba0947d68533e291300000000000000172c42576c83989c87705b46301b000d22374c62778da3917b66503b2611000d22374c62778da3917b66503b2611001e33485d72879c9987787474747474747474747474747474747a8a9d99846f5a45301b0000000f253a4f647990a48f78634e38230e0000001f344a5f748ba0937c67523c27272727272727272727272727272727384e63788fa48f78634e38230e001f344a5f748ba0937c67523c27272727272727272727272727272727384e63788fa49079644f3a250f001f344a5f748ba0947d68533e292929292929292929292929292929293246576364646464594835210c00000d1923282929292929292929292b40566b82979d88725c473229292929292929292928241c100200001f344a5f748ba0947d767676767676767676766f5c47321d001f344a5f748ba0947d68533e29130000000000000000000000000d22374c62778da39079644f3a250f001122323f4a5f748ba0947d68533e29130000000011233341494a4a4a4a453a2b1907000000081928374550596063636363636363636363636363636363636363636363615b53483b2d1d0d0000000000000000000114253542494a4a4a4a443b464a4a4a4a483f32210f00000000000000000000001f344a5f748ba0947d68533e291300000000000000172c42576c83989c87705b46301b001f344a5f748ba0947d68533e291300000000000000172c42576c83989c87705b46301b000d22374c62778da3917b66503b2611000d22374c62778da3917b66503b2611001a2f44586c8093a4968d8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8e99a1907d6955412c180000000f253a4f647990a48f78634e38230e0000001f344a5f748ba0937c67523c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c4e63788fa48f78634e38230e001f344a5f748ba0937c67523c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c4e63788fa49079644f3a250f001f344a5f748ba0947d68533e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e4c617579797977644f3a240f000b1c2b363d3e3e3e3e3e3e3e3e3e3e40566b82979d88725c473e3e3e3e3e3e3e3e3e3e3d382e200f00001f344a5f748ba0947d686060606060606060605e51402d19001f344a5f748ba0947d68533e29130000000000000000000000000d22374c62778da39079644f3a250f00051422344a5f748ba0947d68533e2913000000000515232e343434343431281c0d000000021426374655626d7478787878787878787878787878787878787878787878766f66594b3b2b19070000000000000000000817252f3434343434312a3234343434332d22130300000000000000000000001f344a5f748ba0947d68533e291300000000000000172c42576c83989c87705b46301b001f344a5f748ba0947d68533e29130a0a0a0a0a0a0a172c42576c83989c87705b46301b000d22374c62778da3917b66503b2611000d22374c62778da3917b66503b26110015293d5063758695a1a2a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a29f938472604d3a26120000000f253a4f647990a48f78634e38230e0000001f344a5f748ba0937c67525252525252525252525252525252525252525263788fa48f78634e38230e001f344a5f748ba0937c67525252525252525252525252525252525252525263788fa49079644f3a250f001f344a5f748ba0947d68535353535353535353535353535353535353535362778d909079644f3a250f0015283a48525353535353535353535353566b82979d88725c5353535353535353535353534b3e2d1a07001f344a5f748ba0947d685353535353535353535148392714001f344a5f748ba0947d68533e29130000000000000000000000000d22374c62778da39079644f3a250f00000a1f344a5f748ba0947d68533e2913010000000005111a1f1f1f1f1f1c150b000000000c1f324455647380898d8f8f8f8f8f8f8f8f8f8f8f8f8f8f8f8f8f8f8f8f8f8b83776959483724110000000000000000000007121b1f1f1f1f1f1c171d1f1f1f1f1e1910040000000000000000000000001f344a5f748ba0947d68533e291300000000000000172c42576c83989c87705b46301b001f344a5f748ba0947d68533e291f1f1f1f1f1f1f1f1f2c42576c83989c87705b46301b000d22374c62778da3917b66503b2611000d22374c62778da3917b66503b2611000d213446576776848d93949494949494949494949494949494928c8274655543311e0a0000000f253a4f647990948f78634e38230e0000001f344a5f748ba094806c67676767676767676767676767676767676767676a7b8fa38f78634e38230e001f344a5f748ba094806d67676767676767676767676767676767676767676a7b90a48f79644f3a250f001f344a5f74899f94806d68686868686868686868686868686868686868686a7a8fa48f79644f3a250f001c314558666868686868686868686868686b82979d8872686868686868686868686868685c4a36220d001f344a5f748b9f94806d686868686868686868655644301b001f344a5f748ba0947d68533e29130000000000000000000000000d22374c62778da39079644f3a250f00000a1f344a5f748ba0947d68533e291e120400000000000000000000000000000000000014283b4e617283919da3a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a39f9588776653402d1905000000000000000000000000000000000000000000000000000000000000000000000000000000001f344a5f748ba0947d68533e29130a0a0a0a0a0a0a172c42576c83989c87705b46301b001f344a5f748ba0947d68533e343434343434343434343442576c83989c87705b46301b000d22374c62778da3917b66503b2611000d22374c62778da3917b66503b2611000416283949586671797c7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7c776f645647372614010000000f253a4f64797d7d7d78634e38230e0000001f344a5f748ba09b8b807c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7d88989e8a75604c37220d001f344a5f748ba09c8c807c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7d88989e8a75614c37220d001d32475c7085999c8c807d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d88989e8a76614c38230e001f344a5f747d7d7d7d7d7d7d7d7d7d7d7d7d82979d887d7d7d7d7d7d7d7d7d7d7d7d7d79644f3a250f001e33485d71869a9c8c807d7d7d7d7d7d7d7d7d735e48331e001f344a5f748ba0947d68533e29130000000000000000000000000d22374c62778da39079644f3a250f00000a1f344a5f748ba0947d68533f3a3022110000000000000000000000000000000000001a2e43576a7d91a199908f8f8f8f8f8f8f8f8f8f8f8f8f8f8f8f8f8f8f8f9096a39583705c48341f0b00000002090d0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0c06000000001f344a5f748ba0947d68533e291f1f1f1f1f1f1f1f1f2c42576c83989c87705b46301b001f344a5f748ba0947d68534a4a4a4a4a4a4a4a4a4a4a4a4a576c83989c87705b46301b000d22374c62778da3917b66503b2611000d22374c62778da3917b66503b261100000b1c2b3a48545d646868686868686868686868686868686867635c524638291908000000000d22364a5c68686868675b4935200c0000001f344a5f748ba0a99c949393939393939393939393939393939393939393939aa292826d5a46321d09001f344a5f748ba0aa9c9493939393939393939393939393939393939393939399a292826e5b46321e0900192d4155697c8e9e9c949494949494949494949494949494949494949494949aa292826e5b47331e09001f344a5f748b949494949494949494949494949fa4969494949494949494949494949079644f3a250f001a2e42566a7d8f9f9c94949494949494949489735e48331e001f344a5f748ba0947d68533e29130000000000000000000000000d22374c62778da39079644f3a250f00000a1f344a5f748ba0947d6854544d402f1c0800000000000000000000000000000000001d32475c71869a9b897c7878787878787878787878787878787878787878798595a08c77624d38230e000009151e2323232323232323232323232323232323232323232323232323232323211a100200001f344a5f748ba0947d68533e343434343434343434343442576c83989c87705b46301b001f344a5f748ba094806a5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f6e83989c87705b46301b000d22374c62778da3917b66503b2611000d22374c62778da3917b66503b26110000000d1c2a37414a5053535353535353535353535353535353524f484035281a0b0000000000071a2d3e4b53535353524b3d2c19060000001f344a5f748ba0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a09b91847463513e2b1703001f344a5f748ba0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a09b91847463513e2b1703001226394c5e70808e999fa0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a09f9b91847463513e2b1804001f344a5f748ba0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a09079644f3a250f0013273a4d6071828f9a9fa0a0a0a0a0a0a09f89735e48331e001f344a5f748ba0947d68533e29130000000000000000000000000d22374c62778da39079644f3a250f00000a1f344a5f74899f96826f6a695e4c38230e00000000000000000000000000000000001f344a5f748a9f947d6b636363636363636363636363636363636363636366798ea39079644f3a250f00081826313838383838383838383838383838383838383838383838383838383838362d201100001f344a5f748ba0947d68534a4a4a4a4a4a4a4a4a4a4a4a4a576c83989c87705b46301b001e33485d72879c9987787474747474747474747474747474747a8a9d99846f5a45301b000d22374c62778da3917b66503b2611000d22374c62778da3917b66503b2611000000000c19252e363b3d3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3d3a342d23170a0000000000030f17202e383d3e3e3e3d382d1f13090000001f344a5f748b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b87807365564534210e00001f344a5f748b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b87807365564634220f00000a1d2f415261707c85898b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8a87807365564634220f00001f344a5f748b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b79644f3a250f000b1e30425362717d868b8b8b8b8b8b8b8b8b89735e48331e001f344a5f748ba0947d68533e29130000000000000000000000000d22374c62778da39079644f3a250f0000081d32475c7085999e8e82807b66503b261100000000000000000000000000000000001f344a5f748ba0947d68534e4e4e4e4e4e4e4e4e4e4e4e4e4e4e4e4e4e4e62778da39079644f3a250f00132536444c4e4e4e4e4e4e4e4e4e4e4e4e4e4e4e4e4e4e4e4e4e4e4e4e4e4e4e4e4a3e2f1e0b001f344a5f748ba094806a5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f6e83989c87705b46301b001a2f44586c8093a4968d8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8e99a1907d6955412c18000d22374c62778da3917b66503b2611000d22374c62778da3917b66503b2611000000000007121b21262b323332312a292d3132322f2929292928252019100600000000000413212b3132323029292e3232322e261a0b00001f34495d707474747474747474747474747474747474747474747474747474726b6155473828160500001f34495d707474747474747474747474747474747474747474747474747474726c6256473828170500000012233443525e697074747474747474747474747474747474747474747474726b6256473828170500001f34495d7074747474747474747474747474747474747474747474747474747474747473624e39240f00011325354453606a71747474747474747474746f5c47321d001f344a5f748ba0947d68533e29130000000000000000000000000d22374c62778da39079644f3a250f000002192d4155697c8e9e9e96917b66503b261100000000000000000000000000000000001f344a5f748ba0947d68533e38383838383838383838383838383838384c62778da39079644f3a250f001b2f435461636363636363636363636363636363636363636363636363636363635c4d3a2612001e33485d72879c9987787474747474747474747474747474747a8a9d99846f5a45301b0015293d5063758695a1a2a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a29f938472604d3a2612000d22374c62778da3917b66503b2611000d22374c62778da3917b66503b2611000000000000000e20313e474847453d344047474743392b1a1313100c05000000000000001022323e464747453c37424747474238291805001a2e41515d5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5d584f4438291a0a0000001a2e41515d5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5d584f4438291a0a0000000006162534414c555c5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5d574f4438291a0a0000001a2e41515d5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5e5545331f0b000007172635424d565d5f5f5f5f5f5f5f5f5f5f5d513f2c19001f344a5f748ba0947d68533e29130000000000000000000000000d22374c62778da09079644f3a250f0000001226394c5e70808e999f917b66503b261100000000000000000000000000000000001f344a5f748ba0947d68533e29232323232323232323232323232323374c62778da39079644f3a250f001f34495e72787878787878787878787878787878787878787878787878787878786a55402b16001a2f44586c8093a4968d8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8e99a1907d6955412c18000d213446576776848d93949494949494949494949494949494928c8274655543311e0a000d22374c62778da3917b66503b2611000d22374c62778da3917b66503b261100000000000000172b3e4f5b5d5c5a4e43525c5c5c57493724100000000000000000000000192d3f505b5c5c594c46555c5c5c554735220e0011233341494a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a48433c32271a0b0000000011233341494a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a48433c32271a0b0000000000000716232f3a41474a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a48433c32271a0b0000000011233341494a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a494337271603000000081725303a42484a4a4a4a4a4a4a4a4a4a4840322210001f344a5f748b8b8b7d68533e29130000000000000000000000000d22374c62778b8b8b79644f3a250f0000000a1d2f415161707c85898b7b66503b261100000000000000000000000000000000001f344a5f748ba0947d68533e29130e0e0e0e0e0e0e0e0e0e0e0e0e22374c62778da39079644f3a250f001f344a5f748b8f8f8f8f8f8f8f8f8f8f8f8f8f8f8f8f8f8f8f8f8f8f8f8f8f8f826b56402b160015293d5063758695a1a2a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a29f938472604d3a2612000416283949586671797c7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7c776f64564737261401000d22374c62778da3917b66503b2611000d22374c62778da3917b66503b2611000000000000001c31465a6d72726c5c4f6170727267533f2a1500000000000000000000001e33485c6e72726a59526371727164513c2712000515232e343434343434343434343434343434343434343434343434343434332f2820150900000000000515232e343434343434343434343434343434343434343434343434343434332f29201509000000000000000006121d262d3234343434343434343434343434343434343434343434332f2820150900000000000515232e34343434343434343434343434343434343434343434343434343434343434343026190a000000000007131e272e3334343434343434343434332d221404001f34495d707474747466523d28130000000000000000000000000c21364b607174747473624e39240f0000000012233443515e6970747473634f3a251000000000000000000000000000000000001f344a5f748ba0947d68533e29130000000000000000000000000d22374c62778da39079644f3a250f001f344a5f748ba0a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a497826b56402b16000d213446576776848d93949494949494949494949494949494928c8274655543311e0a00000b1c2b3a48545d646868686868686868686868686868686867635c52463829190800000d22374c62778da3917b66503b2611000d22374c62778da3917b66503b2611000000000000001c31465b6f828879685b6d7d887d6a55402b1600000000000000000000001f34495e72858876655e6f82887a67523d2813000005111a1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1e1a140d030000000000000005111a1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1e1a140d0300000000000000000000000a12191d1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1e1a140d030000000000000005111a1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1b140900000000000000010b131a1e1f1f1f1f1f1f1f1f1f1f1e19110500001a2e41515d5f5f5f5f584836230e000000000000000000000000081c3043535e5f5f5f5e5545331f0b0000000005162533414c555c5f5f5f564634200c00000000000000000000000000000000001f344a5f748ba0947d68533e29130000000000000000000000000d22374c62778da39079644f3a250f001f344a5f748ba0988f8f8f8f8f8f8f8f8f8f8f8f8f8f8f8f8f8f8f8f8f8f8f8f826b56402b16000416283949586671797c7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7c776f645647372614010000000d1c2a37414a5053535353535353535353535353535353524f484035281a0b0000000d22374c62778da3917b66503b2611000d22374c62778da3917b66503b261100000000000000182c4052647689867467798b8472604d3a261200000000000000000000001b2f435567798c83716a7b8d826f5d4b382410000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000011233341494a4a4a4a453a2b19070000000000000000000000000114253542494a4a4a49433727160300000000000716232f3941474a4a4a443828170400000000000000000000000000000000001f344a5f748ba0947d68533e29130000000000000000000000000d22374c62778da39079644f3a250f001f344a5f748ba0937c7878787878787878787878787878787878787878787878786a55402b1600000b1c2b3a48545d646868686868686868686868686868686867635c52463829190800000000000c19252e363b3d3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3d3a342d23170a000000000d22374c62778da3917b66503b2611000d22374c62778da3917b66503b26110000000000000010233547596b7d908273858c79675442301e0b00000000000000000000001325384a5c6e82907d7688897664523f2d1b08000000000000000000030b0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0c050000000000000000000000000000000000000000000000000b121616161616120b08111516161616140d04000000000009111516161616130d030d13161616161616161616161616161616161615120d06000000000000000000000000000000000002080d10111111111111111111111111111111111111111111110e08000000000000040c10111111111111110e0700000000000515232e343434343431281c0d00000000000000000000000000000817252f34343434343026190a0000000000000005121d262d3234343430271a0b0000000000000000000000000000000000001f344a5f748ba0947d68533e29130000000000000000000000000d22374c62778da39079644f3a250f001f344a5f748ba0937c6763636363636363636363636363636363636363636363635c4d3a26120000000d1c2a37414a5053535353535353535353535353535353524f484035281a0b0000000000000007121b21262829292930323232323029292929292928252019100600000000000d22374c62778da3917b66503b2611000d22374c62778da1917b66503b26110000000000000006182a3c4e6072858d8091806e5c4a372513010000000000000000000000081b2d3f516375888a82907d6b59473522100000000000000000000a161f242525252525252525252525252525252525252525252525252525252525252421180d00000000000000000000000000000000000000000002111e262b2b2b2b2b271e1b252a2b2b2b2b282115070000000f1b252a2b2b2b2b28201520282b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b27211a100500000000000000000000000000010c151d222526262626262626262626262626262626262626262626231b10030000000b17202526262626262626221a0f010000000005111a1f1f1f1f1f1c150b0000000000000000000000000000000007121b1f1f1f1f1f1b1409000000000000000000000a12191d1f1f1f1c1409000000000000000000000000000000000000001f344a5f748ba0947d68533e29130000000000000000000000000d22374c62778da39079644f3a250f001f344a5f748ba0937c67524e4e4e4e4e4e4e4e4e4e4e4e4e4e4e4e4e4e4e4e4e4e4a3e2f1e0b000000000c19252e363b3d3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3d3a342d23170a00000000000000000000070d11131c2d3b4447474747443b2d1c13131313100c05000000000000000d22374c62778da1917b66503b2611000d22374c62778c8c8c7b66503b261100000000000000000d1f314355677a8b8b887563513e2c1a08000000000000000000000000000f223446586a7c8b8b8572604e3c291705000000000000000009192733393a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a352b1d0d000000000000000000000000000000000000000010202f3a40404040403b302c383f404040403d33251503000c1d2d393f404040403c3224323c4040404040404040404040404040404040403c362d221609000000000000000000000006131f2831373a3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b372e21110000091a28343a3b3b3b3b3b3b3b362c1f0f0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001f344a5f748ba0947d68533e29130000000000000000000000000d22374c62778da39079644f3a250f001f344a5f748ba0937c67523c383838383838383838383838383838383838383838362d201100000000000007121b212628292929292d32323232312c29292929282520191006000000000000000000000000000013273a4b585c5c5c5c584b3a2713000000000000000000000000000d22374c62778c8c8c7b66503b2611000c21364b607276767675644f3a25100000000000000000021426384a5c6e7474746a584633210f00000000000000000000000000000517293b4d5f70747474675543311e0c000000000000000000142637454e4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f483b2b1805000000000000000000000000000000000000061a2d3e4d55565656554e3f3a4a5456565656504333200d00172a3b4a5456565656504232425056565656565656565656565656565656565450494034271809000000000000000000061523303b454b4f505050505050505050505050505050505050505050504b3f2f1d0900142738464f505050505050504a3d2c1a0700000000000000000000000000000000010a1012121212120f0900000000000000000000000000000000000000000000000b151b1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1d1a160f07000000000000001f344a5f748ba0947d68533e29130000000000000000000000000d22374c62778da39079644f3a250f001f344a5f748ba0937c67523c272323232323232323232323232323232323232323211a10020000000000000000070d111313142635414747474746403324131313100c0500000000000000000000000000000000182d415669727272726956412d18040000000000000000000000000c21364b607276767675644f3a251000081d3144545f60606060574734210c000000000000000000091b2d3f505c5f5f5f5a4c3a2816040000000000000000000000000000000c1e3042525d5f5f5f5849382514010000000000000000001b3043556264646464646464646464646464646464646464646464646464646464646464594835210c0000000000000000000000000000000000000c21364a5c6a6b6b6b6a5d4b4558676b6b6b6b61503c2713001d324659686b6b6b6b604e3b4e606b6b6b6b6b6b6b6b6b6b6b6b6b6b6b6b6b6a655c5244362716050000000000000003142433414e586064666666666666666666666666666666666666666666665d4c392510001c30445663666666666666655b4a36220e00000000000000000000000000000005131e252727272727241d110400000000000000000000000000000000000000000d1c283033333333333333333333333333333333322f2a23190e0200000000001f344a5f748ba0947d68533e29130000000000000000000000000d22374c62778da39079644f3a250f001f344a5f748ba0937c67523c271b1b1b1b1b1b1b1b1b1b1b1b1b1b1b1a150e0e0e0c0600000000000000000000000000000a1e3144535c5c5c5c5b51412f1b070000000000000000000000000000000000000000182e43586d82888885705b46321d08000000000000000000000000081d3144545f60606060574734210c0004142636434a4b4b4b4b4539291805000000000000000000001022323f484a4a4a463c2e1d0b000000000000000000000000000000000113253441494a4a4a453b2c1a08000000000000000000001f34495e7379797979797979797979797979797979797979797979797979797979797977644f3a240f0000000000000000000000000000000000000e23384e637882828279644f485e73828282806a543f2a15001f344a5f748282827d68533e53687d8282828282828282828282828282828280796f625444342210000000000000000f213242515f6b74797b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7a68533e2813001f344a5f737b7b7b7b7b7b7965503b2611000000000000000000000000000003142330393c3c3c3c3c392f221201000000000000000000000000000000000000071a2b39444848484848484848484848484848484847443e362c1f1203000000001f344a5f748ba0947d68533e29130000000000000000000000000d22374c62778da39079644f3a250f001f344a5f748ba0937c67523c303030303030303030303030303030302f291e1101000000000000000000000000000000001024384d61707272726f5f4a36210c0000000000000000000000000000000000000000152a3f53687c929d8a75604b37220e00000000000000000000000001142636434a4b4b4b4b4539291805001022323e46474747474237281b0b00000000000000000000000414222d33343434322a1e100000000000000000000000000000000000000716242e3434343431291d0e00000000000000000000001f344a5f748b909090909090909090909090909090909090909090909090909090909079644f3a250f0000000000000000000000000000000000000e23384e63788f979079644f485e73899795806a543f2a15001f344a5f748b97947d68533e53687d94979797979797979797979797979797948c827262513f2d1a06000000000005182b3e5060707d888f9191919191919191919191919191919191919191917d68533e2913001f344a5f748b91919191917b66503b261100000000000000000000000000000e2032414d52525252524c40301e0b0000000000000000000000000000000000000f233749575e5e5e5e5e5e5e5e5e5e5e5e5e5e5e5e5c5952493d302112010000001f344a5f748ba0947d68533e29130000000000000000000000000d22374c62778da39079644f3a250f001f344a5f748ba0937c67524646464646464646464646464646464646443c2f1f0d0000000000000000000000000000000015293e53677b88888876614c37220d00000000000000000000000000000000000000001025394e63778ca18f7965513c27130000000000000000000000000008192a384347474747453c2f1e0c00192d3f505b5c5c5c5c554634210d0000000000000000000000000410191e1f1f1f1d170d000000000000000000000000000000000000000006121a1f1f1f1f1d160c0000000000000000000000001f344a5f748ba0a5a4a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a39079644f3a250f0000000000000000000000000000000000000e23384e63788fa49079644f485e73899f95806a543f2a15001f344a5f748ba0947d68533e53687d949d9d9d9d9d9d9d9d9d9d9d9d9d9d9da19f91826f5c4935210d00000000000d2135485b6d7d8e9ba3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3947d68533e2913001f344a5f748ba0a7a3a3917b66503b26110000000000000000000000000005182a3d4f5f67676767675e4d3b281603000000000000000000000000000000000014293e536673737373737373737373737373737373726d665b4e3f301f0d0000001f344a5f748ba0947d68533e29130000000000000000000000000d22374c62778da39079644f3a250f001f344a5f748ba0937c675b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b584d3c2a16020000000000000000000000000000051a2e43586c82969a86715c48331e0a00000000000000000000000000000000000000000b2034495d72879c94806a56412c180300000000000000000000000010243748565c5c5c5c594d3c2915001e33485c6e7272727163503c2712000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001f344a5f748ba0a0908d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d79644f3a250f0000000000000000000000000000000000000e23384e63788fa49079644f485e73899f95806a543f2a15001f344a5f748ba0947d68533e53687d888888888888888888888888888888888d9a9e8c7865503c2712000000000012273c5064778b9d9e928d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d7d68533e2913001f344a5f748ba0988d8d8d7b66503b261100000000000000000000000000102235475a6c7c7c7c7c7c6a584533200d0000000000000000000000000000000000152a3f546a808989898989898989898989898989898782786c5d4e3d2b180500001f344a5f748ba0947d68533e29130000000000000000000000000d22374c62778da39079644f3a250f001f344a5f748ba0937c707070707070707070707070707070707070706b5945301b0600000000000000000000000000000a1f34485d71879b96826c57422e19050000000000000000000000000000000000000000061b2f44586d829799846f5b46311d08000000000000000000000000152a3f5366727272726b58442f1a001f34495e738888887d6a55402c1703000000000000000000000811171c1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1b1610070000000000000000000000020c131616161615110a000000000000001f344a5f748ba09e8b7d7777777777777777777777777777777777777777777777777775634e39240f0000000000000000000000000000000000000e23384e63788fa49079644f485e73899f95806a543f2a15001f344a5f748ba0947d68533e516471727272727272727272727272727272727b8da1947d69543f2a150000000000162b40556a8094a28f807777777777777777777777777777777777777777777767523d2813001f344a5f748ba0947d77777664503b2510000000000000000000000000071a2c3f5164778a9393938875624f3d2a180500000000000000000000000000000000152a3f546a80959f9f9f9f9f9f9f9f9f9f9f9f9f9e9c968a7b6b5a4734210e00001f344a5f748ba0947d68533e29131212121212121212121212121222374c62778da39079644f3a250f001f344a5f748ba0948787878787878787878787878787878787878787725c47321d0700000000000000000000000000001024394d62778ca0907b67523e291400000000000000000000000000000000000000000000152a3f53687c8b8b8974604b36200b0000000000000000000000061b2f44586d82888885705b46301b001b3044596d839799846f5a46311c08000000000000000004111b252c313333333333333333333333333333333333302b231a0f030000000000000000051420282b2b2b2b2b261c0f0000000000001f344a5f748592a09b8d8071646262626262626262626262626262626262626262626261574734200b0000000000000000000000000000000000000e23384e63788fa49079644f485e73899f95806a543f2a15001f344a5f748ba0947d68533e47555c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5d72889d97826b56402b160000000a12172c42576c83989d8872626262626262626262626262626262626262626262625a4a37240f001f344a5f748ba0947d686261584835210d000000000000000000000000112437495c6e8294a6a0a592806c5a4734220f00000000000000000000000000000000152a3f546a8095979797979797979797979797979799a29a8a7764513d281400001f344a5f748ba0947d68533e29272727272727272727272727272727374c62778da39079644f3a250f001f344a5f748ba0a29c9c9c9c9c9c9c9c9c9c9c9c9c9c9c9c9c9c9c88725c47321d07000000000000000000000000000015293e53677c91a08b76624d38240f000000000000000000000000000000000000000000001025394e6273747474705e4a35200b00000000000000000000000b2034495d72879c95806b56412d1800162b3f54687d929e89745f4b36210d000000000000000615222e3840464848484848484848484848484848484848453f372c201304000000000000011323323c4040404040392d1e0d00000000001c314558667482909e9e90827466594c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c46392917040000000000000002080c0e0e0e0e0e0e0e0e0e23384e63788fa49079644f485e73899f95806a543f2a15001f344a5f748ba0947d68533e3842474747474747474747474747474747475c72889d97826b56402b160000101d262c2c42576c83989d88725c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c473c2c1b08001f344a5f748ba0947d68534c463a2a18050000000000000000000000091b2e415366798c9e978b989c8a7664513f2c1a07000000000000000000000000000000152a3f546a808282828282828282828282828282828592a294806b57422d1800001f344a5f748ba0947d68533e3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c4c62778da39079644f3a250f001f344a5f748ba09f9898989898989898989898989898989898989888725c47321d070000000000000000000000000000182d43586c828b8b87715d48331f0a000000000000000000000000000000000000000000000b1f3345555e5f5f5f5d52422f1b0700000000000000000000001025394e63778ca18f7a66513d28130011253a4f63788da28e7964503b261200000000000005152432404b545a5e5e5e5e5e5e5e5e5e5e5e5e5e5e5e5e5d5a534a3e3122120200000000000a1e30414f56565656544b3c2b18040000000015283a49566471808e9ba0928576695b4e4037373737373737373737373737373737373732281b0b000000000000040e161d2123232323232323232323384e63788fa49079644f485e73899f95806a543f2a15001f344a5f748ba0947d68533e292e323232323232323232323232323232475c72889d97826b56402b16000d1e2e3a414242576c83989d88725c474242424242424242424242424242423f37373737332b1e0e00001f344a5f748ba0947d68533e33291c0c0000000000000000000000011326394b5e7083969f8c7a8ea094826e5c4937241100000000000000000000000000000013273c50616b6b6b6b6b6b6b6b6b6b6b6b6b6b6b6b73869a9a866f5a45301b00001f344a5f748ba0947d68535252525252525252525252525252525252525262778da39079644f3a250f001f344a5f748ba0938383838383838383838383838383838383838383725c47321d070000000000000000000000000000182d42576a747474746b58432e1a05000000000000000000000000000000000000000000000316273743494a4a4a4941342412000000000000000000000000152a3f53687c929f8a75614c38230e000c20354a5e73889c937d6955402c1700000000000011223342515d676f73737373737373737373737373737373726e665c4f4030200e00000000001025394d5f6b6b6b6b695a47331e09000000000b1c2b384654616f7d8b99a29587796c5e504235272222222222222222222222222222221e160b0000000000000916212a313638383838383838383838384e63788fa49079644f485e73899f95806a543f2a15001f344a5f748ba0947d68533e291a1d1d1d1d1d1d1d1d1d1d1d1d1d1d32475c72889d97826b56402b1600172a3c4c555757576c83989d88725c5757575757575757575757575757575753473724221f180d0000001f344a5f748ba0947d68533e29170c0000000000000000000000000b1e304355687a8da095827084969e8c796653412e1b0900000000000000000000000000000d20334350565656565656565656565656565656576c83989c87705b46301b00001f344a5f74899f94806c676767676767676767676767676767676767676769798fa38f79644f3a250f001f344a5f748ba0937c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6857442f1b06000000000000000000000000000014283b4d5a5f5f5f5f5a4d3b28140000000000000000000000000000000000000000000000000a19263034343434342e2416060000000000000000000000001b2f44586d82979a86705c47321e0900071b3044596d838b8b846f5a45301b0000000000091c2e4051616f7a84888989898989898989898989898989898883796d5e4e3d2c19060000000012273c52677c82828276604b36210b00000000000d1b283643515f6d7a8896a3988a7c6e615345372a1c0e0d0d0d0d0d0d0d0d0d0d0d0c09030000000000000a1927333d464b4e4e4e4e4e4e4e4e4e4e4e4e63788fa49079644f4e5e73899f95806a543f2a15001f344a5f748ba0947d68533e2913161616161616161616161616161d32475c72889d97826b56402b16001d32465a696c6c6c6c83989d88726c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6554402c170a04000000001f344a5f748ba0947d68533e29130000000000000000000000000215283a4d607285989e8b7766798c9f9683705e4b392613010000000000000000000000000a16212b333d404040404040404040404040404042576c83989c87705b46301b00001d32475c7086999c8b7d7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c87979f8b76614d38230e001f344a5f748ba0937c67575757575757575757575757575757575757554a3a28150100000000000000000000000000000b1e2f3d474a4a4a4a473d2f1e0c0000000000000000000000000000000000000000000000000009141b1f1f1f1f1f1a1206000000000000000000000000001f34495e72888b8b806b57422d19040000162b3f5467747474746d5945301b00000000001125394c5d6f808d989d9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9d968b7c6c5b4936220f0000000012273c52677c93978c76604b36210b0000000000000a182633414f5c6a778693a19a8d80706355483a2c1f11030000000000000000000000000000000000091928374550596063636363636363636363636363788fa490796463636373899f95806a543f2a15001f344a5f748ba0947d68533e29282b2b2b2b2b2b2b2b2b2b2b2b2b2b32475c72889d97826b56402b16001f344a5f748383838384989e898383838383838383838383838383838383836e58432e190300000000001f344a5f748ba0947d68533e29130000000000000000000000000d203245576a7c90a293826d5c6f8295a08d7a685543301e0b00000000000000000000000b1a27343e464c4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f576c83989c87705b46301b0000192d4256697c8f9f9b9393939393939393939393939393939393939393939399a393826f5b47331e0a001f344a5f748ba0937c6752424242424242424242424242424242424240382c1c0b00000000000000000000000000000000111f2b3234343434322b1f1100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001f34495d707474747466523d28140000001125384a585f5f5f5f5c4f3d2a160000000000182c4055687b8d9d9f9795959595959595959595959595959597a19b8a7865523e29150000000012273c52677c93a18c76604b36210b00000000000000081523313e4c5a677583919e9d8f827366584a3d2f211406000000000000000000000000000000021526374655626d7478787878787878787878787878788fa490797878787878899f95806a543f2a15001f344a5f748ba0947d68533e323c404040404040404040404040404040475c72889d97826b56402b16001f344a5f748b98989898a2a69a9898989898989898989898989898989898846e58432e190300000000001f344a5f748ba0947d68533e2913000000000000000000000005172a3c4f6174879a9c8976635265778a9e988572604d3a2815030000000000000000000919293845515a61646464646464646464646464646464646c83989c87705b46301b000013273a4d5f70828f9aa0a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1a09c92857564523f2c1804001f344a5f748ba0937c67523c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2b251b0e0000000000000000000000000000000000010e181e1f1f1f1f1e180e01000000000000000000000000000000000000000911181c1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1b160f070000000000001a2e41515d5f5f5f5f584836230e000000081b2c3b454a4a4a4a483e31200e00000000001d32465b7084989e8e828080808080808080808080808080808490a295826d58432e190000000012273c52677c93a18c76604b36210b00000000000000000513202e3c49576472808f9c9f918476685b4d3f3224160900000000000000000000000000000c1f324455647380898d8f8f8f8f8f8f8f8f8f8f8f8f8f95a7968f8f8f8f8f8f92a295806a543f2a15001f344a5f748ba0947d68533e4250565656565656565656565656565656565c72889d97826b56402b16001f344a5f748b9c9c9c9ca5a99d9c9c9c9c9c9c9c9c9c9c9c9c9c9c9c9c99846e58432e190300000000001f344a5f748ba0947d68533e291300000000000000000000000f213447596c7d92a492806c59485a6d8093a2907c6a574532200d0000000000000000021426374756636d75797979797979797979797979797979797983989c87705b46301b00000a1d30425362717d868b8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c88807466574735231000001f344a5f748ba0937c67523c271717171717171717171717171717171612121212100a0100000000000000000000000000000000000000000000000000000000000000000000000000000000000005111c252c313333333333333333333333333333333333302b231a0e020000000011233341494a4a4a4a453a2b1907000000000e1d293134343434332c21130200000000001f344a5f73899e96826f6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a72869a9b86705b46301b0000000012273c52677c93a18c76604b36210b00000000000000000002101e2c39475462707d8c99a29487786b5d50423426190b0000000000000000000000000014283b4e617383929da3a4a4a4a4a4a4a4a4a4a4a4a4a4a7b3a8a4a4a4a4a4a4a5ab95806a543f2a15001f344a5f748ba0947d68533e4e606b6b6b6b6b6b6b6b6b6b6b6b6b6b6b6b6c778a9f95806a55402b16001f344a5f748787878788999e8b8787878787878787878787878787878787846e58432e190300000000001f344a5f748ba0947d68533e29130000000000000000000006192c3e516376899c9a8875614f3e516376899c9a8874614f3d2a1705000000000000000c1f3244556573828a8f90909090909090909090909090909090909d9c87705b46301b0000011324354453606a7175767676767676767676767676767676767676767676736d6357483929170600001f344a5f748ba0937c67523c272727272727272727272727272727272727272727251e1305000000000000000002080c0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0b07010000000000000000000615232e3940464848484848484848484848484848484848453f362c2012040000000515232e343434343431281c0d0000000000000c161d1f1f1f1f1e190f030000000000001f344a5f748ba0947d685454545454545454545454545454576c83989c87705b46301b0000000012273c52677c93a18c76604b36210b00000000000000000000000e1b29374452606d7b8997a497897b6e60524437291b0e0000000000000000000000001a2f43576b7d91a19a929090909090909090909090909096a89790909090909093a395806a543f2a15001f344a5f748ba0947d68533e53687d828282828282828282828282828282828895a18e7a66513d2813001e33485c6d7070707083989d887270707070707070707070707070707070706855412c170200000000001f344a5f748ba0947d68533e291300000000000000000000112336495b6e8293a3907d6a58453446596c7d92a492806c594734220f0000000000000014283b4e617384929ea4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a5a5ad9c87705b46301b00000006172635424e575d606060606060606060606060606060606060606060605e585045392a1b0b0000001f344a5f748ba0937c67523c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c39302314020000000000030d161c212323232323232323232323232323232323201c150c0200000000000005152433404c545a5e5e5e5e5e5e5e5e5e5e5e5e5e5e5e5e5d5952493d3022120100000005111a1f1f1f1f1f1c150b0000000000000000000000000000000000000000000000001f344a5f748ba0947d68533f3f3f3f3f3f3f3f3f3f3f3f42576c83989c87705b46301b0000000012273c52677c93a18c76604b36210b0000000000000000000000000b192634424f5d6b788694a2998c7d70625547392c1e1003000000000000000000001e33485d72879b9b8a7c797979797979797979797979798fa490797979797979899f95806a543f2a15001f344a5f748ba0947d68533e53687d949797979797979797979797979797979ba59584715e4b37230e00192c3e4f595b5b5b6c83989d88725c5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b574a3926120000000000001f344a5f748ba0947d68533e2913000000000000000000081b2e405365788b9e998673604d3b2a3c4f6174889a9c897664513e2c19070000000000001a2e43576b7d91a199908f8f8f8f8f8f8f8f8f8f8f8f8f8f8f919caa9c87705b46301b00000000081725303b43484b4b4b4b4b4b4b4b4b4b4b4b4b4b4b4b4b4b4b4b4b4b49443d34281b0c000000001f344a5f748ba0937c6752525252525252525252525252525252525252525252524d4132200c000000000915202a313638383838383838383838383838383838383530281f1307000000000012233342515e686f73737373737373737373737373737373726e665b4e40301f0d00000000000000000000000000000000000000000000000000000000000000000000000000001f344a5f748ba0947d68533e2a2a2a2a2a2a2a2a2a2a2c42576c83989c87705b46301b0000000012273c52677c93a18c76604b36210b00000000000000000000000000081624313f4d5a687584919f9c8f807265574a3c2e2113050000000000000000001f344a5f748ba094806b646464646464646464646464788fa490796464646473899f95806a543f2a15001f344a5f748ba0947d68533e53687d9393939393939393939393939393939397a293806e5b4834200c00192d3f505b5c5c5c6c83989d88725c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c584b3a27130000000000001f344a5f748ba0947d68533e29130000000000000000001325384a5d708395a18f7b69564331203245576a7d90a293826e5b493624110000000000001e33485d71869b9b897b7878787878787878787878787878787d8d9f9c87705b46301b000000000007131e272e3336363636363636384347474747453d3636363636363634302921160a00000000001f344a5f748ba0937c6767676767676767676767676767676767676767676767675f4f3c28130000000a1926323d454b4e4e4e4e4e4e4e4e4e4e4e4e4e4e4e4e4d4a443b312516070000000a1d2f4151616f7b84888989898989898989898989898989898882786c5e4e3d2b1805000000040c101111111111111111111111111111111111111111110e0a04000000000000001f344a5f748ba0947d68533e291515151515151515172c42576c83989c87705b46301b0000000012273c52677c93a18c76604b36210b00000000000000000000000000000613212f3d4a586573828f9d9e918375675a4c3f3123150800000000000000001f344a5f748ba0947d68534f4f4f4f4f4f4f4f4f4f63788fa49079644f4f5e73899f95806a543f2a15001f344a5f748ba0947d68533e53687c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7d85939e8b77634f3b2612001e33485c6e7272727283989d887272727272727272727272727272727272726956412d180300000000001f344a5f748ba0947d68533e291300000000000000000a1d304255677a8d9f9785715f4c392715283b4d607386989e8b786653402e1b0900000000001f344a5f748a9f94806b6363636363636363636363636363636f84999c87705b46301b000000000000010b141a1e2121212121233648565c5c5c5c5a4e3d2a21212121211f1b150e040000000000001f344a5f748ba0937c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c6b56402b160000081828374450595f63636363636363636363636363636363635f584e423425160500001226394c5e6f808d989d9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9c968a7c6c5a4835220e00000b172025262626262626262626262626262626262626262626231e170e0400000000001f344a5f748ba0947d68533e291300000000000000172c42576c83989c87705b46301b0000000012273c52677c93a18c76604b36210b00000000000000000000000000000003111f2c3a485563707d8d9aa19386786a5d4f413326180a000000000000001f344a5f748ba0947d68533e3a3a3a3a3a3a3a3a4e63788fa49079644f485e73899f95806a543f2a15001f344a5f748ba0947d68533e4d5e6767676767676767676767676767676768758a9e937d69543f2a15001f344a5f7488888888899a9f8c8888888888888888888888888888888888846e58432e190300000000001f344a5f748ba0947d68533e2913000000000000000215273a4c5f7285979f8d7a6754422f1c0b1e304356687b8ea19583705d4b38261300000000001f344a5f748ba0947d68534e4e4e4e4e4e4e4e4e4e4e4e4e576c83989c87705b46301b00000000000000000005090b0b0b0b152a3e5266727272726c5a45311c0b0b0b0b0a070000000000000000001f344a5f748ba09b939393939393939393939393939393939393939393939393826b56402b1600021425364654626c747878787878787878787878787878787877736b6052433423110000192d4155697c8e9e9e9795959595959595959595959595959598a19a8a7764513d291400091a28343a3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b38332b211609000000001f344a5f748ba0947d68533e291300000000000000172c42576c83989c87705b46301b0000000012273c52677c93a18c76604b36210b00000000000000000000000000000000010e1c2a374552606e7c8a97a496897a6d5f514436281b0d0000000000001f344a5f748ba0947d68533e29252525252525384e63788fa49079644f485e73899f95806a543f2a15001f344a5f748ba0947d68533e404c525252525252525252525252525252525c72889d97826b56402b16001f344a5f748b9d9d9d9ea6aa9f9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d99846e58432e190300000000001f344a5f748ba0947d68533e2913000000000000000c1f314457697c8fa295836f5d4a372512011426394c5e718497a08d7a675542301d0b000000001f344a5f748ba0947d68533e383838383838383838383842576c83989c87705b46301b0000000000000000000000000000061a2f43586d82888886705c47311c0700000000000000000000000000001f344a5f748ba0a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1a197826b56402b16000b1e314354647280898d8f8f8f8f8f8f8f8f8f8f8f8f8f8f8f8d887d706152402e1b08001d32475c7085999e8e828080808080808080808080808080808491a295806c57422e1900142738464f5050505050505050505050505050505050505050504d473e332718090000001f344a5f748ba0947d68533e291300000000000000172c42576c83989c87705b46301b0000000012273c52677c93a18c76604b36210b0000000000000000000000000000000000000c19273542505e6b798795a2998b7d6f615446392b1d1002000000001f344a5f748ba0947d68533e29130f0f0f0f23384e63788fa49079644f485e73899f95806a543f2a15001f344a5f748ba0947d68533e2f393c3c3c3c3c3c3c3c3c3c3c3c3c3c3c475c72889d97826b56402b16001f344a5f748b98989898a2a69a9898989898989898989898989898989898846e58432e190300000000001f344a5f748ba0947d68533e29130000000000000417293c4e617386999e8b786553402d1b08000a1c2f415467798d9f9885725f4d3a2815020000001f344a5f748ba0947d68533e292323232323232323232c42576c83989c87705b46301b00000000000000000000000000000b1f34495d72879b95806b57422d190400000000000000000000000000001f344a5f748b8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c826b56402b160013273b4e607283919ca3a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a29b8f806f5e4b382410001f344a5f748a9f95826f6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a72869a9a86705b46301b001c30445663666666666666666666666666666666666666666665615a50443627180700001f344a5f748ba0947d68533e291300000000000000172c42576c83989c87705b46301b0000000012273c52677c93a18c76604b36210b0000000000000000000000000000000000000009172432404d5b69768592a09b8e80726456493b2e2012040000001f344a5f748ba0947d68533e29130000000e23384e63788fa49079644f485e73899f95806a543f2a15001f344a5f748ba0947d68533e2924272727272727272727272727272732475c72889d97826b56402b16001f344a5f748383838384989e898383838383838383838383838383838383836e58432e190300000000001f344a5f748ba0947d68533e29130000000000000e213346596b7d91a394826e5b493623110000001225374a5d6f8295a28f7c6a5744321f0d0000001f344a5f748ba0947d68533e29130e0e0e0e0e0e0e172c42576c83989c87705b46301b00000000000000000000000000001025394e62778ca1907b66523d28140000000000000000000000000000001f34495d70767676767676767676767676767676767676767676767676767676766954402b15001a2e42566a7d90a09a92909090909090909090909090909090929d9e8d7a67533f2b16001f344a5f748ba0947d685454545454545454545454545454576c83989c87705b46301b001f344a5f737b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b79766d62544536241300001f344a5f748ba0947d68533e291300000000000000172c42576c83989c87705b46301b0000000012273c52677c93a18c76604b36210b000000000000070e1313131313131313131313131314222f3d4b596673828f9e9e90827467594c3e3022140500001f344a5f748ba0947d68533e29151515151523384e63788fa49079644f485e73899f95806a543f2a15001f344a5f748ba0947d68533e2915151515151515151515151515151d32475c72889d97826b56402b16001d32465a696c6c6c6c83989d88726c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6554402c17120c020000001f344a5f748ba0947d68533e2913010000000006182b3e506375899b9c897664513e2c1906000000081b2d405365778b9e998774614e3c2a170400001f344a5f748ba0947d68533e291300000000000000172c42576c83989c87705b46301b0000000000000000000000000000152a3e53687c91a08b76614c38230f0000000000000000000000000000001a2e41525e606060606060606060606060606060606060606060606060606060605a4b392611001d32475c71869a9c8a7c797979797979797979797979797979808d9f97836e59442f1a001f344a5f748ba0947d68533f3f3f3f3f3f3f3f3f3f3f3f42576c83989c87705b46301b001f344a5f748b91919191919191919191919191919191919191908a8072635342301d0a001f344a5f748ba0947d68533e291300000000000000172c42576c83989c87705b46301b0000000012273c52677c93a18c76604b36210b00000000000d1923282929292929292929292929292929292d3b48566371808d9ba0938577695c4e4032231200001f344a5f748ba0947d68533e2a2a2a2a2a2a2a384e63788fa49079644f485e73899f95806a543f2a15001f344a5f748ba0947d68533e2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a32475c72889d97826b56402b1600172a3c4c555757576c83989d88725c575757575757575757575757575757575347372a2a271f140500001f344a5f748ba0947d68533e291e1204000000102335485a6d8093a592806c5a4734220f0000000000102336485b6d8293a4917d6c594634210f00001f344a5f748ba0947d68533e291300000000000000172c42576c83989c87705b46301b00000000000000000000000000061a2f43586d82969a86715c48331e09000000000000000000000000000000122434424a4b4b4b4b4b4b4b4b4b4b4b4b4b4b4b4b4b4b4b4b4b4b4b4b4b4b4b4b473c2d1c0a001f344a5f748a9f95806c6464646464646464646464646464646f84999c87705b46301b001f344a5f748ba0947d68533e2a2a2a2a2a2a2a2a2a2a2c42576c83989c87705b46301b001f344a5f748ba0a7a7a4a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a49d9182715f4c392511001f344a5f748ba0947d68533e29130a0a0a0a0a0a0a172c42576c83989c87705b46301b0000000012273c52677c93a18c76604b36210b000000000b1c2b363d3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e4653616f7c8b98a39588796c5e5141301c09001f344a5f748ba0947d68533f3f3f3f3f3f3f3f3f4e63788fa49079644f485e73899f95806a543f2a15001f344a5f748ba0947d68533f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f475c72889d97826b56402b16000d1e2e3a414242576c83989d88725c474242424242424242424242424242423f3f3f3f3f3b31231302001f344a5f748ba0947d68533f3a3022110000081a2d405264778a9d9b8875624f3d2a1705000000000006192b3e516376899c9b897663513e2b1906001f344a5f748ba0947d68533e291300000000000000172c42576c83989c87705b46301b000000000000000000000000000a1f34495d72878b8b826c57422e19050000000000000000000000000000000616242f35363636363636363636363e4647474747423736363636363636363636332b1e0f00001f344a5f748ba0947d68534f4f4f4f4f4f4f4f4f4f4f4f4f576c83989c87705b46301b001f344a5f748ba0947d68533e291515151515151515172c42576c83989c87705b46301b001f344a5f748ba0a7988f8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8f9aa08f7c6854402c17001f344a5f748ba0947d68533e291f1f1f1f1f1f1f1f1f2c42576c83989c87705b46301b0000000012273c52677c93a18c76604b36210b0000000015283a48525353535353535353535353535353535353535353535e6c7a8895a3988a7c6f5f4c38230e001f344a5f748ba0947d68545454545454545454545463788fa490796454545e73899f95806a543f2a15001f344a5f748ba0947d6854545454545454545454545454545454545454545c72889d97826b56402b160000101d262c2c42576c83989d88725c5454545454545454545454545454545454545454544e42311e0b001f344a5f748ba0947d6854544d402f1c08001225374a5c6f8295a3907d6a584533200d000000000000000f213447596c8092a593806d5b49362311001f344a5f748ba0947d68533e291300000000000000172c42576c83989c87705b46301b00000000000000000000000000091f34495d707474747466523d2914000000000000000000000000000000000006121b2021212121212121212d3f505b5c5c5c5c5546342121212121212121211e180d0000001f344a5f748ba0947d68533e3a3a3a3a3a3a3a3a3a3a3a42576c83989c87705b46301b001f344a5f748ba0947d68533e291300000000000000172c42576c83989c87705b46301b001f344a5f748ba09b897a7777777777777777777777777777777c8b9d98846f5a45301b001f344a5f748ba0947d68533e343434343434343434343442576c83989c87705b46301b0000000012273c52677c93a18c76604b36210b000000001c31455866686868686868686868686868686868686868686868686869778593a19b8d79644f3a250f001f344a5f748a9f95826f6a6a6a6a6a6a6a6a6a6a6a6a788fa490796a6a6a6a73899f95806a543f2a15001f344a5f73899e9682706a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6b768a9f97826b56402b160000000a12172c42576c82979e8a766b6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a69604e3a2611001f344a5f748ba0947d6a6a695e4c38230e001a2e415467798c9f998673604e3b2816030000000000000005172a3d4f6275889a9e8b786553402d19001f344a5f748ba0947d68533e291300000000000000172c42576c83989c87705b46301b00000000000000000000000000061a2e41515d5f5f5f5f584836230f00000000000000000000000000000000000000070b0b0b0b0b0b0b0b1f34485c6e7272727163503b26110b0b0b0b0b0b0b0904000000001f344a5f748ba0947d68533e292525252525252525252c42576c83989c87705b46301b001f344a5f748ba0947d68533e291300000000000000172c42576c83989c87705b46301b001f344a5f748ba094806a6262626262626262626262626262626d83989c87705b46301b001f344a5f748ba0947d68534a4a4a4a4a4a4a4a4a4a4a4a4a576c83989c87705b46301b0000000012273c52677c93a18c76604b36210b000000001f344a5f747d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d8499a59079644f3a250f001e32475c7086999e8e82808080808080808080808080808fa490808080808080899f95806a543f2a15001d32465b7085999e8f828080808080808080808080808080808080808080808695a18f7a67533f2a150000000000152a3f53687c91a494868080808080808080808080808080808080808080807d68533e2913001f344a5f748ba0948080807b66503b2611001f34495d71848b8b8b7c695644311e0c0000000000000000000d203245586a7d8b8b8b836f5c47321d001f344a5f748ba0947d68533e291300000000000000172c42576c83989c87705b46301b000000000000000000000000000011233341494a4a4a4a453a2b19070000000000000000000000000000000000000000000000000000001024394d62778888887b66513c2712000000000000000000000000001f344a5f748ba0947d68533e29130f0f0f0f0f0f0f172c42576c83989c87705b46301b001f344a5f748ba0947d68533e291300000000000000172c42576c83989c87705b46301b001f344a5f748ba0947d68534c4c4c4c4c4c4c4c4c4c4c4c4c576c83989c87705b46301b001f344a5f748ba094806a5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f6e83989c87705b46301b0000000012273c52677c93a18c76604b36210b000000001f344a5f748b9494949494949494949494949494949494949494949494949495a1a59079644f3a250f00192d4256697c8f9e9e97959595959595959595959595959aaa9b95959595959598a695806a543f2a1500182d4155697c8e9e9f9795959595959595959595959595959595959595959599a39483715f4b38241000000000001125394e61758798a3999595959595959595959595959595959595959595947d68533e2913001f344a5f748ba09e9595917b66503b2611001f34495d7074747474705f4c3a2714020000000000000000000315283b4d6071747474746f5c47321d001f344a5f748ba0947d68533e291300000000000000172c42576c83989c87705b46301b00000000000000000000000000000515232e343434343431281c0d0000000000000000000000000000000000000000000000000000000015293e53677c919d8b76614c38230f000000000000000000000000001f344a5f748ba0947d68533e291300000000000000172c42576c83989c87705b46301b001f344a5f748ba0947d68533e291300000000000000172c42576c83989c87705b46301b001f344a5f748ba0947d68533e373737373737373737373742576c83989c87705b46301b001e33485d72879c9987787474747474747474747474747474747a8a9d99846f5a45301b0000000012273c52677c93a18c76604b36210b000000001f344a5f748ba0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a09079644f3a250f0013263a4d5f70808e999ea0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a095806a543f2a15001226394c5e70808f999fa0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a09c9285756554422f1c0800000000000a1e324557697989959c9fa0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0947d68533e2913001f344a5f748ba0a0a0a0917b66503b2611001a2e41515d5f5f5f5f5d52422f1d0a00000000000000000000000b1e3143535e5f5f5f5f5d513f2c19001f344a5f748ba0947d68533e291300000000000000172c42576c83989c87705b46301b00000000000000000000000000000005111a1f1f1f1f1f1c150b00000000000000000000000000000000000000000000000000000000061a2e43586c82969a86715c48331e09000000000000000000000000001f344a5f748ba0947d68533e291300000000000000172c42576c83989c87705b46301b001f344a5f748ba0947d68533e291300000000000000172c42576c83989c87705b46301b001f344a5f748ba0947d68533e292222222222222222222c42576c83989c87705b46301b001a2f44586c8093a4968d8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8e99a1907d6955412c180000000012273c52677c93a18c76604b36210b000000001f344a5f748b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b79644f3a250f000a1d30415261707c85898b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b806a543f2a15000a1d2f415261707c868a8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8880746657473625120000000000000215283a4b5b6a778288898b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b7d68533e2913001f344a5f748b8b8b8b8b8b7b66503b26110011233341494a4a4a4a49413424120000000000000000000000000114263542494a4a4a4a4840322210001f344a5f748ba0947d68533e291300000000000000172c42576c83989c87705b46301b0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000b1f34495d72879b95826c57422e1905000000000000000000000000001f344a5f748ba0947d68533e291300000000000000172c42576c83989c87705b46301b001f344a5f748ba0947d68533e291300000000000000172c42576c83989c87705b46301b001f344a5f748ba0947d68533e29130d0d0d0d0d0d0d172c42576c83989c87705b46301b0015293d5063758695a1a2a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a29f938472604d3a26120000000012273c52677c93a18c76604b36210b000000001f34495d7074747474747474747474747474747474747474747474747474747474747473624e39240f000012243443525e697073747474747474747474747474747474747474747474747474747467533e2914000012233443525f697074747474747474747474747474747474747474747474736c625648392a1907000000000000000b1d2d3d4c59646d727474747474747474747474747474747474747474747466523d2813001f34495d7074747474747473634f3a2510000515232e3434343434342e241606000000000000000000000000000817252f3434343434332d221404001f344a5f748ba0947d68533e291300000000000000172c42576c83989c87705b46301b000000000000000002080c0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0d09040000000000000000000000000000000000001025394e62778ca0907b66523d291400000000000000000000000000001f344a5f748ba0947d68533e291300000000000000172c42576c83989c87705b46301b001f344a5f748ba0947d68533e291300000000000000172c42576c83989c87705b46301b001f344a5f748ba0947d68533e291300000000000000172c42576c83989c87705b46301b000d213446576776848d93949494949494949494949494949494928c8274655543311e0a0000000012273c52677c939c8c76604b36210b000000001a2e41515d5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5e5545331f0b000006162534414c555b5e5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5849372410000006162534414d565c5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5e585045382a1b0c0000000000000000000f1f2e3c4851595d5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f584836230e001a2e41515d5f5f5f5f5f5f5f564634200c000005111a1f1f1f1f1f1f1a120600000000000000000000000000000007121b1f1f1f1f1f1e19110500001f344a5f748ba0947d68533e291300000000000000172c42576c83989c87705b46301b000000000000040e161d2123232323232323232323232323232323232323232323221e1810070000000000000000000000000000000013283d53687c8b8b8b76624d38240f00000000000000000000000000001f344a5f748ba0947d68533e291300000000000000172c42576c83989c87705b46301b001f344a5f748ba0947d68533e291300000000000000172c42576c83989c87705b46301b001f344a5f748ba0947d68533e291300000000000000172c42576c83989c87705b46301b000416283949586671797c7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7c776f645647372614010000000012273c52677c87878776604b36210b0000000011233341494a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4943372716030000000716232f394146494a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a453b2c1a08000000071624303a42474a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a49443d33271a0c0000000000000000000001101e2a353e44484a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a453a2b19070011233341494a4a4a4a4a4a4a4438281704000000000000000000000000000000000000000000000000000000000000000000000000000000000000001f344a5f748ba0947d68533e291300000000000000172c42576c83989c87705b46301b00000000000916212a31363838383838383838383838383838383838383838383837332c23190d00000000000000000000000000000013283d5266747474746f5c48331f0a00000000000000000000000000001f344a5f748ba0947d68533e291300000000000000172c42576c83989c87705b46301b001f344a5f748ba0947d68533e291300000000000000172c42576c83989c87705b46301b001f344a5f748ba0947d68533e291300000000000000172c42576c83989c87705b46301b00000b1c2b3a48545d646868686868686868686868686868686867635c524638291908000000000011263b4f63707070706d5d49341f0a000000000515232e34343434343434343434343434343434343434343434343434343434343434343026190a000000000006121d262d3234343434343434343434343434343434343434343434343434343431291d0e000000000006121d262d323434343434343434343434343434343434343434343434302920160a000000000000000000000000000d18222a30333434343434343434343434343434343434343434343431281c0d00000515232e343434343434343430271a0b000000000000000000000000000000050b0f11111111111111111111100c04000000000000000000000000001f344a5f748ba0947d68533e291300000000000000172c42576c83989c87705b46301b000000000a1927333d464b4e4e4e4e4e4e4e4e4e4e4e4e4e4e4e4e4e4e4e4e4e4e4c4740362a1d0f00000000000000000000000000000e233648585f5f5f5f5d513f2d190500000000000000000000000000001f344a5f748ba0947d68533e29130f0f0f0f0f0f0f172c42576c83989c87705b46301b001f344a5f748ba0947d68533e291300000000000000172c42576c83989c87705b46301b001f344a5f748ba0947d68533e291300000000000000172c42576c83989c87705b46301b0000000d1c2a37414a5053535353535353535353535353535353524f484035281a0b0000000000000c203345535b5b5b5b5a4f402d1a06000000000005111a1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1b140900000000000000000a12181d1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1d160c00000000000000000a13191d1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1b150d04000000000000000000000000000000050f161b1e1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1c150b0000000005111a1f1f1f1f1f1f1f1f1c140900000000000000000000000000000610191f24262626262626262626262520160a0000000000000000000000001f344a5f748ba0947d68533e291300000000000000172c42576c83989c87705b46301b000000081928374550596063636363636363636363636363636363636363636363615b53483b2d1d0d0000000000000000000000000007192b3a454a4a4a4a48403222100000000000000000000000000000001f344a5f748ba0947d68533e292525252525252525252c42576c83989c87705b46301b001f344a5f748ba0947d68533e291300000000000000172c42576c83989c87705b46301b001f344a5f748ba0947d68533e291300000000000000172c42576c83989c87705b46301b000000000c19252e363b3d3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3d3a342d23170a000000000000070e1627364146464646453e3122130e07000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000b18232d34393b3b3b3b3b3b3b3b3b3b3a3328190800000000000000000000001f344a5f748b8b8b7d68533e291300000000000000172c42576c838b8b87705b46301b0000021426374655626d7478787878787878787878787878787878787878787878766f66594b3b2b1907000000000000000000000000000d1c283134343434332d2214040000000000000000000000000000001f344a5f748ba0947d68533e3a3a3a3a3a3a3a3a3a3a3a42576c83989c87705b46301b001f344a5f748ba0947d68533e291300000000000000172c42576c83989c87705b46301b001f344a5f748ba0947d68533e291300000000000000172c42576c83989c87705b46301b000000000007121b21262829303232312c292c313233312a29292825201910060000000000000d19232829292d30303030302b29292823190d00000000000000030b0f0f0f0f0f0f0d0600000000000000000000000000000000080e0f0f0f0f0f0e09010000000000030b0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0d06000000000000000000020a101416161617171718191919191a1a1a1a1b1b1b1b1d1d1d1d1b160c000000000000000000040a0e111111111111111111111111111111111111111111100b030000000000040c10111111110e0800000000000000000000000001090f11111111100b0200000000000d1c293640484e505050505050505050504f4537261300000000000000000000001f34495d707474747466523d281300000000000000172c415569747474746d5945301b00000c1f324455647380898d8f8f8f8f8f8f8f8f8f8f8f8f8f8f8f8f8f8f8f8f8f8b837769594837241100000000000000000000000000000b151c1f1f1f1f1e191105000000000000000000000000000000001f344a5f748ba0947d68534f4f4f4f4f4f4f4f4f4f4f4f4f576c83989c87705b46301b001f344a5f748ba0947d68533e291300000000000000172c42576c83989c87705b46301b001f344a5f748ba0947d68533e291312121212121212172c42576c83989c87705b46301b00000000000000070d1c2d3b444747463f323f464748463d2f1e13100c05000000000000000b1c2b363d3e3e3e3e3a313a3e3e3e3e3d362b1c0b00000000000a161f242525252524211a0e0100000000000000000000000004121c232525252525231d14070000000a161f2425252525252525252525252525252525252525252525252525252524211a0e010000000000000b151e25292b2b2c2c2c2c2d2e2e2e2e2f2f2f2f303030303232323230291e100000000000000510181f23262626262626262626262626262626262626262626251f16090000000b17202526262626231b100300000000000000000005131d2426262626251f15080000000a1b2b3947535c62666666666666666666666355432f1b00000000000000000000001a2e41515d5f5f5f5f584836230e0000000000000012263a4c5a5f5f5f5f5c4f3d2a16000014283b4e617283919da3a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a39f9588776653402d1905000000000000000000000000000000000000000000000000000000000000000000000000000000001f344a5f748a9f95806c6464646464646464646464646464656f84999c87705b46301b001f344a5f748ba0947d68533e291300000000000000172c42576c83989c87705b46301b001f344a5f748ba0947d68533e292727272727272727272c42576c83989c87705b46301b000000000000000013273a4b585c5c5b5041505b5c5d5a4d3b28140000000000000000000015283a4852535353534d424e5353535352483a28150000000009192733393a3a3a3a3a362c1f1000000000000000000000000313222f373a3a3a3a3a38312516050009192733393a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a362c1f0f00000000010f1c2831393e4040404242424243434343444444444646464647474747453c2e1d0b000000000a17222c33383b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3a3327180700091a28343a3b3b3b3b372e2111000000000000000003142330383b3b3b3b393226170600041628394957656f777b7b7b7b7b7b7b7b7b7b725d48331e000000000000000000000011233341494a4a4a4a453a2b1907000000000000000a1d2e3c464a4a4a4a483e31200e00001a2e43576a7d91a199908f8f8f8f8f8f8f8f8f8f8f8f8f8f8f8f8f8f8f8f9096a39583705c48341f0b00000002090d0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0c06000000001d32475c71869a9c8b7d797979797979797979797979797979808e9f97836e59442f1a001f344a5f748b94947d68533e291300000000000000172c42576c83949487705b46301b001f344a5f748ba0947d68533e3c3c3c3c3c3c3c3c3c3c3c42576c83989c87705b46301b0000000000000000182d41566972726e5e4d5e6e72726b58432e19040000000000000000001c31455866686868685f4e6068686868665845311c00000000142637454e4f4f4f4f4f493d2e1d0d00000000000000000001112131404b4f4f4f4f4f4d4334231000142637454e4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f493d2d1b08000000101f2d3a444d5356565657575757585858585a5a5a5a5b5b5b5b5c5c5c5c594c3b28140000000b1a28353f474d5050505050505050505050505050505050505050504e4536251200142738464f505050504b3f2f1d09000000000000000d2032414d505050504e44352311000d203345576775838c90919191919191919189735e48331e00000000000000000000000515232e343434343431281c0d000000000000000000101e2a3234343434332c21130200001d32475c71869a9b897c7878787878787878787878787878787878787878798595a08c77624d38230e000009151e2323232323232323232323232323232323232323232323232323232323211a10020000192e42566a7d90a09a92909090909090909090909090909090939d9e8d7a67533f2b16001f344a5f747d7d7d7d68533e281300000000000000172c42576c7d7d7d7d705b46301b001f344a5f748ba0947d685352525252525252525252525252576c83989c87705b46301b0000000000000000182d43586c80887c6a596a7c88806d59442f1a040000000000000000001f344a5f747d7d7d7d6854697d7d7d7d745f4a341f000000001b3043556264646464645b4c3b2b1b0b00000000000000000e1f2f3f4f5e64646464646052402c18001b30435562646464646464646464646464646464646464646464646464646464645b4a37230f00000d1e2e3d4b5761686b6b6b6c6c6c6c6e6e6e6e6f6f6f6f70707070727272726a57432e190000091a293846525b626666666666666666666666666666666666666666666254412e19001c30445663666666665d4c3925100000000000000014293d4f5f666666666153402c180015293d50637485949fa3a3a3a3a3a3a3a39f89735e48331e00000000000000000000000005111a1f1f1f1f1f1c150b00000000000000000000000d171d1f1f1f1f1e190f030000001f344a5f748a9f947d6b636363636363636363636363636363636363636366798ea39079644f3a250f00081826313838383838383838383838383838383838383838383838383838383838362d2011000013273b4e607282919ca2a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a29b8f806f5d4b382410001c31455866686868685f4d3a25110000000000000015293e5161686868686454412d19001f344a5f748ba096826e6767676767676767676767676767677084989b87705b46301b000000000000000015293d506274868876657688877462503d2a16010000000000000000001f344a5f748b94947d68546a8094948b745f4a341f000000001f34495e737979797979695949392918080000000000000c1c2c3d4d5d6d79797979796f5a45301b001f34495e737979797979797979797979797979797979797979797979797979797966513c27120006192b3c4c5b69747c82828283838383848484848686868687878787888888836d59442f1a00031527384756646f767a7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b715c47321c001f344a5f737b7b7b7a68533e281300000000000000172c42576c7b7b7b7b705b46301b001b2f44586c8092a3978f8d8d8d8d8d8d8d8d89735e48331e0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001f344a5f748ba0947d68534e4e4e4e4e4e4e4e4e4e4e4e4e4e4e4e4e4e4e62778da39079644f3a250f00132536444c4e4e4e4e4e4e4e4e4e4e4e4e4e4e4e4e4e4e4e4e4e4e4e4e4e4e4e4e4a3e2f1e0b000b1e314354637280888d8f8f8f8f8f8f8f8f8f8f8f8f8f8f8f8d877d706151402e1b080015283a4852535353534d41301e0a050707070707030e2133434f535353535046372512001f344a5f748ba09d8d807c7c7c7c7c7c7c7c7c7c7c7c7c7c7c828fa096826d59442f1a00000000000000000d20324557697b8e8371838e7b69574532210e000000000000000000001f344a5f748ba0947d68546a8095a08b745f4a341f000000001e33485c6d7d8e90908877675747362616060000000009192a3a4a5a6b7b8c90908b7a6a58442f1a001f344a5f748b90909090909090909090909090909090909090909090909090907c67523c2712000f2336485a6a79879096979798989898999999999b9b9b9b9c9c9c9c9d9d95806a55402b16000c203244566574828b909191919191919191919191919191919191919188725c47321d001f344a5f748b91917d68533e291300000000000000172c42576c83919187705b46301b001f34495d72889c99887a777777777777777777705d48331e00000000000000060c10121212121212121212121212121212121212121212110c0400000000000000000000000000001f344a5f748ba0947d68533e38383838383838383838383838383838384c62778da39079644f3a250f001b2f435461636363636363636363636363636363636363636363636363636363635c4d3a261200021425364554616c747778787878787878787878787878787877726a60524334231100000b1c2b363d3e3e3e3e3a30231212191c1d1d1d1c18101625323b3e3e3e3e3c34281908001f344a5f748ba0ab9d94939393939393939393939393939393959e9d8c7966533e2a1600000000000000000315273a4c5e70838f7d8f83705e4c3a281503000000000000000000001f344a5f748b8b8b7d68546a808b8b8b745f4a341f00000000192c3e4f5f708090a1958574645444342313030000071727374858687889999e8e7d6d5c4c3b2815001f344a5f748ba0a4a4a4a5a5a5a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4937c67523c271200162b3f5265778998a49e9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d947d68533e29140014283b4f617384939fa4a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a4a7a79d88725c47321d001f344a5f748ba0947d68533e291300000000000000172c42576c83989c87705b46301b001f344a5f748ba0947d6a6262626262626262625f52412d19000000000006111a202527272727272727272727272727272727272727272726201609000000000000000000000000001f344a5f748ba0947d68533e29232323232323232323232323232323374c62778da39079644f3a250f001f34495e72787878787878787878787878787878787878787878787878787878786a55402b16000008182736444f595f62636363636363636363636363636363625e574e42342516050000000d19232829292928251e1218252e32323232312c2214152026292929292721170a00001f344a5f748ba0a7a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1a19f988d7d6e5c4a37230f0000000000000000000a1c2f415365778a8b8a776553412f1d0a00000000000000000000001f34495d707474747466536774747474705d49341f000000000f2131415262728393a39383726251413121110104142535455565768697a090806f5f4f3e2e1e0c001f344a5f748b8f8f8f8f9ba2928f8f8f8f8f8f8f8f8f8f8f8f8f8f8f8f8f8f8f7c67523c2712001c31455a6e8295a293898888888888888888888888888888888888888888887c68533e2813001a2e43576b8091a2998f8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8f9aa99d88725c47321d001f344a5f748ba0947d68533e291300000000000000172c42576c83989c87705b46301b001f344a5f748ba0947d68534c4c4c4c4c4c4c4c4b42342411000000000c19242d353a3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3b332718070000000000000000000000001f344a5f748ba0947d68533e29130e0e0e0e0e0e0e0e0e0e0e0e0e22374c62778da39079644f3a250f001f344a5f748b8f8f8f8f8f8f8f8f8f8f8f8f8f8f8f8f8f8f8f8f8f8f8f8f8f8f826b56402b16000000091826323d454a4d4e4e4e4e4e4e4e4e4e4e4e4e4e4e4e4d4a433b302416070000000000070e1313131313110a1627364147474747463f3223110c1213131313120d050000001f344a5f748ba0988c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8a857b6e60503f2d1a0700000000000000000000112336485a6c7474746c5a483624110000000000000000000000001a2e41515d5f5f5f5f5849585f5f5f5f5d51412e1a0000000003132334445464758696a19080705f4f3f2f1f0e122232425263738494a392827161514131201000001f34495e727878787882979f89787878787878787878787878787878787878787766513c2712001f34495e73889d9885757272727272727272727272727272727272727272727163503b2611001e33485d71879b9b897a7777777777777777777777777777777c8b9d9d88725c47321d001f344a5f748ba0947d68533e291300000000000000172c42576c83989c87705b46301b001f344a5f748ba0947d68533e3737373737373736302516060000000d1c2a3640494f5252525252525252525252525252525252525252524f453624110000000000000000000000001f344a5f748ba0947d68533e29130000000000000000000000000d22374c62778da39079644f3a250f001f344a5f748ba0a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a497826b56402b16000000000815202931363838383838383838383838383838383838352f281e130600000000000000000000000000000c1f3345545c5c5c5c5b50402e1a0600000000000000000000001f344a5f748ba0947d767676767676767676767676767676767470685d5042322110000000000000000000000006192b3d4e5b5f5f5f5b4e3d2b190600000000000000000000000011233341494a4a4a4a453b454a4a4a4a49413323110000000000061626364757677788999e8e7d6d5d4d3d2c1c1f30405060708291a29585746453433323130200001b2f4354616363636b82979f8973636363636363636363636363636363636363635a4a37230e001f344a5f748ba0947d685c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c554634200c001f344a5f74899f95806b6262626262626262626262626262626d83989d88725c47321d001f344a5f748ba0947d68533e291300000000000000172c42576c83989c87705b46301b001f344a5f748ba0947d68533e29222222222222211c13070000000a1b2b3a47535d636767676767676767676767676767676767676767676353412d180000000000000000000000001f344a5f748ba0947d68533e29130000000000000000000000000d22374c62778da39079644f3a250f001f344a5f748ba0988f8f8f8f8f8f8f8f8f8f8f8f8f8f8f8f8f8f8f8f8f8f8f8f826b56402b160000000000030d161c212323232323232323232a30353635322c26201b140b0100000000000000000000000000000011263a4f62717272726e5d4934200a00000000000000000000001f344a5f748ba0947d686060606060606060606060606060605f5c554c40322314030000000000000000000000000e1f303e474a4a4a473e301f0e000000000000000000000000000515232e343434343431293134343434342e23150500000000000008192939495a6a7a8b9b9c8c7b6b5a4a3a2a2d3d4e5e6e7d8f9f98887766564636261505000000132536444c4e4e566b82979f89735e4e4e4e4e4e4e4e4e4e4e4e4e4e4e4e4e4e4e483c2c1a07001f344a5f748ba0947d68534747474747474747474747474747474747474747474237281704001f344a5f748ba095806a544c4c4c4c4c4c4c4c4c4c4c4c4c576c83989d88725c47321d001f344a5f748ba0947d68533e291300000000000000172c42576c83989c87705b46301b001f344a5f748ba0947d68533e29130d0d0d0d0d0c08000000000416283949586570787c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c705b46301b0000000000000000000000001f344a5f748ba0947d68533e29130000000000000000000000000d22374c62778da39079644f3a250f001f344a5f748ba0937c7878787878787878787878787878787878787878787878786a55402b160000000000000001080d11110e0e121a242e373e454a4b4a46403a2f21100000000000000000000000000000000000162b4054697d888888745f4b35200b00000000000000000000001f344a5f748ba0947d68534b4b4b4b4b4b4b4b4b4b4b4b4b4b4a4741392e221405000000000000000000000000000212202b33343434332b201202000000000000000000000000000005111a1f1f1f1f1f1c161d1f1f1f1f1f1a110500000000000000000b1b2b3c4c5c6d7d8e9e998978685848373b4b5b6b7c8d9d9a8a79695949382818080000000008182631383840566b82979f89735e483838383838383838383838383838383838342b1e0e00001f344a5f748ba0947d68533e32323232323232323232323232323232323232322e25190a00001f344a5f748ba095806a543f373737373737373737373742576c83989d88725c47321d001f344a5f748ba0947d68533e291300000000000000172c42576c83989c87705b46301b001f344a5f748ba0947d68533e291300000000000000000000000d203345576775838d919393939393939393939393939393939393939387705b46301b0000000000000000000000001f344a5f748ba0947d68533e29130000000000000000000000000d22374c62778da39079644f3a250f001f344a5f748ba0937c6763636363636363636363636363636363636363636363635c4d3a2612000000000000000c182126272221252d37414a52595f605f5b554c3f2d1b07000000000000000000000000000000071b3045596e839799846f5b46311c0800000000000000000000001f344a5f748ba0947d68533e3636363636363636363636363635322d251c1104000000000000000000000000000000020f181e1f1f1f1e180f02000000000000000000000000000000000000000000000000000000000000000000000000000000000000000d1e2e3e4f5f6f8090a0978776655545485969798a9a9d8d7c6c5c4b3b2b1a0a00000000000009151e232b40566b82979f89735e48332323232323232323232323232323232320180d0000001f344a5f748ba0947d68533e291d1d1d1d1d1d1d1d1d1d1d1d1d1d1d1d1d1d1c1a12080000001f344a5f748ba095806a543f2a2222222222222222222c42576c83989d88725c47321d001f344a5f748ba0947d68533e291300000000000000172c42576c83989c87705b46301b001f344a5f748ba0947d68533e2913000000000000000000000014293d5063748594a0a2a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1a19c87705b46301b0000000000000000000000001f344a5f748ba0947d68533e29130000000000000000000000000d22374c62778da39079644f3a250f001f344a5f748ba0937c67524e4e4e4e4e4e4e4e4e4e4e4e4e4e4e4e4e4e4e4e4e4e4a3e2f1e0b0000000000000a1b2a353b3c373639414a545d666d73767470695d4a36220d0000000000000000000000000000000c21354a5e73889d94806a55412c180300000000000000000000001f344a5f748ba0947d68533e29212121212121212121212121201e19120900000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000030e171c1d1d1d1d1a1409000000000000000000102031415161718293a3948473635356667687989f8f806e5e4e3e2d1d0d00000000000000000b14182b40566b82979f89735e48331e1919191919191919191917110e0e0e0b05000000001f344a5f748ba0947d68533e29130303030303030303030100000000000000000000000000001f344a5f748ba095806a543f2a150d0d0d0d0d0d0d172c42576c83989d88725c47321d001f344a5f748ba0947d68533e291300000000000000172c42576c83989c87705b46301b001f344a5f748ba0947d68533e291300000000000000000000001a2f43586c8092a3978e8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c87705b46301b0000000000000000000000001f344a5f748ba0947d68533e29130000000000000000000000000d22374c62778da39079644f3a250f001f344a5f748ba0937c67523c383838383838383838383838383838383838383838362d2011000000000000011528394750514c4b4e555d66707982888c898479644f3a250f00000000000000000000000000000011263a4f64788da28f7965503c27120000000000000000000000001f344a5f748ba0947d68533e29130b0b0b0b0b0b0b0b0b0b0b0b0904000000000000000000000000000000000000000000000a12191d1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1c1811080000000000000313202b31323232322f271b0c000000000000000002132333435464748595a29182706164748595a292827061504030200f0000000000000001111e282d2e40566b82979f89735e48332e2e2e2e2e2e2e2e2e2e2e2c251a0c000000000000001f344a5f748ba0947d68533e29191919191919191919181510090100000000000000000000001f344a5f748ba095806a543f2a1500000000000000172c42576c83989d88725c47321d001f344a5f748ba0947d68533e291300000000000000172c42576c83989c87705b46301b001f344a5f748ba0947d68533e291300000000000000000000001e33485d72879b9a887976767676767676767676767676767676767676766d5a45301b0000000000000000000000001f344a5f748ba0947d68533e29130000000000000000000000000d22374c62778da39079644f3a250f001f344a5f748ba0937c67523c272323232323232323232323232323232323232323211a1002000000000000071c3144576465616063687079848d948d898c9079644f3a250f000000000000000000000000000000162b4054697d929e8a75604b37220d0000000000000000000000001f344a5f748ba0947d68533e29130000000000000000000000000000000000000000000000000000000000000000000006121d262d323434343434343434343434343434343434312c241b0f03000000000f21313e464747474743382a19070000000000000000051526364656677788989f8f806e718292a294847363534332221202000000000000000e1f2f3b424343566b82979f89735e4843434343434343434343434340372a1a080000000000001f344a5f748ba0947d68533e2e2e2e2e2e2e2e2e2e2e2d2a251d1408000000000000000000001f344a5f748ba095806a543f2a1500000000000000172c42576c83989d88725c47321d001f344a5f748ba0947d68533e291300000000000000172c42576c83989c87705b46301b001f344a5f748ba0947d68533e291300000000000000000000001f344a5f748b9f94806a60606060606060606060606060606060606060605d4f3e2b160000000000000000000000001f344a5f748ba0947d68533e29130000000000000000000000000d22374c62778da39079644f3a250f001f344a5f748ba0937c67523c271b1b1b1b1b1b1b1b1b1b1b1b1b1b1b1a150e0e0e0c0600000000000000000a1f344a5f74797676777c858d9088807873767c79644f3a250f0000000000000000000000000000001b30455a6e838b8b85705b46321d080000000000000000000000001f344a5f748b8b8b7d68533e2913000000000000000000000000000000000000000000000000000000000000000000071624303a41474a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a494640372d211304000000182b3e4f5a5c5c5c5c564836230f00000000000000000008182838495969798a9b9d8d7c8090a0978776665545352514040000000000000000182b3d4d575858586b82979f89735e5858585858585858585858585854483725110000000000001f344a5f748ba0947d68534343434343434343434343433f3930261a0c0000000000000000001f344a5f748ba095806a543f2a1500000000000000172c42576c83989d88725c47321d001f344a5f748ba0947d68533e291300000000000000172c42576c83989c87705b46301b001f344a5f748ba0947d68533e291300000000000000000000001f344a5f748ba0947d68534b4b4b4b4b4b4b4b4b4b4b4b4b4b4b4b4b4b4b494031210e0000000000000000000000001f344a5f748ba0947d68533e29130000000000000000000000000d22374c62778da39079644f3a250f001f344a5f748ba0937c67523c303030303030303030303030303030302f291e1101000000000000000000000a1f344a5f748b8c8c8d928f877d746c645f62696d5f4c38230e0000000000000000000000000000001b3045596d747474746955412d18030000000000000000000000001f34495d707474747466523d2813000000000000000000000000000000000000000000000000000000000000000006162534414d555c5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5e5b544a3e3123130200001d32475b6d7272727266523e2914000000000000000000000a1b2b3b4c5c6c7c8d9d9b8a8d9e9a8978685848382717070000000000000000001e32475a6a6e6e6e6e82979f89736e6e6e6e6e6e6e6e6e6e6e6e6e6e6654402c170200000000001f344a5f748ba0947d6858585858585858585858585858534d43372a1b0c00000000000000001f344a5f748ba095806a543f2a1500000000000000172c42576c83989d88725c47321d001f344a5f748ba0947d68533e291300000000000000172c42576c83989c87705b46301b001f344a5f748ba0947d68533e29131212121212110d050000001f344a5f748ba0947d68533e363636363636363636363636363636363636342d2213030000000000000000000000001f344a5f748ba0947d68533e29130000000000000000000000000d22374c62778da39079644f3a250f001f344a5f748ba0937c67524646464646464646464646464646464646443c2f1f0d000000000000000000000a1f344a5f7485898b88837b736a6158504a4d55585041301c09000000000000000000000000000000162a3d4f5c5f5f5f5f5a4c3a2612000000000000000000000000001a2e41515d5f5f5f5f584836230e000000000000000000000000000000000000000000000000000000000000000012243443525f697074747474747474747474747474747474736f675c4f4131200e00001e33485e73888888806a543f2a1500000000000000000000000d1d2e3e4e5e6f808fa09c9e9c8c7b6b5b4a3a2a1a09000000000000000000001f344a5f748484848485979f8a8484848484848484848484848484846e58432e190300000000001f344a5f74899e9683726e6e6e6e6e6e6e6e6e6e6e6e6c68605548392a1908000000000000001f344a5f748ba095806a543f2a1500000000000000172c42576c83989d88725c47321d001f344a5f748ba0947d68533e291300000000000000172c42576c83989c87705b46301b001f344a5f748ba0947d68533e292727272727272621170b00001f344a5f748ba0947d685348484848484848484848484848484848484848463d301f0d0000000000000000000000001f344a5f748ba0947d68533e29130000000000000000000000000d22374c62778da39079644f3a250f001f344a5f748ba0937c675b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b584d3c2a1602000000000000000000081d32465a69707374736e6860574d443c353941433d322312000000000000000000000000000000000e20313e484a4a4a4a463c2e1d0a0000000000000000000000000011233341494a4a4a4a453a2b1907000000000000000000000000000000000000000000000000000000000000000a1d30415261707c85898b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8983796d5f4f3d2c1906001e33485e73899d95806a543f2a15000000000000000000000000102030405161718294a8a38f7d6e5d4d3d2c1c0c00000000000000000000001f344a5f748b99999999a2a89b9999999999999999999999999999846e58432e190300000000001d32465b6f8497a09086848484848484848484848484837c72665748372513000000000000001f344a5f748ba095806a543f2a1500000000000000172c42576c83989d88725c47321d001f344a5f748ba0947d68533e291300000000000000172c42576c83989c87705b46301b001f344a5f748ba0947d68533e3c3c3c3c3c3c3c3b34291a09001f344a5f748ba0947d685e5e5e5e5e5e5e5e5e5e5e5e5e5e5e5e5e5e5e5e5a4e3d2a160000000000000000000000001f344a5f748ba0947d68533e29130000000000000000000000000d22374c62778da39079644f3a250f001f344a5f748ba0937c707070707070707070707070707070707070706b5945301b0600000000000000000003172a3c4c555b5e5f5e5a534c443a312921262c2e29211405000000000000000000000000000000000213212c3334343434322a1e1000000000000000000000000000000515232e343434343431281c0d000000000000000000000000000000000000000000000000000000000000000013273a4d5f70808f999fa0a0a0a0a0a0a0a0a0a0a0a0a0a0a09e978c7d6d5b4936220e001e33485e73899f95806a543f2a15000000000000000000000003132334445464758596aaa592827161504030200f00000000000000000000001f344a5f748b9b9b9b9ba3a99c9b9b9b9b9b9b9b9b9b9b9b9b9b99846e58432e19030000000000182c4054677a8c9ca29a999999999999999999999999979084756654422f1c080000000000001f344a5f748ba095806a543f2a1512121212121212172c42576c83989d88725c47321d001f344a5f748ba0947d68533e291312121212121212172c42576c83989c87705b46301b001f344a5f748ba0947d685352525252525252525047382614001f344a5f748ba0947d7373737373737373737373737373737373737373736c59442f1a0000000000000000000000001f344a5f748ba0947d68533e29131212121212121212121212121222374c62778da39079644f3a250f001f344a5f748ba0948787878787878787878787878787878787878787725c47321d07000000000000000000000d1e2e3a4146484a48453f3830271e150d121718150e03000000000000000000000000000000000000030f191e1f1f1f1f1d170d0000000000000000000000000000000005111a1f1f1f1f1f1c150b000000000000000000000000000000000000000000000000000000000000000000192e4256697c8f9e9d9594949494949494949494949494949497a09b8a7865513d2914001e33485e73899f95806a543f2a150000000000000000000000102131415162728393a397999f8f806e5e4e3e2d1d0d000000000000000000001f344a5f748686868686979f8b8686868686868686868686868686846e58432e190300000000001125384b5d6e7d8b959a9c9c9c9c9c9c9c9c9c9c9c9c9fa29484725f4b38230f0000000000001f344a5f748ba095806a543f2a2727272727272727272c42576c83989d88725c47321d001f344a5f748ba0947d68533e292727272727272727272c42576c83989c87705b46301b001f344a5f748ba0947d686767676767676767676456432f1b001f344a5f748ba09689898989898989898989898989898989898989898987705b46301b0000000000000000000000001f344a5f748ba0947d68533e29272727272727272727272727272727374c62778da39079644f3a250f001f344a5f748ba0a29c9c9c9c9c9c9c9c9c9c9c9c9c9c9c9c9c9c9c88725c47321d070000000000000000000000101d262d31333433302b241d140b020000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001e32475c7186999d8d807d7d7d7d7d7d7d7d7d7d7d7d7d7d7d8390a195826c57432e19001e33485e73899f95806a543f2a15000000000000000000000e1e2e3f4f5f708090a197878a9a9d8d7c6c5c4b3b2b1a0a0000000000000000001e33475b6b6f6f6f6f82979f89736f6f6f6f6f6f6f6f6f6f6f6f6f6f6755412c17020000000000081b2d3f505f6d7882868787878787878787878787878b98a18f7a66523e29140000000000001f344a5f748ba095806a543f3c3c3c3c3c3c3c3c3c3c3c42576c83989d88725c47321d001f344a5f748ba0947d68533e3c3c3c3c3c3c3c3c3c3c3c42576c83989c87705b46301b001f344a5f748ba0947d7c7c7c7c7c7c7c7c7c7c725d48331e001f344a5f748ba0a59f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9c87705b46301b0000000000000000000000001f344a5f748ba0947d68533e3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c4c62778da39079644f3a250f001f344a5f748ba09f9898989898989898989898989898989898989888725c47321d070000000000000000000000000a12181c1e1f1e1b161009010000000000000000000000000000000000000000000000000000040b0f11111111111111111111111111111111111111111111100d08010000000000000000000000000811181c1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1d170e0200001f344a5f748a9f95806e68686868686868686868686868686871859a9b86705b46301b001e33485e73899f95806a543f2a150000000000000000000b1c2c3c4c5d6d7d8e9e9989787c8d9d9b8a79695949382818080000000000000000182b3e4e585a5a5a6b82979f89735e5a5a5a5a5a5a5a5a5a5a5a5a5a564938251202000000000000102132414f5b656c6f707070707070707070707070798b9f96826b56412c170200000000001f344a5f748ba095806a5452525252525252525252525252576c83989d88725c47321d001f344a5f748ba0947d685352525252525252525252525252576c83989c87705b46301b001f344a5f748ba09c9393939393939393939389735e48331e001f344a5f748ba09e95959595959595959595959595959595959596a09c87705b46301b0000000000000000000000001f344a5f748ba0947d68535252525252525252525252525252525252525262778da39079644f3a250f001f344a5f748ba0938383838383838383838383838383838383838383725c47321d070000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000610191f242626262626262626262626262626262626262626262625221c150b01000000000000000005111b252c31333333333333333333333333333333333333333333322b201201001f344a5f748ba0947d685353535353535353535353535353576c83989c87705b46301b001e33485e73899f95806a543f2a150000000000000000091929394a5a6a7a8c9c9c8c7b6b6e7d8f9f98887766564636251505000000000000000f20303c434444566b82979f89735e4844444444444444444444444442392b1b1a17100600000000031323313e4951585a5b5b5b5b5b5b5b5b5b5b5b5c70879c98836c57422c170200000000001f34495e73899e97826f6767676767676767676767676767677083989d88725c47321d001f344a5f748ba096826e6767676767676767676767676767677084989b87705b46301b001f344a5f748ba0a7a1a1a1a1a1a1a1a1a19f89735e48331e001f344a5f748ba09480808080808080808080808080808080808083989c87705b46301b0000000000000000000000001f344a5f74899f94806c676767676767676767676767676767676767676769798fa38f79644f3a250f001f344a5f748ba0937c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6857442f1b0600000000000000030b0f0f0f0f0f0f0d0800000000090e0f0f0f0f0f0e0901000000000000000000000000000000000b17232c33393b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3a3731281e12050000000000000615222e384046484848484848484848484848484848484848484848463d301f0d001f344a5f748ba0947d68533e3e3e3e3e3e3e3e3e3e3e3e42576c83989c87705b46301b001e33485e73899f95806a543f2a1500000000000000061627374757687889999e8e7d6d5d60708291a19585746453433323120200000000000002121f292e2f40566b82979f89735e48332f2f2f2f2f2f2f2f2f2f2f2f2f2f2f2f2b231708000000000413202c363e434546464646464646464646465b70879494836c57422c170200000000001d32465b7085999e8e807c7c7c7c7c7c7c7c7c7c7c7c7c7c7c828f9f9d88725c47321d001f344a5f748ba09d8d807c7c7c7c7c7c7c7c7c7c7c7c7c7c7c828fa096826d59442f1a001f344a5f748ba0988c8c8c8c8c8c8c8c8c8c89735e48331e001f344a5f748ba0947d6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6c83989c87705b46301b0000000000000000000000001d32475c7086999c8b7d7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c87979f8b76614d38230e001f344a5f748ba0937c67575757575757575757575757575757575757554a3a2815010000000000000a161f242525252525221b110305121c232525252525231d140700000000000000000000000000000c1b293540484d505050505050505050505050505050505050505050504f4b443b302214050000000005152433404b545a5e5e5e5e5e5e5e5e5e5e5e5e5e5e5e5e5e5e5e5e5e5a4e3d2a16001f344a5f748ba0947d68533e292929292929292929292c42576c83989c87705b46301b001e33485e73899f95806a543f2a1500000000000003142434445565758696a1908070604f5263738494a392827161514130201000000000000000010d15192b40566b82979f89735e48331e1a1a1a1a1a1a1a21303d44444444443f3526150300000000030f1922292e3030303030303030303030465b707d7d7d7d6c57422c17020000000000182d4155697c8e9e9d95939393939393939393939393939393959ead9d88725c47321d001f344a5f748ba0ab9d94939393939393939393939393939393959e9d8c7966533e2a16001f344a5f748ba0947d767676767676767676766f5c47321d001f344a5f748ba0947d685454545454545454545454545454576c83989c87705b46301b000000000000000000000000192d4256697c8f9f9b9393939393939393939393939393939393939393939399a393826f5b47331e0a001f344a5f748ba0937c6752424242424242424242424242424242424240382c1c0b00000000000009192733393a3a3a3a3a372e2112142330383a3a3a3a3a38312516050000000000000000000000000a1a2a3947525c62666666666666666666666666666666666666666666666460574d403223130200000011233342515d676f7373737373737373737373737373737373737373736c59442f1a001f344a5f748ba0947d68533e291313131313131313172c42576c83989c87705b46301b001e33485e73899f95806a543f2a15000000000001112132425262728394a3938372625242455565758697a090806f5f4e3e2e1e0d000000000000000000162b40566b82979f89735e48332a2a2a2a2a2a2a2a2d3f4e585a5a5a5a5244321f0c000000000000060e15191b1b1b1b1b1b1b1b1b1b2d4154646868686861513e29150000000000001226394c5e70808f99a0a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1a2a99d88725c47321d001f344a5f748ba0a7a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1a19f988d7d6e5c4a37230f001f344a5f748ba0947d686060606060606060605e51402d19001f344a5f748ba0947d68533f3f3f3f3f3f3f3f3f3f3f3f42576c83989c87705b46301b00000000000000000000000013273a4d5f70828f9aa0a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1a09c92857564523f2c1804001f344a5f748ba0937c67523c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2b251b0e00000000000000142637454e4f4f4f4f4f4b3f301f2132414c4f4f4f4f4f4d433423100000000000000000000000031627384857646f777b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b79746a5e5141311f0d00000a1c2f4051616f7a84888989898989898989898989898989898989898987705b46301b001f344a5f748ba0947d68533e291300000000000000172c42576c83989c87705b46301b001e33485e73899f95806a543f2a1500000000000e1f2f3f5060708291a196857564544434374758687889999e8d7d6c5c4c3c2b1b0b0000000000000000162b40566b82979f89735e483f3f3f3f3f3f3f3f3f3f485c6c6f6f6f6f624f3a2611000000000000000000000000000000000000001225374650535353534f4333210e0000000000000a1d2f415261707c868b8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8d9b9d88725c47321d001f344a5f748ba0988c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8a857b6e60503f2d1a07001f344a5f748ba0947d68534b4b4b4b4b4b4b4b4a41332311001f344a5f748ba0947d68533e3e3e3e3e3e3e3e3e3e3e3e42576c83989c87705b46301b0000000000000000000000000a1d30425362717d868b8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c88807466574735231000001f344a5f748ba0937c67523c271717171717171717171717171717171612121212100a010000001b3043556264646464645d4e3d2b2e3e505f64646464646052402c1800000000000000000000000d203345566675828b909191919191919191919191919191919191919191918f887c6f5f4e3d2a1704001226394c5e6f808d989d9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9c87705b46301b001f344a5f748ba0947d68533e291300000000000000172c42576c83989c87705b46301b001e33485e73899f95806a543f2a15000000000c1c2c3d4d5d6e7d8f9f98887767574736262a3a4a5a6a7b8c9c9b8b7a6a59493929180800000000000000162b40566b82979f89735e54545454545454545454545460768686867c67523c271200000000000000000000000000000000000000122537475254545454504434220f0000000000000012233443525f6971747676767676767676767676767676767683989d88725c47321d001f344a5f748ba0947d767676767676767676767676767676767470685d504232211000001f344a5f748ba0947d68533e36363636363636352e231505001f344a5f748ba0947d685353535353535353535353535353576c83989c87705b46301b000000000000000000000000011324354453606a7175767676767676767676767676767676767676767676736d6357483929170600001f344a5f748ba0937c67523c272727272727272727272727272727272727272727251e130500001f34495e7379797979796b5a49383a4b5c6d79797979796f5a45301b000000000000000000000014283c4f627485939fa3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a39a8d7d6c5a4733200c00192d4155697b8d9e9e979595959595959595959595959595959596a19c87705b46301b001f344a5f748ba0947d68533e291300000000000000172c42576c83989c87705b46301b001e33485e73899f95806a543f2a15000000091a2a3a4a5b6b7b8c9c9b8b7a6a59493929191c2c3c4d5d6d7d8e9e98887767574736261605000000000000162b40566b82969f8a766a6a6a6a6a6a6a6a6a6a6a6a6a6b7a8e9b927c67523c271200000000000000000000000000000000000000192d4255656a6a6a6a62513e2a150000000000000006162534414d565d606060606060606060606060606060606c83989d88725c47321d001f344a5f748ba0947d686060606060606060606060606060605f5c554c403223140300001f344a5f748ba0947d68533e29212121212121201b120600001f344a5f74899e96826f68686868686868686868686868686872859a9b87705b46301b0000000000000000000000000006172635424e575d606060606060606060606060606060606060606060605e585045392a1b0b0000001f344a5f748ba0937c67523c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3930231402001e33485c6d7d8f90908a786756444758697a8c90908c7b6a58442f1a00000000000000000000001a2e43576b8092a3988f8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d929e9b8a76634f3a2611001d32475c7085989e8e828080808080808080808080808080808084999c87705b46301b001f344a5f748ba0947d68533e291300000000000000172c42576c83989c87705b46301b001e33485e73899f95806a543f2a150000061727374858687889999d8d7c6c5c4c3b2b1b0b0e1e2f3f4f5f708090a196857464544433231302000000000014293e53687c90a3958680808080808080808080808080808998a08d78644f3a2510000000000000000000000000000000000000001b30465b70808080806c57422c170200000000000000071624303a42484b4b4b4b4b4b4b4b4b4b4b4b4b4b4b576c83989d88725c47321d001f344a5f748ba0947d68534b4b4b4b4b4b4b4b4b4b4b4b4b4b4a4741392e2214050000001f344a5f748ba0947d68533e29130b0b0b0b0b0b06000000001d32465b7085989e8e827d7d7d7d7d7d7d7d7d7d7d7d7d7d7d8390a195826d58442f1a0000000000000000000000000000081725303b43484b4b4b4b4b4b4b4b4b4b4b4b4b4b4b4b4b4b4b4b4b4b49443d34281b0c000000001f344a5f748ba0937c6752525252525252525252525252525252525252525252524d4132200c00192c3e4f60708293a396857362515364758798a190806e5d4c3b281500000000000000000000001e33485d71879b9b897a7777777777777777777777777777777777777777778090a3927d68543f2a15001f344a5f74899f95826f6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6e84999c87705b46301b001f344a5f748ba0947d68533e291300000000000000172c42576c83989c87705b46301b001e33485e73899f95806a543f2a150000122435455565768797a08f806f5e4e3e2e1d0d0000112131415262728393a393837261514131200d00000000001024394d60748697a49995959595959595959595959595959ba39483705d4935210c000000000000000000000000000000000000001b30465b70879595836c57422c1702000000000000000006121d272e33363636363636363636363636363642576c83989d88725c47321d001f344a5f748ba0947d68533e3636363636363636363636363635322d251c1104000000001f344a5f748ba0947d68533e29130000000000000000000000182d4155697b8e9e9e9694949494949494949494949494949497a09c8b7966523e2a1500000000000000000000000000000007131e272e333636363636363e46474747474237363636363636363634302921160a00000000001f344a5f748ba0937c6767676767676767676767676767676767676767676767675f4f3c2813000f2131425364758697a291806f5d60718294a594837261503f2f1e0c00000000000000000000001f344a5f748a9f94806a62626262626262626262626262626262626262626273889d96826b56402b16001f344a5f748ba0947d685454545454545454545454545454586e84999c87705b46301b001f344a5f748ba0947d68533e291300000000000000172c42576c83989c87705b46301b001e33485e73899f95806a543f2a1500001a2e415263738494a092827161514030201000000003132334445464758696a09080705f4f3d29150000000000091d314457687988959ca0a0a0a0a0a0a0a0a0a0a0a0a09f9b9286766553412e1a06000000000000000000000000000000000000001b30465b70879c98836c57422c1702000000000000000000000a13191e202121212121212121212121212c42576c83989d88725c47321d001f344a5f748ba0947d68533e29212121212121212121212121201e1912090000000000001f344a5f748b8b8b7d68533e291300000000000000000000001226394c5e6f808e989ea0a0a0a0a0a0a0a0a0a0a0a0a0a0a09e978c7d6d5c4936230f00000000000000000000000000000000010b141a1e212121212d3f505b5c5c5c5c554634212121212121211f1b150e040000000000001f344a5f748ba0937c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c6b56402b160003142435465768798a9b9e8d7b6a6d7d8fa09887766554433322110000000000000000000000001f344a5f748b8b8b7d68534c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c5c72889d97826b56402b16001f344a5f748ba0947d68533f3f3f3f3f3f3f3f3f3f3f3f43586e84999c87705b46301b001f344a5f748ba0947d68533e291300000000000000172c42576c83989c87705b46301b001e33485e73899f95806a543f2a1500001f34495d70828b8b8b847363534333221202000000000616263647576777888b8b8b7d6c58442f190000000000021527394b5b6a7782888b8b8b8b8b8b8b8b8b8b8b8b8b8b87807567584836241100000000000000000000000000000000000000001b30465b70878b8b836c57422c170200000000000000000000000004090b0b0b0b0b0b0b0b0b0b0b0b172c42576c83989d88725c47321d001f344a5f748ba0947d68533e29130b0b0b0b0b0b0b0b0b0b0b0b090400000000000000001f34495d707474747466523d281300000000000000000000000a1d2f4151616f7b85898b8b8b8b8b8b8b8b8b8b8b8b8b8b8b89837a6d5f4f3e2c1a070000000000000000000000000000000000000005090b0b0b1e33485c6e7272727164503c27130b0b0b0b0b0a070000000000000000001f344a5f748ba09b939393939393939393939393939393939393939393939393826b56402b160000061728394a5b6c7c8e9f998876798b9c9c8b7a695847372615040000000000000000000000001f34495d707474747466523d3737373737373737373737373737373737475c72889d97826b56402b16001f344a5f748ba0947d68533f3f3f3f3f3f3f3f3f3f3f3f43586e84999c87705b46301b001f344a5f748ba0947d68533e291300000000000000172c42576c83989c87705b46301b001e33485e73899f95806a543f2a1500001f34495d707474747474665645352515050000000000000819293949596a74747474746b58432e190000000000000a1c2d3d4c59646d737474747474747474747474747474726c6357493a2a190700000000000000000000000000000000000000001b3045596d747474746955412c17010000000000000000000000000000000000000000000000000000172c42576c83989d88725c47321d001f344a5f748ba0947d68533e2913000000000000000000000000000000000000000000001a2e41515d5f5f5f5f584836230e00000000000000000000000012233342515e697073747474747474747474747474747474736f675c4f4131200f0000000000000000000000000000000000000000000000000a1f34495e72888888806a55412c18030000000000000000000000000000001f344a5f748ba0a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1a197826b56402b160000000a1b2c3d4e5f708292a294838697a08f7d6d5c4b3a2a1908000000000000000000000000001a2e41515d5f5f5f5f5848362322222222222222222222222222222232475c72889d97826b56402b16001f344a5f748ba0947d685454545454545454545454545454586e84999c87705b46301b001f344a5f748ba0947d68533e291300000000000000172c42576c83989c87705b46301b001e33485e73899f95806a543f2a1500001a2e41515d5f5f5f5f5f57483827170700000000000000000b1b2b3c4c5a5f5f5f5f5f5b4e3c2915000000000000000f1f2e3b4851595e5f5f5f5f5f5f5f5f5f5f5f5f5f5f5d585045392b1c0c000000000000000000000000000000000000000000162a3d4f5c5f5f5f5f5a4c3a2612000000000000000000000000000000000000000000000000000000172c42576c838b8b88725c47321d001f344a5f748b8b8b7d68533e29130000000000000000000000000000000000000000000011233341494a4a4a4a453a2b190700000000000000000000000005152433414c555b5e5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5e5a544a3f31231303000000000000000000000000000000000000000000000000071b2f44596d839799846f5b46311d080000000000000000000000000000001f344a5f748b8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c826b56402b16000000000e1f30415263738595a19294a3938270604f3e2d1d0c000000000000000000000000000011233341494a4a4a4a453a2b1913131313131313131313131313131d32475c72889d97826b56402b16001f344a5f748ba0947d6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6e84999c87705b46301b001f344a5f748ba0947d68533e291300000000000000172c42576c83989c87705b46301b001e33485e73899f95806a543f2a15000011233341494a4a4a4a4a44392a1a0a000000000000000000000d1e2e3c464a4a4a4a4a473e301f0d0000000000000001101e2a353e45484a4a4a4a4a4a4a4a4a4a4a4a4a4a48433d33281b0d000000000000000000000000000000000000000000000e20313e484a4a4a4a463c2e1d0a000000000000000000000000000000000000000000000000000000172c415569747474746e5b46311c001f34495d707474747466523d2813000000000000000000000000000000000000000000000515232e343434343431281c0d00000000000000000000000000000615232f394146494a4a4a4a4a4a4a4a4a4a4a4a4a4a4a494640372d2113040000000000000000000000000000000000000000000000000000162a3f53687c929e8974604b37220d0000000000000000000000000000001f34495d70767676767676767676767676767676767676767676767676767676766954402b150000000001122334455667778999a6a79786756453423121100000000000000000000000000000000515232e34343434343129292929292929292929292929292929292932475c72889d97826b56402b16001f344a5f748ba09480808080808080808080808080808080808084999c87705b46301b001f344a5f748ba0947d68533e291300000000000000172c42576c83989c87705b46301b001e33485e73899f95806a543f2a1500000515232e34343434343431281b0c000000000000000000000000101e2a323434343434332b2012010000000000000000000d18222a30333434343434343434343434343434332f2920160a00000000000000000000000000000000000000000000000213212c3334343434322a1e100000000000000000000000000000000000000000000000000000000012263a4c5a5f5f5f5f5c503e2b17001a2e41515d5f5f5f5f584836230e000000000000000000000000000000000000000000000005111a1f1f1f1f1f1c150b0000000000000000000000000000000005121d262d323434343434343434343434343434343434312b241b100300000000000000000000000000000000000000000000000000000011253a4e63778da18f7965503b27120000000000000000000000000000001a2e41525e606060606060606060606060606060606060606060606060606060605a4b3926110000000000091a2a3b4c5d6d7d93a8a48f7c6b5a49382717060000000000000000000000000000000b1c2b363d3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e475c72889d97826b56402b16001f344a5f748ba09e95959595959595959595959595959595959596a19c87705b46301b001f344a5f748ba0947d68533e291300000000000000172c42576c83989c87705b46301b001e33485e73899f95806a543f2a1500000005111a1f1f1f1f1f1f1c150a00000000000000000000000000000d171d1f1f1f1f1f1e180f020000000000000000000000050f161b1e1f1f1f1f1f1f1f1f1f1f1f1f1f1f1e1a150d0400000000000000000000000000000000000000000000000000030f191e1f1f1f1f1d170d00000000000000000000000000000000000000000000000000000000000a1d2e3c464a4a4a4a483f32210f0011233341494a4a4a4a453a2b1907000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000a12181d1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1c17110800000000000000000000000000000000000000000000000000000000000b2035495e72889c937d6a55402c17030000000000000000000000000000122434424a4b4b4b4b4b4b4b4b4b4b4b4b4b4b4b4b4b4b4b4b4b4b4b4b4b4b4b4b473c2d1c0a000000000516263748596a7a8c9ca1a29a897767564534231302000000000000000000000000000015283a4852535353535353535353535353535353535353535353535353535c72889d97826b56402b16001f344a5f748b9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9fa89c87705b46301b001f344a5f748ba0947d68533e291300000000000000172c42576c83989c87705b46301b001e33485e73899f95806a543f2a1500000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000101e2a3234343434332d221303000515232e343434343431281c0d00000000000000000000000000000000000000000000000000030b0f0f0f0e0b050000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000061b2f44596d838b8b846f5a45301b0600000000000000000000000000000616242f353636363636363636384247474747453d363636363636363636363636332b1e0f00000000011223334455667688999e8e8fa096857463524130200f00000000000000000000000000001c314558666868686868686868686868686868686868686868686868686869768a9f95806b56402b16001f344a5f748989898989898989898989898989898989898989898a9b9c87705b46301b001f344a5f748ba0947d68533e291300000000000000172c42576c83989c87705b46301b001e33485e73899595806a543f2a1500000005111a1f1f1a130a0a151c1f1e180f0500000000000000000000040c10111111110e080000000000000000000000060d1011111111100d0600000000000000000000000000000000070d0e0e0e0e0d0700000000000000000000000000000000000000000000040b0f1111111111100d060000000000000000000000000000000000000000000000000000000d171d1f1f1f1f1e19100400000005111a1f1f1f1f1f1c150b000000000000000000000000000000000000000000000000000a161f24252523201911080000000000000000000000000000060c1012121212121212121212121212121212120f0b04000000000000000000040c10111111110e08000000000000000000000000000000000000162a3f5367747474746d5945301b0500000000000000000000000000000006121b20212121212121223547555c5c5c5c5a4e3d2b212121212121212121211e180d00000000000e1f30405162738495a291808394a39282705f4e3d2d1c0b000000000000000000000000001f344a5f747d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d8594a3907c67523e2914001e33485d6f73737373737373737373737373737373737373737384999c87705b46301b001f344a5f748b93937d68533e291300000000000000172c42576c83939387705b46301b001e33485e73808080806a543f2a1500000515232e34342e261c1b283134322b22170b00000000000000000b17202526262626231b100300000000000000000e1a22262626262626221a0e0000000000000000000000000004111b2123232323211b11040000000000000000000000000000000000000610191f2426262626262621190d00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000009192733393a3a38342d241a0e000000000000000000000007111a20252727272727272727272727272727272727241f1810050000000000000b17202526262626231b10030000000000000000000000000000000010243749585f5f5f5f5c4f3d2a16020000000000000000000000000000000000070b0b0b0b0b0b12273c5164717272726c5a46321d0b0b0b0b0b0b0b0b0b090400000000000a1b2c3d4e5e6f8091a29685737687989f8e7d6c5b4a3a2918070000000000000000000000001f344a5f748b9494949494949494949494949494949494949494949494949498a3978673604d39241000192d40515c5e5e5e5e5e5e5e5e5e5e5e5e5e5e5e5e5e5e5e5e6e84999c87705b46301b001f344a5f747c7c7c7c68533e281300000000000000172c42576c7c7c7c7c705b46301b001b304457666a6a6a6a614f3b2712000011233341494942392e2a39444a473f35291b0c000000000000091a28343a3b3b3b3b372e2111000000000000000f1e2c363b3b3b3b3b3b362c1e0e00000000000000000000000213222e3638383838362e221302000000000000000000000000000000000b17232c33393b3b3b3b3b3b352b1d0d00000000050d11121212120f09000000000000000000000000020b1012121212110c04000000000000000000060c1012121212121212121212121212121212120f0b0400000000000000142637454e4f4f4d4841372c1e100100000000000000000c19242d353a3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c39332c22170a00000000091a28343a3b3b3b3b372e211100000000000000000000000000000000081a2c3b454a4a4a4a483e31200e0000000000000000000000000000000000000000000000000013283e53687c88888875604b37220e0000000000000000000000000000061728394a5b6b7c8d9e9b897867697a8c9d9b8a796858473625140300000000000000000000001f344a5f748ba0a9a8a1a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a09c948879685744311d09001122323f4748484848484848484848484848484848484848586e84999c87705b46301b001c31445764676767675e4d3925110000000000000014293d5060676767676353412d18001528394953545454544f4232200c00001a2e41515d5d564c3f3547575f5b5247392a1b0a0000000000142738464f505050504b3f2f1d0900000000000e1d2d3c49505050505050493c2b1906000000000000000000000d2031404b4e4e4e4e4b4031200d0000000000000000000000000000000c1b29353f484d505050505050483b2a180500000c18212627272727241d110400000000000000000006141e25272727272620160900000000000006111a20252727272727272727272727272727272727241f18100500000000001b304355626464625d54493c2e1f0e000000000000000d1c2a3640494f52525252525252525252525252525252514e483f3427190a000000142738464f505050504b3f2f1d09000000000000000000000000000000000e1d293134343434332c2113020000000000000000000000000000000000000000000000000011253a4e63778d9d8f7965513c27130000000000000000000000000000122435465767788a9a9f8e7c6b5a5d6e8090a197867564534332210e00000000000000000000001f344a5f748ba0a5968c8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8882776a5b4b39271401000515232e3434343434343434343434343434343434343443586e84999c87705b46301b001528394750525252524c402f1d0a080400050809090e2133424e525252524f45362411000b1c2b373e3f3f3f3f3b3224140300001f34495d7072695d4f405064746e64574839281604000000001c30445663666666665d4c392510000000000c1c2c3b4b5a6566666666655a4935210c0000000000000000000015293d4f5e636363635e4f3d291500000000000000000000000000000a1a2a3947525c62666666666665594734200b000a1b2a353b3c3c3c3c392f22120000000000000000041524313a3c3c3c3c3b33271807000000000c19242d353a3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c39332c22170a000000001f34495e7379797770675a4c3d2c1a0800000000000a1b2b3a47535d636767676767676767676767676767676766635b51453728190800001c30445663666666665d4c39251000000000000000000000000000000000000c161d1f1f1f1f1e190f0300000000000000000000000000000000000000000000000000000b2035495e72879c94806a55412c1803000000000000000000000000001a2e415364748697a09382705f4e5061728495a093837160503e2b1600000000000000000000001f344a5f748ba0998777747474747474747474747474747474747474747474736d64594c3d2d1c0a000011233341494a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a586e84999c87705b46301b000a1b2a353b3c3c3c3c392f221e1e1d1811191e1e1e1c1624313a3c3c3c3c3b33271807000313202a30303030302d2418090000001f344a5f74867b6d5e4d52677c827566564533200d000000001f344a5f737b7b7b7a68533e28130000000b1b2a3a495969787b7b7b7b78644f3a240f00000000000000000000182d43586c787878786c58432e1a05000000000000000000000000031627384857646f777b7b7b7b7b77634d38230e001528394750525252524c402f1d0a000000000000000e2133424e525252524f453624110000000d1c2a3640494f52525252525252525252525252525252514e483f3428190a0000001f344a5f748b908c84786a5a4a382512000000000416283949586570787c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7b776f63554636251301001f344a5f737b7b7b7a68533e2813000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000061b2f44586d829799846f5b46311d08000000000000000000000000001f34495d70828b8b8b867563524143556677888b8b8b7d6d5a45301b00000000000000000000001f344a5f748ba094806a5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5e5951473b2e1f0f0000001a2e41515d5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f6e84999c87705b46301b00000c18212627272727242b323333322c242d33333331291d1e25272727272620160900000f21313d4546464646413627160400001f344a5f748b8c7c6a5852677c93857463503d2915010000001f344a5f748b91917d68533e291300000a19293848586777889191908070604c38230e00000000000000060c10182d42566b808f8f87715d48341f12121212121212110c040000000d203345566675828b909191918f78634e38230e001c31445764676767675e4d3925110000000000000014293d5060676767676353412d1800000a1b2b3a47535d636767676767676767676767676767676766635b51453728190800001f344a5f748ba0a09689786754412e1a060000000d203345576775838d91939393939393939393939393939393918b8273645443301d0a001f344a5f748b91917d68533e2913000000000000000002080c0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0d090400000000000000000000000000000000000000152a3f53687c929e8974604b37220d000000000000000000000000001f34495d707474747474685746353748596a74747474746d5945301b00000000000000000000001f344a5f748ba0947d68534a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a48453e352a1d10010000001f34495d7074747474747474747474747474747474747474747a8b9e98846f5a45301b000000050d111212121f303d464848473f3441484848453b2d1c1012121212110c04000000192c3e4f595b5b5b5b534533200c00001f344a5f748b9a88756152677c9392806c5844301b070000001f344a5f748ba0947d68533e29130008182737475666768696a1918271615142301d09000000000006111a202527283d51667a8fa08c77624d39272727272727272726201609000014293c50627485939fa3a3a3a38f78634e38230e001f344a5f747c7c7c7c68533e281300000000000000172c42576c7c7c7c7c705b46301b000416283949586570787c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7b776f63554636251301001f344a5f748b8f95a29785715d4935210c00000014293d5063748594a0a2a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1a39e928372604d3a2611001f344a5f748ba0947d68533e2913000000000000040e161d2123232323232323232323232323232323232323232323221e18100700000000000000000000000000000000001025394e63778b8b8b7965503b2610000000000000000000000000001a2e41515d5f5f5f5f5f594a39282a3b4c5a5f5f5f5f5f5c4f3d2a1600000000000000000000001f344a5f748ba0947d68533e3434343434343434343434343434343434343433302a22180d00000000001f344a5f748b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8e99a1907c6955402c170000000000000000162a3d4e5a5e5e5b5043525d5e5e594b392612000000000000000000001e33485c6d70707070634f3b261200001f344a5f748ba0917c6752677c939c88735e49341f0a0000001f344a5f748ba0947d68533e291307162636455565748594a293837263534334241301000000000c19242d353a3c3c3c4c61758a9f917c67523e3c3c3c3c3c3c3c3c3b33271807001a2f43586c8092a3988f8d8d8d8d78634e38230e001f344a5f748b93937d68533e291300000000000000172c42576c83939387705b46301b000d203345576775838d91939393939393939393939393939393918b8273645443301d0a001f34495e7278798495a18d78634e3925100000001a2f43586c8092a3978e8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8f99a1907c6955402c17001f344a5f748ba0947d68533e291300000000000916212a31363838383838383838383838383838383838383838383837332c23190d000000000000000000000000000000000b2034495d7074747473634f3a25100000000000000000000000000011233341494a4a4a4a4a463b2d1b1e2e3c464a4a4a4a4a483e31200e00000000000000000000001f344a5f748ba0947d68533e291f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1e1b161515130d030000001f344a5f748ba0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a29f928372604d3a261100000000000000001a2f44596c73736e5d4f607073736855402c16010000000000000000001f344a5f738787877d6955402c1702001f344a5f748ba095806a54677c93a18c76604b36210b0000001f344a5f748ba0947d68533e2913152534445463738393a394857464554535251606000000000d1c2a3640494f525252525c70869a96826c575252525252525252524f45362411001e33485d72879b9a887a7777777774624d38230e001f344a5f748ba0947d68533e291300000000000000172c42576c83989c87705b46301b0014293d5063748594a0a2a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1a39e928372604d3a2611001b2f4354616366788da3917b66503b26110000001e33485d72879b9a88797676767676767676767676767676767b8b9e98846f5a45301b001f344a5f748ba0947d68533e2913000000000a1927333d464b4e4e4e4e4e4e4e4e4e4e4e4e4e4e4e4e4e4e4e4e4e4e4c4740362a1d0f000000000000000000000000000000061a2e41515d5f5f5f5f564634200c000000000000000000000000000515232e343434343434322a1d0f101e2a323434343434332c21130200000000000000000000001f344a5f748ba0947d68533e2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2720150700001f344a5f748b94949494949494949494949494949494949494928c8274655443301d0a00000000000000001b30455a6e82897a695a6c7d897d6b56412c17020000000000000000001c30455a6e839898846f5a45301c07001f344a5f748ba095806a54677c93a18c76604b36210b0000001f344a5f748ba0947d68533e29142333435262718292a196867666564737271708000000000a1b2b3a47535d6367676767676b80959b8671676767676767676767676353412d18001f344a5f748ba0947d6a62626262615645321e0a001f344a5f748ba0947d68533e291300000000000000172c42576c83989c87705b46301b001a2f43586c8092a3978e8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8f99a1907c6955402c1700132536444c4e62778da3917b66503b26110000001f344a5f748b8c8c806a6060606060606060606060606060606e83989c87705b46301b001f344a5f748ba0947d68533e2913000000081928374550596063636363636363636363636363636363636363636363615b53483b2d1d0d00000000000000000000000000000011233341494a4a4a4a4438281704000000000000000000000000000005111a1f1f1f1f1f1f1d170c00000d171d1f1f1f1f1f1e190f030000000000000000000000001f344a5f748ba0947d68533f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3c33251504001f344a5f747d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7c776f645647372513010000000000000000172b3e51637588877567788a8572604e3b281300000000000000000000172b4054697d939d88735f4a36210c001f344a5f748ba095806a54677c93a18c76604b36210b0000001f344a5f748ba0947d68533e292232425161708290a098887768584838291909000000000416283949586570787c7c7c7c7c7c7c90a08b7c7c7c7c7c7c7c7c7c7c7c705b46301b001f344a5f748ba0947d68534c4c4c4c4538281603001f344a5f748ba0947d68533e291300000000000000172c42576c83989c87705b46301b001e33485d72879b9a88797676767676767676767676767676767b8b9e98846f5a45301b0008182631384c62778da3917b66503b26110000001f34495d707676767566524b4b4b4b4b4b4b4b4b4b4b4b4b576c83989c87705b46301b001f344a5f748ba0947d68533e29130000021426374655626d7478787878787878787878787878787878787878787878766f66594b3b2b190700000000000000000000000000000515232e343434343430271a0b00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001f344a5f748ba0947d685454545454545454545454545454545454545454545454545454504333210d001c31455866686868686868686868686868686868686868686867635c5246382919080000000000000000000f223446586a7c8f8272858c79675543311f0c0000000000000000000011263b4f64788ea28e78644f3b2611001f344a5f748ba095806a54677c93a08c76604b36210b0000001f344a5f748ba0947d68533e32324050606f808f9f99897969594a3a2a1a0b00000000000d203345576775838d9193939393939399a6979393939393939393939387705b46301b001f344a5f748ba0947d68533e37373732281a0a00001f344a5f748ba0947d68533e291300000000000000172c42576c83989c87705b46301b001f344a5f748b9f94806a6060606060606060606060606060606e83989c87705b46301b0000091522374c62778da3917b66503b26110000001a2e41525e60606060594937363636363636363636363642576c83989c87705b46301b001f344a5f748ba0947d68533e291300000c1f324455647380898d8f8f8f8f8f8f8f8f8f8f8f8f8f8f8f8f8f8f8f8f8f8b837769594837241100000000000000000000000000000005111a1f1f1f1f1f1c140900000000000000000000000000000000000000000000000911181c1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1b160f070000000000001f344a5f748ba09682706a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a61503d28140015283a48525353535353535353535353535353535353535353524f484035281a0b000000000000000000000516293b4d5f71848e8090826e5c4a38261402000000000000000000000c21364a5f73889d937d6954402b16001f344a5f748b8b8b806a54677c8b8b8b76604b36210b0000001f344a5f748ba0947d68534747474f5e6e7d8e9e9b8b7a6b5b4b3b2c1c0c00000000000014293d5063748594a0a2a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1a19c87705b46301b001f344a5f748ba0947d68533e2922221e150a0000001f344a5f748ba0947d68533e291300000000000000172c42576c83989c87705b46301b001f344a5f748ba0947d68534b4b4b4b4b4b4b4b4b4b4b4b4b576c83989c87705b46301b0000000d22374c62778da3917b66503b2611000000122434424a4b4b4b4b484848484848484848484848484848576c83989c87705b46301b001f344a5f748ba0947d68533e2913000014283b4e617283919da3a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a39f9588776653402d19050000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005111c252c313333333333333333333333333333333333302b231a0e02000000001f344a5f748ba09e8f8380808080808080808080808080808080808080808080808080806b56402b16000b1c2b363d3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3d3a342d23170a0000000000000000000000000c1e30425466788b8b887663513f2d1b090000000000000000000000071c30455a6e838b8b836e5a45301b001f34495d707474747467536474747474705e4a35200b0000001f344a5f748ba0947d685c5c5c5c5d6d7c8d9c9c8d7c6c5d4d3d2d1d0e000000000000001a2f43586c8092a3978e8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c87705b46301b001f344a5f748ba0947d68533e29130c0902000000001f344a5f748ba0947d68533e291300000000000000172c42576c83989c87705b46301b001f344a5f748ba0947d68533e363636363636363636363642576c83989c87705b46301b0000000d22374c62778da3917b66503b291c0c00000616242f35404b545a5d5e5e5e5e5e5e5e5e5e5e5e5e5e5e5e6d83989c87705b46301b001f344a5f748ba0947d68533e291300001a2e43576a7d91a199908f8f8f8f8f8f8f8f8f8f8f8f8f8f8f8f8f8f8f8f9096a39583705c48341f0b00000002090d0e0e0e0e0b05000000000000000000000000000000000000040a0e0e0e0e0e0b040000000000000615232e3940464848484848484848484848484848484848453f362c2012040000001f344a5f748ba0ad9f9795959595959595959595959595959595959595959595959595826b56402b1600000d1923282929292929292d3332322f29292e3232322e29292825201910050000000000000000000000000001132537495b6d7474746a594634221000000000000000000000000001172b405468747474746d5945301b001a2e41515d5f5f5f5f5849575f5f5f5f5d52422f1b070000001f344a5f748ba0947d7272727272727b8c9b9e8e7d6e5e4e3f2f1f0f00000000000000001e33485d72879b9a887976767676767676767676767676767676767676766d5a45301b001f344a5f748ba0947d68533e2913000000000000001f344a5f748ba0947d68533e291300000000000000172c42576c83989c87705b46301b001f344a5f748ba0947d68533e292121212121212121212c42576c83989c87705b46301b0000000d22374c62778da3917b6652473a2a1805000011223242505d676f7273737373737373737373737373737379899c99856f5a45301b001f344a5f748ba0947d68533e291300001d32475c71869a9b897c7878787878787878787878787878787878787878798595a08c77624d38230e000009151e232323232320180d000000000000000000000000000000000b171f23232323231f170c0000000005152433404c545a5e5e5e5e5e5e5e5e5e5e5e5e5e5e5e5e5d5952493d3022120100001f344a5f748ba0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a097826b56402b16000000070e1313131313253441484747443a384247474741362716100c0500000000000000000000000000000000081a2c3e4f5c5f5f5f5a4d3b291705000000000000000000000000001125394a595f5f5f5f5c4f3d2a160011233341494a4a4a4a453b444a4a4a4a4941342412000000001f344a5f748ba096888888888888888a9a9f8f806f6050403021110100000000000000001f344a5f748b9f94806a60606060606060606060606060606060606060605d4f3e2b16001f344a5f748ba0947d68533e2913000000000000001f344a5f748ba0947d68533e291300000000000000172c42576c83989c87705b46301b001f344a5f748ba0947d68533e29130b0b0b0b0b0b0b172c42576c83989c87705b46301b0000000d22374c62778d9d917b6f64584734200c00091c2e4051606e7a83888989898989898989898989898989898c97a3917d6a56412d18001f344a5f748ba0947d68533e291300001f344a5f748a9f947d6b636363636363636363636363636363636363636366798ea39079644f3a250f00081826313838383838342b1e0e00000000000000000000000000000b1b2933383838383833291c0c00000012233342515e686f73737373737373737373737373737373726e665b4e40301f0d00001f344a5f748b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b826b56402b160000000000000000081c3042525d5c5c574a47555c5c5c5445331f0b000000000000000000000000000000000000000f21313e484a4a4a473d2f1e0c0000000000000000000000000000091b2d3b464a4a4a4a483e31200e000515232e343434343431293134343434342e241606000000001f344a5f748ba0a49d9d9d9d9d9d9d9ea6928270615142322212030000000000000000001f344a5f748ba0947d68534b4b4b4b4b4b4b4b4b4b4b4b4b4b4b4b4b4b4b494031210e001f344a5f748ba0947d68533e2913000000000000001f344a5f748ba0947d68533e291300000000000000172c42576c83989c87705b46301b001f344a5f748ba0947d68533e291300000000000000172c42576c83989c87705b46301b0000000c21364b5f70808d9a8d8276634e39240f001125394b5d6f7d8d979d9f9f9f9f9f9f9f9f9f9f9f9f9f9f9fa0a1948573614e3b2713001f344a5f748ba0947d68533e291300001f344a5f748ba0947d68534e4e4e4e4e4e4e4e4e4e4e4e4e4e4e4e4e4e4e62778da39079644f3a250f00132536444c4e4e4e4e483c2c1a0700000000000000000000000004172939464d4e4e4e4d473a2a1805000a1d2f4151616f7b84888989898989898989898989898989898882786c5e4e3d2b1805001f34495d707474747474747474747474747474747474747474747474747474747474747468543f2a1500000000000000000c21364b5f70727268575465717271624e3a2510000000000000000000000000000000000000000313212c33343434322b1f11000000000000000000000000000000000f1d2a3234343434332c211302000005111a1f1f1f1f1f1d161c1f1f1f1f1f1a120600000000001f344a5f748ba09f9797979797979798a4958574655545362616060000000000000000001f344a5f748ba0947d68533e363636363636363636363636363636363636342d221303001f344a5f748ba0947d68533e2913000000000000001f344a5f748ba0947d68533e291300000000000000172c42576c83989c87705b46301b001f344a5f748ba0947d68533e291300000000000000172c42576c83989c87705b46301b000000081c304252616e7c8a979079644f3a250f00182c4054687a8d9d9f97959595959595959595959595959595948e8476665644321f0b001f344a5f748ba0947d68533e291300001f344a5f748ba0947d68533e38383838383838383838383838383838384c62778da39079644f3a250f001b2f435461636363635a4a37230e0000000000000000000000000a1f3346576263636362584734200c001226394c5e6f808d989d9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9c968a7c6c5a4835220e001a2e41515d5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f594a39251100000000000000000c21374c607486877563607183887865503b26100000000000000000000000000000000000000000030f191e1f1f1f1e180e0100000000000000000000000000000000000c171d1f1f1f1f1e190f030000000000000000000000000000000000000000000000000000001f344a5f748ba094828282828282828696a39383736353443424150500000000000000001f344a5f748ba0947d68533e2921212121212121212121212121212121211f1a100400001f344a5f748ba0947d68533e2913000000000000001f344a5f748ba0947d68533e291300000000000000172c42576c83989c87705b46301b001f344a5f748ba0947d68533e291300000000000000172c42576c83989c87705b46301b0000000013253443505e6b78879079644f3a250f001c31465b7084989e8f8380808080808080808080808080808080797166584938271502001f344a5f748ba0947d68533e291300001f344a5f748ba0947d68533e29232323232323232323232323232323374c62778da39079644f3a250f001f34495e727878787766513c27120000000000000000000000000e23384d627578787876634e39240f00192d4155697c8e9e9e9795959595959595959595959595959598a19a8a7764513d29140011233341494a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a463b2d1b090000000000000000091d314457697b8d82706c7d8f806d5b4935210d00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001f344a5f748ba0947d6b6b6b6b6b6b778897a191827162524232231304000000000000001f344a5f748ba0947d68533e29130b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0a06000000001f344a5f748ba0947d68533e2913000000000000001f344a5f748ba0947d68533e291300000000000000172c42576c83989c87705b46301b001f344a5f748ba0947d68533e291300000000000000172c42576c83989c87705b46301b00000004182b3c4a576471808c9079644f3a250f001f34495e73899e9682706a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a655e54483a2b1a0a00001f344a5f748ba0947d68533e291300001f344a5f748ba0947d68533e29130e0e0e0e0e0e0e0e0e0e0e0e0e22374c62778da39079644f3a250f001f344a5f748b8f8f7c67523c27120000000000000000000000000e23384e63788f8f8f79644f3a250f001d32475c7085999e8e828080808080808080808080808080808491a295806c57422e19000515232e3434343434343434343434343434343434343434343434343434343434343434322a1d0f0000000000000000000215273a4c5e70838e7c778a877462503e2b19060000000000000000000000000000000000000000080e13151515151515151515151515151515151515151515140f06000000000000000001080f131515151515151515151515151515151514120d07000000000000001f344a5f748ba0947d68565656565969788999a0908070615141312212020000000000001f344a5f748ba0947d68533e2913000000000000000000000000000000000000000000001f344a5f748ba0947d68533e2913000000000000001f344a5f748ba0947d68533e291300000000000000172c42576c83989c87705b46301b001f344a5f748ba0947d68533e291300000000000000172c42576c83989c87705b46301b0000000a1f33475a68758390998e79644f3a250f001f344a5f748ba0947d6854545454545454545454545454545454514b413e3c34281908001f344a5f748ba0947d68533e291300001f344a5f748ba0947d68533e29130000000000000000000000000d22374c62778da39079644f3a250f001f344a5f748ba0937c67523c27120000000000000000000000000e23384e63788fa49079644f3a250f001f344a5f748a9f95826f6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a72869a9a86705b46301b000005111a1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1d170c00000000000000000000000a1c2f415365778a89848e7b69574533210e0000000000000000000000000000000000000009131c23282a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2822180b00000000000009141c23282a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a27221b110600000000001f344a5f748ba0947d68534040404b5a6a7a8a9a9e8f806f5f4f403020100100000000001f344a5f748ba0947d68533e2913000000000000000000000000000000000000000000001f344a5f748ba0947d68533e2913000000000000001f344a5f748ba0947d68533e291300000000000000172c42576c83989c87705b46301b001f344a5f748ba0947d68533e291300000000000000172c42576c83989c87705b46301b0000000d22374c6277869394877b70614d38230e001f344a5f748ba0947d68533f3f3f3f3f3f3f3f3f3f3f3f3f434f535353535046372512001f344a5f748ba0947d68533e291300001f344a5f748ba0947d68533e29130000000000000000000000000d22374c62778da39079644f3a250f001f344a5f748ba0937c67523c27120000000000000000000000000e23384e63788fa49079644f3a250f001f344a5f748ba0947d685454545454545454545454545454576c83989c87705b46301b00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000112336485a6c7d8b8b83705e4c3a2816030000000000000000000000000000000000000e1b2630373d3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3d35291a08000000000e1b2630373d3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3b362e24180b000000001f344a5f748ba0947d68533e2b2d3d4c5c6c7b8c9b9d8e7d6d5e4e3e2e1f0f00000000001f344a5f748ba0947d68533e2913000000000000000000000000000000000000000000001f344a5f748ba0947d68533e2913000000000000001f344a5f748ba0947d68533e291313131313131313172c42576c83989c87705b46301b001f344a5f748ba0947d68533e291313131313131313172c42576c83989c87705b46301b0000000d22374c62778da3917b695e5344311e0a001f344a5f748ba0947d68533e3e3e3e3e3e3e3e3e3e3e3e3e5161686868686454412d19001f344a5f748ba0947d68533e291300001f344a5f748ba0947d68533e29130000000000000000000000000d22374c62778da39079644f3a250f001f344a5f748ba0937c67523c27120000000000000000000000000e23384e63788fa49079644f3a250f001f344a5f748ba0947d68533f3f3f3f3f3f3f3f3f3f3f3f42576c83989c87705b46301b00000000000000040b0f11111111111111111111111111111111111111111111100d08010000000000000000000000000000000006192b3d4f61727474746553412f1d0a0000000000000000000000000000000000000f1e2c38434b5154545454545454545454545454545454545454545452473725120000000f1e2c39434b515454545454545454545454545454545454504a4136291b0c0000001f344a5f748ba0947d68533e291f2e3e4e5d6d7d8d9d9c8c7c6c5c4c3d2d1d0d000000001f344a5f748ba0947d68533e2913000000000000000000000000000000000000000000001f344a5f748ba0947d68533e2913000000000000001f344a5f748ba0947d68533e292929292929292929292c42576c83989c87705b46301b001f344a5f748ba0947d68533e292929292929292929292c42576c83989c87705b46301b0000000d22374c62778da3917b66504135261402001f344a5f748ba0947d685353535353535353535353535353576c7d7d7d7d705b46301b001f344a5f748ba0947d68533e291300001f344a5f748ba0947d68533e29130000000000000000000000000d22374c62778da39079644f3a250f001f344a5f748ba0937c67523c27120000000000000000000000000e23384e63788fa49079644f3a250f001f344a5f748ba0947d68533e2a2a2a2a2a2a2a2a2a2a2c42576c83989c87705b46301b00000000000610191f242626262626262626262626262626262626262626262625221c150b010000000000000000000000000000000d203244545e5f5f5f57483624120000000000000000000000000000000000000c1d2d3c49555f666a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6555422d1900000c1d2d3c4a5660666a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a69655d5347392a1a0800001f344a5f748ba0947d68533e291320303f4f5f6e7d8e9e9a8b7a6a5b4b3b2b1c0c0000001f344a5f748ba0947d68533e2913000000000000000000000000000000000000000000001f344a5f748ba0947d68533e2913000000000000001f344a5f748ba0947d68533e3e3e3e3e3e3e3e3e3e3e3e42576c83989c87705b46301b001f344a5f748ba0947d68533e3e3e3e3e3e3e3e3e3e3e3e42576c83989c87705b46301b0000000d22374c62778da3917b66503b26170800001f344a5f74899e96826f6868686868686868686868686868687285949487705b46301b001f344a5f748ba0947d68533e291300001f344a5f748ba0947d68533e29130000000000000000000000000d22374c62778da39079644f3a250f001f344a5f748ba0937c67523c27120d0d0d0d0d0d0d0d0d0d0d0d0e23384e63788fa49079644f3a250f001f344a5f748ba0947d68533e291515151515151515172c42576c83989c87705b46301b000000000b17232c33393b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3a3731281e120500000000000000000000000000000215263643494a4a4a44392a190600000000000000000000000000000000000517293b4b5a67727a808080808080808080808080808080808080808080705b46301b0005182a3b4b5a68737a808080808080808080808080808080807d797065574837261401001f344a5f748ba0947d68533e291312213141506070808f9f9989796959493a2a1a0b00001f344a5f748ba0947d68533e2913000000000000000000000000000000000000000000001f344a5f748ba0947d68533e2913000000000000001f344a5f748ba0947d685353535353535353535353535353576c83989c87705b46301b001f344a5f748ba0947d685353535353535353535353535353576c83989c87705b46301b0000000d22374c62778da3917b66503b26110000001d32465b7085989e8e827d7d7d7d7d7d7d7d7d7d7d7d7d7d7d8390a195826d58442f1a001f344a5f748ba0947d68533e291300001f344a5f748ba0947d68533e29130000000000000000000000000d22374c62778da39079644f3a250f001f344a5f748ba0937c67523c27222222222222222222222222222223384e63788fa49079644f3a250f001f344a5f748ba0947d68533e291300000000000000172c42576c83989c87705b46301b0000000c1b293540484d505050505050505050505050505050505050505050504f4b443b3022140500000000000000000000000000000918252f3434343431281b0c0000000000000000000000000000000000000e213447586877858f949595959595959595959595959595959595959587705b46301b000f223547596978868f94959595959595959595959595959595938d8375655543311e0a001f344a5f748ba0947d68533e291303132332425161708290a097887767584838281704001f344a5f748ba0947d68533e291313131313131313131313131313131313120d040000001f344a5f748ba0947d68533e2913000000000000001f344a5f748ba096826f6868686868686868686868686868687184999b87705b46301b001f344a5f74899e96826f68686868686868686868686868686872859a9b87705b46301b00000e1a24374c62778da3917b66503b2611000000182d4155697b8e9e9e9694949494949494949494949494949497a09c8b7966523e2a15001f344a5f748ba0947d68533e291300001f344a5f748ba0947d68533e29130000000000000000000000000d22374c62778da39079644f3a250f001f344a5f748ba0937c67523c37373737373737373737373737373737384e63788fa49079644f3a250f001f344a5f748ba0947d68533e291300000000000000172c42576c83989c87705b46301b00000a1a2a3947525c62666666666666666666666666666666666666666666666460574d4032231302000000000000000000000000000008131b1f1f1f1f1c150a0000000000000000000000000000000000000015293e5164768796a2a09f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9c87705b46301b00162a3e5164768897a3a09f9f9f9f9f9f9f9f9f9f9f9f9f9f9fa1a0938472604d3a2611001f344a5f748ba0947d68533e29130004142333435262728292a196867566564634200c001f344a5f748ba0947d68533e2929292929292929292929292929292929292721160900001f344a5f748ba0947d68533e2913000000000000001f344a5f748ba09e8e827d7d7d7d7d7d7d7d7d7d7d7d7d7d7d828fa196826d58442f1a001d32465b7085989e8e827d7d7d7d7d7d7d7d7d7d7d7d7d7d7d8390a195826d58442f1a000c1d2c373e4c62778da3917b66503b26110000001226394c5e6f808e989ea0a0a0a0a0a0a0a0a0a0a0a0a0a0a09e978c7d6d5c4936230f001f344a5f748ba0947d68533e291300001f344a5f748ba0947d68533e29130000000000000000000000000d22374c62778da39079644f3a250f001f344a5f748ba0937c67524c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4e63788fa49079644f3a250f001f344a5f748ba0947d68533e291300000000000000172c42576c83989c87705b46301b00031627384857646f777b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b79746a5e5141311f0d000000000000000000000000000000000000000000000000000000000000000000000000000000000000001b3044586d8294a3958b8989898989898989898989898989898989898987705b46301b001c3045596d8294a3948b8989898989898989898989898989898d98a2907d6955402c17001f344a5f748ba0947d68533e291300000615253544546373848c8c8c8574634f3a2510001f344a5f748ba0947d68533e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3c34271806001f344a5f748ba0947d68533e2913000000000000001f344a5f748ba0ac9e96949494949494949494949494949494969f9c8b7966523e2a1500182d4155697b8e9e9e9694949494949494949494949494949497a09c8b7966523e2a150016293b49535462778da3917b66503b26110000000a1d2f4151616f7b85898b8b8b8b8b8b8b8b8b8b8b8b8b8b8b89837a6d5f4f3e2c1a07001f344a5f748b8c8c7d68533e291300001f344a5f748ba0947d68533e29130000000000000000000000000d22374c62778da39079644f3a250f001f344a5f748ba0937c67626262626262626262626262626262626262626263788fa49079644f3a250f001f344a5f748ba0947d68533e291300000000000000172c42576c83989c87705b46301b000d203345566675828b909191919191919191919191919191919191919191918f887c6f5f4e3d2a1704000000000000000000000000000000000000000000000000040c10111111110e080000000000000000001e33485d72889c99867773737373737373737373737373737373737373736c59442f1a001f34495e73889d98857673737373737373737373737373737379899c98846f5a442f1a001f344a5f748ba0947d68533e291300000007172636465565747676767675644f3a2510001f344a5f748ba0947d6853535353535353535353535353535353535353535045362411001f344a5f748ba0947d68533e2913000000000000001f344a5f748ba0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a09e978c7d6d5c4936230f001226394c5e6f808e989ea0a0a0a0a0a0a0a0a0a0a0a0a0a0a09e978c7d6d5c4936230f001d314558676a6b7a8fa3907b66503b26110000000012233342515e697073747474747474747474747474747474736f675c4f4131200f00001f34495d707676767566523d281300001f344a5f748ba0947d68533e29130000000000000000000000000d22374c62778da39079644f3a250f001f344a5f748ba0937c77777777777777777777777777777777777777777777788fa49079644f3a250f001f344a5f748ba0947d68533e291300000000000000172c42576c83989c87705b46301b0014283c4f627485939fa3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a39a8d7d6c5a4733200c00000000000000000000000000000000000000000000000a16202526262626231c1104000000000000001f344a5f748ba0947d695e5e5e5e5e5e5e5e5e5e5e5e5e5e5e5e5e5e5e5e5a4e3d2a16001f344a5f748ba0947d685e5e5e5e5e5e5e5e5e5e5e5e5e5e5e6d83989c87705b46301b001f344a5f748ba0947d68533e291300000000081828374756606060606060574734210c001f344a5f74899e96826f68686868686868686868686868686868686868686353402c17001f344a5f748ba0947d68533e2913000000000000001f344a5f748b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b89837a6d5f4f3e2c1a07000a1d2f4151616f7b85898b8b8b8b8b8b8b8b8b8b8b8b8b8b8b89837a6d5f4f3e2c1a07001f344a5f74808089989f8b77624d39240f0000000005152433414c555b5e5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5e5a544a3f3123130300001a2e41525e60606060594937230f00001f344a5f748ba0947d68533e29130000000000000000000000000d22374c62778da39079644f3a250f001f344a5f748ba0978d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d94a59079644f3a250f001f344a5f748ba0947d68533e291300000000000000172c42576c83989c87705b46301b001a2e43576b8092a3988f8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d929e9b8a76634f3a261100000000000000000000000000000000000000000000081928333a3b3b3b3b382f2212010000000000001f344a5f748ba0947d685348484848484848484848484848484848484848463d301f0d001f344a5f748ba0947d685348484848484848484848484848576c83989c87705b46301b001f344a5f748ba0947d68533e291300000000000a192938444b4b4b4b4b4b4539291805001d32465b7085989e8e827d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d6f5a442f1a001f344a5f748ba0947d68533e2913000000000000001f34495d707474747474747474747474747474747474747474736f675c4f4131200f00000012233342515e697073747474747474747474747474747474736f675c4f4131200f00001f344a5f748b959ba293826f5b48331f0a00000000000615232f394146494a4a4a4a4a4a4a4a4a4a4a4a4a4a4a494640372d21130400000015283a4852535353534d41301e0a00001f344a5f748ba0947d68533e29130000000000000000000000000d22374c62778da39079644f3a250f001f344a5f748ba0a8a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a6a59079644f3a250f001f344a5f748ba0947d68533e291300000000000000172c42576c83989c87705b46301b001e33485d71879b9b897a7777777777777777777777777777777777777777778090a3927d68543f2a1500000000000000000000000000000000000000000000132637454f505050504c40301e0b0000000000001f344a5f748ba0947d68533e363636363636363636363636363636363636342d221303001f344a5f748ba0947d68533e333333333333333333333342576c83989c87705b46301b001f344a5f748ba0947d68533e29130000000000000b1a273136363636363631281b0b0000182d4155697b8e9e9e9694949494949494949494949494949494949494866f5a442f1a001f344a5f748ba0947d68533e2913000000000000001a2e41515d5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5e5b544a3f3123130300000005152433414c555b5e5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5e5a544a3f3123130300001f344a5f748b9f9b92857464523f2c180400000000000005121d262d323434343434343434343434343434343434312b241b1003000000001c31455866686868685f4d3a251100001f344a5f748ba0947d68533e29130000000000000000000000000d22374c62778da39079644f3a250f001f344a5f748ba09990909090909090909090909090909090909090909090909096a59079644f3a250f001f344a5f748ba0947d68533e291300000000000000172c42576c83989c87705b46301b001f344a5f748a9f94806a62626262626262626262626262626262626262626273889d96826b56402b16000000000000000000000000000000000000000000001b2f435563666666665e4d3a26110000000000001f344a5f748ba0947d68534b4b4b4b4b4b4b4b4b4b4b4b4b4b4b4b4b4b4b494031210e001f344a5f748ba0947d68533e291e1e1e1e1e1e1e1e1e2c42576c83989c87705b46301b001f344a5f748ba0947d68533e2913000000000000000a151d2021212121201d150a0000001226394c5e6f808e989ea0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a09b866f5a442f1a001f344a5f748ba0947d68533e29130000000000000011233341494a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a494640372d21130400000000000615232f394146494a4a4a4a4a4a4a4a4a4a4a4a4a4a4a494640372d2113040000001f344a5f748b8a8780736657463522100000000000000000000a12181d1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1c1711080000000000001f344a5f747d7d7d7d68533e281300001f344a5f748ba0947d68533e29130000000000000000000000000d22374c62778da39079644f3a250f001f344a5f748ba0937c79797979797979797979797979797979797979797979798fa49079644f3a250f001f344a5f748ba0947d68533e291300000000000000172c42576c83989c87705b46301b001f344a5f748ba0947d68534c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c5c72889d97826b56402b16000000000000000000000000000000000000000000001e33485d727b7b7b7b69543f2a140000000000001f344a5f748ba0947d6860606060606060606060606060606060606060605d4f3e2b16001f344a5f748ba0947d68533e291300000000000000172c42576c83989c87705b46301b001f344a5f748ba0947d68533e2913000000000000000002080b0b0b0b0b0b0802000000000a1d2f4151616f7b85898b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b866f5a442f1a001f344a5f748ba0947d68533e2913000000000000000515232e34343434343434343434343434343434343434343434312c241b10030000000000000005121d262d323434343434343434343434343434343434312b241b1003000000001f34495d707474726b62564839281705000000000000000000000000000000000000000000000000000000000000000000000000000000001f344a5f748b94947d68533e291300001f344a5f748ba0947d68533e29130000000000000000000000000d22374c62778da39079644f3a250f001f344a5f748ba0937c67646464646464646464646464646464646464646464788fa49079644f3a250f001f344a5f748ba0947d68533e291300000000000000172c42576c83989c87705b46301b001f344a5f748ba0947d68533e3737373737373737373737373737373737475c72889d97826b56402b16000000000000000000000000000000000000000000001e33485e73899191806a543f2a150000000000001f344a5f748ba0947d7676767676767676767676767676767676767676766d5a45301b001f344a5f748ba0947d68533e291300000000000000172c42576c83989c87705b46301b001f344a5f748ba0947d68533e2913000000000000000000000000000000000000000000000012233342515e69707374747474747474747474747474747474747474746b58432e19001f344a5f748ba0947d68533e2913000000000000000005111a1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1c18110800000000000000000000000a12181d1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1c1711080000000000001a2e41515d5f5f5d584f45382a1b0b0000000000000000000000060c1012121212121212121212121212121212120f0b04000000000000001f344a5f748ba0947d68533e291300001f344a5f748ba0947d68533e29130000000000000000000000000d22374c62778da39079644f3a250f001f344a5f748ba0937c67524f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f63788fa49079644f3a250f001f344a5f748ba0947d68533e291300000000000000172c42576c83989c87705b46301b001f344a5f748ba0947d68533e2922222222222222222222222222222232475c72889d97826b56402b16000000000000000000000000000000000000000000001e33485e73899f95806a543f2a150000000000001f344a5f748ba0988c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c87705b46301b001f344a5f748ba0947d68533e291300000000000000172c42576c83989c87705b46301b001f344a5f748b8b8b7d68533e2913000000000000000000000000000000000000000000000005152433414c555b5e5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5b4e3c2915001f344a5f748b8b8b7d68533e29130000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000011233341494a4a48433c32271a0c0000000000000000000007111a21252727272727272727272727272727272727241f180f0400000000001f344a5f748b8b8b7d68533e291300001f344a5f748ba0947d68533e29130000000000000000000000000d22374c62778da39079644f3a250f001f344a5f748ba0937c67523c3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a4e63788fa49079644f3a250f001f344a5f748ba0947d68533e291300000000000000172c42576c83989c87705b46301b001f344a5f748ba0947d68533e2913111111111111111111111111111d32475c72889d97826b56402b16000000081014151515151515151515151515151515151e33485e73899f95806a543f2a15110a000000001f344a5f748ba0a7a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1a19c87705b46301b001f344a5f748ba0947d68533e291300000000000000172c42576c83989c87705b46301b001f34495d707474747466523d28130000000000000000000000000000000000000000000000000615232f394146494a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a473e301f0d001f34495d707474747466523d2813000000000000000000070e1313131313131313131313131313131313131313131313131313131313131313120c030000000000050d11121212120f09000000000000000000000000000000000000000515232e343434332f28201509000000000000000000000c19242e353a3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c39332b221609000000001f34495d707474747466523d281300001f344a5f748ba0947d68533e29130000000000000000000000000d22374c62778da39079644f3a250f001f344a5f748ba0937c67523c27252525252525252525252525252525384e63788fa49079644f3a250f001f344a5f748ba0947d68533e291300000000000000172c42576c83989c87705b46301b001f344a5f748ba0947d68533e2926262626262626262626262626262632475c72889d97826b56402b1600000e1a24292a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a33485e73899f95806a543f2a2a261d110300001f344a5f748ba09c939393939393939393939393939393939393939f9c87705b46301b001f344a5f748ba0947d68533e291300000000000000172c42576c83989c87705b46301b001a2e41515d5f5f5f5f584836230e0000000000000000000000000000000000000000000000000005121d262d32343434343434343434343434343434343434343434332b201201001a2e41515d5f5f5f5f584836230e00000000000000000d19232829292929292929292929292929292929292929292929292929292929292929262015070000000c18212627272727241d110400000000000000000000000000000000000005111a1f1f1f1e1a140d03000000000000000000000d1c2a3641494f52525252525252525252525252525252514e473e3327190a0000001a2e41515d5f5f5f5f584836230e00001f344a5f748ba0947d68533e29130000000000000000000000000d22374c62778da39079644f3a250f001f344a5f748ba0937c67523c27120f0f0f0f0f0f0f0f0f0f0f0f0f23384e63788fa49079644f3a250f001f344a5f748ba0947d68533e291300000000000000172c42576c83989c87705b46301b001f344a5f748ba0947d68533e3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b475c72889d97826b56402b16000c1d2c373e3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f485e73899f95806a543f3f3f3a2f211000001f344a5f748ba0947d7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c83989c87705b46301b001f344a5f748ba0947d68533e291300000000000000172c42576c83989c87705b46301b0011233341494a4a4a4a453a2b19070000000000000000000000000000000000000000000000000000000a12181d1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1e180f02000011233341494a4a4a4a453a2b1907000000000000000b1c2b363d3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3b32251604000a1b2a353b3c3c3c3c392f221200000000000000000000000000000000000000000000000000000000000000000000000000000b1c2b3a48535d646767676767676767676767676767676766625b514537281807000011233341494a4a4a4a453a2b190700001f344a5f748ba0947d68533e29130000000000000000000000000d22374c62778da19079644f3a250f001f344a5f748ba0937c67523c27120000000000000000000000000e23384e63788fa49079644f3a250f001f344a5f748b94947d68533e291300000000000000172c42576c83949487705b46301b001f344a5f748ba0947d6853505050505050505050505050505050505050505c72889d97826b56402b160016293b4953545454545454545454545454545454545454545e73899f95806a545454544c3f2d1b07001f344a5f748ba0947d686767676767676767676767676767676c83989c87705b46301b001f344a5f748ba0947d68533e291300000000000000172c42576c83989c87705b46301b000515232e343434343431281c0d00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000515232e343434343431281c0d000000000000000015283a4852535353535353535353535353535353535353535353535353535353535353534f4333210e001528394750525252524c402f1d0a000000000000000000000000000000000005111a1f1f1a130a00000000000000000000000417283949586670787c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7b776e63554636241300000515232e343434343431281c0d0000001f344a5f748b8c8c7d68533e29130000000000000000000000000d22374c62778c8c8c79644f3a250f001f344a5f748ba0937c67523c27121212121212121212121212121223384e63788fa49079644f3a250f001f344a5f747d7d7d7d68533e281300000000000000172c42576c7d7d7d7d705b46301b001f344a5f748ba0947d6866666666666666666666666666666666666666666675899e95806b56402b16001d314558676a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a73899f95806a6a6a6a695d4a36220d001f344a5f748ba0947d685352525252525252525252525252576c83989c87705b46301b001f344a5f748ba0947d68533e291300000000000000172c42576c83989c87705b46301b000005111a1f1f1f1f1f1c150b0000000000000000000000000000000000000000000000000000050d111212121212100a01000000000000000000020b101212121212110c040000000005111a1f1f1f1f1f1c150b0000000000000000001c314558666868686868686868686868686868686868686868686868686868686868686861513e2915001c31445764676767675e4d392511000000000000000000000000000000000515232e34342e261c10030000000000000000000e213446576776838d91939393939393939393939393939393918b8073645342301d09000005111a1f1f1f1f1f1c150b000000001f34495d707676767566523d28130000000507070707060200000c21364b607276767674634e39240f001f344a5f748ba0937c67523c27272727272727272727272727272727384e63788fa49079644f3a250f001c31455866686868685f4d3a25110000000000000015293e5161686868686454412d19001f344a5f748ba0947d7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b8392a5917c68533e2914001f344a5f74808080808080808080808080808080808080808080899f95808080808079644f3a250f001f344a5f748ba0947d68533e3c3c3c3c3c3c3c3c3c3c3c42576c83989c87705b46301b001f344a5f748ba0947d68533e291300000000000000172c42576c83989c87705b46301b00000000000000000000000000000000000000000000000000000000000000000000000000000c1821262727272727251e13050000000000000007141f2527272727272620170a00000000000000000000000000000000000000000000001f344a5f747d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d6c57422c17001f344a5f747c7c7c7c68533e28130000000000000000000000000000000011233341494942392e211303000000000000000015293d5063758695a0a2a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1a39e9182715f4c39251100000000000000000000000000000000001a2e41525e60606060594937230f0009141a1d1d1d1d1c160e02081d3144545f606060605646331f0b001f344a5f748ba0937c67523c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c4e63788fa49079644f3a250f0015283a4852535353534d41301e0a070707070600000e2133434f535353535046372512001f344a5f748ba09b919191919191919191919191919191919191919191919196a1998875614e392510001f344a5f748b959595959595959595959595959595959595959598a69e959595959079644f3a250f001f344a5f748ba0947d685340404040404040404040404042576c83989c87705b46301b001f344a5f748ba0947d68533e291300000000000000172c42576c83989c87705b46301b0000030f171c1d1d1d1d1d1d1d1d1d1d1d1d1d1d1d1d1d1d1d1d1d1d1b150c0000000000000a1b2a353b3c3c3c3c3c39302314040000000000051625323a3c3c3c3c3c3b342819080000030f171c1d1d1d1d1a1a1d1d1d1d1c170e0300001f344a5f748b9494949494949494949494949494949494949494949494949494949494836c57422c17001f344a5f748b93937d68533e2913000000000000000000000000000000001a2e41515d5d564b3f31211100000000000000001b3044586d8093a4968d8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8f9aa08f7c6854402b1600000410191d1e19120800000000000000122434424a4b4b4b4b463b2b1a070c1b272f32323232312a1f1202142636434a4b4b4b4b4438281604001f344a5f748ba0937c67525252525252525252525252525252525252525263788fa49079644f3a250f000b1c2b363d3e3e3e3e3a3023161b1d1d1d1d1a140a041625323b3e3e3e3e3c34281908001f344a5f748ba0aca7a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a39f978a7a6a5845321e0a001f344a5f748ba0aba59f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9fa0aca69f9f9f9f9079644f3a250f001f344a5f748ba0947d685656565656565656565656565656576c83989c87705b46301b001f344a5f748ba0947d68533e291300000000000000172c42576c83989c87705b46301b000413212b313232323232323232323232323232323232323232323230281d0f0000000000152839475052525252524d413221110000000002132334434e52525252525046372512000413212b31323232322e2f32323232312b201303001f344a5f748ba0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a098836c57422c17001f344a5f748ba0947d68533e2913000000000000000000000000000000001f34495d7072695d4f3f2f1d0b000000000000001f34495e73889c9987797676767676767676767676767676767c8b9e97836e59442f1a000514222c32332e251b0f0200000000000616242f353636363632291d0d07192a384347474747453d301f0e08182630353636363631271a0a00001f344a5f748a9f94806c6767676767676767676767676767676767676767697a8fa48f79644f3a250f00000d19232829292928251e1f2a30323232322f271b0d07152026292929292721170a00001f344a5f748ba0a7988f8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8b84796c5d4c3b281502001f344a5f748ba0ab9689898989898989898989898989898989898ea098898989898979644f3a250f001f34495e73899e9682706b6b6b6b6b6b6b6b6b6b6b6b6b6b6b73869a9b86705b46301b001f344a5f748ba0947d68533e291300000000000000172c42576c83989c87705b46301b001022323e4647474747474747474747474747474747474747474747443b2d1c0a000000001c3144576467676767675f503f2f1e0e00000010203041516167676767676355422e1a001022323e4647474747424347474747463e31210f001f344a5f748b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b836c57422c17001f344a5f748ba0947d68533e2913000000000000000000000000000000001f344a5f74867a6d5d4c3a2815020000000000001f344a5f748ba0947d696060606060606060606060606060606e83989b87705b46301b001122323f474841382d201202000000000006121b20212121211e170c000f233648565c5c5c5c5a4e3d2a160208141c20212121201d150a0000001d32475c71869a9b8b7d7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c87979e8a76614c37220d000000070e1313131313111e2f3c454747474743392b1a08030c1213131313120d050000001f344a5f748ba09b897a7777777777777777777777777777777777777777777570675b4e3f2e1d0c00001f344a5f748593a197887a737373737373737373737373737373899f95807373737372614d39240f001c31465b6f84979f8f848282828282828282828282828282828592a395826c58432e19001f344a5f748ba0947d68533e291300000000000000172c42576c83989c87705b46301b00192d3f505b5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c584b3a2713000000001f344a5f747c7c7c7c7c6e5d4d3c2c1b0b000d1d2e3e4e5f6f7c7c7c7c7c715c47321c00192d3f505b5c5c5c5c55565c5c5c5c5a4f3e2b18001f34495d70747474747474747474747474747474747474747474747474747474747474746955412c17001f344a5f748ba0947d68533e2913000000000000000000000000000000001f344a5f748b8c7b6a5744311d090000000000001f344a5f748ba0947d68534b4b4b4b4b4b4b4b4b4b4b4b4b576c83989c87705b46301b00192d40515c5d544a3e30201000000000000000070b0b0b0b0b09030000152a3e5266727272726c5a45311c060001080b0b0b0b0b080200000000192e42566a7d8f9f9b9393939393939393939393939393939393939393939399a393826e5b47331e090000000000000000000015293c4d595c5c5c5c5749382511000000000000000000000000001f344a5f748ba094806a626262626262626262626262626262626262626262605c544a3d3021100000001c314457667483919f988b7d70625e5e5e5e5e5e5e5e5e5e5e73899f95806a5e5e5e5d5444321e0a00182c4054677a8c9ca09897979797979797979797979797979799a29a897764513d2915001f344a5f748ba0947d68533e291300000000000000172c42576c83989c87705b46301b001e33485c6e727272727272727272727272727272727272727272726956412d18000000001e32475a6b7c8d93938c7b6b5a4a3928180a1a2b3b4c5c6c7d8e93938b7a6a5844301b001e33485c6e727272716466727272726d5b47321d001a2e41515d5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5a4c3a2612001f344a5f748ba0947d68533e2913000000000000000000000000000000001f344a5f748b998874604c38240f0000000000001f344a5f748ba0947d68533e363636363636363636363642576c83989c87705b46301b001e33485d6f71675c4e3e2e1d0b000000000000000000000000000000061a2f43586d82888886705c47311c07000000000000000000000000000013273a4d6071828f9aa0a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1a09c92857564523f2b1804000000000000000000001a2f44586b727272726754402b16020000000000000000000000001f344a5f748ba0947d68534c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4b4740372c1f12030000001528394856647282909e9b8e807365584b484848484848485e73899f95806a544848484236271502001125384b5d6e7d8c969c9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9b958a7b6b5a4835220e001f344a5f748b9d947d68533e291300000000000000172c42576c83989c87705b46301b001f344a5f74888888888888888888888888888888888888888888846e58432e1900000000182b3d4e5e6e8090a099897867574636251727384859697a8b9b9e8e7d6d5c4c3b2815001f344a5f748888887d686a80888888735e48331e0011233341494a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a463c2e1d0a001f344a5f748ba0947d68533e2913000000000000000000000000000000001f344a5f748ba0907b66513d28130000000000001f344a5f748ba0947d68533e292121212121212121212c42576c83989c87705b46301b001f344a5f7485796c5c4c3a27140100000000000000000000000000000b1f34495d72879b95806b57422d190400000000000000000000000000000b1e30425362717d868b8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c88807466574635220f00000000000000000000001b30455a6f848888836e5945301b070000000000000000000000001f344a5f748ba0947d68533e3737373737373737373737373737373737373736332d241a0f02000000000a1b2a3847556371808f9d9e918476685b4e4033333333485e73899f95806a543f33332e2518090000081b2d3f505f6d7982878888888888888888888888888888888782776b5d4d3c2b1805001f344a5f748888887d68533e291300000000000000172c42576c83888887705b46301b001f344a5f748b9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d99846e58432e19000000000e1f30405061718292a3968675645443332435455666768898a19180705f4f3e2e1d0c001f344a5f748b9d947d686a80959d89735e48331e000515232e3434343434343434343434343434343434343434343434343434343434343434322a1e1000001f344a5f748ba0947d68533e2913000000000000000000000000000000001f344a5f748ba0947d68533e29130000000000001f344a5f748ba0947d68533e29130b0b0b0b0b0b0b172c42576c83989c87705b46301b001f344a5f748b8a7a695744311d0900000000000000000000000000001025394e62778ca1907b66523d2814000000000000000000000000000000011325354453606a7175767676767676767676767676767676767676767676736c635648392817050000000000000000000000172c40556a7d939d88735e4a35210c0000000000000000000000001f344a5f748ba0947d68533e29222222222222222222222222222222222222211e191108000000000000000c1a2937455361707d8d9ba19487796c5e5143362933485e73899f95806a543f2a1e1a130800000000102132414f5c666d70727272727272727272727272727272706c645a4d3f2f1f0d00001e33485c6e7272727164513c271200000000000000162b405568727272726b58442f1a001f344a5f748b9898989898989898989898989898989898989898846e58432e190000000001122233435364748595a393837161514032425363738595a494837262514131201000001f344a5f748ba0947d686a80959f89735e48331e000005111a1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1d170d0000001f344a5f748ba0947d68533e2913000000000000000000000000000000001f344a5f748ba0947d68533e29130000000000001f344a5f748ba0947d68533e291300000000000000172c42576c83989c87705b46301b001f344a5f748b988773604c38230f0000000000000000000000000000152a3e53687c91a08b76614c38230f0000000000000000000000000000000007172635434e575d606060606060606060606060606060606060606060605e585045392a1b0b00000000000000000000000012263b5064798ea28d78644f3a25110000000000000000000000001f344a5f748ba0947d68533e2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a261d11030000000000000000000b1927354351606e7c8b99a5978a7c6f6154473933485e73899f95806a543f2a1500000000000000041423313e4a52595c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5b5851483d2f2111010000192d3f505b5c5c5c5c554735220e000000000000001125384a575c5c5c5c594d3c2915001f344a5f74838383838383838383838383838383838383838383836e58432e19000000000004152536465667778899a090806f5e4e3f5060708292a29786756554443423130300001f344a5f748ba0947d686a80959f89735e48331e000000000000000000000000000000000000000000000000000000000000000000000000000000000000001f344a5f748ba0947d68533e2913000000000000000000000000000000001f344a5f748ba0947d68533e29130000000000001f344a5f748ba0947d68533e291300000000000000172c42576c83989c87705b46301b001f344a5f748ba08f7b66513c271200000000000000000000000000061a2f43586d82969a86715c48331e090000000000000000000000000000000000081725313b43484b4b4b4b4b4b4b4b4b4b4b4b4b4b4b4b4b4b4b4b4b4b49443d33281b0c000000000000000000000000000d21364a5f74899d927d68543f2b160100000000000000000000001f344a5f748ba0947d68533f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3a2f2110000000000000000000000917253342505e6d7b8a98a69b8d807264574a3c485e73899f95806a543f2a1500000000000000000413212d373e444747474747474747474747474747474746433d352b1f11030000001022323e4647474747423829181313130e0e131313131b2c3a4447474747453c2f1e0c001d32465a696c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6554402c170000000000000718283849596a7a8b9c9e8d7c6b5b4d5d6e7d8f9f998978685747372616050000001f344a5f748ba0947d686a80959f89735e48331e000000070e13131313131313131313131313131313131313131313131313131313131313131009000000001f344a5f748ba0947d68533e2913000000000000000000000000000000001f344a5f748ba0947d68533e29130000000000001f344a5f748ba0947d68533e291300000000000000172c42576c83989c87705b46301b001f344a5f748ba0947d68533e2913000000000000000000000000000a1f34495d72878b8b826c57422e190500000000000000000000000000000000000007131e282e33363636363e464747453c37424747474238363636363634302921160a0000000000000000000000000000081c31455a6f849897836d5944301b0700000000000000000000001f344a5f748ba0947d685454545454545454545454545454545454545454544c3f2d1b070000000000000000000007162432404f5d6b798896a49e908375685a4d485e73899f95806a543f2a15000000000000000000030f1a232a2f32323232323232323232323232323232312e2922180d01000000000413212b31323232322e2629292929282322282929292926282f32323232302a1f110100172a3c4c55575757575757575757575757575757575757575757575347372411000000000000000a1b2b3c4c5c6d7d8e9e9a8a79685a6b7b8c9c9c8c7b6b5a4a39291908000000001f344a5f748b8b8b7d686a808b8b89735e48331e00000d19232829292929292929292929292929292929292929292929292929292929292928251d110300001f344a5f748ba0947d68533e2913000000000000000000000000000000001f344a5f748b8b8b7d68533e29130000000000001f344a5f748ba0947d68533e291300000000000000172c42576c83989c87705b46301b001f344a5f748ba0947d68533e291300000000000000000000000000091f34495d707474747466523d29140000000000000000000000000000000000000000020b141a1e21212d3f505b5c5c594c46555c5c5c554735222121211f1b150e0400000000000000000000000000000001172c4055697d8b8b88735e49341f0a00000000000000000000001f34495e73899e9682706a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a695d4a36220d0000000000000000000000061422313f4d5b69778695a3a19386786b5d505e73899f95806a543f2a150000000000000000000000071524323b3e3e3e3e3d36363d3e3e3e3e3a30231c1a150e0500000000000000030f171c1d1d1d23313a3e3e3e3e3d36363d3e3e3e3e3a31231d1d1d1d1b160d01000015283a485253535353535353535353535353535353535353535353504434220f00000000000000000d1e2e3e4f5f708091a1978775677889999f8f7d6e5d4d3c2c1c0b00000000001f34495d70747474746667747474746f5c47321d000b1c2b363d3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e392f211000001f344a5f748ba0947d68533e2913000000000000000000000000000000001f34495d707474747466523d28130000000000001f344a5f748ba0947d68533e291300000000000000172c42576c83989c87705b46301b001f344a5f748ba0947d68533e291300000000000000000000000000061a2e41515d5f5f5f5f584836230f000000000000000000000000000000000000000000000005090b1e33485c6e72726a59526471727164513c27120b0b0a060000000000000000000000000000000000000012263b506373747474705d49341f0900000000000000000000001d32465b7085989e8f83808080808080808080808080808080808080808079644f3a250f0000000000000000000000000413212f3d4c5a68768593a1a496897b6e605e73899f95806a543f2a1500000000000000000000000d2032424e5353535351484852535353534d41301e0a0000000000000000000000000000000c1f31424e5353535352484851535353534e42311f0c00000000000000001c314558666868686868686868686868686868686868686868686862523f2b16000000000000000000102031415262728394a49483758696a291827060503f2f1e0e0000000000001a2e41515d5f5f5f5f58585f5f5f5f5d513f2c190015283a4852535353535353535353535353535353535353535353535353535353535353534c3f2e1b08001f344a5f748ba0947d68533e2913000000000000000000000000000000001a2e41515d5f5f5f5f584836230e0000000000001f344a5f748ba0947d68533e291300000000000000172c42576c83989c87705b46301b001f344a5f748ba0947d68533e2913000000000000000000000000000011233341494a4a4a4a453a2b1907000000000000000000000000000000000000000000000000000a1f34495e72858876655e6f82887a67523d281300000000000000000000000000000000000000000000000c203446565f5f5f5f5d51412e1a060000000000000000000000182d4155687b8e9e9f97959595959595959595959595959595959595959079644f3a250f0000000000000000000000000003111f2e3c4a58667483919fa79a8c7d716373899f95806a543f2a15000000000000000000000013283c50606868686865565866686868685f4d3a251100000000000000000000000000000012273b4e60686868686658566568686868604e3b271200000000000000001f344a5f747d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d6d58432e1900000000000000000003132334445565758697a1918493a39484736352423221110000000000000011233341494a4a4a4a45454a4a4a4a4840322210001c31455866686868686868686868686868686868686868686868686868686868686868685d4b37230e001f344a5f748ba0947d68533e29130000000000000000000000000000000011233341494a4a4a4a453a2b19070000000000001f344a5f748ba0947d68533e291300000000000000172c42576c83989c87705b46301b001f344a5f748b8b8b7d68533e291300000000000000000000000000000515232e343434343431281c0d0000000000000000000000000000000000000000000000000000071b2f435567798c83716a7c8d826f5d4b382410000000000000000000000000000000000000000000000004172838444a4a4a4a49413323110000000000000000000000001225394c5e6f808e989ea0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a09079644f3a250f000000000000000000000000000001101e2c3a4856647382909eaa9d8f827473899f95806a543f2a150000000000000000000000162b40566b7d7d7d7d735e5f747d7d7d7d68533e2813000000000000000000000000000000152a3f54697d7d7d7d745f5e737d7d7d7d69543f2a1500000000000000001f344a5f748b9494949494949494949494949494949494949494846e58432e19000000000000000000000616263747586878899aa099a197877666554534241403000000000000000515232e3434343434313134343434332d221404001f344a5f747d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7a66503b2611001f344a5f748ba0947d68533e2913000000000000000000000000000000000515232e343434343431281c0d000000000000001f344a5f748ba0947d68533e291300000000000000172c42576c83989c87705b46301b001f34495d707474747466523d281300000000000000000000000000000005111a1f1f1f1f1f1c150b000000000000000000000000000000000000000000000000000000001325374a5c6e80907d7688897664523f2d1b080000000000000000000000000000000000000000000000000b1a273034343434342e231505000000000000000000000000091c2f4151616f7b85898b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b79644f3a250f000000000000000000000000000000000e1c2a3847556371808f9daba0928577899f95806a543f2a150000000000000000000000162b40566b82949489735e5f748b94947d68533e2913000000000000000000000000000000152a3f546a8094948b745f5e73899494806a543f2a1500000000000000001f344a5f748ba0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a099846e58432e1900000000000000000000000919293a4a5b6b7b8d9faf9c8a796958483727170600000000000000000005111a1f1f1f1f1f1c1d1f1f1f1f1e19110500001f344a5f748b94949494949494949494949494949494949494949494949494949494917b66503b2611001f344a5f748ba0947d68533e291313131313131313131313120d040000000005111a1f1f1f1f1f1c150b00000000000000001f344a5f748ba0947d68533e291300000000000000172c42576c83989c87705b46301b001a2e41515d5f5f5f5f584836230e000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000081a2d3f516375888a82907d6b5947342210000000000000000000000000000000000000000000000000000009141c1f1f1f1f1f1a1105000000000000000000000000000012233342515e687073747474747474747474747474747474747474747473624e39240f00000000000000000000000000000000000c1b2937455361707d8d9ba9a395888a9f95806a543f2a150000000000000000000000162b40566b82979f89735e5f748ba0947d68533e2913000000000000000000000000000000152a3f546a8095a08b745f5e73899f95806a543f2a1500000000000000001f344a5f748b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b846e58432e1900000000000000000000000a1a2a3b4b5b6b7b8c9fb09b8a796959483828180800000000000000000000000000000000000000000000000000000000001f344a5f748ba0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0917b66503b2611001f344a5f748ba0947d68533e29292929292929292929292927211609000000000000000000000000000000000000000000001f344a5f748ba0947d68533e291300000000000000172c42576c83989c87705b46301b0011233341494a4a4a4a453a2b1907000000000000000002080c0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0d0904000000000000000000000000000000000000000f223446586a7c8b8b8572604e3c29170500000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005152433414c555b5e5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5e5545331f0b0000000000000000000000000000000000000b1927354351606e7c8b99a8a69999a695806a543f2a150000000000000000000000162b40566b828b8b89735e5f748b8b8b7d68533e2913000000000000000000000000000000152a3f546a808b8b8b745f5e73898b8b806a543f2a1500000000000000001f34495d70747474747474747474747474747474747474747474746a57422d180000000000000000000008182838485869798a9aa19ba397877666564636261505000000000000000000000913191b1b1b1b1a150c00000000000000001f344a5f748b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b7b66503b2611001f344a5f748ba0947d68533e3e3e3e3e3e3e3e3e3e3e3e3e3c342718060000030f171c1d1d1d1d1a130900000000000000001f344a5f748ba0947d68533e291300000000000000172c42576c83989c87705b46301b000515232e343434343431281c0d00000000000000040e161d2123232323232323232323232323232323232323232323221e18100700000000000000000000000000000000000416293b4d5f70747474675543301e0c00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000615232f394146484a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a494337271603000000000000000000000000000000000000000917253442505f6d7b8a98a6adadab95806a543f2a150000000000000000000000152a3f5468747474746f5c5d707474747466523d281300000000000000000000000000000014293e536774747474705d5c6f7474747467533e291400000000000000001a2e41515d5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5a4d3b281400000000000000000005152536465666768797a2928694a59585746453433323130300000000000000000c1a262e303030302f281e10000000000000001f34495d7074747474747474747474747474747474747474747474747474747474747473634f3a2510001f344a5f748ba0947d6853535353535353535353535353535045362411000413212b31323232322e261a0b000000000000001f344a5f748ba0947d68533e291300000000000000172c42576c83989c87705b46301b000005111a1f1f1f1f1f1c150b000000000000000916212a31363838383838383838383838383838383838383838383837332c23190d00000000000000000000000000000000000c1e3042525d5f5f5f58493825130100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005121c252d31333434343434343434343434343434343434343434343026190a00000000000000000000000000000000000000000008162432414f5d6b798896a4b2ab95806a543f2a1500000000000000000000001125394a595f5f5f5f5d51515d5f5f5f5f584836230e00000000000000000000000000000010243749585f5f5f5f5d51515d5f5f5f5f5849372410000000000000000011233341494a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a473d2f1e0b000000000000000003132333435364748595a59484768797a29282716151413121100000000000000007192a384246464646443b2e1e0c0000000000001a2e41515d5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f564634200c001f344a5f748a9f95826e68686868686868686868686868686353402c17001022323e464747474742382918050000000000001f344a5f748ba0947d68533e291300000000000000172c42576c83989c87705b46301b000000000000000000000000000000000000000a1927333d464b4e4e4e4e4e4e4e4e4e4e4e4e4e4e4e4e4e4e4e4e4e4e4c4740362a1d0f000000000000000000000000000000000113243441494a4a4a453b2c1a080000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000912181c1e1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1b14090000000000000000000000000000000000000000000000061423313f4d5b69778695a0a095806a543f2a150000000000000000000000091b2d3b464a4a4a4a484041494a4a4a4a453a2b1907000000000000000000000000000000081a2c3b454a4a4a4a494140484a4a4a4a453b2c1a0800000000000000000515232e3434343434343434343434343434343434343434343434322b1f11000000000000000000102131415161718292a297877668788999a090806f5f4f3f2e1e0e00000000000010243748565b5b5b5b584c3b281500000000000011233341494a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4438281704001d32475c7085999e8d827d7d7d7d7d7d7d7d7d7d7d7d7d7d6f5a442f1a00192d3f505b5c5c5c5c554735220e0000000000001f344a5f748ba0947d68533e291300000000000000172c42576c83989c87705b46301b00000410191d1e1e1e1e1b150b0000000000081928374550596063636363636363636363636363636363636363636363615b53483b2d1d0d000000000000000000000000000000000616242e3434343431291d0e0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000413212f3d4c5a6876858b8b8b806a543f2a150000000000000000000000000f1d2a3234343434332d2e343434343431281c0d00000000000000000000000000000000000e1d293134343434342e2d333434343431291d0e0000000000000000000005111a1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1e180e0100000000000000000e1e2e3f4f5f6f8090a0998978685a6a7a8b9b9e8e7d6d5d4c3c2c1c0c0000000000162b3f5366707070706a58442f1a0000000000000515232e343434343434343434343434343434343434343434343434343434343434343430271a0b0000192d4155697c8e9e9e9694949494949494949494949494866f5a442f1a001e33485c6e7272727164513c27120000000000001f344a5f748b8b8b7d68533e291300000000000000172c42576c838b8b87705b46301b000514222c323333333330281c0d000000021426374655626d7478787878787878787878787878787878787878787878766f66594b3b2b19070000000000000000000000000000000006121a1f1f1f1f1d160c000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000040b0f11111111111111111111111111111111111111111111100d080100000000000000000000000000000000000000000000000000000000000003111f2e3c4a5866737474747467533e2914000000000000000000000000000c171d1f1f1f1f1e191a1f1f1f1f1f1c150b000000000000000000000000000000000000000c161d1f1f1f1f1f1a191e1f1f1f1f1d160c0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000c1c2c3c4c5d6d7d8e9e9c8c7b6b5a4d5d6d7d8e9e9b8b7a6a5a4a3a2a1909000000071b3044596d838787846f5a45301b0000000000000005111a1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1c14090000001226394c5e70808e999fa0a0a0a0a0a0a0a0a0a0a0a09b866f5a442f1a001f344a5f748888887d68533e29130000000000001f34495d707474747466523d281300000000000000172c415569747474746d5945301b001122323f474848484844392b1a0700000c1f324455647380898d8f8f8f8f8f8f8f8f8f8f8f8f8f8f8f8f8f8f8f8f8f8b83776959483724110000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000610191f242626262626262626262626262626262626262626262625221c150b01000000000000000000000000000000000000000000000000000000000001101e2c3a48565f5f5f5f5f5849372410000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000040c10111111111111110e070000000000000000000009192a3a4a5a6a7a8b9b9e8e7d6d5d4d3f4f5f6f8090a09989786858473727170700000c20354a5e73889c94806a55412c180000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000a1d2f415161707c85898b8b8b8b8b8b8b8b8b8b8b8b8b866f5a442f1a001f344a5f748b9d947d68533e29130000000000001a2e41515d5f5f5f5f584836230e0000000000000012263a4c5a5f5f5f5f5c4f3d2a1600192d40515c5e5e5e5e574937230f000014283b4e617283919da3a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a39f9588776653402d19050000000000000000000000000000070e11111111100d050000000000000000000000000000000000000000080f13151515151515151515151515151515151515151515140f060000000000000b17232c33393b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3a3731281e12050000000000000000000000000000000000000000000000000000000000000e1c2a38444a4a4a4a4a453b2c1a0800000000000000000000000000000000000000000000070b0b0b0b0b090300000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000040a0b0b0b0b0a0600000000000b17202526262626262626221a0f010000000000000006172737475868788999a090806f5f4f3f31415161718292a2968675655545352514040011253a4f63788da28f7965513c271300000000000000000000000000000410181d1e19110608131b1e1d170e020000000000000000000000000000000000000012233443515e69707374747474747474747474747474746b58432e19001f344a5f748ba0947d68533e291300000000000011233341494a4a4a4a453a2b1907000000000000000a1d2e3c464a4a4a4a483e31200e001e33485d6f7373737366533e291400001a2e43576a7d91a199908f8f8f8f8f8f8f8f8f8f8f8f8f8f8f8f8f8f8f8f9096a39583705c48341f0b000000000000000000000000010f1a22262626262521180c000000000000000000000000000000000009131c23282a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2822180b000000000c1b293540484d505050505050505050505050505050505050505050504f4b443b302214050000000000000000000000000000000000000000000000000000000000000c1b2730343434343431291d0e00000000000000000000000000000000000000000006121b20212121211e170c00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000010e181f21212121201a11050000091a28343a3b3b3b3b3b3b3b362c1f0f00000000000000122435455565758696a2928271615141312333435363738494a494847363534232221000162b3f54687d929e8a75604b37220e000000000000000000000000000916222c32332d241619262f33322b20130700000000000000000000000000000000000005162534414c555b5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5b4e3c2915001f344a5f748ba0947d68533e29130000000000000515232e343434343431281c0d000000000000000000101e2a3234343434332c211302001f344a5f74898989806a543f2a1500001d32475c71869a9b897c7878787878787878787878787878787878787878798595a08c77624d38230e0000000000000000000000000f1f2c363b3b3b3b3b352a1c0c0000000000000000000000000000000e1b2630373d3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3d35291a0800000a1a2a3947525c62666666666666666666666666666666666666666666666460574d403223130200000000000000000000000000000000000000000000000000000000000009141c1f1f1f1f1f1d160c0000000000000000000000000000000000000000000616242f353636363632291d0d000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000101f2b3336363636342e23140400142738464f505050505050504a3d2c1a070000000000001a2e415263738494a09585746453433323152535455566768697a091827061503f2c18001b3044596d83979a85705b46321d080000000000000000000000010f1b27333f474841342528374348463d3125180c0000000000000000000000000000000000000716232f3941474a4a4a4a4a4a4a4a4a4a4a4a4a4a4a473e301f0d001f344a5f748ba0947d68533e29130000000000000005111a1f1f1f1f1f1c150b00000000000000000000000d171d1f1f1f1f1e190f0300001f344a5f748b9f95806a543f2a1500001f344a5f748a9f947d6b636363636363636363636363636363636363636366798ea39079644f3a250f0000000000000000000000071a2c3d4a5050505050483a291703000000000000000000000000000f1e2c38434b51545454545454545454545454545454545454545454524737251200031627384857646f777b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b79746a5e5141311f0d0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000122434424a4b4b4b4b463b2b1a07000000000000000000000000000000000000000000000000000000000000000000000000000000000000000b1d2e3d484b4b4b4b4940322210001c30445663666666666666655b4a36220e0000000000001f34495d70828b8b8b87766656463626150717283848586878898b8b8b806e5b46311c001f34495e73888b8b806b56412d18040000000000000000000000111f2c3844515b5d5243323546555d5a4f4236291c0d00000000000000000000000000000000000005121d262d32343434343434343434343434343434332b201201001f344a5f748b8b8b7d68533e29130000000000000000000000000000000000000000000000000000000000000000000000000000000000001f344a5f748ba095806a543f2a1500001f344a5f748ba0947d68534e4e4e4e4e4e4e4e4e4e4e4e4e4e4e4e4e4e4e62778da39079644f3a250f00000000000000000000000e22364a5b65666666645846331e0a0000000000000000000000000c1d2d3c4a565f666a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6555422d19000d203345566675828b909191919191919191919191919191919191919191918f887c6f5f4e3d2a170400000000000000040a0e11111111111111111111111111111111111111111111100d0802000000000000000000030b0f0f0f0e0a0500000000000000001a2e41525e60606060594937230f0000000000000000000000000000000000000000000000000000000000000000000000000000000000000013273a4c5b606060605d503f2c18001f344a5f737b7b7b7b7b7b7965503b26110000000000001f34495d70747474747468584838281808000a1a2a3a4a5a6a74747474746e5b46311c001f34495d707474747464513c281300000000000000000000000b1e2f3d4a56626e70614f3e415364726c6053473a2b1a07000000000000000000000000000000000000000a12181d1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1e180f0200001f34495d707474747466523d28130000000000000000000000000000000000000000000000000000000000000000000000000000000000001f344a5f748ba095806a543f2a1500001f344a5f748ba0947d68533e38383838383838383838383838383838384c62778da39079644f3a250f00000000000001080f131515263b5065797b7b7b76614c3722151515151515130e050000000518293b4b5a67727a808080808080808080808080808080808080808080705b46301b0014283c4f627485939fa3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a39a8d7d6c5a4733200c0000000000050f181f232626262626262626262626262626262626262626262625221d150c010000000000000a161f242525231f1911070000000000001f34495d707676767566523d281300000000000000000000000000000000000000000000000000000000000000000000000000000000000000172c41566a767676766e5b46311c001f344a5f748b91919191917b66503b26110000000000001a2e41515d5f5f5f5f5f594b3b2a1a0a0000000c1c2c3c4c5a5f5f5f5f5f5c503e2b17001a2e41515d5f5f5f5f574735220e000000000000000000000014283b4d5b677380806d5c4b4e5f70827d7164584937230f00000000000000000000000000000000000000000000000000000000000000000000000000000000000000001a2e41515d5f5f5f5f584836230e0000000000000000000000000000000000000000000000000000000000000000000000000000000000001f344a5f748a9f95806a543f2a1500001f344a5f748ba0947d68533e29232323232323232323232323232323374c62778da39079644f3a250f000000000009141c23282a2a2a3b50667b91918d77624c372a2a2a2a2a2a2a2821170900000e223547596978858f949595959595959595959595959595959595959587705b46301b001a2e43576b8092a3988f8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d929e9b8a76634f3a2611000000000a17222b33383b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3731281e12050000000009192733393a3a38342d24190d00000000001f344a5f748b8c8c7d68533e291300000000000000000000000000000000000000000000000000000000000000000000000000000000000000172c42576c838c8c88725c47321d001f344a5f748ba0a3a6a7917b66503b261100000000000011233341494a4a4a4a4a463b2d1d0c00000000000e1e2e3c464a4a4a4a4a483f32210f0011233341494a4a4a4a44392a18050000000000000000000000182d42576a7985918c7a69585b6c7d8f8f837666533e29140000000000070e131313131313131313131313131313131313110a000000000000000000000000000000000011233341494a4a4a4a453a2b19070000000000000000000000000000000000000000000000000000000000000000000000000000000000001e33485d71879b95806a543f2a1500001f344a5f748ba0947d68533e29130e0e0e0e0e0e0e0e0e0e0e0e0e22374c62778da39079644f3a250f000000000e1b2630373d3f3f3f3f50667b91a38d77624c3f3f3f3f3f3f3f3f3d3427170600162a3e5164768896a2a09f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9fa89c87705b46301b001e33485d71879b9b897a7777777777777777777777777777777777777777778090a3927d68543f2a150000000b1a28343e474d50505050505050505050505050505050505050505050504b453b30231405000000142637454e4f4f4d4840372b1e0f000000001f344a5f748ba0947d68533e291300000000000000000000000000000000000000000000000000000000000000000000000000000000000000172c42576c83989d88725c47321d001f344a5f748b8d8d94a7917b66503b26110000000000000515232e343434343434322a1d0f00000000000000101e2a323434343434332d221303000515232e343434343431281b0c000000000000000000000000182d42576b7d8fa09887756467798a9b9c8b7968533f2914000000000d1923282929292929292929292929292929292928251d12040000000000000000000000000000000515232e343434343431281c0d000000000000000000000000000000000000000000000000000000000000000000000000000000000000001a2e43576b809195806a543f2a1500001f344a5f748ba0947d68533e29130000000000000000000000000d22374c62778da39079644f3a250f0000000f1e2c39434b515454545454667b91a38d77625454545454545454545145352310001b3045596d8294a3948b898989898989898989898989898989898a9b9c87705b46301b001f344a5f748a9f94806a62626262626262626262626262626262626262626273889d96826b56402b160000091a293846515b62666666666666666666666666666666666666666666666460584e413223140200001b304355626464625c53483c2d1e0d0000001f344a5f748ba0947d68533e291300000000000000000000000000000000000000000000000000000000000000000000000000000000000000172c42576c83989d88725c47321d001f34495e717777788fa4917b66503b26110000000000000005111a1f1f1f1f1f1f1d170c0000000000000000000d171d1f1f1f1f1f1e19100400000005111a1f1f1f1f1f1c150a0000000000000000000000000014283b4e5f708294a4938270748697a190806d5c4b3825100000000b1c2b363d3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e392f22110000000000000000000000000000000005111a1f1f1f1f1f1c150b000000000000000000000000000000000000000000000000000000000000000000000000000000000000000014283b4f61738593806a543f2a1500001f344a5f748ba0947d68533e29130000000000000000000000000d22374c62778da39079644f3a250f00000c1d2d3c4a565f666a6a6a6a6a6a7b91a38d776a6a6a6a6a6a6a6a6a6a63533f2b16001f34495e73889c9886767373737373737373737373737373737384999c87705b46301b001f344a5f748ba0947d68534c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c5c72889d97826b56402b1600021527384756636e767a7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b79746b5f514231200e00001f34495e737979777066594b3c2b1a0700001f344a5f748ba0947d68533e291300000000000000000000000000000000000000000000000000000000000000000000000000000000000000172c42576c83989d88725c47321d001b2f4253606263788fa4917b66503b2611000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000010d1f30425364758798a08f7d8292a3958472614f3e2d1c0b00000015283a485253535353535353535353535353535353534d402f1d09000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000c20324456667482806a543f2a1500001f344a5f748ba0947d68533e29130000000000000000000000000d22374c62778da39079644f3a250f000518293b4b5a67737a8080808080808091a38d80808080808080808080806e58432e19001f344a5f748ba0947d695e5e5e5e5e5e5e5e5e5e5e5e5e5e5e6e84999c87705b46301b001f344a5f748ba0947d68533e3737373737373737373737373737373737475c72889d97826b56402b16000c1f3244556574828a909191919191919191919191919191919191919191918f887d6f604f3d2b1805001f344a5f748b908c8377695a4937241100001f344a5f748ba0947d68533e29131212121212121212121212120f0b0500000000000000000000000000050c10121212121212121212121212172c42576c83989d88725c47321d00122535434b4e63788fa4917b66503b2611000000050d1112121212121212121212121212121212121212121212121212110c04000000000009111515110a000000000000000000000000000000000000000002121f2930364758697a8c9e9b8b8e9f9a8977665443352e271d0f00001c3145586668686868686868686868686868686868685e4c39240f00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000031527384857646e7467533e291400001f344a5f748ba0947d68533e29130000000000000000000000000d22374c62778da39079644f3a250f000e213447596978868f949595959595959ca99995959595959595959595846e58432e19001f344a5f748ba0947d685348484848484848484848484848586e84999c87705b46301b001f344a5f748ba0947d68533e2922222222222222222222222222222232475c72889d97826b56402b160014283b4e617384929ea3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a39b8e7d6d5a4734200c001f344a5f748ba0a09588776654412d1905001f344a5f748ba0947d68533e292727272727272727272727272724201910050000000000000000000611192025272727272727272727272727272c42576c83989d88725c47321d0007172530384e63788fa4917b66503b261100000c18212627272727272727272727272727272727272727272727272727262016090000000f1b252a2b261c11060000000000000000000000000000000000000f20303c444b51585e6e8091a39d9f9f8d7c6a5d565049433a2d1d0b001f344a5f747d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7c67523c27120000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000091a2a3946515b5f584937241000001f344a5f748ba0947d68533e29130000000000000000000000000d22374c62778da39079644f3a250f00162a3e5164768897a3a09f9f9f9f9f9fa3afa29f9f9f9f9f9f9f9f9f99846e58432e19001f344a5f748ba0947d68533e363636363636363636363643586e84999c87705b46301b001f344a5f748ba0947d68533e2913131313131313131313131313131d32475c72889d97826b56402b1600182d42576a7d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d929e9c8a77634f3b2612001f344a5f748b8f96a39584705d4834200b001f344a5f748ba0947d68533e3c3c3c3c3c3c3c3c3c3c3c3c3c3c39342c22170a000000000000000b18242d343a3c3c3c3c3c3c3c3c3c3c3c3c3c3c42576c83989d88725c47321d0000081423384e63788fa4917b66503b2611000a1b2a353b3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3b33271807000c1d2d393f40392e23190e0400000000000000000000000000000000182b3e4e585f656c7279808a9fb2b09b877d77716a645d574b3a2814001f344a5f748b9494949494949494949494949494937c67523c27120000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000c1b28353e464a453b2c1a0800001f344a5f748ba0947d68533e29130000000000000000000000000d22374c62778da39079644f3a250f001b3044596d8294a3958b89898989898994a49189898989898989898989846e58432e19001f344a5f748ba0947d68534b4b4b4b4b4b4b4b4b4b4b4b4b586e84999c87705b46301b001f344a5f748ba0947d68533e2929292929292929292929292929292932475c72889d97826b56402b1600182d42576c7777777777777777777777777777777777777777777777777777808fa2937d6954402b15001f34495e7278798596a08c77634d39240f001f344a5f748ba0947d68535252525252525252525252525252524e483f3428190a00000000000c1b293640484e525252525252525252525252525252576c83989d88725c47321d0000000e23384e63788fa4917b66503b2611001528394750525252525252525252525252525252525252525252525252524f4536241100172a3b4a54544b40362b21160b0100000000000000000000000000001e33475b6b737980878d949ba8b4b3a599938c868078726957432f1a001f344a5f748ba0a0a0a0a0a0a0a0a0a0a0a0a0a0937c67523c2712000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000b17222b323431291d0e0000001f344a5f748ba0947d68533e29130000000000000000000000000d22374c62778da39079644f3a250f001e33485d72889c99867773737373737b91a38d77737373737373737373736a56422d18001f344a5f748ba0947d686060606060606060606060606060606e84999c87705b46301b001f344a5f748ba0947d68533e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e475c72889d97826b56402b160014293c4e5d626262626262626262626262626262626262626262626262626272889d97826b56402b16001b2f43546163677a8fa49079644f3a250f001f344a5f748ba0947d6867676767676767676767676767676767635c5145372819080000000a1b2a3947535d63676767676767676767676767676767676c83989d88725c47321d0000000e23384e63788fa4917b66503b2611001c31445764676767676767676767676767676767676767676767676767676353412d18001d32465968695d53483e33281e1309000000000000000000000000001f344a5f74888e959ba2a09998a4a2989ca2a09a938d85705b46301b001f344a5f748b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b7c67523c27120000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000050f171d1f1d160c000000001f344a5f748ba0947d68533e29130000000000000000000000000d22374c62778da39079644f3a250f001f344a5f748ba0947d695e5e5e5e667b91a38d77625e5e5e5e5e5e5e5e5e594c3a2713001f344a5f748ba0947d767676767676767676767676767676767684999c87705b46301b001f344a5f748ba0947d6853535353535353535353535353535353535353535c72889d97826b56402b16000d1f303f494c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c5c72889d97826b56402b1600132536444c4e63788fa49079644f3a250f001f344a5f748ba0947d7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7b776f63554636251301000416283948576570777c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c83989d88725c47321d0000000e23384e63788fa4917b66503b2611001f344a5f747c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c705b46301b001f344a5f747a70655a50453b30261b100600000000000000000000001c31455a6e8397a099928c85879c9884888e959ba2927d6a55412d19001f34495d70747474747474747474747474747474747464503b261100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001f344a5f748ba0947d68533e29130000000000000000000000000d22374c62778da39079644f3a250f001f344a5f748ba0947d6853484850667b91a38d77624c4848484848484848463c2e1d0b001f344a5f748ba0988c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8d9c9c87705b46301b001f34495e73899e96826f686868686868686868686868686868686868686869768a9f95806b56402b16000212212d35373737373737373737373737373737373737373737373737475c72889d97826b56402b160008182631384e63788fa49079644f3a250f001f344a5f748ba09c9393939393939393939393939393939393918b8273645443301d0a000d203345566675838c9193939393939393939393939393939393939f9d88725c47321d0000000e23384e63788fa4917b66503b2611001f344a5f748b939393939393939393939393939393939393939393939387705b46301b001f344a5f748b83776d62584d43382d23180e03000000000000000000162b3f53687c918c857d7770879c9883737980878e8b77634f3b2612001a2e41515d5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f574735210d00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001f344a5f748ba0947d68533e29130000000000000000000000000d22374c62778da39079644f3a250f001f344a5f748ba0947d68533e3b50667b91a38d77624c3733333333333333312a1e1000001f344a5f748ba0a7a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1a2aa9c87705b46301b001c31465b6f84989e8e827d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d8594a28f7b66523d2814000003101a20222222222222222222222222222222222222222222222232475c72889d97826b56402b160000091523384e63788fa49079644f3a250f001f344a5f748ba0ada8a2a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1a39e928372604d3a26110014293c5062748594a0a2a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1a3a8af9d88725c47321d0000000e23384e63788fa4917b66503b2611001f344a5f748ba0a8a2a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1a19c87705b46301b001f344a5f748b958a80756a60554a40352b20150b00000000000000001025394d62767d77706a6370879c98836c656c727980705c4833200c0011233341494a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a44392a180500000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001f344a5f748ba0947d68533e29130000000000000000000000000d22374c62778da39079644f3a250f001f344a5f748ba0947d68533e3b50667b91a38d77624c37221e1e1e1e1e1e1c160d0000001f344a5f748b939393939393939393939393939393939393939393a09c87705b46301b00182c4054677a8d9f9e9694949494949494949494949494949494949494949498a39785725f4c38230f00000000060b131c23282a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a32475c72889d97826b56402b160000000e23384e63788fa49079644f3a250f001f344a5f748ba0a6978e8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8e99a1907c6955402c17001a2f43586c8092a3988e8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8e99a89d88725c47321d0000000e23384e63788fa4917b66503b2611001f344a5f748ba09f8e8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c87705b46301b001f344a5f748ba09d92887c72675d52473d32281d12080000000000000a1e33475a696a635c555b70879c98836c57585e656c6655412d1904000515232e34343434343434343434343434343434343431281b0c0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001f344a5f748ba0947d68533e29130000000000000000000000000d22374c62778da39079644f3a250f001f344a5f748ba0947d68533e3b50667b91a38d77624c37220d00000000000000000000001f344a5f747c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c84999c87705b46301b0014283c4f6275869b9f979595959595959595959595959595959595959595959aa492806d5a47331f0b000000000e1b2630373d3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f475c72889d97826b56402b160000000e23384e63788fa49079644f3a250f001f344a5f748ba09a88797676767676767676767676767676767a8a9c98846f5a45301b001e33485d72879b9b89797676767676767676767676767676767a8a9c9d88725c47321d0000000e23384e63788fa4917b66503b2611001f344a5f748ba09d8b7d76767676767676767676767676767676767676766d5a45301b001f344a5f74858f9aa49a8f857a6f645a4f453a30251a10050000000004172a3c4c55564f48465b70879c98836c57434a5157544838261200000005111a1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1c150a000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001f344a5f748ba0947d68533e29130000000000000000000000000d22374c62778da39079644f3a250f001f344a5f748ba0947d68533e3b50667b91a38d77624c37220d00000000000000000000001c3144576467676767676767676767676767676767676767676e84999c87705b46301b001a2e43576b80929f8f8380808080808080808080808080808080808080808087959c8a76634e3a26110000000f1e2c38434b515454545454545454545454545454545454545454545c72889d97826b56402b160000000e23384e63788fa49079644f3a250f001f344a5f748ba094806a6060606060606060606060606060606d83989c87705b46301b001f344a5f748a9f95806b6060606060606060606060606060606d83989d88725c47321d0000000e23384e63788fa4917b66503b2611001f344a5f7383909d9c8f82746760606060606060606060606060606060605d4f3e2b16001d31455867727c88929ca2978d82776c61574c42372d22170d010000000d1e2e3a41413b34465b70879c98836c5742363d4240372a1a09000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001f344a5f748ba0947d68533e29130000000000000000000000000d22374c62778da39079644f3a250f001f344a5f748ba0947d68533e3b50667b91a38d77624c37220d0000000000000000000000152839475052525252525252525252525252525252525252586e84999c87705b46301b001e33485d71879b9682706a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6b768a9f927d68543f2a1500000c1d2d3c49555f666a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a76899e97826b56402b160000000e23384e63788fa49079644f3a250f001f344a5f748ba0947d68534b4b4b4b4b4b4b4b4b4b4b4b4b576c83989c87705b46301b001f344a5f748ba095806a544b4b4b4b4b4b4b4b4b4b4b4b4b576c83989d88725c47321d0000000e23384e63788fa4917b66503b2611001c3044566572808c99a09286786b5e514b4b4b4b4b4b4b4b4b4b4b4b4b4b494031210e0016293b49555f6a75808a959f9f948a8074695f544a3f342a1e1101000000101d262c2c2730465b70878b8b836c57422c292c2b241a0c000000000000000000000000000000060d12161616130f0902000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001f344a5f748ba0947d68533e29130000000000000000000000000d22374c62778da39079644f3a250f001f344a5f748ba0947d68533e3b50667b91a38d77624c37220d00000000000000000000000a1b2a353b3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c43586e84999c87705b46301b001f344a5f748a9f947d6854545454545454545454545454545454545454545c72889d96826b56402b16000517293b4b5a67727a808080808080808080808080808080808080808080808694a597826b56402b160000000e23384e63788fa49079644f3a250f001f344a5f748ba0947d68533e363636363636363636363642576c83989c87705b46301b001f344a5f748ba095806a543f363636363636363636363642576c83989d88725c47321d0000000e23384e63788fa4917b66503b2611001427384754616e7b8995a2978a7c6f6255483b3636363636363636363636342d221303000c1d2c37424d57626d77828d98a29c92877c71675c51473c2f1f0d000000000a1217171b3045596d747474746955412c1717161108000000000000000000000000000008121a21272b2b2b28231d150a0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001f344a5f748ba0947d68533e29130000000000000000000000000d22374c62778da39079644f3a250f001f344a5f748ba0947d68533e3b50667b91a38d77624c37220d00000000000000000000000c1d2d393f40404040404040404040404040404040404043586e84999c87705b46301b001f344a5f748ba0947d68533f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f475c72889d97826b56402b16000e213447586977858f9495959595959595959595959595959595959595959599a3ac97826b56402b160000000e23384e63788fa49079644f3a250f001f344a5f748ba0947d68533e292121212121212121212c42576c83989c87705b46301b001f344a5f748ba095806a543f2a2121212121212121212c42576c83989d88725c47321d0000000e23384e63788fa4917b66503b261100091a293643505d6a7785919e9a8d807366594c3f322521212121212121211f1a10040000000e1a25303a45505a65707a85909ba4998f84796e64594d3c2a160000000000000000162a3d4f5c5f5f5f5f5a4c3a26120000000000000000000000040808050209121b252e353b4040403d3831271a0a00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001f344a5f748ba0947d68533e29130000000000000000000000000d22374c62778da39079644f3a250f001f344a5f748ba0947d68533e3b50667b91a38d77624c37220d0000000000000000000000172a3b4a5456565656565656565656565656565656565656586e84999c87705b46301b001f344a5f748ba0947d68533e2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a32475c72889d97826b56402b160015293e5164768796a2a09f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9fa0ab97826b56402b160000000e23384e63788fa49079644f3a250f001f344a5f748ba0947d68533e29130b0b0b0b0b0b0b172c42576c83989c87705b46301b001f344a5f748ba095806a543f2a150b0b0b0b0b0b0b172c42576c83989d88725c47321d0000000e23384e63788fa4917b66503b261100000b1926323f4c596673808e9b9e9184776a5d504336291c0f0b0b0b0b0b0a0600000000000008131e28333d48535d68727d88939ea1968c82766b5945301b00000000000000000e20313e484a4a4a4a463c2e1d0a0000000000000000000410191d1e19171d252e38414950555655524c4438281604000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001f344a5f748ba0947d68533e29130000000000000000000000000d22374c62778da39079644f3a250f001f344a5f748ba0947d68533e3b50667b91a38d77624c37220d00000000000000000000001d324659686b6b6b6b6b6b6b6b6b6b6b6b6b6b6b6b6b6b6b6b73869a9a86705b46301b001f344a5f748ba0947d68533e2916161616161616161616161616161d32475c72889d97826b56402b16001b3044586d8294a4958b898989898989898989898989898989898989898989898d9f97826b56402b160000000e23384e63788fa49079644f3a250f001f344a5f748ba0947d68533e291300000000000000172c42576c83989c87705b46301b001f344a5f748ba095806a543f2a1500000000000000172c42576c83989d88725c47321d0000000e23384e63788fa4917b66503b26110000000815222f3c4955626f7c8a97a295887b6e6154473a2d201306000000000000000000000000000b16202b36404b56606b75808b96a09e9488725c47321d00000000000000000213212c3334343434322a1e100000000000000000000514222c32332e2c3138414b545d64696b6a66605646331f0b000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001f344a5f748ba0947d68533e29130000000000000000000000000d22374c62778da39079644f3a250f001f344a5f748ba0947d68533e3b50667b91a38d77624c37220e0e0e0e0e0e0d07000000001f344a5f7482828282828282828282828282828282828282828592a394806c57422e19001f344a5f748ba0947d68533e2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b32475c72889d97826b56402b16001e33485d72889c99877773737373737373737373737373737373737373737373889d97826b56402b160000000e23384e63788fa49079644f3a250f001f344a5f748ba0947d68533e291300000000000000172c42576c83989c87705b46301b001f344a5f748ba095806a543f2a1500000000000000172c42576c83989d88725c47321d0000000e23384e63788fa4917b66503b26110000000004111e2b3845525f6c788693a0998c807165584b3e3124170a00000000000000000000000000030e19232e38434e58636d78838e9b9d88725c47321d000000000000000000030f191e1f1f1f1f1d170d000000000000000000001122323f47484342454c545e6770787d82807b74634e39240f000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001f344a5f748ba0947d68533e29130000000000000000000000000d22374c62778da19079644f3a250f001f344a5f748ba0947d68533e3b50667b91a38d77624c3723232323232323211b110400001f344a5f748b9797979797979797979797979797979797979799a299897764513d2914001f344a5f748ba0947d6853404040404040404040404040404040404040475c72889d97826b56402b16001f344a5f748ba095806a5e5e5e5e5e5e5e5e5e5e5e5e5e5e5e5e5e5e5e5e5e72889d97826b56402b160000000e23384e63788fa49079644f3a250f001f344a5f748ba0947d68533e291300000000000000172c42576c83989c87705b46301b001f344a5f748ba095806a543f2a1500000000000000172c42576c83989d88725c47321d00000e1a24384e63788fa4917b66503b26110000000000000d1a2734414e5b6875828f9c9d908375685c4f4235281b0e0100000000000000000000000006101b26303b46505b66707a86979d88725c47321d000000000000000000000000000000000000000000000000000000000000192d40515c5d58575a6068717a858d8e8b8c9079644f3a250f000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001f344a5f748b8c8c7d68533e29130000000000000000000000000d22374c62778c8c8c79644f3a250f001f344a5f748ba0947d68533e3b50667b91a38d77624c3838383838383838362e221302001f344a5f748b9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9b95897b6b5a4734210e001f344a5f748ba0947d6856565656565656565656565656565656565656565c72889d97826b56402b16001f344a5f748ba095806a54484848484848484848484848484848484848485c72889d97826b56402b160000000e23384e63788fa49079644f3a250f001f344a5f748ba0947d68533e291300000000000000172c42576c83989c87705b46301b001f344a5f748ba095806a543f2a1500000000000000172c42576c83989d88725c47321d000c1d2c373e4e63788fa4917b66503b261100000000000000091623303d4a5764707d8b98a19487796d5f5245382c1f1205000000000000000000030e18232d38434d58636d77838d98a39c88725c47321d000000000000000000010a1012121212110c0400000000000000000000001e33485d6f716d6c6e747b858e88807974777d79644f3a250f000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001f34495d707676767566523d28130003070707070705000000000c21364b607276767674634e39240f001f344a5f748ba0947d68534e4e50667b91a38d77624e4e4e4e4e4e4e4e4e4b4031200d001f344a5f7488888888888888888888888888888888888888888682776b5d4d3c2a1805001f34495e73899e9682706b6b6b6b6b6b6b6b6b6b6b6b6b6b6b6b6b6b6b6b6b778a9f96826b56402b16001f344a5f748ba095806a543f3333333333333333333333333333333333475c72889d97826b56402b160000000e23384e63788fa49079644f3a250f001f344a5f748ba0947d68533e291300000000000000172c42576c83989c87705b46301b001f344a5f748ba095806a543f2a1500000000000000172c42576c83989d88725c47321d0016293b49535463788fa4917b66503b2611000000000000000005121f2c394653606d7a8794a1988b7d706356493c2f221609000000000000000b15202b35404a55606a75808a95a09f958a80715c47321c000000000000000005131e25272727272620170a000000000000000000001f344a5f7486838384888f877d746c656062696d5f4c38230e000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001a2e41525e60606060594937230f0f171c1d1d1d1c1a12080000081d3144545f606060605646331f0b001f344a5f748a9f94806b63636363667b91a38d77636363636363636363635e4f3d2915001e33485c6e7272727272727272727272727272727272727272706c645a4d3f2f1e0d00001d32465b7085989f8f838282828282828282828282828282828282828282828795a08e7a67533e2a15001f344a5f748ba095806a543f2a1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e32475c72889d97826b56402b160000000e23384e63788fa49079644f3a250f001f344a5f748ba0947d68533e291300000000000000172c42576c83989c87705b46301b001f344a5f748ba095806a543f2a1500000000000000172c42576c83989d88725c47321d001d314558676a6a788fa4917b66503b2611000000000000000000010e1b2835424f5c697683909e9b8f8274675a4d403326190c0000000006121d28323d47525d67727d88929da2988d82776d6254412e190000000000000002142330393c3c3c3c3b342819080000000000000000001f344a5f7485898b88837c736a6158504b4e55585041301c0900000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000122434424a4b4b4b4b463b2b1a13212b31323232322e25190a0001142636434a4b4b4b4b4438281604001e33485d72879b9b897b78787878787b91a38d78787878787878787878786c58432d1800192d3f505b5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5b5851483c2f2111010000182d4155687b8e9e9f979797979797979797979797979797979797979797979aa29383705e4b37240f001f344a5f748ba095806a543f2a15151515151515151515151515151d32475c72889d97826b56402b160000000e23384e63788fa49079644f3a250f001f344a5f748ba0947d68533e291313131313131313172c42576c83989c87705b46301b001f344a5f748ba095806a543f2a1513131313131313172c42576c83989d88725c47321d001f344a5f748080808fa4917b66503b2611000000070e131313131313131724313e4b586572808d999f9285786b5e5144372a1d0f00000616242f3a454f5a646f7a85909aa59a90857a6f655a5045362512000000000000000c2032414d5252525250463725120000000000000000001d32465a69707374736e6860574e453d363a41433d32231200000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000616242f353636363632291d1022323e464747474742372817050008182630353636363631271a0a00001a2f43586b8092a3988f8f8f8f8f8f8f97a6948f8f8f8f8f8f8f8f8f8f846e58432e19001022323e46474747474747474747474747474747474747474746433d352b1f11030000001225394c5e6f808e989ea0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a09f9b9184746453412e1b08001f344a5f748ba095806a543f2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a32475c72889d97826b56402b1600000e1a24384e63788fa49079644f3a250f001f344a5f748ba0947d68533e292929292929292929292c42576c83989c87705b46301b001f344a5f748ba095806a543f2a2929292929292929292c42576c83989d88725c47321d001f344a5f748b95959aa7917b66503b261100000d1923282929292929292929292e3b4754616e7b8995a296897c6f6255483b2d1d0b00122434424c57616c77828d97a29d92887d72675d53483d332718070000000000000013283c4f5f676767676355422e1a050000000000000000172a3c4c565b5e5f5e5a534c443a312921262c2e2921140500000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000006121b20212121211e170c192d3f505b5c5c5c5c554634210d000008141c20212121201d150a00000014283c4f627485949fa4a4a4a4a4a4a4a8b2a7a4a4a4a4a4a4a4a4a499846e58432e19000413212b313232323232323232323232323232323232323232312e2922180d0100000000091c2f4151616f7b85898b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8987807365564736241200001f344a5f748ba095806a543f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f475c72889d97826b56402b16000c1d2c373e4e63788fa49079644f3a250f001f344a5f748ba0947d68533e3e3e3e3e3e3e3e3e3e3e3e42576c83989c87705b46301b001f344a5f748ba095806a543f3e3e3e3e3e3e3e3e3e3e3e42576c83989d88725c47321d001f344a5f748ba0a0a0a0917b66503b2611000b1c2b363d3e3e3e3e3e3e3e3e3e3e3e3e44515e6a7785929f9a8d807266594b3a2814001a2e41525f6974808a949fa0958a80756a60554b40352b2016090000000000000000162b40566b7c7c7c7c715c47321c0700000000000000000d1e2e3a4146494a49453f3930271e150d121718150e03000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000070b0b0b0b0b0903091e33485c6e7272727164503c271300000001080b0b0b0b0b0802000000000d203345566675828c9091919191919199a79691919191919191919191846e58432e190000030f171c1d1d1d1d28343c3e3e3e3e3b33383d3e3e3e3d382d1f150e050000000000000012233342515e687073747474747474747474747474747474747474747474726b6155473829180600001f344a5f748ba095806a54545454545454545454545454545454545454545c72889d97826b56402b160016293b49535463788fa49079644f3a250f001f344a5f748ba0947d685353535353535353535353535353576c83989c87705b46301b001f344a5f748ba095806a5453535353535353535353535353576c83989d88725c47321d001f344a5f748b8b8b8b8b8b7b66503b26110015283a48525353535353535353535353535353535a6773828e9b9e9184766957432f1a001f34495d707c87929ca2988d83776d63584d43382e23180e03000000000000030707162b40566b82939388725c47321d07070500000000000000101d272d31343434302b241d140b020000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000a1f34495e72888888806a55412c1803000000000000000000000000000000031627384857646f777b7b7b7b7b7b7b91a38d7b7b7b7b7b7b7b7b7b7b7b6d58432e18000000000000000012253746505353535350444b53535353524b3d2c1906000000000000000005152433414c555b5e5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5d584f4438291a0b0000001f344a5f73899e9783706a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a768a9e96826b56402b16001d314558676a6c7c90a48f79644f3a250f001f344a5f748ba096826f6868686868686868686868686868687184999b87705b46301b001f34495e73899e9782706868686868686868686868686868687084989d88725c47321d001f34495d7074747474747473634f3a2510001c31455866686868686868686868686868686868686868707d8a97a29587705b46301b001f344a5f748b99a49b90867a70655b50463b30261b1106000000000000030f171c1d1d2b40566b82979d88725c47321d1d1d1a13090000000000000a13181c1f1f1f1b171009010000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000071b2f44596d839799846f5b46311d08000000000000000000000000000000000a1b2a3947525c626666666666667b91a38d776666666666666666666660513e2a150000000000000000192d4154646868686862525c68686868675b4935200c0000000000000000000615232f394146484a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a48433c32271a0b000000001d32465b7085989f8f838080808080808080808080808080808080808080808694a3907c68533e2914001f344a5f7480808a9a9e8a76614c38230e001f344a5f748ba09e8e827d7d7d7d7d7d7d7d7d7d7d7d7d7d7d828fa196826d58442f1a001c31465b7085989f8f827d7d7d7d7d7d7d7d7d7d7d7d7d7d7d828fa09d88725c47321d001a2e41515d5f5f5f5f5f5f5f564634200c001f344a5f747d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d899f9c87705b46301b001f344a5f748b9e93887d73685d53483e33281e1309000000000000000413212b3132323240566b82979d88725c47323232322e261a0b0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000162a3f53687c929e8974604b37220d00000000000000000000000000000000000c1b293540484e5050505050667b91a38d77625050505050505050504d4233210e00000000000000001b30465b707d7d7d7d6d5864797d7d7d78634e38230e0000000000000000000005121c252d3133343434343434343434343434343434343434343434332f282015090000000000182d4155687b8d9e9f9795959595959595959595959595959595959595959599a3978674604d392510001f344a5f748b959ca192826e5a47331e09001f344a5f748ba0ac9e96949494949494949494949494949494969f9c8b7966523e2a1500182d4155687b8d9e9e96949494949494949494949494949494969fae9d88725c47321d0011233341494a4a4a4a4a4a4a4438281704001f344a5f748b949494949494949494949494949494949494949496a59c87705b46301b001f344a5f748b8b80756b60564b40362b21160c0100000000000000001022323e4647474747566b82979d88725c4747474747423829180500000410191d1e1e1e1e1b141b1e1e1e1e1d1910040000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000011253a4e63778da18f7965503b27120000000000000000000000000000000000000b18232c34393b3b3b3b50667b91a38d77624c3b3b3b3b3b3b3b3b393124150400000000000000001b30465b70879494846e58647990948f78634e38230e0000000000000000000000000912181c1e1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1e1a140d030000000000001225394c5e6f808d989ea0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a09f9c948879685744311e0a001f344a5f748b9f9a91847363513e2b1804001f344a5f748ba0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a09e978c7d6d5c4936230f001225394c5e6f808d989ea0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a09d88725c47321d000515232e343434343434343430271a0b00001f344a5f748ba0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a09c87705b46301b001f344a5f7483786d63584e43392e23190e0400000000000000000000192d3f505b5c5c5c5c5c6b82979d88725c5c5c5c5c5c554735220e000514222c323333333330273033333333322c2214050000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000b2035495e72889c937d6a55402c17030000000000000000000000000000000000000610191f242626263b50667b91a08d77624c3726262626262626241e13060000000000000000001b30465b70879c99846e58647990a08f78634e38230e00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000091c2f4051616f7b84898b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8a8882766a5b4b39271502001f344a5f748b8a867d7365564534220f00001f344a5f748b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b89837a6d5f4f3e2c1a0700091c2f4051616f7b85898b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b88725c47321d000005111a1f1f1f1f1f1f1f1f1c14090000001f344a5f748b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b87705b46301b001f34495d7070665b51463b31261c11060000000000000000000000001e33485c6e72727272727282979d887272727272727164513c2712001122323f474848484844394448484848473f322211000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000061b2f44596d838b8b846f5a45301b060000000000000000000000000000000000000000050b0f1111263b50667b8b8b8b77624c37221111111111110f0a01000000000000000000001b30465b70878b8b846e5864798b8b8b78634e38230e000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000011233342515e687073747474747474747474747474747474747474747474726d64594c3d2d1c0a00001f34495d707474716b6155473828160500001f34495d707474747474747474747474747474747474747474736f675c4f4131200f00000011233342515e68707374747474747474747474747474747474747474746e5b46311c000000000000000000000000000000000000001f34495d70747474747474747474747474747474747474747474747474746d5945301b001a2e41515d5d53493e34291e140900000000000000000000000000001f344a5f7488888888888888989f8c8888888888887d68533e291300192d40515c5e5e5e5e5648565e5e5e5e5c51402d1900000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000162a3f5367747474746d5945301b0500000000000000000000000000000000000000000000000010253a4f637374747471604b36210c0000000000000000000000000000000000001b3045596d747474746a57627374747472614c38230d000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005152433404c555b5e5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5d5951473b2e1f0f0000001a2e41515d5f5f5d574e4437291a0a0000001a2e41515d5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5e5b544a3f3123130300000005152433404c555b5e5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5c503e2b17000000000000000000000000000000000000001a2e41515d5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5c4f3d2a160011233341494941362c21170c010000000000000000000000000000001f344a5f748b9d9d9d9d9d9da5aa9f9d9d9d9d9d947d68533e2913001e33485d6f73737373655165737373736f5d48331e0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000010243749585f5f5f5f5c4f3d2a16020000000000000000000000000000000000000000000000000c203446565f5f5f5f5e5343301c08000000000000000000000000000000000000162a3d4f5c5f5f5f5f5a4d555e5f5f5f5e5444311e090000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000615232e394046484a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a48443e352a1d100100000011233341494a4a48433b3226190b0000000011233341494a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a494640372d21130400000000000615232f394146494a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a483f32210f0000000000000000000000000000000000000011233341494a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a483e31200e000515232e34342e24190f0400000000000000000000000000000000001f344a5f748b979797979797a0a5989797979797947d68533e2913001f344a5f748989897d6853687d898989745f4a341f00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000081a2c3b454a4a4a4a483e31200e0000000000000000000000000000000000000000000000000004172838444a4a4a4a4942352514010000000000000000000000000000000000000e20313e484a4a4a4a473d43494a4a4a4943362615020000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005111c252c313334343434343434343434343434343434343434343433302a22180c00000000000515232e343434332e281f140900000000000515232e34343434343434343434343434343434343434343434312c241b10030000000000000005111c252d32343434343434343434343434343434343434343434332d221303000000000000000000000000000000000000000515232e3434343434343434343434343434343434343434343434343434332c211302000005111a1f1f1a1207000000000000000000000000000000000000001f344a5f7482828282828282979d888282828282827d68533e2913001f344a5f748b9f947d6853687d949f8b745f4a341f00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000e1d293134343434332c21130200000000000000000000000000000000000000000000000000000b1a273034343434342f251708000000000000000000000000000000000000000213212c3334343434322b3034343434342f251809000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000911181c1e1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1e1b160e050000000000000005111a1f1f1f1e1a140c020000000000000005111a1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1c18110800000000000000000000000912181d1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1e19100400000000000000000000000000000000000000000005111a1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1e190f030000000000000000000000000000000000000000000000000000000000001d324659686b6b6b6b6b6b82979d88726b6b6b6b6b6b604e3b2611001f344a5f748ba0947d6853687d94a08b745f4a341f0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000c161d1f1f1f1f1e190f030000000000000000000000000000000000000000000000000000000009141c1f1f1f1f1f1b1207000000000000000000000000000000000000000000030f191e1f1f1f1f1e181b1f1f1f1f1f1b130800000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000172a3b4a5456565656566b82979d88725c56565656565042321f0b001f344a5f748ba0947d6853687d94a08b745f4a341f00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000003090d0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0d080000000000000000000003090d0f0f0f0c06000000000000000000000000000000020a0e0f0f0f0f0e0800000000000000000000000000000000000000000000000000000000060d10111111100d06000000000000000000000c171d1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1c1710080000000000000000000000000000000001090e0f0f0f0f0e09010000000000000000000000000000000000000000000000000000000000000a1114140f07000000000000000000000000000c1d2d393f40404040566b82979d88725c47404040403c32241402001f344a5f748ba0947d6853687d93a08b745f4a341f00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000710161a1d1d1d1d1d1d1d1d1d1d1d1d1d1d1d1d1d1d1d1d1d1b160d01000000000000000710161a1d1d1d1d1d1d1d1d1d1d1d1d1d1d1d1d1d1d1d1d1d1b160d01000000000000000002080c0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0d080000000000000000000710161a1d1d1d1d1d1d1d1d1d1d1d1d1d1d1d1d1d1d1d1d1d1b160d01000000000000050f171e22252525252525252525252525252525252525252525252525252525221b1103000000000000050e171e2225252421190e0000000000000000000000000008141e2325252525231c1204000000000000000000000000000000000000000000000000000d19212626262626221a0e00000000000000000f1d2a323434343434343434343434343434343434312b241b0f030000000000000000000000000006131d2325252525231d130600000000000000000000000000000000000000000000000000000007121d252a29231a0d000000000000000000000000000f1b252a2b2b2b40566b82979d88725c47322b2b2b2820150600001f34495d72889c947d6853667a8fa08b745f4a341f00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000004101a242b2f323232323232323232323232323232323232323232302a1f11010000000004101a242b2f323232323232323232323232323232323232323232302a1f11010000000000030d161d21232323232323232323232323232323232323232323221c1306000000000003101a242b2f323232323232323232323232323232323232323232302a1f1101000000000a16222b32373a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a372e211201000000000a16212b32373a3a3a352b1e0e000000000000000000000006172631383a3a3a3a372f22130200000000000000000000000000000000000000000000000d1d2b353b3b3b3b3b362c1e0e000000000000091b2d3b464a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a494640372d201304000000000000000000000004152430383a3a3a3a3830241504000000000000000000000000000000000000000000000000050f1a242f393f3e372b1c0b0000000000000000000000000009111516162b40566b82979d88725c47321d1616130d030000001b2f44586c8092947d6853607488998b745f4a341f00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000514212d373f44474747474747474747474747474747474747474747453c2f1e0c0000000514212d373f44474747474747474747474747474747474747474747453c2f1e0c000000000915202a313638383838383838383838383838383838383838383837302415050000000514212d373f44474747474747474747474747474747474747474747453c2f1e0c0000000b1a28343e464c4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4b3f301e0b0000000b1a28343e464c4f4f4f493c2c1a0600000000000000000000112435444d4f4f4f4f4b40311f0d0000000000000000000000000000000000000000000005182a3b485050505050493c2b190600000000001125394a595f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5e5a534a3e31221201000000000000000000000f2233424c4f4f4f4f4c4233220f00000000000000000000000000000000000000000000020c17212c37414c5453493928150000000000000000000000000000000000162b40566b828b8b88725c47321d070000000000000015293d50637485947d6853576a7c8c8b745f4a341f00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000041423323f4a53595c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c594d3c29150000041423323f4a53595c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c594d3c29150000000a1927333d454b4e4e4e4e4e4e4e4e4e4e4e4e4e4e4e4e4e4e4e4e4e4b423322100000041423323f4a53595c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c594d3c29150000091a293845515a616464646464646464646464646464646464646464646464646464645d4e3b27120000091a293845515a616464645a4936220d00000000000000000000192d415361646464645e4f3c2814000000000000000000000000000000000000000000000b2034475965666666655a4935210c0000000000152a3f546874747474747474747474747474747474736f675c4f40301f0d00000000000000000000162b3e51606464646460513e2b1602000000000000000000000000000000000000000009141f29343e49545e68665744301b0000000000000000000000000000000000152a3f5468747474746e5b46311c07000000000000000d203345576775827d68534c5e6d7b86745f4a341f0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000010223242505c666e7272727272727272727272727272727272727272726b58442f1a000010223242505c666e7272727272727272727272727272727272727272726b58442f1a000008192837445059606363636363636363636363636363636363636363635f513f2b17000010223242505c666d7272727272727272727272727272727272727272726b58442f1a00021527374756636e757979797979797979797979797979797979797979797979797979796a55402b1600031527374756636d7579797865503b2610000000000000000000001c32475c70797979796b57412c17000000000000000000000000000000000000000000000e23384d63777b7b7b78644f3a240f0000000000162b40566b828b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8983796d5e4e3d2b18050000000000000000001a2f44596e797979796e59442f1a0500000000000000000000000000000000000006111c26313c46515c66707b735e48331e00000000000000000000000000000000001125394a595f5f5f5f5c503e2b170300000000000000041628394958646f746652404f5e6972705d49341f000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000091c2e4050606e7983878888888888888888888888888888888888888887705b46301b00091c2e4050606e7983878888888888888888888888888888888888888887705b46301b00021426374655626c747878787878787878787878787878787878787878786f5a45301b00081b2e3f50606e7983878888888888888888888888888888888888888887705b46301b000c1f3244556574828a8f90909090909090909090909090909090909090909090909090826b56402b16000c203244556574828a8f907b66503b2611000000000000000000001d32475c72889090836c57422c17000000000000000000000000000000000000000000000e23384e63788f919079644f3a250f0000000000162b40566b8297a0a0a0a0a0a0a0a0a0a0a0a0a0a09e978b7c6c5a4734210d0000000000000000001a2f445a6f869090866f5a442f1a0500000000000000000000000000000000040e19232e39434e59636e788389735e48331e0000000000000000000000000000000000091b2d3b464a4a4a4a483f32210f0000000000000000000a1b2b3a47525b5f584836404c565e5d51412e1a0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001125394b5d6e7d8c969c9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9c87705b46301b001125394b5d6e7d8c969c9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9c87705b46301b000c1f314354647380898d8f8f8f8f8f8f8f8f8f8f8f8f8f8f8f8f8f8f8f87705b46301b001125384b5d6e7d8c969c9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9c87705b46301b0014283b4e617384929ea4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a497826b56402b160014283c4f617384929ea4917b66503b2611000000000000000000001d32475c72889d98836c57422c17000000000000000000000000000000000000000000000e23384e63788fa49079644f3a250f0000000000162b40566b8295959595959595959595959595959597a19b8a7764503c28130000000000000000001a2f445a6f869b9b866f5a442f1a050000000000000000000000000000010b16212b36414b56606b76828b9689735e48331e0000000000000000000000000000000000000f1d2a3234343434332d221303000000000000000000000d1c29353f474a453a2b2f3a43494941332311000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000182c4054687a8d9d9f989797979797979797979797979797979797a29c87705b46301b00182c4054687a8d9d9f989797979797979797979797979797979797a29c87705b46301b0014283b4e617283919ca3a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a49c87705b46301b00182c4054677a8c9ca0989797979797979797979797979797979797979787705b46301b001a2e43576b7d91a299908f8f8f8f8f8f8f8f8f8f8f8f8f8f8f8f8f8f8f8f8f8f8f8f8f826b56402b16001a2f43576b8091a299908f7b66503b2611000000000000000000001d32475c72889d98836c57422c17000000000000000000000000000000000000000000000e23384e63788fa49079644f3a250f0000000000162b40566b808080808080808080808080808080808491a294806b56422d180000000000000000001a2f445a6f868f8f866f5a442f1a050000000000000000000000000009131e28333e48535d68737d89939e9f89735e48331e000000000000000000000000000000000000000c171d1f1f1f1f1e1910040000000000000000000000000b18232c333431281c1d272f34342e2315050000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001d32465b7084989f8f838282828282828282828282828282828285999c87705b46301b001d32465b7084989f8f838282828282828282828282828282828285999c87705b46301b001a2e43576a7d90a19a9290909090909090909090909090909090919e9c87705b46301b001c31465b6f84989f8f838282828282828282828282828282828282828282705b46301b001e33485d71869a9b897c78787878787878787878787878787878787878787878787878786a55402b16001e33485d72879b9b897b787765503b2610000000000000000000001d32475c72889d98836c57422c17000000000000000000000000000000000000000000000e23384e63788fa49079644f3a250f000000000014283d50616a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a73869a99846f5a442f1a0000000000000000001a2f44596d787878786d59442f1a04000000000000000000000006101b26303b46505b65707a86909ba3998e83735e48331e000000000000000000000000000000000000000000000000000000000000000000000000000000000000000610181e1f1c150b0a141b1f1f1a1105000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001f344a5f74899e9682706b6b6b6b6b6b6b6b6b6b6b6b6b6b6b6e84999c87705b46301b001f344a5f74899e9682706b6b6b6b6b6b6b6b6b6b6b6b6b6b6b6e84999c87705b46301b001e33485d71869a9b8a7c7979797979797979797979797979797984999c87705b46301b001f34495e73899e9682706b6b6b6b6b6b6b6b6b6b6b6b6b6b6b6b6b6b6b6b6656422e19001f344a5f748a9f95806b63636363636363636363636363636363636363636363636363635c4d3a2612001f344a5f748ba094806b6363594835210d000000000000000000001d32475c72889d98836c57422c17000000000000000000000000000000000000000000000e23384e63788fa49079644f3a250f00000000000d21334350545454545454545454545454545454586e84999b866f5a442f1a000000000001020202162a3e505e636363635e503e2a1602020201000000000000020e18232d38434d58636d77838d98a39c91867b71665744301b000000000000040c1317191a1a1a1a1a18140e06000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001f344a5f748ba0947d685656565656565656565656565656586e84999c87705b46301b001f344a5f748ba0947d685656565656565656565656565656586e84999c87705b46301b001f344a5f748b9f94806b6464646464646464646464646464646e84999c87705b46301b001f344a5f748ba0947d6856565656565656565656565656565656565656565348382613001f344a5f748ba0947d68534e4e4e4e4e4e4e4e4e4e4e4e4e4e4e4e4e4e4e4e4e4e4e4e4e4a3e2f1e0b001f344a5f748ba0947d68534d473b2b1906000000000000000000001d32475c72889d98836c57422c17000000000000000000000000000000000000000000000e23384e63788fa49079644f3a250f000000000c19242e353c3f3f3f3f3f3f3f3f3f3f3f3f3f3f43586e84999b866f5a442f1a0000000a1217171717172132414b4e4e4e4e4b4132211717171716120a00000002121f2b35404a55606a75808a95a09f94897d73695e544939281500000000010d1720272c2e2f2f2f2f2f2d29221a0f0400000000000000070e1313131313110b1113131313130e070000000000070e1313131313110a0100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001f344a5f748ba0947d685340404040404040404040404043586e84999c87705b46301b001f344a5f748ba0947d685340404040404040404040404043586e84999c87705b46301b001f344a5f748ba0947d68534f4f4f4f4f4f4f4f4f4f4f4f4f586e84999c87705b46301b001f344a5f748ba0947d6853404040404040404040404040404040404040403f372a1a09001f344a5f748ba0947d68533e38424e575e636363636363636363636363636363636363635c4d3a2612001f344a5f748ba0947d68533e342a1d0d00000000000000000000001d32475c72889d98836c57422c17000000000000000000000000000000000000000000000e23384e63788fa49079644f3a250f0000000d1c2a3641494f525252525252525252525252525252586e84999b866f5a442f1a0000101d262c2c2c2c2c2c2c2f3738383838372f2c2c2c2c2c2c2c261c0f00000f20303d48525d67727d88929da2978c82766c61574c41372b1c0b00000003111e2a343b41434444444444423d362c21140600000000000d19232829292929261e25282929292823190d0000000d19232829292928251e1204000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001f344a5f748ba0947d68533e3e3e3e3e3e3e3e3e3e3e3e43586e84999c87705b46301b001f344a5f748ba0947d68533e3e3e3e3e3e3e3e3e3e3e3e43586e84999c87705b46301b001f344a5f748ba0947d68533e3a3a3a3a3a3a3a3a3a3a3a43586e84999c87705b46301b001f344a5f748ba0947d68533e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3c34281908001f344a5f748ba0947d68533e4352606a73777878787878787878787878787878787878786a55402b16001f344a5f748ba0947d68533e29180d0000000000000000000000001d32475c72889d98836c57422c17000000000000000000000000000000000000000000000e23384e63788fa49079644f3a250f00000b1c2b3a48545d64676767676767676767676767676767676e84999b866f5a442f1a000d1e2e3a41424242424242424242424242424242424242424240392d1d0c00182b3e4e5a646f7a85909aa49a8f85796f64594f443a2f241a0d0000000212212f3c475056585a5a5a5a595751493e322415050000000b1c2b363d3e3e3e3e3a313a3e3e3e3e3d362b1c0b000b1c2b363d3e3e3e3e3a302312010000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001f344a5f748ba0947d685353535353535353535353535353586e84999c87705b46301b001f344a5f748ba0947d685353535353535353535353535353586e84999c87705b46301b001f344a5f748ba0947d685344444444444444444444444444586e84999c87705b46301b001f344a5f748ba0947d6853535353535353535353535353535353535353535046372512001f344a5f748ba0947d6853405161707d888d8f8f8f8f8f8f8f8f8f8f8f8f8f8f8f8f8f826b56402b16001f344a5f748ba0947d68533e2913000000000000000000000000001d32475c72889d98836c57422c17000000000000000000000000000000000000000000000e23384e63788fa49079644f3a250f000417283949586670787c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c84999b866f5a442f1a00172a3c4c555757575757575757575757575757575757575757554b3b2916001e33475b6c77828d97a29c92887c72675c52473d32271d1207000000000e1f303f4d59636a6e6f6f6f6f6e6c655c504233231201000015283a4852535353534e424d5353535352483a28150015283a4852535353534d41301e0a0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001f344a5f748ba0947d686868686868686868686868686868686e84999c87705b46301b001f344a5f748ba0947d686868686868686868686868686868686e84999c87705b46301b001f344a5f748ba0947d685a5a5a5a5a5a5a5a5a5a5a5a5a5a5a6e84999c87705b46301b001f344a5f748ba0947d6868686868686868686868686868686868686868686454412d19001f344a5f748ba0947d68534a5d6f808f979494949494949494999c949494949496a497826b56402b16001f344a5f748ba0947d68533e2913000000000000000000000000001d32475c72889d98836c57422c17000000000000000000000000000000000000000000000e23384e63788fa49079644f3a250f000e213446576776838d929393939393939393939393939393939393a09b866f5a442f1a001d32465a696c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c685945311c001f344a5f748a959f9f958a80756a5f554a3f352a20150a0000000000071a2c3d4e5d6b768084868686868482796e605141301e0b00001c3145586668686868604e5f68686868665845311c001c31455866686868685f4d3a25110000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001f344a5f748ba0947d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d84999c87705b46301b001f344a5f748ba0947d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d84999c87705b46301b001f344a5f748ba0947d6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f84999c87705b46301b001f344a5f748ba0947d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d705b46301b001f344a5f748ba0947d685353667a8d91837d7d7d7d7d7d7d7d8f937d7d7d7d7d889d97826b56402b16001f344a5f748ba0947d68533e2913000000000000000000000000001d32475c72889d98836c57422c17000000000000000000000000000000000000000000000e23384e63788fa49079644f3a250f00162a3d5063758695a0a2a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1a3a8b09b866f5a442f1a001f344a5f748383838383838383838383838383838383838383735e48331e001f344a5f748ba09a8d82776d62574d42372d22180d02000000000000102337495b6c7b8993999b9b9b9b99958c7d6f5f4d3b281401001f344a5f747d7d7d7d6954687d7d7d7d745f4a341f001f344a5f747d7d7d7d68533e28130000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001f344a5f748ba09d94949494949494949494949494949494949495a19c87705b46301b001f344a5f748ba09d94949494949494949494949494949494949495a19c87705b46301b001f344a5f748ba095868686868686868686868686868686868686879a9c87705b46301b001f344a5f748ba09d94949494949494949494949494949494949494949487705b46301b001f344a5f748ba0947d6853586d8296877368686868686868788f937c68686872889d97826b56402b16001f344a5f748ba0947d68533e2913000000000000000000000000001d32475c72889d98836c57422c17000000000000000000000000000000000000000000000e23384e63788fa49079644f3a250f001b3044596d8093a4968d8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8f9aa99b866f5a442f1a001f344a5f748b98989898989898989898989898989898989889735e48331e001f344a5f748ba09684796e64594e44392f24190f0400000000000000172b3f5366788a958a87878787878788918e7c6a5744301b07001f344a5f748b9494806a54687d94948b745f4a341f001f344a5f748b94947d68533e29130000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001f344a5f748ba0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a99c87705b46301b001f344a5f748ba0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a99c87705b46301b001f344a5f748ba0a29b9b9b9b9b9b9b9b9b9b9b9b9b9b9b9b9b9b9ba59c87705b46301b001f344a5f748ba0a6a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a89c87705b46301b001f344a5f748ba0947d68535b70869b866f5a535353535363788f937c67535c72889d97826b56402b16001f344a5f748ba0947d68533e2913000000000000000000000000001d32475c72889d98836c57422c17000000000000000000000000000000000000000000000e23384e63788fa49079644f3a250f001f34495e73889c9987797676767676767676767676767676767c8c9e9b866f5a442f1a001f344a5f748b9c9c9c9c9c9c9c9c9c9c9c9c9c9c9c9c9c9c89735e48331e001f344a5f748b9ea2968c82766c61564c41362c21160c0100000000001c31455a6e8396877670707070707074839687735e4a35200c001f344a5f748ba095806a54687d94a08b745f4a341f001f344a5f748ba0947d68533e29130000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001f344a5f748b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8c9c9c87705b46301b001f344a5f748b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8c9c9c87705b46301b001f344a5f748b99999999999999999999999999999999999999999aa49c87705b46301b001f344a5f748ba0978b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b9b9c87705b46301b001f344a5f748ba0947d68535b70879b866f5a443e3e3e4e63788f937c67525c72889d97826b56402b16001f344a5f748ba0947d68533e2913000000000000000000000000001d32475c72889d98836c57422c17000000000000000000000000000000000000000000000e23384e63788fa49079644f3a250f001f344a5f748ba0947d696060606060606060606060606060606f84999b866f5a442f1a001f344a5f748787878787878787878787878787878787878787735e48331e001f344a5f73828c96a19e94897d73695e53493e34291e1409000000001f34495e738897826b5c5b5b5b5b5b677c938d78634e38230e001f344a5f748b8b8b806a54687d8b8b8b745f4a341f001f344a5f748b8b8b7d68533e29130000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001f34495d7074747474747474747474747474747474747474747484999c87705b46301b001f34495d7074747474747474747474747474747474747474747484999c87705b46301b001f344a5f74848484848484848484848484848484848484848484869a9c87705b46301b001f344a5f748ba0947d747474747474747474747474747474747483989c87705b46301b001f344a5f748ba0947d68535b70879b866f5a442f29384e63788f937c67525c72889d97826b56402b16001f344a5f748ba0947d68533e2913000000000000000000000000001d32475c72889d98836c57422c17000000000000000000000000000000000000000000000e23384e63788fa49079644f3a250f001f344a5f748ba0947d68534b4b4b4b4b4b4b4b4b4b4b4b4b586e84999b866f5a442f1a001e33485c6d70707070707070707070707070707070707070706c5a46321d001c304456646e79848f99a39b91867b70665b51463b31261b110500001f344a5f748b97826b564646464652677c938f78634e38230e001f34495d707474747467536674747474705d49341f001f34495d707474747466523d28130000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001a2e41515d5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f6e84999c87705b46301b001a2e41515d5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f6e84999c87705b46301b001e32475a6a6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e84999c87705b46301b001f344a5f748ba0947d685f5f5f5f5f5f5f5f5f5f5f5f5f5f5f6c83989c87705b46301b001f344a5f748ba0947d68535b70879b866f5a443434384e63788f937c67525c72889d97826b56402b16001f344a5f748ba0947d68533e2913000000000000070e13131313131d32475c72889d98836c57422c17000000000000000000000000000000000000000000000e23384e63788fa49079644f3a250f001f344a5f748ba0947d68533e363636363636363636363643586e84999b866f5a442f1a00192c3e4f595b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b594e3d2b170014273847515c66717c87919ca3988e83786d63584e43382e221404001f344a5f748b97826b564030303c52677c938f78634e38230e001a2e41515d5f5f5f5f5849585f5f5f5f5d51412e1a001a2e41515d5f5f5f5f584836230e00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000011233341494a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a586e84999c87705b46301b0011233341494a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a586e84999c87705b46301b00182b3d4d5758585858585858585858585858585858585858586e84999c87705b46301b001f344a5f748ba0947d68534a4a4a4a4a4a4a4a4a4a4a4a4a576c83989c87705b46301b001f344a5f748ba0947d68535b70879b866f5a4a4a4a4a4e63788f937c67525c72889d97826b56402b16001f344a5f748ba0947d68533e291300000000000d192328292929292932475c72889d98836c57422c17000000000000000000000000000000000000000000000e23384e63788fa49079644f3a250f001f344a5f748ba0947d68533e292121212121212121212e43586e84999b866f5a442f1a000f21313d454646464646464646464646464646464646464646443d30200e00091a29343f4a545f69748089949fa0968b80756b60554b40322210001f344a5f748b97826b56402b2b3c52677c938f78634e38230e0011233341494a4a4a4a453b454a4a4a4a49413323110011233341494a4a4a4a453a2b19070000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000515232e3434343434343434343434343434343434343443586e84999c87705b46301b000515232e3434343434343434343434343434343434343443586e84999c87705b46301b000e1f2f3b4243434343434343434343434343434343434343586e84999c87705b46301b001f344a5f748ba0947d68533e343434343434343434343442576c83989c87705b46301b001f344a5f748ba0947d68535a6f84998670605f5f5f5f5f64798f8f7a66505c72889d97826b56402b16001f344a5f748ba0947d68533e2913000000000b1c2b363d3e3e3e3e3e3a475c72889d98836c57422c17000000000000000000000000000000000000000000000e23384e63788fa49079644f3a250f001f344a5f748ba0947d68533e29130b0b0b0b0b0b0b192e43586e84999b866f5a442f1a000313202a30303030303030343c3e3e3e3e3c343030303030302f2a1f120200000b17222d37424c57616c76828c97a19e93887d72685d513f2c19001f344a5f748b97826b564040404052677c938f78634e38230e000515232e343434343431293134343434342e231505000515232e343434343431281c0d000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001122323f4748484848484848484848484848484848484848586e84999c87705b46301b001122323f4748484848484848484848484848484848484848586e84999c87705b46301b0009192733393a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a43586e84999c87705b46301b001f344a5f748ba0947d685348484848484848484848484848576c83989c87705b46301b001f344a5f748ba0947d685355697d918c7c7474747474747683958975604c5c72889d97826b56402b16001f344a5f748ba0947d68533e29130000000015283a485253535353534e475c72889d98836c57422c17000000000000000000000000000000000000000000000e23384e63788fa49079644f3a250f001f344a5f748ba0947d68533e291300000000000000192e43586e84999b866f5a442f1a0000020e161b1b1b1b1b2436455053535353504536241b1b1b1b1a160d010000000005101a252f3a444f5a646f79858f99a49b90857a6f5c47321d001f344a5f748997826b565656565656677c938e78634e38230e000005111a1f1f1f1f1f1d161c1f1f1f1f1f1a110500000005111a1f1f1f1f1f1c150b0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000192d40515c5e5e5e5e5e5e5e5e5e5e5e5e5e5e5e5e5e5e5e5e6e84999c87705b46301b00192d40515c5e5e5e5e5e5e5e5e5e5e5e5e5e5e5e5e5e5e5e5e6e84999c87705b46301b00142637454e4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f586e84999c87705b46301b001f344a5f748ba0947d695e5e5e5e5e5e5e5e5e5e5e5e5e5e5e6d83989c87705b46301b001f344a5f748ba0947d68534e617385948f8b8b8b8b8b8b8b938e7d6b59475c72889d97826b56402b16001f344a5f748ba0947d68533e2913000000001c31455866686868686860505c72889d98836c57422c17000000000000000000000000000000000000000000000e23384e63788fa49079644f3a250f001f344a5f748ba0947d68533e291300000000000000192e43586e84999b866f5a442f1a000000000000000000172c405363686868686353402c170200000000000000000000000008121d27323d47525c67727c87929ca29889735e48331e001d32475c70859985726b6b6b6b6b6b6f80948975604b36210d000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001e33485d6f7373737373737373737373737373737373737373798a9d99846f5a45301b001e33485d6f7373737373737373737373737373737373737373798a9d99846f5a45301b001b3043556264646464646464646464646464646464646464657084999b87705b46301b001e33485d72889c998677737373737373737373737373737373798a9c99856f5a45301b001f344a5f748ba0947d685344566676848f959797979796928a7d6f5f4e475c72889d97826b56402b16001f344a5f748ba0947d68533e2913000000001f344a5f747d7d7d7d7d6e5e5c72889d98836c57422c17000000000000000000000000000000000000000000000e23384e63788fa49079644f3a250f001f344a5f748ba0947d68533e291300000000000000192e43586e84999b866f5a442f1a0000000000000000001a2f445a6f7d7d7d7d6f5a442f1a0500000000000000000000000000000a15202a353f4a545f6a74808a959f89735e48331e00192d4155697c8e9185828282828282838e91806d5a46311d0800000000000000000000000000000000020e161b1b1b1b1b1811070000000000030f171c1d1d1d1c1a12080000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001f344a5f7489898989898989898989898989898989898989898d98a2907d6955402c17001f344a5f7489898989898989898989898989898989898989898d98a2907d6955402c17001f34495e737979797979797979797979797979797979797979808ea097836d59442f1a001b2f44586d8293a4958b8989898989898989898989898989898d98a2917d6a55412d18001f344a5f748ba0947d68533e485866727a8082828282827d776d605141475c72889d97826b56402b16001f344a5f748ba0947d68533e2913010000001d32465a6a7b8c94948d7c6b5c72889d98836c57422c17000000081014151515151515151515151515151515151523384e63788fa49079644f3a250f001f344a5f748ba0947d68533e291300000000000000192e43586e84999b866f5a442f1a0000000000000000001a2f445a6f869494866f5a442f1a05000000000000000000000000000000030d18222d37424d57626c77828d89735e48331e001226394c5e70808e999797979797979891837362503d2a16020000000000000000000000000000000313202a30303030302d2418090000000413212b31323232322e25190a00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001f344a5f748b9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9fa1a0938473604d3a2612001f344a5f748b9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9fa1a0938473604d3a2612001f344a5f748b90909090909090909090909090909090909090939d9e8d7a67533f2a160015293d5164768796a2a09f9f9f9f9f9f9f9f9f9f9f9f9f9f9fa1a0948573614e3a2612001f344a5f748ba0947d68533e3a48545f666a6b6b6b6b6b68635a4f4232475c72889d97826b56402b16001f344a5f748ba0947d68533e291e12040000172a3c4d5d6d7d8e9e9a8a796972889d98836c57422c1700000e1a24292a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a384e63788fa49079644f3a250f001f344a5f748ba0947d68533e291300000000000000192e43586e84999b866f5a442f1a0000000000000000001a2f445a6f869b9b866f5a442f1a05000000000000000000000000000000000005101b25303a454f5a646f7a85735e48331e000a1d2f415261707c858a8b8b8b8b8b877d7264554533210e000000000000000000000000000000000f21313d4546464646413627160400001022323e46474747474237281704000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001f344a5f748b95959595959595959595959595959595959595938d8375665543311e0b001f344a5f748b95959595959595959595959595959595959595938d8375665543311e0b001f344a5f748ba0a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a29b8f806f5d4a372410000e213447586877858f94959595959595959595959595959595938d8375665544311e0b001f344a5f748ba0947d68533f3f3f424b51545656565656544f473f3f3f475c72889d97826b56402b16001f344a5f748ba0947d68533f3a30221100000d1e2f3f4f5f708090a198877672889d98836c57422c17000c1d2c373e3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f4e63788fa49079644f3a250f001f344a5f748ba0947d68533e291300000000000000192e43586e84999b866f5a442f1a0000000000000000001a2f445a6f868b8b866f5a442f1a050000000000000000000000000000000000000008131d28323d48525d67726e5b47321d000012233443525e6970747474747474716b6155463727160400000000000000000000000000000000192c3e4f595b5b5b5b534533200c0000192d3f505b5c5c5c5c554634210d000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001f344a5f7480808080808080808080808080808080808080807d797065574837261401001f344a5f7480808080808080808080808080808080808080807d797065574837261401001f344a5f748b8f8f8f8f8f8f8f8f8f8f8f8f8f8f8f8f8f8f8f8d877d706151402e1b08000517293a4a5967727a7d8080808080808080808080808080807d797065574838271402001f344a5f748ba0947d6854545454545454545454545454545454545454545c72889d97826b56402b16001f344a5f748ba0947d6854544d402f1c080000112131415262728393a3958574889d98836c57422c170016293b4953545454545454545454545454545454545454545463788fa49079644f3a250f001f344a5f748ba0947d68533e291313131313131313192e43586e84999b866f5a442f1a000000000000000000192e43586b747474746b58432e19040000000000000000000000000000000000000000000b15202b35404a555e5c503f2c18000005162534414c555c5f5f5f5f5f5f5d574e443728190900000000000000000000000000000000001e33485c6d7070707063503b271200001e33485c6e7272727163503c2712000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001d314558676a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a68655d5347392a1a0900001d314558676a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a68655d5347392a1a0900001f34495e72787878787878787878787878787878787878787877726a5f52433322110000000c1c2c3b49555f65696a6a6a6a6a6a6a6a6a6a6a6a6a6a6a68655d5347392a1a0900001f344a5f73899e96826f6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a768a9f95806b56402b16001f344a5f74899f95826f6a695e4c38230e000003132334445464758696a29282889d98836c57422c17001d314558676a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6c7c90a38f79644f3a240f001f344a5f748ba0947d68533e292929292929292929292e43586e84999b866f5a442f1a00000000000000000015293c4e5b5f5f5f5f5b4e3c29150000000000000000000000000000000000000000000000030e18232d384349483f32210f0000000716232f3941474a4a4a4a4a4a48433b3226190a0000000000000000000000000000000000001f34495e738787877d6a55402c1702001f34495e73888888806a55402c170300000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000016293b4953545454545454545454545454545454545454545453504a4136291b0c00000016293b4953545454545454545454545454545454545454545453504a4136291b0c0000001b2f4354616363636363636363636363636363636363636363625e574e4234251505000000000e1d2b38434b515454545454545454545454545454545453504a4136291b0c0000001d32465b7085989e8e828080808080808080808080808080808080808080808694a3907b67523d2814001d32475c7085999e8e82807b66503b261100000006162636475767778898a08f8d9f98836c57422c17001f344a5f748080808080808080808080808080808080808080828b9a9d8a75604c37220d001f344a5f748ba0947d68533e3e3e3e3e3e3e3e3e3e3e3e43586e84999b866f5a442f1a0000000000000000000d1f303e474a4a4a4a473e301f0d0000000000000000000000000000000000000000000000000006101b252f34332d2214040000000006121d262d32343434343434332e281f1408000000000000000000000000000000000000001b3045596e839798846f5a45311c08001b3044596d839799846f5a46311c080000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000c1d2c373e3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3e3b362e24180b000000000c1d2c373e3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3e3b362e24180b00000000132536444c4e4e4e4e4e4e4e4e4e4e4e4e4e4e4e4e4e4e4e4e4d4a433b302416070000000000000d1a262f373c3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3e3b362e24190b00000000182d4155697c8e9e9e9695959595959595959595959595959595959595959599a3978673604c38240f00192d4155697c8e9e9e96917b66503b26110000000008192939495a6a7a8b9ba1a0ab98836c57422c17001f344a5f748b95959595959595959595959595959595959595969ca191806d5a46321d09001f344a5f748ba0947d685353535353535353535353535353586e84999b866f5a442f1a0000000000000000000112202b3334343434332b20120100000000000000000000000000000000000000000000000000000008131b1f1e191004000000000000000a12191d1f1f1f1f1f1f1e1a140c020000000000000000000000000000000000000000162b4054697d929d89745f4a36210d00162b3f54687d929e89745f4b36220d000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000e1a24292a2a2a2a2a2a2a2a2a2a2e303030302f2a2a2a2a2926211a11060000000000000e1a24292a2a2a2a2a2a2a2a2b30303030302c2a2a2a2a2a2926211a110600000000000818263138383838383838383838383838383838383838383838352f281e1306000000000000000009131c23272a2a2a2a2d30303030302a2a2a2a2a2a2927211b110700000000001226394c5e70808e999fa0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a09c948878685644311d09001226394c5e70808e999f917b66503b261100000000000b1b2b3c4c5c6d7d8e9ea0a098836c57422c17001f344a5f748ba0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a09f9a90837362503d2a1703001f344a5f748b9f95806e68686868686868686868686868686972869a99846f5a442f1a00000000000000000000020f181e1f1f1f1f1e180f0200000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000011263a4f64788da28e7964503b26110011253a4f63788da28e7964503b26120000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000081014151515151515151a2b394346464646433a2d1d1514120d0600000000000000000008101415151515151522313e454646464640352615151514120d06000000000000000009151e2323232323232323232323232323252c323434332f29221b140b010000000000000000000000080e12141627364146464646453d312115151514120d07000000000000000a1d2f415161707c85898b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b888276695a4a39271401000a1d2f415261707c85898b7b66503b26110000000000000d1e2e3e4f5f6f808b8b8b8b836c57422c17001f344a5f748b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b89867d7264554533210e00001e33475c7186999d8d827d7d7d7d7d7d7d7d7d7d7d7d7d7d7d8391a294806b56422d1800000000000000000000000000000000000000000000000000000000000000000000070e1313131313131313131313131313131313131313131313131313131009000000000000070e1313131313110a0f1313131313110a0f13131313131009000000000c21354a5e73889d937d6954402b17000c20354a5e73889c937d6955402c17000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000011253849565b5b5b5b574b3a27140000000000000000000000000000000000000000061a2d404f5a5b5b5b5b5344321f0b000000000000000000000000000002090d0e0e0e0e0e110f0e0e141d27313940464a4a48433d35291a090000000000000000000000000000000c203345535b5b5b5b594f3e2c19040000000000000000000000000012233443525e697074747474747474747474747474747474747474747474736d64594b3c2c1b0a00000012233443525e6970747473634f3a2510000000000000001020314151617174747474746955412c17001f34495d70747474747474747474747474747474747474747473716a615546372716040000192e4256697c8f9e9d9694949494949494949494949494949497a19b8a7764503c28130000000000000000000000000000000000000000000000000000000000000000000d1923282929292929292929292929292929292929292929292929292928241c10020000000d19232829292928251e232829292928251d242829292928251d11030000071b3045596e838b8b836e5a45301b00071b3044596d838b8b846f5a45301b0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000002172c405467707070706957422e1904000000000000000000000000000000000000000a1f34495d6d70707070614e39251000000000000000000000000000000000000002101b232624202128303a444d545b5f5f5d58514738261300000000000000000000000000000012273b5063707070706d5c48331e090000000000000000000000000005162534414c555c5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5e5951473b2d1e0e0000000005162534414c555c5f5f5f564634200c000000000000000213233343535e5f5f5f5f5f5a4c3a2612001a2e41515d5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5e5c564e433728190900000013273a4d5f70808e999fa0a0a0a0a0a0a0a0a0a0a0a0a0a0a09e968b7c6c5a4734210d00000000000000000000000000000000000000000000000000000000000000000b1c2b363d3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3d382e200f00000b1c2b363d3e3e3e3e3a30373d3e3e3e3e392f373d3e3e3e3e392f2110000000162b405468747474746d5945301b0000162b3f5467747474746d5945301b00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000081c31465a6f848787836e59442f1a05000000000000000000000000000000000000000b21364b60758787877c68533e2a1500000000000000000000000000000000000010202d373b3935363b434d5760686f7474726c6455422e1a050000000000000000000000000002172c40556a7d878787735e49341f0a00000000000000000000000000000716232f3941474a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a48453e352a1d0f0000000000000716232f3941474a4a4a443828170400000000000000000515253542494a4a4a4a4a463c2e1d0a0011233341494a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4947423b3126190a000000000a1d30415261707c85898b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8983796d5e4e3d2b1805000000000000000000000000000000000000000000000000000000000000000015283a485253535353535353535353535353535353535353535353535353534b3e2d1a070015283a4852535353534d414952535353534d404a52535353534c3f2e1b0800001125394a595f5f5f5f5c4f3d2a1600001125384a585f5f5f5f5c4f3d2a16000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000d22364b5f74899c937d6954402b160200000000000000000000000000000000000000091e32475c70869a96826d58432f1a0600000000000000000000000000000000081b2e3e4a504e4b4b4f57606a737c84898b8782715c47321d0700000000000000000000000000081c31465a6f849998836e5a45301c0700000000000000000000000000000005121d262d323434343434343434343434343434343434343434343433302a22180c000000000000000005121d262d3234343430271a0b000000000000000000000817252f343434343434322a1e1000000515232e34343434343434343434343434343434343434343434322e271e140800000000000012243443525e697073747474747474747474747474747474736f665c4f40301f0d0000000000000000000000000000000000000000000000000000000000000000001c3145586668686868686868686868686868686868686868686868686868685c4a36220d001c31455866686868685f4d5966686868685e4c5a67686868685d4b37230e0000091b2d3b464a4a4a4a483e31200e0000081b2c3b454a4a4a4a483e31200e0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000012273b5065798ea28e78644f3b2611000000000000000000000000000000000000000004192d42566b80949b87725d49341f0a000000000000000000000000000000000f23384b5c65625f5f646a737c8790928c8b8e88725c47321d07000000000000000000000000000d22364b5f74899e937d6954402b170200000000000000000000000000000000000a12191d1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1e1b160f0500000000000000000000000a12191d1f1f1f1c140900000000000000000000000007121b1f1f1f1f1f1f1d170d0000000005111a1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1d19130b020000000000000006162534414c555c5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5e5a534a3e312212010000000000000000000000000000000000000000000000000000000000000000001f344a5f747d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d79644f3a250f001f344a5f747d7d7d7d685360757d7d7d7c675262777d7d7d7a66503b26110000000f1d2a3234343434332c2113020000000e1d293134343434332c21130200000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000002182c41556a7d939d88735f4a36210c00000000000000000000000000000000000000000013283c51657a8fa08c77624d3924100000000000000000000000000000000012273c51667a777474787d87908e867d77757982725c47321d070000000000000000000000000012273b5065798ea28e79644f3b2611000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000716232f3941474a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a49463f372c201304000000000000000000000000000000000000000000000000000000000000000000001f344a5f748b94949494949494949494949494949494949494949494949079644f3a250f001f344a5f748b94947d685360768c94937c675262778d94917b66503b2611000000000c171d1f1f1f1f1e190f0300000000000c161d1f1f1f1f1e190f0300000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000081d31465b6f849998846e5a45301c070000000000000000000000000000000000000000000e23374c60758a9f917c67533e29150000000000000000000000000000000012273c52677c8d8b8b8d938d847a72696360656d695844301b0600000000000000000000000000172c40556a7d939d89745f4a36210d000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000006121d262d323434343434343434343434343434343434312b241a0f0200000000000000000000000000000000000000000000000000000000000000000000001f344a5f748ba0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a09079644f3a250f001f344a5f748ba0947d685360768ca0937c675262778da0917b66503b261100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000b20364b6074898b8b7d6955402c1702000000000000000000000000000000000000000000091d32475b70858b8b826c58432d180300000000000000000000000000000012273c52677c888b8b87827970675e564e4b5158564b3b281501000000000000000000000000001b30455a6f848b8b846f5a45311c08000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000a12191d1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1c171007000000000000000000000000000000000000000000000000000000000000000000000000001f344a5f748b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b79644f3a250f001f344a5f748b8b8b7d685360768b8b8b7c675262778b8b8b7b66503b261100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000b20354a5e707474747363503b26120000000000000000000000000000000000000000000003182d415669747474746a57422d180300000000000000000000000000000010253a4e616d727474726d655d544b423a363d43413a2d1d0c00000000000000000000000000001b3045596d747474746855402c17020000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001f34495d707474747474747474747474747474747474747474747474747473624e39240f001f34495d707474747466525e70747474746450607174747473634f3a25100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000071b2f42525d5f5f5f5f564634200c000000000000000000000000000000000000000000000013273a4c5a5f5f5f5f5a4d3b2814000000000000000000000000000000000b1f324351595d5f5f5d58524a41372e2622292e2d271c0f000000000000000000000000000000162a3d4f5c5f5f5f5f594a392511000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001a2e41515d5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5e5545331f0b001a2e41515d5f5f5f5f5848525d5f5f5f5f5747535e5f5f5f5f564634200c00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000012243441494a4a4a4a443828170400000000000000000000000000000000000000000000000a1d2e3c464a4a4a4a473d2f1e0b00000000000000000000000000000000021425343e44484a4a48443e362e241b130e151818130a000000000000000000000000000000000e20313e484a4a4a4a463b2d1b090000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000011233341494a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4943372716030011233341494a4a4a4a453a41494a4a4a4a443942494a4a4a4a44382817040000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000616242e343434343430271a0b00000000000000000000000000000000000000000000000000101e2a3234343434322b1f110000000000000000000000000000000000000716222a2f333434332f29221a110800000000000000000000000000000000000000000000000213212c3334343434322a1d0f00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000515232e3434343434343434343434343434343434343434343434343434343026190a00000515232e343434343431282e343434343431282f343434343430271a0b000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000006121a1f1f1f1f1f1c14090000000000000000000000000000000000000000000000000000000d171d1f1f1f1f1e180e0100000000000000000000000000000000000000050f161b1e1f1f1e1b150f070000000000000000000000000000000000000000000000000000030f191e1f1f1f1f1d170c0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005111a1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1b14090000000005111a1f1f1f1f1f1c151a1f1f1f1f1f1c151b1f1f1f1f1f1c14090000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 + m_StreamData: + offset: 0 + size: 0 + path: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/ModResources/Fonts/Orbitron-Regular SDF.asset.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/ModResources/Fonts/Orbitron-Regular SDF.asset.meta" new file mode 100644 index 00000000..f445d8aa --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/ModResources/Fonts/Orbitron-Regular SDF.asset.meta" @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: d393f12bd75574ef991a7a2c74b29c69 +NativeFormatImporter: + externalObjects: {} + mainObjectFileID: 11400000 + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/ModResources/Fonts/PressStart2P-Regular SDF.asset" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/ModResources/Fonts/PressStart2P-Regular SDF.asset" new file mode 100644 index 00000000..1313c40c --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/ModResources/Fonts/PressStart2P-Regular SDF.asset" @@ -0,0 +1,2907 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!114 &11400000 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 71c1514a6bd24e1e882cebbe1904ce04, type: 3} + m_Name: PressStart2P-Regular SDF + m_EditorClassIdentifier: + hashCode: -801186333 + material: {fileID: 21699584260080902} + materialHashCode: -135708664 + m_Version: 1.1.0 + m_SourceFontFileGUID: e3404db2d8fe24734b54a21a6d6c0359 + m_SourceFontFile_EditorRef: {fileID: 0} + m_SourceFontFile: {fileID: 0} + m_AtlasPopulationMode: 0 + m_FaceInfo: + m_FamilyName: Press Start 2P + m_StyleName: + m_PointSize: 51 + m_Scale: 1 + m_LineHeight: 51 + m_AscentLine: 51 + m_CapLine: 50.999996 + m_MeanLine: 0 + m_Baseline: 0 + m_DescentLine: 0 + m_SuperscriptOffset: 51 + m_SuperscriptSize: 0.5 + m_SubscriptOffset: -5.1000004 + m_SubscriptSize: 0.5 + m_UnderlineOffset: -5.1000004 + m_UnderlineThickness: 2.5500002 + m_StrikethroughOffset: 18.545454 + m_StrikethroughThickness: 2.5500002 + m_TabWidth: 510 + m_GlyphTable: + - m_Index: 1 + m_Metrics: + m_Width: 51 + m_Height: 51 + m_HorizontalBearingX: 0 + m_HorizontalBearingY: 51 + m_HorizontalAdvance: 51 + m_GlyphRect: + m_X: 6 + m_Y: -56 + m_Width: 51 + m_Height: 51 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 2 + m_Metrics: + m_Width: 19.124998 + m_Height: 44.624996 + m_HorizontalBearingX: 12.749999 + m_HorizontalBearingY: 50.999996 + m_HorizontalAdvance: 51 + m_GlyphRect: + m_X: 486 + m_Y: 359 + m_Width: 19 + m_Height: 45 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 3 + m_Metrics: + m_Width: 31.874998 + m_Height: 19.124998 + m_HorizontalBearingX: 6.3749995 + m_HorizontalBearingY: 50.999996 + m_HorizontalAdvance: 51 + m_GlyphRect: + m_X: 224 + m_Y: 484 + m_Width: 32 + m_Height: 19 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 4 + m_Metrics: + m_Width: 44.624996 + m_Height: 44.624996 + m_HorizontalBearingX: 0 + m_HorizontalBearingY: 50.999996 + m_HorizontalAdvance: 51 + m_GlyphRect: + m_X: 6 + m_Y: 68 + m_Width: 45 + m_Height: 45 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 5 + m_Metrics: + m_Width: 44.624996 + m_Height: 44.624996 + m_HorizontalBearingX: 0 + m_HorizontalBearingY: 50.999996 + m_HorizontalAdvance: 51 + m_GlyphRect: + m_X: 49 + m_Y: 6 + m_Width: 45 + m_Height: 45 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 6 + m_Metrics: + m_Width: 44.624996 + m_Height: 44.624996 + m_HorizontalBearingX: 0 + m_HorizontalBearingY: 50.999996 + m_HorizontalAdvance: 51 + m_GlyphRect: + m_X: 6 + m_Y: 124 + m_Width: 45 + m_Height: 45 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 7 + m_Metrics: + m_Width: 44.624996 + m_Height: 44.624996 + m_HorizontalBearingX: 0 + m_HorizontalBearingY: 50.999996 + m_HorizontalAdvance: 51 + m_GlyphRect: + m_X: 6 + m_Y: 180 + m_Width: 45 + m_Height: 45 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 8 + m_Metrics: + m_Width: 12.749999 + m_Height: 19.124998 + m_HorizontalBearingX: 12.749999 + m_HorizontalBearingY: 50.999996 + m_HorizontalAdvance: 51 + m_GlyphRect: + m_X: 322 + m_Y: 472 + m_Width: 13 + m_Height: 19 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 9 + m_Metrics: + m_Width: 25.499998 + m_Height: 44.624996 + m_HorizontalBearingX: 12.749999 + m_HorizontalBearingY: 50.999996 + m_HorizontalAdvance: 51 + m_GlyphRect: + m_X: 224 + m_Y: 427 + m_Width: 25 + m_Height: 45 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 10 + m_Metrics: + m_Width: 25.499998 + m_Height: 44.624996 + m_HorizontalBearingX: 6.3749995 + m_HorizontalBearingY: 50.999996 + m_HorizontalAdvance: 51 + m_GlyphRect: + m_X: 261 + m_Y: 427 + m_Width: 25 + m_Height: 45 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 11 + m_Metrics: + m_Width: 44.624996 + m_Height: 31.874998 + m_HorizontalBearingX: 0 + m_HorizontalBearingY: 44.624996 + m_HorizontalAdvance: 51 + m_GlyphRect: + m_X: 286 + m_Y: 174 + m_Width: 45 + m_Height: 32 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 12 + m_Metrics: + m_Width: 38.249996 + m_Height: 31.874998 + m_HorizontalBearingX: 6.3749995 + m_HorizontalBearingY: 44.624996 + m_HorizontalAdvance: 51 + m_GlyphRect: + m_X: 174 + m_Y: 471 + m_Width: 38 + m_Height: 32 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 13 + m_Metrics: + m_Width: 19.124998 + m_Height: 19.124998 + m_HorizontalBearingX: 6.3749995 + m_HorizontalBearingY: 19.124998 + m_HorizontalAdvance: 51 + m_GlyphRect: + m_X: 267 + m_Y: 484 + m_Width: 19 + m_Height: 19 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 14 + m_Metrics: + m_Width: 38.249996 + m_Height: 6.3749995 + m_HorizontalBearingX: 6.3749995 + m_HorizontalBearingY: 31.874998 + m_HorizontalAdvance: 51 + m_GlyphRect: + m_X: 224 + m_Y: 354 + m_Width: 38 + m_Height: 6 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 15 + m_Metrics: + m_Width: 12.749999 + m_Height: 12.749999 + m_HorizontalBearingX: 12.749999 + m_HorizontalBearingY: 19.124998 + m_HorizontalAdvance: 51 + m_GlyphRect: + m_X: 346 + m_Y: 471 + m_Width: 13 + m_Height: 13 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 16 + m_Metrics: + m_Width: 44.624996 + m_Height: 44.624996 + m_HorizontalBearingX: 0 + m_HorizontalBearingY: 50.999996 + m_HorizontalAdvance: 51 + m_GlyphRect: + m_X: 6 + m_Y: 236 + m_Width: 45 + m_Height: 45 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 17 + m_Metrics: + m_Width: 44.624996 + m_Height: 44.624996 + m_HorizontalBearingX: 0 + m_HorizontalBearingY: 50.999996 + m_HorizontalAdvance: 51 + m_GlyphRect: + m_X: 6 + m_Y: 292 + m_Width: 45 + m_Height: 45 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 18 + m_Metrics: + m_Width: 38.249996 + m_Height: 44.624996 + m_HorizontalBearingX: 6.3749995 + m_HorizontalBearingY: 50.999996 + m_HorizontalAdvance: 51 + m_GlyphRect: + m_X: 342 + m_Y: 291 + m_Width: 38 + m_Height: 45 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 19 + m_Metrics: + m_Width: 44.624996 + m_Height: 44.624996 + m_HorizontalBearingX: 0 + m_HorizontalBearingY: 50.999996 + m_HorizontalAdvance: 51 + m_GlyphRect: + m_X: 6 + m_Y: 348 + m_Width: 45 + m_Height: 45 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 20 + m_Metrics: + m_Width: 44.624996 + m_Height: 44.624996 + m_HorizontalBearingX: 0 + m_HorizontalBearingY: 50.999996 + m_HorizontalAdvance: 51 + m_GlyphRect: + m_X: 6 + m_Y: 404 + m_Width: 45 + m_Height: 45 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 21 + m_Metrics: + m_Width: 44.624996 + m_Height: 44.624996 + m_HorizontalBearingX: 0 + m_HorizontalBearingY: 50.999996 + m_HorizontalAdvance: 51 + m_GlyphRect: + m_X: 6 + m_Y: 460 + m_Width: 45 + m_Height: 45 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 22 + m_Metrics: + m_Width: 44.624996 + m_Height: 44.624996 + m_HorizontalBearingX: 0 + m_HorizontalBearingY: 50.999996 + m_HorizontalAdvance: 51 + m_GlyphRect: + m_X: 105 + m_Y: 6 + m_Width: 45 + m_Height: 45 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 23 + m_Metrics: + m_Width: 44.624996 + m_Height: 44.624996 + m_HorizontalBearingX: 0 + m_HorizontalBearingY: 50.999996 + m_HorizontalAdvance: 51 + m_GlyphRect: + m_X: 161 + m_Y: 6 + m_Width: 45 + m_Height: 45 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 24 + m_Metrics: + m_Width: 44.624996 + m_Height: 44.624996 + m_HorizontalBearingX: 0 + m_HorizontalBearingY: 50.999996 + m_HorizontalAdvance: 51 + m_GlyphRect: + m_X: 217 + m_Y: 6 + m_Width: 45 + m_Height: 45 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 25 + m_Metrics: + m_Width: 44.624996 + m_Height: 44.624996 + m_HorizontalBearingX: 0 + m_HorizontalBearingY: 50.999996 + m_HorizontalAdvance: 51 + m_GlyphRect: + m_X: 273 + m_Y: 6 + m_Width: 45 + m_Height: 45 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 26 + m_Metrics: + m_Width: 44.624996 + m_Height: 44.624996 + m_HorizontalBearingX: 0 + m_HorizontalBearingY: 50.999996 + m_HorizontalAdvance: 51 + m_GlyphRect: + m_X: 329 + m_Y: 6 + m_Width: 45 + m_Height: 45 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 27 + m_Metrics: + m_Width: 12.749999 + m_Height: 31.874998 + m_HorizontalBearingX: 12.749999 + m_HorizontalBearingY: 44.624996 + m_HorizontalAdvance: 51 + m_GlyphRect: + m_X: 298 + m_Y: 471 + m_Width: 13 + m_Height: 32 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 28 + m_Metrics: + m_Width: 19.124998 + m_Height: 38.249996 + m_HorizontalBearingX: 6.3749995 + m_HorizontalBearingY: 44.624996 + m_HorizontalAdvance: 51 + m_GlyphRect: + m_X: 468 + m_Y: 416 + m_Width: 19 + m_Height: 38 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 29 + m_Metrics: + m_Width: 31.874998 + m_Height: 44.624996 + m_HorizontalBearingX: 6.3749995 + m_HorizontalBearingY: 50.999996 + m_HorizontalAdvance: 51 + m_GlyphRect: + m_X: 274 + m_Y: 359 + m_Width: 32 + m_Height: 45 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 30 + m_Metrics: + m_Width: 44.624996 + m_Height: 19.124998 + m_HorizontalBearingX: 0 + m_HorizontalBearingY: 38.249996 + m_HorizontalAdvance: 51 + m_GlyphRect: + m_X: 342 + m_Y: 261 + m_Width: 45 + m_Height: 19 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 31 + m_Metrics: + m_Width: 31.874998 + m_Height: 44.624996 + m_HorizontalBearingX: 6.3749995 + m_HorizontalBearingY: 50.999996 + m_HorizontalAdvance: 51 + m_GlyphRect: + m_X: 224 + m_Y: 371 + m_Width: 32 + m_Height: 45 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 32 + m_Metrics: + m_Width: 44.624996 + m_Height: 44.624996 + m_HorizontalBearingX: 0 + m_HorizontalBearingY: 50.999996 + m_HorizontalAdvance: 51 + m_GlyphRect: + m_X: 385 + m_Y: 6 + m_Width: 45 + m_Height: 45 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 33 + m_Metrics: + m_Width: 44.624996 + m_Height: 44.624996 + m_HorizontalBearingX: 0 + m_HorizontalBearingY: 50.999996 + m_HorizontalAdvance: 51 + m_GlyphRect: + m_X: 441 + m_Y: 6 + m_Width: 45 + m_Height: 45 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 34 + m_Metrics: + m_Width: 44.624996 + m_Height: 44.624996 + m_HorizontalBearingX: 0 + m_HorizontalBearingY: 50.999996 + m_HorizontalAdvance: 51 + m_GlyphRect: + m_X: 62 + m_Y: 62 + m_Width: 45 + m_Height: 45 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 35 + m_Metrics: + m_Width: 44.624996 + m_Height: 44.624996 + m_HorizontalBearingX: 0 + m_HorizontalBearingY: 50.999996 + m_HorizontalAdvance: 51 + m_GlyphRect: + m_X: 62 + m_Y: 118 + m_Width: 45 + m_Height: 45 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 36 + m_Metrics: + m_Width: 44.624996 + m_Height: 44.624996 + m_HorizontalBearingX: 0 + m_HorizontalBearingY: 50.999996 + m_HorizontalAdvance: 51 + m_GlyphRect: + m_X: 62 + m_Y: 174 + m_Width: 45 + m_Height: 45 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 37 + m_Metrics: + m_Width: 44.624996 + m_Height: 44.624996 + m_HorizontalBearingX: 0 + m_HorizontalBearingY: 50.999996 + m_HorizontalAdvance: 51 + m_GlyphRect: + m_X: 62 + m_Y: 230 + m_Width: 45 + m_Height: 45 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 38 + m_Metrics: + m_Width: 44.624996 + m_Height: 44.624996 + m_HorizontalBearingX: 0 + m_HorizontalBearingY: 50.999996 + m_HorizontalAdvance: 51 + m_GlyphRect: + m_X: 62 + m_Y: 286 + m_Width: 45 + m_Height: 45 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 39 + m_Metrics: + m_Width: 44.624996 + m_Height: 44.624996 + m_HorizontalBearingX: 0 + m_HorizontalBearingY: 50.999996 + m_HorizontalAdvance: 51 + m_GlyphRect: + m_X: 62 + m_Y: 342 + m_Width: 45 + m_Height: 45 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 40 + m_Metrics: + m_Width: 44.624996 + m_Height: 44.624996 + m_HorizontalBearingX: 0 + m_HorizontalBearingY: 50.999996 + m_HorizontalAdvance: 51 + m_GlyphRect: + m_X: 62 + m_Y: 398 + m_Width: 45 + m_Height: 45 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 41 + m_Metrics: + m_Width: 44.624996 + m_Height: 44.624996 + m_HorizontalBearingX: 0 + m_HorizontalBearingY: 50.999996 + m_HorizontalAdvance: 51 + m_GlyphRect: + m_X: 62 + m_Y: 454 + m_Width: 45 + m_Height: 45 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 42 + m_Metrics: + m_Width: 38.249996 + m_Height: 44.624996 + m_HorizontalBearingX: 6.3749995 + m_HorizontalBearingY: 50.999996 + m_HorizontalAdvance: 51 + m_GlyphRect: + m_X: 286 + m_Y: 303 + m_Width: 38 + m_Height: 45 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 43 + m_Metrics: + m_Width: 44.624996 + m_Height: 44.624996 + m_HorizontalBearingX: 0 + m_HorizontalBearingY: 50.999996 + m_HorizontalAdvance: 51 + m_GlyphRect: + m_X: 118 + m_Y: 62 + m_Width: 45 + m_Height: 45 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 44 + m_Metrics: + m_Width: 44.624996 + m_Height: 44.624996 + m_HorizontalBearingX: 0 + m_HorizontalBearingY: 50.999996 + m_HorizontalAdvance: 51 + m_GlyphRect: + m_X: 174 + m_Y: 62 + m_Width: 45 + m_Height: 45 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 45 + m_Metrics: + m_Width: 38.249996 + m_Height: 44.624996 + m_HorizontalBearingX: 6.3749995 + m_HorizontalBearingY: 50.999996 + m_HorizontalAdvance: 51 + m_GlyphRect: + m_X: 392 + m_Y: 291 + m_Width: 38 + m_Height: 45 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 46 + m_Metrics: + m_Width: 44.624996 + m_Height: 44.624996 + m_HorizontalBearingX: 0 + m_HorizontalBearingY: 50.999996 + m_HorizontalAdvance: 51 + m_GlyphRect: + m_X: 230 + m_Y: 62 + m_Width: 45 + m_Height: 45 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 47 + m_Metrics: + m_Width: 44.624996 + m_Height: 44.624996 + m_HorizontalBearingX: 0 + m_HorizontalBearingY: 50.999996 + m_HorizontalAdvance: 51 + m_GlyphRect: + m_X: 286 + m_Y: 62 + m_Width: 45 + m_Height: 45 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 48 + m_Metrics: + m_Width: 44.624996 + m_Height: 44.624996 + m_HorizontalBearingX: 0 + m_HorizontalBearingY: 50.999996 + m_HorizontalAdvance: 51 + m_GlyphRect: + m_X: 342 + m_Y: 62 + m_Width: 45 + m_Height: 45 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 49 + m_Metrics: + m_Width: 44.624996 + m_Height: 44.624996 + m_HorizontalBearingX: 0 + m_HorizontalBearingY: 50.999996 + m_HorizontalAdvance: 51 + m_GlyphRect: + m_X: 398 + m_Y: 62 + m_Width: 45 + m_Height: 45 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 50 + m_Metrics: + m_Width: 44.624996 + m_Height: 44.624996 + m_HorizontalBearingX: 0 + m_HorizontalBearingY: 50.999996 + m_HorizontalAdvance: 51 + m_GlyphRect: + m_X: 454 + m_Y: 62 + m_Width: 45 + m_Height: 45 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 51 + m_Metrics: + m_Width: 44.624996 + m_Height: 44.624996 + m_HorizontalBearingX: 0 + m_HorizontalBearingY: 50.999996 + m_HorizontalAdvance: 51 + m_GlyphRect: + m_X: 118 + m_Y: 118 + m_Width: 45 + m_Height: 45 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 52 + m_Metrics: + m_Width: 44.624996 + m_Height: 44.624996 + m_HorizontalBearingX: 0 + m_HorizontalBearingY: 50.999996 + m_HorizontalAdvance: 51 + m_GlyphRect: + m_X: 118 + m_Y: 174 + m_Width: 45 + m_Height: 45 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 53 + m_Metrics: + m_Width: 38.249996 + m_Height: 44.624996 + m_HorizontalBearingX: 6.3749995 + m_HorizontalBearingY: 50.999996 + m_HorizontalAdvance: 51 + m_GlyphRect: + m_X: 442 + m_Y: 303 + m_Width: 38 + m_Height: 45 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 54 + m_Metrics: + m_Width: 44.624996 + m_Height: 44.624996 + m_HorizontalBearingX: 0 + m_HorizontalBearingY: 50.999996 + m_HorizontalAdvance: 51 + m_GlyphRect: + m_X: 118 + m_Y: 230 + m_Width: 45 + m_Height: 45 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 55 + m_Metrics: + m_Width: 44.624996 + m_Height: 44.624996 + m_HorizontalBearingX: 0 + m_HorizontalBearingY: 50.999996 + m_HorizontalAdvance: 51 + m_GlyphRect: + m_X: 118 + m_Y: 286 + m_Width: 45 + m_Height: 45 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 56 + m_Metrics: + m_Width: 44.624996 + m_Height: 44.624996 + m_HorizontalBearingX: 0 + m_HorizontalBearingY: 50.999996 + m_HorizontalAdvance: 51 + m_GlyphRect: + m_X: 118 + m_Y: 342 + m_Width: 45 + m_Height: 45 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 57 + m_Metrics: + m_Width: 44.624996 + m_Height: 44.624996 + m_HorizontalBearingX: 0 + m_HorizontalBearingY: 50.999996 + m_HorizontalAdvance: 51 + m_GlyphRect: + m_X: 118 + m_Y: 398 + m_Width: 45 + m_Height: 45 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 58 + m_Metrics: + m_Width: 38.249996 + m_Height: 44.624996 + m_HorizontalBearingX: 6.3749995 + m_HorizontalBearingY: 50.999996 + m_HorizontalAdvance: 51 + m_GlyphRect: + m_X: 336 + m_Y: 347 + m_Width: 38 + m_Height: 45 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 59 + m_Metrics: + m_Width: 44.624996 + m_Height: 44.624996 + m_HorizontalBearingX: 0 + m_HorizontalBearingY: 50.999996 + m_HorizontalAdvance: 51 + m_GlyphRect: + m_X: 118 + m_Y: 454 + m_Width: 45 + m_Height: 45 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 60 + m_Metrics: + m_Width: 25.499998 + m_Height: 44.624996 + m_HorizontalBearingX: 12.749999 + m_HorizontalBearingY: 50.999996 + m_HorizontalAdvance: 51 + m_GlyphRect: + m_X: 298 + m_Y: 415 + m_Width: 25 + m_Height: 45 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 61 + m_Metrics: + m_Width: 44.624996 + m_Height: 44.624996 + m_HorizontalBearingX: 0 + m_HorizontalBearingY: 50.999996 + m_HorizontalAdvance: 51 + m_GlyphRect: + m_X: 174 + m_Y: 118 + m_Width: 45 + m_Height: 45 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 62 + m_Metrics: + m_Width: 25.499998 + m_Height: 44.624996 + m_HorizontalBearingX: 6.3749995 + m_HorizontalBearingY: 50.999996 + m_HorizontalAdvance: 51 + m_GlyphRect: + m_X: 335 + m_Y: 415 + m_Width: 25 + m_Height: 45 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 63 + m_Metrics: + m_Width: 31.874998 + m_Height: 12.749999 + m_HorizontalBearingX: 6.3749995 + m_HorizontalBearingY: 50.999996 + m_HorizontalAdvance: 51 + m_GlyphRect: + m_X: 372 + m_Y: 403 + m_Width: 32 + m_Height: 13 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 64 + m_Metrics: + m_Width: 44.624996 + m_Height: 6.3749995 + m_HorizontalBearingX: 0 + m_HorizontalBearingY: 6.3749995 + m_HorizontalAdvance: 51 + m_GlyphRect: + m_X: 454 + m_Y: 286 + m_Width: 45 + m_Height: 6 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 65 + m_Metrics: + m_Width: 12.749999 + m_Height: 12.749999 + m_HorizontalBearingX: 19.124998 + m_HorizontalBearingY: 50.999996 + m_HorizontalAdvance: 51 + m_GlyphRect: + m_X: 370 + m_Y: 471 + m_Width: 13 + m_Height: 13 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 66 + m_Metrics: + m_Width: 44.624996 + m_Height: 31.874998 + m_HorizontalBearingX: 0 + m_HorizontalBearingY: 38.249996 + m_HorizontalAdvance: 51 + m_GlyphRect: + m_X: 342 + m_Y: 174 + m_Width: 45 + m_Height: 32 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 67 + m_Metrics: + m_Width: 44.624996 + m_Height: 44.624996 + m_HorizontalBearingX: 0 + m_HorizontalBearingY: 50.999996 + m_HorizontalAdvance: 51 + m_GlyphRect: + m_X: 230 + m_Y: 118 + m_Width: 45 + m_Height: 45 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 68 + m_Metrics: + m_Width: 44.624996 + m_Height: 31.874998 + m_HorizontalBearingX: 0 + m_HorizontalBearingY: 38.249996 + m_HorizontalAdvance: 51 + m_GlyphRect: + m_X: 398 + m_Y: 174 + m_Width: 45 + m_Height: 32 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 69 + m_Metrics: + m_Width: 44.624996 + m_Height: 44.624996 + m_HorizontalBearingX: 0 + m_HorizontalBearingY: 50.999996 + m_HorizontalAdvance: 51 + m_GlyphRect: + m_X: 286 + m_Y: 118 + m_Width: 45 + m_Height: 45 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 70 + m_Metrics: + m_Width: 44.624996 + m_Height: 31.874998 + m_HorizontalBearingX: 0 + m_HorizontalBearingY: 38.249996 + m_HorizontalAdvance: 51 + m_GlyphRect: + m_X: 286 + m_Y: 217 + m_Width: 45 + m_Height: 32 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 71 + m_Metrics: + m_Width: 38.249996 + m_Height: 44.624996 + m_HorizontalBearingX: 6.3749995 + m_HorizontalBearingY: 50.999996 + m_HorizontalAdvance: 51 + m_GlyphRect: + m_X: 386 + m_Y: 347 + m_Width: 38 + m_Height: 45 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 72 + m_Metrics: + m_Width: 44.624996 + m_Height: 38.249996 + m_HorizontalBearingX: 0 + m_HorizontalBearingY: 38.249996 + m_HorizontalAdvance: 51 + m_GlyphRect: + m_X: 454 + m_Y: 119 + m_Width: 45 + m_Height: 38 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 73 + m_Metrics: + m_Width: 44.624996 + m_Height: 44.624996 + m_HorizontalBearingX: 0 + m_HorizontalBearingY: 50.999996 + m_HorizontalAdvance: 51 + m_GlyphRect: + m_X: 342 + m_Y: 118 + m_Width: 45 + m_Height: 45 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 74 + m_Metrics: + m_Width: 38.249996 + m_Height: 44.624996 + m_HorizontalBearingX: 6.3749995 + m_HorizontalBearingY: 50.999996 + m_HorizontalAdvance: 51 + m_GlyphRect: + m_X: 436 + m_Y: 359 + m_Width: 38 + m_Height: 45 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 75 + m_Metrics: + m_Width: 31.874998 + m_Height: 50.999996 + m_HorizontalBearingX: 6.3749995 + m_HorizontalBearingY: 50.999996 + m_HorizontalAdvance: 51 + m_GlyphRect: + m_X: 6 + m_Y: 6 + m_Width: 32 + m_Height: 51 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 76 + m_Metrics: + m_Width: 44.624996 + m_Height: 44.624996 + m_HorizontalBearingX: 0 + m_HorizontalBearingY: 50.999996 + m_HorizontalAdvance: 51 + m_GlyphRect: + m_X: 398 + m_Y: 118 + m_Width: 45 + m_Height: 45 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 77 + m_Metrics: + m_Width: 38.249996 + m_Height: 44.624996 + m_HorizontalBearingX: 6.3749995 + m_HorizontalBearingY: 50.999996 + m_HorizontalAdvance: 51 + m_GlyphRect: + m_X: 174 + m_Y: 415 + m_Width: 38 + m_Height: 45 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 78 + m_Metrics: + m_Width: 44.624996 + m_Height: 31.874998 + m_HorizontalBearingX: 0 + m_HorizontalBearingY: 38.249996 + m_HorizontalAdvance: 51 + m_GlyphRect: + m_X: 174 + m_Y: 224 + m_Width: 45 + m_Height: 32 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 79 + m_Metrics: + m_Width: 44.624996 + m_Height: 31.874998 + m_HorizontalBearingX: 0 + m_HorizontalBearingY: 38.249996 + m_HorizontalAdvance: 51 + m_GlyphRect: + m_X: 230 + m_Y: 224 + m_Width: 45 + m_Height: 32 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 80 + m_Metrics: + m_Width: 44.624996 + m_Height: 31.874998 + m_HorizontalBearingX: 0 + m_HorizontalBearingY: 38.249996 + m_HorizontalAdvance: 51 + m_GlyphRect: + m_X: 342 + m_Y: 217 + m_Width: 45 + m_Height: 32 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 81 + m_Metrics: + m_Width: 44.624996 + m_Height: 38.249996 + m_HorizontalBearingX: 0 + m_HorizontalBearingY: 38.249996 + m_HorizontalAdvance: 51 + m_GlyphRect: + m_X: 454 + m_Y: 169 + m_Width: 45 + m_Height: 38 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 82 + m_Metrics: + m_Width: 44.624996 + m_Height: 38.249996 + m_HorizontalBearingX: 0 + m_HorizontalBearingY: 38.249996 + m_HorizontalAdvance: 51 + m_GlyphRect: + m_X: 174 + m_Y: 175 + m_Width: 45 + m_Height: 38 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 83 + m_Metrics: + m_Width: 38.249996 + m_Height: 31.874998 + m_HorizontalBearingX: 6.3749995 + m_HorizontalBearingY: 38.249996 + m_HorizontalAdvance: 51 + m_GlyphRect: + m_X: 174 + m_Y: 310 + m_Width: 38 + m_Height: 32 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 84 + m_Metrics: + m_Width: 44.624996 + m_Height: 31.874998 + m_HorizontalBearingX: 0 + m_HorizontalBearingY: 38.249996 + m_HorizontalAdvance: 51 + m_GlyphRect: + m_X: 398 + m_Y: 217 + m_Width: 45 + m_Height: 32 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 85 + m_Metrics: + m_Width: 38.249996 + m_Height: 44.624996 + m_HorizontalBearingX: 6.3749995 + m_HorizontalBearingY: 50.999996 + m_HorizontalAdvance: 51 + m_GlyphRect: + m_X: 174 + m_Y: 359 + m_Width: 38 + m_Height: 45 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 86 + m_Metrics: + m_Width: 44.624996 + m_Height: 31.874998 + m_HorizontalBearingX: 0 + m_HorizontalBearingY: 38.249996 + m_HorizontalAdvance: 51 + m_GlyphRect: + m_X: 454 + m_Y: 218 + m_Width: 45 + m_Height: 32 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 87 + m_Metrics: + m_Width: 38.249996 + m_Height: 31.874998 + m_HorizontalBearingX: 6.3749995 + m_HorizontalBearingY: 38.249996 + m_HorizontalAdvance: 51 + m_GlyphRect: + m_X: 224 + m_Y: 310 + m_Width: 38 + m_Height: 32 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 88 + m_Metrics: + m_Width: 44.624996 + m_Height: 31.874998 + m_HorizontalBearingX: 0 + m_HorizontalBearingY: 38.249996 + m_HorizontalAdvance: 51 + m_GlyphRect: + m_X: 286 + m_Y: 260 + m_Width: 45 + m_Height: 32 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 89 + m_Metrics: + m_Width: 44.624996 + m_Height: 31.874998 + m_HorizontalBearingX: 0 + m_HorizontalBearingY: 38.249996 + m_HorizontalAdvance: 51 + m_GlyphRect: + m_X: 174 + m_Y: 267 + m_Width: 45 + m_Height: 32 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 90 + m_Metrics: + m_Width: 44.624996 + m_Height: 38.249996 + m_HorizontalBearingX: 0 + m_HorizontalBearingY: 38.249996 + m_HorizontalAdvance: 51 + m_GlyphRect: + m_X: 230 + m_Y: 175 + m_Width: 45 + m_Height: 38 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 91 + m_Metrics: + m_Width: 44.624996 + m_Height: 31.874998 + m_HorizontalBearingX: 0 + m_HorizontalBearingY: 38.249996 + m_HorizontalAdvance: 51 + m_GlyphRect: + m_X: 230 + m_Y: 267 + m_Width: 45 + m_Height: 32 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 92 + m_Metrics: + m_Width: 25.499998 + m_Height: 44.624996 + m_HorizontalBearingX: 12.749999 + m_HorizontalBearingY: 50.999996 + m_HorizontalAdvance: 51 + m_GlyphRect: + m_X: 394 + m_Y: 427 + m_Width: 25 + m_Height: 45 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 93 + m_Metrics: + m_Width: 12.749999 + m_Height: 44.624996 + m_HorizontalBearingX: 19.124998 + m_HorizontalBearingY: 50.999996 + m_HorizontalAdvance: 51 + m_GlyphRect: + m_X: 492 + m_Y: 303 + m_Width: 13 + m_Height: 45 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 94 + m_Metrics: + m_Width: 25.499998 + m_Height: 44.624996 + m_HorizontalBearingX: 6.3749995 + m_HorizontalBearingY: 50.999996 + m_HorizontalAdvance: 51 + m_GlyphRect: + m_X: 431 + m_Y: 415 + m_Width: 25 + m_Height: 45 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 95 + m_Metrics: + m_Width: 44.624996 + m_Height: 19.124998 + m_HorizontalBearingX: 0 + m_HorizontalBearingY: 38.249996 + m_HorizontalAdvance: 51 + m_GlyphRect: + m_X: 398 + m_Y: 261 + m_Width: 45 + m_Height: 19 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 96 + m_Metrics: + m_Width: 0 + m_Height: 0 + m_HorizontalBearingX: 0 + m_HorizontalBearingY: 0 + m_HorizontalAdvance: 51 + m_GlyphRect: + m_X: 6 + m_Y: -5 + m_Width: 0 + m_Height: 0 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 97 + m_Metrics: + m_Width: 44.624996 + m_Height: 12.749999 + m_HorizontalBearingX: 0 + m_HorizontalBearingY: 19.124998 + m_HorizontalAdvance: 51 + m_GlyphRect: + m_X: 454 + m_Y: 261 + m_Width: 45 + m_Height: 13 + m_Scale: 1 + m_AtlasIndex: 0 + m_CharacterTable: + - m_ElementType: 1 + m_Unicode: 32 + m_GlyphIndex: 1 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 33 + m_GlyphIndex: 2 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 34 + m_GlyphIndex: 3 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 35 + m_GlyphIndex: 4 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 36 + m_GlyphIndex: 5 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 37 + m_GlyphIndex: 6 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 38 + m_GlyphIndex: 7 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 39 + m_GlyphIndex: 8 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 40 + m_GlyphIndex: 9 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 41 + m_GlyphIndex: 10 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 42 + m_GlyphIndex: 11 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 43 + m_GlyphIndex: 12 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 44 + m_GlyphIndex: 13 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 45 + m_GlyphIndex: 14 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 46 + m_GlyphIndex: 15 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 47 + m_GlyphIndex: 16 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 48 + m_GlyphIndex: 17 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 49 + m_GlyphIndex: 18 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 50 + m_GlyphIndex: 19 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 51 + m_GlyphIndex: 20 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 52 + m_GlyphIndex: 21 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 53 + m_GlyphIndex: 22 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 54 + m_GlyphIndex: 23 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 55 + m_GlyphIndex: 24 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 56 + m_GlyphIndex: 25 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 57 + m_GlyphIndex: 26 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 58 + m_GlyphIndex: 27 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 59 + m_GlyphIndex: 28 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 60 + m_GlyphIndex: 29 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 61 + m_GlyphIndex: 30 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 62 + m_GlyphIndex: 31 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 63 + m_GlyphIndex: 32 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 64 + m_GlyphIndex: 33 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 65 + m_GlyphIndex: 34 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 66 + m_GlyphIndex: 35 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 67 + m_GlyphIndex: 36 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 68 + m_GlyphIndex: 37 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 69 + m_GlyphIndex: 38 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 70 + m_GlyphIndex: 39 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 71 + m_GlyphIndex: 40 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 72 + m_GlyphIndex: 41 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 73 + m_GlyphIndex: 42 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 74 + m_GlyphIndex: 43 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 75 + m_GlyphIndex: 44 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 76 + m_GlyphIndex: 45 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 77 + m_GlyphIndex: 46 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 78 + m_GlyphIndex: 47 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 79 + m_GlyphIndex: 48 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 80 + m_GlyphIndex: 49 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 81 + m_GlyphIndex: 50 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 82 + m_GlyphIndex: 51 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 83 + m_GlyphIndex: 52 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 84 + m_GlyphIndex: 53 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 85 + m_GlyphIndex: 54 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 86 + m_GlyphIndex: 55 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 87 + m_GlyphIndex: 56 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 88 + m_GlyphIndex: 57 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 89 + m_GlyphIndex: 58 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 90 + m_GlyphIndex: 59 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 91 + m_GlyphIndex: 60 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 92 + m_GlyphIndex: 61 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 93 + m_GlyphIndex: 62 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 94 + m_GlyphIndex: 63 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 95 + m_GlyphIndex: 64 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 96 + m_GlyphIndex: 65 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 97 + m_GlyphIndex: 66 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 98 + m_GlyphIndex: 67 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 99 + m_GlyphIndex: 68 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 100 + m_GlyphIndex: 69 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 101 + m_GlyphIndex: 70 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 102 + m_GlyphIndex: 71 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 103 + m_GlyphIndex: 72 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 104 + m_GlyphIndex: 73 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 105 + m_GlyphIndex: 74 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 106 + m_GlyphIndex: 75 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 107 + m_GlyphIndex: 76 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 108 + m_GlyphIndex: 77 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 109 + m_GlyphIndex: 78 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 110 + m_GlyphIndex: 79 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 111 + m_GlyphIndex: 80 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 112 + m_GlyphIndex: 81 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 113 + m_GlyphIndex: 82 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 114 + m_GlyphIndex: 83 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 115 + m_GlyphIndex: 84 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 116 + m_GlyphIndex: 85 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 117 + m_GlyphIndex: 86 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 118 + m_GlyphIndex: 87 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 119 + m_GlyphIndex: 88 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 120 + m_GlyphIndex: 89 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 121 + m_GlyphIndex: 90 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 122 + m_GlyphIndex: 91 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 123 + m_GlyphIndex: 92 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 124 + m_GlyphIndex: 93 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 125 + m_GlyphIndex: 94 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 126 + m_GlyphIndex: 95 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 160 + m_GlyphIndex: 96 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 8230 + m_GlyphIndex: 97 + m_Scale: 1 + m_AtlasTextures: + - {fileID: 28332796855081634} + m_AtlasTextureIndex: 0 + m_UsedGlyphRects: [] + m_FreeGlyphRects: [] + m_fontInfo: + Name: Press Start 2P + PointSize: 51 + Scale: 1 + CharacterCount: 97 + LineHeight: 51 + Baseline: 0 + Ascender: 51 + CapHeight: 50.999996 + Descender: 0 + CenterLine: 0 + SuperscriptOffset: 51 + SubscriptOffset: -5.1000004 + SubSize: 0.5 + Underline: -5.1000004 + UnderlineThickness: 2.5500002 + strikethrough: 18.545454 + strikethroughThickness: 2.5500002 + TabWidth: 510 + Padding: 5 + AtlasWidth: 512 + AtlasHeight: 512 + atlas: {fileID: 28332796855081634} + m_AtlasWidth: 512 + m_AtlasHeight: 512 + m_AtlasPadding: 5 + m_AtlasRenderMode: 16426 + m_glyphInfoList: + - id: 32 + x: 6 + y: 517 + width: 51 + height: 51 + xOffset: 0 + yOffset: 51 + xAdvance: 51 + scale: 1 + - id: 33 + x: 486 + y: 108 + width: 19.124998 + height: 44.624996 + xOffset: 12.749999 + yOffset: 50.999996 + xAdvance: 51 + scale: 1 + - id: 34 + x: 224 + y: 9 + width: 31.874998 + height: 19.124998 + xOffset: 6.3749995 + yOffset: 50.999996 + xAdvance: 51 + scale: 1 + - id: 35 + x: 6 + y: 399 + width: 44.624996 + height: 44.624996 + xOffset: 0 + yOffset: 50.999996 + xAdvance: 51 + scale: 1 + - id: 36 + x: 49 + y: 461 + width: 44.624996 + height: 44.624996 + xOffset: 0 + yOffset: 50.999996 + xAdvance: 51 + scale: 1 + - id: 37 + x: 6 + y: 343 + width: 44.624996 + height: 44.624996 + xOffset: 0 + yOffset: 50.999996 + xAdvance: 51 + scale: 1 + - id: 38 + x: 6 + y: 287 + width: 44.624996 + height: 44.624996 + xOffset: 0 + yOffset: 50.999996 + xAdvance: 51 + scale: 1 + - id: 39 + x: 322 + y: 21 + width: 12.749999 + height: 19.124998 + xOffset: 12.749999 + yOffset: 50.999996 + xAdvance: 51 + scale: 1 + - id: 40 + x: 224 + y: 40 + width: 25.499998 + height: 44.624996 + xOffset: 12.749999 + yOffset: 50.999996 + xAdvance: 51 + scale: 1 + - id: 41 + x: 261 + y: 40 + width: 25.499998 + height: 44.624996 + xOffset: 6.3749995 + yOffset: 50.999996 + xAdvance: 51 + scale: 1 + - id: 42 + x: 286 + y: 306 + width: 44.624996 + height: 31.874998 + xOffset: 0 + yOffset: 44.624996 + xAdvance: 51 + scale: 1 + - id: 43 + x: 174 + y: 9 + width: 38.249996 + height: 31.874998 + xOffset: 6.3749995 + yOffset: 44.624996 + xAdvance: 51 + scale: 1 + - id: 44 + x: 267 + y: 9 + width: 19.124998 + height: 19.124998 + xOffset: 6.3749995 + yOffset: 19.124998 + xAdvance: 51 + scale: 1 + - id: 45 + x: 224 + y: 152 + width: 38.249996 + height: 6.3749995 + xOffset: 6.3749995 + yOffset: 31.874998 + xAdvance: 51 + scale: 1 + - id: 46 + x: 346 + y: 28 + width: 12.749999 + height: 12.749999 + xOffset: 12.749999 + yOffset: 19.124998 + xAdvance: 51 + scale: 1 + - id: 47 + x: 6 + y: 231 + width: 44.624996 + height: 44.624996 + xOffset: 0 + yOffset: 50.999996 + xAdvance: 51 + scale: 1 + - id: 48 + x: 6 + y: 175 + width: 44.624996 + height: 44.624996 + xOffset: 0 + yOffset: 50.999996 + xAdvance: 51 + scale: 1 + - id: 49 + x: 342 + y: 176 + width: 38.249996 + height: 44.624996 + xOffset: 6.3749995 + yOffset: 50.999996 + xAdvance: 51 + scale: 1 + - id: 50 + x: 6 + y: 119 + width: 44.624996 + height: 44.624996 + xOffset: 0 + yOffset: 50.999996 + xAdvance: 51 + scale: 1 + - id: 51 + x: 6 + y: 63 + width: 44.624996 + height: 44.624996 + xOffset: 0 + yOffset: 50.999996 + xAdvance: 51 + scale: 1 + - id: 52 + x: 6 + y: 7 + width: 44.624996 + height: 44.624996 + xOffset: 0 + yOffset: 50.999996 + xAdvance: 51 + scale: 1 + - id: 53 + x: 105 + y: 461 + width: 44.624996 + height: 44.624996 + xOffset: 0 + yOffset: 50.999996 + xAdvance: 51 + scale: 1 + - id: 54 + x: 161 + y: 461 + width: 44.624996 + height: 44.624996 + xOffset: 0 + yOffset: 50.999996 + xAdvance: 51 + scale: 1 + - id: 55 + x: 217 + y: 461 + width: 44.624996 + height: 44.624996 + xOffset: 0 + yOffset: 50.999996 + xAdvance: 51 + scale: 1 + - id: 56 + x: 273 + y: 461 + width: 44.624996 + height: 44.624996 + xOffset: 0 + yOffset: 50.999996 + xAdvance: 51 + scale: 1 + - id: 57 + x: 329 + y: 461 + width: 44.624996 + height: 44.624996 + xOffset: 0 + yOffset: 50.999996 + xAdvance: 51 + scale: 1 + - id: 58 + x: 298 + y: 9 + width: 12.749999 + height: 31.874998 + xOffset: 12.749999 + yOffset: 44.624996 + xAdvance: 51 + scale: 1 + - id: 59 + x: 468 + y: 58 + width: 19.124998 + height: 38.249996 + xOffset: 6.3749995 + yOffset: 44.624996 + xAdvance: 51 + scale: 1 + - id: 60 + x: 274 + y: 108 + width: 31.874998 + height: 44.624996 + xOffset: 6.3749995 + yOffset: 50.999996 + xAdvance: 51 + scale: 1 + - id: 61 + x: 342 + y: 232 + width: 44.624996 + height: 19.124998 + xOffset: 0 + yOffset: 38.249996 + xAdvance: 51 + scale: 1 + - id: 62 + x: 224 + y: 96 + width: 31.874998 + height: 44.624996 + xOffset: 6.3749995 + yOffset: 50.999996 + xAdvance: 51 + scale: 1 + - id: 63 + x: 385 + y: 461 + width: 44.624996 + height: 44.624996 + xOffset: 0 + yOffset: 50.999996 + xAdvance: 51 + scale: 1 + - id: 64 + x: 441 + y: 461 + width: 44.624996 + height: 44.624996 + xOffset: 0 + yOffset: 50.999996 + xAdvance: 51 + scale: 1 + - id: 65 + x: 62 + y: 405 + width: 44.624996 + height: 44.624996 + xOffset: 0 + yOffset: 50.999996 + xAdvance: 51 + scale: 1 + - id: 66 + x: 62 + y: 349 + width: 44.624996 + height: 44.624996 + xOffset: 0 + yOffset: 50.999996 + xAdvance: 51 + scale: 1 + - id: 67 + x: 62 + y: 293 + width: 44.624996 + height: 44.624996 + xOffset: 0 + yOffset: 50.999996 + xAdvance: 51 + scale: 1 + - id: 68 + x: 62 + y: 237 + width: 44.624996 + height: 44.624996 + xOffset: 0 + yOffset: 50.999996 + xAdvance: 51 + scale: 1 + - id: 69 + x: 62 + y: 181 + width: 44.624996 + height: 44.624996 + xOffset: 0 + yOffset: 50.999996 + xAdvance: 51 + scale: 1 + - id: 70 + x: 62 + y: 125 + width: 44.624996 + height: 44.624996 + xOffset: 0 + yOffset: 50.999996 + xAdvance: 51 + scale: 1 + - id: 71 + x: 62 + y: 69 + width: 44.624996 + height: 44.624996 + xOffset: 0 + yOffset: 50.999996 + xAdvance: 51 + scale: 1 + - id: 72 + x: 62 + y: 13 + width: 44.624996 + height: 44.624996 + xOffset: 0 + yOffset: 50.999996 + xAdvance: 51 + scale: 1 + - id: 73 + x: 286 + y: 164 + width: 38.249996 + height: 44.624996 + xOffset: 6.3749995 + yOffset: 50.999996 + xAdvance: 51 + scale: 1 + - id: 74 + x: 118 + y: 405 + width: 44.624996 + height: 44.624996 + xOffset: 0 + yOffset: 50.999996 + xAdvance: 51 + scale: 1 + - id: 75 + x: 174 + y: 405 + width: 44.624996 + height: 44.624996 + xOffset: 0 + yOffset: 50.999996 + xAdvance: 51 + scale: 1 + - id: 76 + x: 392 + y: 176 + width: 38.249996 + height: 44.624996 + xOffset: 6.3749995 + yOffset: 50.999996 + xAdvance: 51 + scale: 1 + - id: 77 + x: 230 + y: 405 + width: 44.624996 + height: 44.624996 + xOffset: 0 + yOffset: 50.999996 + xAdvance: 51 + scale: 1 + - id: 78 + x: 286 + y: 405 + width: 44.624996 + height: 44.624996 + xOffset: 0 + yOffset: 50.999996 + xAdvance: 51 + scale: 1 + - id: 79 + x: 342 + y: 405 + width: 44.624996 + height: 44.624996 + xOffset: 0 + yOffset: 50.999996 + xAdvance: 51 + scale: 1 + - id: 80 + x: 398 + y: 405 + width: 44.624996 + height: 44.624996 + xOffset: 0 + yOffset: 50.999996 + xAdvance: 51 + scale: 1 + - id: 81 + x: 454 + y: 405 + width: 44.624996 + height: 44.624996 + xOffset: 0 + yOffset: 50.999996 + xAdvance: 51 + scale: 1 + - id: 82 + x: 118 + y: 349 + width: 44.624996 + height: 44.624996 + xOffset: 0 + yOffset: 50.999996 + xAdvance: 51 + scale: 1 + - id: 83 + x: 118 + y: 293 + width: 44.624996 + height: 44.624996 + xOffset: 0 + yOffset: 50.999996 + xAdvance: 51 + scale: 1 + - id: 84 + x: 442 + y: 164 + width: 38.249996 + height: 44.624996 + xOffset: 6.3749995 + yOffset: 50.999996 + xAdvance: 51 + scale: 1 + - id: 85 + x: 118 + y: 237 + width: 44.624996 + height: 44.624996 + xOffset: 0 + yOffset: 50.999996 + xAdvance: 51 + scale: 1 + - id: 86 + x: 118 + y: 181 + width: 44.624996 + height: 44.624996 + xOffset: 0 + yOffset: 50.999996 + xAdvance: 51 + scale: 1 + - id: 87 + x: 118 + y: 125 + width: 44.624996 + height: 44.624996 + xOffset: 0 + yOffset: 50.999996 + xAdvance: 51 + scale: 1 + - id: 88 + x: 118 + y: 69 + width: 44.624996 + height: 44.624996 + xOffset: 0 + yOffset: 50.999996 + xAdvance: 51 + scale: 1 + - id: 89 + x: 336 + y: 120 + width: 38.249996 + height: 44.624996 + xOffset: 6.3749995 + yOffset: 50.999996 + xAdvance: 51 + scale: 1 + - id: 90 + x: 118 + y: 13 + width: 44.624996 + height: 44.624996 + xOffset: 0 + yOffset: 50.999996 + xAdvance: 51 + scale: 1 + - id: 91 + x: 298 + y: 52 + width: 25.499998 + height: 44.624996 + xOffset: 12.749999 + yOffset: 50.999996 + xAdvance: 51 + scale: 1 + - id: 92 + x: 174 + y: 349 + width: 44.624996 + height: 44.624996 + xOffset: 0 + yOffset: 50.999996 + xAdvance: 51 + scale: 1 + - id: 93 + x: 335 + y: 52 + width: 25.499998 + height: 44.624996 + xOffset: 6.3749995 + yOffset: 50.999996 + xAdvance: 51 + scale: 1 + - id: 94 + x: 372 + y: 96 + width: 31.874998 + height: 12.749999 + xOffset: 6.3749995 + yOffset: 50.999996 + xAdvance: 51 + scale: 1 + - id: 95 + x: 454 + y: 220 + width: 44.624996 + height: 6.3749995 + xOffset: 0 + yOffset: 6.3749995 + xAdvance: 51 + scale: 1 + - id: 96 + x: 370 + y: 28 + width: 12.749999 + height: 12.749999 + xOffset: 19.124998 + yOffset: 50.999996 + xAdvance: 51 + scale: 1 + - id: 97 + x: 342 + y: 306 + width: 44.624996 + height: 31.874998 + xOffset: 0 + yOffset: 38.249996 + xAdvance: 51 + scale: 1 + - id: 98 + x: 230 + y: 349 + width: 44.624996 + height: 44.624996 + xOffset: 0 + yOffset: 50.999996 + xAdvance: 51 + scale: 1 + - id: 99 + x: 398 + y: 306 + width: 44.624996 + height: 31.874998 + xOffset: 0 + yOffset: 38.249996 + xAdvance: 51 + scale: 1 + - id: 100 + x: 286 + y: 349 + width: 44.624996 + height: 44.624996 + xOffset: 0 + yOffset: 50.999996 + xAdvance: 51 + scale: 1 + - id: 101 + x: 286 + y: 263 + width: 44.624996 + height: 31.874998 + xOffset: 0 + yOffset: 38.249996 + xAdvance: 51 + scale: 1 + - id: 102 + x: 386 + y: 120 + width: 38.249996 + height: 44.624996 + xOffset: 6.3749995 + yOffset: 50.999996 + xAdvance: 51 + scale: 1 + - id: 103 + x: 454 + y: 355 + width: 44.624996 + height: 38.249996 + xOffset: 0 + yOffset: 38.249996 + xAdvance: 51 + scale: 1 + - id: 104 + x: 342 + y: 349 + width: 44.624996 + height: 44.624996 + xOffset: 0 + yOffset: 50.999996 + xAdvance: 51 + scale: 1 + - id: 105 + x: 436 + y: 108 + width: 38.249996 + height: 44.624996 + xOffset: 6.3749995 + yOffset: 50.999996 + xAdvance: 51 + scale: 1 + - id: 106 + x: 6 + y: 455 + width: 31.874998 + height: 50.999996 + xOffset: 6.3749995 + yOffset: 50.999996 + xAdvance: 51 + scale: 1 + - id: 107 + x: 398 + y: 349 + width: 44.624996 + height: 44.624996 + xOffset: 0 + yOffset: 50.999996 + xAdvance: 51 + scale: 1 + - id: 108 + x: 174 + y: 52 + width: 38.249996 + height: 44.624996 + xOffset: 6.3749995 + yOffset: 50.999996 + xAdvance: 51 + scale: 1 + - id: 109 + x: 174 + y: 256 + width: 44.624996 + height: 31.874998 + xOffset: 0 + yOffset: 38.249996 + xAdvance: 51 + scale: 1 + - id: 110 + x: 230 + y: 256 + width: 44.624996 + height: 31.874998 + xOffset: 0 + yOffset: 38.249996 + xAdvance: 51 + scale: 1 + - id: 111 + x: 342 + y: 263 + width: 44.624996 + height: 31.874998 + xOffset: 0 + yOffset: 38.249996 + xAdvance: 51 + scale: 1 + - id: 112 + x: 454 + y: 305 + width: 44.624996 + height: 38.249996 + xOffset: 0 + yOffset: 38.249996 + xAdvance: 51 + scale: 1 + - id: 113 + x: 174 + y: 299 + width: 44.624996 + height: 38.249996 + xOffset: 0 + yOffset: 38.249996 + xAdvance: 51 + scale: 1 + - id: 114 + x: 174 + y: 170 + width: 38.249996 + height: 31.874998 + xOffset: 6.3749995 + yOffset: 38.249996 + xAdvance: 51 + scale: 1 + - id: 115 + x: 398 + y: 263 + width: 44.624996 + height: 31.874998 + xOffset: 0 + yOffset: 38.249996 + xAdvance: 51 + scale: 1 + - id: 116 + x: 174 + y: 108 + width: 38.249996 + height: 44.624996 + xOffset: 6.3749995 + yOffset: 50.999996 + xAdvance: 51 + scale: 1 + - id: 117 + x: 454 + y: 262 + width: 44.624996 + height: 31.874998 + xOffset: 0 + yOffset: 38.249996 + xAdvance: 51 + scale: 1 + - id: 118 + x: 224 + y: 170 + width: 38.249996 + height: 31.874998 + xOffset: 6.3749995 + yOffset: 38.249996 + xAdvance: 51 + scale: 1 + - id: 119 + x: 286 + y: 220 + width: 44.624996 + height: 31.874998 + xOffset: 0 + yOffset: 38.249996 + xAdvance: 51 + scale: 1 + - id: 120 + x: 174 + y: 213 + width: 44.624996 + height: 31.874998 + xOffset: 0 + yOffset: 38.249996 + xAdvance: 51 + scale: 1 + - id: 121 + x: 230 + y: 299 + width: 44.624996 + height: 38.249996 + xOffset: 0 + yOffset: 38.249996 + xAdvance: 51 + scale: 1 + - id: 122 + x: 230 + y: 213 + width: 44.624996 + height: 31.874998 + xOffset: 0 + yOffset: 38.249996 + xAdvance: 51 + scale: 1 + - id: 123 + x: 394 + y: 40 + width: 25.499998 + height: 44.624996 + xOffset: 12.749999 + yOffset: 50.999996 + xAdvance: 51 + scale: 1 + - id: 124 + x: 492 + y: 164 + width: 12.749999 + height: 44.624996 + xOffset: 19.124998 + yOffset: 50.999996 + xAdvance: 51 + scale: 1 + - id: 125 + x: 431 + y: 52 + width: 25.499998 + height: 44.624996 + xOffset: 6.3749995 + yOffset: 50.999996 + xAdvance: 51 + scale: 1 + - id: 126 + x: 398 + y: 232 + width: 44.624996 + height: 19.124998 + xOffset: 0 + yOffset: 38.249996 + xAdvance: 51 + scale: 1 + - id: 160 + x: 6 + y: 517 + width: 0 + height: 0 + xOffset: 0 + yOffset: 0 + xAdvance: 51 + scale: 1 + - id: 8230 + x: 454 + y: 238 + width: 44.624996 + height: 12.749999 + xOffset: 0 + yOffset: 19.124998 + xAdvance: 51 + scale: 1 + m_KerningTable: + kerningPairs: [] + m_FontFeatureTable: + m_GlyphPairAdjustmentRecords: [] + fallbackFontAssets: [] + m_FallbackFontAssetTable: [] + m_CreationSettings: + sourceFontFileName: + sourceFontFileGUID: e3404db2d8fe24734b54a21a6d6c0359 + pointSizeSamplingMode: 0 + pointSize: 51 + padding: 5 + packingMode: 0 + atlasWidth: 512 + atlasHeight: 512 + characterSetSelectionMode: 0 + characterSequence: 32 - 126, 160, 8203, 8230, 9633 + referencedFontAssetGUID: + referencedTextAssetGUID: + fontStyle: 0 + fontStyleModifier: 2 + renderMode: 6 + includeFontFeatures: 0 + m_FontWeightTable: + - regularTypeface: {fileID: 0} + italicTypeface: {fileID: 0} + - regularTypeface: {fileID: 0} + italicTypeface: {fileID: 0} + - regularTypeface: {fileID: 0} + italicTypeface: {fileID: 0} + - regularTypeface: {fileID: 0} + italicTypeface: {fileID: 0} + - regularTypeface: {fileID: 0} + italicTypeface: {fileID: 0} + - regularTypeface: {fileID: 0} + italicTypeface: {fileID: 0} + - regularTypeface: {fileID: 0} + italicTypeface: {fileID: 0} + - regularTypeface: {fileID: 0} + italicTypeface: {fileID: 0} + - regularTypeface: {fileID: 0} + italicTypeface: {fileID: 0} + - regularTypeface: {fileID: 0} + italicTypeface: {fileID: 0} + fontWeights: + - regularTypeface: {fileID: 0} + italicTypeface: {fileID: 0} + - regularTypeface: {fileID: 0} + italicTypeface: {fileID: 0} + - regularTypeface: {fileID: 0} + italicTypeface: {fileID: 0} + - regularTypeface: {fileID: 0} + italicTypeface: {fileID: 0} + - regularTypeface: {fileID: 0} + italicTypeface: {fileID: 0} + - regularTypeface: {fileID: 0} + italicTypeface: {fileID: 0} + - regularTypeface: {fileID: 0} + italicTypeface: {fileID: 0} + - regularTypeface: {fileID: 0} + italicTypeface: {fileID: 0} + - regularTypeface: {fileID: 0} + italicTypeface: {fileID: 0} + - regularTypeface: {fileID: 0} + italicTypeface: {fileID: 0} + normalStyle: 0 + normalSpacingOffset: 0 + boldStyle: 0.75 + boldSpacing: 7 + italicStyle: 35 + tabSize: 10 +--- !u!21 &21699584260080902 +Material: + serializedVersion: 6 + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_Name: PressStart2P-Regular SDF Material + m_Shader: {fileID: 4800000, guid: 68e6db2ebdc24f95958faec2be5558d6, type: 3} + m_ShaderKeywords: + m_LightmapFlags: 4 + m_EnableInstancingVariants: 0 + m_DoubleSidedGI: 0 + m_CustomRenderQueue: -1 + stringTagMap: {} + disabledShaderPasses: [] + m_SavedProperties: + serializedVersion: 3 + m_TexEnvs: + - _BumpMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _Cube: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _FaceTex: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _MainTex: + m_Texture: {fileID: 28332796855081634} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _OutlineTex: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + m_Floats: + - _Ambient: 0.5 + - _Bevel: 0.5 + - _BevelClamp: 0 + - _BevelOffset: 0 + - _BevelRoundness: 0 + - _BevelWidth: 0 + - _BumpFace: 0 + - _BumpOutline: 0 + - _ColorMask: 15 + - _Diffuse: 0.5 + - _FaceDilate: 0 + - _FaceUVSpeedX: 0 + - _FaceUVSpeedY: 0 + - _GlowInner: 0.05 + - _GlowOffset: 0 + - _GlowOuter: 0.05 + - _GlowPower: 0.75 + - _GradientScale: 6 + - _LightAngle: 3.1416 + - _MaskSoftnessX: 0 + - _MaskSoftnessY: 0 + - _OutlineSoftness: 0 + - _OutlineUVSpeedX: 0 + - _OutlineUVSpeedY: 0 + - _OutlineWidth: 0 + - _PerspectiveFilter: 0.875 + - _Reflectivity: 10 + - _ScaleRatioA: 0.8333333 + - _ScaleRatioB: 0.6770833 + - _ScaleRatioC: 0.6770833 + - _ScaleX: 1 + - _ScaleY: 1 + - _ShaderFlags: 0 + - _SpecularPower: 2 + - _Stencil: 0 + - _StencilComp: 8 + - _StencilOp: 0 + - _StencilReadMask: 255 + - _StencilWriteMask: 255 + - _TextureHeight: 512 + - _TextureWidth: 512 + - _UnderlayDilate: 0 + - _UnderlayOffsetX: 0 + - _UnderlayOffsetY: 0 + - _UnderlaySoftness: 0 + - _VertexOffsetX: 0 + - _VertexOffsetY: 0 + - _WeightBold: 0.75 + - _WeightNormal: 0 + m_Colors: + - _ClipRect: {r: -32767, g: -32767, b: 32767, a: 32767} + - _EnvMatrixRotation: {r: 0, g: 0, b: 0, a: 0} + - _FaceColor: {r: 1, g: 1, b: 1, a: 1} + - _GlowColor: {r: 0, g: 1, b: 0, a: 0.5} + - _MaskCoord: {r: 0, g: 0, b: 32767, a: 32767} + - _OutlineColor: {r: 0, g: 0, b: 0, a: 1} + - _ReflectFaceColor: {r: 0, g: 0, b: 0, a: 1} + - _ReflectOutlineColor: {r: 0, g: 0, b: 0, a: 1} + - _SpecularColor: {r: 1, g: 1, b: 1, a: 1} + - _UnderlayColor: {r: 0, g: 0, b: 0, a: 0.5} +--- !u!28 &28332796855081634 +Texture2D: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_Name: PressStart2P-Regular SDF Atlas + m_ImageContentsHash: + serializedVersion: 2 + Hash: 00000000000000000000000000000000 + m_ForcedFallbackFormat: 4 + m_DownscaleFallback: 0 + serializedVersion: 2 + m_Width: 512 + m_Height: 512 + m_CompleteImageSize: 262144 + m_TextureFormat: 1 + m_MipCount: 1 + m_IsReadable: 0 + m_StreamingMipmaps: 0 + m_StreamingMipmapsPriority: 0 + m_AlphaIsTransparency: 0 + m_ImageCount: 1 + m_TextureDimension: 2 + m_TextureSettings: + serializedVersion: 2 + m_FilterMode: 1 + m_Aniso: 1 + m_MipBias: 0 + m_WrapU: 0 + m_WrapV: 0 + m_WrapW: 0 + m_LightmapFormat: 0 + m_ColorSpace: 0 + image data: 262144 + _typelessdata: 0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005111a1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1d160c00000000000000000000000000000000000000000000000000000000000009111617171717171717150f05000000000000000000000000000000000000000000000000000000000000061015171717171717171717171717171717171717171717171717171717171717171717140d020000000000000000000000000000000000061015171717171717171717171717171717171717171717171717171717171717171717140d020000000000000000000000000000000000000000000000020d141717171717171717171717171717150f05000000000000000000000000000000000000000000000000000000000000061015171717171717171717171717171717171717171717171717171717171717171717140d0200000000000000000000000000000000000610151717171717171717171717171717171717171717171717171717161109000000000000000000000000000000000000000000000000000000000000020d141717171717171717171717171717171717171717161109000000000000000000000000000000000000000000000000061015171717171717171717171717171717171717171717171717171717171717171717140d020000000000000000000000000000000000000000000000000000000000000515232e34343434343434343434343434343434343434343434343434343431291d0e000000000000000000000000000000000000000000000000000000000e1b252b2c2c2c2c2c2c2c2a221608000000000000000000000000000000000000000000000000000000000a18232a2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c281f13040000000000000000000000000000000a18232a2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c281f130400000000000000000000000000000000000000000004131f282c2c2c2c2c2c2c2c2c2c2c2c2c2c2a221608000000000000000000000000000000000000000000000000000000000a18232a2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c281f13040000000000000000000000000000000a18232a2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2b251b0e0000000000000000000000000000000000000000000000000000000004131f282c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2b251b0e000000000000000000000000000000000000000000000a18232a2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c281f1304000000000000000000000000000000000000000000000000000000000011233341494a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a453b2c1a0800000000000000000000000000000000000000000000000000000b1c2c3840424242424242423e342616040000000000000000000000000000000000000000000000000000061828363f4242424242424242424242424242424242424242424242424242424242424242413c3122120000000000000000000000000000061828363f4242424242424242424242424242424242424242424242424242424242424242413c3122120000000000000000000000000000000000000000001222313c41424242424242424242424242423e342616040000000000000000000000000000000000000000000000000000061828363f4242424242424242424242424242424242424242424242424242424242424242413c3122120000000000000000000000000000061828363f424242424242424242424242424242424242424242424242424240382c1c0b0000000000000000000000000000000000000000000000000000001222313c414242424242424242424242424242424242424240382c1c0b0000000000000000000000000000000000000000061828363f4242424242424242424242424242424242424242424242424242424242424242413c31221200000000000000000000000000000000000000000000000000000000001a2e41515d5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5849372410000000000000000000000000000000000000000000000000000015283a4a5557575757575757514433210d000000000000000000000000000000000000000000000000000010233646535757575757575757575757575757575757575757575757575757575757575757574f402f1c080000000000000000000000000010233646535757575757575757575757575757575757575757575757575757575757575757574f402f1c0800000000000000000000000000000000000000081c2f404f5757575757575757575757575757514433210d000000000000000000000000000000000000000000000000000010233646535757575757575757575757575757575757575757575757575757575757575757574f402f1c080000000000000000000000000010233646535757575757575757575757575757575757575757575757575757554a3a28150100000000000000000000000000000000000000000000000000081c2f404f5757575757575757575757575757575757575757554a3a2815010000000000000000000000000000000000000010233646535757575757575757575757575757575757575757575757575757575757575757574f402f1c08000000000000000000000000000000000000000000000000000000001f34495d70747474747474747474747474747474747474747474747474747467533e291400000000000000000000000000000000000000000000000000001b2f4457686c6c6c6c6c6c6c62503c28130000000000000000000000000000000000000000000000000000152a3f53646c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6b5e4b37230e00000000000000000000000000152a3f53646c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6b5e4b37230e000000000000000000000000000000000000000e23374b5e6b6c6c6c6c6c6c6c6c6c6c6c6c6c62503c28130000000000000000000000000000000000000000000000000000152a3f53646c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6b5e4b37230e00000000000000000000000000152a3f53646c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6857442f1b06000000000000000000000000000000000000000000000000000e23374b5e6b6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6857442f1b0600000000000000000000000000000000000000152a3f53646c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6b5e4b37230e000000000000000000000000000000000000000000000000000000001f344a5f748b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b806a543f2a1502010000000000000000000000000000000000000000000000001d32475c72838383838383806a543f2a150000000000000000000000000000000000000000000000000000172c42576c838383838383838383838383838383838383838383838383838383838383838379644f3a250f00000000000000000000000000172c42576c838383838383838383838383838383838383838383838383838383838383838379644f3a250f000000000000000000000000000000000000000f253a4f6479838383838383838383838383806a543f2a150000000000000000000000000000000000000000000000000000172c42576c838383838383838383838383838383838383838383838383838383838383838379644f3a250f00000000000000000000000000172c42576c8383838383838383838383838383838383838383838383838383725c47321d07000000000000000000000000000000000000000000000000000f253a4f647983838383838383838383838383838383838383725c47321d0700000000000000000000000000000000000000172c42576c838383838383838383838383838383838383838383838383838383838383838379644f3a250f000000000000000000000000000000000000000000000000000000001f344a5f748ba0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a095806a543f2a17171611090000000000030b0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f1d32475c72889898989895806a543f2a150f0f0f0f0f0f0f0f0c05000000000000000000000000030b0f0f172c42576c839898989898989898989898989898989898989898989898989898989898989079644f3a250f0f0e08000000000000030b0f0f172c42576c839898989898989898989898989898989898989898989898989898989898989079644f3a250f0f0e08000000000000000000000000000000000f253a4f6479909898989898989898989895806a543f2a1500000000000000000000000000000000000000000000030b0f0f172c42576c839898989898989898989898989898989898989898989898989898989898989079644f3a250f0f0e0800000000000000000000172c42576c8398989898989898989898989898989898989898989898989888725c47321d0f0f0c05000000000000000000000000000000000000000000000f253a4f647990989898989898989898989898989898989888725c47321d07000000000000000000000000000000030b0f0f172c42576c839898989898989898989898989898989898989898989898989898989898989079644f3a250f000000000000000000000000000000000000000000000000000000001f344a5f748ba0b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5ab95806a543f2c2c2c2b251b0e0000000a161f2425252525252525252525252525252532475c72889dadadab95806a543f2a25252525252525252421180d000000000000000000000a161f2425252c42576c8398adadadadadadadadadadadadadadadadadadadadadadadadadadadada59079644f3a252525231c12040000000a161f2425252c42576c8398adadadadadadadadadadadadadadadadadadadadadadadadadadadada59079644f3a252525231c120400000000000000000000000000000f253a4f647990a5adadadadadadadadab95806a543f2a150000000000000000000000000000000000000000000a161f2425252c42576c8398adadadadadadadadadadadadadadadadadadadadadadadadadadadada59079644f3a252525231c12040000000000000000172c42576c8398adadadadadadadadadadadadadadadadadadadadadad9d88725c473225252421180d0000000000000000000000000000000000000000000f253a4f647990a5adadadadadadadadadadadadadadad9d88725c47321d0700000000000000000000000000000a161f2425252c42576c8398adadadadadadadadadadadadadadadadadadadadadadadadadadadada59079644f3a250f000000000000000000000000000000000000000000000000000000001f344a5f748ba0b5bdbdbdbdbdbdbdbdbdbdbdbdbdbdbdbdbec4cbc0ab95806a544242424240382c1c0b0009192733393a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a475c72889db3c0ab95806a543f3a3a3a3a3a3a3a3a3a3a352b1d0d000000000000000009192733393a3a3a42576c8398adc3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3bba59079644f3a3a3a3a372f2213020009192733393a3a3a42576c8398adc3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3bba59079644f3a3a3a3a372f221302000000000000000000000000000f253a4f647990a5bbc3c3c3c3c3c3c0ab95806a543f2a15000000000000000000000000000000000000000009192733393a3a3a42576c8398adc3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3bba59079644f3a3a3a3a372f22130200000000000000172c42576c8398adc3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3b39d88725c473a3a3a3a352b1d0d00000000000000000000000000000000000000000f253a4f647990a5bbc3c3c3c3c3c3c3c3c3c3c3c3c3b39d88725c47321d070000000000000000000000000009192733393a3a3a42576c8398adc3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3bba59079644f3a250f000000000000000000000000000000000000000000000000000000001f344a5f748ba0a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a9b2c1c0ab95806a5757575757554a3a281500142637454e4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f5c72889db3c0ab95806a544f4f4f4f4f4f4f4f4f4f4f483b2b180500000000000000142637454e4f4f4f4f576c8398adc3c4b7b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b2bbcabba59079644f4f4f4f4f4b40311f0d00142637454e4f4f4f4f576c8398adc3c4b7b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b2bbcabba59079644f4f4f4f4f4b40311f0d000000000000000000000000000f253a4f647990a5bbd0d8d8d8d8d5c0ab95806a543f2a150000000000000000000000000000000000000000142637454e4f4f4f4f576c8398adb0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b2bbcabba59079644f4f4f4f4f4b40311f0d00000000000000172c42576c8398adb0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b5c0c8b39d88725c4f4f4f4f4f483b2b1805000000000000000000000000000000000000000f253a4f647990a5b0b0b0b0b0b0b0b0b0b0b0b0b0b0b09d88725c47321d0700000000000000000000000000142637454e4f4f4f4f576c8398adb0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0a59079644f3a250f000000000000000000000000000000000000000000000000000000001f344a5f748b93939393939393939393939393939393939395a3b6c0ab95806c6c6c6c6c6c6857442f1b001b3043556264646464646464646464646464646464646472889db3c0ab95806a646464646464646464646464594835210c000000000000001b3043556264646464646c8398adc3b7a69b9b9b9b9b9b9b9b9b9b9b9b9b9b9b9b9b9b9b9b9eacbebba590796464646464645e4f3c2814001b3043556264646464646c8398adc3b7a69b9b9b9b9b9b9b9b9b9b9b9b9b9b9b9b9b9b9b9b9eacbebba590796464646464645e4f3c2814000000000000000000000000000f253a4f647990a5bbd0e5ededead5c0ab95806a543f2a1500000000000000000000000000000000000000001b3043556264646464646c83989b9b9b9b9b9b9b9b9b9b9b9b9b9b9b9b9b9b9b9b9b9b9b9b9eacbebba590796464646464645e4f3c281400000000000000172c42576c83989b9b9b9b9b9b9b9b9b9b9b9b9b9b9b9b9b9ba2b3c5b39d8872646464646464594835210c000000000000000000000000000000000000000f253a4f6479909b9b9b9b9b9b9b9b9b9b9b9b9b9b9b9b9b88725c47321d07000000000000000000000000001b3043556264646464646c83989b9b9b9b9b9b9b9b9b9b9b9b9b9b9b9b9b9b9b9b9b9b9b9b9b9b9b9b9b9079644f3a250f000000000000000000000000000000000000000000000000000000001f344a5f747c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c889db3c0ab9683838383838383725c47321d001f34495e7379797979797979797979797979797979797979889db3c0ab958079797979797979797979797977644f3a240f000000000000001f34495e737979797979798398adc3b09b88868686868686868686868686868686868686868fa3b8bba590797979797979796b57412c17001f34495e737979797979798398adc3b09b88868686868686868686868686868686868686868fa3b8bba590797979797979796b57412c17000000000000000000000000000f253a4f647990a5bbd0e5faffead5c0ab95806a543f2a1500000000000000000000000000000000000000001f34495e7379797979797983868686868686868686868686868686868686868686868686868fa3b8bba590797979797979796b57412c1700000000000000172c42576c838686868686868686868686868686868686868696abc0b39d8879797979797977644f3a240f000000000000000000000000000000000000000f253a4f647986868686868686868686868686868686868686725c47321d07000000000000000000000000001f34495e73797979797979838686868686868686868686868686868686868686868686868686868686868679644f3a250f000000000000000000000000000000000000000000000000000000001c3144576467676767676767676767676767676767676772889db3c4b1a098989898989888725c47321d001f344a5f748b90909090909090909090909090909090909092a2b5c2ae9b9090909090909090909090909079644f3a250f070601000000001f344a5f748b9090909090909db0c5b09b866f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f778da3b8bda997909090909090836c57422c17001f344a5f748b9090909090909db0c5b09b866f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f778da3b8bda997909090909090836c57422c17000000000000000000000000000f253a4f647990a5bbd0e5faffead5c0ab95806a543f2a1500000000000000000000000000000000000000001f344a5f748b90909090907c6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f778da3b8bda997909090909090836c57422c1700000000000000162b4054666f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f8095abc0b5a29290909090909079644f3a250f070601000000000000000000000000000000000e23384c606e6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6a5945301b06000000000000000000000000001f344a5f748b90909090907c6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6e604c38230e07060100000000000000000000000000000000000000000000000000152839475052525252525252525252525252525252525c72889db3c8beb2adadadadad9d88725c47321d001f344a5f748ba0a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a6b0bfcab9aba5a5a5a5a5a5a5a5a5a5a5a59079644f3a251d1d1b150b0000001f344a5f748ba0a5a5a5a5a5adbbc5b09b866f5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a62778da3b8c6b5a9a5a5a5a5a598836c57422c17001f344a5f748ba0a5a5a5a5a5adbbc5b09b866f5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a62778da3b8c6b5a9a5a5a5a5a598836c57422c17000000000000000000000000000f253a4f647990a5bbd0e5faffead5c0ab95806a543f2a1500000000000000000000000000000000000000001f344a5f748ba0a5a5a5937c675a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a62778da3b8c6b5a9a5a5a5a5a598836c57422c170000000000000011243748555a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a6a8095abc0bfb0a6a5a5a5a5a59079644f3a251d1d1b150b000000000000000000000000000000091d304251595a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a574c3c291601000000000000000000000000001f344a5f748ba0a5a5a5937c675a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a595142301d1d1d1b150b0000000000000000000000000000000000000000000000000a1b2a353b3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c475c72889db3c8cfc6c3c3c3c3b39d88725c47321d001f344a5f748ba0b5bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbc2ced7c9bfbbbbbbbbbbbbbbbbbbbbbba59079644f3a3232322f281c0e00001f344a5f748ba0b5bbbbbbbbc0cac5b09b866f5a44444444444444444444444444444c62778da3b8cdc6bdbbbbbbbbad98836c57422c17001f344a5f748ba0b5bbbbbbbbc0cac5b09b866f5a44444444444444444444444444444c62778da3b8cdc6bdbbbbbbbbad98836c57422c17000000000000000000000000000f253a4f647990a5bbd0e5faffead5c0ab95806a543f2a1500000000000000000000000000000000000000001f344a5f748ba0b5bba8937c675244444444444444444444444444444444444444444c62778da3b8cdc6bdbbbbbbbbad98836c57422c1700000000000000081a2a38414444444444444444444444444444444444546a8095abc0cdc2bbbbbbbbbba59079644f3a3232322f281c0e0000000000000000000000000000011324333e4444444444444444444444444444444444444444433b2e1e0c00000000000000000000000000001f344a5f748ba0b5bba8937c67524444444444444444444444444444444444444444444444444444444444443e33323232322f281c0e0000000000000000000000000000000000000000000000000c18212627272727272727272727272727272732475c72889db3c8dddad8d8d8c8b39d88725c47321d001f344a5f748ba0b5b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b9bfccd5c7bcb8b8b8b8b8b8b8bac2cfbba59079644f47474747443a2c1b09001f344a5f748ba0b5b8b8b8b8b8b8b8b09b866f5a442f2f2f2f2f2f2f2f2f2f2f2f374c62778da3b8cdd8d2d0d0d0c3ad98836c57422c17001f344a5f748ba0b5cbd0d0d0d4dac5b09b866f5a442f2f2f2f2f2f2f2f2f2f2f2f374c62778da3b8cdd8d2d0d0d0c3ad98836c57422c17000000000000000000000000000f253a4f647990a5bbd0e5faffead5c0ab95806a543f2a1500000000000000000000000000000000000000001f344a5f748ba0b5bda8937c67523c2f2f2f2f2f2f303d45474747474747474747474c62778da3b8cdd8d2d0d0d0c3ad98836c57422c1700000000000000000c1a262d2f2f2f2f2f2f2f2f2f2f2f2f2f2f2f2f3f546a8095abb8b8b8b8bac2cfbba59079644f47474747443a2c1b090000000000000000000000000002142635414747474747474747474747474747474747474747453d301f0e00000000000000000000000000001f344a5f748ba0b5bda8937c67523c3541474747474747474747474747474747474747474747474747474747474747474747443a2c1b09000000000000000000000000000000000000000000000000050d1112121212121212121212121212121d32475c72889db3c8ddefededddc8b39d88725c47321d001f344a5f748ba0a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a4aebec9b7a9a3a3a3a3a3a3a3a5b1c2bba59079645c5c5c5c5c574a382511001f344a5f748ba0a3a3a3a3a3a3a3a3a39b866f5a442f1a1a1a1a1a1a1a1a1a1a22374c62778da3b8cde2e6e5e5d8c3ad98836c57422c17001f344a5f748ba0b5cbe0e5e5e8dac5b09b866f5a442f1a1a1a1a1a1a1a1a1a1a22374c62778da3b8cde2e6e5e5d8c3ad98836c57422c17000000000000000000000000000f253a4f647990a5bbd0e5faffead5c0ab95806a543f2a1500000000000000000000000000000000000000001f344a5f748ba0b5bda8937c67523c271a1a1a1a2a3d4e5a5c5c5c5c5c5c5c5c5c5c5c62778da3b8cde2e6e5e5d8c3ad98836c57422c170000000000000000000912181a1a1a1a1a1a1a1a1a1a1a1a1a1a1a2a3f546a8095a3a3a3a3a3a5b1c2bba59079645c5c5c5c5c574a382511000000000000000000000000000a1e3144535c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5a4e3d2a1602000000000000000000000000001f344a5f748ba0b5bda8937c67523c44535c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c574a38251100000000000000000000000000000000000000000000000000000000000000000000000000000000001d32475c72889db3c8ddf2fff2ddc8b39d88725c47321d001f344a5f748b8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d90a0b5c1ad998d8d8d8d8d8d8d93a5babba590797272727272726855402b16001f344a5f748b8d8d8d8d8d8d8d8d8d8d8d866f5a442f1a05000000000000000d22374c62778da3b8cde2f8ffedd8c3ad98836c57422c17001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a442f1a05000000000000000d22374c62778da3b8cde2f8ffedd8c3ad98836c57422c17000000000000000000000000000f253a4f647990a5bbd0e5faffead5c0ab95806a543f2a1500000000000000000000000000000000000000001f344a5f748ba0b5bda8937c67523c271200001c31455a6c727272727272727272727272778da3b8cde2f8ffedd8c3ad98836c57422c170000000000000000000000000000000000000000000000000000152a3f546a808d8d8d8d8d8d93a5babba590797272727272726855402b16000000000000000000000000000e23384d6170727272727272727272727272727272727272726c5a45311c06000000000000000000000000001f344a5f748ba0b5bda8937c67523c4d617072727272727272727272727272727272727272727272727272727272727272726855402b1600000000000000000000000000000000000000000000000000000000000000000000000000000000001d32475c72889db3c8ddf2fff2ddc8b39d88725c47321d001f34495e7177777777777777777777777777777777777777889db3c0ab95807777777777778da3b8bba692888888888888836c57422c17001f34495e71777777777777777777777777776d59442f1a04000000000000000d22374c62778da3b8cde2f8ffedd8c3ad98836c57422c17001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a442f1a05000000000000000d22374c62778da3b8cde2f8ffedd8c3ad98836c57422c17000000000000000000000000000f253a4f647990a5bbd0e5faffead5c0ab95806a543f2a1500000000000000000000000000000000000000001f344a5f748ba0b5bda8937c67523c271200001d32475c728888888888888888888888888890a4b9cee3f8ffedd8c3ad98836c57422c17000000000000000000000000000000000000000000000000000014293f5368777777777777778da3b8bba692888888888888836c57422c17000000000000000000000000000f253a4f647988888888888888888888888888888888888888725c47321d07000000000000000000000000001f344a5f748ba0b5bda8937c67523c4f647988888888888888888888888888888888888888888888888888888888888888836c57422c1700000000000000000000000000000000000000000000000000000000000000000000000000000000001d32475c72889db3c8ddf2fff2ddc8b39d88725c47321d001b2f42536062626262626262626262626262626262626272889db3c0ab95806a62626262778da3b8c2b0a29d9d9d9d9d98836c57422c17001b2f425360626262626262626262626262625d4f3d2a1601000000000000000d22374c62778da3b8cde2f8ffedd8c3ad98836c57422c17001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a442f1a15151515151515151522374c62778da3b8cde2eceaead8c3ad98836c57422c17000000000000000000000000000f253a4f647990a5bbd0e5eaebead5c0ab95806a543f2a1515140f07000000000000000000000000000000001f344a5f748ba0b5bda8937c67523c271515151d32475c72889d9d9d9d9d9d9d9d9d9d9d9da0aebfd3e7eaeaead8c3ad98836c57422c17000000000000000000040d1315151515151515151515151515151525384b5a626262626262778da3b8c2b0a29d9d9d9d9d98836c57422c17000000000000000000000000000f253a4f6479909d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d88725c47321d1514110a000000000000000000001f344a5f748ba0b5bda8937c67523c4f6479909d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d98836c57422c1700000000000000000000000000000000000000000000000000000000000000000000000000000000001d32475c72889db3c8ddf2fff2ddc8b39d88725c47321d00122535434b4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c5c72889db3c0ab95806a544c4c62778da3b8cdbfb5b3b3b3b3ad98836c57422c1700122535434b4c4c4c4c4c4c4c4c4c4c4c4c4c4a4031200e00000000000000000d22374c62778da3b8cde2f8ffedd8c3ad98836c57422c17001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a442f2a2a2a2a2a2a2a2a2a2a2a374c62778da3b8cdddd7d5d5d5c3ad98836c57422c17000000000000000000000000000f253a4f647990a5bbd0d5d5d6dad5c0ab95806a543f2a2a2a2923190c0000000000000000000000000000001f344a5f748ba0b5bda8937c67523c2a2a2a2a2a32475c72889db3b3b3b3b3b3b3b3b3b3b3b5beccd5d5d5d5d5d5c3ad98836c57422c170000000000000000081621282a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2d3d484c4c4c4c4c62778da3b8cdbfb5b3b3b3b3ad98836c57422c17000000000000000000000000000f253a4f647990a5b3b3b3b3b3b3b3b3b3b3b3b3b3b3b39d88725c47322a2a2a261d110300000000000000001f344a5f748ba0b5bda8937c67523c4f647990a5b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3ad98836c57422c1700000000000000000000000000000000000000000000000000000000000000000000000000000000001d32475c72889db3c8ddf2fff2ddc8b39d88725c47321d00071725303637373737373c3f3f3f3f3f3f3f3f3f3f475c72889db3c0ab95806a543f4c62778da3b8cdcac2c0c0c0c0ad98836c57422c1700071725303637373737373737373737373737352e22130300000000000000000d22374c62778da3b8cde2f8ffedd8c3ad98836c57422c17001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a443f3f3f3f3f3f3f3f3f3f3f3f3f4c62778da3b8cdcac2c0c0c0c0ad98836c57422c17000000000000000000000000000f253a4f647990a5bbc0c0c0c0c7d2c0ab95806a543f3f3f3f3e362a1b0900000000000000000000000000001f344a5f748ba0b5bda8937c67523f3f3f3f3f3f3f475c72889db3c8c8c8c8c8c8c8c8c7c0c0c0c0c0c0c0c0c0c0c0ad98836c57422c1700000000000000051626333c3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f4c62778da3b8cdd1cac8c8c8c3ad98836c57422c17000000000000000000000000000f253a4f647990a5bbc0c0c0c0c0c0c0c0c0c0c4c8c8b39d88725c473f3f3f3f3a2f211000000000000000001f344a5f748ba0b5bda8937c67523c4f647990a5bbc8c8c1c0c0c0c0c0c0c0c4c8c8c8c7c0c0c0c0c0c0c0c0c5c8c3ad98836c57422c1700000000000000000000000000000000000000000000000000000000000000000000000000000000001d32475c72889db3c8ddf2fff2ddc8b39d88725c47321d000008141c2122222234445054545454545454545454545c72889db3c0ab95806a54545462778da3b8c9b9aeababababab98836c57422c17000008141c2122222222222222222222222222201b11040000000000000000000d22374c62778da3b8cde2f8ffedd8c3ad98836c57422c17001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a54545454545454545454545454545462778da3b8c9b9aeababababab98836c57422c17000000000000000000000000000f253a4f647990a5ababababacb4c2c0ab95806a5454545454524838271400000000000000000000000000001f344a5f748ba0ababa8937c675454545454545454545c72889db3c8ddddddddddd4c2b4acababababababababababab98836c57422c17000000000000000f2234445054545454545454545454545454545454545454545454545462778da3b8cde2dfddddd8c3ad98836c57422c17000000000000000000000000000f253a4f647990a5abababababababababababb0bdc8b39d88725c54545454544c3f2d1b07000000000000001f344a5f748ba0b5bda8937c67523c4f647990a5bbc7b7adabababababababb0bdcdc2b4acabababababababb3c0c3ad98836c57422c1700000000000000000000000000000000000000000000000000000000000000000000000000000000001d32475c72889db3c8ddf2fff2ddc8b39d88725c47321d00000001080c0d152a3e51626a6a6a6a6a6a6a6a6a6a6a6a72889db3c0ab95806a6a6a6a6a778da3b8bfab9b959595959595836c57422c1700000001080c0d0d0d0d0d0d0d0d0d0d0d0d0d0b0700000000000000000000000d22374c62778da3b8cde2f8ffedd8c3ad98836c57422c17001f344a5f748ba0b5cbe0f5fff0dac5b09b866f6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a778da3b8bfab9b959595959595836c57422c17000000000000000000000000000f253a4f647990959595959597a5b7c0ab95806a6a6a6a6a6a6656432f1a05000000000000000000000000001f344a5f748b95959595937c6a6a6a6a6a6a6a6a6a6a6a72889db3c8ddf2f2f2e0cbb7a597959595959595959595959595836c57422c1700000000000000152a3e51626a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a778da3b8cde2f4f2edd8c3ad98836c57422c17000000000000000000000000000f253a4f6479909595959595959595959595959eb0c4b39d88726a6a6a6a6a695d4a36220d000000000000001f344a5f748ba0b5bda8937c67523c4f647990a5bbbca999959595959595959eb0c4b7a59795959595959596a2b5c3ad98836c57422c1700000000000000000000000000000000000000000000000000000000000000000000000000000000001d32475c72889db3c8ddf2fff2ddc8b39d88725c47321d00000000000000172c42576c80808080808080808080808080889db3c0ab95808080808080808da3b8bba590808080808080806c57422c1700000000000000000000000000000000000000000000000000000000000000000d22374c62778da3b8cde2f8ffedd8c3ad98836c57422c17001f344a5f748ba0b5cbe0f5fff0dac5b09b86808080808080808080808080808080808080808da3b8bba590808080808080806c57422c17000000000000000000000000000f253a4f6479808080808080889db3c0ab9580808080808080725c47321d07000000000000000000000000001f344a5f7480808080808080808080808080808080808080889db3c8ddf2fff2ddc8b39d88808080808080808080808080806c57422c1700000000000000172c42576c80808080808080808080808080808080808080808080808080808da3b8cde2f8ffedd8c3ad98836c57422c17000000000000000000000000000f253a4f64798080808080808080808080808095abc0b39d8880808080808079644f3a250f000000000000001f344a5f748ba0b5bda8937c67523c4f647990a5bbb8a38d8080808080808095abc0b39d88808080808080869bb0c3ad98836c57422c1700000000000000000000000000000000000000000000000000000000000000000000000000000000001d32475c72889db3c8ddf2fff2ddc8b39d88725c47321d00000001080c0d172c42576c8395959595959595959595959597a5b7c4b09e9595959595959599a9bcbba590796a6a6a6a6a6a62513e2a1500000001080c0d0d0d0d0d0d0d0d0d0d0d0d0d0d0d0d0d0d0d0d0d0d0d0d0d0d0d22374c62778da3b8cde2f4f2edd8c3ad98836c57422c17001f344a5f748ba0b5cbe0f5fff2ddc9b5a2969595959595959595959595959595959595959599a9bcbba590796a6a6a6a6a6a62513e2a15000000000000000000000000000d22364a5d696a6a6a6a6a72889db3c4b09e95959595959588725c47321d0d0c0903000000000000000000001d314558676a6a6a6a6a6c8395959595959595959595959597a5b7cbe0f2f2f2ddc8b39d88726a6a6a6a6a6a6a6a6a6a6a6a62513e2a1500000001080c0d172c42576c839595959595959595959595959595959595959595959595959599a9bcd0e5faffedd8c3ad98836c57422c1700000001080c0d0d0d0d0d0d0d0d22364a5d696a6a6a6a6a6a6a6a6a6a6a6a8095abc0b7a59795959595959079644f3a250f0d0b06000000001f344a5f748ba0b5bda8937c67523c4f647990a5bbb8a38d776a6a6a6a6a8095abc0b39d88726a6a6a6a6f869bb0c3ad98836c57422c1700000000000000000000000000000000000000000000000000000000000000000000000000000000001d32475c72889db3c8ddf2fff2ddc8b39d88725c47321d000008141c2122222c42576c8398abababababababababababacb4c2cdbdb0abababababababadb7c7bba59079645454545454504434220f000008141c2122222222222222222222222222222222222222222222222222222222374c62778da3b8cde2dfddddd8c3ad98836c57422c17001f344a5f748ba0b5cbe0f5fff8e4d2c0b3ababababababababababababababababababababadb7c7bba59079645454545454504434220f00000000000000000000000000071b2d3f4c54545454545c72889db3c8bdb0ababababab9d88725c47322222221e160b00000000000000000016293b495354545454576c8398abababababababababababacb4c2d4ddddddddddc8b39d88725c5454545454545454545454504434220f000008141c2122222c42576c8398ababababababababababababababababababababababababadb7c7d8ebffffedd8c3ad98836c57422c17000008141c212222222222222222222d3f4c5454545454545454545454546a8095abc0c2b4acababababa59079644f3a25222220190f0200001f344a5f748ba0b5bda8937c67523c4f647990a5bbb8a38d77625454546a8095abc0b39d88725c54545a6f869bb0c3ad98836c57422c1700000000000000000000000000000000000000000000000000000000000000000000000000000000001d32475c72889db3c8ddf2fff2ddc8b39d88725c47321d00071725303637373742576c8398adc0c0c0c0c0c0c0c0c0c0c0c7d2dbcdc4c0c0c0c0c0c0c0c1c8c8bba59079644f3f3f3f3f3c3326160500071725303637373737373737373737373737373737373737373737373737373737374c62778da3b8cdd1cac8c8c8c3ad98836c57422c17001f344a5f748ba0b5cbe0f5ffffefded0c5c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c1c8c8bba59079644f3f3f3f3f3c33261605000000000000000000000000000010212f3a3f3f3f3f475c72889db3c8c8c4c0c0c0c0b39d88725c473737373732281b0b00000000000000000c1d2c373e3f3f3f42576c8398adc0c0c0c0c0c0c0c0c0c0c0c7c8c8c8c8c8c8c8c8b39d88725c473f3f3f3f3f3f3f3f3f3f3c3326160500071725303637373742576c8398adc0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c1c9d5e4f6ffffedd8c3ad98836c57422c1700071725303637373737373737373737373a3f3f3f3f3f3f3f3f3f3f3f546a8095abc0c8c7c0c0c0c0bba59079644f3a373737352d201101001f344a5f748ba0b5bda8937c67523c4f647990a5bbb8a38d77624c3f546a8095abc0b39d88725c47445a6f869bb0c3ad98836c57422c1700000000000000000000000000000000000000000000000000000000000000000000000000000000001d32475c72889db3c8ddf2fff2ddc8b39d88725c47321d00122535434b4c4c4c4c576c8398adc3c6b9b3b3b3b3b3b3b3b3bbc8d2c2b7b3b3b3b3b3b3b3b3b3b3b3a59079644f3a2a2a2a282116080000122535434b4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c62778da3b8cdbfb5b3b3b3b3ad98836c57422c17001f344a5f748ba0b5cbe0f5fffbe8d6c6b9b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3a59079644f3a2a2a2a2821160800000000000000000000000000000003111d262a2a2a32475c72889db3b3b3b3b3b7c2c8b39d88725c4c4c4c4c4c463929170400000000000000122535434b4c4c4c4c576c8398adc3d5d5d5d5d5d5ccbeb5b3b3b3b3b3b3b3b3b3b3b39d88725c4c4c4c4c4c46392a2a2a2a282116080000122535434b4c4c4c4c576c8398adc3c6b9b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b5beccddefffffedd8c3ad98836c57422c1700122535434b4c4c4c4c4c4c4c4c4c4c4c4c4c4a40312a2a2a2a2a2a3f546a8095abb3b3b3b3b5beccbba59079644f4c4c4c4c493e2f1e0b001f344a5f748ba0b5bda8937c67523c4f647990a5bbb8a38d77624c4c546a8095abc0b39d88725c47445a6f869bb0c3ad98836c57422c1700000000000000000000000000000000000000000000000000000000000000000000000000000000001d32475c72889db3c8ddf2fff2ddc8b39d88725c47321d001b2f42536062626262626c8398adc3b8a89e9d9d9d9d9d9d9faabbc7b4a59d9d9d9d9d9d9d9d9d9d9d9d9079644f3a251515130d040000001b2f42536062626262626262626262626262626262626262626262626262626262626262778da3b8c2b0a29d9d9d9d9d98836c57422c17001f344a5f748ba0b5cbe0f5fff4dfcbb8a89e9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9079644f3a251515130d040000000000000000000000000000000000000a1114151d32475c72889d9d9d9d9d9da5b4c7b39d8872626262626261574734200b000000000000001b2f42536062626262626c8398adc3d8eaeaeae7d3bfaea09d9d9d9d9d9d9d9d9d9d9d9d8872626262626261574734201515130d040000001b2f42536062626262626c8398adc3b8a89e9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9da0aebfd3e7fbffedd8c3ad98836c57422c17001b2f425360626262626262626262626262625d4f3d2a161515152a3f546a80959d9d9d9d9da0aebfbba590796462626262625c4d3b2713001f344a5f748ba0b5bda8937c67523c4f647990a5bbb8a38d77626262626a8095abc0b39d88725c47445a6f869bb0c3ad98836c57422c1700000000000000000000000000000000000000000000000000000000000000000000000000000000001d32475c72889db3c8ddf2fff2ddc8b39d88725c47321d001f34495e717777777777778398adc3b19c8a8888888888888c9fb3c0ac978888888888888888888888888879644f3a250f000000000000001f34495e7177777777777777777777777777777777777777777777777777777777777777778da3b8bba692888888888888836c57422c17001f344a5f748ba0b5cbe0f5fff0dbc6b19c8a8888888888888888888888888888888888888888888888888879644f3a250f00000000000000000000000000000000000000000000000000001d32475c728888888888888897acc0b39d8877777777777775634e39240f000000000000001f34495e717777777777778398adc3d8edffffe3ceb9a4908888888888888888888888888877777777777775634e39240f000000000000001f34495e717777777777778398adc3b19c8a8888888888888888888888888888888888888890a4b9cee3f8ffedd8c3ad98836c57422c17001f34495e71777777777777777777777777776d59442f1a0400152a3f546a8088888888888890a4b9bba590797777777777776a56412c17001f344a5f748ba0b5bda8937c67523c4f647990a5bbb8a38d7777777777778095abc0b39d88725c47445a6f869bb0c3ad98836c57422c170000000000000000000000000000000000000000000000000000000000000000000000000003090c0d1d32475c72889db3c8ddf2fff2ddc8b39d88725c47321d001f344a5f748b8d8d8d8d8d8e9cafc4b09b86727272727272889db3c0ab958072727272727272727272727270614d38230e000000000000001f344a5f748b8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d93a5babba590797272727272726855402b16001f344a5f748ba0b5cbe0f5faf0dac5b09b867272727272727272727272727272727272727272727272727270614d38230e00000000000000000000000405050505050505050505050505041c31455a6c7272727272728095abc0b5a0908d8d8d8d8d8d79644f3a250f050300000000001f344a5f748b8d8d8d8d8d8e9cafc4d9eefafae2cdb8a38d777272727272727272727272778d8d8d8d8d8d79644f3a250f000000000000001f344a5f748b8d8d8d8d8d8e9cafc4b09b86727272727272727272727272727272727272778da3b8cde2f8ffedd8c3ad98836c57422c17001f344a5f748b8d8d8d8d8d8d8d8d8d8d8d866f5a442f1a050514293e5266727272727272778da3b8bca8958d8d8d8d8d8d836c57422c17001f344a5f748ba0b5bda8937c67523c4f647990a5bbbaa5938d8d8d8d8d8d8d99adc1b39d88725c47445a6f869bb0c3ad98836c57422c170000000000000000000000000000000000000000000000000000000000000000000000000b161e22222232475c72889db3c8ddf2fff2ddc8b39d88725c47321d001f344a5f748ba0a3a3a3a3a3aab9c5b09b866f5c5c5c5c72889db3c0ab95806a5c5c5c5c5c5c5c5c5c5c5c5c5344311e0a000000000000001f344a5f748ba0a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a5b1c2bba59079645c5c5c5c5c574a382511001f344a5f748ba0b5cbe0e5e5e8dac5b09b866f5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5344311e0a0000000000000000010d15191a1a1a1a1a1a1a1a1a1a1a1a1a19162a3d4e5a5c5c5c5c5c6a8095abc0beaea4a3a3a3a3a39079644f3a251a1a1812090000001f344a5f748ba0a3a3a3a3a3aab9cbdfe9e5e5e2cdb8a38d77625c5c5c5c5c5c5c5c5c62778da3a3a3a39079644f3a250f000000000000001f344a5f748ba0a3a3a3a3a3aab9c5b09b866f5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c62778da3b8cde2f8ffedd8c3ad98836c57422c17001f344a5f748ba0a3a3a3a3a3a3a3a3a39b866f5a442f1a1a1a1a233648565c5c5c5c5c62778da3b8c4b3a6a3a3a3a3a398836c57422c17001f344a5f748ba0b5bda8937c67523c4f647990a5bbc2b1a5a3a3a3a3a3a3a3a9b7c8b39d88725c47445a6f869bb0c3ad98836c57422c1700000000000000000000000000000000000000000000000000000000000000000000000b1b283237373737475c72889db3c8ddf2fff2ddc8b39d88725c47321d001f344a5f748ba0b5b8b8b8b8bdc8c5b09b866f5a47475c72889db3c0ab95806a5447474747474747474747474135261402000000000000001f344a5f748ba0b5b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8bac2cfbba59079644f47474747443a2c1b09001f344a5f748ba0b5cbd0d0d0d4dac5b09b866f5a47474747474747474747474747474747474747474747474741352614020000000000000002121f292e2f2f2f2f2f2f2f2f2f2f2f2f2f2d271f303d4547474747546a8095abc0ccbfb9b8b8b8b8a59079644f3a2f2f2f2d261a0c00001f344a5f748ba0b5b8b8b8b8bdc8d7ddd4d0d0d0cdb8a38d77624c474747474747474c62778da3b8b8a59079644f3a250f000000000000001f344a5f748ba0b5b8b8b8b8bdc8c5b09b866f5a47474747474747474747474747474c62778da3b8cde2f8ffedd8c3ad98836c57422c17001f344a5f748ba0b5b8b8b8b8b8b8b8b09b866f5a442f2f2f2f2f2f2f3843474747474c62778da3b8cdc3bab8b8b8b8ad98836c57422c17001f344a5f748ba0b5bda8937c67523c4f647990a5bbcfc2bab8b8b8b8b8b8b8bcc7c8b39d88725c47445a6f869bb0c3ad98836c57422c170000000000000000000000000000000000000000000000000000000000000000000004172939464c4c4c4c4c5c72889db3c8ddf2fff2ddc8b39d88725c47321d001f344a5f748ba0b5bbbbbbbbc0cac5b09b866f5a44475c72889db3c0ab95806a5444444444444444444444443e33241301000000000000001f344a5f748ba0b5cbcdcdcdcdcdcdccc1bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbba59079644f3a3232322f281c0e00001f344a5f748ba0b5bbbbbbbbc0cac5b09b866f5a44444444443d3232323232323232323232323232323232322d24170800000000000000000f20303c434444444444444444444444444442392c1f2a313232323f546a8095abbbbbbbbbbcc4cdbba59079644f4444444441382a1a08001f344a5f748ba0b5cbcdcdcdd1dadbccc1bbbbbbbbb8a38d77624c373232323232374c62778da3b8bba59079644f3a250f000000000000001f344a5f748ba0b5cbcdcdcdd1dac5b09b866f5a44323232323232323232323232374c62778da3b8cde2f8ffedd8c3ad98836c57422c17001f344a5f748ba0b5cbcdcdcdcdcdc5b09b866f5a44444444444444444444444444444c62778da3b8cdd6cfcdcdcdc3ad98836c57422c17001f344a5f748ba0b5bda8937c67523c4f647990a5bbbbbbbbbbbbbbbbbbbbbbbbbbbbb39d88725c47445a6f869bb0c3ad98836c57422c17000000000000000000000000000000000000000000000000000000000000000000000b2034475761626262626272889db3c8ddf2fff2ddc8b39d88725c47321d001f344a5f748ba0a5a5a5a5a5adbbc5b09b866f5a5a5a5c72889db3c0ab95806a5a5a5a5a5a5a5a5a5a5a5a595142301d09000000000000001f344a5f748ba0b5cbe0e2e2e2e2cfbdaea6a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a59079644f3a251d1d1b150b0000001f344a5f748ba0a5a5a5a5a5adbbc5b09b866f5a5a5a5a5a594f402e1d1d1d1d1d1d1d1d1d1d1d1d1d1d1d1c191106000000000000000000182b3e4e585a5a5a5a5a5a5a5a5a5a5a5a5a564a3927161c1d1d2a3f546a8095a5a5a5a5a5a8b3c3bba59079645a5a5a5a5a5548372411001f344a5f748ba0b5cbe0e2e3e5e2cfbdaea6a5a5a5a5a38d77624c37221d1d1d22374c62778da3b8bba59079644f3a250f000000000000001f344a5f748ba0b5cbe0e2e3e5dac5b09b866f5a442f1d1d1d1d1d1d1d1d1d1d22374c62778da3b8cde2f8ffedd8c3ad98836c57422c17001f344a5f748ba0b5cbe0e2e2e2dac5b09b866f5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a62778da3b8cde2e4e2e2d8c3ad98836c57422c17001f344a5f748ba0b5bda8937c67523c4f647990a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a59d88725c47445a6f869bb0c3ad98836c57422c17000000000000000000000000000000000000000000000000000000000000000000000f24394e6375777777777777889db3c8ddf2fff2ddc8b39d88725c47321d001f344a5f748b9090909090909db0c5b09b866f6f6f6f6f72889db3c0ab95806f6f6f6f6f6f6f6f6f6f6f6f6e604c38230e000000000000001f344a5f748ba0b5cbe0f5fff1dcc7b39f919090909090909090909090909090909090909090909090909079644f3a250f000000000000001f344a5f748b9090909090909db0c5b09b866f6f6f6f6f6f6d5d4a35200b00000000000000000000000000000000000000000000000000001e33475b6b6f6f6f6f6f6f6f6f6f6f6f6f6f6856422d190400152a3f546a8090909090909095a6babba590796f6f6f6f6f6f6654402b16001f344a5f748ba0b5cbe0f5fff1dcc7b39f9190909090908d77624c37220d000d22374c62778da3b8bba59079644f3a250f000000000000001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a442f1a05000000000000000d22374c62778da3b8cde2f8ffedd8c3ad98836c57422c17001f344a5f748ba0b5cbe0f5fff0dac5b09b866f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f778da3b8cde2f8ffedd8c3ad98836c57422c17001f344a5f748ba0b5bda8937c67523c4f647990909090909090909090909090909090909088725c47445a6f869bb0c3ad98836c57422c17000000000000000000000000000000000000000000000000000000000000000000000f253a4f64798d8d8d8d8d8d90a0b5c9def3faf2ddc8b39d88725c47321d001f34495e737979797979798398adc3b09b888686868686868a9eb3c0ab968686868686868686868686868679644f3a250f000000000000001f344a5f748ba0b5cbe0f5fff0dac5b09b867979797979797979797979797979797979797979797979797977644f3a240f000000000000001f34495e737979797979798398adc3b09b8886868686868677624c37220d00000000000000000000000000000000000000000000000000001f344a5f74868686868686868686868686866f5a442f1a0500142a3f5469797979797979798da3b8bba691868686868686836c57422c17001f344a5f748ba0b5cbe0f5fff0dac5b09b8679797979797975614c37220c000d22374c62778da3b8bba59079644f3a250f000000000000001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a442f1a05000000000000000d22374c62778da3b8cde2f8ffedd8c3ad98836c57422c17001f344a5f748ba0b5cbe0f5fff0dbc5b09b88868686868686868686868686868686868686868fa3b8cde3f8ffedd8c3ad98836c57422c17001f344a5f748ba0b5bda8937c67523c4f647779797979797979797979797979797979797979705c47445a6f869bb0c3ad98836c57422c17000000000000000000000000000000000000000000000000000000000000000000000f253a4f647990a3a3a3a3a3a4aebed0e4e5e5e5ddc8b39d88725c47321d001b3043556264646464646c8398adc3b7a69b9b9b9b9b9b9b9ca8b9c5b3a29b9b9b9b9b9b9b9b9b9b9b9b9079644f3a250f000000000000001f344a5f748ba0b5cbe0f5fff0dac5b09b866f64646464646464646464646464646464646464646464646464594835210c000000000000001b3043556264646464646c8398adc3b7a69b9b9b9b9b9b8d77624c37221212121212121212121212121212120f08000000000000000000001f344a5f748b9b9b9b9b9b9b9b9b9b9b9b866f5a442f1a121212263a4c5d646464646464778da3b8c1ae9f9b9b9b9b9b98836c57422c17001f344a5f748ba0b5cbe0ededf0dac5b09b866f6464646464635746321e12121222374c62778da3b8bba59079644f3a250f000000000000001f344a5f748ba0b5cbe0ededf0dac5b09b866f5a442f1a12121212121212121222374c62778da3b8cde2eeededd8c3ad98836c57422c17001f344a5f748ba0b5cbe0ededf0decab7a69b9b9b9b9b9b9b9b9b9b9b9b9b9b9b9b9b9b9b9b9eacbed2e6eeededd8c3ad98836c57422c17001f344a5f748ba0b5bda8937c67523c48596464646464646464646464646464646464646464615341445a6f869bb0c3ad98836c57422c17000000000000000000000000000000000000000000000000000000000000000000000f253a4f647990a5b8b8b8b8b9bfccd0d0d0d0d0d0c8b39d88725c47321d00142637454e4f4f4f4f576c8398adc3c4b7b0b0b0b0b0b0b0b1b8c6d0c0b5b0b0b0b0b0b0b0b0b0b0b0a59079644f3a250f000000000000001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f483b2b180500000000000000142637454e4f4f4f4f576c8398adc3c4b7b0b0b0b0b0a38d77624c3727272727272727272727272727272727231b0f0100000000000000001f344a5f748ba0b0b0b0b0b0b0b0b0b09b866f5a442f27272727272f3f4a4f4f4f4f4f62778da3b8ccbdb3b0b0b0b0ad98836c57422c17001f344a5f748ba0b5cbd8d8d8dbdac5b09b866f5a4f4f4f4f4e4739282727272727374c62778da3b8bba59079644f3a250f000000000000001f344a5f748ba0b5cbd8d8d8dbdac5b09b866f5a442f2727272727272727272727374c62778da3b8cde0d9d8d8d8c3ad98836c57422c17001f344a5f748ba0b5cbd8d8d8dbe3d4c4b7b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b2bbcadbe0d9d8d8d8c3ad98836c57422c17001f344a5f748ba0b5bda8937c67523c3b484f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4d4435445a6f869bb0c3ad98836c57422c17000000000000000000000000000000000000000000000000000000000000000000000f253a4f647990a5bbbbbbbbbbbbbbbbbbbbbbbbbbbbb39d88725c47321d0009192733393a3a3a42576c8398adc3c3c3c3c3c3c3c3c3c3c3c9d4dccfc6c3c3c3c3c3c3c3c3c3c3bba59079644f3a250f000000000000001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a443c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c372d1f0e000000000000000009192733393a3a3a42576c8398adc3c3c3c3c5c5c5b8a38d77624c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c372d1f0e00000000000000001f344a5f748ba0b5c5c5c5c5c5c5c5b09b866f5a443c3c3c3c3c3c3c3c3c3c3c3c3c4c62778da3b8cdcfc7c5c5c5c3ad98836c57422c17001f344a5f748ba0b5c3c3c3c3c7d1c5b09b866f5a443c3c3c3c3c3c3c3c3c3c3c3c3c4c62778da3b8bba59079644f3a250f000000000000001f344a5f748ba0b5c3c3c3c3c7d1c5b09b866f5a443c3c3c3c3c3c3c3c3c3c3c3c3c4c62778da3b8cdcdc5c3c3c3c3ad98836c57422c17001f344a5f748ba0b5c3c3c3c3c7d1ded4cac5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c7ced9d9cdc5c3c3c3c3ad98836c57422c17001f344a5f748ba0b5bda8937c67523c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c445a6f869bb0c3ad98836c57422c17000000000000000000000000000000000000000000000000000000000000000000000f253a4f647990a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a59d88725c47321d00000a161f2425252c42576c8398adadadadadadadadadadadaeb6c4cfbeb2adadadadadadadadadadada59079644f3a250f000000000000001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a5252525252525252525252525252525252525252525252514a3d2c1a0600000000000000000a161f2425252c42576c8398adadadadadb0bbcab8a38d77625252525252525252525252525252525252514a3d2c1a06000000000000001f344a5f748ba0b5cbdadadadadac5b09b866f5a52525252525252525252525252525262778da3b8cde2dcdadad8c3ad98836c57422c17001f344a5f748ba0adadadadadb3c0c5b09b866f5a52525252525252525252525252525262778da3adada59079644f3a250f000000000000001f344a5f748ba0adadadadadb3c0c5b09b866f5a52525252525252525252525252525262778da3b8cabbb0adadadadad98836c57422c17001f344a5f748ba0adadadadadb3c0d1e3dedbdadadadadadadadadadadadadadadadadadadadce1dccabbb0adadadadad98836c57422c17001f344a5f748ba0adada8937c67525252525252525252525252525252525252525252525252525252525a6f869badadad98836c57422c17000000000000000000000000000000000000000000000000000000000000000000000f253a4f647990909090909090909090909090909090909088725c47321d000000030b0f0f172c42576c839898989898989898989898989aa6b8c4b1a09898989898989898989898989079644f3a250f000000000000001f344a5f748ba0b5cbe0f5fff0dac5b09b866f676767676767676767676767676767676767676767676767665b4936210d000000000000000000030b0f0f172c42576c839898989898989dadc0b8a38d77676767676767676767676767676767676767665b4936210d000000000000001f344a5f748ba0b5cbe0f0f0f0dac5b09b866f6767676767676767676767676767676767778da3b8cde2f1f0edd8c3ad98836c57422c17001f344a5f748b989898989898a2b3c5b09b866f6767676767676767676767676767676767778d989898989079644f3a250f000000000000001f344a5f748b989898989898a2b3c5b09b866f6767676767676767676767676767676767778da3b8c0ad9d989898989898836c57422c17001f344a5f748b989898989898a2b3c7dbf0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f1e8d4c0ad9d989898989898836c57422c17001f344a5f748b98989898937c6767676767676767676767676767676767676767676767676767676767676f869898989898836c57422c17000000000000000000000000000000000000000000000000000000000000000000000f243a4f647779797979797979797979797979797979797979705c47321c00000000000000172c42576c83838383838383838383838383899eb3c0ab968383838383838383838383838379644f3a250f000000000000001f344a5f748ba0b5cbe0f5fff0dac5b09b867c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c79644f3a240f00000000000000000000000000172c42576c8383838383838390a5bbb8a38d7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c79644f3a240f000000000000001f344a5f748ba0b5cbe0f5fff0dac5b09b867c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c8da3b8cde2f8ffedd8c3ad98836c57422c17001f344a5f748383838383838498adc3b09b867c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c83838383838379644f3a250f000000000000001f344a5f748383838383838498adc3b09b867c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c8da3b8bba590838383838383836c57422c17001f344a5f748383838383838498adc3d8edffffffffffffffffffffffffffffffffffffffffffe5d0bba590838383838383836c57422c17001f344a5f748383838383837c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c838383838383836c57422c17000000000000000000000000000000000000000000000000000000000000000000000c2135485964646464646464646464646464646464646464646153412d1900000000000000152a3f53646c6c6c6c6c6c6c6c6c6c6c6c72889db3c0ab95806c6c6c6c6c6c6c6c6c6c6c6c6b5e4b37230e000000000000001f344a5f748ba0b5cbe0f5f5f1dcc8b4a1949393939393939393939393939393939393939393939393939079644f3a250f00000000000000000000000000152a3f53646c6c6c6c6c6c7990a5bbbba8979393939393939393939393939393939393939079644f3a250f000000000000001f344a5f748ba0b5cbe0f5f5f1dcc8b4a1949393939393939393939393939393939393939397a8bbd0e4f5f5edd8c3ad98836c57422c17001d32465a696c6c6c6c6c6c8398adc3b4a19493939393939393939393939393939393939388726c6c6c6c6c6b5e4b37230e000000000000001d32465a696c6c6c6c6c6c8398adc3b4a1949393939393939393939393939393939393939397a8bbbba590796c6c6c6c6c6c64533f2a15001d32465a696c6c6c6c6c6c8398adc3d8edf5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5e5d0bba590796c6c6c6c6c6c64533f2a15001d32465a696c6c6c6c6c6c8393939393939393939393939393939393939393939393939393939393939390796c6c6c6c6c6c64533f2a150000000000000000000000000000000000000000000000000000000000000000000005182b3b484f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4d4435241100000000000000102336465357575757575757575757575c72889db3c0ab95806a5757575757575757575757574f402f1c08000000000000001f344a5f748ba0b5cbe0e0e0e0e0d0bfb0a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a59079644f3a250f0000000000000000000000000010233646535757575757647990a5bbc5b5aaa8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a59079644f3a250f000000000000001f344a5f748ba0b5cbe0e0e0e0e0d0bfb0a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8aab5c5d7e0e0e0e0d8c3ad98836c57422c1700172a3c4c5557575757576c8398adc3bfb0a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a89d88725c57575757574f402f1c0800000000000000172a3c4c5557575757576c8398adc3bfb0a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8aab5c5bba59079645757575757534636231000172a3c4c5557575757576c8398adc3d8e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0d0bba59079645757575757534636231000172a3c4c5557575757576c8398a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a59079645757575757534636231000000000000000000000000000000000000000000000000000000000000000000000000d1d2b353a3a3a3a3a3a3b3c3c3c3c3c3c3c3c3c3c3c3c3c3b3428190800000000000000061828363f42424242424242424242475c72889db3c0ab95806a5442424242424242424242413c31221200000000000000001f344a5f748ba0b5cbcbcbcbcbcbcbcbc3bebdbdbdbdbdbdbdbdbdbdbdbdbdbdbdbdbdbdbdbdbdbdbba59079644f3a250f00000000000000000000000000061828363f424242424f647990a5bbcbc7bfbdbdbdbdbdbdbdbdbdbdbdbdbdbdbdbdbba59079644f3a250f000000000000001f344a5f748ba0b5cbcbcbcbcbcbcbcbc3bebdbdbdbdbdbdbdbdbdbdbdbdbdbdbdbdbdbdbdbfc7cbcbcbcbcbcbcbc3ad98836c57422c17000d1e2e3a4142424242576c8398adc3cbc3bebdbdbdbdbdbdbdbdbdbdbdbdbdbdbdbdb39d88725c47424242413c31221200000000000000000d1e2e3a4142424242576c8398adc3cbc3bebdbdbdbdbdbdbdbdbdbdbdbdbdbdbdbdbdbdbdbfc7cbbba59079644f424242423f36281806000d1e2e3a4142424242576c8398adc3cbcbcbcbcbcbcbcbcbcbcbcbcbcbcbcbcbcbcbcbcbcbcbcbcbbba59079644f424242423f36281806000d1e2e3a4142424242576c8398adbdbdbdbdbdbdbdbdbdbdbdbdbdbdbdbdbdbdbdbdbdbdbdbdbdbdbba59079644f424242423f362818060000000000000000000000000000000000000000000000000000000000000000000000000d18212425252537465052525252525252525252525252504637251200000000000000000a18232a2c2c2c2c2c2c2c2c2c32475c72889db3b5ab95806a543f2c2c2c2c2c2c2c2c2c2c281f130400000000000000001f344a5f748ba0b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5a59079644f3a250f00000000000000000000000000000a18232a2c2c2c3a4f647990a5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5a59079644f3a250f000000000000001f344a5f748ba0b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5ad98836c57422c170000101d262c2c2c2c42576c8398adb5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b39d88725c47322c2c2c281f1304000000000000000000101d262c2c2c2c42576c8398adb5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5a59079644f3a2c2c2c2a23180a000000101d262c2c2c2c42576c8398adb5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5a59079644f3a2c2c2c2a23180a000000101d262c2c2c2c42576c8398adb5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5a59079644f3a2c2c2c2a23180a0000000000000000000000000000000000000000000000000000000000000000000000000000050c0f0f1a2e425563676767676767676767676767676355422e1a00000000000000000006101517171717171717171d32475c72889da0a0a095806a543f2a171717171717171717140d020000000000000000001f344a5f748ba0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a09079644f3a250f0000000000000000000000000000000610151717253a4f647990a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a09079644f3a250f000000000000001f344a5f748ba0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a098836c57422c170000000a121717172c42576c8398a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a09d88725c47321d1717140d0200000000000000000000000a121717172c42576c8398a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a09079644f3a25171715100600000000000a121717172c42576c8398a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a09079644f3a25171715100600000000000a121717172c42576c8398a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a09079644f3a251717151006000000000000000000000000000000000000000000000000000000000000000000000000000000000000001c32475c717c7c7c7c7c7c7c7c7c7c7c7c7c715c47321c00000000000000000000000000000000000000001d32475c72888b8b8b8b8b806a543f2a1500000000000000000000000000000000000000001f344a5f748b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b79644f3a250f000000000000000000000000000000000000000f253a4f64798b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b79644f3a250f000000000000001f344a5f748b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b836c57422c1700000000000000172c42576c838b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b88725c47321d0700000000000000000000000000000000000000172c42576c838b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b79644f3a250f00000000000000000000000000172c42576c838b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b79644f3a250f00000000000000000000000000172c42576c838b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b79644f3a250f00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001d32475c7288939393939393939393939388725c47321d00000000000000000000000000000000000000001c31465b6e7474747474747467533e291400000000000000000000000000000000000000001f34495d70747474747474747474747474747474747474747474747474747474747474747474747474747473624e39240f000000000000000000000000000000000000000f24394e62737474747474747474747474747474747474747474747474747473624e39240f000000000000001f34495d707474747474747474747474747474747474747474747474747474747474747474747474747474747474747474746955412c1700000000000000172c41556974747474747474747474747474747474747474747474747474746e5b46311c0700000000000000000000000000000000000000172c415569747474747474747474747474747474747474747474747474747474747474747473624e39240f00000000000000000000000000172c415569747474747474747474747474747474747474747474747474747474747474747473624e39240f00000000000000000000000000172c415569747474747474747474747474747474747474747474747474747474747474747473624e39240f00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001d32475c72889da8a8a8a8a8a8a8a8a89d88725c47321d0000000000000000000000000000000000000000172b3e505c5f5f5f5f5f5f5f584937241000000000000000000000000000000000000000001a2e41515d5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5e5545331f0b000000000000000000000000000000000000000b1f3345555e5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5e5545331f0b000000000000001a2e41515d5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5a4c3a26120000000000000012263a4c5a5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5c503e2b17030000000000000000000000000000000000000012263a4c5a5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5e5545331f0b0000000000000000000000000012263a4c5a5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5e5545331f0b0000000000000000000000000012263a4c5a5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5e5545331f0b00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001d32475c72889db3bdbdbdbdbdbdbdb39d88725c47321d00000000000000000000000000000000000000000f21323f484a4a4a4a4a4a4a453b2c1a08000000000000000000000000000000000000000011233341494a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a494337271603000000000000000000000000000000000000000316273743494a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4943372716030000000000000011233341494a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a463c2e1d0a000000000000000a1d2e3c464a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a483f32210f00000000000000000000000000000000000000000a1d2e3c464a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a494337271603000000000000000000000000000a1d2e3c464a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a494337271603000000000000000000000000000a1d2e3c464a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a49433727160300000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001d32475c72889db3b5b5b5b5b5b5b5b39d88725c47321d00000000000000000000000000000000000000000313222d333434343434343431291d0e0000000000000000000000000000000000000000000515232e343434343434343434343434343434343434343434343434343434343434343434343434343434343026190a0000000000000000000000000000000000000000000a1926303434343434343434343434343434343434343434343434343434343026190a00000000000000000515232e34343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434322a1e10000000000000000000101e2a323434343434343434343434343434343434343434343434343434332d221303000000000000000000000000000000000000000000101e2a323434343434343434343434343434343434343434343434343434343434343434343026190a000000000000000000000000000000101e2a323434343434343434343434343434343434343434343434343434343434343434343026190a000000000000000000000000000000101e2a323434343434343434343434343434343434343434343434343434343434343434343026190a0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001d32475c72889da0a0a0a0a0a0a0a0a09d88725c47321d0000000000000000000000000000000000000000000410191e1f1f1f1f1f1f1f1d160c000000000000000000000000000000000000000000000005111a1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1b1409000000000000000000000000000000000000000000000009141b1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1b14090000000000000000000005111a1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1d170d00000000000000000000000d171d1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1e19100400000000000000000000000000000000000000000000000d171d1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1b140900000000000000000000000000000000000d171d1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1b140900000000000000000000000000000000000d171d1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1b1409000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001d32475c72888b8b8b8b8b8b8b8b8b8b8b88725c47321d0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001c31465b6e747474747474747474747474746e5b46311c000000000000000000000000000000000a121717171717171717171717171717161108000000000000000000000000010b1317171717171717171717171717171510060000000000000000000000061015171717171717171717171717171717171717171717171717171717171717171717140d0200000000000000000000000a121717171717171717171717171717161108000000000000050f15171717171717171717171717171717171717171715100600000000000a121717171717171717171717171717161108000000000000000000000000010b13171717171717171717171717171715100600000000000a121717171717171717171717171717161108000000000000000000000000010b1317171717171717171717171717171510060000000000000000000000061015171717171717171717171717171717171717171717171717171717171717171717140d0200000000000000000000000a12171717171717171717171717171716110800000000000000000000000000000000000000000000000000000000000000000000000000000000000000061015171717171717171717171717171717171717171717171717171716110908111617171717171717151006000000000000000000000000000000000000000000000000000000000000172b3e505c5f5f5f5f5f5f5f5f5f5f5f5f5f5c503e2b17000000000000000000000000000000101d262c2c2c2c2c2c2c2c2c2c2c2c2c2c2b241a0c0000000000000000000002111e272c2c2c2c2c2c2c2c2c2c2c2c2c2c2a23180a0000000000000000000a18232a2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c281f1304000000000000000000101d262c2c2c2c2c2c2c2c2c2c2c2c2c2c2b241a0c000000000816222a2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2a23180a000000101d262c2c2c2c2c2c2c2c2c2c2c2c2c2c2b241a0c0000000000000000000002111e272c2c2c2c2c2c2c2c2c2c2c2c2c2c2a23180a000000101d262c2c2c2c2c2c2c2c2c2c2c2c2c2c2b241a0c0000000000000000000002111e272c2c2c2c2c2c2c2c2c2c2c2c2c2c2a23180a0000000000000000000a18232a2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c281f1304000000000000000000101d262c2c2c2c2c2c2c2c2c2c2c2c2c2c2b241a0c00000000000000000000000000000000000000000000000000000000000000000000000000000000000a18232a2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2b251b1a242b2c2c2c2c2c2c2c2a23180a00000000000000000000000000000000000000000000000000000000000f21323f484a4a4a4a4a4a4a4a4a4a4a4a4a483f32210f00000000000000000000000000000d1e2e3a414242424242424242424242424240372a1a090000000000000000000f202f3b41424242424242424242424242423f3628180600000000000000061828363f4242424242424242424242424242424242424242424242424242424242424242413c31221200000000000000000d1e2e3a414242424242424242424242424240372a1a090000041626343e42424242424242424242424242424242424242423f36281806000d1e2e3a414242424242424242424242424240372a1a090000000000000000000f202f3b41424242424242424242424242423f36281806000d1e2e3a414242424242424242424242424240372a1a090000000000000000000f202f3b41424242424242424242424242423f3628180600000000000000061828363f4242424242424242424242424242424242424242424242424242424242424242413c31221200000000000000000d1e2e3a414242424242424242424242424240372a1a09000000000000000000000000000000000000000000000000000000000000000000000000000000061828363f424242424242424242424242424242424242424242424242424240382c2a3740424242424242423f36281806000000000000000000000000000000000000000000000000000000000313222d3334343434343434343434343434332d2213030000000000000000000000000000172a3c4c55575757575757575757575757575448382612000000000000000006192d3e4d565757575757575757575757575753463623100000000000000010233646535757575757575757575757575757575757575757575757575757575757575757574f402f1c0800000000000000172a3c4c5557575757575757575757575757544838261200000d213344515757575757575757575757575757575757575757534636231000172a3c4c55575757575757575757575757575448382612000000000000000006192d3e4d5657575757575757575757575757534636231000172a3c4c55575757575757575757575757575448382612000000000000000006192d3e4d565757575757575757575757575753463623100000000000000010233646535757575757575757575757575757575757575757575757575757575757575757574f402f1c0800000000000000172a3c4c5557575757575757575757575757544838261200000000000000000000000000000000000000000000000000000000000000000000000000000010233646535757575757575757575757575757575757575757575757575757554a3a38485457575757575757534636231000000000000000000000000000000000000000000000000000000000000410191e1f1f1f1f1f1f1f1f1f1f1f1f1f1e1910040000000000000000000000000000001d32465a696c6c6c6c6c6c6c6c6c6c6c6c6c6655412d1803000000000000000b2035495c6a6c6c6c6c6c6c6c6c6c6c6c6c6c64533f2a1500000000000000152a3f53646c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6b5e4b37230e000000000000001d32465a696c6c6c6c6c6c6c6c6c6c6c6c6c6655412d18030013283c50626c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c64533f2a15001d32465a696c6c6c6c6c6c6c6c6c6c6c6c6c6655412d1803000000000000000b2035495c6a6c6c6c6c6c6c6c6c6c6c6c6c6c64533f2a15001d32465a696c6c6c6c6c6c6c6c6c6c6c6c6c6655412d1803000000000000000b2035495c6a6c6c6c6c6c6c6c6c6c6c6c6c6c64533f2a1500000000000000152a3f53646c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6b5e4b37230e000000000000001d32465a696c6c6c6c6c6c6c6c6c6c6c6c6c6655412d18030000000000000000000000000000000000000000000000000000000000000000000000000000152a3f53646c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6857444155666c6c6c6c6c6c6c64533f2a1500000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001f344a5f74838383838383838383838383836f5a442f1a05000000000000000d22374c6277838383838383838383838383836c57422c1700000000000000172c42576c838383838383838383838383838383838383838383838383838383838383838379644f3a250f000000000000001f344a5f74838383838383838383838383836f5a442f1a0500152a3f546a80838383838383838383838383838383838383836c57422c17001f344a5f74838383838383838383838383836f5a442f1a05000000000000000d22374c6277838383838383838383838383836c57422c17001f344a5f74838383838383838383838383836f5a442f1a05000000000000000d22374c6277838383838383838383838383836c57422c1700000000000000172c42576c838383838383838383838383838383838383838383838383838383838383838379644f3a250f000000000000001f344a5f74838383838383838383838383836f5a442f1a050000000000000000000000000000000000000000000000000000000000000000000000000000172c42576c8383838383838383838383838383838383838383838383838383725c47445a6f838383838383836c57422c1700000000000000000000000000000000000610151717171717171717171717171717130b050f151717171717171717171717171717140d020000000000000000001f344a5f748b9898989898989898989898866f5a442f1a05000000000000000d22374c62778d9898989898989898989898836c57422c17000000030b0f0f172c42576c839898989898989898989898989898989898989898989898989898989898989079644f3a250f0f0e08000000001f344a5f748b9898989898989898989898866f5a442f1a0e0f152a3f546a80959898989898989898989898989898989898836c57422c17001f344a5f748b9898989898989898989898866f5a442f1a05000000000000000d22374c62778d9898989898989898989898836c57422c17001f344a5f748b9898989898989898989898866f5a442f1a05000000000000000d22374c62778d9898989898989898989898836c57422c17000000030b0f0f172c42576c839898989898989898989898989898989898989898989898989898989898989079644f3a250f0f0e08000000001f344a5f748b9898989898989898989898866f5a442f1a0500000000000000000000000000000000000000000000000000000000000000000000030b0f0f172c42576c8398989898989898989898989898989898989898989898989888725c47445a6f869898989898836c57422c17000000000000000000000000000000000a18232a2c2c2c2c2c2c2c2c2c2c2c2c2c2c271e16222a2c2c2c2c2c2c2c2c2c2c2c2c2c2c281f130400000000000000001f344a5f748ba0adadadadadadadadad9b866f5a442f1a05000000000000000d22374c62778da3adadadadadadadadad98836c57422c1700000a161f2425252c42576c8398adadadadadadadadadadadadadadadadadadadadadadadadadadadada59079644f3a252525231c120400001f344a5f748ba0adadadadadadadadad9b866f5a442f1e2325252a3f546a8095abadadadadadadadadadadadadadadad98836c57422c17001f344a5f748ba0adadadadadadadadad9b866f5a442f1a05000000000000000d22374c62778da3adadadadadadadadad98836c57422c17001f344a5f748ba0adadadadadadadadad9b866f5a442f1a05000000000000000d22374c62778da3adadadadadadadadad98836c57422c1700000a161f2425252c42576c8398adadadadadadadadadadadadadadadadadadadadadadadadadadadada59079644f3a252525231c120400001f344a5f748ba0adadadadadadadadad9b866f5a442f1a050000000000000000000000000000000000000000000000000000000000000000000a161f2425252c42576c8398adadadadadadadadadadadadadadadadadadadadadad9d88725c47445a6f869badadad98836c57422c17000000000000000000000000000000061828363f42424242424242424242424242413b2f26343e42424242424242424242424242413c31221200000000000000001f344a5f748ba0b5c3c3c3c3c3c3c3b09b866f5a442f1a05000000000000000d22374c62778da3b8c3c3c3c3c3c3c3ad98836c57422c170009192733393a3a3a42576c8398adc3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3bba59079644f3a3a3a3a372f221302001f344a5f748ba0b5c3c3c3c3c3c3c3b09b866f5a442f31383a3a3a3f546a8095abc0c3c3c3c3c3c3c3c3c3c3c3c3c3ad98836c57422c17001f344a5f748ba0b5c3c3c3c3c3c3c3b09b866f5a442f1a05000000000000000d22374c62778da3b8c3c3c3c3c3c3c3ad98836c57422c17001f344a5f748ba0b5c3c3c3c3c3c3c3b09b866f5a442f1a05000000000000000d22374c62778da3b8c3c3c3c3c3c3c3ad98836c57422c170009192733393a3a3a42576c8398adc3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3bba59079644f3a3a3a3a372f221302001f344a5f748ba0b5c3c3c3c3c3c3c3b09b866f5a442f1a05000000000000000000000000000000000000000000000000000000000000000009192733393a3a3a42576c8398adc3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3b39d88725c47445a6f869bb0c3ad98836c57422c17000000000000000000000000000000102336465357575757575757575757575757564d3e33445157575757575757575757575757574f402f1c08000000000000001f344a5f748ba0b5cbd8d8d8d8d8c5b09b866f5a442f1a05000000000000000d22374c62778da3b8cdd8d8d8d8d8c3ad98836c57422c1700142637454e4f4f4f4f576c8398adc3c4b7b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b2bbcabba59079644f4f4f4f4f4b40311f0d001f344a5f748ba0b5cbd8d8d8d8d8c5b09b866f5a4435444d4f4f4f4f546a8095abc0d5d8d8d8d8d8ccbdb3b0b0b0b0ad98836c57422c17001f344a5f748ba0b5cbd8d8d8d8d8c5b09b866f5a442f1a05000000000000000d22374c62778da3b8cdd8d8d8d8d8c3ad98836c57422c17001f344a5f748ba0b5cbd8d8d8d8d8c5b09b866f5a442f1a05000000000000000d22374c62778da3b8cdd8d8d8d8d8c3ad98836c57422c1700142637454e4f4f4f4f576c8398adc3c4b7b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b2bbcabba59079644f4f4f4f4f4b40311f0d001f344a5f748ba0b5cbd8d8d8d8d8c5b09b866f5a442f1a050000000000000000000000000000000000000000000000000000000000000000142637454e4f4f4f4f576c8398adc3c4b7b0b0b0b0b0b0b0b0b0b0b0b0b0b0b5c0c8b39d88725c4f4f5a6f869bb0b0ad98836c57422c17000000000000000000000000000000152a3f53646c6c6c6c6c6c6c6c6c6c6c6c6c6a5c493c50626c6c6c6c6c6c6c6c6c6c6c6c6c6b5e4b37230e000000000000001f344a5f748ba0b5cbe0edededdac5b09b866f5a442f1a05000000000000000d22374c62778da3b8cde2edededd8c3ad98836c57422c17001b3043556264646464646c8398adc3b7a69b9b9b9b9b9b9b9b9b9b9b9b9b9b9b9b9b9b9b9b9eacbebba590796464646464645e4f3c2814001f344a5f748ba0b5cbe0edededdac5b09b866f5a4441536164646464646a8095abc0d5eaedede9d4c1ae9f9b9b9b9b9b98836c57422c17001f344a5f748ba0b5cbe0edededdac5b09b866f5a442f1a05000000000000000d22374c62778da3b8cde2edededd8c3ad98836c57422c17001f344a5f748ba0b5cbe0edededdac5b09b866f5a442f1a05000000000000000d22374c62778da3b8cde2edededd8c3ad98836c57422c17001b3043556264646464646c8398adc3b7a69b9b9b9b9b9b9b9b9b9b9b9b9b9b9b9b9b9b9b9b9eacbebba590796464646464645e4f3c2814001f344a5f748ba0b5cbe0edededdac5b09b866f5a442f1a0500000000000000000000000000000000000000000000000000000000000000001b3043556264646464646c8398adc3b7a69b9b9b9b9b9b9b9b9b9b9b9b9b9ba2b3c5b39d8872646464646f869b9b9b9b98836c57422c17000000000000000000000000000000172c42576c8383838383838383838383838377624c3f546a8083838383838383838383838379644f3a250f000000000000001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a442f1a05000000000000000d22374c62778da3b8cde2f8ffedd8c3ad98836c57422c17001f34495e737979797979798398adc3b09b88868686868686868686868686868686868686868fa3b8bba590797979797979796b57412c17001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a44475c707979797979798095abc0d5eaffffe5d0bba691868686868686836c57422c17001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a442f1a05000000000000000d22374c62778da3b8cde2f8ffedd8c3ad98836c57422c17001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a442f1a05000000000000000d22374c62778da3b8cde2f8ffedd8c3ad98836c57422c17001f34495e737979797979798398adc3b09b88868686868686868686868686868686868686868fa3b8bba590797979797979796b57412c17001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a442f1a0500000000000000000000000000000000000000000000000000000000000000001f34495e737979797979798398adc3b09b888686868686868686868686868696abc0b39d88797979797979868686868686836c57422c170000000000000000000000030b0f0f172c42576c8398989898989898989898988d77624c3f546a8095989898989898989898989079644f3a250f0f0e08000000001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a442f1a07070707070707070d22374c62778da3b8cde2f8ffedd8c3ad98836c57422c17001f344a5f748b9090909090909db0c5b09b866f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f778da3b8bda997909090909090836c57422c17001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a44475c72889090909090909baec2d7ecf8f8e5d0bba590796f6f6f6f6f6f6654402b16001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a442f1a06070707070707070d22374c62778da3b8cde2f8ffedd8c3ad98836c57422c17001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a442f1a05000000000005070d22374c62778da3b8cde2f8ffedd8c3ad98836c57422c17001f344a5f748b9090909090909db0c5b09b866f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f778da3b8bda997909090909090836c57422c17001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a442f1a0707070707070707070707070707070707070707070400000000000000000000001f344a5f748b9090909090909db0c5b09b866f6f6f6f6f6f6f6f6f6f6f6f8095abc0b5a292909090909090796f6f6f6f6f6f6654402b16000000000000000000000a161f2425252c42576c8398adadadadadadadadada38d77624c3f546a8095abadadadadadadadada59079644f3a252525231c120400001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a442f1d1d1d1d1d1d1d1d1d1d22374c62778da3b8cde2f8ffedd8c3ad98836c57422c17001f344a5f748ba0a5a5a5a5a5adbbc5b09b866f5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a62778da3b8c6b5a9a5a5a5a5a598836c57422c17001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a44475c72889da5a5a5a5a5abb9cadde7e3e2e2d0bba59079645a5a5a5a5a5548372411001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a442f1a1c1d1d1d1d1d1d1d1a22374c62778da3b8cde2f8ffedd8c3ad98836c57422c17001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a442f1a0500000009141a1d1d22374c62778da3b8cde2f8ffedd8c3ad98836c57422c17001f344a5f748ba0a5a5a5a5a5adbbc5b09b866f5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a62778da3b8c6b5a9a5a5a5a5a598836c57422c17001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a442f1d1d1d1d1d1d1d1d1d1d1d1d1d1d1d1d1d1d1d1d1d1c1911060000000000000000001f344a5f748ba0a5a5a5a5a5adbbc5b09b866f5a5a5a5a5a5a5a5a5a5a6a8095abc0bfb0a6a5a5a5a5a59079645a5a5a5a5a554837241100000000000000000009192733393a3a3a42576c8398adc3c3c3c3c3c3c3b8a38d77624c3f546a8095abc0c3c3c3c3c3c3bba59079644f3a3a3a3a372f221302001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a44323232323232323232323232374c62778da3b8cde2f8ffedd8c3ad98836c57422c17001f344a5f748ba0b5bbbbbbbbc0cac5b09b866f5a44444444444444444444444444444c62778da3b8cdc6bdbbbbbbbbad98836c57422c17001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a44475c72889db3bbbbbbbbbfc9d7ddd3cecdcdcdbba59079644f4444444441382a1a08001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a442f2a31323232323232322f27374c62778da3b8cde2f8ffedd8c3ad98836c57422c17001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a442f1a0500000c1b272f323232374c62778da3b8cde2f8ffedd8c3ad98836c57422c17001f344a5f748ba0b5bbbbbbbbc0cac5b09b866f5a44444444444444444444444444444c62778da3b8cdc6bdbbbbbbbbad98836c57422c17001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a4432323232323232323232323232323232323232323232322d24170800000000000000001f344a5f748ba0b5bbbbbbbbc0cac5b09b866f5a4444444444444444546a8095abc0cec2bbbbbbbbbba59079644f4444444441382a1a08000000000000000000142637454e4f4f4f4f576c8398adc3d8d8d8d8d8cdb8a38d77624f4f546a8095abc0d5d8d8d8d8d0bba59079644f4f4f4f4f4b40311f0d001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a47474747474747474747474747474c62778da3b8cde2f8ffedd8c3ad98836c57422c17001f344a5f748ba0b5b8b8b8b8b8b8b8b09b866f5a442f2f2f2f2f2f2f2f2f2f2f2f374c62778da3b8cdd8d2d0d0d0c3ad98836c57422c17001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a47475c72889db3c8d0d0d0d3dbdbccbfb9b8b8b8b8a59079644f3a2f2f2f2d261a0c00001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a44303d45474747474747474338374c62778da3b8cde2f8ffedd8c3ad98836c57422c17001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a442f1a050007192a3843474747474c62778da3b8cde2f8ffedd8c3ad98836c57422c17001f344a5f748ba0b5cbd0d0d0d4dac5b09b866f5a442f2f2f2f2f2f2f2f2f2f2f2f374c62778da3b8cdd8d2d0d0d0c3ad98836c57422c17001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a4747474747474747474747474747474747474747474747474135261402000000000000001f344a5f748ba0b5cbd0d0d0d4dac5b09b866f5a44303d4547474747546a8095abc0d5d5d0d0d0d0bba59079644f47474747443a2c1b090000000000000000001b3043556264646464646c8398adc3d8ededede2cdb8a38d77646464646a8095abc0d5eaedede5d0bba590796464646464645e4f3c2814001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c62778da3b8cde2f8ffedd8c3ad98836c57422c17001f344a5f748ba0a3a3a3a3a3a3a3a3a39b866f5a442f1a1a1a1a1a1a1a1a1a1a22374c62778da3b8cde2e6e5e5d8c3ad98836c57422c17001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5c5c5c5c72889db3c8dde5e5e7e4d0beaea4a3a3a3a3a39079644f3a251a1a1812090000001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a443d4e5a5c5c5c5c5c5c5c5648374c62778da3b8cde2f8ffedd8c3ad98836c57422c17001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a442f1a05000f233648565c5c5c5c5c62778da3b8cde2f8ffedd8c3ad98836c57422c17001f344a5f748ba0b5cbe0e5e5e8dac5b09b866f5a442f1a1a1a1a1a1a1a1a1a1a22374c62778da3b8cde2e6e5e5d8c3ad98836c57422c17001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5344311e0a000000000000001f344a5f748ba0b5cbe0e5e5e8dac5b09b866f5a443d4e5a5c5c5c5c5c6a8095abc0d5e9e5e5e5d0bba59079645c5c5c5c5c574a3825110000000000000000001f34495e737979797979798398adc3d8edffffe2cdb8a38d7979797979798095abc0d5eaffffe5d0bba590797979797979796b57412c17001f344a5f748ba0b5cbe0f5fff0dac5b09b86727272727272727272727272727272727272778da3b8cde2f8ffedd8c3ad98836c57422c17001f344a5f748b8d8d8d8d8d8d8d8d8d8d8d866f5a442f1a05000000000000000d22374c62778da3b8cde2f8ffedd8c3ad98836c57422c17001f344a5f748ba0b5cbe0f5fff0dac5b09b86727272727272889db3c8ddf2fff3dec9b5a0908d8d8d8d8d8d79644f3a250f000000000000001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a44455a6c7272727272727266523e4c62778da3b8cde2f8ffedd8c3ad98836c57422c17001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a442f1a050014293e5266727272727272778da3b8cde2f8ffedd8c3ad98836c57422c17001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a442f1a05000000000000000d22374c62778da3b8cde2f8ffedd8c3ad98836c57422c17001f344a5f748ba0b5cbe0f5fff0dac5b09b867272727272727272727272727272727272727272727272727270614d38230e000000000000001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a44455a6c7272727272728095abc0d5eaffffe5d0bba590797272727272726855402b160000000000000000001f344a5f748b9090909090909db0c5d9eeffffe4cfbaa695909090909090909baec2d7ecffffe6d2bda997909090909090836c57422c17001f344a5f748ba0b5cbe0f5fff0dbc6b19c8a8888888888888888888888888888888888888890a4b9cee3f8ffedd8c3ad98836c57422c17001f34495e71777777777777777777777777776d59442f1a04000000000000000d22374c62778da3b8cde2f8ffedd8c3ad98836c57422c17001f344a5f748ba0b5cbe0f5fff0dbc6b19c8a8888888888888c9fb3c8def3fff2ddc8b39d8877777777777775634e39240f000000000000001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a44475c72888888888888806a543f4c62778da3b8cde2f8ffedd8c3ad98836c57422c17001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a442f1a0500152a3f546a8088888888888890a4b9cee3f8ffedd8c3ad98836c57422c17001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a442f1a05000000000000000d22374c62778da3b8cde2f8ffedd8c3ad98836c57422c17001f344a5f748ba0b5cbe0f5fff0dbc6b19c8a8888888888888888888888888888888888888888888888888879644f3a250f000000000000001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a44475c728888888888888897acc0d6ebffffe5d0bba692888888888888836c57422c170000000000000000001f344a5f748ba0a5a5a5a5a5adbbcde0f3ffffe9d6c3b3a8a5a5a5a5a5a5a5abb9caddf1ffffecd8c6b5a9a5a5a5a5a598836c57422c17001f344a5f748ba0b5cbe0f5fff4dfcbb8a89e9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9da0aebfd3e7fbffedd8c3ad98836c57422c17001b2f425360626262626262626262626262625d4f3d2a1601000000000000000d22374c62778da3b8cde2f8ffedd8c3ad98836c57422c17001f344a5f748ba0b5cbe0f5fff4dfcbb8a89e9d9d9d9d9d9d9faabbcee2edeaeaddc8b39d8872626262626261574734200b000000000000001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a44475c72889d9d9d9d95806a543f4c62778da3b8cde2f8ffedd8c3ad98836c57422c17001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a442f1a1415152a3f546a80959d9d9d9d9da0aebfd3e7fbffedd8c3ad98836c57422c17001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a442f1a05000000000000000d22374c62778da3b8cde2f8ffedd8c3ad98836c57422c17001f344a5f748ba0b5cbe0f5fff4dfcbb8a89e9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9079644f3a251515130d040000001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a44475c72889d9d9d9d9d9da5b4c7daeaeaebe9d5c2b0a29d9d9d9d9d98836c57422c170000000000000000001f344a5f748ba0b5bbbbbbbbc0cad9eafcfffff3e1d1c4bcbbbbbbbbbbbbbbbfc9d7e8fafffff5e3d3c6bdbbbbbbbbad98836c57422c17001f344a5f748ba0b5cbe0f5fffbe8d6c6b9b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b5beccddefffffedd8c3ad98836c57422c1700122535434b4c4c4c4c4c4c4c4c4c4c4c4c4c4a4031200e00000000000000000d22374c62778da3b8cde2f8ffedd8c3ad98836c57422c17001f344a5f748ba0b5cbe0f5fffbe8d6c6b9b3b3b3b3b3b3b3b3bbc8d8dfd8d5d5d5c8b39d88725c4c4c4c4c4c4639291704000000000000001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a44475c72889db3b3ab95806a543f4c62778da3b8cde2f8ffedd8c3ad98836c57422c17001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a442f23292a2a2a3f546a8095abb3b3b3b3b5beccddefffffedd8c3ad98836c57422c17001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a442f1a05000000000000000d22374c62778da3b8cde2f8ffedd8c3ad98836c57422c17001f344a5f748ba0b5cbe0f5fffbe8d6c6b9b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3a59079644f3a2a2a2a2821160800001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a44475c72889db3b3b3b3b3b7c2d2d5d5d5d6dcdfcebfb5b3b3b3b3ad98836c57422c170000000000000000001f344a5f748ba0b5b8b8b8b8bdc8d7e8fbfffff1e0cfc2bab8b8b8b8b8b8b8bcc7d5e6f8fffff4e2d1c3bab8b8b8b8ad98836c57422c17001f344a5f748ba0b5cbe0f5ffffefded0c5c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c1c9d5e4f6ffffedd8c3ad98836c57422c1700071725303637373737373737373737373737352e22130300000000000000000d22374c62778da3b8cde2f8ffedd8c3ad98836c57422c17001f344a5f748ba0b5cbe0f5fffff4e4d7cdc8c8c8c8c8c8c8c8ced8dbcdc4c0c0c0c0b39d88725c473737373732281b0b00000000000000001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a44475c72889db3c0ab95806a543f4c62778da3b8cde2f8ffedd8c3ad98836c57422c17001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a442f363e3f3f3f3f546a8095abc0c8c8c8c9d0dbeafaffffedd8c3ad98836c57422c17001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a442f1a05000000000000000d22374c62778da3b8cde2f8ffedd8c3ad98836c57422c17001f344a5f748ba0b5cbe0f5ffffefded0c5c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c1c8c8bba59079644f3f3f3f3f3c33261605001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a44475c72889db3c0c0c0c0c0c0c0c0c0c0c1c9d5ddd1cac8c8c8c3ad98836c57422c170000000000000000001f344a5f748ba0a3a3a3a3a3aab9cbdff3ffffe9d5c2b1a5a3a3a3a3a3a3a3a9b7c9dcf0ffffebd7c4b3a6a3a3a3a3a398836c57422c17001f344a5f748ba0b5cbe0f5fff8e4d2c0b3ababababababababababababababababababababadb7c7d8ebffffedd8c3ad98836c57422c17000008141c2122222222222222222222222222201b11040000000000000000000d22374c62778da3b8cde2f8ffedd8c3ad98836c57422c17001f344a5f748ba0b5cbe0f5fffffff4e9e1dddddddddddddddee2dfcdbdb0ababababab9d88725c47322222221e160b0000000000000000001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a44475c72889db3c0ab95806a543f4c62778da3b8cde2f8ffedd8c3ad98836c57422c17001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a4438485254545454546a8095abc0d5dddddee4edf9ffffffedd8c3ad98836c57422c17001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a442f1a05000000000000000d22374c62778da3b8cde2f8ffedd8c3ad98836c57422c17001f344a5f748ba0b5cbe0f5fff8e4d2c0b3ababababababababababababababababababababadb7c7bba59079645454545454504434220f001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a44475c72889dabababababababababababadb7c7d8e4dfddddd8c3ad98836c57422c170000000000000000001f344a5f748b8d8d8d8d8d8e9cafc4d9eeffffe3cebaa5938d8d8d8d8d8d8d99adc1d6ebffffe6d1bca8958d8d8d8d8d8d836c57422c17001f344a5f748ba0b5cbe0f5fff2ddc9b5a2969595959595959595959595959595959595959599a9bcd0e5faffedd8c3ad98836c57422c1700000001080c0d0d0d0d0d0d0d0d0d0d0d0d0d0b0700000000000000000000000d22374c62778da3b8cde2f8ffedd8c3ad98836c57422c17001f344a5f748ba0b5cbe0f5fffffffffcf6f3f2f2f2f2f2f2f3edd8c4b09e95959595959588725c47321d0d0c0903000000000000000000001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a44475c72889db3c0ab95806a543f4c62778da3b8cde2f8ffedd8c3ad98836c57422c17001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a444356666a6a6a6a6a6a8095abc0d5eaf2f3f8ffffffffffedd8c3ad98836c57422c17001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a442f1a05000000000000000d22374c62778da3b8cde2f8ffedd8c3ad98836c57422c17001f344a5f748ba0b5cbe0f5fff2ddc9b5a2969595959595959595959595959595959595959599a9bcbba590796a6a6a6a6a6a62513e2a15001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a44475c728895959595959595959595959599a9bcd0e5f4f2edd8c3ad98836c57422c170000000000000000001f34495e717777777777778398adc3d8edffffe2cdb8a38d7777777777778095abc0d5eaffffe5d0bba590797777777777776a56412c17001f344a5f748ba0b5cbe0f5fff0dac5b09b86808080808080808080808080808080808080808da3b8cde2f8ffedd8c3ad98836c57422c1700000000000000000000000000000000000000000000000000000000000000000d22374c62778da3b8cde2f8ffedd8c3ad98836c57422c17001f344a5f748ba0b5cbe0f5ffffffffffffffffffffffffffffead5c0ab9580808080808080725c47321d07000000000000000000000000001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a44475c72889db3c0ab95806a543f4c62778da3b8cde2f8ffedd8c3ad98836c57422c17001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a44475c728080808080808095abc0d5eaffffffffffffffffedd8c3ad98836c57422c17001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a442f1a05000000000000000d22374c62778da3b8cde2f8ffedd8c3ad98836c57422c17001f344a5f748ba0b5cbe0f5fff0dac5b09b86808080808080808080808080808080808080808da3b8bba590808080808080806c57422c17001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a44475c72808080808080808080808080808da3b8cde2f8ffedd8c3ad98836c57422c170000000000000000001b2f42536062626262626c8398adc3d8edffffe2cdb8a38d77626262626a8095abc0d5eaffffe5d0bba590796462626262625c4d3b2713001f344a5f748ba0b5cbe0f5fff0dac5b09b866f6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a778da3b8cde2f8ffedd8c3ad98836c57422c1700000000000000000000000000000000000000000000000000000000000000000d22374c62778da3b8cde2f8ffedd8c3ad98836c57422c17001f344a5f748ba0b5cbe0f5fffffffffcf6f3f2f2f2f2f2f2f3ead5c0ab95806a6a6a6a6a6a6656432f1a05000000000000000000000000001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a44475c72889db3c0ab95806a543f4c62778da3b8cde2f8ffedd8c3ad98836c57422c17001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a44475c72889595959595959eb0c4d8edf2f3f8ffffffffffedd8c3ad98836c57422c17001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a442f1a05000000000000000d22374c62778da3b8cde2f8ffedd8c3ad98836c57422c17001f344a5f748ba0b5cbe0f5fff0dac5b09b866f6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a778da3b8bfab9b959595959595836c57422c17001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a444356666a6a6a6a6a6a6a6a6a6a6a6a778da3b8cde2f8ffedd8c3ad98836c57422c17000000000000000000122535434b4c4c4c4c576c8398adc3d8edffffe2cdb8a38d77624c4c546a8095abc0d5eaffffe5d0bba59079644f4c4c4c4c493e2f1e0b001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a54545454545454545454545454545462778da3b8cde2f8ffedd8c3ad98836c57422c1700000000000000000000000000000000000000000000000000000000000000000d22374c62778da3b8cde2f8ffedd8c3ad98836c57422c17001f344a5f748ba0b5cbe0f5fffffff4e9e1dddddddddddddddee2d5c0ab95806a5454545454524838271400000000000000000000000000001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a44475c72889db3c0ab95806a543f4c62778da3b8cde2f8ffedd8c3ad98836c57422c17001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a44475c72889dabababababb0bdcddddddddee4edf9ffffffedd8c3ad98836c57422c17001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a442f1a05000000000000000d22374c62778da3b8cde2f8ffedd8c3ad98836c57422c17001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a54545454545454545454545454545462778da3b8c9b9aeababababab98836c57422c17001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a44384852545454545454545454545462778da3b8cde2f8ffedd8c3ad98836c57422c17000000000000000000071725303637373742576c8398adc3d8edffffe2cdb8a38d77624c3f546a8095abc0d5eaffffe5d0bba59079644f3a373737352d201101001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a443f3f3f3f3f3f3f3f3f3f3f3f3f4c62778da3b8cde2f8ffedd8c3ad98836c57422c1700000000000000000000000000000000000000000000000000000000000000000d22374c62778da3b8cde2f8ffedd8c3ad98836c57422c17001f344a5f748ba0b5cbe0f5fffff4e4d7cdc8c8c8c8c8c8c8c8ced5c0ab95806a543f3f3f3f3e362a1b0900000000000000000000000000001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a44475c72889db3c0ab95806a543f4c62778da3b8cde2f8ffedd8c3ad98836c57422c17001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a44475c72889db3c0c0c0c0c4c8c8c8c8c8c9d0dbeafaffffedd8c3ad98836c57422c17001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a442f1a05000000000000000d22374c62778da3b8cde2f8ffedd8c3ad98836c57422c17001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a443f3f3f3f3f3f3f3f3f3f3f3f3f4c62778da3b8cdcac2c0c0c0c0ad98836c57422c17001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a442f363e3f3f3f3f3f3f3f3f3f3f4c62778da3b8cde2f8ffedd8c3ad98836c57422c170000000000000000000008141c2122222c42576c8398adc3d8edffffe2cdb8a38d77624c3f546a8095abc0d5eaffffe5d0bba59079644f3a25222220190f0200001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a442f2a2a2a2a2a2a2a2a2a2a2a374c62778da3b8cde2f8ffedd8c3ad98836c57422c1700000000000000000000000000000000000000000000000000000000000000000d22374c62778da3b8cde2f8ffedd8c3ad98836c57422c17001f344a5f748ba0b5cbe0f5fffbe8d6c6b9b3b3b3b3b3b3b3b3bbc8c0ab95806a544c4c4c4c4a4133221000000000000000000000000000001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a4c4c5c72889db3c0ab95806a544c4c62778da3b8cde2f8ffedd8c3ad98836c57422c17001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a4c4c5c72889db3c8c2b7b3b3b3b3b3b3b3b5beccddefffffedd8c3ad98836c57422c17001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a442f1a05000000000000000d22374c62778da3b8cde2f8ffedd8c3ad98836c57422c17001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a442f2a2a2a2a2a2a2a2a2a2a2a374c62778da3b8cdddd7d5d5d5c3ad98836c57422c17001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a442f23292a2a2a2a2a2a2a2a2a374c62778da3b8cde2f8ffedd8c3ad98836c57422c17000000000000000000000001080c0d172c42576c8398adc3d8edffffe2cdb8a38d77624c3f546a8095abc0d5eaffffe5d0bba59079644f3a250f0d0b06000000001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a442f1a15151515151515151522374c62778da3b8cde2f8ffedd8c3ad98836c57422c1700000000000000000000000000000000000000000000000000000000000000000d22374c62778da3b8cde2f8ffedd8c3ad98836c57422c17001f344a5f748ba0b5cbe0f5fff4dfcbb8a89e9d9d9d9d9d9d9faabbc0ab95806a62626262625f51402c1804000000000000000000000000001f344a5f748ba0b5cbe0f5fff0dac5b09b866f6262626272889db3c0ab95806a62626262778da3b8cde2f8ffedd8c3ad98836c57422c17001f344a5f748ba0b5cbe0f5fff0dac5b09b866f6262626272889db3c7b4a59d9d9d9d9d9d9da0aebfd3e7fbffedd8c3ad98836c57422c17001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a442f1a05000000000000000d22374c62778da3b8cde2f8ffedd8c3ad98836c57422c17001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a442f1a15151515151515151522374c62778da3b8cde2eceaead8c3ad98836c57422c17001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a442f1a14151515151515151522374c62778da3b8cde2f8ffedd8c3ad98836c57422c17000000000000000000000000000000172c42576c8398adc3d8edffffe2cdb8a38d77624c3f546a8095abc0d5eaffffe5d0bba59079644f3a250f000000000000001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a442f1a05000000000000000d22374c62778da3b8cde2f8ffedd8c3ad98836c57422c1700000000000000000000000000000000000000000000000000000000000000000d22374c62778da3b8cde2f8ffedd8c3ad98836c57422c17001f344a5f748ba0b5cbe0f5fff0dbc6b19c8a8888888888888c9fb3c0ab95807777777777776f5b46311c07000000000000000000000000001f344a5f748ba0b5cbe0f5fff0dac5b09b86777777777777889db3c0ab95807777777777778da3b8cde2f8ffedd8c3ad98836c57422c17001f344a5f748ba0b5cbe0f5fff0dac5b09b86777777777777889db3c0ac978888888888888890a4b9cee3f8ffedd8c3ad98836c57422c17001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a442f1a05000000000000000d22374c62778da3b8cde2f8ffedd8c3ad98836c57422c17001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a442f1a05000000000000000d22374c62778da3b8cde2f8ffedd8c3ad98836c57422c17001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a442f1a05000000000000000d22374c62778da3b8cde2f8ffedd8c3ad98836c57422c17000000000000000000000000000000172c42576c8398adc3d8edffffe2cdb8a38d77624c3f546a8095abc0d5eaffffe5d0bba59079644f3a250f000000000000001f344a5f748ba0b5cbe0f5faf0dac5b09b866f5a442f1a05040100000003050d22374c62778da3b8cde2f8faedd8c3ad98836c57422c1700000000000000000000000000000000000000000000000000000000000000000d22374c62778da3b8cde2f8ffedd8c3ad98836c57422c17001f344a5f748ba0b5cbe0f5fff0dac5b09b86727272727272889db3c1ad998d8d8d8d8d8d88725c47321d07050200000000000000000000001f344a5f748ba0b5cbe0f5fff1dcc7b29e8f8d8d8d8d8d8d90a0b5c1ad998d8d8d8d8d8d8d93a5bacee3f9ffedd8c3ad98836c57422c17001f344a5f748ba0b5cbe0f5fff1dcc7b29e8f8d8d8d8d8d8d90a0b5c0ab95807272727272778da3b8cde2f8ffedd8c3ad98836c57422c17001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a442f1a05000000000000000d22374c62778da3b8cde2f8ffedd8c3ad98836c57422c17001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a442f1a05000000000000000d22374c62778da3b8cde2f8ffedd8c3ad98836c57422c17001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a442f1a05000000000000000d22374c62778da3b8cde2f8ffedd8c3ad98836c57422c17000000000000000000000000000000172c42576c8398adc3d8edffffe2cdb8a38d77624c3f546a8095abc0d5eaffffe5d0bba59079644f3a250f000000000000001f344a5f748ba0b5cbe0e5e5e8dac5b09b866f5a442f1a1a1a160e0711181a1a22374c62778da3b8cde2e6e5e5d8c3ad98836c57422c1700000000000000000000000000000000000000000000000000000000000000000d22374c62778da3b8cde2f8ffedd8c3ad98836c57422c17001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5c5c5c5c72889db3c8b7a9a3a3a3a3a39d88725c47321d1a1a160f040000000000000000001f344a5f748ba0b5cbe0f5fff5e1cebbaca3a3a3a3a3a3a3a4aebec9b7a9a3a3a3a3a3a3a3a5b1c2d5e9fdffedd8c3ad98836c57422c17001f344a5f748ba0b5cbe0f5fff5e1cebbaca3a3a3a3a3a3a3a4aebec0ab95806a5c5c5c62778da3b8cde2f8ffedd8c3ad98836c57422c17001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a442f1a05000000000000000d22374c62778da3b8cde2f8ffedd8c3ad98836c57422c17001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a442f1a05000000000000000d22374c62778da3b8cde2f8ffedd8c3ad98836c57422c17001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a442f1a05000000000000000d22374c62778da3b8cde2f8ffedd8c3ad98836c57422c17000000000000000000000000000000172c42576c8398adc3d8edffffe2cdb8a38d77624c3f546a8095abc0d5eaffffe5d0bba59079644f3a250f000000000000001f344a5f748ba0b5cbd0d0d0d4dac5b09b866f5a442f2f2f2f2a2019242c2f2f2f374c62778da3b8cdd8d2d0d0d0c3ad98836c57422c1700000000000000000000000000000000000000000000000000000000000000000d22374c62778da3b8cde2f8ffedd8c3ad98836c57422c17001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a47475c72889db3c8c7bcb8b8b8b8b39d88725c47322f2f2f2b22150600000000000000001f344a5f748ba0b5cbe0f5fffdebd9cabeb8b8b8b8b8b8b8b9bfccd0c7bcb8b8b8b8b8b8b8bac2cfe0f1ffffedd8c3ad98836c57422c17001f344a5f748ba0b5cbe0f5fffdebd9cabeb8b8b8b8b8b8b8b9bfccc0ab95806a54474c62778da3b8cde2f8ffedd8c3ad98836c57422c17001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a442f1a05000000000000000d22374c62778da3b8cde2f8ffedd8c3ad98836c57422c17001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a442f1a05000000000000000d22374c62778da3b8cde2f8ffedd8c3ad98836c57422c17001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a442f1a05000000000000000d22374c62778da3b8cde2f8ffedd8c3ad98836c57422c17000000000000000000000000000000172c42576c8398adc3d8edffffe2cdb8a38d77624c3f546a8095abc0d5eaffffe5d0bba59079644f3a250f000000000000001f344a5f748ba0b5bbbbbbbbc0cac5b09b866f5a44444444443d31283640444444444c62778da3b8cdc6bdbbbbbbbbad98836c57422c1700000000000000000000000000000000000000000000000000000000000000000d22374c62778da3b8cde2f8ffedd8c3ad98836c57422c17001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a44475c72889db3bbbbbbbbbfc9c8b39d88725c47444444443e33241301000000000000001f344a5f748ba0b5cbe0f5fffff7e8dbd2cdcdcdcdcdc4bcbbbbbbbbbbbbbbbfc9cdcdcdcdced5e0edfdffffedd8c3ad98836c57422c17001f344a5f748ba0b5cbe0f5fffff7e8dbd2cdcdcdcdcdc4bcbbbbbbbbab95806a543f4c62778da3b8cde2f8ffedd8c3ad98836c57422c17001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a442f1a05000000000000000d22374c62778da3b8cde2f8ffedd8c3ad98836c57422c17001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a442f1a05000000000000000d22374c62778da3b8cde2f8ffedd8c3ad98836c57422c17001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a442f1a05000000000000000d22374c62778da3b8cde2f8ffedd8c3ad98836c57422c17000000000000000000000000000000172c42576c8398adc3d8edffffe2cdb8a38d77624c3f546a8095abc0d5eaffffe5d0bba59079644f3a250f000000000000001f344a5f748ba0a5a5a5a5a5adbbc5b09b866f5a5a5a5a5a594f403546545a5a5a5a5a62778da3b8c6b5a9a5a5a5a5a598836c57422c1700000000000000000000000000000000000000000000000000000000000000000d22374c62778da3b8cde2f8ffedd8c3ad98836c57422c17001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a44475c72889da5a5a5a5a5abb9c8b39d88725c5a5a5a5a595142301d09000000000000001f344a5f748ba0b5cbe0f5fffffff9eee6e3e2e2d6c3b3a8a5a5a5a5a5a5a5abb9cadde2e2e3e9f1fdffffffedd8c3ad98836c57422c17001f344a5f748ba0b5cbe0f5fffffff9eee6e3e2e2d6c3b3a8a5a5a5a5a595806a543f4c62778da3b8cde2f8ffedd8c3ad98836c57422c17001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a442f1a05000000000000000d22374c62778da3b8cde2f8ffedd8c3ad98836c57422c17001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a442f1a05000000000000000d22374c62778da3b8cde2f8ffedd8c3ad98836c57422c17001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a442f1a05000000000000000d22374c62778da3b8cde2f8ffedd8c3ad98836c57422c17000000000000000000000000000000172c42576c8398adc3d8edffffe2cdb8a38d77624c3f546a8095abc0d5eaffffe5d0bba59079644f3a250f000000000000001f344a5f748b9090909090909db0c5b09b866f6f6f6f6f6f6d5d4a3d51646f6f6f6f6f6f778da3b8bda997909090909090836c57422c1700000000000000000000000000000000000000000000000000000000000000000d22374c62778da3b8cde2f8ffedd8c3ad98836c57422c17001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a44475c72889090909090909baec2b39d88726f6f6f6f6f6e604c38230e000000000000001f344a5f748ba0b5cbe0f5ffffffffffffffffe4cfbaa695909090909090909baec2d7ecffffffffffffffffedd8c3ad98836c57422c17001f344a5f748ba0b5cbe0f5ffffffffffffffffe4cfbaa695909090909090806a543f4c62778da3b8cde2f8ffedd8c3ad98836c57422c17001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a442f1a05000000000000000d22374c62778da3b8cde2f8ffedd8c3ad98836c57422c17001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a442f1a05000000000000000d22374c62778da3b8cde2f8ffedd8c3ad98836c57422c17001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a442f1a05000000000000000d22374c62778da3b8cde2f8ffedd8c3ad98836c57422c17000000000000000000000000000405172c42576c8398adc3d8edffffe2cdb8a38d77624c3f546a8095abc0d5eaffffe5d0bba59079644f3a250f050300000000001f34495e737979797979798398adc3b09b8886868686868677624c3f546a808686868686868fa3b8bba590797979797979796b57412c1700000000000000000000000000000000000000000000000000000000000000000d22374c62778da3b8cde2f8ffedd8c3ad98836c57422c17001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a44475c707979797979798095abc0b39e8a86868686868679644f3a250f000000000000001f344a5f748ba0b5cbe0f5ffffffffffffffffe2cdb8a38d7979797979798095abc0d5eaffffffffffffffffedd8c3ad98836c57422c17001f344a5f748ba0b5cbe0f5ffffffffffffffffe2cdb8a38d7979797979797969543f4c62778da3b8cde2f8ffedd8c3ad98836c57422c17001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a442f1a05000000000000000d22374c62778da3b8cde2f8ffedd8c3ad98836c57422c17001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a442f1a05000000000000000d22374c62778da3b8cde2f8ffedd8c3ad98836c57422c17001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a442f1a05000000000000000d22374c62778da3b8cde2f8ffedd8c3ad98836c57422c1700000000000000000000010d15191a1a2c42576c8398adc3d8edffffe2cdb8a38d77624c3f546a8095abc0d5eaffffe5d0bba59079644f3a251a1a1812090000001b3043556264646464646c8398adc3b7a69b9b9b9b9b9b8d77624c3f546a80959b9b9b9b9b9eacbebba590796464646464645e4f3c281400000000000000000000000000000000000000000000000000000000000000000d22374c62778da3b8cde2f8ffedd8c3ad98836c57422c17001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a4441536164646464646a8095abc0b9a89c9b9b9b9b9b9079644f3a251212100b020000001f344a5f748ba0b5cbe0f5fffffffff7f0edede2cdb8a38d77646464646a8095abc0d5eaedeef3fbffffffffedd8c3ad98836c57422c17001f344a5f748ba0b5cbe0f5fffffffff7f0edede2cdb8a38d776464646464645d4c3a4c62778da3b8cde2f8ffedd8c3ad98836c57422c17001f344a5f748ba0b5cbe0ededf0dac5b09b866f5a442f1a12121212121212121222374c62778da3b8cde2eeededd8c3ad98836c57422c17001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a442f1a12121212121212121222374c62778da3b8cde2eeededd8c3ad98836c57422c17001f344a5f748ba0b5cbe0ededf0dac5b09b866f5a442f1a12121212121212121222374c62778da3b8cde2eeededd8c3ad98836c57422c1700000000000000000002121f292e2f2f2f42576c8398adc3d8edffffe2cdb8a38d77624c3f546a8095abc0d5eaffffe5d0bba59079644f3a2f2f2f2d261a0c0000142637454e4f4f4f4f576c8398adc3c4b7b0b0b0b0b0a38d77624c3f546a8095abb0b0b0b0b2bbcabba59079644f4f4f4f4f4b40311f0d00000000000000000000000000000000000000000000000000000000000000000d22374c62778da3b8cde2f8ffedd8c3ad98836c57422c17001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a4435444d4f4f4f4f546a8095abc0c6b8b1b0b0b0b0a59079644f3a272727251e140600001f344a5f748ba0b5cbe0f5fffffef0e4dcd8d8d8cdb8a38d77624f4f546a8095abc0d5d8d8d9dfe8f5ffffffedd8c3ad98836c57422c17001f344a5f748ba0b5cbe0f5fffffef0e4dcd8d8d8cdb8a38d77624f4f4f4f4f4a3f374c62778da3b8cde2f8ffedd8c3ad98836c57422c17001f344a5f748ba0b5cbd8d8d8dbdac5b09b866f5a442f2727272727272727272727374c62778da3b8cde0d9d8d8d8c3ad98836c57422c17001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a442f2727272727272727272727374c62778da3b8cde0d9d8d8d8c3ad98836c57422c17001f344a5f748ba0b5cbd8d8d8dbdac5b09b866f5a442f2727272727272727272727374c62778da3b8cde0d9d8d8d8c3ad98836c57422c170000000000000000000f20303c4344444444576c8398adc3d8edffffe2cdb8a38d77624c44546a8095abc0d5eaffffe5d0bba59079644f4444444441382a1a080009192733393a3a3a42576c8398adc3c3c3c3c5c5c5b8a38d77624c3f546a8095abc0c5c5c3c3c3c3bba59079644f3a3a3a3a372f22130200000000000000000000000000000000000000000000000000000000000000000d22374c62778da3b8cde2f8ffedd8c3ad98836c57422c17001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a442f31383a3a3a3f546a8095abc0c3c3c3c4c5c5bba59079644f3c3c3c3c3a31241504001f344a5f748ba0b5cbe0f5fffff1e0d2c8c3c3c3c3b8a38d77624c3f546a8095abc0c3c3c3c4cbd7e6f7ffffedd8c3ad98836c57422c17001f344a5f748ba0b5cbe0f5fffff1e0d2c8c3c3c3c3b8a38d77624c3a3a3a3a362d374c62778da3b8cde2f8ffedd8c3ad98836c57422c17001f344a5f748ba0b5c3c3c3c3c7d1c5b09b866f5a443c3c3c3c3c3c3c3c3c3c3c3c3c4c62778da3b8cdcdc5c3c3c3c3ad98836c57422c17001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a443c3c3c3c3c3c3c3c3c3c3c3c3c4c62778da3b8cdcdc5c3c3c3c3ad98836c57422c17001f344a5f748ba0b5c3c3c3c3c7d1c5b09b866f5a443c3c3c3c3c3c3c3c3c3c3c3c3c4c62778da3b8cdcdc5c3c3c3c3ad98836c57422c17000000000000000000182b3e4e585a5a5a5a5a6c8398adc3d8edffffe2cdb8a38d77625a5a5a6a8095abc0d5eaffffe5d0bba59079645a5a5a5a5a554837241100000a161f2425252c42576c8398adadadadadb0bbcab8a38d77625252546a8095abc0c4b6aeadadadada59079644f3a252525231c12040000000000000000000000000000000000000000000000000000000000000000000d22374c62778da3b8cde2f8ffedd8c3ad98836c57422c17001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a442f1e2325252a3f546a8095abadadadadafb9c8bba590796452525252524e4233210e001f344a5f748ba0b5cbe0f5fff9e5d3c2b5aeadadadada38d77624c3f546a8095abadadadadafb9c8daedffffedd8c3ad98836c57422c17001f344a5f748ba0b5cbe0f5fff9e5d3c2b5aeadadadada38d77624c372525252222374c62778da3b8cde2f8ffedd8c3ad98836c57422c17001f344a5f748ba0adadadadadb3c0c5b09b866f5a52525252525252525252525252525262778da3b8cabbb0adadadadad98836c57422c17001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a52525252525252525252525252525262778da3b8cabbb0adadadadad98836c57422c17001f344a5f748ba0adadadadadb3c0c5b09b866f5a52525252525252525252525252525262778da3b8cabbb0adadadadad98836c57422c170000000000000000001e33475b6b6f6f6f6f6f6f8398adc3d8edffffe2cdb8a38d776f6f6f6f6f8095abc0d5eaffffe5d0bba590796f6f6f6f6f6f6654402b16000000030b0f0f172c42576c839898989898989dadc0b8a38d77676767676a8095abc0b8a69a98989898989079644f3a250f0f0e0800000000000000000000000000000000000000000000000000000000000000000000000d22374c62778da3b8cde2f8ffedd8c3ad98836c57422c17001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a442f1a0e0f152a3f546a809598989898989caabdbba5907967676767676760503d2914001f344a5f748ba0b5cbe0f5fff2dec9b6a49998989898988d77624c3f546a809598989898989caabdd1e5faffedd8c3ad98836c57422c17001f344a5f748ba0b5cbe0f5fff2dec9b6a49998989898988d77624c37220f0f0d22374c62778da3b8cde2f8ffedd8c3ad98836c57422c17001f344a5f748b989898989898a2b3c5b09b866f6767676767676767676767676767676767778da3b8c0ad9d989898989898836c57422c17001f344a5f748ba0b5cbe0f5fff0dac5b09b866f6767676767676767676767676767676767778da3b8c0ad9d989898989898836c57422c17001f344a5f748b989898989898a2b3c5b09b866f6767676767676767676767676767676767778da3b8c0ad9d989898989898836c57422c170000000000000000001f344a5f748686868686868699aec3d8edffffe3cdb8a38f8686868686868696abc0d5ebffffe5d0bba691868686868686836c57422c1700000000000000172c42576c8383838383838390a5bbb8a38d7c7c7c7c7c7c8095abc0b39e8983838383838379644f3a250f00000000000000000000000000000000000000000000000000000000000000000000000000000d22374c62778da3b8cde2f8ffedd8c3ad98836c57422c17001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a442f1a0500152a3f546a808383838383838ea3b8bba5907c7c7c7c7c7c7c6c57422c17001f344a5f748ba0b5cbe0f5fff0dbc5b09b8683838383838377624c3f546a808383838383838ea3b8cde3f8ffedd8c3ad98836c57422c17001f344a5f748ba0b5cbe0f5fff0dbc5b09b8683838383838377624c37220d000d22374c62778da3b8cde2f8ffedd8c3ad98836c57422c17001f344a5f748383838383838498adc3b09b867c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c8da3b8bba590838383838383836c57422c17001f344a5f748ba0b5cbe0f5fff0dac5b09b867c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c8da3b8bba590838383838383836c57422c17001f344a5f748383838383838498adc3b09b867c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c8da3b8bba590838383838383836c57422c170000000000000000001f344a5f748b9b9b9b9b9b9ba4b5c8dcf0ffffe6d2beac9e9b9b9b9b9b9b9ba2b3c5d9eeffffe9d4c1ae9f9b9b9b9b9b98836c57422c1700000000000000152a3f53646c6c6c6c6c6c7990a5bbbba897939393939393939dafc3b39d88726c6c6c6c6c6b5e4b37230e00000000000000000000000000000000000000000000000000000000000000000000000000000d22374c62778da3b8cde2f5f5edd8c3ad98836c57422c17001f344a5f748ba0b5cbe0f5f5f0dac5b09b866f5a442f1a050013283c50626c6c6c6c6c6c778da3b8beaa99939393939393836c57422c17001f344a5f748ba0b5cbe0f5f5f0dac5b09b866f6c6c6c6c6c6a5c493c50626c6c6c6c6c6c778da3b8cde2f5f5edd8c3ad98836c57422c17001f344a5f748ba0b5cbe0f5f5f0dac5b09b866f6c6c6c6c6c6a5c4935200b000d22374c62778da3b8cde2f5f5edd8c3ad98836c57422c17001d32465a696c6c6c6c6c6c8398adc3b4a1949393939393939393939393939393939393939397a8bbbba590796c6c6c6c6c6c64533f2a15001f344a5f748ba0b5cbe0f5f5f1dcc8b4a1949393939393939393939393939393939393939397a8bbbba590796c6c6c6c6c6c64533f2a15001d32465a696c6c6c6c6c6c8398adc3b4a1949393939393939393939393939393939393939397a8bbbba590796c6c6c6c6c6c64533f2a150000000000000000001f344a5f748ba0b0b0b0b0b0b6c2d2e4f7ffffeedbcabbb2b0b0b0b0b0b0b0b5c0d0e2f5fffff0ddccbdb3b0b0b0b0ad98836c57422c170000000000000010233646535757575757647990a5bbc5b5aaa8a8a8a8a8a8a8aebbc8b39d88725c57575757574f402f1c0800000000000000000000000000000000000000000000000000000000000000000000000000000d22374c62778da3b8cde0e0e0e0d8c3ad98836c57422c17001f344a5f748ba0b5cbe0e0e0e0dac5b09b866f5a442f1a05000d21334451575757575762778da3b8c7b7aba8a8a8a8a898836c57422c17001f344a5f748ba0b5cbe0e0e0e0dac5b09b866f5a57575757564d3e334451575757575762778da3b8cde0e0e0e0d8c3ad98836c57422c17001f344a5f748ba0b5cbe0e0e0e0dac5b09b866f5a57575757564d3e2d1906000d22374c62778da3b8cde0e0e0e0d8c3ad98836c57422c1700172a3c4c5557575757576c8398adc3bfb0a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8aab5c5bba590796457575757575346362310001f344a5f748ba0b5cbe0e0e0e0e0d0bfb0a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8aab5c5bba59079645757575757534636231000172a3c4c5557575757576c8398adc3bfb0a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8aab5c5bba5907964575757575753463623100000000000000000001f344a5f748ba0b5c3c3c3c3c7d1deeefffffff7e6d7cbc4c3c3c3c3c3c3c3c6cfdcecfefffff9e8d9cdc5c3c3c3c3ad98836c57422c1700000000000000061828363f424242424f647990a5bbcbc7bfbdbdbdbdbdbdbdc1cbc8b39d88725c47424242413c3122120000000000000000000000000000000000000000000000000000000000000000000000000000000d22374c62778da3b8cbcbcbcbcbcbc3ad98836c57422c17001f344a5f748ba0b5cbcbcbcbcbcbc5b09b866f5a442f1a0500041626343e424242424c62778da3b8cbc8bfbdbdbdbdad98836c57422c17001f344a5f748ba0b5cbcbcbcbcbcbc5b09b866f5a44424242413b2f26343e424242424c62778da3b8cbcbcbcbcbcbc3ad98836c57422c17001f344a5f748ba0b5cbcbcbcbcbcbc5b09b866f5a44424242413b2f200f00000d22374c62778da3b8cbcbcbcbcbcbc3ad98836c57422c17000d1e2e3a4142424242576c8398adc3cbc3bebdbdbdbdbdbdbdbdbdbdbdbdbdbdbdbdbdbdbdbfc7cbbba59079644f424242423f36281806001f344a5f748ba0b5cbcbcbcbcbcbcbcbc3bebdbdbdbdbdbdbdbdbdbdbdbdbdbdbdbdbdbdbdbfc7cbbba59079644f424242423f36281806000d1e2e3a4142424242576c8398adc3cbc3bebdbdbdbdbdbdbdbdbdbdbdbdbdbdbdbdbdbdbdbfc7cbbba59079644f424242423f362818060000000000000000001f344a5f748ba0adadadadadb3c0d1e3f6ffffeddac8b9afadadadadadadadb2becfe1f4ffffefdccabbb0adadadadad98836c57422c1700000000000000000a18232a2c2c2c3a4f647990a5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b39d88725c47322c2c2c281f13040000000000000000000000000000000000000000000000000000000000000000000000000000000d22374c62778da3b5b5b5b5b5b5b5b5ad98836c57422c17001f344a5f748ba0b5b5b5b5b5b5b5b5b09b866f5a442f1a0500000816222a2c2c2c374c62778da3b5b5b5b5b5b5b5b5ad98836c57422c17001f344a5f748ba0b5b5b5b5b5b5b5b5b09b866f5a442f2c2c2c271e16222a2c2c2c374c62778da3b5b5b5b5b5b5b5b5ad98836c57422c17001f344a5f748ba0b5b5b5b5b5b5b5b5b09b866f5a442f2c2c2c271e110200000d22374c62778da3b5b5b5b5b5b5b5b5ad98836c57422c170000101d262c2c2c2c42576c8398adb5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5a59079644f3a2c2c2c2a23180a00001f344a5f748ba0b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5a59079644f3a2c2c2c2a23180a000000101d262c2c2c2c42576c8398adb5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5a59079644f3a2c2c2c2a23180a000000000000000000001f344a5f748b989898989898a2b3c7dbf0ffffe5d1bdaa9c98989898989898a0b1c4d9edffffe8d4c0ad9d989898989898836c57422c170000000000000000000610151717253a4f647990a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a09d88725c47321d1717140d02000000000000000000000000000000000000000000000000000000000000000000000000000000000d22374c62778da0a0a0a0a0a0a0a0a0a098836c57422c17001f344a5f748ba0a0a0a0a0a0a0a0a0a09b866f5a442f1a05000000050f15171722374c62778da0a0a0a0a0a0a0a0a0a098836c57422c17001f344a5f748ba0a0a0a0a0a0a0a0a0a09b866f5a442f1a1717130b050f15171722374c62778da0a0a0a0a0a0a0a0a0a098836c57422c17001f344a5f748ba0a0a0a0a0a0a0a0a0a09b866f5a442f1a1717130b010000000d22374c62778da0a0a0a0a0a0a0a0a0a098836c57422c170000000a121717172c42576c8398a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a09079644f3a2517171510060000001f344a5f748ba0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a09079644f3a25171715100600000000000a121717172c42576c8398a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a09079644f3a25171715100600000000000000000000001f344a5f748383838383838498adc3d8edffffe3cdb8a38e8383838383838396abc0d5eaffffe5d0bba590838383838383836c57422c17000000000000000000000000000f253a4f64798b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b88725c47321d0700000000000000000000000000000000000000000000000000000000000000000000000000000000000000000d22374c62778b8b8b8b8b8b8b8b8b8b8b8b836c57422c17001f344a5f748b8b8b8b8b8b8b8b8b8b8b8b866f5a442f1a05000000000000000d22374c62778b8b8b8b8b8b8b8b8b8b8b8b836c57422c17001f344a5f748b8b8b8b8b8b8b8b8b8b8b8b866f5a442f1a05000000000000000d22374c62778b8b8b8b8b8b8b8b8b8b8b8b836c57422c17001f344a5f748b8b8b8b8b8b8b8b8b8b8b8b866f5a442f1a05000000000000000d22374c62778b8b8b8b8b8b8b8b8b8b8b8b836c57422c1700000000000000172c42576c838b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b79644f3a250f000000000000001f344a5f748b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b79644f3a250f00000000000000000000000000172c42576c838b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b79644f3a250f0000000000000000000000000000001d32465a696c6c6c6c6c6c8398adc3d8edf5f5e2cdb8a38d776c6c6c6c6c8095abc0d5eaf5f5e5d0bba590796c6c6c6c6c6c64533f2a15000000000000000000000000000f24394e6273747474747474747474747474747474747474746e5b46311c0700000000000000000000000000000000000000000000000000000000000000000000000000000000000000000c21364b6071747474747474747474747474746955412c17001f34495d70747474747474747474747474746b58432e1904000000000000000c21364b6071747474747474747474747474746955412c17001f34495d70747474747474747474747474746b58432e1904000000000000000c21364b6071747474747474747474747474746955412c17001f34495d70747474747474747474747474746b58432e1904000000000000000c21364b6071747474747474747474747474746955412c1700000000000000172c415569747474747474747474747474747474747474747474747474747474747474747473624e39240f000000000000001f34495d70747474747474747474747474747474747474747474747474747474747474747474747474747473624e39240f00000000000000000000000000172c415569747474747474747474747474747474747474747474747474747474747474747473624e39240f000000000000000000000000000000172a3c4c5557575757576c8398adc3d8e0e0e0e0cdb8a38d77625757576a8095abc0d5e0e0e0e0d0bba590796457575757575346362310000000000000000000000000000b1f3345555e5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5c503e2b17030000000000000000000000000000000000000000000000000000000000000000000000000000000000000000081c3043535e5f5f5f5f5f5f5f5f5f5f5f5f5f5a4c3a2612001a2e41515d5f5f5f5f5f5f5f5f5f5f5f5f5f5b4e3c29150000000000000000081c3043535e5f5f5f5f5f5f5f5f5f5f5f5f5f5a4c3a2612001a2e41515d5f5f5f5f5f5f5f5f5f5f5f5f5f5b4e3c29150000000000000000081c3043535e5f5f5f5f5f5f5f5f5f5f5f5f5f5a4c3a2612001a2e41515d5f5f5f5f5f5f5f5f5f5f5f5f5f5b4e3c29150000000000000000081c3043535e5f5f5f5f5f5f5f5f5f5f5f5f5f5a4c3a26120000000000000012263a4c5a5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5e5545331f0b000000000000001a2e41515d5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5e5545331f0b0000000000000000000000000012263a4c5a5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5e5545331f0b0000000000000000000000000000000d1e2e3a4142424242576c8398adc3cbcbcbcbcbcbb8a38d77624c42546a8095abc0cbcbcbcbcbcbbba59079644f424242423f36281806000000000000000000000000000316273743494a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a483f32210f0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000114253542494a4a4a4a4a4a4a4a4a4a4a4a4a463c2e1d0a0011233341494a4a4a4a4a4a4a4a4a4a4a4a4a473e301f0d00000000000000000114253542494a4a4a4a4a4a4a4a4a4a4a4a4a463c2e1d0a0011233341494a4a4a4a4a4a4a4a4a4a4a4a4a473e301f0d00000000000000000114253542494a4a4a4a4a4a4a4a4a4a4a4a4a463c2e1d0a0011233341494a4a4a4a4a4a4a4a4a4a4a4a4a473e301f0d00000000000000000114253542494a4a4a4a4a4a4a4a4a4a4a4a4a463c2e1d0a000000000000000a1d2e3c464a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4943372716030000000000000011233341494a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a494337271603000000000000000000000000000a1d2e3c464a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a49433727160300000000000000000000000000000000101d262c2c2c2c42576c8398adb5b5b5b5b5b5b5b5a38d77624c3f546a8095abb5b5b5b5b5b5b5b5a59079644f3a2c2c2c2a23180a0000000000000000000000000000000a1926303434343434343434343434343434343434343434332d221303000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000817252f3434343434343434343434343434322a1e1000000515232e3434343434343434343434343434332b2012010000000000000000000817252f3434343434343434343434343434322a1e1000000515232e3434343434343434343434343434332b2012010000000000000000000817252f3434343434343434343434343434322a1e1000000515232e3434343434343434343434343434332b2012010000000000000000000817252f3434343434343434343434343434322a1e10000000000000000000101e2a323434343434343434343434343434343434343434343434343434343434343434343026190a00000000000000000515232e343434343434343434343434343434343434343434343434343434343434343434343434343434343026190a000000000000000000000000000000101e2a323434343434343434343434343434343434343434343434343434343434343434343026190a0000000000000000000000000000000000000a121717172c42576c8398a0a0a0a0a0a0a0a0a0a08d77624c3f546a8095a0a0a0a0a0a0a0a0a0a09079644f3a251717151006000000000000000000000000000000000009141b1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1e19100400000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000007121b1f1f1f1f1f1f1f1f1f1f1f1f1f1f1d170d0000000005111a1f1f1f1f1f1f1f1f1f1f1f1f1f1f1e180f02000000000000000000000007121b1f1f1f1f1f1f1f1f1f1f1f1f1f1f1d170d0000000005111a1f1f1f1f1f1f1f1f1f1f1f1f1f1f1e180f02000000000000000000000007121b1f1f1f1f1f1f1f1f1f1f1f1f1f1f1d170d0000000005111a1f1f1f1f1f1f1f1f1f1f1f1f1f1f1e180f02000000000000000000000007121b1f1f1f1f1f1f1f1f1f1f1f1f1f1f1d170d00000000000000000000000d171d1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1b14090000000000000000000005111a1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1b140900000000000000000000000000000000000d171d1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1b14090000000000000000000000000000000000000000000000172c42576c838b8b8b8b8b8b8b8b8b8b8b8b77624c3f546a808b8b8b8b8b8b8b8b8b8b8b8b79644f3a250f00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000172c4155697474747474747474747474747471604b3e53677474747474747474747474747473624e39240f0000000000000000000a1217171717171717171717171717171717171717171717171717171717171717171717171717171717140d0200000000000000000000000a121717171717171717171717171717161108000000000000050f15171717171717171717171717171717171717171715100600000000000000000000000000000000000000000000000000000000000000000000000000000000000000081116171717171717171510060000000000000000000000061015171717171717171717171717171717171717171717171717171717171717171717140d02000000000000000000000000000000000006101517171717171717171717171717171717171717171717171717171717171717171717171717171715100600000000000a121717171717171717171717171717161108000000000000000000000000010b13171717171717171717171717171715100600000000000a121717171717171717171717171717161108000000000000000000000000010b131717171717171717171717171717151006000000000000000000000000080e0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0c0500000000000000000000000000000000000000000000000012263a4c5a5f5f5f5f5f5f5f5f5f5f5f5f5f5e53433749585f5f5f5f5f5f5f5f5f5f5f5f5f5e5545331f0b0000000000000000101d262c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c281f1304000000000000000000101d262c2c2c2c2c2c2c2c2c2c2c2c2c2c2b241a0c000000000816222a2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2a23180a00000000000000000000000000000000000000000000000000000000000000000000000000000000000c1a242b2c2c2c2c2c2c2c2a23180a0000000000000000000a18232a2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c281f13040000000000000000000000000000000a18232a2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2a23180a000000101d262c2c2c2c2c2c2c2c2c2c2c2c2c2c2b241a0c0000000000000000000002111e272c2c2c2c2c2c2c2c2c2c2c2c2c2c2a23180a000000101d262c2c2c2c2c2c2c2c2c2c2c2c2c2c2b241a0c0000000000000000000002111e272c2c2c2c2c2c2c2c2c2c2c2c2c2c2a23180a00000000000000000004121c2325252525252525252525252525252525252525252525252525252525252525252421180d00000000000000000000000000000000000000000000000a1d2e3c464a4a4a4a4a4a4a4a4a4a4a4a4a4942352c3b454a4a4a4a4a4a4a4a4a4a4a4a4a494337271603000000000000000d1e2e3a414242424242424242424242424242424242424242424242424242424242424242424242424242413c31221200000000000000000d1e2e3a414242424242424242424242424240372a1a090000041626343e42424242424242424242424242424242424242423f36281806000000000000000000000000000000000000000000000000000000000000000000000000000000091a2a3740424242424242423f3628180600000000000000061828363f4242424242424242424242424242424242424242424242424242424242424242413c3122120000000000000000000000000000061828363f4242424242424242424242424242424242424242424242424242424242424242424242424242423f36281806000d1e2e3a414242424242424242424242424240372a1a090000000000000000000f202f3b41424242424242424242424242423f36281806000d1e2e3a414242424242424242424242424240372a1a090000000000000000000f202f3b41424242424242424242424242423f36281806000000000000000213222f373a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a352b1d0d0000000000000000000000000000000000000000000000101e2a3234343434343434343434343434342f251d293134343434343434343434343434343026190a0000000000000000172a3c4c555757575757575757575757575757575757575757575757575757575757575757575757575757574f402f1c0800000000000000172a3c4c5557575757575757575757575757544838261200000d213344515757575757575757575757575757575757575757534636231000000000000000000000000000000000000000000000000000000000000000000000000000000012263848545757575757575753463623100000000000000010233646535757575757575757575757575757575757575757575757575757575757575757574f402f1c08000000000000000000000000001023364653575757575757575757575757575757575757575757575757575757575757575757575757575757534636231000172a3c4c55575757575757575757575757575448382612000000000000000006192d3e4d5657575757575757575757575757534636231000172a3c4c55575757575757575757575757575448382612000000000000000006192d3e4d56575757575757575757575757575346362310000000000000000d1f31404b4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f483b2b180500000000000000000000000000000000000000000000000d171d1f1f1f1f1f1f1f1f1f1f1f1f1f1f1b120c161d1f1f1f1f1f1f1f1f1f1f1f1f1f1f1b14090000000000000000001d32465a696c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6b5e4b37230e000000000000001d32465a696c6c6c6c6c6c6c6c6c6c6c6c6c6655412d18030013283c50626c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c64533f2a15000000000000000000000000000000000000000000000000000000000000000000000000000000182d4155666c6c6c6c6c6c6c64533f2a1500000000000000152a3f53646c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6b5e4b37230e00000000000000000000000000152a3f53646c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c64533f2a15001d32465a696c6c6c6c6c6c6c6c6c6c6c6c6c6655412d1803000000000000000b2035495c6a6c6c6c6c6c6c6c6c6c6c6c6c6c64533f2a15001d32465a696c6c6c6c6c6c6c6c6c6c6c6c6c6655412d1803000000000000000b2035495c6a6c6c6c6c6c6c6c6c6c6c6c6c6c64533f2a150000000000000014283c4f5e646464646464646464646464646464646464646464646464646464646464646464594835210c00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001f344a5f74838383838383838383838383838383838383838383838383838383838383838383838383838379644f3a250f000000000000001f344a5f74838383838383838383838383836f5a442f1a0500152a3f546a80838383838383838383838383838383838383836c57422c170000000000000000000000000000000000000000000000000000000000000000000000000000001a2f445a6f838383838383836c57422c1700000000000000172c42576c838383838383838383838383838383838383838383838383838383838383838379644f3a250f00000000000000000000000000172c42576c8383838383838383838383838383838383838383838383838383838383838383838383838383836c57422c17001f344a5f74838383838383838383838383836f5a442f1a05000000000000000d22374c6277838383838383838383838383836c57422c17001f344a5f74838383838383838383838383836f5a442f1a05000000000000000d22374c6277838383838383838383838383836c57422c1700000000000000172c41576b797979797979797979797979797979797979797979797979797979797979797977644f3a240f00000000000000000000000000000000000a121717171717171717140e04000000000000000000000000050f151717171717171717171717171717140d020000000000000000001f344a5f748b9898989898989898989898989898989898989898989898989898989898989898989898989079644f3a250f0f0e08000000001f344a5f748b9898989898989898989898866f5a442f1a0e0f152a3f546a80959898989898989898989898989898989898836c57422c170000000000000000000000000000000000000000000000000000000000000000000000040b0f0f1a2f445a6f869898989898836c57422c17000000030b0f0f172c42576c839898989898989898989898989898989898989898989898989898989898989079644f3a250f0f0e08000000000000030b0f0f172c42576c8398989898989898989898989898989898989898989898989898989898989898989898989898836c57422c17001f344a5f748b9898989898989898989898866f5a442f1a05000000000000000d22374c62778d9898989898989898989898836c57422c17001f344a5f748b9898989898989898989898866f5a442f1a0500000000070d0f0f22374c62778d9898989898989898989898836c57422c1700000000000000172c42576c839090909090909090909090909090909090909090909090909090909090909079644f3a250f07060100000000000000000000000000101d262c2c2c2c2c2c2c2c29211506000000000000000000000816222a2c2c2c2c2c2c2c2c2c2c2c2c2c2c281f130400000000000000001f344a5f748ba0adadadadadadadadadadadadadadadadadadadadadadadadadadadadadadadadadada59079644f3a252525231c120400001f344a5f748ba0adadadadadadadadad9b866f5a442f1e2325252a3f546a8095abadadadadadadadadadadadadadadad98836c57422c17000000000000000000000000000000000000000000000000000000000000000000000b17202425252f445a6f869badadad98836c57422c1700000a161f2425252c42576c8398adadadadadadadadadadadadadadadadadadadadadadadadadadadada59079644f3a252525231c12040000000a161f2425252c42576c8398adadadadadadadadadadadadadadadadadadadadadadadadadadadadadadadadadadad98836c57422c17001f344a5f748ba0adadadadadadadadad9b866f5a442f1a05000000000000000d22374c62778da3adadadadadadadadad98836c57422c17001f344a5f748ba0adadadadadadadadad9b866f5a442f1a05000003101b22252525374c62778da3adadadadadadadadad98836c57422c1700000000000000172c42576c8398a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a59079644f3a251d1d1b150b00000000000000000000000d1e2e3a41424242424242423d332414020000000000000000041626343e42424242424242424242424242413c31221200000000000000001f344a5f748ba0b5c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3bba59079644f3a3a3a3a372f221302001f344a5f748ba0b5c3c3c3c3c3c3c3b09b866f5a442f31383a3a3a3f546a8095abc0c3c3c3c3c3c3c3c3c3c3c3c3c3ad98836c57422c170000000000000000000000000000000000000000000000000000000000000000000b1b2934393a3a3a445a6f869bb0c3ad98836c57422c170009192733393a3a3a42576c8398adc3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3bba59079644f3a3a3a3a372f2213020009192733393a3a3a42576c8398adc3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3ad98836c57422c17001f344a5f748ba0b5c3c3c3c3c3c3c3b09b866f5a442f1a05000000000000000d22374c62778da3b8c3c3c3c3c3c3c3ad98836c57422c17001f344a5f748ba0b5c3c3c3c3c3c3c3b09b866f5a442f1a05000011212d363a3a3a3a4c62778da3b8c3c3c3c3c3c3c3ad98836c57422c1700000000000000172c42576c8398adbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbba59079644f3a3232322f281c0e00000000000000000000172a3c4c55575757575757575042311e0b00000000000000000d2133445157575757575757575757575757574f402f1c08000000000000001f344a5f748ba0b5cbd8d8d8d8d8d4c4b7b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b2bbcabba59079644f4f4f4f4f4b40311f0d001f344a5f748ba0b5cbd8d8d8d8d8c5b09b866f5a4435444d4f4f4f4f546a8095abc0d5d8d8d8d8d8ccbdb3b0b0b0b0ad98836c57422c17000000000000000000000000000000000000000000000000000000000000000003162839474e4f4f4f4f5a6f869bb0b0ad98836c57422c1700142637454e4f4f4f4f576c8398adc3c4b7b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b2bbcabba59079644f4f4f4f4f4b40311f0d00142637454e4f4f4f4f576c8398adc3c4b7b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b2bbcad8d8d8d8d8d8c3ad98836c57422c17001f344a5f748ba0b5cbd8d8d8d8d8c5b09b866f5a442f1a05000000000000000d22374c62778da3b8cdd8d8d8d8d8c3ad98836c57422c17001f344a5f748ba0b5cbd8d8d8d8d8c5b09b866f5a442f1a05000a1d2f3f4a4f4f4f4f4f62778da3b8ccbdb3b0b0b0b0ad98836c57422c1700000000000000172c42576c8398adb8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8bac2cfbba59079644f47474747443a2c1b090000000000000000001d32465a696c6c6c6c6c6c6c604e3a2510000000000000000013283c50626c6c6c6c6c6c6c6c6c6c6c6c6c6b5e4b37230e000000000000001f344a5f748ba0b5cbe0edededdecab7a69b9b9b9b9b9b9b9b9b9b9b9b9b9b9b9b9b9b9b9b9eacbebba590796464646464645e4f3c2814001f344a5f748ba0b5cbe0edededdac5b09b866f5a4441536164646464646a8095abc0d5eaedede9d4c1ae9f9b9b9b9b9b98836c57422c170000000000000000000000000000000000000000000000000000000000000000091e3246576364646464646f869b9b9b9b98836c57422c17001b3043556264646464646c8398adc3b7a69b9b9b9b9b9b9b9b9b9b9b9b9b9b9b9b9b9b9b9b9eacbebba590796464646464645e4f3c2814001b3043556264646464646c8398adc3b7a69b9b9b9b9b9b9b9b9b9b9b9b9b9b9b9b9b9b9b9b9eacbed2e6edededd8c3ad98836c57422c17001f344a5f748ba0b5cbe0edededdac5b09b866f5a442f1a05000000000000000d22374c62778da3b8cde2edededd8c3ad98836c57422c17001f344a5f748ba0b5cbe0edededdac5b09b866f5a442f1a050011263a4c5d646464646464778da3b8c1ae9f9b9b9b9b9b98836c57422c1700000000000000172c42576c8398a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a5b1c2bba59079645c5c5c5c5c574a3825110000000000000000001f344a5f748383838383837c67523c27120000000000000000152a3f546a8083838383838383838383838379644f3a250f000000000000001f344a5f748ba0b5cbe0f5fff0dbc5b09b88868686868686868686868686868686868686868fa3b8bba590797979797979796b57412c17001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a44475c707979797979798095abc0d5eaffffe5d0bba691868686868686836c57422c1700000000000000000000000000000000000000000000000000000000000000000c22374c6175797979797979868686868686836c57422c17001f34495e737979797979798398adc3b09b88868686868686868686868686868686868686868fa3b8bba590797979797979796b57412c17001f34495e737979797979798398adc3b09b88868686868686868686868686868686868686868fa3b8cde3f8ffedd8c3ad98836c57422c17001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a442f1a05000000000000000d22374c62778da3b8cde2f8ffedd8c3ad98836c57422c17001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a442f1a0500142a3f5469797979797979798da3b8bba691868686868686836c57422c1700000000000000172c42576c838d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d93a5babba590797272727272726855402b160000000000000000001f344a5f748b98989898937c67523c27120f0e090100000000152a3f546a8095989898989898989898989079644f3a250f0f0e08000000001f344a5f748ba0b5cbe0f5fff0dac5b09b866f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f778da3b8bda997909090909090836c57422c17001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a44475c72889090909090909baec2d7ecf8f8e5d0bba590796f6f6f6f6f6f6654402b1600000000000000000000000000000000000000000000000000000000000005070d22374c62778d9090909090796f6f6f6f6f6f6654402b16001f344a5f748b9090909090909db0c5b09b866f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f778da3b8bda997909090909090836c57422c17001f344a5f748b9090909090909db0c5b09b866f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f778da3b8cde2f8ffedd8c3ad98836c57422c17001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a442f1a05000000000000000d22374c62778da3b8cde2f8ffedd8c3ad98836c57422c17001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a442f1a0707152a3f546a8090909090909095a6babba590796f6f6f6f6f6f6654402b1600000000000000172c41566a77777777777777777777777777777777777777777777777777778da3b8bba692888888888888836c57422c170000000000000000001f344a5f748ba0adada8937c67523c272525231d1306000000152a3f546a8095abadadadadadadadada59079644f3a252525231c120400001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a62778da3b8c6b5a9a5a5a5a5a598836c57422c17001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a44475c72889da5a5a5a5a5abb9cadde7e3e2e2d0bba59079645a5a5a5a5a55483724110000000000000000000000000000000000000000000000000000000009141a1d1d22374c62778da3a5a5a59079645a5a5a5a5a5548372411001f344a5f748ba0a5a5a5a5a5adbbc5b09b866f5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a62778da3b8c6b5a9a5a5a5a5a598836c57422c17001f344a5f748ba0a5a5a5a5a5adbbc5b09b866f5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a62778da3b8cde2f8ffedd8c3ad98836c57422c17001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a442f1a05000000000000000d22374c62778da3b8cde2f8ffedd8c3ad98836c57422c17001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a442f1d1d1d1d2a3f546a8095a5a5a5a5a5a8b3c3bba59079645a5a5a5a5a55483724110000000000000013273b4d5c62626262626262626262626262626262626262626262626262778da3b8c2b0a29d9d9d9d9d98836c57422c170000000000000000001f344a5f748ba0b5bda8937c67523c3a3a3a38302415040000152a3f546a8095abc0c3c3c3c3c3c3bba59079644f3a3a3a3a372f221302001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a44444444444444444444444444444c62778da3b8cdc6bdbbbbbbbbad98836c57422c17001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a44475c72889db3bbbbbbbbbfc9d7ddd3cecdcdcdbba59079644f4444444441382a1a080000000000000000000000000000000000000000000000000000000c1b272f323232374c62778da3b8bba59079644f4444444441382a1a08001f344a5f748ba0b5bbbbbbbbc0cac5b09b866f5a44444444444444444444444444444c62778da3b8cdc6bdbbbbbbbbad98836c57422c17001f344a5f748ba0b5bbbbbbbbc0cac5b09b866f5a44444444444444444444444444444c62778da3b8cde2f8ffedd8c3ad98836c57422c17001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a442f1a05000000000000000d22374c62778da3b8cde2f8ffedd8c3ad98836c57422c17001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a443232323232323f546a8095abbbbbbbbbbcc4cdbba59079644f4444444441382a1a08000000000000000b1e2f3e494c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c62778da3b8cdbfb5b3b3b3b3ad98836c57422c170000000000000000001f344a5f748ba0b0b0a8937c67524f4f4f4f4c4233220f0000152a3f546a8095abc0c6b8b1b0b0b0b0a59079644f4f4f4f4f4b40311f0d001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a442f2f2f2f2f2f2f2f2f2f2f2f374c62778da3b8cdd8d2d0d0d0c3ad98836c57422c17001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a47475c72889db3c8d0d0d0d3dbdbccbfb9b8b8b8b8a59079644f3a2f2f2f2d261a0c00000000000000000000000000000000000000000000000000000007192a3843474747474c62778da3b8b8a59079644f3a2f2f2f2d261a0c00001f344a5f748ba0b5cbd0d0d0d4dac5b09b866f5a442f2f2f2f2f2f2f2f2f2f2f2f374c62778da3b8cdd8d2d0d0d0c3ad98836c57422c17001f344a5f748ba0b5cbd0d0d0d4dac5b09b866f5a442f2f2f2f2f2f2f2f2f2f2f2f374c62778da3b8cde2f8ffedd8c3ad98836c57422c17001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a442f1a05000000000000000d22374c62778da3b8cde2f8ffedd8c3ad98836c57422c17001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a4747474747474747546a8095abc0ccbfb9b8b8b8b8a59079644f3a2f2f2f2d261a0c0000000000000000051626333c3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f4c62778da3b8cdd1cac8c8c8c3ad98836c57422c170000000000000000001f344a5f748b9b9b9b9b937c67646464646460513e2b160200152a3f546a8095abc0b9a89c9b9b9b9b9b90796464646464645e4f3c2814001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a442f1a1a1a1a1a1a1a1a1a1a22374c62778da3b8cde2e6e5e5d8c3ad98836c57422c17001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5c5c5c5c72889db3c8dde5e5e7e4d0beaea4a3a3a3a3a39079644f3a251a1a181209000000000000000000000000000000000000000000000000000000000f233648565c5c5c5c5c62778da3a3a3a39079644f3a251a1a1812090000001f344a5f748ba0b5cbe0e5e5e8dac5b09b866f5a442f1a1a1a1a1a1a1a1a1a1a22374c62778da3b8cde2e6e5e5d8c3ad98836c57422c17001f344a5f748ba0b5cbe0e5e5e8dac5b09b866f5a442f1a1a1a1a1a1a1a1a1a1a22374c62778da3b8cde2f8ffedd8c3ad98836c57422c17001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a442f1a05000000000000000d22374c62778da3b8cde2f8ffedd8c3ad98836c57422c17001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5c5c5c5c5c5c5c5c5c5c6a8095abc0beaea4a3a3a3a3a39079644f3a251a1a1812090000000000000000000f2234445054545454545454545454545454545454545454545454545462778da3b8cde2dfddddd8c3ad98836c57422c170000000000000000001f344a5f748686868686867c7979797979796e59442f1a0500152a3f546a8095abc0b39e8a868686868686797979797979796b57412c17001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a442f1a05000000000000000d22374c62778da3b8cde2f8ffedd8c3ad98836c57422c17001f344a5f748ba0b5cbe0f5fff0dac5b09b86727272727272889db3c8ddf2fff3dec9b5a0908d8d8d8d8d8d79644f3a250f000000000000000000000000000000000000000000000000000000000000000014293e5266727272727272778d8d8d8d8d8d79644f3a250f000000000000001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a442f1a05000000000000000d22374c62778da3b8cde2f8ffedd8c3ad98836c57422c17001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a442f1a05000000000000000d22374c62778da3b8cde2f8ffedd8c3ad98836c57422c17001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a442f1a05000000000000000d22374c62778da3b8cde2f8ffedd8c3ad98836c57422c17001f344a5f748ba0b5cbe0f5fff0dac5b09b867272727272727272727272728095abc0b5a0908d8d8d8d8d8d79644f3a250f00000000000000000000000000152a3e51626a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a778da3b8cde2f4f2edd8c3ad98836c57422c170000000000000000001e33475b6b6f6f6f6f6f6f839090909090866f5a442f1a0707152a3f546a8095abc0b39d88726f6f6f6f6f869090909090836c57422c17001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a442f1a05000000000000000d22374c62778da3b8cde2f8ffedd8c3ad98836c57422c17001f344a5f748ba0b5cbe0f5fff0dbc6b19c8a8888888888888c9fb3c8def3fff2ddc8b39d8877777777777775634e39240f0000000000000000000000000000000000000000000000000000000000000000152a3f546a8088888888888877777777777775634e39240f000000000000001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a442f1a05000000000000000d22374c62778da3b8cde2f8ffedd8c3ad98836c57422c17001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a442f1a05000000000000000d22374c62778da3b8cde2f8ffedd8c3ad98836c57422c17001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a442f1a05000000000000000d22374c62778da3b8cde2f8ffedd8c3ad98836c57422c17001f344a5f748ba0b5cbe0f5fff0dbc6b19c8a8888888888888888888888888897acc0b39d8877777777777775634e39240f00000000000000000000000000172c42576c80808080808080808080808080808080808080808080808080808da3b8cde2f8ffedd8c3ad98836c57422c17000000000000000000182b3e4e585a5a5a5a5a6c8398a5a5a59b866f5a442f1d1d1c182a3f546a8095abc0b39d88725c5a5a5a6f869ba5a5a598836c57422c17001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a442f1a15151515151515151522374c62778da3b8cde2eceaead8c3ad98836c57422c17001f344a5f748ba0b5cbe0f5fff4dfcbb8a89e9d9d9d9d9d9d9faabbcee2eaeaedddc8b39d8872626262626261574734201515130d04000000000000000000000000000000000000000000000000070f1415152a3f546a80959d9d9d9d8872626262626261574734200b000000000000001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a442f1a05000000000000000d22374c62778da3b8cde2f8ffedd8c3ad98836c57422c17001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a442f1a05000000000000000d22374c62778da3b8cde2f8ffedd8c3ad98836c57422c17001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a442f1a05000000000000000d22374c62778da3b8cde2f8ffedd8c3ad98836c57422c17001f344a5f748ba0b5cbe0f5fff4dfcbb8a89e9d9d9d9d9d9d9d9d9d9d9d9d9da5b4c7b39d8872626262626261574734200b00000000000000000001080c0d172c42576c839595959595959595959595959595959595959595959595959599a9bcd0e5faffedd8c3ad98836c57422c170000000000000000000f20303c4344444444576c8398adbbb09b866f5a44323232312c2a3f546a8095abc0b39d88725c47445a6f869bb0bbad98836c57422c17001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a442f2a2a2a2a2a2a2a2a2a2a2a374c62778da3b8cdddd7d5d5d5c3ad98836c57422c17001f344a5f748ba0b5cbe0f5fffbe8d6c6b9b3b3b3b3b3b3b3b3bbc8d5d5d5d5d8ddc8b39d88725c4c4c4c4c4c46392a2a2a2a28211608000000000000000000000000000000000000000000000c1923292a2a2a3f546a8095abb3b39d88725c4c4c4c4c4c4639291704000000000000001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a442f1a05000000000000000d22374c62778da3b8cde2f8ffedd8c3ad98836c57422c17001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a442f1a05000000000000000d22374c62778da3b8cde2f8ffedd8c3ad98836c57422c17001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a442f1a05000000000000000d22374c62778da3b8cde2f8ffedd8c3ad98836c57422c17001f344a5f748ba0b5cbe0f5fffbe8d6c6b9b3b3b3b3b3b3b3b3b3b3b3b3b3b3b7c2c8b39d88725c4c4c4c4c4c4639291704000000000000000008141c2122222c42576c8398ababababababababababababababababababababababababadb7c7d8ebffffedd8c3ad98836c57422c1700000000000000000002121f292e2f2f2f42576c8398adb8b09b866f5a474747474640333f546a8095abb8b39d88725c47475a6f869bb0c3ad98836c57422c17001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a443f3f3f3f3f3f3f3f3f3f3f3f3f4c62778da3b8cdcac2c0c0c0c0ad98836c57422c17001f344a5f748ba0b5cbe0f5ffffefded0c5c0c0c0c0c0c0c0c0c0c0c0c0c0c0c4cdc8b39d88725c473f3f3f3f3f3f3f3f3f3f3c332616050000000000000000000000000000000000000000091b2a363e3f3f3f3f546a8095abc0b39d88725c473737373732281b0b00000000000000001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a442f1a05000000000000000d22374c62778da3b8cde2f8ffedd8c3ad98836c57422c17001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a442f1a05000000000000000d22374c62778da3b8cde2f8ffedd8c3ad98836c57422c17001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a442f1a05000000000000000d22374c62778da3b8cde2f8ffedd8c3ad98836c57422c17001f344a5f748ba0b5cbe0f5ffffefded0c5c0c0c0c0c0c0c0c0c0c0c0c0c0c0c4cdc8b39d88725c473f3f3f3f3a2f21100000000000000000071725303637373742576c8398adc0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c1c9d5e4f6ffffedd8c3ad98836c57422c1700000000000000000000010d15191a1a2c42576c8398a3a3a39b866f5c5c5c5c5c5b51413f546a8095a3a3a39d88725c5c5c5c6f869bb0c3ad98836c57422c17001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a54545454545454545454545454545462778da3b8c9b9aeababababab98836c57422c17001f344a5f748ba0b5cbe0f5fff8e4d2c0b3ababababababababababababababb0bdc8b39d88725c5454545454545454545454504434220f0000000000000000000000000000000000000000142738485254545454546a8095ababab9d88725c47322222221e160b0000000000000000001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a442f1a05000000000000000d22374c62778da3b8cde2f8ffedd8c3ad98836c57422c17001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a442f1a05000000000000000d22374c62778da3b8cde2f8ffedd8c3ad98836c57422c17001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a442f1a05000000000000000d22374c62778da3b8cde2f8ffedd8c3ad98836c57422c17001f344a5f748ba0b5cbe0f5fff8e4d2c0b3ababababababababababababababb0bdc8b39d88725c54545454544c3f2d1b0700000000000000122535434b4c4c4c4c576c8398adc3c6b9b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b5beccddefffffedd8c3ad98836c57422c17000000000000000000000000000000172c42576c838d8d8d8d8d867272727272726f5f4a3f546a808d8d8d8d8d88727272727272869bb0c3ad98836c57422c17001f344a5f748ba0b5cbe0f5fff0dac5b09b866f6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a778da3b8bfab9b959595959595836c57422c17001f344a5f748ba0b5cbe0f5fff2ddc9b5a296959595959595959595959595959eb0c4b39d88726a6a6a6a6a6a6a6a6a6a6a6a62513e2a1500000000000000000000000000000000000000001a2f4356666a6a6a6a6a6a80959595959588725c47321d0d0c0903000000000000000000001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a442f1a05000000000000000d22374c62778da3b8cde2f8ffedd8c3ad98836c57422c17001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a442f1a05000000000000000d22374c62778da3b8cde2f8ffedd8c3ad98836c57422c17001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a442f1a05000000000000000d22374c62778da3b8cde2f8ffedd8c3ad98836c57422c17001f344a5f748ba0b5cbe0f5fff2ddc9b5a296959595959595959595959595959eb0c4b39d88726a6a6a6a6a695d4a36220d000000000000001b2f42536062626262626c8398adc3b8a89e9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9da0aebfd3e7fbffedd8c3ad98836c57422c17000000000000000000000000000000172c41566a7777777777777988888888888877624c3f5368777777777777778888888888888a9cb1c3ad98836c57422c17001f344a5f748ba0b5cbe0f5fff0dac5b09b86808080808080808080808080808080808080808da3b8bba590808080808080806c57422c17001f344a5f748ba0b5cbe0f5fff0dac5b09b868080808080808080808080808095abc0b39d88808080808080808080808080806c57422c1700000000000000000000000000000000000000001d32475c7280808080808080808080808080725c47321d07000000000000000000000000001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a442f1a05000000000000000d22374c62778da3b8cde2f8ffedd8c3ad98836c57422c17001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a442f1a05000000000000000d22374c62778da3b8cde2f8ffedd8c3ad98836c57422c17001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a442f1a05000000000000000d22374c62778da3b8cde2f8ffedd8c3ad98836c57422c17001f344a5f748ba0b5cbe0f5fff0dac5b09b868080808080808080808080808095abc0b39d8880808080808079644f3a250f000000000000001f34495e717777777777778398adc3b19c8a8888888888888888888888888888888888888890a4b9cee3f8ffedd8c3ad98836c57422c1700000000000000000000000000000013273b4d5c62626262626479909d9d9d9d8d77624c384b5a626262626262778d9d9d9d9d9d9ea8b8c3ad98836c57422c17001f344a5f748ba0b5cbe0f5fff2ddc9b5a2969595959595959595959595959595959595959599a9bcbba590796a6a6a6a6a6a62513e2a15001f344a5f748ba0b5cbe0f5fff0dac5b09b866f6a6a6a6a6a6a6a6a6a6a6a8095abc0b7a597959595959595959595959595836c57422c170000000000000000000000000000000003090c0d1d32475c72889595959595806a6a6a6a6a6a6656432f1a05000000000000000000000000001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a442f1a0d0d0d0d0d0d0d0d0d22374c62778da3b8cde2f4f2edd8c3ad98836c57422c17001f344a5f748ba0b5cbe0f2f2f0dac5b09b866f5a442f1a0d0d0d0d0d0d0d0d0d22374c62778da3b8cde2f8ffedd8c3ad98836c57422c17001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a442f1a0d0d0d0d0d0d0d0d0d22374c62778da3b8cde2f4f2edd8c3ad98836c57422c17001f344a5f748ba0b5cbe0f5fff0dac5b09b866f6a6a6a6a6a6a6a6a6a6a6a8095abc0b7a59795959595959079644f3a250f0d0b06000000001f344a5f748b8d8d8d8d8d8e9cafc4b09b86727272727272727272727272727272727272778da3b8cde2f8ffedd8c3ad98836c57422c170000000000000000000000000000000b1e2f3e494c4c4c4c4f647990a5b3b3a38d77624c373d484c4c4c4c4c62778da3b3b3b3b3b3b9c6c3ad98836c57422c17001f344a5f748ba0b5cbe0f5fff8e4d2c0b3ababababababababababababababababababababadb7c7bba59079645454545454504434220f001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a5454545454545454546a8095abc0c2b4acababababababababababab98836c57422c170000000000000000000000000000000b161e22222232475c72889dababab95806a5454545454524838271400000000000000000000000000001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a442f2222222222222222222222374c62778da3b8cde2dfddddd8c3ad98836c57422c17001f344a5f748ba0b5cbdddddde0dac5b09b866f5a442f2222222222222222222222374c62778da3b8cde2f8ffedd8c3ad98836c57422c17001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a442f2222222222222222222222374c62778da3b8cde2dfddddd8c3ad98836c57422c17001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a5454545454545454546a8095abc0c2b4acababababa59079644f3a25222220190f0200001f344a5f748ba0a3a3a3a3a3aab9c5b09b866f5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c62778da3b8cde2f8ffedd8c3ad98836c57422c170000000000000000000000000000000111202d353737373a4f647990a5bbb8a38d77624c3f3f3f3f3b37374c62778da3b8c0c0c0c0c0c0c0ad98836c57422c17001f344a5f748ba0b5cbe0f5ffffefded0c5c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c1c9d0bba59079644f3f3f3f3f3c33261605001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a443f3f3f3f3f3f3f546a8095abc0c8c7c0c0c0c0c0c0c0c0c0c0c0ad98836c57422c1700000000000000000000000000000b1b283237373737475c72889db3c0ab95806a543f3f3f3f3e362a1b0900000000000000000000000000001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a44373737373737373737373737374c62778da3b8cdd1cac8c8c8c3ad98836c57422c17001f344a5f748ba0b5c8c8c8c8ccd5c5b09b866f5a44373737373737373737373737374c62778da3b8cde2f8ffedd8c3ad98836c57422c17001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a44373737373737373737373737374c62778da3b8cdd1cac8c8c8c3ad98836c57422c17001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a443f3f3f3f3f3f3f546a8095abc0c8c7c0c0c0c0bba59079644f3a373737352d201101001f344a5f748ba0b5b8b8b8b8bdc8c5b09b866f5a47474747474747474747474747474c62778da3b8cde2f8ffedd8c3ad98836c57422c1700000000000000000000000000000000020f19202222253a4f647990a5ababa38d776254545454544f42374c62778da3ababababababababab98836c57422c17001f344a5f748ba0b5cbe0f5fffbe8d6c6b9b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b5beccbba59079644f4c4c4c4c493e2f1e0b001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a442f2a2a2a2a2a3f546a8095abb3b3b3b3b5beccd5d5d5d5d5d5c3ad98836c57422c170000000000000000000000000004172939464c4c4c4c4c5c72889db3b3ab95806a543f2a2a2a2923190c0000000000000000000000000000001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c62778da3b8cdbfb5b3b3b3b3ad98836c57422c17001f344a5f748ba0b3b3b3b3b3b8c4c5b09b866f5a4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c62778da3b8cde2f8ffedd8c3ad98836c57422c17001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c62778da3b8cdbfb5b3b3b3b3ad98836c57422c17001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a442f2a2a2a2a2a3f546a8095abb3b3b3b3b5beccbba59079644f4c4c4c4c493e2f1e0b001f344a5f748ba0b5cbcdcdcdd1dac5b09b866f5a44323232323232323232323232374c62778da3b8cde2f8ffedd8c3ad98836c57422c17000000000000000000000000000000000000060b0d0f253a4f647990959595958d776a6a6a6a6a6a614f3b4c62778d9595959595959595959595836c57422c17001f344a5f748ba0b5cbe0f5fff4dfcbb8a89e9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9da0aebfbba590796462626262625c4d3b2713001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a442f1a1515152a3f546a80959d9d9d9d9da0aebfd3e7eaeaead8c3ad98836c57422c17000000000000000000000000000b2034475761626262626272889d9d9d9d95806a543f2a1515140f07000000000000000000000000000000001f344a5f748ba0b5cbe0f5fff0dac5b09b866f6262626262626262626262626262626262778da3b8c2b0a29d9d9d9d9d98836c57422c17001f344a5f748b9d9d9d9d9d9ea6b6c5b09b866f6262626262626262626262626262626262778da3b8cde2f8ffedd8c3ad98836c57422c17001f344a5f748ba0b5cbe0f5fff0dac5b09b866f6262626262626262626262626262626262778da3b8c2b0a29d9d9d9d9d98836c57422c17001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a442f1a1515152a3f546a80959d9d9d9d9da0aebfbba590796462626262625c4d3b2713001f344a5f748ba0b5cbe0e2e3e5dac5b09b866f5a442f1d1d1d1d1d1d1d1d1d1d22374c62778da3b8cde2f8ffedd8c3ad98836c57422c170000000000000000000000000000000000000000000f253a4f6479808080808080808080808080806a543f4c6277808080808080808080808080806c57422c17001f344a5f748ba0b5cbe0f5fff0dbc6b19c8a8888888888888888888888888888888888888890a4b9bba590797777777777776a56412c17001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a442f1a0500152a3f546a8088888888888890a4b9cee3f8ffedd8c3ad98836c57422c17000000000000000000000000000f24394e6375777777777777888888888888806a543f2a1500000000000000000000000000000000000000001f344a5f748ba0b5cbe0f5fff0dac5b09b86777777777777777777777777777777777777778da3b8bba692888888888888836c57422c17001f344a5f74888888888888899aaec3b09b86777777777777777777777777777777777777778da3b8cde2f8ffedd8c3ad98836c57422c17001f344a5f748ba0b5cbe0f5fff0dac5b09b86777777777777777777777777777777777777778da3b8bba692888888888888836c57422c17001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a442f1a0500152a3f546a8088888888888890a4b9bba590797777777777776a56412c17001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a442f1a05000000000000000d22374c62778da3b8cde2f8ffedd8c3ad98836c57422c17000000000000000000000001080c0d0d0d0d0d0d0d0d22364a5d696a6a6a6a6a72889595959595806a543f485a686a6a6a6a6a6a6a6a6a6a6a6a6a62513e2a15001f344a5f748ba0b5cbe0f5fff0dac5b09b86727272727272727272727272727272727272778da3b8bca8958d8d8d8d8d8d836c57422c17001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a442f1a050014293e5266727272727272778da3b8cde2f8ffedd8c3ad98836c57422c17000000000000000000000003050f253a4f64798d8d8d8d8d8d7772727272727266523e291400000000000000000000000000000000000000001f344a5f748ba0b5cbe0f5fff1dcc7b29e8f8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d93a5babba590797272727272726855402b16001e33485c6e7272727272728398adc3b29e8f8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d93a5bacee3f9ffedd8c3ad98836c57422c17001f344a5f748ba0b5cbe0f5fff1dcc7b29e8f8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d93a5babba590797272727272726855402b16001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a442f1a050014293e5266727272727272778da3b8bca8958d8d8d8d8d8d836c57422c17001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a442f1a05000000000000000d22374c62778da3b8cde2f8ffedd8c3ad98836c57422c170000000000000000000008141c212222222222222222222d3f4c54545454545c72889dababab95806a543f3d4b5354545454545454545454545454504434220f001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c62778da3b8c4b3a6a3a3a3a3a398836c57422c17001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a442f1a05000f233648565c5c5c5c5c62778da3b8cde2f8ffedd8c3ad98836c57422c170000000000000000000912181a1a253a4f647990a3a3a3a38d77625c5c5c5c5c564836230f00000000000000000000000000000000000000001f344a5f748ba0b5cbe0f5fff5e1cebbaca3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a5b1c2bba59079645c5c5c5c5c574a38251100192d3f505b5c5c5c5c5c6c8398adc3bbaca3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a5b1c2d5e9fdffedd8c3ad98836c57422c17001f344a5f748ba0b5cbe0f5fff5e1cebbaca3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a5b1c2bba59079645c5c5c5c5c574a382511001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a442f1a05000f233648565c5c5c5c5c62778da3b8c4b3a6a3a3a3a3a398836c57422c17001f344a5f748ba0b5cbe0ededf0dac5b09b866f5a442f1a12121212121212121222374c62778da3b8cde2f8ffedd8c3ad98836c57422c17000000000000000000071725303637373737373737373737373a3f3f3f3f475c72889db3c0ab95806a543f37383f3f3f3f3f3f3f3f3f3f3f3f3f3f3c33261605001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a47474747474747474747474747474c62778da3b8cdc3bab8b8b8b8ad98836c57422c17001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a442f1a050007192a3843474747474c62778da3b8cde2f8ffedd8c3ad98836c57422c1700000000000000000c1a262d2f2f2f3a4f647990a5b8b8a38d77624c4747474743382a190700000000000000000000000000000000000000001f344a5f748ba0b5cbe0f5fffdebd9cabeb8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8bac2cfbba59079644f47474747443a2c1b09001022323e4647474747576c8398adc3cabeb8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8bac2cfe0f1ffffedd8c3ad98836c57422c17001f344a5f748ba0b5cbe0f5fffdebd9cabeb8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8bac2cfbba59079644f47474747443a2c1b09001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a442f1a050007192a3843474747474c62778da3b8cdc3bab8b8b8b8ad98836c57422c17001f344a5f748ba0b5cbd8d8d8dbdac5b09b866f5a442f2727272727272727272727374c62778da3b8cde2f8ffedd8c3ad98836c57422c17000000000000000000122535434b4c4c4c4c4c4c4c4c4c4c4c4c4c4a4032475c72889db3b3ab95806a544c4c4c4c4a41332a2a2a2a2a2a2a2a2a2a2821160800001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a44323232323232323232323232374c62778da3b8cdd6cfcdcdcdc3ad98836c57422c17001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a442f1a0500000c1b272f323232374c62778da3b8cde2f8ffedd8c3ad98836c57422c1700000000000000081a2a3841444444444f647990a5bbb8a38d77624c373232322f271b0c0000000000000000000000000000000000000000001f344a5f748ba0b5cbe0f5fffeecdbccc1bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbba59079644f3a3232322f281c0e00000413212b3132323242576c8398adbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbcc4d1e1f3ffffedd8c3ad98836c57422c17001f344a5f748ba0b5cbe0f5fffeecdbccc1bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbba59079644f3a3232322f281c0e00001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a442f1a0500000c1b272f323232374c62778da3b8bbbbbbbbbbbbbbad98836c57422c17001f344a5f748ba0b5c3c3c3c3c7d1c5b09b866f5a443c3c3c3c3c3c3c3c3c3c3c3c3c4c62778da3b8cde2f8ffedd8c3ad98836c57422c170000000000000000001b2f425360626262626262626262626262625d4f3d475c72889d9d9d9d95806a62626262625f51402c181515151515151515130d040000001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a442f1d1d1d1d1d1d1d1d1d1d22374c62778da3b8cde2e4e2e2d8c3ad98836c57422c17001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a442f1a0500000009141a1d1d22374c62778da3b8cde2f8ffedd8c3ad98836c57422c170000000000000011243748555a5a5a5a5a647990a5a5a5a38d77624c37221d1d1a1409000000000000000000000000000000000000000000001f344a5f748ba0b5cbe0f5fff6e2cfbdaea6a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a59079644f3a251d1d1b150b00000000030f171c1d1d2c42576c8398a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a8b3c3d6e9feffedd8c3ad98836c57422c17001f344a5f748ba0b5cbe0f5fff6e2cfbdaea6a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a59079644f3a251d1d1b150b0000001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a442f1a0500000009141a1d1d22374c62778da3a5a5a5a5a5a5a5a5a598836c57422c17001f344a5f748ba0adadadadadb3c0c5b09b866f5a52525252525252525252525252525262778da3b8cde2f8ffedd8c3ad98836c57422c170000000000000000001f34495e71777777777777777777777777776d5944475c72888888888888807777777777776f5b46311c07000000000000000000000000001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a442f1a05000000000000000d22374c62778da3b8cde2f8ffedd8c3ad98836c57422c17001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a442f1a05000000000000000d22374c62778da3b8cde2f8ffedd8c3ad98836c57422c1700000000000000162b4054666f6f6f6f6f6f7990909090908d77624c37220d00000000000000000000000000000000000000000000000000001f344a5f748ba0b5cbe0f5fff1dcc7b39f919090909090909090909090909090909090909090909090909079644f3a250f00000000000000000000000000172c42576c839090909090909090909090909090909090909090909090909095a6bacfe4f9ffedd8c3ad98836c57422c17001f344a5f748ba0b5cbe0f5fff1dcc7b39f919090909090909090909090909090909090909090909090909079644f3a250f000000000000001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a442f1a05000000000000000d22374c62778d9090909090909090909090836c57422c17001f344a5f748b989898989898a2b3c5b09b866f6767676767676767676767676767676767778da3b8cde2f8ffedd8c3ad98836c57422c170000000000000000001f344a5f748b8d8d8d8d8d8d8d8d8d8d8d866f5a44455a6c727272727272808d8d8d8d8d88725c47321d07050200000000000000000000001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a442f1a05000000000000000d22374c62778da3b8cde2f8ffedd8c3ad98836c57422c17001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a442f1a05000000000000000d22374c62778da3b8cde2f8ffedd8c3ad98836c57422c1700000000000000172c42576c8386868686868679797979797975614c37220c00000000000000000000000000000000000000000000000000001f344a5f748ba0b5cbe0f5fff0dac5b09b867979797979797979797979797979797979797979797979797977644f3a240f00000000000000000000000000172c41576b79797979797979797979797979797979797979797979797979798da3b8cde2f8ffedd8c3ad98836c57422c17001f344a5f748ba0b5cbe0f5fff0dac5b09b867979797979797979797979797979797979797979797979797977644f3a240f000000000000001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a442f1a05000000000000000c22374c6175797979797979797979797979796b57412c17001f344a5f748383838383838498adc3b09b867c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c8da3b8cde2f8ffedd8c3ad98836c57422c170000000000000000001f344a5f748ba0a3a3a3a3a3a3a3a3a39b866f5a443d4e5a5c5c5c5c5c6a8095a3a3a39d88725c47321d1a1a160f040000000000000000001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a442f1a12121212121212121222374c62778da3b8cde2eeededd8c3ad98836c57422c17001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a442f1a12121212121212121222374c62778da3b8cde2eeededd8c3ad98836c57422c17000000050d1112172c42576c83989b9b9b9b866f6464646464635746321e0900000000000000000000000000000000000000000000000000001f344a5f748ba0b5cbe0f5fff0dac5b09b866f64646464646464646464646464646464646464646464646464594835210c0000000000000000000000000014283c4f5e64646464646464646464646464646464646464646464646464778da3b8cde2f8ffedd8c3ad98836c57422c17001f344a5f748ba0b5cbe0f5fff0dac5b09b866f64646464646464646464646464646464646464646464646464594835210c000000000000001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a442f1a0500000000000000091e32465763646464646464646464646464645e4f3c2814001d32465a696c6c6c6c6c6c8398adc3b4a1949393939393939393939393939393939393939397a8bbd0e4f5f5edd8c3ad98836c57422c170000000000000000001f344a5f748ba0b5b8b8b8b8b8b8b8b09b866f5a44303d4547474747546a8095abb8b39d88725c47322f2f2f2b22150600000000000000001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a442f2727272727272727272727374c62778da3b8cde0d9d8d8d8c3ad98836c57422c17001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a442f2727272727272727272727374c62778da3b8cde0d9d8d8d8c3ad98836c57422c1700000c18212627272c42576c8398adb0b09b866f5a4f4f4f4f4e473928160300000000000000000000000000000000000000000000000000001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f483b2b1805000000000000000000000000000d1f31404b4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f62778da3b8cde2f8ffedd8c3ad98836c57422c17001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f483b2b1805000000000000001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a442f1a050000000000000003162839474e4f4f4f4f4f4f4f4f4f4f4f4f4f4b40311f0d00172a3c4c5557575757576c8398adc3bfb0a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8aab5c5d7e0e0e0e0d8c3ad98836c57422c170000000000000000001f344a5f748ba0b5cbc7bebbbbbbbbb09b866f5a44444444443d323f546a8095abbbb39d88725c47444444443e33241301000000000000001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a443c3c3c3c3c3c3c3c3c3c3c3c3c4c62778da3b8cdcdc5c3c3c3c3ad98836c57422c17001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a443c3c3c3c3c3c3c3c3c3c3c3c3c4c62778da3b8cdcdc5c3c3c3c3ad98836c57422c17000a1b2a353b3c3c3c42576c8398adc3b09b866f5a443a3a3a3934291b0b0000000000000000000000000000000000000000000000000000001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a443a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a352b1d0d00000000000000000000000000000213222f373a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a4c62778da3b8cde2f8ffedd8c3ad98836c57422c17001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a443a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a352b1d0d00000000000000001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a442f1a0500000000000000000b1b2934393a3a3a3a3a3a3a3a3a3a3a3a3a372f221302000d1e2e3a4142424242576c8398adc3cbc3bebdbdbdbdbdbdbdbdbdbdbdbdbdbdbdbdbdbdbdbfc7cbcbcbcbcbcbcbc3ad98836c57422c170000000000000000001f344a5f748ba0b5c8b7aaa5a5a5a5a59b866f5a5a5a5a5a594f403f546a8095a5a5a59d88725c5a5a5a5a595142301d09000000000000001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a52525252525252525252525252525262778da3b8cabbb0adadadadad98836c57422c17001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a52525252525252525252525252525262778da3b8cabbb0adadadadad98836c57422c1700152839475052525252576c8398adadad9b866f5a442f25252420170b000000000000000000000000000000000000000000000000000000001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a442f2525252525252525252525252525252525252525252421180d0000000000000000000000000000000004121c2325252525252525252525252525252525252525252525374c62778da3b8cde2f8ffedd8c3ad98836c57422c17001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a442f2525252525252525252525252525252525252525252421180d0000000000000000001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a442f1a050000000000000000000b17202425252525252525252525252525231c1204000000101d262c2c2c2c42576c8398adb5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5ad98836c57422c170000000000000000001f344a5f748ba0b5bfab99909090909090866f6f6f6f6f6f6d5d4a3f546a80909090909088726f6f6f6f6f6e604c38230e000000000000001f344a5f748ba0b5cbe0f5fff0dac5b09b866f6767676767676767676767676767676767778da3b8c0ad9d989898989898836c57422c17001f344a5f748ba0b5cbe0f5fff0dac5b09b866f6767676767676767676767676767676767778da3b8c0ad9d989898989898836c57422c17001c3144576467676767676c839898989898866f5a442f1a0f0f0b0400000000000000000000000000000000000000000000000000000000001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a442f1a0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0c0500000000000000000000000000000000000000080e0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f22374c62778da3b8cde2f8ffedd8c3ad98836c57422c17001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a442f1a0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0c05000000000000000000001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a442f1a0500000000000000000000040b0f0f0f0f0f0f0f0f0f0f0f0f0f0f0e080000000000000a121717172c42576c8398a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a098836c57422c170000000000000000001f344a5f748ba0b5bda8937c79797979797986868686868677624c3f54697979797979797986868686868679644f3a250f000000000000001f344a5f748ba0b5cbe0f5fff0dac5b09b867c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c8da3b8bba590838383838383836c57422c17001f344a5f748ba0b5cbe0f5fff0dac5b09b867c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c8da3b8bba590838383838383836c57422c17001f344a5f747c7c7c7c7c7c838383838383836f5a442f1a0500000000000000000000000000000000000000000000000000000000000000001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a442f1a050000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000d22374c62778da3b8cde2f8ffedd8c3ad98836c57422c17001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a442f1a0500000000000000000000000000000000000000000000000000000000000000001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a442f1a050000000000000000000000000000000000000000000000000000000000000000000000000000172c42576c838b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b836c57422c170000000000000000001f344a5f748ba0b5bda8937c676464646479909b9b9b9b8d77624c3a4c5d646464646464778d9b9b9b9b9079644f3a251212100b020000001f344a5f748ba0b5cbe0f5f5f1dcc8b4a1949393939393939393939393939393939393939397a8bbbba590796c6c6c6c6c6c64533f2a15001f344a5f748ba0b5cbe0f5f5f1dcc8b4a1949393939393939393939393939393939393939397a8bbbba590796c6c6c6c6c6c64533f2a15001f344a5f748b93939393937c6c6c6c6c6c6c6655412d180300000000000000000000000000000000000000000000000000000000000000001f344a5f748ba0b5cbe0f5f5f0dac5b09b866f5a442f1a050000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000d22374c62778da3b8cde2f5f5edd8c3ad98836c57422c17001f344a5f748ba0b5cbe0f5f5f0dac5b09b866f5a442f1a0500000000000000000000000000000000000000000000000000000000000000001f344a5f748ba0b5cbe0f5f5f0dac5b09b866f5a442f1a050000000000000000000000000000000000000000000000000000000000000000000000000000172c4155697474747474747474747474747474747474747474747474747474747474747474747474747474746955412c170000000000000000001f344a5f748ba0b5bda8937c67524f4f647990a5b0b0a38d77624c373f4a4f4f4f4f4f62778da3b0b0a59079644f3a272727251e140600001f344a5f748ba0b5cbe0e0e0e0e0d0bfb0a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8aab5c5bba590796457575757575346362310001f344a5f748ba0b5cbe0e0e0e0e0d0bfb0a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8aab5c5bba590796457575757575346362310001f344a5f748ba0a8a8a8937c67575757575754483826120000000000000000000000000000000000000000000000000000000000000000001f344a5f748ba0b5cbe0e0e0e0dac5b09b866f5a442f1a050000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000d22374c62778da3b8cde0e0e0e0d8c3ad98836c57422c17001f344a5f748ba0b5cbe0e0e0e0dac5b09b866f5a442f1a0500000000000000000000000000000000000000000000000000000000000000001f344a5f748ba0b5cbe0e0e0e0dac5b09b866f5a442f1a05000000000000000000000000000000000000000000000000000000000000000000000000000012263a4c5a5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5a4c3a26120000000000000000001f344a5f748ba0b5bda8937c67523c4f647990a5bbb8a38d77624c372d363a3a3a3a4c62778da3b8bba59079644f3c3c3c3c3a31241504001f344a5f748ba0b5cbcbcbcbcbcbcbcbc3bebdbdbdbdbdbdbdbdbdbdbdbdbdbdbdbdbdbdbdbfc7cbbba59079644f424242423f36281806001f344a5f748ba0b5cbcbcbcbcbcbcbcbc3bebdbdbdbdbdbdbdbdbdbdbdbdbdbdbdbdbdbdbdbfc7cbbba59079644f424242423f36281806001f344a5f748ba0b5bda8937c67524242424240372a1a090000000000000000000000000000000000000000000000000000000000000000001f344a5f748ba0b5cbcbcbcbcbcbc5b09b866f5a442f1a050000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000d22374c62778da3b8cbcbcbcbcbcbc3ad98836c57422c17001f344a5f748ba0b5cbcbcbcbcbcbc5b09b866f5a442f1a0500000000000000000000000000000000000000000000000000000000000000001f344a5f748ba0b5cbcbcbcbcbcbc5b09b866f5a442f1a0500000000000000000000000000000000000000000000000000000000000000000000000000000a1d2e3c464a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a463c2e1d0a0000000000000000001f344a5f748ba0adada8937c67525252647990a5bbb8a38d77624c372222252525374c62778da3adada590796452525252524e4233210e001f344a5f748ba0b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5a59079644f3a2c2c2c2a23180a00001f344a5f748ba0b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5a59079644f3a2c2c2c2a23180a00001f344a5f748ba0b5b5a8937c67523c2c2c2c2b241a0c000000000000000000000000000000000000000000000000000000000000000000001f344a5f748ba0b5b5b5b5b5b5b5b5b09b866f5a442f1a050000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000d22374c62778da3b5b5b5b5b5b5b5b5ad98836c57422c17001f344a5f748ba0b5b5b5b5b5b5b5b5b09b866f5a442f1a0500000000000000000000000000000000000000000000000000000000000000001f344a5f748ba0b5b5b5b5b5b5b5b5b09b866f5a442f1a05000000000000000000000000000000000000000000000000000000000000000000000000000000101e2a32343434343434343434343434343434343434343434343434343434343434343434343434343434322a1e10000000000000000000001f344a5f748b98989898937c67676767677990a5bbb8a38d77624c37220d0f0f22374c62778d98989898907967676767676760503d2914001f344a5f748ba0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a09079644f3a2517171510060000001f344a5f748ba0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a09079644f3a2517171510060000001f344a5f748ba0a0a0a0937c67523c27171716110800000000000000000000000000000000000000000000000000000000000000000000001f344a5f748ba0a0a0a0a0a0a0a0a0a09b866f5a442f1a050000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000d22374c62778da0a0a0a0a0a0a0a0a0a098836c57422c17001f344a5f748ba0a0a0a0a0a0a0a0a0a09b866f5a442f1a0500000000000000000000000000000000000000000000000000000000000000001f344a5f748ba0a0a0a0a0a0a0a0a0a09b866f5a442f1a05000000000000000000000000000000000000000000000000000000000000000000000000000000000d171d1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1d170d00000000000000000000001f344a5f748383838383837c7c7c7c7c7c7c90a5bbb8a38d77624c37220d000d22374c62778383838383837c7c7c7c7c7c7c6c57422c17001f344a5f748b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b79644f3a250f000000000000001f344a5f748b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b79644f3a250f000000000000001f344a5f748b8b8b8b8b8b7c67523c27120000000000000000000000000000000000000000000000000000000000000000000000000000001f344a5f748b8b8b8b8b8b8b8b8b8b8b8b866f5a442f1a050000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000d22374c62778b8b8b8b8b8b8b8b8b8b8b8b836c57422c17001f344a5f748b8b8b8b8b8b8b8b8b8b8b8b866f5a442f1a0500000000000000000000000000000000000000000000000000000000000000001f344a5f748b8b8b8b8b8b8b8b8b8b8b8b866f5a442f1a050000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001d32465a696c6c6c6c6c6c8393939393939399aabeb8a38d77624c37220d000b2035495c6a6c6c6c6c6c6f869393939393836c57422c17001f34495d70747474747474747474747474747474747474747474747474747474747474747474747474747473624e39240f000000000000001f34495d70747474747474747474747474747474747474747474747474747474747474747474747474747473624e39240f000000000000001f34495d707474747474747464503b26110000000000000000000000000000000000000000000000000000000000000000000000000000001f34495d70747474747474747474747474746b58432e19040000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000c21364b6071747474747474747474747474746955412c17001f34495d70747474747474747474747474746b58432e190400000000000000000000000000000000000000000000000000000000000000001f34495d70747474747474747474747474746b58432e190400000000000000000000000000000000000000000000000000000000000000000000030b0f0f0f0f0f0f0f0f0f0f0f0f0f0f0e090100000000000000000000000000000000000000000000000000000000000000000000000000000000000000172a3c4c5557575757576c8398a8a8a8a8a8abb7c7b8a38d77624c37220d0006192d3e4d56575757575a6f869ba8a8a898836c57422c17001a2e41515d5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5e5545331f0b000000000000001a2e41515d5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5e5545331f0b000000000000001a2e41515d5f5f5f5f5f5f5f574735210d0000000000000000000000000000000000000000000000000000000000000000000000000000001a2e41515d5f5f5f5f5f5f5f5f5f5f5f5f5f5b4e3c291500000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000081c3043535e5f5f5f5f5f5f5f5f5f5f5f5f5f5a4c3a2612001a2e41515d5f5f5f5f5f5f5f5f5f5f5f5f5f5b4e3c29150000000000000000000000000000000000000000000000000000000000000000001a2e41515d5f5f5f5f5f5f5f5f5f5f5f5f5f5b4e3c2915000000000000000000000000000000000000000000000000000000000000000000000a161f2425252525252525252525252525231d13060000000000000000000000000000000000000000000000000000000000000000000000000000000000000d1e2e3a4142424242576c8398adbdbdbdbdbfc8cbb8a38d77624c37220d00000f202f3b41424242445a6f869bb0bdad98836c57422c170011233341494a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4943372716030000000000000011233341494a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4943372716030000000000000011233341494a4a4a4a4a4a4a44392a180500000000000000000000000000000000000000000000000000000000000000000000000000000011233341494a4a4a4a4a4a4a4a4a4a4a4a4a473e301f0d000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000114253542494a4a4a4a4a4a4a4a4a4a4a4a4a463c2e1d0a0011233341494a4a4a4a4a4a4a4a4a4a4a4a4a473e301f0d00000000000000000000000000000000000000000000000000000000000000000011233341494a4a4a4a4a4a4a4a4a4a4a4a4a473e301f0d00000000000000000000000000000000000000000000000000000000000000000009192733393a3a3a3a3a3a3a3a3a3a3a3a3a3830241504000000000000000000000000000000000000000000000000000000000000000000000000000000000000101d262c2c2c2c42576c8398adb5b5b5b5b5b5b5b5a38d77624c37220d000002111e272c2c2c2f445a6f869bb0b5ad98836c57422c17000515232e343434343434343434343434343434343434343434343434343434343434343434343434343434343026190a00000000000000000515232e343434343434343434343434343434343434343434343434343434343434343434343434343434343026190a00000000000000000515232e343434343434343431281b0c000000000000000000000000000000000000000000000000000000000000000000000000000000000515232e3434343434343434343434343434332b20120100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000817252f3434343434343434343434343434322a1e1000000515232e3434343434343434343434343434332b2012010000000000000000000000000000000000000000000000000000000000000000000515232e3434343434343434343434343434332b201201000000000000000000000000000000000000000000000000000000000000000000142637454e4f4f4f4f4f4f4f4f4f4f4f4f4f4c4233220f000000000000000000000000000000000000000000000000000000000000000000000000000000000000000a121717172c42576c8398a0a0a0a0a0a0a0a0a0a08d77624c37220d000000010b1317171a2f445a6f869ba0a0a098836c57422c17000005111a1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1b14090000000000000000000005111a1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1b14090000000000000000000005111a1f1f1f1f1f1f1f1f1c150a00000000000000000000000000000000000000000000000000000000000000000000000000000000000005111a1f1f1f1f1f1f1f1f1f1f1f1f1f1f1e180f020000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000007121b1f1f1f1f1f1f1f1f1f1f1f1f1f1f1d170d0000000005111a1f1f1f1f1f1f1f1f1f1f1f1f1f1f1e180f02000000000000000000000000000000000000000000000000000000000000000000000005111a1f1f1f1f1f1f1f1f1f1f1f1f1f1f1e180f02000000000000000000000000000000000000000000000000000000000000000000001b304355626464646464646464646464646460513e2b160200000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000172c42576c838b8b8b8b8b8b8b8b8b8b8b8b77624c37220d00000000000000001a2f445a6f868b8b8b8b8b836c57422c170000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001f34495e73797979797979797979797979796e59442f1a0500000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000172c4155697474747474747474747474747471604b36210c0000000000000000192e43586b747474747474746955412c17000000000000000000000000000000020d14171717171717171717171717171717171717171717171717171717140d020000000000000000000000000000000000061015171717171717171717171717171717171717171717171717171717171717171717140d0200000000000000000000000000000000000000000000000000000000000000000000000000000000000000040b0f0f0f0f0f0f0f0f0f0f0f0f0f0f0e0800000000000000000000000000080e0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0c050000000000000000000000000000000000000b151b1d1d1d1d1d1d1d1d1d1d1d1d1d1c181009141a1d1d1d1d1d1d1d1d1d1d1d1d1d1c19110600000000000000000000000000000000000b151b1d1d1d1d1d1d1d1d1d1d1d1d1d1d1d1d1d1d1d1d1d1d1d1d1d1d1d1d1d1d1d1d1d1d1d1d1d1d1d1b150b00000000000000000000000b151b1d1d1d1d1d1d1d1d1d1d1d1d1d1d1d1d1d1d1d1d1d1d1d1d1d1d1d1d1d1d1d1d1d1d1d1d1d1d1d1b150b0000001f344a5f748b9090909090909090909090866f5a442f1a050000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000012263a4c5a5f5f5f5f5f5f5f5f5f5f5f5f5f5e5343301c08000000000000000015293c4e5b5f5f5f5f5f5f5f5a4c3a2612000000000000000000000000000004131f282c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c281f13040000000000000000000000000000000a18232a2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c281f130400000000000000000000000000000000000000000000000000000000000000000000000000000000000b17202425252525252525252525252525231c120400000000000000000004121c2325252525252525252525252525252525252525252525252525252525252525252421180d000000000000000000000000000000000e1c282f32323232323232323232323232312c221b272f32323232323232323232323232322d2417080000000000000000000000000000000e1c282f3232323232323232323232323232323232323232323232323232323232323232323232323232322f281c0e0000000000000000000e1c282f3232323232323232323232323232323232323232323232323232323232323232323232323232322f281c0e00001f344a5f748ba0a5a5a5a5a5a5a5a5a59b866f5a442f1a05000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000a1d2e3c464a4a4a4a4a4a4a4a4a4a4a4a4a49423525140100000000000000000d1f303e474a4a4a4a4a4a4a463c2e1d0a00000000000000000000000000001222313c4142424242424242424242424242424242424242424242424242413c3122120000000000000000000000000000061828363f4242424242424242424242424242424242424242424242424242424242424242413c312212000000000000000000000000000000000000000000000000000000000000000000000000000000000b1b2934393a3a3a3a3a3a3a3a3a3a3a3a3a372f221302000000000000000213222f373a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a352b1d0d0000000000000000000000000000091b2c3a44474747474747474747474747474640332a38434747474747474747474747474747413526140200000000000000000000000000091b2c3a44474747474747474747474747474747474747474747474747474747474747474747474747474747443a2c1b0900000000000000091b2c3a44474747474747474747474747474747474747474747474747474747474747474747474747474747443a2c1b09001f344a5f748ba0b5bbbbbbbbbbbbbbb09b866f5a442f1a050000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000101e2a3234343434343434343434343434342f2517080000000000000000000112202b3334343434343434322a1e100000000000000000000000000000081c2f404f5757575757575757575757575757575757575757575757575757574f402f1c080000000000000000000000000010233646535757575757575757575757575757575757575757575757575757575757575757574f402f1c08000000000000000000000000000000000000000000000000000000000000000000000000000003162839474e4f4f4f4f4f4f4f4f4f4f4f4f4f4b40311f0d000000000000000d1f31404b4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f483b2b1805000000000000000000000000001125384a575c5c5c5c5c5c5c5c5c5c5c5c5c5b51413648565c5c5c5c5c5c5c5c5c5c5c5c5c5c5344311e0a000000000000000000000000001125384a575c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c574a382511000000000000001125384a575c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c574a382511001f344a5f748ba0b5cbd0d0d0d0d0c5b09b866f5a442f1a050000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000d171d1f1f1f1f1f1f1f1f1f1f1f1f1f1f1b12070000000000000000000000020f181e1f1f1f1f1f1f1f1d170d0000000000000000000000000000000e23374b5e6b6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6b5e4b37230e00000000000000000000000000152a3f53646c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6b5e4b37230e0000000000000000000000000000000000000000000000000000000000000000000000000000091e32465763646464646464646464646464645e4f3c28140000000000000014283c4f5e646464646464646464646464646464646464646464646464646464646464646464594835210c00000000000000000000000000162b405568727272727272727272727272726f5f4a3e52667272727272727272727272727270614d38230e00000000000000000000000000162b4055687272727272727272727272727272727272727272727272727272727272727272727272727272726855402b1600000000000000162b4055687272727272727272727272727272727272727272727272727272727272727272727272727272726855402b16001f344a5f748ba0b5cbe0e5e5e5dac5b09b866f5a442f1a050000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000f253a4f64798383838383838383838383838383838383838383838383838379644f3a250f00000000000000000000000000172c42576c838383838383838383838383838383838383838383838383838383838383838379644f3a250f00000000000000000000000000000000000000000000000000000000000000000000000000000c22374c6175797979797979797979797979796b57412c1700000000000000172c41576b797979797979797979797979797979797979797979797979797979797979797977644f3a240f00000000000000000000000000172c42576c8388888888888888888888888877624c3f546a8088888888888888888888888879644f3a250f00000000000000000000000000172c42576c8388888888888888888888888888888888888888888888888888888888888888888888888888836c57422c1700000000000000172c42576c8388888888888888888888888888888888888888888888888888888888888888888888888888836c57422c17001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a442f1a05000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000061015171717171717171717171717171717171717171717171717171717171717171717171717171717151006000000000000000000000000080e0f0f253a4f64799098989898989898989898989898989898989898989898989079644f3a250f0f0e08000000000000030b0f0f172c42576c839898989898989898989898989898989898989898989898989898989898989079644f3a250f0f0e0800000000000000000000000000000000000000000000000000000000000000000000000d22374c62778d9090909090909090909090836c57422c1700000000000000172c42576c839090909090909090909090909090909090909090909090909090909090909079644f3a250f07060100000000000000000000172c42576c83989d9d9d9d9d9d9d9d9d9d8d77624c3f546a80959d9d9d9d9d9d9d9d9d9d9079644f3a250f00000000000000000008101415172c42576c83989d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d98836c57422c1700000008101415172c42576c83989d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d98836c57422c17001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a442f1a0500000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000a18232a2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2a23180a00000000000000000004121c232525253a4f647990a5adadadadadadadadadadadadadadadadadadadadada59079644f3a252525231c12040000000a161f2425252c42576c8398adadadadadadadadadadadadadadadadadadadadadadadadadadadada59079644f3a252525231c12040000000000000000000000000000000000000000000000000000000000000000000d22374c62778da3a5a5a5a5a5a5a5a5a598836c57422c1700000000000000172c42576c8398a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a59079644f3a251d1d1b150b000000000000000000172c42576c8398adb3b3b3b3b3b3b3b3a38d77624c3f546a8095abb3b3b3b3b3b3b3b3a59079644f3a250f00000000000000000e1a24292a2a2c42576c8398adb3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3ad98836c57422c1700000e1a24292a2a2c42576c8398adb3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3ad98836c57422c17001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a442f1a151515151515151515151515151515151515151514110a000000000000000000000000000000000000000000000000061828363f4242424242424242424242424242424242424242424242424242424242424242424242424242423f36281806000000000000000213222f373a3a3a3a4f647990a5bbc3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3bba59079644f3a3a3a3a372f2213020009192733393a3a3a42576c8398adc3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3bba59079644f3a3a3a3a372f22130200000000000000000000000000000000000000000000000000000000000000000d22374c62778da3b8bbbbbbbbbbbbbbad98836c57422c1700000000000000172c42576c8398adbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbba59079644f3a3232322f281c0e0000000000000000172c42576c8398adc0c0c0c0c2c8c8b8a38d77624c3f546a8095abc0c8c7c0c0c0c0bba59079644f3a250f000000000000000c1d2c373e3f3f3f42576c8398adc3c8c5c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c1c8c8c8c8c8c8c8c8c3ad98836c57422c17000c1d2c373e3f3f3f42576c8398adc3c8c5c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0ad98836c57422c17001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a442f2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a261d11030000000000000000000000000000000000000000000010233646535757575757575757575757575757575757575757575757575757575757575757575757575757575346362310000000000000000d1f31404b4f4f4f4f4f647990a5bbcabbb2b0b0b0b0b0b0b0b0b0b0b0b0b0b2bbcabba59079644f4f4f4f4f4b40311f0d00142637454e4f4f4f4f576c8398adc3c4b7b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b2bbcabba59079644f4f4f4f4f4b40311f0d00000000000000000000000000000000000000000000000000000000000000000d22374c62778da3b8cdd0d0d0d0d0c3ad98836c57422c1700000000000000172c42576c8398adb8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8bac2cfbba59079644f47474747443a2c1b0900000000000000172c42576c8398abababababaeb9c9b8a38d77625454546a8095abc0c2b4acababababa59079644f3a250f0000000000000016293b495354545454576c8398adc3c0b3ababababababababababababababababababababadb7c7d8ddddddddd8c3ad98836c57422c170016293b495354545454576c8398adc3c0b3ababababababababababababababababababababababababababababababab98836c57422c17001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a443f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3a2f211000000000000000000000000000000000000000000000152a3f53646c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c64533f2a150000000000000014283c4f5e6464646464647990a5bbbeac9e9b9b9b9b9b9b9b9b9b9b9b9b9b9eacbebba590796464646464645e4f3c2814001b3043556264646464646c8398adc3b7a69b9b9b9b9b9b9b9b9b9b9b9b9b9b9b9b9b9b9b9b9eacbebba590796464646464645e4f3c281400000000000000000000000000000000000000000000000000000000000000000d22374c62778da3b8cde2e5e5e5d8c3ad98836c57422c1700000000000000172c42576c8398a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a5b1c2bba59079645c5c5c5c5c574a38251100000000000000172c42576c839595959595959babbfb8a38d776a6a6a6a6a8095abc0b7a59795959595959079644f3a250f000000000000001d314558676a6a6a6a6a6c8398adc3b5a2969595959595959595959595959595959595959599a9bcd0e5f2f2edd8c3ad98836c57422c17001d314558676a6a6a6a6a6c8398adc3b5a29695959595959595959595959595959595959595959595959595959595959595836c57422c17001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a5454545454545454545454545454545454545454545454544c3f2d1b07000000000000000000000000000000000000000000172c42576c8383838383838383838383838383838383838383838383838383838383838383838383838383836c57422c1700000000000000172c41576b7979797979797990a5bbb8a38f868686868686868686868686868fa3b8bba590797979797979796b57412c17001f34495e737979797979798398adc3b09b88868686868686868686868686868686868686868fa3b8bba590797979797979796b57412c1700000000000000000000000000000000000000000000000000000000000000000d22374c62778da3b8cde2f8ffedd8c3ad98836c57422c1700000000000000172c42576c838d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d93a5babba590797272727272726855402b1600000000000000172c42576c8080808080808090a5bbb8a38d8080808080808095abc0b39d8880808080808079644f3a250f000000000000001f344a5f748080808080808398adc3b09b86808080808080808080808080808080808080808da3b8cde2f8ffedd8c3ad98836c57422c17001f344a5f748080808080808398adc3b09b8680808080808080808080808080808080808080808080808080808080808080806c57422c17001f344a5f748ba0b5cbe0f5fff0dac5b09b866f6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a695d4a36220d0000000000000000000000000000000000030b0f0f172c42576c8398989898989898989898989898989898989898989898989898989898989898989898989898836c57422c1700000000030707172c42576c8390909090909097a9bdb8a38d776f6f6f6f6f6f6f6f6f6f6f778da3b8bda997909090909090836c57422c17001f344a5f748b9090909090909db0c5b09b866f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f778da3b8bda997909090909090836c57422c1700000000000000000000000000000000000000000000000000000000000000000d22374c62778da3b8cde2f8ffedd8c3ad98836c57422c1700000000000000172c41566a77777777777777777777777777777777777777777777777777778da3b8bba692888888888888836c57422c1700000001080c0d152a3e51626a6a6a6a6a6a7990a5bbbca999959595959595959eb0c4b39d88726a6a6a6a6a695d4a36220d0d0b06000000001f344a5f748b959595959596a0b2c5b09b866f6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a778da3b8cde2f8ffedd8c3ad98836c57422c17001f344a5f748b959595959596a0b2c5b09b866f6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a62513e2a15001f344a5f748ba0b5cbe0f5fff0dac5b09b868080808080808080808080808080808080808080808080808079644f3a250f000000000000000000000000000000000a161f2425252c42576c8398adadadadadadadadadadadadadadadadadadadadadadadadadadadadadadadadadadad98836c57422c170000030f171c1d1d2c42576c8398a5a5a5a5a5a9b5c6b8a38d77625a5a5a5a5a5a5a5a5a62778da3b8c6b5a9a5a5a5a5a598836c57422c17001f344a5f748ba0a5a5a5a5a5adbbc5b09b866f5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a62778da3b8c6b5a9a5a5a5a5a598836c57422c17000000000000000000040d1315151515151515151515151515151515151515151522374c62778da3b8cde2f8ffedd8c3ad98836c57422c170000000000000013273b4d5c62626262626262626262626262626262626262626262626262778da3b8c2b0a29d9d9d9d9d98836c57422c17000008141c212222223444505454545454647990a5bbc7b7adabababababababb0bdc8b39d88725c54545454544c3f2d22222220190f0200001f344a5f748ba0abababababb1bec5b09b866f5a54545454545454545454545454545462778da3b8cde2f8ffedd8c3ad98836c57422c17001f344a5f748ba0abababababb1bec5b09b866f5a545454545454545454545454545454545454545454545454545454545454504434220f001f344a5f748ba0b5cbe0f5fff2ddc9b5a2969595959595959595959595959595959595959595959595959079644f3a250f0d0b0600000000000000000000000009192733393a3a3a42576c8398adc3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3ad98836c57422c17000413212b3132323242576c8398adbbbbbbbbbdc6cdb8a38d77624c444444444444444c62778da3b8cdc6bdbbbbbbbbad98836c57422c17001f344a5f748ba0b5bbbbbbbbc0cac5b09b866f5a44444444444444444444444444444c62778da3b8cdc6bdbbbbbbbbad98836c57422c170000000000000000081621282a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a374c62778da3b8cde2f8ffedd8c3ad98836c57422c17000000000000000b1e2f3e494c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c62778da3b8cdbfb5b3b3b3b3ad98836c57422c1700071725303637373737373c3f3f3f3f4f647990a5bbd0c9c1c0c0c0c0c0c0c0c4cdc8b39d88725c473f3f3f3f3a3737373737352d201101001f344a5f748ba0b5c0c0c0c0c4cfc5b09b866f5a443f3f3f3f3f3f3f3f3f3f3f3f3f4c62778da3b8cde2f8ffedd8c3ad98836c57422c17001f344a5f748ba0b5c0c0c0c0c4cfc5b09b866f5a443f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3c33261605001f344a5f748ba0b5cbe0f5fff8e4d2c0b3ababababababababababababababababababababababababa59079644f3a25222220190f0200000000000000000000142637454e4f4f4f4f576c8398adc3c4b7b0b0b0b0b0b0b0b0b0b0b0b0b0b0b5c0d0d8d8d8d8d8d8ccbdb3b0b0b0b0ad98836c57422c17001022323e4647474747576c8398adc3cabeb8b8b8b8b8a38d77624c372f2f2f2f2f374c62778da3b8b8b8b8b8b8b8b8ad98836c57422c17001f344a5f748ba0b5b8b8b8b8b8b8b8b09b866f5a442f2f2f2f2f2f2f2f2f2f2f2f374c62778da3b8cdd8d2d0d0d0c3ad98836c57422c1700000000000000051626333c3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f4c62778da3b8cde2f8ffedd8c3ad98836c57422c1700000000000000051626333c3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f4c62778da3b8cdd1cac8c8c8c3ad98836c57422c1700122535434b4c4c4c4c4c4c4c4c4c4c4f647990a5bbd0dcd6d5d5d5d5d5d5d5d8ddc8b39d88725c4c4c4c4c4c4c4c4c4c4c4c493e2f1e0b001f344a5f748ba0b3b3b3b3b3b8c4c5b09b866f5a4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c62778da3b8cde2f8ffedd8c3ad98836c57422c17001f344a5f748ba0b5cbd5d5d5d9dac5b09b866f5a442f2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2821160800001f344a5f748ba0b5cbe0f5ffffefded0c5c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0bba59079644f3a373737352d2011010000000000000000001b3043556264646464646c8398adc3b7a69b9b9b9b9b9b9b9b9b9b9b9b9b9ba2b3c5d9ededede9d4c1ae9f9b9b9b9b9b98836c57422c1700192d3f505b5c5c5c5c5c6c8398adc3bbaca3a3a3a3a3a38d77624c37221a1a1a22374c62778da3a3a3a3a3a3a3a3a3a398836c57422c17001f344a5f748ba0a3a3a3a3a3a3a3a3a39b866f5a442f1a1a1a1a1a1a1a1a1a1a22374c62778da3b8cde2e6e5e5d8c3ad98836c57422c17000000000000000f2234445054545454545454545454545454545454545454545454545462778da3b8cde2f8ffedd8c3ad98836c57422c17000000000000000f2234445054545454545454545454545454545454545454545454545462778da3b8cde2dfddddd8c3ad98836c57422c17001b2f4253606262626262626262626262647990a5bbd0e5ebeaeaeaeaeaeaeaedddc8b39d88726262626262626262626262625c4d3b2713001f344a5f748b9d9d9d9d9d9ea6b6c5b09b866f6262626262626262626262626262626262778da3b8cde2f8ffedd8c3ad98836c57422c17001f344a5f748ba0b5cbe0eaeaeddac5b09b866f5a442f1a151515151515151515151515151515151515151515151515151515130d040000001f344a5f748ba0b5cbe0f5fffbe8d6c6b9b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b5beccbba59079644f4c4c4c4c493e2f1e0b0000000000000000001f34495e737979797979798398adc3b09b888686868686868686868686868696abc0d5ebffffe5d0bba691868686868686836c57422c17001e33485c6e7272727272728398adc3b29e8f8d8d8d8d8d8d77624c37220d000d22374c62778d8d8d8d8d8d8d8d8d8d8d8d836c57422c17001f344a5f748b8d8d8d8d8d8d8d8d8d8d8d866f5a442f1a05000000000000000d22374c62778da3b8cde2f8ffedd8c3ad98836c57422c1700000000000000152a3e51626a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a778da3b8cde2f8ffedd8c3ad98836c57422c1700000000000000152a3e51626a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a778da3b8cde2f4f2edd8c3ad98836c57422c17001f34495e717777777777777777777777777990a5bbd0e5fafffffffffffffff2ddc8b39d88777777777777777777777777776a56412c17001f344a5f74888888888888899aaec3b09b86777777777777777777777777777777777777778da3b8cde2f8ffedd8c3ad98836c57422c17001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a442f1a0500000000000000000000000000000000000000000000000000000000000000001f344a5f748ba0b5cbe0f5fff4dfcbb8a89e9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9da0aebfbba590796462626262625c4d3b27130000000000000000001f344a5f748b9090909090909db0c5b09b866f6f6f6f6f6f6f6f6f6f6f6f8095abc0d5eaf8f8e5d0bba590796f6f6f6f6f6f6654402b16001f344a5f74888888888888899aaec3b09b8677777777777773604c37210c000c21374c6073777777777777777777777777776a56412c17001f34495e71777777777777777777777777776d59442f1a04000000000000000d22374c62778da3b8cde2f8ffedd8c3ad98836c57422c1700000000000000172c42576c80808080808080808080808080808080808080808080808080808da3b8cde2f8ffedd8c3ad98836c57422c1700000000000000172c42576c80808080808080808080808080808080808080808080808080808da3b8cde2f8ffedd8c3ad98836c57422c17001f344a5f748b8d8d8d8d8d8d8d8d8d8d8d8d95a8bcd1e6fbfffffffffffffff3dec9b5a0908d8d8d8d8d8d8d8d8d8d8d8d836c57422c17001e33485c6e7272727272728398adc3b29e8f8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d93a5bacee3f9ffedd8c3ad98836c57422c17001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a442f1a0500000000000000000000000000000000000000000000000000000000000000001f344a5f748ba0b5cbe0f5fff0dbc6b19c8a8888888888888888888888888888888888888890a4b9bba590797777777777776a56412c170000000000000000001f344a5f748ba0a5a5a5a5a5adbbc5b09b866f5a5a5a5a5a5a5a5a5a5a6a8095abc0d5e7e3e2e2d0bba59079645a5a5a5a5a5548372411001f344a5f748b9d9d9d9d9d9ea6b6c5b09b866f6262626262605544311d0900091d31445560626262626262626262626262625c4d3b2713001b2f425360626262626262626262626262625d4f3d2a1615151515151515151522374c62778da3b8cde2eceaead8c3ad98836c57422c1700000001080c0d172c42576c839595959595959595959595959595959595959595959595959599a9bcd0e5faffedd8c3ad98836c57422c1700000001080c0d172c42576c839595959595959595959595959595959595959595959595959599a9bcd0e5faffedd8c3ad98836c57422c17001f344a5f748ba0a3a3a3a3a3a3a3a3a3a3a3a6b3c4d7ebfffffffffffffffff8e4d0beaea4a3a3a3a3a3a3a3a3a3a3a398836c57422c1700192d3f505b5c5c5c5c5c6c8398adc3bbaca3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a5b1c2d5e9fdffedd8c3ad98836c57422c17001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a442f1a0500000000000000000000000000000000000000000000000000000000000000001f344a5f748ba0b5cbe0f5fff0dac5b09b86727272727272727272727272727272727272778da3b8bca8958d8d8d8d8d8d836c57422c170000000000000000001f344a5f748ba0b5bbbbbbbbc0cac5b09b866f5a4444444444444444546a8095abc0d5d3cecdcdcdbba59079644f4444444441382a1a08001f344a5f748ba0b3b3b3b3b3b8c4c5b09b866f5a4c4c4c4c4c44372715020002152737444c4c4c4c4c4c4c4c4c4c4c4c4c4c493e2f1e0b00122535434b4c4c4c4c4c4c4c4c4c4c4c4c4c4a40312a2a2a2a2a2a2a2a2a2a2a2a374c62778da3b8cdddd7d5d5d5c3ad98836c57422c17000008141c2122222c42576c8398ababababababababababababababababababababababababadb7c7d8ebffffedd8c3ad98836c57422c17000008141c2122222c42576c8398ababababababababababababababababababababababababadb7c7d8ebffffedd8c3ad98836c57422c17001f344a5f748ba0b5b8b8b8b8b8b8b8b8b8b8bac3d1e2f4ffffffffffffffffffeddbccbfb9b8b8b8b8b8b8b8b8b8b8ad98836c57422c17001022323e4647474747576c8398adc3cabeb8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8bac2cfe0f1ffffedd8c3ad98836c57422c17001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a442f1a0500000000000000000000000000000000000000000000000000000000000000001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c62778da3b8c4b3a6a3a3a3a3a398836c57422c170000000000000000001f344a5f748ba0b5cbd0d0d0d4dac5b09b866f5a44303d4547474747546a8095abc0ccbfb9b8b8b8b8a59079644f47474747443a2c1b09001f344a5f748ba0b5c8c8c8c8ccd5c5b09b866f5a443737373731271909000000091927313737373737373737373737373737352d20110100071725303637373737373c3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f4c62778da3b8cdcac2c0c0c0c0ad98836c57422c1700071725303637373742576c8398adc0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c1c9d5e4f6ffffedd8c3ad98836c57422c1700071725303637373742576c8398adc0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c1c9d5e4f6ffffedd8c3ad98836c57422c17001f344a5f748ba0b5bbbbbbbbbbbbbbbbbbbbbdc6d3e3f5ffffffffffffffffffeeddcec2bbbbbbbbbbbbbbbbbbbbbbad98836c57422c17000413212b3132323242576c8398adbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbcc4d1e1f3ffffedd8c3ad98836c57422c17001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a442f1a0500000000000000000000000000000000000000000000000000000000000000001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a47474747474747474747474747474c62778da3b8cdc3bab8b8b8b8ad98836c57422c170000000000000000001f344a5f748ba0b5cbe0e5e5e8dac5b09b866f5a443d4e5a5c5c5c5c5c6a8095abc0beaea4a3a3a3a3a39079645c5c5c5c5c574a382511001f344a5f748ba0b5cbdddddde0dac5b09b866f5a442f2222211d1509000000000009151d212222222222222222222222222220190f0200000008141c2122222234445054545454545454545454545454545454545454545454545462778da3b8c9b9aeababababab98836c57422c1700122535434b4c4c4c4c576c8398adc3c6b9b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b5beccddefffffedd8c3ad98836c57422c1700122535434b4c4c4c4c576c8398adc3c6b9b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b5beccddefffffedd8c3ad98836c57422c17001f344a5f748ba0a5a5a5a5a5a5a5a5a5a5a5a9b5c6d8ecfffffffffffffffff8e4d1bfb0a6a5a5a5a5a5a5a5a5a5a5a598836c57422c170000030f171c1d1d2c42576c8398a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a8b3c3d6e9feffedd8c3ad98836c57422c17001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a442f1a0500000000000000000000000000000000000000000000000000000000000000001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a44323232323232323232323232374c62778da3b8cdd6cfcdcdcdc3ad98836c57422c170000000000000000001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a44455a6c7272727272728095abc0b5a0908d8d8d8d8d8d797272727272726855402b16001f344a5f748ba0b5cbe0f2f2f0dac5b09b866f5a442f1a0d0c09020000000000000002090c0d0d0d0d0d0d0d0d0d0d0d0d0d0b0600000000000001080c0d152a3e51626a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a778da3b8bfab9b959595959595836c57422c17001b2f42536062626262626c8398adc3b8a89e9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9da0aebfd3e7fbffedd8c3ad98836c57422c17001b2f42536062626262626c8398adc3b8a89e9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9da0aebfd3e7fbffedd8c3ad98836c57422c17001f344a5f748b90909090909090909090909097a9bdd2e6fbfffffffffffffff4dfcab5a292909090909090909090909090836c57422c1700000000000000172c42576c839090909090909090909090909090909090909090909090909095a6bacfe4f9ffedd8c3ad98836c57422c17001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a442f1a0500000000000000000000000000000000000000000000000000000000000000001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a442f1d1d1d1d1d1d1d1d1d1d22374c62778da3b8cde2e4e2e2d8c3ad98836c57422c170000000000000000001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a44475c728888888888888897acc0b39d88777777777777868888888888836c57422c17001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a442f1a050000000000000000000000000000000000000000000000000000000000000000000000000000172c42576c80808080808080808080808080808080808080808080808080808da3b8bba590808080808080806c57422c17001f34495e717777777777778398adc3b19c8a8888888888888888888888888888888888888890a4b9cee3f8ffedd8c3ad98836c57422c17001f34495e717777777777778398adc3b19c8a8888888888888888888888888888888888888890a4b9cee3f8ffedd8c3ad98836c57422c17001f34495e737979797979797979797979797990a5bbd0e5fafffffffffffffff2ddc8b39d88797979797979797979797979796b57412c1700000000000000172c41576b79797979797979797979797979797979797979797979797979798da3b8cde2f8ffedd8c3ad98836c57422c17001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a442f1a0500000000000000000000000000000000000000000000000000000000000000001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a442f1a05000000000000000d22374c62778da3b8cde2f8ffedd8c3ad98836c57422c170000000000000000001f344a5f748ba0b5cbe0eaeaeddac5b09b866f5a44475c72889d9d9d9d9d9da5b4c7b39d8872626262626f869b9d9d9d98836c57422c17001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a442f1a050000000000000000000000000000000000000000000000000000000000000000000001080c0d172c42576c839595959595959595959595959595959595959595959595959599a9bcbba590796a6a6a6a6a6a62513e2a15001f344a5f748b8d8d8d8d8d8e9cafc4b09b86727272727272727272727272727272727272778da3b8cde2f8ffedd8c3ad98836c57422c17001f344a5f748b8d8d8d8d8d8e9cafc4b09b86727272727272727272727272727272727272778da3b8cde2f8ffedd8c3ad98836c57422c17001b304355626464646464646464646464647990a5bbd0e5eeedededededededefddc8b39d88726464646464646464646464645e4f3c28140000000000000014283c4f5e64646464646464646464646464646464646464646464646464778da3b8cde2eeededd8c3ad98836c57422c17001f344a5f748ba0b5cbe0ededf0dac5b09b866f5a442f1a121212121212121212121212121212121212121212121212121212100b020000001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a442f1a05000000000000000d22374c62778da3b8cde2f8ffedd8c3ad98836c57422c170000000000000000001f344a5f748ba0b5cbd5d5d5d9dac5b09b866f5a44475c72889db3b3b3b3b3b7c2c8b39d88725c4c4c5a6f869bb0b3ad98836c57422c17001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a442f1a0500000000000000000000000000000000000000000000000000000000000000000008141c2122222c42576c8398ababababababababababababababababababababababababadb7c7bba59079645454545454504434220f001f344a5f748ba0a3a3a3a3a3aab9c5b09b866f5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c62778da3b8cde2f8ffedd8c3ad98836c57422c17001f344a5f748ba0a3a3a3a3a3aab9c5b09b866f5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c62778da3b8cde2f8ffedd8c3ad98836c57422c1700142637454e4f4f4f4f4f4f4f4f4f4f4f647990a5bbd0dfd9d8d8d8d8d8d8d8daddc8b39d88725c4f4f4f4f4f4f4f4f4f4f4f4b40311f0d000000000000000d1f31404b4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f62778da3b8cde0d9d8d8d8c3ad98836c57422c17001f344a5f748ba0b5cbd8d8d8dbdac5b09b866f5a442f27272727272727272727272727272727272727272727272727272727251e140600001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a442f1a12121212121212121222374c62778da3b8cde2eeededd8c3ad98836c57422c170000000000000000001f344a5f748ba0b5c0c0c0c0c4cfc5b09b866f5a44475c72889db3c8c8c4c0c0c0c0b39d88725c47445a6f869bb0c0ad98836c57422c17001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a442f1a050000000000000000000000000000000000000000000000000000000000000000071725303637373742576c8398adc0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c1c8c8bba59079644f3f3f3f3f3c33261605001f344a5f748ba0b5b8b8b8b8bdc8c5b09b866f5a47474747474747474747474747474c62778da3b8cde2f8ffedd8c3ad98836c57422c17001f344a5f748ba0b5b8b8b8b8bdc8c5b09b866f5a47474747474747474747474747474c62778da3b8cde2f8ffedd8c3ad98836c57422c170009192733393a3a3a3a3a3a3c3c3c3c4f647990a5bbd0cbc4c3c3c3c3c3c3c3c6cfc8b39d88725c473c3c3c3c3a3a3a3a3a3a372f22130200000000000000041524313a3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c4c62778da3b8cdcdc5c3c3c3c3ad98836c57422c17001f344a5f748ba0b5c3c3c3c3c7d1c5b09b866f5a443c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3a31241504001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a442f2727272727272727272727374c62778da3b8cde0d9d8d8d8c3ad98836c57422c170000000000000000001f344a5f748ba0abababababb1bec5b09b866f5a54545c72889db3c8bdb0ababababab9d88725c47445a6f869bababab98836c57422c17001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a442f1a050000000000000000000000000000000000000000000000000000000000000000122535434b4c4c4c4c576c8398adc3c6b9b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3a59079644f3a2a2a2a2821160800001f344a5f748ba0b5cbcdcdcdd1dac5b09b866f5a44323232323232323232323232374c62778da3b8cde2f8ffedd8c3ad98836c57422c17001f344a5f748ba0b5cbcdcdcdd1dac5b09b866f5a44323232323232323232323232374c62778da3b8cde2f8ffedd8c3ad98836c57422c1700000a161f2425252533424e5252525252647990a5bbc8b9afadadadadadadadb2bec8b39d88725c52525252514a3d2c252525231c120400000000000000000e2133424e52525252525252525252525252525252525252525252525262778da3b8cabbb0adadadadad98836c57422c17001f344a5f748ba0adadadadadb3c0c5b09b866f5a5252525252525252525252525252525252525252525252525252525252524e4233210e001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a443c3c3c3c3c3c3c3c3c3c3c3c3c4c62778da3b8cdcdc5c3c3c3c3ad98836c57422c170000000000000000001f344a5f748b959595959596a0b2c5b09b866f6a6a6a6a72889db3c4b09e95959595959588725c47445a6f869595959595836c57422c17001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a442f1a0500000000000000000000000000000000000000000000000000000000000000001b2f42536062626262626c8398adc3b8a89e9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9079644f3a251515130d040000001f344a5f748ba0b5cbe0e2e3e5dac5b09b866f5a442f1d1d1d1d1d1d1d1d1d1d22374c62778da3b8cde2f8ffedd8c3ad98836c57422c17001f344a5f748ba0b5cbe0e2e3e5dac5b09b866f5a442f1d1d1d1d1d1d1d1d1d1d22374c62778da3b8cde2f8ffedd8c3ad98836c57422c17000000030b0f0f14293d50606767676767677990a5bbbdaa9c98989898989898a0b1c4b39d88726767676767665b4936210f0f0e080000000000000000000014293d506067676767676767676767676767676767676767676767676767778da3b8c0ad9d989898989898836c57422c17001f344a5f748b989898989898a2b3c5b09b866f6767676767676767676767676767676767676767676767676767676767676760503d2914001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a52525252525252525252525252525262778da3b8cabbb0adadadadad98836c57422c170000000000000000001f344a5f748080808080808398adc3b09b86808080808080889db3c0ab9580808080808080725c47445a6f808080808080806c57422c17001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a442f1a0500000000000000000000000000000000000000000000000000000000000000001f34495e717777777777778398adc3b19c8a8888888888888888888888888888888888888888888888888879644f3a250f000000000000001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a442f1a05000000000000000d22374c62778da3b8cde2f8ffedd8c3ad98836c57422c17001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a442f1a05000000000000000d22374c62778da3b8cde2f8ffedd8c3ad98836c57422c1700000000000000172c42576c7c7c7c7c7c7c7c90a5bbb8a38e8383838383838396abc0b39d887c7c7c7c7c7c79644f3a240f00000000000000000000000000172c42576c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c8da3b8bba590838383838383836c57422c17001f344a5f748383838383838498adc3b09b867c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c6c57422c17001f344a5f748ba0b5cbe0f5fff0dac5b09b866f6767676767676767676767676767676767778da3b8c0ad9d989898989898836c57422c170000000000000000001d314558676a6a6a6a6a6c8398adc3b5a29695959595959597a5b7c0ab95806a6a6a6a6a6a6656434054646a6a6a6a6a6a6a62513e2a15001f344a5f748ba0b5cbe0f5faf0dac5b09b866f5a442f1a0504010000000000000000000104050505050505050505050505050300000000001f344a5f748b8d8d8d8d8d8e9cafc4b09b867272727272727272727272727272727272727272727272727270614d38230e050300000000001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a442f1a05000000000000000d22374c62778da3b8cde2f8ffedd8c3ad98836c57422c17001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a442f1a05000000000000000d22374c62778da3b8cde2f8ffedd8c3ad98836c57422c1700000000000000172c42576c8393939393939399aabeb8a38d776c6c6c6c6c8095abc0b6a39593939393939079644f3a250f00000000000000000000000000172c42576c839393939393939393939393939393939393939393939393939397a8bbbba590796c6c6c6c6c6c64533f2a15001d32465a696c6c6c6c6c6c8398adc3b4a19493939393939393939393939393939393939393939393939393939393939393836c57422c17001f344a5f748ba0b5cbe0f5fff0dac5b09b867c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c8da3b8bba590838383838383836c57422c1700000000000000000016293b495354545454576c8398adc3c0b3abababababababacb4c2c0ab95806a545454545452483836465154545454545454504434220f001f344a5f748ba0b5cbe0e5e5e8dac5b09b866f5a442f1a1a1a160e030000000000030e161a1a1a1a1a1a1a1a1a1a1a1a1a1a1812090000001f344a5f748ba0a3a3a3a3a3aab9c5b09b866f5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5344311e1a1a1812090000001f344a5f748ba0b5cbe0ededf0dac5b09b866f5a442f1a12121212121212121222374c62778da3b8cde2f8ffedd8c3ad98836c57422c17001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a442f1a05000000000000000d22374c62778da3b8cde2f8ffedd8c3ad98836c57422c1700000000000000172c42576c8398a8a8a8a8a8abb7c7b8a38d77625757576a8095abc0c1b2a9a8a8a8a8a59079644f3a250f00000000000000000000000000172c42576c8398a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8aab5c5bba59079645757575757534636231000172a3c4c5557575757576c8398adc3bfb0a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a898836c57422c17001f344a5f748ba0b5cbe0f5f5f1dcc8b4a1949393939393939393939393939393939393939397a8bbbba590796c6c6c6c6c6c64533f2a150000000000000000000c1d2c373e3f3f3f42576c8398adc3d0c5c0c0c0c0c0c0c0c0c7d2c0ab95806a543f3f3f3f3e362a28353d3f3f3f3f3f3f3f3c33261605001f344a5f748ba0b5cbd0d0d0d4dac5b09b866f5a442f2f2f2f2a2013040000000413202a2f2f2f2f2f2f2f2f2f2f2f2f2f2f2d261a0c00001f344a5f748ba0b5b8b8b8b8bdc8c5b09b866f5a47474747474747474747474747474747474747474747474741352f2f2f2f2d261a0c00001f344a5f748ba0b5cbd8d8d8dbdac5b09b866f5a442f2727272727272727272727374c62778da3b8cde2f8ffedd8c3ad98836c57422c17001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a442f1a05000000000000000d22374c62778da3b8cde2f8ffedd8c3ad98836c57422c1700000000000000172c42576c8398adbdbdbdbdbfc8cbb8a38d77624c42546a8095abc0cbc4bebdbdbdbba59079644f3a250f00000000000000000000000000172c42576c8398adbdbdbdbdbdbdbdbdbdbdbdbdbdbdbdbdbdbdbdbdbdbdbdbfc7cbbba59079644f424242423f36281806000d1e2e3a4142424242576c8398adc3cbc3bebdbdbdbdbdbdbdbdbdbdbdbdbdbdbdbdbdbdbdbdbdbdbdbdbdbdbdbdbdad98836c57422c17001f344a5f748ba0b5cbe0e0e0e0e0d0bfb0a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8aab5c5bba590796457575757575346362310000000000000000000122535434b4c4c4c4c576c8398adc3c6b9b3b3b3b3b3b3b3b3bbc8c0ab95806a544c4c4c4c4a41332222282a2a2a2a2a2a2a2821160800001f344a5f748ba0b5bbbbbbbbc0cac5b09b866f5a44444444443d3122110000001122313d444444444444444444444444444441382a1a08001f344a5f748ba0b5cbcdcdcdd1dac5b09b866f5a4432323232323232323232323232323d444444444444444444444444444441382a1a08001f344a5f748ba0b5c3c3c3c3c7d1c5b09b866f5a443c3c3c3c3c3c3c3c3c3c3c3c3c4c62778da3b8cde2f8ffedd8c3ad98836c57422c17001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a442f1a05000000000000000d22374c62778da3b8cde2f8ffedd8c3ad98836c57422c1700000000000000172c42576c8398adb5b5b5b5b5b5b5b5a38d77624c3f546a8095abb5b5b5b5b5b5b5b5a59079644f3a250f00000000000000000000000000172c42576c8398adb5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5a59079644f3a2c2c2c2a23180a000000101d262c2c2c2c42576c8398adb5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5ad98836c57422c17001f344a5f748ba0b5cbcbcbcbcbcbcbcbc3bebdbdbdbdbdbdbdbdbdbdbdbdbdbdbdbdbdbdbdbfc7cbbba59079644f424242423f362818060000000000000000001b2f42536062626262626c8398adc3b8a89e9d9d9d9d9d9d9faabbc0ab95806a62626262625f51402c181315151515151515130d040000001f344a5f748ba0a5a5a5a5a5adbbc5b09b866f5a5a5a5a5a594f402e1b0700071b2e404f595a5a5a5a5a5a5a5a5a5a5a5a5a5548372411001f344a5f748ba0b5cbe0e2e3e5dac5b09b866f5a442f1d1d1d1d1d1d1d1d1d1d1d2e404f595a5a5a5a5a5a5a5a5a5a5a5a5a5548372411001f344a5f748ba0adadadadadb3c0c5b09b866f5a52525252525252525252525252525262778da3b8cde2f8ffedd8c3ad98836c57422c17001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a442f1a05000000000000000d22374c62778da3b8cde2f8ffedd8c3ad98836c57422c1700000000000000172c42576c8398a0a0a0a0a0a0a0a0a0a08d77624c3f546a8095a0a0a0a0a0a0a0a0a0a09079644f3a250f00000000000000000000000000172c42576c8398a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a09079644f3a25171715100600000000000a121717172c42576c8398a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a098836c57422c17001f344a5f748ba0b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5a59079644f3a2c2c2c2a23180a000000000000000000001f34495e717777777777778398adc3b19c8a8888888888888c9fb3c0ab95807777777777776f5b46311c07000000000000000000000000001f344a5f748b9090909090909db0c5b09b866f6f6f6f6f6f6d5d4a35200b000b20354a5d6d6f6f6f6f6f6f6f6f6f6f6f6f6f6654402b16001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a442f1a05000000000000000b20354a5d6d6f6f6f6f6f6f6f6f6f6f6f6f6f6654402b16001f344a5f748b989898989898a2b3c5b09b866f6767676767676767676767676767676767778da3b8cde2f8ffedd8c3ad98836c57422c17001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a442f1a05000000000000000d22374c62778da3b8cde2f8ffedd8c3ad98836c57422c1700000000000000172c42576c838b8b8b8b8b8b8b8b8b8b8b8b77624c3f546a808b8b8b8b8b8b8b8b8b8b8b8b79644f3a250f00000000000000000000000000172c42576c838b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b79644f3a250f00000000000000000000000000172c42576c838b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b836c57422c17001f344a5f748ba0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a09079644f3a25171715100600000000000000000000001f344a5f748b8d8d8d8d8d8e9cafc4b09b86727272727272889db3c1ad998d8d8d8d8d8d88725c47321d07000000000000000000000000001f34495e737979797979798398adc3b09b8886868686868677624c37220d000d22374c6277868686868686868686868686836c57422c17001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a442f1a05000000000000000d22374c6277868686868686868686868686836c57422c17001f344a5f748383838383838498adc3b09b867c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c8da3b8cde2f8ffedd8c3ad98836c57422c17001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a442f1a05000000000000000d22374c62778da3b8cde2f8ffedd8c3ad98836c57422c1700000000000000172c4155697474747474747474747474747471604b3e53677474747474747474747474747473624e39240f00000000000000000000000000172c415569747474747474747474747474747474747474747474747474747474747474747473624e39240f00000000000000000000000000172c4155697474747474747474747474747474747474747474747474747474747474747474747474747474746955412c17001f344a5f748b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b79644f3a250f0000000000000000000000000000001f344a5f748ba0a3a3a3a3a3aab9c5b09b866f5c5c5c5c72889db3c8b7a9a3a3a3a3a39d88725c47321d07000000000000000000000000001b3043556264646464646c8398adc3b7a69b9b9b9b9b9b8d77624c372212121222374c62778d9b9b9b9b9b9b9b9b9b9b98836c57422c17001f344a5f748ba0b5cbe0ededf0dac5b09b866f5a442f1a12121212121212121222374c62778d9b9b9b9b9b9b9b9b9b9b98836c57422c17001d32465a696c6c6c6c6c6c8398adc3b4a1949393939393939393939393939393939393939397a8bbd0e4f5f5edd8c3ad98836c57422c17001f344a5f748ba0b5cbe0f5f5f0dac5b09b866f5a442f1a05000000000000000d22374c62778da3b8cde2f5f5edd8c3ad98836c57422c170000000000000012263a4c5a5f5f5f5f5f5f5f5f5f5f5f5f5f5e53433749585f5f5f5f5f5f5f5f5f5f5f5f5f5e5545331f0b0000000000000000000000000012263a4c5a5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5e5545331f0b0000000000000000000000000012263a4c5a5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5a4c3a2612001f34495d70747474747474747474747474747474747474747474747474747474747474747474747474747473624e39240f0000000000000000000000000000001f344a5f748ba0b5b8b8b8b8bdc8c5b09b866f5a47475c72889db3c8c7bcb8b8b8b8b39d88725c47321d0700000000000000000000000000142637454e4f4f4f4f576c8398adc3c4b7b0b0b0b0b0a38d77624c372727272727374c62778da3b0b0b0b0b0b0b0b0ad98836c57422c17001f344a5f748ba0b5cbd8d8d8dbdac5b09b866f5a442f2727272727272727272727374c62778da3b0b0b0b0b0b0b0b0ad98836c57422c1700172a3c4c5557575757576c8398adc3bfb0a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8aab5c5d7e0e0e0e0d8c3ad98836c57422c17001f344a5f748ba0b5cbe0e0e0e0dac5b09b866f5a442f1a05000000000000000d22374c62778da3b8cde0e0e0e0d8c3ad98836c57422c17000000000000000a1d2e3c464a4a4a4a4a4a4a4a4a4a4a4a4a4942352c3b454a4a4a4a4a4a4a4a4a4a4a4a4a494337271603000000000000000000000000000a1d2e3c464a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a494337271603000000000000000000000000000a1d2e3c464a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a463c2e1d0a001a2e41515d5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5e5545331f0b0000000000000000000000000000001f344a5f748ba0b5cbcdcdcdd1dac5b09b866f5a44475c72889db3c8d8d0cdcdcdc8b39d88725c47321d070000000000000000000000000009192733393a3a3a42576c8398adc3c3c3c3c5c5c5b8a38d77624c3c3c3c3c3c3c3c4c62778da3b8c5c5c5c3c3c3c3ad98836c57422c17001f344a5f748ba0b5c3c3c3c3c7d1c5b09b866f5a443c3c3c3c3c3c3c3c3c3c3c3c3c4c62778da3b8c5c5c5c3c3c3c3ad98836c57422c17000d1e2e3a4142424242576c8398adc3cbc3bebdbdbdbdbdbdbdbdbdbdbdbdbdbdbdbdbdbdbdbfc7cbcbcbcbcbcbcbc3ad98836c57422c17001f344a5f748ba0b5cbcbcbcbcbcbc5b09b866f5a442f1a05000000000000000d22374c62778da3b8cbcbcbcbcbcbc3ad98836c57422c170000000000000000101e2a3234343434343434343434343434342f251d293134343434343434343434343434343026190a000000000000000000000000000000101e2a323434343434343434343434343434343434343434343434343434343434343434343026190a000000000000000000000000000000101e2a32343434343434343434343434343434343434343434343434343434343434343434343434343434322a1e10000011233341494a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4943372716030000000000000000000000000000001f344a5f748ba0b5cbe0e2e3e5dac5b09b866f5a44475c72889db3c8dde5e2e2ddc8b39d88725c47321d0700000000000000000000000000000a161f2425252c42576c8398adadadadadb0bbcab8a38d776252525252525252525262778da3b8cabbb0adadadadad98836c57422c17001f344a5f748ba0adadadadadb3c0c5b09b866f5a52525252525252525252525252525262778da3b8cabbb0adadadadad98836c57422c170000101d262c2c2c2c42576c8398adb5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5ad98836c57422c17001f344a5f748ba0b5b5b5b5b5b5b5b5b09b866f5a442f1a05000000000000000d22374c62778da3b5b5b5b5b5b5b5b5ad98836c57422c170000000000000000000d171d1f1f1f1f1f1f1f1f1f1f1f1f1f1f1b120c161d1f1f1f1f1f1f1f1f1f1f1f1f1f1f1b140900000000000000000000000000000000000d171d1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1b140900000000000000000000000000000000000d171d1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1d170d0000000515232e343434343434343434343434343434343434343434343434343434343434343434343434343434343026190a000000000000000000000000000000001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a44475c72889db3c8ddf2fff2ddc8b39d88725c47321d07000000000000000000000000000000030b0f0f172c42576c839898989898989dadc0b8a38d776767676767676767676767778da3b8c0ad9d989898989898836c57422c17001f344a5f748b989898989898a2b3c5b09b866f6767676767676767676767676767676767778da3b8c0ad9d989898989898836c57422c170000000a121717172c42576c8398a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a098836c57422c17001f344a5f748ba0a0a0a0a0a0a0a0a0a09b866f5a442f1a05000000000000000d22374c62778da0a0a0a0a0a0a0a0a0a098836c57422c17000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005111a1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1b140900000000000000000000000000000000001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a44475c72889db3c8ddf2fff2ddc8b39d88725c47321d0700000000000000000000000000000000000000172c42576c8383838383838390a5bbb8a38d7c7c7c7c7c7c7c7c7c7c7c7c7c8da3b8bba590838383838383836c57422c17001f344a5f748383838383838498adc3b09b867c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c8da3b8bba590838383838383836c57422c1700000000000000172c42576c838b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b836c57422c17001f344a5f748b8b8b8b8b8b8b8b8b8b8b8b866f5a442f1a05000000000000000d22374c62778b8b8b8b8b8b8b8b8b8b8b8b836c57422c170000000000000000000b151b1d1d1d1d1d1d1d1d1d1d1d1d1d1d1d1d1d1d1d1d1d1d1d1d1d1d1d1d1d1d1d1d1c19110600000000000000000000000000000000000b151b1d1d1d1d1d1d1d1d1d1d1d1d1d1d1d1d1d1d1d1d1d1d1d1d1d1d1d1d1d1d1d1d1c19110600000000000000000000030f171c1d1d1d1d1d1d1d1d1d1d1d1d1d1d1d1d1d1d1d1d1d1d1d1d1d1d1d1d1d1d1d1d1d1d1d1d1d1d1c191106000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001f344a5f748ba0b5cbe0ededf0dac5b09b866f5a44475c72889db3c8ddefededddc8b39d88725c47321d0700000000000000000000000000000000000000152a3f53646c6c6c6c6c6c7990a5bbbba8979393939393939393939393939397a8bbbba590796c6c6c6c6c6c64533f2a15001d32465a696c6c6c6c6c6c8398adc3b4a1949393939393939393939393939393939393939397a8bbbba590796c6c6c6c6c6c64533f2a1500000000000000172c4155697474747474747474747474747474747474747474747474747474747474747474747474747474746955412c17001f34495d70747474747474747474747474746b58432e1904000000000000000c21364b6071747474747474747474747474746955412c1700000000000000000e1c282f3232323232323232323232323232323232323232323232323232323232323232322d2417080000000000000000000000000000000e1c282f3232323232323232323232323232323232323232323232323232323232323232322d24170800000000000000000413212b313232323232323232323232323232323232323232323232323232323232323232323232323232322d241708000000000000000000000000000000000b151b1d1d1d1d1d1d1d1d1d1d1d1d1d1d1d1d1d1d1d1d1d1d1d1d1d1d1d1d1d1d1d1d1d1d1d1d1d1d1d1b150b00000000000000000000001f344a5f748ba0b5cbd8d8d8dbdac5b09b866f5a44475c72889db3c8dddad8d8d8c8b39d88725c47321d070000000000000000000000000000000000000010233646535757575757647990a5bbc5b5aaa8a8a8a8a8a8a8a8a8a8a8a8a8aab5c5bba59079645757575757534636231000172a3c4c5557575757576c8398adc3bfb0a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8aab5c5bba5907964575757575753463623100000000000000012263a4c5a5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5a4c3a2612001a2e41515d5f5f5f5f5f5f5f5f5f5f5f5f5f5b4e3c29150000000000000000081c3043535e5f5f5f5f5f5f5f5f5f5f5f5f5f5a4c3a261200000000000000091b2c3a44474747474747474747474747474747474747474747474747474747474747474747413526140200000000000000000000000000091b2c3a444747474747474747474747474747474747474747474747474747474747474747474135261402000000000000001022323e46474747474747474747474747474747474747474747474747474747474747474747474747474747413526140200000000000000000000000000000e1c282f3232323232323232323232323232323232323232323232323232323232323232323232323232322f281c0e000000000000000000001f344a5f748ba0b5c3c3c3c3c7d1c5b09b866f5a44475c72889db3c8cfc6c3c3c3c3b39d88725c47321d0700000000000000000000000000000000000000061828363f424242424f647990a5bbcbc7bfbdbdbdbdbdbdbdbdbdbdbdbdbdbfc7cbbba59079644f424242423f36281806000d1e2e3a4142424242576c8398adc3cbc3bebdbdbdbdbdbdbdbdbdbdbdbdbdbdbdbdbdbdbdbfc7cbbba59079644f424242423f36281806000000000000000a1d2e3c464a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a463c2e1d0a0011233341494a4a4a4a4a4a4a4a4a4a4a4a4a473e301f0d00000000000000000114253542494a4a4a4a4a4a4a4a4a4a4a4a4a463c2e1d0a000000000000001125384a575c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5344311e0a000000000000000000000000001125384a575c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5344311e0a00000000000000192d3f505b5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5344311e0a00000000000000000000000000091b2c3a44474747474747474747474747474747474747474747474747474747474747474747474747474747443a2c1b090000000000000000001f344a5f748ba0adadadadadb3c0c5b09b866f5a52525c72889db3c8beb2adadadadad9d88725c47321d0700000000000000000000000000000000000000000a18232a2c2c2c3a4f647990a5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5a59079644f3a2c2c2c2a23180a000000101d262c2c2c2c42576c8398adb5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5a59079644f3a2c2c2c2a23180a000000000000000000101e2a32343434343434343434343434343434343434343434343434343434343434343434343434343434322a1e1000000515232e3434343434343434343434343434332b2012010000000000000000000817252f3434343434343434343434343434322a1e100000000000000000162b405568727272727272727272727272727272727272727272727272727272727272727270614d38230e00000000000000000000000000162b405568727272727272727272727272727272727272727272727272727272727272727270614d38230e000000000000001e33485c6e727272727272727272727272727272727272727272727272727272727272727272727272727270614d38230e000000000000000000000000001125384a575c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c574a3825110000000000000000001f344a5f748b989898989898a2b3c5b09b866f6767676772889db3c4b1a098989898989888725c47321d070000000000000000000000000000000000000000000610151717253a4f647990a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a09079644f3a25171715100600000000000a121717172c42576c8398a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a09079644f3a25171715100600000000000000000000000d171d1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1d170d0000000005111a1f1f1f1f1f1f1f1f1f1f1f1f1f1f1e180f02000000000000000000000007121b1f1f1f1f1f1f1f1f1f1f1f1f1f1f1d170d000000000000000000172c42576c838888888888888888888888888888888888888888888888888888888888888879644f3a250f00000000000000000000000000172c42576c838888888888888888888888888888888888888888888888888888888888888879644f3a250f000000000000001f344a5f74888888888888888888888888888888888888888888888888888888888888888888888888888879644f3a250f00000000000000000000000000162b4055687272727272727272727272727272727272727272727272727272727272727272727272727272726855402b160000000000000000001f344a5f748383838383838498adc3b09b867c7c7c7c7c7c889db3c0ab9683838383838383725c47321d07000000000000000000000000000000000000000000000000000f253a4f64798b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b79644f3a250f00000000000000000000000000172c42576c838b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b79644f3a250f0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000008101415172c42576c83989d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9079644f3a250f00000000000000000008101415172c42576c83989d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9079644f3a251515130d040000001f344a5f748b9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9079644f3a251515130d04000000000000000000172c42576c8388888888888888888888888888888888888888888888888888888888888888888888888888836c57422c170000000000000000001d32465a696c6c6c6c6c6c8398adc3b4a19493939393939395a3b6c0ab95806c6c6c6c6c6c6857442f1b06000000000000000000000000000000000000000000000000000f24394e62737474747474747474747474747474747474747474747474747473624e39240f00000000000000000000000000172c415569747474747474747474747474747474747474747474747474747474747474747473624e39240f0000000000000000030f171c1d1d1d1d1d1d1c1a120811191c1d1d1d1d1d1d1d1d1d1d1d1d1d1a140910181c1d1d1d1d1d1d1d1d1d1d1d1d1d1b150b00000000030f171c1d1d1d1d1d1d1d1d1d1d1d1d1d1b160c0000000000000000000000000510181c1d1d1d1d1d1d1d1d1d1d1d1d1d1b150b000000000e1a24292a2a2c42576c8398adb3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3a59079644f3a250f00000000000000000e1a24292a2a2c42576c8398adb3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3a59079644f3a2a2a2a2821160800001f344a5f748ba0b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3a59079644f3a2a2a2a282116080000000008101415172c42576c83989d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d98836c57422c17000000000000000000172a3c4c5557575757576c8398adc3bfb0a8a8a8a8a8a8a8a9b2c1c0ab95806a5757575757554a3a281501000000000000000000000000000000000000000000000000000b1f3345555e5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5e5545331f0b0000000000000000000000000012263a4c5a5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5e5545331f0b000000000000000413212b31323232323232322e2519242d32323232323232323232323232322f271b222c31323232323232323232323232322f281c0e00000413212b313232323232323232323232323230291e10000000000000000000000615222c31323232323232323232323232322f281c0e00000c1d2c373e3f3f3f42576c8398adc3c8c5c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0bba59079644f3a250f000000000000000c1d2c373e3f3f3f42576c8398adc3c8c5c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c1c8c8bba59079644f3f3f3f3f3c33261605001f344a5f748ba0b5c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c1c8c8bba59079644f3f3f3f3f3c3326160500000e1a24292a2a2c42576c8398adb3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3ad98836c57422c170000000000000000000d1e2e3a4142424242576c8398adc3cbc3bebdbdbdbdbdbdbec4cbc0ab95806a544242424240382c1c0b00000000000000000000000000000000000000000000000000000316273743494a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a494337271603000000000000000000000000000a1d2e3c464a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a494337271603000000000000001022323e46474747474747474237283541474747474747474747474747474743382a33404647474747474747474747474747443a2c1b09001022323e4647474747474747474747474747453c2e1d0b000000000000000000122433404647474747474747474747474747443a2c1b090016293b495354545454576c8398adc3c0b3ababababababababababababababababababababababababa59079644f3a250f0000000000000016293b495354545454576c8398adc3c0b3ababababababababababababababababababababadb7c7bba59079645454545454504434220f001f344a5f748ba0ababababababababababababababababababababababababababababababadb7c7bba59079645454545454504434220f000c1d2c373e3f3f3f42576c8398adc3c8c5c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c1c8c8c8c8c8c8c8c8c3ad98836c57422c1700000000000000000000101d262c2c2c2c42576c8398adb5b5b5b5b5b5b5b5b5b5b5b5b5b5ab95806a543f2c2c2c2b251b0e000000000000000000000000000000000000000000000000000000000a1926303434343434343434343434343434343434343434343434343434343026190a000000000000000000000000000000101e2a323434343434343434343434343434343434343434343434343434343434343434343026190a0000000000000000192d3f505b5c5c5c5c5c5c5c55463444535c5c5c5c5c5c5c5c5c5c5c5c5c5c56483641515b5c5c5c5c5c5c5c5c5c5c5c5c5c574a38251100192d3f505b5c5c5c5c5c5c5c5c5c5c5c5c5c594c3b28140000000000000000071b2f41515b5c5c5c5c5c5c5c5c5c5c5c5c5c574a382511001d314558676a6a6a6a6a6c8398adc3b5a2969595959595959595959595959595959595959595959595959079644f3a250f000000000000001d314558676a6a6a6a6a6c8398adc3b5a2969595959595959595959595959595959595959599a9bcbba590796a6a6a6a6a6a62513e2a15001f344a5f748b9595959595959595959595959595959595959595959595959595959595959599a9bcbba590796a6a6a6a6a6a62513e2a150016293b495354545454576c8398adc3c0b3ababababababababababababababababababababadb7c7d8ddddddddd8c3ad98836c57422c1700000000000000000000000a121717172c42576c8398a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a095806a543f2a171716110900000000000000000000000000000000000000000000000000000000000009141b1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1b140900000000000000000000000000000000000d171d1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1b14090000000000000000001e33485c6e7272727272727163503b4d61707272727272727272727272727266523e4a5f6f727272727272727272727272726855402b16001e33485c6e727272727272727272727272726a57432e1904000000000000000c21364a5f6f727272727272727272727272726855402b16001f344a5f748080808080808398adc3b09b868080808080808080808080808080808080808080808080808079644f3a250f000000000000001f344a5f748080808080808398adc3b09b86808080808080808080808080808080808080808da3b8bba590808080808080806c57422c17001f344a5f7480808080808080808080808080808080808080808080808080808080808080808da3b8bba590808080808080806c57422c17001d314558676a6a6a6a6a6c8398adc3b5a2969595959595959595959595959595959595959599a9bcd0e5f2f2edd8c3ad98836c57422c17000000000000000000000000000000172c42576c838b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b806a543f2a150000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001f344a5f748888888888887c67523c4f6479888888888888888888888888806a543f4c6277888888888888888888888888836c57422c17001f344a5f74888888888888888888888888866f5a442f1a05000000000000000d22374c6277888888888888888888888888836c57422c17001f344a5f748b959595959596a0b2c5b09b866f6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a695d4a36220d0d0b06000000001f344a5f748b959595959596a0b2c5b09b866f6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a778da3b8bfab9b959595959595836c57422c17001d314558676a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a778da3b8bfab9b959595959595836c57422c17001f344a5f748080808080808398adc3b09b86808080808080808080808080808080808080808da3b8cde2f8ffedd8c3ad98836c57422c17000000000000000000000000000000172c415569747474747474747474747474747474747474747467533e2914000000000000000000000000000000000000000000000a12171717171717171717171717171717171717171717171717171717171717171717161109000000000000000000000000000000000000000000000000061015171717171717171717171717171717171717171717171717171717171717171717140d020000000000000000001f344a5f748b9d9d9d9d937c67523c4f6479909d9d9d9d9d9d9d9d9d9d95806a543f4c62778d9d9d9d9d9d9d9d9d9d9d98836c57422c17001f344a5f748b9d9d9d9d9d9d9d9d9d9d9b866f5a442f1a05000000000000000d22374c62778d9d9d9d9d9d9d9d9d9d9d98836c57422c17001f344a5f748ba0abababababb1bec5b09b866f5a5454545454545454545454545454545454545454545454544c3f2d22222220190f0200001f344a5f748ba0abababababb1bec5b09b866f5a54545454545454545454545454545462778da3b8c9b9aeababababab98836c57422c170016293b495354545454545454545454545454545454545454545454545454545454545462778da3b8c9b9aeababababab98836c57422c17001f344a5f748b959595959596a0b2c5b09b866f6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a778da3b8cde2f8ffedd8c3ad98836c57422c1700000000000000000000000000000012263a4c5a5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5849372410000000000000000000000000000000000000000000101d262c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2b251b0e000000000000000000000000000000000000000000000a18232a2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c281f130400000000000000001f344a5f748ba0b3b3a8937c67523c4f647990a5b3b3b3b3b3b3b3b3ab95806a543f4c62778da3b3b3b3b3b3b3b3b3ad98836c57422c17001f344a5f748ba0b3b3b3b3b3b3b3b3b09b866f5a442f1a05000000000000000d22374c62778da3b3b3b3b3b3b3b3b3ad98836c57422c17001f344a5f748ba0b5c0c0c0c0c4cfc5b09b866f5a443f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3a3737373737352d201101001f344a5f748ba0b5c0c0c0c0c4cfc5b09b866f5a443f3f3f3f3f3f3f3f3f3f3f3f3f4c62778da3b8cdcac2c0c0c0c0ad98836c57422c17000c1d2c373e3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f4c62778da3b8cdcac2c0c0c0c0ad98836c57422c17001f344a5f748ba0abababababb1bec5b09b866f5a54545454545454545454545454545462778da3b8cde2f8ffedd8c3ad98836c57422c170000000000000000000000000000000a1d2e3c464a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a453b2c1a0800000000000000000000000000000000000000000d1e2e3a41424242424242424242424242424242424242424242424242424242424242424240382c1c0b0000000000000000000000000000000000000000061828363f4242424242424242424242424242424242424242424242424242424242424242413c31221200000000000000001f344a5f748ba0b5bda8937c67523c4f647990a5bbc8c8c8c8c8c8c0ab95806a543f4c62778da3b8c8c8c8c8c8c8c3ad98836c57422c17001f344a5f748ba0b5c8c8c8c8c8c8c5b09b866f5a442f1a05000000000000000d22374c62778da3b8c8c8c8c8c8c8c3ad98836c57422c17001f344a5f748ba0b5cbd5d5d5d9dac5b09b866f5a4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c493e2f1e0b001f344a5f748ba0b5cbd5d5d5d9dac5b09b866f5a442f2a2a2a2a2a2a2a2a2a2a2a374c62778da3b8cdddd7d5d5d5c3ad98836c57422c1700000e1a24292a2a2a2f3e494c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c62778da3b8cdbfb5b3b3b3b3ad98836c57422c17001f344a5f748ba0b5c0c0c0c0c4cfc5b09b866f5a443f3f3f3f3f3f3f3f3f3f3f3f3f4c62778da3b8cde2f8ffedd8c3ad98836c57422c1700000000000000000000000000000000101e2a32343434343434343434343434343434343434343431291d0e000000000000000000000000000000000000000000172a3c4c555757575757575757575757575757575757575757575757575757575757575757554a3a2815010000000000000000000000000000000000000010233646535757575757575757575757575757575757575757575757575757575757575757574f402f1c08000000000000001f344a5f748ba0b5bda8937c67523c4f647990a5bbd0ddddddddd5c0ab95806a543f4c62778da3b8cdddddddddd8c3ad98836c57422c17001f344a5f748ba0b5cbdddddddddac5b09b866f5a442f1a05000000000000000d22374c62778da3b8cdddddddddd8c3ad98836c57422c17001f344a5f748ba0b5cbe0eaeaeddac5b09b866f626262626262626262626262626262626262626262626262626262626262625c4d3b2713001f344a5f748ba0b5cbe0eaeaeddac5b09b866f5a442f1a15151515151515151522374c62778da3b8cde2eceaead8c3ad98836c57422c170000000810141515273b4d5c62626262626262626262626262626262626262626262626262778da3b8c2b0a29d9d9d9d9d98836c57422c17001f344a5f748ba0b5cbd5d5d5d9dac5b09b866f5a442f2a2a2a2a2a2a2a2a2a2a2a374c62778da3b8cde2f8ffedd8c3ad98836c57422c1700000000000000000000000000000000000d171d1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1d160c000000000000000000000000000000000000000000001d32465a696c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6857442f1b0600000000000000000000000000000000000000152a3f53646c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6b5e4b37230e000000000000001f344a5f748ba0b5bda8937c67523c4f647990a5bbd0e5f2f2ead5c0ab95806a543f4c62778da3b8cde2f2f2edd8c3ad98836c57422c17001f344a5f748ba0b5cbe0f2f2f0dac5b09b866f5a442f1a05000000000000000d22374c62778da3b8cde2f2f2edd8c3ad98836c57422c17001f344a5f748ba0b5cbe0f5fff0dac5b09b8677777777777777777777777777777777777777777777777777777777777777776a56412c17001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a442f1a05000000000000000d22374c62778da3b8cde2f8ffedd8c3ad98836c57422c1700000000000000172c41566a77777777777777777777777777777777777777777777777777778da3b8bba692888888888888836c57422c17001f344a5f748ba0b5cbe0eaeaeddac5b09b866f5a442f1a15151515151515151522374c62778da3b8cde2f8ffedd8c3ad98836c57422c1700000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001f344a5f748383838383838383838383838383838383838383838383838383838383838383725c47321d0700000000000000000000000000000000000000172c42576c838383838383838383838383838383838383838383838383838383838383838379644f3a250f000000000000001f344a5f748ba0b5bda8937c67523c4f647990a5bbd0e5faffead5c0ab95806a543f4c62778da3b8cde2f8ffedd8c3ad98836c57422c17001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a442f1a05000000000000000d22374c62778da3b8cde2f8ffedd8c3ad98836c57422c17001f344a5f748ba0b5cbe0f5fff1dcc7b29e8f8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d836c57422c17001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a442f1a05000000000000000d22374c62778da3b8cde2f8ffedd8c3ad98836c57422c1700000000000405172c42576c838d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d93a5babba590797272727272726855402b16001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a442f1a05000000000000000d22374c62778da3b8cde2f8ffedd8c3ad98836c57422c1700000000000000000000000a121717171717171717140e0400000000000000000000000000000000000000000000000000000000000000000000000000000000001f344a5f748b98989898989898989898989898989898989898989898989898989898989888725c47321d0f0f0c05000000000000000000000000030b0f0f172c42576c839898989898989898989898989898989898989898989898989898989898989079644f3a250f0f0e08000000001f344a5f748ba0b5bda8937c67523c4f647990a5bbd0e5faffead5c0ab95806a543f4c62778da3b8cde2f8ffedd8c3ad98836c57422c17001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a442f1a05000000000000000d22374c62778da3b8cde2f8ffedd8c3ad98836c57422c17001f344a5f748ba0b5cbe0f5fff5e1cebbaca3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a398836c57422c17001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a442f1a05000000000000000d22374c62778da3b8cde2f8ffedd8c3ad98836c57422c170000010d15191a1a2c42576c8398a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a5b1c2bba59079645c5c5c5c5c574a382511001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a442f1a05000000000000000d22374c62778da3b8cde2f8ffedd8c3ad98836c57422c1700000000000000000000101d262c2c2c2c2c2c2c2c29211506000000000000000000000000000000000000000000000000000000000000000000000000000000001f344a5f748ba0adadadadadadadadadadadadadadadadadadadadadadadadadadadad9d88725c473225252421180d000000000000000000000a161f2425252c42576c8398adadadadadadadadadadadadadadadadadadadadadadadadadadadada59079644f3a252525231c120400001f344a5f748ba0b5bda8937c67523c4f647990a5bbd0e5faffead5c0ab95806a543f4c62778da3b8cde2f8ffedd8c3ad98836c57422c17001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a442f1a05000000000000000d22374c62778da3b8cde2f8ffedd8c3ad98836c57422c17001f344a5f748ba0b5cbe0f5fffdebd9cabeb8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8ad98836c57422c17001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a442f1a05000000000000000d22374c62778da3b8cde2f8ffedd8c3ad98836c57422c170002121f292e2f2f2f42576c8398adb8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8bac2cfbba59079644f47474747443a2c1b09001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a442f1a05000000000000000d22374c62778da3b8cde2f8ffedd8c3ad98836c57422c170000000000000000000d1e2e3a41424242424242423d332414020000000000000000000000000000000000000000000000000000000000000000000000000000001f344a5f748ba0b5c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3b39d88725c473a3a3a3a352b1d0d000000000000000009192733393a3a3a42576c8398adc3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3bba59079644f3a3a3a3a372f221302001f344a5f748ba0b5bda8937c67523c4f647990a5bbd0e5faffead5c0ab95806a543f4c62778da3b8cde2f8ffedd8c3ad98836c57422c17001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a442f1a05000000000000000d22374c62778da3b8cde2f8ffedd8c3ad98836c57422c17001f344a5f748ba0b5cbe0f5fffeecdbccc1bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbcc4cdcdcdcdcdcdcdc3ad98836c57422c17001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a442f1a05000000000000000d22374c62778da3b8cde2f8ffedd8c3ad98836c57422c17000f20303c4344444444576c8398adc3ccc1bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbba59079644f3a3232322f281c0e00001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a442f1a05000000000000000d22374c62778da3b8cde2f8ffedd8c3ad98836c57422c17000000000000000000172a3c4c55575757575757575042311e0b0000000000000000000000000000000000000000000000000000000000000000000000000000001f344a5f748ba0b5cbd8d8d8d8d8d4c4b7b0b0b0b0b0b0b0b0b0b0b0b0b0b0b5c0c8b39d88725c4f4f4f4f4f483b2b180500000000000000142637454e4f4f4f4f576c8398adc3c4b7b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b2bbcabba59079644f4f4f4f4f4b40311f0d001f344a5f748ba0b5bda8937c67523c4f647990a5bbd0e5faffead5c0ab95806a543f4c62778da3b8cde2f8ffedd8c3ad98836c57422c17001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a442f1a05000000000000000d22374c62778da3b8cde2f8ffedd8c3ad98836c57422c17001f344a5f748ba0b5cbe0f5fff6e2cfbdaea6a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a8b3c3d6e2e2e2e2d8c3ad98836c57422c17001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a442f1a05000000000000000d22374c62778da3b8cde2f8ffedd8c3ad98836c57422c1700182b3e4e585a5a5a5a5a6c8398adc3bdaea6a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a59079644f3a251d1d1b150b0000001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a442f1a05000000000000000d22374c62778da3b8cde2f8ffedd8c3ad98836c57422c170000000000000000001d32465a696c6c6c6c6c6c6c604e3a25100000000000000000000000000000000000000000000000000000000000000000000000000000001f344a5f748ba0b5cbe0edededdecab7a69b9b9b9b9b9b9b9b9b9b9b9b9b9ba2b3c5b39d8872646464646464594835210c000000000000001b3043556264646464646c8398adc3b7a69b9b9b9b9b9b9b9b9b9b9b9b9b9b9b9b9b9b9b9b9eacbebba590796464646464645e4f3c2814001f344a5f748ba0b5bda8937c67523c4f647990a5bbd0e5faffead5c0ab95806a543f4c62778da3b8cde2f8ffedd8c3ad98836c57422c17001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a442f1a05000000000000000d22374c62778da3b8cde2f8ffedd8c3ad98836c57422c17001f344a5f748ba0b5cbe0f5fff1dcc7b39f919090909090909090909090909090909090909095a6bacfe4f9ffedd8c3ad98836c57422c17001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a442f1a05000000000000000d22374c62778da3b8cde2f8ffedd8c3ad98836c57422c17001e33475b6b6f6f6f6f6f6f8398adc3b39f919090909090909090909090909090909090909090909090909079644f3a250f000000000000001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a442f1a05000000000000000d22374c62778da3b8cde2f8ffedd8c3ad98836c57422c170000000000000000001f344a5f748383838383837c67523c27120000000000000000000000000000000000000000000000000000000000000000000000000000001f344a5f748ba0b5cbe0f5fff0dbc5b09b888686868686868686868686868696abc0b39d8879797979797977644f3a240f000000000000001f34495e737979797979798398adc3b09b88868686868686868686868686868686868686868fa3b8bba590797979797979796b57412c17001f344a5f748ba0b5bda8937c67523c4f647990a5bbd0e5faffead5c0ab95806a543f4c62778da3b8cde2f8ffedd8c3ad98836c57422c17001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a442f1a05000000000000000d22374c62778da3b8cde2f8ffedd8c3ad98836c57422c17001f344a5f748ba0b5cbe0f5fff0dac5b09b86797979797979797979797979797979797979798da3b8cde2f8ffedd8c3ad98836c57422c17001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a442f1a05000000000000000d22374c62778da3b8cde2f8ffedd8c3ad98836c57422c17001f344a5f748686868686868699aec3b09b867979797979797979797979797979797979797979797979797977644f3a240f000000000000001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a442f1a05000000000000000d22374c62778da3b8cde2f8ffedd8c3ad98836c57422c170000000000000000001f344a5f748b98989898937c67523c27120f0e090100000000000000000000000000000000000000000000000000000000000000000000001f344a5f748ba0b5cbe0f5fff0dac5b09b866f6f6f6f6f6f6f6f6f6f6f6f8095abc0b5a29290909090909079644f3a250f070601000000001f344a5f748b9090909090909db0c5b09b866f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f778da3b8bda997909090909090836c57422c17001f344a5f748ba0b5bda8937c67523c4f647990a5bbd0e5faffead5c0ab95806a543f4c62778da3b8cde2f8ffedd8c3ad98836c57422c17001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a442f1a05000000000000000d22374c62778da3b8cde2f8ffedd8c3ad98836c57422c17001f344a5f748ba0b5cbe0ededf0dac5b09b866f6464646464646464646464646464646464778da3b8cde2eeededd8c3ad98836c57422c17001f344a5f748ba0b5cbe0ededf0dac5b09b866f5a442f1a12121212121212121222374c62778da3b8cde2eeededd8c3ad98836c57422c17001f344a5f748b9b9b9b9b9b9ba4b5c5b09b866f64646464646464646464646464646464646464646464646464594835210c000000000000001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a442f1a05000000000000000d22374c62778da3b8cde2f8ffedd8c3ad98836c57422c170000000000000000001f344a5f748ba0adada8937c67523c272525231d1306000000000000000000000000000000000000000000000000000000000000000000001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a5a5a5a5a5a5a5a5a5a6a8095abc0bfb0a6a5a5a5a5a59079644f3a251d1d1b150b0000001f344a5f748ba0a5a5a5a5a5adbbc5b09b866f5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a62778da3b8c6b5a9a5a5a5a5a598836c57422c17001f344a5f748ba0b5bda8937c67523c4f647990a5bbd0e5faffead5c0ab95806a543f4c62778da3b8cde2f8ffedd8c3ad98836c57422c17001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a442f1a05000000000000000d22374c62778da3b8cde2f8ffedd8c3ad98836c57422c17001f344a5f748ba0b5cbd8d8d8dbdac5b09b866f5a4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f62778da3b8cde0d9d8d8d8c3ad98836c57422c17001f344a5f748ba0b5cbd8d8d8dbdac5b09b866f5a442f2727272727272727272727374c62778da3b8cde0d9d8d8d8c3ad98836c57422c17001f344a5f748ba0b0b0b0b0b0b6c2c5b09b866f5a4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f483b2b1805000000000000001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a442f1a05000000000000000d22374c62778da3b8cde2f8ffedd8c3ad98836c57422c170000000000000000001f344a5f748ba0b5bda8937c67523c3a3a3a38302415040000000000000000000000000000000000000000000000000000000000000000001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a4444444444444444546a8095abc0cdc2bbbbbbbbbba59079644f3a3232322f281c0e00001f344a5f748ba0b5bbbbbbbbc0cac5b09b866f5a44444444444444444444444444444c62778da3b8cdc6bdbbbbbbbbad98836c57422c17001f344a5f748ba0b5bda8937c67523c4f647990a5bbd0e5faffead5c0ab95806a543f4c62778da3b8cde2f8ffedd8c3ad98836c57422c17001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a442f1a05000000000000000d22374c62778da3b8cde2f8ffedd8c3ad98836c57422c17001f344a5f748ba0b5c3c3c3c3c7d1c5b09b866f5a443c3c3c3c3c3c3c3c3c3c3c3c3c4c62778da3b8cdcdc5c3c3c3c3ad98836c57422c17001f344a5f748ba0b5c3c3c3c3c7d1c5b09b866f5a443c3c3c3c3c3c3c3c3c3c3c3c3c4c62778da3b8cdcdc5c3c3c3c3ad98836c57422c17001f344a5f748ba0b5c3c3c3c3c7d1c5b09b866f5a443c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c372d1f0e00000000000000001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a442f1a05000000000000000d22374c62778da3b8cde2f8ffedd8c3ad98836c57422c170000000000000000001f344a5f748ba0b0b0a8937c67524f4f4f4f4c4233220f0000000000000000000000000000000000000000000000000000000000000000001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a442f2f2f2f2f2f3f546a8095abb8b8b8b8bac2cfbba59079644f47474747443a2c1b09001f344a5f748ba0b5cbd0d0d0d4dac5b09b866f5a442f2f2f2f2f2f2f2f2f2f2f2f374c62778da3b8cdd8d2d0d0d0c3ad98836c57422c17001f344a5f748ba0b5bda8937c67523c4f647990a5bbd0e5faffead5c0ab95806a543f4c62778da3b8cde2f8ffedd8c3ad98836c57422c17001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a442f1a05000000000000000d22374c62778da3b8cde2f8ffedd8c3ad98836c57422c17001f344a5f748ba0adadadadadb3c0c5b09b866f5a52525252525252525252525252525262778da3b8cabbb0adadadadad98836c57422c17001f344a5f748ba0adadadadadb3c0c5b09b866f5a52525252525252525252525252525262778da3b8cabbb0adadadadad98836c57422c17001f344a5f748ba0adadadadadb3c0c5b09b866f5a5252525252525252525252525252525252525252525252514a3d2c1a06000000000000001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a442f1a05000000000000000d22374c62778da3b8cde2f8ffedd8c3ad98836c57422c170000000000000000001f344a5f748b9b9b9b9b937c67646464646460513e2b160200000000000000000000000000000000000000000000000000000000000000001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a442f1a1a1a1a2a3f546a8095a3a3a3a3a3a5b1c2bba59079645c5c5c5c5c574a382511001f344a5f748ba0b5cbe0e5e5e8dac5b09b866f5a442f1a1a1a1a1a1a1a1a1a1a22374c62778da3b8cde2e6e5e5d8c3ad98836c57422c17001f344a5f748ba0b5bda8937c67523c4f647990a5bbd0e5faffead5c0ab95806a543f4c62778da3b8cde2f8ffedd8c3ad98836c57422c17001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a442f1a05000000000000000d22374c62778da3b8cde2f8ffedd8c3ad98836c57422c17001f344a5f748b989898989898a2b3c5b09b866f6767676767676767676767676767676767778da3b8c0ad9d989898989898836c57422c17001f344a5f748b989898989898a2b3c5b09b866f6767676767676767676767676767676767778da3b8c0ad9d989898989898836c57422c17001f344a5f748b989898989898a2b3c5b09b866f676767676767676767676767676767676767676767676767665b4936210d000000000000001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a442f1a05000000000000000d22374c62778da3b8cde2f8ffedd8c3ad98836c57422c170000000000000000001f344a5f748686868686867c7979797979796e59442f1a0500000000000000000000000000000000000000000000000000000000000000001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a442f1a0500152a3f546a808d8d8d8d8d8d93a5babba590797272727272726855402b16001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a442f1a05000000000000000d22374c62778da3b8cde2f8ffedd8c3ad98836c57422c17001f344a5f748ba0b5bda8937c67523c4f647990a5bbd0e5faffead5c0ab95806a543f4c62778da3b8cde2f8ffedd8c3ad98836c57422c17001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a442f1a05000000000000000d22374c62778da3b8cde2f8ffedd8c3ad98836c57422c17001f344a5f748383838383838498adc3b09b867c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c8da3b8bba590838383838383836c57422c17001f344a5f748383838383838498adc3b09b867c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c8da3b8bba590838383838383836c57422c17001f344a5f748383838383838498adc3b09b867c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c79644f3a240f000000000000001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a442f1a05000000000000000d22374c62778da3b8cde2f8ffedd8c3ad98836c57422c170000000000000000001e33475b6b6f6f6f6f6f6f839090909090866f5a442f1a0707040000000000000000000000000000000000000000000000000000000000001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a442f1a050014293f5368777777777777778da3b8bba692888888888888836c57422c17001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a442f1a05000000000000000d22374c62778da3b8cde2f8ffedd8c3ad98836c57422c17001f344a5f748ba0b5bda8937c67523c4f647990a5bbd0e5faffead5c0ab95806a543f4c62778da3b8cde2f8ffedd8c3ad98836c57422c17001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a442f1a05000000000000000d22374c62778da3b8cde2f8ffedd8c3ad98836c57422c17001d32465a696c6c6c6c6c6c8398adc3b4a1949393939393939393939393939393939393939397a8bbbba590796c6c6c6c6c6c64533f2a15001d32465a696c6c6c6c6c6c8398adc3b4a1949393939393939393939393939393939393939397a8bbbba590796c6c6c6c6c6c64533f2a15001d32465a696c6c6c6c6c6c8398adc3b4a1949393939393939393939393939393939393939393939393939079644f3a250f000000000000001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a442f1a05000000000000000d22374c62778da3b8cde2f8ffedd8c3ad98836c57422c17000000000000000000182b3e4e585a5a5a5a5a6c8398a5a5a59b866f5a442f1d1d1c181005000000000000000000000000000000000000000000000000000000001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a442f1a05001025384b5a626262626262778da3b8c2b0a29d9d9d9d9d98836c57422c17001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a442f1a05000000000000000d22374c62778da3b8cde2f8ffedd8c3ad98836c57422c17001f344a5f748ba0b5bda8937c67523c4f647990a5bbd0e5faffead5c0ab95806a543f4c62778da3b8cde2eeededd8c3ad98836c57422c17001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a442f1a12121212121212121222374c62778da3b8cde2eeededd8c3ad98836c57422c1700172a3c4c5557575757576c8398adc3bfb0a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8aab5c5bba59079645757575757534636231000172a3c4c5557575757576c8398adc3bfb0a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8aab5c5bba59079645757575757534636231000172a3c4c5557575757576c8398adc3bfb0a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a59079644f3a250f000000000000001f344a5f748ba0b5cbe0f5f5f0dac5b09b866f5a442f1a05000000000000000d22374c62778da3b8cde2f5f5edd8c3ad98836c57422c170000000000000000000f20303c4344444444576c8398adbbb09b866f5a44323232312c2215060000000000000000000000000000000000000000000000000000001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a442f1a0500091c2d3d484c4c4c4c4c62778da3b8cdbfb5b3b3b3b3ad98836c57422c17001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a442f1a05000000000000000d22374c62778da3b8cde2f8ffedd8c3ad98836c57422c17001f344a5f748ba0b5bda8937c67523c4f647990a5bbd0e5faffead5c0ab95806a543f4c62778da3b8cde0d9d8d8d8c3ad98836c57422c17001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a442f2727272727272727272727374c62778da3b8cde0d9d8d8d8c3ad98836c57422c17000d1e2e3a4142424242576c8398adc3cbc3bebdbdbdbdbdbdbdbdbdbdbdbdbdbdbdbdbdbdbdbfc7cbbba59079644f424242423f36281806000d1e2e3a4142424242576c8398adc3cbc3bebdbdbdbdbdbdbdbdbdbdbdbdbdbdbdbdbdbdbdbfc7cbbba59079644f424242423f36281806000d1e2e3a4142424242576c8398adc3cbc3bebdbdbdbdbdbdbdbdbdbdbdbdbdbdbdbdbdbdbdbdbdbdbba59079644f3a250f000000000000001f344a5f748ba0b5cbe0e0e0e0dac5b09b866f5a442f1a05000000000000000d22374c62778da3b8cde0e0e0e0d8c3ad98836c57422c1700000000000000000002121f292e2f2f2f42576c8398adb8b09b866f5a4747474746403324120000000000000000000000000000000000000000000000000000001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a442f1a0500000f1f2b34373737374c62778da3b8cdd1cac8c8c8c3ad98836c57422c17001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a442f1a05000000000000000d22374c62778da3b8cde2f8ffedd8c3ad98836c57422c17001f344a5f748ba0b5bda8937c67523c4f647990a5bbd0e5faffead5c0ab95806a543f4c62778da3b8cdcdc5c3c3c3c3ad98836c57422c17001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a443c3c3c3c3c3c3c3c3c3c3c3c3c4c62778da3b8cdcdc5c3c3c3c3ad98836c57422c170000101d262c2c2c2c42576c8398adb5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5a59079644f3a2c2c2c2a23180a000000101d262c2c2c2c42576c8398adb5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5a59079644f3a2c2c2c2a23180a000000101d262c2c2c2c42576c8398adb5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5a59079644f3a250f000000000000001f344a5f748ba0b5cbcbcbcbcbcbc5b09b866f5a442f1a05000000000000000d22374c62778da3b8cbcbcbcbcbcbc3ad98836c57422c1700000000000000000000010d15191a1a2c42576c8398a3a3a39b866f5c5c5c5c5c5b51412f1b0700000000000000000000000000000000000000000000000000001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a442f1a050000010e181f222222374c62778da3b8cde2dfddddd8c3ad98836c57422c17001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a442f1a05000000000000000d22374c62778da3b8cde2f8ffedd8c3ad98836c57422c17001f344a5f748ba0b5bda8937c67525252647990a5bbd0e5faffead5c0ab95806a54525262778da3b8cabbb0adadadadad98836c57422c17001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a52525252525252525252525252525262778da3b8cabbb0adadadadad98836c57422c170000000a121717172c42576c8398a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a09079644f3a25171715100600000000000a121717172c42576c8398a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a09079644f3a25171715100600000000000a121717172c42576c8398a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a09079644f3a250f000000000000001f344a5f748ba0b5b5b5b5b5b5b5b5b09b866f5a442f1a05000000000000000d22374c62778da3b5b5b5b5b5b5b5b5ad98836c57422c17000000000000000000000000000000172c42576c838d8d8d8d8d867272727272726f5f4a36210c00000000000000000000000000000000000000000000000000001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a442f1a0500000000050b0d0d22374c62778da3b8cde2f4f2edd8c3ad98836c57422c17001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a442f1a05000000000000000d22374c62778da3b8cde2f8ffedd8c3ad98836c57422c17001f344a5f748ba0b5bda8937c67676767677990a5bbd0e5faffead5c0ab95806a67676767778da3b8c0ad9d989898989898836c57422c17001f344a5f748ba0b5cbe0f5fff0dac5b09b866f6767676767676767676767676767676767778da3b8c0ad9d989898989898836c57422c1700000000000000172c42576c838b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b79644f3a250f00000000000000000000000000172c42576c838b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b79644f3a250f00000000000000000000000000172c42576c838b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b79644f3a250f000000000000001f344a5f748ba0a0a0a0a0a0a0a0a0a09b866f5a442f1a05000000000000000d22374c62778da0a0a0a0a0a0a0a0a0a098836c57422c17000000000000000000000000000000172c41566a7777777777777988888888888877624c37220d00000000000000000000000000000000000000000000000000001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a442f1a05000000000000000d22374c62778da3b8cde2f8ffedd8c3ad98836c57422c17001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a442f1a05000000000000000d22374c62778da3b8cde2f8ffedd8c3ad98836c57422c17001f344a5f748ba0b5bda8937c7c7c7c7c7c7c90a5bbd0e5faffead5c0ab95807c7c7c7c7c7c8da3b8bba590838383838383836c57422c17001f344a5f748ba0b5cbe0f5fff0dac5b09b867c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c8da3b8bba590838383838383836c57422c1700000000000000172c415569747474747474747474747474747474747474747474747474747474747474747473624e39240f00000000000000000000000000172c415569747474747474747474747474747474747474747474747474747474747474747473624e39240f00000000000000000000000000172c415569747474747474747474747474747474747474747474747474747474747474747473624e39240f000000000000001f344a5f748b8b8b8b8b8b8b8b8b8b8b8b866f5a442f1a05000000000000000d22374c62778b8b8b8b8b8b8b8b8b8b8b8b836c57422c1700000000000000000000000000000013273b4d5c62626262626479909d9d9d9d8d77624c37221515120c03000000000000000000000000000000000000000000001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a442f1a05000000000000000d22374c62778da3b8cde2f8ffedd8c3ad98836c57422c17001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a442f1a05000000000000000d22374c62778da3b8cde2f8ffedd8c3ad98836c57422c17001f344a5f748ba0b5c0ac9b9393939393939399aabed2e7f5f5ecd7c3af9d9393939393939397a8bbbba590796c6c6c6c6c6c64533f2a15001f344a5f748ba0b5cbe0f5f5f1dcc8b4a1949393939393939393939393939393939393939397a8bbbba590796c6c6c6c6c6c64533f2a150000000000000012263a4c5a5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5e5545331f0b0000000000000000000000000012263a4c5a5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5e5545331f0b0000000000000000000000000012263a4c5a5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5e5545331f0b000000000000001f34495d70747474747474747474747474746b58432e1904000000000000000c21364b6071747474747474747474747474746955412c170000000000000000000000000000000b1e2f3e494c4c4c4c4f647990a5b3b3a38d77624c372a2a2a272014060000000000000000000000000000000000000000001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a442f1a05000000000000000d22374c62778da3b8cde2f8ffedd8c3ad98836c57422c17001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a442f1a05000000000000000d22374c62778da3b8cde2f8ffedd8c3ad98836c57422c17001f344a5f748ba0b5c9b9aca8a8a8a8a8a8a8abb7c7d9e0e0e0e0deccbbaea8a8a8a8a8a8a8aab5c5bba590796457575757575346362310001f344a5f748ba0b5cbe0e0e0e0e0d0bfb0a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8aab5c5bba590796457575757575346362310000000000000000a1d2e3c464a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a494337271603000000000000000000000000000a1d2e3c464a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a494337271603000000000000000000000000000a1d2e3c464a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a494337271603000000000000001a2e41515d5f5f5f5f5f5f5f5f5f5f5f5f5f5b4e3c29150000000000000000081c3043535e5f5f5f5f5f5f5f5f5f5f5f5f5f5a4c3a26120000000000000000000000000000000111202d353737373a4f647990a5bbb8a38d77624c3f3f3f3f3b3224140300000000000000000000000000000000000000001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a442f1a05000000000000000d22374c62778da3b8cde2f8ffedd8c3ad98836c57422c17001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a442f1a05000000000000000d22374c62778da3b8cde2f8ffedd8c3ad98836c57422c17001f344a5f748ba0b5cbc9c0bdbdbdbdbdbdbdbfc8cbcbcbcbcbcbcbcbcbc1bdbdbdbdbdbdbdbfc7cbbba59079644f424242423f36281806001f344a5f748ba0b5cbcbcbcbcbcbcbcbc3bebdbdbdbdbdbdbdbdbdbdbdbdbdbdbdbdbdbdbdbfc7cbbba59079644f424242423f362818060000000000000000101e2a323434343434343434343434343434343434343434343434343434343434343434343026190a000000000000000000000000000000101e2a323434343434343434343434343434343434343434343434343434343434343434343026190a000000000000000000000000000000101e2a323434343434343434343434343434343434343434343434343434343434343434343026190a000000000000000011233341494a4a4a4a4a4a4a4a4a4a4a4a4a473e301f0d00000000000000000114253542494a4a4a4a4a4a4a4a4a4a4a4a4a463c2e1d0a00000000000000000000000000000000020f19202222253a4f647990a5ababa38d776254545454544f4232200c00000000000000000000000000000000000000001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a442f1a05000000000000000d22374c62778da3b8cde2f8ffedd8c3ad98836c57422c17001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a442f1a05000000000000000d22374c62778da3b8cde2f8ffedd8c3ad98836c57422c17001f344a5f748ba0b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5a59079644f3a2c2c2c2a23180a00001f344a5f748ba0b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5a59079644f3a2c2c2c2a23180a000000000000000000000d171d1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1b140900000000000000000000000000000000000d171d1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1b140900000000000000000000000000000000000d171d1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1b14090000000000000000000515232e3434343434343434343434343434332b2012010000000000000000000817252f3434343434343434343434343434322a1e1000000000000000000000000000000000000000060b0d0f253a4f647990959595958d776a6a6a6a6a6a614f3b271200000000000000000000000000000000000000001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a442f1a05000000000000000d22374c62778da3b8cde2f8ffedd8c3ad98836c57422c17001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a442f1a05000000000000000d22374c62778da3b8cde2f8ffedd8c3ad98836c57422c17001f344a5f748ba0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a09079644f3a2517171510060000001f344a5f748ba0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a09079644f3a2517171510060000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005111a1f1f1f1f1f1f1f1f1f1f1f1f1f1f1e180f02000000000000000000000007121b1f1f1f1f1f1f1f1f1f1f1f1f1f1f1d170d00000000000000000000000000000000000000000000000f253a4f6479808080808080808080808080806a543f2a1500000000000000000000000000000000000000001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a442f1a05000000000000000d22374c62778da3b8cde2f8ffedd8c3ad98836c57422c17001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a442f1a05000000000000000d22374c62778da3b8cde2f8ffedd8c3ad98836c57422c17001f344a5f748b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b79644f3a250f000000000000001f344a5f748b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b79644f3a250f0000000000000000000000000000000b151b1d1d1d1d1d1d1d1d1d1d1d1d1d1c181009141a1d1d1d1d1d1d1d1d1d1d1d1d1d1c191106000000000000000000000001080c0d0d0d0d0d0d0d0d0d0d0d0d0d0d0d0d0d0d0d0d0d0d0d0d0d0d0d0d0d0d0d0d0d0d0d0d0d0d0d0d0d0d0d0d0d0b060000000000000000000000000000000000000000000000000000070c0d0d0d0d0d0d0d0d0d0d0d0d0d0d0d0d0d0d0d0c090300000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000d22364a5d696a6a6a6a6a72889595959595806a543f2a150d0c0700000000000000000000000000000000001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a442f1a05000000000003050d22374c62778da3b8cde2f8faedd8c3ad98836c57422c17001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a442f1a05000000000000000d22374c62778da3b8cde2f8ffedd8c3ad98836c57422c17001f34495d70747474747474747474747474747474747474747474747474747474747474747474747474747473624e39240f000000000000001f34495d70747474747474747474747474747474747474747474747474747474747474747474747474747473624e39240f00000000000000000000000000000e1c282f32323232323232323232323232312c221b272f32323232323232323232323232322d24170800000000000000000008141c2122222222222222222222222222222222222222222222222222222222222222222222222222222222222222222220190f020000000000000000000000000000000000000000000006121b2122222222222222222222222222222222222222221e160b00000000000000000000010d15191a1a1a1a1a1a1a1710060000000000000b14191a1a1a1a1a1a1a1811070000000000000a13191a1a1a1a1a1a1a1812090000000000000000000000000000000000000000000000071b2d3f4c54545454545c72889dababab95806a543f2a2222211b12060000000000000000000000000000001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a442f1a050000000711181a1a22374c62778da3b8cde2e6e5e5d8c3ad98836c57422c17001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a442f1a05000000000000000d22374c62778da3b8cde2f8ffedd8c3ad98836c57422c17001a2e41515d5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5e5545331f0b000000000000001a2e41515d5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5e5545331f0b00000000000000000000000000091b2c3a44474747474747474747474747474640332a384347474747474747474747474747474135261402000000000000000717253036373737373737373737373737373737373737373737373737373737373737373737373737373737373737373737352d20110100000000000000000000000000000000000000000515242f36373737373737373737373737373737373737373732281b0b000000000000000002121f292e2f2f2f2f2f2f2f2b23170800000000101d282e2f2f2f2f2f2f2f2c24190a000000000e1c272d2f2f2f2f2f2f2f2d261a0c000000000000000000000000000000000000000000000010212f3a3f3f3f3f475c72889db3c0ab95806a543f373737362f24150500000000000000000000000000001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a442f1a0500000a19242c2f2f2f374c62778da3b8cdd8d2d0d0d0c3ad98836c57422c17001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a442f1a05000000000000000d22374c62778da3b8cde2f8ffedd8c3ad98836c57422c170011233341494a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4943372716030000000000000011233341494a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a494337271603000000000000000000000000001125384a575c5c5c5c5c5c5c5c5c5c5c5c5c5b51413648565c5c5c5c5c5c5c5c5c5c5c5c5c5c5344311e0a00000000000000122535434b4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c493e2f1e0b0000000000000000000000000000000000000000102233414a4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4639291704000000000000000f20303c43444444444444443f3526150300000c1e2e3b4344444444444444403628170500000a1c2c39424444444444444441382a1a080000000000000000000000000000000000000000000003111d262a2a2a32475c72889db3b3ab95806a544c4c4c4c4a4133221000000000000000000000000000001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a442f1a05000517283640444444444c62778da3b8cdc6bdbbbbbbbbad98836c57422c17001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a442f1a05000000000000000d22374c62778da3b8cde2f8ffedd8c3ad98836c57422c17000515232e343434343434343434343434343434343434343434343434343434343434343434343434343434343026190a00000000000000000515232e343434343434343434343434343434343434343434343434343434343434343434343434343434343026190a0000000000000000000000000000162b405568727272727272727272727272726f5f4a3e52667272727272727272727272727270614d38230e000000000000001b2f4253606262626262626262626262626262626262626262626262626262626262626262626262626262626262626262625c4d3b27130000000000000000000000000000000000000000182c40515f6262626262626262626262626262626262626261574734200b00000000000000182b3e4e585a5a5a5a5a5a5a5244321f0c000016293c4c575a5a5a5a5a5a5a544635220e00001327394a565a5a5a5a5a5a5a55483724110000000000000000000000000000000000000000000000000a1114151d32475c72889d9d9d9d95806a62626262625f51402c1804000000000000000000000000001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a442f1a05000e223546545a5a5a5a5a62778da3b8c6b5a9a5a5a5a5a598836c57422c17001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a442f1a05000000000000000d22374c62778da3b8cde2f8ffedd8c3ad98836c57422c17000005111a1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1b14090000000000000000000005111a1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1b1409000000000000000000000000000000172c42576c8388888888888888888888888877624c3f546a8088888888888888888888888879644f3a250f000000000000001f34495e717777777777777777777777777777777777777777777777777777777777777777777777777777777777777777776a56412c1700000000000000000000000000000000000000001c31465b6f7777777777777777777777777777777777777775634e39240f000000000000001e33475b6b6f6f6f6f6f6f6f624f3a261100001b3045596a6f6f6f6f6f6f6f64513d28130000192d4256686f6f6f6f6f6f6f6654402b16000000000000000000000000000000000000000000000000000000001d32475c72888888888888807777777777776f5b46311c07000000000000000000000000001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a442f1a050013283d51646f6f6f6f6f6f778da3b8bda997909090909090836c57422c17001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a442f1a05000000000000000d22374c62778da3b8cde2f8ffedd8c3ad98836c57422c170000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000008101415172c42576c83989d9d9d9d9d9d9d9d9d9d8d77624c3f546a80959d9d9d9d9d9d9d9d9d9d9079644f3a251515130d040000001f344a5f748b8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d836c57422c1700000000000405050505050505020000000205051d32475c72888d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d79644f3a250f050300000000001f344a5f748686868686867c67523c271200001d32475c72868686868686806a543f2a1500001a2f445a6f868686868686836c57422c17000000000000000000000000000000000000000000000000000000001c31455a6c727272727272808d8d8d8d8d88725c47321d07050200000000000000000000001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a442f1a0500152a3f546a808686868686868fa3b8bba590797979797979796b57412c17001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a442f1a05000000000000000d22374c62778da3b8cde2f8ffedd8c3ad98836c57422c170000030f171c1d1d1d1d1d1d1d1d1d1d1d1d1d1b160c0000000000000000000000000510181c1d1d1d1d1d1d1d1d1d1d1d1d1d1b150b00000000030f171c1d1d1d1d1d1d1d1d1d1d1d1d1d1d1d1d1d1d1d1d1d1d1d1d1d1d1d1d1d1d1d1d1d1d1d1d1d1d1d1d1d1d1d1d1d1b150b000000000e1a24292a2a2c42576c8398adb3b3b3b3b3b3b3b3a38d77624c3f546a8095abb3b3b3b3b3b3b3b3a59079644f3a2a2a2a2821160800001f344a5f748ba0a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a398836c57422c170000010d15191a1a1a1a1a1a1a1710060f161a1a1d32475c72889da3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a39079644f3a251a1a1812090000001f344a5f748b9b9b9b9b937c67523c271200001d32475c72889b9b9b9b95806a543f2a1500001a2f445a6f869b9b9b9b98836c57422c1700000000000000000000000000000000000000000000000000000000162a3d4e5a5c5c5c5c5c6a8095a3a3a39d88725c47321d1a1a160f040000000000000000001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a442f1a1212152a3f546a80959b9b9b9b9b9eacbebba590796464646464645e4f3c2814001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a442f1a05000000000000000d22374c62778da3b8cde2f8ffedd8c3ad98836c57422c17000413212b313232323232323232323232323230291e10000000000000000000000615222c31323232323232323232323232322f281c0e00000413212b313232323232323232323232323232323232323232323232323232323232323232323232323232323232323232322f281c0e00000c1d2c373e3f3f3f42576c8398adc3c8c5c0c0c0c0b8a38d77624c3f546a8095abc0c0c0c0c1c8c8bba59079644f3f3f3f3f3c33261605001f344a5f748ba0b5b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8ad98836c57422c170002121f292e2f2f2f2f2f2f2f2b2317222b2f2f2f32475c72889db3b8b8b8b8b8b8b8b8b8b8b8b8b8b8a59079644f3a2f2f2f2d261a0c00001f344a5f748ba0b0b0a8937c67523c271200001d32475c72889db0b0ab95806a543f2a1500001a2f445a6f869bb0b0ad98836c57422c17000000000000000000000000000000000000000000000000000000000e1f303d4547474747546a8095abb8b39d88725c47322f2f2f2b22150600000000000000001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a442f272727272a3f546a8095abb0b0b0b0b2bbcabba59079644f4f4f4f4f4b40311f0d001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a442f1a05000000000000000d22374c62778da3b8cde2f8ffedd8c3ad98836c57422c17001022323e4647474747474747474747474747453c2e1d0b000000000000000000122433404647474747474747474747474747443a2c1b09001022323e46474747474747474747474747474747474747474747474747474747474747474747474747474747474747474747443a2c1b090016293b495354545454576c8398adc3c0b3abababababa38d77625454546a8095abababababadb7c7bba59079645454545454504434220f001f344a5f748ba0b5bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbad98836c57422c17000f20303c43444444444444443f3526333e44444444475c72889db3c8cdcdcdcdcdcdcdc2bbbbbbbbbba59079644f4444444441382a1a08001f344a5f748ba0b5bda8937c67523c271200001d32475c72889db3c0ab95806a543f2a1500001a2f445a6f869bb0c3ad98836c57422c170000000000000000000000000000000000000000000000000000000002121f2a313232323f546a8095abbbb39d88725c47444444443e33241301000000000000001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a443c3c3c3c3c3c3f546a8095abc0c5c5c3c3c3c3bba59079644f3a3a3a3a372f221302001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a442f1a05000000000000000d22374c62778da3b8cde2f8ffedd8c3ad98836c57422c1700192d3f505b5c5c5c5c5c5c5c5c5c5c5c5c5c594c3b28140000000000000000071b2f41515b5c5c5c5c5c5c5c5c5c5c5c5c5c574a38251100192d3f505b5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c574a382511001d314558676a6a6a6a6a6c8398adc3b5a29695959595958d776a6a6a6a6a8095959595959599a9bcbba590796a6a6a6a6a6a62513e2a15001f344a5f748ba0a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a598836c57422c1700182b3e4e585a5a5a5a5a5a5a5244324251595a5a5a5a5c72889db3c8dde2e2e2e2d1bfb0a6a5a5a5a5a59079645a5a5a5a5a5548372411001f344a5f748ba0b5bda8937c67523c271200001d32475c72889db3c0ab95806a543f2a1500001a2f445a6f869bb0c3ad98836c57422c170000000000000000000000000000000000000000000000000000000000020e161c1d1d2a3f546a8095a5a5a59d88725c5a5a5a5a595142301d09000000000000001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a5252525252525252546a8095abc0c4b6aeadadadada59079644f3a252525231c120400001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a442f1a05000000000000000d22374c62778da3b8cde2f8ffedd8c3ad98836c57422c17001e33485c6e727272727272727272727272726a57432e1904000000000000000c21364a5f6f727272727272727272727272726855402b16001e33485c6e7272727272727272727272727272727272727272727272727272727272727272727272727272727272727272726855402b16001f344a5f748080808080808398adc3b09b86808080808080808080808080808080808080808da3b8bba590808080808080806c57422c17001f344a5f748b90909090909090909090909090909090909090909090909090909090909090909090909090909090909090836c57422c17001e33475b6b6f6f6f6f6f6f6f624f3a4c606e6f6f6f6f6f72889db3c8ddf2fff4dfcab5a292909090909090796f6f6f6f6f6f6654402b16001f344a5f748ba0b5bda8937c67523c271200001d32475c72889db3c0ab95806a543f2a1500001a2f445a6f869bb0c3ad98836c57422c1700000000000000000000000000000000000000000000000000000000000000000000152a3f546a80909090909088726f6f6f6f6f6e604c38230e000000000000001f344a5f748ba0b5cbe0f5fff0dac5b09b866f676767676767676767676a8095abc0b8a69a98989898989079644f3a250f0f0e08000000001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a442f1a05000000000000000d22374c62778da3b8cde2f8ffedd8c3ad98836c57422c17001f344a5f74888888888888888888888888866f5a442f1a05000000000000000d22374c6277888888888888888888888888836c57422c17001f344a5f748888888888888888888888888888888888888888888888888888888888888888888888888888888888888888836c57422c17001f344a5f748b959595959596a0b2c5b09b866f6a6a6a6a72889595959595806a6a6a6a6a778da3b8bfab9b959595959595836c57422c17001f34495e737979797979797979797979797979797979797979797979797979797979797979797979797979797979797979796b57412c17001f344a5f748686868686867c67523c4f64798686868686868a9eb3c8ddf3fff2ddc8b39d88797979797979868686868686836c57422c17001f344a5f748ba0b5bda8937c67523c271200001d32475c72889db3c0ab95806a543f2a1500001a2f445a6f869bb0c3ad98836c57422c1700000000000000000000000000000000000000000000000000000000000000000000142a3f54697979797979797986868686868679644f3a250f000000000000001f344a5f748ba0b5cbe0f5fff0dac5b09b867c7c7c7c7c7c7c7c7c7c7c7c8095abc0b39e8983838383838379644f3a250f000000000000001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a442f1a05000000000000000d22374c62778da3b8cde2f8ffedd8c3ad98836c57422c17001f344a5f748b9d9d9d9d9d9d9d9d9d9d9b866f5a442f1a15141009030c12151522374c62778d9d9d9d9d9d9d9d9d9d9d98836c57422c17001f344a5f748b9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d98836c57422c17001f344a5f748ba0abababababb1bec5b09b866f5a54545c72889dababab95806a54545462778da3b8c9b9aeababababab98836c57422c17001b304355626464646464646464646464646464646464646464646464646464646464646464646464646464646464646464645e4f3c2814001f344a5f748b9b9b9b9b937c67523c4f6479909b9b9b9b9b9ca8b9cde1efededddc8b39d8872646464646f869b9b9b9b98836c57422c17001f344a5f748ba0b5bda8937c67523c271200001d32475c72889db3c0ab95806a543f2a1500001a2f445a6f869bb0c3ad98836c57422c170000000000000000000000000000000000000000000000000000000000000000000011263a4c5d646464646464778d9b9b9b9b9079644f3a251212100b020000001f344a5f748ba0b5cbe0f5f5f1dcc8b4a194939393939393939393939393939dafc3b39d88726c6c6c6c6c6b5e4b37230e000000000000001f344a5f748ba0b5cbe0f5f5f0dac5b09b866f5a442f1a05000000000000000d22374c62778da3b8cde2f5f5edd8c3ad98836c57422c17001f344a5f748ba0b3b3b3b3b3b3b3b3b09b866f5a442f2a2a29251c1420272a2a2a374c62778da3b3b3b3b3b3b3b3b3ad98836c57422c17001f344a5f748ba0b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3ad98836c57422c17001f344a5f748ba0b5c0c0c0c0c4cfc5b09b866f5a44475c72889db3c0ab95806a543f4c62778da3b8cdcac2c0c0c0c0ad98836c57422c1700142637454e4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4b40311f0d001f344a5f748ba0b0b0a8937c67523c4f647990a5b0b0b0b0b1b8c6d7e2dad8d8d8c8b39d88725c4f4f5a6f869bb0b0ad98836c57422c17001f344a5f748ba0b5bda8937c67523c271200001d32475c72889db3c0ab95806a543f2a1500001a2f445a6f869bb0c3ad98836c57422c17000000000000000000000000000000000000000000000000000000000000000000000a1d2f3f4a4f4f4f4f4f62778da3b0b0a59079644f3a272727251e140600001f344a5f748ba0b5cbe0e0e0e0e0d0bfb0a8a8a8a8a8a8a8a8a8a8a8a8a8a8aebbc8b39d88725c57575757574f402f1c08000000000000001f344a5f748ba0b5cbe0e0e0e0dac5b09b866f5a442f1a05000000000000000d22374c62778da3b8cde0e0e0e0d8c3ad98836c57422c17001f344a5f748ba0b5c0c0c0c0c4c8c5b09b866f5a443f3f3f3f382d24323b3f3f3f3f4c62778da3b8c8c8c2c0c0c0c0ad98836c57422c17001f344a5f748ba0b5c0c0c0c0c4c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c4c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0ad98836c57422c17001f344a5f748ba0b5cbd5d5d5d9dac5b09b866f5a44475c72889db3c0ab95806a543f4c62778da3b8cdddd7d5d5d5c3ad98836c57422c17000a1b2a353b3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3a31241504001f344a5f748ba0b5bda8937c67523c4f647990a5bbc5c5c5c6cbd6dccfc6c3c3c3c3b39d88725c47445a6f869bb0c3ad98836c57422c17001f344a5f748ba0b5bda8937c67523c271200001d32475c72889db3c0ab95806a543f2a1500001a2f445a6f869bb0c3ad98836c57422c17000000000000000000000000000000000000000000000000000000000000000000000011212d363a3a3a3a4c62778da3b8bba59079644f3c3c3c3c3a31241504001f344a5f748ba0b5cbcbcbcbcbcbcbcbc3bebdbdbdbdbdbdbdbdbdbdbdbdbdc1cbc8b39d88725c47424242413c31221200000000000000001f344a5f748ba0b5cbcbcbcbcbcbc5b09b866f5a442f1a05000000000000000d22374c62778da3b8cbcbcbcbcbcbc3ad98836c57422c17001f344a5f748ba0abababababb1bec5b09b866f5a54545454534b3d32424f545454545462778da3b8c9b9aeababababab98836c57422c17001f344a5f748ba0abababababb1becfddddddddddddddddddddddddcdbdb0abababababababababababababababababab98836c57422c17001f344a5f748ba0b5cbe0eaeaeddac5b09b866f5a44475c72889db3c0ab95806a543f4c62778da3b8cde2eceaead8c3ad98836c57422c170015283947505252525252525252525252525252525252525252525252525252525252525252525252525252525252525252524e4233210e001f344a5f748ba0adada8937c67525252647990a5bbd0dadadbdfe1cfbeb2adadadadad9d88725c47445a6f869badadad98836c57422c17001f344a5f748ba0b5b5a8937c67523c271200001d32475c72889db3b5ab95806a543f2a1500001a2f445a6f869bb0b5ad98836c57422c17000000000000000000000000000000000000000000000000000000000000000000000003101b22252525374c62778da3adada590796452525252524e4233210e001f344a5f748ba0b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b39d88725c47322c2c2c281f130400000000000000001f344a5f748ba0b5b5b5b5b5b5b5b5b09b866f5a442f1a05000000000000000d22374c62778da3b5b5b5b5b5b5b5b5ad98836c57422c17001f344a5f748b959595959596a0b2c5b09b866f6a6a6a6a6a685a483b4f616a6a6a6a6a6a778da3b8bfab9b959595959595836c57422c17001f344a5f748b959595959596a0b2c6daeff2f2f2f2f2f2f2f2edd8c4b09e95959595959595959595959595959595959595836c57422c17001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a44475c72889db3c0ab95806a543f4c62778da3b8cde2f8ffedd8c3ad98836c57422c17001c3144576467676767676767676767676767676767676767676767676767676767676767676767676767676767676767676760503d2914001f344a5f748b98989898937c67676767677990a5bbd0e5f0f0edd9c4b1a098989898989888725c47445a6f869898989898836c57422c17001f344a5f748ba0a0a0a0937c67523c271200001d32475c72889da0a0a095806a543f2a1500001a2f445a6f869ba0a0a098836c57422c1700000000000000000000000000000000000000000000000000000000000000000000000000070d0f0f22374c62778d98989898907967676767676760503d2914001f344a5f748ba0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a09d88725c47321d1717140d020000000000000000001f344a5f748ba0a0a0a0a0a0a0a0a0a09b866f5a442f1a05000000000000000d22374c62778da0a0a0a0a0a0a0a0a0a098836c57422c17001f344a5f748080808080808398adc3b09b8680808080808077624c3f546a808080808080808da3b8bba590808080808080806c57422c17001f344a5f748080808080808398adc3d8edffffffffffffffffead5c0ab9580808080808080808080808080808080808080806c57422c17001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a44475c72889db3c0ab95806a543f4c62778da3b8cde2f8ffedd8c3ad98836c57422c17001f344a5f747c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c6c57422c17001f344a5f748383838383837c7c7c7c7c7c7c90a5bbd0e5faffead5c0ab9683838383838383725c47445a6f838383838383836c57422c17001f344a5f748b8b8b8b8b8b7c67523c271200001d32475c72888b8b8b8b8b806a543f2a1500001a2f445a6f868b8b8b8b8b836c57422c17000000000000000000000000000000000000000000000000000000000000000000000000000000000d22374c62778383838383837c7c7c7c7c7c7c6c57422c17001f344a5f748b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b88725c47321d07000000000000000000000000001f344a5f748b8b8b8b8b8b8b8b8b8b8b8b866f5a442f1a05000000000000000d22374c62778b8b8b8b8b8b8b8b8b8b8b8b836c57422c17001d314558676a6a6a6a6a6c8398adc3b5a29695959595958d77624c3f546a8095959595959599a9bcbba590796a6a6a6a6a6a62513e2a15001d314558676a6a6a6a6a6c8398adc3d8edf2f4f8ffffffffffead5c0ab95806a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a62513e2a15001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a44475c72889db3c0ab95806a543f4c62778da3b8cde2f8ffedd8c3ad98836c57422c17001f344a5f748b93939393939393939393939393939393939393939393939393939393939393939393939393939393939393836c57422c17001d32465a696c6c6c6c6c6c8393939393939399aabed2e7f5f5ead5c0ab95806c6c6c6c6c6c6857444155666c6c6c6c6c6c6c64533f2a15001f34495d707474747474747464503b261100001c31465b6e7474747474747467533e29140000192e43586b747474747474746955412c17000000000000000000000000000000000000000000000000000000000000000000000000000000000b2035495c6a6c6c6c6c6c6f869393939393836c57422c17001f34495d7074747474747474747474747474747474747474747474747474747474747474746e5b46311c07000000000000000000000000001f34495d70747474747474747474747474746b58432e1904000000000000000c21364b6071747474747474747474747474746955412c170016293b495354545454576c8398adc3c0b3abababababa38d77624c3f546a8095abababababadb7c7bba59079645454545454504434220f0016293b495354545454576c8398adc3d8dddddfe4eefbffffffead5c0ab95806a545454545454545454545454545454545454504434220f001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a44475c72889db3c0ab95806a543f4c62778da3b8cde2f8ffedd8c3ad98836c57422c17001f344a5f748ba0a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a898836c57422c1700172a3c4c5557575757576c8398a8a8a8a8a8abb7c7d9e0e0e0e0d5c0ab95806a5757575757554a3a384854575757575757575346362310001a2e41515d5f5f5f5f5f5f5f574735210d0000172b3e505c5f5f5f5f5f5f5f5849372410000015293c4e5b5f5f5f5f5f5f5f5a4c3a26120000000000000000000000000000000000000000000000000000000000000000000000000000000006192d3e4d56575757575a6f869ba8a8a898836c57422c17001a2e41515d5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5c503e2b1703000000000000000000000000001a2e41515d5f5f5f5f5f5f5f5f5f5f5f5f5f5b4e3c29150000000000000000081c3043535e5f5f5f5f5f5f5f5f5f5f5f5f5f5a4c3a2612000c1d2c373e3f3f3f42576c8398adc3c8c5c0c0c0c0b8a38d77624c3f546a8095abc0c0c0c0c1c8c8bba59079644f3f3f3f3f3c33261605000c1d2c373e3f3f3f42576c8398adc3c8c8c8cad1ddecfcffffead5c0ab95806a543f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3c33261605001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a44475c72889db3c0ab95806a543f4c62778da3b8cde2f8ffedd8c3ad98836c57422c17001f344a5f748ba0b5bdbdbdbdbdbdbdbdbdbdbdbdbdbdbdbdbdbdbdbdbdbdbdbdbdbdbdbdbdbdbdbdbdbdbdbdbdbdbdad98836c57422c17000d1e2e3a4142424242576c8398adbdbdbdbdbfc8cbcbcbcbcbcbcbc0ab95806a544242424240382c2a3740424242424242423f362818060011233341494a4a4a4a4a4a4a44392a180500000f21323f484a4a4a4a4a4a4a453b2c1a0800000d1f303e474a4a4a4a4a4a4a463c2e1d0a00000000000000000000000000000000000000000000000000000000000000000000000000000000000f202f3b41424242445a6f869bb0bdad98836c57422c170011233341494a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a483f32210f000000000000000000000000000011233341494a4a4a4a4a4a4a4a4a4a4a4a4a473e301f0d00000000000000000114253542494a4a4a4a4a4a4a4a4a4a4a4a4a463c2e1d0a00000e1a24292a2a2c42576c8398adb3b3b3b3b5bfcdb8a38d77624c4c546a8095abc0c8bbb3b3b3b3b3a59079644f3a2a2a2a282116080000000e1a24292a2a2c42576c8398adb3b3b3b3b5bfcedff1ffffead5c0ab95806a544c4c4c4c4a41332a2a2a2a2a2a2a2a2a2a2821160800001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a44475c72889db3c0ab95806a543f4c62778da3b8cde2f8ffedd8c3ad98836c57422c17001f344a5f748ba0b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5ad98836c57422c170000101d262c2c2c2c42576c8398adb5b5b5b5b5b5b5b5b5b5b5b5b5b5ab95806a543f2c2c2c2b251b1a242b2c2c2c2c2c2c2c2a23180a00000515232e343434343434343431281b0c0000000313222d333434343434343431291d0e0000000112202b3334343434343434322a1e1000000000000000000000000000000000000000000000000000000000000000000000000000000000000002111e272c2c2c2f445a6f869bb0b5ad98836c57422c17000515232e343434343434343434343434343434343434343434343434343434343434343434332d22130300000000000000000000000000000515232e3434343434343434343434343434332b2012010000000000000000000817252f3434343434343434343434343434322a1e100000000008101415172c42576c83989d9d9d9d9da2b0c2b8a38d77626262626a8095abc0bbaa9f9d9d9d9d9d9079644f3a251515130d04000000000008101415172c42576c83989d9d9d9d9da2b0c2d5e9feffead5c0ab95806a62626262625f51402c181515151515151515130d040000001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a44475c72889db3c0ab95806a543f4c62778da3b8cde2f8ffedd8c3ad98836c57422c17001f344a5f748ba0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a098836c57422c170000000a121717172c42576c8398a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a095806a543f2a1717161109081116171717171717171510060000000005111a1f1f1f1f1f1f1f1f1c150a00000000000410191e1f1f1f1f1f1f1f1d160c0000000000020f181e1f1f1f1f1f1f1f1d170d0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000010b1317171a2f445a6f869ba0a0a098836c57422c17000005111a1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1e1910040000000000000000000000000000000005111a1f1f1f1f1f1f1f1f1f1f1f1f1f1f1e180f02000000000000000000000007121b1f1f1f1f1f1f1f1f1f1f1f1f1f1f1d170d000000000000000000172c42576c8388888888888892a6bbb8a38d7777777777778095abc0b39f8c88888888888879644f3a250f00000000000000000000000000172c42576c8388888888888892a6bbd0e5fbffead5c0ab95807777777777776f5b46311c07000000000000000000000000001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a44475c72889db3c0ab95806a543f4c62778da3b8cde2f8ffedd8c3ad98836c57422c17001f344a5f748b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b836c57422c1700000000000000172c42576c838b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b806a543f2a1500000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001a2f445a6f868b8b8b8b8b836c57422c170000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000162b4055687272727272727990a5bbbaa5938d8d8d8d8d8d8d99adc1b39d8872727272727270614d38230e00000000000000000000000000162b4055687272727272727990a5bbd0e5fafbebd6c1ad998d8d8d8d8d8d88725c47321d07050200000000000000000000001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a44475c72889db3c0ab95806a543f4c62778da3b8cde2f8ffedd8c3ad98836c57422c17001f34495d707474747474747474747474747474747474747474747474747474747474747474747474747474747474747474746955412c1700000000000000172c415569747474747474747474747474747474747474747467533e291400000000000000000000000000000000000000000000050d11121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212100b0200000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000192e43586b747474747474746955412c170000000a121717171717171717171717171717171717171717171717171717171717171717171717171717171717171717171715100600000000000000000000000000000000000000000000000009111617171717171717150f05000000000000000000000000000000000000000000000000000000001125384a575c5c5c5c5c647990a5bbc2b1a5a3a3a3a3a3a3a3a9b7c8b39d88725c5c5c5c5c5c5344311e0a000000000000000000000000001125384a575c5c5c5c5c647990a5bbd0e5e5e5e9dcc9b7a9a3a3a3a3a39d88725c47321d1a1a160f040000000000000000001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a44475c72889db3c0ab95806a543f4c62778da3b8cde2f8ffedd8c3ad98836c57422c17001a2e41515d5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5a4c3a26120000000000000012263a4c5a5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f58493724100000000000000000000000000000000000000000000c182126272727272727272727272727272727272727272727272727272727272727272727272727272727272727272727251e140600000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000015293c4e5b5f5f5f5f5f5f5f5a4c3a26120000101d262c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2a23180a000000000000000000000000000000000000000000000e1b252b2c2c2c2c2c2c2c2a221608000000000000000000000000000000000000000000000000000000091b2c3a44474747474f647990a5bbcfc2bab8b8b8b8b8b8b8bcc7c8b39d88725c4747474747413526140200000000000000000000000000091b2c3a44474747474f647990a5bbd0d0d0d0d5dfd5c7bcb8b8b8b8b39d88725c47322f2f2f2b22150600000000000000001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a44475c72889db3c0ab95806a543f4c62778da3b8cde2f8ffedd8c3ad98836c57422c170011233341494a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a463c2e1d0a000000000000000a1d2e3c464a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a453b2c1a0800000000000000000000000000000000000000000a1b2a353b3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3a3124150400000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000d1f303e474a4a4a4a4a4a4a463c2e1d0a000d1e2e3a414242424242424242424242424242424242424242424242424242424242424242424242424242424242424242423f3628180600000000000000000000000000000000000000000b1c2c3840424242424242423e342616040000000000000000000000000000000000000000000000000000081a2a3841444444444f647990a5bbd0c4bcbbbbbbbbbbbbbbbfc9c8b39d88725c47444444443e3324130100000000000000000000000000000e1c282f3232323a4f647990a5bbbbbbbbbbc2ceddd8d0cdcdcdc8b39d88725c47444444443e33241301000000000000001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a44475c72889db3c0ab95806a543f4c62778da3b8cde2f8ffedd8c3ad98836c57422c17000515232e34343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434322a1e10000000000000000000101e2a32343434343434343434343434343434343434343431291d0e00000000000000000000000000000000000000000015283947505252525252525252525252525252525252525252525252525252525252525252525252525252525252525252524e4233210e00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000112202b3334343434343434322a1e100000172a3c4c555757575757575757575757575757575757575757575757575757575757575757575757575757575757575757575346362310000000000000000000000000000000000000000015283a4a5557575757575757514433210d000000000000000000000000000000000000000000000000000011243748555a5a5a5a5a647990a5bbc3b3a8a5a5a5a5a5a5a5abb9c8b39d88725c5a5a5a5a595142301d090000000000000000000000000000000b151b1d1d253a4f647990a5a5a5a5a5a6b0bfd1e4e5e2e2ddc8b39d88725c5a5a5a5a595142301d09000000000000001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a44475c72889db3c0ab95806a543f4c62778da3b8cde2f8ffedd8c3ad98836c57422c17000005111a1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1d170d00000000000000000000000d171d1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1d160c000000000000000000000000000000000000000000001c3144576467676767676767676767676767676767676767676767676767676767676767676767676767676767676767676760503d2914000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000020f181e1f1f1f1f1f1f1f1d170d0000001d32465a696c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c64533f2a1500000000000000000000000000000000000000001b2f4457686c6c6c6c6c6c6c62503c28130000000000000000000000000000000000000000000000000000162b4054666f6f6f6f6f6f7990a5bbbaa695909090909090909baec2b39d88726f6f6f6f6f6e604c38230e000000000000000000000000000000000000000f253a4f647990909090909092a2b5cadff4fff2ddc8b39d88726f6f6f6f6f6e604c38230e000000000000001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a44475c72889db3c0ab95806a543f4c62778da3b8cde2f8ffedd8c3ad98836c57422c1700000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001f344a5f747c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c6c57422c1700000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001f344a5f748383838383838383838383838383838383838383838383838383838383838383838383838383838383838383836c57422c1700000000000000000000000000000000000000001d32475c72838383838383806a543f2a150000000000000000000000000000000000000000000000000000172c42576c8386868686868691a6bbb8a38d7979797979798095abc0b39e8a86868686868679644f3a250f000000000000000000000000000000000000000f243a4f6477797979797979889db3c8ddf2fff3ddc8b39e8a86868686868679644f3a250f000000000000001f344a5f748ba0b5cbe0f5f5f0dac5b09b866f5a44475c72889db3c0ab95806a543f4c62778da3b8cde2f5f5edd8c3ad98836c57422c170000000a1217171717171717171717171717171717171717171717171717171717171717171717171717171717140d0200000000000a1217171717171717171717171717171717171717171717171717171717171717171717171717171717140d020000000000000000000000000000001f344a5f748b93939393939393939393939393939393939393939393939393939393939393939393939393939393939393836c57422c170000000000000000000000000000000000000000000000020d141717171717171717171717171717171717171717161109000000000000000000000000000000001f344a5f748b98989898989898989898989898989898989898989898989898989898989898989898989898989898989898836c57422c1700000000000000000000000000000000050c0f0f1d32475c72889898989895806a543f2a150f0e0a02000000000000000000000000000000000000050d1112172c42576c83989b9b9b9b9b9faec1b8a38d77646464646a8095abc0b9a89c9b9b9b9b9b9079644f3a251212100b020000000000050d1112121212121212122135485964646464646472889db3c8ddf2fff6e1cdb9a89c9b9b9b9b9b9079644f3a251212100b020000001f344a5f748ba0b5cbe0e0e0e0dac5b09b866f5a44475c72889db3c0ab95806a543f4c62778da3b8cde0e0e0e0d8c3ad98836c57422c170000101d262c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c281f1304000000101d262c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c281f130400000000000000000000000000001f344a5f748ba0a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a898836c57422c170000000000000000000000000000000000000000000004131f282c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2b251b0e0000000000000000000000000000001f344a5f748ba0adadadadadadadadadadadadadadadadadadadadadadadadadadadadadadadadadadadadadadadadad98836c57422c170000000000000000000000000000000d182124252532475c72889dadadab95806a543f2a2525231e1408000000000000000000000000000000000c18212627272c42576c8398adb0b0b0b0b3bdccb8a38d77624f4f546a8095abc0c6b8b1b0b0b0b0a59079644f3a272727251e14060000000c1821262727272727272727272b3b484f4f4f4f4f5c72889db3c8ddf2fffce9d7c6b8b1b0b0b0b0a59079644f3a272727251e140600001f344a5f748ba0b5cbcbcbcbcbcbc5b09b866f5a44475c72889db3c0ab95806a543f4c62778da3b8cbcbcbcbcbcbc3ad98836c57422c17000d1e2e3a414242424242424242424242424242424242424242424242424242424242424242424242424242413c31221200000d1e2e3a414242424242424242424242424242424242424242424242424242424242424242424242424242413c31221200000000000000000000000000001f344a5f748ba0b5bdbdbdbdbdbdbdbdbdbdbdbdbdbdbdbdbdbdbdbdbdbdbdbdbdbdbdbdbdbdbdbdbdbdbdbdbdbdbdad98836c57422c17000000000000000000000000000000000000000000001222313c414242424242424242424242424242424242424240382c1c0b00000000000000000000000000001f344a5f748ba0b5c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3ad98836c57422c1700000000000000000000000000000d1d2b353a3a3a3a475c72889db3c0ab95806a543f3a3a3a383126170600000000000000000000000000000a1b2a353b3c3c3c42576c8398adc3c5c5c3c3c3c3b8a38d77624c3f546a8095abc0c3c3c3c4c5c5bba59079644f3c3c3c3c3a31241504000a1b2a353b3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c475c72889db3c8ddf2fffff4e4d6cbc6c5c5c5bba59079644f3c3c3c3c3a31241504001f344a5f748ba0b5b5b5b5b5b5b5b5b09b866f5a44475c72889db3b5ab95806a543f4c62778da3b5b5b5b5b5b5b5b5ad98836c57422c1700172a3c4c555757575757575757575757575757575757575757575757575757575757575757575757575757574f402f1c0800172a3c4c555757575757575757575757575757575757575757575757575757575757575757575757575757574f402f1c08000000000000000000000000001f344a5f748ba0b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5ad98836c57422c17000000000000000000000000000000000000000000081c2f404f5757575757575757575757575757575757575757554a3a281501000000000000000000000000001f344a5f748ba0b5cbd8d8d8d8d8d4c4b7b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0ad98836c57422c170000000000000000000000000005182b3b484f4f4f4f4f5c72889db3c0ab95806a544f4f4f4f4d443524110000000000000000000000000000152839475052525252576c8398adc3c2b5aeadadadada38d77624c3f546a8095abadadadadafb9c8bba590796452525252524e4233210e00152839475052525252525252525252525252525252525c72889db3c8ddf2fffffff4e8dfdbdadad0bba590796452525252524e4233210e001f344a5f748ba0a0a0a0a0a0a0a0a0a09b866f5a44475c72889da0a0a095806a543f4c62778da0a0a0a0a0a0a0a0a0a098836c57422c17001d32465a696c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6b5e4b37230e001d32465a696c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6b5e4b37230e000000000000000000000000001f344a5f748ba0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a098836c57422c170000000000000000000000000000000000000000000e23374b5e6b6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6857442f1b06000000000000000000000000001f344a5f748ba0b5cbe0edededdecab7a69b9b9b9b9b9b9b9b9b9b9b9b9b9b9b9b9b9b9b9b9b9b9b9b9b9b9b9b9b9b9b98836c57422c17000000000000000000000000000c2135485964646464646472889db3c0ab95806a64646464646153412d1904000000000000000000000000001c3144576467676767676c8398adc3b6a49998989898988d77624c3f546a809598989898989caabdbba5907967676767676760503d2914001c3144576467676767676767676767676767676767676772889db3c8ddf2fffffffffbf4f0f0e5d0bba5907967676767676760503d2914001f344a5f748b8b8b8b8b8b8b8b8b8b8b8b866f5a44475c72888b8b8b8b8b806a543f4c62778b8b8b8b8b8b8b8b8b8b8b8b836c57422c17001f344a5f74838383838383838383838383838383838383838383838383838383838383838383838383838379644f3a250f001f344a5f74838383838383838383838383838383838383838383838383838383838383838383838383838379644f3a250f000000000000000000000000001f344a5f748b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b836c57422c170000000000000000000000000000000000000000000f253a4f647983838383838383838383838383838383838383725c47321d07000000000000000000000000001f344a5f748ba0b5cbe0f5fff0dbc5b09b8886868686868686868686868686868686868686868686868686868686868686836c57422c17000000000000000000000000000f243a4f6477797979797979889db3c0ab9580797979797979705c47321c07000000000000000000000000001f344a5f747c7c7c7c7c7c8398adc3b09b8683838383838377624c3f546a808383838383838ea3b8bba5907c7c7c7c7c7c7c6c57422c17001f344a5f747c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c889db3c8ddf2ffffffffffffffffe5d0bba5907c7c7c7c7c7c7c6c57422c17001f34495d70747474747474747474747474746b5843465b6e7474747474747467533e4b6071747474747474747474747474746955412c17001f344a5f748b9898989898989898989898989898989898989898989898989898989898989898989898989079644f3a250f001f344a5f748b9898989898989898989898989898989898989898989898989898989898989898989898989079644f3a250f000000000000000000000000001f34495d707474747474747474747474747474747474747474747474747474747474747474747474747474747474747474746955412c17000000000000000000000000000000000000080e0f0f253a4f647990989898989898989898989898989898989888725c47321d0f0f0c05000000000000000000001f344a5f748ba0b5cbe0f5fff0dac5b09b866f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6654402b16000000000000000000000106070f253a4f647990909090909092a2b5c2ae9b90909090909088725c47321d07070400000000000000000000001f344a5f748b9393939393939fb1c5b09b866f6c6c6c6c6c6a5c493c50626c6c6c6c6c6c778da3b8beaa99939393939393836c57422c17001f344a5f748b93939393939393939393939393939393939395a3b6cadff4f5f5f5f5f5f5f5f5e7d2beaa99939393939393836c57422c17001a2e41515d5f5f5f5f5f5f5f5f5f5f5f5f5f5b4e3c3e505c5f5f5f5f5f5f5f58493743535e5f5f5f5f5f5f5f5f5f5f5f5f5f5a4c3a2612001f344a5f748ba0adadadadadadadadadadadadadadadadadadadadadadadadadadadadadadadadadada59079644f3a250f001f344a5f748ba0adadadadadadadadadadadadadadadadadadadadadadadadadadadadadadadadadada59079644f3a250f000000000000000000000000001a2e41515d5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5a4c3a26120000000000000000000000000000000004121c232525253a4f647990a5adadadadadadadadadadadadadadad9d88725c473225252421180d0000000000000000001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a55483724110000000000000000000b151b1d1d253a4f647990a5a5a5a5a5a6b0bfcab9aba5a5a5a5a59d88725c47321d1d1c1911060000000000000000001f344a5f748ba0a8a8a8a8a8afbdc5b09b866f5a57575757564d3e334451575757575762778da3b8c7b7aba8a8a8a8a898836c57422c17001f344a5f748ba0a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a9b2c1d2e0e0e0e0e0e0e0e0e0e0e0d9c7b7aba8a8a8a8a898836c57422c170011233341494a4a4a4a4a4a4a4a4a4a4a4a4a473e30323f484a4a4a4a4a4a4a453b2c3542494a4a4a4a4a4a4a4a4a4a4a4a4a463c2e1d0a001f344a5f748ba0b5c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3bba59079644f3a250f001f344a5f748ba0b5c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3bba59079644f3a250f0000000000000000000000000011233341494a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a463c2e1d0a0000000000000000000000000000000213222f373a3a3a3a4f647990a5bbc3c3c3c3c3c3c3c3c3c3c3c3c3b39d88725c473a3a3a3a352b1d0d00000000000000001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a44444444444444444444444444444444444444444444444444444444444441382a1a0800000000000000000e1c282f3232323a4f647990a5bbbbbbbbbbc2ced7c9bfbbbbbbbbb39d88725c47323232322d24170800000000000000001f344a5f748ba0b5bdbdbdbdc2cbc5b09b866f5a44424242413b2f26343e424242424c62778da3b8cbc8bfbdbdbdbdad98836c57422c17001f344a5f748ba0b5bdbdbdbdbdbdbdbdbdbdbdbdbdbdbdbdbec4cbcbcbcbcbcbcbcbcbcbcbcbcbcbcbc8bfbdbdbdbdad98836c57422c17000515232e3434343434343434343434343434332b20222d333434343434343431291d252f3434343434343434343434343434322a1e1000001f344a5f748ba0b0b0b0b0b0b0b0b0b0b0b0b3bdccd8d8d8d8d8d8d0c0b5b0b0b0b0b0b0b0b0b0b0b0a59079644f3a250f001f344a5f748ba0b5cbd8d8d8d8d8d4c4b7b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0a59079644f3a250f000000000000000000000000000515232e34343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434322a1e10000000000000000000000000000000000d1f31404b4f4f4f4f4f647990a5bbcabbb2b0b0b0b0b0b0b0b0b0b0b09d88725c4f4f4f4f4f483b2b1805000000000000001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a442f2f2f2f2f2f2f2f2f2f2f2f2f2f2f2f2f2f2f2f2f2f2f2f2f2f2f2f2f2d261a0c0000000000000000091b2c3a44474747474f647990a5bbd0d0d0d0d5dfe6dbd3d0d0d0c8b39d88725c47474747474135261402000000000000001f344a5f748ba0b5b5b5b5b5b5b5b5b09b866f5a442f2c2c2c271e16222a2c2c2c374c62778da3b5b5b5b5b5b5b5b5ad98836c57422c17001f344a5f748ba0b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5ad98836c57422c17000005111a1f1f1f1f1f1f1f1f1f1f1f1f1f1f1e180f10191e1f1f1f1f1f1f1f1d160c121b1f1f1f1f1f1f1f1f1f1f1f1f1f1f1d170d0000001f344a5f748b9b9b9b9b9b9b9b9b9b9b9b9b9faec1d4e9edededd9c5b3a29b9b9b9b9b9b9b9b9b9b9b9b9079644f3a250f001f344a5f748ba0b5cbe0edededdecab7a69b9b9b9b9b9b9b9b9b9b9b9b9b9b9b9b9b9b9b9b9b9b9b9b9b9079644f3a250f000000000000000000000000000005111a1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1d170d000000000000000000000000000000000014283c4f5e6464646464647990a5bbbeac9e9b9b9b9b9b9b9b9b9b9b9b9b8872646464646464594835210c000000000000001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a442f1a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1812090000000000000000001125384a575c5c5c5c5c647990a5bbd0e5e5e5e9f1f8eee7e5e5ddc8b39d88725c5c5c5c5c5c5344311e0a000000000000001f344a5f748ba0a0a0a0a0a0a0a0a0a09b866f5a442f1a1717130b050f15171722374c62778da0a0a0a0a0a0a0a0a0a098836c57422c17001f344a5f748ba0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a098836c57422c170000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001f344a5f748686868686868686868686868691a6bbd0e5faffebd5c0ab968686868686868686868686868679644f3a250f001f344a5f748ba0b5cbe0f5fff0dbc5b09b888686868686868686868686868686868686868686868686868679644f3a250f0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000172c41576b7979797979797990a5bbb8a38f8686868686868686868686868679797979797977644f3a240f000000000000001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a442f1a050000000000000000000000000000000000000000000000000000000000000000000000000000162b4055687272727272727990a5bbd0e5fafffffffffffffff2ddc8b39d8872727272727270614d38230e000000000000001f344a5f748b8b8b8b8b8b8b8b8b8b8b8b866f5a442f1a05000000000000000d22374c62778b8b8b8b8b8b8b8b8b8b8b8b836c57422c17001f344a5f748b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b836c57422c170000000a1217171717171717171717171717171717171717171717171717171717171717171717171717171717140d020000000000000000001e33475b6b6f6f6f6f6f6f6f6f6f6f6f6f7990a5bbd0e5faffead5c0ab95806f6f6f6f6f6f6f6f6f6f6f6f6e604c38230e001f344a5f748ba0b5cbe0f5fff0dac5b09b866f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6e604c38230e000000000000000000000000000000020d141717171717171717171717171717150f050000000000000000000000000000000000000a1217171717171717171717171717171611080000000000000000030707172c42576c8390909090909097a9bdb8a38d776f6f6f6f6f6f6f6f6f6f6f778d909090909079644f3a250f070601000000001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a442f1a050000000000000000000000000000000000000000000000000000000000000000000000000000172c42576c8388888888888892a6bbd0e5fbfffffffffffffff3dec8b39f8c88888888888879644f3a250f000000000000001f34495d70747474747474747474747474746b58432e1904000000000000000c21364b6071747474747474747474747474746955412c17001f34495d707474747474747474747474747474747474747474747474747474747474747474747474747474747474747474746955412c170000101d262c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c281f13040000000000000000182b3e4e585a5a5a5a5a5a5a5a5a5a5a647990a5bbd0e5faffead5c0ab95806a5a5a5a5a5a5a5a5a5a5a5a595142301d09001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a595142301d09000000000000000000000000000004131f282c2c2c2c2c2c2c2c2c2c2c2c2c2c2a22160800000000000000000000000000000000101d262c2c2c2c2c2c2c2c2c2c2c2c2c2c2b241a0c0000000000030f171c1d1d2c42576c8398a5a5a5a5a5a9b5c6b8a38d77625a5a5a5a5a5a5a5a5a62778da3a5a5a59079644f3a251d1d1b150b0000001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a442f1a151515151515151515151515151515151515151514110a00000000000000000000000008101415172c42576c83989d9d9d9d9da2b0c2d5e9ebeaeaeaeaeaeaeaede2cebbaa9f9d9d9d9d9d9079644f3a251515130d040000001a2e41515d5f5f5f5f5f5f5f5f5f5f5f5f5f5b4e3c29150000000000000000081c3043535e5f5f5f5f5f5f5f5f5f5f5f5f5f5a4c3a2612001a2e41515d5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5a4c3a2612000d1e2e3a414242424242424242424242424242424242424242424242424242424242424242424242424242413c31221200000000000000000f20303c43444444444444444444444f647990a5bbd0e5faffead5c0ab95806a5444444444444444444444443e33241301001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a4444444444444444444444444444444444444444444444443e3324130100000000000000000000000000001222313c41424242424242424242424242423e3426160400000000000000000000000000000d1e2e3a414242424242424242424242424240372a1a090000000413212b3132323242576c8398adbbbbbbbbbdc6cdb8a38d77624c444444444444444c62778da3b8bba59079644f3a3232322f281c0e00001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a442f2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a261d11030000000000000000000e1a24292a2a2c42576c8398adb3b3b3b3b5bfcedfdcd6d5d5d5d5d5d5d5d8dfd8c8bbb3b3b3b3b3a59079644f3a2a2a2a28211608000011233341494a4a4a4a4a4a4a4a4a4a4a4a4a473e301f0d00000000000000000114253542494a4a4a4a4a4a4a4a4a4a4a4a4a463c2e1d0a0011233341494a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a463c2e1d0a00172a3c4c555757575757575757575757575757575757575757575757575757575757575757575757575757574f402f1c080000000000000002121f292e2f2f2f2f2f2f2f2f2f3a4f647990a5bbd0e5faffead5c0ab95806a543f2f2f2f2f2f2f2f2f2f2f2b22150600001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a442f2f2f2f2f2f2f2f2f2f2f2f2f2f2f2f2f2f2f2f2f2f2f2b2215060000000000000000000000000000081c2f404f5757575757575757575757575757514433210d0000000000000000000000000000172a3c4c555757575757575757575757575754483826120000001022323e4647474747576c8398adc3cabeb8b8b8b8b8a38d77624c372f2f2f2f2f374c62778da3b8bba59079644f47474747443a2c1b09001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a443f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3a2f211000000000000000000c1d2c373e3f3f3f42576c8398adc3c8c8c8cad1ddd5c9c1c0c0c0c0c0c0c0c4cddbd8cec8c8c8c8bba59079644f3f3f3f3f3c33261605000515232e3434343434343434343434343434332b2012010000000000000000000817252f3434343434343434343434343434322a1e1000000515232e34343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434322a1e1000001d32465a696c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6b5e4b37230e0000000000000000010d15191a1a1a1a1a1a1a1a253a4f647990a5bbd0e5faffead5c0ab95806a543f2a1a1a1a1a1a1a1a1a1a160f040000001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a442f1a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1a160f040000000000000000000000000000000e23374b5e6b6c6c6c6c6c6c6c6c6c6c6c6c6c62503c281300000000000000000000000000001d32465a696c6c6c6c6c6c6c6c6c6c6c6c6c6655412d18000000192d3f505b5c5c5c5c5c6c8398adc3bbaca3a3a3a3a3a38d77624c37221a1a1a22374c62778da3b8bba59079645c5c5c5c5c574a382511001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a5454545454545454545454545454545454545454545454544c3f2d1b070000000000000016293b495354545454576c8398adc3d8dddddfe4d8c7b7adabababababababb0bdcddfe2deddddd0bba59079645454545454504434220f000005111a1f1f1f1f1f1f1f1f1f1f1f1f1f1f1e180f02000000000000000000000007121b1f1f1f1f1f1f1f1f1f1f1f1f1f1f1d170d0000000005111a1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1d170d0000001f344a5f74838383838383838383838383838383838383838383838383838383838383838383838383838379644f3a250f000000000000000000000000000000000000000f253a4f647990a5bbd0e5faffead5c0ab95806a543f2a1500000000000000000000000000001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a442f1a0500000000000000000000000000000000000000000000000000000000000000000000000000000f253a4f6479838383838383838383838383806a543f2a1500000000000000000000000000001f344a5f74838383838383838383838383836f5a442f1a0000001e33485c6e7272727272728398adc3b29e8f8d8d8d8d8d8d77624c37220d000d22374c62778da3b8bba590797272727272726855402b16001f344a5f748ba0b5cbe0f5fff0dac5b09b866f6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a695d4a36220d000000000000001d314558676a6a6a6a6a6c8398adc3d8edf2f4e5d0bca999959595959595959eb0c4d8edf3f2e5d0bba590796a6a6a6a6a6a62513e2a1500000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001f344a5f748b9898989898989898989898989898989898989898989898989898989898989898989898989079644f3a250f000000000000000000000000000000000000000f253a4f647990a5bbd0e5faffead5c0ab95806a543f2a1500000000000000000000000000001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a442f1a0500000000000000000000000000000000000000000000000000000000000000000000000000000f253a4f6479909898989898989898989895806a543f2a1500000000000000000000000000001f344a5f748b9898989898989898989898866f5a442f1a0000001f344a5f74888888888888899aaec3b09b8677777777777773604c37210c000d22374c62778da3b8bba692888888888888836c57422c17001f344a5f748ba0b5cbe0f5fff0dac5b09b868080808080808080808080808080808080808080808080808079644f3a250f000000000000001f344a5f748080808080808398adc3d8edffffe2cdb8a38d8080808080808095abc0d5eaffffe5d0bba590808080808080806c57422c170000030f171c1d1d1d1d1d1d1d1d1d1d1d1d1d1b160c000000000000000000000000000000000000000000000000000000000000000000000000000000000000000611191c1d1d1d1d1d1d1d1d1d1d1d1d1d1a1409000000000000000000000000000000000000000000000000000000001f344a5f748ba0adadadadadadadadadadadadadadadadadadadadadadadadadadadadadadadadadada59079644f3a250f000000000000000000000000000000000000000f253a4f647990a5bbd0e5faffead5c0ab95806a543f2a1500000000000000000000000000001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a442f1a0500000000000000000000000000000000000000000000000000000000000000000000000000000f253a4f647990a5adadadadadadadadab95806a543f2a1500000000000000000000000000001f344a5f748ba0adadadadadadadadad9b866f5a442f1a0000001f344a5f748b9d9d9d9d9d9ea6b6c5b09b866f6262626262605544311d09000d22374c62778da3b8c2b0a29d9d9d9d9d98836c57422c17001f344a5f748ba0b5cbe0f5fff2ddc9b5a2969595959595959595959595959595959595959595959595959079644f3a250f000000000000001f344a5f748b959595959596a0b2c6daeff3f2e2cdb8a38d776a6a6a6a6a8095abc0d5eaf2f3e7d3bfab9b959595959595836c57422c17000413212b313232323232323232323232323230291e1000000000000000000000000000000000000000000000000000000000000000000000000000000000000817242d32323232323232323232323232322f271b0c0000000000000000000000000000000000000000000000000000001f344a5f748ba0b5c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3bba59079644f3a250f000000000000000000000000000000000000000f253a4f647990a5bbd0e5faffead5c0ab95806a543f2a1500000000000000000000000000001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a442f1a0500000000000000000000000000000000000000000000000000000000000000000000000000000f253a4f647990a5bbc3c3c3c3c3c3c0ab95806a543f2a1500000000000000000000000000001f344a5f748ba0b5c3c3c3c3c3c3c3b09b866f5a442f1a0000001f344a5f748ba0b3b3b3b3b3b8c4c5b09b866f5a4c4c4c4c4c4437271502000d22374c62778da3b8cdbfb5b3b3b3b3ad98836c57422c17001f344a5f748ba0b5cbe0f5fff8e4d2c0b3ababababababababababababababababababababababababa59079644f3a250f000000000000001f344a5f748ba0abababababb1becfe2e1ddddddcdb8a38d77625454546a8095abc0d5dddddee4dbc9b9aeababababab98836c57422c17001022323e4647474747474747474747474747453c2e1d0b0000000000000000000000000000000000000000000000000000000000000000000000000000000214263541474747474747474747474747474743382a190700000000000000000000000000000000000000000000000000001f344a5f748ba0b0b0b0b0b0b0b0b0b0b0b0b3bdccd8d8d8d8d8d8d0c0b5b0b0b0b0b0b0b0b0b0b0b0a59079644f3a250f000000000000000000000000000000000000000f253a4f647990a5bbd0e5faffead5c0ab95806a543f2a1500000000000000000000000000001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a442f1a0500000000000000000000000000000000000000000000000000000000000000000000000000000f253a4f647990a5bbd0d8d8d8d8d5c0ab95806a543f2a1500000000000000000000000000001f344a5f748ba0b5cbd8d8d8d8d8c5b09b866f5a442f1a0000001f344a5f748ba0b5c8c8c8c8ccd5c5b09b866f5a44373737373127190900000d22374c62778da3b8cdd1cac8c8c8c3ad98836c57422c17001f344a5f748ba0b5cbe0f5ffffefded0c5c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0bba59079644f3a250f000000000000001f344a5f748ba0b5c0c0c0c0c4cfdcd7cdc8c8c8c8b8a38d77624c3f546a8095abc0c8c8c8c9d0dbd7cac2c0c0c0c0ad98836c57422c1700192d3f505b5c5c5c5c5c5c5c5c5c5c5c5c5c594c3b28140000000000000000000000000000000000000000000000000000000000000000000000000000000a1e3144535c5c5c5c5c5c5c5c5c5c5c5c5c5c564836230f00000000000000000000000000000000000000000000000000001f344a5f748b9b9b9b9b9b9b9b9b9b9b9b9b9faec1d4e9edededd9c5b3a29b9b9b9b9b9b9b9b9b9b9b9b9079644f3a250f000000000000000000000000000000000000000f253a4f647990a5bbd0e5faffead5c0ab95806a543f2a1500000000000000000000000000001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a442f1a0500000000000000000000000000000000000000000000000000000000000000000000000000000f253a4f647990a5bbd0e5ededead5c0ab95806a543f2a1500000000000000000000000000001f344a5f748ba0b5cbe0edededdac5b09b866f5a442f1a0000001f344a5f748ba0b5cbdddddde0dac5b09b866f5a442f2222211d15090000000d22374c62778da3b8cde2dfddddd8c3ad98836c57422c17001f344a5f748ba0b5cbe0f5fffbe8d6c6b9b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3a59079644f3a250f000000000000001f344a5f748ba0b5cbd5d5d5d9e1d6c6b9b3b3b3b3b3a38d77624c3f546a8095abb3b3b3b3b5beccddddd7d5d5d5c3ad98836c57422c17001e33485c6e727272727272727272727272726a57432e190400000000000000000000000000000000000000000000000000000000000000000000000000000e23384d61707272727272727272727272727266523e291400000000000000000000000000000000000000000000000000001f344a5f748686868686868686868686868691a6bbd0e5faffebd5c0ab968686868686868686868686868679644f3a250f000000000000000000000000000000000000000f253a4f647990a5bbd0e5faffead5c0ab95806a543f2a1500000000000000000000000000001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a442f1a0500000000000000000000000000000000000000000000000000000000000000000000000000000f253a4f647990a5bbd0e5faffead5c0ab95806a543f2a1500000000000000000000000000001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a442f1a0000001f344a5f748ba0b5cbe0f2f2f0dac5b09b866f5a442f1a0d0c0902000000000d22374c62778da3b8cde2f4f2edd8c3ad98836c57422c17001f344a5f748ba0b5cbe0f5fff4dfcbb8a89e9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9079644f3a250f000000000000001f344a5f748ba0b5cbe0eaeaeddfcbb8a89e9d9d9d9d9d8d77624c3f546a80959d9d9d9d9da0aebfd3e7eceaead8c3ad98836c57422c17001f344a5f74888888888888888888888888866f5a442f1a0500000000000000000000000000000000000000000000000000000000000000000000000000000f253a4f6479888888888888888888888888806a543f2a1500000000000000000000000000000000000000000000000000001e33475b6b6f6f6f6f6f6f6f6f6f6f6f6f7990a5bbd0e5faffead5c0ab95806f6f6f6f6f6f6f6f6f6f6f6f6e604c38230e000000000000000000000000000000000000000f253a4f647990a5bbd0e5faffead5c0ab95806a543f2a1500000000000000000000000000001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a442f1a0500000000000000000000000000000000000000000000000000000000000000000000000000000f253a4f647990a5bbd0e5faffead5c0ab95806a543f2a1500000000000000000000000000001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a442f1a0000001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a442f1a05000000000000000d22374c62778da3b8cde2f8ffedd8c3ad98836c57422c17001f344a5f748ba0b5cbe0f5fff0dbc6b19c8a8888888888888888888888888888888888888888888888888879644f3a250f000000000000001f344a5f748ba0b5cbe0f5fff0dbc6b19c8a88888888888877624c3f546a8088888888888890a4b9cee3f8ffedd8c3ad98836c57422c17001f344a5f748b9d9d9d9d9d9d9d9d9d9d9b866f5a442f1a0500000000000000000000000000000000000000000000000000000000000000000000040d131515253a4f6479909d9d9d9d9d9d9d9d9d9d95806a543f2a1515140f0700000000000000000000000000000000000000000000182b3e4e585a5a5a5a5a5a5a5a5a5a5a647990a5bbd0e5faffead5c0ab95806a5a5a5a5a5a5a5a5a5a5a5a595142301d09000000000000000000000000000000000000000f253a4f647990a5bbd0e5faffead5c0ab95806a543f2a1500000000000000000000000000001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a442f1a0500000000000000000000000000000000000000000000000000000000000000000000000000000f253a4f647990a5bbd0e5faffead5c0ab95806a543f2a1500000000000000000000000000001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a442f1a0000001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a442f1a05000000000000000d22374c62778da3b8cde2f8ffedd8c3ad98836c57422c17001f344a5f748ba0b5cbe0f5fff0dac5b09b867272727272727272727272727272727272727272727272727270614d38230e000000000000001f344a5f748ba0b5cbe0f5fff0dac5b09b867272727272726f5f4a3e5266727272727272778da3b8cde2f8ffedd8c3ad98836c57422c17001f344a5f748ba0b3b3b3b3b3b3b3b3b09b866f5a442f1a05000000000000000000000000000000000000000000000000000000000000000000081621282a2a2a3a4f647990a5b3b3b3b3b3b3b3b3ab95806a543f2a2a2a2923190c0000000000000000000000000000000000000000000f20303c43444444444444444444444f647990a5bbd0e5faffead5c0ab95806a5444444444444444444444443e33241301000000000000000000000000000000000000000f253a4f647990a5bbd0e5faffead5c0ab95806a543f2a1500000000000000000000000000001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a442f1a0500000000000000000000000000000000000000000000000000000000000000000000000000000f253a4f647990a5bbd0e5faffead5c0ab95806a543f2a1500000000000000000000000000001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a442f1a0000001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a442f1a05000000000000000d22374c62778da3b8cde2f8ffedd8c3ad98836c57422c17001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5344311e0a000000000000001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5c5c5c5c5c5b51413648565c5c5c5c5c62778da3b8cde2f8ffedd8c3ad98836c57422c17001f344a5f748ba0b5c8c8c8c8c8c8c5b09b866f5a442f1a050000000000000000000000000000000000000000000000000000000000000000051626333c3f3f3f3f4f647990a5bbc8c8c8c8c8c8c0ab95806a543f3f3f3f3e362a1b09000000000000000000000000000000000000000002121f292e2f2f2f2f2f2f2f2f2f3a4f647990a5bbd0e5faffead5c0ab95806a543f2f2f2f2f2f2f2f2f2f2f2b22150600000000000000000000000000000000000000000f253a4f647990a5bbd0e5faffead5c0ab95806a543f2a1500000000000000000000000000001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a442f1a0500000000000000000000000000000000000000000000000000000000000000000000000000000f253a4f647990a5bbd0e5faffead5c0ab95806a543f2a1500000000000000000000000000001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a442f1a0000001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a442f1a05000000000000000d22374c62778da3b8cde2f8ffedd8c3ad98836c57422c17001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a4747474747474747474747474747474747474747474747474135261402000000000000001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a474747474640332a3843474747474c62778da3b8cde2f8ffedd8c3ad98836c57422c17001f344a5f748ba0b5cbdddddddddac5b09b866f5a442f1a0500000000000000000000000000000000000000000000000000000000000000000f223444505454545454647990a5bbd0ddddddddd5c0ab95806a54545454545248382714000000000000000000000000000000000000000000010d15191a1a1a1a1a1a1a1a253a4f647990a5bbd0e5faffead5c0ab95806a543f2a1a1a1a1a1a1a1a1a1a160f040000000000000000000000000000000000000000000f253a4f647990a5bbd0e5faffead5c0ab95806a543f2a1500000000000000000000000000001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a442f1a0500000000000000000000000000000000000000000000000000000000000000000000000000000f253a4f647990a5bbd0e5faffead5c0ab95806a543f2a1500000000000000000000000000001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a442f1a0000001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a442f1a05000000000000000d22374c62778da3b8cde2f8ffedd8c3ad98836c57422c17001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a4432323232323232323232323232323232323232323232322d24170800000000000000001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a44323232312c221b272f323232374c62778da3b8cde2f8ffedd8c3ad98836c57422c17001f344a5f748ba0b5cbe0f2f2f0dac5b09b866f5a442f1a050000000000000000000000000000000000000000000000000000000000000000152a3e51626a6a6a6a6a6a7990a5bbd0e5f2f2ead5c0ab95806a6a6a6a6a6a6656432f1a05000000000000000000000000000000000000000000000000000000000000000f253a4f647990a5bbd0e5faffead5c0ab95806a543f2a1500000000000000000000000000000000000000000000000000000000000000000f253a4f647990a5bbd0e5faffead5c0ab95806a543f2a1500000000000000000000000000001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a442f1a0500000000000000000000000000000000000000000000000000000000000000000000000000000f253a4f647990a5bbd0e5faffead5c0ab95806a543f2a1500000000000000000000000000001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a442f1a0000001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a442f1a05000000000000000d22374c62778da3b8cde2f8ffedd8c3ad98836c57422c17001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a442f1d1d1d1d1d1d1d1d1d1d1d1d1d1d1d1d1d1d1d1d1d1c1911060000000000000000001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a442f1d1d1c181009141a1d1d22374c62778da3b8cde2f8ffedd8c3ad98836c57422c17001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a442f1a050000000000000000000000000000000000000000000000000000000000000000172c42576c8080808080808090a5bbd0e5faffead5c0ab9580808080808080725c47321d07000000000000000000000000000000000000000000000000000000000000000f253a4f647990a5bbd0e5faffead5c0ab95806a543f2a1500000000000000000000000000000000000000000000000000000000000000000f253a4f647990a5bbd0e5faffead5c0ab95806a543f2a1500000000000000000000000000001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a442f1a0500000000000000000000000000000000000000000000000000000000000000000000000000000f253a4f647990a5bbd0e5faffead5c0ab95806a543f2a1500000000000000000000000000001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a442f1a0000001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a442f1a05000000000000000d22374c62778da3b8cde2f8ffedd8c3ad98836c57422c17001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a442f1a0500000000000000000000000000000000000000000000000000000000000000001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a442f1a05000000000000000d22374c62778da3b8cde2f8ffedd8c3ad98836c57422c17001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a442f1a050000000000000000000000000000000000000000000000000000000001080c0d172c42576c839595959595959babbfd3e7f2f2edd8c4b09e95959595959588725c47321d0d0c0903000000000000000000000000000000000000000000000000000000000f253a4f647990a5bbd0e5faffead5c0ab95806a543f2a1500000000000000000000000000000000000000000000000000000000000003050f253a4f647990a5bbd0e5faffead5c0ab95806a543f2a1500000000000000000000000000001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a442f1a0500000000000000000000000000000000000000000000000000000000000000000000000000000f253a4f647990a5bbd0e5faffead5c0ab95806a543f2a1500000000000000000000000000001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a442f1a0000001f344a5f748ba0b5cbe0f5faf0dac5b09b866f5a442f1a05000000000003050d22374c62778da3b8cde2f8faedd8c3ad98836c57422c17001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a442f1a0500000000000000000000000000000000000000000000000000000000000000001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a442f1a05000000000000000d22374c62778da3b8cde2f8ffedd8c3ad98836c57422c17001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a442f1a0500000000000000000000000000000000000000000000000000000008141c2122222c42576c8398abababababaeb9c9dbddddddddddcdbdb0ababababab9d88725c47322222221e160b0000000000000000000000000000000000000000000000000000000f253a4f647990a5bbd0e5faffead5c0ab95806a543f2a15000000000000000000000000000000000000000000000000000000000912181a1a253a4f647990a5bbd0e5faffead5c0ab95806a543f2a1500000000000000000000000000001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a442f1a0500000000000000000000000000000000000000000000000000000000000000000000000000000f253a4f647990a5bbd0e5faffead5c0ab95806a543f2a1500000000000000000000000000001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a442f1a0000001f344a5f748ba0b5cbe0e5e5e8dac5b09b866f5a442f1a050000000711181a1a22374c62778da3b8cde2e6e5e5d8c3ad98836c57422c17001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a442f1a121212121212121212121212121212121212121212121212121212100b020000001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a442f1a05000000000000000d22374c62778da3b8cde2f8ffedd8c3ad98836c57422c17001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a442f1a050000000000000000000000000000000000000000000000000000071725303637373742576c8398adc0c0c0c0c2c8c8c8c8c8c8c8c8c8c8c4c0c0c0c0b39d88725c473737373732281b0b00000000000000000000000000000000000000000000000000000f253a4f647990a5bbd0e5faffead5c0ab95806a543f2a150000000000000000000000000000000000000000000000000000000c1a262d2f2f2f3a4f647990a5bbd0e5faffead5c0ab95806a543f2a1500000000000000000000000000001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a442f1a0500000000000000000000000000000000000000000000000000000000000000000000000000000f253a4f647990a5bbd0e5faffead5c0ab95806a543f2a1500000000000000000000000000001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a442f1a0000001f344a5f748ba0b5cbd0d0d0d4dac5b09b866f5a442f1a0500000a19242c2f2f2f374c62778da3b8cdd8d2d0d0d0c3ad98836c57422c17001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a442f27272727272727272727272727272727272727272727272727272727251e140600001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a442f1a05000000000000000d22374c62778da3b8cde2f8ffedd8c3ad98836c57422c17001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a442f1a050000000000000000000000000000000000000000000000000000122535434b4c4c4c4c576c8398adc3c6b9b3b3b3b3b3b3b3b3b3b3b3b3b3b3b7c2c8b39d88725c4c4c4c4c4c4639291704000000000000000000000000000000000000000000000000000f253a4f647990a5bbd0e5faffead5c0ab95806a543f2a150000000000000000000000000000000000000000000000000000081a2a3841444444444f647990a5bbd0e5faffead5c0ab95806a543f2a1500000000000000000000000000001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a442f1a0500000000000000000000000000000000000000000000000000000000000000000000000000000f253a4f647990a5bbd0e5faffead5c0ab95806a543f2a1500000000000000000000000000001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a442f1a0000001f344a5f748ba0b5bbbbbbbbc0cac5b09b866f5a442f1a05000517283640444444444c62778da3b8cdc6bdbbbbbbbbad98836c57422c17001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a443c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3a31241504001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a442f1a05000000000000000d22374c62778da3b8cde2f8ffedd8c3ad98836c57422c17001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a442f1a0500000000000000000000000000000000000000000000000000001b2f42536062626262626c8398adc3b8a89e9d9d9d9d9d9d9d9d9d9d9d9d9da5b4c7b39d8872626262626261574734200b000000000000000000000000000000000000000000000000000f253a4f647990a5bbd0e5faffead5c0ab95806a543f2a15000000000000000000000000000000000000000000000000000011243748555a5a5a5a5a647990a5bbd0e5faffead5c0ab95806a543f2a1500000000000000000000000000001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a442f1a0500000000000000000000000000000000000000000000000000000000000000000000000000000f253a4f647990a5bbd0e5faffead5c0ab95806a543f2a1500000000000000000000000000001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a442f1a0000001f344a5f748ba0a5a5a5a5a5adbbc5b09b866f5a442f1a05000e223546545a5a5a5a5a62778da3b8c6b5a9a5a5a5a5a598836c57422c17001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a5252525252525252525252525252525252525252525252525252525252524e4233210e001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a442f1a05000000000000000d22374c62778da3b8cde2f8ffedd8c3ad98836c57422c17001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a442f1a0500000000000000000000000000000000000000000000000000001f34495e717777777777778398adc3b19c8a8888888888888888888888888897acc0b39d8877777777777775634e39240f000000000000000000000000000000000000000000000000000f253a4f647990a5bbd0e5faffead5c0ab95806a543f2a150000000000000000000000000000000000000000000000000000162b4054666f6f6f6f6f6f7990a5bbd0e5faffead5c0ab95806a543f2a1500000000000000000000000000001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a442f1a0500000000000000000000000000000000000000000000000000000000000000000000000000000f253a4f647990a5bbd0e5faffead5c0ab95806a543f2a1500000000000000000000000000001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a442f1a0000001f344a5f748b9090909090909db0c5b09b866f5a442f1a050013283d51646f6f6f6f6f6f778da3b8bda997909090909090836c57422c17001f344a5f748ba0b5cbe0f5fff0dac5b09b866f6767676767676767676767676767676767676767676767676767676767676760503d2914001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a442f1a05000000000000000d22374c62778da3b8cde2f8ffedd8c3ad98836c57422c17001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a442f1a0504010000000000000000000000000000000000000000000000001f344a5f748b8d8d8d8d8d8e9cafc4b09b867272727272727272727272728095abc0b5a0908d8d8d8d8d8d79644f3a250f000000000000000000000000000000000000000000000000000f253a4f647990a5bbd0e5faffead5c0ab95806a543f2a150000000000000000000000000000000000000000000000000000172c42576c8386868686868691a6bbd0e5faffead5c0ab95806a543f2a1500000000000000000000000000001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a442f1a0500000000000000000000000000000000000000000000000000000000000000000000000000000f253a4f647990a5bbd0e5faffead5c0ab95806a543f2a1500000000000000000000000000001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a442f1a0000001f34495e737979797979798398adc3b09b866f5a442f1a0500152a3f546a808686868686868fa3b8bba590797979797979796b57412c17001f344a5f748ba0b5cbe0f5fff0dac5b09b867c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c6c57422c17001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a442f1a05000000000000000d22374c62778da3b8cde2f8ffedd8c3ad98836c57422c17001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a442f1a1a1a160e03000000000000000000000000000000000000000000001f344a5f748ba0a3a3a3a3a3aab9c5b09b866f5c5c5c5c5c5c5c5c5c5c6a8095abc0beaea4a3a3a3a3a39079644f3a250f000000000000000000000000000000000000000000000000000f253a4f647990a5bbd0e5faffead5c0ab95806a543f2a150000000000000000000000000000000000000000000000000000172c42576c83989b9b9b9b9b9faec1d4e9fdffead5c0ab95806a543f2a1500000000000000000000000000001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a442f1a0500000000000000000000000000000000000000000000000000000000000000000000000000000f253a4f647990a5bbd0e5faffead5c0ab95806a543f2a1500000000000000000000000000001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a442f1a0000001b3043556264646464646c8398adc3b09b866f5a442f1a1212152a3f546a80959b9b9b9b9b9eacbebba590796464646464645e4f3c2814001f344a5f748ba0b5cbe0f5f5f1dcc8b4a19493939393939393939393939393939393939393939393939393939393939393836c57422c17001f344a5f748ba0b5cbe0f5f5f0dac5b09b866f5a442f1a05000000000000000d22374c62778da3b8cde2f5f5edd8c3ad98836c57422c17001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a442f2f2f2f2a2013040000000000000000000000000000000000000000001f344a5f748ba0b5b8b8b8b8bdc8c5b09b866f5a4747474747474747546a8095abc0ccbfb9b8b8b8b8a59079644f3a250f000000000000000000000000000000000000000000000000000f253a4f647990a5bbd0e5faffead5c0ab95806a543f2a150000000000000000000000000000000000000000000000000000172c42576c8398adb0b0b0b0b3bdccddf0ffffead5c0ab95806a543f2a1500000000000000000000000000001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a442f1a0500000000000000000000000000000000000000000000000000000000000000000000000000000f253a4f647990a5bbd0e5faffead5c0ab95806a543f2a1500000000000000000000000000001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a442f1a000000142637454e4f4f4f4f576c8398adc3b09b866f5a442f272727272a3f546a8095abb0b0b0b0b2bbcabba59079644f4f4f4f4f4b40311f0d001f344a5f748ba0b5cbe0e0e0e0e0d0bfb0a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a898836c57422c17001f344a5f748ba0b5cbe0e0e0e0dac5b09b866f5a442f1a05000000000000000d22374c62778da3b8cde0e0e0e0d8c3ad98836c57422c17001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a44444444443d3122110000000000000000000000000000000000000000001f344a5f748ba0b5cbcdcdcdd1dac5b09b866f5a443232323232323f546a8095abc0d5d3cecdcdcdbba59079644f3a250f000000000000000000000000000000000000000000000000000f253a4f647990a5bbd0e5faffead5c0ab95806a543f2a150000000000000000000000000000000000000000000000000000172c42576c8398adc3c3c3c3c5cdd9e8f9ffffead5c0ab95806a543f2a1500000000000000000000000000001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a442f1a0500000000000000000000000000000000000000000000000000000000000000000000000000000f253a4f647990a5bbd0e5faffead5c0ab95806a543f2a1500000000000000000000000000001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a442f1a00000009192733393a3a3a42576c8398adc3b09b866f5a443c3c3c3c3c3c3f546a8095abc0c5c5c3c3c3c3bba59079644f3a3a3a3a372f221302001f344a5f748ba0b5cbcbcbcbcbcbcbcbc3bebdbdbdbdbdbdbdbdbdbdbdbdbdbdbdbdbdbdbdbdbdbdbdbdbdbdbdbdbdad98836c57422c17001f344a5f748ba0b5cbcbcbcbcbcbc5b09b866f5a442f1a05000000000000000d22374c62778da3b8cbcbcbcbcbcbc3ad98836c57422c17001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a5a5a5a5a594f402e1b0700000000000000000000000000000000000000001f344a5f748ba0b5cbe0e2e3e5dac5b09b866f5a442f1d1d1d1d2a3f546a8095abc0d5e7e3e2e2d0bba59079644f3a250f000000000000000000000000000000000000000000000000000f253a4f647990a5bbd0e5faffead5c0ab95806a543f2a150000000000000000000000000000000000000000000000000000172c42576c8398adadadadadb0bbcadcefffffead5c0ab95806a543f2a1500000000000000000000000000001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a442f1a0500000000000000000000000000000000000000000000000000000000000000000000000000000f253a4f647990a5bbd0e5faffead5c0ab95806a543f2a1500000000000000000000000000001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a442f1a000000000a161f2425252c42576c8398adadad9b866f5a5252525252525252546a8095abc0c4b6aeadadadada59079644f3a252525231c120400001f344a5f748ba0b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5ad98836c57422c17001f344a5f748ba0b5b5b5b5b5b5b5b5b09b866f5a442f1a05000000000000000d22374c62778da3b5b5b5b5b5b5b5b5ad98836c57422c17001f344a5f748ba0b5cbe0f5fff0dac5b09b866f6f6f6f6f6f6d5d4a35200b00000000000000000000000000000000000000001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a442f1a0500152a3f546a8095abc0d5eaffffe5d0bba59079644f3a250f000000000000000000000000000000000000000000000000000f253a4f647990a5bbd0e5faffead5c0ab95806a543f2a150000000000000000000000000000000000000000000000000000172c42576c839898989898989dadc0d4e8fdffead5c0ab95806a543f2a1500000000000000000000000000001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a442f1a0500000000000000000000000000000000000000000000000000000000000000000000000000000f253a4f647990a5bbd0e5faffead5c0ab95806a543f2a1500000000000000000000000000001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a442f1a0000000000030b0f0f172c42576c839898989898866f676767676767676767676a8095abc0b8a69a98989898989079644f3a250f0f0e08000000001f344a5f748ba0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a098836c57422c17001f344a5f748ba0a0a0a0a0a0a0a0a0a09b866f5a442f1a05000000000000000d22374c62778da0a0a0a0a0a0a0a0a0a098836c57422c17001f344a5f748ba0b5cbe0f5fff0dbc5b09b8886868686868677624c37220d00000000000000000000000000000000000000001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a442f1a0500152a3f546a8095abc0d5eaffffe5d0bba59079644f3a250f000000000000000000000000000000000000000000000000000f253a4f647990a5bbd0e5faffead5c0ab95806a543f2a150000000000000000000000000000000000000000000000000000172c42576c8383838383838390a5bbd0e5faffead5c0ab95806a543f2a1500000000000000000000000000001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a442f1a0500000000000000000000000000000000000000000000000000000000000000000000000000000f253a4f647990a5bbd0e5faffead5c0ab95806a543f2a1500000000000000000000000000001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a442f1a000000000000000000172c42576c838383838383837c7c7c7c7c7c7c7c7c7c7c7c8095abc0b39e8983838383838379644f3a250f000000000000001f344a5f748b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b836c57422c17001f344a5f748b8b8b8b8b8b8b8b8b8b8b8b866f5a442f1a05000000000000000d22374c62778b8b8b8b8b8b8b8b8b8b8b8b836c57422c17001f344a5f748ba0b5cbe0f5fff3decab7a69b9b9b9b9b9b8d77624c37221212121212121212121212121212120f08000000001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a442f1a0500152a3f546a8095abc0d5eaffffe5d0bba59079644f3a250f000000000000000000000000000000000000000000000000000f253a4f647990a5bbd0e5faffead5c0ab95806a543f2a150000000000000000000000000000000000000000000000000000152a3f53646c6c6c6c6c6c7990a5bbd0e5f5f5ead5c0ab95806a543f2a1500000000000000000000000000001f344a5f748ba0b5cbe0f5f5f0dac5b09b866f5a442f1a0500000000000000000000000000000000000000000000000000000000000000000000000000000f253a4f647990a5bbd0e5faffead5c0ab95806a543f2a1500000000000000000000000000001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a442f1a000000000000000000152a3f53646c6c6c6c6c6c79909393939393939393939393939dafc3b39d88726c6c6c6c6c6b5e4b37230e000000000000001f34495d707474747474747474747474747474747474747474747474747474747474747474747474747474747474747474746955412c17001f34495d70747474747474747474747474746b58432e1904000000000000000c21364b6071747474747474747474747474746955412c17001f344a5f748ba0b5cbe0f5fffae7d4c4b7b0b0b0b0b0a38d77624c3727272727272727272727272727272727231b0f0100001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a442f1a0500152a3f546a8095abc0d5eaffffe5d0bba59079644f3a250f000000000000000000000000000000000000000000000000000f253a4f647990a5bbd0e5faffead5c0ab95806a543f2a15000000000000000000000000000000000000000000000000000010233646535757575757647990a5bbd0e0e0e0e0d5c0ab95806a543f2a1500000000000000000000000000001f344a5f748ba0b5cbe0e0e0e0dac5b09b866f5a442f1a0500000000000000000000000000000000000000000000000000000000000000000000000000000f253a4f647990a5bbd0e5faffead5c0ab95806a543f2a1500000000000000000000000000001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a442f1a00000000000000000010233646535757575757647990a5a8a8a8a8a8a8a8a8a8a8a8aebbc8b39d88725c57575757574f402f1c08000000000000001a2e41515d5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5a4c3a2612001a2e41515d5f5f5f5f5f5f5f5f5f5f5f5f5f5b4e3c29150000000000000000081c3043535e5f5f5f5f5f5f5f5f5f5f5f5f5f5a4c3a2612001f344a5f748ba0b5cbe0f5fffff1e0d2c8c3c3c3c3b8a38d77624c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c372d1f0e00001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a442f1a0500152a3f546a8095abc0d5eaffffe5d0bba59079644f3a250f000000000000000000000000000000000000000000000000000f253a4f647990a5bbd0e5faffead5c0ab95806a543f2a150000000000000000000000000000000000000000000000000000061828363f424242424f647990a5bbcbcbcbcbcbcbc0ab95806a543f2a1500000000000000000000000000001f344a5f748ba0b5cbcbcbcbcbcbc5b09b866f5a442f1a0500000000000000000000000000000000000000000000000000000000000000000000000000000f253a4f647990a5bbd0e5faffead5c0ab95806a543f2a1500000000000000000000000000001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a442f1a000000000000000000061828363f424242424f647990a5bbbdbdbdbdbdbdbdbdbdbdc1cbc8b39d88725c47424242413c312212000000000000000011233341494a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a463c2e1d0a0011233341494a4a4a4a4a4a4a4a4a4a4a4a4a473e301f0d00000000000000000114253542494a4a4a4a4a4a4a4a4a4a4a4a4a463c2e1d0a001f344a5f748ba0b5cbe0f5fff9e5d3c2b5aeadadadada38d77625252525252525252525252525252525252514a3d2c1a06001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a442f1a0500152a3f546a8095abc0d5eaffffe5d0bba59079644f3a250f000000000000000000000000000000000000000000000000000f253a4f647990a5bbd0e5faffead5c0ab95806a543f2a150000000000000000000000000000000000000000000000000000000a18232a2c2c2c3a4f647990a5b5b5b5b5b5b5b5b5ab95806a543f2a1500000000000000000000000000001f344a5f748ba0b5b5b5b5b5b5b5b5b09b866f5a442f1a0500000000000000000000000000000000000000000000000000000000000000000000000000000f253a4f647990a5bbd0e5faffead5c0ab95806a543f2a1500000000000000000000000000001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a442f1a000000000000000000000a18232a2c2c2c3a4f647990a5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b39d88725c47322c2c2c281f130400000000000000000515232e34343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434322a1e1000000515232e3434343434343434343434343434332b2012010000000000000000000817252f3434343434343434343434343434322a1e1000001f344a5f748ba0b5cbe0f5fff2dec9b6a49998989898988d77676767676767676767676767676767676767665b4936210d001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a442f1a0500152a3f546a8095abc0d5eaffffe5d0bba59079644f3a250f000000000000000000000000000000000000000000000000000f253a4f647990a5bbd0e5faffead5c0ab95806a543f2a15000000000000000000000000000000000000000000000000000000000610151717253a4f647990a0a0a0a0a0a0a0a0a0a095806a543f2a1500000000000000000000000000001f344a5f748ba0a0a0a0a0a0a0a0a0a09b866f5a442f1a0500000000000000000000000000000000000000000000000000000000000000000000000000000f253a4f647990a5bbd0e5faffead5c0ab95806a543f2a1500000000000000000000000000001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a442f1a00000000000000000000000610151717253a4f647990a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a09d88725c47321d1717140d020000000000000000000005111a1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1d170d0000000005111a1f1f1f1f1f1f1f1f1f1f1f1f1f1f1e180f02000000000000000000000007121b1f1f1f1f1f1f1f1f1f1f1f1f1f1f1d170d0000001f344a5f748ba0b5cbe0f5fff0dbc5b09b868383838383837c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c79644f3a240f001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a442f1a0500152a3f546a8095abc0d5eaffffe5d0bba59079644f3a250f000000000000000000000000000000000000000000000000000f253a4f647990a5bbd0e5faffead5c0ab95806a543f2a1500000000000000000000000000000000000000000000000000000000000000000f253a4f64798b8b8b8b8b8b8b8b8b8b8b8b806a543f2a1500000000000000000000000000001f344a5f748b8b8b8b8b8b8b8b8b8b8b8b866f5a442f1a0500000000000000000000000000000000000000000000000000000000000000000000000000000f253a4f647990a5bbd0e5faffead5c0ab95806a543f2a1500000000000000000000000000001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a442f1a0000000000000000000000000000000f253a4f64798b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b88725c47321d0700000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001f344a5f748ba0b5cbe0f5f5f0dac5b09b866f6c6c6c6c728893939393939393939393939393939393939079644f3a250f001f344a5f748ba0b5cbe0f5f5f0dac5b09b866f5a442f1a0500152a3f546a8095abc0d5eaf5f5e5d0bba59079644f3a250f000000000000000000000000000000050d111212121212121212253a4f647990a5bbd0e5faffead5c0ab95806a543f2a1512121212121212120f08000000000000000000000000000000000000000000000f24394e62737474747474747474747474747467533e291400000000000000000000000000001f34495d70747474747474747474747474746b58432e190400000000000000000000000000000000000000000000000000000000050d111212121212121212253a4f647990a5bbd0e5faffead5c0ab95806a543f2a1512121212121212120f08000000001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a442f1a0000000000000000000000000000000f24394e6273747474747474747474747474747474747474746e5b46311c070000000000000000000000000000000a1217171717171717171717171717171611080000000000000000000000000000000000000000000000000000000000000000000000000000000000000006101517171717171717161108000000000000000000000000010b131717171717171717140d020000000000000000001f344a5f748ba0b5cbe0e0e0e0dac5b09b866f5a57575c72889da8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a59079644f3a250f001f344a5f748ba0b5cbe0e0e0e0dac5b09b866f5a442f1a0500152a3f546a8095abc0d5e0e0e0e0d0bba59079644f3a250f00000000000000000000000000000c1821262727272727272727273a4f647990a5bbd0e5faffead5c0ab95806a543f2a272727272727272727231b0f0100000000000000000000000000000000000000000b1f3345555e5f5f5f5f5f5f5f5f5f5f5f5f5f584937241000000000000000000000000000001a2e41515d5f5f5f5f5f5f5f5f5f5f5f5f5f5b4e3c2915000000000000000000000000000000000000000000000000000000000c1821262727272727272727273a4f647990a5bbd0e5faffead5c0ab95806a543f2a272727272727272727231b0f0100001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a442f1a0000000000000000000000000000000b1f3345555e5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5c503e2b17030000000000000000000000000000101d262c2c2c2c2c2c2c2c2c2c2c2c2c2c2b241a0c00000000000000000000000000000000000000000000000000000000000000000000000000000000000a18232a2c2c2c2c2c2c2c2b241a0c0000000000000000000002111e272c2c2c2c2c2c2c2c281f130400000000000000001f344a5f748ba0b5cbcbcbcbcbcbc5b09b866f5a44475c72889db3bdbdbdbdbdbdbdbdbdbdbdbdbdbba59079644f3a250f001f344a5f748ba0b5cbcbcbcbcbcbc5b09b866f5a442f1a0500152a3f546a8095abc0cbcbcbcbcbcbbba59079644f3a250f000000000000000000000000000a1b2a353b3c3c3c3c3c3c3c3c3c3c4f647990a5bbd0e5faffead5c0ab95806a543f3c3c3c3c3c3c3c3c3c3c372d1f0e00000000000000000000000000000000000000000316273743494a4a4a4a4a4a4a4a4a4a4a4a4a453b2c1a08000000000000000000000000000011233341494a4a4a4a4a4a4a4a4a4a4a4a4a473e301f0d0000000000000000000000000000000000000000000000000000000a1b2a353b3c3c3c3c3c3c3c3c3c3c4f647990a5bbd0e5faffead5c0ab95806a543f3c3c3c3c3c3c3c3c3c3c372d1f0e00001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a442f1a0000000000000000000000000000000316273743494a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a483f32210f00000000000000000000000000000d1e2e3a414242424242424242424242424240372a1a09000000000000000000000000000000000000000000000000000000000000000000000000000000061828363f4242424242424240372a1a090000000000000000000f202f3b41424242424242413c31221200000000000000001f344a5f748ba0b5b5b5b5b5b5b5b5b09b866f5a44475c72889db3b5b5b5b5b5b5b5b5b5b5b5b5b5b5a59079644f3a250f001f344a5f748ba0b5b5b5b5b5b5b5b5b09b866f5a442f1a0500152a3f546a8095abb5b5b5b5b5b5b5b5a59079644f3a250f0000000000000000000000000015283947505252525252525252525252647990a5bbd0e5faffead5c0ab95806a5452525252525252525252514a3d2c1a0600000000000000000000000000000000000000000a192630343434343434343434343434343431291d0e0000000000000000000000000000000515232e3434343434343434343434343434332b20120100000000000000000000000000000000000000000000000000000015283947505252525252525252525252647990a5bbd0e5faffead5c0ab95806a5452525252525252525252514a3d2c1a06001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a442f1a000000000000000000000000000000000a1926303434343434343434343434343434343434343434332d2213030000000000000000000000000000172a3c4c555757575757575757575757575754483826120000000000000000000000000000000000000000000000000000000000000000000000000000001023364653575757575757575448382612000000000000000006192d3e4d56575757575757574f402f1c08000000000000001f344a5f748ba0a0a0a0a0a0a0a0a0a09b866f5a44475c72889da0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a09079644f3a250f001f344a5f748ba0a0a0a0a0a0a0a0a0a09b866f5a442f1a0500152a3f546a8095a0a0a0a0a0a0a0a0a0a09079644f3a250f000000000000000000000000001c314457646767676767676767676767677990a5bbd0e5faffead5c0ab95806a6767676767676767676767665b4936210d00000000000000000000000000000000000000000009141b1f1f1f1f1f1f1f1f1f1f1f1f1f1f1d160c000000000000000000000000000000000005111a1f1f1f1f1f1f1f1f1f1f1f1f1f1f1e180f02000000000000000000000000000000000000000000000000000000001c314457646767676767676767676767677990a5bbd0e5faffead5c0ab95806a6767676767676767676767665b4936210d001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a442f1a000000000000000000000000000000000009141b1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1e1910040000000000000000000000000000001d32465a696c6c6c6c6c6c6c6c6c6c6c6c6c6655412d18030000000000000000000000000000000000000000000000000000000000000000000000000000152a3f53646c6c6c6c6c6c6c6655412d1803000000000000000b2035495c6a6c6c6c6c6c6c6b5e4b37230e000000000000001f344a5f748b8b8b8b8b8b8b8b8b8b8b8b866f5a44475c72888b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b79644f3a250f001f344a5f748b8b8b8b8b8b8b8b8b8b8b8b866f5a442f1a0500152a3f546a808b8b8b8b8b8b8b8b8b8b8b8b79644f3a250f000000000000000000000000001f344a5f747c7c7c7c7c7c7c7c7c7c7c7c7c90a5bbd0e5faffead5c0ab95807c7c7c7c7c7c7c7c7c7c7c7c79644f3a240f00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001f344a5f747c7c7c7c7c7c7c7c7c7c7c7c7c90a5bbd0e5faffead5c0ab95807c7c7c7c7c7c7c7c7c7c7c7c79644f3a240f001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a442f1a00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001f344a5f74838383838383838383838383836f5a442f1a050000000000000000000000000000000000000000000000000000000000000000000000000000172c42576c838383838383836f5a442f1a05000000000000000d22374c627783838383838379644f3a250f000000000000001f34495d70747474747474747474747474746b5843465b6e7474747474747474747474747474747474747473624e39240f001f34495d70747474747474747474747474746b58432e19040014293e53677474747474747474747474747473624e39240f000000000000000000000000001f344a5f748b93939393939393939393939399aabed2e7f5f5ecd7c3af9d9393939393939393939393939079644f3a250f000000000000000000000000000000020d141717171717171717171717171717150f05000000000000000000000000000000000000000000000000000000000000020d141717171717171717171717171717150f05000000000000000000000000000000000000000000001f344a5f748b93939393939393939393939399aabed2e7f5f5ecd7c3af9d9393939393939393939393939079644f3a250f001f344a5f748ba0b5cbe0f5f5f0dac5b09b866f5a442f1a00000000000a12171717171717171717171717171717171717171717171717171717171717171717171717171717171717171717171510060000001f344a5f748b9898989898989898989898866f5a442f1a0500000000000000000000000000000000000000000000000000000000000000000000030b0f0f172c42576c839898989898866f5a442f1a0f0f0b0400070d0f0f22374c62778d989898989079644f3a250f0f0e08000000001a2e41515d5f5f5f5f5f5f5f5f5f5f5f5f5f5b4e3c3e505c5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5e5545331f0b001a2e41515d5f5f5f5f5f5f5f5f5f5f5f5f5f5b4e3c2915000010243749585f5f5f5f5f5f5f5f5f5f5f5f5f5e5545331f0b000000000000000000000000001f344a5f748ba0a8a8a8a8a8a8a8a8a8a8a8abb7c7d9e0e0e0e0deccbbaea8a8a8a8a8a8a8a8a8a8a8a59079644f3a250f000000000000000000000000000004131f282c2c2c2c2c2c2c2c2c2c2c2c2c2c2a2216080000000000000000000000000000000000000000000000000000000004131f282c2c2c2c2c2c2c2c2c2c2c2c2c2c2a2216080000000000000000000000000000000000000000001f344a5f748ba0a8a8a8a8a8a8a8a8a8a8a8abb7c7d9e0e0e0e0deccbbaea8a8a8a8a8a8a8a8a8a8a8a59079644f3a250f001f344a5f748ba0b5cbe0e0e0e0dac5b09b866f5a442f1a00000000101d262c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2a23180a00001f344a5f748ba0adadadadadadadadad9b866f5a442f1a050000000000000000000000000000000000000000000000000000000000000000000a161f2425252c42576c8398adadad9b866f5a442f2525242017101b22252525374c62778da3adada59079644f3a252525231c1204000011233341494a4a4a4a4a4a4a4a4a4a4a4a4a473e30323f484a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4943372716030011233341494a4a4a4a4a4a4a4a4a4a4a4a4a473e301f0d0000081a2c3b454a4a4a4a4a4a4a4a4a4a4a4a4a494337271603000000000000000000000000001f344a5f748ba0b5bdbdbdbdbdbdbdbdbdbdbfc8cbcbcbcbcbcbcbcbcbc1bdbdbdbdbdbdbdbdbdbdbba59079644f3a250f00000000000000000000000000001222313c41424242424242424242424242423e342616040000000000000000000000000000000000000000000000000000001222313c41424242424242424242424242423e3426160400000000000000000000000000000000000000001f344a5f748ba0b5bdbdbdbdbdbdbdbdbdbdbfc8cbcbcbcbcbcbcbcbcbc1bdbdbdbdbdbdbdbdbdbdbba59079644f3a250f001f344a5f748ba0b5cbcbcbcbcbcbc5b09b866f5a442f1a0000000d1e2e3a414242424242424242424242424242424242424242424242424242424242424242424242424242424242424242423f36281806001f344a5f748ba0b5c3c3c3c3c3c3c3b09b866f5a442f1a05000000000000000000000000000000000000000000000000000000000000000009192733393a3a3a42576c8398adc3b09b866f5a443a3a3a393429212d363a3a3a3a4c62778da3b8bba59079644f3a3a3a3a372f221302000515232e3434343434343434343434343434332b20222d3334343434343434343434343434343434343434343026190a00000515232e3434343434343434343434343434332b2012010000000e1d293134343434343434343434343434343026190a00000000000000000000000000001f344a5f748ba0b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5a59079644f3a250f00000000000000000000000000081c2f404f5757575757575757575757575757514433210d0000000000000000000000000000000000000000000000000000081c2f404f5757575757575757575757575757514433210d00000000000000000000000000000000000000001f344a5f748ba0b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5a59079644f3a250f001f344a5f748ba0b5b5b5b5b5b5b5b5b09b866f5a442f1a000000172a3c4c555757575757575757575757575757575757575757575757575757575757575757575757575757575757575757575346362310001f344a5f748ba0b5cbd8d8d8d8d8c5b09b866f5a442f1a050000000000000000000000000000000000000000000000000000000000000000142637454e4f4f4f4f576c8398adc3b09b866f5a4f4f4f4f4e47392f3f4a4f4f4f4f4f62778da3b8bba59079644f4f4f4f4f4b40311f0d000005111a1f1f1f1f1f1f1f1f1f1f1f1f1f1f1e180f10191e1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1b14090000000005111a1f1f1f1f1f1f1f1f1f1f1f1f1f1f1e180f0200000000000c161d1f1f1f1f1f1f1f1f1f1f1f1f1f1f1b14090000000000000000000000000000001f344a5f748ba0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a09079644f3a250f000000000000000000000000000e23374b5e6b6c6c6c6c6c6c6c6c6c6c6c6c6c62503c281300000000000000000000000000000000000000000000000000000e23374b5e6b6c6c6c6c6c6c6c6c6c6c6c6c6c62503c281300000000000000000000000000000000000000001f344a5f748ba0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a09079644f3a250f001f344a5f748ba0a0a0a0a0a0a0a0a0a09b866f5a442f1a0000001d32465a696c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c64533f2a15001f344a5f748ba0b5cbe0edededdac5b09b866f5a442f1a0500000000000000000000000000000000000000000000000000000000000000001b3043556264646464646c8398adc3b09b866f64646464646357463a4c5d646464646464778da3b8bba590796464646464645e4f3c281400000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001f344a5f748b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b79644f3a250f000000000000000000000000000f253a4f6479838383838383838383838383806a543f2a1500000000000000000000000000000000000000000000000000000f253a4f6479838383838383838383838383806a543f2a1500000000000000000000000000000000000000001f344a5f748b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b79644f3a250f001f344a5f748b8b8b8b8b8b8b8b8b8b8b8b866f5a442f1a0000001f344a5f748383838383838383838383838383838383838383838383838383838383838383838383838383838383838383836c57422c17001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a442f1a0500000000000000000000000000000000000000000000000000000000000000001f34495e737979797979798398adc3b09b8679797979797975614c3f5469797979797979798da3b8bba590797979797979796b57412c170000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000050d111212121212121212121212121212121212121212121212121212121212121212121212121212120f08000000000000000000000000000000001f34495d70747474747474747474747474747474747474747474747474747474747474747474747474747473624e39240f000000000000000000000000000f253a4f6479909898989898989898989895806a543f2a1500000000000000000000000000000000000000000000000000000f253a4f6479909898989898989898989895806a543f2a1500000000000000000000000000000000000000001f34495d70747474747474747474747474747474747474747474747474747474747474747474747474747473624e39240f001f34495d70747474747474747474747474746b58432e190000001f344a5f748b98989898989898989898989898989898989898989898989898989898989898989898989898989898989898836c57422c17001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a442f1a0500000000000000000000000000000000000000000000000000000000000000001f344a5f748b9090909090909db0c5b39f9190909090908d77624c3f546a8090909090909095a6babda997909090909090836c57422c17000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000c182126272727272727272727272727272727272727272727272727272727272727272727272727272727231b0f0100000000000000000000000000001a2e41515d5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5e5545331f0b000000000000000000000000000f253a4f647990a5adadadadadadadadab95806a543f2a1500000000000000000000000000000000000000000000000000000f253a4f647990a5adadadadadadadadab95806a543f2a1500000000000000000000000000000000000000001a2e41515d5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5e5545331f0b001a2e41515d5f5f5f5f5f5f5f5f5f5f5f5f5f5b4e3c29150000001f344a5f748ba0adadadadadadadadadadadadadadadadadadadadadadadadadadadadadadadadadadadadadadadadad98836c57422c17001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a442f1a0500000000000000000000000000000000000000000000000000000000000000001f344a5f748ba0a5a5a5a5a5adbbcdbdaea6a5a5a5a5a38d77624c3f546a8095a5a5a5a5a5a8b3c3c6b5a9a5a5a5a5a598836c57422c170000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000a1b2a353b3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c372d1f0e000000000000000000000000000011233341494a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a494337271603000000000000000000000000000f253a4f647990a5bbc3c3c3c3c3c3c0ab95806a543f2a1500000000000000000000000000000000000000000000000000000f253a4f647990a5bbc3c3c3c3c3c3c0ab95806a543f2a15000000000000000000000000000000000000000011233341494a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4943372716030011233341494a4a4a4a4a4a4a4a4a4a4a4a4a473e301f0d0000001f344a5f748ba0b5c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3ad98836c57422c17001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a442f1a0500000000000000000000000000000000000000000000000000000000000000001f344a5f748ba0b5bbbbbbbbc0cad9ccc1bbbbbbbbb8a38d77624c3f546a8095abbbbbbbbbbcc4d1d3c6bdbbbbbbbbad98836c57422c1700000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000015283947505252525252525252525252525252525252525252525252525252525252525252525252525252514a3d2c1a06000000000000000000000000000515232e343434343434343434343434343434343434343434343434343434343434343434343434343434343026190a00000000000000000000000000000f253a4f647990a5bbd0d8d8d8d8d5c0ab95806a543f2a1500000000000000000000000000000000000000000000000000000f253a4f647990a5bbd0d8d8d8d8d5c0ab95806a543f2a1500000000000000000000000000000000000000000515232e343434343434343434343434343434343434343434343434343434343434343434343434343434343026190a00000515232e3434343434343434343434343434332b2012010000001f344a5f748ba0b5cbd8d8d8d8d8d8d8d8d8d8d8d8cabbb2b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0ad98836c57422c17001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a442f1a0500000000000000000000000000000000000000000000000000000000000000001f344a5f748ba0b5cbd0d0d0d4dce8ddd4d0d0d0cdb8a38d77624c47546a8095abc0d0d0d0d1d7e2e3d8d2d0d0d0c3ad98836c57422c170000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001c314457646767676767676767676767676767676767676767676767676767676767676767676767676767665b4936210d000000000000000000000000000005111a1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1b14090000000000000000000000000000000f253a4f647990a5bbd0e5ededead5c0ab95806a543f2a1500000000000000000000000000000000000000000000000000000f253a4f647990a5bbd0e5ededead5c0ab95806a543f2a1500000000000000000000000000000000000000000005111a1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1b14090000000005111a1f1f1f1f1f1f1f1f1f1f1f1f1f1f1e180f02000000001f344a5f748ba0b5cbe0ededededededededede6d2beac9e9b9b9b9b9b9b9b9b9b9b9b9b9b9b9b9b9b9b9b9b9b9b9b9b98836c57422c17001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a442f1a0500000000000000000000000000000000000000000000000000000000000000001f344a5f748ba0b5cbe0e5e5e8eff9f0e9e5e5e2cdb8a38d77625c5c5c6a8095abc0d5e5e5e6ebf4f5ece6e5e5d8c3ad98836c57422c170000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001f344a5f747c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c79644f3a240f0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000f253a4f647990a5bbd0e5faffead5c0ab95806a543f2a1500000000000000000000000000000000000000000000000000000f253a4f647990a5bbd0e5faffead5c0ab95806a543f2a150000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001f344a5f748ba0b5cbe0f5ffffffffffffffffe3cdb8a38f86868686868686868686868686868686868686868686868686836c57422c17001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a442f1a0500000000000000000000000000000000000000000000000000000000000000001f344a5f748ba0b5cbe0f5ffffffffffffffffe2cdb8a38d7772727272728095abc0d5eaffffffffffffffffedd8c3ad98836c57422c17000000000000000000000000000000020d141717171717171717171717171717150f05000000000000000000000000000000001f344a5f748b9393939393939393939393939393939393939393939393939393939393939393939393939079644f3a250f0000000000000000000000000000000000000000000009111617171717171717171717171717161109000000000000000000000000000000000000000000000000000000000000000000000f253a4f647990a5bbd0e5faffead5c0ab95806a543f2a1500000000000000000000000000000000000000000000000000000f253a4f647990a5bbd0e5faffead5c0ab95806a543f2a15000000000000000000000000000000000a1217171717171717171717171717171717171717171717171717171717171717171717171717171717140d0200000000000a12171717171717171717171717171716110800000000000000000000001f344a5f748ba0b5cbe0f5f8faffffffffffffe2cdb8a38d776f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6654402b16001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a442f1a0500000000000000000000000000000000000000000000000000000000000000001f344a5f748ba0b5cbe0f5ffffffffffffffffe3ceb9a4908888888888888897acc0d6ebffffffffffffffffedd8c3ad98836c57422c17000000000000000000000000000004131f282c2c2c2c2c2c2c2c2c2c2c2c2c2c2a2216080000000000000000000000000000001f344a5f748ba0a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a59079644f3a250f0000000000000000000000000000000000000000000e1b252b2c2c2c2c2c2c2c2c2c2c2c2c2c2b251b0e0000000000000000000000000000000000000000000000000000000000000000000f253a4f647990a5bbd0e5faffead5c0ab95806a543f2a1500000000000000000000000000000000000000000000000000000f253a4f647990a5bbd0e5faffead5c0ab95806a543f2a15000000000000000000000000000000101d262c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c281f1304000000101d262c2c2c2c2c2c2c2c2c2c2c2c2c2c2b241a0c000000000000000000001f344a5f748ba0b5cbe0e2e3e5edf7ffffffffe2cdb8a38d77625a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5548372411001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a442f1a151515151515151515151515151515151515151514110a000000000000000000001f344a5f748ba0b5cbe0f5fffffffff5eeebeae7d3bfaea09d9d9d9d9d9d9da5b4c7daeaeaebf0f8ffffffffedd8c3ad98836c57422c1700000000000000000000000000001222313c41424242424242424242424242423e3426160400000000000000000000000000001f344a5f748ba0b5bdbdbdbdbdbdbdbdbdbdbdbdbdbdbdbdbdbdbdbdbdbdbdbdbdbdbdbdbdbdbdbdbba59079644f3a250f00000000000000000000000000000000000000000b1c2c38404242424242424242424242424240382c1c0b00000000000000000000000000000000000000000000000000000000000000000f253a4f647990a5bbd0e5faffead5c0ab95806a543f2a1500000000000000000000000000000000000000000000000000000f253a4f647990a5bbd0e5faffead5c0ab95806a543f2a1500000000000000000000000000000d1e2e3a414242424242424242424242424242424242424242424242424242424242424242424242424242413c31221200000d1e2e3a414242424242424242424242424240372a1a090000000000000000001f344a5f748ba0b5cbcdcdcdd1dae6f5ffffffe2cdb8a38d77624c444444444444444444444444444444444444444444444441382a1a08001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a442f2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a261d110300000000000000001f344a5f748ba0b5cbe0f5fffffceee2d9d5d5d5d5ccbeb5b3b3b3b3b3b3b3b7c2d2d5d5d5d6dce6f3ffffffedd8c3ad98836c57422c1700000000000000000000000000081c2f404f5757575757575757575757575757514433210d00000000000000000000000000001f344a5f748ba0b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5a59079644f3a250f000000000000000000000000000000000000000015283a4a5557575757575757575757575757554a3a281500000000000000000000000000000000000000000000000000000000000000000f253a4f647990a5bbd0e5faffead5c0ab95806a543f2a1500000000000000000000000000000000000000000000000000000f253a4f647990a5bbd0e5faffead5c0ab95806a543f2a150000000000000000000000000000172a3c4c555757575757575757575757575757575757575757575757575757575757575757575757575757574f402f1c0800172a3c4c555757575757575757575757575754483826120000000000000000001f344a5f748ba0b5b8b8b8b8bdc8d7e8fbffffe2cdb8a38d77624c47474747474747474747453d302f2f2f2f2f2f2f2f2f2f2d261a0c00001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a443f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3a2f211000000000000000001f344a5f748ba0b5cbe0f5ffffefded0c5c0c0c0c0c0c0c0c0c7c8c8c8c4c0c0c0c0c0c0c0c1c9d5e4f6ffffedd8c3ad98836c57422c17000000000000000000000000000e23374b5e6b6c6c6c6c6c6c6c6c6c6c6c6c6c62503c281300000000000000000000000000001f344a5f748ba0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a09079644f3a250f00000000000000000000000000000000000000001b2f4457686c6c6c6c6c6c6c6c6c6c6c6c6c6857442f1b00000000000000000000000000000000000000000000000000000000000000000f253a4f647990a5bbd0e5faffead5c0ab95806a543f2a1500000000000000000000000000000000000000000000000000000f253a4f647990a5bbd0e5faffead5c0ab95806a543f2a1500000000000000000000000000001d32465a696c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6b5e4b37230e001d32465a696c6c6c6c6c6c6c6c6c6c6c6c6c6655412d180300000000000000001f344a5f748ba0a3a3a3a3a3aab9cbdff3ffffe2cdb8a38d77625c5c5c5c5c5c5c5c5c5c5c5a4e3d2a1a1a1a1a1a1a1a1a1a1812090000001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a5454545454545454545454545454545454545454545454544c3f2d1b07000000000000001f344a5f748ba0b5cbe0f5fff8e4d2c0b3abababababababacb4c2cdbdb0abababababababadb7c7d8ebffffedd8c3ad98836c57422c17000000000000000000000000000f253a4f6479838383838383838383838383806a543f2a1500000000000000000000000000001f344a5f748b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b79644f3a250f00000000000000000000000000000000000000001d32475c7283838383838383838383838383725c47321d00000000000000000000000000000000000000000000000000000000000000000f253a4f647990a5bbd0e5faffead5c0ab95806a543f2a1500000000000000000000000000000000000000000000000000000f253a4f647990a5bbd0e5faffead5c0ab95806a543f2a1500000000000000000000000000001f344a5f74838383838383838383838383838383838383838383838383838383838383838383838383838379644f3a250f001f344a5f74838383838383838383838383836f5a442f1a0500000000000000001f344a5f748b8d8d8d8d8d8e9cafc4d9eeffffe2cdb8a38d777272727272727272727272726c5a45311c06000000000000000000000000001f344a5f748ba0b5cbe0f5fff0dac5b09b866f6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a695d4a36220d000000000000001f344a5f748ba0b5cbe0f5fff2ddc9b5a29695959595959597a5b7c4b09e9595959595959599a9bcd0e5faffedd8c3ad98836c57422c17000000000000000000000000000f253a4f6479909898989898989898989895806a543f2a1500000000000000000000000000001f34495d70747474747474747474747474747474747474747474747474747474747474747474747474747473624e39240f00000000000000000000000000000000050c0f0f1d32475c7288989898989898989898989888725c47321d00000000000000000000000000000000000000000000000000000000000000000f253a4f647990a5bbd0e5faffead5c0ab95806a543f2a1500000000000000000000000000000000000000000000000000000f253a4f647990a5bbd0e5faffead5c0ab95806a543f2a1500000000000000000000000000001f344a5f748b9898989898989898989898989898989898989898989898989898989898989898989898989079644f3a250f001f344a5f748b9898989898989898989898866f5a442f1a0500000000000000001f34495e717777777777778398adc3d8edffffe3ceb9a49088888888888888888888888888725c47321d07000000000000000000000000001f344a5f748ba0b5cbe0f5fff0dac5b09b868080808080808080808080808080808080808080808080808079644f3a250f000000000000001f344a5f748ba0b5cbe0f5fff0dac5b09b86808080808080889db3c0ab95808080808080808da3b8cde2f8ffedd8c3ad98836c57422c17000000000000000000000000000f253a4f647990a5adadadadadadadadab95806a543f2a1500000000000000000000000000001a2e41515d5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5e5545331f0b0000000000000000000000000000000d182124252532475c72889dadadadadadadadadad9d88725c47321d00000000000000000000000000000000000000000000000000000000040d131515253a4f647990a5bbd0e5faffead5c0ab95806a543f2a1515140f07000000000000000000000000000000000000000000000f253a4f647990a5bbd0e5faffead5c0ab95806a543f2a1500000000000000000000000000001f344a5f748ba0adadadadadadadadadadadadadadadadadadadadadadadadadadadadadadadadadada59079644f3a250f001f344a5f748ba0adadadadadadadadad9b866f5a442f1a0500000000000000001b2f42536062626262626c8398adc3d8eaeaece7d3bfaea09d9d9d9d9d9d9d9d9d9d9d9d88725c47321d1514110a000000000000000000001f344a5f748ba0b5cbe0f5fff2ddc9b5a2969595959595959595959595959595959595959595959595959079644f3a250f000000000000001f344a5f748ba0b5cbe0f5fff0dac5b09b866f6a6a6a6a72889db3c0ab95806a6a6a6a6a778da3b8cde2f8ffedd8c3ad98836c57422c17000000000000000000000000000f253a4f647990a5bbc3c3c3c3c3c3c0ab95806a543f2a15000000000000000000000000000011233341494a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a49433727160300000000000000000000000000000d1d2b353a3a3a3a475c72889db3c3c3c3c3c3c3c3b39d88725c47321d000000000000000000000000000000000000000000000000000000081621282a2a2a3a4f647990a5bbd0e5faffead5c0ab95806a543f2a2a2a2923190c0000000000000000000000000000000000000000000f253a4f647990a5bbd0e5faffead5c0ab95806a543f2a1500000000000000000000000000001f344a5f748ba0b5c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3bba59079644f3a250f001f344a5f748ba0b5c3c3c3c3c3c3c3b09b866f5a442f1a050000000000000000122535434b4c4c4c4c576c8398adc3d5d5d5d7ddddccbeb5b3b3b3b3b3b3b3b3b3b3b39d88725c47322a2a2a261d110300000000000000001f344a5f748ba0b5cbe0f5fff8e4d2c0b3ababababababababababababababababababababababababa59079644f3a250f000000000000001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a54545c72889db3c0ab95806a54545462778da3b8cde2f8ffedd8c3ad98836c57422c17000000000000000000000000000f253a4f647990a5bbd0d8d8d8d8d5c0ab95806a543f2a1500000000000000000000000000000515232e343434343434343434343434343434343434343434343434343434343434343434343434343434343026190a000000000000000000000000000005182b3b484f4f4f4f4f5c72889db3c8c0b5b0b0b0b0b09d88725c47321d0000000000000000000000000000000000000000000000000000051626333c3f3f3f3f4f647990a5bbd0e5faffead5c0ab95806a543f3f3f3f3e362a1b0900000000000000000000000000000000000000000f253a4f647990a5bbd0e5faffead5c0ab95806a543f2a1500000000000000000000000000001f344a5f748ba0b0b0b0b0b0b0b0b0b0b0b0b3bdccd8d8d8d8d8d8d0c0b5b0b0b0b0b0b0b0b0b0b0b0a59079644f3a250f001f344a5f748ba0b0b0b0b0b0b0b0b0b09b866f5a442f1a050000000000000000071725303637373742576c8398adc0c0c0c0c2cad7dbd0c9c8c8c8c8c8c8c8c8c8c8b39d88725c473f3f3f3f3a2f211000000000000000001f344a5f748ba0b5cbe0f5ffffefded0c5c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0bba59079644f3a250f000000000000001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a44475c72889db3c0ab95806a543f4c62778da3b8cde2f8ffedd8c3ad98836c57422c17000000000000000000000000000f253a4f647990a5bbd0e5ededead5c0ab95806a543f2a1500000000000000000000000000000005111a1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1b14090000000000000000000000000000000c2135485964646464646472889db3c5b3a29b9b9b9b9b9b88725c47321d00000000000000000000000000000000000000000000000000000f223444505454545454647990a5bbd0e5faffead5c0ab95806a5454545454524838271400000000000000000000000000000000000000000f253a4f647990a5bbd0e5faffead5c0ab95806a543f2a1500000000000000000000000000001f344a5f748b9b9b9b9b9b9b9b9b9b9b9b9b9faec1d4e9edededd9c5b3a29b9b9b9b9b9b9b9b9b9b9b9b9079644f3a250f001f344a5f748b9b9b9b9b9b9b9b9b9b9b9b866f5a442f1a0500000000000000000008141c2122222c42576c8398abababababaeb9c9dbe4deddddddddddddddddddc8b39d88725c54545454544c3f2d1b07000000000000001f344a5f748ba0b5cbe0f5fffbe8d6c6b9b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3a59079644f3a250f000000000000001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a44475c72889db3c0ab95806a543f4c62778da3b8cde2f8ffedd8c3ad98836c57422c17000000000000000000000000000f253a4f647990a5bbd0e5faffead5c0ab95806a543f2a15000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000f243a4f6477797979797979889db3c0ab9686868686868686725c47321d0000000000000000000000000000000000000000000000000000152a3e51626a6a6a6a6a6a7990a5bbd0e5faffead5c0ab95806a6a6a6a6a6a6656432f1a05000000000000000000000000000000000000000f253a4f647990a5bbd0e5faffead5c0ab95806a543f2a1500000000000000000000000000001f344a5f748686868686868686868686868691a6bbd0e5faffebd5c0ab968686868686868686868686868679644f3a250f001f344a5f74868686868686868686868686866f5a442f1a050000000000000000000001080c0d172c42576c839595959595959babbfd3e7f3f2f2f2f2f2f2f2f2ddc8b39d88726a6a6a6a6a695d4a36220d000000000000001f344a5f748ba0b5cbe0f5fff4dfcbb8a89e9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9079644f3a250f000000000000001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a44475c72889db3c0ab95806a543f4c62778da3b8cde2f8ffedd8c3ad98836c57422c17000000000000000000000000000f253a4f647990a5bbd0e5faffead5c0ab95806a543f2a15000000000000000000000000000000000a12171717171717171717171717171716110800000000000000000000000000000000000000000000000000000000000000000000000000000106070f253a4f647990909090909092a2b5c0ab95806f6f6f6f6f6f6a5945301b0000000000000000000000000000000000000000000000000000172c42576c8080808080808090a5bbd0e5faffead5c0ab9580808080808080725c47321d07000000000000000000000000000000000000000f253a4f647990a5bbd0e5faffead5c0ab95806a543f2a1500000000000000000000000000001e33475b6b6f6f6f6f6f6f6f6f6f6f6f6f7990a5bbd0e5faffead5c0ab95806f6f6f6f6f6f6f6f6f6f6f6f6e604c38230e001e33475b6b6f6f6f6f6f6f6f6f6f6f6f6f6f6856422d19040000000000000000000000000000172c42576c8080808080808090a5bbd0e5fafffffffffffffff2ddc8b39d8880808080808079644f3a250f000000000000001f344a5f748ba0b5cbe0f5fff0dbc6b19c8a8888888888888888888888888888888888888888888888888879644f3a250f000000000000001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a44475c72889db3c0ab95806a543f4c62778da3b8cde2f8ffedd8c3ad98836c57422c17000000000000000000000000000f253a4f647990a5bbd0e5faffead5c0ab95806a543f2a15000000000000000000000000000000101d262c2c2c2c2c2c2c2c2c2c2c2c2c2c2b241a0c0000000000000000000000000000000000000000000000000000000000000000000000000b151b1d1d253a4f647990a5a5a5a5a5a6b0bfc0ab95806a5a5a5a5a5a574c3c29160000000000000000000000000000000000000000000001080c0d172c42576c839595959595959babbfd3e7f2f2edd8c4b09e95959595959588725c47321d0d0c090300000000000001080c0d0d0d0d0d0d0d0f253a4f647990a5bbd0e5faffead5c0ab95806a543f2a150d0d0d0d0d0d0d0c090300000000182b3e4e585a5a5a5a5a5a5a5a5a5a5a647990a5bbd0e5faffead5c0ab95806a5a5a5a5a5a5a5a5a5a5a5a595142301d0900182b3e4e585a5a5a5a5a5a5a5a5a5a5a5a5a564a392713000000000000000000000000000000152a3e51626a6a6a6a6a6a7990a5bbd0e5f2f2f2f2f2f2f2f2f4e0cbb7a59795959595959079644f3a250f0d0b06000000001f344a5f748ba0b5cbe0f5fff0dac5b09b867272727272727272727272727272727272727272727272727270614d38230e000000000000001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a44475c72889db3c0ab95806a543f4c62778da3b8cde2f8ffedd8c3ad98836c57422c17000000000000000000000000000f253a4f647990a5bbd0e5faffead5c0ab95806a543f2a1500000000000000000000000000000d1e2e3a414242424242424242424242424240372a1a09000000000000000000000000000000000000000000000000000000000000000000000e1c282f3232323a4f647990a5bbbbbbbbbbc2cdc0ab95806a5444444444433b2e1e0c00000000000000000000000000000000000000000008141c2122222c42576c8398abababababaeb9c9dbddddddddddcdbdb0ababababab9d88725c47322222221e160b0000000008141c212222222222222222253a4f647990a5bbd0e5faffead5c0ab95806a543f2a2222222222222222221e160b0000000f20303c43444444444444444444444f647990a5bbd0e5faffead5c0ab95806a5444444444444444444444443e33241301000f20303c434444444444444444444444444442392c1c0a0000000000000000000000000000000f223444505454545454647990a5bbd0dddddddddddddddddde0e7d4c2b4acababababa59079644f3a25222220190f0200001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5344311e0a000000000000001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a44475c72889db3c0ab95806a543f4c62778da3b8cde2f8ffedd8c3ad98836c57422c17000000000000000000000000000f253a4f647990a5bbd0e5faffead5c0ab95806a543f2a150000000000000000000000000000172a3c4c55575757575757575757575757575448382612000000000000000000000000000000000000000000000000000000000000000000091b2c3a44474747474f647990a5bbcfc2bab8b8b8b8ab95806a543f2f2f2f2e281d10000000000000000000000000000000000000000000071725303637373742576c8398adc0c0c0c0c2c8c8c8c8c8c8c8c8c8c8c4c0c0c0c0b39d88725c473737373732281b0b000007172530363737373737373737373a4f647990a5bbd0e5faffead5c0ab95806a543f3737373737373737373732281b0b000002121f292e2f2f2f2f2f2f2f2f2f3a4f647990a5bbd0e5faffead5c0ab95806a543f2f2f2f2f2f2f2f2f2f2f2b22150600001022323e4647474747474747474747474747453c2e1d0b000000000000000000000000000000051626333c3f3f3f3f4f647990a5bbc8c8c8c8c8c8c8c8c8c8cbd4e0d2c7c0c0c0c0bba59079644f3a373737352d201101001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a4747474747474747474747474747474747474747474747474135261402000000000000001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a44475c72889db3c0ab95806a543f4c62778da3b8cde2f8ffedd8c3ad98836c57422c17000000000000000000000000000f253a4f647990a5bbd0e5faffead5c0ab95806a543f2a1500000000000000000000000000001d32465a696c6c6c6c6c6c6c6c6c6c6c6c6c6655412d180300000000000000000000000000000000000000000000000000000000000000001125384a575c5c5c5c5c647990a5bbc2b1a5a3a3a3a3a395806a543f2a1a1a19140b00000000000000000000000000000000000000000000122535434b4c4c4c4c576c8398adc3c6b9b3b3b3b3b3b3b3b3b3b3b3b3b3b3b7c2c8b39d88725c4c4c4c4c4c463929170400122535434b4c4c4c4c4c4c4c4c4c4c4f647990a5bbd0e5faffead5c0ab95806a544c4c4c4c4c4c4c4c4c4c4c46392917040000010d15191a1a1a1a1a1a1a1a253a4f647990a5bbd0e5faffead5c0ab95806a543f2a1a1a1a1a1a1a1a1a1a160f04000000192d3f505b5c5c5c5c5c5c5c5c5c5c5c5c5c594c3b281400000000000000000000000000000000081621282a2a2a3a4f647990a5b3b3b3b3b3b3b3b3b3b3b3b7c2d2e3dad6d5d5d0bba59079644f4c4c4c4c493e2f1e0b001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a4432323232323232323232323232323232323232323232322d24170800000000000000001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a44475c72889db3c0ab95806a543f4c62778da3b8cde2f8ffedd8c3ad98836c57422c17000000000000000000000000000f253a4f647990a5bbd0e5faffead5c0ab95806a543f2a1500000000000000000000000000001f344a5f74838383838383838383838383836f5a442f1a050000000000000000000000000000000000000000000000000000000000000000162b4055687272727272727990a5bbbaa5938d8d8d8d8d8d806a543f2a1500000000000000000000000000000000000000000000000000001b2f42536062626262626c8398adc3b8a89e9d9d9d9d9d9d9d9d9d9d9d9d9da5b4c7b39d8872626262626261574734200b001b2f4253606262626262626262626262647990a5bbd0e5faffead5c0ab95806a626262626262626262626261574734200b000000000000000000000000000f253a4f647990a5bbd0e5faffead5c0ab95806a543f2a1500000000000000000000000000001e33485c6e727272727272727272727272726a57432e190400000000000000000000000000000000040d131515253a4f6479909d9d9d9d9d9d9d9d9d9d9d9da5b4c7daefebeae5d0bba590796462626262625c4d3b2713001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a442f1d1d1d1d1d1d1d1d1d1d1d1d1d1d1d1d1d1d1d1d1d1c1911060000000000000000001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a44475c72889db3c0ab95806a543f4c62778da3b8cde2f8ffedd8c3ad98836c57422c17000000000000000000000000000f253a4f647990a5bbd0e5faffead5c0ab95806a543f2a1500000000000000000000000000001f344a5f748b9898989898989898989898866f5a442f1a0f0f0b040000000000000000000000000000000000000000000000000000000000172c42576c8388888888888892a6bbb8a38d7777777777777768533f291400000000000000000000000000000000000000000000000000001f34495e717777777777778398adc3b19c8a8888888888888888888888888897acc0b39d8877777777777775634e39240f001f34495e717777777777777777777777777990a5bbd0e5faffead5c0ab958077777777777777777777777775634e39240f000000000000000000000000000f253a4f647990a5bbd0e5faffead5c0ab95806a543f2a1500000000000000000000000000001f344a5f74888888888888888888888888866f5a442f1a0500000000000000000000000000000000000000000f253a4f64798888888888888888888888888897acc0d6ebffffe5d0bba590797777777777776a56412c17001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a442f1a0500000000000000000000000000000000000000000000000000000000000000001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a44475c72889db3c0ab95806a543f4c62778da3b8cde2f8ffedd8c3ad98836c57422c17000000000000000000000000000f253a4f647990a5bbd0e5faffead5c0ab95806a543f2a1500000000000000000000000000001f344a5f748ba0adadadadadadadadad9b866f5a442f25252420170b00000000000000000000000000000000000000000000000008101415172c42576c83989d9d9d9d9da2b0c2b8a38d776262626262625a4b38251000000000000000000000000000000000000000000000000000001f344a5f748b8d8d8d8d8d8e9cafc4b09b867272727272727272727272728095abc0b5a0908d8d8d8d8d8d79644f3a250f001f344a5f748b8d8d8d8d8d8d8d8d8d8d8d8d95a8bcd1e6fbffebd6c1ad998d8d8d8d8d8d8d8d8d8d8d8d8d79644f3a250f000000000000000000000000000f253a4f647990a5bbd0e5faffead5c0ab95806a543f2a1500000000000000000000000000001f344a5f748b9d9d9d9d9d9d9d9d9d9d9b866f5a442f1a0500000000000000000000000004050505050505050e23384d61707272727272727272727272728095abc0d5eafafbe6d1bca8958d8d8d8d8d8d836c57422c17001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a442f1a0500000000000000000000000000000000000000000000000000000000000000001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a44475c72889db3c0ab95806a543f4c62778da3b8cde2f8ffedd8c3ad98836c57422c17000000000000000000000000000f253a4f647990a5bbd0e5faffead5c0ab95806a543f2a1500000000000000000000000000001f344a5f748ba0b5c3c3c3c3c3c3c3b09b866f5a443a3a3a3934291b0b000000000000000000000000000000000000000000000e1a24292a2a2c42576c8398adb3b3b3b3b5bfcdb8a38d77624c4c4c4c4c483d2d1c0900000000000000000000000000000000000000000000000000001f344a5f748ba0a3a3a3a3a3aab9c5b09b866f5c5c5c5c5c5c5c5c5c5c6a8095abc0beaea4a3a3a3a3a39079644f3a250f001f344a5f748ba0a3a3a3a3a3a3a3a3a3a3a3a6b3c4d7ebfffff0dcc9b7a9a3a3a3a3a3a3a3a3a3a3a3a39079644f3a250f000000000000000000000000000f253a4f647990a5bbd0e5faffead5c0ab95806a543f2a1500000000000000000000000000001f344a5f748ba0b3b3b3b3b3b3b3b3b09b866f5a442f1a05000000000000000000010d15191a1a1a1a1a1a1a1a1e3144535c5c5c5c5c5c5c5c5c5c5c5c6a8095abc0d5e5e5e6ebd7c4b3a6a3a3a3a3a398836c57422c17001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a442f1a121212121212121212121212121212121212121212121212121212100b020000001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a44475c72889db3c0ab95806a543f4c62778da3b8cde2f8ffedd8c3ad98836c57422c17000000000000000000000000000f253a4f647990a5bbd0e5faffead5c0ab95806a543f2a1500000000000000000000000000001f344a5f748ba0b0b0b0b0b0b6c2c5b09b866f5a4f4f4f4f4e473928160300000000000000000000000000000000000000000c1d2c373e3f3f3f42576c8398adc3c8c5c0c0c0c0b8a38d77624c37373737342b1f0f0000000000000000000000000000000000000000000000000000001f344a5f748ba0b5b8b8b8b8bdc8c5b09b866f5a4747474747474747546a8095abc0ccbfb9b8b8b8b8a59079644f3a250f001f344a5f748ba0b5b8b8b8b8b8b8b8b8b8b8bac3d1e2f4fffff8e6d5c7bcb8b8b8b8b8b8b8b8b8b8b8a59079644f3a250f000000000000000000000000000f253a4f647990a5bbd0e5faffead5c0ab95806a543f2a1500000000000000000000000000001f344a5f748ba0b5c8c8c8c8c8c8c5b09b866f5a442f1a05000000000000000002121f292e2f2f2f2f2f2f2f2f2f2f35414747474747474747474747546a8095abc0d0d0d0d1d7e2d1c3bab8b8b8b8ad98836c57422c17001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a442f27272727272727272727272727272727272727272727272727272727251e140600001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a44475c72889db3c0ab95806a543f4c62778da3b8cde2f8ffedd8c3ad98836c57422c17000000000000000000000000000f253a4f647990a5bbd0e5faffead5c0ab95806a543f2a1500000000000000000000000000001f344a5f748b9b9b9b9b9b9ba4b5c5b09b866f6464646464635746321e09000000000000000000000000000000000000000016293b495354545454576c8398adc3c0b3abababababa38d77624c372222221f180e010000000000000000000000000000000000000000000000000000001f344a5f748ba0b5cbcdcdcdd1dac5b09b866f5a443232323232323f546a8095abc0d5d3cecdcdcdbba59079644f3a250f001f344a5f748ba0b5bbbbbbbbbbbbbbbbbbbbbdc6d3e3f5fffffae8d7c9bfbbbbbbbbbbbbbbbbbbbbbba59079644f3a250f000000000000000000000000000f253a4f647990a5bbd0e5faffead5c0ab95806a543f2a1500000000000000000000000000001f344a5f748ba0b5cbdddddddddac5b09b866f5a442f1a0500000000000000000f20303c43444444444444444444444444444239323232323232323f546a8095abbbbbbbbbbcc4d1e1d6cfcdcdcdc3ad98836c57422c17001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a443c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3a31241504001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a44475c72889db3c0ab95806a543f4c62778da3b8cde2f8ffedd8c3ad98836c57422c17000000000000000000000000000f253a4f647990a5bbd0e5faffead5c0ab95806a543f2a1500000000000000000000000000001f344a5f748686868686868699aec3b09b8679797979797975614c37220c00000000000000000000000000000000000000001d314558676a6a6a6a6a6c8398adc3b5a29695959595958d77624c37220d0d0b0500000000000000000000000000000000000000000000000000000000001f344a5f748ba0b5cbe0e2e3e5dac5b09b866f5a442f1d1d1d1d2a3f546a8095abc0d5e7e3e2e2d0bba59079644f3a250f001f344a5f748ba0a5a5a5a5a5a5a5a5a5a5a5a9b5c6d8ecfffff1ddcab9aba5a5a5a5a5a5a5a5a5a5a5a59079644f3a250f000000000000000000000000000f253a4f647990a5bbd0e5faffead5c0ab95806a543f2a1500000000000000000000000000001f344a5f748ba0b5cbe0f2f2f0dac5b09b866f5a442f1a050000000000000000182b3e4e585a5a5a5a5a5a5a5a5a5a5a5a5a564a39271d1d1d1d2a3f546a8095a5a5a5a5a5a8b3c3d6e9e4e2e2d8c3ad98836c57422c17001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a5252525252525252525252525252525252525252525252525252525252524e4233210e001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a44475c72889db3c0ab95806a543f4c62778da3b8cde2f8ffedd8c3ad98836c57422c17000000000000000000000000000f253a4f647990a5bbd0e5faffead5c0ab95806a543f2a1500000000000000000000000000001e33475b6b6f6f6f6f6f6f8398adc3b39f9190909090908d77624c37220d07050000000000000000000000000000000000001f344a5f748080808080808398adc3b09b8680808080808077624c37220d00000000000000000000000000000000000000000000000000000000000000001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a442f1a0500152a3f546a8095abc0d5eaffffe5d0bba59079644f3a250f001f344a5f748b90909090909090909090909097a9bdd2e6fbffecd7c2ae9b9090909090909090909090909079644f3a250f000000000000000000000000000f253a4f647990a5bbd0e5faffead5c0ab95806a543f2a1500000000000000000000000000001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a442f1a0500000000000000001e33475b6b6f6f6f6f6f6f6f6f6f6f6f6f6f6856422d190400152a3f546a8090909090909095a6bacfe4f9ffedd8c3ad98836c57422c17001f344a5f748ba0b5cbe0f5fff0dac5b09b866f6767676767676767676767676767676767676767676767676767676767676760503d2914001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a44475c72889db3c0ab95806a543f4c62778da3b8cde2f8ffedd8c3ad98836c57422c1700000001080c0d0d0d0d0d0d0d0f253a4f647990a5bbd0e5faffead5c0ab95806a543f2a150d0d0d0d0d0d0d0c090300000000182b3e4e585a5a5a5a5a6c8398adc3bdaea6a5a5a5a5a38d77624c37221d1d1a1409000000000000000000000000000000001f344a5f748b959595959596a0b2c5b09b866f6a6a6a6a6a685a48341f0b00000000000000000000000000000000000000000000000000000000000000001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a442f1a0500152a3f546a8095abc0d5eaffffe5d0bba59079644f3a250f001f34495e737979797979797979797979797990a5bbd0e5faffead5c0ab958079797979797979797979797977644f3a240f00000000000000000000060b0d0f253a4f647990a5bbd0e5faffead5c0ab95806a543f2a1500000000000000000000000000001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a442f1a0d0c090200000000001f344a5f74868686868686868686868686866f5a442f1a0500142a3f5469797979797979798da3b8cde2f8ffedd8c3ad98836c57422c17001f344a5f748ba0b5cbe0f5fff0dac5b09b867c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c6c57422c17001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a44475c72889db3c0ab95806a543f4c62778da3b8cde2f8ffedd8c3ad98836c57422c17000008141c212222222222222222253a4f647990a5bbd0e5faffead5c0ab95806a543f2a2222222222222222221e160b0000000f20303c4344444444576c8398adc3ccc1bbbbbbbbb8a38d77624c373232322f271b0c0000000000000000000000000000001f344a5f748ba0abababababb1bec5b09b866f5a54545454534b3d2b180500000000000000000000000000000000000000000000000000000000000000001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a442f1a0500152a3f546a8095abc0d5eaffffe5d0bba59079644f3a250f001b304355626464646464646464646464647990a5bbd0e5ededead5c0ab95806a646464646464646464646464594835210c0000000000000000020f19202222253a4f647990a5bbd0e5faffead5c0ab95806a543f2a1500000000000000000000000000001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a442f2222211d1509000000001f344a5f748b9b9b9b9b9b9b9b9b9b9b9b866f5a442f1a121212263a4c5d646464646464778da3b8cde2eeededd8c3ad98836c57422c17001f344a5f748ba0b5cbe0f5f5f1dcc8b4a19493939393939393939393939393939393939393939393939393939393939393836c57422c17001f344a5f748ba0b5cbe0f5f5f0dac5b09b866f5a44475c72889db3c0ab95806a543f4c62778da3b8cde2f5f5edd8c3ad98836c57422c170007172530363737373737373737373a4f647990a5bbd0e5faffead5c0ab95806a543f3737373737373737373732281b0b000002121f292e2f2f2f42576c8398adb8b8b8b8bac3cdb8a38d77624c4747474743382a190700000000000000000000000000001f344a5f748ba0b5c0c0c0c0c4cfc5b09b866f5a443f3f3f3f382d1f0e0000000000000000000000000000000000000000000000000000000000000000001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a442f1a0500152a3f546a8095abc0d5eaffffe5d0bba59079644f3a250f00142637454e4f4f4f4f4f4f4f4f4f4f4f647990a5bbd0d8d8d8ddd5c0ab95806a544f4f4f4f4f4f4f4f4f4f4f483b2b1805000000000000000111202d353737373a4f647990a5bbd0e5faffead5c0ab95806a543f2a1500000000000000000000000000001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a4437373737312719090000001f344a5f748ba0b0b0b0b0b0b0b0b0b09b866f5a442f27272727272f3f4a4f4f4f4f4f62778da3b8cde0d9d8d8d8c3ad98836c57422c17001f344a5f748ba0b5cbe0e0e0e0e0d0bfb0a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a898836c57422c17001f344a5f748ba0b5cbe0e0e0e0dac5b09b866f5a44475c72889db3c0ab95806a543f4c62778da3b8cde0e0e0e0d8c3ad98836c57422c1700122535434b4c4c4c4c4c4c4c4c4c4c4f647990a5bbd0e5faffead5c0ab95806a544c4c4c4c4c4c4c4c4c4c4c46392917040000010d15191a1a2c42576c8398a3a3a3a3a3a6b3c4b8a38d77625c5c5c5c5c564836230f00000000000000000000000000001f344a5f748ba0b3b3b3b3b3b8c4c5b09b866f5a4c4c4c4c4c443727150200000000000000000000000000000000000000000000000000000000000000001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a442f1a0500152a3f546a8095abc0d5eaffffe5d0bba59079644f3a250f0009192733393a3a3a3a3a3a3a3a3a3a4f647990a5bbc3c3c3c3c9d4c0ab95806a543f3c3c3c3c3c3c3c3c3c3c372d1f0e00000000000000000b1e2f3e494c4c4c4c4f647990a5bbd0e5faffead5c0ab95806a543f2a1500000000000000000000000000001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a4c4c4c4c4c443727150200001f344a5f748ba0b5c3c3c3c3c5c5c5b09b866f5a443c3c3c3c3c3c3c3c3c3c3c3c3c4c62778da3b8cdcdc5c3c3c3c3ad98836c57422c17001f344a5f748ba0b5cbcbcbcbcbcbcbcbc3bebdbdbdbdbdbdbdbdbdbdbdbdbdbdbdbdbdbdbdbdbdbdbdbdbdbdbdbdbdad98836c57422c17001f344a5f748ba0b5cbcbcbcbcbcbc5b09b866f5a44475c72889db3c0ab95806a543f4c62778da3b8cbcbcbcbcbcbc3ad98836c57422c17001b2f4253606262626262626262626262647990a5bbd0e5faffead5c0ab95806a626262626262626262626261574734200b00000000000000172c42576c838d8d8d8d8d8d95a8bcb8a38d7772727272727266523e291400000000000000000000000000001f344a5f748b9d9d9d9d9d9ea6b6c5b09b866f6262626262605544311d0900000000000000000000000000000000000000000000000000000000000000001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a442f1a0500152a3f546a8095abc0d5eaffffe5d0bba59079644f3a250f00000a161f242525252525252525253a4f647990a5adadadadaeb6c4c0ab95806a5452525252525252525252514a3d2c1a060000000000000013273b4d5c6262626262647990a5bbd0e5faffead5c0ab95806a543f2a1500000000000000000000000000001f344a5f748ba0b5cbe0f5fff0dac5b09b866f6262626262605544311d0900001f344a5f748ba0adadadadadb3c0c5b09b866f5a52525252525252525252525252525262778da3b8cabbb0adadadadad98836c57422c17001f344a5f748ba0b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5ad98836c57422c17001f344a5f748ba0b5b5b5b5b5b5b5b5b09b866f5a44475c72889db3b5ab95806a543f4c62778da3b5b5b5b5b5b5b5b5ad98836c57422c17001f34495e717777777777777777777777777990a5bbd0e5faffead5c0ab958077777777777777777777777775634e39240f00000000000000172c41566a7777777777777990a5bbb9a490888888888888806a543f2a1500000000000000000000000000001f344a5f74888888888888899aaec3b09b8677777777777773604c37210c00000000000000000000000000000000000000000000000000000000000000001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a442f1a0500152a3f546a8095abc0d5eaffffe5d0bba59079644f3a250f000000030b0f0f0f0f0f0f0f0f0f253a4f64799098989898989aa6b8c0ab95806a6767676767676767676767665b4936210d00000000000000172c41566a7777777777777990a5bbd0e5faffead5c0ab95806a543f2a1500000000000000000000000000001f344a5f748ba0b5cbe0f5fff0dac5b09b8677777777777773604c37210c00001f344a5f748b989898989898a2b3c5b09b866f6767676767676767676767676767676767778da3b8c0ad9d989898989898836c57422c17001f344a5f748ba0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a098836c57422c17001f344a5f748ba0a0a0a0a0a0a0a0a0a09b866f5a44475c72889da0a0a095806a543f4c62778da0a0a0a0a0a0a0a0a0a098836c57422c17001f344a5f748b8d8d8d8d8d8d8d8d8d8d8d8d95a8bcd1e6fbffebd6c1ad998d8d8d8d8d8d8d8d8d8d8d8d8d79644f3a250f0000000000000013273b4d5c6262626262647990a5bbbfaea09d9d9d9d9d95806a543f2a1515140f07000000000000000000001e33485c6e7272727272728398adc3b29e8f8d8d8d8d8d8d77624c37220d05030000000000000000000000000000000000000000000000000000000000001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a442f1a0500152a3f546a8095abc0d5eaffffe5d0bba59079644f3a250f000000000000000000000000000f253a4f6479838383838383899eb3c0ab95807c7c7c7c7c7c7c7c7c7c7c7c79644f3a240f00000000000000172c42576c838d8d8d8d8d8d95a8bcd1e6fafaead5c0ab95806a543f2a1500000000000000000000000000001f344a5f748ba0b5cbe0f5fff1dcc7b29e8f8d8d8d8d8d8d77624c37220d00001f344a5f748383838383838498adc3b09b867c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c8da3b8bba590838383838383836c57422c17001f344a5f748b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b836c57422c17001f344a5f748b8b8b8b8b8b8b8b8b8b8b8b866f5a44475c72888b8b8b8b8b806a543f4c62778b8b8b8b8b8b8b8b8b8b8b8b836c57422c17001f344a5f748ba0a3a3a3a3a3a3a3a3a3a3a3a6b3c4d7ebfffff0dcc9b7a9a3a3a3a3a3a3a3a3a3a3a3a39079644f3a250f000000000000000b1e2f3e494c4c4c4c4f647990a5bbccbeb5b3b3b3b3ab95806a543f2a2a2a2923190c000000000000000000192d3f505b5c5c5c5c5c6c8398adc3bbaca3a3a3a3a3a38d77624c37221a1a181107000000000000000000000000000000000000000000000000000000001f344a5f748ba0b5cbe0f5f5f0dac5b09b866f5a442f1a0500152a3f546a8095abc0d5eaf5f5e5d0bba59079644f3a250f000000000000000000000000000e23374b5e6b6c6c6c6c6c72889db3c3af9d9393939393939393939393939079644f3a250f00000000000000172c42576c8398a3a3a3a3a3a6b3c4d7e5e5e5e5d5c0ab95806a543f2a1500000000000000000000000000001f344a5f748ba0b5cbe0f5fff5e1cebbaca3a3a3a3a3a38d77624c37220d00001d32465a696c6c6c6c6c6c8398adc3b4a1949393939393939393939393939393939393939397a8bbbba590796c6c6c6c6c6c64533f2a15001f34495d707474747474747474747474747474747474747474747474747474747474747474747474747474747474747474746955412c17001f34495d70747474747474747474747474746b5843465b6e7474747474747467533e4b6071747474747474747474747474746955412c17001f344a5f748ba0b5b8b8b8b8b8b8b8b8b8b8bac3d1e2f4fffff8e6d5c7bcb8b8b8b8b8b8b8b8b8b8b8a59079644f3a250f000000000000000111202d353737373a4f647990a5bbc0c0c0c0c7c8c0ab95806a543f3f3f3f3e362a1b0900000000000000001022323e4647474747576c8398adc3cabeb8b8b8b8b8a38d77624c372f2f2f2c24190a0000000000000000000000000000000000000000000000000000001f344a5f748ba0b5cbe0e0e0e0dac5b09b866f5a442f1a0500152a3f546a8095abc0d5e0e0e0e0d0bba59079644f3a250f00000000000000000000000000081c2f404f57575757575c72889db3c8bbaea8a8a8a8a8a8a8a8a8a8a8a59079644f3a250f00000000000000172c42576c8398adb8b8b8b8bac3d0d0d0d0d0d0d0c0ab95806a543f2a1500000000000000000000000000001f344a5f748ba0b5cbe0f5fffdebd9cabeb8b8b8b8b8a38d77624c37220d0000172a3c4c5557575757576c8398adc3bfb0a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8aab5c5bba590796457575757575346362310001a2e41515d5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5a4c3a2612001a2e41515d5f5f5f5f5f5f5f5f5f5f5f5f5f5b4e3c3e505c5f5f5f5f5f5f5f58493743535e5f5f5f5f5f5f5f5f5f5f5f5f5f5a4c3a2612001f344a5f748ba0b5bbbbbbbbbbbbbbbbbbbbbdc6d3e3f5fffffae8d7c9bfbbbbbbbbbbbbbbbbbbbbbba59079644f3a250f0000000000000000020f19202222253a4f647990a5ababababacb4c2c0ab95806a5454545454524838271400000000000000000413212b3132323242576c8398adbbbbbbbbbdc6cdb8a38d77624c44444444403628170500000000000000000000000000000000000000000000000000001f344a5f748ba0b5cbcbcbcbcbcbc5b09b866f5a442f1a0500152a3f546a8095abc0cbcbcbcbcbcbbba59079644f3a250f00000000000000000000000000001222313c41424242475c72889db3c8cbc1bdbdbdbdbdbdbdbdbdbdbba59079644f3a250f00000000000000172c42576c8398adbbbbbbbbbbbbbbbbbbbbbbbbbbbbab95806a543f2a1500000000000000000000000000001f344a5f748ba0b5cbe0f5fffff7e8dbd2cdcdcdcdb8a38d77624c37220d00000d1e2e3a4142424242576c8398adc3cbc3bebdbdbdbdbdbdbdbdbdbdbdbdbdbdbdbdbdbdbdbfc7cbbba59079644f424242423f362818060011233341494a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a463c2e1d0a0011233341494a4a4a4a4a4a4a4a4a4a4a4a4a473e30323f484a4a4a4a4a4a4a453b2c3542494a4a4a4a4a4a4a4a4a4a4a4a4a463c2e1d0a001f344a5f748ba0a5a5a5a5a5a5a5a5a5a5a5a9b5c6d8ecfffff1ddcab9aba5a5a5a5a5a5a5a5a5a5a5a59079644f3a250f00000000000000000000060b0d0f253a4f647990959595959597a5b7c0ab95806a6a6a6a6a6a6656432f1a000000000000000000030f171c1d1d2c42576c8398a5a5a5a5a5a9b5c6b8a38d77625a5a5a5a5a544635220e00000000000000000000000000000000000000000000000000001f344a5f748ba0b5b5b5b5b5b5b5b5b09b866f5a442f1a0500152a3f546a8095abb5b5b5b5b5b5b5b5a59079644f3a250f000000000000000000000000000004131f282c2c2c32475c72889db3b5b5b5b5b5b5b5b5b5b5b5b5b5b5a59079644f3a250f00000000000000172c42576c8398a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a595806a543f2a1500000000000000000000000000001f344a5f748ba0b5cbe0f5fffffff9eee6e3e2e2cdb8a38d77624c37220d000000101d262c2c2c2c42576c8398adb5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5a59079644f3a2c2c2c2a23180a00000515232e34343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434322a1e1000000515232e3434343434343434343434343434332b20222d333434343434343431291d252f3434343434343434343434343434322a1e1000001f344a5f748b90909090909090909090909097a9bdd2e6fbffecd7c2ae9b9090909090909090909090909079644f3a250f000000000000000000000000000f253a4f6479808080808080889db3c0ab9580808080808080725c47321d0000000000000000000000000000172c42576c8390909090909097a9bdb8a38d776f6f6f6f6f6f64513d281300000000000000000000000000000000000000000000000000001f344a5f748ba0a0a0a0a0a0a0a0a0a09b866f5a442f1a0500152a3f546a8095a0a0a0a0a0a0a0a0a0a09079644f3a250f000000000000000000000000000000020d1417171d32475c72889da0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a09079644f3a250f00000000000000172c42576c83909090909090909090909090909090909090806a543f2a1500000000000000000000000000001f344a5f748ba0b5cbe0f5ffffffffffffffffe2cdb8a38d77624c37220d000000000a121717172c42576c8398a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a09079644f3a2517171510060000000005111a1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1d170d0000000005111a1f1f1f1f1f1f1f1f1f1f1f1f1f1f1e180f10191e1f1f1f1f1f1f1f1d160c121b1f1f1f1f1f1f1f1f1f1f1f1f1f1f1d170d0000001f34495e737979797979797979797979797990a5bbd0e5faffead5c0ab958079797979797979797979797977644f3a240f000000000000000000000000000d22364a5d696a6a6a6a6a72889db3c4b09e95959595959588725c47321d0000000000000000000000000000172c41576b7979797979797990a5bbb8a38f868686868686806a543f2a1500000000000000000000000000000000000000000000000000001f344a5f748b8b8b8b8b8b8b8b8b8b8b8b866f5a442f1a0500152a3f546a808b8b8b8b8b8b8b8b8b8b8b8b79644f3a250f00000000000000000000000000000000000000001d32475c72888b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b79644f3a250f00000000000000172c41576b797979797979797979797979797979797979797969543f2a1400000000000000000000000000001f344a5f748ba0b5cbe0f5ffffffffffffffffe2cdb8a38d77624c37220d0000000000000000172c42576c838b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b79644f3a250f00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001b304355626464646464646464646464647990a5bbd0e5faffead5c0ab95806a646464646464646464646464594835210c00000000000000000000000000071b2d3f4c54545454545c72889db3c8bdb0ababababab9d88725c47321d000000000000000000000000000014283c4f5e6464646464647990a5bbbeac9e9b9b9b9b9b95806a543f2a1512110c04000000000000000000000000000000000000000000001f34495d70747474747474747474747474746b58432e19040014293e53677474747474747474747474747473624e39240f00000000000000000000000000000000000000001c31465b6e7474747474747474747474747474747474747473624e39240f0000000000000014283c4f5e64646464646464646464646464646464646464645d4c3a261100000000000000000000000000001f344a5f748ba0b5cbe0f5ffffffffffffffffe2cdb8a38d77624c37220d0000000000000000172c415569747474747474747474747474747474747474747474747474747474747474747473624e39240f000000000000000000000000000000000000000000020d1417171717171717171717171717171717171717171717171717171717171717171715100600000000000a121717171717171717171717171717161108000000000000000000000000010b131717171717171717171717171717151006000000142637454e4f4f4f4f4f4f4f4f4f4f4f647990a5bbd0e5faffead5c0ab95806a544f4f4f4f4f4f4f4f4f4f4f483b2b1805000000000000000000000000000010212f3a3f3f3f3f475c72889db3c8cdc4c0c0c0c0b39d88725c47321d00000000000000000000000000000d1f31404b4f4f4f4f4f647990a5bbcabbb2b0b0b0b0ab95806a543f2a27272620170a0000000000000000000000000000000000000000001a2e41515d5f5f5f5f5f5f5f5f5f5f5f5f5f5b4e3c2915000010243749585f5f5f5f5f5f5f5f5f5f5f5f5f5e5545331f0b0000000000000000000000000000000000000000172b3e505c5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5e5545331f0b000000000000000d1f31404b4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4a3f2f1d0a00000000000000000000000000001f344a5f748ba0b5cbe0f5ffffffffffffffffe2cdb8a38d77624c37220d000000000000000012263a4c5a5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5e5545331f0b000000000000000000000000000000000000000004131f282c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2a23180a000000101d262c2c2c2c2c2c2c2c2c2c2c2c2c2c2b241a0c0000000000000000000002111e272c2c2c2c2c2c2c2c2c2c2c2c2c2c2a23180a000009192733393a3a3a3a3a3a3a3a3a3a4f647990a5bbd0e5faffead5c0ab95806a543f3a3a3a3a3a3a3a3a3a3a352b1d0d000000000000000000000000000004172939464c4c4c4c4c5c72889db3c8c2b7b3b3b3b3b39d88725c47321d00000000000000000000000000000213222f373a3a3a3a4f647990a5bbc3c3c3c3c5c5c0ab95806a543f3c3c3c3b34281908000000000000000000000000000000000000000011233341494a4a4a4a4a4a4a4a4a4a4a4a4a473e301f0d0000081a2c3b454a4a4a4a4a4a4a4a4a4a4a4a4a49433727160300000000000000000000000000000000000000000f21323f484a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a494337271603000000000000000213222f373a3a3a3a3a3a3c3c3c3c3c3c3c3c3c3c3c3c3c3c393023130100000000000000000000000000001f344a5f748ba0b5cbe0f5ffffffffffffffffe2cdb8a38d77624c37220d00000000000000000a1d2e3c464a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a49433727160300000000000000000000000000000000000000001222313c4142424242424242424242424242424242424242424242424242424242424242423f36281806000d1e2e3a414242424242424242424242424240372a1a090000000000000000000f202f3b41424242424242424242424242423f3628180600000a161f242525252525252525253a4f647990a5bbd0e5faffead5c0ab95806a543f2a25252525252525252421180d0000000000000000000000000000000b2034475761626262626272889db3c7b4a59d9d9d9d9d9d88725c47321d00000000000000000000000000000004121c232525253a4f647990a5adadadadaeb6c4c0ab95806a5452525252504637251200000000000000000000000000000000000000000515232e3434343434343434343434343434332b2012010000000e1d293134343434343434343434343434343026190a0000000000000000000000000000000000000000000313222d3334343434343434343434343434343434343434343026190a00000000000000000004121c232525252c3d4a51525252525252525252525252524d41301e0b00000000000000000000000000001f344a5f748ba0b5cbe0f5ffffffffffffffffe2cdb8a38d77624c37220d000000000000000000101e2a323434343434343434343434343434343434343434343434343434343434343434343026190a0000000000000000000000000000000000000000081c2f404f575757575757575757575757575757575757575757575757575757575757575757534636231000172a3c4c55575757575757575757575757575448382612000000000000000006192d3e4d56575757575757575757575757575346362310000000030b0f0f0f0f0f0f0f0f0f253a4f647990a5bbd0e5faffead5c0ab95806a543f2a150f0f0f0f0f0f0f0f0c05000000000000000000000000000000000f24394e6375777777777777889db3c0ac9788888888888888725c47321d0000000000000000000000000000000000080e0f0f253a4f64799098989898989aa6b8c0ab95806a67676767676355422e1a00000000000000000000000000000000000000000005111a1f1f1f1f1f1f1f1f1f1f1f1f1f1f1e180f0200000000000c161d1f1f1f1f1f1f1f1f1f1f1f1f1f1f1b140900000000000000000000000000000000000000000000000410191e1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1b1409000000000000000000000000080e0f0f2136495b66676767676767676767676767675f4e3b261200000000000000000000000000001f344a5f748ba0b5cbe0f5ffffffffffffffffe2cdb8a38d77624c37220d000000000000000000000d171d1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1b14090000000000000000000000000000000000000000000e23374b5e6b6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c64533f2a15001d32465a696c6c6c6c6c6c6c6c6c6c6c6c6c6655412d1803000000000000000b2035495c6a6c6c6c6c6c6c6c6c6c6c6c6c6c64533f2a15000000000000000000000000000f253a4f647990a5bbd0e5faffead5c0ab95806a543f2a1500000000000000000000000000000000000000000000000003050f253a4f64798d8d8d8d8d8d90a0b5c0ab95807272727272726c5a45311c00000000000000000000000000000000000000000f253a4f6479838383838383899eb3c0ab95807c7c7c7c7c7c715c47321c0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000f243a4f64797c7c7c7c7c7c7c7c7c7c7c7c7c69543f2a1500000000000000000000000000001f344a5f748ba0b5cbe0f5ffffffffffffffffe2cdb8a38d77624c37220d000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000f253a4f647983838383838383838383838383838383838383838383838383838383838383836c57422c17001f344a5f74838383838383838383838383836f5a442f1a05000000000000000d22374c6277838383838383838383838383836c57422c17000000000000000000000000000f253a4f647990a5bbd0e5f5f5ead5c0ab95806a543f2a15000000000000000000000000000000000000000000000912181a1a253a4f647990a3a3a3a3a3a4aebec0ab95806a5c5c5c5c5c5a4e3d2a1600000000000000000000000000000000000000000e23374b5e6b6c6c6c6c6c72889db3c3af9d93939393939388725c47321d000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000010d15191a1a1a1a1a1a1a1a1a1a1a1a1a19130a0b14191a1a1a1a1a1a1a1a1a1a1a1a1a19140b0000000000000000000000000000000000000000000000000000000000000000000000000f253a4f6479909393939393939393939393806a543f2a1500000000000000000000000000001f344a5f748ba0b5cbe0f5f5f5f5f5f5f5f5f5e2cdb8a38d77624c37220d00000000000000000000061015171717171717171717171717171717171717171717171717171717171717171717140d02000000000000000000000000000000000000080e0f0f253a4f647990989898989898989898989898989898989898989898989898989898989898836c57422c17001f344a5f748b9898989898989898989898866f5a442f1a05000000000000000d22374c62778d9898989898989898989898836c57422c17000000000000000000000000000f253a4f647990a5bbd0e0e0e0e0d5c0ab95806a543f2a150000000000000000000000000000000000000000000c1a262d2f2f2f3a4f647990a5b8b8b8b8b9bfccc0ab95806a5447474747453d301f0e0000000000000000000000000000000000000000081c2f404f57575757575c72889db3c8bbaea8a8a8a8a89d88725c47321d000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000002121f292e2f2f2f2f2f2f2f2f2f2f2f2f2f2d271c1d282e2f2f2f2f2f2f2f2f2f2f2f2f2f2e281d1000000000000000000000000000000000000000000000000000000000000000000000000f253a4f647990a5a8a8a8a8a8a8a8a8a895806a543f2a1500000000000000000000000000001f344a5f748ba0b5cbe0e0e0e0e0e0e0e0e0e0e0cdb8a38d77624c37220d0000000000000000000a18232a2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c281f130400000000000000000000000000000004121c232525253a4f647990a5adadadadadadadadadadadadadadadadadadadadadadadadadadadad98836c57422c17001f344a5f748ba0adadadadadadadadad9b866f5a442f1a05000000000000000d22374c62778da3adadadadadadadadad98836c57422c17000000000000000000000000000f253a4f647990a5bbcbcbcbcbcbcbc0ab95806a543f2a150000000000000000000000000000000000000000081a2a3841444444444f647990a5bbcdc4bcbbbbbbbbab95806a543f323232312a1f12020000000000000000000000000000000000000000001222313c41424242475c72889db3c8cbc1bdbdbdbdb39d88725c47321d00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000f20303c434444444444444444444444444442392c2e3b4344444444444444444444444444433b2e1e0c000000000000000000000000000000000000000000000000000000000000000000000f253a4f647990a5bbbdbdbdbdbdbdbdab95806a543f2a1500000000000000000000000000001f344a5f748ba0b5cbcbcbcbcbcbcbcbcbcbcbcbcbb8a38d77624c37220d0000000000000000061828363f4242424242424242424242424242424242424242424242424242424242424242413c31221200000000000000000000000000000213222f373a3a3a3a4f647990a5bbc3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3ad98836c57422c17001f344a5f748ba0b5c3c3c3c3c3c3c3b09b866f5a442f1a05000000000000000d22374c62778da3b8c3c3c3c3c3c3c3ad98836c57422c17000000000000000000000000000f253a4f647990a5b5b5b5b5b5b5b5b5ab95806a543f2a15000000000000000000000000000000000000000011243748555a5a5a5a5a647990a5bbc3b3a8a5a5a5a5a595806a543f2a1d1d1c160e020000000000000000000000000000000000000000000004131f282c2c2c32475c72889db3b5b5b5b5b5b5b5b39d88725c47321d0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000182b3e4e585a5a5a5a5a5a5a5a5a5a5a5a5a564a393c4c575a5a5a5a5a5a5a5a5a5a5a5a5a574c3c2916000000000000000000000000000000000000000000000000000000000000000000000f253a4f647990a5b5b5b5b5b5b5b5b5ab95806a543f2a1500000000000000000000000000001f344a5f748ba0b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5a38d77624c37220d000000000000000010233646535757575757575757575757575757575757575757575757575757575757575757574f402f1c08000000000000000000000000000d1f31404b4f4f4f4f4f647990a5bbcabbb2b0b0b0b0b0b0b0b0b0b0b0b0b0b2bbcad8d8d8d8d8d8c3ad98836c57422c17001f344a5f748ba0b5cbd8d8d8d8d8c5b09b866f5a442f1a05000000000000000d22374c62778da3b8cdd8d8d8d8d8c3ad98836c57422c17000000000000000000000000000f253a4f647990a0a0a0a0a0a0a0a0a0a095806a543f2a150000000000000000000000000000000000000000162b4054666f6f6f6f6f6f7990a5bbbaa695909090909090806a543f2a1500000000000000000000000000000000000000000000000000000000020d1417171d32475c72889da0a0a0a0a0a0a0a0a09d88725c47321d00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001e33475b6b6f6f6f6f6f6f6f6f6f6f6f6f6f68564245596a6f6f6f6f6f6f6f6f6f6f6f6f6f6a5945301b000000000000000000000000000000000000000000000000000000000000000000000f253a4f647990a0a0a0a0a0a0a0a0a0a095806a543f2a1500000000000000000000000000001f344a5f748ba0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a08d77624c37220d0000000000000000152a3f53646c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6b5e4b37230e0000000000000000000000000014283c4f5e6464646464647990a5bbbeac9e9b9b9b9b9b9b9b9b9b9b9b9b9b9eacbed2e6edededd8c3ad98836c57422c17001f344a5f748ba0b5cbe0edededdac5b09b866f5a442f1a05000000000000000d22374c62778da3b8cde2edededd8c3ad98836c57422c17000000000000000000000000000f253a4f64798b8b8b8b8b8b8b8b8b8b8b8b806a543f2a150000000000000000000000000000000000000000172c42576c8386868686868691a6bbb8a38d7979797979797969543f2a140000000000000000000000000000000000000000000000000000000000000000001d32475c72888b8b8b8b8b8b8b8b8b8b8b88725c47321d00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001f344a5f74868686868686868686868686866f5a44475c7286868686868686868686868686725c47321d000000000000000000000000000000000000000000000000000000000000000000000f253a4f64798b8b8b8b8b8b8b8b8b8b8b8b806a543f2a1500000000000000000000000000001f344a5f748b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b77624c37220d0000000000000000172c42576c838383838383838383838383838383838383838383838383838383838383838379644f3a250f00000000000000000000000000172c41576b7979797979797990a5bbb8a38f868686868686868686868686868fa3b8cde3f8ffedd8c3ad98836c57422c17001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a442f1a05000000000000000d22374c62778da3b8cde2f8ffedd8c3ad98836c57422c17000000000000000000000000000f24394e62737474747474747474747474747467533e291400000000000000000000000000000000050d1112172c42576c83989b9b9b9b9b9faec1b8a38d776464646464645d4c3a26110000000000000000000000000000000000000000000000000000000000000000001c31465b6e747474747474747474747474746e5b46311c00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001f344a5f748b9b9b9b9b9b9b9b9b9b9b9b866f5a44475c72889b9b9b9b9b9b9b9b9b9b9b88725c47321d000000000000000000000000000000000000000000000000000000000000000000000f24394e62737474747474747474747474747467533e291400000000000000000000000000001f34495d707474747474747474747474747474747474747471604b36210c00000000030b0f0f172c42576c839898989898989898989898989898989898989898989898989898989898989079644f3a250f0f0e0800000000000000030707172c42576c8390909090909097a9bdb8a38d776f6f6f6f6f6f6f6f6f6f6f778da3b8cde2f8ffedd8c3ad98836c57422c17001f344a5f748ba0b5cbe0f5f8f0dac5b09b866f5a442f1a07070400000005070d22374c62778da3b8cde2f8f8edd8c3ad98836c57422c17000000000000000000000000000b1f3345555e5f5f5f5f5f5f5f5f5f5f5f5f5f58493724100000000000000000000000000000000c18212627272c42576c8398adb0b0b0b0b3bdccb8a38d77624f4f4f4f4f4a3f2f1d0a000000000000000000000000000000000000000000000000000000000000000000172b3e505c5f5f5f5f5f5f5f5f5f5f5f5f5f5c503e2b1700000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001f344a5f748ba0b0b0b0b0b0b0b0b0b09b866f5a44475c72889db0b0b0b0b0b0b0b0b09d88725c47321d000000000000000000000000000000000000000000000000000000000000000000000b1f3345555e5f5f5f5f5f5f5f5f5f5f5f5f5f584937241000000000000000000000000000001a2e41515d5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5e5343301c080000000a161f2425252c42576c8398adadadadadadadadadadadadadadadadadadadadadadadadadadadada59079644f3a252525231c1204000000030f171c1d1d2c42576c8398a5a5a5a5a5a9b5c6b8a38d77625a5a5a5a5a5a5a5a5a62778da3b8cde2f8ffedd8c3ad98836c57422c17001f344a5f748ba0b5cbe0e2e3e5dac5b09b866f5a442f1d1d1c181009141a1d1d22374c62778da3b8cde2e4e2e2d8c3ad98836c57422c17000000000000000000000000000316273743494a4a4a4a4a4a4a4a4a4a4a4a4a453b2c1a0800000000000000000000000000000a1b2a353b3c3c3c42576c8398adc3c5c5c3c3c3c3b8a38d77624c3a3a3a3a362d2111000000000000000000000000000000000000000000000000000000000000000000000f21323f484a4a4a4a4a4a4a4a4a4a4a4a4a483f32210f00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001f344a5f748ba0b5c3c3c3c3c5c5c5b09b866f5a44475c72889db3c5c5c5c3c3c3c3b39d88725c47321d000000000000000000000000000000000000000000000000000000000000000000000316273743494a4a4a4a4a4a4a4a4a4a4a4a4a453b2c1a08000000000000000000000000000011233341494a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a494235251401000009192733393a3a3a42576c8398adc3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3bba59079644f3a3a3a3a372f221302000413212b3132323242576c8398adbbbbbbbbbdc6cdb8a38d77624c444444444444444c62778da3b8cde2f8ffedd8c3ad98836c57422c17001f344a5f748ba0b5cbcdcdcdd1dac5b09b866f5a44323232312c221b272f323232374c62778da3b8cdd6cfcdcdcdc3ad98836c57422c1700000000000000000000000000000a192630343434343434343434343434343431291d0e000000000000000000000000000000152839475052525252576c8398adc3c2b5aeadadadada38d77624c37252525221b1003000000000000000000000000000000000000000000000000000000000000000000000313222d3334343434343434343434343434332d22130300000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001f344a5f748ba0adadadadadb3c0c5b09b866f5a52525c72889db3c8beb2adadadadad9d88725c47321d00000000000000000000000000000000000000000000000000000000000000000000000a192630343434343434343434343434343431291d0e0000000000000000000000000000000515232e3434343434343434343434343434343434343434342f251708000000142637454e4f4f4f4f576c8398adc3c4b7b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b2bbcabba59079644f4f4f4f4f4b40311f0d001022323e4647474747576c8398adc3cabeb8b8b8b8b8a38d77624c372f2f2f2f2f374c62778da3b8cde2f8ffedd8c3ad98836c57422c17001f344a5f748ba0b5b8b8b8b8bdc8c5b09b866f5a474747474640332a3843474747474c62778da3b8cdc3bab8b8b8b8ad98836c57422c1700000000000000000000000000000009141b1f1f1f1f1f1f1f1f1f1f1f1f1f1f1d160c000000000000000000000000000000001c3144576467676767676c8398adc3b6a49998989898988d77624c37220f0f0d07000000000000000000000000000000000000000000000000000000000000000000000000000410191e1f1f1f1f1f1f1f1f1f1f1f1f1f1e1910040000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001f344a5f748b989898989898a2b3c5b09b866f6767676772889db3c4b1a098989898989888725c47321d00000000000000000000000000000000000000000000000000000000000000000000000009141b1f1f1f1f1f1f1f1f1f1f1f1f1f1f1d160c000000000000000000000000000000000005111a1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1b1207000000001b3043556264646464646c8398adc3b7a69b9b9b9b9b9b9b9b9b9b9b9b9b9b9b9b9b9b9b9b9eacbebba590796464646464645e4f3c281400192d3f505b5c5c5c5c5c6c8398adc3bbaca3a3a3a3a3a38d77624c37221a1a1a22374c62778da3b8cde2f8ffedd8c3ad98836c57422c17001f344a5f748ba0a3a3a3a3a3aab9c5b09b866f5c5c5c5c5c5b51413648565c5c5c5c5c62778da3b8c4b3a6a3a3a3a3a398836c57422c170000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001f344a5f747c7c7c7c7c7c8398adc3b09b8683838383838377624c37220d000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001f344a5f748383838383838498adc3b09b867c7c7c7c7c7c889db3c0ab9683838383838383725c47321d00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001f34495e737979797979798398adc3b09b88868686868686868686868686868686868686868fa3b8bba590797979797979796b57412c17001e33485c6e7272727272728398adc3b29e8f8d8d8d8d8d8d77624c37220d000d22374c62778da3b8cde2f8ffedd8c3ad98836c57422c17001f344a5f748b8d8d8d8d8d8e9cafc4b09b867272727272726f5f4a3e5266727272727272778da3b8bca8958d8d8d8d8d8d836c57422c170000000a1217171717171717171717171717171717171717171717171717171717171717171717171717171717140d020000001f344a5f748b9393939393939fb1c5b09b866f6c6c6c6c6c6a5c4935200b000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000a12171717171717171717171717171717171717171717171717171717150f0500000000000a12171717171717171717171717171717171717171717171717171717150f050000001d32465a696c6c6c6c6c6c8398adc3b4a19493939393939395a3b6c0ab95806c6c6c6c6c6c6857442f1b000000000000000000000000000000000000000a121717171717171717171717171717161108000000000000000000000000000000000000030b0f0f0f0f0f0f0f0f0f0f0f0f0f0f0e090100000000000000000000000000000000000000000000000000000000001f344a5f748b9090909090909db0c5b09b866f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f778da3b8bda997909090909090836c57422c17001f344a5f74888888888888899aaec3b09b8677777777777773604c37210c000d22374c62778da3b8cde2f8ffedd8c3ad98836c57422c17001f34495e717777777777778398adc3b19c8a88888888888877624c3f546a8088888888888890a4b9bba590797777777777776a56412c170000101d262c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c281f130400001f344a5f748ba0a8a8a8a8a8afbdc5b09b866f5a57575757564d3e2d1906000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000101d262c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2a221608000000101d262c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2a2216080000172a3c4c5557575757576c8398adc3bfb0a8a8a8a8a8a8a8a9b2c1c0ab95806a5757575757554a3a2815000000000000000000000000000000000000101d262c2c2c2c2c2c2c2c2c2c2c2c2c2c2b241a0c000000000000000000000000000000000a161f2425252525252525252525252525231d1306000000000000000000000000000000000000000000000000000000001f344a5f748ba0a5a5a5a5a5adbbc5b09b866f5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a62778da3b8c6b5a9a5a5a5a5a598836c57422c17001f344a5f748b9d9d9d9d9d9ea6b6c5b09b866f6262626262605544311d12151522374c62778da3b8cde2f8ffedd8c3ad98836c57422c17001b2f42536062626262626c8398adc3b8a89e9d9d9d9d9d8d77624c3f546a80959d9d9d9d9da0aebfbba590796462626262625c4d3b2713000d1e2e3a414242424242424242424242424242424242424242424242424242424242424242424242424242413c31221200001f344a5f748ba0b5bdbdbdbdc2cbc5b09b866f5a44424242413b2f200f0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000d1e2e3a4142424242424242424242424242424242424242424242424242423e34261604000d1e2e3a4142424242424242424242424242424242424242424242424242423e34261604000d1e2e3a4142424242576c8398adc3cbc3bebdbdbdbdbdbdbec4cbc0ab95806a544242424240382c1c0b00000000000000000000000000000000000d1e2e3a414242424242424242424242424240372a1a09000000000000000000000000000009192733393a3a3a3a3a3a3a3a3a3a3a3a3a38302415040000000000000000000000000000000000000000000000000000001f344a5f748ba0b5bbbbbbbbc0cac5b09b866f5a44444444444444444444444444444c62778da3b8cdc6bdbbbbbbbbad98836c57422c17001f344a5f748ba0b3b3b3b3b3b8c4c5b09b866f5a4c4c4c4c4c44372720272a2a2a374c62778da3b8cde2f8ffedd8c3ad98836c57422c1700122535434b4c4c4c4c576c8398adc3c6b9b3b3b3b3b3a38d77624c3f546a8095abb3b3b3b3b5beccbba59079644f4c4c4c4c493e2f1e0b00172a3c4c555757575757575757575757575757575757575757575757575757575757575757575757575757574f402f1c08001f344a5f748ba0b5b5b5b5b5b5b5b5b09b866f5a442f2c2c2c271e1102000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000172a3c4c555757575757575757575757575757575757575757575757575757514433210d00172a3c4c555757575757575757575757575757575757575757575757575757514433210d0000101d262c2c2c2c42576c8398adb5b5b5b5b5b5b5b5b5b5b5b5b5b5ab95806a543f2c2c2c2b251b0e000000000000000000000000000000000000172a3c4c555757575757575757575757575754483826120000000000000000000000000000142637454e4f4f4f4f4f4f4f4f4f4f4f4f4f4c4233220f0000000000000000000000000000000000000000000000000000001f344a5f748ba0b5b8b8b8b8b8b8b8b09b866f5a442f2f2f2f2f2f2f2f2f2f2f2f374c62778da3b8cdd8d2d0d0d0c3ad98836c57422c17001f344a5f748ba0b5c8c8c8c8ccd5c5b09b866f5a4437373737312724323b3f3f3f3f4c62778da3b8cde2f8ffedd8c3ad98836c57422c1700071725303637373742576c8398adc0c0c0c0c2c8c8b8a38d77624c3f546a8095abc0c8c7c0c0c0c0bba59079644f3a373737352d201101001d32465a696c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6b5e4b37230e001f344a5f748ba0a0a0a0a0a0a0a0a0a09b866f5a442f1a1717130b01000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001d32465a696c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c62503c2813001d32465a696c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c62503c28130000000a121717172c42576c8398a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a095806a543f2a1717161109000000000000000000000000000000000000001d32465a696c6c6c6c6c6c6c6c6c6c6c6c6c6655412d1803000000000000000000000000001b304355626464646464646464646464646460513e2b160200000000000000000000000000000000000000000000000000001f344a5f748ba0a3a3a3a3a3a3a3a3a39b866f5a442f1a1a1a1a1a1a1a1a1a1a22374c62778da3b8cde2e6e5e5d8c3ad98836c57422c17001f344a5f748ba0b5cbdddddde0dac5b09b866f5a442f2222211d2032424f545454545462778da3b8cde2f8ffedd8c3ad98836c57422c17000008141c2122222c42576c8398abababababaeb9c9b8a38d77625454546a8095abc0c2b4acababababa59079644f3a25222220190f0200001f344a5f74838383838383838383838383838383838383838383838383838383838383838383838383838379644f3a250f001f344a5f748b8b8b8b8b8b8b8b8b8b8b8b866f5a442f1a0500000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001f344a5f7483838383838383838383838383838383838383838383838383806a543f2a15001f344a5f7483838383838383838383838383838383838383838383838383806a543f2a1500000000000000172c42576c838b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b806a543f2a1500000000000000000000000000000000000000000000001f344a5f74838383838383838383838383836f5a442f1a05000000000000000000000000001f34495e73797979797979797979797979796e59442f1a0500000000000000000000000000000000000000000000000000001f344a5f748b8d8d8d8d8d8d8d8d8d8d8d866f5a442f1a05000000000000000d22374c62778da3b8cde2f8ffedd8c3ad98836c57422c17001f344a5f748ba0b5cbe0f2f2f0dac5b09b866f5a442f1a0d0c12273b4f616a6a6a6a6a6a778da3b8cde2f8ffedd8c3ad98836c57422c1700000001080c0d172c42576c839595959595959babbfb8a38d776a6a6a6a6a8095abc0b7a59795959595959079644f3a250f0d0b06000000001f344a5f748b9898989898989898989898989898989898989898989898989898989898989898989898989079644f3a250f001f34495d70747474747474747474747474746b58432e190400000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001f344a5f748b989898989898989898989898989898989898989898989895806a543f2a15001f344a5f748b989898989898989898989898989898989898989898989895806a543f2a1500000000000000172c415569747474747474747474747474747474747474747467533e291400000000000000000000000000000000000000000000001f344a5f748b9898989898989898989898866f5a442f1a0f0f0b04000000000000000000001f344a5f748b9090909090909090909090866f5a442f1a0707040000000000000000000000000000000000000000000000001f34495e71777777777777777777777777776d59442f1a04000000000000000d22374c62778da3b8cde2f8ffedd8c3ad98836c57422c17001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a442f1a0500152a3f546a808080808080808da3b8cde2f8ffedd8c3ad98836c57422c1700000000000000172c42576c8080808080808090a5bbb8a38d8080808080808095abc0b39d8880808080808079644f3a250f000000000000001f344a5f748ba0adadadadadadadadadadadadadadadadadadadadadadadadadadadadadadadadadada59079644f3a250f001a2e41515d5f5f5f5f5f5f5f5f5f5f5f5f5f5b4e3c29150000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001f344a5f748ba0adadadadadadadadadadadadadadadadadadadadadab95806a543f2a15001f344a5f748ba0adadadadadadadadadadadadadadadadadadadadadab95806a543f2a150000000000000012263a4c5a5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f584937241000000000000000000000000000000000000000000000001f344a5f748ba0adadadadadadadadad9b866f5a442f25252420170b0000000000000000001f344a5f748ba0a5a5a5a5a5a5a5a5a59b866f5a442f1d1d1c181005000000000000000000000000000000000000000000001b2f425360626262626262626262626262625d4f3d2a1615151515151515151522374c62778da3b8cde2eceaead8c3ad98836c57422c17001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a442f1a0500152a3f546a8095959595959599a9bcd0e5f2f2edd8c3ad98836c57422c1700000000000000152a3e51626a6a6a6a6a6a7990a5bbbca999959595959595959eb0c4b39d88726a6a6a6a6a695d4a36220d000000000000001f344a5f748ba0b5c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3bba59079644f3a250f0011233341494a4a4a4a4a4a4a4a4a4a4a4a4a473e301f0d0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001f344a5f748ba0b5c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c0ab95806a543f2a15001f344a5f748ba0b5c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c0ab95806a543f2a15000000000000000a1d2e3c464a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a453b2c1a0800000000000000000000000000000000000000000000001f344a5f748ba0b5c3c3c3c3c3c3c3b09b866f5a443a3a3a3934291b0b00000000000000001f344a5f748ba0b5bbbbbbbbbbbbbbb09b866f5a44323232312c221506000000000000000000000000000000000000000000122535434b4c4c4c4c4c4c4c4c4c4c4c4c4c4a40312a2a2a2a2a2a2a2a2a2a2a2a374c62778da3b8cdddd7d5d5d5c3ad98836c57422c17001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a442f1a0500152a3f546a8095abababababadb7c7d8ddddddddd8c3ad98836c57422c17000000000000000f223444505454545454647990a5bbc7b7adabababababababb0bdc8b39d88725c54545454544c3f2d1b07000000000000001f344a5f748ba0b0b0b0b0b0b0b0b0b0b0b0b3bdccd8d8d8d8d8d8d0c0b5b0b0b0b0b0b0b0b0b0b0b0a59079644f3a250f000515232e3434343434343434343434343434332b2012010000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001f344a5f748ba0b5cbd8d8d8d8d8d4c4b7b0b0b0b0b0b0b0b0b0b0b0ab95806a543f2a15001f344a5f748ba0b0b0b0b0b0b0b0b0b0b0b0b3bdccd8d8d8d8d8d5c0ab95806a543f2a150000000000000000101e2a32343434343434343434343434343434343434343431291d0e0000000000000000000000000000000000000000000000001f344a5f748ba0b0b0b0b0b0b6c2c5b09b866f5a4f4f4f4f4e4739281603000000000000001f344a5f748ba0b5b8b8b8b8bdc8c5b09b866f5a474747474640332412000000000000000000000000000000000000000000071725303637373737373737373737373a3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f4c62778da3b8cdcac2c0c0c0c0ad98836c57422c17001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a442f1a0500152a3f546a8095abc0c0c0c0c1c8c8c8c8c8c8c8c8c3ad98836c57422c1700000000000000051626333c3f3f3f3f4f647990a5bbd0c9c1c0c0c0c0c0c0c0c4cdc8b39d88725c473f3f3f3f3a2f211000000000000000001f344a5f748b9b9b9b9b9b9b9b9b9b9b9b9b9faec1d4e9edededd9c5b3a29b9b9b9b9b9b9b9b9b9b9b9b9079644f3a250f000005111a1f1f1f1f1f1f1f1f1f1f1f1f1f1f1e180f02000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001f344a5f748ba0b5cbe0edededdecab7a69b9b9b9b9b9b9b9b9b9b9b9b95806a543f2a15001f344a5f748b9b9b9b9b9b9b9b9b9b9b9b9b9faec1d4e9ededead5c0ab95806a543f2a150000000000000000000d171d1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1d160c000000000000000000000000000000000000000000000000001f344a5f748b9b9b9b9b9b9ba4b5c5b09b866f6464646464635746321e09000000000000001f344a5f748ba0a3a3a3a3a3aab9c5b09b866f5c5c5c5c5c5b51412f1b0700000000000000000000000000000000000000000008141c212222222222222222222d3f4c54545454545454545454545454545454545462778da3b8c9b9aeababababab98836c57422c17001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a442f1a0500152a3f546a8095abb3b3b3b3b3b3b3b3b3b3b3b3b3b3ad98836c57422c17000000000000000b1e2f3e494c4c4c4c4f647990a5bbccbeb5b3b3b3b3b3b3b3b7c2c8b39d88725c4c4c4c4c4c4639291704000000000000001f344a5f748686868686868686868686868691a6bbd0e5faffebd5c0ab968686868686868686868686868679644f3a250f0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001f344a5f748ba0b5cbe0f5fff0dbc5b09b88868686868686868686868686806a543f2a15001f344a5f748686868686868686868686868691a6bbd0e5faffead5c0ab95806a543f2a150000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001f344a5f748686868686868699aec3b09b8679797979797975614c37220c000000000000001f344a5f748b8d8d8d8d8d8e9cafc4b09b867272727272726f5f4a36210c0000000000000000000000000000000000000000000001080c0d0d0d0d0d0d0d0d22364a5d696a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a778da3b8bfab9b959595959595836c57422c17001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a442f1a0500152a3f546a80959d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d98836c57422c170000000000000013273b4d5c6262626262647990a5bbbfaea09d9d9d9d9d9d9da5b4c7b39d8872626262626261574734200b000000000000001e33475b6b6f6f6f6f6f6f6f6f6f6f6f6f7990a5bbd0e5faffead5c0ab95806f6f6f6f6f6f6f6f6f6f6f6f6e604c38230e000000000000000000000000000000020d141717171717171717171717171717150f0500000000000a121717171717171717171717171717161108000000000000000000000000000000001f344a5f748ba0b5cbe0f5fff0dac5b09b866f6f6f6f6f6f6f6f6f6f6f6f6f64513d2813001e33475b6b6f6f6f6f6f6f6f6f6f6f6f6f7990a5bbd0e5faffead5c0ab95806a543f2a1500000000000000000000000000000000000000000000000000000000000000000000000000020d141717171717171717171717171717150f050000001e33475b6b6f6f6f6f6f6f8398adc3b39f9190909090908d77624c37220d000000000000001f34495e717777777777778398adc3b19c8a88888888888877624c37220d00000000000000000000000000000000000000000000000000000000000000000f253a4f6479808080808080808080808080808080808080808da3b8bba590808080808080806c57422c17001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a442f1a0500152a3f546a80888888888888888888888888888888888888836c57422c1700000000000000172c41566a7777777777777990a5bbb9a4908888888888888897acc0b39d8877777777777775634e39240f00000000000000182b3e4e585a5a5a5a5a5a5a5a5a5a5a647990a5bbd0e5faffead5c0ab95806a5a5a5a5a5a5a5a5a5a5a5a595142301d09000000000000000000000000000004131f282c2c2c2c2c2c2c2c2c2c2c2c2c2c2a221608000000101d262c2c2c2c2c2c2c2c2c2c2c2c2c2c2b241a0c0000000000000000000000000000001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a5a5a5a5a5a5a5a5a5a5a5a544635220e00182b3e4e585a5a5a5a5a5a5a5a5a5a5a647990a5bbd0e5faffead5c0ab95806a543f2a1500000000000000000000000000000000000000000000000000000000000000000000000004131f282c2c2c2c2c2c2c2c2c2c2c2c2c2c2a2216080000182b3e4e585a5a5a5a5a6c8398adc3bdaea6a5a5a5a5a38d77624c37220d000000000000001b2f42536062626262626c8398adc3b8a89e9d9d9d9d9d8d77624c37220d00000000000000000000000000000000000000000000000000000000000000000f253a4f64799095959595959595959595959595959595959599a9bcbba590796a6a6a6a6a6a62513e2a15001f344a5f748ba0b5cbe0f5faf0dac5b09b866f5a442f1a050414293e526672727272727272727272727272727272727272726855402b1600000000000405172c42576c838d8d8d8d8d8d95a8bcb8a38d7772727272728095abc0b5a0908d8d8d8d8d8d79644f3a250f050300000000000f20303c43444444444444444444444f647990a5bbd0e5faffead5c0ab95806a5444444444444444444444443e3324130100000000000000000000000000001222313c41424242424242424242424242423e34261604000d1e2e3a414242424242424242424242424240372a1a0900000000000000000000000000001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a44444444444444444444444036281705000f20303c43444444444444444444444f647990a5bbd0e5faffead5c0ab95806a543f2a150000000000000000000000000000000000000000000000000000000000000000000000001222313c41424242424242424242424242423e34261604000f20303c4344444444576c8398adc3ccc1bbbbbbbbb8a38d77624c37220d00000000000000122535434b4c4c4c4c576c8398adc3c6b9b3b3b3b3b3a38d77624c37220d00000000000000000000000000000000000000000000000000000000000000000f253a4f647990a5abababababababababababababababababadb7c7bba59079645454545454504434220f001f344a5f748ba0b5cbe0e5e5e8dac5b09b866f5a442f1a1a1a16233648565c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c574a3825110000010d15191a1a2c42576c8398a3a3a3a3a3a6b3c4b8a38d77625c5c5c6a8095abc0beaea4a3a3a3a3a39079644f3a251a1a18120900000002121f292e2f2f2f2f2f2f2f2f2f3a4f647990a5bbd0e5faffead5c0ab95806a543f2f2f2f2f2f2f2f2f2f2f2b2215060000000000000000000000000000081c2f404f5757575757575757575757575757514433210d00172a3c4c5557575757575757575757575757544838261200000000000000000000000000001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a442f2f2f2f2f2f2f2f2f2f2c24190a000002121f292e2f2f2f2f2f2f2f2f2f3a4f647990a5bbd0e5faffead5c0ab95806a543f2a150000000000000000000000000000000000000000000000000000000000000000000000081c2f404f5757575757575757575757575757514433210d0002121f292e2f2f2f42576c8398adc3d8d4d0d0d0cdb8a38d77624c37220d00000000000000071725303637373742576c8398adc3d7cdc8c8c8c8b8a38d77624c37220d00000000000000000000000000000000000000000000000000000000000000000f253a4f647990a5bbc0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c1c8c8bba59079644f3f3f3f3f3c33261605001f344a5f748ba0b5cbd0d0d0d4dac5b09b866f5a442f2f2f2f2a202a38434747474747474747474747474747474747474747443a2c1b090002121f292e2f2f2f42576c8398adb8b8b8b8bac3cdb8a38d77624c47546a8095abc0ccbfb9b8b8b8b8a59079644f3a2f2f2f2d261a0c000000010d15191a1a1a1a1a1a1a1a253a4f647990a5bbd0e5faffead5c0ab95806a543f2a1a1a1a1a1a1a1a1a1a160f040000000000000000000000000000000e23374b5e6b6c6c6c6c6c6c6c6c6c6c6c6c6c62503c2813001d32465a696c6c6c6c6c6c6c6c6c6c6c6c6c6655412d1803000000000000000000000000001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a442f1a1a1a1a1a1a1a1a1a18110700000000010d15191a1a1a1a1a1a1a1a253a4f647990a5bbd0e5faffead5c0ab95806a543f2a1500000000000000000000000000000000000000000000000000000000000000000000000e23374b5e6b6c6c6c6c6c6c6c6c6c6c6c6c6c62503c28130000010d15191a1a2c42576c8398adc3d8e9e5e5e2cdb8a38d77624c37220d000000000000000008141c2122222c42576c8398adc3d8e1ddddddcdb8a38d77624c37220d00000000000000000000000000000000000000000000000000000000000000000f253a4f647990a5b3b3b3b3b3bbc8d5d5d5d5d5d5d5c8bbb3b3b3b3b3a59079644f3a2a2a2a2821160800001f344a5f748ba0b5bbbbbbbbc0cac5b09b866f5a44444444443d3122272f32323232323232323232323232323232323232322f281c0e00000f20303c4344444444576c8398adc3ccc1bbbbbbbbb8a38d77624c3f546a8095abbbbbbbbbbcc4cdbba59079644f4444444441382a1a08000000000000000000000000000f253a4f647990a5bbd0e5faffead5c0ab95806a543f2a1500000000000000000000000000000000000000000000000000000f253a4f6479838383838383838383838383806a543f2a15001f344a5f74838383838383838383838383836f5a442f1a05000000000000000000000000001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a442f1a05000000000000000000000000000000000000000000000000000f253a4f647990a5bbd0e5faffead5c0ab95806a543f2a1500000000000000000000000000000000000000000000000000000000000000000000000f253a4f6479838383838383838383838383806a543f2a1500000000000000172c42576c8398adc3d8edffffe2cdb8a38d77624c37220d00000000000000000001080c0d172c42576c8398adc3d8edf3f2e2cdb8a38d77624c37220d00000000000000000000000000000000000000000000000000000000000000000f253a4f6479909d9d9d9d9d9faabbcee2eaeaeae2cebbaa9f9d9d9d9d9d9079644f3a251515130d040000001f344a5f748ba0a5a5a5a5a5adbbc5b09b866f5a5a5a5a5a594f402e1b1a1d1d1d1d1d1d1d1d1d1d1d1d1d1d1d1d1d1d1d1d1b150b000000182b3e4e585a5a5a5a5a6c8398adc3bdaea6a5a5a5a5a38d77624c3f546a8095a5a5a5a5a5a8b3c3bba59079645a5a5a5a5a5548372411000000000000000000000000000f253a4f647990a5bbd0e5faffead5c0ab95806a543f2a150000000000000000000000000000000000000000000000080e0f0f253a4f6479909898989898989898989895806a543f2a15001f344a5f748b9898989898989898989898866f5a442f1a0f0f0b04000000000000000000001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a442f1a05000000000000000000000000000000000000000000000000000f253a4f647990a5bbd0e5faffead5c0ab95806a543f2a150000000000000000000000000000000000000000000000000000000000000000080e0f0f253a4f6479909898989898989898989895806a543f2a1500000000000000172c42576c8398adc3d8edffffe2cdb8a38d77624c37220d00000000000000000000000000172c42576c8398adc3d8edffffe2cdb8a38d77624c37220d00000000000000000000000000000000000000000000000000000000000000000f253a4f64798888888888888c9fb3c8def3fff3dec8b39f8c88888888888879644f3a250f000000000000001f344a5f748b9090909090909db0c5b09b866f6f6f6f6f6f6d5d4a35200b00000000000000000000000000000000000000000000000000001e33475b6b6f6f6f6f6f6f8398adc3b39f9190909090908d77624c3f546a8090909090909095a6babba590796f6f6f6f6f6f6654402b16000000000000000000000000000f253a4f647990a5bbd0e5faffead5c0ab95806a543f2a1500000000000000000000000000000000000000000004121c232525253a4f647990a5adadadadadadadadab95806a543f2a15001f344a5f748ba0adadadadadadadadad9b866f5a442f25252420170b0000000000000000001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a442f1a05000000000000000000000000000000000000000000000000000f253a4f647990a5bbd0e5faffead5c0ab95806a543f2a1500000000000000000000000000000000000000000000000000000000000004121c232525253a4f647990a5adadadadadadadadab95806a543f2a1500000000000000172c42576c8398adc3d8eaeaece2cdb8a38d77624c37221515120c03000000000000000000172c42576c8398adc3d8edf2f2e2cdb8a38d77624c37220d00000000000000000000000000000000000000000000000000000000000000000e23384d6170727272727272889db3c8ddf2faf2ddc8b39d8872727272727270614d38230e000000000000001f34495e737979797979798398adc3b09b8886868686868677624c37220d00000000000000000000000000000000000000000000000000001f344a5f748686868686868699aec3b09b8679797979797975614c3f5469797979797979798da3b8bba691868686868686836c57422c17000000000000000000000000000f253a4f647990a5bbd0e5faffead5c0ab95806a543f2a1500000000000000000000000000000000000000000213222f373a3a3a3a4f647990a5bbc3c3c3c3c3c3c0ab95806a543f2a15001f344a5f748ba0b5c3c3c3c3c3c3c3b09b866f5a443a3a3a3934291b0b00000000000000001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a442f1a05000000000000000000000000000000000000000000000000000f253a4f647990a5bbd0e5faffead5c0ab95806a543f2a1500000000000000000000000000000000000000000000000000000000000213222f373a3a3a3a4f647990a5bbc3c3c3c3c3c3c0ab95806a543f2a1500000000000000172c42576c8398adc3d5d5d5d7ddcdb8a38d77624c372a2a2a272014060000000000000000172c42576c8398adc3d8ddddddddcdb8a38d77624c37220d00000000000000000000000000000000000000000000000000000000000000000a1e3144535c5c5c5c5c5c72889db3c8dde5e5e7ddc8b39d88725c5c5c5c5c5c5344311e0a000000000000001b3043556264646464646c8398adc3b7a69b9b9b9b9b9b8d77624c3722121212121212121212121212121212121212121212100b020000001f344a5f748b9b9b9b9b9b9ba4b5c5b09b866f64646464646357463a4c5d646464646464778da3b8c1ae9f9b9b9b9b9b98836c57422c17000000000000000000000000000f253a4f647990a5bbd0e5faffead5c0ab95806a543f2a1500000000000000000000000000000000000000000d1f31404b4f4f4f4f4f647990a5bbcabbb2b0b0b0b0ab95806a543f2a15001f344a5f748ba0b0b0b0b0b0b6c2c5b09b866f5a4f4f4f4f4e4739281603000000000000001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a442f1a05000000000000000000000000000000000000000000000000000f253a4f647990a5bbd0e5faffead5c0ab95806a543f2a1500000000000000000000000000000000000000000000000000000000000d1f31404b4f4f4f4f4f647990a5bbcabbb2b0b0b0b0ab95806a543f2a1500000000000000172c42576c8398adc0c0c0c0c2cacdb8a38d77624c3f3f3f3f3b3224140300000000000000172c42576c8398adc3c8c8c8c8c8c8b8a38d77624c37220d0000000000000000000000000000000000000000000000000000000000000000021426354147474747475c72889db3c8d0d0d0d3dbc8b39d88725c4747474747413526140200000000000000142637454e4f4f4f4f576c8398adc3c4b7b0b0b0b0b0a38d77624c3727272727272727272727272727272727272727272727251e140600001f344a5f748ba0b0b0b0b0b0b6c2c5b09b866f5a4f4f4f4f4e47392f3f4a4f4f4f4f4f62778da3b8ccbdb3b0b0b0b0ad98836c57422c17000000000000000000000000000f253a4f647990a5bbd0e5faffead5c0ab95806a543f2a15000000000000000000000000000000000000000014283c4f5e6464646464647990a5bbbeac9e9b9b9b9b9b95806a543f2a15001f344a5f748b9b9b9b9b9b9ba4b5c5b09b866f6464646464635746321e09000000000000001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a442f1a05000000000000000000000000000000000000000000000000000f253a4f647990a5bbd0e5faffead5c0ab95806a543f2a15000000000000000000000000000000000000000000000000000000000014283c4f5e6464646464647990a5bbbeac9e9b9b9b9b9b95806a543f2a1500000000000000172c42576c8398abababababaeb9c9b8a38d776254545454544f4232200c00000000000000172c42576c8398adb3b3b3b3b3b3b3b3a38d77624c37220d0000000000000000000000000000000000000000000000000000000000000000000817242d32323232475c72889db3bbbbbbbbbfc9c8b39d88725c47444444443e332413010000000000000009192733393a3a3a42576c8398adc3c3c3c3c5c5c5b8a38d77624c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3a31241504001f344a5f748ba0b5c5c5c5c5c9d3c5b09b866f5a443a3a3a393429212d363a3a3a3a4c62778da3b8cdcfc7c5c5c5c3ad98836c57422c17000000000000000000000000000f253a4f647990a5bbd0e5faffead5c0ab95806a543f2a150000000000000000000000000000000000000000172c41576b7979797979797990a5bbb8a38f868686868686806a543f2a15001f344a5f748686868686868699aec3b09b8679797979797975614c37220c000000000000001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a442f1a05000000000000000000000000000000000000000000000000000f253a4f647990a5bbd0e5faffead5c0ab95806a543f2a150000000000000000000000000000000000000000000000000000000000172c41576b7979797979797990a5bbb8a38f868686868686806a543f2a1500000000000000172c42576c839595959595959babbfb8a38d776a6a6a6a6a6a614f3b271200000000000000172c42576c83989d9d9d9d9d9d9d9d9d9d8d77624c37220d000000000000000000000000000000000000000000000000000000000000000000000611191c1d1d32475c72889da5a5a5a5a5abb9c8b39d88725c5a5a5a5a595142301d0900000000000000000a161f2425252c42576c8398adadadadadb0bbcab8a38d77625252525252525252525252525252525252525252525252524e4233210e001f344a5f748ba0b5cbdadadbdedac5b09b866f5a442f2525242017101b22252525374c62778da3b8cde2dcdadad8c3ad98836c57422c17000000000000000000000000000f253a4f647990a5bbd0e5faffead5c0ab95806a543f2a150000000000000000000000000000000000030707172c42576c8390909090909097a9bdb8a38d776f6f6f6f6f6f64513d2813001e33475b6b6f6f6f6f6f6f8398adc3b39f9190909090908d77624c37220d070500000000001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a442f1a05000000000000000000000000000000000000000000000000000f253a4f647990a5bbd0e5faffead5c0ab95806a543f2a150000000000000000000000000000000000000000000000000000000000172c42576c8390909090909097a9bdb8a38d776f6f6f6f6f6f64513d281300000000000000172c42576c8080808080808090a5bbb8a38d808080808080806a543f2a1500000000000000172c42576c8388888888888888888888888877624c37220d0000000000000000000000000000000000000000000000000000000000000000000000000000001d32475c72889090909090909baec2b39d88726f6f6f6f6f6e604c38230e000000000000000000030b0f0f172c42576c839898989898989dadc0b8a38d776767676767676767676767676767676767676767676767676760503d2914001f344a5f748ba0b5cbe0f0f0f0dac5b09b866f5a442f1a0f0f0b0400070d0f0f22374c62778da3b8cde2f1f0edd8c3ad98836c57422c17000000000000000000000000000f253a4f647990a5bbd0e5faffead5c0ab95806a543f2a15000000000000000000000000000000030f171c1d1d2c42576c8398a5a5a5a5a5a9b5c6b8a38d77625a5a5a5a5a544635220e00182b3e4e585a5a5a5a5a6c8398adc3bdaea6a5a5a5a5a38d77624c37221d1d1a14090000001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a442f1a05000000000000000000000000000000000000000000000000000f253a4f647990a5bbd0e5faffead5c0ab95806a543f2a150000000000000000000000000000000000000000000000000000000000172c42576c8398a5a5a5a5a5a9b5c6b8a38d77625a5a5a5a5a544635220e00000000000000152a3e51626a6a6a6a6a6a7990a5bbbca999959595959595806a543f2a1500000000000000162b405568727272727272727272727272726f5f4a36210c0000000000000000000000000000000000000000000000000000000000000000000000000000001c32475c707979797979798095abc0b39e8a86868686868679644f3a250f00000000000000000000000000172c42576c8383838383838390a5bbb8a38d7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c6c57422c17001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a442f1a05000000000000000d22374c62778da3b8cde2f8ffedd8c3ad98836c57422c17000000000000000000000000000f253a4f647990a5bbd0e5faffead5c0ab95806a543f2a1500000000000000000000000000000413212b3132323242576c8398adbbbbbbbbbdc6cdb8a38d77624c444444444036281705000f20303c4344444444576c8398adc3ccc1bbbbbbbbb8a38d77624c373232322f271b0c00001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a442f1a05000000000000000000000000000000000000000000000000000f253a4f647990a5bbd0e5faffead5c0ab95806a543f2a150000000000000000000000000000000000000000000000000000000000172c42576c8398adbbbbbbbbbdc6cdb8a38d77624c444444444036281705000000000000000f223444505454545454647990a5bbc7b7adababababab95806a543f2a15000000000000001125384a575c5c5c5c5c5c5c5c5c5c5c5c5c5b51412f1b0700000000000000000000000000000000000000000000000000000000020b101212121212121212192d41536164646464646a8095abc0b9a89c9b9b9b9b9b9079644f3a251212100b02000000000000000000152a3f53646c6c6c6c6c6c7990a5bbbba89793939393939393939393939393939393939393939393939393836c57422c17001f344a5f748ba0b5cbe0f5f5f0dac5b09b866f5a442f1a05000000000000000d22374c62778da3b8cde2f5f5edd8c3ad98836c57422c17000000000000000000000000000f253a4f647990a5bbd0e5faffead5c0ab95806a543f2a1500000000000000000000000000001022323e4647474747576c8398adc3cabeb8b8b8b8b8a38d77624c372f2f2f2c24190a000002121f292e2f2f2f42576c8398adb8b8b8b8bac3cdb8a38d77624c4747474743382a1907001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a442f1a05000000000000000000000000000000000000000000000000000f253a4f647990a5bbd0e5faffead5c0ab95806a543f2a150000000000000000000000000000000000000000000000000000000000172c42576c8398adc3d0d0d0d2d8cdb8a38d77624c372f2f2f2c24190a0000000000000000051626333c3f3f3f3f4f647990a5bbd0c9c1c0c0c0c0ab95806a543f2a1500000000000000091b2c3a444747474747474747474747474746403324120000000000000000000000000000000000000000000000000000000006141e252727272727272727272735444d4f4f4f4f546a8095abc0c6b8b1b0b0b0b0a59079644f3a272727251e1406000000000000000010233646535757575757647990a5bbc5b5aaa8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a898836c57422c17001f344a5f748ba0b5cbe0e0e0e0dac5b09b866f5a442f1a05000000000000000d22374c62778da3b8cde0e0e0e0d8c3ad98836c57422c17000000000000000000000000000f253a4f647990a5bbd0e5faffead5c0ab95806a543f2a150000000000000000000000000000192d3f505b5c5c5c5c5c6c8398adc3bbaca3a3a3a3a3a38d77624c37221a1a18110700000000010d15191a1a2c42576c8398a3a3a3a3a3a6b3c4b8a38d77625c5c5c5c5c564836230f001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a442f1a05000000000000000000000000000000000000000000000000000f253a4f647990a5bbd0e5faffead5c0ab95806a543f2a150000000000000000000000000000000000000000000000000000000000172c42576c8398adc3d8e5e5e6e2cdb8a38d77624c37221a1a1811070000000000000000000b1e2f3e494c4c4c4c4f647990a5bbccbeb5b3b3b3b3ab95806a543f2a1500000000000000081a2a384144444444444444444444444444443d312211000000000000000000000000000000000000000000000000000000041524313a3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3f546a8095abc0d5cbc6c5c5c5bba59079644f3c3c3c3c3a3124150400000000000000061828363f424242424f647990a5bbcbc7bfbdbdbdbdbdbdbdbdbdbdbdbdbdbdbdbdbdbdbdbdbdbdbdad98836c57422c17001f344a5f748ba0b5cbcbcbcbcbcbc5b09b866f5a442f1a05000000000000000d22374c62778da3b8cbcbcbcbcbcbc3ad98836c57422c17000000000000000000000000000f253a4f647990a5bbd0e5faffead5c0ab95806a543f2a1500000000000000000000000000001e33485c6e7272727272728398adc3b29e8f8d8d8d8d8d8d77624c37220d00000000000000000000000000172c42576c838d8d8d8d8d8d95a8bcb8a38d7772727272727266523e2914001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a442f1a05000000000000000000000000000000000000000000000000000f253a4f647990a5bbd0e5faffead5c0ab95806a543f2a150000000000000000000000000000000000000000000000000000000000172c42576c8398adc3d8edffffe2cdb8a38d77624c37220d0000000000000000000000000013273b4d5c6262626262647990a5bbbfaea09d9d9d9d9d95806a543f2a150000000000000011243748555a5a5a5a5a5a5a5a5a5a5a5a5a594f402e1b0700000000000000000000000000000000000000000000000000000e2133424e5252525252525252525252525252525252546a8095abc0d5dfdbdadad0bba590796452525252524e4233210e00000000000000000a18232a2c2c2c3a4f647990a5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5ad98836c57422c17001f344a5f748ba0b5b5b5b5b5b5b5b5b09b866f5a442f1a05000000000000000d22374c62778da3b5b5b5b5b5b5b5b5ad98836c57422c17000000000000000000000000000f253a4f647990a5bbd0e5faffead5c0ab95806a543f2a1500000000000000000000000000001f344a5f74888888888888899aaec3b09b8677777777777773604c37210c00000000000000000000000000172c41566a7777777777777990a5bbb9a490888888888888806a543f2a15001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a442f1a05000000000000000000000000000000000000000000000000000f253a4f647990a5bbd0e5faffead5c0ab95806a543f2a150000000000000000000000000000000000000000000000000000000000172c42576c8398adc3d8edffffe2cdb8a38d77624c37220d00000000000000000000000000172c41566a7777777777777990a5bbb9a490888888888888806a543f2a1500000000000000162b4054666f6f6f6f6f6f6f6f6f6f6f6f6f6d5d4a35200b000000000000000000000000000000000000000000000000000014293d50606767676767676767676767676767676767676a8095abc0d5eaf0f0e5d0bba5907967676767676760503d29140000000000000000000610151717253a4f647990a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a098836c57422c17001f344a5f748ba0a0a0a0a0a0a0a0a0a09b866f5a442f1a05000000000000000d22374c62778da0a0a0a0a0a0a0a0a0a098836c57422c17000000000000000000000000000f253a4f647990a5bbd0e5faffead5c0ab95806a543f2a1500000000000000000000000000001f344a5f748b9d9d9d9d9d9ea6b6c5b09b866f6262626262605544311d090000000000000000000000000013273b4d5c6262626262647990a5bbbfaea09d9d9d9d9d95806a543f2a15001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a442f1a05000000000000000000000000000000000000000000000000000f253a4f647990a5bbd0e5faffead5c0ab95806a543f2a150000000000000000000000000000000000000000000000000008101415172c42576c8398adc3d8edebeae2cdb8a38d77624c37220d00000000000000000000000000172c42576c838d8d8d8d8d8d95a8bcb8a38d7772727272727266523e291400000000000000172c42576c8386868686868686868686868677624c37220d0000000000000000000000000000000000000000000000000000172c42576c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c8095abc0d5eaffffe5d0bba5907c7c7c7c7c7c7c6c57422c17000000000000000000000000000f253a4f64798b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b836c57422c17001f344a5f748b8b8b8b8b8b8b8b8b8b8b8b866f5a442f1a05000000000000000d22374c62778b8b8b8b8b8b8b8b8b8b8b8b836c57422c17000000000000000000000000000f253a4f647990a5bbd0e5faffead5c0ab95806a543f2a1500000000000000000000000000001f344a5f748ba0b3b3b3b3b3b8c4c5b09b866f5a4c4c4c4c4c4437271502000000000000000000000000000b1e2f3e494c4c4c4c4f647990a5bbccbeb5b3b3b3b3ab95806a543f2a15001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a442f1a05000000000000000000000000000000000000000000000000000f253a4f647990a5bbd0e5faffead5c0ab95806a543f2a150000000000000000000000000000000000000000000000000e1a24292a2a2c42576c8398adc3d8d9d5d5d5cdb8a38d77624c37220d00000000000000000000000000172c42576c8398a3a3a3a3a3a6b3c4b8a38d77625c5c5c5c5c564836230f00000000000000172c42576c83989b9b9b9b9b9b9b9b9b9b8d77624c37220d0000000000000000000000000000000000000000000000000000172c42576c83939393939393939393939393939393939393939dafc3d7ecf5f5e7d2beaa99939393939393836c57422c17000000000000000000000000000f24394e627374747474747474747474747474747474747474747474747474747474747474746955412c17001f34495d70747474747474747474747474746b58432e1904000000000000000c21364b6071747474747474747474747474746955412c17000000000000000000000000000f253a4f647990a5bbd0e5faffead5c0ab95806a543f2a1500000000000000000000000000001f344a5f748ba0b5c8c8c8c8ccd5c5b09b866f5a44373737373127190900000000000000000000000000000111202d353737373a4f647990a5bbd0d0c9c8c8c8c0ab95806a543f2a15001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a442f1a05000000000000000000000000000000000000000000000000000f253a4f647990a5bbd0e5faffead5c0ab95806a543f2a1500000000000000000000000000000000000000000000000c1d2c373e3f3f3f42576c8398adc3d0c5c0c0c0c0b8a38d77624c37220d00000000000000000000000000172c42576c8398adb8b8b8b8bac3cdb8a38d77624c4747474743382a190700000000000000172c42576c8398adb0b0b0b0b0b0b0b0a38d77624c37220d0000000000000000000000000000000000000000000000000000172c42576c8398a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8aebbccdee0e0e0e0d9c7b7aba8a8a8a8a898836c57422c17000000000000000000000000000b1f3345555e5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5a4c3a2612001a2e41515d5f5f5f5f5f5f5f5f5f5f5f5f5f5b4e3c29150000000000000000081c3043535e5f5f5f5f5f5f5f5f5f5f5f5f5f5a4c3a2612000000000000000000000000000f253a4f647990a5bbd0e5faffead5c0ab95806a543f2a1500000000000000000000000000001f344a5f748ba0b5cbdddddde0dac5b09b866f5a442f2222211d150900000000000000000000000000000000020f19202222253a4f647990a5bbd0e4deddddd5c0ab95806a543f2a15001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a442f1a05000000000000000000000000000000000000000000000000000f253a4f647990a5bbd0e5faffead5c0ab95806a543f2a15000000000000000000000000000000000000000000000016293b495354545454576c8398adc3c0b3abababababa38d77624c37220d00000000000000000000000000172c42576c8398adc3cdcdcdcfd6cdb8a38d77624c373232322f271b0c0000000000000000172c42576c8398adc3c5c5c5c5c5c5b8a38d77624c37220d0000000000000000000000000000000000000000000000000000172c42576c8398adbdbdbdbdbdbdbdbdbdbdbdbdbdbdbdbdbdc1cbcbcbcbcbcbcbcbcbc8bfbdbdbdbdad98836c57422c17000000000000000000000000000316273743494a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a463c2e1d0a0011233341494a4a4a4a4a4a4a4a4a4a4a4a4a473e301f0d00000000000000000114253542494a4a4a4a4a4a4a4a4a4a4a4a4a463c2e1d0a000000000000000000000000000f253a4f647990a5bbd0e5faffead5c0ab95806a543f2a1500000000000000000000000000001f344a5f748ba0b5cbe0f2f2f0dac5b09b866f5a442f1a0d0c090200000000000000000000000000000000000000060b0d0f253a4f647990a5bbd0e5f3f2ead5c0ab95806a543f2a15001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a442f1a05000000000000000000000000000000000000000000000000000f253a4f647990a5bbd0e5faffead5c0ab95806a543f2a1500000000000000000000000000000000000000000000001d314558676a6a6a6a6a6c8398adc3b5a29695959595958d77624c37220d00000000000000000000000000172c42576c8398adc3d8e2e2e4e2cdb8a38d77624c37221d1d1a1409000000000000000000172c42576c8398adc3d8dadadadacdb8a38d77624c37220d0000000000000000000000000000000000000000000000000000172c42576c8398adb5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5ad98836c57422c1700000000000000000000000000000a192630343434343434343434343434343434343434343434343434343434343434343434322a1e1000000515232e3434343434343434343434343434332b2012010000000000000000000817252f3434343434343434343434343434322a1e1000000000000000000000000000000f253a4f647990a5bbd0e5faffead5c0ab95806a543f2a1500000000000000000000000000001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a442f1a05000000000000000000000000000000000000000000000000000f253a4f647990a5bbd0e5faffead5c0ab95806a543f2a15001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a442f1a05000000000000000000000000000000000000000000000000000f253a4f647990a5bbd0e5faffead5c0ab95806a543f2a1500000000000000000000000000000000000000000000001f344a5f748080808080808398adc3b09b8680808080808077624c37220d00000000000000000000000000172c42576c8398adc3d8edffffe2cdb8a38d77624c37220d00000000000000000000000000172c42576c8398adc3d8edf0f0e2cdb8a38d77624c37220d0000000000000000000000000000000000000000000000000000172c42576c8398a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a098836c57422c1700000000000000000000000000000009141b1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1d170d0000000005111a1f1f1f1f1f1f1f1f1f1f1f1f1f1f1e180f02000000000000000000000007121b1f1f1f1f1f1f1f1f1f1f1f1f1f1f1d170d0000000000000000000000000000000f253a4f647990a5bbd0e5faffead5c0ab95806a543f2a1500000000000000000000000000001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a442f1a05000000000000000000000000000000000000000000000000000f253a4f647990a5bbd0e5faffead5c0ab95806a543f2a15001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a442f1a05000000000000000000000000000000000000000000000000000f253a4f647990a5bbd0e5faffead5c0ab95806a543f2a1500000000000000000000000000000000000000000000001f344a5f748b959595959596a0b2c5b09b866f6a6a6a6a6a685a48341f0b00000000000000000000000000172c42576c8398adc3d8edffffe2cdb8a38d77624c37220d00000000000000000000000000172c42576c8398adc3d8edffffe2cdb8a38d77624c37220d0000000000000000000000000000000000000000000000000000172c42576c838b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b836c57422c1700000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000020b101212253a4f647990a5bbd0e5faffead5c0ab95806a543f2a1500000000000000000000000000001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a442f1a05000000000000000000000000000000000000000000000000000f253a4f647990a5bbd0e5faffead5c0ab95806a543f2a15001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a442f1a1212121212121212100a000000000000050d111212121212121212253a4f647990a5bbd0e5faffead5c0ab95806a543f2a1500000000000000000000000000000000000000000000001f344a5f748ba0abababababb1bec5b09b866f5a54545454534b3d2b1805000000000000000000050d1112172c42576c8398adc3d8ededede2cdb8a38d77624c37220d00000000000000000000000000172c42576c8398adc3d8edf5f5e2cdb8a38d77624c37220d0000000000000000000000000000000000000000000000000000172c4155697474747474747474747474747474747474747474747474747474747474747474747474747474746955412c170000000a121717171717171717171717171717161108000000000000000000000000010b13171717171717171717171717171715100600000000000a12171717171717171717171717171717171717171717171717171717171717171717171717171717171717171717171510060000000000000000000006141e252727273a4f647990a5bbd0e5faffead5c0ab95806a543f2a1500000000000000000000000000001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a442f1a05000000000000000000000000000000000000000000000000000f253a4f647990a5bbd0e5faffead5c0ab95806a543f2a15001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a442f272727272727272727251d12040000000c1821262727272727272727273a4f647990a5bbd0e5faffead5c0ab95806a543f2a1500000000000000000000000000000000000000000000001f344a5f748ba0b5c0c0c0c0c4cfc5b09b866f5a443f3f3f3f382d1f0e0000000000000000000c18212627272c42576c8398adc3d8dcd8d8d8cdb8a38d77624c37220d00000000000000000000000000172c42576c8398adc3d8e0e0e0e0cdb8a38d77624c37220d000000000000000000000000000000000000000000000000000012263a4c5a5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5a4c3a26120000101d262c2c2c2c2c2c2c2c2c2c2c2c2c2c2b241a0c0000000000000000000002111e272c2c2c2c2c2c2c2c2c2c2c2c2c2c2a23180a000000101d262c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2a23180a0000000000000000041524313a3c3c3c3c4f647990a5bbd0e5faffead5c0ab95806a543f2a1500000000000000000000000000001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a442f1a05000000000000000000000000000000000000000000000000000f253a4f647990a5bbd0e5faffead5c0ab95806a543f2a15001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a443c3c3c3c3c3c3c3c3c3c3930231301000a1b2a353b3c3c3c3c3c3c3c3c3c3c4f647990a5bbd0e5faffead5c0ab95806a543f2a1500000000000000000000000000000000000000000000001f344a5f748ba0b3b3b3b3b3b8c4c5b09b866f5a4c4c4c4c4c4437271502000000000000000a1b2a353b3c3c3c42576c8398adc3d2c8c3c3c3c3b8a38d77624c37220d00000000000000000000000000172c42576c8398adc3cbcbcbcbcbcbb8a38d77624c37220d00000000000000000000000000000000000000000000000000000a1d2e3c464a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a463c2e1d0a000d1e2e3a414242424242424242424242424240372a1a090000000000000000000f202f3b41424242424242424242424242423f36281806000d1e2e3a414242424242424242424242424242424242424242424242424242424242424242424242424242424242424242423f36281806000000000000000e2133424e5252525252647990a5bbd0e5faffead5c0ab95806a543f2a1500000000000000000000000000001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a442f1a05000000000000000000000000000000000000000000000000000f253a4f647990a5bbd0e5faffead5c0ab95806a543f2a15001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a52525252525252525252524d41301e0b0015283947505252525252525252525252647990a5bbd0e5faffead5c0ab95806a543f2a1500000000000000000000000000000000000000000000001f344a5f748b9d9d9d9d9d9ea6b6c5b09b866f6262626262605544311d0900000000000000152839475052525252576c8398adc3c2b5aeadadadada38d77624c37220d00000000000000000000000000172c42576c8398adb5b5b5b5b5b5b5b5a38d77624c37220d000000000000000000000000000000000000000000000000000000101e2a32343434343434343434343434343434343434343434343434343434343434343434343434343434322a1e100000172a3c4c55575757575757575757575757575448382612000000000000000006192d3e4d5657575757575757575757575757534636231000172a3c4c5557575757575757575757575757575757575757575757575757575757575757575757575757575757575757575753463623100000000000000014293d50606767676767677990a5bbd0e5faffead5c0ab95806a543f2a1500000000000000000000000000001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a442f1a05000000000000000000000000000000000000000000000000000f253a4f647990a5bbd0e5faffead5c0ab95806a543f2a15001f344a5f748ba0b5cbe0f5fff0dac5b09b866f6767676767676767676767675f4e3b2612001c314457646767676767676767676767677990a5bbd0e5faffead5c0ab95806a543f2a1500000000000000000000000000000000000000000000001f344a5f74888888888888899aaec3b09b8677777777777773604c37210c000000000000001c3144576467676767676c8398adc3b6a49998989898988d77624c37220d00000000000000000000000000172c42576c8398a0a0a0a0a0a0a0a0a0a08d77624c37220d000000000000000000000000000000000000000000000000000000000d171d1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1d170d0000001d32465a696c6c6c6c6c6c6c6c6c6c6c6c6c6655412d1803000000000000000b2035495c6a6c6c6c6c6c6c6c6c6c6c6c6c6c64533f2a15001d32465a696c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c64533f2a1500000000000000172c42576c7c7c7c7c7c7c7c90a5bbd0e5faffead5c0ab95806a543f2a1500000000000000000000000000001f344a5f748ba0b5cbe0f5faf0dac5b09b866f5a442f1a05040100000000000000000000000000000000000000000003050f253a4f647990a5bbd0e5fafaead5c0ab95806a543f2a15001f344a5f748ba0b5cbe0f5fff0dac5b09b867c7c7c7c7c7c7c7c7c7c7c7c7c69543f2a15001f344a5f747c7c7c7c7c7c7c7c7c7c7c7c7c90a5bbd0e5faffead5c0ab95806a543f2a1500000000000000000000000000000000000000000000001e33485c6e7272727272728398adc3b29e8f8d8d8d8d8d8d77624c37220d000000000000001f344a5f747c7c7c7c7c7c8398adc3b09b8683838383838377624c37220d00000000000000000000000000172c42576c838b8b8b8b8b8b8b8b8b8b8b8b77624c37220d000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001f344a5f74838383838383838383838383836f5a442f1a05000000000000000d22374c6277838383838383838383838383836c57422c17001f344a5f748383838383838383838383838383838383838383838383838383838383838383838383838383838383838383836c57422c1700000000000000172c42576c8393939393939399aabed2e7f5f5ead5c0ab95806a543f2a1500000000000000000000000000001f344a5f748ba0b5cbe0e5e5e8dac5b09b866f5a442f1a1a1a160e0300000000000000000000000000000000000912181a1a253a4f647990a5bbd0e5e6e5e5d5c0ab95806a543f2a15001f344a5f748ba0b5cbe0f5f5f1dcc8b4a194939393939393939393939393806a543f2a15001f344a5f748b93939393939393939393939399aabed2e7f5f5ead5c0ab95806a543f2a150000000000000000000000000000000000000000000000192d3f505b5c5c5c5c5c6c8398adc3bbaca3a3a3a3a3a38d77624c37220d000000000000001f344a5f748b9393939393939fb1c5b09b866f6c6c6c6c6c6a5c4935200b00000000000000000000000000172c4155697474747474747474747474747471604b36210c0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000050f151717171717171717171717171717140d020000000000000000001f344a5f748b9898989898989898989898866f5a442f1a05000000000000000d22374c62778d9898989898989898989898836c57422c17001f344a5f748b98989898989898989898989898989898989898989898989898989898989898989898989898989898989898836c57422c1700000000000000172c42576c8398a8a8a8a8a8abb7c7d9e0e0e0e0d5c0ab95806a543f2a1500000000000000000000000000001f344a5f748ba0b5cbd0d0d0d4dac5b09b866f5a442f2f2f2f2a2013040000000000000000000000000000000c1a262d2f2f2f3a4f647990a5bbd0d7d1d0d0d0c0ab95806a543f2a15001f344a5f748ba0b5cbe0e0e0e0e0d0bfb0a8a8a8a8a8a8a8a8a8a8a8a895806a543f2a15001f344a5f748ba0a8a8a8a8a8a8a8a8a8a8a8abb7c7d9e0e0e0e0d5c0ab95806a543f2a1500000000000000000000000000000000000000000000001022323e4647474747576c8398adc3cabeb8b8b8b8b8a38d77624c37220d000000000000001f344a5f748ba0a8a8a8a8a8afbdc5b09b866f5a57575757564d3e2d19060000000000000000000000000012263a4c5a5f5f5f5f5f5f5f5f5f5f5f5f5f5e5343301c08000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000816222a2c2c2c2c2c2c2c2c2c2c2c2c2c2c281f130400000000000000001f344a5f748ba0adadadadadadadadad9b866f5a442f1a05000000000000000d22374c62778da3adadadadadadadadad98836c57422c17001f344a5f748ba0adadadadadadadadadadadadadadadadadadadadadadadadadadadadadadadadadadadadadadadadad98836c57422c1700000000000000172c42576c8398adbdbdbdbdbfc8cbcbcbcbcbcbcbc0ab95806a543f2a1500000000000000000000000000001f344a5f748ba0b5bbbbbbbbc0cac5b09b866f5a44444444443d3122110000000000000000000000000000081a2a3841444444444f647990a5bbd0c4bcbbbbbbbbab95806a543f2a15001f344a5f748ba0b5cbcbcbcbcbcbcbcbc3bebdbdbdbdbdbdbdbdbdbdab95806a543f2a15001f344a5f748ba0b5bdbdbdbdbdbdbdbdbdbdbfc8cbcbcbcbcbcbcbc0ab95806a543f2a1500000000000000000000000000000000000000000000000413212b3132323242576c8398adc3d8d2cdcdcdcdb8a38d77624c37220d000000000000001f344a5f748ba0b5bdbdbdbdc2cbc5b09b866f5a44424242413b2f200f00000000000000000000000000000a1d2e3c464a4a4a4a4a4a4a4a4a4a4a4a4a494235251401000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000041626343e42424242424242424242424242413c31221200000000000000001f344a5f748ba0b5c3c3c3c3c3c3c3b09b866f5a442f1a05000000000000000d22374c62778da3b8c3c3c3c3c3c3c3ad98836c57422c17001f344a5f748ba0b5c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3ad98836c57422c1700000000000000172c42576c8398adb5b5b5b5b5b5b5b5b5b5b5b5b5b5ab95806a543f2a1500000000000000000000000000001f344a5f748ba0a5a5a5a5a5adbbc5b09b866f5a5a5a5a5a594f402e1b070000000000000000000000000011243748555a5a5a5a5a647990a5bbc3b3a8a5a5a5a5a595806a543f2a15001f344a5f748ba0b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5ab95806a543f2a15001f344a5f748ba0b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5ab95806a543f2a15000000000000000000000000000000000000000000000000030f171c1d1d2c42576c8398adc3d8e6e3e2e2cdb8a38d77624c37220d000000000000001f344a5f748ba0b5b5b5b5b5b5b5b5b09b866f5a442f2c2c2c271e1102000000000000000000000000000000101e2a3234343434343434343434343434342f251708000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000d2133445157575757575757575757575757574f402f1c08000000000000001f344a5f748ba0b5cbd8d8d8d8d8c5b09b866f5a442f1a05000000000000000d22374c62778da3b8cdd8d8d8d8d8c3ad98836c57422c17001f344a5f748ba0b5cbd8d8d8d8d8d8d8d8d8d8d8d8cabbb2b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0ad98836c57422c1700000000000000172c42576c8398a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a095806a543f2a1500000000000000000000000000001f344a5f748b9090909090909db0c5b09b866f6f6f6f6f6f6d5d4a35200b00000000000000000000000000162b4054666f6f6f6f6f6f7990a5bbbaa695909090909090806a543f2a15001f344a5f748ba0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a095806a543f2a15001f344a5f748ba0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a095806a543f2a150000000000000000000000000000000000000000000000000000000000172c42576c8398adc3d8edffffe2cdb8a38d77624c37220d000000000000001f344a5f748ba0a0a0a0a0a0a0a0a0a09b866f5a442f1a1717130b0100000000000000000000000000000000000d171d1f1f1f1f1f1f1f1f1f1f1f1f1f1f1b1207000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000013283c50626c6c6c6c6c6c6c6c6c6c6c6c6c6b5e4b37230e000000000000001f344a5f748ba0b5cbe0edededdac5b09b866f5a442f1a05000000000000000d22374c62778da3b8cde2edededd8c3ad98836c57422c17001f344a5f748ba0b5cbe0ededededededededede6d2beac9e9b9b9b9b9b9b9b9b9b9b9b9b9b9b9b9b9b9b9b9b9b9b9b9b98836c57422c1700000000000000172c42576c838b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b806a543f2a1500000000000000000000000000001f34495e737979797979798398adc3b09b8886868686868677624c37220d00000000000000000000000000172c42576c8386868686868691a6bbb8a38d7979797979797969543f2a14001f344a5f748b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b806a543f2a15001f344a5f748b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b806a543f2a150000000000000000000000000000000000000000000000000000000000172c42576c8398adc3d8edffffe2cdb8a38d77624c37220d000000000000001f344a5f748b8b8b8b8b8b8b8b8b8b8b8b866f5a442f1a0500000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000152a3f546a8083838383838383838383838379644f3a250f000000000000001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a442f1a05000000000000000d22374c62778da3b8cde2f8ffedd8c3ad98836c57422c17001f344a5f748ba0b5cbe0f5ffffffffffffffffe3cdb8a38f86868686868686868686868686868686868686868686868686836c57422c1700000000000000172c415569747474747474747474747474747474747474747467533e291400000000000000000000000000001b3043556264646464646c8398adc3b7a69b9b9b9b9b9b8d77624c37221212100a000000000000050d1112172c42576c83989b9b9b9b9b9faec1b8a38d776464646464645d4c3a2611001f34495d70747474747474747474747474747474747474747474747474747467533e2914001f34495d70747474747474747474747474747474747474747474747474747467533e29140000000000000000000000000000000000000000000000000000000000172c42576c8398adc3d8ededeee2cdb8a38d77624c37221212100a000000001f34495d70747474747474747474747474746b58432e190400000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000152a3f546a8095989898989898989898989079644f3a250f000000000000001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a442f1a05000000000000000d22374c62778da3b8cde2f8ffedd8c3ad98836c57422c17001f344a5f748ba0b5cbe0f5f8faffffffffffffe2cdb8a38d776f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6654402b160000000000000012263a4c5a5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f58493724100000000000000000000000000000142637454e4f4f4f4f576c8398adc3c4b7b0b0b0b0b0a38d77624c37272727251d12040000000c18212627272c42576c8398adb0b0b0b0b3bdccb8a38d77624f4f4f4f4f4a3f2f1d0a001a2e41515d5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5849372410001a2e41515d5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f58493724100000000000000000000000000000000000000000000000000000000000172c42576c8398adc3d8d8d8d9e0cdb8a38d77624c37272727251d120400001a2e41515d5f5f5f5f5f5f5f5f5f5f5f5f5f5b4e3c29150000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000152a3f546a8095abadadadadadadadada59079644f3a250f000000000000001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a442f1a05000000000000000d22374c62778da3b8cde2f8ffedd8c3ad98836c57422c17001f344a5f748ba0b5cbe0e2e3e5edf7ffffffffe2cdb8a38d77625a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5548372411000000000000000a1d2e3c464a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a453b2c1a08000000000000000000000000000009192733393a3a3a42576c8398adc3c3c3c3c5c5c5b8a38d77624c3c3c3c3c3930231301000a1b2a353b3c3c3c42576c8398adc3c5c5c3c3c3c3b8a38d77624c3a3a3a3a362d2111000011233341494a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a453b2c1a080011233341494a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a453b2c1a080000000000000000000000000000000000000000000000000000000000172c42576c8398adc3c3c3c3c5cdcdb8a38d77624c3c3c3c3c39302313010011233341494a4a4a4a4a4a4a4a4a4a4a4a4a473e301f0d0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000152a3f546a8095abc0c3c3c3c3c3c3bba59079644f3a250f000000000000001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a442f1a05000000000000000d22374c62778da3b8cde2f8ffedd8c3ad98836c57422c17001f344a5f748ba0b5cbcdcdcdd1dae6f5ffffffe2cdb8a38d77624c444444444444444444444444444444444444444444444441382a1a080000000000000000101e2a32343434343434343434343434343434343434343431291d0e000000000000000000000000000000000a161f2425252c42576c8398adadadadadb0bbcab8a38d776252525252524d41301e0b00152839475052525252576c8398adc3c2b5aeadadadada38d77624c37252525221b100300000515232e34343434343434343434343434343434343434343434343434343431291d0e00000515232e34343434343434343434343434343434343434343434343434343431291d0e000000000000000000000000000000000000000000000000000000000000172c42576c8398adadadadadb0bbcab8a38d776252525252524d41301e0b000515232e3434343434343434343434343434332b2012010000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000152a3f546a8095abc0d5d8d8d8d8d0bba59079644f3a250f000000000000001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a442f1a05000000000000000d22374c62778da3b8cde2f8ffedd8c3ad98836c57422c17001f344a5f748ba0b5b8b8b8b8bdc8d7e8fbffffe2cdb8a38d77624c4747474743382f2f2f2f2f2f2f2f2f2f2f2f2f2f2f2f2f2d261a0c000000000000000000000d171d1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1d160c000000000000000000000000000000000000030b0f0f172c42576c839898989898989dadc0b8a38d776767676767675f4e3b2612001c3144576467676767676c8398adc3b6a49998989898988d77624c37220f0f0d07000000000005111a1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1d160c0000000005111a1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1d160c00000000000000000000000000000000000000000000000000000000000000172c42576c839898989898989dadc0b8a38d776767676767675f4e3b2612000005111a1f1f1f1f1f1f1f1f1f1f1f1f1f1f1e180f02000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000152a3f546a8095abc0d5eaedede5d0bba59079644f3a250f000000000000001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a442f1a05000000000000000d22374c62778da3b8cde2f8ffedd8c3ad98836c57422c17001f344a5f748ba0a3a3a3a3a3aab9cbdff3ffffe2cdb8a38d77625c5c5c5c5c564836231a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1812090000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000172c42576c8383838383838390a5bbb8a38d7c7c7c7c7c7c7c69543f2a15001f344a5f747c7c7c7c7c7c8398adc3b09b8683838383838377624c37220d00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000172c42576c8383838383838390a5bbb8a38d7c7c7c7c7c7c7c69543f2a150000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000152a3f546a8095abc0d5eaffffe5d0bba59079644f3a250f000000000000001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a442f1a05000000000000000d22374c62778da3b8cde2f8ffedd8c3ad98836c57422c17001f344a5f748b8d8d8d8d8d8e9cafc4d9eeffffe2cdb8a38d7772727272727266523e2914000000000000000000000000000000000000000000000000000000000000000000000611191c1d1d1d1d1d1d1d1d1d1d1d1d1d1a140900000000000000000000000000000000000000000000152a3f53646c6c6c6c6c6c7990a5bbbba897939393939393806a543f2a15001f344a5f748b9393939393939fb1c5b09b866f6c6c6c6c6c6a5c4935200b0000000000000000030f171c1d1d1d1d1d1d1d1d1d1d1d1d1d1b160c000000000001080c0d0d0d0d0d0d0d0d0d0d0d0d0d0b070000000000010d15191a1a1a1a1a1a1a1a1a1a1a1a1a19130a00000000000000000000000912181a1a1a1a1a1a1a19130a000000000000000000152a3f53646c6c6c6c6c6c7990a5bbbba897939393939393806a543f2a150000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000003070707070707070707070707070707070707070707152a3f546a8095abc0d5eaffffe5d0bba59079644f3a250f070601000000001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a442f1a05000000000000000d22374c62778da3b8cde2f8ffedd8c3ad98836c57422c17001f34495e717777777777778398adc3d8edffffe3ceb9a490888888888888806a543f2a150000000000000000000000000000000000000000000000000000000000000000000817242d32323232323232323232323232322f271b0c00000000000000000000000000000000000000000010233646535757575757647990a5bbc5b5aaa8a8a8a8a895806a543f2a15001f344a5f748ba0a8a8a8a8a8afbdc5b09b866f5a57575757564d3e2d1906000000000000000413212b313232323232323232323232323230291e1000000008141c2122222222222222222222222222201b1104000002121f292e2f2f2f2f2f2f2f2f2f2f2f2f2f2d271c0e0000000000000000000c1a262d2f2f2f2f2f2f2f2d271c0e000000000000000010233646535757575757647990a5bbc5b5aaa8a8a8a8a895806a543f2a150000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000030f171c1d1d1d1d1d1d1d1d1d1d1d1d1d1d1d1d1d1d1d1d1d2a3f546a8095abc0d5eaffffe5d0bba59079644f3a251d1d1b150b0000001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a442f1a15151515151515151522374c62778da3b8cde2f8ffedd8c3ad98836c57422c17001b2f42536062626262626c8398adc3d8eaeaece7d3bfaea09d9d9d9d9d95806a543f2a1515140f07000000000000000000000000000000000000000000000000000000000214263541474747474747474747474747474743382a19070000000000000000000000000000000000000000061828363f424242424f647990a5bbcbc7bfbdbdbdbdab95806a543f2a15001f344a5f748ba0b5bdbdbdbdc2cbc5b09b866f5a44424242413b2f200f00000000000000001022323e4647474747474747474747474747453c2e1d0b00071725303637373737373737373737373737352e221303000f20303c434444444444444444444444444442392c1c0a00000000000000081a2a38414444444444444442392c1c0a00000000000000061828363f424242424f647990a5bbcbc7bfbdbdbdbdab95806a543f2a15000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000413212b31323232323232323232323232323232323232323232323f546a8095abc0d5eaffffe5d0bba59079644f3a3232322f281c0e00001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a442f2a2a2a2a2a2a2a2a2a2a2a374c62778da3b8cde2f8ffedd8c3ad98836c57422c1700122535434b4c4c4c4c576c8398adc3d5d5d5d7ddddccbeb5b3b3b3b3ab95806a543f2a2a2a2923190c0000000000000000000000000000000000000000000000000000000a1e3144535c5c5c5c5c5c5c5c5c5c5c5c5c5c564836230f0000000000000000000000000000000000000000000a18232a2c2c2c3a4f647990a5b5b5b5b5b5b5b5b5ab95806a543f2a15001f344a5f748ba0b5b5b5b5b5b5b5b5b09b866f5a442f2c2c2c271e11020000000000000000192d3f505b5c5c5c5c5c5c5c5c5c5c5c5c5c594c3b281400122535434b4c4c4c4c4c4c4c4c4c4c4c4c4c4a4031200e00182b3e4e585a5a5a5a5a5a5a5a5a5a5a5a5a564a3927130000000000000011243748555a5a5a5a5a5a5a564a39271300000000000000000a18232a2c2c2c3a4f647990a5b5b5b5b5b5b5b5b5ab95806a543f2a15000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001022323e464747474747474747474747474747474747474747474747546a8095abc0d5eaffffe5d0bba59079644f47474747443a2c1b09001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a443f3f3f3f3f3f3f3f3f3f3f3f3f4c62778da3b8cde2f8ffedd8c3ad98836c57422c1700071725303637373742576c8398adc0c0c0c0c2cad7dbd0c9c8c8c8c0ab95806a543f3f3f3f3e362a1b0900000000000000000000000000000000000000000000000000000e23384d61707272727272727272727272727266523e2914000000000000000000000000000000000000000000000610151717253a4f647990a0a0a0a0a0a0a0a0a0a095806a543f2a15001f344a5f748ba0a0a0a0a0a0a0a0a0a09b866f5a442f1a1717130b010000000000000000001e33485c6e727272727272727272727272726a57432e19001b2f425360626262626262626262626262625d4f3d2a16001e33475b6b6f6f6f6f6f6f6f6f6f6f6f6f6f6856422d1900000000000000162b4054666f6f6f6f6f6f6f6856422d190000000000000000000610151717253a4f647990a0a0a0a0a0a0a0a0a0a095806a543f2a1500000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000192d3f505b5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c6a8095abc0d5eaffffe5d0bba59079645c5c5c5c5c574a382511001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a54545454545454545454545454545462778da3b8cde2f8ffedd8c3ad98836c57422c17000008141c2122222c42576c8398abababababaeb9c9dbe4deddddd5c0ab95806a5454545454524838271400000000000000000000000000000000000000000000000000000f253a4f6479888888888888888888888888806a543f2a1500000000000000000000000000000000000000000000000000000f253a4f64798b8b8b8b8b8b8b8b8b8b8b8b806a543f2a15001f344a5f748b8b8b8b8b8b8b8b8b8b8b8b866f5a442f1a05000000000000000000000000001f344a5f74888888888888888888888888866f5a442f1a001f34495e71777777777777777777777777776d59442f1a001f344a5f74868686868686868686868686866f5a442f1a00000000000000172c42576c838686868686866f5a442f1a000000000000000000000000000f253a4f64798b8b8b8b8b8b8b8b8b8b8b8b806a543f2a15000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001e33485c6e727272727272727272727272727272727272727272727272728095abc0d5eaffffe5d0bba590797272727272726855402b16001f344a5f748ba0b5cbe0f5fff0dac5b09b866f6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a778da3b8cde2f8ffedd8c3ad98836c57422c1700000001080c0d172c42576c839595959595959babbfd3e7f3f2ead5c0ab95806a6a6a6a6a6a6656432f1a05000000000000000000000000000000000000000000000000000f253a4f6479909d9d9d9d9d9d9d9d9d9d95806a543f2a1500000000000000000000000000000000000000000000000000000f24394e62737474747474747474747474747467533e2914001f34495d70747474747474747474747474746b58432e1904000000000000000000000000001f344a5f748b9d9d9d9d9d9d9d9d9d9d9b866f5a442f1a001f344a5f748b8d8d8d8d8d8d8d8d8d8d8d866f5a442f1a001f344a5f748b9b9b9b9b9b9b9b9b9b9b9b866f5a442f1a000000050d1112172c42576c83989b9b9b9b866f5a442f1a000000000000000000000000000f24394e62737474747474747474747474747467533e2914000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001f344a5f74888888888888888888888888888888888888888888888888888897acc0d6ebffffe5d0bba692888888888888836c57422c17001f344a5f748ba0b5cbe0f5fff0dac5b09b86808080808080808080808080808080808080808da3b8cde2f8ffedd8c3ad98836c57422c1700000000000000172c42576c8080808080808090a5bbd0e5faffead5c0ab9580808080808080725c47321d07000000000000000000000000000000000000000000000000000f253a4f647990a5b3b3b3b3b3b3b3b3ab95806a543f2a1500000000000000000000000000000000000000000000000000000b1f3345555e5f5f5f5f5f5f5f5f5f5f5f5f5f5849372410001a2e41515d5f5f5f5f5f5f5f5f5f5f5f5f5f5b4e3c291500000000000000000000000000001f344a5f748ba0b3b3b3b3b3b3b3b3b09b866f5a442f1a001f344a5f748ba0a3a3a3a3a3a3a3a3a39b866f5a442f1a001f344a5f748ba0b0b0b0b0b0b0b0b0b09b866f5a442f1a00000c18212627272c42576c8398adb0b09b866f5a442f1a000000000000000000000000000b1f3345555e5f5f5f5f5f5f5f5f5f5f5f5f5f5849372410000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001f344a5f748b9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9da5b4c7daefffffe9d5c2b0a29d9d9d9d9d98836c57422c17001f344a5f748ba0b5cbe0f5fff2ddc9b5a2969595959595959595959595959595959595959599a9bcd0e5faffedd8c3ad98836c57422c1700000000000000152a3e51626a6a6a6a6a6a7990a5bbd0e5f2f3edd8c4b09e95959595959588725c47321d0d0c0903000000000000000000000000000000000000000000000f253a4f647990a5bbc8c8c8c8c8c8c0ab95806a543f2a1500000000000000000000000000000000000000000000000000000316273743494a4a4a4a4a4a4a4a4a4a4a4a4a453b2c1a080011233341494a4a4a4a4a4a4a4a4a4a4a4a4a473e301f0d00000000000000000000000000001f344a5f748ba0b5c8c8c8c8c8c8c5b09b866f5a442f1a001f344a5f748ba0b5b8b8b8b8b8b8b8b09b866f5a442f1a001f344a5f748ba0b5c5c5c5c5c5c5c5b09b866f5a442f1a000a1b2a353b3c3c3c42576c8398adc3b09b866f5a442f1a000000000000000000000000000316273743494a4a4a4a4a4a4a4a4a4a4a4a4a453b2c1a08000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001f344a5f748ba0b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b7c2d2e3f6fffff1dfcebfb5b3b3b3b3ad98836c57422c17001f344a5f748ba0b5cbe0f5fff8e4d2c0b3ababababababababababababababababababababadb7c7d8ebffffedd8c3ad98836c57422c17000000000000000f223444505454545454647990a5bbd0dddddee2dfcdbdb0ababababab9d88725c47322222221e160b0000000000000000000000000000000000000000000f253a4f647990a5bbd0ddddddddd5c0ab95806a543f2a150000000000000000000000000000000000000000000000000000000a192630343434343434343434343434343431291d0e00000515232e3434343434343434343434343434332b20120100000000000000000000000000001f344a5f748ba0b5cbdddddddddac5b09b866f5a442f1a001f344a5f748ba0b5cbcdcdcdcdcdc5b09b866f5a442f1a001f344a5f748ba0b5cbdadadadadac5b09b866f5a442f1a00152839475052525252576c8398adadad9b866f5a442f1a00000000000000000000000000000a192630343434343434343434343434343431291d0e00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001f344a5f748ba0b5c8c8c8c8c8c8c8c8c5c0c0c0c0c0c0c0c0c0c0c0c0c0c0c4cddbebfcfffff8e6d7cac2c0c0c0c0ad98836c57422c17001f344a5f748ba0b5cbe0f5ffffefded0c5c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c1c9d5e4f6ffffedd8c3ad98836c57422c1700000000000000051626333c3f3f3f3f4f647990a5bbc8c8c8c8ced8dbcdc4c0c0c0c0b39d88725c473737373732281b0b00000000000000000000000000000000000000000f253a4f647990a5bbd0e5f2f2ead5c0ab95806a543f2a150000000000000000000000000000000000000000000000000000000009141b1f1f1f1f1f1f1f1f1f1f1f1f1f1f1d160c0000000005111a1f1f1f1f1f1f1f1f1f1f1f1f1f1f1e180f020000000000000000000000000000001f344a5f748ba0b5cbe0f2f2f0dac5b09b866f5a442f1a001f344a5f748ba0b5cbe0e2e2e2dac5b09b866f5a442f1a001f344a5f748ba0b5cbe0f0f0f0dac5b09b866f5a442f1a001c3144576467676767676c839898989898866f5a442f1a00000000000000000000000000000009141b1f1f1f1f1f1f1f1f1f1f1f1f1f1f1d160c0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001f344a5f748ba0b5cbddddddddddd2c0b3ababababababababababababababb0bdcddff3ffffeedbc9b9aeababababab98836c57422c17001f344a5f748ba0b5cbe0f5fffbe8d6c6b9b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b5beccddefffffedd8c3ad98836c57422c170000000000000000081621282a2a2a3a4f647990a5b3b3b3b3b3bbc8d8dfd8d5d5d5c8b39d88725c4c4c4c4c4c4639291704000000000000000000000000000000000000000f253a4f647990a5bbd0e5faffead5c0ab95806a543f2a15000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a442f1a001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a442f1a001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a442f1a001f344a5f747c7c7c7c7c7c838383838383836f5a442f1a00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001f344a5f748ba0b5cbe0f2f2f2ddc9b5a296959595959595959595959595959eb0c4d8edffffe7d3bfab9b959595959595836c57422c17001f344a5f748ba0b5cbe0f5fff4dfcbb8a89e9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9da0aebfd3e7fbffedd8c3ad98836c57422c17000000000000000000040d131515253a4f6479909d9d9d9d9d9faabbcee2edeaeaddc8b39d8872626262626261574734200b00000000000000000001080c0d0d0d0d0d0d0d0f253a4f647990a5bbd0e5faffead5c0ab95806a543f2a150d0d0d0d0d0d0d0c090300000000000001080c0d0d0d0d0d0d0d0d0d0d0d0d0d0b070000070c0d0d0d0d0d0d0d0d0d0d0d0d0d0c0700000000000001080c0d0d0d0d0d0d0d0d0d0d0d0d0d0b0700000000000000000000001f344a5f748ba0b5cbe0f2f2f0dac5b09b866f5a442f1a001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a442f1a001f344a5f748ba0b5cbe0f5f5f0dac5b09b866f5a442f1a001f344a5f748b93939393937c6c6c6c6c6c6c6655412d1800000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001f344a5f748ba0b5cbe0f5fff0dac5b09b868080808080808080808080808095abc0d5eaffffe5d0bba590808080808080806c57422c17001f344a5f748ba0b5cbe0f5fff0dbc6b19c8a8888888888888888888888888888888888888890a4b9cee3f8ffedd8c3ad98836c57422c17000000000000000000000000000f253a4f64798888888888888c9fb3c8def3fff2ddc8b39d8877777777777775634e39240f000000000000000008141c212222222222222222253a4f647990a5bbd0e5faffead5c0ab95806a543f2a2222222222222222221e160b0000000008141c2122222222222222222222222222201b11121b2122222222222222222222222222211b120600000008141c2122222222222222222222222222201b11040000000000000000001f344a5f748ba0b5cbdddddddddac5b09b866f5a442f1a001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a442f1a001f344a5f748ba0b5cbe0e0e0e0dac5b09b866f5a442f1a001f344a5f748ba0a8a8a8937c675757575757544838261200000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001f344a5f748ba0b5cbe0f2f2f0dac5b09b866f6a6a6a6a6a6a6a6a6a6a6a8095abc0d5eaffffe5d0bba590796a6a6a6a6a6a62513e2a15001f344a5f748ba0b5cbe0f5fff0dac5b09b86727272727272727272727272727272727272778da3b8cde2f8ffedd8c3ad98836c57422c17000000000000000000000000000e23384d6170727272727272889db3c8ddf2faf3dec9b5a0908d8d8d8d8d8d79644f3a250f0503000000000007172530363737373737373737373a4f647990a5bbd0e5faffead5c0ab95806a543f3737373737373737373732281b0b0000071725303637373737373737373737373737352e22242f3637373737373737373737373737362f24150500071725303637373737373737373737373737352e22130300000000000000001f344a5f748ba0b5c8c8c8c8c8c8c5b09b866f5a442f1a001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a442f1a001f344a5f748ba0b5cbcbcbcbcbcbc5b09b866f5a442f1a001f344a5f748ba0b5bda8937c67524242424240372a1a0900000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001f344a5f748ba0b5cbdddddde0dac5b09b866f5a5454545454545454546a8095abc0d5eaffffe5d0bba59079645454545454504434220f001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c62778da3b8cde2f8ffedd8c3ad98836c57422c17000000000000000000000000000a1e3144535c5c5c5c5c5c72889db3c8dde5e5e7e4d0beaea4a3a3a3a3a39079644f3a251a1a181209000000122535434b4c4c4c4c4c4c4c4c4c4c4f647990a5bbd0e5faffead5c0ab95806a544c4c4c4c4c4c4c4c4c4c4c463929170400122535434b4c4c4c4c4c4c4c4c4c4c4c4c4c4a403133414a4c4c4c4c4c4c4c4c4c4c4c4c4c4a4133221000122535434b4c4c4c4c4c4c4c4c4c4c4c4c4c4a4031200e00000000000000001f344a5f748ba0b3b3b3b3b3b3b3b3b09b866f5a442f1a001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a442f1a001f344a5f748ba0b5b5b5b5b5b5b5b5b09b866f5a442f1a001f344a5f748ba0b5b5a8937c67523c2c2c2c2b241a0c0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001f344a5f748ba0b5c8c8c8c8ccd5c5b09b866f5a443f3f3f3f3f3f3f546a8095abc0d5eaffffe5d0bba59079644f3f3f3f3f3c33261605001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a47474747474747474747474747474c62778da3b8cde2f8ffedd8c3ad98836c57422c1700000000000000000000000000021426354147474747475c72889db3c8d0d0d0d3dbdbccbfb9b8b8b8b8a59079644f3a2f2f2f2d261a0c00001b2f4253606262626262626262626262647990a5bbd0e5faffead5c0ab95806a626262626262626262626261574734200b001b2f425360626262626262626262626262625d4f3d40515f626262626262626262626262625f51402c18001b2f425360626262626262626262626262625d4f3d2a1601000000000000001f344a5f748b9d9d9d9d9d9d9d9d9d9d9b866f5a442f1a001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a442f1a001f344a5f748ba0a0a0a0a0a0a0a0a0a09b866f5a442f1a001f344a5f748ba0a0a0a0937c67523c271717161108000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001f344a5f748ba0b3b3b3b3b3b8c4c5b09b866f5a4c4c4c4c4c44373f546a8095abc0d5eaffffe5d0bba59079644f3a2a2a2a2821160800001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a44323232323232323232323232374c62778da3b8cde2f8ffedd8c3ad98836c57422c1700000000000000000000000000000817242d32323232475c72889db3bbbbbbbbbfc9d7ddd3cecdcdcdbba59079644f4444444441382a1a08001f34495e717777777777777777777777777990a5bbd0e5faffead5c0ab958077777777777777777777777775634e39240f001f34495e71777777777777777777777777776d5944465b6f777777777777777777777777776f5b46311c001f34495e71777777777777777777777777776d59442f1a04000000000000001f344a5f74888888888888888888888888866f5a442f1a001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a442f1a001f344a5f748b8b8b8b8b8b8b8b8b8b8b8b866f5a442f1a001f344a5f748b8b8b8b8b8b7c67523c271200000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001f344a5f748b9d9d9d9d9d9ea6b6c5b09b866f62626262626055443f546a8095abc0d5eaffffe5d0bba59079644f3a251515130d040000001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a442f1d1d1d1d1d1d1d1d1d1d22374c62778da3b8cde2f8ffedd8c3ad98836c57422c170000000000000000000000000000000611191c1d1d32475c72889da5a5a5a5a5abb9cadde7e3e2e2d0bba59079645a5a5a5a5a5548372411001f344a5f748b8d8d8d8d8d8d8d8d8d8d8d8d95a8bcd1e6fbffebd6c1ad998d8d8d8d8d8d8d8d8d8d8d8d8d79644f3a250f001f344a5f748b8d8d8d8d8d8d8d8d8d8d8d866f5a44475c72888d8d8d8d8d8d8d8d8d8d8d88725c47321d001f344a5f748b8d8d8d8d8d8d8d8d8d8d8d866f5a442f1a05040100000000001e33485c6e727272727272727272727272726a57432e19001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a442f1a001f34495d70747474747474747474747474746b58432e19001f34495d707474747474747464503b261100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001f344a5f74888888888888899aaec3b09b8677777777777773604c3f546a8095abc0d5eaffffe5d0bba59079644f3a250f000000000000001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a442f1a05000000000000000d22374c62778da3b8cde2f8ffedd8c3ad98836c57422c1700000000000000000000000000000000000000001d32475c72889090909090909baec2d7ecffffe5d0bba590796f6f6f6f6f6f6654402b16001f344a5f748ba0a3a3a3a3a3a3a3a3a3a3a3a6b3c4d7ebfffff0dcc9b7a9a3a3a3a3a3a3a3a3a3a3a3a39079644f3a250f001f344a5f748ba0a3a3a3a3a3a3a3a3a39b866f5a44475c72889da3a3a3a3a3a3a3a3a39d88725c47321d001f344a5f748ba0a3a3a3a3a3a3a3a3a39b866f5a442f1a1a1a160e03000000192d3f505b5c5c5c5c5c5c5c5c5c5c5c5c5c594c3b2814001f344a5f748ba0b5cbe0f5f5f0dac5b09b866f5a442f1a001a2e41515d5f5f5f5f5f5f5f5f5f5f5f5f5f5b4e3c2915001a2e41515d5f5f5f5f5f5f5f574735210d00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001e33485c6e7272727272728398adc3b29e8f8d8d8d8d8d8d77624c3f546a8095abc0d5eaffffe5d0bba59079644f3a250f000000000000001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a442f1a05000000000000000d22374c62778da3b8cde2f8ffedd8c3ad98836c57422c1700000000000000000000000000000000000000001c32475c707979797979798095abc0d5eaffffe5d0bba691868686868686836c57422c17001f344a5f748ba0b5b8b8b8b8b8b8b8b8b8b8bac3d1e2f4fffff8e6d5c7bcb8b8b8b8b8b8b8b8b8b8b8a59079644f3a250f001f344a5f748ba0b5b8b8b8b8b8b8b8b09b866f5a44475c72889db3b8b8b8b8b8b8b8b39d88725c47321d001f344a5f748ba0b5b8b8b8b8b8b8b8b09b866f5a442f2f2f2f2a20130400001022323e4647474747474747474747474747453c2e1d0b001f344a5f748ba0b5cbe0e0e0e0dac5b09b866f5a442f1a0011233341494a4a4a4a4a4a4a4a4a4a4a4a4a473e301f0d0011233341494a4a4a4a4a4a4a44392a18050000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000192d3f505b5c5c5c5c5c6c8398adc3bbaca3a3a3a3a3a38d77624c3f546a8095abc0d5eaffffe5d0bba59079644f3a250f000000000000001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a442f1a05000000000000000d22374c62778da3b8cde2f8ffedd8c3ad98836c57422c17000000050d111212121212121212121212121212192d41536164646464646a8095abc0d5eaffffe9d4c1ae9f9b9b9b9b9b98836c57422c17001f344a5f748ba0b5bbbbbbbbbbbbbbbbbbbbbdc6d3e3f5fffffae8d7c9bfbbbbbbbbbbbbbbbbbbbbbba59079644f3a250f001f344a5f748ba0b5cbcdcdcdcdcdc5b09b866f5a44475c72889db3c8cdcdcdcdcdc8b39d88725c47321d001f344a5f748ba0b5bbbbbbbbc0cac5b09b866f5a44444444443d31221100000f20303c434444444444444444444444444442392c1c0a001f344a5f748ba0b5cbcbcbcbcbcbc5b09b866f5a442f1a000515232e3434343434343434343434343434332b201201000515232e343434343434343431281b0c0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001022323e4647474747576c8398adc3cabeb8b8b8b8b8a38d77624c3f546a8095abc0d5eaffffe5d0bba59079644f3a250f000000000000001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a442f1a05000000000000000d22374c62778da3b8cde2f8ffedd8c3ad98836c57422c1700000c1821262727272727272727272727272727272735444d4f4f4f4f546a8095abc0d5eafffff0ddccbdb3b0b0b0b0ad98836c57422c17001f344a5f748ba0a5a5a5a5a5a5a5a5a5a5a5a9b5c6d8ecfffff1ddcab9aba5a5a5a5a5a5a5a5a5a5a5a59079644f3a250f001f344a5f748ba0b5cbe0e2e2e2dac5b09b866f5a44475c72889db3c8dde2e2e2ddc8b39d88725c47321d001f344a5f748ba0a5a5a5a5a5adbbc5b09b866f5a5a5a5a5a594f402e1b0700182b3e4e585a5a5a5a5a5a5a5a5a5a5a5a5a564a392713001f344a5f748ba0b5b5b5b5b5b5b5b5b09b866f5a442f1a000005111a1f1f1f1f1f1f1f1f1f1f1f1f1f1f1e180f0200000005111a1f1f1f1f1f1f1f1f1c150a000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000413212b3132323242576c8398adbbbbbbbbbdc6cdb8a38d77624c44546a8095abc0d5eaffffe5d0bba59079644f3a250f000000000000001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a442f1a05000000000000000d22374c62778da3b8cde2f8ffedd8c3ad98836c57422c17000a1b2a353b3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3f546a8095abc0d5eafffffbeadbcfc7c5c5c5c3ad98836c57422c17001f344a5f748b90909090909090909090909097a9bdd2e6fbffecd7c2ae9b9090909090909090909090909079644f3a250f001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a44475c72889db3c8ddf2fff2ddc8b39d88725c47321d001f344a5f748b9090909090909db0c5b09b866f6f6f6f6f6f6d5d4a35200b001e33475b6b6f6f6f6f6f6f6f6f6f6f6f6f6f6856422d19001f344a5f748ba0a0a0a0a0a0a0a0a0a09b866f5a442f1a000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000030f171c1d1d2c42576c8398a5a5a5a5a5a9b5c6b8a38d77625a5a5a6a8095abc0d5eaffffe5d0bba59079644f3a250f000000000000001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a442f1a05000000000000000d22374c62778da3b8cde2f8ffedd8c3ad98836c57422c170015283947505252525252525252525252525252525252525252525252546a8095abc0d5eafffffff9ece2dcdadad8c3ad98836c57422c17001f34495e737979797979797979797979797990a5bbd0e5faffead5c0ab958079797979797979797979797977644f3a240f001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a44475c72889db3c8ddf2fff2ddc8b39d88725c47321d001f34495e737979797979798398adc3b09b8886868686868677624c37220d001f344a5f74868686868686868686868686866f5a442f1a001f344a5f748b8b8b8b8b8b8b8b8b8b8b8b866f5a442f1a0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000172c42576c8390909090909097a9bdb8a38d776f6f6f6f6f8095abc0d5eaffffe5d0bba59079644f3a250f000000000000001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a442f1a05000000000000000d22374c62778da3b8cde2f8ffedd8c3ad98836c57422c17001c314457646767676767676767676767676767676767676767676767676a8095abc0d5eafffffffffef6f1f0edd8c3ad98836c57422c17001b304355626464646464646464646464647990a5bbd0e5faffead5c0ab95806a646464646464646464646464594835210c001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a44475c72889db3c8ddf2fff2ddc8b39d88725c47321d001b3043556264646464646c8398adc3b7a69b9b9b9b9b9b8d77624c37220d001f344a5f748b9b9b9b9b9b9b9b9b9b9b9b866f5a442f1a001f34495d70747474747474747474747474746b58432e190000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000172c41576b7979797979797990a5bbb8a38f8686868686868696abc0d5ebffffe5d0bba59079644f3a250f000000000000001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a442f1a05000000000000000d22374c62778da3b8cde2f8ffedd8c3ad98836c57422c17001f344a5f747c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c8095abc0d5eaffffffffffffffffedd8c3ad98836c57422c1700142637454e4f4f4f4f4f4f4f4f4f4f4f647990a5bbd0e5faffead5c0ab95806a544f4f4f4f4f4f4f4f4f4f4f483b2b1805001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a44475c72889db3c8ddf2fff2ddc8b39d88725c47321d00142637454e4f4f4f4f576c8398adc3c4b7b0b0b0b0b0a38d77624c37220d001f344a5f748ba0b0b0b0b0b0b0b0b0b09b866f5a442f1a001a2e41515d5f5f5f5f5f5f5f5f5f5f5f5f5f5b4e3c2915000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000014283c4f5e6464646464647990a5bbbeac9e9b9b9b9b9b9b9ba2b3c5d9eeffffe5d0bba59079644f3a250f000000000000001f344a5f748ba0b5cbe0f5f5f0dac5b09b866f5a442f1a05000000000000000d22374c62778da3b8cde2f5f5edd8c3ad98836c57422c17001f344a5f748b939393939393939393939393939393939393939393939393939dafc3d7ecf5f5f5f5f5f5f5f5edd8c3ad98836c57422c170009192733393a3a3a3a3a3a3a3a3a3a4f647990a5bbd0e5faffead5c0ab95806a543f3a3a3a3a3a3a3a3a3a3a352b1d0d00001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a44475c72889db3c8ddf2fff2ddc8b39d88725c47321d0009192733393a3a3a42576c8398adc3d4cac5c5c5c5b8a38d77624c37220d001f344a5f748ba0b5c5c5c5c5c5c5c5b09b866f5a442f1a0011233341494a4a4a4a4a4a4a4a4a4a4a4a4a473e301f0d00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000d1f31404b4f4f4f4f4f647990a5bbcabbb2b0b0b0b0b0b0b0b5c0d0e2f5ffffe5d0bba59079644f3a250f000000000000001f344a5f748ba0b5cbe0e0e0e0dac5b09b866f5a442f1a05000000000000000d22374c62778da3b8cde0e0e0e0d8c3ad98836c57422c17001f344a5f748ba0a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8aebbccdee0e0e0e0e0e0e0e0e0e0d8c3ad98836c57422c1700000a161f242525252525252525253a4f647990a5bbd0e5faffead5c0ab95806a543f2a25252525252525252421180d0000001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a44475c72889db3c8ddf2fff2ddc8b39d88725c47321d00000a161f2425252c42576c8398adc3d8dedbdadacdb8a38d77624c37220d001f344a5f748ba0b5cbdadadadadac5b09b866f5a442f1a000515232e3434343434343434343434343434332b20120100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000213222f373a3a3a3a4f647990a5bbc3c3c3c3c5c5c5c5c5c5c9d2deeeffffffe5d0bba59079644f3a250f000000000000001f344a5f748ba0b5cbcbcbcbcbcbc5b09b866f5a442f1a05000000000000000d22374c62778da3b8cbcbcbcbcbcbc3ad98836c57422c17001f344a5f748ba0b5bdbdbdbdbdbdbdbdbdbdbdbdbdbdbdbdbdbdbdbdbdbdbdc1cbcbcbcbcbcbcbcbcbcbcbcbcbcbc3ad98836c57422c17000000030b0f0f0f0f0f0f0f0f0f253a4f647990a5bbd0e5faffead5c0ab95806a543f2a150f0f0f0f0f0f0f0f0c05000000001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a44475c72889db3c8ddf2fff2ddc8b39d88725c47321d000000030b0f0f172c42576c8398adc3d8edf0f0e2cdb8a38d77624c37220d001f344a5f748ba0b5cbe0f0f0f0dac5b09b866f5a442f1a000005111a1f1f1f1f1f1f1f1f1f1f1f1f1f1f1e180f020000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000004121c232525253a4f647990a5adadadadaeb6c4d5dadadadde4effcffffffe5d0bba59079644f3a250f000000000000001f344a5f748ba0b5b5b5b5b5b5b5b5b09b866f5a442f1a05000000000000000d22374c62778da3b5b5b5b5b5b5b5b5ad98836c57422c17001f344a5f748ba0b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5ad98836c57422c17000000000000000000000000000f253a4f647990a5bbd0e5faffead5c0ab95806a543f2a1500000000000000000000000000001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a44475c72889db3c8ddf2fff2ddc8b39d88725c47321d00000000000000172c42576c8398adc3d8edffffe2cdb8a38d77624c37220d001f344a5f748ba0b5cbe0f5fff0dac5b09b866f5a442f1a0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000080e0f0f253a4f64799098989898989aa6b8cce0f0f0f2f8ffffffffffe5d0bba59079644f3a250f000000000000001f344a5f748ba0a0a0a0a0a0a0a0a0a09b866f5a442f1a05000000000000000d22374c62778da0a0a0a0a0a0a0a0a0a098836c57422c17001f344a5f748ba0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a098836c57422c17000000000000000000000000000f253a4f647990a5bbd0e5f5f5ead5c0ab95806a543f2a1500000000000000000000000000001f344a5f748ba0b5cbe0f5f5f0dac5b09b866f5a44475c72889db3c8ddf2f5f2ddc8b39d88725c47321d00000000000000172c42576c8398adc3d8edf5f5e2cdb8a38d77624c37220d001f344a5f748ba0b5cbe0f5f5f0dac5b09b866f5a442f1a00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000f253a4f6479838383838383899eb3c8ddf2ffffffffffffffffe5d0bba59079644f3a250f000000000000001f344a5f748b8b8b8b8b8b8b8b8b8b8b8b866f5a442f1a05000000000000000d22374c62778b8b8b8b8b8b8b8b8b8b8b8b836c57422c17001f344a5f748b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b836c57422c17000000000000000000000000000f253a4f647990a5bbd0e0e0e0e0d5c0ab95806a543f2a1500000000000000000000000000001f344a5f748ba0b5cbe0e0e0e0dac5b09b866f5a44475c72889db3c8dde0e0e0ddc8b39d88725c47321d00000000000000172c42576c8398adc3d8e0e0e0e0cdb8a38d77624c37220d001f344a5f748ba0b5cbe0e0e0e0dac5b09b866f5a442f1a00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000e23374b5e6b6c6c6c6c6c72889db3c8ddf2f5f5f5f5f5f5f5f5e5d0bba59079644f3a250f000000000000001f34495d70747474747474747474747474746b58432e1904000000000000000c21364b6071747474747474747474747474746955412c17001f34495d707474747474747474747474747474747474747474747474747474747474747474747474747474747474747474746955412c17000000000000000000000000000f253a4f647990a5bbcbcbcbcbcbcbc0ab95806a543f2a1500000000000000000000000000001f344a5f748ba0b5cbcbcbcbcbcbc5b09b866f5a44475c72889db3c8cbcbcbcbcbc8b39d88725c47321d00000000000000172c42576c8398adc3cbcbcbcbcbcbb8a38d77624c37220d001f344a5f748ba0b5cbcbcbcbcbcbc5b09b866f5a442f1a0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000081c2f404f57575757575c72889db3c8dde0e0e0e0e0e0e0e0e0e0d0bba59079644f3a250f000000000000001a2e41515d5f5f5f5f5f5f5f5f5f5f5f5f5f5b4e3c29150000000000000000081c3043535e5f5f5f5f5f5f5f5f5f5f5f5f5f5a4c3a2612001a2e41515d5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5a4c3a2612000000000000000000000000000f253a4f647990a5b5b5b5b5b5b5b5b5ab95806a543f2a1500000000000000000000000000001f344a5f748ba0b5b5b5b5b5b5b5b5b09b866f5a44475c72889db3b5b5b5b5b5b5b5b39d88725c47321d00000000000000172c42576c8398adb5b5b5b5b5b5b5b5a38d77624c37220d001f344a5f748ba0b5b5b5b5b5b5b5b5b09b866f5a442f1a0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001222313c41424242475c72889db3c8cbcbcbcbcbcbcbcbcbcbcbcbbba59079644f3a250f0000000000000011233341494a4a4a4a4a4a4a4a4a4a4a4a4a473e301f0d00000000000000000114253542494a4a4a4a4a4a4a4a4a4a4a4a4a463c2e1d0a0011233341494a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a463c2e1d0a000000000000000000000000000f253a4f647990a0a0a0a0a0a0a0a0a0a095806a543f2a1500000000000000000000000000001f344a5f748ba0a0a0a0a0a0a0a0a0a09b866f5a44475c72889da0a0a0a0a0a0a0a0a09d88725c47321d00000000000000172c42576c8398a0a0a0a0a0a0a0a0a0a08d77624c37220d001f344a5f748ba0a0a0a0a0a0a0a0a0a09b866f5a442f1a00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000004131f282c2c2c32475c72889db3b5b5b5b5b5b5b5b5b5b5b5b5b5b5a59079644f3a250f000000000000000515232e3434343434343434343434343434332b2012010000000000000000000817252f3434343434343434343434343434322a1e1000000515232e34343434343434343434343434343434343434343434343434343434343434343434343434343434343434343434322a1e1000000000000000000000000000000f253a4f64798b8b8b8b8b8b8b8b8b8b8b8b806a543f2a1500000000000000000000000000001f344a5f748b8b8b8b8b8b8b8b8b8b8b8b866f5a44475c72888b8b8b8b8b8b8b8b8b8b8b88725c47321d00000000000000172c42576c838b8b8b8b8b8b8b8b8b8b8b8b77624c37220d001f344a5f748b8b8b8b8b8b8b8b8b8b8b8b866f5a442f1a00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000020d1417171d32475c72889da0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a09079644f3a250f000000000000000005111a1f1f1f1f1f1f1f1f1f1f1f1f1f1f1e180f02000000000000000000000007121b1f1f1f1f1f1f1f1f1f1f1f1f1f1f1d170d0000000005111a1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1d170d0000000000000000000000000000000f24394e62737474747474747474747474747467533e291400000000000000000000000000001f34495d70747474747474747474747474746b5843465b6e747474747474747474747474746e5b46311c00000000000000172c4155697474747474747474747474747471604b36210c001f34495d70747474747474747474747474746b58432e190000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001d32475c72888b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b79644f3a250f00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000b1f3345555e5f5f5f5f5f5f5f5f5f5f5f5f5f584937241000000000000000000000000000001a2e41515d5f5f5f5f5f5f5f5f5f5f5f5f5f5b4e3c3e505c5f5f5f5f5f5f5f5f5f5f5f5f5f5c503e2b170000000000000012263a4c5a5f5f5f5f5f5f5f5f5f5f5f5f5f5e5343301c08001a2e41515d5f5f5f5f5f5f5f5f5f5f5f5f5f5b4e3c29150000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001c31465b6e7474747474747474747474747474747474747473624e39240f00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000316273743494a4a4a4a4a4a4a4a4a4a4a4a4a453b2c1a08000000000000000000000000000011233341494a4a4a4a4a4a4a4a4a4a4a4a4a473e30323f484a4a4a4a4a4a4a4a4a4a4a4a4a483f32210f000000000000000a1d2e3c464a4a4a4a4a4a4a4a4a4a4a4a4a4942352514010011233341494a4a4a4a4a4a4a4a4a4a4a4a4a473e301f0d000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000172b3e505c5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5e5545331f0b0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000a192630343434343434343434343434343431291d0e0000000000000000000000000000000515232e3434343434343434343434343434332b20222d3334343434343434343434343434332d2213030000000000000000101e2a3234343434343434343434343434342f25170800000515232e3434343434343434343434343434332b2012010000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000f21323f484a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4943372716030000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000009141b1f1f1f1f1f1f1f1f1f1f1f1f1f1f1d160c000000000000000000000000000000000005111a1f1f1f1f1f1f1f1f1f1f1f1f1f1f1e180f10191e1f1f1f1f1f1f1f1f1f1f1f1f1f1e191004000000000000000000000d171d1f1f1f1f1f1f1f1f1f1f1f1f1f1f1b12070000000005111a1f1f1f1f1f1f1f1f1f1f1f1f1f1f1e180f02000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000313222d3334343434343434343434343434343434343434343026190a000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000410191e1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1b1409000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 + m_StreamData: + offset: 0 + size: 0 + path: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/ModResources/Fonts/PressStart2P-Regular SDF.asset.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/ModResources/Fonts/PressStart2P-Regular SDF.asset.meta" new file mode 100644 index 00000000..31c1a261 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/ModResources/Fonts/PressStart2P-Regular SDF.asset.meta" @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 88003508be39e449cb51c48494e680cf +NativeFormatImporter: + externalObjects: {} + mainObjectFileID: 11400000 + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/ModResources/Fonts/Raleway-Regular SDF.asset" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/ModResources/Fonts/Raleway-Regular SDF.asset" new file mode 100644 index 00000000..b31906bf --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/ModResources/Fonts/Raleway-Regular SDF.asset" @@ -0,0 +1,5985 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!114 &11400000 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 71c1514a6bd24e1e882cebbe1904ce04, type: 3} + m_Name: Raleway-Regular SDF + m_EditorClassIdentifier: + hashCode: -121799949 + material: {fileID: 21352953850445826} + materialHashCode: -12712168 + m_Version: 1.1.0 + m_SourceFontFileGUID: 205e5aca8ee9a453295be76ac7f047b3 + m_SourceFontFile_EditorRef: {fileID: 0} + m_SourceFontFile: {fileID: 0} + m_AtlasPopulationMode: 0 + m_FaceInfo: + m_FamilyName: Raleway + m_StyleName: + m_PointSize: 43 + m_Scale: 1 + m_LineHeight: 50.5 + m_AscentLine: 40.4375 + m_CapLine: 30.562498 + m_MeanLine: 0 + m_Baseline: 0 + m_DescentLine: -10.0625 + m_SuperscriptOffset: 40.4375 + m_SuperscriptSize: 0.5 + m_SubscriptOffset: -4.3 + m_SubscriptSize: 0.5 + m_UnderlineOffset: -4.3 + m_UnderlineThickness: 2.15 + m_StrikethroughOffset: 11.045455 + m_StrikethroughThickness: 2.15 + m_TabWidth: 109.375 + m_GlyphTable: + - m_Index: 1 + m_Metrics: + m_Width: 10.9375 + m_Height: 50.5 + m_HorizontalBearingX: 0 + m_HorizontalBearingY: 40.4375 + m_HorizontalAdvance: 10.9375 + m_GlyphRect: + m_X: 6 + m_Y: -56 + m_Width: 11 + m_Height: 51 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 2 + m_Metrics: + m_Width: 2.9374998 + m_Height: 30.812498 + m_HorizontalBearingX: 3.9374998 + m_HorizontalBearingY: 30.874998 + m_HorizontalAdvance: 10.8125 + m_GlyphRect: + m_X: 412 + m_Y: 41 + m_Width: 3 + m_Height: 31 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 3 + m_Metrics: + m_Width: 6.6249995 + m_Height: 8.374999 + m_HorizontalBearingX: 2.9374998 + m_HorizontalBearingY: 30.812498 + m_HorizontalAdvance: 12.5625 + m_GlyphRect: + m_X: 402 + m_Y: 488 + m_Width: 7 + m_Height: 8 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 4 + m_Metrics: + m_Width: 26.062498 + m_Height: 30.499998 + m_HorizontalBearingX: 1.5624999 + m_HorizontalBearingY: 30.562498 + m_HorizontalAdvance: 29.25 + m_GlyphRect: + m_X: 219 + m_Y: 51 + m_Width: 26 + m_Height: 30 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 5 + m_Metrics: + m_Width: 23.249998 + m_Height: 39.499996 + m_HorizontalBearingX: 1.6249999 + m_HorizontalBearingY: 35.062496 + m_HorizontalAdvance: 26.625 + m_GlyphRect: + m_X: 122 + m_Y: 92 + m_Width: 23 + m_Height: 39 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 6 + m_Metrics: + m_Width: 27.249998 + m_Height: 31.374998 + m_HorizontalBearingX: 1.6874999 + m_HorizontalBearingY: 30.999998 + m_HorizontalAdvance: 30.6875 + m_GlyphRect: + m_X: 257 + m_Y: 50 + m_Width: 27 + m_Height: 31 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 7 + m_Metrics: + m_Width: 26.437498 + m_Height: 31.374998 + m_HorizontalBearingX: 1.9999999 + m_HorizontalBearingY: 30.937498 + m_HorizontalAdvance: 28.6875 + m_GlyphRect: + m_X: 296 + m_Y: 50 + m_Width: 26 + m_Height: 31 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 8 + m_Metrics: + m_Width: 2.5624998 + m_Height: 8.437499 + m_HorizontalBearingX: 2.9374998 + m_HorizontalBearingY: 30.812498 + m_HorizontalAdvance: 8.5 + m_GlyphRect: + m_X: 462 + m_Y: 449 + m_Width: 3 + m_Height: 8 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 9 + m_Metrics: + m_Width: 8.249999 + m_Height: 33.312496 + m_HorizontalBearingX: 1.8749999 + m_HorizontalBearingY: 31.812498 + m_HorizontalAdvance: 11.5625 + m_GlyphRect: + m_X: 74 + m_Y: 446 + m_Width: 8 + m_Height: 33 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 10 + m_Metrics: + m_Width: 8.249999 + m_Height: 33.312496 + m_HorizontalBearingX: 1.3749999 + m_HorizontalBearingY: 31.812498 + m_HorizontalAdvance: 11.5 + m_GlyphRect: + m_X: 94 + m_Y: 446 + m_Width: 8 + m_Height: 33 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 11 + m_Metrics: + m_Width: 8.437499 + m_Height: 8.124999 + m_HorizontalBearingX: 2.6249998 + m_HorizontalBearingY: 30.687498 + m_HorizontalAdvance: 13.8125 + m_GlyphRect: + m_X: 442 + m_Y: 433 + m_Width: 8 + m_Height: 8 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 12 + m_Metrics: + m_Width: 13.374999 + m_Height: 13.999999 + m_HorizontalBearingX: 2.1874998 + m_HorizontalBearingY: 22.312498 + m_HorizontalAdvance: 17.875 + m_GlyphRect: + m_X: 135 + m_Y: 492 + m_Width: 13 + m_Height: 14 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 13 + m_Metrics: + m_Width: 2.8124998 + m_Height: 7.6874995 + m_HorizontalBearingX: 3.4374998 + m_HorizontalBearingY: 4.2499995 + m_HorizontalAdvance: 9.6875 + m_GlyphRect: + m_X: 414 + m_Y: 468 + m_Width: 3 + m_Height: 8 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 14 + m_Metrics: + m_Width: 12.562499 + m_Height: 2.6874998 + m_HorizontalBearingX: 2.7499998 + m_HorizontalBearingY: 13.124999 + m_HorizontalAdvance: 18.125 + m_GlyphRect: + m_X: 418 + m_Y: 432 + m_Width: 13 + m_Height: 3 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 15 + m_Metrics: + m_Width: 2.4999998 + m_Height: 4.1874995 + m_HorizontalBearingX: 2.7499998 + m_HorizontalBearingY: 4.2499995 + m_HorizontalAdvance: 8.125 + m_GlyphRect: + m_X: 447 + m_Y: 469 + m_Width: 2 + m_Height: 4 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 16 + m_Metrics: + m_Width: 23.562498 + m_Height: 30.499998 + m_HorizontalBearingX: 1.1249999 + m_HorizontalBearingY: 30.562498 + m_HorizontalAdvance: 26 + m_GlyphRect: + m_X: 303 + m_Y: 135 + m_Width: 24 + m_Height: 30 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 17 + m_Metrics: + m_Width: 21.562498 + m_Height: 26.124998 + m_HorizontalBearingX: 2.3124998 + m_HorizontalBearingY: 25.687498 + m_HorizontalAdvance: 26.3125 + m_GlyphRect: + m_X: 340 + m_Y: 220 + m_Width: 22 + m_Height: 26 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 18 + m_Metrics: + m_Width: 15.437499 + m_Height: 24.562498 + m_HorizontalBearingX: 1.9374999 + m_HorizontalBearingY: 24.562498 + m_HorizontalAdvance: 18.375 + m_GlyphRect: + m_X: 304 + m_Y: 426 + m_Width: 15 + m_Height: 25 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 19 + m_Metrics: + m_Width: 18.437498 + m_Height: 24.999998 + m_HorizontalBearingX: 1.8749999 + m_HorizontalBearingY: 24.999998 + m_HorizontalAdvance: 22.375 + m_GlyphRect: + m_X: 389 + m_Y: 296 + m_Width: 18 + m_Height: 25 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 20 + m_Metrics: + m_Width: 19.374998 + m_Height: 31.062498 + m_HorizontalBearingX: 1.6249999 + m_HorizontalBearingY: 24.812498 + m_HorizontalAdvance: 22.9375 + m_GlyphRect: + m_X: 85 + m_Y: 389 + m_Width: 19 + m_Height: 31 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 21 + m_Metrics: + m_Width: 20.999998 + m_Height: 29.999998 + m_HorizontalBearingX: 0.93749994 + m_HorizontalBearingY: 24.562498 + m_HorizontalAdvance: 23.5 + m_GlyphRect: + m_X: 187 + m_Y: 50 + m_Width: 21 + m_Height: 30 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 22 + m_Metrics: + m_Width: 20.374998 + m_Height: 30.999998 + m_HorizontalBearingX: 1.4999999 + m_HorizontalBearingY: 24.562498 + m_HorizontalAdvance: 23.4375 + m_GlyphRect: + m_X: 411 + m_Y: 83 + m_Width: 20 + m_Height: 31 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 23 + m_Metrics: + m_Width: 21.812498 + m_Height: 31.187498 + m_HorizontalBearingX: 2.1874998 + m_HorizontalBearingY: 30.749998 + m_HorizontalAdvance: 25.9375 + m_GlyphRect: + m_X: 410 + m_Y: 126 + m_Width: 22 + m_Height: 31 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 24 + m_Metrics: + m_Width: 21.124998 + m_Height: 30.499998 + m_HorizontalBearingX: 1.4374999 + m_HorizontalBearingY: 25.124998 + m_HorizontalAdvance: 23 + m_GlyphRect: + m_X: 479 + m_Y: 83 + m_Width: 21 + m_Height: 30 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 25 + m_Metrics: + m_Width: 21.249998 + m_Height: 30.812498 + m_HorizontalBearingX: 2.1249998 + m_HorizontalBearingY: 30.562498 + m_HorizontalAdvance: 25.5 + m_GlyphRect: + m_X: 440 + m_Y: 168 + m_Width: 21 + m_Height: 31 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 26 + m_Metrics: + m_Width: 21.812498 + m_Height: 31.187498 + m_HorizontalBearingX: 1.4999999 + m_HorizontalBearingY: 24.562498 + m_HorizontalAdvance: 25.1875 + m_GlyphRect: + m_X: 475 + m_Y: 211 + m_Width: 22 + m_Height: 31 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 27 + m_Metrics: + m_Width: 2.4999998 + m_Height: 22.249998 + m_HorizontalBearingX: 2.7499998 + m_HorizontalBearingY: 22.312498 + m_HorizontalAdvance: 8.0625 + m_GlyphRect: + m_X: 462 + m_Y: 415 + m_Width: 2 + m_Height: 22 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 28 + m_Metrics: + m_Width: 2.8749998 + m_Height: 25.749998 + m_HorizontalBearingX: 2.9999998 + m_HorizontalBearingY: 22.312498 + m_HorizontalAdvance: 8.8125 + m_GlyphRect: + m_X: 290 + m_Y: 433 + m_Width: 3 + m_Height: 26 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 29 + m_Metrics: + m_Width: 17.999998 + m_Height: 23.187498 + m_HorizontalBearingX: 1.3749999 + m_HorizontalBearingY: 22.749998 + m_HorizontalAdvance: 21.875 + m_GlyphRect: + m_X: 360 + m_Y: 300 + m_Width: 18 + m_Height: 23 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 30 + m_Metrics: + m_Width: 12.999999 + m_Height: 7.0624995 + m_HorizontalBearingX: 2.8749998 + m_HorizontalBearingY: 15.437499 + m_HorizontalAdvance: 18.8125 + m_GlyphRect: + m_X: 394 + m_Y: 431 + m_Width: 13 + m_Height: 7 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 31 + m_Metrics: + m_Width: 17.999998 + m_Height: 23.187498 + m_HorizontalBearingX: 2.3124998 + m_HorizontalBearingY: 22.749998 + m_HorizontalAdvance: 21.875 + m_GlyphRect: + m_X: 481 + m_Y: 339 + m_Width: 18 + m_Height: 23 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 32 + m_Metrics: + m_Width: 17.374998 + m_Height: 30.937498 + m_HorizontalBearingX: 1.4374999 + m_HorizontalBearingY: 30.937498 + m_HorizontalAdvance: 20.4375 + m_GlyphRect: + m_X: 198 + m_Y: 450 + m_Width: 17 + m_Height: 31 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 33 + m_Metrics: + m_Width: 31.562498 + m_Height: 32.187496 + m_HorizontalBearingX: 1.9999999 + m_HorizontalBearingY: 25.937498 + m_HorizontalAdvance: 36 + m_GlyphRect: + m_X: 201 + m_Y: 7 + m_Width: 32 + m_Height: 32 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 34 + m_Metrics: + m_Width: 27.999998 + m_Height: 30.499998 + m_HorizontalBearingX: 0.49999997 + m_HorizontalBearingY: 30.562498 + m_HorizontalAdvance: 29.0625 + m_GlyphRect: + m_X: 295 + m_Y: 93 + m_Width: 28 + m_Height: 30 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 35 + m_Metrics: + m_Width: 22.999998 + m_Height: 30.499998 + m_HorizontalBearingX: 3.8124998 + m_HorizontalBearingY: 30.562498 + m_HorizontalAdvance: 28.625 + m_GlyphRect: + m_X: 478 + m_Y: 125 + m_Width: 23 + m_Height: 30 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 36 + m_Metrics: + m_Width: 26.374998 + m_Height: 30.937498 + m_HorizontalBearingX: 1.7499999 + m_HorizontalBearingY: 30.749998 + m_HorizontalAdvance: 29.5 + m_GlyphRect: + m_X: 334 + m_Y: 48 + m_Width: 26 + m_Height: 31 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 37 + m_Metrics: + m_Width: 24.999998 + m_Height: 30.499998 + m_HorizontalBearingX: 3.8124998 + m_HorizontalBearingY: 30.562498 + m_HorizontalAdvance: 30.75 + m_GlyphRect: + m_X: 116 + m_Y: 391 + m_Width: 25 + m_Height: 30 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 38 + m_Metrics: + m_Width: 20.499998 + m_Height: 30.499998 + m_HorizontalBearingX: 3.8124998 + m_HorizontalBearingY: 30.562498 + m_HorizontalAdvance: 26.1875 + m_GlyphRect: + m_X: 209 + m_Y: 238 + m_Width: 20 + m_Height: 30 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 39 + m_Metrics: + m_Width: 20.062498 + m_Height: 30.499998 + m_HorizontalBearingX: 3.8124998 + m_HorizontalBearingY: 30.562498 + m_HorizontalAdvance: 25.3125 + m_GlyphRect: + m_X: 241 + m_Y: 263 + m_Width: 20 + m_Height: 30 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 40 + m_Metrics: + m_Width: 26.624998 + m_Height: 30.937498 + m_HorizontalBearingX: 1.7499999 + m_HorizontalBearingY: 30.749998 + m_HorizontalAdvance: 30.8125 + m_GlyphRect: + m_X: 334 + m_Y: 90 + m_Width: 27 + m_Height: 31 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 41 + m_Metrics: + m_Width: 24.124998 + m_Height: 30.499998 + m_HorizontalBearingX: 3.8124998 + m_HorizontalBearingY: 30.562498 + m_HorizontalAdvance: 31.75 + m_GlyphRect: + m_X: 426 + m_Y: 41 + m_Width: 24 + m_Height: 30 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 42 + m_Metrics: + m_Width: 2.9999998 + m_Height: 30.499998 + m_HorizontalBearingX: 3.8124998 + m_HorizontalBearingY: 30.562498 + m_HorizontalAdvance: 10.6875 + m_GlyphRect: + m_X: 498 + m_Y: 41 + m_Width: 3 + m_Height: 30 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 43 + m_Metrics: + m_Width: 16.624998 + m_Height: 30.999998 + m_HorizontalBearingX: 0.56249994 + m_HorizontalBearingY: 30.562498 + m_HorizontalAdvance: 20.6875 + m_GlyphRect: + m_X: 481 + m_Y: 296 + m_Width: 17 + m_Height: 31 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 44 + m_Metrics: + m_Width: 23.812498 + m_Height: 30.499998 + m_HorizontalBearingX: 3.8124998 + m_HorizontalBearingY: 30.562498 + m_HorizontalAdvance: 27.625 + m_GlyphRect: + m_X: 443 + m_Y: 125 + m_Width: 24 + m_Height: 30 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 45 + m_Metrics: + m_Width: 20.624998 + m_Height: 30.499998 + m_HorizontalBearingX: 3.8124998 + m_HorizontalBearingY: 30.562498 + m_HorizontalAdvance: 25.0625 + m_GlyphRect: + m_X: 166 + m_Y: 451 + m_Width: 21 + m_Height: 30 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 46 + m_Metrics: + m_Width: 30.062498 + m_Height: 30.499998 + m_HorizontalBearingX: 3.8124998 + m_HorizontalBearingY: 30.562498 + m_HorizontalAdvance: 37.6875 + m_GlyphRect: + m_X: 330 + m_Y: 7 + m_Width: 30 + m_Height: 30 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 47 + m_Metrics: + m_Width: 25.562498 + m_Height: 30.499998 + m_HorizontalBearingX: 3.8124998 + m_HorizontalBearingY: 30.562498 + m_HorizontalAdvance: 33.1875 + m_GlyphRect: + m_X: 171 + m_Y: 245 + m_Width: 26 + m_Height: 30 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 48 + m_Metrics: + m_Width: 28.624998 + m_Height: 30.937498 + m_HorizontalBearingX: 1.7499999 + m_HorizontalBearingY: 30.749998 + m_HorizontalAdvance: 32.3125 + m_GlyphRect: + m_X: 147 + m_Y: 49 + m_Width: 29 + m_Height: 31 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 49 + m_Metrics: + m_Width: 21.749998 + m_Height: 30.499998 + m_HorizontalBearingX: 3.8124998 + m_HorizontalBearingY: 30.562498 + m_HorizontalAdvance: 26.75 + m_GlyphRect: + m_X: 340 + m_Y: 258 + m_Width: 22 + m_Height: 30 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 50 + m_Metrics: + m_Width: 28.624998 + m_Height: 30.937498 + m_HorizontalBearingX: 1.7499999 + m_HorizontalBearingY: 30.749998 + m_HorizontalAdvance: 32.1875 + m_GlyphRect: + m_X: 215 + m_Y: 92 + m_Width: 29 + m_Height: 31 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 51 + m_Metrics: + m_Width: 22.624998 + m_Height: 30.499998 + m_HorizontalBearingX: 3.8124998 + m_HorizontalBearingY: 30.562498 + m_HorizontalAdvance: 28.0625 + m_GlyphRect: + m_X: 338 + m_Y: 178 + m_Width: 23 + m_Height: 30 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 52 + m_Metrics: + m_Width: 23.249998 + m_Height: 30.999998 + m_HorizontalBearingX: 1.3749999 + m_HorizontalBearingY: 30.749998 + m_HorizontalAdvance: 26.125 + m_GlyphRect: + m_X: 272 + m_Y: 176 + m_Width: 23 + m_Height: 31 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 53 + m_Metrics: + m_Width: 24.749998 + m_Height: 30.499998 + m_HorizontalBearingX: 0.68749994 + m_HorizontalBearingY: 30.562498 + m_HorizontalAdvance: 26.25 + m_GlyphRect: + m_X: 462 + m_Y: 41 + m_Width: 25 + m_Height: 30 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 54 + m_Metrics: + m_Width: 25.749998 + m_Height: 30.687498 + m_HorizontalBearingX: 3.3749998 + m_HorizontalBearingY: 30.562498 + m_HorizontalAdvance: 32.4375 + m_GlyphRect: + m_X: 79 + m_Y: 346 + m_Width: 26 + m_Height: 31 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 55 + m_Metrics: + m_Width: 28.062498 + m_Height: 30.499998 + m_HorizontalBearingX: 0.49999997 + m_HorizontalBearingY: 30.562498 + m_HorizontalAdvance: 29.1875 + m_GlyphRect: + m_X: 255 + m_Y: 93 + m_Width: 28 + m_Height: 30 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 56 + m_Metrics: + m_Width: 43.999996 + m_Height: 30.499998 + m_HorizontalBearingX: 0.49999997 + m_HorizontalBearingY: 30.562498 + m_HorizontalAdvance: 45 + m_GlyphRect: + m_X: 6 + m_Y: 7 + m_Width: 44 + m_Height: 30 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 57 + m_Metrics: + m_Width: 26.749998 + m_Height: 30.499998 + m_HorizontalBearingX: 0.18749999 + m_HorizontalBearingY: 30.562498 + m_HorizontalAdvance: 27.1875 + m_GlyphRect: + m_X: 227 + m_Y: 135 + m_Width: 27 + m_Height: 30 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 58 + m_Metrics: + m_Width: 26.624998 + m_Height: 30.499998 + m_HorizontalBearingX: 0.68749994 + m_HorizontalBearingY: 30.562498 + m_HorizontalAdvance: 28 + m_GlyphRect: + m_X: 265 + m_Y: 135 + m_Width: 27 + m_Height: 30 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 59 + m_Metrics: + m_Width: 24.249998 + m_Height: 30.499998 + m_HorizontalBearingX: 1.3124999 + m_HorizontalBearingY: 30.562498 + m_HorizontalAdvance: 27.0625 + m_GlyphRect: + m_X: 443 + m_Y: 83 + m_Width: 24 + m_Height: 30 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 60 + m_Metrics: + m_Width: 5.0624995 + m_Height: 33.562496 + m_HorizontalBearingX: 3.7499998 + m_HorizontalBearingY: 31.874998 + m_HorizontalAdvance: 11.125 + m_GlyphRect: + m_X: 132 + m_Y: 445 + m_Width: 5 + m_Height: 34 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 61 + m_Metrics: + m_Width: 22.062498 + m_Height: 30.499998 + m_HorizontalBearingX: 1.1874999 + m_HorizontalBearingY: 30.562498 + m_HorizontalAdvance: 24.4375 + m_GlyphRect: + m_X: 406 + m_Y: 169 + m_Width: 22 + m_Height: 30 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 62 + m_Metrics: + m_Width: 5.1874995 + m_Height: 33.562496 + m_HorizontalBearingX: 2.1249998 + m_HorizontalBearingY: 31.874998 + m_HorizontalAdvance: 11.125 + m_GlyphRect: + m_X: 153 + m_Y: 297 + m_Width: 5 + m_Height: 34 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 63 + m_Metrics: + m_Width: 19.437498 + m_Height: 17.499998 + m_HorizontalBearingX: 1.8124999 + m_HorizontalBearingY: 30.562498 + m_HorizontalAdvance: 23.1875 + m_GlyphRect: + m_X: 241 + m_Y: 234 + m_Width: 19 + m_Height: 17 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 64 + m_Metrics: + m_Width: 16.374998 + m_Height: 2.6874998 + m_HorizontalBearingX: 2.7499998 + m_HorizontalBearingY: 0 + m_HorizontalAdvance: 22 + m_GlyphRect: + m_X: 396 + m_Y: 416 + m_Width: 16 + m_Height: 3 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 65 + m_Metrics: + m_Width: 5.6249995 + m_Height: 4.6874995 + m_HorizontalBearingX: 2.0624998 + m_HorizontalBearingY: 31.437498 + m_HorizontalAdvance: 9.5625 + m_GlyphRect: + m_X: 149 + m_Y: 476 + m_Width: 6 + m_Height: 5 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 66 + m_Metrics: + m_Width: 19.999998 + m_Height: 23.249998 + m_HorizontalBearingX: 1.3749999 + m_HorizontalBearingY: 22.812498 + m_HorizontalAdvance: 23.4375 + m_GlyphRect: + m_X: 418 + m_Y: 339 + m_Width: 20 + m_Height: 23 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 67 + m_Metrics: + m_Width: 21.562498 + m_Height: 31.812498 + m_HorizontalBearingX: 3.1874998 + m_HorizontalBearingY: 31.437498 + m_HorizontalAdvance: 26.5625 + m_GlyphRect: + m_X: 273 + m_Y: 253 + m_Width: 22 + m_Height: 32 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 68 + m_Metrics: + m_Width: 20.562498 + m_Height: 23.249998 + m_HorizontalBearingX: 1.6249999 + m_HorizontalBearingY: 22.812498 + m_HorizontalAdvance: 23.625 + m_GlyphRect: + m_X: 328 + m_Y: 300 + m_Width: 21 + m_Height: 23 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 69 + m_Metrics: + m_Width: 22.624998 + m_Height: 31.812498 + m_HorizontalBearingX: 1.6874999 + m_HorizontalBearingY: 31.437498 + m_HorizontalAdvance: 26.75 + m_GlyphRect: + m_X: 372 + m_Y: 167 + m_Width: 23 + m_Height: 32 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 70 + m_Metrics: + m_Width: 22.249998 + m_Height: 23.249998 + m_HorizontalBearingX: 1.6249999 + m_HorizontalBearingY: 22.812498 + m_HorizontalAdvance: 25.25 + m_GlyphRect: + m_X: 272 + m_Y: 219 + m_Width: 22 + m_Height: 23 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 71 + m_Metrics: + m_Width: 14.437499 + m_Height: 31.812498 + m_HorizontalBearingX: 1.1874999 + m_HorizontalBearingY: 31.874998 + m_HorizontalAdvance: 14.1875 + m_GlyphRect: + m_X: 239 + m_Y: 313 + m_Width: 14 + m_Height: 32 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 72 + m_Metrics: + m_Width: 21.624998 + m_Height: 32.374996 + m_HorizontalBearingX: 1.6874999 + m_HorizontalBearingY: 22.812498 + m_HorizontalAdvance: 26.5625 + m_GlyphRect: + m_X: 473 + m_Y: 167 + m_Width: 22 + m_Height: 32 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 73 + m_Metrics: + m_Width: 18.812498 + m_Height: 31.374998 + m_HorizontalBearingX: 3.1874998 + m_HorizontalBearingY: 31.437498 + m_HorizontalAdvance: 25.0625 + m_GlyphRect: + m_X: 239 + m_Y: 357 + m_Width: 19 + m_Height: 31 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 74 + m_Metrics: + m_Width: 2.8749998 + m_Height: 31.374998 + m_HorizontalBearingX: 3.1874998 + m_HorizontalBearingY: 31.437498 + m_HorizontalAdvance: 9.375 + m_GlyphRect: + m_X: 152 + m_Y: 391 + m_Width: 3 + m_Height: 31 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 75 + m_Metrics: + m_Width: 11.437499 + m_Height: 39.187496 + m_HorizontalBearingX: -5.0624995 + m_HorizontalBearingY: 31.437498 + m_HorizontalAdvance: 9.6875 + m_GlyphRect: + m_X: 187 + m_Y: 143 + m_Width: 11 + m_Height: 39 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 76 + m_Metrics: + m_Width: 19.124998 + m_Height: 31.374998 + m_HorizontalBearingX: 3.1874998 + m_HorizontalBearingY: 31.437498 + m_HorizontalAdvance: 22.8125 + m_GlyphRect: + m_X: 307 + m_Y: 177 + m_Width: 19 + m_Height: 31 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 77 + m_Metrics: + m_Width: 8.374999 + m_Height: 31.624998 + m_HorizontalBearingX: 3.3124998 + m_HorizontalBearingY: 31.437498 + m_HorizontalAdvance: 11.6875 + m_GlyphRect: + m_X: 199 + m_Y: 407 + m_Width: 8 + m_Height: 32 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 78 + m_Metrics: + m_Width: 33.312496 + m_Height: 22.812498 + m_HorizontalBearingX: 3.1874998 + m_HorizontalBearingY: 22.812498 + m_HorizontalAdvance: 39.5 + m_GlyphRect: + m_X: 421 + m_Y: 6 + m_Width: 33 + m_Height: 23 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 79 + m_Metrics: + m_Width: 18.812498 + m_Height: 22.812498 + m_HorizontalBearingX: 3.1874998 + m_HorizontalBearingY: 22.812498 + m_HorizontalAdvance: 25.0625 + m_GlyphRect: + m_X: 364 + m_Y: 419 + m_Width: 19 + m_Height: 23 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 80 + m_Metrics: + m_Width: 22.249998 + m_Height: 23.249998 + m_HorizontalBearingX: 1.6249999 + m_HorizontalBearingY: 22.812498 + m_HorizontalAdvance: 25.5625 + m_GlyphRect: + m_X: 306 + m_Y: 220 + m_Width: 22 + m_Height: 23 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 81 + m_Metrics: + m_Width: 21.562498 + m_Height: 31.999998 + m_HorizontalBearingX: 3.1874998 + m_HorizontalBearingY: 22.812498 + m_HorizontalAdvance: 26.5625 + m_GlyphRect: + m_X: 475 + m_Y: 253 + m_Width: 22 + m_Height: 32 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 82 + m_Metrics: + m_Width: 22.624998 + m_Height: 31.937498 + m_HorizontalBearingX: 1.6874999 + m_HorizontalBearingY: 22.812498 + m_HorizontalAdvance: 26.5625 + m_GlyphRect: + m_X: 373 + m_Y: 210 + m_Width: 23 + m_Height: 32 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 83 + m_Metrics: + m_Width: 11.124999 + m_Height: 22.562498 + m_HorizontalBearingX: 3.1874998 + m_HorizontalBearingY: 22.562498 + m_HorizontalAdvance: 15.0625 + m_GlyphRect: + m_X: 391 + m_Y: 453 + m_Width: 11 + m_Height: 23 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 84 + m_Metrics: + m_Width: 18.124998 + m_Height: 23.249998 + m_HorizontalBearingX: 1.1874999 + m_HorizontalBearingY: 22.812498 + m_HorizontalAdvance: 20.9375 + m_GlyphRect: + m_X: 331 + m_Y: 449 + m_Width: 18 + m_Height: 23 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 85 + m_Metrics: + m_Width: 12.937499 + m_Height: 30.249998 + m_HorizontalBearingX: 1.0624999 + m_HorizontalBearingY: 29.999998 + m_HorizontalAdvance: 14.375 + m_GlyphRect: + m_X: 394 + m_Y: 333 + m_Width: 13 + m_Height: 30 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 86 + m_Metrics: + m_Width: 20.187498 + m_Height: 22.812498 + m_HorizontalBearingX: 2.9999998 + m_HorizontalBearingY: 22.437498 + m_HorizontalAdvance: 25.5625 + m_GlyphRect: + m_X: 449 + m_Y: 338 + m_Width: 20 + m_Height: 23 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 87 + m_Metrics: + m_Width: 21.312498 + m_Height: 22.374998 + m_HorizontalBearingX: 0.81249994 + m_HorizontalBearingY: 22.437498 + m_HorizontalAdvance: 22.9375 + m_GlyphRect: + m_X: 208 + m_Y: 280 + m_Width: 21 + m_Height: 22 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 88 + m_Metrics: + m_Width: 33.687496 + m_Height: 22.374998 + m_HorizontalBearingX: 0.62499994 + m_HorizontalBearingY: 22.437498 + m_HorizontalAdvance: 34.9375 + m_GlyphRect: + m_X: 466 + m_Y: 7 + m_Width: 34 + m_Height: 22 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 89 + m_Metrics: + m_Width: 20.374998 + m_Height: 22.374998 + m_HorizontalBearingX: 0.62499994 + m_HorizontalBearingY: 22.437498 + m_HorizontalAdvance: 21.6875 + m_GlyphRect: + m_X: 476 + m_Y: 374 + m_Width: 20 + m_Height: 22 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 90 + m_Metrics: + m_Width: 21.812498 + m_Height: 31.937498 + m_HorizontalBearingX: 0.62499994 + m_HorizontalBearingY: 22.437498 + m_HorizontalAdvance: 23.3125 + m_GlyphRect: + m_X: 166 + m_Y: 407 + m_Width: 22 + m_Height: 32 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 91 + m_Metrics: + m_Width: 18.312498 + m_Height: 22.374998 + m_HorizontalBearingX: 1.3124999 + m_HorizontalBearingY: 22.437498 + m_HorizontalAdvance: 21.1875 + m_GlyphRect: + m_X: 361 + m_Y: 454 + m_Width: 18 + m_Height: 22 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 92 + m_Metrics: + m_Width: 6.7499995 + m_Height: 33.124996 + m_HorizontalBearingX: 2.2499998 + m_HorizontalBearingY: 31.874998 + m_HorizontalAdvance: 11.125 + m_GlyphRect: + m_X: 114 + m_Y: 446 + m_Width: 7 + m_Height: 33 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 93 + m_Metrics: + m_Width: 2.5624998 + m_Height: 38.874996 + m_HorizontalBearingX: 3.6874998 + m_HorizontalBearingY: 33.374996 + m_HorizontalAdvance: 9.9375 + m_GlyphRect: + m_X: 65 + m_Y: 345 + m_Width: 3 + m_Height: 39 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 94 + m_Metrics: + m_Width: 6.6874995 + m_Height: 33.124996 + m_HorizontalBearingX: 2.1249998 + m_HorizontalBearingY: 31.874998 + m_HorizontalAdvance: 11.125 + m_GlyphRect: + m_X: 153 + m_Y: 343 + m_Width: 7 + m_Height: 33 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 95 + m_Metrics: + m_Width: 16.374998 + m_Height: 4.4374995 + m_HorizontalBearingX: 2.8124998 + m_HorizontalBearingY: 14.812499 + m_HorizontalAdvance: 22 + m_GlyphRect: + m_X: 6 + m_Y: 500 + m_Width: 16 + m_Height: 4 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 96 + m_Metrics: + m_Width: 0 + m_Height: 0 + m_HorizontalBearingX: 0 + m_HorizontalBearingY: 0 + m_HorizontalAdvance: 10.9375 + m_GlyphRect: + m_X: 6 + m_Y: -5 + m_Width: 0 + m_Height: 0 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 97 + m_Metrics: + m_Width: 2.8749998 + m_Height: 30.812498 + m_HorizontalBearingX: 3.8749998 + m_HorizontalBearingY: 30.749998 + m_HorizontalAdvance: 10.8125 + m_GlyphRect: + m_X: 462 + m_Y: 372 + m_Width: 3 + m_Height: 31 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 98 + m_Metrics: + m_Width: 20.562498 + m_Height: 32.937496 + m_HorizontalBearingX: 1.8124999 + m_HorizontalBearingY: 27.749998 + m_HorizontalAdvance: 24.125 + m_GlyphRect: + m_X: 209 + m_Y: 193 + m_Width: 21 + m_Height: 33 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 99 + m_Metrics: + m_Width: 17.374998 + m_Height: 31.374998 + m_HorizontalBearingX: 2.1874998 + m_HorizontalBearingY: 30.749998 + m_HorizontalAdvance: 21.4375 + m_GlyphRect: + m_X: 251 + m_Y: 400 + m_Width: 17 + m_Height: 31 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 100 + m_Metrics: + m_Width: 18.624998 + m_Height: 18.312498 + m_HorizontalBearingX: 2.2499998 + m_HorizontalBearingY: 23.749998 + m_HorizontalAdvance: 23.0625 + m_GlyphRect: + m_X: 252 + m_Y: 486 + m_Width: 19 + m_Height: 18 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 101 + m_Metrics: + m_Width: 26.624998 + m_Height: 30.499998 + m_HorizontalBearingX: 1.1874999 + m_HorizontalBearingY: 30.562498 + m_HorizontalAdvance: 29.0625 + m_GlyphRect: + m_X: 372 + m_Y: 126 + m_Width: 27 + m_Height: 30 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 102 + m_Metrics: + m_Width: 2.5624998 + m_Height: 38.874996 + m_HorizontalBearingX: 3.6874998 + m_HorizontalBearingY: 33.374996 + m_HorizontalAdvance: 10.0625 + m_GlyphRect: + m_X: 71 + m_Y: 395 + m_Width: 3 + m_Height: 39 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 103 + m_Metrics: + m_Width: 17.937498 + m_Height: 34.562496 + m_HorizontalBearingX: 1.9999999 + m_HorizontalBearingY: 30.749998 + m_HorizontalAdvance: 21.75 + m_GlyphRect: + m_X: 45 + m_Y: 447 + m_Width: 18 + m_Height: 35 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 104 + m_Metrics: + m_Width: 8.874999 + m_Height: 3.9999998 + m_HorizontalBearingX: 2.5624998 + m_HorizontalBearingY: 31.312498 + m_HorizontalAdvance: 14.125 + m_GlyphRect: + m_X: 290 + m_Y: 470 + m_Width: 9 + m_Height: 4 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 105 + m_Metrics: + m_Width: 31.624998 + m_Height: 31.062498 + m_HorizontalBearingX: 2.0624998 + m_HorizontalBearingY: 30.749998 + m_HorizontalAdvance: 35.75 + m_GlyphRect: + m_X: 244 + m_Y: 7 + m_Width: 32 + m_Height: 31 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 106 + m_Metrics: + m_Width: 14.124999 + m_Height: 15.624999 + m_HorizontalBearingX: 2.0624998 + m_HorizontalBearingY: 30.562498 + m_HorizontalAdvance: 18.6875 + m_GlyphRect: + m_X: 109 + m_Y: 490 + m_Width: 14 + m_Height: 16 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 107 + m_Metrics: + m_Width: 20.187498 + m_Height: 16.687498 + m_HorizontalBearingX: 1.7499999 + m_HorizontalBearingY: 19.562498 + m_HorizontalAdvance: 24.625 + m_GlyphRect: + m_X: 476 + m_Y: 407 + m_Width: 20 + m_Height: 17 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 108 + m_Metrics: + m_Width: 18.874998 + m_Height: 10.187499 + m_HorizontalBearingX: 3.1249998 + m_HorizontalBearingY: 15.687499 + m_HorizontalAdvance: 25 + m_GlyphRect: + m_X: 160 + m_Y: 493 + m_Width: 19 + m_Height: 10 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 109 + m_Metrics: + m_Width: 18.874998 + m_Height: 2.6874998 + m_HorizontalBearingX: 2.7499998 + m_HorizontalBearingY: 13.124999 + m_HorizontalAdvance: 24.5 + m_GlyphRect: + m_X: 85 + m_Y: 431 + m_Width: 19 + m_Height: 3 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 110 + m_Metrics: + m_Width: 31.624998 + m_Height: 31.062498 + m_HorizontalBearingX: 2.0624998 + m_HorizontalBearingY: 30.749998 + m_HorizontalAdvance: 35.75 + m_GlyphRect: + m_X: 287 + m_Y: 7 + m_Width: 32 + m_Height: 31 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 111 + m_Metrics: + m_Width: 12.437499 + m_Height: 1.9999999 + m_HorizontalBearingX: 2.3124998 + m_HorizontalBearingY: 30.562498 + m_HorizontalAdvance: 17 + m_GlyphRect: + m_X: 115 + m_Y: 432 + m_Width: 12 + m_Height: 2 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 112 + m_Metrics: + m_Width: 7.1874995 + m_Height: 7.1249995 + m_HorizontalBearingX: 2.1249998 + m_HorizontalBearingY: 31.187498 + m_HorizontalAdvance: 11.4375 + m_GlyphRect: + m_X: 414 + m_Y: 450 + m_Width: 7 + m_Height: 7 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 113 + m_Metrics: + m_Width: 13.874999 + m_Height: 20.312498 + m_HorizontalBearingX: 3.0624998 + m_HorizontalBearingY: 22.937498 + m_HorizontalAdvance: 20.0625 + m_GlyphRect: + m_X: 227 + m_Y: 486 + m_Width: 14 + m_Height: 20 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 114 + m_Metrics: + m_Width: 13.437499 + m_Height: 17.374998 + m_HorizontalBearingX: 1.4999999 + m_HorizontalBearingY: 34.874996 + m_HorizontalAdvance: 16.6875 + m_GlyphRect: + m_X: 282 + m_Y: 486 + m_Width: 13 + m_Height: 17 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 115 + m_Metrics: + m_Width: 13.562499 + m_Height: 17.624998 + m_HorizontalBearingX: 1.4999999 + m_HorizontalBearingY: 34.874996 + m_HorizontalAdvance: 16.75 + m_GlyphRect: + m_X: 333 + m_Y: 483 + m_Width: 14 + m_Height: 18 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 116 + m_Metrics: + m_Width: 5.6249995 + m_Height: 4.6874995 + m_HorizontalBearingX: 2.0624998 + m_HorizontalBearingY: 31.437498 + m_HorizontalAdvance: 9.5625 + m_GlyphRect: + m_X: 433 + m_Y: 452 + m_Width: 6 + m_Height: 5 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 117 + m_Metrics: + m_Width: 20.249998 + m_Height: 31.499998 + m_HorizontalBearingX: 3.4999998 + m_HorizontalBearingY: 22.437498 + m_HorizontalAdvance: 26.6875 + m_GlyphRect: + m_X: 219 + m_Y: 400 + m_Width: 20 + m_Height: 31 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 118 + m_Metrics: + m_Width: 22.499998 + m_Height: 33.937496 + m_HorizontalBearingX: 1.4374999 + m_HorizontalBearingY: 30.562498 + m_HorizontalAdvance: 25.875 + m_GlyphRect: + m_X: 338 + m_Y: 132 + m_Width: 22 + m_Height: 34 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 119 + m_Metrics: + m_Width: 2.4999998 + m_Height: 4.8124995 + m_HorizontalBearingX: 2.7499998 + m_HorizontalBearingY: 15.437499 + m_HorizontalAdvance: 8.125 + m_GlyphRect: + m_X: 461 + m_Y: 468 + m_Width: 2 + m_Height: 5 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 120 + m_Metrics: + m_Width: 8.624999 + m_Height: 8.312499 + m_HorizontalBearingX: 0.93749994 + m_HorizontalBearingY: 0.81249994 + m_HorizontalAdvance: 12.1875 + m_GlyphRect: + m_X: 420 + m_Y: 488 + m_Width: 9 + m_Height: 8 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 121 + m_Metrics: + m_Width: 9.312499 + m_Height: 17.437498 + m_HorizontalBearingX: 1.4374999 + m_HorizontalBearingY: 34.874996 + m_HorizontalAdvance: 11.6875 + m_GlyphRect: + m_X: 310 + m_Y: 463 + m_Width: 9 + m_Height: 17 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 122 + m_Metrics: + m_Width: 15.562499 + m_Height: 15.624999 + m_HorizontalBearingX: 1.8749999 + m_HorizontalBearingY: 30.562498 + m_HorizontalAdvance: 19.3125 + m_GlyphRect: + m_X: 82 + m_Y: 490 + m_Width: 16 + m_Height: 16 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 123 + m_Metrics: + m_Width: 20.187498 + m_Height: 16.687498 + m_HorizontalBearingX: 2.6874998 + m_HorizontalBearingY: 19.562498 + m_HorizontalAdvance: 24.625 + m_GlyphRect: + m_X: 332 + m_Y: 420 + m_Width: 20 + m_Height: 17 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 124 + m_Metrics: + m_Width: 32.062496 + m_Height: 31.624998 + m_HorizontalBearingX: 1.8749999 + m_HorizontalBearingY: 31.437498 + m_HorizontalAdvance: 35.5 + m_GlyphRect: + m_X: 113 + m_Y: 6 + m_Width: 32 + m_Height: 32 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 125 + m_Metrics: + m_Width: 33.437496 + m_Height: 31.624998 + m_HorizontalBearingX: 1.8749999 + m_HorizontalBearingY: 31.437498 + m_HorizontalAdvance: 37.125 + m_GlyphRect: + m_X: 60 + m_Y: 48 + m_Width: 33 + m_Height: 32 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 126 + m_Metrics: + m_Width: 32.499996 + m_Height: 31.624998 + m_HorizontalBearingX: 1.7499999 + m_HorizontalBearingY: 31.437498 + m_HorizontalAdvance: 36 + m_GlyphRect: + m_X: 157 + m_Y: 6 + m_Width: 32 + m_Height: 32 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 127 + m_Metrics: + m_Width: 17.374998 + m_Height: 30.937498 + m_HorizontalBearingX: 1.4374999 + m_HorizontalBearingY: 21.812498 + m_HorizontalAdvance: 20.1875 + m_GlyphRect: + m_X: 396 + m_Y: 374 + m_Width: 17 + m_Height: 31 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 128 + m_Metrics: + m_Width: 27.999998 + m_Height: 39.437496 + m_HorizontalBearingX: 0.49999997 + m_HorizontalBearingY: 39.437496 + m_HorizontalAdvance: 29.0625 + m_GlyphRect: + m_X: 6 + m_Y: 347 + m_Width: 28 + m_Height: 39 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 129 + m_Metrics: + m_Width: 27.999998 + m_Height: 39.437496 + m_HorizontalBearingX: 0.49999997 + m_HorizontalBearingY: 39.437496 + m_HorizontalAdvance: 29.0625 + m_GlyphRect: + m_X: 6 + m_Y: 398 + m_Width: 28 + m_Height: 39 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 130 + m_Metrics: + m_Width: 27.999998 + m_Height: 39.437496 + m_HorizontalBearingX: 0.49999997 + m_HorizontalBearingY: 39.437496 + m_HorizontalAdvance: 29.0625 + m_GlyphRect: + m_X: 6 + m_Y: 449 + m_Width: 28 + m_Height: 39 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 131 + m_Metrics: + m_Width: 27.999998 + m_Height: 39.437496 + m_HorizontalBearingX: 0.49999997 + m_HorizontalBearingY: 39.437496 + m_HorizontalAdvance: 29.0625 + m_GlyphRect: + m_X: 46 + m_Y: 92 + m_Width: 28 + m_Height: 39 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 132 + m_Metrics: + m_Width: 27.999998 + m_Height: 39.312496 + m_HorizontalBearingX: 0.49999997 + m_HorizontalBearingY: 39.312496 + m_HorizontalAdvance: 29.0625 + m_GlyphRect: + m_X: 46 + m_Y: 143 + m_Width: 28 + m_Height: 39 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 133 + m_Metrics: + m_Width: 27.999998 + m_Height: 39.437496 + m_HorizontalBearingX: 0.49999997 + m_HorizontalBearingY: 39.437496 + m_HorizontalAdvance: 29.0625 + m_GlyphRect: + m_X: 46 + m_Y: 194 + m_Width: 28 + m_Height: 39 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 134 + m_Metrics: + m_Width: 40.749996 + m_Height: 30.499998 + m_HorizontalBearingX: -1.1249999 + m_HorizontalBearingY: 30.562498 + m_HorizontalAdvance: 41.3125 + m_GlyphRect: + m_X: 61 + m_Y: 7 + m_Width: 41 + m_Height: 30 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 135 + m_Metrics: + m_Width: 26.374998 + m_Height: 38.249996 + m_HorizontalBearingX: 1.6249999 + m_HorizontalBearingY: 30.749998 + m_HorizontalAdvance: 29.375 + m_GlyphRect: + m_X: 46 + m_Y: 296 + m_Width: 26 + m_Height: 38 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 136 + m_Metrics: + m_Width: 20.499998 + m_Height: 39.437496 + m_HorizontalBearingX: 3.8124998 + m_HorizontalBearingY: 39.437496 + m_HorizontalAdvance: 26.1875 + m_GlyphRect: + m_X: 157 + m_Y: 92 + m_Width: 20 + m_Height: 39 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 137 + m_Metrics: + m_Width: 20.499998 + m_Height: 39.437496 + m_HorizontalBearingX: 3.8124998 + m_HorizontalBearingY: 39.437496 + m_HorizontalAdvance: 26.1875 + m_GlyphRect: + m_X: 155 + m_Y: 143 + m_Width: 20 + m_Height: 39 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 138 + m_Metrics: + m_Width: 20.499998 + m_Height: 39.437496 + m_HorizontalBearingX: 3.8124998 + m_HorizontalBearingY: 39.437496 + m_HorizontalAdvance: 26.1875 + m_GlyphRect: + m_X: 155 + m_Y: 194 + m_Width: 20 + m_Height: 39 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 139 + m_Metrics: + m_Width: 20.499998 + m_Height: 39.312496 + m_HorizontalBearingX: 3.8124998 + m_HorizontalBearingY: 39.312496 + m_HorizontalAdvance: 26.1875 + m_GlyphRect: + m_X: 121 + m_Y: 298 + m_Width: 20 + m_Height: 39 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 140 + m_Metrics: + m_Width: 5.6249995 + m_Height: 39.437496 + m_HorizontalBearingX: 1.3124999 + m_HorizontalBearingY: 39.437496 + m_HorizontalAdvance: 10.6875 + m_GlyphRect: + m_X: 210 + m_Y: 142 + m_Width: 6 + m_Height: 39 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 141 + m_Metrics: + m_Width: 5.6874995 + m_Height: 39.437496 + m_HorizontalBearingX: 3.6249998 + m_HorizontalBearingY: 39.437496 + m_HorizontalAdvance: 10.6875 + m_GlyphRect: + m_X: 154 + m_Y: 246 + m_Width: 6 + m_Height: 39 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 142 + m_Metrics: + m_Width: 10.624999 + m_Height: 39.437496 + m_HorizontalBearingX: 0 + m_HorizontalBearingY: 39.437496 + m_HorizontalAdvance: 10.6875 + m_GlyphRect: + m_X: 187 + m_Y: 194 + m_Width: 11 + m_Height: 39 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 143 + m_Metrics: + m_Width: 8.874999 + m_Height: 39.312496 + m_HorizontalBearingX: 0.81249994 + m_HorizontalBearingY: 39.312496 + m_HorizontalAdvance: 10.6875 + m_GlyphRect: + m_X: 45 + m_Y: 347 + m_Width: 9 + m_Height: 39 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 144 + m_Metrics: + m_Width: 27.624998 + m_Height: 30.499998 + m_HorizontalBearingX: 1.4374999 + m_HorizontalBearingY: 30.562498 + m_HorizontalAdvance: 31 + m_GlyphRect: + m_X: 372 + m_Y: 84 + m_Width: 28 + m_Height: 30 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 145 + m_Metrics: + m_Width: 25.562498 + m_Height: 39.437496 + m_HorizontalBearingX: 3.8124998 + m_HorizontalBearingY: 39.437496 + m_HorizontalAdvance: 33.1875 + m_GlyphRect: + m_X: 85 + m_Y: 92 + m_Width: 26 + m_Height: 39 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 146 + m_Metrics: + m_Width: 28.624998 + m_Height: 39.624996 + m_HorizontalBearingX: 1.7499999 + m_HorizontalBearingY: 39.437496 + m_HorizontalAdvance: 32.3125 + m_GlyphRect: + m_X: 6 + m_Y: 91 + m_Width: 29 + m_Height: 40 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 147 + m_Metrics: + m_Width: 28.624998 + m_Height: 39.624996 + m_HorizontalBearingX: 1.7499999 + m_HorizontalBearingY: 39.437496 + m_HorizontalAdvance: 32.3125 + m_GlyphRect: + m_X: 6 + m_Y: 142 + m_Width: 29 + m_Height: 40 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 148 + m_Metrics: + m_Width: 28.624998 + m_Height: 39.624996 + m_HorizontalBearingX: 1.7499999 + m_HorizontalBearingY: 39.437496 + m_HorizontalAdvance: 32.3125 + m_GlyphRect: + m_X: 6 + m_Y: 193 + m_Width: 29 + m_Height: 40 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 149 + m_Metrics: + m_Width: 28.624998 + m_Height: 39.624996 + m_HorizontalBearingX: 1.7499999 + m_HorizontalBearingY: 39.437496 + m_HorizontalAdvance: 32.3125 + m_GlyphRect: + m_X: 6 + m_Y: 244 + m_Width: 29 + m_Height: 40 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 150 + m_Metrics: + m_Width: 28.624998 + m_Height: 39.499996 + m_HorizontalBearingX: 1.7499999 + m_HorizontalBearingY: 39.312496 + m_HorizontalAdvance: 32.3125 + m_GlyphRect: + m_X: 6 + m_Y: 296 + m_Width: 29 + m_Height: 39 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 151 + m_Metrics: + m_Width: 14.187499 + m_Height: 14.187499 + m_HorizontalBearingX: 2.7499998 + m_HorizontalBearingY: 18.812498 + m_HorizontalAdvance: 19.625 + m_GlyphRect: + m_X: 307 + m_Y: 492 + m_Width: 14 + m_Height: 14 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 152 + m_Metrics: + m_Width: 28.624998 + m_Height: 30.937498 + m_HorizontalBearingX: 1.7499999 + m_HorizontalBearingY: 30.749998 + m_HorizontalAdvance: 32.3125 + m_GlyphRect: + m_X: 372 + m_Y: 41 + m_Width: 29 + m_Height: 31 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 153 + m_Metrics: + m_Width: 25.749998 + m_Height: 39.624996 + m_HorizontalBearingX: 3.3749998 + m_HorizontalBearingY: 39.437496 + m_HorizontalAdvance: 32.4375 + m_GlyphRect: + m_X: 85 + m_Y: 142 + m_Width: 26 + m_Height: 40 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 154 + m_Metrics: + m_Width: 25.749998 + m_Height: 39.624996 + m_HorizontalBearingX: 3.3749998 + m_HorizontalBearingY: 39.437496 + m_HorizontalAdvance: 32.4375 + m_GlyphRect: + m_X: 85 + m_Y: 193 + m_Width: 26 + m_Height: 40 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 155 + m_Metrics: + m_Width: 25.749998 + m_Height: 39.624996 + m_HorizontalBearingX: 3.3749998 + m_HorizontalBearingY: 39.437496 + m_HorizontalAdvance: 32.4375 + m_GlyphRect: + m_X: 84 + m_Y: 244 + m_Width: 26 + m_Height: 40 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 156 + m_Metrics: + m_Width: 25.749998 + m_Height: 39.499996 + m_HorizontalBearingX: 3.3749998 + m_HorizontalBearingY: 39.312496 + m_HorizontalAdvance: 32.4375 + m_GlyphRect: + m_X: 84 + m_Y: 296 + m_Width: 26 + m_Height: 39 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 157 + m_Metrics: + m_Width: 26.624998 + m_Height: 39.437496 + m_HorizontalBearingX: 0.68749994 + m_HorizontalBearingY: 39.437496 + m_HorizontalAdvance: 28 + m_GlyphRect: + m_X: 46 + m_Y: 245 + m_Width: 27 + m_Height: 39 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 158 + m_Metrics: + m_Width: 20.937498 + m_Height: 30.499998 + m_HorizontalBearingX: 3.8124998 + m_HorizontalBearingY: 30.562498 + m_HorizontalAdvance: 25.9375 + m_GlyphRect: + m_X: 364 + m_Y: 378 + m_Width: 21 + m_Height: 30 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 159 + m_Metrics: + m_Width: 18.812498 + m_Height: 30.937498 + m_HorizontalBearingX: 3.1874998 + m_HorizontalBearingY: 30.749998 + m_HorizontalAdvance: 23.6875 + m_GlyphRect: + m_X: 451 + m_Y: 296 + m_Width: 19 + m_Height: 31 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 160 + m_Metrics: + m_Width: 19.999998 + m_Height: 31.812498 + m_HorizontalBearingX: 1.3749999 + m_HorizontalBearingY: 31.437498 + m_HorizontalAdvance: 23.4375 + m_GlyphRect: + m_X: 241 + m_Y: 190 + m_Width: 20 + m_Height: 32 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 161 + m_Metrics: + m_Width: 19.999998 + m_Height: 31.812498 + m_HorizontalBearingX: 1.3749999 + m_HorizontalBearingY: 31.437498 + m_HorizontalAdvance: 23.4375 + m_GlyphRect: + m_X: 259 + m_Y: 442 + m_Width: 20 + m_Height: 32 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 162 + m_Metrics: + m_Width: 19.999998 + m_Height: 31.812498 + m_HorizontalBearingX: 1.3749999 + m_HorizontalBearingY: 31.437498 + m_HorizontalAdvance: 23.4375 + m_GlyphRect: + m_X: 265 + m_Y: 304 + m_Width: 20 + m_Height: 32 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 163 + m_Metrics: + m_Width: 19.999998 + m_Height: 31.812498 + m_HorizontalBearingX: 1.3749999 + m_HorizontalBearingY: 31.437498 + m_HorizontalAdvance: 23.4375 + m_GlyphRect: + m_X: 269 + m_Y: 347 + m_Width: 20 + m_Height: 32 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 164 + m_Metrics: + m_Width: 19.999998 + m_Height: 31.687498 + m_HorizontalBearingX: 1.3749999 + m_HorizontalBearingY: 31.312498 + m_HorizontalAdvance: 23.4375 + m_GlyphRect: + m_X: 300 + m_Y: 340 + m_Width: 20 + m_Height: 32 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 165 + m_Metrics: + m_Width: 19.999998 + m_Height: 31.812498 + m_HorizontalBearingX: 1.3749999 + m_HorizontalBearingY: 31.437498 + m_HorizontalAdvance: 23.4375 + m_GlyphRect: + m_X: 331 + m_Y: 334 + m_Width: 20 + m_Height: 32 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 166 + m_Metrics: + m_Width: 37.374996 + m_Height: 23.249998 + m_HorizontalBearingX: 1.3749999 + m_HorizontalBearingY: 22.812498 + m_HorizontalAdvance: 40.0625 + m_GlyphRect: + m_X: 372 + m_Y: 7 + m_Width: 37 + m_Height: 23 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 167 + m_Metrics: + m_Width: 20.562498 + m_Height: 30.374998 + m_HorizontalBearingX: 1.6249999 + m_HorizontalBearingY: 22.812498 + m_HorizontalAdvance: 23.625 + m_GlyphRect: + m_X: 419 + m_Y: 297 + m_Width: 21 + m_Height: 30 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 168 + m_Metrics: + m_Width: 22.249998 + m_Height: 31.812498 + m_HorizontalBearingX: 1.6249999 + m_HorizontalBearingY: 31.437498 + m_HorizontalAdvance: 25.25 + m_GlyphRect: + m_X: 407 + m_Y: 210 + m_Width: 22 + m_Height: 32 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 169 + m_Metrics: + m_Width: 22.249998 + m_Height: 31.812498 + m_HorizontalBearingX: 1.6249999 + m_HorizontalBearingY: 31.437498 + m_HorizontalAdvance: 25.25 + m_GlyphRect: + m_X: 441 + m_Y: 210 + m_Width: 22 + m_Height: 32 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 170 + m_Metrics: + m_Width: 22.249998 + m_Height: 31.812498 + m_HorizontalBearingX: 1.6249999 + m_HorizontalBearingY: 31.437498 + m_HorizontalAdvance: 25.25 + m_GlyphRect: + m_X: 306 + m_Y: 254 + m_Width: 22 + m_Height: 32 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 171 + m_Metrics: + m_Width: 22.249998 + m_Height: 31.687498 + m_HorizontalBearingX: 1.6249999 + m_HorizontalBearingY: 31.312498 + m_HorizontalAdvance: 25.25 + m_GlyphRect: + m_X: 373 + m_Y: 253 + m_Width: 22 + m_Height: 32 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 172 + m_Metrics: + m_Width: 5.6249995 + m_Height: 31.374998 + m_HorizontalBearingX: 0.68749994 + m_HorizontalBearingY: 31.437498 + m_HorizontalAdvance: 9.375 + m_GlyphRect: + m_X: 149 + m_Y: 434 + m_Width: 6 + m_Height: 31 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 173 + m_Metrics: + m_Width: 5.6249995 + m_Height: 31.374998 + m_HorizontalBearingX: 2.9999998 + m_HorizontalBearingY: 31.437498 + m_HorizontalAdvance: 9.375 + m_GlyphRect: + m_X: 445 + m_Y: 374 + m_Width: 6 + m_Height: 31 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 174 + m_Metrics: + m_Width: 10.624999 + m_Height: 31.374998 + m_HorizontalBearingX: -0.62499994 + m_HorizontalBearingY: 31.437498 + m_HorizontalAdvance: 9.375 + m_GlyphRect: + m_X: 280 + m_Y: 391 + m_Width: 11 + m_Height: 31 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 175 + m_Metrics: + m_Width: 8.937499 + m_Height: 31.249998 + m_HorizontalBearingX: 0.18749999 + m_HorizontalBearingY: 31.312498 + m_HorizontalAdvance: 9.375 + m_GlyphRect: + m_X: 425 + m_Y: 374 + m_Width: 9 + m_Height: 31 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 176 + m_Metrics: + m_Width: 22.249998 + m_Height: 31.812498 + m_HorizontalBearingX: 1.7499999 + m_HorizontalBearingY: 31.437498 + m_HorizontalAdvance: 25.875 + m_GlyphRect: + m_X: 407 + m_Y: 253 + m_Width: 22 + m_Height: 32 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 177 + m_Metrics: + m_Width: 18.812498 + m_Height: 31.374998 + m_HorizontalBearingX: 3.1874998 + m_HorizontalBearingY: 31.437498 + m_HorizontalAdvance: 25.0625 + m_GlyphRect: + m_X: 302 + m_Y: 384 + m_Width: 19 + m_Height: 31 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 178 + m_Metrics: + m_Width: 22.249998 + m_Height: 31.812498 + m_HorizontalBearingX: 1.6249999 + m_HorizontalBearingY: 31.437498 + m_HorizontalAdvance: 25.5625 + m_GlyphRect: + m_X: 441 + m_Y: 253 + m_Width: 22 + m_Height: 32 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 179 + m_Metrics: + m_Width: 22.249998 + m_Height: 31.812498 + m_HorizontalBearingX: 1.6249999 + m_HorizontalBearingY: 31.437498 + m_HorizontalAdvance: 25.5625 + m_GlyphRect: + m_X: 171 + m_Y: 286 + m_Width: 22 + m_Height: 32 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 180 + m_Metrics: + m_Width: 22.249998 + m_Height: 31.812498 + m_HorizontalBearingX: 1.6249999 + m_HorizontalBearingY: 31.437498 + m_HorizontalAdvance: 25.5625 + m_GlyphRect: + m_X: 171 + m_Y: 329 + m_Width: 22 + m_Height: 32 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 181 + m_Metrics: + m_Width: 22.249998 + m_Height: 31.812498 + m_HorizontalBearingX: 1.6249999 + m_HorizontalBearingY: 31.437498 + m_HorizontalAdvance: 25.5625 + m_GlyphRect: + m_X: 205 + m_Y: 313 + m_Width: 22 + m_Height: 32 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 182 + m_Metrics: + m_Width: 22.249998 + m_Height: 31.687498 + m_HorizontalBearingX: 1.6249999 + m_HorizontalBearingY: 31.312498 + m_HorizontalAdvance: 25.5625 + m_GlyphRect: + m_X: 205 + m_Y: 356 + m_Width: 22 + m_Height: 32 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 183 + m_Metrics: + m_Width: 17.312498 + m_Height: 17.874998 + m_HorizontalBearingX: 2.8749998 + m_HorizontalBearingY: 21.124998 + m_HorizontalAdvance: 23.0625 + m_GlyphRect: + m_X: 476 + m_Y: 435 + m_Width: 17 + m_Height: 18 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 184 + m_Metrics: + m_Width: 22.249998 + m_Height: 23.249998 + m_HorizontalBearingX: 1.6249999 + m_HorizontalBearingY: 22.812498 + m_HorizontalAdvance: 25.5625 + m_GlyphRect: + m_X: 171 + m_Y: 373 + m_Width: 22 + m_Height: 23 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 185 + m_Metrics: + m_Width: 20.187498 + m_Height: 31.812498 + m_HorizontalBearingX: 2.9999998 + m_HorizontalBearingY: 31.437498 + m_HorizontalAdvance: 25.5625 + m_GlyphRect: + m_X: 227 + m_Y: 442 + m_Width: 20 + m_Height: 32 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 186 + m_Metrics: + m_Width: 20.187498 + m_Height: 31.812498 + m_HorizontalBearingX: 2.9999998 + m_HorizontalBearingY: 31.437498 + m_HorizontalAdvance: 25.5625 + m_GlyphRect: + m_X: 296 + m_Y: 297 + m_Width: 20 + m_Height: 32 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 187 + m_Metrics: + m_Width: 20.187498 + m_Height: 31.812498 + m_HorizontalBearingX: 2.9999998 + m_HorizontalBearingY: 31.437498 + m_HorizontalAdvance: 25.5625 + m_GlyphRect: + m_X: 332 + m_Y: 377 + m_Width: 20 + m_Height: 32 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 188 + m_Metrics: + m_Width: 20.187498 + m_Height: 31.687498 + m_HorizontalBearingX: 2.9999998 + m_HorizontalBearingY: 31.312498 + m_HorizontalAdvance: 25.5625 + m_GlyphRect: + m_X: 362 + m_Y: 334 + m_Width: 20 + m_Height: 32 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 189 + m_Metrics: + m_Width: 21.812498 + m_Height: 40.937496 + m_HorizontalBearingX: 0.62499994 + m_HorizontalBearingY: 31.437498 + m_HorizontalAdvance: 23.3125 + m_GlyphRect: + m_X: 122 + m_Y: 142 + m_Width: 22 + m_Height: 41 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 190 + m_Metrics: + m_Width: 21.062498 + m_Height: 39.687496 + m_HorizontalBearingX: 3.1874998 + m_HorizontalBearingY: 30.562498 + m_HorizontalAdvance: 25.9375 + m_GlyphRect: + m_X: 122 + m_Y: 194 + m_Width: 21 + m_Height: 40 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 191 + m_Metrics: + m_Width: 21.812498 + m_Height: 40.812496 + m_HorizontalBearingX: 0.62499994 + m_HorizontalBearingY: 31.312498 + m_HorizontalAdvance: 23.3125 + m_GlyphRect: + m_X: 121 + m_Y: 245 + m_Width: 22 + m_Height: 41 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 192 + m_Metrics: + m_Width: 0 + m_Height: 0 + m_HorizontalBearingX: 0 + m_HorizontalBearingY: 0 + m_HorizontalAdvance: 24.875 + m_GlyphRect: + m_X: 6 + m_Y: -5 + m_Width: 0 + m_Height: 0 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 193 + m_Metrics: + m_Width: 0 + m_Height: 0 + m_HorizontalBearingX: 0 + m_HorizontalBearingY: 0 + m_HorizontalAdvance: 39.375 + m_GlyphRect: + m_X: 6 + m_Y: -5 + m_Width: 0 + m_Height: 0 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 194 + m_Metrics: + m_Width: 18.874998 + m_Height: 2.6874998 + m_HorizontalBearingX: 2.7499998 + m_HorizontalBearingY: 13.124999 + m_HorizontalAdvance: 24.5 + m_GlyphRect: + m_X: 190 + m_Y: 492 + m_Width: 19 + m_Height: 3 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 195 + m_Metrics: + m_Width: 33.124996 + m_Height: 2.6874998 + m_HorizontalBearingX: 2.7499998 + m_HorizontalBearingY: 13.124999 + m_HorizontalAdvance: 38.75 + m_GlyphRect: + m_X: 227 + m_Y: 176 + m_Width: 33 + m_Height: 3 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 196 + m_Metrics: + m_Width: 2.8749998 + m_Height: 8.999999 + m_HorizontalBearingX: 2.7499998 + m_HorizontalBearingY: 31.437498 + m_HorizontalAdvance: 8.4375 + m_GlyphRect: + m_X: 440 + m_Y: 487 + m_Width: 3 + m_Height: 9 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 197 + m_Metrics: + m_Width: 2.8749998 + m_Height: 8.999999 + m_HorizontalBearingX: 2.7499998 + m_HorizontalBearingY: 31.437498 + m_HorizontalAdvance: 8.1875 + m_GlyphRect: + m_X: 496 + m_Y: 464 + m_Width: 3 + m_Height: 9 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 198 + m_Metrics: + m_Width: 2.8124998 + m_Height: 8.874999 + m_HorizontalBearingX: 3.4374998 + m_HorizontalBearingY: 4.4374995 + m_HorizontalAdvance: 9.6875 + m_GlyphRect: + m_X: 493 + m_Y: 484 + m_Width: 3 + m_Height: 9 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 199 + m_Metrics: + m_Width: 8.062499 + m_Height: 8.999999 + m_HorizontalBearingX: 2.7499998 + m_HorizontalBearingY: 31.437498 + m_HorizontalAdvance: 13.5625 + m_GlyphRect: + m_X: 476 + m_Y: 464 + m_Width: 8 + m_Height: 9 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 200 + m_Metrics: + m_Width: 8.062499 + m_Height: 8.999999 + m_HorizontalBearingX: 2.7499998 + m_HorizontalBearingY: 31.437498 + m_HorizontalAdvance: 13.375 + m_GlyphRect: + m_X: 454 + m_Y: 484 + m_Width: 8 + m_Height: 9 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 201 + m_Metrics: + m_Width: 7.9374995 + m_Height: 8.874999 + m_HorizontalBearingX: 3.4374998 + m_HorizontalBearingY: 4.4374995 + m_HorizontalAdvance: 14.75 + m_GlyphRect: + m_X: 474 + m_Y: 484 + m_Width: 8 + m_Height: 9 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 202 + m_Metrics: + m_Width: 14.124999 + m_Height: 38.874996 + m_HorizontalBearingX: 1.6249999 + m_HorizontalBearingY: 33.374996 + m_HorizontalAdvance: 17.4375 + m_GlyphRect: + m_X: 189 + m_Y: 91 + m_Width: 14 + m_Height: 39 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 203 + m_Metrics: + m_Width: 14.124999 + m_Height: 38.874996 + m_HorizontalBearingX: 1.7499999 + m_HorizontalBearingY: 33.374996 + m_HorizontalAdvance: 17.625 + m_GlyphRect: + m_X: 45 + m_Y: 397 + m_Width: 14 + m_Height: 39 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 204 + m_Metrics: + m_Width: 7.6874995 + m_Height: 7.6874995 + m_HorizontalBearingX: 3.6874998 + m_HorizontalBearingY: 18.749998 + m_HorizontalAdvance: 15.0625 + m_GlyphRect: + m_X: 428 + m_Y: 468 + m_Width: 8 + m_Height: 8 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 205 + m_Metrics: + m_Width: 14.062499 + m_Height: 4.1874995 + m_HorizontalBearingX: 2.7499998 + m_HorizontalBearingY: 4.2499995 + m_HorizontalAdvance: 19.625 + m_GlyphRect: + m_X: 424 + m_Y: 417 + m_Width: 14 + m_Height: 4 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 206 + m_Metrics: + m_Width: 42.437496 + m_Height: 31.374998 + m_HorizontalBearingX: 1.9374999 + m_HorizontalBearingY: 30.999998 + m_HorizontalAdvance: 45.8125 + m_GlyphRect: + m_X: 6 + m_Y: 49 + m_Width: 42 + m_Height: 31 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 207 + m_Metrics: + m_Width: 10.687499 + m_Height: 16.687498 + m_HorizontalBearingX: 1.7499999 + m_HorizontalBearingY: 19.562498 + m_HorizontalAdvance: 15.125 + m_GlyphRect: + m_X: 358 + m_Y: 487 + m_Width: 11 + m_Height: 17 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 208 + m_Metrics: + m_Width: 10.749999 + m_Height: 16.687498 + m_HorizontalBearingX: 2.6874998 + m_HorizontalBearingY: 19.562498 + m_HorizontalAdvance: 15.125 + m_GlyphRect: + m_X: 380 + m_Y: 487 + m_Width: 11 + m_Height: 17 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 209 + m_Metrics: + m_Width: 25.249998 + m_Height: 30.874998 + m_HorizontalBearingX: -9.312499 + m_HorizontalBearingY: 30.749998 + m_HorizontalAdvance: 6.625 + m_GlyphRect: + m_X: 116 + m_Y: 348 + m_Width: 25 + m_Height: 31 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 210 + m_Metrics: + m_Width: 30.749998 + m_Height: 30.937498 + m_HorizontalBearingX: 1.3749999 + m_HorizontalBearingY: 30.749998 + m_HorizontalAdvance: 34.4375 + m_GlyphRect: + m_X: 105 + m_Y: 49 + m_Width: 31 + m_Height: 31 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 211 + m_Metrics: + m_Width: 25.249998 + m_Height: 12.374999 + m_HorizontalBearingX: 2.6249998 + m_HorizontalBearingY: 30.624998 + m_HorizontalAdvance: 31.25 + m_GlyphRect: + m_X: 45 + m_Y: 494 + m_Width: 25 + m_Height: 12 + m_Scale: 1 + m_AtlasIndex: 0 + m_CharacterTable: + - m_ElementType: 1 + m_Unicode: 32 + m_GlyphIndex: 1 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 33 + m_GlyphIndex: 2 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 34 + m_GlyphIndex: 3 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 35 + m_GlyphIndex: 4 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 36 + m_GlyphIndex: 5 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 37 + m_GlyphIndex: 6 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 38 + m_GlyphIndex: 7 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 39 + m_GlyphIndex: 8 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 40 + m_GlyphIndex: 9 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 41 + m_GlyphIndex: 10 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 42 + m_GlyphIndex: 11 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 43 + m_GlyphIndex: 12 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 44 + m_GlyphIndex: 13 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 45 + m_GlyphIndex: 14 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 46 + m_GlyphIndex: 15 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 47 + m_GlyphIndex: 16 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 48 + m_GlyphIndex: 17 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 49 + m_GlyphIndex: 18 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 50 + m_GlyphIndex: 19 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 51 + m_GlyphIndex: 20 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 52 + m_GlyphIndex: 21 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 53 + m_GlyphIndex: 22 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 54 + m_GlyphIndex: 23 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 55 + m_GlyphIndex: 24 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 56 + m_GlyphIndex: 25 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 57 + m_GlyphIndex: 26 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 58 + m_GlyphIndex: 27 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 59 + m_GlyphIndex: 28 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 60 + m_GlyphIndex: 29 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 61 + m_GlyphIndex: 30 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 62 + m_GlyphIndex: 31 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 63 + m_GlyphIndex: 32 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 64 + m_GlyphIndex: 33 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 65 + m_GlyphIndex: 34 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 66 + m_GlyphIndex: 35 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 67 + m_GlyphIndex: 36 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 68 + m_GlyphIndex: 37 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 69 + m_GlyphIndex: 38 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 70 + m_GlyphIndex: 39 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 71 + m_GlyphIndex: 40 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 72 + m_GlyphIndex: 41 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 73 + m_GlyphIndex: 42 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 74 + m_GlyphIndex: 43 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 75 + m_GlyphIndex: 44 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 76 + m_GlyphIndex: 45 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 77 + m_GlyphIndex: 46 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 78 + m_GlyphIndex: 47 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 79 + m_GlyphIndex: 48 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 80 + m_GlyphIndex: 49 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 81 + m_GlyphIndex: 50 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 82 + m_GlyphIndex: 51 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 83 + m_GlyphIndex: 52 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 84 + m_GlyphIndex: 53 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 85 + m_GlyphIndex: 54 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 86 + m_GlyphIndex: 55 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 87 + m_GlyphIndex: 56 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 88 + m_GlyphIndex: 57 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 89 + m_GlyphIndex: 58 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 90 + m_GlyphIndex: 59 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 91 + m_GlyphIndex: 60 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 92 + m_GlyphIndex: 61 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 93 + m_GlyphIndex: 62 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 94 + m_GlyphIndex: 63 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 95 + m_GlyphIndex: 64 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 96 + m_GlyphIndex: 65 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 97 + m_GlyphIndex: 66 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 98 + m_GlyphIndex: 67 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 99 + m_GlyphIndex: 68 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 100 + m_GlyphIndex: 69 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 101 + m_GlyphIndex: 70 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 102 + m_GlyphIndex: 71 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 103 + m_GlyphIndex: 72 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 104 + m_GlyphIndex: 73 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 105 + m_GlyphIndex: 74 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 106 + m_GlyphIndex: 75 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 107 + m_GlyphIndex: 76 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 108 + m_GlyphIndex: 77 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 109 + m_GlyphIndex: 78 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 110 + m_GlyphIndex: 79 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 111 + m_GlyphIndex: 80 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 112 + m_GlyphIndex: 81 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 113 + m_GlyphIndex: 82 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 114 + m_GlyphIndex: 83 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 115 + m_GlyphIndex: 84 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 116 + m_GlyphIndex: 85 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 117 + m_GlyphIndex: 86 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 118 + m_GlyphIndex: 87 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 119 + m_GlyphIndex: 88 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 120 + m_GlyphIndex: 89 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 121 + m_GlyphIndex: 90 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 122 + m_GlyphIndex: 91 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 123 + m_GlyphIndex: 92 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 124 + m_GlyphIndex: 93 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 125 + m_GlyphIndex: 94 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 126 + m_GlyphIndex: 95 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 160 + m_GlyphIndex: 96 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 161 + m_GlyphIndex: 97 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 162 + m_GlyphIndex: 98 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 163 + m_GlyphIndex: 99 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 164 + m_GlyphIndex: 100 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 165 + m_GlyphIndex: 101 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 166 + m_GlyphIndex: 102 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 167 + m_GlyphIndex: 103 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 168 + m_GlyphIndex: 104 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 169 + m_GlyphIndex: 105 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 170 + m_GlyphIndex: 106 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 171 + m_GlyphIndex: 107 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 172 + m_GlyphIndex: 108 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 173 + m_GlyphIndex: 109 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 174 + m_GlyphIndex: 110 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 175 + m_GlyphIndex: 111 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 176 + m_GlyphIndex: 112 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 177 + m_GlyphIndex: 113 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 178 + m_GlyphIndex: 114 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 179 + m_GlyphIndex: 115 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 180 + m_GlyphIndex: 116 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 181 + m_GlyphIndex: 117 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 182 + m_GlyphIndex: 118 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 183 + m_GlyphIndex: 119 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 184 + m_GlyphIndex: 120 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 185 + m_GlyphIndex: 121 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 186 + m_GlyphIndex: 122 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 187 + m_GlyphIndex: 123 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 188 + m_GlyphIndex: 124 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 189 + m_GlyphIndex: 125 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 190 + m_GlyphIndex: 126 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 191 + m_GlyphIndex: 127 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 192 + m_GlyphIndex: 128 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 193 + m_GlyphIndex: 129 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 194 + m_GlyphIndex: 130 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 195 + m_GlyphIndex: 131 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 196 + m_GlyphIndex: 132 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 197 + m_GlyphIndex: 133 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 198 + m_GlyphIndex: 134 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 199 + m_GlyphIndex: 135 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 200 + m_GlyphIndex: 136 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 201 + m_GlyphIndex: 137 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 202 + m_GlyphIndex: 138 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 203 + m_GlyphIndex: 139 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 204 + m_GlyphIndex: 140 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 205 + m_GlyphIndex: 141 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 206 + m_GlyphIndex: 142 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 207 + m_GlyphIndex: 143 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 208 + m_GlyphIndex: 144 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 209 + m_GlyphIndex: 145 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 210 + m_GlyphIndex: 146 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 211 + m_GlyphIndex: 147 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 212 + m_GlyphIndex: 148 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 213 + m_GlyphIndex: 149 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 214 + m_GlyphIndex: 150 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 215 + m_GlyphIndex: 151 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 216 + m_GlyphIndex: 152 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 217 + m_GlyphIndex: 153 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 218 + m_GlyphIndex: 154 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 219 + m_GlyphIndex: 155 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 220 + m_GlyphIndex: 156 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 221 + m_GlyphIndex: 157 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 222 + m_GlyphIndex: 158 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 223 + m_GlyphIndex: 159 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 224 + m_GlyphIndex: 160 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 225 + m_GlyphIndex: 161 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 226 + m_GlyphIndex: 162 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 227 + m_GlyphIndex: 163 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 228 + m_GlyphIndex: 164 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 229 + m_GlyphIndex: 165 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 230 + m_GlyphIndex: 166 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 231 + m_GlyphIndex: 167 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 232 + m_GlyphIndex: 168 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 233 + m_GlyphIndex: 169 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 234 + m_GlyphIndex: 170 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 235 + m_GlyphIndex: 171 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 236 + m_GlyphIndex: 172 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 237 + m_GlyphIndex: 173 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 238 + m_GlyphIndex: 174 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 239 + m_GlyphIndex: 175 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 240 + m_GlyphIndex: 176 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 241 + m_GlyphIndex: 177 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 242 + m_GlyphIndex: 178 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 243 + m_GlyphIndex: 179 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 244 + m_GlyphIndex: 180 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 245 + m_GlyphIndex: 181 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 246 + m_GlyphIndex: 182 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 247 + m_GlyphIndex: 183 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 248 + m_GlyphIndex: 184 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 249 + m_GlyphIndex: 185 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 250 + m_GlyphIndex: 186 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 251 + m_GlyphIndex: 187 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 252 + m_GlyphIndex: 188 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 253 + m_GlyphIndex: 189 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 254 + m_GlyphIndex: 190 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 255 + m_GlyphIndex: 191 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 8194 + m_GlyphIndex: 192 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 8195 + m_GlyphIndex: 193 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 8211 + m_GlyphIndex: 194 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 8212 + m_GlyphIndex: 195 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 8216 + m_GlyphIndex: 196 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 8217 + m_GlyphIndex: 197 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 8218 + m_GlyphIndex: 198 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 8220 + m_GlyphIndex: 199 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 8221 + m_GlyphIndex: 200 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 8222 + m_GlyphIndex: 201 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 8224 + m_GlyphIndex: 202 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 8225 + m_GlyphIndex: 203 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 8226 + m_GlyphIndex: 204 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 8230 + m_GlyphIndex: 205 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 8240 + m_GlyphIndex: 206 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 8249 + m_GlyphIndex: 207 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 8250 + m_GlyphIndex: 208 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 8260 + m_GlyphIndex: 209 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 8364 + m_GlyphIndex: 210 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 8482 + m_GlyphIndex: 211 + m_Scale: 1 + m_AtlasTextures: + - {fileID: 28773781249574104} + m_AtlasTextureIndex: 0 + m_UsedGlyphRects: [] + m_FreeGlyphRects: [] + m_fontInfo: + Name: Raleway + PointSize: 43 + Scale: 1 + CharacterCount: 211 + LineHeight: 50.5 + Baseline: 0 + Ascender: 40.4375 + CapHeight: 30.562498 + Descender: -10.0625 + CenterLine: 0 + SuperscriptOffset: 40.4375 + SubscriptOffset: -4.3 + SubSize: 0.5 + Underline: -4.3 + UnderlineThickness: 2.15 + strikethrough: 11.045455 + strikethroughThickness: 2.15 + TabWidth: 109.375 + Padding: 5 + AtlasWidth: 512 + AtlasHeight: 512 + atlas: {fileID: 28773781249574104} + m_AtlasWidth: 512 + m_AtlasHeight: 512 + m_AtlasPadding: 5 + m_AtlasRenderMode: 16426 + m_glyphInfoList: + - id: 32 + x: 6 + y: 517 + width: 10.9375 + height: 50.5 + xOffset: 0 + yOffset: 40.4375 + xAdvance: 10.9375 + scale: 1 + - id: 33 + x: 412 + y: 440 + width: 2.9374998 + height: 30.812498 + xOffset: 3.9374998 + yOffset: 30.874998 + xAdvance: 10.8125 + scale: 1 + - id: 34 + x: 402 + y: 16 + width: 6.6249995 + height: 8.374999 + xOffset: 2.9374998 + yOffset: 30.812498 + xAdvance: 12.5625 + scale: 1 + - id: 35 + x: 219 + y: 431 + width: 26.062498 + height: 30.499998 + xOffset: 1.5624999 + yOffset: 30.562498 + xAdvance: 29.25 + scale: 1 + - id: 36 + x: 122 + y: 381 + width: 23.249998 + height: 39.499996 + xOffset: 1.6249999 + yOffset: 35.062496 + xAdvance: 26.625 + scale: 1 + - id: 37 + x: 257 + y: 431 + width: 27.249998 + height: 31.374998 + xOffset: 1.6874999 + yOffset: 30.999998 + xAdvance: 30.6875 + scale: 1 + - id: 38 + x: 296 + y: 431 + width: 26.437498 + height: 31.374998 + xOffset: 1.9999999 + yOffset: 30.937498 + xAdvance: 28.6875 + scale: 1 + - id: 39 + x: 462 + y: 55 + width: 2.5624998 + height: 8.437499 + xOffset: 2.9374998 + yOffset: 30.812498 + xAdvance: 8.5 + scale: 1 + - id: 40 + x: 74 + y: 33 + width: 8.249999 + height: 33.312496 + xOffset: 1.8749999 + yOffset: 31.812498 + xAdvance: 11.5625 + scale: 1 + - id: 41 + x: 94 + y: 33 + width: 8.249999 + height: 33.312496 + xOffset: 1.3749999 + yOffset: 31.812498 + xAdvance: 11.5 + scale: 1 + - id: 42 + x: 442 + y: 71 + width: 8.437499 + height: 8.124999 + xOffset: 2.6249998 + yOffset: 30.687498 + xAdvance: 13.8125 + scale: 1 + - id: 43 + x: 135 + y: 6 + width: 13.374999 + height: 13.999999 + xOffset: 2.1874998 + yOffset: 22.312498 + xAdvance: 17.875 + scale: 1 + - id: 44 + x: 414 + y: 36 + width: 2.8124998 + height: 7.6874995 + xOffset: 3.4374998 + yOffset: 4.2499995 + xAdvance: 9.6875 + scale: 1 + - id: 45 + x: 418 + y: 77 + width: 12.562499 + height: 2.6874998 + xOffset: 2.7499998 + yOffset: 13.124999 + xAdvance: 18.125 + scale: 1 + - id: 46 + x: 447 + y: 39 + width: 2.4999998 + height: 4.1874995 + xOffset: 2.7499998 + yOffset: 4.2499995 + xAdvance: 8.125 + scale: 1 + - id: 47 + x: 303 + y: 347 + width: 23.562498 + height: 30.499998 + xOffset: 1.1249999 + yOffset: 30.562498 + xAdvance: 26 + scale: 1 + - id: 48 + x: 340 + y: 266 + width: 21.562498 + height: 26.124998 + xOffset: 2.3124998 + yOffset: 25.687498 + xAdvance: 26.3125 + scale: 1 + - id: 49 + x: 304 + y: 61 + width: 15.437499 + height: 24.562498 + xOffset: 1.9374999 + yOffset: 24.562498 + xAdvance: 18.375 + scale: 1 + - id: 50 + x: 389 + y: 191 + width: 18.437498 + height: 24.999998 + xOffset: 1.8749999 + yOffset: 24.999998 + xAdvance: 22.375 + scale: 1 + - id: 51 + x: 85 + y: 92 + width: 19.374998 + height: 31.062498 + xOffset: 1.6249999 + yOffset: 24.812498 + xAdvance: 22.9375 + scale: 1 + - id: 52 + x: 187 + y: 432 + width: 20.999998 + height: 29.999998 + xOffset: 0.93749994 + yOffset: 24.562498 + xAdvance: 23.5 + scale: 1 + - id: 53 + x: 411 + y: 398 + width: 20.374998 + height: 30.999998 + xOffset: 1.4999999 + yOffset: 24.562498 + xAdvance: 23.4375 + scale: 1 + - id: 54 + x: 410 + y: 355 + width: 21.812498 + height: 31.187498 + xOffset: 2.1874998 + yOffset: 30.749998 + xAdvance: 25.9375 + scale: 1 + - id: 55 + x: 479 + y: 399 + width: 21.124998 + height: 30.499998 + xOffset: 1.4374999 + yOffset: 25.124998 + xAdvance: 23 + scale: 1 + - id: 56 + x: 440 + y: 313 + width: 21.249998 + height: 30.812498 + xOffset: 2.1249998 + yOffset: 30.562498 + xAdvance: 25.5 + scale: 1 + - id: 57 + x: 475 + y: 270 + width: 21.812498 + height: 31.187498 + xOffset: 1.4999999 + yOffset: 24.562498 + xAdvance: 25.1875 + scale: 1 + - id: 58 + x: 462 + y: 75 + width: 2.4999998 + height: 22.249998 + xOffset: 2.7499998 + yOffset: 22.312498 + xAdvance: 8.0625 + scale: 1 + - id: 59 + x: 290 + y: 53 + width: 2.8749998 + height: 25.749998 + xOffset: 2.9999998 + yOffset: 22.312498 + xAdvance: 8.8125 + scale: 1 + - id: 60 + x: 360 + y: 189 + width: 17.999998 + height: 23.187498 + xOffset: 1.3749999 + yOffset: 22.749998 + xAdvance: 21.875 + scale: 1 + - id: 61 + x: 394 + y: 74 + width: 12.999999 + height: 7.0624995 + xOffset: 2.8749998 + yOffset: 15.437499 + xAdvance: 18.8125 + scale: 1 + - id: 62 + x: 481 + y: 150 + width: 17.999998 + height: 23.187498 + xOffset: 2.3124998 + yOffset: 22.749998 + xAdvance: 21.875 + scale: 1 + - id: 63 + x: 198 + y: 31 + width: 17.374998 + height: 30.937498 + xOffset: 1.4374999 + yOffset: 30.937498 + xAdvance: 20.4375 + scale: 1 + - id: 64 + x: 201 + y: 473 + width: 31.562498 + height: 32.187496 + xOffset: 1.9999999 + yOffset: 25.937498 + xAdvance: 36 + scale: 1 + - id: 65 + x: 295 + y: 389 + width: 27.999998 + height: 30.499998 + xOffset: 0.49999997 + yOffset: 30.562498 + xAdvance: 29.0625 + scale: 1 + - id: 66 + x: 478 + y: 357 + width: 22.999998 + height: 30.499998 + xOffset: 3.8124998 + yOffset: 30.562498 + xAdvance: 28.625 + scale: 1 + - id: 67 + x: 334 + y: 433 + width: 26.374998 + height: 30.937498 + xOffset: 1.7499999 + yOffset: 30.749998 + xAdvance: 29.5 + scale: 1 + - id: 68 + x: 116 + y: 91 + width: 24.999998 + height: 30.499998 + xOffset: 3.8124998 + yOffset: 30.562498 + xAdvance: 30.75 + scale: 1 + - id: 69 + x: 209 + y: 244 + width: 20.499998 + height: 30.499998 + xOffset: 3.8124998 + yOffset: 30.562498 + xAdvance: 26.1875 + scale: 1 + - id: 70 + x: 241 + y: 219 + width: 20.062498 + height: 30.499998 + xOffset: 3.8124998 + yOffset: 30.562498 + xAdvance: 25.3125 + scale: 1 + - id: 71 + x: 334 + y: 391 + width: 26.624998 + height: 30.937498 + xOffset: 1.7499999 + yOffset: 30.749998 + xAdvance: 30.8125 + scale: 1 + - id: 72 + x: 426 + y: 441 + width: 24.124998 + height: 30.499998 + xOffset: 3.8124998 + yOffset: 30.562498 + xAdvance: 31.75 + scale: 1 + - id: 73 + x: 498 + y: 441 + width: 2.9999998 + height: 30.499998 + xOffset: 3.8124998 + yOffset: 30.562498 + xAdvance: 10.6875 + scale: 1 + - id: 74 + x: 481 + y: 185 + width: 16.624998 + height: 30.999998 + xOffset: 0.56249994 + yOffset: 30.562498 + xAdvance: 20.6875 + scale: 1 + - id: 75 + x: 443 + y: 357 + width: 23.812498 + height: 30.499998 + xOffset: 3.8124998 + yOffset: 30.562498 + xAdvance: 27.625 + scale: 1 + - id: 76 + x: 166 + y: 31 + width: 20.624998 + height: 30.499998 + xOffset: 3.8124998 + yOffset: 30.562498 + xAdvance: 25.0625 + scale: 1 + - id: 77 + x: 330 + y: 475 + width: 30.062498 + height: 30.499998 + xOffset: 3.8124998 + yOffset: 30.562498 + xAdvance: 37.6875 + scale: 1 + - id: 78 + x: 171 + y: 237 + width: 25.562498 + height: 30.499998 + xOffset: 3.8124998 + yOffset: 30.562498 + xAdvance: 33.1875 + scale: 1 + - id: 79 + x: 147 + y: 432 + width: 28.624998 + height: 30.937498 + xOffset: 1.7499999 + yOffset: 30.749998 + xAdvance: 32.3125 + scale: 1 + - id: 80 + x: 340 + y: 224 + width: 21.749998 + height: 30.499998 + xOffset: 3.8124998 + yOffset: 30.562498 + xAdvance: 26.75 + scale: 1 + - id: 81 + x: 215 + y: 389 + width: 28.624998 + height: 30.937498 + xOffset: 1.7499999 + yOffset: 30.749998 + xAdvance: 32.1875 + scale: 1 + - id: 82 + x: 338 + y: 304 + width: 22.624998 + height: 30.499998 + xOffset: 3.8124998 + yOffset: 30.562498 + xAdvance: 28.0625 + scale: 1 + - id: 83 + x: 272 + y: 305 + width: 23.249998 + height: 30.999998 + xOffset: 1.3749999 + yOffset: 30.749998 + xAdvance: 26.125 + scale: 1 + - id: 84 + x: 462 + y: 441 + width: 24.749998 + height: 30.499998 + xOffset: 0.68749994 + yOffset: 30.562498 + xAdvance: 26.25 + scale: 1 + - id: 85 + x: 79 + y: 135 + width: 25.749998 + height: 30.687498 + xOffset: 3.3749998 + yOffset: 30.562498 + xAdvance: 32.4375 + scale: 1 + - id: 86 + x: 255 + y: 389 + width: 28.062498 + height: 30.499998 + xOffset: 0.49999997 + yOffset: 30.562498 + xAdvance: 29.1875 + scale: 1 + - id: 87 + x: 6 + y: 475 + width: 43.999996 + height: 30.499998 + xOffset: 0.49999997 + yOffset: 30.562498 + xAdvance: 45 + scale: 1 + - id: 88 + x: 227 + y: 347 + width: 26.749998 + height: 30.499998 + xOffset: 0.18749999 + yOffset: 30.562498 + xAdvance: 27.1875 + scale: 1 + - id: 89 + x: 265 + y: 347 + width: 26.624998 + height: 30.499998 + xOffset: 0.68749994 + yOffset: 30.562498 + xAdvance: 28 + scale: 1 + - id: 90 + x: 443 + y: 399 + width: 24.249998 + height: 30.499998 + xOffset: 1.3124999 + yOffset: 30.562498 + xAdvance: 27.0625 + scale: 1 + - id: 91 + x: 132 + y: 33 + width: 5.0624995 + height: 33.562496 + xOffset: 3.7499998 + yOffset: 31.874998 + xAdvance: 11.125 + scale: 1 + - id: 92 + x: 406 + y: 313 + width: 22.062498 + height: 30.499998 + xOffset: 1.1874999 + yOffset: 30.562498 + xAdvance: 24.4375 + scale: 1 + - id: 93 + x: 153 + y: 181 + width: 5.1874995 + height: 33.562496 + xOffset: 2.1249998 + yOffset: 31.874998 + xAdvance: 11.125 + scale: 1 + - id: 94 + x: 241 + y: 261 + width: 19.437498 + height: 17.499998 + xOffset: 1.8124999 + yOffset: 30.562498 + xAdvance: 23.1875 + scale: 1 + - id: 95 + x: 396 + y: 93 + width: 16.374998 + height: 2.6874998 + xOffset: 2.7499998 + yOffset: 0 + xAdvance: 22 + scale: 1 + - id: 96 + x: 149 + y: 31 + width: 5.6249995 + height: 4.6874995 + xOffset: 2.0624998 + yOffset: 31.437498 + xAdvance: 9.5625 + scale: 1 + - id: 97 + x: 418 + y: 150 + width: 19.999998 + height: 23.249998 + xOffset: 1.3749999 + yOffset: 22.812498 + xAdvance: 23.4375 + scale: 1 + - id: 98 + x: 273 + y: 227 + width: 21.562498 + height: 31.812498 + xOffset: 3.1874998 + yOffset: 31.437498 + xAdvance: 26.5625 + scale: 1 + - id: 99 + x: 328 + y: 189 + width: 20.562498 + height: 23.249998 + xOffset: 1.6249999 + yOffset: 22.812498 + xAdvance: 23.625 + scale: 1 + - id: 100 + x: 372 + y: 313 + width: 22.624998 + height: 31.812498 + xOffset: 1.6874999 + yOffset: 31.437498 + xAdvance: 26.75 + scale: 1 + - id: 101 + x: 272 + y: 270 + width: 22.249998 + height: 23.249998 + xOffset: 1.6249999 + yOffset: 22.812498 + xAdvance: 25.25 + scale: 1 + - id: 102 + x: 239 + y: 167 + width: 14.437499 + height: 31.812498 + xOffset: 1.1874999 + yOffset: 31.874998 + xAdvance: 14.1875 + scale: 1 + - id: 103 + x: 473 + y: 313 + width: 21.624998 + height: 32.374996 + xOffset: 1.6874999 + yOffset: 22.812498 + xAdvance: 26.5625 + scale: 1 + - id: 104 + x: 239 + y: 124 + width: 18.812498 + height: 31.374998 + xOffset: 3.1874998 + yOffset: 31.437498 + xAdvance: 25.0625 + scale: 1 + - id: 105 + x: 152 + y: 90 + width: 2.8749998 + height: 31.374998 + xOffset: 3.1874998 + yOffset: 31.437498 + xAdvance: 9.375 + scale: 1 + - id: 106 + x: 187 + y: 330 + width: 11.437499 + height: 39.187496 + xOffset: -5.0624995 + yOffset: 31.437498 + xAdvance: 9.6875 + scale: 1 + - id: 107 + x: 307 + y: 304 + width: 19.124998 + height: 31.374998 + xOffset: 3.1874998 + yOffset: 31.437498 + xAdvance: 22.8125 + scale: 1 + - id: 108 + x: 199 + y: 73 + width: 8.374999 + height: 31.624998 + xOffset: 3.3124998 + yOffset: 31.437498 + xAdvance: 11.6875 + scale: 1 + - id: 109 + x: 421 + y: 483 + width: 33.312496 + height: 22.812498 + xOffset: 3.1874998 + yOffset: 22.812498 + xAdvance: 39.5 + scale: 1 + - id: 110 + x: 364 + y: 70 + width: 18.812498 + height: 22.812498 + xOffset: 3.1874998 + yOffset: 22.812498 + xAdvance: 25.0625 + scale: 1 + - id: 111 + x: 306 + y: 269 + width: 22.249998 + height: 23.249998 + xOffset: 1.6249999 + yOffset: 22.812498 + xAdvance: 25.5625 + scale: 1 + - id: 112 + x: 475 + y: 227 + width: 21.562498 + height: 31.999998 + xOffset: 3.1874998 + yOffset: 22.812498 + xAdvance: 26.5625 + scale: 1 + - id: 113 + x: 373 + y: 270 + width: 22.624998 + height: 31.937498 + xOffset: 1.6874999 + yOffset: 22.812498 + xAdvance: 26.5625 + scale: 1 + - id: 114 + x: 391 + y: 36 + width: 11.124999 + height: 22.562498 + xOffset: 3.1874998 + yOffset: 22.562498 + xAdvance: 15.0625 + scale: 1 + - id: 115 + x: 331 + y: 40 + width: 18.124998 + height: 23.249998 + xOffset: 1.1874999 + yOffset: 22.812498 + xAdvance: 20.9375 + scale: 1 + - id: 116 + x: 394 + y: 149 + width: 12.937499 + height: 30.249998 + xOffset: 1.0624999 + yOffset: 29.999998 + xAdvance: 14.375 + scale: 1 + - id: 117 + x: 449 + y: 151 + width: 20.187498 + height: 22.812498 + xOffset: 2.9999998 + yOffset: 22.437498 + xAdvance: 25.5625 + scale: 1 + - id: 118 + x: 208 + y: 210 + width: 21.312498 + height: 22.374998 + xOffset: 0.81249994 + yOffset: 22.437498 + xAdvance: 22.9375 + scale: 1 + - id: 119 + x: 466 + y: 483 + width: 33.687496 + height: 22.374998 + xOffset: 0.62499994 + yOffset: 22.437498 + xAdvance: 34.9375 + scale: 1 + - id: 120 + x: 476 + y: 116 + width: 20.374998 + height: 22.374998 + xOffset: 0.62499994 + yOffset: 22.437498 + xAdvance: 21.6875 + scale: 1 + - id: 121 + x: 166 + y: 73 + width: 21.812498 + height: 31.937498 + xOffset: 0.62499994 + yOffset: 22.437498 + xAdvance: 23.3125 + scale: 1 + - id: 122 + x: 361 + y: 36 + width: 18.312498 + height: 22.374998 + xOffset: 1.3124999 + yOffset: 22.437498 + xAdvance: 21.1875 + scale: 1 + - id: 123 + x: 114 + y: 33 + width: 6.7499995 + height: 33.124996 + xOffset: 2.2499998 + yOffset: 31.874998 + xAdvance: 11.125 + scale: 1 + - id: 124 + x: 65 + y: 128 + width: 2.5624998 + height: 38.874996 + xOffset: 3.6874998 + yOffset: 33.374996 + xAdvance: 9.9375 + scale: 1 + - id: 125 + x: 153 + y: 136 + width: 6.6874995 + height: 33.124996 + xOffset: 2.1249998 + yOffset: 31.874998 + xAdvance: 11.125 + scale: 1 + - id: 126 + x: 6 + y: 8 + width: 16.374998 + height: 4.4374995 + xOffset: 2.8124998 + yOffset: 14.812499 + xAdvance: 22 + scale: 1 + - id: 160 + x: 6 + y: 517 + width: 0 + height: 0 + xOffset: 0 + yOffset: 0 + xAdvance: 10.9375 + scale: 1 + - id: 161 + x: 462 + y: 109 + width: 2.8749998 + height: 30.812498 + xOffset: 3.8749998 + yOffset: 30.749998 + xAdvance: 10.8125 + scale: 1 + - id: 162 + x: 209 + y: 286 + width: 20.562498 + height: 32.937496 + xOffset: 1.8124999 + yOffset: 27.749998 + xAdvance: 24.125 + scale: 1 + - id: 163 + x: 251 + y: 81 + width: 17.374998 + height: 31.374998 + xOffset: 2.1874998 + yOffset: 30.749998 + xAdvance: 21.4375 + scale: 1 + - id: 164 + x: 252 + y: 8 + width: 18.624998 + height: 18.312498 + xOffset: 2.2499998 + yOffset: 23.749998 + xAdvance: 23.0625 + scale: 1 + - id: 165 + x: 372 + y: 356 + width: 26.624998 + height: 30.499998 + xOffset: 1.1874999 + yOffset: 30.562498 + xAdvance: 29.0625 + scale: 1 + - id: 166 + x: 71 + y: 78 + width: 2.5624998 + height: 38.874996 + xOffset: 3.6874998 + yOffset: 33.374996 + xAdvance: 10.0625 + scale: 1 + - id: 167 + x: 45 + y: 30 + width: 17.937498 + height: 34.562496 + xOffset: 1.9999999 + yOffset: 30.749998 + xAdvance: 21.75 + scale: 1 + - id: 168 + x: 290 + y: 38 + width: 8.874999 + height: 3.9999998 + xOffset: 2.5624998 + yOffset: 31.312498 + xAdvance: 14.125 + scale: 1 + - id: 169 + x: 244 + y: 474 + width: 31.624998 + height: 31.062498 + xOffset: 2.0624998 + yOffset: 30.749998 + xAdvance: 35.75 + scale: 1 + - id: 170 + x: 109 + y: 6 + width: 14.124999 + height: 15.624999 + xOffset: 2.0624998 + yOffset: 30.562498 + xAdvance: 18.6875 + scale: 1 + - id: 171 + x: 476 + y: 88 + width: 20.187498 + height: 16.687498 + xOffset: 1.7499999 + yOffset: 19.562498 + xAdvance: 24.625 + scale: 1 + - id: 172 + x: 160 + y: 9 + width: 18.874998 + height: 10.187499 + xOffset: 3.1249998 + yOffset: 15.687499 + xAdvance: 25 + scale: 1 + - id: 173 + x: 85 + y: 78 + width: 18.874998 + height: 2.6874998 + xOffset: 2.7499998 + yOffset: 13.124999 + xAdvance: 24.5 + scale: 1 + - id: 174 + x: 287 + y: 474 + width: 31.624998 + height: 31.062498 + xOffset: 2.0624998 + yOffset: 30.749998 + xAdvance: 35.75 + scale: 1 + - id: 175 + x: 115 + y: 78 + width: 12.437499 + height: 1.9999999 + xOffset: 2.3124998 + yOffset: 30.562498 + xAdvance: 17 + scale: 1 + - id: 176 + x: 414 + y: 55 + width: 7.1874995 + height: 7.1249995 + xOffset: 2.1249998 + yOffset: 31.187498 + xAdvance: 11.4375 + scale: 1 + - id: 177 + x: 227 + y: 6 + width: 13.874999 + height: 20.312498 + xOffset: 3.0624998 + yOffset: 22.937498 + xAdvance: 20.0625 + scale: 1 + - id: 178 + x: 282 + y: 9 + width: 13.437499 + height: 17.374998 + xOffset: 1.4999999 + yOffset: 34.874996 + xAdvance: 16.6875 + scale: 1 + - id: 179 + x: 333 + y: 11 + width: 13.562499 + height: 17.624998 + xOffset: 1.4999999 + yOffset: 34.874996 + xAdvance: 16.75 + scale: 1 + - id: 180 + x: 433 + y: 55 + width: 5.6249995 + height: 4.6874995 + xOffset: 2.0624998 + yOffset: 31.437498 + xAdvance: 9.5625 + scale: 1 + - id: 181 + x: 219 + y: 81 + width: 20.249998 + height: 31.499998 + xOffset: 3.4999998 + yOffset: 22.437498 + xAdvance: 26.6875 + scale: 1 + - id: 182 + x: 338 + y: 346 + width: 22.499998 + height: 33.937496 + xOffset: 1.4374999 + yOffset: 30.562498 + xAdvance: 25.875 + scale: 1 + - id: 183 + x: 461 + y: 39 + width: 2.4999998 + height: 4.8124995 + xOffset: 2.7499998 + yOffset: 15.437499 + xAdvance: 8.125 + scale: 1 + - id: 184 + x: 420 + y: 16 + width: 8.624999 + height: 8.312499 + xOffset: 0.93749994 + yOffset: 0.81249994 + xAdvance: 12.1875 + scale: 1 + - id: 185 + x: 310 + y: 32 + width: 9.312499 + height: 17.437498 + xOffset: 1.4374999 + yOffset: 34.874996 + xAdvance: 11.6875 + scale: 1 + - id: 186 + x: 82 + y: 6 + width: 15.562499 + height: 15.624999 + xOffset: 1.8749999 + yOffset: 30.562498 + xAdvance: 19.3125 + scale: 1 + - id: 187 + x: 332 + y: 75 + width: 20.187498 + height: 16.687498 + xOffset: 2.6874998 + yOffset: 19.562498 + xAdvance: 24.625 + scale: 1 + - id: 188 + x: 113 + y: 474 + width: 32.062496 + height: 31.624998 + xOffset: 1.8749999 + yOffset: 31.437498 + xAdvance: 35.5 + scale: 1 + - id: 189 + x: 60 + y: 432 + width: 33.437496 + height: 31.624998 + xOffset: 1.8749999 + yOffset: 31.437498 + xAdvance: 37.125 + scale: 1 + - id: 190 + x: 157 + y: 474 + width: 32.499996 + height: 31.624998 + xOffset: 1.7499999 + yOffset: 31.437498 + xAdvance: 36 + scale: 1 + - id: 191 + x: 396 + y: 107 + width: 17.374998 + height: 30.937498 + xOffset: 1.4374999 + yOffset: 21.812498 + xAdvance: 20.1875 + scale: 1 + - id: 192 + x: 6 + y: 126 + width: 27.999998 + height: 39.437496 + xOffset: 0.49999997 + yOffset: 39.437496 + xAdvance: 29.0625 + scale: 1 + - id: 193 + x: 6 + y: 75 + width: 27.999998 + height: 39.437496 + xOffset: 0.49999997 + yOffset: 39.437496 + xAdvance: 29.0625 + scale: 1 + - id: 194 + x: 6 + y: 24 + width: 27.999998 + height: 39.437496 + xOffset: 0.49999997 + yOffset: 39.437496 + xAdvance: 29.0625 + scale: 1 + - id: 195 + x: 46 + y: 381 + width: 27.999998 + height: 39.437496 + xOffset: 0.49999997 + yOffset: 39.437496 + xAdvance: 29.0625 + scale: 1 + - id: 196 + x: 46 + y: 330 + width: 27.999998 + height: 39.312496 + xOffset: 0.49999997 + yOffset: 39.312496 + xAdvance: 29.0625 + scale: 1 + - id: 197 + x: 46 + y: 279 + width: 27.999998 + height: 39.437496 + xOffset: 0.49999997 + yOffset: 39.437496 + xAdvance: 29.0625 + scale: 1 + - id: 198 + x: 61 + y: 475 + width: 40.749996 + height: 30.499998 + xOffset: -1.1249999 + yOffset: 30.562498 + xAdvance: 41.3125 + scale: 1 + - id: 199 + x: 46 + y: 178 + width: 26.374998 + height: 38.249996 + xOffset: 1.6249999 + yOffset: 30.749998 + xAdvance: 29.375 + scale: 1 + - id: 200 + x: 157 + y: 381 + width: 20.499998 + height: 39.437496 + xOffset: 3.8124998 + yOffset: 39.437496 + xAdvance: 26.1875 + scale: 1 + - id: 201 + x: 155 + y: 330 + width: 20.499998 + height: 39.437496 + xOffset: 3.8124998 + yOffset: 39.437496 + xAdvance: 26.1875 + scale: 1 + - id: 202 + x: 155 + y: 279 + width: 20.499998 + height: 39.437496 + xOffset: 3.8124998 + yOffset: 39.437496 + xAdvance: 26.1875 + scale: 1 + - id: 203 + x: 121 + y: 175 + width: 20.499998 + height: 39.312496 + xOffset: 3.8124998 + yOffset: 39.312496 + xAdvance: 26.1875 + scale: 1 + - id: 204 + x: 210 + y: 331 + width: 5.6249995 + height: 39.437496 + xOffset: 1.3124999 + yOffset: 39.437496 + xAdvance: 10.6875 + scale: 1 + - id: 205 + x: 154 + y: 227 + width: 5.6874995 + height: 39.437496 + xOffset: 3.6249998 + yOffset: 39.437496 + xAdvance: 10.6875 + scale: 1 + - id: 206 + x: 187 + y: 279 + width: 10.624999 + height: 39.437496 + xOffset: 0 + yOffset: 39.437496 + xAdvance: 10.6875 + scale: 1 + - id: 207 + x: 45 + y: 126 + width: 8.874999 + height: 39.312496 + xOffset: 0.81249994 + yOffset: 39.312496 + xAdvance: 10.6875 + scale: 1 + - id: 208 + x: 372 + y: 398 + width: 27.624998 + height: 30.499998 + xOffset: 1.4374999 + yOffset: 30.562498 + xAdvance: 31 + scale: 1 + - id: 209 + x: 85 + y: 381 + width: 25.562498 + height: 39.437496 + xOffset: 3.8124998 + yOffset: 39.437496 + xAdvance: 33.1875 + scale: 1 + - id: 210 + x: 6 + y: 381 + width: 28.624998 + height: 39.624996 + xOffset: 1.7499999 + yOffset: 39.437496 + xAdvance: 32.3125 + scale: 1 + - id: 211 + x: 6 + y: 330 + width: 28.624998 + height: 39.624996 + xOffset: 1.7499999 + yOffset: 39.437496 + xAdvance: 32.3125 + scale: 1 + - id: 212 + x: 6 + y: 279 + width: 28.624998 + height: 39.624996 + xOffset: 1.7499999 + yOffset: 39.437496 + xAdvance: 32.3125 + scale: 1 + - id: 213 + x: 6 + y: 228 + width: 28.624998 + height: 39.624996 + xOffset: 1.7499999 + yOffset: 39.437496 + xAdvance: 32.3125 + scale: 1 + - id: 214 + x: 6 + y: 177 + width: 28.624998 + height: 39.499996 + xOffset: 1.7499999 + yOffset: 39.312496 + xAdvance: 32.3125 + scale: 1 + - id: 215 + x: 307 + y: 6 + width: 14.187499 + height: 14.187499 + xOffset: 2.7499998 + yOffset: 18.812498 + xAdvance: 19.625 + scale: 1 + - id: 216 + x: 372 + y: 440 + width: 28.624998 + height: 30.937498 + xOffset: 1.7499999 + yOffset: 30.749998 + xAdvance: 32.3125 + scale: 1 + - id: 217 + x: 85 + y: 330 + width: 25.749998 + height: 39.624996 + xOffset: 3.3749998 + yOffset: 39.437496 + xAdvance: 32.4375 + scale: 1 + - id: 218 + x: 85 + y: 279 + width: 25.749998 + height: 39.624996 + xOffset: 3.3749998 + yOffset: 39.437496 + xAdvance: 32.4375 + scale: 1 + - id: 219 + x: 84 + y: 228 + width: 25.749998 + height: 39.624996 + xOffset: 3.3749998 + yOffset: 39.437496 + xAdvance: 32.4375 + scale: 1 + - id: 220 + x: 84 + y: 177 + width: 25.749998 + height: 39.499996 + xOffset: 3.3749998 + yOffset: 39.312496 + xAdvance: 32.4375 + scale: 1 + - id: 221 + x: 46 + y: 228 + width: 26.624998 + height: 39.437496 + xOffset: 0.68749994 + yOffset: 39.437496 + xAdvance: 28 + scale: 1 + - id: 222 + x: 364 + y: 104 + width: 20.937498 + height: 30.499998 + xOffset: 3.8124998 + yOffset: 30.562498 + xAdvance: 25.9375 + scale: 1 + - id: 223 + x: 451 + y: 185 + width: 18.812498 + height: 30.937498 + xOffset: 3.1874998 + yOffset: 30.749998 + xAdvance: 23.6875 + scale: 1 + - id: 224 + x: 241 + y: 290 + width: 19.999998 + height: 31.812498 + xOffset: 1.3749999 + yOffset: 31.437498 + xAdvance: 23.4375 + scale: 1 + - id: 225 + x: 259 + y: 38 + width: 19.999998 + height: 31.812498 + xOffset: 1.3749999 + yOffset: 31.437498 + xAdvance: 23.4375 + scale: 1 + - id: 226 + x: 265 + y: 176 + width: 19.999998 + height: 31.812498 + xOffset: 1.3749999 + yOffset: 31.437498 + xAdvance: 23.4375 + scale: 1 + - id: 227 + x: 269 + y: 133 + width: 19.999998 + height: 31.812498 + xOffset: 1.3749999 + yOffset: 31.437498 + xAdvance: 23.4375 + scale: 1 + - id: 228 + x: 300 + y: 140 + width: 19.999998 + height: 31.687498 + xOffset: 1.3749999 + yOffset: 31.312498 + xAdvance: 23.4375 + scale: 1 + - id: 229 + x: 331 + y: 146 + width: 19.999998 + height: 31.812498 + xOffset: 1.3749999 + yOffset: 31.437498 + xAdvance: 23.4375 + scale: 1 + - id: 230 + x: 372 + y: 482 + width: 37.374996 + height: 23.249998 + xOffset: 1.3749999 + yOffset: 22.812498 + xAdvance: 40.0625 + scale: 1 + - id: 231 + x: 419 + y: 185 + width: 20.562498 + height: 30.374998 + xOffset: 1.6249999 + yOffset: 22.812498 + xAdvance: 23.625 + scale: 1 + - id: 232 + x: 407 + y: 270 + width: 22.249998 + height: 31.812498 + xOffset: 1.6249999 + yOffset: 31.437498 + xAdvance: 25.25 + scale: 1 + - id: 233 + x: 441 + y: 270 + width: 22.249998 + height: 31.812498 + xOffset: 1.6249999 + yOffset: 31.437498 + xAdvance: 25.25 + scale: 1 + - id: 234 + x: 306 + y: 226 + width: 22.249998 + height: 31.812498 + xOffset: 1.6249999 + yOffset: 31.437498 + xAdvance: 25.25 + scale: 1 + - id: 235 + x: 373 + y: 227 + width: 22.249998 + height: 31.687498 + xOffset: 1.6249999 + yOffset: 31.312498 + xAdvance: 25.25 + scale: 1 + - id: 236 + x: 149 + y: 47 + width: 5.6249995 + height: 31.374998 + xOffset: 0.68749994 + yOffset: 31.437498 + xAdvance: 9.375 + scale: 1 + - id: 237 + x: 445 + y: 107 + width: 5.6249995 + height: 31.374998 + xOffset: 2.9999998 + yOffset: 31.437498 + xAdvance: 9.375 + scale: 1 + - id: 238 + x: 280 + y: 90 + width: 10.624999 + height: 31.374998 + xOffset: -0.62499994 + yOffset: 31.437498 + xAdvance: 9.375 + scale: 1 + - id: 239 + x: 425 + y: 107 + width: 8.937499 + height: 31.249998 + xOffset: 0.18749999 + yOffset: 31.312498 + xAdvance: 9.375 + scale: 1 + - id: 240 + x: 407 + y: 227 + width: 22.249998 + height: 31.812498 + xOffset: 1.7499999 + yOffset: 31.437498 + xAdvance: 25.875 + scale: 1 + - id: 241 + x: 302 + y: 97 + width: 18.812498 + height: 31.374998 + xOffset: 3.1874998 + yOffset: 31.437498 + xAdvance: 25.0625 + scale: 1 + - id: 242 + x: 441 + y: 227 + width: 22.249998 + height: 31.812498 + xOffset: 1.6249999 + yOffset: 31.437498 + xAdvance: 25.5625 + scale: 1 + - id: 243 + x: 171 + y: 194 + width: 22.249998 + height: 31.812498 + xOffset: 1.6249999 + yOffset: 31.437498 + xAdvance: 25.5625 + scale: 1 + - id: 244 + x: 171 + y: 151 + width: 22.249998 + height: 31.812498 + xOffset: 1.6249999 + yOffset: 31.437498 + xAdvance: 25.5625 + scale: 1 + - id: 245 + x: 205 + y: 167 + width: 22.249998 + height: 31.812498 + xOffset: 1.6249999 + yOffset: 31.437498 + xAdvance: 25.5625 + scale: 1 + - id: 246 + x: 205 + y: 124 + width: 22.249998 + height: 31.687498 + xOffset: 1.6249999 + yOffset: 31.312498 + xAdvance: 25.5625 + scale: 1 + - id: 247 + x: 476 + y: 59 + width: 17.312498 + height: 17.874998 + xOffset: 2.8749998 + yOffset: 21.124998 + xAdvance: 23.0625 + scale: 1 + - id: 248 + x: 171 + y: 116 + width: 22.249998 + height: 23.249998 + xOffset: 1.6249999 + yOffset: 22.812498 + xAdvance: 25.5625 + scale: 1 + - id: 249 + x: 227 + y: 38 + width: 20.187498 + height: 31.812498 + xOffset: 2.9999998 + yOffset: 31.437498 + xAdvance: 25.5625 + scale: 1 + - id: 250 + x: 296 + y: 183 + width: 20.187498 + height: 31.812498 + xOffset: 2.9999998 + yOffset: 31.437498 + xAdvance: 25.5625 + scale: 1 + - id: 251 + x: 332 + y: 103 + width: 20.187498 + height: 31.812498 + xOffset: 2.9999998 + yOffset: 31.437498 + xAdvance: 25.5625 + scale: 1 + - id: 252 + x: 362 + y: 146 + width: 20.187498 + height: 31.687498 + xOffset: 2.9999998 + yOffset: 31.312498 + xAdvance: 25.5625 + scale: 1 + - id: 253 + x: 122 + y: 329 + width: 21.812498 + height: 40.937496 + xOffset: 0.62499994 + yOffset: 31.437498 + xAdvance: 23.3125 + scale: 1 + - id: 254 + x: 122 + y: 278 + width: 21.062498 + height: 39.687496 + xOffset: 3.1874998 + yOffset: 30.562498 + xAdvance: 25.9375 + scale: 1 + - id: 255 + x: 121 + y: 226 + width: 21.812498 + height: 40.812496 + xOffset: 0.62499994 + yOffset: 31.312498 + xAdvance: 23.3125 + scale: 1 + - id: 8194 + x: 6 + y: 517 + width: 0 + height: 0 + xOffset: 0 + yOffset: 0 + xAdvance: 24.875 + scale: 1 + - id: 8195 + x: 6 + y: 517 + width: 0 + height: 0 + xOffset: 0 + yOffset: 0 + xAdvance: 39.375 + scale: 1 + - id: 8211 + x: 190 + y: 17 + width: 18.874998 + height: 2.6874998 + xOffset: 2.7499998 + yOffset: 13.124999 + xAdvance: 24.5 + scale: 1 + - id: 8212 + x: 227 + y: 333 + width: 33.124996 + height: 2.6874998 + xOffset: 2.7499998 + yOffset: 13.124999 + xAdvance: 38.75 + scale: 1 + - id: 8216 + x: 440 + y: 16 + width: 2.8749998 + height: 8.999999 + xOffset: 2.7499998 + yOffset: 31.437498 + xAdvance: 8.4375 + scale: 1 + - id: 8217 + x: 496 + y: 39 + width: 2.8749998 + height: 8.999999 + xOffset: 2.7499998 + yOffset: 31.437498 + xAdvance: 8.1875 + scale: 1 + - id: 8218 + x: 493 + y: 19 + width: 2.8124998 + height: 8.874999 + xOffset: 3.4374998 + yOffset: 4.4374995 + xAdvance: 9.6875 + scale: 1 + - id: 8220 + x: 476 + y: 39 + width: 8.062499 + height: 8.999999 + xOffset: 2.7499998 + yOffset: 31.437498 + xAdvance: 13.5625 + scale: 1 + - id: 8221 + x: 454 + y: 19 + width: 8.062499 + height: 8.999999 + xOffset: 2.7499998 + yOffset: 31.437498 + xAdvance: 13.375 + scale: 1 + - id: 8222 + x: 474 + y: 19 + width: 7.9374995 + height: 8.874999 + xOffset: 3.4374998 + yOffset: 4.4374995 + xAdvance: 14.75 + scale: 1 + - id: 8224 + x: 189 + y: 382 + width: 14.124999 + height: 38.874996 + xOffset: 1.6249999 + yOffset: 33.374996 + xAdvance: 17.4375 + scale: 1 + - id: 8225 + x: 45 + y: 76 + width: 14.124999 + height: 38.874996 + xOffset: 1.7499999 + yOffset: 33.374996 + xAdvance: 17.625 + scale: 1 + - id: 8226 + x: 428 + y: 36 + width: 7.6874995 + height: 7.6874995 + xOffset: 3.6874998 + yOffset: 18.749998 + xAdvance: 15.0625 + scale: 1 + - id: 8230 + x: 424 + y: 91 + width: 14.062499 + height: 4.1874995 + xOffset: 2.7499998 + yOffset: 4.2499995 + xAdvance: 19.625 + scale: 1 + - id: 8240 + x: 6 + y: 432 + width: 42.437496 + height: 31.374998 + xOffset: 1.9374999 + yOffset: 30.999998 + xAdvance: 45.8125 + scale: 1 + - id: 8249 + x: 358 + y: 8 + width: 10.687499 + height: 16.687498 + xOffset: 1.7499999 + yOffset: 19.562498 + xAdvance: 15.125 + scale: 1 + - id: 8250 + x: 380 + y: 8 + width: 10.749999 + height: 16.687498 + xOffset: 2.6874998 + yOffset: 19.562498 + xAdvance: 15.125 + scale: 1 + - id: 8260 + x: 116 + y: 133 + width: 25.249998 + height: 30.874998 + xOffset: -9.312499 + yOffset: 30.749998 + xAdvance: 6.625 + scale: 1 + - id: 8364 + x: 105 + y: 432 + width: 30.749998 + height: 30.937498 + xOffset: 1.3749999 + yOffset: 30.749998 + xAdvance: 34.4375 + scale: 1 + - id: 8482 + x: 45 + y: 6 + width: 25.249998 + height: 12.374999 + xOffset: 2.6249998 + yOffset: 30.624998 + xAdvance: 31.25 + scale: 1 + m_KerningTable: + kerningPairs: [] + m_FontFeatureTable: + m_GlyphPairAdjustmentRecords: [] + fallbackFontAssets: [] + m_FallbackFontAssetTable: [] + m_CreationSettings: + sourceFontFileName: + sourceFontFileGUID: 205e5aca8ee9a453295be76ac7f047b3 + pointSizeSamplingMode: 0 + pointSize: 43 + padding: 5 + packingMode: 4 + atlasWidth: 512 + atlasHeight: 512 + characterSetSelectionMode: 1 + characterSequence: 32 - 126, 160 - 255, 8192 - 8303, 8364, 8482, 9633 + referencedFontAssetGUID: + referencedTextAssetGUID: + fontStyle: 0 + fontStyleModifier: 2 + renderMode: 6 + includeFontFeatures: 0 + m_FontWeightTable: + - regularTypeface: {fileID: 0} + italicTypeface: {fileID: 0} + - regularTypeface: {fileID: 0} + italicTypeface: {fileID: 0} + - regularTypeface: {fileID: 0} + italicTypeface: {fileID: 0} + - regularTypeface: {fileID: 0} + italicTypeface: {fileID: 0} + - regularTypeface: {fileID: 0} + italicTypeface: {fileID: 0} + - regularTypeface: {fileID: 0} + italicTypeface: {fileID: 0} + - regularTypeface: {fileID: 0} + italicTypeface: {fileID: 0} + - regularTypeface: {fileID: 0} + italicTypeface: {fileID: 0} + - regularTypeface: {fileID: 0} + italicTypeface: {fileID: 0} + - regularTypeface: {fileID: 0} + italicTypeface: {fileID: 0} + fontWeights: + - regularTypeface: {fileID: 0} + italicTypeface: {fileID: 0} + - regularTypeface: {fileID: 0} + italicTypeface: {fileID: 0} + - regularTypeface: {fileID: 0} + italicTypeface: {fileID: 0} + - regularTypeface: {fileID: 0} + italicTypeface: {fileID: 0} + - regularTypeface: {fileID: 0} + italicTypeface: {fileID: 0} + - regularTypeface: {fileID: 0} + italicTypeface: {fileID: 0} + - regularTypeface: {fileID: 0} + italicTypeface: {fileID: 0} + - regularTypeface: {fileID: 0} + italicTypeface: {fileID: 0} + - regularTypeface: {fileID: 0} + italicTypeface: {fileID: 0} + - regularTypeface: {fileID: 0} + italicTypeface: {fileID: 0} + normalStyle: 0 + normalSpacingOffset: 0 + boldStyle: 0.75 + boldSpacing: 7 + italicStyle: 35 + tabSize: 10 +--- !u!21 &21352953850445826 +Material: + serializedVersion: 6 + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_Name: Raleway-Regular SDF Material + m_Shader: {fileID: 4800000, guid: 68e6db2ebdc24f95958faec2be5558d6, type: 3} + m_ShaderKeywords: + m_LightmapFlags: 4 + m_EnableInstancingVariants: 0 + m_DoubleSidedGI: 0 + m_CustomRenderQueue: -1 + stringTagMap: {} + disabledShaderPasses: [] + m_SavedProperties: + serializedVersion: 3 + m_TexEnvs: + - _BumpMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _Cube: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _FaceTex: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _MainTex: + m_Texture: {fileID: 28773781249574104} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _OutlineTex: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + m_Floats: + - _Ambient: 0.5 + - _Bevel: 0.5 + - _BevelClamp: 0 + - _BevelOffset: 0 + - _BevelRoundness: 0 + - _BevelWidth: 0 + - _BumpFace: 0 + - _BumpOutline: 0 + - _ColorMask: 15 + - _Diffuse: 0.5 + - _FaceDilate: 0 + - _FaceUVSpeedX: 0 + - _FaceUVSpeedY: 0 + - _GlowInner: 0.05 + - _GlowOffset: 0 + - _GlowOuter: 0.05 + - _GlowPower: 0.75 + - _GradientScale: 6 + - _LightAngle: 3.1416 + - _MaskSoftnessX: 0 + - _MaskSoftnessY: 0 + - _OutlineSoftness: 0 + - _OutlineUVSpeedX: 0 + - _OutlineUVSpeedY: 0 + - _OutlineWidth: 0 + - _PerspectiveFilter: 0.875 + - _Reflectivity: 10 + - _ScaleRatioA: 0.8333333 + - _ScaleRatioB: 0.6770833 + - _ScaleRatioC: 0.6770833 + - _ScaleX: 1 + - _ScaleY: 1 + - _ShaderFlags: 0 + - _SpecularPower: 2 + - _Stencil: 0 + - _StencilComp: 8 + - _StencilOp: 0 + - _StencilReadMask: 255 + - _StencilWriteMask: 255 + - _TextureHeight: 512 + - _TextureWidth: 512 + - _UnderlayDilate: 0 + - _UnderlayOffsetX: 0 + - _UnderlayOffsetY: 0 + - _UnderlaySoftness: 0 + - _VertexOffsetX: 0 + - _VertexOffsetY: 0 + - _WeightBold: 0.75 + - _WeightNormal: 0 + m_Colors: + - _ClipRect: {r: -32767, g: -32767, b: 32767, a: 32767} + - _EnvMatrixRotation: {r: 0, g: 0, b: 0, a: 0} + - _FaceColor: {r: 1, g: 1, b: 1, a: 1} + - _GlowColor: {r: 0, g: 1, b: 0, a: 0.5} + - _MaskCoord: {r: 0, g: 0, b: 32767, a: 32767} + - _OutlineColor: {r: 0, g: 0, b: 0, a: 1} + - _ReflectFaceColor: {r: 0, g: 0, b: 0, a: 1} + - _ReflectOutlineColor: {r: 0, g: 0, b: 0, a: 1} + - _SpecularColor: {r: 1, g: 1, b: 1, a: 1} + - _UnderlayColor: {r: 0, g: 0, b: 0, a: 0.5} +--- !u!28 &28773781249574104 +Texture2D: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_Name: Raleway-Regular SDF Atlas + m_ImageContentsHash: + serializedVersion: 2 + Hash: 00000000000000000000000000000000 + m_ForcedFallbackFormat: 4 + m_DownscaleFallback: 0 + serializedVersion: 2 + m_Width: 512 + m_Height: 512 + m_CompleteImageSize: 262144 + m_TextureFormat: 1 + m_MipCount: 1 + m_IsReadable: 0 + m_StreamingMipmaps: 0 + m_StreamingMipmapsPriority: 0 + m_AlphaIsTransparency: 0 + m_ImageCount: 1 + m_TextureDimension: 2 + m_TextureSettings: + serializedVersion: 2 + m_FilterMode: 1 + m_Aniso: 1 + m_MipBias: 0 + m_WrapU: 0 + m_WrapV: 0 + m_WrapW: 0 + m_LightmapFormat: 0 + m_ColorSpace: 0 + image data: 262144 + _typelessdata: 000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000091014151515130d03000000000000040d1315151514100800000000000000000000000000000000000008101415151514110b0100000000000000000000030c12151515151515151515151515151515151515151515130e050000000000000000000008111617140d03000000000000000000000000000000000910131313120c030000000000000000000000000000020d1417161108000000000000000000000000000000050e121313130f0700000000000000000000000000000000000000000002070a0d0e0e0e0d0b07030000000000000000000000000000000000000000000000000000000000000000000407090b0b0b0a0806020000000000000000000000000000000000000000000000000000000000000000000307090b0b0b0a08060200000000000000000000000000000000000000081014151515141008000000000000000000000000000000000000070f1415151514100800000000000000000000000004090d0f0f0f0d0a0601000000000000000002070b0e0f0f0f0d09050000000000000000000000000000020e161b1b1b1b1a150c0100000000010c151a1b1b1b1b160e0300000000000a13191b1b1b1b181106000000000000000000000000000000090f121212110e0600000000090f121212110e06000000000000000000000000000000000000000000000000000000000000000000010f1c25292a2a2a2720150700000000081621282a2a2a29241b0e000000000000000000000000000000000e1a24292a2a2a2a261e12040000000000000000061420272a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2822170a00000000000000000c1a242b2c292014050000000000000000000000000003111d252829292620150700000000000000000000000005131f282c2b251a0d000000000000000000000000000b182227292928231a0d0000000000000000000000000000000000030a11171c1f2223232323201c18120c05000000000000000000000000000000000000000000000000000001080e14181c1f2021211f1e1a17110c05000000000000000000000000000000000000000000000000000000080e14181c1e2021211f1e1b17120c050000000000000000000000000000000e1a24292a2a2a29241a0e000000000000000000000000000000000d1a23292a2a2a29241b0e0000000000000000000811181e22242524221f1b150f0700000000070f161b2023252524221e1a140c04000000000000000000000313202a303030302f291e1101000001111e292f303030302b2113040000000d1b272e303030302c23170800000000000000000000000003111c242727272722190c0003111c242727272722190c00000000000000000000000000000000000000000000000000000000000000000e1f2d383f3f3f3f3c332515040000051626333c3f3f3f3e382c1e0d00000000000000000000000000000c1d2c373e3f3f3f3f3a30221100000000000000031424323b3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3d352819070000000000000d1b2a3740423d3223130300000000000000000000000010212f393e3e3e3b3225160400000000000000000000061423313c4140382b1b0b0000000000000000000000091a29353c3e3e3d372b1d0c0000000000000000000000000000040e171e252b3034373838383835312c262018100600000000000000000000000000000000000000000000020c141c23282d313435363634332f2b262019110800000000000000000000000000000000000000000000020b141c23282d313335363634332f2c26201911080000000000000000000000000c1d2c373e3f3f3f3e372c1d0c00000000000000000000000000000b1c2b373e3f3f3f3e382c1e0d00000000000005111b252c33373a3a3937342f2a231b120806111a232a3035383a3a3937332e2820170e0300000000000000000f21313d45464646443c2f1f0d00000d1f2f3c44464646453e3122100000081a2b3943464646464035261502000000000000000000000011212e383c3c3c3c362a1c0c11212e383c3c3c3c362a1c0c00000000000000000000000000000000000000000000000000000000000005182b3d4b53545454504333210e00000f22344450545454534a3c2b18040000000000000000000000000016293b4953545454544d402f1d0b0000000000000c2032424f545454545454545454545454545454545454545454514636241100000000000d1d2b394854574f423121100000000000000000000000081b2e3f4c5353534f4333210e00000000000000000004152432414f57544939281807000000000000000000001326384751535352493b2917030000000000000000000000000c17212a323a4045494c4e4e4e4c4a46413b342c23190b00000000000000000000000000000000000000000b151f2830373d4246494a4b4b4a4844403b342d241b1106000000000000000000000000000000000000000b151e2830373d4246484a4b4b4a4844403b342d241b11060000000000000000000016293b495354545453493b291602000000000000000000000000001528394953545454534a3c2a1704000000000816232e3840474c4f4f4e4c49443e372e251a17232d363e454a4d4f4f4e4c48433c342a20150800000000000000192c3e4f595b5b5b584d3c2a160200162a3c4d585b5b5b5a4f402d1a060011253849565b5b5b5b5344321f0b00000000000000000000091c2e3f4c52525251483a29171c2e3f4c52525251483a29170300000000000000000000000000000000000000000000000000000000000d2134485a686a6a6a61503d2a160304172b3e51626a6a6a675a4734200d000000000000000000000000001d314558676a6a6a695e4c3a281604000000000012273b4f616a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6454402c180000000005182a3b4957666c604f3e2e1d0c00000000060a0a0a0a0a0e23374b5d68686861513e29150000000000000000000e213342515f6b67574636251404000004090a0a0a0a0a1a2e4255646868665946321e090000000000000000000005111d29333d464e545a5e61636363625f5b554f483f36291a08000000000000000000000000000000000005111d28323b444b52575b5e5f60605f5d59544f4840372e24190c0000000000000000000000000000000004111d28313b434b51575b5e5f60605f5d59554f4840382e24190c0000000000000000001d314558676a6a6a675845311d08000000000000000000000000001b304457666a6a6a675947331e0900000008172634404b545b61646463615d58524a41372c2935404a52595e62646463615d5750473d3226190b0000000000001e33485c6d7070706b5945301b06001b3045596b7070706d5d49341f0a00162b40546770707070614e392510000000000000000000001125384c5d676767655846331f25384c5d676767655846331f0c000000000000000000000000000000000000000000000000000000000215293d5064778080806d5946321e0b0c2033475a6e8080807763503c2915010000000000000000000000001f344a5f748080807b6958453422100000000000152a3f546a8080808080808080808080808080808080808080806f5a442f1a000000000b2034475967757d6d5c4b3b2a19090007121b1f1f1f1f1f1f263b50667a7d7d6c57422c17060000000000000000152a3e51606f7d75645343322111010e181e1f1f1f1f1f1f32475c717d7d75604b36210c0000000000000000000715222f3b46505961686f737678787877746f6a635b5347372512000000000000000000000000000000000816232f3a454e575f666b707374767674726e69635c544a41362a1e1003000000000000000000000000000815222e3a444e575f666b707374767674726e69635c544b41362a1e1003000000000000001f344a5f74808080745f4a341f0a000000010506060501000000001e33485e7380808076604b36210b00000516263544525d67707678797876726d665e54493d3a47525d666d737779797876716b635a4f4437291a0b00000000001f344a5f74878787725c47321d07001d32475c7287878776604b36210b00172c42576c8387877b66503b2611000000000000000000061a2d4154687b7c7c76624e3b272d4154687b7c7c76624e3b2814010000000000000000000000000000000000000000000000000000000a1e3145586c8093958975614e3a271314283b4f63768a9593806c5844311d0a0000000000000000000000001d3246596b7d8f95877563513f2d1b0900000000152a3f546a8095959595959595959595959595959595959595866f5a442f1a000000000e23384d6377868b7a6959483726160817252f343434343434343b50667b91836c57422e24160600000000000000182e43586d7d8d827160503f2e1e111f2b3234343434343434475c72888c76604b36291d0e0000000000000007162533404c58636c757d83888c8f8f8f8c89847d776f6555422d190e070000000000000000000000000009182633404c57616b737a8086888b8c8b8a87837d7770675d53483b2e211203000000000000000000000008172633404c57616a737a8086888b8c8c8a88847d7770675d53483b2e2112030000000000001f344a5f748b958b745f4a341f0a00010c151a1b1b1a160d0100001e33485e7389958c76604b36210b00001122344453626f7a848b8f908f8c88827971675b4e4b58646f7982888d8f908f8b8680766d61554738291908000000001f344a5f748b9c88725c47321d07001d32475c72889c8c76604b36210b00172c42576c8398917b66503b26110000000000000000000f2236495d708493927d6a57432f35495c708493927d6a5743301c0900000000000000000000000000000000000000000000000000000012263a4d6074889ca0917d6a56432f1b1d3044576b7d92a29b8874604d392612000000000000000000000000172a3c4d5f71839592806e5c4a38271403000000152a3f546a8095988f8f8f8f8f8f8f8f8f8f8f8f8f8f8f8f8f866f5a442f1a000000000d22374b5e6f80908876665544332314253542494a4a4a4a4a4a4a50667b91836c57494134241200000000000000172c41556777898f7d6e5d4c3c2b1e2f3d474a4a4a4a4a4a4a4a5c72888c76604b453b2c1a0800000000000616253443515e6a7580898d87827d7b79797c80868c8b83705b463028221a1105000000000000000000000818273644515e6a747d878f8984807d7c7c7d82868b8c847a7065594c3f302112020000000000000000000817263543515d69747d878f8883807c7b7b7d82858a8c847a7065594c3f3021120200000000001f344a5f748ba08b745f4a341f0a01111e292f30302f2a1f1202001e33485e73899f8c76604b36210b00081b2e40526271828d98958e8b8b8c8f958d84786c5e5a6876828d96948f8b8b8c8f96938a8072655647372614020000001f344a5f748b9d88725c47321d07001d32475c72889d8c76604b36210b00172c42576c8398917b66503b2611000000000000000004172b3e5165798d9b9a86725f4b383e5165788c9a9a87735f4c3825110000000000000000000000000000000000000000000000000000071b2e4255697c90958b9a86725f4b372425384c6073879b8d94907c6955412e1a0700000000000000000000000c1e30425466778a9c8c7968564432200e000000152a3f546a8095937c78787878787878787878787878787878786d59442f1a00000000081c2f4151617283938472625141301f3043535e5f5f5f5f5f5f5f5f667b91836c5f5d52422f1b07000000000000122538495a6a7b8c8c7b6a594938283b4d5a5f5f5f5f5f5f5f5f5f72888c76605f584937241000000000031424344352616f7c888c8279726c68666465676b7178807d6a5642403d362d2316090000000000000000051626364553626f7b878d837b746f6b686767696c71777d878d83766a5d4e3f30200f0000000000000000051626354453616f7b878c837a736e6a676667686b70767d868d83766a5d4e3f30200f00000000001f344a5f748ba08b745f4a341f0a0d1f2f3c444646443d30200f001e33485e73899f8c76604b36210b001024374a5d6f82909a8c82797574767a8088928a7c6d69788794938980797674767b828a95918474655543321f0c0000001f344a5f748b9d88725c47321d07001d32475c72889d8c76604b36210b00172c42576c8398917b66503b261100000000000000000c1f33465a6d82958b8a8f7a67534046596d829585918f7b6854412d1a06000000000000000000000000000000000000000000000000000f23364a5d7185998c7d928e7a6753402c2d4154687b8f93808c9885715d4a36230f000000000000000000000001132536485a6c7d90978573614f3d2b19090909152a3f546a8095937c67636363636363636363636363636363635e503e2a160000000000122333445465758691806f5e4e3d2c364b60717474747474747474747b91837474705e4a35200b000000000000091b2c3c4c5d6d7d8f88776656453442576a74747474747474747474888c76747467533e2914000000000f213242526170808d86796f665e5853504f5052575d646d7061575756514a40342718080000000000000012233444546371808d867a7067605a5653535354575c636a737d8a887a6c5d4e3e2d1c0b0000000000000011233344536271808d85796f665f595552505253565b6269727d89887a6c5d4e3e2d1c0b000000001f344a5f748ba08b745f4a341f0a182a3c4d585b5b594e3e2c19071e33485e73899f8c76604b36210b00172b3f53677a8d9b8b7b6f65605f61656c75808d8c7b7788978f82756c65605f61666e778492938472614e3b28150100001f344a5f748b9d88725c47321d07001d32475c72889d8c76604b36210b00172c42576c8398917b66503b2611000000000000000114283b4f62768a96838296836f5c484e617589907c899884705d4936220f00000000000000000000000000000000000000000000000004182b3f5266798d9884768a97836f5c483536495d7084988a7684978d7966523e2b1704000000000000000000000007192b3d4f6072859791806d5a4937251e1e1e1e2a3f546a8095937c67524e4e4e4e4e4e4e4e4e4e4e4e4e4e4e4b4132210e00000000000516263647576878898e7c6b5b4a39374c62778b8b8b8b8b8b8b8b8b8b958b8b8b76604b36210b000000000000000e1e2e3f4f60708291857363524143586e848b8b8b8b8b8b8b8b8b8e908b8b806a543f2a15000000091b2c3e4f6070808f8274685c525256585a5856524b4950595e676c6c6b655d52453626160400000000000b1d2f40516271828f8273685d54565d6367686867645e5757616c78858b7b6c5c4b3a28160400000000000b1d2f40516171828f8073676666665e4d3d3b3c3e43546266666b77858b7b6c5c4b3a2816040000001f344a5f748ba08b745f4a341f102235475a6b70706c5b493624111e33485e73899f8c76604b36210b001c31455a6e8397907d6c5d514b4a4c5159626e7c8d8885968f7d706359504c4a4c525a66738394907d6b5844301b0600001f344a5f748b9d88725c47321d07001d32475c72889d8c76604b36210b00172c42576c8398917b66503b261100000000000000091d3044576a7d928e7a798d8b776450566a7d92887480948d7965513e2b170400000000000000000000000000000000000000000000000c2033475b6e82968f7b6e82958c7764503d3e5165788d96826e7b8f95826e5a4733200c0000000000000000000000000d2031435567798b9c8a786654423333333333333f546a8095937c67523c3838383838383838383838383838372f231404000000000000081929394a5a6b7b8c8a79685747374c62778d8d88888888888888889389888876604b36210b000000000000000011213142526373849282705f4f43586e849588888888888888888b8f8888806a543f2a150000001326384a5c6d7d8f82716356555f666b6e6f6e6b665f574f60707b828380796f625444332210000000000215283a4c5e6f808f8070635656606a72777c7d7d7c78726a61565a6775848a7968574533210e000000000215283a4c5e6f808f8070626e7b7b7b69543f2a2a3c4e60727b7b7b6c74848a7968574533210e0000001f344a5f748ba08b745f4a341f1b2d3f5264768787786653412e1c1e33485e73899f8c76604b36210b001f34495e73889d8974604e3f3635383d45505e6f8092949282706052463d3734383e4855657689847d715c47321c0700001f344a5f748b9d88725c47321d07001d32475c72889d8c76604b36210b00172c42576c8398917b66503b2611000000000000001225394c6073879a8672718593806c585f728693806c788c95826d5a46331f0c000000000000000000000000000000000000000000000115283b4f63768a9b887366798d94806c5945465a6d82958d796673879b8a76634f3b2814010000000000000000000000021426384a5b6d80919684715f4e48484848484848546a8095937c67523c2723232323232323232323232323221c120500000000000000000b1b2c3c4d5d6e7d8f86756453434a5f70808f807272727272727b918372726e5d4934200a00000000000000000314243445556676878f7d6d5c4b556878888777727272727272878c76727266523e291400000a1d30425567798b847363535966727a80848584807a736a5f6c7d8e8d898c8d827262513f2d1a060000000c1f3245586a7c8d827061525a67737d868d919494928e877d73675a57667586877563513e2b18050000000c1f3245586a7c8d8270615a6f8691806a543f2a3547596b7d908b7866657586877563513e2b180500001f344a5f748ba08b745f4a341f25374a5c6f82949683705e4c39271e33485e73899f8c76604b36210b001f344a5f748b9b866f5a45312220232933405162768b9b8875635242342e2e2e2e2e3747596c756f696355422e1a0600001f344a5f748b9d88725c47321d07001d32475c72889d8c76604b36210b00172c42576c8398917b66503b2611000000000000061a2d4154687c8f927d6a697c91887460677a8e8b77637084978a76624f3b281401000000000000000000000000000000000000000000091d3044576b809393806b5d7185998975614e4e62758a9985715d6b8093927d6b5744301d09000000000000000000000000081a2c3e50627386988f7d6b5e5e5e5e5e5e5e5e5e6a8095937c67523c27120e0e0e0e0e0e0e0e0e0e0e0e0d0800000000000000000000000e1e2f3f50607082928371615041516170808f806f605c5c667b91836c5c5b50402e1a0600000000000000000006162737485868798a8b7969584a5a6978898676665c5c5c70878c76605c564836230f00001225394c5f728589776655576876848f938f8d8f928f877c7174898a7a74778291806e5c4936220f00000115283b4e617588867463525c6a7885909a958f8d8c90969b9185786a5a5868798c806d5a4734210d00000115283b4e617588867463525a6f8695806a543f2f415364768991806d5b5768798c806d5a4734210d00001f344a5f748ba08b745f4a341f30425467798c9fa08e7b685644311f33485e73899f8c76604b36210b001f344a5f74899b86705b47382e2927282b4054687d9193806b58464343434343434343434e5c605b5550463e33241301001f344a5f748b9d88725c47321d07001d32475c72889d8c76604b36210b00172c42576c8398917b66503b26110000000000000f2236495d708598897561617589907c696f8396836f5b677b8f927d6a5744301d090000000000000000000000000000000000000000001225394c6073889b8b776355697c90917d6a56576a7d92907c695563778b9b8773604c382511000000000000000000000000000f21324456687a8c9b8976737373737373737373738095937c67523c27120f0f0f0f0f0f0f0f0f0f0b030000000000000000000910131313132132425263738490806e5d4c42526170828e7d6f5f50667b91836c57463f3223110000000000000000070d12151a2a3a4b5b6c7c8d877665544b5b6a7989857566565b70878c76604b43382a190700061a2d4155687c8f7d6c5a506375869589807977787c838a8f83788e826d5f6472848c7965523e2a160100081c3044586b7d8d7a6856596a798997968b827a77777a828b9696897868575c6e828a7764503d29150100081c3044586b7d8f7b6957455a6f8695806a543f3a4c5e708294867361504a5c6e828a7764503d291501001f344a5f748ba08b745f4a34283a4d5f7285979191988673614e3c2933485e73899f8c76604b36210b001d32475b7085988a7664554a433f3c3d3f44586d83978d78635858585858585858585858585858585858585142311e0a001f344a5f748b9d88725c47321d07001d32475c72889d8c76604b36210b00172c42576c8398917b66503b2611000000000004172b3e5265798d95826d59596c80948571778b8e7a67535f73879a8773604c3925120000000000000000000000000000000000000000061a2d4154687c8f97836f5b4d6074889986725f5f72879a8874604d5b6f83968f7b6854412d1a06000000000000000000000000031527394b5d6e82929489898989898989898989898998937c67523c2725252525252525252525241f160a00000000000003111d252829292929293545556676878c7b6a5a4943526271828d7d6e5e667b91836c57422c22140500000000000009131b22272a2c2c2d3d4e5e6f8090837261514c5b6b7a8a8474655b70878c76604b36271b0c00000c2135495d70858875614f586c809287776c646264686e76828f85927c68535566798c826d5944301c07000e23374b5f738885715d53657688989486786e666262666e788694978674615164778b806c5844301b07000e23374b5f738885725f4c445a6f8695806a543f4557697b8e8c7a6856443e5164778b806c5844301b07001f344a5f748ba08b745f4a343245576a7c8f98868597907d6b59463433485e73899f8c76604b36210b00182d4155697c8e948373675d5753525354585c70879b88736e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6d604d39240f001f344a5f748b9d88725c47321d07001d32475c72889d8c76604b36210b00172c42576c8398917b66503b261100000000000c2033475a6d82958c7865515064788c8d79809386725f4b576a7d928f7b6854412d1a06000000000000000000000000000000000000000e2236495d7085988f7a675345586c80938e7a67677b8f93806c584553677a8e9884705d4936220e000000000000000000000000000a1b2d3f51637587999f9a9999999999999999999aa5937c67523c3a3a3a3a3a3a3a3a3a3a3a3933271909000000000010212f393e3e3e3e3e3e3e3e485969798a897767564544536272828d7c6d667b91836c57422c1704000000000002101b262f363b3f42424240405161718290806f5e4d4d5c6b7b8b84736470878c76604b36210b00000011263b4f64788d806c59485d72878f7b6859504c4f535b64708092917b6651495c708588735f4a36210c0014283d52667a8f7c68555c6f8395978675675b524c4d525b6776878c867d68535b6f8388735e4a36210c0014283d52667a8f7d695542445a6f8695806a544b5163758793826f5d4b3934485b6f8388735e4a36210c001f344a5f748ba08b745f4a343d4f627487998d7a7a8d9b897663513e33485e73899f8c76604b36210b001226394c5e708290928579716c6867686a6c7176899c88848484848484848484848484848484848484847b66503b2611001f344a5f748b9d88725c47321d07001d32475c72889d8c76604b36210b00172c42576c8398917b66503b2611000000000114283b4f63768a9884705c49495c7084958288927d6a56434f63768a9885705d4936220f00000000000000000000000000000000000003172a3e5165798d9a86725f4b3d5063778b96836f7084978b7763503c4b5f72869a8c7865513e2a1703000000000000000000000000001022344658697b8d9b87848484848484848484879b937c67524f4f4f4f4f4f4f4f4f4f4f4f4e4537261400000000081b2e3f4c535353535353535353535c6c7c8d857363524145546373838c7b6c7b91836c57422c1702000000000312202d39424a505457575755514c536474858d7c6b5a4a4d5d6c7c8c837270878c76604b36210b000000162b4054697d8e7965514a5f748b8b74604c3c373a3f475262758a917b665041556a7d8e78644f3a251000182d42576b808a75615065788c9f8c796858493e38383e4958697c77716b604e53687c8e78644f3a261100182d42576b808b76624e3a445a6f8695806a6060606e8092887563513f2e2c4054687d8e78644f3a2611001f344a5f748ba08b745f4a35475a6c80929583706f829493826e5c4937485e73899f8c76604b36210b000a1d2f41526271808c968d86827d7c7c8082868b92a193919191919191919191919191919191919199927c67523c2712001f344a5f748b9d88725c47321d07001d32475c72889d8c76604b36210b00172c42576c8398917b66503b261100000000091d3044576b7d928f7b6854404054677b8f8c918975624e3b475a6e82958d7965523e2b170400000000000000000000000000000000000b1f33465a6d8295927d6a574334485b6f83968b77788c96836f5b483443576a7d9295826d5a46331f0b000000000000000000000000000516283a4c5e7082948d7a6e6e6e6e6e6e6e6f869b937c6764646464646464646464646464625543301b070000000e23374b5d686868686868686868685d5e6f809082705f4f3e45556473848b7b7b91836c57422c1702000000001021303e4b555e65696c6c6c6a6660585667778889786757464e5e6d7c8d8272878c76604b36210b0000001a2f44596e8389745f4a4a5f748b89745f4a3a34323335465b6f85917b66503b5065798f7c67523d2813001c31455a6f8586705c576b809497836f5c4a3a2c23232c3a4d5e67625d5750424e63778d7c68533e2914001c31455a6f8587715d4833445a6f86958076767676798c8e7c6a5c4f4132253a4f63788e7c68533e2914001f344a5f748ba08b745f4a405264778a9c8b786664778a9c8c79665441485e73899f8c76604b36210b00001224354453626e7982898f92949393928f8b868a9c877b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7d94917b66503b2611001f344a5f748b9d88725c4834200d061d32475c72889d8c76604c38241100182d42576c8398917b66503b2611000000001225394c6073879b8773604c38384c5f73879b95826d5a46323e5266798d95826d5a4733200c000000000000000000000000000000000014273b4e62758a9d8a76624e3b2c4053677a8e948082948e7a66533f2c3b4e62768a9d8975624e3b271400000000000000000000000000000b1d2f405264768898867462585858585a6f869b937c7979797979797979797979797979735e49341f0a00000011263b50667a7d7d7d7d7d7d7d7d7a66516171838f7d6d5c4c3b46556574848a7b91836c57422c17020000000a1c2e3f4e5c6872797d828383807a746b60596a7a8b86746453434f5e6e7d8d82878c76604b36210b0000001c32475c718786705b46485d72878d7966574e4a47484a4e586d83917b66503b4d62778c806a543f2a15001e33485d7288836d585b70869a907b67533f2d1c0f0f1d2f404c524e48423c354a5f7489826b56402b16001e33485d7288846e59442f445a6f86998c8c8c8c8c8c978a82796d5f503f2d364b60758b826b56402b16001f344a5f748ba08b745f4a4a5d6f829493806d5b5a6c80929683705e4c485e73899f8c76604b36210b00000617263544515c666e75797c7d807d7c797571879b897466666666666666666666666666666c82978e78634e39240f001f344a5f748ba08c7763503d2a190a1f34495e73899e8f7b6753402e1c0d1a2f44596e8499907965503b2610000000071a2e4155687c90927d6b5744303a4e6175899a9783705c4835364a5d7185998a76634f3b281401000000000000000000000000000000081c3043576a7d9296826e5a473324374b5f72869a89899986725e4b372433465a6e8296927d6a5743301c08000000000000000000000000000011233547596b7c8f92806e5c4a43445a6f869b9990909090909090909090909090908b745f4a341f0a00000011263b50667b91949494949494917b6650546475868b7a6959493847566675858a94836c57422c17020000001326394b5d6c7a858e93929191948f887d71625c6d7d8e8271615040505f6e7d8e8b8c76604b36210b0000001e33485e7389836c584344586c8091857569625f5c5d5f62686d83917b66503b4b60748b826b56402b16001f344a5f748a826b565d72889d8d77634d392410000012222f393c3a342e2833485d7288836c57422c17001f344a5f748a826b57412f445a6f8698898989898989898b928b7d6e5c4b3833485e7389836c57422c17001f344a5f748ba08b745f4a55677a8d9b887563514f627487998e7b6956485e73899f8c76604b36210b000000081726333f49525a606467686a686764606e83978e78645050505050505050505050505e72879b89745f4b36210c001f344a5f748ba093806c5a4837281c22374c60768ba09783705d4b3a2b1e1e33475c71879c8f78644f3a240f0000000f23364a5d7085988a76634f3b2f43566a7d92888e8c7764503d2e4155697c90927d6b5744301d090000000000000000000000000000001124384b5f72869a8d7966523e2b1b2f43566a7d929697917d6956422f1b2b3e5266798d9a86725f4c38241100000000000000000000000000000618293b4d5f7183958c79685644445a6f869b9b93939393939393939393939393938b745f4a341f0a00000011263b50667b808080888c8080807b66504657677789887766564638485766768695836c57422c17020000001a2e4256697a8b9289827c7b7c80868f8f82705e5f70828f806e5e4e4150606f808f8c76604b36210b0000001f344a5f748a826b56413c5062738492877d7773727274777c8388917b66503b4a5f7489826b56402b16001f344a5f748b806a545e73899f8c76604b36210c000004111d2427251f191d32475c7288836c57422c17001f344a5f748b826b56402f445a6f86958073737373737376808e8c7a67544132475c7288836c57422c17001f344a5f748ba08b745f4d5f728597907d6b594645576a7c8f998673614e5e73899f8c76604b36210b000000091a2b39434743464b5052535453524f54687c9094806c59473b3b3b3b3b3b3b3b425466798d96836e5a46311c08001f344a5f748ba097897766554639302f3d5165798fa1928d7a6958493c322e3a4d61768b9f8c76614c37220d000004172b3e5265798d95826e5a4733374b5f728693808694806c594531394d6074889b8773604c392512000000000000000000000000000005192c4054677a8f9986725e4a362313273a4e6175899e9d8975614e3a271323364a5e7286998f7b6754402d190600000000000000000000000000000c1e30425366778a9786736150445a6f869b937c7c7c7c7c7c7c7c7c7c7c7c7c7c7c745f4a341f0a0000000e23384c5e696a6a72888c766a6a695e4c39495a6b7b8d8574635343394858677686836c57422c17020000001f34495d71868f80756d6866676b727c8c8e7a66526273848d7c6b5b4b42516170808676604b36210b0000001f344a5f748a826b56413345566574828a928c898888898c918c88917b66503b4a5f748b826b56402b16001f344a5f748a826b565d72889d8d77634d39240f000313222e3537332c261f33485d7288836c57422c17001f344a5f748a826c57422f445a6f8695806a5e5e5e5e5e6270829585705d4834495e7389836c57422c17001f344a5f748ba08b745f586a7c8f988673604e3b3a4d5f728597917d6c595e73899f8c76604b36210b00000013263849575c564b403b3d3e3f3e3d4054687c919c8976645344372d27262b34404f607184968e7a67533f2b1602001f344a5f748b988390847364564c45444a5a6d80959a8689877667594e46434957697c919c88735e49341f0a00000c2033475a6e82958d7966523e2c3f53677a8e8c777d928975614d3a3145586c8093907c6855412e1a07000000000000000000000000000e2135485c708397917d6956422e1b162a3e5165788da0a08c7864513d2a161b2e4256697d919783705c4935210e000000000000000000000000000001132436485a6c7d9091806d5b4a5a6f869b937c6767676767676767676767676767645744311c07000000081c2f404d54545c72888c766054544d402f3c4d5d6e809082716150403a4959686f6f6654402b16010000001f34495e738380706359535052565f6d8094826b56556677888a796858484251616e6f6c5c48341f0a0000001e33485e7389836d58432e384756636d767d8285878785827c7783917b66503b4c61768c806a54402b15001e33485d7288836d585b70869a907b67533e2b180b0e2031404a4c47403a33364b5f748a806b56402b16001e33485d7288846e59442f445a6f8695806a54484848485265798e8c77624d384b60768b806b56402b16001f344a5f748ba08b745f6275889a8d7a6856433130425467798c9b8976645e73899f8c76604b36210b00000a1d3042556772685d5249423c3a3b414e5e70839797948271615449403c3b3f46515e6d7d8f9684715e4b37241000001f344a5f748b988385918274685f5a595d68778a9c94807d8f85776b615b585c6675879996826d5944301b06000115283b4f63768a9985715d4a3634485b6f83968470768a917d6956422e3d5064778b9885705d4a36230f00000000000000000000000002162a3d5164778c9c8975614e3a26131e3246596d82958f9094806c5945311e13263a4e6175899d8c7864513d2a1603000000000000000000000000000007192b3d4e607285968b7967555a6f869b937c6752525252525252525252525252504739281501000000001122303a3f475c72888c76604b3f3a30222f40506172838f806e5e4d3d3b4a565a5a5548372411000000001b3043556474786351463f40434953677c93826b5648596a7a8c87766555454352595a584e3f2d19050000001c32475c708786705b4631293845515a63686c6f70706f6c686e84907965503b4f64798f7c68533d2813001c31465b708586715c576b809596826d5a47362820212b3d4f5d615b554e463a4f63788d7c68533e2914001c31465b708587715d4834445a6f8695806a543f3333364b5f748b9079644f3b5064798e7c68533e2914001f344a5f748ba08b745f6d80929583705e4b392625374a5c6f829494826e5e73899f8c76604b36210b000012263a4c5f72857a6f655d56514f50555e6c7b8d95828f8f8072665c555150545a636f7c8c9a89786654412e1b0800001f344a5f748b9883778992867b736f6e717986969e8c78718292897d75706e70788593a08d7a66533e2a1601000a1d3144576b8092907c6955412e3c5063778b8f7b686e839686725e4a3734485c6f83978d7965523e2b170400000000000000000000000b1e3245596c809495826d5946321e13263a4e6175899885879a8975614d3a26121e3246596d829594806d5946321e0b0000000000000000000000000000000d1f31435567798b968572605a6f869b937c67523c3c3c3c3c3c3c3c3c3c3c3c3b352a1b0a000000000004121e2632475c72888c76604b36261e12223243546475868d7c6b5b4a3a3942444441382a1a0800000000142637465664675b50535455585d657183907c68533e4c5d6d7d8f84736252423f4444443d302110000000001a2f44586d8389745f4b372738464f4f4e53575a5b5b5a575c71878f78634e4054697d8e79644f3a251000182d42576b808b76615165798d9e8a776554453a35363c495a6d76706963564555697d8e78644f3a261100182d42576b808c77624e3a445a6f8695806a543f3232364a5f748b9079644f41556a7d8e78644f3a2611001f344a5f748ba08b7465778a9c8b786653412e1c1b2d3f526476899c8c796673899f8c76604b36210b0000172c4155697c8f8d8279716a66646569707c8a9a8a77829190837870696666686e76828d998b7b6b5a493724120000001f344a5f748b98836c7988958f888584878d979f90806e64738391918a8684868c95a29383705d4a37230f00001225394d6073889b8874604d393144586c8093887360667a8e8d7966523f2c4053677a8f95826e5a4733200c000000000000000000000013273a4e6175899c8d7865513e2a161b2e4256697d91907c7d92907c6955412e1a162a3e5165798d9c8975614e3a271300000000000000000000000000000002142537495b6d8091907d6c5a6f869b937c67523c27272727272727272727272621180c00000000000000010b1d32475c72888c76604b36210b04152536475868798a8a78685847372d2f2f2d261a0c0000000000091928384751525363686a6a6d7178828f8573604d393f4f607182918270604f3f2f2f2f2920120300000000162b3f54697d8f7966523e3044566364584d45444646445063778b8b76614c475b6f8489745f4b36210d0014283d52667a8f7c69555e71859794837263574e4b4b5059667789847d74614c5c708488735e4a36210c0014283d52667a8f7d695643445a6f8695806a54474747485365798e8c77624d495d708588735e4a36210c001f344a5f748ba08b746f829593806e5b49362411102235475a6c809196847173899f8c76604b36210b0000172c41566a79848f958d85807b79797d858e998c7c6b72828e968c847d7b7b7d838a9394897b6c5d4d3c2b1a070000001f344a5f748b97836c6a77838d969a999b9d978e827162556472808b949a999b9e999084746453412e1b0800001a2e4155687c9093806c584531394d60748893806c585f728696826e5b4734384b5f72869a8a76634f3b281400000000000000000000081b2f4256697d919885705d4935220f23364a5e7186998975768a9985715d4a36220f2236495d708598917d6a56422f1b08000000000000000000000000000000081a2c3e50617386988a77666f869b937c67523c2712121212121212121212110d050000000000000000040c1d32475c72888c76604b36210b000818293a4a5b6c7d8e867565554434231a181209000000000000000b1a29353c445a6f7d808083868c8d8375665543303242536474868f7d6d5d4c3c2b1b150d02000000000011263a4f63778c826d5a47394c6073766a6059535050545e6e809386715c485063768a836e5a45311c08000e23374b5f738885715e5467798c9c9082746a635f60646c7785959785725f5265788c806c5844301b07000e23374b5f738886725f4c445a6f8695806a5c5c5c5c5d6370829584705c485366798d806c5844301b07001f344a5f748ba08b747a8d9b897663513e2c190705182a3d4f617487998f7c73899f8c76604b36210b000013273a4c5b67717b858d9494908f90939891877b6d5e62707c8890979491919397948c82776a5d4e3f2f1f0e000000001f344a5f748282826c596670798287898988837a7062534655626d778086898b89857d726556473624110000001f34495d71858b8b7763503d2b4054697c8b8b776450576a7d8b8a76634e392f43566a7d8b8b806b57422d18000000000000000000001023374b5e728699907c6855412d1a172b3e5266798d95826d6e83968d7965523e2a171a2d4155697c909986725e4b372410000000000000000000000000000000000f21324456687a8c9584716f869b937c67523c2717171717171717171717171717140d03000000000b17202532475c72888c76604b36210b00000b1c2d3d4e5f6f80918372625241312110000000000000000000000b18222f445a6f86919194907d78706557483826253546576778898c7a6a5a49392818080000000000000c2034485c70838a7663514155697c887d746d68666668707c8c907c695647596c808e7a67533f2b160200081c3044576b7d8e7b68575c6d7d8e9c92877d77747678808995998a7967555d6f828a7763503d29150100081c3044576b7d8f7c6a58465a6f86958072727272727276828f8c7a67544d5e70838a7763503d291501001f344a5f748ba08b748598907d6b594634210f00000d20324457697c8f998774899f8c76604b36210b00000b1d2e3d49545f687179808588898988837c74695d4f525e6a747c8387898a888580786f65594d3f30211101000000001d324659686b6b6b6352535d666d717374726e675e52443744505b646b707374737069605547382918060000001f34495d707474746e5b48342a3f54687474746f5c484f6273747473624e39273b4e61727474746a57422d1800000000000000000005182c3f53667a8e9c8874604d3925121f33465a6e82958d7865667a8e95826d5a46321f1226394d6074889c8e7a67533f2c1805000000000000000000000000000000031527394b5c6e80928f7d6f869b937c67523c2c2c2c2c2c2c2c2c2c2c2c2c2c2c292014050000091a28343a3b475c72888c76604b36210b0000000f1f3041526273849180705f4f3e2e1e0d00000000000000000212202d3644596e7b7b7c7d838a8d83746553402c1928394a5a6b7c8d897767574636261505000000000005192c4054677a8d826e5d4b5a6f808c9088827c7b7a7d848e928372604d5364768985725e4b37241000000115283b4e61758786746353606f7d8a969a928d8b8b8e939c94897a6b5b596a7b8d806d5a4734210d00000115283b4e617587877564535a6f8697888888888888888b938c7d6e5c4a5a6a7c8e806d5a4734210d00001f344a5f748ba08b7d90988673604e3c29170400000315283a4c5f718496917d899f8c76604b36210b000000101f2c37424c555d656b6f727473726e6861574c3f414d5760686e72737473706b645c52473c2f2112030000000000172a3b4a545656565145414a52585c5e5f5d5a534b413426333e4850575b5e5f5e5b554d4337291a0b000000001a2e41515d5f5f5f5c503f2c25394a595f5f5f5d513f45555e5f5f5e5545331f3244545e5f5f5f5a4d3b28140000000000000000000d2034475b6f839693806c5845311d14273b4e62768a9985705d5f72869a8a75624e3b27131d3145586c809496836f5b4834210d00000000000000000000000000000000091b2d3f51637587998977869b937c67524242424242424242424242424242423d3223130100142738464f504c5c72888c76604b36210b0000000212233444556676888e7d6d5c4c3c2b1b0a000000000000001020303e4a4e5261666667696e768393836f5c47331e1b2c3c4d5e6f809086756454433323120200000000001124374a5d70828c7a695953636e78828a9093909093938c82736454506070828d7a6755422e1b080000000c1f3245576a7b8d827061535f6d78838b9195979794908a82766a5d59677788867463503e2b18050000000c1f3245576a7b8d8271625a6f868f8f8f8f8f8f8f8f8c857a6e605059687789867463503e2b180500001f344a5f748ba08b889a8e7b685644311f0c000000000a1d2f425467798c9c89899f8c76604b36210b000000010f1a252f39414950565a5d5f5e5d59544d443a2e2f3a444d54595d5e5f5e5b56504940352a1e11030000000000000c1d2d393f4040403e352e373e4347494a48453f382e2317212b343c4246484a4846413a3126190b000000000011233341494a4a4a483f32211b2d3b464a4a4a4840323743494a4a4943372716273643494a4a4a473d2f1e0b00000000000000000215293c5063778b9f8c7764503d29151b2f43576a7d92917c6955576a7d92927d6a56422f1b15293d5064778c9f8b7764503d291502000000000000000000000000000000001022334557697b8d9483869b937c67575757575757575757575757575757574f41301d09001c3044566365605c72888c76604b36210b000000000516273748596a7a8c8b7a6a59493928180700000000000b1d2e3e4e5c635c4e505052545a64768b8b76604c37210e1f2f405161728393837161514030200f0000000000081b2e405365768888776759515c656e757b808383827d776f6355505f6e7d8f826f5d4b382613000000000215283a4c5e6f808f807063575b666f777c808282807b756d64595c6976868a7968574533210e000000000215283a4c5e6f808f8071646d7878787878787878787771685d505c6977868a7968574533210e0000001f344a5f748ba097969683705e4c3927140200000000001225374a5c6e82949898a18c76604b36210b000000000008121c262e363c4145484a494845403931281d1e2831393f4448494a4846413c352c23180d0000000000000000000f1b252a2b2b2b29221b23292f32343433302b241b11060f1821282d31333433312d261e14080000000000000515232e34343434332d22140f1d2a32343434332d222630343434343026190a18252f34343434322b1f110000000000000000000a1d3144586c809397836f5c4834211024374b5f72869a8975614d4f63768a9a86725e4b3723102135485c70849793806c5845311e0a000000000000000000000000000000000416283a4c5e6f82948e869b937c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c5f4d38240f001f344a5f737a746c72888c76604b36210b0000000000091a2a3b4c5d6d7d8f8877675646362513000000000014283b4c5c6c7869594d4745485060748a8d77624c37220d122233445465768790806f5e4e3e2d1b08000000000011233547596a7a8b8676695c50525a61666a6c6c6b69635c5155616e7d8d85736352402e1b0900000000000b1d2f40516171828f8274695e555c62676a6b6b6a66615a59626d79878a7b6b5b4a3928160400000000000b1d2f40516171828f827569636363636363636363625d5558626d79878a7b6b5b4a392816040000001f344a5f748ba0ab9e8b786653412e1c0a000000000000081a2d3f516476899caca18c76604b36210b0000000000000009121a21282d3133343433302b251e150b0b151d252b2f33343433312d28211910060000000000000000000000091115161616140e070f151a1d1f1f1e1b171008000000050d14191c1e1f1e1c18120a01000000000000000005111a1f1f1f1f1e191004000c171d1f1f1f1e1911141b1f1f1f1f1b14090008131b1f1f1f1f1e180e010000000000000000001226394d6074889b8f7b6754402c19182c3f53677a8e95826d5945475b6e83968e7a66533f2b18192d4054687b8f9c8874614d3a261200000000000000000000000000000000000b1d2e40526476889a99a49383838383838383838383838383838383837b66503b2611001f344a5f748b888073888c76604b36210b0000000000000c1d2e3f4f6070829285746453422f1c07000000001a2f43576a7987776a615c5a5d636e7d9088735f4a35200b04152637475869798b8d7c6c5c4b382410000000000006182a3b4c5d6c7c8b87796d6359504d5255575757544f535c6672808d86766656453422110000000000000011223343536271808c867b7169615b5755565655595d646c75808b87796b5d4d3d2d1c0a0000000000000011223343536270808c877b7169615b5754535355585d646c75808b88796b5d4d3d2d1c0a000000001f344a5f748ba0a693826e5c49372411000000000000000010223447596c7d91a3a18c76604b36210b000000000000000000060d13181c1e1f1f1e1b17110a020000020a11161a1e1f1f1e1c18130d060000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001a2e4155697c909b87735f4c3824111f33475b6f83968d7965513e3f53667a8e96836e5b47331f1125384c6073889b907c6955422e1a00000000000000000000000000000000000011233547596a7c8fa0a09f98989898989898989898989898989898917b66503b2611001f344a5f7484899185888c76604b36210b0000000000000010213242536474869282715f4a35200b000000001b30465b708393887d75716f7176808c8f7d6b5844301c070008192a3a4b5c6d7d8f8a7967533e29140000000000000c1d2e3f4e5e6c7a888c80756c645e59565454565a5f666f79849084756758483827160500000000000000051526354453616e7a868e857c75706c6a68686a6d727880898c8276695c4e3f2f1f0f0000000000000000051525354452616e7a868e857c75706c6a68686a6d727880888c8276695c4e3f2f1f0f00000000001f344a5f748ba09b897663513e2c1a07000000000000000005172a3c4f61738699a08c76604b36210b000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000081014151515141008000000000000000000000000070f141515151410090000000000000000000000000000000000091014151515140f07000000000000000000000000000000000810141515151410080000000000000000001f34495d71858b8b806b5744301c0e23384d6277878785715d4936374b5f7286878776624d38230e1d3044586b808b8b85715d49341f0000000000000000000000000000000000000617293b4d5f70838b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b7b66503b2611001d32465a696e76828d928c76604b36210b000000000000000314253546576778897d705e4a35200b00000000182d41536574828d918a8786878b938a7d70604e3b28150100000c1c2d3e4f5f7082857767533e291400000000000000102130404e5c6a76828d898078726e6b6a6a6b6f747a838c8a80726557493a2a1a0a0000000000000000000817263543515d68737d868d8a8682807d7d8083878d8a83796f64584b3e302111010000000000000000000717263543505d68737d868d8a8682807d7d8083878d8b83796f64584b3e3021110100000000001f344a5f748b8b8b7d6b594634210f000000000000000000000d1f324456697b8b8b8b76604b36210b00000000000711181a1a1a1a19140c12171b1d1e1e1e1c19151009020000000000000000000000000000020e161b1b1b1b1a160d010000000e1a24292a2a2a29241a0e000000000000000000000c1923292a2a2a29251c0f0100000000000000000000000000010f1c25292a2a2a2923190c00000000000000000000000000000e1a24292a2a2a29241a0e00000000000000001f34495d7074747473634f3b28140d22374b5f6f7070706855422e2f4357697070706f5f4b37220d15283c506373747474705d49341f000000000000000000000000000000000000000c1e3041536574747474747474747474747474747474747474747473634f3a251000172a3c4c555a636f7d8b8b76604b36210b000000000000000007172839495a6b796e6052422f1b070000000011243647566470798286898b898680776d605142311f0c000000000f2031415263737567594937241000000000000000031222303e4c59646f79838b8d88838280808284898f8982776d615547392b1c0c0000000000000000000000081725333f4b56606a7279808487898b8b8986827c766f665c52473a2d2012030000000000000000000000081725323f4b5660697279808487898b8b8986837c766f665d52473a2d2012030000000000001f34495d7074747471614e3c291705000000000000000000000215273a4c5e70747474705e4a35200b000000000a19242c2f2f2f2f2e2820262c3032333333312e2a241d150c0200000000000000000000000313202a303030302f2a1f1202000c1d2c373e3f3f3f3e372c1d0c0000000000000000091b2a363e3f3f3f3f382d1f0e000000000000000000000000000e1f2d383f3f3f3f3e362a1b090000000000000000000000000c1d2c373e3f3f3f3e372c1d0c000000000000001a2e41515d5f5f5f5e554533200c081c3042515a5b5b5b574a3926273a4b575b5b5b5a5142301c080d203446565f5f5f5f5d51412e1a000000000000000000000000000000000000000012243648575f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f564634200c000d1e2e3a4146515f6e7474705e4a35200b0000000000000000000a1b2c3c4d5d645e504234241200000000000718293846525d656c71737473706b645a4f423324130200000000021324344555626357493b2c1a0800000000000000000412202e3b47525d666f767c8387898b8b8986827c756d645a4f44372a1b0d000000000000000000000000000715222e39444d565e656a6f7273747473706d68625b534a4035291d0f02000000000000000000000000000715212e39434d565e656a6f7273747473706d68625b534a4035291d0f02000000000000001a2e41515d5f5f5f5e5343311f0c0000000000000000000000000a1d2f41515d5f5f5f5d52422f1b07000000051728364044444444433b343b40454748484847433e3831281f150a000000000000000000000f21313d45464646443d30200e0016293b495354545453493b291602000000000000001427384852545454534b3d2b1805000000000000000000000005182b3d4b53545454524838271400000000000000000000000016293b495354545453493b29160000000000000011233341494a4a4a494337281604001324333f45464646433a2c1b1d2d3a43464646453f3324130004172838444a4a4a4a4941332311000000000000000000000000000000000000000007192a39444a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a44382817040000101d262c3441505c5f5f5d52422f1b07000000000000000000000e1e2f3f4a4f4b40322416060000000000000b1a2835404a52585c5e5f5e5c5750473d3224150600000000000006162737454e4e46392b1d0e0000000000000000000002101d2935404a535b62686d7073747473706c68615a51473d3226190c00000000000000000000000000000004101c27313a434a50555a5c5e5f5f5e5b58534e473f362d22170c0000000000000000000000000000000004101c27313a424a50555a5c5e5f5f5e5c58534e473f372d23170c00000000000000000011233341494a4a4a4942352614020000000000000000000000000012233341494a4a4a4941342412000000000e223546545a5a5a5a574c484f55595c5e5e5e5c58534c453b32271b10030000000000000000192c3e4f595b5b5b594e3d2b17001d314558676a6a6a675845311d08000000000000001a2f4356666a6a6a685a48341f0b00000000000000000000000b1f34485a686a6a6a6656432f1a0500000000000000000000001d314558676a6a6a675845311d000000000000000515232e34343434343026190a00000615222b303030302e271c0e0f1d282f303030302b22150600000b1a273034343434342e2315050000000000000000000000000000000000000000000c1b28313434343434343434343434343434343434343434343430271a0b000000000a121723323f484a4a494134241200000000000000000000000111212d363a372e22140600000000000000000b17232d363e4347494a4947423c342b201406000000000000000009192733393933281b0d000000000000000000000000000c18232d3740474e54585c5e5f5f5e5b58534d463e342b2014080000000000000000000000000000000000000a141e272f363c414547494a4a4846433f39332b231a10050000000000000000000000000000000000000009141e272f363c414547494a4a4847433f39332c231a1006000000000000000000000515232e34343434342f25170800000000000000000000000000000615232e34343434342e2416060000000013283d51646f6f6f6f6a595b63696e72737373706d6760584e44392d201304000000000000001e33485c6d7070706c5a46321d001f344a5f74808080745f4a341f0a000000000000001d32475c7280808077624c37220d00000000000000000000000d22374c6277808080725c47321d0700000000000000000000001f344a5f74808080745f4a341f000000000000000005111a1f1f1f1f1f1b1409000000000510171b1b1b1b1a140a00000b141a1b1b1b1b1710050000000009141c1f1f1f1f1f1a110500000000000000000000000000000000000000000000000a151c1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1c1409000000000000000514222d333434342e24160600000000000000000000000003101b2225221b11040000000000000000000006111a22292e32343434322e2821180e03000000000000000000000a161f24241f160a00000000000000000000000000000006111a242c333a3f4447484a4a4846433e39322a21180e030000000000000000000000000000000000000000010b131b21272c303234343433312e2a251f18100700000000000000000000000000000000000000000000010a131b21272c303234343433312e2a251f1810070000000000000000000000000005111a1f1f1f1f1f1b12070000000000000000000000000000000005111a1f1f1f1f1f1a12060000000000142a3f54697c86868676666f777d848789898986827b746b61564b3e312314040000000000001f344a5f74878787735e48331e001f344a5f748b958b745f4a341f0a000000000000001d32475c7288958d77624c37220d00000000000000000000000d22374c62778d9588725c47321d0700000000000000000000001f344a5f748b958b745f4a341f00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000410191e1f1f1f1a1206000000000000000000000000000000070d0f0d080000000000000000000000000000070f15191d1f1f1f1d19140d0500000000000000000000000000030b0f0f0b040000000000000000000000000000000000000710181f252a2f3233343433312e2a241e170e0500000000000000000000000000000000000000000000000000070d12171b1d1f1f1f1e1c1915100b04000000000000000000000000000000000000000000000000000000070d12171b1d1f1f1f1e1c1915110b040000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000011263a4d5e708294948378838b92989c9b9b9b9b9690887d74685c4f413223130300000000001f344a5f748b9c89735e48331e001f344a5f748ba08b745f4a341f0a000000000000001d32475c72889d8d77624c37220d00000000000000000000000d22374c62778d9d88725c47321d0700000000000000000000001f344a5f748ba08b745f4a341f000000000000000000000000050b0d0b05000000000000000000000002090e111212100c0700000000000001080d101212100d080100000000000000000000000000020d141716110800000000000000000000040d121313131313131313131313131313110a0100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000040b11161a1c1e1f1f1e1c19151009030000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000040b11161a1c1e1e1e1c19140f0902000000000000000000000000000b1e3041536476889a8f8b959a928c88868687898f959b91867a6d5f504131211000000000001f344a5f748b9f89735e48331e001f344a5f748ba08b745f4a341f0a000000000000001d32475c72889d8d77624c37220d00000000000000000000000d22374c62778d9d88725c47321d0700000000000000000000001f344a5f748ba08b745f4a341f00000000000000000000010e181f2220190f0100000000000000030d161d2326272725211b140a0000020c151c2225272725221c150b010000000000000000000005131f282c2b251a0d0000000000000000091621272929292929292929292929292928251e120400000000000000000000000000000000000000080f14191c1e1e1e1c1a16110c050000000000000000000000000000000000000000000000050c12171b1d1e1e1e1c191510090200000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000050b0d0b05000000000000000000000002090e111212100c0700000000000000000000000000000000000002080c0f111212110e0a0500000000000107090909090906010000000000000000000000000000050e181f262b2f32333333312d29241d160d0400000000000000000000000112243547596a7c8fa09e91877d7772706f707479828c97988b7d6e5f4f3f2e1d0b000000001f344a5f748b9f89735e48331e001f344a5f748ba08b745f4a341f0a000000000000001d32475c72889d8d77624c37220d00000000000000000000000d22374c62778d9d88725c47321d0700000000000000000000001f344a5f748ba08b745f4a341f00000000000000000002111f2b3437342c1f100000000000000915202a31373b3c3c3a362f271d1207141f2830373b3c3c3a3630281e13070000000000000000061423313c4140382b1b0b000000000000061827343c3e3e3e3e3e3e3e3e3e3e3e3e3e3e3a30231201000000000000000000000000000000010a141c23292d31333333322f2b26201911080000000000000000000000000000000000000007101920262c3032333333312e2a241d150c020000000000000000000000000000000000000000000000000000010e181e1f1f1f1f1b140900000000000000000000010b1114151514110a0000050e13151515130e050000000000000000000000000000000000010e181f2220190f0100000000000000030d161d2326272725211b130a0000000000000000000000000000060f161c212426272726231f1a130c03000b151b1e1e1e1e1e1b140a0000000000000000000000010c17212b333a40444748484846423e38312a21170d010000000000000000000c1e30415363738493a59883746a635d5b5a5c5f666f7985929b8d7d6d5d4c3a2816040000001f344a5f748b8b89735e48331e001f344a5f748ba08b745f4a341f0a000000000000001d32475c72889d8d77624c37220d00000000000000000000000d22374c62778d9d88725c47321d0700000000000000000000001f344a5f748ba08b745f4a341f00000000000000000212202f3d484c483d2e1d0d000000000b1a27323d454c5052524f4a433a2f231825313b444b5052524f4b443b3125170800000000000004152432414f575449392818070000000000112436455053535353535353535353535353534d41301e0a000000000000000000000000000008131d2730373e42464848484744403a342d241b1106000000000000000000000000000000030f1a232c343b40454748484847433e3831281f150a00000000000000000000000000000000000000000000000000111f2b32343434343026190a000000000000000004121e262a2a2a2a251c100a1722282a2a2a2822170a00000000000000000000000000000003111f2b3437342c1f100000000000000915202a31373b3c3c3a362f271d12050000000000000000000004101a232a3136393b3c3c3b38342e271f160d1c2830333333333330271b0c00000000000000000005121e2a343e474e54595c5e5e5d5b57524c453d342a1f1306000000000000000215283b4d5f7082929a909b8e7c6a59494644474b525c677382919c8c7a69584633210e0000001f34495d707474746f5c47321d001f344a5f748ba08b745f4a341f0a000000000000001d32475c72889d8d77624c37220d00000000000000000000000d22374c62778d9d88725c47321d0700000000000000000000001f344a5f748ba08b745f4a341f00000000000000000e20303e4d5a625b4c3b2b1a0900000a1a293844505960656767645e564c41332736434e585f646767645f574e433526170700000000000e213342515f6b6757463625140300000000172c40536368686868686868686868686868685f4d3a2511000000000000000000000000000d1a25303a434b52575b5d5e5e5c59544f4840372e23180c000000000000000000000000000815212c3640484f555a5c5e5e5e5c58534c453b32271b1003000000000000000000000000000000000000000000000b1e2f3d474a4a4a494337271603000000000000001122303a3f3f3f3f392e201928353d3f3f3f3d35281908000000000000000000000000000212212f3d484c483d2e1d0d000000000b1a27333d454c5052524f4a433a2f23150600000000000000000916222d363e454a4e505252504d48423b33291e2b3944484848484844392a190600000000000000071623303c47515a62696e71737372706c67605950473c302417090000000000000c1f3245586a7c8f9d8c7c8f9a88766453412f32373f4a566372829398877563503e2b180400001a2e41515d5f5f5f5d513f2c19001f344a5f748ba08b745f4a341f0a000000000000001d32475c72889d8d77624c37220d00000000000000000000000d22374c62778d9d88725c47321d0700000000000000000000001f344a5f748ba08b745f4a341f0000000000000000172b3d4e5c6b776a594838271605051728384755626c75797c7b7872695e5142364553606b73797c7c79736a6053443525140200000000152a3e51616f7d75645343322111000000001a2f445a6f7d7d7d7d7d7d7d7d7d7d7d7d7d7d68533e2813000000000000000000000002101e2b37424d565f666c70727373716e69635c544a4035291c0f01000000000000000000000b1926323e49535c636a6f72737373706d6760584e44392d20130400000000000000000000000000000000000000000014283b4d5a5f5f5f5e5545331f0b000000000000081c2f404d545454544c3e2c243646515454545146372512000000000000000000000000000e20303f4d5a625b4c3b2a1a0900000a1a293844505960656767645e564c41332415050000000000000a1927333f4952595f6366676765625d564f463b303949575e5e5e5e5e564836220e00000000000007162533414d59646d767d838789898886827b746c63594e4235271809000000000014283b4e6175889a91807083949482705e4d3b29232c3845546475879892806d5a4734200d000011233341494a4a4a4840322210001f344a5f748ba08b745f4a341f0a000000000000001d32475c72889d8d77624c37220d00000000000000000000000d22374c62778d9d88725c47321d0700000000000000000000001f344a5f748ba08b745f4a341f00000000000000001d32465a6c7a88776655453423131022354656657380898f92918d867c6f6151445463717d888f92918e887d71625343311f0d00000000182e43586d808e827160503f2e1e0d0000001a2f445a6f859494949494949494949494947d68533e2913000000000000000000000211202e3c48556069727a828688898987837d7770675d53473a2d1f100100000000000000000b1a293744505b666f777d848789898986827b746b61564b3e312314040000000000000000000000000000000000000000182d42576a74747473624e39240f0000000000000e23384c5e696a6a685c49362c4054646a6a6a6454412d1904000000000000000000000000172b3d4e5d6b776a594837271605051728384756626c75797c7b7872695e514233231100000000000919283745515c656d74787b7c7c7977716a62594e42485767737373737365513d281300000000000616253443515e6b76828a92979c9c9b9c9a96908980766b5f534536271808000000071c3044576b7d929986736576899a8e7c6a594735241a27364657697b8e9d8a7663503c281400001a2e41515d5f5f5f5d513f2c19001f344a5f748ba08b745f4a341f0f0f0f0f0f0f0f0f1d32475c72889d8d77624c37220d00000000000000000000000d22374c62778d9d88725c47321d0700000000000000000000001f344a5f748ba08b745f4a341f00000000000000001e33485d72839484736252413020192d4052647484918a827c7d848f8e806f5e4f617282908c837c7c838d8f8271604e3c291602000000172c41556778898f7d6e5d4c3b2b1a090000182e43586d8397867d7d7d7d7d7d7d7d7d7d7d68533e28130000000000000000000010202f3e4c5a66727c868f959a9c9b9b9c97928c847a7064584b3d2e1f0e000000000000000a1a29384754616d78838c93989c9b9b9b9b9690887d74685c4f413223130300000000000000000000000000000000000000192e43586e848b8b79644f3a250f00000000000011263b50667b80807964503b2f445a6f808080705c47321e090000000000000000000000001d32465a6c7a88776655453423121023354656657380898f92918d867c6f6151402f1d0a000000051627374655626e7982888e919392908c867d756b6053566675858989887767523d281300000000031424344352616f7c89949d948e89878687898e959c93897d706354453625140300000e22364b5f73879b907c69596b7c8f9a88766453412f1e18283a4c5e70859893806b57432f1b06001f34495d707474746f5c47321d001f344a5f748ba08b745f4a342525252525252525252532475c72889d8d77624c37220d00000000000000000000000d22374c62778d9d88725c47321d0700000000000000000000001f344a5f748ba08b745f4a341f00000000000000001a2e42556575869182705f4e3d2d2135495c6f829388796d6768717d8d8d7b69596c80908a7a6f68686f7b8b8f7d6c5945311d090000001225384a5a6a7b8c8c7b6a59493827160600162b3f54697d928873686868686868686868685f4d3a25110000000000000000000d1e2e3e4d5c6a77848f9998908b878686888c9299978d8276695b4c3d2c1b0a00000000000617273747566472808b969b928c88868687898f959b91867a6d5f504131211000000000000000000000000000000000000000192e43586e84999079644f3a250f0000000000000f24384d62768b937d6954402d41566a80948a75604c37230e0000000000000000000000001e33485d7283948473625241301f192d4052647484918a827c7d848f8e806f5e4c39261300000010223445556473808c9597918d8b8b8c909692887d716465748594978878695a4a37240f000000000f203142526170808e9a948a807973706f7074798089939b8f827263544332200e000013283d5165798e9c8873604d5f7083949482705e4d3b29171c2e4154687c909b87725e4935200c001f344a5f748b8b89735e48331e001f344a5f748ba08b745f4a3a3a3a3a3a3a3a3a3a3a3a3a475c72889d8d77624c37220d00000000000000000000000d22374c62778d9d88725c47321d0700000000000000000000001f344a5f748ba08b745f4a341f000000000000000013253747586878898e7d6c5b4b3a293b5064788c8d7a695b5254606f82948672617589907d6c5d53535d6c7d908975604c38230e000000091b2c3c4d5d6d7d8f88776656453423130211263b4f63778b8f7d6c5d53535353535353534d41301e0a000000000000000008192b3c4c5c6b7a8995998e847c76726f7072777d868f9a9487796a5b4a39281503000000001224354555657483909d92887d7772706f707479828c97988b7d6e5f4f3f2e1d0b000000000000050d11121212121212121212192e43586e84999079644f3a250f0500000000000a1f33485d718698836e5a45303c5165798f8f7a65513c28130000000000000000000000001b2f43556575869180705f4e3d2d2135495c6f829388796d6768717d8e8d7b6956422e1a0600071a2d3f5263738391988d847c777474777b838c968f8274748493988979695a4b3c2c1b08000000081a2c3e4f6070808f9d8f82766d655f5b5a5c5f656d76828e9c918271614f3d2b180500182d41566b809596826c5844536576899a8e7c6a594735231225394c6075899e8d78634e3a2510001f344a5f748b9f89735e48331e001f344a5f748ba08b745f4f4f4f4f4f4f4f4f4f4f4f4f4f4f5c72889d8d77624c37220d00000000000000000000000d22374c62778d9d88725c47321d0700000000000000000000001f344a5f748ba08b745f4a341f00000000000000000819293a4a5b6b7b8c8a79685847363f54697d9386715d4c3e425164788d8d78667b908974604e3f404e607589907a66513c2712000000000e1e2f3f4f60708291857363524130200f0c2034475b6e80918b7b6e635a534c443e3e3e3a30231201000000000000000113253748596a7a8a9994877b7068615d5a5b5d6269727c899697897868574532200d0000000b1e304152637384939a8d80746a635d5b5a5c5f666f7985929b8d7d6d5d4c3a281604000000000c182126272727272727272727272e43586e84999079644f3a2621180c00000000051a2e43576c829688735e4a35374b60758a94806a56412d18030202000000000000000000132637475868788a8e7d6c5b4a3a293b5064788c8d7a695b5254606f829486725d4935200b000f23374a5d6f829297887a706863605f62676f788491928483929989796a5b4b3c2d1e0e000000001325374a5c6d7d8f9d8e7d70645a514a4645474a515964707d8d9c90806d5a4734200c001b30455a6f8599917b67523e47596b7c8f9a88766452412f1d1d31465a6f8499927c68533d2814001f344a5f748b9f89735e48331e001f344a5f748ba08b746464646464646464646464646464646472889d8d77624c37220d00000000000000000000000d22374c62778d9d88725c47321d0700000000000000000000001f344a5f748ba08b745f4a341f0000000000000000000b1c2c3d4d5e6e7d8f877565544340566b8297836c58432e354a5f74899079687d9486705b463131465b7086937d68533e2913000000000011213242526373849282705f4e3e2d1c0c182b3e51627383908c80766e6760584e44382a1e120400000000000000000b1e30435566778898938476695e544d484546494e565f6b778695978674624f3c291500000215283b4d5f7082929a8b7c6e62574f494644474b525c677382919c8c7a69584633210e0000000a1b2a353b3c3c3c3c3c3c3c3c3c3c3c43586e84999079644f3c3b352a1b0a0000000a14293e52677c918d78644f3a32465b70859985705b46321d171717140d0200000000000008192a3a4a5b6b7c8d8a79685847363f54697d9386715d4b3e425164788d8d77634e39240f00162a3e5266798c9b8978695d544e4b4a4d535c6672828f9493998a7a6a5b4c3d2d1e0f00000000091c2f425567798b9c8f7d6f6053473d36313032363d47525f6e7d8f9c8a7763503b2611001e33485d72889d8d77634e393c4d5f7083959482705e4c3b29182c41566b809595806a55402b16001f344a5f748b9f89735e48331e001f344a5f748ba08b797979797979797979797979797979797979889d8d77624c37220d00000000000000000000000d22374c62778d9d88725c47321d0700000000000000000000001f344a5f748ba08b745f4a341f000000000000000000000e1f2f4050607082928372615140566b8296836e594533394c60758b8f79687d9387705c483536485d7187927c67523d281300000000000314243445556676878e7d6c5c4b3a2a190f213345556472808a938a837b746b6156483a2a19080000000002090d0e15283b4d6072849595857466584c4139333030343a424d5a6776889892806c58432e1900000c1f3245586a7c8e9d8c7b6c5e51453b34302f32373f4a566372829398877563503e2b180400001528394750525252525252525252525252586e8499907964525250473928150000101d262c394d62778c927d68543f2d41566b80948974604b372c2c2c2c281f13040000000000000c1c2c3d4d5e6e808f877565544340566b8297836c57422e354a5f748a9079644f3a250f001a2f44596d8296917d6b5a4c40393635383f4955627183989c8b7a6b5c4d3d2e1f0f00000000001225394c5f728597938270605142352a211c1b1d222a3541505f70838b827766513c2712001f344a5f748a9f8b76604b363041536577899b8e7c6a58473523293e53687d9397836c57422c17001f344a5f748b9f89735e48331e001f344a5f748ba09490909090909090909090909090909090909092a28d77624c37220d00000000000000000000000d22374c62778d9d88725c47321d0700000000000000000000001f344a5f748ba08b745f4a341f0000000000000000000001112232435363738590806e5e4d53687c9188746151454856687b8f8b7665798e8b77645346465364778c8d7964503b261100000000000006172737485869798a8b796958473726151627374654616c7680878e8f887d7366584837251200000009151e2323233144576a7d909a89776656483a2e252323232226303c4959697a8d867b6d59442f1a000014283b4e6175889a91806e5e4e403328201b1a1d232c3845546475879892806d5a4734200d00001c31445764676767676767676767676767676e84999079676767645744311c000d1e2e3a4142485d718797836d5944424251657a8f8f79655042424242413c312212000000000000000e1f2f4050617182928372615040566b8296836e594532394c60758b8f79644f3a250f001e33485d72879c8a75614e3c2e252023334252617082909e9c897663503e2f1f10010000000005192d4155687b8f9b88766453423224180e0702080e17233241536578786e645a4a37230e001f344a5f748ba08b745f4a34243648596b7d8f9988766452412f273c52677c9398836c57422c17001f344a5f748b9f89735e48331e001f344a5f748ba09794949494949494949494949494949494949496a38d77624c37220d00000000000000000000000d22374c62778d9d88725c47321d0700000000000000000000001f344a5f748ba08b745f4a341f00000000000000000000000414253545566677888d7b6b5a4d61758891806f615a5b65748695826f5f7286948270635a5b6371829585725e4a36210d000000000a1113131a2a3a4b5b6c7c8d8776655444332211192836444f5a636b7279828c9185766654412e1b070008182631383838394d6073889a8f7c6b5949383838383838383730242c3b4c5d707c72695e503e2a1600071c3043576a7d929986736150403022160c060208101a27364657697b8e9d8a7663503c281400001f344a5f747c7c7c7c7c7c7c7c7c7c7c7c7c7c8499907c7c7c7c745f4a341f00172a3c4c555757586c829688725e5757575760758a937d6a5757575757574f402f1c0800000000000001112232435363748590806e5e4d53687c9188746151454856687b8f8a76614c38230e001f344a5f74899d88725c47321e14233242516170808f9b8c8d93806d5946321e0a00000000000c2034485d708598927d6b594635241406000000000006142436495b67655b51483c2c1a07001f344a5f748a9f8b76604b36212a3c4e5f7183959482705e4c3b293e53687d9397826c57422c17001f344a5f748b9f89735e48331e001f344a5f748ba08b7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d889d8d77624c37220d00000000000000000000000d22374c62778d9d88725c47321d0700000000000000000000001f344a5f748ba08b745f4a341f000000000000000000000000071728384859697a8b89786756596b7c8e8e80756f7077849288776556687a8b8f82766f6f76828f8a796755422e1b07000004121d25282929292d3d4e5e6f809083726151402f1f202d373b3d474f575e656e79879484715e4a36210d00132536444c4e4e4e55687c909986725f4e4e4e4e4e4e4e4e4e4b4233222e415363685f564c4132210e000e22364b5f73879b8f7c6956443222120400000000000a18283a4c5e70859893806b57432f1b06001f344a5f748b9393939393939393939393939393a0999393938b745f4a341f001d32465a696c6c6c6c7c918d776c6c6c6c6c6c708599846f6c6c6c6c6c6b5e4b37230e000000000000000414253546566677888d7b6b5a4e61758991806f615a5b66748694826f5b47331e0a001f344a5f74899d88725d48331f223241516070808f9c8d7d83968975614e392511000000000012263b4f63778c9d8975614e3b2917060000000000000006192c3d4b5251493e352b1e0e00001e33485d72889d8d78634e39241e3042536577899b8e7c6a58473541566b809595806a55402b16001f344a5f748b9f89735e48331e001f344a5f748ba08b746868686868686868686868686868686872889d8d77624c37220d00000000000000000000000d22374c62778d9d88725c47321d0700000000000000000000001f344a5f748ba08b745f4a341f000000000000000000000000000a1a2b3b4b5c6c7d8e857463535f6f7d8a918985868b9287796a594b5c6d7b89938a86868a93897b6c5c4a38261300000011222f393e3e3e3e3e3e405161718290806f5e4d3c2c2e3e4a504d423b434a525c68788a8e7964503b2510001b2f43546163636363708498917c69636363636363636363635f513f2c24364550534c43392f2314040013283c5165798e9c8873604c39271504000000000000000b1c2e4154687c909b87725e4935200c001f344a5f748ba0969191919191919191919191919a989191918b745f4a341f001f344a5f7483838383838e92838383838383838383978983838383838379644f3a250f0000000000000000071728384959697a8b89776756596b7d8e8e80746f70778492887665523f2c1804001d32475c71879b8b77624e3c2c3140505f6f7d8e9d8d7d6e7a8f917c6854402b170200000000172b4055697d9397836d5a46321f0c0000000000000000000e1f2d383d3d362b22180d0000001c31455a6f8599917c67533e2a15243648596b7d8f998876645241465a6f8499917c67523d2813001f344a5f748b9f89735e48331e001f344a5f748ba08b745f53535353535353535353535353535c72889d8d77624c37220d00000000000000000000000d22374c62778d9d88725c47321d0700000000000000000000001f344a5f748ba08b745f4a341f00000000000000000000000000000d1d2d3e4e5f6f8090827060515f6d7782878989867d75695b4c3e4f5d6b76808689898680766a5d4e3e2c1b090000091d2f404d5353535353535353536474858d7c6b5a4a393d4c5c6560514439363e4a5b7086927c67523c2712001f34495e7278787878788a9f8a7878787878787878787878786f5c48352127343c3e3930261c12050000182d41566b809496826c5844301d0a0000000000000000001225394c6075899e8d78634e3a2510001f34495e7385958e7b7b7b7b7b7b7b7b7b7b7b7c93907b7b7b7b735f4a341f001f344a5f748b989898989b9e9898989898989898989c9a98989898989079644f3a250f0000000000000000000a1a2b3b4c5c6c7d8e857463535f6f7d8a918985868b92877969594735231000001a2f43586d8295927d6b5a493a404f5e6e7d8e9d8e7d6f5f738897836e5a45301b07000000001a2f44596e8398927c68533f2b1703000000000000000000010f1b24282822190f0500000000182d41566b809596826d5845311d192a3c4e5f7183959482705e4c4d6075899e8c77634e39240f001f344a5f748b9f89735e48331e001f344a5f748ba08b745f4a3e3e3e3e3e3e3e3e3e3e3e3e475c72889d8d77624c37220d00000000000000000000000d22374c62778d9d88725c47321d0700000000000000000000001f344a5f748ba08b745f4a341f00000000000000000000000000000010203041516172838f7d6d5c4f5b646d727373706a61574b3d313f4d59636c717373716b63594d3f30200f0000000f24394c5e6868686868686868686867778889786757464a5b6a7a7061564d49494e5d7186917b66513c2712001e33485d70858f8f8f8f94a2928f8f8f8f8f8f8f8f8f8f8f8b7764513d2916212728251d130a000000001b30455a6f8599917b67523e291501000000000000000000091d31465a6f8499927c68533d2814001b3043566677899988776666666666666666677c939079666666635644301c001f344a5f74868686868686978b86868686868686868b9686868686868679644f3a250f000000000000000000000d1d2e3e4e5f6f809082706051606d7782878989867d75685b4c3b2a1806000015293e5165788c9b89776758494e5e6d7c8d9c8f806f60596d839788735e49341f0a000000001d32475c72879c8d78634e392510000000000000000000000000081013130e0600000000000013283d5165798e9c8874604d3a27151e3042536577899b8e7c6a5855687c909a86715d4934200b001f344a5f748b9f89735e48331e001f344a5f748ba08b745f4a342929292929292929292932475c72889d8d77624c37220d00000000000000000000000d22374c62778d9d88725c47321d0700000000000000000000001f344a5f748ba08b745f4a341f0000000000000000000000000000040a12233344546475868c7a6a594851585d5e5e5c564e453a2d212f3c4750575c5e5e5c5750463c2f21120200000012273c52677c7d7d7d7d7d7d7d7d7a666a7a8b8674645354687889807369615e5e626b7b8d8c77634e39251000192d4155687c84848484959785848484848484848484848484806c57422c170d121310090000000000001e33485d72889d8d77634e39240f0000000000000000000002182c41566b809595806a55402b160014263849596a7b8c95847362515050505052677c9390796450504f46382714001e33475b6b6f6f6f6f6f7c928c776f6f6f6f6f6f708698836f6f6f6f6f6e604c38230e000000000000000000000010203041516272838f7d6d5c4f5b646d727373706a61574b3d2e1d0c0000000e2236495c6e809196867667595d6c7c8c9b8f8070615154687d938c77624c38230d000000001f344a5f73899f8c76604b36210c0000000000000000000000000000000000000000000000000e22364b5f72879a907c695744332213243648596b7d8f998876645e718598927d6a56422e1a06001f344a5f748b9f89735e48331e001f344a5f748ba08b745f4a341f13131313131313131d32475c72889d8d77624c37220d00000000000102020202020d22374c62778d9d88725c47321d0702020202020100000000001f344a5f748ba08b745f4a341f0000000000000000000000000710181e23262636475767788988766656454448494847423b32281c111e2a343c4347494947433c342a1e11030000000012273c52677c93949494949494917b665d6d7d8f82716155697a8991867c767373767d8a93826f5c4834200b001225394d5f6d6e6e6e8296947d6e6e6e6e6e6e6e6e6e6e6e6e6e65534332200c000000000000000000001f344a5f748a9f8b76604b36210c000000000000000000000014293e53687d9397836c57422c1700091a2b3c4c5d6e809091806f5e4d3c3b3c52677c939079644f3b3a34281a0900182b3e4e585a5a5a5a63778d917c675a5a5a5a5a6c829588735e5a5a5a595142301d0900000000000000000000040a13233344546575868b7a69594851585d5f5e5c564e453a2d1f100000000006192c3f51627384939586776a6b7b8b9a8f807061514250667a908f79644f3a250f000000001f344a5f748ba08b745f4a341f0a000000000000000000000000000000000000000000000000071c2f43576a7d919986736250403022192a3c4e5f718395948270697b8e9c8975624e3b271300001f344a5f748b9f89735e48331e001f344a5f748ba08b745f4a341f0a000000000000001d32475c72889d8d77624c37220d0000000a121717171717171722374c62778d9d88725c47321d1717171717171611080000001f344a5f748ba08b745f4a341f00000000000000000000010e19232c33383b3b3b394a5a6b7b8c8573635342333433322d271f150b010d1721292e323434322e2820170c00000000000012273c52677c808080888c8080807b66505f70828f806e5e5c6b78848e918b89898b919084746452402d190500091d304155666c6c6c8297947d6c6c6c6c6c6c6c6c6c6c6c6c6c6c614f3b2814010000000000000000001f344a5f748ba08b745f4a341f0a000000000000000000000012273c52677c9398836c57422c1700000d1e2f3f50617283948d7c6b5a49383c52677c939079644f3a2520170b00000f20303c434444444a5e738896826c5744444452677b908d78634f4444443e3324130100000000000000000710181f232626364757687889887666554544484a4847423b32281c0f0100000000000f223345556574849296887b7a8a99908270615243394e63788f917b66503b2611000000001f344a5f748ba08b75604b36210b0000000000000000000000000000000000000000000000000014283b4e6174879991806e5e4e403328203042536577899b8e7c75879991806c5946331f0c00001f344a5f748b9f89735e48331e001f344a5f748ba08b745f4a341f0a000000000000001d32475c72889d8d77624c37220d0000101d262c2c2c2c2c2c2c2c374c62778d9d88725c47322c2c2c2c2c2c2c2b241a0c00001f344a5f748ba08b745f4a341f00000000000000000002111f2b3640474d5050504c464d5d6e7d8f827060503f2f1e1d19130c02000000040d141a1d1f1f1d19140d04000000000000001025394d5f696a6a72888c766a6a695e4c526273848d7c6b5b5a6671798286888988847c726556473523100000011a2f445a6f8383838397948383838383838383838383838383806b5744301d090000000000000000001f344a5f748a9f8b76604b36210c000000000000000000000014293e53687d9397826c57422c1700000011223343546576879889786756453c52677c939079644f3a250f0400000002121f292e2f2f3044596e839786715c4833384d62768c927c68533f2f2f2b22181004000000000000010e19232c33383b3b3b394a5a6b7b8c8473635242333433322d271f150b000000000000000416273747566573828e998c899991827162534334384e63777c7c7a65503b2611000000001e33485e73889d8d77624d38240f000000000000000000000000060b0d0a0400000000000000000b1e3144576a7c8d9d8d7c6c5e51453b35313648596b7d8f99888394978674614f3d2a170300001f344a5f748b9f89735e48331e001f344a5f748ba08b745f4a341f0a000000000000001d32475c72889d8d77624c37220d000d1e2e3a4142424242424242424c62778d9d88725c47424242424242424240372a1a09001f344a5f748ba08b745f4a341f00000000000000000010202f3c49535b61656665615a51506071828f7d6e5d4d3c2c1c0b00000000000000000000060a0a0600000000000000000000000a1d30414e54545c72888c766054544d4045556677888a796858545e666c707373726f6960554738291706000000182c4054687b8f8f8f999c8f8f8f8f8f8f8f8f8f8f8f8f8f8f8773604c37220d0c07000000000000001e33485d72889d8d78634e3924100000000000000000000002172c41566b809595806a55402b1600000004152636475869798b96857463524152677c939079644f3a250f0000000000010d15222c31324054697d928b76614d3834485d718797836d5944323232312c2214050000000002111f2b3640474d5050504c464d5d6e808f827060503f2f1e1d19130c0200000000000000000009192938475563707c89999c9582726356493c2f34485a666767665c4a37230e000000001c31465b70869a907b66513d281400000000000000000000020f1920221f180d020000000000000215283a4c5e6f82919a8b7c6e62584f494645474e5f71839595939b8a7968564432200d0000001f344a5f748b9f89735e48331e001f344a5f748ba08b745f4a341f0a000000000000001d32475c72889d8d77624c37220d00172a3c4c5557575757575757575762778d9d88725c5757575757575757575448382612001f344a5f748ba08b745f4a341f00000000000000000c1e2e3e4d5a666f76797b79756d6458536475868c7b6b5a4a39291908000000000000000000000000000000000000000000000000001223303b3f475c72888c76604b3f3a303848596a7a8c877665554a52585c5e5e5c5a554d4337291a0b000000001125384c607278787c929984787878787878787878787878787875624d382322211b120700000000001c31455a6f8599917c67533e2a1502000000000000000000091d31465a6f8499917c67523d2813000000000819293a4b5c6d7d8f9282705f4e52677c939079644f3a250f000000000000122433404647474f64788e907b6652474747586d829687725d49474747463f3223110000000011202f3d49535b62656664615a51506171828f7d6e5d4d3c2c1b0b000000000000000000000000000b1a2937475767778899969a8c8073675a4d3e303c4a515252514b3e2d1b0800000000192e42576c829695806b57432f1b0800000000000000000111202d3537332b1f14090000000000000b1d2f4052627283929a8d80756b635e5b5a5c60676f798ba09c8c7c6c5c4a392715030000001f344a5f748b9f89735e48331e001f344a5f748ba08b745f4a341f0a000000000000001d32475c72889d8d77624c37220d001d32465a696c6c6c6c6c6c6c6c6c6c778d9d88726c6c6c6c6c6c6c6c6c6c6655412d18001f344a5f748ba08b745f4a341f0000000000000005172a3b4c5c6b78838b90918f8a8276685a5768788a89786857473726160500000000000000000000000000000000000000000000000004131e2632475c72888c76604b36261e2b3b4c5d6d7d8f8473625242434748484745403930261a0b0000000000091c304354616364788d9d887463636363636363636363636363625746333237362f24190e02000000182d41566b809596826d5845311d0a0000000000000000001125384c6074899d8c77634e39251000000000000c1c2d3e4f607082928e7d6c5b52677c939079644f3a250f0000000000071b2f41515b5c5c5c5f738995806b5c5c5c5c5c687c928c77625c5c5c5c5b50402e1a0600000c1e2f3e4d5a666f76797b79756d6458536475868c7b6b5a4a392919080000000000000000000000000d1f31435465758696938489959285786b5c4e3e2e373c3c3c3c382e2010000000000014293e52677b909b87725e4b37251301000000000000000c1e2f3e494c473d31261b0d0000000000001223344555647382909c92887d7773706f71757a838c979d9a88756452402f1d0c000000001f344a5f748b9f89735e48331e001f344a5f748ba08b745f4a341f0a000000000000001d32475c72889d8d77624c37220d001f344a5f7483838383838383838383838e9e8983838383838383838383836f5a442f1a001f344a5f748ba08b745f4a341f000000000000000e213447596a7a899186807c808894877767565b6b7c8d867565544434231302000000000000000000000000000000000000000000000000010b1d32475c72888c76604b36210d1d2e3f4f607182918270604f3f31333332302c261d140800000000000001142636444c4e5e73889c8f7a66534e4e4e4e4e4e4e4e4e4e4e4d463938454c4a41362b201304000013283d5165798e9c8874604d3a271504000000000000000b1c2e4154677b8f9a86715d4934200b0000000000000f20314253637486968a796857677c939079644f3a250f00000000000c21364a5f6f727272727284988672727272727272778c917c72727272726e5d4934200a0005182a3c4d5c6b78838b90918f8a827568595768788a8978685747362616050000000000000000000004172a3d4f6072839395857477839096897a6c5c4c3b2927272727231b100200000000000f24384c6075899c8e7a675442301f0f0200000000000717283b4d5c625a4f44382b1b09000000000005162737465564717d8a959b938d888686878a8f969b91889593826f5e4c3b2917030000001f344a5f748b9f89735e48331e001f344a5f748ba08b745f4a341f0a000000000000001d32475c72889d8d77624c37220d001f344a5f748b989898989898989898989ca09a98989898989898989898866f5a442f1a001f344a5f748ba08b745f4a341f0000000000000015293d516476889182736a676b7684948673604d5e6f80918372625141312010000000000000000000000000000000000000000000000000040c1d32475c72888c76604b36210b10213243536474868f7d6d5d4c3c2b1e1d1b17110a010000000000000000081826313844586c809596836f5c49383838383838383838383833334656615f53483d31221100000e22364b5f72879a907c6957443322120400000000000a1828394b5d708497927d6a57432e1a0600000000000003132435465667788997867564677c939079644f3a250f00000000000d22374c6277888888888888988c88888888888888888e9688888888888876604b36210b000e213447596a7a8a9186807c808893877767565b6b7c8d8675655444332313020000000000000000000c203347596c7d90988776666572808d998a7a6a584634211212120f0800000000000000091d3145596d82949784715f4e3d2d1f130a0504070d17253446586b776c615649392613000000000000091928374653606d78828b93999c9b9b9c9b9790887d77899b8d7b6a5846331e0a0000001f344a5f748b9f89735e48331e001f344a5f748b8b8b745f4a341f0a000000000000001d32475c72888b8b77624c37220d001f344a5f748b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b866f5a442f1a001f344a5f748b8b8b745f4a341f000000000000001b2f44586d8094867362565258657689907d69555162728490806f5f4f3e2e1d0d000000000000000000000000000000000000000000000b17202532475c72888c76604b36210b0314253546576778898c7a6a5a49392818080000000000000000000000000009151e293d5164788c9f8c79665544332523232323232323232e3e50637470665a4f402e1b0700071c2f43576a7d919986736250403022160c070508101b28364657687a8d9c8a76634f3b2714000000000000000006172839495a6b7c8d938270677c939079644f3a250f00000000000d22374c62778d9191919191959c9191919191919191919a97939393938c76604b36210b0015293d516476899182736a676c7684948673604e5e6f8091837261514130201000000000000000000012263b4f6376899c8c7a695854616e7c8c98887663503d2a16010000000000000000000002162a3d5164778a9c8f7d6b5b4b3d30261e1a191c212a3543526375887d736756422d18030000000000000a192836434f5b656f777d8488898b8987827c746b6b7d86868676614c37220d0000001f344a5f748b8b89735e48331e001f34495d70747474705d49341f09000000000000001c31465b6e74747471604b36210c001f34495d70747474747474747474747474747474747474747474747474746b58432e19001f34495d70747474705d49341f000000000000001f34495d7288927c6956453d48596c8295846f5a45556576878e7d6d5c4c3b2b1a0a0000000000000000000000000000000000000000091a28343a3b475c72888c76604b36210b00071728394a5a6b7c8d89776757463625150500000000000000000000000000020e2235495c6f8295968472615143362a211b191a1e26303d4c5c6e8083776c5e4b36210d000014283b4e6174879991806e5e4e403328201c1a1d232d3845546475869892806d5a4733200c0000000000000000000a1b2c3d4d5e6f80918f7d6d7c939079644f3a250f00000000000d22374c61767b7b7b7b7b7b8995807b7b7b7b7b7b7b7c928c7c7c7c7c7c75604b36200b001b3044586d8294867362565259667689907c69555162728490806f5f4e3e2e1d0d0000000000000000162b4055697d9293806e5c4b43505e6d7d9093806d5945301b0700000000000000000000000e2134475a6d80919b8a79695b4e4339332f2e31353d47536170829390836f5a442f1a05000000000000000a1825323d49525c636a6f72747473716d6860585f6d6f6f6f6d5d4a35200b0000001f34495d707474746f5c47321d001a2e41515d5f5f5f5d51412e1a0600000000000000172b3e505c5f5f5f5e5343301c08001a2e41515d5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5b4e3c2915001a2e41515d5f5f5f5d51412e1a000000000000001f344a5f748b8f78634e3a2a3d52677c9387705b464858697a8b8b7a6a59493828170700000000000000000000000000000000000000142738464f504c5c72888c76604b36210b00000a1b2c3d4d5e6f80908574645443332212020000000000000000000000000006192c40526577899b9080706153473d35302e2f3339424e5b6a7a8c958a77634e38230e00000b1e3144576a7c8d9d8d7c6c5e51453b35312f32373f4a566372829398877562503d2a1704000000000000000000000e1f2f4051627384958b7a7c939079644f3a250f00000000000a1e3346586466666666666f84988670666666666666778c917c68676767655846321d09001f34495d7288927c6956443d48596c8296846e5944556676888e7d6c5c4c3b2b1a0a00000000000000192e43586e83988c7763503e33404f6072879b88735e4934200a000000000000000000000005182b3d4f617284949788796c60554d474443464a50596470808f9c8b796653402c170200000000000000000714202b363f484f555a5d5f5f5e5c58534c4550595a5a5a594f402e1b070000001a2e41515d5f5f5f5d513f2c190011233341494a4a4a494133231100000000000000000f21323f484a4a4a4942352514010011233341494a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a473e301f0d0011233341494a4a4a4941332311000000000000001f344a5f748a8f7964503c2f4053687d9386705b463b4b5c6d7d8f8877665646352514040000000000000000000000000000000000001c3044566365605c72888c76604b36210b0000000e1f2f4051617283938271615140301f0f0000000000000000000000000000102336485a6b7d8e9e8f80716459504a454344474d555f6b79889892806e5b4834200b00000215283a4c5e6f82919a8b7c6e62584f494644474b525c677482919b8b7a69574533200e000000000000000000000001122333445566768898877c939079644f3a250f00000000000317293a485050505050556a7d938a7561505050505e728896826d58525251483a291603001f344a5f748b8f78634e392a3e53687c9387705b464858697a8b8b7a69594938281707000000000000192e43586e84998b745f4b36273143586d83988c76604b36210b0000000000000000000000000e2032445566768695988a7d7269615c5a585b5e646c76828f9e8f7d6d5c4937241100000000000000000000020e19232c343b4045484a4a4947443f39323e44444444443d3122110000000011233341494a4a4a4840322210000515232e34343434342e23150500000000000000000313222d33343434342f25170800000515232e3434343434343434343434343434343434343434343434343434332b201201000515232e34343434342e231505000000000000001d32475c718693806c5a4a444d5d6f8396826d58432e3e4f6070829285746353433222110000000000000000000000000000000000001f344a5f7379746c72888c76604b36210b00000001122233445565768790806f5e4e3d2d1b080000000000000000000000000006192b3c4e5f70808f9e8f82766c645e5a585a5c6168727d8a9896867463513e2b18050000000b1d2f4052627283929a8d80756b635e5b5a5c60666f7985929b8d7d6d5c4b3a2816040000000000000000000000000516263748596a7a8c9483939079644f3a250f0000000000000c1c2a353b3b3b3b3b5065798e8f7a66513d3b44596d839787725d483c3c362a1c0b00001f344a5f748a8f7964503c2f4054687d9386705b463b4b5c6d7d8f8877665645352514040000000000182d42576c82968e796553443c3c47596e83988c76604b36210b000000000000000000000000031426374858677685929b90857c76716f6e7073788089949c8f8070604f3e2c1a0700000000000000000000000006101920262c3033343434322f2a24212a2f2f2f2f2f2a201304000000000515232e34343434332d221404000005111a1f1f1f1f1f1a1105000000000000000000000410191e1f1f1f1f1b12070000000005111a1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1e180f0200000005111a1f1f1f1f1f1a11050000000000000000192e42566a7d908977685d595f6b7a8c8d7a66533e2a3142526374859282716150402e1b0800000000000000000000000000000000001f344a5f748b887d73888c76604b36210b0000000005152637475869798b8d7c6c5b4b38241000000000000000000000000000000d1f3041516170808e9a94898078736f6e6f71767c858f9b95877767574534210f00000000001223344555647382909c92887d7773706f71747a828c97988b7d6e5f4f3e2d1c0b000000000000000000000000000009192a3b4c5d6e7d8f989f9079644f3a250f000000000000000c182125262626364b60748994806b56412d3f54687d928c77624d392722190c0000001e32475c718693806c594a444d5d6f8396826d58432e3e4f6070829285746353433222110000000000152a3e53677b8f95827061575151586476899c88735e49341f0a0000000000000000000000000008192a3a49586774828d9798918b87858486888d939c968b7d7061524232210f000000000000000000000000000000050c12171b1e1f1f1f1d1a15100e161a1a1a1a1a160e0300000000000005111a1f1f1f1f1e1911050000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000013273a4d60728494877a716e727c8991826f5d4a3723243545566777898f806e5d4b37220d00000000000000000000000000000000001f344a5f74848a9184888c76604b36210b000000000008192a3a4b5c6d7d8f8a7967533e29140000000000000000000000000000011223334352616f7c89939c948d88868485878b90989b90847668594939281604000000000005162737465564717d8a959b938d888686878a8f969c92867a6d5f5041312010000000000000000000000000000000000c1d2e3f5060718393a49079644f3a250f0000000000000000050d1011111d31465b6f849985705b47323a4f63788d917c67533e29150600000000192e42566a7d908977685d595f6b7a8c8d7a66523e2a3142526374859282706150402e1b08000000001024384c607285978f80736a66666b75839392806c5844301b0600000000000000000000000000000c1c2b3a4956636f7a858d94999c99999b9d99948d84796d605243342514030000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000008101415151515151515151515151515151515151515151515151514110a0000000000000000040d1315151515130e05000000000000000000000000000000000000000000000000000b1e314355657584908d8684878f8d82726352402e1b172738495a6a7b8c8a79644f3a250f00000000000000000000000000000000001d32465a696e76828e928c76604b36210b0000000000000c1d2d3e4f5f7082857767533e29140000000000000000000000000000000515253443515e6b76808a92979c9b99999c9b9690887d7266584a3b2b1b0a00000000000000091928374653606d78828b93999c9b9b9c9c9791898074685c4f413223130300000000000000000000000000000000001021324353647586979079644f3a250f00000000000000000000000002182c41566a80948a75604c37354a5e738896826c58432e1a050000000013273a4d607284948779716e727c8a91826f5d4a3723243545566777898f806e5d4b37220d00000000091d304356677889969186807b7b80889394857462503c2915010000000000000000000000000000000d1c2b3945525d6770798085888b8b8a8885807870675c4f42342516070000000000000000010b121515151515151515151515151413100c080200000000000000000000000000000000000000000000060e14181c1e1f1e1d1a17110b0300000000000000000000000e1a24292a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a261d11030000000000081621282a2a2a2a2822170a00000000000000000000000000000000000000000000000001142637485765727c85898b89837a706354453423110a1a2b3c4d5d6e80796b5d4a36220d0000000000000000000000000000000000172a3c4c555a636f7d8b8b76604b36210b000000000000000f203141526373756759493724100000000000000000000000000000000007162533414d59636d767c8387898b8b8986827b746a6055483b2c1d0d0000000000000000000a192836434f5b656f777d8488898b8987837c756c62574b3e3123140400000000000000000000000000000000000003142536475868798a8b79644f3a250f0000000000000000000000000013273c5165798f8f7a65513c3045596e839787715d48341f0a000000000b1e314355667584908d8684878f8d82726352402e1b172838495a6b7b8d8a79644f3a250f00000000011426384a5a6a78858f9794919194978e837566564533200d00000000000000000000000000000000000d1b2834404a545d656b6f72747474726f6b645d544a3e32251607000000000000000004131e262a2a2a2a2a2a2a2a2a2a2a2a292825211c160f0800000000000000000000000000000000000008111a22282d31333433322f2b261f170d0300000000000000000c1d2c373e3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3a2f211000000000051626333c3f3f3f3f3d3528190700000000000000000000000000000000000000000000000008192a3947546069707474736f675e524536271705000d1e2f3f50616e695b4d3f2d1b0700000000000000000000000000000000000d1e2e3a4147525f6e7474705e4a35200b00000000000000021324344555626357493b2c1a080000000000000000000000000000000000071523303c47505a62686d7173747473706d6760574e43372a1d0e00000000000000000000000a1825323d49525c636a6f72747473716d6861594f45392d20130400000000000000000000000000000000000000000718293a4a5b6c747473624e39240f000000000000000000000000000e22374c60758a8b806b56412c4054697d8b8b77624d38230e0000000001142637485765727c85898b89837a6f6354453423110a1b2b3c4d5d6e80796b5d4a36220d0000000000091b2c3c4c5a67727b8388898987837a71655748382716030000000000000000000000000000000000000a17222e38414950565a5d5f5f5f5d5a56504941372c2114070000000000000000001223303b3f3f3f3f3f3f3f3f3f3f3f3f3f3d3a36312a231b11080000000000000000000000000000020e1a242e363d42464849484744403a322a20150a0000000000000016293b4953545454545454545454545454545454545454545454545454544c3f2d1b070000000f22344450545454545146362411000000000000000000000000000000000000000000000000000c1b2a37434d555b5f5f5e5a544b4134271809000000112232435259574b3d2f211000000000000000000000000000000000000000101d262c3441505c5f5f5d52422f1b07000000000000000006172737454e4e46392b1d0e0000000000000000000000000000000000000005121e2a343d464e54595c5f5f5f5e5c58534c443b3125190c000000000000000000000000000714202b363f484f555a5d5f5f5e5c59534d453c32281c1003000000000000000000000000000000000000000000000b1c2d3d4e5b5f5f5e5545331f0b00000000000000000000000000091d32475b6e7474746955412c3b4f6373747472614c38230d000000000008192a3948556069707474736f675e524536271605000d1e2f4050616e695b4d3f2d1b070000000000000e1e2e3c49555f686e727473726d675e5447392a1b0a000000000000000000000000000000000000000005111b252e363c4145484a4a4a4845413c352d241a0f030000000000000000000a1d30414e54545454545454545454545453524f4a453e372e241a0e0200000000000000000000000513202c37414a51575b5e5e5e5c59544e463d32271b0d0000000000001d314558676a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a695d4a36220d000000152a3e51626a6a6a6a6454412e1b08000000000000000000000000000000000000000000000000000c1925303a41464a4a494640382e23170900000000041525343f44423a2d1f110300000000000000000000000000000000000000000a121723323f484a4a4941342412000000000000000000000a192733393933281b0d000000000000000000000000000000000000000000010c17212a333a4044474a4a4a4947433e3831281e1408000000000000000000000000000000020e19232c343b4045484a4a4947443f39322920150a000000000000000000000000000000000000000000000000000f20303e474a4a4943372716030000000000000000000000000003182b3e505c5f5f5f5a4c3a263446565f5f5f5e5444311e090000000000000c1b2a37434d555b5f5f5e5a544b4034271809000000112232435259574b3d2f21100000000000000000101e2c38434c53595d5f5e5d59534b41362a1b0c000000000000000000000000000000000000000000000008121a21282d313334343433312d28211a110800000000000000000000001025394d5f696a6a6a6a6a6a6a6a6a6a6a6867645f59524a41372c201305000000000000000000051423303d49545d656b70737373726e6962595045382b1d0e00000000001f344a5f7480808080808080808080808080808080808080808080808079644f3a250f000000172c42576c80808080705d4a372411000000000000000000000000000000000000000000000000000008131d262d32343434312b251b11060000000000000716222b2f2e271d0f0100000000000000000000000000000000000000000000000514222d333434342e24160600000000000000000000000a161f24241f160a000000000000000000000000000000000000000000000000040e171f252b2f3234343434322e2a241d150b0200000000000000000000000000000000000006101920262c3033343434322f2a251e160d0300000000000000000000000000000000000000000000000000000212202b333434343026190a0000000000000000000000000000000f21323f484a4a4a463c2e1d2838444a4a4a494336261502000000000000000c1925303a41464a4a494640382e23170900000000041525343f44423a2d1f11030000000000000000000e1a2630383f45484a4948443f382e24190c0000000000000000000000000000000000000000000000000000060d13181c1e1f1f1f1e1c18130d060000000000000000000000000012273c52677c80808080808080808080807d7c78746d665d54493d312315060000000000000003132332414e5b667079808688898987837d756c6256493b2c1d0c000000001f344a5f748b959595959595959595959595959595959595959595959079644f3a250f000000152a3f5365788c958d7a6754412e1b080000000000000000000000000000000000000000000000000000010a12181d1f1f1f1c171108000000000000000000050f171a19140b00000000000000000000000000000000000000000000000000000410191e1f1f1f1a120600000000000000000000000000030b0f0f0b04000000000000000000000000000000000000000000000000000000030b11161a1d1f1f1f1f1d191510090200000000000000000000000000000000000000000000050c12171b1e1f1f1f1d1a16100a020000000000000000000000000000000000000000000000000000000000020f181e1f1f1f1b1409000000000000000000000000000000000313222d33343434322a1e101a2730343434342f25180900000000000000000008131d262d32343434312b241b11050000000000000716222b2f2e271d0f01000000000000000000000009131c242b30333434332f2a241b12070000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000012273c52677c939595959595959595959594918e88827a70665b4f413324150500000000000010213141515f6c78848d959a9a99999b989289807467594a3b2a19080000001f344a5f748b9da0908f8f8f8f8f8f8f8f8f8f8f8f8f8f8f8f8f8f8f8f79644f3a250f000000102336495c6f82959784705d4a37251200000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000410191e1f1f1f1d170d0009141c1f1f1f1f1b13080000000000000000000000010a12181d1f1f1f1c171108000000000000000000050f171a19140b0000000000000000000000000000000910161b1e1f1f1e1a1610080000000000000000000000000000000000000000000000000000000000040c12171a1d1e1e1e1c19140e070c14191a1a1a181209000000000012273c52677c939e8f8f8f8f8f8f8f8f8f8f92969c968d84786d5f51423323130200000000091b2d3e4f5f6f7d8a96988f89868484878c939c9285776859483725130000001e33485c6e808f9d89787878787878787878787878787878787878787876634e39240f00000006192c3f5265788c9f8d7a6754412e1b08000000000000000000000000000000000000000000000000000000000000000000060c11141717171716130f090300000000000000000000000000000000070e1313131313100900000000000000000000000000000000081013131313130e070000000000070e13131313130e070000000000000000000000000000070f13131313110b02000000000000000000000000000000000810141515130d0400000000000000000000000000000000070e13131313131313131313131313131313131313131313110b02000000000000000000000712191c1d1d1d1a1309000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000050f1820262c2f32333333312d29221b1e282e2f2f2f2d261a0c0000000012273c52677c9399847878787878787878797c8288909a968a7d7061514131200e000000001326394b5c6d7d8d9b90857b746f6e6e7177808b98968776665442301d0a0000192d3f506171829296857464636363636363636363636363636363636362584734200c00000000102336495c6f82959785715e4b382512000000000000000000000000000000000000000000000000000000000000010a131a2025292c2c2c2c2b28231e170f06000000000000000000000000000d19232829292928241c1002000000000000000000000000010f1b24282929292823190d0000000d1923282929292823190d0000000000000000000000000d1a2328292929261f140600000000000000000000000000000e1a24292a2a2821160800000000000000000000000000000d192328292929292929292929292929292929292929292929261e130500000000000000000918252e323232322e261a0b0000000000000000000000000000000000000000050c12171b1d1e1e1e1c19151009020d15191a1a1a19140c000000000000000000000000000000000000010b1114151515120b0100000000000000000000000000000000000008101415151514110a000000000000000000000000000000000a11141515151410080000000000000000000000010d18222b333b40444748484846423d362f2f3b4344444441382a1a0800000012273c52677c9399846e6363636363636364686d747d88939c8e806f5f4e3d2b19070000001b2f4356687a8c9b8c7d7268605a58595d636d7988979584725f4c392612000010223243536474859692827161504e4e4e4e4e4e4e4e4e4e4e4e4e4e4e4d473a2a18050000000006192c3f5264778b9e8e7a6754412e1b080000000000000000000000000000000000000000000000000000000009141d262e353a3e41424242403d38322b23190f04000000000000000000000b1c2b363d3e3e3e3d382e200f0000000000000000000000000e1f2d383d3e3e3e3d362b1c0b000b1c2b363d3e3e3e3d362b1c0b000000000000000000000d1d2b373d3e3e3e3b322415030000000000000000000000000c1d2c373e3f3f3c332616050000000000000000000000000b1c2b363d3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3a312314020000000000000316273641474747474238291805000000000000000000000000000000000006101920262c3032333333312e2a241d1520292f2f2f2f2e281e110100000000000000000000000000000004121e262a2a2a2a261e1304000000000000000000000000000000000e1a24292a2a2a2a261d110300000000000000000000000002101c252a2a2a2a29241a0e00000000000000000006131f2a353e474f55595c5e5e5e5b57514b423d4d585a5a5a554837241100000012273c52677c9399846e584e4e4e4e4e4e505358606a7582909e8e7d6c5b493724110000001f34495e7285988d7c6e60554c46434448505c69798a9c8f7c6955412d190500041525364656677788998f806e5d4d3c383838383838383838383838383833291c0c000000000000102235485b6e82959885715e4b3825120000000000000000000000000000000000000000000000000000030f1b26303a42494f535657575755514c463e362c22160a00000000000000000015283a4852535353534b3e2d1a070000000000000000000006192c3d4b5253535352483a28150015283a485253535352483a28150200000000000000000a1a2b3b49525353534e4232200d00000000000000000000000216293b49535454504434220f00000000000000000000000015283a48525353535353535353535353535353535353535353534e42311f0c0000000000000b1f3345545c5c5c5c554735220e000000000000000000000000000000030e19232c343b40454748484847433e383128303d44444444433b2f1f0d0000000000000000000000000000001122303a3f3f3f3f3b3023120000000000000000000000000000000c1d2c373e3f3f3f3f3a2f21100000000000000000000000000f202e393f3f3f3f3e372c1d0c00000000000000081624303c47515b63696e72737373706c655e554c5a6b6f6f6f6654402b1600000012273c52677c9399846e584338383838383b3e454d58647282919b8a786653412e1a0700001e33485c6e7b88806e5e504338312e2f343e4b5b6d80929985705c48331f0a000007182839495a6a7a8c9c8c7b6b5a4939282323232323232323232323231f170c0000000000000005182b3e5164778b9e8e7a6754412e1c090000000000000000000000000000000000000000000000000614212d38434d565d63686b6c6c6c6a66615a52493e33281b0e00000000000000001c31455866686868685c4a37230f000000000000000000000e2235495b67686868665845311c001c31455866686868665845311c08000000000000000617283849596668686860503c28130000000000000000000000081d314558676a6a62513e2a150100000000000000000000001c31455866686868686868686868686868686868686868686868604e3b271200000000000010253a4e627172727164513c271200000000000000000000000000000814202b363f484f55595c5e5e5e5c58534c443b3f4e585a5a5a584d3d2a170300000000000000000000000000081c2f404d545454544e41301d0a000000000000000000000000000016293b4953545454544c3f2d1b0800000000000000000000061a2c3e4c5454545453493b291600000000000008172634414e5a646e777d848789898886827972685e5e738686836c57422c1700000012273c52677c9399846e58432e23232323252a313a4654637385979683705d4a36230f0000192d3f505d6a777361504032261d191a212d3d4f63768b9f8b77624d38230e0000000a1b2b3c4c5d6d7d8f9989786757463625150e0e0e0e0e0e0e0e0e0e0b040000000000000000000f2235485b6e82949885715e4b3926130000000000000000000000000000000000000000000000061523313e4a56606971777c82838383807b756e655c5145392c1e0f000000000000001f344a5f747d7d7d7966523f2b1804000000000000000003162a3e5165787d7d7d745f4a341f001f344a5f747d7d7d745f4a341f0a00000000000003142435455667777d7d7d6b56402b16000000000000000000070e141f344a5f7480806c57422c1b150f070000000000000000001f344a5f747d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d69543f2a1500000000000011263b50667b88887d68533e2913000000000000000000000000000a1825323e49525c63696e72737373706d6760584e4d5d6c6f6f6f6b5a46311c07000000000000000000000000001124384c5e696a6a695f4d39261200000000000000000000000000001d314558676a6a6a695d4a372410000000000000000000000f2236495c686a6a6a675845311d00000000000717263544525f6b77828b92989c9b9b9b9a958e857b6f63738998836c57422c1700000012273c52677c9399846e58432e190e0e0e10151e2936455667798c9f8d7966523e2a160100102232404c59646356443222140902050f2033475c70869a907a66503b2611000000000d1e2e3f4f60708291968675645343322211010000000000000000000000000000000000000005182b3e5164778a9e8e7a6855422f1c0900000000000000000000000000000000000000000005152433424f5c68737c868d929698989794908a82786e63574a3c2d1e0f0000000000001d32465a6d829494826e5b4733200c00000000000000000b1e3246596d829494826e5a47321e001f344a5f748b948b745f4a341f0a00000000000010213242536374859494826b56402b160000000000000009121b22282d344a5f748b836c5742342f2a231b1207000000000000001f344a5f748b94949494949494949494949494949494949494806a543f2a1500000000000011263b50667b91947d68533e29130000000000000000000000000a192836434f5b656f777d848789898986827b746b615b6b7b868683725d48331e0900000000000000000000000005192c4054677b80807c6955412e1a07000000000000000000000000001f344a5f748080807a67533f2c1804000000000000000003172b3e526579808080745f4a341f0000000003142535445362707d89949c948d88868686898d94988d8274738998836c57422c1700000012273c52677c9399846e58432e191111100c040b1827384a5c6f839695826d5945301c08000414222f3c48504f463827150400000004192e43586d8398937c67523c271200000000001021314252637384949382716150402f1f0e00000000000000000000000000000000000000000f2134475a6d82949885725f4c3926130000000000000000000000000000000000000000021323334251606d7985909999938f8c8c8d90959c958c8074675a4b3c2d1d0c0000000000172b3e5265798d9e8a76634f3b2814000000000000000013273a4e6175899d8d7966523f2b18001f344a5f748ba08b745f4a341f0a00000000000d1e2e3f4f60708292a397826b56402b16000000000007121c262e363c42474b5f748b836c574c49443e372e241a0e0000000000001f344a5f748ba0949090909090909090909090909090909090806a543f2a1500000000000011263b50667b91947d68533e29130000000000000000000000091928374654616d78828b93989c9b9b9b9b9690887d7469798a9686756555432f1b060000000000000000000000000d2135485c7083959585715d4a36230f000000000000000000000000001d3246596d829595836f5b4734200c00000000000000000b1f33465a6d829595826d5a46321d0000000010213243536271808f9b9489807873706f7073788089939285768998836c57422c1700000b17273c52677c9399846e58432e2626262520160a091a2d3f53667a8f9c88735f4a36210c00000f1f2c363a3b3a38342b1e0e00000003182d42576c8398937c67523c271200000000000313243445556676879890806e5e4d3d2c1b0b0000000000000000000000000000000000000005182b3e5164778a9d8f7b6855422f1c09000000000000000000000000000000000000000e2031415161707d8b97988d857d797676777a8088929c928677695a4b3b2a1907000000000f22364a5d718598927d6a5743301c08000000000000081b2f42566a7d919986715e4a37230f001f344a5f748ba08b745f4a341f0a000000000a1a2b3c4c5d6d7d8f9fac97826b56402b16000000010d19252f39424a51575c6063748b836c64615d58524a41372b1e1102000000001f344a5f748ba08b79797979797979797979797979797979797969543f2a1400000000000011263b50667b91947d68533e29130000000000000000000006172737465564717d8a959b928c88868687898f969b918679879789786757473726130000000000000000000000000216293d5064778c9fa18d7965523e2b1704000000000000000000000000172a3e5165788d9f8b7763503c2814010000000000000013273b4e62758a9d8d7965523e2b17000000091b2d3f50617082909c8f82766c645e5b5a5b5f646c75828d94868998836c57422c1700091a28343c52677c9399846e58433b3b3b3b3a332819081023374b5f74889d8e78644f3a251000081b2d3d494f4e4e4e483c2c1c0e07060f1f32465b70859a907b66513c271200000000000006162737485869798a9b8d7c6b5a4a39291808000000000000000000000000000000000000000e2134475a6d80939885725f4c392613000000000000000000000000000000000000081a2c3d4e5f6f808e9c91857a706964616062666c74808a9796887868584836251301000000071a2e4155697c909a87735f4b3824100707070707071023374a5e728699917d6956422e1b07001f344a5f748ba08b745f4a341f0a0000000617273849596a7a8c9c99a197826b56402b16000004121f2b37414c555d656b707578798b837b7876726d665e54493c2f2010000000001f344a5f748ba08b7464646464646464646464646464646464645d4c3a261100000000000011263b50667b91947d68533e2913000000000000000000001223344555647382909c92887d7772706f70747a828c96988c958b7a6a5a4a392919080000000000000000000000000a1e3145596c8094959395826d5a46331f0c0000000000000000000000000e2236495d70849893806b5744301c09000000000000081b2f43566a7d929885715d4a36220f0000011426384b5c6e808f9c8d7d706459504a4644464a5059636f7c8a959498836c57422c1700142738464f52677c9399846e5850505050504f45372613081c31455a6f8499927c68533e2814000f23374a5b646363635a4a3a2b211c1b212d3c4e61758a9e8d77634e39240f00000000000000091a2a3b4b5c6c7c8d9a89786857473626150400000000000000000000000000000000000005182b3d5063768a9d8f7b6855422f1d0a0000000000000000000000000000000000132537495b6c7d8e9e8f8273685d554f4c4b4d5158616d798796978776655442301e0b000000001226394d6074889c8f7a6753402c1d1d1d1d1d1d1d1d2b3f53667a8e9c8975614e3a261300001f344a5f748ba08b745f4a341f0a00000314243545566777889993849597826b56402b1600051422303c48545f68717980868a8d909492908f8c87827971665a4d3e2e1d0c0000001f344a5f748ba08b745f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4a3f2f1d0a00000000000011263b50667b91947d68533e29130000000000000000000b1e2f4152637383929a8d80746a635d5b5a5c5f666f798591a1937d6d5c4c3c2c1c0b0000000000000000000000000012263a4d6175889c89869a8a76624e3b2714000000000000000000000000061a2d4154687c909b8773604c3825110909090909091024374b5f72869a907c6955412e1a0700000a1d304356687a8c9d8e7d6e6052473d35312f31363d46515e6c7a8a9a98836c57422c17001c3044566366677c9399846e6666666666666355432f1b06172c41566b809595806a55402b160012273c5166797878776858493d353130353e4a5a6b7d929a86725d4935200b00000000000000000c1d2d3e4e5f6f8090978675645443332212010000000000000000000000000000000000000e2134475a6d80939885725f4c39261300000000000000000000000000000000091c2f425467798a9b90807063564b413b3736383d454f5b687787979483715f4d3a2815020000000a1d3145586c809397836f5c4834323232323232323233475b6e839694806d5945321e0a00001f344a5f748ba08b745f4a341f0a000010213142526373859597867d9497826b56402b1600112232404e5a66717b858d949a9a979495939394979c968d84786b5c4c3b29180500001f344a5f748ba08b745f4a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a362d21110000000000000011263b50667b91947d68533e291300000000000000000215283b4d5e7082929a8b7c6e62574f494644474b525e6f8090999b8b7a69584634210e000000000000000000000000071b2e4255697c9094827d92927d6a5743301c080000000000000000000000001125394c6073889b8f7b6854402d1e1e1e1e1e1e1e1e2c3f53677a8e9c8874604d39261200000013263a4d6072859892806f5f5042352a211c1a1c212934404e5c6b7b8c98836c57422c17001f344a5f737b7b7c9399847b7b7b7b7b7b7b725d48331e0914293e53687d9497826c57422c170011263b5065798f8f8675675a514a464649505b6878899b917d6a57432f1b060000000000000000000f2030415161728393938372615140301f0e00000000000000000000000000000000000004172a3d506376899c8f7c695643301d0a0000000000000000000000000000001225394c5f728596948372615245382e2622212329323d4a5968798a9c8f7c6a5744311e0a0000000215293c5063778b9f8b776350474747474747474747474f63768a9e8c7864513d2a160200001f344a5f748ba08b745f4a341f0a000d1d2e3f4f607082929a8a797d9497826b56402b1600192d40515e6b77848f9899918a86827d887c7c808388909996897a6a594734210e00001f344a5f748ba08b745f4a342525252525252525252525252525221b10030000000000000011263b50667b91947d68533e291300000000000000000c1f3245586a7c8e9d8c7b6c5e51453b34302f3b4c5c6c7c8d92849398877563503e2b180500000000000000000000000f23364a5d7185998c78768a9a87725f4b382411000000000000000000000000091d3044586b80939784705c4835333333333333333334485b6f839694806c5845311e0a0000061a2e4256697c909987746351413224170d0710191f2122303e4d5e738998836c57422c17001f344a5f748b91919a9f9291919191919189735e48331e0912273c52677c9398836c57422c17000d22374c61768ba09486786d645e5b5b5e646d798796978673614e3b2714000000000000000000000212233344546475869690806f5e4e3d2c1c0b0000000000000000000000000000000000000e213447596c80939986725f4c392613000000000000000000000000000005192d4154687b8f9c897765544434271b120d0b0e15202d3b4a5b6d7d919a8874604d3a2612000000000d2134485b6f839793806c5c5c5c5c5c5c5c5c5c5c5c5c6b80939884705c4935210e0000001f344a5f748ba08b745f4a341f0a0a1a2b3b4c5d6d7d8f9e8d7c6b7d9497826b56402b16001e33485d6f7c8995998f857c76706c72887c676a6d747c889698887664513e2a1602001f344a5f748ba08b745f4a341f0f0f0f0f0f0f0f0f0f0f0f0f0f0d0700000000000000000011263b50667b91947d68533e2913000000000000000014283b4e6175889a91806e5e4e4033282027394959697a8a958575879892806d5a4734200d0000000000000000000004172b3e5266798d9884706e82968f7a6753402c190500000000000000000000000115283c5063778a9e8c776450484848484848484848485063778b9f8c7764503d29150200000d2136495d718699907c6a5745342314060212212d3436363636485e738998836c57422c17001f344a5f748b8b8b969c8c8b8b8b8b8b8b89735e48331e0913283d53687c9398836c57422c1700091e33485d71879b96938a80787370707278808a97988979685644311e0b0000000000000000000000051526364757687889998d7c6b5b4a3a291908000000000000000000000000000000000004172a3d506376899c8f7c695643301d0a000000000000000000000000000c2034485d70859892806c59483626170900000000030f1d2d3d4f6174879b907c6955412d190400000005182c4053677a8e9b887472727272727272727272727273879b8f7b6854402d19060000001f344a5f748ba08b745f4a341f0a17273849596a7a8c9c90806f687d9497826b56402b16001f34495e72849692877b7269615c5c72887c675459606a77889994826d5945311c08001f344a5f748ba08b745f4a341f0d0d0d0d0d0d0d0d0d0d0c0800000000000000000000000011263b50667b91947d68533e291300000000000000071c3043576a7d929986736150403022161b304456677788988877697b8e9d8a7763503c2814000000000000000000000c1f33475a6e8295907c6866798e97836f5c4834210d0000000000000000000000000c2034475b6f839694806c5e5e5e5e5e5e5e5e5e5e5e5e6c809397836f5c4834210d00000012273c5064798d9c8874604d3a281605000d20303f484b4b4b4b4b5e738998836c57422c17001f34495d7074747c939984747474747474746f5c47321d08152a3f54697d9497826b56412c1700041a2f44586d83978e8390948d888786888d949d9488796b5b4a39271502000000000000000000000000081829394a5a6b7b8c9a8a796858473726150500000000000000000000000000000000000d203346596c80939986725f4c3926140100000000000000000000000011263b4f63778c9e8a76624f3c2a1908000000000000000f203244576a7d929985705c48331f0a000000001024374b5f72869a908888888888888888888888888888909b8773604c382511000000001f344a5f748ba08b745f4a341f14243545566677889994837261687d9497826b56402b16001b2f425567798b8275695f554d475c72887c6752454d59697c909d89745f4b36210c001f344a5f748ba08b745f4a342222222222222222222222211c13070000000000000000060911263b50667b91947d68533e29130a0600000000000e22364b5f73879b8f7c695644322212041e33485e7383838379695e70859893806b57432f1b0600000000000000000014283b4f63768a9c8874605e7286998c7764503d291502000000000000000000000004182b3f53667a8e9c887473737373737373737373737373889b8f7b6754402c1905000000172c41556a809496826d5845311e0b000015293d4e5c606060606060738998836c57422c17001a2e41515d5f677c9399846e5f5f5f5f5f5f5d513f2c1904192d42576c8297947d69543f2a150000162a3f54697d93927c808a92989b9b9b98928b8276695c4d3d2c1b0a00000000000000000000000000000b1b2c3c4d5d6e7d8f978675655444332312010000000000000000000000000000000004172a3d506375899c8f7c695643301d0a000000000000000000000000172b4054697d9397836e5a4733200d00000000000000000215283b4f63778b9f8b76624d38240f00000000081b2f43566a7d92a09795959595959595959595959597a093806b5744301d09000000001f344a5f748ba08b745f4a341f21314252637385959787756554687d9497826b56402b16001325374a5c6e807163574c4239475c72887c67523c3b4d61758ba08e78634e39240f001f344a5f748ba08b745f4a3737373737373737373737373630251606000000000005111a1f1f263b50667b91947d68533e291f1f1b120700000013283c5165798e9c8873604c39271504001c314559686c6c6c6a5c54687c909b87725e4a35200c0000000000000000081c3043576a7d9293806c58566a7d9294806c5845311e0a0000000000000000000000001023374a5e728699918989898989898989898989898989919a87735f4c382411000000001b30455a6f8499917b67523e2915020000192f44586c767676767676768998836c57422c1700112333414952677c9399846e584a4a4a4a4a48403222100b1f33475c70869a907b66513c2712000011263b5065798f96826d767d84878887837d776e64584c3e2f1f0e000000000000000000000000000000000e1e2f3f5060708292948372615140301f0f00000000000000000000000000000000000d203346596c8092998672604d3a27140100000000000000000000001a2f44596e8398927d68543f2b17040000000000000000000c1f33485c70869a907b66513d2813000000000013273b4e6275899c87808080808080808080808080879c8a76634f3b281401000000001f344a5f748ba08b745f4a341f2e3e4f607082929b8a79685853687d9497826b56402b1600081a2c3e51616b6253463a2f32475c72887c67523c33485e73899f9079644f3a250f001f344a5f748ba08b745f4c4c4c4c4c4c4c4c4c4c4c4c4c4b42342411000000000515232e3434343b50667b91947d68533e3434342f2517080000182d41566b809496826c5844301d0a000016293b4b55575757564c4c6075899e8d78634f3a251000000000000000001124384c5f73879a8c7764504e62758a9c8874604d392612000000000000000000000000081b2f4256697d91a29594949494949494949494949495a2927d6a5743301c08000000001e33485d72889c8d77634e39240f0000001a2f445a6f868c8c8c8c8c8c9098836c57422c17000515232e3c52677c9399846e584334343434332d22140414273a4e62768b9f8b76624d38230e00000d22374c60768b9a857063696e7072706e69635b51473b2e201101000000000000000000000000000000000011213242536374859590806f5e4e3d2d1c0c000000000000000000000000000000000417293c4f6275899c907c695643301d0a00000000000000000000001d32475c72879c8e78644f3a25110000000000000000000004192e42576c829794806a543f2a1500000000000b1f32465a6d82958e7a6a6a6a6a6a6a6a6a6a6a7a8e96836e5b4733200c00000000001f344a5f748ba08b745f4a342b3b4c5c6d7d8f9e8e7c6c5b4b53687d9497826b56402b1600000f2133435056514435281d32475c72887c67523c394b5f748a9f9079644f3a250f001f344a5f748ba08b7462626262626262626262626262625f52412d190500000011233341494a4a4a50667b91947d68534a4a4a494235251401001b30455a6f8599917b67523e29150100000c1d2d3940424242413a465a6f8499927c68533e29140000000000000005192c4054677b8f97836f5c48465a6d8295907c6955422e1b0700000000000000000000000013273a4e6175899c877d7d7d7d7d7d7d7d7d7d7d7d879c8a76624f3b281400000000001f344a5f748a9f8b76604b36210c0000001a2f445a6f869090909090909090836c57422c1700000512273c52677c9399846e58432e1f1f1f1e1911050f203143566a7d929a86705c48331f0a0000091e33485d71879b89735f55595b5c5b59554f473e35291d1002000000000000000000010202020202020202041425354556667788988d7c6c5b4b3a2a1908000000000000000003030303030303030d203346596c8092998673604d3a271401000000000000000000001f344a5f73899f8c76614c37220d0000000000000000000000152a3f54697d9497826c57422c17000000000003172a3e5165798d96836e5b5454545454545b6f83968e7a66533f2b180400000000001f344a5f748ba08b745f4a343848596a7a8b9c91806f5f4e3e53687d9497826b56402b160000041525333d403d3426171d32475c72887c6752404a57687a8fa28d78634e39240f001f344a5f748ba08b777777777777777777777777777777705d48331e080000001a2e41515d5f5f5f5f667b91947d685f5f5f5f5e5343301c08001e33485d72889d8d77634e39240f000000000f1c262c2c2c2c2c2c41566b809595806b56402b16000000000000000e2135485c7083978f7b6754403e5265798d9985715d4a36230f0000000000000000000000000b1e3245596d82948f7a686868686868686868687a8f95826e5a47331f0c00000000001f344a5f748ba08b745f4a341f0a0000001a2f44596e797979797979797979796b57412c1700000012273c52677c9399846e58432e190a0a09050b141f2d3d4e60738699927d6a56422d19050000041a2f44586d83978d77634e4446474644403b342b22170c0000000000000000000610151717171717171717171717283849596a7a8b9b8a796858473726160500000000000b1418191919191919191919293c4f6275889b907c695643301d0a000000000000000000001f344a5f748ba08b745f4a35200b000000000000000000000013283d52677c9398836c57422c170000000000000e2236495d7085988a76634f3f3f3f3f4f63768a9986725e4a3723100000000000001f344a5f748ba08b745f4a344556667788989484726251413e53687d9497826b56402b16000000071521282b2921161a2132475c72887c6752535c687586989c88735f4a36210c001f344a5f748ba0918d8d8d8d8d8d8d8d8d8d8d8d8d8d89735e48331e090000001f34495d7074747474747b91947d747474747471604b36210c001f344a5f748a9f8b76604b36210c00000000000a121617171717293e53687d9397836c57422c170000000000000216293d5064778c9b87735f4c38364a5d7185998d7966523e2b1704000000000000000000000002162a3d5164788c97836f5b5353535353535b6f83978d7966523e2b170400000000001f344a5f748b9f8b76604b36210c000000162b3e5160646464646464646464645e4f3c281400000012273c52677c9399846e58432e191717181a1f26313d4b5b6c7d909c8975624e3b271300000000162b3f54697d93917b67523d3132312f2b26201919191712090000000000000a18232a2c2c2c2c2c2c2c2c2c2c2c2c2c3b4c5c6d7d8e97877665554434231202000001111e282d2e2e2e2e2e2e2e2e2e2e3345586b7d92998673604d3a2714010000000000000000001f344a5f748ba08b74604b36200b000000000000000000000013283e53687c9398836c57422c17000000000000061a2d4154687c9093806b5744303043576b8092917d6956422f1b080000000000001f344a5f748ba08b745f4a425263738595988776655544343e53687d9497826b56402b1600000000040d1416161f272e353b475c72887c67606770798694a291806c5844301c07001f344a5f748ba097949494949494949494949494949489735e48331e090000001f344a5f748b8b8b8b8b8b95978b8b8b8b8b8b77624c37220d001f344a5f748ba08b745f4a341f0a000000000000000000000012273c52677c9398836c57422c170000000000000a1e3145596c809493806b5744302e4255697d9195826e5a47331f0c0000000000000000000000000e2135495c7084978b7763503e3e3e3e5063778b9985715d4a36230f0000000000001e33485e73889d8d77634d39240f0000000f2233424c4f4f4f4f4f4f4f4f4f4f4b40311f0d00000012273c52677c9399846e58432e2c2c2c2d2f333a434e5b69798a9b917d6c5946331f0b0000000012263b5065798f95806b56412e2e2e2e2e2e2e2e2e2e2c261b0e00000000061828363f4242424242424242424242424242424f5f70809194837262514130200f00000e1f2f3b424343434343434343434343434e6175889b907c695644311e0b0000000000000000001f34495e73899e8c77624d38230e0000000000000000000000162b40556a809496826b56402b16000000000000001225394c6073889b8773604c38384c5f73879b8975614e3a2713000000000000001f344a5f748ba08b745f4a4f607082929b8b7969584837293e53687d9497826b56402b16000000000004121e28333b434950555c72887c6f757b838c97a0938473614f3c291501001f344a5f748ba08b7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d735e48331e090000001f344a5f748b99999999999fa199999999998d77624c37220d001f344a5f748a9f8b76604b36210c000000000000000000000014293e53687d9397826c57422c1700000000000012263a4d6175899c8b77634f3c28263a4e6175899c8a76624f3b281400000000000000000000000006192d4054687b8f93806c5844313044586b8093907c6955422e1b070000000000001c31465b70869a907b66523d291400000004152430383a3a3a3a3a3a3a3a3a3a372f22130200000012273c52677c9399846e5843424242424344484e56606c798898958573614f3c291603000000000d22374c61768b99846f5a454343434343434343434341392c1c0a000000102336465357575757575757575757575757575757576272839491806f5f4e3e2c1a0600182b3d4d5758585858585858585858585858586b7d91998673604d3a27140100000000000000001c31475c70869b907a65513c281300000000000000000000071b2f44586d8397937d68533e291400000000000000091d3144586b80938f7b6754404053677b8f95826d5946321e0b000000000000001f344a5f748ba08b745f4c5c6d7d8f9e8e7d6c5c4b3a2a293e53687d9497826b56402b16000000000514222f3b464e575d646a6f74887d838990979f998f837465554432200d00001f344a5f748ba08b746868686868686868686868686868655644301b060000001f344a5f74848484848484929584848484848477624c37220d001e33485d72889d8d78634e39240f0000000000000000000002172c41566b809595806a55402b160000000000071b2e4255697c9196836f5b4734201e3245596d8295927d6a5743301c080000000000000000000000001125384c6073879b8873604c39384c6073889b8975614d3a261200000000000000182d42576c829595826c58432f1c0800000006131d23252525252e3638352d25231c12040000000012273c52677c9399846e585757575757585a5d6269727d8a9897887767554432200d0000000000091e33485d72879b88735e5858585858585858585858554a3a2714000000152a3f53646c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c7687978e7d6c5c4936210d001e32475a6a6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e74889b907d6a5744311e0b0000000000000000192e43586c829694806b56422e1b070000000000000000000e22364a5e72879c8e79644f3b2611000000000000000115283c5063778b9784705c48485c6f83978c7865513e2a1603000000000000001f344a5f748ba08b745f596a7a8b9c9180705f4e3e2d1c293e53687d9497826b56402b1600000003132332404d58626a72787d84899093989e9a958d867c706456473827150300001f344a5f748ba08b745f535353535353535353535353535148392714010000001e32475a6a6e6e6e6e6e7b91947d6e6e6e6e6e6c5d4935200b001c31455a6f8599917c67523e291501000000000000000000091d31465a6f8499917c67523d281300000000000f23364a5d7185998e7a67533f2b18162a3e5165788d9a87735f4c382411000000000000000000000000091c3044576b8092907c6854414054687b8f94806c5945311e0a0000000000000014293d52667a8f9b87725f4b3825130100000001090e0f0f1f303f4a4e493e33271b0d000000000012273c52677c9399846e6c6c6c6c6c6c6c6f72767d86909b948778695949382714020000000000041a2f44596d83978c776e6e6e6e6e6e6e6e6e6e6e6e6857432e1a050000172c42576c838383838383838383838383838383838383838383909b8a79644f3a240f001f344a5f748484848484848484848484848484848484969a8773604d3a27140100000000000000152a3e53677c909a86725e4a372412000000000000000006192b3e5165798d9c88735f4a36210d00000000000000000d2034475b6f83968c7764505063778b9884705d4935220e00000000000000001f344a5f748ba08b745f66778898958473625241302013293e53687d9497826b56402b160000000e203141505e6a757d868d93999e9e95908c86807972695f534738291a090000001f344a5f748ba08b745f4a3e3e3e3e3e3e3e3e3e3e3e3e3d362a1b0a00000000182b3d4d5758585858667b91947d6858585858574e3f2d1a0600182d41566b809596826d5844311d0a0000000000000000001125384c6074899d8c77634e3925100000000004172b3e5266798d9a86725f4b3724100e2235495d7085988f7b6754402c190500000000000000000000000114283b4f63768a9884705d49485c7084978c7764503d291602000000000000000f23374c6074889c8f7a675442301f0f0100000000000818293c4e5d635c5044392b1b090000000012273c52677c939a85838383838383838384878b9199988e8376695a4b3b2b1a0900000000000000162b4054697d939084848484848484848484848484705b46301b060000172c42576c8398989898989898989898989898989898989898989da09079644f3a250f001f344a5f748b99999999999999999999999999999999a0a0907d6a5744311d08000000000000001024394d6175899d8d796653412f1e0d00000000000005142436485a6d829595826d5945301c08000000000000000004182b3f53667a8e94806c59586c80938f7c6854412d190600000000000000001f344a5f748ba08b746373849598887666554534231313293e53687d9497826b56402b16000005182b3e4f5f6e7c88929a9c958f8a8c807b77716b655e564c4136291a0b000000001f344a5f748ba08b745f4a3429292929292929292929292822190c00000000000e1f2f3b4243434350667b91947d6853434343423c302110000013283d5165798e9c8874604d39271503000000000000000b1c2e4154677b8f9a86715d4934200b000000000c2033475a6e8296927d6a57432f1b08061a2d4155687c9097836f5c4835210d0000000000000000000000000c2033475a6e82968c7865515064778c9784705c4835210e0000000000000000091d3145586c80939885725f4e3d2d1f13090505080e18263647596b786e6256493926130000000012273c52677c93a0999898989898989898999c99948d857b7065584b3c2d1d0d000000000000000012273b5065798f9e99999999999999999999999987705b46301b060000172c42576c838b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b79644f3a250f001f344a5f748b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8773604b36210c00000000000000091e32465a6d82949683705e4c3c2b1d10060000020a152332425365778a9e8d7965513e2a16010000000000000000001023374b5e7286998875616073889b8873604c3925110000000000000000001f344a5f748ba08b747082919c8b7a6959483727160513293e53687d9497826b56402b1600000e2235485b6d7d8d9a9b9088827a75887c67625d57514a42392f24180b00000000001f344a5f748ba08b745f4a341f13131313131313131313130e0600000000000001111e282d2e2e3b50667b91947d68533e2e2e2d291f120300000e22364b5f72879a907c6956443221110400000000000a1828394b5d708497927d6a57432e1a060000000114283b4f63768a9e8a76624e3b271400001225394d6074889c8c7764503d291602000000000000000000000004182b3f5266798d95826d59586c80948f7b6754402d190500000000000000000115293d506376899b8f7d6c5b4b3d30261e1a1a1c222a36445464768980736756422d180300000012273c52677c8b8b8b8b8b8b8b8b8b8b8b8a8884807971685e53473b2d1e0f0000000000000000000e23374c61768b8b8b8b8b8b8b8b8b8b8b8b8b8b87705b46301b060000172c41556974747474747474747474747474747474747474747474747473624e39240f001f34495d7074747474747474747474747474747474747474747471604b36210c0000000000000003162a3e5164778a9d8e7c6a59493b2e221a1514171d27334150607083959583705d4936220e00000000000000000000081b2f42566a7d91907c69687c9093806b5844301d090000000000000000001f344a5f748ba08b747d8f9f8f7d6d5c4b3b2a1a090013293e53687d9497826b56402b16000014293d5164778a9c988a7d746c6672887c675248433d362e261d12060000000000001f344a5f748ba08b745f4a341f16161616161616161616161616120a0000000000000b141819263b50667b91947d68533e291918140d02000000071c2f43576a7d9199867361503f2f21150b0605080f1a28364657687a8d9c8a76634f3b271400000000091c3043576a7d9296826e5a47331f0b00000a1d3145596c809494806c5945311e0a0000000000000000000000000f23374a5d7185998975616074889b87735f4c382411000000000000000000000d203346596c7d909b8a79695b4e4239322f2f31363e47546271839491836f5a442f1a0500000011263b506474747474747474747474747474726f6a655d554c41362a1d0f000000000000000000000a1f33485d6f7474747474747474747474747474746d5945301b05000012263a4c5a5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5e5545331f0b001a2e41515d5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5e5343301c0800000000000000000e2134475a6d809199887767594b3f352e2a292b313944515f6e7d8f9c8a786653402d1a06000000000000000000000013273a4e6175899985717084988b7763503c2815010000000000000000001f344a5f748ba08b7a8b9c9282705f4f3e2e1d0c000013293e53687d9497826b56402b160000192e42576c80959c8a796b60585c72887c67523c2e28221b130c06000000000000001f344a5f748ba08b745f4a342b2b2b2b2b2b2b2b2b2b2b2b2b2b261d10010000000000000011263b50667b91947d68533e2913000000000000000014283b4e6174879991806e5d4d3f32271f1b1a1c232c3845546475869892806d5a4733200c000000001124384c5f73879b8d7966523e2b170400000216293d5064788c9c8874614d3a2612000000000000000000000000071b2e4255697c91917d69687c90927d6b5744301c090000000000000000000004172a3c4e607183939888796c60554d474444464a515a657180909c8a7866533f2b17020000000d213547575f5f5f5f5f5f5f5f5f5f5f5f5f5d5a56504a42392f24180c000000000000000000000005192d40515d5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5c4f3d2a160200000a1d2e3c464a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4943372716030011233341494a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a494235251401000000000000000005182b3d5062738595968676695d5249433f3e40454c56626f7d8d9c8f7d6d5b493624110000000000000000000000000b1e3246596d82958d79788c96836f5b4734200d000000000000000000001f344a5f748ba08b889895857363524131201000000013293e53687d9497826b56402b1600001c31465b70869a94806d5b4e475c72887c67523c27141d232421190e0000000000001f344a5f748ba08b745f4a4040404040404040404040404040403a2e1f0f0000000000000011263b50667b91947d68533e291300000000000000000b1e3144576a7c8d9d8c7b6b5d50443b34302f31363f4a566372829398877562503d2a170400000005192d4054677b8f9986725e4a37230f000000000d2135495c708498907c6955422e1b0700000000000000000000000012263a4d6175899986727085988a76634f3b28140100000000000000000000000d1f31435465758594988a7d7268615c5a5a5b5f656d7783909e8f7d6c5a493623100000000005182a39444a4a4a4a4a4a4a4a4a4a4a4a4a4845413c362e261c12070000000000000000000000000011223240484a4a4a4a4a4a4a4a4a4a4a4a4a4a4a483e31200e00000000101e2a32343434343434343434343434343434343434343434343434343026190a00000515232e34343434343434343434343434343434343434343434342f251708000000000000000000000e213244566777889795887a6f655d5754535559606973808d9c918270604f3d2b190700000000000000000000000003162a3d5164788c958280948e7a66533f2b1804000000000000000000001f344a5f748ba098989888776656453424130300000013293e53687d9497826b56402b1600001d32475c72889d907a66513d475c72887c67523c272430383a352b1e0e00000000001f344a5f748ba08b745f565656565656565656565656565656554c3d2c190500000000000011263b50667b91947d68533e291300000000000000000215283a4c5e6f82919a8a7b6e61574e484544464b525c677382919b8b7a69574533200e000000000e2135485c708497917d6956422e1b070000000006192d4054687c909985715d4a36230f0000000000000000000000000a1e3145596c80948d79788d96826e5a4733200c000000000000000000000000021325364757667585929b8f857c75716f6f707479828a949c8f8070604f3d2b190700000000000c1b28313434343434343434343434343433302c27211b12090000000000000000000000000000000514222d33343434343434343434343434343434332c21130200000000000d171d1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1b14090000000005111a1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1b1207000000000000000000000003152738495969788795988c8278716c6a686a6e747c86919d90827263534231200e00000000000000000000000000000e2235495c7084988a889a86725e4b37231000000000000000000000001f344a5f748ba0ac9c8c7a6a5948382716060000000013293e53687d9497826b56402b1600001d32475c72889d9079644f3a475c72887c67523c2733424c4f493c2c1a08000000001f344a5f748ba08b746b6b6b6b6b6b6b6b6b6b6b6b6b6b6b6b695b4834200b00000000000011263b50667b91947d68533e29130000000000000000000b1d2f4052627283929a8c80746a635d5a5a5b5f656e7985929b8d7d6d5c4b3a2816040000000216293d5064778c9d8975614e3a27130000000000001125394c6073889b8d7966523e2b170400000000000000000000000216293d5064778c968282958d7966523f2b1804000000000000000000000000000719293948576673828d9798908a87868686898e959d958a7d7061524231200e000000000000000a151c1f1f1f1f1f1f1f1f1f1f1f1f1f1e1b18130d070000000000000000000000000000000000000511191e1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1e190f0300000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000091a2b3b4b5a697684909b958d8682807d8083889099988c807163544535251402000000000000000000000000000006192d4154687b8f9796927d6a56432f1b0800000000000000000000001f344a5f748ba09f8f7d6d5d4c3b2b1a09000000000013293e53687d9497826b56402b1600001b30465b70869a917b67523e475c72887c67523c37435160645a4a372513010000001f344a5f748ba08b828282828282828282828282828282828277624c37220d00000000000011263b50667b91947d68533e2913000000000000000000001223344555647382909c91877d77726f6f707479828c97988b7d6e5f4f3e2d1c0b000000000a1e3145596c809495826d5946321e0b000000000000091d3144586c809395826e5a47331f0c0000000000000000000000000d2135485c7083978a899986725e4a37230f0000000000000000000000000000000b1b2a394856636f7a858d949a9c9b9a9b9c98928b83786d60524334241302000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000810141515151410080000000000000000000000030d1315151515140f06000000000008101415151515151515151515151515151514120e0903000000000000000000000000000000000000000d1d2d3c4b5966727d8892999b97949495989d978f857a6e61544536271707000000000000000000000000000000001125384c6073879b9d8975614e3a27130000000000000000000000001f344a5f748ba0928270604f3f2e1d0d00000000000013293e53687d9497826b56402b160000182d42576b809596826e5c4c475c72887c6752414a55617078675543301e0c0000001f344a5f748ba099979797979797979797979797979797978d77624c37220d00000000000011263b50667b91947d68533e29130000000000000000000005162737465564717d8a959a928c88868486898e959c92867a6d5f5041312010000000000012263a4d6175899c8d7965513e2a17030000000000000115293c5064778b9e8a76624f3b281400000000000000000000000005192c4054677b8f9898917d6956422e1b07000000000000000000000000000000000c1b2a3845515d6771798085888b8b8987837d776f665b4f42342516060000000000000000000000000000000000000a1114151515130e05000000000000000000000000000000000000000000000000000002070b0d0e0e0d0a0702000000000000000000000000000e1a24292a2a2a29241a0e000000000000000000071520272a2a2a2a2822180b0000000e1a24292a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a27231e170f050000000000000000000000000000000000000f1e2d3b4855606b757d858a8e9091908d89837b72675c504336271809000000000000000000000000000000020a0f1d3044576b808c8c826d5946321f0b0000000000000000000000001f344a5f748b8c85746352423121100400010609090913293e53687d8c8c826b56402b16000014283d5165788c9e8b796a5d545c72887c6752555d6772808572604e3b28140000001f344a5f748b8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c77624c37220d00000000000011263b50667b91947d68533e29130000000000000000000000091928374653606d78828b93999c9b999b9c9791898074685c4f413223130300000000001a2e4255697c919985715d4936220e00000000000000000d2134485c6f8397927d6a5743301c070000000000000000000000001124384c5f73879a9c8975614e3a26130000000000000000000000000000000000000c1a2734404a545d656b7073747473716e69635b53493d31241607000000000000000000000000000000000003111d262a2a2a2a2822170a00000000000000000000000000000000000000000000000911171c2022232322201b161008000000000000000000000c1d2c373e3f3f3f3e372c1d0c00000000000000051525333c3f3f3f3f3d35291a08000c1d2c373e3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3c38322b22180d0000000000000000000000000000000000000f1d2a37434e5861697075787b7b7978746e675f554b3f3326180900000000000000000000000000000007141e2426283b4f637476767565513e2a17050000000000000000000000001f34495d7076767567564535262520160e151b1e1e1e1b283d5266757676766954402b1500000e2235495c6f829298887a70686472887c67646a71798590907d6b58432e190400001f34495d70767676767676767676767676767676767676767672604b36210c00000000000011263b50667b91947d68533e29130000000000000000000000000a192836434f5b656f777d8488898b8987837c756c62574b3e312314040000000000001f34495d71858b8b7c6955412e1a06000000000000000005192c4054677b8b8b87735f4a35200b000000000000000000000000081c3043576a7d8b8b826d5945321e0a000000000000000000000000000000000000000a16222d38414a50565b5e5f5f5e5c59544f483f362c20140600000000000000000000000000000000000010212f3a3f3f3f3f3d35281907000000000000000000000000000000000000000009131c242b31353738383734302b241b1208000000000000000016293b495354545453493b29160200000000000011223343505454545452473725120016293b495354545454545454545454545454545454514c463e352a1e110300000000000000000000000000000000000c1925313b454e555c6063666665635f5a534c42382d21150800000000000000000000000000000005162531393b3b3a4656606060605848362b22180c00000000000000000000001a2e41525e60606058493a3b3b3a332822292f333333302a374959606060605a4b3926110000061a2d3f5263748593988d847d7876887c76797d858d97978b7d6d59442f1a0400001a2e41525e60606060606060606060606060606060606060605f5444311d0800000000000011263b50667b91947d68533e2913000000000000000000000000000a1825323d49525c636a6f72747473716d6861594f45392d201304000000000000001f34495d7074747472614d392612000000000000000000001124384c5f70747474705e4a35200b0000000000000000000000000014283b4f627374747464513d2a1602000000000000000000000000000000000000000005101b252e363c4246484a4a494744403a342c23190e02000000000000000000000000000000000000071b2d3f4c545454545146362411000000000000000000000000000000000000020f1b26303840454a4c4e4e4c49453f372e251a0e010000000000001d314558676a6a6a675845311d0800000000000d1e2f4051616a6a6a6a6555422d19001d314558676a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6866615a51473c2f211203000000000000000000000000000000000008141f28323a41474b4e5859524e4a453f382f261b1004000000000000000000000000000000000f2234434e50504f47444b4b4b4b4848453e35291c0d00000000000000000000122434424a4b4b4b46454e50504f4537353e44484848443e343b464b4b4b4b473c2d1c0a00000010223446566674828e9798928f8c8e8b8c8f9399988f85796d60503e2a16010000122434424a4b4b4b4b4b4b4b4b4b555a544d4b4b4b4b4b4b4b4a433626140100000000000011263b50667b91947d68533e291300000000000000000000000000000714202b363f484f555a5d5f5f5e5c59534d453c32281c100300000000000000001a2e41515d5f5f5f5e5444311e0a00000000000000000000081c3042525d5f5f5f5d52422f1b07000000000000000000000000000c1f3345555e5f5f5f574735210e000000000000000000000000000000000000000000000008121a21282d3133343434322f2b262018100700000000000000000000000000000000000000000d22364a5d696a6a6a6454402c18030000000000000000000000000000000004121f2c38434c545a5f626363615e59534b41372c1f120400000000001f344a5f74808080745f4a341f0a00000000091a2b3c4d5e6f80808080705b46301b001f344a5f748080808080808080808080808080807d7b756e64594d3f302110000000000000000000000000000000000000020c151f262d394a5b6b6d655e51412e241c1309000000000000000000000000000000000000172b3f526166666457454750585d5e5e5a51473a2b1c0b0000000000000000000616242f3536363641546266666355434851585d5e5d595145383236363636332b1e0f0000000005172838485764707a848b9094979b9a9895918c857c72675c4f4232210e0000000616242f35363636363636364555666f68605646363636363635302618080000000000000011263b50667b91947d68533e2913000000000000000000000000000000020e19232c343b4045484a4a4947443f39322920150a0000000000000000000011233341494a4a4a494336261502000000000000000000000013253441494a4a4a494134241200000000000000000000000000000316273743494a4a4a44392a180500000000000000000000000000000000000000000000000000060d13181c1e1f1f1f1d1a16110c05000000000000000000000000000000000000000000000f253a4f64798080806f5a442f1a05000000000000000000000000000000021222303d4a555f686e7377787876736d675e54493d30221303000000001f344a5f748b958b745f4a341f0a00000005162738495a6b7c8d9589776656422e19001f344a5f748b959595959595959595959595959594908a82776b5d4e3f2e1d0b0000000000000000000000000000000000000004152536475768788279705d49341f0900000000000000000000000000000000000000001a2f44596e7b7b7560515a636c7273736e6458493a28160400000000000000000006121b20212132475c717b7b725d515b646d7273726d63564738262121211e180d0000000000000a1a2a3946535e6770767b80828b8583807c7770685f554a3e312314040000000006121b2021212121213041526273847c74634f3a25212121201c1408000000000000000011263b50667b91947d68533e2913000000000000000000000000000000000006101920262c3033343434322f2a251e160d0300000000000000000000000515232e34343434342f2518090000000000000000000000000716242e34343434342e2416060000000000000000000000000000000a1926303434343431281b0c0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000f253a4f64799095866f5a442f1a05000000000000000000000000000000102030404e5b67727b83898c8f8e8c88837a71675b4e40312111000000001f344a5f748ba08b745f4a341f0a00000112233445566777899a8d7b6a5a49382613001f344a5f748ba0918d8d8d8d8d8d8d8d8d8d8d8d8f959e94897b6c5d4c3a28150200000000000000000000000000000000000011223243546475869483705d49341f0a0000000000000000000000000000000000000000192f44586d838f7a6a656d7680878988827667584633200d0000000000000000000000070b0b1c31465b70858c7868666e77828889888274655544311e0b0b090400000000000000000c1b2835414b545b62666a748b836c6b67625c554c43382c20130500000000000000070b0b0b0c1c2d3e4e5f7082918976644f3a25100b0b0b080100000000000000000011263b50667b91947d68533e291300000000000000000000000000000000000000050c12171b1e1f1f1f1d1a16100a02000000000000000000000000000005111a1f1f1f1f1f1b1308000000000000000000000000000006121a1f1f1f1f1f1a1206000000000000000000000000000000000009141b1f1f1f1f1c150a00000000000000000000000000000000000000000000000000000000000000020e171d1e1e1e1c191d1e1e1e1b150b00000000000000000000000000000000000f253a4f6479909b866f5a442f1a0500000000000000000000000000000b1d2e3e4e5e6c79858f979a969493959a968e84786b5e4f3f2f1e0d0000001f344a5f748ba08b745f4a341f0a00000e1f3041526373859690806e5e4d3c2b1a09001f344a5f748ba08b77777777777777777777777779828b979a8b7a695745321f0b00000000000000000000000000000000000b1d2f3f506171839389776553412e1a060000000000000000000000000000000000000000162a3f53677b8e887c79808a938b888a92867563503d29140000000000000000000000000000182d41566a7d90867b7a828b928a888a928473614e3a26120000000000000000000000000b18242e3840474d525f748b836c57524e48413930261b0f0300000000000000000000000518293a4b5c6c7d8e8f7c6b594734210c000000000000000000000000000011263b50667b91947d68533e29130000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000112202b32333333312d3233333330281c0d00000000000000000000000000090f1212253a4f6479909b866f5a442f1a12110d05000000000000000000000316283a4b5c6c7c8a97988e86827d7d80868d97968a7c6d5d4d3c2a180500001f344a5f748ba08b745f4a341f0a000a1b2c3d4e5f7082929484726151402f1e0d00001f344a5f748ba08b746262626262626262626262656d798897988775614e3b2713000000000000000000000000000000000013273a4c5d6e80908f7d6b59473624120000000000000000000000000000000000000000001024384c5e70828f9190938a807672758292806c58432f1a050000000000000000000000000013273a4e60728390909092897d75727683907d6a55412c180300000000000000000000000006111b252c33384a5f748b836c574239342d251d1309000000000000000000000000000c2134475869798a9583715f4d3c291805000000000000000000000000000011263b50667b8b8b7d68533e2913000000000000000000000000000000000000000000040d1315151515140f0600000000000000000000000000070f1415151515120c0200000000000000000000000000000000000a1114151515140f06000000000000000000000000000000000008101415151514110b01000000000000000000000000000000000000000000000000000000000000000000000d1f303d4648484846404748484844392b1a070000000000000000000004111d242727273a4f6479909b866f5a442f27272621180c0000000000000000000d20334557697a8b9a92867a726b68686b717a85919a8c7b6b594735221000001f344a5f748ba08b745f4a341f0a061728394a5b6b7c8e9888766555443322110000001f344a5f748ba08b745f4c4c4c4c4c4c4c4c4c4c515b69798b9e927d6a56412d180000000000000000000000000000000000172c41566a7b8b8b8472604e3c2a1806000000000000000000000000000000000000000000091c2f415262707c838480776d635d63758a87715d48331e08000000000000000000000000000b1e31435564727d83847d766c625d64778b846f5a45301b0600000000000000000000000000000811181f344a5f748b836c57422c1f19120a00000000000000000000000000000010253a4f6476878b8a77665342301e0c00000000000000000000000000000010253a4f637374747466523d28130000000000000000000000000000000000000000081621282a2a2a2a2822180b00000000000000000000000c1923292a2a2a2a271f1405000000000000000000000000000002101c252a2a2a2a2822180b0000000000000000000000000000000e1a24292a2a2a2a261e1204000000000000000000000000000000000000000000000000000000000000000000162a3d4e5a5e5e5e5a515c5e5e5e574937230f0000000000000000000012222f393c3c3c3c4f6479909b866f5a443c3c3c3b352a1b0a000000000000000215293c4f62758798918274685e575353565d6773829099897764523f2b1804001f344a5f748ba08b745f4a341f0a132435465767788a9b8c7a695948372615040000001f344a5f748ba08b745f4a3737373737373737383e4b5b6d82959a85705b46311c0000000000000000000000000000000000172c41556974747474665442301f0d0000000000000000000000000000000000000000000000122435445360696d6e6b635a50485b6e74746f5c47321d080000000000000000000000000002142637465561696e6e6a63594f495d7074746d5945301b0500000000000000000000000000000000091f34495d7074746955412c1705000000000000000000000000000000000010253a4f63737474746c5a48362413010000000000000000000000000000000c203446565f5f5f5f584836230e00000000000000000000000000000000000000051626333c3f3f3f3f3d35291a090000000000000000000a1b2a363e3f3f3f3f3b31231302000000000000000000000000000f202e393f3f3f3f3d35291a08000000000000000000000000000c1d2c373e3f3f3f3f3a3022110000000000000000000000000000000000000000000000000000000000000000001a2f44596c7373736b5e6f73737366533e29140000000000000000000a1d2f404c52525252526479909b866f5a52525252504739281501000000000000091d3145586c809295847363564b433e3e424a556271829494826f5b4834200c001f344a5f748ba08b745f4a341f0f20314252637486978f7d6d5d4c3b2a1908000000001f344a5f748ba08b745f4a3422222222222222232d3e5165798f9e89735e49341f000000000000000000000000000000000012263a4c5a5f5f5f5f584837251301000000000000000000000000000000000000000000000006172635424d5458585650473d3e505c5f5f5d513f2c1904000000000000000000000000000008192837444e555858554f463c41515d5f5f5c4f3d2a160200000000000000000000000000000000061a2e41515d5f5f5a4c3a26120000000000000000000000000000000000000c203446565f5f5f5f5b4e3d2b19070000000000000000000000000000000004172838444a4a4a4a453a2b1907000000000000000000000000000000000000000f223444505454545452473726150400000000000000061728394852545454544e42311e0b000000000000000000000000061a2c3e4c5454545452473725120000000000000000000000000016293b4953545454544d402f1d0c00000000000000000000000000000000000000000000000000000000000000001b30465b708789866f60768989806a543f2a150000000000000000001125394d5e67676767676779909b866f6767676767645744311c070000000000000f24384c6074889c8a77665546392e29292e3844536476899c8b77634f3a2611001f344a5f748ba08b745f4a36261c2d3e4e5f708292938271604f3f2e1d0c00000000001f344a5f748ba08b745f4a341f0d0d0d0d0d0d0f22374b60768c9f8b745f4a341f00000000000000000000000000000000000a1d2e3c464a4a4a4a453a2b190800000000000000000000000000000000000000000000000000081725303a404343413c342b323f484a4a4840322210000000000000000000000000000000000a1926313a404343413b332a3341494a4a483e31200e00000000000000000000000000000000000011233341494a4a463c2e1d0a00000000000000000000000000000000000004172838444a4a4a4a473e301f0d0000000000000000000000000000000000000b1a27303434343431281c0d0000000000000000000000000000000000000000152a3e51626a6a6a6a655544332211000000000000021324354657666a6a6a69604e3a26110000000000000000000000000c2135495c686a6a6a6555422d19040000000000000000000000001d314558676a6a6a695e4c3b291706000000000000000000000000000000000000000000000000000000000000001b30465b70879b866f60768c95806a543f2a1500000000000000000013283e53687c7c7c7c7c7c7c909b867c7c7c7c7c7c745f4a341f0a00000000000014293e52677b8f95826d5a4837281b14141b273647596c8094927d6954402b16001f344a5f748ba08b7463534435293a4a5c6c7d8f9786756453433221100000000000001f344a5f748ba08b745f4a341f1111111111111123374c61768c9d88735e48331e000000000000000000000000000000000000101e2a323434343431281c0d00000000000000000000000000000000000000000000000000000007131d262b2e2e2c282118222d333434332d221404000000000000000000000000000000000008141e262c2e2e2c272017232e343434332c2113020000000000000000000000000000000000000515232e343434322a1e1000000000000000000000000000000000000000000b1a273034343434332b2012010000000000000000000000000000000000000009141c1f1f1f1f1c150b000000000000000000000000000000000000000000172c42576c80808080736251402f1e0d00000000000f2031425364758080807d68533e29130000000000000000000000000e23384e6378808080705b46301b060000000000000000000000001f344a5f748080807c6a5847352311000000000000000000000000000000000000000000000000000000000000001b30465b70879b866f60768c95806a543f2a1500000000000000000013293e53687d93939393939399a19493939393938b745f4a341f0a000000000000192d42576c82968f7a66523e2b190a000009182a3d5065798f97836d58432e19001f344a5f748ba091827162534436475868798b9b8a79685747362514030000000000001f344a5f748ba08b745f4a3426262626262626262e3f52667a8f99856f5a46311c000000000000000000000000000000000000000d171d1f1f1f1f1c150b0000000000000000000000000000000000000000000000000000000000010a1116191917130d0510191e1f1f1e19110500000000000000000000000000000000000000020b1217191917120c05111a1f1f1f1e190f03000000000000000000000000000000000000000005111a1f1f1f1d170d0000000000000000000000000000000000000000000009141c1f1f1f1f1e180f02000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000152a3e526475869591806f5e4d3c2b1a090000000a1b2c3d4e5f708293948371604e3b26110000000000000000000000000e23384e63788f9587705b46301b060000000000000000000000001d3246596b7d8f9588766452402f1d0b0000000000000000000000000000000000000000000000000000000000001b30465b70879b866f60768c95806a543f2a1500000000000000000013293e53687d848484848484919b87848484848484745f4a341f0a0000000000001c31465b70869a8c76614c37230f000000000d22374c60768c9b866f5a45301b001f344a5f748ba0a090827162524353647586978f7d6c5b4a39291807000000000000001f344a5f748ba08b745f4a3b3b3b3b3b3b3b3b3b404c5c6e8295927d6a55412d180000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000020b1113131313110b020000000f2335465768798a9b8d7b6a59483726150400061728394a5b6c7d8f988775645343321f0b0000000000000000000000000e23384e63788f9c87705b46301b06000000000000000000000000172a3c4e5f71839594826f5e4c3a29170500000000000000000000000000000000000000000000000000000000001b30465b70879b866f60768c95806a543f2a1500000000000000000012273b50626d6e6e6e6e6e79909b866f6e6e6e6e6e6a5a47321e090000000000001e33485e73889d8c76604b36210b000000000b20354a5f748b9b86705b46301b001f344a5f748ba094939080706152607182939282705f4e3d2d1c0b00000000000000001f344a5f748ba08b745f50505050505050505050535d6a7a8c998875614e3b26120000000000000000000000000000000000000000060c11141717171716130f090300000000000000000000000000000000040c10111111100d0600000000000000000000000000000000060d10111111100c040000000000000000000000000000040a0f13161717171715120e090200000000000000000000000000000000000410181c1e1e1e1c17110800000000000000000000000000000000000000070e13131313131313131313131313131313131313131313110b02000000000000000000060a0c0e0d0b080200000000000000000000000005131e2629292929261e13050000061728394a5b6c7d8f99897766554433221102132435465768798a9b8b79685847362514020000000000000000000000000e23384e63788f9c87705b46301b060000000000000000000000000d1e3042546677899b8d7b6a584635231100000000000000000000000000000000000000000000000000000000001b30465b70879b866f60768c95806a543f2a150000000000000000000d213446545b5b5b5b5d6f82949e8c79675b5b5b5b594e3d2b18040000000000001f344a5f748ba08d77634e392511000000001125394d62778c99846f5a442f1a001f344a5f748ba08b84938f8070616d7d8f96857463524131200f0000000000000000001f344a5f748ba08b746666666666666666666666686f7a89988d7c6a5845321f0b0000000000000000000000000000000000010a131a2025292c2c2c2c2b28231e170f06000000000000000000000000000b17202526262626221a0e00000000000000000000000000000d1921262626262520170b00000000000000000000000711181f24282b2c2c2c2c2a27231d160e0500000000000000000000000000000514222c31333333312b241b0f02000000000000000000000000000000000d192328292929292929292929292929292929292929292929261e13050000000000040d141b1f222322201c160e05000000000000000000021423313a3e3e3e3e3a3123140200000a1b2c3d4e5f7082929584736251402f1e0f20314253647586978f7d6d5c4b3a291807000000000000000000000000000e23384e63788f9c87705b46301b0600000000000000000000000001132436485a6b7d8f9988756452402f1d0b000000000000000000000000000000000000000000000000000000001b30465b70879b866f60768c95806a543f2a1500000000000000000012273c506470707070707a8c9c99968572707070706c5a46321d080000000000001f344a5f748ba0917c6854412e1d100707101e2e4154687c9096826c57422d18001f344a5f748ba08b7485948f80707a8c9a8978675645342413020000000000000000001f344a5f748ba08b7b7b7b7b7b7b7b7b7b7b7b7b7c838d968b7d6e5e4c3b2815020000000000000000000000000000000009141d262e353a3e41424242403d38322b23190f0400000000000000000000091a28343a3b3b3b3b362c1e0e0000000000000000000000000d1d2b353b3b3b3b3a34281a09000000000000000005101a242c33393d40424242423f3c38312a22180e020000000000000000000000001123323f464848484640372d20120300000000000000000000000000000b1c2b363d3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3a312314020000000b1620292f3437383735312a22180d00000000000000000c1f31424e535353534e42311f0c0000000f1f3041526374869791806f5e4d3c2b1b2c3d4e5f708293938270604f3e2d1c0b00000000000000000000000000000e23384e63788f9c87705b46301b060000000000000000000000000007192b3c4e6071839593826f5e4c3a2917050000000000000000000000000000000000000000000000000000001b30465b70879b866f60768c95806a543f2a1500000000000000000013293e53687d8787878787978f86988f8787878787735e48331e090000000000001f344a5f748ba09784705d4c3b2d221c1c222e3c4c5e7084978f7b67523e2914001f344a5f748ba08b747586958f8087988d7c6b5a4938281706000000000000000000001f344a5f748ba09591919191919191919191919192968c83796d5f50402f1d0c000000000000000000000000000000030f1b26303a42494f535657575755514c463e362c22160a000000000000000000142738464f50505050493c2b19060000000000000000000005182a3b48505050504f46382714000000000000000916222d3740474d52555757575754514c463e352b20130600000000000000000000071b2e41505b5e5e5e5a544a3e302110000000000000000000000000000015283a48525353535353535353535353535353535353535353534e42311f0c00000f1c28333d43494c4d4c4a453e352a1e110200000000000012273b4e6068686868604e3b271200000002132435455667788a9b8d7b6a59483728394a5b6c7d8f97867564534231200f0000000000000000000000000000000e23384e63788f9c87705b46301b0600000000000000000000000000000d1f3042546677899b8d7b6a58463523110000000000000000000000000000000000000000000000000000051b30465b70879b866f60768c95806a543f2a1500000000000000000013293e53687d909090919c95837a8d9f9990909089735e48331e090000000000001f344a5f748b9f8f8d7b6a594b3f363131363f4b5a6a7b8d9b8874604c38240f001f344a5f748ba08b74677686968f9491806f5e4d3c2c1b0a00000000000000000000001f344a5f748ba0918d8d8d8d8d8d8d8d8d8d8d8f959385796d5f4f413222110000000000000000000000000000000614212d38434d565d63686b6c6c6c6a66615a52493e33281b0e00000000000000001c30445663666666655a4936220e000000000000000000000d2134475965666666635644301c0000000000000b1a27343f4a535b62676a6c6c6c6c6966605a51483d312416080000000000000000000c21364a5e6e7373736f675c4e3f2e1d0b000000000000000000000000001c31455866686868686868686868686868686868686868686868604e3b2712000c1d2d3a4650585d6162625f5951473c2f2011010000000000152a3f54697d7d7d7d69543f2a1500000000061728394a5b6b7c8e99897766554435465768798a9b8a79685746352414030000000000000000000000000000000e23384e63788f9c87705b46301b06000000000000000000000000000001132536485a6b7d8f9988756452402f1d0b00000000000000000000000000000000000000000000020b131a1f30465b70879b866f60768c95806a543f2a1500000000000000000013283d536879797979879b8a786f82949380797979725d48331e080000000000001e33485e73899c878a8877695c514a46464a515c69778899907d6a5744311d09001f344a5f748ba08b745f687787979985736251423223140400000000000000000000001f344a5f748ba08b777777777777777777777779828b978b7d6d5c4b3926130000000000000000000000000000061523313e4a56606971777c82838383807b756e655c5145392c1e0f000000000000001f344a5f737b7b7b7865513e2a170300000000000000000215293d5064777b7b7b735f4a341f00000000000b1a293845515c666f767b80838383827d7a756d645a4f423426170700000000000000000d22374c627788898883796c5d4c3a2815020000000000000000000000001f344a5f747d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d69543f2a1500172a3b4a58636c72767777746d64594d3e2f1f0e0000000000152a3f546a809494806a543f2a1500000000000a1b2c3d4e5f70829295847362514253647586978f7d6c5b4a39281706000000000000000000000000000000000e23384e63788f9c87705b46301b0600000000000000000000000000000007192b3c4e6071839593826f5e4c3a29170500000000000000000000000000000000000000000a151e272e3439465b70879b866f60768c95806a543f2a150000000000000000001024384b5c64646d809292806d6476899b8b7866646154422e1a060000000000001d32475c72889c888091887a6e655e5b5b5e656f7a8896948472604e3b281501001f344a5f748ba08b745f59687888978f807060514132221303000000000000000000001f344a5f748ba08b7462626262626262626262656e7a89998c7a6856432f1b0800000000000000000000000005152433424f5c68737c868d929698989794908a82786e63574a3c2d1e0f0000000000001e33475b6f839191826d5a46321e0b00000000000000000a1d3145586c809191836f5c48331e00000000081929384755636f79838b909597989897948f8982776c60524435251504000000000000000d22374c62778d999c978b7a6a5845311e0a0000000000000000000000001f344a5f748b94949494949494949494949494949494949494806a543f2a15001d324659687580878c8d8d8982776a5c4d3d2c1a0700000000152a3f546a809595806a543f2a150000000000000e1f3041526373859691806f5e4e5f7082939282705f4e3d2d1c0b00000000000000000000000000000000000e23384e63788f9c87705b46301b06000000000000000000000000000000000d1f3042546677899b8d7b6a584635231100000000000000000000000000000000000002101c27313a42484e515b70879b866f60768c95806a543f2a15000000000000000000091c2e3e4a5567798b99867462596b7d90968472604e44362513000000000000001b30455a6f869a897384948c82797370707379828c98948575655543311e0b00001f344a5f748ba08b745f4a5a697989988f7d6f5f5040312111020000000000000000001f344a5f748ba08b745f4c4c4c4c4c4c4c4c4d515c6a7b8d9885725f4b37230e0000000000000000000000021323334251606d7985909999938f8c8c8d90959c958c8074675a4b3c2d1d0c0000000000182b3f53667a8e9d8975614e3a271300000000000000001226394d6074889c8f7a6753402c190000000214263747566573828c969b95908d8c8c8d91979d958a7d70625343332210000000000000000d22374c627784848894998875614d3a26120000000000000000000000001f344a5f748ba0949090909090909090909090909090909090806a543f2a15001f344a5f7487939a9694969c94897a6b5a4937241100000000152a3f546a809595806a543f2a150000000000000112233445566778899a8d7b6a5b6c7d8f97867463524231200f0000000000000000000000000000000000001023384e63788f9c87705b46301b090000000000000000000000000000000001132536485a6b7d8f9988756452402f1d0b000000000000000000000000000000000412202d39444e565d62666970879b866f6b768c95806a543f2a1500000000000000000006182a3c4e607285978e7b69574e60728597907d6b594735231100000000000000192e43586d83978b76758390958d888787888d95998f83756757483725140200001f344a5f748ba08b745f4a4b5b6a798a998e7d6e5e4f3f2f20100100000000000000001f344a5f748ba08b745f4a37373737373737383e4c5d7084988e7a65513d281300000000000000000000000e2031415161707d8b97988d857d797676777a8088929c928677695a4b3b2a1907000000001023374b5e728699917d6a56422f1b07000000000000061a2e4155697c909a86725f4b3824100000000d20324354657484929d9288807a777676787c838a959c8f827161513f2e1b090000000000000b20354a5d6d6e6e758799917c6955412e1a0600000000000000000000001f344a5f748ba08b79797979797979797979797979797979797969543f2a14001d32465a6b7c8e86827d828995998a786654412d1906000000152a3f546a809595806a543f2a150000000000000005162738495a6b7c8d99897768798a9b8a78685746352413020000000000000000000000000000000000091b2d3f5163788f9c87705d4a382614020000000000000000000000000000000007192b3c4e6071839593826f5e4c3a2817050000000000000000000000000000021222303e4b57616a71777b7d82879b868282828c95806a543f2a1500000000000000000011233547596b7d909583705e4c435567798c9b89766452402e1c0a000000000000152b4054697d948e7865727d888f94979897938d867c71645749392a19080000001f344a5f748ba08b745f4a3d4c5c6b7a8b9a8c7c6d5d4d3e2e1f0f00000000000000001f344a5f748ba08b745f4a34222222222222232f4155697d9395806b56412c1701000000000000000000081a2c3d4e5f6f808e9c91857a706964616062666c74808a9796887868584836251301000000081b2f42566a7d919986725e4a37230f0505050505050f2236495d708598927d6a57432f1c08000004172a3d4f617283939b8d80756c6662606063676e7783909f90806e5d4b392613000000000000071b2e404f5959596a7c909985715d4936220e00000000000000000000001f344a5f748ba08b7464646464646464646464646464646464645d4c3a261100172a3c4d5f707d726b696d7685959684705d4935200c000000152a3f546a809595806a543f2a150000000000000000091a2b3c4d5e6f809195847586978e7d6c5b4a392817060000000000000000000000000000000000021426384a5c6e82939f8c7a685644321f0d00000000000000000000000000000000000d1f3042546677899b8d7b6a584634221100000000000000000000000000000f1f30404e5c68737d868c91949698a3979797979a95806a543f2a1500000000000000000b1d2f41536577899b8a77655341374a5c6e80929482705e4c3a281604000000000012273c5165798f927d68606a737a808283827d7872695f5347392b1b0c000000001f344a5f748ba08b745f4a343e4d5c6c7b8c9b8b7b6b5c4c3d2d1e0e000000000000001f344a5f748ba08b745f4a341f0d0d0d0d0d11263b50667b9198836e58432e1903000000000000000000132537495b6c7d8e9e8f8273685d554f4c4b4d5158616d798796978776655442301e0b0000000013273a4e6175899c8e7966523f2b1a1a1a1a1a1a1a1a2a3e5165798d9d8a76624e3b27140000000d2134475a6c7d909c8c7c6e6258514d4b4c4e535b667282909e8c7a6855432f1c080000000000001122313d44444d6074889c8d7965513e2a1602000000000000000000001f344a5f748ba08b745f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4a3f2f1d0a000d1f3041526269605754596676899c8c78634f3a2510000000152a3f546a809595806a543f2a150000000000000000000e1f2f4051627385959183939282705f4e3d2c1b0a0000000000000000000000000000000000000d1f31435567798c9d99978573614f3d2b19060000000000000000000000000000000001132536485a6b7d909988756352402e1d0b000000000000000000000000081a2c3d4e5e6c7a86919a948e8987899b888686868d95806a543f2a15000000000000000416283a4c5e708294917d6c5a48362c3e51637588998d7b69574533210f00000000000e23374c60758a97836e5a5760656a6c6c6b68645d564d524d41332516070000001f344a5f748ba08b745f4a342f3e4e5d6d7c8c9a8a7a6a5b4b3c2c1c0d0000000000001f344a5f748ba08b745f4a341f161616161617283d51667b9199846e58432e19030000000000000000091c2f425467798a9b90807063564b413b3736383d454f5b687787979483715f4d3a2815020000000b1e3246596d829596826e5a47332f2f2f2f2f2f2f2f32465a6d829595826d5a46331f0b00000115293d5063768a9c8f7d6d5e50453d383637393f4854627283949885725f4c3824100000000000000413202a2f3144586c809495826d5945321e0a000000000000000000001f344a5f748ba08b745f4a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a362d21110000011223354450544e423f48596d8297927c67523d2813000000152a3f546a809595806a543f2a150000000000000000000112233445556677899a98968574635241301f0e00000000000000000000000000000000000006182a3d4e607385978f8597907d6c5a48362411000000000000000000000000000000000007192b3c4e6072849593826f5d4c3a28170500000000000000000000001325384a5b6c7c8b98928880787470879b866f6f768c95806a543f2a15000000000000000f21334557697b8e988673614f3d2b213346586a7c8f99877462503e2c1a0800000000091d32465b6f84988a75614e4b5155575757544f494f5f675f51433425140200001f344a5f748ba08b745f4a3420303f4f5e6e7d8d998979695a4a3a2b1b0c00000000001f344a5f748ba08b745f4a342b2b2b2b2b2b2c3344576b809497826c57422d180300000000000000001225394c5f728596948372615245382e2622212329323d4a5968798a9c8f7c6a5744311e0a00000003162a3d5164788c9e8a76634f444444444444444444444e6275899d8d7965523e2b17030000071c3044586c8093978572604f403329232121242b37445465778a9d8f7b67533f2b1703000000000000030e161a293d5064778c9c8975614d3a2612000000000000000000001f344a5f748ba08b745f4a342525252525252525252525252525221b1003000000061726333c3f3b312a3f546a8095947d68533e2913000000152a3f546a809595806a543f2a150000000000000000000005162738495a6b7b90a18c7867564534231201000000000000000000000000000000000000112335485a6c7d909684798c9c8a776553412f1d0b00000000000000000000000000000000000d1f31435466778a9b8d7b69584634221100000000000000000000081b2e425467798a9a8e80756b645f70879b866f60768c95806a543f2a15000000000000091b2d3e51637587998d7a685644322016283a4d5f71839592806e5c4a3726140200000003182c4054687c91917d6a58453c404242413f3b46596c7c6f615243321f0b00001f344a5f748ba08b745f4a341f213140505f6e7d8e978877685849392a1a0b000000001f344a5f748ba08b745f4a404040404040404145516173879b927c68533f2a15000000000000000005192d4154687b8f9c897765544434271b120d0b0e15202d3b4a5b6d7d919a8874604d3a2612000000000e2235495c708498927d6a5a5a5a5a5a5a5a5a5a5a5a5a6a7d929985715d4a36220f0000000d22364b5f73889c8e7a6754423122160e0c0c10192636475a6d809497836e5a46311d080000000000000000000d2135485c708497917c6955422e1a060000000000000000001f344a5f748ba08b745f4a341f0f0f0f0f0f0f0f0f0f0f0f0f0f0d07000000000000081621282a271f2a3f546a8095947d68533e2913000000152a3f546a809595806a543f2a15000000000000000000001121324354657688989b9584736251402f1e0d00000000000000000000000000000000000a1d2f41536577899b8b796e82939583705e4c3a2816040000000000000000000000000000000002132537485a6c7d909987756352402e1d0b0000000000000000000f23374b5e7285978f7d6f6358505b70879b866f60768c95806a543f2a150000000000021426384a5c6e809294826f5d4b3927150b1d2f415366788a9c8b79675543311f0d000000001125394d6175899b8875635243362e2c303845536475898070614e3a251000001f344a5f748ba08b745f4a341f1322324150606f808f9687766757483829190a0000001f344a5f748ba08b745f56565656565656565659626f80919d8a76624e39251100000000000000000c2034485d70859892806c59483626170900000000030f1d2d3d4f6174879b907c6955412d190400000006192d4154687b8f9a87736f6f6f6f6f6f6f6f6f6f6f6f72869a907c6955412e1a0700000012273b5065798e9b87725f4b382513040000000008182a3d5064788d9e8974604b36220d00000000000000000005192d4054677b909985715d4a36220e0000000000000000001f344a5f748ba08b745f4a341f0d0d0d0d0d0d0d0d0d0d0c0800000000000000000000040d131512152a3f546a8095947d68533e2913000000152a3f546a809595806a543f2a150000000000000000000c1d2e3f506172839492869491806f5e4d3c2b1a090000000000000000000000000000000416283a4c5e70829592806e6375889a8e7b69574533210f000000000000000000000000000000000008192b3d4e6072849593826f5d4c3a281705000000000000000015293e52667a8e958370605145465b70879b866f60768c95806a543f2a1500000000000d1f31435567798c9b89766452402e1c0900122436495a6d8091978572604e3c2a18060000000a1e3245596c80929282706153494342444b56627182938f7b67523c271200001f344a5f748ba08b745f4a341f0a14233242516170808f9586756656473727180800001f344a5f748ba08b746b6b6b6b6b6b6b6b6b6b6d74808e9d92806d5a47331f0b000000000000000011263b4f63778c9e8a76624f3c2a1908000000000000000f203244576a7d929985705c48331f0a000000001125384c6073879b8f86868686868686868686868686868f9c8874604d39261200000000162b4054697d9396826c58432f1c080000000000000e2135495d72879c8e7964503b26110000000000000000000d2033475a6e8295a18d7965513e2a160300000000000000001f344a5f748ba08b745f4a342222222222222222222222211c130700000000000000000000000000152a3f546a8095947d68533e2913000000152a3f546a809595806a543f2a15000000000000000008192a3b4c5d6e809097867688988d7b6b5a493827160500000000000000000000000000000f21334557697b8d99887563586a7c8f99877462503e2c1a0800000000000000000000000000000000000d1f31435466778a9b8d7b6958463422110000000000000000192e43586c82958d7865534234465b70879b866f60768c95806a543f2a150000000006192b3d4e60728597907d6b5947352311000007192b3d4f61748698907d6b59473624120000000216293c4f617486988f8071665d5857595f687382909584715f4c38240f00001f344a5f748ba08b745f4a341f0a0414233342516170809094847464554536261401001f344a5f748ba08b82828282828282828282828388929e95857463503d2a17040000000000000000172b4054697d9397836e5a4733200d00000000000000000215283b4f63778b9f8b76624d38240f00000000091d3044576b80939e99989898989898989898989898999e94806c5845311e0a00000000192e43586d8397927c68533e291500000000000000061b2f44596e8398937d68533e291400000000000000000115283c4f63768a9a9395826d5946321e0a00000000000000001f344a5f748ba08b745f4a3737373737373737373737373630251606000000000000000000000000152a3f546a8095947d68533e2913000000152a3f546a809595806a543f2a15000000000000000415263748596a7b8c9b8a78697a8c9a897766564534231201000000000000000000000000081a2c3e50627487998f7c6a584d5f71849692806d5b49372513010000000000000000000000000000000002132537485a6c7d909987756352402e1d0b000000000000001c32475c70869b86715d493630465b70879b866f60768c95806a543f2a1500000000122436485a6c7d90978573604e3c2a18060000000e20324456697b8d9b89776553412f1d0b0000000d2032455768798a9a8f8378716d6c6e737a85919788776654422f1c0900001f344a5f748ba08b745f4a341f0a0005152433435262718291938373635444311d08001f344a5f748ba0999797979797979797979797989c9a90857667564533210e0000000000000000001a2f44596e8398927d68543f2b17040000000000000000000c1f33485c70869a907b66513d2813000000000114283b4f63768a9c88838383838383838383838383889c8c7764503d291502000000001c31465b70869b8f79644f3a25100000000000000000162b40556a809596826b56412c1700000000000000000a1d3144586b80938f82968975614e3a261200000000000000001f344a5f748ba08b745f4c4c4c4c4c4c4c4c4c4c4c4c4c4b42342411000000000000000000000000152a3f546a8095947d68533e2913000000152a3f546a809595806a543f2a15000000000000001122334455667688998e7d6c5d6e8090958573625140301f0e000000000000000000000001132537495b6d80929683715f4d425466788a9d8b79665442301e0c000000000000000000000000000000000008192b3d4e6072849593826f5d4c3a2817050000000000001e33485e738998836d58432e30465b70879b866f60768c95806a543f2a15000000001a2e41536577899b8c7a675643311f0d00000000031527394c5d7082949483705e4c3a2713000000031528394b5c6c7b8a97958c86838284888f989487786959483725120000001f344a5f748b8b8b745f4a341f0a00000616253444536372828b8b8272604b36210c001f344a5f748b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8a867d73665849392816040000000000000000001d32475c72879c8e78644f3a25110000000000000000000004192e42576c829794806a543f2a1500000000000c2033475b6e82968d796c6c6c6c6c6c6c6c6c6c798d97836f5c4834210d00000000001e33485d72889d8c77624c37220d000000000000000013283d53687c9398836d58432e1900000000000000001226394d6074889a86798e917d6955422e1a07000000000000001f344a5f748ba08b7462626262626262626262626262625f52412d19050000000000000000000000152a3f546a8095947d68533e2913000000152a3f546a809595806a543f2a150000000000000d1e2f4051617284959282705f506172839491806f5e4d3c2b1b0a000000000000000000000c1e30425466788b9d8a7866544137495b6d8092968472604e3b29170500000000000000000000000000000000000d1f31435466778a9b8d7b6958463422110000000000001f344a5f748b97826b56402b30465b70879b866f60768c95806a543f2a15000000001f34495d70838b8b826f5d4a3826140200000000000a1c2e40526477898b8b7b6a56412c17000000000a1c2d3e4e5d6c79858f979b9897989a948c8276695a4b3b2a19070000001f34495d70747474705d49341f09000000071626354554637374747471604b36210c001f34495d7074747474747474747474747474747474716a6055483a2b1b0a000000000000000000001f344a5f73899f8c76614c37220d0000000000000000000000152a3f54697d9497826c57422c17000000000004182b3f5266798d95826d5a5757575757575a6d82958f7b6754402c190500000000001f34495e73899f8b74604b36200b000000000000000011263b50667b9199846e59442f1a00000000000000081b2e4255697c90927d72869985715d4a36220f000000000000001f344a5f748ba08b777777777777777777777777777777705d48331e080000000000000000000000152a3f546a8095947d68533e2913000000152a3f546a809595806a543f2a150000000000091a2b3c4d5e6f809196857463524354657688988d7c6b5a493827160500000000000000000517293b4d5f72849692806d5b49372c3e50627486998f7d6b5947352210000000000000000000000000000000000002132537485a6c7d909987756352402e1c0b00000000001f34495e738997826c57422c30465b70879b866f60768c95806a543f2a15000000001f34495d707474747364523f2d1b090000000000000011233547596b747474746955412c1700000000000f20303f4e5b67727b8387898b898680786f64584b3c2d1d0d000000001a2e41515d5f5f5f5d51412e1a06000000000817273645555e5f5f5f5e5343301c08001a2e41515d5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5c564e43372a1c0d00000000000000000000001f344a5f748ba08b745f4a35200b000000000000000000000013283d52677c9398836c57422c170000000000000f23374a5e7286998a75624e424242424e62758a9a87735f4c3824110000000000001f344a5f748ba08b745f4a341f0a000000000000000010263b506579909b866f5a442f1a000000000000001023374a5e71859989756a7d928d7965523e2a17030000000000001f344a5f748ba0918d8d8d8d8d8d8d8d8d8d8d8d8d8d89735e48331e090000000000000000000000152a3f546a8095947d68533e2913000000152a3f546a809595806a543f2a15000000000516273849596a7b8d9b8a78675645364758697a8c9a8978675645342312010000000000000010223447596a7d8f99877462503e2b21334557697b8d9b88766452402d1b09000000000000000000000000000000000008192b3d4e6072849593826f5d4b3a281605000000001d32475c728899846f5a453130465b70879b866f60768c95806a543f2a15000000001a2e41515d5f5f5f5f5646342210000000000000000006182a3c4e5b5f5f5f5f5a4c3a26120000000000021221303d4a555f676d72747473706b645c52473a2d1e0f000000000011233341494a4a4a49413323110000000000000918273743494a4a4a4942352514010011233341494a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a47423b31261a0c0000000000000000000000001f344a5f748ba08b74604b36200b000000000000000000000013283e53687c9398836c57422c17000000000000071b2e4256697d91927d6a56432f2f42566a7d92927d6a5743301c080000000000001f344a5f748ba08b745f4a341f0a00000000000000000f253a4f6479909b866f5a442f1a00000000000005182c3f53667a8d95826d63768a95826d5a46321e0b0000000000001f344a5f748ba097949494949494949494949494949489735e48331e090000000000000000000000152a3f546a8095947d68533e2913000000152a3f546a809595806a543f2a15000000011223334455667789998e7c6b5a49382a3b4c5d6e8090968574635241301f0e000000000000091b2d3f526476889a8e7b695745332115283a4c5e70839593826f5d4b3927140200000000000000000000000000000000000d1f31435466778a9c8d7a695745342210000000001b3045596e83988974604c3a30465b70879b866f60768c95806a543f2a150000000011233341494a4a4a4a44382817050000000000000000000d1f303e474a4a4a4a463c2e1d0a00000000000003121f2c38434c53595d5f5f5e5b5750494035291c0f0000000000000515232e34343434342e231505000000000000000a19263034343434342f25170800000515232e3434343434343434343434343434343434322e271e1409000000000000000000000000001f34495e73899e8c77624d38230e0000000000000000000000162b40556a809496826b56402b160000000000000013263a4d6175899a86725f4b37374b5e72869a8a76624f3b2814000000000000001f344a5f748ba08b745f4a341f0a00000000000000000f253a4f6479909b866f5a442f1a0000000000000d2134485b6f83968d78655b6f83978975614e3a26130000000000001f344a5f748ba08b7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d735e48331e090000000000000000000000152a3f546a8095947d68533e2913000000152a3f546a809595806a543f2a150000000e1e2f4051627385959282705f4e3d2c1d2e3f50617283949282705f4e3d2c1b0a00000000021427394b5d6f82939583705e4c3a28160a1c2f41536577899c8d7a68564432200e000000000000000000000000000000000002132537485a6c7d909887756351402e1c0b000000172b4054697d918f7c69574739465b70879b866f60768c95806a543f2a1c110400000515232e343434343430271a0b000000000000000000000112202b3334343434322a1e100000000000000000020f1b2630383f44484a4a4946423c352d23170c000000000000000005111a1f1f1f1f1f1a110500000000000000000009141b1f1f1f1f1f1b12070000000005111a1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1d19130b0200000000000000000000000000001c31475c70869b907a65513c281300000000000000000000071b2f44586d8397937d68533e2914000000000000000a1e3245596c80948e7a66533f3f52667a8e95826e5a47331f0c000000000000001f344a5f748ba08b745f4a341f0a00000000000000000f253a4f6479909b866f5a442f1a00000000000216293d5064778b9884705d53677a8f917d6956422e1b0700000000001f344a5f748ba08b746868686868686868686868686868655644301b060000000000000000000000152a3f546a8095947d68533e2913000000152a3f546a809595806a543f2a150000091a2b3c4d5e6f8091968574635241301f1021324354657687988e7d6c5b4a392817060000000d20324456687a8c9c8a776553412f1d0a00112336485a6c7d90988673614f3d2b1906000000000000000000000000000000000008192b3d4f6072849692826f5d4b3a281605000011263a4e61758999877564574b465b70879b866f60768c95806a543f382f221201000005111a1f1f1f1f1f1c1409000000000000000000000000020f181e1f1f1f1f1d170d000000000000000000000009131c242a2f33343434312d28211910060000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000192e43586c829694806b56422e1b070000000000000000000e22364a5e72879c8e79644f3b26110000000000000002162a3d5164778c96836f5b47475b6e82968d7966523e2b1704000000000000001f344a5f748ba08b745f4a341f0a00000000000000000f253a4f6479909b866f5a442f1a00000000000b1e3245596c80948f7c68544b5f73879986715d4a36220f00000000001f344a5f748ba08b745f535353535353535353535353535148392714010000000000000000000000152a3f546a8095947d68533e2913000000152a3f546a809595806a543f2a150006162738495a6b7c8d9b8a78675645342312031425364758697a8c9b8a78685746352413020006192b3d4f6173869891806c5a48362412000006182b3d4f61738598917d6c5a483624120000000000000000000000000000000000000e2031435566788a9c8d7a69574534221000000b1e3246596b7d8f938374685f585b70879b866f60768c95806a54504c40301e0b000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000810161a1e1f1f1f1c19140d060000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001070b0f11121212110f0b07010000000000000000000000000000000000000000000000152a3e53677c909a86725e4a372412000000000000000006192b3e5165798d9c88735f4a36210d00000000000000000e2135485c7084978b7763504f63768a9985715d4a36230f00000000000000001f344a5f748ba08b745f4a341f0a00000000000000000f253a4f6479909b866f5a442f1a000000000013273a4e6175899b8873604c44576b80938d7965523e2a1703000000001f344a5f748ba08b745f4a3e3e3e3e3e3e3e3e3e3e3e3e3d362a1b0a000000000000000000000000152a3f546a8095947d68533e2913000000152a3f546a809595806a543f2a150012243445566778899a8e7c6b5a4938271605000818293a4b5c6d7d9097867463524231200d00122436485a6c7d91988673614f3d2b19060000000d1f324456687a8c9c8a776553412f1d0b000000000000000000000000000000000002142537495a6c7d909887756351402e1c0a000316293c4e6071829093867a726c6870879b866f66768c95806a66665e4d3a26110000000000000000000001091015181b1b1b1915110a03000910141514110b020000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000050e151b2024262727272624201b160f070000000000000000000000000000000000000000001024394d6175899d8d796653412f1e0d00000000000005142436485a6d829595826d5945301c08000000000000000005192d4054677b8f93806b58576a7d92907c6955422e1b0700000000000000001f344a5f748ba08b745f4a341f0a00000000000000000f253a4f6479909b866f5a442f1a00000000081c2f43566a7d9193806b57443c5063778b95826d5a46321f0b000000001f344a5f748ba08b745f4a3429292929292929292929292822190c00000000000000000000000000152a3f546a8095947d68533e2913000000152a3f546a809595806a543f2a15001a2e4152637385969282705f4e3d2c1b0a0000000c1d2e3e4f607183949282705f4e3d2915001a2e415365778a9c8d7a68564432200e00000000021426384b5d6f82939583705e4c3a2713000000000000000000000000000000000000081a2b3d4f6072849692826f5d4b39261100000d1f3142536372808d988f87827d7b879b867b7b7b8c95807b7b7b69543f2a140000000000000000010b151d24292d3030302e2a251e16121c24292a29261e140600000000000000000000000000000000000000000000000a111415151514100800000000000000000000000000070e13171a1b1b1b1a17140e0801000000000000000000000000000000030e1822293035393b3c3c3c3b3935302a231a100500000000000000000000000000000000000000091e32465a6d82949683705e4c3c2b1d10060000020a152332425365778a9e8d7965513e2a16010000000000000000001124384c5f73879a8873605f72879a8975614d3a26120000000000000000001f344a5f748ba08b745f4a341f0a00000000000000000f253a4f6479909b866f5a442f1a000000001124384b5f72869a8a76634f3c34485c7084978975624e3a2713000000001f344a5f748ba08b745f4a341f13131313131313131313130e060000000000000000000000000000152a3f546a8095947d68533e2913000000152a3f546a809595806a543f2a15001f34495d70828b8b8574635241301f0e000000000010213243546576878b8b7d6c58442f19001f34495d70838b8b826f5d4b392715030000000000091b2d3f526476888b8b7c6a56412c17000000000000000000000000000000000000000e2031435566788a8b8b7a6954402b150000021325354554626f7a858d9496939193a092919191959c919191806a543f2a150000000000000007131e2831383e42454646433f39322a242f383e3f3e3a31241504000000000000000000000000000000000000000003111d262a2a2a2a29241b0e000000000000000000000a131b22282c2f3030302f2c28231c150c020000000000000000000000000814202b353e444a4e50525252504e4a453e362d23170b00000000000000000000000000000000000003162a3e5164778a9d8e7c6a59493b2e221a1514171d27334150607083959583705d4936220e00000000000000000000091c3043576a7d928f7b68677a8f94806c5945311e0a0000000000000000001f344a5f748ba08b745f4a341f0a00000000000000000f253a4f6479909b866f5a442f1a00000006192d4054677a8f96826e5b47332c4054687c90927d6a56422e1b070000001f344a5f748ba08b745f4a341f16161616161616161616161616120a000000000000000000000000152a3f546a8095947d68533e2913000000152a3f546a809595806a543f2a15001f34495d707474747467564534231201000000000003142536475869747474746b58432e19001f34495d70747474746452402e1c0a0000000000000010223547596b747474746955412c170000000000000000000000000000000000000002142537495a6c7474747468543f2a150000000717273644515d687179808488898b8b8b8b8b8b8b8b8b8b8b806a543f2a150000000000000b1825303b444c53575a5b5b58534e463d34414c5254534e4233210e000000000000000000000000000000000000000010212f3a3f3f3f3f3e382c1e0d0000000000000006121d262f363c414446464644413d3730281f150900000000000000000000091825323e4851585e636667676766635e5952494035281b0d0000000000000000000000000000000000000e2134475a6d809199887767594b3f352e2a292b313944515f6e7d8f9c8a786653402d1a06000000000000000000000014283b4f63768a9884706f83978c7764503d2916020000000000000000001f344a5f748ba08b745f4a341f0a00000000000000000f253a4f6479909b866f5a442f1a0000000e2235495c7084978d7966523f2b25394c6074889986725e4a36230f0000001f344a5f748ba08b745f4a342b2b2b2b2b2b2b2b2b2b2b2b2b2b261d100100000000000000000000152a3f546a8095947d68533e2913000000152a3f546a809595806a543f2a15001a2e41515d5f5f5f5f584938271605000000000000000718293a4b595f5f5f5f5b4e3c2915001a2e41515d5f5f5f5f574735231100000000000000000517293b4d5a5f5f5f5f5a4c3a26120000000000000000000000000000000000000000081a2b3d4e5b5f5f5f5f594a3925110000000009182634404b555d656a6f727474747474747474747474747467533e291400000000000c1b2936424d5760676c6f70706d6861594f44525f676a6860503d2914000000000000000000000000000000000000000a1c2e3f4c54545454534a3c2a170400000000000a17242f39434a51565a5b5b5b5a56524b443b32271b0e000000000000000009182736434f5a646d73777b7c7c7c7b77736d665c5246392b1c0d000000000000000000000000000000000005182b3d5062738595968676695d5249433f3e40454c56626f7d8d9c8f7d6d5b493624110000000000000000000000000c1f33475a6e82958c78778b9784705c4835210e000000000000000000001f344a5f748ba08b745f4a341f0a00000000000000000f253a4f6479909b866f5a442f1a000004172a3e5165788c9985715e4a37231d3144586c80948d7966523e2b170300001f344a5f748ba08b745f4a4040404040404040404040404040403a2e1f0f00000000000000000000152a3f546a8095947d68533e2913000000152a3f546a809595806a543f2a150011233341494a4a4a4a453b2c1b0a0000000000000000000c1d2d3b464a4a4a4a473e301f0d0011233341494a4a4a4a44392a18060000000000000000000c1e2f3d474a4a4a4a463c2e1d0a0000000000000000000000000000000000000000000e1f303e474a4a4a4a463b2d1b0900000000000816222e39414a50565a5d5f5f5f5f5f5f5f5f5f5f5f5f5f5849372410000000000b1b2a394754606a747b82868786837c756c615661707b807d6c57422c17000000000000000000000000000000000000031527394b5d696a6a6a675947331e09000000000b1a2835414c565e656b6f7070706f6b6660584e44392c1e10000000000000061727364553616d7782888d90939393908d8882796f6457493a2b1a0900000000000000000000000000000000000e213244566777889795887a6f655d5754535559606973808d9c918270604f3d2b190700000000000000000000000004172b3e5266798d948080938f7b6754402d1905000000000000000000001f344a5f748ba08b745f4a341f0a00000000000000000f253a4f6479909b866f5a442f1a00000c1f33465a6d8295907c6955422e1b15293d5064788c95826d5a46321f0b00001f344a5f748ba08b745f565656565656565656565656565656554c3d2c1905000000000000000000152a3f546a8095947d68533e2913000000152a3f546a809595806a543f2a15000515232e343434343431291d0e00000000000000000000000f1d2a3234343434332b201201000515232e343434343431281b0c0000000000000000000000111f2b3234343434322a1e10000000000000000000000000000000000000000000000212202b3334343434322a1d0f0000000000000005111b262e363c4145484a4a4a4a4a4a4a4a4a4a4a4a4a453b2c1a0800000007182839485764717d8890969a9c9b9791898073676e808f95836c57422c170000000000000000000000000000000000000e20324456687a80808076604b36210b0000000919293846535e697279808487878784807a736b61564a3c2e1e0e000000000012233445546371808a9597918c8a89898c9097958c8275675849382715030000000000000000000000000000000003152738495969788795988c8278716c6a686a6e747c86919d90827263534231200e00000000000000000000000000000f23364a5d71859989889b87735f4c38241100000000000000000000001f344a5f748ba08b745f4a341f0a00000000000000000f253a4f6479909b866f5a442f1a000114283b4f62768a9c8874614d3a26120d2135495d7085988a75624e3a271300001f344a5f748ba08b746b6b6b6b6b6b6b6b6b6b6b6b6b6b6b6b695b4834200b000000000000000000152a3f546a8095947d68533e2913000000152a3f546a809595806a543f2a15000005111a1f1f1f1f1f1d160c000000000000000000000000000c171d1f1f1f1f1e180f0200000005111a1f1f1f1f1f1c150a000000000000000000000000010e181e1f1f1f1f1d170d000000000000000000000000000000000000000000000000020f181e1f1f1f1f1d170c0000000000000000000009121a21272c30333434343434343434343434343431291d0e0000000012243646566675838f9a988f8a8786888d9591857774899e95836c57422c17000000000000000000000000000000000007192b3d4f61738695907d6c5a47331e09000004162737475664707c868e94999c9b9c99958f887d73675a4c3c2c1b0a0000000a1d2f415263728290968c837c77747373777b838c9793867666564432200d0000000000000000000000000000000000091a2b3b4b5a697684909b958d8682807d8083889099988c8071635445352514020000000000000000000000000000071b2e4255697c909594927d6b5744301c0900000000000000000000001f344a5f748ba08b745f4a341f0a00000000000000000f253a4f6479909b866f5a442f1a00091d3044576a7d9294806c5945311e0a06192d4155697c91927d6a56422f1b07001f344a5f748ba08b828282828282828282828282828282828277624c37220d000000000000000000152a3f546a8095947d68533e2913000000152a3f546a809595806a543f2a1500000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000060d13171b1e1f1f1f1f1f1f1f1f1f1f1f1f1f1d160c000000000b1d304253647485939d90857b7570707378828b9587768b9a86796b56412c170000000000000000000000000000000000122436485a6d8091978573614e3d2b180400000f223345556573828e9999918b8886878a8f969b9186786a5a4a3927150200001125394d5e7082919184786f68625f5e5f62676f798694958573614f3c29160200000000000000000000000000000000000d1d2d3c4b5966727d8892999b97949495989d978f857a6e61544536271707000000000000000000000000000000001226394d6074889c9e8a76634f3b28140100000000000000000000001f344a5f748ba08b745f4a341f0a00000205030000000f253a4f6479909b866f5a442f1a001225394c6073879b8b7764503d291602001226394d6175899986725e4a37230f001f344a5f748ba099979797979797979797979797979797978d77624c37220d000000000000000000152a3f546a8095947d68533e2913000000152a3f546a808c8c806a543f2a150000000b141819191919191919191919191919191919191919191919191919191919191919191918140d02000000000000000000000000070d12171a1d1f1f1f1f1e1c18140f09010000000000000000000000050d11121212110c0400000000000000060e11121212120e0700000000000000000000000000000000000000000000000000000000000000000000000000000114273a4d5f7182939c8d7d7268605c5b5e656d788593838b98836c5d4e3b2813000000000000000000000000000000000b1d2f415366778a9c8c7a685644311f0d000006192c3f51627384929d90867c76727070747a838d99978978685644321f0c000013283e53687c8e918273665c534e4a484a4d535c6875869891806c5945311d090000000000000000000000000000000000000f1e2d3b4855606b757d858a8e9091908d89837b72675c50433627180900000000000000000000000000000000000a1e3145586c808f8f826e5a4733200c0000000000000000000000001f344a5f748b8c8b745f4a341f0a0610171a18130b030f253a4f64798c8c866f5a442f1a001a2e4155687c9097836f5c4834210d01030a1e3245596d82958e7966523e2b16001f344a5f748b8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c77624c37220d000000000000000000152a3f546a808b8b7d68533e291300000014293e53677676767667533e29140001111e282d2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2d291f12030000000000000000030c141b21272c2f323434343433312d29241d150c0200000000000000000c1821262727272620170a00000000000c1922272727272722190d000000000008101415151514100800000000000000000000060f1415151515130d04000000081c304357697c8f9f8e7d6e60554c47464a515b677484919198836c5742301f0c0000000000000000000000000000000416283a4c5f70839593826f5d4a3826140200000e2235495c6e80919c8d807369625d5b5c6067707b8998978674614e3b2814000012273b5062707d85736355494039373736383f4a58687a8d9c8874604c38230f000000000000000000000000000000000000000f1d2a37434e5861697075787b7b7978746e675f554b3f332618090000000000000000000000000000000000000b16293d50647678787766523f2b180d0000000000000000000000001f34495d70767676705d49341f0a17232b2f2d261f170f24394e63747676766c58442f19001f34495d71858b8b7a6753402c1910161917162a3e5165798b8b826e5a45301b001f34495d70767676767676767676767676767676767676767672604b36210c00000000000000000014293e53677474747466523d28130000001024384a5960606060594a382410000e1f2f3b42434343434343434343434343434343434343434343434343434343434343434343423c302110000000000000020c161f282f363c404447494a4a4a4846423e3831281f14080000000000000a1b2a353b3c3c3c3b342819080000000c1c2a363c3c3c3c3c362b1d0c0000000e1a24292a2a2a29241a0e00000000000000000b1822282a2a2a2a2821160800000f24384c5f73879993826f5f5043393230353e49566677899c98836c57422c17020000000000000000000000000000000f213345586a7c8f9a887664513f2d1b0900000014293d5165788c9e8f7d6e61564e4846474b535e6b798a9c917d6b57432f1b06000c20334453606d7567554540454a4c4c4b49443e4b5d7085998f7b66513d281300000000000000000000000000000000000000000c1925313b454e555c6063666665635f5a534c42382d2115080000000000000000000000000000000000000c1c2932364758626363635a4a37332a1e0e00000000000000000000001a2e41525e6060605e52412e1a1626353f44423a33291d1f334656606060605c4e3d2915001f34495d70747474705f4b38241d242b2e2c2522364a5d707474746d5945301b001a2e41525e60606060606060606060606060606060606060605f5444311d0800000000000000000010243749585f5f5f5f584836230e000000081b2c3c475159574f473c2e1d0a00182b3d4d57585858585858585858585858585858585858585858585858585858585858585858574e3f2d1a060000000008141f29333b434a5055595c5e5f5f5f5d5b57524c443b3126190b00000000001528394750525252504637251200000618293a485152525251493b2a1704000c1d2c373e3f3f3f3e372c1d0c000000000000081a29353d3f3f3f3f3c3326160500152a3e53677b8f9c897663524132261d1b222c3948596c809598836c57422c17020000000000000000000000000000081a2c3e51637588998f7d6b5946342210000000001a2e43586c82959683706050433a33303237404d5c6c7d929b87725e4934200b0004162635424f5c6059494c545a5f6162605e59524a556a809494806a55402b1600000000000000000000000000000000000000000008141f28323a41474b4e545a554e4a453f382f261b100400000000000000000000000000000000000006192a3a464b4b4b4d4e4e4e4b4b4b473c2c1b0800000000000000000000122434424a4b4b4b4a42342413233444525a564e463b2c1a2838444b4b4b4b483f30200d001a2e41525e5f5f5f5d52422f2730383f4340372a2e41515d5f5f5f5c4f3d2a1600122434424a4b4b4b4b4b4b4b4b4b5159584d4b4b4b4b4b4b4b4a43362614010000000000000000000b1e30404c505050504b3f2f1d090000000d1e2e3f50606e6a635a4c3a2612001e32475a6a6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6c5d4935200b0000000d1925313c464f575e656a6e717374747472706c6760584e4337291b0b000000001c314457646767676355422e1a0502132436475865676767655947331f0a0016293b495354545453493b2916020000000002142537475254545454504434220f001a2f43586d829695826d594634231409070f1b2a3d51667b9198836c57422c170200000000000000000000000000011325374a5c6e8092968472604d3b291705000000001d32475c71869b8f7a67534232261f1b1d242f3e4f61758a9e8c77624d38230e0000081724313e484b49545f676e73767776736d665d53677c9297826b56412c1700000000000000000000000000000000000000000000020c151f2634465660686f665645342b241c130900000000000000000000000000000000000000000e223648586060605f54525e606060594a382410000000000000000000000616242f35363636352f241620304152626f6962594937241a273136363636342d21120200122434424a4a4a4a4941342838444c5358544838273341494a4a4a483e31200e000616242f3536363636363641515e656d6b5b4a3a363636363635302618080000000000000000000011263a4d5e666666665d4c3925100000091a2b3c4c5d6e7d7d776955412c17001f344a5f7484848484848484848484848484848484848484848484848484848484848484848477624c37220d0000101d2b37434e59626a7279808487898b8b8a8886827b746b615547392919080000001f344a5f747c7c7c715c47321c070e1f31425364767c7c7c76614c37220d001d314558676a6a6a675845311d08000000000d1f314355656a6a6a6a62513e2a15001d32475c71879b8f7a65513d2a170500000011263b50667b9198836c57422c1702000000000000000000000000000c1e30435567798c9d8b79675442301e0c00000000001f34495e73899f8c76614c3824140a0508112032465b70869b8f78644f3a240f000000061421303f4d5a67727b83898c8d8c8882797065667b9198836c57422c170000000000000000000000000000000000000000000000000210253a4f63747c847363524131200f0000000000000000000000000000000000000000000011273c516575767672605d7076767667533e2914000000000000000000000006121b20212121201b121c2d3e4e5f70827d7667533e2914151d202121211f19100300000616242f35353434342e2434465660676e66564534232e34343434332c211302000006121b20212121212134495d707982796858473625212121201c14080000000000000000000000142a3f54697b7b7b7a68533e2813000617273849596a7a8c8f7c6a56412c17001f344a5f748b999999999999999999999999999999999999999999999999999999999999998d77624c37220d000d1e2e3b4855606b757d878e94989c9a9999999b9a968f887d726557473726140200001f344a5f748b9388725c47321d091b2c3d4e6070829391806e5d4935200b001f344a5f74808080745f4a341f0a00000007192b3c4e6072808080806c57422c17001f344a5f74899f8c76614c37230e0000000011263b50667b9198836c57422c170200000000000000000000000005172a3c4e6072859792806e5c493725130100000000001f344a5f74899f8c76604b36210e0300010b1b30455a6f869b8f78644f3a240f0000000b1d2e3e4e5d6b78848f979a95939294968d8376697b9198836c57422c170000000000000000000000000000000000000000000000000010253a4f6476899282705f4e3e2d1c0c00000000000000000000000000000000000000000012273c52677c8c8c77625f748b8c806a543f2a1500000000000000000000000000070b0b0b0b0b08192a3a4b5c6c7d8e8c7a67533e291402080b0b0b0b0a05000000000006121b20201f1f1f1a253a4f63737b837363524131201f1f1f1f1e190f030000000000070b0b0b0b0b1f34495d70839587756454433222110b0b0801000000000000000000000000152a3f546a8091917d68533e29130012243445566677889583705f4d3a2713001f344a5f748b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b77624c37220d00172a3c4c5966727d89929b97918c888684848486898f969b908475655543311e0b00001f344a5f748b9d88725c47321d1627384a5b6c7d8f9685736251402d1a06001f344a5f748b958b745f4a341f0a000000122436485a6c7d9095897664523e2a15001f344a5f748ba08b745f4a341f0a0000000011263b50667b9198836c57422c170200000000000000000000000011223547596b7d9099877563503e2c1a080000000000001e33485d72879c8e7964503d2c1f1613161d29384a5e72889c8c76614c38230d00000417293a4c5c6c7b8996998f86807c7c7d848b9488787b9198836c57422c17000000000000000000000000000000000000000000000000000c213447596b7d8f8e7d6c5c4b3a291805000000000000000000000000000000000000000012273c52677c938d77625f748b95806a543f2a1500000000000000000000000000000000000001142637485869798b92806e5c4b382410000000000000000000000000000000070b0b0a0a0a10253a4f6476899282705f4e3e2d1c0c0a0a0904000000000000000000000000061a2e415365778994837161503f2f1d0b000000000000000000000000000000152a3f546a8095947d68533e2913001a2e4152637385958977655341301e0b001f34495d7074747474747474747474747474747474747474747474747474747474747474747471604b36210c001d32465a6a7784909b958b837c77726f6e6e6e70747a838d9b948472604e3b271400001f344a5f748b9d88725c47321d2233455667788a9b8a7867564433221000001f344a5f748ba08b745f4a341f0a00000c1e2f41536577899b8f7d6b594735230f001f344a5f748ba08b745f4b35200b0000000011263b50667b9198836c57422c17020000000000000000000000091b2e40526476899b8e7c6a574533210f000000000000001a2f44586d829594806d5b4a3d322b292b313a4756677a8e9986715d48341f0a00000e21344658697a8b9994887c726b6767696f77838f887b9198836c57422c170000000000000000000000000000000000000000000000000005182a3c4e607284968b7969584734210c000000000000000000000000000000000000000012273c52677c938d77625f748b95806a543f2a15000000000000000000000000000000000000081d31445565768798877563513f2d1b080000000000000000000000000000000000000000000c213447596b7d8f8e7d6c5c4b3a29180500000000000000000000000000000000122436485a6c7d9090806e5d4c3a2713000000000000000000000000000000152a3f546a8095947d68533e2913001f34495d70828b8b7d6b5a4836241200001a2e41515d5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5e5343301c08001f344a5f748895988c82776f68625d5a5858595b6066707c8c9d907d6a57432f1b06001f344a5f748b9d88725c47321d2f4051627385978f7d6c5a493827160400001f344a5f748ba08b745f4a341f0a000517293b4d5f708395968472604e3c2a1806001f34495e73899e8d77634e3925110000000011263b50667b9198836c57422c170200000000000000000000021527394b5d6f82949583705e4c3a2816040000000000000015293e5265788c9d8a79685a4e46403e3f444d5764748597907c6956422e1a050004172b3e51637587989485766a5f575252555c65707d8e839198836c57422c1700000000000000000000000000000000000000000000000000000c1e30425466788a8b8776644f3a2510000000000000000000000000000000000000000012273c52677c8b8b77625f748b8b806a543f2a150000000000000000000000000000000000000c21364b6072838b8b7b6957453322100000000000000000000000000000000000000000000005182a3c4e607284968b7969584734210c0000000000000000000000000000000007192b3d4e6072858b8b7b6a56412c17020000000000000000000000000000152a3f546a808b8b7d68533e2913001f34495d7074747470604e3c2b1907000011233341494a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a494235251401001d3145586a7c8f877a6f645c544e4945434344464b535e6e80939a87725d4934200b001f344a5f748b9d88725c47322a3b4c5d6f80919382705f4e3d2c1a090000001f344a5f748ba08b745f4a341f0a0010223446586a7c8f9c8a78665442301e0c00001c31465b70869a917c6854402c1a0900000918283b50667b9198836c57422c1702000000000000000000000e20324456687a8d9c8a776653412f1d0b00000000000000000f2236495c6e80909787786c615a555354596069758392948372604d3a271300000b1f33475a6d809398877666584c433d3c404853606f80919c98836c57422c17000000000000000000000000000000000000000000000000000001132537495b6d74747473634f3a2510000000000000000000000000000000000000000011263b506474747471605d7074747467533e29140000000000000000000000000000000000000c21364b60717474746f5d4c3a28160400000000000000000000000000000000000000000000000c1e30425466788a8b8776644f3a251000000000000000000000000000000000000d1f31435567747474746955412c1701000000000000000000000000000014293e53677474747466523d2813001a2e41515d5f5f5f5d5243311f0d0000000515232e34343434343434343434343434343434343434343434343434343434343434343434342f251708000016293b4d5f718476695d5248403934302e2e2f3237405063778ca18c77624d38230e001f344a5f748b9d88725c48393647596a7b8d988775645342301f0e000000001f344a5f748ba08b745f4a341f0a0a1c2e40526475889a91806d5b49372513010000182d42566b809497836f5c493726180f101a273646586a7d9298836c57422c170200000000000000000006192b3d4f6173869891806c5a4836241200000000000000000006192c3e5061718290978a7d756e6a68696d747c8793938575655443301d0a000012263a4e63768a9e8d7a6958483b3028272c3642516173869998836c57422c17000000000000000000000000000000000000000000000000000000081a2c3d4f5c5f5f5f5f564634200c00000000000000000000000000000000000000000d213547575f5f5f5e53515d5f5f5f5849372410000000000000000000000000000000000000081c3043535e5f5f5f5d51402e1c0b00000000000000000000000000000000000000000000000001132537495b6d74747473634f3a251000000000000000000000000000000000000214263849585f5f5f5f5a4c3a261200000000000000000000000000000010243749585f5f5f5f584836230e0011233341494a4a4a4941342513020000000005111a1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1b12070000000c1e304254667267584b3f352c251f1b19191a1d2334495e73899f8f79644f3a250f001f344a5f748b9d88746657494354657688998c7a69584735241301000000001f344a5f748ba08b745f4a341f0f1627394b5d6f8293978673614f3d2b1a0800000013283c5065798d9f8c79665544362a24252c3744536475889b98836c57422c1702000000000000000000122436485a6c7d91988673614f3d2b1907000000000000000000000f213344536371808b95928983807d7d838890978d8274665747372513010000172c4055697d929884705d4b3a2a1d141219253344566a7d9398836c57422c17000000000000000000000000000000000000000000000000000000000e20313e484a4a4a4a4438281704000000000000000000000000000000000000000005182a39444a4a4a494241494a4a4a453b2c1a080000000000000000000000000000000000000114253542494a4a4a48403222110000000000000000000000000000000000000000000000000000081a2b3d4f5c5f5f5f5f564634200c000000000000000000000000000000000000081a2c3b454a4a4a4a463c2e1d0a000000000000000000000000000000081a2c3b454a4a4a4a453a2b1907000515232e34343434342e241607000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000113253748565c57493b2e2219110a060b11171e2735495e73899f9079644f3a250f001f344a5f748ba093857567594f6071839491806e5d4b3a29180600000000001f344a5f748ba08b745f4a34252525334556687a8d9e8c7a68564432200e000000000d2136495d7084979684726254473e393a404955627182939a98836c57422c170200000000000000000b1d2f415365778a9c8d7a68564432200e0000000000000000000000041526364553616d77828b9d97949494979c8e837a6f645648392a19080000001b30455a6f8498917c6854412e1c0c00000715273b50667b9198836c57422c17000000000000000000000000000000000000000000000000000000000213212c333434343430271a0b000000000000000000000000000000000000000000000c1b2831343434342f2e3434343431291d0e00000000000000000000000000000000000000000817252f34343434332d2214050000000000000000000000000000000000000000000000000000000e20313e484a4a4a4a4438281704000000000000000000000000000000000000000e1d293134343434322a1e1000000000000000000000000000000000000e1d29313434343431281c0d00000005111a1f1f1f1f1f1a12060000000000000000000000000000000000000000000000000000080f15191b1b1b1916110c0600080e131515120d050000000007192a38434743392b1d100c11161b20252b313a445264788da18e78634e39240f001f344a5f748ba09b948676685b6d7d8f95847261503f2e1d0b0000000000001f344a5f748ba08b745f4a3a3a3a3a3e506274869892826e5c4a3927150300000000061a2e4154677a8c9e918272655a524e4f535c66738290829198836c57422c1702000000000000000416283a4c5e70839594826f5d4b39271503000000000000000000000000102233445362707c8790958e8a89898d9392897d73665748382715030000001e33485e73889d8c77624e3925110000000011263b50667b9198836c57422c170000000000000000000000000000000000000000000000000000000000030f191e1f1f1f1f1c14090000000000000000000000000000000000000000000000000a151c1f1f1f1f1b1a1f1f1f1f1d160c0000000000000000000000000000000000000000000007121b1f1f1f1f1e191105000000000000000000000000000000000000000000000000000000000213212c333434343430271a0b0000000000000000000000000000000000000000000c161d1f1f1f1f1d170d000000000000000000000000000000000000000c161d1f1f1f1f1c150b00000000000000000000000000000000000000000000000000000000000000000000000000000009131c242a2e3030302e2b262119111b23282a2a2721180c000000000c1b272f322f271b141a20262b2f353a3f464d56627082949e8a75604b36210d001f344a5f748b9e898c95877869798b9a8977665544332110000000000000001f344a5f748ba08b745f4f4f4f4f4f4f5c6d809299877563513f2d1b090000000000001125374a5d6e80909f9083776d666364686f798491867b9198836c57422c1702000000000000000f21334557697c8e9b89766452402e1c0a000000000000000000000000071a2d3f516271828e958a8079747374787d889391847566554432200d0000001f344a5f748b9f89745f4a35200b0000000011263b50667b9198836c57422c1700000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000030f191e1f1f1f1f1c14090000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000010f1b2630383e4345464543403b352d242e373d3f3f3c352a1b0a0000000009141a1d1a1921282f353a3f44494e545a616973808f9f95826e5b46321d09001f344a5f748b9d887c8c96887986978e7c6b5a4937261504000000000000001f344a5f748ba08b746464646464646467798b9d8e7b6a584634221203000000000000081b2d3f51617282909e948a827b78787c838c9587777b9198836c57422c1702000000000000081a2c3e5063758799907d6b5947352311000000000000000000000000001023374a5d6f80909485776d65605e5f636b758290948473614f3c29150100001f344a5f748b9f89735e48331e090000000011263b50667b9198836c57422c170000000000000000000000000000000000000000000000000000060c11141717171716130f090300000000000000000000000000000000070e1313131313100900000000000000000000000000000000081013131313130e070000000000000000000000000000040a0f13161717171715120e09020000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000070e13131313131313131313131313131313131313131313110b02000000000000000000091013131313120d040000000000000000000000000000000000000410191d1e1e1c150b000000000000000000000000000002111f2c38434c53585a5b5a58544f494137404a52545450473928150000000000000c18232d353c43494f54595e63686e757c86919e98897765523f2b1703001f344a5f748b9d88727b8b9889929382705f4d3c2b1a0800000000000000001f344a5f748ba08b797979797979797979859794827060564b3e3021120100000000000010223344546372808c969d95908f8f9297908476687b9198836c57422c1702000000000001132537495c6d8092978572604e3c2a180600000000000000000000000000162b3f5366798c998775665a514b484a4f586472839591806c5844301c0700001f344a5f748a9f8b75604b36210c0000000011263b50667b9198836c57422c170000000000000000000000000000000000000000000000010a131a2025292c2c2c2c2b28231e170f06000000000000000000000000000d19232829292928241c1002000000000000000000000000010f1b24282929292823190d00000000000000000000000711181f24282b2c2c2c2c2a27231d160e050000000000000000000000000b141819191918130b00000000000000000000000000000000000000000000000d192328292929292929292929292929292929292929292929261e130500000000000002101c242829292927211609000000000000000000000000000000000514222c32333330281c0e0000000000000000000000000010202f3d4a565f676c6f706f6d69645d544a505d666a69645744311c0000000001101d2a35404950575d63696d72777c838990999f9488796a594836230f00001f344a5f748b9d88726c7b8b9a9a86756352413223140400000000000000001f344a5f748ba09490909090909090909093a28e837c73685c4e3f301f0e000000000000041526364554616e79838b909393918d867d7266667b9198836c57422c170200000000000c1e30425467798b9d8c79675543311f0d00000000000000000000000000001a2f44596d8396907c6958483d3633353b465465778c9b88735f4a35200b00001e33485d72889c8e78644f3b27130100000011263b50667b9198836c57422c170000000000000000000000000000000000000000000009141d262e353a3e41424242403d38322b23190f04000000000000000000000b1c2b363d3e3e3e3d382e200f0000000000000000000000000e1f2d383d3e3e3e3d362b1c0b000000000000000005101a242c33393d40424242423f3c38312a22180e02000000000000000001111e282d2e2e2e2d271d100000000000000000000000000000000000000000000b1c2b363d3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3a3123140200000000000f202e383d3e3e3e3c342718060000000000000000000000000000001122323f474848453a2c1b0800000000000000000000000c1d2e3e4d5b68727b82868786837d7870675d5d6e7a807d745f4a341f000000000f1f2e3b47525c646b72777d83888d92979d9b948c82766a5b4c3c2a190600001f344a5f748b9d88725d6c7b8a998d7d6e5f504132231404000000000000001f344a5f748ba0979494949494949494949494979790867a6c5d4e3d2b1a070000000000000818273644515c666f767a7c7d7b78726a6055667b9198836c57422c1702000000000517293b4e6072849693826e5c4a3826140200000000000000000000000000001d32475c72879c8c76614d3a2b221e202836485d71879c8d77634e38230e00001b2f44596e8397937d6a5643301e0e0305101e2e4052667b9198836c57422c170000000000000000000000000000000000000000030f1b26303a42494f535657575755514c463e362c22160a00000000000000000015283a4852535353534b3e2d1a070000000000000000000006192c3d4b5253535352483a2815000000000000000916222d3740474d52555757575754514c463e352b201306000000000000000e1f2f3b42434343423a2e1e0d000000000000000000000000000000000000000015283a48525353535353535353535353535353535353535353534e42311f0c00000000071a2d3e4b535353535045362411000000000000000000000000000005192d40515c5e5e584a382511000000000000000000000417293b4c5c6b79858f9697949495938c847a6e677a8d958b745f4a341f0000000b1c2d3d4c59656f7880878d92979c9c97928d8780776f64594c3d2e1e0d0000001f344a5f748b9d88725c5d6c7a8a998d7d6e5f5041322314040000000000001f344a5f748ba08b7d7d7d7d7d7d7d7d7d7d7d838a95988b7b6b5a4937241100000000000000091826333f4a535b6166676867635e574d50667b9198836c57422c17020000000010223447596b7d8f9a887563513f2d1b090000000000000000000000000000001d32475c72889d8b76604b37251c181a2231465b70869b8f78634e38230e0000162b4054687c919a86725f4d3c2c1f1819212d3c4c5d6f829698836c57422c17000000000000000000000000000000000000000614212d38434d565d63686b6c6c6c6a66615a52493e33281b0e00000000000000001c31455866686868685c4a37230f000000000000000000000e2235495b67686868665845311c0000000000000b1a27343f4a535b62676a6c6c6c6c6966605a51483d31241608000000000000182b3d4d57585858564c3c2a1602000000000000000000000000000000000000001c31455866686868686868686868686868686868686868686868604e3b2712000000000d22364a5c686868686353402c170200000000000000000000000000091e33485d6f737367543f2a15000000000000000000000d203346586a7a8a97948a837d7d808489918c80718296998b745f4a341f00000316283a4b5b6976828c949b9b96908c87837d77726b645c52473b2e1f10000000001f344a5f748b9d88725c4e5c6b7a8a988d7d6e5f50413223140400000000001f344a5f748ba08b74686868686868686868696e7784929a8a786654412e1a06000000000000000815212d3740474d505253524e4a433b50667b9198836c57422c1702000000091b2d3f526476889b8f7c6a5846342210000000000000000000000000000000001c31475c70869b8f7a66534337302d2f353f4f6175899e8c77624c38230d00001125394e6275899d8f7c6b5a4a3d322d2e343e4b596a7a8d9f98836c57422c17000000000000000000000000000000000000061523313e4a56606971777c82838383807b756e655c5145392c1e0f000000000000001f344a5f747d7d7d7966523f2b1804000000000000000003162a3e5165787d7d7d745f4a341f00000000000b1a293845515c666f767b80838383827d7a756d645a4f423426170700000000001e32475a6a6e6e6e6a5946311c07000000000000000000000000000000000000001f344a5f747d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d69543f2a15000000000f253a4f64797d7d7d6f5a442f1a05000000000000000000000000000a1f344a5f7489826b56402b160a02000000000000000014283c50637688999183766e69686b6f757d88908282978c7b725e49341f00000b1f334558697988949f968e87827b76726d68635d5750483f35291d1001000000001f344a5f748b9d88725c474d5c6b7a89988d7d6e5f504132231404000000001f344a5f748ba08b745f5353535353535353545a657384959684705d4a36220e000000000000000004101a242c33383b3d3e3c39352f3b50667b9198836c57422c17020000021426394b5d6f82939684715f4d3b29160500000000000000000000000000000000192e43576c829596837161544b45424449515d6d7d909a86725d49341f0b00000a1e32465a6d80929a8977685a4e46424348515c6977888e8f98836c57422c17000000000000000000000000000000000005152433424f5c68737c868d929698989794908a82786e63574a3c2d1e0f0000000000001d32465a6d829494826e5b4733200c00000000000000000b1e3246596d829494826e5a47321e00000000081929384755636f79838b909597989897948f8982776c60524435251504000000001f344a5f74848484735e48331e09000000000000000000000000000000000000001f344a5f748b94949494949494949494949494949494949494806a543f2a15000000000f253a4f64799094866f5a442f1a05000000000000000000000006111b23344a5f748b826b56402c261e150b010000000000001a2e43576b8093968472655a5453565a616a758390859988726154432f1b000012273b4e627587989d8f847a726c67625d58544f49433c352c22180c0000000000001f344a5f748b9d88725c473e4d5c6a7989988d7d6e5f5041322314040000001f344a5f748ba08b745f4a3e3e3e3e3e3e3e3f485566778b9e8d7965513d2814000000000000000000000710181e23262828272520263b50667b9198836c57422c170200000d1f324456687a8c9d8b78665442301e0c000000000000000000000000000000000014293d5164778a9c8f8072675f5a57595d646e7b8b9c907d6a57432f1b06000003172a3d50637587989687786c615b57585c646e7a8891808b98836c57422c1700000000000000000000000000000000021323334251606d7985909999938f8c8c8d90959c958c8074675a4b3c2d1d0c0000000000172b3e5265798d9e8a76634f3b2814000000000000000013273a4e6175899d8d7966523f2b180000000214263747566573828c969b95908d8c8c8d91979d958a7d70625343332210000000001f344a5f748b9989735e48331e09000000000000000000000000000000000000001f344a5f748ba0949090909090909090909090909090909090806a543f2a15000000000f253a4f6479909b866f5a442f1a05000000000000000000000c18232e373e4a5f748b826b5646413a31281e120600000000001e33485d71879b8d796655473f3e41464e58657485969d88725c473625130000182c41556a7d929f8e7d71675e58524d48443f3a352e2821191005000000000000001f344a5f748b9d88725c47323e4c5b6a7989978d7d6e5f50413223130300001f344a5f748ba08b745f4a342929292929292b38485b6e829695806b57422d19040000000000000000000000040a0e111313121011263b50667b9198836c57422c17020006192b3d4f6173869892806d5b493725120000000000000000000000000000000000000e2235485b6d7d8f9d90847a736f6c6e7278828c9a938372604e3b2714000000000e2133465869798a99978a7d756f6c6d7077828c9283748b98836c57422c17000000000000000000000000000000000e2031415161707d8b97988d857d797676777a8088929c928677695a4b3b2a1907000000000f22364a5d718598927d6a5743301c08000000000000081b2f42566a7d919986715e4a37230f0000000d20324354657484929d9288807a777676787c838a959c8f827161513f2e1b090000001f344a5f748b9f89735e48331e09000000000000000000000000000000000000001f344a5f748ba08b79797979797979797979797979797979797969543f2a14000000000f253a4f6479909b866f5a442f1a050000000000000000000f1c2935404a52595f748b826b5f5b554e453b30231608000000001f344a5f748a9c87725d49372b292c323b475667798d9d88725c47321d0800001b30455a6f849996837060544b433e38342f2a25201a171c1e1b13080000000000001f344a5f748b9d88725c47322e3d4c5b6a7888978d7d6e5f504131210e00001f344a5f748ba08b745f4a341f13131313131a2b3e52677b909a86705b46311c070000000000000000000000000000000000000011263b50667b9198836c57422c170200122436485a6c7d9199877462503e2c190700000000000000000000000000000000000005182b3d4f6070808d98978e88848384878c949c908474655443311e0b000000000416283a4b5c6b7a89959b928a858383868c94908273748b98836c57422c17000000000000000000000000000000081a2c3d4e5f6f808e9c91857a706964616062666c74808a9796887868584836251301000000071a2e4155697c909a87735f4b3824100707070707071023374a5e728699917d6956422e1b07000004172a3d4f617283939b8d80756c6662606063676e7783909f90806e5d4b3926130000001f344a5f748b9f89735e48331e0d0e0e0d0a0701000000000000000000000000001f344a5f748ba08b7464646464646464646464646464646464645d4c3a2611000000000f253a4f6479909b866f5a442f1a0500000000000000000f1e2d3a47535d666d73778b827774706961584d41342617080000001f344a5f748b9b86705b463126201e1f29394a5f748b9d88725c47321d0700001d32475c72889c917b675342372f29241f1a1611111f2a31332f26190a00000000001f344a5f748b9d88725c47321f2e3d4c5a697888978d7d6e5f4f3e2b1602001f344a5f748ba08b745f4a341f0a000000000f24384d62778d9d88735e48331e090000000000000000000000000000000000000011263b50667b9198836c57422c1702001a2e415365778a9c8d7b69574533210f00000000000000000000000000000000000000000e20314251616e7a868f969b9998999c9891897d726556473725140100000000000b1c2d3e4d5c6a77838d959b9998989a938a7d7164748b97836c57422c17000000000000000000000000000000132537495b6c7d8e9e8f8273685d554f4c4b4d5158616d798796978776655442301e0b000000001226394d6074889c8f7a6753402c1d1d1d1d1d1d1d1d2b3f53667a8e9c8975614e3a26130000000d2134475a6c7d909c8c7c6e6258514d4b4c4e535b667282909e8c7a6855432f1c0800001f344a5f748b9f89735e48331f22232322201b160f0600000000000000000000001f344a5f748ba08b745f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4a3f2f1d0a000000000f253a4f6479909b866f5a442f1a05000000000000000d1e2d3c4b5864707982888c918f8d89847d756a5f52443526150400001e33485d72879c8874604f423a353334363a4a5f748b9d88725c47321d0700001d32475c72889d8f79644f3a241b150f0a060c14202f3d46484337281705000000001f344a5f748b9d88725c47321d1f2e3c4b5a6978878b8b7d6d5a45301b06001f344a5f748ba08b745f4a341f0a000000000c21364b60768c9f89735e48331e090000000000000000000000000000000000000011263b50667b8b8b836c57422c1702001f34495d70838b8b83705e4c3a28150300000000000000000000000000000000000000000214243342505d68727a8287898b8b88837c756c61554738291908000000000000000f202f3e4d5a6670798286898a898680776d615f748282826c57422c170000000000000000000000000000091c2f425467798a9b90807063564b413b3736383d454f5b687787979483715f4d3a2815020000000a1d3145586c809397836f5c4834323232323232323233475b6e839694806d5945321e0a00000115293d5063768a9c8f7d6d5e50453d383637393f4854627283949885725f4c38241000001f344a5f748b9f89735e4833333738383734302a221a10050000000000000000001f344a5f748ba08b745f4a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a362d211100000000000f253a4f6479909b866f5a442f1a05000000000000091a2b3c4b5a6976828d969d989994969a9991887c7062534433221000001b2f44586c8093907d6d60554e4b48494b4e535f748b9d88725c47321d0700001c31465b70879b907a65513c291e1a19191b2027323e4d5a5d5546342210000000001f344a5f748b9d88725c47321d101e2d3c4b5a68747474746d5945301b05001f344a5f748ba08b745f4a341f0a020202021225394e63788d9d88725d48331e080000000000000000000000000000000000000010253a4f63737474746955412c1701001f34495d70747474746553412f1c0a0000000000000000000000000000000000000000000006152433404b565f676d71747474726e6861594f4337291a0b00000000000000000211202f3c48535d666c71737473706a635a4f59686b6b6b63523e2a1500000000000000000000000000001225394c5f728596948372615245382e2622212329323d4a5968798a9c8f7c6a5744311e0a0000000215293c5063778b9f8b776350474747474747474747474f63768a9e8c7864513d2a16020000071c3044586c8093978572604f403329232121242b37445465778a9d8f7b67533f2b1703001f344a5f748b9f89735e4843484c4e4e4c49443e362c22170a00000000000000001f344a5f748ba08b745f4a342525252525252525252525252525221b100300000000000f253a4f6479909b866f5a442f1a05000000000002142638495a697887949c9289838b8282868d969a8e827161513f2d1a070015293d50637587978c7d7269635f5e5e6063686d748b9d88725c47321d0700001a2f44586d839794806b58473a332f2e2e30343b444f5c6b7263513f2d1b090000001f344a5f748b9d88725c47321d070f1e2d3c4a585f5f5f5f5c4f3d2a1602001f344a5f748ba08b745f4a341f17171717171f2f4154687c9299846f5a45301b06000000000000000000000000000000000000000c203446565f5f5f5f5a4c3a261200001a2e41515d5f5f5f5f57473623110000000000000000000000000000000000000000000000000615222e39434b53585c5f5f5f5d59544e463c3226190b0000000000000000000002111e2b36414a52585c5e5f5e5b5650473d4a54565656514535230f0000000000000000000000000005192d4154687b8f9c897765544434271b120d0b0e15202d3b4a5b6d7d919a8874604d3a2612000000000d2134485b6f839793806c5c5c5c5c5c5c5c5c5c5c5c5c6b80939884705c4935210e0000000d22364b5f73889c8e7a6754423122160e0c0c10192636475a6d809497836e5a46311d08001f344a5f748b9f89735e4e565d616363625e5952493f34281b0d000000000000001f344a5f748ba08b745f4a341f0f0f0f0f0f0f0f0f0f0f0f0f0f0d07000000000000000f253a4f6479909b866f5a442f1a0500000000000c1f32445567778897978a7d75748b826c7279838f9d90806e5c4a37230f000d21344658697887948f857d7774737375787c8288919d88725c47321d070000162a3f53677b8f9b887564574e4844434345494f57616d7a826e5c4a3826120000001f344a5f748b9d88725c47321d07000f1e2c3b454a4a4a4a483e31200e00001f344a5f748ba08b745f4a342c2c2c2c2c2c313d4d5e708598927d6a55412c17030000000000000000000000000000000000000004172838444a4a4a4a463c2e1d0a000011233341494a4a4a4a44392a18060000000000000000000000000000000000000000000000000004101c2630383e43474a4a4a4845403932291f1408000000000000000000000000000d19242e363e4347484a4846423b342d393f4040403e35271706000000000000000000000000000c2034485d70859892806c59483626170900000000030f1d2d3d4f6174879b907c6955412d190400000005182c4053677a8e9b887472727272727272727272727273879b8f7b6854402d190600000012273b5065798e9b87725f4b382513040000000008182a3d5064788d9e8974604b36220d001f344a5f748b9f89735e616a7176787877736d655c5145392b1d0e0000000000001f344a5f748ba08b745f4a341f0d0d0d0d0d0d0d0d0d0d0c08000000000000000000000f253a4f6479909b866f5a442f1a05000000000215283b4e617385969687796c61748b826b5d66717d8e9e8c7966523e2a15000417293a4b5a6976828a92928d8b89898b8d928f888c9d88725c47321d0700001024384c6073869793837469625d5a58585a5e636a737d8b8c796755412d180300001f344a5f748b9d88725c47321d0700000e1d293134343434332c21130200001f344a5f748ba08b745f4a42424242424242454e5b6b7c8e9d8a76634f3b26120000000000000000000000000000000000000000000b1a273034343434322a1e100000000515232e343434343431281b0c000000000000000000000000000000000000000000000000000000000a131c242a2f3234343433302b251e160d0200000000000000000000000000000007111b23292e32333433312d27201b252a2b2b2b29221709000000000000000000000000000011263b4f63778c9e8a76624f3c2a1908000000000000000f203244576a7d929985705c48331f0a000000001024374b5f72869a908888888888888888888888888888909b8773604c38251100000000162b4054697d9396826c58432f1c080000000000000e2135495d72879c8e7964503b2611001f344a5f748b9f897368737d868b8f8f8c8882786f6357493b2c1c0c00000000001f344a5f748ba08b745f4a342222222222222222222222211c130700000000000000000f253a4f6479909b866f5a442f1a05000000000a1e3145586b7d919a8978685b5f748b826b56536070828a847d6b56402b1600000b1c2d3c4b58646e767d83878889888683807a748b9d88725c47321d070000091d30435668798a9993877c76726f6e6e6f72777d87919c90836f5a442f1a0500001f344a5f748b9d88725c47321d070000000c161d1f1f1f1f1e190f030000001f344a5f748ba08b745f575757575757575759606b79899992806d5a4733200c0000000000000000000000000000000000000000000009141c1f1f1f1f1d170d000000000005111a1f1f1f1f1f1c150a00000000000000000000000000000000000000000000000000000000000000080f151a1d1f1f1f1e1b17110a0300000000000000000000000000000000000000070f15191d1e1f1e1c18130c091115161616140e05000000000000000000000000000000172b4054697d9397836e5a4733200d00000000000000000215283b4f63778b9f8b76624d38240f00000000081b2f43566a7d92a09795959595959595959595959597a093806b5744301d0900000000192e43586d8397927c68533e291500000000000000061b2f44596e8398937d68533e2914001f344a5f748b9f89737886919a999796989c958c827467594a3a2a1908000000001f344a5f748ba08b745f4a3737373737373737373737373630251606000000000000000f253a4f6479909b866f5a442f1a05000000001125394d6175889b8f7c6b5a4a5f748b826b5642526578756f695f4f3c28130000000f1e2d3a47515b63696d70727372706e6a65748b9d88725c47321d070000011426394a5b6b7a889499918b8785848486888c929a958a7d726454402c180300001f344a5f748b9d88725c47321d070000000002080a0a0a0a090400000000001f344a5f748ba08b746c6c6c6c6c6c6c6c6c6e747d8a9895857362503d2a1704000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001a2f44596e8398927d68543f2b17040000000000000000000c1f33485c70869a907b66513d2813000000000013273b4e6275899c87808080808080808080808080879c8a76634f3b281401000000001c31465b70869b8f79644f3a25100000000000000000162b40556a809596826b56412c17001f344a5f748b9f89798997928a8482828389929c928677685848372513010000001f344a5f748ba08b745f4c4c4c4c4c4c4c4c4c4c4c4c4c4b42342411000000000000000f253a4f6479909b866f5a442f1a0500000000162b4054687c919986725f4d4a5f748b826b5640495a64605b544d4132200c000000031524323b3e474e54585b5c5e5c5b595560768c9d88725c47321d07000000091b2d3d4d5c6a76828a92979b9a99999a9b97928a82776d6154463624110000001f344a5f748b9d88725c47321d0700000000000000000000000000000000001f344a5f748ba08b838383838383838383838488909b94867667564533210e00000000000000000000000000000000000000000000000000000b141a1e1e1e1b150b00000000000000000000000000070e13171a1b1b1a1815100a04000000000000000000000000000000000000000000070e13171a1b1b1a1815100a040000000000000000000000000000000000000000000004090c0e0e0e0c080400000000000000000000000000000000000000000000001d32475c72879c8e78644f3a25110000000000000000000004192e42576c829794806a543f2a1500000000000b1f32465a6d82958e7a6a6a6a6a6a6a6a6a6a6a7a8e96836e5b4733200c00000000001e33485d72889d8c77624c37220d000000000000000013283d53687c9398836d58432e19001f344a5f748b9f8988958980766f6b6b6e757d8a97968776665443301e0b0000001f344a5f748ba08b7462626262626262626262626262625f52412d19050000000000000f253a4f6479909b866f5a442f1a05000000001b3045596e8397927d6a56424a5f748b826b56403c494f4c46403a302314020000000e2032424e534e4340444647484746445064798e9a866f5a45301b06000000000f1f2f3e4c59646d767d8387898b8b8987837d766e655a4f43362819070000001f344a5f748b9d88725c47321d0700000000000000000000000000000000001f344a5f748ba09b98989898989898989898999c968d82756758493827160400000000000000000000000000000000000000000000000004121e272f3333332f281c0e0000000000000000000009131b22282c2f30302f2d2a251e170e05000000000000000000000000000000000009131b22282c2f30302f2d2a251e170e050000000000000000000000000000000000020b13191e21232323211d18120a0100000000000000000000000000000000000000001f344a5f73899f8c76614c37220d0000000000000000000000152a3f54697d9497826c57422c17000000000003172a3e5165798d96836e5b5454545454545b6f83968e7a66533f2b180400000000001f34495e73899f8b74604b36200b000000000000000011263b50667b9199846e59442f1a001f344a5f748ba0959485776c625b56565a616c798797948472604d3a27140100001f344a5f748ba08b777777777777777777777777777777705d48331e080000000000000f253a4f6479909b866f5a442f1a05000000001e33485d72889c8e78644f3b4a5f748b826b56402b353a38322c261e130500000005172a3d50606860554a41393333323947586b809395806b57422d1803000000000111202e3b47515a62686d7173747473716d68625b52483d3225180a000000001f344a5f748b8b88725c47321d0700000000000000000000000000000000001f344a5f748b8b8b8b8b8b8b8b8b8b8b8b8b8b88837a706457493a2b1a090000000000000000000000000000000000000000000000000213222f3a43484848443a2c1b090000000000000005111c262e363c4144464644423f39332b21170c000000000000000000000000000005111c262e363c4144464644423f39332b21170c0000000000000000000000000000000b151f272d323638383836322d261e1409000000000000000000000000000000000000001f344a5f748ba08b745f4a35200b000000000000000000000013283d52677c9398836c57422c170000000000000e2236495d7085988a76634f3f3f3f3f4f63768a9986725e4a3723100000000000001f344a5f748ba08b745f4a341f0a000000000000000010263b506579909b866f5a442f1a001f344a5f748ba0988775675a4f464140464f5b6978899b907d6a5744301d0900001f344a5f748ba0918d8d8d8d8d8d8d8d8d8d8d8d8d8d89735e48331e090000000000000f253a4f6479909b866f5a442f1a05000000001f344a5f748ba08b75604b364a5f748b826b56402b2124231d17110a01000000000e2134475a6c7d72675d544d4846474c566475889b8d7965513d281400000000000002101d29343e474e54595c5e5f5f5e5c59544e473e352b20140800000000001f34495d707474746e5b46311c0700000000000000000000000000000000001f34495d707474747474747474747474747474726d665d5347392b1c0d000000000000000000000000000000000000000000000000000f2031404d575d5e5d574a3825110000000000000916222e39424a5156595b5b5a57534e473e34291e110300000000000000000000000916222e39424a5156595b5b5a57534e473e34291e1103000000000000000000000005121d28323b41474b4d4e4d4b47413a31271b0f0100000000000000000000000000000000001f344a5f748ba08b74604b36200b000000000000000000000013283e53687c9398836c57422c17000000000000061a2d4154687c9093806b5744303043576b8092917d6956422f1b080000000000001f344a5f748ba08b745f4a341f0a00000000000000000f253a4f6479909b866f5a442f1a001f344a5f748ba08f7a6858493d332c2c323d4b5a6b7d909a8773604c38241000001f344a5f748ba097949494949494949494949494949489735e48331e090000000000000f253a4f6479909b866f5a442f1a05000000001f344a5f748ba08b745f4a344a5f748b826b56402b160f0e09030000000000000014293d5164768a857a7068615d5b5c60687483939583705d4a36220e00000000000000000c17212b333a3f4447484a4a494744403a332b23180e020000000000001a2e41515d5f5f5f5c503e2b170300000000000000000000000000000000001a2e41515d5f5f5f5f5f5f5f5f5f5f5f5f5f5f5d59534a4035291c0d0000000000000000000000000000000000000000000000000005182b3e4f5e6a7273726855402b16000000000009182734404b555e656a6e70706f6c68625a51473b2f21130400000000000000000009182734404b555e656a6e70706f6c68625a51473b2f2113040000000000000000000615232f3b454e565c60636363605b554d44392d1f1103000000000000000000000000000000001f34495e73899e8c77624d38230e0000000000000000000000162b40556a809496826b56402b16000000000000001225394c6073889b8773604c38384c5f73879b8975614e3a2713000000000000001f344a5f748ba08b745f4a341f0a00000000000000000f253a4f6479909b866f5a442f1a001f344a5f748b9f89745f4b3a2b201717202d3d4e6073879a8f7b67533f2a1501001f344a5f748ba08b7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d735e48331e090000000000000f253a4f6479909b866f5a442f1a05000000001f344a5f748a9f8c76614c374a5f748b826b56402b2123211b150e070000000000162b40566b808c968d847c76727070747b86929788776653412e1b07000000000000000000050e171f252b2f3233343434322f2b251f180f06000000000000000011233341494a4a4a483f32210f00000000000000000000000000000000000011233341494a4a4a4a4a4a4a4a4a4a4a4a4a4a48443f372e23180b00000000000000000000000000000000000000000000000000000c2034485b6d7c8789836c57422c17000000000918273644525d6872798084868786827c766d64594d3f31221201000000000000000918273644525d6872798084868786827c766d64594d3f312212010000000000000006152433404c58616a707577787775706960564a3d2f2111010000000000000000000000000000001c31475c70869b907a65513c281300000000000000000000071b2f44586d8397937d68533e291400000000000000091d3144586b80938f7b6754404053677b8f95826d5946321e0b000000000000001f344a5f748ba08b745f4a341f0a00000000000000000f253a4f6479909b866f5a442f1a001f344a5f748b9f89735e48331e0d03020f1f3143576a809397826d58442f1a05001f344a5f748ba08b746868686868686868686868686868655644301b060000000000000f253a4f6479909b866f5a442f1a05000000001e33485d72879c8f7965503c4a5f748b826b56402c3538363029221a0f0100000014283d50616e79848d96908b8886878a8f98928678695948362411000000000000000000000000040b11161a1d1e1f1f1f1d1a16110b04000000000000000000000515232e34343434332d2213030000000000000000000000000000000000000515232e34343434343434343434343434343433302a231b110600000000000000000000000000000000000000000000000000000010253a4f63778b9a98836c57422c17000000051627364554626f7a858d949794949597918a82766a5d4f40301f0d000000000000051627364554626f7a858d949794949597918a82766a5d4f40301f0d0000000000000213233342515e6a757d858a8d8f8d8a857c73685b4d3f2f1e0e000000000000000000000000000000192e43586c829694806b56422e1b070000000000000000000e22364a5e72879c8e79644f3b2611000000000000000115283c5063778b9784705c48485c6f83978c7865513e2a1603000000000000001f344a5f748ba08b745f4a341f0a00000000000000000f253a4f6479909b866f5a442f1a001f344a5f748b9f89735e48331e0900000114283b5064798e9c87725d48331e08001f344a5f748ba08b745f535353535353535353535353535148392714010000000000000f253a4f6479909b866f5a442f1a05000000001a2f44596d839794806a57434a5f748b826b56403e494e4a443d362c1f0f0000000d213343515c67707982888e919393918d878074685a4b3b2b190700000000000000000000000000000000000000000000000000000000000000000000000000000005111a1f1f1f1f1e191004000000000000000000000000000000000000000005111a1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1e1b161008000000000000000000000000000000000000000000000000000000000012273c52677c929e8d836c57422c1700000011223444546372828d98918983807d80858b9494887b6d5e4e3d2b1906000000000011223444546372828d98918983807d80858b9494887b6d5e4e3d2b190600000000000e20314151616f7c8892999794939497999086796b5d4d3c2b1a080000000000000000000000000000152a3e53677c909a86725e4a372412000000000000000006192b3e5165798d9c88735f4a36210d00000000000000000d2034475b6f83968c7764505063778b9884705d4935220e00000000000000001f344a5f748ba08b745f4a341f0a00000000000000000f253a4f6479909b866f5a442f1a001f344a5f748b9f89735e48331e090000000d21364b60758b9f8a745f4a341f0a001f344a5f748ba08b745f4a3e3e3e3e3e3e3e3e3e3e3e3e3d362a1b0a000000000000000f253a4f6479909b866f5a442f1a0500000000162b3f53687c909a8673604d4a5f748b826b56404c5c635e58514a3d2c1a070000041525333f4a545d666d74787b7d7c7b78726b62574a3c2d1d0d00000000000000000000000000000002070b0e0f0f0f0d090500000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001070b0e0f0f0e0c12273c52677c9397826f65533f2b160000091c2e405162728291978a7d756d6a686b7077828d998c7c6b5a4836230f00000000091c2e405162728291978a7d756d6a686b7077828d998c7c6b5a4836230f0000000006182b3d4e5f70808d999289837d7c7d838a94978a7b6b5a4937251301000000000000000000000000001024394d6175899d8d796653412f1e0d00000000000005142436485a6d829595826d5945301c08000000000000000004182b3f53667a8e94806c59586c80938f7c6854412d190600000000000000001f344a5f748ba08b745f4a341f0a00000000000000000f253a4f6479909b866f5a442f1a001f344a5f748b9f89735e48331e090000000a1f344a5f74899f8c76604b36210b001f344a5f748ba08b745f4a3429292929292929292929292822190c00000000000000000f253a4f6479909b866f5a442f1a05000000001025394d6174889b8f7c6a594a5f748b826b5647586978736c655b4a36220e0000000715212d37414a52595f6467686866635e574f45392c1e0f00000000000000000000000000000810161c2023252524211e19130c0400000000000000000000000000000000000000000003080c0e0f0f0e0c08040000000000000000000000000000000000000000000000000106090c0d0d0b0804000000000000000000000000000000000000000000040e151b2023252523211c273c52677c9397826b564736241000001326394b5d6f80919788786c61595453565b646e7b8b9a8a7765523f2b17020000001326394b5d6f80919788786c61595453565b646e7b8b9a8a7765523f2b17020000000f2335485a6c7d8e998c80756e6967696e77828f998978675543301d0a00000000000000000000000000091e32465a6d82949683705e4c3c2b1d10060000020a152332425365778a9e8d7965513e2a16010000000000000000001023374b5e7286998875616073889b8873604c3925110000000000000000001f344a5f748ba08b745f4a341f0a00000000000000000f253a4f6479909b866f5a442f1a001f344a5f748b9f89735e48331e090000000b20364b60748ba08b745f4a35200b001f344a5f748ba08b745f4a341f13131313131313131313130e060000000000000000000f253a4f6479909b866f5a442f1a0500000000091e3145586b7d919a8977675a5f748b826b565765758788827965503b261100000000040f1a242e373e454a4f525855514e4a433b32281b0e0000000000000000000000000007111b232b3135383a3a3937332e2720170d0200000000000000000000000000000000000811171c2123252523211d18120a0100000000000000000000000000000000000000070f151b1f212222201d19120b0200000000000000000000000000000000010d1721293035383a3a3836312b3c52677c9397826b56402b190700081b2f4255687a8d9b8978695b4f45403e4148515e6c7c8f8d826e59442f1a050000081b2f4255687a8d9b8978695b4f45403e4148515e6c7c8f8d826e59442f1a05000000152a3e5264778a998a7a6d625a5452545b6471808f9685725f4d3a26130000000000000000000000000003162a3e5164778a9d8e7c6a59493b2e221a1514171d27334150607083959583705d4936220e00000000000000000000081b2f42566a7d91907c69687c9093806b5844301d090000000000000000001f344a5f748ba08b745f4a341f0a00000000000000000f253a4f6479909b866f5a442f1a001f344a5f748b9f89735e48331e090000001125394e63778d9d88725d48331e09001f344a5f748ba08b745f4a341f16161616161616161616161616120a000000000000000f253a4f6479909b866f5a442f1a05000000000215283b4e617385969686776b62748b826b6069758494988674614e39240f00000000000008111b232a314152626d69615849372820150a000000000000000000000000000d19242e373f454a4d4f4f4e4c48423b332a1f1408000000000000000000000000000008121c242b3136383a3a3836322d261e140a0000000000000000000000000000000005101a22292f3436373735322d261f150c000000000000000000000000000006131f2a343d444a4d4f4f4e4a453e3c52677c9397826b56402b1601000f23374b5e728598907d6b5a4b3d322b292d34404e5f717d77726957422e190400000f23374b5e728598907d6b5a4b3d322b292d34404e5f717d77726957422e1904000000172c42576c828f8d7b6b5c50463f3d404753617182948f7c6956422f1b07000000000000000000000000000e2134475a6d809199887767594b3f352e2a292b313944515f6e7d8f9c8a786653402d1a06000000000000000000000013273a4e6175899985717084988b7763503c2815010000000000000000001f344a5f748ba08b745f4a341f0a00000000000000000f253a4f6479909b866f5a442f1a001f344a5f748b9f89735e483322110200091a2d4054687c9298846f5a45301b06001f344a5f748ba08b745f4a342b2b2b2b2b2b2b2b2b2b2b2b2b2b261d100100000000000f253a4f6479909b866f5a442f1a0500000000000c1f3244556777889796897d75748b826f747c87939a8b7a685744311e0a00000000000000000c1c2d3e4e5f70827d7567533e29140300000000000000000000000001101d2a36414a535a5f62646463605c564f463d3125180a0000000000000000000000010e1a252f3840464b4e4f4f4e4b47413a31271c1004000000000000000000000000000b17222d363e44494b4c4c4a47413b32281e12050000000000000000000000071523303c4750585e626464635f5a524952677c9397826b56402b16010014293d52667a8e9a8773604e3d3a3a3a3a3a3a3a42556569635d574b3a2b1d0d000014293d52667a8e9a8773604e3d3a3a3a3a3a3a3a42556569635d574b3a2b1d0d000000152a3e51627080826f5d4d3e333030303543536476899986725e4a36220e0000000000000000000000000005182b3d5062738595968676695d5249433f3e40454c56626f7d8d9c8f7d6d5b493624110000000000000000000000000b1e3246596d82958d79788c96836f5b4734200d000000000000000000001f344a5f748ba08b745f4a341f0a00000000000000000f253a4f6479909b866f5a442f1a001f344a5f748b9f897563513f2f2014111927374a5c708498927d6955402c1702001f344a5f748ba08b745f4a4040404040404040404040404040403a2e1f0f00000000000f253a4f6479909b866f5a442f1a050000000000021426384959697886939b928a868c8384899099978a7c6c5c4b392715020000000000000008192a3a4b5c6c7d8e8c7a67533e291400000000000000000000000001101f2e3b48535d666e737779797876716a63594f433628190a00000000000000000003111f2b37424c545a5f63646463605b554d44392e21140500000000000000000000000e1b2835404952585d6062625f5c554e453b2f23150700000000000000000006162533414e59636c7377797978746e665c52677c9397826b56402b160100192e43576c829593806a574f4f4f4f4f4f4f4f4f4f4f52544f4f4f4f483b2b180500192e43576c829593806a574f4f4f4f4f4f4f4f4f4f4f52544f4f4f4f483b2b180500000f223444526170776552404044464646433f47596c80938d7965513d291400000000000000000000000000000e213244566777889795887a6f655d5754535559606973808d9c918270604f3d2b190700000000000000000000000003162a3d5164788c958280948e7a66533f2b1804000000000000000000001f344a5f748ba08b745f4a341f0a00000000000000000f253a4f6479909b866f5a442f1a001f344a5f748ba092806e5d4d3e3128262b36445567798c9e8a76624e3a261100001f344a5f748ba08b745f565656565656565656565656565656554c3d2c1905000000000f253a4f6479909b866f5a442f1a05000000000000091a2b3b4b5a6875828b939a9b9c98999b968f85796c5e4e3e2d1c0a0000000000000001142637475869798a92806e5c4b3824100000000000000000000000000e1f2e3d4c5965707a83898d8f908e8b8680766c60544637281807000000000000000212212f3c49545f676f747779797875706960564b3f322314050000000000000000000e1d2c3946525c656d7276777774706a61584d4133251607000000000000000214243343515f6b7680888d8f908d8982796e62677c9397826b56402b1601001d32475c70869b8f7965646464646464646464646464646464646464594835210c001d32475c70869b8f7965646464646464646464646464646464646464594835210c00000516263543515e6359494f54585b5b5b58544e5064778c95806c57432e1a050000000000000000000000000003152738495969788795988c8278716c6a686a6e747c86919d90827263534231200e00000000000000000000000000000e2235495c7084988a889a86725e4b37231000000000000000000000001f344a5f748ba08b745f4a341f0a00000000000000000f253a4f6479909b866f5a442f1a001f344a5f748ba09e8c7b6b5c4f443d3b3f48546273859693826d5a47331f0b00001f344a5f748ba08b746b6b6b6b6b6b6b6b6b6b6b6b6b6b6b6b695b4834200b000000000f253a4f6479909b866f5a442f1a05000000000000000d1d2d3c4a57636e778086898f8b8987827a72675c4e403020100000000000000000081d31445565768798877563513f2d1b0800000000000000000000000a1b2c3d4c5b6a77838d96948e8b8b8c909693897d71645546362413010000000000001020303f4d5a66717b83898d8f908e8a857c73685d504232231303000000000000000b1c2c3b4957646f7982888b8d8c8a857d756a5e5143342514040000000000000e2031425161707d89939c9994939394968c8072677c9397826b56402b1601001f34495e73899e8c7979797979797979797979797979797979797977644f3a240f001f34495e73899e8c7979797979797979797979797979797979797977644f3a240f00000008172533414b4d525b63696e7070706d6861595d71869a86715d48331f0a0000000000000000000000000000091a2b3b4b5a697684909b958d8682807d8083889099988c807163544535251402000000000000000000000000000006192d4154687b8f9796927d6a56432f1b0800000000000000000000001f344a5f748ba08b745f4a341f0a00000000000000000f253a4f6479909b866f5a442f1a001f344a5f748ba092928a7a6d61575250535a6572829199887664513e2b170400001f344a5f748ba08b828282828282828282828282828282828277624c37220d000000000f253a4f6479909b866f5a442f1a0500000000000000000f1e2c3946515b646b70748b8273716d675f554a3e3022120200000000000000000c21364b6072838b8b7b6957453422100000000000000000000000031628394a5b6a798895948980797674777b838c96908273645342301d0a00000000000b1d2e3e4e5d6b78848f979a94939294999990867a6e60514131200f000000000000061829394a596775828c959c9a98989b9992887c6f615242322110000000000007192c3d4f6070808e9b978d85807c7c80868e9183737c9397826b56402b1601001f344a5f748ba0949090909090909090909090909090909090909079644f3a250f001f344a5f748ba0949090909090909090909090909090909090909079644f3a250f00000002122231404d59656f777d83868786837c756c616c82968b76614c38230e0000000000000000000000000000000d1d2d3c4b5966727d8892999b97949495989d978f857a6e61544536271707000000000000000000000000000000001125384c6073879b9d8975614e3a27130000000000000000000000001f344a5f748ba08b745f4a341f0a00000004040100000f253a4f6479909b866f5a442f1a001f344a5f748b9f8985958b7d736b6766686e7783909c8c7b6a594734210e0000001f344a5f748ba099979797979797979797979797979797978d77624c37220d000000000f253a4f6479909b866f5a442f1a050000000000000000000e1c28343e4850565f748b826b5c58534b42382c2012040000000000000000000c21364b60717474746f5e4c3a28160400000000000000000000000d20334557687989989082766c65605f62676f7985939282715f4d3a2713000000000517293a4c5c6c7b8996988d86807c7c80858d97988c7d6f5f4f3e2c1b0800000000001123354757677786939b918a858384878d969a8e807061503f2e1b0900000000102336495b6d7d8f9e92867a706a67676a717a8692827c9397826b56402b1601001f344a5f748ba08f8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b999079644f3a250f001f344a5f748ba08f8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b999079644f3a250f0000000e1f30404f5e6b77828b92989997989791897d72687c928f7965503b2611000000000000000000000000000000000f1e2d3b4855606b757d858a8e9091908d89837b72675c5043362718090000000000000000000000000000000000091d3044576b808c8c826d5946321f0b0000000000000000000000001f344a5f748b8c8b745f4a341f0a050c14191a160e040f253a4f64798c8c866f5a442f1a001f344a5f748b9f897787959087807c7b7c838a95998c7d6e5e4d3b2917050000001f344a5f748b8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c77624c37220d000000000f253a4f64798c8c866f5a442f1a05000000000000000000000b17222b343c4a5f748b826b56433e382f261b0f0200000000000000000000081c3043535e5f5f5f5d51402e1d0b000000000000000000000003172a3d50627486979182716459504b4a4d535c677484958f7c6956422d19040000000e21344658697a8b9993867a716b67676a707985919c8e7d6d5c4a38251300000000081b2e41536475869696897d756f6c6e7279838f9d8f806e5d4b39261300000005192d405366788a9c928374685d555252565e6874838f7d9397826b56402b1601001e33485e73889d8b7674747474747474747474747474747482978e78634e39240f001e33485e73889d8b7674747474747474747474747474747482978e78634e39240f0000081a2c3d4e5e6d7c8995988f88848283868b93908374798f937d68533f291400000000000000000000000000000000000f1d2a37434e5861697075787b7b7978746e675f554b3f332618090000000000000000000000000000000000000114283b4f637476767565513e2a17030000000000000000000000001f34495d70767676705d49341f0f1920282e2f2a21140f24394e63747676766c58442f19001f344a5f748b9f89737785919b95919193979c93887b6e5f50402f1e0c000000001f34495d70767676767676767676767676767676767676767672604b36210c0000000c1624394e63747676766c58442f1c120700000000000000000000050f1821344a5f748b826b56402b241c13090000000000000000000000000114253542494a4a4a48403223110000000000000000000000000b1f3246596c80929684726253473d3634383f4956667789847d6f5a442f1a05000004172b3e5163758898938475685e565252555d677382919c8b796754422f1b080000001225384b5e7082939687776b615b58585d6671808f9d8c7a685643301d0900000c2135485c6f839697857464564a413d3d424b57647384909997826b56402b1601001c31465b70859a8f79655f5f5f5f5f5f5f5f5f5f5f5f5f70859a8a75604b36210c001c31465b70859a8f79655f5f5f5f5f5f5f5f5f5f5f5f5f70859a8a75604b36210c0000122537495b6c7c8c9a92867b736e6c6c7077808b9383778d96826b56412c170000000000000000000000000000000000000c1925313b454e555c6063666665635f5a534c42382d21150800000000000000000000000000000000000000051727364656606060605848372818060000000000000000000000001a2e41525e6060605e52412e1a202c343c43443e3223131f334656606060605c4e3d2915001f344a5f748b9f8973677380888e9193918e8880756a5d504132221100000000001a2e41525e60606060606060606060606060606060606060605f5444311d080001111e29333c4656606060605c4e3f392e24190b00000000000000000000000a1f344a5f748b826b56402b16080000000000000000000000000000000817252f34343434332d22140500000000000000000000000011263a4e6275899c8c78665544362e2e2e2e2e38485a6d746f6962523f2b170500000b1f33475a6d829398867565574b423d3c414a55637283959785725e4b37240f000006192d4154677a8d9b8a78685a4e4643444953617080929886725f4c382511000013273b5064778c9f8c79675646392e28282e3946556677899b97826b56402b160100182d41566a809394806b574a4a4a4a4a4a4a4a4a4a4f63768a9985705b47321d0800182d41566a809394806b574a4a4a4a4a4a4a4a4a4a4f63768a9985705b47321d0800081b2e415467788a9b90827469605957575c636d7988907d8c98836d58432e180000000000000000000000000000000000000008141f2e3a454f56524e5050504e54544c42372a1b10040000000000000000000000000000000000000000102334455360686c6c69605446362411000000000000000000000000122434424a4b4b4b4a4234241f303e4850575950413120162838444b4b4b4b483f30200d001f344a5f748b9f89735e626c74797b7c7b78736c63584c3f322314040000000000122434424a4b4b4b4b4b4c54544b4b4b4b4b52564f4b4b4b4b4a4336261401000e1f2f3b465056524b4b4b4b4c55544b413729190700000000000000000000091f34495d70747468543f2a15000000000000000000000000000000000007121b1f1f1f1f1e19110500000000000000000000000000172b4054697d9297836f5c494343434343434343434f5d605a554f443d322312000012263a4e63768a9e8d7a685747392e28272d38455465778a9d8e7a67533e2a1601000c2135495d708598917d6c5a4a3c322d2f3642516374879a8f7b6854402c180400182d41566a809397836f5c4a38281b13131c2838485a6c7d9397826b56402b16010013273b5064778c9b8874614f3f34343434343439495a6c8092917d6955412d18040013273b5064778c9b8874614f3f34343434343439495a6c8092917d6955412d1804000f23374a5e71849692827163564c45424247505b697889888b99846e59442f1a0000000000000000000000000000000000000000162a3c4c57616b65594c434f5c69695f5548372511000000000000000000000000000000000000000005192d405263717c83837c726453412e1a0600000000000000000000000616242f35363636352f2416293c4e5c636b6d5f4e3e2d1c1a273136363636342d211202001f344a5f748b9f89735e4f585f64676766645f5850463b2f2214040000000000000616242f3536363647545e69695d50434c58656b62584d3d3635302618080000182b3d4d58636b64584b44515d69685e544736241000000000000000000000061a2e41515d5f5f594a39251100000000000000000000000000000000000000000000000000000000000000000000000000000000001b3045596e8398917c685858585858585858585858585858585858585041301c0900172c4055697d929884705d4b39291b13121a2737485a6d809496826d5945301b070012273b5064788c9c8874614e3d2c1f181a253445576a7d9297846f5b47321e09001c31455a6f8599917c6854402d1b0a00000a1a2b3c52677c9397826b56402b1601000c2135485c6f829591806d5d4e42393332363e495767778a9a8874614d3a261200000c2135485c6f829591806d5d4e42393332363e495767778a9a8874614d3a2612000015293e52667a8e9a877563534539302c2d343e4b5a6b7d90959b866f5a442f1a00000000000000000000000000000000000000001c3146596a7480766a5d54616d7a7c726654402c1702000000000000000000000000000000000000000a1f34485c6f828c82828b82705d4935200c00000000000000000000000006121b20212121201b12192e43586b77807d6c5c4b3a2a19151d202121211f19100300001f344a5f748b9f89735e48454b4f5252514f4a443d33291d1104000000000000000006121b20212b3f5365717b7a6e61555d697680756a5a4732201c14080000001e32475a6b758075685c55626e7b7a7065533f2b16000000000000000000000011233341494a4a463b2d1b09000000000000000000000000081014151515120c030000000000000000091014151515120c020000001e33485d72889c8d776e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6d5f4c38230e001b30455a6f8498917c6854412e1b0b000009192b3d5064788d9c88735e4934200a00172c40556a7d9395826c5845311f0e030716283b4e62768a9f8a75614c37230e001e33485e73889d8c77624d3924110000000012273c52677c9397826b56402b16010005192c40526577899a8c7b6c5f544d48474a515b677585968e7c6a5744311e0a000005192c40526577899a8c7b6c5f544d48474a515b677585968e7c6a5744311e0a00001a2f43586d8296917d6a574635271d1719212d3c4e6073879b9b86705b46301b00000000000000000000000000000000000000001e33485d728391887b6e65727d8c8e806d58432e1903000000000000000000000000000000000000000d22374c62778c7d6e6d7c8d78634e38230e0000000000000000000000000000070b0b0b0b0b0700192f44586c7d908b79695847372615080b0b0b0b0a05000000001f344a5f748b9f89735e4833363a3c3c3c3a36302920170c000000000000000000000000070b172c42576c7d8d8c8072666e7a889284745f4a341f0a01000000001f344a5f748492877a6d6673808d8d7d6c57422c1700000000000000000000000515232e343434322a1d0f0000000000000000000000000e1a24292a2a2a272014060000000000010f1c25292a2a2a271f140500001f344a5f748a9f8d8484848484848484848484848484848484848479644f3a250f001e33485d72889d8c77624e392511000000000e21354a5e73889d8c77624c37220d001b3045596e8498907b66523d29150200000b1f33475c70869a8f7965503b2611001f344a5f748b9f89745f4a34200b0000000012273c52677c9397826b56402b16010000102336485a6b7c8d9a8b7d7168615d5c5f656d7885949182705e4d3a281502000000102336485a6b7c8d9a8b7d7168615d5c5f656d7885949182705e4d3a28150200001d32475c71879b8b76624e3a28170a01040f1e3043576b80959b86705b46301b00000000000000000000000000000000000000001b2f43566572828f8c807683908c7d6f61513e2a1601000000000000000000000000000000000000000d22374c62778d7c6866798f78634e38230e0000000000000000000000000000000000000000000015293d4f617385978776655444332210000000000000000000001f344a5f748b9f89735e4833212527272725211c150d0400000000000000000000000000000014293d50606e7c8b908476808c908273665744311c0700000000001c314457667482908b7d7784918a7c6e60503d291400000000000000000000000005111a1f1f1f1d170c0000000000000000000000000c1d2c373e3f3f3f3b32241403000000000e1f2d383f3f3f3f3b31231302001f344a5f748ba0999797979797979797979797979797979797999079644f3a250f001f344a5f748b9f8b745f4a35200b00000000071c31465b70869b8f78634e38230e001d32475c72879c8c77624d38230f00000004192d42576c8296937d68533e2914001f344a5f748b9f89735e48331e090000000012273c52677c9397826b56402b1601000006192b3c4d5e6e7d8c988f857c7672727479828a969082726252412f1e0b0000000006192b3c4d5e6e7d8c988f857c7672727479828a969082726252412f1e0b0000001f344a5f74899c87725c47331e0b0000000114283d52677b919b866f5a442f1a000000000000000000000000000000000000000014263847556270808d918894897b6d5f514334220f00000000000000000000000000000000000000000c21364a5f7386867a79858774604b37220d000000000000000000000000000000000000000000000d2032445567798c94837261513f2c18030000000000000000001f344a5f748b9f89735e48331e10121212100c070100000000000000000000000000000000000e213342505e6c7a899589908e807163564839281501000000000015283948566471808e90899588796c5e504233210e00000000000000000000000000000000000000000000000000000000000000000016293b49535454544f4232200c00000006192c3d4b535454544e42311e0b001f344a5f74899f8b8282828282828282828282828282828282978f79644f3a250f001f344a5f748b9f89735e49341f0a00000000031a2f445a6f869b8f79644f3a250f001f344a5f74899f89745f4a34200a00000000152a3f54697d9495806b56402b16001f344a5f748a9f8b75604b36210d0000000012273c52677c9397826b56402b16010000000d1f3040505f6d7a869198908b8888898e95948a7d716354453423120000000000000d1f3040505f6d7a869198908b8888898e95948a7d71635445342312000000001f344a5f748b9b86705b46301b060000000010253a4f64799098836d58432e190000000000000000000000000000000000000000091a29374552616f7c8b8b87786b5d4f41332516050000000000000000000000000000000000000000071c30435668778389898478695744311d0800000000000000000000000000000000000000000000021426384a5c6e808b8b806e5b46311c070000000000000000001f344a5f748b9f89735e48331e0900000000000000000000000000000000000000000000000004152432404e5c6a78868b8b7d6f615345382a1b0a0000000000000a1b2a38465461707d8b8b8677695c4e4032241504000000081014151515151515151515151515151515151515151515120c030000001d314558676a6a6a614f3c28150200000f2235495b686a6a69604e3a2611001e33485d72879c8c776b6b6b6b6b6b6b6b6b6b6b6b6b6b6d83988c77624d38230e001f344a5f74899f8b75604b36210d00000000081d32475c70879c8e78634e38230e001f344a5f748b9f89735e48331e090000000013283d53687c9397826b56402b16001e33485d72879c8e7964503b28140300000012273c52677c9397826b56402b160100000001122232414f5d69747d868c909393918e8882776d6053453627160600000000000001122232414f5d69747d868c909393918e8882776d60534536271606000000001f344a5f748a9c87725c48331e0b0000000214293d52677c9195806a55402c160000000000000000000000000000000000000000000b19273442515f6c747474685a4d3f31231507000000000000000000000000000000000000000000001427394a59666f747470675a4b3a2815020000000000000000000000000000000000000000000000091b2d3f5163737474746e5b46311c070000000000000000001f344a5f748b8b89735e48331e0900000000000000000000000000000000000000000000000000061422303e4c5a687474746d5f514335281a0c00000000000000000c1a28364451606e74747467594c3e302214060000000e1a24292a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2720140600001f344a5f748080806b5845321f0c0005182b3e51647880807d68533e2913001a2f44596d8397907c675656565656565656565656565e72879c88735e4934200b001d32475c71879b8e7964503c2815030000001024374b60748a9f8b76604c37210c001f344a5f748b9f89735e48331e090000000013283e53687d9397826b56402b16001a2f44596d839793806b574432201105040d1b2c3e53687c9397826b56402b160100000000041423313f4b57616a71777b7c7d7c78746d645a4f43362718090000000000000000041423313f4b57616a71777b7c7d7c78746d645a4f433627180900000000001d32475c71879b8b76624e3a28170a0205101f3144586c8095907b66523d28130000000000000000000000000000000000000000000009172532414e5b5f5f5f584a3d2f21130500000000000000000000000000000000000000000000000a1b2c3b49535b5f5f5b54493c2d1d0b000000000000000000000000000000000000000000000000000f213345555e5f5f5f5c503e2b17030000000000000000001f34495d707474746f5c47321d0800000000000000000000000000000000000000000000000000000412202e3c4a585f5f5f5c4f413325170a000000000000000000000a18263442505c5f5f5f57493b2e2012040000000c1d2c373e3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3b32241403001d32465a6d82948875614e3b2815020e2134485b6e82958975624f3b261200162b3f53687c9097836f5c494040404040404040425466798e95826d5944301b07001a2f44586d829694806b574432201105030d1c2e4053677a8f9a86715d48331e09001f34495e73899f8a745f4a35200b00000000152a3f546a809495806a55402b1600162b3f53687c909b8773614f3e2f221918202b39495b6e829697826b56402b160100000000000413212e3a444e565d6266676867645f5951483d32251809000000000000000000000413212e3a444e565d6266676867645f5951483d322518090000000000001a2f43586d8296917d6a574635271d1719212e3d4e6073879b8a75614c38230f0000000000000000000000000000000000000000000000071423303e474a4a4a453a2c1f1103000000000000000000000000000000000000000000000000000e1d2b3740464a4a4740372c1e0f00000000000000000000000000000000000000000000000000000416273743494a4a4a483f32210f000000000000000000001a2e41515d5f5f5f5d513f2c190400000000000000000000000000000000000000000000000000000002101e2c3a454a4a4a483e31231507000000000000000000000000081623323f484a4a4a44392b1d10020000000016293b49535454545454545454545454545454545454545454544f4232200c00172b3e5164778a927d6b5845321f0c182b3e5164778b93806c594633200c001024394d6074889b8c78665545382d2b2b2b33404f5f7183968d7966523e2a160100152a3e53677b8f9b8873614f3e2f2119181f2b3a4b5d6f839693806b57432e1a05001d32475c71879c8d77624d39241000000005192e43586c8297937c68533e2914001024394d6074889b917d6d5c4d3f342e2d333d495767788b9e97826b56402b160100000000000003101c27313b42494e515857524f4a453e352b20140700000000000000000000000003101c27313b42494e515558524f4a453e352b20140700000000000000152a3e52667a8e9a887563534539312c2e343e4c5b6c7d9095826e5a46321e090000000000000000000000000000000000000000000000000412202b3334343431281c0e010000000000000000000000000000000000000000000000000000000d1a242c323434322c241a0e000000000000000000000000000000000000000000000000000000000a19263034343434332d2213030000000000000000000011233341494a4a4a48403222100000000000000000000000000000000000000000000000000000000000000e1c2831343434332c21130500000000000000000000000000000614212c3334343431281b0d0000000000001d314558676a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a614f3b2712000e2134475a6e82958875614e3b28152134475a6d82948a7663503d2a160300091d3144586a7d9096847363564a413c3b3f46515e6d7d8f9583705d4a36230f00001024384c6073879a917d6d5c4d3f342d2d323d4958697a8d9e8b7764503c281400001a2f44596d8397917c67533e2b170400000d2034485d71869b8f7964503b261100091d3144586b7d909c8b7a6b5d51484342474f5a677585929497826b56402b160100000000000000000a151e272e3e4e5f6d6a635b4d3b2a21180e020000000000000000000000000000000a151e273a4c5a62696d615140312a21180e0200000000000000000f23374a5e71849692827163564c45424348505c69798a9b8c7965523e2b170300000000000000000000000000000000000000000000000000020f181e1f1f1f1c150b0000000000000000000000000000000000000000000000000000000000000711181d1f1f1d18110800000000000000000000000000000000000000000000000000000000000009141b1f1f1f1f1e19100400000000000000000000000515232e34343434332d221404000000000000000000000000000000000000000000000000000000000000000b151c1f1f1f1e190f0300000000000000000000000000000000040f191e1f1f1f1c150a000000000000001f344a5f748080808080808080808080808080808080808080806a543f2a150005182b3e5164778b927d6b5744311e2a3d5063778a93806d5a4633200d00000215283b4e60728494918273675d555250535a636e7c8c9989776553402d1a070000091c3044576a7c8f9c8b7a6a5d51484342464f5a6776879892806d5b4734210d0000162b4054697d9296826d5a46332111060a182a3c5063778c9d8974604b37220d000215283b4e60728495998a7b6e645c58575b626c778594848c97826b56402b160100000000000000000008192a3a4b5c6c7d7d776a57422d180500000000000000000000000000000000000002172c415569767d806f5e4d3d2c1b0a00000000000000000000081b2e415467798a9b90827469605a57585c636d7a889792806e5c4936230f00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005111a1f1f1f1f1e1911050000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001f344a5f748b95959595959595959595959595959595959595806a543f2a1500000f2235485b6e82958874614e3b2833475a6d80938a7663503d2a17040000000c1e31435566768695918579706a6766686d76808d998b7a6a59483623110000000114273a4d5f71839399897a6e635c58575b626c77869597867563513e2b1805000011263a4e63778b9d8a7663503f2f221b1d273647596c809396826e5a46311d0800000c1f31435566768796998c8277706d6c707680899588778c97826b56402b1601000000000000000005152637475868798a907d6c57422d180300000000000000000000000000000000000000172c41566a7c8e8d7c6b5a4a3928170700000000000000000000122537495b6c7c8c9a92867c746e6c6c7077808b9894847363513f2c1a0700000000000000000000000000000000000000000000000000060c11141717171716130f090300000000000000000000000000000000000000000000000000000000081013131313120d050000000000000000000000000000000000000000000000000000040a0f13161717171715120e0902000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000810141515151410080000000000000000000000000000081014151515130d03000000001f344a5f748ba0928f8f8f8f8f8f8f8f8f8f8f8f8f8f8f8f8f806a543f2a15000005182b3e5265788c917d6a5744313d5063768a94826d5a4734210e0000000002142537485867768491978d85807b7b7d83899394887a6c5d4c3c2a1906000000000b1e30425364758594998c8077706c6c70757d899697887868574534210f0000000b1f33475b6f839693806e5d4d3f3530323945546576899c8d7a66523f2b16020000021426374859687785929d948c868383858a92938778768c97826b56402b160100000000000000001123334454657687968572604e3c2914000000000000000000000000000000000000000013273a4c5e708294897867574635251300000000000000000000081a2c3d4e5e6e7c8a95998f88848383868b939c91847566564533220f0000000000000000000000000000000000000000000000010a131a2025292c2c2c2c2b28231e170f06000000000000000000000000000000000000000000000000010f1b24282929292721170a00000000000000000000000000000000000000000000000711181f24282b2c2c2c2c2a27231d160e05000000000000000000000000000000020d15191b1b1b19150e0500000000000000000000000000000000000000050d12131313131008000000000000000e1a24292a2a2a29241a0e0000000000000000000000000e1b24292a2a2a272015070000001f344a5f748ba08b78787878787878787878787878787878787868543f2a140000000f2336495c6f82958874614e3b46596c80938b7764513e2b1804000000000008192a3a495866737d8991989491919397948c82766a5d4e3f2e1e0d0000000000011324364757667583909b938b868383858a929c928678695a4a3928160400000004182c3f5366798c9d8c7a6b5d514946474c56637283949683705d4a37230f00000000081a2a3b4a596774808a939a9b98989a948c827568768c97826b56402b16010000000000000000192d4051617283948b78675543311f0d00000000000000000000000000000000000000000b1d2f41536577899686746453422f1c07000000000000000000000e1f3040505e6b77838c949a9997989a9892898073655748382716040000000000000000000000000000000000000000000009141d262e353a3e41424242403d38322b23190f04000000000000000000000000000000000000000000000e1f2d383d3e3e3e3c34281908000000000000000000000000000000000000000005101a242c33393d40424242423f3c38312a22180e02000000000000000000000000031220292f3030302e2922180d00000000000000000000000000000000000a17212729292928241b0f01000000000c1d2c373e3f3f3f3e372c1d0c000000000000000000000e1e2c383e3f3f3f3c3325150400001f344a5f748ba08b7463636363636363636363636363636363635c4c39251100000006192c3f5266798c917d6a57444f62758995826e5b4834210e000000000000000c1c2b3a4855616c757c8388898a888580786f65594c3f3021100000000000000007182939485765727d8991989a98989a99928a8074685a4b3c2c1b0a0000000000102336495c6e8091998a7a6e645d5b5c60697482909b8a786654412e1b0800000000000c1d2c3b4956636d778085888a898680776f6460768282826b56402b160100000000000000001d32475c6f808b8b806d5b493725140200000000000000000000000000000000000000000012243547596b7d8b8b82715f4a35200b0000000000000000000002122232404e5a6670788086898b8988847d766c615547392a1a09000000000000000000000000000000000000000000030f1b26303a42494f535657575755514c463e362c22160a000000000000000000000000000000000000000006192c3d4b525353535046372512000000000000000000000000000000000000000916222d3740474d52555757575754514c463e352b20130600000000000000000000001021303d44464646433d352b1e10010000000000000000000000000000081928343c3e3e3e3d382d1f0e0000000016293b495354545453493b29160200000000000000000b1b2c3c4a53545454504333210d00001f344a5f748ba08b745f4e4e4e4e4e4e4e4e4e4e4e4e4e4e4e4e493e2e1c0a00000000102336495c6f83968773604d596c80928c7764513e2b180500000000000000000d1c2a37444f5961686e72737473706b645c52473b2e21120300000000000000000b1b2a394754606b757d8388898988847d766d63574a3c2d1e0e000000000000071a2c3e5162738393998c8278727070757c86929b8d7c6c5a49372411000000000000000e1d2b3945505a636a70737473706b645c515a696b6b6b62513d29140000000000000000001d32475c6f74747472614f3e2c1a080000000000000000000000000000000000000000000006182a3c4e6070747474705e4a35200b0000000000000000000000041422303d48535c656b70737474726f6962594f44372a1b0c0000000000000000000000000000000000000000000614212d38434d565d63686b6c6c6c6a66615a52493e33281b0e000000000000000000000000000000000000000c2035495b676868686454412d190400000000000000000000000000000000000b1a27343f4a535b62676a6c6c6c6c6966605a51483d31241608000000000000000000061a2d3f4e585b5b5b5851483c2e1f0f00000000000000000000000000001225374650535353524b3d2c19060000001d314558676a6a6a675845311d0800000000000000071828394a5a676a6a6a61503d281400001f344a5f748ba08b745f4a383838383838383838383838383838352c20100000000000071a2d405366798d907d6a5761758995826f5c4835220f000000000000000000000c1a26323c464e54595d5e5f5e5b56504940352a1e1003000000000000000000000c1b2937434e5961696e727374726f6a635a5045392c1e0f00000000000000000f21334455657483909c948d888687899099978b7c6e5e4e3d2b190700000000000000000d1b27333e4750565b5e5f5e5c5750483f4b54565656514434210e000000000000000000192c3f515d5f5f5f5e544432200f0000000000000000000000000000000000000000000000000d1f3143525d5f5f5f5d52422f1b0700000000000000000000000004121f2b36404950565b5e5f5f5d5a554e463d3226190c000000000000000000000000000000000000000000061523313e4a56606971777c82838383807b756e655c5145392c1e0f0000000000000000000000000000000000000e23384e63787d7d7d705b46301b06000000000000000000000000000000000b1a293845515c666f767b80838383827d7a756d645a4f423426170700000000000000000b2035495d6c7070706c645a4c3d2d1b0a00000000000000000000000000192d415464686868675b4935200c0000001f344a5f74808080745f4a341f0a00000000000004152536465767788080806b56402b1600001f344a5f748ba08b745f4a342323232323232323232323232323211a0f020000000000001023364a5d7083968773606b7d928c7865523f2c1905000000000000000000000009141f293239404548494a4846413c352c23180c000000000000000000000000000b1925313c464e54595d5e5f5d5a554f473e33281b0e00000000000000000004152737475664727d8992999c9b9c9c968f85796c5f5040301f0e000000000000000000000a16212b343b4146484a4847423c352d39404040403d3426160500000000000000000010223240484a4a4a4943362615030000000000000000000000000000000000000000000000000113253441494a4a4a49413424120000000000000000000000000000010d19242d353c4246484a4a4845403a332a20140900000000000000000000000000000000000000000005152433424f5c68737c868d929698989794908a82786e63574a3c2d1e0f00000000000000000000000000000000000e23384e63788f9487705b46301b06000000000000000000000000000000081929384755636f79838b909597989897948f8982776c60524435251504000000000000000d22374c627786878682776a5b4a392714010000000000000000000000001b30465b707d7d7d78634e38230e0000001f344a5f748b958b745f4a341f0a00000000000111223243536475869595826b56402b1600001f344a5f748ba08b745f4a341f0e0e0e0e0e0e0e0e0e0e0e0e0e0c060000000000000000071a2d405366798d907d6a748896836f5c4936231000000000000000000000000000020d161e252b3033343433312d282119100600000000000000000000000000000008141f29323a404548494a4845413b342b21160a0000000000000000000000091929384754616c767d84888b8987827a72675c4e41322212010000000000000000000000040e1820272d31333433312d28211c262b2b2b2b29211608000000000000000000000414222d33343434342f25180900000000000000000000000000000000000000000000000000000716242e34343434342e2416060000000000000000000000000000000007111a21282d3133343433302c261f170d03000000000000000000000000000000000000000000021323334251606d7985909999938f8c8c8d90959c958c8074675a4b3c2d1d0c000000000000000000000000000000000e23384e63788f9c87705b46301b0600000000000000000000000000000214263747566573828c969b95908d8c8c8d91979d958a7d70625343332210000000000000000d22374c62778d9c9b958979685644301d090000000000000000000000001b30465b7087948f78634e38230e0000001f344a5f748ba08b745f4a341f0a00000000000e1e2f405061718293a397826b56402b1600001f344a5f748ba08b745f4a341f0e0e0e0e0e0e0e0e0e0e0d090100000000000000000000001124374a5d70849787737d918d796653402d1a06000000000000000000000000000000030a11171b1e1f1f1e1c18130d06000000000000000000000000000000000000020c161e262b3033343433302c2720180e04000000000000000000000000000b1a2937434f59636a6f737473726d675f554a3e302314040000000000000000000000000000050c13181c1e1f1e1c19140d0a1115161616140e050000000000000000000000000511191e1f1f1f1f1b13080000000000000000000000000000000000000000000000000000000006121a1f1f1f1f1f1a120600000000000000000000000000000000000000060d13181c1e1f1f1e1b17110b0300000000000000000000000000000000000000000000000e2031415161707d8b97988d857d797676777a8088929c928677695a4b3b2a19070000000000000000000000000000000e23384e63788f9c87705b46301b0600000000000000000000000000000d20324354657484929d9288807a777676787c838a959c8f827161513f2e1b090000000000000d22374c627787878a96978673604c3925110000000000000000000000001b30465b70879c8f78634e38230e0000001f344a5f748ba08b745f4a341f0a000000000a1b2c3c4d5e6e8090a0ac97826b56402b1600001f344a5f748ba08b745f4a342323232323232323232323221d140800000000000000000000071b2e4154677a8d907c879683705d4a3623100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000030b11171b1e1f1f1e1b18120c04000000000000000000000000000000000b1926323d464f555a5e5f5f5c58534b42382c201204000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000081a2c3d4e5f6f808e9c91857a706964616062666c74808a979688786858483625130100000000000000000000000000000e23384e63788f9c87705b46301b060000000000000000000000000004172a3d4f617283939b8d80756c6662606063676e7783909f90806e5d4b3926130000000000000c21364a5f6f707077899b907c6854402d190500000000000000000000001b30465b70879c8f78634e38230e0000001f344a5f748ba08b745f4a341f0a000000071828394a5a6b7b8d9d98a097826b56402b1600001f344a5f748ba08b745f4a3838383838383838383838383731261707000000000000000000001124374a5e71859887908d7a6653402d1a0700000000000000000000050d11121212100b060e13171a1b1b1a17130d060000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000814202a333b4145484a4a47443e382f261b0f020000000000000000000000000000000000040b10141719191816120e0801000000000000000000000000000000000000000001090f14181a1b1b1a17130e0700000000000000000000000000000000000000000000080e13171a1b1b1a18140f090200000000000000000000000005111a1f1f1f1f1e191004000000000000000000000000000000000000000000000000000000000000000000132537495b6c7d8e9e8f8273685d554f4c4b4d5158616d798796978776655442301e0b00000000000000000000000000000e23384e63788f9c87705b46301b06000000000000000000000000000d2134475a6c7d909c8c7c6e6258514d4b4c4e535b667282909e8c7a6855432f1c080000000000071b2f41515b5b5b6b7d929884705c4835210d00000000000000000000001b30465b70879c8f78634e38230e0000001f344a5f748ba08b745f4a341f0a00000414253646576778899a92839497826b56402b1600001f344a5f748ba08b745f4e4e4e4e4e4e4e4e4e4e4e4e4e4c4335241200000000000000000000081b2e4154677a8e9b9784705d4a372411000000000000000000000c182126272727251e1a22282c2f30302f2c27211a110700000000000000000000000000000000000000070e13171a1b1b1a1815100a04000000000000000000000000000000000000020d171f262c31333434322f2a241c130900000000000000000000000000000000000710181f25292c2e2e2d2b27221c150c0200000000000000000000000000000000020c151d24292d2f30302f2c28221b130a0000000000000000000000000000000000000a141c23282c2f30302f2d29241d150c020000000000000000000515232e34343434332d22130300000000000000000000000000000000000000000000000000000000000000091c2f425467798a9b90807063564b413b3736383d454f5b687787979483715f4d3a281502000000000000000000000000000e23384e63788f9c87705b46301b060000000000000000000000000115293d5063768a9c8f7d6d5e50453d383637393f4854627283949885725f4c3824100000000000001224334046464e6175899c8c7764503d291501000000000000000000001b30465b70879c8f78634e38230e0000001f344a5f748ba08b745f4a341f0a000011223243536474869696867d9497826b56402b1600001f344a5f748ba08b7463636363636363636363636363636053412e1a05000000000000000000001225384b5e72858b8b7a6754412e1b080000000000000000000a1b2a353b3c3c3c3a312e363c4144464644413c352d241a0e0200000000000000000000000000000009131b22282c2f30302f2d2a251e170e05000000000000000000000000000000000000040c12181c1e1f1f1d1a150f080000000000000000000000000000000000030f1a232c333a3e41434342403c3730281f150a000000000000000000000000000009151f2831383e4244464644413d362f271d1206000000000000000000000000000006121d272f373d4144464644423e3831281f1409000000000000000011233341494a4a4a483f32210f000000000000000000000000000000000000000000000000000000000000001225394c5f728596948372615245382e2622212329323d4a5968798a9c8f7c6a5744311e0a000000000000000000000000000e23384e63788f9c87705b46301b06000000000000000000000000071c3044586c8093978572604f403329232121242b37445465778a9d8f7b67533f2b170300000000000615222c313246596d829594806c5844311d09000000000000000000001b30465b70879c8f78634e38230e0000001f344a5f748ba08b745f4a341f0a000e1e2f3f50617182939989787d9497826b56402b1600001f344a5f748ba08b787878787878787878787878787878715d48331e0800000000000000000000081b2e425568747474705e4b3824110000000000000000000015283947505252524e42414a51565a5b5b5955504940372c20130500000000000000000000000005111c262e363c4144464644423f39332b21170c000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000714202c3640484e535758585755514b443b32271b0f0100000000000000000000000e1b27323b444c52575a5b5b5a56514b433a2f24170a0000000000000000000000000a17242f3a434b51565a5b5b5a57524c443b31261a0d000000000000001a2e41515d5f5f5f5c503e2b1703000000000000000000000000000000000000000000000000000000000005192d4154687b8f9c897765544434271b120d0b0e15202d3b4a5b6d7d919a8874604d3a2612000000000000000000000000000e23384e63788f9c87705b46301b060000000000000000000000000d22364b5f73889c8e7a6754423122160e0c0c10192636475a6d809497836e5a46311d080000000000000510181c2a3e5165798d9c8874604c392511000000000000000000001b30465b70879c8f78634e38230e0000001f344a5f748ba08b745f4a341f0a0a1b2c3c4d5d6e808f9d8c7b6b7d9497826b56402b1600001f344a5f748ba0928f8f8f8f8f8f8f8f8f8f8f8f8f8f89735e48331e0900000000000000000000001326394a595f5f5f5d51412e1b08000000000000000000001c314457646767676050545d656b6f70706e6a645d53493d31231405000000000000000000000916222e39424a5156595b5b5a57534e473e34291e110300000000000000000810141515151410080000000000000000000000000000000000000000000000000000071625323e49535b63686b6e6e6c6a655f584e44392d1f11020000000000000000000f1e2c38444e5860676c6f70706f6b655f564c4135281a0b000000000000000000000b1a2835414c565f666b6f70706f6c6760584e43372b1d0e0000000000001f34495d707474746e5b46311c0700000000000000000000000000000000000000000000000000000000000c2034485d70859892806c59483626170900000000030f1d2d3d4f6174879b907c6955412d19040000000000000000000000000e23384e63788f9c87705b46301b0600000000000000000000000012273b5065798e9b87725f4b382513040000000008182a3d5064788d9e8974604b36220d0000000000000000000e2236495d708598907c6854412d19060000000000000000001b30465b70879c8f78634e38230e0000001f344a5f748ba08b745f4a341f0a182839495a6b7b8c9d90806e687d9497826b56402b1600001f344a5f748ba096939393939393939393939393939389735e48331e090000000000000000000000091b2d3b464a4a4a494133231200000000000000000000001f344a5f747c7c7c6c5b6770798084878684807870665b4f4132231404000000000000000009182734404b555e656a6e70706f6c68625a51473b2f2113040000000000000e1a24292a2a2a29241a0e00000000000000000000000000000000000000000000000007162534424f5b666f777c828384838079736b61564a3d2f201000000000000000000f1e2d3c4956616b747b8284878784807972695f534638291a0a00000000000000000a1a293846535e69727a8084878785827b746b6155493b2c1d0d00000000001f344a5f748b8b88725c47321d07000000000000000000000000000000000000000000000000000000000011263b4f63778c9e8a76624f3c2a1908000000000000000f203244576a7d929985705c48331f0a0000000000000000000000000f23384e63788f9c87705b46301b08000000000000000000000000162b4054697d9396826c58432f1c080000000000000e2135495d72879c8e7964503b2611000000000000000000061a2e4155687c909884705c4935210d0000000000000000001b30465b70879c8f78634e38230e0000001f344a5f748ba08b745f4a341f14253646576778899993827161687d9497826b56402b1600001f344a5f748ba08b7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c725d48331e090000000000000000000000000f1d2a32343434342e23150600000000000000000000001f344a5f748b93836c6c78848d94999b9b99948d83786d5f5142322210000000000000000918273644525d6872798084868786827c766d64594d3f31221201000000000c1d2c373e3f3f3f3e372c1d0c00000000000000000000000000000000000000000000031425344352606d78838b9296979797948f887d74685b4d3e2e1d0c0000000000000b1c2d3c4b5a67737d888f96999b9b99958e867c706456473828170600000000000006172838475664707c868f95999b9b999690887d7366594a3b2b1b0a000000001f344a5f748b9d88725c47321d070000000000000000000000000000000000000000000000000000000000172b4054697d9397836e5a4733200d00000000000000000215283b4f63778b9f8b76624d38240f0000000000000000000000081a2c3e5163788f9c87705c4a382614020000000000000000000000192e43586d8397927c68533e291500000000000000061b2f44596e8398937d68533e29140000000000000000000b1f3246596d8294a08c7864503d29150200000000000000001b30465b70879c8f78634e38230e0000001f344a5f748ba08b745f4a341f21324353647486969786756453687d9497826b56402b1600001f344a5f748ba08b7467676767676767676767676767676456432f1b06000000000000000000000000000c171d1f1f1f1f1a11050000000000000000000000001f344a5f748b98836e7d8a96918a8786888c929c968a7d6f60503f2e1d0a0000000000051627364554626f7a858d949794949597918a82766a5d4f40301f0d0000000016293b495354545453493b2916020000000000000000000000000000000000000000000f2132435261707d8b96938b86828283878d969186796b5c4c3b291805000000000517293a4b5a697885919b948d888787888d95998f827465564635241200000000000012243546566574828e99968e898787888d959b908577685949382716040000001f344a5f748b9d88725c47321d0700000000000000000000000000000000000000000000000000000000001a2f44596e8398927d68543f2b17040000000000000000000c1f33485c70869a907b66513d281300000000000000000000011325374a5c6e80929e8c79675543311f0d00000000000000000000001c31465b70869b8f79644f3a25100000000000000000162b40556a809596826b56412c1700000000000000000014273b4e6275899c9694806c5845311d0900000000000000001b30465b70879c8f78634e38230e0000001f344a5f748ba08b745f4a341f2f3f50617182939a8978685753687d9497826b56402b1600001f344a5f748ba08b745f5252525252525252525252525250473826140000000000000000000000000000000000000000000000000000000000000000000000001f344a5f748b98837d8d90867c75717072778089959c8e7d6e5d4c3a2815020000000011223444546372828d98918983807d80858b9494887b6d5e4e3d2b19060000001d314558676a6a6a675845311d080000000000000000000000000000000000000000081a2d3e506170808f998c8277706c6b6d7279838f978a7a6a594734210e00000000102235465868788896968a80787370707378828b97928474645341301e0b000000000a1d2f4153637384929b8e837a7470707379828d9995877767564533210e0000001f344a5f748b9d88725c47321d0a0d0f0f0f0d0904000000000000000000000000000000000000000000001d32475c72879c8e78644f3a25110000000000000000000004192e42576c829794806a543f2a15000000000000000000000c1e30435567798c9e9a978572604e3c2a1806000000000000000000001e33485d72889d8c77624c37220d000000000000000013283d53687c9398836d58432e190000000000000000091c3043576a7d929083978874604d39251100000000000000001b30465b70879c8f78634e38230e0000001f344a5f748ba08b745f4a342b3c4d5d6e808f9e8d7c6b5a4a53687d9497826b56402b1600001f344a5f748ba08b745f4a3c3c3c3c3c3c3c3c3c3c3c3c3b34291a090000000000000810141515151410080000000000000000000000000000000000000000001f344a5f748b98838a8d807369615c5b5d636c7784939d8c7a695744311e0b000000091c2e405162728291978a7d756d6a686b7077828d998c7c6b5a4836230f0000001f344a5f74808080745f4a341f0a00000000000000000000000000000000000000001124374a5c6e808f998a7a6e645c5756585e66707d8d99887664513e2a1601000006192c3f52647587979486786d645e5b5b5e656e7986959282705f4d3a27140100000014273a4c5e7082929a8b7c70665f5b5b5e656f7a899796857462503d2b180400001f344a5f748b9d88725c47321d1f22242524221e19120a01000000000000000000000000000000000000001f344a5f73899f8c76614c37220d0000000000000000000000152a3f54697d9497826c57422c1700000000000000000005182a3c4e60728597908698907d6b5947352311000000000000000000001f34495e73899f8b74604b36200b000000000000000011263b50667b9199846e59442f1a00000000000000001125384c5f73879a887a8f907c6854412d1906000000000000001b30465b70879c8f78634e38230e0000001f344a5f748ba08b745f4a3439495a6a7b8c9d90806e5e4d3e53687d9497826b56402b1600001f344a5f748ba08b745f4a3427272727272727272727272621170b0000000000000e1a24292a2a2a29241a0e00000000000000000000000000000000000000001f344a5f748b9c8e8d7d6e61564d4746484f5966748595998774614e3b27130000001326394b5d6f80919788786c61595453565b646e7b8b9a8a7765523f2b170200001f344a5f748b958b745f4a341f0a00000000000000000000000000000000000000061a2e415467798c9c8b7a6b5d51484240444a53606e7d908f826d59442f1a0400000d2135495c6f8293978675675a504946464a515c687686978f7c6a5744311d090000081c304356697c8e9d8c7b6c5e534b46464a525d6a79899a92806d5a4734200c00001f344a5f748b9d88725c47322e34373a3a3937332d261d13080000000000000000000000000000000000001f344a5f748ba08b745f4a35200b000000000000000000000013283d52677c9398836c57422c1700000000000000000011233547596b7d9097857a8c9b89766452402e1c0a0000000000000000001f344a5f748ba08b745f4a341f0a000000000000000010263b506579909b866f5a442f1a00000000000000061a2d4154687b8f938073879884705c4935210e000000000000001b30465b70879c8f78634e38230e0000001f344a5f748ba08b745f4a354656677789999383726151403e53687d9497826b56402b1600001f344a5f748ba08b745f4a341f12121212121212121212110d050000000000000c1d2c373e3f3f3f3e372c1d0c000000000000000000000000000000000000001f344a5f748ba093826f5f50443a3230343c48566677899b917d6a56432e1a0600081b2f4255687a8d9b8978695b4f45403e4148515e6c7c8f8d826e59442f1a0500001f344a5f748ba08b745f4a341f0a000000000000000000000000000000000000000e22364a5d70849791806d5c4d3f342d2b2f3742506072807a756b58432e1904000014283c5064788c9e8b796857493d353131353e4a5867788a9a8773604d39251100000f23374b5f72869992806e5d4e4137313136404c5b6b7c8f9d8a7663503b271300001f344a5f748b9d88725c473b42484c4f4f4e4c47413930251a0d00000000000000000000000000000000001f344a5f748ba08b74604b36200b000000000000000000000013283e53687c9398836c57422c1700000000000000000a1c2e40526476899b8c796f829394826f5d4b3927150300000000000000001f344a5f748ba08b745f4a341f0a00000000000000000f253a4f6479909b866f5a442f1a000000000000000f2236495d7084988a766b80938c7864513d2916020000000000001b30465b70879c8f78634e38230e0000001f344a5f748ba08b745f4a435364748596978675645443333e53687d9497826b56402b1600001f344a5f748ba08b745f4a341f17171717171717171717171717130b0100000016293b495354545453493b2916020000000000000000000000000000000000001f344a5f748ba08c7763514132271e1b202a3848596c7d929a86725d4935200c000f23374b5e728598907d6b5a4b3d322b292d34404e5f717d77726957422e190400001f344a5f748ba08b745f4a341f0a0000000000000000000000000000000000000014283d5165798d9b8874614f3e373737373737374356676b66605a4d3b281b0b0000192e42576b809495826e5c4a392c211c1c222c3a4a5b6d8094907c6854402b17020015293e52667a8f9b887462503f30241c1c232e3d4d5f71859893806a56422e1905001f344a5f748b9d88725c474e565d61646463605c554d43372b1e10010000000000000000000000000000001f34495e73899e8c77624d38230e0000000000000000000000162b40556a809496826b56402b1600000000000000031527394b5d6f829493826e6476899b8d7a68564432200e00000000000000001f344a5f748ba08b745f4a341f0a00000000000000000f253a4f6479909b866f5a442f1a00000000000004172b3e5265798d96826e63778c94806c5945311d0a0000000000001b30465b70879c8f78634e38230e0000001f344a5f748ba08b745f4a50607182929a8a7968574736293e53687d9497826b56402b1600001f344a5f748ba08b745f4a342c2c2c2c2c2c2c2c2c2c2c2c2c2c271e110200001d314558676a6a6a675845311d080000000000000000000000000000000000001f344a5f748b9d88725d483423140a050d1a2b3c4e62758a9e8d78634e3a25100014293d52667a8e9a8773604e3d3a3a3a3a3a3a3a42556569635d574b3a2b1d0d00001f344a5f748ba08b745f4a341f0a00000000000000000000000000000000000000192d42576b809594806b584c4c4c4c4c4c4c4c4c4c4c5457514c4c4c4639291704001d32475c70869a8f7a66523e2c1c0e07070f1c2c3e5064788d97836f5a45311c0700192e43586c829694806b58453221120807101f2f4154687c909a86715c47331e09001f344a5f748b9d88725c57616a71767879787670695f55493c2e1f100000000000000000000000000000001c31475c70869b907a65513c281300000000000000000000071b2f44586d8397937d68533e2914000000000000000e20324456687a8d9a887563596b7d8f988673614f3d2b1907000000000000001f344a5f748ba08b745f4a341f0a00000000000000000f253a4f6479909b866f5a442f1a0000000000000c2033475a6d82958d79665c7084978874604d3925120000000000001b30465b70879c8f78634e38230e0000001f344a5f748ba08b745f4d5d6e7d8f9e8d7c6b5b4a3929293e53687d9497826b56402b1600001f344a5f748ba08b745f4a4242424242424242424242424242413b2f200f00001f344a5f74808080745f4a341f0a0000000000000000000000000000000000001f344a5f748b9d88725c47321d070000000d1f33465a6f8498927c68533d281400192e43576c829593806a574f4f4f4f4f4f4f4f4f4f4f52544f4f4f4f483b2b1805001f344a5f748ba08b745f4a341f0a000000000000000000000000000000000000001c31465b70869a8f7965626262626262626262626262626262626261574734200b001f34495e73899e8b76604c37230f000000000e2135495d72889c88735f4a35200b001d32475c71869b8e7965503c2815030000011225394c61758a9f8b75604b36210c001f344a5f748b9d88725c68747d868c8f908f8b857c72675a4c3d2e1d0d0000000000000000000000000000192e43586c829694806b56422e1b070000000000000000000e22364a5e72879c8e79644f3b261100000000000007192b3d4f617386988f7d6a584e6072859691806d5a49362412000000000000001f344a5f748ba08b745f4a341f0a00000000000000000f253a4f6479909b866f5a442f1a00000000000115283c4f63768a9985715e54687c90907c6855412d190600000000001b30465b70879c8f78634e38230e0000001f344a5f748ba08b745f5a6a7b8c9d90806f5e4e3d2c1c293e53687d9497826b56402b1600001f344a5f748ba08b745f575757575757575757575757575757564d3e2d1906001f344a5f748b958b745f4a341f0a0000000000000000000000000000000000001f344a5f748b9d88725c47321d0700000003172c40556a809595806a55402b16001d32475c70869b8f7965646464646464646464646464646464646464594835210c001f344a5f748ba08b745f4a341f0f0f0f0f0f0f0e0b0600000000000000000000001f34495e73899e8c7777777777777777777777777777777777777775634e39240f001f344a5f748b9f89735e49341f0a00000000061b30455a6f869b8c77624c37220d001f344a5f73899f8b75604b36220d00000000091e32475c71879c8d78634e38230e001f344a5f748b9d88726c79869197939193969c988f85776a5b4c3b2a190700000000000000000000000000152a3e53677c909a86725e4a372412000000000000000006192b3e5165798d9c88735f4a36210d000000000000122436485a6d80919684725f4d425567798b9c8a78665442301e0b0000000000001f344a5f748ba08b745f4a341f0a00000000000000000f253a4f6479909b866f5a442f1a00000000000a1d3144586b8093907c69554c6074889885705d4935210e00000000001b30465b70879c8f78634e38230e0000001f344a5f748ba08b745f67778999948372615140301f13293e53687d9497826b56402b1600001f344a5f748ba08b746c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6a5c4935200b001f344a5f748ba08b745f4a341f0a0000000000000000000000000000000000001f344a5f748b9d88725c47321d070000000013293e53687d9497826b56402b16001f34495e73899e8c7979797979797979797979797979797979797977644f3a240f001f344a5f748ba08b745f4a3425252525252525231f1a140b0200000000000000001f344a5f748ba0928d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d79644f3a250f001f344a5f748a9f8b75604b36210d00000000071b30455a6f869b8f78634e38230e001f344a5f748b9f89735e49341f0a00000000041a2f445a6f869b8f79644f3a240f001f344a5f748b9d88727b8a948a837d7c7c8288919c968979695948362412000000000000000000000000001024394d6175899d8d796653412f1e0d00000000000005142436485a6d829595826d5945301c0800000000000b1d2f415366778a9c8b79675442374a5c6e80929583715f4d3b29160500000000001f344a5f748ba08b745f4a341f0a00000000000000000f253a4f6479909b866f5a442f1a00000000001226394d6074889b8875614d45586c80948c7864513d291602000000001b30465b70879c8f78634e38230e0000001f344a5f748ba08b746374859697877565544433221213293e53687d9497826b56402b1600001f344a5f748ba08b838383838383838383838383838383838377624c37220d001f344a5f748ba08b745f4a341f0a0000000000000000000000000000000000001f344a5f748b9d88725c47321d070000000014293f53687d9496826b56402b16001f344a5f748ba0949090909090909090909090909090909090909079644f3a250f001f344a5f748ba08b745f4a3a3a3a3a3a3a3a3a38342f281e1509000000000000001f344a5f748ba0918d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8e9b9079644f3a250f001e33485d72879c8e7965503d2a180a0000061324364a5e73889d9079644f3a250f001f344a5f748b9f8b745f4a35200b00000000061b30465b70869b8f78634e39240f001f344a5f748b9d887a8b8e82776e6967686d74808c999888776653412e1b08000000000000000000000000091e32465a6d82949683705e4c3c2b1d10060000020a152332425365778a9e8d7965513e2a1601000000000416283a4d5f71839592806e5c4a372c3e51637587998f7c6a584634221000000000001f344a5f748ba08b745f4a341f0a00000000000000000f253a4f6479909b866f5a442f1a00000000071b2e4255697c9094806c59453d5064788c94806c5945311e0a000000001b30465b70879c8f78634e38230e0000001f344a5f748ba08b747082929b8a796858473726150513293e53687d9497826b56402b1600001f344a5f748ba09b989898989898989898989898989898988d77624c37220d001f344a5f748ba08b745f4a341f0a0000000000000000000000000000000000001f344a5f748b9d88725c47321d0700000005192e42576c8296947d69543f2a14001f344a5f748ba08f8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b999079644f3a250f001f344a5f748ba08b745f4f4f4f4f4f4f4f4f4f4d49433b31271b0e0000000000001f34495e73899e8b7777777777777777777777777777777782978e78634e39240f001a2f44586d829694806c594736271c1514192331415366798ea28f78634e39240f001e33485e73889d8c77624d392511000000000c2035495e73889d8c77624d38230e001f344a5f748b9d88878d7d70645b54525358616d7b8a9a9583705e4b38241100000000000000000000000003162a3e5164778a9d8e7c6a59493b2e221a1514171d27334150607083959583705d4936220e00000000000f223446586a7c8f99887563513e2c213345586a7c8e9a887563513f2d1b09000000001f344a5f748ba08b745f4a341f0a00000000000000000f253a4f6479909b866f5a442f1a000000001023374a5e7185998c7764503d35495d7085988874614d392612000000001b30465b70879c8f78634e38230e0000001f344a5f748ba08b747d8f9e8e7c6c5b4a3a2919080013293e53687d9497826b56402b1600001f344a5f748b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b77624c37220d001f344a5f748ba08b745f4a341f0a0000000000000000000000000000000000001f344a5f748b9d88725c47342212030000102235485c71869a907a66513c2712001e33485e73889d8b7674747474747474747474747474747482978e78634e39240f001f344a5f748ba08b7464646464646464646464625d574e44392c1e1001000000001c31465b70869a8e7964626262626262626262626262626f84998b75604c37210d00152a3e52667a8e9c8976655445392f2a2a2d35404f5f708396a38d77624d38230e001b30455a6f8499917c6854402d1b0a00000617293c5063778d9d88735e4a35200b001f344a5f748ba0918f7d6e5f52473f3c3e454f5d6c7c8ea08e7a6754402c18040000000000000000000000000e2134475a6d809199887767594b3f352e2a292b313944515f6e7d8f9c8a786653402d1a0600000000091b2d3f51637588998f7c6a5845332116283a4c5e70839593826e5c4a382614020000001f344a5f748ba08b745f4a341f0a00000000000000000f253a4f6479909b866f5a442f1a00000005182c3f5366798d97836f5c48342d4155697c91907c6955412d1a060000001b30465b70879c8f78634e38230e0000001f344a5f748ba08b7b8c9c91806f5f4e3d2d1c0b000013293e53687d9497826b56402b1600001f34495d70747474747474747474747474747474747474747471604b36210c001f344a5f748ba08b745f4a341f0a0000000000000000000000000000000000001f344a5f748b9e8a766452403021150e121e2e3f5164778c9f8a75614c38230e001c31465b70859a8f79655f5f5f5f5f5f5f5f5f5f5f5f5f70859a8a75604b36210c001f344a5f748ba08b797979797979797979797977726a61564a3c2e1f0e00000000192d42576b8094937d6a564c4c4c4c4c4c4c4c4c4c4e61758a9a86705c47331e09000f23374b5e71859794837263564c433f3f4248525e6d7d8e8d9e8b76604b36210c00182c41556a7d939784705c4a38281a100f17243446586b809397836e5a45301c07001f344a5f748ba0958370605041352b2729323f4e5e70839697836f5b47331e0900000000000000000000000005182b3d5062738595968676695d5249433f3e40454c56626f7d8d9c8f7d6d5b4936241100000000021426384a5c6e80939683715f4d3a28160b1d2f415366778a9c8c79675543311f0d0000001f344a5f748ba08b745f4a341f0a00000000000000000f253a4f6479909b866f5a442f1a0000000d2134485b6f83968f7a6753402c26394d6175899885705d4935220e0000001b30465b70879c8f78634e38230e0000001f344a5f748ba08b8999948472625141301f0f00000013293e53687d9497826b56402b1600001a2e41515d5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5e5343301c08001f344a5f748ba08b745f4a341f0a0000000000000000000000000000000000001f344a5f748ba093826f5e4e3f322823262f3c4c5c6e829497836f5b47321e0900182d41566a809394806b574a4a4a4a4a4a4a4a4a4a4f63768a9985705b47321d08001f344a5f748ba094909090909090909090908f8c877d73685a4c3d2c1c0a00000014283c5065798d9a8673604e3d3737373737373747596b7d91927d6a56422d190400081b2e415467798b9b908273685f585454575c646f7c8c88879c88725d48331e090012273b4f63778b9e8c79675646382c24242a3542526375889b8f7b67533f2b1602001f344a5f748b9f8c7865534232231812152130415366798d9f8a76614c38230e000000000000000000000000000e213244566777889795887a6f655d5754535559606973808d9c918270604f3d2b1907000000000d1f31435567798c9d8a78665441301d0b00122436485a6d8091978572604e3c2a180600001f344a5f748ba08b745f4a341f0a00000000000000000f253a4f6479909b866f5a442f1a00000216293d5064778b9a86725f4b38241e3245596d82958d7865513d2a160200001b30465b70879c8f78634e38230e0000001f344a5f748ba099999887766555443323120200000013293e53687d9497826b56402b16000011233341494a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a494235251401001f344a5f748ba08b745f4a341f0a0000000000000000000000000000000000001f344a5f748ba0958d7c6c5d4f443c383a414d5a697a8c9e8e7a6754402c18040013273b5064778c9b8874614f3f34343434343439495a6c8092917d6955412d1804001f344a5f748ba0979494949494949494949494989a9186786a5a4a3928160400000d2136495d708396907d6b5b4c4036312f333b47556576889b8975624e3b27130000001225374a5b6d7d8d9b92867b726d6a696b7077828d8c7b8b98846e5a45301b06000c2034475b6e82949785746455493f39393e4752617082939885725f4c38241000001f344a5f748b9d88725c493624140600031223364a5d72869b907a66513c27120000000000000000000000000003152738495969788795988c8278716c6a686a6e747c86919d90827263534231200e0000000006182a3c4e6072859792806d5b49372412000007192b3d4f61738698907d6b594735231100001f344a5f748ba08b745f4a341f0a00000000000000000f253a4f6479909b866f5a442f1a00000b1e3245596c8093927d6a56432f1c162a3e5165798d95826d5945311e0a00001b30465b70879c8f78634e38230e0000001f344a5f748ba0ac9b8b79695848372616050000000013293e53687d9497826b56402b1600000515232e343434343434343434343434343434343434343434342f25170800001f344a5f748ba08b745f4a341f121212121212121212120f09000000000000001f344a5f748b9d88898b7b6d6157504e4f555e6a7888989583715e4b38241100000c2135485c6f829591806d5d4e42393332363e495767778a9a8874614d3a261200001f344a5f748ba08b7d7d7d7d7d7d7d7d7d7d80848c9797897868574533200d0000061a2d415366798b9b8a796a5d524a4644484e5965738394907d6b5946331f0b000000081a2c3e4f5f6e7d8b97988f8782807d82868c958a7c7c90937d6955402c17020004182b3e5164768899928273665b534e4e52596470808f9d8c7a6855432f1c0800001f344a5f748b9d88725c47321d07000000071a2e43576c8296947d69543f2a140000000000000000000000000000091a2b3b4b5a697684909b958d8682807d8083889099988c8071635445352514020000000011233547596b7d9099877462503e2c19070000000e20324456687a8d9b89766452402e1c0a001f344a5f748ba08b745f4a341f0a00000000000000000f253a4f6479909b866f5a442f1a000013273a4e6175899c8975624e3b27140e22364a5d7186998975614d39261200001b30465b70879c8f78634e38230e0000001f344a5f748ba09e8e7d6c5c4b3a2a1909000000000013293e53687d9497826b56402b1600000005111a1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1b12070000001f344a5f748ba08b745f4a342727272727272727272727241c110300000000001f344a5f748b9d887b8c8c80736b65636469717c89979989776654412e1b08000005192c40526577899a8c7b6c5f544d48474a515b677585968e7c6a5744311e0a00001f344a5f748ba08b746868686868686868686a7079879597867462503d2a16020000112437495b6d7d8f98897b6f655e5b5a5d636b768392938371604e3c291603000000000f203141505f6d79858e959b97949496968e85796e83978c78634f3b26120000000f223547596a7b8c9b9284786e676363666d76828f9e8f7d6e5c4b3826130000001f344a5f748b9d88725c47321d0700000000152a3f54697d9496826b56402b160000000000000000000000000000000d1d2d3c4b5966727d8892999b97949495989d978f857a6e615445362717070000000000192d40526476899b8e7b69574533210e00030503031527394b5d6f82949482705d4c392612001f344a5f748ba08b745f4a341f0a01000000000000010f253a4f6479909b866f5a442f1a00081c2f43566a7d9195826d5a46321f0b071b2e42566a7d92907c6955412e1a06001b30465b70879c8f78634e38230e0000001f344a5f748ba09180705f4e3e2d1c0c00000000000013293e53687d9497826b56402b16000000000000000000000000000000000000000000000000000000000000000000001f344a5f748ba08b745f4a3c3c3c3c3c3c3c3c3c3c3c3c382e211100000000001f344a5f748b9d88727d8c9187807978797d858e99988b7b6b5a4837241200000000102336485a6b7c8d9a8b7d7168615d5c5f656d7885949182705e4d3a28150200001f344a5f748ba08b745f5353535353535353555c6876889992806c5945321e090000071a2c3e4f6070808e998d827973706f72767d8894928474645443311f0c000000000002132332414f5b67717a8287898b8987827a7167768a9985715d4935200c0000000518293b4d5d6d7c8b98968b837c78787b8289949a8e807060503f2d1b090000001f344a5f748b9d88725c47321d070000000013293e53687d9497826b56402b16000000000000000000000000000000000f1e2d3b4855606b757d858a8e9091908d89837b72675c5043362718090000000000001e33485d70828c8c83705e4c3a28160a11181a18120a1c2e40526476898c8c7b6955402c16001f344a5f748b8c8b745f4a341f1516120b01040d141614253a4f64798c8c866f5a442f1a001124384b5f7286998c7865513e2a17030013273a4e62768a9885705d4936220e001b30465b70879c8f78634e38230e0000001f344a5f748b8b847362524130200f0000000000000013293e53687d8b8b826b56402b16000000000000000000000000040c11121212120e07000000000000000000000000001f344a5f748ba08b745f525252525252525252525252524c3f2e1c09000000001f344a5f748b9d88726e7c8994948f8f8f92999c92877a6c5d4d3c2b19070000000006192b3c4d5e6e7d8c988f857c7672727479828a969082726252412f1e0b0000001f344a5f748ba08b745f4a3e3e3e3e3e3e3e404a596a7b8f9c8975614d3824100000000f20314251616f7c8993958e888686878b92978d827365564636251302000000000000041423313e4a545e666c71747474716d665e6b7d92907c6955422e1906000000000c1e2f3f4f5e6c7986919a97918f8f90959b93887c6f615142322110000000001f344a5f748b9d88725c47321d0700000002162b40546a809495806a55402b1600000000000000000000000000000000000f1d2a37434e5861697075787b7b7978746e675f554b3f33261809000000000000001f34495e71767676756553412f1d151e252c2f2d251911233547596b767676776a56412c17001f34495d70767676705d4934242a2b271e131621282b2924394e63747676766c58442f1900192d4054677a8f9884705d4936220e00000b1f33465a6e82968d7965513e2a16001b30465b70878c8c78634e38230e0000001f34495d70747474665544342313020000000000000013283d52667474747468543f2a1500000000000000000000000a17202627272727231a0e0000000000000000000000001f344a5f748ba08b7467676767676767676767676767675d4c38240f000000001f344a5f748b9d88725e6b7682898f9394928e888075695c4e3f2f1e0d0000000000000d1f3040505f6d7a869198908b8888898e95948a7d71635445342312000000001f344a5f748ba08b745f4a342929292929292d3b4c5f72869a907b67523e29140000000314243342515f6b7680888f93959694908b83796f6355473828180700000000000000000413202c37414a525864635f5f5c5852647689998773604d3a2612000000000000112131404e5c68737d868c919393918d8880756a5e514233241403000000001f344a5f748b9d88725c47321d070000000b1e3145596d8397927c68533e29140000000000000000000000000000000000000c1925313b454e555c6063666665635f5a534c42382d21150800000000000000001b2f42536060606060584836241b283239404441372919182a3c4e5c606060625c4d3b2713001a2e41525e6060605e52412e373f403b302427333d403e35334656606060605c4e3d2915001e33485c70838d8d7c6854412d1a0b09050a172b3f52667a8d8d826d59442f1a001b30455a6d76767673614d38230e0000001a2e41515d5f5f5f57483727160500000000000000000e233648585f5f5f5f594a39251100000000000000000000081928343b3c3c3c3c372c1e0d00000000000000000000001f344a5f748ba08b7c7c7c7c7c7c7c7c7c7c7c7c7c7c7b67523c2712000000001f344a5f748b9d88725c59646d75797c7d7c79746c63584b3e3021110000000000000001122232414f5d69747d868c909393918e8882776d60534536271606000000001f344a5f748ba08b745f4a341f13131313131d2f43566b809596826b57412c170000000006152433414e59636c74797d8082807b766f675d514538291a0b00000000000000000000020f1a252f42546576756a5f544e5f7082938f7c695744311d0a000000000000031322303e4b56616a72777b7c7d7b78736c63594d413324150600000000001f344a5f748b9d88725d4833211308020a18283a4d6074889d8d78644f3a2510000000000000000000000000000000000000091d2f3f4b5050504a4b4e5050504e4a4641392f261b1004000000000000000000122535434b4b4b4b4b463a2a192a39454d545a54473726151f303e484b4b4b4c493e2f1e0b00122434424a4b4b4b4a42343f4a53554e41353845505651473d38444b4b4b4b483f30200d001f34495e7277777772604c392521201d191f2123374b5f717777776e5a45301b00162b3e4f5d6060605f5545321e0a00000011233341494a4a4a44392a1a0900000000000000000007192b3a454a4a4a4a463b2d1b09000000000000000000001326374650525252514a3c2b1805000000000000000000001f344a5f748ba09693939393939393939393939393937c67523c2712000000001f344a5f748b9d88725c47515a6065676867645f5850463a2e2012030000000000000000041423313f4b57616a71777b7c7d7c78746d645a4f433627180900000000001f344a5f748ba08b745f4a341f0a0000000013283d52677c9199846e58442f190000000000061523303c4750596065686a6b6a66625b534a4034271a0b000000000000000000000000000b20354a5f7183887c71665c6c7c8e9583715f4d3a271401000000000000000412202d39444e565d6366686867635e5850463b2f2315060000000000001f344a5f748ba08b7663503f31241b171d283646586a7c909a87725e4a35210c0000000000000000000000000000000000001025394c5d6666655c4b444d555c5e5e5b554b3e3021100000000000000000000007172530363636363632291c2135475761686f655544332212202c3436363637352d201101000616242f35363636353344525c666a5f53464956626b645a4f403136363636342d211202001b2f43546162626260544335363636322c343636364253606262625e503e2b1700122434424a5158584e44372715020000000515232e3434343431281b0c00000000000000000000000d1c283134343434322a1d0f00000000000000000000081b2f435563676767665a4835210e000000000000000000001f344a5f748ba0918d8d8d8d8d8d8d8d8d8d8d8d8d8d7c67523c2712000000001f344a5f748b9d88725c473e464c505253524f4b453d33281d1002000000000000000000000413212e3a444e565d6266676867645f5951483d322518090000000000001f344a5f748ba08b745f4a341f0a0000000011263b50667b919a866f5a442f1a00000000000005121e2a3a464b4b5053555654514d4b473c2d22160900000000000000000000000000000b20354a5e707c888f83776d7a8b988876655442301d0a000000000000000000020f1b27313b43494e515857524e4a443c33291e1205000000000000001f344a5f748ba093806e5d4f41372f2c313a46546475879a927d6a57432f1b0600000000000000000000000000000000000013283e53687a7b7a665257606970737370685c4e3f2e1c0a0000000000000000000008141c21212121201d1611263b5064757c84726151402f1f0f191f2121212220190f0200000006121b20212121273b50626f797d7064575a677380776d5e4b36212121211f1910030000132536444c4d4c4c4b44434a4b4b4b463e484b4b4b49434b4c4c4c4a4132210f001a2e41525e656d6b5c4b3a2a19080000000005111a1f1f1f1f1c150a000000000000000000000000000b151c1f1f1f1f1d170c00000000000000000000001023374b5f727c7c7c7764503d2916020000000000000000001f344a5f748ba08b77777777777777777777777777777665513c2712000000001f344a5f748b9d88725c473231373b3c3e3c3a36312920160b00000000000000000000000000031122313d47515650515253524f5552493f34261607000000000000001f344a5f748ba08b745f4a341f0a0202020415293e52677c9298836e58432e19000000000000000e223648586060605f54525e606060594a382410000000000000000000000000000000071b2f42525f6a75828c8a8089998b7a6a59483625120000000000000000000000000a141e272e3d4e5e6c6b635b4e3c2920170c0100000000000000001f344a5f748b9e928c7b6d5f544a4442454c5763718293998875614e3b28140000000000000000000000000000000000000013283d52667b90826f646a737d858989857a6c5d4b3a2714000000000000000000000001080c0c0b0b0b090311273c5165778a91806f5e4d3d2c1b0a0a0b0b0b0d0b0600000000000000070b0b0b13283e53687c8a8f8275686b7885918777634e38230e0b0b0a050000000008182631383837373644545f606060584d5c6060605d4f3e373737362e231404001f34495d70798279695847372615040000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000004182b3f53667a8e9393806c5945311d0a0000000000000000001f344a5f748ba08b746262626262626262626262626261594936220e000000001f344a5f748b9d88725c47321d222627292725221c150d040000000000000000000000000000071b2e404f5a646b61554846535f6a665c524433200c000000000000001f344a5f748ba08b745f4a341f1717171718223245586c829694806a55412c170000000000000011273c516575767672605d7076767667533e291400000000000000000000000000000001122434424d58636f798592988b7b6c5d52473c2c1b08000000000000000000000000081829394a5b6b7c80776b58432e1904000000000000000000001f344a5f748b98838d8b7d71665e58575a60697482909e8d7c6a5845321f0c000000000000000000000000000000000000000f24384d6175888d80797d87908d88898f8b7a6956432f1b07000000000000000000000000000000000000000e2236485a6c7d908d7c6b5a4a3928160400000000000000000000000000000000001125394d5e6b79889386797c89928576685a4834200b00000000000000000009151e23232222364b607276767565576b7676766d5a45302222211b110500001f34495d7082948776655444332211010000000000000000000000080e13171a1b1b1a18140f09020000000000000000000000000000000000000000000c2033475b6f839693998874604d3926120000000000000000001f344a5f748ba08b745f4c4c4c4c4c4c4c4c4c4c4c4c4c473b2b1907000000001f344a5f748b9d88725c47321d0d11121312100d0801000000000000000000000000000000000d21364b5e6c76807266595764707d786e62503b2712000000000000001f344a5f748ba08b745f4a342c2c2c2c2c2d3340506175889c8e7965513c27130000000000000012273c52677c8c8c77625f748b8c806a543f2a15000000000000000000000000000000101f2b36414c5864707d8b988b8f867a6f64594a382410000000000000000000000004152536475768788a917d6c58442f1904000000000000000000001f344a5f748b9883808f8f837a726e6c6f747c86929d8f806f5e4c3b28150200000000000000000000000000000000000000091e3245586b7c8b9390928d837973737c8c86725e4a35210c0000000000000000000000000000000000000006192b3d4f617385978978675746331f0b00000000000000000000000000000000000a1d2f404e5b697786938b8e90827466584b3c2b18050000000000000000000002090d0e0d22374c62778c8c7c67586e848c87705b46301b0d0c07000000001a2e41536576899483726151402f1e0c0000000000000000000a141c23282c2f30302f2d29241d150c020000000000000000000000000000000000000014283b4f63768a96838e907c6955412d1a0600000000000000001f344a5f748ba08b745f4a373737373737373737373737332a1d0d00000000001f344a5f748b9d88725c47321d070000000000000000000000000000000000000000000000000e23384e6377889184776a6875828f8a7c68533e2813000000000000001f344a5f748ba08b745f4a4242424242424246505e6e80929885725e4a36220e0000000000000012273c52677c938d77625f748b95806a543f2a1500000000000000000000000000000b1d2e3d48535e6a75828f94887a7d898d827667533e291400000000000000000000001022324354647586978573614f3d291501000000000000000000001f344a5f748b988370808d968e87838384888f99988d80706151402f1d0b00000000000000000000000000000000000000000215283b4d5e6d798284827970665e5f6f838b78634e39240f00000000000000000000000000000000000000000e2032445567798b8b8674634e39240f0000000000000000000000000000000000001222303d4b596775838b8b80726456483b2d1e0d0000000000000000000000000000000d22374c62778d937c67586e849987705b46301b0600000000000011243547596b7d9090806f5e4d3b28140000000000000006121d272f373d4144464644423e3831281f14090000000000000000000000000000000000081c3043576b80928f7a869885705d4936220e00000000000000001f344a5f748ba08b745f4a3422222222222222222222221f170c0000000000001f344a5f748b9d88725c47321d070000000000000000000000000000000000000000000000000b2034485a69778593897b79869388796c5e4d392511000000000000001f344a5f748ba08b745f57575757575757575a626e7c8c9d8d7b6855422f1b070000000000000012273c52677c938d77625f748b95806a543f2a15000000000000000000000000000013273a4c5b65707b88938f8376696b76828a7867533e29140000000000000000000000182c3f50617183938c7967564432200d00000000000000000000001f344a5f748b97836c6e7a8690979898999c9790867b6e615243332212000000000000000000000000000000000000000000000c1e2f404f5c666c6e6c665d534a5468747473624e39240f0000000000000000000000000000000000000000021426384a5c6e74747473624e39240f00000000000000000000000000000000000004121f2d3b49576573747470615446382a1d0f000000000000000000000000000000000d22374c62778d937c67586e849987705b46301b0600000000000006182a3c4e6072848b8b7c6b57422d180000000000000a17242f3a434b51565a5b5b5a57524c443b31261a0d000000000000000000000000000000001024384c5f73879b87737d928d7965513e2a1603000000000000001f344a5f748ba08b745f4a341f0d0d0d0d0d0d0d0d0d0d0a04020000000000001f344a5f748b8b88725c47321d0700000000000000000000000000000000000000000000000005182b3c4b59677483918d8b938677695c4e402f1d0a000000000000001f344a5f748ba08b746c6c6c6c6c6c6c6c6c6f75808c9b91826f5e4c392613000000000000000012273c52677c8b8b77625f748b8b806a543f2a150000000000000000000000000000172c41566a77838b8b897d7165595964707b6c5b4a37241000000000000000000000001c31465b6e808b8b806e5c4a3826140200000000000000000000001f344a5f748282826c5d69737c8388898988837c73695d50433425150500000000000000000000000000000000000000000000011222313e4a52575857524a41394a595f5f5e5545331f0b000000000000000000000000000000000000000000091b2d3f505c5f5f5f5e5545331f0b00000000000000000000000000000000000000010f1d2b3947555e5f5f5d514436281a0c00000000000000000000000000000000000d22374c62778b8b7c67586e848b87705b46301b06000000000000000d1f31435566747474746a57422d1800000000000b1a2835414c565f666b6f70706f6c6760584e43372b1d0e000000000000000000000000000005192c4053677b8f93806b768a95826d5946321e0a000000000000001f344a5f748ba08b745f4a341f17171717171717171717171717130b000000001f34495d707474746e5b46311c07000000000000000000000000000000000000000000000000000d1e2d3b49576472828b8b837567594c3e30221200000000000000001f344a5f748ba08b83838383838383838383848a929c9082726252402e1c09000000000000000011263b506474747471605d7074747467533e29140000000000000000000000000000172c41556974747474746b60544847525e665e4e3d2c1a0800000000000000000000001c31465b6e7474747262503e2d1b090000000000000000000000001d324659686b6b6b63525660686e727373726e6860564c40332516070000000000000000000000000000000000000000000000000413202d373e4243423e372e2d3b464a4a494337271603000000000000000000000000000000000000000000000f21323f484a4a4a4943372716030000000000000000000000000000000000000000000d1b293743494a4a49413426180a0000000000000000000000000000000000000c21364b607174747464576a7474746d5945301b05000000000000000113253749585f5f5f5f5a4d3b2814000000000a1a293846535e69727a8084878785827b746b6155493b2c1d0d000000000000000000000000000d2034485c6f83978b77636f83968975614e3a2613000000000000001f344a5f748ba08b745f4a342c2c2c2c2c2c2c2c2c2c2c2c2c2c271d100100001a2e41515d5f5f5f5c503e2b170300000000000000000000000000000000000000000000000000000f1d2b39475462707474726557493c2e20120400000000000000001f344a5f748ba09b98989898989898989898999b948a80726354443423110000000000000000000d213547575f5f5f5e53515d5f5f5f5849372410000000000000000000000000000012263a4c5a5f5f5f5f5f594e423635414c504c40311f0e000000000000000000000000172b3e505c5f5f5f5e544533210f00000000000000000000000000172a3b4a545656565145444d54595d5f5e5d59534d433a2e2215070000000000000000000000000000000000000000000000000000030f1a232a2d2e2d29231b1d2a323434343026190a00000000000000000000000000000000000000000000000414222d33343434343026190a00000000000000000000000000000000000000000000000b192630343434342e23160800000000000000000000000000000000000000081c3043535e5f5f5f574d5a5f5f5f5c4f3d2a16020000000000000000081a2b3a454a4a4a4a473d2f1e0b00000006172838475664707c868f95999b9b999690887d7366594a3b2b1b0a00000000000000000000000115283c5063778b97846f5c677a8f917d6956422e1b070000000000001f344a5f748ba08b745f4a4242424242424242424242424242413a2e1f0e000011233341494a4a4a483f32210f000000000000000000000000000000000000000000000000000000000d1b293744525d5f5f5e5547392b1e10020000000000000000001f344a5f748b8b8b8b8b8b8b8b8b8b8b8b8b8a8780776d6154453627160500000000000000000005182a39444a4a4a494241494a4a4a453b2c1a0800000000000000000000000000000a1d2e3c464a4a4a4a4a463c3025232f383b382f2213020000000000000000000000000f21323f484a4a4a494336271604000000000000000000000000000c1d2d393f4040403e3531394045484a4948443f3930271c11040000000000000000000000000000000000000000000000000000000000070f15181918150f070c171d1f1f1f1b1409000000000000000000000000000000000000000000000000000410191e1f1f1f1f1b14090000000000000000000000000000000000000000000000000009141b1f1f1f1f1a110500000000000000000000000000000000000000000114253542494a4a4a443d474a4a4a483e31200e000000000000000000000d1c283134343434322b1f110000000012243546566574828e99968e898787888d959b9085776859493827160400000000000000000000091d3044586b80938f7b68545f73879986715d4a36230f0000000000001f344a5f748ba08b745f575757575757575757575757575757564c3d2b1804000515232e34343434332d22130300000000000000000000000000000000000000000000000000000000000b19273441494a4a494337291b0d00000000000000000000001f34495d707474747474747474747474747474716c645a4f433627180900000000000000000000000c1b2831343434342f2e3434343431291d0e00000000000000000000000000000000101e2a323434343434322a1f13111c2326241d1204000000000000000000000000000313222d33343434342f2518090000000000000000000000000000000f1b252a2b2b2b29221d252b30333434332f2b251d140a0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000817252f34343434312b32343434332c21130200000000000000000000000b151c1f1f1f1f1e180e010000000a1d2f4153637384929b8e837a7470707379828d9995877767564533210e000000000000000000001125384c6073889b8874604c576b80938d7966523e2b170300000000001f344a5f748ba08b746c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6a5b48331f0a000005111a1f1f1f1f1e191004000000000000000000000000000000000000000000000000000000000000000916242e343434342f26190b0000000000000000000000001a2e41515d5f5f5f5f5f5f5f5f5f5f5f5f5f5f5d5851483e32261809000000000000000000000000000a151c1f1f1f1f1b1a1f1f1f1f1d160c0000000000000000000000000000000000000d171d1f1f1f1f1f1d170d0100080e110f09000000000000000000000000000000000410191e1f1f1f1f1b13080000000000000000000000000000000000091115161616140e0911161b1e1f1f1e1b1610090100000000000000000000000000000000000000000000000000000000000000000003090e111415151513100c07000000000000000000000000000000000000000000000000000000000001060b0e0f0f0f0d09040000000000000000000000000000000000000000000000000001080d10131515151513100c0600000000000000000000000000000000000000000007121b1f1f1f1f1c181e1f1f1f1e190f03000000000000000000000000000000000000000000000000000014273a4c5e7082929a8b7c70665f5b5b5e656f7a899796857462503d2b1804000000000000000006192d4054687b8f94806c58445063778b95826d5a46331f0b00000000001f344a5f748ba08b838383838383838383838383838383838376604b36210b00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000006121a1f1f1f1f1b13080000000000000000000000000011233341494a4a4a4a4a4a4a4a4a4a4a4a4a4a48433d352b2014080000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000810171e2326292a2a2a2825211b140d04000000000000000000000000000000000000000000000000050e151b1f23252524221e181006000000000000000000000000000000000000000000050e161c2125282a2a2a2a2825201b140c03000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000081c304356697c8e9d8c7b6c5e534b46464a525d6a79899a92806d5a4734200c00000000000000000d2135495c7084988c7864503d485c6f83978a76624e3b271300000000001f344a5f748ba09b989898989898989898989898989898988c76604b36210b00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000515232e343434343434343434343434343434332e2921180e0300000000000000000000000000000000000000000000000005111a1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1c150b000000000000000000000000000003090d10121212100c06000000000000000000000000000b14181919191712191d1e1d1b1814100a040000000000000000000000000000020a10161a1d1e1f1e1e1b18130c0500000000000000000000000000000000000000000000000000000007111b242b32373b3e3f3f3f3d3a352f2820170d02000000000000000000000000000000000000000000091721292f34383a3a3a37332c23180b000000000000000000000000000000000000020e18212a31363a3d3f3f3f3f3d39352f2820160b0000000000000000000000040c101111111111111111111111111111111111111111110e08000000000000091115161616161616120b00000000000f23374b5f72869992806e5d4e4137313136404c5b6b7c8f9d8a7663503b2713000000000000000215293d5064788c9885705d49354054677b8f927d6a56432f1b08000000001f344a5f748b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b76604b36210b000000000000000000000000000000000000000000000000000000000000020b1116191b1b1a18140f090200040c111313130e07000000000000000000000000000000000005111a1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1e1a140e05000000000000000000000000000000000000000000000000000515232e343434343434343434343434343434343434343431281c0d00000000000000000000000811181d222527272725201a120800000000000000000001111e282d2e2e2e2c252c323332302d29241e180f0700000000000000000000020c151e252a2f3233343333302c2720180f040000000000000000000000000000000000000000000000010d19242e373f464c5053545454524f4a433c332a1f140800000000000000000000000000000000000000061827343d44494d4f4f4f4c473f35291a0b000000000000000000000000000000000714202b343e454b4f5354545454524e49433b33281d110400000000000000000b172025262626262626262626262626262626262626262626231c11040000000f1b252a2b2b2b2b2b2b261e110200000015293e52667a8f9b887462503f30241c1c232e3d4d5f71859893806a56422e19050000000000000a1d3145586c8094907c6855412d384c6073889a86725e4b372310000000001f34495d707474747474747474747474747474747474747474705e4a35200b00000000000000000000000000000000000000000000000000000000000b151e262b2f30302f2d29241d150c172026292928231a0e0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000011233341494a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a453a2b19070000000000000000000c1a242c32373b3c3c3c39352e25190c00000000000000000e1f2f3b4243434341383f47484745423e39332b231a0f040000000000000008141f2932393f4447484a484845413b342b21150900000000000000000000000000000000000000000004111e2b36414a535b6165686a6a6a67645e5850463c3125190c0000000000000000000000000000000000001124364551585d62646464615b5247382917050000000000000000000000000000091825323d4751595f64686a6a6a6967635e574f453b2f221406000000000000091a28343a3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b382f221201000c1d2d393f4040404040403a2f2010000000192e43586c829694806b58453221120807101f2f4154687c909a86715c47331e090000000000001225394d6074889c8975614d39253044586c80948e7a66533f2b18040000001a2e41515d5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5d52422f1b0700000000000000000000000000000000000000000000000000000002101d28323a4044464644423e3831281f2a343b3e3e3d372c1e0d0000000000000000000000000002070b0e0f0f0f0d090500000000000000000000000000000000000000000000000000000000000000020a0e0d09020000001a2e41515d5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f584836230e0000000000000000091a2a3740464c505252514e4941372a1b0c00000000000000182b3d4d575858585549515c5e5c5a57534d473f362c2115080000000000071726313c454d53585c5e5f5e5d5a5650483e3326180a000000000000000000000000000000000000000414222f3c48535d676f757a7d8080807c78726b63594f43372a1c0d0000000000000000000000000000000000172c4053636c7277797979766f64564735220f0000000000000000000000000009182736434f5a646d74797c8080807d7c78726b62584c40322415060000000000142738464f5050505050505050505050505050505050505050504c40301e0b00172a3b4a545656565656554d3e2d1a0600001d32475c71869b8e7965503c2815030000011225394c61758a9f8b75604b36210c0000000000061a2d4155687c9095826d5945311e293d5064778c96836e5b4733200c00000011233341494a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a49413424120000000000000000000000000000000000000000000000000000000111202e3a454e54585b5b5a57524c443b313b474f5353524a3c2b180500000000000000000000080f161c2023252524211e19130c030000000000000000000000000000000000000000000000000000000a151e23231e150900001f34495d707474747474747474747474747474747474747466523d2813000000000000000013263848545b6064676766635d5448392a18060000000000001e32475a6a6e6e6e67565d6f73726f6c67625b52493e3326170800000000122535434e5861686d71737473726f6a635b504436281808000000000000000000000000000000000003132332404d5a66707a838a8f93959594928d8780766c6055483a2b1c0d000000000000000000000000000000001a2f445a6f82878c8f8d8e8a827464513e2a16020000000000000000000000061727364553606c7782888e9294959594918d877d756a5e514233231303000000001c304456636666666666666666666666666666666666666666665e4d3a2611001d324659686b6b6b6b6b6a5c4a36210c00001f344a5f73899f8b75604b36220d00000000091e32475c71879c8d78634e38230e00000000000e2235495d7085988d7965513e2a162135485c7084988a76634f3b28140000000515232e343434343434343434343434343434343434343434342e2416060000000000000000000000000000000000000000000000000000000e1f2f3e4c5861696d70706f6c6760584e444b59636868665a4834200b000000000000000006111b232b3035383a3a3937332e271f170c01000000000000000000000000000000000000000000000006111c2732383831261808001f344a5f748b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b7d68533e29130000000000000000192e4256666f75797c7c7b787166574735230f0000000000001f344a5f748484846f5a5f74898785827c766e665c5043352617070000001b2f4253616b757c8387898989888480776d625446362615030000000000000000000000000000000011213141505e6b77838d979b95918f8f9093979b93897d726558493a2b1b0a000000000000000000000000000000182d4256687b837c787778808d826d5945301b060000000000000000000001132435455463717d8a949c9792908f8f9094999b92887b6f61514231200f000000001f344a5f737b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b69543f2a14001f344a5f74828282828278634e38230e00001f344a5f748b9f89735e49341f0a00000000041a2f445a6f869b8f79644f3a240f0000000002162a3e5165788d9986715d4a36220e192d4154687c90927d6a5743301c0800000005111a1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1a1206000000000000000000000000000000000000000000000000000000081a2c3d4d5c6a757d83868785827b746b61555969767d7d77634e38230e000000000000000c19242e373f454a4d4f4f4e4c48423b33291f13060000000000000000000000000000000000000000030e19242f3a454d4c44362513001e33485e73899e9e9999999999999999999999999999947d68533e291300000000000000001b30465b70838a8f8c8b8b8d847565523e2a160100000000001f344a5f748b99866f5a5f748b9c9996918a82796e6153443525140200001f34495e717d8891979b9b9b9b9d99938b807264544432210e0000000000000000000000000000000d1e2f3f4f5f6e7c89959a9087827b7978797d838a949c9083756758493928170600000000000000000000000000001326394c5e6e6f68646263718788725c47321d07000000000000000000000c1e304253637282909c948a837d7978787b7d858d97998d8070604f3e2c1a080000001f344a5f748b91919191919191919191919191919191919191806a543f2a15001f344a5f748b9797978f78634e38230e00001f344a5f748b9f8b745f4a35200b00000000061b30465b70869b8f78634e39240f000000000a1e3245596d8295927d6956422e1a061125394d6074889a87725f4b382410000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001225384a5b6b7a8891979b9c9a9690887d7366637688938f78634e38230e000000000001101d2a36414a53595f62646463605c564f463c302417080000000000000000000000000000000000000a15202b36414c57616154432f1b001c31475c70869b8f8484848484848484848484848484847d68533e29130000000000000000192d4255687a80797674767d8d826d59442f1a0500000000001f344a5f748b9b866f5a5f748687898e949b968b807162534332200d00001f34495d72869a938d88868686888d969d91837261503d2b18040000000000000000000000000007192b3c4d5d6d7d8c9a94887c736c67646365686f77828d999486766757463523110000000000000000000000000000091c2e4152677c78747272788a86705b46311c070000000000000000000316293b4e5f7082919d8f82776e68656363666a707a86929d8e7d6d5b4a3725120000001f344a5f748ba0969393939393939393939393939393939393806a543f2a15001f344a5f7489898a998f78634e38230e00001e33485e73889d8c77624d392511000000000c2035495e73889d8c77624d38230e0000000012263a4e6175899c8a75624e3a261300091d3145596c80958f7a6753402c18050000000000000000000000000000000000000000000000000000000000000000080f15191b1b1b1916110c0600080e131515120d05000000071b2e415467798a999c928a8787888d94908577687c929d8f78634e38230e0000000001101f2e3b48535d666e737779797876716a62594e423526170800000000000000000000000000000007121d28323d48535e6973725e49341f00192e43586d82978f796e6e6e6e6e6e6e6e6e6e6e6e6e6e6d62503b271200000000000000001226394b5e6d6c66615f61728887705b46301b0600000000001f344a5f748b9b866f5a5b6b707274798088929d908271604f3d2a1704001a2e43566a8088807873706f70737983909e91806d5a4734200c0000000000000000000000000011243648596b7b8c9c9183766a6058524f4e50545b646f7b89989585746452412f1c0a0000000000000000000000010c17212b3a4e6174888987888c897b6956422d190d0100000000000000000c203346596b7d8f9e8e7d70645a53504e4e51555d687483929c8b796754412e1b0800001f344a5f748ba08b7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c69543f2a15001e33485d6f737382978f78634e38230e00001b30455a6f8499917c6854402d1b0a00000617293c5063778d9d88735e4a35200b000000001a2e4255697d9196826e5a46321f0b000216293d5165788d97836f5b4834210c00000000000000000000000000000000000000000000000000000000000009131c242a2e3030302e2b262119111b23282a2a2721180c00000e22364a5e7185979b8c7d7570707378808b9587777d94917d75624d38230e000000000e1f2e3d4c5965707a82888d8f908e8b867d766b60524435261504000000000000000000000000030e19242f3a45505a65707b86745f4a341f00152a3f53687c9094806c5a58585858585858585858585858524433200c0000000000000000091c2e4053687d7b7674747b8c846f5a45301b0600000000001f344a5f748b9b866f5a4e585b5c5f646b75808e9d8f7d6c5a47331f0c0013273b4f6377756b645e5b5a5b5e667180919d8a7663503b2713000000000000000000000000081b2e41536577899a92827265584d443d3a383b4047515d6a7989999382705e4c3927140100000000000000000005121e2a343e474e576a7d8c7b7c7b766b5d4c3d342a1f13060000000000000014283b4f6275889b91806f6052473f3b38393c414a56647385969684715e4a37230f00001f344a5f748ba08b7467676767676767676767676767676767675f4e3b261200192d40515c5e6b82978f78634e38230e0000182c41556a7d939784705c4a38281a100f17243446586b809397836e5a45301c07000000001f34495d71858b8b7a66523e2b170300000e2235495d70858b8b77644f3a251000000000000000000000000000000000000000000000000000000000010f1b2630383e4345464543403b352d242e373d3f3f3c352a1b0a0013283c5165798da18f7d6d615c5b5e646d788694857d948d77625746331f0a0000000a1b2c3d4c5b6a76838d969a95939294999a92897d7062534433221000000000000000000000000b16212b36414c57626d77838e8b745f4a341f001024394d6074889b897766574943434343434343434343433f34261604000000000000000d19242e3b4e6174878c898a8e86786754402c170700000000001f344a5f748b9b866f5a444346474b5058626f7d909c8976634f3b2612000c2034475965625850494644464a536273869993806a56422e190500000000000000000000001124374a5d7083959685736354473b30292523262b34404d5b6a7a8c9e8e7b695643301d090000000000000000071623303c47515a62686d738685736f6b66605950473c302417090000000000071b2f43576b7d92988673615142352b262324272e39465666788b9e8d7a66523e2a1602001f344a5f748ba08b745f525252525252525252525252525252524d41301e0b001122323f47566b82978f78634e38230e000012273b4f63778b9e8c79675646382c24242a3542526375889b8f7b67533f2b1602000000001f34495d70747474705e4b37230f000000061a2d41556874747473634f3a251000000000000000000000000000000000000000000000000000000002111f2c38434c53585a5b5a58544f494137404a525454504739281500182d41566b80949985725f4f474649515b6875869180948d77624c392917040000031628394a5b6a798895998f86807c7c7d848b959b8f827161513f2d1a07000000000000000007121d28333e49535e6974808a959b8b745f4a341f00091d3144576a7d8f958575675a4e4339302e2e2e2e2e2e2e2b22170800000000000002101d2a36414a53596a7c8d7a797873685a4a3c30251709000000001f344a5f748b9b866f5a442f3032363c455160728699927d6955402b170005182a3b48504e453c35312f31364456697c919a86715c48331e090000000000000000000004192c4053677a8d9d8a7867564537291e14100e1118222f3d4c5d6e80929986735f4c3825110000000000000008172533414d59646d767c838788908885827a746c63594e4235271809000000000c21364a5e72879b8f7c695644332418110e0f121b2838495b6e829596826d5945311c08001f344a5f748ba08b745f4a3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3930231301000514222c40566b82978f78634e38230e00000c2034475b6e82949785746455493f39393e4752617082939885725f4c38241000000000001a2e41515d5f5f5f5d52422f1b08000000001226394b595f5f5f5f564634200c00000000000000000000000000000000000000000000000000000010202f3d4a565f676c6f706f6d69645d544a505d666a69645744311c001b30455a6f8599927d6955423230353e4a58677789939c8d77624c37220d0000000d203345576879899894877b726b67676a7077838f9e90806e5c4a36230f000000000000040f19242f3a45505b66707b87929c93897d705d49341f000215283b4e607182929385776b60564c433a31271d191919160f050000000000000111202e3b48535d666d737786867875706a62594e42352718080000001f344a5f748b9b866f5a442f1b1d21283343566a7d9398836e59442f1a00000d1d2b353b3a3328211c1a1c273a4e62768ba08b76614c37220d000000000000000000000b1f33485c6f839793806d5b493828190c0100000005111f2e3f516375889c8f7b6854402c180400000000000616263543515f6b76828a92979b9c9b9c9a958f8880766b6053453627180800000011263b4f64788d9c8873604c39271506000000000a1a2c3e5165798e9d88745f4a36210c001f344a5f748ba08b745f4a342727272727272727272727272727251d120400000004162b40566b82978f78634e38230e000004182b3e5164768899928273665b534e4e52596470808f9d8c7a6855432f1c08000000000011233341494a4a4a494134241200000000000a1c2d3b464a4a4a4a443828170400000000000000000000000000000000000000000000000000000c1d2e3e4d5b68727b82868786837d7870675d5d6e7a807d745f4a341f001e33485d72889c8e78644f3a261b212c3a495a6b7d91a38d77624c37220d000003172a3d5062748697948576695f565252555c6570808f9c8c7966523e2a1500000000000b16212c37414c57626d78838e99978c82766b6052412e1a00000b1e3042536474849296897d72695f564d443a3024180b0000000000000000000e1f2f3e4c5966707a82888c8f928d8a867d756b6053453626160400001f344a5f748b9b866f5a442f1a080d16263b506579909b86705b46301b0000000d192126251f160c07000a1e33485c71879b8f79644f3a25100000000000000000000011253a4e63778b9f8b7763503e2c1a0a0000000000000110213346586c809398846f5b47321e0900000000031424344453616f7c89949c948e89878687898e959c93897d70635445362514020000152a3f54697d9397826d5944301d0a0000000000000f22364a5e73889c8e78644f3a2510001f344a5f748ba08b745f4a341f12121212121212121212121212100a000000000000162b40566b82978f78634e38230e0000000f223547596a7b8c9b9284786e676363666d76828f9e8f7d6e5c4b3826130000000000000515232e34343434342e2416060000000000000f1d2a323434343430271a0b00000000000000000000000000000000000000000000000000000417293b4c5c6b79858f9697949495938c847a6e677a8d958b745f4a341f001f34495e73899f8b75604b36210c0f1c2b3c4e6175899c8d77624c37220d00000b1f3246596c809298877666584c423d3c40485361708288827c6a55402b1600000007121d28333e49545f6974808a959b90857a6f64594e4334241200000113253646566573828e9990867c726960574d4236291c0d000000000000000a1b2c3d4d5c6a77838d969a95939294999a92897d7063544433221000001f344a5f748b9b866f5a442f1a05000f24394e63788f9c87705b46301b00000000060d10100b03000000041a2f44596e8498917b67523c271200000000000000000000162b3f54687d9298846f5b4834210e00000000000000000416293c5063778c9f8a75614c38230e000000000f203242526171808e9a948a807973706f7074798089949b8f827263534332200e0000192e43586d8397927c68533f2a1601000000000000071b3044596e8498927c68533e2914001f344a5f748ba08b745f4a341f0a0a0a0a0a0a0a0a0a0a0905000000000000000000162b40566b82978f78634e38230e0000000518293b4d5d6d7c8b98968b837c78787b8289949a8e807060503f2d1b090000000000000005111a1f1f1f1f1f1a120600000000000000000c171d1f1f1f1f1c14090000000000000000000000000000000000000000000000000000000d203346586a7a8a97948a837d7d808489918c80718296998b745f4a341f001f344a5f748b9f89735e49341f0a000d1f31455a6f869b8d77624c37220d000011263a4e6275899c8e7b6958483a2f28272c3642536677736d675e4e3b271300000d1a25303a45505b66717c87929d94897d73685d52473c3025160600000007182838475663707c8892988f867d73695f53473a2b1c0c0000000000031628394a5b6b7a8895998f86807c7c7d848b959b8f827262513f2d1a07001f344a5f748b9b866f5a442f1a070a15283c51667b9099856f5a442f1a0000000000000000000000000000172c41576b8297947d68533e2914000000000000000000001a2f44596d8397937d6954402c18050000000000000000000d2034485d71869b907a66513c2712000000081a2c3e4f6070808f9d8f82766d655f5b5a5c5f656d76828e9c918271614f3d2a1704001b30465b70869a8f7964503b26110000000000000000172c40566b809595806b56402c16001f344a5f748ba08b745f4a341f1f1f1f1f1f1f1f1f1f1f1e19110500000000000000162b40566b82978f78634e38230e000000000c1e2f3f4f5e6c7986919a97918f8f90959b93887c6f6151423221100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000014283c50637688999183766e69686b6f757d88908282978c7b725e49341f001f344a5f748b9f89735e48331e0900021a2f445a6f869b8d77624c37220d0000172b4054697d929885715e4c3a2a1d13121924374a5a635f59534c40311f0c000b1c2b37424d58626d78838f99988d82776c61564a3f34291e130700000000000a1a293846525e6a757d88929990877c716558493a2a1a08000000000d203345576879899894877b726b67676a7077838f9e90806e5c4a37230f001f344a5f748b9b866f5a442f1c1d1f263344576b809495826c57422d180000000000000000000000000000152b40546a809595806a543f2a15000000000000000000001d32475c71879b8f7964503b261100000000000000000000051a2e43586c8297947d69543f2a150000001325384a5c6d7d8f9d8e7d70645a514a4645474a515964707d8d9c907d6c5a4734200c001e33485d72889d8c77624c38230d000000000000000014283e53687c9398836d58432e18001f344a5f748ba08b745f4a343434343434343434343434332d221404000000000000162b40566b82978f78634e38230e0000000000112131404e5c68737d868c919393918d8880756a5e5142332414030000000000000000000000000000080e13171a1b1b1a18140f0902000000000000000000000000000000010c151a1b1b1b1b160e0300000000000000000000001a2e43576b8093968472655a5453565a616a758390859988726154432f1b001f344a5f748b9f89735e48331e0900001a2f445a6f869b8d77624c37220d00001b3045596e8398927d6955412e1c0c0000071a2c3c484e4b453f392f2213020015283a49545f6a75808b969c91867a6f64594e43382d22170c01000000000000000b1a2835414d57616b757d8891998f837567584837261402000003162a3d5062748697948576695f565252555c6570808f9c8c7966523e2a15001f344a5f748b9b866f5a442f3132343943516173879b8e7a66523d2914000000000000000000000000000014293f53687d9497826b56402b16000000000000000000001f34495e73899f8c76614c37220d0000000000000000000000152a3f54697d9497826b56412c170000091c2f425567798b9c8f7d6f6053473d36313032363d47525f6e7d8f9c8a7663503b2611001e33485e73899f8b75604b36200b000000000000000011273c51667b9199846e59442f1a001f344a5f748ba08b745f4a4a4a4a4a4a4a4a4a4a4a4a4a4840322210000000000000162b40566b82978f78634e38230e0000000000031322303e4b56616a72777b7c7d7b78736c63594d4133241506000000000000000000000000000a141c23282c2f30302f2d29241d150c0200000000000000000000000001111e292f303030302b211304000000000000000000001e33485d71879b8d796655473f3e41464e58657485969d88725c47362513001f344a5f748b9f89735e48331e0900001a2f445a6f869b8d77624c37220d00001e33485d72889c8d77634e3a2612000000000e1e2b343836302a241d120400001c31455866717c88929d958a8073685d52473c31261b1005000000000000000000000a17242f3a454e58616a74808a97948676665543311e0b00000a1e3246596c809298877666584c423d3c40485361708288827c6a55402b16001f344a5f748b9b866f5a44404747494d55616f80919785725f4b37230f000000000000000000000000000013293e53687d9497826c57422c17000000000000000000001f344a5f748ba08b745f4a35200b000000000000000000000013283d52677c9398836c57422c1700001225394c5f728597938270605142352a211c1b1d222a3541506070838b827766513c2712001f344a5f748ba08b745f4a341f0a000000000000000011263b50657a909b866f5a442f1a001f344a5f748ba08b745f5f5f5f5f5f5f5f5f5f5f5f5f5f5d513f2c19040000000000162b40566b82978f78634e38230e0000000000000412202d39444e565d6366686867635e5850463b2f23150600000000000000000000000006121d272f373d4144464644423e3831281f140900000000000000000000000d1f2f3c44464646453e312210000000000000000000001f344a5f748a9c87725d49372b292c323b475667798d9d88725c47321d08001f344a5f748b9f89735e48331e0900001a2f445a6f869b8d77624c37220d00001f344a5f748a9f8b745f4b35200b00000000000d182023211c161009000000001f344a5f74848f999a8e83776d61564b40352a1f14090000000000000000000004111b21232028323b454e57616d798796958472604e3a271300001125394e6175899c8e7b6958483a2f28272c3642536677736d675e4e3b2713001f344a5f748b9b866f5a44525c5c5e616972808e9b8b796755422f1b08000000000000000000000000000013283d52677c9398836c57422c17000000000000000000001f344a5f748ba08b745f4a35200b000000000000000000000013283d52677c9398836c57422c170005192d4155687b8f9b88766453423224180e0702080e17233242536578786e645a4a37230e001f344a5f748ba08b745f4a341f0a00000000000000000f253a4f6479909b866f5a442f1a001f344a5f748ba08b7474747474747474747474747474746f5c47321d080000000000162b40566b82978f78634e38230e00000000000000020f1b27313b43494e515558524e4a443c33291e12050000000000000000000000000a17242f3a434b51565a5b5b5a57524c443b31261a0d00000000000000000000162a3c4d585b5b5b5a4f402d1a060000000000000000001f344a5f748b9b86705b463126201e1f29394a5f748b9d88725c47321d07001f344a5f748b9f89735e48331e0900001a2f445a6f869b8d77624c37220d00001f344a5f748b9f89735e49341f09000000000000080d0f0e08020000000000001f344a5f748b9da5907d72675c51463b3025190f03000000000000000000000414222e3638342b1f28323b444f5b6877899b907d6a56422d190400172b4054687c919885715e4c3a2a1d13121924374a5a635f59534c40311f0c001f344a5f748b9b866f5a4c60707273767c8590978b7c6d5c4a38261300000000000000000000000000000012273c52677c9398836c57422c17000000000000000000001f34495e73899e8c77624c38230e0000000000000000000000152a3f54697d9496826b56412c17000c2034485d708598927d6b594635241406000000000006142436495b67655b51483c2c1a07001f344a5f748ba08b745f4a341f0a00000000000000000f253a4f6479909b866f5a442f1a001f344a5f748ba08f8b8b8b8b8b8b8b8b8b8b8b8b8b8b89735e48331e090000000000162b40566b82978f78634e38230e0000000000000000000a141e273a4c5a62696d615140302920170c010000000000000000000000000b1a2835414c565f666b6f70706f6c6760584e43372b1d0e0000000000000000001b3045596b7070706d5d49341f0a0000000000000000001e33485d72879c8874604f423a353334363a4a5f748b9d88725c47321d07001f344a5f748b9f89735e48331e0900001a2f445a6f869b8d77624c37220d00001f344a5f748a9f8b74604b36210c0000000003111b2225231c161008000000001f34495e72808a959b9085796e63584d42372c21150a000000000000000003132232404b4e483c2d1d1f28323d4a596b7d929a86705c47321d08001b2f44596e8397927d6955412e1c0c0000071a2c3c484e4b453f392f221302001f344a5f748b9b866f5a4e637888888b91958e85796d5e4f3e2d1b0900000000000000000000000000000012273c52677c9398836c57422c17000000000000000000001d32475c71879b8f7965503c271300000000000000000000061a2e43586d8297937d68543f2a140012263b4f63778c9d8975614e3b2917060000000000000006192c3d4b5251493e352b1e0e00001f344a5f748ba08b745f4a341f0a00000000000000000f253a4f6479909b866f5a442f1a001f344a5f748ba099979797979797979797979797979789735e48331e090000000000162b40566b82978f78634e38230e0000000000000000000002172c415569767d806f5e4d3d2c1b0a000000000000000000000000000a1a293846535e69727a8084878785827b746b6155493b2c1d0d00000000000000001d32475c7287878776604b36210b0000000000000000001b2f44586c8093907d6d60554e4b48494b4e535f748b9d88725c47321d07001f344a5f748b9f89735e48331e0900001a2f445a6f869b8d77624c37220d00001e33485d72879c8d78634e3a26130000000112212e373a37312a241b100200001b2f4354626d78838e99978c82756a5f54493e33281c110600000000000111213140505e635a4a3b2d2119202c3c4e63788e9f89745f4a341f0a001e33485d72889c8d77634e3a2612000000000e1e2b343836302a241d120400001f344a5f748b9b866f5a4e63788f9ca08e807972675c4f4031200f0000000000000000000000000000000012273c52677c9398836c57422c17000000000000000000001a2e43586d839794806a56412d1a060000000000000000000d2135495d72879b8f7965503b261100172b4055697d9397826d5a46321f0c0000000000000000000e1f2d383d3d362b22180d0000001f344a5f748ba08b745f4a341f0a00000000000000000f253a4f6479909b866f5a442f1a001f344a5f748ba08b828282828282828282828282828282735e48331e090000000000162b40566b82978f78634e38230e0000000000000000000000172c41566a7c8e8d7c6b5a4a39281707000000000000000000000006172838475664707c868f95999b9b999690887d7366594a3b2b1b0a000000000000001d32475c72889c8c76604b36210b00000000000000000015293d50637587978c7d7269635f5e5e6063686d748b9d88725c47321d07001f344a5f748b9f89735e48331e0900001a2f445a6f869b8d77624c37220d00001a2f44596d8397927d6955422f1d0e04030d1e303f4b4f4b453e382e2010000013253645505b66707c87929d93887c71665b50453a2f23180d020000000b1e2f3f4f5e6e7768594a3e342e2e323e5064798f9f8b745f4a341f0a001f344a5f748a9f8b745f4b35200b00000000000d182023211c161009000000001f344a5f748b9b866f5a4e637887888c938e8476675746342213020000000000000000000000000000000012273c52677c9398836c57422c1700000000000000000000152a3f53687c919985705d49362310000000000000000005172a3d5064788d9d8974604b37220d001a2f44596e8398917c68533f2a1603000000000000000000010f1b24282822190f05000000001f344a5f748ba08b745f4a341f0a00000000000000000f253a4f6479909b866f5a442f1a001f344a5f748ba08b746b6b6b6b6b6b6b6b6b6b6b6b6b6b675845301c070000000000162b40566b82978f78634e38230e000000000000000000000013273a4c5e7082948978675746352513000000000000000000000012243546566574828e99968e898787888d959b908577685949382716040000000000001d32475c72889d8c76604b36210b0000000000000000000d21344658697887948f857d7774737375787c8288919d88725c47321d07001f344a5f748b9f89735e48331e0900001a2f445a6f869b8d77624c37220d0000162b3f54687c919985725f4c3b2c2019181e2b3b4e5d646059534b3e2d1b0800081827333e49535e6974808b969a8f84786d62574c41362b1f1408000013273b4d5d6d7c8777685c51484343464e5c6d80939c87725d48331e09001f344a5f748b9f89735e49341f09000000000000080d0f0e08020000000000001f344a5f748b9b866f5a4b5f6f707277808d95867564513e2b18040000000000000000000000000000000012273c52677c9398836c57422c17000000000000000000001025394e62768a9e8d786552402e1c0c0000000000000312233447596c809496826e5a45311d08001d32475c72879c8d78634e392510000000000000000000000000081013130e060000000000001f344a5f748ba08b745f4a341f0a00000000000000000f253a4f6479909b866f5a442f1a001f344a5f748ba08b745f56565656565656565656565656544a3a2815010000000000162b40566b82978f78634e38230e00000000000000000000000b1d2f41536577899686746453422f1c070000000000000000000a1d2f4153637384929b8e837a7470707379828d9995877767564533210e0000000000001d32475c72889d8c76604b36210b0000000000000000000417293a4b5a6976828a92928d8b89898b8d928f888c9d88725c47321d07001f344a5f748b9f89735e48331e0900001a2f445a6f869b8d77624c37220d00001125394d6175899c8f7c6a594a3d332d2d323b49596a79746d675c4a37230e00000916212b36414c57626d78838f99968b8074695e53483d3226170700172c41566a7b8c9687796d645c58585a616c798a9c94826d58442f1a06001f344a5f748a9f8b74604b36210c0000000003111b2225231c161008000000001f344a5f748b9b866f5a44515a5b5d636e7d8e93826e5b47331f0b0000000000000000000000000000000012273c52677c9398836c57422c17000000000000000000000a1e33475b6e829595826f5d4b3a2a1b0e040000000813213040526476899c8d7a66523e2b1602001f344a5f74899f8b76604b36210c0000000000000000000000000000000000000000000000001f344a5f748ba08b745f4a341f0a00000000000000000f253a4f6479909b866f5a442f1a001f344a5f748ba08b745f4a4040404040404040404040403f382c1c0b000000000000162b40566b82978f78634e38230e00000000000000000000000012243547596b7d8b8b82715f4a35200b00000000000000000014273a4c5e7082929a8b7c70665f5b5b5e656f7a899796857462503d2b180400000000001d32475c72889d8c76604b36210b000000000000000000000b1c2d3c4b58646e767d83878889888683807a748b9d88725c47321d07001f344a5f748b9f89735e48331e0900001a2f445a6f869b8d77624c37220d00000a1e3245596c7d91998877685b4f474242464e5967778889827a65503b2611000000030e19242f3a45505b66717c87929d92877b70655a4f4335251200162c405568778795978b8077716e6d6f757d8a989a897764513d291501001e33485d72879c8d78634e3a26130000000112212e373a37312a241b100200001f344a5f748b9b866f5a443f454648515f7083978b77634e3a25110000000000000000000000000000000012273c52677c9398836c57422c170000000000000000000004172b3f5265788c9e8c7a685848392b20171311141b25313f4e5e6f82939784715e4a37230f00001f344a5f748ba08b745f4a341f0a0000000000000000000000000000000000000000000000001f344a5f748ba08b745f4a341f0a00000000000000000f253a4f6479909b866f5a442f1a001f344a5f748ba08b745f4a342b2b2b2b2b2b2b2b2b2b2b2a251b0e00000000000000162b40566b82978f78634e38230e00000000000000000000000006182a3c4e6070747474705e4a35200b0000000000000000081c304356697c8e9d8c7b6c5e534b46464a525d6a79899a92806d5a4734200c00000000001d32475c72889d8c76604b36210b00000000000000000000000f1e2d3a47515b63696d70727372706e6a65748b9d88725c47321d07001f344a5f748b9f89735e48331e0903021a2f445a6f869b8d77624c37220d00000216293c4f617385969687786d635b57575a616b778595978673614e39240f000000000007121d28333e49545f6a75808b96998d83776c6153422f1b001226394b596876838f99948c8684838589919b988c7c6b5a4835210e00001a2f44596d8397927d6955422f1d0e04030d1e303f4b4f4b453e382e201000001f344a5f748b9b86705b46303030344153687c91927c68533e29140000000000000000000000000000000012273c52677c9398836c57422c1700000000000000000000000f2336495c6e82939887756557493d332c2826292e37424f5d6c7c8d9e8c796754412e1b0800001f344a5f748ba08b75604b36200b0000000000000000000000000000000000000000000000001f344a5f748ba08b745f4a341f0a00000000000000000f253a4f6479909b866f5a442f1a001f344a5f748ba08b745f4a341f161616161616161616161511080000000000000000162b40566b82978f78634e38230e000000000000000000000000000d1f3143525d5f5f5f5d52422f1b0700000000000000000f23374b5f72869992806e5d4e4137313136404c5b6b7c8f9d8a7663503b271300000000001d32475c72889d8c76604b36210b0000000000000000000000031524323b3e474e54585b5c5e5c5b595560768c9d88725c47321d07001f344a5f748b8b89735e48331e1619171a2f445a6f868b8b77624c37220d0000000d2032445667778796978a8076706c6c6f757d8895998a79685644311e0a000000000000000b16212c37414c57626d78838f99958a7d715e49341f000a1c2d3b4a5866717c868e969b99989a9c9790867a6d5e4e3c2b18050000162b3f54687c919985725f4c3b2c2019181e2b3b4e5d646059534b3e2d1b08001f344a5f748a9d88725e4935211b253a4f64799096826b56402b160100000000000000000000000000000012273c52677c9398836c57422c17000000000000000000000006192c3f5163758697948474675a5046403d3b3e424a54606d7b8b9b91806e5c4a3725120000001e33485e73899e8d77624d38230e000000000000000000000000060b0d0a04000000000000001f344a5f748ba08b745f4a341f0a00000000000000000f253a4f6479909b866f5a442f1a001f344a5f748ba08b745f4a341f131313131313131313131313130f08000000000000162b40566b82978f78634e38230e000000000000000000000000000113253441494a4a4a494134241200000000000000000015293e52667a8f9b887462503f30241c1c232e3d4d5f71859893806a56422e1905000000001d32475c72889d8c76604b36210b00000000000000000000000e2032424e534e4340444647484746445064798e9a866f5a45301b06001f34495d707474746f5c4732232a2e2c262e43586b74747471604b36210c000000021527384959697785929c928a8683838589919b95897a6b5c4a392715020000000000000000040f19242f3a45505b66717c88929c8b745f4a341f00000f1d2c3b48545f69727a8286898b8987837c73695d4f40301f0d0000001125394d6175899c8f7c6a594a3d332d2d323b49596a79746d675c4a37230e001d32475c71879b8d7864503e302b2f3d51667b9097826b56402b160100000000000000000000000000000012273c52677c9398836c57422c170000000000000000000000000f22344657687989999385786d625b55525053575d66717d8b9a93837261513f2d1b080000001c31465b70869a907b66513d281400000000000000000000020f1920221f180d0200000000001f344a5f748ba08b745f4a341f0a00000000000000000f253a4f6479909b866f5a442f1a001f344a5f748ba08b745f4a342929292929292929292929292928241b0e0000000000162b40566b82978f78634e38230e00000000000000000000000000000716242e34343434342e241606000000000000000000192e43586c829694806b58453221120807101f2f4154687c909a86715c47331e09000000001d32475c72889d8c76604b36210b0000000000000000000005172a3d50606860554a41393333323947586b809395806b57422d1803001a2e41515d5f5f5f5d513f2f373e4341392c3c4e5b5f5f5f5e5343301c0800000000091a2b3b4b596774808992989a9898999a958d83776b5c4d3e2d1b0a000000000000000000000007121d28333e49545f6a75808b8b745f4a341f0000000e1d2a36424d565f666c70737473726d6860574b3f312212010000000a1e3245596c7d91998877685b4f474242464e5967778889827a65503b2611001a2e43586c809593806d5c4d4340444c5b6d8295937d69543f2a150000000000000000000000000000000012273c52677c9398836c57422c17000000000000000000000000051728394a5b6b7a8997968a80766f6a6766686b7179848f9c92847465554433211000000000192e42576c829695806b57432f1b0800000000000000000111202d3537332b1f1409000000001f344a5f748ba08b745f4a341f0a00000000000000000f253a4f6479909b866f5a442f1a001f344a5f748ba08b745f4a3e3e3e3e3e3e3e3e3e3e3e3e3e3e3d372c1e0d00000000162b40566b82978f78634e38230e00000000000000000000000000000006121a1f1f1f1f1f1a1206000000000000000000001d32475c71869b8e7965503c2815030000011225394c61758a9f8b75604b36210c000000001d32475c72889d8c76604b36210b000000000000000000000e2134475a6c7d72675d544d4846474c566475889b8d7965513d2814000011233341494a4a4a484036434b5258554a3a303e474a4a4a49423525140100000000000d1d2d3b4956626c767d848889898886807970665a4d3e2f200f00000000000000000000000000000b16212c37414c58636d7884745f4a341f000000000c1925303a434b52585c5e5f5e5c59544d443a2e211304000000000216293c4f617385969687786d635b57575a616b778595978673614e39240f0014293d5164788c9d8b7a6b5f5856585f6a798a9d8c7864503b26120000000000000000000000000000000012273c52677c9398836c57422c17000000000000000000000000000b1c2d3d4d5c6b7986929c928a84807c7b7c82868d969a8e8273655647372615040000000015293e52677b909a86725e4b37251201000000000000000c1e2f3e494c473d31261b0d0000001f344a5f748ba08b745f4a341f0a00000000000000000f253a4f6479909b866f5a442f1a001f344a5f748ba08b745f535353535353535353535353535353524a3c2b1804000000162b40566b82978f78634e38230e0000000000000000000000000000000000000000000000000000000000000000000000001f344a5f73899f8b75604b36220d00000000091e32475c71879c8d78634e38230e000000001d32475c72889d8c76604b36210b0000000000000000000014293d5164768a857a7068615d5b5c60687483939583705d4a36220e00000515232e34343434333144545f666d685847372b33343434342f251708000000000000000f1d2c3845505962696e72737473706b655d53483c2f201102000000000000000000000000000000040f19242f3a45505b6671705d49341f000000000007131d272f373e4347484a4947443f3931271c10030000000000000d2032445667778796978a8076706c6c6f757d8895998a79685644311e0a000e2235495c6e809198897c726d6b6d727b88979482705d4935210d0000000000000000000000000000000012273c52677c9398836c57422c1700000000000000000000000000000f1f2f3e4d5b6874808a949c9894929193969a9991887c706356473829190800000000000f24384c6075899c8e7a675442301f0f0100000000000717293b4d5c625a4f43382b1b0900001f344a5f748ba08b745f4a341f0a00000000000000000f253a4f6479909b866f5a442f1a001f344a5f748ba08b7468686868686868686868686868686868675a47331f0a00000d192b40566b82978f78634e38230e000000000000000000000000080e13171a1b1b1a18140f090200000000000000000000001f344a5f748b9f89735e49341f0a00000000041a2f445a6f869b8f79644f3a240f000000001d32475c72889d8c76604b36210b00000000000000000000162b40566b808c968d847c76727070747b86929788776653412e1b0700000005111a1f1f1f1f23384c61727a827665554433221f1f1f1f1b12070000000000000000000e1b27333d464e55595d5e5f5e5b57514a40362b1e110200000000000000000000000000000000000007121d28333e49545d5d51412e1a000000000000000a141b23292e32333434322f2b251d140a0000000000000000021527384959697785929c928a8683838589919b95897a6b5c4a392715020006192c3e51627383919a8f87838283878f999486756453402d1a060000000000000000000000000000000012273c52677c9398836c57422c1700000000000000000000000000000111202f3d4a57636d7780888d91939493908b867d746a5e524538291a0b000000000000091d3145596d82949784715f4e3d2d1f130a0504070d17253546586b776c61564939261300001f344a5f748b8f8b745f4a341f0b0b0b0b06080b0b0b0f253a4f64798f8f866f5a442f1a001f344a5f748ba08b7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d77624c37220d000b1c2b3640566b82978f78634e38230e000000000000000000000a141c23282c2f30302f2d29241d150c020000000000000000001f344a5f748b9f8b745f4a35200b00000000061b30465b70869b8f78634e39240f000000001d32475c72889d8c76604b36210b0000000000000000000014283d50616e79848d96908b8886878a8f9892867869594836241100000000000006090a0a0e23384d6174869483726151402f1f0e0a0a060000000000000000000000000a16202a333a404548494a4846423d362d24190d000000000000000000000000000000000000000000000b16212c3741494941332311000000000000000000080f15191d1e1f1f1d1a1611090100000000000000000000091a2b3b4b596774808992989a9898999a958d83776b5c4d3e2d1b0a0000000f213345556473808c959b9897989b958d8375675847352311000000000000000000000000000000000012273c52677c9398836c57422c1700000000000000000000000000000002111f2c3945515a646c72777b7d7d7c7a76716a61574d4135281a0b0000000000000002162a3e5164778a9c8f7c6b5b4b3d30261e1a191c212a3543526375887d736756422d1803001f34495e72787878725e49341f212121201b1c2021212024394e63767878786d59442f1a001f344a5f748ba097949494949494949494949494949494948d77624c37220d0015283a4852566b82978f78634e38230e000000000000000006121d272f373d4144464644423e3831281f140900000000000000001e33485e73889d8c77624d392511000000000c2035495e73889d8c77624d38230e000000001d32475c72889d8c76604b36210b000000000000000000000d213343515c67707982888e919393918d878074685a4b3b2b1907000000000000000000000a1e324556687a8d90806f5e4d3c2c1b08000000000000000000000000000000030d171f262c3033343433312d28221a1107000000000000000000000000000000000000000000000000040f1a252e34342e231505000000000000000000000000000000000000000000000000000000000000000000000d1d2d3b4956626c767d848889898886807970665a4d3e2f200f00000000041627374655626e788086898b8a878279706558493a291806000000000000000000000000000000000012273c52677c8b8b836c57422c1700000000000000000000000000000000010e1b28333e4750585e636668686766625d564e443a2f24170a0000000000000000000e2134475a6d80919b8a79695b4e4339332f2e31353d47536170829390836f5a442f1a05001b2f4354616363636154432f33363636352e303536363632344758626363635e503e2a16001f344a5f748b8f8f8f8f8f8f8f8f8f8f8f8f8f8f8f8f8f8f8d77624c37220d001c31455866686b82978f78634e38230e000000000000000a17242f3a434b51565a5b5b5a57524c443b31261a0d000000000000001b30455a6f8499917c6854402d1b0a00000617293c5063778d9d88735e4a35200b000000001d32475c72889d8c76604b36210b05020000000000000000041525333f4a545d666d74787b7d7c7b78726b62574a3c2d1d0d0000000000000000000000021527394b5d6f82938d7c6b5a4a3824100000000000000000000000000000000000030b11171b1e1f1f1e1c19140e060000000000000000000000000000000000000000000000000000000007121a1f1f1a110500000000000000000000000000000000060b0e0f0f0e0b060000000000000000000000000f1d2c3845505962696e72737473706b655d53483c2f20110200000000000919283745515c646c71747474716d665d53473a2b1c0b00000000000000000000000000000000000011263b5064747474746955412c170000000000000000000000000000000000000a16212b35424a4b4e51535352504d4b494031281e12060000000000000000000005182b3d4f617384949788796c60554d474443464a50596471808f9c8b796653402b170200132536444c4e4e4e4c44363c474b4b4b4a41434a4b4b4b463a3a474d4e4e4e4b4132210e001f34495e72787878787878787878787878787878787878787874614c37220c001f344a5f747d7d82978f78634e38230e0000000000000b1a2835414c565f666b6f70706f6c6760584e43372b1d0e000000000000182c41556a7d939784705c4a38281a100f17243446586b809397836e5a45301c070000010d1d32475c72889d8c76604b36211a1a160f04000000000000000715212d37414a52595f6467686866635e574f45392c1e0f000000000000000000000000000a1c2e40526475888b897867533e29140000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000a131a20232525231f1b140e06000000000000000000000e1b27333d464e55595d5e5f5e5b57514a40362b1e1102000000000000000a1927333e4951575c5f5f5f5c58524a4036291c0d000000000000000000000000000000000000000d213547575f5f5f5f5a4c3a261200000000000000000000000000000000000000071c2f42535f606060594d5c6060605d4f3e2b16020000000000000000000000000e2032445566768695988a7d7269615c5a585b5e646c76828f9e8f7d6d5b49372410000008182631383838383831394b5a6060605e51545f6060605848363338383838372f231404001b2f4354616363636363636363636363636363636363636363625645321e09001f344a5f748b94949f8f78634e38230e00000000000a1a293846535e69727a8084878785827b746b6155493b2c1d0d000000000012273b4f63778b9e8c79675646382c24242a3542526375889b8f7b67533f2b16020002121f2932475c72889d8c76604b362f2f2f2b22150600000000000000040f1a26343f4953554f52535351505651473d31221100000000000000000000000000000010223446586a7474747467533e2914000000000000000000000000000000000000080f15191b1b1b1916110c0600080e131515120d0500000000000000000000080f131719191815120d07000002090f1111100c0500000000000000000002101c262e35383a3a38342f2921190f040000000000000000000a16202a333a404548494a4846423d362d24190d000000000000000000000916222c353d43474a4a4a47433e372d23180b000000000000000000000000000000000000000005182a39444a4a4a4a463c2e1d0a000000000000000000000000000000000000000b20354a5f7176767566576b7676766d5a45301b06000000000000000000000000031426374858677685929b90857c76716f6e7073788089949c8f8070604f3e2c1a0700000009151e23232323232b4054697676766f5c607276767565513c2723232323221c12050000132536444c4e4e4e4e4e4e4e4e4e4e4e4e4e4e4e4e4e4e4e4e4d4538281502001f344a5f748b8b8b8b8b78634e38230e0000000006172838475664707c868f95999b9b999690887d7366594a3b2b1b0a000000000c2034475b6e82949785746455493f39393e4752617082939885725f4c38241000000f20303c43475c72889d8c76604b444444443e33241301000000000000000c203344525c666a5f52454955626b63594f402e1b0700000000000000000000000000000517293b4d5a5f5f5f5f58493724100000000000000000000000000000000009131c242a2e3030302e2b262119111b23282a2a2721180c0000000000000009131c23282c2e2e2d2a26211b130a151e2426262520180c000000000000000212202e3942494d4f4f4d49433d352c211404000000000000000000030d171f262c3033343433312d28221a1107000000000000000000000000040f1922292e32343434322f29231a1106000000000000000000000000000000000000000000000c1b283134343434322a1e1000000000000000000000000000000000000000000b21364b60768c8c7d68586e848c87705b46301b0600000000000000000000000000091a2a3a49586774828d9898918b87848486888d939c968b7d7061524232210f000000000002090d0e0e0e162b40566b828c89735e62778c8c7c67523c27120e0e0e0d080000000008182631383838383e4f5d6060605c4d586060605f544438383832281a0a00001f34495d70747474747472614c38230d0000000012243546566574828e99968e898787888d959b9085776859493827160400000004182b3e5164768899928273665b534e4e52596470808f9d8c7a6855432f1c080000182b3e4e585a5c72889d8c76605a5a5a5a595142301d090000000000000012273b50626f797c7063565a667380766c5e4b36210d0000000000000000000000000000000c1e2f3d474a4a4a4a453b2c1a080000000000000000000000000000010f1b2630383e4345464543403b352d242e373d3f3f3c352a1b0a00000000000e1b2630373d414343423f3b362e261d2831383b3b3a342a1c0c0000000000000f20303e4b565d636464625d5851493f32210f0000000000000000000000030b11171b1e1f1f1e1c19140e0600000000000000000000000000000000060e14191d1f1f1f1d1a150f07000000000000000000000000000000000000000000000000000a151c1f1f1f1f1d170d0000000000000000000000000000000000000000000b21364b60768c947d68586e849987705b46301b0600000000000000000000000000000c1c2b3a4956636f7a858d94999c99999b9d99948d84796d605243342514030000000000000000000000162b40566b829789735e62778d937c67523c27120000000000000000000009151e23232330455a6d7676766b576575767672604b3623231e160a0000001a2e41515d5f5f5f5f5f5e5444311e090000000a1d2f4153637384929b8e837a7470707379828d9995877767564533210e000000000f223547596a7b8c9b9284786e676363666d76828f9e8f7d6e5c4b3826130000001e33475b6b6f6f72889d8c766f6f6f6f6f6e604c38230e0000000000000013283e53687c8a8e8274686b7785918777634e38230e00000000000000000000000000000000111f2b323434343431291d0e000000000000000000000000000002111f2c38434c53585a5b5a58544f494137404a5254545047392815000000000f1e2c38434b525658585754504a42392f39444d50504f473a29170400000000071a2c3d4e5c687277797977726c645c503f2c1800000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000b21364b60768c947d68586e849987705b46301b060000000000000000000000000000000d1c2b3946525d6771798085888b8b8a8885807870665c4f4234251607000000000000000000000000162b40566b829789735e62778d937c67523c2712000000000000000000000002090d0e1b30465b70878c846e58677c8c8c77624c37220e0a030000000011233341494a4a4a4a4a49433626150200000014273a4c5e7082929a8b7c70665f5b5b5e656f7a899796857462503d2b18040000000518293b4d5d6d7c8b98968b837c78787b8289949a8e807060503f2d1b090000001f344a5f748686868a9e8d86868686868679644f3a250f000000000000001125394d5e6c7a889286797c89938576695a4834200b00000000000000000000000000000000010e181e1f1f1f1f1d160c00000000000000000000000000000010202f3d4a565f676c6f706f6d69645d544a505d666a69645744311c0000000d1e2d3c4a555f666b6d6e6c69645d564c414957616666635847331f0b000000001024374a5b6c7a868d908f8c8780786e5b47321d00000000000000000004090d0f0f0f0d0a060100000003070909060200000000000000000000020b1116191b1b1a18140f090200040c111313130e0700000000000002090d0e0a0200000000000000000000000000000000000000000000000000000000000000000000000000000b21364b60768b8b7d68586e848b87705b46301b06000000000000000000000000000000000d1b2834404b545d656b6f72747474726f6a645d544a3e3225160700000000000000000000000000162b40566b828b89735e62778b8b7c67523c27120000000000000000000000000000001b30465b708799846e58677c938d77624c37220d0000000000000515232e343434343434342f251809000000081c304356697c8e9d8c7b6c5e534b46464a525d6a79899a92806d5a4734200c000000000c1e2f3f4f5e6c7986919a97918f8f90959b93887c6f615142322110000000001f344a5f748b979798a59a97979797979079644f3a250f000000000000000a1d2f404e5c6a7786948a8d90837466594b3c2b180500000000000000000000000000000000000000000000000000000000000000000000000000000000000c1d2e3e4d5b68727b82868786837d7870675d5d6e7a807d745f4a341f000007192b3c4b5a67727a808384837d7972695e535767747b7b76624d38230e00000000172b3f5366798a98a0979495989486715d48331e000000000000000811181e22242524221f1b150e0610171c1e1e1b160e02000000000000000b151e262b2f30302f2d29241d150c172026292928231a0e0000000009151e23231e150a000000000000000000000000000000000000000000000000000000000000000000000000000b20354a5e7074747466576a7474746d5945301b0500000000000000000000000000000000000a17222e38414950565a5d5f5f5f5d5a56504941372c2114070000000000000000000000000000152a3f54687474746f5c607174747464503b26110000000000000000000000000000001b30465b708799846e58677c938d77624c37220d0000000000000005111a1f1f1f1f1f1f1f1b1308000000000f23374b5f72869992806e5d4e4137313136404c5b6b7c8f9d8a7663503b27130000000000112131404e5c68737d868c919393918d8880756a5e514233241403000000001f344a5f74828282889d8c82828282828279644f3a250f00000000000000001222303e4c5a6775848b8b80726456493b2d1e0d0000000000000000000000000000000000060d121618191816130f090300050c101212100b030000000417293b4c5c6b79858f9697949495938c847a6e677a8d958b745f4a341f000011243648596978858f95989997938d867b7064617586908f78634e38230e000000001b30455a6e83969d8e837d80848c7d6a56422e19000000000005111b252c3337393a3937342f29221a232b313333302a2013030000000002101d28323a4044464644423e3831281f2a343b3e3e3d372c1e0d000008182631383832271c11060000000000000000000000000000000000000000000000000000000000000000000000071b2f42525d5f5f5f584d5a5f5f5f5c4f3d2a160200000000000000000000000000000000000005111b252e363c4145484a4a4a4845413c352d241a0f030000000000000000000000000000001125394a595f5f5f5d51535e5f5f5f574735210d0000000000000000000000000000001b30465b70878b846e58677c8b8b77624c37220d00000000000000000000000000000000000000000000000015293e52667a8f9b887462503f30241c1c232e3d4d5f71859893806a56422e190500000000031322303e4b56616a72777b7c7d7b78736c63594d413324150600000000001d324659686b6b72889d8c766b6b6b6b6b6a5d4b37220d00000000000000000412202e3c4a586573747470625446382b1d0f0000000000000000000000000000000007111a21272b2d2e2d2c28241e170f1820252727251f160a00000d203346586a7a8a97948a837d7d808489918c80718296998b745f4a341f00061a2d4053667788979e948d89898b8f968e8275687c919e8f78634e38230e000000001d32475c72889c928070696a6f7777634f3b2713000000000816232e3840474c4e4f4e4c49443e362d363f464848453d31210f0000000111202e3a454e54585b5b5a57524c443b313b474f5353524a3c2b180500132536444c4d45392e24190e030000000000000000000000000000000000000000000000000000000000000000000012243441494a4a4a453d474a4a4a483e31200e00000000000000000000000000000000000000000008121a21282d313334343433302d27211a11080000000000000000000000000000000000091b2d3b464a4a4a484042494a4a4a44392a18050000000000000000000000000000001b3045596d7474746a576474747471604b36210c000000000000000001080c0d0d0d0d0d0a04000000000000192e43586c829694806b58453221120807101f2f4154687c909a86715c47331e0900000000000415243139444e565d6366686867635e5850463b2f231506000000000000172a3b4a54565c72879c8c766156565656554e3f2e1b0800000000000000000002101e2c3a47555e5f5f5d524436281b0d000000000000000000000000000000000d19242d353c40434343403d38322b222b343a3c3c39332719090014283c50637688999183766e69686b6f757d88908282978c7b725e49341f000d2135495d7083959d8e82777373757b838d9385757d94928077634d38230e000000001d32475c72889d8c766254555c65675a4834200c00000008172634404b545b61636463615d5851494047535b5e5d594f3e2c190000000e1f2f3e4c5861696d70706f6c6760584e444b59636868665a4834200b001b2f43546161564c41362b20150a0000000000000000000000000000000000000000000000000000000000000000000616242e34343434312b32343434332c2113020000000000000000000000000000000000000000000000060d13181c1e1f1f1f1e1b18130d0600000000000000000000000000000000000000000f1d2a32343434332d2f3434343431281b0c00000000000000000000000000000000162a3d4f5c5f5f5f5a4d575f5f5f5e5343301c080000000000000008141c2122222222221f170d00000000001d32475c71869b8e7965503c2815030000011225394c61758a9f8b75604b36210c00000000000e2133424d505050494e515353524e4a453f362a1e1205000000000000000c1d2d393f455a6f85998f796550404040403f3c33251504000000000000000000000e1c2a3743494a4a49413426180a000000000000000000000000000000000f1d2a364049505558585856524d463e353d484f52524e45372614001a2e43576b8093968472655a5453565a616a758390859988726154432f1b0013273c5064788da090806f645e5e60676f7a8894837d948d7765594734200b000000001d32475c72889d8c76604b404851524a3c2b180500000516263544525d67707678797876726d655c5256656f73726d5c48331e0000081a2c3d4d5c6a757d83868785827b746b61555969767d7d77634e38230e001f34495e7273695e53483d32271d1207000000000000000000000000000000000000000000000000000000000000000006121a1f1f1f1f1c181e1f1f1f1e190f030000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000c171d1f1f1f1e191b1f1f1f1f1c150a00000000000000000000000000000000000e20313e484a4a4a473d444a4a4a49423525140100000000000007172530363737373737332a1e10000000001f344a5f73899f8b75604b36220d00000000091e32475c71879c8d78634e38230e0000000000152a3e51606666645846464f575c5e5e5a52483b2c1d0c00000000000000000f1b252d42576b829593806a574540455054504333210e00000000000000000000000c1a2630343434342e231608000000000000000000000000000000000f1e2d3b48535d646a6c6e6c6b66615a51484e5b636767625543301b001e33485d71879b8d796655473f3e41464e58657485969d88725c4736251300172c41556a80949a8673615149484c535d6a7788907d948d77624c3b2a1805000000001d32475c72889d8c76604b36363d3d372c1e0d0000001122344453626f7a848b8f908f8c8782796f646274838988745f4a341f00001225384a5b6b7a8891979b9c9a9690887d7366637688938f78634e38230e001f344a5f74867b70655a4f443a2f24190e0300000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000030f171c1d1d1d1a140a0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000213212c33343434322b31343434342f25170800000000000000122535434b4c4c4c4c4c473c2e1e0c0000001f344a5f748b9f89735e49341f0a00000000041a2f445a6f869b8f79644f3a240f0000000000182e43586d7b7b76625059626a7173736e65594a3b2a180500000000000000000914293d52667a8f9a877463585659626a61503d2a1602000000000000000000000009141b1f1f1f1f1a1105000000000000000000000000000000000a1c2d3c4b5966707880838483807b756e645a5c6c777c7b735e49341f001f344a5f748a9c87725d49372b292c323b475667798d9d88725c47321d08001b30455a6f8499937d6a5643353338404c5a69798b909a8d77624c37220d00000000001d32475c72889d8c76604b36222828241b0e000000081b2e40526271828d98958e8b8b8c8f958c8276697d929e8b745f4a341f00071b2e415467798a999c928a8787888d94908577687c929d8f78634e38230e001f344a5f748b8d83776d61574c41362b20150b0000000000000000000000000000000000000000070e1313131313100900000000000000000000000000000000081013131313130e070000000000000000050c10111111100c040000000000000413212b313232322f271b0d00000000000000000000000000050c1114171919191917140f0a04000000000000000000000000000000000000000000000000030f191e1f1f1f1e181c1f1f1f1f1b120700000000000000001b2f42536062626262615a4c3c29160200001f344a5f748b9f8b745f4a35200b00000000061b30465b70869b8f78634e39240f0000000000182d41576b82907c6b646c757d868988827668594735220f0000000000000000000f23374b5f7386999282746c6b6e75806c5945321e0b000000000000000000000000000000000000000000000000000000000000000000000000021528394a5a6977838d9498979795908a82776c66798a928b745f4a341f001f344a5f748b9b86705b463126201e1f29394a5f748b9d88725c47321d07001d32475c72879c8e79644f3b271e242e3c4b5c6d8092a38d77624c37220d00000000001d32475c72889d8c76604b362113130f08000000001024374a5d6f82909a8d82797574767a808892877982979287745f4a341f000e22364a5e7185979b8c7d7570707378808b9587777d94917d75624d38230e001f344a5f748b9b958a8074695e53483d32281d120700000000000000000000000000000000000d19232829292928241c1002000000000000000000000000010f1b24282929292823190d0000000000000b1821252626262520160a00000000001022323e4647474743392b1a08000000000000000000000812192025292c2e2e2e2e2c28241e18100700000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001f34495e7177777777766a5945311d0800001e33485e73889d8c77624d392511000000000c2035495e73889d8c77624d38230e000000000014293d5266798d897c798089928c898a92877664513e2a16020000000000000000081c304356697b8d9c9288828283898975614e3a2511000000000000000000000000080f15191b1b1b1916110c0600080e131515120d050000000c1f32455768788895978d86828283868c938a7d7080959b8b745f4a341f001e33485d72879c8874604f423a353334363a4a5f748b9d88725c47321d07001f34495e73899f8b76604b36210d111e2d3e5062758a9d8d77624c37220d00000000001d32475c72889d8c76604b36210b00000000000000172b3f53677a8d9c8b7b6f65605f61656c75808d88839889746b5b47331e0013283c5165798da18f7d6d615c5b5e646d788694857d948d77625746331f0a001f34495d707d89949c91867b70665a50453a2f24190f0400000000000000000000000000000b1c2b363d3e3e3e3d382e200f0000000000000000000000000e1f2d383d3e3e3e3d362b1c0b000000000a1b29343a3b3b3b3a3328190800000000192d3f505b5c5c5c5749372410000000000000000006111b252d343a3e4143434343413d39332b23190f0300000000000000000000000a141a1d1a14090000000000000000000000000000000000000000000000000000001f344a5f748b8d8d8d8974604b36200b00001b30455a6f8499917c6854402d1b0a00000617293c5063778d9d88735e4a35200b00000000000f23374a5d6f808f9190938c827773758091826d5945301c0700000000000000000014273a4c5d6e7d8c969b979698958c7d68533e28130000000000000000000009131c242a2e3030302e2b262119111b23282a2a2721180c000013273b4e61748697938579706c6b6d7177808a8f8082978d7d735f4a341f001b2f44586c8093907d6d60554e4b48494b4e535f748b9d88725c47321d07001f344a5f748b9f89735f4a341f0a000f2033465a6f869b8d77624c37220d00000000001d32475c72889d8c76604b36210b000000000000001c31455a6e8397927d6d5e524b4a4c5159626e7c8d8e9c88725c4e3e2b1800182d41566b80949985725f4f474649515b6875869180948d77624c39291704001a2e4152606b76828d98998e83776d62574c41362b21160b0000000000000000000000000015283a4852535353534b3e2d1a070000000000000000000006192c3d4b5253535352483a281500000002152839474f5050504f45372613000000001e33485c6e72727267533f2a15000000000000000a17232e3841484f53575858585856524d473f362c2114080000000000000000000d1b272f322f271b0c00000000000000000000000000000000000000000000000000001f344a5f748b91929e8c76604b36210b0000182c41556a7d939784705c4a38281a100f17243446586b809397836e5a45301c070000000000071a2d405161707c838482786e645e62738888735e49341f0a0000000000000000000a1c2e4050606e7983888b898782786e614f3b26120000000000000000010f1b2630383e4345464543403b352d242e373d3f3f3c352a1b0a00192e42566a7d92978574675d5756585d636d77868f83988872635644301c0015293d50637587978c7d7269635f5e5e6063686d748b9d88725c47321d07001f344a5f748b9f89735e48331e0900031a2f445a6f869b8d77624c37220d00000000001d32475c72889d8c76604b36210b000000000000001f34495e73889d8a75614f403635383d45505e6f80929d88725c4732200f001b30455a6f8599927d6955423230353e4a58677789939c8d77624c37220d0000122434434e59646f7a85909c958a8074695e53493e33281d120700000000000000000000001c31455866686868685c4a37230f000000000000000000000e2235495b67686868665845311c000000081d314557646666666355432f1b060000001f344a5f748888826b56402b160000000000000c1b2835404b545d63686b6e6e6e6d6b67625b53493e32251709000000000000000f1d2b39434743382a1a09000000000000000000000000000000000000000000000000001f344a5f737b7b83988c76604b36210b000012273b4f63778b9e8c79675646382c24242a3542526375889b8f7b67533f2b160200000000000010223343525f686e6e6c655c5149596d7474705d49341f090000000000000000000011223242505c666e737474716c655c514332200c0000000000000002111f2c38434c53585a5b5a58544f494137404a5254545047392815001d32475c71869a8d7a67564a42404348505a677687979d88725c47382714000d21344658697887948f857d7774737375787c8288919d88725c47321d07001f344a5f748b9f89735e48331e0900001a2f445a6f869b8d77624c37220d00000000001d32475c72889d8c76604b36210b000000000000001f344a5f748b9b87705b46322220232933405162768c9d88725c47321d07001e33485d72889c8e78644f3a261b212c3a495a6b7d91a38d77624c37220d0000061625303c47525d68737d89949c92877c70665b50453a2f241a0d000000000000000000001f344a5f747d7d7d7966523f2b1804000000000000000003162a3e5165787d7d7d745f4a341f0000000b20364b60757b7b7b725d48331e090000001f344a5f748b97826b56402b1600000000000c1b2a3946525d6770777c8284848483807c766f665b50433527180800000000000c1d2d3b49575c5648372716050000000000000000000000000000000000000000000000001c30445663666c83988c76604b36210b00000c2034475b6e82949785746455493f39393e4752617082939885725f4c3824100000000000000005162534414c5458585751493f3d4f5c5f5f5d51412e1a0600000000000000000000041423323e4a535a5e5f5f5c5851493f332515030000000000000010202f3d4a565f676c6f706f6d69645d544a505d666a69645744311c001f344a5f748a9c88725e4a392d2c2e343d4958697a8e9d88725c47321d09000417293a4b5a6976828a92928d8b89898b8d928f888c9d88725c47321d07001f344a5f748b9f89735e48331e0900001a2f445a6f869b8d77624c37220d00000000001d32475c72889d8c76604b36210b000000000000001f344a5f74899c87715c48382e2a27282a344a5f748b9d88725c47321d07001f34495e73899f8b75604b36210c0f1c2b3c4e6175899c8d77624c37220d00000007131e2935404b56616c77828d98998e83786d62574c41372b1c0b0000000000000000001d32465a6d829494826e5b4733200c00000000000000000b1e3246596d829494826e5a47321e0000000b21364b60768c9189735e48331e090000001f344a5f748b97826b56402b1600000000091a2a39485664707a858c92969899999895918a83786d6153453626160500000000172a3b4a596772665545342312020000000000000000000000000000000000000000000000142738464f576c83988c76604b36210b000004182b3e5164768899928273665b534e4e52596470808f9d8c7a6855432f1c0800000000000000000716243039404343423d352c313e484a4a49413323110000000000000000000000000514212d373f45494a4a47433d362c221607000000000000000c1d2e3e4d5b68727b82868786837d7870675d5d6e7a807d745f4a341f001f344a5f748b9b866f5a4530231e1b212b3a4b60748b9d88725c47321d0700000b1c2d3c4b58646e767d83878889888683807a748b9d88725c47321d07001f344a5f748b9f89735e48331e0900001a2f445a6f869b8d77624c37220d00000000001d32475c72889d8c76604b36210b050000000000001d32475b7085988b7765564a433f3c3d3f434a5f748b9d88725c47321d07001f344a5f748b9f89735e49341f0a000d1f31455a6f869b8d77624c37220d00000000010c17222d38444f5a65707b86919c958b80756a5f54493a2815000000000000000000172b3e5265798d9e8a76634f3b2814000000000000000013273a4e6175899d8d7966523f2b180000000b21364b60768c9f89735e48331e090000001f344a5f748b97826b56402b160000000315273748576674828d989a938f8c8b8b8c90959d968b8071635444342211000000001d32465968778473625241301f0f0000000000000000000000000000000000000000000000091a283442576c83988c76604b36210b0000000f223547596a7b8c9b9284786e676363666d76828f9e8f7d6e5c4b3826130000000000000000000006121d252b2e2e2d292219212c333434342e23150500000000000000000000000000030f1a242b30343434322e2922190f04000000000000000417293b4c5c6b79858f9697949495938c847a6e677a8d958b745f4a341f001f34495e73889c88735f4d403733303233374a5f748b9d88725c47321d070000000f1e2d3a47515b63696d70727372706e6a65748b9d88725c47321d07001f344a5f748b9f89735e48331e0900001a2f445a6f869b8d77624c37220d00000004101d32475c72889d8c76604b36211e1a120700000000182d4155697c8e958374675e5754525354585c62748b9d88725c47321d07001f344a5f748b9f89735e48331e0900021a2f445a6f869b8d77624c37220d00000000000005101b26313d47535d6974808a959d92877c71665845311c0000000000000000000f22364a5d718598927d6a5743301c08000000000000081b2f42566a7d919986715e4a37230f0000000b21364b60768c9f89735e48331e090000001f344a5f748b97826b56402b160000000e21324455667585939c91878079767474777a8289949d9082726251402e1c0a0000001f344a5f74879180705f4e3d2d1c0b00000000000000000000000000000000000000000000000b172c42576c83988c76604b36210b0000000518293b4d5d6d7c8b98968b837c78787b8289949a8e807060503f2d1b090000000000000000000000000a1116191918140e060f191e1f1f1f1a1105000000000000000000000000000000000710171b1f1f1f1d1a140e060000000000000000000d203346586a7a8a97948a837d7d808489918c80718296998b745f4a341f001b3044596d82948f7c6b5d534c484647484c505f748b9d88725c47321d07000000031524323b3e474e54585b5c5e5c5b595560768c9d88725c47321d07001f344a5f748b9f89735e48331e0900001a2f445a6f869b8d77624c37220d00000514222c32475c72889d8c76604b3633332e2417080000001226394c5e70829092857a726c686768696c70767c8b9d88725c47321d07001f344a5f748b9f89735e48331e0900001a2f445a6f869b8d77624c37220d000000000000000009141f2a35404c56616d77838e9a998f84745f4a341f000000000000000000071a2e4155697c909a87735f4b3824100707070707071023374a5e728699917d6956422e1b070000000b21364b60768c9f89735e48331e090000001f344a5f748b97826b56402b16000005182b3d50617384949a8c7d736a64615f5f62666d76828f9e90806f5d4c3927140100001d31455869798a8e7d6c5b4a3a2918080000000000000000000000000000000000000000000000172c42576c83988c76604b36210b000000000c1e2f3f4f5e6c7986919a97918f8f90959b93887c6f615142322110000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000014283c50637688999183766e69686b6f757d88908282978c7b725e49341f00162a3e51647789998a7b6f66605d5b5c5e61656a748b9d88725c47321d070000000e2032424e534e4340444647484746445064798e9a866f5a45301b06001f344a5f748b9f89735e48331e0900001a2f445a6f869b8d77624c37220d00001122323f47485c72889d8c76604b484848413526140100000a1d2f41526271808c958d86827d7c7c7d82868b91959d88725c47321d07001f344a5f748b9f89735e48331e0900001a2f445a6f869b8d77624c37220d000000000000000000030f1a25303b46515c67727d91a79c8b745f4a341f000000000000000000001226394d6074889c8f7a6753402c1d1d1d1d1d1d1d1d2b3f53667a8e9c8975614e3a2613000000000b21364b60768c9f89735e48331e090000001f344a5f748b97826b56402b1600000e2134475a6d80919b8b7b6d6157504c4a4a4d52596471808f9e8d7b695643301d09000016293b4b5c6c7c8d8a796858473626150400000000000000000000000000000000000000000000172c42576c83988c76604b36210b0000000000112131404e5c68737d868c919393918d8880756a5e5142332414030000000000000000000000000000050c11151719191715120d070000000000000000000000000000050d11121212110c0400000000000000070e12121212110c040000001a2e43576b8093968472655a5453565a616a758390859988726154432f1b000e223547596a7a89968d837a7572707073767980868f9d88725c47321d07000005172a3d50606860554a41393333323947586b809395806b57422d1803001f344a5f748b9f89735e48331e0900001a2f445a6f869b8d77624c37220d0000192d40515c5e5e72889d8c76605e5e5e5d5343311d090000001224344453616e7982898f92949393928f8b86808b9d88725c47321d07001f344a5f748b9f89735e48331e0900001a2f445a6f869b8d77624c37220d00000000000000000a16212c37424d58636e7985909c958a80725e49341f000000000000000000000a1d3145586c809397836f5c4834323232323232323233475b6e839694806d5945321e0a000000000b21364b60768c9f89735e48331e090000001f344a5f748b97826b56402b16000115293d5064778a9d8f7d6c5d4f443b373435383e4753617182949886735f4c38251100000c1d2d3e4e5e6f8090877565544333221100000000000000000000000000000000000000000000172c42576c83988c76604b36210b0000000000031322303e4b56616a72777b7c7d7b78736c63594d41332415060000000000000000000000000008111920262a2c2e2e2c2a26211b130a00000000000000000000000c1821262727272620170a00000000000d1922272727272620160900001e33485d71879b8d796655473f3e41464e58657485969d88725c473625130005182a3c4d5c6b78838d958f8b888787888b8f928b8e9d88725c47321d0700000e2134475a6c7d72675d544d4846474c566475889b8d7965513d281400001f344a5f748b9f89735e48331e0900001a2f445a6f869b8d77624c37220d00001e33485d6f737373889d8c767373737371604c37220d0000000617263544515c666e74797c7d807d7c797671748b9d88725c47321d07001f344a5f748b9f89735e48331e0900001a2f445a6f869b8d77624c37220d00000000000006111d28333e49545f6a75828c97998e83776d6254432f1b000000000000000000000215293c5063778b9f8b776350474747474747474747474f63768a9e8c7864513d2a1602000000000b21364b60768c9f89735e48331e090000001f344a5f748b97826b56402b1600081c3145586c80949684715f4e3f3227221f20232a3643536476899c8f7b6854402b170300000f203040516171839383726150402f1e0d000000000000000000000000000000000000000000172c42576c83988c76604b36210b0000000000000412202d39444e565d6366686867635e5850463b2f23150600000000000000000000000004101b242d343a3f424343423f3b362e261d120600000000000000000a1b2a353b3c3c3c3b342819080000000c1d2b363c3c3c3c3b33271807001f344a5f748a9c87725d49372b292c323b475667798d9d88725c47321d0800000d1e2f3e4d5a6670798086898b8b8b8986827c768b9d88725c47321d07000014293d5164768a857a7068615d5b5c60687483939583705d4a36220e00001f344a5f748b9f89735e48331e0900001a2f445a6f869b8d77624c37220d00001f344a5f748989898d9f90898989898978634e38230e00000000081726333f49525a606467686a6867646160748b9d88725c47321d07001f344a5f748b9f89735e48331e0900001a2f445a6f869b8d77624c37220d00000000020d19242f3a45505b66717c88939d92877c70665a504436251300000000000000000000000d2134485b6f839793806c5c5c5c5c5c5c5c5c5c5c5c5c6b80939884705c4935210e00000000000b21364b60768c9f89735e48331e090000001f344a5f748b97826b56402b16000d22374b5f74889c8e7a6754423021140d0a0b0f18253547596c809397836f5b46321d08000002122333435464758690806e5e4d3c2b1b0a0000000000000000000000000000000000000000172c42576c83988c76604b36210b00000000000000021122313d47515650515353524e5552493f342616050000000000000000000000000815212d3740484f545758585754504a42392f24180b0000000000000015283947505252525046372512000004172a3b49515252524f45362411001f344a5f748b9b86705b463126201e1f29394a5f748b9d88725c47321d0700000011202f3c49545d656b707374767473706d68748b9d88725c47321d070000162b40566b808c968d847c76727070747b86929788776653412e1b0700001f344a5f748b9f89735e48331e0900001a2f445a6f869b8d77624c37220d00001f344a5f748b939395a397939393938f78634e38230e00000000081a2b39434743464b4f5253545352504d62778c9c87715c47321c07001f344a5f748b9f89735e48331e0900001a2f445a6f869b8d77624c37220d0000000814202b36414c57626d78848f9a958a8074695e53483d32271808000000000000000000000005182c4053677a8e9b887472727272727272727272727273879b8f7b6854402d190600000000000b21364b60768c9f89735e48331e090000001f344a5f748b97826b56402b160012273c5065798f9b87725e4a372413030000000007172a3d5064788d9e8a75604b37220d0000000515263646576777898d7b6b5a493828170600000000000000000000000000000000000000172c42576c83988c76604b36261705000000000000071b2e404f5a646b61554846535f6a665c524433200c0000000000000000000000091826333f4a545c63686c6e6e6c69645e564c4135291b0c0000000000001c314457646767676355422e1a05000a1f334759656767676353412d18001e33485d72879c8874604f423a353334363a4a5f748b9d88725c47321d070000000213222f38414a51575b5e5f605f5e5b5860768c9d88725c47321d07000014283d50616e79848d96908b8886878a8f989286786959483624110000001f344a5f748b9f89735e48331e0900001a2f445a6f869b8d77624c37220d00001f344a5f747c7c7c889d8c7c7c7c7c7c77634e38230e0000000012253749575c574b403a3d3e3f3e3d4053677b9098836e59442f1a05001f344a5f748b9f89735e48331e0900001a2f445a6f869b8d77624c37220d0000071726323d48535e6974808b96998e83786d62574c41362b201509000000000000000000000000001024374b5f72869a908888888888888888888888888888909b8773604c3825110000000000000b21364b60768c9f89735e48331e090000001f344a5f748b97826b56402b1600162b4055697d9496826c58432f1b080000000000000d2135495d72879b8f7965503b26110000000008182839495a6a7a8c897767564635241403000000000000000000000000000000000000172c42576c83988c7661504434220f0000000000000d21364b5e6c76807266595764707d786e62503b2712000000000000000000000818273644515c6770777d828484827d7972695e5347392a1b0c00000000001f344a5f747c7c7c715c47321c07000d22374c61767c7c7c705b46301b001b2f44586c8093907d6d60554e4b48494b4e535f748b9d88725c47321d070000000c1f31404c504c414246494a4b4a49464f64788e9a86705b46311c0600000d213343515c67707982888e919393918d878074685a4b3b2b19070000001f344a5f748b8d89735e48331e0904091a2f445a6f868d8d77624c37220d00001c31445764676772889d8c7667676767665a4834200b000000091c2e41546772685d5349423c3a3b414d5d6f8396927d6954402b1702001f344a5f748b9f89735e48331e0900001a2f445a6f869b8d77624c37220d0000122535444f5a65707b87929d92877c70665b50453a2f24190e030000000000000000000000000000081b2f43566a7d92a09795959595959595959595959597a093806b5744301d090000000000000b21364b60768c9f89735e48331e090000001f344a5f748b97826b56402b1600192e43586d8398927c67533e291400000000000000061a2f44586d8397937d68533f291400000000000b1b2b3c4c5d6d7d8f8574635342312110000000000000000000000000000000000000172c42576c8296907c6a62523f2b160000000000000e23384e6377889184776a6875828f8a7c68533e2813000000000000000000051626364554616e79848c9297999997938d867b70645748392a1908000000001f344a5f748b9388725c47321d07000d22374c62778d9387705b46301b0015293d50637587978c7d7269635f5e5e6063686d748b9d88725c47321d0700000416293c4e5e665e53483e363536343745576a7d9295826c57422e19040000041525333f4a545d666d74787b7d7c7b78726b62574a3c2d1d0d000000001f34495e71777777705d4833211e181e212f44596d77777773604c37210c00001528394750525c72889d8c7660525252514a3c2b18050000001125394c5e71847a6f665d56514f50555e6b7b8d9c8976624e3a261100001f344a5f748b9f89735e48331e0900001a2f445a6f869b8d77624c37220d00001b2f4253616c77838e99968b8074695e53493e33281d1207000000000000000000000000000000000013273b4e6275899c87808080808080808080808080879c8a76634f3b2814010000000000000b21364b60768c9f89735e48331e090000001f344a5f748b97826b56402b16001c31465b70869b8f78644f3a25100000000000000000162b40556a809496826b56412c170000000000000d1e2e3f4f607082918270604f3e2e1d0c000000000000000000000000000000000014293e53687c9099897d6d58432e190000000000000b2034485a69778593897b79869388796c5e4d39251100000000000000000010223344546372808c9799918b89898b9098998e8275665747372614020000001f344a5f748b9d88725c47321d07000d22374c62778d9c87705b46301b000d21344658697887948f857d7774737375787c8288919d88725c47321d0700000d203346596b7b70655b524a4543444a546374879a8e7a66523e2914000000000715212d37414a52595f6467686866635e574f45392c1e0f00000000001b2f4253606262625f52413636332b3336363d4f5d626262605544311d0900000a1b2a353b475c72889d8c76604b3c3c3c372c1e0d00000000152a3f54687b8e8d8379716a66646569707c8a998f7d6c5946331f0b00001f344a5f748b9f89735e48331e0900001a2f445a6f869b8d77624c37220d00001f34495e717d8a95998f83786d62574c41362b21160b000000000000000000000000000000000000000b1f32465a6d82958e7a6a6a6a6a6a6a6a6a6a6a7a8e96836e5b4733200c000000000000000b21364b60768c9f89735e48331e090000001f344a5f748b97826b56402b16001e33485d72889d8c76614c37220d000000000000000013283d52677c9398836d58432e190000000000000010213142526273848f7d6d5c4c3b2a1909000000000000000000000000000000001024394d6072829699846e58432e1900000000000005182b3c4b59677483918d8b938677695c4e402f1d0a0000000000000000091b2e4051627282909d90857c767373767b858f9b938575655543321f0d0000001f344a5f748b9d88725c47321d07000d22374c62778d9c87705b46301b000417293a4b5a6976828a92928d8b89898b8d928f888c9d88725c47321d07000013283c5063758982776e655f5a58595d667282929785725f4b37230f0000000000040f1a242e373e475561696c6c675e52433b32281b0e000000000000122535434b4c4c4c4b4a4b4b4b473c474b4b4b4a4a4c4c4c4c44372715020000000c182132475c72889d8c76604b362727231a0e0000000000152b40546978848f968d85807b79797d858e9a8f8271604f3d2a170300001f344a5f748b9f89735e48331e0900001a2f445a6f869b8d77624c37220d00001f344a5f748b9c92877c71665b50453a2f24190e03000000000000000000000000000000000000000003172a3e5165798d96836e5b5454545454545b6f83968e7a66533f2b1804000000000000000b21364b60768c9f89735e48331e090000001f344a5f748b97826b56402b16001f34495e73899f8b745f4b35200b000000000000000011263b50667b9199846e59442f1a000000000000000313243445556576878b7a6959483726160600000000000000000000000000000013283d5165798c9c8f846e58432e19000000000000000d1e2d3b49576472828b8b837567594c3e3022120000000000000000001326394b5d6f80909c8d7d7269625e5e6168717d8b99948472614f3c2a170300001f344a5f748b9d88725c47321d07000d22374c62778d9c87705b46301b00000b1c2d3c4b58646e767d83878889888683807a748b9d88725c47321d070000162b40566b808e958a8279736f6e6e72798390998a796755422f1b080000000000000008111c30435565737d83827b7061503e2b170a000000000000000717253036373740515e6060605a4b5a6060605e5140373737312719090000000000051d32475c72889d8c76604b3621120e070000000000001126394b5a66717b858d9494908f909398928a7d71625343311f0d0000001f344a5f748b8b89735e48331e0900001a2f445a6f868b8b77624c37220d00001f344a5f748b8b80756a5f54493e33281d120700000000000000000000000000000000000000000000000e2236495d7085988a76634f3f3f3f3f4f63768a9986725e4a37231000000000000000000b21364b60768c9f89735e48331e090000001f344a5f748b97826b56402b16001f344a5f748ba08b745f4a341f0a000000000000000010263b506579909b866f5a442f1a000000000000000006162737485868798a8876665544342313030000000000000000000000000000172c41566b80959380726855412c1700000000000000000f1d2b39475462707474726557493c2e2012040000000000000000071b2e4255687a8d9e8e7d6e60564d49484c545f6c7b8b9c907d6c5946331f0b00001f344a5f748b9d88725c47321d07000d22374c62778d9c87705b46301b0000000f1e2d3a47515b63696d70727372706e6a65748b9d88725c47321d07000014293e5163707b8690958e88858384878d9694887a6b5b4a3825130000000000000000000d22374b5f72848a82838e806d5a46311d08000000000000000008141c212232475c6f7676766954697676766f5c473222211d1509000000000000001d32475c72889d8c76604b36210b00000000000000000a1c2d3d49545f687179808588898988847d766c605344352514020000001f34495d707474746f5c47321d080000192e43586b74747471604b36210c00001f344a5f7483786d62574c41372c21160b00000000000000000000000000000000000000000000000000061a2d4154687c9093806b5744303043576b8092917d6956422f1b0800000000000000000b21364b60768c9f89735e48331e090000001f344a5f748b97826b56402b16001f344a5f748ba08b745f4a341f0a00000000000000000f253a4f6479909b866f5a442f1a00000000000000000009192a3a4b5b6b7c8d84736252413121100000000000000000000000000000172c42576c83988d7763574a3926120000000000000000000d1b293744525d5f5f5e5547392b1e10020000000000000000000e22364a5e72859893826f5f504339343338424e5d6d7d909c8975624e3b261200001f344a5f748b9d88725c47321d07000d22374c62778d9c87705b46301b000000031524323b3e474e54585b5c5e5c5b595560768c9d88725c47321d0700000e223545535e69737c858b9094959594908a82766a5c4d3d2c1a0800000000000000000010263b5065798f7b6c6f8089745f4b35200b00000000000000000001080c1e33485e73898c826b566b828c89735e48331e0c090200000000000000001d32475c72888b8b76604b36210b0000000000000000000f1f2b37414c555d656b6f727473726f6a635a4f4335261707000000001a2e41515d5f5f5f5d513f2c1904000015293c4e5b5f5f5f5e5343301c0800001f34495d7071665b50453a2f24190f030000000000000000000000000000000000000000000000000000001225394c6073889b8773604c38384c5f73879b8975614e3a27130000000000000000000b21364b60768c9f89735e48331e090000001f344a5f748b97826b56402b16001f344a5f748ba08b745f4a341f0a00000000000000000f253a4f6479909b866f5a442f1a000000000000000000000c1c2d3d4e5e6e808f80705f4f3e2e1e0d00000000000000000000000000172c42576c83988c76604b3a2c1b09000000000000000000000b19273441494a4a494337291b0d000000000000000000000014293d5165798e9c897563514132261f1e25303f4f60728699927d6a55412d1904001f344a5f748b9d88725c47321d07000d22374c62778d9c87705b46301b0000000e2032424e534e4340444647484746445064798e9a866f5a45301b06000005172735414c56606870767b7d80807d7a756d64594c3e2f1f0e0000000000000000000011263b50667b8e7865697c8b76604b36210b0000000000000000000000001e33485e738997826b566b829789735e48331e09000000000000000000001c31465b6e747474705e4a35200b000000000000000000010e1a252f39414a50565a5d5f5f5d5a554f473d32251708000000000011233341494a4a4a48403222100000000d1f303e474a4a4a49423525140100001a2e41515d5d54493e33281d12070000000000000000000000000000000000000000000000000000000000091d3144586b80938f7b6754404053677b8f95826d5946321e0b0000000000000000000b21364b60768c9f89735e48331e090000001f344a5f748b97826b56402b16001f344a5f748ba08b745f4a341f0a00000000000000000f253a4f6479909b866f5a442f1a00000000000000000000000f1f3040506171828e7d6d5c4c3c2b1b0a000000000000000000000000172c42576c83988c76604b36210e0000000000000000000000000916242e343434342f26190b000000000000000000000000192e42576c829595806c59463423140a091321314356697c919985705c47321d08001f344a5f748b9d88725c47321d07000d22374c62778d9c87705b46301b000005172a3d50606860554a41393333323947586b809395806b57422d18030000000917242f3a434d555c6266696b6a6966615a51473b2e201101000000000000000000000f24394e62768983787a8785715d48331e090000000000000000000000001e33485e738997826b566b829789735e48331e0900000000000000000000172b3e505c5f5f5f5d52422f1b07000000000000000000000007121c262e363c4145484a4a4845413b332a2014070000000000000515232e34343434332d2214040000000112202b33343434342f25170800000011233341494941372c21160b000000000000000000000000000000000000000000000000000000000000000115283c5063778b9784705c48485c6f83978c7865513e2a16030000000000000000000b21364b60768c9f89735e48331e090000001f344a5f748b97826b56402b16001f344a5f748ba08b745f4a341f0a00000000000000000f253a4f6479909b866f5a442f1a00000000000000000000000112223343536475868b7a6a5949392818070000000000000000000000172c42576c83988c76604b36210b0000000000000000000000000006121a1f1f1f1f1b1308000000000000000000000000001c31475c70869a8f7965513d2a17050000031426394d61768b9f8a75604b36210c001f344a5f748b9d88725c47321d07000d22374c62778d9c87705b46301b00000e2134475a6c7d72675d544d4846474c566475889b8d7965513d2814000000000006121d27303c474b4d5154565554514c4b463a2a1e100200000000000000000000000b1f3346596b7a858b8983766654412e19050000000000000000000000001e33485e73898b826b566b828b89735e48331e09000000000000000000000f21323f484a4a4a4941342412000000000000000000000000000009121a21282d3133343433302c261f170d02000000000000000005111a1f1f1f1f1e1911050000000000020f181e1f1f1f1f1b1207000000000515232e34342e24190f040000000000000000000000000000000000000000000000000000000000000000000d2034475b6f83968c7764505063778b9884705d4935220e000000000000000000000b21364b60768c9f89735e48331e090000001f344a5f748b97826b56402b16001f344a5f748ba08b745f4a341f0a00000000000000000f253a4f6479909b866f5a442f1a00000000000000000000000004152536465768788a88776756463625150400000000000000000000172c42576c83988c76604b36210b0000000000000000000000000000000000000000000000000000000000000000000000001f34495e73899e8b76604c37220e000000000a1e33485d72879c8d77634e38230e001f344a5f748b9d88725c47321d07000d22374c62778d9c87705b46301b000014293d5164768a857a7068615d5b5c60687483939583705d4a36220e000000000000001126394b5a6060605e51545f606060584836220e00000000000000000000000004172a3c4d5c687174746f655849372512000000000000000000000000001d32475c6f7474746854687474746f5c47321d08000000000000000000000313222d33343434342e24160600000000000000000000000000000000060d13181c1e1f1f1e1b17120c0400000000000000000000000000000000000000000000000000000000000000000000000000000000000005111a1f1f1a1207000000000000000000000000000000000000000000000000000000000000000000000004182b3f53667a8e94806c59586c80938f7c6854412d1906000000000000000000000b21364b60768c9f89735e48331e090000001f344a5f748b97826b56402b16001f344a5f748ba08b745f4a341f0a00000000000000000f253a4f6479909b866f5a442f1a00000000000000000000000000071828394a5b6b7c8d857464534333221201000000000000000000172c42576c83988c76604b36210b0000000000000001060707070503080c0e0f0f0e0c0804000000000000000000000000001f344a5f748b9f89735f4a341f0a00000000041b30455a6f869b8f78644f3a240f001f344a5f748b9d88725c47321d07000d22374c62778d9c87705b46301b0000162b40566b808c968d847c76727070747b86929788776653412e1b0700000000000000152b4054697676766f5c607276767565513c2711000000000000000000000000000d1e2f3e4b555c5f5f5b53483a2b1a0800000000000000000000000000192c3f515d5f5f5f594a595f5f5f5d513f2c190400000000000000000000000410191e1f1f1f1f1a1206000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000020e161b1b1b1b1a150c01000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001023374b5e7286998875616073889b8873604c39251100000000000000000000000b21364b60768c9f89735e48331e090000001f344a5f748b97826b56402b16001f344a5f748ba08b745f4a341f0a00000000000000000f253a4f6479909b866f5a442f1a00000000000000000000000000000b1b2c3d4e5e6f80918271615140301f0f000000000000000000172c42576c83988c76604b36210b0000000000000c151b1d1d1c19171c2123252523211d18120a01000000000000000000001f344a5f748b9f8a745f4a34200a00000000061b30455a6f869b8f78634e39240f001f344a5f748b9d88725c47321d07000d22374c62778d9c87705b46301b000014283d50616e79848d96908b8886878a8f989286786959483624110000000000000000162b40566b828c89735e62778c8c7c67523c2712000000000000000000000000000111202d3942474a4a4640362a1c0d000000000000000000000000000010223240484a4a4a463b464a4a4a48403222100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000020a0f0f0f0f0f0a020000000000000000030c11121212120e070000000000000313202a303030302f291e1101000000050d11121212120e070000000000000000030c11121212120f0900000000000000000000000000000000000000000000081b2f42566a7d91907c69687c9093806b5844301d0900000000000000000000000b21364b60768c9f89735e48331e090000001f344a5f748b97826b56402b16001f344a5f748ba08b745f4a341f0a00000000000000000f253a4f6479909b866f5a442f1a0000000000000000000000000000000e1f30405162728490806f5e4e3d2d1c0c000000000000000d192c42576c83988c76604b36210b00000000000f1d28303232322e2b3136383a3a3836322d261e140a0000000000000000001e33485e73889d8c77624d382410000000000b1f34495d72889c8d77624d38230e001f344a5f748b9d88725c47321d0a000d22374c62778d9c87705b46301b00000d213343515c67707982888e919393918d878074685a4b3b2b19070000000000000000162b40566b829789735e62778d937c67523c2712000000000000000000000000000002101c262e333434322c23190c0000000000000000000000000000000414222d33343434322a32343434332d2214040000000000000000000000000000000000050c13181b1d1e1d1b17120c050000000000000000000000000009151e24252525241e150900000000000008151f262727272722190d00000000000f21313d45464646443c2f1f0d00000c18212627272727231a0e00000000000008151f2627272727241c110300000000000000000000000000000000000000000013273a4e6175899985717084988b7763503c28150100000000000000000000000b21364b60768c9f89735e48331e090000001f344a5f748b97826b56402b16001f344a5f748ba08b745f4a341f0a00000000000000000f253a4f6479909b866f5a442f1a0000000000000000000000000000000112233344556676888d7c6c5b4b3a2a1a0900000000000b1c2b3642576c83988c76604b36210b000000000a1c2d3b444747474140464a4e4f4f4e4b47413a31271c1004000000000000001c31465b70859a907b67533f2c190800000415273b4e63778c9e89745f4a35200b001f344a5f748b9e8974604c392716070e23384e63788e9c87705b46301b0000041525333f4a545d666d74787b7d7c7b78726b62574a3c2d1d0d000000000000000000162b40566b829789735e62778d937c67523c2712000000000000000000000000000000000912191e1f1f1d18100600000000000000000000000000000000000511191e1f1f1f1d171d1f1f1f1e19110500000000000000000000000000000000050f1821272d30323332302c27201810050000000000000000000008182732393a3a3a393227180800000000061726323a3c3c3c3c362b1d0c00000000192c3e4f595b5b5b584d3c2a16000a1b2a353b3c3c3c3c372c1e0e00000000071726323a3c3c3c3c382e21110000000000000000000000000000000000000000000b1e3246596d82958d79788c96836f5b4734200d0000000000000000000000000b21364b60768c9f89735e48331e090000001f344a5f748b97826b56402b16001f344a5f748ba08b745f4a341f0a00000000000000000f253a4f6479909b866f5a442f1a00000000000000000000000000000000051626374858697a8b8a79685848372716060000000015283a4852576c83988c76604b36210b0000000013273a4b585c5c5c54535a5f63646463605b554d44392e211405000000000000182d41566a809497836f5b493726180d0c15233344576a7d9297836f5a46311c07001f344a5f748ba0907c69564434251912273b50657a909a866f5a442f1a0000000715212d37414a52595f6467686866635e574f45392c1e0f00000000000000000000162b40566b828b89735e62778b8b7c67523c27120000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000a16222b353b414547484745413b342c22170c000000000000000000132536444d4f4f4f4d4436251300000000102335444f52525251493b2a17040000001e33485c6d7070706b5945301b001528394750525252514a3c2c1b0a000003142535444f525252524c3f2e1c09000000000000000000000000000000000000000003162a3d5164788c958280948e7a66533f2b18040000000000000000000000000b21364b60768c9f89735e48331e090000001f344a5f748b97826b56402b16001f344a5f748ba08b745f4a341f0a00000000000000000f253a4f6479909b866f5a442f1a000000000000000000000000000000000009192a3b4b5c6d7d8f8776665545342414030000001c31455866686c83988c76604b36210b00000000182d41566972727163676f747779797875706960564b3f32231405000000000013273c5064778c9f8b7866554436292221273341516274879a907c6854402b1703001f344a5f748ba0998673625243362b252d41556a7d9397836d58432e1800000000132637454f50504e4a4f525353514e4a443d33281b0e0000000000000000000000152a3f54687474746f5c607174747464503b261100000000000000000000000000020b1116191b1b1a18140f090200040c111313130e070000000000000810141515151410080000000000000000000000000000000000000000000000000b1a27343e4850565a5c5e5c5a554f483f35291d0f01000000000000001a2e4254616464646154422e1a06000000172b3f5262676767655947331f0a0000001f344a5f74878787725c47321d001c31445764676767665a493828170600102131425362676767675d4c38240f0000000000000000000000000000000000000000000e2235495c7084988a889a86725e4b372310000000000000000000000000000b21364b60768c9f89735e48331e090000001f344a5f748b97826b56402b16001f344a5f748ba08b745f4a341f0a00000000000000000f253a4f6479909b866f5a442f1a0000000000000000000000000000000000000c1d2e3e4f6070829284736352423121110000001f344a5f747d7d83988c76604b36210b00000000182d43586c7d8882727b83898d8f908e8a857c73685d504232231303000000000d2135485c6f83959584726253473d37363b44505f6f8091998673604d39251100001f344a5f748b9f8e9080706154483f3b3d4b5d708599947d6955402b16000000001b2f43556366666254414851585d5e5d58504537281908000000000000000000001125394a595f5f5f5d51535e5f5f5f574735210d0000000000000000000000000b151e262b2f30302f2d29241d150c172026292928231a0e000000000e1a24292a2a2a29241a0e000000000000000000000000000000000000000000000a1a293845515b646a6f7273726f6a635b51473b2d1f10000000000000001e33485d72797979725d48331e080000001a2f445a6f7c7c7c76614c37220d0000001f344a5f748b9c88725c47321d001f344a5f747c7c7c786756453524130c1d2e3e4f60707c7c7c7b67523c271200000000000000000000000000000000000000000006192d4154687b8f9796927d6a56432f1b08000000000000000000000000000b21364b60768c9f89735e48331e090000001f344a5f748b97826b56402b16001f344a5f748ba08b745f4a341f0a00000000000000000f253a4f6479909b866f5a442f1a000000000000000000000000000000000000001020314252637485918270604f3f2e1e0e00001f344a5f748b9494a08c76604b36210b0000000015293d4f6071828e858f979a94939294999990867a6e60514131200f0000000005192d405365778a9b9080716459504c4b4f57616e7d8d9e8d7b695644301d0900001f344a5f748b9d88858f8071655b5350515a687a8da08e7965503c2712000000001e33485d727b7b715d515b646d7273726c62554637251301000000000000000000091b2d3b464a4a4a484042494a4a4a44392a18050000000000000000000002101d28323a4044464644423e3831281f2a343b3e3e3d372c1e0d00000c1d2c373e3f3f3f3e372c1d0c0000000000000000000000000000000000000000051728384756636e778085888888847d776f64584b3d2e1e0e0000000000001e33485e73899089735e48331e090000001a2f445a6f86938d77624c37220d0000001f344a5f748b9d88725c47321d001e32475a6b7c8d9385746352413120192a3b4b5c6d7d8f938472614e3a2510000000000000000000000000000000000000000000001125384c6073879b9d8975614e3a271300000000000000000000000000000b21364b60768c9f89735e48331e090000001f344a5f748b97826b56402b16001f344a5f748ba08b745f4a341f0a00000000000000000f253a4f6479909b866f5a442f1a000000000000000000000000000000000000000313243545566777898f7d6d5d4c3c2b1906001f344a5f748b8b8b8b86745f4a35200b0000000517293b4c5c6c7b8b99988d86807c7c80858d97988c7d6f5f4f3e2c1b0800000000102336485a6c7d8e9d9082766c656160646a74808d9c90806f5e4c3a27140100001f344a5f748b9d88798a9083776f6864666c7787989986725f4b36220d000000001d32475c70868b7767656e77828789878073645443301d0a000000000000000000000f1d2a32343434332d2f3434343431281b0c000000000000000000000111202e3a454e54585b5b5a57524c443b313b474f5353524a3c2b18050016293b495354545453493b2916020000000000000000000000000000000000000010233546566573828b939997979799938b8276695b4c3c2b1a0900000000001e33485e73899f89735e48331e090000001a2f445a6f869b8d77624c37220d0000001f344a5f748b9d88725c47321d00182b3d4d5e6f80919282705f4e3e2d26374758697a8b988876655544321f0b00000000000000000000000000000000000000000000091d3044576b808c8c826d5946321f0b00000000000000000000000000000b21364b60768c8f89735e48331e090000001f344a5f748b97826b56402b16001f344a5f748b8b8b745f4a341f0a00000000000000000f253a4f64798b8b866f5a442f1a000000000000000000000000000000000000000006172838495a6b7b8d8c7b6a5a4935210c001f34495d707474747473685744311c070000000e213446586a7a8b9a97897a716a67676a707985919c8e7d6d5c4a3825130000000006192b3d4e5f6f7d8d9a948980797676787d87919c8f82716251402f1d0a0000001f344a5f748b9d88727b8b958b837c797b8089969e8e7c6956432f1b0700000000192e42576b7d91857a7a828b928b898b918372604d39251100000000000000000000000c171d1f1f1f1e191b1f1f1f1f1c150a00000000000000000000000e1f2f3e4c5861696d70706f6c6760584e444b59636868665a4834200b001d314558676a6a6a675845311d08000000000000000000000000000000000000071a2d405263748492978d86828283868d969487796a5a4938261401000000001e33485e73899f89735e48331e090000001a2f445a6f869b8d77624c37220d0000001f344a5f748b9d88725c47321d000e1f304051627384958f7d6c5c4b3a334454657687988c7a69594837261502000000000000000000000000000000000000000000000114283b4f637476767565513e2a170300000000000000000000000000061220354b5f73787878715d48331e110500001f344a5f748b97826b56402b16001f34495d70747474705d49341f0900000000000000000f24394e62737474746b58432e190000000000000000000000000000000000000000000a1b2b3c4d5d6e80908978644f3a240f001a2e41515d5f5f5f5f5e574a3a281501000004182b3e516476889893838f806d5b5252555d677382919c8b796754422f1b08000000000d1f304151606e7c88939c948f8c8c8e939a958a7d71625344342311000000001f344a5f748b9d88726c7a879297929091959c9b8f80705f4d3a2714000000000014283b4e61738491909092897d76737784907c6854402b1702000000000000000000000000000000000000000000000000000000000000000000000000081a2c3d4d5c6a757d83868785827b746b61555969767d7d77634e38230e001f344a5f74808080745f4a341f11111111110f0d0802000000000000000000000f23364a5d6f829294867a716c6b6c71798490988978675543301d0a000000001e33485e73899f89735e48331e090000001a2f445a6f869b8d77624c37220d0000001f344a5f748b9d88725c47321d00011223344455667788998b796858474050617283948f7d6d5c4c3b2a19080000000000000000000000000000000000000000000000000c2033465660606060584836220e000000000000000000000000000616242f35445561636363605341342e231404001f344a5f748b97826b56402b16001a2e41515d5f5f5f5d51412e1a0600000000000000000b1f3345555e5f5f5f5b4e3c2915000000000000000000000000000000000000000000000d1e2f40506172837d6f604c38230e0011233341494a4a4a4a4944392c1c0b0000000c2033475a6d8293978674848b79675544414a55637283959785725e4b37240f000000000212233242505e6a7680898f93959594908a82776d60534435261605000000001f344a5f748b9d88725c69747d878d9193938f887d70615241301d0a00000000000c1f32445665737d848480766c625e66788b836e59442f1a0500000000000000050d11121212110c0400000000000000070e12121212110c04000000001225384a5b6b7a8891979b9c9a9690887d7366637688938f78634e38230e001f344a5f748b958b745f4a3426262626262624221d160f05000000000000000015293e5266798d978675685d5856585d6672808f968572604d392510000000001e33485e73899f89735e48331e090000001a2f445a6f869b8d77624c37220d0000001f344a5f748b9d88725c47321d00000516273848596a7b8c97877564534d5d6e8090938271604f3e2e1d0c0000000000000000000000000000000000000000000000000004162838445159574f483d2f1e0b00000000000000000000000000122434424a4b4b4d4e4e4e4c4b4b4940322210001f344a5f748b97826b56402b160011233341494a4a4a49413323110000000000000000000316273743494a4a4a473e301f0d0000000000000000000000000000000000000000000000112232435464736d5f5142301d09000515232e34343434343430271c0e0000000012263b4f63768a9e8d7a68778a8573614f3e38455465778a9d8e7a67533e2a16010000000005142332404d59636c74797d80807d7b756e655b4f433526170800000000001f344a5f748b9d88725c57616b72787c7d7c79746b605243342312000000000000021527384755616a6e6e6a63594f4a5e7074746b58432e19040000000000000c1821262727272620170a00000000000d192227272727262016090000071b2e415467798a999c928a8787888d94908577687c929d8f78634e38230e001f344a5f748ba08b745f4a3b3b3b3b3b3b3b3a37312b22180d010000000000001a2f43586d82958d7967574a4340434a55617082928c7c67523c2712000000001e33485e73899f89735e48331e090000001a2f445a6f869b8d77624c37220d0000001f344a5f748b9d88725c47321d000000091a2b3b4c5d6e809093837160596a7b8d97867564534332211000000000000000000000000000000000000000000000000000000d1d2e3f4f606e6a635b4d3b2814000000000000000000000000001a2e41525e606060594c5b6060605d503f2c18001f344a5f748b97826b56402b16000515232e34343434342e231505000000000000000000000a19263034343434332b20120100000000000000000000000000000000000000000000000415253647565f5b4f4133241301000005111a1f1f1f1f1f1f1b140a0000000000172c40556a7d929783705d6c7d90806d5b4a3837485a6d809496826d5945301b0700000000000514222f3b4650596065686a6b6966615a52483d322517080000000000001f344a5f748b9d88725c474e575e646768676560584e423425160600000000000000091a2938444e565858564f463c42525d5f5f5b4e3c29150000000000000a1b2a353b3c3c3c3b342819080000000c1d2b363c3c3c3c3b33271807000e22364a5e7185979b8c7d7570707378808b9587777d94917d75624d38230e001f344a5f748ba08b745f50505050505050504f4b463e352b1f120400000000001d32475c71879b86715d4a392e2b2e3744526274867a6f614e3a2510000000001e33485e73899f89735e48331e090000001a2f445a6f869b8d77624c37220d0000001f344a5f748b9d88725c47321d000000000d1e2e3f5061728394907d6e667789998a796857473625140300000000000000000000000000000000000000000000000000091a2b3b4c5d6d7d80776a57422d18030000000000000000000000001f34495d7076767667566a7676766e5b46311c001f344a5f748b97826b56402b16000005111a1f1f1f1f1f1a110500000000000000000000000009141b1f1f1f1f1e180f020000000000000000000000000000000000000000000000000008182938444a473e3123150600000000000000000000000000000000000000001b30455a6f8499917c68546072848b79675544323d5064788d9c88735e4934200a00000000000004111e2a3a464b4b5054555654514c4b473c2d201407000000000000001f344a5f748b9d88725c473b434a4f525352504b453b312516070000000000000000000b1a27323b414343413b332a3441494a4a473e301f0d00000000000015283947505252525046372512000004172a3b49515252524f453624110013283c5165798da18f7d6d615c5b5e646d788694857d948d77625746331f0a001f344a5f748ba08b7466666666666666666664605a51483c30231404000000001f34495e738998836d58432e1b161a263445566973685d5143321f0b000000001e33485e73899f89735e48331e090000001a2f445a6f869b8d77624c37220d0000001f344a5f748b9d88725c47321d00000000001122324354657687988c7a7385958e7d6c5b4a39291807000000000000000000000000000000000000000000000000000616273848596a7a8c8f7c6b57422d18030000000000000000000000001f344a5f748b8c806a576c838c88725c47321d001f344a5f748b97826b56402b1600000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000b1a273034332b2113050000000000000000000000000000000000000000001e33485d72889d8c77624d5466778a8573614f3e354a5e73889d8c77624c37220d000000000000000e223648586060605f54515e6060605a4b39261100000000000000001f344a5f748b9d88725c47322f353a3c3e3d3b3731281f1307000000000000000000000009151f272c2e2e2c272017242e343434332b2012010000000000001c314457646767676355422e1a05000a1f334759656767676353412d1800182d41566b80949985725f4f474649515b6875869180948d77624c39291704001f344a5f748ba08b7b7b7b7b7b7b7b7b7b7b78746d645a4e41322313030000001f344a5f748b98836c57422d19090816273a4b595e564b3f34251402000000001e33485e73899f89735e48331e090000001a2f445a6f869b8d77624c37220d0000001f344a5f748b9d88725c47321d0000000000041525364758697a8b998880919282705f4e3d2c1c0b000000000000000000000000000000000000000000000000000011233445566677889583715f4d3b2814000000000000000000000000001f344a5f748b95806a576c839888725c47321d001f344a5f748b8b826b56402b16000000000000000000000000000000000004080a0b0b0b0a07030000000000000000000000000000000000000000000000000000000000000000000000000009141c1f1e180f03000000000000000000000000000000000000000000001f344a5f748b9f8a745f4a485a6c7d90806d5b4a38465b70869b8f78634e38230e0000000000000011273c516575767672605c6f7676766954402b1500000000000000001f344a5f748b9d88725c47321d212527292826221d150c0200000000000000000000000000020c1317191917130c06121a1f1f1f1e180f02000000000000001f344a5f747c7c7c715c47321c07000d22374c61767c7c7c705b46301b001b30455a6f8599927d6955423230353e4a58677789939c8d77624c37220d00001f344a5f748ba095919191919191919191918f8982776b5f504131200f0000001e33485e73889a85705b4836271a100a1c2d3b454844392e22160700000000001e33485e73899f89735e48331e090000001a2f445a6f869b8d77624c37220d0000001f344a5f748b9d88725c47321d0000000000000819293a4b5c6d7d8f938d968573635241301f0f000000000000000000000000000000000000000000000000000000192d4052637385958a77665342301e0c000000000000000000000000001f344a5f748b95806a576c839888725c47321d001f34495d7074747468543f2a150000000000000000000000000000060d14191d1f2121211f1c18120c04000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001f344a5f748b9f89735e493d4e6072848b79675544445a6f869b8f79644f3a250f0000000000000012273c52677c8c8c77625e73898c826b56402b1601000000000000001f344a5f748b9d88725c47321d0c10121313110d080200000000000000000000000000000000000000000000000000000000000000000000000000000000001f344a5f748b9388725c47321d07000d22374c62778d9387705b46301b001e33485d72889c8e78644f3a261b212c3a495a6b7d91a38d77624c37220d00001f344a5f748ba09794949494949494949494979d95897c6e5f4f3e2c1b0800001c31465a6f84998b77655444372c22180f1d29313330271c10050000000000001e33485e73899f89735e48331e090000001a2f445a6f869b8d77624c37220d0000001f344a5f748b9d88725c47321d000000000000000c1c2d3e4f607082959e8977675645342313020000000000000000000000000000000000000000000000000000001d32475c70828b8b7d6c5a4836241301000000000000000000000000001f344a5f748b8b806a576c838b88725c47321d001a2e41515d5f5f5f594a39251100000000000000000000000006101a21282d323436363634312d2720180e0400000000000000000008101415151515151515151515151513110e090400000000000000000000000000000000050d11121212110c0400000000000000001f344a5f74899f8b75604b36435466778a8573614f475c70879c8e78634e38230e0000000000000012273c52677c938d77625e738997826b56402b1601000000000000001f344a5f748b9d88725c47321d07000000000000000000000000000000000000000000000000000000000000000000070e12121212110c03000000000000001f344a5f748b9d88725c47321d07000d22374c62778d9c87705b46301b001f34495e73899f8b75604b36210c0f1c2b3c4e6175899c8d77624c37220d00001f344a5f748ba08b7d7d7d7d7d7d7d7d7d7d8289949b8d7d6d5c4a3825120000182c4155697c909583726255493f352b1f13161c1e1b140a00000000000000001e33485e73899f89735e48331e090000001a2f445a6f869b8d77624c37220d0000001f344a5f748b9d88725c47321d00000000000000112233445566768899998f7d6d5c4b3a2918070000000000000000000000000000000000000000000000000000001d32475c6f74747471604e3d2b190700000000000000000000000000001f34495d707474746755697474746e5b46311c0011233341494a4a4a463b2d1b0900000000000000000000000d19232d353c42474a4b4b4b4946413b342b211609000000000000000e1a24292a2a2a2a2a2a2a2a2a2a2a2a2826231e19120a020000000000000000000000000c1821262727272620170a000000000000001d32475c71879b8e7964503c37485a6c7d90806d5b4b60748a9f8b76604c37210c0000000000000012273c52677c938d77625e738997826b56402b1601000000000000001f344a5f748b9d88725c47321d0700000000000000000000000000000000000000000000000000000000000000000d192227272727261f15080000000000001f344a5f748b9d88725c47321d07000d22374c62778d9c87705b46301b001f344a5f748b9f89735e49341f0a000d1f31455a6f869b8d77624c37220d00001f344a5f748ba08b746868686868686868686d7683919c8b796754412e1b070012263a4d60728595908273675c52473d312315060000000000000000000000001e33485e73899f89735e48331e090000001a2f445a6f869b8d77624c37220d0000001f344a5f748b9d88725c47321d0000000000000d1e2f4051617284958e86998b7a695847362514030000000000000000000000000000000000000000000000000000192c3f515d5f5f5f5e5343311f0d0000000000000000000000000000001a2e41515d5f5f5f584c5a5f5f5f5c503e2b17000515232e34343434322a1d0f0000000000000000000002101e2a36404950575c5f6060605e5b554f473e33271a0c00000000000c1d2c373e3f3f3f3f3f3f3f3f3f3f3f3f3e3b37332d261e150b010000000000000000000a1b2a353b3c3c3c3b342819080000000000001a2f44586d829694806b5744323d4e6072848b796755677a8f9b86715d48331e090000000000000012273c52677c8b8b77625e73898b826b56402b1601000000000000001f344a5f748b8b88725c47321d07000000000000000000000000000000000000000000000000000000000000000c1d2b363c3c3c3c3a3226170600000000001f344a5f748b9d88725c47321d07000d22374c62778d9c87705b46301b001f344a5f748b9f89735e48331e0900021a2f445a6f869b8d77624c37220d00001f344a5f748ba08b745f535353535353535359647283949785715d4a36220e000a1d304355667686939185796f645a4e413324140400000000000000000000001e33485e73899f89735e48331e090000001a2f445a6f869b8d77624c37220d0000001f344a5f748b9d88725c47321d0000000000091a2b3c4d5e6e809194837b8d988775655443322110000000000000000000000000000000000000000000000000000010223240484a4a4a49423525140200000000000000000000000000000011233341494a4a4a453c464a4a4a483f32210f000005111a1f1f1f1f1d170c000000000000000000000111202e3b48535c656b707476767673706a635a5045382a1b0c0000000016293b495354545454545454545454545453504c47413a31281e1307000000000000000015283947505252525046372512000000000000152a3e53677b8f9b8873614f3e31435466778a85736170839694806b57432e1a050000000000000011263b506474747471605c6f74747468543f2a1500000000000000001f34495d707474746e5b46311c0700000000000000000000000000000000000000000000000000000000000004172a3b49515252524f4435231000000000001f344a5f748b9d88725c47321d07000d22374c62778d9c87705b46301b001f344a5f748b9f89735e48331e0900001a2f445a6f869b8d77624c37220d00001f344a5f748ba08b745f4a3e3e3e3e3e3e3f47546476899c8d7965513d2814000114263749586775828d968c82776c5f514232211000000000000000000000001e33485e73899f89735e48331e090000001a2f445a6f869b8d77624c37220d0000001f344a5f748b9d88725c47321d000000000516273849596a7b8d9887756e809094837161503f2e1d0c000000000000000000000000000000000000000000000000000414222d33343434342f251708000000000000000000000000000000000515232e34343434312a32343434332d221303000000000000000000000000000000000000000000000e1f2f3e4c59656f788086898c8c8b89857d766d625648392a19080000001d314558676a6a6a6a6a6a6a6a6a6a6a6a6865615c554d443b3024180b000000000000001c314457646767676355422e1a0000000000001024384c6073879a917d6d5c4d3f37485a6c7d90806d7a8d9e8b7764503c281400000000000000000d213547575f5f5f5e53515d5f5f5f594a39251100000000000000001a2e41515d5f5f5f5c503e2b17030000000000000000000000000000000000000000000000000000000000000a1f3347596567676762523f2b1702000000001f344a5f748b9d88725c47321d07000d22374c62778d9c87705b46301b001f344a5f748b9f89735e48331e0900001a2f445a6f869b8d77624c37220d00001f344a5f748ba08b745f4a3429292929292a3647596d829595806b57422d180000081a2b3a4957646f7a858f94897d7060503f2d1b08000000000000000000001e33485e73899f89735e48331e090000001a2f445a6f869b8d77624c37220d0000001f344a5f748b9d88725c47321d000000011223344455667789998b79686172849490806e5d4c3b2a1908000000000000000000000000000000000000000000000000000511191e1f1f1f1f1b120700000000000000000000000000000000000005111a1f1f1f1f1d171d1f1f1f1e191004000000000000000000030f171c1d1d1d1a140a000000091a2c3d4d5c6a77838c949a9a9898989b99938a80736657483725140100001f344a5f748080808080808080808080807c7976706961574d4236281b0c0000000000001f344a5f747c7c7c715c47321c000000000000091c3044576a7c8f9c8b7a6a5d5148434f6072848b79889992826e5b4834210d000000000000000005182a39444a4a4a494240484a4a4a463b2d1b09000000000000000011233341494a4a4a483f32210f000000000000000000000000000000000000000000000000000000000000000d22374c61767c7c7c6f5a442f1a05000000001f344a5f748b9d88725c47321d07000d22374c62778d9c87705b46301b001f344a5f748b9f89735e48331e0900001a2f445a6f869b8d77624c37220d00001f344a5f748ba08b745f4a341f13131313182a3e51667a909a86705b46311c0000000d1c2b3947525d67727c88958e7d6e5c4a372410000000000000000000001e33485e73899f89735e48331e090000001a2f445a6f869b8d77624c37220d0000001f344a5f748b9d88725c47321d0000000e1f2f4051627385958f7d6d5c55657688988c7a695948372615040000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000413212b313232322f271b0d00001326384a5b6b7a889599908986838383868b929c928575655543311e0b00001f344a5f748b9595959595959595959594938f8b857d746a5f5346392a1b0b00000000001f344a5f748b9388725c47321d0000000000000114273a4d5f71839399897a6e635c58575b66788a899597867563513e2b18050000000000000000000c1b2831343434342f2d33343434322a1d0f0000000000000000000515232e34343434332d221303000000000000000000000000000000000000000000000000000000000000000d22374c62778d93866f5a442f1a05000000001f344a5f748b9d88725c47321d07000d22374c62778d9c87705b46301b001f344a5f748b9f89735e48331e0900001a2f445a6f869b8d77624c37220d00001f344a5f748ba08b745f4a341f0a0000000e23384d62778c9d88725c47321d000000000d1c2935404b555f6a7686978c7967533f2b17030000000000000000001e33485e73899f89735e48331e090000001a2f445a6f869b8d77624c37220d0000001f344a5f748b9d88725c47321d00000a1a2b3c4d5e6f8091928270604f4859697a8c988876655444332211000000000000000000000000000000070e1313131313100900000000000000000000000000000000081013131313130e07000000000000000000000712191c1d1d1d1a14090000000000000000001022323e4647474743392b1a08001b2f43556778899893877c75706c6c6d7076808b99948472604d3a271300001f344a5f748ba0928f8f8f8f8f8f8f8f8f91949a9991887c7164564839291908000000001f344a5f748b9d88725c47321d000000000000000b1e30425364758594998c8077706c6c7076808a9c96887868574534210f00000000000000000000000a151c1f1f1f1f1b191e1f1f1f1d170c000000000000000000000005111a1f1f1f1f1e19100400000000000000000000000000000000000000000000000000000000000000000d22374c62778d9b866f5a442f1a05000000001f344a5f748b9d88725c47321d07000d22374c62778d9c87705b46301b001f344a5f748b9f89735e48331e0900001a2f445a6f869b8d77624c37220d00001f344a5f748ba08b745f4a341f0a0000000c21364b60768c9e89735e48331e00000000000b17232e38424d5967788b96836e5a46311c080000000000000000001e33485e73899f89735e48331e090000001a2f445a6f869b8d77624c37220d0000001f344a5f748b8f88725c47321d0006162738495a6b7c8d9786746453423b4c5d6d7d8f94837261503f2f1e0d000000000000000000000000000d19232829292928241c1002000000000000000000000000010f1b24282929292823190d00000000000000000918252e323232322f271b0c0000000000000000192d3f505b5c5c5c5749372410001f34495e72859792837569605b5857585c636d7a8a9b907d6a56432e1a06001f344a5f748ba08b7878787878787878787b80868d969a8f8274665747372614030000001f344a5f748b9d88725c47321d00000000000000011324364757667583909b938b868383858a929c938e7b6a5a4a392816050000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000d22374c62778d9b866f5a442f1a05000000001f344a5f748b9d88725c47321d07000d22374c62778d9c87705b46301b001f344a5f748b9f89735e48331e0900001a2f445a6f869b8d77624c37220d00001f344a5f748ba08b745f4a341f0a0303041225394e63788d9c87725c47321d00000000000006111b26303b4a5c6f839789745f4a35200b0000000000000000001e33485e73899f89735e48331e090000001a2f445a6f869b8d77624c37220d0000001f34495e72787878705c47311c0012243445566778899a8a78685746352e3f4f6071839390806e5d4c3b2a190600000000000000000000000b1c2b363d3e3e3e3d382e200f0000000000000000000000000e1f2d383d3e3e3e3d362b1c0b00000000000003162736414747474743382a1907000000000000001e33485c6e72727267533f2a15001e33485c6e7d8c847364574d4643424347505c6c7d909a86725d4935200b001f344a5f748ba08b746363636363636364666b7179838f9b93857565554432200e0000001f344a5f748b9d88725c47321d000000000000000007182939485765727d8991989a98989a99938a808888776655422e1a0500000000000000000000000000000000000000081014151515130e0500000000000000000000000000000000000000000000000002090c0c070200000004080d10121212100d09030000000000000000000d22374c62778d9b866f5a442f1a05000000001f344a5f748b9d88725c47321d07000d22374c62778d9c87705b46301b001f344a5f748b9f89735e48331e0900001a2f445a6f869b8d77624c37220d00001f344a5f748ba08b745f4a341f1919191920304155687c9298836e59442f1a000000000000000009131e2c3f54687d938d77624d38230e0000000000000000001e33485e73899f89735e48331e090000001a2f445a6f869b8d77624c37220d0000001b2f4354616363636052402d19001a2e4152637485968e7c6c5b4a392821324353647587978c7b6a594836220e000000000000000000000015283a4852535353534b3e2d1a070000000000000000000006192c3d4b5253535352483a28150000000000000b1f3345545c5c5c5c564836230f000000000000001f344a5f748888826b56402b1600192d3f505f6d7b796655463a312d2c2e333e4e6175899e8d77634e39240f001f344a5f748ba08b745f4e4e4e4e4e4e4f51565d66717d8c9a948372614f3d2b180500001f344a5f748b9d88725c47321d0000000000000000000b1b2a394754606b757d8388898988847d776d7b8484715c47321c070000000000000000000000000000000000000e1a24292a2a2a2822170a000000000000000000000000000000000000000000000a151e22211c17141214191d212527272726221d171008000000000000000d22374c62778d9b866f5a442f1a05000000001f344a5f748b9d88725c47321d07000d22374c62778d9c87705b46301b001f344a5f748b9f89735e48331e0900001a2f445a6f869b8d77624c37220d00001f344a5f748ba08b745f4a342e2e2e2e2e323e4d5f718598917d6854402b170000000000000000000111263b50667b908f79644f3a250f0000000000000000001e33485e73898d89735e48331e090000001a2f445a6f868b8b77624c37220d000000132536444c4e4e4e4c43342311001f34495d70828b8b82705f4e3d2c1b142536475868798b8b887765513c271100000000000000000000001c31455866686868685c4a37230f000000000000000000000e2235495b67686868665845311c00000000000010253a4e627172727266523e2914000000000000001f344a5f748b97826b56402b1600102232414f5d6b6c5c4937281d1817192031465a6f859a907b66503b2611001f344a5f748ba08b745f4a38383838383a3d424a545f6d7b8c9c90806d5a4734210e00001f344a5f748b9d88725c47321d000000000000000000000c1b2937434e5961696e727373726f6a635d6c6e6e695844301b0600000000000000000000000000000000000c1d2c373e3f3f3f3d3528190700000000000000000000000000000000000000000a1a28323736302c2927292d32363a3c3c3c3b37322b241b100200000000000d22374c62778d9b866f5a442f1a05000000001f344a5f748b9d88725c47321d0a000d22374c62778d9c87705b46301b001f344a5f748b9f89735e48331e0900001a2f445a6f869b8d77624c37220d00001f344a5f748ba08b745f4a434343434343464f5c6b7c8f9c8975614e3a2511000000000000000000000f243a4f64787b7b78644f3a240f0000000000000006121e33485d70777777705d48331e12060000192e43586b74747471604b36210c000000192c3e4f595b5b5b584d3c2a16001f34495d7074747472635241301f0e0718293a4b5c6d7474747464503b261100000000000000000000001f344a5f747d7d7d7966523f2b1804000000000000000003162a3e5165787d7d7d745f4a341f00000000000011263b50667b8888806a543f2a15000000000000001f344a5f748b97826b56402b1600041423313f4e58584e3f2d1a0b020004192e43586d8398937c67523c2712001f344a5f748ba08b745f4a342323232324282e37424f5d6d7d909c8a7764513e2a1602001f344a5f748b9d88725c47321d00000000000000000000000b1925313c464e54595d5e5f5d5a554f4e575858564b3b281501000000000000000000000000000000000016293b495354545451463624110000000000000000000000000000000000000003162838454c4a45413e3c3e42474b4f525252504c463f372d201000000000000d22374c62778d9b866f5a442f1a05000000001f344a5f748b9e8974604d3a2817090e23384e63788d9c87705b46301b001f344a5f748b9f89735e48331e0900001a2f445a6f869b8d77624c37220d00001f344a5f748ba08b745f585858585858585b616d7a8a9a907d6c5946321e0a000000000000000000000c2135495a656666655a4935210c0000000000000616242f3541525f6262625f5241352e2315050015293c4e5b5f5f5f5e5343301c080000001e33485c6d7070706b5945301b001a2e41515d5f5f5f5e544534231201000b1c2d3e4f5c5f5f5f5f574735210d00000000000000000000001d32465a6d829494826e5b4733200c00000000000000000b1e3246596d829494826e5a47321e00000000000011263b50667b9195806a543f2a15000000000000001f344a5f748b97826b56402b160000041321303c43443d30211008090a0d1b2f44596e8499917b66513c2712001f344a5f748ba08b745f4a341f0e0e0e0f131a24313f4f6072859894826d5945311d09001f344a5f748b9d88725c47321d00000000000000000000000008141f29323a404548494a4845413b3c424343413a2d1d0c0000000000000000000000000000000000001d314558676a6a6a6454402c18030000000000000000000000000000000000000a1e324556615f5a56535253575c606467676765605b534a3e2e1b08000000000d22374c62778d9b866f5a442f1a05000000001f344a5f748ba0907c69574535261a12263b5065798f9b866f5a442f1a001f344a5f748b9f89735e48331e0900001a2f445a6f869b8d77624c37220d00001f344a5f748ba08b746e6e6e6e6e6e6e6e7075808b99948472614f3c291603000000000000000000000a1e30414f565656554d3e2d1a06000000000000122434424a4b4b4b4c4c4c4b4b4b4a4133231100112333414a5158574d42352514010000001f344a5f74878787725c47321d0011233341494a4a4a4943362716050000000f20313e484a4a4a4a44392a18050000000000000000000000172b3e5265798d9e8a76634f3b2814000000000000000013273a4e6175899d8d7966523f2b1800000000000011263b50667b9195806a543f2a15000000000000001f344a5f748b97826b56402b1600000003121f292e2f2920131a1e1e1f222a384a5e72889c8e78644f3a2510001f344a5f748ba08b745f4a341f0a00000000071321324355677b8f9c8975604c38230f001f344a5f748b9d88725c47321d00000000000000000000000000020c161e262b3033343433302c27292d2e2e2d271c0f000000000000000000000000000000000000001f344a5f748080806f5a442f1a0500000000000000000000000000000000000011263a4e6274736e6b6867686c7075787c7c7c79756f665c4b38230f000000000d22374c62778d9b866f5a442f1a05000000001f344a5f748ba0998674635344372d262b3f54687d9298836e58432e19001f344a5f748b8b89735e48331e0900081a2f445a6f868b8b77624c37220d00001f344a5f748ba08c848484848484848484868a929c928575655543321f0d00000000000000000000001025394d5f6b6b6b6a5c4a36210c0000000000001a2e41525e606060594b5a6060605e51402d19001a2e41515d656c6a5b4a3a2918070000001f344a5f748b9c88725c47321d000515232e34343434342f251809000000000213212c333434343431281b0c0000000000000000000000000f22364a5d718598927d6a5743301c08000000000000081b2f42566a7d919986715e4a37230f00000000000011263b50667b9195806a543f2a15000000000000001f344a5f748b97826b56402b1600000000010d1519191518252e333334373d4756677a8e9c88745f4a36210c001f344a5f748ba08b745f4a341f0a0000000000031426384c5f73879b907b66523d2914001f344a5f748b9d88725c47321d000000000000000000000000000000030b11171b1e1f1f1e1b18121418191918130a00000000000000000000000000000000000000001f344a5f748b95866f5a442f1a05000000000000000000000000000000000000192d4155697c8884807d7c7d82868a8e9193928f8a837a66513c2712000000000d22374c62778d9b866f5a442f1a05000000001f344a5f748b9b8b92827162554a403b3b475a6e839795806b56402c16001f34495d707474746f5c4732241a0e1a242e43586b74747471604b36210c00001f344a5f748ba09c9999999999999999999a9b958c807366574737261402000000000000000000000012273c52677c828278634e38230e0000000000001f34495d707676766754697676766f5c47321d001f34495d707982796858473625150400001f344a5f748b9d88725c47321d000005111a1f1f1f1f1f1b1308000000000000030f191e1f1f1f1f1c150a00000000000000000000000000071a2e4155697c909a87735f4b3824100707070707071023374a5e728699917d6956422e1b0700000000000011263b50667b9195806a543f2a15000000000000001f344a5f748b97826b56402b16000000000000000002152736424848494c50596574859792806c5845311c08001f344a5f748ba08b745f4a341f0a000000000000091c3043586c829695826c57422d18001f344a5f748b9d88725c47321d0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001f344a5f748b9b866f5a442f1a050000000000000000000000000000000000001d32475c7084989895939393969a9794908f8f92978c77634f3a2611000000000d22374c62778d9b866f5a442f1a05000000001f344a5f748b988389908273675c5550505765778a9e907b66523d2813001a2e41515d5f5f5f5d51403f372b1f2c373f404e5b5f5f5f5e5343301c0800001f344a5f748ba08f898989898989898989898680786e6356483929190800000000000000000000000012273c52677c938f78634e38230e0000000000001f344a5f748b8c806a566b828c89735e48331e001f34495d708395867564544332221100001f344a5f748b9d88725c47321d00000000000000000000000000000000000000000000000000000000000000000000000000000000000000001226394d6074889c8f7a6753402c1d1d1d1d1d1d1d1d2b3f53667a8e9c8975614e3a26130000000000000011263b50667b9195806a543f2a15000000000000001f344a5f748b97826b56402b1600000000000000000a1e3244545d5e5e60656c76839297877563503d291501001f344a5f748ba08b745f4a341f0a0000000000000014293e52677c919a856f5a45301b001f344a5f748b9d88725c47321d0000000000000410181c1e1e1e1c171108000000000000000000000000000000000000000000010a101517171714110c0700000000001f344a5f748b9b866f5a442f1a060502000000000000000000000000000000001d32475c6f808f97828688898987837d7b78797c8286715d4834200c000000000d22374c62778d9b866f5a442f1a05000000001f344a5f748b98837c8d918579706966656a7483949c8975614c38240f0011233341494a4a4a484d5553493c303d4953554d474a4a4a49423525140100001f344a5f748ba08b74737373737373737373716c655c5145382a1b0b0000000000000000000000000012273c52677c938f78634e38230e0000000000001f344a5f748b95806a566b829789735e48331e001a2e415365778a93837161503f2f1d0b001f344a5f748b8b88725c47321d00000000000000000000000000050f16191711080000000a131818150d0200000000000000000000000000000a1d3145586c809397836f5c4834323232323232323233475b6e839694806d5945321e0a0000000000000011263b50667b9195806a543f2a15000000000000001f344a5f748b97826b56402b1600000000000000000f24394d61727373767980899494887868574533200d00001f344a5f748ba08b745f4a341f0a000000000000000f24394e63788e9d88725d48331e001f344a5f748b9d88725c47321d00000000000514222c31333333312b241b0f0200000000000000000000000000000000000009141e252a2c2c2c2926211b13080000001f344a5f748b9b866f5a442f1b1b1a17120c0500040c111313130f0800000000192d4051617080908e7d737373706d69666364686d736956422e1905000000000d22374c62778d9b866f5a442f1a05000000001f344a5f748b98836e7d8c968c847d7a797d8692a192806d5946321e09000515232e34343a4a56606a675a4d414e5a676a60564a3a34342f2517080000001f344a5f748ba08b745f5e5e5e5e5e5e5e5e5c5751493f33271a0c000000000000000000000000000012273c52677c938f78634e38230e0000000000001f344a5f748b95806a566b829789735e48331e00122436485a6c7d9090806e5d4c3a2713001f34495d707474746e5b46311c0000000000000000000000000a16222a2e2c251a0c04101c272d2d29201304000000000000000000000000000215293c5063778b9f8b776350474747474747474747474f63768a9e8c7864513d2a16020000000008101415263b50667b9195806a543f2a15141009000000001f344a5f748b97826b56402b1600000000000000000f253a4f647989898b8f94918a8276695a4a3a28160400001f344a5f748ba08b745f4a341f0a000000000000000c21364b60768c9f89735f4a341f001f344a5f748b9d88725c47321d00000000001123323f464848484640372d201203000000000000000000000000000000000c1a2731393f4242413e3a352e25190a00001f344a5f748b9b866f5a442f30302f2c2620180f172026292928231b0f0100001123334252617182928c7b6a5e5c5855514e4f53595e594b3a271300000000000d22374c62778d9b866f5a442f1a05000000001f344a5f748b98836c6d7a869198939090939a9f93857463503d2a1603000005111a1f2e435768737d776b5e525f6b787c726857432e1f1b1207000000001f344a5f748ba08b745f4a4848484848484847433d352c22160a00000000000000000000000000000012273c52677c8b8b78634e38230e0000000000001f344a5f748b8b806a566b828b89735e48331e0007192b3d4e6072858b8b7b6a56412c17001a2e41515d5f5f5f5c503e2b1700000000000000000000030f1b27343e4340372a1a15212d3a41433d31221100000000000000000000000000000d2134485b6f839793806c5c5c5c5c5c5c5c5c5c5c5c5c6b80939884705c4935210e000000000e1a24292a2a3b50667b9195806a543f2a2a29251c0f0100001f344a5f748b97826b56402b1600000000000000000f253a4f64799097989c8f827b73685b4c3d2d1c0b0000001f344a5f748ba08b745f4a341f0a000000000000000b20354a5f748ba08b745f4a341f001f344a5f748b9d88725c47321d00000000071b2e41505b5e5e5e5a544a3e3021100000000000000000000000000000000b1b2a38444d53575756534f4a4237281704001f344a5f748b9b866f5a4444464644403b342b2229333b3e3e3d372d1f0e0000051525344453637485978876645243403c393a3f4548453b2d1c0a00000000000d22374c62778d9b866f5a442f1a05000000001f344a5f748b8b836c5d68737d868c909393918b827566564533210e0000000000061b30465b708290897c6f63707d8a8f82705b46301b060000000000001f344a5f748ba08b745f4a34333333333333322e2922190f040000000000000000000000000000000011263b506474747472614c38230d0000000000001f34495d707474746754687474746f5c47321d00000d1f31435567747474746955412c170011233341494a4a4a483f32210f0000000000000000000814202c394551585448372527333f4b56584f402e1b070000000000000000000000000005182c4053677a8e9b887472727272727272727272727273879b8f7b6854402d19060000000c1d2c373e3f3f3f50667b9195806a543f3f3f3f382d1f0e00001f344a5f748b97826b56402b1600000000000000000f253a4f6479828283878d968f85796a5b4a3826130000001f344a5f748ba08b745f4a341f0a000000000000000b21364b60758ba08b745f4a341f001f344a5f748b9d88725c47321d000000000c21364a5e6e7373736f675c4e3f2e1d0b0000000000000000000000000005172939485660686c6c6b68645e554634200c001f344a5f748b9b866f5a53585b5b59554f473e343b464f5353524a3d2c1a06000007162636465667798b94826f5c49352724252a303331291d0f0000000000000d22374c62778d9b866f5a442f1a05000000001f34495d70747474695557616a71777b7c7d7b766f64574838281604000000000000182d41536371808e8d8074828e8e80716353412d18040000000000001f344a5f748ba08b745f4a341f1e1e1e1e1e1d19140e060000000000000000000000000000000000000d213547575f5f5f5e5444311e090000000000001a2e41515d5f5f5f584a595f5f5f5d513f2c1900000214263849585f5f5f5f5a4c3a2612000515232e34343434332d22130300000000000000010d1a26323e4a56626d6654402c3844505c696c5e4b36210d00000000000000000000000000001024374b5f72869a908888888888888888888888888888909b8773604c3825110000000016293b495354545454667b9195806a54545454534b3d2b1805001f344a5f748b97826b56402b1600000000000000030d22374b5d6a6b6b6e72798390978979685643301c0900001f344a5f748ba08b745f4a341f0a000000000000000d22374c62778c9e89735e48331e001f344a5f748b9d88725c47321d000000000d22374c627788898883796c5d4c3a2815020000000000000000000000000e2134475766737c8283827d787263503b2611001f344a5f748b9b866f5f686d70706e6a635b51464a58636868665b4936210d000000081828384a5b6d80938c7865513d291410161c1e1c160c000000000000000d22374c62778d9b866f5a442f1a05000000001a2e41515d5f5f5f5a4c444e565d6266676866625b5246392a1b0a000000000000001124364553616f7d8c9287928b7d6f615345362411000000000000001f344a5f748b8b8b745f4a341f0a00000000000000000000000000000000000000000000000000000005182a39444a4a4a49433626150200000000000011233341494a4a4a453b464a4a4a4840322210000000091a2c3b454a4a4a4a463c2e1d0a000005111a1f1f1f1f1e1910040000000000000006131f2b37434f5c6874806e58433d4a56616e7a78634e38230e0000000000000000000000000000081b2f43566a7d92a09795959595959595959595959597a093806b5744301d09000000001d314558676a6a6a6a6a7b9195806a6a6a6a6a685a48341f0b001f344a5f748b97826b56402b1600000000000913181a1b2e3f4e555656595d667282929785725f4c38241000001f344a5f748ba08b745f4a341f0a0000000000000011263b5064798f9b87715c47321c001f344a5f748b9d88725c47321d000000000d22374c62778d999c978b7a6a5845311e0a000000000000000000000000162a3e5164758590979896928d7b66513c2712001f344a5f748b9b866f717b838687847d776e64585868767d7d79644f3a240f000000000a1b2c3e5063778b95806c57422e190b0b0903000000000000000000000d22374c62778d9b866f5a442f1a050000000011233341494a4a5050504c4042494d515253514d473f35281b0c00000000000000000718273643515f6d7b8a8b897a6d5f514335271807000000000000001f34495d70747474705d49341f09000000000000000000000000000000000000000000000000000000000c1b2831343434342f251809000000000000000515232e34343434312a32343434332d221404000000000e1d293134343434322a1e1000000000000000000000000000000000000000000c1824303c4855616d7986846e58434f5b6773808c78634e38230e00000000000000000000000000000013273b4e6275899c87808080808080808080808080879c8a76634f3b281401000000001f344a5f74808080808080919580808080808077624c37220d001f344a5f748b97826b56402b16000000000d1b262d2f2b23303b404041444a546374879a8f7b67533e2a1500001f344a5f748ba08b745f4a341f0a00000000000004172b4054697d9397836d59442f1a001f344a5f748b9d88725c47321d000000000d22374c627784848894998875614d3a26120000000000000000000000001b3045596d8293a3968e8c8d8c76614d38230f001f344a5f748b9b8672828f979b9b98938b827569627587939079644f3a250f000006121b202134485c70869a86705c47322121211e170c0000000000000000000d22374c62778d9b866f5a442f1a05000000000515232e364a5b6566665e4d424c545b5e5e5c554c403223120100000000000000000009182533414f5d6b7474746a5d4f413325170900000000000000001a2e41515d5f5f5f5d51412e1a0600000000000000000000000000000000000000000000000000000000000a151c1f1f1f1f1b130800000000000000000005111a1f1f1f1f1d171d1f1f1f1e1911050000000000000c161d1f1f1f1f1d170d0000000000030b0f0f0f0f0d0700000000000005111d2936424e5a66727d8b94846e5854606c7885918f78634e38230e0000000000000000000000000000000b1f32465a6d82958e7a6a6a6a6a6a6a6a6a6a6a7a8e96836e5b4733200c00000000001f344a5f748b95959595959c9e95959595958d77624c37220d001f344a5f748b97826b56402b160000000e1d2b3942443f3526272b2b2c2f3745576a809396826c58432e1904001f344a5f748ba08b745f4a341f0a0000000000000d2033475b6f8397937d6954402b16001f344a5f748b9d88725c47321d000000000b20354a5d6d6e6e758799917c6955412e1a0600000000000000000000001f34495e73889d95857976777d725d48341f0a001f344a5f748b9b868091928a8786888c939387796b7c929e9079644f3a250f000616242f35363643586d839889735e493636363632291d0d00000000000000000d22374c62778d9b866f5a442f1a0500000000000511263b5065797b7b6954555f686f737370695d5041301e0c00000000000000000000081523313f4d5a5f5f5f5a4c3f3123150700000000000000000011233341494a4a4a494133231100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000a161f24252525221b10030000000a16222f3b47535f6b7784908f8376695966727d8a95897d70604c37220d00000000000000000000000000000003172a3e5165798d96836e5b5454545454545b6f83968e7a66533f2b180400000000001f344a5f748b9090909090989b90909090908d77624c37220d001f344a5f748b97826b56402b1600000e1d2c3b49565a524433211616171a273b50667b909a866f5a45301b06001f344a5f748ba08b745f4a341f0a00000000000a1a2b3d4f62768a9e8d78644f3b2611001f344a5f748b9d88725c47321d00000000071b2e404f5959596a7c909985715d4936220e00000000000000000000001f344a5f748ba08c77666063696656432f1a06001f344a5f748b9b868b8d807670707277808a968a797c93928076634e39240f00122434424a4b4b4b576c83988b745f4b4b4b4b4b463b2b1a07000000000000000d22374c62778d9b866f5a442f1a0500000000000010253a4f64798e83706469727b848889857b6e5f4e3b281502000000000000000000000513212f3d474a4a4a463c2e211305000000000000000000000515232e34343434342e2315050000000000000000000000000000000000000000000b14181919191919191919191919191919191919160f05000000000002090d0e0e0e0c0a0e0e0e0e0b0c0e0e0e0e0a020000000000000000000000000000000009192733393a3a3a362d2111000009192734404c5864707d89958a7d71655f6b7783909084776b5f5243301d09000000000000000000000000000000000e2236495d7085988a76634f3f3f3f3f4f63768a9986725e4a3723100000000000001f34495e7379797979797b919580797979797975614c37220c001f344a5f748383826b56402b1600081a2c3b4a59676f62503e2e221a181b263b50657a909c87705b46301b06001f344a5f748ba08b745f4a341f0a02020408101b2837485a6c80929986715d4935210c001f344a5f748b8b88725c47321d00000000001122313d44444d6074889c8d7965513e2a1602000000000000000000001f344a5f748b9d88735e4b4e54524838271400001f344a5f748b9f90907d6e625c5b5d646d788593877c938f7863584734200c001a2e41525e606060606e84998873606060606060594937230f000000000000000d22374c62778b8b866f5a442f1a050000000000000d21364a5f72868f80797c858f8f89898e8d7c6b5845311d09000000000000000000000003111f2b32343434322a1e100300000000000000000000000005111a1f1f1f1f1f1a1105000000000000000000000000000000000000000001111e282d2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2a22160700000009151e23232323211f232323231f20232323231e1509000000000000000000000000000000142637454e4f4f4f4a3f2f1d0a0014263745515e6a76828f9185786c6064707c89958b7d72665a4e413425130100000000000000000000000000000000061a2d4154687c9093806b5744303043576b8092917d6956422f1b080000000000001b3043556264646464667b9195806a64646464635746321e09001d32465a696c6c6c63513e29140010243749596876806d5c4c3f352f2e2f364456697d9399846f5a442f1a05001f344a5f748ba08b745f4a341f171717191d232d3846556677899c907c6956422e1a06001f34495d707474746e5b46311c00000000000413202a2f3144586c809495826d5945321e0a000000000000000000001f344a5f748b9d88725c473a3f3e362a1b0900001f344a5f748ba09986726050474649505a6775859380938f78634e3a2a1805001f34495d707676767676889a857676767676767566523d28130000000000000b1521364b60717474746b58432e1c12070000000000071c2f4356697a8a9390918f857a74737b8b8875604c38230e000000000000000000000000010e181e1f1f1f1d170d0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000e1f2f3b4243434343434343434343434343434343433e342514020008182631383838383533383838383335383838383227190900000000000000000000000000001b304355626464645d4c3a2611001b304355636f7b88948b8073675d6975828e9185796d6054483c302416070000000000000000000000000000000000001225394c6073889b8773604c38384c5f73879b8975614e3a271300000000000000142637454e4f4f4f50667b9195806a544f4f4f4e473928160300172a3c4c55575757524535220e0014293e536777878b7a6a5d51494443444a536172869994806b56412c1803001f344a5f748ba08b745f4a342c2c2c2c2e32373f4a5664738495978673604d3a261300001a2e41515d5f5f5f5c503e2b17000000000000030e161a293d5064778c9c8975614d3a2612000000000000000000001f344a5f748b9d88725c47322a2923190c0000001f344a5f748ba0937d6a56433330343d4957667788939b8f78634e38230e00001f344a5f748b8c8c8c8c909b8d8c8c8c8c8c8c7d68533e29130000000001111e28323c43535e5f5f5f5b4e3f392e24190b00000000001427394b5c6b788284837b72675f5e6d828b7a66513c2712000000000000000000000000000000000000000000000000000000000000000000000000020e161b1b1b1b1a150c010000000000040f171b1b1b1b1a150c0000000000182b3d4d5758585858585858585858585858585858585143321f0b00132536444c4e4e4e49464d4e4e4d47494e4e4e4d4537271401000000000000000000000000001f34495e7379797969543f2a14001f34495e73828d9286796d6155697b88948c8073675b4f43372b1f130600000000000000000000000000000000000000091d3144586b80938f7b6754404053677b8f95826d5946321e0b000000000000001a2e41525e60606060667b9195806a606060605f5444311d08001d314558676a6a6a61503d28140014293f53687b8e98897a6e645d5958595e667180909e8c7764503c281300001f344a5f748ba08b745f4a424242424243464b535c677483929c8b79685643301d0a0000142738464f5050504e453625120000000000000000000d2135485c708497917c6955422e1a060000000000000000001f344a5f748b9d88725c47321d140f07000000001f344a5f748ba08e78644f3b261b212b3948596a7d90a38f78634e38230e00001f344a5f748b909090949f91909090909090907d68533e2913000000000e1f2f3b454f5652494a4a4a4b54544b4137291907000000000a1c2e3e4d5b666c6e6d685f554b526674747464503b261100000000000b141818140c0100000610161917100700000000000000000000000000000313202a303030302f291e11010000000514212b303030302f281e10000000001e32475a6a6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6d614e3a2510001b2f4354616363635c5762636362585b636363615544301c08000000000000000000000000001f344a5f748b90806a543f2a15001f344a5f748b948074685c50546a80958a7a6e62564a3e3225190d0100000000000000000000000000000000000000000115283c5063778b9784705c48485c6f83978c7865513e2a1603000000000000001f34495d7076767676767b919580767676767672604b36210c001f344a5f748080806b56402b16001025384c5e708291998c8278726e6d6e7279838f9e91806e5c4835210d00001f344a5f748ba08b745f575757575757585b60666f7985929c8e7d6d5c4a3926140100001c304456636666666254412e1900000000000000000005192d4054677b909985715d4a36220e0000000000000000001f344a5f748b9d88725c47321d070000000000001f344a5f748ba08b76604b36210d0e1b2a3b4d6073889b8f78634e38230e00001f34495e73797979798b9683797979797979797968533d281300000000182b3d4d57616b64584b43505d69685e5447362410000000000010202f3d4952575858534c423848585f5f5f574735210d00000001111e282d2d281e12060917232b2e2b24180c000000000000000000000000000f21313d45464646443c2f1f0d0000001123323e45464646443b2e1e0c0000001f344a5f74848484848484848484848484848484847c67523c2712001f34495e727878786862757878766367787878735f4b35200b000000000000000000000000001f344a5f748b95806a543f2a15001f344a5f7483908d8274685c54697d8a93877a6e62564a3d3125190c0000000000000000000000000000000000000000000d2034475b6f83968c7764505063778b9884705d4935220e00000000000000001f344a5f748b8c8c8c8c8c95998c8c8c8c8c8c77624c37220d001f344a5f748b95826b56402b1600091c2f41526272828e99948d87848384878d969c90827262513e2c190500001f344a5f748ba08b746c6c6c6c6c6c6c6e70747a838c97998c7d6f5f4f3e2d1b090000001f344a5f737b7b7b715c47321c0000000000000000000d2033475a6e8295a18d7965513e2a160300000000000000001f344a5f748b9d88725c47321d070000000000001f344a5f748b9f89745f4a341f0a000d1e30445a6f869b8f78634e38230e00001b3043556264647083958c7966646464646464645c4b382410000000001e32475a6a748075695c54616e7a7a7065533f2b16000000000002111f2c363e4243433f382f2b3a454a4a4a44392a18050000000e1f2f3b42423b3024171727353f4340362a1e12050000000000000000000000192c3e4f595b5b5b584d3c2a160200071b2e41505a5b5b5b584c3b28150000001f344a5f748b9999999999999999999999999999937c67523c2712001f344a5f748b8f806a63788f8f7964687d8f8c76604b36210b000000000000000000000000001f344a5f748b95806a543f2a15001c31445766727d8b9286796d61606c7885918c8073675b4f43362a1e11020000000000000000000000000000000000000004182b3f53667a8e94806c59586c80938f7c6854412d190600000000000000001f344a5f748b99999999999fa199999999998d77624c37220d001f344a5f748b97826b56402b160000122334455462707c868f969b9998999c999289807263544433210f0000001f344a5f748ba08b83838383838383838486898f969c92877b6e60514131200f000000001f344a5f748b9188725c47321d00000000000000000115283c4f63768a9a9395826d5946321e0a00000000000000001f344a5f748b9d88725c47321d070000000000001f344a5f748b9f89735e48331e0900011a2f445a6f869b8f78634e38230e0000142637454e54677a8d93826e5c4f4f4f4f4f4f4f4a3e2e1c09000000001f344a5f748492877a6d6572808c8e806c57422c17000000000000010e1923292d2e2e2b241c1c283134343431281b0c00000000182b3d4d57574d413529213445535853473b2f23170b000000000000000000001e33485c6d7070706b5945301b06000c21364a5e6e7070706a58442f1a0000001f344a5f748b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b7c67523c2712001f344a5f748b95806a63788f907964687d948c76604b36210b000000000000000000000000001f344a5f748989806a543f2a15001528394854606d7986928b8072665b6773808d9185796c6054483b2f201000000000000000000000000000000000000000001023374b5e7286998875616073889b8873604c3925110000000000000000001f344a5f74848484848484929684848484848477624c37220d001f344a5f748b97826b56402b1600000617273644525e69737a8287898b8b88847d766c615445362716040000001f344a5f748ba09b9898989898989898999b9b9690888075695d504232231303000000001f344a5f748b9d88725c47321d00000000000000000a1d3144586b80938f82968975614e3a261200000000000000001f344a5f748b9d88725c47321d070000000000001f344a5f748b9f89735e48331e0900001a2f445a6f869b8f78634e38230e0000091927374a5e7185988a7664513f3a3a3a3a3a3a362d201000000000001c314457667382908c7d7683908b7d6f61503d29140000000000000000070f151819191610090b151c1f1f1f1c150a00000000001e32475a6a6b5f53473a2e3d51636e65594c4034281c100400000000000000001f344a5f74878787725c47321d07000d22374c6277878787705b46301b0000001f34495d70747474747474747474747474747474747464503b2611001f344a5f748b95806a63788f907964687d948c76604b36210b000000000000000000000000001e33485d6f73737366533e2914000a1b2a37434f5c6874828e9084776b5f626f7b88948a7d7165594d3e2d1a0600000000000000000000000000000000000000081b2f42566a7d91907c69687c9093806b5844301d090000000000000000001e32475a6a6e6e6e6e6e7b9195806e6e6e6e6e6c5d4935200b001f344a5f748b97826b56402b1600000009182634414c565f676d71737474736f6a63594f4336271809000000001f344a5f748b8b8b8b8b8b8b8b8b8b8b8b8986827b746c62584c3f3223140500000000001f344a5f748b9d88725c47321d00000000000000001226394d6074889a86798e917d6955422e1a07000000000000001f344a5f748b9d88725c47321d070000000000001f344a5f748b9f89735e48331e0900001a2f445a6f869b8f78634e38230e00000015293e5266798d95826d5a47342525252525252520170b000000000015283948566371808e908894897a6d5f514233210e000000000000000000000000000000000000000000000000000000000000001f344a5f747c7064584c403f546a80766a5e5246392e211509000000000000001f344a5f748b9c88725c47321d07000d22374c62778d9c87705b46301b0000001a2e41515d5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f574735210d001f344a5f748b8b806a63788b8b7964687d8b8b76604b36210b00000000000000000000000000192d40515c5e5e5e574937230f00000c1925323e4a5763707c8995897d70635d6a76838f8f83766a5c4a36210c000000000000000000000000000000000000000013273a4e6175899985717084988b7763503c281501000000000000000000182b3d4d5758585858667b9195806a58585858574e3f2d1a06001f344a5f748b97826b56402b16000000000916232f3a434b52585c5f5f5f5e5a554f463d3226180900000000001f34495d7074747474747474747474747473706c6760594f453a2e2114050000000000001f344a5f748b8b88725c47321d00000000000000081b2e4255697c90927d72869985715d4a36220f000000000000001f344a5f748b9d88725c47321d070000000000001f344a5f748b9f89735e48331e0900001a2f445a6f869b8f78634e38230e0000001a2e43586c82958d7865513e2a170f1b29343a3a34281a0b000000000a1b2a38455361707d8b8b87786a5d4f41332415040000000000000a1216161616161616161616161616161616130d03000000001f344a5f748b82756a5d5145546a80887c6f63574b3f33271a0e0200000000001f344a5f748b9d88725c47321d07000d22374c62778d9c87705b46301b00000011233341494a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a44392a1805001f34495d707474746761727474736266747474705e4a35200b000000000000000000000000001122323f4748484844392b1a070000000814212d3945525e6b7784908f826e585865717d8a948878634e38230e00000000000000000000000000000000000000000b1e3246596d82958d79788c96836f5b4734200d000000000000000000000e1f2f3b4243434350667b9195806a54434343423c30211000001f344a5f748b97826b56402b16000000000006121d2730383e43474a4a4a4845413b332a2014080000000000001a2e41515d5f5f5f5f5f5f5f5f5f5f5f5f5e5b57534c453c33281d1104000000000000001f34495d707474746e5b46311c000000000000001023374a5e71859989756a7d928d7965523e2a17030000000000001f344a5f748b9d88725c47321d070000000000001f344a5f748b9f89735e48331e0900001a2f445a6f869b8f78634e38230e0000001c32475c70879b88735e4935220e172839474f4f463829190a000000000c1a283643515f6d747474685a4d3f31231506000000000001101d262b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b282015060000001f344a5f748b94887b6f6356546a80928d8275685c5044382c201307000000001f344a5f748b9d88725c47321d07000d22374c62778d9c87705b46301b0000000515232e34343434343434343434343434343434343431281b0c00001a2e41515d5f5f5f58545e5f5f5e55585f5f5f5d52422f1b07000000000000000000000000000514222c3233333330281c0d0000000000030f1b2834414d596672808c846e584753606c79858f78634e38230e000000000000000000000000000000000000000003162a3d5164788c958280948e7a66533f2b18040000000000000000000001111e282d2e2e3b50667b9195806a543f2e2e2d291f120300001f344a5f748b97826b56402b16000000000000000a141c24292e3234343433312c261f170d030000000000000011233341494a4a4a4a4a4a4a4a4a4a4a4a4846433e38312920160b0000000000000000001a2e41515d5f5f5f5c503e2b1700000000000005182c3f53667a8d95826d63768a95826d5a46321e0b0000000000001f344a5f748b9d88725c47321d070000000000001f344a5f748b9f89735e48331e0900001a2f445a6f869b8f78634e38230e0000001d32475c72889c87705b46311c18243446576463564737281807000000000a182633414f5c5f5f5f584a3c2f2113050000000000000f1f2e3a404040404040404040404040404040403c3224140200001e33485c6e7a87938d8074685c6674828d92867a6e6155493d3125190c0000001f344a5f748b9d88725c47321d07000d22374c62778d9c87705b46301b0000000005111a1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1c150a00000011233341494a4a4a4543494a4a4943454a4a4a49413424120000000000000000000000000000000410191d1e1e1e1b150b00000000000000000a17232f3c4855616d7a846e5843424e5b67738078634e38230e0000000000000000000000000000000000000000000e2235495c7084988a889a86725e4b372310000000000000000000000000000b141819263b50667b9195806a543f2a1918140d020000001f344a5f748b97826b56402b16000000000000000001080f151a1d1f1f1f1e1c18120c040000000000000000000515232e3434343434343434343434343433312e29241d160d030000000000000000000011233341494a4a4a483f32210f0000000000000d2134485b6f83968d78655b6f83978975614e3a26130000000000001f344a5f748b9d88725c47321d070000000000001f344a5f748b9f89735e48331e0900001a2f445a6f869b8f78634e38230e0000001d32475c72879c88735e4a372a2c3542526375746555463624100000000000081523313e484a4a4a453a2c1e110300000000000005192c3d4c555656565656565656565656565656565042321f0b0000192d3f505d6975828e9286796d61636f7b88948c8073675b4f43362a1c0c00001f344a5f748b9d88725c47321d07000d22374c62778d9c87705b46301b000000000000000000000000000000000000000000000000000000000000000515232e34343434312f343434343031343434342e2416060000000000000000000000000000000000000000000000000000000000000000000005121e2b3743505c68746a5742313d4a56626f72614c38230d00000000000000000000000000000000000000000006192d4154687b8f9796927d6a56432f1b080000000000000000000000000000000011263b50667b9195806a543f2a15000000000000001f344a5f748b97826b56402b1600000000000000000000000000000000000000000000000000000000000000000005111a1f1f1f1f1f1f1f1f1f1f1f1f1f1e1c19150f09020000000000000000000000000515232e34343434332d22130300000000000216293d5064778b9884705d53677a8f917d6956422e1b0700000000001f344a5f748b9d88725c47321d070000000000001f344a5f748b9f89735e48331e0900001a2f445a6f869b8f78634e38230e0000001a2f44596e83978e7a6755473f40485361708283736453402b170200000000000513212c3334343431281c0e00000000000000000b2034485b696b6b6b6b6b6b6b6b6b6b6b6b6b6b6b604e3b261100001022323f4b57636f7c88948b8072675d6a75828e9185786c6054483a291704001f344a5f748b9d88725c47321d07000d22374c62778d9c87705b46301b00000000070b0b0b0b0b0b0b0b0b0b0b0b0b0b0b07000000000000000000000005111a1f1f1f1f1d1b1f1f1f1f1b1c1f1f1f1f1a1206000000000000000000000000000000000000000000000000000000000000000000000000010d1926323e4b575f5a4d3b282c3845515c5e5444311e09000000000000000000000000000000000000000000001125384c6073879b9d8975614e3a2713000000000000000000000000000000000011263b50667b9195806a543f2a15000000000000001f344a5f748b97826b56402b160000000b14181919191919191919191919191919191919191918130a000000000000000000000000000000000000000000000000000000000000000000000000000000000005111a1f1f1f1f1e1910040000000000000b1e3245596c80948f7c68544b5f73879986715d4a36220f00000000001f344a5f748b9d88725c47321d070000000000001f344a5f748b9f89735e48331e0900001a2f445a6f869b8f78634e38230e000000162b4054687c8f978573645a54555b6470808f92836e58432e1903000000000000030f191e1f1f1f1c150b0000000000000000000d22374c627782828282828282828282828282827d68533e291300000414222e3a46525e6a76838f9185786c6064707c89958a7d71655847331f0b001f344a5f748b9d88725c47321d07000d22374c62778d9c87705b46301b000006121b2021212121212121212121212121201b12060000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000814212d3a444a473d2f1e1b27333f4849433626150200000000000000000000000000000000000000000000091d3044576b808c8c826d5946321f0b000000000000000000000000000000000011263b50667b9195806a543f2a15000000000000001f344a5f748b97826b56402b160001111e282d2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2d271c0f00000005111a1f1f1f1f1f1f1f1f1f1f1f1f1f1f1c150b0000000000000000000000000000000000000000000000000000000000000000000013273a4e6175899b8873604c44576b80938d7965523e2a1703000000001f344a5f748b9d88725c47321d070000000000001f344a5f748b9f89735e48331e0900001a2f445a6f869b8f78634e38230e0000001125394c5f7284959183766d6a6a6f77828f97877665533f2b1601000000000000000000000000000000000000000000000000000d22374c62778d979797979797979797979797947d68533e291300000004101c2835414d5965717d8a968a7d6e595f6b7783908f8376624d38230e001f344a5f748b9d88725c47321d07000d22374c62778d9c87705b46301b000616242f3536363636363636363636363636352f2416060000000b1418191919191919191919191919191710070000000000000000060b0d0a080c0c0902000000000000000002090d0e0e0e0c06000000000000000000000000000003101c283134322b1f110916222d33342f25180900000000000000000000000000000000000000000000000114283b4f637476767565513e2a1703000000000000000000000000000000000011263b50667b9195806a543f2a15000000000000001f344a5f748b97826b56402b16000e1f2f3b4243434343434343434343434343434343434343413a2d1d0c000515232e343434343434343434343434343431281c0d0000000000000000000000000000000000090f121212120f0900000000000000081c2f43566a7d9193806b57443c5063778b95826d5a46321f0b000000001f344a5f748b9d88725c47321d070000000000001f344a5f748b9f89735e48331e0900001a2f445a6f869b8f78634e38230e000000091d304355667787959489838080848b9594887869584736231000000000000000000000000000000a13191a1a19130a000000000d22374c62778d8d8d8d8d8d91a3918d8d8d8d8d7d68533e291300000000000b17232f3b4753606c78859a866f5a4d5966727d8f8f78634e38230e001f344a5f748b9d88725c47321d07000d22374c62778d9c87705b46301b00122434424a4b4b4b4b4b4b4b4b4b4b4b4b4b4a423424120001111e282d2e2e2e2e2e2e2e2e2e2e2e2e2e2b24180a000000000004101a20221f1c21211d150a00000000000009151e23232323211a0f0200000000000000000000000000000b151c1f1e180e01000510191e1f1b1308000000000000000000000000000000000000000000000000000c2033465660606060584836220e00000000000000000000000000000000000011263b50667b9195806a543f2a15000000000000001f344a5f748b97826b56402b1600182b3d4d5758585858585858585858585858585858585858564b3b28150011233341494a4a4a4a4a4a4a4a4a4a4a4a4a453a2b1907000000000000000000000000000004111d2427272727241d110400000000001124384b5f72869a8a76634f3c34485c7084978975624e3a2713000000001f344a5f748b9d88725c47321d070000000000001f344a5f748b9f89735e48331e0900001a2f445a6f869b8f78634e38230e0000000013253749596876838e9797949598968d8376695a4b3b2a1806000000000000000000000000000e1c272d2f2f2d271c0e0000000c21374c60737777777777778ba08b77777777777767523d2813000000000a16222f3b4753606c7885918d806f5a5966727d8b928677634e38230e001f344a5f748b9d88725c47321d07000d22374c62778d9c87705b46301b001a2e41525e606060606060606060606060605e52412e1a000e1f2f3b424343434343434343434343434340362818060000000916222d35373330363731271b0f020000000818263138383838352c201000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000b1d2e3d484e565a52463a2a190600000000000000000000000000000000000011263b50667b9195806a543f2a15000000000000001f344a5f748b97826b56402b16001e32475a6a6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e695844301b001a2e41515d5f5f5f5f5f5f5f5f5f5f5f5f5f584836230e000000000000000000000000000012222f393c3c3c3c392f22120000000006192d4054677a8f96826e5b47332c4054687c90927d6a56422e1b070000001f344a5f748b9d88725c47321d070000000000001f344a5f748b8b89735e48331e0900001a2f445a6f868b8b78634e38230e00000000081a2b3b4a5966717a83888b8a8782797065594b3c2d1d0c000000000000000000000000000a1c2c3942444442392c1c0a0000091d314455606262626262748ba08b7462626262625a4a37240f0000000e1b2834404c5965717d8a94887b6f625e6b7784908e8274685a4834200b001f344a5f748b9d88725c47321d07000d22374c62778d9c87705b46301b001f34495d7076767676767676767676767676705d49341f00182b3d4d5758585858585858585858585858534635230f00000818273340494c47434b4c44392d2010000000132536444c4e4e4e493e2e1c0a000000000000000000000b151b1d1d1d1c170e03000000000000000000000000000000000000000000000000000000000000000000000013273a4c5b636a6f625140301f0e00000000000000000000000000000000000011263b50667b9195806a543f2a15000000000000001f344a5f748b97826b56402b16001f344a5f7484848484848484848484848484848484848484725c47321d001f34495d707474747474747474747474747466523d2813000000000000000000000000000a1d2f404c525252524c402f1d0a0000000e2235495c7084978d7966523f2b25394c6074889986725e4a36230f0000001f344a5f748b9d88725c47321d070000000000001f34495d707474746f5c47321d080000192e43586b74747472614c38230d00000000000d1d2c3b48545e676e727474726d665d53473b2d1e0f00000000000000000000000000001327394a565a5a564a3a2714000002152737444c4c4c4c4c5f748ba08b745f4c4c4c4c473c2c1b0800000c1d2c3945515e6a76838f8f83766a5d64707c8995897c6f63574a3c2b1805001f344a5f748b9d88725c47321d07000d22374c62778d9c87705b46301b001f344a5f748b8c8c8c8c8c8c8c8c8c8c8c8b745f4a341f001e32475a6a6e6e6e6e6e6e6e6e6e6e6e6e6e64523e2914000013253645515d625a536060564a3e2e1c0900001b2f4354616363635c4c3925110000000000000000000e1c282f323232312b20130300000000000000000000000000000000000000000000000000000000000000000000172c41566a767d806f5e4d3d2c1b0b000000000000000000000000000000000011263b50667b9195806a543f2a15000000000000001f344a5f748b97826b56402b16001f344a5f748b999999999999999999999999999999999988725c47321d001f344a5f748b8b8b8b8b8b8b8b8b8b8b8b7d68533e2913000000000000000000000000001125394d5e676767675e4d392511000004172a3e5165788c9985715e4a37231d3144586c80948d7966523e2b170300001f344a5f748b9d88725c47321d070000000000001a2e41515d5f5f5f5d513f2c1904000015293c4e5b5f5f5f5e5444311e090000000000000e1d2a36414b53595d5f5f5d58524a40362a1d0f000000000000000000000000000000192d4256686f6f6857432f1b06000009192731373737374a5f748ba08b745f4a373737332b1e0e00000016293b4a56636f7b88948a7d71655d6975828e9084776b5e5245392c1e0d00001f344a5f748b9d88725c48342110000d22374c62778d9c87705b46301b001f344a5f748b8c8c8c8c8c8c8c8c8c8c8c8b745f4a341f001f344a5f74848484848484848484848484826b56402b1600001a2e4254626e7768607174685c4b38241000001f34495e7278787868543f2a140000000000000000091b2c3a44474747463e31210f00000000000000000000000000000000000000000000000000000000000000000000172c4155697b8e8d7c6b5b4a392818070000000000000000000000000000000011263b50667b9195806a543f2a15000000000000001f344a5f748b8b826b56402b16001f344a5f748b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b88725c47321d001f344a5f748b8b8b8b8b8b8b8b8b8b8b8b7d68533e29130000000000000000000000000013283e53687c7c7c7c68533e281300000c1f33465a6d8295907c6955422e1b15293d5064788c95826d5a46321f0b00001f344a5f748b9d88725c47321d0700000000000011233341494a4a4a48403222100000000d1f303e474a4a4a494336261502000000000000000c19242e383f45484a4a48443e372e24180c000000000000000000000000000000001a2f44596e8486725d4935210c00000009151d212222344a5f748ba08b745f4a3422221f180d000000001d3145586874828d9185786c60616e7a87938b807266594d4134281b0e0000001f344a5f748ba08c7764513e2d1e100f24394e63788f9b86705b46301b001f34495d7076767676767676767676767676705d49341f001f344a5f748b9999999999999999999997826b56402b1600001e33485d728085736b7d867968533d281300001f344a5f748b8f806a543f2a1500000000000000001125384a575c5c5c5a4f3e2b180400000000000000000000000000000000000000000000000000000000000000000012263a4c5e7082948a786857463625130000000000000000000000000000000011263b50667b9195806a543f2a15000000000000001f34495d7074747468543f2a15001f34495d70747474747474747474747474747474747474746e5b46311c001f34495d707474747474747474747474747466523d28130000000000000000000000000013293e53687d93937d68533e2913000114283b4f62768a9c8874614d3a26120d2135495d7085988a75624e3a271300001f344a5f748b9d88725c47321d070000000000000515232e34343434332d2214040000000112202b33343434342f25180900000000000000000007121b242b30333434332f2a231b11060000000000000000000000000000000000172c40556a808d78644f3b26120000000002090c0d1f344a5f748ba08b745f4a341f0d0a0400000000001f344a5f7486928d8073675b546a808c93867a6d6155483c2f23160a000000001f344a5f748ba093806e5c4b3c2e221b283c51667b9099846f5a442f1a001a2e41525e606060606060606060606060605e52412e1a001f344a5f748b8b8b8b8b8b8b8b8b8b8b8b826b56402b16000d1e32475b6d8090807789877564503c271503001f344a5f748b95806a543f2a150000000000000000162b4055687272726d5b47321d080000000000000000000000000000000000000000000000000000000000000000000a1d2f41536476899786756453422f1c0700000000000000000000000000000011263b50667b8b8b806a543f2a15000000000000001a2e41515d5f5f5f594a392511001a2e41515d5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5c503e2b17001a2e41515d5f5f5f5f5f5f5f5f5f5f5f5f5f584836230e0000000000000000000000000013293e53687d94947d68533e291300091d3044576a7d9294806c5945311e0a06192d4155697c91927d6a56422f1b07001f344a5f748b9d88725c47321d070000000000000005111a1f1f1f1f1e1911050000000000020f181e1f1f1f1f1b13080000000000000000000000000810161b1e1f1f1e1a150f07000000000000000000000000000000000000001b2f4253667b907d6a55412d18000000000000000a1f344a5f748ba08b745f4a341f0a000000000000001f344a5f748b887b6f62564a546a808e8275685c4f43372a1e120500000000001f344a5f748ba0978c7a695a4c3f362f2f42566a809497826c57422d18001f34495d7076767676767676767676767676705d49341f001f34495d707474747474747474747474747468543f2a1500172a3c4c556172848b838c7a6958514332200c001f344a5f748b95806a543f2a150000000000000000172c42576c838888735e48331e090000000000000000000000000000000000000000000000000000000000000000000012233547596b7d8b8b82715f4a35200b00000000000000000000000000000010253a4f637374747467533e29140000000000000011233341494a4a4a463b2d1b090011233341494a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a483f32210f0011233341494a4a4a4a4a4a4a4a4a4a4a4a4a453a2b19070000000000000000000000000013293e53687d94947d68533e2913001225394c6073879b8b7764503d291602001226394d6175899986725e4a37230f001f344a5f748b9d88725c47321d0700000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001f34495e71778c85705b46311c000000000000000a1f344a5f748ba08b745f4a341f0a000000000000001f344a5f7483766a5d51453f546a807c7063574b3e3226190d000000000000001f344a5f748b9883908877695d514944444d5f72869a937d69543f2a15001f344a5f748b8c8c8c8c8c8c8c8c8c8c8c8b745f4a341f001a2e41515d5f5f5f5f5f5f5f5f5f5f5f5f5f594a392511001d32465a6970777d8d948279736d614f3b2612001f344a5f748b8b806a543f2a150000000000000000172c42576c839889735e48331e090000000000000000000000000000000000000000000000000000000000000000000006182a3c4e6070747474705e4a35200b0000000000000000000000000000000c203446565f5f5f5f5849372410000000000000000515232e34343434322a1d0f00000515232e3434343434343434343434343434343434343434332d221303000515232e343434343434343434343434343431281c0d000000000000000000000000000013293e53687d94947d68533e2913001a2e4155687c9097836f5c4834210d00000a1e3245596d82958e7966523e2b16001f344a5f748b9d88725c47321d070000000000000000000000000000000000000000020b1116191b1b1a18140f090200040c111313130e070000000000000000000000080f15191b1b1b1916110c0600080e131515120d050000001f344a5f748b9188725c47321d000000000000000a1f344a5f748ba08b745f4a341f0a000000000000001f34495d707165594c40333e5367746b5f5246392d21140800000000000000001f344a5f748b98838494887a6f655d5a595f6b7c8fa18d7864503b2611001f344a5f748b8b8b8b8b8b8b8b8b8b8b8b8b745f4a341f0011233341494a4a4a4a4a4a4a4a4a4a4a4a4a463b2d1b09001f344a5f74858c8d878d8a8f887d68533e2913001f34495d7074747467533e291400000001080c0d0d172c42576c839889735e48331e0d0d0d0a03000000000000000000000000000000000000000000000000000000000000000d1f3043525d5f5f5f5d52422f1b0700000000000000000000000000000004172838444a4a4a4a453b2c1a08000000000000000005111a1f1f1f1f1d170c0000000005111a1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1e19100400000005111a1f1f1f1f1f1f1f1f1f1f1f1f1f1f1c150b00000000000000000000000000000013293e53687d94947d68533e2913001f34495d71858b8b7a6753402c1905000002162a3e5165798b8b826e5a45301b001f344a5f748b8b88725c47321d07000000000000000000000000000000000000000b151e262b2f30302f2d29241d150c172026292928231a0e000000000000000009131c242a2e3030302e2b262119111b23282a2a2721180c00001f344a5f748b9d88725c47321d000000000408090a1f344a5f748ba08b745f4a341f0a000000000000001a2e41515d5e53473b2f243749585f5a4d4135281c10030000000000000000001f344a5f748b98837686958c8278726f6e727c8a9a9886725e4a36210d001f34495d7074747474747474747474747474705d49341f000515232e3434343434343434343434343434322a1d0f00001d32465b6f848279828b767d8577634f3b2611001a2e41515d5f5f5f5849372410000008141c212222222c42576c838b89735e4833222222221e170c0000000000000000000000000000000000000000000000000000000000000113253441494a4a4a494134241200000000000000000000000000000000000b1a27303434343431291d0e0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000013293e53687d94947d68533e2913001f34495d70747474705f4b382410000000000e22364a5d707474746d5945301b001f34495d707474746e5b46311c07000000000000000000000000000000000002101d28323a4044464644423e3831281f2a343b3e3e3d372c1e0d0000000000010f1b2630383e4345464543403b352d242e373d3f3f3c352a1b0a001f344a5f748b9d88725c47321d00000410191d1e1c1f344a5f748ba08b745f4a341f0a0000000000000011233341494942362a1d1a2c3b454a463c3023170b00000000000000000000001f344a5f748b98836c768490958d888484888f9a9d8d7b6956422e1b07001a2e41515d5f5f5f5f5f5f5f5f5f5f5f5f5f5d51412e1a000005111a1f1f1f1f1f1f1f1f1f1f1f1f1f1f1d170c000000172c405467736d6b828b7469716f5d4834200c0011233341494a4a4a453b2c1a08000717253036373737374155697474746f5c47373737373733291c0c0000000000000000000000000000000000000000000000000000000000000716242e34343434342e24160600000000000000000000000000000000000009141c1f1f1f1f1d160c0000000000000000000000000000000000000000040c10100d0500000000000000000000030b10100d06000000000000000000000000000000060b0d0d0d0d0d0b07000000000000091115161616161615110a00000000000013293e53687d94947d68533e2913001a2e41515d5f5f5f5d52422f1c0800000000071b2e41515d5f5f5f5c4f3d2a16001a2e41515d5f5f5f5c503e2b1703000000000000000000000000000000000111202e3a454e54585b5b5a57524c443b313b474f5353524a3c2b180500000002111f2c38434c53585a5b5a58544f494137404a5254545047392815001f344a5f74898988725c47321d000514222c3233312c344a5f748ba08b745f4a341f0a000000000000000515232e34342f25180c0e1d293134322a1e12060000000000000000000000001f344a5f748b97836c66727d89919799999c9c968c7d6e5d4c392613000011233341494a4a4a4a4a4a4a4a4a4a4a4a4a4941332311000000000000000000000000000000000000000000000000001125384a585e596b828b745f5d5c51402d1905000515232e3434343431291d0e0000122535434b4c4c4c4c4c4c5a5f5f5f5d514c4c4c4c4c4c463a2a180500000000000000000000000000000000000000000000000000000000000006121a1f1f1f1f1f1a12060000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000b1720252521180f05000000000000020c161f2526221a0e000000000000000000000000041019202222222222201b11040000000f1b252a2b2b2b2b2b2b261c0f000000000013293e53687d94947d68533e29130011233341494a4a4a494134241200000000000011233341494a4a4a483e31200e0011233341494a4a4a483f32210f00000000000000000000000000000000000e1f2f3e4c5861696d70706f6c6760584e444b59636868665a4834200b00000010202f3d4a565f676c6f706f6d69645d544a505d666a69645744311c001e33485d6f7373736d5a46311c001122323f474845403a4a5f748ba08b745f4a341f0a000000000000000005111a1f1f1b120700000c161d1f1d170d01000000000000000000000000001f344a5f748282826c57616c757c838889898882796e6050402e1c0a00000515232e3434343434343434343434343434342e23150500000000000000000000000000000000000000000000000000081b2c3a454854687474705d49473f32221100000005111a1f1f1f1f1d160c0000001b2f425360626262626262626262626262626262626261584835210d0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000070d1114151614120e09020000000000000000000000000000000a1a28343a3b352b21180c0000000008141e28333a3b362c1e0e000000000000000000000414212d353737373737352e221303000c1d2d393f404040404040392d1e0d0000000013293e53687d94947d68533e2913000515232e34343434342e2416060000000000000515232e34343434332c211302000515232e34343434332d22130300000000000000000000000000000000081a2c3d4d5c6a757d83868785827b746b61555969767d7d77634e38230e00000c1d2e3e4d5b68727b82868786837d7870675d5d6e7a807d745f4a341f00192d40515c5e5e5e5b4f3e2b1700192d40515c5e5a554e4a5f748ba08b745f4a341f0a0000000000000000000000000000000000000000000000000000000000000000000000000000001d324659686b6b6b63524e5961686e727374726d665c50423222110000000005111a1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1a11050000000000000000000000000000000000000000000000000000000e1c2830394a595f5f5d5141322c221405000000000000000000000000000000001f34495e7177777777777777777777777777777777777664503b251000000000000000000000000000000000070e1313131313100900000000000000000000000000000000081013131313130e07000000000000000000020c141b2126292a2b2a27231d160e0500000000000000000000000004162738464f50483e342a1c0c0000071726313b464e50493c2c1a090000000000000000001122323f494c4c4c4c4c4a4031200e00172a3b4a545656565656544b3c2b180400000013293e53687d94947d68533e2913000005111a1f1f1f1f1f1a1206000000000000000005111a1f1f1f1f1e190f0300000005111a1f1f1f1f1e19100400000000000000000000000000000000001225384a5b6b7a8891979b9c9a9690887d7366637688938f78634e38230e000417293b4c5c6b79858f9697949495938c847a6e677a8d958b745f4a341f001122323f47484848473e31200e001e33485d6f736f6961595f748ba08b745f4a341f0a00000000000000000000000000000004080b0e0f0f0f0e0b070200000000000000000000000000172a3b4a5456565651453c464e54595d5e5f5d59524a3e3223140400000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000b151c2d3b464a4a494133231910040000000000070e13131313110b020000001f344a5f748b8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d7b66503b26110000000000000000000000000000000d19232829292928241c1002000000000000000000000000010f1b24282929292823190d000000000000000b151f282f363b3e3f403f3c37312a21180d01000000000000000000000f2133455663645b51473a2a180500122435434e5862655a4a3826140200000000000000071b2e40505c62626262625d4f3d2a16001d324659686b6b6b6b6b695a47331e0900000013293e53687d94947d68533e29130000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000071b2e415467798a999c928a8787888d94908577687c929d8f78634e38230e000d203346586a7a8a97948a837d7d808489918c80718296998b745f4a341f000514222c32333333322b211303001f344a5f7488847c756c61748ba08b745f4a341f0a000000000000000000000000050c13181d202325252423201c16100800000000000000000000000c1d2d393f4040403e35293239404448494a48443e372d211405000000000000000000000000000000000000000000000000000000000002080c0d0c090400000000000000000000000000000000000000000f1d2a323434342e2315050000000000000d192328292929261f140600001f344a5f748b919191919191919191919191919191917b66503b261100000000000000000000000000000b1c2b363d3e3e3e3d382e200f0000000000000000000000000e1f2d383d3e3e3e3d362b1c0b0000000004111d28323b434a5053545554514c463e342a1f12040000000000000000081a2c3e516274776e64584734200c001a2e4153616b7578675544321f0d000000000000000d22364a5d6e77777777776d59442f1a001f344a5f74828282828276604b36210b00000013293e53687d94947d68533e2913000000081014151515151515151515151515151515151515151515130d04000000000000000000010d171c1e1e1e1c170d010000000000000000000000000e22364a5e7185979b8c7d7570707378808b9587777d94917d75624d38230e0014283c50637688999183766e69686b6f757d88908282978c7b725e49341f00000410191d1e1e1e1d180f0300001f344a5f748b9891897d73748ba08b745f4a341f0a0000000000000000000006101820272d3235383a3a3a3835302b241b1106000000000000000000000f1b252a2b2b2b2922171e252b2f33343433302a231a0f0300000000000000000000000000000000000000000000000000000000030e161d2122211e181005000000000000000000000000000000000000000c171d1f1f1f1a11050000000000000b1c2b363d3e3e3e3b32241503001f344a5f737b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7965503b2611000000000000000000000000000015283a4852535353534b3e2d1a070000000000000000000006192c3d4b5253535352483a28150000000614222e3a454e575e64686a6a6965605a51473c30221404000000000000001225374a5c6e808b8276634e39240f001e33485d717d888573614f3d2a180500000000000010253b5064798c8d8d8d866f5a442f1a001f344a5f748b9797978c76604b36210b00000013293e53687d94947d68533e291300000e1a24292a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a282116080000000000000000111f2a31333333312a1f1100000000000000000000000013283c5165798da18f7d6d615c5b5e646d788694857d948d77625746331f0a001a2e43576b8093968472655a5453565a616a758390859988726154432f1b0000000000000000000000000000001f344a5f74898e959b9185788ba08b745f4a341f0a0000000000000000010d18232c343b41464a4d4f4f4f4d4a453f372e23170b00000000000000000000091115161616140e050a11171b1e1f1f1e1b160f0700000000000000000000000000000000000000000000000000000000000715212a31363737332c22170a00000000000000000000000000000000000000000000000000000000000000000015283a48525353534e4232200d001c304456636666666666666666666666666666666666655b4a36220e00000000000000000000000000001c31455866686868685c4a37230f000000000000000000000e2235495b67686868665845311c0000061524323f4c57616a72797d80807d7a756d645a4e403222110000000000000a1c2f425467798c978573614d38230e001d32475b6d8092907d6c5a4735220f00000000000011263b50667b919a9191866f5a442f1a001f344a5f748b9c8b898976604b36210b00000013293e53687d94947d68533e2913000c1d2c373e3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3c332616050000000000000c1e2f3d46484848463d2f1e0c0000000000000000000000182d41566b80949985725f4f474649515b6875869180948d77624c39291704001e33485d71879b8d796655473f3e41464e58657485969d88725c473625130000000000000000000000000000001e33485d6f7379828c9797888ba08b745f4a341f0a0000000000000005121f2b353f484f565b5f62646464625f5a534a4135281a0b00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000071625323d464b4c4c473f3528190a000000000000070e151818130b000000000000000000000000000000000000001c3145586668686860503c281300142738464f505050505050575c5c5c5a505050505050504a3d2c1a0700000000000000000000000000001f344a5f747d7d7d7966523f2b1804000000000000000003162a3e5165787d7d7d745f4a341f000113243342505d69747d878e939595938f8982776b5e50402f1e0c00000000001326394c5f7184968c79675544311e0a00182b3e5062748799897664513e2c1906000000000011263b50667b91937c7b7b6e59442f1a001f344a5f748b9b8673736f5e4a35200b00000013293e53687d94947d68533e29130016293b4953545454545454545454545454545454545454545454504434220f00000000000014283b4d5a5e5e5e5a4d3b281400000000000000000000001b30455a6f8599927d6955423230353e4a58677789939c8d77624c37220d00001f344a5f748a9c87725d49372b292c323b475667798d9d88725c47321d08000000000000000000000000000000192d40515c5f666f7986929898a08b745f4a341f0a000000000000051423303c48525b636a70747779797877736e675d534638291a090000000000050d11121212121212121212121212121212121212120f080000000000000911151616161510080000000000000000000000000214253443505a6062605b52463728170600000005111b22292e2d271d100100000000000000000000000000000000001f344a5f747d7d7d6b56402b1600091a28343a3b3b3b3b4055687272726d5b473b3b3b3b3b362c1f0f0000000000000000000000000000001d32465a6d829494826e5b4733200c00000000000000000b1e3246596d829494826e5a47321e000a1e314251606e7b87929b9793909093979d94897c6e5e4d3c291704000000091d304356697b8f95826f5c4a38261402000f21324557697c8f94826e5c4936220f000000000011263b50667b91937c676661523f2b17001f344a5f748b9b866f5e5c51412e1b0600000013293e53687d94947d68533e2913001d314558676a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a62513e2a15000000000000192e43586b7373736b58432e1904000000000000000000001e33485d72889c8e78644f3a261b212c3a495a6b7d91a38d77624c37220d00001f344a5f748b9b86705b463126201e1f29394a5f748b9d88725c47321d0700000002090d0e0e0e0c06000000001122323f474a525c6874828f9da08b745f4a341f0a000000000000112232414e5a656f777d85898d8f908f8c88837a70645647382715030000000c18212627272727272727272727272727272727272727231b10020000000f1b252a2b2b2b2a241a0d00000000000000000000000c1f324352616d7577766f64554635231000000515232e363d43423a2e1f0e00000000000000000000000000000000001f344a5f748b94826b56402b1600000b1720252626262c42576c838888735e483326262626221a0f01000000000000000000000000000000172b3e5265798d9e8a76634f3b2814000000000000000013273a4e6175899d8d7966523f2b18000f24394d60707d8c99958b837d7a7a7d838c979b8d7c6b594633200c0000001226394c5f7286998a7764523f2d1b0900000315283a4c5f7285988b7865513e2b18040000000011263b50667b91937c67524e4334220f001f344a5f748b9b866f5a47403323120000000013293e53687d94947d68533e2913001f344a5f748080808080808080808080808080808080808080806c57422c170000000000001a2f445a6f8689866f5a442f1a05000000000000000000001f34495e73899f8b75604b36210c0f1c2b3c4e6175899c8d77624c37220d00001e33485d72879c8874604f423a353334363a4a5f748b9d88725c47321d07000009151e23232323211a0f0200000514222c3236404a5663707d8b8b8b745f4a341f0a000000000000192d40515f6b77828b9397918d8b8b8b8e93968d827465554432200c00000a1b2a353b3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c382e201000000c1d2d393f4040403f372b1b0a0000000000000000000014283b4e607080898d8a827364523f2c180400112333414a5158564c3d2c1b0b000000000000000000000000000000001f344a5f748b97826b56402b16000000040c101111172c42576c839889735e48331e1111110e0700000000000000000000000000000000000f22364a5d718598927d6a5743301c08000000000000081b2f42566a7d919986715e4a37230f0011263b50667a8a998f83776f686566686f7986959a8976634f3b27130000071b2e4155687c8f95826d5a48352210000000000a1d304255687b8f95826e5b4734200d0000000011263b50667b91937c67523c31251605001f344a5f748b9b866f5a442f2315060000000013293e53687d94947d68533e2913001f344a5f748b95959595959595959595959595959595959595836c57422c170000000000001a2f445a6f869b866f5a442f1a05000000000000000000001f344a5f748b9f89735e49341f0a000d1f31455a6f869b8d77624c37220d00001b2f44586c8093907d6d60554e4b48494b4e535f748b9d88725c47321d07000818263138383838352c20100000000410191d232d3945526070747474705d49341f090000000000001e33485d6f7c8995948a837c7775747679808894938473614f3c281400001528394750525252525252525252525252525252525252514b3e2d1b0800172a3b4a545656565349392714000000000000000000001b2f43586b7d8f87828591826f5b47331e09001a2e41515d656d6a5b4a392818070000000000000000000000000000001f344a5f748b97826b56402b160000000000000000172c42576c839889735e48331e09000000000000000000000000000000000000000000071a2e4155697c909a87735f4b3824100707070707071023374a5e728699917d6956422e1b07000e23374b5d6b7a897d70655b545050545c6776889a937d6a56412d1800000f22364a5d7185988c7764513e2b180500000000001326394c5f7286998a7763503c28140000000011263b50667b91937c67523c27140700001f344a5f748b9b866f5a442f1a05000000000013293e53687d94947d68533e2913001f344a5f748ba0928f8f8f8f8f8f8f8f8f8f8f8f8f8f8f8f8f836c57422c170000000000001a2f445a6f869b866f5a442f1a05000000000000000000001f344a5f748b9f89735e48331e0900021a2f445a6f869b8d77624c37220d000015293d50637587978c7d7269635f5e5e6063686d748b9d88725c47321d0700132536444c4e4e4e493e2e1c0a000000000107101b273442515d5f5f5f5d51412e1a060000000000001f34495e7284958c82776e6863605f60646b76849591806b58432f1b06001c31445764676767676767676767676767676767676767665c4a37230e001d324659686b6b6b6757432f1a060000000000000000001e33485d728788766b72858b76614c37220d001f34495d707982786857463625140300000000000000000000000000001f344a5f748b97826b56402b160000000000000000172c42576c838b89735e48331e09000000000000000000000000000000000000000000001226394d6074889c8f7a6753402c1d1d1d1d1d1d1d1d2b3f53667a8e9c8975614e3a26130000081b2e3f4e5c6a786d605348403b3b404a586a7d929a85705b46311c0001162a3e5265798d97836f5c4835220e000000000000091c2f4356697d9193806b57432f1c0700000011263b50667b91937c67523c27120000001f344a5f748b9b866f5a442f1a05000000000013293e53687d94947d68533e2913001f344a5f748ba08b7878787878787878787878787878787878786b56412c170000000000001a2f445a6f8699866f5a442f1a05000000000000000000001f344a5f748b9f89735e48331e0900001a2f445a6f869b8d77624c37220d00000d21344658697887948f857d7774737375787c8288919d88725c47321d07001b2f4354616363635c4c392511000000000000000a16243341494a4a4a4941332311000000000000001b2f43556677877a6e645b534e4b4a4b505966778a9b87725e49341f0a001f344a5f747c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7a65503b2611001f344a5f74828282725c47321d070000000000000000001f344a5f748b846e5a6a808e78634e38230e001f34495e718395867564534332211000000000000000000000000000001f344a5f748b97826b56402b160000000000000000172c4155697474746f5c47321d08000000000000000000000000000000000000000000000a1d3145586c809397836f5c4834323232323232323233475b6e839694806d5945321e0a0000001021303e4c5b635d4f42362c26262c3b4e63778d9d88725c47321d00081c3145596d82958f7b6753402c19050000000000000013273a4e61758a9b87725f4b36220e00000011263b50667b91937c67523c27120000001f344a5f748b9b866f5a442f1a05000000000013293e53687d94947d68533e2913001f344a5f748ba08b7463636363636363636363636363636363635d4e3b28130000000000001a2f445a6f8484846f5a442f1a05000000000000000000001f344a5f748b9f89735e48331e0900001a2f445a6f869b8d77624c37220d00000417293a4b5a6976828a92928d8b89898b8d928f888c9d88725c47321d07001f34495e7278787868543f2a1400000000000000000615232e34343434342e23150500000000000000132537485a6c75695d51473f393634363c485b70869a8c76614c37220d001f344a5f748b93939393939393939393939393939393917b66503b2611001f344a5f748b9788725c47321d070000000000000000001e33485d728789776e74868a76614c37220d001b2f425466778a93827160503f2e1d0b000000000000000000000000001f344a5f748b97826b56402b16000000000000000012263a4c5a5f5f5f5d513f2c1904000000000000000000000000000000000000000000000215293c5063778b9f8b776350474747474747474747474f63768a9e8c7864513d2a16020000000312202e3d494e4a3f312e323437393e4d62778d9d88735e48331e000d22374b5f74889c8874604c38241100000000000000000b1e32465a6e83978e7965513c281300000011263b50667b91937c67523c27120000001f344a5f748b9b866f5a442f1a05000000000013293e53687d8b8b7d68533e2913001f344a5f748ba08b745f4e4e4e4e4e4e4e4e4e4e4e4e4e4e4e4e4a3f301f0c000000000000182d4256676e6e6e6756422d1803000000000000000000001f344a5f748b9f89735e48331e0900001a2f445a6f869b8d77624c37220d0000000b1c2d3c4b58646e767d83878889888683807a748b9d88725c47321d07001f344a5f748b8f806a543f2a1500000000000000000005111a1f1f1f1f1f1a11050000000000000000081a2b3d4e5c60584b3f342b282d32383e485a6f84998d77624c37220d001f344a5f748999928787878787878787878787878787877b66503b2611001f344a5f748b9d88725c47321d070000000000000000001a2f43576a7d8e89848790806e5b47331e0900122537485a6c7d918f7d6e5d4c3a2713000000000000000000000000001f344a5f748b97826b56402b1600000000000000000a1d2e3c464a4a4a48403222100000000000000000000000000000000000000000000000000d2134485b6f839793806c5c5c5c5c5c5c5c5c5c5c5c5c6b80939884705c4935210e000000000002101f2c353836373e42474a4c4e525a697c909b87715c47321c0012273c5065798f97836d5945311d09000000000000000003172b3f53687c9194806b56412d1803000011263b50667b91937c67523c27120000001f344a5f748b9b866f5a442f1a05000000000013283d52667474747466523d2813001f344a5f748ba08b745f4a383838383838383838383838383838362e2112010000000000001326394955585858554939261300000000000000000000001f344a5f748b9f89735e48331e0900001a2f445a6f869b8d77624c37220d000000000f1e2d3a47515b63696d70727372706e6a65748b9d88725c47321d07001f344a5f748b95806a543f2a1500000000000000000000000000000000000000000000000000000000000d1f303e484b463b2e32383d42474c535a6675899d8b76614c37220c001d32465a6b7b8c9585747070707070707070707070707070614e392510001f344a5f748b9d88725c47321d0700000000000000000014283b4e5f707d878b88807262513e2b18040007192b3d4f6173858b8b7a6a56412c17000000000000000000000000001f344a5f748b8b826b56402b16000000000000000000101e2a32343434332d22140400000000000000000000000000000000000000000000000005182c4053677a8e9b887472727272727272727272727273879b8f7b6854402d19060000000000000414222e39434b52575c5f6063666d78889995826c58432e1a00172b40556a8094927c68533f2a16020000000000000000001025394d62768b9a85705b46311c07000011263b50667b91937c67523c27120000001f344a5f748b9b866f5a442f1a0500000000000e233648585f5f5f5f584836230e001f344a5f748ba08b745f4a342323232323232323232323232323211b100300000000000000182c4052606464645f503d291500000000000000000000001f344a5f748b9f89735e48331e0900001a2f445a6f869b8d77624c37220d00000000031524323b3e474e54585b5c5e5c5b595560768c9d88725c47321d07001f344a5f748b95806a543f2a1500000000000000000000091013131313131313131313100900000000000112202c3436323940464c52565c61676e7784949885715d48331f0a00172a3c4d5d6e7d8f928271615b5b5b5b5b5b5b5b5b5b5b5b5344321f0b001f344a5f748b9d88725c47321d070000000000000000000b1e3041515f6a7274736c61544433220f0000000e2032445667747474746955412c17000000000000000000000000001f34495d7074747468543f2a15000000000000000000000d171d1f1f1f1e19110500000000000000000000000000000000000000000000000000001024374b5f72869a908888888888888888888888888888909b8773604c382511000000000000031323323f4b565f666c707376787b828a96998a7765513e2915001a2f44596e83988d77634e392510000000000000000000000a1f33485d71879b89735f4a35200b000b1c2b3b50667b91937c67523c27120000001f344a5f748b9b866f5a442f1a05000000000007192b3a455158564e473c2e1d0a001f344a5f748ba08b745f4a341f0e0e0e0e0e0e0e0e0e0e0e0e0e0c070000000000000000001b30455a6f7979796d58432e1803000000000000000000001f344a5f748b9f89735e48331e0900001a2f445a6f869b8d77624c37220d000000000e2032424e534e4340444647484746445064798e9a866f5a45301b06001f344a5f748b8b806a543f2a15000000000000000003111d2528292929292929292928251d1103000000000313222f3a444d545b60666b70757b828a95978a796855412e1905000d1e2f3f50607082918f806e5e4e464646464646464646464035261502001f344a5f748b9d88725c47321d0700000000000000000001132333414e575d5f5e59504436261604000000021426384a585f5f5f5f5a4c3a2612000000000000000000000000001a2e41515d5f5f5f594a39251100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000081b2f43566a7d92a09795959595959595959595959597a093806b5744301d090000000000000f203141505d68727a8286898c8e9195969f8a7a6c5a4836220e001c32475c71879b89745f4a35200b00000000000000000000051a2f44596e83988c77624c37220d0015283a4852667b91937c67523c27120000001f344a5f748b9b866f5a442f1a0500000000000d1e2e3f50606d6a625a4c3a2612001f344a5f748ba08b745f4a341f0a00000000000000000000000000000000000000000000001b30465b708790846e59442f1a05000000000000000000001f344a5f748b9f89735e48331e0900001a2f445a6f869b8d77624c37220d00000005172a3d50606860554a41393333323947586b809395806b57422d1803001f34495d7074747467533e2914000000000000000010212f393e3e3e3e3e3e3e3e3e3e392f211000000000102131404c5760686f757a80868a9096978f85796b5c4b3826120000001121324252627384948d7c6c5b4b3b30303030303030302c23170800001f344a5f748b9d88725c47321d0700000000000000000000051523303b43494a49453d332618090000000000091b2c3b454a4a4a4a463c2e1d0a0000000000000000000000000011233341494a4a4a463b2d1b09000005111a1f1f1f1f1e1e1f1f1f1f1a120600000000010e181e1f1f1e190f0300000000000000000000000000000013273b4e6275899c87808080808080808080808080879c8a76634f3b281401000000000006192c3e4f5f6e7a868f95938f8c8b8884849492806d5945311c08001e33485e73899c87715c47321d080000000000000000000000162c40566b80958f78634e39240f001c314558666e8295917b67523c27120000001f344a5f748b9b866f5a442f1a05000000000a1a2b3c4c5d6e7d7d766955412c17001f344a5f748ba08b745f4a341f0a00000000000000000000000000000000000000000000001a2f445a6f849987715c473322160c0100000000000000001f344a5f748b9f89735e48331e0900001a2f445a6f869b8d77624c37220d0000000e2134475a6c7d72675d544d4846474c566475889b8d7965513d281400001a2e41515d5f5f5f584937241000000000000000081b2e3f4c535353535353535353534c3f2e1b080000091c2e3f4f5e6a737c848a8f959a958f89837b72685c4d3e2d1b09000000031424344555657687978a7969584838271b1b1b1b1b1b1811060000001f344a5f748b9d88725c47321d07000000000000000000000006131e282f343434302a201508000000000000000e1d293134343434322a1e1000000000000000000000000000000515232e34343434322a1d0f00000515232e343434343333343434342e241606000000111f2b323434332c21130200000000000000000000000000000b1f32465a6d82958e7a6a6a6a6a6a6a6a6a6a6a7a8e96836e5b4733200c0000000000000e2236495b6d7d8c988d857d797774726f768a9c88745f4a36210c001f344a5f748a9b86705b46301b060000000000000000000000152a3f54697d949079644f3a250f001f344a5f74808d9c8a76624d39240f0000001f344a5f748b9b866f5a442f1a050000000617273849596a7a8c8f7c6a56412c17001f344a5f748ba08b745f4a341f0a0000000000000000000000000000000000000000000000182d42576c82968b7663504033281e1409000000000000001f344a5f748b9f89735e48331e0900001a2f445a6f869b8d77624c37220d00000014293d5164768a857a7068615d5b5c60687483939583705d4a36220e000011233341494a4a4a453b2c1a08000000000000000e23374b5d686868686868686868685d4b37230e00001225394b5d6d7b879098958f8a86807a746e675f554a3e2f200f0000000000061627374858687889988776665645352514040000000000000000001f344a5f748b9d88725c47321d07000000000000000000000000010b141b1f1f1f1b160d030000000000000000000c161d1f1f1f1f1d170d0000000000000000000000000000000005111a1f1f1f1f1d170c00000011233341494a4a4a48484a4a4a494134241200000b1e2f3d474a4a483e31200e000000000000000000000000000003172a3e5165798d96836e5b5454545454545b6f83968e7a66533f2b180400000000000015293e5165788b99897b716a65625f5d5b6f84998d77634e38230e001f344a5f748b9b86705b46301b060000000000000000000000142a3f54697d949079644f3a250f001f344a5f748b9d907d6d5a47331f0a0000001f344a5f748b9b866f5a442f1a0500000012243445566677889583705f4d3a2713001f344a5f748ba08b745f4a341f0a000000000000000000000000000000000000000000000014293e52667b8f93806e5e51463b31261b0f0200000000001f344a5f748b9f89735e48331e0900001a2f445a6f869b8d77624c37220d000000162b40566b808c968d847c76727070747b86929788776653412e1b0700000515232e3434343431291d0e000000000000000011263b50667a7d7d7d7d7d7d7d7d7a66503b26110000182d4155687a8c999389827a75706b66605a534c43382d20110200000000000009192a3a4a5b6b7b8c9584736353423222110100000000000000001f344a5f748b9d88725c47321d0700000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001a2e41515d5f5f5f5c5c5f5f5f5d52422f1b070014283b4d5a5f5f5c4f3d2a160200000000000000000000000000000e2236495d7085988a76634f3f3f3f3f4f63768a9986725e4a37231000000000000000192e43586c82958f7b6a5e55504c4a48566b82978f79644f3a250f001e33485e73899c87715c47321d080000000000000000000000162b40566b80958f78644f3a240f001f344a5f748893978774604c38230e0000001f344a5f748b9b866f5a442f1a050000001a2e4152637385958977655341301e0b001f344a5f748ba08b745f4a341f0a00000000000000000000000000000000000000000000000f23384c5f7285978c7c6e63584e43382d201204000000001f344a5f748b9f89735e48331e0903011a2f445a6f869b8d77624c37220d00000014283d50616e79848d96908b8886878a8f989286786959483624110000000005111a1f1f1f1f1d160c00000000000000000011263b50667b91949494949494917b66503b261100061c31465b7085989282756d66605c56514b463f38302b21140500000000000000000c1c2c3d4d5d6e7d8f9282706050402f1f0e00000000000000001f344a5f748b9d88725c47321d07000000000000000000000009121719191712090000000000000000030c1217191816110a010000000000000002090d0e0e0e0c060000000000020e161b1b1b1b191208000000001f34495d707474746e6d747474705e4a35200b00182d42576a74746d5945301c070000000000000000000000000000061a2d4154687c9093806b5744303043576b8092917d6956422f1b08000000000000001c32475c70869b8a75604c413b3a3e495a6e83988e78634e38230e001d32475c72879c89745f4a35200b00000000000000000000041a2e43586d83988d77624d38230e001e33485c6d7585988f7a66513c27110000001f344a5f748b9b866f5a442f1a050000001f34495d70828b8b7d6b5a4836241200001f344a5f748ba08b745f4a341f0a0000000000000000000000000000000000000000000000081c304356677889978c80756a60554a3e302212020000001f344a5f748b8b89735e48331e1719161a2f445a6f868b8b77624c37220d0000000d213343515c67707982888e919393918d878074685a4b3b2b1907000000000000000000000000000000000000000000000011263b50667b808080888c8080807b66503b2611000a1f34495e73899e89756359524c47423d37313d44453e3223120200000000000000000e1f2f3f50607082918f7d6e5e4d3d2c1c0c000000000000001f344a5f748b9d88725c47321d07000000000000000000000d1b252c2e2e2c251b0d0000000000000a161f272c2e2e2b251d1307000000000009151e23232323211a0f0200000313202a303030302d251a0b0000001f344a5f748b8b887270878b8b76604b36210b00182e43586d8388735f4a35210c0000000000000000000000000000001225394c6073889b8773604c38384c5f73879b8975614e3a271300000000000000001d32475c72889d89735e4a4c4d4f535a67778a9d8a75604b36210d001b30455a6f84998d77634e39251000000000000000000000091e33475c71879b89745f4a35200b00192c3e4f59687c92937c67523c27120000001f344a5f748b9b866f5a442f1a050000001f34495d7074747470604e3c2a190600001f344a5f748ba08b745f4a341f0a0000000000000000000000000000000000000000000000001326384a5b6a79869192887d72675c4e4030200f0000001f34495d707474746f5c4732262c2e2b232e43586b74747471604b36210c000000041525333f4a545d666d74787b7d7c7b78726b62574a3c2d1d0d000000000005111a1f1f1f1f1d171d1f1f1f1e19100400000e23384c5e696a6a72888c766a6a695e4c38230e000a1f344a5f74899c87705c473e38322d2b34404e595a504130200f0000000000000000011122324252637384948c7b6b5b4a3a2a19090000000000001f344a5f748b9d88725c47321d07000000000000000000091b2b3841434341382b1b0a000000000d1b28333b4143434039302518090000000818263138383838352c201000000f21313d45464646423729180600001f344a5f748b9d887270879c8c76604b36210b00162b4054697d8d78644f3a2511000000000000000000000000000000091d3144586b80938f7b6754404053677b8f95826d5946321e0b00000000000000001d32475c72889d8b76615f616264686d77859594826e5b46321d0900172c41566b8094917c68533e2a16010000000000000000000f24384d61768b9a86705b46321d08000f21313d50667b91937c67523c27120000001f344a5f748b9b866f5a442f1a050000001a2e41515d5f5f5f5d5243311f0d0000001f344a5f748ba08b745f4a341f0a000000000000000000000000000000000000000000000000091b2c3d4c5b68737d89939085796c5e4e3e2c1b0800001a2e41515d5f5f5f5d513f2c3941433f372f3c4e5b5f5f5f5e5343301c08000000000715212d37414a52595f6467686866635e574f45392c1e0f00000000000515232e34343434312a32343434332d22130300081c2f404d54545c72888c766054544d402f1c0800081e33485d72879c88735f4c3f3b3a3b4047515e6c6e5f4e3e2d1c090000000000000000041424354555667687978a786858483727160600000000001f344a5f748b9d88725c47321e0b0000000000000000001326394955585855493927130000000c1c2b39454f555858544d42362718070000132536444c4e4e4e493e2e1c0a00192c3e4f595b5b5b554735220f00001f344a5f748b9d887270879c8c76604b36210b0015283c51667b907d68543f2a160000000000000000000000000000000115283c5063778b9784705c48485c6f83978c7865513e2a160300000000000000001c31455a6f8599917d70747677797c828a9594867564513e2b17030013283d51667a8f96826d5944301c0700000000000000000115293e52677b9095806b57422d1904000313263b50667b91937c67523c27120000001f344a5f748b9b866f5a442f1a0500000011233341494a4a4a4941342513010000001f344a5f748ba08b745f4a341f0a000000000000000000000000000000000000000000000000000e1f2e3d4a56616c76828d978b7c6c5c4a382512000011233341494a4a4a4840323a4a5558524b42353e474a4a4a4942352514010000000000040f1a242e373e454a4f525758514e4a433b32281b0e00000000000011233341494a4a4a453c464a4a4a483f32210f00001122303a3f475c72888c76604b3f3a3022110000021a2f44596d82958e7b6a5c53504f50545b636e7b7c6c5c4b38251000000000000000000006172737485868798a97877665554534241403000000001f344a5f748b9e8974604d3a29190e0704010000000000182d4256676e6e6756432e1a060006182a3a4957626a6e6d6860534536251301001b2f4354616363635c4c392511001e33485c6d70707065523d281400001f344a5f748b9688727087988c76604b36210b001c31455866788d836d59442f1a000000000000000000000000000000000d2034475b6f83968c7764505063778b9884705d4935220e000000000000000000182d41556a7d929a89848a8c8d8f9296958d837667584735220f00000e23374c6075899c88735f4b36220f0000000000000000081c3044586d82968f7a66513d281400000011263b50667b91937c67523c27120000001f344a5f748b9b866f5a442f1a050000000515232e34343434342e241607000000001f344a5f748ba08b745f4a341f0a0000000000000000000000000000000000000000000000030707101f2c39444f59636f7c8b9b8b796754412d1a06000515232e34343434332d364758686d665f53433033343434342f251708000000000000000008111b232a3c4e5b636a6d5f4e3d2f2820150a000000000000001a2e41515d5f5f5f584c5a5f5f5f5c503e2b17000004121e2632475c72888c76604b36261e1204000000162a3e5265788b9988796f68656466696f76808d8a7968533f29140000000000070c0e0e0e0e1a2a3a4b5b6b7c8d948473625242312111000000001f344a5f748ba0907c6a5847372b211c1a160e030000001a2f445a6f8484715d4934200c000f2335475867757d83837c71635443301d0a001f34495e7278787868543f2a14001f344a5f748787806a543f2a1500001f344a5f748a887d7170868c7d75604b36210b001f344a5f747d8b87725c47321d0000000000000000000000000000000004182b3f53667a8e94806c59586c80938f7c6854412d19060000000000000000091c2f42536474879c99989592908e8b878279706558493a2917050000091d31465a6e83978e7965523e2a1602000000000000001024374b5f73889c8874604b37230e00000011263b50667b91937c67523c27120000001f344a5f748b9b866f5a442f1a050000000005111a1f1f1f1f1f1a120600000000001f344a5f748ba08b745f4a341f0a000000000000000000000000000000000000000000040f171c1c18101b27323c46515e6c7c8e9785705d4935200b000005111a1f1f1f1f223344546575827a71604b36211f1f1f1f1b1207000000000000000000000007192e43586b77807d6c5b4a3a29180800000000000000001f34495d707474746755697474746e5b46311c000000010b1d32475c72888c76604b36210b01000000000f2236495b6d7d8d988c837c79797b7d838a9391857666533e291400000003101b212323232323232d3d4d5e6e808f918270604f3f2f1e0e0000001f344a5f748ba09788756455483d35312f2a2013040000172c41566b808c77634f3a261200172b3f526576869298978f8271604d392511001f344a5f748b8f806a543f2a15001f344a5f748b95806a543f2a1500001d32475b70858b75646c828f79665946321e09001f344a5f748b9788725c47321d00000000000000000000000000000000001023374b5e7286998875616073889b8873604c3925110000000000000000001125384c5f7183929b8f86807c797875716c655d53473a2b1c0b00000002172b3f53677b8f95826d5945321e0b00000000000005182b3f53677a8f95826d5945311c0800000011263b50667b91937c67523c27120000001f344a5f748b9b866f5a442f1a0500000000000000000000000000000000000000001f344a5f748ba08b745f4a341f0a00000000000000000000000000000000000000000a16212b31312c2214151f2a34404e5f7083978d77634e39240f0000000006090a0e1f2f4051617283948673604c37210c0a0a0a060000000000000000000000000000192f44586c80918a7968584736251504000000000000001f344a5f748b8b806a576c838b88725c47321d000000040c1d32475c72888c76604b36210b000000000006192c3e4f5f6e7c87909792908f9093979189807367584937230f00000112212e3638383838383838384050617082928f7d6d5d4d3c2c1c0b00001f344a5f748b9b868e8373665a504a46443d31221100001a2e4152667b907d6955402c18001c31465a6e8294a4adaca0907c6854402b16001f344a5f748b95806a543f2a15001f344a5f748b95806a543f2a150000182d42566b808e7864677b907c68533e291703001f344a5f748b9d88725c47321d0000000000000000000000000000000000081b2f42566a7d91907c69687c9093806b5844301d09000000000000000000172c4054687b8f9b8b7c726b676563605c58514a40362a1c0d00000000001024384c6073879b8975614e3a27130000000000000d2134475b6f83968d7965513e2a160100000011263b50667b91937c67523c27120000001f344a5f748b9b866f5a442f1a050000000000000000040e151818130b04000000001f344a5f748ba08b745f4a341f0a000000000000000000000000000000000000000f1c28333e46463f3223110d1722304153687c91917b66513c2712000000000000081b2c3d4d5e6f80908c7a685644311d0900000000000000000000000000000000000015293d4f617386978775645443322210000000000000001f344a5f748b95806a576c839888725c47321d00000b17202532475c72888c76604b36210b0000000000000f203141505e6a747c8387898b8987837c756c6156493a2b1a0700000c1f303f4a4e4e4e4e4e4e4e4e4e4e53637384958c7b6b5a4a39291704001f344a5f748b9b86839284776c645e5b594f402e1b07001f34495d70778c846f5a45301b001f34495e73899eb2c1beac98836e58432e19001f344a5f748b95806a543f2a15001f344a5f748b95806a543f2a15000013283d52667b907c6762778c826b56412c1702001f344a5f748b9d88725c47321d00000000000000000000000000000000000013273a4e6175899985717084988b7763503c2815010000000000000000001c31455a6f8498917d6d5f5752504e4b47433d362d23180c000000000000091c3044576b7d92917d695643301d0a0000000004172a3d5063778b9885715d4a36220e0000000011263b50667b91937c67523c27160900001f344a5f748b9b866f5a442f1a0d000000000000000615212a2e2d271f170d0000001f344a5f748ba08b745f4a341f0a0000000000000000000000000000000000000c1d2d3945505b5b50402e1c0c0512243a4f64788f937c67523c27120000000000001024384a5a6b7c8d92806e5c4b392715020000000000000000000000000000000000000d20324456687a8c94837261503f2c18030000000000001f344a5f748b95806a576c839888725c47321d00091a28343a3b475c72888c76604b36210b00000000000003132332404c5760686d71737473716d6861594f44382b1c0d00000013283b4e5d63636363636363636363636366768798897868574734200c001f344a5f748b9b867789958a807873706d5d4a35200b001f344a5f748b9087705b46301b001f344a5f748a9fb4c7c2ae99846e58432e19001f344a5f748b8b806a543f2a15001f344a5f748b8b806a543f2a1500000f23384c61768b806a5d7287846f5a45301b06001f344a5f748b8b88725c47321d0000000000000000000000000000000000000b1e3246596d82958d79788c96836f5b4734200d000000000000000000001e33485e73889d8b76614f433d3b393633313838322920170c00000000000114283b4f6275899986725f4c392614010000000e213346596c80938f7b6855412e1a070000000011263b50667b91937c67523c34271806001f344a5f748b9b866f5a44372b1d0c0000000000041424333e43413b332a1e1000001f344a5f748ba08b745f4a341f0a000000000000000000000000000000000000172a3b4b57626e6e5d4b3a2a1d1516253a4f64798f937c67523c271200000000000014293e536778898b877563513f2d1b0900000000000000000000000000000000000000031527394a5c6e828b8b806e5b46311c070000000000001f344a5f748b8b806a576c838b88725c47321d00142738464f504c5c72888c76604b36210b000000000000000514222f3a444d53595c5e5f5e5c59544d463d32271a0d00000000172c41566b7878787878787878787878787878798a968675634f3a2510001f344a5f748b9b866f7a8996948d888677624c37220d001f344a5f748b9c87705b46301b001d32475c708598a9b4b2a492806a56412c17001f34495d7074747467533e2914001f34495d7074747467533e291400000a1e33485c6f747468586b74746d5945301b05001f34495d707474746e5b46311c00000000000000000000000000000000000003162a3d5164788c958280948e7a66533f2b1804000000000000000000001f344a5f748b9f89735e49342826242536444c4d453c332a1d0d00000000000c1f3346596c80928f7c695643311e0c000007192b3d506376899885725f4c392512000000000011263b50667b91937c67535045362411001f344a5f748b9b866f5a52493b29170300000000112132425158564e473c2e1d0a001f344a5f748ba08b745f4a341f0a0000000000000000000000000000000000001d3246596874807a6958483b302a2b324254687c928f7965503b261100000000000014293e536774747474695745332210000000000000000000000000000000000000000000091b2d3f5163737474746e5b46311c070000000000001f34495d707474746755697474746e5b46311c001c3044566365605c72888c76604b36210b000000000000000004111d2831393f4447484a4847443f39322a2015090000000000172c42576c838f8f8f8f8f8f8f8f8f8f8f8f8f8f91a0917b66503b2611001f344a5f748b9b866f6a78858f979d8d77624c37220d001f344a5f748b9c87705b46301b00192d4155687a8b989f9e958775634f3b2713001a2e41515d5f5f5f5849372410001a2e41515d5f5f5f5849372410000004192c3f515d5f5f594e5b5f5f5c4f3d2a1602001a2e41515d5f5f5f5c503e2b17000000000000000000000000000000000000000e2235495c7084988a889a86725e4b37231000000000000000000000001e33485e73899e8b76614e3c322e2f35435461615950473b2b19070000000003162a3d4f627588998673604e3c29170400122536485a6d80938e7b6855432f1c09000000000011263b50667b91937c68686353402c17001f344a5f748b9b866f68665946321e090000000d1e2f3f50616d6a625a4c3a2612001f344a5f748ba08b745f4a341f0a0000000000000000000000000000000000001f344a5f748692877666594d443f404550607185988a75614c38230e00000000000010243749585f5f5f5f5a4c3a2816040000000000000000000000000000000000000000000010223445555e5f5f5f5c503e2b17030000000000001a2e41515d5f5f5f584c5a5f5f5f5c503e2b17001f344a5f7379746c72888c76604b36210b000000000000000000000b151d252b2f32333433322f2b251e160d03000000000000172c42576c838b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b7b66503b2611001f344a5f748787866f5a67727c83888977624c37220d001f344a5f748b8b87705b46301b001225394b5c6c7a858b89837768584633200c0011233341494a4a4a453b2c1a080011233341494a4a4a453b2c1a0800000010223240484a4a463e474a4a483e31200e000011233341494a4a4a483f32210f0000000000000000000000000000000000000006192d4154687b8f9796927d6a56432f1b0800000000000000000000001c31465a6f8498917d6b5a4e46434449526072756c63594936220e00000000000d203346586b7d91907d6b594734200b001b2f425366778a9684715e4c39261300000000000011263b50667b91937d7d7d6f5a442f1a001f344a5f748b9b867d7d75604b36210b00000a1b2b3c4d5d6e807d766955412c17001f344a5f748ba08b745f4a341f0a0000000000000000000000000000000000001d3145586b7d909485766a5f58545559616e7d8f95826e5b46321e09000000000000081a2c3b454a4a4a4a463c2e1d0b00000000000000000000000000000000000000000000000516283743494a4a4a483f32210f0000000000000011233341494a4a4a453c464a4a4a483f32210f001f344a5f748b888073888c76604b36210b0000000000000000000000020910161a1d1e1f1e1d1a16110a030000000000000000172c41556974747474747474747474747474747474747473634f3a2510001e33485c6d7070706957555f686e7274705f4b36210c001f34495d707474746d5945301b00091b2e3e4e5c687074746f66594a3a281604000515232e3434343431291d0e00000515232e3434343431291d0e000000000414222d333434322b333434332c21130200000515232e34343434332d22130300000000000000000000000000000000000000001125384c6073879b9d8975614e3a2713000000000000000000000000182c4055687c8f9b89786b615b585a5d646f7d89807665513c271200000000000316293b4e617386998976634e39240f001f34495e7183958c796654412f1c0900000000000011263b50667b919c9494866f5a442f1a001f344a5f748ba095948c76604b36210b0006172838495a6a7b8c8e7c6a56412c17001f344a5f748ba08b745f4a341f0a00000000000000000000000000000000000016293b4e6072839295887c736d6a6a6d75808d9a8a7765523f2b1703000000000000000e1d293134343434322a1e10000000000000000000000000000000000000000000000000000a19263034343434332d221303000000000000000515232e34343434312a32343434332d221303001f344a5f7484899185888c76604b36210b0000000000000000000000000000000000000000000000000000000000000000000012263a4c5a5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f564634200c00192c3e4f595b5b5b574b434c545a5d5f5d5242301c08001a2e41515d5f5f5f5c4f3d2a1600001020303e4b555c5f5f5b53483b2c1c0b00000005111a1f1f1f1f1d160c0000000005111a1f1f1f1f1d160c0000000000000511191e1f1f1d181e1f1f1e190f030000000005111a1f1f1f1f1e191004000000000000000000000000000000000000000000091d3044576b808c8c826d5946321f0b0000000000000000000000001125394c5f71839497897d75706e6f7278828e96877564503b26110000000000000c1f314456697b867c73624e39240f001e33485d6f7983826f5c4a3724120000000000000010253a4f6478898b8b8b866f5a442f1a001f344a5f748b8b8b8b8b76604b36210b0012243545566777899483705e4c3a2713001f344a5f748ba08b745f4a341f0a0000000000000000000000000000000000000c1f31435464738390998f88828080838992988c7c6b5a4836230f0000000000000000000c161d1f1f1f1f1d170d00000000000000000000000000000000000000000000000000000009141b1f1f1f1f1e19100400000000000000000005111a1f1f1f1f1d171d1f1f1f1e19100400001d32465a696e76828d928c76604b36210b000000000000000000000000070d121517171716130e0901000000000000000000000a1d2e3c464a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4438281704000f21313d45464646433a30394045484a4841342513000011233341494a4a4a483e31200e00000212202e3941474a4a463f362a1d0e000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000030e19283b4f637476767565513e2a190f0500000000000000000000000a1d304254657585929b908a868484878d9594877768584734210d000000000000021427394c5e707269605545331f0b00192d40515d666f7364513f2d1a08000000000000000c2135495c6b74747474746b58432e19001f34495d707474747474705e4a35200b001a2e41536374859689766553412f1d0b001f344a5f748ba08b745f4a341f0a00000000000000000000000000000000000002142536465564727d899198979595979790867a6d5e4e3d2b190600000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000172a3c4c555a636f7c8b8b76604b36210b0000000000000000000009131b21272a2c2c2c2b27231d150c02000000000000000000101e2a323434343434343434343434343434343434343430271a0b00000313202a303030302f281d252b303334332d24160700000515232e34343434332c21130200000002101b262d333434322b23190d000000000000000000000000010e181e1f1f1e191d1f1f1f1a11050000000000000c161b1d1d1b161b1d1d1b160d0100000000000c161b1d1d1b160c0000000000000000000000000000000000000000000000000514212b363e46566060606058483e362c221607000000000000000000000013253647576674828c949a9a99999c968e837668594a3a291705000000000000000a1c2f41515d5e564c433727160300112232404a535c5f56473522100000000000000000061a2d3e4e595f5f5f5f5f5b4e3c2915001a2e41515d5f5f5f5f5f5d52422f1b07001f34495d70828b8b7d6b594736241200001f344a5f748b8b8b745f4a341f0a00000000000000000000000000000000000000081828374654606c757d8388898988837c73695d4f40301f0d0000000000040c101111111111111111111111111111100b03000000000000010a0f110e0800000000000000000000010a0f110e0800000000000000050d1112121212121212121212121212120f08000000000000000d1e2e3a4146515f6e7474705e4a35200b000000000000000002101b262f363b3f424242403c3731281f14070000000000000000000d171d1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1c140900000000020e161b1b1b1b1a140b11171b1e1f1e1911060000000005111a1f1f1f1f1e190f030000000000000912191e1f1f1d17100700000000000000000000000000111f2b323434332c313434342e23150500000000101e293032323029303232302a1f1101000000101e2930323230291e1000000000000000000000000000000000000000000000001223323e485256504b4b4b4b4f5652493f342514020000000000000000000007192a394856636e778086898b8987827a7065584a3b2c1c0b00000000000000000012233341494943393026190a00000514222d3740484a44382917050000000000000000000f20303c464a4a4a4a4a473e301f0d0011233341494a4a4a4a4a494134241200001f34495d7074747470604e3c2a180600001f34495d70747474705d49341f0900000000000000000000000000000000000000000a192836434e5961696e727374726e6860574b3f31221201000000000b1720252626262626262626262626262626251f16090000000007131e2426231b100205090a0a0a070307141e2426231b1002000000000c1821262727272727272727272727272727231b0f01000000000000101d262c3441505c5f5f5d52422f1b07000000000000000312202d38424a505457575755514c443b312517080000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000b1e2f3d474a4a483e454a4a49413323110000000b1d2e3c454747453c444747453c2f1f0d00000b1d2e3c454747453c2e1e0c000000000000000000000000000000000000000000091c3041505a656b6155484754606b665c5143321f0b00000000000000000000000c1b2a3945515c646b70737474726d675e53473a2c1d0e000000000000000000000615232e34342f261d14090000000005111a232d333430271a0b0000000000000000000002121f2a313434343434332b201201000515232e343434343434342e24160600001a2e41515d5f5f5f5d5242301e0d0000001a2e41515d5f5f5f5d51412e1a060000000000000000000000000000000000000000000a1825313c464e545a5d5f5f5d59544d443a2e21130400000000091a28343a3b3b3b3b3b3b3b3b3b3b3b3b3b3b3a33271807000008162531393b372d20151a1e1f1f1f1c18162531393b372d20110200000a1b2a353b3c3c3c3c3c3c3c3c3c3c3c3c3c3c372d1f0e000000000000000a121723323f484a4a494134241200000000000000001021303e4b555e65696c6c6c6a6660584e43352617060000000000000000000000000000050f161917110800000000000b141818140c01000000000000000000000000000000050d1112121211121212100b020000000000000003080d0f1111100e0a040000000000000005111a1f1f1f1f1e191004000014283b4d5a5f5f5c4f585f5f5d51412e1a06000014283b4c595c5c594c585c5c594d3c2a16020014283b4c595c5c594c3b28150100000000000000000000000000000000000000000e23384c5f6d77807266595865717d786e614e3a25100000000000000000000000000c1b28343f4850565b5e5f5f5d59534b4136291c0e00000000000000000000000005111a1f1f1b130a01000000000000000710191e1f1c1409000000000000000000000000010d161d1f1f1f1f1f1e180f0200000005111a1f1f1f1f1f1f1f1a120600000011233341494a4a4a49413425130100000011233341494a4a4a4941332311000000000000000000000000000000000000000000000008141f29323a4045484a4a4845403931271c10030000000000142738464f50505050505050505050505050504e453625120007172534424d504a3e2f292f33343434312c2634434d504a3e2f20110100152839475052525252525252525252525252514a3d2c1a0600000000000000000514222d333434342e241606000000000000000a1c2e3f4e5c6872797d828382807a746b605344342311000000000000000000000000000a16222a2e2c251a0c000001111e282d2d281e1206000000000000000000000000000c18212627272726272727251e1406000000000811171d2124262625231e180f05000000000515232e34343434332d22130300182d42576a74746d59677474705d4935200b0000192e43576a72726a586972726b5945301c0700192e43576a72726a58442f1a0600000000000000000000000000000000000000000f243a4f6479889084766a6976838f897b67523c2712000000000000000000000000000a17222c353c4246494a4a48443e372e24180c0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000515232e34343434342e241607000000000515232e34343434342e231505000000000000000000000000000000000000000000000000020d161e262b3033343433302b251d140a000000000000001c3044566366666666666666666666666666666254412e1900122535435260655c4d3e3d43484a4a4946413a445260655c4d3e2f1e0b001c3144576467676767676767676767676767665b4936210d0000000000000000000410191e1f1f1f1a120600000000000000001326394b5d6c7a858d93929191948f887d716252412e1b0800000000000000000000030f1b27343e4340372a1a08000e1f2f3b42423b3024170b00000000000000000000000a1b2a353b3c3c3c3b3c3c3c3a3124150400000e1b252b32363a3b3b3b38332b22160900000011233341494a4a4a483f32210f00182e43586d8388735f687d8b77634e39251000001a2f44596e8487725d6c8388735f4a36210c001a2f44596e8487725d49341f0b00000000000000000000000000000000000000000d2136495b69778693887b7a879487786b5d4c38240f0000000000000000000000000000050f1921282d31343434332f2a241b11060000000000000000000000000000000000000000000002090f1416171715120d060000000000000000000000000000040b1115171716130f090b111313120e070000000000000000000000000000000000000005111a1f1f1f1f1f1a120600000000000005111a1f1f1f1f1f1a1105000000000000000000000000000000000000000000000000000000030b11171b1e1f1f1e1b16110a0100000000000000001f344a5f737b7b7b7b7b7b7b7b7b7b7b7b7b7b715c47321c001b2f425361707a6b5c4d51585d5f5f5e5b554d5362707a6b5c4d3b2713001f344a5f747c7c7c7c7c7c7c7c7c7c7c7c7c79644f3a240f0000000000000000000000000000000000000000000000000000001a2e4256687a8b9289827c7b7c80868f8f82705e4b38240f0000000000000000000814202c39455158544837251100182b3d4d57574d4135291d11050000000000000000001528394750525252505252524e4233210e000c1d2c3840464b4f5050504c473e3427180800001a2e41515d5f5f5f5c503e2b1700162b4054697d8d7864657a907c68533e2a150000172c41566b808c7762697d8e78644f3a261100172c41566b808c77624d3924100000000000000000000000000000000000000000061a2c3d4b59677583918d8c928576685b4d3f2e1c0900000000000000000000000000000000050d13191c1f1f1f1e1a160f0800000000000000000000000000000000000000000000010c151d24292c2c2c2a27211a110700000000000000000000010c171f262a2c2c2b28231d1f2528292722190d00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001f344a5f748b91919191919191919191919188725c47321d001f34495e71808a7a6b5d646c727474737069606371808a7a6a56412c17001f344a5f748b93939393939393939393939079644f3a250f0000000000040a0e0d09010000000000080d0e0b050000000000001e33485d71868f80756d6866676b727c8c8e7a67523e291400000000000000010d1a26323e4a56626d6654402c17001e32475a6a6b5f53473a2e22160a00000000000000001c314457646767676367676760503d29140016293b4a545b6064666664615b514536261402001f34495d707474746e5b46311c0015283c51667b907d6862778c826d58432e1a050015283d52677c917c67667b907d69543f2b160015283d52677c917c67533e29140000000000000000000000000000000000000000000e1f2d3b49576573828b8b827466584a3d2f211100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000006131e2831383e4042423f3b352d24190d000000000000000004121e2a333a3f4242403d3831323a3e3e3c362b1d0c0000000000000000010e181e1f1f1f1f1a1105000000000000000000000000000000000000000000000000000000070d0e0e0e0d090100000000000b14181919191919191919191919191919191919191918130a000000000000000000001f344a5f748b8d8d8d8d8d8d8d8d8d8d8d8d88725c47321d001e33485d6f7d8e8a7b6d7780878a8b89847c7372829088786855402c16001e33485e738893808080808080808080808079644f3a250f000000000b171f23221d1307000005121c222320180d00000000001f34495e738380706359535052565f6d8094826b56402b1600000000000006131f2b37434f5c6874806e58432e19001f344a5f747c7064584c4034281b0f030000000000001f344a5f747c7c7c717c7c7c6c57422c17001d314558676f75787b7b79766e635444311e0b001f344a5f748b8b88725c47321d001c31455866788d836d64738987715d48331f0a001c31445764798f826c64778d836d5944301b001c31445764798f826c57432e19000000000000000000000000000000000000000000010f1d2b39475563707474716456483a2d1f110300000000000000000000000000000000050d111212120e07040c111212120f08000000040c111212120f0800000000000000081724303b454c5256575754504940372b1e11020000000000031322303c464e54575755524c44454e535351493b2a170400000000000000111f2b32343434342e23150500000000000000000000000000000000000000000000000004111b21232323221d1307000001111e282d2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2d271c0f0000000000000000001f34495e7177777777777777777777777777776f5b46311c00192d4051606f7d8e8b7d8a94918c8c8e95908583918878695a4b392612001b30455a6f8495806c6a6a6a6a6a6a6a6a6a695d4a36220d0000000c1b29333837302516070514232f3738342a1d0e000000001b3043556474786351463f40434953677c92826b56402b1600000000000c1824303c4855616d7986846e58432e19001f344a5f748b82756a5d5145392d21150800000000001f344a5f748b9382728893836c57422c17001f344a5f74838a8e8d8c8d8a8272614e3b2612001f344a5f748b9d88725c47321d001f344a5f747d8b8772707d868b76604b36210b001f344a5f747c8b8670727c8988735e48331e001f344a5f747c8b86705b46301b00000000000000000000000000000000000000000000000d1b293745535d5f5f5e5446382a1c0f01000000000000000000000000000000000b1721262727272219162026272727231b0f0109162026272727231b0f010000000008172635424e5860676b6c6c69645d53483c2f20100000000000102131404d5962696c6c6a66605756616868655947331f0a0000000000000b1e2f3d474a4a4a494133231100000000000000000000000000000000000000000000000213222e363838383730251606000e1f2f3b4243434343434343434343434343434343434343413a2d1d0c00000000000000001b2f42536062626262626262626262626262625f51402c18001122324251606f7d8e9393877c777679828c97948778695a4b3c2d1c0a00172c4055697c908977675a54545454545454544c3f2d1b0700000b1a2a39464d4c43342516142332414b4d473b2c1d0f000000142637465664675b50535455585d647083907c68533f2a1500000005111d2936424e5a66727d8b94846e58432e19001f344a5f748b94887b6f63564a3e32261a0e020000001f344a5f748b9782728898836c57422c17001d3246596c7d807a77767780907d6a55402c16001f344a5f748b9d88725c47321d001f344a5f748b9788727087958c76604b36210b001f344a5f748b96877073899589735e48331e001f344a5f748b9687705b46301b0000000000000000000000000000000000000000000000000b19273541494a4a494236281a0c0000000000000000000000000000000000091a29343b3c3c3c362b27333b3c3c3c372d1f161827333b3c3c3c372d1f0e0000000315253544525f6b747b8083827d7870665a4d3e2e1e0d000000081b2d3e4f5e6b767d8283807b746a64747d7d76614c37220d00000000000014283b4d5a5f5f5f5d51412e1a06000000000000000000000000000000000000000000000d2031404b4e4e4e4c4334231100182b3d4d5758585858585858585858585858585858585858564b3b28150000000000000000122535434b4c4c4c4e60696a6a695d4c4c4c4c4a4133221000051423324256697b8d938375696260656e7b8b9685725f4c3c2d1e0f000011263a4d6073859686786c625a534c443f3f3f3a2f21100000091a29384857626052433425233242505e63594a3b2d1e0d000009192838475152536368696a6c7178828f8573604d39251000000a16222f3b47535f6b7784908f83766956412d18001e33485c6e7a87938d8074685c5044372b1f130600001f344a5f748b9782728898836c57422c1700172a3c4f61706c66626063758b836c57422c17001f344a5f748b9688725c47321d001f344a5f748b9d887270879c8c76604b36210b001f344a5f748b9c877073899f89735e48331e001f344a5f748b9c87705b46301b000000000000000000000000000000000000000000000000000917242e343434342f25180a0000000000000000000000000000000000001426384750525251493b36454f5252514a3d2c2b2b36454f5252514a3d2c1a0600000f2132435362707d8890959596938d83776a5c4c3c2b190600001125384a5c6d7c89929491928f887d7082928d77624c37220d000000000000182d42576a747474705d49341f090000000000000000000000000000000000000000000015293d4f5e6363636052402d19001e32475a6a6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e695844301b0000000000000000071725303637373e53687d808079644f3a3737362f24150500000c2135495d728698887565574e4b515d6c7d908f7c6854402c170200000a1e314456677786938a80756e6760584f44382a1d11030000142738475665757061524334324251606e7768594b3c2b180500000a1a29353c445a6f7d7d8083868c8d8375665644311e0a0009192734404c5864707d89958a7d7165594b3a271300192d3f505d6975828e9286796d6155493d31241504001f344a5f748b9782728898836c57422c17000d1f3244576c7d787472737c8f826c57422c17001f344a5f748a887d715c47321d001f344a5f748b9d887270879c8c76604b36210b001f344a5f748b9c877073899f89735e48331e001f344a5f748b9c87705b46301b000000000000000000000000000000000000000000000000000006121a1f1f1f1f1b1207000000000000000000000000000000000000001b2f43566467676559474153636767665b494040404153636767665b4936210d0005182b3e506171828f9489838082868f95897a6a5a483623100000182c4054677a8c9789807b7c80878f8087998b77624c37220d00000002090d192e43586e848b8b745f4a341f0e0b050000000000000000000000000000000000000000182d43586c787878705c47311c001f344a5f7484848484848484848484848484848484848484725c47321d00000000000000000008141c2122293e53687d949079644f3a2522211b120600000010253a4f64788d927d6a58473a363f4e60738798846f5a45311c0700000114263849596875828c9289837b746c615648392a190800001c30445665748480706152434251606f7d8777695a4834200b0000000b18222f445a6f86919194917d7870655748382614010014263745515e6a76828f9185786c6053483b2d1c0a001022323f4b57636f7c88948b8072675a4e4233220f001f344a5f748b9782728898836c57422c170002152a3e5265778a8a88898e867664513d2914001d32475b70858b756455422e1a001f344a5f748b8b887270878b8b76604b36210b001f344a5f748b8b877073898b89735e48331e001f344a5f748b8b87705b46301b000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001e33485d727c7c76614c465b707c7c79644f555656515b707c7c79644f3a240f000d2135485b6d80909182766d6a6b727c8a9989776553402c1904001d32465b70849789786c66676b737d8e8c927c6f5f4a36210c000009151e23232e43586e84998b745f4a34232320180d00000000000000000000000000000000000000192e43586e848f88725c47321d001f344a5f748b999999999999999999999999999999999988725c47321d0000000000000000000e1a24292a2a3e53687d949079644f3a2a2a2923190c00000013283d53687c928c77624e3a29223043586c829688735e49341f0a000000091a2b3b4a58646f7880888f8f887d7366574837251300001f344a5f7384938f8070615251606f7d8e968877634e38230e00000111202d3644596e7b7b7c7d838a8d83746553402d1904001b304355636f7b88948b8073675a4e42362a1d0f00000414222e3a46525e6a76838f9185786c60513e2b16001f344a5f748b9782728898836c57422c1700000f2335485a6d8089797b797367594835220e00182d42566b808e78644f3a2613001f34495d707474746e6d747474705e4a35200b001f34495d707474746d6f7474746f5c47321d001f34495d707474746d5945301b0000000000000000000000000000070e131313120e050000040b10131313100b04000000000000000000000000000000000000000000001e33485e73898d77624c465b70879079645c6a6b6b635b70879079644f3a250f0014293d5064778b948372645a54565f6b7a8c95836f5c48331f0b001f344a5f748995806c5a515257606f8093917b6651412f1b07000818263138383843586e84998b745f4a383838342b1e0e000000000000010202020202020202020202192e43586e849988725c47321d001f344a5f748b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b88725c47321d00000000000000000c1d2c373e3f3f3f53687d949079644f3f3f3f3e362a1b09000013293e53687d948b745f4a3520142a3f54687d948b745f4a341f0a000000000d1d2c3a46525c646c747b838d9185756654422f1c08001e33475b6c7b8b9a8f807061606f7d8e9c8d7d6e5e4b36210d0000101f2f3e4a4e5261666667696e76839383705c48331e09001f34495e73828d9286796d6155493d3125190c0000000004101c2835414d5965717d8a968a7d6e59442f1a001f344a5f748b9782728898836c57422c17000006182b3e506376898270645f564a3b2a18050013283d52667b907c67523d2813001a2e41515d5f5f5f5c5c5f5f5f5d52422f1b07001a2e41515d5f5f5f5c5d5f5f5f5d513f2c19001a2e41515d5f5f5f5c4f3d2a16000000000000000000000000000d19232829292722180b0f181f25282928251f170d0100000000000000000000000000000000000000001e33485e73898d77624c465b7087907964667982826f5c70879079644f3a250f00192e43576c80948a7765544740424e5d6e82958b77634e392510001f344a5f748a947d685449464651647990917b66503b26120000132536444c4e4e4e586e84998b745f4e4e4e4e483c2c1a070000000a12171717171717171717171717192e43586e849988725c47321d001f34495d70747474747474747474747474747474747474746e5b46311c000000000000000016293b495354545454687d94907964545454545248382714000013293e53687d948b76604b3723182b40546a80948a745f4a341f0a0000000413212e373a3f49515860676f7a879484725f4b37230e00182b3e4e5d6c7b8b9a8f80706f7d8e9c8d7d6e5f50402e1b07000b1d2e3d4d5c635c4e505052545a64768b8b76614c37220c001f344a5f748b948074685c5044372b1f1307000000000000000b17232f3b4753606c78859a866f5a442f1a001f344a5f748b8b8272888b836c57422c170000000e213446596c7d8579644f43392c1d0c00000f23384c61768b806a55402b160011233341494a4a4a48484a4a4a4941342412000011233341494a4a4a48484a4a4a48403222100011233341494a4a4a483e31200e0000000000000000000000000b1c2b363d3e3e3c35291a222b33393d3e3d39332a1f1204000000000000000000000000000000000000001e33485e73898d77624c465b70879079646f83968c776470879079644f3a250f001d32475c718698836f5b47362b303f5165798e927c68533e2914001d32475c7085978472655e5b5b5e647990917b66503b261100001b2f435461636363636e84998b7463636363635a4a37230e0000101d262c2c2c2c2c2c2c2c2c2c2c2c2c2e43586e849988725c47321d001a2e41515d5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5c503e2b1700000000000000001d314558676a6a6a6a6a7d9490796a6a6a6a6a6656432f1a000012273c51667b908f7966523f302a36475a6e839787715d48331e080000021322313f4b4f4a3f3d444c535d69788a8f7a65513c2712000f20303f4e5d6c7b8b9a8f807d8e9c8d7d6e5f5041322211000014283a4c5b6b7869594e474548506074898d77624c37220d001f344a5f7483908d8274685c5043372b1f120600000000000a16222f3b4753606c7885918d806f5a442f1a001f34495d707474746e7474746955412c1700000004172a3c4f617271695d4a36271b0e0000000a1e33485c6f747468543f2a15000515232e343434343333343434342e24160600000515232e343434343333343434332d221404000515232e34343434332c21130200000000000000000000000015283a485253535147382b353e474e5253524e473c302314040000000000000000000000000000000000001e33485e73898d77624c465b7087907965788c8a93826e70879079644f3a250f001f344a5f738995806a55402b1822364b60748b95806a55402b1600192d4155687a8c90837873707073767d90917b66503b261100001f34495e72787878787884998b78787878787766513c2712000d1e2e3a414242424242424242424242424243586e849988725c47321d0011233341494a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a483f32210f00000000000000001f344a5f748080808080809490808080808080725c47321d00000f24384d62768a95826f5d4e423f465364768a95826c58432f1a0500000e2031404f5d645d4e413838404b5b6f85947d68533e291300021221303f4e5d6c7b8b998f8e9c8d7d6e5f50413223140400001a2f4357697988776b615c5a5c636d7d8f88745f4a35200b001c31445766727d8b9286796d6155483c302417090000000e1b2834404c5965717d8a94887b6f62523f2b17001a2e41515d5f5f5f5c5f5f5f5a4c3a2612000000000d203244545e5d554c3f2d1b090000000004192c3f515d5f5f594a392511000005111a1f1f1f1f1e1e1f1f1f1f1a12060000000005111a1f1f1f1f1e1e1f1f1f1e19110500000005111a1f1f1f1f1e190f03000000000000000000000000001c3145586668686455433d47515a6367686762594e413222120000000000000000000000000000000000071e33485e73898d77624c465b708790796e82917d8a8a7770879079644f3a250f001f344a5f748b95806a543f2a161f344a5f738996826b56402b16001226394b5d6d7b88908d888787888c8c94917b66503b261100001f344a5f748b8f8f8f8f8f9e928f8f8f8f8f7c67523c271200172a3c4c555757575757575757575757575757586e849988725c47321d000515232e3434343434343434343434343434343434343434332d22130300000000000000001f344a5f748b95959595959e9b959595959588725c47321d00000d1e33475b6e82948c7b6c5f565459647182948c7865513d2916070000162a3d4f5e6d796c5e534c48484d5c7086937d68533e29130000031221303f4e5d6c7a8a9da18d7d6e5f5041322314040000001b30465b708393897d75716f7176808c8f7d6c5845311c08001528394854606d7986928b8072665a4e4135271706000c1d2c3945515e6a76838f8f83766a5d51443523100011233341494a4a4a484a4a4a463c2e1d0a0000000002152736434949413a2f211000000000000010223240484a4a463b2d1b0900000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001f344a5f747d7d725f4d505a646e767c7d7c766b5f50402f1e0c000000000000000000000000000006121b2033485e73898d77624c465b70879079778b887582948270879079644f3a250f001e33485d728897826d59453223283a4e62778c937d69543f2a1400091c2e3f4f5d6a747c83868786837d7990917b66503b261100001f344a5f748b8f8f8f8f8f9e9490909090907c67523c2712001d32465a696c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6e849988725c47321d000005111a1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1e1910040000000000000000001f344a5f748989898989899693898989898988725c47321d000b1c2b3a49586776899a8a7c726b6a6d76829095807061524334251604001b3045596d7c8b7c7067605e5e616b7a8c8e7965503b26110000051423324251606f7d8e9e9d8f807061524334251607000000182d41536474828d918a8786878b928a7d70604e3c291501000a1b2a37434f5c6874828e9084776b5f53453523100016293b4a56636f7b88948a7d7165584c4033261706000515232e3434343433343434322a1e100000000000000918252f34342e261d11030000000000000414222d333434322a1d0f0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001d32475b70848f7c6a5f636d77828a929492897c6e5e4d3b2815020000000000000000000000000616242f3536485e73898d77624c465b708790798293806c778c8a76879079644f3a250f001b30455a6e83978874615040373a4657697d918e7965503b271200001021313f4e5761686d6f706f6d697990917b66503b261100001f34495e72787878787884998b79797979797966513c2712001f344a5f7483838383838383838383838383838383859a88725c47321d00000000000000000000000000000000000000000000000000000000000000000000000000001e33485d6f73737373737d94907973737373736d5a46311c0015283a49586776869589958f8682808389938f8d8f807061524333210e001b30455a6e808e8e837b757373767d899584715e4a36220d00041423324251606f7d8e9c8d8b9a8f807061524334251607000011243647566470798286898b898680776d605142311f0d0000000c1925323e4a5763707c8995897d7063533f2b16001d3145586874828d9185786c6053473b2e22160800000005111a1f1f1f1f1e1f1f1f1d170d000000000000000008131b1f1f1a120a0000000000000000000511191e1f1f1d170c00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000182c4054677a8d897a7477808a938a8380828c8d7c6a5845311d09000000000000000000000000122434424a4b4b5e73898d77624c4b5b708790798a8a76636f839380879079644f3a250f00172b4054687c8f91806e5e524c4e576475879986725f4b36220d00011426394b5d6a665a585a5b5a58697d928e79644f3a251000001b2f435461636363636e84998b7464646464645b4a37230f001f344a5f748b989898989898989898989898989898999d88725c47321d0000000000000000000000000000000000000000000000000000000000000000000000000000192d40515c5e5e5e5e687d949079645e5e5e5e5b4f3e2b17001c314558677686958677838d9396959690887d7d8d8f807061513e291500172b3e51616f7c88908f8b88898b919186766654412e1b07000f21324151606f7d8e9c8d7d7b8b9a8f807061524334251300000718293846525d656c71737473706b645a4f4233241402000000000814212d3945525e6b7784908f826e58432e19001f344a5f7486928d8073675b4e4236291d110400000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001125384b5d6f808f8e898c938b82766d6a6e7a8b8874604c38240f0000000000000000000000001a2e41525e60606073898d776260605f7087908093826d5a66798d89879079644f3a250f001125394c5f7285968c7c6f666263697583938e7c6956432f1b0700081c304355687a776d645e5b5d6573869988745f4b36210d0000132536444c4e4e4e586e84998b745f4f4f4f4f493d2d1b08001f344a5f748b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b88725c47321d00000000000000000000000000000000000000000000000000000000000000000000000000001122323f4748484853687d949079644f484848473e31200e001f344a5f74869586766770797d8283827b756b6e7d8d8f806c57422c17000f213342515e6a747c83888a8b89857d746758483725120000182c3f505f6f7d8e9c8d7d6e6c7b8b9a8f8070615242301c0800000b1a2835404a51585c5f5f5e5c5750473e32241506000000000000030f1b2834414d596672808c846e58432e19001f344a5f748b887b6f62564a3d3125180c00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000081b2e405161707d868a8882786e635a545d6d82867b67523c27120000000000000000000000001f34495d7076767676898d77767676737087958e8c7864515d7084938f9079644f3a250f00091d304355677788968d827a77777d87938f80705e4c3a271400000c21364b6072858a82787370717783928f7d6c5845311c0800000818263138383843586e84998b745f4a3a3a3a362c1f0f00001f34495d70747474747474747474747474747474747474746e5b46311c00000000000000000000000000000000000000000000000000000000000000000000000000000514222c3233333e53687d949079644f3a3333322b211303001d32465a6978877767585d64696c6c6b6761585f6e7d827264533f2a150004152433414d5761686e72747473706a6156493a2a190800001d32475b6e7d8e9c8d7d6e5f5d6c7b8b9a8f80705f4b36210c0000000a17232d363d43474a4a4947423c342b2014060000000000000000000a17232f3c4855616d7a846e58432e19001f344a5f7483766a5d5145382c20130700000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000010223342515f6a7174736d655b51473f51646f6f6f624f3a26110000000000000000000000001f344a5f748b8c8c8c90928c8c8c8c7870879c96836f5c4954677a8f9d9079644f3a250f0000132637495a69788590968f8c8d92958b80706152412f1d0a00000c21364b60727d89928d8886878c948d8071604e3c29150100000009151e23232e43586e84998b745f4a342524211a0e0100001a2e41515d5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5c503e2b170000000000000000000000000000000000000000000000000000000000000000000000000000000410191d1e293e53687d949079644f3a251e1d180f030000172a3c4c5a697468594a495054575756524d45505f6e7263544636231000000615232f3b444d545a5d5f5f5e5b554e44392b1c0c0000001e33485d70808f8d7d6e5f504e5d6c7b8b928373604c37210c0000000006111a22292e32343434322e2821180e03000000000000000000000005121e2b3743505c68746a57422d18001f34495d707165594c4033271b0e020000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000004152433414e575d5f5e5952493e343546545a5a5a5244321f0c0000000000000000000000001f344a5f748b8b8b8b8b8b8b8b8b8b78708788887a6653404b5f7286888879644f3a250f0000081a2b3c4b5a67737c84898b8b8782786d615243342312000000081d314454616b757d84898b8b88837a6f625343311f0d000000000002090d192e43586e848b8b745f4a341f0f0d060000000011233341494a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a483f32210f0000000000000000000000000000000000000000000000000000000000000000000000000000000000000013293e53687d8b8b79644f3a250f0000000000000d1e2e3c4b595f584a3b363b404242413e383241505c5e54453628180600000005121e2831394045484a4a4946413b32271b0d00000000192d41526170807d6e5f50413f4e5d6c7b8373645544311d09000000000000070e15191d1f1f1f1d19140d050000000000000000000000000000010d1926323e4b575f5a4d3b2814001a2e41515d5e53473b2f22160900000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000061524303b43484a48453e362c212836404444443f352615030000000000000000000000001f34495d7074747474747474747474726b7272726e5d4a3742566872727270614d38230e0000000d1e2d3c4956606970737474726d655b50433425160500000001142636434e5961696f737474736e675d5244352514020000000000000000182d42576a747474705d49341f090000000000000515232e3434343434343434343434343434343434343434332d2213030000000000000000000000000000000000000000000000000000000000000000000000000000000000000013283d526674747473624e39240f00000000000000101e2d3b464a453b2c21272b2c2c2c292423323f4849433627190a0000000000000b151e252b3033343434312d261f150a0000000000112434435261706e5f504132303f4e5d6c736455463727150200000000000000000000000000000000000000000000000000000000000000000000000814212d3a444a473d2f1e0b0011233341494942362a1d110500000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000006131e282e333433302a22190f19242c2f2f2f2b231708000000000000000000000000001a2e41515d5f5f5f5f5f5f5f5f5f5f5e595c5c5c5b50402e394a575c5c5c5c5344311e0a000000000f1e2c38434d555b5f5f5f5d5851493e322516070000000000081826313c464e555a5e5f5f5e5a534b403426170700000000000000000014283b4d5a5f5f5f5d51412e1a060000000000000005111a1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1e19100400000000000000000000000000000000000000000000000000000000000000000000000000000000000000000e233648585f5f5f5e5545331f0b00000000000000000f1d2a323431291d0e1215171717141014222d33342f2518090000000000000000020a11171b1e1f1f1f1c18120b020000000000000616253443525d5b5041322321303f4e5b5f5646372819090000000000000000000000000000000000000000000000000000000000000000000000000003101c283134322b1f1100000515232e34342f25180c000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000010b141a1e1f1e1b160f06000711181a1a1a171006000000000000000000000000000011233341494a4a4a4a4a4a4a4a4a4a4945474747463f32232c3a4447474747413526140200000000000e1b26303a41464a4a4a48443e352c2115070000000000000008141f29323a4046494a4a49453f382e231608000000000000000000000b1e2f3d474a4a4a49413323110000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000007192b3a454a4a4a4943372716030000000000000000000c171d1f1d160c00000000000000000410191e1f1b1308000000000000000000000000000000000000000000000000000000000000071625344148473f3223141221303e474a443828190a000000000000000000000000000000000000000000000000000000000000000000000000000000000b151c1f1e180e0100000005111a1f1f1b12070000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000515232e34343434343434343434343430323232312c22141c282f323232322d2417080000000000000009141d262c31343434332f2922190f03000000000000000000020d161f262c3134343434302b241b1105000000000000000000000000111f2b32343434342e23150500000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000d1c2831343434343026190a000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000716242d33322c2114040312202b333430271a0b0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005111a1f1f1f1f1f1f1f1f1f1f1f1f1b1d1d1d1c1810040b151b1d1d1d1c191106000000000000000000010a12181c1f1f1f1e1a150e0600000000000000000000000000030b12181c1f1f1f1f1b1710080000000000000000000000000000010e181e1f1f1f1f1a1105000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000b151c1f1f1f1f1b14090000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000611191e1d180f040000020f181e1f1c14090000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 + m_StreamData: + offset: 0 + size: 0 + path: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/ModResources/Fonts/Raleway-Regular SDF.asset.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/ModResources/Fonts/Raleway-Regular SDF.asset.meta" new file mode 100644 index 00000000..fd43cfe3 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/ModResources/Fonts/Raleway-Regular SDF.asset.meta" @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 2abf75d6e0d8a4aa6910fae6ee5d638b +NativeFormatImporter: + externalObjects: {} + mainObjectFileID: 11400000 + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/ModResources/Fonts/ZCOOLKuaiLe-Regular SDF.asset" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/ModResources/Fonts/ZCOOLKuaiLe-Regular SDF.asset" new file mode 100644 index 00000000..c5fdd886 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/ModResources/Fonts/ZCOOLKuaiLe-Regular SDF.asset" @@ -0,0 +1,3636 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!114 &11400000 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 71c1514a6bd24e1e882cebbe1904ce04, type: 3} + m_Name: ZCOOLKuaiLe-Regular SDF + m_EditorClassIdentifier: + hashCode: -479905588 + material: {fileID: 21204982835221424} + materialHashCode: -269601849 + m_Version: 1.1.0 + m_SourceFontFileGUID: 9e22939ce06994941b7231ed36560d5e + m_SourceFontFile_EditorRef: {fileID: 0} + m_SourceFontFile: {fileID: 0} + m_AtlasPopulationMode: 0 + m_FaceInfo: + m_FamilyName: ZCOOL KuaiLe + m_StyleName: + m_PointSize: 64 + m_Scale: 1 + m_LineHeight: 64 + m_AscentLine: 56.375 + m_CapLine: 44.937496 + m_MeanLine: 0 + m_Baseline: 0 + m_DescentLine: -7.6875 + m_SuperscriptOffset: 56.375 + m_SuperscriptSize: 0.5 + m_SubscriptOffset: -6.4 + m_SubscriptSize: 0.5 + m_UnderlineOffset: -6.4 + m_UnderlineThickness: 3.2 + m_StrikethroughOffset: 17.704546 + m_StrikethroughThickness: 3.2 + m_TabWidth: 160 + m_GlyphTable: + - m_Index: 1 + m_Metrics: + m_Width: 16 + m_Height: 64.0625 + m_HorizontalBearingX: 0 + m_HorizontalBearingY: 56.375 + m_HorizontalAdvance: 16 + m_GlyphRect: + m_X: 6 + m_Y: -69 + m_Width: 16 + m_Height: 64 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 2 + m_Metrics: + m_Width: 13.124999 + m_Height: 51.562496 + m_HorizontalBearingX: 1.8749999 + m_HorizontalBearingY: 48.749996 + m_HorizontalAdvance: 14.375 + m_GlyphRect: + m_X: 327 + m_Y: 120 + m_Width: 13 + m_Height: 52 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 3 + m_Metrics: + m_Width: 12.187499 + m_Height: 13.812499 + m_HorizontalBearingX: 1.8749999 + m_HorizontalBearingY: 53.749996 + m_HorizontalAdvance: 14.8125 + m_GlyphRect: + m_X: 392 + m_Y: 436 + m_Width: 12 + m_Height: 14 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 4 + m_Metrics: + m_Width: 38.499996 + m_Height: 34.812496 + m_HorizontalBearingX: 1.2499999 + m_HorizontalBearingY: 31.812498 + m_HorizontalAdvance: 40.375 + m_GlyphRect: + m_X: 427 + m_Y: 324 + m_Width: 38 + m_Height: 35 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 5 + m_Metrics: + m_Width: 32.374996 + m_Height: 43.124996 + m_HorizontalBearingX: 1.2499999 + m_HorizontalBearingY: 35.874996 + m_HorizontalAdvance: 35.5 + m_GlyphRect: + m_X: 64 + m_Y: 130 + m_Width: 32 + m_Height: 43 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 6 + m_Metrics: + m_Width: 36.937496 + m_Height: 45.562496 + m_HorizontalBearingX: 1.5624999 + m_HorizontalBearingY: 40.187496 + m_HorizontalAdvance: 40.1875 + m_GlyphRect: + m_X: 215 + m_Y: 233 + m_Width: 37 + m_Height: 46 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 7 + m_Metrics: + m_Width: 44.124996 + m_Height: 43.749996 + m_HorizontalBearingX: 1.8749999 + m_HorizontalBearingY: 38.187496 + m_HorizontalAdvance: 43.5 + m_GlyphRect: + m_X: 254 + m_Y: 6 + m_Width: 44 + m_Height: 44 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 8 + m_Metrics: + m_Width: 5.1874995 + m_Height: 13.812499 + m_HorizontalBearingX: 1.8749999 + m_HorizontalBearingY: 53.624996 + m_HorizontalAdvance: 7.75 + m_GlyphRect: + m_X: 455 + m_Y: 64 + m_Width: 5 + m_Height: 14 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 9 + m_Metrics: + m_Width: 18.187498 + m_Height: 52.187496 + m_HorizontalBearingX: 3.8124998 + m_HorizontalBearingY: 45.687496 + m_HorizontalAdvance: 22.3125 + m_GlyphRect: + m_X: 245 + m_Y: 120 + m_Width: 18 + m_Height: 52 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 10 + m_Metrics: + m_Width: 18.187498 + m_Height: 52.187496 + m_HorizontalBearingX: 0.31249997 + m_HorizontalBearingY: 45.687496 + m_HorizontalAdvance: 22.3125 + m_GlyphRect: + m_X: 420 + m_Y: 230 + m_Width: 18 + m_Height: 52 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 11 + m_Metrics: + m_Width: 25.187498 + m_Height: 21.437498 + m_HorizontalBearingX: 1.2499999 + m_HorizontalBearingY: 40.562496 + m_HorizontalAdvance: 26.4375 + m_GlyphRect: + m_X: 91 + m_Y: 485 + m_Width: 25 + m_Height: 21 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 12 + m_Metrics: + m_Width: 35.812496 + m_Height: 33.499996 + m_HorizontalBearingX: 1.8749999 + m_HorizontalBearingY: 31.249998 + m_HorizontalAdvance: 39.6875 + m_GlyphRect: + m_X: 263 + m_Y: 351 + m_Width: 36 + m_Height: 33 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 13 + m_Metrics: + m_Width: 12.062499 + m_Height: 18.499998 + m_HorizontalBearingX: 1.2499999 + m_HorizontalBearingY: 9.999999 + m_HorizontalAdvance: 14.5625 + m_GlyphRect: + m_X: 452 + m_Y: 294 + m_Width: 12 + m_Height: 18 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 14 + m_Metrics: + m_Width: 35.749996 + m_Height: 7.8749995 + m_HorizontalBearingX: 3.8124998 + m_HorizontalBearingY: 20.562498 + m_HorizontalAdvance: 41.8125 + m_GlyphRect: + m_X: 176 + m_Y: 397 + m_Width: 36 + m_Height: 8 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 15 + m_Metrics: + m_Width: 10.437499 + m_Height: 10.312499 + m_HorizontalBearingX: 1.8749999 + m_HorizontalBearingY: 8.124999 + m_HorizontalAdvance: 14.25 + m_GlyphRect: + m_X: 339 + m_Y: 447 + m_Width: 10 + m_Height: 10 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 16 + m_Metrics: + m_Width: 20.249998 + m_Height: 39.687496 + m_HorizontalBearingX: 0.62499994 + m_HorizontalBearingY: 35.374996 + m_HorizontalAdvance: 20.25 + m_GlyphRect: + m_X: 263 + m_Y: 299 + m_Width: 20 + m_Height: 40 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 17 + m_Metrics: + m_Width: 34.999996 + m_Height: 45.812496 + m_HorizontalBearingX: 3.8124998 + m_HorizontalBearingY: 45.999996 + m_HorizontalAdvance: 42.625 + m_GlyphRect: + m_X: 246 + m_Y: 62 + m_Width: 35 + m_Height: 46 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 18 + m_Metrics: + m_Width: 20.062498 + m_Height: 48.249996 + m_HorizontalBearingX: -0.99999994 + m_HorizontalBearingY: 47.312496 + m_HorizontalAdvance: 23.3125 + m_GlyphRect: + m_X: 295 + m_Y: 288 + m_Width: 20 + m_Height: 48 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 19 + m_Metrics: + m_Width: 38.062496 + m_Height: 49.562496 + m_HorizontalBearingX: 0.31249997 + m_HorizontalBearingY: 47.687496 + m_HorizontalAdvance: 40 + m_GlyphRect: + m_X: 65 + m_Y: 184 + m_Width: 38 + m_Height: 50 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 20 + m_Metrics: + m_Width: 40.249996 + m_Height: 48.374996 + m_HorizontalBearingX: 0.31249997 + m_HorizontalBearingY: 47.249996 + m_HorizontalAdvance: 42.1875 + m_GlyphRect: + m_X: 6 + m_Y: 422 + m_Width: 40 + m_Height: 48 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 21 + m_Metrics: + m_Width: 43.374996 + m_Height: 48.187496 + m_HorizontalBearingX: 1.5624999 + m_HorizontalBearingY: 47.249996 + m_HorizontalAdvance: 45.9375 + m_GlyphRect: + m_X: 6 + m_Y: 243 + m_Width: 43 + m_Height: 48 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 22 + m_Metrics: + m_Width: 42.249996 + m_Height: 47.687496 + m_HorizontalBearingX: 0.31249997 + m_HorizontalBearingY: 46.874996 + m_HorizontalAdvance: 44.1875 + m_GlyphRect: + m_X: 6 + m_Y: 302 + m_Width: 42 + m_Height: 48 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 23 + m_Metrics: + m_Width: 41.187496 + m_Height: 47.999996 + m_HorizontalBearingX: 1.5624999 + m_HorizontalBearingY: 47.062496 + m_HorizontalAdvance: 44.4375 + m_GlyphRect: + m_X: 138 + m_Y: 60 + m_Width: 41 + m_Height: 48 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 24 + m_Metrics: + m_Width: 33.624996 + m_Height: 44.874996 + m_HorizontalBearingX: -0.99999994 + m_HorizontalBearingY: 45.499996 + m_HorizontalAdvance: 32.375 + m_GlyphRect: + m_X: 406 + m_Y: 117 + m_Width: 34 + m_Height: 45 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 25 + m_Metrics: + m_Width: 40.062496 + m_Height: 48.374996 + m_HorizontalBearingX: 2.1874998 + m_HorizontalBearingY: 47.249996 + m_HorizontalAdvance: 45.1875 + m_GlyphRect: + m_X: 108 + m_Y: 120 + m_Width: 40 + m_Height: 48 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 26 + m_Metrics: + m_Width: 37.749996 + m_Height: 47.687496 + m_HorizontalBearingX: 0.31249997 + m_HorizontalBearingY: 46.937496 + m_HorizontalAdvance: 37.125 + m_GlyphRect: + m_X: 115 + m_Y: 242 + m_Width: 38 + m_Height: 48 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 27 + m_Metrics: + m_Width: 10.437499 + m_Height: 30.749998 + m_HorizontalBearingX: 1.8749999 + m_HorizontalBearingY: 27.937498 + m_HorizontalAdvance: 14.25 + m_GlyphRect: + m_X: 310 + m_Y: 398 + m_Width: 10 + m_Height: 31 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 28 + m_Metrics: + m_Width: 12.062499 + m_Height: 36.999996 + m_HorizontalBearingX: 1.8749999 + m_HorizontalBearingY: 27.937498 + m_HorizontalAdvance: 14.875 + m_GlyphRect: + m_X: 450 + m_Y: 245 + m_Width: 12 + m_Height: 37 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 29 + m_Metrics: + m_Width: 25.874998 + m_Height: 26.562498 + m_HorizontalBearingX: 1.5624999 + m_HorizontalBearingY: 32.687496 + m_HorizontalAdvance: 29.4375 + m_GlyphRect: + m_X: 225 + m_Y: 432 + m_Width: 26 + m_Height: 27 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 30 + m_Metrics: + m_Width: 35.812496 + m_Height: 18.999998 + m_HorizontalBearingX: 2.4999998 + m_HorizontalBearingY: 23.687498 + m_HorizontalAdvance: 40.3125 + m_GlyphRect: + m_X: 6 + m_Y: 481 + m_Width: 36 + m_Height: 19 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 31 + m_Metrics: + m_Width: 26.437498 + m_Height: 26.562498 + m_HorizontalBearingX: 1.8749999 + m_HorizontalBearingY: 29.999998 + m_HorizontalAdvance: 29.9375 + m_GlyphRect: + m_X: 225 + m_Y: 394 + m_Width: 26 + m_Height: 27 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 32 + m_Metrics: + m_Width: 33.124996 + m_Height: 51.937496 + m_HorizontalBearingX: -1.9374999 + m_HorizontalBearingY: 49.124996 + m_HorizontalAdvance: 29.25 + m_GlyphRect: + m_X: 115 + m_Y: 179 + m_Width: 33 + m_Height: 52 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 33 + m_Metrics: + m_Width: 42.124996 + m_Height: 41.687496 + m_HorizontalBearingX: 3.1874998 + m_HorizontalBearingY: 37.999996 + m_HorizontalAdvance: 47.875 + m_GlyphRect: + m_X: 401 + m_Y: 64 + m_Width: 42 + m_Height: 42 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 34 + m_Metrics: + m_Width: 46.249996 + m_Height: 49.062496 + m_HorizontalBearingX: 2.1874998 + m_HorizontalBearingY: 47.499996 + m_HorizontalAdvance: 50.75 + m_GlyphRect: + m_X: 6 + m_Y: 64 + m_Width: 46 + m_Height: 49 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 35 + m_Metrics: + m_Width: 41.937496 + m_Height: 48.187496 + m_HorizontalBearingX: 4.1249995 + m_HorizontalBearingY: 47.124996 + m_HorizontalAdvance: 46.4375 + m_GlyphRect: + m_X: 6 + m_Y: 362 + m_Width: 42 + m_Height: 48 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 36 + m_Metrics: + m_Width: 42.812496 + m_Height: 46.499996 + m_HorizontalBearingX: 3.1874998 + m_HorizontalBearingY: 46.312496 + m_HorizontalAdvance: 49.5625 + m_GlyphRect: + m_X: 420 + m_Y: 7 + m_Width: 43 + m_Height: 46 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 37 + m_Metrics: + m_Width: 42.499996 + m_Height: 45.624996 + m_HorizontalBearingX: 3.1874998 + m_HorizontalBearingY: 45.874996 + m_HorizontalAdvance: 49.1875 + m_GlyphRect: + m_X: 61 + m_Y: 245 + m_Width: 42 + m_Height: 46 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 38 + m_Metrics: + m_Width: 39.562496 + m_Height: 44.999996 + m_HorizontalBearingX: 3.1874998 + m_HorizontalBearingY: 45.187496 + m_HorizontalAdvance: 45.625 + m_GlyphRect: + m_X: 164 + m_Y: 233 + m_Width: 40 + m_Height: 45 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 39 + m_Metrics: + m_Width: 38.312496 + m_Height: 43.812496 + m_HorizontalBearingX: 3.1874998 + m_HorizontalBearingY: 44.624996 + m_HorizontalAdvance: 42.4375 + m_GlyphRect: + m_X: 276 + m_Y: 175 + m_Width: 38 + m_Height: 44 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 40 + m_Metrics: + m_Width: 43.124996 + m_Height: 46.749996 + m_HorizontalBearingX: 3.1874998 + m_HorizontalBearingY: 46.437496 + m_HorizontalAdvance: 49.1875 + m_GlyphRect: + m_X: 310 + m_Y: 6 + m_Width: 43 + m_Height: 47 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 41 + m_Metrics: + m_Width: 40.249996 + m_Height: 43.999996 + m_HorizontalBearingX: 4.1249995 + m_HorizontalBearingY: 44.937496 + m_HorizontalAdvance: 48.5625 + m_GlyphRect: + m_X: 275 + m_Y: 120 + m_Width: 40 + m_Height: 44 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 42 + m_Metrics: + m_Width: 8.249999 + m_Height: 43.937496 + m_HorizontalBearingX: 4.1249995 + m_HorizontalBearingY: 44.874996 + m_HorizontalAdvance: 15.3125 + m_GlyphRect: + m_X: 112 + m_Y: 421 + m_Width: 8 + m_Height: 44 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 43 + m_Metrics: + m_Width: 29.749998 + m_Height: 46.312496 + m_HorizontalBearingX: 2.1874998 + m_HorizontalBearingY: 46.124996 + m_HorizontalAdvance: 30.375 + m_GlyphRect: + m_X: 328 + m_Y: 231 + m_Width: 30 + m_Height: 46 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 44 + m_Metrics: + m_Width: 35.437496 + m_Height: 47.749996 + m_HorizontalBearingX: 4.1249995 + m_HorizontalBearingY: 46.937496 + m_HorizontalAdvance: 40.25 + m_GlyphRect: + m_X: 165 + m_Y: 289 + m_Width: 35 + m_Height: 48 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 45 + m_Metrics: + m_Width: 33.187496 + m_Height: 45.499996 + m_HorizontalBearingX: 4.1249995 + m_HorizontalBearingY: 45.874996 + m_HorizontalAdvance: 38.6875 + m_GlyphRect: + m_X: 283 + m_Y: 231 + m_Width: 33 + m_Height: 45 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 46 + m_Metrics: + m_Width: 48.874996 + m_Height: 42.249996 + m_HorizontalBearingX: 2.8749998 + m_HorizontalBearingY: 44.187496 + m_HorizontalAdvance: 54.6875 + m_GlyphRect: + m_X: 137 + m_Y: 7 + m_Width: 49 + m_Height: 42 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 47 + m_Metrics: + m_Width: 42.249996 + m_Height: 43.249996 + m_HorizontalBearingX: 2.4999998 + m_HorizontalBearingY: 44.749996 + m_HorizontalAdvance: 48.9375 + m_GlyphRect: + m_X: 347 + m_Y: 65 + m_Width: 42 + m_Height: 43 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 48 + m_Metrics: + m_Width: 38.687496 + m_Height: 45.124996 + m_HorizontalBearingX: 3.8124998 + m_HorizontalBearingY: 45.499996 + m_HorizontalAdvance: 46.3125 + m_GlyphRect: + m_X: 115 + m_Y: 302 + m_Width: 39 + m_Height: 45 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 49 + m_Metrics: + m_Width: 42.812496 + m_Height: 47.999996 + m_HorizontalBearingX: 3.1874998 + m_HorizontalBearingY: 47.124996 + m_HorizontalAdvance: 48.5625 + m_GlyphRect: + m_X: 84 + m_Y: 60 + m_Width: 43 + m_Height: 48 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 50 + m_Metrics: + m_Width: 43.437496 + m_Height: 46.187496 + m_HorizontalBearingX: 3.8124998 + m_HorizontalBearingY: 46.124996 + m_HorizontalAdvance: 48.5 + m_GlyphRect: + m_X: 365 + m_Y: 7 + m_Width: 43 + m_Height: 46 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 51 + m_Metrics: + m_Width: 42.624996 + m_Height: 44.999996 + m_HorizontalBearingX: 4.1249995 + m_HorizontalBearingY: 45.374996 + m_HorizontalAdvance: 48.6875 + m_GlyphRect: + m_X: 160 + m_Y: 177 + m_Width: 43 + m_Height: 45 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 52 + m_Metrics: + m_Width: 42.437496 + m_Height: 46.124996 + m_HorizontalBearingX: 2.8749998 + m_HorizontalBearingY: 46.187496 + m_HorizontalAdvance: 48.1875 + m_GlyphRect: + m_X: 160 + m_Y: 120 + m_Width: 42 + m_Height: 46 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 53 + m_Metrics: + m_Width: 47.749996 + m_Height: 46.624996 + m_HorizontalBearingX: -3.5624998 + m_HorizontalBearingY: 46.999996 + m_HorizontalAdvance: 40.6875 + m_GlyphRect: + m_X: 6 + m_Y: 184 + m_Width: 48 + m_Height: 47 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 54 + m_Metrics: + m_Width: 39.687496 + m_Height: 44.687496 + m_HorizontalBearingX: 4.1249995 + m_HorizontalBearingY: 45.312496 + m_HorizontalAdvance: 46.125 + m_GlyphRect: + m_X: 212 + m_Y: 290 + m_Width: 40 + m_Height: 45 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 55 + m_Metrics: + m_Width: 43.374996 + m_Height: 45.249996 + m_HorizontalBearingX: 0.31249997 + m_HorizontalBearingY: 45.562496 + m_HorizontalAdvance: 40.8125 + m_GlyphRect: + m_X: 191 + m_Y: 63 + m_Width: 43 + m_Height: 45 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 56 + m_Metrics: + m_Width: 51.562496 + m_Height: 42.187496 + m_HorizontalBearingX: 0.31249997 + m_HorizontalBearingY: 44.124996 + m_HorizontalAdvance: 49 + m_GlyphRect: + m_X: 74 + m_Y: 7 + m_Width: 52 + m_Height: 42 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 57 + m_Metrics: + m_Width: 45.374996 + m_Height: 44.687496 + m_HorizontalBearingX: 0.93749994 + m_HorizontalBearingY: 45.312496 + m_HorizontalAdvance: 47.3125 + m_GlyphRect: + m_X: 197 + m_Y: 6 + m_Width: 45 + m_Height: 45 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 58 + m_Metrics: + m_Width: 46.624996 + m_Height: 48.812496 + m_HorizontalBearingX: -3.5624998 + m_HorizontalBearingY: 47.437496 + m_HorizontalAdvance: 38.3125 + m_GlyphRect: + m_X: 6 + m_Y: 124 + m_Width: 47 + m_Height: 49 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 59 + m_Metrics: + m_Width: 43.687496 + m_Height: 44.874996 + m_HorizontalBearingX: 2.1874998 + m_HorizontalBearingY: 45.562496 + m_HorizontalAdvance: 48.1875 + m_GlyphRect: + m_X: 292 + m_Y: 64 + m_Width: 44 + m_Height: 45 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 60 + m_Metrics: + m_Width: 14.812499 + m_Height: 52.874996 + m_HorizontalBearingX: 4.1249995 + m_HorizontalBearingY: 45.687496 + m_HorizontalAdvance: 16.75 + m_GlyphRect: + m_X: 451 + m_Y: 117 + m_Width: 15 + m_Height: 53 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 61 + m_Metrics: + m_Width: 20.187498 + m_Height: 39.687496 + m_HorizontalBearingX: -0.68749994 + m_HorizontalBearingY: 35.374996 + m_HorizontalAdvance: 20.25 + m_GlyphRect: + m_X: 59 + m_Y: 370 + m_Width: 20 + m_Height: 40 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 62 + m_Metrics: + m_Width: 14.874999 + m_Height: 52.874996 + m_HorizontalBearingX: -2.2499998 + m_HorizontalBearingY: 45.687496 + m_HorizontalAdvance: 16.75 + m_GlyphRect: + m_X: 450 + m_Y: 181 + m_Width: 15 + m_Height: 53 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 63 + m_Metrics: + m_Width: 26.562498 + m_Height: 21.812498 + m_HorizontalBearingX: 1.8749999 + m_HorizontalBearingY: 50.937496 + m_HorizontalAdvance: 29.125 + m_GlyphRect: + m_X: 53 + m_Y: 484 + m_Width: 27 + m_Height: 22 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 64 + m_Metrics: + m_Width: 29.062498 + m_Height: 5.2499995 + m_HorizontalBearingX: 2.4999998 + m_HorizontalBearingY: -2.5624998 + m_HorizontalAdvance: 31.3125 + m_GlyphRect: + m_X: 135 + m_Y: 408 + m_Width: 29 + m_Height: 5 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 65 + m_Metrics: + m_Width: 18.124998 + m_Height: 10.437499 + m_HorizontalBearingX: -1.3124999 + m_HorizontalBearingY: 48.624996 + m_HorizontalAdvance: 14.3125 + m_GlyphRect: + m_X: 309 + m_Y: 447 + m_Width: 18 + m_Height: 10 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 66 + m_Metrics: + m_Width: 39.062496 + m_Height: 37.187496 + m_HorizontalBearingX: 3.8124998 + m_HorizontalBearingY: 36.562496 + m_HorizontalAdvance: 43.5 + m_GlyphRect: + m_X: 369 + m_Y: 230 + m_Width: 39 + m_Height: 37 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 67 + m_Metrics: + m_Width: 29.499998 + m_Height: 39.624996 + m_HorizontalBearingX: 3.1874998 + m_HorizontalBearingY: 40.187496 + m_HorizontalAdvance: 34.625 + m_GlyphRect: + m_X: 476 + m_Y: 225 + m_Width: 29 + m_Height: 40 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 68 + m_Metrics: + m_Width: 28.437498 + m_Height: 34.062496 + m_HorizontalBearingX: 3.1874998 + m_HorizontalBearingY: 34.999996 + m_HorizontalAdvance: 33.5625 + m_GlyphRect: + m_X: 477 + m_Y: 277 + m_Width: 28 + m_Height: 34 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 69 + m_Metrics: + m_Width: 32.499996 + m_Height: 39.562496 + m_HorizontalBearingX: 3.1874998 + m_HorizontalBearingY: 40.124996 + m_HorizontalAdvance: 38.9375 + m_GlyphRect: + m_X: 91 + m_Y: 370 + m_Width: 32 + m_Height: 40 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 70 + m_Metrics: + m_Width: 32.937496 + m_Height: 34.874996 + m_HorizontalBearingX: 3.1874998 + m_HorizontalBearingY: 34.124996 + m_HorizontalAdvance: 36.75 + m_GlyphRect: + m_X: 181 + m_Y: 416 + m_Width: 33 + m_Height: 35 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 71 + m_Metrics: + m_Width: 28.562498 + m_Height: 44.812496 + m_HorizontalBearingX: 0.62499994 + m_HorizontalBearingY: 41.374996 + m_HorizontalAdvance: 30.4375 + m_GlyphRect: + m_X: 477 + m_Y: 116 + m_Width: 29 + m_Height: 45 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 72 + m_Metrics: + m_Width: 28.749998 + m_Height: 41.749996 + m_HorizontalBearingX: 2.4999998 + m_HorizontalBearingY: 38.187496 + m_HorizontalAdvance: 34.5 + m_GlyphRect: + m_X: 477 + m_Y: 172 + m_Width: 29 + m_Height: 42 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 73 + m_Metrics: + m_Width: 29.937498 + m_Height: 45.312496 + m_HorizontalBearingX: 3.1874998 + m_HorizontalBearingY: 45.749996 + m_HorizontalAdvance: 36.375 + m_GlyphRect: + m_X: 365 + m_Y: 173 + m_Width: 30 + m_Height: 45 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 74 + m_Metrics: + m_Width: 9.374999 + m_Height: 38.624996 + m_HorizontalBearingX: 3.1874998 + m_HorizontalBearingY: 39.124996 + m_HorizontalAdvance: 15.125 + m_GlyphRect: + m_X: 255 + m_Y: 183 + m_Width: 9 + m_Height: 39 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 75 + m_Metrics: + m_Width: 14.124999 + m_Height: 51.374996 + m_HorizontalBearingX: -0.68749994 + m_HorizontalBearingY: 42.312496 + m_HorizontalAdvance: 16.0625 + m_GlyphRect: + m_X: 58 + m_Y: 422 + m_Width: 14 + m_Height: 51 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 76 + m_Metrics: + m_Width: 32.812496 + m_Height: 44.312496 + m_HorizontalBearingX: 2.4999998 + m_HorizontalBearingY: 43.937496 + m_HorizontalAdvance: 36.0625 + m_GlyphRect: + m_X: 406 + m_Y: 174 + m_Width: 33 + m_Height: 44 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 77 + m_Metrics: + m_Width: 11.499999 + m_Height: 39.499996 + m_HorizontalBearingX: 3.1874998 + m_HorizontalBearingY: 38.937496 + m_HorizontalAdvance: 15.9375 + m_GlyphRect: + m_X: 310 + m_Y: 348 + m_Width: 11 + m_Height: 39 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 78 + m_Metrics: + m_Width: 38.999996 + m_Height: 29.812498 + m_HorizontalBearingX: 3.1874998 + m_HorizontalBearingY: 32.187496 + m_HorizontalAdvance: 45.375 + m_GlyphRect: + m_X: 128 + m_Y: 476 + m_Width: 39 + m_Height: 30 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 79 + m_Metrics: + m_Width: 29.624998 + m_Height: 28.124998 + m_HorizontalBearingX: 3.1874998 + m_HorizontalBearingY: 30.874998 + m_HorizontalAdvance: 36.0625 + m_GlyphRect: + m_X: 416 + m_Y: 453 + m_Width: 30 + m_Height: 28 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 80 + m_Metrics: + m_Width: 29.437498 + m_Height: 29.062498 + m_HorizontalBearingX: 3.8124998 + m_HorizontalBearingY: 31.874998 + m_HorizontalAdvance: 37.125 + m_GlyphRect: + m_X: 269 + m_Y: 469 + m_Width: 29 + m_Height: 29 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 81 + m_Metrics: + m_Width: 30.187498 + m_Height: 40.749996 + m_HorizontalBearingX: 3.1874998 + m_HorizontalBearingY: 37.374996 + m_HorizontalAdvance: 35.875 + m_GlyphRect: + m_X: 327 + m_Y: 288 + m_Width: 30 + m_Height: 41 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 82 + m_Metrics: + m_Width: 29.999998 + m_Height: 38.499996 + m_HorizontalBearingX: 3.1874998 + m_HorizontalBearingY: 37.374996 + m_HorizontalAdvance: 35.75 + m_GlyphRect: + m_X: 214 + m_Y: 184 + m_Width: 30 + m_Height: 38 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 83 + m_Metrics: + m_Width: 23.374998 + m_Height: 33.749996 + m_HorizontalBearingX: 3.8124998 + m_HorizontalBearingY: 34.124996 + m_HorizontalAdvance: 25.9375 + m_GlyphRect: + m_X: 333 + m_Y: 340 + m_Width: 23 + m_Height: 34 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 84 + m_Metrics: + m_Width: 29.437498 + m_Height: 37.124996 + m_HorizontalBearingX: 3.1874998 + m_HorizontalBearingY: 35.874996 + m_HorizontalAdvance: 33.9375 + m_GlyphRect: + m_X: 135 + m_Y: 359 + m_Width: 29 + m_Height: 37 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 85 + m_Metrics: + m_Width: 34.624996 + m_Height: 37.499996 + m_HorizontalBearingX: 1.8749999 + m_HorizontalBearingY: 36.124996 + m_HorizontalAdvance: 38.4375 + m_GlyphRect: + m_X: 176 + m_Y: 349 + m_Width: 35 + m_Height: 37 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 86 + m_Metrics: + m_Width: 33.812496 + m_Height: 29.874998 + m_HorizontalBearingX: 3.8124998 + m_HorizontalBearingY: 31.499998 + m_HorizontalAdvance: 37.625 + m_GlyphRect: + m_X: 418 + m_Y: 389 + m_Width: 34 + m_Height: 30 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 87 + m_Metrics: + m_Width: 34.874996 + m_Height: 33.999996 + m_HorizontalBearingX: 1.2499999 + m_HorizontalBearingY: 36.187496 + m_HorizontalAdvance: 35.4375 + m_GlyphRect: + m_X: 178 + m_Y: 472 + m_Width: 35 + m_Height: 34 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 88 + m_Metrics: + m_Width: 46.187496 + m_Height: 29.312498 + m_HorizontalBearingX: 1.2499999 + m_HorizontalBearingY: 33.812496 + m_HorizontalAdvance: 46.8125 + m_GlyphRect: + m_X: 369 + m_Y: 325 + m_Width: 46 + m_Height: 29 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 89 + m_Metrics: + m_Width: 39.749996 + m_Height: 34.562496 + m_HorizontalBearingX: 0.62499994 + m_HorizontalBearingY: 36.499996 + m_HorizontalAdvance: 40.375 + m_GlyphRect: + m_X: 369 + m_Y: 278 + m_Width: 40 + m_Height: 35 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 90 + m_Metrics: + m_Width: 31.999998 + m_Height: 36.999996 + m_HorizontalBearingX: 0.62499994 + m_HorizontalBearingY: 34.124996 + m_HorizontalAdvance: 32 + m_GlyphRect: + m_X: 474 + m_Y: 6 + m_Width: 32 + m_Height: 37 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 91 + m_Metrics: + m_Width: 29.937498 + m_Height: 36.687496 + m_HorizontalBearingX: 3.1874998 + m_HorizontalBearingY: 37.562496 + m_HorizontalAdvance: 35.0625 + m_GlyphRect: + m_X: 222 + m_Y: 346 + m_Width: 30 + m_Height: 37 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 92 + m_Metrics: + m_Width: 19.937498 + m_Height: 52.874996 + m_HorizontalBearingX: 2.8749998 + m_HorizontalBearingY: 45.687496 + m_HorizontalAdvance: 21.1875 + m_GlyphRect: + m_X: 214 + m_Y: 119 + m_Width: 20 + m_Height: 53 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 93 + m_Metrics: + m_Width: 8.249999 + m_Height: 54.187496 + m_HorizontalBearingX: 4.1249995 + m_HorizontalBearingY: 50.187496 + m_HorizontalAdvance: 15.3125 + m_GlyphRect: + m_X: 64 + m_Y: 64 + m_Width: 8 + m_Height: 54 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 94 + m_Metrics: + m_Width: 16.062498 + m_Height: 51.562496 + m_HorizontalBearingX: -1.6249999 + m_HorizontalBearingY: 44.312496 + m_HorizontalAdvance: 16.0625 + m_GlyphRect: + m_X: 84 + m_Y: 421 + m_Width: 16 + m_Height: 52 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 95 + m_Metrics: + m_Width: 38.749996 + m_Height: 10.437499 + m_HorizontalBearingX: 1.8749999 + m_HorizontalBearingY: 21.749998 + m_HorizontalAdvance: 42.625 + m_GlyphRect: + m_X: 368 + m_Y: 385 + m_Width: 39 + m_Height: 10 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 96 + m_Metrics: + m_Width: 0 + m_Height: 0 + m_HorizontalBearingX: 0 + m_HorizontalBearingY: 0 + m_HorizontalAdvance: 16 + m_GlyphRect: + m_X: 6 + m_Y: -5 + m_Width: 0 + m_Height: 0 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 97 + m_Metrics: + m_Width: 24.562498 + m_Height: 41.187496 + m_HorizontalBearingX: 3.1874998 + m_HorizontalBearingY: 34.249996 + m_HorizontalAdvance: 29.6875 + m_GlyphRect: + m_X: 477 + m_Y: 323 + m_Width: 25 + m_Height: 41 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 98 + m_Metrics: + m_Width: 27.749998 + m_Height: 35.937496 + m_HorizontalBearingX: 1.2499999 + m_HorizontalBearingY: 31.249998 + m_HorizontalAdvance: 29.625 + m_GlyphRect: + m_X: 326 + m_Y: 183 + m_Width: 28 + m_Height: 36 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 99 + m_Metrics: + m_Width: 43.687496 + m_Height: 45.124996 + m_HorizontalBearingX: -1.3124999 + m_HorizontalBearingY: 38.812496 + m_HorizontalAdvance: 41.125 + m_GlyphRect: + m_X: 60 + m_Y: 303 + m_Width: 44 + m_Height: 45 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 100 + m_Metrics: + m_Width: 33.624996 + m_Height: 34.374996 + m_HorizontalBearingX: 0.62499994 + m_HorizontalBearingY: 33.062496 + m_HorizontalAdvance: 34.875 + m_GlyphRect: + m_X: 224 + m_Y: 471 + m_Width: 34 + m_Height: 34 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 101 + m_Metrics: + m_Width: 8.249999 + m_Height: 54.187496 + m_HorizontalBearingX: 4.1249995 + m_HorizontalBearingY: 50.124996 + m_HorizontalAdvance: 15.3125 + m_GlyphRect: + m_X: 263 + m_Y: 234 + m_Width: 8 + m_Height: 54 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 102 + m_Metrics: + m_Width: 25.999998 + m_Height: 9.374999 + m_HorizontalBearingX: -1.3124999 + m_HorizontalBearingY: 46.312496 + m_HorizontalAdvance: 22.1875 + m_GlyphRect: + m_X: 461 + m_Y: 442 + m_Width: 26 + m_Height: 9 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 103 + m_Metrics: + m_Width: 42.749996 + m_Height: 41.749996 + m_HorizontalBearingX: 2.4999998 + m_HorizontalBearingY: 50.812496 + m_HorizontalAdvance: 47.25 + m_GlyphRect: + m_X: 352 + m_Y: 119 + m_Width: 43 + m_Height: 42 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 104 + m_Metrics: + m_Width: 35.187496 + m_Height: 15.312499 + m_HorizontalBearingX: 1.8749999 + m_HorizontalBearingY: 20.124998 + m_HorizontalAdvance: 39.0625 + m_GlyphRect: + m_X: 262 + m_Y: 442 + m_Width: 35 + m_Height: 15 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 105 + m_Metrics: + m_Width: 21.749998 + m_Height: 4.4999995 + m_HorizontalBearingX: -1.3124999 + m_HorizontalBearingY: 43.687496 + m_HorizontalAdvance: 17.9375 + m_GlyphRect: + m_X: 333 + m_Y: 386 + m_Width: 22 + m_Height: 4 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 106 + m_Metrics: + m_Width: 20.374998 + m_Height: 19.999998 + m_HorizontalBearingX: 0 + m_HorizontalBearingY: 58.437496 + m_HorizontalAdvance: 19.0625 + m_GlyphRect: + m_X: 420 + m_Y: 293 + m_Width: 20 + m_Height: 20 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 107 + m_Metrics: + m_Width: 37.124996 + m_Height: 36.812496 + m_HorizontalBearingX: 1.8749999 + m_HorizontalBearingY: 37.624996 + m_HorizontalAdvance: 40.9375 + m_GlyphRect: + m_X: 132 + m_Y: 424 + m_Width: 37 + m_Height: 37 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 108 + m_Metrics: + m_Width: 31.687498 + m_Height: 28.062498 + m_HorizontalBearingX: 1.2499999 + m_HorizontalBearingY: 28.999998 + m_HorizontalAdvance: 34.25 + m_GlyphRect: + m_X: 474 + m_Y: 55 + m_Width: 32 + m_Height: 28 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 109 + m_Metrics: + m_Width: 35.812496 + m_Height: 34.499996 + m_HorizontalBearingX: 1.8749999 + m_HorizontalBearingY: 32.999996 + m_HorizontalAdvance: 39.6875 + m_GlyphRect: + m_X: 263 + m_Y: 396 + m_Width: 36 + m_Height: 34 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 110 + m_Metrics: + m_Width: 29.312498 + m_Height: 7.8749995 + m_HorizontalBearingX: 3.8124998 + m_HorizontalBearingY: 20.562498 + m_HorizontalAdvance: 35.375 + m_GlyphRect: + m_X: 463 + m_Y: 422 + m_Width: 29 + m_Height: 8 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 111 + m_Metrics: + m_Width: 40.249996 + m_Height: 7.8749995 + m_HorizontalBearingX: 3.8124998 + m_HorizontalBearingY: 20.562498 + m_HorizontalAdvance: 46.25 + m_GlyphRect: + m_X: 368 + m_Y: 365 + m_Width: 40 + m_Height: 8 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 112 + m_Metrics: + m_Width: 40.249996 + m_Height: 7.8749995 + m_HorizontalBearingX: 3.8124998 + m_HorizontalBearingY: 20.562498 + m_HorizontalAdvance: 46.25 + m_GlyphRect: + m_X: 420 + m_Y: 370 + m_Width: 40 + m_Height: 8 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 113 + m_Metrics: + m_Width: 9.624999 + m_Height: 17.249998 + m_HorizontalBearingX: 45.437496 + m_HorizontalBearingY: 51.374996 + m_HorizontalAdvance: 58.875 + m_GlyphRect: + m_X: 494 + m_Y: 463 + m_Width: 10 + m_Height: 17 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 114 + m_Metrics: + m_Width: 9.562499 + m_Height: 17.187498 + m_HorizontalBearingX: 8.937499 + m_HorizontalBearingY: 51.437496 + m_HorizontalAdvance: 58.875 + m_GlyphRect: + m_X: 392 + m_Y: 462 + m_Width: 10 + m_Height: 17 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 115 + m_Metrics: + m_Width: 12.062499 + m_Height: 18.499998 + m_HorizontalBearingX: 1.2499999 + m_HorizontalBearingY: 9.999999 + m_HorizontalAdvance: 14.5625 + m_GlyphRect: + m_X: 392 + m_Y: 407 + m_Width: 12 + m_Height: 18 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 116 + m_Metrics: + m_Width: 19.187498 + m_Height: 17.249998 + m_HorizontalBearingX: 35.874996 + m_HorizontalBearingY: 51.374996 + m_HorizontalAdvance: 58.875 + m_GlyphRect: + m_X: 310 + m_Y: 469 + m_Width: 19 + m_Height: 17 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 117 + m_Metrics: + m_Width: 19.187498 + m_Height: 17.187498 + m_HorizontalBearingX: 8.937499 + m_HorizontalBearingY: 51.437496 + m_HorizontalAdvance: 58.875 + m_GlyphRect: + m_X: 361 + m_Y: 447 + m_Width: 19 + m_Height: 17 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 118 + m_Metrics: + m_Width: 25.499998 + m_Height: 18.499998 + m_HorizontalBearingX: 1.2499999 + m_HorizontalBearingY: 9.999999 + m_HorizontalAdvance: 28.0625 + m_GlyphRect: + m_X: 457 + m_Y: 463 + m_Width: 25 + m_Height: 18 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 119 + m_Metrics: + m_Width: 16.124998 + m_Height: 15.874999 + m_HorizontalBearingX: 1.8749999 + m_HorizontalBearingY: 33.312496 + m_HorizontalAdvance: 19 + m_GlyphRect: + m_X: 341 + m_Y: 490 + m_Width: 16 + m_Height: 16 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 120 + m_Metrics: + m_Width: 33.249996 + m_Height: 10.499999 + m_HorizontalBearingX: 15.437499 + m_HorizontalBearingY: 28.249998 + m_HorizontalAdvance: 64 + m_GlyphRect: + m_X: 416 + m_Y: 431 + m_Width: 33 + m_Height: 10 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 121 + m_Metrics: + m_Width: 50.749996 + m_Height: 10.312499 + m_HorizontalBearingX: 1.8749999 + m_HorizontalBearingY: 27.937498 + m_HorizontalAdvance: 54.5625 + m_GlyphRect: + m_X: 455 + m_Y: 95 + m_Width: 51 + m_Height: 10 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 122 + m_Metrics: + m_Width: 56.187496 + m_Height: 45.562496 + m_HorizontalBearingX: 1.5624999 + m_HorizontalBearingY: 40.187496 + m_HorizontalAdvance: 59.375 + m_GlyphRect: + m_X: 6 + m_Y: 6 + m_Width: 56 + m_Height: 46 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 123 + m_Metrics: + m_Width: 33.562496 + m_Height: 35.624996 + m_HorizontalBearingX: 1.2499999 + m_HorizontalBearingY: 34.812496 + m_HorizontalAdvance: 36.125 + m_GlyphRect: + m_X: 472 + m_Y: 375 + m_Width: 34 + m_Height: 36 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 124 + m_Metrics: + m_Width: 48.624996 + m_Height: 28.562498 + m_HorizontalBearingX: -1.9374999 + m_HorizontalBearingY: 50.124996 + m_HorizontalAdvance: 47.9375 + m_GlyphRect: + m_X: 332 + m_Y: 406 + m_Width: 49 + m_Height: 29 + m_Scale: 1 + m_AtlasIndex: 0 + m_CharacterTable: + - m_ElementType: 1 + m_Unicode: 32 + m_GlyphIndex: 1 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 33 + m_GlyphIndex: 2 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 34 + m_GlyphIndex: 3 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 35 + m_GlyphIndex: 4 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 36 + m_GlyphIndex: 5 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 37 + m_GlyphIndex: 6 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 38 + m_GlyphIndex: 7 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 39 + m_GlyphIndex: 8 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 40 + m_GlyphIndex: 9 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 41 + m_GlyphIndex: 10 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 42 + m_GlyphIndex: 11 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 43 + m_GlyphIndex: 12 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 44 + m_GlyphIndex: 13 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 45 + m_GlyphIndex: 14 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 46 + m_GlyphIndex: 15 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 47 + m_GlyphIndex: 16 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 48 + m_GlyphIndex: 17 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 49 + m_GlyphIndex: 18 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 50 + m_GlyphIndex: 19 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 51 + m_GlyphIndex: 20 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 52 + m_GlyphIndex: 21 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 53 + m_GlyphIndex: 22 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 54 + m_GlyphIndex: 23 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 55 + m_GlyphIndex: 24 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 56 + m_GlyphIndex: 25 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 57 + m_GlyphIndex: 26 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 58 + m_GlyphIndex: 27 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 59 + m_GlyphIndex: 28 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 60 + m_GlyphIndex: 29 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 61 + m_GlyphIndex: 30 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 62 + m_GlyphIndex: 31 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 63 + m_GlyphIndex: 32 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 64 + m_GlyphIndex: 33 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 65 + m_GlyphIndex: 34 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 66 + m_GlyphIndex: 35 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 67 + m_GlyphIndex: 36 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 68 + m_GlyphIndex: 37 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 69 + m_GlyphIndex: 38 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 70 + m_GlyphIndex: 39 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 71 + m_GlyphIndex: 40 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 72 + m_GlyphIndex: 41 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 73 + m_GlyphIndex: 42 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 74 + m_GlyphIndex: 43 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 75 + m_GlyphIndex: 44 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 76 + m_GlyphIndex: 45 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 77 + m_GlyphIndex: 46 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 78 + m_GlyphIndex: 47 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 79 + m_GlyphIndex: 48 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 80 + m_GlyphIndex: 49 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 81 + m_GlyphIndex: 50 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 82 + m_GlyphIndex: 51 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 83 + m_GlyphIndex: 52 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 84 + m_GlyphIndex: 53 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 85 + m_GlyphIndex: 54 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 86 + m_GlyphIndex: 55 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 87 + m_GlyphIndex: 56 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 88 + m_GlyphIndex: 57 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 89 + m_GlyphIndex: 58 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 90 + m_GlyphIndex: 59 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 91 + m_GlyphIndex: 60 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 92 + m_GlyphIndex: 61 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 93 + m_GlyphIndex: 62 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 94 + m_GlyphIndex: 63 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 95 + m_GlyphIndex: 64 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 96 + m_GlyphIndex: 65 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 97 + m_GlyphIndex: 66 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 98 + m_GlyphIndex: 67 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 99 + m_GlyphIndex: 68 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 100 + m_GlyphIndex: 69 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 101 + m_GlyphIndex: 70 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 102 + m_GlyphIndex: 71 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 103 + m_GlyphIndex: 72 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 104 + m_GlyphIndex: 73 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 105 + m_GlyphIndex: 74 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 106 + m_GlyphIndex: 75 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 107 + m_GlyphIndex: 76 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 108 + m_GlyphIndex: 77 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 109 + m_GlyphIndex: 78 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 110 + m_GlyphIndex: 79 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 111 + m_GlyphIndex: 80 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 112 + m_GlyphIndex: 81 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 113 + m_GlyphIndex: 82 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 114 + m_GlyphIndex: 83 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 115 + m_GlyphIndex: 84 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 116 + m_GlyphIndex: 85 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 117 + m_GlyphIndex: 86 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 118 + m_GlyphIndex: 87 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 119 + m_GlyphIndex: 88 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 120 + m_GlyphIndex: 89 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 121 + m_GlyphIndex: 90 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 122 + m_GlyphIndex: 91 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 123 + m_GlyphIndex: 92 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 124 + m_GlyphIndex: 93 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 125 + m_GlyphIndex: 94 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 126 + m_GlyphIndex: 95 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 160 + m_GlyphIndex: 96 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 162 + m_GlyphIndex: 97 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 163 + m_GlyphIndex: 98 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 164 + m_GlyphIndex: 99 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 165 + m_GlyphIndex: 100 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 166 + m_GlyphIndex: 101 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 168 + m_GlyphIndex: 102 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 169 + m_GlyphIndex: 103 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 172 + m_GlyphIndex: 104 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 175 + m_GlyphIndex: 105 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 176 + m_GlyphIndex: 106 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 177 + m_GlyphIndex: 107 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 215 + m_GlyphIndex: 108 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 247 + m_GlyphIndex: 109 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 8211 + m_GlyphIndex: 110 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 8212 + m_GlyphIndex: 111 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 8213 + m_GlyphIndex: 112 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 8216 + m_GlyphIndex: 113 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 8217 + m_GlyphIndex: 114 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 8218 + m_GlyphIndex: 115 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 8220 + m_GlyphIndex: 116 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 8221 + m_GlyphIndex: 117 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 8222 + m_GlyphIndex: 118 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 8226 + m_GlyphIndex: 119 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 8229 + m_GlyphIndex: 120 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 8230 + m_GlyphIndex: 121 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 8240 + m_GlyphIndex: 122 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 8364 + m_GlyphIndex: 123 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 8482 + m_GlyphIndex: 124 + m_Scale: 1 + m_AtlasTextures: + - {fileID: 28152126035297626} + m_AtlasTextureIndex: 0 + m_UsedGlyphRects: [] + m_FreeGlyphRects: [] + m_fontInfo: + Name: ZCOOL KuaiLe + PointSize: 64 + Scale: 1 + CharacterCount: 124 + LineHeight: 64 + Baseline: 0 + Ascender: 56.375 + CapHeight: 44.937496 + Descender: -7.6875 + CenterLine: 0 + SuperscriptOffset: 56.375 + SubscriptOffset: -6.4 + SubSize: 0.5 + Underline: -6.4 + UnderlineThickness: 3.2 + strikethrough: 17.704546 + strikethroughThickness: 3.2 + TabWidth: 160 + Padding: 5 + AtlasWidth: 512 + AtlasHeight: 512 + atlas: {fileID: 28152126035297626} + m_AtlasWidth: 512 + m_AtlasHeight: 512 + m_AtlasPadding: 5 + m_AtlasRenderMode: 16426 + m_glyphInfoList: + - id: 32 + x: 6 + y: 517 + width: 16 + height: 64.0625 + xOffset: 0 + yOffset: 56.375 + xAdvance: 16 + scale: 1 + - id: 33 + x: 327 + y: 340 + width: 13.124999 + height: 51.562496 + xOffset: 1.8749999 + yOffset: 48.749996 + xAdvance: 14.375 + scale: 1 + - id: 34 + x: 392 + y: 62 + width: 12.187499 + height: 13.812499 + xOffset: 1.8749999 + yOffset: 53.749996 + xAdvance: 14.8125 + scale: 1 + - id: 35 + x: 427 + y: 153 + width: 38.499996 + height: 34.812496 + xOffset: 1.2499999 + yOffset: 31.812498 + xAdvance: 40.375 + scale: 1 + - id: 36 + x: 64 + y: 339 + width: 32.374996 + height: 43.124996 + xOffset: 1.2499999 + yOffset: 35.874996 + xAdvance: 35.5 + scale: 1 + - id: 37 + x: 215 + y: 233 + width: 36.937496 + height: 45.562496 + xOffset: 1.5624999 + yOffset: 40.187496 + xAdvance: 40.1875 + scale: 1 + - id: 38 + x: 254 + y: 462 + width: 44.124996 + height: 43.749996 + xOffset: 1.8749999 + yOffset: 38.187496 + xAdvance: 43.5 + scale: 1 + - id: 39 + x: 455 + y: 434 + width: 5.1874995 + height: 13.812499 + xOffset: 1.8749999 + yOffset: 53.624996 + xAdvance: 7.75 + scale: 1 + - id: 40 + x: 245 + y: 340 + width: 18.187498 + height: 52.187496 + xOffset: 3.8124998 + yOffset: 45.687496 + xAdvance: 22.3125 + scale: 1 + - id: 41 + x: 420 + y: 230 + width: 18.187498 + height: 52.187496 + xOffset: 0.31249997 + yOffset: 45.687496 + xAdvance: 22.3125 + scale: 1 + - id: 42 + x: 91 + y: 6 + width: 25.187498 + height: 21.437498 + xOffset: 1.2499999 + yOffset: 40.562496 + xAdvance: 26.4375 + scale: 1 + - id: 43 + x: 263 + y: 128 + width: 35.812496 + height: 33.499996 + xOffset: 1.8749999 + yOffset: 31.249998 + xAdvance: 39.6875 + scale: 1 + - id: 44 + x: 452 + y: 200 + width: 12.062499 + height: 18.499998 + xOffset: 1.2499999 + yOffset: 9.999999 + xAdvance: 14.5625 + scale: 1 + - id: 45 + x: 176 + y: 107 + width: 35.749996 + height: 7.8749995 + xOffset: 3.8124998 + yOffset: 20.562498 + xAdvance: 41.8125 + scale: 1 + - id: 46 + x: 339 + y: 55 + width: 10.437499 + height: 10.312499 + xOffset: 1.8749999 + yOffset: 8.124999 + xAdvance: 14.25 + scale: 1 + - id: 47 + x: 263 + y: 173 + width: 20.249998 + height: 39.687496 + xOffset: 0.62499994 + yOffset: 35.374996 + xAdvance: 20.25 + scale: 1 + - id: 48 + x: 246 + y: 404 + width: 34.999996 + height: 45.812496 + xOffset: 3.8124998 + yOffset: 45.999996 + xAdvance: 42.625 + scale: 1 + - id: 49 + x: 295 + y: 176 + width: 20.062498 + height: 48.249996 + xOffset: -0.99999994 + yOffset: 47.312496 + xAdvance: 23.3125 + scale: 1 + - id: 50 + x: 65 + y: 278 + width: 38.062496 + height: 49.562496 + xOffset: 0.31249997 + yOffset: 47.687496 + xAdvance: 40 + scale: 1 + - id: 51 + x: 6 + y: 42 + width: 40.249996 + height: 48.374996 + xOffset: 0.31249997 + yOffset: 47.249996 + xAdvance: 42.1875 + scale: 1 + - id: 52 + x: 6 + y: 221 + width: 43.374996 + height: 48.187496 + xOffset: 1.5624999 + yOffset: 47.249996 + xAdvance: 45.9375 + scale: 1 + - id: 53 + x: 6 + y: 162 + width: 42.249996 + height: 47.687496 + xOffset: 0.31249997 + yOffset: 46.874996 + xAdvance: 44.1875 + scale: 1 + - id: 54 + x: 138 + y: 404 + width: 41.187496 + height: 47.999996 + xOffset: 1.5624999 + yOffset: 47.062496 + xAdvance: 44.4375 + scale: 1 + - id: 55 + x: 406 + y: 350 + width: 33.624996 + height: 44.874996 + xOffset: -0.99999994 + yOffset: 45.499996 + xAdvance: 32.375 + scale: 1 + - id: 56 + x: 108 + y: 344 + width: 40.062496 + height: 48.374996 + xOffset: 2.1874998 + yOffset: 47.249996 + xAdvance: 45.1875 + scale: 1 + - id: 57 + x: 115 + y: 222 + width: 37.749996 + height: 47.687496 + xOffset: 0.31249997 + yOffset: 46.937496 + xAdvance: 37.125 + scale: 1 + - id: 58 + x: 310 + y: 83 + width: 10.437499 + height: 30.749998 + xOffset: 1.8749999 + yOffset: 27.937498 + xAdvance: 14.25 + scale: 1 + - id: 59 + x: 450 + y: 230 + width: 12.062499 + height: 36.999996 + xOffset: 1.8749999 + yOffset: 27.937498 + xAdvance: 14.875 + scale: 1 + - id: 60 + x: 225 + y: 53 + width: 25.874998 + height: 26.562498 + xOffset: 1.5624999 + yOffset: 32.687496 + xAdvance: 29.4375 + scale: 1 + - id: 61 + x: 6 + y: 12 + width: 35.812496 + height: 18.999998 + xOffset: 2.4999998 + yOffset: 23.687498 + xAdvance: 40.3125 + scale: 1 + - id: 62 + x: 225 + y: 91 + width: 26.437498 + height: 26.562498 + xOffset: 1.8749999 + yOffset: 29.999998 + xAdvance: 29.9375 + scale: 1 + - id: 63 + x: 115 + y: 281 + width: 33.124996 + height: 51.937496 + xOffset: -1.9374999 + yOffset: 49.124996 + xAdvance: 29.25 + scale: 1 + - id: 64 + x: 401 + y: 406 + width: 42.124996 + height: 41.687496 + xOffset: 3.1874998 + yOffset: 37.999996 + xAdvance: 47.875 + scale: 1 + - id: 65 + x: 6 + y: 399 + width: 46.249996 + height: 49.062496 + xOffset: 2.1874998 + yOffset: 47.499996 + xAdvance: 50.75 + scale: 1 + - id: 66 + x: 6 + y: 102 + width: 41.937496 + height: 48.187496 + xOffset: 4.1249995 + yOffset: 47.124996 + xAdvance: 46.4375 + scale: 1 + - id: 67 + x: 420 + y: 459 + width: 42.812496 + height: 46.499996 + xOffset: 3.1874998 + yOffset: 46.312496 + xAdvance: 49.5625 + scale: 1 + - id: 68 + x: 61 + y: 221 + width: 42.499996 + height: 45.624996 + xOffset: 3.1874998 + yOffset: 45.874996 + xAdvance: 49.1875 + scale: 1 + - id: 69 + x: 164 + y: 234 + width: 39.562496 + height: 44.999996 + xOffset: 3.1874998 + yOffset: 45.187496 + xAdvance: 45.625 + scale: 1 + - id: 70 + x: 276 + y: 293 + width: 38.312496 + height: 43.812496 + xOffset: 3.1874998 + yOffset: 44.624996 + xAdvance: 42.4375 + scale: 1 + - id: 71 + x: 310 + y: 459 + width: 43.124996 + height: 46.749996 + xOffset: 3.1874998 + yOffset: 46.437496 + xAdvance: 49.1875 + scale: 1 + - id: 72 + x: 275 + y: 348 + width: 40.249996 + height: 43.999996 + xOffset: 4.1249995 + yOffset: 44.937496 + xAdvance: 48.5625 + scale: 1 + - id: 73 + x: 112 + y: 47 + width: 8.249999 + height: 43.937496 + xOffset: 4.1249995 + yOffset: 44.874996 + xAdvance: 15.3125 + scale: 1 + - id: 74 + x: 328 + y: 235 + width: 29.749998 + height: 46.312496 + xOffset: 2.1874998 + yOffset: 46.124996 + xAdvance: 30.375 + scale: 1 + - id: 75 + x: 165 + y: 175 + width: 35.437496 + height: 47.749996 + xOffset: 4.1249995 + yOffset: 46.937496 + xAdvance: 40.25 + scale: 1 + - id: 76 + x: 283 + y: 236 + width: 33.187496 + height: 45.499996 + xOffset: 4.1249995 + yOffset: 45.874996 + xAdvance: 38.6875 + scale: 1 + - id: 77 + x: 137 + y: 463 + width: 48.874996 + height: 42.249996 + xOffset: 2.8749998 + yOffset: 44.187496 + xAdvance: 54.6875 + scale: 1 + - id: 78 + x: 347 + y: 404 + width: 42.249996 + height: 43.249996 + xOffset: 2.4999998 + yOffset: 44.749996 + xAdvance: 48.9375 + scale: 1 + - id: 79 + x: 115 + y: 165 + width: 38.687496 + height: 45.124996 + xOffset: 3.8124998 + yOffset: 45.499996 + xAdvance: 46.3125 + scale: 1 + - id: 80 + x: 84 + y: 404 + width: 42.812496 + height: 47.999996 + xOffset: 3.1874998 + yOffset: 47.124996 + xAdvance: 48.5625 + scale: 1 + - id: 81 + x: 365 + y: 459 + width: 43.437496 + height: 46.187496 + xOffset: 3.8124998 + yOffset: 46.124996 + xAdvance: 48.5 + scale: 1 + - id: 82 + x: 160 + y: 290 + width: 42.624996 + height: 44.999996 + xOffset: 4.1249995 + yOffset: 45.374996 + xAdvance: 48.6875 + scale: 1 + - id: 83 + x: 160 + y: 346 + width: 42.437496 + height: 46.124996 + xOffset: 2.8749998 + yOffset: 46.187496 + xAdvance: 48.1875 + scale: 1 + - id: 84 + x: 6 + y: 281 + width: 47.749996 + height: 46.624996 + xOffset: -3.5624998 + yOffset: 46.999996 + xAdvance: 40.6875 + scale: 1 + - id: 85 + x: 212 + y: 177 + width: 39.687496 + height: 44.687496 + xOffset: 4.1249995 + yOffset: 45.312496 + xAdvance: 46.125 + scale: 1 + - id: 86 + x: 191 + y: 404 + width: 43.374996 + height: 45.249996 + xOffset: 0.31249997 + yOffset: 45.562496 + xAdvance: 40.8125 + scale: 1 + - id: 87 + x: 74 + y: 463 + width: 51.562496 + height: 42.187496 + xOffset: 0.31249997 + yOffset: 44.124996 + xAdvance: 49 + scale: 1 + - id: 88 + x: 197 + y: 461 + width: 45.374996 + height: 44.687496 + xOffset: 0.93749994 + yOffset: 45.312496 + xAdvance: 47.3125 + scale: 1 + - id: 89 + x: 6 + y: 339 + width: 46.624996 + height: 48.812496 + xOffset: -3.5624998 + yOffset: 47.437496 + xAdvance: 38.3125 + scale: 1 + - id: 90 + x: 292 + y: 403 + width: 43.687496 + height: 44.874996 + xOffset: 2.1874998 + yOffset: 45.562496 + xAdvance: 48.1875 + scale: 1 + - id: 91 + x: 451 + y: 342 + width: 14.812499 + height: 52.874996 + xOffset: 4.1249995 + yOffset: 45.687496 + xAdvance: 16.75 + scale: 1 + - id: 92 + x: 59 + y: 102 + width: 20.187498 + height: 39.687496 + xOffset: -0.68749994 + yOffset: 35.374996 + xAdvance: 20.25 + scale: 1 + - id: 93 + x: 450 + y: 278 + width: 14.874999 + height: 52.874996 + xOffset: -2.2499998 + yOffset: 45.687496 + xAdvance: 16.75 + scale: 1 + - id: 94 + x: 53 + y: 6 + width: 26.562498 + height: 21.812498 + xOffset: 1.8749999 + yOffset: 50.937496 + xAdvance: 29.125 + scale: 1 + - id: 95 + x: 135 + y: 99 + width: 29.062498 + height: 5.2499995 + xOffset: 2.4999998 + yOffset: -2.5624998 + xAdvance: 31.3125 + scale: 1 + - id: 96 + x: 309 + y: 55 + width: 18.124998 + height: 10.437499 + xOffset: -1.3124999 + yOffset: 48.624996 + xAdvance: 14.3125 + scale: 1 + - id: 97 + x: 369 + y: 245 + width: 39.062496 + height: 37.187496 + xOffset: 3.8124998 + yOffset: 36.562496 + xAdvance: 43.5 + scale: 1 + - id: 98 + x: 476 + y: 247 + width: 29.499998 + height: 39.624996 + xOffset: 3.1874998 + yOffset: 40.187496 + xAdvance: 34.625 + scale: 1 + - id: 99 + x: 477 + y: 201 + width: 28.437498 + height: 34.062496 + xOffset: 3.1874998 + yOffset: 34.999996 + xAdvance: 33.5625 + scale: 1 + - id: 100 + x: 91 + y: 102 + width: 32.499996 + height: 39.562496 + xOffset: 3.1874998 + yOffset: 40.124996 + xAdvance: 38.9375 + scale: 1 + - id: 101 + x: 181 + y: 61 + width: 32.937496 + height: 34.874996 + xOffset: 3.1874998 + yOffset: 34.124996 + xAdvance: 36.75 + scale: 1 + - id: 102 + x: 477 + y: 351 + width: 28.562498 + height: 44.812496 + xOffset: 0.62499994 + yOffset: 41.374996 + xAdvance: 30.4375 + scale: 1 + - id: 103 + x: 477 + y: 298 + width: 28.749998 + height: 41.749996 + xOffset: 2.4999998 + yOffset: 38.187496 + xAdvance: 34.5 + scale: 1 + - id: 104 + x: 365 + y: 294 + width: 29.937498 + height: 45.312496 + xOffset: 3.1874998 + yOffset: 45.749996 + xAdvance: 36.375 + scale: 1 + - id: 105 + x: 255 + y: 290 + width: 9.374999 + height: 38.624996 + xOffset: 3.1874998 + yOffset: 39.124996 + xAdvance: 15.125 + scale: 1 + - id: 106 + x: 58 + y: 39 + width: 14.124999 + height: 51.374996 + xOffset: -0.68749994 + yOffset: 42.312496 + xAdvance: 16.0625 + scale: 1 + - id: 107 + x: 406 + y: 294 + width: 32.812496 + height: 44.312496 + xOffset: 2.4999998 + yOffset: 43.937496 + xAdvance: 36.0625 + scale: 1 + - id: 108 + x: 310 + y: 125 + width: 11.499999 + height: 39.499996 + xOffset: 3.1874998 + yOffset: 38.937496 + xAdvance: 15.9375 + scale: 1 + - id: 109 + x: 128 + y: 6 + width: 38.999996 + height: 29.812498 + xOffset: 3.1874998 + yOffset: 32.187496 + xAdvance: 45.375 + scale: 1 + - id: 110 + x: 416 + y: 31 + width: 29.624998 + height: 28.124998 + xOffset: 3.1874998 + yOffset: 30.874998 + xAdvance: 36.0625 + scale: 1 + - id: 111 + x: 269 + y: 14 + width: 29.437498 + height: 29.062498 + xOffset: 3.8124998 + yOffset: 31.874998 + xAdvance: 37.125 + scale: 1 + - id: 112 + x: 327 + y: 183 + width: 30.187498 + height: 40.749996 + xOffset: 3.1874998 + yOffset: 37.374996 + xAdvance: 35.875 + scale: 1 + - id: 113 + x: 214 + y: 290 + width: 29.999998 + height: 38.499996 + xOffset: 3.1874998 + yOffset: 37.374996 + xAdvance: 35.75 + scale: 1 + - id: 114 + x: 333 + y: 138 + width: 23.374998 + height: 33.749996 + xOffset: 3.8124998 + yOffset: 34.124996 + xAdvance: 25.9375 + scale: 1 + - id: 115 + x: 135 + y: 116 + width: 29.437498 + height: 37.124996 + xOffset: 3.1874998 + yOffset: 35.874996 + xAdvance: 33.9375 + scale: 1 + - id: 116 + x: 176 + y: 126 + width: 34.624996 + height: 37.499996 + xOffset: 1.8749999 + yOffset: 36.124996 + xAdvance: 38.4375 + scale: 1 + - id: 117 + x: 418 + y: 93 + width: 33.812496 + height: 29.874998 + xOffset: 3.8124998 + yOffset: 31.499998 + xAdvance: 37.625 + scale: 1 + - id: 118 + x: 178 + y: 6 + width: 34.874996 + height: 33.999996 + xOffset: 1.2499999 + yOffset: 36.187496 + xAdvance: 35.4375 + scale: 1 + - id: 119 + x: 369 + y: 158 + width: 46.187496 + height: 29.312498 + xOffset: 1.2499999 + yOffset: 33.812496 + xAdvance: 46.8125 + scale: 1 + - id: 120 + x: 369 + y: 199 + width: 39.749996 + height: 34.562496 + xOffset: 0.62499994 + yOffset: 36.499996 + xAdvance: 40.375 + scale: 1 + - id: 121 + x: 474 + y: 469 + width: 31.999998 + height: 36.999996 + xOffset: 0.62499994 + yOffset: 34.124996 + xAdvance: 32 + scale: 1 + - id: 122 + x: 222 + y: 129 + width: 29.937498 + height: 36.687496 + xOffset: 3.1874998 + yOffset: 37.562496 + xAdvance: 35.0625 + scale: 1 + - id: 123 + x: 214 + y: 340 + width: 19.937498 + height: 52.874996 + xOffset: 2.8749998 + yOffset: 45.687496 + xAdvance: 21.1875 + scale: 1 + - id: 124 + x: 64 + y: 394 + width: 8.249999 + height: 54.187496 + xOffset: 4.1249995 + yOffset: 50.187496 + xAdvance: 15.3125 + scale: 1 + - id: 125 + x: 84 + y: 39 + width: 16.062498 + height: 51.562496 + xOffset: -1.6249999 + yOffset: 44.312496 + xAdvance: 16.0625 + scale: 1 + - id: 126 + x: 368 + y: 117 + width: 38.749996 + height: 10.437499 + xOffset: 1.8749999 + yOffset: 21.749998 + xAdvance: 42.625 + scale: 1 + - id: 160 + x: 6 + y: 517 + width: 0 + height: 0 + xOffset: 0 + yOffset: 0 + xAdvance: 16 + scale: 1 + - id: 162 + x: 477 + y: 148 + width: 24.562498 + height: 41.187496 + xOffset: 3.1874998 + yOffset: 34.249996 + xAdvance: 29.6875 + scale: 1 + - id: 163 + x: 326 + y: 293 + width: 27.749998 + height: 35.937496 + xOffset: 1.2499999 + yOffset: 31.249998 + xAdvance: 29.625 + scale: 1 + - id: 164 + x: 60 + y: 164 + width: 43.687496 + height: 45.124996 + xOffset: -1.3124999 + yOffset: 38.812496 + xAdvance: 41.125 + scale: 1 + - id: 165 + x: 224 + y: 7 + width: 33.624996 + height: 34.374996 + xOffset: 0.62499994 + yOffset: 33.062496 + xAdvance: 34.875 + scale: 1 + - id: 166 + x: 263 + y: 224 + width: 8.249999 + height: 54.187496 + xOffset: 4.1249995 + yOffset: 50.124996 + xAdvance: 15.3125 + scale: 1 + - id: 168 + x: 461 + y: 61 + width: 25.999998 + height: 9.374999 + xOffset: -1.3124999 + yOffset: 46.312496 + xAdvance: 22.1875 + scale: 1 + - id: 169 + x: 352 + y: 351 + width: 42.749996 + height: 41.749996 + xOffset: 2.4999998 + yOffset: 50.812496 + xAdvance: 47.25 + scale: 1 + - id: 172 + x: 262 + y: 55 + width: 35.187496 + height: 15.312499 + xOffset: 1.8749999 + yOffset: 20.124998 + xAdvance: 39.0625 + scale: 1 + - id: 175 + x: 333 + y: 122 + width: 21.749998 + height: 4.4999995 + xOffset: -1.3124999 + yOffset: 43.687496 + xAdvance: 17.9375 + scale: 1 + - id: 176 + x: 420 + y: 199 + width: 20.374998 + height: 19.999998 + xOffset: 0 + yOffset: 58.437496 + xAdvance: 19.0625 + scale: 1 + - id: 177 + x: 132 + y: 51 + width: 37.124996 + height: 36.812496 + xOffset: 1.8749999 + yOffset: 37.624996 + xAdvance: 40.9375 + scale: 1 + - id: 215 + x: 474 + y: 429 + width: 31.687498 + height: 28.062498 + xOffset: 1.2499999 + yOffset: 28.999998 + xAdvance: 34.25 + scale: 1 + - id: 247 + x: 263 + y: 82 + width: 35.812496 + height: 34.499996 + xOffset: 1.8749999 + yOffset: 32.999996 + xAdvance: 39.6875 + scale: 1 + - id: 8211 + x: 463 + y: 82 + width: 29.312498 + height: 7.8749995 + xOffset: 3.8124998 + yOffset: 20.562498 + xAdvance: 35.375 + scale: 1 + - id: 8212 + x: 368 + y: 139 + width: 40.249996 + height: 7.8749995 + xOffset: 3.8124998 + yOffset: 20.562498 + xAdvance: 46.25 + scale: 1 + - id: 8213 + x: 420 + y: 134 + width: 40.249996 + height: 7.8749995 + xOffset: 3.8124998 + yOffset: 20.562498 + xAdvance: 46.25 + scale: 1 + - id: 8216 + x: 494 + y: 32 + width: 9.624999 + height: 17.249998 + xOffset: 45.437496 + yOffset: 51.374996 + xAdvance: 58.875 + scale: 1 + - id: 8217 + x: 392 + y: 33 + width: 9.562499 + height: 17.187498 + xOffset: 8.937499 + yOffset: 51.437496 + xAdvance: 58.875 + scale: 1 + - id: 8218 + x: 392 + y: 87 + width: 12.062499 + height: 18.499998 + xOffset: 1.2499999 + yOffset: 9.999999 + xAdvance: 14.5625 + scale: 1 + - id: 8220 + x: 310 + y: 26 + width: 19.187498 + height: 17.249998 + xOffset: 35.874996 + yOffset: 51.374996 + xAdvance: 58.875 + scale: 1 + - id: 8221 + x: 361 + y: 48 + width: 19.187498 + height: 17.187498 + xOffset: 8.937499 + yOffset: 51.437496 + xAdvance: 58.875 + scale: 1 + - id: 8222 + x: 457 + y: 31 + width: 25.499998 + height: 18.499998 + xOffset: 1.2499999 + yOffset: 9.999999 + xAdvance: 28.0625 + scale: 1 + - id: 8226 + x: 341 + y: 6 + width: 16.124998 + height: 15.874999 + xOffset: 1.8749999 + yOffset: 33.312496 + xAdvance: 19 + scale: 1 + - id: 8229 + x: 416 + y: 71 + width: 33.249996 + height: 10.499999 + xOffset: 15.437499 + yOffset: 28.249998 + xAdvance: 64 + scale: 1 + - id: 8230 + x: 455 + y: 407 + width: 50.749996 + height: 10.312499 + xOffset: 1.8749999 + yOffset: 27.937498 + xAdvance: 54.5625 + scale: 1 + - id: 8240 + x: 6 + y: 460 + width: 56.187496 + height: 45.562496 + xOffset: 1.5624999 + yOffset: 40.187496 + xAdvance: 59.375 + scale: 1 + - id: 8364 + x: 472 + y: 101 + width: 33.562496 + height: 35.624996 + xOffset: 1.2499999 + yOffset: 34.812496 + xAdvance: 36.125 + scale: 1 + - id: 8482 + x: 332 + y: 77 + width: 48.624996 + height: 28.562498 + xOffset: -1.9374999 + yOffset: 50.124996 + xAdvance: 47.9375 + scale: 1 + m_KerningTable: + kerningPairs: [] + m_FontFeatureTable: + m_GlyphPairAdjustmentRecords: [] + fallbackFontAssets: [] + m_FallbackFontAssetTable: [] + m_CreationSettings: + sourceFontFileName: + sourceFontFileGUID: 9e22939ce06994941b7231ed36560d5e + pointSizeSamplingMode: 0 + pointSize: 64 + padding: 5 + packingMode: 4 + atlasWidth: 512 + atlasHeight: 512 + characterSetSelectionMode: 1 + characterSequence: 32 - 126, 160 - 255, 8192 - 8303, 8364, 8482, 9633 + referencedFontAssetGUID: + referencedTextAssetGUID: + fontStyle: 0 + fontStyleModifier: 2 + renderMode: 6 + includeFontFeatures: 0 + m_FontWeightTable: + - regularTypeface: {fileID: 0} + italicTypeface: {fileID: 0} + - regularTypeface: {fileID: 0} + italicTypeface: {fileID: 0} + - regularTypeface: {fileID: 0} + italicTypeface: {fileID: 0} + - regularTypeface: {fileID: 0} + italicTypeface: {fileID: 0} + - regularTypeface: {fileID: 0} + italicTypeface: {fileID: 0} + - regularTypeface: {fileID: 0} + italicTypeface: {fileID: 0} + - regularTypeface: {fileID: 0} + italicTypeface: {fileID: 0} + - regularTypeface: {fileID: 0} + italicTypeface: {fileID: 0} + - regularTypeface: {fileID: 0} + italicTypeface: {fileID: 0} + - regularTypeface: {fileID: 0} + italicTypeface: {fileID: 0} + fontWeights: + - regularTypeface: {fileID: 0} + italicTypeface: {fileID: 0} + - regularTypeface: {fileID: 0} + italicTypeface: {fileID: 0} + - regularTypeface: {fileID: 0} + italicTypeface: {fileID: 0} + - regularTypeface: {fileID: 0} + italicTypeface: {fileID: 0} + - regularTypeface: {fileID: 0} + italicTypeface: {fileID: 0} + - regularTypeface: {fileID: 0} + italicTypeface: {fileID: 0} + - regularTypeface: {fileID: 0} + italicTypeface: {fileID: 0} + - regularTypeface: {fileID: 0} + italicTypeface: {fileID: 0} + - regularTypeface: {fileID: 0} + italicTypeface: {fileID: 0} + - regularTypeface: {fileID: 0} + italicTypeface: {fileID: 0} + normalStyle: 0 + normalSpacingOffset: 0 + boldStyle: 0.75 + boldSpacing: 7 + italicStyle: 35 + tabSize: 10 +--- !u!21 &21204982835221424 +Material: + serializedVersion: 6 + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_Name: ZCOOLKuaiLe-Regular SDF Material + m_Shader: {fileID: 4800000, guid: 68e6db2ebdc24f95958faec2be5558d6, type: 3} + m_ShaderKeywords: + m_LightmapFlags: 4 + m_EnableInstancingVariants: 0 + m_DoubleSidedGI: 0 + m_CustomRenderQueue: -1 + stringTagMap: {} + disabledShaderPasses: [] + m_SavedProperties: + serializedVersion: 3 + m_TexEnvs: + - _BumpMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _Cube: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _FaceTex: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _MainTex: + m_Texture: {fileID: 28152126035297626} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _OutlineTex: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + m_Floats: + - _Ambient: 0.5 + - _Bevel: 0.5 + - _BevelClamp: 0 + - _BevelOffset: 0 + - _BevelRoundness: 0 + - _BevelWidth: 0 + - _BumpFace: 0 + - _BumpOutline: 0 + - _ColorMask: 15 + - _Diffuse: 0.5 + - _FaceDilate: 0 + - _FaceUVSpeedX: 0 + - _FaceUVSpeedY: 0 + - _GlowInner: 0.05 + - _GlowOffset: 0 + - _GlowOuter: 0.05 + - _GlowPower: 0.75 + - _GradientScale: 6 + - _LightAngle: 3.1416 + - _MaskSoftnessX: 0 + - _MaskSoftnessY: 0 + - _OutlineSoftness: 0 + - _OutlineUVSpeedX: 0 + - _OutlineUVSpeedY: 0 + - _OutlineWidth: 0 + - _PerspectiveFilter: 0.875 + - _Reflectivity: 10 + - _ScaleRatioA: 0.8333333 + - _ScaleRatioB: 0.6770833 + - _ScaleRatioC: 0.6770833 + - _ScaleX: 1 + - _ScaleY: 1 + - _ShaderFlags: 0 + - _SpecularPower: 2 + - _Stencil: 0 + - _StencilComp: 8 + - _StencilOp: 0 + - _StencilReadMask: 255 + - _StencilWriteMask: 255 + - _TextureHeight: 512 + - _TextureWidth: 512 + - _UnderlayDilate: 0 + - _UnderlayOffsetX: 0 + - _UnderlayOffsetY: 0 + - _UnderlaySoftness: 0 + - _VertexOffsetX: 0 + - _VertexOffsetY: 0 + - _WeightBold: 0.75 + - _WeightNormal: 0 + m_Colors: + - _ClipRect: {r: -32767, g: -32767, b: 32767, a: 32767} + - _EnvMatrixRotation: {r: 0, g: 0, b: 0, a: 0} + - _FaceColor: {r: 1, g: 1, b: 1, a: 1} + - _GlowColor: {r: 0, g: 1, b: 0, a: 0.5} + - _MaskCoord: {r: 0, g: 0, b: 32767, a: 32767} + - _OutlineColor: {r: 0, g: 0, b: 0, a: 1} + - _ReflectFaceColor: {r: 0, g: 0, b: 0, a: 1} + - _ReflectOutlineColor: {r: 0, g: 0, b: 0, a: 1} + - _SpecularColor: {r: 1, g: 1, b: 1, a: 1} + - _UnderlayColor: {r: 0, g: 0, b: 0, a: 0.5} +--- !u!28 &28152126035297626 +Texture2D: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_Name: ZCOOLKuaiLe-Regular SDF Atlas + m_ImageContentsHash: + serializedVersion: 2 + Hash: 00000000000000000000000000000000 + m_ForcedFallbackFormat: 4 + m_DownscaleFallback: 0 + serializedVersion: 2 + m_Width: 512 + m_Height: 512 + m_CompleteImageSize: 262144 + m_TextureFormat: 1 + m_MipCount: 1 + m_IsReadable: 0 + m_StreamingMipmaps: 0 + m_StreamingMipmapsPriority: 0 + m_AlphaIsTransparency: 0 + m_ImageCount: 1 + m_TextureDimension: 2 + m_TextureSettings: + serializedVersion: 2 + m_FilterMode: 1 + m_Aniso: 1 + m_MipBias: 0 + m_WrapU: 0 + m_WrapV: 0 + m_WrapW: 0 + m_LightmapFormat: 0 + m_ColorSpace: 0 + image data: 262144 + _typelessdata: 00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000a111515110900000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000002090d0e0e0e0e0e0e0d09010000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000105090d0f0f0a0200000000000000000000000000000000000000000000000000000000000000040b0f0f0c0805010000000000000000000000000009121718150e030000000000000000000000000000000000000000000000000000000000000a121717130b0000000000000000000000000000000000000000000000000000000104080c0f13171a19150d04000000000000000000000000030a0e0d09010000000000000000000000000b14191a1a1917161615131212110f0e0d0c0b0a090807060504030201000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000030a0e0d0901000000000000000000000000040d131513110f0d0a080604010000000000000000000000000000000000000000000000000000000000000000000000000000000000000a151c1f1e180e0100000000000000000000000000000000000000000000000000000000000000000000000004101c262b2a251b0f0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000009151e23232323232323221d13070000000000000000000000000000000000000000000000000000000000000000000000000000000002090e12161a1e2124241e150900000000000000000000000000000000000000000000000000000000000a161f2424211d1916120e090100000000000000000e1b262c2e2921140500000000000000000000000000000000000000000000000000000000101d262c2c271d1002000000000000000000000000000000000000000004070b0e1216191d2124282c2f2f2921170e050000000000000000000a161e23221d1408000000000000000000000f1d272e2f2f2e2c2c2b2a2927272625232322211f1e1e1d1b1a191817161514131211100f0e0d0c0b0a07010000000000000000000000000002070907050302000000000000000000000000000000000000000000000000000000000b161e23221d140800000000000000000000081621282a282624221f1d1b19161412100d0b0907040200000000000000000000000000000000000000000000000000000000000000000d1b283134322b1f1101000000000000000000000000000000000000000000000000000000000000000000000915212e39403f392d1e0d000000000000000000000000000000000000000001030506030000000000000000000000000000000305060400000000000000000000000000000000000008182631383838383838383730251606000000000000000000000000000000000000000000000000000000000000000000000000000009151e23272b2f32363a39322718080000000000000000000000000000000000000000000000000000000a1a2833393a36322e2b27231d13070000000000000d1c2c3941433d3223140600000000000000000000000000000000000000000000000000000f1e2e3a41413a2e201203000000000000000000000000000002090e1115191c2023272b2e3236393d4044443d342b211709000000000000010e1b283238373126170800000000000000000f1e2d3a424444434240403f3e3c3c3b3a3838373634333332302f2f2e2c2b2a2a2927262524232221201f1c140900000000000000000000000d161c1e1c1a1917151412100f0d0b0a08060503010000000000000000000000000004101c28323837312617070000000000000000091826333c3f3e3b39373432302e2c29272523201e1c19171513100e0c0a07050300000000000000000000000000000000000000000003101e2b39444a473d2f1f0f0000000000000000000000000000000000000000000000000000000000000000010e1a26333f4b54544a3c2b190800000000000000000000000305070a0c0f111316181b1b17100500000000020407090c0e101315181a1b18110700000000000000000000000000000001142636444c4e4e4e4e4e4e4c433424110000000000000000000000000000000000000000000000000000000000000000000000000008182631383c4044474b4f4d44362513000000000000000000000000000000000000000000000000000002152738464e4f4b47433f3c3830251606000000000d1c2b3a4a55585042322415060000000000000000000000000000000000000000000000000e1d2d3c4c55564c3e302112040000000000000000000000000a151e23262a2d3135383c4043474b4e5255595850473e342718060000000004111e2c39454d4c43352615040000000000000f1e2d3c4b575a595857565554535251504f4e4c4c4b4a4848474644444342403f3f3e3c3b3b3a383736363430271a0b000000000000000001101e2a3133312f2e2c2b2927262422201f1d1b1a18161513110f0e0c0a09070504020915212e3a464d4c43352513020000000000000a18273644505453504e4c4a474543403e3c3a383533312f2c2a282623211f1c1a181613110f0d0a08060401000000000000000000000613212e3c49575f5a4d3d2d1c0c00000000000000000000000000000000000000000000000000000000000003121f2b3844505d69685a4837261403000000000000080f1315181a1c1f212426282b2d30302b2215060e1315171a1c1e212326282a2d2f302d2418090000000000000000000000000000081c304354616363636363636052412d190500000000000000040d131515151515151410080000000000000000000000000000000000132536444d5155585c60646154432f1b0700000000000000000000000000000000000000000000000000081d3144566364605c5854514c433423110000000d1c2b3a4958686d60514233241506000000000000000000000000000000000000000000000d1d2c3b4b5a696a5c4e3f30221304000000000000000000000d1a2731383b3f42464a4d5154585c5f63676a6e6c635a51453624110000000815222f3c49566260534333221101000000000f1e2d3c4b5a696f6e6e6c6b6a6a6867666564636261605f5e5d5c5b5a585857565454535250504f4e4c4b4b4a443829190900000000000001101f2e3c464846444341403e3c3b3937363432302f2d2b2a2826252321201e1c1b19171a26333f4b586260534231200f00000000000a1928364554626a686663615f5c5a585653514f4c4b484644413f3d3b383634322f2d2b282624221f1d1b19161412100b0200000000091624313f4c5a67746b5b4a3a2a190900000000000000000000000000000000000000000000000000000000001121303d4955616e7a7766554332210f00000000000e1b24282a2d2f323436393b3e404245453f33241922282a2c2f313336383b3d3f4244464136271708000000000000000000000000000d21364a5f72787878787878705d4834200c000000000000081621282a2a2a2a2a2a29241b0e000000000000000000000000000000001b2f43546166696d717578725e4934200b000000000000000000000000000000000000000000000000000d21364b60747874716d69656052402d1900000d1c2b3a495867767d6f6051423324150600000000000000000000000000000000000000000c1c2b3b4a5969787a6c5d4e40312214040000000000000001101d2b38444c5054575b5f6266696d7074787b808380766d6353412e1c09000c192633404d5a6774716151402f1f0e0000000c1d2d3c4b5a6978868484838280807d7c7b7a797877767674737271706f6e6d6c6b6a696867666464636260605f5647372717060000000001101f2e3d4c595d5b5a5857545352504e4c4b4947464442403f3d3b3a3836343331302e2c2b3744505c697571604f3d2c1b0a0000000919283745546371807c7b787674726f6d6b686664625f5d5b58575452504d4b49474442403e3b39373432302e2c2927251f1508000008182734424f5d6a77867968584837271606000000000000000000000000000000000000000000000000000000081b2e3f4e5a6773808c8472614f3e2d1b0a0000000e1e2c373d3f424447494b4e505355575a5a5142322a363d3f414446484b4d505254575a5b53453526160600000000000000000000000012263b5064798e8f8f8f8f8c77634f3b26120000000000051626333c3f3f3f3f3f3f3e382c1e0d0000000000000000000000000000001f34495e727b7d83878a8c77624d38230e0000000000000000000000000000000000000000000000000010253a4f64788e8a86837d7a705c47311c000b1c2b3a49586776868e7d70615142332415060000000000000000000000000000000000000b1b2a3a49596877888a7b6c5e4f40322312000000000000000e1f2e3b49566165686c7073777b7d83868a8d919598938a82705e4b392614101d2a3744515e6b7885806e5e4d3d2c1b0a0000172a3b4b5a69788897999898979594949391908f8f8d8c8b8b898887878684838382807d7d7c7b7979787776747365554534241404000000101f2e3d4c5b6a72706f6e6b6a6867656362605e5c5b5957565452504f4d4b4a4847454342404955616e7a877d6d5b4a39281605000014263746556372829093908e8c89878683807d7b79777472706e6b69676563605e5c5a575553504e4c4a474543403e3c3932261706001325364552606d7a899687766655453424140300000000000000000000000000000000000000000000000000000d22374b5d6c7885919d907d6d5c4a39281605000a1b2b3c4a5254575a5c5e606365686a6c6f6f6051413948515457595b5e606365676a6c6f70635344342415050000000000000000000001172c4055697d93a4a4a4a4927d6a55412d1904000000000f22344450545454545454534a3c2b180500000000000000000000000000001e33485d728894979b9f907a66513c27120000000000000000000000000000000000000000000000000014293e53687c929f9b979386705b46311c0015283a4858677686959d8f807061514233241607000000000000000000000000000000000b1a29394858677687969a8b7c6d5e5041301d0a000000000006192c3d4c596774797d8286898c9094979b9fa2a6aaada69e8d7a685643311e202d3b4855616f7c89968d7c6b5a4a39281502001d32465969788897a6afadadacaba9a9a8a7a5a4a4a3a1a0a09f9d9c9b9b999897979594939391908f8e8d8c8b847363524232221000000d1e2e3d4c5b6a798887868382807d7b797877757372706e6c6b6967666463605f5e5c5a5857555a6673808c988a7968564534231200001b30435564738291a0a8a5a3a19f9c9a989593918f8c8b888684827d7c79777673706f6c6a686663615f5c5a585653514e44352311001b2f435462707d8c99a594847363524231211100000000000000000000000000000000000000000000000000000f253a4f64798a96a2ae9c8b7968574534231105162738495a676a6c6f707376787a7c8083857d6f5f4f465765696b6e70737577797c808284827161524233231200000000000000000000081c31455a6f8498adb9b9ad9985705c48331f0b00000001162a3e51626a6a6a6a6a6a675a4734200c00000000000000000000000000001b30455a6f8499acb0a8947d6954402b1601000000000000000000000000000000000000000000000000182d42576b8296abb0ac97826c58432e19001c31455866768695a4ad9e8f80706151423425160700000000000000000000000000000a192938475766768695a5a99b8c7c6e5f4d39251000000000000d2135495b6a77858f93979a9ea1a5a8acb0b3b7b3afafb7ab988673604e3b29313e4b586572808d9aa79a8978675745321e09001f344a5f748897a6b5c4c0bdbebfbfbebdbcbbb9b9b8b7b5b5b4b3b1b0b0afadacacaba9a8a7a7a5a4a3a3a1a09182706050402d1a0600172a3c4c5b6a7989989c9a9897959391908f8c8b8988868483827d7c7b7977767473706f6e6c6a6b7785919da89786746352402f1d0a001f34495e738392a0afbdbbb8b6b4b1afadaba8a6a4a19f9d9b99979492908d8b89878482807c7b787674726f6d6b68666153402c18001f34495e72828f9ca9b2a2918270604f3f2f1e0e000000000000000000000000000000000000000000000000000d22364a5d6e8091a2b3a99786746352402f1e1223344556677880828487898b8d90939597998d7d6d5e5364747d828486888b8d90929497999080706151412f1c080000000000000000000d21364a5f74899db2c7c8b49f8b76624e3a2511000000081c3044596d80808080808077634f3b27130000000000000000000000000000172c41566b8095aabfac97836d58432e1a050000000000000000000000000000000000000000000000071c31455a6f8599aebda8937d68543f2a15001f344a5f748594a4b3bcad9e8f80706152433425160700000000000000000000000009182837475665758594a4b3b8aa9b8d7c67523c2712000000000115293d5064788895a3a8abafb3b6b4b0ada9a5a29e9b9ba7b5a3907d6b594635424f5c697683909eabb5a7978675614c37220c001e33485e73889db3c4b9aca8a9aaabacadafafb0b1b3b4b4b5b7b8b9babbbcbdbfbfc0bfbdbcbcbbb9b8b8b7af9f8f7d6e5d4935200b001d32465a6a798998a7b1afadacaaa8a7a5a3a1a09f9c9b9998969493918f8d8c8a8887868382807d8a96a2aeb5a392826f5e4d392511001e33485e73889db0bec2b7b3b5b7b9bcbec0bdbbb9b7b4b2b0aeaba9a7a5a3a09e9c99979593908e8c89878683807d7b705b46301b001e33485c6e7d8f9fb0c0af9f8f7d6d5d4d3c2c1b0b000000000000000000000000000000000000000000000000071b2d3f5061738596a7b5a392826f5e4d3b2a1d3041526374859497999c9ea0a3a5a8aaacab9c8c7c6c5f70829297999b9da0a2a5a7a9acae9e8f806f5e4b37220d00000000000000000012263b5064798ea2b7cccebaa6927c6854402c170300000e22364b5f738895959595937d6a56432f1b070000000000000000000000000013283d52677c91a6bbb09b87715c47321d0800000000000000000000000000000000000000000000000b2034495e73889db2b9a48f7965503b2611001d32465a6a798998a6b5bcad9e8f8070615243342516070000000000000000000008172736465564748494a3b2bdae9e8f8070604e3a251000000000091d3144586c8094a6b3b1adaaa6a29f9b9894908d8986899baead9b887663514653606d7a8794a1aeb1a4978a7d705f4a36210c001d32475c71879cb1c0ac9b939495959798999a9b9c9d9fa0a0a1a3a4a5a5a7a8a9aaabacadafb0b0b1b3b5bebdad9d8d77624c37220d001f344a5f748998a7b6c5c0bdbfbfbdbcbab8b7b5b3b2b0afadaba9a8a6a4a3a19f9d9c9a989795949ba7b3bfb3a79a8d7c68533e2813001c31465b70879bb0c5b3a49da0a2a4a7a9abadafb2b4b6b8bbbdbfbebcbab8b5b3b1afacaaa8a5a3a19f9c9a989593866f5a45301b00192d3f5060708292a2b3bdad9c8c7b6a5a4a39291908000000000000000000000000000000000000000000000000102133445566788a9bacb09f8d7c6a59483625394d5f708292a3acaeb1b3b5b6b4b1b0b6baaa9a89736c7d8fa0abaeb0b3b5b6b4b2b0b5bdad9e8d77634d38230e000000000000000001172c4055697d93a8bcd1d5c0ac98846f5b46321e0a000014283d5165798ea2ababab9a86725e4a36220e000000000000000000000000001025394e63788da2b7b49f8a74604b36210c00000000000000010101010101000000000000000000000e23384d62778ca1b6b5a08b76614c37220d00172a3c4c5b6a798997a6b5bcad9e8f807061524334251608000000000000000007162635455464738393a2b1beaf9f908070615142311e0b000000001124384c6074889cafad9e9895918e8a8783807b7774707d91a3b5a593806e5b5663707d8b98a5b2aea19487796c5f51412f1b07001b30465b70869bb0bda8937c7d808082838486868788898b8b8c8d8f909091939495969798999b9b9c9da1afc1b5a08b76604b36210c001e33485d72889db3c5b9aca8a9abacafb0b1b3b5b7b8babcbdbfbfbdbbb9b8b6b4b3b1afadacaaa9adb8bdaea295897c7062503b2712001a2f44596e8499aebfaa96888b8d8f919496989b9d9fa1a3a6a8abacafb1b3b5b8babcbfbfbdbbb8b6b4b1afadab98836d58432e1900102232425363738595a5b6baaa99897867574736261605000000000000000000000000000000000000000000000004152637495a6b7d8fa0b1ab998876655443313c52677c8e9fb0b6aba7a5a3a19f9c9ba5b6af9b8670788b9bacb9aca8a5a3a19f9c9ba2b3b49f8a745f4a35200b0000000000000000081c31455a6f8498adc1d6dbc7b29e8a75614d39241000061a2e43576b8095a9bdc0b5a28d7965513e2a16020000000000000000000000000c21364b5f74899fb3b8a38e78644f3a251000000000081015161616161616140e050000000000000012273c51667b90a5bab19c88725d48331f0a000d1e2e3d4c5b6a788897a6b5bcad9e8f80706152433426170800000000000006162534445363728292a1b1bfb0a09182716252433324140200000005182c4054687b8fa3b7a38f84807c7874716d6a66635f61738698abb09e8b78666774828f9ca9b6aa9d908375685b4e4133241200001a2f44596e8499afbea9947d686a6b6b6c6e6f707072737476767778797b7b7c7d80828283848687878891a5bab39f89735e49341f0a001c31465b70879cb1c0ac9b93949597999b9c9fa0a1a3a5a7a8aaacadafb1b3b4b6bec6c4c3c1bfbfc1c5b19f9084776b5f524433200c00182d42576c8297acbfa994807577797b7d828386888a8c8f91939597999c9ea0a3a5a7a9acaeb0b3b5b7b9bcbeab95806b56402c160004142535455666768898a8b8b7a7968675645444332313020000000000000000000000000000000000000000000000091a2b3d4e5f708294a5b6a6948371604f3d3b5065798fa4b9a89892908e8c8987879aafac97836d768ba0b5ac9b93908f8c89888696abb19c87715c47321d0800000000000000000d21364a5f74899db2c7dbdbcdb9a5907c68533f2b16020c2135495d72879bafc3d1bda995826d5945311d09000000000000000000000000081d32475c70869bb0bba6917c67523d28140000000d1a242a2b2b2b2b2b2b29211608000000000000162b4055697d94a9bead99846e5945301b060000101f2e3d4c5a69788897a6b5bcae9e8f8070615243352617080000000005152434435262718291a0b0bfb0a192827263534434251506000000000c2034485b6f8397abaf9b88736b6763605c5855514e4a56697b8ea0b3a89683707885929fadb3a6998c807164584a3d302315060000182d42576c8398adc0ab95806a55565757585a5b5c5c5e5f6061626364666767686a6b6c6c6e6f70717990a5bab19c87725c47321d08001a2f445a6f859aafbda8937c7d8083848688898b8c8f9091939597989a9c9d9fa2aebed1d8d6d4d4d6c3ad988372665a4d413526160400152a3f546a8094a9bfac97826c626467696b6e70727477787b7d80838587898c8d90929497999b9da0a2a4a7a9a8937d68533f2914000007172738485969798a9babbbb4a49383726151413120100000000000000000000000000000000000000000000000000e1f30415364758799aab2a18f7d6d5b4a384d62778ca1b6a38d7c7a78767372869bafa994806a73889db2a7917c7b787674728297abad98846e59442f1a05000000000000000012263b5064798ea2b7ccc7c5c9bfab97836e5a46311d0912273b4f64788da1b5c9d8c4b09c8874604c39241100000000000000000000000002192e43586d8397acbfaa95806b56412c1702000a1b2b373f4040404040403d3426160500000000041a2f44586d8397acbfaa95806b56412c1702000001101f2e3c4b5a69788897a6b5bdae9e8f8070615344352617080000041423334251617082909fafbeb1a292837363544535261607000000000014283b4f63778b9fb3a793806b58524e4b4744403c39394c5e708396a8b3a08e7c8996a3b0b0a295897b6e6154473a2d201306000000162b40566b8296abc0ac97826b574141424344464747484a4b4c4d4e4f5052525354565758585a5b677b91a7bcaf9a866f5a45301b0600192e43586d8398adbfa9947d696b6c6e707273757778797c7d8082838687888a8fa2b6cbd2cac8ccd4c2ac97836c57483c30231708000013283d52677c92a7bcae99846e594f525456585b5d5f626466686a6c6f717376787a7c80828487888b8d8f919496917b66513c27120000000a1a2a3b4b5c6c7c8d9eaebeb1a190806f5f4f3e2e1d0d0000000000000000000000000000000000000000000000011324354758697a8c9eafad9c8a796756454a5f74899eb3a5907b6663605f73899eb3a6917b666f869aafa994806a63615f6f8599afaa95806b56412c17020000000000000001172b4054697d93a8bcbeb3b0b6c2b19d8974604c38230f192d41556a7d93a7bcd0ddccb8a4907c6854402c1804000000000000000000000000152a3f54697d93a8bdae99846f5a45301b06011427394953565656565656514434221000000000091e32475c71879bb0bba6917c67523d28130000000001101e2d3c4b5a69788897a5b4bdae9e8f8071625344352617080414233242516170808f9faebdb2a3938474645545362717080000000000081b2f43576a8093a7b29f8b7763503d3936322f2b27242f415366788b9eb0ab99909aa7b4ac9f9285776a5d504336291c0f0200000000152a3f546a8094a9bfad98836d58432e2d2e2f3032323334363738383a3b3c3d3e3f404243434453687d93a8bdad98836e58432e190400172c41576b8297acc0ab95806b5657595b5c5e6062636567686a6c6e6f7074828fa2b6cbc0b6b3b8c3c1ac97826b56402b1e120600000011263b50657a90a5bab09b86705b463c3f414346484a4c4f515355585a5c5e606365676a6c6e70737577797c7d828379644f3a2510000000000c1d2d3e4e5e6f8090a0b1bfae9e8e7d6d5c4c3b2b1b0a00000000000000000000000000000000000000000000000618293a4c5d6e8091a3b4a89785736251475c70869bb0a8937d68534c62778ca1b6a38e78636c8297acac97836d584c5d72889db2a7927c68533d28140000000000000000071c30455a6e8398acc1afa09ba4b5b8a48f7b66523e2a161f33485c708599adc2cbc8cbbfab97836f5b47331f0b00000000000000000000000012273b50657a8fa4b9b29d88725d49341f0a0a1d304457676b6b6b6b6b6b62513f2c1a070000000d21364b60758a9fb4b7a28d78634e39240f0000000000000f1e2d3c4b5a69788796a5b4bdae9e9082716253443526171322324150606f808f9eaebdb3a4948575655646372718090000000000000f23374b5f72879aaeab97836f5b483425211d1a1613122436495b6d8093a5b7aaa5abb5a89b8e827366594c3f3225180b00000000000013293e53687d93a8bdaf99856f5a442f1a191a1b1c1d1e1f2122232325262728292a2b2c2d2e40556a8095abc0ab97826b56412c170200152a3f546a8095aabfac97836c5742444647494b4c4e5052535557606d7986929fadbebbafa39da5b5c0ab95806b56402b1601000000000f24394e63788da3b8b39d88735e48332a2c2e303335373a3c3e40434547494c4e50525457595b5e60626467696b6e6d5e4b37220d00000000000f2030405161718293a3b3bcac9b8b7a6a59493828180700000000000000000000000000000000000000000000000b1d2e3f5162738596a7b4a391806f5d4c586e8398adab96826b575065798fa4b49f8b7560697d94a9af9a86705b5060768ba0b5a48f79644f3a251000000000000000000c21364a5f73889db2bba6928699adbfaa96826d5944301c25394e62768b9fb4c2b7b3b7c2b29f8b76634e3b27130000000000000000000000000e23384d61768ca1b6b5a08c76614c38230e1226394c60738282828282826e5c4937241200000010253a4f64788ea3b8b39e89745f4a36210c000000000000000f1e2d3c4b5a68778796a5b4bdae9f9082716253443527213140505f6e7d8e9eadbcb4a59586756657473828190a00000000000003172b3e52667a8ea2b6a38f7b6753402c180c080304111e2b3845526375889bafbebbb2a4978a7d706356493c2f2215080000000000000012273c52677b91a7bcb09b87705b46301b0600000004090a0b0d0e0e0f11121314151617182d42576c8397acbfa9947d69543f2a15000014293e53687d93a8bdae99846e58432f3032343637393b404d5966727d8b97a4b0bcb7aa9e918898adc0ab95806a543f2a1500000000000c21374c60768ca0b5b5a08b75604b362017191b1e20222427292b2d30323437393b3d3f424446484b4d4f525456585950412f1c08000000000002122333435464748596a6b6b9a9988877675646362515040000000000000000000000000000000000000000000000102233445667788a9badaf9e8d7b6a58566b8095aaae9984706a63687c92a7b19c87725d667b91a6b29d88736b6464788ea3b5a08c76614c37220d000000000000000011263b4f64788ea2b7b5a18c7d92a7bbb19c88735f4b37222b4054687c92a6bab4a59da4b3baa6927d6a56422e1a0600000000000000000000000a1f34495e73889db2b9a48f7965503b26111b2e4255697c90979797978c796654412f1d0a000014293e53687c92a7bcaf9b86705c47321d0800000000000000000f1e2d3c4a5968778796a5b4bdae9f90827162534536303f4f5e6e7d8d9dacbbb5a596877667584839291a0a00000000000000091e32465a6e8296aaae9b87735f4c38271a0c000815222f3c495663707d8b9cb0c5b9a59487796c5f5245382b1e1104000000000000000010263b50657990a5bbb29d88725c47321d080000000000000000000000000000000000001a2f44596e8499aebca7927c67523d2813000012273c52677c91a7bcb09b866f5a45301b1d1f2022273b4e5e6a7683909ca9b5beb2a5998d808297acbfa9947d69543f2a1400000000000a1f34495e73899eb3b7a28d77624d38230e0003080b0d0f111416181b1d1f212426282a2d2f313336383a3c3f4143443e3223120000000000000005152636465767778899a9b9b6a6958574645343332212010000000000000000000000000000000000000000000004152738495b6c7d8fa0b2aa9988766453677c92a7b19d8c857d77718296abae99846f5a63788ea3b5a18f868078727c91a6b29d88735e49341f0a0000000000000001172b4054697d93a7bcb09c87778ca0b5b7a38f7965513d2932465a6f8397acbfab978896aabead9a86715d4936220e0000000000000000000000061b30455a6f8499aebda8937d69543f2a1524374b5e718598acacaca99684715e4c3a27140200182d42576b8296abbfac97826c58432e19040000000000000000000f1e2c3b4a5968778796a5b3bdae9f9082716354453e4e5d6d7c8c9cabbbb6a69788776858493a2a1b0b00000000000000000b21364b60758a9eb1a893806d605245372a1d0f192633404d5a6774828f9ca9b9c1b7a28d79685b4e4134271a0d000000000000000000000f24394e63788fa4b9b49f89735e49341f0a000002090c0d0d0d0d0d0d0d0d0d0d0d0d0d1c31465b70869bb0bba5907a65503b2611000010263b50657990a5bab19c87715c47321c070a0b162b40556a7c8895a1adbabaada194887b6e8398adbea9947d68533e29130000000000071d32475c71879cb1b9a48f79644f3a25100000000000000000000000070a0c0f111315181a1c1e202325272a2c2e2f2a211405000000000000000008182839495a6a7a8b9cacbcb3a3928271615140301f0f0000000000000000000000000000000000000000000000091a2c3d4e60718394a5b6a59482705f64798fa4b5aaa099928c868499aeab96826b5660758ba0b2ada19a948d878094a9af9a86705b46311c0700000000000000071c30455a6e8398acc0ab978271869aaebda995826c58432f384c60758a9eb2b9a5917c8fa2b6b5a18d7965513d2915010000000000000000000000182c41566b8296aabfac97826c58432e1a2d4053677a8ea1b5c1c1b3a18e7b695644311f0d071c31455a6f8599aebda8937d69543f2a1500000000000000000000000e1d2c3b4a5968778795a4b3bdae9f90827263544d5c6c7b8c9baabab7a798887869594a3a2b1c0c0000000000000000000a1f34495d72879cb0ab998c7d706355483b2d20293643505e6b7785929facb4acacb5a9978572604d3b29160900000000000000000000000d22374c62778da2b7b5a08b74604b36200b0009151d21222222222222222222222222222233485d72889db2b8a38e78634e39240f00000f24394e63788fa3b8b39d88735e48331e090000152a3f536677899aacbdb5a89c8f83766a6e8499aebda8937c67523d28130000000000001b30455a6f8599afbba7917b67523c2712000000000000000000000000000000000000000005090b0e10121417191a160e04000000000000000000000a1b2b3c4c5d6d7d8e9eafc1b0a08f806f5e4e3d2d1c0c00000000000000000000000000000000000000000000000e1f31425365768899aab1a08f7d6c61768797a8b3b4ada7a09a96a1b3a7937d68535d728494a5b1b5afa8a29b959eb0ac97826c57422d1803000000000000000c21364a5f73889db2bba6927c6b8094a8bcaf9b87725e4a363e53677b90a4b8b39f8a76879bafbca895806c5844311c09000000000000000000000014293e53687c92a7bbaf9a86705b46322236495c708397aabed1d0beab998673614e3c2a170b2034495e73889db2b9a48f7965503b26110000000000000000000000000e1d2c3b4a5968768695a4b3bdae9f918272635c6b7a8b9aa9b9b7a89989796a5a4b3b2c1c0d00000000000000000000061a2f44586d8297aab7a99c8f827366584b3e303a4754616e7b8996a3b0b0a39898a6b4a2907d6a584634210f00000000000000000000000c21364b60768ca0b5b7a18c76614c37220d09192731373737373737373737373737373737374a5f74899fb4b6a18c76614c37220d00000d22374c62778da2b7b49f8b745f4a35200b0000102437485a6b7c8e9fb0a3978b7d7165596e8499afbca7927c67523c2712000000000000182d43586c8397acbea8947d68543f2a1400000000000000000000000000000000000000000000000000000000000000000000000000000000000000000d1e2e3f4f5f708091a5babeae9d8d7c6c5b4b3a2a1a09000000000000000000000000000000000000000000000213253647596a7b8d9eb0ac9b8a786769798a989fa5acb2b4aeabb2b9a48f79655055657687979da4aab1b6afabb0bda8947d69543f2a15000000000000000011263b4f64788ea2b7b5a18c7764788da2b6b6a28d7965503c44596d8296aabfac98846f8094a7bbb09c8874604c382410000000000000000000000010253a4f64788ea3b8b39e89745f4a352b3e5265788c9fb3c6c2c0c5b6a3917d6b594734220f23384d62778ca1b6b5a08b76614c37230e000000000000000000000000000e1d2c3b4a5967768695a4b3bdafa09182726a798a99a9b8b8a99a8a7a6a5b4c3c2d1d0e000000000000000000000000152a3f53687c8d9aa7b4ac9f918476695c4e414b586572808d99a6b3ada09286889badad9a887563513e2c1a07000000000000000000000a1f344a5f748a9fb4b8a38d78634e38230e152737444c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c60768ca1b6b49f8a745f4a35200b00000b21364b60758ba0b5b6a18c76604c37210c000007192b3c4d5e7082939f9286796d60545a6f869bb0bca7917b66503b2611000000000000162b40556a8095abbfab96826b56412c1701000000000000000000000000000000000000000000000000000000000000000000000000000000000000000e1f2f405061708292a6bacbbbab9a8a79695848372717060000000000000000000000000000000000000000070f161e293b4c5d6f8092a3b4a7968573616c7c848a91979ea4abb1b4a89d8c77624d4858687983898f969ca3aab0b6ab9f907b66513c27120000000000000001172b4054697d93a7bcb09b87725e72879bafbca894806b57424b5f73889cb1bba6927d69788ca0b4b7a38f7b67533f2b1704000000000000000000000c21364b60758a9fb4b7a28d77634e3934475b6e8295a8bcb8adabb2bfae9b897663513e2c1a273c51667b90a5bab29c88725d49341f0a00000000000000000000000000000e1d2c3b495867768695a4b3beafa09182798998a8b7b9aa9a8b7b6b5c4d3d2e1e0f0000000000000000000000000011253a4e606e7c8997a4b1afa29487796c5f515c687583909daab6a99c8f82747d90a2b5a593806e5c4937251200000000000000000000081e33485e73889db3b9a48f79644f3a25101d314455606262626262626262626262626262626263788da3b8b29d88725d48331e0900000a1f34495e73899fb4b8a38d77634d38230e0000000d1e3041526375868e8274685b4f455a6f869bb0bba5907b66503b261100000000000014293e53687d93a8bdad98836d58432e19040000000000000000000000000000000000000000000000000000000000000000000000000000000000000c1c2c3d4d5e6e808f9fb0c2c4c6b8a897877666554535241403000000000000000000000000000000000008131b232a32383a405163748697a8b4a291806e5e696f757c838a90979da2978b80725e493a4a5b676e747b82888f959ca2998d8275624d39240f00000000000000071c30455a6e8398acbfab96826d586c8095a9bdaf9a86715d495165798ea2b7b4a08c7763708599adbfab97836f5b47331f0b00000000000000000000091e32475c71879bb0bba6917b66523d3d5063778a9eb1bdaa9a96a1b3b8a693826e5c4937242b4055697d94a9beae99846f5a45301b060000000000000000000000000000000e1d2b3a495867768695a3b2beafa0918997a7b6baab9b8c7c6c5d4d3e2f1f1000000000000000000000000000000b1e3142505e6b788693a1aeb2a5988a7c6f616c798794a1aeb2a5988b7d7064728598aab09e8b796654412f1d0b000000000000000000031c32475c71879cb1bba6917b66503b261121374c607377777777777777777777777777777777777990a5bab09b86705b46311c070000071d32475c72889db2b9a48f79644f3a250f000000011223354657687a7c6f63574a3e465b70879cb1bba59079644f3a250f00000000000011273c51667b91a6bbaf9a866f5a45301b06000000000000000000000000000000000000000000000000000000000000000000000000000000000009192a3a4a5b6b7c8d9dadbdb6afb1bbb5a5948473635242322111000000000000000000000000000000000a19262f363e464d4f49455667798b9cadae9d8c7a69585b61686e757b82898f85796d6254432f3d4b535a60676d737a82888e877b70645746331f0a000000000000000c21364a5f73889db2baa6917c685365798ea3b7b5a18d77634f576b8095a9bdae9a86715d697d91a5b9b29e8a76624e3a261200000000000000000000041a2f44586d8397acbea994806a554046596c8093a7bab4a08d8496a9bbb09e8c786653412f2f44586d8397acbfaa95806b56412c1702000000000000000000000000000000000d1c2b3a495867768694a3b2beafa29ea6b5bbac9c8d7d6d5e4e3f2f201101000000000000000000000000000002142433404d5a687583909eabb5a89b8e80727d8a98a5b2aea19487796d6055687a8d9fb1a89684715f4c3a2815030000000000000000001b30455a6f869bb0bda8937c67523d281322374c62778d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d95a8bcae99846e59442f1a050000001b30465b70869bb0bba6917b66503b261100000000061728394b5c6b6a5e52453932475c72879cb1b9a48f78644f3a240f0000000000000f243a4f64788fa3b8b29c88725c47321d080000000000000000000000000000000000000000000000000000000000000000000000000000000006162737475868798a9aaabbb5a59a9eacbcb2a291827060503f2f1e0e000000000000000000000000000004172837434a525961645c514a5b6d7d90a1b2a998877564524d545a60676d747a72675c504436252d383f454c52595f666c737975695e5247392917040000000000000011263b4f64788ea2b7b5a18c77624e5f73889cb1bba7937d6a555d72879bafbca894806a5662758a9eb2b9a5927d6955412e1a0600000000000000000000162b4055697d94a9bead98836e59444e6275899cafbeab9885798c9fb1bba89683705e4c3932475c71879bb0bba6917c67523d28130000000000000000000000000000000000000d1c2b3a495867758594a3b2bfb5b3b8bcad9d8e7d6e5f4f4030211102000000000000000000000000000000000615222f3d4a576472808d9aa7b5ab9e90838e9ba8b5aa9d908376695c4f4b5d6f8295a7b3a18f7c69574532200e000000000000000000192e43586e8499aebfa9947d68543f2a1421364b60768ca1a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a6b3c0ac97826c57422d18030000001a2f445a6f8499afbda8937c67523d281300000000000b1c2d3e4d57574d41342832475c72889db3b9a48f78634e38230e0000000000000d22374c62778ca1b6b49f89745f4a34200a00000000000000000000000000000000000000000000000000000000000000000000000000000003132434455565768797a7b8b8a898878e9eafbfaf9f8f7d6e5d4d3c2c1c0b000000000000000000000000000d213446555e666d75796e64594f60718395a6b6a59382705f4d3f464c5359606660554a3e3327181b242b31383e454b52585e6563574c4035291b0b0000000000000001172b4054697d93a7bcb09b87725d49596d8296aabfad9985705c64788da1b5b6a28d7864505a6e8396aabead9985715d4935210d0000000000000000000012273c51667b90a5bab19c87725d48576a7d92a5b8b5a28f7b6f8294a6b9b3a08e7b695644364b60758a9fb4b7a28d78634e392510000000000000000000000000000000000000000d1c2b3a495766758594a4b7cac8c5b19e8f7d6f5f50413122120300000000000000000000000000000000000004111f2c394754616f7c8a97a4b1aea1989facb3a6998c807265584b3e405264778a9caeac99877462503d2b19060000000000000000182d42576c8397acc0ab95806b56402b1620364b60748ba0b5b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8bac1b1a292806a55402b1600000000182e43586d8398adbfa9947d69543f2a1400000000000010202f3b42423b2f231e33485e73899fb3b8a38d77624c38230d0000000000000b20354a5f748a9fb4b6a18c76614c37220d000000000000000000000000000000000000000000000000000000000000000000000000000000102131425262738494a4b5bbab9b8a798091a1b1bdad9c8c7b6b5a4a3929190800000000000000000000000115293c5063727982898c82766c615665768899abb19f8e7c6b5a4837383f454b504d43382c2115090810161d242a30373d444a504f453a2f23180b0000000000000000071c30455a6e8398acbfab96826d584352677b8fa4b8b4a08b77636a7d93a7bcb09b87725e4a53677a8fa3b7b4a08d7864503c2915010000000000000000000e23384d62778ca1b6b4a08b76604d6073879baec0ac9986726476899caebdab988673614e3c4f64788ea3b8b39f89745f4b36210c00000000000000000000000000000000000000000d1c2b3948576675889db3c8d8c3ad98837365564738291a0b0000000000000000000000000000000000000000010e1b293643515e6b788694a1b3b3adb1b3a295887b6e6154473a2d35485a6c8091a4b6a492806d5a483623110000000000000000162b40566b8296abc0ac97826c57422c171f344a5f748b9fb3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3a394847364513d281300000000172c41566b8297abc0ab95806b56402b1601000000000002111e282d2d281e121f34495e73899fb4b7a28d77624c37220d000000000000081e33485d72889db2b8a38f78634e39240f00000000000000000000000000000000000000000000000000000000000000000000000000000e1e2e3f4f60708291a1b2beae9d8d7c6c728394a4b4baaa9989786857473726160500000000000000000000091d3044586c808e959d9e94897d73695e6a7c8d9fb0ac9a8977665543322a31373b3931261a0f0400000002090f161c232930363b3a33281d11060000000000000000000c21364a5f73889db2baa5917c67533e4c6075899db2baa6927d69708599adbeaa95826c58434b6073889cafbca894806c5844301c080000000000000000000b2034495e73889db2b8a38f796456697c90a3b6b7a3907c695a6c8092a4b6b5a3907d6b594653687c92a7bcaf9b86705c47321d080000000000000000000000000000000000000008172736465564748494a4b7c8c5c6b3a192847465564738291a0c0000000000000000000000000000000000000000000b182633404d5b68758398adc3c3c3ad9884776a5d504336291c2b3d4f61748799abaf9c8a776553412e1c0a00000000000000152a3f546a8094a9bfad98846e58432e191e33485e73899d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d95857565554635220e00000000152a3f546a8094a9bfac97836c57422c1702000000000000010c141818140b0a1f344a5f748ba0b5b7a18c76604b36210b000000000000031b30465b70869bb0bba5907b66503b2611000000000000000000000000000000000000000000000000000000000000000000000000000b1b2c3c4c5d6d7d8f9fafbfb0a090806f5e65758697a7b7b7a7978675655444342313030000000000000000001125384c6073889ba9b1b1a69b91867b70666f8292a3b5a7958472614f3e2d1d2326241e1408000000000000000001080f151b22262520160b000000000000000000000011263b4f64788ea2b7b5a08c77624d39465a6e8397abbfac98846f768b9fb4b7a38f7a66523d44586c8094a8bcaf9b88735f4b37240f000000000000000000071c31465a6f859aafbca7927c685f728699acbfae9b8873604f61748799acbeae9b89766351576b8296abbfac97826d58432e190400000000000000000000000000000000000007162635455463738393a2b2bfb4b0b5bfb0a2938474655647382a1b0c000000000000000000000000000000000000000d1a2734414e5b6875828f9eb1bab7bab09d8f827366584b3d302220324457697c8fa1b3a79583705d4b3927140200000000000013283e53687c93a8bdaf9a866f5a442f1a1e33485d7288888888888888888888888888888888888888888776675747382817050000000013283e53687d93a8bdae99846e58432e1904000000000000000000000000000b21364b60768ba0b5b5a08b76604b36210b00000000000000192e43586e8398adbda8937c68533e281400000000000000000000000000000000000000000000000000000000000000000000000008182939495a6a7a8c9cacbdb3a392827161515768788999aabab4a4948372625141312010000000000000000005192c4054687b8fa3b7b4b0b5aea3988e83786d748697a9b3a290806d5c4a392817110f0a0100000000000000000000000000070d10100c04000000000000000000000000162b4054697d93a7bcb09b87715d48343f53687c91a5b9b39f8a767c92a6bab19d8874604b373d5065788da1b4b7a38f7a67533f2b1703000000000000000000182d42576c8296abc0ab96826c677a8ea2b5b8a5927d6a5745576a7c8fa2b4b8a593806e5b5a6f8599aebda8937d69543f2a1500000000000000000000000000000000000006152534445363728292a1b1bfafa19ba2b1c0b1a2938474655648392a1b0c0000000000000000000000000000000003101d2b3845525f6c798693a0adb2a6a1a7b4ac9f918476695b4e403325283a4c5f718496a8b2a08d7a685644311f0d00000000000012273c51667b91a7bcb19c87705b46311c1c31455a6c72727272727272727272727272727272727272727268584939291a0a000000000012273c51667b91a7bcb09b866f5a45301b06000000000000000000000000000b21364b60768ca1b7b5a08b745f4a341f0a00000000000000172c41566b8296abbfaa95806a55402b16010000000000000000000000000000000000000000000000000000000000000000000005152636475767778999a9bab6a69585746453434a5a6b7b8c9cadbdb1a19180705f4f3e2e1e0d000000000000000d2134485c708497abb0a19ba2acb5aba0958b7c6a798b9caeae9c8b79685745342312000000000000000000000000000000000000000000000000000000000000000000071b3045596e8398acbfab96826c58432e394d61768a9fb3b9a5917c8397acbfab97836d59453135495d718699adbeaa96826e5a46321e0a00000000000000000014293e53687c92a7bcaf9a8570708497abbeaf9c8975614e3b4d5f728597a9bcb09e8b78665e73889db2b9a48f7965503b2612000000000000000000000000000000000005142433435262718291a0b0bfb0a1918693a2b1bfb1a2938474665748392a1b0c00000000000000000000000000000714212e3b4855626f7c8a97a4b1afa2958c96a4b1afa29487796c5e514336282f415466798b9eb0aa988673614e3c291501000000000010253a4f647990a5bab39d88725d48331e162a3d4e5a5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c574a3b2b1b0b00000000000010253a4f647990a5bab19c87715c47321c07000000000000000000000000000d22374c62778da2b7b49f89735e49341f0a00000000000000142a3f54697d94a9beac97836c57422d180300000000000000000000000000000000000000000000000000000000000000000000112233445464758696a6b7b9a9988877675646363c4d5d6e7d8f9fafbfaf9e8e7d6d5c4c3c2b1b0a00000000000115293c5064778c9fb3a794868f9aa5afb3a89a88756d7d90a1b3a99786746352402f1e0c00000000000000000000000000000000000000000000000000000000000000000c21354a5e73889db1baa5917c67533e2933475b6f8498acc0ac97838a9eb2b9a4907c67533f2a2e42566a7d92a6bab19e8a75614e3a261200000000000000000011253a4f64798fa3b8b29e8973798da0b3b9a693806c5946324255677a8d9fb2bba896837062778ca1b6b5a08c76614c38230e00000000000000000000000000000000041423324251617080909fafbeb1a29283748493a1b0bfb1a2938575665748392a1b0d0000000000000000000000000b1825323f4c596673808e9ba8b5ab9e9184788693a0aeb2a5978a7c6f615446392b37495c6e8293a5afa3907d6c58442f1a0500000000000f24394e63788fa3b8b49f89735f4a341f0e1f303d45474747474747474747474747474747474747474747443a2c1d0d000000000000000e23384e63788ea3b8b39d88735e48331e09000000000000000000000000000e23384d62778da3b8b49f89735e48331e090000000000000012273c52677c91a7bcaf99846f5a442f1a0500000000000000000000000000000000000000000000000000000000000000000000192d405161728393a3b4bcac9b8b7a6a594938282f3f5060708291a2b2bcac9b8b7a6a59493928180800000000091d3044586c8093a7b4a08c787d88929da8b7a592806b728495a6b5a492826f5e4d3b2a19070000000000000000000000000000000000000000000000000000000000000011263a4f64788da2b6b5a08c77624d39242c4055697d92a6bab29e8c91a4b8b39e8a75614d3924263b4e62768a9eb2b9a5917c6955412d190500000000000000000d22374c60758ba0b4b6a18c778295a9bcb19d8a7663503d29384a5d6f8295a7b9b2a08d7a687b90a5bab29d88725d49341f0a0000000000000000000000000000000413233241516070808f9eaebdb2a393847365748392a1b0bfb1a2948575665748392b1c0d00000000000000000000091a293643505d6a7784919eacb5a79b8e8073687583909eabb5a89b8d80716457493c2e3e516376889b9c92887c6f5a45301b0600000000000d22374c62778da2b7b5a08b75604b36210b121f2a313232323232323232323232323232323232323232322f281c0e00000000000000000d22374c62778ca1b7b49f8b745f4a35200b000000000000000000000000000e23384e63788fa4b9b39d88725c47321d080000000000000010253a4f64798fa4b9b19c87705c47321c07000000000000000000000000000000000000000000000000000000000000000000001e33485d6f8090a1b1bfae9e8e7d6c5c4c3b2b1b2132425263738494a5b5b9a9988877675646362515050000001125384c6073889bafac9885706a75808b9bafac97826b6677899aacb09f8d7c6a594836251402000000000000000000000000000000000000000000000000000000000000162b4054697d92a7bcaf9b86715d48341f263a4e63778ba0b4baaaa0a2afc0ac98846f5b46321e1f33475b6f8397abbfac9885705c4834210d0000000000000000091e33485d72879cb1baa5907b8b9eb2bba895826d5a4734202d405265778a9cafbdab9886737d94a9beae99846f5a45301b0600000000000000000000000000000312223141505f6f7d8f9eaebdb3a4948574655664738392a1b0bfb2a39485756657483a2b1c0d0000000000000000001426384753606e7a8895a2afb1a4978a7c6f62576472808d9aa8b5ab9e908274675a4c3f3446596b7d908a80756a60513f2b170300000000000b21364b60768ba0b5b7a28d77624c37220d020e161c1d1d1d1d1d1d1d1d1d1d1d1d1d1d1d1d1d1d1d1d1d1b150b0000000000000000000b20364b60748ba0b5b6a18c76604c37210c000000000000000000000000000f243a4f64798fa4b9b29d88725c47321d07000000000000000e23384d62778da2b7b39e89735e49341f0a000000000000000000000000000000000000000000000104070602000000000000001f34495e71808d9aa8b1a190806f5f4e3e2e1d0d142434455566768797a8b8b6a6968574645343332211000005192c4054687b8fa3b7a4917c6958636d8398adac97826b596b7c8e9fb1ab9a887665544331200f0000000000000000000000000000000000000000000000000000000000071b3045596e8397acbfaa96826c57432e1a1f33485c708599aec2bbb4b6bfbaa6927d6955402c18182b4053677b8fa4b7b4a08c7764503c28140000000000000000041a2f44596e8398adbea9948094a7bab29f8b7764513e2b172335485a6d8092a5b7b5a3907d8397acbfaa95806b56412c17020000000000000000000000000002112130404f5f6e7d8e9dadbcb4a49586756656475564738392a1b0beb2a39485756658493a2b1c0d00000000000000001b2f435664717d8c99a6b3ada09386786b5e514754616f7c8a97a4b2aea09386776a5d4f423b4e607282776d62584d423322100000000000000a1f344a5f74899fb4b8a38f78634e38230e000000000000000000000000000000000000000000000000000000000000000000000000000a1f34495e73899fb3b8a38d77634d38230e000000000000000000000000000f253a4f647990a5bbb19c87705b46301b06000000000000000b20364b60758ba0b5b5a08b76604b36210c0000000000000000000000000000000104070a0d101316191c1c160e0200000000001b2f4253616f7c8a97a39383726151413020100006172737485869798a9aabbbb3a39382716151402d1900000d2134485c708497abb19d89756153576c8398adac97826b565e708293a4b5a6958371604f3d2c1b0a000000000000000000000000000000000000000000000000000000000c21354a5e73889db1baa5907b67523e2914192d41566a7d93a7bccfcacbc8b4a08c77634e3a26111024384c6074889cb0bba793806b57432f1c080000000000000000172b40556a8094a9beaf9e959eb0bca996836f5c4835220e182b3d506275889aadbfad9b88879bb0bba6917c67523d2814000000000000000000000000000110202f3f4e5e6d7c8d9cacbbb5a596877667574839465564738392a0afbeb2a39485766758493a2b1c0d000000000000001e33485d72828f9daab6a99c8f8275685b4e413643515e6b798794a1afb1a396897a6d6052454356676f655a50453b30241505000000000000081e33485d72889db3baa59079644f3a251000000000000000000000000000000000000000000000000000000000000000000000000000061d32475c72889cb1b9a48f79644f3a250f0000000000000000000000000011263b50667b91a6bbb09b86705b46301b0600000000000000091e33485e73889db3b8a38d77634d38230e0000000000000000000306090c101316191c1f2225282c2f31312a1f12020000000012253543515e6c7987948675645444332312020000091a2a3a4b5b6c7c8d9daebeb1a090806f5d48331e000015293c5064778c9fb3a995826d6868686c8398adac97826b565264758798a9b2a1907d6d5b4a3927160500000000000000000000000000000000000000000000000000000011263a4f64788da2b6b5a08b76624d38240f13273b4f64788da1b5c9ded6c2ae9a86705c48341f0b091d3145596d8295a9bdaf9b87725f4b37230f000000000000000013283d51667b90a5babcafabb0bdb3a08d7966533f2c19050e203345586a7d90a2b5b8a59492a2b5b7a28d78634e392510000000000000000000000000000f1f2e3e4d5d6c7c8c9babbab6a6978777685849392a37465564738291a0afbeb2a39586766758493a2b1d0e0000000000001f344a5f73899fadb7a6998c7d7164574a3d302633404e5b687683919eacb4a6998c7d7062554749565a52483d33281e130600000000000000021c31465b70879cb1bca7917b66513c27120000000000000000000000000000010203050607090a0b0d0e0f110e080000000000000000001b30465b70869bb0bba6917b66503b26110c0a080604020000000000000011263b50667b91a7bcb09b866f5a442f1a0500000000000000051c31465b70879bb0baa5907965503b261000000205090c0f1215181b1e2125282b2e3134373a3d404447453d301f0e0000000007172533404e5b6976847767574736261505000000000c1c2d3d4e5e6f808fa0b0aa9c8f82725e49341f00001c3044586c8093a7b9a48f7d7d7d7d7d7d8398adac97826b564657687a8c9daead9c8a79675645332211000000000000000000000000000000000000000000000000000000162b4054697d92a7bcaf9b86715d48331f0a0c2135495d72869aafc3d7d0bca893806a56422d19050216293d5165798da1b5b6a28e7a66523e2a1602000000000000000f24394e63778da2b6cbc3c0c4beaa9784705d4a362310000416283b4d60728598aabdb2a7a6b0bfb39f8a745f4b36210c0000000000000000000000000e1e2d3d4c5c6b7b8b9aaab9b7a798887869594a3a2b1b2837465564728291a0afbeb3a49586766758493b2c1d0e00000000001f344a5f748ba0b5b09b887a6e605346393035393d41464a586572808e9ba9b7a99c8f827365544042443f352b20160b010000000000000000001b30455a6f869bafbda8937c68533e28130204050608090b0c0e0f101213141617181a1b1d1e1f2122232526231c1104000000000000001a2f44596e8499afbda8937c67523d2823211f1d1b19171513110f0d0b0912273c52677c93a8bdaf99846e59442f1a0400000000000000001a2f44596e8499aebca7927c67523d28131114171a1e2124272a2d303336393d404346494c4f5255585c5a4e3d2a160200000000081522303d4b5866726a5a49392918080000000000000f1f30405161718292a3998c7d706254432f1b00001f344a5f73889bafbda99994949494949494a0b2ac97826b56404b5c6e8091a2b3a89786746251402e1d0c00000000000000000000000000000000000000000000000000071b3045596e8397acbfaa96826c57432e1a05061a2e43576b8094a8bdd1cab6a18d7864503b271300000e22364a5e72869aaebdaa96826d5a46321e0a000000000000000b20354a5f74899eb3c8d8d5c8b5a28e7a6754412d1a0700000b1e304355687a8da0b2c4bcbbc2c5b09b86705c47321d0800000000000000000000000d1d2c3c4b5b6a7a8a99a9b8b7a89989796a5a4b3b2c1c0d192837465463728291a0afbeb3a495867667594a3b2c1d0e000000001f344a5f748ba0b5b29f8f827365584a41454a4e52565b5f63686c707d8b9eb3baac9f91836d58432e2f2b23180e030000000000000000000000192e43586e8499aebfa9947d69543f2a1617191a1c1d1e202123242527282a2b2c2e2f303233343637383a3b382f221201000000000000182d42576c8398adbfa9947d69543f3b38373432302e2c2a28262422201e1c283e53687c93a8bdae99846e58432e19030000000000000000172c42576c8297acbea9947d69543f2a2326292c2f3336393c3f4245484b4e5255585b5e6164676a6e706c5a46311c07000000000004121f2d3a48565d594c3c2c1b0b0000000000000001122233435364748595897b6e60524536251300001e33485d6f8294a6b8b7aca9a9a9a9a9a9a9b0b8aa97826b56403e5061728496a7b4a392806f5d4c3b2918070000000000000000000000000000000000000000000000000c21354a5e73889db1b9a5907b67523e2914000014283c5065798ea2b6cac4af9b87725e4935210d0000071b2e42566a7d92a6bab19d8975614d39251100000000000000071c31465b70869aafc4d9d2bfac9885725e4b382411000000011426384b5d708395a8bacdd0d5c1ac97836d58432e19040000000000000000000005182a3b4a5a69798998a8b7b8a99a8a7a6a5b4c3c2d1d0e000a192836455463728291a0aebdb3a495867768594a3b2c1d0e0000001f344a5f748b98a5b3ad9f918476685b565a5e63676b7074787c8286898fa0b4c9bca7927d68543f2b1a17100600000000000000000000000000172c42576c8397acc0ab96826b56402b2b2c2e2f313233353638393b3c3d3f404143444647484a4b4c4e4f504c40301e0b000000000000162b40566b8296abc0ab95806b5652504e4c4a474643413f3d3b39373533312f3e53687d94a9bfad98836c57422d18030000000000000000152a3f546a8094a9bfab97826b574135383b3e4144484b4e5154575a5d6063676a6d707376797c808386735e49341f0a000000000000010f1c2a384348463c2e1e0e000000000000000000041525364656677786786b5d5042342718080000192d40526476899bacadadadadadadadadadada79a8c7d6b56403244556677899bacaf9e8d7b6a584736241302000000000000000000000000000000000000000000000011263a4f64788da2b6b4a08b76614d38240f00000d22364a5e72889cb0b8b8a995806c58432f1b0600000013273b4f63778b9fb3b8a4907c6854402c190500000000000001192d42576c8297abc0d5c9b6a38f7c6955422f1b0800000000091b2e405365788b9db0c2d5d2bda8937d69543f2a1501000000000000000000000b2034475968788897a7b6b9aa9a8b7b6b5c4c3d2e1e0f0000000a1827364554637282909faebdb3a495877768594a3b2c1d0d00001e33475b6c7a8895a3b0afa29487796b6b6f73777c8085898d92969a9ea2adbdbfb6a28d78644f3a251100000000000000000000000000000000162b40566b8095abc0ac97836c57423f404243444647484a4b4d4e50515254555758595b5c5e5f60626364665e4d3a2612000000000000152a3f54697d94a9bfac97836c69676563605f5c5b58575452504e4c4a48464442546a8094a9bfac97836c57422c1702000000000000000013283d52677c92a7bcad98846e58474a4d5053565a5d606366696c6f7276787b808386888c8f9295988c76614c37220d00000000000000000c1a262f33312a1e1000000000000000000000000718283849596a74685a4d3f3224160900000011223547596b7d8f9898989898989898989898978a7b6e604f3c2837495a6b7d8fa0b1aa998876645342301f0e0000000000000000000000000000000000000000000000162b4054697d92a7bcaf9a86715c48331e0a0000071b2f44586c8295a3a3a3a38f7965513d2914000000000c2034485b708498acbfac9884705c4834200c00000000000000152a3f53687d93a8bdd1c1ad9a8673604c392613000000000000112336495b6d8093a5b8caceb9a48f7a65503b261200000000000000000000000e23384d63778797a6b5baab9b8c7c6c5d4d3e2e1f100000000000091827364554637182909faebdb3a596877768594a3b2a180500182b3e4e5c69778592a0aeb2a5978a7c8084888d9195999ea2a6abafb3b7b3aeaaa69d88735e4a35210c00000000000000000000000000000000142a3f54697d94a9bfae99846e5853545657585a5b5c5e5f606263646667686a6b6d6e70717374767778797b6a55402b1600000000000013283d53687c93a8bdae9985827d7c7978767472706e6b6a676663625f5d5b5957556a8095abc0ac97826b56402b1601000000000000000011263b50657990a5bab09b86705b5c5f6265686b6f7274777b7d8285888b8e9194979a9da0a4a7aaa48f79644f3a251000000000000000000009141b1e1c160d000000000000000000000000000a1b2b3b4c5a5f584a3d2f211406000000000517293c4e607283838383838383838383838383796b5d504232202b3c4e5f708293a5b6a5948371604e3d2c1a09000000000000000000000000000000000000000000001b3045596e8397a9aeaa95826c57422e190500000015293e52667a8d8d8d8d8d88745f4b37220e0000000004182c4054687c90a4b8b29f8b77634f3b27130000000000000011263b5065798fa4b9bfb7a4917d6a5743301d0a00000000000006192b3e506375889badc0c1b5a18c76614d38230e00000000000000000000000d22374b5e6f7d8c9aa8ac9c8d7d6d5e4e3f2f201001000000000000091827364553627182909faebdb4a596877768594734200b000f20303e4b596674828f9dabb5a79a9195999da2a6aaaeb3b7b3afaba6a29e9a96918d836e5a45301c070000000000000000000000000000000013283d52677c93a8bdb09b866f67686a6b6c6e6f70727374767778797b7c7d80828384868788898b8c8e8f826b57412c1702000000000011273c51667b91a6bbb5a399969492908d8c8988868482807c7b78777472706e6c6a6b8297acc0ab95806b56402b160100000000000000000e23384e63788da3b8b29d88726e717477797d8284878a8d9093979a9da0a3a6a9acafb3b5b9bcbca7927c67523d28130000000000000000000000000000000000000000000000000000000000000d1d2e3c464a453a2c1f11030000000000000c1e304254656c6c6c6c6c6c6c6c6c6c6c6c6c685b4d3f3223141f30415364758798aab1a08f7d6c5a49382714010000000000000000000000000000000000000000001f34495e73888f94999f907b66523d2914000000000f23374b60727777777777776d5945311c0800000000001125394d6075899da59e968f806a55402b16000000000000000d22374c61768ba0a7a9ac9b8874614e3a271401000000000000000f213346596b7d90a3afaca89d88735e49341f0a0000000000000000000000081c2f41515f6d7c8b999d8e7d6e5f4f40302111020000000000000000091827364453627182909faebdb4a5968777634d38230e000212202d3b49566371808d9aa8b5aca7aaaeb2b6b3afaba6a29e9a96928d8985827c78746754402b17020000000000000000000000000000000011273c51667b91a7bbb19c877b7c7d80828384868788898b8c8d8f90919394959798999b9c9d9fa0a1a398836d58432e1803000000000010253a4f64798fa4b6c1b4adaba9a7a5a3a19f9c9b98979493908f8c8a88868482807d8297acc0ab95806a543f2a150000000000000000000c21364b60768ba0b5b49f8a808387898d909396999c9fa2a5a8acafb2b5b8bbbebfbcb9b6b3b0aca994806a55402b1601000000000000000000000000000000000000000000000000000000000000101e2a323431281c0e010000000000000001132537475357575757575757575757575757554b3d2f2114051224354758697a8c9eafad9b8a78675544311d080000000000000000000000000000000000000000001e33485c6e757980858a8b76614d38240f00000000081c304354606262626262625d4f3d2a16010000000000091d3145596d8295928a837a7367533f2a1500000000000000091e33485d72888f92949792806b5845311e0b00000000000000000417293b4e607386989b979390846f5a45301b06000000000000000000000000122332414f5e6c7a898f7d6f5f504131221203000000000000000000000918263544536271828f9eaead9e8e7d6f5e4b37220d000002101d2b384653616e7c8a97a5b0b3afaba7a29e9a96928d8986827c7874706b67635f584a382511000000000000000000000000000000000010253a4f647990a5bab4a192909293959697999a9c9d9fa0a1a3a4a5a7a8a9abacadafb0b1b3b4b5b7af99846e59442f1a0500000000000e23384e63788998a7b6bcbdc0bebcbab8b6b4b2b0adaca9a8a5a3a19f9d9b99979593929dafbfa9947d68543f2a140000000000000000000a1f34495e73899eb3b9a69795989b9fa2a5a8abaeb1b4b7babdc0bdbab6b3b0adaaa7a4a19e9b979491836d58432e1803000000000000000000000000000000000000000000000000000000000000000d171d1f1c150b00000000000000000000081929363f4242424242424242424242424240392d1f1103000617293a4b5d6e8091a2b4a7968573604b36210c000000000000000000000000000000000000000000192d3f505b60656a70757a715c48331e0a0000000001142636444b4c4c4c4c4c4c4a4031200e00000000000002162a3e526679857d766e675f574937241000000000000000051b3045596d77797c80828576624f3c2815020000000000000000000c1e314456687b8986827d7a776a56412c170200000000000000000000000005142331404e5c6a798070605141322313040000000000000000000000000817263544536271808f9e9e8f806f6051412f1c08000000000d1a283543505e6c7987959b9e9a96928e8986827c7874706c68635f5b57524e4a453a2c1b0800000000000000000000000000000000000e23384e63788ea3b8beafa6a5a7a8aaabacaeafb1b2b4b5b6b8b9bbbcbdbfc0bfbdbcbbb9b8b7b5b4b09b86705b46301b0600000000000c2035495b6a798998a4a7a8abadafb1b3b5b7b9bbbdbfbfbdbbb8b7b4b3b0aeacaaa8a7adbbbea9947d68533e2913000000000000000000071d32475c71879cb1c4b5abaaadb0b3b6babdc0bdbab7b4b1aeaba8a5a29f9b9895928f8c898683807c786c58432d1803000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000b19242b2c2c2c2c2c2c2c2c2c2c2c2c2c2c261c0f010000000b1d2e3f5162738596a4988b7d71604b36210c0000000000000000000000000000000000000000001022323e464b51565b60656254412e190500000000000818263136373737373737352e221303000000000000000f23374b5e707169625a534b44392b1a080000000000000000162a3d4f5c6264676a6c6f6a594633200c00000000000000000000021427394c5e7074706c6965625b4c3a27130000000000000000000000000000051322303e4d5b696e6151423223140400000000000000000000000000000817263544536170808f8f80706151423223120000000000000a172533404e5b697682878a86827c7874706c68635f5b57534e4a46423e393531281c0e0000000000000000000000000000000000000d22374c62778ca1afbdc1bbbbbcbdbfc0bfbdbcbbb9b8b7b5b4b3b1afaeadabaaa8a7a5a4a3a1a09f9d9c87715c47321c07000000000006192c3d4c5b6a79898f91939598999c9da0a2a4a6a8aaacaeb0b2b4b6b8bbbcbfbfbdbcc0c0b2a4937c67523d2813000000000000000000001b30455a6f8599aab7c4c0bfbebbb8b5b2afaca8a5a29f9c999693908d898783807c797673706d6a67645e4f3d2915000000000000000000000000000000000000000000000000000000000000000003090b0a0400000000000000000000000000000710161717171717171717171717171716120a000000000000102233445667788a9386796d615343301c080000000000000000000000000000000000000000000413212b32373c41474c504e453625120000000000000008141d21222222222222201b11040000000000000000071b2f42525d5d554e463f3830271b0d0000000000000000000e20313f494d505254575a574c3c2a170300000000000000000000000a1c2f41515d5f5b5854514d483d2e1d0b0000000000000000000000000000000412202f3d4b57595142332414050000000000000000000000000000000008172635435261708080706151423323140500000000000000071522303d4b58666c7174706c68645f5b57534e4a46423e3a35312d2925201c150b000000000000000000000000000000000000000b20364b607483919fadb4b2b1afaeacaba9a8a7a5a4a3a1a09f9d9c9b999896959392908f8d8c8b89888786725d48331e090000000000000e1f2e3d4c5b6a77797b7d80838487888b8d8f91939597999b9d9fa1a3a5a7a9acadb0b2b0a294867765513c271200000000000000000000182d42576c7d8c99a6b2afaca9a6a3a09d999793908d8a8784827d797774716e6b6864615e5b5855524f4b4031200d000000000000000000000000000000000000000000000000000000000000000c171e211f180e010000000000000000000000000000000000000000000000000000000000000000000000000004152738495a6c7d8275685c4f433525140100000000000000000000000000000000000000000000030f171d22272d32373b3a33271807000000000000000001080c0d0d0d0d0d0d0b070000000000000000000000122434414949413a332b241c140a000000000000000000000213212d35383b3d404244433b2e1e0d0000000000000000000000000012233341494a46433f3c38342b1f10000000000000000000000000000000000002111f2d3a42443e332415060000000000000000000000000000000000000817253443526170706151423324150500000000000000000004121f2d3b4852585d5f5b57534f4b46423e3a36312d2925201c1814100c07010000000000000000000000000000000000000000081d3144566472828f9d9f9d9c9a999796949391908f8d8c8b89888786848382807d7c7b797776747372706f6b5a46311c0700000000000001101f2e3d4c5a626467686b6c6f70737577797b7d80828486888a8c8f90939497989b9c9f92847568594936220e0000000000000000000014293d50606e7b89969d9a9794918e8b8885827d7b7774726f6b6865625f5c595653504c494643403d3a362e2213020000000000000000000001020000000000000000000000000000000000000e1d293236332b1f110300000000000000000000000000000000000000000000000000000000000000000000000000091a2c3d4e60707064574b3e322517080000000000000000000000000000000000000000000000000003080e13181d2326251f1609000000000000000000000000000000000000000000000000000000000000000616242e34342e261f17100801000000000000000000000000031019202325282b2d2f2e281d1000000000000000000000000000000615232e3434312e2a27231f180e01000000000000000000000000000000000000010f1d272e2f2b22150600000000000000000000000000000000000000000716253443525d5d5142332415060000000000000000000000010f1d2a363e43484a46423e3a36322d2925211c1814100c0701000000000000000000000000000000000000000000000000000215273846546270808b89888786848382807d7c7a797776747372706f6e6c6b6a686766646361605e5d5b5a584d3d2a17030000000000000001101f2e3d484d4f525356575a5c5e60626466686a6c6e70727476787a7c808284868889827366584a3b2b1907000000000000000000000e213342505d6a7785888683807b7876726f6c696663605d5a5653504d4a4744413d3b3734312e2b2825211b11040000000000000000000a121617130b0100000000000000000000000000000d1c2c3b464b483d2f211204000000000000000000000000000000000000000000000000000000000000000000000000000e1f3142525d5d5246392d21140800000000000000000000000000000000000000000000000000000000000003090e11100b0300000000000000000000000000000000000000000000000000000000000000000006121a1f1f1a120b030000000000000000000000000000000000060b0e101315181a19140b0000000000000000000000000000000005111a1f1f1c1915120e0b05000000000000000000000000000000000000000000000b14191a160f040000000000000000000000000000000000000000000007162534414949413324150600000000000000000000000000000c19232a2e3334322d2925211d1914100c0802000000000000000000000000000000000000000000000000000000000000000a1a28364452616f747372706f6e6c6b6a6867666463615f5e5c5b5a585756545352504f4e4c4b49484645433b2f1f0d00000000000000000001101f2b34383a3c3e40424447484b4c4f51535557595b5d5f616366676a6b6e707274726456483a2c1d0d0000000000000000000000041524323f4c5a677373706d6a6763605d5a5754514e4b4844413e3b3835322f2c2825221f1c191613100d07000000000000000000000f1c262c2c271e12050000000000000000000000000c1b2b3a4a59605b4d3f30221405000000000000000000000000000000000000000000000000000000000000000000000000021324344149494135281c0f0300000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000716242e34342e23150600000000000000000000000000000000070f151a1e1f1d1914100c0802000000000000000000000000000000000000000000000000000000000000000000000000000a18263442515d5f5e5c5b5a585756545352504f4d4c4b494746444342403f3e3c3b3a383736343331302e281e110100000000000000000000010e181f232527292b2d2f323336383a3c3e40424446484a4c4e50525457585b5c5f5e5446382a1c0e000000000000000000000000000614212f3c49565f5e5b5854524e4b4845423f3c3936332f2c292623201d1a1714100d0a070000000000000000000000000000000c1d2d3940413b3023160a000000000000000000000a1a2a39495867756b5d4e40322315060000000000000000000000000000000000000000000000000000000000000000000000000616242e34342e24170b0000000000000000000000000000000000000000000000000000000000000000000000000005111a1f1f1f1f1f1f1f1f1a120600000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000020911181e1f1e18130e07000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000006121a1f1f1a110500000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000916243240484a494746444342403f3e3c3b3a3837353432312f2e2d2b2a292726252322201f1e1c1b19140c0000000000000000000000000000050b0e10121416181a1c1e20232427282b2d2f31333537393b3d3f414346474a494236281a0c00000000000000000000000000000004111e2b38444a494643403d393633302d2a2724211e1a1714110e0b0802000000000000000000000000000000000000000008192a3b4b55564d4134271b0e01000000000000000919283847576676867b6c5e50413324140200000000000000000000000000000000000000000000000000000000000000000000000006121a1f1f1a1106000000000000000000000000000000000000000000000000000000000000000000000000000515232e34343434343434342e24160600000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000070f161d242c3234322d28221a0e0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000615222d33343432312f2e2c2b2a292726242322201f1d1c1a191816151312110f0e0d0b0a070000000000000000000000000000000000000000000000000000000005090b0d0f111416181a1c1e20222426282a2c2e303234342f25180a0000000000000000000000000000000000000d1b27303434312e2b2824211e1b1815120f0c09040000000000000000000000000000000000000000000000000000041526374859686a5e5245392c1f13060000000000081827374656657585958b7c6e5f5142321f0b00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000011233341494a4a4a4a4a4a494134241200000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000050d141b232a313940474a47413c362c1e0e0000000000000000000000000000000000000000000000000000000000000000000000050c0f0f0f0f0f0f0f0c050000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000010406090b0e101316181b1b160e030000000000000000000000000000000000000000000000000000000000000511191e1f1f1d1c1a191716151312110f0e0c0b0a06000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000004090b0d0f11131517191b1d1f1f1b1308000000000000000000000000000000000000000009141c1f1f1c1916130f0c0905000000000000000000000000000000000000000000000000000000000000000000112233445566767c6f63564a3d3024170a00000007172636455564748494a39b8d7d6f604e3b2611000000000000000000000004090b0904000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000002090d0e0e0e0e0e0e0d09020000000000001a2e41515d5f5f5f5f5f5f5d52422f1b07000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000040b121921282f363e454c545b5f5b5651493c2c1c0c0000000000000000000000000000000000000000000000000000000000000000000c18202425252525252421180d0000000000000000000000000000000000000000000000000000000000000000000000000000000000010406090b0e111316191b1e202326282b2d30302b2114060000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000c1d2e3f506172848e8274675b4e4135281b0f0206162535445463738393a2b2aa9c8e7d68533e2913000000000000000000070f181e211e170d00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000009151e23232323232323231e150900000000001f34495d70747474747474705e4a35200b000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000010910171f262d353c434b525960686f74706b655a4a3a2a1a0a000000000000000000000000000000000000000000000000000000000000000c1c2a34393a3a3a3a3a3a352b1d0d0000000000000000000000000000000000000000000000000000000000000000010406090c0e111316191b1e202326282b2e303336383b3d404345453e322416080000000000000009141a1d1b1a17161412100e0d0b0907050302000000000000000000000000000000000000000000000000000000000000000000000000010406090b0e0f0f0a0200000000000000000000000000000000000000000000000000040a0e0e0a03000000000000000000000000000000000000000000000000000000000000000003070b0e1215181917150f070000000000000000000000000000000000000000020e161b1b1b1b1b1b1b1710050000000000172a3b4c5d6e80909f9286786c5f5246392d2013152434435362728291a1b1ae9e8f8070604e3a26110000000000000009111a232b3336332a1e0f0000000000000000000000000000000000000000000000000000000000000000000000000000000000000008182631383838383838383831261808000000001f344a5f73898b8b8b8b8b76604b36210c00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000070e161d242b333a414850575e666d747c838a85807868584838281707000000000000000000000000000000000000000000000000000000000005182a3a474e4f4f4f4f4f4f483b2b18050000000000000000000000000000000000000000000000000000070c0e111416191b1e212326282b2e303336383b3d404345484b4d505255585a5a4f423426180a00000000000c1b272f32302f2c2b2927252322201e1c1a18171513110f0e0c0a080604020100000000000000000000000000000000000000000000091116191b1e202325241e150900000000000000000000000000000000000000000000000b171f23231e17100902000000000000000000000000000000000000000000000002060a0d1115181c2023272a2e2e2c29221b130b03000000000000000000000000000000000313202a303030303030302b221506000000001d3246596a7b8c9daea3978a7d7064574a3e31252333425261718290a0afaf9f908070615142311e0b00000000000b141c252d363f474b473c2d1b09000000000000000000000000000000000000000000000000000000000000000000000000000000000000132536444c4e4e4e4e4e4e4c44362513000000001e33485d72889da0a0a08d77624c38230d00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000050c141b222931383f474e555d646b7279828990979f9a94867666554535251505000000000000000000000000000000000000000000000000000000000f2235475863646464646464594835220f00000000000000000000000000000000000000000000000005111b212326282b2e303336383b3e404345484b4d505355585a5d606265676a6c6f6d6052443628190900000007192a384347464442403e3c3b38373533312f2e2c2a28262423211f1d1b1a17161412100e0d0b0907050302000000000000000000000f1b252b2e303335383a39322718080000000000000000000000000000000000000000000b1b29333838322b241d160f080000000000000000000000000000000105090c1014171b1f22262a2d3134383c3f4343423e362e261e170e0600000000000000000000000000000f21313d454646464646453f332413000000001f344a5f7486929facb4a79b8f8275685c4f42363242516170808f9faeb0a09182716152433323130200000000101d273038414a525b60594a3925120000000000000000000000000000000000000000000000000000000000000000000000000000000000001b2f4354616363636363636154432f1b070000001c32475c70879cb1b5a48f78634e39240f00000000000000000000000000000000000000000000000000000000000000000000000000000000000000030a121920282f363e454c535b6269707780878e959ca4abb2aea494847363534333231303000000000000000000000000000000000000000000000000000005182b3e51647679797979797764513e2b1805000000000000000000000000000000000000000000000414232e36383b3e404346484b4d505355585a5d606265686a6d6f727477797c8083867d7061544637261400000011243748565c5b5957555352504e4c4a48474443413f3d3b3a38363432302f2c2b2927252322201e1c1a18171513110f09010000000c1d2d39404345484a4d4f4d44362513000000000000000000000000000000000000000008192939464d4d463f38312a231b0f01000000000000000000050b0f13161a1e2125282c3033373b3f4246494d5154585857524a423a322a221a120a030000000000000000000000192c3e4f595b5b5b5b5b5a5142301c080000001d3145586774828e9aa7b4ac9f9386796d6053474150606f808f9eaeb1a292837263534434251506000000000d1e2e3a434c545d666e766854412e1b0700000000000000000000000000000000000000000000000000000000000000000000000000000000001f34495e72787878787878725e49341f0a0000001b30455a6f869bb0bba59079644f3a251000000000000000000000000000000000000000000000000000000000000000000000000000000000000810171e262d343b434a515960676f767d858c939ba2a9b1b8bab7bab2a29282716151413121110100000000000000000000000000000000000000000000000000102235485b6e829090909090826e5a4734210e00000000000000000000000000000000000000000000102232414a4d505355585b5d606365686a6d6f727477797c808386888b8d909295979a8f8071645543301b0000071a2d40536672706e6c6a68676463615f5e5c5a58565452504f4d4b4947464442403e3c3b38373533312f2e2c2a2826241d13050000172a3b4a55585a5d5f62646154422f1b0600000000000000000000000000000000000004152636475762615a534c453e372d1f0e00000000000000010f192024282b2f32363a3d4145484c5053575b5e6266696d6e6c655d564e463e362e261e160e060000000000000000001e33485c6d70707070706f5f4b37220d00000016293b4a5663707c8996a2afb1a4978b7d7164584f5f6e7d8e9eadb2a3938473645445352616070000000000172a3c4c575f6870798285715d4a37231000000000000000000000000000000000000000000000000000000a1114140f070000000000000000001f344a5f748b8f8f8f8f8b745f4b35200b0000001a2f44596e8499afbca7917b66513c271100000000000000000000000000000000000000000000000000000000000000000000000000000004111c242b323a414850575e656d747b838a9299a0a7afb6bbb4ada6a1a7b5b0a090806f5f4f3f2f1f0f00000000000000000000000000000000000000000000000006192c3f5164778b9ea5a5a59e8a7764503d2a170400000000000000000000000000000000000000000b1d2e3f505e6365686a6d70727577797c808386888b8d909295979a9d9fa2a5a7aaacac9e9082735e49341f00001023374a5d7083868482807d7c7978767473706f6d6b6a67666462605e5c5b5957555352504e4c4a48474443413f3d3b3830231403001d324659686d6f72747779725e49341f0a00000000000000000000000000000000000112223344546575756e676059524a3d2c1a06000000000001111f2c34393d4044474b4f52565a5d6165686c7073777a7d838482797169615a514a423a322a221a120a020000000000001f344a5f74878787878778634e38230e0000000c1d2c3945525e6b7885919eabb5a89c8f8275695e6d7d8d9cacb3a4948574655546362717080000000000001d32465a6a737b848d958d796653402c1905000000000000000000000000000000000000000000000002101c252a29231a1107000000000000001f344a5f73899fa4a4a18c76604b36210b000000182e43586d8398adbda8937c67523d281300000000000000000000000000000000000000000000000000000000000000000000000000000112222f383f464e555c636a727982888f979ea5adb4bbb5aea7a099928c98a8b8ae9e8e7d6d5d4d3d2d1d0d0000000000000000000000000000000000000000000000102336495c6e8295a8bbbbbaa794806d5a4633200d000000000000000000000000000000000000000617293a4c5d6e77797c808386888b8d909395979a9d9fa2a5a7aaacafb2b4b7babcbdc1bcaea08b745f4a341f00071a2d405366798d9b9997959391908e8c8b8887858382807c7b7977767372706e6c6a68676463615f5e5c5a58565452504d4132210e001f344a5f748386888a8d8b76604c37210c00000000000000000000000000000000000e1f2f40516172838a837b746d665b4936210d0000000001101f2f3d484e5155595c6064676b6f7276797d8286888c90949799958d867d756d655d554e463e362e261e140800000000001f344a5f748b9c9c9c8f78634e38230e000000000e1b2734414d5a6773808d9aa6b3ada093877a6d7c8c9babb4a595867566564737281809000000000000001f344a5f74868f98a0a996836f5c4835220e00000000000000000000000000000000000000000000000f202e393f3e362d241a110800000000001e33485e73899fb3b7a28d77624c37220d000000172c41566b8297acbfa9947d68533f291400000000000000000000000000000000000000000000000000000000000000000000000000000b1e30404c535a6169707780868e959ca3abb2b9b5afa7a19a938c857d798a9aaabaac9c8c7b6b5b4b3b2b1b0a000000000000000000000000000000000000000000071a2c3f5265788c9eb1c4d0c3b09d8a7663503c2916030000000000000000000000000000000000001224354758697a8c909395989a9da0a2a5a7aaacafb2b4b7babcbbb9b6b3b0aeaba8a8b1c0b49f8a745f4a341f00102336495c6f8396a9aeacaba8a7a5a3a19f9d9c9a98969493908f8d8b8988868482807d7c7978767473706f6d6b6a67665f503d2915001e33485d72889a9d9fa28e78634e39240f000000000000000000000000000000000b1b2c3d4d5e6f80909e978f898279644f3a240f00000000101f2e3d4d5b63666a6e7175787c8084888b8f93969a9da1a5a8acaea9a1999189827971696159514a413a31261706000000001f344a5f748ba0b1a48f78634e38230e00000000000a1623303c4956626f7c8995a2aeb1a5988b7d8b9aaab5a69687776758483829190a00000000000000001c3145596c8093a6b3b29f8c7764513e2a1704000000000000000000000000000000000000000000071a2c3e4c54524940372e241b12070000001d32475c72889db3b8a38d77624d38230e000000162b40556a8095abc0ab95806a55402b16000000000000000000000000000000000000000000000000000000000000000000000000000014283b4e5e676e757c858c939aa2a9b0b7b6afa8a19a938d867d7770696b7c8d9dadbaa9998979695948382818080000000000000000000000000000000000000000102336495c6f8295a8bbcac8ccb9a693806c5946321f0c0000000000000000000000000000000000001a2e415364758798a5a7aaadafb2b4b7babcbdbab7b4b2afaca9a7a4a19e9b99969393a2b6b49f89735e48331e00192c3f5266798c9fb2c3c1c0bdbcbab8b6b4b3b1afadaba9a8a5a4a2a09f9c9b9997959391908e8c8b8887858382807c7b6d58432e18001b30455a6f869aafb4a5907b66513c2712000000000000000000000000000000071828394a5a6b7c8d9eaeaba49d9079644f3a250f0000000b1d2e3d4c5b6b777b8083878a8e9295999ca0a4a7abafb2b6b3afacabb1b5ada59d958d857d756d655d554d44352411000000001f344a5f748ba0b5a48f78634e38230e00000000000005121f2b3845515e6b7784919eaab6a99c9299a9b7a79888786859493a2a1b0b00000000000000000016293d5063768a9eb1bba895826d5a4733200d000000000000000000000000000000000000000000102336495c68665c534a41372e24170800001d32475c71879cb1b9a48f78634e38230e000000142a3f54687d94a9bfac97826b56412c1702000000000000000000000000000000000000000000000000000000000000000000000000081c3043576a7b838a9198a0a7aeb5b7b0a9a29b948d868078716a635c555e6e7d8f9fafb7a797877666564636261606000000000000000000000000000000000000071a2d405366798c9fb2c0b6b3b8c2af9c8975614e3b28150200000000000000000000000000000000001f34495d708293a5b6bcbfbbb8b5b3b0adaba8a5a29f9c9a9794918f8c898784827d889db3b49f89735e48331e001e33485c6f8296a9bccfd7d5c8bbb3b3b5b7b8babcbec0bfbdbbb9b7b5b4b2b0aeacaba8a7a5a3a19f9d9c9a98969493836c58432d1800192e43586d8397acbda8937d68533f291400000000000000000000000000000414253646576878899aabbbbfb8a59079644f3a250f00000013273a4c5b6a798a9094989b9fa3a7aaaeb2b5b4b0ada9a5a29e9a97969da5adb5b1a9a1999189827971696153412d19040000001f344a5f748ba0b5a48f78634e38230e00000000000000010e1a2734404d596673808d99a6b2aea7abb7a8998979695a4a3b2b1c0c000000000000000000000d2034475a6d8295a8bbb19d8a76634f3c2915020000000000000000000000000000000000000006192c405366797970665d544a4135261402001b30465b70879cb1b9a48f79644f3a250f00000013283d52677c93a8bdad98836c58432d18030000000000000000000000000000000000000000000000000000000000000000000000001124384c5f7387969ea5acb4b8b1aaa39c958e878079726b645d564f48415060708291a1b2b5a5958574645444342414040000000000000000000000000000000000112437495c6f8396a8bbb1a29ea6b6b8a5927d6b5744311e0b00000000000000000000000000000000001f34495d72889cb1c2b7aba6a3a09e9b989593908d8b888582807c797673716e6b72889db3b49f89735e48331e001f344a5f738494a3b2c2d1cebbaa9f9ea0a1a3a5a7a9abacaeb0b2b4b5b7b9bbbdbfc0bdbcbab8b6b4b3b1afadaba995806b56402b1600162b40556a8095aabfab96826b56412c170200000000000000000000000000112132435364758697a7b8c8d0bba59079644f3a250f000000182d42566a798998a5a9adb0b4b5b1aeaaa6a39f9b9894908d89868282899199a1a9b1b4ada59d958d857c705c47321c070000001f344a5f748ba0b5a48f78634e38230e0000000000000000000916222f3c4855616e7b8895a4b7bcbfb39e8a7a6a5b4c4033271a0d0100000000000000000004172b3e5165788c9fb2b9a693806c5845311e0b000000000000000000000000000000000000000f2336495c6f838c837970675e5344311e0a001b30455a6f869bb0bba5907964503b251000000012273c51667b91a7bcaf99846e59442f1a04000000000000000000000000000000000000000000000000000000000000000000000000192c4054677b8fa2b2b9b2aaa49c968f888279726c655e575049423b3432425262738394a4b4b3a393837262524232221202000000000000000000000000000000071a2d405366798c9fb2b9a6938999acbfae9b8874614d3a271401000000000000000000000000000000001b2f44596e8498adbfab99918e8c898683807d7a7774726f6c6a6764615f5c595c72889db3b49f89735e48331e001c30445665758594a4b3c2c8b39f8c898b8c8f9092949597999b9d9fa0a2a4a6a8a9acadafb1b3b4b7b8babcbebea9947d68543f2a140013283d53687c92a7bcad98846e59442f1a040000000000000000000000000d1e2f3f5061718293a3b4c5d6d0bba59079644f3a250f0000001a2f445a6f8598a7b6b0aba7a4a09c9995918e8a8783807b7774706c6d757d868d969ea6aeb5b1a9a095826d5a45311c060000001f344a5f748ba0b5a48f78634e38230e0000000000000000000005111e2b3744515d6a76889db3c4c1b5a19084766a5e5144382b1f12050000000000000000000f2235495c6f8396aabdaf9b8874614e3a2714100d0906020000000000000000000000000005182b3e5265788c9f968d847a71614d38230e001a2f445a6f8599afbca7917b66503b261100000010253b50647990a5bbb09b866f5a45301b060000000000000000000000000000000000000000000000000000000000000000000000001e33485c6f8397abbeb3a1978f89827a736c655e58504a433c352e27202434455565758696a6b7b1a09080706050403020100000000000000000000000000000001124374a5d708396a9bcb09d8a7c90a3b6b7a4907d6a5643301d0a00000000000000000000000000000000172c40556a8094a9bca7917c787673706e6b686563605d5a5754524f4c4a47475c72889db3b49f89735e48331e00142738475766758695a5b4c3b4a08f80747778797c7d8083848688898b8d8f91939497989a9c9da0a1a3a5a7a8aba7917c67523c27120011263b50657990a5bab09b86705b46311c0700000000000000000000000a1b2b3c4d5d6e808fa0b1c1d1d6d0bba59079644f3a250f0000071c32475c71879cb1ae9e96938f8b8884807c7875716d6a66635f5b585a616a7279828a929aa2aab2a08d7965513e2b16020000001f344a5f748ba0b5a48f78634e38230e000000000000000000000008182737465665758595a5b7afacb2aea195887b6f6255493c3023170a000000000000000006192c4053667a8da1b4b8a4917d6a5643302825211e1a1713100c090502000000000000000e2134485b6e8295a8a9a0978b77644f3a240f00192e43586e8499afbca7927c67523c27120000000f24394e63788fa4b9b19c87705c47321c110f0e0d0b0a090706050302010000000000000000000000000000000000000000000000001f344a5f74889badc0ad98837b746d665f58514b433d362e28211a130c172737475768788999a9b9ae9e8f7d6e5e4e3e2e1d0d00000000000000000000000000081b2e415366798da0b3b9a6938073879aadc0ad9a8673604c3926130000000000000000000000000000000013273c51667b90a5baaa95806b615e5b585653504d4b484542403d3a373432475c72889db3b49f89735e48331e00091a2939485867768796a5b5bdad9e8e7d6f636567686b6c6e7072747677797b7c8082838687888b8c8e9091949597907964503b2510000e23384d63778da2b7b39e89735e49341f0a0000000000000000000006172838495a6a7b8c9dadbebebcc2cdbba59079644f3a250f00000a1f34495e73899eb3a692827d7976726f6b686c70746f675f574e4d59646f7a867a6e767d868e969e9884705d4936220f000000001f344a5f748ba0b5a48f78634e38230e0000000000000000000007172636455564748494a3b3ad9d97a1adb2a6998d8073675a4d4134281b0e02000000000000001024374a5d718598abbfad9a86725f4c413d3a36332f2c2825211e1a1713100c09050004172b3e5164778b9eb1bba895826e5b4835210c00182d42576c8398adbda8937c67523d28130000000e23384d62778da3b8b39d88725d48332726252322211f1e1d1b1a191716151312110f0e0d0b0a0807060403020000000000000000001c3145586a7d90a3b6b19e8c786659524b443d362f29211b140d060000091929394a5a6a7a8b9bacbcad9c8c7c6c5c4c3b2a18050000000000000000000000001124374a5d708396a9bcaf9c89766a7d91a4b7b6a3907c6956422f1c090000000000000000000000000000000e23384d62778ca1b6ae99856f5a494644413e3b383633302d2b2825222032475c72889db3b49f89735e48331e00000b1b2a3a495868778797a6b6bcac9d8d7d6e5e52535657595b5c5f60626466686a6b6d6f7073747678797c7d80828478634e38230e000c21364b60758ba0b4b5a08b76604c37210c00000000000000000003142435455667778999aabbb5aaa7afbebba59079644f3a250f00000c21364b60768ba0b5a48f796865615d5b6a7a828689837a726a625f6b76828d988c82756a727a838a8f7b6854412d1a06000000001f344a5f748ba0b5a48f78634e38230e00000000000000000006152534445463738392a2b2ae9e8f83909ca9b6aa9e9185776b5e5245392c201306000000000000081b2e4155687b8fa2b6b6a28f7b685956524f4b4844413d3a36332f2c2825211e19120d2134475a6d8294a7bbb29f8c7865523f2b180500172c42576c8397acbfa9947d68533e29130000000c21364b60768ca1b7b49f89735f4a3c3c3b3a383736343332302f2e2c2b2a282726242322201f1e1c1b1a181715110800000000000015283b4e60738699acbba895836f5d4a373029221b140d0700000000060e161e2c3c4c5d6d7d8e9eaebaaa9a8a7969594734200b0000000000000000000000081b2e4154677a8da0b3b8a693806c6174889baebfac9986725f4c3825120000000000000000000000000000000b1f34495e73889db2b29e89735f4a352f2c292623211e1b181513100d1d32475c72889db3b49f89735e48331e0000000c1c2b3a4a5969788898a7b6bbab9c8d7c6d5e4e40424446474a4b4d4f50535456585a5c5e5f61636567686a6c6e6d5d4a35200c00091e33485d72889db2b8a38e78634e39240f000000000000000000102131425363748596a6b7b8a79792a0b3bba59079644f3a250f00000e23384e63788da3b7a28d7762504c5a697989969a9e978f867d766e7d88949fa99e93877b70666f767d73604c38251100000000001f344a5f748ba0b5a48f78634e38230e000000000000000005142433435262718291a1b0ae9f8f80717d8b98a5b1afa296897c7063564a3d312417090000000000001225394c5f73869aadbfab9885726e6b6764605d5956524f4b4844413d3936322e25182a3d5063768a9eb1bca996836f5c4936230f0000162b40566b8297acbfa994806a543f2a150000000b20354a5f748ba0b5b5a08b75604b5152504f4e4c4b4a484746444342403f3e3c3b3a383736343332302f2d2c2a251b0e00000000000c1e314457697c8fa2b5b29f8d796754412f1c0e0700000000030b131a222a31394148505f6f8090a1b4b8a8988877634d38230e00000000000000000000001225384b5d708497aabdaf9c897663586b7d92a5b8b5a28f7b6754412e1b080000000000000000000000000000061b30455a6f8499adb6a28d78634e39251714110e0c090400000000001d32475c72889db3b49f89735e48331e000000000d1c2c3b4b5a69798998a8b7baab9b8c7c6c5d4d3e2f30323436383a3b3e3f41434447484a4c4e505253555759594f402e1b0700041b30465b70869bafbba5907b66513c271200000000000000000d1d2e3e4f60708292a3b3bbaa9a89869bb0bba59079644f3a250f000010263b50657990a5b49f8b745f4b5968788898a7afb2aaa29a928a827c93a6b1bbb0a5998e82766b636a675744301d0f04000000001f344a5f748ba0b5a48f78634e38230e0000000000000004142332425161708290a0afafa0908270616d7a8793a0adb3a79a8e8274685b4e42352717060000000000091d3043566a7d91a4b8b4a08f8784807c7875726e6b6764605d5956524e4b474136273346596c8093a6b9b3a08d796653402d19060000162b40556a8095abc0ab95806a54402b15000000091f34495e73899fb4b7a18c76615a666766646362605f5e5c5b5a585756545352504f4d4c4b4a4847454443413f382c1d0d000000000214273a4d5f728598abbca99784715e4c392613010000080f171f272e363e454d545c646b737b869bb0c5b49f8a75604c37220d00000000000000000000091b2e4154677a8da0b3b8a592806c594e6275899cafbeab9885715d4a372411000000000000000000000000000000172c41556a8095aabba6917c67523e291400000000000000000000001d32475c72889db3b49f89735e48331e00000000000e1d2d3c4b5b6a7a8a99a9b8b9aa9a8b7b6b5c4d3d2e1f1f21232526282a2c2e2f32333537383b3c3e404244443d312211000000192e43586d8398adbda8937d68533f291400000000000000091a2a3b4c5c6d7d8f9fb0bfae9e8d7c869bb0bba59079644f3a250f000013283d52677c92a7b29d88725d5868778797a6b6ada9afb6aea69e958e97aabfc8c0b6ab9f94897d71665a4f44382d2114040000001f344a5f748ba0a0a08f78634e38230e0000000000000011223241516070808f9faeb0a191827162525c6975828f9ca8b5ac9f9286796c5f534535231000000000000014273a4e6174889bafbdada19c9995928e8b8784807c7875726e6b6763605c5445333c4f6376899cafbdaa9784705d4a372310000000152a3f546a8095aabfac97826b56402b16010000061d32475c72889db3b8a38d776363777c7b79787776747372706f6e6c6b69686765646361605f5d5c5a595856544a3b2b1b0b000000000a1d304355687a8ea0b3b3a18e7b685643301d0b0c141c232b333a424a51596168707780888f97a3b5c3af9a86705c47321e09000000000000000000001326394b5e718598aabdae9c8975624f46596c8093a6b9b4a18d7a6753402d1a07000000000000000000000000000013283d52667b90a5baaa96826b57422d1803000000000000000000001d32475c72889db3b49f89735e48331e0000000000000f1e2d3d4c5c6b7a8b9aa9b9b8a99a8a7a6b5b4c3d2d1e0e0e0f11131517191a1c1e2022232627292b2d2f2f2a201304000000162b40566b8095aabfab96826b56412c170200000000000616273848596a7a8c9cadbdb1a190806f869bb0bba59079644f3a250f0000152a3f54697d94a9b09b86705b67768696a5b5aa9b949ba3abb3b1a9a3a8b5c7b7acaab1b1a69b8f84786d61564a3f32210f0000001f344a5f748b8b8b8b8b78634e38230e000000000000081c2f40505f6f7d8f9eaeb1a29283726353444b5864717d8b97a4b0b0a3978a7d7063533f2b160000000000000b1e3145586b8092a6b9bdb5b1aeaaa7a3a09c9895918e8b8784807c787571624e3a45596c8092a6b9b4a18e7a6754412d1a0700000013293e53687d94a9bfac97826c57422c17020000001c31465b70879cb1b9a48f796464798f918f8e8d8b8a888786848382807d7d7b7a797776757372706f6e6c6b67594939281808000000001326394b5e708496a9bcab988572604d3a271820282f373f464e565d656d757c848c939ba3aab3b8b0a895826b57422d1904000000000000000000091c2f4255687a8ea1b4b8a592806c59463d5063768a9db0bdaa9783705d4936231000000000000000000000000000000f24394d62778ca1b6ae9a85705b46311c07000000000000000000001d32475c72889db3b49f89735e48331e000000000000000f1f2e3e4d5d6c7b8c9baabab8a89989796a5a4b3c2c1d0e0000000000000004090b0d0e10121416181a1a160e030000000014293e53687c93a8bdad98846e59442f1a040000000002132334455566778898a9bab5a49483726f869bb0bba59079644f3a250f0000172c41576b8297acae99846e66758695a4b4aa9b8c80889098a0a8b0b8bbc5bda999959faab6aca1968a7d73675c503f2c180500001f34495d70747474747472614c38230d0000000000000e23384c5e6e7d8e9dadb2a3938473645545363a4753606d7986939facb5a89b8f826e58432e190000000000000215283c4f63768a9db0c4c9c6c2bfbbb8b4b1adaaa6a39f9c9895918e8a7965503b4e6175899cafbeab9885715e4b3724110000000013283e53687c93a8bdad98836c57422d18030000001b30455a6f869bb0bba5907a66667b91a6a4a3a2a09f9d9c9b99989795949391908f8d8c8b898887868483827767564636261605000000091b2e415466798c9fb2b5a28f7c695744312b343b434b535a626a717982899098a0a7afb7b5ada59c958c7b66523d2914000000000000000000001326394c5f728598abbeae9b8875614f3c33475a6d8094a7bab3a08d7966533f2c1905000000000000000000000000000b2034495e73889db2b39e89745f4a35200c000000000000000000001d32475c72889db3b49f89735e48331e000000000000000110202f3f4e5d6d7c8c9cabbbb7a7988978695a4a3b2c1c0d0000000000000000000000000000000000000000000000000011263b50657a90a5bab09b86705b46311c07000000000f2030415262738495a6b6b8a8978775656f869bb0bba59079644f3a250f0000192f44586e8499aeab97826b708594a3b3ab9c8d7c6d737c848c949ca4acb5b9a48f828d98a4afb3a79c9185796e5b4835210e00001a2e41515d5f5f5f5f5f5e5444311e0900000000000011263b50667b8c9aa8b4a495857565564637272936424f5b6875828f9ba7aa9988766553402b17000000000000000d2033465a6d8294a8bbcec8bab0afb3b6babebfbbb8b4b1adaaa6a08b76614c44576b7d92a5b8b5a28f7b6854412e1b080000000012273c52677c93a8bdaf99846e58432e1903000000192e43586e8499aebca7917c67677c92a7b9b8b7b5b4b3b1b0afadacaba9a8a7a5a4a3a1a09f9d9c9b9998958574645444342210000000001224374a5c6f8295a8bbac998773614e3b3c4750575f666e767d868d959ca4acb3bbb2aaa29a9289827870604d38240f0000000000000000000a1d304355687b8fa2b5b7a4927d6b5845322a3d5064778a9eb1bca996836f5c4835220f00000000000000000000000000071c31455a6f8499aeb7a28d78634e392510000000000000000000001d32475c72889db3b49f89735e48331e0000000000000000021121303f4f5e6e7d8d9dacbbb6a797887868594a3a2b1b0c0000000000000000000000000000000000000000000000000e23384e63788da3b8b39e89735e49341f0a0000000c1c2d3e4e5f708291a2b3bcac9b8a79685a6f869bb0bba59079644f3a250f00041c31465b70869bb0a9947d6974899eb2ac9c8d7d6e5e6068707880899099a5b7a590797b87929ea9b4aea2978b7764513e2a17040011233341494a4a4a4a4a4943362615020000000000000f24384c5e6e7c8a98a59686766657473828191824313e4a5763707d8a979e8d7b6a59483624100000000000000004172a3e5164778b9fb2c5bcaa9c9a9ea2a5a9acb0b4b7bbbfbfb19c88725d494e6174889baebfac9986725f4c392512000000000011263b50667b91a7bcaf99856f5a442f1a05000000182d42576c8398adbda8937d68687d94a8b1b3b4b5b7b8b9bbbcbdbfc0bfbdbcbbb9b8b7b5b4b3b1b0afada393837262523f2b1700000000081a2d405365788b9eb1b6a3917d6b58464a5a636b727a828a9299a1a9b0b8b8b0a79f978f867d756d645c5243311d090000000000000000011326394c5f728598abbeae9b8875614e3b282134475b6e8295a8bbb29f8c7764513e2b180500000000000000000000000000182c41566b8095aabba6917c67523e2914000000000000000000001d32475c72889db3b49f89735e48331e0000000000000000000312213140505f6e7d8e9dadbcb5a6978777675849392a1b0b00000000000000000000000000000000000000000000000c21364b60758ba0b5b5a08b76604c37210c000008192a3a4b5c6c7d8e9fafc0af9e8e7d6c5b5a6f869bb0bba59079644f3a250f00091e33485d72889db2a7927c67778da2b7a48f7d6e5f504c545c646c757c889cb1a7917c6974808c97a2aeb4a894826d5a47331f0a000515232e343434343434342f25180900000000000000091d2f40505e6c7a8896877767584839291a0a0713202c3946525f6c788591806e5d4c3b2a190700000000000000000e2135485c6f8396a9bcb7a28d86898d9094979b9fa2a6aaadae99846f5a45576a7d91a4b7b6a3907c6956432f1c09000000000011263b50667a90a5bbb09b866f5a45301b05000000162c40566b8297acbfa994806a6a80959b9c9d9fa0a1a3a4a5a7a8a9abacadafb0b1b3b4b5b7b8b9bbbfc1b1a190806f5a45301b0000000000102336495b6e8294a6b9ae9b8875624f52677780878f969ea5adb5bcb5ada49c948c837a726a61595149403425140100000000000000000a1d304356697c8fa2b5b7a4917d6a5745321f182b3e5165788c9fb2bba895826d5a4734210e0000000000000000000000000013283d52677b91a6bbaa96826b57422d18030000000000000000001d32475c72889db3b49f89735e48331e00000000000000000000031322324150606f808f9eaebdb4a596867667574839291a0a00000000000000000000000000000000000000000000091e33485e73889db2b8a38e78634e39240f0005152637485869798b9bacbcb2a291806f5f4e5a6f869bb0bba59079644f3a250f000b20354a5f748a9fb4a59079667a8da0b3a794826d5a4739414951596170869bb0a8947d68626e7985909dadb19d8a76614c37220d000005111a1f1f1f1f1f1f1f1b1308000000000000000000122232404e5c6a7887786859493a2a1b0b0000020f1b2835414e5b677482736151402e1d0c00000000000000000005192c3f5366798da0b3b9a5927d74777b8083878a8d9195989c95806b564d6073879aadc0ad9a8673604d3926130000000000000f253a4f647990a5bab19c87705b46301b06000000152a3f546a8095aabfab95806b6b8284868788898b8c8d8f90919394959798999b9c9d9fa0a1a3a4a5abb9bfae9b86705b46301b000000000006192b3e5164768a9cafb8a592806c595165788c9ba2aab1b9bab2aaa299918980776f675f564e463d352d23160700000000000000000114273a4d60728699acbfad9a8874614e3b28150f2235495c6f8396a9bcb19e8a7763503d2a17040000000000000000000000000f24394e63778da2b6ae9a85705b46311c070000000000000000001d32475c72889db3b49f89735e48331e00000000000000000000000413233242516170808f9eaebdb4a49586756657473828190a000000000000000000000000000000000000000000051c31465b70869bb0bba5907b66513c271201122333445565768798a8b9b6a59584736251445a6f869bb0bba59079644f3a250f000d22374c62778ca1b7a28d7763708497aab19e8a7764513e2d353d45596e8499afab95806a555c67737d92a7b39f8a745f4b36210c000000000000000000000000000000000000000000000000041322303e4c5a68746a5a4a3b2b1c0c00000000000a1724303d4a56636d66554433221100000000000000000000001023364a5d708498abbeae9b887362666a6d7174787c8084878b7c675256697c90a3b6b7a4907d6a5643301d0a0000000000000f24394e63788fa4b9b19c87725c47321d0700000014293e53687d94a9beac97826c636c6e6f70727374767778797b7c7d80828384868788898b8c8d8f909baec2ad98836e58432e190000000000000f2134475a6c8092a5b8af9c897663515c6f8396a9bcb7afa79f968e867d756c645c534b433b322a221911060000000000000000000b1e304356697c8fa2b5b6a3907d6a5744311e0b06192c3f5366798da0b3baa793806d594633200d0000000000000000000000000b20354a5f73899eb2b39e89745f4a35210c0000000000000000001d32475c72889db3b49f89735e48331e000000000000000000000000041423324251617080909faebeb3a394857465564637281809000000000000000000000000000000000000000000192e43586d8398adbda8937d68533f29140e1f30405162728394a5b5baa9988876665544445a6f869bb0bba59079644f3a250f000f243a4f64798fa4b5a08b7560677a8da0b3a794826d5a4734313842576c8398adac97836c574a556a8094a9af9b86705c47321d08000000000000000000000000000000000000000000000000000412202e3c4a585f5a4c3c2d1d0d0000000000000006131f2c384551585448372615040000000000000000000000071a2e4154677b8fa2b5b7a3907c695655585c6063676b6e727575634e5f728699acbfae9b8874604d3a2714010000000000000e23384e63788ea3b8b39d88725c47321d0800000012273c52677c93a7bcad98836e5857585a5b5c5e5f606263646667686a6b6d6e70717274757778798095abc0ab97826b56412c1700000000000005182a3d506275889baeb9a693826d5b5366798ca0aca49c938b837a72696159504840382f271f160e06000000000000000000000114273a4d60738699acbfad9a8773604d3b281502001023364a5d708397aabdb09d8976634f3c2916020000000000000000000000071c31465a6f8599aeb7a28d78634e3a25100000000000000000001d32475c72889db3b49f89735e48331e0000000000000000000000000005152433435261718290a0afbfb2a3938474645546362717080000000000000000000000000000000000000000172c41566b8095abc0ab96826b56412c171c2c3d4e5e6f8091a1b2bdac9c8b7a69594837445a6f869bb0bba59079644f3a250f0012273c51667b91a6b39e89735e5d708497aab19e8a7764513e454c535a6b8296abae99846e5945596e8499adac97826c58432e1904000000000000000000000000000000000000000000000000000002101e2c3a454a463c2e1e0f000000000000000000010e1b27343e4340372a1a09000000000000000000000000001125384c5f728699acc0ac9986725f4b44474b4e5256595d60615755687c8fa2b5b8a5927d6a5744311e0b000000000000000d22374c62778da3b8b49f89735e48331e0900000011263b50667b91a6bbaf99856f5a4443454647494a4b4d4e50515254555758595b5c5d5f6062636d8398adbfa9947d69543f2a15000000000000000e203346586b7d91a3b6b09e8b7765525d70839699908880776f665e564e453d352c241c130b030000000000000000000000000b1e3144576a7c90a3b6b6a3907d6a5744311e0b0000071a2d4053677a8da1b4b9a693806c5945321f0c000000000000000000000001182d42576b8296aabba6927c68533e29140000000000000000001d32475c72889db3b49f89735e48331e000000000000000000000000000006152534445362728291a1b0c0b1a2938373645445352617070000000000000000000000000000000000000014293e53687d93a8bdad98846e59442f1a29394a5b6b7c8d9eafbfb09f8f7d6d5c4c3b2f445a6f869bb0bba59079644f3a250f0014293e53687d93a8b19c87705c54677a8da0b3a794826d5a535960676e757d94a9b09b86705b495d72889cb1a8937d68543f2a1500000000000000000000000000000000000000000000000000000000000e1c283134322a1e100000000000000000000000000a16222a2e2c251a0c0000000000000000000000000000081c2f4356697c90a3b7b5a28f7a6754413236393d4144484c4c4b5e728598abbfaf9c8875614e3b281502000000000000000c21374c60768ca1b7b49f89745f4a341f0a00000010253a4f647990a5bab09b86705b463030313234353638393b3c3d3f404143444647484a4b4c5a6f8599afbca7927c67523d2813000000000000000416293b4e61748799acbaa895826f5c5366798d857c746c635b534b423a32292119100800000000000000000000000000000215283a4d6073879aacbfac998673604d3a2714010000001124374a5d718598abbeaf9c8975614e3b281502000000000000000000000014293e52677c91a6bbab96826c57422d180400000000000000001d32475c72889db3b49f89735e48331e00000000000000000000000000000007162635445463728392a2b1c0b1a19282726353443525160700000000000000000000000000000000000011263b50667b90a5bab09b86705b46312536475768798a9babbcb3a3928270604f3e2e2f445a6f869bb0bba59079644f3a250f00162b40566b8095abae99846f5a4a5d708496a9b19e8a7764676d747b8289909badb29d88725c4c61768ca0b5a48f7965503b26110000000000000000000000000000000000000000000000000000000000000b151c1f1d170d0000000000000000000000000000050f16191711080000000000000000000000000000000013263a4d6074889baebeab9784705d4a362325282c2f33374154677a8ea2b5b9a692806c5845321f0b00000000000000000b21364b60768ca0b5b5a08b745f4a35200b0000000e23384e63788fa3b8b19c88725c47321d1c1d1f202123242527282a2b2c2e2f3032333436475c71879cb1baa5907a65503b261100000000000000000c1f3144576a7c90a2b5b29f8c7966535d70797169605850483f372f261e160e05000000000000000000000000000000000b1e3144576a7d90a3b6b6a3907c695644311e0b00000000081b2e4154687b8fa2b5b8a5927d6a5744311e0b00000000000000000000001025394e63788da2b7af9a86705b46311c0800000000000000001d32475c72889db3b49f89735e48331e0000000000000000000000000000000008172636455564738493a2b2bfb0a09182716253433425150600000000000000000000000000000000000f24394e63788da3b8b39e89735e493433435464758697a7b8b7a696857463524231212f445a6f869bb0bba59079644f3a250f00182d43586c8398adac97826c57425466798da0b3a79482747b82898f969da4acb9b49f89735f51657a8fa4b5a08b76614c37220d00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000a1e3144576b7d92a5b9b3a08d7966523f2c1813171a24374a5d708598abbeaf9c8976624f3c29150200000000000000000a1f344a5f748ba0b5b6a18c76604b36210b0000000d22374c62778da2b7b39e89735e48331e09060a0b0c0e0f101213141617181a1b1c1e1f34495e73899eb3b8a38e78634e39240f00000000000000000215273a4d60728698abbca99683705d5361655d554d453d342c241b130b0200000000000000000000000000000000000215283b4e6174879aadbfac998673604d3a27140100000000001225384c5f728699acbfae9b8874604d3a271401000000000000000000000c21364a5f74899eb3b39e89745f4a36210c00000000000000001d32475c72889db3b49f89735e48331e000000000000000000000000000000000008182737465565748494a3b3beafa090827061524233241405000000000000000000000000000000000c21364b60768ba0b5b5a08b76604c37405061718393a4b5baaa99897767564535241a2f445a6f869bb0bba59079644f3a250f001b30455a6f859aafaa95806a55404a5d708396a9b19e8b898f969da4aab1b5b5bdb5a08b766054697d93a8b19c87725d48331e09000000000000000000000001080e110f0a010000000000000000000000000000040b10100d060000000000000000000000000000060c10100c04000000000000000000000000000000000115283b4e6275899cb0bca996826f5b4834210e071a2d4053677a8da0b4b9a693806c594633200d0000000000000000000a1f34495e73899fb4b7a18c77624c37220d0000000b21364b60768ca1b6b49f8a745f4a341f0a000000000000000000000000000000010c21364b60758ba0b5b6a18c76614c37220c0000000000000000000b1d304356687b8ea1b3b3a08d7a67554e504a423a31292118100800000000000000000000000000000000000000000c1f3244576a7d91a4b6b5a28f7c695643301d0a000000000000091c2f4256697c90a3b6b7a4907d6a5643301d0a00000000000000000000081c31465b70869aafb7a28d78634e3a251000000000000000001d32475c72889db3b49f89735e48331e00000000000000000000000000000000000009192837475666758595a4b3beae9f8f8070615142322314040000000000000000000000000000000a1f34495e73889db3b8a38e78634e3c4d5e6e8090a1b1bead9d8c7b6a5a493827171a2f445a6f869bb0bba59079644f3a250f001d32475c71879cb1a8937c685a4d405366798da0b3a99c9da4aab1b5aea7a0a1adb8a38d7762586d8397acad98836e59442f1a05000000000000000000070e151c2326241e130600000000000000000000040a11191f252621190d00000000000000000000050c131a21252520170b000000000000000000000000000000000c1f3346596c8093a7bab29f8b7764513d2a17102336495d708396aabdb19e8a7663503d2a1704000000000000000000071e33485e73899eb3b8a38d77624c37220d0000000a1f344a5f748b9fb4b5a08c76604b36210b000000000000000000000000000000000e23384d62778da2b7b49f89745f4a34200a000000000000000000011426394c5e718497a9bcaa9885725f4c3b362e261e150d050000000000000000000000000000000000000000000215283b4e6174889baebeac9986725f4c3a271401000000000000001326394d6073869aadc0ad998673604c3926130000000000000000000002182d42576c8296abbba6927c68533e291400000000000000001d32475c72889db3b49f89735e48331e000000000000000000000000000000000000000a192938485766768695a5b4bdae9e8f8070605142322313040000000000000000000000000000061c31465b70869bb0bba5907b6651495a6b7b8d9daebeb1a08f806e5d4c3c2b1a0a1a2f445a6f869bb0bba59079644f3a250f001f34495e73899eb3a89485786b5e514a5d708396a9b9b1b1b6afa8a19a938c8fa2aba48f79645c71879bb0a994806a55402b1601000000000000060d141b222930373b3931241504000000000000020911171e262c333a3b352b1d0d000000000000040b121920272e353a3a34281a0900000000000000000000000000000003172a3d5064778b9eb1bba794806d59463320192c405366798da0b3bba894826d5a4734210d00000000000000000000001d32475c72889db3b9a48f78634e38230e000000091e33485e73899eb3b7a28d77624c37220d0000000000000000000000000000000010253a4f64798fa4b9b29d88725d48331e0800000000000000000000091c2f4154677a8d9fb2b4a28f7c695643311e120a0200000000000000000000000000000000000000000000000d203245586b7d91a4b7b5a28f7c695643301d0a00000000000000000a1d3043576a7d90a4b7b6a38f7c6955422f1c080000000000000000000014293e53687c92a7bbab96826c57422d1804000000000000001d32475c72889db3b49f89735e48331e00000000000000000000000000000000000000000b1a2a39485867778796a6b5bdad9e8f7d6f605041312213030000000000000000000000000000192f44586e8398adbda8937d6853576778899aaabbb4a493827161503f2f1e0d001a2f445a6f869bb0bba59079644f3a250f001f34495d718599acb2a396897c6f62555366798d9ea6aea8a29a948d867d7789989794917b6660758b9fb4a5907b66513c271200000000000a131a21282f363d444b504d4233210e00000000050f161e242b333a40484e50483b2a18050000000711181f262d343b42494f4f46382714010000000000000000000000000000000e2134475b6e8295a9bcb09d8976624f3b282236495c6f8396a9bcb19e8b7764513e2b170400000000000000000000001c32475c71879cb1b9a48f79644f3a250f000000041d32475c72889cb2b8a38f78634e38230e0000000000000000000000000000000012273c51667b91a7bbb09b86705b46301b0600000000000000000000001225374a5d708395a8bbac998673604d3b28150200000000000000000000000000000000000000000000000316293c4f6175889baebeab9885725f4c3926130000000000000000000114273a4d6074889baebfac9985725f4b3825120000000000000000000010253a4f64788ea2b7af9a86705b46311c08000000000000001d32475c72889db3b49f89735e48331e0000000000000000000000000000000000000000000c1b2b3a495968778897a6b6bcad9d8e7d6e5f4f403121120200000000000000000000000000172c41566b8296abc0ab96826b5664748696a7b7b8a797867564534332211100001a2f445a6f869bb0bba59079644f3a250f001a2e4155697d91a2afb4a79a8d807366595d6f828a929b958d878078716a728683827d7c796664798fa3b6a18c77624d38230e00000000101d272e353c434a51585f6560513e2a160200000816222b313940474e555c6365594734200c00000b19242c333a41484f565d64635644301c0800000000000000000000000000000005182b3e5265798ca0b3b9a592806b5844312b3e5165788c9fb2bba895826e5b4835210e0000000000000000000000001b30465b70879cb1bba59079644f3a2510000000001b30465b70879bb0baa59079644f3a250f0000000000000000000000000000000014293e53687d93a8bdad98846e58432e19040000000000000000000000081b2d405366788c9eb1b5a3907d6a574532200d00000000000000000000000000000000000000000000000d203346596c7d92a5b8b4a28f7b685542301d0a000000000000000000000b1e3144576a7d92a5b8b5a28f7a6754412e1b080000000000000000000c21364b5f74899fb3b39e89745f4a36210c00000104080c101e33485e73899fb4b49f89735e48331e000000000000000000000000000000000000000000000d1c2b3b4a5969788998a7b7bbac9c8d7d6d5e4f3f3020110200000000000000000000000014293f53687d93a8bdad98846e60718292a3b4bbab9a8a786857463625140400001a2f445a6f869bb0bba59079644f3a250f0012263a4e617584919eabb7ab9e9184776a5d636e7680878079726b645d586a6f6e6b6967655b687d93a7b29d88735e4934200b0000000d1e2e3a424950575e656c737a6d5945311d0900041626343e464d545b6269707777634f3b2713000719293640474e555c636a717873604b37240f000000000000000000000000000000000f2336495d708397aabeae9b8874604d3a34485b6e8295a8bbb29f8c7865523f2b18050000000000000000000000001a2f445a6f869bb0bba7917b66503b2611000000001a2f445a6f869aafbba6917b66503b261100000000000000000000000000000000162b40566b8095abc0ac97826b57412c1702000000000000000000000000112336495c6e8294a7b9ad9a8874614f3c29170400000000000000000000000000000000000000000000172a3c4f6275899caebeab9885725f4c39261300000000000000000000000215283b4e6175899cafbeab9885705d4a372411000000000000000000081d32475c70869aafb7a28e78644f3a25100e1215191d21252933485e73899fb4b49f89735e48331e00000000000000000000000000000000000000000000000d1d2c3c4b5a6a798999a8b7baab9c8c7c6d5d4e3e2f201001000000000000000000000012273c51667b90a5bbb09b86706e7d8fa0b0bfae9e8d7c6b5a4a392818070000001a2f445a6f869bb0bba59079644f3a250f000a1e3246586673808d9aa6b3afa295887a6e615a636b726c655e5750494c585a5856545250576c8297abae99846f5a45311c07000000172a3c4c565d646b727982888974604c382410000d213344515a61686f767c848b7d6a56422e1a0611243747535b626970777d868d7a67533e2b1603000000000000000000000000000000061a2d4054677a8ea2b5b7a4907d6956433e5164778b9eb1bca996836f5c4936230f000000000000000000000000001a2f445a6f8499afbca7917c67523c271200000000192e43586e8498adbca7937c67523c271209090909090909090909090909090909182d42576c8397acbfa994806a543f2a150000000000000000000000000007192c3f5164778a9dafb7a4927d6c594633210e000000000000000000000000000000000000000000001d3246596c8092a5b4b4a18e7a6755422f1c090000000000000000000000000c1f3245596c8093a6b9b4a08d7a6653402d1a07000000000000000002192e42576c8296abbba7927c68533e291f23262a2e32363a3e41485e73899fb4b49f89735e48331e000000000000000000000000000103040607090b0d0e1012131e2d3c4c5b6b7a8a9aa9b8baaa9b8c7b6c5c4d3e2e1f1000000000000000000000000f24394e63788ea3b8b39e89737a8c9cadbeb2a190806f5e4d3d2c1b0b000000001a2f445a6f869bb0bba59079644f3a250f000316293a4855626f7c8996a2afb3a6998c80716558575c58514a433c3a3e4445484c5053575c70869aafaa95806b56412d18030000001d32465a69717880878e959c907b68533f2b180413283c50626e757c838a91989a86725d4936210e172c4054656f767d858c929a96826e5a46321e0a000000000000000000000000000000001124374b5e728599acbfad9986725f4c475a6d8294a7bbb3a08d796653402d190600000000000000000000000000192e43586e8499afbda8937c67523c271200000000172c42576c8397acbea9947d68533e291e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e2f445a6f8499afbca7927c67523d281300000000000000000000000000000f2235475a6d8093a5b8ae9c897663503d2b18050000000000000000000000000000000000000000001f344a5f74858e98a1aa9885715e4b382613000000000000000000000000000216293c506376899db0bdaa9683705c49362310000000000000000000152a3e53687c92a7bcab96826c57423034383b3f43474b4f53565a5e73899fb4b49f89735e48331e000000000000070c0e0f1113141618191b1d1f2022232527292a2c2e3d4d5c6b7b8b9aaab9b9a99a8b7a6b5c4c3d2e1e0f000000000000000000000c21374c60768ca0b5b5a08b778899aabab5a59483726151402f1f0e00000000001a2f445a6f869bb0bba59079644f3a250f00000b1c2b3744515e6b7785919eabb7aa9d908375685c4f434044484b4f52565a5d6164686c6f74899eb3a6917c67523e2914000000001f344a5f74868d949ba2a9ab97836f5b47331f0b152a3f546a808990979ea5aca18d7965513d2915192e43586e838a92999fa7ae9d8975614d39251100000000000000000000000000000000081b2f4255697c90a3b6b5a28f7b68545063768a9db1bdaa9784705d4a3723100000000000000000000000000000182d42576c8398adbea9947d68533e291300000000162b40566b8296abbfaa95806a543f3333333333333333333333333333333333333333475c70879cb1baa5907a65503b2611000000000000000000000000000005182b3d506376899baeb8a693806d5a4735220f0000000000000000000000000000000000000000001d31455867717a858e978d7a6754412e1b0900000000000000000000000000000d2033465a6d8093a7bab3a08c7966523f2c1905000000000000000011263a4f64798ea3b8af9a86705b4645494c5054585c6064686b6f7377899fb4b49f89735e48331e0000000007131c21232426282a2b2d2f3032343537383a3c3e3f414344464d5d6c7c8c9babbab8a9998a7a6a5b4c3c2d1b090000000000000000000a1f34495e73899eb3b8a38e8595a6b7b9a89887766554443322120100000000001a2f445a6f869bb0bba59079644f3a250f0000000d1a2633404d5a6773808e9aa7b4aea19487796d605355595d6064676b6f7276797d82858890a3b7a28d78634e3a2510000000001d31465a6d8296a8afb6bdb29e8a76624e3a261212273b5064778ca0abb2b9bca894806c5844301c162b3f53677b90a4acb4bbb8a4907c6854402c1804000000000000000000000000000000001326394d6073879aaebeab9885705d596c8093a6b9b4a18e7a6754412d1a070000000000000000000000000000172c42576c8297acbfa9947d69543f2a1500000000152a3f546a8094a9bfac97826b56484848484848484848484848484848484848484848495e73899eb3b8a38e78634e39240f0000000000000000000000000000000e213346596c7d91a4b7b09d8a7764513f2c1907000000000000000000000000000000000000000016293b4a545e67717a8484705d4b38251200000000000000000000000000000004172a3d5064778a9eb1bca996826f5c4835220e00000000000000000d21364b60758a9fb4b39e89745f565a5d6165696d7074787c8284888c92a2b6b49f89735e48331e0000000717252f36383a3b3d3f4042444647494b4c4e4f51535456585a5b5d5f606d7c8d9cacbeb7a8988979695a4a392511000000000000000000071c31475c70879bb0bdaa9a96a2b3bcac9b8a79685847372615050000000000001a2f445a6f869bb0bba59079644f3a250f000000000916222f3c4956626f7c8996a3b0b1a5988b7d70676a6e7275787c8084888b8f93969a9da2aeb39e89745f4b36210c00000000162b3e52667a8fa3b7cacdb9a5927d6955412d190c2134485c708599adc1cdc4af9b88735f4b37231024384c6074899cb1c4cfc0ac98846f5b47331f0b000000000000000000000000000000000a1d3044576a7d92a5b8b4a08d79666276899cafbeab9885715e4b372411000000000000000000000000000000162b40566b8297acc0ab95806a543f2a150000000013293e53687d93a8bdad98836c5e5e5e5e5e5e5e5e5e5e5e5e5e5e5e5e5e5e5e5e5e5e5e60758ba0b5b6a18c76614c37220c0000000000000000000000000000000417293c4e6174889aadb9a794826e5c4936231100000000000000000000000000000000000000000c1d2c38414b545e6770786754412e1b08000000000000000000000000000000000e2134475a6d8295a8bbb29f8b7764513e2b180400000000000000081d32475c70869bb0b7a28e78676b6f7276797d83868a8e9296999da1a5b0bfb49f89735e48331e000000132535424a4d4f5052545657585b5c5e5f62636466686a6b6d6f7072747677797d8fa4b9c6b6a798887868543f2a15000000000000000000001a2f44596e8499aec3b8adabb3c0af9f8e7d6c5c4b3a2a1908000000000000001a2f445a6f869bb0bba59079644f3a250f000000000005111e2b3845525e6b7885929facb5a89c8f827b8083878b8e9295999ca0a4a7abafb2b6b3a49686705c47321d08000000000f23374b5f73889cafc4c7c0ac9985705c4834200c192d4155697d92a5b9cbc4b7a28f7a66523e2a161d3145596d8295a9bdc9c2b39f8b76634e3a2613000000000000000000000000000000000114273b4e6175899cafbca996836f6c8092a6b9b5a28f7b6854412e1b08000000000000000000000000000000162b40556a8095abc0ac97826b56402b160100000012273c52677c92a7bcae998473737373737373737373737373737373737373737373737373778da2b7b49f8a745f4a35200b000000000000000000000000000000000d1f3244576a7d90a3b5b19e8c786653402d1b0800000000000000000000000000000000000000000e1b252e38414b545d635b4b382411000000000000000000000000000000000005182b3e5164778c9fb2bba895826d5a4734210e0000000000000003192e43586d8297acbba7927c7b8084888c8f93979b9fa3a6aaaeb2b6bac0b8a89888735e48331e0000071c2f42535f62646667686b6c6e707273747778797b7d808283858788898c8d8f9097a8bcd1c5b6a6927d6a55402b1600000000000000000000172c41566b8296abc0cac2c0c3b3a29182705f4e3e2d1c0c00000000000000001a2f445a6f869bb0bba59079644f3a250f000000000000000d1a2734414d5a6774828e9ba7b5ac9f939194989c9fa3a7aaaeb2b5b4b1adaaa6a39f9586776856422d190400000000081c3044586c8095a8bab3aca59f8c7763503b271212263a4e62768a9eb2b7b0a9a296826d5946311c162a3e5266798ea2b6b5afa7a1927d6a56422d1800000000000000000000000000000000000b1f3245596c8093a6bab29f8c7775889cafbfac9986725f4c39251200000000000000000000000000000000152a3f546a8095aabfac97826c57422c170200000011263b50667b90a5bbb09b8a898989898989898989898989898989898989898989898989898992a5bab29d88725d48331e08000000000000000000000000000000000215283b4d60738699abbba89683705d4a37251200000000000000000000000000000000000000000008121b252e37414a4e493d2d1b080000000000000000000000000000000000000f2235485c6f8296a9bcb19e8a7763503d2a170400000000000000152a3f54687d93a7bcac988d9195999ca0a4a8acb0b4b8bbbdb9b5b2aeaba79b8a7a6a5945311c00000b20354a5f7177787b7c7d8083848687898b8c8e9091939597989a9c9d9fa1a3a4a5aab5c5d2c6b29e8a76624e3b261200000000000000000000142a3f54697d94a8bed3d7c7b6a695847362524130200f0000000000000000001a2f445a6f869bb0bba59079644f3a250f0000000000000000091623303c495663707d8a97a3b0b0a7a6a9adb1b4b5b2aeaaa7a3a09c9895918e8a867668594a39271300000000000115293d5165798da1a69f98918a847c68533e28130b1f33475b6f8397aaa29c958e8780725d48331e0f23364b5f72879ba8a19a938d867d6f5a442f1a00000000000000000000000000000000000216293d5063768a9eb1bba894827d92a5b8b6a3907c6956432f1c090000000000000000000000000000000013293e53687d94a9bfad98836c57422d18030000000f253a4f64798fa4b9b8a89f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9fa2b0c1b09b86705b46301b0600000000000000000000000000000000000b1e314356697c8fa1b4b29f8d7a6754412f1c080000000000000000000000000000000000000000000008121b242e3638352c1f0f0000000000000000000000000000000000000005192c3f5266798ca0b3baa693806d5946331f0c0000000000000011263b5064798fa3b8b6a8a3a6aaaeb1b5b9bdbab6b2afaba8a4a09d9996928d7c6c5c4c3b291600000b21364b60768b8f9092949597999b9c9ea0a1a3a5a7a8aaacadafb1b3b4b6b8b9bbbec0bfbdbbab97836f5b47331f0b0000000000000000000012273c51667b91a6bbd0cbbaa9988876665545342313020000000000000000001a2f445a6f869bb0bba59079644f3a250f00000000000000000005121f2c3845525f6c7886929facb3b2aeaba7a3a09c9995928e8b8784807c78757167584a3b2c1c0a0000000000000e22364a5d728699928b847c766f685e4d39251104182b4053687b90958e888279726c6456432f1b071b2f43576b8094948d868078716a62523f2b170000000000000000000000000000000000000d2034475a6d8295a8bbb19d8a889baec0ad9a8673604d392613000000000000000000000000000000000013283d53687c93a8bdae99846e58432e19030000000e23384e63788da2b1bfbab4b4b4b4b4b4b4b4b4b4b4b4b4b4b4b4b4b4b4b4b4b4b4b4b4b4b4b6bfb8ab99846e58442f19040000000000000000000000000000000000011427394c5f728597aab6a99784715e4c38230e00000000000000000000000000000000000000000000000008111b212320190e010000000000000000000000000000000000000000102336495d708396aab4ab9c8976634f3a2611000000000000000d22374c60758b9fb4c0bcb8bbbab6b3afaca8a5a19d9a96938f8c8885827c796f5e4e3e2e1d0c00000a1f34495e73899fa5a7a9abacaeb0b1b3b5b7b8babcbdbfbfbdbbb9b8b6b4b3b1afadaba9a8a6a38f7b67533f2b1804000000000000000000000f243a4f64788fa3b6bcbdad9c8c7a6a594838271605000000000000000000001a2f445a6f869bb0bba59079644f3a250f00000000000000000000010e1b2734414e5b6874828f999e9d9996928f8b8884807c7875726e6b6763605c56493a2c1d0e00000000000000061a2e42566a7d857d767069625b544c402f1d0a001024384c607488827a736c655e5850473826140014283c506478878078726b645d564f4435231000000000000000000000000000000000000004182b3e5165788c9fb2b9a69796a5b7b7a4907d6a5643301d0a000000000000000000000000000000000012273c52677c93a7bcaf99846e59442f1a050000000c22374c61758593a1afb5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5a89b8d7d6c57422c17020000000000000000000000000000000000000a1d2f4254677a8da0a39a91887b66503b26110000000000000000000000000000000000000000000000000000070c0e0c0600000000000000000000000000000000000000000000071a2d4053677a8da0a1988f857b67523c271200000000000000091e33475c718796a2afb0aca8a5a29e9a9793908c8886827d7976736f6b68645e5140302010000000071d32475c72879cb1bcbec0bfbdbcbab8b6b4b3b1afadacaaa8a7a4a3a19f9d9c9a98979493918f8873604c38241000000000000000000000000d22374c61768c9ca2a7ad9f8f7d6d5d4c3b2a1a0900000000000000000000001a2f445a6f869bb0b0a59079644f3a250f0000000000000000000000000a1623303d4a5763707d85898885827c7976726f6b6864605d5956524e4b4742392b1c0e00000000000000000013273b4f63737069625b554e4740392f22120000091d3145596c736d665f58514a433d34291a09000d2135495d6f726b655d575049423b32261706000000000000000000000000000000000000000f2235495c6f8396aabdb5ababb4c1ae9b8874604d3a271401000000000000000000000000000000000011263b50667b91a7bcb09b866f5a442f1a05000000091e324657667483919fa0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0988b7c6e604f3d291400000000000000000000000000000000000000001325384a5d70839690877d746b5e4c38240f0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001124374a5d7185978e857b72685d4c38240f00000000000000041a2e43586b7885919e9b9794908d8986827d7a7773706c6865615e5a5753504b4132221202000000001b30455a6f869bafafadacaaa8a7a5a3a19f9d9c9a98979593918f8d8c8a8887858382807c7b79776c5844301c0900000000000000000000000a1f34495e7382878d9399928270604f3f2e1d0c0000000000000000000000001a2f445a6f869b9b9b9b9079644f3a250f0000000000000000000000000006121f2c3946525f6a6f74736f6b6864615d5a56534f4b4844413d3936322e261b0d000000000000000000000c203345555e5c554e47403a332c251d1104000002162a3d4e5b5f58524b443d362f2921170b0000061a2d40515d5e575049433c352e27201508000000000000000000000000000000000000000006192d4053667a8da1b4c6c0bfc6b8a5927d6a5744311e0b00000000000000000000000000000000000011263b50657a90a5bbb19c87705b46301b060000000316283948566472828b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b887a6c5e504232200d0000000000000000000000000000000000000000081b2e40536679867c736a61584e402f1d09000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000081b2e4154677a847a71675f554c3f2e1c09000000000000000014283b4d5a6773808986837d7b7773706c6965625e5b5753504c4945423e3b372f2314040000000000192e43586e83989c9b9897959391908e8c8b8887868382807d7b7978767472706f6d6b6a686664625d4e3c2915010000000000000000000000071b304456666d72787d858574635342312110000000000000000000000000001a2f445a6f86868686868679644f3a250f0000000000000000000000000000010e1b2835424e565b5f5e5a5753504c4845413e3a36332f2c2825211d1a1309000000000000000000000004162837434948413a332c261e18110900000000000d1f303e474a443e373029221b140d0500000000112232404849433c352e28211a130c03000000000000000000000000000000000000000000001024374a5d718598abbfd2d4c2af9c8875614e3b2815020000000000000000000000000000000000000f253a4f647990a5bab19c87715c47321c07000000000b1b2a384654637174747474747474747474747474747474747474747474747474747474747474746a5c4e4032231403000000000000000000000000000000000000000000112437495c6f726960574e443b31221200000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001225384b5f7070675e544c42392f21110000000000000000000c1e2f3d4955626e74706d6966625f5b5854504d4946423f3b3834302d2926221c1205000000000000172c41566b828987868482807d7b7978767473706f6e6b6a68666463605f5d5b5a58565453514f4d493f301f0d000000000000000000000000001427394852585e646a70746756463524140300000000000000000000000000192d4256686f6f6f6f6f6f6e604c38230e000000000000000000000000000000000a1724313b41464a4945413e3b3733302c2925211e1a1713100c080300000000000000000000000000000a19263034332d261f18110a04000000000000000112202b33343029231c150e07000000000000000514222d33342f28211a140d0600000000000000000000000000000000000000000000000000081b2e4155687b8fa2b6c9cbb9a692806c5945321f0c000000000000000000000000000000000000000e23384e63788fa4b9b39d88725c47321d0800000000000c1a283745535d5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f594c3e3022140500000000000000000000000000000000000000000000071a2d3f515d5e564d433a31281f13040000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000081c2f42525d5d544a41382f261d110300000000000000000000111f2b3844515c5f5c5854514d4a46433f3b3834312d2a26231f1b1814110d080000000000000000152a3f53677473716f6e6c6a68666463615f5e5c5a58575453514f4e4c4a48464443413f3e3c3a38352d211202000000000000000000000000000a1b2a363e444a50555b5f58493828170600000000000000000000000000001327394a565a5a5a5a5a5a595142301d09000000000000000000000000000000000006131f272d313434302d2926221e1b1714100d090400000000000000000000000000000000000000000009141b1f1e19120b040000000000000000000000020f181e1f1c150f0800000000000000000000000511191e1f1b140d0600000000000000000000000000000000000000000000000000000000001225394c5f73869aadb5b5b09c8976634f3c291602000000000000000000000000000000000000000e23384e63788da3b8b39e89735e48331e090000000000000b19273541494a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a463b2e201204000000000000000000000000000000000000000000000000102232404849423930271e150c020000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000012243441494941372e251c1309000000000000000000000000010e1a27333f484a4743403c3835312e2a26231f1c1815110e0a060000000000000000000000000010243749585f5e5c5a58575553514f4e4c4a48474543413f3e3c3a38373433312f2e2c2a28272523201a10030000000000000000000000000000000c1923292f353b41474a453a2b1b0a0000000000000000000000000000000a1c2c3942444444444444443e33241301000000000000000000000000000000000000020c13181c1f1f1b1814110d0905000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000091d3043566a7d91a0a0a0a093806c594633200d00000000000000000000000000000000000000000d22374c62778da3b8b49f89735f4a341f0a000000000000000917242e343434343434343434343434343434343434343434343434343434343434343434322a1e1002000000000000000000000000000000000000000000000000000414222d33342f261d140b020000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000616242e34342e241b1208000000000000000000000000000000000915222d3334322e2b2723201c1915120e0b0700000000000000000000000000000000000000081a2c3b454a4847454342403e3c3a3837353332302e2c2a2827252321201e1c1a1917151311100e0b06000000000000000000000000000000000000070f151b21272d323431281c0d00000000000000000000000000000000000e1c272d2f2f2f2f2f2f2f2b2215060000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000c151a1b1b1b1b1b1b1b17100500000000000000000000000000000000000000000000000000000000000000000000000014273a4e6174888b8b8b8b8a7663503d2a170400000000000000000000000000000000000000000c21364b60768ca1b7b5a08b745f4a341f0a000000000000000007121a1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1d170c000000000000000000000000000000000000000000000000000000000511191e1f1b130a0100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000006121a1f1f1a1108000000000000000000000000000000000000000410191e1f1d1916120e0b0701000000000000000000000000000000000000000000000000000e1d2931343332302e2c2b2927252322201e1c1b1917151312100e0c0a080300000000000000000000000000000000000000000000000000000000000000070c12181e1f1c150b000000000000000000000000000000000000000a13191a1a1a1a1a1a1a160f04000000000000000000000000000000000000000000000000010911181c1c170e03000000000000000000000000000000000000000000000000000000000000000000010b141a1d1a140900000000000000000000000000000000101e282f303030303030302b22150600000000000000000000000000000000000000000000000000000000000000000000000b1e3145586b7474747474746d5a4734210e0000000000000000000000000000000000000000000b21364b60768ba0b5b6a18c76604b36210b0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000c161d1f1e1c1b1917161412100e0d0b090400000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000050d151d252c31312b201303000000000000000000000000000000000000000000000000000000000000010a141e272f322f271b0c00000000000000000000000000000c1e2e3b44464646464646453f33241300000000000000000000000000000000000000000000000000000000000000000000000215283b4d5a5f5f5f5f5f5f5c4f3e2b18040000000000000000000000000000000000000000000a1f344a5f748ba0b5b7a18c76614c37220c0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000002070c1112110e0a0400000000000000000000000000000000000000000000040a0d0c0a08060503010000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000a141a1d1a140a00000000000000000000000000000000000000000000040b0e0d0901000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000004070b0e1216191a17150f0700000000000000000000000000000000000000000000000000000000000000061119212930384046463e31210f00000000000000000000000000000000000000000000000000000000000a141d27313a434743382a19070000000000000000000000000015283b4c585b5b5b5b5b5b5a5142301c0900000000000000000000000000000000000000000000000000000000000000000000000c1e2f3d474a4a4a4a4a4a483e31200e000000000000000000000000000000000000000000000a1f34495e73899fb4b5a38d77624c37220d00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000002080d12171c21262726231f180e02000000000000000000000000000000000000000d181f22211f1e1c1a18161413110f0d0b0a0806040201000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000a131d272f322f271b0d00000000000000000000000000000000000000000c171f23221d13070000000000000005111a1f1f1f1f1f1f1f1f1a1105000000000000000000000000000000000000000008131b1f1f1f1f1f1f1f1e191004000000000000000000000000060d1316140f06000000000000000000000000000000000000000000000000000003060a0e1115191c2023272b2e2f2c2a231b130b030000000000000000000000000000000000000000000000000000000817232d343c444c545b5a4f3e2b180500000000000000000000000000000000000000000000000000000a131d27303a444d575c5648362310000000000000000000000000001a2f44586a7070707070706f5f4c38230e000000000000000000000000000000000000000000000000000000000000000000000000111f2b32343434343434332c21130300000000000000000000000000000000000000000000061e33485e73899ea0a0a08f78634e38230e000000000000000000000000000000000000000000000000000000000000000000000000000000000003080d12171c21262c31363b3c3b38332b20140800000000000000000000000000000000000e1e2b3337363433312f2d2b2a28262422211f1d1b1a17161412100f0d0b090706040200000000000000000000000000000000000000000000000000000000000000000009131d26303a434743392b1a080000000000000000000000000000000000010f1d293338373025160600000000000515232e34343434343434342e2315050000000000000000000000000000000000000918252f34343434343434332d2213030000000000000000050c131a21282b2923180a000000000000000000000000000000000000000205090d1014181b1f23262a2d3135383c404344423e362e261e170f0700000000000000000000000000000000000000000000000003152635404850586068706d5b4834210e00000000000000000000000000000000000000000000000009131d26303a434d56606a726653402d1a070000000000000000000000001b30465b7086878787878779644f3a250f000000000000000000000000000000000000000000000000000000000000000000000000010e181e1f1f1f1f1f1f1e190f030000000000000000000000000000000000000000000000001d32475c72888b8b8b8b8b78644f3a240f0000000000000000000000000000000000000000000000000000000000000000000000000003080d12171c22272c31363b40454a4f52504d483d3125190d020000000000000000000000000000081b2c3c474c4b4a48464442403f3d3b3a37363432302f2c2b2927262422201e1c1b1917151412100e0c0b09070500000000000000000000000000000000000000000009131c263039434c565c57493725120000000000000000000000000000000003111f2d3b474d4c43342414050000000011233341494a4a4a4a4a4a494133231100000000000000000000000000000000000215263643494a4a4a4a4a4a483f32210f0000000000040b121920272e353c403e352818070000000000000000000000000000060c0f13171a1e2125292c3034383b3f42464a4d5154585957524a423a322a221b130a030000000000000000000000000000000000000000000c1f3244535c646c737b847764503d2a170400000000000000000000000000000000000000000008131c263039434c566069737d826f5c4a3724110000000000000000000000001a2f445a6f859a9c9c9c917b66503b261100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001c31465b6e74747474747473624e39240f00000000000000000000000000000000000000000000000000000000000000000003080d12181d22272c31363b40454a50555a5f646765625b4f43372b1f1307000000000000000000000000000f24374a5a62605f5d5b5a57565452504f4c4b4947464442403e3c3b3937353332302e2c2b2927252322201e1c1a140a000000000000000000000000000000000008121b262f39424c565f69726754412e1c0900000000000000000000000000000614212f3d4b5962605242322313030000001a2e41515d5f5f5f5f5f5f5d51412e1a0600000000000000000000000000000000091e3144545e5f5f5f5f5f5f5c503e2b17030000040f181f262d343b424950565246362411000000000000000000000000010f192024282c2f33363a3e4145494c5054575b5f6266696d6e6c665d564e463e362e261e160e060000000000000000000000000000000000000011263a4f62707780888f94806d594633200c0000000000000000000000000000000000000004111b252f39424c565f69737c86908c796653412e1b080000000000000000000000192e43586e8498adb1a7927c67523c27120000000000000000000000000000000000000000000000000000000000000000000812191b1b1b1b1b1b1b19130900000000000000000000000000000000000000000000000000000000172b3e505c5f5f5f5f5f5f5e5545331f0b000000000000000000000000000000000000000000000000000000000003080e13181d22272c31373b40464b50555a5f64696f73787c79776d6055483d3025190d01000000000000000000000013283d526777767472706f6c6b6967666462605e5c5b5957555352504e4c4b4847454342403e3c3a38373533312e271c0e000000000000000000000000000008111b252e38424c555f69727c84715e4b39261300000000000000000000000000081624323f4d5b6976706151413121110100001f34495d70747474747474705d49341f09000000000000000000000000000000000d23384c61727474747474746e5b46311c07000414212c333a41484f565d646b6453402c18040000000000000000000002111f2c35393d4044484b4f53565a5e6165686c7073777b7d838482797169615a524a423a322a221a120a020000000000000000000000000000000012273c52677b8c939ba39d8976624f3c28150200000000000000000000000000000000000313222e38424c555f69727c869099a39683705d4b3825120000000000000000000000172c42576c8397acbea9947d68533e291400000000000000000000000000000000000000000000000000000000000000000b1a252d303030303030302e261a0c0000000000000000000000000000000000000000000000000000000f21323f484a4a4a4a4a4a494337271603000000000000000000000000000000000000000000000000000000020e171d22272d31373c41464b50555a5f656a6f74797d84888e938f8a7d72665a4e42362a1e120600000000000000000000152a3f546a808c8988868483827d7c7b7877757372706e6c6a68676563625f5e5c5a58575453514f4e4c4a4846433a2c1c0b000000000000000000000003101b242e38414b555f68727c868f8e7a685543301d0a00000000000000000000000b19263442505d6b7987806f5f4f3f2f1f0e00001f344a5f748b8b8b8b8b8b745f4a35200b000000000000000000000000000000000e23384e63788b8b8b8b8b88725c47321d07001022323f474e555d636a7278806f5b47331f0b0000000000000000000111202f3d494e5255595d6064686b6f7376797d8286898d90949799958d867d756d655d564e463e362e261e14080000000000000000000000000000000f24384c5f728699acb7a692806b5844311e0b00000000000000000000000000000000000e2031404b555f68727c868f99a3acb3a08d7a6754412d190000000000000000000000162b40566b8296abbfaa95806a543f2a150000000000000000000000000000000000000000000000000000000000000006182937424646464646464642382a190700000000000000000000000000000000000000000000000000000313222d33343434343434343026190a0000000000000000000000000000000000000000000000000000000212202b32373c41464b50555b60656a6f74797d84898e93989da2a7a49c9084776c6054483c3024180c000000000000000000172c42576c82979f9d9b9998969492908f8d8b8988868482807d7c7978777473716f6e6c6a68666463615f5d5b574a3a2917060000000000000000000112212e37414b545e67727b858f99a29885725f4c3a2714000000000000000000000d1b29364452606e7b8a978d7d6d5d4d3d2c1906001f34495e73899fa0a0a08c76604b36210c000000000000000000000000000000000e23384e63788fa0a0a09d88725c47321d0700192d3f505b636a707780868d8a76624e3a2612000000000000000000101f2f3e4d5b63676a6e7275797c8284888c8f93979a9ea2a5a9acaea9a1999189827971696159514a423a312617060000000000000000000000000000091c2f4356697c90a3b6af9b8874614d3a27140000000000000000000000000000000005172a3d4f5e67727b858f99a2acb6aca2998f85705b46301b0000000000000000000000152a3f546a8094a9bfac97826b56402c16020406080a0b0b0700000000000000000000000000000000000000000000000f223547555b5b5b5b5b5b5b56483724100000000000000000000000000000000000000000000000000000000410191e1f1f1f1f1f1f1f1b1409000000000000000000000000000000000000000000000000000000000e1f303d464b51565b60656a6f74797d84898e93989da2a8adb2b7bcb9ada2958a7d7165594e4136291e120600000000000000192e43586e8499aeb2b0afadaba9a7a5a4a2a09f9c9b9997959491908e8c8b8987868382807d7b7978767472706858473524130200000000000000000c1f303f4a545d67717a858f98a2acb5a28f7c695644301b0000000000000000020f1d2b39475462707d8c9aa79b8b7b6b5b4935200c001e33485e73889db3b5a28d77624c37220d000000000000000000000000000000000d23384c62778da3b5b39d88725c47321d07001e33485c6e777d858c939aa1927d6955412d1905000000000000000b1d2e3d4d5c6b787b8083878b8e9296999da0a4a8abafb3b6b3afabaab1b5ada59d958d867d756d655d554e4435241100000000000000000000000000000013263a4d6073879aaeb7a4917d6a5643301d090000000000000000000000000000000e2134475a6d7a858f98a2acb5aca3998f867c726756432e19000000000000000000000013293e53687d93a8bdad98836c57422d1817191b1d1f21201c130700000000000000000000000000000000000000000014283d52657070707070707066533f2a15000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000002162a3d4e5a60656a7074798084898f93999ea3a8adb2b7bbb7b2aeabafbab3a79b8f83776b5f53473b2f23170b0000000000001b30465b70869bb0b8b9bbbdbfbebcbbb9b7b5b3b1b0aeacaba8a7a5a3a1a09e9c9b9897959391908d8c8a88877564534231200f000000000000000316283b4e5d67707a858e98a2abb5ada3999086735e48331e000000000000000412202d3b49576472808f9caab5a7998978634e38230e001d32475c72889db2b8a38e78634e38230e000000000000000000000000000000000d22374c62778da3b8b39d88725c47321d07001f34495e73889299a0a7aead9985705d4835210c0000000000000013273a4c5b6b7a8a9194989c9fa3a7abaeb2b5b4b0aca9a5a19e9a97959da5adb5b1a9a1999189827971696153412d190500000000000000000000000000000a1d3144576a7d91a5b8ad9a86735f4c392512000000000000000000000000000000182b3e5164768a98a2abb5ada39990867c72695f5549392713000000000000020406080a12273c52677c92a7bcae99846e58432e2a2c2e30323436352f2517070000000000000000000000000000000000000000152a3f546a808787878787826b56402b160100000000000000000000000000000000000000000000000000000000000000000000000000000000030a0d0d0d0d0d0d0c070000000000000000000000000000000000081d31465a6c75798085898f94999ea3a8adb2b7b9b4afaba6a29e99959ca8b4b9ada195897c7065594d4135291d1105000000001d32475c72889da0a3a4a6a8aaacadafb1b3b5b7b8bbbcbec0bebcbab8b7b5b3b1afadacaaa8a7a5a3a19f9d938270604f3d2c1b080000000000000d203345586b7a848d98a1abb4aea39a90867c73695945311c000000000000041422303e4b59677483909eacb3a5978a7b6d5e4b36210d001b30465b70879cb1b9a48f79644f3a240f000000000000000000000000000000000d22374c62778da3b8b39d88725c47321d07001b3044586c8094a8b4bbc2b4a08c7764503c281400000000000000182d42566a798999a6a9adb1b4b5b1adaaa6a29f9b9794908c89868282899199a1a9b1b5ada59d958d857d705d4834200c00000000000000000000000000000114283b4e6175889cafb6a28f7c6855412e1b0800000000000000000000000000001e32475a6d8293a6b4aea49a90877c73695f564c42382b1b0a00000008101517191b1d1f21263b50667b90a5bbb09b866f5a453d3f41434547494b4a423525130000000000000000000000000000000000000000142a3f54687d949c9c9c97826b56402b16010000000000000000000000000000000000000000000000000000000000000000000000000000000c171e222222222222211b11050000000000000000000000000000000e22374b6074898f94999ea3a8adb3b8b6b2ada8a49f9b96928d8984808b97a2aebab2a69b8f83766a5e52473a2f22170a0000001f344a5f7488898c8d8f91939597989a9c9ea0a1a3a5a7a9abadafb0b3b4b6b8b9bcbdbfbfbdbcbab8b6b4b1a08f7d6d5b4a37240f000000000000162a3c4f62758897a0aab4aea49b91877d736960564b3b2916000000000000112232404e5c69778593a1aeb1a39587796b5d4f402e1b07001b30455a6f869bb0bba59079644f3a2510000000000000000000000000000000000d22374c62778da3b8b39d88725c47321d070015293d5065788da1b5c9cfbba793806b57432f1b070000000000011b30455a6f8698a7b7afaba7a3a09c9895918d8a86837d7b7773706c6d757d868d959da5adb5b1a9a1998c77634f3b27130000000000000000000000000000000b1e3245586c8092a6b9ab9885715e4a37241100000000000000000000000000001f344a5f748a9eb1ab9b91887d736a60564d433930261b0d0000000e1a242a2c2e30323436383a4f64798fa4b9b19c87705b50535456585a5c5e605f53422f1c070000000000000000000000000000000000000013293e53687d94a9b1ac97826b56402b160100000000000000000000000000000000000000000000000000000000050808050100000000000c1c2933373737373737362e231404000000000000000000000000000013273c5165798fa3a9aeb3b8b3afaaa6a19d98948f8b86827c78736f6d7985919ca8b4b8aca094887c7064584c403428190800001e33485c6d72747677797b7c8082838687898b8c8f9092949698999b9d9fa1a3a4a7a8aaacaeb0b1b3b7c0bead9c8a7967523d28130000000000001c3146596c8092a5b3aea59b91887d736a60564d433a2d1d0c0000000000071b2e40505e6c798895a3b1afa1938577695b4d3f31221100001a2f44596e8499afbca7917b66503b2611000000000000000000000000000000000d22374c62778da3b8b39d88725c47321d08000d2135495d71869aaec1c2bbaf9a86725e4a36220e0000000000071d32475c72879cb1ad9d96928f8b8784807c7874716d6966625f5b575961697179828a929aa2a9b1b4a7937d6a56422e190500000000000000000000000000000215293c4f6376899db0b4a18d7a6753402d1906000000000000000000000000001f34495e73899fb4a5907d746a60574d433a30261d13090000000c1d2c373f41434547494b4d4f5163788ea3b8b39d88726466686a6b6e6f727376715f4a35200b0000000000000000000000000000000000000013293e53687d94a9bfac97836c57422c1702000000000000000000000000000000000000000000000000000007121a1e1d1a16130f0c0905182a3a464c4c4c4c4c4c4a4132210f0000000000000000000000000000182d41566a8094a9bdc2b9a99f9a96918d8884807976716c68635f5a5b6773808b97a2aebab2a69a8e82756a5e52463726130000192c3e4f595c5f60626466686a6b6e6f71737477787a7c7d82838487888a8c8d8f91939597999b9c9fa3b1c2b9a5907b66523d28130000000000001e33485e73899cafad9d92887d746a61574d443a30271c0f0000000000000d21364a5d6e7c8a98a6b3ad9f91837467594b3d2f2113040000192e43586e8398adbca7937c67523c2712000000000000000000000000000000000d22374c62778da3b8b49f89735e48331e0900061a2e42566a7d92a6b5aea7a0998e7965513d281300000000000a1f344a5f73899fb4a691827c7976726e6b6a6966625e5b5753504c48464e565d666d757d868e969ea8ae9a86715d4834200c0000000000000000000000000000000d203346596d8093a7baaa9683705c4936220f000000000000000000000000001e33485d72889db3a5907b66574d443a30271d130a000000000016293b495356585a5c5e6062646668778da2b7b49f8977787b7c8082838687898b77624c37220d0000000000000000000000000000000000000013293e53687d94a9bfad98836c57422c1702000000000000000000000000000000000000000000000000000817242e33322f2b2824211e1a213548586162626262625e503e2b1702000000000000000000000000001d32475b708599aec1c6b19c8b86827c77736e6a65615c58534e4a464a55616d7985909ca8b4b7ab9f93887b6f6355432f1b06000f21313d45474a4b4d4f51535457585a5c5e6062636567696b6c6f7072747678797b7d80828486878993a7bbb5a08c77624d38240f0000000000001c32475c70879bb0a7927d756b61574e443a31271d140a0000000000000013273c5065798d9aa8b6ab9d8f82726457493b2d1f1103000000172c42576c8398adbda8937d68533e2913000000000000000000000000000000000d22374c62778da3b8b49f89735e48331e09000013273b4f63778b9fa19a938c857d7767523d281300000000000c21374c60768ca1b6a48f786864605d5e6d7c7d7a7773706c6865615d5a56524f525a626a7279828a9bb0a08c77634f3b271300000000000000000000000000000004172a3d5064778a9eb1b39f8c7865523e2b18050000000000000000000000001c31465b70879cb1a7927c67523c31271d140a000000000000001d314558676b6e6f72737677797b7d808ca1b7b6a2908d8f90939497989b9c9e8f78634e39240f0000000000000000000000000000000000000013283d52677c93a8bdad98836c57422c17020000000000000000000000000000000000000000000000000114263541484744403d3936322f2c3b50647677777777776e5a45301b06000000000000000000000000001f344a5f748795a3b1bfb19d8c7d6f67635e5a55514c47433e3a353138444f5b67727d8a96a2aebab1a5998d82725d48331e09000313202a30323436383a3c3e3f41434547494b4c4e50525456575a5b5d5f60636466686a6c6e70727c91a6bbb09c87725d49341f0a0000000000001a2f44596e8499aea8937d68584e443b31271e140a010000000000000005192d42566a8094a8b8a99b8d8070625447392b1d0f0100000000162b40566b8297acbfa9947d69543f2a14000000000000000000000000000000000d22374c62778ca1b7b49f89735e48331e0900000c2034485c7084938d867d77706a635a4a37240f00000000000f24394e63788ea3b7a18c77624f4f5e6d7c8c94908c8986827d7976726f6b6764605c59565e666e8297aca7937d6a56422e19050000000000000000000000000000000e2134475b6e8295a8bba895826e5b4734210e0000000000000000000000001a2f445a6f869aafa9947d68533e29140b0100000000000000001f344a5f7482838687898b8d8f9193959aa9bbbfaea3a2a4a5a8a9acadafb1a5907a65503b26110000000000000000000000000000000000000012273c52677c93a8bdad98846e58432e1903000000000000000000000000000000000000000000000000091d3143535d5c5855524e4b4744413d50667b8d8d8d8d87725c47321d09050100000000000000000000001d32465969768593a1afbaaa9c8e8070625446403c37332e2a25211c26323e4a55616d7885909ca8b7b7aa9f89735e48331e090000020e161b1d1f21232527282a2c2e3032343637393b3d3f40424446484a4c4e4f51535557585b6c8296abbfac97836d58442f1a06000000000000182d42576c8297acab96826b564132281e150b010000000000000000000b1f33485c70869aaeb39f8b7c6e61524437291b0d000000000000152b40546a8095abc0ab95806a54402b15000000000000000000000000000000000b21364b60768ca1b7b49f89735e48331e09000004192c4054687c8078716a635d554f473c2c1b08000000000011263b50657a90a5b49f8a745f4d5e6d7c8c9ba8a5a19e9a96938f8b8884807c7875716d645354697d93a8ae9a86715d4834200c00000000000000000000000000000005182b3e5165788c9fb2b19e8a7763503d2a16030000000000000000000000192e43586e8499aeab95806a543f2a15000000000000000000001e33485d7288989b9c9fa0a2a4a6a8aaadb7c6cdc0b8b7b9bbbdbfbfbcbab8a7927c67523c27120000000000000000000000000000000000000012273c52677c93a8bdaf99846e58432e19030000000000000000000000000000000000000000000000000e23384c6071716d6a6763605c5956524f64798fa3a39d88735e4833221e1a15110d090400000000000000172a3b4b59667483919eadbaac9e8f82726456483a2c1e1915100c0914202c38434f5b67727d8a9aaec2b5a08b745f4a341f0a000000000001070a0c0e1012131517191b1c1f20222426282a2b2d2f31333437383a3c3e4042475c70869aafbca7927d68543f2a1601000000000000152a3f54697d94a9ad98846e59442f1a0b0200000000000000000000001125394e62778ba0b4ac9884705e50423427190b00000000000000152a3f54697d94a9bfac97826b56402b16010000000000000000000000000000000b21364b60768ca1b7b49f89735e48331e090000001125394d606e6a645d564f48413b342b1e0e00000000000013283d52677c93a7b29d88725d54697c8c9baab9bab6b2afaba7a4a09c9995928e8a87826c575065798fa3b4a08c77634f3b2713000000000000000000000000000000000f2236495c6f8396a9baa793806c5946331f0c0000000000000000000000172c42576c8297acac97826b56412c17020000000000000000001c31465b70869bafb1b3b5b7b9bbbdbfc0c4cfd1c2b7b4b1afadaba9a7a5a3a1947d68543f2a140000000000000000000000000000000000000012273c52677c93a8bdaf99846e58432e190300000000000000000000000000000000000000000000000011263b5065798783807b7875716e6b676463788ea3b49f89745f4a3b37332e2a26221e19110600000000000c1d2d3b49566472808f9daab8ae9f91837466584a3c2e1f110300000613202d394753606d7a8898adc2b5a08b745f4a341f0a000000000000000000000000000000000006090b0d0f11131416181a1c1e2021232527292b374b60758a9fb4b7a28e78644f3a26110000000000000013283d52677c92a7b09b86705b46311c07000000000000000000000002172b4054687c92a6baa6927d69554032241709000000000000000013293e53687d93a8bdac97836c57422c17020000000000000000000000000000000b21364b60768ca1b7b49f89735e48331e090000000a1e31425159575049423b342d2620180d00000000000000152a3f546a8094a9b09b86705b53687d93a8b9b4a8a4a8acb0b4b8b5b2aeaaa6a39f94806a544c61768ba0b4a7937d6a56422d180000000000000000000000000000000006192c405366798da0b3b09c8975624e3b28150200000000000000000000162b40566b8095abad98836d58432e18030000000000000000001a2f44596e8499aeb9b7b5b3b1afadababb1bec5b3a49f9c9b98979492908e8c8a806b56402b160000000000000000000000000000000000000011263b50667b91a7bcaf99846f5a442f1a05000000000000000000000000000000000000000000000000152a3f54687d939894918d8a8783807c7875778da2b5a08b756054504c47433f3b37332d23160700000000000f1d2b38465462707d8d9aa8b6afa1938576685a4c3d2f2113050a1724303d4a5764717d8c98a5b5b5a99c8c76604b36210b000000000000000001090e0f0d0b080604010000000000000000000003080a0c0e101214273b5065798fa3b8b29e89745f4a36210c0000000000000010253a4f64798fa4b39d88735e49341f0a0000000000000000000000081d31465a6e8397acb49f8b77634e3a26140600000000000000000012273c52677c93a8bdad98836e58432e19030000000000000000000000000000000b21364b60768ca1b7b49f89735e48331e09000000011324333e44423b352e272019120c050000000000000000172c42576c8297acad98836e5851667b90a5bba8968f93979b9fa3a7abaeb2b6b8a7917c6752485d71879cb1ae99856f5a442f1a00000000000000000000000000000000001023374a5d708497abb8a5927d6b5744311e0a00000000000000000000142a3f54697d94a9af99846e59442f1a05000000000000000000182d42576c8297a6a4a2a09e9c9a989696a0b2bea99589878683827d7c7a7876747267533f2a150000000000000000000000000000000000000011263b50667b91a7bcb09b866f5a442f1a05000000000000000000000000000000000000000000000000182d42576c8297aba9a6a39f9c9895918e8b878ea2b7a18c776d6965605c5854504c47403425160700000000000d1b28364452606e7c8a98a6b4b1a2948677695b4d3f3123141b2834414e5b6875828f9ca9b6b1a4988b7d705e4a35200b0000000000000008141d232522201e1b191614110f0c0a080503000000000000000000172b4055697d93a8bdae99846f5a46311c08000000000000000e23384d62778da2b5a08b76604b36210c00000000000000000000000e23374b6074899db2ad9985705c48331f0b0000000000000000000011263b50667b91a7bcaf99846e59442f1a050000000000000000000000000000000b21364b60768ca1b7b4a08b745f4a341f0a000000000615222b2f2e28272a2c2e2c261b0e00000000000000001a2f44596e8499aeab96826b564f64788fa3b8a5907a7d83868a8e9296999da1a5a48f79644f455a6f859aafab96826b57422d180000000000000000000000000000000000071a2e4154677a8ea2b5ae9b8874604d3a27130000000000000000000013283d52677c93a8b09b86705b46301b06000000000000000000162b40556a8093918f8d8b89878683828398adbda8937c726f6e6b69676563615f5d57493724100000000000000000000000000000000000000011263b50667b91a7bcb09b866f5a442f1a050000000000000000000000000000000000000000000000061c31455a6f859aaaaeb1b4b4b1adaaa6a3a09c9facb9a49087837d7975716d6965605c52433425150600000000000b18263442505e6c7a8896a4b2b2a49688796b5d4f4132242c3845525f6c798693a0adb9ada09386796d6052422f1b0700000000000009172631383a373533302e2b292624221f1d1a181513100e0c090704061b3045596e8398adbea994806a56412c1803000000000000000b20364b60748b9fb4a38d78634e39240f000000000000000000000014293d52667a8fa3b8a7927d6a55412d19040000000000000000000010253b50647990a5bbb09b866f5a45301b070503010000000000000000000000000b21364b60768ca1b7b5a08b745f4a341f0a0000000514222c323437393c3f414341392c1c0a000000000000051c31465b70869bb0a9947d69544c62778ca1b7a8937d696d7074787c8285888c90948c76614c495e73889db2a7927c68533e29140000000000000000000000000000000000001125384b5e728599acb7a4907c695643301c0900000000000000000011273c51667b91a7b19c87725c47321d0700000000000000000014293e53687d7d7b79777673716f6d6c8297acbfa9947d695a58565452504e4c4a4843392b1a080000000000000000000000000000000000000011263b50667b91a6bbb09b86705b46301b0600000000000000000000000000000000000000000000000a1f34495e73889295999ca0a3a6aaadb1b4b4b1b3bcbfaea09b97938f8b87837d79757061524333241402000000000008162432404e5c6a778694a1afb4a6988a7b6d5f5142343c495663707d8a97a4b1b5a89c8f8275685c4f423424120000000000000a182735434d4f4c4a484543403e3b393734322f2d2b282623211e1c19172034495e73889cb1b9a48f7a66513c28130000000000000000091e33485d72889db2a5907b66503b261100000000000000000000061b2f43586c8295aab4a08c77634f3b261200000000000000000000000f243a4f64798fa4b9b19c87705b46301e1c1a18171513110f0e0c0a08060503010b21364b60768ca1b6b5a08b745f4a341f0a0000001122323f47494c4e51545658554a3a2714000000000000091e33485e73889db3a7917c67524a5f748a9fb4ac97826c585c6064686b6f73777b8083735f4a4d62778ca1b6a38e79644f3a2510000000000000000000000000000000000000081b2f4255697c8fa3b6ac9986725f4c38251200000000000000000010253a4f647990a5b39e89735e48331e0900000000000000000011263a4e606968666462605e5c5a586a8095abc0ab95806b5643413f3d3b393735332f271b0d000000000000000000000000000000000000000010253a4f647990a5bbb19c87705b46301b0600000000000000000000000000000000000000000000000a1f34495e71797c8084878b8e9195989c9fa2a6aab1c0beb5b0aca8a39f9b97938f8b8070615142311e0b000000000000061422303e4c5a677584919faeb6a89a8c7d6f6152444d5a6774828f9ba8b5b1a4978a7d7064574b3e3125160600000000000b1a283645536064625f5d5a585653504e4c49474442403d3b383633312f2c2a394e63778ca1b6b4a08b76614c38230e0000000000000000041c31465b70869bb0a8937d68533e2914000000000000000000000c2135495d72879bafae9a86715d4834200c00000000000000000000000e23384e63788ea3b8b29c88725c473433312f2e2c2a28262423211f1d1b1a18161420354a5f748ba0b5b5a08b745f4a341f0a000005192d40515c5e616366686b6e6857432f1a0500000000000b20364b60748ba0b5a48f79644f485d72889db2af9a86705b474b4f53575a5e62666a6e6b5a4651667b90a5b49f8b75604b36210d000000000000000000000000000000000000001326394c6073869aadb5a28f7b6854412e1b0700000000000000000e23384e63788ea3b49f8b745f4a34200a0000000000000000000b1e31424e5453514f4d4b49474554697d94a9bfac97826c57422c2a28262422201e1a140a0000000000000000000000000000000000000000000f253a4f647990a5bbb19c87705b46301b060000000000000000000000000000000000000000000000061b2f42536064686b6e7275787c8083878a8d9195a2b4b8aba5a8acafb3b0aca8a39e8f8070604e3a2510000000000000000412202e3c49576573828f9eabb7a99b8d807062545e6b7885929facb9ac9f9386796c605346392d20140700000000000a1a293846546371797774726f6d6b686663615e5c5a575452504d4b484644413f3e52677c91a6bab09b86715d48331e09000000000000000005192e43586e8398adab95806b56402c160100000000000000000012263b4f64788da1b5a793806a56422e190500000000000000000000000d22374c62778da3b8b39d88735e4c4a48464443413f3d3b3a38363432302f2d2b2a28344a5f748ba0b5b5a08b745f4a341f0a0000091e33485d6f7376787b7d8284725c47321d0800000000000e23384d62778da2b7a28d77624d465b70869bb0b29d88735e49363a3e42464a4d515559584d4055697d94a9b19c87715c47331e09000000000000000000000000000000000000000a1d3043566a7d91a4b7ab9885715d4a37241000000000000000000d22374c62778da2b6a18c76604b36210c000000000000000000021323313b3f3e3c3a383634323d52677c93a8bdad98836d58432e1913110f0d0b080300000000000000000000000000000000000000000000000f253a4f647990a5bbb19c87705c47311c07000000000000000000000000000000000000000000000000122535434b4f5356595d6064676a6e7174787b869aafad9a9093979a9ea1a5a8b2ae9e8f7c67523c2712000000000000000002101e2c3947556370808e9ba9b7ab9d8f8072646f7c8996a3b0b4a89b8f8275685b4f4235281c0f0300000000000215283847566472828f8c8a888683807d7b787673716f6c6a676562605e5b58565451576c8296aabfab96826c58432e1a050000000000010a1219202c41566b8296abad98836d58432e1904000000000000000004182d41556a7d93a7b5a18d7864503b27130000000000000000000000000c21364b60768ca1b7b49f897363605f5d5b5a58565452504f4d4b4a47464442403f3d3b4a5f748ba0b5b5a08b745f4a341f0a00000a1f34495e73898c8e9193968a745f4a35200b000000000010253a4f64798fa4b5a08b75604b44586e8498adb6a18c76614c382d33393e44494f5048433b44586d8397acad98836e59442f1a05000000000000000000000000000000000000000114273a4d6174889baeb4a08d796653402c1906000000000000000b21364b60768ba0b5a38d77624d38230e0000000000000000000005141f272a29272523211f273c51667b91a7bcaf99846f5a442f1a0500000000000000000000000000000000000000000000000000000000000f253a4f647990a5bab39d88725c47321d0700000000000000000000000000000000000000000000000007172530373a3e4144484b4f5255595c60636e8499aea9947d7d8286898c9095a5b8a5907a66503b2611000000000000000000000e1b29374553616f7d8b99a7b5ad9e908273808d9aa7b4b0a3978a7d7064574a3d3124170b00000000000000091e324556657383919fa19f9c9a989593908e8c89878482807c79777573706e6b69666470869aafbba6927c68533e2a15000000000005131e262d343b4353687d93a8af9b86705b46311c0600000000000000000a1e33475b708599adaf9a86725d4935210c0000000000000000000000000b20354b5f748ba0b5b5a08b7977767472706f6d6b6967666462605f5c5b5957565452504e5f748ba0b5b5a08b745f4a341f0a0000061c31465b70869ba3a6a8a18c77624d38230e000000000012273c51667b91a7b39d88735e4841576b8297acb9a48f7965503c42484d53585e6365594734475c71879bb0a994806a55402b160100000000000000000000000000000000000000000b1e3144586b7d92a5b8a996836f5c4935220f000000000000000a1f344a5f74899fb4a48f78634e39240f0000000000000000000000020c12151412100e0c10253a4f647990a5bab09b86705b46301b0600000000000000000000000000000000000000000000000000000000000e23384e63788fa4b9b39d88725c47321d070000000000000000000000000000000000000000000000000008141c2225292c2f33363a3d4044474b576c8398adab95806b6c7073777a8ba0b5a48f79644f3a250f00000000000000000000000b19273543515f6d7a8997a5b2aea09287919eabb8ac9f9286796c5f5246392c20130600000000000000000c22374c61748492a1afb7b4b2afadaba8a5a3a09e9c99979492908d8b888684827d7b79778a9fb4b6a28d78634e3a2510000000000314233039414850575e667b91a6b29d88725d48331e0900000000000000001024394d61768a9fb3a894806b57432e1a060000000000000000000000000a1f344a5f74899fb4b8a4948f8d8c8a88878483827d7c7b7977767372706e6c6b6867656362748ba0b5b5a08b76604b36210b000000192f44586e8398adbbb9a48f7965503b2610000000000014293f53687d94a8b09b86705b463f54697d94a9bca7937d685351565c62676d727877634e394b60758a9fb4a5907b66513c27120000000000000000000000000000000000000000000215283b4e6275899cafb29f8c7865513e2b1804000000000000071e33485d72889db3a5907965503b261000000000000000000000000000000000000000000f24394e63788fa4b9b19c87715c47321d0700000000000000000000000000000000000000000000000000000000000e23384e63788fa4b9b39d88725c47321d08000000000000000000000000000000000000000000000000000001080d1014171a1e2125282c2f3240566b8297acac97826c585b5e62768ca1b7a38d78634e38230e00000000000000000000000009172533414f5d6a788795a2b0b0a29ca2afb4a79b8e8274675b4e4135281b0f020000000000000000000d22374c62778da2b0bfc2bab9bbbebfbdbbb8b5b3b1aeaca9a7a5a2a09d9b989694918f8c91a4b8b29d88735e4a35200c000000000d2032414d555c636b7279828fa4b4a08b75604b36210c0000000000000000152a3f53677c90a5b6a28d7965503c281400000000000000000000000000081e33485e73899eb3c1b1a7a4a3a19f9d9c9998969493918f8d8b8988868483807d7c7a7877758ba0b5b7a18c76604b36210b000000172c41566b8296abc0bca7927c67523d28130000000000162c40566b8296abae99846e59443d52677c92a7bcab96826b60656b70767c82878d7c67523d4f64788ea3b6a18c77624d38240f000000000000000000000000000000000000000000000c1f3346596c8093a6b9a895826d5a4734200d000000000000011c31465b70879cb1a7917b67523c271200000000000000000000000000000000000000000d22374c62778da2b7b39d88735e48331e0900000000000000000000000000000000000000000000000000000000000e23384e63788fa4b9b49f89735e48331e09000000000000000000000000000000000000000000000000000000000000000004090c1013171a2a3f546a8095abad98836e58464c62778da3b7a18c77624c37220d00000000000000000000000000071523313f4d5a68768592a0aeb5b1b5b0a3968a7c7063564a3d3024170a00000000000000000000000c21364b60768ca1b7c1b0a6a4a6a8abadb0b2b4b7b9bbbebfbcbab7b5b3b0adaba8a6a4a1a4afc0ad98846f5a45301b070000000014293d4f5f69707780878e959eacb3a18d77634d38230e0000000000000000182d42576c8297abaf9b87725e4a36210d00000000000000000000000000021d32475c72889db3c7c3bcb9b8b6b4b3b1afadaba9a8a6a4a2a09f9d9b9997959492908f8c8b8fa2b6b7a18c76604b36210b00000014293e53687d93a8bdbfaa95806a55402b160100000000192e43586d8398adac97826c57423b50657990a5baae99846f747980868b90969c95806b564153687c92a7b39e89735e4a35200b0000000000000000000000000000000000000000000003162a3d5063768a9eb1b19e8a7663503d2916030000000000001b30455a6f869bafa8937d68533e291300000000000000000000000000000000000000000b21364b60768ca0b5b49f89745f4a341f0a00000000000000000000000000000000000000000000000000000000000e23384e63788ea3b8b49f89735e48331e0f010000000000000000000000000000000000000000000000000000000000000004090d12171b20293e53687d94a9af99856f5a515563788da3b5a08b75604b36210b00000000000000000000000000000513212f3d4a5866748290a3b8c7b5a29285786b5f5245392c1f13060000000000000000000000000b20364b60758ba0b5b7a3928f919496989b9d9fa2a4a7a9abadb0b2b4b7b9bcbebebbb9b7b8c0b8a8947d6a55402c170200000000172c42576c7c858c939aa2a9b1b6a89684715f4b37220d00000000000000001a2f44596e8499aea995806c58432f1b0700000000000000000000000000001c31465b70879cb1c7bdb3b0b1b3b5b7b9bbbdbfbfbdbbb9b7b5b4b2b0afacaba9a7a5a4a1a0a2aebeb7a18c76604b36210b00000011263b50667b90a5bac2ac97836d58432e1904000000001b30455a6f869aafa994806a543f384e63788da3b8b29d8883898f949a9fa5abae99846f5a45576b8296abaf9a86705b46311c0700000000000000000000000000000000000000000000000d2034475a6d8295a8baa693806c5946321f0b000000000000192e43586e8499aea994806a543f2a1500000000000000000000000000000000000000000a1f344a5f748a9fb4b5a08b76604b36210b00000000000000000000000000000000000000000000000000000000000d22374c62778da3b8b49f89735e493b2d1f11030000000000000000000000000000000000000000000000000000060b1014191e22272b3034393e52677c93a8b09b867063666a6e788fa4b49f89745f4a341f0a00000000000000000000000000010e1b2734414e5a6774828fa2b7c8b39e89796b5e504234281b0e02000000000000000000000000000a1f344a5f748ba0b5b5a08b797b7d828386888b8d8f919496989b9da0a2a4a7a9abadb0b3b5b3a69a8e7965503c27120000000000192e43586e84989fa7aeb6b1a9a29a8a78665442301c0800000000000000001c31465b70869bb0a38e7965513d29140000000000000000000000000000001b30455a6f869bb0c1ae9f9b9c9fa0a2a4a5a8a9abadafb1b3b4b7b8babcbec0bebcbbb9b7b5b6beccb7a18c76604b36210b0000000f24394e63788da3b8c4af9a86705b46311c06000000001d32475c72879cb1a7927c675a4d404b60768ba0b5b7a597989da3a9aeb4b6b1ac9c88725d495a6f8599aeab96826c57422d1803000000000000000000000000000000000000000000000004172b3e5164778b9fb2af9c8975614e3b2814010000000000172c42576c8397acab96826b56402b160100000000000000000000000000000000000000081e33485e73889db3b7a18c77624c37220d00000000000000000000000000000000000000000000000000000000000d22374c62778da3b8b5a08b7567594b3d2f211204000000000000000000000000000000000000000000000007121b2025292e32373b4045494e5257667b91a7b19c8874787b80838791a5b39d88735e48331e0900000000000000000000000005121f2c3845525f6b7885929fadbdbbb8a6978a7b6e60524537291c0e00000000000000000000000000091e33485e73899fb4b7a18c7666686b6e70727477797b7d828386888b8d8f919496989b9da0a195897c705f4b37220d00000000001b30455a6f869bb0bbc2af9f958e87806d5b493725130000000000000000001e33485d72889db2a6927c68543f2b160200000000000000000000000000001a2f445a6f8499afbba6918687898b8d8f90939497989a9c9da0a1a3a5a7a9abacafb0b2b4b6b8c0ccb7a18c76604b36210b0000000c21364b60758ba0b5c7b29d88725d48331e09000000001f344a5f74899fb4a89485786b5e51495e73899fb2beb4acacb2b6b1aca6a19c97928b76614c5e73889db2a7927c68533e2914000000000000000000000000000000000000000000000000000e2235485b6f8296a9b8a5927d6a5744311d0a0000000000162b40566b8296abad98836c57422d180300000000000000000000000000000000000000031d32475c71879cb1b8a38e78634e38230e00000000000000000000000000000000000000000000000000000000000d22374c62778da3b8b8a4938577695b4d3f302214060000000000000000000000000000000000000000000817252f35393e42474c5055595e62676c707990a5b39f8c898d9194989ba1afb19c87715c47321d0700000000000000000000000a1623303d495663707c8a96a3b0b4a9a5adb5a79a8c7d70625547392c1e10030000000000000000000000051e33485d72889db3b7a28d77625456585b5d5f626467696b6e70727477797c7d828486888b8d84776b5e5142301c0800000000001d32475c72879cb1c7bfa9948279726b61503e2c1a070000000000000000001f344a5f74899eb2ac97836e5a45311c080000000000000000000000000000192e43586e8499aebca7917b72737577787b7c8082838687888b8c8e9092949597999b9d9fa1a4afbfb7a18c76604b36210b000000091e33485e73889db2c7b5a08b75604b36210c000000001f34495d718599adb2a396897c6f62555c718794a1aeb5b0aba6a19c97928d88837d7871604d62778ca1b6a38f79644f3a26110000000000000000000000000000000000000000000000000005182c3f5266798da0b3ae9b8773604d3a26130000000000152a3f54697d94a9ae99846e58432e190400000000000000000000000000000000000000001b30465b70869bb0b9a48f79644f3a250f000000000000000000000000000000000000000000000000000000000b1822374c6175889baec0b1a39587796b5d4e40322416080000000000000000000000000000000000000002142635424a4e53575c6065696e73777c82868a94a7bbaa9f9fa2a6a9adb0b5b9a79685705b46301b06000000000000000000010e1b2734414e5a6774828e9ba7b4b0a396909dabb8aa9c8f827265574a3c2e21130500000000000000000000001d32475c72889db2b8a38d78634e414346484b4d4f525456585b5d60626467696b6e707375777266594d413324130000000000001e33485e73899eaab5c0ad9b8f83786d61503e2c1a080000000000000000001c31465a6f8498acb19d88745f4b36220d0000000000000000000000000000172c42576c8398adbca7937c675e60626466676a6b6d6f7073747778797c7d8083848688898c91a2b6b7a18c77624c37220d000000051c31465b70869bafc4b8a38d78634e39240f000000001a2e4255697d91a2afb4a79a8d80736659697683909da19c97928c88837c77736d68635e5351667a90a5b4a08b76604c37220d0000000000000000000000000000000000000000000000000000102336495d708397aab6a3907c6956422f1c080000000013283e53687c93a8b09b866f5a45301b0600000000000000000000000000000000000000001a2f44596e8499afbba5907b66503b26110800000000000000000000000000000000000000000000000000000a1a29353d45586b7d92a2b0beb3a597897a6c5e50423426180a0000000000000000000000000000000000000d1f3143535e63676c7075797d83888c91969a9fa5b2c4bbb3b3b7b5b4b2b0afad9b8a786755412d1904000000000000000005121f2c3845525f6b7885929facb8ac9f92867d8d9ba9b7ad9f918375685a4c3f31231508000000000000000000001c31465b70879cb1b9a48f78634e392e303335383a3c3f414346484b4d4f525456585b5e60626054483c302315060000000000001f344a5f74828d98a3aeb8aba1968b806e5c4a372512000000000000000000172c4055697d92a7b7a38e7965503c28130000000000000000000000000000172c41566b8297acbda8937d68534b4d4f50525456585a5c5e5f62636567686b6c6e70727476899fb4b8a38d77624c37220d00000000192e43586d8398adc2baa5907b66513c27110000000012263a4e617584919eabb7ab9e9184776a5d6571808c8c87827c77726d68635e59544f4a4254697d94a8b19c87725d48331e090000000000000000000000000000000001030507090b0d0f1012141a2d4053677a8ea1b4ac9986725f4b3825110000000012273c51667b91a7b19c87705c47311c070000000000000000000000000000000000000000182e43586d8398adbca7927c67523c2c241b130a0100000000000000000000000000000000000000000000091928384752544e62758492a0aebdb5a7998b7c6e60524436281a0c0000000000000000000000000000000005172a3c4e6071777c82868a8f93989ca1a6aaafb3b7bec5b4a8a4a2a09f9d9b99988f7d6c5a4938261200000000000000000a1623303d495663707c8a96a3b0b5a89b8f82746e7c8b99a7b5afa19486786a5d4f41332617070000000000000000001b30465b70869bb0baa59079644f3a251b1e202325272a2c2e313336383a3c3f414446484b4d4c43372b1e1205000000000000001c31445765707a86909ba6b1b3a89d8b796755422d1904000000000000000011263b4f64788da2b6a894806b56422d190400000000000000000000000000162b40556a8095abbfa9947d69543f383a3b3d3f41434447484a4c4e5052545657595b5d5f72889db3b8a38d77624c37220d00000000162b40556a8095aabfbda8937d68533f2914000000000b1e3246586673808d9aa6b3afa295887a6e61616e7a77726d68635e59534e49443f3b3f43586d8397acad98836e59442f1a05000000000000000507090b0d0f10121416181a1c1e2022242627292b2d374a5e718598abb5a28f7a6754412e1a0700000010253a4f647990a5b39d88725d48331e090000000000000000000000000000000000000000172c41566b8297acbda8937d68534840372e261d150c020000000000000000000000000000000000000008182737465665695d57667382909eadbbb7a99b8d7d70615345382a1b0d00000000000000000000000000000011223547596b7d8d91969a9fa3a8adb1b0ada9a6a2a2adbca8968f8d8b89888684838271604e3d2c1a09000000000000000d1b2734414e5a6774828e9ba7b4b1a4988b7d70635e6c7a8997a5b3b1a496897a6d5f51443525130000000000000000001a2f445a6f869aafbba5907b66503b2611090b0e10121417191c1e202325272a2c2f31333638373025190d09030000000000000015283947535d68737d89949fa9b6a99785705b46301b0600000000000000000c21354a5e73889cb1ae9a86705c48331e0a00000000000000000000000000152a3f546a8094a9bfab95806a55402b2426282a2c2e2f32333537393b3c3f40424446485c72889db3b8a38d77624c37220d0000000014283e53687c93a7bcc0ab96826b56412c17020000000316293a4855626f7c8996a2afb3a6998c8071655d66625d58534e49443f4145494c5053575c71879bb0a994806a55402b170200000000010d151a1c1e20222426272a2b2d2f31333537393b3c3f4042444655687b8fa2b5ab9884705d4a3623100000000f24394e63788fa3b49f89745f4a341f0a0000000000000000000000000000000000000000152b40546a8095abbfaa95806d645c534b423931281f1304000000000000000000000000000000000007162636455564747b6d5e566472808f9dabb9b9ab9d8f8071635547392b1d0f0100000000000000000000000000192d40526476899ba6abafaca9a5a29f9b9894918d8fa0b4a48f7977767472706f6c6b635342311f0e000000000000000a1b2b3845525f6b7885929facb8ada09487796d5f524e5d6b798895a3b2b4a6998b7d6f6153422f1c070000000000000000192e43586e8499afbca7917b66513c2712000000000000000004090b0e10121517191c1e2023221e2022221e160b0000000000000a1b2a35404b56616b76828c98a9b29c88725c47321d080000000000000000071b3044596d8297abb49f8b76624d3924100000000000000000000000000013293e53687d94a9beac97826b56412c1711131517191a1c1e20222426272a2b2d2f32475c72889db3b8a38d77624c37220d0000000011263b50657990a5bac3ae99846e59442f1a05000000000b1c2b3744515e6b7785919eabb7aa9d908375685c4f494444484c4f53565a5d6165686c70748a9fb4a5907b66513d28130000000002121f292f31333537393b3c3f40424446484a4c4e50525356575a5b5d5f728699acb3a08d7966533f2c190500000d22374c62778da2b5a08b76604b36210b000000000000000000000000000000000000000014293e53687d94a9beac988982776f665e554d443b312212000000000000000000000000000000000615253444536372838b7c6d5f546270808d9ba9b7bbad9e9082736557493b2d1f11030000000000000000000000001e33485d6f8294a6b8b1a09794908d898783807b78889db3a6917b66605f5d5b5a575651453625130200000000000000142739495663707c8a96a3b0b6a99d908375685c4f423f4d5b69778694a2b0b7a99b8e80715f4a35200b0000000000000000182e43586d8398adbda8937c67523c2712080a0c0e10121416171a1b1d1f21232527292b2d2f313334373732281b0b0000000000000c18232e39444e59646f7990a5b49f89735e49341f0a000000000000000000162a3f53687c91a5b9a5917c68533e2a160100000000000000000000000012273c52677c93a8bdad98836c57422c1702000000000004090b0d0f11121416181d32475c72889db3b8a38d77624c37220d000000000e23384d62778da2b7c5b09b87705c47321c0700000000000d1a2633404d5a6773808e9aa7b4aea19487796d605356595d6064686b6f7276797d82868990a3b6a28d77634e39240f000000000f20303c4346484a4c4e50525456575a5b5d5f61636567686b6c6f707274767c90a5bba996836f5c4835220e00000b21364b60768ba0b5a28d77624c37220d000000000000000000000000000000000000000012273c52677c93a7bab6a69d948c837a726960574e402f1d090000000000000000000000000000041423334352627182919b8c7d6e6052616f7d8c9aa8b6bcaea092847567594b3d2f21130400000000000000000000001f34495e728597a9bbab9683807b7774716d6a6670879cb1a7927c67524a48464442403d3427180700000000000000001a2f43576774828e9ba7b4b2a5998c7d7164584b3e312f3d4b5967758492a0aeb9ac9e8c76604c37210c0000000000000000172c42576c8398adbea8947d68533e291b1d1f21232527292b2c2f30323436383a3c3e40424446484a4c4c463929170400000000000006111c26313c475263788fa3b5a08b75604b36200b0000000000000000001025394e62778ca0b5ab96826d5944301b0700000000000000000000000012273c51667b91a7bcae99846e58432e19030000000000000000000000000000001d32475c72889db3b8a38d77624c37220d000000000b20364b60748a9fb4c8b39e89735f4a341f0a0000000000000916222f3c4956626f7c8996a3b0b1a5988b7d70676b6e7276797c8284888c8f93979a9ea2aeb39e89745f4a35200b00000000182b3e4e585b5d5f61636567686b6c6f7072747678797c7d80838487888a8c8e96a8bdb29f8c7764513e291500000a1f344a5f74899fb4a38f78634e38230e000000000000000000000000000000000000000011263b5065798b9caebdb9b0a89f968e857c736b5e4c38240f0000000000000000000000000004132332425161708090a0aa9c8d7d6f61515f6d7b8a98a6b4beb0a2948677695b4d3f31231406000000000000000000001b2f425467798c9eb1ae9b897666635f5c58555a6f869bb0a8947d68533e33312f2d2b2921170a0100000000000000001d32475c7285929facb8b1a195887a6e6053473a2d201f2d3b495765738290a2b6b8a38d77624c37220d0000000000000000162b40566b8297acbfa9947d69543f2e30323436383a3c3e40424446474a4b4e4f51535557595b5d5f6161574734200b000000000000000009141f2a374c62778ca1b7a18c77624c37220d0000000000000000000a1f34485d71869aafb19c88735e4a36210c00000000000000000000000011263b50657a90a5bbaf99856f5a442f1a050000000000000000000000000000001d32475c72889db3b8a38d78634e38230e00000000091e33485d72889cb2c7b6a18c76614c37220d0000000000000005111e2b3845525e6b7885929facb5a99c8f827c8084878b8f9296999da0a4a8abafb3b7b2a49586705b46311c07000000001e33475b6b7072747678797c7d80838487888a8c8e9092949597999b9d9fa1a3a8b4c5bba895826c57422c170000081e33485d72889db3a59079644f3a251000000000000000000000000000000000000000000e22364a5c6d8090a1aab2bbbbb2aaa19990887b66503b26110000000000000000000000000312223141506070808f9eaebaab9d8e806b564f5d6b798896a4b2c0b2a49688796b5d4f41322416080000000000000000001325374a5c6f8294a6b8a593806d5b4a474443586e8499aeaa95806a543f2a212324262828251e1204000000000000001a2f445a6f8499aebcbfaa9584766a6159514941393028202d3d4c5c6c7c8ca0b4b8a38d77634d38230e0000000000000000162b40556a8095abc0ab95806a5442434647494b4d4f51535557595b5c5f60636466686a6c6e7072747675634e39240f000000000000000000020d20364b60748ba0b5a38f78634e39240f000000000000000000051a2e43576c8095aab6a28d7864503b27120000000000000000000000000f253a4f64798fa4b9b09b86705b46301b060000000000000000000000000000001d32475c72889db3b9a48f78634e38230e00000000041b30455a6f859aafc4b9a48f79644f3a25100000000000000000000d1a2734414d5a6774828e9ba7b5ac9f939195989ca0a3a7abaeb2b5b4b1ada9a6a29f9586776856422d1904000000001f344a5f7487888a8c8e9092949598999b9d9fa1a3a5a7a9abacafb0b3b4b6b8bcc2c0b19f8c796754402b160000021c32475c70879cb1a7917b66513c27110000000000000000000000000000000000000000071a2c3e4f6172848e969fa8b0b9bdb5ac9b8773604c38240f000000000000000000000001112130404f5f6e7d8e9eaebdb2a293837363513f4d5b69778694a2b0beb3a597897b6d5f51423426180a0000000000000000081a2d3f516476899baeb09d8a776553402f42576c8398adab96826b56403436383a3b3d3e3a30231201000000000000182d42576c8297acc0c0ac998d867d756d645c544c443c343b4b5b6a7a8b9aaabbad9d8e78634e38230e0000000000000000152a3f546a8095aabfac97826b5657585b5c5e60626466686a6c6e7072747677797b7d80838486888a8c7b66503b261100000000000000000000091f34495e73899eb3a5907965503b26100000000000000000000014293d52667a8fa4b8a7937d6a55412c180900000000000000000000000e23384e63788fa4b9b19c87705c47311c070000000000000000000000000000001d32475c72879cb1b9a48f78634e38230e0000000000182d42576c8397acc1bba7917c67523d281300000000000000000000091623303c495663707d8a97a3b0b0a7a6aaadb1b4b4b1aeaaa6a39f9c9894918d8a857667594a39271300000000001e33485e73889d9fa1a3a5a7a9abadafb0b3b4b6b8babcbebdbbb9b8b6b4b3b0afadaba694826f5c4a3724110000001b30455a6f869bb0a8937c67523d28130000000000000000000000000000000000000000000f2032435566727a838c949da5aeb6a6927d6a5744301d090000000000000000000000101f2f3f4e5e6d7d8d9dacbcb3a4948574655545353d4b5967758492a0aebdb5a7998b7d6f60524436281a0c000000000000000010223547596c7d91a3b5a895826f5d4a3840566b8296abac97836c5747494b4c4f5052534d41301e0b000000000000152a3f54697d94a8b1b9b7a9a19991898278706860585048495969788999a9b8ae9e8f806f5e4b36210d000000000000000014293e53687d94a9bfac97826c6a6c6e7072737677797b7d8082848688898c8d8f91939597999b9d9f937c67523d281300000000000000000000061d32475c72879cb1a7917c67523c2712000000000000000000000f23384c60758a9fb3ad9984705b473427190c000000000000000000000d22374c62778da3b8b39d88725c47321d080000000000000000000000000000001b30465b70879cb1b9a48f78634e38230e0000000000162b40556a8094a9bfbea994806a543f2a15000000000000000000000005121f2c3845525f6c7886929facb2b2aeaba7a3a09c9995918e8a8783807b7874716658493b2c1c0a00000000001c32475c70879cb1b6b8babcbdbcbab8b6b4b3b1afadaca9a8a6a4a3a19f9d9b99989694897664523f2d1a08000000192e43586e8499aea9947d69543f2a140000000000000000000000000000000000000000000314263748555e666f778289929ba39d8a76624f3b281401000000000000000000000f1e2e3d4d5d6c7c8c9cabbbb5a595867566564737282d3c4a58667482909fadbbb7a99b8d7d70625446382a1c0e0000000000000005172a3c4e61738698abb29f8d7a6754423f546a8095aaae99846e5b5c5e6062646667685f4d3a261100000000000012273c51667b8c959da6aeb6b5ada49c948c847c736b635b5767778797a7b7afa09080706151412e1b07000000000000000013283d53687c93a8bdad98837c8082848688898b8d8f91939597999b9d9fa1a3a4a7a8abacaeb0b2a9947d69543f2a1500000000000000000000001b30455a6f869bb0a8937d68533e291400000000000000000000091d32475b708599adb39f8a75615245372a1c0e0000000000000000000c21374c60768ca1b7b49f89735e48331e090000000000000000000000000000001b30465b70879cb1b9a48f78634e38230e000000000013283d52677c92a7bcc1ac97826c57422d18030000000000000000000000010e1b2734414e5b6874828f999e9c9996928f8b8784807c7875716e6a67635f5c56483a2b1d0e0000000000001a2f445a6f869aafafadacaaa8a7a5a3a19f9d9c9a98979493918f8d8c8a88878483827d7c6c5a4735221000000000182d42576c8397acab95806b56402b1606000000000000000000000000000000000000000000081a2a38424b535c646d767d879095826d5a46331f0c000000000000000000000d1d2d3c4c5b6b7a8b9aaabab6a69787776758483829191e2c3a48566472828f9dabb9b9ab9d8f80726456483a2c1e0f010000000000000d1f314456687b8ea0b2a99785715f4f5459687d93a8af9a866f7072737577787b7c7d69543f2a140000000000000f24394e616f78828a929ba3acb4b8b0a8a098908880776f67758695a5b5b1a191827161524232231100000000000000000012273c52677c92a7bcb19e92939597999b9c9fa0a3a4a6a8aaacaeb0b2b4b6b8b9bcbdc0bfbcbbb8ab96826b56402c160100000000000000000000192e43586e8499aeaa95806a54402b150000000000000000000003182d41556a8093a8b9a4907d706355473a2c1e1103000000000000000b21364b60758ba0b5b49f8b745f4a341f0a0000000000000000000000000000001b30465b70879cb1b9a48f78634e38230e000000000010253a4f64798fa4b9c4af99856f5a45301b06000000000000000000000000000a1623303d4a5763707d84898884827c7976726e6b6764605c5955524e4b4742382a1c0d00000000000000192e43586d83989c9b9897959391908d8c8b8887868382807c7b7977767472706f6d6b69675f4f3d2a180500000000162b40566b8296abac97826c57422c221a110600000000000000000000000000000000000000000c1a262e374048515a626a737c857965513e2b17040000000000000000000c1c2b3b4a5a6a798a99a9b8b7a79888786859493a2a1a0b0e1c2a3846546270808d9ba9b7bbad9e9082736658493c2d1f11030000000000021427394c5e708395a8b4a18f7c6963686d737c92a7b09b88848688898b8d8f9092826b56402b160100000000000a1e3143525c646d767d879098a1a9b2bab3aba39b938b837a8494a4b3b2a39383736353443424140500000000000000000011263b50667b91a7bcbcaea7a8aaacaeb0b1b4b5b8b9bbbdbfbfbdbbb9b7b5b3b1afadaba9a7a5a3a198836d58432e180300000000000000000000172c42576c8297acac97826b57412c17070000000000000000000012273b5065798ea2b7ad9d8f827365584a3c2f2113050000000000000a1f344a5f748a9fb4b5a08b76604b36210b0000000000000000000000000000001b30465b70879cb1b5a48f78634e38230e00000000000e23384d62778ca1b6c6b19c88725d48331e09000000000000000000000000000006121f2c3946525f6a6f74726f6b6864605d5956524f4b4744403d3936322e261a0c0000000000000000172c41566b828987868382807d7b7978767473706f6d6b6a68666463605f5d5b5a585654524d4132200d0000000000152a3f546a8094a9ad98836e58473e362d241809000000000000000000000000000000000000000009131b242c353e464e57606971705d4936220f0000000000000000000b1b2a3a495968788898a7b7b8a9998979695a4a3b2b1c0c00000c1a28364452616f7d8c9aa8b6bdaea092847567594b3d2f21130400000000000a1c2e415366788a9dafac998673787d83888d97aab7a599999b9c9fa0a2a4a598836c58432d18030000000000021425344049515a626b737c858d969ea7afb8b7afa79f968f92a2b2b4a4948574645545352616060000000000000000000010263b50657990a2b0bec1bcbdbfbfbdbbb9b8b5b4b2b0aeacaaa8a6a4a2a09e9c9a98969493908f8c8b846f5a442f1a0500000000000000000000162b40556a8095abad98836e58432e231a120800000000000000000d22364a5f738899a6b4ad9f918475685a4d3f312316080000000000091e33485e73899fa0a0a08c76614c37220d0000000000000000000000000000001b30465b70879ca0a0a08f78644f3a240f00000000000b20354a5f74899fb4c9b49f8a745f4b35200b000000000000000000000000000000010e1b2835424e565a5f5d5a56534f4c4844413d3a36322f2b2824211d191309000000000000000000152a3e53677473716f6e6c6a68666463615f5e5c5a58565453514f4d4b4a48464443413f3d3930231402000000000013283e53687d93a8af9a866f635a51494036271604000000000000000000000000000000000000000000081019212a333b444d555d5d51412e1a0600000000000000000a192939485867778797a6b6b9aa9a8b7a6b5b4c3c2c1d0d000000000a18263442515f6d7b8a98a6b4beb0a2948677695b4d3f312313020000000000112436495b6d8092a5b6a391888d92979ca2a8b5c3b5aeaeb0b2b4b5b4b2af99846f5a442f1a050000000000000716232d353e464f5760687179838b939ca5adb5bab2aaa3a5b0b5a69686766656473727170800000000000000000000000f24394e63768592a0aeb2b0aeacaba8a7a4a3a09f9c9b99979593918f8d8b89878683827d7c7a787774736a57432e19040000000000000000000014293e53687d94a8af9a866f5a473f362e25190b00000000000000081c3045596c7a8996a4b2afa19486786a5d4f413426180b00000000041d32475c72888b8b8b8b8b77624d38230e0000000000000000000000000000001b30465b70878b8b8b8b8b79644f3a250f0000000000081d32475c71879cb1c6b7a28d77624d38230e00000000000000000000000000000000000a1724313b41464a4945413e3a37332f2c2825211e1a17130f0c0803000000000000000000000010243749585f5e5c5a58575453514f4e4c4a48474443413f3e3c3a38363433312f2e2c2a28251e130500000000000012273c51667b91a7b09b8880766d655c534534210d0000000000000000000000000000000000000000000000050e171f28303942494941332311000000000000000009182837475666768696a5b5bbab9b8c7b6c5c4d3d2e1e0e00000000000008162432414f5d6b798896a4b2c0b2a49688796b5d4f41311f0d000000000007192b3e506375889aacafa19ca2a7acb1b3b4bdc6b6aba8a5a4a2a09f9d9b9987705b46311c0700000000000000051019222a333b444c555d666f778089919aa2abb3bcb8b9b7a7978877685848382919090000000000000000000000000c20344758667483909f9d9b99979593918f8d8b8988868482807c7b79777573716f6d6b69676663625f5e594c3b2814000000000000000000000012273c52677c91a7b19c8770635b524a413729190600000000000001162a3d4e5c6a788694a2afb2a496897a6d5f514436281a0a000000001c31465b6e74747474747472614c38230d0000000000000000000000000000001b3045596d74747474747473624e39240f0000000000021a2f445a6f8499aec3baa5907965503b261100000000000000000000000000000000000006131f272c313434302c2925221e1a1713100c09040000000000000000000000000000000000081a2c3b454a4847454342403e3c3a38373533312f2e2c2a28272523211f1e1c1a18171513100a010000000000000010263b50657990a5b7a69b928a82787063503c271200000000000000000000000000000000000000000000000000030c141d262e34342e2315050000000000000007172736465565748594a4b3bcac9d8d7d6d5e4e3e2f1f100000000000000000061523313f4d5b69778694a2b0beb4a6988a7b6d5f4f3c28140000000000000e213345586a7c8fa2b2b4b2b1aca7a29ea0adbca89893908f8d8b8988868483725c47321d07000000000000000000060e171f283039414a535b636c757d868f97a0a8b1aea999897969594a3a2a1a0b0000000000000000000000000005182a3a48566472828a88868482807d7b7977767372706e6c6a68666462605e5c5a58565452504e4c4a48453c2e1d0b000000000000000000000010263b50657990a5b39e8a80776e665d544736230f000000000000000d1f303e4c5a687584919fadb4a7998c7d7061544638281603000000172b3e505c5f5f5f5f5f5f5e5444311e09000000000000000000000000000000162a3d4f5c5f5f5f5f5f5f5e5545331f0b000000000000182d42576c8297acc0bca7937c68533e291400000000000000000000000000000000000000020c13181c1f1f1b1714100d09040000000000000000000000000000000000000000000000000e1d2931343332302e2c2b2927252322201e1c1a1917151312100e0c0a08030000000000000000000000000000000f24394e63768899abb6aea69e958c7c68533e2813000000000000000000000000000000000000000000000000000000010a121a1f1f1a11050000000000000000122535445464738493a3b2bdad9e8e7d6e5f4f40302011010000000000000000000513212f3d4b5967758492a0aebdb6a89a8c7d6b57412c170000000000000416283b4d5f7285959fa6a19c97938e898fa2b7a38d7c7b7977767472706f6c6857442f1b060000000000000000000000040c141d262e373f485059616a727a848c959d9a958b7a6b5b4b3b2c1c0c0000000000000000000000000000000c1c2a38465462707472706e6c6a68666463605f5c5b58575453514f4d4b49474543413f3d3b3937353330291e100000000000000000000000000f24394e63788fa3b5a89c938a82797065523e2a15000000000000000112202e3c4a586573828f9dabb7a99c8e8072645645321e0a0000000f21323f484a4a4a4a4a4a4943362615020000000000000000000000000000000e20313e484a4a4a4a4a4a494337271603000000000000152a3f54697d94a9bebfaa95806b56402b16010000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000c161d1f1e1c1b1917151412100e0c0b09040000000000000000000000000000000000000000000000000000000b1f3347596a7c8e9aa3abb4ae9b8874604d39251100000000000000000000000000000000000000000000000000000000000000000000000000000000000000001b2f425362728292a1b1beae9e8f806f60504131221202000000000000000000000003111f2d3c4a58667482909fadb7a79888776754402b16000000000000000b1e3042556778828b918c88837d78768ba0b5a38f78666462605f5d5b5a57554a3a28150100000000000000000000000000010a121b232b343d454e565f677078828985827c6c5c4d3d2d1d0e00000000000000000000000000000000000c1a283644525d5f5d5b59575553514f4d4b4a474643423f3e3c3a38363432302e2c2a28262422201e1b160c000000000000000000000000000d22374c61748698aab5afa79e968d7d6a55402b16010000000000000002101e2c3a47556370808d9ba9b6ac9e908374624d38230e0000000313222d33343434343434342f251809000000000000000000000000000000000213212c33343434343434343026190a0000000000000012273c52677b91a6bbc2ad98836d58432e1904000000000000000000000000000000000000000205080b0e10100c0500000000000000000000000000050808060402000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000417293b4c5e707d878f98a0a692806b5844311d0a00000000000000040f161a1916120e0b070400000000000000000000000000000000000000000000000000001f34495e718291a0b0bfafa09080706151423223130400000000000000000000000000010f1e2c3a48566472828f9da9998a7969594938251100000000000000011325384a5a656f777c77726d6964748a9fb4a59079644f4d4b4a4846444240382c1c0b00000000000000000000000000000000000710182129323a434b545c656d74706b675e4e3e2f1f0f000000000000000000000000000000000000000a18263441494a48464442403e3c3a38363432302e2c2a28272423201f1d1b19171513110f0d0b0904000000000000000000000000000000091e324557687a8c99a2abb3b09d8975624e3b2713000000000000000000000e1c2a374553616f7c8b98a6b4a4948372604c37220d000000000410191e1f1f1f1f1f1f1f1b1308000000000000000000000000000000000000030f191e1f1f1f1f1f1f1f1b1409000000000000000010253a4f64788fa3b8bfb09b86705b46311c0700000000000000000000000000000000081014171a1d2023252521180b000000000000000000000511191d1d1b19171513110d0500000000000000000000000000000000000000000000000000000000000000000000060d10100b0300000000000000000000000c1e2f4152616a737c858d968a76634f3b2815010000000000000615222b2f2f2b2723201c1815110d09060200000000000000000000000000000000000000001f34495d707d8d9caab0a191827162524333231404000000000000000000000000000000000e1c2a3846546270808d9b8c7b6b5b4b3b2b1a080000000000000000081b2c3c49525c6467635d59545e73889db3a6917b66503b363433312f2d2b251b0e0000000000000000000000000000000000000000050d161e272f384049515a5f5b57524c403020110100000000000000000000000000000000000000000816242e343433312f2d2b29272523211f1d1b19171513110f0e0b0a060000000000000000000000000000000000000000000000000000021528394b5d6e7d868f97a0a894826d5946331f0c00000000000000000000000c19273543515f6c7a8896a4968675655544311d09000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000d22374c61768ca1aeaba79d88735e49341f0a0000000000000000000000000000000e1a24292c2f3235383b3a34291b0a00000000000000000615232d3232302f2c2a282621170b00000000000000000000000003030000000000000000000000000000000000000d192126251f16090000000000000000000000122334434e576068717983826d5a4633200c000000000000011324333e4444403c3835312d2a26221e1b1713100c08050100000000000000000000000000001a2e4151606f7d8c9aa2928372635344342515050000000000000000000000000000000000000c1a28364452616f7d8c7d6d5d4d3d2d1d0d000000000000000000000e1e2b363f4851524e4944475c72879cb1a7927c67523c271f1e1c1a181611090000000000000000000000000000000000000000000000020b131c242d363e464a46423d392f2212020000000000000000000000000000000000000000000006121a1f1f1e1c1a18161412100e0c0a0701000000000000000000000000000000000000000000000000000000000000000000000000000a1c2e3f51606a727b848c958b7764513d2a170300000000000000000000000009172533414e5c6a77869489786857473726140100000000050d11131516181a1b1b160e0200000000000000000000000000000000000000000000000000000000000000000000000000000000000a1f34495e73899c9995928f8b76604b36210c00000000000000000000000000000c1d2c373e4144474a4d504f4739281502000000000000001223334047474644423f3e3b34291a0900000000000002070b10141818140b000000000000000000000000000002101e2b353b3a3327180900000000000000000000061625323b444c555d666f7464513e2a1704000000000000091d304251595855514d4a46423f3b3733302c2825211d1916120e0b070300000000000000000011233342515f6d7b8b9484746454453526160700000000000000000000000000000000000000000a18263442515f6d7a6f5f4f3f2f1f0f0000000000000000000000000e19232c353c3d393430465b70869ba0a0937d68533e291307010000000000000000000000000000000000000000000000000000000000000008111a222b3234312d29241d110400000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000102233424e565f67707982836f5c4835210e0000000000000000000000000000071523303e4c5a6775847b6b5a4a39291908000000000c182126282a2b2d2f30302a20130300000000000000000000000000000000000000000000000000000000000000000000000000000000071c32475c70878784807c797771604b36210c000000000000000000000000000016293b495356595c5f6264645745311d08000000000000061b2e41515c5c5b585754535047382614000000050e13171c2025292d2d281e110100000000000000000000000412202e3c48504e45362717070000000000000000000007141f283039414a535b5f574735220e000000000000000f24384d606e6d6a66625f5b5753504c4845413d3936322e2b2723201c18140d0200000000000005152432414f5e6c7a8575655646372717080000000000000000000000000000000000000000000008162432414f5d665f5141312111010000000000000000000000000006101922272825202f445a6f858b8b8b8b7d69543f2a150000000000000000000000000000000000000000000000000000000000000000000000060f171d1f1d18140f090000000000000000000000000000000000000000081014151515151515141008000000000000000000000000000000000000000000000000000d171d1f1d160c0200000000000000000000000000000000041524313a434c545d656e7466533f2c19050000000000000000000000000000000512202e3c4a5765736d5d4d3c2c1c0b000000000a1b2a353b3e3f40424445453d31211000000000000000000000000000000000000000000000000000000000000000000000000000000000001a2f43586b74716e6b6865625e5343301c0800000000000000000000000000001d314558676b6e7174777975604b36210c0000000000000b20354a5e6f72706e6c6a686456432f1b00000c1822272c3035393e42423b2f1f0e00000000000000000000051322303e4c59656254443425150500000000000000000000020b141d252e373f474a44392a18050000000000000013283d51667b83807b7773706c6865615d5a56524e4b4743403c3834312d281f130400000000000006142331404e5c6a7466574738281909000000000000000000000000000000000000000000000000061523313f4b504d413223130300000000000000000000000000000000050e121310182d42576a74747474747467533e2914000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000e1a24292a2a2a2a2a2a29241a0e0000000000000000000000000000000000000000000000101e2a323431291f140a0000000000000000000000000000000006141e272f384149525a5f5849372310000000000000000000000000000000000002101e2c3947555e5c4f3f2f1e0e0000000000152839475053545657595a594f3f2d19050000000000000000000000000000000000000000000000000000000000000000000000000000000015293c4e5b5f5c595653504c49423525140100000000000000000000000000001f344a5f74828487898c8d78634e39240f0000000000000d22374c627788868482807c725d48331e000a1b2a353c41454a4e5357574d3d2b1804000000000000000008152332404e5c6977726252423223130300000000000000000000000109121b232b333431281b0c0000000000000000172c40556a809494908c8986827d7976726f6b6763605c5854514d4946423c31231202000000000000051322303e4c5a5f584939291a0a00000000000000000000000000000000000000000000000000000513212e373b38302314050000000000000000000000000000000000000000000014283b4d5a5f5f5f5f5f5f58493724100000000000000000000000000000000000000000000000000000000000000000000000000000070e151b1e1c160d00000000000000000000000000000000000c1d2c373e3f3f3f3f3f3f3e372c1d0c0000000000000000000000000000000000000000000b1d2e3c464a453c31271d1208000000000000000000000000000000020b131c252d363e474a453a2b1a07000000000000000000000000000000000000000e1c29374349483e3121110000000000001c3144576468696b6c6e6f6d5c48341f0a000000000000000000000000000000000000000000000000000000000000000000000000000000000d1f303e474a4744413e3b38342f2517080000000000000000000000000000001e32475c7287989b9fa1907b66513c27120000000000000f24394e63788f9b99979588725d48331e001528394751555a5e63686c6a5a47321e09000000000000000a18263342505e6b7988827061514131211100000000000000000000000000000710181e1f1c150a0000000000000000051a2f44596e8398a9a5a19e9a96938f8b8884807c7874716d6966625e5b574f41302010000000000000000412202e3c464a453a2b1b0b0000000000000000000000000000000000000000000000000000000003101b2326241d130500000000000000000000000000000000000000000000000b1e2f3d474a4a4a4a4a4a453b2c1a080000000000000000000000000000000000000000000000000000000000000000000000060d141b22293033312a1e100000000000000000000000000000000016293b495354545454545453493b291602000000000000000000000000000000000000000215283a4c5a5f594e443a2f251a0f020000000000000000000000000000000008111a222b323431281c0d0000000000000000000000000000000000000000000b19263034332c2113030000000000001f344a5f747c7d8283848676604b36210c000000000000000000000000000000000000000000000000000000000000000000000000000000000112202b3334322f2c2926231f1b1207000000000000000000000000000000001a2f44596e8499aeb3a8937d69543f2a1500000000000011263b50657990a5aeac9b87705b46311c001c314457646a6f73777c8275604b37220d0000000000000c1a28364351606e7b8a988f806f5f4f3f2f1e0c0000000000000000000000000000000000000000000000000000000000091e33485d72879cb1bab6b3afaba7a4a09c9995918d8a86837d7a7773706b5f4e3e2e1d0d0000000000000002101e2a323431281c0d00000000000000000000000000000000000000000000000000000000000000080e110f090100000000000000000000000000000000000000000000000000111f2b3234343434343431291d0e000000000000000000000000000000000000000000000000000000000000000000040c131a21282f363d4448463c2e1d0b0000000000000000000000000000001d314558676a6a6a6a6a6a675845311d08000000000000000000000000000000000000000d2032445769746b61564c41372d2011010000000000000000000000000000000000060f181e1f1c150b000000000000000000000000000000000000000000000009141b1f1e190f03000000000000001e33485e7389949698998d77624c38230d0000000000000000000000000000000000000000000000000000000000000000000000000000000000020f181e1f1d1a1714110d0a06000000000000000000000000000000000000172c41566b8296abc0ac97826c57422d1803000000000013283d52677c92a7bcaf99846f5a442f1a001f344a5f748084888d918f7964503b261100000000000e1c2a38455361707d8c9aa89d8d7d6d5d4d3b28150000000000000009141a1d1a140b0300000000000000000000000000000d22374c61768ba0acb0b3b7bbbfbcb9b5b1aeaaa6a29f9b9794908c88857d6c5c4c3b2b1a0900000000000000000d171d1f1c150b000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000010e181e1f1f1f1f1f1f1d160c0000000000000000000000000000000000000000000000000000000000000000000a1620272e353c434a51585e594c3a27140000000000000000000000000000001f344a5f74808080808080745f4a341f0a00000000000000000000000000000000000005172a3d4f6174877d73695f544a3e2f1e0b0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001d32475c72879cabada48f78634e39240f00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000014293e53687d93a7bcaf99856f5a45301b060000000000142a3f54687d94a9bead98836c57422d18001e33475c7186999da2a6937d6954402b1601000002101e2c3a48556371808e9caab8ab9b8b7a6b58442f1a0000000000000c1b272f322f271f160e0500000000000000000000000010263b5065798f93979b9fa2a6aaadb1b5b8bcbfbbb7b4b0aca8a5a19d9a8b7a695949382612000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000091928333b424950575e656c736a57432f1b0700000000000000000000000000001f344a5f748b959595958b76604b36210b00000000000000000000000000000000000010223447596c7d9191867c71675c4d3b2713000000000000000000000000000000000000000000000000040d1315151515151515120c02000000000000000004080b0d1012141717130b000000000000001b30465b70869bb0bba5907965503b26100000000000000000000000000000000000000000000000000000000000000000000000000b151b1e1d1b181614110f0d0b080604010000000000000000000000000000000000000011263b5065798fa4b9b29c88725d48331e090000000000162b40566b8095abc0ab95806b56402b16001a2e43586c8296abb6ac97836d59442f1b06000412202e3c4a58657382909eacbab8aa9c8e806f5a45301b000000000007192a384347433b322a211810070000000000000000000010253b5064767a7d8386898d9195989ca0a3a7abafb2b6babdbebab6b2a99888776755412d1800000000000000000000000000000000000000000000000b131717171717171717120a0000000000000000000000000000000000000000000000000000000000000000071015161412100d0b0906040200000000000000000000000000000000000000000000000000000000000000000000000000000000000000142637454f565d646b72798086725e4a36220e00000000000000000000000000001e33485e73899fababa18c76614c37220d0000000000000000000000000000000000071a2d3f516476899ca3998f84796a56412c170000000000000000000000000000000000000000000000081621282a2a2a2a2a2a2a271f140500000000000410191d202225272a2c2c271d100100000000001a2f44596e8499afbca7917b66513c271200000000000000000000000000000000000000000000000000000000000000000000000d1c28303332302d2b29272422201e1b19171412100d0b09070402000000000000000000000e23384d62778ca1b6b5a08b75604b36210c0000000000182d42576c8398adbea9947d68543f2a1400152a3e53687c92a6bbb19c87725d49341f0a061422303e4c5a67758492a0aebcb5a89a8c7d6f6152402c18000000000010243748565c574e463d342c231a100200000000000000000d213548586265696d7074787b8084878b8f92969a9da1a5a8acb0b5c0b6a695856f5a442f1a00000000000000000000000000000000000000000001101d272c2c2c2c2c2c2c2c261d100000000000000000000000000000000000000000000000000000000000000c19242a2b29272522201e1b19171412100d0b09060402000000000000000000000000000000000000000000000000000000000000000000071b304355636a717880868d958d7965513d291501000000000000000000000000001d32475c72889db3b8a38d77624c38230d0000000000000000000000000000000000122437495c6e8294a6b6aba08d7a6855402c1600000000000000000000000000000000000000000000051626333c3f3f3f3f3f3f3f3b312313020000000514222c3235373a3c3f41413a2e1f0e0000000000182d42576c8398adbda8937d68533e281300000000000000000000000000000000000000000000000000000000000000000000071a2b394448474543403e3c3a373533302e2c29272523201e1c19171513100e0a03000000000b20354a5f74899eb3b8a38e78634e39240f00000000001a2f445a6f8499afbca7927c67523d28130010253a4e63788da2b6b5a18c77624d38240f162332404e5c6a778694a2b0beb3a5988a7b6d5f51433423100000000006192c405366726a615950483f372d2011010000000000000005182a3a464d5154585c5f63676a6e7276797c8285888c9094979ba2b1c3af99846e58432e190000000000000000000000000000000000000000000e1f2e3a41424242424242413a2e1e0d00000000000000000000000000000000000000000000000000000000091a2a373f403f3c3a373533302e2c2a272523201e1c19171412100e0b090704020000000000000000000000000000000000000000000000000a1f34495e737d868d939aa2a995806c5844301c08000000000000000000000000001c32475c71879cb1b9a48f78634e38230e000000000000000000000000000000000a1c2f415466798c9eb1baa89583705d4b392612000000000000000000000000000000000000000000000f22344450545454545454544e42311e0b0000001122323f474a4c4f515456564c3d2b180400000000162c40566b8296abbfa994806a543f2a15000000000000000000000000000000000000000000000000000000000000000000000f233749575e5c5a585653514f4c4a484543413f3c3a383533312f2c2a2825231e160a000000071c31475c70869bb0bba6917b66513c271200000000031c31465b70879bb0baa5907965503b2611000c20354a5f73889db2baa5907b66523d2818263442505e6c798896a4b2bfb1a39588796b5d4f4133251605000000000e2235495c6f837d756c645b534a3e2f1e0d00000000000000000c1c2933383c3f43474b4e5255595d6064686c6f73777a7d838694a9bead98836c58432d18000000000000000000000000000000000000000004182b3d4c56575757575757554c3c2a170300000000000000000000000000000000000000000000000000000013263848535653514f4c4a484643413f3c3a383533312e2c2a272523201e1c19171512100e0b09070300000000000000000000000000000000091e33485c708599a0a7afb6b09c88735f4b37230f000000000000000000000000001b30465b70869bb0baa59079644f3a250f000000000000000000000000000000021427394c5e718496a9bbaf9d8a776653412e1c0a00000000000000000000000000000000000000000000152a3e51626a6a6a6a6a6a69604e3a2611000000192d40515c5f626466686b6a5b48331f0a00000000152a3f546a8094a9bfab96826b56402b1601000000000000000000000000000000000000000000000000000000000000000000152a3e536673716f6c6b686664615f5d5a585653514f4c4b484644413f3d3a3832281a0a000001192e43586d8398adbea9947d69543f2a1500000000081e33485d72889db2b8a38e78634e39240f00071c31455a6f8499adbeaa95806b56412d28364451606e7c8a98a6b4bdafa1938577695b4d3f312315070000000004172a3e5164788c928980776f665c4d3c2a190700000000000000000c171e23272a2e3236393d4144484c4f53575a5e6266696d7c93a8bdac97836c57422c1700000000000000000000000000000000000000000a1f33485b6a6c6c6c6c6c6c695a46321d080000000000000000000000000000000000000000000000000000081b2f4256666b686664625f5d5b585654514f4c4b484643413f3c3a383533312f2c2a272523201e1c170f03000000000000000000000000000005192d4155697d91a5b9c3c9b7a38f7a66533e2b16020000000000000000000000001a2f445a6f869bb0bba5907a66503b26110000000000000000000000000000000c1f314456697b8ea1b3b7a592806d5b483624110000000000000000000000000000000000000000000000172c42576c8080808080807d68533e29130000001e33485d6f7477787b7d8276604b36210c0000000013283e53687d93a8bdac97836c57422c1702000000000000000000000000000000000000000000000000000000000000000000182d42576c82878583807d7b787674726f6d6b686664625f5d5b585654524f4d45382815020000162b40556a8095aabfac97826c57422d18030000000a20344a5f748a9fb4b7a18c77624c37220d0001172c41556a8094a9beae9a85705b463138465361707d8c9aa8b6bbad9f91837567594b3d2f21130500000000000c2033465a6d8295a59c948b83796b5948362512000000000000000000030a0e1215191d2124282c2f33373a3e4246494d5154687d94a9beac97826b56402b1600000000000000000000000000000000000000000b21364b6076838383838383745f4a35200b00000000000000000000000000000000000000000000000000001023374b5e72827d7b79777472706e6b686664625f5d5b585654524f4d4b484644413f3c3a383633312b211304000000000000000000000000000012263a4e62768a9eb2c6cebeaa96826d5a46321e0a000000000000000000000000192e43586e8499afbca7917b66513c271200000000000000000000000000000417293c4e61738699abbead9a887563503e2b19070000000000000000000000000000000000000000000000162b40566b829595959594806a543f2a150000001f34495e73898c8f91948e78634e39240f0000000012273c51667b91a7bcae99846e58432e19040000000000000000000000000000000000000000000000000000000000000000061b30455a6f85999a979593908f8c8a888683827d7b79777472706e6b696764625645321e09000013283d52677c91a7bbaf9a86705b46311c060000000c21374c60768ca1b6b4a08b745f4a35200b000013273c51667a8fa4b9b39e89745f4b3a48566371808e9caab8b9ab9d8f82726557493b2d1f110300000000000013283b4f62768a9db1b0a79f9689776554422f1b070000000000000000000c171e211f1b171213171a1e2226292d3134383f546a8094a9bfab95806a55402b1600000000000000000000000000000000000000000b21364b60768b989898988c76604b36210b0000000000000000000000000000000000000000000000000005182c3f53667a8e93918f8c8a888683827d7b79777472706e6b696764625f5d5b585654524f4d4b48463e32221000000000000000000000000000000b1e33475b6f8397abbfbab4ad9d8975614d392510000000000000000000000000182e43586d8398adbda8937c67523c271200000000000000000000000000000f213446596b7d90a3b5b5a2907d6a584633210e000000000000000000000000000000000000000000000000152a3f546a8094a9abab97826b56402c160100001c32475c70879ba4a6a5907b66513c27110000000010253b50647990a5bab09b866f5a45301b0600000000000000000000000000000000000000000000000000000000000000000a1f34495e73889dafacaba8a5a3a19f9c9a989694918f8d8b888684827d7c7974614c37220c000010253a4f64798fa3b8b29d88735e49341f090000000e23384e63788da3b8b39d88735e48331e0900000e23384c61768ba0b4b7a28e78644f4a58667382909eacbab7a99b8d8070635547392b1d0f0100000000000000172c41566b7d9199a2aab3b2a69583715e4a35200b00000000000000000e1d293236342f2b27231e1a15111114181c202b40556a8095abbfa994806a543f2a1500000000000000000000000000000000000000000a1f344a5f748ba0adada18c76614c37220d000000000000000000000000000000000000000000000000000d2134485b6f8396a8a6a4a19f9d9b989694918f8c8b888683827d7b79777472706e6b69676462605e5b50402d1a060000000000000000000000000004172b3f53677b90a4ada69f99928b7c68533e2813000000000000000000000000172c42576c8297acbea9947d68533e29130000000000000000000000000007192c3e516376899baebcaa988572604d3b29160400000000000000000000000000000000000000000000000013283e53687c93a8bdad98836c57422d180300001a2f44596e8499aebba8937d68533e2914000000000f24394e63788fa3b8b19c87705c47311c0700000000000000000000000000000000000000000000000000000000000000000d22374c61768ca0a9acaeb2bbb8b6b4b2afadaba8a6a4a29f9d9b9897949189745f4b36210c00000d22374c61768ba0b5b5a08b76604c37210d00000010253a4f647990a5bab19c87705c47311c070000091e33485d71879bb0bca7927d68545768758492a0aebcb5a7998b7d6f61534537291b0d000000000000000000162b405568747d868e979facb2a18c76614c37220c000000000000000f1e2c3b464b4944403c37332e2a26211d1914162b40566b8297acbfa9947d68533e29130000000000000000000000000000000000000000091f34495e73899fb4b8a38d77624c37220d0000000000000000000000000000000000000000000000000015293d5063778b9fb2bbb9b7b4b2b0adaba8a6a4a19f9d9b989694918f8d8b888684827d7c797774736e5d49341f0a00000000000000000000000000001024384c6074889c99928b857d767063503c2712000000000000000000000000162b40566b8297abbfa994806a543f2a1500000000000000000000000000112436495b6e8093a6b8b29f8d7a685543301e0c0000000000000000000000000000000000000000000000000012273c51667b91a7bcaf99846e59442f1a050000172c42576c8297abc0ab96826b56412c17020000000d22374c62778da2b7b39d88725d48331e08000000000000000000000000000000000000000000000000000000000000000010253b5064798f92949799a0b0c0b1a7a6a8abadafb1b4b6b4b2b0adaba99a86705c47321d0800000a1f34495e73889db2b8a38e78644f3a25140f0a0512273c51667b91a7bcaf9a856f5a442f1a050000041a2e43586d8297abc0ac97836d585c728694a2b0beb3a597897a6d5f51433527190b000000000000000000001125384a586169727a838ea0b5a38d77634e38230e0000000000000f1e2d3c4a59605d5955514c48433f3b36322d29252c42576c8398adbda8937c67523d28130000000000000000000000000000000000000000061e33485e73889db3b8a38f78634e38230e000000000000000000000000000000000000000000000000001b3044586c8093a7bacececbbdb4b3b6b8bbbbb9b7b4b2b0adaba9a7a4a2a09d9b989694918f8d8b8876604b36210b0000000000000000000000000000091d3145596d828c857d777069625b534534210d000000000000000000000000152a3f546a8095abc0ab95806a55402b16010000000000000000000000091c2e415366788b9eb0b9a795826f5d4b382614010000000000000000000000000000000000000000000000000010253a4f647990a5bab09b86705b46301b060000152a3f54697d94a9bead98836e58432e19040000000b21364b60758ba0b5b49f89745f4a341f151515151515151515151515151515151515151515151515130d0400000000000010263b506577797c80828493a8b6a293919395989a9c9fa1a3a5a7a9acab97826c58432e19040000061c31455a6f869aafbba6917c67523d2d28231e1914293e53687d93a8bdad98836d58432e1803000000152a3f53687c92a7bbb09b87725d5c72889db2c0b4a39587786b5d4f41332517090000000000000000000000091b2c3a454d565f6773889db3a48f79644f3a250f00000000000f1e2d3c4b5a6875726e6965615d58544f4b47423e393543586e8398adbca7927c67523c27120000000000000000000000000000000000000000001d32475c72889db3b9a48f78634e39240f000000000000000000000000000000000000000000000000001d32475c718494a4b4c4d2beada09ea1a3a5a8aaadafb1b4b6b9bbbbb9b7b4b2b0adaba9a7a4a29f89745f4a341f0a000000000000000000000000000002162a3e52657977706a635c554e47403627160400000000000000000000000014293f53687d94a9bfac97826b56412c170100000000000000000000011426394b5d708395a8bbaf9c8a776553402e1b0900000000000000000000000000000000000000020406080a0c0e1024394e63788fa3b8b19c87725c47321d07000012273c51667b91a6bbb09b86705b46311c070000000a1f344a5f73899fb4b5a08b76604b362a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2821160800000000000d213548596365676a6b8094a9b29d887b7d80838687898c8e9092949799937d68533f2a1500000000182d42576c8297acbea994806a5547423d38332e292b40556a8095aabfab96826b56412c170100000011253a4f64788da2b7b5a08b76615e73899fb4c3ae998576685a4d3f31231507000000000000000000000000000e1c28313a424b5c71879cb1a5907b66503b2611000000000c1d2d3c4b5a69788788837d7976716d6864605c57534e4a46596e8499afbca7917b66503b26110000000000000000000000000000000000000000001c31465b70879cb1bba59079644f3a250f000000000000000000000000000000000000000000000000001a2e425566758696a6b6c5b7a28f898c8e909395989a9c9fa1a4a6a8abadb0b2b4b7b9bbbcb9b19c88725c47321d080000000000000000000000000000000f22364a5b66635c554e48413a332c2418090000000000000000000000000013283e53687d93a8bdad98836c57422c1702000000000000000000000c1e314356687a8da0b2b7a592806d5a4836231100000000000000000000000004090c0e10121416171a1b1d1f21232527374c62778da2b7b39e89735e48331e09000010253a4f64788fa3b8b39d88735e49341f09000000071e33485d72889db3b7a18c77624c3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3c332616050000000006192b3b474d5052566b8296abb09b8670686b6d6f727476787a7c808284867964503b261100000000152a3f54697d94a9beac97836d605c56524c48423e3942576c8297acbfa9947d69543f2a15000000000c21364a5f74899eb2b9a5907b665e73899fb4c4b09c8d7d6f6051423425170800000000000000000000000000000b151e2730465b70869bb0a7927c67523c271200000000172a3b4b5a697888979c98948f8b87837d7974706c68635f5a5a6f869bb0bba59079644f3a25100000000000000000000000000000000000000000001b30465b70869bb0bba5907b66503b261100000000000000000000000000000000000000000000000000132638485867778898a7b7b8a4918276787b7d80838688898c8f919396989b9d9fa2a4a7a9abae9a866f5a45301b06000000000000000000000000000000071a2c3d4a514f4844413d3a3730251606000000000000000000000000000012273c52677c92a7bcae99846e58432e1903020406080b0d0f11131618283b4e60738698aabdac9a887562503d34291a0b000000000000000000000d181e21232527292b2c2f30323436383a3c3e4b60768ba0b5b5a08b745f4a35200b00000d22374c61768ca1b6b5a08b76604b36210c000000011c31465b70879cb1b8a38e7863545454545454545454545454545454545454545454545454545454504434220f00000000000d1d2a34383b43586c8398adae99846e5956585a5c5f606365676a6c6e706f5f4b37220d0000000012273c51667b90a5bbaf9b867a75706b66615c57524d48586e8499aebca7937c67523d281300000000071c31465a6f8499aebea994806a5e73899aa8b7baab9c8e7d70615243352617090000000000000000000000000000020a1a2f44596e8499afa9947d68533e2914000000001d32465969788897a6b1ada8a4a09b97938e8a86827c78736f6b70879cb1b9a48f79644f3a250f0000000000000000000000000000000000000000001a2f445a6f869bb0bca7917b66513c271100000000000000000000000000000000000000000000000000091a2a3a495969798a99a9b9af9f8f807066686a6d6f727476787b7d828386888a8d8f9194969998836d58432e19040000000000000000000000000000000a1e32455661605c5956534f4b42342411000000000000000000000000000011263b50667b91a7bcaf99846f5a442f1a1517191b1e20222426282b2d3346586a7d90a2b5b4a28f7c6a5852504738291a0b0000000000000000101e2b3336383a3c3e40424446474a4b4d4f5153505f74899fb4b7a18c76614c37220c00000a20344a5f74899fb3b8a38d78634e39240f000000001a2f445a6f859aafbaa590796a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a62513e2a150000000000000d1820232f445a6f8499afac97826c57424345474a4c4e50525457595b5b5142301c08000000000f24394e63788da2b7b4a2958f8a86807b76716c67625d5b70869bb0bba5907b66503b26110000000001182c41566a8094a9beae99846f5a6c7b8a99a8b6baac9d8f80706153443527180a000000000000000000000000000000182d42576c8398adab95806a55402b16000000001f344a5f748897a6b5c4c1bdb9b4b0aca7a39f9a96928d8984807b879cb1b9a48f78634e38230e000000000000000000000000000000000000000000192f44586e8499afbda8937c67523c271200000000000000000000000000000000000000000000000000000c1c2c3b4b5b6b7b8c9babbbae9e8e7d6e5e55585a5c5f616466686b6d70727477797c7d828486826b56412c17020000000000000000000000000000000e23384d627474716e6b68645f52412d19050000000000000000000000000010253a4f647990a5bbb09b866f5a4530242a2c2e30333537393b3e404244506375889badbca997857263646764564738291a0b0000000000000f1e2e3c474b4d4f51535557595b5c5f6062646668635d72889db3b8a38d77634e38230e0000071d32475c71879cb1baa5907a66503b261100000000192e43586e8398adbba79180808080808080808080808080808080808080808080808080808080806c57422c170200000000000b141a1c31465b70869bb0aa95806a54402e30323437393b3d3f424446464033241300000000000c21364b60758a9fb4c0b1a9a49f9a95908b86827b77716d72889cb2b9a48f78634e39240f000000000013283c51667a90a4b9b29e89745f5d6c7a8a98a7b6bbad9e8f80716253453628190a0000000000000000000000000000172c41566b8297acac97826b57412c17020000001d32475c70869bb0c4c5b8b1b1b5babebcb8b3afaba6a29e99959091a1b5b8a38d77624c38230d000000000000000000000000000000000000000000192e43586e8398adbda8937d68533e29130000000000000000000000000000000000000000000000000000000e1d2d3d4d5d6d7d8d9dadbcac9c8c7c6c5c4c45474a4c4f515356585b5d5f626467696b6e707266523e29140000000000000000000000000000000010253a4f64798a8784807c79705d48331e08000000000000000000000000000f243a4f64788fa4b9b19c87705b4630373e414346484a4c4e50535557595b6d8092a5b7b49f8c797677797c7465564738291a0a000000000f1e2d3c4c5a60636466686a6c6e7072737677797b7d6f5c70879cb1b9a48f79644f3a250f0000011a2f445a6f8499aebda8937d68533e291400000000172c42576c8297acc0ac9c95959595959595959595959595959595959595959595959595959595826b56402b1601000000000f1d282f3032475c72889db2a8937c68533e28222222222426282a2c2f31312c2215060000000000091e33485d72879cb1c6c4beb8b4aeaaa4a09a96908c87827c899fb4b7a28d77624c37220d00000000000e23384c61768ba0b5b7a28d78634f5c6b798998a6b5bcad9e8f827163544637281a0b00000000000000000000000000152a3f546a8095aaad98836d58432e1803000000192e43586d8297acc0b8a79c9ca1a5aaaeb2b7bbbfbbb6b2aeaaa5a5afbeb7a18c77624c37220d000000000000000000000000000000000000000000172c42576c8398adbfa9947d68533e2914000000000000000000000000000000000000000000000000000000000f1f2f3f4f5f6f808f9eaebaaa9a8a7a6a5a4a3a35373a3c3f414346484b4d4f525456595b5c564836230f0000000000000000000000000000000012273c51667b919c98959288725d48331e08000000000000000000000000000e23384e63788ea3b8b29d88725c473b495356585b5d5f616366686a6c6e70778a9dafc2b39f8c898b8d8f9184746556473828160300000d1d2d3c4b5a6a7677797b7d8082848688898b8d8f9187725c6f869bafbba6917b66503b2611000000182d42576c8297acbfab95806b56402c1601000000162b40556a8095abc0baaeababababababababababababababababababababababababababab97826b56402b16010000000b1d2d3a4346464a5f73899fb4a5907b66503b37373737373737373737352e22181005000000000000041a2f445a6f8499aec3c9bdb7b8bdbeb9b4afaaa5a09b969293a3b7b5a08b75604b36200b00000000000a1f33485d71879bb0bba7927c68534d5c6a798897a5b4bdae9f90827264554638291b0c00000000000000000000000014293e53687d94a8af99846f5a442f1a05000000152a3f54687d93a8bdb29d89888c9095999ea2a6abafb4b8bdbebabac1cbb6a18c76604b36210b000000000000000000000000000000000000000000172c41566b8297acbfab95806a543f2a150000000000000000000000000000000000000000000000000000000001112131415161708090a0b0b8a898897868584838282427292c2e303335383a3c3f4144464743382a19070000000000000000000000000000000014293f53687d93a8adaa9b86705b46311c06000000000000000000000000000d22374c62778da2b7b39d88735e484558676b6e70727476787b7c808284878895a7baccbbaa9f9ea0a3a4a2938474655645321e0a0006192b3b4b5a6978898d8f91939597999b9c9fa0a3a49e89735e6e8499aebda8937c67523d2813000000152a3f54697d94a9bead98836d58432e190400000014293e53687d94a9becbc2c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0ac97826b56402b160100000014283a4b575b5b5b60768ba0b5a38f78634e4c4c4c4c4c4c4c4c4c4c4c4a4031200e0000000000000000172c41566b8296abc0bbaba2a3a8adb2b6bbbfbab5b0aba6a7b1c0b39e89735e49341f090000000000051a2f43586d8297acc0ab97826c58434c5b69788896a5b3bdaea0918273645647392a1b0b000000000000000000000012273c52677c92a7b09b86705b46301b0600000011263b5065798fa3b8b39e8973777b8084898d92969a9fa3a8acb1b5bfcbb5a08b745f4a35200b000000000000000000000000000000000000000000162b40566b8296abc0ab95806a55402b16010000000000000000000000000000000000000000000000000000000003132332425262728292a2b2b6a69787766656463627171417191b1e202325272a2c2f31322f271b0c0000000000000000000000000000000000172c41566b8296abc0ae99846e59442f1a04000000000000000000000000000c21364b60768ca1b7b49f89735e494a5f74828386888a8c8f90939597999b9da4b2c4d3c8bbb3b3b5b8b9b1a2938474624d38230e000d2135485969788897a3a4a7a8aaacaeb0b2b4b5b8b5a08b75606c8397acbea9947d68543f2a1400000013283d52677c91a7bbb09b86705b46311c0700000012273c52677c92a7bcc0b3ababababababababababababababababababababababababababab97826b56402b16010000001a2f43576970707070778da2b7a18c77626262626262626262626262625d4f3d2a16010000000000000014293e53687d93a8bdb29e8d8f93989da2a7acb0b5babfbbbbc2bdb19c87715c47321d07000000000000152a3f53687d92a7bcb09b86715c483d4b5a69778795a4b3beafa0928374655748392816030000000000000000000011263b50667b90a5b29c88725c47321d080000000d22374c60758ba0b4b6a28d7763666b6f73787c82868a8f93979ca2b0c1b49f89745f4a341f0a000000000000000000000000000000000000000000152a3f546a8095abc0ac97826b56402b1601000000000000000000000000000000000000000000000000000000000005142434445464738494a4b4b4a4958574645444342515050004090b0e101215171a1c1d1a1409000000000000000000000000000000000000192e43586e8398adc1ac97826c57422c1702000000000000000000000000000b20354b5f748ba0b5b5a08b745f4a475c7288989b9d9fa1a3a5a8aaacaeb0b3b7c2c0bfbcbab8b6b4b7c0c0b1a28d77634e38230e0010263b5065778897a6b5b9bbbdbfbfbdbbb9b7b5b3b1a28d77626b8095abc0ab95806a55402b1601000010253a4f64798fa4b9b29d88725d48331e0900000011263b50667b90a5bbb5a296959595959595959595959595959595959595959595959595959595826b56402b16010000001b30465b70878787878790a4b49f8a77777777777777777777777777776d59442f1a040000000000000011263b5065798fa4b9b09b87797d84888d92979ca1a5aaafb4b8ac9f93866f5a45301b0600000000000011253a4f64788ea2b7b4a08b76614c373c4b5968778695a3b2beb0a1938474665746321e09000000000000000000000f253a4f64798fa4b39e89735e48331e09000000091e33485d71879bb0bba6917c6752565a5f63686c7075797d838792a5bab39f89735e48331e0900000000000000000000000000000000000000000014293e53687d94a9bfac97836c57422c170200000000000000000000000000000000000000000000000000000000000006162636465666758696a6b6b2a39383726252433323130300000000000000000000000000000000000000000000000000000000000000041b30465b70869bb0bfaa95806a54402b1500000000000000000000000000000a1f344a5f74899fb4b6a18c76604b455a6f869aafb2b4b6b8bbbdbbb8b6b4b2b0adaca9a7a5a3a19fa3b1c2b5a08b75604b36210c0011263b50667b91a5b5c3b6afadaca9a8a5a4a1a09d9c998f7863697d94a9bfac97826c57422c170200000d22374c62778ca1b6b5a08b75604b36210c0000000f243a4f64798fa4b9b09b86808080808080808080808080808080808080808080808080808080806b56402b16010000001c31465b70879c9c9c9ca0aeb6a2918d8d8d8d8d8d8d8d8d8d8d8d8d866f5a442f1a05000000000000000e23384d62778ca1b6b39e8974696f73787c83878c90969a9fa49a8e82756856422d19040000000000000c21364a5f74899eb2b9a48f7a65513c2d3b4a5967768594a3b1bfb1a2938575614c37220c000000000000000000000e23384d63778da3b5a08b745f4a35200b000000041a2f44586d8397acbfaa95806b5641464a4e53575c6065696d788fa4b9b39d88725c47321d0800000000000000000000000000000000000000000013293e53687d93a8bdad98836c58432d18030000000000000000000000000000000000000000000000000000000000000008182838485867778898a7b7b1a191827061514131211101000000000000000000000000000000000000000000000000000000000000091e33485d72889db2bda8937c68533e28130000000000000000000000000000081e33485e73899eb3b7a28d77624c43586d8398adb3b0aeacaaa8a5a3a19f9d9b98979492908d8c8993a7bbb29d88725d48331e090012273c52677c93a7bcb6a59b98979493908f8c8b888785837964687c93a8bdad98846e58432e190400000b20354a5f74899fb4b7a28d77634e38230e0000000e23384d62778da3b8b19c87716a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a61503d2814000000001d32475c72889db1b1b1b4bdbfafa4a3a3a3a3a3a3a3a3a3a3a3a399846e58432e1904000000000000000b20354a5f74899eb3b6a18c77625a5e63686d72777b82868a8f897c7064584a39271300000000000000081c31465a6f8599aebda994806a55402c2c3b495866758593a2b0ae9e8f80705e4a36210c000000000000000000000c22374c61768ca1b7a18c76614c37220c00000000162b4054697d93a8bdae99846f5a4531353a3e42474b5054647990a5bbb19c87715c47321c0700000000000000000000000000000000000000000012273c52677c93a8bdaf99846e58432e190300000000000000000000000000000000000000000000000000000000000000000a1a2a3a495969798a99a9b9af9f8f806f5f4f3f2f1f0f0000000000000000000000000000000000000000000000000000000000000b20354b5f748b9fb4bba5907b66503b26110000000000000000000000000000021d32475c72889db3b8a38d77634d40566b8095a09d9b99979593908f8c8a88868482807c7978767b91a6bbb09b86705b46311c060013283e53687c93a8bdaf9a878382807c7b78777473706f6d6a5d667b91a7bbaf9a866f5a45301b050000081d32475c72879cb1baa5907a65503b26110000000c21364b60768ca1b6b39e89735e5454545454545454545454545454545454545454545454545454504333210d000000001e33485d72889da7a7a7aebcc6bbb7b7b7b7b7b7b7b7b7b7b7b7ad98836d58432e180300000000000000071d32475c70869bb0b9a48f7965504a4f53585d62676c70757a776b5e52463a2c1c0a0000000000000001182d41566b8095a9bead99846f5a45301d2b3a495766748492a19e8f80706151412e1b07000000000000000000000b20354a5f748ba0b5a38d77634d38230e0000000012273b5065798fa4b9b29d88735e49342025292e32373b50667b90a5bbb19c87705b46301b0600000000000000000000000000000000000000000012273c51667b91a7bcaf9a856f5a442f1a050000000000000000000000000000000000000000000000000000000000000000000c1c2c3b4b5b6b7b8c9babbbad9e8e7d6d5d4d3d2d1e0e00000000000000000000000000000000000000000000000000000000000e23384d62778da2b7b9a48f78644f3a240f0000000000000000000000000000001c31465b70879cb1b9a48f78634e3e53687d8d8b88878482807c7b78767472706e6b6a676563697d94a9bead98836d58432e19040014293e53687d94a9bfad98836e6b6a68666462605e5c5a58554f647990a5bab19c87705b46311c070000021b30455a6f8499afbda8937c68533e29140000000a20344a5f748a9fb4b5a08b745f4a3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3c33251504000000001e33485e7389919191929eb1b6a8a1a1a1a1a1a1a1a1a1a1a1a1a197826c57422c17020000000000000001192f44586e8398adbda8937d68533e3a3f44494d52575c616565594d4135281c0e00000000000000000013283d51667b90a5b9b29d88735e4a35201c2b394856657483929080706151423323110000000000000000000000091f34495e73899fb3a48f79644f3a240f000000000e23384c61768ba0b5b6a18c77624d3924181a1c1e273c51667b91a7bcb09b866f5a442f1a0500000000000000000000000000000000000000000011263b50667b90a5bbb09b866f5a45301b05000000000000000000000000000000000000000000000000000000000000000000000e1d2d3d4d5d6d7d8d9dadbbac9c8c7b6b5b4b3c2c1c0c0000000000000000000000000000000000000000000000000000000010253a4f64798fa4b9b7a18c77624c37281d1004000000000000000000000000001b30465b70869bb0baa59079644f3c516577777473706e6c6a686663615f5d5b5857545250576c8297abbfab95806b56402c160100152a3f546a8095abc0ac97826c575453504f4c4b48474443404e63788ea3b8b39d88725d48331e09000000182d42576c8297acbfaa95806a55402b16010000091e33485e73889db3b7a18c76614c372a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2720150700000000001f344a5f737b7b7b7b8398adac998c8c8c8c8c8c8c8c8c8c8c8c8c8c826b56402b16010000000000000000162b40556a8095aabfab96826b56412c2a2f34393e42474c5151483c3023170b000000000000000000000f23384d61768ba0b5b6a28d77634e3925101b2a3847566473828271615243332415050000000000000000000000061d32475c72889db2a5907b66503b2611000000000a1f33485d72879cb1baa5907b66523d2b2d2f3133363c52677c93a8bdaf99846e59442f1a050000000000000000000000000000000000000000000f253a4f647990a5bbb19c87705b46301b0600000000000000000000000000000000000000000000000000000000000000000000000f1f2f3f4f5f6f808f9eaeb9aa9a8a796959493a2a1a0a00000000000000000000000000000000000000000000000000000012273c52677c91a7bcb4a08b745f52463a2e2216090000000000000000000000001a2f445a6f869aafbba6917b66503b48596362605e5b59575553504e4c4a484644413f3d44596e8499aebda8937d68533e29140000162b40566b8296abc0ab96826b56403d3b3a373633322f2e374c62778ca1b7b49f89745f4a341f0a000000152a3f546a8094a9bead98836d58432e19040000041c32475c71879cb1b8a38e78634e38231515151515151515151515151515151515151515151515130d030000000000001c304456636666666f8599afa8937d767676767676767676767676767667533f2a1500000000000000000013283d52677c92a7bcae99846e59442f1a1a1f24292d32373c3c362b1e120600000000000000000000000a1f33485d72879bb0bba6917c68533e29140c1b2938465564727162534434251606000000000000000000000000001b30465b70879bb0a7927c67523c271200000000051a2f44596e8398adbeaa95806b564140424447484b4c53687d93a8bdae99846e58432e19030000000000000000000000000000000000000000000f24394e63788fa4b9b19c87715c47321d07000000000000000000000000000000000000000000000000000000000000000000000001112131415161708090a0b0b8a8988877675848382818080000000000000000000000000000000000000000000000000000152a3f54697d94a9beb49f8a7c7064584b3f33271b0f0300000000000000000000192e43586e8499aebca7917c67523c3b474d4d4b48464442403e3b39373533302f2c2a32475c71879cb1baa5907b66503b26110000172c41566b8297acbfab95806a543f2a262422201e1c1a21364b60758ba0b5b5a08b76604b36210b00000013283d52677c91a7bcaf9a86705b46301b060000001b30455a6f869bb0baa59079644f3a251000000000000000000000000000000000000000000000000000000000000000142738464f50505b708598abab98857260606060606060606060606060594a38241000000000000000000010253a4f64798fa3b8b19c87725c47321d080a0f14191e23272722190d01000000000000000000000000051a2f44586d8397acbfab96826c57422e19040b1a28374654606053443526160700000000000000000000000000001a2f445a6f8599afa8947d68533e29140000000000172b40556a8094a9beae99846f5a5356575a5c5e606264687d94a9bfad98836c57422c17020000000000000000000000000000000000000000000e23384e63788ea3b8b39d88725c47321d0800000000000000000000000000000000000000000000000000000000000000000000000003132332425262728292a2b2b6a69686756656463626160600000000000000000000000000000000000000000000000000162b40566b8092a5b9baa89a8e8275695d5145392c201408000000000000000000182d42576c8398adbda8937c67523d2a3438383633312f2d2b28262422201e1b19171f34495e73899eb3b8a38d78634e39240f0000172c42576c8398adbfa9947d68533e29140f0d0b09050a1f344a5f73899fb4b7a28d77624c37220d00000010253a4f64798fa4b9b29d88725d48331e09000000192f44586e8499aebca7917b66513c271200000000000000000000000000000000000000000000000000000000000000091a28343a3b4256687b8fa2b5a28f7c69564b4b4b4b4b4b4b4b4b4b4b473c2c1b080200000000000000000d22374c61768ba0b5b49f8a745f4b35200b00000004090e11110e06000000000000000000000000000000152a3f54687d92a7bcaf9a86705c47321e09000a192836444b4b4335261708000000000000000000000000000000192e43586e8398adaa95806a543f2a15000000000012273c51667b90a5bab29d887366686b6c6f70737577797b8095abc0ac97826b57412c17020000000000000000000000000000000000000000000d22374c62778da3b8b39f89735e48331e090000000000000000000000000000000000000000000000000000000000000000000000000005142434445464738494a4b4b4a49484736454443424140400000000000000000000000000000000000000000000000013283c4f6276899cb0c0b7ab9f93877a6e62564a3e32261a0d0100000000000000172c41576b8297acbfa9947d68533e29202323201e1c1a181613110f0d0b0803000d22374c61768ca1b6b5a08b76604b36210c0000192e43586e8499aebda8937c67523d28130100000000071e33485d72889db3b9a48f78634e39240f0000000e23384d62778ca1a4a29f8b75604b36200b000000182d42576c8397acbda8937d68533e29130b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b080100000000000b17202526394c5f728598abac998673604d3a363636363636363636332a1f201d150a000000000000000a1f34495e73889db2b7a28d77634e39240f0000000000000000000000000000000000000000000000000011263a4f64788ea2b7b49f8a75604c37220d00000a18263136363025170800000000000000000000000000000000172c42576c8297acac97826b56412c1702000000000e23384d62778ca1b6b6a18c797b7d80838487888b8d8f91939dafc0ab96826b56402b16010000000000000000000000000000000000000000000c21374c60768ca1b7b49f89735f4a341f0a000000000000000000000000000000000000000000000000000000000000000000000000000006162636465666758696a6b6b2a29282726252423223130300000000000000000000000000000000000000000000000c203346596c8093a2aebabdb1a5988c8073685c4f43372b1f1307000000000000162b40566b8296abbfaa95806a543f2a150e0e0b090500000000000000000000000f243a4f64788fa3b8b39d88735e49341f0900001a2f44596e8499afbca7917c67523c271a16130f0c08041c31465b70879cb1bba5907965503b26100000000b20354a5f748a918f8d8a8877624d38230e000000162b40566b8296abbfaa95806a543f2a21212121212121212121212121212121212121212121212121201c14080000000000040c101c2f4255687a8ea1b4a3907d6a574431212121212326292c2e31343631281b0b000000000000061c31465b70869aafbaa5907b66513c2712000000000000000000000000000000000000000000000000000c21364b5f74899eb3b8a38f7965503b271200000008141d21211c14080000000000000000000000000000000000162b40556a8095abad98836d58432e1803000000000a1f34495e73889db2baa6948f91939597999c9da0a2a4a6a8aebbbdab95806a543f2a15000000000000000000000000000000000000000000000b21364b60768ba0b5b5a08b745f4a341f0a00000000000000000000000000000000000000000000000000000000000000000000000000000008182838485867778898a7b7b0a0908070605041312111010000000000000000000000000000000000000000000003172a3d50637785919da9b5c1b6aa9e9286796d6155493d3024180c0000000000152a3f546a8095aabfab96826b56402b160100000000000000000000000000000012273c51667b91a6bbb09b86705b46311c0700001a2f445a6f869bb0bba6917b66503b322f2b2824201d191a2f445a6f869aafbca7917b67523c2712000000081d32475c727d7c797774726f5f4b37220d000000152a3f54697d94a9bfac97826b564136363636363636363636363636363636363636363636363636363530261808000000000000001326394b5e718598aaac9a8773614e3b2c2f3235383b3e404346494b4539291805000000000000192d43586c8297acbda8937d69543f2a1500000000000000000000000000000000000000000000000000081c31465b708599aebda8937d6955402b170200000001080c0c0801000000000000000000000000000000000000142a3f54687d94a9af99846f5a442f1a0500000000061b30455a6f8499adc2b2a7a4a7a8abacafb1b3b5b7b9bbbdc0bdae9e8f7d68543f2a14000000000000000000000000000000000000000000000a1f344a5f748ba0b5b5a08c76604b36210b000000000000000000000000000000000000000000000000000000000000000000000000000000000a1a2a3a495969798a99a9b9ae9e8f7d6e5f4f3f2f1f0f000000000000000000000000000001080c0c08010000000e213447596773808c98a4b0bcbbafa3978b8072665a4e42362a1d0f0000000014293e53687d94a9bfac97826b57412c170b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b152a3f54697d94a8bead98836e58442f190400001b30465b70879cb1bba59079644f4b4744403d3935322e2b2e43586e8498adbda8937d68533e2913000000031a2f435666696764625f5d5a5142301c0800000013283d53687c93a8bdad98836d584b4b4b4b4b4b4b4b4b4b4b4b4b4b4b4b4b4b4b4b4b4b4b4b4b4b4b4a4336261401000000000000091b2e4154677a8da0b3a3917d6a58454244474a4d505356585b5e60574734210c000000000000152a3f54697d94a9beab97826c57422d180300000000000000000000000000000000000000000000000002182d41566b8095aabead98836e5945301b0600000000000000000000000000000000000000000000000000000013283d52677c93a8b09b86705b46301b060000000000172c41566b8095a9b6c2bbb9bbbdbfbdbbb9b7b5b3b1afadaba99e8f8070604e3b2611000000000000000000000000000000000000000000000a1f34495e73899fb4b7a18c76604c37210c00000000000000000000000000000000000000000000000000000000000000000000000000000000000c1c2c3b4b5b6b7b8c9babbbad9d8d7c6d5d4d3d2d1d0d00000000000000000000000008141d21211d140a000005182a3b4955616e7986929fabb7c1b5a99c9084776b5f53473b2d1c0a00000013283d52677c93a8bdad98836c57422d2121212121212121212121212121212121212c41566b8296abc0ab96826b56412c170200001d32475c71879cb1b9a48f786763605c5955514e4a4743403c42576c8297acbfaa95806a543f2a150000000014273848555b57514d4a48453f3324130000000011273c51667b91a7bbaf9a856f606060606060606060606060606060606060606060606060606060605f5444311d08000000000000001225384b5d708497aaae9b88756154575a5c5f6265686b6e707375644f3a251000000000000012273c51667b91a6bbae99846f5a45301b060000000000000000000000000000000000000000000000000013283d52667b90a5bab19c88735e4934200b00000000000000000000000000000000000000000000000000000011263b50667b91a6b19c87725c47321d07000000000013283d52667b8b98a5b1b2b0aeacaaa8a6a4a2a09e9c9a9897948f8070615242321f0b00000000000000000000000000000000000000000000061e33485e73899eb3b8a38d77624c37220d0000000000000000000000000000000000000000000000000000000000000000000000000000000000000e1d2d3d4d5d6d7d8d9dadbbab9b8b7a6b5b4b3b2b1b0b0000000000000000000008182631363631271d1309000d1d2b3744505c6874828d99a5b2bebaaea2958a7d7165594b3a271300000012273c52677c91a7bcaf99846e5843363636363636363636363636363636363636363644596e8499aebda8937d68533e29140000001d32475c72889db3b9a48f807c7875716e6a66635f5c5854514d566b8095abc0ac97826b56412c170000000014293d5265706b65605b554f483c2c1a0700000010253a4f647990a5bab19c87767676767676767676767676767676767676767676767676767676767672604b36210c00000000000000081b2e4154677a8da0b3a5927d6c686c6f717477797c808386897c67523c27120000000000000f24394e63788da3b8b29c88725d48331e09000000000000000000000000000000000000000000000000000f24384d62778ca0b5b6a18c77624e39240f00000000000000000000000000000000000000000000000000000010253a4f647990a5b39e89735e48331e0900000000000f24384d5f6d7a87949f9d9b99979593918f8d8b8987868382807c706152433425140200000000000000000000000000000000000000000000001d32475c72889db3b8a38e78634e38230e000000000000000000000000000000000000000000000000000000000000010000000000000000000000000f1f2f3f4f5f6f808f9eaeb9a999897969594939291909000000000000000001142636444b4b443a30261b11070d1a26323e4b57636f7b8894a0acb8bfb3a79b8f83766956412d1803000011263b50667b91a6bbaf9a866f5a4b4b4b4b4b4b4b4b4b4b4b4b4b4b4b4b4b4b4b4b4b4b5c70879bb0bba5907b66513c27120000001e33485e73899fb4beab9b95918e8a8783807b7874706d6966625f697d94a9bfad98836c58432d18000000051a2e43576c82807a756f69645a4a37230e0000000e23384e63788ea3b8b39f8e8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c77624c37220d00000000000000001124374a5d708396a9ae9c897b7d828487898d8f9295989b947d68533e29140000000000000c21364b60758b9fb4b4a08b75604b36210c000000000000000000000000000000000000000000000000000a1f34495d72879cb1baa6917c67523e29140000000000000000000000000000000000000000000000000000000e23384e63788ea3b4a08b745f4a35200b0000000000091d30414f5c6975838988868482807d7b79777673726f6e6b6a67615243342516070000000000000000000000000000000000000000000000001c31475c70879cb1b9a48f78634e39240f000000000000000000000000000000000000000000000000000000040d1416140e0500000000000000000001112131415161708090a0b0b7a797877767574737271502000000000000000b1e3144546060564c42382e241a100915212d3945525e6a76838f9ba7b3bfb8aca094846e59442f1a0500000f253a4f647990a5bbb09b867060606060606060606060606060606060606060606060606073899eb3b8a38e78634e39240f0000001f344a5f748a9cadbeb9afaaa6a39f9b9894918d8986837d7b7773707c93a8bdaf99846f5a442f1a0000000b1f34485d7186958f89847d7766513c27120000000d22374c62778ca1b7bcaca2a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1a18d77624d38230e0000000000000000081b2e405366798d9fb2a594909396999c9fa2a4a7aaadab95806a55402b16000000000000091e33485d72879cb1b8a38e78634e39240f00000000000000000000000000000000000000000000000000061a2f44596d8397acbeaa96826b57422d190400000000000000000000000000000000000000000000000000000d22374c62778ca1b6a18c76604b36210c0000000000011323323e4b5864717472706e6c6a68666462605e5c5a585654524e4334251607000000000000000000000000000000000000000000000000001b30465b70879bb0baa59079644f3a250f0000000000000000000000000000000000000000000000000000071521282b2921170b00000000000000000003132332425262728292a2b2b5a5958575655545321e0a0000000000000316283b4e607273695f554b41372d23190f0f1b2834404c5965707d8a96a2aebebeb09b86705b46311c0700000f24394e63788fa4b9b19c8776767676767676767676767676767676767676767676767676768ca0b5b5a08b76604c37210c0000001e33485c6e7d8fa0b0b9bdbfbbb8b4b0ada9a6a29f9b9794908d89868292a7bcb09b86705b46301b0000001025394e62778ca0a39e988e7864503b26110000000b20364b60748ba0b4c1beb7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7a48f78634e38230e0000000000000000001124374a5d708396a9b2a7a5a8abaeb1b4b5b3b0adaba897826c57422d18000000000000041b30455a6f8499aeaca6917b66513c27120000000000000000000000000000000000000000000000000000162b3f54697d93a7aaa59a86705b47321d0800000000000000000000000000000000000000000000000000000b21364b60758ba0b5a38d77624d38230e0000000000000514212d3a47535e5f5d5b59575553514f4d4b49474543413f3d3a3225160700000000000000000000000000000000000000000000000000001a2f445a6f869bb0bba5907a66503b261100000000000000000000000000000000000000000000000000051625333d403d34281d1105000000000000000005142434445464738494a4b4b3a3938473614d39240f0000000000000d203345586a7d867c72675d544a40362b21170d16222f3b47535f6b778490a1b5c7b29d88725d48331e0900000e23384d63778da3b8b39f8e8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c92a5b9b39e89735e49341f0a000000192c3e5060708292a1a4a8abafb3b6babebebbb7b3b0aca9a5a29e9a979dadc0b29c88725c47321d000000162a3f53687c91a6b8b19c88735e4a36210c0000000a1f34495e738997a3b0b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5a48f78634e39240f000000000000000000071a2d405366798c9fabb3b1aeaba8a6a3a09e9b98969390846e59442f1a00000000000000172c41576b82969a9794917d69543f2a15000000000000000000000000000000000000000000000000000011263b4f64798e9995908c8875604b36200b00000000000000000000000000000000000000000000000000000a1f344a5f73899fb4a48f78644f3a240f0000000000000003101c293642494a48464442403e3c3a38363432302e2c2a28251f14070000000000000000000000000000000000000000000000000000001a2f44596e8499afbca7917b66503b26110707070707070707070707070707070706010000000000000313233343505651463a2e22170b000000000000000006162636465666758696a6b9b1a18f79644f3a250f000000000005172a3d4f627588998f857a70665c52483e342a2016111d2936424e5c6b7a8a9eb3c8b49f8a745f4a35200b00000d22374c62778da2b7bcaca2a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1a4b0c1b09b87705c47311c070000000f213242536374858c8f93979a9ea1a5a8acb0b3b7babebebab6b3afacafbbc7b39e89735e49341f0000071b3044596d8297abc0ac97836d5945301b07000000061d32465a6c7986929fa0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a09079644f3a250f00000000000000000000112336495c6f838f989e9c999694918e8b898683827d7b786d59442f1a0000000000000014293f53687d888683807b786a55402b1600000000000000000000000000000000000000000000000000000d21364b5f748985807b77726c5c48341f0a0000000000000000000000000000000000000000000000000000071e33485d72889db3a5907a66503b26110000000000000000000b18252f343433302f2c2b29272523211f1d1b19171513100b0200000000000000000000000000000000000000000000000000000000192e43586e8499aebca7937c67523c271d1d1d1d1d1d1d1d1d1d1d1d1d1d1d1d1d1b150b00000000001020314151616b63584c4034281d11050000000000000b192633414f5c6a778ba0b5b8a38d77634e38230e00000000000f213447596c8092a5a2988d83796f655b51473d33281e1e2e3d4c5b6a7a8a99a8b9bcac9d8c76614c37220d00000b21364b60768a9babbbbeb7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b8c1bbae99846e59442f1a05000000031425354556677376797d8286898c9094979b9ea2a5a9adb0b4b8bbbfc2c6b7a99b8b745f4a341f00000c21354a5e73889cb1bba6927c68533f2b160100000000172b3d4e5b6774828b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b7964503b251000000000000000000000071a2d405365727b85898784827d7b787673706e6b6866635d4f3d2a160000000000000011263b506473726f6c6a67645c4d3a26120000000000000000000000000000000000000000000000000000081d31465b6e74706b66625d584e3f2d19050000000000000000000000000000000000000000000000000000011c31465b70879cb1a7917c67523c27120000000000000000000007121b1f1f1e1b1a17161412100e0c0a07000000000000000000000000000000000000070e13131313131313131313131313131313172c42576c8398adbda8937c68533d3232323232323232323232323232323232322f281c0e0000000d1e2e3e4f5f6f8075695d52463a2e22170b000000000e1b293644515f6d7a8896a5b9b7a18c76614c37220d0000000000182b3e516376899cafb4aaa0968c82776d63594f453b312d3c4c5b6a798999a8b7bcad9e8e7d6f5e4a36210c00000a1f33485b6c7c8d9dadb5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5aa9e91826b56412c1702000000000717283849575e6165686c7073777b7d8386898d9094989b9fa3a6aaadb1a8998b7c6e5c48331e000011263b4f64788d9ca2a8a18c77634e39251100000000000e20303d4a56636f747474747474747474747474747474747474747474747474747474747474747473634f3a2510000000000000000000000010233647555f687173716e6b696663615e5b595653504e4a4031200e000000000000000d213447565f5d5a5854524f4a3e2f1e0b000000000000000000000000000000000000000000000000000002172b3e505c5f5b56524d49443d302110000000000000000000000000000000000000000000000000000000001b30455a6f869bafa8937d68533e291300000000000000000000000000000000000000000000000000000000000000000000000000000000000000000d192328292929292929292929292929292929292c41566b8297acbfa9947d685347474747474747474747474747474747474747443a2c1b09000a1b2b3c4c5c6d7d8e877b6f63584c4034281d110503111e2c394754626f7d8b98a6b3b4a6998b745f4b35200b00000000001e33475b6d8293a6b2bcbdb3a99f958b82766c62584e443c4b5a6a798998a7b6bdad9e8f80706051412e1b07000004182b3d4e5e6e808f9fa0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0998d807365523e29140000000000000a1a2b3944494c5054575b5f6266696d7074777b8083878a8e9195989c988a7b6d5e503f2d19000012273c52677b83888e939987725d4934200b000000000002121f2c3945525d5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f564634200c000000000000000000000006182938434c555d5f5c595754514e4c494644413e3b39352e2213030000000000000005172938444a484543403d3a362d2011000000000000000000000000000000000000000000000000000000000f21323f484a46413d38342f2920120300000000000000000000000000000000000000000000000000000000192e43586e8499aeaa95806a543f2a15000000000000040e151716120e0a06020000000000000000000000000000000000000000000000000000000b1c2b363d3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e40566b8296abbfaa95806a5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c574a38251100152839495a6a7a8b9b998d8275695d52463a2e221713212e3c4a576472808e9ba9b6b1a496897a6d5c48331e0900000000001f344a5f73828b959fa9b3bdbcb2a89e938980756b61574d5a69788898a7b6bdae9e8f8070615142322311000000000e203040506170828b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b887b6e62554735230f000000000000000d1c283034383b3f42464a4d5154585c5f63666a6e7175787c80848788796b5d4f4032221000000f24384c5d686d73787d84826c58432e1a06000000000000020e1b273440484a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a44382817040000000000000000000000000b1a26303941494a4744413f3c393734312f2c292624211b11040000000000000000000b1a27303433302d2b2825211a1002000000000000000000000000000000000000000000000000000000000313222d3334312d28241f1b150d02000000000000000000000000000000000000000000000000000000000a172c42576c8397acac97826b56412c170000000000081621292c2b27231f1b17130f0b07030000000000000000000000000000000000000000000015283a4852535353535353535353535353535353535353546a8095abc0ab95807272727272727272727272727272727272727272726855402b16001c31445767778899a9aa9f93877b6f63584c40352924313f4c5a677583909eacb9afa19486786a5d4f3e2c190400000000001c304456636d77828c96a0abb5bfbab0a69c92887d73695f69788897a6b6bdae9e8f80706151423323140500000000021222324252637274747474747474747474747474747474747474747474747474747474747474746a5d51443829180600000000000000000b151b1f23262a2d3135383c3f43474a4e5155595c6063676b6e72746a5b4d3f312214040000091c2e3f4c53595e646a707466523e29150000000000000000000a16232d3334343434343434343434343434343434343434343434343434343434343434343430271a0b000000000000000000000000000009131c252e3434322f2c2a2724221f1c1a1714110f0c0700000000000000000000000009141c1f1e1b191513100c06000000000000000000000000000000000000000000000000000000000000000410191e1f1c18130f0a06000000000000000000000000000000000000000000000000000000000009131c263040566b8296abad98836c57422d1800000000091826333e42403b3834302c2824201c1814100c080400000000000000000000000000000000001c3145586668686868686868686868686868686868686868697d94a9bfad98888888888888888888888888888888888888888888836c57422c17001f344a5f748694a0acb8b0a5998d8275695d52463a34424f5d6a788693a1aebaad9f918375685a4c3f31210f00000000000014273846515b656f79838d98a2acb6c0b9afa59b90867c72778897a6b5bdae9f8f8070615242332415060000000000000414253545545e5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f584c4033261a0b0000000000000000000000060a0e1115191c2023272a2e3235393d4044474b4e5256595d5f594c3d2f2113040000000011212f393f444a50555b5f584836230f000000000000000000000511191e1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1c1409000000000000000000000000000000000009121a1f1f1d1a1715120f0d0a060000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000008121c262f39434c566a8094a9af99846e59442f1a0000000b19273644515754504c4945413d3935312d2925211d1915110d09050100000000000000000000001f344a5f747d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d94a9bfb5a59d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d98836c57422c17001e32475a6b76838f9ba7b3b6aa9f93877b6f64584c4452606d7b8996a4b1b8aa9c8f827265574a3c2e211303000000000000091a28343e48525c66707a858f99a3adb7c1b8aea3998f858796a6b5bdae9f9082706152433424150600000000000000000717273643494a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a453b2e221509000000000000000000000000000000000001070b0e1215191d2024282b2f3236393d4144484a463b2e1f1103000000000003111d252a30363b41464a453a2b1907000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000060c0e0d0a06030000000000000000000000000000000000000000000000000000000000000000000000000000000000000000070c0e0c0600000000000000000000000000000000000000000008111b252e39424c565f69737c93a8b09b86705b46301b00000d1b29374553616c6965615d5955514d4a46423e3a36322e2a26221e1a16120d0500000000000000001f344a5f748b94949494949494949494949494949494949494949daec2c3b8b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3ad98836c57422d1800182b3d4d5965717d8995a1adb9b0a5998d82756a5e5562707d8c99a6b4b5a79a8c7d70625547392c1e100300000000000000000b17212b36404a545e68727c86909ba5afb9c0b6aca29898a5b4beaf9f90827162524334251606000000000000000000000918252f34343434343434343434343434343434343434343434343434343434343434343431291d110400000000000000000000000000000000000000000000000002080b0f13161a1d2125282c2f3334322a1d100100000000000000000910161b21272c323431281c0d000000000000000000000000000000000a1114151515151515151515151515151515151515151515151515151515151515140f070000000000000000060d10100b05000000000000000000000000000000000000000000000000000000000000000000000002101a2123221f1b1815110e0b0704010000000000000000000000000000000000000000060b0d0b050000000000000000000003101b2123211a0f020000000000000000000000000000000000000e1a242e38414c555f69727c86909bacaf9c87725c47321d000b1c2b3947556371807d7a76726e6a66635e5a57534f4b47433f3b37332f2b2721170b000000000000001e33485e73899fa9a9a9a9a9a9a9a9a9a9a9a9a9a9a9a9a9a9a9aebbcbcdccc8c8c8c8c8c8c7c6c5c4c4c3c2c1c0c0bfbfbdaf99846e58432e19000e1f2f3c47535f6b77838f9ba7b3b6aa9f93887b6f6572828f9ca9b7b2a5978a7b6e60524437291c0e0000000000000000000000050f19232d37414b555f69737d88929ca6b0babfb5acacb5beafa09182716253443425160700000000000000000000000008131b1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1d160c000000000000000000000000000000000000000000000000000000000000000003080c1013171a1e1f1d170c00000000000000000000000000070d12181d1f1c150b00000000000000000000000000000002101c252a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a29231a0d0000000000000e1a2226251f19130d07010000000000000000000000000000000000000000000000000000000000000312202d36383734302d2a2623201c1915120f0b0805010000000000000000000004090f151b20221f180e01000000000000000313212e3638352c201204000000000000000000000000000000000c1d2c37414b545e68727b868f99a3acb5a592806c5945301b0015283a495765738290938f8c8884807b77736f6b68645f5c5854504c4844403c34291a0a0000000000001e33485e73889db3bfbfbfbfbfbfbfbfbfbfbfbfbfbdbdbcbcbbbab9b8b8b7b6b5b4b4b3b3b1b1b0afafadadacababa9a9a8a799846e58432e190001111e2a36424e5a66717d8a96a2adbab1a5998d827583919facbab0a29587796b5e50423427190b000000000000000000000000000006101a242e38424c56606a758089939ea7b1bbc1c1bfb0a091827263534435261607000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000f202e393f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3e372b1c0b000000000e1e2c363b39332e28221c16100a040000000000000000000000000000000000000000000000000000021121303e4a4e4c4945423f3b3834312e2a2724201d1a1613100c09060200040c12181e24292f3537342b1f0f000000000000011121313f4a4e493e3022140600000000000000000000000000000016293b49545e67717b858f98a2acb5aca3998875624f3c2916001c31455867758492a0a8a4a09c9894908d8985827c7874706c6865605d595550473828180800000000001d32475c72889db3b3b1b1b0b0afaeadacacababa9a8a8a7a7a5a5a4a3a3a1a1a09f9f9d9d9c9c9b999998989796959494939391846e58432e190000000c1824303c4854606c7784909ca8b4b7ab9f938994a1afbbaea0928476685b4d4032241609000000000000000000000000000000000007111b26303a444e58626c76808a959fa9b3b0aca19282726354453526170800000000000000000000000000000000020f181e1f1e1d1b1917161412110f0d0b0a080604030100000000000000000000000000000000000000000000000000000000000000000a111515110900000000000000000000000000000000000000000000000000000000000000000000000002090d0e0e0e0e0e0e0d090200000000000000000b1c2d3e4c54545454545454545454545454545454545454545454545454545454545454534939281501000006192b3c49504e48423c36302a241e18120c06000000000000000000000000000000000000000000000110202f3f4e5c63615e5a5754504d4a46433f3c3935322f2b2825211e1b17141720272d32383e43494c483d2d1c0900000000000f1f2f3f4f5d635c4e403224170900000000000000000000000000001d31455867707a858e98a2abb5ada39990867c6b584533200d001f344a5f748593a1b0bdb9b5b1ada9a5a29e9996928e8a86827d7976716d6964564636261606000000001c31465b70879c9f9d9c9c9b9b99999897979595949393919190908f8d8d8c8c8b8a898888878786848483838282807d7d7c7c7b7b6e59442f1a0000000007131e2b36434e5a66727d8a96a2aebab1a59fa5b2b8ab9d8f827366584b3d2f221406000000000000000000000000000000000000000009131d27313b454f59636d77828c969e9b9792837363544536271708000000000000000000000000000000000312202b33343332302e2c2b2927262422201f1d1b1a18161413110f0e0c0a080605030100000000000000000000000000000000000004101c262b2a251b0f0000000000000000000000000000000000000000000000000000000000000000000009151e23232323232323231e15090000000000000718293a4b5c686a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a665744301b0700000c2135495a65625c56504a443e38332d26211b150f09030000000000000000000000000000000000000f1f2e3e4d5d6c7876736f6c6865625f5b5854514e4a4744403d3a3633302c2928343b41474c52585e625a4b382510000000000e1d2d3d4d5d6d786c5e50423427190b000000000000000000000000001f344a5f74848d98a1abb5ada39a90867c73695e4e3b281603001e33485e73899eb1bfc2b8b5b8bcbebab6b2aeaaa6a29f9b97938f8b87837d73635344342413010000001b30465b708689898888878686848483828280807d7d7c7b7b79797878777676747473727270706f6f6e6d6c6b6b6a69686767666660513e2b160000000000010d1925313d4955606d7885919ca9b4b8b4b8b6a89b8d80716356483a2d1f110400000000000000000000000000000000000000000000000a141e28323d47515a646f79838986837d736455453627180900000000000000000000000000000000031221303e474a4847454342403e3c3b3937363432302f2d2b2a28262423211f1e1c1a18161513110f0e0c09040000000000000000000915212e39403f392d1e0d000000000000000000000000000000000000000001030506030000000000000008182631383838383838383831261808000000000314253647586879808080808080808080808080808080808080808080808080808080808080735e48331e09000013273b50647877716b655f59534d47413b352f29231d17110b0300000000000000000000000000000c1d2d3d4c5c6b7a8b8b8885827d797773706d6966635f5c5955524f4b4845413e3b4650555b61666c727768533f2b160200000b1c2c3b4b5b6b7b8a7c6e60524537291b0e0000000000000000000000001d3246596c8092a5b4aea49a90877d736960564c40301f0c00001d32475c72889db2c4b2a5a0a3a7abafb3b7bbbfbbb7b3afaca7a3a09c98928271615242301d09000000192e43586b747373727270706f6e6e6c6c6b6a6a6868676766646463636261605f5f5e5d5c5b5b5a5a5858575656545453525250504c4233220f0000000000000007131f2b37434f5b6773808b97a3afb5b3a6988b7c6f615345382a1c0f0100000000000000000000000000000000000000000000000000020c15202a343e48525c667074706d696355463727180900000000000000000000000000000000031221303f4e5b5f5e5c5a5857555352504e4c4b4947464442403f3d3b3a38363433312f2d2c2a28262523211e180d000000000000010e1a26333f4b54544a3c2b190800000000000000000000000305070a0c0f111316181b1b1710050000000000132536444c4e4e4e4e4e4e4c44362513000000000f2132435464758795959595959595959595959595959595959595959595959595959595958a745f4a341f0a0005192d42566a808b868079736d67615b554f49433e38312b261f160900000000000000000000000000172a3b4b5b6a7a8a99a09d9a9693908c8986837d7b7774716e6a6764605d5a56535056636a70757b8287836e5945301c08000015283a495969798a9a8d7d70625547392c1e100200000000000000000000172a3d4f6275889ba59b91887d736a60564d43392f22120100001b30465b70879bb0bda8958b8f93979a9ea2a6aaaeb2b6babebcb8b4b1ada0908070604c38230e00000015293c4e5b5f5e5e5c5c5b5b5a5858575756555453535252504f4f4e4e4c4c4b4a4a4848474646444443434240403f3f3e3d3c3b3b38302415040000000000000000020d1a25323d4955616d7985919da0a095887a6c5e514335281a0c0000000000000000000000000000000000000000000000000000000000030d17212b353f49535d5f5c585450463728190a00000000000000000000000000000000021221303f4e5d6c7473726f6e6c6a6867656362605e5c5b5957565452504f4d4b4a48464443403f3d3b3a3836332b1e0f0000000003121f2b3844505d69685a4837261403000000000000080f1315181a1c1f212426282b2d30302b221506000000001b2f4354616363636363636154432f1b07000000192c3e5061718394a4abababababababababababababababababababababababababababa08b74604b36200b000b1f33485c70869a9a948e88827b76706a645e58524c46403a332718080000000000000000000000001d32465969798998a8b5b2afaba8a5a19e9b9794908d8a8783807c7875726f6b686463737d858a90969b88735f4a36220d00001c31455867778898a89d8f82726557493c2e2012050000000000000000000d203346586b7d9192887d746a60574d433a30271d11040000001a2f445a6f859aafbca7917b797d8286898e9296999ea2a5a9adb1b5bbbeae9e8f7964503b25100000000d1f303e474a494847474646444443424240403f3e3e3c3c3b3a3a3838373736353433333231302f2f2e2e2c2c2b2a2a2928272626241d130600000000000000000000000814202c38444f5c6773808b8b8b8577695c4e403325170a0000000000000000000000000000000000000000000000000000000000000000040e18232d3741494a47433f3c3428190a00000000000000000000000000000000000f20303f4e5d6c7b8b8987868482807d7c797877757372706e6c6b6967666462605f5d5b5a58565453504f4d4b473c2d1c0a0000001121303d4955616e7a7766554332210f00000000000e1b24282a2d2f323436393b3e404245453f332414050000001f34495e72787878787878725e49341f0a0000001e33485c6e8090a0b1c0c0bfbfbfbfbfbfbfbfbfbfbfbfbfbfbfbfbfbfbfbfbfbfbfbfb7a18c76604b36210b0011263a4e63778ba0aea8a29c96908a857d78726c66605a544e453626150400000000000000000000001f344a5f748898a7b6c6c7c1c0bdbab6b3afaca9a5a29f9b9895918e8b8784827c79768292999fa4aaa28e7965503c271300001f344a5f748696a4b2ad9f918375675a4c3e3023150700000000000000000316283b4e6174877d756a61574d443a31271d140a0000000000192e43586e8398adbda8937c68686c7074787c8285898d9094999ca0a9b7bca7917b66513c27120000000112202b33343433323230302f2f2e2c2c2b2b2a292927272625252323222221201f1e1e1d1c1b1a1a1918171616151513131211110f090100000000000000000000000000020e1a26323e4a56626e7474747467594c3e30221507000000000000000000000000000000000000000000000000000000000000000000000006101a242e3434322e2a2721170a000000000000000000000000000000000000182b3e4e5d6c7b8b9a9e9c9b9997959492908f8d8b8988868483807d7c7b7877767472706f6c6b6a68666463605a4b3926110000081b2e3f4e5a6773808c8472614f3e2d1b0a0000000e1e2c373d3f424447494b4e505355575a5a51423223130400001f344a5f748b8f8f8f8f8b74604b36200b0000001f344a5f748b9dadbebaaea9a9a9a9a9a9a9a9a9a9a9a9a9a9a9a9a9a9a9a9a9a9a9a9a9a28d77624c37220d00182c4054697d92a6babdb7b1aba59f99938d87827a756f6962544433221000000000000000000000001d31465a6f8499adc2c4b6acabafb2b5b9bcc0bebab7b4b0adaaa6a3a09c9996928f8c90a0adb3b9bda894806a56412d1904001d32465a6a788794a2b0afa19486776a5c4e413325170800000000000000000c1f3144576a746b61584e443b31271e140a01000000000000172c42576c8297acbfa9947d6954575c5f63686b6f73777b8084888c9aaebda8937d68533e281300000000020f181e1f1f1e1d1d1b1b1a191917171616151413121211100f0e0e0d0c0b0b0a080300000000000000000000000000000000000000000000000000000000000000000000000914212c3844505c5f5f5f5f57493b2e201205000000000000000000000000000000000000000000000000000000000000000000000000000007111a1f1f1d1915120d04000000000000000000000000000000000000001e33475b6c7b8b9aa9b3b1b0aeacaba9a7a5a4a2a09f9c9b9997959493908f8d8b898887848382807c7b7977766954402b1500000d22374b5d6c7885919d907d6d5c4a39281605000a1b2b3c4a5254575a5c5e606365686a6c6f6f60514131221202001f344a5f73899fa4a4a18c76604b36210c0000001e33485d72889db2c1ad9c94949494949494949494949494949494949494949494949494948d77634d38230e001d32465b6f8498a3a9afb5bbbfb9b3ada7a19b958f89837d7261503f2e1d0c00000000000000000000172c40556a7d93a8bdbaa798979a9da0a4a7abaeb1b5b8bbbfbfbbb8b4b1aeaba7a4a0a2aebeb8b2aca69a85705c47331e0900172a3c4c5a68768492a0aeb1a496887a6c5f514335261502000000000000000215283a4c5a5f584e453b31281e140b010000000000000000162b40566b8095abc0ab95806b5642474b4e53575a5e63666a6e728297abbfa994806a543f2a15000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000030f1b27333e484a4a4a4a44392b1d10020000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001f344a5f74899aa9b8c6bdbbbcbec0bebcbbb9b7b5b4b2b0afacaba9a7a5a4a2a09f9d9b9998969493918f8d806a55402b1600000f253a4f64798a96a2ae9c8b7968574534231105162738495a676a6c6f707376787a7c8083857d6f5f4f4030200e001e33485e73899eb3b7a28d77624c37220d0000001c31465b70869bb0bda8937d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d78634e38230e001f344a5f7483898f959aa0a6acb2b8bebcb6b0aaa49e9891806e5d4c3b29170300000000000000000012273b5065798ea3b7b5a08b8285888c8f9296999ca0a3a6aaadb1b4b7bbbebfbcb9b5b7bfb6a69d97928c8676604b36210b000d1e2e3c4a58667482909eacb4a6988b7c6f615344321f0b00000000000000000b1d2e3c464a453b32281e150b0100000000000000000000152a3f54697d94a9bfac97826c574232363a3e42464a4d5255596a8094a9bfab97826b56412c1701000000000000000000000000000000000000000000000000000000000000060c0e0e0e0e0e0e0e0a0400000000000000000000000000000000000000000000000000000000000000000000000915212c333434343431281b0d00000000000000000000000000000000000000000000000000000000000000000000000000000000000000050c141818140d0200000000000000000000000000000000000000001e33485d72889db3c7b6a9a5a7a9abacaeb0b1b3b5b7b8babcbdbfbebcbbb9b7b5b4b2b0afadaba9a8a6a4947d68533e291400000d22364a5d6e8091a2b3a99786746352402f1e1223344556677880828487898b8d90939597998d7d6d5e4e3d2b17001d32475c72889db3b8a38d77634e38230e0000001a2f44596e8499aebfaa95806a68686868686868686868686868686868686868686868686868675b4935200c001d314558676e747980868c92979ea3a9afb5bbbeb8b2ac9d8c7a695846331e0a0000000000000000000d22364b5f74899db2b8a48f7a6f7376797c8284888b8e9195989c9fa2a6a9acb0b3b9c6c2ad9989837c77716a5b48331f0a0000101e2c3a48566471808f9caab6a99b8d8071614e3a2611000000000000000000101e2a323431281f150b0200000000000000000000000013283e53687c93a8bdad98836e58432e2125292d3135393d4153687d93a8bdad98836c58432d18030000000000000000000000000000000000000000000000000000000002101a21232323232323231f170b0000000000000000000000000000000000000000000000000000000000000000000000040f191e1f1f1f1f1c150a00000000000000000000000000000000000000000000000000000000000000000000000000000000000109111820282d2d291f1203000000000000000000000000000000000000001c31465b70879cb1beaa989092949597999b9c9ea0a1a3a5a7a8aaacadafb1b3b4b6b8b9bbbdbfbfbdbba7927c67523c27120000071b2d3f5061738596a7b5a392826f5e4d3b2a1d3041526374859497999c9ea0a3a5a8aaacab9c8c7c6c5a46321d001c32475c71879cb1b9a48f78634e39240f000000172c41576b8297abc0ac97826c57535353535353535353535353535353535353535353535353524b3d2c19060016293b4a545a60656b71777d83898f959ba1a7acb2bcbbaa998876614c37220d000000000000000000081c31455a6f8498adbea995806b5e6164686b6f7275787c8083878a8d9194979b9ea8b8bfaa95806e68635d574d3d2b18040000000e1c2a38465461707d8c9aa8b6ab9d8f7d6954402c17030000000000000000000d171d1f1c150c02000000000000000000000000000012273c51667b91a7bcaf99856f5a442f1a1014181c2024283c51667b91a7bcaf99846f5a442f1a050000000000000000000000000000000000000000000000000000000011202d363838383838383833291b0b000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000020d151c242c343b42423c302110000000000000000000000000000000000000001a2f445a6f869aafbca7917b7c7d8082848687898b8c8e9091939597989a9c9d9fa1a3a4a7a8a9acadafa5907965503b2610000000102133445566788a9bacb09f8d7c6a59483625394d5f708292a3acaeb1b3b5b6b4b1b0b6baaa9a89735e48331e001b30465b70879cb1baa59079644f3a250f000000152a3f54697d94a9beae99846f5a443e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3d382d1f0e00000c1d2c383f454b51575d63686f747a82878c92989facbeb6a18c76614c37220c00000000000000000001172c4055697d93a8bcae9a86705c4c5053565a5d6064676a6e7174787b8083868a9cb1bca7927c68544e48423b2f1f0e00000000000c1a28364451606e7b8a98a6b7ac98846f5b46321d090000000000000000000000000000000000000000000000000000000000000010263b50657990a5bbb09b87705b46301b060000070b10253a4f647990a5bab09b86705b46301b060000000000000000000000000000000000000000000000000000000b1e2f3e4a4e4e4e4e4e4e4d4639291704000000000000000000000000000000000000030d141716120d09040000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000004131f29303840485057574e3f2d1a07000000000000000000000000000000000000192e43586e8398adbda8937c67686a6c6e6f7173747778797b7d8082838687888b8c8d8f91939497989a9c8f78634e39240f00000004152637495a6b7d8fa0b1ab998876655443313c52677c8e9fb0b6aba7a5a3a19f9c9ba5b6af9b86705b46311c001a2f445a6f869bb0bba5907b66503b261100000013283d52677c92a7bcb09b87705c47312929292929292929292929292929292929292929292928241b0f010000000e1b252b31373d43484e545a60666c72777d848ea2b7b7a18c76604b36210b0000000000000000000012263b5064798ea2b7b49f8a75614c3b3e4145484b4f5255595c6063666a6d71879cb1b9a48f7965503b342e281e11010000000000000a18263442505e6b79889bafb29e8a75604c38230f00000000000000000000000008121b1f1f1a110500000000000000000000000f24394e63788fa4b9b29d88725c47321d08000000000e23384e63788ea3b8b29c88725c47321d0800000000000000000000000000000000000000000000000000000012263a4d5c636363636363625746331f0b0000000000000000000000000000000000061420292c2b27221d1914100b060200000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001222313c444c545b636b6c5d4a372310000000000000000000000000000000000000172c42576c8297acbfa9947d69545557585a5c5e5f62636467686a6c6e6f7073747678797b7d80828385878877624c37220d00000000091a2b3d4e5f708294a5b6a6948371604f3d3b5065798fa4b9a89892908e8c8987879aafac97836d58432e19001a2f445a6f8499afbca7917b66513c271200000010253b5064798fa4b9b39e89735e49341f1313131313131313131313131313131313131313131310080000000000000811161c22282e343a40464b51575d6369768ca1b7b5a08b74604b36200b000000000000000000000d21364a5f74899db2b9a48f7b665243434343434343434344474b4e51555f74899fb3b7a18c77624d382319140b00000000000000000008162432404e5b6b8094a8b8a4907b66523e29150100000000000000000007111b252f34342e231506000000000000000000000e23384d62778da3b8b39e89735e48331e09000203060d22374c62778ca1b7b39f89735e49341f0a000000000000000000000000000000000000000000000000000000162b40556a78787878787875634e39240f00000000000000000000000000000000091624323d42403b37322d2924201b17120d0904000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000081c2f404f5860676f77807966533f2c19050000000000000000000000000000000000162b40556a8095abbfab95806b564042434547484b4c4e5052535457585a5c5e5f61636466686a6b6d6f70726f5e4a35200b00000000000e1f30415364758799aab2a18f7d6d5b4a384d62778ca1b6a38d7c7a78767372869bafa994806a55402b1600192e43586e8499aebda8937c67523c27120000000e23384d62778da2b7b5a08b75604b36210c0000000000000000000000000000000000000000000000000000000000000002080e141a20252b31373d43494f61768ca1b7b5a08b745f4a341f0a00000000000000000000081c31455a6f8398acbeaa95806b5858585858585858585858585858585862778ca1b6b49f89745f4a35200b000000000000000000000000061422303d5065798ea2b6aa96826d58442f1b070000000000000006101a242e3842494941332312000000000000000000000c21364b60768ca1b6b5a08b745f4a3520131517191b1c20364b60748ba0b5b5a08b74604b36200b000000000000000000000000000000000000000000000000000000152b40546a808f8f8f8f8f7a65503b26110000000000000000000000000000000b192634424f5755504b47423e3934302b27221d19140f0b0602000000000000000000000000000000000000000000000000000000000000000000000000000000000e23374b5e6c737b838b93836f5c4835210e000000000000000000000000000000000014293e53687d94a8beac97826c57422c2e3032333537383b3c3e4042434547484a4c4e4f51535456585a5b5d5c51412e1b060000000000011324354758697a8c9eafad9c8a796756454a5f74899eb3a5907b6663605f73899eb3a6917b66513d281300182d42576c8398adbda8937d68533e29130000000c21364b60758ba0b5b7a28d77634d38230e0000000000000000000000000000000000000000000000000000000000000000000000050b11171d23292e374c62778da3b8b49f89735e49341f0a0000000000000000000001172b4054697d93a7bcaf9a86706e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e6e798fa4b9b19c87715c47321d0800000000000000000000000000041221364a5e72879bafb09c88725e4a36210d0000000000000917232d37414b545e5d51412e1b080000000000000000000b20354a5f748ba0b5b6a18c76604b3626282a2c2e30323436495e73899fb3b7a18c76614c37220d00000000000000000000000000000000000000000000000000000014293e53687d93a4a4a4927c67523d281300000000000000000000000000000d1b29374452606c6965605c57524e4945403b37322d2924201b16120d08040000000000000000000000000000000000000000000000000000000000000000000000000f253a4f6479888f979f9f8b7764513d2a17030000000000000000000000000000000012273c52677c92a7bcae99846e58432e191b1d1e2022232527292b2c2e3032333537383a3c3e3f41434446484740332312000000000000000618293a4c5d6e8091a3b4a89785736251475c70869bb0a8937d68534c62778ca1b6a38e78634e39240f00172c42576c8297acbfa9947d69543f2a14000000091f34495e73889db3b9a48f7964503b2510000000000000000000000000000000000000000000000000000000000000000000000000000002080e1423384d62778da3b8b49f89735e48331e09000000000000000000000011263b4f64788ea2b7b49f8b8484848484848484848484848484848484848492a7bcae99846f5a442f1a050000000000000000000000000000071b2f43586c8295a9b6a28d7864503b2713000000000005172735404a535d6771705e4b382512000000000000000000091e33485e73899eb3b8a38d77624d393b3d3f41434547494b4c5c72889cb2b8a38e78634e38230e00000000000000000000000000000000000000000000000000000012273c51667b91a7b9a9947d69543f2a14000000000000000000000000000b1c2b39475462707d7d7975706c67635e5955504b47423e3934302b26221d19140f0b0601000000000000000000000000000000000000000000000000000000000000000d22364b5e718598abb3a894826d5a4633200c0000000000000000000000000000000011263b50657a90a5bbaf9b866f5a45301b0505090b0d0e1012141517191b1c1e2022232527282a2c2e2f3133322d23150600000000000000000b1d2e3f5162738596a7b4a391806f5d4c586e8398adab96826b575065798fa4b49f8b75604b36210c00162b40566b8297acc0ab95806a543f2a15000000061c31465b70879bb0bca7927c67523d281300000000000000000000000000000000000000000000000000000000000000000000000000000000000e23384e63788fa4b9b39d88725d48331e0800000000000000000000000c21364a5f73889db2bba99c999999999999999999999999999999999999999faec0ab96826c57422c170200000000000000000000000000000014293d5165798ea2b7a893806a56412d1904000000000e213445535c66707a857a6754412e1b080000000000000000051d32475c72889db2b9a48f78634e4e50525456585a5c5e60626470869bb0baa59079644f3a251000000000000000000000000000000000000000000000000000000010253a4f647990a5baab95806b56402b160100000000000000000000000015283a49576472828f938f8a86827c77736e6965605c57524e4944403b37322d29241f1b16120d0804000000000000000000000000000000000000000000000000000000071b2e4255687c8fa3b6b09d8976624f3b2815010000000000000000000000000000000f24394e63788fa4b9b19c87705c47311c0700000000000000000000000004090b0c0e1012131517191a1c1e1d19110500000000000000000000102233445667788a9badaf9e8d7b6a58556a8095aaae9984706a63687c93a7b19c87725d48331e0900152a3f546a8095abc0ab97826b56402b16010000001a2f44596e8499aebea9947d69543f2a1500000000000000000000000000000000000000000000000000000000000000000000000000000000000f24394e63788fa4b9b39d88725c47321d070000000000000000000000071c30455a6e8398acbfb9b0afafafafafafafafafafafafafafafafafafafb2bdbda8937d68543f2a15000000000000000000000000000000000e22364b5f73889cb0ae9a85705c48331f0a0000000013283d51636f79838d9885715e4b3825120000000000000000001b30465b70869bb0bba590796562636667696b6d6f71737577787b8499afbba7917b66513c27120000000000000000000000000000000000000000000000000000000e23384e63788da3b8ad98836c57422d18030000000000000000000000001c314558677483919fa8a39f9a96918c88837d7975706c67625e5954504b47423e39342f2b26221d19140f0b060100000000000000000000000000000000000000000000001226394c6073879aadb9a5927d6b5844311e0a0000000000000000000000000000000d22374c62778da2b7b39d88725d48331e090000000000000000000000000000000000000000000000000000000000000000000000000000000004152738495b6c7d8fa0b2aa9988766453677c92a7b19d8c857d77718296abae99846f5a45301b0600152a3f546a8094a9bfac97826c57422c1702000000182d42576c8297acc0ab97826b57412c1702000000000000000000000000000000000000000000000000000000000000000000000000000000000f253a4f647990a5bbb19c87705c47321c07000000000000000000000001172b4054697d92a1aebbbdbdbdbdbdbdbdbdbdbdbdbdbdbdbdbdbdbdbdbfc6cebba5907b66513c271200000000000000000000000000000000071c3044586d8295aab49f8b76624e39251000000000152a3f54697d8c96a0a18e7a6754412e1b0800000000000000001a2f445a6f8599afbca7917b7477787a7c7d82838687898b8d8f9093a0b2bda8937c68533d28130000000000000000000000000000000000000000000000000000000c22374c61768ca1b6af99846f5a442f1a050000000000000000000000001f344a5f748593a1afbdb8b4afaaa6a19c98938f8a86827c77726e6965605c57524d4944403b37322d29241f1b16110a0000000000000000000000000000000000000000000a1d3043576a7d91a4b8ae9b8874604d3a26130000000000000000000000000000000b21364b60768ba0b5b49f89745f4a341f0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a090400000000000000000000000000000000091a2c3d4e60718394a5b6a59482705f64798fa4b5aaa099928c868499aeab96826b56412c17020013293e53687d94a9bfad98836c57422d1803000000152a3f546a8094a9bfae99846e58442f19040000000000000000000000000000000000000000000000000000000000000000000000000000000010253a4f647990a5bbb19c87705b46301b0600000000000000000000000011263a4f637583909ea8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8abb6c6b8a38e78634e39240f000000000000000000000000000000000115293e52667a8fa3b7a5917c68533f2b160200000012273b4e61738699acab9885715e4b3825120000000000000000192e43586e8398adbea995888b8c8f90929496989a9c9ea0a2a4a5a8b0bebaa9947d69543f2a1500000000000000060c0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e20354a5f748a9fb4b09b86705b46311c070505050505050200000000001e33485e73889db1bfc7bdb9bcbfbab6b1ada8a39f9a96918c88837d7975706c67625d5954504b47423d39342f2b261d1103000000000000000000000000000000000000000114273b4e6175889cafb7a3907c6956422f1c0800000000000000000000000000000a1f344a5f74899fb4b5a08b76604b36211f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1e180f020000000000000000000000000000000e1f31425365768899aab1a08f7d6c61768797a8b3b4ada7a09a96a1b3a7937d68533e2914000013283d52677c93a8bdaf99846e58432e190300000013283d52677c92a7bcb09b86705b46311c070000000000000000000000000000000000000000000000000000000000000000000000000000000011263b50667b91a7bcb09b866f5a45301b060000000000000000000000000c203447576572808d939393939393939393939393939393939393939398a9bcb5a08b75604b36210c00000000000000000000000000000000000f23374b6074889db1ac97836e5a45311c080000000c1f314457697c8fa2b4a18e7a6754412e1b0800000000000000172c42576c8297acc1b2a39da0a1a3a5a7a9abadafb1b3b5b7b9bbbdc1bcac9c8c7b69543f2a14000000000002101a21232323232323232323232323232323232323232333485d72889db3b29d88725d48331e1a1a1a1a1a1a1a1710060000001c32475c70879cb1c6b7a9a4a7acb0b5babebdb8b3afaaa6a19c98938f8a86827c77726e6965605b57524d4944403a2f211000000000000000000000000000000000000000000b1e3245586c8093a6b9ac9986725f4b3824110000000000000000000000000000071e33485d72889db3b7a28d77624c3734343434343434343434343434343434343434343434343434332b20120100000000000000000000000000000213253647596a7b8d9eb0ac9b8a786769798a989fa5acb2b4aeabb2b9a48f7965503b2611000012273c52677c92a7bcaf99856f5a442f1a0500000011263b50657990a5bab29d88725d48331e090000000000000000000000000000000000000000000000000000000000000000000000000000000011263b50667b91a7bcb09b866f5a442f1a05000000000000000000000000041729394754616f7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c8fa4b9b29d88725d48331e090000000000000000000000000000000000081c3145596d8296aab19d8974604b37230e0000000215273a4c5f728597aaab9885715e4b38251200000000000000162b40566b8095abc0c1b6b3b4b7b8bbbcbfbfbdbbb9b7b5b4b1b0aeacab9e8f7d6e5d4c3a2611000000000111202d36383838383838383838383838383838383838383838465b70879cb1b49f89745f4a342f2f2f2f2f2f2f2f2b23170800001a2f445a6f869aafc0ac998f92979ca0a5aaaeb3b7bcbfbab6b1aca8a39f9a96918c88837d7975706b67625d59544c3f2e1d0c000000000000000000000000000000000000000215293c5063768a9db1b5a28f7a6754402d1a0600000000000000000000000000011c31465b70879cb1b9a48f78634e4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a473e301f0d00000000000000000000000000070f161e293b4c5d6f8092a3b4a7968573616c7c848a91979ea4abb1b4a89d8c77624d38230e000011263b50667b91a7bbb09b866f5a45301b060000000e23384e63788da3b8b49f8b745f4b35200b0000000000000000000000000000000000000000000000000000000000000000000000000000000012273c52677c93a8bdaf99846e59442f1a0500000000000000000000000112212e373a44515e67676767676767676767676767676767676767677b91a6bbaf9a86705b46311c06000000000000000000000000000000000001162a3e53677b90a4b7a38f7a65513d291400000009151e304255677a8d9fb2a18e7a6754412e1b08000000000000142a3f54697d94a9bfc9bdb7b4b3b1afadaba9a8a6a4a2a09f9c9b99979590807060503f2f1d0a000000000e1e2f3e4a4e4e4e4e4e4e4e4e4e4e4e4e4e4e4e4e4e4e4e4e4e4e5a6f859aafb6a18c76604b4444444444444444443f3526150300192e43586d8398adbfa9947d7d83878c9095999ea2a7acb0b5b9bebdb8b3afaaa5a19c97938f8a86827b77726d695d4c3b2a1908000000000000000000000000000000000000000d2033475a6d8295a8bbab9784705d4936230f00000000000000000000000000001a2f445a6f8599afbba59079655f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5b4e3c2915000000000000000000000008131b232a32383a405163748697a8b4a291806e5e696f757c838a90979da2978b80725e4934200b000010263b50657990a5a5a59c87705b46301b060000000c21364b60768ba0b5b7a28d77624c38230d0000000000000000000000000000000000000000000000000000000000000000000000000000000013283d52677c93a8bdaf99846e58432e190300000000000000000000000b1e303f4b4f4c474c52525252525252525252525252525252525254697d94a8beac97836d58432e19040000000000000000000000000000000000000f24384c6075899db1a995806c57432e1a050008182631383f4a5d708395a8ab9885715e4b38251200000000000013283d53687c93a8bdbbaba2a09d9c9a98979493918f8d8b8988868482807d72625242322111000000000a1b2b3c4d5c63636363636363636363636363636363636363636363636d8398adb8a38d77635a5a5a5a5a5a5a5a5a5a5244321f0c00172c41566b8297acc0ab95806b6d72767b8085898e92979ca0a5a9aeb3b7bcbfbab5b1aca8a39f9a95918c88837a6958473625140300000000000000000000000000000000000004172b3e5164778c9fb2b3a08c7965523e2b180500000000000000000000000000192e43586d8398adbca7917b747474747474747474747474747474747474747474747474747474746b58432e19040000000000000000000a19262f363e464d4f49455667798b9cadae9d8c7a69585b61686e757b82898f85796d6254432f1b0700000f253a4f64798f9090909088725c47321d070000000a1f34495e73899eb3b9a48f79644f3a25100000000000000000000000000000000000000000000000000000000000000000000000000000000013293e53687d94a9bead98836d58432e1803000000000000000000000013273b4e5d64615c57524d48423e3c3c3c3c3c3c3c3c3c3c3c3c42576c8297abbfa994806a55402b1601000000000000000000000000000000000000091d31465a6e8397abaf9b87705b46311c0700132536444c535a6168788b9eb3a18e7a6754412f1c09000000000012273c51667b91a7bcb29e8d8b8887868382807c7b7977767372706e6c6a686354443424140300000006172738495a6b7878787878787878787878787878787878787878787878788297acb9a48f796f6f6f6f6f6f6f6f6f6f6f624f3a261100152a3f546a8094a9bfac97836c585d62666b7074787d83878b9095999ea2a7acb0b5b9bebdb8b3afaaa5a19c97887665544332200c000000000000000000000000000000000000000e2235485c6f8396a9bca995826e5b4734210d00000000000000000000000000172c41566b8297acbeaa968b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b846e59442f1a05000000000000000004172837434a525961645c514a5b6d7d90a1b2a998877564524d545a60676d747a72675c50443625130000000e23384d6276797979797979705c47321c07000000071c32475c71879cb1bba6917b66513c27120000000000000000000000000000000000000000000000000000000000000000000000000000000014293e53687d94a9bfad98836c57422c17020000000000000000000003182d41566a7975706b66615c57524d48433e39342f2a27272730455a6f8499aebca7927c67523d28130000000000000000000000000000000000000002162b3f53687c90a4b39d88735e48331e09001b2f435461676e757c838b9db2ab9885715f4c392613000000000010253b50647990a5bbb09b867473706f6d6b6a68666462605e5c5b585755534f45362616060000000011233445566778898f8f8f8f8f8f8f8f8f8f8f8f8f8f8f8f8f8f8f8f8f8f8f8f9bafbba79286868686868686868686867c67523c27120013283e53687c93a8bdaf99846e59484d52565b5f64686d72767b8085898e92979ba0a5a9aeb3b7bcbfbab5b1a5948372614f3b27120000000000000000000000000000000000000005192c3f5366798da0b4b19e8a7763503d291603000000000000000000000000152a3f546a8095aabfb3a5a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a099846e58432e190300000000000000000d213446555e666d75796e64594f60718395a6b6a59382705f4d3f464c5359606660554a3e332718080000000b1f334758636464646464646153412d1904000000001a2f445a6f8499afbda8937d68533f291400000000000000000000000000000000000000000000000000000000000000000000000000000000152a3f546a8095aabfac97826c57422c170200000000000000000000081d32465b70858a86807b76716c67625d58534d49433e39342f32475c72879cb1b9a48f79644f3a251000000000000000000000000000000000000000001024394d61758a9fb4a08b745f4b35200b001f34495e727b838a90979ea9bab4a18f7b6855422f1b07000000000f24394e63788fa4b9b29c88725e5c5a58565453504f4d4b4947464442403e3b3327180800000000001a2e415263748596a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4abb9c2afa09b9b9b9b9b9b9b9b9b9b917b66503b26110011263b50667b91a6bbb09b86705b46383d41464b4f54585d61666b6f74787d83878b9095999ea2a7acb0b6c2b2a190806a543f2a1500000000000000000000000000000000000000001023374a5d708598abbaa793806c5946321f0b00000000000000000000000014293e53687d93a8bdc3b9b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5af99846e58432e1903000000000000000115293c5063727982898c82766c615665768899abb19f8e7c6b5a4837383f454b504d43382c211509000000000417293a474e4f4f4f4f4f4f4d443524110000000000182d42576c8397acc0ab96826b56412c1701000000000000000000000000000000000000000000000000000000000000000000000000000000152a3f546a8095abc0ac97826b56402b1601000000000000000000000e22374b60758a9e9a95908b86827b76716c67625d58534e49443f4a5f748a9fb4b6a18c77624c37220d000000000000000000000000000000000000000012263b4f64788da2b6a18c77624c37220d001e33485c7085979ea4acb2bac7beab9885725e4a35200b000000000d23384c62778da3b8b39e89735e484443413f3d3b3a38363432302f2c2b29262016090000000000001f34495d708292a3b4b9b9b9b9b9b9b9b9b9b9b9b9b9b9b9b9b9b9b9b9b9b9b9bec8cdbeb3b0b0b0b0b0b0b0b0b0a6917b66503b2611000f253a4f64798fa4b9b29d88725c4732282d31363a3f44484d51565b5f64686d72767b8085898e92979ba4b4bfa994806a543f2a150000000000000000000000000000000000000000081b2e4154687b8fa2b5af9c8975614e3b271401000000000000000000000012273c52677b91a7bccbbeb7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7ad98836d58432e180300000000000000091d3044586c808e959d9e94897d73695e6a7c8d9fb0ac9a8977665543322a31373b3931261a0f040000000000000c1c2a34393a3a3a3a3a3a38312617060000000000162b40556a8095aabfad98836d58432e1904000000000000000000000000000000000000000000000000000000000000000000000000000000162b40566b8297abc0ab95806a55402b16010000000000000000000013283c5165798fa3afaaa5a09a96908b87827c77726d68635d59534e62778da2b7b39e89735f4a34200a0000000000000000000000000000000000000003182c41556a7d93a7b6a28d78634e38230e00192d4155697d91a5b9bfc6cdd7c4b09c88745f4b35200b000000000c21364b60768ca1b6b5a08b745f4a352e2c2a28262423211f1d1b19171614120c04000000000000001f34495e72879aaec1c4b6aeadadadadadadadadadadadadadadadadadadadadafb8c7c9bdb7b7b7b7b7b7b7b7b7a59079644f3a2510000e23384d62778da2b7b49f89735f4a341f181c21262a2f33383d41464a4f54585d61666b6f74787d828798adbea9947d68533e291300000000000000000000000000000000000009121b242d384c5f728699acb8a5927d6a5743301d0a000000000000000000000010263b50657990a5babdada2a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1a198836c57422c1702000000000000001125384c6073889ba9b1b1a69b91867b70666f8292a3b5a7958472614f3e2d1d2326241e14080000000000000000000c182024252525252525231e140800000000000013283e53687c93a8bdaf9a866f5a45301b06000000000000000000000000000000000000000000000000000000000000000000000000000000162b40566b8297acc0ab95806a543f2a150000000000000000000003182d41566b8094a9bcbeb9b4afaaa5a09b96918c87827c77726d6863657990a5bab09b87705c47321d0800000000000000000000000000000000000000091d32465b6f8499adb19c88735e4a35210c0012263a4e62768a9eb2c6d1cac4bda995826d5844311c08000000000a20344a5f748ba0b4b7a18c76604c3721171513110f0e0c0a070000000000000000000000000000001b2f43576b8093a6bab8a69a98989898989898989898989898989898989898989ba9bcbbaba2a1a1a1a1a1a1a1a1a19079644f3a250f000c21364b60768ba0b5b5a08b76604b36210c080c11161a1f23282d31363a3f44484d51565b5f64686d8397acbda8937c67523d2813000000000000000000000000000000010a131c252e37414a5056697c90a4b7ae9a8773604c39261200000000000000000000000f24394e63788fa3b8b4a08f8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c836c57422c170200000000000005192c4054687b8fa3b7b4b0b5aea3988e83786d748697a9b3a290806d5c4a392817110f0a0100000000000000000000000c151a1b1b1b1b1b1b1b18100500000000000011263b50667b90a5bbb19c88725c47321d08000000000000000000000000000000000000000000000000000000000000000000000000000000172c42576c8397acbfa9947d69543f2a1400000000000000000000081d32475b70859aa2a7acb1b6bcbfbab5b0aba5a19b96928c87837c77737c93a7bcad98846e59442f1a05000000000000000000000000000000000000000f23384c60758a9eb3ab97836d5944301b07000b1e33465b6f8397abbfbdb6afa9a28e7965513e29150100000000091e33485e73899eb3b8a38d77624d38230e000000000000000000000000000000000000000000000014283b4f63778b9fb2b39e8983838383838383838383838383838383838383838da2b7b29e8d8c8c8c8c8c8c8c8c8c8c78634e38230e000a1f344a5f73899fb4b7a28d77624d38230e00000000050a0f13181c21262a2f33383d41464a4f586d8398adbca7917c67523c271200000000000000000000000000010a141d262f38414b545d65616074889baeb6a38f7c6855412e1b08000000000000000000000d22374c62778da2b7b39e89767676767676767676767676767676767676767676767676767676766a56412c17020000000000000d2134485c708497abb0a19ba2acb5aba0958b7c6a798b9caeae9c8b7968574534231200000000000000000000000000101e282f303030303030302c23160700000000000f24394e63788ea3b8b49f89745f4a35200b000000000000000000000000000000000000000000000000000000000000000000000000000000172c42576c8398adbfa9947d68533e2913000000000000000000000a1f344a5f7483888e93979da2a7acb1b6bbbfbab5b0aba6a19c97928d888396aabfab96826b56412c17020000000000000000000000000000000000000014293d52667b8fa4b8a6927c68533f2a16010003172b3f53677b8fa4b0a9a29b958d87725f4b36220e0000000000041d32475c72889cb2b9a48f79644f3a240f00000000000000000000000000000000000000000000000c2034475b6f8397aab6a28e7a6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c748ba0b5b09b867676767676767676767673614d38230e00071d32475c72889db2b9a48f79644f3a240f000000000000000002080c11151a1f23282d313644586e8499afbba6917b66503b26110000000000000000000000020b141e273039424c545e6770796f5c6b7d92a5b9ac9885715e4a372410000000000000000000000b21364b60758ba0b5b5a08b746060606060606060606060606060606060606060606060606060605b4c3a27130000000000000115293c5064778c9fb3a794868f9aa5afb3a89a88756d7d90a1b3a99786746352402f1e0c00000000000000000000000c1e2e3b44464646464646454034251401000000000c22374c61768ca1b6b6a18c76614c37220d000000000000000000000000000000000000000000000000000000000000000000000000000000192e43586e8499aebda8937c68533e281300000000000000000000081d324659686e73787d83888d92979ca2a6acb1b6bbc0bbb5b1aca6a29c98a0b1bda8937d68533e291400000000000000000000000000000000000000061a2f43586c8295aab5a08c77624e3925100000001024384c6074889c9c958e878079726957432f1b070000000000001b30465b70869bb0bba5907b66503b2611000000000000000000000000000000000000000000000004182c3f53677b8fa3b6aa96836f5b5757575757575757575757575757575e73899eb3b29d88726060606060606060605f5545321e0a00011b30465b70869bb0bba6917b66503b261100000000000000000000000000050a0f13181c2f445a6f869bb0bba59079644f3a2510000000000000000000030c151e28313a434c565f68717a848c77646275899cb0b4a18d7a6653402c19060000000000000000000a1f34495e73899fb4b7a18c76614c4b4b4b4b4b4b4b4b4b4b4b4b4b4b4b4b4b4b4b4b4b4b4b4b4b483d2e1d0b000000000000091d3044586c8093a7b4a08c787d88929da8b7a592806b728495a6b5a492826f5e4d3b2a19070000000000000000000015283b4c585b5b5b5b5b5b5a5243311d09000000000a1f344a5f74899fb4b8a38f78634e39240f000000000000000000000000000000000000000000000000000000000000000000000000000000192e43586e8499afbda8937c67523c27120000000000000000000003172a3b4a545a5f64696e73787d83888d92979ca1a6abb0b5babfbbb6b1adb2bebaa5907a66503b2611000000000000000000000000000000000000000b2034495d72879bafaf9b86715d48341f0b000000091d3145596d828f888279726c655e574b3a2814000000000000001a2f445a6f8599afb5a7927c67523c27120000000000000000000000000000000000000000000000001024384c5f73879bafb29e8a76634f42424242424242424242424242475c71879cb1b49f89745f4b4b4b4b4b4b4b4b4b443727150200001a2f44596e8499aebda8937c67523d28130000000000000000000000000000000000021b30465b70879bb0b9a48f78644f3a240f00000000000000040d161f28313b444d566069727b858e9794806c596d8094a7baaa96836f5c4935220e000000000000000000071d32475c72889db2b8a38e78634e38363636363636363636363636363636363636363636363636332b1f10000000000000001125384c6073889bafac9885706a75808b9bafac97826b6677899aacb09f8d7c6a5948362514020000000000000000001a2f44586a7070707070706f604d38230e00000000071d32475c72879cb1bba5907b66503b26110000000000000000000000000000000000000000000000000000000000000000000000000000001a2f445a6f859aafbca7917b66513c271200000000000000000000000c1d2d3940454a4f54595e64686d73787c83888d92979ca1a6abb0b5babfc4bbafa28d77634e38230e0000000000000000000000000000000000000011263a4e63778ca1b5aa95826c57432e1a0500000002162a3e5265797a736c655f58514a433a2d1d0b00000000000000192e43586e8398a0a0a0937d68533e2914000000000000000000000000000000000000000000000000081c3044576b8093a7baa693806b5743302c2c2c2c2c2c2c2c2c2c30455a6f869bb0b5a08c76604b363636363636363530271909000000182d42576c8397acbfa9947d69543f2a150000000000000000000000000000000000001c32475c71879cb1b8a38f78634e38230e0000000000050e172029333b454e576069737c868f98a1aa9c89756164778b9eb1b29f8c7864513e2a17040000000000000000001b30465b70869bb0baa59079644f3a2521212121212121212121212121212121212121212121211f180e0100000000000005192c4054687b8fa3b7a4917c6958636d8398adac97826b596b7c8e9fb1ab9a887665544331200f0000000000000000001b30465b708787878787877b66503b261100000000011b30455a6f869aafbda8937d68533e29140000000000000000000000000000000000000000000000000000000000000000000000000000001a2f445a6f869bb0bca7917b66503b261515151515120b0100000000000f1b252b30363b40454a4f54595e63686d72777c82878c91969ba0a5abb0a99e918674604b36210c00000000000000000000000000000000000002172b4054697d92a6b9a4907b66523d291400000000000f22364a5d69665f58514b433d362f271d0f0000000000000000172c42576c828b8b8b8b8b806a543f2a150000000000000000000000000000000000000000000000000114283c5063778b9fb3ae9b87735f4c38241717171717171717192e43586e8499aeb8a38d77624d38232121212121201c140900000000162b40566b8095abc0ab96826b56412c170100000000000000000000000000000000041d32475c72889db3b8a38d77624c37220d000000030e18212a333d464e58616a737d868f99a2abb4b8a4917d695b6e8295a9bba895826d5a4733200d0000000000000000001a2f445a6f8499afbca7917b66513c27120b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0a0400000000000000000d2134485c708497abb19d89756153576c8398adac97826b565e708293a4b5a6958371604f3d2c1b0a00000000000000001b30455a6f869b9c9c9c917b66503b26110000000000182e43586d8398adbfaa95806a55402b16010000000000000000000000000000000000000000000000000000000000000004090b0c0e0f111b30465b70869bb0bba5907965503b2a2a2a2a2a2a261e130400000000000911171c21262b30353a3f444a4e53595e63686d72777c82878c91969b988c8073675845311d08000000000000000000000000000000000000081d31465a6e8398acb39f8a75614c38230f0000000000071b2d3f4c54524b443d362f29221b140b000000000000000000152a3f54687474747474747467533e2914000000000000000000000000000000000000000000000000000c2034485c6f8397abb6a38f7b6753402c1905000000000000172c42576c8297acb9a48f79644f3a25100b0b0b0b0b0801000000000014293e53687d94a9bead98836d58432e180300000000000000000000000000000000091e33485e73899fb4b7a18c76614c37220c00000413212b343d465059626b757d879099a3acb5b9b1a89f9686725d65798ca0b3b19d8a76634f3c2815020000000000000000182e43586d8398adbda8937d68533e29130b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0801000000000015293c5064778c9fb3a995826d6868686c8398adac97826b565264758798a9b2a1907d6d5b4a39271605000000000000001a2f445a6f8499afb1a8937c67523c27120000000000162b40566b8095abbfac97836c57422d18030000000000000000000000000000000000000000000000000000000000030f181e20222325262830465b70879cb1bba59079644f3f3f3f3f3f3f3f3b3023120000000000000001070c11161b21252b30353a3f44494e53585d62686d72777c8287867a6e62564a3b2916020000000000000000000000000000000000000e22374b6074899db2ae9985705b47321e0900000000000010212f3a3f3d373029221c140e0700000000000000000000001125394a595f5f5f5f5f5f5f58493724100000000000000000000000000000000000000000000000000005192c4054677b8fa3b7ab97836f5c4834200d000000000000162b40556a8095aabba6917b66513c271200000000000000000000000012273c52677c91a7bcaf99856f5a442f1a05000000000000000000000000000000000a1f344a5f748b9fb4b5a08c76604b36210b00001022313e47505a636c757d88919ba3adb6b8afa69e958c837a705d5d708497aab9a693806b5845311e0b0000000000000000172c41566b8297acbfaa95806a543f2a21212121212121212121212121212121212121212121212121201c1409000000001c3044586c8093a7b9a48f7d7d7d7d7d7d8398adac97826b564657687a8c9daead9c8a7967564533221100000000000000192e43586e8499afbda8937d68533e2813000000000014293e53687d93a8bdaf99856f5a442f1a05000000000000000000000000000000000000000000000000000000000313212b333537383a3b3d3f475c72879cb1b9a48f786454545454545454544e41301d0a0000000000000000000000070c11161b20252a2f35393f44494e53585d62676c7174685c5144392c1d0c0000000000000000000000000000000000000614283c5165798fa3b8a894806a56412d180400000000000003111d262a28231c1e2426231b100200000000000000000000091b2d3b464a4a4a4a4a4a4a453b2c1a0800000000000000000000000000000000000000000000000000001124384c6073889bafb29f8b7763503c281501000000000014293e53687d93a8bda8937c68533e281300000000000000000000000010263b50657990a5bab19c87705b46311c07000000000000000000000000000000000b20364b60758ba0b5b5a08b745f4a341f0a00061a2d404f5a636d768089929ba4aeb6b6ada49b938a82786f675e5154677a8ea2b5af9b8874614d3a27130000000000000000152a3f546a8094a9bfac97826b5641363636363636363636363636363636363636363636363636363635302719090000001f344a5f73889bafbda99994949494949494a0b2ac97826b56404b5c6e8091a2b3a89786746251402e1d0c000000000000182d42576c8398adbfa9947d68533e2914000000000012273c51667b91a6bbb19c87715c47321d08000000000000000000000000000000000000000000000000000000000e20313e474a4c4e4f505254565c72889db3b9a48f786a6a6a6a6a6a6a6a695f4d392510000000000000000000000000000000070c11161b20252a2f34393e43484d53585d5f574b3f33271b0e0000000000000000000000000000000000000916243242576b8094a9b7a38e7965503c27130000000000000000010a11161d242b32393b372d201000000000000000000000000f1d2a323434343434343431291d0e000000000000000000000000000000000000000000000000000000091c3044586c8093a7bba793806b5844301d09000000000012273c52677b91a7bcaa95806a543f2a150000000000000000000000000f24394e63788ea3b8b39d88725d48331e09000000000000000000000000000000000c21364b60768ca1b7b49f89735e49341f0a000b2034495d6d77808a939ca5aeb8b3aba299918880766d645c534a414b5e728599acb7a4907d6956432f1c090000000000000013283e53687d93a8bdad98836d584b4b4b4b4b4b4b4b4b4b4b4b4b4b4b4b4b4b4b4b4b4b4b4b4b4b4b4b443727150200001e33485d6f8294a6b8b7aca9a9a9a9a9a9a9b0b8aa97826b56403e5061728496a7b4a392806f5d4c3b2918070000000000172c42576c8397acbfaa95806a543f2a1500000000000f243a4f64788fa3b8b39e89735e49341f0a00000000000000000000000000000000000000000000000000000000172b3e4f5b5f6163646667696b6c73889db3b8a38d8080808080808080807c67523d281300000000000000000000000000000000000000060b10151b1f252a2f34393e43484a44392d2115090000000000000000000000000000000000000b19263442505d71869aafb29d89745f4b36220d000000000000030d151c232a31383f464d504a3e2e1b0800000000000000000000000c171d1f1f1f1f1f1f1f1d160c000000000000000000000000000000000000000000000000000000000115293c5064778c9fb3af9b8873604c382511000000000010253a4f647990a5baac97826b57412c170200000000000000000000000d22374c61768ca1b7b49f8a745f4a34200a000000000000000000000000000000000d22374c62778da3b8b39e89735e48331e09001025394e63778a939da6afb8b2a9a0988f867d746c635a514940372f4255697c90a3b6ad9986725f4c3825110000000000000012273c51667b91a7bcaf9a856f606060606060606060606060606060606060606060606060606060605f5545321e0a0000192d40526476899bacadadadadadadadadadada79a8c7d6b56403244556677899bacaf9e8d7b6a58473624130200000000162b40566b8297acc0ab95806a55402b1601000000000d22374c62778ca1b6b5a08b76604b36210c000000000000000000000000000000000000000000000000000000001c31465a6d747677797b7c7d8083848b9fb4bca9999595959595959595947d68533e29140000000000000000000000000000000000000000000000060b10151a1f24292e333431281c10040000000000000000000000000000000000000e1b29374452606e7b8ba0b4ac98836e5a45311c0800000000000514202930373e454c535a61655c4b38241000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000d2134485c708497abb7a38f7b6854402d1905000000000e23384e63788ea3b8ad98836e58432e190400000000000000000000000b20354a5f748ba0b5b6a18c76604c37210c000000000000000000000000000000000e23384e63788fa3b8b39d88725c47321d0700152a3f53687c92a6b0b9b1a79f968d847b726a615850473e352d2426394d6073879aaeb5a28f7b6754412d1a0700000000000010253a4f647990a5bab19c87767676767676767676767676767676767676767676767676767676767673614d38230e000011223547596b7d8f9898989898989898989898978a7b6e604f3c2837495a6b7d8fa0b1aa998876645342301f0e00000000162b40556a8095abc0ac97826b56402b1601000000000b20354a5f748a9fb4b8a38d78634e39240f000000000000000000000000000000000000000000000000000000001c31465b70878c8d8f9193949597999ca9bbc7b7adabababababababab95806a54402b15000000000000000000000000000000000000000000000000000000050a10151a1e1f1c150a00000000000000000000000000000000000003101e2c39475562707d8c9aa8baa7927d6954402b170200000000011323323d444b525960676e757a67533f2b170300000000000000000000000000050a0b09070402000000000000000000000000000000000000000000000000000000000000000005192c4054687c90a3b7ab9884705c4835210d000000000d22374c61768ca1b7af9a866f5a45301b060000000000000000000000091e33485e73889db3b8a38d78634e38230e000000000000000000000000000000000f243a4f64798fa4b9b19c87705b46311c07001b2f44586d8297abc0b3a1948b827970685f564e453c332b2219101d3044576a7d92a5b8ab9884705d4a3623100000000000000e23384e63788ea3b8b39f8e8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c78634e38230e00000517293c4e607283838383838383838383838383796b5d504232202b3c4e5f708293a5b6a5948371604e3d2c1a09000000152a3f546a8095aabfac97836c57422c170200000000081e33485d72889cb2baa5907965503b2611000000000000000000000000000000000000000000000000000000001a2f445a6f8599a3a4a6a8a9abacaeb1b9c7ccc9c1c0c0c0c0c0c0bfac97826b56412c170000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000513202e3c4a576572828f9caab7a99c8d78634f3a26110000000000091d30414f585f666d757b838a836e5a46321e0a00000000000000000000000310191f201e1c191714120f0d0a080603010000000000000000000000000000000000000000000000001125394c6074889cafb39f8c7764503d2915020000000b20354a5f748ba0b4b19c87715c47321d070000000000000000000000051c32475c71879cb1b9a48f79644f3a25100000000000000000000000000000010610253a4f647990a5bbb09b86705b46301b06001f34495d72879cb0c2af9984776f665d544c433a312920170e060114273b4e6175899cafb3a08d7966523f2b180500000000000d22374c62778ca1b7bcaca2a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1a18f79644f3a250f0000000c1e304254656c6c6c6c6c6c6c6c6c6c6c6c6c685b4d3f3223141f30415364758798aab1a08f7d6c5a4938271401000013293e53687d94a9bfad98836d58432e180300000000031b30465b70869badaaa6927c67523d281300000000000000000000000000000000000000000000000000000000182e43586d8398adb9bbbdbfc0bfbdbbbab8b7b5b4b3b1b0afadabaaa898836c58432d180000000000000008101516120b01000000000000000000000000000000000000000000000000000000000000000000000000000000081523313e4c5a677583919fadb5a7998c7d6f5d4935200c00000000000f24384d5f6c737a828990979e8a75614d392511000000000000000000000413212d343633312e2c2a272422201d1b181613110e0c0907040200000000000000000000000000000000091d3144586c8094a7bba794806c5845311d0a000000091e33485e73889db3b39e89735e49341f090000000000000000000000001b30455a6f869aafbba7917b66513c27120000000000000000000001060b10151b20263b50667b91a7bcb09b866f5a442f1a05001f34495d718294a5b6b3a18f7d6c5a4a413830271e150d040000000b1f3245596c8093a6b9a996826f5b4834210e00000000000b20364b60748ba0b3c0beb7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7a5907964503b251000000001132537475357575757575757575757575757554b3d2f2114051224354758697a8c9eafad9b8a78675544311d08000013283d53687c93a8bdaf99846e58432e19030000000000192e43586d83989895918e806a543f2a1500000000000000000000000000000000000000000000000000000000172c41566b8296abb0afadacaba9a8a7a5a3a2a09f9d9c9b999897959392846e59442f1a0000000000000d1a242a2b271e12040000000000000000000000000000000000000000000000000000000000000000000000000007172633414f5c6a778693a1afb2a597897b6d5f51402e1a06000000000011263b50667b888f969da4aba5917c6854402c19040000000000000000041322313f484b484643413f3c3a373432302d2b282623211f1c1a171512100d0a04000000000000000000000115293d5064778ca0b3af9c8874604d392512000000041c32475c70879cb1b5a08b74604b36200b000000000000000000000000192e43586d8398adbda8937d68533e291300000000000001060b11161b20252a2f34393f52677c92a7bcaf99846e58432e1904001a2e415364758798aabbad9b8a786755443321140b0200000000000216293d5063768a9eb1b29e8b7764503d2a1603000000000a1f34495e738996a2afb5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5a7917b66503b261100000000081929363f4242424242424242424242424240392d1f1103000617293a4b5d6e8091a2b4a7968573604b36210c000012273c52677c93a7bcaf9a866f5a442f1a050000000000172c41566b828784807c78766954402b1500000000000000000000000000000000000000000000000000000000152a3f546a80949d9b99989795949391908f8d8b89888786848382807d7c7a6e59442f1a00000000000d1c2b373f403b3022130400000000000000000000000000000000000000000000000001050603000000000000000012253543515f6d7a8996a4b1b0a29487786b5d4f413223110000000000000e23384c6074889caab1b8bfac9884705c4833200c0000000000000004132231404f5c605e5b585654514f4c4a474542403d3b383634312f2c2a2725221f180d000000000000000000000d2135485c708498acb7a4907c6855412d1a060000001b30455a6f869aafb7a18c77624c37220d000000000000000000000000172c41566b8297acbfaa95806a543f2a15000001070c11161b20252a2f353a3f44494e5358687d93a8bdad98836d58432e1903001224364758697a8c9daeb9a796857361503f2d1c0b0000000005090e122034475a6d8295a8baa794806d5946331f0c00000000061c31465a6b7885919ea0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0927c67523c271200000000000b19242b2c2c2c2c2c2c2c2c2c2c2c2c2c2c261c0f010000000b1d2e3f5162738596a4988b7d71604b36210c000011263b50667b91a7bcb09b866f5a45301b06000000000014293e536774726e6b6764605a4b3926110000000000000000000000000000000000000000000000000000000013283d52677c898887858382807d7c7b797877767472716f6e6c6b6a68676660513e2b16000000000c1b2b3a4953554e4031231405000000000000000000000000000000000000000000010d151a1b1710050000000000001b2f4253616f7d8b99a6b4aea0928476685b4d3f31231405000000000000091d3145596d8295a9bdccc7b39f8b77634f3b271300000000000003132231404f5e6d7573706e6b686664615f5c5a575553504e4b494644413f3c3a37332b1e0e00000000000000000005192d4154687c90a4b7ac9885705d4935220e000000192e43586e8398adb9a48f78634e39240f000000000000000000000000152a3f546a8094a9bfac97826b57412c170c11161b20252b2f353a3f44494e53585d63686d727d94a9bfad98836c57422c1702000718293a4c5d6e8091a2b3b4a291806e5c4b392817070b1015191e23272c313e5164788c9fb2b09c8975624e3b28140100000000172a3d4d5a6773808b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b7c67523d28130000000000000710161717171717171717171717171716120a000000000000102233445667788a9386796d615343301c08000011263b50657a90a5bbb19c87705b46301b06000000000010243749585f5d5956524f4b473c2d1c0a0000000000000000000000000000000000000000000000000000000011263b5064737372706f6e6c6a686766646362605f5d5c5a595756545352504c4233220f0000000c1b2a394958676a5e4f41322314050000000000000000000000000000000000000005121f292f302b22150600000000001f34495e71808e9ba9b7ac9e90827366584a3d2f211305000000000000000116293e5165798ea2b6cac5baa6927d6a56422e1a0600000000000f2131404f5e6d7c8b888683827d7b787674726f6c6a686563605e5b595654514f4c473c2c1b080000000000000000001125394d6074889cb0b4a08c7865513d2a16020000172c41576b8297acbba5907a66503b261100000000000000000000000013283e53687c93a8bdad98836e58432e1b21252b30353a3f44494e53595e63686d72777c82878c98acc0ac97826b56402b160100000b1d2e3f5061728495a7b8ae9d8c7a68574634231b2025292e33373c40454a4f5c6f8396a9b8a5927d6a5744311d0a000000000d1f2f3c4955626f74747474747474747474747474747474747474747474747474747474747474747466523d28130000000000000000000000000000000000000000000000000000000000000004152738495a6c7d8275685c4f433525140100000f253a4f647990a5bab19c87725c47321d070000000000081a2c3b454a4844413d3a36332b1e0f00000000000000000000000000000000000000000000000000000000000d213447565f5e5c5b5a5857555452504f4e4c4b4a4847454442403f3e3c3b383024150400000b1b2a39485767767c6d5f5041322315060000000000000000000000000000000000091623303c44453f33241403000000001e33485d6f8090a0b1a99c8e80716356483a2d1f11030000000000000000000e22364a5e72879bafb8b1aaa39a86715d4935200b0000000000192c3e4f5e6d7c8c9b9d9b989693918f8c89878583807c79777573706e6b696664625a4a37240f000000000000000000091d3145586c8094a8bca895826d5945321e0a0000152a3f546a8095aabca7927c67523d281300000000000000000000000011273c51667b91a6bbaf9a866f5a453030353a3f444a4f54595e63686d72777c82878c92979ca1a8b6bdab95806b56402b160100000010213344556677899aabbba99886756352402f3035393e43474c51555a5f63686d798da1b5ae9b8773604d3926120000000001111f2b3844515c5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f584836230e0000000000000000000000000000000000000000000000000000000000000000091a2c3d4e60707064574b3e322517080000000f24394e63788fa4b9b39d88725c47321d080000000000000e1d293134332f2c2825211e180d00000000000000000000000000000000000000000000000000000000000005172938444a484746444342403f3d3b3a383736343332302f2d2c2a292726231d13060000091a293848576675868c7d6e5f5142332416070000000000000000000000000000000d1a2734414e585a514232211000000000192d405161728393a3998c7d6f615346382a1c0f0100000000000000000000071b2f43576b8093a7a49d968f888276614c37220d00000000001e33485c6d7c8c9baab2b0adaba8a6a3a19f9c99979592908d8b888684827d7b797767523d28130000000000000000000215293d5164788ca0b4b09c8975614d3a2612000013283e53687d93a8bda9947d69543f2a140000000000000000000000000f253a4f64798fa4b9b19c87715c4740454a4f54595e63686d72777c83888d92979ca1a6abb0b5bbc0af9f8f806a543f2a150000000004152637485a6b7c8e9fb0b5a492826f5e4d40454a4e53575c61656a6f73787c82878ea0b5b6a3907c6955412d180000000000010e1a27333f484a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a453a2b19070000000000000000000000000000000000000000000000000000000000000000000e1f3142525d5d5246392d211408000000000e23384e63788da3b8b49f89735e48331e09000000000000000c161d1f1e1a1713100c090400000000000000000000000000000000000000000000000000000000000000000b1a2730343332302f2e2c2b2a2826252322211f1e1c1b1a1816151312110e09010000001427384756667585949b8d7d6f6051423425160800000000000000000000000005111e2b3845525e6b6f604f3e2d1c0b000000112233445464748696897b6d5f514336281a0c0000000000000000000000000014283c5064778c978f89827a746d665947331f0a00000000001f344a5f74899baab9c7c0bdbfbdbbb8b6b4b1afacaaa7a5a3a09d9b989694918f7c67523d2813000000000000000000000e2135495d708598acb8a4917c6955412e1a060012273c51667b91a7bbab96826b56402b160100000000000000000000000e23384d62778da3b8b39e89735e4f54595e63686d73787d83888d92979ca1a6abb0b5bbc0bbb6b1aca2918270614f3b27120000000000081a2b3c4d5e708292a3b5b09f8d7c6a59555a5e63686c71767a8084888d92979ba0acbdbdaa98856f5a442f1a000000000000000916222d3334343434343434343434343434343434343434343434343434343434343434343431281c0d00000000000000000000000000000000000000000000000000000000000000000000021324344149494135281c0f0300000000000d22374c62778da3b8b49f89745f4a341f0a0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000009141c1f1e1d1b1a191716141311100e0d0b0a080200000000000000000000000000001c30445665748594a3ab9c8e7d7061524334261709000000000000000000000915222f3c4956626f7c7d6d5c4b3a2918070000051526364657677787786a5d4f413325180a00000000000000000000000000000d2135485d7085837b746d66605952493b2a170400000000001d32475c72889cb1c7b9aca8aaacafb1b4b7b9bbbebfbcbab8b5b3b0adaba9a48f7965503b26100000000000000000000006192d4155687c90a4b8ac9985715d4a36220e0010253a4f64798fa4b9ad98836c57422d180300000000000000000000000c21364b60768ba0b5b5a08b745f64696e73787d83888d92979ca1a6acb1b6bbc0bbb6b1aca7a29d9793847363534232200c0000000000000d1e30415263748697a8baab99887665696e73777c82868b8f94999da2a7abb0b5bdbfb3a08d7a6754412d1800000000000000000410191e1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1c150b0000000000000000000000000000000000000000000000000000000000000000000000000616242e34342e24170b000000000000000c21364b60768ca1b7b5a08b745f4a35200b0000000000000000000000000000000000000000000000000000040b0f0f0f0f0f0f0f0e0800000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001f344a5f738493a3b2baac9d8e80706152443527180900000000000000000d1a2633404d5a6773828e8b7a69584736251402000008182839495a6a74685a4d3f3123150800000000000000000000000000000005192d415568746e676059534b453e362b1d0c0000000000001b30455a6f869aafc0ac9b9395979a9c9fa1a4a7a9acaeb0b3b5b8bbbdc0b7a28d77624d38230e00000000000000000000001225394d6175899cb0b4a18d7965513e2a17030e23384e63778da3a8a799846f5a442f1a0500000000000000000000000a1f344a5f74899fb4b7a18c7773787d83888d92979ca2a7acb1b6bbbfbab5b0aba6a19c97928d88837d766655453525140300000000000001122334455768798b9cadb7a69483797d83888d91969b9fa4a9adb2b6bbbdb8b4afaba69784705d4b3825120000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000006121a1f1f1a110600000000000000000b21364b60768ba0b5b6a18c76604b36210b000000000000000000000000000000000000000000000000000b172024252525252525231c120400000000000000010d15191a1a1a1a1a1a19150d020000000000000000000000000000000000000000000000000000001e33475b6c7a8a98a7b6bbac9e8f80706253453627190a000000000004111e2b3744515e6b7785919f98877564534231200d0000000b1b2b3c4c5a5f584a3c2f21130500000000000000000000000000000000001226394b595f5a534c453e37312a23190d00000000000000192e43586d8398adbda8937c808385888a8c8f919497999b9ea0a3a5a8abada08b75604b36200b00000000000000000000000a1e3145596d8295a8bca995826d5a46321e0b0c21374c60768c9593919087705b46311c070000000000000000000000071d32475c72889db2b8a38e83888d92979da2a7acb1b6bbbfbab5b0aba6a19b97928d88837d78736e69645848372717070000000000000000051728394a5c6d7d90a1b2b2a1918f93989da2a6abafb4b9bdbab6b1ada8a39f9a96928d796754412e1b080000000000060a0d101215181a19150d010000000000000000000000000000000000000307090600000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000a1f344a5f748ba0b5b7a18c76614c37220d0000000000000000000000000000000000000000000000000b1b2934393a3a3a3a3a3a372f221302000000000002121f292e2f2f2f2f2f2f2f292012030000000000000000000000000000000000000000000000000000182b3e4e5c6b7a8998a6b5bcad9e8f827163544537281a0b0000000815222f3b4855626f7c8996a2afa5938271604f3d2915000000000d1e2e3c464a453a2c1e11030000000000000000000000000000000000000a1c2d3b464a463f38312a231c160f070000000000000000172c41566b8296abbfa994806a6c6f727477797c7d828487898c8e909395989b88725d48331e09000000000000000000000002162a3d5165788da0b4b19d8975614e3a27130a20344a5f7482807d7b79786f5b46311c070000000000000000000000011b30465b70869bb0beab9b979da2a7acb1b6bbbeb9b4afaaa5a09b96918c87827c77726d68635e59544f473a2a1a09000000000000000000000a1b2d3e4f60718394a5b7afa4a3a8adb2b6bbbcb8b3afaaa6a19c98938f8a86827c786f5d4a3724110000000005111a1f2225272a2d2f2e291f1202000000000000000000000000000000010d171c1e1b13090000000000000000000000000000000000000000000000000000000000000203050608090b0c0e0f11121416171918130a00000000000000000000000a1f34495e73899fb4b5a38d77624c37220d000000000000000000000000000000000000000000000003162839474e4f4f4f4f4f4f4b40311f0d00000000000f20303c43444444444444443d30211000000000000000000000000000000000000000000000000000000f20303e4d5c6a798897a6b4bcae9f90827263554638291a0c000c1926333f4c596673808d9aa6b3bfb1a08f7d6c58442f190000000000101e2a323431281c0e0000000000000000000000000000000000000000000f1d2a3234312b241d160f080100000000000000000000142a3f54687d94a9beac97826c585a5c5f626467696c6e707376787b7d80838686705b46311c060000000000000000000000000e2235495d718599acb9a5917d6a56422e1b081d32465a696b6a686664635f51402c18040000000000000000000000001a2f44596e8499aec3b9afacb1b6bcbeb8b4aea9a49f9a95908b86827c77726d68635e59544f4a45403b342a1c0c0000000000000000000000000f2031435465768899aabbb9b8bdbab5b1aca7a39e9a95918c88837d7975706c68635e51402d1a080000000515232e34373a3c3f4244433c30200f000000000000000000000000000001111f2a31332f261a0b0000000000000000000000000000000203050607090b0c0e0f1112141517181a1b1d1e202223252627292b2c2e2d271c0f02000000000000000000061e33485e73899ea0a0a08f78634e38230e0000000000000000000000000000000000000000000000091e324657636464646464645e4f3c28140000000000182b3e4e585a5a5a5a5a5a584e3f2d1905000000000000000000000000000000000000000000000000000212202f3e4c5b6a788896a5b4bdae9f918273645647382a1b101d2a3744505d6a7784919eabb7bbaea194877a6b58432e190000000000000d171d1f1c150b00000000000000000000000000000000000000000000000c171d1f1d161009020000000000000000000000000012273c52677b91a7bcae99846e5945474a4c4f525457595c5e616366686b6e70726b58432e1904000000000000000000000000061a2e4155697c91a4b8ad9986725e4a37230f172a3c4c55565453514f4e4a4133221000000000000000000000000000182d42576c8397a8b4c0c2bdb8b3aea9a49f9a95908b86827b76716c67625d58534e49443f3a35302b2621180c000000000000000000000000000314253647596a7b8d9ea9b1aeaaa5a09c97938e8a86827c77736e6965605c57534e4a413323110000000011233341494c4f5254575a584e3e2b180400000000000000000000000000101f2f3d46484338291a0b0000000000000000000000050e1417181a1b1d1e202123242627292a2c2e2f3032333537383a3b3c3e404143413a2d2012040000000000000000001d32475c72888b8b8b8b8b78644f3a240f00000000000000000000000000000000000000000000000c22374c61757979797979796b57412c1702000000001e33475b6b6f6f6f6f6f6f6c5c48341f0a00000000000000000000000000000000000000000000000000000211202e3d4c5a69778796a4b3bdafa0918373655648392b212e3b4855616e7b8895a2afbcb6aa9d908376695c4e3c29150000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000010253a4f64798fa4b9b09b87705b463235383a3c3f424447494c4e515356585b5d5a4d3b2814000000000000000000000000000012263a4d6175899ca8a29a8d7966523e29140d1e2e3a41413f3e3c3a38362f24150500000000000000000000000000162b40566b7d8a97a2aeada8a39e99948f8a86807b76716c66625d58534e49433f39352f2b25201b16110c0500000000000000000000000000000007192a3b4c5d6e808d959e9995908c87837d7974706b67625e5955504c47423e39352e231505000000001a2e41515d616467696c6f6b5b47331e090000000000000000000000000f1e2e3d4d5a5d554738291a0c000000000000000000081621292c2d2f3032333536383a3b3c3e3f4143444647484a4c4d4f505253555758564b3e3022150700000000000000001c31465b6e74747474747473624e39240f00000000000000000000000000000000000000000000000d22374c62778c90909090846e58432e1904000000001f344a5f7486868686868676604b36210b00000000000000000000000000000000000000000000000000000002101f2e3c4b5a68778695a4b2beafa19284746657483a323f4c596572808c99a6b3bfb2a6998c807265584b3e301f0d0000000000000000000000050d151c1f1e1c181007000000000000000000000000000000000000000009101414100800000000000000000000000e23384d62778da2b7b39d88735e4833202325272a2c2f323437393c3e41434648463d2f1e0c00000000000000000000000000000a1e3245596d8295948d86807868543f2a1400101d262c2c2a28272523211b1206000000000000000000000000000013283c4f606c7885919d99948f8a85807a75706b66615c57524d48433e39342f2a25201b16110c0700000000000000000000000000000000000000000c1d2e4051627179828985807b77726d6964605b57524e4945403b37322e2925201b120600000000001f34495d7076787b7d828475604b36210c00000000000000000000000e1e2d3c4c5b6b72655647382a1b0c00000000000000071626343d4143444647484a4b4d4f5052535456585a5b5c5e5f6163646667686a6b6d695c4e403225160700000000000000172b3e505c5f5f5f5f5f5f5e5545331f0b00000000000000000000000000000000000000000000000b20364b60748ba0a5a59b866f5a45301b06000000001e33485e73899b9b9b9b8d77624c37220d0000000000000000000000000000000000000000000000000000000001101e2d3c4a5967768694a3b2bfb0a293857566584943505d6a7683909daab7bbaea295887a6e6154473a2d2012010000000000000000000810182029313433312c231a11070000000000000000000000000000000008121c252929241a0e000000000000000000000c21364b60758ba0b5b5a08b75604b36210d101215171a1c1f222427292c2e3133312a1f1100000000000000000000000000000002162a3e516579878079726b645c4c39251100000a121717151312100e0c07000000000000000000000000000000000c2032424f5b6773808984807974706a65605c56514c47423d38332e29241f1a15100b060000000000000000000000000000000000000000000000000011223344535d666e746f6b66625d5954504b46423d3934302b27221e1915100c06000000000000001f344a5f74898f9194978d78634e39240f000000000000000000000e1d2c3c4b5a6a798474655648392a1b0d00000000000615253444515658595b5c5e5f6062646667686a6b6d6f707273747677797b7c7d808283796c5e5043342513000000000000000f21323f484a4a4a4a4a4a49433727160300000000000000000000000000000000000000000000000a1f34495e73899fb4b19c87705c47321c07000000001d32475c72889cb0b0a38e78634e38230e0000000000000000000000000000000000000000000000000000000000000f1e2c3b495867758594a2b1c0b1a2948576675954616e7a8894a1aebbb7aa9e9184766a5d504336291c100200000000000000030b141c242c343c444a484640362d241a110700000000000000000000000007111b242e383f3e372c1d0c000000000000000000091f34495e73889db3b7a28d77624d38230e0000000000070a0c0f111417191c1e1c170d01000000000000000000000000000000000e22364a5d70726b655e5750493e2e1c0a0000000000000000000000000000000000000000000000000000000000021423313d4a56616e746f6a65605b56514c47423d38332e29241f1a15100b06000000000000000000000000000000000000000000000000000000000004162635414a525a5f5b56524d49443f3b36322d2924201b17120d090400000000000000000000001d32475c71879ca6a9a5907b66513c27110000000000000000000d1c2c3b4a5a697889938474665748392b1a08000000051424334352626b6c6e707273747677797b7c7d808283848688898b8c8d8f9092949597988a7c6e615242301c080000000000000313222d33343434343434343026190a000000000000000000000000000000000000000000000000061d32475c72889db2b39d88735e48331e09000000001b30465b70879bb0b9a48f79644f3a250f000000000000000000000000000000000000000000000000000000000000000e1d2c3a495766758493a2b0bfb2a3958677686571808c99a5b2bfb3a69a8d807266594c3f3225180c00000000000000000c171f272f373f4850585f5e5b534940372d241a11070000000000000000020f1a242d37414b5353493b2917040000000000000000061c31475c70879bb0b9a48f79644f3a25100000000000000000000000000000000000000000000000000000000000000000000000061a2e41515d5e57504a433c352c2010000000000000000000000000000000000000000000000000000000000000000514202c3844505c5f5a55504b46413c37322d28231e19140f0a05000000000000000000000000000000000000000000000000000000000000000000000817242e363e464a46413d38342f2b26221d19140f0b06000000000000000000000000000000001a2f445a6f8499aebda8937d68533f291400000000000000000c1b2b3a495968788897a2938575665749382511000001132332425161708283848687898b8c8d8f909294959798999b9c9ea0a1a3a4a5a7a9abaca89b8d80705f4b36210d000000000000000410191e1f1f1f1f1f1f1f1b140900000000000000000000000000000000000000000000000000001b30465b70869bb0b49f8a745f4a341f0a000000001a2f445a6f869aafbba5907a66503b261100000000000000000000000000000000000000000000000000000000000000000e1c2b39485765748492a1b0beb3a49587777683909da9b6bcafa295897b6f6155483b2e21140800000000000000000e1d29333b434b535b636c74736f665d534a40372d241a0d0000000000000010202c36404a545e6867594633200d0000000000000000001a2f445a6f8499afbca7917c67523d2813000000000000000000000000000000000000000000000000000000000000000000000000112333414949433c362f28211a0f020000000000000000000000000000000000000000000000000000000000000000020e1a27333f484a46403c37322d28231d19130f090400000000000000000000000000000000000000000000000000000000000000000000000000000007121b232b3234312d28241f1a16110d08030000000000000000000000000000000000000000182d42576c8297abc0ab96826b56412c17020000000000000b1b2a39495867778796a6b1a39485756754402b160100091d3041516070808f98999b9c9ea0a1a3a4a5a7a8aaacadafb0b2b3b5b7b8b9bbbcbec0c1b8ab9d8e78634e39240f00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001a2f445a6f8499afb6a18c76604b36210c00000000192e43586e8499aebca7917b67523c27120000000000000000000000000000000000000000000000000000000000000000000d1c2a39475665738392a0afbdb3a596888794a1aebab8ab9f9185776b5e5144372a1d100400000000000000000e1d2c3b464e565f676f77808888837970665d534a40372b1d0c00000000000a1c2e3e49535d67717a7663503d2a17040000000000000000182d42576c8297acbea9947d69543f2a150000000000000000000000000000000000000000000000000000000000000000000000000515232e34342f28211b140d060000000000000000000000000000000000000000000000000000000000000000000000000915212c3334312c27221d18130e0903000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000070f171d1f1c18130f0a0600000000000000000000000000000000000000000000000000152a3f54697d94a8beae99846e59442f1a0500000000000a1a2939485767768696a5b4bbac9c8d7d6b57412c1702000f24384d5f6f7d8f9eadafb0b1b3b4b6b8b9bbbcbebfc0bebcbbb9b8b6b4b3b1b0aeacacb2bfbaa5907965503b261000000000000000000000060e1518171209000000000000000000000000000000000000000000000000000000000000182e43586d8398adb8a38d77624d38230e00000000182d42576c8398adbda8937c68533d2816110d08040000000000000000000000000000000000000000000000000000000000000c1b29384755647382919faebdb4a69999a5b2beb4a79b8e8273675a4d403326190c0000000000000000000d1c2c3b4a59626a727a838b939b9d968c837970665d53493b2a1704000000001125394c5c66707a848e806c594633200d0000000000000000162b40556a8095aabfab96826b56412c170200000000000000000000000000000000000000000000000000000000000000000000000005111a1f1f1b140d0700000000000000000000000000000000000000000000000000000000000000000000000000000000040f191e1f1c17120d08030000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000012273c51667b91a6bbb09b87705c47321c07000000000a192838475666758695a4b4bcad9d8e7d6e5f4f3c2814000011263b50667b8e9dadbcc1bcbbb9b7b5b4b3b1afadacaba9a7a5a4a3a19f9d9c9b999797a1b3bca7917c67523c271200000000000000020a121921292e2c261b0e0000000000000000000000000000000000000000000000000000000000172c41566b8297acb9a48f78644f3a240f00000000162c40566b8297acbfa9947d68543f2c2b26211d18140f0b060200000000000000000000000000000000000000000000000000000b1a29374655637282909faebeb6adadb6bdb0a3978a7c6f6256493c2f221508000000000000000000081a2b3a495968767d868f969fa7adaea9a0968d837970665947331f0b00000000142a3f546879838d979c897663503d2a17040000000000000013283e53687c93a8bdad98846e58442f19040000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001080c0d0d0d0d0d0d0d0d0d0d0d0d0d0d0d0d0d0d0d0d0d0d0d0d0d0d0d0d0d0d0d0d0d0b06000000000000000f24394e63788ea3b8b39e89735e49341f0a00000009182837465665748594a3b3bdad9e8f7d6f605041311f0d000012273c52677c91a7bbbdaea7a5a4a2a09f9d9c9a9897959492908f8d8c8a88878684838398adbea8947d68533e29140000000000010d161d252d353d4341392c1c0b00000000000000000000000000000000000000000000000000000000152a3f546a8095aabba5907a66503b261100000000152a3f546a8095abc0ab95806a5540423f3b36322d2924201b17120d090400000000000000000000000000000000000000000000000b19283745546371828fa0b5c8c2c2c3b09f9286786b5e5245382b1e1104000000000000000000001125384958677787929aa2aaaaa1989aa3ada9a0968d8376624e3925110000000014293e5366798c9ea9a693806c594633200d0000000000000011263b50667b90a5bbb09b86705b46311c06000000000000000206090d0f0f0b030000000000000000000000000000000000000000000000000000000000000000000000000001060a0f131718150e0400000000000000000000000000000000000000000002050400000000000000000000000000000000000000000000000000000000000002090c0c08010000000000000000000000000008141d2122222222222222222222222222222222222222222222222222222222222222222220190f0200000000000d21374c60768ba0b5b6a18c76614c37220d000008172736465564748493a3b2bdae9e8f807060514232231302000012273c52677c93a8bdb29f92908f8d8b898887868382807d7c7b7877767473716f6e6c8296abc0ab95806a55402b160100000002121f29313941495158554a3a28150100000000000000000000000000000000000000000000000000000014293e53687d93a8bca7927c67523c27120000000014293e53687d94a9bfac97826b56505754504b46423d3934302b27221e1915100c07020000000000000000000000000000000000091623303d495663707d8b9eb3c8d3d4bfa9948274675a4e4134271a0d000000000000000000000000162b405467768696a5aeaaa0978e8587909aa3ada9a0927c68543f2b16020000000f2337495c6e8294a6af9c897663503d2a17040000000000000f24394e63788fa3b8b29d88725d48331e090003060a0d1114171b1e2224241f160a000000000000000000000000000000000000000000000000000000000000000003080d11161a1f23282c2e2921170c0200000000000000000000000000000000000610171a19130a00000000000000000000000000000000000000000000000000000009151d21211c140800000000000000000000000818263136373737373737373737373737373737373737373737373737373737373737373737352d201304000000000a1f34495e73889db3b8a38f79644f3a25100007172635455464738392a2b1beae9f9080706151423223140400000012273c52677c93a8bdaf9984797877767472706f6e6c6a6867666462605f5e5c5a58697d94a9bfac97836c57422d18030000000f20303c454d555d646d685744301c0900000000000000000000000000000000000000000000000000000012273c52677c91a7bca8947d68533e29140000000013283d52677c93a8bdad98836c57606c6964605b57524e4945403b37322e2925201c160d0100000000000000000000000000000d1a2734414d5a6774828f9ba9bac1bdc1c1ad9a8b7c6d5f504132241506000000000000000000000000182d42576c8395a4aba0968d847a71737d87909aa4ac97836e5a45311c08000000071a2c3f5164778a9cafa693806c594633200d0000000000000d22374c61768ca1b6b49f8b745f4b35201115181b1f2226292c3033373a3933271909000000000000000000000000000000000000000000000000000001060a0f14181d21262a2f34383d41433d33291f15090000000000000000000000000000000817232b2f2d271c0e000000000000000000000000000000000000000000000000000a19273137363025180b00000000000000000006162636444b4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c493e31221304000000061c31465b70869bb0bba6917b67523d281307162535445363728292a1b0bfafa0908271615243332414050000000013283d52677c93a8bdaf99846e6362605f5d5b5a5857555352504f4d4b4a48474552677c92a7bcae99846e59442f1a04000000182b3e4e59606870788073604c38251100000000000000000000000000000000000000000000000000000011263b50657990a5bbab95806a54402b150000000012273c51667b91a7bcaf99846e58687d7d7974706b67625e5955504c47423e3935302a1f1101000000000000000000000004111e2b3845515e6b7885929facb9baaea8adbab8a99b8c7d6e5f5142332416070000000000000000000000192e43586e8499af9e8d837a70675e606a737d8798ac9d8974604b37220e00000000102235475a6c8092a5af9c897663503d2a170400000000000b20354a5f748a9fb4b7a28d77624c3823262a2d3034373b3e4145484c4f4e453726140000000000000000000000000000000000000000000004080d11161b1f24282d31363b3f44484d51565850463c3127190900000000000000000000000000081726353f4442392c1d0d000000000000000000000000000000000000000000000006172737444c4b4336291b0e00000000000000041424344454606262626262626262626262626262626262626262626262626262626262626262625c4f4032231405000000192e43586e8398adbea9947d69543f2a15152534435362718291a0b0bfb0a191827262534334251506000000000013293e53687d94a9bead98836c574c4b4a4846444342403e3c3b3a38363433323b50667b90a5bbb09b86705b46301b060000001e33475b6b747c858c8f7b6854402d190500000000000000000000000000000000000000000000000000000f24394e63788fa4b9ac97826b57412c170200000010263b50657990a5bbaf9b866f5a6d82938e8a86827b77726e6965605c57534e4a453c2f1f0d000000000000000000000815222f3c4956626f7c8996a3b0bdb6a99c939cabb9b9aa9b8d7d6f60514234251708000000000000000000001a2f445a6f869baf9b8670665d544a4d57606a7d92a7a38f7965513d2814000001111e282e3d506275889bada693806c594633200d0000000000081e33485d72889db2b9a48f79644f3a383b3f4245494c5053565a5d6064625543301c070000000000000000000000000000000002060b0f14191d22262b2f34383d42464b4f54585d62666b6d63594e443727150200000000000000000000000917263544525a564a3b2b1c0d00000000000000000000000000000000000000000003142435455560605447392c1e11040000000001112232425262727777777777777777777777777777777777777777777777777777777777777777776d5e5041322314030000172c41566b8095abbfac97826c57422d182433435261718290a0afbeb1a19283726354443525160700000000000013293e53687d94a9bfad98836c5742363433312f2e2c2b2927262423211f1e24394e63788fa4b9b29d88725c47321d080000001f344a5f73889098a09784705c4835210d00000000000000000000000000000000000000000000000000000d23384c62778da2b7ad98836d58432e19030000000f243a4f64788fa4b9b19c87705d71879ba39e9a95918c88837d7975706c68635e594d3c2b1a0900000000000000000c192633404d5a6673808e9aa7b4bfb2a5988c7d8d9baab9b9ab9c8e7d70615243352617090000000000000000001b30465b70879baf99846f5a4a41373a444f63788da1a995806b57422e1a05000e1f2f3b424950586a7d90a3af9c897663503d2a170400000000031b30465b70869bb0bba6917b6651494d5053575a5e6164686b6f727678735f4a35200b00000000000000000000000004090d12171b2024292d32373b4044494d52565b5f64686d72767b8080766b615545321f0b00000000000000000000091827354453626f6858493a2b1c0c00000000000000000001070a0a09060000000000102132425263737264574a3c2f2114040000000e1f2f40506070808d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8b7c6e5f514232210e000014293e53687c93a8bdaf99856f5a4530233242516170808f9faebeb2a2938373645445362617070000000000000013293e53687d94a9bfad98836c57422c1f1e1c1a1917161412110f0e0c0a0d22374c62778da2b7b49f89735e49341f0a0000001c3044586b8093a6b39f8c7764503d291502000000000000000000000000000000000000000000000000000c21364b60768ca0b5af99856f5a442f1a050000000e23384d63778da3b8b29d887261768ba0b5b3aeaaa6a19c98938f8a86827c78736b5a49382715040000000000000c1c2a3744515e6a7785919eabb8bbaea194887a6e7d8c9ba9b8baac9d8f80706152443527180a00000000000000001d32475c72879caf99846e58432e242735495e72879baf9a86715d48341f0b00182b3d4d575d646b7279879cb1a693806c594734210e0000000000192e43586e8398adbea8947d685b5e6265686c6f7376797c8284888b8d77634d38230e0000000000000002070b1014191e22272b3034393e42474b5054595d62666b7074797d83878c909593897d73614e3a2613000000000000000000081827364553627182766758493a2a1b0c000000000000070e151c1f1f1e1b130a00000d1e2e3f4f6070828375675a4d3f322210000000182b3d4d5e6e7d8f9ea3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a39b8c7d6f60503d2915000011263b50657a90a5bab19c87725d48333242516070808f9eaebdb2a3948474655546362718080000000000000000152a3f546a8094a9bfac97826c57422c17070100000000000000000000000b20364b60758ba0b5b5a08b76604b36210c00000015283c5063778b9fb2a794806c5845311d0a000000000000000000000000000000000000000000000000000a1f344a5f74899fb4b09b87705b46311c070000000d22374c61768ca1b7b39e8973667a8fa4b2b6babfbab6b1ada8a39f9a96928d887766554433221100000000000317293a4855616f7b8995a2afbcb7aa9d908376695f6d7c8b9aa8b7bbac9e8f80706253453628190a000000000000001e33485e73889daf99846e58433022223345586d8296aaa08c77634e3a2510001e32475a6a717880868d94a2b5af9c897663503d2a170400000000172c41566b8296abc0ab96826c707377797d8285888b8f9296999ca0907b66513c27120000000000020e161b2025292e32373b4045494e52575b6064696d72777b8085898e93979ca0a5a9a59b917d6a56422e1b0700000000000000001325364554637182908676675848392a1b0b0000070d141b2229303434332f261d130a1b2b3c4c5d6d7d8f9386786b5d503f2d190500001e32475a6b7b8c9cadb8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8aa9c8d7d6d58432e1800000e23384d63778da2b7b49f8a745f4a354150606f7d8f9eadbdb3a495857565564737281909000000000000000000152a3f546a8095abc0ac97826b56402b1601000000000000000000000000091f34495e73899eb3b7a28d77624d38230e0000000c2034475b6f8396aaaf9c8874604d39251200000000000000000000000000000000000000000000000000081e33485d72889db3b29d88725d48331e080000000b21364b60758ba0b5b49f8a746a8094989da1a6aaafb3b8bcbdb8b4afaba6a29685736251402e1b07000000000a1e3346586672808d99a6b3c0b3a6998d807265584f5e6c7b8a99a8b6bcad9e8f827163544637281a0b0000000000001f34495e73899faf99846e5d4e403232405162738597aba08e7c67523c2712001f344a5f74868d949aa2a8b1c0b9a693806d5a47331e0900000000152a3f54697d94a9bead98838286888c8f9396999da0a4a7abaeb1a8947d69543f2a15000000000313202a3035393e42474b5055595e62676b7075797d83888c90959a9ea3a7acb0b5babeb8ad9986715d4a36220e00000000000000001b2f4354637282909f95867566574839291a0d141b21292f363d444a4a48433930261d2838495a6a7a8c9ca396897b6e5c48331e0900001f344a5f74899aaabac2b7b4b4b4b4b4b4b4b4b4b4b4b4b4b4b4b4b4b4b4b4b4b4b4b4b4b4b4b7c2baab98836e58432e1900000c21364b60748b9fb4b7a28d77624d40505f6e7d8e9dadbcb4a59586766657483829190a00000000000000000000152a3f546a8095abc0ac97826b56402b1601000000000000000000000000061d32475c71879cb1b9a48f79644f3a240f00000004182c3f53677a8ea2b6a4907c6855412d1a06000000000000000000000000000000000000000000000000021c31475c70879cb1b49f89735e49341f0a0000000a1f344a5f74899fb4b5a08b766b7a8084888d91969a9fa3a7acb0b5b9bebbb3a291806e5e4b36210d000000000d22374c617684919eaab7bcafa295897b6e615448404e5d6c7a8a98a7b5bdae9f90827264554638291a0900000000001f344a5f74889caf9b897a6c5e5045474c5d6e8091a3a69482705e4c39240f001c3145596d8295a7afb5bcc4cfc3b09d8a76604b36210b0000000013283d52677c91a7bcb2a094979a9da1a4a8abaeb2b5b9bcbfbdb9ac97826c58432e19040000000f21313d454a4e53575c6065696e72777c82868a8f93979ca1a5aaaeb3b7bbb7b2adabafbcb5a18d7965513e2a1603000000000000001f34495e7282919faea4948575665747382921282e363c434a51585f5f5d564c43393035465667778899a9b4a59484735e49341f0a00001e33485d72889db3c5b3a49f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9fa4b3c3ad98836c57422c170000091e33485d72889cb2b9a48f7965504f5e6e7d8d9cacbbb5a6968776675848392a1a0b0000000000000000000000162b40556a8095abc0ab95806b56402b1601000000000000000000000000001b30455a6f869bafbba6917b66503b2611000000001024374b5f72869aaeac9885705d4936220e000000000000000000000000000000000000000000000000001b30455a6f869bafb5a08b75604b36210b000000081e33485e73889db3b7a18c7762656a6f73777c82868a8e93979ca0a5aab5c0af9e8d77634e38230e000000000c21364a5e708291a2b3b8ab9e9185776a5d504437303f4e5c6b798998a6b5bdae9f91827364564738261300000000001c3145586c8094a8a7998b7c6e605a5c5f697a8d9eac9b89766453412f1d090016293e5165798ea2b6c9d1d4cec1ad9985705c48341f0a0000000010253b50647990a5babeb0a9acafb2b6b9bdbfbcb8b5b2aeaba8a4a19a86705b46311c07000000192c3e4f595e63676c7075797d83888c91969a9fa3a8acb1b5bab9b5b0aba7a29d99959eafbda995826d5946321e0a000000000000001e33485d6f7d8f9eadb2a394857565564738353c434a50585e656c737472695f564c43435363748596a6b7a8978776665543301b0700001c31465b70879bb0bea99589898989898989898989898989898989898989898989898989898995a9beac97826c57422c170000041b30455a6f869aafbca7927c68535d6d7c8c9cabbab6a69788776859493a2a1b0c000000000000000000000000162b40566b8297acc0ab95806a543f2a150000000000000000000000000000192e43586e8398adbda8937c68533d281300000000081b2f43576a7d92a5b4a08d7965513e2a1603000000000000000000000000000000000000000000000000192e43586e8499aeb7a28d77624c37220d000000021d32475c72889cb1b8a38d776351555a5e63676c7074797d83878b9097a8bbb5a08b75604b36210c00000000071b2e415263738595a6a79a8d807366594c40332621303e4d5c6a798897a5b4bdafa09283746555422e1a050000000015293d5164788c9aa8a99b8d7d706f7274778899aaa18f7d6b594735241200000e22364a5e72879aafc2c7c0b9b3a6927d6955412d1905000000000e23384d63778da2afbcc3bfbfbbb8b4b1aeaba7a3a09d9996938f8c8886735e48331e090000001e33485c6d73777c82868a8f93989ca1a6aaafb3b8bcb7b3aea9a5a09b97928d89848093a6bab19d8975614d3a261200000000000000192d40516070808f9eadb2a39384746556464950575e656c727982888a867c72695f565060718292a3b3ab9a8a796858483726140000001a2f445a6f8599afbda8937d737373737373737373737373737373737373737373737373737d94a9beac97826b56402b16000000182d42576c8397acbfaa95806a55697b8c9baabab7a798887869594a3b2b1c0c00000000000000000000000000162b40566b8297acc0ab95806a543f2a150000000000000000000000000000172c41576b8297acbfa994806a543f2a15000000000014273b4e62768a9eb1a895826d5946321e0b000000000000000000000000000000000000000000000000172c42576c8297acb8a38f78634e39240f000000001b30465b70879bb0b9a48f78644f4045494e52575b6064696d72767b8da3b8b29d88725d48331e09000000000011233445566677899996897c6f6255483c2f221512202f3e4c5b69788796a5b3beb0a19384715c47321d07000000000e2135495c6d7b8b99a7ab9d8f8386888a8c94a5a79583715f4e3c2a18060000071b2f43576b8093a7bab3aca59f978a76624e3a261200000000000c21364b607585919fabb1adaaa6a3a09c9995928f8b8885827d797673706a5946311c070000001f344a5f73888d91969a9fa3a8adb1b6babab5b1aca7a29e9995908b87827c78736f768a9eb1b8a4917c6955412d1a0600000000000011223242516170808f9eaeb1a293847464565d646b727980878e959c9f998f867c72695f6e7d8fa0b0ae9d8d7c6c5b4b3a2a1909000000182e43586d8398adbfaa95806a5e5e5e5e5e5e5e5e5e5e5e5e5e5e5e5e5e5e5e5e5e5e5e687d94a9bfab95806a55402b16000000162b40556a8094a9bfad98836d58687d94a9b9bda99989796a5a4b3b2c1d0d0000000000000000000000000000162b40566b8297acbfa994806a543f2a150000000000000000000000000000152a3f546a8095aabfab96826b56412c1702000000000b1f33465a6e8295a9b09d8975614e3a2613000000000000000000000000000000000000000000000000162b40566b8095abbaa5907964503b2510000000001a2f445a6f869aafbba5907965503b3035393e42474b5054585d657a90a5baaf9a86705b46301b0600000000000516273849596a7b8c85786b5e5144382b1e11040211202e3d4b5a69778795a4b2a69787776857442f1b060000000006192d3f4f5d6c7a8998a6ac9e989a9c9fa1a6ac9b8a77665442301e0c0000000014283c5064778ca0a69f98918a847c6f5b47331f0b0000000000091d3246586773828e9a9c9895918e8b8784807c7976726f6c6865615e5b564c3c2a16020000001c31465a6f8599a6abafb4b8bdb8b3afaaa5a19c97938e8985807b76716d68635f5b6e8295a9bcac9985705d4935220e0000000000000514243342516170808f9eaeb1a29283736a717880868d949ba2a9b0b4aca2998f867c727b8c9dadb1a090806f5e4e3d2d1c0c00000000172c41566b8297acc0ab97826b56484848484848484848484848484848484848484848546a8095abc0ab95806a543f2a1500000013283d52677c91a7bcaf9b86705b677c92a7bcb9a48f7b6e615447392c1f120500000000000000000000000000172c42576c8398adbfa9947d68533e2913000000000000000000000000000013283e53687c93a8bdad98836d58432e18030000000003172b3e5266798da1b5a5917d6956422e1b070000000000000000000000000000000000000000000000142a3f54687d94a9bca7917b66513c271200000000192e43586e8499aebca7917b66513c272024292d32363b3f4453687d93a8bdad98836d58432e1904000000000000091a2b3c4c5d6e8074675a4d4034271a0d00000002101f2d3c4b5968768694a398887868594a3a28150100000000001021313f4e5c6b798897a5b0adafadaaa7a49c8e7d6c5a4836241301000000000c2134485d708599928b847c766f686052402c180400000000000316293a4956626f7c8a8783807c7875726f6b6864615d5a5753504c4946423a2e1e0d00000000182d41566b8095aabbb6b1ada8a39f9a95908c87837d7974706b66615d58534f4a5266798da0b4b4a08d7865513d291602000000000000061524334352617080909faeb0a192837d868d939aa1a8afb4ada5a5adb5aca2998f868999aab3a3938271615140301f0f0000000000152a3f546a8095aabfad98836c58433333333333333333333333333333333333333340566b8095abbfa9947d68533e291400000010253a4f64798fa4b9b29d88735e667b90a5bbbdaa9a8d807164574a3d30231508000000000000000000000000172c42576c8398adbfa9947d68533e2913000000000000000000000000000012273c51667b91a6bbaf9a856f5a442f1a0500000000000f23364a5d718699adad9986725e4a36230f000000000000000000000000000000000000000000000013283d52677c93a8bda8937d68533e281300000000172c42576c8398adbda8937c67523d28131014191d21262c41566b8095abbfaa95806a55402b1601000000000000000d1e2f3f50616b6356493d302316090000000000010f1e2d3b4a58677685948979695a4a3b2c1c0b000000000000031321303e4d5b697887959c9e9b9895928f8c7d6f604e3d2b1907000000000005192d4155697d857d767069625b544d43342310000000000000000b1c2b3845525e6b74716e6b6764605d5a56534f4c4945423e3b3834312d271d10000000000014283d52677b91a6a6a19d98938f8a86827b77726d69645f5b56514d48433f3a364a5d718598acbca895806c5945311d0900000000000000061525344352617182909fafb0a193939aa1a7afb5b0a8a19991909ba5afb5aca29999a7b7a696857464534333221201000000000013293e53687d93a8bdaf99846e59442f1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e2b40566b8297acbea9947d68533e29130000000d22374c62778ca1b6b5a08b766064798fa2afbcb8aa9d908375685b4e403326190c0000000000000000000000172c42576c8398adbea8947d68533e2913000000000000000000000000000010253a4f64798fa4b9b19c87705c47311c070000000000071b2e4256697d91a4b5a18d7966523e2b17040000000000000000000000000000000000000000000011263b50667b91a6bba994806a543f2a1500000000162b40566b8297acbfa9947d68533e2914000003080d192f44586e8398adbca7927c68533d28130000000000000000001122324250565145382c1f120500000000000000000f1d2c3a49586675847a6a5b4b3c2d1d0e00000000000000000312202f3d4b5a68768387898683807c79766e605142311f0d0000000000000012263a4e62737069625b554e4740393125160500000000000000000d1a2734414d5a5f5c5956524f4b4845413e3a3734302d2926231f1c18130b0000000000000f24394e63778d96918d88837d7975706b67625d59544f4b46413d38332f2a252e4155687c90a3b7b09c8874604d392511000000000000000007162534445362718291a0afb1a7a7aeb5b4aca49c958d857d7d88929da7b1b5adadb7a99988776756463625150400000000000012273c51667b91a7bcb09b86705b46301b060000000000000000000000000000172c42576c8397acbda8937c67523c27120000000b20354a5f74899fb3b8a38d7863627684919eacb8bbaea09386796b5e5144372a1c0f02000000000000000000192e43586d8398adbda8937c67523c271200000000000000000000000000000e23384d62778da3b8b39d88735e48331e0900000000000013263a4e6175899cb0a996826e5a47331f0b000000000000000000000000000000000001020000000f253a4f64798fa4b9ab96826b56402c1601000000152a3f546a8095abc0ab95806a543f2a1500000000061c31465b70869bb0baa5907965503b2611000000000000000000041524323c403e35281b0e01000000000000000000000e1c2b3a485765736b5c4c3d2d1e0f0000000000000000000002111f2d3c4a59676d7274706e6b6864615d504233241302000000000000000b1f3345555e5c554e474039332c251e140700000000000000000000091623303d464a4744403d3a3633302c2925221f1b1814110e0a070000000000000000000b20354a5e7386827c77736e6965605b57524d49443f3b36312d28231f1a151225394c6073889baeb8a4907c6854412d1905000000000000000007162635445362728291a1b3bbb8afa8a0989089827971696b75808a959faabac2ae9c8b7a6a5a49392818070000000000000010253a4f647990a5bab29c88725c47321d080000000000000000000000000000182d42576c8398adbca7927c67523c2712000000071d32475c71879cb1bba5907b66586673808e9ba8b5beb1a4978a7c6f6155473a2d2013050000000000000000192e43586e8499afbda8937c67523c271200000000000000000000000000000c21364b60768ba0b5b49f8b745f4a35200b0000000000000a1e3245596d8295a8b19e8a76624e3b27140000000000000000000000000000000a121617130c010e23384e63788da3b8ad98836c57422d180300000014293e53687d94a9bfac97826b56402b16010000000a1f34495e73899eb3b7a28d77624d38230e00000000000000000000061520282b2922170a000000000000000000000000000d1c2a3948565f5b4e3e2e1f0f000000000000000000000000010f1e2c3b4953585d5f5c5856534f4c494032231506000000000000000003162737434948413a332c261e18110a0100000000000000000000000005121f2a3234322f2c2825211e1b1714100d0a06000000000000000000000000000000071c31455a6c716c68635e5955504b47423d39342f2b26211c18130f0a0500091d3044576b8092a6b9ac9884705c4835210d00000000000000000008172635445463728499afb4a59c948c857c756d655d5558636d77828c9caec0ab95806d5d4c3c2b1b0a00000000000000000e23384e63788ea3b8b39f89735e49341f090000000000000000000000000000192e43586e8499afbca7917b66503b2611000000011a2f44596e8499aebda8937d685355626f7d8a97a4b1bfb5a79a8d807265584b3e3023160900000000000000192e43586e8499afbda8937c67523c271200000000000000000000000000000a1f344a5f74899fb4b6a18c76614c37220d00000000000002162a3d5165788ca0b4a6927d6a57432f1c08000000000000000000000000000f1c262c2c281f130c22374c61768ca1b7af99846e59442f1a0500000013283d52677c93a8bdad98836c57422c17060a0e121622374c61768ca0b5b49f8a745f4b35200b0000000000000000000000030d1316140e050000000000000000000000000000000c1b2a38444a473e3020100100000000000000000000000000000e1d2b373f44484a4744403d3a37342d221405000000000000000000000a19263034332d261f18110a0400000000000000000000000000000000010d171d1f1d1a1713100d090400000000000000000000000000000000000000000000162a3d4e5a5c57534e4945403b37322d29241f1b16110d080200000000000115283b4f63768a9eb1b39f8c7764503c29150100000000000000000008172636485d72889cb2ab968880787069615951494246505a646f7d90a2b4b09d8b786653412e1c0a00000000000000000d22374c62778ca1b7b5a08b745f4b35200b00000000000000000000000000001a2f445a6f8499afbba5907b66503b261100000000172c41576b8296abc0ab96826b5644515f6c798794a1aebbb8ab9e918376695c4e4134271a0c000000000000192e43586e8499afbca7917b66503b26110000000000000000000000000000071d32475c72889db2b8a38e78634e38230e000000000000000e2235495d708598acae9a86725f4b3724100000000000000000000000000c1d2d3940413b30241720354a5f748ba0b5b09b86705b46301b0600000012273c51667b91a7bcae99846e58432e191b1f23272b2f3a4f64788ea3b8b29c88725d48331e09000000000000000000000000000000000000000000000000000000000000000000000c1a273034332b201202000000000000000000000000000000000d1a242a2f3334322f2c2825221f1a100400000000000000000000000009141b1f1e19120b040000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000e1f303d4547433e3935302b27221d19140f0b0600000000000000000000000c2033475a6d8295a9bba794806c5844301d09000000000000000000000d22374c60768ba0b5a7927c6c645d554d453e362e333d485261738597a9baa89583705e4c39271402000000000000000b20354b5f748ba0b5b7a18c76614c37220d00000000000000000000000000001a2f445a6f869bb0bba59079644f3a250f00000000152a3f54687d93a8bdae99846e5944414e5b687583909eaab8bcaea19487796c5f5245372a1d1003000000001a2f445a6f869bb0bca7917b66503b26110000000000000000000000000000011b30465b70869bb0baa5907964503b25100000000000000006192d4154687c90a3b6a28f7a67533f2c1805000000000000000000000617293b4b55564e4135281e33485e73899eb3b19c88725c47321d0700000010263b50657990a5bbaf9a866f5a442f2c3034383c40444851667b91a6bbaf9a866f5a45301b06000000000000000000000000000000000000000000000000000000000000000000000009141c1f1e180f020000000000000000000000000000000000000810161a1e1f1d191614100d0a06000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000080d0e0e0e0e0e0e0b050000000000000000000000000000000000000002121f2a31322e2925201b17120d0803000000000000020407090b0e10121517192b3e5265798da0b3af9b8873604c3824110000000000000000000010253a4f64798fa3b8a38e786450494139312a221a212b35445567798b9daeb2a08d7b685644311f0c00000000000000091f34495e73899eb3b8a38e78634e38230e00000000000000000000000000001b30465b70879bb0b9a48f79644f3a240f0000000012273c51667b90a5bbb09b87705c47323d4a586572808d9aa7b4bfb2a5988a7d706255483b2e2113060000001a2f445a6f869bb0bca7917b66503b26110000000000000000000000000000001a2f44596e8499aebca7917b67523c271200000000000000001225394d6074889cafaa96836f5b4734200c000000000000000000001223354759686b5f5246392d32475c72889cb1b39e89735e48331e090000000f243a4f64788fa4b9b09b86705b463d4145494d5155595d61697d94a9beac97836c58432d18030000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000006131c2223232323232320180d00000000000000000000000000000000000000020e161c1c1914100b070000000407090c0e101315171a1c1e202325272a2c2e3136495d708498abb7a38f7b6754402c190500000000000000000014283d52677c92a7b49f8a75604b362d261e160e060e1826384a5c6d8091a3b5ab988673604e3c291705000000000000061d32475c72879cb1b9a48f79644f3a251000000000000000000000000000001c31465b70879cb1b9a48f78634e38230e000000000f24394e63788ea3b8b39e89735f4a342d3a4754616f7c8996a3b1beb5a89b8e827366594c3e3124170800001a2f445a6f869bb0bba59079644f3a2510000000000000000000000000000000182d42576c8397acbda8937d68533e29140000000000000000091d3144586c8093a7b29f8b7763503c28150100000000000000000b1d2f415264767d7064574a3e31465b70869bb0b5a08b745f4a35200b0000000e23384d63778da3b8b19c87725c4d5155595d6166696e7276798297abbfa994806a55402b16010000000000000000000000000000010a0f111111111111100c0400000000000000000000000000000000000000000000000000000000000000000000000000000000000004080c1014181b1a160d0100000000000000070e111111111111100b0200000000000000000000000000000000000000000000000515243037383838383838342a1d0d00000000000000000000000000000000000000000000000000000000000913191c1e212325282a2c2f313336383a3c3f414346484b54687b8fa3b6ab97836f5c4834200c000000000000000000172c41566b8095aab09b87715c47321e120a02000000091a2c3e5061738697a9b5a3907d6b594634220f000000000000001b30465b70869bb0bba6917b66513c271100000000000000000000000000001d32475c72889db3b8a38d77624d38230e000000000c21364b60768ba0b5b6a18c76614c3722293643515e6b788693a0adbab9ac9f918476695c4f4235261604001b30465b70869bb0bba59079644f3a250f000000000000000000000000000000162b40556a8095abbfab95806a55402b1601000000000000000115293c5064778b9fb3a793806b5844301d09000000000000000517293a4c5e70828f8275685c4f4244596e8499afb7a18c76614c37220d0000000d22374c61768ca1b7b39d88735e62666a6e72767a7d83878b8f939fb1bca7927c67523d2813000000000000000000000000000006131e242626262626262520170b0000000000000000000000000000000000000000000000000000000000000000000000000000000510181d2125292d302f2a1f120200000000010f1a22262626262626251f150800000000000000000000000000000000000000000000102233424b4e4e4e4e4e4d473b2b19060000000000000000000000000000000000000000000000000000000c1a262e313336383b3d3f414446484b4d4f525456585b5d5f626473879aaeb39f8b7763503c28140000000000000000041a2f44596e8499aeac97836d58432e1a050000000000000f21324456687a8c9eafad9b897663513e2c1a060000000000001a2f44596e8499aebda8937c67523d281300000000000000000000000000031e33485d72889db3b8a38d77624c37220d000000000a1f34495e73889db3b9a48f79644f3a25192633404d5a6774828f9daab7bcafa295887a6d60524433200c001b30465b70879cb1bba59079644f3a250f00000000000000000000000000000014293e53687d94a8beac97826c57422c170200000000000000000d2134485c6f8397abaf9b8873604c3825110000000000000011223446586a7b8e9f9386796d605347576c8398adb8a38d78634e38230e0000000b21364b60758ba0b5b49f897473777b8084888c9094989ca0a4a8afbdb7a48f7964503b25100000000000000000000000000004152431393b3b3b3b3b3b3a34281a09000000000000040809090909090907010000000000000000000000000000000000000000000615222c32363a3e4245443d30200f000000000f1f2c363b3b3b3b3b3b3932261706000000000000000000000000000000000000000000172b3f515f636363636363594835210d000000000000000000000000000000000000000000000000000008192a384246484b4d50525457595b5e60626467696b6e70727477797b7d94a9baa793806b5743301c0800000000000000091e33485d72879cb1a8937d6954402b1601000000000000031527394a5c6e8092a4b5a693826e5c4936220d000000000000182d42576c8397acbfa9947d69543f2a1500000000000000000000000000081e33485e73899fb4b7a18c76604b36210c00000000061c31465b70869bb0bba7917c67523d281315222f3c4a5764717d8c99a6b3c0b3a5988b7d7062503b2712001b30465b70879cb1b9a48f78634e39240f00000000000000000000000000000012273c52677c91a7bcae99846e58442f1904000000000000000005192c4053677b8fa2b6a38f7b6854402d1905000000000000192d405263758899aba4978b7d716458566b8297abb9a48f79644f3a25100000000a1f344a5f74899fb4b5a08b84888c9094989ca0a5a8adb1b5b9bdbfb9a9998977624d38230e000000000000000000000000000e2133424d5050505050504f4638271401000000040f181d1e1e1e1e1e1e1c150b000000000000000000000000000000000000000012243340474b4f53575a594e3e2b18040000071a2c3d4a5050505050504e443523110000000000000000000000000000000000000000001b30455a6f78787878787765503b2610000000000000000000000000000000000000000000000000000415263748565b5e60626467696b6e70737577797c7d828486888b8d8f91949daec2af9b87735f4b37230e000000000000000c21364b60758b9fb4a5907a65513c27120000000000000000091b2d3f5163748698aab09e8c7965503b2610000000000000162b40566b8095abc0ab96826b56402b16010000000000000000000000000a1f344a5f748a9fb4b6a18c76604b36210b0000000000192e43586d8398adbea994806a543f2a1504111f2c394653606e7b8895a2b0bdb6a99c8d7c68533e2813001c31475c70879cb1b9a48f78634e38230e00000000000000000000000000000010253b50647990a5bab09b86705b46301b060000000000000000001124384c5f73879baeab9784705c4835210d0000000000001e33485d6f8293a5b7b5a89c8f8375695c6a8094a9bba6917b66503b2611000000081e33485e73889db3bba89b999da1a5a9adb1b5b9bebfbbb7b3aeaba69b8b7a6b5a48341f0b00000000000000000000000003162a3e5160666666666666635644301d0900000414212c3233333333333330281c0e000000000000000000000000000000000000071b2f41515b6064686b6f6c5b47331e0900000e22364a5b6566666666666153402d190400000000000000000000000000000000000000001b30465b70868f8f8f8f7c67523c27120000000000000000000000000000000000000000000000000010223344556670737577797c7d828486888b8d8f919496989b9d9fa2a4a7a8aebbc4b29f8d79644f3a250f000000000000000f24394e63788ea3b5a18c77624d38230e0000000000000000001021334557697a8ea3b4a08c77634f3a2510000000000000142a3f54697d94a9bfac97836c57422d18030000000000000000000000000b20354a5f748ba0b5b5a08b745f4a34200a0000000000162c40566b8095aabfac97826c57422d1803010e1b283643505d6a7785929facb2a190806f5e4d392511001d32475c72889db3b9a48f78634e38230e0000000000000000000000000000000e23384e63788ea3b8b19c88725c47321d08000000000000000000081c3043576a7d92a6b39f8c7764503d29150200000000001f34495e72808d9aa6b3baada094877a6e687d93a8bda8937c67523d2813000000021d32475c72879cb1c6b8afaeb2b6babebfbab6b2aeaaa6a29e9a96928d7d6d5d4d3d2b18050000000000000000000000000a1e3246596d7b7b7b7b7b7b73604c39251100000f21323f47484848484848453a2c1b0800000000000000000000000000000000000c21364a5f6f74787c828575604b36210d000011263b5065797b7b7b7b7b705c47311c0700000000000000000000000000000000000000001a2f44596e8499a4a4947d68533e29140000000000000000000000000000000000000000000000000b1d2e3f50617284888b8d8f929497999b9da0a2a4a7a9abadb0b2b4b7b9bbbebdbbb9a79583705d4a36220d0000000000000013283d52677b91a6b29d88735e49341f0a000000000000000000071b2f43566a7d92a6ae9a86715d4834200c00000000000013283d52677c93a8bdae99846e58442f19040000000000000000000000000b21364b60768ca1b6b49f8a745f4a341f0a000000000014293e53687c93a7bcaf99856f5a45301b0600000a1825323f4c596673828f9ca49483726151402f1d0a001d32475c72889db3b8a38d77634e38230e0000000000000000000000000000000c22374c61768ca1b6b39f89735e49341f0a0000000000000000000014283b4f63768a9eb2a794806c5845311d0a00000000001b2f4354636f7c8995a2afbbb1a5988c80727b91a7bca9947d69543f2a14000000001b30465b70869ba9b6c3c2bebab6b2aeaaa6a29e9995918d8985827c786f5f4f3f2f1f0e000000000000000000000000001125394d617589919191918f7c6854412d190606192c3f505b5e5e5e5e5e5e584a38251200000000000000000000000000000000000c22374c61768a8e92968e78644f3a2510010110253a4f64799091919188725d48331e09010000000000000000000000000000050e131412182d43586c8398adaa95806a543f2a1500000000000000000000000000000000000000000000000014273a4c5d6e80919da0a2a4a7a9abaeb0b3b5b7b9bcbebdbbb8b6b4b1afadaba8a6a49d8a776553402e1b0700000000000000162b40556a8094a9ae99846f5a453121120300000000000000000f23374a5e72869aaea793806a56422e190500000000000011263b50667b91a6bbb09b866f5a45301b060000000000000000000000000c22374c61768ca1b7b49f89735e48331e09000000000011263b50657990a5bab19c88725d48331e080000000714212e3c495663707d8b97877565544433221200001d32475c72889db3b8a38d77624c37220d0000000000000000000000000000000b20354a5f748a9fb4b5a08b75604b36210b000000000000000000000c2033475b6e8296aaaf9c8874604d392612000000000013253645515e6b7785919eaab7b6a99d90837990a5baab95806b56402b16010000001a2f44596e7d8c98a6b2aeaaa5a19d9995918d8985807c7874706b68635e51413121110100000000000000000000000005192d4155687c91a4a7a7a79884705d4935220e0f2235495c6e7373737373736754412e1b0800000000000000000000000000000811151e33485d72889ca7a7927c68533e291616161623384e63788ea3a79f89745f4a341f1616151007000000000000000000000a1722282a27242c41566b8297acac97826b56412c17010000000000000000000000000000000000000000000000192e42576a7a8c9daeb5b7b9bcbebcbab7b5b3b1afacaaa8a5a3a19f9c9a989593918f8c806d5a4836231100000000000000001a2f44586d8398adab95806d5e4f3f3021120200000000000003172b3e5266798ea2b5a18d7864503b2713000000000000000f253a4f64798fa4b9b19c87715c47321c070000000000000000000000000d22374c62778da3b8b39d88735e48331e0900000000000e23384d62778da2b7b49f8a745f4b35200b0000000003111e2b3845525f6d7a88796858473726150500001e33485e73899eb3b8a38d77624c37220d000000000000000000000000000000091e33485d72889db3b7a28d77624c38230d0000000000000000000004182b3f52667a8ea2b5a4907c6955412d1a060000000008182734404d5a6673808d99a6b2baaea1958890a5baac97836c57422c1702000000162b3e51606d7a88959d9995908c8884807b77736f6b67635f5b57534e4a4132231303000000000000000000000000000d2134485c708498acbcbcb3a08c7865513d2a16182b3e516478898989898985715e4b382512000000000000000000000000000e1b252a2b30455a6f8499aeaa96826b56412c2b2b2b2b2b374c62778da2b5a08c76604b362b2b2b2a24190c00000000000000000a1928353d3f3c393640546a8095abad98836c57422d180c09060300000000000000000000000000000000000000001a2f445a6f8599aabbbfb3aeaba9a7a5a2a09e9c99979593908e8c89878683807d7b79777362503d2b190600000000000000001b30465b70879aaeae9b8c7c6d5d4e3f3020110200000002060a1e32465a6d8295a9ae9a86715d4935210c000000000000000e23384d62778da3b8b39d88735e48331e090000000000000000000000000e23384e63788ea3b8b39d88725c47321d0700000000000b20354b5f748a9fb4b7a28d77624d38230e0000000000000d1a2734424f5c69756c5b4a3a2919080000001e33485e73899fb4b7a18c77624c37220d000000000000000000000000000000041c31465b70879cb1b9a48f78644f3a240f00000000000000000000000f23374b5e728699adac9885705d4936220e00000000000916232f3c4955626e7b8895a1aebbb2a69b9fadbfae99846e58432e19040000000f2233424f5d6a76848884807b77736f6b67635f5a56524e4a46423e3a362e231405000000000000000000000000000014283c5064778ca0b3c7cfbca895826d5946321e2134475a6d82959f9f9f9f8e7a6754412e1b0800000000000000000000000b1c2c383f404041566b8095aaae99846f5a45404040404040404b60768ba0b5a28d77624d404040403f372a1a090000000000000a192837465154514e4b4953687d94a9af99846e59442f24211e1b18150e050000000000000000000000000000000000182d42576b8296abc0b1a199979492908d8b89878482807c7b787674726f6d6b686664625f554533210e0000000000000000001a2e43576b8093a6b9aa9b8c7b6c5d4e3e2f20110c0f13171b1f263a4e6175899db1a793806a56422e1a06000000000000000c21364b60768ca1b6b49f8b745f4a35200b0000000000000000000000000e23384e63788fa4b9b19c87715c47321c070000000000091e33485d72889cb1baa5907965503b2611000000000000000a1724313e4b59605c4e3d2d1c0b000000001e33485e73899fb4b7a18c76604b36210b000000000000000000000000000000001a2f445a6f8499afbba5907b66503b26110000000000000000000000081b2f42566a7d92a5b4a08d7965513e2a1603000000000005121e2b3744515d6a7684909daab6b7b0b2bcc5b09b866f5a45301b06000000041524323f4c596673736f6b66625e5a56524e4a46413d3935312d2925211b11050000000000000000000000000000081c3043576b8093a7bbcfd7c4b09c8975614e3a272a3d5063768a9eb1b4b4ab9885715e4b382512000000000000000000000015283a4a5456565656677c92a7b29d88725d5656565656565656565f748a9fb4a48f78635656565656534838261300000000000a192837465564696663605e5b677c93a8b09b866f5a453b393633302d292116080000000000000000000000000000000014293e53687c92a7bcaa9584827d7c79777673706f6c6a686663615f5c5a585653514f4c4a433727160400000000000000000014283b4f63778b9cabb9aa9a8b7b6c5c4d3e2f1f2124282c3034384155697d91a5b5a18d7864503b271300000000000000000a1f344a5f748a9fb4b6a18c76604b36210c0000000000000000000000000f253a4f647990a5bab19c87705b46301b060000000000041b30455a6f859aafbca7927c68533e281400000000000000000613202d3b464b483e301f0f00000000001f344a5f74899fb4b7a18c76604b36210b00000000000000000000000000000000182e43586d8398adbca7937c67523d281300000000000000000000000013273a4e6275899db1a895826d5946321e0b000000000000000d1a2633404c596672808c98a5b2bec7cec7b19c87715c47321c07000000000614212e3b48555e5e5a56524d4a45413d3935312d2825201c1814100c07000000000000000000000000000000000f23374b5f73879bafc2cbc9ccb8a5917d6956422f3346596c8093a6bac9c7b4a18e7a6754412e1b08000000000000000000001c304558676b6b6b6b6b788ea3b5a08c766b6b6b6b6b6b6b6b6b6b6b73889db3a5907a6b6b6b6b6b6b6656422e190400000009192837465564737d7b787673706d7b91a6b19c87715c53504e4b4845423e3426160500000000000000000000000000000010253a4f64798fa3b8ab97826c69676563605e5c5a575553504e4c4a474543403e3c3a37353026190a000000000000000000000c2034475b6e7d8d9baab8a99a8b7a6b5c4d3d3236393d4145494c505d718599adaf9a86725d4935210c0000000000000000081e33485d72889db3b8a38d77624d38230e00000000000000000000000010263b50657990a5bbb09b866f5a45301b06000000000000182d42576c8297acbfaa95806a55402b1601000000000000000003101d293236342c20120100000000001f344a5f748ba0b1b1a08c76604b36210b00000000000000000000000000000000162c40566b8296abbfa9947d69543f2a150000000000000000000000000b1f32465a6d8295a9b19d8975614e3a261300000000000000000915222f3b4855616e7a8894a1adbac7c8b39d88735e48331e09000000000003101d2a3743494945413d3935312c2824201c1814100c07010000000000000000000000000000000000000003172b3f52667a8fa2b6bfb6b4bbc1ad9986725e4a373b4e6275899cafc3d0d1beab9885715e4b382512000000000000000000001e33485e738282828282828ba0b5a48f82828282828282828282828282889db3a79282828282828282705b46301b06000000142637465564738392918e8b8886838090a5b39d88726b686663605d5a57514434210e0000000000000000000000000000000d22374b60758b9fb4af9b86705c52504d4b49474442403e3b39373432302e2b29272422201c1409000000000000000000000004182b3e505f6e7c8c9ba9b8a9998a7a6b5b4c464a4e52565a5d616569798da0b4a894806b57432e1a060000000000000000031c31475c70879cb1b9a48f79644f3a250f00000000000000000000000011263b50667b91a7bcb09b866f5a442f1a05000000000000152a3f546a8094a9bead98836d58432e1904000000000000000000000c171e211f190f020000000000001f344a5f748b9c9c9c9c8b745f4a341f0a00000000000000000000000000000000152a3f54697d94a9b0ab96826b56402c1600000000000000000000000003172a3e5165798da0b4a5917d6956422e1b07000000000000000004111e2a3743505d697683909ca9b6bcb29f8a745f4a341f0a000000000000000c1a26303434302c2824201c18130f0b07010000000000000000000000000000000000000000000000000a1e32465a6e8296aabeb0a29fa9b9b5a28e7a66533f44576b7d92a5b8c2bbbcc4b4a18e7a6754412e1b080000000000000000001e33485e7389979797979799a7baac9c9797979797979797979797979798a5b8ad9d97979797979787705b46301b060000001b30435564738392a1a6a3a09d9b98959babb49f8b84827d7b7775726f6c62513d2914000000000000000000000000000000091e33485d71879cb1b49f8a75604b3b383634322f2d2b282624221f1d1b181614120f0d0b0801000000000000000000000000000f213241505f6d7c8b9eb3b7a89989796a5b5b5f63676b6f7276797d8395a8b5a18d7864503c2814000000000000000000001a2f445a6f869aafbba5907b66503b261108060403000000000000000012273c52677c91a7bcaf99846e58432e190400000000000013283d52677c91a7bbb09b86705b46311c07000000000000000000000003090b0a0500000000000000001f344a5f74878787878787745f4a341f0a0000000000000000000000000000000013283d52677c939c9b9997836d58432e18000000000000000000000000000e22364a5d718598acad9986725e4a37230f000000000000000000000c1926323f4c5865717d8b98a5a99f958a76604b36210b000000000000000009141b1f1f1b17130f0b0700000000000000000000000000000000000000000000000000000000000012263a4e61758a9eb1b9a5928b9cb0bdaa96836e5b474d6074889baebfb0a6a7b2beab9885715e4b3825120000000000000000001e33485e73899facacacacadb7c5baafacacacacacacacacacacacacacadb5c3bbafacacacacac9b86705b46301b060000001f34495e738392a1b0bbb8b5b2afadabaeb9bba99c999693908d8b8885826b56402b16000000000000000000000000000000041a2f44596e8398adb8a38e79644f3a26211f1c1a181613110f0c0a07010000000000000000000000000000000000000000000009192a3b4b5c6c7d8ea0b4c2b7a79889796c7074787c8084888c8f9397a0b1af9b87725d4935210d00000000000000000000192e43586e8398adbca7927c67523d28201e1c1a181614110f0e0b090712273c52677c93a8bdae99846e58432e190300000000000010253a4f64798fa4aeac9d88735e49341f090000000000000000000000000000000000000000000000001e33485c6d7070707070706d5c48331e090000000000000000000000000000000011263b50667b8987868482806e58432e1900000000000000000000000000061a2e4155697c90a4b5a18d7966523e2b1704000000000000000000000815212e3b4754606d7a8793968c82776d5d49341f0a00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000006192d4155697d91a5b9b19d8a8094a8bbb29e8a76634f566a7d90a4b7b5a29294a5b8b4a18e7a6754412f1c0900000000000000001e33485e73899facacacacacaeb8c7b8aeacacacacacacacacacacacacacb1bdc0b3acacacacac9b866f5a442f1a050000001e33485d72889db0bfc0b5b1b4b7babdc0c7c7b9b1aeaba8a5a29f9c947d69543f2a1500000000000000000000000000000000162b40556a8094a9bca7927c68533e2a150a060000000000000000000000000000000000000000000000000000000000000005162737485869798a9bacb6adadb6a798888286898d9195999ca0a4a8acb2bea994806b58493a2b1c0d000000000000000000172c42576c8297acbea9947d68533f373533312f2d2b28272423201f1c1a293e53687d94a9bead98836c57422c17020000000000000d22374c61768c9b9997948b76604b36210c000000000000000000000000000000000000000000000000192c3e4f595b5b5b5b5b5b594f3e2c1904000000000000000000000000000000000f24394e62737372706e6c6a63533f2b1600000000000000000000000000001226394d6174889cafa996826e5a47331f0b000000000000000000000004101d2a36434f5c69758284796f655a4f402d1a06000000000000000000010d15191a1a1a1a1a1a19150d02000000000000000000000000000000000000000000000000000d2135495d708599adbeaa9682788ca0b3baa693806b575f728699adbfac9885899caebeab9885715e4c39261300000000000000001e33485e73899797979797979baabdaa9b979797979797979797979797979fafb4a2979797979797866f5a442f1a050000001b30455a6f859aafc4b1a29c9fa2a5a8acb4c2c6bdbbbebdbab7b4a7917c67523d28130000000000000000000000000000000013283d51667b90a5baab96826c57422e19040000000000000000000000000000000000000000000000000000000000000002132334445566768798a8b7a69999a6b5a698979a9ea2a6aaaeb2b5b4b0acaeb8aa9686766758493a2b1b0c0000000000000000162b40556a8095aabfab95806a554e4c4a48464442403e3c3a383634322f2d3f53687d94a9bfac97836c57422c17020000000000000a20344a5f73898784827d7c75614c37220c0000000000000000000000000000000000000000000000000f21313d45464646464646453d31210f00000000000000000000000000000000000b1f3345555e5e5c5b585755514535231000000000000000000000000000000a1e3145596c8094a8a0988a76624e39240f000000000000000000000000000c1925323e4b58647171675c52483e31221000000000000000000002121f292e2f2f2f2f2f2f2f2920120300000000000000000000000000000000000000000000000115293d5064788ca0b4b6a28f7a708498abbfaf9b887360687c8fa2b6b6a3907c7d92a5b8b4a18e7b6855422f1c09000000000000001f344a5f74828282828282828da2b7a38e8282828282828282828282828294a9af99858282828282826f5a442f1a05000000182d42576c8297acbea994878a8d909397a5b7b6a9a5a8acafb2b4a48f79644f3a2510000000000000000000000000000000000f24394d63778da2b6af9a86705c47321d08000000000000000000000000000000000000000000000000000000000000000f2030415262738494a5b5a999888897a6b5acabafb3b5b2aeaaa6a29f9b979ba9b3a4958676675849392a1b0c0000000000000014293e53687d93a8bdac97826c6563615f5d5b59575553514f4d4b4947444340546a8095abc0ac97826b56402b1601000000000000071d32465b6e73706e6c6967645746321e090000000000000000000000000000000000000000000000000313202a30303030303030302a20130300000000000000000000000000000000000316273743494947464342403d3427170600000000000000000000000000000216293d5064788c958d857c74634e39240f00000000000000000000000000000714212d3a47535d5d544a40352b2113040000000000000000000f20303c43444444444444443d3021100000000000000000000000000000000000000000000000081c3044586c8094a8bcaf9b8773687c90a3b7b7a38f7b68718598abbfae9a877375889baebeab9885725f4c392613000000000000001d324659686b6b6b6b6b6b74899eb3a5907b6b6b6b6b6b6b6b6b6b6b6b7c93a8af9a866f6b6b6b6b6b6554412d1803000000152a3f54697d94a9bea9948074777b7d889cb1aa98909497999ca0a28d77624d38230e000000000000000000000000000000000b20354a5f74899eb3b39f8a74604b36210c0505050505050505050505050505050505040000000000000000000000000c1d2d3e4e5f708091a2b2ad9c8c7a788897a5adaca8a4a19d9995918e8a86838c9baab3a4958676675748392a1b0c00000000000012273c52677c91a7bcad98847c7a78767472706e6c6a68666462605e5c5a5856566b8095abc0ab95806b56402b160100000000000001172b3e505c5e5c595754524f473928160300000000000000000000000000000000000000000000000000020e161b1b1b1b1b1b1b1b160e02000000000000000000000000000000000000000a192630343432302e2c2b28211709000000000000000000000000000000000d2135495c708482797169605646331f0b00000000000000000000000000000003101c293641494941372d23180e0300000000000000000004182b3e4e585a5a5a5a5a5a584e3f2d1905000000000000000000000000000000000000000000001024384c5f73889bafbba794806b6073889bafbfab9884707a8ea1b4b8a5927d6a6b7d92a5b8b5a28f7b6855422f1c09000000000000172a3b4a5456565656565b70869aafa994806a565656565656565656667b91a7b19c87705b5656565652473725120000000012273c51667b91a6bbac97836d636670869bb0a7927c7d8285888b8d8a745f4a35200b00000000000000000000000000000000071c31465b70869aafb8a38e78644f3a251a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1a19140b00000000000000000009192a3b4b5c6c7d8e9eafb09f8f7d6d697888939897938f8c8884807c7874706d7c8c9baab3a4958575665748392a1b0c000000000010263b50657990a5bbb3a19592908e8c8a88868482807d7b79777573706f6c6b686b8297acc0ab95806a543f2a1500000000000000000f21323f48494744423f3d3a34291b0b00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000009141b1f1f1d1b191716130e05000000000000000000000000000000000006192d405467746d655d554d443828160400000000000000000000000000000000000b18242e34342e241a10060000000000000000000000091e33475b6b6f6f6f6f6f6f6c5c48341f0a00000000000000000000000000000000000000000004172b3f53677b8fa3b7b4a08c7864586c8093a7bbb3a08c788397aabdaf9c8975616175889baebeab9885725f4c3926130000000000000c1d2d393f4040404042576c8296abad98836e594440404040404050657990a5b29d88725c474040403e36291908000000000f24394e63788ea3b8b09b87715c5a6f8599afa8937d696c6f7275787b715d48331e080000000000000000000000000000000001192d42576c8297abbca7927c68533e2f2f2f2f2f2f2f2f2f2f2f2f2f2f2f2f2f2f2f2e281d100000000000000001142637485869798b9bacb3a2928270605a69777d83837d7a76736f6b6763605c5e6d7c8c9baab3a3948575665748392a1a0b000000000f24394e63788fa3b8bfb1aaa7a5a3a19f9d9b99979593918f8d8b89878583807d7c8397acbfa9947d69543f2a1400000000000000000313222d3334322f2c2a282521180b00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001125384a585f5a524a413931271a0a0000000000000000000000000000000000000007121a1f1f1a1208000000000000000000000000000b20354a5f7486868686868676604b36210b0000000000000000000000000000000000000000000b1f33475b6e8397aabeac9985705d5063778b9fb2bca895828ca0b3baa693806c59586b7d92a5b8b5a28f7b6855422f1c090000000000000f1b252a2b2b2b2b3e53687d92a7b19c87725d48332b2b2b2b394e63788fa4b49f89735e49342b2b2a23190b00000000000c21364b60758ba0b5b49f8a7460586e8398adaa95806a575a5d6063666355422e1a050000000000000000000000000000000000152a3f53687d93a8bdab96826c574444444444444444444444444444444444444444433b2e1e0c000000000000081c30435566768798a8b6a595847363524b5965696e6d6965615e5a56524e4b474f5e6d7c8c9cabb2a3948575665748382919070000000d22374c62778b9aa8b7bfbfbcbab8b6b4b2b0aeacaaa8a6a4a2a09e9c9998959491909db0bfa9947d68533e29130000000000000000000410191e1f1c1a171513100c050000000000000000000000000000000000000000000000000000000000000000000000000000000000000b13181817151312100f0d0b0a0806050302000000000000000000000000000000000000000000000000000000000000000000081b2c3b454a463e362e261d150a00000000000000000000000000000000000000000000000000000000000000000000000000000000000b21364b60768c9b9b9b9b8b75604b36200b00000000000000000000000000000000000000000013263a4e62768a9eb2b9a5917d6955485c6f8397aabeb09d9097a9bcb19e8a7663504e6175889baebeab9885725f4c39261300000000000000091115161b24293b5064798fa3b4a08b75604c3722171623384c62778da3b5a08b75604b362016150f06000000000000091e33485d72889db2b7a28d7863576c8297acac97826b5645484b4e51504637251200000000000000000000000000000000000011263b5065798fa4b9af9a86705b5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a574c3c29160100000000000b20354a5f738494a5b6a99888766656453b485055595854504d4945413d3a3632404f5e6e7d8d9cabb2a39485756656473724110000000b2035495c6c7b8b99a8aaacaeb0b2b4b6b8babcbebfbdbbb9b7b5b3b1afadaba9a7a5adbbbda8937c67523d2813000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000101d272d2e2c2a2927262422211f1d1c1a1917151412110f0d0b0a08070503010000000000000000000000000000000000000000000e1d293134322b231a120a0200000000000000000000000000000000000000000000000406090c0f12141410080000000000000000000c21364b60768ca1b0b0a08b745f4a341f0a0000000000000000000000000000000000000000061a2e42566a7d92a6b9b19e8a75624e4053677a8fa2b6bbada5a9b5bba895826d5a4745586b7d91a4b7b5a28f7b6855422f1c0900000000000000000d1e2c383e3f4c60758ba0b4a38f79644f3a2e2c2b29364b60768ca1b6a18c77624c372212100e0d0a0400000000051b30455a6f859aafbba6917c67566b8095abad98836c57423336393c3b342819080000000000000000000000000000000000000d22374c61768ba0b5b39e89746f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6a5945301b0600000000000b20354a5e707d8c99a79b8b7a695948382b353b4044433f3b3834302c282521223140505f6e7d8d9cabb2a39484746554402c1700000006192d3e4e5d6c7a8a939597999b9d9fa1a3a5a7a9abadafb1b3b5b7b9bbbdbfbebcbbc0beb0a2937c67523c271200000000000000000000000000000000000000000000000000000000000000000000000000000000000001070c1215130e050000000000000000000000000d1e2e3a4243413f3e3c3b3937363432312f2e2c2a2927262422211f1e1c1a1916120a00000000000000000000000000000000000000000c161d1f1d170f070000000000000000000000000000000000000000000000000b14191b1e2124272a29241b0e00000000000000000d22374c62778da2b7b49f89735e49341f0a00000000000000000000000000000000000000000e2236495d718699adbeaa96836e5a46384b5f73879aaec2c0bbbdc6b39f8c7865513e3b4e6174889baebeab9885725f4c3926130000000000000004172a3c4a5354545d71879cb1a7927c6853444342403f3d4a5f748b9fb4a38e78634e3828272523221e170d00000000182d42576c8297acbfaa95806b566a8094a9af99846e59442f2c2c282620170a000000000000000000000000000000000000000a1f33485d72889cb1b7a28f86868686868686868686868686868686868686868686725c47321d070000000000061b2e4151606d7b89968e7d6d5c4c3b2a1a21272b2f2e2a27231f1b1714100c13223241505f6e7d8d9dacae9e8f826d58432e19000000000f20303f4e5c6b7a7c8082848688898c8e90929496989a9c9ea0a2a4a6a8aaacaeb0b2aea092857664503b2611000000000000000000000000000000000000000000000000000000000000000000000000000000040a10161b21272a2822170a0000000000000000000004172a3c4c565856545351504e4c4b4947464443413f3e3c3b3937363433312f2e2c261c0f0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001111e282d303336393c3f3e382c1e0d000000000000000d22374c62778da3b8b49f89735e48331e09000000000000000000000000000000000000000115293d5165798da1b4b7a38f7a67533f3043576a7d92a6bacdd0d1bdaa96836f5c49363144576a7d91a4b7b5a28f7b6855422f1c09000000000000091e334759676a6a6a6d8398adab96826c5b5a5857555352505e73899eb3a48f79644f3f3e3c3a3837332a1e0e000000152a3f54697d94a9bead98846e59687d93a8b09b866f5a453d41413b3021100000000000000000000000000000000000000000051b30455a6f8499aebeac9e9b9b9b9b9b9b9b9b9b9b9b9b9b9b9b9b9b9b9b9b9b88725c47321d07000000000000122333424f5d6a788680705f4f3e2e1d0c0d12161a1915120e0a06000000000414233241505f6f7d8e9d9e8f807062523f2b1600000000021221303e4d5c65686a6c6e7072747678797c7d82838587898b8d8f91939597999b9d9e90827466584835210d000000000000000000000000000000000000000000000000000000000000000000000002080d13191e242a30353b3f3d352819070000000000000000000e213446596a6d6b6a6866656362605e5c5b5a5856545352504e4c4b4a4846444340392d1d0c0000000000000000000000000000000000070f14151515151515120b01000000000000000000000000000000000000000e1f2f3b4245484b4e5154534a3c2a17040000000000000e23384e63788ea3b8b39d88725c47321d0800000000000000000000000000000000000000091d3145586c8095a8bcaf9b88735f4b37283b4f63768a9eb1c5d9c8b4a18e7a6753402d283b4e6174889baebeab9885725f4c3926130000000000000c21374c6076808080808095abaf9a8672706f6e6c6a6867666472889cb1a6917b66565453514f4e4c473c2c1b08000012273c51667b91a6bbb19c87725d677c91a7b19c87715c4d5256564e3f2e1b070000000000000000000000000000000000000000172c41566b8095aabcbbb2b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b09d88725c47321d07000000000000061524313f4d5a67757362524131201000000000000000000000000000000000041423324151606f7d8e8f807061524434220f00000000000312202f3e4a51535457595b5d5f61636567696b6d6f71737577797b7d80828486888a80726456483a2a18050000000000000000000000000000000000000000000000000000000000000000050b11161c22282d33393e444a50545146362411000000000000000005182a3d5063768382807d7b797877757372706f6d6b6a6867656362605f5d5b5a58554b3b2916000000000000000000000000000000000c1923292a2a2a2a2a2a261e1304000000000000000000000000000000000000182b3d4d575a5d60636669675947331e090000000000000e23384e63788fa4b9b29d88725c47321d07000000000000000000000000000000000000001024384c6074889cb0bca894806c5844302033475b6e8296aabdc8bfac9885715e4a37241e3144576a7d91a4b7b5a28f7b6855422f1c0900000000000e23384d63778d959595959eb0b39e8d8887868482807d7c7b7977869bb0a8937c6c6b6a6866646361594a38241000000f24394e63788ea3b8b4a08b7560657a90a5b39d88735e62666b6b5d4a36210c000000000000000000000000000000000000000013283d52677c919eacb5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b39d88725c47321d07000000000000000614212f3c4a5763625544342313020000000000000000000000000000000000041423324251606f7d8070615243352617050000000000000211202d373c3e40424446484a4c4e50525456585a5c5e60626466686a6c6e70727470625446382a1c0c000000000000000000000000000000000000000000000000000000000000070e141a20252b31363c42484d53595e64696454402c1803000000000000000e2134475a6d809397959391908f8d8b898887858382807d7c797877767472706f6e685945311c000000000000000000000000000000091b2a363e3f3f3f3f3f3f3b3023120000000000000000000000000000000000001e32475a6a6f7275787b7d76604b36210c0000000000000f253a4f64798fa4b9b19c87705b46311c0700000000000000000000000000000000000004182c4053677b8fa3b7b4a08d7864503d29182b3f52667a8ea2b3b3b3a38f7c6855422e1b15283b4e6174889aadbeab9885725f4c39261300000000000f253a4f64798fa4abababb0bdbbaba09d9c9a9897959493918f8d8f9eb2aa95848382807c7b79787667533e291400000c21364b60758ba0b5b8a38f796464798fa4b49f8a7472777b8078644f3a251000000000000000000000000000000000000000001025394e6172808e9ba0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a09d88725c47321d07000000000000000003111e2c39464e4e45372616050000000000000000000000000000000000000005142332425160707061524334251708000000000000000002101b2327282b2c2f30333437383b3d3f40434547494b4d4f51535557595b5d5f5d524436281a0c0000000000000000000000000000000000000000000000000000000000010f1a23292e343a40454b50565c62676d73787d6f5b46321d0900000000000005182b3e5164768a9dacaaa8a7a5a3a2a09f9d9b999897959391908f8d8b8988878683735e48331e00000000000000000000000000000014273848525454545454544e41301d0a00000000000000000000000000000000001f344a5f7486888b8e908e78634e39240f0000000000000f253a4f647990a5bbb19c87705b46301b060000000000000000000000000000000000000c1f33475b6f8397abbfad9985715d4935210f23374a5e7286999d9d9d9a8773604c3926120b1e3144576a7d90a3b6b5a28f7b685542301c080000000011263b50667b91a6afb0b1b3b8c3bcb5b3b1afadacaba9a7a6a4a3a3acbbb1a1999897949391908d7d69543f2a140000091e33485d72889db2bca7927c6866778da3b5a08c83888c90917c67523d281300000000000000000000000000000000000000000b1f32445462707d8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b88725c47321d07000000000000000000000e1b29333939332719090000000000000000000000000000000000000000000514233242515d5d5243342516070000000000000000000000080e111315171a1b1e1f222326282a2c2e30323436383a3c3e40424446484a49413426180a0000000000000000000000000000000000000000000000000000000000000f1f2c373d43484e545a5f656b70767c82888d8a75604c38230f0000000000000e2235485b6d8294a6b9bfbdbcbab8b7b5b4b2b0afadacaaa8a7a5a4a2a09f9d9c9a88725c47321d0000000000000000000000000000001a2f4356666a6a6a6a6a695f4d39251000000000000000000000000000000000001d32475c71879ba0a3a5917b66513c271200000000000011263b50657990a5bbb09b866f5a442f1a0500000000000000000000000000000000000013273b4f63768b9fb2b9a5927d6955412e1a081b2f42566a7d88888888887d6a5743301d0a0215283a4d6073879aadb2a89885725f4b37220d0000000013283d52677c9398999b9c9ea6b5bfb0a7a8a9abacaeb0b1b3b4b6b8bbc5bfb3afadaba9a8a7a5937c67523d28130000051b30455a6f869aafbfab9682767a808ca1b7a99a989ca1a595806b56412c1702000000000000000000000000000000000000000215273644515f6c747474747474747474747474747474747474747474747474746e5b46311c0700000000000000000000000b171f24241f160a00000000000000000000000000000000000000000000000514233341494941342516070000000000000000000000000000000000000002080a0c0e10131416181b1c1f20232527282b2c2f313334342e2316080000000000000000000000000000000000000000000000000000000000000a1c2d3d4a52575d63686e747980868b91969ca28f7b66523d291400000000000013283d5164778a9eb1c3d4d3c8bbb3b3b5b7b8babcbdbfbfbdbcbbb9b7b5b4b3b09b86705b46301b0000000000000000000000000000001d32475c7280808080807c67523d281300000000000000000000000000000000001a2f44596e8498adb8a9947d69543f2a1500000000000011263b50667b91a7bcaf9a866f5a442f1a050000000000000000000000000000000000001b2f42566a7d92a6b5b29e8a76624e3a26120013273a4e6170727272727270614e3b271401000b1e3144576a7d90a39f958b8276624d38230e0000000013293e53687d82838486888998acb4a19393949597999b9c9d9fa1a3a8b5c2b4adacaeb0b1b3a6917b66503b2611000000182d42576c8297acc1ae9a898b90949aa9bbb7aeadb1b6ad98846e59442f1a05000000000000000000000000000000000000000009182634414e5b5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5c503e2b1703000000000000000000000000040b0f0f0b03000000000000000000000000000000000000000000000000000515232e34342e2416070000000000000000000000000000000000000000000000000000000000000006090b0e0f121416171a1c1e1f1f1a1105000000000000000000000000000000000000000000000000000000000000041628394b5b666c71777c83898e949a9fa5abb1aa95826c57432e1a060000000000142a3f54697c8d9dadbdcdcebbaa9f9ea0a1a3a5a7a8aaacadafb1b3b4b6b8b9af99846e59442f1a0000000000000000000000000000001c31465b7087959595947d68533e29130000000000000000000000000000000000172c41566b8095abbfac97826c57422d1803000000000012273c51667b91a7bcaf99846e58432e19030000000000000000000000000000000000001f34495e7286939aa1a897836e5b47331f0b000b1f3244535c5c5c5c5c5c5c5344311e0b00000114273a4d607387958c82776e645847331f0b0000000011263a4e60696b6c6e70727d93a7b19c877c7d8083848687888a8c8d97aab6a49897999b9c9d9f8f79644f3a2510000000152a3f54697d94a9beb6a69ea0a5a9aeb7c6c9bfbbb6b2ae9c87715c47321e09000000000000000000000000000000000000000000091623303e474a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a483f32210f00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005111a1f1f1a1206000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001022334557687980868c92979da3a8aeb4b9bfbaaf9b87725d4934200b000000000011263a4d5e6e7d8f9fafc0c8b39f8c898b8c8e9091939597989a9c9d9fa1a3a4a698836c57422d180000000000000000000000000000001b30455a6f869babaa95806a543f2a15000000000000000000000000000000000014293e53687c93a7bcaf9a856f5a45301b06000000000012273c52677c93a8bdad98836e58432e19030000000000000000000000000000000000001e33485d6f777d868d958f7b67533f2b17040002152635414747474747474741352614020000000b1e3144576a7d82786f655b51483a291704000000000b1e31424e545657595b64798fa3b4a08b76696b6c6e6f717374767c91a7b19c8782848687888b8c78634e38230e00000012273c51667b91a6bbc4b8b3b5b9bebdc2cab9aca6a29e99958a75604b36210c000000000000000000000000000000000000000000000513202b3334343434343434343434343434343434343434343434343434332d22130300000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000105090c0d0a040000000000000000000000000000000000000000000000000000091c2e3f51637486959ba0a6acb1b7bdbcb7b1aba59f9a8c77634e3a251000000000000b1e30405060708291a2b2c2b49f8e7d747678797b7d8082838587888a8c8d8f9193806b56402b160000000000000000000000000000001a2f44596e8499afab95806b56402b16010000000000000000000000000000000011263b50657990a5bab29c88725d48331e09000000000013283d52677c93a8bdad98836c57422c1702000000000000000000000000000000000000192d40515c636a7279808873604c3824100000000817242d323232323232322d241708000000000114273a4d60716f655c52483e352a1c0c0000000000021323313b3f4142444c60768ba0b4a38f79645657585a5c5e5f657990a5b39d88726e6f7173747673604c37210c0000000f24394e63788ea1acb7bab6b2aeaaa8b0bead9b918d8985807c74614c37220c0000000000000000000000000000000000000000000000020f181e1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1e1910040000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000002060a0e12161a1e21221f180f070000000000000000000000000000000000000000000000001025384b5d6e8092a4afb5bbbfb9b4aea8a29c97918b86807865503b2610000000000001122232425263738494a4b5bcac9b8b7a6a636466686a6b6d6f7072747677797b7c7d69543f2a14000000000000000000000000000000192e43586d8398adac97826b57412c1702000000000000000000000000000000000e23384d62778da2b7b4a08b75604b36210c000000000013293e53687d94a9beac97826c57422c17020000000000000000000000000000000000001122323f484f565d656c736b5844301c08000000000611191c1d1d1d1d1d1c1911060000000000000b1e3143535d5b52493f362b22180c0000000000000005141f272a2c2d33485d72879cb1a7927c685342434547484e63788fa4b49f89745f5a5c5e5f61605544311d090000000c21364b6075848f9aa5a5a19d999593a0b2a9947d77736f6b67635645321e090000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000004080c1014171b1f23272b2f323637332b231a11070000000000000000000000000000000000000000000014293f53687a8c9eb0c1b8b1aba59f9a948e88837c76706b655a4936220d00000000000004142435455565758697a7b7b9a9988877675751535456585a5b5d5f6062646667685f4d3a2611000000000000000000000000000000172c42576c8297acad98836c57422d1803000000000000000000000000000000000b20354a5f74899fb4b8a38d78634e39240f000000000013293e53687d94a9bfac97826b56402b16010000000000000000000000000000000000000514222d343b424a51585f5b4e3c2915010000000000000000000000000000000000000000000000011426354148473f362c23190f05000000000000000000020c1215171a2f44596e8398adab96826c57422e3032374c62778da2b5a08b76604b47484a4c4c4437271502000000091d32465866717c8892908c8884808499afaa95806a5f5a56524e463828150200000000000000000000000000070d0e0d0b080604010000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000106090d1115191d2125282c3034383c4044474b4c483f362d24190a000000000000000000000000000000000000000000142a3f54697d94a9bbb8a79c96908b858079736d68625c5650493c2c1a060000000000000006172737485868788999aabab6a69686756454443f41434446484a4b4d4f5052534d41301e0a000000000000000000000000000000162b40566b8296abaf99846e58432e190400000000000000000000000000000000081d32475c71879cb1bba5907b66513c27120000000000152a3f546a8095aabfab95806a55402b1b130a01000000000000000000000000000000000004101920272e363d444a473e301f0d000000000000000000000000000000000000000000000000000817242e33322c2319100600000000000000000000000000000000172b40556a8094a9ab9a85705b46311c21364b60768ba0aca28d77624c383335373731271909000000000316293a49545f6a75807b77736f6c8398adab97826b5646413d3933281a0a00000000000000000000000005111b212322201d1b191614110f0d0a0806030100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000010d151a1e22262a2e3236393d4145494d5154585c60625b524a4136281705000000000000000000000000000000000000000012273c52677c92a7bcb19c89827c76706a655f59534d48423c362c1e0e00000000000000000009192a3a4a5a6b7b8c9cacbcb4a3938372625141312e2f31333436383a3b3d3e3a30231201000000000000000000000000000000152a3f546a8095aaaf9a866f5a442f1a0500000000000000000000000000000000021a2f44596e8499aebda8937d69543f2a150000000000152a3f546a8095abc0ab95806a5440372e261d140b020000000000000000000000000000000000050c131a22293034332b201201000000000000000000000000000000000000000000000000000007121a1e1d18100600000000000000000000000000000000000013283d51667b9099969288735e49341f1f344a5f73899897958f78634e39242022211d15090000000000000b1c2b37424d58636a66625e5a6b8297acac97836c57422d28241f160a0000000000000000000000000614222e3638373532302e2b29272422201d1b181614110f0c0a0805030000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000002121f292f33373b3f43474a4e52565a5e6265696d7175776e665d5446352210000000000000000000000000000000000000000010263b50657990a5bab19c877167615c56504a443f39332d28221a0e00000000000000000000000c1c2c3d4d5d6d7d8f9eafbfb1a19080705f4f3f2e1e1c1e1f212325262828251e12040000000000000000000000000000000014293e53687d94a9b09b86705b46301b060000000000000000000000000000000000172c41566b8296abc0ab97826c57422d180300000000162b40566b8095abbfa9947d685d544b423930271e150d04000000000000000000000000000000000000060e151c1f1e180f0200000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000f24394d63778885827c79715e49341f1e33485d72848382807d79644f3a240f0c0c090200000000000000000d1a25303b465054514d49556a8095abae99846e58432e190f0b0400000000000000000000000008162432404b4e4c4a474543403e3c39373432302d2b282624221f1d1a181613110f0c0a070503000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000f20303c44484c5054585c5f63676b6f73777a7d83878a8b82797064523f2d1a08000000000000000000000000000000000000000e23384e63788da3b8b39e89735e4d47413c36302a251f19130d06000000000000000000000000000e1f2f3f4f60708091a1b1bfae9e8e7d6d5d4c3c2c1c0b0a0c0e0f111313110a01000000000000000000000000000000000013283d52677c93a8b19c87715c47321c07000000000000000000000000000000000014293e53687d93a8bdae99846f5a45301b0600000000162b40566b8297acbfa994827970675e554c433a312920170e050000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000b20354a5e70736f6c68646053422f1b1b3045596a6f6d6b6a68665b4936210d0000000000000000000000000007121e28343c3f3c383f54697d94a9af9a866f5a442f1a05000000000000000000000000000a18263442515e63625f5c5a585653514e4c4a474543403e3b393734322f2d2b282624211f1c1a181513100c040000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000182b3e4e585d6165686c7074787c8084888c9094979b9f9e968d826f5c4a372512000000000000000000000000000000000000000c21374c60768ca1b6b5a08b75604b362d27211c16100a040000000000000000000000000000000001112131425262728393a3b4bcac9c8c7a6a5a4a392919090000000000000000000000000000040c1213131313131313131313273c51667b91a7b39d88725c47321d08000000000000000000000000000000000011263b50657990a5bab19c88725d48331e0900000000172c42576c8297acc1b0a0958c837a726960574e453c332a2118100700000000000000000000000000000000000000000000000000000000000000010203050607090b0c0e0f101213151617191a1c1d1b160c000000000000000000000000000000000000000000071b2f42525d5e5a57534f4b4335251216293c4c575a58565453514a3d2c1a060000000000000000000000000000000b1621282a27283e53687c93a8b09b86705b46301b06000000000000000000000000091928364452616f787774726f6d6b686663615f5c5a585553504e4c49474442403d3b393634322f2d2a282520170b000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001e33475b6b7276797d8286898d9195999da1a5a8acb0b4b2a99f8c79675442301d0b0000000000000000000000000000000000000a1f344a5f74899fb4b7a28d77624d3823130d0700000000000000000000000000000000000000000003132434445464758696a6b6baa9998978685747372716060000000000000000000000000816202729292929292929292929293b50657990a5b49f89735e48331e0e0e0e0e0e0e0e0e0e0e0e0d0800000000000e23384d62778da2b7b49f8a74604b36210c00000000172c42576c8398adc3beb2a9a0978e857c736a61584f463e352c231a11080000000000000000000000000000000203050607090a0c0d0f101213141617191a1b1d1e202123242627282a2b2c2e2f313230291e1000000000000000000000000000000000000000000012243441494945423e3a37302517070c1e2e3b434443413f3e3c372d1f0e0000000000000000000000000000000000040d131512273c52677b91a7b19c87725c47321d0700000000000000000000000014263746546270808d8c89888683807d7b787674726f6c6a686663615e5c5a575553504e4b494744423f3d3a34281a090000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001f344a5f73878b8f93979a9ea2a6aaaeb2b5b9bdbdb9b8bebba99784715f4c3a2815030000000000000000000000000000000000081e33485d72889db2b9a48f79644f3a250f00000000000000000000000000000000000000000000000006162637475767778899a9b9b7a69686756555443424140300000000000000000000051726333b3e3e3e3e3e3e3e3e3e3e3e3e4f64798fa4b5a08b745f4a34232323232323232323232323221c13060000000b20354a5f74899fb4b7a28d77634e39240f00000000182d42576c8398adc3cfc5bcb3aaa1988f877d756c635a51483f362d241b1308000000000002090e101113141617181a1b1d1e1f2122242527282a2b2c2e2f303233353638393b3c3e3f404243444647453c2e1e0c00000000000000000000000000000000000000000616242e3434312d2925221c14080000101d282e2f2e2c2a2927231b0f0100000000000000000000000000000000000000000011263b50667a90a0a09d88735e48331e090000000000000000000000001b3043556472828f9da19f9c9a989593908f8c89878583807c7b787673716f6c6a686563605e5c5a5754524f463827140100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001c31465b70859aa4a8acafb3b7bbbfbcb8b4b1aca8a5a3abbab3a18f7c69574532200d0000000000000000000000000000000000021b30465b70869bb0bba6917b66513c27120000000000000000000000000000000000000000000000000008192939495a6a7a8b9babbcb4a4948372625242322111010000000000000000000f223444505353535353535353535353535363788da3b5a08b76604b3838383838383838383838383837302415050000081d32475c71879cb1baa5907b66513c271200000000192e43586e8499afc4bfb5b3b8beb5aca39a918880766d645b524a41382f25190a00000009151e23252628292b2c2e2f303233343637393a3c3d3f404243444647484a4b4d4e505153545657585a5b5c594c3b281501000000000000000000000000000000000000000006121a1f1f1c1814110d0801000000000b14191a18171514120f0800000000000000000000000000000000000000000000000f253a4f64798b8b8b8b89745f4a341f0a0000000000000000000000001f34495e7382909fadb6b4b1afadaba8a5a3a19f9c9a979593908e8c89878482807c7a787673706f6c6a67635644311d090000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000182d42576b8296abbdbfbbb7b3afaca7a3a09c9794908e9cafbeac998774614f3d2a18050000000000000000000000000000000000192f44586e8499aebda8937d68533e281300000000000000000000000000000000000000000000000000000b1b2b3c4c5c6d7d8e9eaebeb1a191827060503f2f1f0e000000000000000000162b3f52626868686868686868686868686868778da2b7a18c76614e4e4e4e4e4e4e4e4e4e4e4e4e4e4b423322100000021a2f44596e8499aebda8937d68533f291400000000192e43586e8499afc2b0a29ea5aeb7bfb6ada49b938a82776f665d544b42372817040008182631383a3b3d3e404143444647484a4b4c4e4f5152545557585a5b5c5e5f606263656668696b6c6e6f70726a58442f1a05000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000d23384c61727474747474705d49341f090000000000000000000000001f344a5f748ba0aebdc2bababcbfbfbdbbb8b6b4b1afacaaa8a5a3a09e9c99979593908d8b89878482807c73604c39251100000000000000000000000000000000000000000007111719160f0800000000000000000000000000060f151614120f0d0b08060402000000000000000000000000000000000000000000000000000014293e53687c92a6aeaba7a29f9b97938f8b87837d7a8092a4b7b6a492806c5a473522100000000000000000000000000000000000172c42576c8297acbfaa95806a55402b160000000000000000000000000000000000000000000000000000000d1e2e3e4f5f6f8090a0b0bfaf9f8f7d6e5d4d3d2c1c0c0000000000000000192f44586d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d8ca1b7a38d776363636363636363636363636363635f513f2b17000000172c41566b8296abc0ab96826b57412c17020000001a2f445a6f869bb0bba69289929ba3acb5beb8afa69d948b827970675e554634200c00132536444c4f505253555658595b5c5e5f606263646667696a6c6e6f70727374767778797b7c7d828384868787705b46311c0700000000000000000000000000000000000000000000000000010203050607090b0c0e0f101213151617191a1c1d1b160c000000000000000000000000000000000000000000091e3144545e5f5f5f5f5f5d51412e1a060000000000000000000000001f344a5f748ba0b5c1b0a6a5a7a9acaeb0b3b5b7babcbfbfbdbbb8b5b3b1afacaaa7a5a3a09e9c999794907c6854402d1906000000000000000000000000000000000000000b19242c2e2b231b130b040000000000000000000b19232a2b29272422201e1b19171412100e0b09070402000000000000000000000000000000000010253a4e63788e9e9a96928e8a86827d7976716d6966758899acbeae9c8a7764523f2d1b0800000000000000000000000000000000152b40546a8095aabfac97826c57422c1702000000000000000000000000000000000000000000000000000000102031415161718292a3b3bdac9c8c7b6b5a4a3a2a1909000000000000001b30455a6f86949494949494949494949494949498a7b9a48f787878787878787878787878787878786f5a45301b00000014293e53687d93a8bdae99846f5a442f1a050000001a2f445a6f869bb0b9a48f797d889099a2abb4bdb9b0a79f968d847a7263503b2611001b2f435461646667686a6b6d6e70727374767778797b7c7d808283858688898b8c8d8f909193949697999a9c88725d48331e0900000000000000000000000203050607090a0c0d0f101213141617191a1b1d1e202123242627282a2b2c2e2f313230291e1000000000000000000000000000000000000000000215263643494a4a4a4a4a4941332311000000000000000000000000001f344a5f748ba0b5b7a39290929497999b9da0a2a5a7a9acaeb0b3b5b7babcbfbfbcbab8b5b3b1aeaca99884705c4935210d0000000000000000000000000000000000000719293740433f372f271f170f040000000000000b1a29363e403e3c3a373533302e2c2a272523201e1c1a171513100e0c0a07050300000000000000000c21364b5f74898985827c7874706c6865605d5955576a7c8fa1b4b9a694826f5c4a38251300000000000000080e1111111111111113283e53687c93a8bdae99846e59442f1a0400000000000000000000000000000000000000000000000000000002132333435364748595a5b6baaa998978685848372717060000000000001c31465b70879ca9a9a9a9a9a9a9a9a9a9a9a9a9abb5bba7958f8f8f8f8f8f8f8f8f8f8f8f8f8f8f86705b46301b00000011263b50657990a5bab19c87725c47321d080000001b30465b70879bb0b9a48f786a737c868f98a1aab3bcbbb2a9a0978e7a66513c2712001f34495e72797b7c7d808283848687888a8c8d8f90919394959798999b9c9ea0a1a3a4a5a7a8a9abacaeaf9f8a745f4a34200a00000002090e101113141617181a1b1d1e1f2122242527282a2b2c2e2f303233353638393b3c3e3f404243444647453c2e1e0c00000000000000000000000000000000000000000918252f343434343434342e231505000000000000000000000000001f344a5f748ba0b5b5a08b797c80828487888b8d90929497999b9da0a2a5a7a9acaeb0b3b5b9c2c3c1b3a08c7864503d2915020000000000000000000000000000000000102436475458524b433b332b211405000000000a19293847525653514f4c4a484643413f3c3a383633312f2c2a282623211f1c1a18130a000000000000081d32465b6f7773706b6864605c5854504c4844404d5f728597a9bbb19f8c79675542301d0b0000000004111c232626262626262626263b50667b91a6bbb09b86705b46301b0c0a08070503020000000000000000000000000000000000000000000005152636465666778898a8b8b7a79787766555453524140400000000001d32475c72889db0b0b0b0b0b0b0b0b0b0b0b0b0b1b8c4b3a7a4a4a4a4a4a4a4a4a4a4a4a4a4a499846f5a442f1a0000000e23384d62778da2b7b49f8a745f4a35200b0000001b30465b70879cb1b9a48f78636069727b858d97a0a9b2bbbcab9885715e4a37230f001e33485e7389919394959798999b9c9d9fa0a2a4a5a7a8a9abacadafb0b2b3b5b6b8b6b5b3b2b1afaeacaba18c76604c37210c000009151e23252628292b2c2e2f303233343637393a3c3d3f404243444647484a4b4d4e505153545657585a5b5c594c3b281501000000000000000000000000000000000000000008131b1f1f1f1f1f1f1f1a110500000000000000000000000000001f344a5f748ba0b5b5a08b74676a6c6e70737577797c80828487888b8d90929497999b9ea0a5b1c2cfbba894806c5845311c080000000000000000000000000000000005182c3f53656d665e564e473e322312000000091928374756656b686664625f5d5b585654524f4d4b484644423f3d3b383634322f2d271c0f000000000002182c40515f635f5b57534f4b47433f3b37332f30425467798c9fb1bca99785725f4d3a28150300000112222f383b3b3b3b3b3b3b3b3b3b4f64788fa4b9b29d88725d483323211f1e1c1a1917161412110e08000000000000000000000000000000000008182838495969798a9aabbbb5a494847363524232221101000000001f34495e73899b9b9b9b9b9b9b9b9b9b9b9b9b9b9ca7b8c3b8b4b4b4b4b4b4b4b4b4b4b4b4b4ad98836e58432e190000000b20354a5f74899fb4b7a28d77624d38230e0000001d32475c72879cb1b8a38d77624d565f68717a838c959ea7b1a28f7b6855412e1b08001d32475c72879ca8a9abacadafb0b1b3b4b5b7b6b4b3b2b0afadacaba9a8a7a5a4a3a1a09f9d9c9a999796948d77634e38230e0008182631383a3b3d3e404143444647484a4b4c4e4f5152545557585a5b5c5e5f606263656668696b6c6e6f70726a58442f1a0500000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001f344a5f748ba0b5b5a08b745f5457595b5e606365676a6c6e70737577797c80828487898b93a6bbcbbaaa9988745f4a341f0a000000000000000000000000000000000c2034475b6f827a726a625a50412f1c08000818273746556474807d7b79777472706e6b69676462605e5b59575452504e4b494744413a2d1d0d0000000000102233424b4d4a46423e3a36322e2a26282b2e31374a5c6f8294a6b9b4a28f7c6a574532200e00000b1e30404c505050505050505050505062778da2b7b49f89745f4a3938363433312f2e2c2b292726231c12040000000000000000000000010306080b0d1a2b3b4b5c6c7c8d9dadbdb2a29182706050402f1f0f000000001f344a5f74868686868686868686868686868686899cb1b4a59f9f9f9f9f9f9f9f9f9f9f9f9f9f97826c57422c17000000081d32475c71879cb1baa5907a65503b26110000001d32475c72889db3b8a38d77624c434c555e677079828b949d9986725f4c39251200001b30465b70869bb0b0afadacaba9a8a7a5a4a2a19f9e9c9b99989795949391908f8d8c8b89888786848382807d79644f3a240f00132536444c4f505253555658595b5c5e5f606263646667696a6c6e6f70727374767778797b7c7d828384868787705b46311c07000000000000000000000008111617161412100e0c0a080705030100000000000000000000000000000000000000001f344a5f748ba0b5b5a08b745f4a424446494b4d50525457595b5e606365676a6c6e70738091a5babdad9c8c7b6b5a46321d080000000000000000000000000000000115283c5063778b8e867d766e5e4b37220d0013253645556473839393918f8c8a888683827d7c79777573706e6c6a676563605e5c5a564b3b2b1b0a0000000005152430373835312d292b2e3134373a3d404346494c526476899caebeac998774624f3d2b18050011263a4d5e666666666666666666666666758ba0b5b6a18c7660504e4c4b4a4846444342403e3c3b372f2213020000000004090b0e101316181b1d202325272d3e4e5e6e808f9fb0c0af9f8f7d6e5e4d3d2d1d0c0000001e33475b6b6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f869bb0ab96898989898989898989898989898989806b56402b16000000021a2f44596e8499aebda8937d68533e29140000001e33485d72889db3b5a28d77624c3739414a535c656f77828a907c695643301c0900001a2f44596e84999c9b99989795949391908f8d8c8b898886858382807d7c7b79787776747372706f6e6c6b6a68665b4936210d001b2f435461646667686a6b6d6e70727374767778797b7c7d808283858688898b8c8d8f909193949697999a9c88725d48331e09000000000000000000000d1a252b2c2b2927252322201e1c1a18161412100e0c0b09070503010000000000000000001f344a5f748ba0b5b5a08b745f4a342f313436383b3d3f424446494b4d505254575c6d7d8e9eaec0af9f8f7d6e5d4d3c2a1703000000000000000000000000000000091d3044586b8093a29a928a77634e38230e001b2f435463728392a1a8a6a4a19f9d9b989694918f8d8b88868482807c79777673706f695949382818080000000006131c242e34383a3d404346494c4f5255585b5e6164676c7d91a3b7b6a492806c5a4835220e00152a3f54697b7b7b7b7b7b7b7b7b7b7b7b7b899eb3b8a38d7867656362605f5d5b5a5857555352504b40311f0d00000410191e202326282b2d303235383a3c3f42445061708292a2b2bdad9d8c7c6b5b4b3b2a18050000182b3e4e585a5a5a5a5a5a5a5a5a5a5a5a5a5a6e8499afab958073737373737373737373737373737366533e291400000000172c41566b8296abc0ab96826b56412c170200001e33485e73899fa0a0a08c76604b36252e374049525b646d768073604d3a2713000000182d42576c83888786848382807d7c7b79787776747372706f6e6c6b696866656362605f5e5c5b5a5857565453514a3d2c1a06001f34495e72797b7c7d808283848687888a8c8d8f90919394959798999b9c9ea0a1a3a4a5a7a8a9abacaeaf9f8a745f4a34200a0000000000000000000e1d2b384042403e3c3b38373433312f2d2b2927262322201e1c1a18161412100a01000000001f344a5f748ba0b5b5a08b745f4a341f1c1f212326282a2c2f313436383b3d49596a7a8b9bacbcb2a291827060503f2f1e0d000000000000000000000000000000001125384c6073889bafab9784705c4834200b001f34495e728291a1b0bdbbb9b7b4b2b0adaba9a7a4a2a09d9b99979492908d8b89878477675646362615030000000314253441494c4f5255585b5e6164676a6d707376787c80838ca0b5c1af9c8a7764513c271200172c41576b8291919191919191919191919193a2b6baa5907d7c7a7877767472706f6e6c6a6867655e4f3c2814000514222c3336383b3d404245474a4c4f525457595c5e63738494a5b7baaa9a8a7968584835210d00000f20303c4344444444444444444444444444586c8398adab97826b5e5e5e5e5e5e5e5e5e5e5e5e5e5e574937230f0000000014293e53687d93a8bdae99846e59442f1a0500001f34495e73898b8b8b8b8b76604b36211b242d363f48515a636b685744311e0a000000162c405568747372706f6d6c6a686766646362605f5e5c5b5a585756545351504e4d4b4a484746444342403f3e3c372d1f0e00001e33485e7389919394959798999b9c9d9fa0a2a4a5a7a8a9abacadafb0b2b3b5b6b8b6b5b3b2b1afaeacaba18c76604c37210c00000000000000000e1d2c3b495457565352504e4c4a48464442403f3c3b38373533312f2d2b2a27251e13050000001f344a5f748ba0b5b5a08b745f4a341f0a090c0e101315171a1c1f212636465767778898a9b9b5a59484736352423221110100000000000000000000000000000005192d4054687b8fa3b6a38f7b6754402c1905001f34495e73889dafbfc2b7b3b4b6b8bbbdbfbebcb9b7b5b3b0aeaca9a7a5a3a09e9c95857464544333200d00000010213243525d6264676a6d707376797c808386888c8f9194979ca9bbc8b5a28f7c68533e281300192e43586e8398a7a7a7a7a7a7a7a7a7a7a7a8b1c0beab9a9492908f8d8b898887868382807d7c7a6b57412c17001122323f484b4d505255575a5c5f626467696c6e707376787b889db3c8b8a797877664503b2611000002121f292e2f2f2f2f2f2f2f2f2f2f2f2f42576c8297acac97836c574848484848484848484848484844392b1a070000000011263b50657a90a5bab19c87715c47321d0800001f34495d70747474747474705e4a35200b111a232b353e475057554a3a2815010000001226394b595f5e5c5b5a5857555452514f4e4c4b4a484746444342403f3e3c3b393836353332302f2e2c2b2a2927231b0f0100001d32475c72879ca8a9abacadafb0b1b3b4b5b7b6b4b3b2b0afadacaba9a8a7a5a4a3a1a09f9d9c9a999796948d77634e38230e000000000000000f1e2c3b4a58676c6b68676463615f5d5b5a57565352504e4c4a48464442403f3c393023140200001f344a5f748ba0b5b5a08b745f4a341f0a000000000000000006122333445464748596a6b6b8a797877666554534241404000000000000000000000000000000000d2135485c708497abaf9b8773604c38251100001c31465b70869bafc4b4a59d9fa1a3a5a8aaacaeb0b3b5b7b9bcbebfbcbab8b5b3b1a392827161503c271300000c1d2e3f4f607077797c808386898c8f9294979b9da0a3a6a9acb0b9c7bfac9986725f4c392510001b30455a6f869aafbcbcbcbcbcbcbcbcbcbcbdc3cfc8b8ada8a7a5a4a2a09f9d9c9a9897959492826b56402c1600192d40515c606265676a6c6f727477797c7d828487898c8e9095a3b6cac5b5a18d7965513c2711000000010d15191a1a1a1a1a1a1a1a1a1a1a2b40566b8095abad98836d584333333333333333333333333330281c0d00000000000e23384d62778da2b7b49f89745f4a35200b00001a2e41515d5f5f5f5f5f5f5d52422f1b0700071018212a333c4140382c1c0b000000000a1c2d3b464a484746444342403f3d3c3a393736343332302f2e2c2b2a282726242321201e1d1b1a1917161513120f08000000001b30465b70869bb0b0afadacaba9a8a7a5a4a2a19f9e9c9b99989795949391908f8d8c8b89888786848382807d79644f3a240f0000000000000d1e2d3c4a59687683807d7c7978767472706f6c6b68676563615f5d5b5a575654524d4132200c00001f344a5f748ba0b5b5a08b745f4a341f0a0000000000000000102030415161728393a3b3bbaa9a8a7968584837271706000000000000000000000000000000000215293d5064778c9fb3a693806b5744301c090000192e43586d8398adc0ac9788898c8e90939597999b9ea0a2a4a7a9abadb0b2b4bac1b0a090806a543f2a150007192a3b4c5d6d7d8c8f9295989b9ea1a4a7a9acafb3b5b8bbbebfbcb9b6b3a28f7c695643301d09001c32475c70879cb1b1b1b1b1b1b1b1b1b1b1b1b4bfcec9c1bebcbbb9b7b5b4b3b1afadacaba895806a543f2a15001e33485d6f7577797c80838587898c8f919497999c9ea0a3a5a9b2c1d1c1ad9986715d4a36220e0000000000000000000000000000000000152a3f546a8095aaaf99846e59442f1e1e1e1e1e1e1e1e1e1e1e1b150b0000000000000b20354a5f748a9fb4b7a18c77624d38230e000011233341494a4a4a4a4a4a494134241200000000050e1720282c2b251b0e0000000000000f1d2a32343332302f2e2c2b2a2827252422211f1e1d1b1a191716151312100f0e0c0b090500000000000000000000000000001a2f44596e84999c9b99989795949391908f8d8c8b898886858382807d7c7b79787776747372706f6e6c6b6a68665b4936210d000000000005182b3c4b5a68778795959491908d8c8a88878483807d7c7978767472706f6c6b68675f4f3c281300001f344a5f748ba0b5b5a08b745f4a341f0a000000000000000d1d2e3e4e5f6f8090a0b1bead9d8d7c6b5b4b3a2a1a0900000000000000000000000000000000000a1d3145586c8094a7b29e8a77634f3c2814010000162b40556a8095aabfab96827476787b7c80828487898b8d8f919496989b9d9fa8b8bea9947d69543f2a150010243648596a7a8c9ca4a7aaadb0b3b6b9bcbfbfbcb9b6b3b0adaaa7a4a19e9986725f4c39261300001e33485e73889c9c9c9c9c9c9c9c9c9c9c9c9ca1b0c2ccc0bab9b9b9b9b9b9b9b9b9b9b9b9a8937d68533e2913001f34495e73898d909295979a9c9fa1a4a7a9acaeb1b3b5b8bbbec0bebcb9a5927d6a56422e1a06000000000000000000000000000000000013293e53687d94a9b09b866f5a45301b06000000000000000000000000000000000000081d32475c71879cb1b9a48f7965503b261100000515232e34343434343434342e241606000000000000040d141716110900000000000000000c171d1f1e1d1b1a191716141311100f0d0c0a09040000000000000000000000000000000000000000000000000000000000182d42576c83888786848382807d7c7b79787776747372706f6e6c6b696866656362605f5e5c5b5a5857565453514a3d2c1a0600000000000b2034485a69788796a5aba8a7a5a3a19f9d9b9997959491908e8c8a88878483807d7c6b56402b1600001f344a5f748ba0b5b5a08b745f4a341f0a0000000000000a1b2b3b4c5c6c7d8e9eaebeb0a08f806e5e4d3d2d1c0c0000000000000000000000000000000000001226394d6074889cafaa96836f5b4734200c00000013283d52677c92a7bcae99846f616366686a6c6f70737577797c7d828386888a9bb0bda8937c68533e281300162b3f5366768898a9b9bcbfbfbcb9b6b3b0adaaa7a4a19e9b9895928f8c89867c695643301d0a00001f344a5f74878787878787878787878787878793a7bcbdaea5a4a4a4a4a4a4a4a4a4a4a4a4a4917c67523c2712001c32475c70879ca5a7aaacafb1b4b6b9bbbebfbdbab8b5b3b0aeaca9a7a49e8a76624e3a271300000000000000000000000000000000000012273c52677c93a8b19c87705b46311c07000000000000000000000000000000000000031a2f44596e8499aebca7937c68533e291400000005111a1f1f1f1f1f1f1f1f1a1206000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000162c405568747372706f6d6c6a686766646362605f5e5c5b5a585756545351504e4d4b4a484746444342403f3e3c372d1f0e0000000000000e23384e63778897a5b4c0bebcbab8b6b4b2b0afacaba9a7a5a3a19f9d9b99989594806a543f2a1500001f344a5f748ba0b5b5a08b745f4a341f0a00000000000818283949596a7a8b9babbcb3a29282706150402f1f0f000000000000000000000000000000000000061a2d4155697c90a4b5a28e7a66533f2b180400000010253b5064798fa4b9b19c87715c4e505355575a5c5e60626467696b6e70728499afbca7917b66513c271200172c42576c8295a5b6c1b4adaaa7a4a19e9b9895928f8c898683807c797673706d5f4c3926130000001e33485c6d707070707070707070707070707990a5bab4a0908f8f8f8f8f8f8f8f8f8f8f8f8f8f7a65503b2611001a2f44596e8499aebcbfbebbb9b7b4b1afacaaa8a5a3a09e9b999794918f8d836e5a47331f0b00000000000000000000000000000000000011273c51667b91a7b29d88725c47321d0700000000000000000000000000000000000000172c41566b8296abbfab95806b56412c170200000000000000000000000000000000000000000000000000000000000000000000000000000000000003080a08020000000000000000000000000000000000030a101313100e09010000000000000000000000000000001226394b595f5e5c5b5a5857555452514f4e4c4b4a484746444342403f3e3c3b393836353332302f2e2c2b2a2927231b0f01000000000b141a22374c61768ca1b5c3bdb3b0b2b4b6b8b9bbbdbfc0bebcbab8b6b4b3b0afada7927c67523d281300001f344a5f748ba0b5b5a08b745f4a341f0a0000000004152636465667778898a9b9b6a5958573635343322212010000000000000000000000000000000000000e2236495d708598acae9a86725f4b372410000000000e23384d62778ca1b6b49f89745f4a3b3e40424447494b4d4f525456585b70869bb0bba5907965503b261000162b40556a8095abc0b5a39995928f8c898683807c797673706d6a6764615e5b585041301d0a000000192c3e4f595b5b5b5b5b5b5b5b5b5b5b5b63788ea3b8b19c88787878787878787878787878787876634e39240f00182d42576c8297acaeaba9a6a4a19f9c9a979593908d8b898784827d7c79777466533f2b170400000000000000000000000000000000000010263b50657990a5b39e89735e48331e090000000000000000000000000000000000000014293e53687d93a8bdad98836e59442f1a0500000008101415151515151515151515151515151515151515151514100800000000000000000000000d171d1f1c150b00000000000000000000000000030a11171e25282826231c140b03000000000000000000000000000a1c2d3b464a484746444342403f3d3c3a393736343332302f2e2c2b2a282726242321201e1d1b1a1917161513120f0800000000000f1d282f30354a5f74899fb4c1ae9f9b9d9fa1a3a4a7a8aaacaeb0b1b3b5b7b9bbbdbaa5907965503b261100001f344a5f748ba0b5b5a08b745f4a341f0a00000000102233435464748595a6b6b8a89888766656453525140400000000000000000000000000000000000003162a3e5165798da0b4a5927d6a56432f1b08000000000b20354a5f74899fb4b6a18c77624d38282b2d2f313436383a3c3f41475c72889cb2b9a48f78634e39240f0014293e53687d94a9beaf9a85807c797673706d6a6764615e5b5855524f4c4946433d322312000000000f21313d4546464646464646464646464c61768ca1b7b49f89736363636363636363636363636362584734200c00152a3f54697d949b999694918f8c8a888683807c7a787673706e6c696764625f5849372310000000000000000000000000000000000000000f243a4f64798fa4b49f8a745f4a341f0a0000000000000000000000000000000000000011263b50657a90a5bab09b87705c47321d0800000e1a24292a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a29241b0e000000000000000000101e2a323431281d12070000000000000000030a11171e252b32393e3d3b3830271f160e050000000000000000000000000f1d2a32343332302f2e2c2b2a2827252422211f1e1d1b1a191716151312100f0e0c0b090500000000000000000000000000000b1d2d3a434644475c72889cb2bba6918688898c8d8f91939597999b9c9fa0a2a4a5a8a9a38d78634e39240f00001f344a5f748ba0b5b5a08b745f4a341f0a00000000192c3f5161718293a3b3bbab9b8a7969594838281707000000000000000000000000000000000000000b1e3246596d8295a8b19d8a76624e3b27130000000000081d32475c71879cb1b9a48f7965503b2616181a1c1f212325272a33485e73899eb3b8a38d77624c38230d0012273c52677c92a7bcaf9a866f6764615e5b5855524f4c494643403d3a3734312e29211405000000000313202a3030303030303030303030354a5f748ba0b4b5a08c76604e4e4e4e4e4e4e4e4e4e4e4e4d473a2a18050013283d52677c888684827d7b797774726f6d6a686663605e5c595754524f4d4a453a2b1a07000000000000000000000000000000000000000e23384e63788ea0a0a08b75604b36200b000000000000000000000000000000000000000e23384d62778da2b7b39e89745f4a35200b000c1d2c373e3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3e382c1e0d000000000000000e1e2e3c464a453a2f24190e03000000030911171e252b323940464d5352504c433b322a2118100700000000000000000000000c171d1f1e1d1b1a191716141311100f0d0c0a0904000000000000000000000000000000000000000000000000000000000014283a4b575b5a585a6f869aafbba6917b72747677797b7d8082848687898b8d8f909394978c76604c37210c00001f344a5f748ba0b5b5a08b745f4a341f0a000000001d32475c6f8090a0b1beae9e8d7c6c5c4b3b2a1a0a000000000000000000000000000000000000000013263a4e6175899db1a995826d5a46331f0b0000000000021a2f445a6f8499aebca7927c68533d2813000006090c0e101220354a5f748ba0b5b6a18c76604b36210c0011263b50667b90a5bbb19c87705c4f4c494643403d3a3734312e2b2825221f1c19150e03000000000000020e161b1b1b1b1b1b1b1b1b1b1e33485e73889db0afa38d77634e38383838383838383838383833291c0c000010253a4f637373706e6b696764625f5d5a585553504e4b494744423f3d3a383531281c0d00000000000000000000000000000000000000000d22374c62778b8b8b8b8b76614c37220c000000000000000000000000000000000000000b20354a5f748a9fb4b6a18c77624c38230d0016293b4953545454545454545454545454545454545454545454534a3c2a170400000000000c1c2c3c4c5a5f584c41362b21160b0910171e252b323940464d545b616867655f574e463d342c231b120901000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001a2f435769706f6d6b6d8398adbda8937d685f60636466686a6c6e7072737577797b7c808283735e49341f0a00001f344a5f748ba0b5b5a08b745f4a341f0a000000001d32475c72889daebeb1a090806f5e4e3e2d1d0c0000000000000000000000000000000000000000071b2e4256697d91a5b4a18d7965523e2b1703000000000000172c42576c8296abbfaa95806a55402b16010000000002050c21364b60768ca1b6b4a08b745f4a34200a000f243a4f64788fa4b9b39d88735e483734312e2b2825221f1c191613100d0a0700000000000000000000000000000000000000000000041c31475c70879c9b9997907964503b25232323232323232323231f170c0000000c203446565f5e5b595754524f4c4a484543403e3b393634312f2c2a282523201c150b0000000000000000000000000000000000000000000b20354a5e70747474747471604b36210c00000000000000000000000000000000000000081d32475c71879cafaca48f7964503b2510001d314558676a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a675947331e09000000000b1a2a3a4a5a6a74695e53493e33281d1e242b323940464d545b61686f757c7c79736a615950483f372e251d140a00000000000000000004090b0a0704000000000000000000000000000000000000000008121a1c1b150c0000000000000000000000000000001b30465b7086848382808297acbfaa958073716f6e6c6b6968666463625e60626466686a6b6d6a5946311c0700001f344a5f748ba0b5b5a08b745f4a341f0a000000001d32475c72889db3bea994827161514030200f0000000000000000000000000000000000000000000f23374a5e728699adac9985715d4a36230f00000000000000152a3f54697d93a8bdad98836d58432e1906090d1014171a1e23384d62778da3b8b39e89735e48331e09000e23384d62778da2b7b49f8a745f4a37363432302f2d2c2a2927262422211f1a12060000000000000000000000000000000000000000001a2f445a6f8588878483807a66503b26110e0e0e0e0e0e0e0e0e0b040000000004172838444a494644413f3c3a373533302e2b292624211f1c1a171513100e0b080200000000000000000000000000000000000000000000071b2f42525d5f5f5f5f5f5e5343301c0800000000000000000000000000000000000000031a2f44596e8499999794917c68533d2814001f344a5f7480808080808080808080808080808080808080808076604b36210d0000000819283848586878877c70665b50453a2f32393f464d545b61686f757c838a91928f877d756c645b534a413930271c0e000000000000000d171e21201c1915120e0b0704000000000000000000000000050f1a252e3230281d0f00000000000000000000000000001c31465b708799989795949fb1c2ad998b8887868483827d7c7b7978776c584d4f5053545658564c3c2a160200001f344a5f748ba0b5b5a08b745f4a341f0a000000001d32475c72889db3bfaa978776665545352515040000000000000000000000000000000000000004172b3e5266798da1b5a4917c6955422e1b070000000000000012273c51667b90a5bbb09b86705b46311c1b1e2225292c2f3336394e63788fa4b9b29c88725c47321d07000c21364b60768ca0b5b6a18c76614e4c4b4947464443413f3e3c3b393736342e2416060000000000000000000000000000000000000000182d42576a7473706f6c6a685d4b37230e000000000000000000000000000000000b1a27303434312f2c2a272522201e1b181614110f0c0a06000000000000000000000000000000000000000000000000000000000000000012243441494a4a4a4a4a4942352514010000000000000000000000000000000000000000172c41566b828784827d7b7969543f2a14001e33485d7187959595959595959595959595959595959595958e78644f3a25100000001325364656667687978e83786d62574c41464d535a61686f757c838a91979ea5a7a39a928980776f665d554c443a2c1c0a0000000002101e2a333634312d2a2623201c1915120e0b070401000000010c17212c374247443b2d1d0b000000000000000000000000001d32475c72889dadacaaa9afbdc9b7a79f9d9c9b999896949391908e866f5a443a3b3d3f4143423a2e1e0d0000001f344a5f748ba0b5b5a08b745f4a341f0a000000001d32475c72889aaabab5a4948473635343322212020000000000000000000000000000000000000c1f33475a6e8296a9b09c8975614d3a261200000000000000000f24394e63788ea3b8b39d88735e49342d3033373a3e4144484b4e52657990a5bbb09b86705b46301b06000a1f344a5f74899fb4b8a38d78646361605e5c5b5a5856545351504e4c4b4941342412000000000000000000000000000000000000000014283b4d5a5f5e5b5a5755534c3f2e1b08000000000000000000000000000000000009141c1f1f1c1a171512100d0b0803000000000000000000000000000000000000000000000000000000000000000000000000000000000616242e343434343434342f25170800000000000000000000000000000000000000000014293e536774726f6c6967645d4c3a2611001a2f44586d8397abababababababababababababababababa6917c67523d28130000001b2f435464748595a5a0958a8074695e535a61686e757c838a91979ea5acb2b3b2b6aea59c948b8379716860574a3927130000000412202e3c474b4946423f3b3835312e2a2723201c1915120e0b131e29343e4a555c584b3a2816040000000000000000000000001e33485d72889dabacadafb1bac8c5bab4b3b1b0aeadaba9a8a7a599846e58442f26282a2c2e2d271d10000000001f344a5f748ba0b5b5a08b745f4a341f0a000000001b3045596c7c8d9dadbdb2a292827061514030201000000000000000000000000000000000000014273b4e62768a9eb1a894826d5945321e0a00000000000000000c21364b60768ba0b5b5a08b76604c3e4245484c4f5356595d6063676a7b91a7bcaf99856f5a442f1a0500081e33485d72889db3b9a48f7b797876747372706f6c6b6a6866656362605d52422f1b07000000000000000000000000000000000000000b1e2f3d474a48464442403e392f2110000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000006121a1f1f1f1f1f1f1f1b12070000000000000000000000000000000000000000000010243749585f5c5a5754524f4a3f2f1d0a00162b3f54697d93a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a095806a55402b160000001f34495e728393a3aeb3a89d92877c70686e757c838a90979ea5acb2b2aba59e9da6aeb7b0a79f968d857c736856422d190000051322303e4c59605e5b5754504d4a46433f3c3835312e2a27232025303b46515c677169574533210f0000000000000000000000001e33485e738994959798999daabcc2b2a7a6a8a9abadafb0b2b3ad98836d58432e181315171918130b00000000001f344a5f748ba0b5b5a08b745f4a341f0a00000000162a3d4e5e6e7d8f9fafbfb09f8f806f5e4e3e2e1d0d00000000000000000000000000000000081c2f43576a7d92a6b3a08c7864513d2a16020000000000000000091f34495e73889db2b8a38e78635053575a5d6164686b6e7275787c808393a8bdad98836e58432e190300021c31465b70879cb1bda99891908e8c8b898886848382807d7b79787775705e4a35200b0000000000000000000000000000000000000000111f2b323433312f2d2b29251d11030000000000000000000000000000000000000000000000050e1416140d0400000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000081a2c3b454a4745423f3d3a362d2111000012263b5065798b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b836e58442f190000001e33485c6e7a86919ca8b3afa4998e837c838a90979ea4abb2b1aba49e97918a8a929ba3acb4b2a9a1988f826e59442f1a0005142331404e5c6a7673706c6965625f5b5854514d4a46433f3c383538434d58636e79847562503e2c1a0800000000000000000000001f344a5f737c7d808283848ca1b6b9a5949193949698999b9c9fa097836c57422c170200000000000000000000001f344a5f748ba0b5b5a08b745f4a341f0a000000000d1f30405060708291a1b1bdad9d8d7c6c5c4c3b2b1b0b0000000000000000000000000000001024374b5f72869aaeab9884705d4935210e000000000000000000061c31465b70869bafbba6917b6665686c6f7276797c8084878b8e919498a0b0c1ac97826c57422c170200001a2f445a6f869aafc0b6aaa7a5a3a1a09f9c9b999897959391908f8d8b745f4a35200b0000000000000000000000000000000000000000010e181e1f1e1c1a1816141009000000000000000000000000000000000000000000000000081621292b2821170d0200000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000060d1315120c03000000000000000000000000000000000000000000000000000e1d29313432302d2a2825221b100300000d22374c60717474747474747474747474747474747474747474746b58432e19000000192d3f505c6873808a96a1acb6aba09590979ea4abb2b1aba49d97908a837c75767d889098a0a9b2b19e8b7865523f2b1700112232414f5e6c7a898986827d7a7773706c6966625f5b5854514d4a4a55606a75828c92806d5b4937251301000000000000000000001c3044566367686a6b6d73899fb3b7a18c7b7c808283848688898b8c826b56402b160100000000000000000000001f344a5f748ba0b5b5a08b745f4a341f0a0000000001122232425262728393a3b4bbab9b8a7a6a5949392919080000000000000000000000000005182c3f53677a8fa2b6a3907c6854412d190600000000000000000000192e43586d8398adbea9947d76797d8284888b8f9295999c9fa3a6a9adb2bec0ab95806b56402b16010000192e43586e8393a2b1c0bebbbab8b7b5b3b2b0afadacaaa8a7a5a39f89735e49341f0a0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000051626343d403d342a1f150b010000000000000000000000000000000000000000000000000000000000000000000000000000000000050c131921272a27201406000000000000000000000000000000000000000000000000000c161d1f1d1b181513100d0700000000091d3043535e5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5b4e3c29150000001022323f4b56616d78848f9ba6b1b3a8a5abb2b1aaa49d979089837c756e6861636b737c858d969ea694826e5b4936230f00192d40515f6d7b8a989e9a9793908c8986827d7a7773706d6966625f5c67727d88939e9d8b79665442301e0c00000000000000000000142738464f555b5a585c72879cb1b8a38e78686a6b6c6e70727375777868543f2d1e0d00000000000000000000001f344a5f748ba0b5b5a08b745f4a341f0a000000000004142434445565758696a6b6b8a8988877675747362616060000000000000000000000000c2034475b6f8396aaaf9b8874604c3925110000000000000000000000162b40556a8095aabfac98898c8f9396999da0a3a7aaaeb1b4b8bbbfc0c5cfbfa9947d69543f2a14000000162b405466748493a2abacaeb0b1b3b5b7b8b9bbbdbfbfbdbcbab39d88725c47321d08000000000000000a141a1d1c1a1917161413110f0e0c0b0907060403010000000000000000000000000000000000000000000000000000000f213444515650463c32281e140900000000000000000000000000000000000000000000000000000000000000000000000000030b121920272e353c3f3b32241403000000000000000000000000000000000000000000000000000000000000000000000000000000000114253542494a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a473e301f0d0000000414222d39444f5b66717d89949fabb1b1aaa49d968f89837b756e68615a534d4f5760687179828a938a7764513e2b1906001e33485d6f7d8c9aa8b3afaca8a5a19e9a9793908c8986837d7b7774707985909aa5b0a89684725f4d3b281500000000000000000000091a283d5265706f6e6c6f869aafbba5907a65565657595b5c5e6062635c544b3c2b1804000000000000000000001f344a5f748ba0b5b5a08b745f4a341f0a00000000000006162737475767778898a8b8b6a696857564544434241403000000000000000000000115283c5063778b9fb2a793806c5844311d09000000000000000000000013283d52677c92a7bcb5a69fa1a4a7abaeb2b5b8bcbfbcb9b6b2afacabb3c0bda8937c68533d28130000001124374857657484939597999b9c9ea0a1a3a4a6a8a9abadafb0b19c87705b46311c070000000000000d1b272f32312f2e2c2b292826252321201e1d1b1a1816151312100f0d0b0a08070503020000000000000000000000000006192b3e51626b63594f443a30261c1208000000000000000000000000000000000000000000000000000000000000000000000a161f262d343b424950544f4232200d00000000000000000000000000000000000000000000000000030a11171a18130900000000000000000817252f34343434343434343434343434343434343434343434332b2012010000000004101b27323d4954606b76828d979c9c968f89827b746e67605a534d463f393b444c555d666e7780806d5a4734220f00001f34495e73899caab8c6c2c0bdbab6b3afaca8a5a19e9b9794908d89868c97a2adb7bdb2a18f7d6a58442f1a0000000000000000000000152a3f546a80868483808398adbca7927c6b6b6b6b6b6b6b6b6b6b6b6b695a47331e09000000000000000000001f344a5f748ba0b5b5a08b745f4a341f0a000000000000000919293949596a7a8a9babbbb3a393837262524231211101000000000000000000091d3044586b8093a7b29f8b7763503c291501000000000000000000000010253b5064798fa4b8c3b8b4b6b9bcbfbbb8b5b1aeaba7a4a19d9a9796a2b5bca7917b66513c2712000000081a2a39475665747d8083848687898b8c8d8f9193949698999b9c9b866f5a45301b050000000000081a2b39434746444342403e3d3b3a3837353332302f2d2b2a2827252422211f1e1c1a1917161412110f0901000000000000112336485b6d80766c61574d43392e241a1006000000000000000000000000000000000000000000000000000000000000000a1a28333a41484f565d646a614f3c281400000000000000000000000000000000000000000000020910171e252b2f2d261b0d000000000000000007121b1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1e180f02000000000000000915202b37424e59646f7b838788827a746d67605a534c463f39322b25283039414a525b636c7163503d2b180500001e33485d72889db3c8baaeabaeb1b4b8bbbfbdbab6b3afaca8a5a29e9b9fa9b4bfb5aba0958a80705b46301b0000000000000000000000162b40566b829799979594a0b2bea9948282828282828282828282828276604b36210b000000000000000000001f344a5f748ba0b5b5a08b745f4a341f0a00000000000000000b1b2b3c4c5c6c7c8d9dadbdb1a1908070604f3f2f1f0f0000000000000000001125384c6073889bafaa97836f5c4834200d0000000000000000000000000e23384d62778c9ba7b4bbb7b4b1adaaa7a3a09c9996928f8c888682869bb0bba5907964503b2510000000000c1b2938475664696b6c6e707273747678797b7c80828384868889846e58432e1904000000000011253849575c5b5a5857555352504f4d4c4a4847464442403f3e3c3a3937363433312f2e2c2b292726241d130600000000081b2d405365778b897d746a60564c41372d23180e040000000000000000000000000000000000000000000000000000000002152838454e555c636a7178806b57432f1b0700000000000000000000000000000000000000080f161d242b3239404442392b1b090000000000000000000000000000000000000000000000000000000000000000000000000000000000000000030e1925303c47525e686d72746d666059534c463f38312b241e1710151d252e363f4750585c554634210e0000001c32475c70879cb1c0ac9c96999ca0a3a6aaadb0b4b7babebebab6b3b0b2bbbbaea3988d83776c6153402c180000000000000000000000172c42576c8297acacaba9b0bec3af9f9797979797979797979797978b745f4a35200b000000000000000000001f344a5f748ba0b5b5a08b745f4a341f0a0000000000000000000d1e2e3e4e5e6e808f9fafbfae9e8f7d6d5d4d3d2d1c0c0000000000000005192d4054687b8fa3b6a28f7a6753402c19050000000000000000000000000b20354a5e707c8996a3a6a29f9c9895918e8b8884827c7976737072879cb1b9a48f78634e39240f00000000000b1a29384751545657595b5c5e5f61636466686a6b6c6e707273746a57422d18030000000000162b40546772706f6e6c6a6867666463605f5e5c5b5957565453514f4e4c4b4a4846444342403e3c3b38302415040000001225374a5d6f82959c91877c72685e544a40352b21170d020000000000000000000000000000000000000000000000000000091e324556626970777d868c87725e4b36220f000000000000000000000000000000000006121c232a31383f464d545a56493825120000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000008131e2a35404c54595d5f59524c453e38312b241d1610090300010a121b232b343c444742372817040000001b30455a6f869bb0bca7918284888b8e9195989b9fa2a5a9acafb3b6bcc7c1ae9d91867b70655a4f443523110000000000000000000000172c42576c8398a9abacaeb1bac9bdb1acacacacacacacacacacac9f89735f4a341f0a070200000000000000001f344a5f748ba0b5b5a08b745f4a341f0a01020304050607090a0b102030405061708291a1b2bcac9c8c7b6b5b4a3a2a1a0a0000000000000d2135485c708497abae9a87735f4b38241000000000000000000000000000061b2e41515f6b788591918d8a8783807c7876726f6b6865615e5e73899eb3b7a28d77624c37220d0000000000000b1a29353c3f4042444647484a4c4e4f5153545657595b5c5e5f5a4d3b2814000000000000182d42576c8387868382807d7c7b797776747372706e6c6b6a6866646362605f5d5b5a5857555352504c4233220f0000001a2e415467798d9faea49a90867b70665c52483e342a1f150b010000000000000000000000000000000000000000000000000c22374c61747d858c929aa08e7965523e2a16020000000000000000000000000000000616242f373e454c535a61686f6755412d190500000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000010c18232e393f44484a453e37312a241d1610090200000000000000070f18202930322e25190a000000001a2f44596e8499afbca7927c6f7275787c8083878a8d9094979b9ea1a9b8bda8938073695e53483d322617060000000000000000000000192e43586e8493949597999dabbec1b0a6a4a6a8a9abadafb0b2b39e89735e48331e1e1c160c000000000000001f344a5f748ba0b5b5a08b745f4a341f15161718191b1c1d1e1f2122232432425263738394a4b4baaa99897968584838281707000000000215293d5064778c9fb3a6927d6a5743301c080000000000000000000000000000122333414e5a6773807b7874716e6b6764605d5a5653504c4a5f748b9fb4b6a18c76604b36210c000000000000000b1822272a2b2d2f3032333537383a3c3e3f4042444647494a473d2f1e0b0000000000001a2f44596e84999a9897959492908f8d8c8b898786848382807c7b797877757372706f6e6c6a68676660513e2b160000001f34495d718597a3adb6aca2988e84796f655a50463c32281e140900000000000000000000000000000000000000000000000c21364b607488999fa7aea995826d5945311d09000000000000000000000000000000122434424b525960676e757c83705c4834200c00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000006111c252b2f3334312a231d160f0902000000000000000000000000040d151b1c1a12080000000000192e43586d8398adbda8937d685d6064676a6e7174777b7d8386898d9bafbfa9947d68564c41362b201508000000000000000000000000182e43586d7b7c7d8083848ea3b8b7a3928f9193949698999b9d9f9d88725c4732313331291d0f0000000000001f344a5f748ba0b5b5a08b745f4a34292a2b2c2d2f3031323334363738393a3b455565758696a6b6b7a7978776665645352515040000000a1d3145586c8094a7b19e8a76634f3b2814000000000000000000000000000000061523303c4956626a6663605c5956524f4b4845413e3b374b60768ca1b6b49f8b745f4a341f0a0000000000000000050e121416181a1b1d1e2022232527282a2b2d2f30323434322b1f11000000000000001b30465b70869bafadacaba9a7a5a4a3a1a09e9c9b999896949391908f8d8b898887858382807d7c7b6e59442f1a0000001f34495d707b86909aa5afb5aba0968c82776d63594f443a30261c1208000000000000000000000000000000000000000000081c3144586c8295a9bbc1b09c8874604c3824100000000000000000000000000000001a2e41525f666d747b838a908c7763503b271400000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000a11161a1e1f1c160f090200000000000000000000000000000000000000000000000000000000172c42576c8297acbfa994806a544b4f5255595c5f6366696d70738397acc0ab95806a55402e23190e030000000000000000000000000015293d505f6667696b6c768ba0b5b6a18c797b7c7d8283848688898b87705b46434648453b2d1c0a00000000001f344a5f748ba0b5b5a08b745f4a3c3e3f40424344454647484a4b4c4d4e4f5052535767778898a9b9b5a59484736353433322100000001226394d6074889cafa996826e5a47331f0c0000000000000000000000000000000005121f2b38455054514e4b4744403d3a3633302c2926384d62778da3b8b39e89735e48331e090000000000000000000000000000000005090b0d0e1012131516181a1b1d1f1f1e180e01000000000000001d32475c71879caaacadafb0b2b4b5b7b6b4b3b1b0afadaba9a8a7a5a3a2a09f9d9c9a9897959492846e58432e190000001a2e41515f69737d88929ca6b1b3a99f958a80766c61574d43392e241a1006000000000000000000000000000000000000000115293d5165798ea2b6bfb7a48f7b67533f2b170300000000000000000000000000001f34495d707a82888f979da493806a57432f1b0700000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000162b40566b8095abc0ab95806b56403a3d4044474b4e5154585b6b8296abc0ac97826c57422c17060000000000000000000000000000000e2132414d505254565e73899eb3b8a38d786667696b6c6e70727375776e5a55585b5e594b39261200000000001f344a5f748ba0b5b5a08b745f50525354565758585a5b5c5e5f60616263646667686a6b6c7a8b9baec2b2a292827161513f2c190000061a2d4155697c90a4b5a28e7966523f2b18040000000000000000000000000000000000010e1a27333c3f3c3936322f2c2825211e1b171424394e63788fa4b9b19c88725c47321d07000000000000000000000000000000000000000000000000000000000000000000000000000000000000001e33485e738993959798999b9d9fa0a1a3a5a7a8a9abadafb0b1b3b5b7b7b5b4b3b1afadacaba997826c57422c17000000112333414c56606a758089939ea8b2b2a79d93897d746a60564c41372d23180e040000000000000000000000000000000000000e22364a5e72869aafaaa49c96836e5a46311c0700000000000000000000000000001f34495d7286959ca4aab1ae9a86725e4a36220e000000000000000000000000000000000001060b111516130c020000020406080806000000000303030303030300000000020303030303050300000000000000000000000000091014141008000000000000000000000000152a3f546a8094a9bfac97826c57422c282b2f3235393c3f43546a8094a9bfad98836d58432e190300000000000000000000000000000003142330383b3d3f475c71879cb1baa590796452545657595b5c5e606264676a6d70736855402c1702000000001f344a5f748ba0b5b5a08b74646667686a6b6c6c6e6f7072737476767778797b7c7d808282838496abc0c0b0a08f806f5c47321d00000e2236495d708598acad9986725e4a37230f0000000000000000000000000000000000000000091621282a2724211d1a1713100d09050011263b50657990a5bbb09b86705b46301b0600000000020a0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0b04000000001f344a5f737b7d808283848688898b8c8e909193949698999b9c9ea0a1a3a4a6a8a9abadafb0aa95806a55402b160000000515242f39434d58626c76828b959faab4b0a69c91877c72685e544a40352b21170d0200000000000000000000000000000000071b2f43576b80939d978f89827a6f5b46311c0700000000000000000000000000001a2e43566a7d93a7b7bfc6b5a28d7965513d29150100000000000000000000000001060b11161b20252a2b271f13131517191b1d1e1a13080d1518191919191918140d09121719191919191a18120900000000000000000008121c252929241a0e000000000000000000000013293e53687d93a8bdad98836d58432e18161a1d2024272a3e53687d93a8bdaf99846f5a442f1a050000000000000000000000000000000005131d2426282f445a6f8499afbca7917c675a5d6063676a6c707376797c808386846e59442f1a05000000001f344a5f748ba0b5b5a08b78797b7c7d8080828384868788898a8b8c8d8f909193949496979899a1b2c5cebeac9985715d48331e0003162a3e5165798da0b4a5917d6a56422f1b07000000000000000000000000000000000000000000040d1315120f0c08030000000000000012273c52677c91a7bcaf99846f5a442f1a0500000009151e242525252525252525252525252525252525252525252525252525252525241f160a0000001c3044566366686a6b6d6f707273757778797b7c808283848688898b8c8e8f9193949698999b9c937d68533e29140000000006121c27313b454f59646e78838d97a1acb6aea49a90867b70665c52483e342a1f14050000000000000001000000000000000014283c5064778c89837b746d665f51402c1804000000000000000000000000000013273b4f63778c9fb4c7d1bca995806c5844301c08000000000000000000030b11161b20252a2f353a3f403b3124282a2c2e3032332e251820292d2e2e2e2e2e2d291f1b262c2e2e2e2e2e2f2d261a0c00000000000007111b242e383f3e372c1d0c0000000000000000000012273c52677c92a7bcaf99846e59442f1a0503080b0f12273c52677c91a7bcb09b86705b46301b06000000000000000000000000000000000001090f11182d42576c8397acbea9947d6c6f7276787b808386888b8f9194989b87715c47321d08000000001f344a5f748ba0b5b7a3928f9091939394959798999b9c9d9e9fa0a1a3a4a5a7a8a8a9abacadafb3bfcecbb8a4907c6955422e1a000b1e3246596d8295a8b19d8975614e3a2713000000000000000000000000000000000000000000000000000000000000000000000000000013293e53687d93a8bdad98836d58432e1903000008182732393a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3933281a0a0000142738464f51535456585a5b5c5e6062636466686a6b6c6e707273747678797b7c7d8283848687897b67523c27120000000000000a141e28333d47515b66707a858f99a3adb6aca2988e84796f655a50463c31231302000000060f141616141312100f0e0d0c2134485d707c756e676059524b413322100000000000000000000000000000000c2034485c708598acc0bfb7b09c88735f4b37240f00000000000000000a161f252a2f353a3f44494e53554e41373d3f4143454748423627313d434343434343423c302c394143434343434441382a1a08000000020f1a242d37414b5353493b29170400000000000000000011263b50667b90a5bbb09b866f5a45301b060000000011263b50657a90a5bbb19c87725c47321d07000000000000000000000000000000000000000000162b40556a8095aabfab95808285888b8e9194979a9da0a3a7a9ad9f89745f4a35200b000000001f344a5f748ba0b5c1b0a6a4a5a7a7a8a9abacadafb0b1b2b3b4b5b7b8b9bbbcbdbebfc0bfbdbcbbbab9b8b09c8875614d3a26120013273a4e6175899db1a895826d5946321e0b0000000000000000000000000000000000000000000000000000000000000000000000000000152a3f546a8094a9bfac97826c57422c17020000132536444d4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4e463827150200091a28343a3c3e3f4143444647494b4c4e4f5153545657595b5c5e5f6163646668696b6c6e70727373634f3a251000000000000000010b16202a343e49535d67727c86909ba5afb5aba0968c82776d63594f42311e0b00000a1823292b2b2a282726242322201f2d41546468615a534c453e372f24150a09070605040201000000000000000005192d4155697d91a5b1aaa49c968f7a67523d281300000000000000091927333a3f44494e53595e63686a5f4d4a525456585a5c5d544432404f585858585858574e3f3a4a5558585858585a554837241100000010202c36404a545e6867594633200d0000000000000000000f253a4f64798fa4b9b19c87705b46311c07000000000f243a4f64788fa4b9b39e89735e48331e0900000000000000000000000000000000000000000014283e53687d93a8bdb09e94979a9da0a3a6a9acafb2b5b8bbbfb6a18c77624d38230e000000001f344a5f748b9eadbbc2bab9bbbbbcbdbfbfbebdbcbbb9b8b7b5b5b4b3b1b0afaeadacaba9a8a7a5a5a4a3a194806c5945311e0a001a2e4256697d91a5b4a08d7965513e2a17030000000000000000000000000000000000000000000000000000000000000000000000000000162b40566b8296abc0ab95806a55402b160100001a2e4254616464646464646464646464646464646464646464646464646464646464635644311d0800000b17202527292a2c2e2f3032343637383a3c3e3f4042444647494b4c4e4f5153545657595b5c5e5f564634200c000000000000000000030d17222c36404a545f69737d88929ca6b1b3a99f958a80766c604e3a261100071828353e40403f3d3c3b3a3837363433374650534d463f38312a252322211f1e1d1b1a1917161514120d050000000012263a4e62758a9e9d968f88827a7365513d281300000000000004152737454e53595e63686d72777c7c68535a676a6b6e6f7272614d394b5e6c6e6e6e6e6e6c5d494357686e6e6e6e6e6f6654402b1600000a1c2e3e49535d67717a7663503d2a170400000000000000000e23384e63788fa3b8b39d88725c47321d08000000000e23384d62778da3b8b49f8b745f4a341f0a00000000000000000000000000000000000000000011263b50667b90a5bbbdafa9acafb2b5b8bbbebfbcb9b6b3b0ada9a48f7965503b2611000000001f34495d70808f9dacb3b2b1b0afadacaba9a8a8a7a5a4a3a1a0a09f9d9c9b999998979594939190908f8d8c8b7764503d291602001f34495d7286979fa79885705d4936220e000000000000000000000000000000000000000000000000000000000000000000000000000000182d42576c8398adb5a9947d69543f2a140000001e33485d72797979797979797979797979797979797979797979797979797979797974604b36200b000000040c1012131517181a1b1d1f2022232527282a2c2d2f3032343537383a3c3d3f4042444647484a44382817040000000000000000000000050f19232e38424c56606b75808a949ea8b4b2a79d93897d68533e29130010243646525655545351504f4d4c4b4a484746444342403f3e3c3b3a383736343332302f2e2c2b2a292721170a0000000a1e32465a6e839089827b746d665f564836220e000000000000102133445562686d72777c83888d92836e5a627780828386877b66513c4e6378848484848477624c465b708484848484826c57422c1700001125394c5c66707a848e806c594633200d00000000000000000d22374c62778da2b7b49f89735e48331e09000000000c21374c60768ca1b7b6a18c76604b36210c0000000000000000000000000000000000000000000f24394e63788fa2b0bdc3bfc0bdb9b6b3b0adaaa7a4a19e9b9894918f7c68533e2813000000001a2e41526170808e9c9d9c9c9b9998979594949391908f8d8c8c8b8988878684848382807d7c7c7b79787776746f5c4835210e00001f34495d707a838b93907c6955412e1a06000000000000000000000000000000000000000000000000000000000000000000000000000000192f44586e8499a0a0a0937c67523d28130000001e33485e73899090909090909090909090909090909090909090909090909090908c76604b36210b00000000000000000000000000060a0b0d0e1012131516181a1b1d1f2022232527282a2b2d2f3032333430271a0b00000000000000000000000000030a121b252f3a444e58626d77828c96a7bbbab0a6927c67523c271200172b4053646b6a68686665646361605f5d5c5b5a585756545352504f4e4c4b4a484746444342403f3e3c34281908000003172b3f53677b7b756d676059524b44392a190600000000000b1c2e3f5061737c83888d92979ca19e89756060758b97989b937d68543f4e63788f9999998d77624c475c728899999995806a55402b160000142a3f546879838d979c897663503d2a1704000000000000000b21364b60768ca1b6b5a08b745f4a341f0a000000000b20354a5f748ba0b5b7a28d77624c37220d0000000000000000000000000000000000000000000d22374c617685929facb1aeaba8a4a19f9b9895928f8c898683807c797566523d2813000000001224344352616f7d898888878684838280807d7c7b797877777674737270706f6e6c6b6a6868676664636260605d513f2d190500001a2e41525f676f77808874604d392612000000000000000000000000000000000000000000000000000000000000000000000000000000001b30455a6f868b8b8b8b8b7b66513c27120000001e33485e73899fa5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a08b76604b36210b000000000000000000000000000000000000000000000000000006090b0d0e1011131516181a1b1d1e1f1c1409000000000000000000000000080f171e262d343c434b525a61687077808ea3b8cdbba5907b66503b2611001a2f44596e82807d7c7b7978777675747271706f6e6c6b6a686766646362605f5e5c5b5a585756545350463725120000001024384c5e6a67605a534c453e3730271b0c00000000000316283a4b5c6e8091979ca1a6acb1b6a4907b675e73889dadab96826b57414e63788fa4afa38d77624c495e73899fafa9947d68533f2914000014293e5366798c9ea9a693806c594633200d000000000000000a1f344a5f748ba0b5b6a18c76604b36210b00000000091f34495e73899fb3b9a48f78634e39240f0000000000000000000000000000000000000000000a1e3346586673828f9c9c9996938f8c898783807c797673706d6a676461594937230f000000000616253442515f6e747372706f6e6c6c6b6a68676664646362605f5e5c5c5b5a58575654535352504f4e4c4b4b4840322210000000122434424b535b646c746b5845311d0a000000000000000000000000000000000000000000000000000000000000000000000000000000001b3045596d74747474747473634f3a25100000001f344a5f748b9fb4b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5a08b745f4a341f0a000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000050d141c232b3239414850575f666d757c848c939baabdbdb6a48f79644f3a250f001b30455a6f8695949391908f8d8c8b8988878684838280807d7c7b79787776747372706f6e6c6b6a686454412d19000000091c2f404e55534c463e38312a231c140a000000000000091e324657697a8c9dacb1b6b3aea9a4a096826d5b70869bafae99846e59444f64798fa4b8a38d77624c4b60758ba0b5a8937c67523d281300000f2337495c6e8294a6af9c897663503d2a1704000000000000091e33485e73899fb4b7a28d77624c37220d00000000061d32475c72889db2baa59079644f3a25100000000000000000000000000000000000000000000317293a485663707d8a8784827d797774706e6b6864615e5b5855524f4c463b2b1a0700000000000716243241505c5f5e5c5b5a58575756545352504f4f4e4c4b4a48474746444342403f3f3e3c3b3a38373636332d2214040000000616242f37404850585f5b4e3c29150200000000000000000000000000000000000000000000000000000000000000000000000000000000162a3d4f5c5f5f5f5f5f5f5f564634200c0000001f344a5f748ba0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a08b745f4a341f0a0000000000000000000000000000000000000000000000000000000000000105090d1115191c1c1911060000000000000000000007111921282f373e464d555c646b727a828991989fa7afb8b1a9a29a8d77634d38230e001c31475c70879ca9a8a7a5a4a3a1a09f9d9c9b99989795949392908f8e8d8c8a89888786848382807d705b46301b000000001122303b403f38312a241d160f0801000000000000000c22374c61758798a9b8aaa39f9a95908b8682735e6d8398adb19c87715c474f647990a5b8a38d77624c4c62778ca1b7a6917b66503b26110000071a2c3f5164778a9cafa693806c594633200d000000000000051d32475c72889db2b8a38e78634e38230e00000000001b30465b70879bb0bca7917b66513c2712000000000000000000000000000000000000000000000c1c2b384552606d74716e6b6865625f5c595653504c494643403d3a3732291d0d00000000000000061423323f484a48474644434242403f3e3c3b3a3a38373634333231302f2e2c2b2a2928272625232221201e191105000000000006121b242c343d454a473e301f0d00000000000000000000000000000000000000000000000000000000000000000000000000000000000e20313e484a4a4a4a4a4a4a44382817040000001f344a5f748b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b745f4a341f0a0000000000000000000000000000000000000000000000000003060a0e12161a1e22262a2d31322d24170800000000000000000918242d353c434b525a6169707780878e969da4acb3b3aba49c958e868075614c37220c001e33485d72889db0b1b2b3b4b6b7b5b4b3b1b0afadacaba9a8a7a5a4a3a2a09f9e9d9b9a99989795866f5a45301b0000000004121e272b2a241d160f0902000000000000000000000c22374c61768ba0b5ad9a8f8a85807b76716c66576a8095aab49f89745f4a4f647990a5b7a18c76604b4e63788ea3b8a59079644f3a2510000000102235475a6c8092a5af9c897663503d2a17040000000000001c31465b70879cb1b9a48f79644f3a250f00000000001a2f445a6f869aafbda8937c67523d281300000000000000000000000000000000000000000000000d1a2734424f5b5f5c595653504d4a4744413d3b3734312e2b2825221e170c0000000000000000000514212c33343332302f2e2d2c2b2a29272625242322211f1e1d1c1b1a19171615141312110f0e0d0c0b090500000000000000000008101821293134332b20120100000000000000000000000000000000000000000000000000000000000000000000000000000000000213212c333434343434343430271a0b000000001f34495d707474747474747474747474747474747474747474747474747474747474705d49341f09000000000000000000000000000000000000000004080c1014181b1f23272b2f33373a3e424647413526140200000000000004162736414850575f666d757c858c939ba2aab1b5aea69f9790898279726a635746321e09001f34495e7389999b9c9d9fa0a1a2a3a4a5a7a8a9abacadafb0b1b3b4b5b6b5b4b3b2b0afaeadab99846e59442f1a0000000000010b12161510090e110f0a010000000000000000000a1f34495e73889db2ab958075706b66615c575353687c92a7b6a18c77624d4f647990a5b7a18c76604b4f647990a5b8a38e78634e38230e0001111e282e3d506275889bada693806c594633200d0000000000001b30455a6f869bb0bba5907a66503b26110000000000192e43586e8498adbfa9947d69543f2a14000000000000000000000000000000000000000000000000091724313e474a4744413e3b3835322f2c2825221f1c191613100d09030000000000000000000000040f191e1f1e1d1b1a1918171615131211100f0e0d0b0a09050000000000000000000000000000000000000000000000000000000000050d151c1f1e180f0200000000000000000000000000000000000000000000000000000000000000000000000000000000000000030f191e1f1f1f1f1f1f1f1c140900000000001a2e41515d5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5d51412e1a0600000000000000000000000000000206090d1115191d2125282c3034383c4044474b4f53575b5c5344311e0a0000000000000c203345535c646b727a82899198a0a7afb6b0a8a19a928b837c746d655e57504739281603001f344a5f748384868788898b8c8d8e8f90919394959798999b9c9d9fa0a1a2a3a5a6a7a8a9abac98836d58432e180000000000000000070e151c2326241e13060000000000000000061b30455a6f869aafad98846e5b56514c48433e5065798fa4b9a48f7965504f647990a5b7a18c76604b51667b91a7b7a28d77624c37220d000e1f2f3b424950586a7d90a3af9c897663503d2a17040000000000192f44586e8499afbca7917b67523c27120000000000172c42576c8297acc0ab95806b56402b16010000000000000000000000000000000000000000000000000613202b3334322f2c292623201d1a1714100d0a07000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000011233341494a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4941332311000000000000000000000000090f13171a1e22262a2e3236393d4145494d5155595c6064686c7070614d38240f00000000000011263b4f63707780878e969da5acb4b2aba39c958d867d766f686059524a433b34291b0b00001d32465a696c6e6f70727374767778797b7c7d7d80828384868788898b8c8d8f9091929394959797826b57412c170000000000060d141b222930373b39312415040000000000000000182d42576c8297acb09b87715c473d38332e384d62778da2b7a7927c685350667b91a7b7a18c76604b53687c93a8b5a08b76604b36210b00182b3d4d575d646b7279879cb1a693806c594734210e0000000000182d42576c8398adbda8937c68533d28130000000000162b40566b8095abc0ac97826c57422c170200000000000000000000000000000000000000000000000000030f181e1f1d1a1714110e0b08020000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000105090e12120f08000000000000000000000000000000000000000000070e12110e0600000000000000000000000000000000000000060f1516130c030000000000000000000000000000000000000410191d1e1e1e1e1e1e1d19100400000000000000000515232e343434343434343434343434343434343434343434343434343434343434342e2315050000000000000000000004121d24272b2f33373b3f43474b4e52565a5e6266696d7175797c82867b66513d281300000000000012273c51667b8c939ba2aab1b4ada59e978f888079716a635b544d453e362f2820170b000000172a3c4c5557585a5b5c5e5f60626364666768696a6c6d6e6f70727374767778797b7c7d80808283806a55402b160000000a131a21282f363d444b504d4233210e000000000000000a152a3f54697d94a8b39f89745f4a35231e20354a5f748a9fb4aa95806a5550667b91a7b7a18c76604b546a8094a9b49f89745f4a341f0a001e32475a6a717880868d94a2b5af9c897663503d2a170400000000172c41566b8297acb0a9947d68543f2a140000000000152a3f54697d94a9afad98836e58432e1903000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000003080c11151a1e232727231b130a0100000000000000000000000000000000000d1922272722190e04000000000000000000000000000000000b19232a2b271f160d040000000000000000000000000000000514222c32333333333333322c221405000000000000000005111a1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1a1105000000000000000000000213222f383c4044484c5054585c5f63676b6f73777a7d83878b8f929694806a55402c170200000000000f23384c6073889cafb6afa8a099928a837b736c655d564f474039312a221b140c04000000000d1e2e3a414243444647484a4b4c4e4f50525354555758595a5b5c5e5f606263646667686a6b6c6d6e63513d28130000101d272e353c434a51585f6560513e2a16020000000004121d25273c51667b90a5b6a18c77624d38230e1d32475c72879cb1ad98836d5850667b91a7b7a18c76604b566b8296abb39d88725d48331e09001f344a5f74868d949aa2a8b1c0b9a693806d5a47331e0900000000162b40556a80959b9b9b95806a55402b16000000000013283e53687c939c9a9897856f5a442f1a050000000000000a141a1d1c1a18161412100e0c0a0807050301000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000002060b0f14181d21262a2e33383c3c382f261d14080000000000000000000000000000000c1d2b363c3c362b21160c0200000000000000000000000000081929363e403b322920170e05000000000000000000000000001122323f47484848484848473f322211000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000f2031404c5155595d6165686c7074787c8084888c9094979b9fa3a7ab98846e5945301b060000000000081c3044586c8094a8a29b948c857d766e676058514a423b332c251d160f070000000000000000101d262c2d2e2f313233343637383a3b3c3e3f40424344474647494a4b4c4e4f5052535456575858534534210e000d1e2e3a424950575e656c737a6d5945311d0900000001132330393c3b4e63788da2b7a5907965503b26161b30455a6f8499afb09b86705b50667b91a7b5a08c76604b576c8398adb19c87705c47321c07001c3145596d8295a7afb5bcc4cfc3b09d8a76604b36210b00000000142a3f54697d8686868686826b56402b16010000000012273c51667b888786838280705b46301b0600000000000d1b272f32312f2d2b2927252322201e1c1a18161412100e0c0b0907050301000000000000000000000000000000000000000000000000000000000000000000000000000005090e12171b1f24282d31363a3f43484c51514b423a312617070000000000000000000000000005172a3b495151483e33291f140a0000000000000000000000001225374752554e463d342b211810070000000000000000000000192d40515c5e5e5e5e5e5e5c51402d190500000000000000000000000000000000000000000000010203050607090a0b0d0e0f101213141617181a1b1b1912080000000000000a1b2c3d4f5e666a6e7276797d8286898d9195999da1a5a8acb0b4b8bcb19c88725d49341f0a00000000000115293d5064788d968f8780787069625b534c443d362e271f1811090200000000000000000000000a121718191a1c1d1e1f21222325272e353c434a51585c564837353637383a3b3c3e3f404243433f3527170500172a3c4c565d646b727982888974604c3824100000000b1e30414d52504c60748a9fb4a8937d68533e2b2b2b2d42576c8297acb39d88735e52677c92a7b5a08b745f4b596e8499afb09b866f5a45301b060016293e5165798ea2b6c9d1d4cec1ad9985705c48341f0a0000000012273c50636f6f6f6f6f6f6f65523e2a15000000000010253a4f637373706f6e6b6a6454412d190400000000081a2b394347464442403e3c3b38373433312f2d2b2927252322201e1c1a18161412100d060000000000000000000000000000000000000000000000000000000003070c1015191e22272b3034393d42464b4f53585d6165665f564d4335251300000000000000000000000000102234475965655a50463b31271d1208000000000000000000081b2e4154656a625950473e352c231a11080000000000000000001e33485d6f7373737373736f5d48331e09000000000000000204050607090a0b0d0e0f111213151617191a1b1d1e1f202223242627282a2b2c2d2f30302d251a0b00000000051627394a5b6d7b8083878b8f93979b9ea2a6aaaeb2b6babebebab6b2aeaaa08c76614d38230e0000000000000d2135495d7186827a736b645d554e473f383029221a130c0400000000000000000000000000000000000000000004090a0b0f1f2e3a424950575e656c7266533f2b212223252627292a2b2c2e2e2b23170900001d32465a69717880878e959c907b68533f2b1804000012263b4e5f6764615d72879cb1ab96826b5641404040404054697d94a9b5a08b76605d687c93a8b5a08b74675e5b70869bb0af99846e58442f1904000e22364a5e72879aafc2c7c0b9b3a6927d6955412d1905000000000d213445535a5a5a5a5a5a5a544736230f00000000000c203446565f5e5c5a5857545146372512000000000011253849575c5b5957565352504e4c4a48464442403e3c3b38373533312f2d2b29272621190e0000000000000000000000000000000000000000000001060a0f13181c21252a2e33373b4045494d52565b5f64686d71767a7a7269605342301d0a0000000000000000000000081a2d3f516476776d63594e44392f251a1005000000000000001125384b5e717d756c635a51483f362d241b0e00000000000000001f344a5f74898989898989745f4a35200b00000000000a1217191a1b1d1e1f212223252627292a2b2c2e2f303233343637383a3b3c3d3f4041424445464237291806000000112234455667798a94989ca0a4a8acafb3b7bbbfbcb8b4b0aca8a5a19d9995918d7a66513c2712000000000000061a2e425669746d665f585049413a332b241c150e0600000000000000000000000000000000000000000000000000000005192c3d4c565d646b727980836e5a46321e0d0e0f11121315161719191610060000001f344a5f74868d949ba2a9ab97836f5b47331f0b0000152a3f54697c7976726e8499aeae99846e5956565656565652677c91a6b8a38e78646f7a8695a9b6a28f857a716772879cb1ad98836c57422d180300071b2f43576b8093a7bab3aca59f978a76624e3a261200000000000416273640444444444444444137291906000000000004172838444a48474543413f3d342819080000000000162b40546772706e6c6b68676463615f5d5b5957565352504e4c4a48464442403f3c3b352b1e0e000000000000000000000000000000000000040c12161b1f24282c31363a3e43474c5055595e62676b7074787d82878b8f8e867c715f4c3a271402000000000000000000001224374a5c6e828a80756b61564c41372d22180d0000000000081b2e4154677a8e8980766d645b524940372c1e0d000000000000001f344a5f73899f9f9f9f8c76604b36210c00000000101d262c2e2f303233343637383a3b3c3e3f404243444647484a4b4c4d4f50515354555657595a5b554735220f000000192d405163748697a8adb1b5b9bdbebbb7b3afaba7a39f9b9794908c8884807c787464503b26110000000000000013263a4c5a5f5a524b443c352d261f1710090100000000000000000000000000000000000000000000000000000000000b2034485b6a717880868d958a75614d392511000000000000000000000000000000001d31465a6d8296a8afb6bdb29e8a76624e3a26120000172c41566b828f8b87848297acb19c87716b6b6b6b6b6b6b6364798fa4b9a6917b76828d98a4b3beaea1988e847a73899eb3ab97826b56402c1601000014283c5064778ca0a69f98918a847c6f5b47331f0b0000000000000918242c2f2f2f2f2f2f2f2d25190b000000000000000b1a2730343332302e2c2a2821170a000000000000182d42576c83868483807d7c7978767472706e6c6b68676463615f5d5b5a5756535250493c2c1a06000000000000000000000000000000000b1720262b2f34383d41464a4f53585c6065696e72777b8085898e92979ba0a4a2998f7c695744311e0c0000000000000000000a1d2f415466798c9d93887d73695f544a3f352b1e10000000001124374a5d7084979c938a82776f665d534a3c2b19060000000000001e33485e73889db3b4a28d77624c37220d0000000d1e2e3a4143444647484a4b4c4e4f505253545657585a5b5c5d5f60616364656668686a6b6c6e6f7065523d28140000001e33485d6f8092a3b4c2bab5b1adaaa6a29e9a96928f8b87837d7a77736f6b67635f574735210d000000000000000a1d2e3c464a463e3730282119120b0400000000000000000000000000000000000000000000000000000000000000000d22374c6277868d949aa2a5917c6854402c1904000000000000000000000000000000162b3e52667a8fa3b7cacdb9a5927d6955412d190500182e43586d8398a09c98969fb1b49f8a82828282828282826c61768ca1b6a9947d88939faab5bbb5b8b4aba1978d838ba0b4aa95806a543f2a150000000c2134485d708599928b847c766f686052402c1804000000000000000611171a1a1a1a1a1a1a18120800000000000000000009141c1f1e1c1b191715130e05000000000000001a2f44596e84999997959491908d8c8a88868483807d7c7978767472706f6c6b6867655a4936220d000000000000000000000000000000091a28343b4044494d52565a5f63686c7175797d83888c90959a9ea2a7acb0b4b9b5ac998673614e3b291604000000000000000014273a4c5e718496a9a59b90867b71675c52473c2e1d0b0000001a2e4154677a8da0afa69d948b827970675a483623100000000000001d32475c72889db2b8a38e78634e38230e000000172a3c4c55585a5b5c5e5f606263646667686a6b6c6d6f7071727475767778797b7c7d8082838486806a55402b160100001f34495e73899eb0c1b4a6a09c9995918d8986827c7975716d6966625e5a56524e4b44392a18050000000000000000101e2a3234322b231c140d0600000000000000000000000000000000000000000000000000000000000000000000000b2035495d718599a8afb6ac9884705c4834200c0000000000000000000000000000000f23374b5f73889cafc4c7c0ac9985705c4834200c001a2f445a6f859aafb1adabb1bdb9a69997979797979797826b5f73899eb3ae9c939aa5b1b9b0a7a0a5adb5b3aaa09697a6b9a8937d68533e291300000005192d4155697d857d767069625b544d4334231000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001b30465b70869bafacaba8a7a5a3a19f9d9b9997959491908e8c8a88878483807d7c7865503b2610000000000000000000000000000000142738465054595d62666b6f74787c82868b8f93989ca1a5aaaeb3b7bcb7b3afb1bbb6a3917d6b584633200e00000000000000001c304456697b8ea1b3b8aea3998f84796f645a4c3a28150200001f34495d708397a1aab3b1a89f968c83776552402d1a0700000000001b30465b70879cb1b9a48f79644f3a250f0000001d32465a696e6f70727374767778797b7c7d8080828384868788898b8c8d8f909193949597989997826b57412c170200001c31475c70869bb0bfaa978c8884807b7774706c6864605c5955514d4945413d393631281b0c000000000000000000000d171d1f1d170f08000000000000000000000000000000000000000000000000000000000000000000000000000006192e42556a7d92a6bac7b39f8b77634f3b2713000000000000000000000000000000081c3044586c8095a8bab3aca59f8c7763503b2712001c32475c70879caeb1b4b8bbc2c4b6adacacacacacaa95806a5c70879bb0baada8acb7aea59c948b919aa2abb3b3ababb5bca7927c67523c27120000000012263a4e62737069625b554e4740393125160500000000000000000002060909070300000000000000000000000000000000000002060909070300000000000000000000001d32475c71879cabacafb0b3b4b7b6b4b2b0afacaba8a7a5a3a19f9d9b99979594907a66503b26110000000000000000000000000000001c30445663696d72777b8084898d92969b9fa4a8adb1b6bab9b5b0aca7a29e999eacbeae9b887562503d2a1805000000000000001f344a5f7386959fa9b4beb5aba1968c82776a5744311e0b00001f34495d707b858e97a0a9b2b2a9a095826f5c4a37241000000000001b30455a6f869bb0bba5907965503b26100000001f344a5f7484868788898a8c8d8e8f90929394959798999b9c9d9fa0a1a3a4a5a7a8a9abacadad98836c57422d180300001a2f44596e8398adbda8937d726f6b67635f5b57534f4b4744403c3834302c2825211c150a0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000012263a4e63768b9fb3b7afa6927d6a56422e1a0500000000000000000000000000000115293d5165798da1a69f98918a847c68533e2813001e33485e738896999ca0a3a7b1c0c2b6b1b1b1b1b1a8947d68596e8499a6b2beb5aca39b928980777d868f979fa8b1b9b7ab9e907b66503b2611000000000b1f3345555e5c554e474039332c251e14070000000000000000060f161b1e1e1c18120b0200000000000000000000000000060f161b1e1e1c18120b0200000000000000001e33485e7389949597999b9d9fa1a3a5a7a9abadafb1b3b5b7b6b4b3b0afacaba48f78634e39240f0000000000000000000000000000001f344a5f737d83878c9095999ea2a7abafb4b8bbb7b2aea9a5a09b97928e89858fa1b3b8a592806c5a4734220f000000000000001e33485c6d77828d97a1acb6beb3a99f948874614e3b281502001a2e41525f68717a848d969fa8b2b29f8c7966533f2a1500000000001a2f445a6f8499afbca7917b66503b26110000001f34495e73899a9b9d9e9fa0a2a3a4a5a7a8a9abacadafb0b1b2b1b1b1b1b1b1b1b1b1b1b1b1af99846e58432e19040000172c41566b8095abbfab95806b5a56524e4a46423e3a37332f2b27231f1b1814100c08010000000000000000000000000000000000000000000000000000000000000000060e1416130d0300000000000000000000000000000000000000000b1f33475b6f8497aaa29c958e86715c47321c070000000000000000000000000000000e22364a5d728699928b847c766f685e4d392511001f344a5f737c8284888b8e93a3b7b4a49c9c9c9c9c9c927c67566b7c8894a0aaa29990887d756d646a727a848c959da5a6998d8073624e39240f0000000003162737434948413a332c261e18110a0100000000000000000d19232b303333312d261f150a00000000000000000000000d19232b303333312d261f150a000000000000001f344a5f737c7d80838487888b8c8e90929496989a9c9ea0a2a4a5a8a9acadb0a28d77624c37220d0000000000000000000000000000001e33485d7187979ca0a5aaaeb2b7bbb9b4b0aba7a29e9994908b87837d7874728496a9bbaf9c8a7664513e2c1907000000000000192c3e4f5a656f79858f99a3aeb8bbb1a4917d6a5744311d0900122434424c555e677079838c95a1b3a996826b56402b160100000000192e43586e8498adbda8937c67523c27120000001d32475c72889db0b2b3b4b5b5b5b5b5b5b5b5b5b5b9c3b9a89d9c9c9c9c9c9c9c9c9c9c9c9c9c9b866f5a442f1a05000014293e53687d93a8bdad98836e58505a5a55514d4844403b37332e2a25211d1814100b0703000000000000000000000000000000000000000000000000000000000109111a22292b282015060000000000000000000000000000000000000004182c4054687c90958e888079726a5945301b06000000000000000000000000000000061a2e42566a7d857d767069625b544c402f1d0a001c30445663686b6f727578899fb4ad98878787878787877b66505e6a76838f978e867c736b625950565f677078828a9295897b6f625545331f0b00000000000a19263034332d261f18110a04000000000000000000000e1d2b363f45484846413b32281c0e0000000000000000000e1d2b363f45484846413b32281c0e0000000000001c3044566367686b6c6f70727476787a7c7d82838687898b8d8f90939497989b9c8b75604b36200b0000000000000000000000000000001a2e43586d8397acb5babbb6b2ada9a4a09b97928d8984807b76716d68645f67798c9eb0b9a694826e5c493623110000000000000f21313e48525d67727c87919ba6b1c1ae9b8874604c37210c000616253039414b545d666f788499afa8937d68533f29140000000000172c42576c8398adbea8947d68533e29130000001c31465b70879ca0a0a0a0a0a0a0a0a0a0a0a0a0a0a5b3b29d8a878787878787878787878787878787705b46301b06000011263b50657a90a5bab09b86705b5e6e6f6a66615d5954504c47433f3a36322d2925201c181209000000000000000000000000000000000000000000000000040c141c252d363e403c32241403000000000000000000000000000000000000001125394d617588827a736c655e574c3c2916010000000000000000000000000000000013273b4f63737069625b554e4740392f22120000142738464f53565a5d6072879cb1ac97827070707070706f604d4d5965717d837a726960574e463d434b545c656d767d84776a5e51443727160300000000000009141b1f1e19120b040000000000000000000000000b1c2c3b4852595d5e5b554e45392c1d0d000000000000000b1c2c3b4852595d5e5b554e45392c1d0d0000000000142738464f525356575a5b5d5f61636567696b6d6f71737577787b7c808284868789735e49341f0a000000000000000000000000000000152a3f54697d93a8afaba6a29d99948f8b86827c78746f6a66615d58544f4a5c6e8093a5b7b19e8b786653402d1b0800000000000313202b35404a545f69737d8994a4b8b6a18c76614c37220d000007131c252e37414a535c70869bb0a6917b66513c27120000000000162b40566b8297acbfa994806a543f2a150000001a2f445a6f868b8b8b8b8b8b8b8b8b8b8b8b8b8b8b96aab19c877070707070707070707070707070706a58442f1a0500000e23384d62778da2b7b39e89735e647884807a76726d6965605c58534f4b46423e3935312c261b0e000000000000000000000000000000000000000000060f171f28303841495156504232200c000000000000000000000000000000000000000a1e32465a6d746d665f58514a433b2e1e0c00000000000000000000000000000000000c203345555e5c554e47403a332c251d11040000091a28343a3e4145485a6f869bafae99846e5b5b5b5b5b5a52433b47535f6b70675e564d443b332a2f384049515a626a7066594d403327190a0000000000000000000000000000000000000000000000000000000417293a4a59656e7273706a61574a3b2b1a0800000000000417293a4a59656e7273706a61574a3b2b1a0800000000091a28343a3c3f40424446484a4c4e50525456585a5c5e60626466686a6b6e6f72736e5b46321d0800000000000000000000000000000011263b5065798f9f9b96928d8884807a76716d68635f5a56514d48433f3a3e516375889aacbba89583705d4a382512000000000000030e18232d38424c57616c768ba0b5b49f8a745f4a35200b0000000009121b242d37495e73899eb3a38f78644f3a240f0000000000162b40556a8095abc0ab95806a55402b16010000192d42576a7474747474747474747474747474747c93a8b39d88725c5b5b5b5b5b5b5b5b5b5b5b5b5b584c3b28150100000b20354b5f748a9fb4b5a08c7661687d9294908b87837d7975716c68645f5b57524e4a4541392c1c0a00000000000000000000000000000000000109121a222b333b434c545d656b614f3b28150200000000000000000000000000000000000002162a3d4f5c5f59524b443d362f281d1000000000000000000000000000000000000004162837434948413a332c261e18110900000000000b172026292c3043586e8398adb09b86705b464646464540342a36424e585b544b423a31281f171c242d353e464f575b55483c2f2216090000000000020e161b1b1b1b1b1b1b1b1b1b1b1b1b1b1710050000000d213446586877828888857d7468594937241100000000000d213446586877828888857d7468594937241100000000000b17202527292b2d2f31333537393b3d3f41434547494b4c4f50535457585a5c5e5c503e2b17030000000000000000000000000000000d22374b60758a8a86827c77736f6a65615c58534f4a46413c38332f2a263446586a7c8fa1b3b2a08d7a6754422f1d0a0000000000000006101b25303a444e62778da3b8b39d88725d48331e09000000000000081121364b60768ba0b5a18c76614c37220d0000000000152a3f54697d94a9bfac97826b56412c1702000014283b4d5a5f5f5f5f5f5f5f5f5f5f5f5f5f5f667b91a7b39e89735e48464646464646464646464646443b2e1e0c000000091e33485d72879cb1b8a38f78646d8397a9a5a09c97938f8b86827d7874706c67635f5a554a3a2714010000000000000000000000000000040c141d252d363e464f575f687078806b5844311e0a000000000000000000000000000000000000000e20313e484a453e373029221b140b00000000000000000000000000000000000000000a19263034332d261f18110a040000000000000000040c1114172c41566b8297acad9d88725d48333030302c231824303c444640382f261d150c03081119222a333b434642372b1e110500000000000313202a30303030303030303030303030302b221506000014293d50637587959d9d999286776654412d19050000000014293d50637587959d9d999286776654412d19050000000000040c10121416181a1c1e20222426282a2c2e30323436383a3b3e3f4143454749483f32210f00000000000000000000000000000000091e32475c717975706c68635e5a55514c48433f3a35312c28231f1a1516293b4d5f718496a8bbaa9785715f4c39271401000000000000000008131d273a4f64798fa4b9b09b86705b46311c07000000000000000f24394e63788ea3b49f89745f4a34200a000000000013293e53687d93a8bdad98836c57422c170200000b1e2f3d474a4a4a4a4a4a4a4a4a4a4a4a4a50657990a5b49f89745f4a3430303030303030303030302f281e1000000000041b30455a6f8499afbba6917b6671879bb0b9b5b1aca8a39f9b97928e8986827c77736f685744311e0b000000000000000000000000070f17202830394149515a626a737b848c8874604d3a2613000000000000000000000000000000000000000213212c3334312a231c150e07000000000000000000000000000000000000000000000009141b1f1e19120b04000000000000000000000000000000152a3f546a80949b989689745f4a341f1b1b181007131f292f302c241b130a0100000000060e171f282f302d251a0d000000000000000f21313d45464646464645454646464646453f33241300001a2f43586c8093a5b1b3ada49684705c48331f0a000000031a2f43586c8093a5b1b3ada49684705c48331f0a0000000000000000000000000004090b0d0f11131517181b1c1f20232426282a2c2e303234332d2213030000000000000000000000000000000004192e41546265605c57534e4a45403c38332e2a25211c18130e0a05000c1e30425466798b9eb0b4a18f7b695643311e0b0000000000000000000012273c51667b91a7bbaf99846e59442f1a050000000000000011263b50667b90a5b19c87715c47321d08000000000012273c52677c93a8bdae99846e58432e1903000000111f2b323434343434343434343434343a4f64788fa4b5a08b74604b36201b1b1b1b1b1b1b1b1b1b1a150c000000000000182d42576c8297acbea9947d69768ba0acb1b5b9bebdb8b4b0aba7a39e9a96918d888473604d3a27140100000000000000000109121a232b333b444c545d656d767d878f98a0907c6956422f1b0800000000000000000000000000000000000000030f191e1f1c160f08000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000013283d52677c888684827d75604b36200b00000000010d151a1b181108000000000000000000030c141a1b1912080000000000000000192c3e4f595b5b5b5b5b5a595b5b5b5b5b5a5142301c08001e33485d71879bafc2c7c1b3a08b76614c37220c000000081e33485d72879bafc2c7c1b3a08b76614c37220c00000000000000000000000000000000000000000000000006090b0d0f11131517191b1d1f1e191004000000000000000000000000000000000000122536454e504c47433e3935302c27231e1a15110c07010003080d13181d2537495c6e8092a5b7ab998673604d3b28150300000000000000000014293e53687d93a8bdac97836c57422d18030000000000000014293e53687d93a8af99846f5a45301b05000000000011263b50667b91a7bcaf9a856f5a442f1a05000000010e181e1f1f1f1f1f1f1f1f1f1f1f23384e63788da3b7a18c76604b36210c000000000000000000000000000000000000152a3f54697d94a9beac97826c7b8e93979ca0a5a9adb2b6bbbfbcb7b3afaaa6a29d907d6a5743301d0a000000000000040c151d252e363e474f5760687079828a929aa3abac9986725e4b37241000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000011263b4f637372706e6b69655846321d09000000000000000000000000000000000000000000000000000000000000000000000000001e33485c6d70707070706f6d70707070706f5f4b37220d001f344a5f74899fb4c9dccdb8a38d77624c37220d0000000a1f344a5f748a9fb4c9dccdb8a38d77624c37220d0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000071827333a3b37322e2925201c17120e0904000002080d12171d22272d32373c42516375889aacb5a3907d6a584532200d000000000000000000162b40556a8095abbfab95806a55402b160100000000000000162c40566b8095abac97826c57422d1803000000000010263b50657990a5bbb09b86705b46301b06000000000004090a0a0a0a0a0a0a0a0a0a0d22374c62778da2b7a38d77624c37220d00000000000000000000000000000000000012273c51667b91a6bbae99846f75797d83878b9094999da2a6abafb4b8bdbfbbb6ad9a8673604d3a271400000000070f1820283139414a525a636b737c858d959da6aeb6afa79e8e7a67533f2a1500000000000000000000000000000000000000000000000000000000000000000000080e1111111111110f0a020000000000000000000000000000000000000000000000000000000000000000000c203446565f5d5b58565451483a291603000000000000000000000000000000000000000000000000000000000000000000000000001f344a5f7487878787877874878787878778634e38230e001f344a5f73899fb3c8d2c9b5a08c76614c37220c0000000a1f344a5f74899fb3c8d2c9b5a08c76614c37220c00000000000000000000080e12110d0500000000000000000000040b1012100a0000000000000000000000000000000000000000000000000000000009161f2526221e1915100b0700000000060c11171c22272c31373c41464c51565c616a7c8fa1b5ad9a8875614f3d2a16020000000000000000182d42576c8397acbda8937d68533e29140000000000000000192e43586d8398adaa95806a55402b160000000000000f253a4f64798fa4b9b19c87705b46311c070000000000010a111313131313131313131321364b60768ca1b6a38f78634e38230e0000000000000000000000000000000000000f243a4f64788ea3b8b19c87726064696d72767b8084888d92969a9fa3a8adb9c9b6a3907c6956432f1b000004111b232b333c444c555d656e767d878f98a0a8b1b4aca49b938b83796a55402b16000000000000000000000000000000000000000000000000000000000000000004111c23262626262626241e1407000000000000000000000000000000000000000000000000000000000000000004172838444a484644413f3c362a1c0b00000000000000000000000000000000000000000000000000000000000000000000000000001f344a5f748b9c9c9c8f78748b9c9c9c8f78634e38230e001d32475b708598aab7bdb7ab9986715d49341f0a000000071d32475c708598aab7bdb7ab9986715d49341f0a00000000000000060d141c23272621170b000000000000020911181f2527251d1204000000000000000000000000000000000000000000000000000000030b10110e0904000000000000000e1921262c31363b40464b50565b60656b70757a80899eb3b7a592806c5946311c0700000000000000001a2f44596e8499afbca7917b67523c271200000000000000051c31465b70869bb0a7927c67523d28130000000000000e23384e63788ea3b8b39d88725c47321d080000000004121e252829292929292929292929344a5f748ba0b5a48f79644f3a250f0e0e0e0e0e0e0e0e0e0e0e0a0300000000000d21374c60768ba0b5b49f8a745f5054595d61666a6f73787c82868a8f939bacbfbfac9986725d48331e000313222e363e474f5860687079828a929ba3abb4b1a9a199908880776f665d4d3a2612000000000000000000000000000000000000000000000000000000000000000112222f383b3b3b3b3b3b393125160500000000000000000000000000000000000000000000000000000000000000000b1a27303433312f2c2a2722190c0000000000000000000000000000000000000000000000000000000000000000000000000000001f344a5f748ba0b1a48f78748ba0b1a48f78634e38230e00182d4155687b8c9aa4a8a49a8d7c6956422e1a0600000001192d4155687b8c9aa4a8a49a8d7c6956422e1a0600000000050c131a212830373c3b34291a09000001080f161e252c333a3c39302313010000000000000000000000000000000000000000000000000000000000000000000000000000000e1e2b353b40454a50555b60656a70757a80868a8f959ba7b9c1ae9b88735e48331e0900000000000000041c31465b70879bb0b9a48f79644f3a251000000000000000091e33485d72889db2a5907965503b26110000000000000d22374c62778da3b8b49f89735e48331e09000000011223303a3e3e3e3e3e3e3e3e3e3e3e3e485e73899fb4a5907965503b262323232323232323232323231e160a000000000a1f34495e73889db3b7a18c77624d3f44484d51555a5f63686c7075797d91a7bcb8a592806c5946311c000e2031404a525a636b737c858d959ea6aeb6afa69e968d857c746c635b534a3f2f1e0b000000000000000000000000000000000000000000000000000000000000000b1e30404c5050505050504e4334220f00000000000000000000000000000000000000000000000000000000000000000009141c1f1e1c191714120e06000000000000000000000000000000000000000000000000000000000000000000000000000000001f344a5f748ba0b5a48f78748ba0b5a48f78634e38230e001225394c5d6e7c8890938f887c6e5e4c3a271300000000001225394c5d6e7c8890938f887c6e5e4c3a271300000004101920272e353c434b515047382714010b151c232a313940474e524d41301e0b0000000000000000000000000000000000000000000000000000000000000000000000000000061a2c3c494f555a5f656a6f747980858a8f949a9fa4aaafb7c5baa693806b5844301b0700000000000000091e33485d72889db3b8a38d77634e38230e000000000000000c21364b60758ba0b5a28d77634d392c1e1104000000000c21364b60768ca1b7b49f8a745f4a341f0a0000000a1e30414d535353535353535353535353535c72889db3a7917b66513c3838383838383838383838383832281a0a000000061c31465b70869bb0b9a48f7964503b3634383c41454a4e53575c60738699acc0af9c8975624f3c2a1600162a3d4f5d666e7680889098a0a9b1b4aca39b938a82797169605850473f372d2111000000000000000000000000000000000000000000000000000000000000000011263a4d5e66666666666661523f2b17020000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001f344a5f748ba0b5a48f78748ba0b5a48f78634e38230e00091c2e3f505e6a747b7c7a746a5f50402f1d0a0000000000091c2e3f505e6a747b7c7a746a5f50402f1d0a00000514222c343b424950585f66645644301c0d1c2830373e464d545b62675f4e3b271300000000000000000000000000000000000000000000000000000000000000000000000000000d2236495a64696f74797d84898f94999ea4a9aeb4b9bebbb6b1ac9e8a7663503c281501000000000000000b20354a5f748a9fb4b5a08c76604b36210c000000000000000e23384d63778da2b5a08b756457493c2f2215070000000b20364b60748ba0b5b5a08b76604b36210b00000011253a4d5f686868686868686868686868686870879cb1a8937c67524e4e4e4e4e4e4e4e4e4e4e4e4e4d4538281502000000192e43586d8398adbca7927c67524c4b4947464443413f3e4456697c90a3b6b8a592806c594633200d001a2f44596d79828a939ba3acb4b1a9a098908880766e665d554d443c342b231b10030000000000000000000000000000000000000000000000000000000000000000142a3f54697b7b7b7b7b7b6e59442f1a0500000000000000000000000000000000000000080f13130e0600000000000000000000000000000001080e110f0a010000000000000000000000000000000000000000000000080d0e0b050000000000000000001f344a5f748ba0b5a48f78748ba0b5a48f78634e38230e0000112132404d576066676560584d4132221200000000000000112132404d576066676560584d413222120000001122323f484f565d646b737a73604c38241a2b39444b525a61686f767c6a56422e1a060000000000000000000000000000000000000000000000000000000000000000000000000012263b5065787d84898e93999ea3a8aeb3b8bebbb5b0aba6a19c9792826e5b4734200c00000000000000000d22374c61768ca1b7b49f89745f4a341f0a000000000000000f253a4f647990a4b6a28f8274675a4d403225160600000a1f344a5f74899fb4b7a18c76614c37220c00000013283e53687d7d7d7d7d7d7d7d7d7d7d7d7d7d7d869bb0a9947d686363636363636363636363636363625645321e09000000162b40556a8095aabfaa95806a6362605e5c5b5a585654535260738699acbfae9b8875624f3c291603001b30465b7087959ea6afb7aea69e958d857c736b635b524a423931292018100700000000000000000000000000000000000000000000000000000000000000000000152a3f546a8091919191866f5a442f1a0500000000000000000000000000000000040c141c24282822190c000000000000000000000000070e151c2326241e1306000000000000000000000000080e110f090000020a131c222320180d00000000000000001f344a5f748ba0b5a48f78748ba0b5a48f78634e38230e00000414222f3b444c5152504c443b30231404000000000000000414222f3b444c5152504c443b30231404000000192d40515c636a717880878e7b67533f2b233749575f666d757c838a86715d4935210d00000000000000000000000000000000000000000000000000000000000000000000000000152a3f54697d93989da2a8adb2b8bdbbb5b0aba6a19c97928d88837c7766523f2b180400000000000000000f24394e63788fa3b8b29d88725c47321d08000000000000000e23384d6175899cb0aea09386786b5e50433424110000081e33485e73899eb3b8a38d77624c38230d000000152a3f546a80949494949494949494949494949495a2b4a9948078787878787878787878787878787874614c37220c00000014283d53687c92a7bcac9783797877757372706f6d6b6a68676a7d90a3b6b8a5927d6b584633200d00001d32475c72889cb1bac0ac9c928a8279706860584f473f362e261d150d05000000000000000000000000000000000000000000000000000000000000000000000000152a3f546a8095a7a79b87705b46301b060000000000000000000000000000080f181f282f373d3d362a1b0a0000000000000000060d141b222930373b393124150400000000000000000008121c2326241d120d151e272f3738342b1e0e000000000000001f344a5f748ba0b5a48f78748ba0b5a48f78634e38230e00000004121e2831383c3c3b3731281e120400000000000000000004121e2831383c3c3b3731281e1204000000001e33485d6f777d868d949b96836e5a4632293e5366737a828990979f8d7864503d291501000000000000000000000000000000000000000000000000000000000000000000000000192d42576c8297acb2b7bdbab5b0aba6a19c97928c87827c77726d68635a4a37230f00000000000000000011263b50667a90a5bbb09b86705b46301b06000000000000000a1e3245596d8294a1afb1a396897b6e6152412d190500021d32475c72889db3b9a48f78634e38230e000000162b40566b8296a9a9a9a9a9a9a9a9a9a9a9a9a9aab1c0ad9a8f8f8f8f8f8f8f8f8f8f8f8f8f8f8f8c76604b36210c00000010263b5065798fa4b9b19e92908e8c8b898886848382807d7b79879aadc0ae9b8875614e3b29160300001e33485e73899eb3c8bca7917d766e655d554d443c342b231b120a02000000000000000000000000000000000000000000000000000000000000000000000000000014293e53687d94a9b19c87705b46301b060000000000000000000000030b131b232b333b434b5251483927150200000000000a131a21282f363d444b504d4233210e0000000000000007111b252f383b382f222029313a434b4e483c2c1a070000000000001f344a5f748ba0b5a48f78748ba0b5a48f78634e38230e00000000000b151d23272726231d150c010000000000000000000000000b151d23272726231d150c0100000000001f34495e7388929aa1a8af9e8a75614e3a2a3f54697d8f969da4aba894806c5844301c080000000000000000000000000000000000000000000000000000000000000000000000071c31465b70869aafc4c3b2a6a19b96928c87827c77726d68635e59534e483c2c1a0700000000000000000013283d52677c92a7bcae99846e58442f19040000000000000002162a3d51647683919eabb4a79a8d80705d48331e0900001c31465b70879cb1baa59079644f3a250f000000172c42576c8297acb0b0b0b0b0b0b0b0b0b0b0b0b0b5c0b8aaa4a4a4a4a4a4a4a4a4a4a4a4a4a4a08b745f4a35200b0000000e23384d62778ca1b7bcaea7a5a3a1a09f9d9b9998979593919094a3b6b8a5927d6b5845321f0c0000001f344a5f74899facb6bfac9b8f857b71675d53493f352b21170d0300000000000000000000000000000000000000000000000000000000000000000000000000000013293e53687d94a9b19c88725c47321d07000000000000000000070f171f272f373f474f575f67655644321f0d00000000101d272e353c434a51585f6560513e2a160200000000040f19232d37414c504c4031333c454d565f635a4a3724100000000000001f344a5f748ba0b5a48f78748ba0b5a48f78634e38230e00000000000002090e1212110e090200000000000000000000000000000002090e1212110e0902000000000000001b3044586c8094a8b5bcb9a5917d6955412d3a4e61758a9eb1b8bfaf9b88735f4b37230f00000000000000000000000000000000000000000000000000000000000000000000000b2034495e73899eb3c7baa6948c87827c77726d68635d58534e49443f3a342b1e0e00000000000000000000152a3f54697d94a9bfac97826c57422c170200000000000000000e223548586572808d9ba8b7aa9d8b745f4a341f0a00001b30455a6f869bb0bba5907b66503b2611000000192e43586e83989b9b9b9b9b9b9b9b9b9b9b9b9b9ba2b3c5bbb4b4b4b4b4b4b4b4b4b4b4b4b4b49f89735e48331e090000000b20354a5f74899ba9b8c1bcbab8b7b5b4b2b0afadacaaa8a7a5a7b1c1ae9b8875614e3b2815020000001f344a5f74869099a3aeb7aca2988e847970665c51483e342a20160c0200000000000000000000020b1012121212121212121212121212121212121212121212121213293e53687d94a9b39d88725c47321d07000000000000030b131b232b333b434b525b636a727a73614e3c2a170500000d1e2e3a424950575e656c737a6d5945311d090000000414212c36404a545e665e4f3c475058616972776653402c190500000000001f344a5f748ba0b5a48f78748ba0b5a48f78634e38230e0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000015293d5064788da0b4c8c0ac9885705c483432465a6e8396aabec9b7a38f7a66533e2b1700000000000000000000000000000000000000000000000000000000000000000000000e23384d62778ca1b6c3b8a38f80726d68635d58534e49443f3a352f2a2520180d0000000000000000000000172c41566b8296abbfaa95806a54402b1500000000000000000005182a3a4755626f7c8a9aaeb5a08b745f4a35200b00001a2f445a6f8599afbca7917b67523c27120000001a2f445a6f8586868686868686868686868686868696abb9a99f9f9f9f9f9f9f9f9f9f9f9f9f9f9d88725c47321d08000000081d32475b6d7c8c9aa9acaeb0b1b3b5b7b8babcbdbfbfbdbcbbbcc1b7a4917d6b5845321f0c000000001d32465968727c87919ba5afb5aba1978d83786f645a50463d33281e140b010000000000000007141f2527272727272727272727272727272727272727272727272727283e53687c93a8b39d88735e48331e0900000000060e161e262e363e464e565e666e767d878f7d6b594734210f0000172a3c4c565d646b727982888974604c3824100000001022323f49535d67717b6c594959636c747d86836f5c4835210e00000000001f344a5f748ba0b5a48f78748ba0b5a48f78634e38230e000000000000000000000000000000000000000000000000000000040a0d0d0d0d0d0d0d0b0600000000000000000d2135495d718599adb9b1aba08c7763503b2b3f53677a8fa3b7b5aea796826e5a46321d00000000000000000000000000000000000000000000000000000000000000000000000f253a4f64798c98a5b2beac9d908376695c4f443f39342f2a25201b16110b05000000000000000000000000192e43586d8398adbda8937d68533e2813000000000000000000000c1c2c3d4c5a69778798adb6a18c76604b36210b0000192e43586e8499aebda8937c67523d2813000000192d4256686f6f6f6f6f6f6f6f6f6f6f6f6f6f6f7d94a9b19c8b898989898989898989898989898987705b46311c0700000002182b3e4f5e6d7b8b9597999b9c9ea0a1a3a5a7a8aaacadafb1b3aea49a8874614e3b28150200000000172a3b4b56606a737d88929ca6b0b3a99f968c82776d63594f453b31271d13090000000000051625323a3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c52677c93a8b49f89735e48331e09000005111a222a323a424a525a626a727a828a929a9b897663513e2c1905001d32465a69717880878e959c907b68533f2b18040000192d3f505c66707984897663516576808890998c7764503d2a1603000000001f344a5f748ba0a0a08f78748ba0a0a08f78634e38230e00000000000206090c0f121515110a00000000000000000000000d181f2222222222222220190f02000000000000061a2e42556a7d92a6a49e978f89806a543f2a384b5f73889ca8a19a938c85745f4a341f00000000000000000000000000000000000000000000000000000000000000000000000e23374b5e6d7a8895a1aebbaea19487796d605245392c1e15100b06000000000000000000000000000000001b30455a6f869aafbba6917b66513c2711000000000000000000000f23374a5b6a788896a5b5ac9d8c76604b36210b0000172c42576c8398adbfa9947d68533e29140000001327394a565a5a5a5a5a5a5a5a5a5a5a5a5a5a687d93a8b09b867373737373737373737373737373736c59442f1a05000000000f2131404f5d6c7a8082848687898b8c8e9091939597989a9c9d9c92887d6a5744321f0c00000000000c1d2d39434d57616a758089939da7b1b2a89e958a80766c62584e443a30261c12080000000f2234434e52525252525252525252525252525252525252525252525252525252677c93a8b49f89745f4a341f0a000515232e363e464e565e666d767d868e969ea6aea693826e5b4834200b001f344a5f74868d949ba2a9ab97836f5b47331f0b00001e33485c6e78838d9793806d5a64788c9ba4a794806d5946321f0b000000001f344a5f748b8b8b8b8b78748b8b8b8b8b78634e38230e0000000a12171a1e2124272b2b261c0f0000000000000000000e1e2b3337373737373737352d20110100000000000012263a4e62768a97908a837b746d62503c283044586c8094948d86807771695a46321d0000000000000000000000000000000000000000000000000000000000000000000000081c2f404f5d6a7684919eabb7b2a5988b7d706356493c2f22150800000000000000000000000000000000071d32475c72879cb1b9a48f79644f3a250f00000000000000000003172b3e5266798997a6b4ac9d8e80705e4a35200b0000172c41566b8297acbfaa95806a543f2a150000000a1c2c39424444444444444444444444444452677c93a7b19c87705e5e5e5e5e5e5e5e5e5e5e5e5e5e5a4e3d2a160100000000031322313f4e5d686a6c6e6f7173747678797b7d8082838687888980756a5f4e3b2815020000000000000f1c26303a444e58626c76808a949ea8b2b1a79d938980756b61574d43392f251a0d0000162a3e516167676767676767676767676767676767676767676767676767676767677c91a7b5a08b745f4a341f0a00112333414a515961697179828a929aa2aaaea69e968e8677624c37220d001d31465a6d8296a8afb6bdb29e8a76624e3a261200001f34495e7285969fa99d8a77645c6f8397aab09c8975614e3b2714000000001f34495d7074747474747270747474747472614c38230d0000101d262c2f3336393c4040392d1e0d00000000000000081b2c3c474c4c4c4c4c4c4c493e2f1e0b0000000000000b1f33475b6f83837c756e67605951443321293d506478878079726a645d554c3c2a170000000000000000000000000000000000000000000000000000000000000000000000001222313f4c596672808d9aa7b4b6a99c8f8274675a4d403326190c0000000000000000000000000000000a1f34495e73899eb3b7a28d77624d38230e000000000000000000091e32465a6e8296a6b5ab9c8e7d6f6151412e1b060000162b40556a8095abc0ab96826b56402b16010000000e1c272d2f2f2f2f2f2f2f2f2f2f2f2f3b50667b91a7b39d88725c48484848484848484848484848463d301f0d000000000000041321303f4b535557585a5c5e5f61636466686a6b6e6f7073746c61574d41301e0b00000000000000000a141d27313b454f59636d77828b959fa9b3b0a69c92887d736960564c41372b1b0a00192e43586d7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c91a7b5a08b745f4b35200b001a2e41515d656d757d868d959ea5adaba29a928a837a726a5b4834200b00162b3e52667a8fa3b7cacdb9a5927d6955412d1905001b2f4355677a8da0b3a794826e5c677a8ea2b5a5927d6a5743301c090000001a2e41515d5f5f5f5f5f5e5d5f5f5f5f5f5e5444311e09000d1e2e3a4144484b4e5154544b3c2b18040000000000000f24374a5a626262626262625c4d3b271300000000000004182b3f5367746f68615a534c453e3426162135495d70726b655d565048423a2e1e0d0000000000000000000000000000000000000000000000000000000000000000000000000413212e3b4855616f7c8996a3b0b9ac9f9285786b5e5144372a1d1003000000000000000000000000000c21364b60768ba0b5b5a08b75604b36210b0000000000000000000b21364b60758a9eb1ab9c8d7d6f605142332312000000152a3f546a8094a9bfac97826c57422c1702000000000a13191a1a1a1a1a1a1a1a1a1a1a253a4f647990a5b49f89735e48333333333333333333333333322b201201000000000000000312212e383e4042434547484a4c4e5051535457585a5c5e5f594f453b30231301000000000000000000010b141e28333c46505a646e78828c96a0aab4afa59b91877c72685e5449392714001a2f445a6f8693939393939393939393939393939393939393939393939393939393939aabb7a18c76604b36210b001f34495d707982899199a1a9afa79f978f877d766e665e564c3d2c1905000f23374b5f73889cafc4c7c0ac9985705c4834200c001326384b5d708396a8b19e8c78655e728699adad9a86725f4c38251100000011233341494a4a4a4a4a49494a4a4a4a4a49433626150200172a3c4c555a5d6063666a695a47331e0900000000000013283d5267777777777777776a56412c170000000000000010243749585f5b544d463f38312a2216081a2e41515d5e585049433b342e261d10000000000000000000000000000000000000000000000000000000000000000000000000000003101d2a3744515e6b7785929facb9b0a396897c6f6155483b2e2114070000000000000000000000000e23384d62778da2b0b19e89735e49341f0a0000000000000000000b21364b60768ca1b7a38e7d6e6051423224150600000013293e53687d94a9bead98836c58432d180300000000000000000000000000000000000f24394e63788fa4b4a08b745f4a341f1e1e1e1e1e1e1e1e1e1e1d170e0200000000000000000003101c24292b2c2e3032333537383b3c3e4041434547484a463c32281e1204000000000000000000000000020c16202a343d47515b656f79838d98a2abb5aea3998f867b716757432f1a001c31465b70879ca8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8acb8b7a18c76604b36210c001f34495e7285959da5adaba39b938b837a736a635b534b423a2e1f0f0000081c3044586c8095a8bab3aca59f8c7763503b271200091b2e415366798c9eb1a895836f5d697d90a4b6a28f7b6754412d1a0600000515232e34343434343434343434343434342f25180900001d32465a696f7275787b8076604c37210d000000000000152a3f546a808d8d8d8d8d836c57422c1700000000000000081a2c3b454a474039322b241d160f0500112333414949433c362e272119120a00000000000000000000000000000000000000000000000000000000000000000000000000000000000c192633404d5a6773828e9ba8b5b4a79a8d807266594c3e3225170a000000000000000000000010253a4f64798f999b9c9c87715c47321d080000000000000000000b21364b60768ca1b7a38d77625042322315060000000012273c52677c93a8bdaf99846e58432e190400000000000000000000000000000000000e23384d63778da3b5a08b76604b36210b0000000000000000000000000000000000000000000000000910141617191b1d1e2022232527292b2c2e30323334322a20150b01000000000000000000000000000000030d17212b353e49535c66707a858f99a2acb6aca2988e85725c47321d001d32475c72889db2b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5a38d77624c37220d001b2f425567798c9ea8a098908880776f675f574f473f372f271d100100000115293d5165798da1a69f98918a847c68533e28130000112436495c6e8294a7b29f8d79676174889cafab9884705d4936220f00000005111a1f1f1f1f1f1f1f1f1f1f1f1f1f1f1b13080000001f344a5f7484878b8d918e78644f3a2510000000000000162b40556a8095a3a3a397826b56402c1600000000000000000e1d293134322c251e171009020000000515232e34342f28211a130c0500000000000000000000000000000000000000000000000000000000000000000000000000000000000000000815222f3c495663707d8a97a4b1b8ab9e918476695c4f4235281b0e0100000000000000000011263b50667b8284868789866f5a45301b060000000000000000000b21364b60768ca1b7a38d77624c37231405000000000012273c51667b91a7bcb09b866f5a442f1a0500000000000000000000000000000000000d22374c62778ca1b7a18c77624c37220d0000000000000000000000000000000000000000000000000000000000000005090b0d0e1012141517191b1c1e1f1d170d0300000000000000000000000000000000000000040e18222c36404a545d67727b86909aa3aeb5a3907d6a57432f1a001e33485e73899fa0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a08d77624c37220d001325374a5c6e8293948c847c736c635c534b433b332b231b130b00000000000e22364a5d728699928b847c766f685e4d3925110000081a2c3f5164778a9cafa99684705e6c8093a6b3a08c7965513e2b1704000000000000000000000000000000000000000000000000001d32475c71879b9fa3a6917c67523d2813000000000000172c41566b8297acb8ab95806a55402b160000000000000000000c161d1f1e18110a030000000000000005111a1f1f1b140d0600000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000004111e2b3845525f6c798693a0adbaaea194887a6d605346392c1f120500000000000000000e23384c5e6a6c6e6f7273756c58442f19040000000000000000000b20354a5f748ba0b5a38d77624c37220d00000000000011263b50657a90a5bbb09b87705b46301b0600000000000000000000000000000000000b21364b60768ca0b5a38d77634d38230e0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000050f19232d37414b555f69737c87919ba5998673604d3a2714001f344a5f748b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b78634e38230e00081a2d3f516376888078706860585048403830282018100800000000000000061a2e42566a7d857d767069625b544c402f1d0a000013253644505c6d8092a6b3a08e7a6763768a9eb1a895826d5a47331f0b0000000000000000050b0e0d080000000000000000000000001a2f44596e8398adb8a994806a55402b16010000000000172c42576c8398adbfa994806a543f2a150000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001040d1a2734414e5b6875828f9ca9b6b2a5988c7d7064574a3d3023150600000000000000081c2f404d5557585a5c5e605c4e3d2915010000000000000000000a1f344a5f748ba0b5a38e78634e38230e0000000000000f253a4f64798fa4b9b19c87725c47321d0700000000000000000000000000000000000a1f344a5f748ba0b5a48f78634e39240f0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000006101a242e38424c56606a737d88928f7c695643301e0b001f34495d70747474747474747474747474747474747474747474747474747474747474747474747472614c38230d000010223446596b746c645c544c443c342c241c140c040000000000000000000013273b4f63737069625b554e4740392f22120000071b2f4354626d798592a5b9a48f7a66636e8296abb19e8a76624d38230e0000000000000710182023221c120500000000000000000000172c41566b8095aabfac97836d58432e19040000000000192e43586e8499aebea9947d68533e291300000000000000000009101414100800000000000000050e1315120c020000000000000000000000000000000000050c0f0e0a02000000000000000000000000000000000000000000000206080a0d0f121417191b1e2023303d4a5764717d8c98a5b2b6a99c8f8275685b4e4133241301000000000000001122303a4042434547494b483f30200d000000000000000000000a1f344a5f748ba0b5a48f78634e38230e0000000000000e23384e63788fa4b9b39d88725d48331e090000000000000000000000000000000000091e33485e73899fb4a59079644f3a251000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000007111b252f39434d57616b758085725f4c3a271401001a2e41515d5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5e5444311e0900000517293b4d5a5f5951494139312920191008000000000000000000000000000c203345555e5c554e47403a332c251d110400000a1f34495e72808b97a2b0b49f8a756a75828c9aadb19d8974604b37220d0000000109121b232c3438372f23140400000000000000000014283d52677c92a7bcb09b86705b46311c0700000000001a2f445a6f8499afbda8937c67523c27120000000000000008121c252929241a0e00000000040d1721282a271f14050000000000000000000000000000020e182124231e140800000000000000000000000000000000000000030e161b1d20222427292c2e303335383a3d3f4753606d7a8894a1aebaada09386786b5e5142301d090000000000000004121e262b2d393f403936342d211202000000000000000000000a1f344a5f748ba0b5a48f78634e38230e0000000000000d22374c62778da3b8b49f89735e49341f0a0000000000000000000000000000000000051d32475c72889da0a0917b66503b2611000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000008131d26303a444e58626c74685543301d0a000011233341494a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4943362615020000000c1e2f3d474a453d352d251d150d0500000000000000000000000000000004162837434948413a332c261e18110900000000091e33485d6f8294a6b4afa39886707d88939ea9b8ac97836e5a45311d08000008141d252e373f484d4b4132210f00000000000000000010253a4f64798fa4b9b39e89735e49341f0a00000000001b30455a6f869bb0bca7917b66513c2712000000000007111b242e383f3e372c1d0c00020d16202a343d3f3b312314020000000000000000000000000914202b353a383126170600000000000000000000000000000000000413212b303234373a3c3e414346484b4d4f525457595c5e697684919eaebeb1a3978a7c6f604c38230e0000000000000000010f1e2d3c4a54544b3d2e20110300000000000000000000000a1f344a5f748ba0b5a48f78634e38230e0000000000000c22374c61768ca1b7b5a08b745f4a34200a0000000000000000000000000000000000001c31475c70878b8b8b8b7c67523c2712000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000a141e27313b454f595f594a3926130000000515232e343434343434343434343434343434343434343434343434343434343434343434343434342f2518090000000000111f2b3234312a21191109010000000000000000000000000000000000000a19263034332d261f18110a0400000000000005192d40526476899ba89d91867a6b748699abb2a79c917c68533f2b1602000717253039414a535b635e503e2b180500000000000000000d22374c61768ca0b5b6a18c77624c38230d00000000001c31465b70879cb1bba5907a66503b2611000000020f1a242d37414b5353493b291709151f29333d4751544e42311f0c0000000000000000000005101b27323d484f4d4435241200000000000000000000000000000000001022313e45474a4c4f515356585b5d5f626467696c6e707376787a8093a8bdc1b4a79b8e79644f3a250f00000000000000000e1d2d3c4b5a68695b4c3e2f201203000000000000000000000a1f344a5f748ba0b5a48f78634e38230e0000000000000b21364b60758ba0b5b6a18c76604b36210b0000000000000000000000000000000000001b3045596d74747474747464503b26110000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000010b151e28333d464a463b2d1b090000000005111a1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1b1308000000000000010e181e1f1c160e060000000000000000000000000000000000000000000009141b1f1e19120b040000000000000000000011233547596b7d90968b8074685d697b8da0a0958a7d73614e3925100000122535434c545d666f776e5b4734200d00000000000000000a1f34495e73889db2b9a48f7964503b261100000000021d32475c72889db3baa59079644f3a250f00000010202c36404a545e6867594633201927323c46505a6369604e3b28150200000000000000000b17222d39444f5a646153412f1d0b000000000000000000000000000000061a2d404f5a5c5f616466686b6d70727477797c7d828487898b8d90939bacc0d1c5b19d88735f4b36220d000000000000000e1d2c3b4b5a6978796a5c4d3e302113040000000000000000050d1f344a5f748a9fb4a48f78634e38230e0000000000000a1f344a5f748a9fb4b5a28d77624c37220d000000000000000000000000000000000000162a3d4f5c5f5f5f5f5f5f574735210d00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000020c16202a3234322a1d0f000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005182a3c4e60728584786d62564c5e7083958e83776c615545321e0a00001b2f425360687079838b7763503d29150200000000000000061c31465b70869aafbca7927c68533e291400000000081e33485e73899eb3b9a48f78634e38230e00000a1c2e3e49535d67717a7663503d2a2737454e59636c767d6b5845321f0c000000000000000a1a2834404b56616c77705e4c3a28160400000000000000000000000000000a1f34495d6d717476787b7d828386888b8d8f919497999b9ea0a3a5a8acb9bfbcb9ac97836e5945301c080000000000000d1c2c3b4a59697888897a6b5c4e3f312211000000000000051019212933485e73899fb4a48f78634e38230e000000000000091e33485e73899fa0a0a08d78634e38230e0000000000000000000000000000000000000e20313e484a4a4a4a4a4a44392a1805000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000030d171d1f1d170c000000000000000000000000000000000001080b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0802000000000000000000000000000000050c0f0e0a020000000000000000000000000000000000000000000000000000000000000000000000000000000d1f314355677972665b504441536577867b70655a4f443727150200001f34495e717b858d9693806c5845311e0a0000000000000000192d42576c8297acbfaa95806b56412c17020000000a1f344a5f74899fb4b8a38d77624c38230d00001125394c5c66707a848e806c594633304455616b75808a8875614e3b28150200000000000215273846525d68737d8a7c6a584634221000000000000000000000000000000b20364b607487898c8f919396989b9d9fa2a4a7a9acaeb0b3b5b8b6b3b0adaaa7a4a1927c68543f2b160200000000000d1c2b3a4a5968778897998a7a6c5d4f402f1d09000000000615222c353d454d5e73899fb4a48f79644f3a250f000000000000041d32475c72888b8b8b8b8b78634e39240f0000000000000000000000000000000000000213212c3334343434343431281b0c0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000009141c202121212121212121212121212121212121212121212121201d150b000000000000000000000000020d182124231e14080000040d1315120c030000000000000000000000000000000000000000000000000000000000021426384a5b646054493e3236485a6c74695e53483d322719090000001e33485d708498a0a99c8875614d3a27130000000000000000152a3f54697d94a8bead98846e59442f1a050000000b20364b60748ba0b5b7a18c76614c37220d0000142a3f546879838d979c897663503d354b5f737d89929c927d6b5845321f0c0000000000081d314456646f7a869199887563513f2d1b0800000000000000000000000000091e33485d72889da1a3a6a8abadb0b2b4b7b9b8b5b3afacaaa7a4a19e9b9895928f8c8977634e39251100000000000b1c2b3a495868778796a6a8998b7b6d5e4c39240f0000000013243340485059616973899fb4a59079644f3a250f000000000000001c31465b6e74747474747473624e39240f00000000000000000000000000000000000000030f191e1f1f1f1f1f1f1c150a00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000040c11121212121212120e070000000000000000000000000000000000000000000a1927303536363636363636363636363636363636363636363636363631281c0f0300000000000000000009141f2b353a38312617070b1620272a272014060000000000000000000000000000000000000000000000000000000000091b2d3d494f4c42372c212b3d4e5b5f574c41362b20140900000000192d4154677b8fa2b6a4917d6956422f1b080000000000000012273c51667b90a5bab19c87715c47321d080000000c21364b60768ca1b7b5a08b76604b36210b000014293e5366798c9ea9a693806c594634495d708396a5ae9b8875614e3b281502000000000e23374b6074828d98a3a592806e5c4a38251100000000000000000000000000041b30465b70869aafb8bbbbb8b5b2afaca9a6a3a09d9b9795928f8c898683807c7977746e5c48341f0b000000000417293a495867768796a5b4b7a99a8b7c67523c2712000000081c3042515c646c747c858fa1b5a59079644f3a250f00000000000000172b3e505c5f5f5f5f5f5f5e5545331f0b00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000a1720262727272727272722190d0000000000000000000000000000000000000005162737444b4b4b4b4b4b4b4b4b4b4b4b4b4b4b4b4b4b4b4b4b4b4b4b4b45392d20140700000000000005101b26323d484f4d443524121d28333c3f3b3224140300000000000000000000000000000000000000000000000000000000000f1f2c363a3830251a0f1f303e474a443a2f23190d0200000000001125384c5f72869aadad9986725f4b372411000000000000000f24394e63788da2b7b49f8a745f4a35200b0000000d22374c62778da3b8b5a08b745f4a341f0a00000f2337495c6e8294a6af9c897663503d415466798c9fb1a5927d6b5845321f0c0000000014293d52667a8f9faab5ad9e8c7967543f2a150000000000000000000000000000192e43586d8398adaca9a6a3a09d9a9794918f8b888683807c797673706e6b6864625f5b503f2d1905000000000a1f33465867768695a5b4bdad9e8f8070604e3a25100000000d22374b5f6f7780889099a1adb4a29079644f3a250f000000000000000f21323f484a4a4a4a4a4a4943372716030000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000050b0f1216191c1f1f1a12060000000000000000000000000000000000000000000000000000000000000000000000081928343b3c3c3c3c3c3c3c362b1d0c00000000000000000000000000000000000012233445555f606060606060606060606060606060606060606060606060574b3e31251809000000000b17222d38444f5a6461534230232f3a4550544f4232200e0000000000000000000000000000000000000000000000000000000000010e1a2124231d13080112202b333431281c110600000000000000091c3043576a7d91a5b5a28e7a6753402c19060000000000000c21364b60748a9fb4b7a28d77634d38230e0703000e23384e63788fa3b8b49f89735e48331e090000071a2c3f5164778a9cafa693806c594637495c6f8294a7ae9b8875614e3b2815020000001a2e43576c8295aab6a69b90857a6a55402b160000000000000000000000000000162b40556a8095999794918e8b888683807b787673706d6a6764615e5b585653504d4a463e32221000000000000e23384d62758695a4b3bdae9e8f8070615142311e0b0000000e23384d62778b949ca4acb4b2a8978572604d38230e000000000000000313222d33343434343434343026190a00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000d182024272b2e3134342e24160600000000000000000000000000000000000000000000000000000000000000000000122537465052525252525251493b2a1704000000000000000000000000000000000d1e2f40526373767676767676767676767676767676767676767676767675685c4f43362716040000091a28343f4a56616c77715f4d3b35404c57636a614f3d2b1907000000000000000000000000000000000000000000000000000000000000060d0f0e09010000020f181e1f1c150a0000000000000000000014273b4e6175899cb0aa97836f5c4935210e000000000000081d32475c72879cb1baa5907a66503b261f1c181512253a4f64798fa4b9b39d88725d48331e08000000102235475a6c8092a5af9c897663503d3f5264778a9cafa5927d6b5845321f0c0000001f34495d72879bafad99897d72675c4d3a2612000000000000000000000000000014283e53687c8885827d7b7876726f6c6a6764615e5b5855524f4c494643403d3b3835322b21130400000000000d22374c6070808f9eadae9e8f8070615142332414020000000b1f33475b6f8397abb6aea69f978b79675543311d0900000000000000000410191e1f1f1f1f1f1f1f1b140900000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000d1d2a34393c404346494941342413020000000000000000000000000000000000000000000000000000000000000000001a2e425563676767676767655947331f0b00000000000000000000000000000008192b3c4d5e6f828c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c86796d60534534210d000114273846515d68737d8a7c6a584647525e6975806d5a4836241200000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000b1e3246596c8094a7b39f8c7864513e2a17030000000000031a2f44596e8499aebda8937d68543f3834312d2a26263b50657990a5bbb19c87725c47321d070001111e282e3d506275889bada693806c594635475a6d8092a5ae9b8875614e3b29160300001f34495e728699acad99867260554a3e2f1e0b000000000000000000000000000011263b506373726f6c696663605d5a5854524f4c494643403d3a3734312e2c282523201d170f03000000000000091d3043526170808f9e9e8f8070615242332415060000000004182c4054687c90a4a29a938b837b6d5b4a38261401000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000006192b3b474e5154585b5e5d5242311f0e00000000000000000000000000000000000000000000000000000003090c0c0a081c32475c717c7c7c7c7c7c76624d38230e00000000000000000000000000000013253748596b7c8d9fa1a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1988b7d7163503c271200081c304456636f7a85909a887563515964707b878a77665341301e0c0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000003162a3d5064778b9fb2a894826d5946331f0b000000000000172c41566b8095abbfab96826c57504c4946423f3b383c51667b91a7bcb19c87705b46301b06000e1f2f3b424950586a7d90a3af9c89766350464d546275889bada5927d6b584633200d00001b2f4256697c90a4b5a28f7b6754412d20110000000000000000000000000000000c203446565f5d5a5754514e4b484543403d3a3734312e2b2825221f1c191614100e0b070100000000000000000113253443526170808e8f8070615243342415060000000000001125394d607489968e877d776f675e4f3e2c1a09000000000000000000000000000000000000000000000000040c10121416181a1b1b160e030000000008111617171717171717130b010000000a121717171717171717120a0000000000000000000000000e223648596366696d7073705f4e3d2c1b09000000000000000000000000000000000000000000000000000b161e22211f1e1d32475c7288939393938f78634e38230e0200000000000000000000000000001b2f43556677899aabb7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b5a99c8f7d68533e2913000e22374b5f73828c97a3a593826f5f6b76828d999583715f4d3b2917040000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000b1c2b37485b6f8396a9b09d8975624e3b271200000000000014293e53687c92a7bcae99846f6865615e5b5754504d4a52677c93a8bdb09b866f5a442f1a0500182b3d4d575d646b7279879cb1a693806c595a61686f767d93a8ae9b8875624f3c2916030013263a4d6074889bafab9884705d4a36230f00000000000000000000000000000004172838444a4845423f3c393633302d2b2825221f1c191613100d0a070000000000000000000000000000000000071625344251616f7d82716152433425160600000000000000091d3145596d82827a726a635b534c4031200f0000000000000000000000000000000000000000000000000b17202527292b2d2f30302b21130400000d1a252b2c2c2c2c2c2c2c271e110200101d262c2c2c2c2c2c2c2c261d10000000000000000000000014283c5165777b7d8386897d6c5b493827160400000000000000000000000000000000000000000000000b1b2832373634333130465b70879ca8a8a48f78634e392418171514120f080000000000000000001f34495e728495a6b7c1b7b4b4b4b4b4b4b4b4b4b4b4b4b4b4b4b4b4b4b9c5baa9947d68533e29130014283d5165798f9ea9b5ad9e8c7a687d89949faba18f7c6a5846331f0a00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000215283a48545f6a798da2b7a5927d6a55402b1600000000000011263b5065798fa4b9b29c88827d797673706c6966625f5b687d94a9beaf99846e59442f1a04001e32475a6a717880868d94a2b5af9c8976636e757c838a919bacb8a592806c594633200c000a1e3144586b8093a6b3a08d7966523f2b18050000000000000000000000000000000b1a27303433302d2a2724211e1b181513100d0a0600000000000000000000000000000000000000000000000000071624334251606f7162534334251607000000000000000002162a3e5266746e665f574f4740382f2213030000000000000000000000000000000000000000000000091a28343a3c3e40424446453e312210000a1b2b3840424242424242413b2f200f0d1e2e3a41424242424242413a2e1e0d000000000000000000061a2e43576b809194979b9b8a786756453322110000000000000000000000000000000000000000000004172939464c4b4a484644465b70879cb1bba59079644f3a2f2e2c2a2927231b1002000000000000001e33485e73899eb3c4b2a39f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9fa7b7bda8937d68533e2913001a2e42576b8095a9b7a79b90857a6e8397a6b1b1a69a8875624d38230e0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000081c31455866717c8893a5b9a5917c68533f2a150000000000000d23384c61768ca1b6b8a69a96938f8c8886827d7a7773706d8094a9bfad98836d58432e1903001f344a5f74868d949aa2a8b1c0b9a693806d808a90979ea5acb9c2af9c8975624f3b2712000215283c4f63768a9eb1a995826e5b4734210d0000000000000000000000000000000009141c1f1e1b1815120f0c09050000000000000000000000000000000000000000000000000000000000000000000615243342515d5e534435251607000000000000000000000e233648585f5a524b433b342c241c1204000000000000000000000000000000000000000000000000142738464f52535657595b5a4f402d1a061327394954575757575757564d3e2d19182b3c4c55575757575757554c3c2a170000000000000000000c2035495d72869aa9acafa79685736251402f1d0c0000000000000000000000000000000000000000000b2034475761605f5d5b5a585b70869bb0bba59079644f464443413f3e3c382e2010000000000000001d32475c72889cb2bda89489898989898989898989898989898989898a9aaebda8937c67523c2712001e33485d71869aafae9a897d736873889db1b0a094897d71604c37220d00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000a1f344a5f74848f9aa5b1b29f8b76624e3925100000000000000a1f34495e73899eb0bfb7aeaba8a4a19d9a9793908c8986838095abc0ac97836c57422c1702001c3145596d8295a7afb5bcc4cfc3b09d8a76778ca0acb2b9c0c9cbb8a592806a543f2a1500000d2033475a6d8295a8b29e8b7764503d2a16030000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000061523324048494235261707000000000000000000000007192b3a454a463f372f282018100800000000000000000000000000000000000000000000000000001c3044566367686b6c6e706d5d49341f0a192e4356676c6c6c6c6c6c6a5c4935201e33475a696c6c6c6c6c6c695a46321d00000000000000000012263b4f63788da1b5c1c4b4a391806f5d4c3b2a190700000000000000000000000000000000000000000f24394e6375767472706f6e6c6f869bb0bca7917b665c5b5a58565453514b3e2d1b080000000000001b30465b70869bb0bca7917b737373737373737373737373737373738398adbda8937c67523c2712001f34495e728599acae9a86736064788ea2b7a89382766b605343311d090000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000091e32475a6d8091a3b5aba09585705c47331f0a000000000000071c31465b708392a1b0b9bdc0bdb9b6b2afaca8a5a19e9b97949eafc1ac97826b56402b16010016293e5165798ea2b6c9d1d4cec1ad998570708599adc1cdd4d1c9b5a28d7965513d2813000004172b3e5165788c9fb3a793806c5946321f0b0000000000010e181e1f1f1d1c1b1a181716141312100f0e0d0b0a0907060503020100000000000000000000000000000000000000000000000000000000000514222d33342f251708000000000000000000000000000d1c283134322b231b140c04000000000000000000000000000000000000000000000000000000001f344a5f737c7d8083848676604c37210c1b30465b7083838383838377624c372221364b6076838383838383745f4a341f000000000000000004192d41556a7d93a7bbd0d2c1af9e8d7b6a5947362514020000000000000000000000000000000000000010263b5065798b89888786848280869bb0bca7917b7372706f6d6b6a68665c4a37230e0000000000001a2f445a6f8499afbda8937d685e5e5e5e5e5e5e5e5e5e5e5e5e5e6d8398adbca7917b66503b2611001b2f4255697c90a3b6a38f7b6864778a9db0ab988672604e4235261401000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000004182b3d4f61748698a4998e83776955412d190400000000000000192d415464738392a1a4a8abaeb2b5b8bcbfbdbab6b3afaca9afbcc0ab95806a54402b1500000e22364a5e72879aafc2c7c0b9b3a6927d69697d92a6bacac4bcb6af9a86725e4a36220e0000000f2236495c708397aaaf9c8975614e3b27130000000000111f2b3234343231302f2d2c2b2a282726242322201f1e1c1b1a191716151312110f0e0d0b0a0907060100000000000000000000000000000000000511191e1f1b12070000000000000000000000000000000b151c1f1d170f08000000000000000000000000000000000000000000000000000000000000001e33485e7388949597998d78634e38230e1d32475c7288989898988d77624c372222374c61768c9898989889735e48331e00000000000000000b1f33485c708599adc1c3bfc1bbaa99887665544331200f0000000000000000000000000000000000000011263b50667b919f9d9c9a98979595a2b4bda8958b898886848382807d7a65503b2611000000000000192e43586d8398adbfa9947d6954484848484848484848484848586e8499afbca7917b66503b2611001326394d6073889baeab9885715d6d8093a6b5a2907c6a5744311f0c000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000e20324456697b8d92877c70665a4c3a2612000000000000000012253746556473838c8f9396999da0a3a7aaadb1b4b7bbbebfc2bfb2a5947d69543f2a140000071b2f43576b8093a7bab3aca59f978a766262768a9fb2b6afa8a29b93806b57432f1b0700000006192d4054677a8ea2a29a917d6a56412c17000000000b1e2f3d474a49474645444241403f3d3c3b3a383736343332302f2e2c2b2a292726252322211f1e1d1b160c0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001c31475c70879cabaca5907965503b26101d32475c72889dadada38d77624c372223384d62778da3adad9d88725c47321d00000000000000001125394e62768b9fb4beb0a9adb9b7a5948371604f3e2c1b0a00000000000000000000000000000000000012273c52677c92a7b3b1afadacabaab1c0c4b2a5a09e9c9b999897959079644f3a2510000000000000172c41576b8297acc0ab95806b56403333333333333333333343586e8499afbba5907a65503b2611000a1d3144576b7d92a6b4a08d79666376899caeac9a8774614e3b291604000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000031527394c5e70828075695e53483c2e1d0a0000000000000000081928374655657377797d8284888b8f9295989c9fa2a5a9acafafa194877967523d281300000014283c5064778ca0a69f98918a847c6f5b5b6f8397a9a29b948d87807764503c281400000000001124384b5f7286988f867d756855402c160000000014283b4d5a5f5e5c5b5a59575655545351504f4d4c4b4a484746444342403f3e3c3b3a38373634333230291e1000000000000000000912191b1913090000000000000000000000030a0d0c0700000000000000000000000000000000050d1213100900000000000000000000091013120d0400000000000000001a2f445a6f8499afbca7927c67523d28131d32475c72889db3b8a38d77624c372224394e63788fa4b9b19c87705c47321c0000000000000003172b4054687c91a6bab2a0949babbcb2a18f7d6d5b4a39281605000000000000000000000000000000000013283d52677c93a3a5a7a8aaacadafb5c1d0c2b8b5b3b1b0afadaca48f79644f3a240f000000000000162b40556a8095abc0ac97826c57422c1e1e1e1e1e1e1e1e2f445a6f869bb0bba59079644f3a250f000115283b4f62768a9db1a996836f5c6c7d92a4b6a4917d6b594633200e000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000a1c2e405365746d62574c41362b1e10000000000000000000000a19283747565e6265686c6f7276797c8084878a8d9094979b9e918376685b4b3824100000000c2134485d708599928b847c766f68605254687c90958e878079726b64594835210c0000000000081b2f4256697c857b726a61594b39261200000000182d42576a747372706f6e6c6b6a68686665646361605f5d5c5b5a585756545352504f4e4c4b4a4847453c2e1e0c000000000007111b262d302e261a0c0000000000000000000c171e22211c140d060000000000000000000000000a17212728241c100300000000000004111d25282721160900000000000000182d42576c8398adbea9947d69543f2a141d32475c72889db3b7a18c76604b3621253a4f647990a5bbb09b86705b46301b00000000000000091d32465a6f8397acbfab97838d9fb0bead9c8b79685645342312000000000000000000000000000000000013293e53687d8c8f9091939597989aa3b4c7baaca5a7a8a9abacaea38e78634e38230e00000000000014293e53687d94a9bead98836e58432e190300000000001a2f445a6f869bb0b9a48f79644f3a250f00000c2033465a6d8295a8b29f8b77646175889badae9b887563503d2a18050000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000011233547575f5b50453a2f24190d0000000000000000000000000a19293843494d5053575a5d6064676b6e7174787b7d838689807265584b3d2d1b0800000005192d4155697d857d767069625b544d434c6075888279726c655e5750483b2b180500000000000013263a4d607170685f564e453b2d1c0a000000001a2f445a6f8489888786848382807d7c7b7978777675747271706f6d6c6b6a686766646362605f5e5c594c3b2815000000050f1a242e38424642382a1908000000000000000c1c2933373630282119120a010000000000000000081928343c3d382e201306000000000714222f393e3c34271807000000000000162b40566b8095abc0ab96826b56412c171d32475c72889db3b7a18c76604b3621263b50667b91a6bbaf9a866f5a442f1a000000000000000f24384c60758a9eb2b9a5917c8292a3b5baa89786746352402f1e0d0000000000000000000000000000000013283d5266757778797b7d8082838697acc2af9c909193949697999b8d77624c37220d00000000000013283d52677c93a7bcaf99846f5a442f1a0500000000001b30465b70869bb0b9a48f78634e38230e000004172a3e5164788c9fb2a894826d5a6a7d90a3b6a592806c5a4734200b0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000006182a39444a473e33281d120700000000000000000000000000000b1a263034383b3f4245484c4f5256595c606366696d70736f6255473a2d1f0f000000000012263a4e62737069625b554e4740393145596d736c655e58514a433c352b1d0d000000000000000a1e3143535e5d544c433a32291d0f00000000001b30465b70869b9d9c9b99989795949391908f8d8c8b8988878684838280807d7c7b797877767473726a58442f1a00000b17222c36414b555b564837261403000000000005182a3a464c4a433c352d261e1305000000000000051626374650534b3e3124160900000b1825323f4c53504536251403000000000014293f53687d94a8bead98836d58432e191d32475c72889db3b7a18c76604b3621273c52677c92a7bcaf99846e58432e1900000000000001162a3e53677b90a4b8b39f8a76748697a8bab5a392826f5e4d3c2a19080000000000000000000000000000000e233648586062636567686a6b6d8095abc0ac97827b7c7d828384868776604b36210c00000000000011263b50667b91a6bbb09b86705b46301b0600000000001b30465b70879cb1b9a48f78634e38230e0000000e2235495c6f8396aab09d89766260738699a89f958a77634d38230e00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000c1b283134332b21160b000000000000000000000000000000000009141b202326292d3033373a3d4144474b4e5154585b5f5d5144372a1c0f0100000000000b1f3345555e5c554e474039332c252a3d4f5c5e58514a433d362f2821180d000000000000000001142635424949413830271e160c0000000000001d32475c71879cb1b1b0afadacaba9a8a7a5a4a3a1a09f9d9c9b99989795949392908f8e8d8c8a8987705b46301b00091a29343f49535d677066554332211000000000000f22354858615f575049413a302314020000000002122333445464685c4f4134271a0c0e1b283643505d68635342322110000000000012273c52677c91a7bcaf9a866f5a45301b1e33485d72889db3b7a18c76604b3621293e53687d93a8bdad98836c57422d18000000000000071c3044596d8296aabfad98847068798b9cadbeb09f8d7c6a594837251403000000000000000000000000000007192b3a464b4c4e50525354576a8095abc0ac97827068696b6c6e6f716e5d4934200a0000000000000f253a4f64798fa4b9b19c87725c47321d0700000000001c32475c70879cb1b8a38d77624d38230e00000006192c4053677a8ea1a39a927d6b56697c8f958c82776e5e4b37220d0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000a151c1f1e180f040000000000000000000000000000000000000000070b0e1114181b1e2225282c2f3236393c4043464a48403326190c0000000000000003162737434948413a332c261e181120313e4849443d362f29211b140d05000000000000000000000817252f34342e251c140b02000000000000001e33485d72889da7a8a9abacadaeafb0b2b3b4b5b7b5b4b3b1b0afadacaba9a8a7a5a4a3a2a09f9b866f5a45301b0014273847515c66707a8472614f3e2d1c0b00000005182b3e516476736b645d554d4132200c000000000f2030415162727a6d5f5245372a1d1f2c394653616e7b7060503f2e1e0d0000000010253a4f64798fa4b9b19c87715c47321d1e33485e73899fb4b7a18c76604b36212a3f54697d94a9bfac97826b57412c170000000000000e22364b5f73889cb1bba7927d695b6d7d8fa1b2bcab9a897766544332210f0000000000000000000000000000000d1c29323637393b3c3e3f546a8095aabeb29f8f806f5f5657595a5c5b50402e1a060000000000000e23384e63788da3b8b39d88735e48331e0900000000001d32475c72889db3b8a38d77624c37220d000000001024374b5e7285988f877d7568555f728582786f645b50412f1c080000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005090d1014171a1d2124272b2e3134332d2216080000000000000000000a19263034332d261f18110a040213212c33343029221b140e07000000000000000000000000000007121b1f1f1a1209000000000000000000001f344a5f748990919394959798999a9b9c9e9fa0a1a3a4a5a7a8a9abacadafb0b1b2b3b4b6b5af99846e58442f19001c304456646e78838d90806d5c4b3928170600000e2134475b6e8287807870695f4f3c28130000000c1d2d3e4e5f6f808b7d706255483b2d2f3d4a576471808c7d6e5d4c3c2b1a090000000e23384e63778da3b8b39e89735e49341f1e33485e73899fb4b7a18c76604b36212b40556a8095abc0ab95806b56402b1600000000000014283d5165798ea2b7b4a08c77634f60718394a5b7b7a6958472614f3e2d1c0a0000000000000000000000000000000b161d2022242627293e53677a8ea1b4bdae9e8e7d6e5e4e444547463f322311000000000000000d22374c61768ca1b7b49f8a745f4a341f0a00000000001d32475c72889db3b7a18c77624c37220d00000000081b2e4255697c857b736a61594b5567776f655c52483e3223120000000000000000000000000000040c12191c1c170e0300000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000003080c0f1216191c1f1e191105000000000000000000000009141b1f1e19120b0400000000030f191e1f1b150e0700000000000000000000000000000000000000000000000000000000000000000000001f34495e7278797b7c7d80828384868788898a8b8c8d8f90919394959798999b9c9d9e9fa1a2a398836c57422d18001f344a5f73828c96a09c8c7a6857463523120105182b3e5164778a9b948c857d6b56402b1600000317293b4b5c6c7d8e9c8f827366584b3e404d5a687582909c8c7a6a59493826130000000c21364b60768ca0b5b5a08b76604b36211e33485e73899fb4b7a18c76604b36212c41566b8297acbfaa95806a543f2a150000000000061a2e43576b8095a9bdae9a86715d485465768899aabbb2a1907d6d5c4b3928170600000000000000000000000000000003090b0d1322313d434b5e718598a7b7bcac9c8c7c6c5c4c3d32312c221405000000000000000b20364b60758ba0b5b5a08b76604b36210b0a0a0a0a0a1e33485e73899fb3b7a18c76604b36210b00000000001326394d607170685f574e453b4a5a625c52493f352b2114050000000000000000000000040a11191f262e32312b20130300000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001b2f43546163656667686a6b6c6e6f7072737476777879797b7c7d80828384868788898b8c8d8e8f826b56412c17001e33475b6d8091a3b2a9988675635241301e0d0e2134475a6d8294a7a7a08c7965523e29140000091e32465969798a9bab9f918476695c4e515e6b788693a0a99988776755422e1a0500000a1f344a5f73899fb4b7a28d77624d38231e33485e73899fb4b7a18c76604b36212d42576c8398adbea9947d68533e291300000000000c2135495d72869bafbca894806b564247596a7b8d9eafbfae9c8b79685746352312010000000000000000000000000000000002122131404f58565467798999a9b8baaa9a8b7a6a5a4b3b2b1b100400000000000000000a1f34495e73899fb4b7a28d77624c37221f1f1f1f1f1f1f33485e73899fb4b6a18c76604b36210b00000000000a1d3143535e5d544c433b322c3c474c493f362c22180f04000000000000000000020911181e262c333b4247463e31210f0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000132536444c4e50515253545657585a5b5c5e5f60626364656668686a6b6c6e6f70727374767778797b6a55402b1600182b3e5061738597a8b5a49382705e4d3c2b1a182b3e5164778a9eb1aa9784705d4936230f00000b21364b60758797a4b1afa29587796c5f616f7c8997a4b1afa29585715c47321d070000071d32475c72889cb1b9a48f79644f3a251e33485e73899fb4b7a18c76604b36212e43586e8499aebda8937c67523d2813000000000012273b4f64788da1b5b6a28d7965503c3b4c5d6f8091a3b4baa9988675635241301e0d000000000000000000000000000000011120303f4f5e6c695a5b6b7a8b9baabab8a999897869594939291a0a0000000000000000071d32475c72889db3b8a38e78634e383434343434343434344a5f74899fb4b5a08b745f4a341f0a000000000001142635424949413930271f1e2b3337352d23191005000000000000000001090f161e252b333a40484f555c5a4f3e2b1804000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000818263138393b3c3d3e3f404243444647484a4b4c4e4f50515354555657585a5b5c5e5f60626364665e4e3b2713000f2132445667798b9caeb09f8e7c6b5a4837262134475a6d8294a7b5a28e7a6754402d1a0600000a1f33485b6b788693a1aeb2a5988b7d6f72808d9aa7b4ac9f918476695844301b060000011b30455a6f869bb0bba7917b66513c271e33485e73899fb4b6a18c76604b36212f445a6f869aafbca7917b66513c27120000000004192d41556a7d93a7bcb09b87725e4a362f405162738596a7b9b5a49382705f4d3c2b1a0800000000000000000000000000000f1f2f3e4e5d6d7c78695b5d6c7c8c9cacbbb7a79787776757473828180800000000000000001c31465b70879cb1b9a48f79644f4a4a4a4a4a4a4a4a4a4a4a5f748ba0b5b5a08b745f4a341f0a0000000000000817252f34342e251d140b0d181f22201910060000000000000000010d161d242b323940474e555c636a716d5b47331f0b000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000009151e2324262728292a2b2d2e2f303233343637383a3b3c3d3f40414243444647484a4b4c4e4f504c40311f0c00031527384a5b6d8090a2b4ac9a8977665544322b3e5164778a9eb1ac9986725e4b38241100000004182b3d4d5a687583909eabb6a89b8e8083909eabb7a99c8f827366584b3b281501000000192e43586e8398adbda8937d68533e291f344a5f74899fb4b5a08b745f4a352030465b70869bb0bba5907a66503b2611000000000b1f33485c708599adbeaa95826c58432f2233455667788a9bacbeb09f8e7c6b5a48372615040000000000000000000000000e1e2d3d4d5c6c7b8c88796a5c5e6e7d8e9eadbdb5a595867565554636261606000000000000001a2f445a6f869aafbba6917b665f5f5f5f5f5f5f5f5f5f5f5f5f748ba0b5b49f89735e49341f0a0000000000000007121b1f1f1a1209010000040a0d0b0600000000000000000002121f2a31383f464d545b626970777d8576624e3a2612000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000008182631363737373737373737373737373737373737373737373737373737373737373737383a3b382f2213020000091a2c3e4f61728596a8b8a795847261503f34475a6d8294a7b7a3907c6956422f1b08000000000e1f2f3d4a576472808d9ba8b5ac9e9294a1aeb3a6998c7d706355483b2d1d0c00000000172c41576b8297acc0ab95806b56402b1f344a5f748ba0b5b5a08b745f4a341f32475c71879cb1b9a48f79644f3a250f000000001125394e62768b9fb4b7a38f7a66523d29162738495b6c7d8fa0b1bdac9a897766554432211000000000000000000000000d1d2c3c4b5b6b7a8a9a98897a6b5d5f6f808f9faebeb3a394847364544434241505000000000000192e43586e8498adbca7927c7474747474747474747474747474768ca1b7b49f89735e48331e0900000000000000000000000000000000000000000000000000000000000000000f20303d454c535a61686f767c848b92927d6955412d190500000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001142636444b4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4b4234241204000000000f2032435567788a9cadb3a290806e5c4b3d5063778a9eb1ae9b8873604d39261300000000010d161f2c394754616f7c8a97a7baafa6a7b1b6a496897a6d605245372a1d0f0400000000152a3f546a8094a9bfac97836c57422d1f344a5f748ba0b5b5a08b745f4a341f33485d72889db3b9a48f78634e38230e00000003172b4054687c92a6bab19d8974604b37230f1a2c3d4e5f708294a5b6b8a795847261503f2e1c0b0000000000000000000c1c2b3b4a5a69798999a8a7988a7b6c5c61708290a0b0bfb2a2928272625242332313030000000000172c42576c8297acbeaa968b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b90a3b8b39d88735e48331e090000000000000000000000000000000000000000000000000000000000000000182b3e4e5960676e757c838a91989fa69985705c4834200c000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000081c304354606262626262626262626262626262626262626262626262626262626262626262625f52412d19050000000003142637495b6c7d90a2b3ae9d8c7a6958475a6d8093a7b8a5927d6a5744311d0a00000002121f29323b444d565f6770798ba0b5c1bbbcc3b09b86776b625950473d342b21140500000013283d52677c93a7bcaf99846f5a442f23344a5f748ba0b5b5a08b745f4a342534495e73899fb4b8a38d77624c37220d000000091d32465a6f8397acbfab97836e5945311c080e1f30425364758798aabbb3a291806e5d4b3a291706000000000000000b1a2a3a495968788898a7b7b6a8998a78635262728292a1b1c0b0a09080706151413121120200000000162b40566b8095abc0b3a5a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a2aec0b39d88725c47321d0700000000000000000000000000000000000000000000000000000000000000001e33475b6c747b828990979ea5acb3b4a08c77634f3b27130000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000b20354a5f72777777777777777777777777777777777777777777777777777777777777777777705d48331e080000000000081a2c3d4f60728495a7b9a9988775645263768a9db0b09c8975624e3b2815010000000f20303c454e576069727b858d97a6b9cdd0d1c7b39f918880756c635a50473e32231200000011263b50667b90a5bbb19c87705c4732383d4a5f748ba0b5b5a08b745f4a3f39344a5f748ba0b5b7a18c76614c37220c0000000f24384c60758a9eb2b9a5907c68533f2b1602021324354758697a8c9daebfae9d8c7a6958473524130100000000000a192938485867778797a6b6baaa9b8b7b6b5c495463738493a3b3beae9e8f806f5f4f3f30201000000000142a3f54697d92a2b2c2b9b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b7bfbcaf9d88725c47321d0700000000000000000000000000000000000000000000000000000000000000001f344a5f74888f969da4abb2b9c0c7bba7937d6a56422e1a0600000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000d22374c61768c8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d88725c47321d080000000000000e2031435566778a9badb6a49382705f6d8093a6b9a794806d5946331f0c00000000182b3e4e59616a737c868f98a0a9b4bcc2cec5bcb9aea59b928980766d645a50412f1c0800000f24394e63788fa3b8b39d88735e48464c52575f748ba0b5b5a08b745f59534e484b60768ca1b6b5a08b75604b36210b000001162a3e53677b90a4b8b39f8a75614d39241000000618293a4b5d6e8091a2b3bba9988775645341301f0e0000000009182837475666758695a5b4bbab9c8c7c6c5d4d3e455565758595a5b4bdad9d8e7d6d5d4e3e2e1e0e00000012273c5064748494a4b4b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5ac9e9183705b46311c0600000000000000000000000000000000000000000000000000000000000000001c3145596d8295a9b1b8bfc6cdd4d6c2ae9a86715d4935210d00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000e23384d63778da3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a39c87705b46311c0700000000000002142537495a6c7d90a1b3b19f8e7d6b768a9db0b29e8b7764503d2a1603000000001e33475b6b757d879099a2abb4b1a9a7b0bfb5a8a4abb3afa59c938a80776d5e4b37220d00000d22374c62778ca1b7b5a08b7460555b60666c72778ba0b5b5a08b78736d68625d5762778da2b7b49f8a745f4a341f0a0000081c3044596d8296aabfac98846f5b47321e0a0000000b1d2e3f5061738495a7b8b6a59382705f4e3d2b1a09000007172736465565748594a4b3bcac9d8d7d6d5e4e3f2f37475766768796a6b6bbab9c8c7b6c5c4c3c2c1b0900000d2134465666758696a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a09b8e80726555422d19040000000000000000000000000000000000000000000000000000000000000000162a3e5265798ea2b6cad4dae1e9ddc9b5a18d7865503c291400000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000f243a4f64788fa4b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b09b866f5a45301b0600000000000000081a2b3d4e60718395a7b8ac9b89778093a6b9a995826e5b4834210e00000000001f344a5f7387929ba3acb5b0a79e9593a1b4aa978f98a0aab3afa69d948a77634d38230e00000b20354a5f748b9fb4b7a28d7764696f757a82878c94a4b8b8a5948d88837c77716c66788ea3b8b49f89735e48331e0900000e22364b5f73889cb1bba6927d6955402c18040000000010213344556677899aacbdb1a08f7d6c5a493826130006162535445464738393a3b2bdae9e8f7d6f5f4f4030212939495868788898a8b7baaa9a8a7a6a5a4a38251100000517283848586777888b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b7d6f6255473725120000000000000000000000000000000000000000000000000000000000000000000f22364b5e72879bafc3d7ebf6f8e4d0bca894806c5843301c070000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000011263b50657990a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a099846e58442f190400000000000000000d1f3143546677899bacb8a796858a9db0b3a08d7966523f2b180500000000001c3044576a7d91a5b6afa69d948b82879cb1a7917b848d97a0a9b3a895826d5a4734200b0000091e33485d72889db3b9a48f78787d848a8f959ba1a7b1c1c2b2a7a29c97918c86827b798fa4b9b39d88725c47321d08000014293d5165798ea2b7b4a08c77634e3a2611000000000004152637495a6b7c8e9fb0bdac9b8a786755422e1a00122434435362728292a1b1beae9e8f80706051413122121b2b3a4a5a6a798a99a9b9b8a89889786855402b160000000a1a2a3a4a5969747474747474747474747474747474747474747474746c5f514437291a08000000000000000000000000000000000000000000000000000000000000000000071b2f43576b8094a8bcd0e4f8faebd7c3af9b87735f4b37230f0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000012273c51667b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b836c57422d1803000000000000000002132536485a6b7d8fa1b2b3a29497a6b9ab9784705d4a36230f00000000000014273b4e6175889ca49b9289807770879cb1a7917b707a848d96a09e8b7764513e2b18050000041c31465b70879bb0bba692888d93999ea4aaafb5bbc1bcb9bebcb6b1aba6a09b958f8a93a7bbb19c87705c47311c0700061a2f43576c8095a9bdae9a86715d4834200b000000000000091a2b3c4d5f708293a4b5ab9e9285715c47321d001a2e415261718291a0b0bfafa0908070615142322313040d1c2c3c4c5b6b7b8b9babbaac9c8d7c6b56412c17000000000c1c2c3c4b595f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5b4e413426190b000000000000000000000000000000000000000000000000000000000000000000000014283c5064788da0b4c8dcede6dfd8cab6a28e7966523e2a160200000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000011263b5064747474747474747474747474747474747474747474747474747474747474747474746955412c170100000000000000000007192b3c4e5f718395a6b8b1a9aab4b5a28f7a6754412d1a070000000000000b1e3245586c8093918880766d6472889cb2a5907964677079838d95826e5b4835220f000000001a2f445a6f8499afc1afa19ca2a7adb3b8bebdb8b2aca7a4a9afb5bac0bab5afaaa49fa3b1c2b09b86705b46301b06000c2135495d72879bafbca894806a56422e1905000000000000000d1f30415263758698a6998d80736857442f1b001f34495d7080909fafbeb0a19182716252433324140400000e1e2e3d4d5d6d7c8d9cac9e8f7d6e5e4e3b281300000000000e1e2d3b464a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a473e302316090000000000000000000000000000000000000000000000000000000000000000000000000d2135495d718699adc1d5d9d2cbc4bdb7a995826d5945311d080000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000d213547575f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5a4c3a261200000000000000000000000d1f3042536576899aacbebebfc0ac9986725f4b382511000000000000000215293c506376877d756c635a5c72889db3a5907964545d667079837865523e2b180500000000182d42576c8397acc1beb4b1b6bcbfb9b4aea9a39e98928f959aa0a6acb1b7bdbeb9b4b7c0c4af9a866f5a442f1a050013273b5064788da1b5b6a28d7864503c2713000000000000000001122335465768798b95887b6f62564a3a2815001f34495d707d8d9caab1a29283726353443425150600000000101f2f3f4f5e6e7d8e9e908070605040301f0c0000000000000f1d2a3234343434343434343434343434343434343434343434332b20130500000000000000000000000000000000000000000000000000000000000000000000000000061a2e42566a7d92a6bacbc4beb7b0a9a29c958874604b36210c00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005182a39444a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a463c2e1d0a00000000000000000000000113243648596b7c8fa0b1c3cab7a4907c6956432f1c0800000000000000000d2033475a6d736a61584f485d72889db3a48f79644f4a535d666f6d5c4936230f0000000000162b40556a8095a6b2bec1bbb5b0aaa59f9a948f89847d7a80868c92979da3a8aeb4babfbfb2a699846e58432e190300192d41566a7d93a7b8b09b87725e4a36210d000000000000000000061728394b5c6d7d83766a5e5145382c1c0b001a2e4151606f7d8c9aa39484746455453526160700000000000111213140506070808f827161514232221201000000000000000c171d1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1e180f0200000000000000000000000000000000000000000000000000000000000000000000000000000013263b4e63778b9fb3b7b0aaa39c958e88827971604b36210c000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000c1b283134343434343434343434343434343434343434343434343434343434343434343434322a1e100000000000000000000000000007192a3c4d5f708294a6b5b5ae9b8874604d3a271300000000000000000004172a3d4f5c5e574e453c485e73899fb4a48f78634e384049535b5a4f3e2c1906000000000014293e53687c8995a1adaca7a19b96908b868079746f69666c71777c83898e949a9fa5abaea195887b6b56422d1803001e33485c7085979da3aa95826c58432f1b07000000000000000000000b1c2d3e4f61717266594c4034271b0e000011233342515f6d7c8b95857565564637271708000000000000000313223242516170827363534333241404000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000b1f33475b6f8498aaa39c958f888279736c655e5343301c0800000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000a151c1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1d170d0000000000000000000000000000000c1e3041536476889aa0a0a0927d6b5844311e0a000000000000000000000e20313e4849443b3233485e73899fa0a08f78634e382d364046463e31210f0000000000001125394d5e6b77838f9b97928d87827b76706b65605a5451575d63686e747980868b91979c9084776a5e4e3b281300001f34495e727c83898f958f7a66523d29150000000000000000000000000f213243535f5f54483b2f22160900000005152432414f5e6c7a867666574738281909000000000000000000041423334352626d65554535261606000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000004182c4054687c91968f88827a736c655f58514a42352514010000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000112243547596a7c8b8b8b8b8976624f3b281502000000000000000000000213212c333430271f344a5f748a8b8b8b8b77624d3823232c31312b2013030000000000000a1d2f404d5966717d89837d77726d67615c56514b46403d43484e545a5f656b70767c8288807266594c40301f0c00001b2f435461686e747a828874604b37230e00000000000000000000000003142535424a4a42372a1e1105000000000006142331404e5c6a7468584839291a0a000000000000000000000005152535445258544737271708000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001125394d617588827a736d665f58514b443d362f25170800000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000618293b4d5e7074747474746d5a4633200c000000000000000000000000030f191e1f1b141f34495d70747474747471604b362110181c1c170e0300000000000000001222303c4854606c746e69635d58534d47423c37312c292e343a3f454b50565c62686d736e6155483b2f2212010000132536444d535a60666d736d5945311c08000000000000000000000000000817252f35352f25190c0000000000000000051322303e4d5a5f584a3a2b1b0b00000000000000000000000000071726343f43403729190900000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000a1e32465a6d746d666058524b443d363029221b1207000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000c1e2f41515d5f5f5f5f5f5c4f3d2a1703000000000000000000000000000004090a07061a2e41515d5f5f5f5f5f5e5343301c08000000000000000000000000000004121e2a36434e5a5f5a544f49433e38332d28221d17141a1f252b31363c42484d53595e5c5043372a1e110400000008182631393f454b52585e5c4f3d2a1602000000000000000000000000000007131c20201c1308000000000000000000000412202f3c464a453b2c1c0d0000000000000000000000000000000817222b2e2c24190b00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000003172a3d4f5c5f59524b443e373029221c150e070000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000012233341494a4a4a4a4a483e31200e000000000000000000000000000000000000000011233341494a4a4a4a4a494235251401000000000000000000000000000000010d1925313d474a45403a352f29241e19130e080200050b11161c22282d33393f4449483e3226190d00000000000009151e242b31373e4449483e31200e0000000000000000000000000000000000070b0b070000000000000000000000000002111e2a323431291d0e0000000000000000000000000000000000050f161917110700000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000e20313e484a453e373029231c150e07000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000515232e343434343434332c21130200000000000000000000000000000000000000000515232e343434343434342f25170800000000000000000000000000000000000007131f2b3234312b26201b150f0a04000000000000000001080d13191f242a3034332c2115080000000000000000020a10161d23293034332c2113020000000000000000000000000000000000000000000000000000000000000000000000000d171d1f1d160c0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000213212c3334312a231c150f08010000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005111a1f1f1f1f1f1f1e190f030000000000000000000000000000000000000000000005111a1f1f1f1f1f1f1f1b12070000000000000000000000000000000000000000020e181e1f1c17110c0600000000000000000000000000000000040a10161b1f1e190f0300000000000000000000000002080f151b1f1e190f03000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000030f191e1f1c160f080100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 + m_StreamData: + offset: 0 + size: 0 + path: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/ModResources/Fonts/ZCOOLKuaiLe-Regular SDF.asset.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/ModResources/Fonts/ZCOOLKuaiLe-Regular SDF.asset.meta" new file mode 100644 index 00000000..cd54fa0a --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/ModResources/Fonts/ZCOOLKuaiLe-Regular SDF.asset.meta" @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 8ebfeea7062344f0c96b8a1d614a92b1 +NativeFormatImporter: + externalObjects: {} + mainObjectFileID: 11400000 + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/ModResources/HatMaterials.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/ModResources/HatMaterials.meta" new file mode 100644 index 00000000..15ca986b --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/ModResources/HatMaterials.meta" @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 1414377055912fa40a8c72fe2add8967 +folderAsset: yes +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/ModResources/HatMaterials/GlassesMaterial.mat" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/ModResources/HatMaterials/GlassesMaterial.mat" new file mode 100644 index 00000000..ec0048c1 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/ModResources/HatMaterials/GlassesMaterial.mat" @@ -0,0 +1,77 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!21 &2100000 +Material: + serializedVersion: 6 + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_Name: GlassesMaterial + m_Shader: {fileID: 46, guid: 0000000000000000f000000000000000, type: 0} + m_ShaderKeywords: + m_LightmapFlags: 4 + m_EnableInstancingVariants: 0 + m_DoubleSidedGI: 0 + m_CustomRenderQueue: -1 + stringTagMap: {} + disabledShaderPasses: [] + m_SavedProperties: + serializedVersion: 3 + m_TexEnvs: + - _BumpMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _DetailAlbedoMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _DetailMask: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _DetailNormalMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _EmissionMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _MainTex: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _MetallicGlossMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _OcclusionMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _ParallaxMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + m_Floats: + - _BumpScale: 1 + - _Cutoff: 0.5 + - _DetailNormalMapScale: 1 + - _DstBlend: 0 + - _GlossMapScale: 1 + - _Glossiness: 0.5 + - _GlossyReflections: 1 + - _Metallic: 0 + - _Mode: 0 + - _OcclusionStrength: 1 + - _Parallax: 0.02 + - _SmoothnessTextureChannel: 0 + - _SpecularHighlights: 1 + - _SrcBlend: 1 + - _UVSec: 0 + - _ZWrite: 1 + m_Colors: + - _Color: {r: 1, g: 1, b: 1, a: 1} + - _EmissionColor: {r: 0, g: 0, b: 0, a: 1} diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/ModResources/HatMaterials/GlassesMaterial.mat.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/ModResources/HatMaterials/GlassesMaterial.mat.meta" new file mode 100644 index 00000000..a6af9814 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/ModResources/HatMaterials/GlassesMaterial.mat.meta" @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 1acefd150eaed40838351a00d9ea7163 +NativeFormatImporter: + externalObjects: {} + mainObjectFileID: 2100000 + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/ModResources/HatMaterials/PartyHatMaterial.mat" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/ModResources/HatMaterials/PartyHatMaterial.mat" new file mode 100644 index 00000000..2358fdfc --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/ModResources/HatMaterials/PartyHatMaterial.mat" @@ -0,0 +1,77 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!21 &2100000 +Material: + serializedVersion: 6 + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_Name: PartyHatMaterial + m_Shader: {fileID: 46, guid: 0000000000000000f000000000000000, type: 0} + m_ShaderKeywords: _EMISSION + m_LightmapFlags: 0 + m_EnableInstancingVariants: 0 + m_DoubleSidedGI: 0 + m_CustomRenderQueue: -1 + stringTagMap: {} + disabledShaderPasses: [] + m_SavedProperties: + serializedVersion: 3 + m_TexEnvs: + - _BumpMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _DetailAlbedoMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _DetailMask: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _DetailNormalMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _EmissionMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _MainTex: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _MetallicGlossMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _OcclusionMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _ParallaxMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + m_Floats: + - _BumpScale: 1 + - _Cutoff: 0.5 + - _DetailNormalMapScale: 1 + - _DstBlend: 0 + - _GlossMapScale: 1 + - _Glossiness: 0.5 + - _GlossyReflections: 1 + - _Metallic: 0.215 + - _Mode: 0 + - _OcclusionStrength: 1 + - _Parallax: 0.02 + - _SmoothnessTextureChannel: 0 + - _SpecularHighlights: 1 + - _SrcBlend: 1 + - _UVSec: 0 + - _ZWrite: 1 + m_Colors: + - _Color: {r: 1, g: 1, b: 1, a: 1} + - _EmissionColor: {r: 0.35830164, g: 0, b: 1, a: 1} diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/ModResources/HatMaterials/PartyHatMaterial.mat.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/ModResources/HatMaterials/PartyHatMaterial.mat.meta" new file mode 100644 index 00000000..3eabb44d --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/ModResources/HatMaterials/PartyHatMaterial.mat.meta" @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: bdf0bf742eef44db49906f57d30ad905 +NativeFormatImporter: + externalObjects: {} + mainObjectFileID: 2100000 + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/ModResources/HatMaterials/TopHatMaterial.mat" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/ModResources/HatMaterials/TopHatMaterial.mat" new file mode 100644 index 00000000..80803023 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/ModResources/HatMaterials/TopHatMaterial.mat" @@ -0,0 +1,77 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!21 &2100000 +Material: + serializedVersion: 6 + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_Name: TopHatMaterial + m_Shader: {fileID: 46, guid: 0000000000000000f000000000000000, type: 0} + m_ShaderKeywords: _EMISSION + m_LightmapFlags: 0 + m_EnableInstancingVariants: 0 + m_DoubleSidedGI: 0 + m_CustomRenderQueue: -1 + stringTagMap: {} + disabledShaderPasses: [] + m_SavedProperties: + serializedVersion: 3 + m_TexEnvs: + - _BumpMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _DetailAlbedoMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _DetailMask: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _DetailNormalMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _EmissionMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _MainTex: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _MetallicGlossMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _OcclusionMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _ParallaxMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + m_Floats: + - _BumpScale: 1 + - _Cutoff: 0.5 + - _DetailNormalMapScale: 1 + - _DstBlend: 0 + - _GlossMapScale: 1 + - _Glossiness: 0.5 + - _GlossyReflections: 1 + - _Metallic: 0 + - _Mode: 0 + - _OcclusionStrength: 1 + - _Parallax: 0.02 + - _SmoothnessTextureChannel: 0 + - _SpecularHighlights: 1 + - _SrcBlend: 1 + - _UVSec: 0 + - _ZWrite: 1 + m_Colors: + - _Color: {r: 0.2924528, g: 0.2924528, b: 0.2924528, a: 1} + - _EmissionColor: {r: 2.7169812, g: 0.36448562, b: 0, a: 1} diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/ModResources/HatMaterials/TopHatMaterial.mat.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/ModResources/HatMaterials/TopHatMaterial.mat.meta" new file mode 100644 index 00000000..0b9a0f55 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/ModResources/HatMaterials/TopHatMaterial.mat.meta" @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 3869da5c1b38e487aaa31c9021e4134f +NativeFormatImporter: + externalObjects: {} + mainObjectFileID: 2100000 + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/ModResources/HatMaterials/WizardHatMaterial.mat" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/ModResources/HatMaterials/WizardHatMaterial.mat" new file mode 100644 index 00000000..881a96bd --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/ModResources/HatMaterials/WizardHatMaterial.mat" @@ -0,0 +1,77 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!21 &2100000 +Material: + serializedVersion: 6 + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_Name: WizardHatMaterial + m_Shader: {fileID: 46, guid: 0000000000000000f000000000000000, type: 0} + m_ShaderKeywords: + m_LightmapFlags: 4 + m_EnableInstancingVariants: 0 + m_DoubleSidedGI: 0 + m_CustomRenderQueue: -1 + stringTagMap: {} + disabledShaderPasses: [] + m_SavedProperties: + serializedVersion: 3 + m_TexEnvs: + - _BumpMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _DetailAlbedoMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _DetailMask: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _DetailNormalMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _EmissionMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _MainTex: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _MetallicGlossMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _OcclusionMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _ParallaxMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + m_Floats: + - _BumpScale: 1 + - _Cutoff: 0.5 + - _DetailNormalMapScale: 1 + - _DstBlend: 0 + - _GlossMapScale: 1 + - _Glossiness: 0.281 + - _GlossyReflections: 1 + - _Metallic: 0.556 + - _Mode: 0 + - _OcclusionStrength: 1 + - _Parallax: 0.02 + - _SmoothnessTextureChannel: 0 + - _SpecularHighlights: 1 + - _SrcBlend: 1 + - _UVSec: 0 + - _ZWrite: 1 + m_Colors: + - _Color: {r: 0.2830189, g: 0.24697402, b: 0.24697402, a: 1} + - _EmissionColor: {r: 0, g: 0, b: 0, a: 1} diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/ModResources/HatMaterials/WizardHatMaterial.mat.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/ModResources/HatMaterials/WizardHatMaterial.mat.meta" new file mode 100644 index 00000000..5bac3e31 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/ModResources/HatMaterials/WizardHatMaterial.mat.meta" @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 620d51c84c6b5432e8cad9adb5edfc64 +NativeFormatImporter: + externalObjects: {} + mainObjectFileID: 2100000 + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/ModResources/HatMeshes.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/ModResources/HatMeshes.meta" new file mode 100644 index 00000000..9a9c6444 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/ModResources/HatMeshes.meta" @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 27fb7e293d846ba4cab02db104ed6c1d +folderAsset: yes +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/ModResources/HatMeshes/GlassesMesh.fbx" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/ModResources/HatMeshes/GlassesMesh.fbx" new file mode 100644 index 00000000..2fd9e143 Binary files /dev/null and "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/ModResources/HatMeshes/GlassesMesh.fbx" differ diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/ModResources/HatMeshes/GlassesMesh.fbx.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/ModResources/HatMeshes/GlassesMesh.fbx.meta" new file mode 100644 index 00000000..ff50e60a --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/ModResources/HatMeshes/GlassesMesh.fbx.meta" @@ -0,0 +1,97 @@ +fileFormatVersion: 2 +guid: be949c77dc28c459280b4981f6495d99 +ModelImporter: + serializedVersion: 23 + fileIDToRecycleName: + 100000: //RootNode + 400000: //RootNode + 2100000: No Name + 2300000: //RootNode + 3300000: //RootNode + 4300000: Glasses + externalObjects: {} + materials: + importMaterials: 1 + materialName: 0 + materialSearch: 1 + materialLocation: 1 + animations: + legacyGenerateAnimations: 4 + bakeSimulation: 0 + resampleCurves: 1 + optimizeGameObjects: 0 + motionNodeName: + rigImportErrors: + rigImportWarnings: + animationImportErrors: + animationImportWarnings: + animationRetargetingWarnings: + animationDoRetargetingWarnings: 0 + importAnimatedCustomProperties: 0 + importConstraints: 0 + animationCompression: 1 + animationRotationError: 0.5 + animationPositionError: 0.5 + animationScaleError: 0.5 + animationWrapMode: 0 + extraExposedTransformPaths: [] + extraUserProperties: [] + clipAnimations: [] + isReadable: 1 + meshes: + lODScreenPercentages: [] + globalScale: 1 + meshCompression: 0 + addColliders: 0 + useSRGBMaterialColor: 1 + importVisibility: 1 + importBlendShapes: 1 + importCameras: 1 + importLights: 1 + swapUVChannels: 0 + generateSecondaryUV: 0 + useFileUnits: 1 + optimizeMeshForGPU: 1 + keepQuads: 0 + weldVertices: 1 + preserveHierarchy: 0 + indexFormat: 0 + secondaryUVAngleDistortion: 8 + secondaryUVAreaDistortion: 15.000001 + secondaryUVHardAngle: 88 + secondaryUVPackMargin: 4 + useFileScale: 1 + previousCalculatedGlobalScale: 1 + hasPreviousCalculatedGlobalScale: 0 + tangentSpace: + normalSmoothAngle: 60 + normalImportMode: 0 + tangentImportMode: 3 + normalCalculationMode: 4 + legacyComputeAllNormalsFromSmoothingGroupsWhenMeshHasBlendShapes: 0 + blendShapeNormalImportMode: 1 + normalSmoothingSource: 0 + importAnimation: 1 + copyAvatar: 0 + humanDescription: + serializedVersion: 2 + human: [] + skeleton: [] + armTwist: 0.5 + foreArmTwist: 0.5 + upperLegTwist: 0.5 + legTwist: 0.5 + armStretch: 0.05 + legStretch: 0.05 + feetSpacing: 0 + rootMotionBoneName: + hasTranslationDoF: 0 + hasExtraRoot: 0 + skeletonHasParents: 1 + lastHumanDescriptionAvatarSource: {instanceID: 0} + animationType: 0 + humanoidOversampling: 1 + additionalBone: 0 + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/ModResources/HatMeshes/PartyHatMesh.fbx" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/ModResources/HatMeshes/PartyHatMesh.fbx" new file mode 100644 index 00000000..e95e70d2 Binary files /dev/null and "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/ModResources/HatMeshes/PartyHatMesh.fbx" differ diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/ModResources/HatMeshes/PartyHatMesh.fbx.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/ModResources/HatMeshes/PartyHatMesh.fbx.meta" new file mode 100644 index 00000000..30e051f6 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/ModResources/HatMeshes/PartyHatMesh.fbx.meta" @@ -0,0 +1,97 @@ +fileFormatVersion: 2 +guid: 34a2d77e69c9248c09fea2bd77090468 +ModelImporter: + serializedVersion: 23 + fileIDToRecycleName: + 100000: //RootNode + 400000: //RootNode + 2100000: No Name + 2300000: //RootNode + 3300000: //RootNode + 4300000: PartyHat + externalObjects: {} + materials: + importMaterials: 1 + materialName: 0 + materialSearch: 1 + materialLocation: 1 + animations: + legacyGenerateAnimations: 4 + bakeSimulation: 0 + resampleCurves: 1 + optimizeGameObjects: 0 + motionNodeName: + rigImportErrors: + rigImportWarnings: + animationImportErrors: + animationImportWarnings: + animationRetargetingWarnings: + animationDoRetargetingWarnings: 0 + importAnimatedCustomProperties: 0 + importConstraints: 0 + animationCompression: 1 + animationRotationError: 0.5 + animationPositionError: 0.5 + animationScaleError: 0.5 + animationWrapMode: 0 + extraExposedTransformPaths: [] + extraUserProperties: [] + clipAnimations: [] + isReadable: 1 + meshes: + lODScreenPercentages: [] + globalScale: 0.2 + meshCompression: 0 + addColliders: 0 + useSRGBMaterialColor: 1 + importVisibility: 0 + importBlendShapes: 0 + importCameras: 0 + importLights: 0 + swapUVChannels: 0 + generateSecondaryUV: 0 + useFileUnits: 1 + optimizeMeshForGPU: 1 + keepQuads: 0 + weldVertices: 1 + preserveHierarchy: 0 + indexFormat: 0 + secondaryUVAngleDistortion: 8 + secondaryUVAreaDistortion: 15.000001 + secondaryUVHardAngle: 88 + secondaryUVPackMargin: 4 + useFileScale: 0 + previousCalculatedGlobalScale: 1 + hasPreviousCalculatedGlobalScale: 0 + tangentSpace: + normalSmoothAngle: 95 + normalImportMode: 1 + tangentImportMode: 3 + normalCalculationMode: 4 + legacyComputeAllNormalsFromSmoothingGroupsWhenMeshHasBlendShapes: 0 + blendShapeNormalImportMode: 1 + normalSmoothingSource: 0 + importAnimation: 1 + copyAvatar: 0 + humanDescription: + serializedVersion: 2 + human: [] + skeleton: [] + armTwist: 0.5 + foreArmTwist: 0.5 + upperLegTwist: 0.5 + legTwist: 0.5 + armStretch: 0.05 + legStretch: 0.05 + feetSpacing: 0 + rootMotionBoneName: + hasTranslationDoF: 0 + hasExtraRoot: 0 + skeletonHasParents: 1 + lastHumanDescriptionAvatarSource: {instanceID: 0} + animationType: 0 + humanoidOversampling: 1 + additionalBone: 0 + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/ModResources/HatMeshes/WizardHatMesh.fbx" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/ModResources/HatMeshes/WizardHatMesh.fbx" new file mode 100644 index 00000000..afe4f3c8 Binary files /dev/null and "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/ModResources/HatMeshes/WizardHatMesh.fbx" differ diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/ModResources/HatMeshes/WizardHatMesh.fbx.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/ModResources/HatMeshes/WizardHatMesh.fbx.meta" new file mode 100644 index 00000000..d34e3ed3 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/ModResources/HatMeshes/WizardHatMesh.fbx.meta" @@ -0,0 +1,97 @@ +fileFormatVersion: 2 +guid: 41fa7087e84034b719aeb52d1260a81b +ModelImporter: + serializedVersion: 23 + fileIDToRecycleName: + 100000: //RootNode + 400000: //RootNode + 2100000: No Name + 2300000: //RootNode + 3300000: //RootNode + 4300000: WizardHat + externalObjects: {} + materials: + importMaterials: 1 + materialName: 0 + materialSearch: 1 + materialLocation: 1 + animations: + legacyGenerateAnimations: 4 + bakeSimulation: 0 + resampleCurves: 1 + optimizeGameObjects: 0 + motionNodeName: + rigImportErrors: + rigImportWarnings: + animationImportErrors: + animationImportWarnings: + animationRetargetingWarnings: + animationDoRetargetingWarnings: 0 + importAnimatedCustomProperties: 0 + importConstraints: 0 + animationCompression: 1 + animationRotationError: 0.5 + animationPositionError: 0.5 + animationScaleError: 0.5 + animationWrapMode: 0 + extraExposedTransformPaths: [] + extraUserProperties: [] + clipAnimations: [] + isReadable: 1 + meshes: + lODScreenPercentages: [] + globalScale: 1 + meshCompression: 0 + addColliders: 0 + useSRGBMaterialColor: 1 + importVisibility: 0 + importBlendShapes: 0 + importCameras: 0 + importLights: 0 + swapUVChannels: 0 + generateSecondaryUV: 0 + useFileUnits: 1 + optimizeMeshForGPU: 1 + keepQuads: 0 + weldVertices: 1 + preserveHierarchy: 0 + indexFormat: 0 + secondaryUVAngleDistortion: 8 + secondaryUVAreaDistortion: 15.000001 + secondaryUVHardAngle: 88 + secondaryUVPackMargin: 4 + useFileScale: 1 + previousCalculatedGlobalScale: 1 + hasPreviousCalculatedGlobalScale: 0 + tangentSpace: + normalSmoothAngle: 60 + normalImportMode: 1 + tangentImportMode: 3 + normalCalculationMode: 4 + legacyComputeAllNormalsFromSmoothingGroupsWhenMeshHasBlendShapes: 0 + blendShapeNormalImportMode: 1 + normalSmoothingSource: 0 + importAnimation: 1 + copyAvatar: 0 + humanDescription: + serializedVersion: 2 + human: [] + skeleton: [] + armTwist: 0.5 + foreArmTwist: 0.5 + upperLegTwist: 0.5 + legTwist: 0.5 + armStretch: 0.05 + legStretch: 0.05 + feetSpacing: 0 + rootMotionBoneName: + hasTranslationDoF: 0 + hasExtraRoot: 0 + skeletonHasParents: 1 + lastHumanDescriptionAvatarSource: {instanceID: 0} + animationType: 0 + humanoidOversampling: 1 + additionalBone: 0 + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/ModResources/Scripts.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/ModResources/Scripts.meta" new file mode 100644 index 00000000..b6aea14d --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/ModResources/Scripts.meta" @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 8ef92452ff0d25840896ca730f5c42db +folderAsset: yes +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/ModResources/Scripts/Backend.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/ModResources/Scripts/Backend.meta" new file mode 100644 index 00000000..24436cdc --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/ModResources/Scripts/Backend.meta" @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 43893225ce9a5014f8a666b525828f00 +folderAsset: yes +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/ModResources/Scripts/Backend/TemplateEditorDetection.cs" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/ModResources/Scripts/Backend/TemplateEditorDetection.cs" new file mode 100644 index 00000000..fc39023a --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/ModResources/Scripts/Backend/TemplateEditorDetection.cs" @@ -0,0 +1,45 @@ +using System.Collections; +using System.Collections.Generic; +using System.Linq; +using System.Reflection; +using UnityEngine; + +#if UNITY_EDITOR + +using UnityEditor; + +//Checks if we are in a certain template, as some scripts are template-specific. +[InitializeOnLoad] +public class TemplateEditorDetection : Editor { + + static TemplateEditorDetection() { + + //Get the current definition symbols + string currentDefineSymbols = PlayerSettings.GetScriptingDefineSymbolsForGroup(EditorUserBuildSettings.selectedBuildTargetGroup); + List allDefineSymbols = currentDefineSymbols.Split(';').ToList(); + + //Template core namespace classes used for detection + var platformer = System.Type.GetType("Platformer.Core.Simulation", false); + var kart = System.Type.GetType("KartGame.KartSystems.KartMovement", false); + var ballgame = System.Type.GetType("TeamBallGame.Simulation", false); + + //Template definition symbols for use with #if + var platformerDefine = "UNITY_TEMPLATE_PLATFORMER"; + var kartDefine = "UNITY_TEMPLATE_KART"; + var ballgameDefine = "UNITY_TEMPLATE_BALLGAME"; + + //add the define symbols if we are in a specific template, if they don't exist already + if (platformer != null && !allDefineSymbols.Contains(platformerDefine)) { allDefineSymbols.Add(platformerDefine); } + if (kart != null && !allDefineSymbols.Contains(kartDefine)) { allDefineSymbols.Add(kartDefine); } + if (ballgame != null && !allDefineSymbols.Contains(ballgameDefine)) { allDefineSymbols.Add(ballgameDefine); } + + //apply the definition symbols + PlayerSettings.SetScriptingDefineSymbolsForGroup( + EditorUserBuildSettings.selectedBuildTargetGroup, + string.Join(";", allDefineSymbols.ToArray())); + + } + +} + +#endif \ No newline at end of file diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/ModResources/Scripts/Backend/TemplateEditorDetection.cs.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/ModResources/Scripts/Backend/TemplateEditorDetection.cs.meta" new file mode 100644 index 00000000..c26a06a0 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/ModResources/Scripts/Backend/TemplateEditorDetection.cs.meta" @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 7be2a636bd2904cecadaf28665c07333 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/ModResources/Scripts/BallGame.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/ModResources/Scripts/BallGame.meta" new file mode 100644 index 00000000..1ea8621d --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/ModResources/Scripts/BallGame.meta" @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: c6b1dc542f00314488e07cdf7085fd76 +folderAsset: yes +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/ModResources/Scripts/BallGame/EmitParticlesOnBallBounce.cs" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/ModResources/Scripts/BallGame/EmitParticlesOnBallBounce.cs" new file mode 100644 index 00000000..5941c487 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/ModResources/Scripts/BallGame/EmitParticlesOnBallBounce.cs" @@ -0,0 +1,37 @@ +using System.Collections; +using System.Collections.Generic; +using UnityEngine; + +[RequireComponent(typeof(ParticleSystem))] +public class EmitParticlesOnBallBounce : MonoBehaviour { + ParticleSystem pSystem; + + public bool emitOnCollision = true; + public bool emitOnKick = true; + +#if UNITY_TEMPLATE_BALLGAME + + private void Awake() { + pSystem = GetComponent(); + if (emitOnCollision) { + TeamBallGame.Gameplay.BallBounce.OnExecute += BallBounce_OnExecute; + void BallBounce_OnExecute(TeamBallGame.Gameplay.BallBounce obj) { + if (obj.collision.impulse.sqrMagnitude > 2f) { + pSystem.Play(); + } + } + } + if (emitOnKick) { + TeamBallGame.Gameplay.BallIsLaunched.OnExecute += BallIsLaunched_OnExecute; + void BallIsLaunched_OnExecute(TeamBallGame.Gameplay.BallIsLaunched obj) { + pSystem.Play(); + } + } + + + } + +#endif + + +} diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/ModResources/Scripts/BallGame/EmitParticlesOnBallBounce.cs.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/ModResources/Scripts/BallGame/EmitParticlesOnBallBounce.cs.meta" new file mode 100644 index 00000000..f8da43bd --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/ModResources/Scripts/BallGame/EmitParticlesOnBallBounce.cs.meta" @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 04a8d47022b3540f0bffff402aa57adb +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/ModResources/Scripts/Kart.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/ModResources/Scripts/Kart.meta" new file mode 100644 index 00000000..7abf148d --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/ModResources/Scripts/Kart.meta" @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: c32c34b5eecca4747af5ee696dc05a21 +folderAsset: yes +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/ModResources/Scripts/Kart/EmitParticlesOnKartBounce.cs" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/ModResources/Scripts/Kart/EmitParticlesOnKartBounce.cs" new file mode 100644 index 00000000..0b87f9b5 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/ModResources/Scripts/Kart/EmitParticlesOnKartBounce.cs" @@ -0,0 +1,32 @@ +using System.Collections; +using System.Collections.Generic; +using UnityEngine; + +public class EmitParticlesOnKartBounce : MonoBehaviour +{ + +#if UNITY_TEMPLATE_KART + + ParticleSystem p; + + private void Awake() { + p = GetComponent(); + var kart = GetComponentInParent(); + + //TODO: + //should remove this once the template is fixed. + //need to clamp capsule size as kart's collider is too big for Bounce to work in the default template. + var capsule = kart.GetComponent(); + capsule.height = Mathf.Clamp(capsule.height, 0, 1f); + + kart.OnKartCollision.AddListener(KartCollision_OnExecute); + } + + void KartCollision_OnExecute() { + p.Play(); + } + + +#endif + +} diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/ModResources/Scripts/Kart/EmitParticlesOnKartBounce.cs.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/ModResources/Scripts/Kart/EmitParticlesOnKartBounce.cs.meta" new file mode 100644 index 00000000..406b8047 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/ModResources/Scripts/Kart/EmitParticlesOnKartBounce.cs.meta" @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 8490d35dc3da54707a579c5f4ee95154 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/ModResources/Scripts/Kart/Jiggler.cs" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/ModResources/Scripts/Kart/Jiggler.cs" new file mode 100644 index 00000000..7e650b2c --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/ModResources/Scripts/Kart/Jiggler.cs" @@ -0,0 +1,56 @@ +using System.Collections; +using System.Collections.Generic; +using UnityEngine; + +public class Jiggler : MonoBehaviour +{ + [Range(0, 1)] + public float power = .1f; + + [Header("Position Jiggler")] + public bool jigPosition = true; + public Vector3 positionJigAmount; + [Range(0, 120)] + public float positionFrequency = 10; + float positionTime; + + [Header("Rotation Jiggler")] + public bool jigRotation = true; + public Vector3 rotationJigAmount; + [Range(0, 120)] + public float rotationFrequency = 10; + float rotationTime; + + [Header("Scale Jiggler")] + public bool jigScale = true; + public Vector3 scaleJigAmount = new Vector3(.1f, -.1f, .1f); + [Range(0, 120)] + public float scaleFrequency = 10; + float scaleTime; + + Vector3 basePosition; + Quaternion baseRotation; + Vector3 baseScale; + + void Start(){ + basePosition = this.transform.localPosition; + baseRotation = this.transform.localRotation; + baseScale = this.transform.localScale; + } + + // Update is called once per frame + void Update() + { + var dt = Time.deltaTime; + positionTime += dt * positionFrequency; + rotationTime += dt * rotationFrequency; + scaleTime += dt * scaleFrequency; + + if (jigPosition) + transform.localPosition = basePosition + positionJigAmount * Mathf.Sin(positionTime) * power; + if (jigRotation) + transform.localRotation = baseRotation * Quaternion.Euler(rotationJigAmount * Mathf.Sin(positionTime) * power); + if (jigScale) + transform.localScale = baseScale + scaleJigAmount * Mathf.Sin(scaleTime) * power; + } +} diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/ModResources/Scripts/Kart/Jiggler.cs.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/ModResources/Scripts/Kart/Jiggler.cs.meta" new file mode 100644 index 00000000..d78177e4 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/ModResources/Scripts/Kart/Jiggler.cs.meta" @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 6231c25b5b54b446eb07150c7f380da0 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/ModResources/Scripts/Kart/KartSpeedPad.cs" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/ModResources/Scripts/Kart/KartSpeedPad.cs" new file mode 100644 index 00000000..c2759f7a --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/ModResources/Scripts/Kart/KartSpeedPad.cs" @@ -0,0 +1,27 @@ +using System.Collections; +using System.Collections.Generic; +using UnityEngine; +using KartGame.KartSystems; + +public class KartSpeedPad : MonoBehaviour +{ + + public MultiplicativeKartModifier boostStats; + + [Range (0, 5)] + public float duration = 1f; + + void OnTriggerEnter(Collider other){ + var rb = other.attachedRigidbody; + if (rb == null) return; + var kart = rb.GetComponent(); + kart.StartCoroutine(KartModifier(kart, duration)); + } + + IEnumerator KartModifier(KartGame.KartSystems.KartMovement kart, float lifetime){ + kart.AddKartModifier(boostStats); + yield return new WaitForSeconds(lifetime); + kart.RemoveKartModifier(boostStats); + } + +} diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/ModResources/Scripts/Kart/KartSpeedPad.cs.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/ModResources/Scripts/Kart/KartSpeedPad.cs.meta" new file mode 100644 index 00000000..b8350614 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/ModResources/Scripts/Kart/KartSpeedPad.cs.meta" @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 12eaaa38c61964260ae47a6809980a60 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/ModResources/Scripts/Kart/SimpleTrigger.cs" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/ModResources/Scripts/Kart/SimpleTrigger.cs" new file mode 100644 index 00000000..8323d2a9 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/ModResources/Scripts/Kart/SimpleTrigger.cs" @@ -0,0 +1,24 @@ +using System.Collections; +using System.Collections.Generic; +using UnityEngine; +using UnityEngine.Events; + +public class SimpleTrigger : MonoBehaviour +{ + + public Rigidbody triggerBody; + public UnityEvent onTriggerEnter; + + + void OnTriggerEnter(Collider other){ + //do not trigger if there's no trigger target object + if (triggerBody == null) return; + + //only trigger if the triggerBody matches + var hitRb = other.attachedRigidbody; + if (hitRb == triggerBody){ + onTriggerEnter.Invoke(); + } + } + +} diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/ModResources/Scripts/Kart/SimpleTrigger.cs.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/ModResources/Scripts/Kart/SimpleTrigger.cs.meta" new file mode 100644 index 00000000..637d39bf --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/ModResources/Scripts/Kart/SimpleTrigger.cs.meta" @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: f1840a4d25f8d44faa5fa1b5a7726b5d +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/ModResources/Scripts/Platformer.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/ModResources/Scripts/Platformer.meta" new file mode 100644 index 00000000..b7356f2e --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/ModResources/Scripts/Platformer.meta" @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: e5dad34e17f3d0b4fb20a63f0b581de2 +folderAsset: yes +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/ModResources/Scripts/Platformer/EmitParticlesOnLand.cs" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/ModResources/Scripts/Platformer/EmitParticlesOnLand.cs" new file mode 100644 index 00000000..553dac3a --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/ModResources/Scripts/Platformer/EmitParticlesOnLand.cs" @@ -0,0 +1,39 @@ +using System.Collections; +using System.Collections.Generic; +using UnityEngine; +using System.Reflection; + +[RequireComponent(typeof(ParticleSystem))] +public class EmitParticlesOnLand : MonoBehaviour +{ + + public bool emitOnLand = true; + public bool emitOnEnemyDeath = true; + +#if UNITY_TEMPLATE_PLATFORMER + + ParticleSystem p; + + void Start() + { + p = GetComponent(); + + if (emitOnLand) { + Platformer.Gameplay.PlayerLanded.OnExecute += PlayerLanded_OnExecute; + void PlayerLanded_OnExecute(Platformer.Gameplay.PlayerLanded obj) { + p.Play(); + } + } + + if (emitOnEnemyDeath) { + Platformer.Gameplay.EnemyDeath.OnExecute += EnemyDeath_OnExecute; + void EnemyDeath_OnExecute(Platformer.Gameplay.EnemyDeath obj) { + p.Play(); + } + } + + } + +#endif + +} diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/ModResources/Scripts/Platformer/EmitParticlesOnLand.cs.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/ModResources/Scripts/Platformer/EmitParticlesOnLand.cs.meta" new file mode 100644 index 00000000..5836ddce --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/ModResources/Scripts/Platformer/EmitParticlesOnLand.cs.meta" @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 05829e42dfc794751bdcf872de6d3239 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/ModResources/SpeedArrow.fbx" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/ModResources/SpeedArrow.fbx" new file mode 100644 index 00000000..384e0a61 Binary files /dev/null and "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/ModResources/SpeedArrow.fbx" differ diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/ModResources/SpeedArrow.fbx.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/ModResources/SpeedArrow.fbx.meta" new file mode 100644 index 00000000..c70613e1 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/ModResources/SpeedArrow.fbx.meta" @@ -0,0 +1,97 @@ +fileFormatVersion: 2 +guid: 304e2fac27c3c42fc9b584187f281fcb +ModelImporter: + serializedVersion: 23 + fileIDToRecycleName: + 100000: //RootNode + 400000: //RootNode + 2100000: No Name + 2300000: //RootNode + 3300000: //RootNode + 4300000: SpeedArrow + externalObjects: {} + materials: + importMaterials: 1 + materialName: 0 + materialSearch: 1 + materialLocation: 1 + animations: + legacyGenerateAnimations: 4 + bakeSimulation: 0 + resampleCurves: 1 + optimizeGameObjects: 0 + motionNodeName: + rigImportErrors: + rigImportWarnings: + animationImportErrors: + animationImportWarnings: + animationRetargetingWarnings: + animationDoRetargetingWarnings: 0 + importAnimatedCustomProperties: 0 + importConstraints: 0 + animationCompression: 1 + animationRotationError: 0.5 + animationPositionError: 0.5 + animationScaleError: 0.5 + animationWrapMode: 0 + extraExposedTransformPaths: [] + extraUserProperties: [] + clipAnimations: [] + isReadable: 1 + meshes: + lODScreenPercentages: [] + globalScale: 1 + meshCompression: 0 + addColliders: 0 + useSRGBMaterialColor: 1 + importVisibility: 1 + importBlendShapes: 1 + importCameras: 1 + importLights: 1 + swapUVChannels: 0 + generateSecondaryUV: 0 + useFileUnits: 1 + optimizeMeshForGPU: 1 + keepQuads: 0 + weldVertices: 1 + preserveHierarchy: 0 + indexFormat: 0 + secondaryUVAngleDistortion: 8 + secondaryUVAreaDistortion: 15.000001 + secondaryUVHardAngle: 88 + secondaryUVPackMargin: 4 + useFileScale: 1 + previousCalculatedGlobalScale: 1 + hasPreviousCalculatedGlobalScale: 0 + tangentSpace: + normalSmoothAngle: 60 + normalImportMode: 0 + tangentImportMode: 3 + normalCalculationMode: 4 + legacyComputeAllNormalsFromSmoothingGroupsWhenMeshHasBlendShapes: 0 + blendShapeNormalImportMode: 1 + normalSmoothingSource: 0 + importAnimation: 1 + copyAvatar: 0 + humanDescription: + serializedVersion: 2 + human: [] + skeleton: [] + armTwist: 0.5 + foreArmTwist: 0.5 + upperLegTwist: 0.5 + legTwist: 0.5 + armStretch: 0.05 + legStretch: 0.05 + feetSpacing: 0 + rootMotionBoneName: + hasTranslationDoF: 0 + hasExtraRoot: 0 + skeletonHasParents: 1 + lastHumanDescriptionAvatarSource: {instanceID: 0} + animationType: 0 + humanoidOversampling: 1 + additionalBone: 0 + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/ModResources/Textures.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/ModResources/Textures.meta" new file mode 100644 index 00000000..64957293 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/ModResources/Textures.meta" @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 181d1d9d8ca42b04eae3cc3bfea17f62 +folderAsset: yes +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/ModResources/Textures/billboard_2D_basic.png" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/ModResources/Textures/billboard_2D_basic.png" new file mode 100644 index 00000000..810bf8b2 Binary files /dev/null and "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/ModResources/Textures/billboard_2D_basic.png" differ diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/ModResources/Textures/billboard_2D_basic.png.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/ModResources/Textures/billboard_2D_basic.png.meta" new file mode 100644 index 00000000..a451736b --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/ModResources/Textures/billboard_2D_basic.png.meta" @@ -0,0 +1,88 @@ +fileFormatVersion: 2 +guid: 6448011b459a14b05969ad3bf1a44890 +TextureImporter: + fileIDToRecycleName: {} + externalObjects: {} + serializedVersion: 7 + mipmaps: + mipMapMode: 0 + enableMipMap: 0 + sRGBTexture: 1 + linearTexture: 0 + fadeOut: 0 + borderMipMap: 0 + mipMapsPreserveCoverage: 0 + alphaTestReferenceValue: 0.5 + mipMapFadeDistanceStart: 1 + mipMapFadeDistanceEnd: 3 + bumpmap: + convertToNormalMap: 0 + externalNormalMap: 0 + heightScale: 0.25 + normalMapFilter: 0 + isReadable: 0 + streamingMipmaps: 0 + streamingMipmapsPriority: 0 + grayScaleToAlpha: 0 + generateCubemap: 6 + cubemapConvolution: 0 + seamlessCubemap: 0 + textureFormat: 1 + maxTextureSize: 2048 + textureSettings: + serializedVersion: 2 + filterMode: -1 + aniso: -1 + mipBias: -100 + wrapU: 1 + wrapV: 1 + wrapW: 1 + nPOTScale: 0 + lightmap: 0 + compressionQuality: 50 + spriteMode: 1 + spriteExtrude: 1 + spriteMeshType: 1 + alignment: 0 + spritePivot: {x: 0.5, y: 0.5} + spritePixelsToUnits: 100 + spriteBorder: {x: 0, y: 0, z: 0, w: 0} + spriteGenerateFallbackPhysicsShape: 1 + alphaUsage: 1 + alphaIsTransparency: 1 + spriteTessellationDetail: -1 + textureType: 8 + textureShape: 1 + singleChannelComponent: 0 + maxTextureSizeSet: 0 + compressionQualitySet: 0 + textureFormatSet: 0 + platformSettings: + - serializedVersion: 2 + buildTarget: DefaultTexturePlatform + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 0 + spriteSheet: + serializedVersion: 2 + sprites: [] + outline: [] + physicsShape: [] + bones: [] + spriteID: a3c809882a20b443b910379c5212d1ad + vertices: [] + indices: + edges: [] + weights: [] + spritePackingTag: + pSDRemoveMatte: 0 + pSDShowRemoveMatteOption: 0 + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/ModResources/Textures/billboard_2D_basic_mask.png" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/ModResources/Textures/billboard_2D_basic_mask.png" new file mode 100644 index 00000000..4db517d7 Binary files /dev/null and "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/ModResources/Textures/billboard_2D_basic_mask.png" differ diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/ModResources/Textures/billboard_2D_basic_mask.png.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/ModResources/Textures/billboard_2D_basic_mask.png.meta" new file mode 100644 index 00000000..85c0eb4e --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/ModResources/Textures/billboard_2D_basic_mask.png.meta" @@ -0,0 +1,88 @@ +fileFormatVersion: 2 +guid: ddff50e8139db4a99976adb5f40c79f0 +TextureImporter: + fileIDToRecycleName: {} + externalObjects: {} + serializedVersion: 7 + mipmaps: + mipMapMode: 0 + enableMipMap: 0 + sRGBTexture: 1 + linearTexture: 0 + fadeOut: 0 + borderMipMap: 0 + mipMapsPreserveCoverage: 0 + alphaTestReferenceValue: 0.5 + mipMapFadeDistanceStart: 1 + mipMapFadeDistanceEnd: 3 + bumpmap: + convertToNormalMap: 0 + externalNormalMap: 0 + heightScale: 0.25 + normalMapFilter: 0 + isReadable: 0 + streamingMipmaps: 0 + streamingMipmapsPriority: 0 + grayScaleToAlpha: 0 + generateCubemap: 6 + cubemapConvolution: 0 + seamlessCubemap: 0 + textureFormat: 1 + maxTextureSize: 2048 + textureSettings: + serializedVersion: 2 + filterMode: -1 + aniso: -1 + mipBias: -100 + wrapU: 1 + wrapV: 1 + wrapW: 1 + nPOTScale: 0 + lightmap: 0 + compressionQuality: 50 + spriteMode: 1 + spriteExtrude: 1 + spriteMeshType: 1 + alignment: 0 + spritePivot: {x: 0.5, y: 0.5} + spritePixelsToUnits: 100 + spriteBorder: {x: 0, y: 0, z: 0, w: 0} + spriteGenerateFallbackPhysicsShape: 1 + alphaUsage: 1 + alphaIsTransparency: 1 + spriteTessellationDetail: -1 + textureType: 8 + textureShape: 1 + singleChannelComponent: 0 + maxTextureSizeSet: 0 + compressionQualitySet: 0 + textureFormatSet: 0 + platformSettings: + - serializedVersion: 2 + buildTarget: DefaultTexturePlatform + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 0 + spriteSheet: + serializedVersion: 2 + sprites: [] + outline: [] + physicsShape: [] + bones: [] + spriteID: 51b92c51c1a904697be6ea28682de3f4 + vertices: [] + indices: + edges: [] + weights: [] + spritePackingTag: + pSDRemoveMatte: 0 + pSDShowRemoveMatteOption: 0 + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/ModResources/Textures/billboard_2D_tall.png" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/ModResources/Textures/billboard_2D_tall.png" new file mode 100644 index 00000000..3d4fc893 Binary files /dev/null and "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/ModResources/Textures/billboard_2D_tall.png" differ diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/ModResources/Textures/billboard_2D_tall.png.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/ModResources/Textures/billboard_2D_tall.png.meta" new file mode 100644 index 00000000..67247abe --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/ModResources/Textures/billboard_2D_tall.png.meta" @@ -0,0 +1,88 @@ +fileFormatVersion: 2 +guid: 50b2c32ff3de94988a61633cb19060de +TextureImporter: + fileIDToRecycleName: {} + externalObjects: {} + serializedVersion: 7 + mipmaps: + mipMapMode: 0 + enableMipMap: 0 + sRGBTexture: 1 + linearTexture: 0 + fadeOut: 0 + borderMipMap: 0 + mipMapsPreserveCoverage: 0 + alphaTestReferenceValue: 0.5 + mipMapFadeDistanceStart: 1 + mipMapFadeDistanceEnd: 3 + bumpmap: + convertToNormalMap: 0 + externalNormalMap: 0 + heightScale: 0.25 + normalMapFilter: 0 + isReadable: 0 + streamingMipmaps: 0 + streamingMipmapsPriority: 0 + grayScaleToAlpha: 0 + generateCubemap: 6 + cubemapConvolution: 0 + seamlessCubemap: 0 + textureFormat: 1 + maxTextureSize: 2048 + textureSettings: + serializedVersion: 2 + filterMode: -1 + aniso: -1 + mipBias: -100 + wrapU: 1 + wrapV: 1 + wrapW: 1 + nPOTScale: 0 + lightmap: 0 + compressionQuality: 50 + spriteMode: 1 + spriteExtrude: 1 + spriteMeshType: 1 + alignment: 0 + spritePivot: {x: 0.5, y: 0.5} + spritePixelsToUnits: 100 + spriteBorder: {x: 0, y: 0, z: 0, w: 0} + spriteGenerateFallbackPhysicsShape: 1 + alphaUsage: 1 + alphaIsTransparency: 1 + spriteTessellationDetail: -1 + textureType: 8 + textureShape: 1 + singleChannelComponent: 0 + maxTextureSizeSet: 0 + compressionQualitySet: 0 + textureFormatSet: 0 + platformSettings: + - serializedVersion: 2 + buildTarget: DefaultTexturePlatform + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 0 + spriteSheet: + serializedVersion: 2 + sprites: [] + outline: [] + physicsShape: [] + bones: [] + spriteID: a014d588b9c4f4503ae7deed5bc7f153 + vertices: [] + indices: + edges: [] + weights: [] + spritePackingTag: + pSDRemoveMatte: 0 + pSDShowRemoveMatteOption: 0 + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/ModResources/Textures/billboard_2D_tall_mask.png" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/ModResources/Textures/billboard_2D_tall_mask.png" new file mode 100644 index 00000000..7e1c4de1 Binary files /dev/null and "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/ModResources/Textures/billboard_2D_tall_mask.png" differ diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/ModResources/Textures/billboard_2D_tall_mask.png.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/ModResources/Textures/billboard_2D_tall_mask.png.meta" new file mode 100644 index 00000000..17cb49b9 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/ModResources/Textures/billboard_2D_tall_mask.png.meta" @@ -0,0 +1,88 @@ +fileFormatVersion: 2 +guid: bbe8d33a81a0549ce8ab1cee4aa7db2a +TextureImporter: + fileIDToRecycleName: {} + externalObjects: {} + serializedVersion: 7 + mipmaps: + mipMapMode: 0 + enableMipMap: 0 + sRGBTexture: 1 + linearTexture: 0 + fadeOut: 0 + borderMipMap: 0 + mipMapsPreserveCoverage: 0 + alphaTestReferenceValue: 0.5 + mipMapFadeDistanceStart: 1 + mipMapFadeDistanceEnd: 3 + bumpmap: + convertToNormalMap: 0 + externalNormalMap: 0 + heightScale: 0.25 + normalMapFilter: 0 + isReadable: 0 + streamingMipmaps: 0 + streamingMipmapsPriority: 0 + grayScaleToAlpha: 0 + generateCubemap: 6 + cubemapConvolution: 0 + seamlessCubemap: 0 + textureFormat: 1 + maxTextureSize: 2048 + textureSettings: + serializedVersion: 2 + filterMode: -1 + aniso: -1 + mipBias: -100 + wrapU: 1 + wrapV: 1 + wrapW: 1 + nPOTScale: 0 + lightmap: 0 + compressionQuality: 50 + spriteMode: 1 + spriteExtrude: 1 + spriteMeshType: 1 + alignment: 0 + spritePivot: {x: 0.5, y: 0.5} + spritePixelsToUnits: 100 + spriteBorder: {x: 0, y: 0, z: 0, w: 0} + spriteGenerateFallbackPhysicsShape: 1 + alphaUsage: 1 + alphaIsTransparency: 1 + spriteTessellationDetail: -1 + textureType: 8 + textureShape: 1 + singleChannelComponent: 0 + maxTextureSizeSet: 0 + compressionQualitySet: 0 + textureFormatSet: 0 + platformSettings: + - serializedVersion: 2 + buildTarget: DefaultTexturePlatform + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 0 + spriteSheet: + serializedVersion: 2 + sprites: [] + outline: [] + physicsShape: [] + bones: [] + spriteID: f7bf56f9bf5404b3e842834344226b34 + vertices: [] + indices: + edges: [] + weights: [] + spritePackingTag: + pSDRemoveMatte: 0 + pSDShowRemoveMatteOption: 0 + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/ModResources/Textures/billboard_2D_wide.png" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/ModResources/Textures/billboard_2D_wide.png" new file mode 100644 index 00000000..afe4815b Binary files /dev/null and "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/ModResources/Textures/billboard_2D_wide.png" differ diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/ModResources/Textures/billboard_2D_wide.png.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/ModResources/Textures/billboard_2D_wide.png.meta" new file mode 100644 index 00000000..9d545714 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/ModResources/Textures/billboard_2D_wide.png.meta" @@ -0,0 +1,88 @@ +fileFormatVersion: 2 +guid: 3142e986a20354e5c9b3394e5ff7ae12 +TextureImporter: + fileIDToRecycleName: {} + externalObjects: {} + serializedVersion: 7 + mipmaps: + mipMapMode: 0 + enableMipMap: 0 + sRGBTexture: 1 + linearTexture: 0 + fadeOut: 0 + borderMipMap: 0 + mipMapsPreserveCoverage: 0 + alphaTestReferenceValue: 0.5 + mipMapFadeDistanceStart: 1 + mipMapFadeDistanceEnd: 3 + bumpmap: + convertToNormalMap: 0 + externalNormalMap: 0 + heightScale: 0.25 + normalMapFilter: 0 + isReadable: 0 + streamingMipmaps: 0 + streamingMipmapsPriority: 0 + grayScaleToAlpha: 0 + generateCubemap: 6 + cubemapConvolution: 0 + seamlessCubemap: 0 + textureFormat: 1 + maxTextureSize: 2048 + textureSettings: + serializedVersion: 2 + filterMode: -1 + aniso: -1 + mipBias: -100 + wrapU: 1 + wrapV: 1 + wrapW: 1 + nPOTScale: 0 + lightmap: 0 + compressionQuality: 50 + spriteMode: 1 + spriteExtrude: 1 + spriteMeshType: 1 + alignment: 0 + spritePivot: {x: 0.5, y: 0.5} + spritePixelsToUnits: 100 + spriteBorder: {x: 0, y: 0, z: 0, w: 0} + spriteGenerateFallbackPhysicsShape: 1 + alphaUsage: 1 + alphaIsTransparency: 1 + spriteTessellationDetail: -1 + textureType: 8 + textureShape: 1 + singleChannelComponent: 0 + maxTextureSizeSet: 0 + compressionQualitySet: 0 + textureFormatSet: 0 + platformSettings: + - serializedVersion: 2 + buildTarget: DefaultTexturePlatform + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 0 + spriteSheet: + serializedVersion: 2 + sprites: [] + outline: [] + physicsShape: [] + bones: [] + spriteID: 7cae74fd8dbd6471aa4f27df8715c048 + vertices: [] + indices: + edges: [] + weights: [] + spritePackingTag: + pSDRemoveMatte: 0 + pSDShowRemoveMatteOption: 0 + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/ModResources/Textures/billboard_2D_wide_mask.png" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/ModResources/Textures/billboard_2D_wide_mask.png" new file mode 100644 index 00000000..031087b2 Binary files /dev/null and "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/ModResources/Textures/billboard_2D_wide_mask.png" differ diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/ModResources/Textures/billboard_2D_wide_mask.png.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/ModResources/Textures/billboard_2D_wide_mask.png.meta" new file mode 100644 index 00000000..f9f487bd --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/ModResources/Textures/billboard_2D_wide_mask.png.meta" @@ -0,0 +1,88 @@ +fileFormatVersion: 2 +guid: d88311d2ea92740ed9e0274f02825ccf +TextureImporter: + fileIDToRecycleName: {} + externalObjects: {} + serializedVersion: 7 + mipmaps: + mipMapMode: 0 + enableMipMap: 0 + sRGBTexture: 1 + linearTexture: 0 + fadeOut: 0 + borderMipMap: 0 + mipMapsPreserveCoverage: 0 + alphaTestReferenceValue: 0.5 + mipMapFadeDistanceStart: 1 + mipMapFadeDistanceEnd: 3 + bumpmap: + convertToNormalMap: 0 + externalNormalMap: 0 + heightScale: 0.25 + normalMapFilter: 0 + isReadable: 0 + streamingMipmaps: 0 + streamingMipmapsPriority: 0 + grayScaleToAlpha: 0 + generateCubemap: 6 + cubemapConvolution: 0 + seamlessCubemap: 0 + textureFormat: 1 + maxTextureSize: 2048 + textureSettings: + serializedVersion: 2 + filterMode: -1 + aniso: -1 + mipBias: -100 + wrapU: 1 + wrapV: 1 + wrapW: 1 + nPOTScale: 0 + lightmap: 0 + compressionQuality: 50 + spriteMode: 1 + spriteExtrude: 1 + spriteMeshType: 1 + alignment: 0 + spritePivot: {x: 0.5, y: 0.5} + spritePixelsToUnits: 100 + spriteBorder: {x: 0, y: 0, z: 0, w: 0} + spriteGenerateFallbackPhysicsShape: 1 + alphaUsage: 1 + alphaIsTransparency: 1 + spriteTessellationDetail: -1 + textureType: 8 + textureShape: 1 + singleChannelComponent: 0 + maxTextureSizeSet: 0 + compressionQualitySet: 0 + textureFormatSet: 0 + platformSettings: + - serializedVersion: 2 + buildTarget: DefaultTexturePlatform + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 0 + spriteSheet: + serializedVersion: 2 + sprites: [] + outline: [] + physicsShape: [] + bones: [] + spriteID: b676ffb50af114ef581e5eeecd079bd8 + vertices: [] + indices: + edges: [] + weights: [] + spritePackingTag: + pSDRemoveMatte: 0 + pSDShowRemoveMatteOption: 0 + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/ModResources/Textures/rainbowtexture.png" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/ModResources/Textures/rainbowtexture.png" new file mode 100644 index 00000000..d4f2728e Binary files /dev/null and "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/ModResources/Textures/rainbowtexture.png" differ diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/ModResources/Textures/rainbowtexture.png.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/ModResources/Textures/rainbowtexture.png.meta" new file mode 100644 index 00000000..8f21b54f --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/ModResources/Textures/rainbowtexture.png.meta" @@ -0,0 +1,99 @@ +fileFormatVersion: 2 +guid: 1b6d33a625dab47a48c2b062e2ce39bc +TextureImporter: + fileIDToRecycleName: {} + externalObjects: {} + serializedVersion: 7 + mipmaps: + mipMapMode: 0 + enableMipMap: 1 + sRGBTexture: 1 + linearTexture: 0 + fadeOut: 0 + borderMipMap: 0 + mipMapsPreserveCoverage: 0 + alphaTestReferenceValue: 0.5 + mipMapFadeDistanceStart: 1 + mipMapFadeDistanceEnd: 3 + bumpmap: + convertToNormalMap: 0 + externalNormalMap: 0 + heightScale: 0.25 + normalMapFilter: 0 + isReadable: 0 + streamingMipmaps: 0 + streamingMipmapsPriority: 0 + grayScaleToAlpha: 0 + generateCubemap: 6 + cubemapConvolution: 0 + seamlessCubemap: 0 + textureFormat: 1 + maxTextureSize: 2048 + textureSettings: + serializedVersion: 2 + filterMode: 0 + aniso: -1 + mipBias: -100 + wrapU: -1 + wrapV: -1 + wrapW: -1 + nPOTScale: 1 + lightmap: 0 + compressionQuality: 50 + spriteMode: 0 + spriteExtrude: 1 + spriteMeshType: 1 + alignment: 0 + spritePivot: {x: 0.5, y: 0.5} + spritePixelsToUnits: 100 + spriteBorder: {x: 0, y: 0, z: 0, w: 0} + spriteGenerateFallbackPhysicsShape: 1 + alphaUsage: 1 + alphaIsTransparency: 0 + spriteTessellationDetail: -1 + textureType: 0 + textureShape: 1 + singleChannelComponent: 0 + maxTextureSizeSet: 0 + compressionQualitySet: 0 + textureFormatSet: 0 + platformSettings: + - serializedVersion: 2 + buildTarget: DefaultTexturePlatform + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 0 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Standalone + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 0 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 0 + spriteSheet: + serializedVersion: 2 + sprites: [] + outline: [] + physicsShape: [] + bones: [] + spriteID: + vertices: [] + indices: + edges: [] + weights: [] + spritePackingTag: + pSDRemoveMatte: 0 + pSDShowRemoveMatteOption: 0 + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/ModResources/TrailMaterials.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/ModResources/TrailMaterials.meta" new file mode 100644 index 00000000..fb763e96 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/ModResources/TrailMaterials.meta" @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: d08bf78a57eaad54da537f36bd5ee0bb +folderAsset: yes +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/ModResources/TrailMaterials/FireTrailMaterial.mat" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/ModResources/TrailMaterials/FireTrailMaterial.mat" new file mode 100644 index 00000000..215ada54 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/ModResources/TrailMaterials/FireTrailMaterial.mat" @@ -0,0 +1,97 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!21 &2100000 +Material: + serializedVersion: 6 + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_Name: FireTrailMaterial + m_Shader: {fileID: 211, guid: 0000000000000000f000000000000000, type: 0} + m_ShaderKeywords: + m_LightmapFlags: 0 + m_EnableInstancingVariants: 0 + m_DoubleSidedGI: 0 + m_CustomRenderQueue: -1 + stringTagMap: {} + disabledShaderPasses: + - ALWAYS + m_SavedProperties: + serializedVersion: 3 + m_TexEnvs: + - _BumpMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _DetailAlbedoMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _DetailMask: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _DetailNormalMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _EmissionMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _MainTex: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _MetallicGlossMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _OcclusionMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _ParallaxMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + m_Floats: + - _BlendOp: 0 + - _BumpScale: 1 + - _CameraFadingEnabled: 0 + - _CameraFarFadeDistance: 2 + - _CameraNearFadeDistance: 1 + - _ColorMode: 0 + - _Cull: 2 + - _Cutoff: 0.5 + - _DetailNormalMapScale: 1 + - _DistortionBlend: 0.5 + - _DistortionEnabled: 0 + - _DistortionStrength: 1 + - _DistortionStrengthScaled: 0 + - _DstBlend: 0 + - _EmissionEnabled: 0 + - _FlipbookMode: 0 + - _GlossMapScale: 1 + - _Glossiness: 0.5 + - _GlossyReflections: 1 + - _LightingEnabled: 0 + - _Metallic: 0 + - _Mode: 0 + - _OcclusionStrength: 1 + - _Parallax: 0.02 + - _SmoothnessTextureChannel: 0 + - _SoftParticlesEnabled: 0 + - _SoftParticlesFarFadeDistance: 1 + - _SoftParticlesNearFadeDistance: 0 + - _SpecularHighlights: 1 + - _SrcBlend: 1 + - _UVSec: 0 + - _ZWrite: 1 + m_Colors: + - _CameraFadeParams: {r: 0, g: Infinity, b: 0, a: 0} + - _Color: {r: 4, g: 4, b: 4, a: 1} + - _ColorAddSubDiff: {r: 0, g: 0, b: 0, a: 0} + - _EmissionColor: {r: 0, g: 0, b: 0, a: 1} + - _SoftParticleFadeParams: {r: 0, g: 0, b: 0, a: 0} diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/ModResources/TrailMaterials/FireTrailMaterial.mat.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/ModResources/TrailMaterials/FireTrailMaterial.mat.meta" new file mode 100644 index 00000000..280f9195 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/ModResources/TrailMaterials/FireTrailMaterial.mat.meta" @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 1cdc620dc87bd45acbd2dfd2cc6560eb +NativeFormatImporter: + externalObjects: {} + mainObjectFileID: 2100000 + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/ModResources/TrailMaterials/LaserTrailMaterial.mat" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/ModResources/TrailMaterials/LaserTrailMaterial.mat" new file mode 100644 index 00000000..f349ea58 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/ModResources/TrailMaterials/LaserTrailMaterial.mat" @@ -0,0 +1,77 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!21 &2100000 +Material: + serializedVersion: 6 + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_Name: LaserTrailMaterial + m_Shader: {fileID: 46, guid: 0000000000000000f000000000000000, type: 0} + m_ShaderKeywords: _EMISSION + m_LightmapFlags: 0 + m_EnableInstancingVariants: 0 + m_DoubleSidedGI: 0 + m_CustomRenderQueue: -1 + stringTagMap: {} + disabledShaderPasses: [] + m_SavedProperties: + serializedVersion: 3 + m_TexEnvs: + - _BumpMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _DetailAlbedoMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _DetailMask: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _DetailNormalMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _EmissionMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _MainTex: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _MetallicGlossMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _OcclusionMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _ParallaxMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + m_Floats: + - _BumpScale: 1 + - _Cutoff: 0.5 + - _DetailNormalMapScale: 1 + - _DstBlend: 0 + - _GlossMapScale: 1 + - _Glossiness: 0.5 + - _GlossyReflections: 1 + - _Metallic: 0 + - _Mode: 0 + - _OcclusionStrength: 1 + - _Parallax: 0.02 + - _SmoothnessTextureChannel: 0 + - _SpecularHighlights: 1 + - _SrcBlend: 1 + - _UVSec: 0 + - _ZWrite: 1 + m_Colors: + - _Color: {r: 1, g: 1, b: 1, a: 1} + - _EmissionColor: {r: 4, g: 0.5447492, b: 0, a: 1} diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/ModResources/TrailMaterials/LaserTrailMaterial.mat.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/ModResources/TrailMaterials/LaserTrailMaterial.mat.meta" new file mode 100644 index 00000000..c18b8dab --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/ModResources/TrailMaterials/LaserTrailMaterial.mat.meta" @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 496d4eb29afae4308be4e6a2069959b3 +NativeFormatImporter: + externalObjects: {} + mainObjectFileID: 2100000 + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/ModResources/TrailMaterials/LongTrailMaterial.mat" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/ModResources/TrailMaterials/LongTrailMaterial.mat" new file mode 100644 index 00000000..e167efec --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/ModResources/TrailMaterials/LongTrailMaterial.mat" @@ -0,0 +1,105 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!21 &2100000 +Material: + serializedVersion: 6 + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_Name: LongTrailMaterial + m_Shader: {fileID: 211, guid: 0000000000000000f000000000000000, type: 0} + m_ShaderKeywords: + m_LightmapFlags: 0 + m_EnableInstancingVariants: 0 + m_DoubleSidedGI: 0 + m_CustomRenderQueue: -1 + stringTagMap: {} + disabledShaderPasses: + - ALWAYS + m_SavedProperties: + serializedVersion: 3 + m_TexEnvs: + - _AlphaTex: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _BumpMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _DetailAlbedoMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _DetailMask: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _DetailNormalMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _EmissionMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _MainTex: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _MetallicGlossMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _OcclusionMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _ParallaxMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + m_Floats: + - PixelSnap: 0 + - _BlendOp: 0 + - _BumpScale: 1 + - _CameraFadingEnabled: 0 + - _CameraFarFadeDistance: 2 + - _CameraNearFadeDistance: 1 + - _ColorMode: 0 + - _Cull: 2 + - _Cutoff: 0.5 + - _DetailNormalMapScale: 1 + - _DistortionBlend: 0.5 + - _DistortionEnabled: 0 + - _DistortionStrength: 1 + - _DistortionStrengthScaled: 0 + - _DstBlend: 0 + - _EmissionEnabled: 0 + - _EnableExternalAlpha: 0 + - _FlipbookMode: 0 + - _GlossMapScale: 1 + - _Glossiness: 0.5 + - _GlossyReflections: 1 + - _LightingEnabled: 0 + - _Metallic: 0 + - _Mode: 0 + - _OcclusionStrength: 1 + - _Parallax: 0.02 + - _SmoothnessTextureChannel: 0 + - _SoftParticlesEnabled: 0 + - _SoftParticlesFarFadeDistance: 1 + - _SoftParticlesNearFadeDistance: 0 + - _SpecularHighlights: 1 + - _SrcBlend: 1 + - _UVSec: 0 + - _ZWrite: 1 + m_Colors: + - _CameraFadeParams: {r: 0, g: Infinity, b: 0, a: 0} + - _Color: {r: 1, g: 1, b: 1, a: 1} + - _ColorAddSubDiff: {r: 0, g: 0, b: 0, a: 0} + - _EmissionColor: {r: 0, g: 0, b: 0, a: 1} + - _Flip: {r: 1, g: 1, b: 1, a: 1} + - _RendererColor: {r: 1, g: 1, b: 1, a: 1} + - _SoftParticleFadeParams: {r: 0, g: 0, b: 0, a: 0} diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/ModResources/TrailMaterials/LongTrailMaterial.mat.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/ModResources/TrailMaterials/LongTrailMaterial.mat.meta" new file mode 100644 index 00000000..72da10cd --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/ModResources/TrailMaterials/LongTrailMaterial.mat.meta" @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: dbd73125b5e3c429ea6c920ebcc9dd92 +NativeFormatImporter: + externalObjects: {} + mainObjectFileID: 2100000 + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/ModResources/TrailMaterials/PlatformerRainbowTrailMaterial.mat" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/ModResources/TrailMaterials/PlatformerRainbowTrailMaterial.mat" new file mode 100644 index 00000000..5084714f --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/ModResources/TrailMaterials/PlatformerRainbowTrailMaterial.mat" @@ -0,0 +1,106 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!21 &2100000 +Material: + serializedVersion: 6 + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_Name: PlatformerRainbowTrailMaterial + m_Shader: {fileID: 211, guid: 0000000000000000f000000000000000, type: 0} + m_ShaderKeywords: ETC1_EXTERNAL_ALPHA _ALPHABLEND_ON + m_LightmapFlags: 0 + m_EnableInstancingVariants: 0 + m_DoubleSidedGI: 0 + m_CustomRenderQueue: 3000 + stringTagMap: + RenderType: Transparent + disabledShaderPasses: + - ALWAYS + m_SavedProperties: + serializedVersion: 3 + m_TexEnvs: + - _AlphaTex: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _BumpMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _DetailAlbedoMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _DetailMask: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _DetailNormalMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _EmissionMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _MainTex: + m_Texture: {fileID: 2800000, guid: 1b6d33a625dab47a48c2b062e2ce39bc, type: 3} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _MetallicGlossMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _OcclusionMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _ParallaxMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + m_Floats: + - PixelSnap: 0 + - _BlendOp: 0 + - _BumpScale: 1 + - _CameraFadingEnabled: 0 + - _CameraFarFadeDistance: 2 + - _CameraNearFadeDistance: 1 + - _ColorMode: 0 + - _Cull: 2 + - _Cutoff: 0.5 + - _DetailNormalMapScale: 1 + - _DistortionBlend: 0.5 + - _DistortionEnabled: 0 + - _DistortionStrength: 1 + - _DistortionStrengthScaled: 0 + - _DstBlend: 1 + - _EmissionEnabled: 0 + - _EnableExternalAlpha: 0 + - _FlipbookMode: 0 + - _GlossMapScale: 1 + - _Glossiness: 0.5 + - _GlossyReflections: 1 + - _LightingEnabled: 0 + - _Metallic: 0 + - _Mode: 4 + - _OcclusionStrength: 1 + - _Parallax: 0.02 + - _SmoothnessTextureChannel: 0 + - _SoftParticlesEnabled: 0 + - _SoftParticlesFarFadeDistance: 1 + - _SoftParticlesNearFadeDistance: 0 + - _SpecularHighlights: 1 + - _SrcBlend: 5 + - _UVSec: 0 + - _ZWrite: 0 + m_Colors: + - _CameraFadeParams: {r: 0, g: Infinity, b: 0, a: 0} + - _Color: {r: 1, g: 1, b: 1, a: 1} + - _ColorAddSubDiff: {r: 0, g: 0, b: 0, a: 0} + - _EmissionColor: {r: 0, g: 0, b: 0, a: 1} + - _Flip: {r: 1, g: 1, b: 1, a: 1} + - _RendererColor: {r: 1, g: 1, b: 1, a: 1} + - _SoftParticleFadeParams: {r: 0, g: 0, b: 0, a: 0} diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/ModResources/TrailMaterials/PlatformerRainbowTrailMaterial.mat.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/ModResources/TrailMaterials/PlatformerRainbowTrailMaterial.mat.meta" new file mode 100644 index 00000000..717353ad --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/ModResources/TrailMaterials/PlatformerRainbowTrailMaterial.mat.meta" @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: fb9022c6471ea4540bead8403c8d7496 +NativeFormatImporter: + externalObjects: {} + mainObjectFileID: 2100000 + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/ModResources/TrailMaterials/RainbowTrailMaterial.mat" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/ModResources/TrailMaterials/RainbowTrailMaterial.mat" new file mode 100644 index 00000000..96f6f642 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/ModResources/TrailMaterials/RainbowTrailMaterial.mat" @@ -0,0 +1,97 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!21 &2100000 +Material: + serializedVersion: 6 + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_Name: RainbowTrailMaterial + m_Shader: {fileID: 211, guid: 0000000000000000f000000000000000, type: 0} + m_ShaderKeywords: + m_LightmapFlags: 0 + m_EnableInstancingVariants: 0 + m_DoubleSidedGI: 0 + m_CustomRenderQueue: -1 + stringTagMap: {} + disabledShaderPasses: + - ALWAYS + m_SavedProperties: + serializedVersion: 3 + m_TexEnvs: + - _BumpMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _DetailAlbedoMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _DetailMask: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _DetailNormalMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _EmissionMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _MainTex: + m_Texture: {fileID: 2800000, guid: 1b6d33a625dab47a48c2b062e2ce39bc, type: 3} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _MetallicGlossMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _OcclusionMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _ParallaxMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + m_Floats: + - _BlendOp: 0 + - _BumpScale: 1 + - _CameraFadingEnabled: 0 + - _CameraFarFadeDistance: 2 + - _CameraNearFadeDistance: 1 + - _ColorMode: 0 + - _Cull: 2 + - _Cutoff: 0.5 + - _DetailNormalMapScale: 1 + - _DistortionBlend: 0.5 + - _DistortionEnabled: 0 + - _DistortionStrength: 1 + - _DistortionStrengthScaled: 0 + - _DstBlend: 0 + - _EmissionEnabled: 0 + - _FlipbookMode: 0 + - _GlossMapScale: 1 + - _Glossiness: 0.5 + - _GlossyReflections: 1 + - _LightingEnabled: 0 + - _Metallic: 0 + - _Mode: 0 + - _OcclusionStrength: 1 + - _Parallax: 0.02 + - _SmoothnessTextureChannel: 0 + - _SoftParticlesEnabled: 0 + - _SoftParticlesFarFadeDistance: 1 + - _SoftParticlesNearFadeDistance: 0 + - _SpecularHighlights: 1 + - _SrcBlend: 1 + - _UVSec: 0 + - _ZWrite: 1 + m_Colors: + - _CameraFadeParams: {r: 0, g: Infinity, b: 0, a: 0} + - _Color: {r: 1.8443027, g: 1.8443027, b: 1.8443027, a: 1} + - _ColorAddSubDiff: {r: -1, g: 0, b: 0, a: 0} + - _EmissionColor: {r: 0, g: 0, b: 0, a: 1} + - _SoftParticleFadeParams: {r: 0, g: 0, b: 0, a: 0} diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/ModResources/TrailMaterials/RainbowTrailMaterial.mat.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/ModResources/TrailMaterials/RainbowTrailMaterial.mat.meta" new file mode 100644 index 00000000..e2c78999 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/ModResources/TrailMaterials/RainbowTrailMaterial.mat.meta" @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 711224fcf6d6c40faafe946b2f78b361 +NativeFormatImporter: + externalObjects: {} + mainObjectFileID: 2100000 + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/ModResources/TrailMaterials/SubtleTrailMaterial.mat" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/ModResources/TrailMaterials/SubtleTrailMaterial.mat" new file mode 100644 index 00000000..fcec51cf --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/ModResources/TrailMaterials/SubtleTrailMaterial.mat" @@ -0,0 +1,85 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!21 &2100000 +Material: + serializedVersion: 6 + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_Name: SubtleTrailMaterial + m_Shader: {fileID: 10753, guid: 0000000000000000f000000000000000, type: 0} + m_ShaderKeywords: + m_LightmapFlags: 4 + m_EnableInstancingVariants: 0 + m_DoubleSidedGI: 0 + m_CustomRenderQueue: -1 + stringTagMap: {} + disabledShaderPasses: [] + m_SavedProperties: + serializedVersion: 3 + m_TexEnvs: + - _AlphaTex: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _BumpMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _DetailAlbedoMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _DetailMask: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _DetailNormalMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _EmissionMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _MainTex: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _MetallicGlossMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _OcclusionMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - _ParallaxMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + m_Floats: + - PixelSnap: 0 + - _BumpScale: 1 + - _Cutoff: 0.5 + - _DetailNormalMapScale: 1 + - _DstBlend: 0 + - _EnableExternalAlpha: 0 + - _GlossMapScale: 1 + - _Glossiness: 0.5 + - _GlossyReflections: 1 + - _Metallic: 0 + - _Mode: 0 + - _OcclusionStrength: 1 + - _Parallax: 0.02 + - _SmoothnessTextureChannel: 0 + - _SpecularHighlights: 1 + - _SrcBlend: 1 + - _UVSec: 0 + - _ZWrite: 1 + m_Colors: + - _Color: {r: 1, g: 1, b: 1, a: 1} + - _EmissionColor: {r: 0, g: 0, b: 0, a: 1} + - _Flip: {r: 1, g: 1, b: 1, a: 1} + - _RendererColor: {r: 1, g: 1, b: 1, a: 1} diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/ModResources/TrailMaterials/SubtleTrailMaterial.mat.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/ModResources/TrailMaterials/SubtleTrailMaterial.mat.meta" new file mode 100644 index 00000000..a89e7e91 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Mod Assets/ModResources/TrailMaterials/SubtleTrailMaterial.mat.meta" @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: bb6ceb127383a4152a4041c9babd6912 +NativeFormatImporter: + externalObjects: {} + mainObjectFileID: 2100000 + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Scenes.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Scenes.meta" new file mode 100644 index 00000000..cd3b75ef --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Scenes.meta" @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: bc3f4bef838fa2741965a494f09cecd3 +folderAsset: yes +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Scenes/SampleScene.unity" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Scenes/SampleScene.unity" new file mode 100644 index 00000000..114459f6 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Scenes/SampleScene.unity" @@ -0,0 +1,259 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!29 &1 +OcclusionCullingSettings: + m_ObjectHideFlags: 0 + serializedVersion: 2 + m_OcclusionBakeSettings: + smallestOccluder: 5 + smallestHole: 0.25 + backfaceThreshold: 100 + m_SceneGUID: 00000000000000000000000000000000 + m_OcclusionCullingData: {fileID: 0} +--- !u!104 &2 +RenderSettings: + m_ObjectHideFlags: 0 + serializedVersion: 9 + m_Fog: 0 + m_FogColor: {r: 0.5, g: 0.5, b: 0.5, a: 1} + m_FogMode: 3 + m_FogDensity: 0.01 + m_LinearFogStart: 0 + m_LinearFogEnd: 300 + m_AmbientSkyColor: {r: 0.212, g: 0.227, b: 0.259, a: 1} + m_AmbientEquatorColor: {r: 0.114, g: 0.125, b: 0.133, a: 1} + m_AmbientGroundColor: {r: 0.047, g: 0.043, b: 0.035, a: 1} + m_AmbientIntensity: 1 + m_AmbientMode: 0 + m_SubtractiveShadowColor: {r: 0.42, g: 0.478, b: 0.627, a: 1} + m_SkyboxMaterial: {fileID: 10304, guid: 0000000000000000f000000000000000, type: 0} + m_HaloStrength: 0.5 + m_FlareStrength: 1 + m_FlareFadeSpeed: 3 + m_HaloTexture: {fileID: 0} + m_SpotCookie: {fileID: 10001, guid: 0000000000000000e000000000000000, type: 0} + m_DefaultReflectionMode: 0 + m_DefaultReflectionResolution: 128 + m_ReflectionBounces: 1 + m_ReflectionIntensity: 1 + m_CustomReflection: {fileID: 0} + m_Sun: {fileID: 170076734} + m_IndirectSpecularColor: {r: 0.44657898, g: 0.4964133, b: 0.5748178, a: 1} + m_UseRadianceAmbientProbe: 0 +--- !u!157 &3 +LightmapSettings: + m_ObjectHideFlags: 0 + serializedVersion: 11 + m_GIWorkflowMode: 0 + m_GISettings: + serializedVersion: 2 + m_BounceScale: 1 + m_IndirectOutputScale: 1 + m_AlbedoBoost: 1 + m_TemporalCoherenceThreshold: 1 + m_EnvironmentLightingMode: 0 + m_EnableBakedLightmaps: 1 + m_EnableRealtimeLightmaps: 0 + m_LightmapEditorSettings: + serializedVersion: 10 + m_Resolution: 2 + m_BakeResolution: 10 + m_AtlasSize: 512 + m_AO: 0 + m_AOMaxDistance: 1 + m_CompAOExponent: 1 + m_CompAOExponentDirect: 0 + m_Padding: 2 + m_LightmapParameters: {fileID: 0} + m_LightmapsBakeMode: 1 + m_TextureCompression: 1 + m_FinalGather: 0 + m_FinalGatherFiltering: 1 + m_FinalGatherRayCount: 256 + m_ReflectionCompression: 2 + m_MixedBakeMode: 2 + m_BakeBackend: 1 + m_PVRSampling: 1 + m_PVRDirectSampleCount: 32 + m_PVRSampleCount: 256 + m_PVRBounces: 2 + m_PVRFilterTypeDirect: 0 + m_PVRFilterTypeIndirect: 0 + m_PVRFilterTypeAO: 0 + m_PVRFilteringMode: 1 + m_PVRCulling: 1 + m_PVRFilteringGaussRadiusDirect: 1 + m_PVRFilteringGaussRadiusIndirect: 5 + m_PVRFilteringGaussRadiusAO: 2 + m_PVRFilteringAtrousPositionSigmaDirect: 0.5 + m_PVRFilteringAtrousPositionSigmaIndirect: 2 + m_PVRFilteringAtrousPositionSigmaAO: 1 + m_ShowResolutionOverlay: 1 + m_LightingDataAsset: {fileID: 0} + m_UseShadowmask: 1 +--- !u!196 &4 +NavMeshSettings: + serializedVersion: 2 + m_ObjectHideFlags: 0 + m_BuildSettings: + serializedVersion: 2 + agentTypeID: 0 + agentRadius: 0.5 + agentHeight: 2 + agentSlope: 45 + agentClimb: 0.4 + ledgeDropHeight: 0 + maxJumpAcrossDistance: 0 + minRegionArea: 2 + manualCellSize: 0 + cellSize: 0.16666667 + manualTileSize: 0 + tileSize: 256 + accuratePlacement: 0 + debug: + m_Flags: 0 + m_NavMeshData: {fileID: 0} +--- !u!1 &170076733 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInternal: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 170076735} + - component: {fileID: 170076734} + m_Layer: 0 + m_Name: Directional Light + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!108 &170076734 +Light: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInternal: {fileID: 0} + m_GameObject: {fileID: 170076733} + m_Enabled: 1 + serializedVersion: 8 + m_Type: 1 + m_Color: {r: 1, g: 0.95686275, b: 0.8392157, a: 1} + m_Intensity: 1 + m_Range: 10 + m_SpotAngle: 30 + m_CookieSize: 10 + m_Shadows: + m_Type: 2 + m_Resolution: -1 + m_CustomResolution: -1 + m_Strength: 1 + m_Bias: 0.05 + m_NormalBias: 0.4 + m_NearPlane: 0.2 + m_Cookie: {fileID: 0} + m_DrawHalo: 0 + m_Flare: {fileID: 0} + m_RenderMode: 0 + m_CullingMask: + serializedVersion: 2 + m_Bits: 4294967295 + m_Lightmapping: 1 + m_LightShadowCasterMode: 0 + m_AreaSize: {x: 1, y: 1} + m_BounceIntensity: 1 + m_ColorTemperature: 6570 + m_UseColorTemperature: 0 + m_ShadowRadius: 0 + m_ShadowAngle: 0 +--- !u!4 &170076735 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInternal: {fileID: 0} + m_GameObject: {fileID: 170076733} + m_LocalRotation: {x: 0.40821788, y: -0.23456968, z: 0.10938163, w: 0.8754261} + m_LocalPosition: {x: 0, y: 3, z: 0} + m_LocalScale: {x: 1, y: 1, z: 1} + m_Children: [] + m_Father: {fileID: 0} + m_RootOrder: 1 + m_LocalEulerAnglesHint: {x: 50, y: -30, z: 0} +--- !u!1 &534669902 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInternal: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 534669905} + - component: {fileID: 534669904} + - component: {fileID: 534669903} + m_Layer: 0 + m_Name: Main Camera + m_TagString: MainCamera + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!81 &534669903 +AudioListener: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInternal: {fileID: 0} + m_GameObject: {fileID: 534669902} + m_Enabled: 1 +--- !u!20 &534669904 +Camera: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInternal: {fileID: 0} + m_GameObject: {fileID: 534669902} + m_Enabled: 1 + serializedVersion: 2 + m_ClearFlags: 1 + m_BackGroundColor: {r: 0.19215687, g: 0.3019608, b: 0.4745098, a: 0} + m_projectionMatrixMode: 1 + m_SensorSize: {x: 36, y: 24} + m_LensShift: {x: 0, y: 0} + m_GateFitMode: 2 + m_FocalLength: 50 + m_NormalizedViewPortRect: + serializedVersion: 2 + x: 0 + y: 0 + width: 1 + height: 1 + near clip plane: 0.3 + far clip plane: 1000 + field of view: 60 + orthographic: 0 + orthographic size: 5 + m_Depth: -1 + m_CullingMask: + serializedVersion: 2 + m_Bits: 4294967295 + m_RenderingPath: -1 + m_TargetTexture: {fileID: 0} + m_TargetDisplay: 0 + m_TargetEye: 3 + m_HDR: 1 + m_AllowMSAA: 1 + m_AllowDynamicResolution: 0 + m_ForceIntoRT: 0 + m_OcclusionCulling: 1 + m_StereoConvergence: 10 + m_StereoSeparation: 0.022 +--- !u!4 &534669905 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInternal: {fileID: 0} + m_GameObject: {fileID: 534669902} + m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} + m_LocalPosition: {x: 0, y: 1, z: -10} + m_LocalScale: {x: 1, y: 1, z: 1} + m_Children: [] + m_Father: {fileID: 0} + m_RootOrder: 0 + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Scenes/SampleScene.unity.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Scenes/SampleScene.unity.meta" new file mode 100644 index 00000000..f466fd6b --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Assets/Scenes/SampleScene.unity.meta" @@ -0,0 +1,7 @@ +fileFormatVersion: 2 +guid: 3ea80be42a1dbf040adb960877b40b2f +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/InitCodeMarker" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/InitCodeMarker" new file mode 100644 index 00000000..e69de29b diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/AnnotationManager" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/AnnotationManager" new file mode 100644 index 00000000..8994b5eb Binary files /dev/null and "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/AnnotationManager" differ diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/AssetImportState" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/AssetImportState" new file mode 100644 index 00000000..715f58c1 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/AssetImportState" @@ -0,0 +1 @@ +19;0;4;0;0 \ No newline at end of file diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/BuildPlayer.prefs" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/BuildPlayer.prefs" new file mode 100644 index 00000000..e69de29b diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/BuildSettings.asset" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/BuildSettings.asset" new file mode 100644 index 00000000..1003db50 Binary files /dev/null and "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/BuildSettings.asset" differ diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/CurrentLayout.dwlt" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/CurrentLayout.dwlt" new file mode 100644 index 00000000..dff69969 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/CurrentLayout.dwlt" @@ -0,0 +1,709 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!114 &1 +MonoBehaviour: + m_ObjectHideFlags: 52 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 1 + m_Script: {fileID: 12004, guid: 0000000000000000e000000000000000, type: 0} + m_Name: + m_EditorClassIdentifier: + m_PixelRect: + serializedVersion: 2 + x: 0 + y: 43 + width: 1920 + height: 997 + m_ShowMode: 4 + m_Title: + m_RootView: {fileID: 2} + m_MinSize: {x: 950, y: 548} + m_MaxSize: {x: 10000, y: 10000} +--- !u!114 &2 +MonoBehaviour: + m_ObjectHideFlags: 52 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 1 + m_Script: {fileID: 12008, guid: 0000000000000000e000000000000000, type: 0} + m_Name: + m_EditorClassIdentifier: + m_Children: + - {fileID: 3} + - {fileID: 5} + - {fileID: 4} + m_Position: + serializedVersion: 2 + x: 0 + y: 0 + width: 1920 + height: 997 + m_MinSize: {x: 950, y: 300} + m_MaxSize: {x: 10000, y: 10000} +--- !u!114 &3 +MonoBehaviour: + m_ObjectHideFlags: 52 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 1 + m_Script: {fileID: 12011, guid: 0000000000000000e000000000000000, type: 0} + m_Name: + m_EditorClassIdentifier: + m_Children: [] + m_Position: + serializedVersion: 2 + x: 0 + y: 0 + width: 1920 + height: 30 + m_MinSize: {x: 0, y: 0} + m_MaxSize: {x: 0, y: 0} + m_LastLoadedLayoutName: +--- !u!114 &4 +MonoBehaviour: + m_ObjectHideFlags: 52 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 1 + m_Script: {fileID: 12042, guid: 0000000000000000e000000000000000, type: 0} + m_Name: + m_EditorClassIdentifier: + m_Children: [] + m_Position: + serializedVersion: 2 + x: 0 + y: 977 + width: 1920 + height: 20 + m_MinSize: {x: 0, y: 0} + m_MaxSize: {x: 0, y: 0} +--- !u!114 &5 +MonoBehaviour: + m_ObjectHideFlags: 52 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 1 + m_Script: {fileID: 12010, guid: 0000000000000000e000000000000000, type: 0} + m_Name: + m_EditorClassIdentifier: + m_Children: + - {fileID: 6} + - {fileID: 11} + m_Position: + serializedVersion: 2 + x: 0 + y: 30 + width: 1920 + height: 947 + m_MinSize: {x: 679, y: 498} + m_MaxSize: {x: 14002, y: 14048} + vertical: 0 + controlID: 3381 +--- !u!114 &6 +MonoBehaviour: + m_ObjectHideFlags: 52 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 1 + m_Script: {fileID: 12010, guid: 0000000000000000e000000000000000, type: 0} + m_Name: + m_EditorClassIdentifier: + m_Children: + - {fileID: 7} + - {fileID: 10} + m_Position: + serializedVersion: 2 + x: 0 + y: 0 + width: 1355 + height: 947 + m_MinSize: {x: 404, y: 498} + m_MaxSize: {x: 10002, y: 14048} + vertical: 1 + controlID: 3382 +--- !u!114 &7 +MonoBehaviour: + m_ObjectHideFlags: 52 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 1 + m_Script: {fileID: 12010, guid: 0000000000000000e000000000000000, type: 0} + m_Name: + m_EditorClassIdentifier: + m_Children: + - {fileID: 8} + - {fileID: 9} + m_Position: + serializedVersion: 2 + x: 0 + y: 0 + width: 1355 + height: 607 + m_MinSize: {x: 404, y: 224} + m_MaxSize: {x: 8004, y: 4024} + vertical: 0 + controlID: 3383 +--- !u!114 &8 +MonoBehaviour: + m_ObjectHideFlags: 52 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 1 + m_Script: {fileID: 12006, guid: 0000000000000000e000000000000000, type: 0} + m_Name: + m_EditorClassIdentifier: + m_Children: [] + m_Position: + serializedVersion: 2 + x: 0 + y: 0 + width: 326 + height: 607 + m_MinSize: {x: 200, y: 200} + m_MaxSize: {x: 4000, y: 4000} + m_ActualView: {fileID: 13} + m_Panes: + - {fileID: 13} + m_Selected: 0 + m_LastSelected: 0 +--- !u!114 &9 +MonoBehaviour: + m_ObjectHideFlags: 52 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 1 + m_Script: {fileID: 12006, guid: 0000000000000000e000000000000000, type: 0} + m_Name: + m_EditorClassIdentifier: + m_Children: [] + m_Position: + serializedVersion: 2 + x: 326 + y: 0 + width: 1029 + height: 607 + m_MinSize: {x: 204, y: 224} + m_MaxSize: {x: 4004, y: 4024} + m_ActualView: {fileID: 14} + m_Panes: + - {fileID: 14} + - {fileID: 12} + - {fileID: 15} + m_Selected: 0 + m_LastSelected: 1 +--- !u!114 &10 +MonoBehaviour: + m_ObjectHideFlags: 52 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 1 + m_Script: {fileID: 12006, guid: 0000000000000000e000000000000000, type: 0} + m_Name: + m_EditorClassIdentifier: + m_Children: [] + m_Position: + serializedVersion: 2 + x: 0 + y: 607 + width: 1355 + height: 340 + m_MinSize: {x: 232, y: 274} + m_MaxSize: {x: 10002, y: 10024} + m_ActualView: {fileID: 16} + m_Panes: + - {fileID: 16} + - {fileID: 17} + m_Selected: 0 + m_LastSelected: 1 +--- !u!114 &11 +MonoBehaviour: + m_ObjectHideFlags: 52 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 1 + m_Script: {fileID: 12006, guid: 0000000000000000e000000000000000, type: 0} + m_Name: + m_EditorClassIdentifier: + m_Children: [] + m_Position: + serializedVersion: 2 + x: 1355 + y: 0 + width: 565 + height: 947 + m_MinSize: {x: 275, y: 50} + m_MaxSize: {x: 4000, y: 4000} + m_ActualView: {fileID: 18} + m_Panes: + - {fileID: 18} + m_Selected: 0 + m_LastSelected: 0 +--- !u!114 &12 +MonoBehaviour: + m_ObjectHideFlags: 52 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 1 + m_Script: {fileID: 12015, guid: 0000000000000000e000000000000000, type: 0} + m_Name: + m_EditorClassIdentifier: + m_MinSize: {x: 200, y: 200} + m_MaxSize: {x: 4000, y: 4000} + m_TitleContent: + m_Text: Game + m_Image: {fileID: -2087823869225018852, guid: 0000000000000000d000000000000000, + type: 0} + m_Tooltip: + m_Pos: + serializedVersion: 2 + x: 326 + y: 73 + width: 1025 + height: 587 + m_PersistentViewDataDictionary: {fileID: 0} + m_MaximizeOnPlay: 0 + m_Gizmos: 0 + m_Stats: 0 + m_SelectedSizes: 05000000000000000000000000000000000000000000000000000000000000000000000000000000 + m_TargetDisplay: 0 + m_ZoomArea: + m_HRangeLocked: 0 + m_VRangeLocked: 0 + hZoomLockedByDefault: 0 + vZoomLockedByDefault: 0 + m_HBaseRangeMin: -506.5 + m_HBaseRangeMax: 506.5 + m_VBaseRangeMin: -285 + m_VBaseRangeMax: 285 + m_HAllowExceedBaseRangeMin: 1 + m_HAllowExceedBaseRangeMax: 1 + m_VAllowExceedBaseRangeMin: 1 + m_VAllowExceedBaseRangeMax: 1 + m_ScaleWithWindow: 0 + m_HSlider: 0 + m_VSlider: 0 + m_IgnoreScrollWheelUntilClicked: 0 + m_EnableMouseInput: 0 + m_EnableSliderZoomHorizontal: 0 + m_EnableSliderZoomVertical: 0 + m_UniformScale: 1 + m_UpDirection: 1 + m_DrawArea: + serializedVersion: 2 + x: 0 + y: 17 + width: 1025 + height: 570 + m_Scale: {x: 1.092727, y: 1.092727} + m_Translation: {x: 512.5, y: 291.21274} + m_MarginLeft: 0 + m_MarginRight: 0 + m_MarginTop: 0 + m_MarginBottom: 0 + m_LastShownAreaInsideMargins: + serializedVersion: 2 + x: -469.01013 + y: -266.50092 + width: 938.02026 + height: 521.6308 + m_MinimalGUI: 1 + m_defaultScale: 1 + m_TargetTexture: {fileID: 0} + m_CurrentColorSpace: 0 + m_LastWindowPixelSize: {x: 1025, y: 587} + m_ClearInEditMode: 1 + m_NoCameraWarning: 1 + m_LowResolutionForAspectRatios: 01000000000100000100 + m_XRRenderMode: 0 +--- !u!114 &13 +MonoBehaviour: + m_ObjectHideFlags: 52 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 1 + m_Script: {fileID: 12061, guid: 0000000000000000e000000000000000, type: 0} + m_Name: + m_EditorClassIdentifier: + m_MinSize: {x: 200, y: 200} + m_MaxSize: {x: 4000, y: 4000} + m_TitleContent: + m_Text: Hierarchy + m_Image: {fileID: -590624980919486359, guid: 0000000000000000d000000000000000, + type: 0} + m_Tooltip: + m_Pos: + serializedVersion: 2 + x: 0 + y: 73 + width: 324 + height: 587 + m_PersistentViewDataDictionary: {fileID: 0} + m_SceneHierarchy: + m_TreeViewState: + scrollPos: {x: 0, y: 70} + m_SelectedIDs: 78b2ffff + m_LastClickedID: -19848 + m_ExpandedIDs: caacffffe8acffff5cb0ffffd0b3ffff86b4ffffceb4ffffd6b4ffffdeb4ffff06f3ffff0a710000fc71000006720000c8720000 + m_RenameOverlay: + m_UserAcceptedRename: 0 + m_Name: + m_OriginalName: + m_EditFieldRect: + serializedVersion: 2 + x: 0 + y: 0 + width: 0 + height: 0 + m_UserData: 0 + m_IsWaitingForDelay: 0 + m_IsRenaming: 0 + m_OriginalEventType: 11 + m_IsRenamingFilename: 0 + m_ClientGUIView: {fileID: 8} + m_SearchString: + m_ExpandedScenes: [] + m_CurrenRootInstanceID: 0 + m_LockTracker: + m_IsLocked: 0 + m_CurrentSortingName: TransformSorting + m_WindowGUID: 46b7a0fefa812c44ca6fda42b4d7b176 +--- !u!114 &14 +MonoBehaviour: + m_ObjectHideFlags: 52 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 1 + m_Script: {fileID: 12013, guid: 0000000000000000e000000000000000, type: 0} + m_Name: + m_EditorClassIdentifier: + m_MinSize: {x: 200, y: 200} + m_MaxSize: {x: 4000, y: 4000} + m_TitleContent: + m_Text: Scene + m_Image: {fileID: 0} + m_Tooltip: + m_Pos: + serializedVersion: 2 + x: 326 + y: 73 + width: 1025 + height: 587 + m_PersistentViewDataDictionary: {fileID: 0} + m_WindowGUID: d69a67902db7f994ca099bec79d22ce1 + m_SceneLighting: 1 + m_2DMode: 0 + m_isRotationLocked: 0 + m_AudioPlay: 0 + m_Position: + m_Target: {x: 20.529217, y: 4.3045435, z: 14.168077} + speed: 2 + m_Value: {x: 20.529217, y: 4.3045435, z: 14.168077} + m_RenderMode: 0 + m_CameraMode: + drawMode: 0 + name: Shaded + section: Shading Mode + m_ValidateTrueMetals: 0 + m_SceneViewState: + showFog: 1 + showMaterialUpdate: 0 + showSkybox: 1 + showFlares: 1 + showImageEffects: 1 + showParticleSystems: 1 + grid: + xGrid: + m_Target: 0 + speed: 2 + m_Value: 0 + yGrid: + m_Target: 0 + speed: 2 + m_Value: 0 + zGrid: + m_Target: 0 + speed: 2 + m_Value: 0 + m_Rotation: + m_Target: {x: 0.031834178, y: 0.22649035, z: 0.007407069, w: -0.9734649} + speed: 2 + m_Value: {x: 0.031834178, y: 0.22649035, z: 0.007407069, w: -0.9734649} + m_Size: + m_Target: 20.992071 + speed: 2 + m_Value: 20.992071 + m_Ortho: + m_Target: 0 + speed: 2 + m_Value: 0 + m_ShowGlobalGrid: 1 + m_LastSceneViewRotation: {x: -0.060441673, y: -0.9126098, z: 0.14634056, w: -0.37692794} + m_LastSceneViewOrtho: 0 + m_ReplacementShader: {fileID: 0} + m_ReplacementString: + m_LastLockedObject: {fileID: 0} + m_ViewIsLockedToObject: 0 +--- !u!114 &15 +MonoBehaviour: + m_ObjectHideFlags: 52 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 1 + m_Script: {fileID: 12111, guid: 0000000000000000e000000000000000, type: 0} + m_Name: + m_EditorClassIdentifier: + m_MinSize: {x: 400, y: 100} + m_MaxSize: {x: 2048, y: 2048} + m_TitleContent: + m_Text: Asset Store + m_Image: {fileID: 357073275683767465, guid: 0000000000000000d000000000000000, + type: 0} + m_Tooltip: + m_Pos: + serializedVersion: 2 + x: 326 + y: 73 + width: 1025 + height: 587 + m_PersistentViewDataDictionary: {fileID: 0} +--- !u!114 &16 +MonoBehaviour: + m_ObjectHideFlags: 52 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 1 + m_Script: {fileID: 12014, guid: 0000000000000000e000000000000000, type: 0} + m_Name: + m_EditorClassIdentifier: + m_MinSize: {x: 230, y: 250} + m_MaxSize: {x: 10000, y: 10000} + m_TitleContent: + m_Text: Project + m_Image: {fileID: -7501376956915960154, guid: 0000000000000000d000000000000000, + type: 0} + m_Tooltip: + m_Pos: + serializedVersion: 2 + x: 0 + y: 680 + width: 1353 + height: 320 + m_PersistentViewDataDictionary: {fileID: 0} + m_SearchFilter: + m_NameFilter: + m_ClassNames: [] + m_AssetLabels: [] + m_AssetBundleNames: [] + m_VersionControlStates: [] + m_SoftLockControlStates: [] + m_ReferencingInstanceIDs: + m_SceneHandles: + m_ShowAllHits: 0 + m_SearchArea: 1 + m_Folders: + - Assets/Karting/Materials + m_ViewMode: 1 + m_StartGridSize: 96 + m_LastFolders: + - Assets/Karting/Materials + m_LastFoldersGridSize: 96 + m_LastProjectPath: C:\UnityLearn\ZYW_homework + m_LockTracker: + m_IsLocked: 0 + m_FolderTreeState: + scrollPos: {x: 0, y: 79} + m_SelectedIDs: e2500000 + m_LastClickedID: 20706 + m_ExpandedIDs: 00000000702e0000e05000002c5100004c51000000ca9a3b + m_RenameOverlay: + m_UserAcceptedRename: 0 + m_Name: + m_OriginalName: + m_EditFieldRect: + serializedVersion: 2 + x: 0 + y: 0 + width: 0 + height: 0 + m_UserData: 0 + m_IsWaitingForDelay: 0 + m_IsRenaming: 0 + m_OriginalEventType: 11 + m_IsRenamingFilename: 1 + m_ClientGUIView: {fileID: 10} + m_SearchString: + m_CreateAssetUtility: + m_EndAction: {fileID: 0} + m_InstanceID: 0 + m_Path: + m_Icon: {fileID: 0} + m_ResourceFile: + m_AssetTreeState: + scrollPos: {x: 0, y: 0} + m_SelectedIDs: + m_LastClickedID: 0 + m_ExpandedIDs: 00000000702e0000e05000002c5100004c51000000ca9a3b + m_RenameOverlay: + m_UserAcceptedRename: 0 + m_Name: + m_OriginalName: + m_EditFieldRect: + serializedVersion: 2 + x: 0 + y: 0 + width: 0 + height: 0 + m_UserData: 0 + m_IsWaitingForDelay: 0 + m_IsRenaming: 0 + m_OriginalEventType: 11 + m_IsRenamingFilename: 1 + m_ClientGUIView: {fileID: 0} + m_SearchString: + m_CreateAssetUtility: + m_EndAction: {fileID: 0} + m_InstanceID: 0 + m_Path: + m_Icon: {fileID: 0} + m_ResourceFile: + m_ListAreaState: + m_SelectedInstanceIDs: + m_LastClickedInstanceID: 0 + m_HadKeyboardFocusLastEvent: 1 + m_ExpandedInstanceIDs: c6230000 + m_RenameOverlay: + m_UserAcceptedRename: 0 + m_Name: + m_OriginalName: + m_EditFieldRect: + serializedVersion: 2 + x: 0 + y: 0 + width: 0 + height: 0 + m_UserData: 0 + m_IsWaitingForDelay: 0 + m_IsRenaming: 0 + m_OriginalEventType: 11 + m_IsRenamingFilename: 1 + m_ClientGUIView: {fileID: 10} + m_CreateAssetUtility: + m_EndAction: {fileID: 0} + m_InstanceID: 0 + m_Path: + m_Icon: {fileID: 0} + m_ResourceFile: + m_NewAssetIndexInList: -1 + m_ScrollPosition: {x: 0, y: 0} + m_GridSize: 96 + m_DirectoriesAreaWidth: 320 +--- !u!114 &17 +MonoBehaviour: + m_ObjectHideFlags: 52 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 1 + m_Script: {fileID: 12003, guid: 0000000000000000e000000000000000, type: 0} + m_Name: + m_EditorClassIdentifier: + m_MinSize: {x: 100, y: 100} + m_MaxSize: {x: 4000, y: 4000} + m_TitleContent: + m_Text: Console + m_Image: {fileID: 111653112392082826, guid: 0000000000000000d000000000000000, + type: 0} + m_Tooltip: + m_Pos: + serializedVersion: 2 + x: 0 + y: 680 + width: 1353 + height: 320 + m_PersistentViewDataDictionary: {fileID: 0} +--- !u!114 &18 +MonoBehaviour: + m_ObjectHideFlags: 52 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 1 + m_Script: {fileID: 12019, guid: 0000000000000000e000000000000000, type: 0} + m_Name: + m_EditorClassIdentifier: + m_MinSize: {x: 275, y: 50} + m_MaxSize: {x: 4000, y: 4000} + m_TitleContent: + m_Text: Inspector + m_Image: {fileID: -6905738622615590433, guid: 0000000000000000d000000000000000, + type: 0} + m_Tooltip: + m_Pos: + serializedVersion: 2 + x: 1355 + y: 73 + width: 563 + height: 927 + m_PersistentViewDataDictionary: {fileID: 0} + m_ObjectsLockedBeforeSerialization: [] + m_InstanceIDsLockedBeforeSerialization: + m_LockTracker: + m_IsLocked: 0 + m_PreviewResizer: + m_CachedPref: 160 + m_ControlHash: -371814159 + m_PrefName: Preview_InspectorPreview + m_PreviewWindow: {fileID: 0} diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/CurrentMaximizeLayout.dwlt" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/CurrentMaximizeLayout.dwlt" new file mode 100644 index 00000000..ea5ac394 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/CurrentMaximizeLayout.dwlt" @@ -0,0 +1,619 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!114 &1 +MonoBehaviour: + m_ObjectHideFlags: 52 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 1 + m_Script: {fileID: 12010, guid: 0000000000000000e000000000000000, type: 0} + m_Name: + m_EditorClassIdentifier: + m_Children: + - {fileID: 3} + - {fileID: 13} + m_Position: + serializedVersion: 2 + x: 0 + y: 30 + width: 1920 + height: 947 + m_MinSize: {x: 679, y: 498} + m_MaxSize: {x: 14002, y: 14048} + vertical: 0 + controlID: 102 +--- !u!114 &2 +MonoBehaviour: + m_ObjectHideFlags: 52 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 1 + m_Script: {fileID: 12015, guid: 0000000000000000e000000000000000, type: 0} + m_Name: + m_EditorClassIdentifier: + m_MinSize: {x: 200, y: 200} + m_MaxSize: {x: 4000, y: 4000} + m_TitleContent: + m_Text: Game + m_Image: {fileID: -2087823869225018852, guid: 0000000000000000d000000000000000, + type: 0} + m_Tooltip: + m_Pos: + serializedVersion: 2 + x: 326 + y: 73 + width: 1025 + height: 587 + m_PersistentViewDataDictionary: {fileID: 0} + m_MaximizeOnPlay: 1 + m_Gizmos: 0 + m_Stats: 0 + m_SelectedSizes: 05000000000000000000000000000000000000000000000000000000000000000000000000000000 + m_TargetDisplay: 0 + m_ZoomArea: + m_HRangeLocked: 0 + m_VRangeLocked: 0 + hZoomLockedByDefault: 0 + vZoomLockedByDefault: 0 + m_HBaseRangeMin: -506.5 + m_HBaseRangeMax: 506.5 + m_VBaseRangeMin: -285 + m_VBaseRangeMax: 285 + m_HAllowExceedBaseRangeMin: 1 + m_HAllowExceedBaseRangeMax: 1 + m_VAllowExceedBaseRangeMin: 1 + m_VAllowExceedBaseRangeMax: 1 + m_ScaleWithWindow: 0 + m_HSlider: 1 + m_VSlider: 1 + m_IgnoreScrollWheelUntilClicked: 0 + m_EnableMouseInput: 1 + m_EnableSliderZoomHorizontal: 0 + m_EnableSliderZoomVertical: 0 + m_UniformScale: 1 + m_UpDirection: 1 + m_DrawArea: + serializedVersion: 2 + x: 0 + y: 17 + width: 1025 + height: 570 + m_Scale: {x: 1.092727, y: 1.092727} + m_Translation: {x: 528.68085, y: 291.21274} + m_MarginLeft: 0 + m_MarginRight: 0 + m_MarginTop: 0 + m_MarginBottom: 0 + m_LastShownAreaInsideMargins: + serializedVersion: 2 + x: -483.8179 + y: -266.50092 + width: 938.02026 + height: 521.6308 + m_MinimalGUI: 1 + m_defaultScale: 1 + m_TargetTexture: {fileID: 0} + m_CurrentColorSpace: 0 + m_LastWindowPixelSize: {x: 1025, y: 587} + m_ClearInEditMode: 1 + m_NoCameraWarning: 1 + m_LowResolutionForAspectRatios: 01000000000100000100 + m_XRRenderMode: 0 +--- !u!114 &3 +MonoBehaviour: + m_ObjectHideFlags: 52 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 1 + m_Script: {fileID: 12010, guid: 0000000000000000e000000000000000, type: 0} + m_Name: + m_EditorClassIdentifier: + m_Children: + - {fileID: 4} + - {fileID: 10} + m_Position: + serializedVersion: 2 + x: 0 + y: 0 + width: 1355 + height: 947 + m_MinSize: {x: 404, y: 498} + m_MaxSize: {x: 10002, y: 14048} + vertical: 1 + controlID: 66 +--- !u!114 &4 +MonoBehaviour: + m_ObjectHideFlags: 52 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 1 + m_Script: {fileID: 12010, guid: 0000000000000000e000000000000000, type: 0} + m_Name: + m_EditorClassIdentifier: + m_Children: + - {fileID: 5} + - {fileID: 7} + m_Position: + serializedVersion: 2 + x: 0 + y: 0 + width: 1355 + height: 607 + m_MinSize: {x: 404, y: 224} + m_MaxSize: {x: 8004, y: 4024} + vertical: 0 + controlID: 67 +--- !u!114 &5 +MonoBehaviour: + m_ObjectHideFlags: 52 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 1 + m_Script: {fileID: 12006, guid: 0000000000000000e000000000000000, type: 0} + m_Name: + m_EditorClassIdentifier: + m_Children: [] + m_Position: + serializedVersion: 2 + x: 0 + y: 0 + width: 326 + height: 607 + m_MinSize: {x: 200, y: 200} + m_MaxSize: {x: 4000, y: 4000} + m_ActualView: {fileID: 6} + m_Panes: + - {fileID: 6} + m_Selected: 0 + m_LastSelected: 0 +--- !u!114 &6 +MonoBehaviour: + m_ObjectHideFlags: 52 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 1 + m_Script: {fileID: 12061, guid: 0000000000000000e000000000000000, type: 0} + m_Name: + m_EditorClassIdentifier: + m_MinSize: {x: 200, y: 200} + m_MaxSize: {x: 4000, y: 4000} + m_TitleContent: + m_Text: Hierarchy + m_Image: {fileID: -590624980919486359, guid: 0000000000000000d000000000000000, + type: 0} + m_Tooltip: + m_Pos: + serializedVersion: 2 + x: 0 + y: 73 + width: 324 + height: 587 + m_PersistentViewDataDictionary: {fileID: 0} + m_SceneHierarchy: + m_TreeViewState: + scrollPos: {x: 0, y: 0} + m_SelectedIDs: + m_LastClickedID: 0 + m_ExpandedIDs: caacffffe8acffff5cb0ffffd0b3ffff86b4ffffceb4ffffd6b4ffffdeb4ffff06f3ffff0a710000fc710000 + m_RenameOverlay: + m_UserAcceptedRename: 0 + m_Name: BackgroundMusic + m_OriginalName: BackgroundMusic + m_EditFieldRect: + serializedVersion: 2 + x: 0 + y: 0 + width: 0 + height: 0 + m_UserData: 29472 + m_IsWaitingForDelay: 0 + m_IsRenaming: 0 + m_OriginalEventType: 0 + m_IsRenamingFilename: 0 + m_ClientGUIView: {fileID: 5} + m_SearchString: + m_ExpandedScenes: [] + m_CurrenRootInstanceID: 0 + m_LockTracker: + m_IsLocked: 0 + m_CurrentSortingName: TransformSorting + m_WindowGUID: 46b7a0fefa812c44ca6fda42b4d7b176 +--- !u!114 &7 +MonoBehaviour: + m_ObjectHideFlags: 52 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 1 + m_Script: {fileID: 12006, guid: 0000000000000000e000000000000000, type: 0} + m_Name: + m_EditorClassIdentifier: + m_Children: [] + m_Position: + serializedVersion: 2 + x: 326 + y: 0 + width: 1029 + height: 607 + m_MinSize: {x: 204, y: 224} + m_MaxSize: {x: 4004, y: 4024} + m_ActualView: {fileID: 2} + m_Panes: + - {fileID: 8} + - {fileID: 2} + - {fileID: 9} + m_Selected: 1 + m_LastSelected: 0 +--- !u!114 &8 +MonoBehaviour: + m_ObjectHideFlags: 52 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 1 + m_Script: {fileID: 12013, guid: 0000000000000000e000000000000000, type: 0} + m_Name: + m_EditorClassIdentifier: + m_MinSize: {x: 200, y: 200} + m_MaxSize: {x: 4000, y: 4000} + m_TitleContent: + m_Text: Scene + m_Image: {fileID: 0} + m_Tooltip: + m_Pos: + serializedVersion: 2 + x: 326 + y: 73 + width: 1025 + height: 587 + m_PersistentViewDataDictionary: {fileID: 0} + m_WindowGUID: d69a67902db7f994ca099bec79d22ce1 + m_SceneLighting: 1 + m_2DMode: 0 + m_isRotationLocked: 0 + m_AudioPlay: 0 + m_Position: + m_Target: {x: 15.999866, y: 0.9824891, z: 0.030073643} + speed: 2 + m_Value: {x: 15.999866, y: 0.9824891, z: 0.030073643} + m_RenderMode: 0 + m_CameraMode: + drawMode: 0 + name: Shaded + section: Shading Mode + m_ValidateTrueMetals: 0 + m_SceneViewState: + showFog: 1 + showMaterialUpdate: 0 + showSkybox: 1 + showFlares: 1 + showImageEffects: 1 + showParticleSystems: 1 + grid: + xGrid: + m_Target: 0 + speed: 2 + m_Value: 0 + yGrid: + m_Target: 0 + speed: 2 + m_Value: 0 + zGrid: + m_Target: 0 + speed: 2 + m_Value: 0 + m_Rotation: + m_Target: {x: -0.06540669, y: 0.8442297, z: -0.105918355, w: -0.5213248} + speed: 2 + m_Value: {x: -0.06540669, y: 0.8442297, z: -0.105918355, w: -0.5213248} + m_Size: + m_Target: 10.63503 + speed: 2 + m_Value: 10.63503 + m_Ortho: + m_Target: 0 + speed: 2 + m_Value: 0 + m_ShowGlobalGrid: 1 + m_LastSceneViewRotation: {x: -0.060441673, y: -0.9126098, z: 0.14634056, w: -0.37692794} + m_LastSceneViewOrtho: 0 + m_ReplacementShader: {fileID: 0} + m_ReplacementString: + m_LastLockedObject: {fileID: 0} + m_ViewIsLockedToObject: 0 +--- !u!114 &9 +MonoBehaviour: + m_ObjectHideFlags: 52 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 1 + m_Script: {fileID: 12111, guid: 0000000000000000e000000000000000, type: 0} + m_Name: + m_EditorClassIdentifier: + m_MinSize: {x: 400, y: 100} + m_MaxSize: {x: 2048, y: 2048} + m_TitleContent: + m_Text: Asset Store + m_Image: {fileID: 357073275683767465, guid: 0000000000000000d000000000000000, + type: 0} + m_Tooltip: + m_Pos: + serializedVersion: 2 + x: 326 + y: 73 + width: 1025 + height: 587 + m_PersistentViewDataDictionary: {fileID: 0} +--- !u!114 &10 +MonoBehaviour: + m_ObjectHideFlags: 52 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 1 + m_Script: {fileID: 12006, guid: 0000000000000000e000000000000000, type: 0} + m_Name: + m_EditorClassIdentifier: + m_Children: [] + m_Position: + serializedVersion: 2 + x: 0 + y: 607 + width: 1355 + height: 340 + m_MinSize: {x: 230, y: 250} + m_MaxSize: {x: 10000, y: 10000} + m_ActualView: {fileID: 11} + m_Panes: + - {fileID: 11} + - {fileID: 12} + m_Selected: 0 + m_LastSelected: 1 +--- !u!114 &11 +MonoBehaviour: + m_ObjectHideFlags: 52 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 1 + m_Script: {fileID: 12014, guid: 0000000000000000e000000000000000, type: 0} + m_Name: + m_EditorClassIdentifier: + m_MinSize: {x: 230, y: 250} + m_MaxSize: {x: 10000, y: 10000} + m_TitleContent: + m_Text: Project + m_Image: {fileID: -7501376956915960154, guid: 0000000000000000d000000000000000, + type: 0} + m_Tooltip: + m_Pos: + serializedVersion: 2 + x: 0 + y: 680 + width: 1353 + height: 320 + m_PersistentViewDataDictionary: {fileID: 0} + m_SearchFilter: + m_NameFilter: + m_ClassNames: [] + m_AssetLabels: [] + m_AssetBundleNames: [] + m_VersionControlStates: [] + m_SoftLockControlStates: [] + m_ReferencingInstanceIDs: + m_SceneHandles: + m_ShowAllHits: 0 + m_SearchArea: 1 + m_Folders: + - Assets/Mod Assets/Kart/Particle Prefabs + m_ViewMode: 1 + m_StartGridSize: 96 + m_LastFolders: + - Assets/Mod Assets/Kart/Particle Prefabs + m_LastFoldersGridSize: 96 + m_LastProjectPath: C:\UnityLearn\ZYW_homework + m_LockTracker: + m_IsLocked: 0 + m_FolderTreeState: + scrollPos: {x: 0, y: 193} + m_SelectedIDs: 2e510000 + m_LastClickedID: 20782 + m_ExpandedIDs: 00000000702e0000e05000002c5100004c51000000ca9a3b + m_RenameOverlay: + m_UserAcceptedRename: 0 + m_Name: + m_OriginalName: + m_EditFieldRect: + serializedVersion: 2 + x: 0 + y: 0 + width: 0 + height: 0 + m_UserData: 0 + m_IsWaitingForDelay: 0 + m_IsRenaming: 0 + m_OriginalEventType: 11 + m_IsRenamingFilename: 1 + m_ClientGUIView: {fileID: 10} + m_SearchString: + m_CreateAssetUtility: + m_EndAction: {fileID: 0} + m_InstanceID: 0 + m_Path: + m_Icon: {fileID: 0} + m_ResourceFile: + m_AssetTreeState: + scrollPos: {x: 0, y: 0} + m_SelectedIDs: + m_LastClickedID: 0 + m_ExpandedIDs: + m_RenameOverlay: + m_UserAcceptedRename: 0 + m_Name: + m_OriginalName: + m_EditFieldRect: + serializedVersion: 2 + x: 0 + y: 0 + width: 0 + height: 0 + m_UserData: 0 + m_IsWaitingForDelay: 0 + m_IsRenaming: 0 + m_OriginalEventType: 11 + m_IsRenamingFilename: 1 + m_ClientGUIView: {fileID: 0} + m_SearchString: + m_CreateAssetUtility: + m_EndAction: {fileID: 0} + m_InstanceID: 0 + m_Path: + m_Icon: {fileID: 0} + m_ResourceFile: + m_ListAreaState: + m_SelectedInstanceIDs: 7eacffff + m_LastClickedInstanceID: -21378 + m_HadKeyboardFocusLastEvent: 1 + m_ExpandedInstanceIDs: c6230000 + m_RenameOverlay: + m_UserAcceptedRename: 0 + m_Name: + m_OriginalName: + m_EditFieldRect: + serializedVersion: 2 + x: 0 + y: 0 + width: 0 + height: 0 + m_UserData: 0 + m_IsWaitingForDelay: 0 + m_IsRenaming: 0 + m_OriginalEventType: 11 + m_IsRenamingFilename: 1 + m_ClientGUIView: {fileID: 10} + m_CreateAssetUtility: + m_EndAction: {fileID: 0} + m_InstanceID: 0 + m_Path: + m_Icon: {fileID: 0} + m_ResourceFile: + m_NewAssetIndexInList: -1 + m_ScrollPosition: {x: 0, y: 0} + m_GridSize: 96 + m_DirectoriesAreaWidth: 320 +--- !u!114 &12 +MonoBehaviour: + m_ObjectHideFlags: 52 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 1 + m_Script: {fileID: 12003, guid: 0000000000000000e000000000000000, type: 0} + m_Name: + m_EditorClassIdentifier: + m_MinSize: {x: 100, y: 100} + m_MaxSize: {x: 4000, y: 4000} + m_TitleContent: + m_Text: Console + m_Image: {fileID: 111653112392082826, guid: 0000000000000000d000000000000000, + type: 0} + m_Tooltip: + m_Pos: + serializedVersion: 2 + x: 0 + y: 680 + width: 1353 + height: 320 + m_PersistentViewDataDictionary: {fileID: 0} +--- !u!114 &13 +MonoBehaviour: + m_ObjectHideFlags: 52 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 1 + m_Script: {fileID: 12006, guid: 0000000000000000e000000000000000, type: 0} + m_Name: + m_EditorClassIdentifier: + m_Children: [] + m_Position: + serializedVersion: 2 + x: 1355 + y: 0 + width: 565 + height: 947 + m_MinSize: {x: 275, y: 50} + m_MaxSize: {x: 4000, y: 4000} + m_ActualView: {fileID: 14} + m_Panes: + - {fileID: 14} + m_Selected: 0 + m_LastSelected: 0 +--- !u!114 &14 +MonoBehaviour: + m_ObjectHideFlags: 52 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 1 + m_Script: {fileID: 12019, guid: 0000000000000000e000000000000000, type: 0} + m_Name: + m_EditorClassIdentifier: + m_MinSize: {x: 275, y: 50} + m_MaxSize: {x: 4000, y: 4000} + m_TitleContent: + m_Text: Inspector + m_Image: {fileID: -6905738622615590433, guid: 0000000000000000d000000000000000, + type: 0} + m_Tooltip: + m_Pos: + serializedVersion: 2 + x: 1355 + y: 73 + width: 563 + height: 927 + m_PersistentViewDataDictionary: {fileID: 0} + m_ObjectsLockedBeforeSerialization: [] + m_InstanceIDsLockedBeforeSerialization: + m_LockTracker: + m_IsLocked: 0 + m_PreviewResizer: + m_CachedPref: 160 + m_ControlHash: -371814159 + m_PrefName: Preview_InspectorPreview + m_PreviewWindow: {fileID: 0} diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/EditorOnlyScriptingUserSettings.json" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/EditorOnlyScriptingUserSettings.json" new file mode 100644 index 00000000..1b2c4043 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/EditorOnlyScriptingUserSettings.json" @@ -0,0 +1 @@ +{"m_ScriptingRuntimeVersion":1,"m_DefineSymbols":[{"first":1,"second":"UNITY_POST_PROCESSING_STACK_V2;UNITY_TEMPLATE_KART"},{"first":4,"second":"UNITY_POST_PROCESSING_STACK_V2"},{"first":7,"second":"UNITY_POST_PROCESSING_STACK_V2"},{"first":13,"second":"UNITY_POST_PROCESSING_STACK_V2;UNITY_TEMPLATE_KART"},{"first":14,"second":"UNITY_POST_PROCESSING_STACK_V2"},{"first":19,"second":"UNITY_POST_PROCESSING_STACK_V2"},{"first":21,"second":"UNITY_POST_PROCESSING_STACK_V2"},{"first":25,"second":"UNITY_POST_PROCESSING_STACK_V2"},{"first":26,"second":"UNITY_POST_PROCESSING_STACK_V2"},{"first":27,"second":"UNITY_POST_PROCESSING_STACK_V2"},{"first":28,"second":"UNITY_POST_PROCESSING_STACK_V2"}],"m_AllowUnsafeCode":true} \ No newline at end of file diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/EditorUserBuildSettings.asset" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/EditorUserBuildSettings.asset" new file mode 100644 index 00000000..8d955253 Binary files /dev/null and "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/EditorUserBuildSettings.asset" differ diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/EditorUserSettings.asset" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/EditorUserSettings.asset" new file mode 100644 index 00000000..c870a0bf Binary files /dev/null and "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/EditorUserSettings.asset" differ diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/InspectorExpandedItems.asset" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/InspectorExpandedItems.asset" new file mode 100644 index 00000000..146317c4 Binary files /dev/null and "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/InspectorExpandedItems.asset" differ diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/LastSceneManagerSetup.txt" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/LastSceneManagerSetup.txt" new file mode 100644 index 00000000..e835b9df --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/LastSceneManagerSetup.txt" @@ -0,0 +1,4 @@ +sceneSetups: +- path: Assets/Karting/Scenes/SampleScene.unity + isLoaded: 1 + isActive: 1 diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/LibraryFormatVersion.txt" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/LibraryFormatVersion.txt" new file mode 100644 index 00000000..6185f096 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/LibraryFormatVersion.txt" @@ -0,0 +1,2 @@ +unityRebuildLibraryVersion: 11 +unityForwardCompatibleVersion: 40 diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/MonoManager.asset" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/MonoManager.asset" new file mode 100644 index 00000000..35d160ae Binary files /dev/null and "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/MonoManager.asset" differ diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.ads@2.0.8/CHANGELOG.md" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.ads@2.0.8/CHANGELOG.md" new file mode 100644 index 00000000..ceaa4264 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.ads@2.0.8/CHANGELOG.md" @@ -0,0 +1,37 @@ + +[1.0.1] + +Adding Readme file +Adding local plugin importer callbacks. +Removing Bintray references in package.json + +[2.0.3] + +Fix bug where importing the asset store ads package would cause duiplicate symbols, +and removing the asset store ads package would cause missing symbols. + +[2.0.4] + +Added new description string to package.json +Fixed art assets to use no compression (fixes issue switching between iOS and PC builds) + +[2.0.5] - 2018-03-29 + +Fix for https://fogbugz.unity3d.com/f/cases/1011363 +Fixes an incorrect guid that the importer used to include/exclude the runtime assembly from the build. + +[2.0.6] - 2018-03-29 + +Update changelog for this and 2.0.5 + +[2.0.7] - 2018-04-06 + +Fix editor assembly project file to include the importer script. + +[2.0.8] - 2018-05-01 + +Add call to SetShouldOverridePredicate to exclude package dll when asset store dlls are present. +Update unity version attribute to support 2017.4 LTS + +Fix an issue with the editor assembly to add back in some iOS platform specific code that was removed +via conditionals (which is fine for source packages, but doesn't work with precompiled assemblies) diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.ads@2.0.8/CHANGELOG.md.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.ads@2.0.8/CHANGELOG.md.meta" new file mode 100644 index 00000000..5d2eb24c --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.ads@2.0.8/CHANGELOG.md.meta" @@ -0,0 +1,7 @@ +fileFormatVersion: 2 +guid: 35b4e72ca46f44581b85082c4dc21d13 +TextScriptImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.ads@2.0.8/Editor.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.ads@2.0.8/Editor.meta" new file mode 100644 index 00000000..575303a2 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.ads@2.0.8/Editor.meta" @@ -0,0 +1,9 @@ +fileFormatVersion: 2 +guid: a37e18887fa954edf92bc36bc353b879 +folderAsset: yes +timeCreated: 1491945644 +licenseType: Pro +DefaultImporter: + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.ads@2.0.8/Editor/Resources.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.ads@2.0.8/Editor/Resources.meta" new file mode 100644 index 00000000..aae7f602 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.ads@2.0.8/Editor/Resources.meta" @@ -0,0 +1,9 @@ +fileFormatVersion: 2 +guid: 7c3a5d6e39b874f468b2691537168513 +folderAsset: yes +timeCreated: 1491258568 +licenseType: Pro +DefaultImporter: + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.ads@2.0.8/Editor/Resources/Android.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.ads@2.0.8/Editor/Resources/Android.meta" new file mode 100644 index 00000000..45b8bb6e --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.ads@2.0.8/Editor/Resources/Android.meta" @@ -0,0 +1,9 @@ +fileFormatVersion: 2 +guid: 48986928cc2a449dbaecdd1654bc9bf6 +folderAsset: yes +timeCreated: 1491258705 +licenseType: Pro +DefaultImporter: + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.ads@2.0.8/Editor/Resources/Android/builds.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.ads@2.0.8/Editor/Resources/Android/builds.meta" new file mode 100644 index 00000000..826840ef --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.ads@2.0.8/Editor/Resources/Android/builds.meta" @@ -0,0 +1,9 @@ +fileFormatVersion: 2 +guid: f28fcced5af094cf78eb4e1109a71981 +folderAsset: yes +timeCreated: 1491258705 +licenseType: Pro +DefaultImporter: + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.ads@2.0.8/Editor/Resources/Android/builds/unity-ads.aar" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.ads@2.0.8/Editor/Resources/Android/builds/unity-ads.aar" new file mode 100644 index 00000000..a05fc299 Binary files /dev/null and "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.ads@2.0.8/Editor/Resources/Android/builds/unity-ads.aar" differ diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.ads@2.0.8/Editor/Resources/Android/builds/unity-ads.aar.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.ads@2.0.8/Editor/Resources/Android/builds/unity-ads.aar.meta" new file mode 100644 index 00000000..6ba354b6 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.ads@2.0.8/Editor/Resources/Android/builds/unity-ads.aar.meta" @@ -0,0 +1,21 @@ +fileFormatVersion: 2 +guid: b32abd1c9d73a4cce8389f084ac12b11 +timeCreated: 1491258710 +licenseType: Pro +PluginImporter: + serializedVersion: 1 + iconMap: {} + executionOrder: {} + isPreloaded: 0 + isOverridable: 0 + platformData: + Editor: + enabled: 1 + settings: + DefaultValueInitialized: true + data: + enabled: 0 + settings: {} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.ads@2.0.8/Editor/Resources/Editor.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.ads@2.0.8/Editor/Resources/Editor.meta" new file mode 100644 index 00000000..8defda5c --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.ads@2.0.8/Editor/Resources/Editor.meta" @@ -0,0 +1,9 @@ +fileFormatVersion: 2 +guid: 99ddb49592ff84811804420a1910cb89 +folderAsset: yes +timeCreated: 1491258705 +licenseType: Pro +DefaultImporter: + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.ads@2.0.8/Editor/Resources/Editor/landscape.jpg" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.ads@2.0.8/Editor/Resources/Editor/landscape.jpg" new file mode 100644 index 00000000..4fa7f280 Binary files /dev/null and "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.ads@2.0.8/Editor/Resources/Editor/landscape.jpg" differ diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.ads@2.0.8/Editor/Resources/Editor/landscape.jpg.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.ads@2.0.8/Editor/Resources/Editor/landscape.jpg.meta" new file mode 100644 index 00000000..ce5a605c --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.ads@2.0.8/Editor/Resources/Editor/landscape.jpg.meta" @@ -0,0 +1,105 @@ +fileFormatVersion: 2 +guid: 10bf81265ad87424d946598c575f45a0 +TextureImporter: + fileIDToRecycleName: {} + externalObjects: {} + serializedVersion: 5 + mipmaps: + mipMapMode: 0 + enableMipMap: 1 + sRGBTexture: 1 + linearTexture: 0 + fadeOut: 0 + borderMipMap: 0 + mipMapsPreserveCoverage: 0 + alphaTestReferenceValue: 0.5 + mipMapFadeDistanceStart: 1 + mipMapFadeDistanceEnd: 3 + bumpmap: + convertToNormalMap: 0 + externalNormalMap: 0 + heightScale: 0.25 + normalMapFilter: 0 + isReadable: 0 + grayScaleToAlpha: 0 + generateCubemap: 6 + cubemapConvolution: 0 + seamlessCubemap: 0 + textureFormat: 1 + maxTextureSize: 2048 + textureSettings: + serializedVersion: 2 + filterMode: -1 + aniso: -1 + mipBias: -1 + wrapU: -1 + wrapV: -1 + wrapW: -1 + nPOTScale: 1 + lightmap: 0 + compressionQuality: 50 + spriteMode: 0 + spriteExtrude: 1 + spriteMeshType: 1 + alignment: 0 + spritePivot: {x: 0.5, y: 0.5} + spriteBorder: {x: 0, y: 0, z: 0, w: 0} + spritePixelsToUnits: 100 + alphaUsage: 1 + alphaIsTransparency: 0 + spriteTessellationDetail: -1 + textureType: 0 + textureShape: 1 + singleChannelComponent: 0 + maxTextureSizeSet: 0 + compressionQualitySet: 0 + textureFormatSet: 0 + platformSettings: + - serializedVersion: 2 + buildTarget: DefaultTexturePlatform + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 0 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Standalone + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 0 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: iPhone + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 0 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 0 + spriteSheet: + serializedVersion: 2 + sprites: [] + outline: [] + physicsShape: [] + bones: [] + spriteID: + vertices: [] + indices: + edges: [] + weights: [] + spritePackingTag: + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.ads@2.0.8/Editor/Resources/Editor/portrait.jpg" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.ads@2.0.8/Editor/Resources/Editor/portrait.jpg" new file mode 100644 index 00000000..5d8fb0b9 Binary files /dev/null and "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.ads@2.0.8/Editor/Resources/Editor/portrait.jpg" differ diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.ads@2.0.8/Editor/Resources/Editor/portrait.jpg.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.ads@2.0.8/Editor/Resources/Editor/portrait.jpg.meta" new file mode 100644 index 00000000..ff78850d --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.ads@2.0.8/Editor/Resources/Editor/portrait.jpg.meta" @@ -0,0 +1,105 @@ +fileFormatVersion: 2 +guid: 1b32bcce201b4494ea8848326290c5d5 +TextureImporter: + fileIDToRecycleName: {} + externalObjects: {} + serializedVersion: 5 + mipmaps: + mipMapMode: 0 + enableMipMap: 1 + sRGBTexture: 1 + linearTexture: 0 + fadeOut: 0 + borderMipMap: 0 + mipMapsPreserveCoverage: 0 + alphaTestReferenceValue: 0.5 + mipMapFadeDistanceStart: 1 + mipMapFadeDistanceEnd: 3 + bumpmap: + convertToNormalMap: 0 + externalNormalMap: 0 + heightScale: 0.25 + normalMapFilter: 0 + isReadable: 0 + grayScaleToAlpha: 0 + generateCubemap: 6 + cubemapConvolution: 0 + seamlessCubemap: 0 + textureFormat: 1 + maxTextureSize: 2048 + textureSettings: + serializedVersion: 2 + filterMode: -1 + aniso: -1 + mipBias: -1 + wrapU: -1 + wrapV: -1 + wrapW: -1 + nPOTScale: 1 + lightmap: 0 + compressionQuality: 50 + spriteMode: 0 + spriteExtrude: 1 + spriteMeshType: 1 + alignment: 0 + spritePivot: {x: 0.5, y: 0.5} + spriteBorder: {x: 0, y: 0, z: 0, w: 0} + spritePixelsToUnits: 100 + alphaUsage: 1 + alphaIsTransparency: 0 + spriteTessellationDetail: -1 + textureType: 0 + textureShape: 1 + singleChannelComponent: 0 + maxTextureSizeSet: 0 + compressionQualitySet: 0 + textureFormatSet: 0 + platformSettings: + - serializedVersion: 2 + buildTarget: DefaultTexturePlatform + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 0 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Standalone + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 0 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: iPhone + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 0 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 0 + spriteSheet: + serializedVersion: 2 + sprites: [] + outline: [] + physicsShape: [] + bones: [] + spriteID: + vertices: [] + indices: + edges: [] + weights: [] + spritePackingTag: + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.ads@2.0.8/Editor/Resources/iOS.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.ads@2.0.8/Editor/Resources/iOS.meta" new file mode 100644 index 00000000..a44e61b4 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.ads@2.0.8/Editor/Resources/iOS.meta" @@ -0,0 +1,9 @@ +fileFormatVersion: 2 +guid: 4f234578336894dc081edf696f2ff5f2 +folderAsset: yes +timeCreated: 1491258705 +licenseType: Pro +DefaultImporter: + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.ads@2.0.8/Editor/Resources/iOS/builds.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.ads@2.0.8/Editor/Resources/iOS/builds.meta" new file mode 100644 index 00000000..f37efbe6 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.ads@2.0.8/Editor/Resources/iOS/builds.meta" @@ -0,0 +1,9 @@ +fileFormatVersion: 2 +guid: 2d4d46c70fdd242668a56e99799e8540 +folderAsset: yes +timeCreated: 1491258705 +licenseType: Pro +DefaultImporter: + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.ads@2.0.8/Editor/Resources/iOS/builds/UnityAds.framework.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.ads@2.0.8/Editor/Resources/iOS/builds/UnityAds.framework.meta" new file mode 100644 index 00000000..c83ed20c --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.ads@2.0.8/Editor/Resources/iOS/builds/UnityAds.framework.meta" @@ -0,0 +1,22 @@ +fileFormatVersion: 2 +guid: eeed6954b3c264ca0b28a92aa6289bf0 +folderAsset: yes +timeCreated: 1491258705 +licenseType: Pro +PluginImporter: + serializedVersion: 1 + iconMap: {} + executionOrder: {} + isPreloaded: 0 + isOverridable: 0 + platformData: + Editor: + enabled: 1 + settings: + DefaultValueInitialized: true + data: + enabled: 0 + settings: {} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.ads@2.0.8/Editor/Resources/iOS/builds/UnityAds.framework/Headers.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.ads@2.0.8/Editor/Resources/iOS/builds/UnityAds.framework/Headers.meta" new file mode 100644 index 00000000..fab0de2b --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.ads@2.0.8/Editor/Resources/iOS/builds/UnityAds.framework/Headers.meta" @@ -0,0 +1,9 @@ +fileFormatVersion: 2 +guid: 6e7c8cfeedae74eb3a562055e069e441 +folderAsset: yes +timeCreated: 1491258705 +licenseType: Pro +DefaultImporter: + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.ads@2.0.8/Editor/Resources/iOS/builds/UnityAds.framework/Headers/UADSInAppPurchaseMetaData.h" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.ads@2.0.8/Editor/Resources/iOS/builds/UnityAds.framework/Headers/UADSInAppPurchaseMetaData.h" new file mode 100644 index 00000000..8edc8c14 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.ads@2.0.8/Editor/Resources/iOS/builds/UnityAds.framework/Headers/UADSInAppPurchaseMetaData.h" @@ -0,0 +1,11 @@ +#import "UADSMetaData.h" + +@interface UADSInAppPurchaseMetaData : UADSMetaData + +- (void)setProductId:(NSString *)productId; +- (void)setPrice:(NSNumber *)price; +- (void)setCurrency:(NSString *)currency; +- (void)setReceiptPurchaseData:(NSString *)receiptPurchaseData; +- (void)setSignature:(NSString *)signature; + +@end diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.ads@2.0.8/Editor/Resources/iOS/builds/UnityAds.framework/Headers/UADSInAppPurchaseMetaData.h.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.ads@2.0.8/Editor/Resources/iOS/builds/UnityAds.framework/Headers/UADSInAppPurchaseMetaData.h.meta" new file mode 100644 index 00000000..98aa8391 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.ads@2.0.8/Editor/Resources/iOS/builds/UnityAds.framework/Headers/UADSInAppPurchaseMetaData.h.meta" @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 7927683d1fc5848b5abfb54ebb1028ec +timeCreated: 1493316657 +licenseType: Pro +DefaultImporter: + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.ads@2.0.8/Editor/Resources/iOS/builds/UnityAds.framework/Headers/UADSJsonStorage.h" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.ads@2.0.8/Editor/Resources/iOS/builds/UnityAds.framework/Headers/UADSJsonStorage.h" new file mode 100644 index 00000000..1ed3c431 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.ads@2.0.8/Editor/Resources/iOS/builds/UnityAds.framework/Headers/UADSJsonStorage.h" @@ -0,0 +1,13 @@ +@interface UADSJsonStorage : NSObject + +@property (nonatomic, strong) NSMutableDictionary *storageContents; + +- (BOOL)set:(NSString *)key value:(id)value; +- (id)getValueForKey:(NSString *)key; +- (BOOL)deleteKey:(NSString *)key; +- (NSArray *)getKeys:(NSString *)key recursive:(BOOL)recursive; +- (void)clearData; +- (BOOL)initData; +- (BOOL)hasData; + +@end diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.ads@2.0.8/Editor/Resources/iOS/builds/UnityAds.framework/Headers/UADSJsonStorage.h.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.ads@2.0.8/Editor/Resources/iOS/builds/UnityAds.framework/Headers/UADSJsonStorage.h.meta" new file mode 100644 index 00000000..9b923496 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.ads@2.0.8/Editor/Resources/iOS/builds/UnityAds.framework/Headers/UADSJsonStorage.h.meta" @@ -0,0 +1,7 @@ +fileFormatVersion: 2 +guid: 1322fd896bbb15bb6e335591b766ae62 +licenseType: Pro +DefaultImporter: + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.ads@2.0.8/Editor/Resources/iOS/builds/UnityAds.framework/Headers/UADSMediationMetaData.h" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.ads@2.0.8/Editor/Resources/iOS/builds/UnityAds.framework/Headers/UADSMediationMetaData.h" new file mode 100644 index 00000000..5f49a285 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.ads@2.0.8/Editor/Resources/iOS/builds/UnityAds.framework/Headers/UADSMediationMetaData.h" @@ -0,0 +1,9 @@ +#import "UADSMetaData.h" + +@interface UADSMediationMetaData : UADSMetaData + +- (void)setName:(NSString *)mediationNetworkName; +- (void)setVersion:(NSString *)mediationSdkVersion; +- (void)setOrdinal:(int)mediationOrdinal; + +@end \ No newline at end of file diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.ads@2.0.8/Editor/Resources/iOS/builds/UnityAds.framework/Headers/UADSMediationMetaData.h.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.ads@2.0.8/Editor/Resources/iOS/builds/UnityAds.framework/Headers/UADSMediationMetaData.h.meta" new file mode 100644 index 00000000..cd75153c --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.ads@2.0.8/Editor/Resources/iOS/builds/UnityAds.framework/Headers/UADSMediationMetaData.h.meta" @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: b52e557db2c2b4eebb10444f1d582029 +timeCreated: 1491258705 +licenseType: Pro +DefaultImporter: + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.ads@2.0.8/Editor/Resources/iOS/builds/UnityAds.framework/Headers/UADSMetaData.h" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.ads@2.0.8/Editor/Resources/iOS/builds/UnityAds.framework/Headers/UADSMetaData.h" new file mode 100644 index 00000000..791d3138 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.ads@2.0.8/Editor/Resources/iOS/builds/UnityAds.framework/Headers/UADSMetaData.h" @@ -0,0 +1,12 @@ + + +@interface UADSMetaData : NSObject + +@property (nonatomic, strong) NSString *category; +@property (nonatomic, strong) NSMutableDictionary *entries; + +- (instancetype)initWithCategory:(NSString *)category; +- (void)set:(NSString *)key value:(id)value; +- (void)commit; + +@end \ No newline at end of file diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.ads@2.0.8/Editor/Resources/iOS/builds/UnityAds.framework/Headers/UADSMetaData.h.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.ads@2.0.8/Editor/Resources/iOS/builds/UnityAds.framework/Headers/UADSMetaData.h.meta" new file mode 100644 index 00000000..1710ad25 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.ads@2.0.8/Editor/Resources/iOS/builds/UnityAds.framework/Headers/UADSMetaData.h.meta" @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 86c008322e7c647149878156c5b81940 +timeCreated: 1491258705 +licenseType: Pro +DefaultImporter: + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.ads@2.0.8/Editor/Resources/iOS/builds/UnityAds.framework/Headers/UADSPlayerMetaData.h" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.ads@2.0.8/Editor/Resources/iOS/builds/UnityAds.framework/Headers/UADSPlayerMetaData.h" new file mode 100644 index 00000000..5d0db483 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.ads@2.0.8/Editor/Resources/iOS/builds/UnityAds.framework/Headers/UADSPlayerMetaData.h" @@ -0,0 +1,7 @@ +#import "UADSMetaData.h" + +@interface UADSPlayerMetaData : UADSMetaData + +- (void)setServerId:(NSString *)serverId; + +@end \ No newline at end of file diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.ads@2.0.8/Editor/Resources/iOS/builds/UnityAds.framework/Headers/UADSPlayerMetaData.h.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.ads@2.0.8/Editor/Resources/iOS/builds/UnityAds.framework/Headers/UADSPlayerMetaData.h.meta" new file mode 100644 index 00000000..92fe5059 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.ads@2.0.8/Editor/Resources/iOS/builds/UnityAds.framework/Headers/UADSPlayerMetaData.h.meta" @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 453f100e6bdae4dfd9e655927819dc85 +timeCreated: 1491258705 +licenseType: Pro +DefaultImporter: + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.ads@2.0.8/Editor/Resources/iOS/builds/UnityAds.framework/Headers/UnityAds.h" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.ads@2.0.8/Editor/Resources/iOS/builds/UnityAds.framework/Headers/UnityAds.h" new file mode 100644 index 00000000..8e1ccfda --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.ads@2.0.8/Editor/Resources/iOS/builds/UnityAds.framework/Headers/UnityAds.h" @@ -0,0 +1,255 @@ +#import + +#import +#import + +/** + * An enumerate that describes the state of `UnityAds` placements. + * @note All placement states, other than `kUnityAdsPlacementStateReady`, indicate that the placement is not currently ready to show ads. + */ +typedef NS_ENUM(NSInteger, UnityAdsPlacementState) { + /** + * A state that indicates that the placement is ready to show an ad. The `show:` selector can be called. + */ + kUnityAdsPlacementStateReady, + /** + * A state that indicates that no state is information is available. + * @warning This state can that UnityAds is not initialized or that the placement is not correctly configured in the Unity Ads admin tool. + */ + kUnityAdsPlacementStateNotAvailable, + /** + * A state that indicates that the placement is currently disabled. The placement can be enabled in the Unity Ads admin tools. + */ + kUnityAdsPlacementStateDisabled, + /** + * A state that indicates that the placement is not currently ready, but will be in the future. + * @note This state most likely indicates that the ad content is currently caching. + */ + kUnityAdsPlacementStateWaiting, + /** + * A state that indicates that the placement is properly configured, but there are currently no ads available for the placement. + */ + kUnityAdsPlacementStateNoFill +}; + +/** + * An enumeration for the completion state of an ad. + */ +typedef NS_ENUM(NSInteger, UnityAdsFinishState) { + /** + * A state that indicates that the ad did not successfully display. + */ + kUnityAdsFinishStateError, + /** + * A state that indicates that the user skipped the ad. + */ + kUnityAdsFinishStateSkipped, + /** + * A state that indicates that the ad was played entirely. + */ + kUnityAdsFinishStateCompleted +}; + +/** + * An enumeration for the various errors that can be emitted through the `UnityAdsDelegate` `unityAdsDidError:withMessage:` method. + */ +typedef NS_ENUM(NSInteger, UnityAdsError) { + /** + * An error that indicates failure due to `UnityAds` currently being uninitialized. + */ + kUnityAdsErrorNotInitialized = 0, + /** + * An error that indicates failure due to a failure in the initialization process. + */ + kUnityAdsErrorInitializedFailed, + /** + * An error that indicates failure due to attempting to initialize `UnityAds` with invalid parameters. + */ + kUnityAdsErrorInvalidArgument, + /** + * An error that indicates failure of the video player. + */ + kUnityAdsErrorVideoPlayerError, + /** + * An error that indicates failure due to having attempted to initialize the `UnityAds` class in an invalid environment. + */ + kUnityAdsErrorInitSanityCheckFail, + /** + * An error that indicates failure due to the presence of an ad blocker. + */ + kUnityAdsErrorAdBlockerDetected, + /** + * An error that indicates failure due to inability to read or write a file. + */ + kUnityAdsErrorFileIoError, + /** + * An error that indicates failure due to a bad device identifier. + */ + kUnityAdsErrorDeviceIdError, + /** + * An error that indicates a failure when attempting to show an ad. + */ + kUnityAdsErrorShowError, + /** + * An error that indicates an internal failure in `UnityAds`. + */ + kUnityAdsErrorInternalError, +}; + +/** + * The `UnityAdsDelegate` protocol defines the required methods for receiving messages from UnityAds. + * Must be implemented by the hosting app. + * The unityAdsReady: method is called when it's possible to show an ad. + * All other methods are used to provide notifications of events of the ad lifecycle. + * @note On initialization, there are ready (or error) callbacks for each placement attached to the game identifier. + */ +NS_ASSUME_NONNULL_BEGIN +@protocol UnityAdsDelegate +/** + * Called when `UnityAds` is ready to show an ad. After this callback you can call the `UnityAds` `show:` method for this placement. + * Note that sometimes placement might no longer be ready due to exceptional reasons. These situations will give no new callbacks. + * + * @warning To avoid error situations, it is always best to check `isReady` method status before calling show. + * @param placementId The ID of the placement that is ready to show, as defined in Unity Ads admin tools. + */ +- (void)unityAdsReady:(NSString *)placementId; +/** + * Called when `UnityAds` encounters an error. All errors will be logged but this method can be used as an additional debugging aid. This callback can also be used for collecting statistics from different error scenarios. + * + * @param error A `UnityAdsError` error enum value indicating the type of error encountered. + * @param message A human readable string indicating the type of error encountered. + */ +- (void)unityAdsDidError:(UnityAdsError)error withMessage:(NSString *)message; +/** + * Called on a successful start of advertisement after calling the `UnityAds` `show:` method. + * + * @warning If there are errors in starting the advertisement, this method may never be called. Unity Ads will directly call `unityAdsDidFinish:withFinishState:` with error status. + * + * @param placementId The ID of the placement that has started, as defined in Unity Ads admin tools. + */ +- (void)unityAdsDidStart:(NSString *)placementId; +/** + * Called after the ad has closed. + * + * @param placementId The ID of the placement that has finished, as defined in Unity Ads admin tools. + * @param state An enum value indicating the finish state of the ad. Possible values are `Completed`, `Skipped`, and `Error`. + */ +- (void)unityAdsDidFinish:(NSString *)placementId + withFinishState:(UnityAdsFinishState)state; +@end + +/** + * `UnityAds` is a static class with methods for preparing and showing ads. + * + * @warning In order to ensure expected behaviour, the delegate must always be set. + */ + +@interface UnityAds : NSObject + +- (instancetype)init NS_UNAVAILABLE; ++ (instancetype)initialize NS_UNAVAILABLE; + +/** + * Initializes UnityAds. UnityAds should be initialized when app starts. + * + * @param gameId Unique identifier for a game, given by Unity Ads admin tools or Unity editor. + * @param delegate delegate for UnityAdsDelegate callbacks + */ ++ (void)initialize:(NSString *)gameId + delegate:(nullable id)delegate; +/** + * Initializes UnityAds. UnityAds should be initialized when app starts. + * + * @param gameId Unique identifier for a game, given by Unity Ads admin tools or Unity editor. + * @param delegate delegate for UnityAdsDelegate callbacks + * @param testMode Set this flag to `YES` to indicate test mode and show only test ads. + */ ++ (void)initialize:(NSString *)gameId + delegate:(nullable id)delegate + testMode:(BOOL)testMode; +/** + * Show an ad using the defaul placement. + * + * @param viewController The `UIViewController` that is to present the ad view controller. + */ ++ (void)show:(UIViewController *)viewController; +/** + * Show an ad using the provided placement ID. + * + * @param viewController The `UIViewController` that is to present the ad view controller. + * @param placementId The placement ID, as defined in Unity Ads admin tools. + */ ++ (void)show:(UIViewController *)viewController placementId:(NSString *)placementId; +/** + * Provides the currently assigned `UnityAdsDelegate`. + * + * @return The current `UnityAdsDelegate`. + */ ++ (id)getDelegate; +/** + * Allows the delegate to be reassigned after UnityAds has already been initialized. + * + * @param delegate The new `UnityAdsDelegate' for UnityAds to send callbacks to. + */ ++ (void)setDelegate:(id)delegate; +/** + * Get the current debug status of `UnityAds`. + * + * @return If `YES`, `UnityAds` will provide verbose logs. + */ ++ (BOOL)getDebugMode; +/** + * Set the logging verbosity of `UnityAds`. Debug mode indicates verbose logging. + * @warning Does not relate to test mode for ad content. + * @param enableDebugMode `YES` for verbose logging. + */ ++ (void)setDebugMode:(BOOL)enableDebugMode; +/** + * Check to see if the current device supports using Unity Ads. + * + * @return If `NO`, the current device cannot initialize `UnityAds` or show ads. + */ ++ (BOOL)isSupported; +/** + * Check if the default placement is ready to show an ad. + * + * @return If `YES`, the default placement is ready to show an ad. + */ ++ (BOOL)isReady; +/** + * Check if a particular placement is ready to show an ad. + * + * @param placementId The placement ID being checked. + * + * @return If `YES`, the placement is ready to show an ad. + */ ++ (BOOL)isReady:(NSString *)placementId; +/** + * Check the current state of the default placement. + * + * @return If this is `kUnityAdsPlacementStateReady`, the placement is ready to show ads. Other states represent errors. + */ ++ (UnityAdsPlacementState)getPlacementState; +/** + * Check the current state of a placement. + * + * @param placementId The placement ID, as defined in Unity Ads admin tools. + * + * @return If this is `kUnityAdsPlacementStateReady`, the placement is ready to show ads. Other states represent errors. + */ ++ (UnityAdsPlacementState)getPlacementState:(NSString *)placementId; +/** + * Check the version of this `UnityAds` SDK + * + * @return String representing the current version name. + */ ++ (NSString *)getVersion; +/** + * Check that `UnityAds` has been initialized. This might be useful for debugging initialization problems. + * + * @return If `YES`, Unity Ads has been successfully initialized. + */ ++ (BOOL)isInitialized; + +@end +NS_ASSUME_NONNULL_END \ No newline at end of file diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.ads@2.0.8/Editor/Resources/iOS/builds/UnityAds.framework/Headers/UnityAds.h.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.ads@2.0.8/Editor/Resources/iOS/builds/UnityAds.framework/Headers/UnityAds.h.meta" new file mode 100644 index 00000000..e4b7c0bc --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.ads@2.0.8/Editor/Resources/iOS/builds/UnityAds.framework/Headers/UnityAds.h.meta" @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: c99bfe4fc4e5c4dc3917c14075acd117 +timeCreated: 1491258705 +licenseType: Pro +DefaultImporter: + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.ads@2.0.8/Editor/Resources/iOS/builds/UnityAds.framework/Headers/UnityAdsExtended.h" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.ads@2.0.8/Editor/Resources/iOS/builds/UnityAds.framework/Headers/UnityAdsExtended.h" new file mode 100644 index 00000000..1435037b --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.ads@2.0.8/Editor/Resources/iOS/builds/UnityAds.framework/Headers/UnityAdsExtended.h" @@ -0,0 +1,21 @@ +#import "UnityAds.h" + +NS_ASSUME_NONNULL_BEGIN +@protocol UnityAdsExtendedDelegate +/** + * Called when a click event happens. + * + * @param placementId The ID of the placement that was clicked. + */ +- (void)unityAdsDidClick:(NSString *)placementId; + +/** + * Called when a placement changes state. + * + * @param placementId The ID of the placement that changed state. + * @param oldState The state before the change. + * @param newState The state after the change. + */ +- (void)unityAdsPlacementStateChanged:(NSString *)placementId oldState:(UnityAdsPlacementState)oldState newState:(UnityAdsPlacementState)newState; +@end +NS_ASSUME_NONNULL_END diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.ads@2.0.8/Editor/Resources/iOS/builds/UnityAds.framework/Headers/UnityAdsExtended.h.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.ads@2.0.8/Editor/Resources/iOS/builds/UnityAds.framework/Headers/UnityAdsExtended.h.meta" new file mode 100644 index 00000000..9840de15 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.ads@2.0.8/Editor/Resources/iOS/builds/UnityAds.framework/Headers/UnityAdsExtended.h.meta" @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: a6842a74831964edc8fefa1c0aed89dc +timeCreated: 1491258705 +licenseType: Pro +DefaultImporter: + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.ads@2.0.8/Editor/Resources/iOS/builds/UnityAds.framework/Headers/UnityAdsUnityDelegate.h" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.ads@2.0.8/Editor/Resources/iOS/builds/UnityAds.framework/Headers/UnityAdsUnityDelegate.h" new file mode 100644 index 00000000..0fa6e362 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.ads@2.0.8/Editor/Resources/iOS/builds/UnityAds.framework/Headers/UnityAdsUnityDelegate.h" @@ -0,0 +1,11 @@ +#import "UnityAds.h" +NS_ASSUME_NONNULL_BEGIN +@protocol UnityAdsUnityDelegate +/** + * Called when an in-app purchase is initiated from an ad. + * + * @param eventString The string provided via the ad. + */ +- (void)unityAdsDidInitiatePurchase:(NSString *)eventString; +@end +NS_ASSUME_NONNULL_END diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.ads@2.0.8/Editor/Resources/iOS/builds/UnityAds.framework/Headers/UnityAdsUnityDelegate.h.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.ads@2.0.8/Editor/Resources/iOS/builds/UnityAds.framework/Headers/UnityAdsUnityDelegate.h.meta" new file mode 100644 index 00000000..19ec6df7 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.ads@2.0.8/Editor/Resources/iOS/builds/UnityAds.framework/Headers/UnityAdsUnityDelegate.h.meta" @@ -0,0 +1,7 @@ +fileFormatVersion: 2 +guid: ce4395ccdb12cf62fca756358be1a892 +licenseType: Pro +DefaultImporter: + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.ads@2.0.8/Editor/Resources/iOS/builds/UnityAds.framework/Info.plist" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.ads@2.0.8/Editor/Resources/iOS/builds/UnityAds.framework/Info.plist" new file mode 100644 index 00000000..31b03797 Binary files /dev/null and "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.ads@2.0.8/Editor/Resources/iOS/builds/UnityAds.framework/Info.plist" differ diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.ads@2.0.8/Editor/Resources/iOS/builds/UnityAds.framework/Info.plist.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.ads@2.0.8/Editor/Resources/iOS/builds/UnityAds.framework/Info.plist.meta" new file mode 100644 index 00000000..e4e0148d --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.ads@2.0.8/Editor/Resources/iOS/builds/UnityAds.framework/Info.plist.meta" @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: cc1b50b5501f748da8bec762294d9136 +timeCreated: 1491258705 +licenseType: Pro +DefaultImporter: + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.ads@2.0.8/Editor/Resources/iOS/builds/UnityAds.framework/Modules.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.ads@2.0.8/Editor/Resources/iOS/builds/UnityAds.framework/Modules.meta" new file mode 100644 index 00000000..6ba1dcb9 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.ads@2.0.8/Editor/Resources/iOS/builds/UnityAds.framework/Modules.meta" @@ -0,0 +1,9 @@ +fileFormatVersion: 2 +guid: 3cebe1a96232b44388b30b2f72dde434 +folderAsset: yes +timeCreated: 1491258705 +licenseType: Pro +DefaultImporter: + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.ads@2.0.8/Editor/Resources/iOS/builds/UnityAds.framework/Modules/module.modulemap" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.ads@2.0.8/Editor/Resources/iOS/builds/UnityAds.framework/Modules/module.modulemap" new file mode 100644 index 00000000..9b448d57 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.ads@2.0.8/Editor/Resources/iOS/builds/UnityAds.framework/Modules/module.modulemap" @@ -0,0 +1,7 @@ +framework module UnityAds { + umbrella header "UnityAds.h" + header "UnityAdsExtended.h" + + export * + module * { export * } +} diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.ads@2.0.8/Editor/Resources/iOS/builds/UnityAds.framework/Modules/module.modulemap.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.ads@2.0.8/Editor/Resources/iOS/builds/UnityAds.framework/Modules/module.modulemap.meta" new file mode 100644 index 00000000..13ea2e99 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.ads@2.0.8/Editor/Resources/iOS/builds/UnityAds.framework/Modules/module.modulemap.meta" @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: c5ba7626a737840ff88a3bd84b100482 +timeCreated: 1491258705 +licenseType: Pro +DefaultImporter: + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.ads@2.0.8/Editor/Resources/iOS/builds/UnityAds.framework/UnityAds" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.ads@2.0.8/Editor/Resources/iOS/builds/UnityAds.framework/UnityAds" new file mode 100644 index 00000000..53184164 Binary files /dev/null and "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.ads@2.0.8/Editor/Resources/iOS/builds/UnityAds.framework/UnityAds" differ diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.ads@2.0.8/Editor/Resources/iOS/builds/UnityAds.framework/UnityAds.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.ads@2.0.8/Editor/Resources/iOS/builds/UnityAds.framework/UnityAds.meta" new file mode 100644 index 00000000..a311b834 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.ads@2.0.8/Editor/Resources/iOS/builds/UnityAds.framework/UnityAds.meta" @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: d1c1a2d988f5148fd9ab17b2460d271e +timeCreated: 1491258705 +licenseType: Pro +DefaultImporter: + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.ads@2.0.8/Editor/UnityEditor.Advertisements.dll.mdb" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.ads@2.0.8/Editor/UnityEditor.Advertisements.dll.mdb" new file mode 100644 index 00000000..7ee35e88 Binary files /dev/null and "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.ads@2.0.8/Editor/UnityEditor.Advertisements.dll.mdb" differ diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.ads@2.0.8/Editor/UnityEditor.Advertisements.dll.mdb.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.ads@2.0.8/Editor/UnityEditor.Advertisements.dll.mdb.meta" new file mode 100644 index 00000000..ad74189a --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.ads@2.0.8/Editor/UnityEditor.Advertisements.dll.mdb.meta" @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 6597c6ea86d36477081342001145d8d9 +timeCreated: 1492551631 +licenseType: Pro +DefaultImporter: + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.ads@2.0.8/Editor/UnityEditor.Advertisements.dll.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.ads@2.0.8/Editor/UnityEditor.Advertisements.dll.meta" new file mode 100644 index 00000000..ede66537 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.ads@2.0.8/Editor/UnityEditor.Advertisements.dll.meta" @@ -0,0 +1,25 @@ +fileFormatVersion: 2 +guid: a342381d77833427fa10621e38fbae10 +timeCreated: 1491945648 +licenseType: Pro +PluginImporter: + serializedVersion: 1 + iconMap: {} + executionOrder: {} + isPreloaded: 0 + isOverridable: 0 + platformData: + Editor: + enabled: 1 + settings: + DefaultValueInitialized: true + WindowsStoreApps: + enabled: 0 + settings: + CPU: AnyCPU + data: + enabled: 0 + settings: {} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.ads@2.0.8/License.md" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.ads@2.0.8/License.md" new file mode 100644 index 00000000..27c17ac4 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.ads@2.0.8/License.md" @@ -0,0 +1,32 @@ +**Unity Companion Package License v1.0 ("_License_")** + +Copyright © 2017 Unity Technologies ApS ("**_Unity_**") + +Unity hereby grants to you a worldwide, non-exclusive, no-charge, and royalty-free copyright license to reproduce, prepare derivative works of, publicly display, publicly perform, sublicense, and distribute the software that is made available with this License ("**_Software_**"), subject to the following terms and conditions: + +1. *Unity Companion Use Only*. Exercise of the license granted herein is limited to exercise for the creation, use, and/or distribution of applications, software, or other content pursuant to a valid Unity development engine software license ("**_Engine License_**"). That means while use of the Software is not limited to use in the software licensed under the Engine License, the Software may not be used for any purpose other than the creation, use, and/or distribution of Engine License-dependent applications, software, or other content. No other exercise of the license granted herein is permitted. + +1. *No Modification of Engine License*. Neither this License nor any exercise of the license granted herein modifies the Engine License in any way. + +1. *Ownership & Grant Back to You*. + + 3.1. You own your content. In this License, "derivative works" means derivatives of the Software itself--works derived only from the Software by you under this License (for example, modifying the code of the Software itself to improve its efficacy); “derivative works” of the Software do not include, for example, games, apps, or content that you create using the Software. You keep all right, title, and interest to your own content. + + 3.2. Unity owns its content. While you keep all right, title, and interest to your own content per the above, as between Unity and you, Unity will own all right, title, and interest to all intellectual property rights (including patent, trademark, and copyright) in the Software and derivative works of the Software, and you hereby assign and agree to assign all such rights in those derivative works to Unity. + + 3.3. You have a license to those derivative works. Subject to this License, Unity grants to you the same worldwide, non-exclusive, no-charge, and royalty-free copyright license to derivative works of the Software you create as is granted to you for the Software under this License. + +1. *Trademarks*. You are not granted any right or license under this License to use any trademarks, service marks, trade names, products names, or branding of Unity or its affiliates ("**_Trademarks_**"). Descriptive uses of Trademarks are permitted; see, for example, Unity’s Branding Usage Guidelines at [https://unity3d.com/public-relations/brand](https://unity3d.com/public-relations/brand). + +1. *Notices & Third-Party Rights*. This License, including the copyright notice above, must be provided in all substantial portions of the Software and derivative works thereof (or, if that is impracticable, in any other location where such notices are customarily placed). Further, if the Software is accompanied by a Unity "third-party notices" or similar file, you acknowledge and agree that software identified in that file is governed by those separate license terms. + +1. *DISCLAIMER, LIMITATION OF LIABILITY*. THE SOFTWARE AND ANY DERIVATIVE WORKS THEREOF IS PROVIDED ON AN "AS IS" BASIS, AND IS PROVIDED WITHOUT WARRANTY OF ANY KIND, WHETHER EXPRESS OR IMPLIED, INCLUDING ANY WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, AND/OR NONINFRINGEMENT. IN NO EVENT SHALL ANY COPYRIGHT HOLDER OR AUTHOR BE LIABLE FOR ANY CLAIM, DAMAGES (WHETHER DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL, INCLUDING PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES, LOSS OF USE, DATA, OR PROFITS, AND BUSINESS INTERRUPTION), OR OTHER LIABILITY WHATSOEVER, WHETHER IN AN ACTION OF CONTRACT, TORT, OR OTHERWISE, ARISING FROM OR OUT OF, OR IN CONNECTION WITH, THE SOFTWARE OR ANY DERIVATIVE WORKS THEREOF OR THE USE OF OR OTHER DEALINGS IN SAME, EVEN WHERE ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + +1. *USE IS ACCEPTANCE and License Versions*. Your receipt and use of the Software constitutes your acceptance of this License and its terms and conditions. Software released by Unity under this License may be modified or updated and the License with it; upon any such modification or update, you will comply with the terms of the updated License for any use of any of the Software under the updated License. + +1. *Use in Compliance with Law and Termination*. Your exercise of the license granted herein will at all times be in compliance with applicable law and will not infringe any proprietary rights (including intellectual property rights); this License will terminate immediately on any breach by you of this License. + +1. *Severability*. If any provision of this License is held to be unenforceable or invalid, that provision will be enforced to the maximum extent possible and the other provisions will remain in full force and effect. + +1. *Governing Law and Venue*. This License is governed by and construed in accordance with the laws of Denmark, except for its conflict of laws rules; the United Nations Convention on Contracts for the International Sale of Goods will not apply. If you reside (or your principal place of business is) within the United States, you and Unity agree to submit to the personal and exclusive jurisdiction of and venue in the state and federal courts located in San Francisco County, California concerning any dispute arising out of this License ("**_Dispute_**"). If you reside (or your principal place of business is) outside the United States, you and Unity agree to submit to the personal and exclusive jurisdiction of and venue in the courts located in Copenhagen, Denmark concerning any Dispute. + diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.ads@2.0.8/License.md.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.ads@2.0.8/License.md.meta" new file mode 100644 index 00000000..308e13bc --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.ads@2.0.8/License.md.meta" @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 4c6fe94acbb24417c988bab18cbd5209 +timeCreated: 1504642506 +licenseType: Pro +DefaultImporter: + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.ads@2.0.8/README.md" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.ads@2.0.8/README.md" new file mode 100644 index 00000000..9ed6019f --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.ads@2.0.8/README.md" @@ -0,0 +1,4 @@ +# Unity Ads + +Implementation of the Unity Ads API. + diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.ads@2.0.8/README.md.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.ads@2.0.8/README.md.meta" new file mode 100644 index 00000000..26e726c9 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.ads@2.0.8/README.md.meta" @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 62772aad98ed04f0d955b7d20de61f7f +timeCreated: 1493316656 +licenseType: Pro +DefaultImporter: + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.ads@2.0.8/UnityEngine.Advertisements.dll.mdb" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.ads@2.0.8/UnityEngine.Advertisements.dll.mdb" new file mode 100644 index 00000000..5ec8e50d Binary files /dev/null and "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.ads@2.0.8/UnityEngine.Advertisements.dll.mdb" differ diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.ads@2.0.8/UnityEngine.Advertisements.dll.mdb.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.ads@2.0.8/UnityEngine.Advertisements.dll.mdb.meta" new file mode 100644 index 00000000..172110a8 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.ads@2.0.8/UnityEngine.Advertisements.dll.mdb.meta" @@ -0,0 +1,7 @@ +fileFormatVersion: 2 +guid: 5e57a6c62c1ec47d0bceb70495845164 +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.ads@2.0.8/UnityEngine.Advertisements.dll.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.ads@2.0.8/UnityEngine.Advertisements.dll.meta" new file mode 100644 index 00000000..823a117d --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.ads@2.0.8/UnityEngine.Advertisements.dll.meta" @@ -0,0 +1,121 @@ +fileFormatVersion: 2 +guid: 3b07d432cba2a4c4f8a2fdea984620b8 +PluginImporter: + externalObjects: {} + serializedVersion: 2 + iconMap: {} + executionOrder: {} + isPreloaded: 0 + isOverridable: 0 + platformData: + - first: + '': Any + second: + enabled: 0 + settings: + Exclude Android: 0 + Exclude Editor: 0 + Exclude Linux: 1 + Exclude Linux64: 1 + Exclude LinuxUniversal: 1 + Exclude OSXIntel: 1 + Exclude OSXIntel64: 1 + Exclude OSXUniversal: 1 + Exclude Win: 1 + Exclude Win64: 1 + Exclude iOS: 0 + - first: + Android: Android + second: + enabled: 1 + settings: + CPU: ARMv7 + - first: + Any: + second: + enabled: 0 + settings: {} + - first: + Editor: Editor + second: + enabled: 1 + settings: + CPU: AnyCPU + DefaultValueInitialized: true + OS: AnyOS + - first: + Facebook: Win + second: + enabled: 0 + settings: + CPU: AnyCPU + - first: + Facebook: Win64 + second: + enabled: 0 + settings: + CPU: AnyCPU + - first: + Standalone: Linux + second: + enabled: 0 + settings: + CPU: x86 + - first: + Standalone: Linux64 + second: + enabled: 0 + settings: + CPU: x86_64 + - first: + Standalone: LinuxUniversal + second: + enabled: 0 + settings: + CPU: None + - first: + Standalone: OSXIntel + second: + enabled: 0 + settings: + CPU: AnyCPU + - first: + Standalone: OSXIntel64 + second: + enabled: 0 + settings: + CPU: AnyCPU + - first: + Standalone: OSXUniversal + second: + enabled: 0 + settings: + CPU: None + - first: + Standalone: Win + second: + enabled: 0 + settings: + CPU: AnyCPU + - first: + Standalone: Win64 + second: + enabled: 0 + settings: + CPU: AnyCPU + - first: + Windows Store Apps: WindowsStoreApps + second: + enabled: 0 + settings: + CPU: AnyCPU + - first: + iPhone: iOS + second: + enabled: 1 + settings: + CompileFlags: + FrameworkDependencies: + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.ads@2.0.8/package.json" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.ads@2.0.8/package.json" new file mode 100644 index 00000000..881daf2c --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.ads@2.0.8/package.json" @@ -0,0 +1,17 @@ +{ + "category": "AssetStore/Unity", + "description": "Unity Ads is a video ad network for iOS and Android that allows you to quickly and effectively monetize your games.", + "gitHead": "0d2114387a99011be685886f8ea902242e323e70", + "keywords": [ + "ads", + "unity" + ], + "name": "com.unity.ads", + "repoPackagePath": "build/install/com.unity.ads", + "repository": { + "type": "git", + "url": "ssh://git@github.com/Unity-Technologies/com.unity.ads.git" + }, + "unity": "2017.4", + "version": "2.0.8" +} \ No newline at end of file diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.ads@2.0.8/package.json.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.ads@2.0.8/package.json.meta" new file mode 100644 index 00000000..38201ff4 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.ads@2.0.8/package.json.meta" @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: dced8f6ea9f964e8e8e61574ea889d21 +timeCreated: 1491258710 +licenseType: Pro +TextScriptImporter: + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.analytics@3.2.2/CHANGELOG.md" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.analytics@3.2.2/CHANGELOG.md" new file mode 100644 index 00000000..207f10a7 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.analytics@3.2.2/CHANGELOG.md" @@ -0,0 +1,57 @@ +## [3.2.2] - 2018-11-02 +- Removed FetchOptOutStatus and Initialize call. All application of opt out + status will be handled by the engine. The Analytics/Data Privacy package still + provides FetchPrivacyUrl to provide a URL from which to opt out. + +## [3.2.1] - 2018-10-25 +- Move editor and playmode tests to be packed within the package. + +## [3.2.0] - 2018-10-11 +- Prevent double-registration of standard events. +- Fixed build error on platforms that don't support analytics. +- Update package docs so they can be built and published and be accessible from + the Package Manager UI. +- Fixed a crash occurring on iOS device when the device has cellular capability + but was never configured with any carrier service. +- Fixed an android build failure occurring due to conflicting install referrer + AIDL files. + +## [3.1.1] - 2018-08-21 +- Add DataPrivacy plugin into package. +- Fixed an issue where Android project build would fail when proguard is enabled + in publishing settings. +- Fixed an issue where iOS product archive would fail because bitcode was not + enabled. + +## [3.0.9] - 2018-07-31 +- Fixing issue with NullReferenceException during editor playmode + +## [3.0.8] - 2018-07-26 +- Fixing linking issue when building Android il2cpp + +## [3.0.7] - 2018-07-10 +- Adding in continuous events for signal strength, battery level, battery + temperature, memory usage, available storage + +## [3.0.6] - 2018-06-01 +- Reorganizing platformInfo event around session start/resume/pause + +## [3.0.5] - 2018-05-29 +- Fixing cellular signal strength incorrect array format + +## [3.0.4] - 2018-05-04 +- Breaking change to only work with 2018.2 (change name of whitelisted dll's in + engine to conform to PackageManager standard) +- Changed name of old Analytics dll to the Unity.Analytics.Tracker.dll and + replaced the old one with the new platform information package. +- Changed naming convention of dlls to the PackageManager Standard: + Unity.Analytics.dll, Unity.Analytics.Editor.dll, Unity.Analytics.Tracker.dll, + Unity.Analytics.StandardEvents.dll. +- Deprecated old Analytics tracker and removed it from the add component menu. +- Merged Standardevents package into Analytics package. + +## [2.0.14] - 2018-02-08 +- Added proper documentation and better description text. + +## [2.0.5] - +- Update analytics tracker to 2.0 (1.0 version is still available) diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.analytics@3.2.2/CHANGELOG.md.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.analytics@3.2.2/CHANGELOG.md.meta" new file mode 100644 index 00000000..80fcec7f --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.analytics@3.2.2/CHANGELOG.md.meta" @@ -0,0 +1,9 @@ +fileFormatVersion: 2 +guid: bcd27da1c9ae94d2cafe094482a20792 +timeCreated: 1511216857 +licenseType: Pro +TextScriptImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.analytics@3.2.2/DataPrivacy.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.analytics@3.2.2/DataPrivacy.meta" new file mode 100644 index 00000000..80f7551f --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.analytics@3.2.2/DataPrivacy.meta" @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 8aafd27f78c12564281bac0d0067df8d +folderAsset: yes +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.analytics@3.2.2/DataPrivacy/AssemblyInfo.cs" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.analytics@3.2.2/DataPrivacy/AssemblyInfo.cs" new file mode 100644 index 00000000..a97f2747 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.analytics@3.2.2/DataPrivacy/AssemblyInfo.cs" @@ -0,0 +1,4 @@ +using System.Runtime.CompilerServices; + +[assembly: InternalsVisibleTo("Unity.Analytics.DataPrivacy.Tests")] +[assembly: InternalsVisibleTo("Unity.Analytics.DataPrivacy.WebRequest.Tests")] diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.analytics@3.2.2/DataPrivacy/AssemblyInfo.cs.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.analytics@3.2.2/DataPrivacy/AssemblyInfo.cs.meta" new file mode 100644 index 00000000..bee8db4f --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.analytics@3.2.2/DataPrivacy/AssemblyInfo.cs.meta" @@ -0,0 +1,3 @@ +fileFormatVersion: 2 +guid: 7aad9e80c95b4991a1f4d017c8caf386 +timeCreated: 1526477558 \ No newline at end of file diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.analytics@3.2.2/DataPrivacy/DataPrivacy.cs" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.analytics@3.2.2/DataPrivacy/DataPrivacy.cs" new file mode 100644 index 00000000..f48eb131 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.analytics@3.2.2/DataPrivacy/DataPrivacy.cs" @@ -0,0 +1,132 @@ +#if ENABLE_CLOUD_SERVICES_ANALYTICS +using System; +using System.Text; +using UnityEngine.Networking; + +namespace UnityEngine.Analytics +{ + public class DataPrivacy + { + [Serializable] + internal struct UserPostData + { + public string appid; + public string userid; + public long sessionid; + public string platform; + public UInt32 platformid; + public string sdk_ver; + public bool debug_device; + public string deviceid; + public string plugin_ver; + } + + [Serializable] + internal struct TokenData + { + public string url; + public string token; + } + + const string kVersion = "3.0.0"; + const string kVersionString = "DataPrivacyPackage/" + kVersion; + + internal const string kBaseUrl = "https://data-optout-service.uca.cloud.unity3d.com"; + const string kTokenUrl = kBaseUrl + "/token"; + + internal static UserPostData GetUserData() + { + var postData = new UserPostData + { + appid = Application.cloudProjectId, + userid = AnalyticsSessionInfo.userId, + sessionid = AnalyticsSessionInfo.sessionId, + platform = Application.platform.ToString(), + platformid = (UInt32)Application.platform, + sdk_ver = Application.unityVersion, + debug_device = Debug.isDebugBuild, + deviceid = SystemInfo.deviceUniqueIdentifier, + plugin_ver = kVersionString + }; + + return postData; + } + + static string GetUserAgent() + { + var message = "UnityPlayer/{0} ({1}/{2}{3} {4})"; + return String.Format(message, + Application.unityVersion, + Application.platform.ToString(), + (UInt32)Application.platform, + Debug.isDebugBuild ? "-dev" : "", + kVersionString); + } + + static String getErrorString(UnityWebRequest www) + { + var json = www.downloadHandler.text; + var error = www.error; + if (String.IsNullOrEmpty(error)) + { + // 5.5 sometimes fails to parse an error response, and the only clue will be + // in www.responseHeadersString, which isn't accessible. + error = "Empty response"; + } + + if (!String.IsNullOrEmpty(json)) + { + error += ": " + json; + } + + return error; + } + + public static void FetchPrivacyUrl(Action success, Action failure = null) + { + string postJson = JsonUtility.ToJson(GetUserData()); + byte[] bytes = Encoding.UTF8.GetBytes(postJson); + var uploadHandler = new UploadHandlerRaw(bytes); + uploadHandler.contentType = "application/json"; + + var www = UnityWebRequest.Post(kTokenUrl, ""); + www.uploadHandler = uploadHandler; +#if !UNITY_WEBGL + www.SetRequestHeader("User-Agent", GetUserAgent()); +#endif + var async = www.SendWebRequest(); + + async.completed += (AsyncOperation async2) => + { + var json = www.downloadHandler.text; + if (!String.IsNullOrEmpty(www.error) || String.IsNullOrEmpty(json)) + { + var error = getErrorString(www); + if (failure != null) + { + failure(error); + } + } + else + { + TokenData tokenData; + tokenData.url = ""; // Just to quell "possibly unassigned" error + try + { + tokenData = JsonUtility.FromJson(json); + } + catch (Exception e) + { + if (failure != null) + { + failure(e.ToString()); + } + } + + success(tokenData.url); + } + }; + } + } +} +#endif //ENABLE_CLOUD_SERVICES_ANALYTICS diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.analytics@3.2.2/DataPrivacy/DataPrivacy.cs.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.analytics@3.2.2/DataPrivacy/DataPrivacy.cs.meta" new file mode 100644 index 00000000..0559a4b0 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.analytics@3.2.2/DataPrivacy/DataPrivacy.cs.meta" @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: bff25ea4cf0d3d841b6787b9f649f21b +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.analytics@3.2.2/DataPrivacy/DataPrivacyButton.cs" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.analytics@3.2.2/DataPrivacy/DataPrivacyButton.cs" new file mode 100644 index 00000000..412b430c --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.analytics@3.2.2/DataPrivacy/DataPrivacyButton.cs" @@ -0,0 +1,52 @@ +#if ENABLE_CLOUD_SERVICES_ANALYTICS +using System; +using UnityEngine.UI; + +namespace UnityEngine.Analytics +{ + public class DataPrivacyButton : Button + { + bool urlOpened = false; + + DataPrivacyButton() + { + onClick.AddListener(OpenDataPrivacyUrl); + } + + void OnFailure(string reason) + { + interactable = true; + Debug.LogWarning(String.Format("Failed to get data privacy url: {0}", reason)); + } + + void OpenUrl(string url) + { + interactable = true; + urlOpened = true; + + #if UNITY_WEBGL && !UNITY_EDITOR + Application.ExternalEval("window.open(\"" + url + "\",\"_blank\")"); + #else + Application.OpenURL(url); + #endif + } + + void OpenDataPrivacyUrl() + { + interactable = false; + DataPrivacy.FetchPrivacyUrl(OpenUrl, OnFailure); + } + + void OnApplicationFocus(bool hasFocus) + { + if (hasFocus && urlOpened) + { + urlOpened = false; + // Immediately refresh the remote config so new privacy settings can be enabled + // as soon as possible if they have changed. + RemoteSettings.ForceUpdate(); + } + } + } +} +#endif //ENABLE_CLOUD_SERVICES_ANALYTICS diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.analytics@3.2.2/DataPrivacy/DataPrivacyButton.cs.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.analytics@3.2.2/DataPrivacy/DataPrivacyButton.cs.meta" new file mode 100644 index 00000000..444ade1e --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.analytics@3.2.2/DataPrivacy/DataPrivacyButton.cs.meta" @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: a5ebb11c6fc3a2f498bd89593f7744aa +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.analytics@3.2.2/DataPrivacy/DataPrivacyButton.prefab" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.analytics@3.2.2/DataPrivacy/DataPrivacyButton.prefab" new file mode 100644 index 00000000..53543550 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.analytics@3.2.2/DataPrivacy/DataPrivacyButton.prefab" @@ -0,0 +1,246 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!1 &109074 +GameObject: + m_ObjectHideFlags: 0 + m_PrefabParentObject: {fileID: 0} + m_PrefabInternal: {fileID: 100100000} + serializedVersion: 4 + m_Component: + - 224: {fileID: 22409074} + - 222: {fileID: 22209074} + - 114: {fileID: 11409072} + m_Layer: 5 + m_Name: Image + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!1 &109076 +GameObject: + m_ObjectHideFlags: 0 + m_PrefabParentObject: {fileID: 0} + m_PrefabInternal: {fileID: 100100000} + serializedVersion: 4 + m_Component: + - 224: {fileID: 22409076} + - 222: {fileID: 22209076} + - 114: {fileID: 11409074} + - 114: {fileID: 11409076} + m_Layer: 5 + m_Name: DataPrivacyButton + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!1 &109078 +GameObject: + m_ObjectHideFlags: 0 + m_PrefabParentObject: {fileID: 0} + m_PrefabInternal: {fileID: 100100000} + serializedVersion: 4 + m_Component: + - 224: {fileID: 22409078} + - 222: {fileID: 22209078} + - 114: {fileID: 11409078} + m_Layer: 0 + m_Name: Text + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!114 &11409072 +MonoBehaviour: + m_ObjectHideFlags: 1 + m_PrefabParentObject: {fileID: 0} + m_PrefabInternal: {fileID: 100100000} + m_GameObject: {fileID: 109074} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: -765806418, guid: f5f67c52d1564df4a8936ccd202a3bd8, type: 3} + m_Name: + m_EditorClassIdentifier: + m_Material: {fileID: 0} + m_Color: {r: .196078405, g: .196078405, b: .196078405, a: 1} + m_Sprite: {fileID: 21300000, guid: 599a5fd92bab81a4ab02e52d0b1b1c60, type: 3} + m_Type: 0 + m_PreserveAspect: 0 + m_FillCenter: 1 + m_FillMethod: 4 + m_FillAmount: 1 + m_FillClockwise: 1 + m_FillOrigin: 0 +--- !u!114 &11409074 +MonoBehaviour: + m_ObjectHideFlags: 1 + m_PrefabParentObject: {fileID: 0} + m_PrefabInternal: {fileID: 100100000} + m_GameObject: {fileID: 109076} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: -765806418, guid: f5f67c52d1564df4a8936ccd202a3bd8, type: 3} + m_Name: + m_EditorClassIdentifier: + m_Material: {fileID: 0} + m_Color: {r: 1, g: 1, b: 1, a: 1} + m_Sprite: {fileID: 10905, guid: 0000000000000000f000000000000000, type: 0} + m_Type: 1 + m_PreserveAspect: 0 + m_FillCenter: 1 + m_FillMethod: 4 + m_FillAmount: 1 + m_FillClockwise: 1 + m_FillOrigin: 0 +--- !u!114 &11409076 +MonoBehaviour: + m_ObjectHideFlags: 1 + m_PrefabParentObject: {fileID: 0} + m_PrefabInternal: {fileID: 100100000} + m_GameObject: {fileID: 109076} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: a5ebb11c6fc3a2f498bd89593f7744aa, type: 3} + m_Name: + m_EditorClassIdentifier: + m_Navigation: + m_Mode: 3 + m_SelectOnUp: {fileID: 0} + m_SelectOnDown: {fileID: 0} + m_SelectOnLeft: {fileID: 0} + m_SelectOnRight: {fileID: 0} + m_Transition: 1 + m_Colors: + m_NormalColor: {r: 1, g: 1, b: 1, a: 1} + m_HighlightedColor: {r: .960784316, g: .960784316, b: .960784316, a: 1} + m_PressedColor: {r: .784313738, g: .784313738, b: .784313738, a: 1} + m_DisabledColor: {r: .784313738, g: .784313738, b: .784313738, a: .501960814} + m_ColorMultiplier: 1 + m_FadeDuration: .100000001 + m_SpriteState: + m_HighlightedSprite: {fileID: 0} + m_PressedSprite: {fileID: 0} + m_DisabledSprite: {fileID: 0} + m_AnimationTriggers: + m_NormalTrigger: Normal + m_HighlightedTrigger: Highlighted + m_PressedTrigger: Pressed + m_DisabledTrigger: Disabled + m_Interactable: 1 + m_TargetGraphic: {fileID: 11409074} + m_OnClick: + m_PersistentCalls: + m_Calls: [] + m_TypeName: UnityEngine.UI.Button+ButtonClickedEvent, UnityEngine.UI, Version=1.0.0.0, + Culture=neutral, PublicKeyToken=null +--- !u!114 &11409078 +MonoBehaviour: + m_ObjectHideFlags: 1 + m_PrefabParentObject: {fileID: 0} + m_PrefabInternal: {fileID: 100100000} + m_GameObject: {fileID: 109078} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 708705254, guid: f5f67c52d1564df4a8936ccd202a3bd8, type: 3} + m_Name: + m_EditorClassIdentifier: + m_Material: {fileID: 0} + m_Color: {r: .196078405, g: .196078405, b: .196078405, a: 1} + m_FontData: + m_Font: {fileID: 10102, guid: 0000000000000000e000000000000000, type: 0} + m_FontSize: 14 + m_FontStyle: 0 + m_BestFit: 0 + m_MinSize: 10 + m_MaxSize: 40 + m_Alignment: 4 + m_RichText: 0 + m_HorizontalOverflow: 0 + m_VerticalOverflow: 0 + m_LineSpacing: 1 + m_Text: Open Data Privacy Page +--- !u!222 &22209074 +CanvasRenderer: + m_ObjectHideFlags: 1 + m_PrefabParentObject: {fileID: 0} + m_PrefabInternal: {fileID: 100100000} + m_GameObject: {fileID: 109074} +--- !u!222 &22209076 +CanvasRenderer: + m_ObjectHideFlags: 1 + m_PrefabParentObject: {fileID: 0} + m_PrefabInternal: {fileID: 100100000} + m_GameObject: {fileID: 109076} +--- !u!222 &22209078 +CanvasRenderer: + m_ObjectHideFlags: 1 + m_PrefabParentObject: {fileID: 0} + m_PrefabInternal: {fileID: 100100000} + m_GameObject: {fileID: 109078} +--- !u!224 &22409074 +RectTransform: + m_ObjectHideFlags: 1 + m_PrefabParentObject: {fileID: 0} + m_PrefabInternal: {fileID: 100100000} + m_GameObject: {fileID: 109074} + m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} + m_LocalPosition: {x: 0, y: 0, z: 0} + m_LocalScale: {x: 1, y: 1, z: 1} + m_Children: [] + m_Father: {fileID: 22409076} + m_RootOrder: 1 + m_AnchorMin: {x: 1, y: .5} + m_AnchorMax: {x: 1, y: .5} + m_AnchoredPosition: {x: -8, y: 0} + m_SizeDelta: {x: 20, y: 20} + m_Pivot: {x: 1, y: .5} +--- !u!224 &22409076 +RectTransform: + m_ObjectHideFlags: 1 + m_PrefabParentObject: {fileID: 0} + m_PrefabInternal: {fileID: 100100000} + m_GameObject: {fileID: 109076} + m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} + m_LocalPosition: {x: 0, y: 0, z: 0} + m_LocalScale: {x: 1, y: 1, z: 1} + m_Children: + - {fileID: 22409078} + - {fileID: 22409074} + m_Father: {fileID: 0} + m_RootOrder: 0 + m_AnchorMin: {x: .5, y: .5} + m_AnchorMax: {x: .5, y: .5} + m_AnchoredPosition: {x: 0, y: 0} + m_SizeDelta: {x: 200, y: 30} + m_Pivot: {x: .5, y: .5} +--- !u!224 &22409078 +RectTransform: + m_ObjectHideFlags: 1 + m_PrefabParentObject: {fileID: 0} + m_PrefabInternal: {fileID: 100100000} + m_GameObject: {fileID: 109078} + m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} + m_LocalPosition: {x: 0, y: 0, z: 0} + m_LocalScale: {x: 1, y: 1, z: 1} + m_Children: [] + m_Father: {fileID: 22409076} + m_RootOrder: 0 + m_AnchorMin: {x: 0, y: 0} + m_AnchorMax: {x: .850000024, y: 1} + m_AnchoredPosition: {x: 8, y: 0} + m_SizeDelta: {x: -12, y: 0} + m_Pivot: {x: 0, y: .5} +--- !u!1001 &100100000 +Prefab: + m_ObjectHideFlags: 1 + serializedVersion: 2 + m_Modification: + m_TransformParent: {fileID: 0} + m_Modifications: [] + m_RemovedComponents: [] + m_ParentPrefab: {fileID: 0} + m_RootGameObject: {fileID: 109076} + m_IsPrefabParent: 1 + m_IsExploded: 1 diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.analytics@3.2.2/DataPrivacy/DataPrivacyButton.prefab.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.analytics@3.2.2/DataPrivacy/DataPrivacyButton.prefab.meta" new file mode 100644 index 00000000..4eaf22f2 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.analytics@3.2.2/DataPrivacy/DataPrivacyButton.prefab.meta" @@ -0,0 +1,4 @@ +fileFormatVersion: 2 +guid: 71b11355001648444b41d17fd36c150d +NativeFormatImporter: + userData: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.analytics@3.2.2/DataPrivacy/DataPrivacyIcon.png" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.analytics@3.2.2/DataPrivacy/DataPrivacyIcon.png" new file mode 100644 index 00000000..564b374b Binary files /dev/null and "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.analytics@3.2.2/DataPrivacy/DataPrivacyIcon.png" differ diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.analytics@3.2.2/DataPrivacy/DataPrivacyIcon.png.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.analytics@3.2.2/DataPrivacy/DataPrivacyIcon.png.meta" new file mode 100644 index 00000000..58ce1082 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.analytics@3.2.2/DataPrivacy/DataPrivacyIcon.png.meta" @@ -0,0 +1,48 @@ +fileFormatVersion: 2 +guid: 599a5fd92bab81a4ab02e52d0b1b1c60 +TextureImporter: + fileIDToRecycleName: + 664227380: ImportLogs + serializedVersion: 2 + mipmaps: + mipMapMode: 0 + enableMipMap: 1 + linearTexture: 0 + correctGamma: 0 + fadeOut: 0 + borderMipMap: 0 + mipMapFadeDistanceStart: 1 + mipMapFadeDistanceEnd: 3 + bumpmap: + convertToNormalMap: 0 + externalNormalMap: 0 + heightScale: .25 + normalMapFilter: 0 + isReadable: 0 + grayScaleToAlpha: 0 + generateCubemap: 0 + seamlessCubemap: 0 + textureFormat: -1 + maxTextureSize: 256 + textureSettings: + filterMode: -1 + aniso: 16 + mipBias: -1 + wrapMode: 1 + nPOTScale: 0 + lightmap: 0 + compressionQuality: 50 + spriteMode: 1 + spriteExtrude: 1 + spriteMeshType: 1 + alignment: 0 + spritePivot: {x: .5, y: .5} + spriteBorder: {x: 0, y: 0, z: 0, w: 0} + spritePixelsToUnits: 100 + alphaIsTransparency: 1 + textureType: 8 + buildTargetSettings: [] + spriteSheet: + sprites: [] + spritePackingTag: + userData: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.analytics@3.2.2/DataPrivacy/Unity.Analytics.DataPrivacy.asmdef" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.analytics@3.2.2/DataPrivacy/Unity.Analytics.DataPrivacy.asmdef" new file mode 100644 index 00000000..c47ab217 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.analytics@3.2.2/DataPrivacy/Unity.Analytics.DataPrivacy.asmdef" @@ -0,0 +1,8 @@ +{ + "name": "Unity.Analytics.DataPrivacy", + "references": [], + "optionalUnityReferences": [], + "includePlatforms": [], + "excludePlatforms": [], + "allowUnsafeCode": false +} \ No newline at end of file diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.analytics@3.2.2/DataPrivacy/Unity.Analytics.DataPrivacy.asmdef.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.analytics@3.2.2/DataPrivacy/Unity.Analytics.DataPrivacy.asmdef.meta" new file mode 100644 index 00000000..787823b6 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.analytics@3.2.2/DataPrivacy/Unity.Analytics.DataPrivacy.asmdef.meta" @@ -0,0 +1,7 @@ +fileFormatVersion: 2 +guid: 0fda7ebe61ab2164383d10e32efb9c6e +AssemblyDefinitionImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.analytics@3.2.2/Documentation~/analytics.md" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.analytics@3.2.2/Documentation~/analytics.md" new file mode 100644 index 00000000..21782ac3 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.analytics@3.2.2/Documentation~/analytics.md" @@ -0,0 +1,51 @@ +# About the Analytics Package + +This Analytics package supports the following Unity Analytics features: + +* [Standard Events](https://docs.unity3d.com/Manual/UnityAnalyticsStandardEvents.html) +* [Analytics Event Tracker](https://docs.unity3d.com/Manual/class-AnalyticsEventTracker.html) +* [Unity Analytics Data Privacy Plug-in](https://docs.unity3d.com/Manual/UnityAnalyticsDataPrivacy.html) + +For instructions on using the features in the Analytics package, refer to the [Analytics section of +the Unity Manual](https://docs.unity3d.com/Manual/UnityAnalytics.html). + +The package is supported by Unity 2018.3+ and includes functionality previously included in +earlier Unity Asset Store and Package Manager packages. When upgrading existing projects to +2018.3 or later, older, redundant packages should be removed from the project. + + +## Installing the Analytics Package + +The Analytics package is built into the Unity Editor and enabled automatically. Use the Unity +Package Manager (menu: **Window** > **Package Manager**) to disable or enable the package. +The Analytics package is listed under the built-in packages. + + + +## Using the Analytics Package + +For instructions on using the features in the Analytics package, refer to the Unity Manual: + +* [Standard Events](https://docs.unity3d.com/Manual/UnityAnalyticsStandardEvents.html) +* [Analytics Event Tracker](https://docs.unity3d.com/Manual/class-AnalyticsEventTracker.html) +* [Unity Analytics Data Privacy Plug-in](https://docs.unity3d.com/Manual/UnityAnalyticsDataPrivacy.html) + + +## Package contents + +The following table indicates the major classes, components, and files included in the Analytics package: + +|Item|Description| +|---|---| +|[`AnalyticsEvent` class](https://docs.unity3d.com/2018.3/Documentation/ScriptReference/Analytics.AnalyticsEvent.html) | The primary class for sending Standard and Custom analytics events to the Unity Analytics service.| +|[Analytics Event Tracker component](https://docs.unity3d.com/Manual/class-AnalyticsEventTracker.html) | A Unity component that you can use to send Standard and Custom analytics events (without writing code).| +|[DataPrivacy class](https://docs.unity3d.com/Manual/UnityAnalyticsDataPrivacyAPI.html)| A utility class that helps applications using Unity Analytics comply with the EU General Data Protection Regulation (GDPR).| +|`Packages/Analytics Library/DataPrivacy/DataPrivacyButton`| A Prefab GameObject you can use when building a user interface to allow players to opt out of Analytics data collection.| +|`Packages/Analytics Library/DataPrivacy/DataPrivacyIcon`| An icon graphic you can use when creating your own opt-out button or control.| + + +## Document revision history + +|Date|Reason| +|---|---| +|October 5, 2018|Document created. Matches package version 3.2.0.| diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.analytics@3.2.2/Editor.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.analytics@3.2.2/Editor.meta" new file mode 100644 index 00000000..d29d133a --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.analytics@3.2.2/Editor.meta" @@ -0,0 +1,10 @@ +fileFormatVersion: 2 +guid: 7fd5e77e7e7ea4eea8198138cd9cc814 +folderAsset: yes +timeCreated: 1491256195 +licenseType: Pro +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.analytics@3.2.2/Editor/AnalyticsEventTracker icon.png" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.analytics@3.2.2/Editor/AnalyticsEventTracker icon.png" new file mode 100644 index 00000000..23763936 Binary files /dev/null and "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.analytics@3.2.2/Editor/AnalyticsEventTracker icon.png" differ diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.analytics@3.2.2/Editor/AnalyticsEventTracker icon.png.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.analytics@3.2.2/Editor/AnalyticsEventTracker icon.png.meta" new file mode 100644 index 00000000..124e6e94 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.analytics@3.2.2/Editor/AnalyticsEventTracker icon.png.meta" @@ -0,0 +1,57 @@ +fileFormatVersion: 2 +guid: 5e7c9ab97e5884e4eaa5967e9024f39d +timeCreated: 1492409422 +licenseType: Free +TextureImporter: + fileIDToRecycleName: {} + serializedVersion: 2 + mipmaps: + mipMapMode: 0 + enableMipMap: 0 + linearTexture: 1 + correctGamma: 0 + fadeOut: 0 + borderMipMap: 0 + mipMapFadeDistanceStart: 1 + mipMapFadeDistanceEnd: 3 + bumpmap: + convertToNormalMap: 0 + externalNormalMap: 0 + heightScale: 0.25 + normalMapFilter: 0 + isReadable: 0 + grayScaleToAlpha: 0 + generateCubemap: 0 + cubemapConvolution: 0 + cubemapConvolutionSteps: 7 + cubemapConvolutionExponent: 1.5 + seamlessCubemap: 0 + textureFormat: -3 + maxTextureSize: 2048 + textureSettings: + filterMode: -1 + aniso: 1 + mipBias: -1 + wrapMode: 1 + nPOTScale: 0 + lightmap: 0 + rGBM: 0 + compressionQuality: 50 + allowsAlphaSplitting: 0 + spriteMode: 0 + spriteExtrude: 1 + spriteMeshType: 1 + alignment: 0 + spritePivot: {x: 0.5, y: 0.5} + spriteBorder: {x: 0, y: 0, z: 0, w: 0} + spritePixelsToUnits: 100 + alphaIsTransparency: 1 + textureType: 2 + buildTargetSettings: [] + spriteSheet: + sprites: [] + outline: [] + spritePackingTag: + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.analytics@3.2.2/License.md" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.analytics@3.2.2/License.md" new file mode 100644 index 00000000..27c17ac4 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.analytics@3.2.2/License.md" @@ -0,0 +1,32 @@ +**Unity Companion Package License v1.0 ("_License_")** + +Copyright © 2017 Unity Technologies ApS ("**_Unity_**") + +Unity hereby grants to you a worldwide, non-exclusive, no-charge, and royalty-free copyright license to reproduce, prepare derivative works of, publicly display, publicly perform, sublicense, and distribute the software that is made available with this License ("**_Software_**"), subject to the following terms and conditions: + +1. *Unity Companion Use Only*. Exercise of the license granted herein is limited to exercise for the creation, use, and/or distribution of applications, software, or other content pursuant to a valid Unity development engine software license ("**_Engine License_**"). That means while use of the Software is not limited to use in the software licensed under the Engine License, the Software may not be used for any purpose other than the creation, use, and/or distribution of Engine License-dependent applications, software, or other content. No other exercise of the license granted herein is permitted. + +1. *No Modification of Engine License*. Neither this License nor any exercise of the license granted herein modifies the Engine License in any way. + +1. *Ownership & Grant Back to You*. + + 3.1. You own your content. In this License, "derivative works" means derivatives of the Software itself--works derived only from the Software by you under this License (for example, modifying the code of the Software itself to improve its efficacy); “derivative works” of the Software do not include, for example, games, apps, or content that you create using the Software. You keep all right, title, and interest to your own content. + + 3.2. Unity owns its content. While you keep all right, title, and interest to your own content per the above, as between Unity and you, Unity will own all right, title, and interest to all intellectual property rights (including patent, trademark, and copyright) in the Software and derivative works of the Software, and you hereby assign and agree to assign all such rights in those derivative works to Unity. + + 3.3. You have a license to those derivative works. Subject to this License, Unity grants to you the same worldwide, non-exclusive, no-charge, and royalty-free copyright license to derivative works of the Software you create as is granted to you for the Software under this License. + +1. *Trademarks*. You are not granted any right or license under this License to use any trademarks, service marks, trade names, products names, or branding of Unity or its affiliates ("**_Trademarks_**"). Descriptive uses of Trademarks are permitted; see, for example, Unity’s Branding Usage Guidelines at [https://unity3d.com/public-relations/brand](https://unity3d.com/public-relations/brand). + +1. *Notices & Third-Party Rights*. This License, including the copyright notice above, must be provided in all substantial portions of the Software and derivative works thereof (or, if that is impracticable, in any other location where such notices are customarily placed). Further, if the Software is accompanied by a Unity "third-party notices" or similar file, you acknowledge and agree that software identified in that file is governed by those separate license terms. + +1. *DISCLAIMER, LIMITATION OF LIABILITY*. THE SOFTWARE AND ANY DERIVATIVE WORKS THEREOF IS PROVIDED ON AN "AS IS" BASIS, AND IS PROVIDED WITHOUT WARRANTY OF ANY KIND, WHETHER EXPRESS OR IMPLIED, INCLUDING ANY WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, AND/OR NONINFRINGEMENT. IN NO EVENT SHALL ANY COPYRIGHT HOLDER OR AUTHOR BE LIABLE FOR ANY CLAIM, DAMAGES (WHETHER DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL, INCLUDING PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES, LOSS OF USE, DATA, OR PROFITS, AND BUSINESS INTERRUPTION), OR OTHER LIABILITY WHATSOEVER, WHETHER IN AN ACTION OF CONTRACT, TORT, OR OTHERWISE, ARISING FROM OR OUT OF, OR IN CONNECTION WITH, THE SOFTWARE OR ANY DERIVATIVE WORKS THEREOF OR THE USE OF OR OTHER DEALINGS IN SAME, EVEN WHERE ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + +1. *USE IS ACCEPTANCE and License Versions*. Your receipt and use of the Software constitutes your acceptance of this License and its terms and conditions. Software released by Unity under this License may be modified or updated and the License with it; upon any such modification or update, you will comply with the terms of the updated License for any use of any of the Software under the updated License. + +1. *Use in Compliance with Law and Termination*. Your exercise of the license granted herein will at all times be in compliance with applicable law and will not infringe any proprietary rights (including intellectual property rights); this License will terminate immediately on any breach by you of this License. + +1. *Severability*. If any provision of this License is held to be unenforceable or invalid, that provision will be enforced to the maximum extent possible and the other provisions will remain in full force and effect. + +1. *Governing Law and Venue*. This License is governed by and construed in accordance with the laws of Denmark, except for its conflict of laws rules; the United Nations Convention on Contracts for the International Sale of Goods will not apply. If you reside (or your principal place of business is) within the United States, you and Unity agree to submit to the personal and exclusive jurisdiction of and venue in the state and federal courts located in San Francisco County, California concerning any dispute arising out of this License ("**_Dispute_**"). If you reside (or your principal place of business is) outside the United States, you and Unity agree to submit to the personal and exclusive jurisdiction of and venue in the courts located in Copenhagen, Denmark concerning any Dispute. + diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.analytics@3.2.2/License.md.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.analytics@3.2.2/License.md.meta" new file mode 100644 index 00000000..51c39687 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.analytics@3.2.2/License.md.meta" @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 15bf9c691b85b41a39c18bee2f87e21b +timeCreated: 1504642560 +licenseType: Pro +DefaultImporter: + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.analytics@3.2.2/README.md" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.analytics@3.2.2/README.md" new file mode 100644 index 00000000..9d6fd499 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.analytics@3.2.2/README.md" @@ -0,0 +1,14 @@ +Unity Analytics: Tracker +------------------------------ +Please visit the following URL to see documentation for the Analytics Event Tracker. + +https://docs.google.com/document/d/1glh4zEk0KQ_FhOgk95H-VOubcdzrVGyu5BYCmhFQCh0/edit# + +Please note, the documentation at this URL is considered a "living" document and subject to change. + + +Unity Analytics: Standard Events +------------------------------ +Track player behavior specific to your game + +Standard Events are a set of curated custom events focused on player experience. diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.analytics@3.2.2/README.md.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.analytics@3.2.2/README.md.meta" new file mode 100644 index 00000000..f874e182 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.analytics@3.2.2/README.md.meta" @@ -0,0 +1,9 @@ +fileFormatVersion: 2 +guid: 884f8f0e4025a420893d3a8d1d3063e1 +timeCreated: 1511217314 +licenseType: Pro +TextScriptImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.analytics@3.2.2/Tests.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.analytics@3.2.2/Tests.meta" new file mode 100644 index 00000000..8f14a0b9 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.analytics@3.2.2/Tests.meta" @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 7a573b834e2608c4f982daf527bdb47a +folderAsset: yes +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.analytics@3.2.2/Tests/.tests.json" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.analytics@3.2.2/Tests/.tests.json" new file mode 100644 index 00000000..327abb29 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.analytics@3.2.2/Tests/.tests.json" @@ -0,0 +1,3 @@ +{ + "createSeparatePackage": false +} diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.analytics@3.2.2/Tests/Editor.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.analytics@3.2.2/Tests/Editor.meta" new file mode 100644 index 00000000..64435dd9 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.analytics@3.2.2/Tests/Editor.meta" @@ -0,0 +1,9 @@ +fileFormatVersion: 2 +guid: 931f3395378214a6c94333853bd0659b +folderAsset: yes +timeCreated: 1489179043 +licenseType: Pro +DefaultImporter: + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.analytics@3.2.2/Tests/Editor/Unity.Analytics.StandardEvents.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.analytics@3.2.2/Tests/Editor/Unity.Analytics.StandardEvents.meta" new file mode 100644 index 00000000..733defc0 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.analytics@3.2.2/Tests/Editor/Unity.Analytics.StandardEvents.meta" @@ -0,0 +1,9 @@ +fileFormatVersion: 2 +guid: b6295675042094715ad9cc104210aeb7 +folderAsset: yes +timeCreated: 1489733951 +licenseType: Pro +DefaultImporter: + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.analytics@3.2.2/Tests/Editor/Unity.Analytics.StandardEvents/AchievementStepTests.cs" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.analytics@3.2.2/Tests/Editor/Unity.Analytics.StandardEvents/AchievementStepTests.cs" new file mode 100644 index 00000000..f4c1af3e --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.analytics@3.2.2/Tests/Editor/Unity.Analytics.StandardEvents/AchievementStepTests.cs" @@ -0,0 +1,48 @@ +using System; +using NUnit.Framework; + +namespace UnityEngine.Analytics.Tests +{ + public partial class AnalyticsEventTests + { + [Test] + public void AchievementStep_StepIndexTest( + [Values(-1, 0, 1)] int stepIndex + ) + { + var achievementId = "unit_tester"; + + Assert.DoesNotThrow(() => m_Result = AnalyticsEvent.AchievementStep(stepIndex, achievementId)); + EvaluateAnalyticsResult(m_Result); + } + + [Test] + public void AchievementStep_AchievementIdTest( + [Values("unit_tester", "", null)] string achievementId + ) + { + var stepIndex = 0; + + if (string.IsNullOrEmpty(achievementId)) + { + Assert.Throws(() => AnalyticsEvent.AchievementStep(stepIndex, achievementId)); + } + else + { + Assert.DoesNotThrow(() => m_Result = AnalyticsEvent.AchievementStep(stepIndex, achievementId)); + EvaluateAnalyticsResult(m_Result); + } + } + + [Test] + public void AchievementStep_CustomDataTest() + { + var stepIndex = 0; + var achievementId = "unit_tester"; + + Assert.DoesNotThrow(() => m_Result = AnalyticsEvent.AchievementStep(stepIndex, achievementId, m_CustomData)); + EvaluateCustomData(m_CustomData); + EvaluateAnalyticsResult(m_Result); + } + } +} diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.analytics@3.2.2/Tests/Editor/Unity.Analytics.StandardEvents/AchievementStepTests.cs.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.analytics@3.2.2/Tests/Editor/Unity.Analytics.StandardEvents/AchievementStepTests.cs.meta" new file mode 100644 index 00000000..9ca9a734 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.analytics@3.2.2/Tests/Editor/Unity.Analytics.StandardEvents/AchievementStepTests.cs.meta" @@ -0,0 +1,12 @@ +fileFormatVersion: 2 +guid: a592d27ead6884163839d4f8da3977ef +timeCreated: 1489734081 +licenseType: Pro +MonoImporter: + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.analytics@3.2.2/Tests/Editor/Unity.Analytics.StandardEvents/AchievementUnlockedTests.cs" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.analytics@3.2.2/Tests/Editor/Unity.Analytics.StandardEvents/AchievementUnlockedTests.cs" new file mode 100644 index 00000000..4cb4c4bd --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.analytics@3.2.2/Tests/Editor/Unity.Analytics.StandardEvents/AchievementUnlockedTests.cs" @@ -0,0 +1,34 @@ +using System; +using NUnit.Framework; + +namespace UnityEngine.Analytics.Tests +{ + public partial class AnalyticsEventTests + { + [Test] + public void AchievementUnlocked_AchievementIdTest( + [Values("unit_tester", "", null)] string achievementId + ) + { + if (string.IsNullOrEmpty(achievementId)) + { + Assert.Throws(() => AnalyticsEvent.AchievementUnlocked(achievementId)); + } + else + { + Assert.DoesNotThrow(() => m_Result = AnalyticsEvent.AchievementUnlocked(achievementId)); + EvaluateAnalyticsResult(m_Result); + } + } + + [Test] + public void AchievementUnlocked_CustomDataTest() + { + var achievementId = "unit_tester"; + + Assert.DoesNotThrow(() => m_Result = AnalyticsEvent.AchievementUnlocked(achievementId, m_CustomData)); + EvaluateCustomData(m_CustomData); + EvaluateAnalyticsResult(m_Result); + } + } +} diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.analytics@3.2.2/Tests/Editor/Unity.Analytics.StandardEvents/AchievementUnlockedTests.cs.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.analytics@3.2.2/Tests/Editor/Unity.Analytics.StandardEvents/AchievementUnlockedTests.cs.meta" new file mode 100644 index 00000000..3d3f40e1 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.analytics@3.2.2/Tests/Editor/Unity.Analytics.StandardEvents/AchievementUnlockedTests.cs.meta" @@ -0,0 +1,12 @@ +fileFormatVersion: 2 +guid: d1114812d620342e1a4ad3eaae7e220c +timeCreated: 1489734081 +licenseType: Pro +MonoImporter: + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.analytics@3.2.2/Tests/Editor/Unity.Analytics.StandardEvents/AdCompleteTests.cs" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.analytics@3.2.2/Tests/Editor/Unity.Analytics.StandardEvents/AdCompleteTests.cs" new file mode 100644 index 00000000..5efd551a --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.analytics@3.2.2/Tests/Editor/Unity.Analytics.StandardEvents/AdCompleteTests.cs" @@ -0,0 +1,62 @@ +using NUnit.Framework; + +namespace UnityEngine.Analytics.Tests +{ + public partial class AnalyticsEventTests + { + [Test] + public void AdComplete_RewardedTest( + [Values(true, false)] bool rewarded + ) + { + Assert.DoesNotThrow(() => m_Result = AnalyticsEvent.AdComplete(rewarded)); + EvaluateAnalyticsResult(m_Result); + } + + [Test] + public void AdComplete_NetworkStringTest( + [Values("unityads", "", null)] string network + ) + { + var rewarded = true; + + Assert.DoesNotThrow(() => m_Result = AnalyticsEvent.AdComplete(rewarded, network)); + EvaluateAnalyticsResult(m_Result); + } + + [Test] + public void AdComplete_NetworkEnumTest( + [Values(AdvertisingNetwork.UnityAds, AdvertisingNetwork.None)] AdvertisingNetwork network + ) + { + var rewarded = true; + + Assert.DoesNotThrow(() => m_Result = AnalyticsEvent.AdComplete(rewarded, network)); + EvaluateAnalyticsResult(m_Result); + } + + [Test] + public void AdComplete_PlacementIdTest( + [Values("rewardedVideo", "", null)] string placementId + ) + { + var rewarded = true; + var network = AdvertisingNetwork.UnityAds; + + Assert.DoesNotThrow(() => m_Result = AnalyticsEvent.AdComplete(rewarded, network, placementId)); + EvaluateAnalyticsResult(m_Result); + } + + [Test] + public void AdComplete_CustomDataTest() + { + var rewarded = true; + var network = AdvertisingNetwork.UnityAds; + var placementId = "rewardedVideo"; + + Assert.DoesNotThrow(() => m_Result = AnalyticsEvent.AdComplete(rewarded, network, placementId, m_CustomData)); + EvaluateCustomData(m_CustomData); + EvaluateAnalyticsResult(m_Result); + } + } +} diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.analytics@3.2.2/Tests/Editor/Unity.Analytics.StandardEvents/AdCompleteTests.cs.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.analytics@3.2.2/Tests/Editor/Unity.Analytics.StandardEvents/AdCompleteTests.cs.meta" new file mode 100644 index 00000000..eb1155c3 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.analytics@3.2.2/Tests/Editor/Unity.Analytics.StandardEvents/AdCompleteTests.cs.meta" @@ -0,0 +1,12 @@ +fileFormatVersion: 2 +guid: 9405b416c158444b19157040fd664533 +timeCreated: 1489734081 +licenseType: Pro +MonoImporter: + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.analytics@3.2.2/Tests/Editor/Unity.Analytics.StandardEvents/AdOfferTests.cs" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.analytics@3.2.2/Tests/Editor/Unity.Analytics.StandardEvents/AdOfferTests.cs" new file mode 100644 index 00000000..c5dfedb4 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.analytics@3.2.2/Tests/Editor/Unity.Analytics.StandardEvents/AdOfferTests.cs" @@ -0,0 +1,62 @@ +using NUnit.Framework; + +namespace UnityEngine.Analytics.Tests +{ + public partial class AnalyticsEventTests + { + [Test] + public void AdOffer_RewardedTest( + [Values(true, false)] bool rewarded + ) + { + Assert.DoesNotThrow(() => m_Result = AnalyticsEvent.AdOffer(rewarded)); + EvaluateAnalyticsResult(m_Result); + } + + [Test] + public void AdOffer_NetworkStringTest( + [Values("unityads", "", null)] string network + ) + { + var rewarded = true; + + Assert.DoesNotThrow(() => m_Result = AnalyticsEvent.AdOffer(rewarded, network)); + EvaluateAnalyticsResult(m_Result); + } + + [Test] + public void AdOffer_NetworkEnumTest( + [Values(AdvertisingNetwork.UnityAds, AdvertisingNetwork.None)] AdvertisingNetwork network + ) + { + var rewarded = true; + + Assert.DoesNotThrow(() => m_Result = AnalyticsEvent.AdOffer(rewarded, network)); + EvaluateAnalyticsResult(m_Result); + } + + [Test] + public void AdOffer_PlacementIdTest( + [Values("rewardedVideo", "", null)] string placementId + ) + { + var rewarded = true; + var network = AdvertisingNetwork.UnityAds; + + Assert.DoesNotThrow(() => m_Result = AnalyticsEvent.AdOffer(rewarded, network, placementId)); + EvaluateAnalyticsResult(m_Result); + } + + [Test] + public void AdOffer_CustomDataTest() + { + var rewarded = true; + var network = AdvertisingNetwork.UnityAds; + var placementId = "rewardedVideo"; + + Assert.DoesNotThrow(() => m_Result = AnalyticsEvent.AdOffer(rewarded, network, placementId, m_CustomData)); + EvaluateCustomData(m_CustomData); + EvaluateAnalyticsResult(m_Result); + } + } +} diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.analytics@3.2.2/Tests/Editor/Unity.Analytics.StandardEvents/AdOfferTests.cs.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.analytics@3.2.2/Tests/Editor/Unity.Analytics.StandardEvents/AdOfferTests.cs.meta" new file mode 100644 index 00000000..f9845981 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.analytics@3.2.2/Tests/Editor/Unity.Analytics.StandardEvents/AdOfferTests.cs.meta" @@ -0,0 +1,12 @@ +fileFormatVersion: 2 +guid: 96626a3e271e94e76a848c68828fbbac +timeCreated: 1489734081 +licenseType: Pro +MonoImporter: + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.analytics@3.2.2/Tests/Editor/Unity.Analytics.StandardEvents/AdSkipTests.cs" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.analytics@3.2.2/Tests/Editor/Unity.Analytics.StandardEvents/AdSkipTests.cs" new file mode 100644 index 00000000..8c554b65 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.analytics@3.2.2/Tests/Editor/Unity.Analytics.StandardEvents/AdSkipTests.cs" @@ -0,0 +1,62 @@ +using NUnit.Framework; + +namespace UnityEngine.Analytics.Tests +{ + public partial class AnalyticsEventTests + { + [Test] + public void AdSkip_RewardedTest( + [Values(true, false)] bool rewarded + ) + { + Assert.DoesNotThrow(() => m_Result = AnalyticsEvent.AdSkip(rewarded)); + EvaluateAnalyticsResult(m_Result); + } + + [Test] + public void AdSkip_NetworkStringTest( + [Values("unityads", "", null)] string network + ) + { + var rewarded = true; + + Assert.DoesNotThrow(() => m_Result = AnalyticsEvent.AdSkip(rewarded, network)); + EvaluateAnalyticsResult(m_Result); + } + + [Test] + public void AdSkip_NetworkEnumTest( + [Values(AdvertisingNetwork.UnityAds, AdvertisingNetwork.None)] AdvertisingNetwork network + ) + { + var rewarded = true; + + Assert.DoesNotThrow(() => m_Result = AnalyticsEvent.AdSkip(rewarded, network)); + EvaluateAnalyticsResult(m_Result); + } + + [Test] + public void AdSkip_PlacementIdTest( + [Values("rewardedVideo", "", null)] string placementId + ) + { + var rewarded = true; + var network = AdvertisingNetwork.UnityAds; + + Assert.DoesNotThrow(() => m_Result = AnalyticsEvent.AdSkip(rewarded, network, placementId)); + EvaluateAnalyticsResult(m_Result); + } + + [Test] + public void AdSkip_CustomDataTest() + { + var rewarded = true; + var network = AdvertisingNetwork.UnityAds; + var placementId = "rewardedVideo"; + + Assert.DoesNotThrow(() => m_Result = AnalyticsEvent.AdSkip(rewarded, network, placementId, m_CustomData)); + EvaluateCustomData(m_CustomData); + EvaluateAnalyticsResult(m_Result); + } + } +} diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.analytics@3.2.2/Tests/Editor/Unity.Analytics.StandardEvents/AdSkipTests.cs.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.analytics@3.2.2/Tests/Editor/Unity.Analytics.StandardEvents/AdSkipTests.cs.meta" new file mode 100644 index 00000000..186be883 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.analytics@3.2.2/Tests/Editor/Unity.Analytics.StandardEvents/AdSkipTests.cs.meta" @@ -0,0 +1,12 @@ +fileFormatVersion: 2 +guid: c09652e660b34484cb10d35ed2206df5 +timeCreated: 1489734081 +licenseType: Pro +MonoImporter: + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.analytics@3.2.2/Tests/Editor/Unity.Analytics.StandardEvents/AdStartTests.cs" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.analytics@3.2.2/Tests/Editor/Unity.Analytics.StandardEvents/AdStartTests.cs" new file mode 100644 index 00000000..ae104d88 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.analytics@3.2.2/Tests/Editor/Unity.Analytics.StandardEvents/AdStartTests.cs" @@ -0,0 +1,62 @@ +using NUnit.Framework; + +namespace UnityEngine.Analytics.Tests +{ + public partial class AnalyticsEventTests + { + [Test] + public void AdStart_RewardedTest( + [Values(true, false)] bool rewarded + ) + { + Assert.DoesNotThrow(() => m_Result = AnalyticsEvent.AdStart(rewarded)); + EvaluateAnalyticsResult(m_Result); + } + + [Test] + public void AdStart_NetworkStringTest( + [Values("unityads", "", null)] string network + ) + { + var rewarded = true; + + Assert.DoesNotThrow(() => m_Result = AnalyticsEvent.AdStart(rewarded, network)); + EvaluateAnalyticsResult(m_Result); + } + + [Test] + public void AdStart_NetworkEnumTest( + [Values(AdvertisingNetwork.UnityAds, AdvertisingNetwork.None)] AdvertisingNetwork network + ) + { + var rewarded = true; + + Assert.DoesNotThrow(() => m_Result = AnalyticsEvent.AdStart(rewarded, network)); + EvaluateAnalyticsResult(m_Result); + } + + [Test] + public void AdStart_PlacementIdTest( + [Values("rewardedVideo", "", null)] string placementId + ) + { + var rewarded = true; + var network = AdvertisingNetwork.UnityAds; + + Assert.DoesNotThrow(() => m_Result = AnalyticsEvent.AdStart(rewarded, network, placementId)); + EvaluateAnalyticsResult(m_Result); + } + + [Test] + public void AdStart_CustomDataTest() + { + var rewarded = true; + var network = AdvertisingNetwork.UnityAds; + var placementId = "rewardedVideo"; + + Assert.DoesNotThrow(() => m_Result = AnalyticsEvent.AdStart(rewarded, network, placementId, m_CustomData)); + EvaluateCustomData(m_CustomData); + EvaluateAnalyticsResult(m_Result); + } + } +} diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.analytics@3.2.2/Tests/Editor/Unity.Analytics.StandardEvents/AdStartTests.cs.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.analytics@3.2.2/Tests/Editor/Unity.Analytics.StandardEvents/AdStartTests.cs.meta" new file mode 100644 index 00000000..98f15871 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.analytics@3.2.2/Tests/Editor/Unity.Analytics.StandardEvents/AdStartTests.cs.meta" @@ -0,0 +1,12 @@ +fileFormatVersion: 2 +guid: 589b3ddef1e4d44cea68e0144bd95434 +timeCreated: 1489734081 +licenseType: Pro +MonoImporter: + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.analytics@3.2.2/Tests/Editor/Unity.Analytics.StandardEvents/AnalyticsEventTests.cs" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.analytics@3.2.2/Tests/Editor/Unity.Analytics.StandardEvents/AnalyticsEventTests.cs" new file mode 100644 index 00000000..e24c6919 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.analytics@3.2.2/Tests/Editor/Unity.Analytics.StandardEvents/AnalyticsEventTests.cs" @@ -0,0 +1,115 @@ +#pragma warning disable 0612, 0618 + +using System; +using System.Collections.Generic; +using NUnit.Framework; + +namespace UnityEngine.Analytics.Tests +{ + [TestFixture, Category("Standard Event SDK")] + public partial class AnalyticsEventTests + { + readonly Dictionary m_CustomData = new Dictionary(); + AnalyticsResult m_Result = AnalyticsResult.Ok; + + [SetUp] + public void TestCaseSetUp() + { + m_Result = AnalyticsResult.Ok; + + m_CustomData.Clear(); + m_CustomData.Add("custom_param", "test"); + } + + [Test] + public void SdkVersion_FormatTest() + { + int major, minor, patch; + var versions = AnalyticsEvent.sdkVersion.Split('.'); + + Assert.AreEqual(3, versions.Length, "Number of integer fields in version format"); + + Assert.IsTrue(int.TryParse(versions[0], out major), "Major version is an integer"); + Assert.IsTrue(int.TryParse(versions[1], out minor), "Minor version is an integer"); + Assert.IsTrue(int.TryParse(versions[2], out patch), "Patch version is an integer"); + + Assert.LessOrEqual(0, major, "Major version"); + Assert.LessOrEqual(0, minor, "Minor version"); + Assert.LessOrEqual(0, patch, "Patch version"); + } + + [Test] + public void Custom_EventNameTest( + [Values("custom_event", "", null)] string eventName + ) + { + if (string.IsNullOrEmpty(eventName)) + { + Assert.Throws(() => m_Result = AnalyticsEvent.Custom(eventName)); + } + else + { + Assert.DoesNotThrow(() => m_Result = AnalyticsEvent.Custom(eventName)); + EvaluateAnalyticsResult(m_Result); + } + } + + [Test] + public void Custom_EventDataTest() + { + var eventName = "custom_event"; + + Assert.DoesNotThrow(() => m_Result = AnalyticsEvent.Custom(eventName, m_CustomData)); + EvaluateCustomData(m_CustomData); + EvaluateAnalyticsResult(m_Result); + } + + [Test] + public void Custom_RegisterUnregisterUnnamedTest() + { + Action> myAction = + eventData => eventData.Add("my_key", "my_value"); + + AnalyticsEvent.Register(myAction); // Registering for a named AnalyticsEvent + + var eventName = "custom_event"; + + Assert.DoesNotThrow(() => m_Result = AnalyticsEvent.Custom(eventName, m_CustomData)); + + EvaluateRegisteredCustomData(m_CustomData); + EvaluateAnalyticsResult(m_Result); + + AnalyticsEvent.Unregister(myAction); + } + + /// Normal. Unregistered. + public static void EvaluateCustomData(IDictionary customData) + { + Assert.AreEqual(1, customData.Count, "Custom param count"); + } + + /// For Registered case. + public static void EvaluateRegisteredCustomData(IDictionary customData) + { + Assert.AreEqual(2, customData.Count, "Custom param count"); + } + + public static void EvaluateAnalyticsResult(AnalyticsResult result) + { + switch (result) + { + case AnalyticsResult.Ok: + break; + case AnalyticsResult.InvalidData: + Assert.Fail("Event data is invalid."); + break; + case AnalyticsResult.TooManyItems: + Assert.Fail("Event data consists of too many parameters."); + break; + default: + Debug.LogFormat("A result of {0} is passable for the purpose of this test.", result); + break; + } + } + } +} diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.analytics@3.2.2/Tests/Editor/Unity.Analytics.StandardEvents/AnalyticsEventTests.cs.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.analytics@3.2.2/Tests/Editor/Unity.Analytics.StandardEvents/AnalyticsEventTests.cs.meta" new file mode 100644 index 00000000..bb75d13e --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.analytics@3.2.2/Tests/Editor/Unity.Analytics.StandardEvents/AnalyticsEventTests.cs.meta" @@ -0,0 +1,12 @@ +fileFormatVersion: 2 +guid: b5366b8adc0f44b3c9cb261a3f752d7a +timeCreated: 1492730660 +licenseType: Pro +MonoImporter: + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.analytics@3.2.2/Tests/Editor/Unity.Analytics.StandardEvents/ChatMessageSentTests.cs" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.analytics@3.2.2/Tests/Editor/Unity.Analytics.StandardEvents/ChatMessageSentTests.cs" new file mode 100644 index 00000000..56496550 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.analytics@3.2.2/Tests/Editor/Unity.Analytics.StandardEvents/ChatMessageSentTests.cs" @@ -0,0 +1,22 @@ +using NUnit.Framework; + +namespace UnityEngine.Analytics.Tests +{ + public partial class AnalyticsEventTests + { + [Test] + public void ChatMessageSent_NoArgsTest() + { + Assert.DoesNotThrow(() => m_Result = AnalyticsEvent.ChatMessageSent()); + EvaluateAnalyticsResult(m_Result); + } + + [Test] + public void ChatMessageSent_CustomDataTest() + { + Assert.DoesNotThrow(() => m_Result = AnalyticsEvent.ChatMessageSent(m_CustomData)); + EvaluateCustomData(m_CustomData); + EvaluateAnalyticsResult(m_Result); + } + } +} diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.analytics@3.2.2/Tests/Editor/Unity.Analytics.StandardEvents/ChatMessageSentTests.cs.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.analytics@3.2.2/Tests/Editor/Unity.Analytics.StandardEvents/ChatMessageSentTests.cs.meta" new file mode 100644 index 00000000..16cb7f8d --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.analytics@3.2.2/Tests/Editor/Unity.Analytics.StandardEvents/ChatMessageSentTests.cs.meta" @@ -0,0 +1,12 @@ +fileFormatVersion: 2 +guid: 7b186a0d29a784d81809e8a5471d155e +timeCreated: 1489734081 +licenseType: Pro +MonoImporter: + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.analytics@3.2.2/Tests/Editor/Unity.Analytics.StandardEvents/CutsceneSkipTests.cs" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.analytics@3.2.2/Tests/Editor/Unity.Analytics.StandardEvents/CutsceneSkipTests.cs" new file mode 100644 index 00000000..4b3cfd35 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.analytics@3.2.2/Tests/Editor/Unity.Analytics.StandardEvents/CutsceneSkipTests.cs" @@ -0,0 +1,34 @@ +using System; +using NUnit.Framework; + +namespace UnityEngine.Analytics.Tests +{ + public partial class AnalyticsEventTests + { + [Test] + public void CutsceneSkip_CutsceneNameTest( + [Values("test_cutscene", "", null)] string name + ) + { + if (string.IsNullOrEmpty(name)) + { + Assert.Throws(() => AnalyticsEvent.CutsceneSkip(name)); + } + else + { + Assert.DoesNotThrow(() => m_Result = AnalyticsEvent.CutsceneSkip(name)); + EvaluateAnalyticsResult(m_Result); + } + } + + [Test] + public void CutsceneSkip_CustomDataTest() + { + var name = "test_cutscene"; + + Assert.DoesNotThrow(() => m_Result = AnalyticsEvent.CutsceneSkip(name, m_CustomData)); + EvaluateCustomData(m_CustomData); + EvaluateAnalyticsResult(m_Result); + } + } +} diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.analytics@3.2.2/Tests/Editor/Unity.Analytics.StandardEvents/CutsceneSkipTests.cs.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.analytics@3.2.2/Tests/Editor/Unity.Analytics.StandardEvents/CutsceneSkipTests.cs.meta" new file mode 100644 index 00000000..3722ed81 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.analytics@3.2.2/Tests/Editor/Unity.Analytics.StandardEvents/CutsceneSkipTests.cs.meta" @@ -0,0 +1,12 @@ +fileFormatVersion: 2 +guid: f03b3e03b69e74ef9bd0f20377217a73 +timeCreated: 1489734081 +licenseType: Pro +MonoImporter: + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.analytics@3.2.2/Tests/Editor/Unity.Analytics.StandardEvents/CutsceneStartTests.cs" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.analytics@3.2.2/Tests/Editor/Unity.Analytics.StandardEvents/CutsceneStartTests.cs" new file mode 100644 index 00000000..508cc790 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.analytics@3.2.2/Tests/Editor/Unity.Analytics.StandardEvents/CutsceneStartTests.cs" @@ -0,0 +1,34 @@ +using System; +using NUnit.Framework; + +namespace UnityEngine.Analytics.Tests +{ + public partial class AnalyticsEventTests + { + [Test] + public void CutsceneStart_CutsceneNameTest( + [Values("test_cutscene", "", null)] string name + ) + { + if (string.IsNullOrEmpty(name)) + { + Assert.Throws(() => AnalyticsEvent.CutsceneStart(name)); + } + else + { + Assert.DoesNotThrow(() => m_Result = AnalyticsEvent.CutsceneStart(name)); + EvaluateAnalyticsResult(m_Result); + } + } + + [Test] + public void CutsceneStart_CustomDataTest() + { + var name = "test_cutscene"; + + Assert.DoesNotThrow(() => m_Result = AnalyticsEvent.CutsceneStart(name, m_CustomData)); + EvaluateCustomData(m_CustomData); + EvaluateAnalyticsResult(m_Result); + } + } +} diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.analytics@3.2.2/Tests/Editor/Unity.Analytics.StandardEvents/CutsceneStartTests.cs.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.analytics@3.2.2/Tests/Editor/Unity.Analytics.StandardEvents/CutsceneStartTests.cs.meta" new file mode 100644 index 00000000..47f3e967 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.analytics@3.2.2/Tests/Editor/Unity.Analytics.StandardEvents/CutsceneStartTests.cs.meta" @@ -0,0 +1,12 @@ +fileFormatVersion: 2 +guid: edf97aac6cc5a437ebf600a06a2e5ac7 +timeCreated: 1492896816 +licenseType: Pro +MonoImporter: + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.analytics@3.2.2/Tests/Editor/Unity.Analytics.StandardEvents/FirstInteractionTests.cs" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.analytics@3.2.2/Tests/Editor/Unity.Analytics.StandardEvents/FirstInteractionTests.cs" new file mode 100644 index 00000000..a5cc8442 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.analytics@3.2.2/Tests/Editor/Unity.Analytics.StandardEvents/FirstInteractionTests.cs" @@ -0,0 +1,33 @@ +using NUnit.Framework; + +namespace UnityEngine.Analytics.Tests +{ + public partial class AnalyticsEventTests + { + [Test] + public void FirstInteraction_NoArgsTest() + { + Assert.DoesNotThrow(() => m_Result = AnalyticsEvent.FirstInteraction()); + EvaluateAnalyticsResult(m_Result); + } + + [Test] + public void FirstInteraction_ActionIdTest( + [Values("test_user_action", "", null)] string actionId + ) + { + Assert.DoesNotThrow(() => m_Result = AnalyticsEvent.FirstInteraction(actionId)); + EvaluateAnalyticsResult(m_Result); + } + + [Test] + public void FirstInteraction_CustomDataTest() + { + var actionId = "test_user_action"; + + Assert.DoesNotThrow(() => m_Result = AnalyticsEvent.FirstInteraction(actionId, m_CustomData)); + EvaluateCustomData(m_CustomData); + EvaluateAnalyticsResult(m_Result); + } + } +} diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.analytics@3.2.2/Tests/Editor/Unity.Analytics.StandardEvents/FirstInteractionTests.cs.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.analytics@3.2.2/Tests/Editor/Unity.Analytics.StandardEvents/FirstInteractionTests.cs.meta" new file mode 100644 index 00000000..d913d102 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.analytics@3.2.2/Tests/Editor/Unity.Analytics.StandardEvents/FirstInteractionTests.cs.meta" @@ -0,0 +1,12 @@ +fileFormatVersion: 2 +guid: 78759e25237a7430587982cd92a2a0d8 +timeCreated: 1489734081 +licenseType: Pro +MonoImporter: + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.analytics@3.2.2/Tests/Editor/Unity.Analytics.StandardEvents/GameOverTests.cs" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.analytics@3.2.2/Tests/Editor/Unity.Analytics.StandardEvents/GameOverTests.cs" new file mode 100644 index 00000000..8e88f445 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.analytics@3.2.2/Tests/Editor/Unity.Analytics.StandardEvents/GameOverTests.cs" @@ -0,0 +1,58 @@ +using System; +using NUnit.Framework; + +namespace UnityEngine.Analytics.Tests +{ + public partial class AnalyticsEventTests + { + [Test] + public void GameOver_NoArgsTest() + { + Assert.DoesNotThrow(() => m_Result = AnalyticsEvent.GameOver()); + EvaluateAnalyticsResult(m_Result); + } + + [Test] + public void GameOver_LevelIndexTest( + [Values(-1, 0, 1)] int levelIndex + ) + { + Assert.DoesNotThrow(() => m_Result = AnalyticsEvent.GameOver(levelIndex)); + EvaluateAnalyticsResult(m_Result); + } + + [Test] + public void GameOver_LevelNameTest( + [Values("test_level", "", null)] string levelName + ) + { + Assert.DoesNotThrow(() => m_Result = AnalyticsEvent.GameOver(levelName)); + EvaluateAnalyticsResult(m_Result); + } + + [Test] + public void GameOver_LevelIndex_LevelNameTest( + [Values(0)] int levelIndex, + [Values("test_level", "", null)] string levelName + ) + { + Assert.DoesNotThrow(() => m_Result = AnalyticsEvent.GameOver(levelIndex, levelName)); + EvaluateAnalyticsResult(m_Result); + } + + [Test] + public void GameOver_CustomDataTest() + { + var levelIndex = 0; + var levelName = "test_level"; + + Assert.DoesNotThrow(() => m_Result = AnalyticsEvent.GameOver(levelName, m_CustomData)); + EvaluateCustomData(m_CustomData); + EvaluateAnalyticsResult(m_Result); + + Assert.DoesNotThrow(() => m_Result = AnalyticsEvent.GameOver(levelIndex, levelName, m_CustomData)); + EvaluateCustomData(m_CustomData); + EvaluateAnalyticsResult(m_Result); + } + } +} diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.analytics@3.2.2/Tests/Editor/Unity.Analytics.StandardEvents/GameOverTests.cs.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.analytics@3.2.2/Tests/Editor/Unity.Analytics.StandardEvents/GameOverTests.cs.meta" new file mode 100644 index 00000000..60aa2a19 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.analytics@3.2.2/Tests/Editor/Unity.Analytics.StandardEvents/GameOverTests.cs.meta" @@ -0,0 +1,12 @@ +fileFormatVersion: 2 +guid: a30e59ca9f68d46db88323ac18f49e31 +timeCreated: 1489734081 +licenseType: Pro +MonoImporter: + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.analytics@3.2.2/Tests/Editor/Unity.Analytics.StandardEvents/GameStartTests.cs" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.analytics@3.2.2/Tests/Editor/Unity.Analytics.StandardEvents/GameStartTests.cs" new file mode 100644 index 00000000..18749c7c --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.analytics@3.2.2/Tests/Editor/Unity.Analytics.StandardEvents/GameStartTests.cs" @@ -0,0 +1,22 @@ +using NUnit.Framework; + +namespace UnityEngine.Analytics.Tests +{ + public partial class AnalyticsEventTests + { + [Test] + public void GameStart_NoArgsTest() + { + Assert.DoesNotThrow(() => m_Result = AnalyticsEvent.GameStart()); + EvaluateAnalyticsResult(m_Result); + } + + [Test] + public void GameStart_CustomDataTest() + { + Assert.DoesNotThrow(() => m_Result = AnalyticsEvent.GameStart(m_CustomData)); + EvaluateCustomData(m_CustomData); + EvaluateAnalyticsResult(m_Result); + } + } +} diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.analytics@3.2.2/Tests/Editor/Unity.Analytics.StandardEvents/GameStartTests.cs.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.analytics@3.2.2/Tests/Editor/Unity.Analytics.StandardEvents/GameStartTests.cs.meta" new file mode 100644 index 00000000..e17c1ba1 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.analytics@3.2.2/Tests/Editor/Unity.Analytics.StandardEvents/GameStartTests.cs.meta" @@ -0,0 +1,12 @@ +fileFormatVersion: 2 +guid: 2b2be9ee9f41a4b2db6b502697ba31b1 +timeCreated: 1489734081 +licenseType: Pro +MonoImporter: + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.analytics@3.2.2/Tests/Editor/Unity.Analytics.StandardEvents/IAPTransactionTests.cs" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.analytics@3.2.2/Tests/Editor/Unity.Analytics.StandardEvents/IAPTransactionTests.cs" new file mode 100644 index 00000000..439d4e77 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.analytics@3.2.2/Tests/Editor/Unity.Analytics.StandardEvents/IAPTransactionTests.cs" @@ -0,0 +1,111 @@ +using System; +using NUnit.Framework; + +namespace UnityEngine.Analytics.Tests +{ + public partial class AnalyticsEventTests + { + [Test] + public void IAPTransaction_ContextTest( + [Values("test", "", null)] string context) + { + var price = 1f; + var itemId = "test_item"; + + if (string.IsNullOrEmpty(context)) + { + Assert.Throws(() => AnalyticsEvent.IAPTransaction(context, price, itemId)); + } + else + { + Assert.DoesNotThrow(() => m_Result = AnalyticsEvent.IAPTransaction(context, price, itemId)); + } + + EvaluateAnalyticsResult(m_Result); + } + + [Test] + public void IAPTransaction_PriceTest( + [Values(-1f, 0f, 1f)] float price) + { + var context = "test"; + var itemId = "test_item"; + + Assert.DoesNotThrow(() => m_Result = AnalyticsEvent.IAPTransaction(context, price, itemId)); + EvaluateAnalyticsResult(m_Result); + } + + [Test] + public void IAPTransaction_ItemIdTest( + [Values("test_item", "", null)] string itemId) + { + var context = "test"; + var price = 1f; + + if (string.IsNullOrEmpty(itemId)) + { + Assert.Throws(() => AnalyticsEvent.IAPTransaction(context, price, itemId)); + } + else + { + Assert.DoesNotThrow(() => m_Result = AnalyticsEvent.IAPTransaction(context, price, itemId)); + } + + EvaluateAnalyticsResult(m_Result); + } + + [Test] + public void IAPTransaction_ItemTypeTest( + [Values("test_type", "", null)] string itemType) + { + var context = "test"; + var price = 1f; + var itemId = "test_item"; + + Assert.DoesNotThrow(() => m_Result = AnalyticsEvent.IAPTransaction(context, price, itemId, itemType)); + EvaluateAnalyticsResult(m_Result); + } + + [Test] + public void IAPTransaction_LevelTest( + [Values("test_level", "", null)] string level) + { + var context = "test"; + var price = 1f; + var itemId = "test_item"; + var itemType = "test_type"; + + Assert.DoesNotThrow(() => m_Result = AnalyticsEvent.IAPTransaction(context, price, itemId, itemType, level)); + EvaluateAnalyticsResult(m_Result); + } + + [Test] + public void IAPTransaction_TransactionIdTest( + [Values("test_id", "", null)] string transactionId) + { + var context = "test"; + var price = 1f; + var itemId = "test_item"; + var itemType = "test_type"; + var level = "test_level"; + + Assert.DoesNotThrow(() => m_Result = AnalyticsEvent.IAPTransaction(context, price, itemId, itemType, level, transactionId)); + EvaluateAnalyticsResult(m_Result); + } + + [Test] + public void IAPTransaction_CustomDataTest() + { + var context = "test"; + var price = 1f; + var itemId = "test_item"; + var itemType = "test_type"; + var level = "test_level"; + var transactionId = "test_id"; + + Assert.DoesNotThrow(() => m_Result = AnalyticsEvent.IAPTransaction(context, price, itemId, itemType, level, transactionId, m_CustomData)); + EvaluateCustomData(m_CustomData); + EvaluateAnalyticsResult(m_Result); + } + } +} diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.analytics@3.2.2/Tests/Editor/Unity.Analytics.StandardEvents/IAPTransactionTests.cs.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.analytics@3.2.2/Tests/Editor/Unity.Analytics.StandardEvents/IAPTransactionTests.cs.meta" new file mode 100644 index 00000000..a9cb068c --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.analytics@3.2.2/Tests/Editor/Unity.Analytics.StandardEvents/IAPTransactionTests.cs.meta" @@ -0,0 +1,12 @@ +fileFormatVersion: 2 +guid: 8b4a8234f532f4b34aba0ab70400d90d +timeCreated: 1497539738 +licenseType: Pro +MonoImporter: + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.analytics@3.2.2/Tests/Editor/Unity.Analytics.StandardEvents/ItemAcquiredTests.cs" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.analytics@3.2.2/Tests/Editor/Unity.Analytics.StandardEvents/ItemAcquiredTests.cs" new file mode 100644 index 00000000..ec2b6683 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.analytics@3.2.2/Tests/Editor/Unity.Analytics.StandardEvents/ItemAcquiredTests.cs" @@ -0,0 +1,176 @@ +using System; +using NUnit.Framework; + +namespace UnityEngine.Analytics.Tests +{ + public partial class AnalyticsEventTests + { + [Test] + public void ItemAcquired_CurrencyTypeTest( + [Values(AcquisitionType.Premium, AcquisitionType.Soft)] AcquisitionType currencyType) + { + var context = "test"; + var amount = 1f; + var itemId = "test_item"; + var balance = 1f; + + Assert.DoesNotThrow(() => m_Result = AnalyticsEvent.ItemAcquired(currencyType, context, amount, itemId)); + EvaluateAnalyticsResult(m_Result); + + Assert.DoesNotThrow(() => m_Result = AnalyticsEvent.ItemAcquired(currencyType, context, amount, itemId, balance)); + EvaluateAnalyticsResult(m_Result); + } + + [Test] + public void ItemAcquired_ContextTest( + [Values("test", "", null)] string context) + { + var currencyType = AcquisitionType.Soft; + var amount = 1f; + var itemId = "test_item"; + var balance = 1f; + + if (string.IsNullOrEmpty(context)) + { + Assert.Throws(() => AnalyticsEvent.ItemAcquired(currencyType, context, amount, itemId)); + Assert.Throws(() => AnalyticsEvent.ItemAcquired(currencyType, context, amount, itemId, balance)); + } + else + { + Assert.DoesNotThrow(() => m_Result = AnalyticsEvent.ItemAcquired(currencyType, context, amount, itemId, balance)); + EvaluateAnalyticsResult(m_Result); + + Assert.DoesNotThrow(() => m_Result = AnalyticsEvent.ItemAcquired(currencyType, context, amount, itemId, balance)); + EvaluateAnalyticsResult(m_Result); + } + } + + [Test] + public void ItemAcquired_AmountTest( + [Values(-1f, 0f, 1f)] float amount) + { + var currencyType = AcquisitionType.Soft; + var context = "test"; + var itemId = "test_item"; + var balance = 1f; + + Assert.DoesNotThrow(() => m_Result = AnalyticsEvent.ItemAcquired(currencyType, context, amount, itemId)); + EvaluateAnalyticsResult(m_Result); + + Assert.DoesNotThrow(() => m_Result = AnalyticsEvent.ItemAcquired(currencyType, context, amount, itemId, balance)); + EvaluateAnalyticsResult(m_Result); + } + + [Test] + public void ItemAcquired_ItemIdTest( + [Values("test_item", "", null)] string itemId) + { + var currencyType = AcquisitionType.Soft; + var context = "test"; + var amount = 1f; + var balance = 1f; + + if (string.IsNullOrEmpty(itemId)) + { + Assert.Throws(() => AnalyticsEvent.ItemAcquired(currencyType, context, amount, itemId)); + Assert.Throws(() => AnalyticsEvent.ItemAcquired(currencyType, context, amount, itemId, balance)); + } + else + { + Assert.DoesNotThrow(() => m_Result = AnalyticsEvent.ItemAcquired(currencyType, context, amount, itemId)); + EvaluateAnalyticsResult(m_Result); + + Assert.DoesNotThrow(() => m_Result = AnalyticsEvent.ItemAcquired(currencyType, context, amount, itemId, balance)); + EvaluateAnalyticsResult(m_Result); + } + } + + [Test] + public void ItemAcquired_BalanceTest( + [Values(-1f, 0, 1f)] float balance) + { + var currencyType = AcquisitionType.Soft; + var context = "test"; + var amount = 1f; + var itemId = "test_item"; + + Assert.DoesNotThrow(() => m_Result = AnalyticsEvent.ItemAcquired(currencyType, context, amount, itemId, balance)); + EvaluateAnalyticsResult(m_Result); + } + + [Test] + public void ItemAcquired_ItemTypeTest( + [Values("test_type", "", null)] string itemType) + { + var currencyType = AcquisitionType.Soft; + var context = "test"; + var amount = 1f; + var itemId = "test_item"; + var balance = 1f; + + Assert.DoesNotThrow(() => m_Result = AnalyticsEvent.ItemAcquired(currencyType, context, amount, itemId, itemType)); + EvaluateAnalyticsResult(m_Result); + + Assert.DoesNotThrow(() => m_Result = AnalyticsEvent.ItemAcquired(currencyType, context, amount, itemId, balance, itemType)); + EvaluateAnalyticsResult(m_Result); + } + + [Test] + public void ItemAcquired_LevelTest( + [Values("test_level", "", null)] string level) + { + var currencyType = AcquisitionType.Soft; + var context = "test"; + var amount = 1f; + var itemId = "test_item"; + var balance = 1f; + var itemType = "test_type"; + + Assert.DoesNotThrow(() => m_Result = AnalyticsEvent.ItemAcquired(currencyType, context, amount, itemId, itemType, level)); + EvaluateAnalyticsResult(m_Result); + + Assert.DoesNotThrow(() => m_Result = AnalyticsEvent.ItemAcquired(currencyType, context, amount, itemId, balance, itemType, level)); + EvaluateAnalyticsResult(m_Result); + } + + [Test] + public void ItemAcquired_TransactionIdTest( + [Values("test_id", "", null)] string transactionId) + { + var currencyType = AcquisitionType.Soft; + var context = "test"; + var amount = 1f; + var itemId = "test_item"; + var balance = 1f; + var itemType = "test_type"; + var level = "test_level"; + + Assert.DoesNotThrow(() => m_Result = AnalyticsEvent.ItemAcquired(currencyType, context, amount, itemId, itemType, level, transactionId)); + EvaluateAnalyticsResult(m_Result); + + Assert.DoesNotThrow(() => m_Result = AnalyticsEvent.ItemAcquired(currencyType, context, amount, itemId, balance, itemType, level, transactionId)); + EvaluateAnalyticsResult(m_Result); + } + + [Test] + public void ItemAcquired_CustomDataTest() + { + var currencyType = AcquisitionType.Soft; + var context = "test"; + var amount = 1f; + var itemId = "test_item"; + var balance = 1f; + var itemType = "test_type"; + var level = "test_level"; + var transactionId = "test_id"; + + Assert.DoesNotThrow(() => m_Result = AnalyticsEvent.ItemAcquired(currencyType, context, amount, itemId, itemType, level, transactionId, m_CustomData)); + EvaluateCustomData(m_CustomData); + EvaluateAnalyticsResult(m_Result); + + Assert.DoesNotThrow(() => m_Result = AnalyticsEvent.ItemAcquired(currencyType, context, amount, itemId, balance, itemType, level, transactionId, m_CustomData)); + EvaluateCustomData(m_CustomData); + EvaluateAnalyticsResult(m_Result); + } + } +} diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.analytics@3.2.2/Tests/Editor/Unity.Analytics.StandardEvents/ItemAcquiredTests.cs.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.analytics@3.2.2/Tests/Editor/Unity.Analytics.StandardEvents/ItemAcquiredTests.cs.meta" new file mode 100644 index 00000000..72834076 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.analytics@3.2.2/Tests/Editor/Unity.Analytics.StandardEvents/ItemAcquiredTests.cs.meta" @@ -0,0 +1,12 @@ +fileFormatVersion: 2 +guid: 5e7a49a6952af4d4ab2c3b038be68141 +timeCreated: 1497539770 +licenseType: Pro +MonoImporter: + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.analytics@3.2.2/Tests/Editor/Unity.Analytics.StandardEvents/ItemSpentTests.cs" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.analytics@3.2.2/Tests/Editor/Unity.Analytics.StandardEvents/ItemSpentTests.cs" new file mode 100644 index 00000000..52ee9422 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.analytics@3.2.2/Tests/Editor/Unity.Analytics.StandardEvents/ItemSpentTests.cs" @@ -0,0 +1,176 @@ +using System; +using NUnit.Framework; + +namespace UnityEngine.Analytics.Tests +{ + public partial class AnalyticsEventTests + { + [Test] + public void ItemSpent_CurrencyTypeTest( + [Values(AcquisitionType.Premium, AcquisitionType.Soft)] AcquisitionType currencyType) + { + var context = "test"; + var amount = 1f; + var itemId = "test_item"; + var balance = 1f; + + Assert.DoesNotThrow(() => m_Result = AnalyticsEvent.ItemSpent(currencyType, context, amount, itemId)); + EvaluateAnalyticsResult(m_Result); + + Assert.DoesNotThrow(() => m_Result = AnalyticsEvent.ItemSpent(currencyType, context, amount, itemId, balance)); + EvaluateAnalyticsResult(m_Result); + } + + [Test] + public void ItemSpent_ContextTest( + [Values("test", "", null)] string context) + { + var currencyType = AcquisitionType.Soft; + var amount = 1f; + var itemId = "test_item"; + var balance = 1f; + + if (string.IsNullOrEmpty(context)) + { + Assert.Throws(() => AnalyticsEvent.ItemSpent(currencyType, context, amount, itemId)); + Assert.Throws(() => AnalyticsEvent.ItemSpent(currencyType, context, amount, itemId, balance)); + } + else + { + Assert.DoesNotThrow(() => m_Result = AnalyticsEvent.ItemSpent(currencyType, context, amount, itemId, balance)); + EvaluateAnalyticsResult(m_Result); + + Assert.DoesNotThrow(() => m_Result = AnalyticsEvent.ItemSpent(currencyType, context, amount, itemId, balance)); + EvaluateAnalyticsResult(m_Result); + } + } + + [Test] + public void ItemSpent_AmountTest( + [Values(-1f, 0f, 1f)] float amount) + { + var currencyType = AcquisitionType.Soft; + var context = "test"; + var itemId = "test_item"; + var balance = 1f; + + Assert.DoesNotThrow(() => m_Result = AnalyticsEvent.ItemSpent(currencyType, context, amount, itemId)); + EvaluateAnalyticsResult(m_Result); + + Assert.DoesNotThrow(() => m_Result = AnalyticsEvent.ItemSpent(currencyType, context, amount, itemId, balance)); + EvaluateAnalyticsResult(m_Result); + } + + [Test] + public void ItemSpent_ItemIdTest( + [Values("test_item", "", null)] string itemId) + { + var currencyType = AcquisitionType.Soft; + var context = "test"; + var amount = 1f; + var balance = 1f; + + if (string.IsNullOrEmpty(itemId)) + { + Assert.Throws(() => AnalyticsEvent.ItemSpent(currencyType, context, amount, itemId)); + Assert.Throws(() => AnalyticsEvent.ItemSpent(currencyType, context, amount, itemId, balance)); + } + else + { + Assert.DoesNotThrow(() => m_Result = AnalyticsEvent.ItemSpent(currencyType, context, amount, itemId)); + EvaluateAnalyticsResult(m_Result); + + Assert.DoesNotThrow(() => m_Result = AnalyticsEvent.ItemSpent(currencyType, context, amount, itemId, balance)); + EvaluateAnalyticsResult(m_Result); + } + } + + [Test] + public void ItemSpent_BalanceTest( + [Values(-1f, 0, 1f)] float balance) + { + var currencyType = AcquisitionType.Soft; + var context = "test"; + var amount = 1f; + var itemId = "test_item"; + + Assert.DoesNotThrow(() => m_Result = AnalyticsEvent.ItemSpent(currencyType, context, amount, itemId, balance)); + EvaluateAnalyticsResult(m_Result); + } + + [Test] + public void ItemSpent_ItemTypeTest( + [Values("test_type", "", null)] string itemType) + { + var currencyType = AcquisitionType.Soft; + var context = "test"; + var amount = 1f; + var itemId = "test_item"; + var balance = 1f; + + Assert.DoesNotThrow(() => m_Result = AnalyticsEvent.ItemSpent(currencyType, context, amount, itemId, itemType)); + EvaluateAnalyticsResult(m_Result); + + Assert.DoesNotThrow(() => m_Result = AnalyticsEvent.ItemSpent(currencyType, context, amount, itemId, balance, itemType)); + EvaluateAnalyticsResult(m_Result); + } + + [Test] + public void ItemSpent_LevelTest( + [Values("test_level", "", null)] string level) + { + var currencyType = AcquisitionType.Soft; + var context = "test"; + var amount = 1f; + var itemId = "test_item"; + var balance = 1f; + var itemType = "test_type"; + + Assert.DoesNotThrow(() => m_Result = AnalyticsEvent.ItemSpent(currencyType, context, amount, itemId, itemType, level)); + EvaluateAnalyticsResult(m_Result); + + Assert.DoesNotThrow(() => m_Result = AnalyticsEvent.ItemSpent(currencyType, context, amount, itemId, balance, itemType, level)); + EvaluateAnalyticsResult(m_Result); + } + + [Test] + public void ItemSpent_TransactionIdTest( + [Values("test_id", "", null)] string transactionId) + { + var currencyType = AcquisitionType.Soft; + var context = "test"; + var amount = 1f; + var itemId = "test_item"; + var balance = 1f; + var itemType = "test_type"; + var level = "test_level"; + + Assert.DoesNotThrow(() => m_Result = AnalyticsEvent.ItemSpent(currencyType, context, amount, itemId, itemType, level, transactionId)); + EvaluateAnalyticsResult(m_Result); + + Assert.DoesNotThrow(() => m_Result = AnalyticsEvent.ItemSpent(currencyType, context, amount, itemId, balance, itemType, level, transactionId)); + EvaluateAnalyticsResult(m_Result); + } + + [Test] + public void ItemSpent_CustomDataTest() + { + var currencyType = AcquisitionType.Soft; + var context = "test"; + var amount = 1f; + var itemId = "test_item"; + var balance = 1f; + var itemType = "test_type"; + var level = "test_level"; + var transactionId = "test_id"; + + Assert.DoesNotThrow(() => m_Result = AnalyticsEvent.ItemSpent(currencyType, context, amount, itemId, itemType, level, transactionId, m_CustomData)); + EvaluateCustomData(m_CustomData); + EvaluateAnalyticsResult(m_Result); + + Assert.DoesNotThrow(() => m_Result = AnalyticsEvent.ItemSpent(currencyType, context, amount, itemId, balance, itemType, level, transactionId, m_CustomData)); + EvaluateCustomData(m_CustomData); + EvaluateAnalyticsResult(m_Result); + } + } +} diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.analytics@3.2.2/Tests/Editor/Unity.Analytics.StandardEvents/ItemSpentTests.cs.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.analytics@3.2.2/Tests/Editor/Unity.Analytics.StandardEvents/ItemSpentTests.cs.meta" new file mode 100644 index 00000000..ab3b390a --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.analytics@3.2.2/Tests/Editor/Unity.Analytics.StandardEvents/ItemSpentTests.cs.meta" @@ -0,0 +1,12 @@ +fileFormatVersion: 2 +guid: 00ed25e3298ac440eb327c706a964e3a +timeCreated: 1497539780 +licenseType: Pro +MonoImporter: + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.analytics@3.2.2/Tests/Editor/Unity.Analytics.StandardEvents/LevelCompleteTests.cs" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.analytics@3.2.2/Tests/Editor/Unity.Analytics.StandardEvents/LevelCompleteTests.cs" new file mode 100644 index 00000000..274e37c4 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.analytics@3.2.2/Tests/Editor/Unity.Analytics.StandardEvents/LevelCompleteTests.cs" @@ -0,0 +1,58 @@ +using System; +using NUnit.Framework; + +namespace UnityEngine.Analytics.Tests +{ + public partial class AnalyticsEventTests + { + [Test] + public void LevelComplete_LevelIndexTest( + [Values(-1, 0, 1)] int levelIndex + ) + { + Assert.DoesNotThrow(() => m_Result = AnalyticsEvent.LevelComplete(levelIndex)); + EvaluateAnalyticsResult(m_Result); + } + + [Test] + public void LevelComplete_LevelNameTest( + [Values("test_level", "", null)] string levelName + ) + { + if (string.IsNullOrEmpty(levelName)) + { + Assert.Throws(() => AnalyticsEvent.LevelComplete(levelName)); + } + else + { + Assert.DoesNotThrow(() => m_Result = AnalyticsEvent.LevelComplete(levelName)); + EvaluateAnalyticsResult(m_Result); + } + } + + // [Test] + // public void LevelComplete_LevelIndex_LevelNameTest ( + // [Values(0)] int levelIndex, + // [Values("test_level", "", null)] string levelName + // ) + // { + // Assert.DoesNotThrow(() => m_Result = AnalyticsEvent.LevelComplete(levelIndex, levelName)); + // EvaluateAnalyticsResult(m_Result); + // } + + [Test] + public void LevelComplete_CustomDataTest() + { + var levelIndex = 0; + var levelName = "test_level"; + + Assert.DoesNotThrow(() => m_Result = AnalyticsEvent.LevelComplete(levelName, m_CustomData)); + EvaluateCustomData(m_CustomData); + EvaluateAnalyticsResult(m_Result); + + Assert.DoesNotThrow(() => m_Result = AnalyticsEvent.LevelComplete(levelIndex, m_CustomData)); + EvaluateCustomData(m_CustomData); + EvaluateAnalyticsResult(m_Result); + } + } +} diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.analytics@3.2.2/Tests/Editor/Unity.Analytics.StandardEvents/LevelCompleteTests.cs.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.analytics@3.2.2/Tests/Editor/Unity.Analytics.StandardEvents/LevelCompleteTests.cs.meta" new file mode 100644 index 00000000..70202cf9 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.analytics@3.2.2/Tests/Editor/Unity.Analytics.StandardEvents/LevelCompleteTests.cs.meta" @@ -0,0 +1,12 @@ +fileFormatVersion: 2 +guid: fa4ff09b6aaaa4df29a884efa38bce56 +timeCreated: 1489734081 +licenseType: Pro +MonoImporter: + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.analytics@3.2.2/Tests/Editor/Unity.Analytics.StandardEvents/LevelFailTests.cs" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.analytics@3.2.2/Tests/Editor/Unity.Analytics.StandardEvents/LevelFailTests.cs" new file mode 100644 index 00000000..fece2ead --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.analytics@3.2.2/Tests/Editor/Unity.Analytics.StandardEvents/LevelFailTests.cs" @@ -0,0 +1,58 @@ +using System; +using NUnit.Framework; + +namespace UnityEngine.Analytics.Tests +{ + public partial class AnalyticsEventTests + { + [Test] + public void LevelFail_LevelIndexTest( + [Values(-1, 0, 1)] int levelIndex + ) + { + Assert.DoesNotThrow(() => m_Result = AnalyticsEvent.LevelFail(levelIndex)); + EvaluateAnalyticsResult(m_Result); + } + + [Test] + public void LevelFail_LevelNameTest( + [Values("test_level", "", null)] string levelName + ) + { + if (string.IsNullOrEmpty(levelName)) + { + Assert.Throws(() => AnalyticsEvent.LevelFail(levelName)); + } + else + { + Assert.DoesNotThrow(() => m_Result = AnalyticsEvent.LevelFail(levelName)); + EvaluateAnalyticsResult(m_Result); + } + } + + // [Test] + // public void LevelFail_LevelIndex_LevelNameTest ( + // [Values(-1, 0, 1)] int levelIndex, + // [Values("test_level", "", null)] string levelName + // ) + // { + // Assert.DoesNotThrow(() => m_Result = AnalyticsEvent.LevelFail(levelIndex, levelName)); + // EvaluateAnalyticsResult(m_Result); + // } + + [Test] + public void LevelFail_CustomDataTest() + { + var levelIndex = 0; + var levelName = "test_level"; + + Assert.DoesNotThrow(() => m_Result = AnalyticsEvent.LevelFail(levelName, m_CustomData)); + EvaluateCustomData(m_CustomData); + EvaluateAnalyticsResult(m_Result); + + Assert.DoesNotThrow(() => m_Result = AnalyticsEvent.LevelFail(levelIndex, m_CustomData)); + EvaluateCustomData(m_CustomData); + EvaluateAnalyticsResult(m_Result); + } + } +} diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.analytics@3.2.2/Tests/Editor/Unity.Analytics.StandardEvents/LevelFailTests.cs.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.analytics@3.2.2/Tests/Editor/Unity.Analytics.StandardEvents/LevelFailTests.cs.meta" new file mode 100644 index 00000000..05b52fdb --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.analytics@3.2.2/Tests/Editor/Unity.Analytics.StandardEvents/LevelFailTests.cs.meta" @@ -0,0 +1,12 @@ +fileFormatVersion: 2 +guid: 036d03e26977243fa9a2d7af48e51e08 +timeCreated: 1489734081 +licenseType: Pro +MonoImporter: + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.analytics@3.2.2/Tests/Editor/Unity.Analytics.StandardEvents/LevelQuitTests.cs" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.analytics@3.2.2/Tests/Editor/Unity.Analytics.StandardEvents/LevelQuitTests.cs" new file mode 100644 index 00000000..e4859aba --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.analytics@3.2.2/Tests/Editor/Unity.Analytics.StandardEvents/LevelQuitTests.cs" @@ -0,0 +1,58 @@ +using System; +using NUnit.Framework; + +namespace UnityEngine.Analytics.Tests +{ + public partial class AnalyticsEventTests + { + [Test] + public void LevelQuit_LevelIndexTest( + [Values(-1, 0, 1)] int levelIndex + ) + { + Assert.DoesNotThrow(() => m_Result = AnalyticsEvent.LevelQuit(levelIndex)); + EvaluateAnalyticsResult(m_Result); + } + + [Test] + public void LevelQuit_LevelNameTest( + [Values("test_level", "", null)] string levelName + ) + { + if (string.IsNullOrEmpty(levelName)) + { + Assert.Throws(() => AnalyticsEvent.LevelQuit(levelName)); + } + else + { + Assert.DoesNotThrow(() => m_Result = AnalyticsEvent.LevelQuit(levelName)); + EvaluateAnalyticsResult(m_Result); + } + } + + // [Test] + // public void LevelQuit_LevelIndex_LevelNameTest ( + // [Values(-1, 0, 1)] int levelIndex, + // [Values("test_level", "", null)] string levelName + // ) + // { + // Assert.DoesNotThrow(() => m_Result = AnalyticsEvent.LevelQuit(levelIndex, levelName)); + // EvaluateAnalyticsResult(m_Result); + // } + + [Test] + public void LevelQuit_CustomDataTest() + { + var levelIndex = 0; + var levelName = "test_level"; + + Assert.DoesNotThrow(() => m_Result = AnalyticsEvent.LevelQuit(levelName, m_CustomData)); + EvaluateCustomData(m_CustomData); + EvaluateAnalyticsResult(m_Result); + + Assert.DoesNotThrow(() => m_Result = AnalyticsEvent.LevelQuit(levelIndex, m_CustomData)); + EvaluateCustomData(m_CustomData); + EvaluateAnalyticsResult(m_Result); + } + } +} diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.analytics@3.2.2/Tests/Editor/Unity.Analytics.StandardEvents/LevelQuitTests.cs.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.analytics@3.2.2/Tests/Editor/Unity.Analytics.StandardEvents/LevelQuitTests.cs.meta" new file mode 100644 index 00000000..0b0c0f77 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.analytics@3.2.2/Tests/Editor/Unity.Analytics.StandardEvents/LevelQuitTests.cs.meta" @@ -0,0 +1,12 @@ +fileFormatVersion: 2 +guid: 617202f4e2bed4ef8acccfd6c1ecd6fa +timeCreated: 1489734081 +licenseType: Pro +MonoImporter: + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.analytics@3.2.2/Tests/Editor/Unity.Analytics.StandardEvents/LevelSkipTests.cs" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.analytics@3.2.2/Tests/Editor/Unity.Analytics.StandardEvents/LevelSkipTests.cs" new file mode 100644 index 00000000..fcbe9eb6 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.analytics@3.2.2/Tests/Editor/Unity.Analytics.StandardEvents/LevelSkipTests.cs" @@ -0,0 +1,58 @@ +using System; +using NUnit.Framework; + +namespace UnityEngine.Analytics.Tests +{ + public partial class AnalyticsEventTests + { + [Test] + public void LevelSkip_LevelIndexTest( + [Values(-1, 0, 1)] int levelIndex + ) + { + Assert.DoesNotThrow(() => m_Result = AnalyticsEvent.LevelSkip(levelIndex)); + EvaluateAnalyticsResult(m_Result); + } + + [Test] + public void LevelSkip_LevelNameTest( + [Values("test_level", "", null)] string levelName + ) + { + if (string.IsNullOrEmpty(levelName)) + { + Assert.Throws(() => AnalyticsEvent.LevelSkip(levelName)); + } + else + { + Assert.DoesNotThrow(() => m_Result = AnalyticsEvent.LevelSkip(levelName)); + EvaluateAnalyticsResult(m_Result); + } + } + + // [Test] + // public void LevelSkip_LevelIndex_LevelNameTest ( + // [Values(-1, 0, 1)] int levelIndex, + // [Values("test_level", "", null)] string levelName + // ) + // { + // Assert.DoesNotThrow(() => m_Result = AnalyticsEvent.LevelSkip(levelIndex, levelName)); + // EvaluateAnalyticsResult(m_Result); + // } + + [Test] + public void LevelSkip_CustomDataTest() + { + var levelIndex = 0; + var levelName = "test_level"; + + Assert.DoesNotThrow(() => m_Result = AnalyticsEvent.LevelSkip(levelName, m_CustomData)); + EvaluateCustomData(m_CustomData); + EvaluateAnalyticsResult(m_Result); + + Assert.DoesNotThrow(() => m_Result = AnalyticsEvent.LevelSkip(levelIndex, m_CustomData)); + EvaluateCustomData(m_CustomData); + EvaluateAnalyticsResult(m_Result); + } + } +} diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.analytics@3.2.2/Tests/Editor/Unity.Analytics.StandardEvents/LevelSkipTests.cs.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.analytics@3.2.2/Tests/Editor/Unity.Analytics.StandardEvents/LevelSkipTests.cs.meta" new file mode 100644 index 00000000..5d5b103c --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.analytics@3.2.2/Tests/Editor/Unity.Analytics.StandardEvents/LevelSkipTests.cs.meta" @@ -0,0 +1,12 @@ +fileFormatVersion: 2 +guid: 93f7ca1a9c5c945a89e884f9611c70f0 +timeCreated: 1489734081 +licenseType: Pro +MonoImporter: + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.analytics@3.2.2/Tests/Editor/Unity.Analytics.StandardEvents/LevelStartTests.cs" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.analytics@3.2.2/Tests/Editor/Unity.Analytics.StandardEvents/LevelStartTests.cs" new file mode 100644 index 00000000..ff4ef434 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.analytics@3.2.2/Tests/Editor/Unity.Analytics.StandardEvents/LevelStartTests.cs" @@ -0,0 +1,58 @@ +using System; +using NUnit.Framework; + +namespace UnityEngine.Analytics.Tests +{ + public partial class AnalyticsEventTests + { + [Test] + public void LevelStart_LevelIndexTest( + [Values(-1, 0, 1)] int levelIndex + ) + { + Assert.DoesNotThrow(() => m_Result = AnalyticsEvent.LevelStart(levelIndex)); + EvaluateAnalyticsResult(m_Result); + } + + [Test] + public void LevelStart_LevelNameTest( + [Values("test_level", "", null)] string levelName + ) + { + if (string.IsNullOrEmpty(levelName)) + { + Assert.Throws(() => AnalyticsEvent.LevelStart(levelName)); + } + else + { + Assert.DoesNotThrow(() => m_Result = AnalyticsEvent.LevelStart(levelName)); + EvaluateAnalyticsResult(m_Result); + } + } + + // [Test] + // public void LevelStart_LevelIndex_LevelNameTest ( + // [Values(0)] int levelIndex, + // [Values("test_level", "", null)] string levelName + // ) + // { + // Assert.DoesNotThrow(() => m_Result = AnalyticsEvent.LevelStart(levelIndex, levelName)); + // EvaluateAnalyticsResult(m_Result); + // } + + [Test] + public void LevelStart_CustomDataTest() + { + var levelIndex = 0; + var levelName = "test_level"; + + Assert.DoesNotThrow(() => m_Result = AnalyticsEvent.LevelStart(levelName, m_CustomData)); + EvaluateCustomData(m_CustomData); + EvaluateAnalyticsResult(m_Result); + + Assert.DoesNotThrow(() => m_Result = AnalyticsEvent.LevelStart(levelIndex, m_CustomData)); + EvaluateCustomData(m_CustomData); + EvaluateAnalyticsResult(m_Result); + } + } +} diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.analytics@3.2.2/Tests/Editor/Unity.Analytics.StandardEvents/LevelStartTests.cs.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.analytics@3.2.2/Tests/Editor/Unity.Analytics.StandardEvents/LevelStartTests.cs.meta" new file mode 100644 index 00000000..121018d8 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.analytics@3.2.2/Tests/Editor/Unity.Analytics.StandardEvents/LevelStartTests.cs.meta" @@ -0,0 +1,12 @@ +fileFormatVersion: 2 +guid: 876d47a520ae34f81a97792e1afed14b +timeCreated: 1489734081 +licenseType: Pro +MonoImporter: + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.analytics@3.2.2/Tests/Editor/Unity.Analytics.StandardEvents/LevelUpTests.cs" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.analytics@3.2.2/Tests/Editor/Unity.Analytics.StandardEvents/LevelUpTests.cs" new file mode 100644 index 00000000..96578a71 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.analytics@3.2.2/Tests/Editor/Unity.Analytics.StandardEvents/LevelUpTests.cs" @@ -0,0 +1,58 @@ +using System; +using NUnit.Framework; + +namespace UnityEngine.Analytics.Tests +{ + public partial class AnalyticsEventTests + { + [Test] + public void LevelUp_LevelIndexTest( + [Values(0, 1, 2)] int newLevelIndex + ) + { + Assert.DoesNotThrow(() => m_Result = AnalyticsEvent.LevelUp(newLevelIndex)); + EvaluateAnalyticsResult(m_Result); + } + + [Test] + public void LevelUp_LevelNameTest( + [Values("new_test_level", "", null)] string newLevelName + ) + { + if (string.IsNullOrEmpty(newLevelName)) + { + Assert.Throws(() => AnalyticsEvent.LevelUp(newLevelName)); + } + else + { + Assert.DoesNotThrow(() => m_Result = AnalyticsEvent.LevelUp(newLevelName)); + EvaluateAnalyticsResult(m_Result); + } + } + + // [Test] + // public void LevelUp_LevelIndex_LevelNameTest ( + // [Values(1)] int newLevelIndex, + // [Values("new_test_level", "", null)] string newLevelName + // ) + // { + // Assert.DoesNotThrow(() => m_Result = AnalyticsEvent.LevelUp(newLevelIndex, newLevelName)); + // EvaluateAnalyticsResult(m_Result); + // } + + [Test] + public void LevelUp_CustomDataTest() + { + var newLevelIndex = 1; + var newLevelName = "new_test_level"; + + Assert.DoesNotThrow(() => m_Result = AnalyticsEvent.LevelUp(newLevelName, m_CustomData)); + EvaluateCustomData(m_CustomData); + EvaluateAnalyticsResult(m_Result); + + Assert.DoesNotThrow(() => m_Result = AnalyticsEvent.LevelUp(newLevelIndex, m_CustomData)); + EvaluateCustomData(m_CustomData); + EvaluateAnalyticsResult(m_Result); + } + } +} diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.analytics@3.2.2/Tests/Editor/Unity.Analytics.StandardEvents/LevelUpTests.cs.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.analytics@3.2.2/Tests/Editor/Unity.Analytics.StandardEvents/LevelUpTests.cs.meta" new file mode 100644 index 00000000..1d650da1 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.analytics@3.2.2/Tests/Editor/Unity.Analytics.StandardEvents/LevelUpTests.cs.meta" @@ -0,0 +1,12 @@ +fileFormatVersion: 2 +guid: b0bb2afc5cd494e6f9b44455a0fc22f8 +timeCreated: 1489734081 +licenseType: Pro +MonoImporter: + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.analytics@3.2.2/Tests/Editor/Unity.Analytics.StandardEvents/PostAdActionTests.cs" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.analytics@3.2.2/Tests/Editor/Unity.Analytics.StandardEvents/PostAdActionTests.cs" new file mode 100644 index 00000000..80ffa6df --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.analytics@3.2.2/Tests/Editor/Unity.Analytics.StandardEvents/PostAdActionTests.cs" @@ -0,0 +1,62 @@ +using NUnit.Framework; + +namespace UnityEngine.Analytics.Tests +{ + public partial class AnalyticsEventTests + { + [Test] + public void PostAdAction_RewardedTest( + [Values(true, false)] bool rewarded + ) + { + Assert.DoesNotThrow(() => m_Result = AnalyticsEvent.PostAdAction(rewarded)); + EvaluateAnalyticsResult(m_Result); + } + + [Test] + public void PostAdAction_NetworkStringTest( + [Values("unityads", "", null)] string network + ) + { + var rewarded = true; + + Assert.DoesNotThrow(() => m_Result = AnalyticsEvent.PostAdAction(rewarded, network)); + EvaluateAnalyticsResult(m_Result); + } + + [Test] + public void PostAdAction_NetworkEnumTest( + [Values(AdvertisingNetwork.UnityAds, AdvertisingNetwork.None)] AdvertisingNetwork network + ) + { + var rewarded = true; + + Assert.DoesNotThrow(() => m_Result = AnalyticsEvent.PostAdAction(rewarded, network)); + EvaluateAnalyticsResult(m_Result); + } + + [Test] + public void PostAdAction_PlacementIdTest( + [Values("rewardedVideo", "", null)] string placementId + ) + { + var rewarded = true; + var network = AdvertisingNetwork.UnityAds; + + Assert.DoesNotThrow(() => m_Result = AnalyticsEvent.PostAdAction(rewarded, network, placementId)); + EvaluateAnalyticsResult(m_Result); + } + + [Test] + public void PostAdAction_CustomDataTest() + { + var rewarded = true; + var network = AdvertisingNetwork.UnityAds; + var placementId = "rewardedVideo"; + + Assert.DoesNotThrow(() => m_Result = AnalyticsEvent.PostAdAction(rewarded, network, placementId, m_CustomData)); + EvaluateCustomData(m_CustomData); + EvaluateAnalyticsResult(m_Result); + } + } +} diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.analytics@3.2.2/Tests/Editor/Unity.Analytics.StandardEvents/PostAdActionTests.cs.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.analytics@3.2.2/Tests/Editor/Unity.Analytics.StandardEvents/PostAdActionTests.cs.meta" new file mode 100644 index 00000000..405d0119 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.analytics@3.2.2/Tests/Editor/Unity.Analytics.StandardEvents/PostAdActionTests.cs.meta" @@ -0,0 +1,12 @@ +fileFormatVersion: 2 +guid: 293182c4d29604c05b6724ae00fd121a +timeCreated: 1489734081 +licenseType: Pro +MonoImporter: + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.analytics@3.2.2/Tests/Editor/Unity.Analytics.StandardEvents/PushNotificationClickTests.cs" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.analytics@3.2.2/Tests/Editor/Unity.Analytics.StandardEvents/PushNotificationClickTests.cs" new file mode 100644 index 00000000..5923cedd --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.analytics@3.2.2/Tests/Editor/Unity.Analytics.StandardEvents/PushNotificationClickTests.cs" @@ -0,0 +1,34 @@ +using System; +using NUnit.Framework; + +namespace UnityEngine.Analytics.Tests +{ + public partial class AnalyticsEventTests + { + [Test] + public void PushNotificationClick_MessageIdTest( + [Values("test_message", "", null)] string messageId + ) + { + if (string.IsNullOrEmpty(messageId)) + { + Assert.Throws(() => AnalyticsEvent.PushNotificationClick(messageId)); + } + else + { + Assert.DoesNotThrow(() => m_Result = AnalyticsEvent.PushNotificationClick(messageId)); + EvaluateAnalyticsResult(m_Result); + } + } + + [Test] + public void PushNotificationClick_CustomDataTest() + { + var messageId = "test_message"; + + Assert.DoesNotThrow(() => m_Result = AnalyticsEvent.PushNotificationClick(messageId, m_CustomData)); + EvaluateCustomData(m_CustomData); + EvaluateAnalyticsResult(m_Result); + } + } +} diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.analytics@3.2.2/Tests/Editor/Unity.Analytics.StandardEvents/PushNotificationClickTests.cs.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.analytics@3.2.2/Tests/Editor/Unity.Analytics.StandardEvents/PushNotificationClickTests.cs.meta" new file mode 100644 index 00000000..1ee5e1f9 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.analytics@3.2.2/Tests/Editor/Unity.Analytics.StandardEvents/PushNotificationClickTests.cs.meta" @@ -0,0 +1,12 @@ +fileFormatVersion: 2 +guid: 240551e3142f04b0ca801ce8eb645ba2 +timeCreated: 1489734081 +licenseType: Pro +MonoImporter: + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.analytics@3.2.2/Tests/Editor/Unity.Analytics.StandardEvents/PushNotificationEnableTests.cs" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.analytics@3.2.2/Tests/Editor/Unity.Analytics.StandardEvents/PushNotificationEnableTests.cs" new file mode 100644 index 00000000..2e842bdc --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.analytics@3.2.2/Tests/Editor/Unity.Analytics.StandardEvents/PushNotificationEnableTests.cs" @@ -0,0 +1,22 @@ +using NUnit.Framework; + +namespace UnityEngine.Analytics.Tests +{ + public partial class AnalyticsEventTests + { + [Test] + public void PushNotificationEnable_NoArgsTest() + { + Assert.DoesNotThrow(() => m_Result = AnalyticsEvent.PushNotificationEnable()); + EvaluateAnalyticsResult(m_Result); + } + + [Test] + public void PushNotificationEnable_CustomDataTest() + { + Assert.DoesNotThrow(() => m_Result = AnalyticsEvent.PushNotificationEnable(m_CustomData)); + EvaluateCustomData(m_CustomData); + EvaluateAnalyticsResult(m_Result); + } + } +} diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.analytics@3.2.2/Tests/Editor/Unity.Analytics.StandardEvents/PushNotificationEnableTests.cs.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.analytics@3.2.2/Tests/Editor/Unity.Analytics.StandardEvents/PushNotificationEnableTests.cs.meta" new file mode 100644 index 00000000..285653d9 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.analytics@3.2.2/Tests/Editor/Unity.Analytics.StandardEvents/PushNotificationEnableTests.cs.meta" @@ -0,0 +1,12 @@ +fileFormatVersion: 2 +guid: a10564aae782c458cbf1de024f4870f7 +timeCreated: 1489734081 +licenseType: Pro +MonoImporter: + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.analytics@3.2.2/Tests/Editor/Unity.Analytics.StandardEvents/ScreenVisitTests.cs" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.analytics@3.2.2/Tests/Editor/Unity.Analytics.StandardEvents/ScreenVisitTests.cs" new file mode 100644 index 00000000..97a60fcc --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.analytics@3.2.2/Tests/Editor/Unity.Analytics.StandardEvents/ScreenVisitTests.cs" @@ -0,0 +1,43 @@ +using System; +using NUnit.Framework; + +namespace UnityEngine.Analytics.Tests +{ + public partial class AnalyticsEventTests + { + [Test] + public void ScreenVisit_ScreenNameStringTest( + [Values("test_screen", "", null)] string screenName + ) + { + if (string.IsNullOrEmpty(screenName)) + { + Assert.Throws(() => AnalyticsEvent.ScreenVisit(screenName)); + } + else + { + Assert.DoesNotThrow(() => m_Result = AnalyticsEvent.ScreenVisit(screenName)); + EvaluateAnalyticsResult(m_Result); + } + } + + [Test] + public void ScreenVisit_ScreenNameEnumTest( + [Values(ScreenName.CrossPromo, ScreenName.IAPPromo, ScreenName.None)] ScreenName screenName + ) + { + Assert.DoesNotThrow(() => m_Result = AnalyticsEvent.ScreenVisit(screenName)); + EvaluateAnalyticsResult(m_Result); + } + + [Test] + public void ScreenVisit_CustomDataTest() + { + var screenName = ScreenName.MainMenu; + + Assert.DoesNotThrow(() => m_Result = AnalyticsEvent.ScreenVisit(screenName, m_CustomData)); + EvaluateCustomData(m_CustomData); + EvaluateAnalyticsResult(m_Result); + } + } +} diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.analytics@3.2.2/Tests/Editor/Unity.Analytics.StandardEvents/ScreenVisitTests.cs.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.analytics@3.2.2/Tests/Editor/Unity.Analytics.StandardEvents/ScreenVisitTests.cs.meta" new file mode 100644 index 00000000..6327d182 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.analytics@3.2.2/Tests/Editor/Unity.Analytics.StandardEvents/ScreenVisitTests.cs.meta" @@ -0,0 +1,12 @@ +fileFormatVersion: 2 +guid: 768d77435df35443bad74aedc993c0cf +timeCreated: 1489734081 +licenseType: Pro +MonoImporter: + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.analytics@3.2.2/Tests/Editor/Unity.Analytics.StandardEvents/SocialShareAcceptTests.cs" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.analytics@3.2.2/Tests/Editor/Unity.Analytics.StandardEvents/SocialShareAcceptTests.cs" new file mode 100644 index 00000000..7cb38a1d --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.analytics@3.2.2/Tests/Editor/Unity.Analytics.StandardEvents/SocialShareAcceptTests.cs" @@ -0,0 +1,110 @@ +using System; +using NUnit.Framework; + +namespace UnityEngine.Analytics.Tests +{ + public partial class AnalyticsEventTests + { + [Test] + public void SocialShareAccept_ShareTypeStringTest( + [Values("test_share", "", null)] string shareType + ) + { + var socialNetwork = SocialNetwork.Facebook; + + if (string.IsNullOrEmpty(shareType)) + { + Assert.Throws(() => AnalyticsEvent.SocialShare(shareType, socialNetwork)); + } + else + { + Assert.DoesNotThrow(() => m_Result = AnalyticsEvent.SocialShareAccept(shareType, socialNetwork)); + EvaluateAnalyticsResult(m_Result); + } + } + + [Test] + public void SocialShareAccept_ShareTypeEnumTest( + [Values(ShareType.TextOnly, ShareType.Image, ShareType.None)] ShareType shareType + ) + { + var socialNetwork = SocialNetwork.Twitter; + + Assert.DoesNotThrow(() => m_Result = AnalyticsEvent.SocialShareAccept(shareType, socialNetwork)); + EvaluateAnalyticsResult(m_Result); + } + + [Test] + public void SocialShareAccept_SocialNetworkStringTest( + [Values("test_network", "", null)] string socialNetwork + ) + { + var shareType = ShareType.Image; + + if (string.IsNullOrEmpty(socialNetwork)) + { + Assert.Throws(() => AnalyticsEvent.SocialShare(shareType, socialNetwork)); + } + else + { + Assert.DoesNotThrow(() => m_Result = AnalyticsEvent.SocialShareAccept(shareType, socialNetwork)); + EvaluateAnalyticsResult(m_Result); + } + } + + [Test] + public void SocialShareAccept_SocialNetworkEnumTest( + [Values(SocialNetwork.GooglePlus, SocialNetwork.OK_ru, SocialNetwork.None)] SocialNetwork socialNetwork + ) + { + var shareType = ShareType.Video; + + Assert.DoesNotThrow(() => m_Result = AnalyticsEvent.SocialShareAccept(shareType, socialNetwork)); + EvaluateAnalyticsResult(m_Result); + } + + [Test] + public void SocialShareAccept_SenderIdTest( + [Values("test_sender", "", null)] string senderId + ) + { + var shareType = ShareType.TextOnly; + var socialNetwork = SocialNetwork.Twitter; + + Assert.DoesNotThrow( + () => m_Result = AnalyticsEvent.SocialShareAccept(shareType, socialNetwork, senderId) + ); + EvaluateAnalyticsResult(m_Result); + } + + [Test] + public void SocialShareAccept_RecipientIdTest( + [Values("test_recipient", "", null)] string recipientId + ) + { + var shareType = ShareType.TextOnly; + var socialNetwork = SocialNetwork.Twitter; + var senderId = "test_sender"; + + Assert.DoesNotThrow( + () => m_Result = AnalyticsEvent.SocialShareAccept(shareType, socialNetwork, senderId, recipientId) + ); + EvaluateAnalyticsResult(m_Result); + } + + [Test] + public void SocialShareAccept_CustomDataTest() + { + var shareType = ShareType.TextOnly; + var socialNetwork = SocialNetwork.Twitter; + var senderId = "test_sender"; + var recipientId = "test_recipient"; + + Assert.DoesNotThrow( + () => m_Result = AnalyticsEvent.SocialShareAccept(shareType, socialNetwork, senderId, recipientId, m_CustomData) + ); + EvaluateCustomData(m_CustomData); + EvaluateAnalyticsResult(m_Result); + } + } +} diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.analytics@3.2.2/Tests/Editor/Unity.Analytics.StandardEvents/SocialShareAcceptTests.cs.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.analytics@3.2.2/Tests/Editor/Unity.Analytics.StandardEvents/SocialShareAcceptTests.cs.meta" new file mode 100644 index 00000000..e491cf29 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.analytics@3.2.2/Tests/Editor/Unity.Analytics.StandardEvents/SocialShareAcceptTests.cs.meta" @@ -0,0 +1,12 @@ +fileFormatVersion: 2 +guid: 138961c4434d141a987d96df1f8d7342 +timeCreated: 1492896446 +licenseType: Pro +MonoImporter: + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.analytics@3.2.2/Tests/Editor/Unity.Analytics.StandardEvents/SocialShareTests.cs" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.analytics@3.2.2/Tests/Editor/Unity.Analytics.StandardEvents/SocialShareTests.cs" new file mode 100644 index 00000000..0809d04a --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.analytics@3.2.2/Tests/Editor/Unity.Analytics.StandardEvents/SocialShareTests.cs" @@ -0,0 +1,110 @@ +using System; +using NUnit.Framework; + +namespace UnityEngine.Analytics.Tests +{ + public partial class AnalyticsEventTests + { + [Test] + public void SocialShare_ShareTypeStringTest( + [Values("test_share", "", null)] string shareType + ) + { + var socialNetwork = SocialNetwork.Facebook; + + if (string.IsNullOrEmpty(shareType)) + { + Assert.Throws(() => AnalyticsEvent.SocialShare(shareType, socialNetwork)); + } + else + { + Assert.DoesNotThrow(() => m_Result = AnalyticsEvent.SocialShare(shareType, socialNetwork)); + EvaluateAnalyticsResult(m_Result); + } + } + + [Test] + public void SocialShare_ShareTypeEnumTest( + [Values(ShareType.TextOnly, ShareType.Image, ShareType.None)] ShareType shareType + ) + { + var socialNetwork = SocialNetwork.Twitter; + + Assert.DoesNotThrow(() => m_Result = AnalyticsEvent.SocialShare(shareType, socialNetwork)); + EvaluateAnalyticsResult(m_Result); + } + + [Test] + public void SocialShare_SocialNetworkStringTest( + [Values("test_network", "", null)] string socialNetwork + ) + { + var shareType = ShareType.Image; + + if (string.IsNullOrEmpty(socialNetwork)) + { + Assert.Throws(() => AnalyticsEvent.SocialShare(shareType, socialNetwork)); + } + else + { + Assert.DoesNotThrow(() => m_Result = AnalyticsEvent.SocialShare(shareType, socialNetwork)); + EvaluateAnalyticsResult(m_Result); + } + } + + [Test] + public void SocialShare_SocialNetworkEnumTest( + [Values(SocialNetwork.GooglePlus, SocialNetwork.OK_ru, SocialNetwork.None)] SocialNetwork socialNetwork + ) + { + var shareType = ShareType.Video; + + Assert.DoesNotThrow(() => m_Result = AnalyticsEvent.SocialShare(shareType, socialNetwork)); + EvaluateAnalyticsResult(m_Result); + } + + [Test] + public void SocialShare_SenderIdTest( + [Values("test_sender", "", null)] string senderId + ) + { + var shareType = ShareType.TextOnly; + var socialNetwork = SocialNetwork.Twitter; + + Assert.DoesNotThrow( + () => m_Result = AnalyticsEvent.SocialShare(shareType, socialNetwork, senderId) + ); + EvaluateAnalyticsResult(m_Result); + } + + [Test] + public void SocialShare_RecipientIdTest( + [Values("test_recipient", "", null)] string recipientId + ) + { + var shareType = ShareType.TextOnly; + var socialNetwork = SocialNetwork.Twitter; + var senderId = "test_sender"; + + Assert.DoesNotThrow( + () => m_Result = AnalyticsEvent.SocialShare(shareType, socialNetwork, senderId, recipientId) + ); + EvaluateAnalyticsResult(m_Result); + } + + [Test] + public void SocialShare_CustomDataTest() + { + var shareType = ShareType.TextOnly; + var socialNetwork = SocialNetwork.Twitter; + var senderId = "test_sender"; + var recipientId = "test_recipient"; + + Assert.DoesNotThrow( + () => m_Result = AnalyticsEvent.SocialShare(shareType, socialNetwork, senderId, recipientId, m_CustomData) + ); + EvaluateCustomData(m_CustomData); + EvaluateAnalyticsResult(m_Result); + } + } +} diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.analytics@3.2.2/Tests/Editor/Unity.Analytics.StandardEvents/SocialShareTests.cs.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.analytics@3.2.2/Tests/Editor/Unity.Analytics.StandardEvents/SocialShareTests.cs.meta" new file mode 100644 index 00000000..bc9978d3 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.analytics@3.2.2/Tests/Editor/Unity.Analytics.StandardEvents/SocialShareTests.cs.meta" @@ -0,0 +1,12 @@ +fileFormatVersion: 2 +guid: 811f7f1f5920641c0a9233503492c9ba +timeCreated: 1489734081 +licenseType: Pro +MonoImporter: + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.analytics@3.2.2/Tests/Editor/Unity.Analytics.StandardEvents/StoreItemClickTests.cs" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.analytics@3.2.2/Tests/Editor/Unity.Analytics.StandardEvents/StoreItemClickTests.cs" new file mode 100644 index 00000000..367a4599 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.analytics@3.2.2/Tests/Editor/Unity.Analytics.StandardEvents/StoreItemClickTests.cs" @@ -0,0 +1,75 @@ +using System; +using NUnit.Framework; + +namespace UnityEngine.Analytics.Tests +{ + public partial class AnalyticsEventTests + { + [Test] + public void StoreItemClick_StoreTypeTest( + [Values(StoreType.Premium, StoreType.Soft)] StoreType storeType + ) + { + var itemId = "test_item"; + + Assert.DoesNotThrow(() => m_Result = AnalyticsEvent.StoreItemClick(storeType, itemId)); + EvaluateAnalyticsResult(m_Result); + } + + [Test] + public void StoreItemClick_ItemIdTest( + [Values("test_item", "", null)] string itemId + ) + { + var storeType = StoreType.Soft; + + if (string.IsNullOrEmpty(itemId)) + { + Assert.Throws(() => AnalyticsEvent.StoreItemClick(storeType, itemId)); + } + else + { + Assert.DoesNotThrow(() => m_Result = AnalyticsEvent.StoreItemClick(storeType, itemId)); + EvaluateAnalyticsResult(m_Result); + } + } + + [Test] + public void StoreItemClick_ItemId_ItemNameTest( + [Values("test_item_id", "", null)] string itemId, + [Values("Test Item Name", "", null)] string itemName + ) + { + var storeType = StoreType.Soft; + + if (string.IsNullOrEmpty(itemId) && string.IsNullOrEmpty(itemName)) + { + Assert.Throws(() => AnalyticsEvent.StoreItemClick(storeType, itemId)); + } + else + { + if (string.IsNullOrEmpty(itemId)) + { + Assert.Throws(() => AnalyticsEvent.StoreItemClick(storeType, itemId)); + } + else + { + Assert.DoesNotThrow(() => m_Result = AnalyticsEvent.StoreItemClick(storeType, itemId, itemName)); + EvaluateAnalyticsResult(m_Result); + } + } + } + + [Test] + public void StoreItemClick_CustomDataTest() + { + var storeType = StoreType.Soft; + var itemId = "test_item"; + var itemName = "Test Item"; + + Assert.DoesNotThrow(() => m_Result = AnalyticsEvent.StoreItemClick(storeType, itemId, itemName, m_CustomData)); + EvaluateCustomData(m_CustomData); + EvaluateAnalyticsResult(m_Result); + } + } +} diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.analytics@3.2.2/Tests/Editor/Unity.Analytics.StandardEvents/StoreItemClickTests.cs.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.analytics@3.2.2/Tests/Editor/Unity.Analytics.StandardEvents/StoreItemClickTests.cs.meta" new file mode 100644 index 00000000..182b9d1d --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.analytics@3.2.2/Tests/Editor/Unity.Analytics.StandardEvents/StoreItemClickTests.cs.meta" @@ -0,0 +1,12 @@ +fileFormatVersion: 2 +guid: c786248494be6489bbfa006bdf59c773 +timeCreated: 1489734081 +licenseType: Pro +MonoImporter: + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.analytics@3.2.2/Tests/Editor/Unity.Analytics.StandardEvents/StoreOpenedTests.cs" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.analytics@3.2.2/Tests/Editor/Unity.Analytics.StandardEvents/StoreOpenedTests.cs" new file mode 100644 index 00000000..48918872 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.analytics@3.2.2/Tests/Editor/Unity.Analytics.StandardEvents/StoreOpenedTests.cs" @@ -0,0 +1,27 @@ +using System.Collections.Generic; +using NUnit.Framework; + +namespace UnityEngine.Analytics.Tests +{ + public partial class AnalyticsEventTests + { + [Test] + public void StoreOpened_StoreTypeTest( + [Values(StoreType.Premium, StoreType.Soft)] StoreType storeType + ) + { + Assert.DoesNotThrow(() => m_Result = AnalyticsEvent.StoreOpened(storeType)); + EvaluateAnalyticsResult(m_Result); + } + + [Test] + public void StoreOpened_CustomDataTest() + { + var storeType = StoreType.Soft; + + Assert.DoesNotThrow(() => m_Result = AnalyticsEvent.StoreOpened(storeType, m_CustomData)); + EvaluateCustomData(m_CustomData); + EvaluateAnalyticsResult(m_Result); + } + } +} diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.analytics@3.2.2/Tests/Editor/Unity.Analytics.StandardEvents/StoreOpenedTests.cs.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.analytics@3.2.2/Tests/Editor/Unity.Analytics.StandardEvents/StoreOpenedTests.cs.meta" new file mode 100644 index 00000000..65bf4722 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.analytics@3.2.2/Tests/Editor/Unity.Analytics.StandardEvents/StoreOpenedTests.cs.meta" @@ -0,0 +1,12 @@ +fileFormatVersion: 2 +guid: f4c7193663918411c8f78e3cf844cb9e +timeCreated: 1489734081 +licenseType: Pro +MonoImporter: + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.analytics@3.2.2/Tests/Editor/Unity.Analytics.StandardEvents/TutorialCompleteTests.cs" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.analytics@3.2.2/Tests/Editor/Unity.Analytics.StandardEvents/TutorialCompleteTests.cs" new file mode 100644 index 00000000..3e166af2 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.analytics@3.2.2/Tests/Editor/Unity.Analytics.StandardEvents/TutorialCompleteTests.cs" @@ -0,0 +1,26 @@ +using NUnit.Framework; + +namespace UnityEngine.Analytics.Tests +{ + public partial class AnalyticsEventTests + { + [Test] + public void TutorialComplete_TutorialIdTest( + [Values("test_tutorial", "", null)] string tutorialId + ) + { + Assert.DoesNotThrow(() => m_Result = AnalyticsEvent.TutorialComplete(tutorialId)); + EvaluateAnalyticsResult(m_Result); + } + + [Test] + public void TutorialComplete_CustomDataTest() + { + var tutorialId = "test_tutorial"; + + Assert.DoesNotThrow(() => m_Result = AnalyticsEvent.TutorialComplete(tutorialId, m_CustomData)); + EvaluateCustomData(m_CustomData); + EvaluateAnalyticsResult(m_Result); + } + } +} diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.analytics@3.2.2/Tests/Editor/Unity.Analytics.StandardEvents/TutorialCompleteTests.cs.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.analytics@3.2.2/Tests/Editor/Unity.Analytics.StandardEvents/TutorialCompleteTests.cs.meta" new file mode 100644 index 00000000..b2067fea --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.analytics@3.2.2/Tests/Editor/Unity.Analytics.StandardEvents/TutorialCompleteTests.cs.meta" @@ -0,0 +1,12 @@ +fileFormatVersion: 2 +guid: b025f6f8a47be46418bcb0ed1050cfb4 +timeCreated: 1489734081 +licenseType: Pro +MonoImporter: + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.analytics@3.2.2/Tests/Editor/Unity.Analytics.StandardEvents/TutorialSkipTests.cs" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.analytics@3.2.2/Tests/Editor/Unity.Analytics.StandardEvents/TutorialSkipTests.cs" new file mode 100644 index 00000000..9b413eda --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.analytics@3.2.2/Tests/Editor/Unity.Analytics.StandardEvents/TutorialSkipTests.cs" @@ -0,0 +1,26 @@ +using NUnit.Framework; + +namespace UnityEngine.Analytics.Tests +{ + public partial class AnalyticsEventTests + { + [Test] + public void TutorialSkip_TutorialIdTest( + [Values("test_tutorial", "", null)] string tutorialId + ) + { + Assert.DoesNotThrow(() => m_Result = AnalyticsEvent.TutorialSkip(tutorialId)); + EvaluateAnalyticsResult(m_Result); + } + + [Test] + public void TutorialSkip_CustomDataTest() + { + var tutorialId = "test_tutorial"; + + Assert.DoesNotThrow(() => m_Result = AnalyticsEvent.TutorialSkip(tutorialId, m_CustomData)); + EvaluateCustomData(m_CustomData); + EvaluateAnalyticsResult(m_Result); + } + } +} diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.analytics@3.2.2/Tests/Editor/Unity.Analytics.StandardEvents/TutorialSkipTests.cs.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.analytics@3.2.2/Tests/Editor/Unity.Analytics.StandardEvents/TutorialSkipTests.cs.meta" new file mode 100644 index 00000000..b700e0ed --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.analytics@3.2.2/Tests/Editor/Unity.Analytics.StandardEvents/TutorialSkipTests.cs.meta" @@ -0,0 +1,12 @@ +fileFormatVersion: 2 +guid: 3ab6e6972ecb54e2cbd505692415a7ba +timeCreated: 1489734081 +licenseType: Pro +MonoImporter: + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.analytics@3.2.2/Tests/Editor/Unity.Analytics.StandardEvents/TutorialStartTests.cs" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.analytics@3.2.2/Tests/Editor/Unity.Analytics.StandardEvents/TutorialStartTests.cs" new file mode 100644 index 00000000..425f2773 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.analytics@3.2.2/Tests/Editor/Unity.Analytics.StandardEvents/TutorialStartTests.cs" @@ -0,0 +1,26 @@ +using NUnit.Framework; + +namespace UnityEngine.Analytics.Tests +{ + public partial class AnalyticsEventTests + { + [Test] + public void TutorialStart_TutorialIdTest( + [Values("test_tutorial", "", null)] string tutorialId + ) + { + Assert.DoesNotThrow(() => m_Result = AnalyticsEvent.TutorialStart(tutorialId)); + EvaluateAnalyticsResult(m_Result); + } + + [Test] + public void TutorialStart_CustomDataTest() + { + var tutorialId = "test_tutorial"; + + Assert.DoesNotThrow(() => m_Result = AnalyticsEvent.TutorialStart(tutorialId, m_CustomData)); + EvaluateCustomData(m_CustomData); + EvaluateAnalyticsResult(m_Result); + } + } +} diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.analytics@3.2.2/Tests/Editor/Unity.Analytics.StandardEvents/TutorialStartTests.cs.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.analytics@3.2.2/Tests/Editor/Unity.Analytics.StandardEvents/TutorialStartTests.cs.meta" new file mode 100644 index 00000000..bfa7a294 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.analytics@3.2.2/Tests/Editor/Unity.Analytics.StandardEvents/TutorialStartTests.cs.meta" @@ -0,0 +1,12 @@ +fileFormatVersion: 2 +guid: 2622838afa3284cc882c48ceea4c8220 +timeCreated: 1489734081 +licenseType: Pro +MonoImporter: + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.analytics@3.2.2/Tests/Editor/Unity.Analytics.StandardEvents/TutorialStepTests.cs" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.analytics@3.2.2/Tests/Editor/Unity.Analytics.StandardEvents/TutorialStepTests.cs" new file mode 100644 index 00000000..524d8195 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.analytics@3.2.2/Tests/Editor/Unity.Analytics.StandardEvents/TutorialStepTests.cs" @@ -0,0 +1,39 @@ +using System; +using NUnit.Framework; + +namespace UnityEngine.Analytics.Tests +{ + public partial class AnalyticsEventTests + { + [Test] + public void TutorialStep_StepIndexTest( + [Values(-1, 0, 1)] int stepIndex + ) + { + Assert.DoesNotThrow(() => m_Result = AnalyticsEvent.TutorialStep(stepIndex)); + EvaluateAnalyticsResult(m_Result); + } + + [Test] + public void TutorialStep_TutorialIdTest( + [Values("test_tutorial", "", null)] string tutorialId + ) + { + var stepIndex = 0; + + Assert.DoesNotThrow(() => m_Result = AnalyticsEvent.TutorialStep(stepIndex, tutorialId)); + EvaluateAnalyticsResult(m_Result); + } + + [Test] + public void TutorialStep_CustomDataTest() + { + var stepIndex = 0; + var tutorialId = "test_tutorial"; + + Assert.DoesNotThrow(() => m_Result = AnalyticsEvent.TutorialStep(stepIndex, tutorialId, m_CustomData)); + EvaluateCustomData(m_CustomData); + EvaluateAnalyticsResult(m_Result); + } + } +} diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.analytics@3.2.2/Tests/Editor/Unity.Analytics.StandardEvents/TutorialStepTests.cs.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.analytics@3.2.2/Tests/Editor/Unity.Analytics.StandardEvents/TutorialStepTests.cs.meta" new file mode 100644 index 00000000..54ebcfa2 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.analytics@3.2.2/Tests/Editor/Unity.Analytics.StandardEvents/TutorialStepTests.cs.meta" @@ -0,0 +1,12 @@ +fileFormatVersion: 2 +guid: a571de1bea3cb4c9784493c6f1b0b76c +timeCreated: 1489734081 +licenseType: Pro +MonoImporter: + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.analytics@3.2.2/Tests/Editor/Unity.Analytics.StandardEvents/Unity.Analytics.StandardEvents.EditorTests.asmdef" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.analytics@3.2.2/Tests/Editor/Unity.Analytics.StandardEvents/Unity.Analytics.StandardEvents.EditorTests.asmdef" new file mode 100644 index 00000000..eeceedd8 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.analytics@3.2.2/Tests/Editor/Unity.Analytics.StandardEvents/Unity.Analytics.StandardEvents.EditorTests.asmdef" @@ -0,0 +1,12 @@ +{ + "name": "Unity.Analytics.StandardEvents.EditorTests", + "references": [], + "optionalUnityReferences": [ + "TestAssemblies" + ], + "includePlatforms": [ + "Editor" + ], + "excludePlatforms": [], + "allowUnsafeCode": false +} \ No newline at end of file diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.analytics@3.2.2/Tests/Editor/Unity.Analytics.StandardEvents/Unity.Analytics.StandardEvents.EditorTests.asmdef.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.analytics@3.2.2/Tests/Editor/Unity.Analytics.StandardEvents/Unity.Analytics.StandardEvents.EditorTests.asmdef.meta" new file mode 100644 index 00000000..074fd474 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.analytics@3.2.2/Tests/Editor/Unity.Analytics.StandardEvents/Unity.Analytics.StandardEvents.EditorTests.asmdef.meta" @@ -0,0 +1,7 @@ +fileFormatVersion: 2 +guid: adee0c1377ef8b2489060e152dd0d119 +AssemblyDefinitionImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.analytics@3.2.2/Tests/Editor/Unity.Analytics.StandardEvents/UserSignupTests.cs" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.analytics@3.2.2/Tests/Editor/Unity.Analytics.StandardEvents/UserSignupTests.cs" new file mode 100644 index 00000000..56920a63 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.analytics@3.2.2/Tests/Editor/Unity.Analytics.StandardEvents/UserSignupTests.cs" @@ -0,0 +1,43 @@ +using System; +using NUnit.Framework; + +namespace UnityEngine.Analytics.Tests +{ + public partial class AnalyticsEventTests + { + [Test] + public void UserSignup_AuthorizationNetworkStringTest( + [Values("test_network", "", null)] string network + ) + { + if (string.IsNullOrEmpty(network)) + { + Assert.Throws(() => AnalyticsEvent.UserSignup(network)); + } + else + { + Assert.DoesNotThrow(() => m_Result = AnalyticsEvent.UserSignup(network)); + EvaluateAnalyticsResult(m_Result); + } + } + + [Test] + public void UserSignup_AuthorizationNetworkEnumTest( + [Values(AuthorizationNetwork.Facebook, AuthorizationNetwork.GameCenter, AuthorizationNetwork.None)] AuthorizationNetwork network + ) + { + Assert.DoesNotThrow(() => m_Result = AnalyticsEvent.UserSignup(network)); + EvaluateAnalyticsResult(m_Result); + } + + [Test] + public void UserSignup_CustomDataTest() + { + var network = AuthorizationNetwork.Internal; + + Assert.DoesNotThrow(() => m_Result = AnalyticsEvent.UserSignup(network, m_CustomData)); + EvaluateCustomData(m_CustomData); + EvaluateAnalyticsResult(m_Result); + } + } +} diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.analytics@3.2.2/Tests/Editor/Unity.Analytics.StandardEvents/UserSignupTests.cs.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.analytics@3.2.2/Tests/Editor/Unity.Analytics.StandardEvents/UserSignupTests.cs.meta" new file mode 100644 index 00000000..3441ed8b --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.analytics@3.2.2/Tests/Editor/Unity.Analytics.StandardEvents/UserSignupTests.cs.meta" @@ -0,0 +1,12 @@ +fileFormatVersion: 2 +guid: 8b0f0c8689876421c90e7b60f096325a +timeCreated: 1489734081 +licenseType: Pro +MonoImporter: + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.analytics@3.2.2/Tests/Runtime.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.analytics@3.2.2/Tests/Runtime.meta" new file mode 100644 index 00000000..a17b3d13 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.analytics@3.2.2/Tests/Runtime.meta" @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 4f5362359d4548b44a34a45f19efb4bf +folderAsset: yes +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.analytics@3.2.2/Tests/Runtime/DataPrivacy.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.analytics@3.2.2/Tests/Runtime/DataPrivacy.meta" new file mode 100644 index 00000000..279b827c --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.analytics@3.2.2/Tests/Runtime/DataPrivacy.meta" @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: f2233ba26b028cc4b9e58681e7a22dac +folderAsset: yes +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.analytics@3.2.2/Tests/Runtime/DataPrivacy/JsonSerialization.cs" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.analytics@3.2.2/Tests/Runtime/DataPrivacy/JsonSerialization.cs" new file mode 100644 index 00000000..921976a5 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.analytics@3.2.2/Tests/Runtime/DataPrivacy/JsonSerialization.cs" @@ -0,0 +1,24 @@ +using System; +using NUnit.Framework; +using UnityEngine; +using UnityEngine.Analytics; + +public class JsonSerialization +{ + // This test was create to verifiy JsonUtility could properly deserialize the nested + // structs used for opt-out status. That process is now handled with remote config so + // now we just verify that the expected response from the token API can be deserialized. + + const string kTokenJson = "{" + + "\"url\": \"https://analytics.cloud.unity3d.com/optout?token=24a96770b5c4420a4f930dbb4b72fbb83erfg3edf3ert4r1/\"," + + "\"token\": \"24a96770b5c4420a4f930dbb4b72fbb83erfg3edf3ert4r1\"" + + "}"; + + [Test] + public void TestTokenStruct_JsonUtility() + { + var tokenData = JsonUtility.FromJson(kTokenJson); + Assert.AreEqual("https://analytics.cloud.unity3d.com/optout?token=24a96770b5c4420a4f930dbb4b72fbb83erfg3edf3ert4r1/", tokenData.url); + Assert.AreEqual("24a96770b5c4420a4f930dbb4b72fbb83erfg3edf3ert4r1", tokenData.token); + } +} diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.analytics@3.2.2/Tests/Runtime/DataPrivacy/JsonSerialization.cs.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.analytics@3.2.2/Tests/Runtime/DataPrivacy/JsonSerialization.cs.meta" new file mode 100644 index 00000000..feafedcf --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.analytics@3.2.2/Tests/Runtime/DataPrivacy/JsonSerialization.cs.meta" @@ -0,0 +1,12 @@ +fileFormatVersion: 2 +guid: 0fe4c527c3aa3eb42912a1caafbbc6a0 +timeCreated: 1526476500 +licenseType: Pro +MonoImporter: + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.analytics@3.2.2/Tests/Runtime/DataPrivacy/Unity.Analytics.DataPrivacy.Tests.asmdef" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.analytics@3.2.2/Tests/Runtime/DataPrivacy/Unity.Analytics.DataPrivacy.Tests.asmdef" new file mode 100644 index 00000000..54d317a0 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.analytics@3.2.2/Tests/Runtime/DataPrivacy/Unity.Analytics.DataPrivacy.Tests.asmdef" @@ -0,0 +1,12 @@ +{ + "name": "Unity.Analytics.DataPrivacy.Tests", + "references": [ + "Unity.Analytics.DataPrivacy" + ], + "optionalUnityReferences": [ + "TestAssemblies" + ], + "includePlatforms": [], + "excludePlatforms": [], + "allowUnsafeCode": false +} \ No newline at end of file diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.analytics@3.2.2/Tests/Runtime/DataPrivacy/Unity.Analytics.DataPrivacy.Tests.asmdef.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.analytics@3.2.2/Tests/Runtime/DataPrivacy/Unity.Analytics.DataPrivacy.Tests.asmdef.meta" new file mode 100644 index 00000000..5d4c3c4f --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.analytics@3.2.2/Tests/Runtime/DataPrivacy/Unity.Analytics.DataPrivacy.Tests.asmdef.meta" @@ -0,0 +1,7 @@ +fileFormatVersion: 2 +guid: 015812e983113a84b95773e55f3cec13 +AssemblyDefinitionImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.analytics@3.2.2/Unity.Analytics.Editor.dll.mdb" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.analytics@3.2.2/Unity.Analytics.Editor.dll.mdb" new file mode 100644 index 00000000..e598a74d Binary files /dev/null and "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.analytics@3.2.2/Unity.Analytics.Editor.dll.mdb" differ diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.analytics@3.2.2/Unity.Analytics.Editor.dll.mdb.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.analytics@3.2.2/Unity.Analytics.Editor.dll.mdb.meta" new file mode 100644 index 00000000..3acc6079 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.analytics@3.2.2/Unity.Analytics.Editor.dll.mdb.meta" @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: fec197bad419341558f81f2ec8a05e18 +timeCreated: 1491256222 +licenseType: Pro +DefaultImporter: + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.analytics@3.2.2/Unity.Analytics.Editor.dll.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.analytics@3.2.2/Unity.Analytics.Editor.dll.meta" new file mode 100644 index 00000000..6611ac13 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.analytics@3.2.2/Unity.Analytics.Editor.dll.meta" @@ -0,0 +1,102 @@ +fileFormatVersion: 2 +guid: 224ede67b4f3a4109bfec4d5cb161b05 +PluginImporter: + externalObjects: {} + serializedVersion: 2 + iconMap: {} + executionOrder: {} + isPreloaded: 0 + isOverridable: 1 + platformData: + - first: + '': Any + second: + enabled: 0 + settings: + Exclude Android: 1 + Exclude Editor: 0 + Exclude Linux: 1 + Exclude Linux64: 1 + Exclude LinuxUniversal: 1 + Exclude OSXUniversal: 1 + Exclude Win: 1 + Exclude Win64: 1 + Exclude iOS: 1 + - first: + '': first + second: + enabled: 0 + settings: {} + - first: + Android: Android + second: + enabled: 0 + settings: + CPU: ARMv7 + - first: + Editor: Editor + second: + enabled: 1 + settings: + CPU: AnyCPU + DefaultValueInitialized: true + OS: AnyOS + - first: + Facebook: Win + second: + enabled: 0 + settings: + CPU: AnyCPU + - first: + Facebook: Win64 + second: + enabled: 0 + settings: + CPU: AnyCPU + - first: + Standalone: Linux + second: + enabled: 0 + settings: + CPU: x86 + - first: + Standalone: Linux64 + second: + enabled: 0 + settings: + CPU: x86_64 + - first: + Standalone: OSXUniversal + second: + enabled: 0 + settings: + CPU: AnyCPU + - first: + Standalone: Win + second: + enabled: 0 + settings: + CPU: AnyCPU + - first: + Standalone: Win64 + second: + enabled: 0 + settings: + CPU: AnyCPU + - first: + Windows Store Apps: WindowsStoreApps + second: + enabled: 0 + settings: + CPU: AnyCPU + - first: + iPhone: iOS + second: + enabled: 0 + settings: + AddToEmbeddedBinaries: false + CompileFlags: + FrameworkDependencies: + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.analytics@3.2.2/Unity.Analytics.StandardEvents.dll.mdb" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.analytics@3.2.2/Unity.Analytics.StandardEvents.dll.mdb" new file mode 100644 index 00000000..03748075 Binary files /dev/null and "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.analytics@3.2.2/Unity.Analytics.StandardEvents.dll.mdb" differ diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.analytics@3.2.2/Unity.Analytics.StandardEvents.dll.mdb.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.analytics@3.2.2/Unity.Analytics.StandardEvents.dll.mdb.meta" new file mode 100644 index 00000000..09cc7932 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.analytics@3.2.2/Unity.Analytics.StandardEvents.dll.mdb.meta" @@ -0,0 +1,7 @@ +fileFormatVersion: 2 +guid: 36e8bb3feb5e6402185947b817a6ed8d +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.analytics@3.2.2/Unity.Analytics.StandardEvents.dll.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.analytics@3.2.2/Unity.Analytics.StandardEvents.dll.meta" new file mode 100644 index 00000000..b4342b7f --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.analytics@3.2.2/Unity.Analytics.StandardEvents.dll.meta" @@ -0,0 +1,37 @@ +fileFormatVersion: 2 +guid: dce91326f102345f3ba2f0987c0679c2 +PluginImporter: + externalObjects: {} + serializedVersion: 2 + iconMap: {} + executionOrder: {} + isPreloaded: 0 + isOverridable: 0 + platformData: + - first: + '': Any + second: + enabled: 0 + settings: + Exclude N3DS: 1 + Exclude PS4: 1 + Exclude PSP2: 1 + Exclude Switch: 1 + Exclude WiiU: 1 + Exclude XboxOne: 1 + - first: + Any: + second: + enabled: 1 + settings: {} + - first: + Editor: Editor + second: + enabled: 1 + settings: + CPU: AnyCPU + DefaultValueInitialized: true + OS: AnyOS + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.analytics@3.2.2/Unity.Analytics.Tracker.dll.mdb" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.analytics@3.2.2/Unity.Analytics.Tracker.dll.mdb" new file mode 100644 index 00000000..0811ab65 Binary files /dev/null and "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.analytics@3.2.2/Unity.Analytics.Tracker.dll.mdb" differ diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.analytics@3.2.2/Unity.Analytics.Tracker.dll.mdb.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.analytics@3.2.2/Unity.Analytics.Tracker.dll.mdb.meta" new file mode 100644 index 00000000..5b0f4d17 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.analytics@3.2.2/Unity.Analytics.Tracker.dll.mdb.meta" @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: d607a67dc772b484da060e66a3d61a4e +timeCreated: 1491256195 +licenseType: Pro +DefaultImporter: + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.analytics@3.2.2/Unity.Analytics.Tracker.dll.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.analytics@3.2.2/Unity.Analytics.Tracker.dll.meta" new file mode 100644 index 00000000..7f95e23e --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.analytics@3.2.2/Unity.Analytics.Tracker.dll.meta" @@ -0,0 +1,38 @@ +fileFormatVersion: 2 +guid: 220224b43fc464c28bc0e8de8f54a432 +PluginImporter: + externalObjects: {} + serializedVersion: 2 + iconMap: {} + executionOrder: {} + isPreloaded: 0 + isOverridable: 0 + platformData: + - first: + '': Any + second: + enabled: 0 + settings: + Exclude N3DS: 1 + Exclude PS4: 1 + Exclude PSP2: 1 + Exclude Switch: 1 + Exclude WiiU: 1 + Exclude XboxOne: 1 + - first: + Any: + second: + enabled: 1 + settings: {} + - first: + Editor: Editor + second: + enabled: 1 + settings: + CPU: AnyCPU + DefaultValueInitialized: true + OS: AnyOS + userData: + assetBundleName: + assetBundleVariant: + diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.analytics@3.2.2/package.json" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.analytics@3.2.2/package.json" new file mode 100644 index 00000000..554d9af9 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.analytics@3.2.2/package.json" @@ -0,0 +1,18 @@ +{ + "description": "The Unity Analytics Library contains the Analytics Event Tracker component, the Data Privacy plug-in, and the Standard Events API.", + "displayName": "Analytics Library", + "keywords": [ + "analytics", + "unity" + ], + "name": "com.unity.analytics", + "readme": "Unity Analytics", + "repoPackagePath": "build/install/com.unity.analytics", + "repository": { + "revision": "f6830e2decdab13b9a19d8bf39509a8f0a8d349e", + "type": "git", + "url": "git@gitlab.cds.internal.unity3d.com:upm-packages/analytics/com.unity.analytics.git" + }, + "unity": "2018.3", + "version": "3.2.2" +} \ No newline at end of file diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.analytics@3.2.2/package.json.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.analytics@3.2.2/package.json.meta" new file mode 100644 index 00000000..83b0f788 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.analytics@3.2.2/package.json.meta" @@ -0,0 +1,9 @@ +fileFormatVersion: 2 +guid: 510d1d319d2754ea4a47c6dd8c421ea0 +timeCreated: 1491258762 +licenseType: Pro +TextScriptImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/.gitattributes" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/.gitattributes" new file mode 100644 index 00000000..a5207943 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/.gitattributes" @@ -0,0 +1,17 @@ +# Auto detect text files and perform LF normalization +* text=auto + +# Custom for Visual Studio +*.cs eol=lf + +# Standard to msysgit +*.doc diff=astextplain +*.DOC diff=astextplain +*.docx diff=astextplain +*.DOCX diff=astextplain +*.dot diff=astextplain +*.DOT diff=astextplain +*.pdf diff=astextplain +*.PDF diff=astextplain +*.rtf diff=astextplain +*.RTF diff=astextplain diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/.yamato/upm-ci.yml" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/.yamato/upm-ci.yml" new file mode 100644 index 00000000..ea017114 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/.yamato/upm-ci.yml" @@ -0,0 +1,68 @@ +test_editors: + - version: 2018.3 +test_platforms: + - name: win + type: Unity::VM + image: package-ci/win10:stable + flavor: m1.large + - name: mac + type: Unity::VM::osx + image: buildfarm/mac:stable + flavor: m1.mac +--- +pack: + name: Pack + agent: + type: Unity::VM + image: package-ci/win10:stable + flavor: m1.large + commands: + - npm install upm-ci-utils@stable -g --registry https://api.bintray.com/npm/unity/unity-npm + - upm-ci package pack + artifacts: + packages: + paths: + - "upm-ci~/packages/**/*" + +{% for editor in test_editors %} +{% for platform in test_platforms %} +test_{{ platform.name }}_{{ editor.version }}: + name : Test {{ editor.version }} on {{ platform.name }} + agent: + type: {{ platform.type }} + image: {{ platform.image }} + flavor: {{ platform.flavor}} + commands: + - npm install upm-ci-utils@stable -g --registry https://api.bintray.com/npm/unity/unity-npm + - upm-ci package test -u {{ editor.version }} + artifacts: + logs: + paths: + - "upm-ci~/test-results/**/*" + dependencies: + - .yamato/upm-ci.yml#pack +{% endfor %} +{% endfor %} + +test_trigger: + name: Tests Trigger + agent: + type: Unity::VM + image: package-ci/win10:stable + flavor: m1.large + commands: + - dir + artifacts: + logs: + paths: + - "upm-ci~/test-results/**/*" + packages: + paths: + - "upm-ci~/packages/**/*" + dependencies: + - .yamato/upm-ci.yml#pack + {% for editor in test_editors %} + {% for platform in test_platforms %} + - .yamato/upm-ci.yml#test_{{platform.name}}_{{editor.version}} + {% endfor %} + {% endfor %} diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/CHANGELOG.md" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/CHANGELOG.md" new file mode 100644 index 00000000..c1b372c6 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/CHANGELOG.md" @@ -0,0 +1,167 @@ +# Changelog +All notable changes to this package will be documented in this file. + +The format is based on [Keep a Changelog](http://keepachangelog.com/en/1.0.0/) +and this project adheres to [Semantic Versioning](http://semver.org/spec/v2.0.0.html). + +## [2.2.9-preview] - 2019-05-22 +### Mostly Bugfixes +- Added CinemachineCore.GetBlendOverride delegate to allow applications to override any vcam blend when it happens +- When a blend is cancelled by the opposite blend, reduce the blend time +- FreeLook: if inherit position from similar FreeLooks, bypass damping +- Timeline: improve handling when vcam values are tweaked inside shot inspector (fogbugz 1109024) +- OnTargetObjectWarped no longer generates garbage +- Orthographic cameras allow a Near Clip of 0 +- Timeline won't auto-create CM brains when something dragged onto it +- Confiner: Improvement in automatic path invalidation when number of path points path changes +- Added CinemachineInpuitAxisDriver utility for overriding the default AxisState behaviour +- CinemachineCameraOffset: added customizable stage for when to apply the offset +- Added Loop option to BlendList Camera +- Improved Lookahed: does not automatically recenter +- Bugfix: potential endless loop when using Ignore tag in Collider +- Brain no longer applies time scaling to fixed delta +- Bugfix: Allow externally-driven FeeLook XAxis to work properly with SimpleFollow +- Bugfix: vcams with noise would sometimes show one noiseless frame when they were activated and standby update was not Always +- Bugfix: Generate a cut event if cutting to a blend-in-progess (fogbugz 1150847) +- Bugfix: reset lens shift if not physical camera +- Bugfix: Collider must consider actual target position, not lookahead position +- Bugfix: FreeLook heading RecenterNow was not working +- Bugfix: lookahead now takes the overridden Up into account +- Bugfix: screen composer guides drawn in wrong place for picture-in-picture +- Bugfix: FreeLook now draws only 1 active composer guide at a time (fogbugz 1138263) +- Bugfix: cameras sometimes snapped when interrupting blends +- Bugfix: Path handles no longer scale with the path object +- Bugfix: Framing Transposer Center on Activate was not working properly (fogbugz 1129824) +- Bugfix: collider was pushing camera too far if there were multiple overlapping obstacles +- Bugfix: use IsAssignableFrom instead of IsSubclass in several places +- Bugfix: when interrupting a blend in progress, Cut was not respected +- Bugfix: collider minimum occlusion time and smoothing time interaction +- Bugfix: TargetGroup.RemoveMember error (fogbugz 1119028) +- Bugfix: TargetGroup member lerping jerk when member weight near 0 +- Bugfix: Transposer angular damping should be 0 only if binding mode not LockToTarget + +## [2.2.8] - 2018-12-10 +### Bugfixes, optimizations, and some experimental stuff +- Transposer: added Angular Damping Mode, to support quaternion calculations in gimbal-lock situations +- Framing Transposer and Group Transposer: group composing bugfixes, respect min/max limits +- Added ConemachineCameraOffset extension, to offset the camera a fixed distance at the end of the pipeline +- Dolly Cart: added support for LateUpdate +- State-driven-camera: added [NoSaveDuringPlay] to Animated Target and Layer Index +- Added AxisState.Recentering.RecenterNow() API call to skip wait time and start recentering now (if enabled) +- Added NoLens blend hint, to leave camera Lens settings alone +- Added Composer.CenterOnActivate option, to disable automatic centering in dead zone when vcam is activated +- Updated documentation (corrections, and relocation to prevent importing) +- Upgrade: added support for nested prefabs in Unity 2018.3 (fogbugz 1077395) +- Optimization: position predictor is more efficient +- Optimization: Composer caches some calculations +- Optimization: Fix editor slowdown when Lens Presets asset is missing +- Experimental: Optional new damping algorithm: attempt to reduce sensitivity to variable framerate +- Experimental: Optional new extra-efficient versions of vcam and FreeLook (not back-compatible) +- Timeline: play/pause doesn't kick out the timeline vcam +- Path editor: make sure game view gets updated when a path waypoint is dragged in the scene view +- Composer guides are shown even if Camera is attached to a renderTexture +- Bugfix: allow impulse definition to be a non-public field (property drawer was complaining) +- Bugfix: added null check for when there is no active virtual camera +- Bugfix: CollisionImpulseSource typo in detection of 2D collider +- Bugfix: PasteComponentValues to prefab vcams and FreeLooks were corrupting scene and prefabs +- Bugfix: Timeline mixer was glitching for single frames at the end of blends +- Bugfix: Added OnTransitionFromCamera() to POV and OrbitalTransposer, to transition axes intelligently +- Regression fix: if no active vcam, don't set the Camera's transform + +## [2.2.7] - 2018-07-24 +### Mostly bugfixes +- Bugfix: fogbugz case 1053595: Cinemachine Collider leaves hidden collider at origin that interferes with scene objects +- Bugfix: fogbugz case 1063754: empty target group produces console messages +- Bugfix: FreeLook Paste Component Values now pastes the CM subcomponents as well +- Bugfix: added extra null checks to support cases where current vcam is dynamically deleted +- Bugfix: reset BlendList when enabled +- Regression fix: FreeLook axis values get transferred when similar vcams transition +- Bugfix: cutting to BlendList vcam sometimes produced a few bad frames +- Bugfix: smart update tracks the targets more efficiently and correctly, and supports RigidBody interpolation (2018.2 and up) +- Enhancement: POV component interprets POV as relative to parent transform if there is one +- API change: OnCameraLive and CameraActivated events take outgoing vcam also as parameter (may be null) + +## [2.2.0] - 2018-06-18 +### Impulse Module and More +- New Cinemachine Impulse module for event-driven camera shakes +- New Event Helper script CinemachineTriggerAction takes action on Collider and Collider2D enter/exit events, and exposes them as UnityEvents +- New performance-tuning feature: Standby Update. Controls how often to update the vcam when it's in Standby. +- New NoiseSettings editor with signal preview +- Added Focal Length or Named FOV presets for Camera Lens +- Added support for Physical Camera: focal length and Lens Offset +- New improved Group framing algorithm: tighter group framing in GroupComposer and FramingTransposer +- Collider: now returns TargetIsObscured if the target is offscreen (great for cameras with fixed aim) +- Collider: added Minimum Occlusion Time setting, to ignore fleeting obstructions +- Collider: added Transparent Layers mask, to specify solid objects that don't obstruct view +- Collider: damping will no longer take the camera through obstacles +- Collider: Added separate damping setting for when target is being occluded vs when camera is being returned to its normal position +- Collider: added Smoothing setting, to reduce camera jumpiness in environements with lots of obstacles +- NoiseSettings: added checkbox for pure sine-wave instead of Perlin wave +- If no LookAt target, PostProcessing FocusTracksTarget offset is relative to camera +- TrackedDolly: Default up mode sets Up to World Up +- Virtual Camera: New Transitions section in inspector that gives more control over blending: + - Blend Hint provides some control over how the position and rotation are interpolated + - Inherit Position checkbox to ensure smooth positional handoff from outgoing camera + - OnCameraLive event gets fired when the camera activates. Useful for custom handlers. +- Added ScreenSpaceAimWhenTargetsDiffer as a vcam blend hint. This influences what happens when blending between vcams with different LookAt targets +- Increased stability of vcams with very small FOVs +- Framing Transposer no longer requires LookAt to be null +- LensSettings Aspect, Orthographic, IsPhysicalCamera, SensorSize properties no longer internal +- Noise Profiles: don't magically create assets. Prompt user for filename and location of new or cloned profiles +- Refactored interaction between timeline and CM brain, to improve handling of edge cases (fogbugz case 1048497) +- Bugfix: StateDrivenCamera Editor was not finding states if target was OverrideController +- Bugfix when dragging orbital transposer transform: take bias into account +- Bugfix: SaveDuringPlay was not handling asset fields correctly - was sometimes crushing assets +- Bugfix: SimpleFollow transposers were not initilizing their position correctly at game start +- Bugfix: Timeline with CM shot was causing jitter in some FixedUpdate situations +- Bugfix: Multiple brains with heterogeneous update methods were not behaving correctly. CM will now support this, but you must make sure that the brains have different layer masks. +- Example scenes now include use of CinemachineTriggerAction script. + +## [2.1.13] - 2018-05-09 +### Removed dependency on nonexistant Timeline package, minor bugfixes +- Bugfix: Custom Blends "Any to Any" was not working (regression) +- Bugfix: Composer was sometimes getting wrong aspect if multiple brains with different aspect ratios +- Bugfix: could not drag vcam transforms if multiple inspectors and one is hidden +- Bugfix: Framing Transposer initializes in the wrong place - noticeable if dead zone + +## [2.1.12] - 2018-02-26 +### Storyboard, Bugfixes and other enhancements. Also some restructuring for Package Manager +- Project restructure: Removed Base, Timeline, and PostFX folders from project root. PostProcessing code must now be manually imported from Cinemachine menu. No more dependencies on scripting defines. +- New Storyboard extension, to display images over the vcams. Comes with a Waveform monitor window for color grading +- New option to specify vcam position blend style: linear, spherical, or cylindrical, based on LookAt target +- Added API to support seamless position warping of target objects: OnTargetObjectWarped(). +- Added support for custom blend curves +- Lookahead: added Ignore Y Axis Movement option +- Added support for cascading blends (i.e. blending from mid-blend looks better) +- POV/Orbital/FreeLook axis: exposed Min, Max, and Wrap in the UI, for customized axis range +- FreeLook: added Y Axis recentering +- POV: Added recentering feature to both axes +- Path: Added Normalized Path units option: 0 is start of path, 1 is end. +- Path: added length display in inspector +- Timeline Clip Editor: vcam sections are now collapsible +- API enhancement: added Finalize to Pipeline stages, called even for manager-style vcams +- Bugfix: PostProcessing V2 DoF blending works better +- Bugfix: OrbitalTransposer works better with WorldUp overrides +- Bugfix: Remove StateDrivenCamera "not playing a controller" warning +- Bugfix: Handle exceptions thrown by assemblies that don't want to be introspected +- Bugfix: vcams following physics objects incorrectly snapped to origin after exiting play mode +- Bugfix: predictor now supports time pause +- Bugfix: Moved StartCoroutine in Brain to OnEnable() +- Bugfix: Collider was causing problems in Physics on Android platforms +- Bugfix: dragging a vcam's position updtaes prefabs properly +- Bugfix: All extension now respect the "enabled" checkbox +- Bugfix: Undo for Extasion add will no longer generate null references + +## [2.1.10] - 2017-11-28 +### This is the first UPM release of *Unity Package Cinemachine*. +- New Aim component: Same As Follow Target simply uses the same orientation as the Follow target +- Perlin Noise component: added inspector UI to clone or locate existing Noise profiles, and to create new ones +- Noise Presets were moved outside of the Examples folder +- Example Assets are now included as embedded package, not imported by default +- Bugfix: FreeLook with PositionDelta was not properly updating the heading +- Bugfix: Transitioning between FreeLooks simetimes caused a short camera freeze +- Bugfix: Added some null checks to FreeLook, to prevent error messages at build time + +## [2.1.9] - 2017-11-17 +### Initial version. +*Version 2.1.9 cloned from private development repository, corresponding to package released on the asset store* diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/CHANGELOG.md.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/CHANGELOG.md.meta" new file mode 100644 index 00000000..0d864863 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/CHANGELOG.md.meta" @@ -0,0 +1,7 @@ +fileFormatVersion: 2 +guid: 806a217c43cf53b4c9c731285489f52a +TextScriptImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Documentation~/Cinemachine2D.md" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Documentation~/Cinemachine2D.md" new file mode 100644 index 00000000..f66a2274 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Documentation~/Cinemachine2D.md" @@ -0,0 +1,6 @@ +# 2D graphics + +Cinemachine supports orthographic cameras. When you set the Unity camera's projection to Orthographic, Cinemachine adjusts to accommodate it. In Virtual Camera properties for __Lens__, __FOV__ is replaced by __Orthographic Size__. Note that settings related to FOV and certain FOV-oriented behaviors such as [Follow Zoom](CinemachineFollowZoom.html) have no effect if the camera is orthographic. + +In orthographic environments, it doesn’t usually make sense to rotate the camera. Accordingly, Cinemachine offers the [Framing Transposer](CinemachineBodyFramingTransposer.html) to handle framing and composition without rotating the camera. + diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Documentation~/CinemachineAimComposer.md" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Documentation~/CinemachineAimComposer.md" new file mode 100644 index 00000000..f3bac79a --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Documentation~/CinemachineAimComposer.md" @@ -0,0 +1,23 @@ +# Composer + +This Virtual Camera __Aim__ algorithm rotates the camera to face the __Look At__ target. It also applies offsets, damping, and composition rules. Examples of targets for aiming: the upper spine or head bone of a character, vehicles, or dummy objects which are controlled or animated programmatically. + +## Properties: + +| **Property:** | **Function:** | +|:---|:---| +| __Tracked Object Offset__ | Offset from the center of the Look At target, in target-local space. Fine-tune the tracking target position when the desired area is not the tracked object’s center. | +| __Lookahead Time__ | Adjust the offset based on the motion of the Look At target. The algorithm estimates the point that the target will be this many seconds into the future. This feature is sensitive to noisy animation. It can amplify the noise, resulting in undesirable camera jitter. If the camera jitters unacceptably when the target is in motion, turn down this property or animate the target more smoothly. | +| __Lookahead Smoothing__ | Controls the smoothness of the lookahead algorithm. Larger values smooth out jittery predictions and increase prediction lag. | +| __Lookahead Ignore Y__ | Toggle to ignore movement along the Y axis for lookahead calculations. | +| __Horizontal Damping__ | How responsively the camera follows the target in the screen-horizontal direction. Use small numbers for more responsive, rapid rotation of the camera to keep the target in the dead zone. Use larger numbers for a more heavy, slowly-responding camera. | +| __Vertical Damping__ | How responsively the camera follows the target in the screen-vertical direction. Use different vertical and horizontal settings to give a wide range of camera behaviors. | +| __Screen X__ | Horizontal screen position for the center of the dead zone. The camera rotates so that the target appears here. | +| __Screen Y__ | Vertical screen position for target, The camera rotates so that the target appears here. | +| __Dead Zone Width__ | The width of the screen region within which the camera ignores any movement of the target. If the target is positioned anywhere within this region, the Virtual Camera does not update its rotation. This is useful for ignoring minor target movement. | +| __Dead Zone Height__ | The height of the screen region within which the camera ignores any movement of the target. If the target is positioned anywhere within this region, the Virtual Camera does not update its rotation. This is useful for ignoring minor target movement. | +| __Soft Zone Width__ | The width of the soft zone. If the target appears in this region of the screen, the camera will rotate to push it back out to the dead zone, in the time specified by the Horizontal Damping setting. | +| __Soft Zone Height__ | The height of the soft zone. If the target appears in this region of the screen, the camera will rotate to push it back out to the dead zone, in the time specified by the Vertical Damping setting. | +| __Bias X__ | Positions the soft zone horizontally, relative to the dead zone. | +| __Bias Y__ | Positions the soft zone vertically, relative to the dead zone. | + diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Documentation~/CinemachineAimDoNothing.md" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Documentation~/CinemachineAimDoNothing.md" new file mode 100644 index 00000000..56783c64 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Documentation~/CinemachineAimDoNothing.md" @@ -0,0 +1,4 @@ +# Do Nothing + +This Virtual Camera __Aim__ algorithm does not aim the Virtual Camera. Choose this algorithm for static shots or for animating the rotation directly with custom scripts. + diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Documentation~/CinemachineAimGroupComposer.md" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Documentation~/CinemachineAimGroupComposer.md" new file mode 100644 index 00000000..b3512d64 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Documentation~/CinemachineAimGroupComposer.md" @@ -0,0 +1,4 @@ +# Group Composer + +This Virtual Camera __Aim__ algorithm aims the camera at multiple GameObjects. Otherwise, it behaves identically to the Composer and has the same settings. If the Look At target is a [Cinemachine Target Group](CinemachineTargetGroup.html), the algorithm adjusts the FOV and the camera distance to ensure that the group of targets is framed properly. + diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Documentation~/CinemachineAimHardLook.md" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Documentation~/CinemachineAimHardLook.md" new file mode 100644 index 00000000..ab0fd488 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Documentation~/CinemachineAimHardLook.md" @@ -0,0 +1,4 @@ +# Hard Look At + +This Virtual Camera __Aim__ algorithm rotates the Virtual Camera to keep the __Look At__ target in the center of the camera frame. + diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Documentation~/CinemachineAimPOV.md" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Documentation~/CinemachineAimPOV.md" new file mode 100644 index 00000000..ba87cdb6 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Documentation~/CinemachineAimPOV.md" @@ -0,0 +1,37 @@ +# POV + +This Virtual Camera __Aim__ algorithm aims the camera in response to the user’s input. + +## Properties: + +| **Property:** || **Function:** | +|:---|:---|:---| +| __Vertical Axis__ || Controls the vertical orientation of the Virtual Camera’s aim. | +| | _Value_ | The current value of the axis to aim the camera at, in degrees. Accepted values are -90 to 90. | +| | _Value Range_ | The minimum and maximum values for the vertrial axis of the Virtual Camera. | +| | _Wrap_ | If checked, the axis wraps around the Value Range values, forming a loop. | +| | _Max Speed_ | The maximum speed of this axis in degrees/second. | +| | _Accel Time_ | The amount of time in seconds it takes to accelerate to Max Speed with the supplied axis at its maximum value. | +| | _Decel Time_| The amount of time in seconds it takes to decelerate the axis to zero if the supplied axis is in a neutral position. | +| | _Input Axis Name_ | The name of this axis as specified in Unity Input Manager. To disable the automatic updating of this axis, set this property to an empty string. | +| | _Input Axis Value_ | The value of the input axis. A value of 0 means no input. You can drive this directly from a custom input system, or you can set the Input Axis Name and have the value driven by the Unity Input Manager. | +| | _Invert_ | Check to invert the raw value of the input axis before it is used. | +| __Vertical Recentering__ || Controls automatic vertical recentering when the player gives no input. | +| | _Enabled_ | Check to enable automatic vertical recentering. | +| | _Wait Time_ | If no user input has been detected on the vertical axis, the camera waits this long in seconds before recentering. | +| | _Recentering Time_ | Maximum angular speed of recentering. Accelerates into and decelerates out of this. | +| __Horizontal Axis__ || Controls the horizontal orientation. | +| | _Value_ | The current value of the axis, in degrees. Accepted values are -180 to 180. | +| | _Value Range_ | The minimum and maximum values for the axis. | +| | _Wrap_ | If checked, the axis wraps around the Value Range values, forming a loop. | +| | _Max Speed_ | The maximum speed of this axis in degrees per second. | +| | _Accel Time_ | The amount of time in seconds it takes to accelerate to Max Speed with the supplied Axis at its maximum value. | +| | _Decel Time_ | The amount of time in seconds it takes to decelerate the axis to zero if the supplied axis is in a neutral position. | +| | _Input Axis Name_ | The name of this axis as specified in the Unity Input Manager. Set this property to an empty string to disable automatic update of this axis. | +| | _Input Axis Value_ | The value of the input axis. A value of 0 means no input. You can drive this directly from a custom input system, or you can set the Input Axis Name and have the value driven by the Unity Input Manager. | +| | _Invert_ | Check to invert the raw value of the input axis before it is used. | +| __Horizontal Recentering__ || Controls automatic vertical recentering when the player gives no input. | +| | _Enabled_ | Check to enable automatic vertical recentering. | +| | _Wait Time_ | If no user input has been detected on the vertical axis, the camera waits this long in seconds before recentering. | +| | _Recentering Time_ | Maximum angular speed of recentering. Accelerates into and decelerates out of this. | + diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Documentation~/CinemachineAimSameAsFollow.md" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Documentation~/CinemachineAimSameAsFollow.md" new file mode 100644 index 00000000..6f6c3463 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Documentation~/CinemachineAimSameAsFollow.md" @@ -0,0 +1,4 @@ +# Same As Follow Target + +This Virtual Camera __Aim__ algorithm matches the orientation of the __Follow__ target. When used with the __Hard Lock to Target__ algorithm in the __Body__ properties, this algorithm makes the Virtual Camera match the path and rotation of a control GameObject. + diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Documentation~/CinemachineBlendListCamera.md" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Documentation~/CinemachineBlendListCamera.md" new file mode 100644 index 00000000..4f28ecd4 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Documentation~/CinemachineBlendListCamera.md" @@ -0,0 +1,21 @@ +# Cinemachine Blend List Camera + +The __Cinemachine Blend List Camera__ component executes a sequence of blends or cuts among its child Virtual Cameras. + +When the Blend List camera is activated, it executes its list of instructions, activating the first child Virtual Camera in the list, holding for a designated time, then cutting or blending to the next child, and so on. The Blend List camera holds the last Virtual Camera until Cinemachine Brain or Timeline deactivates the Blend List camera. + +**Tip**: Use a Blend List Camera instead of [Timeline](CinemachineTimeline.html) for simpler, automatic sequences. + +## Properties: + +| **Property:** | **Function:** | +|:---|:---| +| __Solo__ | Toggles whether or not the Blend List camera is temporarily live. Use this property to get immediate visual feedback in the [Game view](https://docs.unity3d.com/Manual/GameView.html) to adjust the Virtual Camera. | +| __Game Window Guides__ | Toggles the visibility of compositional guides in the Game view. This property applies to all Virtual Cameras. | +| __Save During Play__ | Check to [apply the changes while in Play mode](CinemachineSavingDuringPlay.html). Use this feature to fine-tune a Virtual Camera without having to remember which properties to copy and paste. This property applies to all Virtual Cameras. | +| __Priority__ | The importance of this Blend List camera for choosing the next shot. A higher value indicates a higher priority. Cinemachine Brain chooses the next live Virtual Camera from all Virtual Cameras that are activated and have the same or higher priority as the current live Virtual Camera. This property has no effect when using a Virtual Camera with Timeline. | +| __Look At__ | The default target GameObject that the children Virtual Camera move with. The Blend List camera uses this target when the child does not specify this target. May be empty if all of the children define targets of their own. | +| __Follow__ | The default target GameObject to aim the Unity camera at. The Blend List camera uses this target when the child does not specify this target. May be empty if all of the children define targets of their own. | +| __Show Debug Text__ | Check to display a textual summary of the live Virtual Camera and blend in the view. | +| __Enable All Child Cameras__ | Check to activate all child cameras. This is useful if animating them in Timeline, but consumes extra resources. | +| __Instructions__ | The set of instructions for enabling child cameras. | diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Documentation~/CinemachineBlending.md" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Documentation~/CinemachineBlending.md" new file mode 100644 index 00000000..d55152a7 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Documentation~/CinemachineBlending.md" @@ -0,0 +1,32 @@ +# Blending between Virtual Cameras + +Use blending properties to specify how the Cinemachine Brain component performs a blend between virtual cameras. + +A Cinemachine blend is not a fade, wipe, or dissolve. Rather, Cinemachine Brain performs a smooth animation of the position, rotation, and other settings of the Unity camera from one Virtual Camera to the next. + +For blends between specific Virtual Cameras, use the __Custom Blends__ list in the Cinemachine Brain component. Use the __Default Blend__ property in Cinemachine Brain to specify blends between Virtual Cameras that do not have custom blends. + +![Custom Blends list in Cinemachine Brain](images/CinemachineCustomBlends.png) + +The __From__ and __To__ settings are name-based, not references. This means that Cinemachine finds cameras by matching their names to the settings. They are not linked to specific GameObjects. + +Use the name \*\*ANY CAMERA\*\* to blend from or to any Virtual Camera. + +## Properties: + +| **Property:** || **Function:** | +|:---|:---|:---| +| __From__ || The name of the Virtual Camera to blend from. Use the name \*\*ANY CAMERA\*\* to blend from any Virtual Camera. This property is available only for custom blends. | +| __To__ || The name of the Virtual Camera to blend to. Use the name \*\*ANY CAMERA\*\* to blend to any Virtual Camera. This property is available only for custom blends. | +| __Style Default Blend__ || Shape of the blend curve. | +| | _Cut_ | Zero-length blend. | +| | _Ease In Out_ | S-shaped curve, giving a gentle and smooth transition. | +| | _Ease In_ | Linear out of the outgoing Virtual Camera, and ease into the incoming Virtual Camera. | +| | _Ease Out_ | Ease out of the outgoing Virtual Camera, and blend linearly into the incoming Virtual Camera. | +| | _Hard In_ | Ease out of the outgoing Virtual Camera, and accelerate into the incoming Virtual Camera. | +| | _Hard Out_ | Accelerate out of the outgoing Virtual Camera, and ease into the incoming Virtual Camera. | +| | _Linear_ | Linear blend. mechanical-looking. | +| | _Custom_ | Custom blend curve. Allows you to draw a custom blend curve. | +| __Time__ || Duration (in seconds) of the blend. | + + diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Documentation~/CinemachineBodyDoNothing.md" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Documentation~/CinemachineBodyDoNothing.md" new file mode 100644 index 00000000..3598cb9b --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Documentation~/CinemachineBodyDoNothing.md" @@ -0,0 +1,4 @@ +# Do Nothing + +This Virtual Camera __Body__ algorithm does not move the Virtual Camera; it does not modify its position. Choose this algorithm for static shots or for animating the camera position directly with your custom scripts. + diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Documentation~/CinemachineBodyFramingTransposer.md" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Documentation~/CinemachineBodyFramingTransposer.md" new file mode 100644 index 00000000..81dda928 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Documentation~/CinemachineBodyFramingTransposer.md" @@ -0,0 +1,54 @@ +# Framing Transposer + +This Virtual Camera __Body__ algorithm moves the camera in a fixed screen-space relationship to the __Follow__ target. You can also specify offsets, damping, and composition rules. __Framing Transposer__ only changes the camera’s position in space. It does not re-orient or otherwise aim the camera. + +__Framing Transposer__ is designed for 2D and orthographic cameras. But it works equally well with perspective cameras and 3D environments. + +This algorithm first moves the camera along the camera Z axis until the __Follow__ target is at the desired distance from the camera’s X-Y plane. It then moves the camera in its X-Y plane until the __Follow__ target is at the desired point on the camera’s screen. + +**Note**: To use __Framing Transposer__, the __Look At__ property must be empty. + +If the __Follow__ target is a [Target Group](CinemachineTargetGroup.html), then additional properties are available to frame the entire group. + +## Properties + +| **Property:** || **Function:** | +|:---|:---|:---| +| __Lookahead Time__ || Adjusts the offset of the Virtual Camera from the Follow target based on the motion of the target. Cinemachine estimates the point where the target will be this many seconds into the future. This feature is sensitive to noisy animation and can amplify the noise, resulting in undesirable camera jitter. If the camera jitters unacceptably when the target is in motion, turn down this property, or animate the target more smoothly. | +| __Lookahead Smoothing__ || The smoothness of the lookahead algorithm. Larger values smooth out jittery predictions and increase prediction lag. | +| __Lookahead Ignore Y__ || If checked, ignore movement along the Y axis for lookahead calculations. | +| __X Damping__ || How responsively the camera tries to maintain the offset in the x-axis. Small numbers make the camera more responsive. Larger numbers make the camera respond more slowly. Using different settings per axis can yield a wide range of camera behaviors. | +| __Y Damping__ || How responsively the camera tries to maintain the offset in the y-axis. Small numbers make the camera more responsive. Larger numbers make the camera respond more slowly. | +| __Z Damping__ || How responsively the camera tries to maintain the offset in the z-axis. Small numbers make the camera more responsive. Larger numbers make the camera respond more slowly. | +| __Screen X__ || Horizontal screen position for target. The camera moves to position the tracked object here. | +| __Screen Y__ || Vertical screen position for target, The camera moves to position the tracked object here. | +| __Camera Distance__ || The distance to maintain along the camera axis from the Follow target. | +| __Dead Zone Width__ || Do not move the camera horizontally when the target is within this range of the position. | +| __Dead Zone Height__ || Do not move the camera vertically if the target is within this range of the position. | +| __Dead Zone Depth__ || Do not move the camera along its z-axis if the Follow target is within this distance of the specified camera distance. | +| __Unlimited Soft Zone__ || If checked, then the soft zone is unlimited in size. | +| __Soft Zone Width__ || When the target is in this range, move the camera horizontally to frame the target in the dead zone. The Damping properties affect the rate of the camera movement. | +| __Soft Zone Height__ || When the target is in this range, move the camera vertically to frame the target in the dead zone. The Damping properties affect the rate of the camera movement. | +| __Bias X__ || Moves the target position horizontally away from the center of the soft zone. | +| __Bias Y__ || Moves the target position vertically away from the center of the soft zone. | +| __Group Framing Mode__ || Available when Follow specifies a [Target Group](CinemachineTargetGroup.html). Specifies the screen dimensions to consider when framing. | +| | _Horizontal_ | Consider only the horizontal dimension. Ignore vertical framing. | +| | _Vertical_ | Consider only the vertical dimension. Ignore horizontal framing. | +| | _Horizontal And Vertical_ | Use the larger of the horizontal and vertical dimensions to get the best fit. | +| | _None_ | Don’t do any framing adjustment. | +| __Adjustment Mode__ || How to adjust the camera to get the desired framing. You can zoom, dolly in or out, or do both. Available when Follow specifies a Target Group. | +| | _Zoom Only_ | Don’t move the camera, only adjust the FOV. | +| | _Dolly Only_ | Move the camera, don’t change the FOV. | +| | _Dolly Then Zoom_ | Move the camera as much as permitted by the ranges, then adjust the FOV if necessary to make the shot. | +| __Group Framing Size__ || The bounding box that the targets should occupy. Use 1 to fill the whole screen, 0.5 to fill half the screen, and so on. Available when Follow specifies a Target Group. | +| __Max Dolly In__ || The maximum distance toward the target to move the camera. Available when Follow specifies a Target Group. | +| __Max Dolly Out__ || The maximum distance away from the target to move the camera. Available when Follow specifies a Target Group. | +| __Minimum Distance__ || Set this to limit how close to the target the camera can get. Available when Follow specifies a Target Group. | +| __Maximum Distance__ || Set this to limit how far from the target the camera can get. Available when Follow specifies a Target Group. | +| __Minimum FOV__ || If adjusting FOV, do not set the FOV lower than this. Available when Follow specifies a Target Group. | +| __Maximum FOV__ || If adjusting FOV, do not set the FOV higher than this. Available when Follow specifies a Target Group. | +| __Minimum Ortho Size__ || If adjusting Orthographic Size, do not set it lower than this. Available when Follow specifies a Target Group. | +| __Maximum Ortho Size__ || If adjusting Orthographic Size, do not set it higher than this. Available when Follow specifies a Target Group. | + + + diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Documentation~/CinemachineBodyHardLockTarget.md" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Documentation~/CinemachineBodyHardLockTarget.md" new file mode 100644 index 00000000..b8b10d4a --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Documentation~/CinemachineBodyHardLockTarget.md" @@ -0,0 +1,4 @@ +# Hard Lock to Target + +This Virtual Camera __Body__ algorithm uses the same position at the __Follow__ target. In other words, the target acts as a mounting point for the Virtual Camera. + diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Documentation~/CinemachineBodyOrbitalTransposer.md" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Documentation~/CinemachineBodyOrbitalTransposer.md" new file mode 100644 index 00000000..a11cf9b6 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Documentation~/CinemachineBodyOrbitalTransposer.md" @@ -0,0 +1,51 @@ +# Orbital Transposer + +This Virtual Camera __Body__ algorithm moves the Unity camera in a variable relationship to the Virtual Camera’s __Follow__ target. It optionally accepts [player input](https://docs.unity3d.com/Manual/ConventionalGameInput.html), which allows the player to dynamically control the position of the camera relative to the target. + +The __Orbital Transposer__ introduces the concept of __heading__, which is the direction in which the target is moving or facing. Orbital Transposer attempts to position the camera so that it points in the same direction as the heading direction. By default, this position is directly behind the target. Control this relationship by adjusting the __Heading Bias__ property. + +If you attach an input controller to the __Orbital Transposer__, then the player can also control the camera. This allows the player to move the camera to any spot on an orbit around the target. Configure the __Orbital Transposer__ to take its input from any axis that you set up in the [Input Manager](https://docs.unity3d.com/Manual/class-InputManager.html). Or control the value directly using a custom input system. + +__Orbital Transposer __optionally automatically re-centers the camera. When __Recenter To Target Heading__ is checked, Orbital Transposer automatically moves the camera back to the target heading. You can specify the length of time to wait after it has detected no user input and the speed of the recentering. + +![Orbital Transposer](images/CinemachineOrbitalTransposer.png) + +## Properties: + +| **Property:** || **Function:** | +|:---|:---|:---| +| __Binding Mode__ || The coordinate space to use when interpreting the offset of the Virtual Camera from the Follow target. | +| | _Lock To Target On Assign_ | The target’s local frame at the moment when the Virtual Camera was activated, or when the target was assigned. | +| | _Lock To Target With World Up_ | The target’s local frame, with the tilt and roll reset to zero. | +| | _Lock To Target No Roll_ | The target’s local frame, with the roll reset to zero. | +| | _Lock To Target_ | The target’s local frame. | +| | _World Space_ | World space offset. | +| | _Simple Follow With World Up_ | Relative to the target, using camera-local axes. | +| __Follow Offset__ || The position offset to attempt to maintain from the Follow target. | +| __X Damping__ || How responsively the camera tries to maintain the offset in the x-axis. Small numbers make the camera more responsive. Larger numbers make the camera respond more slowly. Using different settings per axis can yield a wide range of camera behaviors. Not available when Binding Mode is Simple Follow With World Up. | +| __Y Damping__ || How responsively the camera tries to maintain the offset in the y-axis. Small numbers make the camera more responsive. Larger numbers make the camera respond more slowly. | +| __Z Damping__ || How responsively the camera tries to maintain the offset in the z-axis. Small numbers make the camera more responsive. Larger numbers make the camera respond more slowly. | +| __Yaw Damping__ || How responsively the camera tries to track the target rotation’s y angle. Small numbers make the camera more responsive. Larger numbers make the camera respond more slowly. Available when Binding Mode is Lock to Target With World Up, Lock to Target No Roll, or Lock to Target. | +| __Pitch Damping__ || How responsively the camera tries to track the target rotation’s x angle. Small numbers make the camera more responsive. Larger numbers make the camera respond more slowly. Available when Binding Mode is Lock to Target No Roll or Lock to Target. | +| __Roll Damping__ || How responsively the camera tries to track the target rotation’s z angle. Small numbers make the camera more responsive. Larger numbers make the camera respond more slowly. Available when Binding Mode is Lock to Target. | +| __Heading__ || Specifies how to calculate the heading of the Follow target. | +| | _Definition_ | Choose Position Delta to calculate heading based on the difference in the position of the target from the last update and the current frame. Choose Velocity to use the velocity of the [Rigidbody](https://docs.unity3d.com/Manual/class-Rigidbody.html) of the target. If the target has no Rigidbody component, reverts to Position Delta. Choose Target Forward to use the target's local Forward axis as the heading. Choose World Forward to use a constant world-space Forward as heading. | +| | _Velocity Filter Strength_ | Controls the smoothing of the velocity when using Position Delta or Velocity in Definition. | +| | _Bias_ | Angular offset in the orbit to place the camera, relative to the heading. Measured in degrees. An axis value of 0 will put the camera here. | +| __Recenter To Target Heading__ || Controls automatic recentering when the player gives no input. | +| | _Enabled_ | Check to enable automatic recentering. | +| | _Wait Time_ | If no user input has been detected on the axis, the camera waits this long in seconds before recentering. | +| | _Recentering Time_ | Maximum angular speed of recentering. Accelerates into and decelerates out of this. | +| __X Axis__ || Heading Control. The settings here control the behaviour of the camera in response to the player’s input. | +| | _Value_ | The current value of the axis, in degrees. | +| | _Min Value_ | The minimum value for the axis. | +| | _Max Value_ | The maximum value for the axis. | +| | _Wrap_ | If checked, then the axis wraps around at the Min and Max values, forming a loop. | +| | _Max Speed_ | The maximum speed of this axis in units/second. | +| | _Accel Time_ | The amount of time in seconds to accelerate to MaxSpeed with the supplied axis at its maximum value. | +| | _Decel Time_ | The amount of time in seconds o decelerate the axis to zero if the supplied axis is in a neutral position. | +| | _Input Axis Name_ | The name of this axis as specified in the Unity Input manager. Set to an empty string to disable the automatic updating of this axis. | +| | _Input Axis Value_ | The value of the input axis. A value of 0 means no input. Drive this directly from a custom input system, or set the Input Axis Name to drive the value by the Unity Input Manager. | +| | _Invert_ | Check to invert the raw value of the input axis before it is used. | + + diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Documentation~/CinemachineBodyTrackedDolly.md" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Documentation~/CinemachineBodyTrackedDolly.md" new file mode 100644 index 00000000..4e6664ef --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Documentation~/CinemachineBodyTrackedDolly.md" @@ -0,0 +1,38 @@ +# Tracked Dolly + +This Virtual Camera __Body__ algorithm restricts the Virtual Camera to move along a predefined [path](CinemachineDolly.html). Use the __Path Position__ property to specify where to put the Virtual Camera on the path. + +Use __Auto-Dolly__ mode to move the Virtual Camera to a position on the path that is closest to the __Follow__ target. When enabled, __Auto-Dolly__ automatically animates the position of the Virtual Camera to the position on the path that’s closest to the target. + +**Tip**: Choose your path shapes with care when using Auto-Dolly mode. This becomes problematic on paths that form an arc around some point. As an extreme example, consider a perfectly circular path with the __Follow__ target at the center. The closest point on the path becomes unstable because all points on the circular path are equally close to the target. In this situation, moving the __Follow__ target small distances can cause the camera to move large distances on the track. + +## Properties: + +| **Property:** || **Function:** | +|:---|:---|:---| +| __Path__ || The path that the camera moves along. This property must refer to a [Cinemachine Path](CinemachinePath.html) or [Cinemachine Smooth Path](CinemachineSmoothPath.html). | +| __Path Position__ || The position along the path to place the camera. Animate this property directly or enable Auto-Dolly. The value is in the units specified by Position Units. | +| __Position Units__ || The unit of measure for Path Position. | +| | _Path Units_ | Use waypoints along the path. The value 0 represents the first waypoint on the path, 1 is the second waypoint, and so on. | +| | _Distance_ | Use distance along the path. The path is sampled according to the Resolution property of the path. Cinemachine creates a distance lookup table, which it stores in an internal cache. | +| | _Normalized_ | Use the beginning and end of the path. The value 0 represents the beginning of the path, 1 is the end of the path. | +| __Path Offset__ || The position of the camera relative to the path. X is perpendicular to the path, Y is up, and Z is parallel to the path. Use this property to offset the camera from the path itself. | +| __X Damping__ || How responsively the camera tries to maintain its position in a direction perpendicular to the path. Small numbers make the camera more responsive. Larger numbers make the camera respond more slowly. Using different settings per axis can yield a wide range of camera behaviors. | +| __Y Damping__ || How responsively the camera tries to maintain its position in the path-local up direction. Small numbers make the camera more responsive. Larger numbers make the camera respond more slowly. | +| __Z Damping__ || How responsively the camera tries to maintain its position in a direction parallel to the path. Small numbers make the camera more responsive. Larger numbers make the camera respond more slowly. | +| __Camera Up__ || How to set the up vector for the Virtual Camera. This affects the screen composition because the camera Aim algorithms try to respect the up direction. | +| | _Default_ | Do not modify the up direction of the Virtual Camera. Instead, use the World Up Override property in Cinemachine Brain. | +| | _Path_ | Use the path’s up vector at the current point. | +| | _Path No Roll_ | Use the path’s up vector at the current point, but with the roll set to zero. | +| | _Follow Target_ | Use the up vector from the Follow target’s transform. | +| | _Follow Target No Roll_ | Use the up vector from the Follow target’s transform, but with the roll zeroed out. | +| __Pitch Damping__ || How responsively the camera tracks the target rotation’s x angle. Small numbers make the camera more responsive. Larger numbers make the camera respond more slowly. | +| __Yaw Damping__ || How responsively the camera tracks the target rotation’s y angle. Small numbers make the camera more responsive. Larger numbers make the camera respond more slowly. | +| __Roll Damping__ || How responsively the camera tracks the target rotation’s z angle. Small numbers make the camera more responsive. Larger numbers make the camera respond more slowly. | +| __Auto Dolly__ || Controls how automatic dollying occurs. A Follow target is necessary to use this feature. | +| | _Enabled_ | Check to enable the automatic dolly. Note: this can have some performance impact, depending on the search resolution. | +| | _Position Offset_ | Offset, in position units, from the closest point on the path to the follow target. | +| | _Search Radius_ | The number of segments on either side of the current segment. Use 0 for the entire path. Use a lower number when the path’s shape relative to the target position causes the closest point on the path to become unstable. | +| | _Search Resolution_ | Cinemachine searches a segment by dividing it into many straight pieces. The higher the number, the more accurate the result. However, performance is proportionally slower for higher numbers. | + + diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Documentation~/CinemachineBodyTransposer.md" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Documentation~/CinemachineBodyTransposer.md" new file mode 100644 index 00000000..7784f0a8 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Documentation~/CinemachineBodyTransposer.md" @@ -0,0 +1,25 @@ +# Transposer + +This Virtual Camera __Body__ algorithm moves the Virtual Camera in a fixed offset to the __Follow__ target. It also applies damping. + +## Properties: + +| **Property:** || **Function:** | +|:---|:---|:---| +| __Binding Mode__ || The coordinate space to use when interpreting the offset from the target, and the damping. For example, for a "Door Cam or “Hood Cam" in a car racing game, use Local Space Locked To Target. | +| | _Lock To Target On Assign_| Make the Virtual Camera use the Follow target’s local frame at the moment that the Virtual Camera is activated or when the target is assigned. This offset remains constant in world space. Also, the camera does not rotate along with the target. | +| | _Lock To Target With World Up_ | Make the Virtual Camera use the Follow target’s local frame with tilt and roll set to 0. This binding mode ignores all target rotations except yaw. | +| | _Lock To Target No Roll_ | Make the Virtual Camera use the Follow target’s local frame, with roll set to 0. | +| | _Lock To Target_ | Make the Virtual Camera use the Follow target’s local frame. As the target rotates, the camera rotates around it to maintain the offset. | +| | _World Space_ | The offset in interpreted in world space relative to the Follow target's origin. The camera will not change position when the target rotates. | +| | _Simple Follow With World Up_ | Interpret the offset and damping values in camera-local space. This mode emulates what a human camera operator would do when instructed to follow a target. | +| __Follow Offset__ || The distance to maintain the Virtual Camera relative to the Follow target. Set X, Y, and Z to 0 to place the camera at the centre of the target. The default is 0, 0, -10, respectively, which places the camera behind the target. | +| __X Damping__ || How responsively the camera tries to maintain the offset in the x-axis. Small numbers make the camera more responsive. Larger numbers make the camera respond more slowly. | +| __Y Damping__ || How responsively the camera tries to maintain the offset in the y-axis. Small numbers make the camera more responsive. Larger numbers make the camera respond more slowly. | +| __Z Damping__ || How responsively the camera tries to maintain the offset in the z-axis. Small numbers make the camera more responsive. Larger numbers make the camera respond more slowly. | +| __Pitch Damping__ || How responsively the camera tracks the target rotation’s x angle. Small numbers make the camera more responsive. Larger numbers make the camera respond more slowly. | +| __Yaw Damping__ || How responsively the camera tracks the target rotation’s y angle. Small numbers make the camera more responsive. Larger numbers make the camera respond more slowly. | +| __Roll Damping__ || How responsively the camera tracks the target rotation’s z angle. Small numbers make the camera more responsive. Larger numbers make the camera respond more slowly. | + + + diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Documentation~/CinemachineBrainProperties.md" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Documentation~/CinemachineBrainProperties.md" new file mode 100644 index 00000000..a6efeb54 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Documentation~/CinemachineBrainProperties.md" @@ -0,0 +1,48 @@ +# Setting Cinemachine Brain properties + +The Cinemachine Brain is a component in the Unity camera itself. Cinemachine Brain monitors all active Virtual Cameras in the Scene. It chooses the next Virtual Camera to control the Unity camera. It also controls the [cut or blend](CinemachineBlending.html) from the current Virtual Camera to the next. + +To add a Cinemachine Brain component to a Unity camera, do __one__ of the following: + +* [Add a Virtual Camera](CinemachineSetUpVCam.html), or other Cinemachine object, to your Scene. Unity adds a Cinemachine Brain component to the Unity camera for you if there isn’t one already. + +* [Add](https://docs.unity3d.com/Manual/UsingComponents.html) a Cinemachine Brain component to the Unity camera yourself. + +**Tip**: You can also control Virtual Cameras from [Timeline](CinemachineTimeline.html). Timeline overrides the decisions that Cinemachine Brain makes. + +Cinemachine Brain holds the following key properties: + +* __Blend Settings__: A list that defines how to blend from one Virtual Camera to another. For example, add an item to the list for a 4 second blend from vcam1 to vcam2 then add another item for a 1 second blend from vcam2 back to vcam1. If a blend between two cameras isn’t defined, Cinemachine Brain uses its default blend. + +* __Layer Filter__: Cinemachine Brain uses only those Virtual Cameras that pass the culling mask of the Unity camera. You can set up [split-screen environments](CinemachineMultipleCameras.html) by using the culling mask to filter layers. + +* __Event Dispatching__: Cinemachine Brain fires events when it changes shot. It fires an event when a Virtual Camera goes live. It also fires an event when it cuts from one Virtual Camera to another. Use the latter event to reset temporal post effects. + +![Cinemachine Brain, a component in the Unity camera](images/CinemachineBrain.png) + +## Properties: + +| **Property:** || **Function:** | +|:---|:---|:---| +| __Show Debug Text__ || Check to display a textual summary of the live Virtual Camera and blend in the view. | +| __Show Camera Frustum__ || Check to display the frustum of the camera in the Scene view. | +| __Ignore Time Scale__ || Check to make the Virtual Cameras respond in real time to user input and damping, even if the game is running in slow motion. | +| __World Up Override__ || The Y axis of the specified GameObject defines the worldspace up vector for Virtual Cameras. Use this property in top-down game environments. Set to None to use the worldspace Y axis. Setting this appropriately is important to avoid gimbal-lock in extreme up/down conditions. | +| __Update Method__ || When to update the position and rotation of the Virtual Cameras. | +| | _Fixed Update_ | Synchronize Virtual Camera update with the Physics module, in FixedUpdate. | +| | _Late Update_ | In MonoBehaviour LateUpdate. | +| | _Smart Update_ | Update each virtual camera according to how its target is updated. This is the recommended setting. | +| __Default Blend__ || The blend to use when you haven’t explicitly defined a blend between two Virtual Cameras. | +| | _Cut_ | Zero-length blend. | +| | _Ease In Out_ | S-shaped curve, giving a gentle and smooth transition. | +| | _Ease In_ | Linear out of the outgoing shot, and easy into the incoming. | +| | _Ease Out_ | Easy out of the outgoing shot, and linear into the incoming. | +| | _Hard In_ | Easy out of the outgoing, and hard into the incoming. | +| | _Hard Out_ | Hard out of the outgoing, and easy into the incoming. | +| | _Linear_ | Linear blend. Mechanical-looking. | +| | _Custom_ | Custom blend curve. Draw the curve you want. | +| __Custom Blends__ || The asset that contains custom settings for blends between specific Virtual Cameras in your Scene. | +| __Create Asset__ || Create an asset containing a [list of custom blends](CinemachineBlending.html) between Virtual Cameras. | +| __Camera Cut Event__ || This event fires when a Virtual Camera goes live and there is no blend. | +| __Camera Activated Event__ || This event fires when a Virtual Camera goes live. If a blend is involved, then the event fires on the first frame of the blend. | + diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Documentation~/CinemachineClearShot.md" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Documentation~/CinemachineClearShot.md" new file mode 100644 index 00000000..255bc066 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Documentation~/CinemachineClearShot.md" @@ -0,0 +1,26 @@ +# Cinemachine Clear Shot Camera + +The __Cinemachine ClearShot Camera__ component chooses among its children Virtual Cameras for the best quality shot of the target. Use Clear Shot to set up complex multi-camera coverage of a Scene to guarantee a clear view of the target. + +This can be a very powerful tool. Virtual Camera children with [Cinemachine Collider](CinemachineCollider.html) extensions analyze the Scene for target obstructions, optimal target distance, and so on. Clear Shot uses this information to choose the best child to activate. + +**Tip:** To use a single [Cinemachine Collider](CinemachineCollider.html) for all Virtual Camera children, add a Cinemachine Collider extension to the ClearShot GameObject instead of each of its Virtual Camera children. This Cinemachine Collider extension applies to all of the children, as if each of them had that Collider as its own extension. + +If multiple child cameras have the same shot quality, the Clear Shot camera chooses the one with the highest priority. + +You can also define custom blends between the ClearShot children. + +## Properties: + +| **Property:** | **Function:** | +|:---|:---| +| __Look At__ | The default target GameObject that the children Virtual Camera move with. The Clear Shot camera uses this target when the child does not specify this target. May be empty if all of the children define targets of their own. | +| __Follow__ | The target GameObject to aim the Unity camera at. The Clear Shot camera uses this target when the child does not specify this target. May be empty if all of the children define targets of their own. | +| __Show Debug Text__ | Check to display a textual summary of the live Virtual Camera and blend in the Game view. | +| __Activate After__ | Wait this many seconds before activating a new child camera. | +| __Min Duration__ | An active camera must be active for at least this many seconds, unless a higher-priority camera becomes active. | +| __Randomize Choice__ | Check to choose a random camera if multiple cameras have equal shot quality. Uncheck to use the order of the child Virtual Cameras and their priorities. | +| __Default Blend__ | The blend to use when you haven’t explicitly defined a blend between two Virtual Cameras. | +| __Priority__ | Determine which camera becomes active based on the state of other cameras and this camera. Higher numbers have greater priority. | + + diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Documentation~/CinemachineCollider.md" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Documentation~/CinemachineCollider.md" new file mode 100644 index 00000000..264712d1 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Documentation~/CinemachineCollider.md" @@ -0,0 +1,34 @@ +# Cinemachine Collider + +__Cinemachine Collider__ is an [extension](CinemachineVirtualCameraExtensions.html) for the Cinemachine Virtual Camera. It post-processes the final position of the Virtual Camera to attempt to preserve the line of sight with the __Look At__ target of the Virtual Camera. It does this by moving away from the GameObjects that obstruct the view. + +Add a Cinemachine Collider extension to a Cinemachine Virtual Camera to do any of the following tasks: + +* Push the camera away from obstructing obstacles in the Scene. + +* Place the camera in front of obstacles that come between the Virtual Camera and its __Look At__ target. + +* Evaluate shot quality. __Shot quality__ is a measure of the distance of the Virtual Camera from its ideal position, the distance of the Virtual Camera to its target, and the obstacles that block the view of the target. Other modules use shot quality, including [Clear Shot](CinemachineClearShot.html). + +The Collider uses a [Physics Raycaster](https://docs.unity3d.com/Manual/script-PhysicsRaycaster.html). Therefore, Cinemachine Collider requires that potential obstacles have [collider](https://docs.unity3d.com/Manual/CollidersOverview.html) volumes. There is a performance cost for this requirement. If this cost is prohibitive in your game, consider implementing this functionality in a different way. + +## Properties: + +| **Property:** || **Function:** | +|:---|:---|:---| +| __Collide Against__ || Cinemachine Collider considers GameObjects in these layers to be potential obstacles. It ignores GameObjects that are not in the selected layers. | +| __Minimum Distance From Target__ || Ignore obstacles that are less than this distance from the target's pivot point. | +| __Avoid Obstacles__ || Check to allow the Collider to move the camera in the Scene when the target is obscured by an obstacle. Use the Distance Limit, Camera Radius, and Strategy properties to adjust how to avoid obstacles. If left unchecked, the Cinemachine Collider will report shot quality based on obstacles, but will not attempt to move the camera to improve the shot. | +| __Distance Limit__ || The maximum raycast distance when checking if the line of sight to this camera’s target is clear. Enter 0 to use the current actual distance to the target. Available when Avoid Obstacles is checked. | +| __Camera Radius__ || Distance to maintain from any obstacle. Try to keep this value small for best results. Increase it if you are seeing inside obstacles due to a large FOV on the camera. Available when Avoid Obstacles is checked. | +| __Strategy__ || The way in which the Collider attempts to preserve sight of the target. Available when Avoid Obstacles is checked. | +| | _Pull Camera Forward_ | Move the camera forward along its Z axis until it is in front of the obstacle that is nearest to the target. | +| | _Preserve Camera Height_ | Move the camera to an alternate point of view while attempting to keep the camera at its original height. | +| | _Preserve Camera Distance_ | Move the camera to an alternate point of view while attempting to keep the camera at its original distance from the target. | +| | _Smoothing Time_ | Minimum number of seconds to hold the camera at the nearest point to the target. Can be used to reduce excess camera movement in environments with lots of obstacles. Available when Avoid Obstacles is checked. | +| __Damping__ || How quickly to return the camera to its normal position after an occlusion has gone away. Small numbers make the camera more responsive. Larger numbers make the camera respond more slowly. Available when Avoid Obstacles is checked. | +| __Damping When Occluded__ || How quickly to move the camera to avoid an obstacle. Small numbers make the camera more responsive. Larger numbers make the camera respond more slowly. Available when Avoid Obstacles is checked. | +| __Optimal Target Distance__ || If greater than zero, give a higher score to shots when the target is closer to this distance. Set this property to 0 to disable this feature. | + + + diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Documentation~/CinemachineColliderConfiner.md" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Documentation~/CinemachineColliderConfiner.md" new file mode 100644 index 00000000..89480b25 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Documentation~/CinemachineColliderConfiner.md" @@ -0,0 +1,7 @@ +# Avoiding collisions and evaluating shots + +As characters and objects move around in a complex Scene, obstacles in the Scene sometimes come between a camera and its target. Similarly, you might need to move a camera to a position in the Scene that another GameObject already occupies. Cinemachine provides extensions to handle these situations: + +* [Cinemachine Collider](CinemachineCollider.html) +* [Cinemachine Confiner](CinemachineConfiner.html) + diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Documentation~/CinemachineCollisionImpulseSource.md" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Documentation~/CinemachineCollisionImpulseSource.md" new file mode 100644 index 00000000..b0695447 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Documentation~/CinemachineCollisionImpulseSource.md" @@ -0,0 +1,115 @@ +#Cinemachine Collision Impulse Source + +For collision-based impulses, attach a **CinemachineCollisionImpulseSource** component to a GameObject that has a Collider or Collider2D component. **CinemachineCollisionImpulseSource** generates an impulse when something collides with the GameObject or enters a trigger zone. + +To add a Collision Impulse Source component: + +1. Select the GameObject that you want to trigger impulses, navigate to its Inspector, and click the **Add Component** button. + +2. Go to **Scripts > Cinemachine** and select **Cinemachine Collision Impulse Source**. + +By default, an Impulse Source affects every [Impulse Listener](CinemachineImpulseListener.md) in range, but you can apply [channel filtering](CinemachineImpulseFiltering.md#ChannelFiltering) to make Impulse Sources affect some Impulse Listeners and not others. + +## Properties: + +The properties in the Cinemachine Collision Impulse Source Inspector window are divided into the following sections. + +- [Impulse Channel](#ImpulseChannel) (A) +- [Signal Shape](#SignalShape) (B) +- [Time Envelope](#TimeEnvelope) (C) +- [Spatial Range](#SpatialRange) (D) +- [Trigger Object Filter](#TriggerObject) (E) +- [How to Generate The Impulse](#GenerateImpulse) (F) + + +![](images/InspectorCollisionImpulseSource.png) + + + +### Impulse Channel + +Impulse Listeners filter impulses based on channels to control which Impulse Sources they react to. Channels work like Camera Layers, but are distinct from them. These properties control the channels that the Collision Impulse Source broadcasts impulse signals on. For details, see documentation on [Filtering](CinemachineImpulseFiltering.md). + +![](images/InspectorImpulseSourceChannel.png) + +| **Property:** | **Function:** | +| ------------------- | ------------------------------------------------------------ | +| **Impulse Channel** | Choose one or more channels from the drop-down.

Click **Edit** to modify existing channels or add new ones. | + + + +### Signal Shape + +These properties control the basic characteristics of the raw signal when it is emitted by the Collision Impulse Source. + +![](images/InspectorImpulseSourceSignal.png) + +| **Property:** | **Function:** | +| -------------- | ------------------------------------------------------------ | +| **Raw Signal** | The raw signal form.

Drag a signal Asset onto the signal name to connect the signal to the Collision Impulse Source.

Click the “gear” icon for additional signal options, including options for creating new signals.

See [Raw Vibration Signals](CinemachineImpulseRawSignal.md) for details.| +|**Amplitude Gain** | Set a value by which to multiply the amplitude of **Raw Signal**. This controls the strength of the vibrations. This is set to 1 by default.

Use values greater than 1 to amplify the signal, 1 for the original signal, values less than 1 and greater than 0 to attenuate the signal, and 0 to mute the signal. | +|**Frequency Gain**|Set a value by which to multiply the frequency of **Raw Signal**. This controls the speed of the vibrations. This is set to 1 by default.

Use values greater than one to increase the frequency, 1 for the original signal, values less than 1 and greater than 0 to reduce the frequency of the signal. A frequency of 0 holds a single noise value indefinitely, as though time were frozen.| +|**Randomize**|Enable this to randomize the **Raw Signal’s** start time.

This property is available when the **Raw Signal** is a noise profile Asset. See [Raw Vibration Signals](CinemachineImpulseRawSignal.md) for details.| +|**Repeat Mode**|Specify whether to loop the **Raw Signal** over the duration of the time envelope, or stretch it to fit the time envelope.

This property is available when the **Raw Signal** is a fixed signal. See [Raw Vibration Signals](CinemachineImpulseRawSignal.md) for details.| + + + +### Time Envelope + +These properties control the duration of the impulse and the intensity of the **Raw Signal** over that duration. + +![](images/InspectorImpulseTimeEnvelope.png) + +| Property: | Function: | +| --------------------- | ------------------------------------------------------------ | +| **Attack** | Define how the signal reaches full amplitude at the beginning of the waveform. Click the preview pane (grey bar) to set the shape of the curve, and use the numerical field to set the time (in seconds) to reach the full amplitude. Leave the preview pane blank to use a default curve that is suitable for most purposes. | +| **Sustain Time** | Set the time to maintain the full amplitude of the waveform after the attack. | +| **Decay** | Define how the signal goes from full amplitude to zero the end of the waveform. Click the preview pane (grey bar) to set the shape of the curve, and use the numerical field to set the time (in seconds) to mute the signal. Leave the preview pane blank to use a default curve that is suitable for most purposes. | +| **Scale With Impact** | Enable this to apply signal amplitude scaling to **Time Envelope**. If checked, the Cinemachine Collision Impulse Source component scales the time envelope according to the strength of the impact: stronger impacts last longer, and milder impacts have a shorter duration. | + + + +### Spatial Range + +These properties define a zone in the Scene. The impulses from this Impulse Source only affect Impulse Listeners in this zone. + +![](images/InspectorImpulseSourceSpatialRange.png) + +| Property:|| Function:| +|--|--|--| +|**Impact Radius**||Set the radius of the space in the Scene around the impact point where the signal stays at full amplitude. Beyond that the signal strength fades out over the dissipation distance. After that, the strength is zero. In other words, the total effect radius of the signal is **Impact Radius** + **Dissipation Distance**.| +|**Direction Mode**||Define how the Cinemachine Collision Impulse Source component should apply the direction of the signal as the Impulse Listener moves away from the Impulse Source.| +||Fixed|Use **Fixed** to use a constant signal direction.| +||Rotate Toward Source|Use **Rotate Toward Source** to rotate the signal in the direction of the Impulse Source, giving a subtle visual clue about the source’s location. **Rotate Toward Source** has no effect on radially-symmetric signals.| +|**Dissipation Mode**||Define how the signal dissipates when the listener is outside the **Impact Radius**.| +||Linear Decay|The signal dissipates evenly over the **Dissipation Distance**.| +||Soft Decay|The signal dissipates slowly at the beginning of the **Dissipation Distance**, more quickly in the middle, and slowly again as it reaches the end.| +|| Exponential Decay|The signal dissipates very quickly at the beginning of the **Dissipation Distance**, then more and more slowly as it reaches the end.| +|**Dissipation Distance**||Set the distance beyond the impact radius over which the signal decays from full strength to nothing.| + + + +### Trigger Object Filter + +These properties filter the GameObjects that trigger an impulse when they collide or enter the trigger zone. GameObjects in layers specified by the **Layer Mask** trigger impulses unless you tag them with the **Ignore Tag** value. For details, see documentation on [Filtering](CinemachineImpulseFiltering.md). + +![](images/InspectorImpulseSourceTriggerObject.png) + +| Property: | Function: | +| -------------- | ------------------------------------------------------------ | +| **Layer Mask** | Rigidbody components in these layers that collide with an Impulse Source or enter the trigger zone cause the Source to broadcast its signal. | +| **Ignore Tag** | GameObjects with this tag do not generate an impulse, even if they are in a layer specified in **Layer Mask**. | + + + +### How To Generate The Impulse + +An impulse is triggered at a location by an impact mass moving at an impact velocity. Unity dynamically calculates the mass and velocity of the Rigidbody or Rigidbody 2D component that triggers the impulse. The **How To Generate The Impulse** properties control how the mass and velocity of the Rigidbody affect the strength and direction of the signal. + +![](images/InspectorImpulseSourceHowToGenerate.png) + +| Property: | Function: | +| --------------------------- | ------------------------------------------------------------ | +| **Use Impact Direction** | Enable this setting to rotate the impulse signal to correspond to the direction of the impact velocity. For example, if the raw signal vibrates vertically but the impact direction is horizontal, you could check this property to make the resulting impulse signal vibrate horizontally.

Disable to use the direction of the raw signal irrespective of the impact direction. | +| **Scale Impact With Mass** | Enable this setting to increase or decrease the amplitude of the impulse signal based on the mass of the colliding GameObjects. The masses are specified in the Rigidbody or RigidBody2D component of the GameObject that contains the Cinemachine Impulse Source, and of the colliding GameObject.

Disable this setting to use a constant mass of 1. | +| **Scale Impact With Speed** | Enable this setting to scale the amplitude of the signal based on the speed of the impact. Faster moving GameObjects have a greater momentum, and therefore produce a stronger signal.

Disable this setting to ignore the speed of the colliding GameObject. | diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Documentation~/CinemachineConfiner.md" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Documentation~/CinemachineConfiner.md" new file mode 100644 index 00000000..8c565c4e --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Documentation~/CinemachineConfiner.md" @@ -0,0 +1,19 @@ +# Cinemachine Confiner + +Use the __Cinemachine Confiner__ [extension](CinemachineVirtualCameraExtensions.html) to limit the camera’s position to a volume or area. + +Confier operates in 2D or 3D mode. The mode influences the kind of bounding shape it accepts. In 3D mode, the camera’s position in 3D is confined to a volume. This also works for 2D games, but you need to take the depth into account. In 2D mode, you don’t have to worry about depth. + +For orthographic cameras, there is an additional option to confine the screen edges, not just the camera point. This ensures that the entire screen area stays within the bounding area. + +| **Property:** || **Function:** | +|:---|:---|:---| +| __Confine Mode__ || Operate using a 2D bounding area or a 3D bounding volume. | +| | _Confine 2D_ | Use a Collider2D bounding area. | +| | _Confine 3D_ | Use a 3D Collider bounding volume. | +| __Bounding Volume__ || The 3D volume to contain the camera in. This property is available when Confine Mode is set to Confine 3D. | +| __Bounding Shape 2D__ || The 2D area to contain the camera in. This property is available when Confine Mode is set to Confine 2D. | +| __Confine Screen Edges__ || Check to confine screen edges to the area when the camera is orthographic. When unchecked, confine only the camera center. Has no effect if camera is in perspective mode. | +| __Damping__ || How gradually to return the camera to the bounding volume or area if it goes beyond the borders. Higher numbers are more gradual. | + + diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Documentation~/CinemachineDocRevisionHistory.md" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Documentation~/CinemachineDocRevisionHistory.md" new file mode 100644 index 00000000..ec869d25 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Documentation~/CinemachineDocRevisionHistory.md" @@ -0,0 +1,8 @@ +# Document Revision History + +| **Date:** | **Reason:** | +|:---|:---| +| July 3, 2018 | Updated for 2.2.6. | +| February 15, 2018 | Updated for 2.1.11. | +| November 21, 2017 | Initial version. | + diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Documentation~/CinemachineDolly.md" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Documentation~/CinemachineDolly.md" new file mode 100644 index 00000000..63db64d5 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Documentation~/CinemachineDolly.md" @@ -0,0 +1,36 @@ +# Using dolly paths + +A dolly path is an array of waypoints in a Scene. Use a dolly path to specify a fixed course to position or animate a Virtual Camera. Use the [Tracked Dolly](CinemachineBodyTrackedDolly.html) algorithm to use a dolly path with your Virtual Camera. + +![Editing a dolly path in the Scene view](images/CinemachinePathScene.png) + +![Editing a dolly path in the Inspector window](images/CinemachinePathInspector.png) + +Cinemachine provides two types of dolly paths: + +* [Smooth Path](CinemachineSmoothPath.html): Each waypoint has a position and roll. Cinemachine uses Bezier interpolation between the waypoints. Smooth Path gives you less control over the position of the path but animation along the path is always smooth and continuous. This is the recommended path type. + +* [Path](CinemachinePath.html): Each waypoint has a position, tangent, and roll. Use Path for finer control of the track’s position between waypoints. Animating a VIrtual Camera along a Path might cause jerky motion over waypoints when tangents don’t allow a smooth transition to and from the waypoint. + +To create a Virtual Camera with a dolly path: + +1. In the Unity menu, choose __Cinemachine > Create Dolly Camera with Track__. A new Virtual Camera and dolly track appears in the [Hierarchy]([https://docs.unity3d.com/Manual/Hierarchy.html](https://docs.unity3d.com/Manual/Hierarchy.html)). By default, the dolly track GameObject is a Smooth Path. + +2. In the [Hierarchy]([https://docs.unity3d.com/Manual/Hierarchy.html](https://docs.unity3d.com/Manual/Hierarchy.html)) window, select the new dolly track GameObject. + +3. In the [Inspector]([https://docs.unity3d.com/Manual/UsingTheInspector.html](https://docs.unity3d.com/Manual/UsingTheInspector.html)), add and adjust waypoints. + +To create a path GameObject: + +1. In the Unity menu, choose __GameObject > Create Empty.__ + +2. [Add the path component](https://docs.unity3d.com/Manual/UsingComponents.html), either __CinemachinePath__ or __CinemachineSmoothPath__ + +To edit a waypoint in a path: + +1. In the [Hierarchy]([https://docs.unity3d.com/Manual/Hierarchy.html](https://docs.unity3d.com/Manual/Hierarchy.html)) window, select the path GameObject. + +2. Select a waypoint by either clicking its index number in the [Scene](https://docs.unity3d.com/Manual/UsingTheSceneView.html) view or clicking its number in the __Path Details__ section in the [ Inspector](https://docs.unity3d.com/Manual/UsingTheInspector.html). + +3. Edit the waypoint by [manipulating its Gizmo](https://docs.unity3d.com/Manual/PositioningGameObjects.html) in the Scene view or edit its properties in the Inspector.
__Note__: When editing a waypoint for a regular path in the Scene view, the waypoint has two Gizmos: for the position and for the tangent. + diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Documentation~/CinemachineDollyCart.md" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Documentation~/CinemachineDollyCart.md" new file mode 100644 index 00000000..1d5c32ab --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Documentation~/CinemachineDollyCart.md" @@ -0,0 +1,16 @@ +# Cinemachine Dolly Cart + +__Cinemachine Dolly Cart__ is a component that constrains the transform of its GameObject to a __Cinemachine Path__ or __Cinemachine Smooth Path__. Use it to animate a GameObject along a path, or as a __Follow__ target for Virtual Cameras. + +## Properties: + +| **Property:** || **Function:** | +|:---|:---|:--- +| __Path__ || The path to follow. | +| __Update Method__ || When to move the cart when velocity is non-zero. Use __Update__ for normal `MonoBehaviour` updating, __Fixed Update__ for updates in sync with the Physics module, `FixedUpdate()`. | +| __Position Units__ || The unit of measure for __Position__. | +| | _Path Units_ | Use waypoints along the path. The value 0 represents the first waypoint on the path, 1 is the second waypoint, and so on. | +| | _Distance_ | Use distance along the path. The path is sampled according to the Resolution property of the path. Cinemachine creates a distance lookup table, which it stores in an internal cache. | +| | _Normalized_ | Use the beginning and end of the path. The value 0 represents the beginning of the path, 1 is the end of the path. | +| __Speed__ || Move the cart with this speed. The value is interpreted according to __Position Units__. | +| __Position__ || The position along the path to place the cart. This can be animated directly or, if the speed is non-zero, will be updated automatically. The value is interpreted according to __Position Units__. | diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Documentation~/CinemachineExternalCamera.md" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Documentation~/CinemachineExternalCamera.md" new file mode 100644 index 00000000..12122e84 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Documentation~/CinemachineExternalCamera.md" @@ -0,0 +1,10 @@ +# Cinemachine External Camera + +This component will expose a non-cinemachine camera to the cinemachine system, allowing it to participate in blends. Just add it as a component alongside an existing Unity Camera component. You will need to take steps (e.g. disabling the Camera component) to ensure that the Camera does not fight with the main Cinemachine Camera. This component is deprecated in favour of using a normal CinemachineVirtualCamera with Do Nothing in both Aim and Body. + +## Properties: + +| **Property:** | **Function:** | +|:---|:---| +| __Look At__ | The object that the camera is looking at, if defined. This can be empty, but setting this will improve the quality of the blends to and from this camera. | +| __Blend Hint__ | Hint for blending positions to and from this camera. | diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Documentation~/CinemachineFollowZoom.md" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Documentation~/CinemachineFollowZoom.md" new file mode 100644 index 00000000..3fb5eb5e --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Documentation~/CinemachineFollowZoom.md" @@ -0,0 +1,13 @@ +# Cinemachine Follow Zoom + +This [extension](CinemachineVirtualCameraExtensions.html) adjusts the FOV of the lens to keep the target object at a constant size on the screen, regardless of camera and target position. + +## Properties: + +| **Property:** | **Function:** | +|:---|:---| +| __Width__ | The shot width to maintain, in world units, at target distance. The FOV will be adjusted so that an object of this size, at target distance, will fill the screen. | +| __Damping__ | Increase this value to soften the responsiveness of the follow-zoom. Small numbers make the camera more responsive. Larger numbers make the camera respond more slowly. | +| __Min FOV__ | Lower limit for the FOV that this behavior generates. | +| __Max FOV__ | Upper limit for the FOV that this behavior generates. | + diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Documentation~/CinemachineFreeLook.md" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Documentation~/CinemachineFreeLook.md" new file mode 100644 index 00000000..60c3809e --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Documentation~/CinemachineFreeLook.md" @@ -0,0 +1,57 @@ +# Cinemachine Free Look Camera + +The __Cinemachine Free Look Camera__ component provides a third-person camera experience. This Cinemachine Virtual Camera orbits around its subject along a position specified by three separate camera rigs: __Top__, __Middle__, and __Bottom__. + +![Cinemachine Free Look in the Scene window](images/CinemachineFreelook.png) + +Each rig defines a ring around the target, with its own radius, height offset, composer, lens properties, and Noise settings. These are the same as the [properties for a regular Virtual Camera](CinemachineVirtualCamera.html). + +Cinemachine Free Look Camera also defines a spline that connects the rigs. The spline defines the camera’s position when blending between the rigs. + +![Cinemachine Free Look properties for spline, and the __Top__, __Middle__, and __Bottom__ rigs](images/CinemachineFreeLookProperties.png) + +Free Look uses player input along the x and y axes. The x axis controls the orbital position along the __Top__, __Middle__, or __Bottom__ horizontal orbits, like the [Orbital Transposer](CinemachineBodyOrbitalTransposer.html). The y-axis controls the vertical position, using the spline to determine the position between rigs. + +## Properties: + +| **Property:** || **Function:** | +|:---|:---|:---| +| __Solo__ || Toggles whether or not the Virtual Camera is temporarily live. Use this property to get immediate visual feedback in the [Game view](https://docs.unity3d.com/Manual/GameView.html) to adjust the Virtual Camera. | +| __Game Window Guides__ || Toggles the visibility of compositional guides in the Game view. These guides are available when Look At specifies a GameObject and the Aim section uses Composer or Group Composer, or when Follow specifies a target and the Body section uses Framing Composer. This property applies to all Virtual Cameras. | +| __Save During Play__ || Check to [apply the changes while in Play mode](CinemachineSavingDuringPlay.html). Use this feature to fine-tune a Virtual Camera without having to remember which properties to copy and paste. This property applies to all Virtual Cameras. | +| __Priority__ || The importance of this Virtual Camera for choosing the next shot. A higher value indicates a higher priority. Cinemachine Brain chooses the next live Virtual Camera from all Virtual Cameras that are activated and have the same or higher priority as the current live Virtual Camera. This property has no effect when using a Virtual Camera with Timeline. | +| __Follow__ || The target GameObject to move with. The [Body properties](CinemachineVirtualCameraBody.html) use this target to update the position of the Unity camera. | +| __Look At__ || The target GameObject to aim at. The [Aim properties](CinemachineVirtualCameraAim.html) use this target to update the rotation of the Unity camera. This property is normally the same as the Follow target. | +| __Common Lens__ || Check to apply a common lens setting to all three child rigs. Uncheck to use separate lens settings for each child rig. | +| __Lens__ || If Common Lens is checked, these lens settings apply to all three rigs. These properties mirror their counterparts in the property settings for the [Unity camera](https://docs.unity3d.com/Manual/class-Camera.html). | +| | _Field Of View_ | This is the camera view in vertical degrees. For example, to specify the equivalent of a 50mm lens on a Super 35 sensor, enter a Field of View of 19.6 degrees. This property is available when the Unity camera with the Cinemachine Brain component uses a Projection of Perspective. | +| | _Orthographic Size_ | When using an orthographic camera, this defines the half-height, in world coordinates, of the camera view. This property is available when the Unity camera with the Cinemachine Brain component uses a Projection of Orthographic. | +| | _Near Clip Plane_ | The closest point relative to the camera where drawing occurs. | +| | _Far Clip Plane_ | The furthest point relative to the camera where drawing occurs. | +| | _Dutch_ | Dutch angle. Tilts the Unity camera on the Z axis, in degrees. This property is unique to the Virtual Camera; there is no counterpart property in the Unity camera. | +| __Transitions__ || | +| | _Blend Hint_ | How to blend to and from the Free Look camera. Use None for default linear interpolation of position and aim. Use Spherical Position to blend spherically about the Look At position, linearly blending between Look At targets. Use Cylindrical Position to blend in a cylindrical path around the Look At target and interpolate linearly on the vertical axis. Use Screen Space Aim When Targets Differ for a standard linear position blend, with screen-space angular blend between differing Look At targets. | +| | _Inherit Position_ | When this virtual camera goes Live, attempt to force the position to be the same as the current position of the Unity Camera, allowing the virtual camera to apply its damping to accomplish the blend | +| | _Camera Activated_ | This event is invoked when the Virtual Camera becomes live. Attach custom handlers here if you need them. | +| __Y Axis, X Axis__ || The vertical and horizontal axes for blending between rigs. For Y Axis the Value range is 0 to 1 and represents the blend position between the Top, Middle, and Bottom rigs. The value 0.5 represents the middle rig. For X Axis, the Value is the angular deviation (in degrees) of the camera from directly behind the target. | +| | _Max Speed_ | The maximum speed of this axis in units/second. | +| | _Accel Time_ | The amount of time in seconds to accelerate to Max Speed. | +| | _Decel Time_ | The amount of time in seconds to decelerate to zero. | +| | _Input Axis Name_ | The name of this axis as specified in Unity Input manager. Setting to an empty string disables the automatic updating of the axis. | +| | _Input Axis Value_ | The value of the input axis. A value of 0 means no input. To drive this directly, use a custom input system. Or you set the Axis Name to control the value with the Unity Input Manager. | +| | _Invert_ | Check to invert the raw value of the input axis. | +| __Y Axis Recentering__ || Controls the automatic recentering on the y axis. | +| | _Enabled_ | Check to enable automatic recentering. | +| | _Wait Time_ | When no user input has been detected on the axis, the camera waits this long in seconds before recentering. | +| | _Recentering Time_ | Maximum angular speed of recentering. Accelerates into and decelerates out of the centered position. | +| __Orbits__ || Properties for defining the Top, Middle, and Bottom rigs. | +| __Binding Mode__ || The coordinate space to use to interpret the offset from the target. Also sets the up vector. Cinemachine keeps the camera oriented in the up direction while aiming. These modes do incredibly different things, so try them out and one should work well for whatever your requirements are. | +| | _Lock To Target On Assign_ | The target’s local frame at the moment when the Virtual Camera was activated, or when the target was assigned. | +| | _Lock To Target With World Up_ | The target’s local frame, with the tilt and roll reset to zero. | +| | _Lock To Target No Roll_ | The target’s local frame, with the roll reset to zero. | +| | _Lock To Target_ | The target’s local frame. | +| | _World Space_ | World space offset. | +| | _Simple Follow With World Up_ | Relative to the target, using camera-local axes. | +| __Spline Curvature__ || The tautness of the line that connects the rigs’ orbits. This line determines the final placement on the y axis. | +| __Height, Radius__ || The radius and height of the Top, Middle, and Bottom rigs relative to the Follow target. | + diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Documentation~/CinemachineGettingStarted.md" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Documentation~/CinemachineGettingStarted.md" new file mode 100644 index 00000000..edc245eb --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Documentation~/CinemachineGettingStarted.md" @@ -0,0 +1,36 @@ +# Getting started + +Follow the steps in this section to install Cinemachine in your project. Get started quickly with a few Virtual Cameras, then gradually add more sophisticated features as needed. + +## Installing Cinemachine + +Cinemachine is a free package, available for any project. You install Cinemachine like [any other package](https://docs.unity3d.com/Packages/com.unity.package-manager-ui@latest/index.html). + +After you install Cinemachine, a new *Cinemachine* folder appears in the Gizmos folder of your Project window, and a new __Cinemachine__ menu is available. + +![Cinemachine menu in the Unity Editor](images/CinemachineMenu.png) + +## Upgrading from the Cinemachine Asset Package + +If you already installed Cinemachine from the Unity Asset Store, you can upgrade to the Cinemachine Package. + +To upgrade to the Cinemachine Package: + +1. In Unity Editor, 2018.1 or later, open your project. + +2. Save the current Scene you are working on. + +3. Create a new, empty Scene. + +4. In the [Project window](https://docs.unity3d.com/Manual/ProjectView.html), delete the Cinemachine Asset and any CinemachinePostProcessing adaptor assets you may have installed. + +5. Install the Cinemachine package. + +## Learning more about Cinemachine + +Use the [Unity Tutorials](https://unity3d.com/learn/tutorials/s/animation) to see demonstrations for setting up and using Cinemachine. + +Experiment with the example Assets. In the Unity menu, choose __Cinemachine > Import Example Asset Package__ to import these Assets. + +Discuss your Cinemachine challenges and ideas in the [Cinemachine community forum](https://forum.unity.com/forums/cinemachine.136) and in the [Answers page](https://answers.unity.com/search.html?sort=relevance&q=cinemachine). + diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Documentation~/CinemachineImpulse.md" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Documentation~/CinemachineImpulse.md" new file mode 100644 index 00000000..a9e105f5 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Documentation~/CinemachineImpulse.md" @@ -0,0 +1,23 @@ +# Impulse + +Cinemachine Impulse generates and manages camera shake in response to game events. For example, you can use Impulse to make a Cinemachine Virtual Camera shake when one GameObject collides with another, or when something in your Scene explodes. + +Impulse has three parts: + +- **[Raw vibration signal](CinemachineImpulseRawSignal.md):** a vibration curve in up to 6 dimensions: X, Y, Z, pitch, roll, yaw. + +- **[Impulse Source](CinemachineImpulseSourceOverview.md):** a component that emits the raw vibration signal from a point in Scene space, and defines signal characteristics such as duration, intensity, and range. + +- **[Impulse Listener](CinemachineImpulseListener.md):** a Cinemachine extension that allows a Virtual Camera to “hear” an impulse, and react to it by shaking. + +It’s useful to think about this in terms of individual “impulses.” An impulse is a single occurrence of an Impulse Source emitting a raw vibration signal. Collisions and events in your Scenes _trigger_ impulses, Impulse Sources _generate_ impulses, and Impulse Listeners _react_ to impulses. + +## Getting started with Impulse + +To set up and use Impulse in a Scene, do the following: + +- Add **[Cinemachine Impulse Source](CinemachineImpulseSource.md)** or **[Cinemachine Collision Impulse Source](CinemachineCollisionImpulseSource.md)** components to one or more GameObjects that you want to trigger camera shake. + +- Connect Raw Signals to the Impulse Sources. These can be **[6D Noise Profiles](CinemachineImpulseNoiseProfiles.md)**, **[3D Fixed Signals](CinemachineImpulseFixedSignals.md)**, or custom signal types that you create yourself. + +- Add a **[Cinemachine Impulse Listener](CinemachineImpulseListener.md)** extension to one or more Cinemachine virtual cameras so they can detect and react to impulses. \ No newline at end of file diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Documentation~/CinemachineImpulseFiltering.md" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Documentation~/CinemachineImpulseFiltering.md" new file mode 100644 index 00000000..a48c2161 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Documentation~/CinemachineImpulseFiltering.md" @@ -0,0 +1,69 @@ +# Filtering impulses + +Filtering lets you fine-tune how and when an Impulse Source generates impulses. Cinemachine Impulse allows two types of filtering: + +- Use channel filtering to set things up so that an Impulse Listener reacts to certain Impulse Sources and ignores others. See [Filtering with channels](#ChannelFiltering) below for details. + +- Use Trigger Object Filtering with Collision Impulse Sources to set things up so that only certain GameObjects trigger an impulse. See [Filtering with layers and tags](#TriggerObjectFiltering) for details. + + +## Filtering with channels + +By default, every Impulse Listener reacts to every Impulse Source within range. Channels allow you to more precisely control which Impulse Sources an Impulse Listener reacts to. To set up channel filtering, you need to do three things: + +- Set up your channels +- Set your Impulse Sources to broadcast on one or more channels +- Set your Impulse Listeners to listen to one or more channels + +When an Impulse Listener is listening to specific channels, it only reacts to Impulse Sources that broadcast on those channels. + +### Adding channels + +The **CinemachineImpulseChannels** script creates channels in your Scene. It has one channel by default, and you can add as many new channels as you need, up to a maximum of 31. + +To add new channels: + +1. Inspect the **CinemachineImpulseChannels** script by doing one of the following: + + - In the Cinemachine Impulse Listener inspector, navigate to the **Channel Mask** drop-down and click the **Edit** button next to it. + + - In the Cinemachine Impulse Source or Cinemachine Collision Impulse Source inspector, navigate to the **Impulse Channel** drop-down and click the **Edit** button next to it. + +2. Expand the **Impulse Channels** property group and set the **Size** property to the number of channels you want. A new entry appears for each channel. + +3. Rename your new channels. + + ![](images/InspectorImpulseChannelsScript.png) + + Channels are available from the channel drop-down in the Inspector as soon as you add them. + +### Setting listen / broadcast channels + +After setting up your channels, you need to define how your Impulse Listeners and Impulse Sources use them. + +- Inspect each Impulse Listener, and choose the channels you want it to listen to from the **Channel Mask** drop-down. + + ![](images/InspectorImpulseListenerChannelsMenu.png) + +- Inspect each Impulse Source or Collision Impulse Source, and choose the channels you want it to broadcast on from the **Impulse Channel** drop-down. + + ![](images/InspectorImpulseSourceChannelsMenu.png) + + You can select multiple filters from the drop down. You can also choose **Everything** to use all filters, or **Nothing** to use none of them. + + +## Filtering with layers and tags + +You can use Unity’s [Layers](https://docs.unity3d.com/Manual/Layers.html) and [Tags]() to specify which GameObjects trigger an impulse when they collide with a Collision Impulse Source, or enter a trigger zone. This is called **Trigger Object Filtering**. + +The Cinemachine Collision Impulse Source component has two **Trigger Object Filter** properties: + +- The **Layer Mask** drop-down lists all of the Scene’s layers. When you select one or more layers, GameObjects in those layers trigger impulses when they collide with the Impulse Source. The Impulse Source ignores collisions with GameObjects on other layers. + +- The **Ignore Tag** drop-down lists all of the Scene’s tags. When you select a tag, GameObjects with that tag do not trigger impulses when they collide with the Impulse Source, even if they are in a layer specified in Layer Mask. + +For example, in a Scene where a large animal is lumbering through a forest, you might want the camera to shake when it collides with large trees, but not small saplings. + +One way to set that up would be to make the animal a Collision Impulse Source, put all of the large trees on their own layer, and select that as the Layer Mask. + +If all of the trees, large ones and saplings alike, are already on the same layer, you could assign a special tag to the saplings, and use the **Ignore Tag** property to filter them out. \ No newline at end of file diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Documentation~/CinemachineImpulseFixedSignals.md" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Documentation~/CinemachineImpulseFixedSignals.md" new file mode 100644 index 00000000..9c60ad54 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Documentation~/CinemachineImpulseFixedSignals.md" @@ -0,0 +1,30 @@ +# Using Fixed Signals + +The **CinemachineFixedSignal** Asset class is a simple 3D curve definition that lets you draw the curves yourself. Cinemachine Impulse either stretches or loops the curve to fit it in the attack-sustain-decay envelope, according to your specification in the Impulse Source. + +## Connecting a fixed signal to an Impulse Source + +To connect a fixed signal Asset to an Impulse Source, locate it in the Project view and drag it onto the **Raw Signal** field in the Impulse Source Inspector. + +## Creating a new fixed signal + +To create a new fixed signal Asset: + +1. In the Impulse Source Inspector, click the gear icon next to the **Raw Signal** field and choose **New Fixed Signal**. + +2. When prompted, give the new Asset a name and choose a location to save it to. + +3. Locate the new Asset in the Project view and select it to open the Fixed Signal Inspector. + + ![](images/InspectorFixedSignalTiles.png) + + The Inspector displays a preview of the curve for each axis. Click a preview pane to define your own curve for that axis. If you leave it blank, there is no movement along that axis. + +4. Click a preview curve to open the Curve editor, where you can edit the curve for that axis. + + ![](images/FixedSignalEditor.png) + +5. Click one of the thumbnails at the bottom of the window to apply a curve preset. You can then edit the curve: + + - Drag the control points and Bezier handles to change the shape of the curve. + - Click the gear icon next to the preset thumbnails to open the **Presets** window, where you can click **New** to add your current curve to the curve presets library. \ No newline at end of file diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Documentation~/CinemachineImpulseListener.md" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Documentation~/CinemachineImpulseListener.md" new file mode 100644 index 00000000..0c70c327 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Documentation~/CinemachineImpulseListener.md" @@ -0,0 +1,31 @@ +#Cinemachine Impulse Listener + +Impulse [signals](CinemachineImpulseRawSignal.md) and [sources](CinemachineImpulseSourceOverview.md) don’t do anything on their own. An **Impulse Listener** is a Cinemachine extension that allows a virtual camera to “hear” impulse vibration signals and react to them. + +When you add an **Impulse Listener** extension to a virtual camera, it makes the camera shake in response to the signals emitted from Impulse Sources. In the simplest case, the Impulse Listener applies the signal verbatim to the camera’s Transform, causing it to shake. + +In the image below, the figure’s feet are Impulse Sources. When they collide with the floor (A) they generate impulses. The camera is an Impulse Listener and reacts to the impulses by shaking (B), which shakes the resulting image in the Game view (C). + +![In this Scene, the figure’s feet are Impulse Sources. When they collide with the floor (A) they generate impulses. The camera is an Impulse Listener and reacts to the impulses by shaking (B), which shakes the resulting image in the Game view (C). ](images/ImpulseOverview.png) + +To add an Impulse Listener to a Cinemachine virtual camera: + +1. Select the virtual camera, navigate to the Inspector window and expand the **Cinemachine Virtual Camera** script. + +2. Go to **Extensions > Add Extension**, and select **CinemachineImpulseListener**. + +![](images/InspectorImpulseListener.png) + +In the real world, some cameras are mounted less rigidly than others, and tend to shake more as a result. The Impulse Listener’s **Gain** property emulates this behavior by amplifying or attenuating impulse vibration signals. Higher values cause the camera to shake more. + +>**TIP:** You can create your own Impulse Listener to interpret vibration signals any way you like. + +By default, an Impulse Listener reacts to every Impulse Source in range, but you can apply [channel filtering](CinemachineImpulseFiltering.md#ChannelFiltering) to make a Listener react to some some Sources and ignore others. + +##Properties: + +| Property: | Function: | +| ------------------- | ------------------------------------------------------------ | +| **Channel Mask** | Specify the Impulse channels to react to. For details, see [Filtering with channels](CinemachineImpulseFiltering.md#ChannelFiltering). | +| **Gain** | Amplify or attenuate the impulse signal. This property enables you to configure different Impulse Listeners to react differently to the same impulse signal. | +| **Use 2D Distance** | Enable this setting to ignore the z axis when calculating camera distance from the Impulse Source. Use this property for 2D games. | diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Documentation~/CinemachineImpulseNoiseProfiles.md" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Documentation~/CinemachineImpulseNoiseProfiles.md" new file mode 100644 index 00000000..c8a4fe31 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Documentation~/CinemachineImpulseNoiseProfiles.md" @@ -0,0 +1,33 @@ +# Using Noise Profiles + +Cinemachine uses a **[Noise Profile](CinemachineNoiseProfiles.md)** Asset to generate Basic Multi-Channel Perlin noise for Cinemachine Virtual Cameras. You can use the same Asset to create a procedural raw signal for Impulse. + +The **Noise Profile** Asset allows you to add noise in up to six dimensions: three rotational axes and three positional axes. Typical camera noise profiles use only rotational noise, but for Impulse you often want positional noise as well. + +Cinemachine ships with several **Noise Profile** presets, which you can use as they are, or clone and customize. **6D Shake** is a good all-around profile that you can use for a wide variety of situations. + +## Connecting a noise profile to an Impulse Source + +To connect a noise profile Asset to an Impulse Source or a Collision Impulse Source, do one of the following: + +- In the Impulse Source Inspector, click the gear icon next to the **Raw Signal** field and choose a preset from the **Presets** section of the menu. + +- In the Project view, locate the noise profile you want to connect and drag it onto the **Raw Signal** field in the Impulse Source Inspector. + +## Creating a new noise profile + +You can create your own noise profiles from scratch in the Noise Profile Inspector; however, you might find it easier to clone an existing preset and edit it. + +To create a new noise profile Asset: + +1. In the Impulse Source Inspector, click the gear icon next to the **Raw Signal** field and choose **New Noise Settings**. + +2. When prompted, give the new Asset a name and choose a location to save it to. + +3. Locate the new Asset in the Project view and select it to open the Noise Profile Inspector. + + ![img](images/InspectorNoiseProfile.png) + + The Inspector displays a compound waveform for rotational noise and positional noise. You can expand any rotational or positional axis to view and edit its waveforms individually. + + For details about creating custom noise profiles, see [Working with noise profiles](CinemachineNoiseProfiles.md) diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Documentation~/CinemachineImpulseRawSignal.md" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Documentation~/CinemachineImpulseRawSignal.md" new file mode 100644 index 00000000..f8483170 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Documentation~/CinemachineImpulseRawSignal.md" @@ -0,0 +1,25 @@ +# Raw Vibration Signals + +Raw vibration signals are curves that vibrate as a function of time. Cinemachine provides two types of raw signal Asset: + +- A 6D (x, y, z, pitch, roll, and yaw) noise profile. See [Using Noise Pofiles](CinemachineImpulseNoiseProfiles.md) for details. + +- A 3D Fixed Signal. See [Using Fixed Signals](CinemachineImpulseFixedSignals.md) for details. + +Usually these raw signals are Assets in the Project. + +In the Impulse Source Inspector window, use the **Raw Signal** field to see which signal is connected to the Impulse Source. The Settings menu (indicated with a gear icon) next to the field provides options for working with raw signals: + +![img](images/InspectorImpulseSourceRawSignalMenu.png) + +- **Edit** opens the signal in either the Noise Profile Inspector or the Fixed Signal Inspector. +- **Clone** duplicates the signal Asset. This is useful when you want to use a preset or an existing Asset as a base for a new signal. +- **Locate** finds the signal in the Project view. +- **Presets** provides a menu of preset Noise Profile Assets. +- **New Noise Settings** creates a new Noise Profile Asset from scratch. See [Creating a new noise profile](CinemachineImpulseNoiseProfiles.md#CreateNoiseProfile) for details. +- **New Fixed Signal** creates a new Fixed Signal Asset from scratch. See [Creating a new fixed signal](CinemachineImpulseFixedSignals.md#CreateFixedSignal) for details. + + +## Creating Custom Signals + +You can create your own custom signals. If you derive them from the **[CinemachineSignalSource](../api/Cinemachine.SignalSourceAsset.html)** base class, they appear automatically in the Inspector menu alongside the built-in ones. diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Documentation~/CinemachineImpulseSource.md" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Documentation~/CinemachineImpulseSource.md" new file mode 100644 index 00000000..ff0cf458 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Documentation~/CinemachineImpulseSource.md" @@ -0,0 +1,84 @@ +# Cinemachine Impulse Source + +Use the **Cinemachine Impulse Source** component to generate impulses on events that are not collisions or Collider triggers. This is a generic Impulse Source that exposes a family of `GenerateImpulse()` API methods. These methods generate impulses at the specified locations and with the specified velocities and strengths. Call these methods directly from your game logic, or use them with [UnityEvents](https://docs.unity3d.com/Manual/UnityEvents.html). + +>**TIP:** You can use the script for this component as an example to reference when creating your own custom impulse-generating classes. + +To add a Cinemachine Impulse Source to your Scene: + +1. Select the GameObject that you want to trigger camera shake, navigate to its Inspector, and click the **Add Component** button. + +2. Go to **Scripts > Cinemachine**, and select **Cinemachine Impulse Source**. + +By default, an Impulse Source affects every [Impulse Listener](CinemachineImpulseListener.md) in range, but you can apply [channel filtering](CinemachineImpulseFiltering.md#ChannelFiltering) to make Impulse Sources affect some Impulse Listeners and not others. + +##Properties: + +The properties in the Cinemachine Impulse Source Inspector window are divided into the following sections. + +- [Impulse Channel](#ImpulseChannel) (A) +- [Signal Shape](#SignalShape) (B) +- [Time Envelope](#TimeEnvelope) (C) +- [Spatial Range](#SpatialRange) (D) + +![](images/InspectorImpulseSource.png) + + +### Impulse Channel + +Impulse Listeners filter impulses based on channels to control which Impulse Sources they react to. Channels work like Camera Layers, but are distinct from them. These properties control the channels that the Impulse Source broadcasts impulse signals on. For details, see documentation on [Filtering](CinemachineImpulseFiltering.md). + +![](images/InspectorImpulseSourceChannel.png) + +| **Property:** | **Function:** | +| ------------------- | ------------------------------------------------------------ | +| **Impulse Channel** | Choose one or more channels from the drop-down.

Click **Edit** to modify existing channels or add new ones. | + + +### Signal Shape + +These properties control the basic characteristics of the raw signal when it is emitted by the Impulse Source. + +![](images/InspectorImpulseSourceSignal.png) + +| **Property:** | **Function:** | +| -------------- | ------------------------------------------------------------ | +| **Raw Signal** | The raw signal form.

Drag a signal Asset onto the signal name to connect the signal to the Impulse Source.

Click the “gear” icon for additional signal options, including options for creating new signals.

See [Raw Vibration Signals](CinemachineImpulseRawSignal.md) for details. | +|**Amplitude Gain** | Set a value by which to multiply the amplitude of **Raw Signal**. This controls the strength of the vibrations. This is set to 1 by default.

Use values greater than 1 to amplify the signal, 1 for the original signal, values less than 1 and greater than 0 to attenuate the signal, and 0 to mute the signal. | +|**Frequency Gain**|Set a value by which to multiply the frequency of **Raw Signal**. This controls the speed of the vibrations. This is set to 1 by default.

Use values greater than one to increase the frequency, 1 for the original signal, values less than 1 and greater than 0 to reduce the frequency of the signal. A frequency of 0 holds a single noise value indefinitely, as though time were frozen.| +|**Randomize**|Enable this to randomize the **Raw Signal’s** start time.

This property is available when the **Raw Signal** is a noise profile Asset. See [Raw Vibration Signals](CinemachineImpulseRawSignal.md) for details.| +|**Repeat Mode**|Specify whether to loop the **Raw Signal** over the duration of the time envelope, or stretch it to fit the time envelope.

This property is available when the **Raw Signal** is a fixed signal. See [Raw Vibration Signals](CinemachineImpulseRawSignal.md) for details.| + + +### Time Envelope + +These properties control the duration of the impulse and the intensity of the **Raw Signal** over that duration. + +![](images/InspectorImpulseTimeEnvelope.png) + +| Property: | Function: | +| --------------------- | ------------------------------------------------------------ | +| **Attack** | Define how the signal reaches full amplitude at the beginning of the waveform. Click the preview pane (grey bar) to set the shape of the curve, and use the numerical field to set the time (in seconds) to reach the full amplitude. Leave the preview pane blank to use a default curve that is suitable for most purposes. | +| **Sustain Time** | Set the time to maintain the full amplitude of the waveform after the attack. | +| **Decay** | Define how the signal goes from full amplitude to zero the end of the waveform. Click the preview pane (grey bar) to set the shape of the curve, and use the numerical field to set the time (in seconds) to mute the signal. Leave the preview pane blank to use a default curve that is suitable for most purposes. | +| **Scale With Impact** | Enable this to apply signal amplitude scaling to **Time Envelope**. If checked, the Cinemachine Impulse Source component scales the time envelope according to the strength of the impact: stronger impacts last longer, and milder impacts have a shorter duration. | + + + +### Spatial Range + +These properties define a zone in the Scene. The impulses from this Impulse Source only affect Impulse Listeners in this zone. + +![](images/InspectorImpulseSourceSpatialRange.png) + +| Property:|| Function:| +|--|--|--| +|**Impact Radius**||Set the radius of the space in the Scene around the impact point where the signal stays at full amplitude. Beyond that the signal strength fades out over the dissipation distance. After that, the strength is zero. In other words, the total effect radius of the signal is **Impact Radius** + **Dissipation Distance**.| +|**Direction Mode**||Define how the Cinemachine Impulse Source component should apply the direction of the signal as the Impulse Listener moves away from the Impulse Source.| +||Fixed|Use **Fixed** to use a constant signal direction.| +||Rotate Toward Source|Use **Rotate Toward Source** to rotate the signal in the direction of the Impulse Source, giving a subtle visual clue about the source’s location. **Rotate Toward Source** has no effect on radially-symmetric signals.| +|**Dissipation Mode**||Define how the signal dissipates when the listener is outside the **Impact Radius**.| +||Linear Decay|The signal dissipates evenly over the **Dissipation Distance**.| +||Soft Decay|The signal dissipates slowly at the beginning of the **Dissipation Distance**, more quickly in the middle, and slowly again as it reaches the end.| +|| Exponential Decay|The signal dissipates very quickly at the beginning of the **Dissipation Distance**, then more and more slowly as it reaches the end.| +|**Dissipation Distance**||Set the distance beyond the impact radius over which the signal decays from full strength to nothing.| \ No newline at end of file diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Documentation~/CinemachineImpulseSourceOverview.md" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Documentation~/CinemachineImpulseSourceOverview.md" new file mode 100644 index 00000000..a4ea8042 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Documentation~/CinemachineImpulseSourceOverview.md" @@ -0,0 +1,125 @@ +# Cinemachine Impulse Sources + +An Impulse Source is a component that emits a vibration signal from a point in Scene space. Game events can cause an Impulse Source to emit a signal from the place where the event occurs. The event _triggers_ impulses, and the source _generates_ impulses. Virtual cameras with an Impulse Listener extension _react_ to impulses by shaking. + +In the image below, the figure's feet are Impulse Sources. When they collide with the floor (A) they generate impulses. The camera is an Impulse Listener and reacts to the impulses by shaking (B), which shakes the resulting image in the game view (C). + +![In this Scene, the figure's feet are Impulse Sources. When they collide with the floor (A) they generate impulses. The camera is an Impulse Listener and reacts to the impulses by shaking (B), which shakes the resulting image in the game view (C). ](images/ImpulseOverview.png) + +Cinemachine ships with two types of Impulse Source component. + +- **[Cinemachine Collision Impulse Source](CinemachineCollisionImpulseSource.md)** generates impulses in reaction to collisions and trigger zones. + +- **[Cinemachine Impulse Source](CinemachineImpulseSource.md)** generates impulses in reaction to events other than collisions. + +Your Scene can have as many Impulse Sources as you want. Here are a few examples of where you might use Impulse Source components in a Scene: + +- On each of a giant’s feet, so that the ground shakes when the giant walks. + +- On a projectile that explodes when it hits a target. + +- On the surface of a gelatin planet that wobbles when something touches it. + +By default, an Impulse Source affects every [Impulse Listener](CinemachineImpulseListener.md) in range, but you can apply [channel filtering](CinemachineImpulseFiltering.md#ChannelFiltering) to make Sources affect some Listeners and not others. + +## Key Impulse Source properties + +While the raw vibration signal defines the basic “shape” of the camera shake, the Impulse Source controls several other important properties that define the impulses it generates. + +Understanding some of these properties in detail can help you create more realistic camera shake setups. + +Below you'll find detailed descriptions of the following key properties: + +- **[Amplitude](#Amplitude):** controls the strength of the vibration. + +- **[Orientation and direction](#Orientation):** Impulse can transform the signal so that the vibrations are consistent with the direction of the impact that produces them. + +- **[Time envelope](#TimeEnvelope):** controls the signal’s attack, sustain, and decay so that the signal fades in and out to the appropriate intensity and has a finite duration. + +- **[Spatial range](#SpatialRange):** controls how far the signal travels in the Scene before it fades out completely + +For descriptions of all Impulse Source properties, as well as instructions for adding Impulse Sources to your scene, see documentation on the [Impulse Source](CinemachineImpulseSource.md) and [Collision Impulse Source](CinemachineCollisionImpulseSource.md) components. + + +### Amplitude + +The amplitude of the raw impulse signal controls the strength of the vibration for each impact. There are two ways to adjust the amplitude for a given Impulse Source. + +The **Amplitude Gain** property amplifies or attenuates the raw impulse signal. It affects all impacts, all the time. Think of it as a global “volume” setting for turning the strength of an Impulse Source’s vibrations up or down. + +Changing the magnitude of the **Velocity** vector when generating the signal also scales the signal amplitude, but the effect is per-impact rather than global. By adjusting the velocity of individual Impulse events, you can set things up so that light impacts make smaller vibrations, and heavy impacts make bigger ones. + +- For the **Cinemachine Impulse Source** component you must set the velocity vector yourself via a script. The signal’s amplitude scales by the magnitude of this vector. + +- The **Cinemachine Collision Impulse Source** component calculates the velocity vector automatically according to rules defined by the three properties in the **[How To Generate The Impulse](CinemachineCollisionImpulseSource.md#GenerateImpulse)** section. + +These global and per-impact adjustments are multiplied to calculate the actual amplitude of each impact. + + + +### Orientation and Direction + +To create realistic vibrations, an impulse signal should be strongest along the axis of impact, and its amplitude (or strength) should be proportional to the force of the impact. For example, if you strike a wall with a hammer, the wall vibrates primarily along the axis of the hammer’s path. For the hammer’s impulse signal to be realistic, it should have the most vibration along that axis. + +In the image below, the main axis for vibration (A) matches the direction the hammer is traveling when it hits the wall (B). + +![The main axis for vibration (A) matches the direction the hammer is traveling when it hits the wall (B).](images/ImpulseHammerStrike.png) + +Rather than requiring separate signal definitions for every possible impact direction and strength, Impulse uses the concept of a “local space” for defining the raw signal. You can rotate and scale the raw signal in its local space to produce a “final” signal that matches the actual impact. + +Impulse assumes that the main direction for an impact is “down,” so as a general rule, your signals should put more vibration along the Y axis (the 6D shake noise preset does this). You can then rely on local-space rotation and scaling to produce the correct vibrations for each impact occurrence. + +#### Controlling orientation and direction + +The **Cinemachine Impulse Source** and **Cinemachine Collision Impulse Source** components have properties that control the orientation of the raw signal. Use these properties to mimic real-world vibration. + +- For the **Cinemachine Impulse Source** component, the [GenerateImpulse()](../api/Cinemachine.CinemachineImpulseSource.html#Cinemachine_CinemachineImpulseSource_GenerateImpulse_) method takes a velocity vector as a parameter. This vector defines the direction and strength of the impact. The Impulse system uses this to calculate the final signal based on the Raw signal definition, rotating and scaling it appropriately. + +- For the **Cinemachine Collision Impulse Source** component, the velocity vector is generated automatically based on the directions and masses of the GameObjects involved. + + To control how this is done, use the properties in the **[How To Generate The Impulse](CinemachineCollisionImpulseSource.md#GenerateImpulse)** section of the Inspector window. The **Use Impact Direction** property controls whether the signal is rotated to correspond to the impact direction. + +#### Direction mode + +The **[Spatial Range](CinemachineImpulseSource.md#SpatialRange) > Direction Mode** property allows you to add a subtle tweak to the signal orientation. When you set it to **Rotate Towards Source**, the impulse signal is further rotated so that vibrations point a little more prominently in the direction of the Impulse Source. + +The effect isn’t noticeable for radially symmetric vibrations, but for signals that emphasize a direction, like 6D shake, it gives a subconscious indication of where the vibration is coming from. This can be quite effective when you generate impacts in multiple locations and you don't want them to all feel the same. + +The default **Direction Mode** setting of **Fixed** turns the effect off. + + + +### Time envelope + +Vibrations from a real-world impact get stronger until they reach their peak strength, then weaken until the vibration stops. How long this cycle takes depends on the strength of the impact, and the characteristics of the GameObjects involved. + +For instance, striking a concrete wall with a hammer produces a short, sharp impact. The vibrations reach their peak strength almost instantly and stop almost instantly. Striking a large sheet of thin metal, on the other hand, produces sustained vibration, which starts suddenly, stays at peak intensity for a while, and gradually softens. + +Use an Impulse Source’s **[Time Envelope](CinemachineImpulseSource.md#TimeEnvelope)** properties to control this cycle when impacts in the Scene shake the camera. The time envelope has three properties: + +- **Attack** controls the Impulse signal’s transition to peak intensity. +- **Sustain Time** specifies how long the signal stays at peak intensity. +- **Decay** controls the signal’s transition from peak intensity to zero. + +Both **Attack** and **Decay** consist of a duration value that specifies how long the transition takes, and a curve that defines how it happens (for example, whether it happens gradually or suddenly). The curves are optional; if you leave them blank in the Inspector window, Impulse uses its default curves, which are suitable for most purposes. **Sustain Time** is a duration value only. + +Taken together, these properties control how long vibrations from an impact occurrence last, and how they fade in and fade out. However, they don’t account for the strength of the impact. To do that, enable the **Scale with Impact** property. When it’s enabled, the time envelope scales according the strength of an impact. Stronger impacts make the envelope longer, and weaker ones make it shorter. This does not affect the envelope’s proportions. + + +### Spatial Range + +An Impulse Source’s **[Spatial Range](CinemachineImpulseSource.md#SpatialRange)** properties define the zone in the Scene that the Impulse Source affects. Impulse Listeners in this zone react to the Impulse source (unless they are [filtered out](CinemachineImpulseFiltering.md)), while Listeners outside of it do not. + +The zone consists of two parts: the **Impact Radius** and the **Dissipation Distance**. When the Impulse Source generates an impulse, the vibration signal stays at full strength until it reaches the end of the **Impact Radius**. Its strength then fades to zero over the **Dissipation Distance**. Together, these two properties define the signal’s total range. + +In the image below, the vibration signal stays at full strength from the time it’s emitted from impact point until it reaches the Impact Radius (A), then fades out over the Dissipation Distance (B). + +![The vibration signal stays at full strength from the time it’s emitted from impact point until it reaches the Impact Radius (A), then fades out over the Dissipation Distance (B).](images/ImpulseSpatialRange.png) + +The **Dissipation Mode** property controls _how_ the signal fades out over the **Dissipation Distance**. + +* **Exponential Decay** creates a fade-out that starts fast and slows down as it nears the end of the dissipation distance. + +* **Soft Decay** creates a fade-out that starts slow, speeds up, and slows down again as it nears the end of the dissipation distance. + +* **Linear Decay** creates an even fade-out over the dissipation distance. \ No newline at end of file diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Documentation~/CinemachineManagerCameras.md" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Documentation~/CinemachineManagerCameras.md" new file mode 100644 index 00000000..d9138a9f --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Documentation~/CinemachineManagerCameras.md" @@ -0,0 +1,18 @@ +# Managing and grouping Virtual Cameras + +A __manager__ camera oversees many Virtual Cameras but acts as a single Virtual Camera from the point of view of Cinemachine Brain and Timeline. + +Cinemachine includes these manager cameras: + +* [Free Look Camera](CinemachineFreeLook.html): an enhanced [Orbital Transposer](CinemachineBodyOrbitalTransposer.html). It manages three horizontal orbits, arranged vertically to surround an avatar. + +* [Mixing Camera](CinemachineMixingCamera.html): uses the weighted average of up to eight child Virtual Cameras. + +* [Blend List Camera](CinemachineBlendListCamera.html): executes a sequence of blends or cuts of its child Virtual Cameras. + +* [Clear Shot Camera](CinemachineClearShot.html): picks the child Virtual Camera with the best view of the target. + +* [State-Driven Camera](CinemachineStateDrivenCamera.html): picks a child Virtual Camera in reaction to changes in animation state. + +Because manager cameras act like normal Virtual Cameras, you can nest them. In other words, create arbitrarily complex camera rigs that combine regular Virtual Cameras and manager cameras. + diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Documentation~/CinemachineMixingCamera.md" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Documentation~/CinemachineMixingCamera.md" new file mode 100644 index 00000000..bae85515 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Documentation~/CinemachineMixingCamera.md" @@ -0,0 +1,33 @@ +# Cinemachine Mixing Camera + +The __Cinemachine Mixing Camera__ component uses the weighted average of its child Virtual Cameras to compute the position and other properties of the Unity camera. + +![Cinemachine Mixing Camera with two child Virtual Cameras (red)](images/CinemachineMixingCamera.png) + +Mixing Camera manages up to eight child Virtual Cameras. In the Mixing Camera component, these Virtual Cameras are fixed slots, not a dynamic array. Mixing Camera uses this implementation to support weight animation in Timeline. Timeline cannot animate array elements. + +To create a Mixing Camera: + +1. In the Unity menu, choose __Cinemachine > Create Mixing Camera__. +A new Mixing Camera appears in the [Hierarchy](https://docs.unity3d.com/Manual/Hierarchy.html) window. By default, Unity also adds two Virtual Cameras as children of the Mixing Camera. + +2. Adjust the children Virtual Cameras. + +3. Add up to six more child cameras. + +4. Select the Mixing Camera in the Hierarchy window then adjust the Child Camera Weights in the [Inspector](https://docs.unity3d.com/Manual/UsingTheInspector.html) window. + +![Child Camera Weights (red) and their contributions to the final position (blue)](images/CinemachineMixingCameraChildren.png) + +## Properties: + +| **Property:** | **Function:** | +|:---|:---| +| __Solo__ | Toggles whether or not the Mixing Camera is temporarily live. Use this property to get immediate visual feedback in the [Game view](https://docs.unity3d.com/Manual/GameView.html) to adjust the Virtual Camera. | +| __Game Window Guides__ | Toggles the visibility of compositional guides in the Game view. This property applies to all Virtual Cameras. | +| __Save During Play__ | Check to [apply the changes while in Play mode](CinemachineSavingDuringPlay.html). Use this feature to fine-tune a Virtual Camera without having to remember which properties to copy and paste. This property applies to all Virtual Cameras. | +| __Priority__ | The importance of this Mixing Camera for choosing the next shot. A higher value indicates a higher priority. Cinemachine Brain chooses the next live Virtual Camera from all Virtual Cameras that are activated and have the same or higher priority as the current live Virtual Camera. This property has no effect when using a Virtual Camera with Timeline. | +| __Child Camera Weights__ | The weight of the Virtual Camera. Each child Virtual Camera has a corresponding Weight property. Note that setting one camera's weight to 1 does not put the other weights to zero. The contribution of any individual camera is its weight divided by the sum of all the child weights. | +| __Mix Result__ | A graphical representation of the weights of the child Virtual Cameras. The light part of the bar of each child camera represents the proportion of its contribution to the final position of the Mixing Camera. When the bar is completely dark, the camera makes no contribution to the position of the Mixing Camera. | + + diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Documentation~/CinemachineMultipleCameras.md" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Documentation~/CinemachineMultipleCameras.md" new file mode 100644 index 00000000..59e99f2f --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Documentation~/CinemachineMultipleCameras.md" @@ -0,0 +1,14 @@ +# Using multiple Unity cameras + +Split-screen and picture-in-picture effects require the use of more than one Unity camera. Each Unity camera presents its own view on the player’s screen. + +To use a multi-camera split-screen for two players: + +1. For each player, [create a layer](https://docs.unity3d.com/Manual/Layers.html). For example, for two players, create layers named P1 and P2. + +2. Add two Unity cameras to your Scene, set up their viewports, and give each one its own Cinemachine Brain component. + +3. For each Unity camera, set the __Culling Mask__ to the appropriate layer while excluding the other layer. For example, set the first Unity camera to include layer P1 while excluding P2. + +4. Add 2 Virtual Cameras, one to follow each player to follow the players. Assign each Virtual Camera to a player layer. + diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Documentation~/CinemachineNoiseProfiles.md" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Documentation~/CinemachineNoiseProfiles.md" new file mode 100644 index 00000000..23b7df99 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Documentation~/CinemachineNoiseProfiles.md" @@ -0,0 +1,39 @@ +# Working with noise profiles + +A __noise profile__ is an asset that defines a procedural curve for camera noise. The __Basic Multi Channel Perlin__ component applies a noise profile to the movement of the camera. Cinemachine applies noise movement after computing the position of the camera. This way, camera noise does not affect the computation of camera movement in future updates. + +Cinemachine includes some predefined profile assets. Choose a predefined noise profile in the Noise component. Create your own noise profile asset by choosing __Create > Cinemachine > NoiseSettings__ in the [Project window](https://docs.unity3d.com/Manual/ProjectView.html). + +The properties in the Inspector show graphs that give a visual representation of the noise profile. There are properties for the x, y, and z axes for position and rotation. Each axis may have more than one layer. + +![Editing the first noise layer for Position X](images/CinemachineNoiseProfile.png) + +For realistic procedural noise, choose frequencies and amplitudes with care to ensure an interesting noise quality that is not obviously repetitive. The most convincing camera shakes use __Rotation__ noise because that’s where the camera is aiming. Handheld camera operators tend to shake more rotationally than they do positionally. After specifying __Rotation__ noise, add __Position__ noise. + +Convincing noise profiles typically mix low, medium, and high frequencies together. When creating a new noise profile, start with these three layers of noise for each axis. + +For amplitude, use larger values for wider lenses to shake the camera noticeably. For telephoto lenses, use smaller amplitude values because the narrower FOV amplifies the effect. + +For frequency, a typical low range is 0.1-0.5 Hz, the mid range 0.8-1.5, and the high 3-4. The highest useful frequency depends on the frame rate of your game. A game typically runs at 30 or 60Hz. Noise frequencies higher than the frame rate of your game fall between the cracks of the Nyquist rate. In other words, they will not be directly tracked. + +For example, if your game runs at 60 frames/second and you set a frequency to 100, you will get choppy camera noise. This is because your game can’t render something that moves faster than the frame rate. + +## Properties: + +| **Property:** || **Function:** | +|:---|:---|:---| +| __Preview Time__ || The number of seconds to display in the graphs in the Inspector. This property is for editing in the Inspector; it does not affect the content of the noise profile asset that you are editing. | +| __Preview Height__ || The vertical height of the graphs of the noise profile in the Inspector. This property is for editing noise profiles; it does not affect the noise profile asset. | +| __Animated__ || Check to show a moving representation of an example of the noise profile in the graph. This property is for editing noise profiles; it does not affect the noise profile asset. | +| __Position Noise__ || A graphical representation of all noise layers for all axes for camera movement. | +| __Position X__, __Position Y__, __Position Z__ || The layers of noise for each axis to apply to camera movement. Each axis has a graphical representation of its layers. Each layer has properties for Frequency, Amplitude, and optional Perlin noise. Click + or - to add and remove layers, respectively. | +| | _Frequency_ | The frequency of the wave in the noise layer, in Hz. | +| | _Amplitude_ | The amplitude (height) of the wave in the noise layer, in distance units. | +| | _Non-random wave if checked_ | Check to remove the Perlin noise from the noise layer. Without Perlin noise, Cinemachine uses a regular sine wave. Uncheck to apply Perlin noise to the layer, randomizing both the frequency and the amplitude while remaining in the neighbourhood of the selected values. | +| __Rotation Noise__ || A graphical representation of all noise layers for all axes for camera rotation. | +| __Rotation X__, __Rotation Y__, __Rotation Z__ || The layers of noise for each axis to apply to camera rotation. Each layer has properties for Frequency, Amplitude, and optional Perlin Noise. Click + or - to add and remove layers, respectively. | +| | _Frequency_ | The frequency of the wave in the noise layer, in Hz. | +| | _Amplitude_ | The amplitude (height) of the wave in the noise layer, in degrees. | +| | _Non-random wave if checked_ | Check to remove the Perlin noise from the noise layer. Without Perlin noise, Cinemachine uses a regular sine wave. Uncheck to include random Perlin noise variation, randomizing both the frequency and the amplitude while remaining in the neighbourhood of the selected values. | + + diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Documentation~/CinemachineOverview.md" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Documentation~/CinemachineOverview.md" new file mode 100644 index 00000000..0a7963bd --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Documentation~/CinemachineOverview.md" @@ -0,0 +1,91 @@ +# Cinemachine overview + +Using Cinemachine requires a new way of thinking about working with cameras. For example, you might have already invested heavily in carefully scripted camera behaviors. However, Cinemachine can give the same results, if not better, in less time. Get up and running quickly to create and tune cameras without bothering your engineer. + +## Virtual Cameras + +Cinemachine does not create new cameras. Instead, it directs a single Unity camera for multiple shots. You compose these shots with __Virtual Cameras__. Virtual Cameras move and rotate the Unity camera and control its settings. + +The Virtual Cameras are separate GameObjects from the Unity Camera, and behave independently. They are not nested within each other. For example, a Scene might look like this: + +![A Scene containing a Unity camera with Cinemachine Brain (blue) and multiple Virtual Cameras (red)](images/CinemachineSceneHierarchy.png) + +The main tasks that the Virtual Camera does for you: + +* Position the Unity camera in the Scene. + +* Aim the Unity camera at something. + +* Add procedural noise to the Unity camera. Noise simulates things like handheld effects or vehicle shakes. + +Cinemachine encourages you to create many Virtual Cameras. The Virtual Camera is designed to consume little processing power. If your Scene is performance-sensitive, deactivate all but the essential Virtual Cameras at any given moment for extreme performance. + +A good rule of thumb is to use a single Virtual Camera for a single shot. Take advantage of this to create dramatic or subtle cuts or blends. Examples: + +* For a cutscene where two characters exchange dialog, use three Virtual Cameras: one camera for a mid-shot of both characters, and separate Virtual Cameras for a close-up of each character. Then use Timeline to synchronize audio with the Virtual Cameras. + +* Duplicate an existing Virtual Camera so that both Virtual Cameras are in the same position in the Scene. For the second Virtual Camera, change the FOV or composition a bit. When a player enters a trigger volume, Cinemachine blends from the first to the second Virtual Camera to emphasize a change in action. + +One Virtual Camera has control of the Unity camera at any point in time. This is the __live__ Virtual Camera. The only exception to this rule is during a blend from one Virtual Camera to the next. During blending, both Virtual Cameras are live. + +## Cinemachine Brain + +The Cinemachine Brain is a component in the Unity Camera itself. Cinemachine Brain monitors all active Virtual Cameras in the Scene. To specify the next live Virtual Camera, you [activate or deactivate](https://docs.unity3d.com/Manual/DeactivatingGameObjects.html) the desired Virtual Camera's game object. Cinemachine Brain then chooses the most recently activated Virtual Camera with the same or higher priority as the live Virtual Camera. It performs a cut or blend between the previous and new Virtual Cameras. + +**Tip**: Use Cinemachine Brain to respond to dynamic game events in real time. It allows your game logic to control the camera by manipulating priorities. This is particularly useful for live gameplay, where action isn’t always predictable. Use [Timeline](CinemachineTimeline.html) to choreograph cameras in predictable situations, like cutscenes. Timeline overrides the Cinemachine Brain priority system to give you precise, to-the-frame camera control. + +## Moving and aiming + +Use the [__Body__ properties](CinemachineVirtualCameraBody.html) in a Virtual Camera to specify how to move it in the Scene. Use the [__Aim__ properties](CinemachineVirtualCameraAim.html) to specify how to rotate it. + +A Virtual Camera has two targets: + +* The __Follow__ target specifies a GameObject for the Virtual Camera to move with. +* The __Look At__ target specifies the GameObject to aim at. + +Cinemachine includes a variety of procedural algorithms to control moving and aiming. Each algorithm solves a specific problem, and has properties to customize the algorithm for your specific needs. Cinemachine implements these algorithms as `CinemachineComponent` objects. Use the `CinemachineComponent` class to implement a custom moving or aiming behavior. + +The __Body__ properties offer the following procedural algorithms for moving the Virtual Camera in a Scene: + +* __Transposer__: Move in a fixed relationship to the __Follow__ target, with optional damping. +* __Do Nothing__: Do not move the Virtual Camera. +* __Framing Transposer__: Move in a fixed screen-space relationship to the __Follow__ target, with optional damping. +* __Orbital Transposer__: Move in a variable relationship to the __Follow__ target, optionally accepting player input. +* __Tracked Dolly__: Move along a predefined path. +* __Hard Lock to Target__: Use the same position at the __Follow__ target. + +The __Aim__ properties offer the following procedural algorithms for rotating a Virtual Camera to face the __Look At__ target: + +* __Composer__: Keep the __Look At__ target in the camera frame, with compositional constraints. +* __Group Composer__: Keep multiple __Look At__ targets in the camera frame. +* __Do Nothing__: Do not rotate the Virtual Camera. +* __POV__: Rotate the Virtual Camera based on the user’s input. +* __Same As Follow Target__: Set the camera’s rotation to the rotation of the __Follow__ target. +* __Hard Look At__: Keep the __Look At__ target in the center of the camera frame. + + +## Composing a shot + +The [__Framing Transposer__](CinemachineBodyFramingTransposer.html), [__Composer__](CinemachineAimComposer.html), and [__Group Composer__](CinemachineAimGroupComposer.html) algorithms define areas in the camera frame for you to compose a shot: + +* __Dead zone__: The area of the frame that Cinemachine keeps the target in. + +* __Soft zone__: If the target enters this region of the frame, the camera will re-orient to put it back in the dead zone. It will do this slowly or quickly, according to the time specified in the Damping settings. + +* __Screen__: The screen position of the center of the dead zone. 0.5 is the center of the screen. + +* __Damping__: Simulates the lag that a real camera operator introduces while operating a heavy physical camera. Damping specifies quickly or slowly the camera reacts when the target enters the __soft zone__ while the camera tracks the target. Use small numbers to simulate a more responsive camera, rapidly moving or aiming the camera to keep the target in the __dead zone__. Larger numbers simulate heavier cameras, The larger the value, the more Cinemachine allows the target to enter the soft zone. + +The __Game Window Guides__ gives an interactive, visual indication of these areas. The guides appear as tinted areas in the [Game view](https://docs.unity3d.com/Manual/GameView.html). + +![Game Window Guides gives a visual indication of the damping, screen, soft zone, and dead zone](images/CinemachineGameWindowGuides.png) + +The clear area indicates the __dead zone__. The blue-tinted area indicates the __soft zone__. The position of the soft and dead zones indicates the __screen__ position. The red-tinted area indicates the __no pass__ area, which the target never enters. The yellow square indicates the target. + +Adjust these areas to get a wide range of camera behaviors. To do this, drag their edges in the Game view or edit their properties in the Inspector window. For example, use larger damping values to simulate a larger, heavier camera, or enlarge the __soft zone__ and __dead zone__ to create an area in the middle of the camera frame that is immune to target motion. Use this feature for things like animation cycles, where you don’t want the camera to track the target if it moves just a little. + +## Using noise to simulate camera shake + +Real-world physical cameras are often heavy and cumbersome. They are hand-held by the camera operator or mounted on unstable objects like moving vehicles. Use [Noise properties](CinemachineVirtualCameraNoise.html) to simulate these real-world qualities for cinematic effect. For example, you could add a camera shake when following a running character to immerse the player in the action. + +At each frame update, Cinemachine adds noise separately from the movement of the camera to follow a target. Noise does not influence the camera’s position in future frames. This separation ensures that properties like __damping__ behave as expected. diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Documentation~/CinemachinePath.md" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Documentation~/CinemachinePath.md" new file mode 100644 index 00000000..624ed7db --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Documentation~/CinemachinePath.md" @@ -0,0 +1,24 @@ +# Cinemachine Path + +__Cinemachine Path__ is a component that defines a world-space path, consisting of an array of waypoints. Each waypoint specifies position, tangent, and roll settings. Bezier interpolation is performed between the waypoints, to get a smooth and continuous path. + +**Tip**: While the path position will always be smooth and continuous, it is still possible to get jarring movement when animating along the path. This happens when tangents aren’t set to ensure continuity of both the first and second order derivatives. It is not easy to get this right. To avoid this potentially jarring movement, use Cinemachine Smooth Path. CinemachineSmoothPath sets the tangents automatically to ensure complete smoothness. + +## Properties: + +| **Property:** || **Function:** | +|:---|:---|:---| +| __Resolution__ || Path samples per waypoint. Cinemachine uses this value to limit the granularity when calculating path distances. The crosshatches on the path gizmo in the scene view reflect this value| +| __Appearance__ || The settings that control how the path appears in the Scene view. | +| | _Path Color_ | The color of the path when it is selected. | +| | _Inactive Path Color_ | The color of the path when it is not selected. | +| | _Width_ | The width of the railroad tracks that represent the path. | +| __Looped__ || Check to join the ends of the path to form a continuous loop. | +| __Selected Waypoint__ || Properties for the waypoint you selected in the Scene view or in the Waypoints list. | +| __Prefer Tangent Drag__ || Check to use the Gizmo for the tangent of a waypoint when the Gizmos for the tangent and position coincide in the Scene view. | +| __Waypoints__ || The list of waypoints that define the path. | +| | _Position_ | Position in path-local space (i.e. relative to the transform of the path object itself) | +| | _Tangent_ | Offset from the position, which defines the tangent of the curve at the waypoint. The length of the tangent encodes the strength of the bezier handle. The same handle is used symmetrically on both sides of the waypoint, to ensure smoothness. | +| | _Roll_ | The roll of the path at this waypoint. The other orientation axes are inferred from the tangent and world up. | + + diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Documentation~/CinemachinePostProcessing.md" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Documentation~/CinemachinePostProcessing.md" new file mode 100644 index 00000000..8d18768f --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Documentation~/CinemachinePostProcessing.md" @@ -0,0 +1,35 @@ +# Cinemachine and Postprocessing + +Use the Cinemachine Post Processing [extension](CinemachineVirtualCameraExtensions.html) to attach a Postprocessing V2 profile to a Virtual Camera. + +**Note**: Unity recommends using Postprocessing V2 instead of Postprocessing V1. + +The Cinemachine Post Processing extension holds a Post-Processing Profile asset to apply to a Virtual Camera when it is activated. If the camera is blending with another Virtual Camera, then the blend weight is applied to the Post Process effects also. + +Before attaching post processing profiles to Virtual Cameras, you first need to set up your project to use post processing. You need to do this setup only once. + +To set up project to use Post Processing V2 with Cinemachine: + +1. [Install](https://docs.unity3d.com/Packages/com.unity.package-manager-ui@latest/index.html) the Postprocessing V2 package. + +2. In the Unity menu, choose __Cinemachine > Import Post Processing V2 Adaptor Asset Package__. + +3. Select your Unity camera with Cinemachine Brain in the [Scene](https://docs.unity3d.com/Manual/UsingTheSceneView.html) view. + +4. [Add the component](https://docs.unity3d.com/Manual/UsingComponents.html) named __Post-Process Layer__. This will anble Post Process profiles to affect the Camera. + +To add a Post Process profile to a Virtual Camera + +3. Select your Virtual Camera in the [Scene](https://docs.unity3d.com/Manual/UsingTheSceneView.html) view or [Hierarchy](https://docs.unity3d.com/Manual/Hierarchy.html) window. + +4. In the [Inspector](https://docs.unity3d.com/Manual/UsingTheInspector.html), choose __Add Extension > CinemachinePostProcessing__, then configre the Profile asset to have the effects you want when this virtual camera is live. + +## Properties: + +| **Property:** | **Function:** | +|:---|:---| +| __Profile__ | The Post-Processing profile to activate when this Virtual Camera is live. | +| __Focus Tracks Target__ | Check to set Focus Distance to the distance between the camera and the Look At target. | +| __Offset__ | When Focus Tracks Target is checked, this offset is applied to the target position when setting the focus, focus distance. If there is no Look At target, then this is the offset from the Unity camera position, the actual focus distance. | + + diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Documentation~/CinemachineSavingDuringPlay.md" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Documentation~/CinemachineSavingDuringPlay.md" new file mode 100644 index 00000000..4cb21c6c --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Documentation~/CinemachineSavingDuringPlay.md" @@ -0,0 +1,10 @@ +# Saving in Play Mode + +It’s often most convenient to adjust camera settings while the game is playing. But normally, Unity does not save your changes to the Scene when you exit Play Mode. Cinemachine has a special feature to preserve the tweaks you make during Play Mode. It doesn’t save structural changes, like adding or removing a behavior. With the exception of certain properties, Cinemachine preserves most of the settings in your Virtual Cameras when you exit Play Mode. + +When you exit Play Mode, Cinemachine scans the Scene to collect any changed properties in the Virtual Cameras. Cinemachine saves these changes a second or so after exiting. Use the __Edit > Undo__ command to revert these changes. + +Check __Save During Play__ on any Virtual Camera in the [Inspector](https://docs.unity3d.com/Manual/UsingTheInspector.html) to enable this feature. This is a global property, not per-camera, so you only need to check or uncheck it once. + +Cinemachine components have the special attribute `[SaveDuringPlay]` to enable this functionality. Feel free to use it on classes within your own custom scripts too if you need it. To exclude a field in a class with the `[SaveDuringPlay]` attribute, add the `[NoSaveDuringPlay]` attribute to the field. + diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Documentation~/CinemachineSetUpVCam.md" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Documentation~/CinemachineSetUpVCam.md" new file mode 100644 index 00000000..7cc971a2 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Documentation~/CinemachineSetUpVCam.md" @@ -0,0 +1,16 @@ +# Setting up Virtual Cameras + +In your project, organize your Scene Hierarchy to have a single Unity camera with a CinemachineBrain component and many Virtual Cameras. + +To add a Virtual Camera to a Scene: + +1. In the Unity menu, choose __Cinemachine > Create Virtual Camera__.
Unity adds a new GameObject with a Cinemachine Virtual Camera component. If necessary, Unity also adds a [Cinemachine Brain](CinemachineBrainProperties.html) component to the Unity camera GameObject for you. + +2. Use the __Follow__ property to specify a GameObject to follow.
The Virtual Camera automatically positions the Unity camera relative to this GameObject at all times, even as you move it in the Scene. + +3. Use the __Look At__ property to specify the GameObject that the Virtual Camera should aim at.
The Virtual Camera automatically rotates the Unity camera to face this GameObject at all times, even as you move it in the Scene. + +4. [Customize the Virtual Camera](CinemachineVirtualCamera.html) as needed.
Choose the algorithm for following and looking at, and adjust settings such as the follow offset, the follow damping, the screen composition, and the damping used when re-aiming the camera. + +![Adding a Virtual Camera to a Scene. Note the Cinemachine Brain icon next to the Main Camera.](images/CinemachineNewVCam.png) + diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Documentation~/CinemachineSmoothPath.md" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Documentation~/CinemachineSmoothPath.md" new file mode 100644 index 00000000..ab9cc338 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Documentation~/CinemachineSmoothPath.md" @@ -0,0 +1,23 @@ +# Cinemachine Smooth Path + +A __Cinemachine Smooth Path__ is a component that defines a world-space path, consisting of an array of waypoints. Each waypoint has position and roll settings. Cinemachine uses Bezier interpolation to calculate positions between the waypoints to get a smooth and continuous path. The path passes through all waypoints. Unlike Cinemachine Path, first and second order continuity is guaranteed, which means that not only the positions but also the angular velocities of objects animated along the path will be smooth and continuous. + +## Properties: + +| **Property:** || **Function:** | +|:---|:---|:---| +| __Resolution__ || Path samples per waypoint. Cinemachine uses this value to calculate path distances. | +| __Looped__ || If checked, then the path ends are joined to form a continuous loop. | +| __Waypoints__ || The waypoints that define the path. They are interpolated using a bezier curve. | +| __Resolution__ || Path samples per waypoint. This is used for calculating path distances. | +| __Appearance__ || The settings that control how the path appears in the Scene view. | +| | _Path Color_ | The color of the path when it is selected. | +| | _Inactive Path Color_ | The color of the path when it is not selected. | +| | _Width_ | The width of the railroad tracks that represent the path. | +| __Looped__ || Check to join the ends of the path to form a continuous loop. | +| __Selected Waypoint__ || Properties for the waypoint you selected in the Scene view or in the Waypoints list. | +| __Waypoints__ || The list of waypoints that define the path. They are interpolated using a bezier curve. | +| | _Position_ | Position in path-local space. | +| | _Roll_ | Defines the roll of the path at this waypoint. The other orientation axes are inferred from the tangent and world up. | + + diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Documentation~/CinemachineStateDrivenCamera.md" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Documentation~/CinemachineStateDrivenCamera.md" new file mode 100644 index 00000000..f4be2626 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Documentation~/CinemachineStateDrivenCamera.md" @@ -0,0 +1,47 @@ +# Cinemachine State-Driven Camera + +The __Cinemachine State-Driven Camera__ component activates a child Virtual Camera when an animation target changes states. For example, consider your avatar’s local-motion system and orbit camera. Your game feels more alive to the player when the camera shakes more as your avatar runs. When the avatar walks, blend for example to a Virtual Camera with more damping. + +![State-Driven camera with three child Virtual Cameras (red)](images/CinemachineStateDrivenChildren.png) + +The animation target for a State-Driven Camera is a GameObject with an [Animator](https://docs.unity3d.com/Manual/class-Animator.html) component controlled by an [Animator Controller](https://docs.unity3d.com/Manual/class-AnimatorController.html). + +Assign normal __Look At__ and __Follow__ targets to each child Virtual Camera. If a child Virtual Camera has no __Look At__ or __Follow__ target, State-Driven camera uses its own, respective targets. + +State-Driven Camera has a list that assigns child Virtual Cameras to animation states. You can define default and custom blends between the State-Driven children. + +In the Inspector, the State-Driven camera lists its Virtual Camera children. Use this list to add and delete child Virtual Cameras, and assign priorities. + +![Properties for Cinemachine State-Driven camera](images/CinemachineStateDrivenCamera.png) + +To create a State-Driven camera: + +1. Set up the animation target GameObject to [control it with an Animator Controller](https://docs.unity3d.com/Manual/AnimatorControllers.html). + +2. In the Unity menu, choose __Cinemachine > Create State-Driven Camera__.
A new State-Driven camera appears in the hierarchy with a new child Virtual Camera. + +3. In the [Inspector](https://docs.unity3d.com/Manual/UsingTheInspector.html), assign the animation target you created in step 1 to the Animated Target property. + +4. If needed, add more child VIrtual Cameras either by clicking + in Virtual Camera Children or dragging and dropping existing Virtual Cameras in the [Hierarchy](https://docs.unity3d.com/Manual/Hierarchy.html) window. + +5. Use the __State__ to assign child Virtual Cameras to the animation states. + +## Properties: + +| **Property:** | **Function:** | +|:---|:---| +| __Solo__ | Toggles whether or not the Virtual Camera is temporarily live. Use this property to get immediate visual feedback in the [Game view](https://docs.unity3d.com/Manual/GameView.html) to adjust the Virtual Camera. | +| __Game Window Guides__ | Toggles the visibility of compositional guides in the Game view. These guides are available when Look At specifies a GameObject and the Aim section uses Composer or Group Composer, or when Follow specifies a target and the Body section uses Framing Composer. This property applies to all Virtual Cameras. | +| __Save During Play__ | Check to [apply the changes while in Play mode](CinemachineSavingDuringPlay.html). Use this feature to fine-tune a Virtual Camera without having to remember which properties to copy and paste. This property applies to all Virtual Cameras. | +| __Priority__ | The importance of this State-Driven camera for choosing the next shot. A higher value indicates a higher priority. This property has no effect when using a State-Driven camera with Timeline. | +| __Look At__ | The default target GameObject that the children Virtual Camera move with. The State-Driven camera uses this target when the child does not specify this target. May be empty if all of the children define targets of their own. | +| __Follow__ | The default target GameObject to aim the Unity camera at. The State-Driven camera uses this target when the child does not specify this target. May be empty if all of the children define targets of their own. | +| __Animated Target__ | The GameObject that contains the Animator Controller. The State-Drive camera reacts to the animation state changes from this GameObject. | +| __Layer__ | The animation layer to observe in the Animated Target. | +| __Show Debug Text__ | Check to display a textual summary of the live Virtual Camera and blend in the game view. | +| __Default Blend__ | The blend which is used if you don’t explicitly define a blend between two Virtual Cameras. | +| __Custom Blends__ | The asset which contains custom settings for specific child blends. | +| __State__ | The list of animation state assignments for child Virtual Cameras. | +| __Virtual Camera Children__ | The list of Virtual Cameras that are children of the State-Driven camera. | + + diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Documentation~/CinemachineStoryboard.md" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Documentation~/CinemachineStoryboard.md" new file mode 100644 index 00000000..bc1ebaf0 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Documentation~/CinemachineStoryboard.md" @@ -0,0 +1,25 @@ +# Storyboard + +Use the Cinemachine Storyboard [extension](CinemachineVirtualCameraExtensions.html) to let artists, producers, and directors contribute to your game development. Cinemachine Storyboard places a still image in screen space over the output of the Unity camera. + +Storyboard simplifies animatics for your team. Start with still images to pre-visualize terrain, layout, movement, lighting, timing, and so on. Following the intentions of the Storyboard image, developers incrementally add the assets, GameObjects, and settings that implement the Scene. + +Use the properties in the Storyboard component to hide and show the image to compare it to the actual rendering of the Unity camera. + +## Properties: + +| **Property:** || **Function:** | +|:---|:---|:---| +| __Show Image__ || Toggle the visibility of the storyboard image. | +| __Image__ || The image to display as an overlay over the output of the Virtual Camera. | +| __Aspect__ || How to handle differences between image aspect and screen aspect. | +| | _Best Fit_ | Resize the image as large as possible on the screen without cropping. Preserve the vertical and horizontal proportions. | +| | _Crop Image To Fit_ | Resize the image to fill the screen, cropping if necessary. Preserve the vertical and horizontal proportions. | +| | _Stretch To Fit_ | Resize the image to fill the screen, adjusting the vertical or horizontal width if necessary. | +| __Alpha__ || The opacity of the image. Use 0 for transparent, 1 for opaque. | +| __Center__ || The screen-space position of the image. Use 0 for center. | +| __Rotation__ || The screen-space rotation of the image. | +| __Scale__ || The screen-space scaling of the image. | +| __Sync Scale__ || Check to synchronize the scale of the x and y axes. | +| __Mute Camera__ || Check to prevent the Virtual Camera from updating the position, rotation, or scale of the Unity camera. Use this feature to prevent Timeline from [blending](CinemachineBlending.html) the camera to an unintended position in the Scene. | +| __Split View__ || Wipe the image on and off horizontally. | diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Documentation~/CinemachineTargetGroup.md" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Documentation~/CinemachineTargetGroup.md" new file mode 100644 index 00000000..7e69a3be --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Documentation~/CinemachineTargetGroup.md" @@ -0,0 +1,35 @@ +# Cinemachine Target Group + +Use Cinemachine Target Group to treat multiple GameObjects as a single Look At target. Use a Target Group with the [Group Composer](CinemachineAimGroupComposer.html) algorithm. + +To create a Virtual Camera with a Target Group: + +1. In the Unity menu, choose __Cinemachine > Create Target Group Camera__.
Unity adds a new Virtual Camera and Target Group to the Scene. The __Follow__ and __Look At__ targets in the Virtual Camera refer to the new Target Group. + +2. In the [Hierarchy](https://docs.unity3d.com/Manual/Hierarchy.html), select the new Target Group object. + +3. In the [Inspector](https://docs.unity3d.com/Manual/UsingTheInspector.html), click the + sign to add a new item to the group. + +4. In the new item, assign a GameObject, and edit the __Weight__ and __Radius__ properties. + +5. To add more GameObjects to the Target Group, repeat steps 3-4. + +![Cinemachine Target Group with two targets](images/CinemachineTargetGroup.png) + +## Properties: + +| **Property:** || **Function:** | +|:---|:---|:---| +| __Position Mode__ || How to calculate the position of the Target Group. | +| | _Group Center_ | Use the center of the axis-aligned bounding box that contains all items of the Target Group. | +| | _Group Average_ | Use the weighted average of the positions of the items in the Target Group. | +| __Rotation Mode__ || How to calculate the rotation of the Target Group. | +| | _Manual_ | Use the values specified in the Rotation properties of the Target Group’s transform. This is the recommended setting. | +| | _Group Average_ | Weighted average of the orientation of the items in the Target Group. | +| __Update Method__ || When to update the transform of the Target Group. | +| | _Update_ | Update in the normal MonoBehaviour Update() method. | +| | _Fixed Update_ | Updated in sync with the Physics module, in FixedUpdate(). | +| | _Late Update_ | Updated in MonoBehaviour `LateUpdate()`. | +| __Targets__ || The list of target GameObjects. | +| | _Weight_ | How much weight to give the item when averaging. Cannot be negative. | +| | _Radius_ | The radius of the item, used for calculating the bounding box. Cannot be negative. | diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Documentation~/CinemachineTimeline.md" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Documentation~/CinemachineTimeline.md" new file mode 100644 index 00000000..71204cbd --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Documentation~/CinemachineTimeline.md" @@ -0,0 +1,48 @@ +# Cinemachine and Timeline + +Use [Timeline](https://docs.unity3d.com/Manual/TimelineSection.html) to activate, deactivate, and blend between Virtual Cameras. In Timeline, combine Cinemachine with other GameObjects and assets to interactively implement and tune rich cutscenes, even interactive ones. + +**Tip**: For simple shot sequences, use a [Cinemachine Blend List Camera](CinemachineBlendListCamera.html) instead of Timeline. + +Timeline overrides the priority-based decisions made by [Cinemachine Brain](CinemachineBrainProperties.html). When the timeline finishes, control returns to the Cinemachine Brain, which chooses the Virtual Camera with the highest Priority setting. + +You control Virtual Cameras in Timeline with a __Cinemachine Shot Clip__. Each shot clip points to a Virtual Camera to activate then deactivate. Use a sequence of shot clips to specify the order and duration of each shot. + +To cut between two Virtual Cameras, place the clips next to each other. To blend between two Virtual Cameras, overlap the clips. + +![Cinemachine Shot Clips in Timeline, with a cut (red) and a blend (blue)](images/CinemachineTimelineShotClips.png) + +To create a Timeline for Cinemachine: + +1. Create an empty GameObject in your Scene by choosing the __GameObject > Create Empty __menu item. + +2. Give the empty GameObject a descriptive name. For example, `IntroTimeline`. + +3. In your Scene, select your empty Timeline object as the focus to [create a Timeline Asset and instance](https://docs.unity3d.com/Manual/TimelineWorkflowCreatingAssetInstance.html). + +4. Click the padlock button to lock the TImeline window to make it easier to add and adjust tracks. + +5. Drag a Unity camera with a CinemachineBrain component onto the Timeline Editor, then choose __Create Cinemachine Track__ from the drop-down menu. + +6. [Add other tracks to the Timeline](https://docs.unity3d.com/Manual/TimelineAddingTracks.html) for controlling the subjects of your Scene. For example, add an Animation track to animate your main character. + +**Tip**: Delete the default track that refers to your Timeline object. This track isn’t necessary for Timeline. For example, in the Timeline editor, right-click the track for IntroTimeline and choose __Delete__. + +To add Cinemachine Shot Clips to a Cinemachine Track: + +1. In the Cinemachine Track, right-click and choose __Add Cinemachine Shot Clip__. + +2. Do one of the following: + + * To add an existing Virtual Camera to the shot clip, drag and drop it onto the Virtual Camera property in the Cinemachine Shot component. + + * To create a new Virtual Camera and add it to the shot clip, click Create in the Cinemachine Shot component. + +3. In the Timeline editor, adjust the order, duration, cutting, and blending of the shot clip. + +4. [Adjust the properties of the Virtual Camera](CinemachineVirtualCamera.html) to place it in the Scene and specify what to aim at or follow. + +5. To animate properties of the Virtual Camera, create an [Animation Track](https://docs.unity3d.com/Manual/TimelineAnimationTrackProperties.html) for it and animate as you would any other GameObject. + +6. [Organize your Timeline tracks](https://docs.unity3d.com/Manual/TimelineTrackList.html) to fine-tune your Scene. + diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Documentation~/CinemachineTopDown.md" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Documentation~/CinemachineTopDown.md" new file mode 100644 index 00000000..c063bba3 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Documentation~/CinemachineTopDown.md" @@ -0,0 +1,8 @@ +# Top-down games + +Cinemachine Virtual Cameras are modeled after human camera operators and how they operate real-life cameras. As such, they have a sensitivity to the up/down axis, and always try to avoid introducing roll into the camera framing. Because of this sensitivity, the Virtual Camersa avoid looking straight up or down for extended periods. They may do it in passing, but if the __Look At__ target is straight up or down for extended periods, they will not always give the desired result. + +**Tip:** You can deliberately roll by animating properties like __Dutch__ in a Virtual Camera. + +If you are building a top-down game where the cameras look straight down, the best practice is to redefine the up direction, for the purposes of the camera. You do this by setting the __World Up Override__ in the [Cinemachine Brain](CinemachineBrainProperties.html) to a GameObject whose local up points in the direction that you want the Virtual Camera’s up to normally be. This is applied to all Virtual Cameras controlled by that Brain. + diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Documentation~/CinemachineVirtualCamera.md" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Documentation~/CinemachineVirtualCamera.md" new file mode 100644 index 00000000..21842970 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Documentation~/CinemachineVirtualCamera.md" @@ -0,0 +1,41 @@ +# Setting Virtual Camera properties + +The Cinemacine Virtual Camera is a component that you add to an empty GameObject. It represents a Virtual Camera in the Unity Scene. + +Use the __Aim__, __Body__, and __Noise__ properties to specify how the Virtual Camera animates position, rotation, and other properties. The Virtual Camera applies these settings to the Unity Camera when [Cinemachine Brain](CinemachineBrainProperties.html) or [Timeline](CinemachineTimeline.html) transfers control of the Unity camera to the Virtual Camera. + +At any time, each Virtual Camera may be in one of these states: + +* __Live__: The Virtual Camera actively controls a Unity camera that has a Cinemachine Brain. When a Cinemachine Brain blends from one Virtual Camera to the next, both Virtual Cameras are live. When the blend is complete, there is only one live Virtual Camera. + +* __Standby__: The Virtual Camera doesn’t control the Unity camera. However, it still follows and aims at its targets, and updates at every frame. A Virtual Camera in this state is activated and has a priority that is the same as or lower than the live Virtual Camera. + +* __Disabled__: The Virtual Camera doesn’t control the Unity camera and doesn’t actively follow or aim at its targets. A Virtual Camera in this state doesn’t consume processing power. To disable a Virtual Camera, deactivate its game object. The Virtual Camera is present but disabled in the Scene. However, even though the game object is deactivated, the virtual camera can still control the Unity camera if the virtual camera is participating in a blend, or if it is invoked by Timeline. + +![Virtual Camera properties](images/CinemachineVCamProperties.png) + +### Properties + +| **Property:** || **Function:** | +|:---|:---|:---| +| __Solo__ || Toggles whether or not the Virtual Camera is temporarily live. Use this property to get immediate visual feedback in the [Game view](https://docs.unity3d.com/Manual/GameView.html) to adjust the Virtual Camera. | +| __Game Window Guides__ || Toggles the visibility of compositional guides in the Game view. These guides are available when Look At specifies a GameObject and the Aim section uses Composer or Group Composer, or when Follow specifies a target and the Body section uses Framing Composer. This property applies to all Virtual Cameras. | +| __Save During Play__ || Check to [apply the changes while in Play mode](CinemachineSavingDuringPlay.html). Use this feature to fine-tune a Virtual Camera without having to remember which properties to copy and paste. This property applies to all Virtual Cameras. | +| __Priority__ || The importance of this Virtual Camera for choosing the next shot. A higher value indicates a higher priority. Cinemachine Brain chooses the next live Virtual Camera from all Virtual Cameras that are activated and have the same or higher priority as the current live Virtual Camera. This property has no effect when using a Virtual Camera with Timeline. | +| __Follow__ || The target GameObject that the Virtual Camera moves with. The [Body properties](CinemachineVirtualCameraBody.html) use this target to update the position of the Unity camera. Keep this property empty to make the Unity camera use the position of the Virtual Camera’ transform. For example, you might choose to animate the Virtual Camera in Timeline. | +| __Look At__ || The target GameObject to aim the Unity camera at. The [Aim properties](CinemachineVirtualCameraAim.html) use this target to update the rotation of the Unity camera. Keep this property empty to make the Unity camera use the orientation of the Virtual Camera. | +| __Position Blending__ || Style for blending positions to and from this Virtual Camera. | +| | _Linear_ | Standard linear position blend. | +| | _Spherical_ | Spherical blend about the Look At position, if there is a Look At target. | +| | _Cylindrical_ | Cylindrical blend about the Look At position, if there is a Look At target. Vertical coordinate is linearly interpolated. | +| __Lens__ || These properties mirror their counterparts in the properties for the [Unity camera](https://docs.unity3d.com/Manual/class-Camera.html). | +| | _Field Of View_ | The camera view in vertical degrees. For example, to specify the equivalent of a 50mm lens on a Super 35 sensor, enter a Field of View of 19.6 degrees. This property is available when the Unity camera with the Cinemachine Brain component uses a Projection of Perspective. | +| | _Presets_ | A drop-down menu of settings for commonly-used lenses. Choose **Edit Presets** to add or edit the asset that contains a default list of lenses. | +| | _Orthographic Size_ | When using an orthographic camera, defines the half-height of the camera view, in world coordinates. Available when the Unity camera with the Cinemachine Brain component uses a Projection of Orthographic. | +| | _Near Clip Plane_ | The closest point relative to the camera where drawing occurs. | +| | _Far Clip Plane_ | The furthest point relative to the camera where drawing occurs. | +| __Dutch__ || Dutch angle. Tilts the Unity camera on the z-axis, in degrees. This property is unique to the Virtual Camera; there is no counterpart property in the Unity camera. | +| __Extensions__ || Components that add extra behaviors to the Virtual Camera. | +| | _Add Extension_ | Choose a new [extension](CinemachineVirtualCameraExtensions.html) to add to the Virtual Camera. | + + diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Documentation~/CinemachineVirtualCameraAim.md" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Documentation~/CinemachineVirtualCameraAim.md" new file mode 100644 index 00000000..357e65f6 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Documentation~/CinemachineVirtualCameraAim.md" @@ -0,0 +1,18 @@ +# Aim properties + +Use the Aim properties to specify how to rotate the Virtual Camera. To change the camera’s position, use the [Body properties](CinemachineVirtualCameraBody.html). + +![Aim properties, with the Composer algorithm (red)](images/CinemachineAim.png) + +* [__Composer__](CinemachineAimComposer.html): Keep the __Look At__ target in the camera frame. + +* [__Group Composer__](CinemachineAimGroupComposer.html): Keep multiple __Look At__ targets in the camera frame. + +* [__Do Nothing__](CinemachineAimDoNothing.html): Do not procedurally rotate the Virtual Camera. + +* [__POV__](CinemachineAimPOV.html): Rotate the Virtual Camera based on the user’s input. + +* [__Same As Follow Target__](CinemachineAimSameAsFollow.html): Set the camera’s rotation to the rotation of the __Follow__ target. + +* [__Hard Look At__](CinemachineAimHardLook.html): Keep the __Look At__ target in the center of the camera frame. + diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Documentation~/CinemachineVirtualCameraBody.md" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Documentation~/CinemachineVirtualCameraBody.md" new file mode 100644 index 00000000..836887ba --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Documentation~/CinemachineVirtualCameraBody.md" @@ -0,0 +1,14 @@ +# Body properties + +Use the Body properties to specify the algorithm that moves the Virtual Camera in the Scene. To rotate the camera, set the [Aim properties](CinemachineVirtualCameraAim.html). + +![__Body__ properties, with the __Transposer__ algorithm (red)](images/CinemachineBody.png) + +Cinemachine includes these algorithms for moving a Virtual Camera: + +* [__Transposer__](CinemachineBodyTransposer.html): moves in a fixed relationship to the __Follow__ target. +* [__Do Nothing__](CinemachineBodyDoNothing.html): does not move the Virtual Camera. +* [__Framing Transposer__](CinemachineBodyFramingTransposer.html): moves in a fixed screen-space relationship to the __Follow__ target. +* [__Orbital Transposer__](CinemachineBodyOrbitalTransposer.html): moves in a variable relationship to the __Follow__ target, optionally accepting player input. +* [__Tracked Dolly__](CinemachineBodyTrackedDolly.html): moves along a predefined path. +* [__Hard Lock to Target__](CinemachineBodyHardLockTarget.html): uses the same position at the __Follow__ target. diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Documentation~/CinemachineVirtualCameraExtensions.md" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Documentation~/CinemachineVirtualCameraExtensions.md" new file mode 100644 index 00000000..4b28c831 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Documentation~/CinemachineVirtualCameraExtensions.md" @@ -0,0 +1,12 @@ +# Extensions + +Extensions are components that add more sophisticated behaviors to a Virtual Camera. For example, the [Collider](CinemachineCollider.html) extension moves a camera out of the way of GameObjects that obstruct the camera’s view of its target. + +Cinemachine includes a variety of extensions. Create your own custom extensions by deriving from the `CinemachineExtension` class. + +To add an extension to a Virtual Camera: + +1. Select your Virtual Camera in the [Scene](https://docs.unity3d.com/Manual/UsingTheSceneView.html) view or [Hierarchy](https://docs.unity3d.com/Manual/Hierarchy.html) window. + +2. In the [Inspector](https://docs.unity3d.com/Manual/UsingTheInspector.html), use the __Add Extension__ drop-down menu to choose the extension. + diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Documentation~/CinemachineVirtualCameraNoise.md" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Documentation~/CinemachineVirtualCameraNoise.md" new file mode 100644 index 00000000..4c761216 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Documentation~/CinemachineVirtualCameraNoise.md" @@ -0,0 +1,28 @@ +# Noise properties + +Use Noise properties in a Virtual Camera to simulate camera shake. Cinemachine includes a __Basic Multi Channel Perlin__ component, which adds Perlin noise to the movement of the Virtual Camera. __Perlin noise__ is a technique to compute random movement with a natural behavior. + +![Choosing the Basic Multi Channel Perlin component to add camera noise](images/CinemachineBasicMultiChannelPerlin.png) + +The Basic Multi Channel Perlin component applies a noise profile. A noise profile is an Asset that defines the behavior of noise over time. Cinemachine includes a few noise profile assets. You can [edit these and create your own](CinemachineNoiseProfiles.html). + +To apply noise: + +1. Select your Virtual Camera in the [Scene](https://docs.unity3d.com/Manual/UsingTheSceneView.html) view or [Hierarchy](https://docs.unity3d.com/Manual/Hierarchy.html) window. + +2. In the [Inspector](https://docs.unity3d.com/Manual/UsingTheInspector.html), use the __Noise__ drop-down menu to choose __Basic Multi Channel Perlin__. + +3. In __Noise Profile__, choose an existing profile asset or [create your own profile](CinemachineNoiseProfiles.html). + +4. Use __Amplitude Gain__ and __Frequency Gain__ to fine-tune the noise. + +## Properties + +| **Property:** | **Function:** | +|:---|:---| +| __Noise Profile__ | The noise profile asset to use.| +| __Amplitude Gain__ | Gain to apply to the amplitudes defined in the noise profile. Use 1 to use the amplitudes defined in the noise profile. Setting this to 0 mutes the noise. Tip: Animate this property to ramp the noise effect up and down.| +| __Frequency Gain__ | Factor to apply to the frequencies defined in the noise profile. Use 1 to use the frequencies defined in the noise profile. Use larger values to shake the camera more rapidly. Tip: Animate this property to ramp the noise effect up and down. | + + + diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Documentation~/InspectorImpulseSourceSpatialRange.png" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Documentation~/InspectorImpulseSourceSpatialRange.png" new file mode 100644 index 00000000..6890389a Binary files /dev/null and "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Documentation~/InspectorImpulseSourceSpatialRange.png" differ diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Documentation~/TableOfContents.md" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Documentation~/TableOfContents.md" new file mode 100644 index 00000000..2959143f --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Documentation~/TableOfContents.md" @@ -0,0 +1,57 @@ +* [Cinemachine Documentation](index) + * [Cinemachine overview](CinemachineOverview) + * [Getting started](CinemachineGettingStarted) + * [Setting up Virtual Cameras](CinemachineSetUpVCam) + * [Saving in Play Mode](CinemachineSavingDuringPlay) + * [Setting Virtual Camera properties](CinemachineVirtualCamera) + * [Body properties](CinemachineVirtualCameraBody) + * [Transposer](CinemachineBodyTransposer) + * [Do Nothing](CinemachineBodyDoNothing) + * [Framing Transposer](CinemachineBodyFramingTransposer) + * [Orbital Transposer](CinemachineBodyOrbitalTransposer) + * [Tracked Dolly](CinemachineBodyTrackedDolly) + * [Hard Lock to Target](CinemachineBodyHardLockTarget) + * [Aim properties](CinemachineVirtualCameraAim) + * [Composer](CinemachineAimComposer) + * [Group Composer](CinemachineAimGroupComposer) + * [Do Nothing](CinemachineAimDoNothing) + * [POV](CinemachineAimPOV) + * [Same As Follow Target](CinemachineAimSameAsFollow) + * [Hard Look At](CinemachineAimHardLook) + * [Noise properties](CinemachineVirtualCameraNoise) + * [Extensions](CinemachineVirtualCameraExtensions) + * [Working with noise profiles](CinemachineNoiseProfiles) + * [Setting Cinemachine Brain properties](CinemachineBrainProperties) + * [Blending between Virtual Cameras](CinemachineBlending) + * [Cinemachine and Timeline](CinemachineTimeline) + * [Storyboard](CinemachineStoryboard) + * [Cinemachine and Postprocessing](CinemachinePostProcessing) + * [Managing and grouping Virtual Cameras](CinemachineManagerCameras) + * [Cinemachine Free Look](CinemachineFreeLook) + * [Cinemachine Mixing Camera](CinemachineMixingCamera) + * [Cinemachine Blend List Camera](CinemachineBlendListCamera) + * [Cinemachine Clear Shot](CinemachineClearShot) + * [Cinemachine State-Driven camera](CinemachineStateDrivenCamera) + * [Avoiding collisions and evaluating shots](CinemachineColliderConfiner) + * [Cinemachine Collider](CinemachineCollider) + * [Cinemachine Confiner](CinemachineConfiner) + * [Cinemachine Target Group](CinemachineTargetGroup) + * [Cinemachine and 2D graphics](Cinemachine2D) + * [Cinemachine and top-down games](CinemachineTopDown) + * [Using multiple Unity cameras](CinemachineMultipleCameras) + * [Cinemachine External Camera](CinemachineExternalCamera) + * [Cinemachine Follow Zoom](CinemachineFollowZoom) + * [Using dolly paths](CinemachineDolly) + * [Cinemachine Path](CinemachinePath) + * [Cinemachine Smooth Path](CinemachineSmoothPath) + * [Cinemachine Dolly Cart](CinemachineDollyCart) + * [Cinemachine Impulse](CinemachineImpulse) + * [Cinemachine Impulse Sources](CinemachineImpulseSourceOverview) + * [Cinemachine Collision Impulse Source](CinemachineCollisionImpulseSource) + * [Cinemachine Impulse Source](CinemachineImpulseSource) + * [Raw Vibration Signals](CinemachineImpulseRawSignal) + * [Using Noise Profiles](CinemachineImpulseNoiseProfiles) + * [Using Fixed Signals](CinemachineImpulseFixedSignals) + * [Cinemachine Impulse Listener](CinemachineImpulseListener) + * [Filtering impulses](CinemachineImpulseFiltering) + * [Document Revision History](CinemachineDocRevisionHistory) \ No newline at end of file diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Documentation~/cinemachine.md" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Documentation~/cinemachine.md" new file mode 100644 index 00000000..b966a793 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Documentation~/cinemachine.md" @@ -0,0 +1,19 @@ +# Cinemachine + +![Unity Cinemachine](images/CinemachineSplash.png) + +Cinemachine is a suite of modules for operating the Unity camera. Cinemachine solves the complex mathematics and logic of tracking targets, composing, blending, and cutting between shots. It is designed to significantly reduce the number of time-consuming manual manipulations and script revisions that take place during development. + +The procedural nature of these modules makes Cinemachine bug-resistant. When you make adjustments—for example, change an animation, vehicle speed, terrain, or other GameObjects in your Scene—Cinemachine dynamically adjusts its behavior to make the best shot. There is no need, for example, to re-write camera scripts just because a character turns left instead of right. + +Cinemachine works in real time across all genres including FPS, third person, 2D, side-scroller, top down, and RTS. It supports as many shots in your Scene as you need. Its modular system lets you compose sophisticated behaviors. + +Cinemachine works well with other Unity tools, acting as a powerful complement to Timeline, animation, and post-processing assets. Create your own [extensions](CinemachineVirtualCameraExtensions) or integrate it with your custom camera scripts. + +## Requirements + +Cinemachine has no external dependencies. Just install it and start using it. If you are also using the Post Processing Stack (version 2), then you need to install the Cinemachine PostProcessing Adapter Package from the Cinemachine menu. This installs code that connects the two packages and enables virtual cameras to have Post Processing profiles. + +This Cinemachine version 2.2 is compatible with the following versions of the Unity Editor: + +* 2017.1 and later diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Documentation~/cinemachineAPI.md" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Documentation~/cinemachineAPI.md" new file mode 100644 index 00000000..b5354f00 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Documentation~/cinemachineAPI.md" @@ -0,0 +1,2405 @@ + +### AxisState + +_Type:_ struct + +_Namespace:_ Cinemachine + + +Axis state for defining how to react to player input. The settings here control the responsiveness of the axis to player input. + +#### Fields + + +| _Name_ | _Type_ | _Description_ | +| --- | --- | --- | +| **Value** | Single | The current value of the axis. | +| **m_MaxSpeed** | Single | The maximum speed of this axis in units/second. | +| **m_AccelTime** | Single | The amount of time in seconds it takes to accelerate to MaxSpeed with the supplied Axis at its maximum value. | +| **m_DecelTime** | Single | The amount of time in seconds it takes to decelerate the axis to zero if the supplied axis is in a neutral position. | +| **m_InputAxisName** | String | The name of this axis as specified in Unity Input manager. Setting to an empty string will disable the automatic updating of this axis. | +| **m_InputAxisValue** | Single | The value of the input axis. A value of 0 means no input. You can drive this directly from a custom input system, or you can set the Axis Name and have the value driven by the internal Input Manager. | +| **m_InvertInput** | Boolean | If checked, then the raw value of the input axis will be inverted before it is used. | +| **m_MinValue** | Single | The minimum value for the axis. | +| **m_MaxValue** | Single | The maximum value for the axis. | +| **m_Wrap** | Boolean | If checked, then the axis will wrap around at the min/max values, forming a loop. | + + +#### Methods + +``Void Validate()`` + +Call from OnValidate: Make sure the fields are sensible. + +``Boolean Update(Single deltaTime)`` + +Updates the state of this axis based on the axis defined by AxisState.m_AxisName. + + +| _Param_ | _Type_ | _Description_ | +| --- | --- | --- | +| **deltaTime** | Single | Delta time in seconds. | + +_Returns:_ Returns true if this axis' input was non-zero this Update, flase otherwise. + + +### AxisState.Recentering + +_Type:_ struct + +_Namespace:_ Cinemachine + + +Helper for automatic axis recentering. + +#### Fields + + +| _Name_ | _Type_ | _Description_ | +| --- | --- | --- | +| **m_enabled** | Boolean | If checked, will enable automatic recentering of the axis. If unchecked, recenting is disabled. | +| **m_WaitTime** | Single | If no user input has been detected on the axis, the axis will wait this long in seconds before recentering. | +| **m_RecenteringTime** | Single | Maximum angular speed of recentering. Will accelerate into and decelerate out of this. | + + +#### Methods + +``Void Validate()`` + +Call this from OnValidate(). + +``Void CancelRecentering()`` + +Cancel any recenetering in progress. + +``Void DoRecentering(AxisState& axis, Single deltaTime, Single recenterTarget)`` + +Bring the axis back to the cenetered state. + + +| _Param_ | _Type_ | _Description_ | +| --- | --- | --- | +| **axis** | AxisState& | | +| **deltaTime** | Single | | +| **recenterTarget** | Single | | + + + +### CinemachineBasicMultiChannelPerlin + +_Type:_ class + +_Namespace:_ Cinemachine + +_Inherits:_ CinemachineComponentBase + + +As a part of the Cinemachine Pipeline implementing the Noise stage, this component adds Perlin Noise to the Camera state, in the Correction channel of the CameraState. + +The noise is created by using a predefined noise profile asset. This defines the shape of the noise over time. You can scale this in amplitude or in time, to produce a large family of different noises using the same profile. + +#### Properties + + +| _Name_ | _Type_ | _Description_ | +| --- | --- | --- | +| **IsValid** | Boolean | _[Get]_ True if the component is valid, i.e. it has a noise definition and is enabled. | +| **Stage** | Stage | _[Get]_ Get the Cinemachine Pipeline stage that this component implements. Always returns the Noise stage.
_Possible Values:_
- **Body**
- **Aim**
- **Noise**
- **Finalize**
| + + +#### Fields + + +| _Name_ | _Type_ | _Description_ | +| --- | --- | --- | +| **m_NoiseProfile** | NoiseSettings | The asset containing the Noise Profile. Define the frequencies and amplitudes there to make a characteristic noise profile. Make your own or just use one of the many presets. | +| **m_AmplitudeGain** | Single | Gain to apply to the amplitudes defined in the NoiseSettings asset. 1 is normal. Setting this to 0 completely mutes the noise. | +| **m_FrequencyGain** | Single | Scale factor to apply to the frequencies defined in the NoiseSettings asset. 1 is normal. Larger magnitudes will make the noise shake more rapidly. | + + +#### Methods + +``virtual Void MutateCameraState(CameraState& curState, Single deltaTime)`` + +Applies noise to the Correction channel of the CameraState if the delta time is greater than 0. Otherwise, does nothing. + + +| _Param_ | _Type_ | _Description_ | +| --- | --- | --- | +| **curState** | CameraState& | The current camera state. | +| **deltaTime** | Single | How much to advance the perlin noise generator. Noise is only applied if this value is greater than or equal to 0. | + + + +### CinemachineBlendDefinition + +_Type:_ struct + +_Namespace:_ Cinemachine + + +Definition of a Camera blend. This struct holds the information necessary to generate a suitable AnimationCurve for a Cinemachine Blend. + +#### Properties + + +| _Name_ | _Type_ | _Description_ | +| --- | --- | --- | +| **BlendCurve** | AnimationCurve | _[Get]_ A normalized AnimationCurve specifying the interpolation curve for this camera blend. Y-axis values must be in range [0,1] (internally clamped within Blender) and time must be in range of [0, 1]. | + + +#### Fields + + +| _Name_ | _Type_ | _Description_ | +| --- | --- | --- | +| **m_Style** | Style | Shape of the blend curve.
_Possible Values:_
- **Cut**: Zero-length blend.
- **EaseInOut**: S-shaped curve, giving a gentle and smooth transition.
- **EaseIn**: Linear out of the outgoing shot, and easy into the incoming.
- **EaseOut**: Easy out of the outgoing shot, and linear into the incoming.
- **HardIn**: Easy out of the outgoing, and hard into the incoming.
- **HardOut**: Hard out of the outgoing, and easy into the incoming.
- **Linear**: Linear blend. Mechanical-looking.
- **Custom**: Custom blend curve.
| +| **m_Time** | Single | Duration of the blend, in seconds. | +| **m_CustomCurve** | AnimationCurve | A user-defined AnimationCurve, used only if style is Custom. Curve MUST be normalized, i.e. time range [0...1], value range [0...1]. | + + + +### CinemachineBlenderSettings + +_Type:_ class + +_Namespace:_ Cinemachine + +_Inherits:_ ScriptableObject + + +Asset that defines the rules for blending between Virtual Cameras. + +#### Fields + + +| _Name_ | _Type_ | _Description_ | +| --- | --- | --- | +| **m_CustomBlends** | CustomBlend[] | The array containing explicitly defined blends between two Virtual Cameras. | + + +#### Methods + +``AnimationCurve GetBlendCurveForVirtualCameras(String fromCameraName, String toCameraName, AnimationCurve defaultCurve)`` + +Attempts to find a blend curve which matches the to and from cameras as specified. If no match is found, the function returns either the default blend for this Blender or NULL depending on the state of returnDefaultOnNoMatch. + + +| _Param_ | _Type_ | _Description_ | +| --- | --- | --- | +| **fromCameraName** | String | The game object name of the from camera. | +| **toCameraName** | String | The game object name of the to camera. | +| **defaultCurve** | AnimationCurve | Curve to return if no curve found. Can be NULL. | + + + +### CinemachineBlenderSettings.CustomBlend + +_Type:_ struct + +_Namespace:_ Cinemachine + + +Container specifying how two specific Cinemachine Virtual Cameras blend together. + +#### Fields + + +| _Name_ | _Type_ | _Description_ | +| --- | --- | --- | +| **m_From** | String | When blending from this camera. | +| **m_To** | String | When blending to this camera. | +| **m_Blend** | CinemachineBlendDefinition | Blend curve definition. | + + + +### CinemachineBlendListCamera + +_Type:_ class + +_Namespace:_ Cinemachine + +_Inherits:_ CinemachineVirtualCameraBase + +_Implements:_ ICinemachineCamera + + +This is a virtual camera "manager" that owns and manages a collection of child Virtual Cameras. When the camera goes live, these child vcams are enabled, one after another, holding each camera for a designated time. Blends between cameras are specified. The last camera is held indefinitely. + +#### Properties + + +| _Name_ | _Type_ | _Description_ | +| --- | --- | --- | +| **Description** | String | _[Get]_ Gets a brief debug description of this virtual camera, for use when displayiong debug info. | +| **LiveChild** | ICinemachineCamera | _[Get,Set]_ Get the current "best" child virtual camera, that would be chosen if the State Driven Camera were active. | +| **LiveChildOrSelf** | ICinemachineCamera | _[Get]_ Return the live child. | +| **State** | CameraState | _[Get]_ The State of the current live child. | +| **LookAt** | Transform | _[Get,Set]_ Get the current LookAt target. Returns parent's LookAt if parent is non-null and no specific LookAt defined for this camera. | +| **Follow** | Transform | _[Get,Set]_ Get the current Follow target. Returns parent's Follow if parent is non-null and no specific Follow defined for this camera. | +| **ChildCameras** | CinemachineVirtualCameraBase[] | _[Get]_ The list of child cameras. These are just the immediate children in the hierarchy. | +| **IsBlending** | Boolean | _[Get]_ Is there a blend in progress? | + + +#### Fields + + +| _Name_ | _Type_ | _Description_ | +| --- | --- | --- | +| **m_LookAt** | Transform | Default object for the camera children to look at (the aim target), if not specified in a child camera. May be empty if all of the children define targets of their own. | +| **m_Follow** | Transform | Default object for the camera children wants to move with (the body target), if not specified in a child camera. May be empty if all of the children define targets of their own. | +| **m_ShowDebugText** | Boolean | When enabled, the current child camera and blend will be indicated in the game window, for debugging. | +| **m_EnableAllChildCameras** | Boolean | Force all child cameras to be enabled. This is useful if animating them in Timeline, but consumes extra resources. | +| **m_ChildCameras** | CinemachineVirtualCameraBase[] | Internal API for the editor. Do not use this field. | +| **m_Instructions** | Instruction[] | The set of instructions for enabling child cameras. | +| **CinemachineGUIDebuggerCallback** | Action | This is deprecated. It is here to support the soon-to-be-removed Cinemachine Debugger in the Editor. | +| **m_ExcludedPropertiesInInspector** | String[] | Inspector control - Use for hiding sections of the Inspector UI. | +| **m_LockStageInInspector** | Stage[] | Inspector control - Use for enabling sections of the Inspector UI. | +| **m_Priority** | Int32 | The priority will determine which camera becomes active based on the state of other cameras and this camera. Higher numbers have greater priority. | + + +#### Methods + +``virtual Boolean IsLiveChild(ICinemachineCamera vcam)`` + +Check whether the vcam a live child of this camera. + + +| _Param_ | _Type_ | _Description_ | +| --- | --- | --- | +| **vcam** | ICinemachineCamera | The Virtual Camera to check. | + +_Returns:_ True if the vcam is currently actively influencing the state of this vcam. +``virtual Void OnTargetObjectWarped(Transform target, Vector3 positionDelta)`` + +This is called to notify the vcam that a target got warped, so that the vcam can update its internal state to make the camera also warp seamlessy. + + +| _Param_ | _Type_ | _Description_ | +| --- | --- | --- | +| **target** | Transform | The object that was warped. | +| **positionDelta** | Vector3 | The amount the target's position changed. | + +``virtual Void OnTransitionFromCamera(ICinemachineCamera fromCam, Vector3 worldUp, Single deltaTime)`` + +Notification that this virtual camera is going live. + + +| _Param_ | _Type_ | _Description_ | +| --- | --- | --- | +| **fromCam** | ICinemachineCamera | The camera being deactivated. May be null. | +| **worldUp** | Vector3 | Default world Up, set by the CinemachineBrain. | +| **deltaTime** | Single | Delta time for time-based effects (ignore if less than or equal to 0). | + +``virtual Void InternalUpdateCameraState(Vector3 worldUp, Single deltaTime)`` + +Called by CinemachineCore at designated update time so the vcam can position itself and track its targets. This implementation updates all the children, chooses the best one, and implements any required blending. + + +| _Param_ | _Type_ | _Description_ | +| --- | --- | --- | +| **worldUp** | Vector3 | Default world Up, set by the CinemachineBrain. | +| **deltaTime** | Single | Delta time for time-based effects (ignore if less than or equal to 0). | + +``protected virtual Void OnEnable()`` + +Makes sure the internal child cache is up to date. + +``Void OnTransformChildrenChanged()`` + +Makes sure the internal child cache is up to date. + +``protected virtual Void OnGUI()`` + +Displays the current active camera on the game screen, if requested. + +``Void ValidateInstructions()`` + +Internal API for the inspector editor. + + + +### CinemachineBrain + +_Type:_ class + +_Namespace:_ Cinemachine + +_Inherits:_ MonoBehaviour + + +CinemachineBrain is the link between the Unity Camera and the Cinemachine Virtual Cameras in the scene. It monitors the priority stack to choose the current Virtual Camera, and blend with another if necessary. Finally and most importantly, it applies the Virtual Camera state to the attached Unity Camera. + +The CinemachineBrain is also the place where rules for blending between virtual cameras are defined. Camera blending is an interpolation over time of one virtual camera position and state to another. If you think of virtual cameras as cameramen, then blending is a little like one cameraman smoothly passing the camera to another cameraman. You can specify the time over which to blend, as well as the blend curve shape. Note that a camera cut is just a zero-time blend. + +#### Properties + + +| _Name_ | _Type_ | _Description_ | +| --- | --- | --- | +| **OutputCamera** | Camera | _[Get]_ Get the Unity Camera that is attached to this GameObject. This is the camera that will be controlled by the brain. | +| **PostProcessingComponent** | Component | _[Get,Set]_ Internal support for opaque post-processing module. | +| **SoloCamera** | ICinemachineCamera | _(static)_ _[Get,Set]_ API for the Unity Editor. Show this camera no matter what. This is static, and so affects all Cinemachine brains. | +| **DefaultWorldUp** | Vector3 | _[Get]_ Get the default world up for the virtual cameras. | +| **IsBlending** | Boolean | _[Get]_ Is there a blend in progress? | +| **ActiveBlend** | CinemachineBlend | _[Get]_ Get the current blend in progress. Returns null if none. | +| **ActiveVirtualCamera** | ICinemachineCamera | _[Get]_ Get the current active virtual camera. | +| **CurrentCameraState** | CameraState | _[Get]_ The current state applied to the unity camera (may be the result of a blend). | + + +#### Fields + + +| _Name_ | _Type_ | _Description_ | +| --- | --- | --- | +| **m_ShowDebugText** | Boolean | When enabled, the current camera and blend will be indicated in the game window, for debugging. | +| **m_ShowCameraFrustum** | Boolean | When enabled, the camera's frustum will be shown at all times in the scene view. | +| **m_IgnoreTimeScale** | Boolean | When enabled, the cameras will always respond in real-time to user input and damping, even if the game is running in slow motion. | +| **m_WorldUpOverride** | Transform | If set, this object's Y axis will define the worldspace Up vector for all the virtual cameras. This is useful for instance in top-down game environments. If not set, Up is worldspace Y. Setting this appropriately is important, because Virtual Cameras don't like looking straight up or straight down. | +| **m_UpdateMethod** | UpdateMethod | Use FixedUpdate if all your targets are animated during FixedUpdate (e.g. RigidBodies), LateUpdate if all your targets are animated during the normal Update loop, and SmartUpdate if you want Cinemachine to do the appropriate thing on a per-target basis. SmartUpdate is the recommended setting.
_Possible Values:_
- **FixedUpdate**: Virtual cameras are updated in sync with the Physics module, in FixedUpdate.
- **LateUpdate**: Virtual cameras are updated in MonoBehaviour LateUpdate.
- **SmartUpdate**: Virtual cameras are updated according to how the target is updated.
| +| **m_DefaultBlend** | CinemachineBlendDefinition | The blend that is used in cases where you haven't explicitly defined a blend between two Virtual Cameras. | +| **m_CustomBlends** | CinemachineBlenderSettings | This is the asset that contains custom settings for blends between specific virtual cameras in your scene. | +| **m_CameraCutEvent** | BrainEvent | This event will fire whenever a virtual camera goes live and there is no blend. | +| **m_CameraActivatedEvent** | VcamEvent | This event will fire whenever a virtual camera goes live. If a blend is involved, then the event will fire on the first frame of the blend. | + + +#### Methods + +``static Color GetSoloGUIColor()`` + +API for the Unity Editor. + +_Returns:_ Color used to indicate that a camera is in Solo mode. +``Boolean IsLive(ICinemachineCamera vcam)`` + +True if the ICinemachineCamera the current active camera, or part of a current blend, either directly or indirectly because its parents are live. + + +| _Param_ | _Type_ | _Description_ | +| --- | --- | --- | +| **vcam** | ICinemachineCamera | The camera to test whether it is live. | + +_Returns:_ True if the camera is live (directly or indirectly) or part of a blend in progress. + + +### CinemachineClearShot + +_Type:_ class + +_Namespace:_ Cinemachine + +_Inherits:_ CinemachineVirtualCameraBase + +_Implements:_ ICinemachineCamera + + +Cinemachine ClearShot is a "manager camera" that owns and manages a set of Virtual Camera gameObject children. When Live, the ClearShot will check the children, and choose the one with the best quality shot and make it Live. + +This can be a very powerful tool. If the child cameras have CinemachineCollider extensions, they will analyze the scene for target obstructions, optimal target distance, and other items, and report their assessment of shot quality back to the ClearShot parent, who will then choose the best one. You can use this to set up complex multi-camera coverage of a scene, and be assured that a clear shot of the target will always be available. + +If multiple child cameras have the same shot quality, the one with the highest priority will be chosen. + +You can also define custom blends between the ClearShot children. + +#### Properties + + +| _Name_ | _Type_ | _Description_ | +| --- | --- | --- | +| **Description** | String | _[Get]_ Gets a brief debug description of this virtual camera, for use when displayiong debug info. | +| **LiveChild** | ICinemachineCamera | _[Get,Set]_ Get the current "best" child virtual camera, that would be chosen if the ClearShot camera were active. | +| **State** | CameraState | _[Get]_ The CameraState of the currently live child. | +| **LiveChildOrSelf** | ICinemachineCamera | _[Get]_ Return the live child. | +| **LookAt** | Transform | _[Get,Set]_ Get the current LookAt target. Returns parent's LookAt if parent is non-null and no specific LookAt defined for this camera. | +| **Follow** | Transform | _[Get,Set]_ Get the current Follow target. Returns parent's Follow if parent is non-null and no specific Follow defined for this camera. | +| **IsBlending** | Boolean | _[Get]_ Is there a blend in progress? | +| **ChildCameras** | CinemachineVirtualCameraBase[] | _[Get]_ The list of child cameras. These are just the immediate children in the hierarchy. | + + +#### Fields + + +| _Name_ | _Type_ | _Description_ | +| --- | --- | --- | +| **m_LookAt** | Transform | Default object for the camera children to look at (the aim target), if not specified in a child camera. May be empty if all children specify targets of their own. | +| **m_Follow** | Transform | Default object for the camera children wants to move with (the body target), if not specified in a child camera. May be empty if all children specify targets of their own. | +| **m_ShowDebugText** | Boolean | When enabled, the current child camera and blend will be indicated in the game window, for debugging. | +| **m_ChildCameras** | CinemachineVirtualCameraBase[] | Internal API for the editor. Do not use this filed. | +| **m_ActivateAfter** | Single | Wait this many seconds before activating a new child camera. | +| **m_MinDuration** | Single | An active camera must be active for at least this many seconds. | +| **m_RandomizeChoice** | Boolean | If checked, camera choice will be randomized if multiple cameras are equally desirable. Otherwise, child list order and child camera priority will be used. | +| **m_DefaultBlend** | CinemachineBlendDefinition | The blend which is used if you don't explicitly define a blend between two Virtual Cameras. | +| **m_CustomBlends** | CinemachineBlenderSettings | This is the asset which contains custom settings for specific blends. | +| **CinemachineGUIDebuggerCallback** | Action | This is deprecated. It is here to support the soon-to-be-removed Cinemachine Debugger in the Editor. | +| **m_ExcludedPropertiesInInspector** | String[] | Inspector control - Use for hiding sections of the Inspector UI. | +| **m_LockStageInInspector** | Stage[] | Inspector control - Use for enabling sections of the Inspector UI. | +| **m_Priority** | Int32 | The priority will determine which camera becomes active based on the state of other cameras and this camera. Higher numbers have greater priority. | + + +#### Methods + +``virtual Boolean IsLiveChild(ICinemachineCamera vcam)`` + +Check whether the vcam a live child of this camera. + + +| _Param_ | _Type_ | _Description_ | +| --- | --- | --- | +| **vcam** | ICinemachineCamera | The Virtual Camera to check. | + +_Returns:_ True if the vcam is currently actively influencing the state of this vcam. +``virtual Void OnTargetObjectWarped(Transform target, Vector3 positionDelta)`` + +This is called to notify the vcam that a target got warped, so that the vcam can update its internal state to make the camera also warp seamlessy. + + +| _Param_ | _Type_ | _Description_ | +| --- | --- | --- | +| **target** | Transform | The object that was warped. | +| **positionDelta** | Vector3 | The amount the target's position changed. | + +``virtual Void InternalUpdateCameraState(Vector3 worldUp, Single deltaTime)`` + +Internal use only. Called by CinemachineCore at designated update time so the vcam can position itself and track its targets. This implementation updates all the children, chooses the best one, and implements any required blending. + + +| _Param_ | _Type_ | _Description_ | +| --- | --- | --- | +| **worldUp** | Vector3 | Default world Up, set by the CinemachineBrain. | +| **deltaTime** | Single | Delta time for time-based effects (ignore if less than 0). | + +``protected virtual Void OnEnable()`` + +Makes sure the internal child cache is up to date. + +``Void OnTransformChildrenChanged()`` + +Makes sure the internal child cache is up to date. + +``protected virtual Void OnGUI()`` + +Displays the current active camera on the game screen, if requested. + +``Void ResetRandomization()`` + +If RandomizeChoice is enabled, call this to re-randomize the children next frame. This is useful if you want to freshen up the shot. + +``virtual Void OnTransitionFromCamera(ICinemachineCamera fromCam, Vector3 worldUp, Single deltaTime)`` + +Notification that this virtual camera is going live. This implementation resets the child randomization. + + +| _Param_ | _Type_ | _Description_ | +| --- | --- | --- | +| **fromCam** | ICinemachineCamera | The camera being deactivated. May be null. | +| **worldUp** | Vector3 | Default world Up, set by the CinemachineBrain. | +| **deltaTime** | Single | Delta time for time-based effects (ignore if less than or equal to 0). | + + + +### CinemachineCollider + +_Type:_ class + +_Namespace:_ Cinemachine + +_Inherits:_ CinemachineExtension + + +An add-on module for Cinemachine Virtual Camera that post-processes the final position of the virtual camera. Based on the supplied settings, the Collider will attempt to preserve the line of sight with the LookAt target of the virtual camera by moving away from objects that will obstruct the view. + +Additionally, the Collider can be used to assess the shot quality and report this as a field in the camera State. + +#### Properties + + +| _Name_ | _Type_ | _Description_ | +| --- | --- | --- | +| **DebugPaths** | List`1 | _[Get]_ Inspector API for debugging collision resolution path. | + + +#### Fields + + +| _Name_ | _Type_ | _Description_ | +| --- | --- | --- | +| **m_CollideAgainst** | LayerMask | The Unity layer mask against which the collider will raycast. | +| **m_IgnoreTag** | String | Obstacles with this tag will be ignored. It is a good idea to set this field to the target's tag. | +| **m_MinimumDistanceFromTarget** | Single | Obstacles closer to the target than this will be ignored. | +| **m_AvoidObstacles** | Boolean | When enabled, will attempt to resolve situations where the line of sight to the target is blocked by an obstacle. | +| **m_DistanceLimit** | Single | The maximum raycast distance when checking if the line of sight to this camera's target is clear. If the setting is 0 or less, the current actual distance to target will be used. | +| **m_CameraRadius** | Single | Camera will try to maintain this distance from any obstacle. Try to keep this value small. Increase it if you are seeing inside obstacles due to a large FOV on the camera. | +| **m_Strategy** | ResolutionStrategy | The way in which the Collider will attempt to preserve sight of the target.
_Possible Values:_
- **PullCameraForward**
- **PreserveCameraHeight**
- **PreserveCameraDistance**
| +| **m_MaximumEffort** | Int32 | Upper limit on how many obstacle hits to process. Higher numbers may impact performance. In most environments, 4 is enough. | +| **m_Damping** | Single | The gradualness of collision resolution. Higher numbers will move the camera more gradually away from obstructions. | +| **m_OptimalTargetDistance** | Single | If greater than zero, a higher score will be given to shots when the target is closer to this distance. Set this to zero to disable this feature. | + + +#### Methods + +``Boolean IsTargetObscured(ICinemachineCamera vcam)`` + +See wheter an object is blocking the camera's view of the target. + + +| _Param_ | _Type_ | _Description_ | +| --- | --- | --- | +| **vcam** | ICinemachineCamera | The virtual camera in question. This might be different from the virtual camera that owns the collider, in the event that the camera has children. | + +_Returns:_ True if something is blocking the view. +``Boolean CameraWasDisplaced(CinemachineVirtualCameraBase vcam)`` + +See whether the virtual camera has been moved nby the collider. + + +| _Param_ | _Type_ | _Description_ | +| --- | --- | --- | +| **vcam** | CinemachineVirtualCameraBase | The virtual camera in question. This might be different from the virtual camera that owns the collider, in the event that the camera has children. | + +_Returns:_ True if the virtual camera has been displaced due to collision or target obstruction. +``protected virtual Void OnDestroy()`` + +Cleanup. + +``protected virtual Void PostPipelineStageCallback(CinemachineVirtualCameraBase vcam, Stage stage, CameraState& state, Single deltaTime)`` + +Callcack to to the collision resolution and shot evaluation. + + +| _Param_ | _Type_ | _Description_ | +| --- | --- | --- | +| **vcam** | CinemachineVirtualCameraBase | | +| **stage** | Stage | | +| **state** | CameraState& | | +| **deltaTime** | Single | | + + + +### CinemachineComposer + +_Type:_ class + +_Namespace:_ Cinemachine + +_Inherits:_ CinemachineComponentBase + + +This is a CinemachineComponent in the Aim section of the component pipeline. Its job is to aim the camera at the vcam's LookAt target object, with configurable offsets, damping, and composition rules. + +The composer does not change the camera's position. It will only pan and tilt the camera where it is, in order to get the desired framing. To move the camera, you have to use the virtual camera's Body section. + +#### Properties + + +| _Name_ | _Type_ | _Description_ | +| --- | --- | --- | +| **IsValid** | Boolean | _[Get]_ True if component is enabled and has a LookAt defined. | +| **Stage** | Stage | _[Get]_ Get the Cinemachine Pipeline stage that this component implements. Always returns the Aim stage.
_Possible Values:_
- **Body**
- **Aim**
- **Noise**
- **Finalize**
| +| **TrackedPoint** | Vector3 | _[Get]_ Internal API for inspector. | +| **SoftGuideRect** | Rect | _[Get,Set]_ Internal API for the inspector editor. | +| **HardGuideRect** | Rect | _[Get,Set]_ Internal API for the inspector editor. | + + +#### Fields + + +| _Name_ | _Type_ | _Description_ | +| --- | --- | --- | +| **OnGUICallback** | Action | Used by the Inspector Editor to display on-screen guides. | +| **m_TrackedObjectOffset** | Vector3 | Target offset from the target object's center in target-local space. Use this to fine-tune the tracking target position when the desired area is not the tracked object's center. | +| **m_LookaheadTime** | Single | This setting will instruct the composer to adjust its target offset based on the motion of the target. The composer will look at a point where it estimates the target will be this many seconds into the future. Note that this setting is sensitive to noisy animation, and can amplify the noise, resulting in undesirable camera jitter. If the camera jitters unacceptably when the target is in motion, turn down this setting, or animate the target more smoothly. | +| **m_LookaheadSmoothing** | Single | Controls the smoothness of the lookahead algorithm. Larger values smooth out jittery predictions and also increase prediction lag. | +| **m_LookaheadIgnoreY** | Boolean | If checked, movement along the Y axis will be ignored for lookahead calculations. | +| **m_HorizontalDamping** | Single | How aggressively the camera tries to follow the target in the screen-horizontal direction. Small numbers are more responsive, rapidly orienting the camera to keep the target in the dead zone. Larger numbers give a more heavy slowly responding camera. Using different vertical and horizontal settings can yield a wide range of camera behaviors. | +| **m_VerticalDamping** | Single | How aggressively the camera tries to follow the target in the screen-vertical direction. Small numbers are more responsive, rapidly orienting the camera to keep the target in the dead zone. Larger numbers give a more heavy slowly responding camera. Using different vertical and horizontal settings can yield a wide range of camera behaviors. | +| **m_ScreenX** | Single | Horizontal screen position for target. The camera will rotate to position the tracked object here. | +| **m_ScreenY** | Single | Vertical screen position for target, The camera will rotate to position the tracked object here. | +| **m_DeadZoneWidth** | Single | Camera will not rotate horizontally if the target is within this range of the position. | +| **m_DeadZoneHeight** | Single | Camera will not rotate vertically if the target is within this range of the position. | +| **m_SoftZoneWidth** | Single | When target is within this region, camera will gradually rotate horizontally to re-align towards the desired position, depending on the damping speed. | +| **m_SoftZoneHeight** | Single | When target is within this region, camera will gradually rotate vertically to re-align towards the desired position, depending on the damping speed. | +| **m_BiasX** | Single | A non-zero bias will move the target position horizontally away from the center of the soft zone. | +| **m_BiasY** | Single | A non-zero bias will move the target position vertically away from the center of the soft zone. | + + +#### Methods + +``protected virtual Vector3 GetLookAtPointAndSetTrackedPoint(Vector3 lookAt)`` + +Apply the target offsets to the target location. Also set the TrackedPoint property, taking lookahead into account. + + +| _Param_ | _Type_ | _Description_ | +| --- | --- | --- | +| **lookAt** | Vector3 | The unoffset LookAt point. | + +_Returns:_ The LookAt point with the offset applied. +``virtual Void OnTargetObjectWarped(Transform target, Vector3 positionDelta)`` + +This is called to notify the us that a target got warped, so that we can update its internal state to make the camera also warp seamlessy. + + +| _Param_ | _Type_ | _Description_ | +| --- | --- | --- | +| **target** | Transform | The object that was warped. | +| **positionDelta** | Vector3 | The amount the target's position changed. | + +``virtual Void PrePipelineMutateCameraState(CameraState& curState)`` + + + + +| _Param_ | _Type_ | _Description_ | +| --- | --- | --- | +| **curState** | CameraState& | | + +``virtual Void MutateCameraState(CameraState& curState, Single deltaTime)`` + +Applies the composer rules and orients the camera accordingly. + + +| _Param_ | _Type_ | _Description_ | +| --- | --- | --- | +| **curState** | CameraState& | The current camera state. | +| **deltaTime** | Single | Used for calculating damping. If less than zero, then target will snap to the center of the dead zone. | + + + +### CinemachineConfiner + +_Type:_ class + +_Namespace:_ Cinemachine + +_Inherits:_ CinemachineExtension + + +An add-on module for Cinemachine Virtual Camera that post-processes the final position of the virtual camera. It will confine the virtual camera's position to the volume specified in the Bounding Volume field. + +#### Properties + + +| _Name_ | _Type_ | _Description_ | +| --- | --- | --- | +| **IsValid** | Boolean | _[Get]_ Check if the bounding volume is defined. | + + +#### Fields + + +| _Name_ | _Type_ | _Description_ | +| --- | --- | --- | +| **m_ConfineMode** | Mode | The confiner can operate using a 2D bounding shape or a 3D bounding volume.
_Possible Values:_
- **Confine2D**
- **Confine3D**
| +| **m_BoundingVolume** | Collider | The volume within which the camera is to be contained. | +| **m_BoundingShape2D** | Collider2D | The 2D shape within which the camera is to be contained. | +| **m_ConfineScreenEdges** | Boolean | If camera is orthographic, screen edges will be confined to the volume. If not checked, then only the camera center will be confined. | +| **m_Damping** | Single | How gradually to return the camera to the bounding volume if it goes beyond the borders. Higher numbers are more gradual. | + + +#### Methods + +``Boolean CameraWasDisplaced(CinemachineVirtualCameraBase vcam)`` + +See whether the virtual camera has been moved by the confiner. + + +| _Param_ | _Type_ | _Description_ | +| --- | --- | --- | +| **vcam** | CinemachineVirtualCameraBase | The virtual camera in question. This might be different from the virtual camera that owns the confiner, in the event that the camera has children. | + +_Returns:_ True if the virtual camera has been repositioned. +``protected virtual Void PostPipelineStageCallback(CinemachineVirtualCameraBase vcam, Stage stage, CameraState& state, Single deltaTime)`` + +Callback to to the camera confining. + + +| _Param_ | _Type_ | _Description_ | +| --- | --- | --- | +| **vcam** | CinemachineVirtualCameraBase | | +| **stage** | Stage | | +| **state** | CameraState& | | +| **deltaTime** | Single | | + +``Void InvalidatePathCache()`` + +Call this if the bounding shape's points change at runtime. + + + +### CinemachineDollyCart + +_Type:_ class + +_Namespace:_ Cinemachine + +_Inherits:_ MonoBehaviour + + +This is a very simple behaviour that constrains its transform to a CinemachinePath. It can be used to animate any objects along a path, or as a Follow target for Cinemachine Virtual Cameras. + +#### Fields + + +| _Name_ | _Type_ | _Description_ | +| --- | --- | --- | +| **m_Path** | CinemachinePathBase | The path to follow. | +| **m_UpdateMethod** | UpdateMethod | When to move the cart, if Velocity is non-zero.
_Possible Values:_
- **Update**
- **FixedUpdate**
| +| **m_PositionUnits** | PositionUnits | How to interpret the Path Position. If set to Path Units, values are as follows: 0 represents the first waypoint on the path, 1 is the second, and so on. Values in-between are points on the path in between the waypoints. If set to Distance, then Path Position represents distance along the path.
_Possible Values:_
- **PathUnits**
- **Distance**
- **Normalized**
| +| **m_Speed** | Single | Move the cart with this speed along the path. The value is interpreted according to the Position Units setting. | +| **m_Position** | Single | The position along the path at which the cart will be placed. This can be animated directly or, if the velocity is non-zero, will be updated automatically. The value is interpreted according to the Position Units setting. | + + + +### CinemachineExternalCamera + +_Type:_ class + +_Namespace:_ Cinemachine + +_Inherits:_ CinemachineVirtualCameraBase + +_Implements:_ ICinemachineCamera + + +This component will expose a non-cinemachine camera to the cinemachine system, allowing it to participate in blends. Just add it as a component alongside an existing Unity Camera component. + +#### Properties + + +| _Name_ | _Type_ | _Description_ | +| --- | --- | --- | +| **State** | CameraState | _[Get]_ Get the CameraState, as we are able to construct one from the Unity Camera. | +| **LookAt** | Transform | _[Get,Set]_ The object that the camera is looking at. | +| **Follow** | Transform | _[Get,Set]_ This vcam defines no targets. | + + +#### Fields + + +| _Name_ | _Type_ | _Description_ | +| --- | --- | --- | +| **m_LookAt** | Transform | The object that the camera is looking at. Setting this will improve the quality of the blends to and from this camera. | +| **m_PositionBlending** | PositionBlendMethod | Hint for blending positions to and from this virtual camera.
_Possible Values:_
- **Linear**
- **Spherical**
- **Cylindrical**
| +| **CinemachineGUIDebuggerCallback** | Action | This is deprecated. It is here to support the soon-to-be-removed Cinemachine Debugger in the Editor. | +| **m_ExcludedPropertiesInInspector** | String[] | Inspector control - Use for hiding sections of the Inspector UI. | +| **m_LockStageInInspector** | Stage[] | Inspector control - Use for enabling sections of the Inspector UI. | +| **m_Priority** | Int32 | The priority will determine which camera becomes active based on the state of other cameras and this camera. Higher numbers have greater priority. | + + +#### Methods + +``virtual Void InternalUpdateCameraState(Vector3 worldUp, Single deltaTime)`` + +Internal use only. Do not call this method. + + +| _Param_ | _Type_ | _Description_ | +| --- | --- | --- | +| **worldUp** | Vector3 | | +| **deltaTime** | Single | | + + + +### CinemachineFollowZoom + +_Type:_ class + +_Namespace:_ Cinemachine + +_Inherits:_ CinemachineExtension + + +An add-on module for Cinemachine Virtual Camera that adjusts the FOV of the lens to keep the target object at a constant size on the screen, regardless of camera and target position. + +#### Fields + + +| _Name_ | _Type_ | _Description_ | +| --- | --- | --- | +| **m_Width** | Single | The shot width to maintain, in world units, at target distance. | +| **m_Damping** | Single | Increase this value to soften the aggressiveness of the follow-zoom. Small numbers are more responsive, larger numbers give a more heavy slowly responding camera. | +| **m_MinFOV** | Single | Lower limit for the FOV that this behaviour will generate. | +| **m_MaxFOV** | Single | Upper limit for the FOV that this behaviour will generate. | + + +#### Methods + +``protected virtual Void PostPipelineStageCallback(CinemachineVirtualCameraBase vcam, Stage stage, CameraState& state, Single deltaTime)`` + +Callback to preform the zoom adjustment. + + +| _Param_ | _Type_ | _Description_ | +| --- | --- | --- | +| **vcam** | CinemachineVirtualCameraBase | | +| **stage** | Stage | | +| **state** | CameraState& | | +| **deltaTime** | Single | | + + + +### CinemachineFramingTransposer + +_Type:_ class + +_Namespace:_ Cinemachine + +_Inherits:_ CinemachineComponentBase + + +This is a Cinemachine Component in the Body section of the component pipeline. Its job is to position the camera in a fixed screen-space relationship to the vcam's Follow target object, with offsets and damping. + +The camera will be first moved along the camera Z axis until the Follow target is at the desired distance from the camera's X-Y plane. The camera will then be moved in its XY plane until the Follow target is at the desired point on the camera's screen. + +The FramingTansposer will only change the camera's position in space. It will not re-orient or otherwise aim the camera. + +For this component to work properly, the vcam's LookAt target must be null. The Follow target will define what the camera is looking at. + +If the Follow target is a CinemachineTargetGroup, then additional controls will be available to dynamically adjust the camera's view in order to frame the entire group. + +Although this component was designed for orthographic cameras, it works equally well with persective cameras and can be used in 3D environments. + +#### Properties + + +| _Name_ | _Type_ | _Description_ | +| --- | --- | --- | +| **SoftGuideRect** | Rect | _[Get,Set]_ Internal API for the inspector editor. | +| **HardGuideRect** | Rect | _[Get,Set]_ Internal API for the inspector editor. | +| **IsValid** | Boolean | _[Get]_ True if component is enabled and has a valid Follow target. | +| **Stage** | Stage | _[Get]_ Get the Cinemachine Pipeline stage that this component implements. Always returns the Body stage.
_Possible Values:_
- **Body**
- **Aim**
- **Noise**
- **Finalize**
| +| **TrackedPoint** | Vector3 | _[Get]_ Internal API for inspector. | +| **m_LastBounds** | Bounds | _[Get]_ For editor visulaization of the calculated bounding box of the group. | +| **m_lastBoundsMatrix** | Matrix4x4 | _[Get]_ For editor visualization of the calculated bounding box of the group. | +| **TargetGroup** | CinemachineTargetGroup | _[Get]_ Get Follow target as CinemachineTargetGroup, or null if target is not a group. | + + +#### Fields + + +| _Name_ | _Type_ | _Description_ | +| --- | --- | --- | +| **OnGUICallback** | Action | Used by the Inspector Editor to display on-screen guides. | +| **m_LookaheadTime** | Single | This setting will instruct the composer to adjust its target offset based on the motion of the target. The composer will look at a point where it estimates the target will be this many seconds into the future. Note that this setting is sensitive to noisy animation, and can amplify the noise, resulting in undesirable camera jitter. If the camera jitters unacceptably when the target is in motion, turn down this setting, or animate the target more smoothly. | +| **m_LookaheadSmoothing** | Single | Controls the smoothness of the lookahead algorithm. Larger values smooth out jittery predictions and also increase prediction lag. | +| **m_LookaheadIgnoreY** | Boolean | If checked, movement along the Y axis will be ignored for lookahead calculations. | +| **m_XDamping** | Single | How aggressively the camera tries to maintain the offset in the X-axis. Small numbers are more responsive, rapidly translating the camera to keep the target's x-axis offset. Larger numbers give a more heavy slowly responding camera. Using different settings per axis can yield a wide range of camera behaviors. | +| **m_YDamping** | Single | How aggressively the camera tries to maintain the offset in the Y-axis. Small numbers are more responsive, rapidly translating the camera to keep the target's y-axis offset. Larger numbers give a more heavy slowly responding camera. Using different settings per axis can yield a wide range of camera behaviors. | +| **m_ZDamping** | Single | How aggressively the camera tries to maintain the offset in the Z-axis. Small numbers are more responsive, rapidly translating the camera to keep the target's z-axis offset. Larger numbers give a more heavy slowly responding camera. Using different settings per axis can yield a wide range of camera behaviors. | +| **m_ScreenX** | Single | Horizontal screen position for target. The camera will move to position the tracked object here. | +| **m_ScreenY** | Single | Vertical screen position for target, The camera will move to position the tracked object here. | +| **m_CameraDistance** | Single | The distance along the camera axis that will be maintained from the Follow target. | +| **m_DeadZoneWidth** | Single | Camera will not move horizontally if the target is within this range of the position. | +| **m_DeadZoneHeight** | Single | Camera will not move vertically if the target is within this range of the position. | +| **m_DeadZoneDepth** | Single | The camera will not move along its z-axis if the Follow target is within this distance of the specified camera distance. | +| **m_UnlimitedSoftZone** | Boolean | If checked, then then soft zone will be unlimited in size. | +| **m_SoftZoneWidth** | Single | When target is within this region, camera will gradually move horizontally to re-align towards the desired position, depending on the damping speed. | +| **m_SoftZoneHeight** | Single | When target is within this region, camera will gradually move vertically to re-align towards the desired position, depending on the damping speed. | +| **m_BiasX** | Single | A non-zero bias will move the target position horizontally away from the center of the soft zone. | +| **m_BiasY** | Single | A non-zero bias will move the target position vertically away from the center of the soft zone. | +| **m_GroupFramingMode** | FramingMode | What screen dimensions to consider when framing. Can be Horizontal, Vertical, or both.
_Possible Values:_
- **Horizontal**: Consider only the horizontal dimension. Vertical framing is ignored.
- **Vertical**: Consider only the vertical dimension. Horizontal framing is ignored.
- **HorizontalAndVertical**: The larger of the horizontal and vertical dimensions will dominate, to get the best fit.
- **None**: Don't do any framing adjustment.
| +| **m_AdjustmentMode** | AdjustmentMode | How to adjust the camera to get the desired framing. You can zoom, dolly in/out, or do both.
_Possible Values:_
- **ZoomOnly**
- **DollyOnly**
- **DollyThenZoom**
| +| **m_GroupFramingSize** | Single | The bounding box of the targets should occupy this amount of the screen space. 1 means fill the whole screen. 0.5 means fill half the screen, etc. | +| **m_MaxDollyIn** | Single | The maximum distance toward the target that this behaviour is allowed to move the camera. | +| **m_MaxDollyOut** | Single | The maximum distance away the target that this behaviour is allowed to move the camera. | +| **m_MinimumDistance** | Single | Set this to limit how close to the target the camera can get. | +| **m_MaximumDistance** | Single | Set this to limit how far from the target the camera can get. | +| **m_MinimumFOV** | Single | If adjusting FOV, will not set the FOV lower than this. | +| **m_MaximumFOV** | Single | If adjusting FOV, will not set the FOV higher than this. | +| **m_MinimumOrthoSize** | Single | If adjusting Orthographic Size, will not set it lower than this. | +| **m_MaximumOrthoSize** | Single | If adjusting Orthographic Size, will not set it higher than this. | + + +#### Methods + +``virtual Void OnTargetObjectWarped(Transform target, Vector3 positionDelta)`` + +This is called to notify the us that a target got warped, so that we can update its internal state to make the camera also warp seamlessy. + + +| _Param_ | _Type_ | _Description_ | +| --- | --- | --- | +| **target** | Transform | The object that was warped. | +| **positionDelta** | Vector3 | The amount the target's position changed. | + +``virtual Void MutateCameraState(CameraState& curState, Single deltaTime)`` + +Positions the virtual camera according to the transposer rules. + + +| _Param_ | _Type_ | _Description_ | +| --- | --- | --- | +| **curState** | CameraState& | The current camera state. | +| **deltaTime** | Single | Used for damping. If less than 0, no damping is done. | + + + +### CinemachineFreeLook + +_Type:_ class + +_Namespace:_ Cinemachine + +_Inherits:_ CinemachineVirtualCameraBase + +_Implements:_ ICinemachineCamera + + +A Cinemachine Camera geared towards a 3rd person camera experience. The camera orbits around its subject with three separate camera rigs defining rings around the target. Each rig has its own radius, height offset, composer, and lens settings. Depending on the camera's position along the spline connecting these three rigs, these settings are interpolated to give the final camera position and state. + +#### Properties + + +| _Name_ | _Type_ | _Description_ | +| --- | --- | --- | +| **RigNames** | String[] | _(static)_ _[Get]_ Names of the 3 child rigs. | +| **State** | CameraState | _[Get]_ The cacmera state, which will be a blend of the child rig states. | +| **LookAt** | Transform | _[Get,Set]_ Get the current LookAt target. Returns parent's LookAt if parent is non-null and no specific LookAt defined for this camera. | +| **Follow** | Transform | _[Get,Set]_ Get the current Follow target. Returns parent's Follow if parent is non-null and no specific Follow defined for this camera. | +| **LiveChildOrSelf** | ICinemachineCamera | _[Get]_ Returns the rig with the greatest weight. | + + +#### Fields + + +| _Name_ | _Type_ | _Description_ | +| --- | --- | --- | +| **m_LookAt** | Transform | Object for the camera children to look at (the aim target). | +| **m_Follow** | Transform | Object for the camera children wants to move with (the body target). | +| **m_PositionBlending** | PositionBlendMethod | Hint for blending positions to and from this virtual camera.
_Possible Values:_
- **Linear**
- **Spherical**
- **Cylindrical**
| +| **m_CommonLens** | Boolean | If enabled, this lens setting will apply to all three child rigs, otherwise the child rig lens settings will be used. | +| **m_Lens** | LensSettings | Specifies the lens properties of this Virtual Camera. This generally mirrors the Unity Camera's lens settings, and will be used to drive the Unity camera when the vcam is active. | +| **m_YAxis** | AxisState | The Vertical axis. Value is 0..1. Chooses how to blend the child rigs. | +| **m_YAxisRecentering** | Recentering | Controls how automatic recentering of the Y axis is accomplished. | +| **m_XAxis** | AxisState | The Horizontal axis. Value is -180...180. This is passed on to the rigs' OrbitalTransposer component. | +| **m_Heading** | Heading | The definition of Forward. Camera will follow behind. | +| **m_RecenterToTargetHeading** | Recentering | Controls how automatic recentering of the X axis is accomplished. | +| **m_BindingMode** | BindingMode | The coordinate space to use when interpreting the offset from the target. This is also used to set the camera's Up vector, which will be maintained when aiming the camera.
_Possible Values:_
- **LockToTargetOnAssign**: Camera will be bound to the Follow target using a frame of reference consisting of the target's local frame at the moment when the virtual camera was enabled, or when the target was assigned.
- **LockToTargetWithWorldUp**: Camera will be bound to the Follow target using a frame of reference consisting of the target's local frame, with the tilt and roll zeroed out.
- **LockToTargetNoRoll**: Camera will be bound to the Follow target using a frame of reference consisting of the target's local frame, with the roll zeroed out.
- **LockToTarget**: Camera will be bound to the Follow target using the target's local frame.
- **WorldSpace**: Camera will be bound to the Follow target using a world space offset.
- **SimpleFollowWithWorldUp**: Offsets will be calculated relative to the target, using Camera-local axes.
| +| **m_SplineCurvature** | Single | Controls how taut is the line that connects the rigs' orbits, which determines final placement on the Y axis. | +| **m_Orbits** | Orbit[] | The radius and height of the three orbiting rigs. | +| **CinemachineGUIDebuggerCallback** | Action | This is deprecated. It is here to support the soon-to-be-removed Cinemachine Debugger in the Editor. | +| **m_ExcludedPropertiesInInspector** | String[] | Inspector control - Use for hiding sections of the Inspector UI. | +| **m_LockStageInInspector** | Stage[] | Inspector control - Use for enabling sections of the Inspector UI. | +| **m_Priority** | Int32 | The priority will determine which camera becomes active based on the state of other cameras and this camera. Higher numbers have greater priority. | + + +#### Methods + +``protected virtual Void OnValidate()`` + +Enforce bounds for fields, when changed in inspector. + +``CinemachineVirtualCamera GetRig(Int32 i)`` + +Get a child rig. + + +| _Param_ | _Type_ | _Description_ | +| --- | --- | --- | +| **i** | Int32 | Rig index. Can be 0, 1, or 2. | + +_Returns:_ The rig, or null if index is bad. +``protected virtual Void OnEnable()`` + +Updates the child rig cache. + +``protected virtual Void OnDestroy()`` + +Makes sure that the child rigs get destroyed in an undo-firndly manner. Invalidates the rig cache. + +``virtual Boolean IsLiveChild(ICinemachineCamera vcam)`` + +Check whether the vcam a live child of this camera. Returns true if the child is currently contributing actively to the camera state. + + +| _Param_ | _Type_ | _Description_ | +| --- | --- | --- | +| **vcam** | ICinemachineCamera | The Virtual Camera to check. | + +_Returns:_ True if the vcam is currently actively influencing the state of this vcam. +``virtual Void OnTargetObjectWarped(Transform target, Vector3 positionDelta)`` + +This is called to notify the vcam that a target got warped, so that the vcam can update its internal state to make the camera also warp seamlessy. + + +| _Param_ | _Type_ | _Description_ | +| --- | --- | --- | +| **target** | Transform | The object that was warped. | +| **positionDelta** | Vector3 | The amount the target's position changed. | + +``virtual Void InternalUpdateCameraState(Vector3 worldUp, Single deltaTime)`` + +Internal use only. Called by CinemachineCore at designated update time so the vcam can position itself and track its targets. All 3 child rigs are updated, and a blend calculated, depending on the value of the Y axis. + + +| _Param_ | _Type_ | _Description_ | +| --- | --- | --- | +| **worldUp** | Vector3 | Default world Up, set by the CinemachineBrain. | +| **deltaTime** | Single | Delta time for time-based effects (ignore if less than 0). | + +``virtual Void OnTransitionFromCamera(ICinemachineCamera fromCam, Vector3 worldUp, Single deltaTime)`` + +If we are transitioning from another FreeLook, grab the axis values from it. + + +| _Param_ | _Type_ | _Description_ | +| --- | --- | --- | +| **fromCam** | ICinemachineCamera | The camera being deactivated. May be null. | +| **worldUp** | Vector3 | Default world Up, set by the CinemachineBrain. | +| **deltaTime** | Single | Delta time for time-based effects (ignore if less than or equal to 0). | + +``Vector3 GetLocalPositionForCameraFromInput(Single t)`` + +Returns the local position of the camera along the spline used to connect the three camera rigs. Does not take into account the current heading of the camera (or its target). + + +| _Param_ | _Type_ | _Description_ | +| --- | --- | --- | +| **t** | Single | The t-value for the camera on its spline. Internally clamped to the value [0,1]. | + +_Returns:_ The local offset (back + up) of the camera WRT its target based on the supplied t-value. + + +### CinemachineGroupComposer + +_Type:_ class + +_Namespace:_ Cinemachine + +_Inherits:_ CinemachineComposer + + +This is a CinemachineComponent in the Aim section of the component pipeline. Its job is to aim the camera at a target object, with configurable offsets, damping, and composition rules. + +In addition, if the target is a CinemachineTargetGroup, the behaviour will adjust the FOV and the camera distance to ensure that the entire group of targets is framed properly. + +#### Properties + + +| _Name_ | _Type_ | _Description_ | +| --- | --- | --- | +| **TargetGroup** | CinemachineTargetGroup | _[Get]_ Get LookAt target as CinemachineTargetGroup, or null if target is not a group. | +| **m_LastBounds** | Bounds | _[Get]_ For editor visulaization of the calculated bounding box of the group. | +| **m_lastBoundsMatrix** | Matrix4x4 | _[Get]_ For editor visualization of the calculated bounding box of the group. | + + +#### Fields + + +| _Name_ | _Type_ | _Description_ | +| --- | --- | --- | +| **m_GroupFramingSize** | Single | The bounding box of the targets should occupy this amount of the screen space. 1 means fill the whole screen. 0.5 means fill half the screen, etc. | +| **m_FramingMode** | FramingMode | What screen dimensions to consider when framing. Can be Horizontal, Vertical, or both.
_Possible Values:_
- **Horizontal**: Consider only the horizontal dimension. Vertical framing is ignored.
- **Vertical**: Consider only the vertical dimension. Horizontal framing is ignored.
- **HorizontalAndVertical**: The larger of the horizontal and vertical dimensions will dominate, to get the best fit.
| +| **m_FrameDamping** | Single | How aggressively the camera tries to frame the group. Small numbers are more responsive, rapidly adjusting the camera to keep the group in the frame. Larger numbers give a more heavy slowly responding camera. | +| **m_AdjustmentMode** | AdjustmentMode | How to adjust the camera to get the desired framing. You can zoom, dolly in/out, or do both.
_Possible Values:_
- **ZoomOnly**
- **DollyOnly**
- **DollyThenZoom**
| +| **m_MaxDollyIn** | Single | The maximum distance toward the target that this behaviour is allowed to move the camera. | +| **m_MaxDollyOut** | Single | The maximum distance away the target that this behaviour is allowed to move the camera. | +| **m_MinimumDistance** | Single | Set this to limit how close to the target the camera can get. | +| **m_MaximumDistance** | Single | Set this to limit how far from the target the camera can get. | +| **m_MinimumFOV** | Single | If adjusting FOV, will not set the FOV lower than this. | +| **m_MaximumFOV** | Single | If adjusting FOV, will not set the FOV higher than this. | +| **m_MinimumOrthoSize** | Single | If adjusting Orthographic Size, will not set it lower than this. | +| **m_MaximumOrthoSize** | Single | If adjusting Orthographic Size, will not set it higher than this. | +| **OnGUICallback** | Action | Used by the Inspector Editor to display on-screen guides. | +| **m_TrackedObjectOffset** | Vector3 | Target offset from the target object's center in target-local space. Use this to fine-tune the tracking target position when the desired area is not the tracked object's center. | +| **m_LookaheadTime** | Single | This setting will instruct the composer to adjust its target offset based on the motion of the target. The composer will look at a point where it estimates the target will be this many seconds into the future. Note that this setting is sensitive to noisy animation, and can amplify the noise, resulting in undesirable camera jitter. If the camera jitters unacceptably when the target is in motion, turn down this setting, or animate the target more smoothly. | +| **m_LookaheadSmoothing** | Single | Controls the smoothness of the lookahead algorithm. Larger values smooth out jittery predictions and also increase prediction lag. | +| **m_LookaheadIgnoreY** | Boolean | If checked, movement along the Y axis will be ignored for lookahead calculations. | +| **m_HorizontalDamping** | Single | How aggressively the camera tries to follow the target in the screen-horizontal direction. Small numbers are more responsive, rapidly orienting the camera to keep the target in the dead zone. Larger numbers give a more heavy slowly responding camera. Using different vertical and horizontal settings can yield a wide range of camera behaviors. | +| **m_VerticalDamping** | Single | How aggressively the camera tries to follow the target in the screen-vertical direction. Small numbers are more responsive, rapidly orienting the camera to keep the target in the dead zone. Larger numbers give a more heavy slowly responding camera. Using different vertical and horizontal settings can yield a wide range of camera behaviors. | +| **m_ScreenX** | Single | Horizontal screen position for target. The camera will rotate to position the tracked object here. | +| **m_ScreenY** | Single | Vertical screen position for target, The camera will rotate to position the tracked object here. | +| **m_DeadZoneWidth** | Single | Camera will not rotate horizontally if the target is within this range of the position. | +| **m_DeadZoneHeight** | Single | Camera will not rotate vertically if the target is within this range of the position. | +| **m_SoftZoneWidth** | Single | When target is within this region, camera will gradually rotate horizontally to re-align towards the desired position, depending on the damping speed. | +| **m_SoftZoneHeight** | Single | When target is within this region, camera will gradually rotate vertically to re-align towards the desired position, depending on the damping speed. | +| **m_BiasX** | Single | A non-zero bias will move the target position horizontally away from the center of the soft zone. | +| **m_BiasY** | Single | A non-zero bias will move the target position vertically away from the center of the soft zone. | + + +#### Methods + +``virtual Void MutateCameraState(CameraState& curState, Single deltaTime)`` + +Applies the composer rules and orients the camera accordingly. + + +| _Param_ | _Type_ | _Description_ | +| --- | --- | --- | +| **curState** | CameraState& | The current camera state. | +| **deltaTime** | Single | Used for calculating damping. If less than zero, then target will snap to the center of the dead zone. | + + + +### CinemachineHardLockToTarget + +_Type:_ class + +_Namespace:_ Cinemachine + +_Inherits:_ CinemachineComponentBase + + +This is a CinemachineComponent in the Aim section of the component pipeline. Its job is to place the camera on the Follow Target. + +#### Properties + + +| _Name_ | _Type_ | _Description_ | +| --- | --- | --- | +| **IsValid** | Boolean | _[Get]_ True if component is enabled and has a LookAt defined. | +| **Stage** | Stage | _[Get]_ Get the Cinemachine Pipeline stage that this component implements. Always returns the Aim stage.
_Possible Values:_
- **Body**
- **Aim**
- **Noise**
- **Finalize**
| + + +#### Methods + +``virtual Void MutateCameraState(CameraState& curState, Single deltaTime)`` + +Applies the composer rules and orients the camera accordingly. + + +| _Param_ | _Type_ | _Description_ | +| --- | --- | --- | +| **curState** | CameraState& | The current camera state. | +| **deltaTime** | Single | Used for calculating damping. If less than zero, then target will snap to the center of the dead zone. | + + + +### CinemachineHardLookAt + +_Type:_ class + +_Namespace:_ Cinemachine + +_Inherits:_ CinemachineComponentBase + + +This is a CinemachineComponent in the Aim section of the component pipeline. Its job is to aim the camera hard at the LookAt target. + +#### Properties + + +| _Name_ | _Type_ | _Description_ | +| --- | --- | --- | +| **IsValid** | Boolean | _[Get]_ True if component is enabled and has a LookAt defined. | +| **Stage** | Stage | _[Get]_ Get the Cinemachine Pipeline stage that this component implements. Always returns the Aim stage.
_Possible Values:_
- **Body**
- **Aim**
- **Noise**
- **Finalize**
| + + +#### Methods + +``virtual Void MutateCameraState(CameraState& curState, Single deltaTime)`` + +Applies the composer rules and orients the camera accordingly. + + +| _Param_ | _Type_ | _Description_ | +| --- | --- | --- | +| **curState** | CameraState& | The current camera state. | +| **deltaTime** | Single | Used for calculating damping. If less than zero, then target will snap to the center of the dead zone. | + + + +### CinemachineMixingCamera + +_Type:_ class + +_Namespace:_ Cinemachine + +_Inherits:_ CinemachineVirtualCameraBase + +_Implements:_ ICinemachineCamera + + +CinemachineMixingCamera is a "manager camera" that takes on the state of the weighted average of the states of its child virtual cameras. + +A fixed number of slots are made available for cameras, rather than a dynamic array. We do it this way in order to support weight animation from the Timeline. Timeline cannot animate array elements. + +#### Properties + + +| _Name_ | _Type_ | _Description_ | +| --- | --- | --- | +| **State** | CameraState | _[Get]_ The blended CameraState. | +| **LookAt** | Transform | _[Get,Set]_ Not used. | +| **Follow** | Transform | _[Get,Set]_ Not used. | +| **LiveChildOrSelf** | ICinemachineCamera | _[Get]_ Return the live child. | +| **ChildCameras** | CinemachineVirtualCameraBase[] | _[Get]_ Get the cached list of child cameras. These are just the immediate children in the hierarchy. Note: only the first entries of this list participate in the final blend, up to MaxCameras. | + + +#### Fields + + +| _Name_ | _Type_ | _Description_ | +| --- | --- | --- | +| **m_Weight0** | Single | The weight of the first tracked camera. | +| **m_Weight1** | Single | The weight of the second tracked camera. | +| **m_Weight2** | Single | The weight of the third tracked camera. | +| **m_Weight3** | Single | The weight of the fourth tracked camera. | +| **m_Weight4** | Single | The weight of the fifth tracked camera. | +| **m_Weight5** | Single | The weight of the sixth tracked camera. | +| **m_Weight6** | Single | The weight of the seventh tracked camera. | +| **m_Weight7** | Single | The weight of the eighth tracked camera. | +| **CinemachineGUIDebuggerCallback** | Action | This is deprecated. It is here to support the soon-to-be-removed Cinemachine Debugger in the Editor. | +| **m_ExcludedPropertiesInInspector** | String[] | Inspector control - Use for hiding sections of the Inspector UI. | +| **m_LockStageInInspector** | Stage[] | Inspector control - Use for enabling sections of the Inspector UI. | +| **m_Priority** | Int32 | The priority will determine which camera becomes active based on the state of other cameras and this camera. Higher numbers have greater priority. | + + +#### Methods + +``Single GetWeight(Int32 index)`` + +Get the weight of the child at an index. + + +| _Param_ | _Type_ | _Description_ | +| --- | --- | --- | +| **index** | Int32 | The child index. Only immediate CinemachineVirtualCameraBase children are counted. | + +_Returns:_ The weight of the camera. Valid only if camera is active and enabled. +``Void SetWeight(Int32 index, Single w)`` + +Set the weight of the child at an index. + + +| _Param_ | _Type_ | _Description_ | +| --- | --- | --- | +| **index** | Int32 | The child index. Only immediate CinemachineVirtualCameraBase children are counted. | +| **w** | Single | The weight to set. Can be any non-negative number. | + +``Single GetWeight(CinemachineVirtualCameraBase vcam)`` + +Get the weight of the child CinemachineVirtualCameraBase. + + +| _Param_ | _Type_ | _Description_ | +| --- | --- | --- | +| **vcam** | CinemachineVirtualCameraBase | The child camera. | + +_Returns:_ The weight of the camera. Valid only if camera is active and enabled. +``Void SetWeight(CinemachineVirtualCameraBase vcam, Single w)`` + +Set the weight of the child CinemachineVirtualCameraBase. + + +| _Param_ | _Type_ | _Description_ | +| --- | --- | --- | +| **vcam** | CinemachineVirtualCameraBase | The child camera. | +| **w** | Single | The weight to set. Can be any non-negative number. | + +``virtual Void OnTargetObjectWarped(Transform target, Vector3 positionDelta)`` + +This is called to notify the vcam that a target got warped, so that the vcam can update its internal state to make the camera also warp seamlessy. + + +| _Param_ | _Type_ | _Description_ | +| --- | --- | --- | +| **target** | Transform | The object that was warped. | +| **positionDelta** | Vector3 | The amount the target's position changed. | + +``protected virtual Void OnEnable()`` + +Makes sure the internal child cache is up to date. + +``Void OnTransformChildrenChanged()`` + +Makes sure the internal child cache is up to date. + +``protected virtual Void OnValidate()`` + +Makes sure the weights are non-negative. + +``virtual Boolean IsLiveChild(ICinemachineCamera vcam)`` + +Check whether the vcam a live child of this camera. + + +| _Param_ | _Type_ | _Description_ | +| --- | --- | --- | +| **vcam** | ICinemachineCamera | The Virtual Camera to check. | + +_Returns:_ True if the vcam is currently actively influencing the state of this vcam. +``protected Void InvalidateListOfChildren()`` + +Invalidate the cached list of child cameras. + +``protected Void ValidateListOfChildren()`` + +Rebuild the cached list of child cameras. + +``virtual Void InternalUpdateCameraState(Vector3 worldUp, Single deltaTime)`` + +Internal use only. Do not call this methid. Called by CinemachineCore at designated update time so the vcam can position itself and track its targets. This implementation computes and caches the weighted blend of the tracked cameras. + + +| _Param_ | _Type_ | _Description_ | +| --- | --- | --- | +| **worldUp** | Vector3 | Default world Up, set by the CinemachineBrain. | +| **deltaTime** | Single | Delta time for time-based effects (ignore if less than 0). | + + + +### CinemachineOrbitalTransposer + +_Type:_ class + +_Namespace:_ Cinemachine + +_Inherits:_ CinemachineTransposer + + +This is a CinemachineComponent in the the Body section of the component pipeline. Its job is to position the camera in a variable relationship to a the vcam's Follow target object, with offsets and damping. + +This component is typically used to implement a camera that follows its target. It can accept player input from an input device, which allows the player to dynamically control the relationship between the camera and the target, for example with a joystick. + +The OrbitalTransposer introduces the concept of __Heading__, which is the direction in which the target is moving, and the OrbitalTransposer will attempt to position the camera in relationship to the heading, which is by default directly behind the target. You can control the default relationship by adjusting the Heading Bias setting. + +If you attach an input controller to the OrbitalTransposer, then the player can also control the way the camera positions itself in relation to the target heading. This allows the camera to move to any spot on an orbit around the target. + +#### Fields + + +| _Name_ | _Type_ | _Description_ | +| --- | --- | --- | +| **m_Heading** | Heading | The definition of Forward. Camera will follow behind. | +| **m_RecenterToTargetHeading** | Recentering | Automatic heading recentering. The settings here defines how the camera will reposition itself in the absence of player input. | +| **m_XAxis** | AxisState | Heading Control. The settings here control the behaviour of the camera in response to the player's input. | +| **m_HeadingIsSlave** | Boolean | Drive the x-axis setting programmatically. Automatic heading updating will be disabled. | +| **m_BindingMode** | BindingMode | The coordinate space to use when interpreting the offset from the target. This is also used to set the camera's Up vector, which will be maintained when aiming the camera.
_Possible Values:_
- **LockToTargetOnAssign**: Camera will be bound to the Follow target using a frame of reference consisting of the target's local frame at the moment when the virtual camera was enabled, or when the target was assigned.
- **LockToTargetWithWorldUp**: Camera will be bound to the Follow target using a frame of reference consisting of the target's local frame, with the tilt and roll zeroed out.
- **LockToTargetNoRoll**: Camera will be bound to the Follow target using a frame of reference consisting of the target's local frame, with the roll zeroed out.
- **LockToTarget**: Camera will be bound to the Follow target using the target's local frame.
- **WorldSpace**: Camera will be bound to the Follow target using a world space offset.
- **SimpleFollowWithWorldUp**: Offsets will be calculated relative to the target, using Camera-local axes.
| +| **m_FollowOffset** | Vector3 | The distance vector that the transposer will attempt to maintain from the Follow target. | +| **m_XDamping** | Single | How aggressively the camera tries to maintain the offset in the X-axis. Small numbers are more responsive, rapidly translating the camera to keep the target's x-axis offset. Larger numbers give a more heavy slowly responding camera. Using different settings per axis can yield a wide range of camera behaviors. | +| **m_YDamping** | Single | How aggressively the camera tries to maintain the offset in the Y-axis. Small numbers are more responsive, rapidly translating the camera to keep the target's y-axis offset. Larger numbers give a more heavy slowly responding camera. Using different settings per axis can yield a wide range of camera behaviors. | +| **m_ZDamping** | Single | How aggressively the camera tries to maintain the offset in the Z-axis. Small numbers are more responsive, rapidly translating the camera to keep the target's z-axis offset. Larger numbers give a more heavy slowly responding camera. Using different settings per axis can yield a wide range of camera behaviors. | +| **m_PitchDamping** | Single | How aggressively the camera tries to track the target rotation's X angle. Small numbers are more responsive. Larger numbers give a more heavy slowly responding camera. | +| **m_YawDamping** | Single | How aggressively the camera tries to track the target rotation's Y angle. Small numbers are more responsive. Larger numbers give a more heavy slowly responding camera. | +| **m_RollDamping** | Single | How aggressively the camera tries to track the target rotation's Z angle. Small numbers are more responsive. Larger numbers give a more heavy slowly responding camera. | + + +#### Methods + +``protected virtual Void OnValidate()`` + + + +``Single UpdateHeading(Single deltaTime, Vector3 up, AxisState& axis)`` + +Update the X axis and calculate the heading. This can be called by a delegate with a custom axis. Used for damping. If less than 0, no damping is done.World Up, set by the CinemachineBrainAxis value. + + +| _Param_ | _Type_ | _Description_ | +| --- | --- | --- | +| **deltaTime** | Single | Used for damping. If less than 0, no damping is done. | +| **up** | Vector3 | World Up, set by the CinemachineBrain. | +| **axis** | AxisState& | | + +_Returns:_ Axis value. +``virtual Void OnTargetObjectWarped(Transform target, Vector3 positionDelta)`` + +This is called to notify the us that a target got warped, so that we can update its internal state to make the camera also warp seamlessy. + + +| _Param_ | _Type_ | _Description_ | +| --- | --- | --- | +| **target** | Transform | The object that was warped. | +| **positionDelta** | Vector3 | The amount the target's position changed. | + +``virtual Void MutateCameraState(CameraState& curState, Single deltaTime)`` + +Positions the virtual camera according to the transposer rules. + + +| _Param_ | _Type_ | _Description_ | +| --- | --- | --- | +| **curState** | CameraState& | The current camera state. | +| **deltaTime** | Single | Used for damping. If less than 0, no damping is done. | + + + +### CinemachineOrbitalTransposer.Heading + +_Type:_ struct + +_Namespace:_ Cinemachine + + +How the "forward" direction is defined. Orbital offset is in relation to the forward direction. + +#### Fields + + +| _Name_ | _Type_ | _Description_ | +| --- | --- | --- | +| **m_Definition** | HeadingDefinition | How 'forward' is defined. The camera will be placed by default behind the target. PositionDelta will consider 'forward' to be the direction in which the target is moving.
_Possible Values:_
- **PositionDelta**: Target heading calculated from the difference between its position on the last update and current frame.
- **Velocity**: Target heading calculated from its Rigidbody's velocity. If no Rigidbody exists, it will fall back to HeadingDerivationMode.PositionDelta.
- **TargetForward**: Target heading calculated from the Target Transform's euler Y angle.
- **WorldForward**: Default heading is a constant world space heading.
| +| **m_VelocityFilterStrength** | Int32 | Size of the velocity sampling window for target heading filter. This filters out irregularities in the target's movement. Used only if deriving heading from target's movement (PositionDelta or Velocity). | +| **m_Bias** | Single | Where the camera is placed when the X-axis value is zero. This is a rotation in degrees around the Y axis. When this value is 0, the camera will be placed behind the target. Nonzero offsets will rotate the zero position around the target. | + + + +### CinemachinePath + +_Type:_ class + +_Namespace:_ Cinemachine + +_Inherits:_ CinemachinePathBase + + +Defines a world-space path, consisting of an array of waypoints, each of which has position, tangent, and roll settings. Bezier interpolation is performed between the waypoints, to get a smooth and continuous path. + +#### Properties + + +| _Name_ | _Type_ | _Description_ | +| --- | --- | --- | +| **MinPos** | Single | _[Get]_ The minimum value for the path position. | +| **MaxPos** | Single | _[Get]_ The maximum value for the path position. | +| **Looped** | Boolean | _[Get]_ True if the path ends are joined to form a continuous loop. | +| **DistanceCacheSampleStepsPerSegment** | Int32 | _[Get]_ When calculating the distance cache, sample the path this many times between points. | + + +#### Fields + + +| _Name_ | _Type_ | _Description_ | +| --- | --- | --- | +| **m_Looped** | Boolean | If checked, then the path ends are joined to form a continuous loop. | +| **m_Waypoints** | Waypoint[] | The waypoints that define the path. They will be interpolated using a bezier curve. | +| **m_Resolution** | Int32 | Path samples per waypoint. This is used for calculating path distances. | +| **m_Appearance** | Appearance | The settings that control how the path will appear in the editor scene view. | + + +#### Methods + +``virtual Vector3 EvaluatePosition(Single pos)`` + +Get a worldspace position of a point along the path. + + +| _Param_ | _Type_ | _Description_ | +| --- | --- | --- | +| **pos** | Single | Postion along the path. Need not be normalized. | + +_Returns:_ World-space position of the point along at path at pos. +``virtual Vector3 EvaluateTangent(Single pos)`` + +Get the tangent of the curve at a point along the path. + + +| _Param_ | _Type_ | _Description_ | +| --- | --- | --- | +| **pos** | Single | Postion along the path. Need not be normalized. | + +_Returns:_ World-space direction of the path tangent. Length of the vector represents the tangent strength. +``virtual Quaternion EvaluateOrientation(Single pos)`` + +Get the orientation the curve at a point along the path. + + +| _Param_ | _Type_ | _Description_ | +| --- | --- | --- | +| **pos** | Single | Postion along the path. Need not be normalized. | + +_Returns:_ World-space orientation of the path, as defined by tangent, up, and roll. + + +### CinemachinePath.Waypoint + +_Type:_ struct + +_Namespace:_ Cinemachine + + +A waypoint along the path. + +#### Fields + + +| _Name_ | _Type_ | _Description_ | +| --- | --- | --- | +| **position** | Vector3 | Position in path-local space. | +| **tangent** | Vector3 | Offset from the position, which defines the tangent of the curve at the waypoint. The length of the tangent encodes the strength of the bezier handle. The same handle is used symmetrically on both sides of the waypoint, to ensure smoothness. | +| **roll** | Single | Defines the roll of the path at this waypoint. The other orientation axes are inferred from the tangent and world up. | + + + +### CinemachinePathBase.Appearance + +_Type:_ class + +_Namespace:_ Cinemachine + + +This class holds the settings that control how the path will appear in the editor scene view. The path is not visible in the game view. + +#### Fields + + +| _Name_ | _Type_ | _Description_ | +| --- | --- | --- | +| **pathColor** | Color | The color of the path itself when it is active in the editor. | +| **inactivePathColor** | Color | The color of the path itself when it is inactive in the editor. | +| **width** | Single | The width of the railroad-tracks that are drawn to represent the path. | + + + +### CinemachinePOV + +_Type:_ class + +_Namespace:_ Cinemachine + +_Inherits:_ CinemachineComponentBase + + +This is a CinemachineComponent in the Aim section of the component pipeline. Its job is to aim the camera in response to the user's mouse or joystick input. + +The composer does not change the camera's position. It will only pan and tilt the camera where it is, in order to get the desired framing. To move the camera, you have to use the virtual camera's Body section. + +#### Properties + + +| _Name_ | _Type_ | _Description_ | +| --- | --- | --- | +| **IsValid** | Boolean | _[Get]_ True if component is enabled and has a LookAt defined. | +| **Stage** | Stage | _[Get]_ Get the Cinemachine Pipeline stage that this component implements. Always returns the Aim stage.
_Possible Values:_
- **Body**
- **Aim**
- **Noise**
- **Finalize**
| + + +#### Fields + + +| _Name_ | _Type_ | _Description_ | +| --- | --- | --- | +| **m_VerticalAxis** | AxisState | The Vertical axis. Value is -90..90. Controls the vertical orientation. | +| **m_VerticalRecentering** | Recentering | Controls how automatic recentering of the Vertical axis is accomplished. | +| **m_HorizontalAxis** | AxisState | The Horizontal axis. Value is -180..180. Controls the horizontal orientation. | +| **m_HorizontalRecentering** | Recentering | Controls how automatic recentering of the Horizontal axis is accomplished. | + + +#### Methods + +``virtual Void MutateCameraState(CameraState& curState, Single deltaTime)`` + +Applies the axis values and orients the camera accordingly. + + +| _Param_ | _Type_ | _Description_ | +| --- | --- | --- | +| **curState** | CameraState& | The current camera state. | +| **deltaTime** | Single | Used for calculating damping. Not used. | + + + +### CinemachineSameAsFollowTarget + +_Type:_ class + +_Namespace:_ Cinemachine + +_Inherits:_ CinemachineComponentBase + + +This is a CinemachineComponent in the Aim section of the component pipeline. Its job is to match the orientation of the Follow target. + +#### Properties + + +| _Name_ | _Type_ | _Description_ | +| --- | --- | --- | +| **IsValid** | Boolean | _[Get]_ True if component is enabled and has a Follow target defined. | +| **Stage** | Stage | _[Get]_ Get the Cinemachine Pipeline stage that this component implements. Always returns the Aim stage.
_Possible Values:_
- **Body**
- **Aim**
- **Noise**
- **Finalize**
| + + +#### Methods + +``virtual Void MutateCameraState(CameraState& curState, Single deltaTime)`` + +Orients the camera to match the Follow target's orientation. + + +| _Param_ | _Type_ | _Description_ | +| --- | --- | --- | +| **curState** | CameraState& | The current camera state. | +| **deltaTime** | Single | Not used. | + + + +### CinemachineSmoothPath + +_Type:_ class + +_Namespace:_ Cinemachine + +_Inherits:_ CinemachinePathBase + + +Defines a world-space path, consisting of an array of waypoints, each of which has position and roll settings. Bezier interpolation is performed between the waypoints, to get a smooth and continuous path. The path will pass through all waypoints, and (unlike CinemachinePath) first and second order continuity is guaranteed. + +#### Properties + + +| _Name_ | _Type_ | _Description_ | +| --- | --- | --- | +| **MinPos** | Single | _[Get]_ The minimum value for the path position. | +| **MaxPos** | Single | _[Get]_ The maximum value for the path position. | +| **Looped** | Boolean | _[Get]_ True if the path ends are joined to form a continuous loop. | +| **DistanceCacheSampleStepsPerSegment** | Int32 | _[Get]_ When calculating the distance cache, sample the path this many times between points. | + + +#### Fields + + +| _Name_ | _Type_ | _Description_ | +| --- | --- | --- | +| **m_Looped** | Boolean | If checked, then the path ends are joined to form a continuous loop. | +| **m_Waypoints** | Waypoint[] | The waypoints that define the path. They will be interpolated using a bezier curve. | +| **m_Resolution** | Int32 | Path samples per waypoint. This is used for calculating path distances. | +| **m_Appearance** | Appearance | The settings that control how the path will appear in the editor scene view. | + + +#### Methods + +``virtual Void InvalidateDistanceCache()`` + +Call this if the path changes in such a way as to affect distances or other cached path elements. + +``virtual Vector3 EvaluatePosition(Single pos)`` + +Get a worldspace position of a point along the path. + + +| _Param_ | _Type_ | _Description_ | +| --- | --- | --- | +| **pos** | Single | Postion along the path. Need not be normalized. | + +_Returns:_ World-space position of the point along at path at pos. +``virtual Vector3 EvaluateTangent(Single pos)`` + +Get the tangent of the curve at a point along the path. + + +| _Param_ | _Type_ | _Description_ | +| --- | --- | --- | +| **pos** | Single | Postion along the path. Need not be normalized. | + +_Returns:_ World-space direction of the path tangent. Length of the vector represents the tangent strength. +``virtual Quaternion EvaluateOrientation(Single pos)`` + +Get the orientation the curve at a point along the path. + + +| _Param_ | _Type_ | _Description_ | +| --- | --- | --- | +| **pos** | Single | Postion along the path. Need not be normalized. | + +_Returns:_ World-space orientation of the path, as defined by tangent, up, and roll. + + +### CinemachineSmoothPath.Waypoint + +_Type:_ struct + +_Namespace:_ Cinemachine + + +A waypoint along the path. + +#### Fields + + +| _Name_ | _Type_ | _Description_ | +| --- | --- | --- | +| **position** | Vector3 | Position in path-local space. | +| **roll** | Single | Defines the roll of the path at this waypoint. The other orientation axes are inferred from the tangent and world up. | + + + +### CinemachineStateDrivenCamera + +_Type:_ class + +_Namespace:_ Cinemachine + +_Inherits:_ CinemachineVirtualCameraBase + +_Implements:_ ICinemachineCamera + + +This is a virtual camera "manager" that owns and manages a collection of child Virtual Cameras. These child vcams are mapped to individual states in an animation state machine, allowing you to associate specific vcams to specific animation states. When that state is active in the state machine, then the associated camera will be activated. + +You can define custom blends and transitions between child cameras. + +In order to use this behaviour, you must have an animated target (i.e. an object animated with a state machine) to drive the behaviour. + +#### Properties + + +| _Name_ | _Type_ | _Description_ | +| --- | --- | --- | +| **Description** | String | _[Get]_ Gets a brief debug description of this virtual camera, for use when displayiong debug info. | +| **LiveChild** | ICinemachineCamera | _[Get,Set]_ Get the current "best" child virtual camera, that would be chosen if the State Driven Camera were active. | +| **LiveChildOrSelf** | ICinemachineCamera | _[Get]_ Return the live child. | +| **State** | CameraState | _[Get]_ The State of the current live child. | +| **LookAt** | Transform | _[Get,Set]_ Get the current LookAt target. Returns parent's LookAt if parent is non-null and no specific LookAt defined for this camera. | +| **Follow** | Transform | _[Get,Set]_ Get the current Follow target. Returns parent's Follow if parent is non-null and no specific Follow defined for this camera. | +| **ChildCameras** | CinemachineVirtualCameraBase[] | _[Get]_ The list of child cameras. These are just the immediate children in the hierarchy. | +| **IsBlending** | Boolean | _[Get]_ Is there a blend in progress? | + + +#### Fields + + +| _Name_ | _Type_ | _Description_ | +| --- | --- | --- | +| **m_LookAt** | Transform | Default object for the camera children to look at (the aim target), if not specified in a child camera. May be empty if all of the children define targets of their own. | +| **m_Follow** | Transform | Default object for the camera children wants to move with (the body target), if not specified in a child camera. May be empty if all of the children define targets of their own. | +| **m_AnimatedTarget** | Animator | The state machine whose state changes will drive this camera's choice of active child. | +| **m_LayerIndex** | Int32 | Which layer in the target state machine to observe. | +| **m_ShowDebugText** | Boolean | When enabled, the current child camera and blend will be indicated in the game window, for debugging. | +| **m_EnableAllChildCameras** | Boolean | Force all child cameras to be enabled. This is useful if animating them in Timeline, but consumes extra resources. | +| **m_ChildCameras** | CinemachineVirtualCameraBase[] | Internal API for the editor. Do not use this field. | +| **m_Instructions** | Instruction[] | The set of instructions associating virtual cameras with states. These instructions are used to choose the live child at any given moment. | +| **m_DefaultBlend** | CinemachineBlendDefinition | The blend which is used if you don't explicitly define a blend between two Virtual Camera children. | +| **m_CustomBlends** | CinemachineBlenderSettings | This is the asset which contains custom settings for specific child blends. | +| **m_ParentHash** | ParentHash[] | Internal API for the Inspector editor. | +| **CinemachineGUIDebuggerCallback** | Action | This is deprecated. It is here to support the soon-to-be-removed Cinemachine Debugger in the Editor. | +| **m_ExcludedPropertiesInInspector** | String[] | Inspector control - Use for hiding sections of the Inspector UI. | +| **m_LockStageInInspector** | Stage[] | Inspector control - Use for enabling sections of the Inspector UI. | +| **m_Priority** | Int32 | The priority will determine which camera becomes active based on the state of other cameras and this camera. Higher numbers have greater priority. | + + +#### Methods + +``virtual Boolean IsLiveChild(ICinemachineCamera vcam)`` + +Check whether the vcam a live child of this camera. + + +| _Param_ | _Type_ | _Description_ | +| --- | --- | --- | +| **vcam** | ICinemachineCamera | The Virtual Camera to check. | + +_Returns:_ True if the vcam is currently actively influencing the state of this vcam. +``virtual Void OnTargetObjectWarped(Transform target, Vector3 positionDelta)`` + +This is called to notify the vcam that a target got warped, so that the vcam can update its internal state to make the camera also warp seamlessy. + + +| _Param_ | _Type_ | _Description_ | +| --- | --- | --- | +| **target** | Transform | The object that was warped. | +| **positionDelta** | Vector3 | The amount the target's position changed. | + +``virtual Void InternalUpdateCameraState(Vector3 worldUp, Single deltaTime)`` + +Internal use only. Do not call this method. Called by CinemachineCore at designated update time so the vcam can position itself and track its targets. This implementation updates all the children, chooses the best one, and implements any required blending. + + +| _Param_ | _Type_ | _Description_ | +| --- | --- | --- | +| **worldUp** | Vector3 | Default world Up, set by the CinemachineBrain. | +| **deltaTime** | Single | Delta time for time-based effects (ignore if less than or equal to 0). | + +``protected virtual Void OnEnable()`` + +Makes sure the internal child cache is up to date. + +``Void OnTransformChildrenChanged()`` + +Makes sure the internal child cache is up to date. + +``protected virtual Void OnGUI()`` + +Displays the current active camera on the game screen, if requested. + +``static String CreateFakeHashName(Int32 parentHash, String stateName)`` + +API for the inspector editor. Animation module does not have hashes for state parents, so we have to invent them in order to implement nested state handling. + + +| _Param_ | _Type_ | _Description_ | +| --- | --- | --- | +| **parentHash** | Int32 | | +| **stateName** | String | | + +``Void ValidateInstructions()`` + +Internal API for the inspector editor. + + + +### CinemachineStoryboard + +_Type:_ class + +_Namespace:_ Cinemachine + +_Inherits:_ CinemachineExtension + + +An add-on module for Cinemachine Virtual Camera that places an image in screen space over the camera's output. + +#### Fields + + +| _Name_ | _Type_ | _Description_ | +| --- | --- | --- | +| **m_ShowImage** | Boolean | If checked, the specified image will be displayed as an overlay over the virtual camera's output. | +| **m_Image** | Texture | The image to display. | +| **m_Aspect** | FillStrategy | How to handle differences between image aspect and screen aspect.
_Possible Values:_
- **BestFit**
- **CropImageToFit**
- **StretchToFit**
| +| **m_Alpha** | Single | The opacity of the image. 0 is transparent, 1 is opaque. | +| **m_Center** | Vector2 | The screen-space position at which to display the image. Zero is center. | +| **m_Rotation** | Vector3 | The screen-space rotation to apply to the image. | +| **m_Scale** | Vector2 | The screen-space scaling to apply to the image. | +| **m_SyncScale** | Boolean | If checked, X and Y scale are synchronized. | +| **m_MuteCamera** | Boolean | If checked, Camera transform will not be controlled by this virtual camera. | +| **m_SplitView** | Single | Wipe the image on and off horizontally. | + + +#### Methods + +``protected virtual Void PostPipelineStageCallback(CinemachineVirtualCameraBase vcam, Stage stage, CameraState& state, Single deltaTime)`` + +Standard CinemachineExtension callback. + + +| _Param_ | _Type_ | _Description_ | +| --- | --- | --- | +| **vcam** | CinemachineVirtualCameraBase | | +| **stage** | Stage | | +| **state** | CameraState& | | +| **deltaTime** | Single | | + +``protected virtual Void OnDestroy()`` + + + +``protected virtual Void ConnectToVcam(Boolean connect)`` + + + + +| _Param_ | _Type_ | _Description_ | +| --- | --- | --- | +| **connect** | Boolean | | + + + +### CinemachineTargetGroup + +_Type:_ class + +_Namespace:_ Cinemachine + +_Inherits:_ MonoBehaviour + + +Defines a group of target objects, each with a radius and a weight. The weight is used when calculating the average position of the target group. Higher-weighted members of the group will count more. The bounding box is calculated by taking the member positions, weight, and radii into account. + +#### Properties + + +| _Name_ | _Type_ | _Description_ | +| --- | --- | --- | +| **BoundingBox** | Bounds | _[Get]_ The axis-aligned bounding box of the group, computed using the targets positions and radii. | +| **IsEmpty** | Boolean | _[Get]_ Return true if there are no members with weight > 0. | + + +#### Fields + + +| _Name_ | _Type_ | _Description_ | +| --- | --- | --- | +| **m_PositionMode** | PositionMode | How the group's position is calculated. Select GroupCenter for the center of the bounding box, and GroupAverage for a weighted average of the positions of the members.
_Possible Values:_
- **GroupCenter**: Group position will be the center of the group's axis-aligned bounding box.
- **GroupAverage**: Group position will be the weighted average of the positions of the members.
| +| **m_RotationMode** | RotationMode | How the group's rotation is calculated. Select Manual to use the value in the group's transform, and GroupAverage for a weighted average of the orientations of the members.
_Possible Values:_
- **Manual**: Manually set in the group's transform.
- **GroupAverage**: Weighted average of the orientation of its members.
| +| **m_UpdateMethod** | UpdateMethod | When to update the group's transform based on the position of the group members.
_Possible Values:_
- **Update**
- **FixedUpdate**
- **LateUpdate**
| +| **m_Targets** | Target[] | The target objects, together with their weights and radii, that will contribute to the group's average position, orientation, and size. | + + +#### Methods + +``Bounds GetViewSpaceBoundingBox(Matrix4x4 mView)`` + +The axis-aligned bounding box of the group, in a specific reference frame. + + +| _Param_ | _Type_ | _Description_ | +| --- | --- | --- | +| **mView** | Matrix4x4 | The frame of reference in which to compute the bounding box. | + +_Returns:_ The axis-aligned bounding box of the group, in the desired frame of reference. + + +### CinemachineTargetGroup.Target + +_Type:_ struct + +_Namespace:_ Cinemachine + + +Holds the information that represents a member of the group. + +#### Fields + + +| _Name_ | _Type_ | _Description_ | +| --- | --- | --- | +| **target** | Transform | The target objects. This object's position and orientation will contribute to the group's average position and orientation, in accordance with its weight. | +| **weight** | Single | How much weight to give the target when averaging. Cannot be negative. | +| **radius** | Single | The radius of the target, used for calculating the bounding box. Cannot be negative. | + + + +### CinemachineTrackedDolly + +_Type:_ class + +_Namespace:_ Cinemachine + +_Inherits:_ CinemachineComponentBase + + +A Cinemachine Virtual Camera Body component that constrains camera motion to a CinemachinePath. The camera can move along the path. + +This behaviour can operate in two modes: manual positioning, and Auto-Dolly positioning. In Manual mode, the camera's position is specified by animating the Path Position field. In Auto-Dolly mode, the Path Position field is animated automatically every frame by finding the position on the path that's closest to the virtual camera's Follow target. + +#### Properties + + +| _Name_ | _Type_ | _Description_ | +| --- | --- | --- | +| **IsValid** | Boolean | _[Get]_ True if component is enabled and has a path. | +| **Stage** | Stage | _[Get]_ Get the Cinemachine Pipeline stage that this component implements. Always returns the Body stage.
_Possible Values:_
- **Body**
- **Aim**
- **Noise**
- **Finalize**
| + + +#### Fields + + +| _Name_ | _Type_ | _Description_ | +| --- | --- | --- | +| **m_Path** | CinemachinePathBase | The path to which the camera will be constrained. This must be non-null. | +| **m_PathPosition** | Single | The position along the path at which the camera will be placed. This can be animated directly, or set automatically by the Auto-Dolly feature to get as close as possible to the Follow target. The value is interpreted according to the Position Units setting. | +| **m_PositionUnits** | PositionUnits | How to interpret Path Position. If set to Path Units, values are as follows: 0 represents the first waypoint on the path, 1 is the second, and so on. Values in-between are points on the path in between the waypoints. If set to Distance, then Path Position represents distance along the path.
_Possible Values:_
- **PathUnits**
- **Distance**
- **Normalized**
| +| **m_PathOffset** | Vector3 | Where to put the camera relative to the path position. X is perpendicular to the path, Y is up, and Z is parallel to the path. This allows the camera to be offset from the path itself (as if on a tripod, for example). | +| **m_XDamping** | Single | How aggressively the camera tries to maintain its position in a direction perpendicular to the path. Small numbers are more responsive, rapidly translating the camera to keep the target's x-axis offset. Larger numbers give a more heavy slowly responding camera. Using different settings per axis can yield a wide range of camera behaviors. | +| **m_YDamping** | Single | How aggressively the camera tries to maintain its position in the path-local up direction. Small numbers are more responsive, rapidly translating the camera to keep the target's y-axis offset. Larger numbers give a more heavy slowly responding camera. Using different settings per axis can yield a wide range of camera behaviors. | +| **m_ZDamping** | Single | How aggressively the camera tries to maintain its position in a direction parallel to the path. Small numbers are more responsive, rapidly translating the camera to keep the target's z-axis offset. Larger numbers give a more heavy slowly responding camera. Using different settings per axis can yield a wide range of camera behaviors. | +| **m_CameraUp** | CameraUpMode | How to set the virtual camera's Up vector. This will affect the screen composition, because the camera Aim behaviours will always try to respect the Up direction.
_Possible Values:_
- **Default**: Leave the camera's up vector alone. It will be set according to the Brain's WorldUp.
- **Path**: Take the up vector from the path's up vector at the current point.
- **PathNoRoll**: Take the up vector from the path's up vector at the current point, but with the roll zeroed out.
- **FollowTarget**: Take the up vector from the Follow target's up vector.
- **FollowTargetNoRoll**: Take the up vector from the Follow target's up vector, but with the roll zeroed out.
| +| **m_PitchDamping** | Single | How aggressively the camera tries to track the target rotation's X angle. Small numbers are more responsive. Larger numbers give a more heavy slowly responding camera. | +| **m_YawDamping** | Single | How aggressively the camera tries to track the target rotation's Y angle. Small numbers are more responsive. Larger numbers give a more heavy slowly responding camera. | +| **m_RollDamping** | Single | How aggressively the camera tries to track the target rotation's Z angle. Small numbers are more responsive. Larger numbers give a more heavy slowly responding camera. | +| **m_AutoDolly** | AutoDolly | Controls how automatic dollying occurs. A Follow target is necessary to use this feature. | + + +#### Methods + +``virtual Void MutateCameraState(CameraState& curState, Single deltaTime)`` + +Positions the virtual camera according to the transposer rules. + + +| _Param_ | _Type_ | _Description_ | +| --- | --- | --- | +| **curState** | CameraState& | The current camera state. | +| **deltaTime** | Single | Used for damping. If less that 0, no damping is done. | + + + +### CinemachineTrackedDolly.AutoDolly + +_Type:_ struct + +_Namespace:_ Cinemachine + + +Controls how automatic dollying occurs. + +#### Fields + + +| _Name_ | _Type_ | _Description_ | +| --- | --- | --- | +| **m_Enabled** | Boolean | If checked, will enable automatic dolly, which chooses a path position that is as close as possible to the Follow target. Note: this can have significant performance impact. | +| **m_PositionOffset** | Single | Offset, in current position units, from the closest point on the path to the follow target. | +| **m_SearchRadius** | Int32 | Search up to how many waypoints on either side of the current position. Use 0 for Entire path. | +| **m_SearchResolution** | Int32 | We search between waypoints by dividing the segment into this many straight pieces. The higher the number, the more accurate the result, but performance is proportionally slower for higher numbers. | + + + +### CinemachineTransposer + +_Type:_ class + +_Namespace:_ Cinemachine + +_Inherits:_ CinemachineComponentBase + + +This is a CinemachineComponent in the Body section of the component pipeline. Its job is to position the camera in a fixed relationship to the vcam's Follow target object, with offsets and damping. + +The Tansposer will only change the camera's position in space. It will not re-orient or otherwise aim the camera. To to that, you need to instruct the vcam in the Aim section of its pipeline. + +#### Properties + + +| _Name_ | _Type_ | _Description_ | +| --- | --- | --- | +| **EffectiveOffset** | Vector3 | _[Get]_ Get the target offset, with sanitization. | +| **IsValid** | Boolean | _[Get]_ True if component is enabled and has a valid Follow target. | +| **Stage** | Stage | _[Get]_ Get the Cinemachine Pipeline stage that this component implements. Always returns the Body stage.
_Possible Values:_
- **Body**
- **Aim**
- **Noise**
- **Finalize**
| + + +#### Fields + + +| _Name_ | _Type_ | _Description_ | +| --- | --- | --- | +| **m_BindingMode** | BindingMode | The coordinate space to use when interpreting the offset from the target. This is also used to set the camera's Up vector, which will be maintained when aiming the camera.
_Possible Values:_
- **LockToTargetOnAssign**: Camera will be bound to the Follow target using a frame of reference consisting of the target's local frame at the moment when the virtual camera was enabled, or when the target was assigned.
- **LockToTargetWithWorldUp**: Camera will be bound to the Follow target using a frame of reference consisting of the target's local frame, with the tilt and roll zeroed out.
- **LockToTargetNoRoll**: Camera will be bound to the Follow target using a frame of reference consisting of the target's local frame, with the roll zeroed out.
- **LockToTarget**: Camera will be bound to the Follow target using the target's local frame.
- **WorldSpace**: Camera will be bound to the Follow target using a world space offset.
- **SimpleFollowWithWorldUp**: Offsets will be calculated relative to the target, using Camera-local axes.
| +| **m_FollowOffset** | Vector3 | The distance vector that the transposer will attempt to maintain from the Follow target. | +| **m_XDamping** | Single | How aggressively the camera tries to maintain the offset in the X-axis. Small numbers are more responsive, rapidly translating the camera to keep the target's x-axis offset. Larger numbers give a more heavy slowly responding camera. Using different settings per axis can yield a wide range of camera behaviors. | +| **m_YDamping** | Single | How aggressively the camera tries to maintain the offset in the Y-axis. Small numbers are more responsive, rapidly translating the camera to keep the target's y-axis offset. Larger numbers give a more heavy slowly responding camera. Using different settings per axis can yield a wide range of camera behaviors. | +| **m_ZDamping** | Single | How aggressively the camera tries to maintain the offset in the Z-axis. Small numbers are more responsive, rapidly translating the camera to keep the target's z-axis offset. Larger numbers give a more heavy slowly responding camera. Using different settings per axis can yield a wide range of camera behaviors. | +| **m_PitchDamping** | Single | How aggressively the camera tries to track the target rotation's X angle. Small numbers are more responsive. Larger numbers give a more heavy slowly responding camera. | +| **m_YawDamping** | Single | How aggressively the camera tries to track the target rotation's Y angle. Small numbers are more responsive. Larger numbers give a more heavy slowly responding camera. | +| **m_RollDamping** | Single | How aggressively the camera tries to track the target rotation's Z angle. Small numbers are more responsive. Larger numbers give a more heavy slowly responding camera. | + + +#### Methods + +``protected virtual Void OnValidate()`` + +Derived classes should call this from their OnValidate() implementation. + +``virtual Void MutateCameraState(CameraState& curState, Single deltaTime)`` + +Positions the virtual camera according to the transposer rules. + + +| _Param_ | _Type_ | _Description_ | +| --- | --- | --- | +| **curState** | CameraState& | The current camera state. | +| **deltaTime** | Single | Used for damping. If less than 0, no damping is done. | + +``virtual Void OnTargetObjectWarped(Transform target, Vector3 positionDelta)`` + +This is called to notify the us that a target got warped, so that we can update its internal state to make the camera also warp seamlessy. + + +| _Param_ | _Type_ | _Description_ | +| --- | --- | --- | +| **target** | Transform | The object that was warped. | +| **positionDelta** | Vector3 | The amount the target's position changed. | + +``protected Void InitPrevFrameStateInfo(CameraState& curState, Single deltaTime)`` + +Initializes the state for previous frame if appropriate. + + +| _Param_ | _Type_ | _Description_ | +| --- | --- | --- | +| **curState** | CameraState& | | +| **deltaTime** | Single | | + +``protected Void TrackTarget(Single deltaTime, Vector3 up, Vector3 desiredCameraOffset, Vector3& outTargetPosition, Quaternion& outTargetOrient)`` + +Positions the virtual camera according to the transposer rules. + + +| _Param_ | _Type_ | _Description_ | +| --- | --- | --- | +| **deltaTime** | Single | Used for damping. If less than 0, no damping is done. | +| **up** | Vector3 | Current camera up. | +| **desiredCameraOffset** | Vector3 | Where we want to put the camera relative to the follow target. | +| **outTargetPosition** | Vector3& | Resulting camera position. | +| **outTargetOrient** | Quaternion& | Damped target orientation. | + +``Vector3 GeTargetCameraPosition(Vector3 worldUp)`` + +Internal API for the Inspector Editor, so it can draw a marker at the target. + + +| _Param_ | _Type_ | _Description_ | +| --- | --- | --- | +| **worldUp** | Vector3 | | + +``Quaternion GetReferenceOrientation(Vector3 worldUp)`` + +Internal API for the Inspector Editor, so it can draw a marker at the target. + + +| _Param_ | _Type_ | _Description_ | +| --- | --- | --- | +| **worldUp** | Vector3 | | + + + +### CinemachineVirtualCamera + +_Type:_ class + +_Namespace:_ Cinemachine + +_Inherits:_ CinemachineVirtualCameraBase + +_Implements:_ ICinemachineCamera + + +This behaviour is intended to be attached to an empty Transform GameObject, and it represents a Virtual Camera within the Unity scene. + +The Virtual Camera will animate its Transform according to the rules contained in its CinemachineComponent pipeline (Aim, Body, and Noise). When the virtual camera is Live, the Unity camera will assume the position and orientation of the virtual camera. + +A virtual camera is not a camera. Instead, it can be thought of as a camera controller, not unlike a cameraman. It can drive the Unity Camera and control its position, orientation, lens settings, and PostProcessing effects. Each Virtual Camera owns its own Cinemachine Component Pipeline, through which you provide the instructions for dynamically tracking specific game objects. + +A virtual camera is very lightweight, and does no rendering of its own. It merely tracks interesting GameObjects, and positions itself accordingly. A typical game can have dozens of virtual cameras, each set up to follow a particular character or capture a particular event. + +A Virtual Camera can be in any of three states: + +* **Live**: The virtual camera is actively controlling the Unity Camera. The virtual camera is tracking its targets and being updated every frame. +* **Standby**: The virtual camera is tracking its targets and being updated every frame, but no Unity Camera is actively being controlled by it. This is the state of a virtual camera that is enabled in the scene but perhaps at a lower priority than the Live virtual camera. +* **Disabled**: The virtual camera is present but disabled in the scene. It is not actively tracking its targets and so consumes no processing power. However, the virtual camera can be made live from the Timeline. + +The Unity Camera can be driven by any virtual camera in the scene. The game logic can choose the virtual camera to make live by manipulating the virtual cameras' enabled flags and their priorities, based on game logic. + +In order to be driven by a virtual camera, the Unity Camera must have a CinemachineBrain behaviour, which will select the most eligible virtual camera based on its priority or on other criteria, and will manage blending. + +#### Properties + + +| _Name_ | _Type_ | _Description_ | +| --- | --- | --- | +| **State** | CameraState | _[Get]_ The CameraState object holds all of the information necessary to position the Unity camera. It is the output of this class. | +| **LookAt** | Transform | _[Get,Set]_ Get the LookAt target for the Aim component in the CinemachinePipeline. If this vcam is a part of a meta-camera collection, then the owner's target will be used if the local target is null. | +| **Follow** | Transform | _[Get,Set]_ Get the Follow target for the Body component in the CinemachinePipeline. If this vcam is a part of a meta-camera collection, then the owner's target will be used if the local target is null. | +| **UserIsDragging** | Boolean | _[Get,Set]_ API for the editor, to make the dragging of position handles behave better. | + + +#### Fields + + +| _Name_ | _Type_ | _Description_ | +| --- | --- | --- | +| **m_LookAt** | Transform | The object that the camera wants to look at (the Aim target). If this is null, then the vcam's Transform orientation will define the camera's orientation. | +| **m_Follow** | Transform | The object that the camera wants to move with (the Body target). If this is null, then the vcam's Transform position will define the camera's position. | +| **m_PositionBlending** | PositionBlendMethod | Hint for blending positions to and from this virtual camera.
_Possible Values:_
- **Linear**
- **Spherical**
- **Cylindrical**
| +| **m_Lens** | LensSettings | Specifies the lens properties of this Virtual Camera. This generally mirrors the Unity Camera's lens settings, and will be used to drive the Unity camera when the vcam is active. | +| **CinemachineGUIDebuggerCallback** | Action | This is deprecated. It is here to support the soon-to-be-removed Cinemachine Debugger in the Editor. | +| **m_ExcludedPropertiesInInspector** | String[] | Inspector control - Use for hiding sections of the Inspector UI. | +| **m_LockStageInInspector** | Stage[] | Inspector control - Use for enabling sections of the Inspector UI. | +| **m_Priority** | Int32 | The priority will determine which camera becomes active based on the state of other cameras and this camera. Higher numbers have greater priority. | + + +#### Methods + +``virtual Void InternalUpdateCameraState(Vector3 worldUp, Single deltaTime)`` + +Internal use only. Do not call this method. Called by CinemachineCore at the appropriate Update time so the vcam can position itself and track its targets. This class will invoke its pipeline and generate a CameraState for this frame. + + +| _Param_ | _Type_ | _Description_ | +| --- | --- | --- | +| **worldUp** | Vector3 | | +| **deltaTime** | Single | | + +``protected virtual Void OnEnable()`` + +Make sure that the pipeline cache is up-to-date. + +``protected virtual Void OnDestroy()`` + +Calls the DestroyPipelineDelegate for destroying the hidden child object, to support undo. + +``protected virtual Void OnValidate()`` + +Enforce bounds for fields, when changed in inspector. + +``Void InvalidateComponentPipeline()`` + +Editor API: Call this when changing the pipeline from the editor. Will force a rebuild of the pipeline cache. + +``Transform GetComponentOwner()`` + +Get the hidden CinemachinePipeline child object. + +``CinemachineComponentBase[] GetComponentPipeline()`` + +Get the component pipeline owned by the hidden child pipline container. For most purposes, it is preferable to use the GetCinemachineComponent method. + +``CinemachineComponentBase GetCinemachineComponent(Stage stage)`` + +Get the component set for a specific stage. + + +| _Param_ | _Type_ | _Description_ | +| --- | --- | --- | +| **stage** | Stage | The stage for which we want the component.
_Possible Values:_
- **Body**
- **Aim**
- **Noise**
- **Finalize**
| + +_Returns:_ The Cinemachine component for that stage, or null if not defined. +``T GetCinemachineComponent[T]()`` + +Get an existing component of a specific type from the cinemachine pipeline. + +``T AddCinemachineComponent[T]()`` + +Add a component to the cinemachine pipeline. + +``Void DestroyCinemachineComponent[T]()`` + +Remove a component from the cinemachine pipeline. + +``virtual Void OnTargetObjectWarped(Transform target, Vector3 positionDelta)`` + +This is called to notify the vcam that a target got warped, so that the vcam can update its internal state to make the camera also warp seamlessy. + + +| _Param_ | _Type_ | _Description_ | +| --- | --- | --- | +| **target** | Transform | The object that was warped. | +| **positionDelta** | Vector3 | The amount the target's position changed. | + + + +### LensSettings + +_Type:_ struct + +_Namespace:_ Cinemachine + + +Describes the FOV and clip planes for a camera. This generally mirrors the Unity Camera's lens settings, and will be used to drive the Unity camera when the vcam is active. + +#### Fields + + +| _Name_ | _Type_ | _Description_ | +| --- | --- | --- | +| **FieldOfView** | Single | This is the camera view in vertical degrees. For cinematic people, a 50mm lens on a super-35mm sensor would equal a 19.6 degree FOV. | +| **OrthographicSize** | Single | When using an orthographic camera, this defines the half-height, in world coordinates, of the camera view. | +| **NearClipPlane** | Single | This defines the near region in the renderable range of the camera frustum. Raising this value will stop the game from drawing things near the camera, which can sometimes come in handy. Larger values will also increase your shadow resolution. | +| **FarClipPlane** | Single | This defines the far region of the renderable range of the camera frustum. Typically you want to set this value as low as possible without cutting off desired distant objects. | +| **Dutch** | Single | Camera Z roll, or tilt, in degrees. | + + +#### Methods + +``static LensSettings FromCamera(Camera fromCamera)`` + +Creates a new LensSettings, copying the values from the supplied Camera. + + +| _Param_ | _Type_ | _Description_ | +| --- | --- | --- | +| **fromCamera** | Camera | The Camera from which the FoV, near and far clip planes will be copied. | + +``static LensSettings Lerp(LensSettings lensA, LensSettings lensB, Single t)`` + +Linearly blends the fields of two LensSettings and returns the result. + + +| _Param_ | _Type_ | _Description_ | +| --- | --- | --- | +| **lensA** | LensSettings | The LensSettings to blend from. | +| **lensB** | LensSettings | The LensSettings to blend to. | +| **t** | Single | The interpolation value. Internally clamped to the range [0,1]. | + +_Returns:_ Interpolated settings. +``Void Validate()`` + +Make sure lens settings are sane. Call this from OnValidate(). + + + +### NoiseSettings + +_Type:_ class + +_Namespace:_ Cinemachine + +_Inherits:_ ScriptableObject + + +This is an asset that defines a noise profile. A noise profile is the shape of the noise as a function of time. You can build arbitrarily complex shapes by combining different base perlin noise frequencies at different amplitudes. + +The frequencies and amplitudes should be chosen with care, to ensure an interesting noise quality that is not obviously repetitive. + +As a mathematical side-note, any arbitrary periodic curve can be broken down into a series of fixed-amplitude sine-waves added together. This is called fourier decomposition, and is the basis of much signal processing. It doesn't really have much to do with this asset, but it's super interesting! + +#### Properties + + +| _Name_ | _Type_ | _Description_ | +| --- | --- | --- | +| **PositionNoise** | TransformNoiseParams[] | _[Get]_ Gets the array of positional noise channels for this NoiseSettings. | +| **OrientationNoise** | TransformNoiseParams[] | _[Get]_ Gets the array of orientation noise channels for this NoiseSettings. | + + +#### Fields + + +| _Name_ | _Type_ | _Description_ | +| --- | --- | --- | +| **m_Position** | TransformNoiseParams[] | These are the noise channels for the virtual camera's position. Convincing noise setups typically mix low, medium and high frequencies together, so start with a size of 3. | +| **m_Orientation** | TransformNoiseParams[] | These are the noise channels for the virtual camera's orientation. Convincing noise setups typically mix low, medium and high frequencies together, so start with a size of 3. | + + +#### Methods + +``Void CopyFrom(NoiseSettings other)`` + +Clones the contents of the other asset into this one. + + +| _Param_ | _Type_ | _Description_ | +| --- | --- | --- | +| **other** | NoiseSettings | | + +``static Vector3 GetCombinedFilterResults(TransformNoiseParams[] noiseParams, Single time, Vector3 timeOffsets)`` + +Get the noise signal value at a specific time. + + +| _Param_ | _Type_ | _Description_ | +| --- | --- | --- | +| **noiseParams** | TransformNoiseParams[] | The parameters that define the noise function. | +| **time** | Single | The time at which to sample the noise function. | +| **timeOffsets** | Vector3 | Start time offset for each channel. | + +_Returns:_ The 3-channel noise signal value at the specified time. + + +### NoiseSettings.NoiseParams + +_Type:_ struct + +_Namespace:_ Cinemachine + + +Describes the behaviour for a channel of noise. + +#### Fields + + +| _Name_ | _Type_ | _Description_ | +| --- | --- | --- | +| **Amplitude** | Single | The amplitude of the noise for this channel. Larger numbers vibrate higher. | +| **Frequency** | Single | The frequency of noise for this channel. Higher magnitudes vibrate faster. | + + + +### NoiseSettings.TransformNoiseParams + +_Type:_ struct + +_Namespace:_ Cinemachine + + +Contains the behaviour of noise for the noise module for all 3 cardinal axes of the camera. + +#### Fields + + +| _Name_ | _Type_ | _Description_ | +| --- | --- | --- | +| **X** | NoiseParams | Noise definition for X-axis. | +| **Y** | NoiseParams | Noise definition for Y-axis. | +| **Z** | NoiseParams | Noise definition for Z-axis. | + + diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Documentation~/images/CinemachineAim.png" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Documentation~/images/CinemachineAim.png" new file mode 100644 index 00000000..33bea1ad Binary files /dev/null and "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Documentation~/images/CinemachineAim.png" differ diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Documentation~/images/CinemachineAssetStore.png" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Documentation~/images/CinemachineAssetStore.png" new file mode 100644 index 00000000..f657b239 Binary files /dev/null and "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Documentation~/images/CinemachineAssetStore.png" differ diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Documentation~/images/CinemachineBasicMultiChannelPerlin.png" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Documentation~/images/CinemachineBasicMultiChannelPerlin.png" new file mode 100644 index 00000000..19dcc1bf Binary files /dev/null and "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Documentation~/images/CinemachineBasicMultiChannelPerlin.png" differ diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Documentation~/images/CinemachineBody.png" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Documentation~/images/CinemachineBody.png" new file mode 100644 index 00000000..ec6b23ed Binary files /dev/null and "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Documentation~/images/CinemachineBody.png" differ diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Documentation~/images/CinemachineBrain.png" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Documentation~/images/CinemachineBrain.png" new file mode 100644 index 00000000..092f5c6e Binary files /dev/null and "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Documentation~/images/CinemachineBrain.png" differ diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Documentation~/images/CinemachineCustomBlends.png" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Documentation~/images/CinemachineCustomBlends.png" new file mode 100644 index 00000000..0f443113 Binary files /dev/null and "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Documentation~/images/CinemachineCustomBlends.png" differ diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Documentation~/images/CinemachineFreeLookProperties.png" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Documentation~/images/CinemachineFreeLookProperties.png" new file mode 100644 index 00000000..5fbd4b85 Binary files /dev/null and "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Documentation~/images/CinemachineFreeLookProperties.png" differ diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Documentation~/images/CinemachineFreelook.png" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Documentation~/images/CinemachineFreelook.png" new file mode 100644 index 00000000..13c32e19 Binary files /dev/null and "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Documentation~/images/CinemachineFreelook.png" differ diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Documentation~/images/CinemachineGameWindowGuides.png" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Documentation~/images/CinemachineGameWindowGuides.png" new file mode 100644 index 00000000..224c4e14 Binary files /dev/null and "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Documentation~/images/CinemachineGameWindowGuides.png" differ diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Documentation~/images/CinemachineMenu.png" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Documentation~/images/CinemachineMenu.png" new file mode 100644 index 00000000..f88188a1 Binary files /dev/null and "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Documentation~/images/CinemachineMenu.png" differ diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Documentation~/images/CinemachineMixingCamera.png" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Documentation~/images/CinemachineMixingCamera.png" new file mode 100644 index 00000000..8dc58212 Binary files /dev/null and "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Documentation~/images/CinemachineMixingCamera.png" differ diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Documentation~/images/CinemachineMixingCameraChildren.png" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Documentation~/images/CinemachineMixingCameraChildren.png" new file mode 100644 index 00000000..f7a904c5 Binary files /dev/null and "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Documentation~/images/CinemachineMixingCameraChildren.png" differ diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Documentation~/images/CinemachineNewVCam.png" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Documentation~/images/CinemachineNewVCam.png" new file mode 100644 index 00000000..b149149c Binary files /dev/null and "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Documentation~/images/CinemachineNewVCam.png" differ diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Documentation~/images/CinemachineNoiseProfile.png" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Documentation~/images/CinemachineNoiseProfile.png" new file mode 100644 index 00000000..fcfd95e6 Binary files /dev/null and "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Documentation~/images/CinemachineNoiseProfile.png" differ diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Documentation~/images/CinemachineOrbitalTransposer.png" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Documentation~/images/CinemachineOrbitalTransposer.png" new file mode 100644 index 00000000..44824bd2 Binary files /dev/null and "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Documentation~/images/CinemachineOrbitalTransposer.png" differ diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Documentation~/images/CinemachinePackage.png" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Documentation~/images/CinemachinePackage.png" new file mode 100644 index 00000000..0336dc68 Binary files /dev/null and "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Documentation~/images/CinemachinePackage.png" differ diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Documentation~/images/CinemachinePathInspector.png" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Documentation~/images/CinemachinePathInspector.png" new file mode 100644 index 00000000..cec1b278 Binary files /dev/null and "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Documentation~/images/CinemachinePathInspector.png" differ diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Documentation~/images/CinemachinePathScene.png" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Documentation~/images/CinemachinePathScene.png" new file mode 100644 index 00000000..e86d2e32 Binary files /dev/null and "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Documentation~/images/CinemachinePathScene.png" differ diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Documentation~/images/CinemachineSceneHierarchy.png" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Documentation~/images/CinemachineSceneHierarchy.png" new file mode 100644 index 00000000..2c409b3b Binary files /dev/null and "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Documentation~/images/CinemachineSceneHierarchy.png" differ diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Documentation~/images/CinemachineSplash.png" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Documentation~/images/CinemachineSplash.png" new file mode 100644 index 00000000..e95236f3 Binary files /dev/null and "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Documentation~/images/CinemachineSplash.png" differ diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Documentation~/images/CinemachineStateDrivenCamera.png" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Documentation~/images/CinemachineStateDrivenCamera.png" new file mode 100644 index 00000000..7dbfaf5d Binary files /dev/null and "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Documentation~/images/CinemachineStateDrivenCamera.png" differ diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Documentation~/images/CinemachineStateDrivenChildren.png" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Documentation~/images/CinemachineStateDrivenChildren.png" new file mode 100644 index 00000000..5c0d2673 Binary files /dev/null and "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Documentation~/images/CinemachineStateDrivenChildren.png" differ diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Documentation~/images/CinemachineTargetGroup.png" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Documentation~/images/CinemachineTargetGroup.png" new file mode 100644 index 00000000..e2fb30c3 Binary files /dev/null and "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Documentation~/images/CinemachineTargetGroup.png" differ diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Documentation~/images/CinemachineTimelineShotClips.png" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Documentation~/images/CinemachineTimelineShotClips.png" new file mode 100644 index 00000000..0c4f8c2b Binary files /dev/null and "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Documentation~/images/CinemachineTimelineShotClips.png" differ diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Documentation~/images/CinemachineVCamProperties.png" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Documentation~/images/CinemachineVCamProperties.png" new file mode 100644 index 00000000..9a41d4be Binary files /dev/null and "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Documentation~/images/CinemachineVCamProperties.png" differ diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Documentation~/images/FixedSignalEditor.png" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Documentation~/images/FixedSignalEditor.png" new file mode 100644 index 00000000..78efb788 Binary files /dev/null and "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Documentation~/images/FixedSignalEditor.png" differ diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Documentation~/images/ImpulseGraphEditor.png" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Documentation~/images/ImpulseGraphEditor.png" new file mode 100644 index 00000000..b32241dc Binary files /dev/null and "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Documentation~/images/ImpulseGraphEditor.png" differ diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Documentation~/images/ImpulseHammerStrike.png" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Documentation~/images/ImpulseHammerStrike.png" new file mode 100644 index 00000000..e74166cd Binary files /dev/null and "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Documentation~/images/ImpulseHammerStrike.png" differ diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Documentation~/images/ImpulseOverview.png" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Documentation~/images/ImpulseOverview.png" new file mode 100644 index 00000000..72a16dd3 Binary files /dev/null and "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Documentation~/images/ImpulseOverview.png" differ diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Documentation~/images/ImpulseSpatialRange.png" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Documentation~/images/ImpulseSpatialRange.png" new file mode 100644 index 00000000..56eb466f Binary files /dev/null and "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Documentation~/images/ImpulseSpatialRange.png" differ diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Documentation~/images/InspectorCollisionImpulseSource.png" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Documentation~/images/InspectorCollisionImpulseSource.png" new file mode 100644 index 00000000..ee6c79d2 Binary files /dev/null and "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Documentation~/images/InspectorCollisionImpulseSource.png" differ diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Documentation~/images/InspectorFixedSignalTiles.png" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Documentation~/images/InspectorFixedSignalTiles.png" new file mode 100644 index 00000000..77109ecf Binary files /dev/null and "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Documentation~/images/InspectorFixedSignalTiles.png" differ diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Documentation~/images/InspectorImpulseChannelsScript.png" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Documentation~/images/InspectorImpulseChannelsScript.png" new file mode 100644 index 00000000..6b360129 Binary files /dev/null and "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Documentation~/images/InspectorImpulseChannelsScript.png" differ diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Documentation~/images/InspectorImpulseCollisionSourceChannel.png" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Documentation~/images/InspectorImpulseCollisionSourceChannel.png" new file mode 100644 index 00000000..85d7054c Binary files /dev/null and "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Documentation~/images/InspectorImpulseCollisionSourceChannel.png" differ diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Documentation~/images/InspectorImpulseListener.png" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Documentation~/images/InspectorImpulseListener.png" new file mode 100644 index 00000000..1939e79f Binary files /dev/null and "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Documentation~/images/InspectorImpulseListener.png" differ diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Documentation~/images/InspectorImpulseListenerChannelsMenu.png" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Documentation~/images/InspectorImpulseListenerChannelsMenu.png" new file mode 100644 index 00000000..db6145a4 Binary files /dev/null and "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Documentation~/images/InspectorImpulseListenerChannelsMenu.png" differ diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Documentation~/images/InspectorImpulseSource.png" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Documentation~/images/InspectorImpulseSource.png" new file mode 100644 index 00000000..f4b6ebb2 Binary files /dev/null and "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Documentation~/images/InspectorImpulseSource.png" differ diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Documentation~/images/InspectorImpulseSourceChannel.png" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Documentation~/images/InspectorImpulseSourceChannel.png" new file mode 100644 index 00000000..c6c29960 Binary files /dev/null and "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Documentation~/images/InspectorImpulseSourceChannel.png" differ diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Documentation~/images/InspectorImpulseSourceChannelsMenu.png" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Documentation~/images/InspectorImpulseSourceChannelsMenu.png" new file mode 100644 index 00000000..f8638ffd Binary files /dev/null and "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Documentation~/images/InspectorImpulseSourceChannelsMenu.png" differ diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Documentation~/images/InspectorImpulseSourceHowToGenerate.png" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Documentation~/images/InspectorImpulseSourceHowToGenerate.png" new file mode 100644 index 00000000..07663a9d Binary files /dev/null and "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Documentation~/images/InspectorImpulseSourceHowToGenerate.png" differ diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Documentation~/images/InspectorImpulseSourceRawSignalMenu.png" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Documentation~/images/InspectorImpulseSourceRawSignalMenu.png" new file mode 100644 index 00000000..e31d9b66 Binary files /dev/null and "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Documentation~/images/InspectorImpulseSourceRawSignalMenu.png" differ diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Documentation~/images/InspectorImpulseSourceSignal.png" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Documentation~/images/InspectorImpulseSourceSignal.png" new file mode 100644 index 00000000..8f81fc04 Binary files /dev/null and "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Documentation~/images/InspectorImpulseSourceSignal.png" differ diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Documentation~/images/InspectorImpulseSourceSpatialRange.png" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Documentation~/images/InspectorImpulseSourceSpatialRange.png" new file mode 100644 index 00000000..6890389a Binary files /dev/null and "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Documentation~/images/InspectorImpulseSourceSpatialRange.png" differ diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Documentation~/images/InspectorImpulseSourceTimeEnvelope.png" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Documentation~/images/InspectorImpulseSourceTimeEnvelope.png" new file mode 100644 index 00000000..166fa5f5 Binary files /dev/null and "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Documentation~/images/InspectorImpulseSourceTimeEnvelope.png" differ diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Documentation~/images/InspectorImpulseSourceTriggerObject.png" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Documentation~/images/InspectorImpulseSourceTriggerObject.png" new file mode 100644 index 00000000..7b90465e Binary files /dev/null and "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Documentation~/images/InspectorImpulseSourceTriggerObject.png" differ diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Documentation~/images/InspectorImpulseTimeEnvelope.png" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Documentation~/images/InspectorImpulseTimeEnvelope.png" new file mode 100644 index 00000000..c0be4d8a Binary files /dev/null and "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Documentation~/images/InspectorImpulseTimeEnvelope.png" differ diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Documentation~/images/InspectorNoiseProfile.png" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Documentation~/images/InspectorNoiseProfile.png" new file mode 100644 index 00000000..b8a795c2 Binary files /dev/null and "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Documentation~/images/InspectorNoiseProfile.png" differ diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Documentation~/index.md" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Documentation~/index.md" new file mode 100644 index 00000000..dfd8bf35 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Documentation~/index.md" @@ -0,0 +1,19 @@ +# Cinemachine Documentation + +![Unity Cinemachine](images/CinemachineSplash.png) + +Cinemachine is a suite of modules for operating the Unity camera. Cinemachine solves the complex mathematics and logic of tracking targets, composing, blending, and cutting between shots. It is designed to significantly reduce the number of time-consuming manual manipulations and script revisions that take place during development. + +The procedural nature of these modules makes Cinemachine bug-resistant. When you make adjustments—for example, change an animation, vehicle speed, terrain, or other GameObjects in your Scene—Cinemachine dynamically adjusts its behavior to make the best shot. There is no need, for example, to re-write camera scripts just because a character turns left instead of right. + +Cinemachine works in real time across all genres including FPS, third person, 2D, side-scroller, top down, and RTS. It supports as many shots in your Scene as you need. Its modular system lets you compose sophisticated behaviors. + +Cinemachine works well with other Unity tools, acting as a powerful complement to Timeline, animation, and post-processing assets. Create your own [extensions](CinemachineVirtualCameraExtensions.html) or integrate it with your custom camera scripts. + +## Requirements + +Cinemachine has no external dependencies. Just install it and start using it. If you are also using the Post Processing Stack (version 2), then adapter modules are provided - protected by `ifdef` directives which auto-define if the presence of the Post Processing Stack is detected. + +This Cinemachine version 2.2 is compatible with the following versions of the Unity Editor: + +* 2017.1 and later diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Editor.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Editor.meta" new file mode 100644 index 00000000..e41b6757 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Editor.meta" @@ -0,0 +1,9 @@ +fileFormatVersion: 2 +guid: d8623b6a09cb5ab4ea2c51347a3a074c +folderAsset: yes +timeCreated: 1489096338 +licenseType: Pro +DefaultImporter: + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Editor/Editors.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Editor/Editors.meta" new file mode 100644 index 00000000..77eabb3e --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Editor/Editors.meta" @@ -0,0 +1,9 @@ +fileFormatVersion: 2 +guid: 6b46e8ffe448f084ab12938cb774d063 +folderAsset: yes +timeCreated: 1489096338 +licenseType: Pro +DefaultImporter: + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Editor/Editors/CinemachineBasicMultiChannelPerlinEditor.cs" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Editor/Editors/CinemachineBasicMultiChannelPerlinEditor.cs" new file mode 100644 index 00000000..4e4f3a2b --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Editor/Editors/CinemachineBasicMultiChannelPerlinEditor.cs" @@ -0,0 +1,30 @@ +using UnityEngine; +using UnityEditor; + +namespace Cinemachine.Editor +{ + [CustomEditor(typeof(CinemachineBasicMultiChannelPerlin))] + internal sealed class CinemachineBasicMultiChannelPerlinEditor + : BaseEditor + { + private void OnEnable() + { + NoiseSettingsPropertyDrawer.InvalidateProfileList(); + } + + public override void OnInspectorGUI() + { + BeginInspector(); + if (FindProperty(x => x.m_NoiseProfile).objectReferenceValue == null) + EditorGUILayout.HelpBox( + "A Noise Profile is required. You may choose from among the NoiseSettings assets defined in the project.", + MessageType.Warning); + DrawRemainingPropertiesInInspector(); + + Rect rect = EditorGUILayout.GetControlRect(true); + rect.width -= EditorGUIUtility.labelWidth; rect.x += EditorGUIUtility.labelWidth; + if (GUI.Button(rect, "New random seed")) + Target.ReSeed(); + } + } +} diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Editor/Editors/CinemachineBasicMultiChannelPerlinEditor.cs.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Editor/Editors/CinemachineBasicMultiChannelPerlinEditor.cs.meta" new file mode 100644 index 00000000..a25727fd --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Editor/Editors/CinemachineBasicMultiChannelPerlinEditor.cs.meta" @@ -0,0 +1,12 @@ +fileFormatVersion: 2 +guid: ee42f1964a0e8224c90be81905946699 +timeCreated: 1484091313 +licenseType: Pro +MonoImporter: + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Editor/Editors/CinemachineBlendListCameraEditor.cs" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Editor/Editors/CinemachineBlendListCameraEditor.cs" new file mode 100644 index 00000000..18635b1c --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Editor/Editors/CinemachineBlendListCameraEditor.cs" @@ -0,0 +1,206 @@ +using System.Collections.Generic; +using UnityEditor; +using UnityEngine; + +namespace Cinemachine.Editor +{ + [CustomEditor(typeof(CinemachineBlendListCamera))] + internal sealed class CinemachineBlendListCameraEditor + : CinemachineVirtualCameraBaseEditor + { + protected override List GetExcludedPropertiesInInspector() + { + List excluded = base.GetExcludedPropertiesInInspector(); + excluded.Add(FieldPath(x => x.m_Instructions)); + return excluded; + } + + private UnityEditorInternal.ReorderableList mChildList; + private UnityEditorInternal.ReorderableList mInstructionList; + + protected override void OnEnable() + { + base.OnEnable(); + mChildList = null; + mInstructionList = null; + } + + protected override void OnDisable() + { + base.OnDisable(); + } + + public override void OnInspectorGUI() + { + BeginInspector(); + if (mInstructionList == null) + SetupInstructionList(); + if (mChildList == null) + SetupChildList(); + + // Ordinary properties + DrawHeaderInInspector(); + DrawPropertyInInspector(FindProperty(x => x.m_Priority)); + DrawTargetsInInspector(FindProperty(x => x.m_Follow), FindProperty(x => x.m_LookAt)); + DrawRemainingPropertiesInInspector(); + + // Instructions + UpdateCameraCandidates(); + EditorGUI.BeginChangeCheck(); + EditorGUILayout.Separator(); + mInstructionList.DoLayoutList(); + + // vcam children + EditorGUILayout.Separator(); + mChildList.DoLayoutList(); + if (EditorGUI.EndChangeCheck()) + { + serializedObject.ApplyModifiedProperties(); + Target.ValidateInstructions(); + } + + // Extensions + DrawExtensionsWidgetInInspector(); + } + + private string[] mCameraCandidates; + private Dictionary mCameraIndexLookup; + private void UpdateCameraCandidates() + { + List vcams = new List(); + mCameraIndexLookup = new Dictionary(); + vcams.Add("(none)"); + CinemachineVirtualCameraBase[] children = Target.ChildCameras; + foreach (var c in children) + { + mCameraIndexLookup[c] = vcams.Count; + vcams.Add(c.Name); + } + mCameraCandidates = vcams.ToArray(); + } + + private int GetCameraIndex(Object obj) + { + if (obj == null || mCameraIndexLookup == null) + return 0; + CinemachineVirtualCameraBase vcam = obj as CinemachineVirtualCameraBase; + if (vcam == null) + return 0; + if (!mCameraIndexLookup.ContainsKey(vcam)) + return 0; + return mCameraIndexLookup[vcam]; + } + + void SetupInstructionList() + { + mInstructionList = new UnityEditorInternal.ReorderableList(serializedObject, + serializedObject.FindProperty(() => Target.m_Instructions), + true, true, true, true); + + // Needed for accessing field names as strings + CinemachineBlendListCamera.Instruction def = new CinemachineBlendListCamera.Instruction(); + + float vSpace = 2; + float hSpace = 3; + float floatFieldWidth = EditorGUIUtility.singleLineHeight * 2.5f; + float hBigSpace = EditorGUIUtility.singleLineHeight * 2 / 3; + mInstructionList.drawHeaderCallback = (Rect rect) => + { + float sharedWidth = rect.width - EditorGUIUtility.singleLineHeight + - floatFieldWidth - hSpace - hBigSpace; + rect.x += EditorGUIUtility.singleLineHeight; rect.width = sharedWidth / 2; + EditorGUI.LabelField(rect, "Child"); + + rect.x += rect.width + hSpace; + EditorGUI.LabelField(rect, "Blend in"); + + rect.x += rect.width + hBigSpace; rect.width = floatFieldWidth; + EditorGUI.LabelField(rect, "Hold"); + }; + + mInstructionList.drawElementCallback + = (Rect rect, int index, bool isActive, bool isFocused) => + { + SerializedProperty instProp = mInstructionList.serializedProperty.GetArrayElementAtIndex(index); + float sharedWidth = rect.width - floatFieldWidth - hSpace - hBigSpace; + rect.y += vSpace; rect.height = EditorGUIUtility.singleLineHeight; + + rect.width = sharedWidth / 2; + SerializedProperty vcamSelProp = instProp.FindPropertyRelative(() => def.m_VirtualCamera); + int currentVcam = GetCameraIndex(vcamSelProp.objectReferenceValue); + int vcamSelection = EditorGUI.Popup(rect, currentVcam, mCameraCandidates); + if (currentVcam != vcamSelection) + vcamSelProp.objectReferenceValue = (vcamSelection == 0) + ? null : Target.ChildCameras[vcamSelection - 1]; + + rect.x += rect.width + hSpace; rect.width = sharedWidth / 2; + if (index > 0 || Target.m_Loop) + EditorGUI.PropertyField(rect, instProp.FindPropertyRelative(() => def.m_Blend), + GUIContent.none); + + if (index < mInstructionList.count - 1 || Target.m_Loop) + { + float oldWidth = EditorGUIUtility.labelWidth; + EditorGUIUtility.labelWidth = hBigSpace; + + rect.x += rect.width; rect.width = floatFieldWidth + hBigSpace; + SerializedProperty holdProp = instProp.FindPropertyRelative(() => def.m_Hold); + EditorGUI.PropertyField(rect, holdProp, new GUIContent(" ", holdProp.tooltip)); + holdProp.floatValue = Mathf.Max(holdProp.floatValue, 0); + + EditorGUIUtility.labelWidth = oldWidth; + } + }; + } + + void SetupChildList() + { + float vSpace = 2; + mChildList = new UnityEditorInternal.ReorderableList(serializedObject, + serializedObject.FindProperty(() => Target.m_ChildCameras), + true, true, true, true); + + mChildList.drawHeaderCallback = (Rect rect) => + { + EditorGUI.LabelField(rect, "Virtual Camera Children"); + }; + mChildList.drawElementCallback + = (Rect rect, int index, bool isActive, bool isFocused) => + { + rect.y += vSpace; + Vector2 pos = rect.position; + rect.height = EditorGUIUtility.singleLineHeight; + SerializedProperty element + = mChildList.serializedProperty.GetArrayElementAtIndex(index); + EditorGUI.PropertyField(rect, element, GUIContent.none); + }; + mChildList.onChangedCallback = (UnityEditorInternal.ReorderableList l) => + { + if (l.index < 0 || l.index >= l.serializedProperty.arraySize) + return; + Object o = l.serializedProperty.GetArrayElementAtIndex( + l.index).objectReferenceValue; + CinemachineVirtualCameraBase vcam = (o != null) + ? (o as CinemachineVirtualCameraBase) : null; + if (vcam != null) + vcam.transform.SetSiblingIndex(l.index); + }; + mChildList.onAddCallback = (UnityEditorInternal.ReorderableList l) => + { + var index = l.serializedProperty.arraySize; + var vcam = CinemachineMenu.CreateDefaultVirtualCamera(); + Undo.SetTransformParent(vcam.transform, Target.transform, ""); + vcam.transform.SetSiblingIndex(index); + }; + mChildList.onRemoveCallback = (UnityEditorInternal.ReorderableList l) => + { + Object o = l.serializedProperty.GetArrayElementAtIndex( + l.index).objectReferenceValue; + CinemachineVirtualCameraBase vcam = (o != null) + ? (o as CinemachineVirtualCameraBase) : null; + if (vcam != null) + Undo.DestroyObjectImmediate(vcam.gameObject); + }; + } + } +} diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Editor/Editors/CinemachineBlendListCameraEditor.cs.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Editor/Editors/CinemachineBlendListCameraEditor.cs.meta" new file mode 100644 index 00000000..d4a700e9 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Editor/Editors/CinemachineBlendListCameraEditor.cs.meta" @@ -0,0 +1,13 @@ +fileFormatVersion: 2 +guid: 0181db608628b494d8ae50728e507ce1 +timeCreated: 1509479768 +licenseType: Pro +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Editor/Editors/CinemachineBlenderSettingsEditor.cs" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Editor/Editors/CinemachineBlenderSettingsEditor.cs" new file mode 100644 index 00000000..cead137a --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Editor/Editors/CinemachineBlenderSettingsEditor.cs" @@ -0,0 +1,153 @@ +using UnityEngine; +using UnityEditor; +using UnityEditorInternal; +using System.Collections.Generic; + +namespace Cinemachine.Editor +{ + [CustomEditor(typeof(CinemachineBlenderSettings))] + internal sealed class CinemachineBlenderSettingsEditor : BaseEditor + { + private ReorderableList mBlendList; + + /// + /// Called when building the Camera popup menus, to get the domain of possible + /// cameras. If no delegate is set, will find all top-level (non-slave) + /// virtual cameras in the scene. + /// + public GetAllVirtualCamerasDelegate GetAllVirtualCameras; + public delegate CinemachineVirtualCameraBase[] GetAllVirtualCamerasDelegate(); + + protected override List GetExcludedPropertiesInInspector() + { + List excluded = base.GetExcludedPropertiesInInspector(); + excluded.Add(FieldPath(x => x.m_CustomBlends)); + return excluded; + } + + public override void OnInspectorGUI() + { + BeginInspector(); + if (mBlendList == null) + SetupBlendList(); + + DrawRemainingPropertiesInInspector(); + + UpdateCameraCandidates(); + mBlendList.DoLayoutList(); + serializedObject.ApplyModifiedProperties(); + } + + private string[] mCameraCandidates; + private Dictionary mCameraIndexLookup; + private void UpdateCameraCandidates() + { + List vcams = new List(); + mCameraIndexLookup = new Dictionary(); + + CinemachineVirtualCameraBase[] candidates; + if (GetAllVirtualCameras != null) + candidates = GetAllVirtualCameras(); + else + { + // Get all top-level (i.e. non-slave) virtual cameras + candidates = Resources.FindObjectsOfTypeAll( + typeof(CinemachineVirtualCameraBase)) as CinemachineVirtualCameraBase[]; + + for (int i = 0; i < candidates.Length; ++i) + if (candidates[i].ParentCamera != null) + candidates[i] = null; + } + vcams.Add("(none)"); + vcams.Add(CinemachineBlenderSettings.kBlendFromAnyCameraLabel); + foreach (CinemachineVirtualCameraBase c in candidates) + if (c != null && !vcams.Contains(c.Name)) + vcams.Add(c.Name); + + mCameraCandidates = vcams.ToArray(); + for (int i = 0; i < mCameraCandidates.Length; ++i) + mCameraIndexLookup[mCameraCandidates[i]] = i; + } + + private int GetCameraIndex(string name) + { + if (name == null || mCameraIndexLookup == null) + return 0; + if (!mCameraIndexLookup.ContainsKey(name)) + return 0; + return mCameraIndexLookup[name]; + } + + void SetupBlendList() + { + mBlendList = new ReorderableList(serializedObject, + serializedObject.FindProperty(() => Target.m_CustomBlends), + true, true, true, true); + + // Needed for accessing string names of fields + CinemachineBlenderSettings.CustomBlend def = new CinemachineBlenderSettings.CustomBlend(); + CinemachineBlendDefinition def2 = new CinemachineBlendDefinition(); + + float vSpace = 2; + float hSpace = 3; + float floatFieldWidth = EditorGUIUtility.singleLineHeight * 2.5f; + mBlendList.drawHeaderCallback = (Rect rect) => + { + rect.width -= (EditorGUIUtility.singleLineHeight + 2 * hSpace); + rect.width /= 3; + Vector2 pos = rect.position; pos.x += EditorGUIUtility.singleLineHeight; + rect.position = pos; + EditorGUI.LabelField(rect, "From"); + + pos.x += rect.width + hSpace; rect.position = pos; + EditorGUI.LabelField(rect, "To"); + + pos.x += rect.width + hSpace; rect.width -= floatFieldWidth + hSpace; rect.position = pos; + EditorGUI.LabelField(rect, "Style"); + + pos.x += rect.width + hSpace; rect.width = floatFieldWidth; rect.position = pos; + EditorGUI.LabelField(rect, "Time"); + }; + + mBlendList.drawElementCallback + = (Rect rect, int index, bool isActive, bool isFocused) => + { + SerializedProperty element + = mBlendList.serializedProperty.GetArrayElementAtIndex(index); + + rect.y += vSpace; + rect.height = EditorGUIUtility.singleLineHeight; + Vector2 pos = rect.position; + rect.width -= 2 * hSpace; rect.width /= 3; + SerializedProperty fromProp = element.FindPropertyRelative(() => def.m_From); + int current = GetCameraIndex(fromProp.stringValue); + int sel = EditorGUI.Popup(rect, current, mCameraCandidates); + if (current != sel) + fromProp.stringValue = mCameraCandidates[sel]; + + pos.x += rect.width + hSpace; rect.position = pos; + SerializedProperty toProp = element.FindPropertyRelative(() => def.m_To); + current = GetCameraIndex(toProp.stringValue); + sel = EditorGUI.Popup(rect, current, mCameraCandidates); + if (current != sel) + toProp.stringValue = mCameraCandidates[sel]; + + SerializedProperty blendProp = element.FindPropertyRelative(() => def.m_Blend); + pos.x += rect.width + hSpace; rect.position = pos; + EditorGUI.PropertyField(rect, blendProp, GUIContent.none); + }; + + mBlendList.onAddCallback = (ReorderableList l) => + { + var index = l.serializedProperty.arraySize; + ++l.serializedProperty.arraySize; + SerializedProperty blendProp = l.serializedProperty.GetArrayElementAtIndex( + index).FindPropertyRelative(() => def.m_Blend); + + blendProp.FindPropertyRelative(() => def2.m_Style).enumValueIndex + = (int)CinemachineBlendDefinition.Style.EaseInOut; + blendProp.FindPropertyRelative(() => def2.m_Time).floatValue = 2f; + }; + } + } +} diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Editor/Editors/CinemachineBlenderSettingsEditor.cs.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Editor/Editors/CinemachineBlenderSettingsEditor.cs.meta" new file mode 100644 index 00000000..abb60606 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Editor/Editors/CinemachineBlenderSettingsEditor.cs.meta" @@ -0,0 +1,12 @@ +fileFormatVersion: 2 +guid: 1ff9d8296ed1f02419bf4f417ff2265e +timeCreated: 1486495673 +licenseType: Pro +MonoImporter: + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Editor/Editors/CinemachineBrainEditor.cs" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Editor/Editors/CinemachineBrainEditor.cs" new file mode 100644 index 00000000..7decc1d3 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Editor/Editors/CinemachineBrainEditor.cs" @@ -0,0 +1,171 @@ +using UnityEngine; +using UnityEditor; +using System.Collections.Generic; +using Cinemachine.Utility; +using System.IO; + +namespace Cinemachine.Editor +{ + [CustomEditor(typeof(CinemachineBrain))] + public sealed class CinemachineBrainEditor : BaseEditor + { + EmbeddeAssetEditor m_BlendsEditor; + bool mEventsExpanded = false; + + protected override List GetExcludedPropertiesInInspector() + { + List excluded = base.GetExcludedPropertiesInInspector(); + excluded.Add(FieldPath(x => x.m_CameraCutEvent)); + excluded.Add(FieldPath(x => x.m_CameraActivatedEvent)); + excluded.Add(FieldPath(x => x.m_CustomBlends)); + return excluded; + } + + private void OnEnable() + { + m_BlendsEditor = new EmbeddeAssetEditor( + FieldPath(x => x.m_CustomBlends), this); + m_BlendsEditor.OnChanged = (CinemachineBlenderSettings b) => + { + UnityEditorInternal.InternalEditorUtility.RepaintAllViews(); + }; + } + + private void OnDisable() + { + if (m_BlendsEditor != null) + m_BlendsEditor.OnDisable(); + } + + public override void OnInspectorGUI() + { + BeginInspector(); + + // Show the active camera and blend + GUI.enabled = false; + ICinemachineCamera vcam = Target.ActiveVirtualCamera; + Transform activeCam = (vcam != null && vcam.VirtualCameraGameObject != null) + ? vcam.VirtualCameraGameObject.transform : null; + EditorGUILayout.ObjectField("Live Camera", activeCam, typeof(Transform), true); + EditorGUILayout.DelayedTextField( + "Live Blend", Target.ActiveBlend != null + ? Target.ActiveBlend.Description : string.Empty); + GUI.enabled = true; + + // Normal properties + DrawRemainingPropertiesInInspector(); + + // Blender + m_BlendsEditor.DrawEditorCombo( + "Create New Blender Asset", + Target.gameObject.name + " Blends", "asset", string.Empty, + "Custom Blends", false); + + mEventsExpanded = EditorGUILayout.Foldout(mEventsExpanded, "Events", true); + if (mEventsExpanded) + { + EditorGUILayout.PropertyField(FindProperty(x => x.m_CameraCutEvent)); + EditorGUILayout.PropertyField(FindProperty(x => x.m_CameraActivatedEvent)); + } + serializedObject.ApplyModifiedProperties(); + } + + [DrawGizmo(GizmoType.Selected | GizmoType.NonSelected, typeof(CinemachineBrain))] + private static void DrawBrainGizmos(CinemachineBrain brain, GizmoType drawType) + { + if (brain.OutputCamera != null && brain.m_ShowCameraFrustum) + { + DrawCameraFrustumGizmo( + brain, LensSettings.FromCamera(brain.OutputCamera), + brain.transform.localToWorldMatrix, + Color.white); // GML why is this color hardcoded? + } + } + + internal static void DrawCameraFrustumGizmo( + CinemachineBrain brain, LensSettings lens, + Matrix4x4 transform, Color color) + { + float aspect = 1; + bool ortho = false; + if (brain != null) + { + aspect = brain.OutputCamera.aspect; + ortho = brain.OutputCamera.orthographic; + } + + Matrix4x4 originalMatrix = Gizmos.matrix; + Color originalGizmoColour = Gizmos.color; + Gizmos.color = color; + Gizmos.matrix = transform; + if (ortho) + { + Vector3 size = new Vector3( + aspect * lens.OrthographicSize * 2, + lens.OrthographicSize * 2, + lens.NearClipPlane + lens.FarClipPlane); + Gizmos.DrawWireCube( + new Vector3(0, 0, (size.z / 2) + lens.NearClipPlane), size); + } + else + { + Gizmos.DrawFrustum( + Vector3.zero, lens.FieldOfView, + lens.FarClipPlane, lens.NearClipPlane, aspect); + } + Gizmos.matrix = originalMatrix; + Gizmos.color = originalGizmoColour; + } + + [DrawGizmo(GizmoType.Active | GizmoType.InSelectionHierarchy | GizmoType.Pickable, typeof(CinemachineVirtualCameraBase))] + public static void DrawVirtualCameraBaseGizmos(CinemachineVirtualCameraBase vcam, GizmoType selectionType) + { + // Don't draw gizmos on hidden stuff + if ((vcam.gameObject.hideFlags & (HideFlags.HideInHierarchy | HideFlags.HideInInspector)) != 0) + return; + + if (vcam.ParentCamera != null && (selectionType & GizmoType.Active) == 0) + return; + + CameraState state = vcam.State; + Gizmos.DrawIcon(state.FinalPosition, kGizmoFileName, true); + + DrawCameraFrustumGizmo( + CinemachineCore.Instance.FindPotentialTargetBrain(vcam), + state.Lens, + Matrix4x4.TRS( + state.FinalPosition, + UnityQuaternionExtensions.Normalized(state.FinalOrientation), Vector3.one), + CinemachineCore.Instance.IsLive(vcam) + ? CinemachineSettings.CinemachineCoreSettings.ActiveGizmoColour + : CinemachineSettings.CinemachineCoreSettings.InactiveGizmoColour); + } + + static string kGizmoFileName = "Cinemachine/cm_logo_lg.png"; + [InitializeOnLoad] + static class InstallGizmos + { + static InstallGizmos() + { + string srcFile = ScriptableObjectUtility.CinemachineInstallPath + "/Gizmos/" + kGizmoFileName; + if (File.Exists(srcFile)) + { + string dstFile = Application.dataPath + "/Gizmos"; + if (!Directory.Exists(dstFile)) + Directory.CreateDirectory(dstFile); + dstFile += "/" + kGizmoFileName; + if (!File.Exists(dstFile) + || (File.GetLastWriteTime(dstFile) < File.GetLastWriteTime(srcFile) + && (File.GetAttributes(dstFile) & FileAttributes.ReadOnly) == 0)) + { + if (!Directory.Exists(Path.GetDirectoryName(dstFile))) + Directory.CreateDirectory(Path.GetDirectoryName(dstFile)); + File.Copy(srcFile, dstFile, true); + File.SetAttributes( + dstFile, File.GetAttributes(dstFile) & ~FileAttributes.ReadOnly); + } + } + } + } + } +} diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Editor/Editors/CinemachineBrainEditor.cs.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Editor/Editors/CinemachineBrainEditor.cs.meta" new file mode 100644 index 00000000..a6c202ab --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Editor/Editors/CinemachineBrainEditor.cs.meta" @@ -0,0 +1,12 @@ +fileFormatVersion: 2 +guid: 711aad28b4057bd4783120e26ff2ee25 +timeCreated: 1483406727 +licenseType: Pro +MonoImporter: + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Editor/Editors/CinemachineClearShotEditor.cs" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Editor/Editors/CinemachineClearShotEditor.cs" new file mode 100644 index 00000000..8435bc8e --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Editor/Editors/CinemachineClearShotEditor.cs" @@ -0,0 +1,210 @@ +using UnityEditor; +using UnityEngine; + +namespace Cinemachine.Editor +{ + [CustomEditor(typeof(CinemachineClearShot))] + internal sealed class CinemachineClearShotEditor + : CinemachineVirtualCameraBaseEditor + { + EmbeddeAssetEditor m_BlendsEditor; + ColliderState m_ColliderState; + + private UnityEditorInternal.ReorderableList mChildList; + + protected override void OnEnable() + { + base.OnEnable(); + m_BlendsEditor = new EmbeddeAssetEditor( + FieldPath(x => x.m_CustomBlends), this); + m_BlendsEditor.OnChanged = (CinemachineBlenderSettings b) => + { + UnityEditorInternal.InternalEditorUtility.RepaintAllViews(); + }; + m_BlendsEditor.OnCreateEditor = (UnityEditor.Editor ed) => + { + CinemachineBlenderSettingsEditor editor = ed as CinemachineBlenderSettingsEditor; + if (editor != null) + editor.GetAllVirtualCameras = () => { return Target.ChildCameras; }; + }; + mChildList = null; + } + + protected override void OnDisable() + { + base.OnDisable(); + if (m_BlendsEditor != null) + m_BlendsEditor.OnDisable(); + } + + public override void OnInspectorGUI() + { + BeginInspector(); + if (mChildList == null) + SetupChildList(); + + m_ColliderState = GetColliderState(); + switch (m_ColliderState) + { + case ColliderState.ColliderOnParent: + case ColliderState.ColliderOnAllChildren: + break; + case ColliderState.NoCollider: + EditorGUILayout.HelpBox( + "ClearShot requires a Collider extension to rank the shots. Either add one to the ClearShot itself, or to each of the child cameras.", + MessageType.Warning); + break; + case ColliderState.ColliderOnSomeChildren: + EditorGUILayout.HelpBox( + "Some child cameras do not have a Collider extension. ClearShot requires a Collider on all the child cameras, or alternatively on the ClearShot iself.", + MessageType.Warning); + break; + case ColliderState.ColliderOnChildrenAndParent: + EditorGUILayout.HelpBox( + "There is a Collider extension on the ClearShot camera, and also on some of its child cameras. You can't have both.", + MessageType.Error); + break; + } + + DrawHeaderInInspector(); + DrawPropertyInInspector(FindProperty(x => x.m_Priority)); + DrawTargetsInInspector(FindProperty(x => x.m_Follow), FindProperty(x => x.m_LookAt)); + DrawRemainingPropertiesInInspector(); + + // Blends + m_BlendsEditor.DrawEditorCombo( + "Create New Blender Asset", + Target.gameObject.name + " Blends", "asset", string.Empty, + "Custom Blends", false); + + // vcam children + EditorGUILayout.Separator(); + EditorGUI.BeginChangeCheck(); + mChildList.DoLayoutList(); + if (EditorGUI.EndChangeCheck()) + serializedObject.ApplyModifiedProperties(); + + // Extensions + DrawExtensionsWidgetInInspector(); + } + + enum ColliderState + { + NoCollider, + ColliderOnAllChildren, + ColliderOnSomeChildren, + ColliderOnParent, + ColliderOnChildrenAndParent + } + + ColliderState GetColliderState() + { + int numChildren = 0; + int numColliderChildren = 0; + bool colliderOnParent = ObjectHasCollider(Target); + + var children = Target.m_ChildCameras; + numChildren = children == null ? 0 : children.Length; + for (int i = 0; i < numChildren; ++i) + if (ObjectHasCollider(children[i])) + ++numColliderChildren; + if (colliderOnParent) + return (numColliderChildren > 0) + ? ColliderState.ColliderOnChildrenAndParent : ColliderState.ColliderOnParent; + if (numColliderChildren > 0) + return (numColliderChildren == numChildren) + ? ColliderState.ColliderOnAllChildren : ColliderState.ColliderOnSomeChildren; + return ColliderState.NoCollider; + } + + bool ObjectHasCollider(object obj) + { + CinemachineVirtualCameraBase vcam = obj as CinemachineVirtualCameraBase; + var collider = (vcam == null) ? null : vcam.GetComponent(); + return (collider != null && collider.enabled); + } + + void SetupChildList() + { + float vSpace = 2; + float hSpace = 3; + float floatFieldWidth = EditorGUIUtility.singleLineHeight * 2.5f; + + mChildList = new UnityEditorInternal.ReorderableList( + serializedObject, FindProperty(x => x.m_ChildCameras), true, true, true, true); + + mChildList.drawHeaderCallback = (Rect rect) => + { + EditorGUI.LabelField(rect, "Virtual Camera Children"); + GUIContent priorityText = new GUIContent("Priority"); + var textDimensions = GUI.skin.label.CalcSize(priorityText); + rect.x += rect.width - textDimensions.x; + rect.width = textDimensions.x; + EditorGUI.LabelField(rect, priorityText); + }; + mChildList.drawElementCallback + = (Rect rect, int index, bool isActive, bool isFocused) => + { + rect.y += vSpace; + rect.width -= floatFieldWidth + hSpace; + rect.height = EditorGUIUtility.singleLineHeight; + SerializedProperty element = mChildList.serializedProperty.GetArrayElementAtIndex(index); + if (m_ColliderState == ColliderState.ColliderOnSomeChildren + || m_ColliderState == ColliderState.ColliderOnChildrenAndParent) + { + bool hasCollider = ObjectHasCollider(element.objectReferenceValue); + if ((m_ColliderState == ColliderState.ColliderOnSomeChildren && !hasCollider) + || (m_ColliderState == ColliderState.ColliderOnChildrenAndParent && hasCollider)) + { + float width = rect.width; + rect.width = rect.height; + GUIContent label = new GUIContent(""); + label.image = EditorGUIUtility.IconContent("console.warnicon.sml").image; + EditorGUI.LabelField(rect, label); + width -= rect.width; rect.x += rect.width; rect.width = width; + } + } + EditorGUI.PropertyField(rect, element, GUIContent.none); + + SerializedObject obj = new SerializedObject(element.objectReferenceValue); + rect.x += rect.width + hSpace; rect.width = floatFieldWidth; + SerializedProperty priorityProp = obj.FindProperty(() => Target.m_Priority); + float oldWidth = EditorGUIUtility.labelWidth; + EditorGUIUtility.labelWidth = hSpace * 2; + EditorGUI.PropertyField(rect, priorityProp, new GUIContent(" ")); + EditorGUIUtility.labelWidth = oldWidth; + obj.ApplyModifiedProperties(); + }; + mChildList.onChangedCallback = (UnityEditorInternal.ReorderableList l) => + { + if (l.index < 0 || l.index >= l.serializedProperty.arraySize) + return; + Object o = l.serializedProperty.GetArrayElementAtIndex( + l.index).objectReferenceValue; + CinemachineVirtualCameraBase vcam = (o != null) + ? (o as CinemachineVirtualCameraBase) : null; + if (vcam != null) + vcam.transform.SetSiblingIndex(l.index); + }; + mChildList.onAddCallback = (UnityEditorInternal.ReorderableList l) => + { + var index = l.serializedProperty.arraySize; + var vcam = CinemachineMenu.CreateDefaultVirtualCamera(); + Undo.SetTransformParent(vcam.transform, Target.transform, ""); + var collider = Undo.AddComponent(vcam.gameObject); + collider.m_AvoidObstacles = false; + Undo.RecordObject(collider, "create ClearShot child"); + vcam.transform.SetSiblingIndex(index); + }; + mChildList.onRemoveCallback = (UnityEditorInternal.ReorderableList l) => + { + Object o = l.serializedProperty.GetArrayElementAtIndex( + l.index).objectReferenceValue; + CinemachineVirtualCameraBase vcam = (o != null) + ? (o as CinemachineVirtualCameraBase) : null; + if (vcam != null) + Undo.DestroyObjectImmediate(vcam.gameObject); + }; + } + } +} diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Editor/Editors/CinemachineClearShotEditor.cs.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Editor/Editors/CinemachineClearShotEditor.cs.meta" new file mode 100644 index 00000000..8043f7ed --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Editor/Editors/CinemachineClearShotEditor.cs.meta" @@ -0,0 +1,12 @@ +fileFormatVersion: 2 +guid: 6036af5730313e54699c5a693891fe90 +timeCreated: 1484508430 +licenseType: Pro +MonoImporter: + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Editor/Editors/CinemachineColliderEditor.cs" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Editor/Editors/CinemachineColliderEditor.cs" new file mode 100644 index 00000000..7438f237 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Editor/Editors/CinemachineColliderEditor.cs" @@ -0,0 +1,78 @@ +using UnityEngine; +using UnityEditor; +using System.Collections.Generic; + +namespace Cinemachine.Editor +{ + [CustomEditor(typeof(CinemachineCollider))] + internal sealed class CinemachineColliderEditor : BaseEditor + { + protected override List GetExcludedPropertiesInInspector() + { + List excluded = base.GetExcludedPropertiesInInspector(); + if (!Target.m_AvoidObstacles) + { + excluded.Add(FieldPath(x => x.m_DistanceLimit)); + excluded.Add(FieldPath(x => x.m_CameraRadius)); + excluded.Add(FieldPath(x => x.m_Strategy)); + excluded.Add(FieldPath(x => x.m_MaximumEffort)); + excluded.Add(FieldPath(x => x.m_Damping)); + excluded.Add(FieldPath(x => x.m_DampingWhenOccluded)); + excluded.Add(FieldPath(x => x.m_SmoothingTime)); + } + else if (Target.m_Strategy == CinemachineCollider.ResolutionStrategy.PullCameraForward) + { + excluded.Add(FieldPath(x => x.m_MaximumEffort)); + } + return excluded; + } + + public override void OnInspectorGUI() + { + BeginInspector(); + + if (Target.m_AvoidObstacles && !Target.VirtualCamera.State.HasLookAt) + EditorGUILayout.HelpBox( + "Avoid Obstacles requires a LookAt target.", + MessageType.Warning); + + DrawRemainingPropertiesInInspector(); + } + + [DrawGizmo(GizmoType.Active | GizmoType.Selected, typeof(CinemachineCollider))] + private static void DrawColliderGizmos(CinemachineCollider collider, GizmoType type) + { + CinemachineVirtualCameraBase vcam = (collider != null) ? collider.VirtualCamera : null; + if (vcam != null && collider.enabled) + { + Color oldColor = Gizmos.color; + Vector3 pos = vcam.State.FinalPosition; + if (collider.m_AvoidObstacles && vcam.State.HasLookAt) + { + Gizmos.color = CinemachineColliderPrefs.FeelerColor; + if (collider.m_CameraRadius > 0) + Gizmos.DrawWireSphere(pos, collider.m_CameraRadius); + + Vector3 forwardFeelerVector = (vcam.State.ReferenceLookAt - pos).normalized; + float distance = collider.m_DistanceLimit; + Gizmos.DrawLine(pos, pos + forwardFeelerVector * distance); + + // Show the avoidance path, for debugging + List> debugPaths = collider.DebugPaths; + foreach (var path in debugPaths) + { + Gizmos.color = CinemachineColliderPrefs.FeelerHitColor; + Vector3 p0 = vcam.State.ReferenceLookAt; + foreach (var p in path) + { + Gizmos.DrawLine(p0, p); + p0 = p; + } + Gizmos.DrawLine(p0, pos); + } + } + Gizmos.color = oldColor; + } + } + } +} diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Editor/Editors/CinemachineColliderEditor.cs.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Editor/Editors/CinemachineColliderEditor.cs.meta" new file mode 100644 index 00000000..394fc4c8 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Editor/Editors/CinemachineColliderEditor.cs.meta" @@ -0,0 +1,12 @@ +fileFormatVersion: 2 +guid: bf34fbe7a6e71634493d770ed0031f9d +timeCreated: 1486652356 +licenseType: Pro +MonoImporter: + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Editor/Editors/CinemachineComposerEditor.cs" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Editor/Editors/CinemachineComposerEditor.cs" new file mode 100644 index 00000000..8c2d4764 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Editor/Editors/CinemachineComposerEditor.cs" @@ -0,0 +1,116 @@ +using UnityEngine; +using UnityEditor; +using Cinemachine.Utility; +using System.Collections.Generic; + +namespace Cinemachine.Editor +{ + [CustomEditor(typeof(CinemachineComposer))] + internal class CinemachineComposerEditor : BaseEditor + { + CinemachineScreenComposerGuides mScreenGuideEditor; + + protected virtual void OnEnable() + { + mScreenGuideEditor = new CinemachineScreenComposerGuides(); + mScreenGuideEditor.GetHardGuide = () => { return Target.HardGuideRect; }; + mScreenGuideEditor.GetSoftGuide = () => { return Target.SoftGuideRect; }; + mScreenGuideEditor.SetHardGuide = (Rect r) => { Target.HardGuideRect = r; }; + mScreenGuideEditor.SetSoftGuide = (Rect r) => { Target.SoftGuideRect = r; }; + mScreenGuideEditor.Target = () => { return serializedObject; }; + + CinemachineDebug.OnGUIHandlers -= OnGUI; + CinemachineDebug.OnGUIHandlers += OnGUI; + UnityEditorInternal.InternalEditorUtility.RepaintAllViews(); + } + + protected virtual void OnDisable() + { + CinemachineDebug.OnGUIHandlers -= OnGUI; + UnityEditorInternal.InternalEditorUtility.RepaintAllViews(); + } + + public override void OnInspectorGUI() + { + BeginInspector(); + if (Target.LookAtTarget == null) + EditorGUILayout.HelpBox( + "A LookAt target is required. Change Aim to Do Nothing if you don't want a LookAt target.", + MessageType.Warning); + + // First snapshot some settings + Rect oldHard = Target.HardGuideRect; + Rect oldSoft = Target.SoftGuideRect; + + // Draw the properties + DrawRemainingPropertiesInInspector(); + mScreenGuideEditor.SetNewBounds(oldHard, oldSoft, Target.HardGuideRect, Target.SoftGuideRect); + } + + protected virtual void OnGUI() + { + if (Target == null) + return; + + // Draw the camera guides + if (!Target.IsValid || !CinemachineSettings.CinemachineCoreSettings.ShowInGameGuides) + return; + + var vcam = Target.VirtualCamera; + CinemachineBrain brain = CinemachineCore.Instance.FindPotentialTargetBrain(vcam); + if (brain == null || (brain.OutputCamera.activeTexture != null && CinemachineCore.Instance.BrainCount > 1)) + return; + + // Screen guides + bool isLive = brain.IsLive(vcam, true); + mScreenGuideEditor.OnGUI_DrawGuides(isLive, brain.OutputCamera, Target.VcamState.Lens, true); + + // Draw an on-screen gizmo for the target + if (Target.LookAtTarget != null && isLive) + { + Vector3 targetScreenPosition = brain.OutputCamera.WorldToScreenPoint(Target.TrackedPoint); + if (targetScreenPosition.z > 0) + { + targetScreenPosition.y = Screen.height - targetScreenPosition.y; + + GUI.color = CinemachineSettings.ComposerSettings.TargetColour; + Rect r = new Rect(targetScreenPosition, Vector2.zero); + float size = (CinemachineSettings.ComposerSettings.TargetSize + + CinemachineScreenComposerGuides.kGuideBarWidthPx) / 2; + GUI.DrawTexture(r.Inflated(new Vector2(size, size)), Texture2D.whiteTexture); + size -= CinemachineScreenComposerGuides.kGuideBarWidthPx; + if (size > 0) + { + Vector4 overlayOpacityScalar + = new Vector4(1f, 1f, 1f, CinemachineSettings.ComposerSettings.OverlayOpacity); + GUI.color = Color.black * overlayOpacityScalar; + GUI.DrawTexture(r.Inflated(new Vector2(size, size)), Texture2D.whiteTexture); + } + } + } + } +#if false + // debugging only + [DrawGizmo(GizmoType.Active | GizmoType.Selected, typeof(CinemachineComposer))] + static void DrawTransposerGizmos(CinemachineComposer target, GizmoType selectionType) + { + // Draw lookahead path + if (target.m_LookaheadTime > 0) + { + Color originalGizmoColour = Gizmos.color; + Gizmos.color = CinemachineSettings.ComposerSettings.TargetColour; + + var p0 = target.m_Predictor.PredictPosition(0); + int numSteps = 20; + for (int i = 1; i <= numSteps; ++i) + { + var p1 = target.m_Predictor.PredictPosition(i * target.m_LookaheadTime / numSteps); + Gizmos.DrawLine(p0, p1); + p0 = p1; + } + Gizmos.color = originalGizmoColour; + } + } +#endif + } +} diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Editor/Editors/CinemachineComposerEditor.cs.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Editor/Editors/CinemachineComposerEditor.cs.meta" new file mode 100644 index 00000000..1c9b69a5 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Editor/Editors/CinemachineComposerEditor.cs.meta" @@ -0,0 +1,12 @@ +fileFormatVersion: 2 +guid: 2bb09c3bc24a82648a2e4fc008a28d8b +timeCreated: 1484088329 +licenseType: Pro +MonoImporter: + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Editor/Editors/CinemachineConfinerEditor.cs" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Editor/Editors/CinemachineConfinerEditor.cs" new file mode 100644 index 00000000..72a888de --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Editor/Editors/CinemachineConfinerEditor.cs" @@ -0,0 +1,161 @@ +using UnityEngine; +using UnityEditor; +using System; +using System.Collections.Generic; + +namespace Cinemachine.Editor +{ + [CustomEditor(typeof(CinemachineConfiner))] + internal sealed class CinemachineConfinerEditor : BaseEditor + { + protected override List GetExcludedPropertiesInInspector() + { + List excluded = base.GetExcludedPropertiesInInspector(); + CinemachineBrain brain = CinemachineCore.Instance.FindPotentialTargetBrain(Target.VirtualCamera); + bool ortho = brain != null ? brain.OutputCamera.orthographic : false; + if (!ortho) + excluded.Add(FieldPath(x => x.m_ConfineScreenEdges)); + if (Target.m_ConfineMode == CinemachineConfiner.Mode.Confine2D) + excluded.Add(FieldPath(x => x.m_BoundingVolume)); + else + excluded.Add(FieldPath(x => x.m_BoundingShape2D)); + return excluded; + } + + public override void OnInspectorGUI() + { + BeginInspector(); + if (Target.m_ConfineMode == CinemachineConfiner.Mode.Confine2D) + { + if (Target.m_BoundingShape2D == null) + EditorGUILayout.HelpBox("A Bounding Shape is required.", MessageType.Warning); + else if (Target.m_BoundingShape2D.GetType() != typeof(PolygonCollider2D) + && Target.m_BoundingShape2D.GetType() != typeof(CompositeCollider2D)) + { + EditorGUILayout.HelpBox( + "Must be a PolygonCollider2D or CompositeCollider2D.", + MessageType.Warning); + } + else if (Target.m_BoundingShape2D.GetType() == typeof(CompositeCollider2D)) + { + CompositeCollider2D poly = Target.m_BoundingShape2D as CompositeCollider2D; + if (poly.geometryType != CompositeCollider2D.GeometryType.Polygons) + { + EditorGUILayout.HelpBox( + "CompositeCollider2D geometry type must be Polygons", + MessageType.Warning); + } + } + } + else + { + if (Target.m_BoundingVolume == null) + EditorGUILayout.HelpBox("A Bounding Volume is required.", MessageType.Warning); + else if (Target.m_BoundingVolume.GetType() != typeof(BoxCollider) + && Target.m_BoundingVolume.GetType() != typeof(SphereCollider) + && Target.m_BoundingVolume.GetType() != typeof(CapsuleCollider)) + { + EditorGUILayout.HelpBox( + "Must be a BoxCollider, SphereCollider, or CapsuleCollider.", + MessageType.Warning); + } + } + DrawRemainingPropertiesInInspector(); + } + + [DrawGizmo(GizmoType.Active | GizmoType.Selected, typeof(CinemachineConfiner))] + private static void DrawColliderGizmos(CinemachineConfiner confiner, GizmoType type) + { + CinemachineVirtualCameraBase vcam = (confiner != null) ? confiner.VirtualCamera : null; + if (vcam != null && confiner.IsValid) + { + Matrix4x4 oldMatrix = Gizmos.matrix; + Color oldColor = Gizmos.color; + Gizmos.color = Color.yellow; + + if (confiner.m_ConfineMode == CinemachineConfiner.Mode.Confine3D) + { + Transform t = confiner.m_BoundingVolume.transform; + Gizmos.matrix = Matrix4x4.TRS(t.position, t.rotation, t.lossyScale); + + Type colliderType = confiner.m_BoundingVolume.GetType(); + if (colliderType == typeof(BoxCollider)) + { + BoxCollider c = confiner.m_BoundingVolume as BoxCollider; + Gizmos.DrawWireCube(c.center, c.size); + } + else if (colliderType == typeof(SphereCollider)) + { + SphereCollider c = confiner.m_BoundingVolume as SphereCollider; + Gizmos.DrawWireSphere(c.center, c.radius); + } + else if (colliderType == typeof(CapsuleCollider)) + { + CapsuleCollider c = confiner.m_BoundingVolume as CapsuleCollider; + Vector3 size = Vector3.one * c.radius * 2; + switch (c.direction) + { + case 0: size.x = c.height; break; + case 1: size.y = c.height; break; + case 2: size.z = c.height; break; + } + Gizmos.DrawWireCube(c.center, size); + } + else if (colliderType == typeof(MeshCollider)) + { + MeshCollider c = confiner.m_BoundingVolume as MeshCollider; + Gizmos.DrawWireMesh(c.sharedMesh); + } + else + { + // Just draw an AABB - not very nice! + Gizmos.matrix = oldMatrix; + Bounds bounds = confiner.m_BoundingVolume.bounds; + Gizmos.DrawWireCube(t.position, bounds.extents * 2); + } + } + else + { + Transform t = confiner.m_BoundingShape2D.transform; + Gizmos.matrix = Matrix4x4.TRS(t.position, t.rotation, t.lossyScale); + + Type colliderType = confiner.m_BoundingShape2D.GetType(); + if (colliderType == typeof(PolygonCollider2D)) + { + PolygonCollider2D poly = confiner.m_BoundingShape2D as PolygonCollider2D; + for (int i = 0; i < poly.pathCount; ++i) + DrawPath(poly.GetPath(i), -1); + } + else if (colliderType == typeof(CompositeCollider2D)) + { + CompositeCollider2D poly = confiner.m_BoundingShape2D as CompositeCollider2D; + Vector2[] path = new Vector2[poly.pointCount]; + for (int i = 0; i < poly.pathCount; ++i) + { + int numPoints = poly.GetPath(i, path); + DrawPath(path, numPoints); + } + } + } + Gizmos.color = oldColor; + Gizmos.matrix = oldMatrix; + } + } + + static void DrawPath(Vector2[] path, int numPoints) + { + if (numPoints < 0) + numPoints = path.Length; + if (numPoints > 0) + { + Vector2 v0 = path[numPoints-1]; + for (int j = 0; j < numPoints; ++j) + { + Vector2 v = path[j]; + Gizmos.DrawLine(v0, v); + v0 = v; + } + } + } + } +} diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Editor/Editors/CinemachineConfinerEditor.cs.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Editor/Editors/CinemachineConfinerEditor.cs.meta" new file mode 100644 index 00000000..763f3d06 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Editor/Editors/CinemachineConfinerEditor.cs.meta" @@ -0,0 +1,13 @@ +fileFormatVersion: 2 +guid: 3f7c779802a73d5448e38af7c39fbaa5 +timeCreated: 1503423096 +licenseType: Pro +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Editor/Editors/CinemachineExternalCameraEditor.cs" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Editor/Editors/CinemachineExternalCameraEditor.cs" new file mode 100644 index 00000000..083badb9 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Editor/Editors/CinemachineExternalCameraEditor.cs" @@ -0,0 +1,17 @@ +using System.Collections.Generic; +using UnityEditor; + +namespace Cinemachine.Editor +{ + [CustomEditor(typeof(CinemachineExternalCamera))] + internal class CinemachineExternalCameraEditor + : CinemachineVirtualCameraBaseEditor + { + protected override List GetExcludedPropertiesInInspector() + { + List excluded = base.GetExcludedPropertiesInInspector(); + excluded.Add("Extensions"); + return excluded; + } + } +} diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Editor/Editors/CinemachineExternalCameraEditor.cs.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Editor/Editors/CinemachineExternalCameraEditor.cs.meta" new file mode 100644 index 00000000..97a0d816 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Editor/Editors/CinemachineExternalCameraEditor.cs.meta" @@ -0,0 +1,12 @@ +fileFormatVersion: 2 +guid: 3226d9f88577be74197693bd17cff8c3 +timeCreated: 1506455627 +licenseType: Pro +MonoImporter: + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Editor/Editors/CinemachineFramingTransposerEditor.cs" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Editor/Editors/CinemachineFramingTransposerEditor.cs" new file mode 100644 index 00000000..8fc27f2f --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Editor/Editors/CinemachineFramingTransposerEditor.cs" @@ -0,0 +1,183 @@ +using UnityEngine; +using UnityEditor; +using Cinemachine.Utility; +using System.Collections.Generic; + +namespace Cinemachine.Editor +{ + [CustomEditor(typeof(CinemachineFramingTransposer))] + internal class CinemachineFramingTransposerEditor : BaseEditor + { + CinemachineScreenComposerGuides mScreenGuideEditor; + + protected override List GetExcludedPropertiesInInspector() + { + List excluded = base.GetExcludedPropertiesInInspector(); + if (Target.m_UnlimitedSoftZone) + { + excluded.Add(FieldPath(x => x.m_SoftZoneWidth)); + excluded.Add(FieldPath(x => x.m_SoftZoneHeight)); + excluded.Add(FieldPath(x => x.m_BiasX)); + excluded.Add(FieldPath(x => x.m_BiasY)); + } + CinemachineTargetGroup group = Target.FollowTargetGroup; + if (group == null || Target.m_GroupFramingMode == CinemachineFramingTransposer.FramingMode.None) + { + excluded.Add(FieldPath(x => x.m_GroupFramingSize)); + excluded.Add(FieldPath(x => x.m_AdjustmentMode)); + excluded.Add(FieldPath(x => x.m_MaxDollyIn)); + excluded.Add(FieldPath(x => x.m_MaxDollyOut)); + excluded.Add(FieldPath(x => x.m_MinimumDistance)); + excluded.Add(FieldPath(x => x.m_MaximumDistance)); + excluded.Add(FieldPath(x => x.m_MinimumFOV)); + excluded.Add(FieldPath(x => x.m_MaximumFOV)); + excluded.Add(FieldPath(x => x.m_MinimumOrthoSize)); + excluded.Add(FieldPath(x => x.m_MaximumOrthoSize)); + if (group == null) + excluded.Add(FieldPath(x => x.m_GroupFramingMode)); + } + else + { + CinemachineBrain brain = CinemachineCore.Instance.FindPotentialTargetBrain(Target.VirtualCamera); + bool ortho = brain != null ? brain.OutputCamera.orthographic : false; + if (ortho) + { + excluded.Add(FieldPath(x => x.m_AdjustmentMode)); + excluded.Add(FieldPath(x => x.m_MaxDollyIn)); + excluded.Add(FieldPath(x => x.m_MaxDollyOut)); + excluded.Add(FieldPath(x => x.m_MinimumDistance)); + excluded.Add(FieldPath(x => x.m_MaximumDistance)); + excluded.Add(FieldPath(x => x.m_MinimumFOV)); + excluded.Add(FieldPath(x => x.m_MaximumFOV)); + } + else + { + excluded.Add(FieldPath(x => x.m_MinimumOrthoSize)); + excluded.Add(FieldPath(x => x.m_MaximumOrthoSize)); + switch (Target.m_AdjustmentMode) + { + case CinemachineFramingTransposer.AdjustmentMode.DollyOnly: + excluded.Add(FieldPath(x => x.m_MinimumFOV)); + excluded.Add(FieldPath(x => x.m_MaximumFOV)); + break; + case CinemachineFramingTransposer.AdjustmentMode.ZoomOnly: + excluded.Add(FieldPath(x => x.m_MaxDollyIn)); + excluded.Add(FieldPath(x => x.m_MaxDollyOut)); + excluded.Add(FieldPath(x => x.m_MinimumDistance)); + excluded.Add(FieldPath(x => x.m_MaximumDistance)); + break; + default: + break; + } + } + } + return excluded; + } + + protected virtual void OnEnable() + { + mScreenGuideEditor = new CinemachineScreenComposerGuides(); + mScreenGuideEditor.GetHardGuide = () => { return Target.HardGuideRect; }; + mScreenGuideEditor.GetSoftGuide = () => { return Target.SoftGuideRect; }; + mScreenGuideEditor.SetHardGuide = (Rect r) => { Target.HardGuideRect = r; }; + mScreenGuideEditor.SetSoftGuide = (Rect r) => { Target.SoftGuideRect = r; }; + mScreenGuideEditor.Target = () => { return serializedObject; }; + + CinemachineDebug.OnGUIHandlers -= OnGUI; + CinemachineDebug.OnGUIHandlers += OnGUI; + UnityEditorInternal.InternalEditorUtility.RepaintAllViews(); + } + + protected virtual void OnDisable() + { + CinemachineDebug.OnGUIHandlers -= OnGUI; + UnityEditorInternal.InternalEditorUtility.RepaintAllViews(); + } + + public override void OnInspectorGUI() + { + BeginInspector(); + if (Target.FollowTarget == null) + EditorGUILayout.HelpBox( + "Framing Transposer requires a Follow target. Change Body to Do Nothing if you don't want a Follow target.", + MessageType.Warning); + + // First snapshot some settings + Rect oldHard = Target.HardGuideRect; + Rect oldSoft = Target.SoftGuideRect; + + // Draw the properties + DrawRemainingPropertiesInInspector(); + mScreenGuideEditor.SetNewBounds(oldHard, oldSoft, Target.HardGuideRect, Target.SoftGuideRect); + } + + protected virtual void OnGUI() + { + if (Target == null) + return; + + // Draw the camera guides + if (!Target.IsValid || !CinemachineSettings.CinemachineCoreSettings.ShowInGameGuides) + return; + + CinemachineBrain brain = CinemachineCore.Instance.FindPotentialTargetBrain(Target.VirtualCamera); + if (brain == null || (brain.OutputCamera.activeTexture != null && CinemachineCore.Instance.BrainCount > 1)) + return; + + bool isLive = CinemachineCore.Instance.IsLive(Target.VirtualCamera); + + // Screen guides + mScreenGuideEditor.OnGUI_DrawGuides(isLive, brain.OutputCamera, Target.VcamState.Lens, !Target.m_UnlimitedSoftZone); + + // Draw an on-screen gizmo for the target + if (Target.FollowTarget != null && isLive) + { + Vector3 targetScreenPosition = brain.OutputCamera.WorldToScreenPoint(Target.TrackedPoint); + if (targetScreenPosition.z > 0) + { + targetScreenPosition.y = Screen.height - targetScreenPosition.y; + + GUI.color = CinemachineSettings.ComposerSettings.TargetColour; + Rect r = new Rect(targetScreenPosition, Vector2.zero); + float size = (CinemachineSettings.ComposerSettings.TargetSize + + CinemachineScreenComposerGuides.kGuideBarWidthPx) / 2; + GUI.DrawTexture(r.Inflated(new Vector2(size, size)), Texture2D.whiteTexture); + size -= CinemachineScreenComposerGuides.kGuideBarWidthPx; + if (size > 0) + { + Vector4 overlayOpacityScalar + = new Vector4(1f, 1f, 1f, CinemachineSettings.ComposerSettings.OverlayOpacity); + GUI.color = Color.black * overlayOpacityScalar; + GUI.DrawTexture(r.Inflated(new Vector2(size, size)), Texture2D.whiteTexture); + } + } + } + } + + [DrawGizmo(GizmoType.Active | GizmoType.InSelectionHierarchy, typeof(CinemachineFramingTransposer))] + private static void DrawGroupComposerGizmos(CinemachineFramingTransposer target, GizmoType selectionType) + { + // Show the group bounding box, as viewed from the camera position + if (target.FollowTargetGroup != null + && target.m_GroupFramingMode != CinemachineFramingTransposer.FramingMode.None) + { + Matrix4x4 m = Gizmos.matrix; + Bounds b = target.LastBounds; + Gizmos.matrix = target.LastBoundsMatrix; + Gizmos.color = Color.yellow; + if (target.VcamState.Lens.Orthographic) + Gizmos.DrawWireCube(b.center, b.size); + else + { + float z = b.center.z; + Vector3 e = b.extents; + Gizmos.DrawFrustum( + Vector3.zero, + Mathf.Atan2(e.y, z) * Mathf.Rad2Deg * 2, + z + e.z, z - e.z, e.x / e.y); + } + Gizmos.matrix = m; + } + } + } +} diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Editor/Editors/CinemachineFramingTransposerEditor.cs.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Editor/Editors/CinemachineFramingTransposerEditor.cs.meta" new file mode 100644 index 00000000..c55f83aa --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Editor/Editors/CinemachineFramingTransposerEditor.cs.meta" @@ -0,0 +1,12 @@ +fileFormatVersion: 2 +guid: 620aee1bd928b2a4981896c6b4e1bf0d +timeCreated: 1502046367 +licenseType: Pro +MonoImporter: + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Editor/Editors/CinemachineFreeLookEditor.cs" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Editor/Editors/CinemachineFreeLookEditor.cs" new file mode 100644 index 00000000..0c6268ea --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Editor/Editors/CinemachineFreeLookEditor.cs" @@ -0,0 +1,203 @@ +using UnityEngine; +using UnityEditor; +using Cinemachine.Editor; +using System.Collections.Generic; +using Cinemachine.Utility; + +namespace Cinemachine +{ + [CustomEditor(typeof(CinemachineFreeLook))] + internal sealed class CinemachineFreeLookEditor + : CinemachineVirtualCameraBaseEditor + { + protected override List GetExcludedPropertiesInInspector() + { + List excluded = base.GetExcludedPropertiesInInspector(); + excluded.Add(FieldPath(x => x.m_Orbits)); + if (!Target.m_CommonLens) + excluded.Add(FieldPath(x => x.m_Lens)); + if (Target.m_BindingMode == CinemachineTransposer.BindingMode.SimpleFollowWithWorldUp) + { + excluded.Add(FieldPath(x => x.m_Heading)); + excluded.Add(FieldPath(x => x.m_RecenterToTargetHeading)); + } + return excluded; + } + + protected override void OnDisable() + { + base.OnDisable(); + + // Must destroy child editors or we get exceptions + if (m_editors != null) + foreach (UnityEditor.Editor e in m_editors) + if (e != null) + UnityEngine.Object.DestroyImmediate(e); + } + + public override void OnInspectorGUI() + { + Target.m_XAxis.ValueRangeLocked + = (Target.m_BindingMode == CinemachineTransposer.BindingMode.SimpleFollowWithWorldUp); + + // Ordinary properties + BeginInspector(); + DrawHeaderInInspector(); + DrawPropertyInInspector(FindProperty(x => x.m_Priority)); + DrawTargetsInInspector(FindProperty(x => x.m_Follow), FindProperty(x => x.m_LookAt)); + DrawRemainingPropertiesInInspector(); + + // Orbits + EditorGUI.BeginChangeCheck(); + SerializedProperty orbits = FindProperty(x => x.m_Orbits); + for (int i = 0; i < CinemachineFreeLook.RigNames.Length; ++i) + { + Rect rect = EditorGUILayout.GetControlRect(true); + SerializedProperty orbit = orbits.GetArrayElementAtIndex(i); + InspectorUtility.MultiPropertyOnLine(rect, + new GUIContent(CinemachineFreeLook.RigNames[i]), + new [] { orbit.FindPropertyRelative(() => Target.m_Orbits[i].m_Height), + orbit.FindPropertyRelative(() => Target.m_Orbits[i].m_Radius) }, + null); + } + if (EditorGUI.EndChangeCheck()) + serializedObject.ApplyModifiedProperties(); + + // Rigs + UpdateRigEditors(); + for (int i = 0; i < m_editors.Length; ++i) + { + if (m_editors[i] == null) + continue; + EditorGUILayout.Separator(); + EditorGUILayout.BeginVertical(GUI.skin.box); + EditorGUILayout.LabelField(RigNames[i], EditorStyles.boldLabel); + ++EditorGUI.indentLevel; + m_editors[i].OnInspectorGUI(); + --EditorGUI.indentLevel; + EditorGUILayout.EndVertical(); + } + + // Extensions + DrawExtensionsWidgetInInspector(); + } + + string[] RigNames; + CinemachineVirtualCameraBase[] m_rigs; + UnityEditor.Editor[] m_editors; + void UpdateRigEditors() + { + RigNames = CinemachineFreeLook.RigNames; + if (m_rigs == null) + m_rigs = new CinemachineVirtualCameraBase[RigNames.Length]; + if (m_editors == null) + m_editors = new UnityEditor.Editor[RigNames.Length]; + for (int i = 0; i < RigNames.Length; ++i) + { + CinemachineVirtualCamera rig = Target.GetRig(i); + if (rig == null || rig != m_rigs[i]) + { + m_rigs[i] = rig; + if (m_editors[i] != null) + UnityEngine.Object.DestroyImmediate(m_editors[i]); + m_editors[i] = null; + if (rig != null) + CreateCachedEditor(rig, null, ref m_editors[i]); + } + } + } + + /// + /// Register with CinemachineFreeLook to create the pipeline in an undo-friendly manner + /// + [InitializeOnLoad] + class CreateRigWithUndo + { + static CreateRigWithUndo() + { + CinemachineFreeLook.CreateRigOverride + = (CinemachineFreeLook vcam, string name, CinemachineVirtualCamera copyFrom) => + { + // Create a new rig with default components + GameObject go = InspectorUtility.CreateGameObject(name); + Undo.RegisterCreatedObjectUndo(go, "created rig"); + Undo.SetTransformParent(go.transform, vcam.transform, "parenting rig"); + CinemachineVirtualCamera rig = Undo.AddComponent(go); + Undo.RecordObject(rig, "creating rig"); + if (copyFrom != null) + ReflectionHelpers.CopyFields(copyFrom, rig); + else + { + go = rig.GetComponentOwner().gameObject; + Undo.RecordObject(Undo.AddComponent(go), "creating rig"); + Undo.RecordObject(Undo.AddComponent(go), "creating rig"); + } + return rig; + }; + CinemachineFreeLook.DestroyRigOverride = (GameObject rig) => + { + Undo.DestroyObjectImmediate(rig); + }; + } + } + + [DrawGizmo(GizmoType.Active | GizmoType.Selected, typeof(CinemachineFreeLook))] + private static void DrawFreeLookGizmos(CinemachineFreeLook vcam, GizmoType selectionType) + { + // Standard frustum and logo + CinemachineBrainEditor.DrawVirtualCameraBaseGizmos(vcam, selectionType); + + Color originalGizmoColour = Gizmos.color; + bool isActiveVirtualCam = CinemachineCore.Instance.IsLive(vcam); + Gizmos.color = isActiveVirtualCam + ? CinemachineSettings.CinemachineCoreSettings.ActiveGizmoColour + : CinemachineSettings.CinemachineCoreSettings.InactiveGizmoColour; + + if (vcam.Follow != null) + { + Vector3 pos = vcam.Follow.position; + Vector3 up = Vector3.up; + CinemachineBrain brain = CinemachineCore.Instance.FindPotentialTargetBrain(vcam); + if (brain != null) + up = brain.DefaultWorldUp; + + var MiddleRig = vcam.GetRig(1).GetCinemachineComponent(); + if (MiddleRig != null) + { + Quaternion orient = MiddleRig.GetReferenceOrientation(up); + up = orient * Vector3.up; + float rotation = vcam.m_XAxis.Value + vcam.m_Heading.m_Bias; + orient = Quaternion.AngleAxis(rotation, up) * orient; + + CinemachineOrbitalTransposerEditor.DrawCircleAtPointWithRadius( + pos + up * vcam.m_Orbits[0].m_Height, orient, vcam.m_Orbits[0].m_Radius); + CinemachineOrbitalTransposerEditor.DrawCircleAtPointWithRadius( + pos + up * vcam.m_Orbits[1].m_Height, orient, vcam.m_Orbits[1].m_Radius); + CinemachineOrbitalTransposerEditor.DrawCircleAtPointWithRadius( + pos + up * vcam.m_Orbits[2].m_Height, orient, vcam.m_Orbits[2].m_Radius); + + DrawCameraPath(pos, orient, vcam); + } + } + + Gizmos.color = originalGizmoColour; + } + + private static void DrawCameraPath(Vector3 atPos, Quaternion orient, CinemachineFreeLook vcam) + { + Matrix4x4 prevMatrix = Gizmos.matrix; + Gizmos.matrix = Matrix4x4.TRS(atPos, orient, Vector3.one); + + const int kNumSteps = 20; + Vector3 currPos = vcam.GetLocalPositionForCameraFromInput(0f); + for (int i = 1; i < kNumSteps + 1; ++i) + { + float t = (float)i / (float)kNumSteps; + Vector3 nextPos = vcam.GetLocalPositionForCameraFromInput(t); + Gizmos.DrawLine(currPos, nextPos); + currPos = nextPos; + } + Gizmos.matrix = prevMatrix; + } + } +} diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Editor/Editors/CinemachineFreeLookEditor.cs.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Editor/Editors/CinemachineFreeLookEditor.cs.meta" new file mode 100644 index 00000000..3f7e1755 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Editor/Editors/CinemachineFreeLookEditor.cs.meta" @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 04e6f1d86089cda409e925cd975436d9 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Editor/Editors/CinemachineGroupComposerEditor.cs" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Editor/Editors/CinemachineGroupComposerEditor.cs" new file mode 100644 index 00000000..49339b20 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Editor/Editors/CinemachineGroupComposerEditor.cs" @@ -0,0 +1,94 @@ +using System; +using System.Collections.Generic; +using System.Linq.Expressions; +using UnityEditor; +using UnityEngine; +using Cinemachine.Utility; + +namespace Cinemachine.Editor +{ + [CustomEditor(typeof(CinemachineGroupComposer))] + internal class CinemachineGroupComposerEditor : CinemachineComposerEditor + { + // Specialization + private CinemachineGroupComposer MyTarget { get { return target as CinemachineGroupComposer; } } + protected string FieldPath(Expression> expr) + { + return ReflectionHelpers.GetFieldPath(expr); + } + + protected override List GetExcludedPropertiesInInspector() + { + List excluded = base.GetExcludedPropertiesInInspector(); + CinemachineBrain brain = CinemachineCore.Instance.FindPotentialTargetBrain(MyTarget.VirtualCamera); + bool ortho = brain != null ? brain.OutputCamera.orthographic : false; + if (ortho) + { + excluded.Add(FieldPath(x => x.m_AdjustmentMode)); + excluded.Add(FieldPath(x => x.m_MinimumFOV)); + excluded.Add(FieldPath(x => x.m_MaximumFOV)); + excluded.Add(FieldPath(x => x.m_MaxDollyIn)); + excluded.Add(FieldPath(x => x.m_MaxDollyOut)); + excluded.Add(FieldPath(x => x.m_MinimumDistance)); + excluded.Add(FieldPath(x => x.m_MaximumDistance)); + } + else + { + excluded.Add(FieldPath(x => x.m_MinimumOrthoSize)); + excluded.Add(FieldPath(x => x.m_MaximumOrthoSize)); + switch (MyTarget.m_AdjustmentMode) + { + case CinemachineGroupComposer.AdjustmentMode.DollyOnly: + excluded.Add(FieldPath(x => x.m_MinimumFOV)); + excluded.Add(FieldPath(x => x.m_MaximumFOV)); + break; + case CinemachineGroupComposer.AdjustmentMode.ZoomOnly: + excluded.Add(FieldPath(x => x.m_MaxDollyIn)); + excluded.Add(FieldPath(x => x.m_MaxDollyOut)); + excluded.Add(FieldPath(x => x.m_MinimumDistance)); + excluded.Add(FieldPath(x => x.m_MaximumDistance)); + break; + default: + break; + } + } + return excluded; + } + + public override void OnInspectorGUI() + { + if (MyTarget.IsValid && MyTarget.LookAtTargetGroup == null) + EditorGUILayout.HelpBox( + "The Framing settings will be ignored because the LookAt target is not a kind of CinemachineTargetGroup", + MessageType.Info); + + base.OnInspectorGUI(); + } + + [DrawGizmo(GizmoType.Active | GizmoType.InSelectionHierarchy, typeof(CinemachineGroupComposer))] + private static void DrawGroupComposerGizmos(CinemachineGroupComposer target, GizmoType selectionType) + { + // Show the group bounding box, as viewed from the camera position + if (target.LookAtTargetGroup != null) + { + Matrix4x4 m = Gizmos.matrix; + Bounds b = target.LastBounds; + Gizmos.matrix = target.LastBoundsMatrix; + Gizmos.color = Color.yellow; + + if (target.VcamState.Lens.Orthographic) + Gizmos.DrawWireCube(b.center, b.size); + else + { + float z = b.center.z; + Vector3 e = b.extents; + Gizmos.DrawFrustum( + Vector3.zero, + Mathf.Atan2(e.y, z) * Mathf.Rad2Deg * 2, + z + e.z, z - e.z, e.x / e.y); + } + Gizmos.matrix = m; + } + } + } +} diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Editor/Editors/CinemachineGroupComposerEditor.cs.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Editor/Editors/CinemachineGroupComposerEditor.cs.meta" new file mode 100644 index 00000000..70c09f98 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Editor/Editors/CinemachineGroupComposerEditor.cs.meta" @@ -0,0 +1,12 @@ +fileFormatVersion: 2 +guid: c5da6ce9225f948438f7d6a072499ecd +timeCreated: 1496702989 +licenseType: Pro +MonoImporter: + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Editor/Editors/CinemachineHardLockToTargetEditor.cs" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Editor/Editors/CinemachineHardLockToTargetEditor.cs" new file mode 100644 index 00000000..9fea400e --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Editor/Editors/CinemachineHardLockToTargetEditor.cs" @@ -0,0 +1,23 @@ +using UnityEditor; +using UnityEngine; + +namespace Cinemachine.Editor +{ + [CustomEditor(typeof(CinemachineHardLockToTarget))] + internal sealed class CinemachineHardLockToTargetEditor : BaseEditor + { + public override void OnInspectorGUI() + { + BeginInspector(); + if (Target.FollowTarget == null) + EditorGUILayout.HelpBox( + "Hard Lock requires a Follow Target. Change Body to Do Nothing if you don't want a Follow target.", + MessageType.Warning); + EditorGUI.BeginChangeCheck(); + GUI.enabled = false; + EditorGUILayout.LabelField(" ", "No additional settings", EditorStyles.miniLabel); + GUI.enabled = true; + DrawRemainingPropertiesInInspector(); + } + } +} diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Editor/Editors/CinemachineHardLockToTargetEditor.cs.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Editor/Editors/CinemachineHardLockToTargetEditor.cs.meta" new file mode 100644 index 00000000..1959379f --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Editor/Editors/CinemachineHardLockToTargetEditor.cs.meta" @@ -0,0 +1,12 @@ +fileFormatVersion: 2 +guid: e44b92e217bfdf24d99acb4344918eeb +timeCreated: 1506541599 +licenseType: Pro +MonoImporter: + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Editor/Editors/CinemachineHardLookAtEditor.cs" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Editor/Editors/CinemachineHardLookAtEditor.cs" new file mode 100644 index 00000000..ed8a74b6 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Editor/Editors/CinemachineHardLookAtEditor.cs" @@ -0,0 +1,23 @@ +using UnityEditor; +using UnityEngine; + +namespace Cinemachine.Editor +{ + [CustomEditor(typeof(CinemachineHardLookAt))] + internal sealed class CinemachineHardLookAtEditor : BaseEditor + { + public override void OnInspectorGUI() + { + BeginInspector(); + if (Target.LookAtTarget == null) + EditorGUILayout.HelpBox( + "Hard Look At requires a LookAt target. Change Aim to Do Nothing if you don't want a LookAt target.", + MessageType.Warning); + EditorGUI.BeginChangeCheck(); + GUI.enabled = false; + EditorGUILayout.LabelField(" ", "No additional settings", EditorStyles.miniLabel); + GUI.enabled = true; + DrawRemainingPropertiesInInspector(); + } + } +} diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Editor/Editors/CinemachineHardLookAtEditor.cs.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Editor/Editors/CinemachineHardLookAtEditor.cs.meta" new file mode 100644 index 00000000..6f8815d7 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Editor/Editors/CinemachineHardLookAtEditor.cs.meta" @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 9ce16cd7e31794b48b2843381cd87d31 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Editor/Editors/CinemachineMixingCameraEditor.cs" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Editor/Editors/CinemachineMixingCameraEditor.cs" new file mode 100644 index 00000000..0f99c954 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Editor/Editors/CinemachineMixingCameraEditor.cs" @@ -0,0 +1,104 @@ +using UnityEditor; +using UnityEngine; +using Cinemachine.Utility; +using System.Collections.Generic; + +namespace Cinemachine.Editor +{ + [CustomEditor(typeof(CinemachineMixingCamera))] + internal sealed class CinemachineMixingCameraEditor + : CinemachineVirtualCameraBaseEditor + { + protected override List GetExcludedPropertiesInInspector() + { + List excluded = base.GetExcludedPropertiesInInspector(); + for (int i = 0; i < CinemachineMixingCamera.MaxCameras; ++i) + excluded.Add(WeightPropertyName(i)); + return excluded; + } + + static string WeightPropertyName(int i) { return "m_Weight" + i; } + + public override void OnInspectorGUI() + { + BeginInspector(); + DrawHeaderInInspector(); + DrawRemainingPropertiesInInspector(); + + float totalWeight = 0; + CinemachineVirtualCameraBase[] children = Target.ChildCameras; + int numCameras = Mathf.Min(CinemachineMixingCamera.MaxCameras, children.Length); + for (int i = 0; i < numCameras; ++i) + if (children[i].isActiveAndEnabled) + totalWeight += Target.GetWeight(i); + + if (numCameras == 0) + EditorGUILayout.HelpBox("There are no Virtual Camera children", MessageType.Warning); + else + { + EditorGUILayout.Separator(); + EditorGUILayout.LabelField("Child Camera Weights", EditorStyles.boldLabel); + for (int i = 0; i < numCameras; ++i) + { + SerializedProperty prop = serializedObject.FindProperty(WeightPropertyName(i)); + if (prop != null) + EditorGUILayout.PropertyField(prop, new GUIContent(children[i].Name)); + } + serializedObject.ApplyModifiedProperties(); + + if (totalWeight <= UnityVectorExtensions.Epsilon) + EditorGUILayout.HelpBox("No input channels are active", MessageType.Warning); + + if (children.Length > numCameras) + EditorGUILayout.HelpBox( + "There are " + children.Length + + " child cameras. A maximum of " + numCameras + " is supported.", + MessageType.Warning); + + // Camera proportion indicator + EditorGUILayout.Separator(); + EditorGUILayout.LabelField("Mix Result", EditorStyles.boldLabel); + DrawProportionIndicator(children, numCameras, totalWeight); + } + + // Extensions + DrawExtensionsWidgetInInspector(); + } + + void DrawProportionIndicator( + CinemachineVirtualCameraBase[] children, int numCameras, float totalWeight) + { + GUIStyle style = EditorStyles.centeredGreyMiniLabel; + Color bkg = new Color(0.27f, 0.27f, 0.27f); // ack! no better way than this? + Color fg = Color.Lerp(CinemachineBrain.GetSoloGUIColor(), bkg, 0.8f); + float totalHeight = (style.lineHeight + style.margin.vertical) * numCameras; + Rect r = EditorGUILayout.GetControlRect(true, totalHeight); + r.height /= numCameras; r.height -= 1; + float fullWidth = r.width; + for (int i = 0; i < numCameras; ++i) + { + float p = 0; + string label = children[i].Name; + if (totalWeight > UnityVectorExtensions.Epsilon) + { + if (children[i].isActiveAndEnabled) + p = Target.GetWeight(i) / totalWeight; + else + label += " (disabled)"; + } + r.width = fullWidth * p; + EditorGUI.DrawRect(r, fg); + + Rect r2 = r; + r2.x += r.width; + r2.width = fullWidth - r.width; + EditorGUI.DrawRect(r2, bkg); + + r.width = fullWidth; + EditorGUI.LabelField(r, label, style); + + r.y += r.height + 1; + } + } + } +} diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Editor/Editors/CinemachineMixingCameraEditor.cs.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Editor/Editors/CinemachineMixingCameraEditor.cs.meta" new file mode 100644 index 00000000..9088df25 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Editor/Editors/CinemachineMixingCameraEditor.cs.meta" @@ -0,0 +1,12 @@ +fileFormatVersion: 2 +guid: 8ad60cb17f7694c43a8190c617281753 +timeCreated: 1502201539 +licenseType: Pro +MonoImporter: + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Editor/Editors/CinemachineNoiseSettingsEditor.cs" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Editor/Editors/CinemachineNoiseSettingsEditor.cs" new file mode 100644 index 00000000..f8f8dcc7 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Editor/Editors/CinemachineNoiseSettingsEditor.cs" @@ -0,0 +1,361 @@ +using UnityEditor; +using UnityEngine; +using UnityEditorInternal; +using System.Collections.Generic; + +namespace Cinemachine.Editor +{ + [CustomEditor(typeof(NoiseSettings))] + internal sealed class NoiseSettingsEditor : BaseEditor + { + private const float vSpace = 2; + private const float hSpace = 3; + + // Needed for accessing string names of fields + #pragma warning disable 0649 // assigned but never used + private NoiseSettings.TransformNoiseParams tpDef; + private NoiseSettings.NoiseParams npDef; + + private static float mPreviewTime = 2; + private static float mPreviewHeight = 5; + private float mNoiseOffsetBase = 0; + private float mNoiseOffset = 0; + private bool mAnimatedPreview = false; + GUIContent mAnimatedLabel = new GUIContent("Animated", "Animate the noise signal preview"); + + + private ReorderableList[] mPosChannels; + private ReorderableList[] mRotChannels; + private static GUIContent[] mPoslabels = new GUIContent[] + { + new GUIContent("Position X"), + new GUIContent("Position Y"), + new GUIContent("Position Z") + }; + private static GUIContent[] mRotlabels = new GUIContent[] + { + new GUIContent("Rotation X"), + new GUIContent("Rotation Y"), + new GUIContent("Rotation Z") + }; + private static bool[] mPosExpanded = new bool[3]; + private static bool[] mRotExpanded = new bool[3]; + + private void OnEnable() + { + mNoiseOffsetBase = Time.realtimeSinceStartup; + mNoiseOffset = 0; + } + + protected override List GetExcludedPropertiesInInspector() + { + var excluded = base.GetExcludedPropertiesInInspector(); + excluded.Add(FieldPath(x => Target.PositionNoise)); + excluded.Add(FieldPath(x => Target.OrientationNoise)); + return excluded; + } + + public override void OnInspectorGUI() + { + if (mPosChannels == null) + mPosChannels = SetupReorderableLists( + serializedObject.FindProperty(() => Target.PositionNoise), mPoslabels); + if (mRotChannels == null) + mRotChannels = SetupReorderableLists( + serializedObject.FindProperty(() => Target.OrientationNoise), mRotlabels); + + BeginInspector(); + + Rect r = EditorGUILayout.GetControlRect(); + mPreviewTime = EditorGUI.Slider(r, "Preview Time", mPreviewTime, 0.01f, 10f); + r = EditorGUILayout.GetControlRect(); + float labelWidth = GUI.skin.label.CalcSize(mAnimatedLabel).x + EditorGUIUtility.singleLineHeight; + r.width -= labelWidth + hSpace; + mPreviewHeight = EditorGUI.Slider(r, "Preview Height", mPreviewHeight, 1f, 10f); + r.x += r.width + hSpace; r.width = labelWidth; + mAnimatedPreview = EditorGUI.ToggleLeft(r, mAnimatedLabel, mAnimatedPreview); + EditorGUILayout.Separator(); + + r = EditorGUILayout.GetControlRect(); + EditorGUI.LabelField(r, "Position Noise - amplitudes are in Distance units", EditorStyles.boldLabel); + r = EditorGUILayout.GetControlRect(true, mPreviewHeight * EditorGUIUtility.singleLineHeight); + if (Event.current.type == EventType.Repaint) + { + mSampleCachePos.SnapshotSample(r.size, Target.PositionNoise, mNoiseOffset, mAnimatedPreview); + mSampleCachePos.DrawSamplePreview(r, 7); + } + for (int i = 0; i < mPosChannels.Length; ++i) + { + r = EditorGUILayout.GetControlRect(); + mPosExpanded[i] = EditorGUI.Foldout(r, mPosExpanded[i], mPoslabels[i], true); + if (mPosExpanded[i]) + { + r = EditorGUILayout.GetControlRect(true, mPreviewHeight * EditorGUIUtility.singleLineHeight); + if (Event.current.type == EventType.Repaint) + mSampleCachePos.DrawSamplePreview(r, 1 << i); + mPosChannels[i].DoLayoutList(); + } + } + EditorGUILayout.Separator(); + + r = EditorGUILayout.GetControlRect(); + EditorGUI.LabelField(r, "Rotation Noise - amplitude units are degrees", EditorStyles.boldLabel); + r = EditorGUILayout.GetControlRect(true, mPreviewHeight * EditorGUIUtility.singleLineHeight); + if (Event.current.type == EventType.Repaint) + { + mSampleCacheRot.SnapshotSample(r.size, Target.OrientationNoise, mNoiseOffset, mAnimatedPreview); + mSampleCacheRot.DrawSamplePreview(r, 7); + } + for (int i = 0; i < mPosChannels.Length; ++i) + { + r = EditorGUILayout.GetControlRect(); + mRotExpanded[i] = EditorGUI.Foldout(r, mRotExpanded[i], mRotlabels[i], true); + if (mRotExpanded[i]) + { + r = EditorGUILayout.GetControlRect(true, mPreviewHeight * EditorGUIUtility.singleLineHeight); + if (Event.current.type == EventType.Repaint) + mSampleCacheRot.DrawSamplePreview(r, 1 << i); + mRotChannels[i].DoLayoutList(); + } + } + + serializedObject.ApplyModifiedProperties(); + + // Make it live! + if (mAnimatedPreview && Event.current.type == EventType.Repaint) + { + mNoiseOffset += Time.realtimeSinceStartup - mNoiseOffsetBase; + Repaint(); + } + mNoiseOffsetBase = Time.realtimeSinceStartup; + } + + class SampleCache + { + private List mSampleCurveX = new List(); + private List mSampleCurveY = new List(); + private List mSampleCurveZ = new List(); + private List mSampleNoise = new List(); + + public void SnapshotSample( + Vector2 areaSize, NoiseSettings.TransformNoiseParams[] signal, float noiseOffset, bool animated) + { + // These values give a smoother curve, more-or-less fitting in the window + int numSamples = Mathf.RoundToInt(areaSize.x); + if (animated) + numSamples *= 2; + const float signalScale = 0.75f; + + float maxVal = 0; + for (int i = 0; i < signal.Length; ++i) + { + maxVal = Mathf.Max(maxVal, Mathf.Abs(signal[i].X.Amplitude * signalScale)); + maxVal = Mathf.Max(maxVal, Mathf.Abs(signal[i].Y.Amplitude * signalScale)); + maxVal = Mathf.Max(maxVal, Mathf.Abs(signal[i].Z.Amplitude * signalScale)); + } + mSampleNoise.Clear(); + for (int i = 0; i < numSamples; ++i) + { + float t = (float)i / (numSamples - 1) * mPreviewTime + noiseOffset; + Vector3 p = NoiseSettings.GetCombinedFilterResults(signal, t, Vector3.zero); + mSampleNoise.Add(p); + } + mSampleCurveX.Clear(); + mSampleCurveY.Clear(); + mSampleCurveZ.Clear(); + float halfHeight = areaSize.y / 2; + float yOffset = halfHeight; + for (int i = 0; i < numSamples; ++i) + { + float t = (float)i / (numSamples - 1); + Vector3 p = mSampleNoise[i]; + mSampleCurveX.Add(new Vector3(areaSize.x * t, halfHeight * Mathf.Clamp(-p.x / maxVal, -1, 1) + yOffset, 0)); + mSampleCurveY.Add(new Vector3(areaSize.x * t, halfHeight * Mathf.Clamp(-p.y / maxVal, -1, 1) + yOffset, 0)); + mSampleCurveZ.Add(new Vector3(areaSize.x * t, halfHeight * Mathf.Clamp(-p.z / maxVal, -1, 1) + yOffset, 0)); + } + } + + public void DrawSamplePreview(Rect r, int channelMask) + { + EditorGUI.DrawRect(r, Color.black); + var oldMatrix = Handles.matrix; + Handles.matrix = Handles.matrix * Matrix4x4.Translate(r.position); + if ((channelMask & 1) != 0) + { + Handles.color = new Color(1, 0.5f, 0, 0.8f); + Handles.DrawPolyLine(mSampleCurveX.ToArray()); + } + if ((channelMask & 2) != 0) + { + Handles.color = new Color(0, 1, 0, 0.8f); + Handles.DrawPolyLine(mSampleCurveY.ToArray()); + } + if ((channelMask & 4) != 0) + { + Handles.color = new Color(0, 0.5f, 1, 0.8f); + Handles.DrawPolyLine(mSampleCurveZ.ToArray()); + } + Handles.color = Color.black; + Handles.DrawLine(new Vector3(1, 0, 0), new Vector3(r.width, 0, 0)); + Handles.DrawLine(new Vector3(0, r.height, 0), new Vector3(r.width, r.height, 0)); + Handles.matrix = oldMatrix; + } + } + SampleCache mSampleCachePos = new SampleCache(); + SampleCache mSampleCacheRot = new SampleCache(); + + private ReorderableList[] SetupReorderableLists( + SerializedProperty property, GUIContent[] titles) + { + ReorderableList[] lists = new ReorderableList[3]; + for (int i = 0; i < 3; ++i) + lists[i] = SetupReorderableList(property, i, new GUIContent("Components")); + return lists; + } + + private ReorderableList SetupReorderableList( + SerializedProperty property, int channel, GUIContent title) + { + ChannelList list = new ChannelList( + property.serializedObject, property, channel, title); + + list.drawHeaderCallback = (Rect rect) => + { + GUIContent steadyLabel = new GUIContent("(non-random wave if checked)"); + float steadyLabelWidth = GUI.skin.label.CalcSize(steadyLabel).x; + + Rect r = rect; + EditorGUI.LabelField(r, list.mTitle); + r.x = rect.x + rect.width - steadyLabelWidth; r.width = steadyLabelWidth; + EditorGUI.LabelField(r, steadyLabel); + }; + + list.drawElementCallback + = (Rect rect, int index, bool isActive, bool isFocused) => + { + SerializedProperty element = list.serializedProperty.GetArrayElementAtIndex(index); + switch (list.mChannel) + { + case 0: DrawNoiseChannel(rect, element.FindPropertyRelative(() => tpDef.X)); break; + case 1: DrawNoiseChannel(rect, element.FindPropertyRelative(() => tpDef.Y)); break; + case 2: DrawNoiseChannel(rect, element.FindPropertyRelative(() => tpDef.Z)); break; + default: break; + } + }; + + list.onAddCallback = (ReorderableList l) => + { + var index = l.serializedProperty.arraySize; + ++l.serializedProperty.arraySize; + SerializedProperty p = l.serializedProperty.GetArrayElementAtIndex(index); + ClearComponent(p.FindPropertyRelative(() => tpDef.X)); + ClearComponent(p.FindPropertyRelative(() => tpDef.Y)); + ClearComponent(p.FindPropertyRelative(() => tpDef.Z)); + }; + + list.onRemoveCallback = (ReorderableList l) => + { + // Can't just delete because the component arrays are connected + SerializedProperty p = l.serializedProperty.GetArrayElementAtIndex(l.index); + bool IsClear + = (list.mChannel == 0 || IsClearComponent(p.FindPropertyRelative(() => tpDef.X))) + && (list.mChannel == 1 || IsClearComponent(p.FindPropertyRelative(() => tpDef.Y))) + && (list.mChannel == 2 || IsClearComponent(p.FindPropertyRelative(() => tpDef.Z))); + if (IsClear) + l.serializedProperty.DeleteArrayElementAtIndex(l.index); + else switch (list.mChannel) + { + case 0: ClearComponent(p.FindPropertyRelative(() => tpDef.X)); break; + case 1: ClearComponent(p.FindPropertyRelative(() => tpDef.Y)); break; + case 2: ClearComponent(p.FindPropertyRelative(() => tpDef.Z)); break; + default: break; + } + }; + + return list; + } + + class ChannelList : ReorderableList + { + public int mChannel; + public GUIContent mTitle; + + public ChannelList( + SerializedObject serializedObject, + SerializedProperty elements, + int channel, GUIContent title) + : base(serializedObject, elements, true, true, true, true) + { + mChannel = channel; + mTitle = title; + } + }; + + private GUIContent steadyLabel; + private GUIContent freqLabel; + private float freqLabelWidth; + private GUIContent ampLabel; + private float ampLabelWidth; + + private void InitializeLabels(SerializedProperty property) + { + if (steadyLabel == null) + { + SerializedProperty p = property.FindPropertyRelative(() => npDef.Constant); + steadyLabel = new GUIContent(p.displayName, p.tooltip) { text = " " }; + } + if (freqLabel == null) + { + SerializedProperty p = property.FindPropertyRelative(() => npDef.Frequency); + freqLabel = new GUIContent(p.displayName, p.tooltip); + freqLabelWidth = GUI.skin.label.CalcSize(freqLabel).x; + } + if (ampLabel == null) + { + SerializedProperty p = property.FindPropertyRelative(() => npDef.Amplitude); + ampLabel = new GUIContent(p.displayName, p.tooltip); + ampLabelWidth = GUI.skin.label.CalcSize(ampLabel).x; + } + } + + private void DrawNoiseChannel(Rect rect, SerializedProperty property) + { + InitializeLabels(property); + + Rect r = rect; + r.height -= vSpace; + r.width -= EditorGUIUtility.singleLineHeight + hSpace; + r.width /= 2; + + float oldLabelWidth = EditorGUIUtility.labelWidth; + EditorGUIUtility.labelWidth = freqLabelWidth; + EditorGUI.PropertyField(r, property.FindPropertyRelative(() => npDef.Frequency), freqLabel); + + r.x += r.width + hSpace; + EditorGUIUtility.labelWidth = ampLabelWidth; + EditorGUI.PropertyField(r, property.FindPropertyRelative(() => npDef.Amplitude), ampLabel); + + r.y -= 1; + r.x += r.width + hSpace; r.width = EditorGUIUtility.singleLineHeight + hSpace; + EditorGUIUtility.labelWidth = hSpace; + EditorGUI.PropertyField(r, property.FindPropertyRelative(() => npDef.Constant), steadyLabel); + + EditorGUIUtility.labelWidth = oldLabelWidth; + } + + // SerializedProperty is a NoiseSettings.NoiseParam + void ClearComponent(SerializedProperty p) + { + p.FindPropertyRelative(() => npDef.Amplitude).floatValue = 0; + p.FindPropertyRelative(() => npDef.Frequency).floatValue = 0; + p.FindPropertyRelative(() => npDef.Constant).boolValue = false; + } + + // SerializedProperty is a NoiseSettings.NoiseParam + bool IsClearComponent(SerializedProperty p) + { + return p.FindPropertyRelative(() => npDef.Amplitude).floatValue == 0 + && p.FindPropertyRelative(() => npDef.Frequency).floatValue == 0; + } + } +} diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Editor/Editors/CinemachineNoiseSettingsEditor.cs.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Editor/Editors/CinemachineNoiseSettingsEditor.cs.meta" new file mode 100644 index 00000000..e517ee1d --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Editor/Editors/CinemachineNoiseSettingsEditor.cs.meta" @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 8000e8170b5e1374c9503b5255ccc7e8 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Editor/Editors/CinemachineOrbitalTransposerEditor.cs" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Editor/Editors/CinemachineOrbitalTransposerEditor.cs" new file mode 100644 index 00000000..bafbf773 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Editor/Editors/CinemachineOrbitalTransposerEditor.cs" @@ -0,0 +1,139 @@ +using UnityEngine; +using UnityEditor; +using System.Collections.Generic; + +namespace Cinemachine.Editor +{ + [CustomEditor(typeof(CinemachineOrbitalTransposer))] + internal class CinemachineOrbitalTransposerEditor : BaseEditor + { + protected override List GetExcludedPropertiesInInspector() + { + List excluded = base.GetExcludedPropertiesInInspector(); + if (Target.m_HeadingIsSlave) + { + excluded.Add(FieldPath(x => x.m_FollowOffset)); + excluded.Add(FieldPath(x => x.m_BindingMode)); + excluded.Add(FieldPath(x => x.m_Heading)); + excluded.Add(FieldPath(x => x.m_XAxis)); + excluded.Add(FieldPath(x => x.m_RecenterToTargetHeading)); + } + if (Target.HideOffsetInInspector) + excluded.Add(FieldPath(x => x.m_FollowOffset)); + + switch (Target.m_BindingMode) + { + default: + case CinemachineTransposer.BindingMode.LockToTarget: + if (Target.m_AngularDampingMode == CinemachineTransposer.AngularDampingMode.Euler) + excluded.Add(FieldPath(x => x.m_AngularDamping)); + else + { + excluded.Add(FieldPath(x => x.m_PitchDamping)); + excluded.Add(FieldPath(x => x.m_YawDamping)); + excluded.Add(FieldPath(x => x.m_RollDamping)); + } + break; + case CinemachineTransposer.BindingMode.LockToTargetNoRoll: + excluded.Add(FieldPath(x => x.m_RollDamping)); + excluded.Add(FieldPath(x => x.m_AngularDamping)); + excluded.Add(FieldPath(x => x.m_AngularDampingMode)); + break; + case CinemachineTransposer.BindingMode.LockToTargetWithWorldUp: + excluded.Add(FieldPath(x => x.m_PitchDamping)); + excluded.Add(FieldPath(x => x.m_RollDamping)); + excluded.Add(FieldPath(x => x.m_AngularDamping)); + excluded.Add(FieldPath(x => x.m_AngularDampingMode)); + break; + case CinemachineTransposer.BindingMode.LockToTargetOnAssign: + case CinemachineTransposer.BindingMode.WorldSpace: + excluded.Add(FieldPath(x => x.m_PitchDamping)); + excluded.Add(FieldPath(x => x.m_YawDamping)); + excluded.Add(FieldPath(x => x.m_RollDamping)); + excluded.Add(FieldPath(x => x.m_AngularDamping)); + excluded.Add(FieldPath(x => x.m_AngularDampingMode)); + break; + case CinemachineTransposer.BindingMode.SimpleFollowWithWorldUp: + excluded.Add(FieldPath(x => x.m_XDamping)); + excluded.Add(FieldPath(x => x.m_PitchDamping)); + excluded.Add(FieldPath(x => x.m_YawDamping)); + excluded.Add(FieldPath(x => x.m_RollDamping)); + excluded.Add(FieldPath(x => x.m_AngularDamping)); + excluded.Add(FieldPath(x => x.m_AngularDampingMode)); + excluded.Add(FieldPath(x => x.m_Heading)); + excluded.Add(FieldPath(x => x.m_RecenterToTargetHeading)); + break; + } + return excluded; + } + + public override void OnInspectorGUI() + { + BeginInspector(); + if (Target.FollowTarget == null) + EditorGUILayout.HelpBox( + "Orbital Transposer requires a Follow target.", + MessageType.Warning); + Target.m_XAxis.ValueRangeLocked + = (Target.m_BindingMode == CinemachineTransposer.BindingMode.SimpleFollowWithWorldUp); + DrawRemainingPropertiesInInspector(); + } + + /// Process a position drag from the user. + /// Called "magically" by the vcam editor, so don't change the signature. + private void OnVcamPositionDragged(Vector3 delta) + { + Undo.RegisterCompleteObjectUndo(Target, "Camera drag"); // GML do we need this? + Quaternion targetOrientation = Target.GetReferenceOrientation(Target.VcamState.ReferenceUp); + targetOrientation = targetOrientation * Quaternion.Euler(0, Target.m_Heading.m_Bias, 0); + Vector3 localOffset = Quaternion.Inverse(targetOrientation) * delta; + localOffset.x = 0; + FindProperty(x => x.m_FollowOffset).vector3Value += localOffset; + serializedObject.ApplyModifiedProperties(); + FindProperty(x => x.m_FollowOffset).vector3Value = Target.EffectiveOffset; + serializedObject.ApplyModifiedProperties(); + } + + [DrawGizmo(GizmoType.Active | GizmoType.Selected, typeof(CinemachineOrbitalTransposer))] + static void DrawTransposerGizmos(CinemachineOrbitalTransposer target, GizmoType selectionType) + { + if (target.IsValid && !target.HideOffsetInInspector) + { + Color originalGizmoColour = Gizmos.color; + Gizmos.color = CinemachineCore.Instance.IsLive(target.VirtualCamera) + ? CinemachineSettings.CinemachineCoreSettings.ActiveGizmoColour + : CinemachineSettings.CinemachineCoreSettings.InactiveGizmoColour; + + Vector3 up = Vector3.up; + CinemachineBrain brain = CinemachineCore.Instance.FindPotentialTargetBrain(target.VirtualCamera); + if (brain != null) + up = brain.DefaultWorldUp; + Vector3 pos = target.FollowTargetPosition; + + Quaternion orient = target.GetReferenceOrientation(up); + up = orient * Vector3.up; + DrawCircleAtPointWithRadius + (pos + up * target.m_FollowOffset.y, orient, target.m_FollowOffset.z); + + Gizmos.color = originalGizmoColour; + } + } + + public static void DrawCircleAtPointWithRadius(Vector3 point, Quaternion orient, float radius) + { + Matrix4x4 prevMatrix = Gizmos.matrix; + Gizmos.matrix = Matrix4x4.TRS(point, orient, radius * Vector3.one); + + const int kNumPoints = 25; + Vector3 currPoint = Vector3.forward; + Quaternion rot = Quaternion.AngleAxis(360f / (float)kNumPoints, Vector3.up); + for (int i = 0; i < kNumPoints + 1; ++i) + { + Vector3 nextPoint = rot * currPoint; + Gizmos.DrawLine(currPoint, nextPoint); + currPoint = nextPoint; + } + Gizmos.matrix = prevMatrix; + } + } +} diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Editor/Editors/CinemachineOrbitalTransposerEditor.cs.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Editor/Editors/CinemachineOrbitalTransposerEditor.cs.meta" new file mode 100644 index 00000000..6a290db6 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Editor/Editors/CinemachineOrbitalTransposerEditor.cs.meta" @@ -0,0 +1,12 @@ +fileFormatVersion: 2 +guid: 247be52eadac5044e9f8b7b4d8d0ada9 +timeCreated: 1485443456 +licenseType: Pro +MonoImporter: + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Editor/Editors/CinemachinePOVEditor.cs" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Editor/Editors/CinemachinePOVEditor.cs" new file mode 100644 index 00000000..3e07b54b --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Editor/Editors/CinemachinePOVEditor.cs" @@ -0,0 +1,9 @@ +using UnityEditor; + +namespace Cinemachine.Editor +{ + [CustomEditor(typeof(CinemachinePOV))] + internal sealed class CinemachinePOVEditor : BaseEditor + { + } +} diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Editor/Editors/CinemachinePOVEditor.cs.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Editor/Editors/CinemachinePOVEditor.cs.meta" new file mode 100644 index 00000000..f41dbc8b --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Editor/Editors/CinemachinePOVEditor.cs.meta" @@ -0,0 +1,12 @@ +fileFormatVersion: 2 +guid: 1186b8795dc3fc84e8ec53bd314d8e91 +timeCreated: 1504801965 +licenseType: Pro +MonoImporter: + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Editor/Editors/CinemachinePathEditor.cs" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Editor/Editors/CinemachinePathEditor.cs" new file mode 100644 index 00000000..b5846b3c --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Editor/Editors/CinemachinePathEditor.cs" @@ -0,0 +1,396 @@ +using UnityEditor; +using UnityEngine; +using System.Collections.Generic; +using UnityEditorInternal; +using Cinemachine.Utility; + +namespace Cinemachine.Editor +{ + [CustomEditor(typeof(CinemachinePath))] + internal sealed class CinemachinePathEditor : BaseEditor + { + private ReorderableList mWaypointList; + static bool mWaypointsExpanded; + static bool mPreferHandleSelection = true; + + protected override List GetExcludedPropertiesInInspector() + { + List excluded = base.GetExcludedPropertiesInInspector(); + excluded.Add(FieldPath(x => x.m_Waypoints)); + return excluded; + } + + void OnEnable() + { + mWaypointList = null; + } + + public override void OnInspectorGUI() + { + BeginInspector(); + if (mWaypointList == null) + SetupWaypointList(); + if (mWaypointList.index >= mWaypointList.count) + mWaypointList.index = mWaypointList.count - 1; + + // Ordinary properties + DrawRemainingPropertiesInInspector(); + + // Path length + EditorGUILayout.LabelField("Path Length", Target.PathLength.ToString()); + + GUILayout.Label(new GUIContent("Selected Waypoint:")); + EditorGUILayout.BeginVertical(GUI.skin.box); + Rect rect = EditorGUILayout.GetControlRect(true, EditorGUIUtility.singleLineHeight * 3 + 10); + if (mWaypointList.index >= 0) + { + DrawWaypointEditor(rect, mWaypointList.index); + serializedObject.ApplyModifiedProperties(); + } + else + { + if (Target.m_Waypoints.Length > 0) + { + EditorGUI.HelpBox(rect, + "Click on a waypoint in the scene view\nor in the Path Details list", + MessageType.Info); + } + else if (GUI.Button(rect, new GUIContent("Add a waypoint to the path"))) + { + InsertWaypointAtIndex(mWaypointList.index); + mWaypointList.index = 0; + } + } + EditorGUILayout.EndVertical(); + + mPreferHandleSelection = EditorGUILayout.Toggle( + new GUIContent("Prefer Tangent Drag", + "When editing the path, if waypoint position and tangent coincide, dragging will apply preferentially to the tangent"), + mPreferHandleSelection); + + mWaypointsExpanded = EditorGUILayout.Foldout(mWaypointsExpanded, "Path Details", true); + if (mWaypointsExpanded) + { + EditorGUI.BeginChangeCheck(); + mWaypointList.DoLayoutList(); + if (EditorGUI.EndChangeCheck()) + serializedObject.ApplyModifiedProperties(); + } + } + + void SetupWaypointList() + { + mWaypointList = new ReorderableList( + serializedObject, FindProperty(x => x.m_Waypoints), + true, true, true, true); + mWaypointList.elementHeight *= 3; + + mWaypointList.drawHeaderCallback = (Rect rect) => + { + EditorGUI.LabelField(rect, "Waypoints"); + }; + + mWaypointList.drawElementCallback + = (Rect rect, int index, bool isActive, bool isFocused) => + { + DrawWaypointEditor(rect, index); + }; + + mWaypointList.onAddCallback = (ReorderableList l) => + { + InsertWaypointAtIndex(l.index); + }; + } + + void DrawWaypointEditor(Rect rect, int index) + { + // Needed for accessing string names of fields + CinemachinePath.Waypoint def = new CinemachinePath.Waypoint(); + + Vector2 numberDimension = GUI.skin.button.CalcSize(new GUIContent("999")); + Vector2 labelDimension = GUI.skin.label.CalcSize(new GUIContent("Position")); + Vector2 addButtonDimension = new Vector2(labelDimension.y + 5, labelDimension.y + 1); + float vSpace = 2; + float hSpace = 3; + + SerializedProperty element = mWaypointList.serializedProperty.GetArrayElementAtIndex(index); + rect.y += vSpace / 2; + + Rect r = new Rect(rect.position, numberDimension); + Color color = GUI.color; + // GUI.color = Target.m_Appearance.pathColor; + if (GUI.Button(r, new GUIContent(index.ToString(), "Go to the waypoint in the scene view"))) + { + if (SceneView.lastActiveSceneView != null) + { + mWaypointList.index = index; + SceneView.lastActiveSceneView.pivot = Target.EvaluatePosition(index); + SceneView.lastActiveSceneView.size = 3; + SceneView.lastActiveSceneView.Repaint(); + } + } + GUI.color = color; + + r = new Rect(rect.position, labelDimension); + r.x += hSpace + numberDimension.x; + EditorGUI.LabelField(r, "Position"); + r.x += hSpace + r.width; + r.width = rect.width - (numberDimension.x + hSpace + r.width + hSpace + addButtonDimension.x + hSpace); + EditorGUI.PropertyField(r, element.FindPropertyRelative(() => def.position), GUIContent.none); + r.x += r.width + hSpace; + r.size = addButtonDimension; + GUIContent buttonContent = EditorGUIUtility.IconContent("d_RectTransform Icon"); + buttonContent.tooltip = "Set to scene-view camera position"; + GUIStyle style = new GUIStyle(GUI.skin.label); + style.alignment = TextAnchor.MiddleCenter; + if (GUI.Button(r, buttonContent, style) && SceneView.lastActiveSceneView != null) + { + Undo.RecordObject(Target, "Set waypoint"); + CinemachinePath.Waypoint wp = Target.m_Waypoints[index]; + Vector3 pos = SceneView.lastActiveSceneView.camera.transform.position; + wp.position = Target.transform.InverseTransformPoint(pos); + Target.m_Waypoints[index] = wp; + } + + r = new Rect(rect.position, labelDimension); + r.y += numberDimension.y + vSpace; + r.x += hSpace + numberDimension.x; r.width = labelDimension.x; + EditorGUI.LabelField(r, "Tangent"); + r.x += hSpace + r.width; + r.width = rect.width - (numberDimension.x + hSpace + r.width + hSpace + addButtonDimension.x + hSpace); + EditorGUI.PropertyField(r, element.FindPropertyRelative(() => def.tangent), GUIContent.none); + r.x += r.width + hSpace; + r.size = addButtonDimension; + buttonContent = EditorGUIUtility.IconContent("ol minus@2x"); + buttonContent.tooltip = "Remove this waypoint"; + if (GUI.Button(r, buttonContent, style)) + { + Undo.RecordObject(Target, "Delete waypoint"); + var list = new List(Target.m_Waypoints); + list.RemoveAt(index); + Target.m_Waypoints = list.ToArray(); + if (index == Target.m_Waypoints.Length) + mWaypointList.index = index - 1; + } + + r = new Rect(rect.position, labelDimension); + r.y += 2 * (numberDimension.y + vSpace); + r.x += hSpace + numberDimension.x; r.width = labelDimension.x; + EditorGUI.LabelField(r, "Roll"); + r.x += hSpace + labelDimension.x; + r.width = rect.width + - (numberDimension.x + hSpace) + - (labelDimension.x + hSpace) + - (addButtonDimension.x + hSpace); + r.width /= 3; + EditorGUI.MultiPropertyField(r, new GUIContent[] { new GUIContent(" ") }, + element.FindPropertyRelative(() => def.roll)); + + r.x = rect.x + rect.width - addButtonDimension.x; + r.size = addButtonDimension; + buttonContent = EditorGUIUtility.IconContent("ol plus@2x"); + buttonContent.tooltip = "Add a new waypoint after this one"; + if (GUI.Button(r, buttonContent, style)) + { + mWaypointList.index = index; + InsertWaypointAtIndex(index); + } + } + + void InsertWaypointAtIndex(int indexA) + { + Vector3 pos = Vector3.forward; + Vector3 tangent = Vector3.right; + float roll = 0; + + // Get new values from the current indexA (if any) + int numWaypoints = Target.m_Waypoints.Length; + if (indexA < 0) + indexA = numWaypoints - 1; + if (indexA >= 0) + { + int indexB = indexA + 1; + if (Target.m_Looped && indexB >= numWaypoints) + indexB = 0; + if (indexB >= numWaypoints) + { + // Extrapolate the end + if (!Target.m_Waypoints[indexA].tangent.AlmostZero()) + tangent = Target.m_Waypoints[indexA].tangent; + pos = Target.m_Waypoints[indexA].position + tangent; + roll = Target.m_Waypoints[indexA].roll; + } + else + { + // Interpolate + pos = Target.transform.InverseTransformPoint( + Target.EvaluatePosition(0.5f + indexA)); + tangent = Target.transform.InverseTransformDirection( + Target.EvaluateTangent(0.5f + indexA).normalized); + roll = Mathf.Lerp( + Target.m_Waypoints[indexA].roll, Target.m_Waypoints[indexB].roll, 0.5f); + } + } + Undo.RecordObject(Target, "Add waypoint"); + var wp = new CinemachinePath.Waypoint(); + wp.position = pos; + wp.tangent = tangent; + wp.roll = roll; + var list = new List(Target.m_Waypoints); + list.Insert(indexA + 1, wp); + Target.m_Waypoints = list.ToArray(); + Target.InvalidateDistanceCache(); + mWaypointList.index = indexA + 1; // select it + } + + void OnSceneGUI() + { + if (mWaypointList == null) + SetupWaypointList(); + + if (Tools.current == Tool.Move) + { + Color colorOld = Handles.color; + var localToWorld = Target.transform.localToWorldMatrix; + var localRotation = Target.transform.rotation; + for (int i = 0; i < Target.m_Waypoints.Length; ++i) + { + DrawSelectionHandle(i, localToWorld); + if (mWaypointList.index == i) + { + // Waypoint is selected + if (mPreferHandleSelection) + { + DrawPositionControl(i, localToWorld, localRotation); + DrawTangentControl(i, localToWorld, localRotation); + } + else + { + DrawTangentControl(i, localToWorld, localRotation); + DrawPositionControl(i, localToWorld, localRotation); + } + } + } + Handles.color = colorOld; + } + } + + void DrawSelectionHandle(int i, Matrix4x4 localToWorld) + { + if (Event.current.button != 1) + { + Vector3 pos = localToWorld.MultiplyPoint(Target.m_Waypoints[i].position); + float size = HandleUtility.GetHandleSize(pos) * 0.2f; + Handles.color = Color.white; + if (Handles.Button(pos, Quaternion.identity, size, size, Handles.SphereHandleCap) + && mWaypointList.index != i) + { + mWaypointList.index = i; + InternalEditorUtility.RepaintAllViews(); + } + // Label it + Handles.BeginGUI(); + Vector2 labelSize = new Vector2( + EditorGUIUtility.singleLineHeight * 2, EditorGUIUtility.singleLineHeight); + Vector2 labelPos = HandleUtility.WorldToGUIPoint(pos); + labelPos.y -= labelSize.y / 2; + labelPos.x -= labelSize.x / 2; + GUILayout.BeginArea(new Rect(labelPos, labelSize)); + GUIStyle style = new GUIStyle(); + style.normal.textColor = Color.black; + style.alignment = TextAnchor.MiddleCenter; + GUILayout.Label(new GUIContent(i.ToString(), "Waypoint " + i), style); + GUILayout.EndArea(); + Handles.EndGUI(); + } + } + + void DrawTangentControl(int i, Matrix4x4 localToWorld, Quaternion localRotation) + { + CinemachinePath.Waypoint wp = Target.m_Waypoints[i]; + Vector3 hPos = localToWorld.MultiplyPoint(wp.position + wp.tangent); + + Handles.color = Color.yellow; + Handles.DrawLine(localToWorld.MultiplyPoint(wp.position), hPos); + + EditorGUI.BeginChangeCheck(); + Quaternion rotation = (Tools.pivotRotation == PivotRotation.Local) + ? localRotation : Quaternion.identity; + float size = HandleUtility.GetHandleSize(hPos) * 0.1f; + Handles.SphereHandleCap(0, hPos, rotation, size, EventType.Repaint); + Vector3 newPos = Handles.PositionHandle(hPos, rotation); + if (EditorGUI.EndChangeCheck()) + { + Undo.RecordObject(target, "Change Waypoint Tangent"); + newPos = Matrix4x4.Inverse(localToWorld).MultiplyPoint(newPos); + wp.tangent = newPos - wp.position; + Target.m_Waypoints[i] = wp; + Target.InvalidateDistanceCache(); + UnityEditorInternal.InternalEditorUtility.RepaintAllViews(); + } + } + + void DrawPositionControl(int i, Matrix4x4 localToWorld, Quaternion localRotation) + { + CinemachinePath.Waypoint wp = Target.m_Waypoints[i]; + Vector3 pos = localToWorld.MultiplyPoint(wp.position); + EditorGUI.BeginChangeCheck(); + Handles.color = Target.m_Appearance.pathColor; + Quaternion rotation = (Tools.pivotRotation == PivotRotation.Local) + ? localRotation : Quaternion.identity; + float size = HandleUtility.GetHandleSize(pos) * 0.1f; + Handles.SphereHandleCap(0, pos, rotation, size, EventType.Repaint); + pos = Handles.PositionHandle(pos, rotation); + if (EditorGUI.EndChangeCheck()) + { + Undo.RecordObject(target, "Move Waypoint"); + wp.position = Matrix4x4.Inverse(localToWorld).MultiplyPoint(pos);; + Target.m_Waypoints[i] = wp; + Target.InvalidateDistanceCache(); + UnityEditorInternal.InternalEditorUtility.RepaintAllViews(); + } + } + + public static void DrawPathGizmo(CinemachinePathBase path, Color pathColor) + { + // Draw the path + Color colorOld = Gizmos.color; + Gizmos.color = pathColor; + float step = 1f / path.m_Resolution; + Vector3 lastPos = path.EvaluatePosition(path.MinPos); + Vector3 lastW = (path.EvaluateOrientation(path.MinPos) + * Vector3.right) * path.m_Appearance.width / 2; + for (float t = path.MinPos + step; t <= path.MaxPos + step / 2; t += step) + { + Vector3 p = path.EvaluatePosition(t); + Quaternion q = path.EvaluateOrientation(t); + Vector3 w = (q * Vector3.right) * path.m_Appearance.width / 2; + Vector3 w2 = w * 1.2f; + Vector3 p0 = p - w2; + Vector3 p1 = p + w2; + Gizmos.DrawLine(p0, p1); + Gizmos.DrawLine(lastPos - lastW, p - w); + Gizmos.DrawLine(lastPos + lastW, p + w); +#if false + // Show the normals, for debugging + Gizmos.color = Color.red; + Vector3 y = (q * Vector3.up) * path.m_Appearance.width / 2; + Gizmos.DrawLine(p, p + y); + Gizmos.color = pathColor; +#endif + lastPos = p; + lastW = w; + } + Gizmos.color = colorOld; + } + + [DrawGizmo(GizmoType.Active | GizmoType.NotInSelectionHierarchy + | GizmoType.InSelectionHierarchy | GizmoType.Pickable, typeof(CinemachinePath))] + static void DrawGizmos(CinemachinePath path, GizmoType selectionType) + { + DrawPathGizmo(path, + (Selection.activeGameObject == path.gameObject) + ? path.m_Appearance.pathColor : path.m_Appearance.inactivePathColor); + } + } +} diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Editor/Editors/CinemachinePathEditor.cs.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Editor/Editors/CinemachinePathEditor.cs.meta" new file mode 100644 index 00000000..2de29b1a --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Editor/Editors/CinemachinePathEditor.cs.meta" @@ -0,0 +1,12 @@ +fileFormatVersion: 2 +guid: c88d2a04cc828c044b0fcc133fd481e6 +timeCreated: 1493316676 +licenseType: Pro +MonoImporter: + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Editor/Editors/CinemachineSameAsFollowTargetEditor.cs" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Editor/Editors/CinemachineSameAsFollowTargetEditor.cs" new file mode 100644 index 00000000..6e05a050 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Editor/Editors/CinemachineSameAsFollowTargetEditor.cs" @@ -0,0 +1,23 @@ +using UnityEditor; +using UnityEngine; + +namespace Cinemachine.Editor +{ + [CustomEditor(typeof(CinemachineSameAsFollowTarget))] + internal sealed class CinemachineSameAsFollowTargetEditor : BaseEditor + { + public override void OnInspectorGUI() + { + BeginInspector(); + if (Target.FollowTarget == null) + EditorGUILayout.HelpBox( + "Same As Follow Target requires a Follow target. It will set the virtual camera's rotation to be the same as that of the Follow Target.", + MessageType.Warning); + EditorGUI.BeginChangeCheck(); + GUI.enabled = false; + EditorGUILayout.LabelField(" ", "No additional settings", EditorStyles.miniLabel); + GUI.enabled = true; + DrawRemainingPropertiesInInspector(); + } + } +} diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Editor/Editors/CinemachineSameAsFollowTargetEditor.cs.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Editor/Editors/CinemachineSameAsFollowTargetEditor.cs.meta" new file mode 100644 index 00000000..5def8f47 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Editor/Editors/CinemachineSameAsFollowTargetEditor.cs.meta" @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: fc54afb14b6b01a4dabc4c8831cb7bf7 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Editor/Editors/CinemachineScreenComposerGuides.cs" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Editor/Editors/CinemachineScreenComposerGuides.cs" new file mode 100644 index 00000000..bcb70ec0 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Editor/Editors/CinemachineScreenComposerGuides.cs" @@ -0,0 +1,195 @@ +using UnityEngine; +using UnityEditor; +using Cinemachine.Utility; + +namespace Cinemachine.Editor +{ + public class CinemachineScreenComposerGuides + { + public delegate Rect RectGetter(); + public delegate void RectSetter(Rect r); + public delegate SerializedObject ObjectGetter(); + + // Clients MUST implement all of these + public RectGetter GetHardGuide; + public RectGetter GetSoftGuide; + public RectSetter SetHardGuide; + public RectSetter SetSoftGuide; + public ObjectGetter Target; + + public const float kGuideBarWidthPx = 3f; + + public void SetNewBounds(Rect oldHard, Rect oldSoft, Rect newHard, Rect newSoft) + { + if ((oldSoft != newSoft) || (oldHard != newHard)) + { + Undo.RecordObject(Target().targetObject, "Composer Bounds"); + if (oldSoft != newSoft) + SetSoftGuide(newSoft); + if (oldHard != newHard) + SetHardGuide(newHard); + Target().ApplyModifiedProperties(); + } + } + + public void OnGUI_DrawGuides(bool isLive, Camera outputCamera, LensSettings lens, bool showHardGuides) + { + Rect gateRect = outputCamera.pixelRect; + Rect cameraRect = gateRect; + float screenWidth = cameraRect.width; + float screenHeight = screenWidth / lens.Aspect; + cameraRect.yMax = Screen.height - gateRect.yMin; + cameraRect.yMin = cameraRect.yMax - gateRect.height; + + // Shift the guides along with the lens + cameraRect.position += new Vector2( + -screenWidth * lens.LensShift.x, screenHeight * lens.LensShift.y); + + // Rotate the guides along with the dutch + Matrix4x4 oldMatrix = GUI.matrix; + GUI.matrix = Matrix4x4.Translate(cameraRect.min); + GUIUtility.RotateAroundPivot(lens.Dutch, cameraRect.center); + Color hardBarsColour = CinemachineSettings.ComposerSettings.HardBoundsOverlayColour; + Color softBarsColour = CinemachineSettings.ComposerSettings.SoftBoundsOverlayColour; + float overlayOpacity = CinemachineSettings.ComposerSettings.OverlayOpacity; + if (!isLive) + { + softBarsColour = CinemachineSettings.CinemachineCoreSettings.InactiveGizmoColour; + hardBarsColour = Color.Lerp(softBarsColour, Color.black, 0.5f); + overlayOpacity /= 2; + } + hardBarsColour.a *= overlayOpacity; + softBarsColour.a *= overlayOpacity; + + Rect r = showHardGuides ? GetHardGuide() : new Rect(-2, -2, 4, 4); + float hardEdgeLeft = r.xMin * screenWidth; + float hardEdgeTop = r.yMin * screenHeight; + float hardEdgeRight = r.xMax * screenWidth; + float hardEdgeBottom = r.yMax * screenHeight; + + mDragBars[(int)DragBar.HardBarLineLeft] = new Rect(hardEdgeLeft - kGuideBarWidthPx / 2f, 0f, kGuideBarWidthPx, screenHeight); + mDragBars[(int)DragBar.HardBarLineTop] = new Rect(0f, hardEdgeTop - kGuideBarWidthPx / 2f, screenWidth, kGuideBarWidthPx); + mDragBars[(int)DragBar.HardBarLineRight] = new Rect(hardEdgeRight - kGuideBarWidthPx / 2f, 0f, kGuideBarWidthPx, screenHeight); + mDragBars[(int)DragBar.HardBarLineBottom] = new Rect(0f, hardEdgeBottom - kGuideBarWidthPx / 2f, screenWidth, kGuideBarWidthPx); + + r = GetSoftGuide(); + float softEdgeLeft = r.xMin * screenWidth; + float softEdgeTop = r.yMin * screenHeight; + float softEdgeRight = r.xMax * screenWidth; + float softEdgeBottom = r.yMax * screenHeight; + + mDragBars[(int)DragBar.SoftBarLineLeft] = new Rect(softEdgeLeft - kGuideBarWidthPx / 2f, 0f, kGuideBarWidthPx, screenHeight); + mDragBars[(int)DragBar.SoftBarLineTop] = new Rect(0f, softEdgeTop - kGuideBarWidthPx / 2f, screenWidth, kGuideBarWidthPx); + mDragBars[(int)DragBar.SoftBarLineRight] = new Rect(softEdgeRight - kGuideBarWidthPx / 2f, 0f, kGuideBarWidthPx, screenHeight); + mDragBars[(int)DragBar.SoftBarLineBottom] = new Rect(0f, softEdgeBottom - kGuideBarWidthPx / 2f, screenWidth, kGuideBarWidthPx); + + mDragBars[(int)DragBar.Center] = new Rect(softEdgeLeft, softEdgeTop, softEdgeRight - softEdgeLeft, softEdgeBottom - softEdgeTop); + + // Handle dragging bars + if (isLive) + OnGuiHandleBarDragging(screenWidth, screenHeight); + + // Draw the masks + GUI.color = hardBarsColour; + Rect hardBarLeft = new Rect(0, hardEdgeTop, Mathf.Max(0, hardEdgeLeft), hardEdgeBottom - hardEdgeTop); + Rect hardBarRight = new Rect(hardEdgeRight, hardEdgeTop, + Mathf.Max(0, screenWidth - hardEdgeRight), hardEdgeBottom - hardEdgeTop); + Rect hardBarTop = new Rect(Mathf.Min(0, hardEdgeLeft), 0, + Mathf.Max(screenWidth, hardEdgeRight) - Mathf.Min(0, hardEdgeLeft), Mathf.Max(0, hardEdgeTop)); + Rect hardBarBottom = new Rect(Mathf.Min(0, hardEdgeLeft), hardEdgeBottom, + Mathf.Max(screenWidth, hardEdgeRight) - Mathf.Min(0, hardEdgeLeft), + Mathf.Max(0, screenHeight - hardEdgeBottom)); + GUI.DrawTexture(hardBarLeft, Texture2D.whiteTexture, ScaleMode.StretchToFill); + GUI.DrawTexture(hardBarTop, Texture2D.whiteTexture, ScaleMode.StretchToFill); + GUI.DrawTexture(hardBarRight, Texture2D.whiteTexture, ScaleMode.StretchToFill); + GUI.DrawTexture(hardBarBottom, Texture2D.whiteTexture, ScaleMode.StretchToFill); + + GUI.color = softBarsColour; + Rect softBarLeft = new Rect(hardEdgeLeft, softEdgeTop, softEdgeLeft - hardEdgeLeft, softEdgeBottom - softEdgeTop); + Rect softBarTop = new Rect(hardEdgeLeft, hardEdgeTop, hardEdgeRight - hardEdgeLeft, softEdgeTop - hardEdgeTop); + Rect softBarRight = new Rect(softEdgeRight, softEdgeTop, hardEdgeRight - softEdgeRight, softEdgeBottom - softEdgeTop); + Rect softBarBottom = new Rect(hardEdgeLeft, softEdgeBottom, hardEdgeRight - hardEdgeLeft, hardEdgeBottom - softEdgeBottom); + GUI.DrawTexture(softBarLeft, Texture2D.whiteTexture, ScaleMode.StretchToFill); + GUI.DrawTexture(softBarTop, Texture2D.whiteTexture, ScaleMode.StretchToFill); + GUI.DrawTexture(softBarRight, Texture2D.whiteTexture, ScaleMode.StretchToFill); + GUI.DrawTexture(softBarBottom, Texture2D.whiteTexture, ScaleMode.StretchToFill); + + // Draw the drag bars + GUI.DrawTexture(mDragBars[(int)DragBar.SoftBarLineLeft], Texture2D.whiteTexture, ScaleMode.StretchToFill); + GUI.DrawTexture(mDragBars[(int)DragBar.SoftBarLineTop], Texture2D.whiteTexture, ScaleMode.StretchToFill); + GUI.DrawTexture(mDragBars[(int)DragBar.SoftBarLineRight], Texture2D.whiteTexture, ScaleMode.StretchToFill); + GUI.DrawTexture(mDragBars[(int)DragBar.SoftBarLineBottom], Texture2D.whiteTexture, ScaleMode.StretchToFill); + + GUI.color = hardBarsColour; + GUI.DrawTexture(mDragBars[(int)DragBar.HardBarLineLeft], Texture2D.whiteTexture, ScaleMode.StretchToFill); + GUI.DrawTexture(mDragBars[(int)DragBar.HardBarLineTop], Texture2D.whiteTexture, ScaleMode.StretchToFill); + GUI.DrawTexture(mDragBars[(int)DragBar.HardBarLineRight], Texture2D.whiteTexture, ScaleMode.StretchToFill); + GUI.DrawTexture(mDragBars[(int)DragBar.HardBarLineBottom], Texture2D.whiteTexture, ScaleMode.StretchToFill); + + GUI.matrix = oldMatrix; + } + + // For dragging the bars - order defines precedence + private enum DragBar + { + Center, + SoftBarLineLeft, SoftBarLineTop, SoftBarLineRight, SoftBarLineBottom, + HardBarLineLeft, HardBarLineTop, HardBarLineRight, HardBarLineBottom, + NONE + }; + private DragBar mDragging = DragBar.NONE; + private Rect[] mDragBars = new Rect[9]; + + private void OnGuiHandleBarDragging(float screenWidth, float screenHeight) + { + if (Event.current.type == EventType.MouseUp) + mDragging = DragBar.NONE; + if (Event.current.type == EventType.MouseDown) + { + mDragging = DragBar.NONE; + for (DragBar i = DragBar.Center; i < DragBar.NONE && mDragging == DragBar.NONE; ++i) + { + Vector2 slop = new Vector2(5f, 5f); + if (i == DragBar.Center) + { + if (mDragBars[(int)i].width > 3f * slop.x) + slop.x = -slop.x; + if (mDragBars[(int)i].height > 3f * slop.y) + slop.y = -slop.y; + } + Rect r = mDragBars[(int)i].Inflated(slop); + if (r.Contains(Event.current.mousePosition)) + mDragging = i; + } + } + + if (mDragging != DragBar.NONE && Event.current.type == EventType.MouseDrag) + { + Vector2 d = new Vector2( + Event.current.delta.x / screenWidth, + Event.current.delta.y / screenHeight); + + // First snapshot some settings + Rect newHard = GetHardGuide(); + Rect newSoft = GetSoftGuide(); + Vector2 changed = Vector2.zero; + switch (mDragging) + { + case DragBar.Center: newSoft.position += d; break; + case DragBar.SoftBarLineLeft: newSoft = newSoft.Inflated(new Vector2(-d.x, 0)); break; + case DragBar.SoftBarLineRight: newSoft = newSoft.Inflated(new Vector2(d.x, 0)); break; + case DragBar.SoftBarLineTop: newSoft = newSoft.Inflated(new Vector2(0, -d.y)); break; + case DragBar.SoftBarLineBottom: newSoft = newSoft.Inflated(new Vector2(0, d.y)); break; + case DragBar.HardBarLineLeft: newHard = newHard.Inflated(new Vector2(-d.x, 0)); break; + case DragBar.HardBarLineRight: newHard = newHard.Inflated(new Vector2(d.x, 0)); break; + case DragBar.HardBarLineBottom: newHard = newHard.Inflated(new Vector2(0, d.y)); break; + case DragBar.HardBarLineTop: newHard = newHard.Inflated(new Vector2(0, -d.y)); break; + } + + // Apply the changes, enforcing the bounds + SetNewBounds(GetHardGuide(), GetSoftGuide(), newHard, newSoft); + UnityEditorInternal.InternalEditorUtility.RepaintAllViews(); + } + } + } +} diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Editor/Editors/CinemachineScreenComposerGuides.cs.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Editor/Editors/CinemachineScreenComposerGuides.cs.meta" new file mode 100644 index 00000000..dedaa030 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Editor/Editors/CinemachineScreenComposerGuides.cs.meta" @@ -0,0 +1,12 @@ +fileFormatVersion: 2 +guid: 2a15a1e455bcc7543872f50762449739 +timeCreated: 1502028239 +licenseType: Pro +MonoImporter: + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Editor/Editors/CinemachineSmoothPathEditor.cs" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Editor/Editors/CinemachineSmoothPathEditor.cs" new file mode 100644 index 00000000..69f0f74b --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Editor/Editors/CinemachineSmoothPathEditor.cs" @@ -0,0 +1,231 @@ +using UnityEditor; +using UnityEngine; +using System.Collections.Generic; +using UnityEditorInternal; + +namespace Cinemachine.Editor +{ + [CustomEditor(typeof(CinemachineSmoothPath))] + internal sealed class CinemachineSmoothPathEditor : BaseEditor + { + private ReorderableList mWaypointList; + + protected override List GetExcludedPropertiesInInspector() + { + List excluded = base.GetExcludedPropertiesInInspector(); + excluded.Add(FieldPath(x => x.m_Waypoints)); + return excluded; + } + + void OnEnable() + { + mWaypointList = null; + } + + public override void OnInspectorGUI() + { + BeginInspector(); + if (mWaypointList == null) + SetupWaypointList(); + + if (mWaypointList.index >= mWaypointList.count) + mWaypointList.index = mWaypointList.count - 1; + + // Ordinary properties + DrawRemainingPropertiesInInspector(); + + // Path length + EditorGUILayout.LabelField("Path Length", Target.PathLength.ToString()); + + // Waypoints + EditorGUI.BeginChangeCheck(); + mWaypointList.DoLayoutList(); + if (EditorGUI.EndChangeCheck()) + serializedObject.ApplyModifiedProperties(); + } + + void SetupWaypointList() + { + mWaypointList = new ReorderableList( + serializedObject, FindProperty(x => x.m_Waypoints), + true, true, true, true); + + mWaypointList.drawHeaderCallback = (Rect rect) => + { EditorGUI.LabelField(rect, "Waypoints"); }; + + mWaypointList.drawElementCallback + = (Rect rect, int index, bool isActive, bool isFocused) => + { DrawWaypointEditor(rect, index); }; + + mWaypointList.onAddCallback = (ReorderableList l) => + { InsertWaypointAtIndex(l.index); }; + } + + void DrawWaypointEditor(Rect rect, int index) + { + // Needed for accessing string names of fields + CinemachineSmoothPath.Waypoint def = new CinemachineSmoothPath.Waypoint(); + SerializedProperty element = mWaypointList.serializedProperty.GetArrayElementAtIndex(index); + + float hSpace = 3; + rect.width -= hSpace; rect.y += 1; + Vector2 numberDimension = GUI.skin.label.CalcSize(new GUIContent("999")); + Rect r = new Rect(rect.position, numberDimension); + if (GUI.Button(r, new GUIContent(index.ToString(), "Go to the waypoint in the scene view"))) + { + if (SceneView.lastActiveSceneView != null) + { + mWaypointList.index = index; + SceneView.lastActiveSceneView.pivot = Target.EvaluatePosition(index); + SceneView.lastActiveSceneView.size = 4; + SceneView.lastActiveSceneView.Repaint(); + } + } + + float floatFieldWidth = EditorGUIUtility.singleLineHeight * 2f; + GUIContent rollLabel = new GUIContent("Roll"); + Vector2 labelDimension = GUI.skin.label.CalcSize(rollLabel); + float rollWidth = labelDimension.x + floatFieldWidth; + r.x += r.width + hSpace; r.width = rect.width - (r.width + hSpace + rollWidth) - (r.height + hSpace); + EditorGUI.PropertyField(r, element.FindPropertyRelative(() => def.position), GUIContent.none); + + r.x += r.width + hSpace; r.width = rollWidth; + float oldWidth = EditorGUIUtility.labelWidth; + EditorGUIUtility.labelWidth = labelDimension.x; + EditorGUI.PropertyField(r, element.FindPropertyRelative(() => def.roll), rollLabel); + EditorGUIUtility.labelWidth = oldWidth; + + r.x += r.width + hSpace; r.height += 1; r.width = r.height; + GUIContent setButtonContent = EditorGUIUtility.IconContent("d_RectTransform Icon"); + setButtonContent.tooltip = "Set to scene-view camera position"; + if (GUI.Button(r, setButtonContent, GUI.skin.label) && SceneView.lastActiveSceneView != null) + { + Undo.RecordObject(Target, "Set waypoint"); + CinemachineSmoothPath.Waypoint wp = Target.m_Waypoints[index]; + Vector3 pos = SceneView.lastActiveSceneView.camera.transform.position; + wp.position = Target.transform.InverseTransformPoint(pos); + Target.m_Waypoints[index] = wp; + } + } + + void InsertWaypointAtIndex(int indexA) + { + Vector3 pos = Vector3.right; + float roll = 0; + + // Get new values from the current indexA (if any) + int numWaypoints = Target.m_Waypoints.Length; + if (indexA < 0) + indexA = numWaypoints - 1; + if (indexA >= 0) + { + int indexB = indexA + 1; + if (Target.m_Looped && indexB >= numWaypoints) + indexB = 0; + if (indexB >= numWaypoints) + { + Vector3 delta = Vector3.right; + if (indexA > 0) + delta = Target.m_Waypoints[indexA].position - Target.m_Waypoints[indexA-1].position; + pos = Target.m_Waypoints[indexA].position + delta; + roll = Target.m_Waypoints[indexA].roll; + } + else + { + // Interpolate + pos = Target.transform.InverseTransformPoint(Target.EvaluatePosition(0.5f + indexA)); + roll = Mathf.Lerp(Target.m_Waypoints[indexA].roll, Target.m_Waypoints[indexB].roll, 0.5f); + } + } + Undo.RecordObject(Target, "Add waypoint"); + var wp = new CinemachineSmoothPath.Waypoint(); + wp.position = pos; + wp.roll = roll; + var list = new List(Target.m_Waypoints); + list.Insert(indexA + 1, wp); + Target.m_Waypoints = list.ToArray(); + Target.InvalidateDistanceCache(); + InternalEditorUtility.RepaintAllViews(); + mWaypointList.index = indexA + 1; // select it + } + + void OnSceneGUI() + { + if (mWaypointList == null) + SetupWaypointList(); + + if (Tools.current == Tool.Move) + { + Color colorOld = Handles.color; + var localToWorld = Target.transform.localToWorldMatrix; + for (int i = 0; i < Target.m_Waypoints.Length; ++i) + { + DrawSelectionHandle(i, localToWorld); + if (mWaypointList.index == i) + DrawPositionControl(i, localToWorld, Target.transform.rotation); // Waypoint is selected + } + Handles.color = colorOld; + } + } + + void DrawSelectionHandle(int i, Matrix4x4 localToWorld) + { + if (Event.current.button != 1) + { + Vector3 pos = localToWorld.MultiplyPoint(Target.m_Waypoints[i].position); + float size = HandleUtility.GetHandleSize(pos) * 0.2f; + Handles.color = Color.white; + if (Handles.Button(pos, Quaternion.identity, size, size, Handles.SphereHandleCap) + && mWaypointList.index != i) + { + mWaypointList.index = i; + InternalEditorUtility.RepaintAllViews(); + } + // Label it + Handles.BeginGUI(); + Vector2 labelSize = new Vector2( + EditorGUIUtility.singleLineHeight * 2, EditorGUIUtility.singleLineHeight); + Vector2 labelPos = HandleUtility.WorldToGUIPoint(pos); + labelPos.y -= labelSize.y / 2; + labelPos.x -= labelSize.x / 2; + GUILayout.BeginArea(new Rect(labelPos, labelSize)); + GUIStyle style = new GUIStyle(); + style.normal.textColor = Color.black; + style.alignment = TextAnchor.MiddleCenter; + GUILayout.Label(new GUIContent(i.ToString(), "Waypoint " + i), style); + GUILayout.EndArea(); + Handles.EndGUI(); + } + } + + void DrawPositionControl(int i, Matrix4x4 localToWorld, Quaternion localRotation) + { + CinemachineSmoothPath.Waypoint wp = Target.m_Waypoints[i]; + Vector3 pos = localToWorld.MultiplyPoint(wp.position); + EditorGUI.BeginChangeCheck(); + Handles.color = Target.m_Appearance.pathColor; + Quaternion rotation = (Tools.pivotRotation == PivotRotation.Local) + ? localRotation : Quaternion.identity; + float size = HandleUtility.GetHandleSize(pos) * 0.1f; + Handles.SphereHandleCap(0, pos, rotation, size, EventType.Repaint); + pos = Handles.PositionHandle(pos, rotation); + if (EditorGUI.EndChangeCheck()) + { + Undo.RecordObject(target, "Move Waypoint"); + wp.position = Matrix4x4.Inverse(localToWorld).MultiplyPoint(pos); + Target.m_Waypoints[i] = wp; + Target.InvalidateDistanceCache(); + UnityEditorInternal.InternalEditorUtility.RepaintAllViews(); + } + } + + [DrawGizmo(GizmoType.Active | GizmoType.NotInSelectionHierarchy + | GizmoType.InSelectionHierarchy | GizmoType.Pickable, typeof(CinemachineSmoothPath))] + static void DrawGizmos(CinemachineSmoothPath path, GizmoType selectionType) + { + CinemachinePathEditor.DrawPathGizmo(path, + (Selection.activeGameObject == path.gameObject) + ? path.m_Appearance.pathColor : path.m_Appearance.inactivePathColor); + } + } +} diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Editor/Editors/CinemachineSmoothPathEditor.cs.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Editor/Editors/CinemachineSmoothPathEditor.cs.meta" new file mode 100644 index 00000000..c35d6630 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Editor/Editors/CinemachineSmoothPathEditor.cs.meta" @@ -0,0 +1,12 @@ +fileFormatVersion: 2 +guid: 1123a444101eb774ba7490990b50736a +timeCreated: 1505831686 +licenseType: Pro +MonoImporter: + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Editor/Editors/CinemachineStateDrivenCameraEditor.cs" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Editor/Editors/CinemachineStateDrivenCameraEditor.cs" new file mode 100644 index 00000000..fd108451 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Editor/Editors/CinemachineStateDrivenCameraEditor.cs" @@ -0,0 +1,453 @@ +using System.Collections.Generic; +using UnityEditor; +using UnityEngine; +using UnityEditor.Animations; + +namespace Cinemachine.Editor +{ + [CustomEditor(typeof(CinemachineStateDrivenCamera))] + internal sealed class CinemachineStateDrivenCameraEditor + : CinemachineVirtualCameraBaseEditor + { + EmbeddeAssetEditor m_BlendsEditor; + + protected override List GetExcludedPropertiesInInspector() + { + List excluded = base.GetExcludedPropertiesInInspector(); + excluded.Add(FieldPath(x => x.m_CustomBlends)); + excluded.Add(FieldPath(x => x.m_Instructions)); + return excluded; + } + + private UnityEditorInternal.ReorderableList mChildList; + private UnityEditorInternal.ReorderableList mInstructionList; + + protected override void OnEnable() + { + base.OnEnable(); + m_BlendsEditor = new EmbeddeAssetEditor( + FieldPath(x => x.m_CustomBlends), this); + m_BlendsEditor.OnChanged = (CinemachineBlenderSettings b) => + { + UnityEditorInternal.InternalEditorUtility.RepaintAllViews(); + }; + m_BlendsEditor.OnCreateEditor = (UnityEditor.Editor ed) => + { + CinemachineBlenderSettingsEditor editor = ed as CinemachineBlenderSettingsEditor; + if (editor != null) + editor.GetAllVirtualCameras = () => { return Target.ChildCameras; }; + }; + mChildList = null; + mInstructionList = null; + } + + protected override void OnDisable() + { + base.OnDisable(); + if (m_BlendsEditor != null) + m_BlendsEditor.OnDisable(); + } + + public override void OnInspectorGUI() + { + BeginInspector(); + if (mInstructionList == null) + SetupInstructionList(); + if (mChildList == null) + SetupChildList(); + + if (Target.m_AnimatedTarget == null) + EditorGUILayout.HelpBox("An Animated Target is required", MessageType.Warning); + + // Ordinary properties + DrawHeaderInInspector(); + DrawPropertyInInspector(FindProperty(x => x.m_Priority)); + DrawTargetsInInspector(FindProperty(x => x.m_Follow), FindProperty(x => x.m_LookAt)); + DrawPropertyInInspector(FindProperty(x => x.m_AnimatedTarget)); + + // Layer index + EditorGUI.BeginChangeCheck(); + UpdateTargetStates(); + UpdateCameraCandidates(); + SerializedProperty layerProp = FindAndExcludeProperty(x => x.m_LayerIndex); + int currentLayer = layerProp.intValue; + int layerSelection = EditorGUILayout.Popup("Layer", currentLayer, mLayerNames); + if (currentLayer != layerSelection) + layerProp.intValue = layerSelection; + if (EditorGUI.EndChangeCheck()) + { + serializedObject.ApplyModifiedProperties(); + Target.ValidateInstructions(); + } + + DrawRemainingPropertiesInInspector(); + + // Blends + m_BlendsEditor.DrawEditorCombo( + "Create New Blender Asset", + Target.gameObject.name + " Blends", "asset", string.Empty, + "Custom Blends", false); + + // Instructions + EditorGUI.BeginChangeCheck(); + EditorGUILayout.Separator(); + mInstructionList.DoLayoutList(); + + // vcam children + EditorGUILayout.Separator(); + mChildList.DoLayoutList(); + if (EditorGUI.EndChangeCheck()) + { + serializedObject.ApplyModifiedProperties(); + Target.ValidateInstructions(); + } + + // Extensions + DrawExtensionsWidgetInInspector(); + } + + static AnimatorController GetControllerFromAnimator(Animator animator) + { + if (animator == null) + return null; + var ovr = animator.runtimeAnimatorController as AnimatorOverrideController; + if (ovr) + return ovr.runtimeAnimatorController as AnimatorController; + return animator.runtimeAnimatorController as AnimatorController; + } + + private string[] mLayerNames; + private int[] mTargetStates; + private string[] mTargetStateNames; + private Dictionary mStateIndexLookup; + private void UpdateTargetStates() + { + // Scrape the Animator Controller for states + AnimatorController ac = GetControllerFromAnimator(Target.m_AnimatedTarget); + StateCollector collector = new StateCollector(); + collector.CollectStates(ac, Target.m_LayerIndex); + mTargetStates = collector.mStates.ToArray(); + mTargetStateNames = collector.mStateNames.ToArray(); + mStateIndexLookup = collector.mStateIndexLookup; + + if (ac == null) + mLayerNames = new string[0]; + else + { + mLayerNames = new string[ac.layers.Length]; + for (int i = 0; i < ac.layers.Length; ++i) + mLayerNames[i] = ac.layers[i].name; + } + + // Create the parent map in the target + List parents + = new List(); + foreach (var i in collector.mStateParentLookup) + parents.Add(new CinemachineStateDrivenCamera.ParentHash(i.Key, i.Value)); + Target.m_ParentHash = parents.ToArray(); + } + + class StateCollector + { + public List mStates; + public List mStateNames; + public Dictionary mStateIndexLookup; + public Dictionary mStateParentLookup; + + public void CollectStates(AnimatorController ac, int layerIndex) + { + mStates = new List(); + mStateNames = new List(); + mStateIndexLookup = new Dictionary(); + mStateParentLookup = new Dictionary(); + + mStateIndexLookup[0] = mStates.Count; + mStateNames.Add("(default)"); + mStates.Add(0); + + if (ac != null && layerIndex >= 0 && layerIndex < ac.layers.Length) + { + AnimatorStateMachine fsm = ac.layers[layerIndex].stateMachine; + string name = fsm.name; + int hash = Animator.StringToHash(name); + CollectStatesFromFSM(fsm, name + ".", hash, string.Empty); + } + } + + void CollectStatesFromFSM( + AnimatorStateMachine fsm, string hashPrefix, int parentHash, string displayPrefix) + { + ChildAnimatorState[] states = fsm.states; + for (int i = 0; i < states.Length; i++) + { + AnimatorState state = states[i].state; + int hash = AddState(Animator.StringToHash(hashPrefix + state.name), + parentHash, displayPrefix + state.name); + + // Also process clips as pseudo-states, if more than 1 is present. + // Since they don't have hashes, we can manufacture some. + var clips = CollectClips(state.motion); + if (clips.Count > 1) + { + string substatePrefix = displayPrefix + state.name + "."; + foreach (AnimationClip c in clips) + AddState( + CinemachineStateDrivenCamera.CreateFakeHash(hash, c), + hash, substatePrefix + c.name); + } + } + + ChildAnimatorStateMachine[] fsmChildren = fsm.stateMachines; + foreach (var child in fsmChildren) + { + string name = hashPrefix + child.stateMachine.name; + string displayName = displayPrefix + child.stateMachine.name; + int hash = AddState(Animator.StringToHash(name), parentHash, displayName); + CollectStatesFromFSM(child.stateMachine, name + ".", hash, displayName + "."); + } + } + + List CollectClips(Motion motion) + { + var clips = new List(); + AnimationClip clip = motion as AnimationClip; + if (clip != null) + clips.Add(clip); + BlendTree tree = motion as BlendTree; + if (tree != null) + { + ChildMotion[] children = tree.children; + foreach (var child in children) + clips.AddRange(CollectClips(child.motion)); + } + return clips; + } + + int AddState(int hash, int parentHash, string displayName) + { + if (parentHash != 0) + mStateParentLookup[hash] = parentHash; + mStateIndexLookup[hash] = mStates.Count; + mStateNames.Add(displayName); + mStates.Add(hash); + return hash; + } + } + + private int GetStateHashIndex(int stateHash) + { + if (stateHash == 0) + return 0; + if (!mStateIndexLookup.ContainsKey(stateHash)) + return 0; + return mStateIndexLookup[stateHash]; + } + + private string[] mCameraCandidates; + private Dictionary mCameraIndexLookup; + private void UpdateCameraCandidates() + { + List vcams = new List(); + mCameraIndexLookup = new Dictionary(); + vcams.Add("(none)"); + CinemachineVirtualCameraBase[] children = Target.ChildCameras; + foreach (var c in children) + { + mCameraIndexLookup[c] = vcams.Count; + vcams.Add(c.Name); + } + mCameraCandidates = vcams.ToArray(); + } + + private int GetCameraIndex(Object obj) + { + if (obj == null || mCameraIndexLookup == null) + return 0; + CinemachineVirtualCameraBase vcam = obj as CinemachineVirtualCameraBase; + if (vcam == null) + return 0; + if (!mCameraIndexLookup.ContainsKey(vcam)) + return 0; + return mCameraIndexLookup[vcam]; + } + + void SetupInstructionList() + { + mInstructionList = new UnityEditorInternal.ReorderableList(serializedObject, + serializedObject.FindProperty(() => Target.m_Instructions), + true, true, true, true); + + // Needed for accessing field names as strings + CinemachineStateDrivenCamera.Instruction def = new CinemachineStateDrivenCamera.Instruction(); + + float vSpace = 2; + float hSpace = 3; + float floatFieldWidth = EditorGUIUtility.singleLineHeight * 2.5f; + float hBigSpace = EditorGUIUtility.singleLineHeight * 2 / 3; + mInstructionList.drawHeaderCallback = (Rect rect) => + { + float sharedWidth = rect.width - EditorGUIUtility.singleLineHeight + - 2 * (hBigSpace + floatFieldWidth) - hSpace; + rect.x += EditorGUIUtility.singleLineHeight; rect.width = sharedWidth / 2; + EditorGUI.LabelField(rect, "State"); + + rect.x += rect.width + hSpace; + EditorGUI.LabelField(rect, "Camera"); + + rect.x += rect.width + hBigSpace; rect.width = floatFieldWidth; + EditorGUI.LabelField(rect, "Wait"); + + rect.x += rect.width + hBigSpace; + EditorGUI.LabelField(rect, "Min"); + }; + + mInstructionList.drawElementCallback + = (Rect rect, int index, bool isActive, bool isFocused) => + { + SerializedProperty instProp + = mInstructionList.serializedProperty.GetArrayElementAtIndex(index); + float sharedWidth = rect.width - 2 * (hBigSpace + floatFieldWidth) - hSpace; + rect.y += vSpace; rect.height = EditorGUIUtility.singleLineHeight; + + rect.width = sharedWidth / 2; + SerializedProperty stateSelProp = instProp.FindPropertyRelative(() => def.m_FullHash); + int currentState = GetStateHashIndex(stateSelProp.intValue); + int stateSelection = EditorGUI.Popup(rect, currentState, mTargetStateNames); + if (currentState != stateSelection) + stateSelProp.intValue = mTargetStates[stateSelection]; + + rect.x += rect.width + hSpace; + SerializedProperty vcamSelProp = instProp.FindPropertyRelative(() => def.m_VirtualCamera); + int currentVcam = GetCameraIndex(vcamSelProp.objectReferenceValue); + int vcamSelection = EditorGUI.Popup(rect, currentVcam, mCameraCandidates); + if (currentVcam != vcamSelection) + vcamSelProp.objectReferenceValue = (vcamSelection == 0) + ? null : Target.ChildCameras[vcamSelection - 1]; + + float oldWidth = EditorGUIUtility.labelWidth; + EditorGUIUtility.labelWidth = hBigSpace; + + rect.x += rect.width; rect.width = floatFieldWidth + hBigSpace; + SerializedProperty activeAfterProp = instProp.FindPropertyRelative(() => def.m_ActivateAfter); + EditorGUI.PropertyField(rect, activeAfterProp, new GUIContent(" ", activeAfterProp.tooltip)); + + rect.x += rect.width; + SerializedProperty minDurationProp = instProp.FindPropertyRelative(() => def.m_MinDuration); + EditorGUI.PropertyField(rect, minDurationProp, new GUIContent(" ", minDurationProp.tooltip)); + + EditorGUIUtility.labelWidth = oldWidth; + }; + + mInstructionList.onAddDropdownCallback = (Rect buttonRect, UnityEditorInternal.ReorderableList l) => + { + var menu = new GenericMenu(); + menu.AddItem(new GUIContent("New State"), + false, (object data) => + { + ++mInstructionList.serializedProperty.arraySize; + serializedObject.ApplyModifiedProperties(); + Target.ValidateInstructions(); + }, + null); + menu.AddItem(new GUIContent("All Unhandled States"), + false, (object data) => + { + CinemachineStateDrivenCamera target = Target; + int len = mInstructionList.serializedProperty.arraySize; + for (int i = 0; i < mTargetStates.Length; ++i) + { + int hash = mTargetStates[i]; + if (hash == 0) + continue; + bool alreadyThere = false; + for (int j = 0; j < len; ++j) + { + if (target.m_Instructions[j].m_FullHash == hash) + { + alreadyThere = true; + break; + } + } + if (!alreadyThere) + { + int index = mInstructionList.serializedProperty.arraySize; + ++mInstructionList.serializedProperty.arraySize; + SerializedProperty p = mInstructionList.serializedProperty.GetArrayElementAtIndex(index); + p.FindPropertyRelative(() => def.m_FullHash).intValue = hash; + } + } + serializedObject.ApplyModifiedProperties(); + Target.ValidateInstructions(); + }, + null); + menu.ShowAsContext(); + }; + } + + void SetupChildList() + { + float vSpace = 2; + float hSpace = 3; + float floatFieldWidth = EditorGUIUtility.singleLineHeight * 2.5f; + float hBigSpace = EditorGUIUtility.singleLineHeight * 2 / 3; + + mChildList = new UnityEditorInternal.ReorderableList(serializedObject, + serializedObject.FindProperty(() => Target.m_ChildCameras), + true, true, true, true); + + mChildList.drawHeaderCallback = (Rect rect) => + { + EditorGUI.LabelField(rect, "Virtual Camera Children"); + GUIContent priorityText = new GUIContent("Priority"); + var textDimensions = GUI.skin.label.CalcSize(priorityText); + rect.x += rect.width - textDimensions.x; + rect.width = textDimensions.x; + EditorGUI.LabelField(rect, priorityText); + }; + mChildList.drawElementCallback + = (Rect rect, int index, bool isActive, bool isFocused) => + { + rect.y += vSpace; rect.height = EditorGUIUtility.singleLineHeight; + rect.width -= floatFieldWidth + hBigSpace; + SerializedProperty element = mChildList.serializedProperty.GetArrayElementAtIndex(index); + EditorGUI.PropertyField(rect, element, GUIContent.none); + + float oldWidth = EditorGUIUtility.labelWidth; + EditorGUIUtility.labelWidth = hBigSpace; + SerializedObject obj = new SerializedObject(element.objectReferenceValue); + rect.x += rect.width + hSpace; rect.width = floatFieldWidth + hBigSpace; + SerializedProperty priorityProp = obj.FindProperty(() => Target.m_Priority); + EditorGUI.PropertyField(rect, priorityProp, new GUIContent(" ", priorityProp.tooltip)); + EditorGUIUtility.labelWidth = oldWidth; + obj.ApplyModifiedProperties(); + }; + mChildList.onChangedCallback = (UnityEditorInternal.ReorderableList l) => + { + if (l.index < 0 || l.index >= l.serializedProperty.arraySize) + return; + Object o = l.serializedProperty.GetArrayElementAtIndex( + l.index).objectReferenceValue; + CinemachineVirtualCameraBase vcam = (o != null) + ? (o as CinemachineVirtualCameraBase) : null; + if (vcam != null) + vcam.transform.SetSiblingIndex(l.index); + }; + mChildList.onAddCallback = (UnityEditorInternal.ReorderableList l) => + { + var index = l.serializedProperty.arraySize; + var vcam = CinemachineMenu.CreateDefaultVirtualCamera(); + Undo.SetTransformParent(vcam.transform, Target.transform, ""); + vcam.transform.SetSiblingIndex(index); + }; + mChildList.onRemoveCallback = (UnityEditorInternal.ReorderableList l) => + { + Object o = l.serializedProperty.GetArrayElementAtIndex( + l.index).objectReferenceValue; + CinemachineVirtualCameraBase vcam = (o != null) + ? (o as CinemachineVirtualCameraBase) : null; + if (vcam != null) + Undo.DestroyObjectImmediate(vcam.gameObject); + }; + } + } +} diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Editor/Editors/CinemachineStateDrivenCameraEditor.cs.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Editor/Editors/CinemachineStateDrivenCameraEditor.cs.meta" new file mode 100644 index 00000000..94dc06e4 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Editor/Editors/CinemachineStateDrivenCameraEditor.cs.meta" @@ -0,0 +1,12 @@ +fileFormatVersion: 2 +guid: 0eb9f23cde3a1734da334cfa0831dd25 +timeCreated: 1486062933 +licenseType: Pro +MonoImporter: + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Editor/Editors/CinemachineStoryboardEditor.cs" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Editor/Editors/CinemachineStoryboardEditor.cs" new file mode 100644 index 00000000..de16fe67 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Editor/Editors/CinemachineStoryboardEditor.cs" @@ -0,0 +1,82 @@ +using UnityEngine; +using UnityEditor; + +namespace Cinemachine.Editor +{ + [CustomEditor(typeof(CinemachineStoryboard))] + internal sealed class CinemachineStoryboardEditor : BaseEditor + { + public void OnDisable() + { + WaveformWindow.SetDefaultUpdateInterval(); + } + + const float FastWaveformUpdateInterval = 0.1f; + float mLastSplitScreenEventTime = 0; + + public override void OnInspectorGUI() + { + float now = Time.realtimeSinceStartup; + if (now - mLastSplitScreenEventTime > FastWaveformUpdateInterval * 5) + WaveformWindow.SetDefaultUpdateInterval(); + + BeginInspector(); + Rect rect = EditorGUILayout.GetControlRect(true); + EditorGUI.BeginChangeCheck(); + { + float width = rect.width; + rect.width = EditorGUIUtility.labelWidth + rect.height; + EditorGUI.PropertyField(rect, FindProperty(x => x.m_ShowImage)); + + rect.x += rect.width; rect.width = width - rect.width; + EditorGUI.PropertyField(rect, FindProperty(x => x.m_Image), GUIContent.none); + + EditorGUILayout.PropertyField(FindProperty(x => x.m_Aspect)); + EditorGUILayout.PropertyField(FindProperty(x => x.m_Alpha)); + EditorGUILayout.PropertyField(FindProperty(x => x.m_Center)); + EditorGUILayout.PropertyField(FindProperty(x => x.m_Rotation)); + + rect = EditorGUILayout.GetControlRect(true); + EditorGUI.LabelField(rect, "Scale"); + rect.x += EditorGUIUtility.labelWidth; rect.width -= EditorGUIUtility.labelWidth; + rect.width /= 3; + var prop = FindProperty(x => x.m_SyncScale); + GUIContent syncLabel = new GUIContent("Sync", prop.tooltip); + prop.boolValue = EditorGUI.ToggleLeft(rect, syncLabel, prop.boolValue); + rect.x += rect.width; + if (prop.boolValue) + { + prop = FindProperty(x => x.m_Scale); + float[] values = new float[1] { prop.vector2Value.x }; + EditorGUI.MultiFloatField(rect, new GUIContent[1] { new GUIContent("X") }, values); + prop.vector2Value = new Vector2(values[0], values[0]); + } + else + { + rect.width *= 2; + EditorGUI.PropertyField(rect, FindProperty(x => x.m_Scale), GUIContent.none); + } + EditorGUILayout.PropertyField(FindProperty(x => x.m_MuteCamera)); + } + if (EditorGUI.EndChangeCheck()) + serializedObject.ApplyModifiedProperties(); + + EditorGUILayout.Space(); + EditorGUI.BeginChangeCheck(); + EditorGUILayout.PropertyField(FindProperty(x => x.m_SplitView)); + if (EditorGUI.EndChangeCheck()) + { + mLastSplitScreenEventTime = now; + WaveformWindow.UpdateInterval = FastWaveformUpdateInterval; + serializedObject.ApplyModifiedProperties(); + } + rect = EditorGUILayout.GetControlRect(true); + GUI.Label(new Rect(rect.x, rect.y, EditorGUIUtility.labelWidth, rect.height), + "Waveform Monitor"); + rect.width -= EditorGUIUtility.labelWidth; rect.width /= 2; + rect.x += EditorGUIUtility.labelWidth; + if (GUI.Button(rect, "Open")) + WaveformWindow.OpenWindow(); + } + } +} diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Editor/Editors/CinemachineStoryboardEditor.cs.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Editor/Editors/CinemachineStoryboardEditor.cs.meta" new file mode 100644 index 00000000..16b1e06e --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Editor/Editors/CinemachineStoryboardEditor.cs.meta" @@ -0,0 +1,13 @@ +fileFormatVersion: 2 +guid: a9e63e62da42ce141b35602019323584 +timeCreated: 1516812054 +licenseType: Pro +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Editor/Editors/CinemachineTargetGroupEditor.cs" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Editor/Editors/CinemachineTargetGroupEditor.cs" new file mode 100644 index 00000000..a10aa726 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Editor/Editors/CinemachineTargetGroupEditor.cs" @@ -0,0 +1,94 @@ +using UnityEditor; +using UnityEngine; +using System.Collections.Generic; + +namespace Cinemachine.Editor +{ + [CustomEditor(typeof(CinemachineTargetGroup))] + internal sealed class CinemachineTargetGroupEditor : BaseEditor + { + private UnityEditorInternal.ReorderableList mTargetList; + + protected override List GetExcludedPropertiesInInspector() + { + List excluded = base.GetExcludedPropertiesInInspector(); + excluded.Add(FieldPath(x => x.m_Targets)); + return excluded; + } + + void OnEnable() + { + mTargetList = null; + } + + public override void OnInspectorGUI() + { + BeginInspector(); + DrawRemainingPropertiesInInspector(); + + if (mTargetList == null) + SetupTargetList(); + EditorGUI.BeginChangeCheck(); + mTargetList.DoLayoutList(); + if (EditorGUI.EndChangeCheck()) + serializedObject.ApplyModifiedProperties(); + } + + void SetupTargetList() + { + float vSpace = 2; + float floatFieldWidth = EditorGUIUtility.singleLineHeight * 3f; + float hBigSpace = EditorGUIUtility.singleLineHeight * 2 / 3; + + mTargetList = new UnityEditorInternal.ReorderableList( + serializedObject, FindProperty(x => x.m_Targets), + true, true, true, true); + + // Needed for accessing field names as strings + CinemachineTargetGroup.Target def = new CinemachineTargetGroup.Target(); + + mTargetList.drawHeaderCallback = (Rect rect) => + { + rect.width -= EditorGUIUtility.singleLineHeight + 2 * (floatFieldWidth + hBigSpace); + Vector2 pos = rect.position; pos.x += EditorGUIUtility.singleLineHeight; + rect.position = pos; + EditorGUI.LabelField(rect, "Target"); + + pos.x += rect.width + hBigSpace; rect.width = floatFieldWidth; rect.position = pos; + EditorGUI.LabelField(rect, "Weight"); + + pos.x += rect.width + hBigSpace; rect.position = pos; + EditorGUI.LabelField(rect, "Radius"); + }; + + mTargetList.drawElementCallback + = (Rect rect, int index, bool isActive, bool isFocused) => + { + SerializedProperty elemProp = mTargetList.serializedProperty.GetArrayElementAtIndex(index); + + rect.y += vSpace; + rect.height = EditorGUIUtility.singleLineHeight; + Vector2 pos = rect.position; + //rect.width -= hSpace + 2 * EditorGUIUtility.singleLineHeight; + rect.width -= 2 * (floatFieldWidth + hBigSpace); + EditorGUI.PropertyField(rect, elemProp.FindPropertyRelative(() => def.target), GUIContent.none); + + float oldWidth = EditorGUIUtility.labelWidth; + EditorGUIUtility.labelWidth = EditorGUIUtility.singleLineHeight; + pos.x += rect.width; rect.width = floatFieldWidth + hBigSpace; rect.position = pos; + EditorGUI.PropertyField(rect, elemProp.FindPropertyRelative(() => def.weight), new GUIContent(" ")); + pos.x += rect.width; rect.position = pos; + EditorGUI.PropertyField(rect, elemProp.FindPropertyRelative(() => def.radius), new GUIContent(" ")); + EditorGUIUtility.labelWidth = oldWidth; + }; + + mTargetList.onAddCallback = (UnityEditorInternal.ReorderableList l) => + { + var index = l.serializedProperty.arraySize; + ++l.serializedProperty.arraySize; + SerializedProperty elemProp = mTargetList.serializedProperty.GetArrayElementAtIndex(index); + elemProp.FindPropertyRelative(() => def.weight).floatValue = 1; + }; + } + } +} diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Editor/Editors/CinemachineTargetGroupEditor.cs.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Editor/Editors/CinemachineTargetGroupEditor.cs.meta" new file mode 100644 index 00000000..16c5db60 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Editor/Editors/CinemachineTargetGroupEditor.cs.meta" @@ -0,0 +1,12 @@ +fileFormatVersion: 2 +guid: eb8e037cb3f873743a725427c8c22342 +timeCreated: 1496424406 +licenseType: Pro +MonoImporter: + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Editor/Editors/CinemachineTrackedDollyEditor.cs" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Editor/Editors/CinemachineTrackedDollyEditor.cs" new file mode 100644 index 00000000..9e34dcc3 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Editor/Editors/CinemachineTrackedDollyEditor.cs" @@ -0,0 +1,72 @@ +using System.Collections.Generic; +using UnityEditor; +using UnityEngine; + +namespace Cinemachine.Editor +{ + [CustomEditor(typeof(CinemachineTrackedDolly))] + internal sealed class CinemachineTrackedDollyEditor : BaseEditor + { + protected override List GetExcludedPropertiesInInspector() + { + List excluded = base.GetExcludedPropertiesInInspector(); + switch (Target.m_CameraUp) + { + default: + break; + case CinemachineTrackedDolly.CameraUpMode.PathNoRoll: + case CinemachineTrackedDolly.CameraUpMode.FollowTargetNoRoll: + excluded.Add(FieldPath(x => x.m_RollDamping)); + break; + case CinemachineTrackedDolly.CameraUpMode.Default: + excluded.Add(FieldPath(x => x.m_PitchDamping)); + excluded.Add(FieldPath(x => x.m_YawDamping)); + excluded.Add(FieldPath(x => x.m_RollDamping)); + break; + } + return excluded; + } + + public override void OnInspectorGUI() + { + BeginInspector(); + if (Target.m_Path == null) + EditorGUILayout.HelpBox("A Path is required", MessageType.Warning); + if (Target.m_AutoDolly.m_Enabled && Target.FollowTarget == null) + EditorGUILayout.HelpBox("AutoDolly requires a Follow Target", MessageType.Warning); + DrawRemainingPropertiesInInspector(); + } + + /// Process a position drag from the user. + /// Called "magically" by the vcam editor, so don't change the signature. + public void OnVcamPositionDragged(Vector3 delta) + { + Undo.RegisterCompleteObjectUndo(Target, "Camera drag"); // GML do we need this? + Quaternion targetOrientation = Target.m_Path.EvaluateOrientationAtUnit( + Target.m_PathPosition, Target.m_PositionUnits); + Vector3 localOffset = Quaternion.Inverse(targetOrientation) * delta; + FindProperty(x => x.m_PathOffset).vector3Value += localOffset; + serializedObject.ApplyModifiedProperties(); + } + + [DrawGizmo(GizmoType.Active | GizmoType.InSelectionHierarchy, typeof(CinemachineTrackedDolly))] + private static void DrawTrackeDollyGizmos(CinemachineTrackedDolly target, GizmoType selectionType) + { + if (target.IsValid) + { + CinemachinePathBase path = target.m_Path; + if (path != null) + { + CinemachinePathEditor.DrawPathGizmo(path, path.m_Appearance.pathColor); + Vector3 pos = path.EvaluatePositionAtUnit(target.m_PathPosition, target.m_PositionUnits); + Color oldColor = Gizmos.color; + Gizmos.color = CinemachineCore.Instance.IsLive(target.VirtualCamera) + ? CinemachineSettings.CinemachineCoreSettings.ActiveGizmoColour + : CinemachineSettings.CinemachineCoreSettings.InactiveGizmoColour; + Gizmos.DrawLine(pos, target.transform.position); + Gizmos.color = oldColor; + } + } + } + } +} diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Editor/Editors/CinemachineTrackedDollyEditor.cs.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Editor/Editors/CinemachineTrackedDollyEditor.cs.meta" new file mode 100644 index 00000000..84f8029e --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Editor/Editors/CinemachineTrackedDollyEditor.cs.meta" @@ -0,0 +1,12 @@ +fileFormatVersion: 2 +guid: d4a408a1b506d0046875061c677944d8 +timeCreated: 1493318518 +licenseType: Pro +MonoImporter: + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Editor/Editors/CinemachineTransposerEditor.cs" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Editor/Editors/CinemachineTransposerEditor.cs" new file mode 100644 index 00000000..40a9e8bc --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Editor/Editors/CinemachineTransposerEditor.cs" @@ -0,0 +1,105 @@ +using UnityEngine; +using UnityEditor; +using System.Collections.Generic; + +namespace Cinemachine.Editor +{ + [CustomEditor(typeof(CinemachineTransposer))] + internal sealed class CinemachineTransposerEditor : BaseEditor + { + protected override List GetExcludedPropertiesInInspector() + { + List excluded = base.GetExcludedPropertiesInInspector(); + + switch (Target.m_BindingMode) + { + default: + case CinemachineTransposer.BindingMode.LockToTarget: + if (Target.m_AngularDampingMode == CinemachineTransposer.AngularDampingMode.Euler) + excluded.Add(FieldPath(x => x.m_AngularDamping)); + else + { + excluded.Add(FieldPath(x => x.m_PitchDamping)); + excluded.Add(FieldPath(x => x.m_YawDamping)); + excluded.Add(FieldPath(x => x.m_RollDamping)); + } + break; + case CinemachineTransposer.BindingMode.LockToTargetNoRoll: + excluded.Add(FieldPath(x => x.m_RollDamping)); + excluded.Add(FieldPath(x => x.m_AngularDamping)); + excluded.Add(FieldPath(x => x.m_AngularDampingMode)); + break; + case CinemachineTransposer.BindingMode.LockToTargetWithWorldUp: + excluded.Add(FieldPath(x => x.m_PitchDamping)); + excluded.Add(FieldPath(x => x.m_RollDamping)); + excluded.Add(FieldPath(x => x.m_AngularDamping)); + excluded.Add(FieldPath(x => x.m_AngularDampingMode)); + break; + case CinemachineTransposer.BindingMode.LockToTargetOnAssign: + case CinemachineTransposer.BindingMode.WorldSpace: + excluded.Add(FieldPath(x => x.m_PitchDamping)); + excluded.Add(FieldPath(x => x.m_YawDamping)); + excluded.Add(FieldPath(x => x.m_RollDamping)); + excluded.Add(FieldPath(x => x.m_AngularDamping)); + excluded.Add(FieldPath(x => x.m_AngularDampingMode)); + break; + case CinemachineTransposer.BindingMode.SimpleFollowWithWorldUp: + excluded.Add(FieldPath(x => x.m_XDamping)); + excluded.Add(FieldPath(x => x.m_PitchDamping)); + excluded.Add(FieldPath(x => x.m_YawDamping)); + excluded.Add(FieldPath(x => x.m_RollDamping)); + excluded.Add(FieldPath(x => x.m_AngularDamping)); + excluded.Add(FieldPath(x => x.m_AngularDampingMode)); + break; + } + if (Target.HideOffsetInInspector) + excluded.Add(FieldPath(x => x.m_FollowOffset)); + return excluded; + } + + public override void OnInspectorGUI() + { + BeginInspector(); + if (Target.FollowTarget == null) + EditorGUILayout.HelpBox( + "Transposer requires a Follow Target. Change Body to Do Nothing if you don't want a Follow target.", + MessageType.Warning); + DrawRemainingPropertiesInInspector(); + } + + /// Process a position drag from the user. + /// Called "magically" by the vcam editor, so don't change the signature. + public void OnVcamPositionDragged(Vector3 delta) + { + Undo.RegisterCompleteObjectUndo(Target, "Camera drag"); // GML do we need this? + Quaternion targetOrientation = Target.GetReferenceOrientation(Target.VcamState.ReferenceUp); + Vector3 localOffset = Quaternion.Inverse(targetOrientation) * delta; + FindProperty(x => x.m_FollowOffset).vector3Value += localOffset; + serializedObject.ApplyModifiedProperties(); + FindProperty(x => x.m_FollowOffset).vector3Value = Target.EffectiveOffset; + serializedObject.ApplyModifiedProperties(); + } + + [DrawGizmo(GizmoType.Active | GizmoType.Selected, typeof(CinemachineTransposer))] + static void DrawTransposerGizmos(CinemachineTransposer target, GizmoType selectionType) + { + if (target.IsValid & !target.HideOffsetInInspector) + { + Color originalGizmoColour = Gizmos.color; + Gizmos.color = CinemachineCore.Instance.IsLive(target.VirtualCamera) + ? CinemachineSettings.CinemachineCoreSettings.ActiveGizmoColour + : CinemachineSettings.CinemachineCoreSettings.InactiveGizmoColour; + + Vector3 up = Vector3.up; + CinemachineBrain brain = CinemachineCore.Instance.FindPotentialTargetBrain(target.VirtualCamera); + if (brain != null) + up = brain.DefaultWorldUp; + Vector3 targetPos = target.FollowTargetPosition; + Vector3 desiredPos = target.GetTargetCameraPosition(up); + Gizmos.DrawLine(targetPos, desiredPos); + //Gizmos.DrawWireSphere(desiredPos, HandleUtility.GetHandleSize(desiredPos) / 20); + Gizmos.color = originalGizmoColour; + } + } + } +} diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Editor/Editors/CinemachineTransposerEditor.cs.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Editor/Editors/CinemachineTransposerEditor.cs.meta" new file mode 100644 index 00000000..c0de9c17 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Editor/Editors/CinemachineTransposerEditor.cs.meta" @@ -0,0 +1,12 @@ +fileFormatVersion: 2 +guid: f34e35dc1dc67c54c841b728548d69cc +timeCreated: 1484088330 +licenseType: Pro +MonoImporter: + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Editor/Editors/CinemachineVirtualCameraBaseEditor.cs" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Editor/Editors/CinemachineVirtualCameraBaseEditor.cs" new file mode 100644 index 00000000..340f2694 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Editor/Editors/CinemachineVirtualCameraBaseEditor.cs" @@ -0,0 +1,203 @@ +using UnityEngine; +using UnityEditor; +using System; +using System.Collections.Generic; +using Cinemachine.Utility; + +namespace Cinemachine.Editor +{ + /// + /// Base class for virtual camera editors. + /// Handles drawing the header and the basic properties. + /// + public class CinemachineVirtualCameraBaseEditor + : BaseEditor where T : CinemachineVirtualCameraBase + { + static Type[] sExtensionTypes; // First entry is null + static string[] sExtensionNames; + + protected override List GetExcludedPropertiesInInspector() + { + var excluded = base.GetExcludedPropertiesInInspector(); + if (Target.m_ExcludedPropertiesInInspector != null) + excluded.AddRange(Target.m_ExcludedPropertiesInInspector); + return excluded; + } + + protected virtual void OnEnable() + { + if (sExtensionTypes == null) + { + // Populate the extension list + List exts = new List(); + List names = new List(); + exts.Add(null); + names.Add("(select)"); + var allExtensions + = ReflectionHelpers.GetTypesInAllDependentAssemblies( + (Type t) => typeof(CinemachineExtension).IsAssignableFrom(t) && !t.IsAbstract); + foreach (Type t in allExtensions) + { + exts.Add(t); + names.Add(t.Name); + } + sExtensionTypes = exts.ToArray(); + sExtensionNames = names.ToArray(); + } + } + + protected virtual void OnDisable() + { + if (CinemachineBrain.SoloCamera == (ICinemachineCamera)Target) + { + CinemachineBrain.SoloCamera = null; + UnityEditorInternal.InternalEditorUtility.RepaintAllViews(); + } + } + + public override void OnInspectorGUI() + { + BeginInspector(); + DrawHeaderInInspector(); + DrawRemainingPropertiesInInspector(); + DrawExtensionsWidgetInInspector(); + } + + protected void DrawHeaderInInspector() + { + List excluded = GetExcludedPropertiesInInspector(); + if (!excluded.Contains("Header")) + { + DrawCameraStatusInInspector(); + DrawGlobalControlsInInspector(); + } + ExcludeProperty("Header"); + } + + protected void DrawTargetsInInspector( + SerializedProperty followTarget, SerializedProperty lookAtTarget) + { + List excluded = GetExcludedPropertiesInInspector(); + EditorGUI.BeginChangeCheck(); + if (!excluded.Contains(followTarget.name)) + { + if (Target.ParentCamera == null || Target.ParentCamera.Follow == null) + EditorGUILayout.PropertyField(followTarget); + else + EditorGUILayout.PropertyField(followTarget, + new GUIContent(followTarget.displayName + " Override")); + ExcludeProperty(followTarget.name); + } + if (!excluded.Contains(lookAtTarget.name)) + { + if (Target.ParentCamera == null || Target.ParentCamera.LookAt == null) + EditorGUILayout.PropertyField(lookAtTarget); + else + EditorGUILayout.PropertyField(lookAtTarget, + new GUIContent(lookAtTarget.displayName + " Override")); + ExcludeProperty(lookAtTarget.name); + } + if (EditorGUI.EndChangeCheck()) + serializedObject.ApplyModifiedProperties(); + } + + protected void DrawExtensionsWidgetInInspector() + { + List excluded = GetExcludedPropertiesInInspector(); + if (!excluded.Contains("Extensions")) + { + EditorGUILayout.Space(); + EditorGUILayout.LabelField("Extensions", EditorStyles.boldLabel); + Rect rect = EditorGUILayout.GetControlRect(true, EditorGUIUtility.singleLineHeight); + rect = EditorGUI.PrefixLabel(rect, new GUIContent("Add Extension")); + + int selection = EditorGUI.Popup(rect, 0, sExtensionNames); + if (selection > 0) + { + Type extType = sExtensionTypes[selection]; + if (Target.GetComponent(extType) == null) + Undo.AddComponent(Target.gameObject, extType); + } + ExcludeProperty("Extensions"); + } + } + + protected void DrawCameraStatusInInspector() + { + // Is the camera navel-gazing? + CameraState state = Target.State; + if (state.HasLookAt && (state.ReferenceLookAt - state.CorrectedPosition).AlmostZero()) + EditorGUILayout.HelpBox( + "The camera is positioned on the same point at which it is trying to look.", + MessageType.Warning); + + // Active status and Solo button + Rect rect = EditorGUILayout.GetControlRect(true); + Rect rectLabel = new Rect(rect.x, rect.y, EditorGUIUtility.labelWidth, rect.height); + rect.width -= rectLabel.width; + rect.x += rectLabel.width; + + Color color = GUI.color; + bool isSolo = (CinemachineBrain.SoloCamera == (ICinemachineCamera)Target); + if (isSolo) + GUI.color = CinemachineBrain.GetSoloGUIColor(); + + bool isLive = CinemachineCore.Instance.IsLive(Target); + GUI.enabled = isLive; + GUI.Label(rectLabel, isLive ? "Status: Live" + : (Target.isActiveAndEnabled ? "Status: Standby" : "Status: Disabled")); + GUI.enabled = true; + + float labelWidth = 0; + GUIContent updateText = GUIContent.none; + UpdateTracker.UpdateClock updateMode = CinemachineCore.Instance.GetVcamUpdateStatus(Target); + if (Application.isPlaying) + { + updateText = new GUIContent( + updateMode == UpdateTracker.UpdateClock.Fixed ? " Fixed Update" : " Late Update"); + var textDimensions = GUI.skin.label.CalcSize(updateText); + labelWidth = textDimensions.x; + } + rect.width -= labelWidth; + if (GUI.Button(rect, "Solo", "Button")) + { + isSolo = !isSolo; + CinemachineBrain.SoloCamera = isSolo ? Target : null; + UnityEditorInternal.InternalEditorUtility.RepaintAllViews(); + } + GUI.color = color; + if (isSolo && !Application.isPlaying) + UnityEditorInternal.InternalEditorUtility.RepaintAllViews(); + + if (labelWidth > 0) + { + GUI.enabled = false; + rect.x += rect.width; rect.width = labelWidth; + GUI.Label(rect, updateText); + GUI.enabled = true; + } + } + + protected void DrawGlobalControlsInInspector() + { + CinemachineSettings.CinemachineCoreSettings.ShowInGameGuides + = EditorGUILayout.Toggle( + new GUIContent( + "Game Window Guides", + "Enable the display of overlays in the Game window. You can adjust colours and opacity in Edit/Preferences/Cinemachine."), + CinemachineSettings.CinemachineCoreSettings.ShowInGameGuides); + + SaveDuringPlay.SaveDuringPlay.Enabled + = EditorGUILayout.Toggle( + new GUIContent( + "Save During Play", + "If checked, Virtual Camera settings changes made during Play Mode will be propagated back to the scene when Play Mode is exited."), + SaveDuringPlay.SaveDuringPlay.Enabled); + + if (Application.isPlaying && SaveDuringPlay.SaveDuringPlay.Enabled) + EditorGUILayout.HelpBox( + " Virtual Camera settings changes made during Play Mode will be propagated back to the scene when Play Mode is exited.", + MessageType.Info); + } + } +} diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Editor/Editors/CinemachineVirtualCameraBaseEditor.cs.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Editor/Editors/CinemachineVirtualCameraBaseEditor.cs.meta" new file mode 100644 index 00000000..c1b8e9bb --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Editor/Editors/CinemachineVirtualCameraBaseEditor.cs.meta" @@ -0,0 +1,12 @@ +fileFormatVersion: 2 +guid: 211d719bb25901043833928f50e9d0ea +timeCreated: 1506603196 +licenseType: Pro +MonoImporter: + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Editor/Editors/CinemachineVirtualCameraEditor.cs" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Editor/Editors/CinemachineVirtualCameraEditor.cs" new file mode 100644 index 00000000..d25072ed --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Editor/Editors/CinemachineVirtualCameraEditor.cs" @@ -0,0 +1,459 @@ +using UnityEngine; +using UnityEditor; +using System; +using System.Collections.Generic; +using Cinemachine.Utility; +using System.Reflection; +using System.Linq; + +namespace Cinemachine.Editor +{ + [CustomEditor(typeof(CinemachineVirtualCamera))] + internal class CinemachineVirtualCameraEditor + : CinemachineVirtualCameraBaseEditor + { + // Static state and caches - Call UpdateStaticData() to refresh this + struct StageData + { + string ExpandedKey { get { return "CNMCN_Core_Vcam_Expanded_" + Name; } } + public bool IsExpanded + { + get { return EditorPrefs.GetBool(ExpandedKey, false); } + set { EditorPrefs.SetBool(ExpandedKey, value); } + } + public string Name; + public Type[] types; // first entry is null + public GUIContent[] PopupOptions; + } + static StageData[] sStageData = null; + + // Instance data - call UpdateInstanceData() to refresh this + int[] m_stageState = null; + bool[] m_stageError = null; + CinemachineComponentBase[] m_components; + UnityEditor.Editor[] m_componentEditors = new UnityEditor.Editor[0]; + + protected override void OnEnable() + { + // Build static menu arrays via reflection + base.OnEnable(); + UpdateStaticData(); + } + + protected override void OnDisable() + { + base.OnDisable(); + // Must destroy editors or we get exceptions + if (m_componentEditors != null) + foreach (UnityEditor.Editor e in m_componentEditors) + if (e != null) + UnityEngine.Object.DestroyImmediate(e); + } + + Vector3 mPreviousPosition; + private void OnSceneGUI() + { + if (!Target.UserIsDragging) + mPreviousPosition = Target.transform.position; + if (Selection.Contains(Target.gameObject) && Tools.current == Tool.Move + && Event.current.type == EventType.MouseDrag) + { + // User might be dragging our position handle + Target.UserIsDragging = true; + Vector3 delta = Target.transform.position - mPreviousPosition; + if (!delta.AlmostZero()) + { + OnPositionDragged(delta); + mPreviousPosition = Target.transform.position; + } + } + else if (GUIUtility.hotControl == 0 && Target.UserIsDragging) + { + // We're not dragging anything now, but we were + UnityEditorInternal.InternalEditorUtility.RepaintAllViews(); + Target.UserIsDragging = false; + } + } + + + void OnPositionDragged(Vector3 delta) + { + if (m_componentEditors != null) + { + foreach (UnityEditor.Editor e in m_componentEditors) + { + if (e != null) + { + MethodInfo mi = e.GetType().GetMethod("OnVcamPositionDragged" + , BindingFlags.NonPublic | BindingFlags.Public | BindingFlags.Instance); + if (mi != null && e.target != null) + { + mi.Invoke(e, new object[] { delta } ); + } + } + } + } + } + + public override void OnInspectorGUI() + { + BeginInspector(); + DrawHeaderInInspector(); + DrawPropertyInInspector(FindProperty(x => x.m_Priority)); + DrawTargetsInInspector(FindProperty(x => x.m_Follow), FindProperty(x => x.m_LookAt)); + DrawRemainingPropertiesInInspector(); + DrawPipelineInInspector(); + DrawExtensionsWidgetInInspector(); + } + + protected void DrawPipelineInInspector() + { + UpdateInstanceData(); + foreach (CinemachineCore.Stage stage in Enum.GetValues(typeof(CinemachineCore.Stage))) + { + int index = (int)stage; + + // Skip pipeline stages that have no implementations + if (sStageData[index].PopupOptions.Length <= 1) + continue; + + const float indentOffset = 4; + + GUIStyle stageBoxStyle = GUI.skin.box; + EditorGUILayout.BeginVertical(stageBoxStyle); + Rect rect = EditorGUILayout.GetControlRect(true); + + // Don't use PrefixLabel() because it will link the enabled status of field and label + GUIContent label = new GUIContent(InspectorUtility.NicifyClassName(stage.ToString())); + if (m_stageError[index]) + label.image = EditorGUIUtility.IconContent("console.warnicon.sml").image; + float labelWidth = EditorGUIUtility.labelWidth - (indentOffset + EditorGUI.indentLevel * 15); + Rect r = rect; r.width = labelWidth; + EditorGUI.LabelField(r, label); + r = rect; r.width -= labelWidth; r.x += labelWidth; + GUI.enabled = !StageIsLocked(stage); + int newSelection = EditorGUI.Popup(r, m_stageState[index], sStageData[index].PopupOptions); + GUI.enabled = true; + + Type type = sStageData[index].types[newSelection]; + if (newSelection != m_stageState[index]) + { + SetPipelineStage(stage, type); + if (newSelection != 0) + sStageData[index].IsExpanded = true; + UpdateInstanceData(); // because we changed it + return; + } + if (type != null) + { + Rect stageRect = new Rect( + rect.x - indentOffset, rect.y, rect.width + indentOffset, rect.height); + sStageData[index].IsExpanded = EditorGUI.Foldout( + stageRect, sStageData[index].IsExpanded, GUIContent.none, true); + if (sStageData[index].IsExpanded) + { + // Make the editor for that stage + UnityEditor.Editor e = GetEditorForPipelineStage(stage); + if (e != null) + { + ++EditorGUI.indentLevel; + EditorGUILayout.Separator(); + e.OnInspectorGUI(); + EditorGUILayout.Separator(); + --EditorGUI.indentLevel; + } + } + } + EditorGUILayout.EndVertical(); + } + } + + bool StageIsLocked(CinemachineCore.Stage stage) + { + CinemachineCore.Stage[] locked = Target.m_LockStageInInspector; + if (locked != null) + for (int i = 0; i < locked.Length; ++i) + if (locked[i] == stage) + return true; + return false; + } + + UnityEditor.Editor GetEditorForPipelineStage(CinemachineCore.Stage stage) + { + if (m_componentEditors != null) + { + foreach (UnityEditor.Editor e in m_componentEditors) + { + if (e != null) + { + CinemachineComponentBase c = e.target as CinemachineComponentBase; + if (c != null && c.Stage == stage) + return e; + } + } + } + return null; + } + + /// + /// Register with CinemachineVirtualCamera to create the pipeline in an undo-friendly manner + /// + [InitializeOnLoad] + class CreatePipelineWithUndo + { + static CreatePipelineWithUndo() + { + CinemachineVirtualCamera.CreatePipelineOverride = + (CinemachineVirtualCamera vcam, string name, CinemachineComponentBase[] copyFrom) => + { + // Create a new pipeline + GameObject go = InspectorUtility.CreateGameObject(name); + Undo.RegisterCreatedObjectUndo(go, "created pipeline"); + Undo.SetTransformParent(go.transform, vcam.transform, "parenting pipeline"); + Undo.AddComponent(go); + + // If copying, transfer the components + if (copyFrom != null) + { + foreach (Component c in copyFrom) + { + Component copy = Undo.AddComponent(go, c.GetType()); + Undo.RecordObject(copy, "copying pipeline"); + ReflectionHelpers.CopyFields(c, copy); + } + } + return go.transform; + }; + CinemachineVirtualCamera.DestroyPipelineOverride = (GameObject pipeline) => + { + Undo.DestroyObjectImmediate(pipeline); + }; + } + } + + void SetPipelineStage(CinemachineCore.Stage stage, Type type) + { + Undo.SetCurrentGroupName("Cinemachine pipeline change"); + + // Get the existing components + Transform owner = Target.GetComponentOwner(); + + CinemachineComponentBase[] components = owner.GetComponents(); + if (components == null) + components = new CinemachineComponentBase[0]; + + // Find an appropriate insertion point + int numComponents = components.Length; + int insertPoint = 0; + for (insertPoint = 0; insertPoint < numComponents; ++insertPoint) + if (components[insertPoint].Stage >= stage) + break; + + // Remove the existing components at that stage + for (int i = numComponents - 1; i >= 0; --i) + { + if (components[i].Stage == stage) + { + Undo.DestroyObjectImmediate(components[i]); + components[i] = null; + --numComponents; + if (i < insertPoint) + --insertPoint; + } + } + + // Add the new stage + if (type != null) + { + MonoBehaviour b = Undo.AddComponent(owner.gameObject, type) as MonoBehaviour; + while (numComponents-- > insertPoint) + UnityEditorInternal.ComponentUtility.MoveComponentDown(b); + } + } + + // This code dynamically discovers eligible classes and builds the menu + // data for the various component pipeline stages. + static void UpdateStaticData() + { + if (sStageData != null) + return; + sStageData = new StageData[Enum.GetValues(typeof(CinemachineCore.Stage)).Length]; + + var stageTypes = new List[Enum.GetValues(typeof(CinemachineCore.Stage)).Length]; + for (int i = 0; i < stageTypes.Length; ++i) + { + sStageData[i].Name = ((CinemachineCore.Stage)i).ToString(); + stageTypes[i] = new List(); + } + + // Get all ICinemachineComponents + var allTypes + = ReflectionHelpers.GetTypesInAllDependentAssemblies( + (Type t) => typeof(CinemachineComponentBase).IsAssignableFrom(t) && !t.IsAbstract); + + // Create a temp game object so we can instance behaviours + GameObject go = new GameObject("Cinemachine Temp Object"); + go.hideFlags = HideFlags.DontSaveInBuild | HideFlags.DontSaveInEditor; + foreach (Type t in allTypes) + { + MonoBehaviour b = go.AddComponent(t) as MonoBehaviour; + CinemachineComponentBase c = b != null ? (CinemachineComponentBase)b : null; + if (c != null) + { + CinemachineCore.Stage stage = c.Stage; + stageTypes[(int)stage].Add(t); + } + } + GameObject.DestroyImmediate(go); + + // Create the static lists + for (int i = 0; i < stageTypes.Length; ++i) + { + stageTypes[i].Insert(0, null); // first item is "none" + sStageData[i].types = stageTypes[i].ToArray(); + GUIContent[] names = new GUIContent[sStageData[i].types.Length]; + for (int n = 0; n < names.Length; ++n) + { + if (n == 0) + { + bool useSimple + = (i == (int)CinemachineCore.Stage.Aim) + || (i == (int)CinemachineCore.Stage.Body); + names[n] = new GUIContent((useSimple) ? "Do nothing" : "none"); + } + else + names[n] = new GUIContent(InspectorUtility.NicifyClassName(sStageData[i].types[n].Name)); + } + sStageData[i].PopupOptions = names; + } + } + + void UpdateInstanceData() + { + // Invalidate the target's cache - this is to support Undo + Target.InvalidateComponentPipeline(); + UpdateComponentEditors(); + UpdateStageState(m_components); + } + + // This code dynamically builds editors for the pipeline components. + // Expansion state is cached statically to preserve foldout state. + void UpdateComponentEditors() + { + CinemachineComponentBase[] components = Target.GetComponentPipeline(); + int numComponents = components != null ? components.Length : 0; + if (m_components == null || m_components.Length != numComponents) + m_components = new CinemachineComponentBase[numComponents]; + bool dirty = (numComponents == 0); + for (int i = 0; i < numComponents; ++i) + { + if (components[i] != m_components[i]) + { + dirty = true; + m_components[i] = components[i]; + } + } + if (dirty) + { + // Destroy the subeditors + if (m_componentEditors != null) + foreach (UnityEditor.Editor e in m_componentEditors) + if (e != null) + UnityEngine.Object.DestroyImmediate(e); + + // Create new editors + m_componentEditors = new UnityEditor.Editor[numComponents]; + for (int i = 0; i < numComponents; ++i) + { + MonoBehaviour b = components[i] as MonoBehaviour; + if (b != null) + CreateCachedEditor(b, null, ref m_componentEditors[i]); + } + } + } + + void UpdateStageState(CinemachineComponentBase[] components) + { + m_stageState = new int[Enum.GetValues(typeof(CinemachineCore.Stage)).Length]; + m_stageError = new bool[Enum.GetValues(typeof(CinemachineCore.Stage)).Length]; + foreach (var c in components) + { + CinemachineCore.Stage stage = c.Stage; + int index = 0; + for (index = sStageData[(int)stage].types.Length - 1; index > 0; --index) + if (sStageData[(int)stage].types[index] == c.GetType()) + break; + m_stageState[(int)stage] = index; + m_stageError[(int)stage] = !c.IsValid; + } + } + + // Because the cinemachine components are attached to hidden objects, their + // gizmos don't get drawn by default. We have to do it explicitly. + [InitializeOnLoad] + static class CollectGizmoDrawers + { + static CollectGizmoDrawers() + { + m_GizmoDrawers = new Dictionary(); + string definedIn = typeof(CinemachineComponentBase).Assembly.GetName().Name; + Assembly[] assemblies = AppDomain.CurrentDomain.GetAssemblies(); + foreach (Assembly assembly in assemblies) + { + // Note that we have to call GetName().Name. Just GetName() will not work. + if ((!assembly.GlobalAssemblyCache) + && ((assembly.GetName().Name == definedIn) + || assembly.GetReferencedAssemblies().Any(a => a.Name == definedIn))) + { + try + { + foreach (var type in assembly.GetTypes()) + { + try + { + bool added = false; + foreach (var method in type.GetMethods( + BindingFlags.Public | BindingFlags.NonPublic | BindingFlags.Static)) + { + if (added) + break; + if (!method.IsStatic) + continue; + var attributes = method.GetCustomAttributes(typeof(DrawGizmo), true) as DrawGizmo[]; + foreach (var a in attributes) + { + if (typeof(CinemachineComponentBase).IsAssignableFrom(a.drawnType)) + { + m_GizmoDrawers.Add(a.drawnType, method); + added = true; + break; + } + } + } + } + catch (System.Exception) {} // Just skip uncooperative types + } + } + catch (System.Exception) {} // Just skip uncooperative assemblies + } + } + } + public static Dictionary m_GizmoDrawers; + } + + [DrawGizmo(GizmoType.Active | GizmoType.InSelectionHierarchy, typeof(CinemachineVirtualCamera))] + internal static void DrawVirtualCameraGizmos(CinemachineVirtualCamera vcam, GizmoType selectionType) + { + var pipeline = vcam.GetComponentPipeline(); + foreach (var c in pipeline) + { + MethodInfo method; + if (CollectGizmoDrawers.m_GizmoDrawers.TryGetValue(c.GetType(), out method)) + { + if (method != null) + method.Invoke(null, new object[] { c, selectionType }); + } + } + } + } +} diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Editor/Editors/CinemachineVirtualCameraEditor.cs.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Editor/Editors/CinemachineVirtualCameraEditor.cs.meta" new file mode 100644 index 00000000..14d6e190 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Editor/Editors/CinemachineVirtualCameraEditor.cs.meta" @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: a63f9f2267c36684e855add13ad5499f +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Editor/EventHelpers.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Editor/EventHelpers.meta" new file mode 100644 index 00000000..124c1a93 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Editor/EventHelpers.meta" @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 3ee56510c2623c54daa99a3748f6f438 +folderAsset: yes +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Editor/EventHelpers/CinemachineTriggerActionEditor.cs" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Editor/EventHelpers/CinemachineTriggerActionEditor.cs" new file mode 100644 index 00000000..2bf171bd --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Editor/EventHelpers/CinemachineTriggerActionEditor.cs" @@ -0,0 +1,153 @@ +using UnityEngine; +using UnityEditor; +using System.Collections.Generic; +using UnityEngine.Playables; + +namespace Cinemachine.Editor +{ + [CustomEditor(typeof(CinemachineTriggerAction))] + internal class CinemachineTriggerActionEditor : BaseEditor + { + const int vSpace = 2; + CinemachineTriggerAction.ActionSettings def + = new CinemachineTriggerAction.ActionSettings(); // to access name strings + + static bool mEnterExpanded; + static bool mExitExpanded; + + SerializedProperty[] mRepeatProperties = new SerializedProperty[2]; + GUIContent mRepeatLabel; + GUIContent[] mRepeatSubLabels = new GUIContent[2]; + + GUIStyle mFoldoutStyle; + + private void OnEnable() + { + mRepeatProperties[0] = FindProperty(x => x.m_SkipFirst); + mRepeatProperties[1] = FindProperty(x => x.m_Repeating); + mRepeatLabel = new GUIContent( + mRepeatProperties[0].displayName, mRepeatProperties[0].tooltip); + mRepeatSubLabels[0] = GUIContent.none; + mRepeatSubLabels[1] = new GUIContent( + mRepeatProperties[1].displayName, mRepeatProperties[1].tooltip); + } + + protected override List GetExcludedPropertiesInInspector() + { + List excluded = base.GetExcludedPropertiesInInspector(); + excluded.Add(FieldPath(x => x.m_SkipFirst)); + excluded.Add(FieldPath(x => x.m_Repeating)); + excluded.Add(FieldPath(x => x.m_OnObjectEnter)); + excluded.Add(FieldPath(x => x.m_OnObjectExit)); + return excluded; + } + + public override void OnInspectorGUI() + { + BeginInspector(); + DrawRemainingPropertiesInInspector(); + InspectorUtility.MultiPropertyOnLine( + EditorGUILayout.GetControlRect(), mRepeatLabel, + mRepeatProperties, mRepeatSubLabels); + EditorGUILayout.Space(); + mEnterExpanded = DrawActionSettings(FindProperty(x => x.m_OnObjectEnter), mEnterExpanded); + mExitExpanded = DrawActionSettings(FindProperty(x => x.m_OnObjectExit), mExitExpanded); + } + + bool DrawActionSettings(SerializedProperty property, bool expanded) + { + if (mFoldoutStyle == null) + mFoldoutStyle = new GUIStyle(EditorStyles.foldout) { fontStyle = FontStyle.Bold }; + + Rect r = EditorGUILayout.GetControlRect(); + expanded = EditorGUI.Foldout(r, expanded, property.displayName, true, mFoldoutStyle); + if (expanded) + { + SerializedProperty actionProp = property.FindPropertyRelative(() => def.m_Action); + EditorGUILayout.PropertyField(actionProp); + + SerializedProperty targetProp = property.FindPropertyRelative(() => def.m_Target); + bool isCustom = (actionProp.intValue == (int)CinemachineTriggerAction.ActionSettings.Mode.Custom); + if (!isCustom) + EditorGUILayout.PropertyField(targetProp); + + bool isBoost = actionProp.intValue == (int)CinemachineTriggerAction.ActionSettings.Mode.PriorityBoost; + if (isBoost) + EditorGUILayout.PropertyField(property.FindPropertyRelative(() => def.m_BoostAmount)); + + bool isPlay = actionProp.intValue == (int)CinemachineTriggerAction.ActionSettings.Mode.Play; + if (isPlay) + { + SerializedProperty[] props = new SerializedProperty[2] + { + property.FindPropertyRelative(() => def.m_StartTime), + property.FindPropertyRelative(() => def.m_Mode) + }; + GUIContent[] sublabels = new GUIContent[2] + { + GUIContent.none, new GUIContent("s", props[1].tooltip) + }; + InspectorUtility.MultiPropertyOnLine( + EditorGUILayout.GetControlRect(), null, props, sublabels); + } + + if (actionProp.intValue == (int)CinemachineTriggerAction.ActionSettings.Mode.Custom) + { + EditorGUILayout.HelpBox("Use the Event() list below to call custom methods", MessageType.Info); + } + + if (isBoost) + { + if (GetTargetComponent(targetProp.objectReferenceValue) == null) + EditorGUILayout.HelpBox("Target must be a CinemachineVirtualCameraBase in order to boost priority", MessageType.Warning); + } + + bool isEnableDisable = (actionProp.intValue == (int)CinemachineTriggerAction.ActionSettings.Mode.Enable + || actionProp.intValue == (int)CinemachineTriggerAction.ActionSettings.Mode.Disable); + if (isEnableDisable) + { + var value = targetProp.objectReferenceValue; + if (value != null && (value as Behaviour) == null) + EditorGUILayout.HelpBox("Target must be a Behaviour in order to Enable/Disable", MessageType.Warning); + } + + bool isPlayStop = isPlay + || actionProp.intValue == (int)CinemachineTriggerAction.ActionSettings.Mode.Stop; + if (isPlayStop) + { + if (GetTargetComponent(targetProp.objectReferenceValue) == null + && GetTargetComponent(targetProp.objectReferenceValue) == null) + { + EditorGUILayout.HelpBox("Target must have a PlayableDirector or Animator in order to Play/Stop", MessageType.Warning); + } + } + + if (!isCustom && targetProp.objectReferenceValue == null) + EditorGUILayout.HelpBox("No action will be taken because target is not valid", MessageType.Info); + + EditorGUILayout.Space(); + EditorGUILayout.LabelField("This event will be invoked. Add calls to custom methods here:"); + EditorGUILayout.PropertyField(property.FindPropertyRelative(() => def.m_Event)); + } + property.serializedObject.ApplyModifiedProperties(); + return expanded; + } + + T GetTargetComponent(UnityEngine.Object obj) where T : Behaviour + { + UnityEngine.Object currentTarget = obj; + if (currentTarget != null) + { + GameObject targetGameObject = currentTarget as GameObject; + Behaviour targetBehaviour = currentTarget as Behaviour; + if (targetBehaviour != null) + targetGameObject = targetBehaviour.gameObject; + if (targetBehaviour is T) + return targetBehaviour as T; + if (targetGameObject != null) + return targetGameObject.GetComponent(); + } + return null; + } + } +} diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Editor/EventHelpers/CinemachineTriggerActionEditor.cs.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Editor/EventHelpers/CinemachineTriggerActionEditor.cs.meta" new file mode 100644 index 00000000..6d14b778 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Editor/EventHelpers/CinemachineTriggerActionEditor.cs.meta" @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: c5d95ccadebafc84b8226853d987217d +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Editor/Experimental.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Editor/Experimental.meta" new file mode 100644 index 00000000..543ba0fb --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Editor/Experimental.meta" @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 351cec6faf82a1848a52b8fd995c6c25 +folderAsset: yes +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Editor/Experimental/CinemachineNewFreeLookEditor.cs" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Editor/Experimental/CinemachineNewFreeLookEditor.cs" new file mode 100644 index 00000000..5930387d --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Editor/Experimental/CinemachineNewFreeLookEditor.cs" @@ -0,0 +1,307 @@ +#if CINEMACHINE_EXPERIMENTAL_VCAM +using UnityEngine; +using UnityEditor; +using Cinemachine.Editor; +using System.Collections.Generic; +using Cinemachine.Utility; + +namespace Cinemachine +{ + [CustomEditor(typeof(CinemachineNewFreeLook))] + sealed class CinemachineNewFreeLookEditor + : CinemachineVirtualCameraBaseEditor + { + GUIContent[] mRigNames = new GUIContent[] + { new GUIContent("Top Rig"), new GUIContent("Bottom Rig") }; + + GUIContent[] mOrbitNames = new GUIContent[] + { new GUIContent("Top Rig"), new GUIContent("Main Rig"), new GUIContent("Bottom Rig") }; + + GUIContent mAllLensLabel = new GUIContent( + "Customize", "Custom settings for this rig. If unchecked, main rig settins will be used"); + + VcamPipelineStageSubeditorSet mPipelineSet = new VcamPipelineStageSubeditorSet(); + + protected override List GetExcludedPropertiesInInspector() + { + List excluded = base.GetExcludedPropertiesInInspector(); + excluded.Add(FieldPath(x => x.m_Rigs)); // can't use HideInInspector for this + excluded.Add(FieldPath(x => x.m_Orbits)); + excluded.Add(FieldPath(x => x.m_SplineCurvature)); + return excluded; + } + + protected override void OnEnable() + { + base.OnEnable(); + mPipelineSet.CreateSubeditors(this); + } + + protected override void OnDisable() + { + mPipelineSet.Shutdown(); + base.OnDisable(); + } + + public override void OnInspectorGUI() + { + // Ordinary properties + BeginInspector(); + DrawHeaderInInspector(); + DrawPropertyInInspector(FindProperty(x => x.m_Priority)); + DrawTargetsInInspector(FindProperty(x => x.m_Follow), FindProperty(x => x.m_LookAt)); + DrawRemainingPropertiesInInspector(); + + // Orbits + EditorGUILayout.Space(); + EditorGUILayout.LabelField("Orbits", EditorStyles.boldLabel); + SerializedProperty orbits = FindProperty(x => x.m_Orbits); + EditorGUI.BeginChangeCheck(); + for (int i = 0; i < 3; ++i) + { + var o = orbits.GetArrayElementAtIndex(i); + Rect rect = EditorGUILayout.GetControlRect(true); + InspectorUtility.MultiPropertyOnLine( + rect, mOrbitNames[i], + new [] { o.FindPropertyRelative(() => Target.m_Orbits[i].m_Height), + o.FindPropertyRelative(() => Target.m_Orbits[i].m_Radius) }, + null); + } + EditorGUILayout.PropertyField(FindProperty(x => x.m_SplineCurvature)); + if (EditorGUI.EndChangeCheck()) + serializedObject.ApplyModifiedProperties(); + + // Pipeline Stages + EditorGUILayout.Space(); + EditorGUILayout.LabelField("Main Rig", EditorStyles.boldLabel); + var components = Target.ComponentCache; + for (int i = 0; i < mPipelineSet.m_subeditors.Length; ++i) + { + var ed = mPipelineSet.m_subeditors[i]; + if (ed == null) + continue; + if (!ed.HasImplementation) + continue; + if ((CinemachineCore.Stage)i == CinemachineCore.Stage.Body) + ed.TypeIsLocked = true; + ed.OnInspectorGUI(components[i]); // may destroy component + } + + // Rigs + EditorGUILayout.Space(); + SerializedProperty rigs = FindProperty(x => x.m_Rigs); + for (int i = 0; i < 2; ++i) + { + EditorGUILayout.Separator(); + DrawRigEditor(i, rigs.GetArrayElementAtIndex(i)); + } + + // Extensions + DrawExtensionsWidgetInInspector(); + } + + Vector3 mPreviousPosition; // for position dragging + private void OnSceneGUI() + { + if (!Target.UserIsDragging) + mPreviousPosition = Target.transform.position; + if (Selection.Contains(Target.gameObject) && Tools.current == Tool.Move + && Event.current.type == EventType.MouseDrag) + { + // User might be dragging our position handle + Target.UserIsDragging = true; + Vector3 delta = Target.transform.position - mPreviousPosition; + if (!delta.AlmostZero()) + { + mPipelineSet.OnPositionDragged(delta); + mPreviousPosition = Target.transform.position; + + // Adjust the rigs height and scale + Transform follow = Target.Follow; + if (follow != null) + { + Undo.RegisterCompleteObjectUndo(Target, "Camera drag"); + Vector3 up = Target.State.ReferenceUp; + float heightDelta = Vector3.Dot(up, delta); + + Vector3 fwd = (Target.State.FinalPosition - follow.position).normalized; + float oldRadius = Target.GetLocalPositionForCameraFromInput( + Target.m_VerticalAxis.Value).magnitude; + float newRadius = Mathf.Max(0.01f, oldRadius + Vector3.Dot(fwd, delta)); + for (int i = 0; i < 3; ++i) + { + Target.m_Orbits[i].m_Height += heightDelta; + if (oldRadius > 0.001f) + Target.m_Orbits[i].m_Radius *= newRadius / oldRadius; + } + } + } + } + else if (GUIUtility.hotControl == 0 && Target.UserIsDragging) + { + // We're not dragging anything now, but we were + UnityEditorInternal.InternalEditorUtility.RepaintAllViews(); + Target.UserIsDragging = false; + } + } + + void DrawRigEditor(int rigIndex, SerializedProperty rig) + { + const float kBoxMargin = 3; + + CinemachineNewFreeLook.Rig def = new CinemachineNewFreeLook.Rig(); // for properties + EditorGUILayout.BeginVertical(GUI.skin.box); + EditorGUIUtility.labelWidth -= kBoxMargin; + EditorGUILayout.LabelField(new GUIContent(mRigNames[rigIndex]), EditorStyles.boldLabel); + + ++EditorGUI.indentLevel; + var components = Target.ComponentCache; + if (DrawFoldoutPropertyWithEnabledCheckbox( + rig.FindPropertyRelative(() => def.m_CustomLens), + rig.FindPropertyRelative(() => def.m_Lens))) + { + Target.m_Rigs[rigIndex].m_Lens = Target.m_Lens; + } + + int index = (int)CinemachineCore.Stage.Body; + if (components[index] is CinemachineTransposer) + { + if (DrawFoldoutPropertyWithEnabledCheckbox( + rig.FindPropertyRelative(() => def.m_CustomBody), + rig.FindPropertyRelative(() => def.m_Body))) + { + Target.m_Rigs[rigIndex].m_Body.PullFrom( + components[index] as CinemachineTransposer); + } + } + + index = (int)CinemachineCore.Stage.Aim; + if (components[index] is CinemachineComposer) + { + if (DrawFoldoutPropertyWithEnabledCheckbox( + rig.FindPropertyRelative(() => def.m_CustomAim), + rig.FindPropertyRelative(() => def.m_Aim))) + { + Target.m_Rigs[rigIndex].m_Aim.PullFrom( + components[index] as CinemachineComposer); + } + } + + index = (int)CinemachineCore.Stage.Noise; + if (components[index] is CinemachineBasicMultiChannelPerlin) + { + if (DrawFoldoutPropertyWithEnabledCheckbox( + rig.FindPropertyRelative(() => def.m_CustomNoise), + rig.FindPropertyRelative(() => def.m_Noise))) + { + Target.m_Rigs[rigIndex].m_Noise.PullFrom( + components[index] as CinemachineBasicMultiChannelPerlin); + } + } + --EditorGUI.indentLevel; + EditorGUILayout.EndVertical(); + EditorGUIUtility.labelWidth += kBoxMargin; + } + + // Returns true if default value should be applied + bool DrawFoldoutPropertyWithEnabledCheckbox( + SerializedProperty enabledProperty, SerializedProperty property) + { + GUIContent label = new GUIContent(property.displayName, property.tooltip); + Rect rect = EditorGUILayout.GetControlRect(true, + (enabledProperty.boolValue && property.isExpanded) + ? EditorGUI.GetPropertyHeight(property) + : EditorGUIUtility.singleLineHeight); + Rect r = rect; r.height = EditorGUIUtility.singleLineHeight; + if (!enabledProperty.boolValue) + EditorGUI.LabelField(r, label); + + float labelWidth = EditorGUIUtility.labelWidth; + bool newValue = EditorGUI.ToggleLeft( + new Rect(labelWidth, r.y, r.width - labelWidth, r.height), + mAllLensLabel, enabledProperty.boolValue); + if (newValue != enabledProperty.boolValue) + { + enabledProperty.boolValue = newValue; + enabledProperty.serializedObject.ApplyModifiedProperties(); + property.isExpanded = newValue; + return true; + } + if (newValue == true) + { + EditorGUI.BeginChangeCheck(); + EditorGUI.PropertyField(rect, property, property.isExpanded); + if (EditorGUI.EndChangeCheck()) + enabledProperty.serializedObject.ApplyModifiedProperties(); + } + return false; + } + + [DrawGizmo(GizmoType.Active | GizmoType.Selected, typeof(CinemachineNewFreeLook))] + private static void DrawFreeLookGizmos(CinemachineNewFreeLook vcam, GizmoType selectionType) + { + // Standard frustum and logo + CinemachineBrainEditor.DrawVirtualCameraBaseGizmos(vcam, selectionType); + + Color originalGizmoColour = Gizmos.color; + bool isActiveVirtualCam = CinemachineCore.Instance.IsLive(vcam); + Gizmos.color = isActiveVirtualCam + ? CinemachineSettings.CinemachineCoreSettings.ActiveGizmoColour + : CinemachineSettings.CinemachineCoreSettings.InactiveGizmoColour; + + if (vcam.Follow != null) + { + Vector3 pos = vcam.Follow.position; + Vector3 up = Vector3.up; + CinemachineBrain brain = CinemachineCore.Instance.FindPotentialTargetBrain(vcam); + if (brain != null) + up = brain.DefaultWorldUp; + + var middleRig = vcam.GetComponent(); + if (middleRig != null) + { + float scale = vcam.m_RadialAxis.Value; + Quaternion orient = middleRig.GetReferenceOrientation(up); + up = orient * Vector3.up; + var orbital = middleRig as CinemachineOrbitalTransposer; + if (orbital != null) + { + float rotation = orbital.m_XAxis.Value + orbital.m_Heading.m_Bias; + orient = Quaternion.AngleAxis(rotation, up) * orient; + } + CinemachineOrbitalTransposerEditor.DrawCircleAtPointWithRadius( + pos + up * vcam.m_Orbits[0].m_Height * scale, + orient, vcam.m_Orbits[0].m_Radius * scale); + CinemachineOrbitalTransposerEditor.DrawCircleAtPointWithRadius( + pos + up * vcam.m_Orbits[1].m_Height * scale, + orient, vcam.m_Orbits[1].m_Radius * scale); + CinemachineOrbitalTransposerEditor.DrawCircleAtPointWithRadius( + pos + up * vcam.m_Orbits[2].m_Height * scale, + orient, vcam.m_Orbits[2].m_Radius * scale); + + DrawCameraPath(pos, orient, vcam); + } + } + Gizmos.color = originalGizmoColour; + } + + private static void DrawCameraPath( + Vector3 atPos, Quaternion orient, CinemachineNewFreeLook vcam) + { + Matrix4x4 prevMatrix = Gizmos.matrix; + Gizmos.matrix = Matrix4x4.TRS(atPos, orient, Vector3.one); + + const int kNumSteps = 20; + Vector3 currPos = vcam.GetLocalPositionForCameraFromInput(0f); + for (int i = 1; i < kNumSteps + 1; ++i) + { + float t = (float)i / (float)kNumSteps; + Vector3 nextPos = vcam.GetLocalPositionForCameraFromInput(t); + Gizmos.DrawLine(currPos, nextPos); + currPos = nextPos; + } + Gizmos.matrix = prevMatrix; + } + } +} +#endif diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Editor/Experimental/CinemachineNewFreeLookEditor.cs.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Editor/Experimental/CinemachineNewFreeLookEditor.cs.meta" new file mode 100644 index 00000000..9551fe7d --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Editor/Experimental/CinemachineNewFreeLookEditor.cs.meta" @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 933e2b6843fbbbc4c8cabeead6fc1fae +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Editor/Experimental/CinemachineNewVirtualCameraEditor.cs" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Editor/Experimental/CinemachineNewVirtualCameraEditor.cs" new file mode 100644 index 00000000..d98739bf --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Editor/Experimental/CinemachineNewVirtualCameraEditor.cs" @@ -0,0 +1,78 @@ +#if CINEMACHINE_EXPERIMENTAL_VCAM +using UnityEngine; +using UnityEditor; +using Cinemachine.Editor; +using Cinemachine.Utility; + +namespace Cinemachine +{ + [CustomEditor(typeof(CinemachineNewVirtualCamera))] + sealed class CinemachineNewVirtualCameraEditor + : CinemachineVirtualCameraBaseEditor + { + VcamPipelineStageSubeditorSet mPipelineSet = new VcamPipelineStageSubeditorSet(); + + protected override void OnEnable() + { + base.OnEnable(); + mPipelineSet.CreateSubeditors(this); + } + + protected override void OnDisable() + { + mPipelineSet.Shutdown(); + base.OnDisable(); + } + + public override void OnInspectorGUI() + { + // Ordinary properties + BeginInspector(); + DrawHeaderInInspector(); + DrawPropertyInInspector(FindProperty(x => x.m_Priority)); + DrawTargetsInInspector(FindProperty(x => x.m_Follow), FindProperty(x => x.m_LookAt)); + DrawRemainingPropertiesInInspector(); + + // Pipeline Stages + var components = Target.ComponentCache; + for (int i = 0; i < mPipelineSet.m_subeditors.Length; ++i) + { + var ed = mPipelineSet.m_subeditors[i]; + if (ed == null) + continue; + if (!ed.HasImplementation) + continue; + ed.OnInspectorGUI(components[i]); // may destroy component + } + + // Extensions + DrawExtensionsWidgetInInspector(); + } + + Vector3 mPreviousPosition; // for position dragging + private void OnSceneGUI() + { + if (!Target.UserIsDragging) + mPreviousPosition = Target.transform.position; + if (Selection.Contains(Target.gameObject) && Tools.current == Tool.Move + && Event.current.type == EventType.MouseDrag) + { + // User might be dragging our position handle + Target.UserIsDragging = true; + Vector3 delta = Target.transform.position - mPreviousPosition; + if (!delta.AlmostZero()) + { + mPipelineSet.OnPositionDragged(delta); + mPreviousPosition = Target.transform.position; + } + } + else if (GUIUtility.hotControl == 0 && Target.UserIsDragging) + { + // We're not dragging anything now, but we were + UnityEditorInternal.InternalEditorUtility.RepaintAllViews(); + Target.UserIsDragging = false; + } + } + } +} +#endif diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Editor/Experimental/CinemachineNewVirtualCameraEditor.cs.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Editor/Experimental/CinemachineNewVirtualCameraEditor.cs.meta" new file mode 100644 index 00000000..3849ef48 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Editor/Experimental/CinemachineNewVirtualCameraEditor.cs.meta" @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 4692eb7a7fa5c53458eb32a04df6c6a0 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Editor/Experimental/VcamStageEditor.cs" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Editor/Experimental/VcamStageEditor.cs" new file mode 100644 index 00000000..c1d208ba --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Editor/Experimental/VcamStageEditor.cs" @@ -0,0 +1,314 @@ +#if CINEMACHINE_EXPERIMENTAL_VCAM +using UnityEngine; +using UnityEditor; +using System; +using System.Collections.Generic; +using Cinemachine.Utility; +using System.Reflection; + +namespace Cinemachine.Editor +{ + internal class VcamStageEditor + { + // Static state and caches - Call UpdateStaticData() to refresh this + struct StageData + { + string ExpandedKey { get { return "Cinemachine_Vcam_Stage_Expanded_" + Name; } } + public bool IsExpanded + { + get { return EditorPrefs.GetBool(ExpandedKey, false); } + set { EditorPrefs.SetBool(ExpandedKey, value); } + } + public string Name; + public Type[] types; // first entry is null + public GUIContent[] PopupOptions; + } + static StageData[] sStageData = null; + + [InitializeOnLoad] + class EditorInitialize + { + // This code dynamically discovers eligible classes and builds the menu + // data for the various component pipeline stages. + static EditorInitialize() + { + sStageData = new StageData[Enum.GetValues(typeof(CinemachineCore.Stage)).Length]; + + var stageTypes = new List[Enum.GetValues(typeof(CinemachineCore.Stage)).Length]; + for (int i = 0; i < stageTypes.Length; ++i) + { + sStageData[i].Name = ((CinemachineCore.Stage)i).ToString(); + stageTypes[i] = new List(); + } + + // Get all ICinemachineComponents + var allTypes + = ReflectionHelpers.GetTypesInAllDependentAssemblies( + (Type t) => typeof(CinemachineComponentBase).IsAssignableFrom(t) && !t.IsAbstract); + + // GML todo: use class attribute instead + // Create a temp game object so we can instance behaviours + GameObject go = new GameObject("Cinemachine Temp Object"); + go.hideFlags = HideFlags.DontSaveInBuild | HideFlags.DontSaveInEditor; + foreach (Type t in allTypes) + { + MonoBehaviour b = go.AddComponent(t) as MonoBehaviour; + CinemachineComponentBase c = b != null ? (CinemachineComponentBase)b : null; + if (c != null) + { + CinemachineCore.Stage stage = c.Stage; + stageTypes[(int)stage].Add(t); + } + } + GameObject.DestroyImmediate(go); + + // Create the static lists + for (int i = 0; i < stageTypes.Length; ++i) + { + stageTypes[i].Insert(0, null); // first item is "none" + sStageData[i].types = stageTypes[i].ToArray(); + GUIContent[] names = new GUIContent[sStageData[i].types.Length]; + for (int n = 0; n < names.Length; ++n) + { + if (n == 0) + { + bool useSimple + = (i == (int)CinemachineCore.Stage.Aim) + || (i == (int)CinemachineCore.Stage.Body); + names[n] = new GUIContent((useSimple) ? "Do nothing" : "none"); + } + else + names[n] = new GUIContent(InspectorUtility.NicifyClassName(sStageData[i].types[n].Name)); + } + sStageData[i].PopupOptions = names; + } + } + } + + int mStageSelection = 0; + bool mStageError = false; + CinemachineCore.Stage mStage; + CinemachineComponentBase mComponent; + UnityEditor.Editor mComponentEditor; + + // Target game object + public GameObject Target { get; private set; } + + // Call this from OnEnable() + public VcamStageEditor(CinemachineCore.Stage stage, GameObject target) + { + mStage = stage; + Target = target; + } + + ~VcamStageEditor() + { + Shutdown(); + } + + // Call this from OnDisable() + public void Shutdown() + { + if (mComponentEditor != null) + UnityEngine.Object.DestroyImmediate(mComponentEditor); + mComponentEditor = null; + Target = null; + mComponent = null; + } + + // The current editor for the component (may be null) + public UnityEditor.Editor ComponentEditor { get { return mComponentEditor; } } + + // Returns true if there are more than zero options for this pipeline stage + public bool HasImplementation { get { return sStageData[(int)mStage].PopupOptions.Length > 1; } } + + // Can the component type be changed by the user? + public bool TypeIsLocked { get; set; } + + // Call this from Editor's OnInspectorGUI - returns new component if user changes type + public void OnInspectorGUI(CinemachineComponentBase component) + { + if (component != mComponent) + { + if (mComponentEditor != null) + { + mComponentEditor.ResetTarget(); + UnityEngine.Object.DestroyImmediate(mComponentEditor); + } + mComponentEditor = null; + mComponent = component; + } + if (mComponent != null && mComponentEditor == null) + UnityEditor.Editor.CreateCachedEditor(mComponent, null, ref mComponentEditor); + mStageSelection = GetPopupIndexForComponent(mComponent); + mStageError = mComponent == null ? false : !mComponent.IsValid; + DrawComponentInspector(); + } + + private int GetPopupIndexForComponent(CinemachineComponentBase c) + { + if (c != null) + { + var types = sStageData[(int)mStage].types; + for (int i = types.Length-1; i > 0; --i) + if (c.GetType() == types[i]) + return i; + } + return 0; // none + } + + private void DrawComponentInspector() + { + const float kBoxMargin = 4; // GML wtf get rid of this + const float indentSize = 15; // GML wtf get rid of this + + int index = (int)mStage; + + EditorGUILayout.BeginVertical(GUI.skin.box); + EditorGUIUtility.labelWidth -= kBoxMargin; + + Rect rect = EditorGUILayout.GetControlRect(true); + + // Don't use PrefixLabel() because it will link the enabled status of field and label + GUIContent label = new GUIContent(InspectorUtility.NicifyClassName(mStage.ToString())); + if (mStageError) + label.image = EditorGUIUtility.IconContent("console.warnicon.sml").image; + float labelWidth = EditorGUIUtility.labelWidth - EditorGUI.indentLevel * indentSize; + Rect r = rect; r.width = labelWidth; r.x -= kBoxMargin; + EditorGUI.LabelField(r, label); + + r = rect; r.width -= labelWidth; r.x += labelWidth; + bool wasEnabled = GUI.enabled; + if (TypeIsLocked) + GUI.enabled = false; + int newSelection = EditorGUI.Popup(r, mStageSelection, sStageData[index].PopupOptions); + GUI.enabled = wasEnabled; + + Type type = sStageData[index].types[newSelection]; + if (newSelection != mStageSelection) + { + if (mComponent != null) + { + if (DestroyComponent != null) + DestroyComponent(mComponent); + } + if (newSelection != 0) + { + sStageData[index].IsExpanded = true; + if (SetComponent != null) + SetComponent(type); + } + mComponent = null; + GUIUtility.ExitGUI(); + return; // let the component editor be recreated + } + + // Draw the embedded editor + if (type != null) + { + r = new Rect(rect.x - kBoxMargin, rect.y, labelWidth, rect.height); + sStageData[index].IsExpanded = EditorGUI.Foldout( + r, sStageData[index].IsExpanded, GUIContent.none, true); + if (sStageData[index].IsExpanded) + { + // Make the editor for that stage + if (mComponentEditor != null) + { + ++EditorGUI.indentLevel; + EditorGUILayout.Separator(); + mComponentEditor.OnInspectorGUI(); + EditorGUILayout.Separator(); + --EditorGUI.indentLevel; + } + } + } + EditorGUILayout.EndVertical(); + EditorGUIUtility.labelWidth += kBoxMargin; + } + + public void OnPositionDragged(Vector3 delta) + { + if (mComponentEditor != null) + { + MethodInfo mi = mComponentEditor.GetType().GetMethod("OnVcamPositionDragged" + , BindingFlags.NonPublic | BindingFlags.Public | BindingFlags.Instance); + if (mi != null && mComponentEditor.target != null) + { + mi.Invoke(mComponentEditor, new object[] { delta } ); + } + } + } + + public delegate void DestroyComponentDelegate(CinemachineComponentBase component); + public DestroyComponentDelegate DestroyComponent; + + public delegate void SetComponentDelegate(Type type); + public SetComponentDelegate SetComponent; + } + + internal class VcamPipelineStageSubeditorSet + { + public VcamStageEditor[] m_subeditors; + + UnityEditor.Editor mParentEditor; + + public void CreateSubeditors(UnityEditor.Editor parentEditor) + { + mParentEditor = parentEditor; + m_subeditors = new VcamStageEditor[(int)CinemachineCore.Stage.Finalize]; + CinemachineNewVirtualCamera owner = mParentEditor == null + ? null : mParentEditor.target as CinemachineNewVirtualCamera; + if (owner == null) + return; + for (CinemachineCore.Stage stage = CinemachineCore.Stage.Body; + stage < CinemachineCore.Stage.Finalize; ++stage) + { + var ed = new VcamStageEditor(stage, owner.gameObject); + m_subeditors[(int)stage] = ed; + ed.SetComponent = (type) + => { + var vcam = mParentEditor.target as CinemachineNewVirtualCamera; + if (vcam != null) + { + var c = Undo.AddComponent(vcam.gameObject, type); + c.hideFlags |= HideFlags.HideInInspector; + vcam.InvalidateComponentCache(); + } + }; + ed.DestroyComponent = (component) + => { + var vcam = mParentEditor.target as CinemachineNewVirtualCamera; + if (vcam != null) + { + Undo.DestroyObjectImmediate(component); + vcam.InvalidateComponentCache(); + } + }; + } + } + + public void Shutdown() + { + if (m_subeditors != null) + { + for (int i = 0; i < m_subeditors.Length; ++i) + { + if (m_subeditors[i] != null) + m_subeditors[i].Shutdown(); + m_subeditors[i] = null; + } + m_subeditors = null; + } + mParentEditor = null; + } + + // Pass the dragged event down to the CM component editors + public void OnPositionDragged(Vector3 delta) + { + foreach (var e in m_subeditors) + if (e != null) + e.OnPositionDragged(delta); + } + } +} +#endif diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Editor/Experimental/VcamStageEditor.cs.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Editor/Experimental/VcamStageEditor.cs.meta" new file mode 100644 index 00000000..3ab9d5e0 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Editor/Experimental/VcamStageEditor.cs.meta" @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 68194b7bb9ff1c6489c9c3c87c68c2a4 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Editor/Impulse.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Editor/Impulse.meta" new file mode 100644 index 00000000..339d897e --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Editor/Impulse.meta" @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: ac4cc060534a50747a448a00776ed888 +folderAsset: yes +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Editor/Impulse/CinemachineCollisionImpulseSourceEditor.cs" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Editor/Impulse/CinemachineCollisionImpulseSourceEditor.cs" new file mode 100644 index 00000000..86bcf75e --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Editor/Impulse/CinemachineCollisionImpulseSourceEditor.cs" @@ -0,0 +1,25 @@ +using UnityEditor; +using UnityEngine; + +namespace Cinemachine.Editor +{ + [CustomEditor(typeof(CinemachineCollisionImpulseSource))] + internal sealed class CinemachineCollisionImpulseSourceEditor + : BaseEditor + { + public override void OnInspectorGUI() + { + BeginInspector(); + + EditorGUILayout.Separator(); + var collider = Target.GetComponent(); + var collider2D = Target.GetComponent(); + if ((collider == null || !collider.enabled) && (collider2D == null || !collider2D.enabled)) + EditorGUILayout.HelpBox( + "An active Collider or Collider2D component is required in order to detect collisions and generate Impulse events", + MessageType.Warning); + + DrawRemainingPropertiesInInspector(); + } + } +} diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Editor/Impulse/CinemachineCollisionImpulseSourceEditor.cs.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Editor/Impulse/CinemachineCollisionImpulseSourceEditor.cs.meta" new file mode 100644 index 00000000..01884864 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Editor/Impulse/CinemachineCollisionImpulseSourceEditor.cs.meta" @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 9cd1a769fbb1d1c47b4c22a04a64fa5f +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Editor/Impulse/CinemachineImpulseChannelPropertyDrawer.cs" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Editor/Impulse/CinemachineImpulseChannelPropertyDrawer.cs" new file mode 100644 index 00000000..bde744eb --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Editor/Impulse/CinemachineImpulseChannelPropertyDrawer.cs" @@ -0,0 +1,49 @@ +using UnityEngine; +using UnityEditor; + +namespace Cinemachine.Editor +{ + [CustomPropertyDrawer(typeof(CinemachineImpulseChannelPropertyAttribute))] + internal sealed class CinemachineImpulseChannelPropertyDrawer : PropertyDrawer + { + const float hSpace = 2; + GUIContent mAddLabel = new GUIContent("Edit...", "Add, remove, or rename channels"); + string[] mLayerList = null; + + void UpdateLayerList() + { + CinemachineImpulseChannels settings = CinemachineImpulseChannels.InstanceIfExists; + int numLayers = 0; + if (settings != null && settings.ImpulseChannels != null) + numLayers = settings.ImpulseChannels.Length; + numLayers = Mathf.Clamp(numLayers, 1, 31); + if (mLayerList == null || mLayerList.Length != numLayers) + mLayerList = new string[numLayers]; + for (int i = 0; i < numLayers; ++i) + { + mLayerList[i] = string.Format( + "{0}: {1}", i, + (settings == null || settings.ImpulseChannels.Length <= i) + ? "default" : settings.ImpulseChannels[i]); + } + } + + public override void OnGUI(Rect rect, SerializedProperty property, GUIContent label) + { + UpdateLayerList(); + float addWidth = GUI.skin.button.CalcSize(mAddLabel).x; + rect.width -= addWidth + hSpace; + int value = EditorGUI.MaskField(rect, label, property.intValue, mLayerList); + if (value != property.intValue) + { + property.intValue = value; + property.serializedObject.ApplyModifiedProperties(); + } + + rect.x += rect.width + hSpace; rect.width = addWidth; rect.height -= 1; + if (GUI.Button(rect, mAddLabel)) + if (CinemachineImpulseChannels.Instance != null) + Selection.activeObject = CinemachineImpulseChannels.Instance; + } + } +} diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Editor/Impulse/CinemachineImpulseChannelPropertyDrawer.cs.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Editor/Impulse/CinemachineImpulseChannelPropertyDrawer.cs.meta" new file mode 100644 index 00000000..05da5f3b --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Editor/Impulse/CinemachineImpulseChannelPropertyDrawer.cs.meta" @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 0803634542916d8498caef53ed5604db +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Editor/Impulse/CinemachineImpulseChannels.cs" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Editor/Impulse/CinemachineImpulseChannels.cs" new file mode 100644 index 00000000..d2cbfd6a --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Editor/Impulse/CinemachineImpulseChannels.cs" @@ -0,0 +1,69 @@ +using UnityEngine; +using System; +using UnityEditor; + +namespace Cinemachine.Editor +{ + /// + /// This class contains setting for the Impulse system. Specifically, it holds + /// the Impulse Channel definitions. These work like Unity Layers, you can + /// define and name them, and create masks to filter only the layers you want. + /// + [Serializable] + public class CinemachineImpulseChannels : ScriptableObject + { + static CinemachineImpulseChannels sInstance = null; + private static bool alreadySearched = false; + + /// Get the singleton instance of this object, or null if it doesn't exist + public static CinemachineImpulseChannels InstanceIfExists + { + get + { + if (!alreadySearched) + { + alreadySearched = true; + var guids = AssetDatabase.FindAssets("t:CinemachineImpulseChannels"); + for (int i = 0; i < guids.Length && sInstance == null; ++i) + sInstance = AssetDatabase.LoadAssetAtPath( + AssetDatabase.GUIDToAssetPath(guids[i])); + } + if (sInstance != null) + sInstance.EnsureDefaultLayer(); + return sInstance; + } + } + + /// Get the singleton instance of this object. Creates asset if nonexistant + public static CinemachineImpulseChannels Instance + { + get + { + if (InstanceIfExists == null) + { + string newAssetPath = EditorUtility.SaveFilePanelInProject( + "Create Impulse Channel Definition asset", "CinemachineImpulseChannels", "asset", + "This editor-only file will contain the Impulse channels for this project"); + if (!string.IsNullOrEmpty(newAssetPath)) + { + sInstance = CreateInstance(); + AssetDatabase.CreateAsset(sInstance, newAssetPath); + AssetDatabase.SaveAssets(); + AssetDatabase.Refresh(); + } + } + sInstance.EnsureDefaultLayer(); + return sInstance; + } + } + + // Make sure it has at least one layer in it + void EnsureDefaultLayer() + { + if (ImpulseChannels == null || ImpulseChannels.Length == 0) + ImpulseChannels = new string[] { "default" }; + } + + public string[] ImpulseChannels; + } +} diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Editor/Impulse/CinemachineImpulseChannels.cs.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Editor/Impulse/CinemachineImpulseChannels.cs.meta" new file mode 100644 index 00000000..6eac4956 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Editor/Impulse/CinemachineImpulseChannels.cs.meta" @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: a1728508674789b4e8539a2ad08ebc3f +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Editor/Impulse/CinemachineImpulseDefinitionPropertyDrawer.cs" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Editor/Impulse/CinemachineImpulseDefinitionPropertyDrawer.cs" new file mode 100644 index 00000000..a389a818 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Editor/Impulse/CinemachineImpulseDefinitionPropertyDrawer.cs" @@ -0,0 +1,88 @@ +using UnityEngine; +using UnityEditor; +using System.Collections.Generic; + +namespace Cinemachine.Editor +{ + [CustomPropertyDrawer(typeof(CinemachineImpulseDefinitionPropertyAttribute))] + internal sealed class CinemachineImpulseDefinitionPropertyDrawer : PropertyDrawer + { + const int vSpace = 2; + + float HeaderHeight { get { return EditorGUIUtility.singleLineHeight * 1.5f; } } + float DrawHeader(Rect rect, string text) + { + float delta = HeaderHeight - EditorGUIUtility.singleLineHeight; + rect.y += delta; rect.height -= delta; + EditorGUI.LabelField(rect, new GUIContent(text), EditorStyles.boldLabel); + return HeaderHeight; + } + + string HeaderText(SerializedProperty property) + { + var attrs = property.serializedObject.targetObject.GetType() + .GetCustomAttributes(typeof(HeaderAttribute), false); + if (attrs != null && attrs.Length > 0) + return ((HeaderAttribute)attrs[0]).header; + return null; + } + + List mHideProperties = new List(); + + public override float GetPropertyHeight(SerializedProperty prop, GUIContent label) + { + CinemachineImpulseDefinition myClass = null; // to access name strings + SignalSourceAsset asset = null; + float height = 0; + mHideProperties.Clear(); + string prefix = prop.name; + prop.NextVisible(true); // Skip outer foldout + do + { + if (!prop.propertyPath.StartsWith(prefix)) + break; + string header = HeaderText(prop); + if (header != null) + height += HeaderHeight + vSpace; + + // Do we hide this property? + bool hide = false; + if (prop.name == SerializedPropertyHelper.PropertyName(() => myClass.m_RawSignal)) + asset = prop.objectReferenceValue as SignalSourceAsset; + if (prop.name == SerializedPropertyHelper.PropertyName(() => myClass.m_RepeatMode)) + hide = asset == null || asset.SignalDuration <= 0; + else if (prop.name == SerializedPropertyHelper.PropertyName(() => myClass.m_Randomize)) + hide = asset == null || asset.SignalDuration > 0; + + if (hide) + mHideProperties.Add(prop.name); + else + height += EditorGUI.GetPropertyHeight(prop, false) + vSpace; + } while (prop.NextVisible(prop.isExpanded)); + return height; + } + + public override void OnGUI(Rect rect, SerializedProperty prop, GUIContent label) + { + string prefix = prop.name; + prop.NextVisible(true); // Skip outer foldout + do + { + if (!prop.propertyPath.StartsWith(prefix)) + break; + string header = HeaderText(prop); + if (header != null) + { + rect.height = HeaderHeight; + DrawHeader(rect, header); + rect.y += HeaderHeight + vSpace; + } + if (mHideProperties.Contains(prop.name)) + continue; + rect.height = EditorGUI.GetPropertyHeight(prop, false); + EditorGUI.PropertyField(rect, prop); + rect.y += rect.height + vSpace; + } while (prop.NextVisible(prop.isExpanded)); + } + } +} diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Editor/Impulse/CinemachineImpulseDefinitionPropertyDrawer.cs.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Editor/Impulse/CinemachineImpulseDefinitionPropertyDrawer.cs.meta" new file mode 100644 index 00000000..49a8fd22 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Editor/Impulse/CinemachineImpulseDefinitionPropertyDrawer.cs.meta" @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: b1a97a2b5515f5d49977e7e8add5b7a9 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Editor/Impulse/CinemachineImpulseEnvelopePropertyDrawer.cs" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Editor/Impulse/CinemachineImpulseEnvelopePropertyDrawer.cs" new file mode 100644 index 00000000..c408f04d --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Editor/Impulse/CinemachineImpulseEnvelopePropertyDrawer.cs" @@ -0,0 +1,99 @@ +using UnityEngine; +using UnityEditor; + +namespace Cinemachine.Editor +{ + [CustomPropertyDrawer(typeof(CinemachineImpulseEnvelopePropertyAttribute))] + internal sealed class CinemachineImpulseEnvelopePropertyDrawer : PropertyDrawer + { + const int vSpace = 2; + static bool mExpanded = true; + + CinemachineImpulseManager.EnvelopeDefinition myClass + = new CinemachineImpulseManager.EnvelopeDefinition(); // to access name strings + + public override void OnGUI(Rect rect, SerializedProperty property, GUIContent label) + { + float height = EditorGUIUtility.singleLineHeight; + rect.height = height; + mExpanded = EditorGUI.Foldout(rect, mExpanded, label, true); + if (mExpanded) + { + const float indentAmount = 15; + rect.width -= indentAmount; rect.x += indentAmount; + float oldWidth = EditorGUIUtility.labelWidth; + EditorGUIUtility.labelWidth -= indentAmount; + + rect.y += EditorGUIUtility.singleLineHeight + vSpace; + DrawCurveTimeProperty( + rect, new GUIContent("Attack", "The custom shape of the attack curve. Leave it blank for a default shape"), + property.FindPropertyRelative(() => myClass.m_AttackShape), + property.FindPropertyRelative(() => myClass.m_AttackTime)); + + rect.y += EditorGUIUtility.singleLineHeight + vSpace; +#if false // with "forever" button... dangerous because signal never goes away! + var holdProp = property.FindPropertyRelative(() => myClass.m_SustainTime); + InspectorUtility.MultiPropertyOnLine( + rect, new GUIContent(holdProp.displayName, holdProp.tooltip), + new SerializedProperty[] { holdProp, property.FindPropertyRelative(() => myClass.m_HoldForever) }, + new GUIContent[] { GUIContent.none, new GUIContent("forever") }); +#else + EditorGUI.PropertyField(rect, property.FindPropertyRelative(() => myClass.m_SustainTime)); +#endif + rect.y += EditorGUIUtility.singleLineHeight + vSpace; + DrawCurveTimeProperty( + rect, new GUIContent("Decay", "The custom shape of the decay curve. Leave it blank for a default shape"), + property.FindPropertyRelative(() => myClass.m_DecayShape), + property.FindPropertyRelative(() => myClass.m_DecayTime)); + + rect.y += EditorGUIUtility.singleLineHeight + vSpace; + EditorGUI.PropertyField(rect, property.FindPropertyRelative(() => myClass.m_ScaleWithImpact)); + + EditorGUIUtility.labelWidth = oldWidth; + } + } + + void DrawCurveTimeProperty( + Rect rect, GUIContent label, + SerializedProperty curveProp, SerializedProperty timeProp) + { + float floatFieldWidth = EditorGUIUtility.singleLineHeight * 2.5f; + + GUIContent timeText = new GUIContent(" s", timeProp.tooltip); + var textDimensions = GUI.skin.label.CalcSize(timeText); + + rect = EditorGUI.PrefixLabel(rect, label); + + rect.height = EditorGUIUtility.singleLineHeight; + rect.width -= floatFieldWidth + textDimensions.x; + + Rect r = rect; r.height += 1; r.y -= 1; + EditorGUI.BeginChangeCheck(); + EditorGUI.PropertyField(r, curveProp, GUIContent.none); + if (EditorGUI.EndChangeCheck()) + { + curveProp.animationCurveValue = InspectorUtility.NormalizeCurve(curveProp.animationCurveValue); + if (curveProp.animationCurveValue.length < 1) + curveProp.animationCurveValue = new AnimationCurve(); + curveProp.serializedObject.ApplyModifiedProperties(); + } + + float oldWidth = EditorGUIUtility.labelWidth; + EditorGUIUtility.labelWidth = textDimensions.x; + rect.x += rect.width; rect.width = floatFieldWidth + EditorGUIUtility.labelWidth; + EditorGUI.BeginChangeCheck(); + EditorGUI.PropertyField(rect, timeProp, timeText); + if (EditorGUI.EndChangeCheck()) + timeProp.floatValue = Mathf.Max(timeProp.floatValue, 0); + EditorGUIUtility.labelWidth = oldWidth; + } + + public override float GetPropertyHeight(SerializedProperty property, GUIContent label) + { + float height = EditorGUIUtility.singleLineHeight + vSpace; + if (mExpanded) + height *= 5; + return height; + } + } +} diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Editor/Impulse/CinemachineImpulseEnvelopePropertyDrawer.cs.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Editor/Impulse/CinemachineImpulseEnvelopePropertyDrawer.cs.meta" new file mode 100644 index 00000000..4597cef9 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Editor/Impulse/CinemachineImpulseEnvelopePropertyDrawer.cs.meta" @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: fdb859783dabdca44be0ea05d1203b30 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Editor/Impulse/CinemachineImpulseListenerEditor.cs" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Editor/Impulse/CinemachineImpulseListenerEditor.cs" new file mode 100644 index 00000000..2f957bd8 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Editor/Impulse/CinemachineImpulseListenerEditor.cs" @@ -0,0 +1,18 @@ +using UnityEditor; + +namespace Cinemachine.Editor +{ + [CustomEditor(typeof(CinemachineImpulseListener))] + internal sealed class CinemachineImpulseListenerEditor + : BaseEditor + { + public override void OnInspectorGUI() + { + BeginInspector(); + EditorGUILayout.HelpBox( + "The Impulse Listener will respond to signals broadcast by any CinemachineImpulseSource.", + MessageType.Info); + DrawRemainingPropertiesInInspector(); + } + } +} diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Editor/Impulse/CinemachineImpulseListenerEditor.cs.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Editor/Impulse/CinemachineImpulseListenerEditor.cs.meta" new file mode 100644 index 00000000..c51c0153 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Editor/Impulse/CinemachineImpulseListenerEditor.cs.meta" @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: c63cb4cb8e3e82c4f8bfa7516da4f2b5 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Editor/Impulse/CinemachineImpulseSourceEditor.cs" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Editor/Impulse/CinemachineImpulseSourceEditor.cs" new file mode 100644 index 00000000..4356d7cc --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Editor/Impulse/CinemachineImpulseSourceEditor.cs" @@ -0,0 +1,19 @@ +using UnityEditor; + +namespace Cinemachine.Editor +{ + [CustomEditor(typeof(CinemachineImpulseSource))] + internal sealed class CinemachineImpulseSourceEditor + : BaseEditor + { + public override void OnInspectorGUI() + { + BeginInspector(); + EditorGUILayout.Separator(); + EditorGUILayout.HelpBox( + "First set up the Signal and Range, then connect your impulse-generating event to one of the GenerateImpulse API methods defined in this script.", + MessageType.Info); + DrawRemainingPropertiesInInspector(); + } + } +} diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Editor/Impulse/CinemachineImpulseSourceEditor.cs.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Editor/Impulse/CinemachineImpulseSourceEditor.cs.meta" new file mode 100644 index 00000000..16ebebef --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Editor/Impulse/CinemachineImpulseSourceEditor.cs.meta" @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: b56f2475416eeea4c916add2d7268ad1 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Editor/Menus.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Editor/Menus.meta" new file mode 100644 index 00000000..4c15ff3f --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Editor/Menus.meta" @@ -0,0 +1,9 @@ +fileFormatVersion: 2 +guid: d093acf2bada69e4bbbcf0a8b4534919 +folderAsset: yes +timeCreated: 1489096338 +licenseType: Pro +DefaultImporter: + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Editor/Menus/CinemachineMenu.cs" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Editor/Menus/CinemachineMenu.cs" new file mode 100644 index 00000000..5d8c0c51 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Editor/Menus/CinemachineMenu.cs" @@ -0,0 +1,291 @@ +using UnityEngine; +using UnityEditor; +using System; +using System.IO; + +namespace Cinemachine.Editor +{ + internal static class CinemachineMenu + { + public const string kCinemachineRootMenu = "Assets/Create/Cinemachine/"; + + [MenuItem(kCinemachineRootMenu + "BlenderSettings")] + private static void CreateBlenderSettingAsset() + { + ScriptableObjectUtility.Create(); + } + + [MenuItem(kCinemachineRootMenu + "NoiseSettings")] + private static void CreateNoiseSettingAsset() + { + ScriptableObjectUtility.Create(); + } + + [MenuItem(kCinemachineRootMenu + "Fixed Signal Definition")] + private static void CreateFixedSignalDefinition() + { + ScriptableObjectUtility.Create(); + } + + [MenuItem("Cinemachine/Create Virtual Camera", false, 1)] + public static CinemachineVirtualCamera CreateVirtualCamera() + { + return InternalCreateVirtualCamera( + "CM vcam", true, typeof(CinemachineComposer), typeof(CinemachineTransposer)); + } + + [MenuItem("Cinemachine/Create FreeLook Camera", false, 1)] + private static void CreateFreeLookCamera() + { + CreateCameraBrainIfAbsent(); + GameObject go = InspectorUtility.CreateGameObject( + GenerateUniqueObjectName(typeof(CinemachineFreeLook), "CM FreeLook"), + typeof(CinemachineFreeLook)); + if (SceneView.lastActiveSceneView != null) + go.transform.position = SceneView.lastActiveSceneView.pivot; + Selection.activeGameObject = go; + } + + [MenuItem("Cinemachine/Create Blend List Camera", false, 1)] + private static void CreateBlendListCamera() + { + CreateCameraBrainIfAbsent(); + GameObject go = InspectorUtility.CreateGameObject( + GenerateUniqueObjectName(typeof(CinemachineBlendListCamera), "CM BlendListCamera"), + typeof(CinemachineBlendListCamera)); + if (SceneView.lastActiveSceneView != null) + go.transform.position = SceneView.lastActiveSceneView.pivot; + Undo.RegisterCreatedObjectUndo(go, "create Blend List camera"); + var vcam = go.GetComponent(); + Selection.activeGameObject = go; + + // Give it a couple of children + var child1 = CreateDefaultVirtualCamera(); + Undo.SetTransformParent(child1.transform, go.transform, "create BlendListCam child"); + var child2 = CreateDefaultVirtualCamera(); + child2.m_Lens.FieldOfView = 10; + Undo.SetTransformParent(child2.transform, go.transform, "create BlendListCam child"); + + // Set up initial instruction set + vcam.m_Instructions = new CinemachineBlendListCamera.Instruction[2]; + vcam.m_Instructions[0].m_VirtualCamera = child1; + vcam.m_Instructions[0].m_Hold = 1f; + vcam.m_Instructions[1].m_VirtualCamera = child2; + vcam.m_Instructions[1].m_Blend.m_Style = CinemachineBlendDefinition.Style.EaseInOut; + vcam.m_Instructions[1].m_Blend.m_Time = 2f; + } + + [MenuItem("Cinemachine/Create State-Driven Camera", false, 1)] + private static void CreateStateDivenCamera() + { + CreateCameraBrainIfAbsent(); + GameObject go = InspectorUtility.CreateGameObject( + GenerateUniqueObjectName(typeof(CinemachineStateDrivenCamera), "CM StateDrivenCamera"), + typeof(CinemachineStateDrivenCamera)); + if (SceneView.lastActiveSceneView != null) + go.transform.position = SceneView.lastActiveSceneView.pivot; + Undo.RegisterCreatedObjectUndo(go, "create state driven camera"); + Selection.activeGameObject = go; + + // Give it a child + Undo.SetTransformParent(CreateDefaultVirtualCamera().transform, go.transform, "create state driven camera"); + } + + [MenuItem("Cinemachine/Create ClearShot Camera", false, 1)] + private static void CreateClearShotVirtualCamera() + { + CreateCameraBrainIfAbsent(); + GameObject go = InspectorUtility.CreateGameObject( + GenerateUniqueObjectName(typeof(CinemachineClearShot), "CM ClearShot"), + typeof(CinemachineClearShot)); + if (SceneView.lastActiveSceneView != null) + go.transform.position = SceneView.lastActiveSceneView.pivot; + Undo.RegisterCreatedObjectUndo(go, "create ClearShot camera"); + Selection.activeGameObject = go; + + // Give it a child + var child = CreateDefaultVirtualCamera(); + Undo.SetTransformParent(child.transform, go.transform, "create ClearShot camera"); + var collider = Undo.AddComponent(child.gameObject); + collider.m_AvoidObstacles = false; + Undo.RecordObject(collider, "create ClearShot camera"); + } + + [MenuItem("Cinemachine/Create Dolly Camera with Track", false, 1)] + private static void CreateDollyCameraWithPath() + { + CinemachineVirtualCamera vcam = InternalCreateVirtualCamera( + "CM vcam", true, typeof(CinemachineComposer), typeof(CinemachineTrackedDolly)); + GameObject go = InspectorUtility.CreateGameObject( + GenerateUniqueObjectName(typeof(CinemachineSmoothPath), "DollyTrack"), + typeof(CinemachineSmoothPath)); + if (SceneView.lastActiveSceneView != null) + go.transform.position = SceneView.lastActiveSceneView.pivot; + Undo.RegisterCreatedObjectUndo(go, "create track"); + CinemachineSmoothPath path = go.GetComponent(); + var dolly = vcam.GetCinemachineComponent(); + Undo.RecordObject(dolly, "create track"); + dolly.m_Path = path; + } + + [MenuItem("Cinemachine/Create Dolly Track with Cart", false, 1)] + private static void CreateDollyTrackWithCart() + { + GameObject go = InspectorUtility.CreateGameObject( + GenerateUniqueObjectName(typeof(CinemachineSmoothPath), "DollyTrack"), + typeof(CinemachineSmoothPath)); + if (SceneView.lastActiveSceneView != null) + go.transform.position = SceneView.lastActiveSceneView.pivot; + Undo.RegisterCreatedObjectUndo(go, "create track"); + CinemachineSmoothPath path = go.GetComponent(); + Selection.activeGameObject = go; + + go = InspectorUtility.CreateGameObject( + GenerateUniqueObjectName(typeof(CinemachineDollyCart), "DollyCart"), + typeof(CinemachineDollyCart)); + if (SceneView.lastActiveSceneView != null) + go.transform.position = SceneView.lastActiveSceneView.pivot; + Undo.RegisterCreatedObjectUndo(go, "create cart"); + CinemachineDollyCart cart = go.GetComponent(); + Undo.RecordObject(cart, "create track"); + cart.m_Path = path; + } + + [MenuItem("Cinemachine/Create Target Group Camera", false, 1)] + private static void CreateTargetGroupCamera() + { + CinemachineVirtualCamera vcam = InternalCreateVirtualCamera( + "CM vcam", true, typeof(CinemachineGroupComposer), typeof(CinemachineTransposer)); + GameObject go = InspectorUtility.CreateGameObject( + GenerateUniqueObjectName(typeof(CinemachineTargetGroup), "TargetGroup"), + typeof(CinemachineTargetGroup)); + if (SceneView.lastActiveSceneView != null) + go.transform.position = SceneView.lastActiveSceneView.pivot; + Undo.RegisterCreatedObjectUndo(go, "create target group"); + vcam.LookAt = go.transform; + vcam.Follow = go.transform; + } + + [MenuItem("Cinemachine/Create Mixing Camera", false, 1)] + private static void CreateMixingCamera() + { + CreateCameraBrainIfAbsent(); + GameObject go = InspectorUtility.CreateGameObject( + GenerateUniqueObjectName(typeof(CinemachineMixingCamera), "CM MixingCamera"), + typeof(CinemachineMixingCamera)); + if (SceneView.lastActiveSceneView != null) + go.transform.position = SceneView.lastActiveSceneView.pivot; + Undo.RegisterCreatedObjectUndo(go, "create MixingCamera camera"); + Selection.activeGameObject = go; + + // Give it a couple of children + Undo.SetTransformParent(CreateDefaultVirtualCamera().transform, go.transform, "create MixedCamera child"); + Undo.SetTransformParent(CreateDefaultVirtualCamera().transform, go.transform, "create MixingCamera child"); + } + + [MenuItem("Cinemachine/Create 2D Camera", false, 1)] + private static void Create2DCamera() + { + InternalCreateVirtualCamera("CM vcam", true, typeof(CinemachineFramingTransposer)); + } + + [MenuItem("Cinemachine/Import Example Asset Package")] + private static void ImportExamplePackage() + { + string pkgFile = ScriptableObjectUtility.CinemachineInstallPath + + "/Extras~/CinemachineExamples.unitypackage"; + if (!File.Exists(pkgFile)) + Debug.LogError("Missing file " + pkgFile); + else + AssetDatabase.ImportPackage(pkgFile, true); + } + + [MenuItem("Cinemachine/Import Post Processing V2 Adapter Asset Package")] + private static void ImportPostProcessingV2Package() + { + string pkgFile = ScriptableObjectUtility.CinemachineInstallPath + + "/Extras~/CinemachinePostProcessingV2.unitypackage"; + if (!File.Exists(pkgFile)) + Debug.LogError("Missing file " + pkgFile); + else + AssetDatabase.ImportPackage(pkgFile, true); + } + + /// + /// Create a default Virtual Camera, with standard components + /// + public static CinemachineVirtualCamera CreateDefaultVirtualCamera() + { + return InternalCreateVirtualCamera( + "CM vcam", false, typeof(CinemachineComposer), typeof(CinemachineTransposer)); + } + + /// + /// Create a Virtual Camera, with components + /// + static CinemachineVirtualCamera InternalCreateVirtualCamera( + string name, bool selectIt, params Type[] components) + { + // Create a new virtual camera + CreateCameraBrainIfAbsent(); + GameObject go = InspectorUtility.CreateGameObject( + GenerateUniqueObjectName(typeof(CinemachineVirtualCamera), name), + typeof(CinemachineVirtualCamera)); + if (SceneView.lastActiveSceneView != null) + go.transform.position = SceneView.lastActiveSceneView.pivot; + Undo.RegisterCreatedObjectUndo(go, "create " + name); + CinemachineVirtualCamera vcam = go.GetComponent(); + GameObject componentOwner = vcam.GetComponentOwner().gameObject; + foreach (Type t in components) + Undo.AddComponent(componentOwner, t); + vcam.InvalidateComponentPipeline(); + if (selectIt) + Selection.activeObject = go; + return vcam; + } + + /// + /// If there is no CinemachineBrain in the scene, try to create one on the main camera + /// + public static void CreateCameraBrainIfAbsent() + { + CinemachineBrain[] brains = UnityEngine.Object.FindObjectsOfType( + typeof(CinemachineBrain)) as CinemachineBrain[]; + if (brains == null || brains.Length == 0) + { + Camera cam = Camera.main; + if (cam == null) + { + Camera[] cams = UnityEngine.Object.FindObjectsOfType( + typeof(Camera)) as Camera[]; + if (cams != null && cams.Length > 0) + cam = cams[0]; + } + if (cam != null) + { + Undo.AddComponent(cam.gameObject); + } + } + } + + /// + /// Generate a unique name with the given prefix by adding a suffix to it + /// + public static string GenerateUniqueObjectName(Type type, string prefix) + { + int count = 0; + UnityEngine.Object[] all = Resources.FindObjectsOfTypeAll(type); + foreach (UnityEngine.Object o in all) + { + if (o != null && o.name.StartsWith(prefix)) + { + string suffix = o.name.Substring(prefix.Length); + int i; + if (Int32.TryParse(suffix, out i) && i > count) + count = i; + } + } + return prefix + (count + 1); + } + } +} diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Editor/Menus/CinemachineMenu.cs.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Editor/Menus/CinemachineMenu.cs.meta" new file mode 100644 index 00000000..f961a2e8 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Editor/Menus/CinemachineMenu.cs.meta" @@ -0,0 +1,12 @@ +fileFormatVersion: 2 +guid: 54b24e51e2a9fa242b38d80ee11f3b2d +timeCreated: 1481654955 +licenseType: Pro +MonoImporter: + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Editor/PropertyDrawers.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Editor/PropertyDrawers.meta" new file mode 100644 index 00000000..9fc4f1f0 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Editor/PropertyDrawers.meta" @@ -0,0 +1,9 @@ +fileFormatVersion: 2 +guid: 31c3ab7d86d07034eb528155d40c016b +folderAsset: yes +timeCreated: 1489096338 +licenseType: Pro +DefaultImporter: + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Editor/PropertyDrawers/AxisStatePropertyDrawer.cs" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Editor/PropertyDrawers/AxisStatePropertyDrawer.cs" new file mode 100644 index 00000000..26e802e2 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Editor/PropertyDrawers/AxisStatePropertyDrawer.cs" @@ -0,0 +1,110 @@ +using UnityEngine; +using UnityEditor; +using System.Reflection; + +namespace Cinemachine.Editor +{ + [CustomPropertyDrawer(typeof(AxisStatePropertyAttribute))] + internal sealed class AxisStatePropertyDrawer : PropertyDrawer + { + const int vSpace = 2; + bool mExpanded = true; + AxisState def = new AxisState(); // to access name strings + + public override void OnGUI(Rect rect, SerializedProperty property, GUIContent label) + { + float height = EditorGUIUtility.singleLineHeight; + rect.height = height; + mExpanded = EditorGUI.Foldout(rect, mExpanded, label, true); + if (mExpanded) + { + ++EditorGUI.indentLevel; + + rect.y += height + vSpace; + EditorGUI.PropertyField(rect, property.FindPropertyRelative(() => def.Value)); + + if (!ValueRangeIsLocked(property)) + { + rect.y += height + vSpace; + InspectorUtility.MultiPropertyOnLine(rect, new GUIContent("Value Range"), + new [] { property.FindPropertyRelative(() => def.m_MinValue), + property.FindPropertyRelative(() => def.m_MaxValue), + property.FindPropertyRelative(() => def.m_Wrap) }, + new [] { GUIContent.none, new GUIContent("to "), null }); + } + + rect.y += height + vSpace; + EditorGUI.PropertyField(rect, property.FindPropertyRelative(() => def.m_MaxSpeed)); + + rect.y += height + vSpace; + InspectorUtility.MultiPropertyOnLine( + rect, null, + new [] { property.FindPropertyRelative(() => def.m_AccelTime), + property.FindPropertyRelative(() => def.m_DecelTime)}, + new [] { GUIContent.none, null }); + + if (HasRecentering(property)) + { + var rDef = new AxisState.Recentering(); + var recentering = property.FindPropertyRelative(() => def.m_Recentering); + rect.y += height + vSpace; + InspectorUtility.MultiPropertyOnLine( + rect, new GUIContent(recentering.displayName, recentering.tooltip), + new [] { + recentering.FindPropertyRelative(() => rDef.m_enabled), + recentering.FindPropertyRelative(() => rDef.m_WaitTime), + recentering.FindPropertyRelative(() => rDef.m_RecenteringTime)}, + new [] { new GUIContent(""), + new GUIContent("Wait"), + new GUIContent("Time")} ); + } + + rect.y += height + vSpace; + EditorGUI.PropertyField(rect, property.FindPropertyRelative(() => def.m_InputAxisName)); + + rect.y += height + vSpace; + InspectorUtility.MultiPropertyOnLine(rect, null, + new [] { property.FindPropertyRelative(() => def.m_InputAxisValue), + property.FindPropertyRelative(() => def.m_InvertInput) }, + new [] { GUIContent.none, new GUIContent("Invert") }); + + --EditorGUI.indentLevel; + } + } + + public override float GetPropertyHeight(SerializedProperty property, GUIContent label) + { + float height = EditorGUIUtility.singleLineHeight + vSpace; + if (mExpanded) + { + int lines = 6; + if (!ValueRangeIsLocked(property)) + ++lines; + if (HasRecentering(property)) + ++lines; + height *= lines; + } + return height - vSpace; + } + + bool ValueRangeIsLocked(SerializedProperty property) + { + bool value = false; + PropertyInfo pi = typeof(AxisState).GetProperty( + "ValueRangeLocked", BindingFlags.Public | BindingFlags.NonPublic | BindingFlags.Instance); + if (pi != null) + value = bool.Equals(true, pi.GetValue(SerializedPropertyHelper.GetPropertyValue(property), null)); + return value; + } + + bool HasRecentering(SerializedProperty property) + { + bool value = false; + PropertyInfo pi = typeof(AxisState).GetProperty( + "HasRecentering", BindingFlags.Public | BindingFlags.NonPublic | BindingFlags.Instance); + if (pi != null) + value = bool.Equals(true, pi.GetValue(SerializedPropertyHelper.GetPropertyValue(property), null)); + return value; + } + } +} diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Editor/PropertyDrawers/AxisStatePropertyDrawer.cs.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Editor/PropertyDrawers/AxisStatePropertyDrawer.cs.meta" new file mode 100644 index 00000000..61211e0d --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Editor/PropertyDrawers/AxisStatePropertyDrawer.cs.meta" @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 70f1be76e10cd9f44ad1a86b9e05745e +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Editor/PropertyDrawers/CinemachineBlendDefinitionPropertyDrawer.cs" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Editor/PropertyDrawers/CinemachineBlendDefinitionPropertyDrawer.cs" new file mode 100644 index 00000000..e2c01f1e --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Editor/PropertyDrawers/CinemachineBlendDefinitionPropertyDrawer.cs" @@ -0,0 +1,56 @@ +using UnityEngine; +using UnityEditor; + +namespace Cinemachine.Editor +{ + [CustomPropertyDrawer(typeof(CinemachineBlendDefinitionPropertyAttribute))] + internal sealed class CinemachineBlendDefinitionPropertyDrawer : PropertyDrawer + { + CinemachineBlendDefinition myClass = new CinemachineBlendDefinition(); // to access name strings + public override void OnGUI(Rect rect, SerializedProperty property, GUIContent label) + { + float vSpace = 0; + float floatFieldWidth = EditorGUIUtility.singleLineHeight * 2.5f; + + SerializedProperty timeProp = property.FindPropertyRelative(() => myClass.m_Time); + GUIContent timeText = new GUIContent(" s", timeProp.tooltip); + var textDimensions = GUI.skin.label.CalcSize(timeText); + + rect = EditorGUI.PrefixLabel(rect, label); + + rect.y += vSpace; rect.height = EditorGUIUtility.singleLineHeight; + rect.width -= floatFieldWidth + textDimensions.x; + + SerializedProperty styleProp = property.FindPropertyRelative(() => myClass.m_Style); + if (styleProp.enumValueIndex != (int)CinemachineBlendDefinition.Style.Custom) + EditorGUI.PropertyField(rect, styleProp, GUIContent.none); + else + { + SerializedProperty curveProp = property.FindPropertyRelative(() => myClass.m_CustomCurve); + Rect r = rect; + r.width -= rect.height; + r.height -= 1; + EditorGUI.BeginChangeCheck(); + EditorGUI.PropertyField(r, curveProp, GUIContent.none); + if (EditorGUI.EndChangeCheck()) + { + curveProp.animationCurveValue = InspectorUtility.NormalizeCurve(curveProp.animationCurveValue); + curveProp.serializedObject.ApplyModifiedProperties(); + } + r.x += r.width; r.width = r.height; ++r.height; + EditorGUI.PropertyField(r, styleProp, GUIContent.none); + } + if (styleProp.intValue != (int)CinemachineBlendDefinition.Style.Cut) + { + float oldWidth = EditorGUIUtility.labelWidth; + EditorGUIUtility.labelWidth = textDimensions.x; + rect.x += rect.width; rect.width = floatFieldWidth + EditorGUIUtility.labelWidth; + EditorGUI.BeginChangeCheck(); + EditorGUI.PropertyField(rect, timeProp, timeText); + if (EditorGUI.EndChangeCheck()) + timeProp.floatValue = Mathf.Max(timeProp.floatValue, 0); + EditorGUIUtility.labelWidth = oldWidth; + } + } + } +} diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Editor/PropertyDrawers/CinemachineBlendDefinitionPropertyDrawer.cs.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Editor/PropertyDrawers/CinemachineBlendDefinitionPropertyDrawer.cs.meta" new file mode 100644 index 00000000..8fd01b69 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Editor/PropertyDrawers/CinemachineBlendDefinitionPropertyDrawer.cs.meta" @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 4a9c464b0191f7d4da1d129d97d8240b +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Editor/PropertyDrawers/CinemachineTagFieldPropertyDrawer.cs" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Editor/PropertyDrawers/CinemachineTagFieldPropertyDrawer.cs" new file mode 100644 index 00000000..3d896c27 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Editor/PropertyDrawers/CinemachineTagFieldPropertyDrawer.cs" @@ -0,0 +1,29 @@ +using UnityEngine; +using UnityEditor; + +namespace Cinemachine.Editor +{ + [CustomPropertyDrawer(typeof(TagFieldAttribute))] + internal sealed class CinemachineTagFieldPropertyDrawer : PropertyDrawer + { + const float hSpace = 2; + GUIContent clearText = new GUIContent("Clear", "Set the tag to empty"); + + public override void OnGUI(Rect rect, SerializedProperty property, GUIContent label) + { + var textDimensions = GUI.skin.button.CalcSize(clearText); + + rect.width -= textDimensions.x + hSpace; + string oldValue = property.stringValue; + string newValue = EditorGUI.TagField(rect, label, oldValue); + + rect.x += rect.width + hSpace; rect.width = textDimensions.x; rect.height -=1; + GUI.enabled = oldValue.Length > 0; + if (GUI.Button(rect, clearText)) + newValue = string.Empty; + GUI.enabled = true; + if (oldValue != newValue) + property.stringValue = newValue; + } + } +} diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Editor/PropertyDrawers/CinemachineTagFieldPropertyDrawer.cs.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Editor/PropertyDrawers/CinemachineTagFieldPropertyDrawer.cs.meta" new file mode 100644 index 00000000..07c81b25 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Editor/PropertyDrawers/CinemachineTagFieldPropertyDrawer.cs.meta" @@ -0,0 +1,12 @@ +fileFormatVersion: 2 +guid: ed3efd28525441947b55ec9b5d68ba31 +timeCreated: 1510677929 +licenseType: Pro +MonoImporter: + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Editor/PropertyDrawers/EmbeddedAssetPropertyDrawer.cs" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Editor/PropertyDrawers/EmbeddedAssetPropertyDrawer.cs" new file mode 100644 index 00000000..d93695a5 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Editor/PropertyDrawers/EmbeddedAssetPropertyDrawer.cs" @@ -0,0 +1,278 @@ +using UnityEngine; +using UnityEditor; +using System; +using Cinemachine.Utility; +using System.Linq; +using System.Collections.Generic; + +namespace Cinemachine.Editor +{ + [CustomPropertyDrawer(typeof(CinemachineEmbeddedAssetPropertyAttribute))] + internal sealed class EmbeddedAssetPropertyDrawer : PropertyDrawer + { + const float vSpace = 2; + const float kIndentAmount = 15; + const float kBoxMargin = 3; + float HelpBoxHeight { get { return EditorGUIUtility.singleLineHeight * 2.5f; } } + bool mExpanded = false; + + bool WarnIfNull + { + get + { + var attr = attribute as CinemachineEmbeddedAssetPropertyAttribute; + return attr == null ? false : attr.WarnIfNull; + } + } + + float HeaderHeight { get { return EditorGUIUtility.singleLineHeight * 1.5f; } } + float DrawHeader(Rect rect, string text) + { + float delta = HeaderHeight - EditorGUIUtility.singleLineHeight; + rect.y += delta; rect.height -= delta; + EditorGUI.LabelField(rect, new GUIContent(text), EditorStyles.boldLabel); + return HeaderHeight; + } + + string HeaderText(SerializedProperty property) + { + var attrs = property.serializedObject.targetObject.GetType() + .GetCustomAttributes(typeof(HeaderAttribute), false); + if (attrs != null && attrs.Length > 0) + return ((HeaderAttribute)attrs[0]).header; + return null; + } + + bool AssetHasCustomEditor(SerializedProperty property) + { + ScriptableObject asset = property.objectReferenceValue as ScriptableObject; + if (asset != null) + return ActiveEditorTracker.HasCustomEditor(asset); + return false; + } + + public override float GetPropertyHeight(SerializedProperty property, GUIContent label) + { + bool hasCustomEditor = AssetHasCustomEditor(property); + float height = base.GetPropertyHeight(property, label); + height += + 2 * (kBoxMargin + vSpace); + if (mExpanded && !hasCustomEditor) + { + height += HelpBoxHeight + kBoxMargin; + ScriptableObject asset = property.objectReferenceValue as ScriptableObject; + if (asset != null) + { + SerializedObject so = new SerializedObject(asset); + var prop = so.GetIterator(); + prop.NextVisible(true); + do + { + if (prop.name == "m_Script") + continue; + string header = HeaderText(prop); + if (header != null) + height += HeaderHeight + vSpace; + height += EditorGUI.GetPropertyHeight(prop, false) + vSpace; + } + while (prop.NextVisible(prop.isExpanded)); + height += kBoxMargin; + } + } + return height; + } + + public override void OnGUI(Rect rect, SerializedProperty property, GUIContent label) + { + bool hasCustomEditor = AssetHasCustomEditor(property); + rect.y += vSpace; rect.height -= 2 * vSpace; + GUI.Box(rect, GUIContent.none, GUI.skin.box); + rect.y += kBoxMargin; + + rect.height = EditorGUIUtility.singleLineHeight; + EditorGUIUtility.labelWidth -= kBoxMargin; + AssetFieldWithCreateButton( + new Rect(rect.x + kBoxMargin, rect.y, rect.width - 2 * kBoxMargin, rect.height), + property, WarnIfNull, + property.serializedObject.targetObject.name + " " + label.text); + + ScriptableObject asset = property.objectReferenceValue as ScriptableObject; + if (asset != null && !hasCustomEditor) + { + mExpanded = EditorGUI.Foldout(rect, mExpanded, GUIContent.none, true); + if (mExpanded) + { + rect.y += rect.height + kBoxMargin + vSpace; + rect.x += kIndentAmount + kBoxMargin; + rect.width -= kIndentAmount + 2 * kBoxMargin; + EditorGUIUtility.labelWidth -= kIndentAmount; + + EditorGUI.HelpBox( + new Rect(rect.x, rect.y, rect.width, HelpBoxHeight), + "This is a shared asset.\n" + + "Changes made here will apply to all users of this asset", + MessageType.Info); + + rect.y += HelpBoxHeight + kBoxMargin; + SerializedObject so = new SerializedObject(property.objectReferenceValue); + var prop = so.GetIterator(); + prop.NextVisible(true); + + var indent = EditorGUI.indentLevel; + do + { + if (prop.name == "m_Script") + continue; + string header = HeaderText(prop); + if (header != null) + { + DrawHeader(rect, header); + rect.y += HeaderHeight + vSpace; + rect.height -= HeaderHeight + vSpace; + } + rect.height = EditorGUI.GetPropertyHeight(prop, false); + EditorGUI.indentLevel = indent + prop.depth; + EditorGUI.PropertyField(rect, prop); + rect.y += rect.height + vSpace; + } while (prop.NextVisible(prop.isExpanded)); + + if (GUI.changed) + so.ApplyModifiedProperties(); + } + EditorGUIUtility.labelWidth += kIndentAmount; + } + EditorGUIUtility.labelWidth += kBoxMargin; + } + + Type EmbeddedAssetType(SerializedProperty property) + { + Type type = property.serializedObject.targetObject.GetType(); + var a = property.propertyPath.Split('.'); + for (int i = 0; i < a.Length; ++i) + type = type.GetField(a[i], + System.Reflection.BindingFlags.Public + | System.Reflection.BindingFlags.NonPublic + | System.Reflection.BindingFlags.Instance).FieldType; + return type; + } + + Type[] mAssetTypes = null; + List mAssetPresets; + GUIContent[] mAssetPresetNames; + + void RebuildPresetList() + { + if (mAssetPresets != null && mAssetPresetNames != null) + return; + + mAssetPresets = new List(); +#if UNITY_2018_1_OR_NEWER + if (mAssetTypes != null) + { + for (int i = 0; i < mAssetTypes.Length; ++i) + InspectorUtility.AddAssetsFromPackageSubDirectory( + mAssetTypes[i], mAssetPresets, "Presets/Noise"); + } +#endif + List presetNameList = new List(); + foreach (var n in mAssetPresets) + presetNameList.Add(new GUIContent("Presets/" + n.name)); + mAssetPresetNames = presetNameList.ToArray(); + } + + void AssetFieldWithCreateButton( + Rect r, SerializedProperty property, bool warnIfNull, string defaultName) + { + // Collect all the eligible asset types + Type type = EmbeddedAssetType(property); + if (mAssetTypes == null) + mAssetTypes = ReflectionHelpers.GetTypesInAllDependentAssemblies( + (Type t) => type.IsAssignableFrom(t) && !t.IsAbstract).ToArray(); + + float iconSize = r.height + 4; + r.width -= iconSize; + + GUIContent label = new GUIContent(property.displayName, property.tooltip); + if (warnIfNull && property.objectReferenceValue == null) + label.image = EditorGUIUtility.IconContent("console.warnicon.sml").image; + EditorGUI.PropertyField(r, property, label); + + r.x += r.width; r.width = iconSize; r.height = iconSize; + if (GUI.Button(r, EditorGUIUtility.IconContent("_Popup"), GUI.skin.label)) + { + GenericMenu menu = new GenericMenu(); + if (property.objectReferenceValue != null) + { + menu.AddItem(new GUIContent("Edit"), false, () + => Selection.activeObject = property.objectReferenceValue); + menu.AddItem(new GUIContent("Clone"), false, () => + { + ScriptableObject copyFrom = property.objectReferenceValue as ScriptableObject; + if (copyFrom != null) + { + string title = "Create New " + copyFrom.GetType().Name + " asset"; + ScriptableObject asset = CreateAsset( + copyFrom.GetType(), copyFrom, defaultName, title); + if (asset != null) + { + property.objectReferenceValue = asset; + property.serializedObject.ApplyModifiedProperties(); + } + } + }); + menu.AddItem(new GUIContent("Locate"), false, () + => EditorGUIUtility.PingObject(property.objectReferenceValue)); + } + + RebuildPresetList(); + int i = 0; + foreach (var a in mAssetPresets) + { + menu.AddItem(mAssetPresetNames[i++], false, () => + { + property.objectReferenceValue = a; + property.serializedObject.ApplyModifiedProperties(); + }); + } + + foreach (var t in mAssetTypes) + { + menu.AddItem(new GUIContent("New " + InspectorUtility.NicifyClassName(t.Name)), false, () => + { + string title = "Create New " + t.Name + " asset"; + ScriptableObject asset = CreateAsset(t, null, defaultName, title); + if (asset != null) + { + property.objectReferenceValue = asset; + property.serializedObject.ApplyModifiedProperties(); + } + }); + } + menu.ShowAsContext(); + } + } + + ScriptableObject CreateAsset( + Type assetType, ScriptableObject copyFrom, string defaultName, string dialogTitle) + { + ScriptableObject asset = null; + string path = EditorUtility.SaveFilePanelInProject( + dialogTitle, defaultName, "asset", string.Empty); + if (!string.IsNullOrEmpty(path)) + { + if (copyFrom != null) + { + string fromPath = AssetDatabase.GetAssetPath(copyFrom); + if (AssetDatabase.CopyAsset(fromPath, path)) + asset = AssetDatabase.LoadAssetAtPath(path, assetType) as ScriptableObject; + } + else + { + asset = ScriptableObjectUtility.CreateAt(assetType, path); + } + AssetDatabase.SaveAssets(); + AssetDatabase.Refresh(); + } + return asset; + } + } +} diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Editor/PropertyDrawers/EmbeddedAssetPropertyDrawer.cs.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Editor/PropertyDrawers/EmbeddedAssetPropertyDrawer.cs.meta" new file mode 100644 index 00000000..d436a2c2 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Editor/PropertyDrawers/EmbeddedAssetPropertyDrawer.cs.meta" @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 57baee20e53f7b54782519af44a9468f +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Editor/PropertyDrawers/LensSettingsPropertyDrawer.cs" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Editor/PropertyDrawers/LensSettingsPropertyDrawer.cs" new file mode 100644 index 00000000..dfca0388 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Editor/PropertyDrawers/LensSettingsPropertyDrawer.cs" @@ -0,0 +1,175 @@ +using UnityEngine; +using UnityEditor; +using System.Reflection; +using System.Collections.Generic; +using Cinemachine.Utility; +using System; + +namespace Cinemachine.Editor +{ + [CustomPropertyDrawer(typeof(LensSettingsPropertyAttribute))] + internal sealed class LensSettingsPropertyDrawer : PropertyDrawer + { + const int vSpace = 2; + LensSettings def = new LensSettings(); // to access name strings + GUIContent FocalLengthLabel = new GUIContent("Focal Length", "The length of the lens (in mm)"); + + public override void OnGUI(Rect rect, SerializedProperty property, GUIContent label) + { + float height = EditorGUIUtility.singleLineHeight; + rect.height = height; + property.isExpanded = EditorGUI.Foldout( + new Rect(rect.x, rect.y, EditorGUIUtility.labelWidth, rect.height), + property.isExpanded, label, true); + if (property.isExpanded) + { + ++EditorGUI.indentLevel; + rect.y += height + vSpace; + if (IsOrtho) + EditorGUI.PropertyField(rect, property.FindPropertyRelative(() => def.OrthographicSize)); + else + { + if (IsPhysical) + DrawFocalLengthControl(rect, property); + else + DrawFOVControl(rect, property); + } + rect.y += height + vSpace; + EditorGUI.PropertyField(rect, property.FindPropertyRelative(() => def.NearClipPlane)); + rect.y += height + vSpace; + EditorGUI.PropertyField(rect, property.FindPropertyRelative(() => def.FarClipPlane)); + if (IsPhysical) + { + rect.y += height + vSpace; + EditorGUI.PropertyField(rect, property.FindPropertyRelative(() => def.LensShift)); + } + rect.y += height + vSpace; + EditorGUI.PropertyField(rect, property.FindPropertyRelative(() => def.Dutch)); + --EditorGUI.indentLevel; + } + } + + static float ExtraSpaceHackWTF() { return EditorGUIUtility.singleLineHeight - 2; } + + void DrawFOVControl(Rect rect, SerializedProperty property) + { + var FOVProperty = property.FindPropertyRelative(() => def.FieldOfView); + float dropdownWidth = (rect.width - EditorGUIUtility.labelWidth) / 3; + rect.width -= dropdownWidth; + EditorGUI.PropertyField(rect, FOVProperty); + rect.x += rect.width; rect.width = dropdownWidth; + + CinemachineLensPresets presets = CinemachineLensPresets.InstanceIfExists; + int preset = (presets == null) ? -1 : presets.GetMatchingPreset(FOVProperty.floatValue); + rect.x -= ExtraSpaceHackWTF(); rect.width += ExtraSpaceHackWTF(); + int selection = EditorGUI.Popup(rect, GUIContent.none, preset, m_PresetOptions); + if (selection == m_PresetOptions.Length-1 && CinemachineLensPresets.Instance != null) + Selection.activeObject = presets = CinemachineLensPresets.Instance; + else if (selection >= 0 && selection < m_PresetOptions.Length-1) + { + FOVProperty.floatValue = presets.m_Presets[selection].m_FieldOfView; + property.serializedObject.ApplyModifiedProperties(); + } + } + + void DrawFocalLengthControl(Rect rect, SerializedProperty property) + { + var FOVProperty = property.FindPropertyRelative(() => def.FieldOfView); + float dropdownWidth = (rect.width - EditorGUIUtility.labelWidth) / 3; + rect.width -= dropdownWidth; + float f = VerticalFOVToFocalLength(FOVProperty.floatValue); + f = EditorGUI.FloatField(rect, FocalLengthLabel, f); + f = FocalLengthToVerticalFOV(f); + if (!Mathf.Approximately(FOVProperty.floatValue, f)) + { + FOVProperty.floatValue = Mathf.Clamp(f, 1, 179); + property.serializedObject.ApplyModifiedProperties(); + } + rect.x += rect.width; rect.width = dropdownWidth; + + CinemachineLensPresets presets = CinemachineLensPresets.InstanceIfExists; + int preset = (presets == null) ? -1 : presets.GetMatchingPhysicalPreset(VerticalFOVToFocalLength(FOVProperty.floatValue)); + rect.x -= ExtraSpaceHackWTF(); rect.width += ExtraSpaceHackWTF(); + int selection = EditorGUI.Popup(rect, GUIContent.none, preset, m_PhysicalPresetOptions); + if (selection == m_PhysicalPresetOptions.Length-1 && CinemachineLensPresets.Instance != null) + Selection.activeObject = presets = CinemachineLensPresets.Instance; + else if (selection >= 0 && selection < m_PhysicalPresetOptions.Length-1) + { + FOVProperty.floatValue = FocalLengthToVerticalFOV( + presets.m_PhysicalPresets[selection].m_FocalLength); + property.serializedObject.ApplyModifiedProperties(); + } + } + + float VerticalFOVToFocalLength(float fov) + { + return SensorSize.y * 0.5f / Mathf.Tan(Mathf.Deg2Rad * fov * 0.5f); + } + + float FocalLengthToVerticalFOV(float focalLength) + { + if (focalLength < UnityVectorExtensions.Epsilon) + return 180f; + return Mathf.Rad2Deg * 2.0f * Mathf.Atan(SensorSize.y * 0.5f / focalLength); + } + + bool IsOrtho { get; set; } + bool IsPhysical { get; set; } + Vector2 SensorSize { get; set; } + + GUIContent[] m_PresetOptions = new GUIContent[0]; + GUIContent[] m_PhysicalPresetOptions = new GUIContent[0]; + + void CacheABunchOfStuff(SerializedProperty property) + { + object lens = SerializedPropertyHelper.GetPropertyValue(property); + IsOrtho = AccessProperty(typeof(LensSettings), lens, "Orthographic"); + IsPhysical = AccessProperty(typeof(LensSettings), lens, "IsPhysicalCamera"); + SensorSize = AccessProperty(typeof(LensSettings), lens, "SensorSize"); + + List options = new List(); + CinemachineLensPresets presets = CinemachineLensPresets.InstanceIfExists; + if (presets != null) + for (int i = 0; i < presets.m_Presets.Length; ++i) + options.Add(new GUIContent(presets.m_Presets[i].m_Name)); + options.Add(new GUIContent("Edit Presets...")); + m_PresetOptions = options.ToArray(); + + options.Clear(); + if (presets != null) + for (int i = 0; i < presets.m_PhysicalPresets.Length; ++i) + options.Add(new GUIContent(presets.m_PhysicalPresets[i].m_FocalLength.ToString() + "mm")); + options.Add(new GUIContent("Edit Presets...")); + m_PhysicalPresetOptions = options.ToArray(); + } + + public override float GetPropertyHeight(SerializedProperty property, GUIContent label) + { + // Cache it here because it's called less often - less garbage + CacheABunchOfStuff(property); + + float height = EditorGUIUtility.singleLineHeight + vSpace; + if (property.isExpanded) + height *= IsPhysical ? 6 : 5; + return height - vSpace; + } + + static T AccessProperty(Type type, object obj, string memberName) + { + if (string.IsNullOrEmpty(memberName) || (type == null)) + return default(T); + + System.Reflection.BindingFlags bindingFlags = System.Reflection.BindingFlags.Public; + if (obj != null) + bindingFlags |= System.Reflection.BindingFlags.Instance; + else + bindingFlags |= System.Reflection.BindingFlags.Static; + + PropertyInfo pi = type.GetProperty(memberName, bindingFlags); + if ((pi != null) && (pi.PropertyType == typeof(T))) + return (T)pi.GetValue(obj, null); + else + return default(T); + } + } +} diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Editor/PropertyDrawers/LensSettingsPropertyDrawer.cs.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Editor/PropertyDrawers/LensSettingsPropertyDrawer.cs.meta" new file mode 100644 index 00000000..f9b40bd0 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Editor/PropertyDrawers/LensSettingsPropertyDrawer.cs.meta" @@ -0,0 +1,12 @@ +fileFormatVersion: 2 +guid: 2449eb616c871d044adce04ac98030a6 +timeCreated: 1496951835 +licenseType: Pro +MonoImporter: + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Editor/PropertyDrawers/NoiseSettingsPropertyDrawer.cs" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Editor/PropertyDrawers/NoiseSettingsPropertyDrawer.cs" new file mode 100644 index 00000000..96a7506e --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Editor/PropertyDrawers/NoiseSettingsPropertyDrawer.cs" @@ -0,0 +1,158 @@ +using UnityEngine; +using UnityEditor; +using System.Collections.Generic; + +namespace Cinemachine.Editor +{ + [CustomPropertyDrawer(typeof(NoiseSettingsPropertyAttribute))] + internal sealed class NoiseSettingsPropertyDrawer : PropertyDrawer + { + public override void OnGUI(Rect rect, SerializedProperty property, GUIContent label) + { + RebuildProfileList(); + + float iconSize = rect.height + 4; + rect.width -= iconSize; + int preset = sNoisePresets.IndexOf((NoiseSettings)property.objectReferenceValue); + preset = EditorGUI.Popup(rect, label, preset, sNoisePresetNames); + string labelText = label.text; + NoiseSettings newProfile = preset < 0 ? null : sNoisePresets[preset] as NoiseSettings; + if ((NoiseSettings)property.objectReferenceValue != newProfile) + { + property.objectReferenceValue = newProfile; + property.serializedObject.ApplyModifiedProperties(); + } + rect.x += rect.width; rect.width = iconSize; rect.height = iconSize; + if (GUI.Button(rect, EditorGUIUtility.IconContent("_Popup"), GUI.skin.label)) + { + GenericMenu menu = new GenericMenu(); + if (property.objectReferenceValue != null) + { + menu.AddItem(new GUIContent("Edit"), false, () + => Selection.activeObject = property.objectReferenceValue); + menu.AddItem(new GUIContent("Clone"), false, () => + { + NoiseSettings pp = CreateProfile( + property, labelText, + (NoiseSettings)property.objectReferenceValue); + if (pp != null) + { + property.objectReferenceValue = pp; + property.serializedObject.ApplyModifiedProperties(); + InvalidateProfileList(); + } + }); + menu.AddItem(new GUIContent("Locate"), false, () + => EditorGUIUtility.PingObject(property.objectReferenceValue)); + } + menu.AddItem(new GUIContent("New"), false, () => + { + //Undo.RecordObject(Target, "Change Noise Profile"); + NoiseSettings pp = CreateProfile(property, labelText, null); + if (pp != null) + { + property.objectReferenceValue = pp; + property.serializedObject.ApplyModifiedProperties(); + InvalidateProfileList(); + } + }); + menu.ShowAsContext(); + } + } + + static List sNoisePresets; + static GUIContent[] sNoisePresetNames; + static float sLastPresetRebuildTime = 0; + + public static void InvalidateProfileList() + { + sNoisePresets = null; + sNoisePresetNames = null; + } + + static void RebuildProfileList() + { + if (sLastPresetRebuildTime < Time.realtimeSinceStartup - 5) + InvalidateProfileList(); + if (sNoisePresets != null && sNoisePresetNames != null) + return; + + sNoisePresets = FindAssetsByType(); +#if UNITY_2018_1_OR_NEWER + InspectorUtility.AddAssetsFromPackageSubDirectory( + typeof(NoiseSettings), sNoisePresets, "Presets/Noise"); +#endif + sNoisePresets.Insert(0, null); + List presetNameList = new List(); + foreach (var n in sNoisePresets) + presetNameList.Add(new GUIContent((n == null) ? "(none)" : n.name)); + sNoisePresetNames = presetNameList.ToArray(); + sLastPresetRebuildTime = Time.realtimeSinceStartup; + } + + static List FindAssetsByType() where T : UnityEngine.Object + { + List assets = new List(); + string[] guids = AssetDatabase.FindAssets(string.Format("t:{0}", typeof(T))); + for (int i = 0; i < guids.Length; i++) + { + string assetPath = AssetDatabase.GUIDToAssetPath(guids[i]); + ScriptableObject asset = AssetDatabase.LoadAssetAtPath(assetPath) as ScriptableObject; + if (asset != null) + assets.Add(asset); + } + return assets; + } + + NoiseSettings CreateProfile(SerializedProperty property, string label, NoiseSettings copyFrom) + { + string path = GetObjectName(property) + " " + label; + path = EditorUtility.SaveFilePanelInProject( + "Create Noise Profile asset", path, "asset", + "This asset will generate a procedural noise signal"); + if (!string.IsNullOrEmpty(path)) + { + NoiseSettings profile = null; + if (copyFrom != null) + { + string fromPath = AssetDatabase.GetAssetPath(copyFrom); + if (AssetDatabase.CopyAsset(fromPath, path)) + { + profile = AssetDatabase.LoadAssetAtPath( + path, typeof(NoiseSettings)) as NoiseSettings; + } + } + else + { + profile = ScriptableObjectUtility.CreateAt( + typeof(NoiseSettings), path) as NoiseSettings; + } + AssetDatabase.SaveAssets(); + AssetDatabase.Refresh(); + return profile; + } + return null; + } + + static string GetObjectName(SerializedProperty property) + { + // A little hacky here, as we favour virtual cameras... + var obj = property.serializedObject.targetObject; + GameObject go = obj as GameObject; + if (go == null) + { + var component = obj as Component; + if (component != null) + go = component.gameObject; + } + if (go != null) + { + var vcam = go.GetComponentInParent(); + if (vcam != null) + return vcam.Name; + return go.name; + } + return obj.name; + } + } +} diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Editor/PropertyDrawers/NoiseSettingsPropertyDrawer.cs.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Editor/PropertyDrawers/NoiseSettingsPropertyDrawer.cs.meta" new file mode 100644 index 00000000..d681282e --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Editor/PropertyDrawers/NoiseSettingsPropertyDrawer.cs.meta" @@ -0,0 +1,13 @@ +fileFormatVersion: 2 +guid: 7d0d800d47186f0468d962ccf338ab97 +timeCreated: 1518034045 +licenseType: Pro +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Editor/PropertyDrawers/OrbitalTransposerHeadingPropertyDrawer.cs" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Editor/PropertyDrawers/OrbitalTransposerHeadingPropertyDrawer.cs" new file mode 100644 index 00000000..28ee2b8a --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Editor/PropertyDrawers/OrbitalTransposerHeadingPropertyDrawer.cs" @@ -0,0 +1,55 @@ +using UnityEngine; +using UnityEditor; + +namespace Cinemachine.Editor +{ + [CustomPropertyDrawer(typeof(OrbitalTransposerHeadingPropertyAttribute))] + internal sealed class OrbitalTransposerHeadingPropertyDrawer : PropertyDrawer + { + const int vSpace = 2; + bool mExpanded = true; + CinemachineOrbitalTransposer.Heading def = new CinemachineOrbitalTransposer.Heading(); // to access name strings + + public override void OnGUI(Rect rect, SerializedProperty property, GUIContent label) + { + float height = EditorGUIUtility.singleLineHeight; + rect.height = height; + mExpanded = EditorGUI.Foldout(rect, mExpanded, label, true); + if (mExpanded) + { + ++EditorGUI.indentLevel; + + rect.y += height + vSpace; + EditorGUI.PropertyField(rect, property.FindPropertyRelative(() => def.m_Definition)); + + if (IsVelocityMode(property)) + { + rect.y += height + vSpace; + EditorGUI.PropertyField(rect, property.FindPropertyRelative(() => def.m_VelocityFilterStrength)); + } + + rect.y += height + vSpace; + EditorGUI.PropertyField(rect, property.FindPropertyRelative(() => def.m_Bias)); + + --EditorGUI.indentLevel; + } + } + + public override float GetPropertyHeight(SerializedProperty property, GUIContent label) + { + float height = EditorGUIUtility.singleLineHeight + vSpace; + if (mExpanded) + height *= IsVelocityMode(property) ? 4 : 3; + return height; + } + + bool IsVelocityMode(SerializedProperty property) + { + var mode = property.FindPropertyRelative(() => def.m_Definition); + var value = (CinemachineOrbitalTransposer.Heading.HeadingDefinition) + (System.Enum.GetValues(typeof(CinemachineOrbitalTransposer.Heading.HeadingDefinition))).GetValue(mode.enumValueIndex); + return value == CinemachineOrbitalTransposer.Heading.HeadingDefinition.Velocity + || value == CinemachineOrbitalTransposer.Heading.HeadingDefinition.PositionDelta; + } + } +} diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Editor/PropertyDrawers/OrbitalTransposerHeadingPropertyDrawer.cs.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Editor/PropertyDrawers/OrbitalTransposerHeadingPropertyDrawer.cs.meta" new file mode 100644 index 00000000..1c78da79 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Editor/PropertyDrawers/OrbitalTransposerHeadingPropertyDrawer.cs.meta" @@ -0,0 +1,13 @@ +fileFormatVersion: 2 +guid: cd1b3b6848c215f4cba3ace2c38f9bce +timeCreated: 1514911474 +licenseType: Pro +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Editor/Resources.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Editor/Resources.meta" new file mode 100644 index 00000000..7a35839d --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Editor/Resources.meta" @@ -0,0 +1,9 @@ +fileFormatVersion: 2 +guid: 99ab3e8b62cb69145b760fc81e2d18d6 +folderAsset: yes +timeCreated: 1489096338 +licenseType: Pro +DefaultImporter: + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Editor/Resources/CMWaveform.compute" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Editor/Resources/CMWaveform.compute" new file mode 100644 index 00000000..9c9e2b4d --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Editor/Resources/CMWaveform.compute" @@ -0,0 +1,60 @@ +#include "StdLib.hlsl" + +RWStructuredBuffer _WaveformBuffer; +Texture2D _Source; +SamplerState sampler_Source; + +cbuffer name +{ + float4 _Params; // x: source width, y: source height, z: linear, w: histogramResolution +}; + +#if defined SHADER_API_GLES3 + #define GROUP_SIZE 128 + #define GROUP_SIZE_X 16 + #define GROUP_SIZE_Y 8 +#else + #define GROUP_SIZE 256 + #define GROUP_SIZE_X 16 + #define GROUP_SIZE_Y 16 +#endif + +half3 LinearToSRGB(half3 c) +{ + half3 sRGBLo = c * 12.92; + half3 sRGBHi = (PositivePow(c, half3(1.0 / 2.4, 1.0 / 2.4, 1.0 / 2.4)) * 1.055) - 0.055; + half3 sRGB = (c <= 0.0031308) ? sRGBLo : sRGBHi; + return sRGB; +} + +#pragma kernel KCMWaveformGather +[numthreads(1, GROUP_SIZE, 1)] +void KCMWaveformGather(uint2 dispatchThreadId : SV_DispatchThreadID) +{ + // Gather local group histogram + if (dispatchThreadId.x < uint(_Params.x) && dispatchThreadId.y < uint(_Params.y)) + { + float3 color = _Source[dispatchThreadId].rgb; + color = saturate(color); + + // We want a gamma-corrected histogram (like Photoshop & all) + if (_Params.z > 0) + color = LinearToSRGB(color); + + // Convert channel values to histogram bins + uint3 idx = (uint3)(round(color * (_Params.w - 1))); + idx += dispatchThreadId.x * _Params.w; + + if (idx.x > 0u) InterlockedAdd(_WaveformBuffer[idx.x].x, 1u); // Red + if (idx.y > 0u) InterlockedAdd(_WaveformBuffer[idx.y].y, 1u); // Green + if (idx.z > 0u) InterlockedAdd(_WaveformBuffer[idx.z].z, 1u); // Blue + } +} + +#pragma kernel KCMWaveformClear +[numthreads(GROUP_SIZE_X, GROUP_SIZE_Y, 1)] +void KCMWaveformClear(uint2 dispatchThreadId : SV_DispatchThreadID) +{ + if (dispatchThreadId.x < uint(_Params.x) && dispatchThreadId.y < uint(_Params.w)) + _WaveformBuffer[dispatchThreadId.y * uint(_Params.x) + dispatchThreadId.x] = uint4(0u, 0u, 0u, 0u); +} diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Editor/Resources/CMWaveform.compute.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Editor/Resources/CMWaveform.compute.meta" new file mode 100644 index 00000000..c52d56ab --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Editor/Resources/CMWaveform.compute.meta" @@ -0,0 +1,10 @@ +fileFormatVersion: 2 +guid: 6dd3f00b9032de54c8784df7bdc6fdf8 +timeCreated: 1517591688 +licenseType: Pro +ComputeShaderImporter: + externalObjects: {} + currentAPIMask: 4 + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Editor/Resources/CMWaveform.shader" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Editor/Resources/CMWaveform.shader" new file mode 100644 index 00000000..4e640789 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Editor/Resources/CMWaveform.shader" @@ -0,0 +1,57 @@ +Shader "CMWaveform" +{ + HLSLINCLUDE + + #pragma target 4.5 + #include "StdLib.hlsl" + + StructuredBuffer _WaveformBuffer; + float3 _Params; // x: buffer width, y: buffer height, z: exposure, w: unused + + float3 Tonemap(float3 x, float exposure) + { + const float a = 6.2; + const float b = 0.5; + const float c = 1.7; + const float d = 0.06; + x *= exposure; + x = max((0.0).xxx, x - (0.004).xxx); + x = (x * (a * x + b)) / (x * (a * x + c) + d); + return x * x; + } + + float4 Frag(VaryingsDefault i) : SV_Target + { + const float3 red = float3(1.4, 0.03, 0.02); + const float3 green = float3(0.02, 1.1, 0.05); + const float3 blue = float3(0.0, 0.25, 1.5); + float3 color = float3(0.0, 0.0, 0.0); + + uint2 uvI = i.vertex.xy; + float3 w = _WaveformBuffer[uvI.x * _Params.y + uvI.y].xyz; + + color += red * w.r; + color += green * w.g; + color += blue * w.b; + color = Tonemap(color, _Params.z); + + return float4(saturate(color), 1.0); + } + + ENDHLSL + + SubShader + { + Cull Off ZWrite Off ZTest Always + + Pass + { + HLSLPROGRAM + + #pragma vertex VertDefault + #pragma fragment Frag + + ENDHLSL + } + } +} diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Editor/Resources/CMWaveform.shader.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Editor/Resources/CMWaveform.shader.meta" new file mode 100644 index 00000000..2142f5e8 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Editor/Resources/CMWaveform.shader.meta" @@ -0,0 +1,10 @@ +fileFormatVersion: 2 +guid: e4e5d566a8aa9914c906555a6857fcb9 +timeCreated: 1517591688 +licenseType: Pro +ShaderImporter: + externalObjects: {} + defaultTextures: [] + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Editor/Resources/Cinemachine_header.tif" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Editor/Resources/Cinemachine_header.tif" new file mode 100644 index 00000000..30b5272d Binary files /dev/null and "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Editor/Resources/Cinemachine_header.tif" differ diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Editor/Resources/Cinemachine_header.tif.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Editor/Resources/Cinemachine_header.tif.meta" new file mode 100644 index 00000000..df6ada0f --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Editor/Resources/Cinemachine_header.tif.meta" @@ -0,0 +1,74 @@ +fileFormatVersion: 2 +guid: 372fe04232d5ed94d8d71524616c1543 +timeCreated: 1503608963 +licenseType: Pro +TextureImporter: + fileIDToRecycleName: {} + serializedVersion: 4 + mipmaps: + mipMapMode: 0 + enableMipMap: 1 + sRGBTexture: 1 + linearTexture: 0 + fadeOut: 0 + borderMipMap: 0 + mipMapsPreserveCoverage: 0 + alphaTestReferenceValue: 0.5 + mipMapFadeDistanceStart: 1 + mipMapFadeDistanceEnd: 3 + bumpmap: + convertToNormalMap: 0 + externalNormalMap: 0 + heightScale: 0.25 + normalMapFilter: 0 + isReadable: 0 + grayScaleToAlpha: 0 + generateCubemap: 6 + cubemapConvolution: 0 + seamlessCubemap: 0 + textureFormat: 1 + maxTextureSize: 2048 + textureSettings: + serializedVersion: 2 + filterMode: -1 + aniso: -1 + mipBias: -1 + wrapU: -1 + wrapV: -1 + wrapW: -1 + nPOTScale: 1 + lightmap: 0 + compressionQuality: 50 + spriteMode: 0 + spriteExtrude: 1 + spriteMeshType: 1 + alignment: 0 + spritePivot: {x: 0.5, y: 0.5} + spriteBorder: {x: 0, y: 0, z: 0, w: 0} + spritePixelsToUnits: 100 + alphaUsage: 1 + alphaIsTransparency: 0 + spriteTessellationDetail: -1 + textureType: 0 + textureShape: 1 + maxTextureSizeSet: 0 + compressionQualitySet: 0 + textureFormatSet: 0 + platformSettings: + - buildTarget: DefaultTexturePlatform + maxTextureSize: 2048 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + spriteSheet: + serializedVersion: 2 + sprites: [] + outline: [] + physicsShape: [] + spritePackingTag: + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Editor/Resources/StdLib.hlsl" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Editor/Resources/StdLib.hlsl" new file mode 100644 index 00000000..4cd863f0 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Editor/Resources/StdLib.hlsl" @@ -0,0 +1,63 @@ +// Subset of PostProcessing's stdlib.hlsl + +#ifndef UNITY_CMWAVEFORM_STDLIB +#define UNITY_CMWAVEFORM_STDLIB + +const float _RenderViewportScaleFactor = 1; + +#define FLT_EPSILON 1.192092896e-07 // Smallest positive number, such that 1.0 + FLT_EPSILON != 1.0 + +float3 PositivePow(float3 base, float3 power) +{ + return pow(max(abs(base), float3(FLT_EPSILON, FLT_EPSILON, FLT_EPSILON)), power); +} + +#if defined(UNITY_SINGLE_PASS_STEREO) +float2 TransformStereoScreenSpaceTex(float2 uv, float w) +{ + float4 scaleOffset = unity_StereoScaleOffset[unity_StereoEyeIndex]; + scaleOffset.xy *= _RenderViewportScaleFactor; + return uv.xy * scaleOffset.xy + scaleOffset.zw * w; +} +#else +float2 TransformStereoScreenSpaceTex(float2 uv, float w) +{ + return uv * _RenderViewportScaleFactor; +} +#endif + +// Vertex manipulation +float2 TransformTriangleVertexToUV(float2 vertex) +{ + float2 uv = (vertex + 1.0) * 0.5; + return uv; +} + +struct AttributesDefault +{ + float3 vertex : POSITION; +}; + +struct VaryingsDefault +{ + float4 vertex : SV_POSITION; + float2 texcoord : TEXCOORD0; + float2 texcoordStereo : TEXCOORD1; +}; + +VaryingsDefault VertDefault(AttributesDefault v) +{ + VaryingsDefault o; + o.vertex = float4(v.vertex.xy, 0.0, 1.0); + o.texcoord = TransformTriangleVertexToUV(v.vertex.xy); + +#if UNITY_UV_STARTS_AT_TOP + o.texcoord = o.texcoord * float2(1.0, -1.0) + float2(0.0, 1.0); +#endif + + o.texcoordStereo = TransformStereoScreenSpaceTex(o.texcoord, 1.0); + + return o; +} + +#endif // UNITY_CMWAVEFORM_STDLIB diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Editor/Resources/StdLib.hlsl.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Editor/Resources/StdLib.hlsl.meta" new file mode 100644 index 00000000..791b28ba --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Editor/Resources/StdLib.hlsl.meta" @@ -0,0 +1,10 @@ +fileFormatVersion: 2 +guid: f34d110791e602a418f182fbec6b699d +timeCreated: 1517597295 +licenseType: Pro +ShaderImporter: + externalObjects: {} + defaultTextures: [] + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Editor/Resources/cm_logo_sm.png" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Editor/Resources/cm_logo_sm.png" new file mode 100644 index 00000000..47f19039 Binary files /dev/null and "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Editor/Resources/cm_logo_sm.png" differ diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Editor/Resources/cm_logo_sm.png.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Editor/Resources/cm_logo_sm.png.meta" new file mode 100644 index 00000000..2fe92a72 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Editor/Resources/cm_logo_sm.png.meta" @@ -0,0 +1,82 @@ +fileFormatVersion: 2 +guid: 5f2a108eb023faf43a809979fd3d38f2 +timeCreated: 1481660562 +licenseType: Pro +TextureImporter: + fileIDToRecycleName: {} + serializedVersion: 4 + mipmaps: + mipMapMode: 1 + enableMipMap: 1 + sRGBTexture: 1 + linearTexture: 0 + fadeOut: 0 + borderMipMap: 0 + mipMapsPreserveCoverage: 0 + alphaTestReferenceValue: 0.5 + mipMapFadeDistanceStart: 1 + mipMapFadeDistanceEnd: 3 + bumpmap: + convertToNormalMap: 0 + externalNormalMap: 0 + heightScale: 0.25 + normalMapFilter: 0 + isReadable: 0 + grayScaleToAlpha: 0 + generateCubemap: 6 + cubemapConvolution: 0 + seamlessCubemap: 0 + textureFormat: 1 + maxTextureSize: 2048 + textureSettings: + serializedVersion: 2 + filterMode: -1 + aniso: -1 + mipBias: -1 + wrapU: -1 + wrapV: -1 + wrapW: -1 + nPOTScale: 1 + lightmap: 0 + compressionQuality: 50 + spriteMode: 0 + spriteExtrude: 1 + spriteMeshType: 1 + alignment: 0 + spritePivot: {x: 0.5, y: 0.5} + spriteBorder: {x: 0, y: 0, z: 0, w: 0} + spritePixelsToUnits: 100 + alphaUsage: 1 + alphaIsTransparency: 0 + spriteTessellationDetail: -1 + textureType: 0 + textureShape: 1 + maxTextureSizeSet: 0 + compressionQualitySet: 0 + textureFormatSet: 0 + platformSettings: + - buildTarget: DefaultTexturePlatform + maxTextureSize: 2048 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + - buildTarget: Standalone + maxTextureSize: 2048 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + spriteSheet: + serializedVersion: 2 + sprites: [] + outline: [] + physicsShape: [] + spritePackingTag: + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Editor/Timeline.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Editor/Timeline.meta" new file mode 100644 index 00000000..2290b0ad --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Editor/Timeline.meta" @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 59bf6f737ca29494a8a074e4e7151fc3 +folderAsset: yes +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Editor/Timeline/CinemachineShotEditor.cs" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Editor/Timeline/CinemachineShotEditor.cs" new file mode 100644 index 00000000..1cee8f6b --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Editor/Timeline/CinemachineShotEditor.cs" @@ -0,0 +1,146 @@ +using UnityEditor; +using UnityEngine; +using Cinemachine.Editor; +using System.Collections.Generic; +using UnityEditor.Timeline; + +namespace Cinemachine.Timeline +{ + [CustomEditor(typeof(CinemachineShot))] + internal sealed class CinemachineShotEditor : BaseEditor + { + private static readonly GUIContent kVirtualCameraLabel + = new GUIContent("Virtual Camera", "The virtual camera to use for this shot"); + + protected override List GetExcludedPropertiesInInspector() + { + List excluded = base.GetExcludedPropertiesInInspector(); + excluded.Add(FieldPath(x => x.VirtualCamera)); + return excluded; + } + + private void OnDisable() + { + DestroyComponentEditors(); + } + + private void OnDestroy() + { + DestroyComponentEditors(); + } + + public override void OnInspectorGUI() + { + BeginInspector(); + SerializedProperty vcamProperty = FindProperty(x => x.VirtualCamera); + EditorGUI.indentLevel = 0; // otherwise subeditor layouts get screwed up + + Rect rect; + CinemachineVirtualCameraBase vcam + = vcamProperty.exposedReferenceValue as CinemachineVirtualCameraBase; + if (vcam != null) + EditorGUILayout.PropertyField(vcamProperty, kVirtualCameraLabel); + else + { + GUIContent createLabel = new GUIContent("Create"); + Vector2 createSize = GUI.skin.button.CalcSize(createLabel); + + rect = EditorGUILayout.GetControlRect(true); + rect.width -= createSize.x; + + EditorGUI.PropertyField(rect, vcamProperty, kVirtualCameraLabel); + rect.x += rect.width; rect.width = createSize.x; + if (GUI.Button(rect, createLabel)) + { + vcam = CinemachineMenu.CreateDefaultVirtualCamera(); + vcamProperty.exposedReferenceValue = vcam; + } + serializedObject.ApplyModifiedProperties(); + } + + EditorGUI.BeginChangeCheck(); + DrawRemainingPropertiesInInspector(); + + if (vcam != null) + DrawSubeditors(vcam); + + // by default timeline rebuilds the entire graph when something changes, + // but if a property of the virtual camera changes, we only need to re-evaluate the timeline. + // this prevents flicker on post processing updates + if (EditorGUI.EndChangeCheck()) + { +#if UNITY_2018_3_OR_NEWER + TimelineEditor.Refresh(RefreshReason.SceneNeedsUpdate); +#endif + GUI.changed = false; + } + } + + void DrawSubeditors(CinemachineVirtualCameraBase vcam) + { + // Create an editor for each of the cinemachine virtual cam and its components + GUIStyle foldoutStyle = new GUIStyle(EditorStyles.foldout) { fontStyle = FontStyle.Bold }; + UpdateComponentEditors(vcam); + if (m_editors != null) + { + foreach (UnityEditor.Editor e in m_editors) + { + if (e == null || e.target == null || (e.target.hideFlags & HideFlags.HideInInspector) != 0) + continue; + + // Separator line - how do you make a thinner one? + GUILayout.Box("", new GUILayoutOption[] { GUILayout.ExpandWidth(true), GUILayout.Height(1) } ); + + bool expanded = true; + if (!s_EditorExpanded.TryGetValue(e.target.GetType(), out expanded)) + expanded = true; + expanded = EditorGUILayout.Foldout( + expanded, e.target.GetType().Name, true, foldoutStyle); + if (expanded) + e.OnInspectorGUI(); + s_EditorExpanded[e.target.GetType()] = expanded; + } + } + } + + CinemachineVirtualCameraBase m_cachedReferenceObject; + UnityEditor.Editor[] m_editors = null; + static Dictionary s_EditorExpanded = new Dictionary(); + + void UpdateComponentEditors(CinemachineVirtualCameraBase obj) + { + MonoBehaviour[] components = null; + if (obj != null) + components = obj.gameObject.GetComponents(); + int numComponents = (components == null) ? 0 : components.Length; + int numEditors = (m_editors == null) ? 0 : m_editors.Length; + if (m_cachedReferenceObject != obj || (numComponents + 1) != numEditors) + { + DestroyComponentEditors(); + m_cachedReferenceObject = obj; + if (obj != null) + { + m_editors = new UnityEditor.Editor[components.Length + 1]; + CreateCachedEditor(obj.gameObject.GetComponent(), null, ref m_editors[0]); + for (int i = 0; i < components.Length; ++i) + CreateCachedEditor(components[i], null, ref m_editors[i + 1]); + } + } + } + + void DestroyComponentEditors() + { + m_cachedReferenceObject = null; + if (m_editors != null) + { + for (int i = 0; i < m_editors.Length; ++i) + { + if (m_editors[i] != null) + UnityEngine.Object.DestroyImmediate(m_editors[i]); + m_editors[i] = null; + } + m_editors = null; + } + } + } +} diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Editor/Timeline/CinemachineShotEditor.cs.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Editor/Timeline/CinemachineShotEditor.cs.meta" new file mode 100644 index 00000000..9b938dfd --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Editor/Timeline/CinemachineShotEditor.cs.meta" @@ -0,0 +1,12 @@ +fileFormatVersion: 2 +guid: f24a4388d07ef494e8516cb859803e09 +timeCreated: 1484435492 +licenseType: Pro +MonoImporter: + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Editor/Utility.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Editor/Utility.meta" new file mode 100644 index 00000000..5dc84001 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Editor/Utility.meta" @@ -0,0 +1,9 @@ +fileFormatVersion: 2 +guid: 29d58ccb958d24942bf23fafcec87c0b +folderAsset: yes +timeCreated: 1489096338 +licenseType: Pro +DefaultImporter: + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Editor/Utility/BaseEditor.cs" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Editor/Utility/BaseEditor.cs" new file mode 100644 index 00000000..61c8d42f --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Editor/Utility/BaseEditor.cs" @@ -0,0 +1,83 @@ +using UnityEditor; +using System; +using System.Collections.Generic; +using Cinemachine.Utility; +using System.Linq.Expressions; + +namespace Cinemachine.Editor +{ + /// + /// A convenience base class for making inspector editors. + /// + /// The class we're editing + public class BaseEditor : UnityEditor.Editor where T : class + { + protected T Target { get { return target as T; } } + + protected SerializedProperty FindAndExcludeProperty(Expression> expr) + { + SerializedProperty p = FindProperty(expr); + ExcludeProperty(p.name); + return p; + } + + protected SerializedProperty FindProperty(Expression> expr) + { + return serializedObject.FindProperty(FieldPath(expr)); + } + + protected string FieldPath(Expression> expr) + { + return ReflectionHelpers.GetFieldPath(expr); + } + + protected virtual List GetExcludedPropertiesInInspector() + { + var excluded = new List() { "m_Script" }; + if (mAdditionalExcluded != null) + excluded.AddRange(mAdditionalExcluded); + return excluded; + } + + List mAdditionalExcluded; + protected void ExcludeProperty(string propertyName) + { + if (mAdditionalExcluded == null) + mAdditionalExcluded = new List(); + mAdditionalExcluded.Add(propertyName); + } + + public override void OnInspectorGUI() + { + BeginInspector(); + DrawRemainingPropertiesInInspector(); + } + + protected virtual void BeginInspector() + { + mAdditionalExcluded = null; + serializedObject.Update(); + } + + protected virtual void DrawPropertyInInspector(SerializedProperty p) + { + List excluded = GetExcludedPropertiesInInspector(); + if (!excluded.Contains(p.name)) + { + EditorGUI.BeginChangeCheck(); + EditorGUILayout.PropertyField(p); + if (EditorGUI.EndChangeCheck()) + serializedObject.ApplyModifiedProperties(); + ExcludeProperty(p.name); + } + } + + protected void DrawRemainingPropertiesInInspector() + { + EditorGUI.BeginChangeCheck(); + DrawPropertiesExcluding(serializedObject, GetExcludedPropertiesInInspector().ToArray()); + if (EditorGUI.EndChangeCheck()) + serializedObject.ApplyModifiedProperties(); + } + } +} diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Editor/Utility/BaseEditor.cs.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Editor/Utility/BaseEditor.cs.meta" new file mode 100644 index 00000000..aa543296 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Editor/Utility/BaseEditor.cs.meta" @@ -0,0 +1,12 @@ +fileFormatVersion: 2 +guid: 15ef94834d9e4aa44ac8fe619843346b +timeCreated: 1506620939 +licenseType: Pro +MonoImporter: + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Editor/Utility/CinemachineLensPresets.cs" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Editor/Utility/CinemachineLensPresets.cs" new file mode 100644 index 00000000..fbe949de --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Editor/Utility/CinemachineLensPresets.cs" @@ -0,0 +1,121 @@ +using UnityEngine; +using System; +using UnityEditor; +using System.Collections.Generic; + +namespace Cinemachine.Editor +{ + /// + /// User-definable named presets for lenses. This is a Singleton asset, available in editor only + /// + [DocumentationSorting(DocumentationSortingAttribute.Level.UserRef)] + [Serializable] + public sealed class CinemachineLensPresets : ScriptableObject + { + private static CinemachineLensPresets sInstance = null; + private static bool alreadySearched = false; + + /// Get the singleton instance of this object, or null if it doesn't exist + public static CinemachineLensPresets InstanceIfExists + { + get + { + if (!alreadySearched) + { + alreadySearched = true; + var guids = AssetDatabase.FindAssets("t:CinemachineLensPresets"); + for (int i = 0; i < guids.Length && sInstance == null; ++i) + sInstance = AssetDatabase.LoadAssetAtPath( + AssetDatabase.GUIDToAssetPath(guids[i])); + } + return sInstance; + } + } + + /// Get the singleton instance of this object. Creates asset if nonexistant + public static CinemachineLensPresets Instance + { + get + { + if (InstanceIfExists == null) + { + string newAssetPath = EditorUtility.SaveFilePanelInProject( + "Create Lens Presets asset", "CinemachineLensPresets", "asset", + "This editor-only file will contain the lens presets for this project"); + if (!string.IsNullOrEmpty(newAssetPath)) + { + sInstance = CreateInstance(); + // Create some sample presets + List defaults = new List(); + defaults.Add(new Preset() { m_Name = "21mm", m_FieldOfView = 60f } ); + defaults.Add(new Preset() { m_Name = "35mm", m_FieldOfView = 38f } ); + defaults.Add(new Preset() { m_Name = "58mm", m_FieldOfView = 23f } ); + defaults.Add(new Preset() { m_Name = "80mm", m_FieldOfView = 17f } ); + defaults.Add(new Preset() { m_Name = "125mm", m_FieldOfView = 10f } ); + sInstance.m_Presets = defaults.ToArray(); + AssetDatabase.CreateAsset(sInstance, newAssetPath); + AssetDatabase.SaveAssets(); + AssetDatabase.Refresh(); + } + } + return sInstance; + } + } + + /// Lens Preset + [DocumentationSorting(DocumentationSortingAttribute.Level.UserRef)] + [Serializable] + public struct Preset + { + [Tooltip("Lens Name")] + public string m_Name; + + /// + /// This is the camera view in vertical degrees. For cinematic people, a 50mm lens + /// on a super-35mm sensor would equal a 19.6 degree FOV + /// + [Range(1f, 179f)] + [Tooltip("This is the camera view in vertical degrees. For cinematic people, a 50mm lens on a super-35mm sensor would equal a 19.6 degree FOV")] + public float m_FieldOfView; + } + /// The array containing Preset definitions for nonphysical cameras + [Tooltip("The array containing Preset definitions, for nonphysical cameras")] + public Preset[] m_Presets = new Preset[0]; + + /// Physical Lens Preset + [DocumentationSorting(DocumentationSortingAttribute.Level.UserRef)] + [Serializable] + public struct PhysicalPreset + { + /// + /// This is the camera focal length in mm + /// + [Tooltip("This is the camera focal length in mm")] + public float m_FocalLength; + } + + /// The array containing Preset definitions, for physical cameras + [Tooltip("The array containing Preset definitions, for physical cameras")] + public PhysicalPreset[] m_PhysicalPresets = new PhysicalPreset[0]; + + /// Get the index of the preset that matches the lens settings + /// the preset index, or -1 if no matching preset + public int GetMatchingPreset(float fov) + { + for (int i = 0; i < m_Presets.Length; ++i) + if (Mathf.Approximately(m_Presets[i].m_FieldOfView, fov)) + return i; + return -1; + } + + /// Get the index of the physical preset that matches the lens settings + /// the preset index, or -1 if no matching preset + public int GetMatchingPhysicalPreset(float focalLength) + { + for (int i = 0; i < m_PhysicalPresets.Length; ++i) + if (Mathf.Approximately(m_PhysicalPresets[i].m_FocalLength, focalLength)) + return i; + return -1; + } + } +} diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Editor/Utility/CinemachineLensPresets.cs.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Editor/Utility/CinemachineLensPresets.cs.meta" new file mode 100644 index 00000000..18c2160c --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Editor/Utility/CinemachineLensPresets.cs.meta" @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 87edaa385191f4e43ac1e2831a02159f +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Editor/Utility/EmbeddedAssetHelpers.cs" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Editor/Utility/EmbeddedAssetHelpers.cs" new file mode 100644 index 00000000..379410bb --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Editor/Utility/EmbeddedAssetHelpers.cs" @@ -0,0 +1,177 @@ +using UnityEngine; +using UnityEditor; +using System; + +namespace Cinemachine.Editor +{ + /// + /// Helper for drawing embedded asset editors + /// + internal class EmbeddeAssetEditor where T : ScriptableObject + { + /// + /// Create in OnEnable() + /// + public EmbeddeAssetEditor(string propertyName, UnityEditor.Editor owner) + { + m_PropertyName = propertyName; + m_Owner = owner; + m_DoVersionControlChecks = UnityEditor.VersionControl.Provider.isActive; + m_CreateButtonGUIContent = new GUIContent( + "Create Asset", "Create a new shared settings asset"); + } + + /// + /// Called after the asset editor is created, in case it needs + /// to be customized + /// + public OnCreateEditorDelegate OnCreateEditor; + public delegate void OnCreateEditorDelegate(UnityEditor.Editor editor); + + /// + /// Called when the asset being edited was changed by the user. + /// + public OnChangedDelegate OnChanged; + public delegate void OnChangedDelegate(T obj); + + /// + /// Free the resources in OnDisable() + /// + public void OnDisable() + { + DestroyEditor(); + m_Owner = null; + } + + /// + /// Customize this after creation if you want + /// + public GUIContent m_CreateButtonGUIContent; + + private string m_PropertyName; + private UnityEditor.Editor m_Editor = null; + private UnityEditor.Editor m_Owner = null; + private bool m_DoVersionControlChecks = false; + + const int kIndentOffset = 6; + + /// + /// Call this from OnInspectorGUI. Will draw the asset reference field, and + /// the embedded editor, or a Create Asset button, if no asset is set. + /// + public void DrawEditorCombo( + string title, string defaultName, string extension, string message, + string showLabel, bool indent) + { + SerializedProperty property = m_Owner.serializedObject.FindProperty(m_PropertyName); + if (m_Editor == null) + UpdateEditor(); + if (m_Editor == null) + AssetFieldWithCreateButton(property, title, defaultName, extension, message); + else + { + EditorGUILayout.BeginVertical(GUI.skin.box); + Rect rect = EditorGUILayout.GetControlRect(true); + rect.height = EditorGUIUtility.singleLineHeight; + EditorGUI.BeginChangeCheck(); + EditorGUI.PropertyField(rect, property); + if (EditorGUI.EndChangeCheck()) + { + m_Owner.serializedObject.ApplyModifiedProperties(); + UpdateEditor(); + } + if (m_Editor != null) + { + Rect foldoutRect = new Rect( + rect.x - kIndentOffset, rect.y, rect.width + kIndentOffset, rect.height); + property.isExpanded = EditorGUI.Foldout( + foldoutRect, property.isExpanded, GUIContent.none, true); + + UnityEditor.VersionControl.Asset targetAsset + = UnityEditor.VersionControl.Provider.GetAssetByPath( + AssetDatabase.GetAssetPath(m_Editor.target)); + bool isLockedFile = m_DoVersionControlChecks + && !targetAsset.IsOneOfStates(new[] { + UnityEditor.VersionControl.Asset.States.CheckedOutLocal, + UnityEditor.VersionControl.Asset.States.AddedLocal, + }); + + GUI.enabled = !isLockedFile; + if (property.isExpanded) + { + EditorGUILayout.Separator(); + EditorGUILayout.HelpBox( + "This is a shared asset. Changes made here will apply to all users of this asset.", + MessageType.Info); + EditorGUI.BeginChangeCheck(); + if (indent) + ++EditorGUI.indentLevel; + m_Editor.OnInspectorGUI(); + if (indent) + --EditorGUI.indentLevel; + if (EditorGUI.EndChangeCheck() && (OnChanged != null)) + OnChanged(property.objectReferenceValue as T); + } + GUI.enabled = true; + if (isLockedFile && GUILayout.Button("Check out")) + { + UnityEditor.VersionControl.Provider.Checkout( + targetAsset, UnityEditor.VersionControl.CheckoutMode.Both); + } + } + EditorGUILayout.EndVertical(); + } + } + + private void AssetFieldWithCreateButton( + SerializedProperty property, + string title, string defaultName, string extension, string message) + { + EditorGUI.BeginChangeCheck(); + + float hSpace = 5; + float buttonWidth = GUI.skin.button.CalcSize(m_CreateButtonGUIContent).x; + Rect r = EditorGUILayout.GetControlRect(true); + r.width -= buttonWidth + hSpace; + EditorGUI.PropertyField(r, property); + r.x += r.width + hSpace; r.width = buttonWidth; + if (GUI.Button(r, m_CreateButtonGUIContent)) + { + string newAssetPath = EditorUtility.SaveFilePanelInProject( + title, defaultName, extension, message); + if (!string.IsNullOrEmpty(newAssetPath)) + { + T asset = ScriptableObjectUtility.CreateAt(newAssetPath); + property.objectReferenceValue = asset; + m_Owner.serializedObject.ApplyModifiedProperties(); + } + } + if (EditorGUI.EndChangeCheck()) + { + m_Owner.serializedObject.ApplyModifiedProperties(); + UpdateEditor(); + } + } + + public void DestroyEditor() + { + if (m_Editor != null) + { + UnityEngine.Object.DestroyImmediate(m_Editor); + m_Editor = null; + } + } + + public void UpdateEditor() + { + DestroyEditor(); + SerializedProperty property = m_Owner.serializedObject.FindProperty(m_PropertyName); + if (property.objectReferenceValue != null) + { + m_Editor = UnityEditor.Editor.CreateEditor(property.objectReferenceValue); + if (OnCreateEditor != null) + OnCreateEditor(m_Editor); + } + } + } +} diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Editor/Utility/EmbeddedAssetHelpers.cs.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Editor/Utility/EmbeddedAssetHelpers.cs.meta" new file mode 100644 index 00000000..c0bbee61 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Editor/Utility/EmbeddedAssetHelpers.cs.meta" @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: d30409ab90458e5409807c8b0274ac9c +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Editor/Utility/InspectorUtility.cs" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Editor/Utility/InspectorUtility.cs" new file mode 100644 index 00000000..3784aea1 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Editor/Utility/InspectorUtility.cs" @@ -0,0 +1,166 @@ +using UnityEngine; +using UnityEditor; +using System; +using System.Collections.Generic; +using System.IO; + +namespace Cinemachine.Editor +{ + public class InspectorUtility + { + /// Put multiple properties on a single inspector line, with + /// optional label overrides. Passing null as a label (or sublabel) override will + /// cause the property's displayName to be used as a label. For no label at all, + /// pass GUIContent.none. + public static void MultiPropertyOnLine( + Rect rect, + GUIContent label, + SerializedProperty[] props, GUIContent[] subLabels) + { + if (props == null || props.Length == 0) + return; + + const int hSpace = 2; + int indentLevel = EditorGUI.indentLevel; + float labelWidth = EditorGUIUtility.labelWidth; + + float totalSubLabelWidth = 0; + int numBoolColumns = 0; + List actualLabels = new List(); + for (int i = 0; i < props.Length; ++i) + { + GUIContent sublabel = new GUIContent(props[i].displayName, props[i].tooltip); + if (subLabels != null && subLabels.Length > i && subLabels[i] != null) + sublabel = subLabels[i]; + actualLabels.Add(sublabel); + totalSubLabelWidth += GUI.skin.label.CalcSize(sublabel).x; + if (i > 0) + totalSubLabelWidth += hSpace; + // Special handling for toggles, or it looks stupid + if (props[i].propertyType == SerializedPropertyType.Boolean) + { + totalSubLabelWidth += rect.height; + ++numBoolColumns; + } + } + + float subFieldWidth = rect.width - labelWidth - totalSubLabelWidth; + float numCols = props.Length - numBoolColumns; + float colWidth = numCols == 0 ? 0 : subFieldWidth / numCols; + + // Main label. If no first sublabel, then main label must take on that + // role, for mouse dragging value-scrolling support + int subfieldStartIndex = 0; + if (label == null) + label = new GUIContent(props[0].displayName, props[0].tooltip); + if (actualLabels[0] != GUIContent.none) + rect = EditorGUI.PrefixLabel(rect, label); + else + { + rect.width = labelWidth + colWidth; + EditorGUI.PropertyField(rect, props[0], label); + rect.x += rect.width + hSpace; + subfieldStartIndex = 1; + } + + for (int i = subfieldStartIndex; i < props.Length; ++i) + { + EditorGUI.indentLevel = 0; + EditorGUIUtility.labelWidth = GUI.skin.label.CalcSize(actualLabels[i]).x; + if (props[i].propertyType == SerializedPropertyType.Boolean) + { + rect.width = EditorGUIUtility.labelWidth + rect.height; + props[i].boolValue = EditorGUI.ToggleLeft(rect, actualLabels[i], props[i].boolValue); + } + else + { + rect.width = EditorGUIUtility.labelWidth + colWidth; + EditorGUI.PropertyField(rect, props[i], actualLabels[i]); + } + rect.x += rect.width + hSpace; + } + + EditorGUIUtility.labelWidth = labelWidth; + EditorGUI.indentLevel = indentLevel; + } + + public static AnimationCurve NormalizeCurve(AnimationCurve curve) + { + Keyframe[] keys = curve.keys; + if (keys.Length > 0) + { + float minTime = keys[0].time; + float maxTime = minTime; + float minVal = keys[0].value; + float maxVal = minVal; + for (int i = 0; i < keys.Length; ++i) + { + minTime = Mathf.Min(minTime, keys[i].time); + maxTime = Mathf.Max(maxTime, keys[i].time); + minVal = Mathf.Min(minVal, keys[i].value); + maxVal = Mathf.Max(maxVal, keys[i].value); + } + float range = maxTime - minTime; + float timeScale = range < 0.0001f ? 1 : 1 / range; + range = maxVal - minVal; + float valScale = range < 1 ? 1 : 1 / range; + float valOffset = 0; + if (range < 1) + { + if (minVal > 0 && minVal + range <= 1) + valOffset = minVal; + else + valOffset = 1 - range; + } + for (int i = 0; i < keys.Length; ++i) + { + keys[i].time = (keys[i].time - minTime) * timeScale; + keys[i].value = ((keys[i].value - minVal) * valScale) + valOffset; + } + curve.keys = keys; + } + return curve; + } + + public static string NicifyClassName(string name) + { + if (name.StartsWith("Cinemachine")) + name = name.Substring(11); // Trim the prefix + return ObjectNames.NicifyVariableName(name); + } + + public static void AddAssetsFromPackageSubDirectory( + Type type, List assets, string path) + { + try + { + path = "/" + path; + var info = new DirectoryInfo(ScriptableObjectUtility.CinemachineInstallPath + path); + path = ScriptableObjectUtility.kPackageRoot + path + "/"; + var fileInfo = info.GetFiles(); + foreach (var file in fileInfo) + { + if (file.Extension != ".asset") + continue; + string name = path + file.Name; + ScriptableObject a = AssetDatabase.LoadAssetAtPath(name, type) as ScriptableObject; + if (a != null) + assets.Add(a); + } + } + catch + { + } + } + + // Temporarily here + public static GameObject CreateGameObject(string name, params Type[] types) + { +#if UNITY_2018_3_OR_NEWER + return ObjectFactory.CreateGameObject(name, types); +#else + return new GameObject(name, types); +#endif + } + } +} diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Editor/Utility/InspectorUtility.cs.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Editor/Utility/InspectorUtility.cs.meta" new file mode 100644 index 00000000..1979233b --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Editor/Utility/InspectorUtility.cs.meta" @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: ebb13519e7af50b4dbc59d78b3bb6a32 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Editor/Utility/ReflectionHelpers.cs" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Editor/Utility/ReflectionHelpers.cs" new file mode 100644 index 00000000..e2e0a7a0 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Editor/Utility/ReflectionHelpers.cs" @@ -0,0 +1,234 @@ +using System; +using System.Collections.Generic; +using System.Linq; +using System.Linq.Expressions; +using System.Reflection; +using System.Text; + +namespace Cinemachine.Utility +{ + /// An ad-hoc collection of helpers for reflection, used by Cinemachine + /// or its editor tools in various places + [DocumentationSorting(DocumentationSortingAttribute.Level.Undoc)] + public static class ReflectionHelpers + { + /// Copy the fields from one object to another + /// The source object to copy from + /// The destination object to copy to + /// The mask to filter the attributes. + /// Only those fields that get caught in the filter will be copied + public static void CopyFields( + System.Object src, System.Object dst, + System.Reflection.BindingFlags bindingAttr + = System.Reflection.BindingFlags.Public + | System.Reflection.BindingFlags.NonPublic + | System.Reflection.BindingFlags.Instance) + { + if (src != null && dst != null) + { + Type type = src.GetType(); + FieldInfo[] fields = type.GetFields(bindingAttr); + for (int i = 0; i < fields.Length; ++i) + if (!fields[i].IsStatic) + fields[i].SetValue(dst, fields[i].GetValue(src)); + } + } + + /// Search the assembly for all types that match a predicate + /// The assembly to search + /// The type to look for + /// A list of types found in the assembly that inherit from the predicate + public static IEnumerable GetTypesInAssembly( + Assembly assembly, Predicate predicate) + { + if (assembly == null) + return null; + + Type[] types = new Type[0]; + try + { + types = assembly.GetTypes(); + } + catch (Exception) + { + // Can't load the types in this assembly + } + types = (from t in types + where t != null && predicate(t) + select t).ToArray(); + return types; + } + + /// Get a type from a name + /// The name of the type to search for + /// The type matching the name, or null if not found + public static Type GetTypeInAllDependentAssemblies(string typeName) + { + foreach (Type type in GetTypesInAllDependentAssemblies(t => t.Name == typeName)) + return type; + return null; + } + + /// Search all assemblies for all types that match a predicate + /// The type to look for + /// A list of types found in the assembly that inherit from the predicate + public static IEnumerable GetTypesInAllDependentAssemblies(Predicate predicate) + { + List foundTypes = new List(100); + Assembly[] assemblies = AppDomain.CurrentDomain.GetAssemblies(); + string definedIn = typeof(CinemachineComponentBase).Assembly.GetName().Name; + foreach (Assembly assembly in assemblies) + { + // Note that we have to call GetName().Name. Just GetName() will not work. + if ((!assembly.GlobalAssemblyCache) + && ((assembly.GetName().Name == definedIn) + || assembly.GetReferencedAssemblies().Any(a => a.Name == definedIn))) + try + { + foreach (Type foundType in GetTypesInAssembly(assembly, predicate)) + foundTypes.Add(foundType); + } + catch (Exception) {} // Just skip uncooperative assemblies + } + return foundTypes; + } +#if false + /// call GetTypesInAssembly() for all assemblies that match a predicate + /// Which assemblies to search + /// What type to look for + public static IEnumerable GetTypesInLoadedAssemblies( + Predicate assemblyPredicate, Predicate predicate) + { + Assembly[] assemblies = System.AppDomain.CurrentDomain.GetAssemblies(); + assemblies = assemblies.Where((Assembly assembly) + => { return assemblyPredicate(assembly); }).OrderBy((Assembly ass) + => { return ass.FullName; }).ToArray(); + + List foundTypes = new List(100); + foreach (Assembly assembly in assemblies) + { + foreach (Type foundType in GetTypesInAssembly(assembly, predicate)) + foundTypes.Add(foundType); + } + + return foundTypes; + } + + /// Is a type defined and visible + /// Fullly-qualified type name + /// true if the type exists + public static bool TypeIsDefined(string fullname) + { + Assembly[] assemblies = AppDomain.CurrentDomain.GetAssemblies(); + foreach (Assembly assembly in assemblies) + { + try + { + foreach (var type in assembly.GetTypes()) + if (type.FullName == fullname) + return true; + } + catch (System.Exception) {} // Just skip uncooperative assemblies + } + return false; + } +#endif + /// Cheater extension to access internal field of an object + /// The type of the field + /// The object to access + /// The string name of the field to access + /// The value of the field in the objects + public static T AccessInternalField(this Type type, object obj, string memberName) + { + if (string.IsNullOrEmpty(memberName) || (type == null)) + return default(T); + + System.Reflection.BindingFlags bindingFlags = System.Reflection.BindingFlags.NonPublic; + if (obj != null) + bindingFlags |= System.Reflection.BindingFlags.Instance; + else + bindingFlags |= System.Reflection.BindingFlags.Static; + + FieldInfo field = type.GetField(memberName, bindingFlags); + if ((field != null) && (field.FieldType == typeof(T))) + return (T)field.GetValue(obj); + else + return default(T); + } + +#if false + /// Cheater extension to access internal property of an object + /// The type of the field + /// The object to access + /// The string name of the field to access + /// The value of the field in the objects + public static T AccessInternalProperty(this Type type, object obj, string memberName) + { + if (string.IsNullOrEmpty(memberName) || (type == null)) + return default(T); + + System.Reflection.BindingFlags bindingFlags = System.Reflection.BindingFlags.NonPublic; + if (obj != null) + bindingFlags |= System.Reflection.BindingFlags.Instance; + else + bindingFlags |= System.Reflection.BindingFlags.Static; + + PropertyInfo pi = type.GetProperty(memberName, bindingFlags); + if ((pi != null) && (pi.PropertyType == typeof(T))) + return (T)pi.GetValue(obj, null); + else + return default(T); + } +#endif + + /// Get the object owner of a field. This method processes + /// the '.' separator to get from the object that owns the compound field + /// to the object that owns the leaf field + /// The name of the field, which may contain '.' separators + /// the owner of the compound field + public static object GetParentObject(string path, object obj) + { + var fields = path.Split('.'); + if (fields.Length == 1) + return obj; + + var info = obj.GetType().GetField( + fields[0], System.Reflection.BindingFlags.Public + | System.Reflection.BindingFlags.NonPublic + | System.Reflection.BindingFlags.Instance); + obj = info.GetValue(obj); + + return GetParentObject(string.Join(".", fields, 1, fields.Length - 1), obj); + } + + /// Returns a string path from an expression - mostly used to retrieve serialized properties + /// without hardcoding the field path. Safer, and allows for proper refactoring. + public static string GetFieldPath(Expression> expr) + { + MemberExpression me; + switch (expr.Body.NodeType) + { + case ExpressionType.MemberAccess: + me = expr.Body as MemberExpression; + break; + default: + throw new InvalidOperationException(); + } + + var members = new List(); + while (me != null) + { + members.Add(me.Member.Name); + me = me.Expression as MemberExpression; + } + + var sb = new StringBuilder(); + for (int i = members.Count - 1; i >= 0; i--) + { + sb.Append(members[i]); + if (i > 0) sb.Append('.'); + } + return sb.ToString(); + } + } +} diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Editor/Utility/ReflectionHelpers.cs.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Editor/Utility/ReflectionHelpers.cs.meta" new file mode 100644 index 00000000..920be326 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Editor/Utility/ReflectionHelpers.cs.meta" @@ -0,0 +1,12 @@ +fileFormatVersion: 2 +guid: 8986fa27e90db314d8a3359520e7fd1a +timeCreated: 1487370732 +licenseType: Pro +MonoImporter: + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Editor/Utility/SaveDuringPlay.cs" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Editor/Utility/SaveDuringPlay.cs" new file mode 100644 index 00000000..3a224881 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Editor/Utility/SaveDuringPlay.cs" @@ -0,0 +1,538 @@ +using System; +using System.Collections.Generic; +using System.Reflection; +using UnityEditor; +using UnityEngine; + +namespace SaveDuringPlay +{ + /// A collection of tools for finding objects + internal static class ObjectTreeUtil + { + /// + /// Get the full name of an object, travelling up the transform parents to the root. + /// + public static string GetFullName(GameObject current) + { + if (current == null) + return ""; + if (current.transform.parent == null) + return "/" + current.name; + return GetFullName(current.transform.parent.gameObject) + "/" + current.name; + } + + /// + /// Will find the named object, active or inactive, from the full path. + /// + public static GameObject FindObjectFromFullName(string fullName, GameObject[] roots) + { + if (fullName == null || fullName.Length == 0 || roots == null) + return null; + + string[] path = fullName.Split('/'); + if (path.Length < 2) // skip leading '/' + return null; + + Transform root = null; + for (int i = 0; root == null && i < roots.Length; ++i) + if (roots[i].name == path[1]) + root = roots[i].transform; + + if (root == null) + return null; + + for (int i = 2; i < path.Length; ++i) // skip root + { + bool found = false; + for (int c = 0; c < root.childCount; ++c) + { + Transform child = root.GetChild(c); + if (child.name == path[i]) + { + found = true; + root = child; + break; + } + } + if (!found) + return null; + } + return root.gameObject; + } + + /// Finds all the root objects in a scene, active or not + public static GameObject[] FindAllRootObjectsInScene() + { + return UnityEngine.SceneManagement.SceneManager.GetActiveScene().GetRootGameObjects(); + } + + + /// + /// This finds all the behaviours in scene, active or inactive, excluding prefabs + /// + public static T[] FindAllBehavioursInScene() where T : MonoBehaviour + { + List objectsInScene = new List(); + foreach (T b in Resources.FindObjectsOfTypeAll()) + { + GameObject go = b.gameObject; + if (go.hideFlags == HideFlags.NotEditable || go.hideFlags == HideFlags.HideAndDontSave) + continue; + if (EditorUtility.IsPersistent(go.transform.root.gameObject)) + continue; + objectsInScene.Add(b); + } + return objectsInScene.ToArray(); + } + } + + class GameObjectFieldScanner + { + /// + /// Called for each leaf field. Return value should be true if action was taken. + /// It will be propagated back to the caller. + /// + public OnLeafFieldDelegate OnLeafField; + public delegate bool OnLeafFieldDelegate(string fullName, Type type, ref object value); + + /// + /// Called for each field node, if and only if OnLeafField() for it or one + /// of its leaves returned true. + /// + public OnFieldValueChangedDelegate OnFieldValueChanged; + public delegate bool OnFieldValueChangedDelegate( + string fullName, FieldInfo fieldInfo, object fieldOwner, object value); + + /// + /// Called for each field, to test whether to proceed with scanning it. Return true to scan. + /// + public FilterFieldDelegate FilterField; + public delegate bool FilterFieldDelegate(string fullName, FieldInfo fieldInfo); + + /// + /// Which fields will be scanned + /// + public BindingFlags bindingFlags = BindingFlags.Public | BindingFlags.Instance; + + bool ScanFields(string fullName, Type type, ref object obj) + { + bool doneSomething = false; + + // Check if it's a complex type + bool isLeaf = true; + if (obj != null + && !typeof(Component).IsAssignableFrom(type) + && !typeof(ScriptableObject).IsAssignableFrom(type) + && !typeof(GameObject).IsAssignableFrom(type)) + { + // Is it an array? + if (type.IsArray) + { + isLeaf = false; + Array array = obj as Array; + object arrayLength = array.Length; + if (OnLeafField != null && OnLeafField( + fullName + ".Length", arrayLength.GetType(), ref arrayLength)) + { + Array newArray = Array.CreateInstance( + array.GetType().GetElementType(), Convert.ToInt32(arrayLength)); + Array.Copy(array, 0, newArray, 0, Math.Min(array.Length, newArray.Length)); + array = newArray; + doneSomething = true; + } + for (int i = 0; i < array.Length; ++i) + { + object element = array.GetValue(i); + if (ScanFields(fullName + "[" + i + "]", array.GetType().GetElementType(), ref element)) + { + array.SetValue(element, i); + doneSomething = true; + } + } + if (doneSomething) + obj = array; + } + else + { + // Check if it's a complex type + FieldInfo[] fields = obj.GetType().GetFields(bindingFlags); + if (fields.Length > 0) + { + isLeaf = false; + for (int i = 0; i < fields.Length; ++i) + { + string name = fullName + "." + fields[i].Name; + if (FilterField == null || FilterField(name, fields[i])) + { + object fieldValue = fields[i].GetValue(obj); + if (ScanFields(name, fields[i].FieldType, ref fieldValue)) + { + doneSomething = true; + if (OnFieldValueChanged != null) + OnFieldValueChanged(name, fields[i], obj, fieldValue); + } + } + } + } + } + } + // If it's a leaf field then call the leaf handler + if (isLeaf && OnLeafField != null) + if (OnLeafField(fullName, type, ref obj)) + doneSomething = true; + + return doneSomething; + } + + public bool ScanFields(string fullName, MonoBehaviour b) + { + bool doneSomething = false; + FieldInfo[] fields = b.GetType().GetFields(bindingFlags); + if (fields.Length > 0) + { + for (int i = 0; i < fields.Length; ++i) + { + string name = fullName + "." + fields[i].Name; + if (FilterField == null || FilterField(name, fields[i])) + { + object fieldValue = fields[i].GetValue(b); + if (ScanFields(name, fields[i].FieldType, ref fieldValue)) + doneSomething = true; + + // If leaf action was taken, propagate it up to the parent node + if (doneSomething && OnFieldValueChanged != null) + OnFieldValueChanged(fullName, fields[i], b, fieldValue); + } + } + } + return doneSomething; + } + + /// + /// Recursively scan the MonoBehaviours of a GameObject and its children. + /// For each leaf field found, call the OnFieldValue delegate. + /// + public bool ScanFields(GameObject go, string prefix = null) + { + bool doneSomething = false; + if (prefix == null) + prefix = ""; + else if (prefix.Length > 0) + prefix += "."; + + MonoBehaviour[] components = go.GetComponents(); + for (int i = 0; i < components.Length; ++i) + { + MonoBehaviour c = components[i]; + if (c != null && ScanFields(prefix + c.GetType().FullName + i, c)) + doneSomething = true; + } + return doneSomething; + } + }; + + + /// + /// Using reflection, this class scans a GameObject (and optionally its children) + /// and records all the field settings. This only works for "nice" field settings + /// within MonoBehaviours. Changes to the behaviour stack made between saving + /// and restoring will fool this class. + /// + class ObjectStateSaver + { + string mObjectFullPath; + + Dictionary mValues = new Dictionary(); + + /// + /// Recursively collect all the field values in the MonoBehaviours + /// owned by this object and its descendants. The values are stored + /// in an internal dictionary. + /// + public void CollectFieldValues(GameObject go) + { + mObjectFullPath = ObjectTreeUtil.GetFullName(go); + GameObjectFieldScanner scanner = new GameObjectFieldScanner(); + scanner.FilterField = FilterField; + scanner.OnLeafField = (string fullName, Type type, ref object value) => + { + // Save the value in the dictionary + mValues[fullName] = StringFromLeafObject(value); + //Debug.Log(mObjectFullPath + "." + fullName + " = " + mValues[fullName]); + return false; + }; + scanner.ScanFields(go); + } + + public GameObject FindSavedGameObject(GameObject[] roots) + { + return ObjectTreeUtil.FindObjectFromFullName(mObjectFullPath, roots); + } + public string ObjetFullPath { get { return mObjectFullPath; } } + + /// + /// Recursively scan the MonoBehaviours of a GameObject and its children. + /// For each field found, look up its value in the internal dictionary. + /// If it's present and its value in the dictionary differs from the actual + /// value in the game object, Set the GameObject's value using the value + /// recorded in the dictionary. + /// + public bool PutFieldValues(GameObject go, GameObject[] roots) + { + GameObjectFieldScanner scanner = new GameObjectFieldScanner(); + scanner.FilterField = FilterField; + scanner.OnLeafField = (string fullName, Type type, ref object value) => + { + // Lookup the value in the dictionary + string savedValue; + if (mValues.TryGetValue(fullName, out savedValue) + && StringFromLeafObject(value) != savedValue) + { + //Debug.Log("Put " + mObjectFullPath + "." + fullName + " = " + mValues[fullName]); + value = LeafObjectFromString(type, mValues[fullName].Trim(), roots); + return true; // changed + } + return false; + }; + scanner.OnFieldValueChanged = (fullName, fieldInfo, fieldOwner, value) => + { + fieldInfo.SetValue(fieldOwner, value); + return true; + }; + return scanner.ScanFields(go); + } + + /// Ignore fields marked with the [NoSaveDuringPlay] attribute + bool FilterField(string fullName, FieldInfo fieldInfo) + { + var attrs = fieldInfo.GetCustomAttributes(false); + foreach (var attr in attrs) + if (attr.GetType().Name.Contains("NoSaveDuringPlay")) + return false; + return true; + } + + /// + /// Parse a string to generate an object. + /// Only very limited primitive object types are supported. + /// Enums, Vectors and most other structures are automatically supported, + /// because the reflection system breaks them down into their primitive components. + /// You can add more support here, as needed. + /// + static object LeafObjectFromString(Type type, string value, GameObject[] roots) + { + if (type == typeof(Single)) + return float.Parse(value); + if (type == typeof(Double)) + return double.Parse(value); + if (type == typeof(Boolean)) + return Boolean.Parse(value); + if (type == typeof(string)) + return value; + if (type == typeof(Int32)) + return Int32.Parse(value); + if (type == typeof(UInt32)) + return UInt32.Parse(value); + if (typeof(Component).IsAssignableFrom(type)) + { + // Try to find the named game object + GameObject go = ObjectTreeUtil.FindObjectFromFullName(value, roots); + return (go != null) ? go.GetComponent(type) : null; + } + if (typeof(GameObject).IsAssignableFrom(type)) + { + // Try to find the named game object + return GameObject.Find(value); + } + if (typeof(ScriptableObject).IsAssignableFrom(type)) + { + return AssetDatabase.LoadAssetAtPath(value, type); + } + return null; + } + + static string StringFromLeafObject(object obj) + { + if (obj == null) + return string.Empty; + + if (typeof(Component).IsAssignableFrom(obj.GetType())) + { + Component c = (Component)obj; + if (c == null) // Component overrides the == operator, so we have to check + return string.Empty; + return ObjectTreeUtil.GetFullName(c.gameObject); + } + if (typeof(GameObject).IsAssignableFrom(obj.GetType())) + { + GameObject go = (GameObject)obj; + if (go == null) // GameObject overrides the == operator, so we have to check + return string.Empty; + return ObjectTreeUtil.GetFullName(go); + } + if (typeof(ScriptableObject).IsAssignableFrom(obj.GetType())) + { + return AssetDatabase.GetAssetPath(obj as ScriptableObject); + } + return obj.ToString(); + } + }; + + + /// + /// For all registered object types, record their state when exiting Play Mode, + /// and restore that state to the objects in the scene. This is a very limited + /// implementation which has not been rigorously tested with many objects types. + /// It's quite possible that not everything will be saved. + /// + /// This class is expected to become obsolete when Unity implements this functionality + /// in a more general way. + /// + /// To use this class, + /// drop this script into your project, and add the [SaveDuringPlay] attribute to your class. + /// + /// Note: if you want some specific field in your class NOT to be saved during play, + /// add a property attribute whose class name contains the string "NoSaveDuringPlay" + /// and the field will not be saved. + /// + [InitializeOnLoad] + public class SaveDuringPlay + { + public static string kEnabledKey = "SaveDuringPlay_Enabled"; + public static bool Enabled + { + get { return EditorPrefs.GetBool(kEnabledKey, false); } + set + { + if (value != Enabled) + { + EditorPrefs.SetBool(kEnabledKey, value); + } + } + } + + static SaveDuringPlay() + { + // Install our callbacks +#if UNITY_2017_2_OR_NEWER + EditorApplication.playModeStateChanged += OnPlayStateChanged; +#else + EditorApplication.update += OnEditorUpdate; + EditorApplication.playmodeStateChanged += OnPlayStateChanged; +#endif + } + +#if UNITY_2017_2_OR_NEWER + static void OnPlayStateChanged(PlayModeStateChange pmsc) + { + if (Enabled) + { + // If exiting playmode, collect the state of all interesting objects + if (pmsc == PlayModeStateChange.ExitingPlayMode) + SaveAllInterestingStates(); + else if (pmsc == PlayModeStateChange.EnteredEditMode && sSavedStates != null) + RestoreAllInterestingStates(); + } + } +#else + static void OnPlayStateChanged() + { + // If exiting playmode, collect the state of all interesting objects + if (Enabled) + { + if (!EditorApplication.isPlayingOrWillChangePlaymode && EditorApplication.isPlaying) + SaveAllInterestingStates(); + } + } + + static float sWaitStartTime = 0; + static void OnEditorUpdate() + { + if (Enabled && sSavedStates != null && !Application.isPlaying) + { + // Wait a bit for things to settle before applying the saved state + const float WaitTime = 1f; // GML todo: is there a better way to do this? + float time = Time.realtimeSinceStartup; + if (sWaitStartTime == 0) + sWaitStartTime = time; + else if (time - sWaitStartTime > WaitTime) + { + RestoreAllInterestingStates(); + sWaitStartTime = 0; + } + } + } +#endif + + /// + /// If you need to get notified before state is collected for hotsave, this is the place + /// + public static OnHotSaveDelegate OnHotSave; + public delegate void OnHotSaveDelegate(); + + /// Collect all relevant objects, active or not + static Transform[] FindInterestingObjects() + { + List objects = new List(); + MonoBehaviour[] everything = ObjectTreeUtil.FindAllBehavioursInScene(); + foreach (var b in everything) + { + var attrs = b.GetType().GetCustomAttributes(true); + foreach (var attr in attrs) + { + if (attr.GetType().Name.Contains("SaveDuringPlay")) + { + //Debug.Log("Found " + ObjectTreeUtil.GetFullName(b.gameObject) + " for hot-save"); + objects.Add(b.transform); + break; + } + } + } + return objects.ToArray(); + } + + static List sSavedStates = null; + static GameObject sSaveStatesGameObject; + static void SaveAllInterestingStates() + { + //Debug.Log("Exiting play mode: Saving state for all interesting objects"); + if (OnHotSave != null) + OnHotSave(); + + sSavedStates = new List(); + Transform[] objects = FindInterestingObjects(); + foreach (Transform obj in objects) + { + ObjectStateSaver saver = new ObjectStateSaver(); + saver.CollectFieldValues(obj.gameObject); + sSavedStates.Add(saver); + } + if (sSavedStates.Count == 0) + sSavedStates = null; + } + + static void RestoreAllInterestingStates() + { + //Debug.Log("Updating state for all interesting objects"); + bool dirty = false; + GameObject[] roots = ObjectTreeUtil.FindAllRootObjectsInScene(); + foreach (ObjectStateSaver saver in sSavedStates) + { + GameObject go = saver.FindSavedGameObject(roots); + if (go != null) + { + Undo.RegisterFullObjectHierarchyUndo(go, "SaveDuringPlay"); + if (saver.PutFieldValues(go, roots)) + { + //Debug.Log("SaveDuringPlay: updated settings of " + saver.ObjetFullPath); + EditorUtility.SetDirty(go); + dirty = true; + } + } + } + if (dirty) + UnityEditorInternal.InternalEditorUtility.RepaintAllViews(); + sSavedStates = null; + } + } +} diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Editor/Utility/SaveDuringPlay.cs.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Editor/Utility/SaveDuringPlay.cs.meta" new file mode 100644 index 00000000..8a08625c --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Editor/Utility/SaveDuringPlay.cs.meta" @@ -0,0 +1,12 @@ +fileFormatVersion: 2 +guid: 24ec24775a1b45e4ea81ac13002dee32 +timeCreated: 1485895820 +licenseType: Pro +MonoImporter: + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Editor/Utility/ScriptableObjectUtility.cs" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Editor/Utility/ScriptableObjectUtility.cs" new file mode 100644 index 00000000..f8f95e92 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Editor/Utility/ScriptableObjectUtility.cs" @@ -0,0 +1,135 @@ +using UnityEngine; +using UnityEditor; +using System.IO; +using System; + +namespace Cinemachine.Editor +{ + internal class ScriptableObjectUtility : ScriptableObject + { + public static string kPackageRoot = "Packages/com.unity.cinemachine"; + + /// Get the Cinemachine package install path. Works whether CM is + /// a packman package or an ordinary asset. + public static string CinemachineInstallPath + { + get + { + // First see if we're a UPM package - use some asset that we expect to find + string path = Path.GetFullPath(kPackageRoot + "/Editor/Resources/cm_logo_sm.png"); + int index = path.LastIndexOf("/Editor"); + if (index < 0 || !File.Exists(path)) + { + // Try as an ordinary asset + ScriptableObject dummy = ScriptableObject.CreateInstance(); + path = AssetDatabase.GetAssetPath(MonoScript.FromScriptableObject(dummy)); + if (path.Length > 0) + path = Path.GetFullPath(path); + DestroyImmediate(dummy); + } + path = path.Replace('\\', '/'); // because of GetFullPath() + index = path.LastIndexOf("/Editor"); + if (index >= 0) + path = path.Substring(0, index); + if (path.Length > 0) + path = Path.GetFullPath(path); // stupid backslashes + return path; + } + } + + /// Create a scriptable object asset + public static T CreateAt(string assetPath) where T : ScriptableObject + { + return CreateAt(typeof(T), assetPath) as T; + } + + /// Create a scriptable object asset + public static ScriptableObject CreateAt(Type assetType, string assetPath) + { + ScriptableObject asset = ScriptableObject.CreateInstance(assetType); + if (asset == null) + { + Debug.LogError("failed to create instance of " + assetType.Name + " at " + assetPath); + return null; + } + AssetDatabase.CreateAsset(asset, assetPath); + return asset; + } + + public static void Create(bool prependFolderName = false, bool trimName = true) where T : ScriptableObject + { + string className = typeof(T).Name; + string assetName = className; + string folder = GetSelectedAssetFolder(); + + if (trimName) + { + string[] standardNames = new string[] { "Asset", "Attributes", "Container" }; + foreach (string standardName in standardNames) + { + assetName = assetName.Replace(standardName, ""); + } + } + + if (prependFolderName) + { + string folderName = Path.GetFileName(folder); + assetName = (string.IsNullOrEmpty(assetName) ? folderName : string.Format("{0}_{1}", folderName, assetName)); + } + + Create(className, assetName, folder); + } + + private static ScriptableObject Create(string className, string assetName, string folder) + { + ScriptableObject asset = ScriptableObject.CreateInstance(className); + if (asset == null) + { + Debug.LogError("failed to create instance of " + className); + return null; + } + + asset.name = assetName ?? className; + + string assetPath = GetUnusedAssetPath(folder, asset.name); + AssetDatabase.CreateAsset(asset, assetPath); + + return asset; + } + + private static string GetSelectedAssetFolder() + { + if ((Selection.activeObject != null) && AssetDatabase.Contains(Selection.activeObject)) + { + string assetPath = AssetDatabase.GetAssetPath(Selection.activeObject); + string assetPathAbsolute = string.Format("{0}/{1}", Path.GetDirectoryName(Application.dataPath), assetPath); + + if (Directory.Exists(assetPathAbsolute)) + { + return assetPath; + } + else + { + return Path.GetDirectoryName(assetPath); + } + } + + return "Assets"; + } + + private static string GetUnusedAssetPath(string folder, string assetName) + { + for (int n = 0; n < 9999; n++) + { + string assetPath = string.Format("{0}/{1}{2}.asset", folder, assetName, (n == 0 ? "" : n.ToString())); + string existingGUID = AssetDatabase.AssetPathToGUID(assetPath); + if (string.IsNullOrEmpty(existingGUID)) + { + return assetPath; + } + } + + return null; + } + } +} diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Editor/Utility/ScriptableObjectUtility.cs.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Editor/Utility/ScriptableObjectUtility.cs.meta" new file mode 100644 index 00000000..aeba3cc0 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Editor/Utility/ScriptableObjectUtility.cs.meta" @@ -0,0 +1,12 @@ +fileFormatVersion: 2 +guid: ba59c38a116ff2f4fb69f825ba0da3bc +timeCreated: 1481654957 +licenseType: Pro +MonoImporter: + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Editor/Utility/SerializedPropertyHelper.cs" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Editor/Utility/SerializedPropertyHelper.cs" new file mode 100644 index 00000000..86a995bc --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Editor/Utility/SerializedPropertyHelper.cs" @@ -0,0 +1,73 @@ +using System; +using System.Linq.Expressions; +using UnityEditor; + +namespace Cinemachine.Editor +{ + /// + /// Helpers for the editor + /// + public static class SerializedPropertyHelper + { + /// This is a way to get a field name string in such a manner that the compiler will + /// generate errors for invalid fields. Much better than directly using strings. + /// Usage: instead of + /// + /// "m_MyField"; + /// + /// do this: + /// + /// MyClass myclass = null; + /// SerializedPropertyHelper.PropertyName( () => myClass.m_MyField); + /// + public static string PropertyName(Expression> exp) + { + var body = exp.Body as MemberExpression; + if (body == null) + { + var ubody = (UnaryExpression)exp.Body; + body = ubody.Operand as MemberExpression; + } + return body.Member.Name; + } + + /// Usage: instead of + /// + /// mySerializedObject.FindProperty("m_MyField"); + /// + /// do this: + /// + /// MyClass myclass = null; + /// mySerializedObject.FindProperty( () => myClass.m_MyField); + /// + public static SerializedProperty FindProperty(this SerializedObject obj, Expression> exp) + { + return obj.FindProperty(PropertyName(exp)); + } + + /// Usage: instead of + /// + /// mySerializedProperty.FindPropertyRelative("m_MyField"); + /// + /// do this: + /// + /// MyClass myclass = null; + /// mySerializedProperty.FindPropertyRelative( () => myClass.m_MyField); + /// + public static SerializedProperty FindPropertyRelative(this SerializedProperty obj, Expression> exp) + { + return obj.FindPropertyRelative(PropertyName(exp)); + } + + /// Get the value of a proprty, as an object + public static object GetPropertyValue(SerializedProperty property) + { + var targetObject = property.serializedObject.targetObject; + var targetObjectClassType = targetObject.GetType(); + var field = targetObjectClassType.GetField(property.propertyPath); + if (field != null) + return field.GetValue(targetObject); + return null; + } + } +} diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Editor/Utility/SerializedPropertyHelper.cs.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Editor/Utility/SerializedPropertyHelper.cs.meta" new file mode 100644 index 00000000..b5f06c44 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Editor/Utility/SerializedPropertyHelper.cs.meta" @@ -0,0 +1,12 @@ +fileFormatVersion: 2 +guid: a60d9407e2bb20e4ea00281b1e33eae7 +timeCreated: 1488400542 +licenseType: Pro +MonoImporter: + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Editor/Windows.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Editor/Windows.meta" new file mode 100644 index 00000000..d2329677 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Editor/Windows.meta" @@ -0,0 +1,9 @@ +fileFormatVersion: 2 +guid: 9c644b247df49ee47957d373411a85c3 +folderAsset: yes +timeCreated: 1489096338 +licenseType: Pro +DefaultImporter: + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Editor/Windows/AboutWindow.cs" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Editor/Windows/AboutWindow.cs" new file mode 100644 index 00000000..13f57fa5 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Editor/Windows/AboutWindow.cs" @@ -0,0 +1,140 @@ +using UnityEngine; +using UnityEditor; +using System.IO; + +namespace Cinemachine.Editor +{ + [InitializeOnLoad] + internal class AboutWindow : EditorWindow + { + private const string kLastVersionOpened = "CNMCN_Last_Version_Loaded"; + private const string kInvalidVersionNumber = "0.0"; + + private static readonly Vector2 kMinWindowSize = new Vector2(550f, 550f); + + private static string LastVersionLoaded + { + get { return EditorPrefs.GetString(kLastVersionOpened, kInvalidVersionNumber); } + set { EditorPrefs.SetString(kLastVersionOpened, value); } + } + + private GUIStyle mButtonStyle; + private GUIStyle mLabelStyle; + private GUIStyle mHeaderStyle; + private GUIStyle mNotesStyle; + private Vector2 mReleaseNoteScrollPos = Vector2.zero; + + string mReleaseNotes; + + private void OnEnable() + { + string path = ScriptableObjectUtility.CinemachineInstallPath + "/Extras~/ReleaseNotes.txt"; + try + { + StreamReader reader = new StreamReader(path); + mReleaseNotes = reader.ReadToEnd(); + reader.Close(); + } + catch (System.Exception) + { + mReleaseNotes = path + " not found"; + } + } + + private void OnGUI() + { + if (EditorApplication.isCompiling) + { + Close(); + } + + if (mButtonStyle == null) + { + mButtonStyle = new GUIStyle(GUI.skin.button); + mButtonStyle.richText = true; + } + + if (mLabelStyle == null) + { + mLabelStyle = new GUIStyle(EditorStyles.label); + mLabelStyle.wordWrap = true; + mLabelStyle.richText = true; + } + + if (mHeaderStyle == null) + { + mHeaderStyle = new GUIStyle(EditorStyles.boldLabel); + mHeaderStyle.wordWrap = true; + } + + if (mNotesStyle == null) + { + mNotesStyle = new GUIStyle(EditorStyles.textArea); + mNotesStyle.richText = true; + mNotesStyle.wordWrap = true; + } + + using (var vertScope = new EditorGUILayout.VerticalScope()) + { + if (CinemachineSettings.CinemachineHeader != null) + { + float headerWidth = position.width; + float aspectRatio = (float)CinemachineSettings.CinemachineHeader.height / (float)CinemachineSettings.CinemachineHeader.width; + GUILayout.BeginScrollView(Vector2.zero, false, false, GUILayout.Width(headerWidth), GUILayout.Height(headerWidth * aspectRatio)); + Rect texRect = new Rect(0f, 0f, headerWidth, headerWidth * aspectRatio); + + GUILayout.FlexibleSpace(); + GUILayout.BeginArea(texRect); + GUI.DrawTexture(texRect, CinemachineSettings.CinemachineHeader, ScaleMode.ScaleToFit); + GUILayout.EndArea(); + GUILayout.FlexibleSpace(); + + GUILayout.EndScrollView(); + } + + EditorGUILayout.LabelField("Welcome to Cinemachine!", mLabelStyle); + EditorGUILayout.LabelField("Smart camera tools for passionate creators.", mLabelStyle); + EditorGUILayout.LabelField("Below are links to the forums, please reach out if you have any questions or feedback", mLabelStyle); + + if (GUILayout.Button("Forum\nDiscuss", mButtonStyle)) + { + Application.OpenURL("https://forum.unity3d.com/forums/cinemachine.136/"); + } + + if (GUILayout.Button("Rate it!\nUnity Asset Store", mButtonStyle)) + { + Application.OpenURL("https://www.assetstore.unity3d.com/en/#!/content/79898"); + } + } + + EditorGUILayout.LabelField("Release Notes", mHeaderStyle); + using (var scrollScope = new EditorGUILayout.ScrollViewScope(mReleaseNoteScrollPos, GUI.skin.box)) + { + mReleaseNoteScrollPos = scrollScope.scrollPosition; + EditorGUILayout.LabelField(mReleaseNotes, mNotesStyle); + } + } + + [MenuItem("Cinemachine/About")] + private static void OpenWindow() + { + EditorApplication.update += ShowWindowDeferred; + } + + private static void ShowWindowDeferred() + { + string loadedVersion = LastVersionLoaded; + if (loadedVersion != CinemachineCore.kVersionString) + LastVersionLoaded = CinemachineCore.kVersionString; + + AboutWindow window = EditorWindow.GetWindow(); + + window.titleContent = new UnityEngine.GUIContent( + "About", CinemachineSettings.CinemachineLogoTexture); + window.minSize = kMinWindowSize; + window.Show(true); + + EditorApplication.update -= ShowWindowDeferred; + } + } +} diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Editor/Windows/AboutWindow.cs.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Editor/Windows/AboutWindow.cs.meta" new file mode 100644 index 00000000..25f4e4e4 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Editor/Windows/AboutWindow.cs.meta" @@ -0,0 +1,13 @@ +fileFormatVersion: 2 +guid: 829e606f890b35c47aa29643517add2e +timeCreated: 1481654956 +licenseType: Pro +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Editor/Windows/CinemachineColliderPrefs.cs" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Editor/Windows/CinemachineColliderPrefs.cs" new file mode 100644 index 00000000..4cc881a0 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Editor/Windows/CinemachineColliderPrefs.cs" @@ -0,0 +1,85 @@ +using UnityEngine; +using UnityEditor; + +using Cinemachine.Editor; + +namespace Cinemachine +{ + [InitializeOnLoad] + internal static class CinemachineColliderPrefs + { + private static bool SettingsFoldedOut + { + get { return EditorPrefs.GetBool(kColliderSettingsFoldoutKey, false); } + set + { + if (value != SettingsFoldedOut) + { + EditorPrefs.SetBool(kColliderSettingsFoldoutKey, value); + } + } + } + + public static Color FeelerHitColor + { + get + { + return CinemachineSettings.UnpackColour(EditorPrefs.GetString(kFeelerHitColourKey, CinemachineSettings.PackColor(Color.yellow))); + } + + set + { + if (value != FeelerHitColor) + { + EditorPrefs.SetString(kFeelerHitColourKey, CinemachineSettings.PackColor(value)); + } + } + } + + public static Color FeelerColor + { + get + { + return CinemachineSettings.UnpackColour(EditorPrefs.GetString(kFeelerColourKey, CinemachineSettings.PackColor(Color.gray))); + } + + set + { + if (value != FeelerColor) + { + EditorPrefs.SetString(kFeelerColourKey, CinemachineSettings.PackColor(value)); + } + } + } + + private const string kColliderSettingsFoldoutKey = "CNMCN_Collider_Foldout"; + private const string kFeelerHitColourKey = "CNMCN_Collider_FeelerHit_Colour"; + private const string kFeelerColourKey = "CNMCN_Collider_Feeler_Colour"; + + static CinemachineColliderPrefs() + { + Cinemachine.Editor.CinemachineSettings.AdditionalCategories += DrawColliderSettings; + } + + private static void DrawColliderSettings() + { + SettingsFoldedOut = EditorGUILayout.Foldout(SettingsFoldedOut, "Collider Settings"); + if (SettingsFoldedOut) + { + EditorGUI.indentLevel++; + + EditorGUI.BeginChangeCheck(); + + FeelerHitColor = EditorGUILayout.ColorField("Feeler Hit", FeelerHitColor); + FeelerColor = EditorGUILayout.ColorField("Feeler", FeelerColor); + + if (EditorGUI.EndChangeCheck()) + { + UnityEditorInternal.InternalEditorUtility.RepaintAllViews(); + } + + EditorGUI.indentLevel--; + } + } + } +} diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Editor/Windows/CinemachineColliderPrefs.cs.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Editor/Windows/CinemachineColliderPrefs.cs.meta" new file mode 100644 index 00000000..f2d554cf --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Editor/Windows/CinemachineColliderPrefs.cs.meta" @@ -0,0 +1,12 @@ +fileFormatVersion: 2 +guid: aceb1a3f85f55c249bba6eaade29f2aa +timeCreated: 1484415513 +licenseType: Pro +MonoImporter: + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Editor/Windows/CinemachineSettings.cs" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Editor/Windows/CinemachineSettings.cs" new file mode 100644 index 00000000..6c8842da --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Editor/Windows/CinemachineSettings.cs" @@ -0,0 +1,465 @@ +using UnityEngine; +using UnityEditor; +using System; + +namespace Cinemachine.Editor +{ + [InitializeOnLoad] + internal sealed class CinemachineSettings + { + public static class CinemachineCoreSettings + { + private static readonly string hShowInGameGuidesKey = "CNMCN_Core_ShowInGameGuides"; + public static bool ShowInGameGuides + { + get { return EditorPrefs.GetBool(hShowInGameGuidesKey, true); } + set + { + if (ShowInGameGuides != value) + { + EditorPrefs.SetBool(hShowInGameGuidesKey, value); + UnityEditorInternal.InternalEditorUtility.RepaintAllViews(); + } + } + } + + private static readonly string kCoreActiveGizmoColourKey = "CNMCN_Core_Active_Gizmo_Colour"; + public static readonly Color kDefaultActiveColour = new Color32(255, 0, 0, 100); + public static Color ActiveGizmoColour + { + get + { + string packedColour = EditorPrefs.GetString(kCoreActiveGizmoColourKey, PackColor(kDefaultActiveColour)); + return UnpackColour(packedColour); + } + + set + { + if (ActiveGizmoColour != value) + { + string packedColour = PackColor(value); + EditorPrefs.SetString(kCoreActiveGizmoColourKey, packedColour); + } + } + } + + private static readonly string kCoreInactiveGizmoColourKey = "CNMCN_Core_Inactive_Gizmo_Colour"; + public static readonly Color kDefaultInactiveColour = new Color32(9, 54, 87, 100); + public static Color InactiveGizmoColour + { + get + { + string packedColour = EditorPrefs.GetString(kCoreInactiveGizmoColourKey, PackColor(kDefaultInactiveColour)); + return UnpackColour(packedColour); + } + + set + { + if (InactiveGizmoColour != value) + { + string packedColour = PackColor(value); + EditorPrefs.SetString(kCoreInactiveGizmoColourKey, packedColour); + } + } + } + } + + public static class ComposerSettings + { + private static readonly string kOverlayOpacityKey = "CNMCN_Overlay_Opacity"; + private static readonly string kComposerHardBoundsColourKey = "CNMCN_Composer_HardBounds_Colour"; + private static readonly string kComposerSoftBoundsColourKey = "CNMCN_Composer_SoftBounds_Colour"; + private static readonly string kComposerTargetColourKey = "CNMCN_Composer_Target_Colour"; + private static readonly string kComposerTargetSizeKey = "CNMCN_Composer_Target_Size"; + + public const float kDefaultOverlayOpacity = 0.15f; + public static readonly Color kDefaultHardBoundsColour = new Color32(255, 0, 72, 255); + public static readonly Color kDefaultSoftBoundsColour = new Color32(0, 194, 255, 255); + public static readonly Color kDefaultTargetColour = new Color32(255, 254, 25, 255); + + public static float OverlayOpacity + { + get { return EditorPrefs.GetFloat(kOverlayOpacityKey, kDefaultOverlayOpacity); } + set + { + if (value != OverlayOpacity) + { + EditorPrefs.SetFloat(kOverlayOpacityKey, value); + } + } + } + + public static Color HardBoundsOverlayColour + { + get + { + string packedColour = EditorPrefs.GetString(kComposerHardBoundsColourKey, PackColor(kDefaultHardBoundsColour)); + return UnpackColour(packedColour); + } + + set + { + if (HardBoundsOverlayColour != value) + { + string packedColour = PackColor(value); + EditorPrefs.SetString(kComposerHardBoundsColourKey, packedColour); + } + } + } + + public static Color SoftBoundsOverlayColour + { + get + { + string packedColour = EditorPrefs.GetString(kComposerSoftBoundsColourKey, PackColor(kDefaultSoftBoundsColour)); + return UnpackColour(packedColour); + } + + set + { + if (SoftBoundsOverlayColour != value) + { + string packedColour = PackColor(value); + EditorPrefs.SetString(kComposerSoftBoundsColourKey, packedColour); + } + } + } + + public static Color TargetColour + { + get + { + string packedColour = EditorPrefs.GetString(kComposerTargetColourKey, PackColor(kDefaultTargetColour)); + return UnpackColour(packedColour); + } + + set + { + if (TargetColour != value) + { + string packedColour = PackColor(value); + EditorPrefs.SetString(kComposerTargetColourKey, packedColour); + } + } + } + + public static float TargetSize + { + get + { + return EditorPrefs.GetFloat(kComposerTargetSizeKey, 5f); + } + + set + { + if (TargetSize != value) + { + EditorPrefs.SetFloat(kComposerTargetSizeKey, value); + } + } + } + } + + private static bool ShowCoreSettings + { + get { return EditorPrefs.GetBool(kCoreSettingsFoldKey, false); } + set + { + if (value != ShowCoreSettings) + { + EditorPrefs.SetBool(kCoreSettingsFoldKey, value); + } + } + } + + private static bool ShowComposerSettings + { + get { return EditorPrefs.GetBool(kComposerSettingsFoldKey, false); } + set + { + if (value != ShowComposerSettings) + { + EditorPrefs.SetBool(kComposerSettingsFoldKey, value); + } + } + } + + private static Texture2D sCinemachineLogoTexture = null; + internal static Texture2D CinemachineLogoTexture + { + get + { + if (sCinemachineLogoTexture == null) + sCinemachineLogoTexture = Resources.Load("cm_logo_sm"); + if (sCinemachineLogoTexture != null) + sCinemachineLogoTexture.hideFlags = HideFlags.DontSaveInEditor; + return sCinemachineLogoTexture; + } + } + + private static Texture2D sCinemachineHeader = null; + internal static Texture2D CinemachineHeader + { + get + { + if (sCinemachineHeader == null) + sCinemachineHeader = Resources.Load("cinemachine_header"); + ; + if (sCinemachineHeader != null) + sCinemachineHeader.hideFlags = HideFlags.DontSaveInEditor; + return sCinemachineHeader; + } + } + + private static readonly string kCoreSettingsFoldKey = "CNMCN_Core_Folded"; + private static readonly string kComposerSettingsFoldKey = "CNMCN_Composer_Folded"; + + internal static event Action AdditionalCategories = null; + + static CinemachineSettings() + { + if (CinemachineLogoTexture != null) + { + EditorApplication.hierarchyWindowItemOnGUI += OnHierarchyGUI; + } + } + + class Styles { + //private static readonly GUIContent sCoreShowHiddenObjectsToggle = new GUIContent("Show Hidden Objects", "If checked, Cinemachine hidden objects will be shown in the inspector. This might be necessary to repair broken script mappings when upgrading from a pre-release version"); + public static readonly GUIContent sCoreActiveGizmosColour = new GUIContent("Active Virtual Camera", "The colour for the active virtual camera's gizmos"); + public static readonly GUIContent sCoreInactiveGizmosColour = new GUIContent("Inactive Virtual Camera", "The colour for all inactive virtual camera gizmos"); + public static readonly GUIContent sComposerOverlayOpacity = new GUIContent("Overlay Opacity", "The alpha of the composer's overlay when a virtual camera is selected with composer module enabled"); + public static readonly GUIContent sComposerHardBoundsOverlay = new GUIContent("Hard Bounds Overlay", "The colour of the composer overlay's hard bounds region"); + public static readonly GUIContent sComposerSoftBoundsOverlay = new GUIContent("Soft Bounds Overlay", "The colour of the composer overlay's soft bounds region"); + public static readonly GUIContent sComposerTargetOverlay = new GUIContent("Composer Target", "The colour of the composer overlay's target"); + public static readonly GUIContent sComposerTargetOverlayPixels = new GUIContent("Composer Target Size(px)", "The size of the composer overlay's target box in pixels"); + } + + private const string kCinemachineHeaderPath = "cinemachine_header.tif"; + private const string kCinemachineDocURL = @"http://www.cinemachineimagery.com/documentation/"; + + private static Vector2 sScrollPosition = Vector2.zero; + +#if UNITY_2019_1_OR_NEWER + [SettingsProvider] + static SettingsProvider CreateProjectSettingsProvider() + { + var provider = new SettingsProvider("Preferences/Cinemachine", SettingsScope.User, SettingsProvider.GetSearchKeywordsFromGUIContentProperties()); + provider.guiHandler = (sarchContext) => OnGUI(); + return provider; + } +#else + [PreferenceItem("Cinemachine")] +#endif + private static void OnGUI() + { + if (CinemachineHeader != null) + { + const float kWidth = 350f; + float aspectRatio = (float)CinemachineHeader.height / (float)CinemachineHeader.width; + GUILayout.BeginScrollView(Vector2.zero, false, false, GUILayout.Width(kWidth), GUILayout.Height(kWidth * aspectRatio)); + Rect texRect = new Rect(0f, 0f, kWidth, kWidth * aspectRatio); + + GUILayout.BeginArea(texRect); + GUI.DrawTexture(texRect, CinemachineHeader, ScaleMode.ScaleToFit); + GUILayout.EndArea(); + + GUILayout.EndScrollView(); + } + + sScrollPosition = GUILayout.BeginScrollView(sScrollPosition); + + //CinemachineCore.sShowHiddenObjects + // = EditorGUILayout.Toggle("Show Hidden Objects", CinemachineCore.sShowHiddenObjects); + + ShowCoreSettings = EditorGUILayout.Foldout(ShowCoreSettings, "Runtime Settings"); + if (ShowCoreSettings) + { + EditorGUI.indentLevel++; + EditorGUI.BeginChangeCheck(); + EditorGUILayout.BeginHorizontal(); + EditorGUI.BeginChangeCheck(); + Color newActiveGizmoColour = EditorGUILayout.ColorField(Styles.sCoreActiveGizmosColour, CinemachineCoreSettings.ActiveGizmoColour); + + if (EditorGUI.EndChangeCheck()) + { + CinemachineCoreSettings.ActiveGizmoColour = newActiveGizmoColour; + UnityEditorInternal.InternalEditorUtility.RepaintAllViews(); + } + + if (GUILayout.Button("Reset")) + { + CinemachineCoreSettings.ActiveGizmoColour = CinemachineCoreSettings.kDefaultActiveColour; + } + EditorGUILayout.EndHorizontal(); + + EditorGUILayout.BeginHorizontal(); + EditorGUI.BeginChangeCheck(); + Color newInactiveGizmoColour = EditorGUILayout.ColorField(Styles.sCoreInactiveGizmosColour, CinemachineCoreSettings.InactiveGizmoColour); + + if (EditorGUI.EndChangeCheck()) + { + CinemachineCoreSettings.InactiveGizmoColour = newInactiveGizmoColour; + UnityEditorInternal.InternalEditorUtility.RepaintAllViews(); + } + + if (GUILayout.Button("Reset")) + { + CinemachineCoreSettings.InactiveGizmoColour = CinemachineCoreSettings.kDefaultInactiveColour; + } + EditorGUILayout.EndHorizontal(); + EditorGUI.indentLevel--; + } + + ShowComposerSettings = EditorGUILayout.Foldout(ShowComposerSettings, "Composer Settings"); + if (ShowComposerSettings) + { + EditorGUI.indentLevel++; + EditorGUILayout.BeginHorizontal(); + EditorGUI.BeginChangeCheck(); + + float overlayOpacity = EditorGUILayout.Slider(Styles.sComposerOverlayOpacity, ComposerSettings.OverlayOpacity, 0f, 1f); + + if (EditorGUI.EndChangeCheck()) + { + ComposerSettings.OverlayOpacity = overlayOpacity; + } + + if (GUILayout.Button("Reset")) + { + ComposerSettings.OverlayOpacity = ComposerSettings.kDefaultOverlayOpacity; + } + EditorGUILayout.EndHorizontal(); + + EditorGUILayout.BeginHorizontal(); + EditorGUI.BeginChangeCheck(); + Color newHardEdgeColor = EditorGUILayout.ColorField(Styles.sComposerHardBoundsOverlay, ComposerSettings.HardBoundsOverlayColour); + + if (EditorGUI.EndChangeCheck()) + { + ComposerSettings.HardBoundsOverlayColour = newHardEdgeColor; + } + + if (GUILayout.Button("Reset")) + { + ComposerSettings.HardBoundsOverlayColour = ComposerSettings.kDefaultHardBoundsColour; + } + EditorGUILayout.EndHorizontal(); + + EditorGUILayout.BeginHorizontal(); + EditorGUI.BeginChangeCheck(); + Color newSoftEdgeColor = EditorGUILayout.ColorField(Styles.sComposerSoftBoundsOverlay, ComposerSettings.SoftBoundsOverlayColour); + + if (EditorGUI.EndChangeCheck()) + { + ComposerSettings.SoftBoundsOverlayColour = newSoftEdgeColor; + } + + if (GUILayout.Button("Reset")) + { + ComposerSettings.SoftBoundsOverlayColour = ComposerSettings.kDefaultSoftBoundsColour; + } + EditorGUILayout.EndHorizontal(); + + EditorGUILayout.BeginHorizontal(); + EditorGUI.BeginChangeCheck(); + Color newTargetColour = EditorGUILayout.ColorField(Styles.sComposerTargetOverlay, ComposerSettings.TargetColour); + + if (EditorGUI.EndChangeCheck()) + { + ComposerSettings.TargetColour = newTargetColour; + } + + if (GUILayout.Button("Reset")) + { + ComposerSettings.TargetColour = ComposerSettings.kDefaultTargetColour; + } + EditorGUILayout.EndHorizontal(); + + EditorGUI.BeginChangeCheck(); + float targetSide = EditorGUILayout.FloatField(Styles.sComposerTargetOverlayPixels, ComposerSettings.TargetSize); + + if (EditorGUI.EndChangeCheck()) + { + ComposerSettings.TargetSize = targetSide; + } + EditorGUI.indentLevel--; + } + + if (AdditionalCategories != null) + { + AdditionalCategories(); + } + + GUILayout.EndScrollView(); + + //if (GUILayout.Button("Open Documentation")) + //{ + // Application.OpenURL(kCinemachineDocURL); + //} + } + + private static void OnHierarchyGUI(int instanceID, Rect selectionRect) + { + GameObject instance = EditorUtility.InstanceIDToObject(instanceID) as GameObject; + if (instance == null) + { + // Object in process of being deleted? + return; + } + + if (instance.GetComponent() != null) + { + Rect texRect = new Rect(selectionRect.xMax - selectionRect.height, selectionRect.yMin, selectionRect.height, selectionRect.height); + GUI.DrawTexture(texRect, CinemachineLogoTexture, ScaleMode.ScaleAndCrop); + } + } + + internal static Color UnpackColour(string str) + { + if (!string.IsNullOrEmpty(str)) + { + byte[] bytes = Base64Decode(str); + + if ((bytes != null) && bytes.Length == 16) + { + float r = BitConverter.ToSingle(bytes, 0); + float g = BitConverter.ToSingle(bytes, 4); + float b = BitConverter.ToSingle(bytes, 8); + float a = BitConverter.ToSingle(bytes, 12); + + return new Color(r, g, b, a); + } + } + + return Color.white; + } + + internal static string PackColor(Color col) + { + byte[] bytes = new byte[16]; + + byte[] rBytes = BitConverter.GetBytes(col.r); + byte[] gBytes = BitConverter.GetBytes(col.g); + byte[] bBytes = BitConverter.GetBytes(col.b); + byte[] aBytes = BitConverter.GetBytes(col.a); + + Buffer.BlockCopy(rBytes, 0, bytes, 0, 4); + Buffer.BlockCopy(gBytes, 0, bytes, 4, 4); + Buffer.BlockCopy(bBytes, 0, bytes, 8, 4); + Buffer.BlockCopy(aBytes, 0, bytes, 12, 4); + + return Base64Encode(bytes); + } + + private static string Base64Encode(byte[] data) + { + return Convert.ToBase64String(data); + } + + private static byte[] Base64Decode(string base64EncodedData) + { + return Convert.FromBase64String(base64EncodedData); + } + } +} diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Editor/Windows/CinemachineSettings.cs.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Editor/Windows/CinemachineSettings.cs.meta" new file mode 100644 index 00000000..9c207d2f --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Editor/Windows/CinemachineSettings.cs.meta" @@ -0,0 +1,12 @@ +fileFormatVersion: 2 +guid: 74d8c4d6e5d0338469ae46c13725f3ce +timeCreated: 1488314898 +licenseType: Pro +MonoImporter: + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Editor/Windows/WaveformWindow.cs" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Editor/Windows/WaveformWindow.cs" new file mode 100644 index 00000000..4963eb62 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Editor/Windows/WaveformWindow.cs" @@ -0,0 +1,231 @@ +using UnityEngine; +using UnityEditor; +using System.IO; +using System.Collections.Generic; +using UnityEngine.Rendering; + +namespace Cinemachine.Editor +{ + internal class WaveformWindow : EditorWindow + { + WaveformGenerator mWaveformGenerator; + Texture2D mScreenshot; + string mScreenshotFilename; + + // Controls how frequently (in seconds) the view will update. + // Performance is really bad, so keep this as large as possible. + public static float UpdateInterval = 0.5f; + public static void SetDefaultUpdateInterval() { UpdateInterval = 0.5f; } + + //[MenuItem("Window/Waveform Monitor")] + public static void OpenWindow() + { + WaveformWindow window = EditorWindow.GetWindow(false); + window.autoRepaintOnSceneChange = true; + //window.position = new Rect(100, 100, 400, 400); + window.Show(true); + } + + private void OnEnable() + { + titleContent = new GUIContent("Waveform", CinemachineSettings.CinemachineLogoTexture); + mWaveformGenerator = new WaveformGenerator(); + + mScreenshotFilename = Path.GetFullPath(FileUtil.GetUniqueTempPathInProject() + ".png"); + ScreenCapture.CaptureScreenshot(mScreenshotFilename); + EditorApplication.update += UpdateScreenshot; + } + + private void OnDisable() + { + EditorApplication.update -= UpdateScreenshot; + if (!string.IsNullOrEmpty(mScreenshotFilename) && File.Exists(mScreenshotFilename)) + File.Delete(mScreenshotFilename); + mScreenshotFilename = null; + mWaveformGenerator.DestroyBuffers(); + if (mScreenshot != null) + DestroyImmediate(mScreenshot); + mScreenshot = null; + } + + private void OnGUI() + { + Rect rect = EditorGUILayout.GetControlRect(true); + EditorGUIUtility.labelWidth /= 2; + EditorGUI.BeginChangeCheck(); + mWaveformGenerator.m_Exposure = EditorGUI.Slider( + rect, "Exposure", mWaveformGenerator.m_Exposure, 0.01f, 2); + if (EditorGUI.EndChangeCheck()) + UnityEditorInternal.InternalEditorUtility.RepaintAllViews(); + EditorGUIUtility.labelWidth *= 2; + rect.y += rect.height; + rect.height = position.height - rect.height; + var tex = mWaveformGenerator.Result; + if (tex != null) + GUI.DrawTexture(rect, tex); + } + + float mLastUpdateTime = 0; + private void UpdateScreenshot() + { + // Don't do this too often + float now = Time.time; + if (mScreenshot != null && now - mLastUpdateTime < UpdateInterval) + return; + + mLastUpdateTime = now; + if (!string.IsNullOrEmpty(mScreenshotFilename) && File.Exists(mScreenshotFilename)) + { + byte[] fileData = File.ReadAllBytes(mScreenshotFilename); + if (mScreenshot == null) + mScreenshot = new Texture2D(2, 2); + mScreenshot.LoadImage(fileData); // this will auto-resize the texture dimensions. + mWaveformGenerator.RenderWaveform(mScreenshot); + + // Capture the next one + ScreenCapture.CaptureScreenshot(mScreenshotFilename); + } + } + + class WaveformGenerator + { + public float m_Exposure = 0.2f; + + RenderTexture mOutput; + ComputeBuffer mData; + + int mThreadGroupSize; + int mThreadGroupSizeX; + int mThreadGroupSizeY; + + ComputeShader mWaveformCompute; + MaterialPropertyBlock mWaveformProperties; + Material mWaveformMaterial; + CommandBuffer mCmd; + + static Mesh sFullscreenTriangle; + static Mesh FullscreenTriangle + { + get + { + if (sFullscreenTriangle == null) + { + sFullscreenTriangle = new Mesh { name = "Fullscreen Triangle" }; + sFullscreenTriangle.SetVertices(new List + { + new Vector3(-1f, -1f, 0f), + new Vector3(-1f, 3f, 0f), + new Vector3( 3f, -1f, 0f) + }); + sFullscreenTriangle.SetIndices( + new [] { 0, 1, 2 }, MeshTopology.Triangles, 0, false); + sFullscreenTriangle.UploadMeshData(false); + } + return sFullscreenTriangle; + } + } + + public WaveformGenerator() + { + mWaveformCompute = Resources.Load("CMWaveform"); + mWaveformProperties = new MaterialPropertyBlock(); + mWaveformMaterial = new Material(Resources.Load("CMWaveform")) + { + name = "CMWaveformMaterial", + hideFlags = HideFlags.DontSave + }; + mCmd = new CommandBuffer(); + } + + void CreateBuffers(int width, int height) + { + if (mOutput == null || !mOutput.IsCreated() + || mOutput.width != width || mOutput.height != height) + { + DestroyImmediate(mOutput); + mOutput = new RenderTexture(width, height, 0, RenderTextureFormat.ARGB32) + { + anisoLevel = 0, + filterMode = FilterMode.Bilinear, + wrapMode = TextureWrapMode.Clamp, + useMipMap = false + }; + mOutput.Create(); + } + + int count = Mathf.CeilToInt(width / (float)mThreadGroupSizeX) * mThreadGroupSizeX * height; + if (mData == null) + mData = new ComputeBuffer(count, sizeof(uint) << 2); + else if (mData.count < count) + { + mData.Release(); + mData = new ComputeBuffer(count, sizeof(uint) << 2); + } + } + + public void DestroyBuffers() + { + if (mData != null) + mData.Release(); + mData = null; + DestroyImmediate(mOutput); + mOutput = null; + } + + public RenderTexture Result { get { return mOutput; } } + + public void RenderWaveform(Texture2D source) + { + if (mWaveformMaterial == null) + return; + + int width = source.width; + int height = source.height; + int histogramResolution = 256; + + mThreadGroupSize = 256; + mThreadGroupSizeX = 16; + mThreadGroupSizeY = 16; + CreateBuffers(width, histogramResolution); + + mCmd.Clear(); + mCmd.BeginSample("CMWaveform"); + + var parameters = new Vector4( + width, height, + QualitySettings.activeColorSpace == ColorSpace.Linear ? 1 : 0, + histogramResolution); + + // Clear the buffer on every frame + int kernel = mWaveformCompute.FindKernel("KCMWaveformClear"); + mCmd.SetComputeBufferParam(mWaveformCompute, kernel, "_WaveformBuffer", mData); + mCmd.SetComputeVectorParam(mWaveformCompute, "_Params", parameters); + mCmd.DispatchCompute(mWaveformCompute, kernel, + Mathf.CeilToInt(width / (float)mThreadGroupSizeX), + Mathf.CeilToInt(histogramResolution / (float)mThreadGroupSizeY), 1); + + // Gather all pixels and fill in our waveform + kernel = mWaveformCompute.FindKernel("KCMWaveformGather"); + mCmd.SetComputeBufferParam(mWaveformCompute, kernel, "_WaveformBuffer", mData); + mCmd.SetComputeTextureParam(mWaveformCompute, kernel, "_Source", source); + mCmd.SetComputeVectorParam(mWaveformCompute, "_Params", parameters); + mCmd.DispatchCompute(mWaveformCompute, kernel, width, + Mathf.CeilToInt(height / (float)mThreadGroupSize), 1); + + // Generate the waveform texture + float exposure = Mathf.Max(0f, m_Exposure); + exposure *= (float)histogramResolution / height; + mWaveformProperties.SetVector(Shader.PropertyToID("_Params"), + new Vector4(width, histogramResolution, exposure, 0f)); + mWaveformProperties.SetBuffer(Shader.PropertyToID("_WaveformBuffer"), mData); + mCmd.SetRenderTarget(mOutput); + mCmd.DrawMesh( + FullscreenTriangle, Matrix4x4.identity, + mWaveformMaterial, 0, 0, mWaveformProperties); + mCmd.EndSample("CMWaveform"); + + Graphics.ExecuteCommandBuffer(mCmd); + } + } + } +} diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Editor/Windows/WaveformWindow.cs.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Editor/Windows/WaveformWindow.cs.meta" new file mode 100644 index 00000000..19c65f24 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Editor/Windows/WaveformWindow.cs.meta" @@ -0,0 +1,13 @@ +fileFormatVersion: 2 +guid: a8725b08dfa3851468b1f029bb53c966 +timeCreated: 1517576612 +licenseType: Pro +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Editor/com.unity.cinemachine.Editor.asmdef" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Editor/com.unity.cinemachine.Editor.asmdef" new file mode 100644 index 00000000..b542aa5e --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Editor/com.unity.cinemachine.Editor.asmdef" @@ -0,0 +1,12 @@ +{ + "name": "com.unity.cinemachine.editor", + "references": [ + "Cinemachine" + ], + "optionalUnityReferences": [], + "includePlatforms": [ + "Editor" + ], + "excludePlatforms": [], + "allowUnsafeCode": false +} \ No newline at end of file diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Editor/com.unity.cinemachine.Editor.asmdef.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Editor/com.unity.cinemachine.Editor.asmdef.meta" new file mode 100644 index 00000000..4f8a4bd5 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Editor/com.unity.cinemachine.Editor.asmdef.meta" @@ -0,0 +1,7 @@ +fileFormatVersion: 2 +guid: ba8c092d026123a418fb4bfb797a7bd8 +AssemblyDefinitionImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Extras~/CinemachineExamples.unitypackage" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Extras~/CinemachineExamples.unitypackage" new file mode 100644 index 00000000..f8a108b1 Binary files /dev/null and "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Extras~/CinemachineExamples.unitypackage" differ diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Extras~/CinemachinePostProcessingV1.unitypackage" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Extras~/CinemachinePostProcessingV1.unitypackage" new file mode 100644 index 00000000..5994ef93 Binary files /dev/null and "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Extras~/CinemachinePostProcessingV1.unitypackage" differ diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Extras~/CinemachinePostProcessingV2.unitypackage" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Extras~/CinemachinePostProcessingV2.unitypackage" new file mode 100644 index 00000000..45edb2f3 Binary files /dev/null and "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Extras~/CinemachinePostProcessingV2.unitypackage" differ diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Extras~/ReleaseNotes.txt" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Extras~/ReleaseNotes.txt" new file mode 100644 index 00000000..585ded51 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Extras~/ReleaseNotes.txt" @@ -0,0 +1,220 @@ +Version 2.2.9 + +- Added CinemachineCore.GetBlendOverride delegate to allow applications to override any vcam blend when it happens +- When a blend is cancelled by the opposite blend, reduce the blend time +- FreeLook: if inherit position from similar FreeLooks, bypass damping +- Timline: improve handling when vcam values are tweaked inside shot inspector (fogbugz 1109024) +- OnTargetObjectWarped no longer generates garbage +- Orthographic cameras allow a Near Clip of 0 +- Timeline won't auto-create CM brains when something dragged onto it +- Confiner: Improvement in automatic path invalidation when number of path points path changes +- Added CinemachineInpuitAxisDriver utility for overriding the default AxisState behaviour +- CinemachineCameraOffset: added customizable stage for when to apply the offset +- Added Loop option to BlendList Camera +- Improved Lookahed: does not automatically recenter +- Brain no longer applies time scaling to fixed delta +- Bugfix: potential endless loop when using Ignore tag in Collider +- Bugfix: Allow externally-driven FeeLook XAxis to work properly with SimpleFollow +- Bugfix: vcams with noise would sometimes show one noiseless frame when they were activated and standby update was not Always +- Bugfix: Generate a cut event if cutting to a blend-in-progess (fogbugz 1150847) +- Bugfix: reset lens shift if not physical camera +- Bugfix: Collider must consider actual target position, not lookahead position +- Bugfix: FreeLook heading RecenterNow was not working +- Bugfix: lookahead now takes the overridden Up into account +- Bugfix: screen composer guides drawn in wrong place for picture-in-picture +- Bugfix: FreeLook now draws only 1 active composer guide at a time (fogbugz 1138263) +- Bugfix: cameras sometimes snapped when interrupting blends +- Bugfix: Path handles no longer scale with the path object +- Bugfix: Framing Transposer Center on Activate was not working properly (fogbugz 1129824) +- Bugfix: collider was pushing camera too far if there were multiple overlapping obstacles +- Bugfix: use IsAssignableFrom instead of IsSubclass in several places +- Bugfix: when interrupting a blend in progress, Cut was not respected +- Bugfix: collider minimum occlusion time and smoothing time interaction +- Bugfix: TargetGroup.RemoveMember error (fogbugz 1119028) +- Bugfix: TargetGroup member lerping jerk when member weight near 0 +- Bugfix: Transposer angular damping should be 0 only if binding mode not LockToTarget + + +Version 2.2.8 + +- Transposer: added Angular Damping Mode, to support quaternion calculations in gimbal-lock situations +- Framing Transposer and Group Transposer: group composing bugfixes, respect min/max limits +- Added ConemachineCameraOffset extension, to offset the camera a fixed distance at the end of the pipeline +- Dolly Cart: added support for LateUpdate +- State-driven-camera: added [NoSaveDuringPlay] to Animated Target and Layer Index +- Added AxisState.Recentering.RecenterNow() API call to skip wait time and start recentering now (if enabled) +- Added NoLens blend hint, to leave camera Lens settings alone +- Updated documentation (corrections, and relocation to prevent importing) +- Upgrade: added support for nested prefabs in Unity 2018.3 (fogbugz 1077395) +- Optimization: position predictor is more efficient +- Optimization: Composer caches some calculations +- Optimization: Fix editor slowdown when Lens Presets asset is missing +- Experimental: Optional new damping algorithm: attempt to reduce sensitivity to variable framerate +- Experimental: Optional new extra-efficient versions of vcam and FreeLook (not back-compatible) +- Timeline: play/pause doesn't kick out the timeline vcam +- Path editor: make sure game view gets updated when a path waypoint is dragged in the scene view +- Composer guides are shown even if Camera is attached to a renderTexture +- Bugfix: allow impulse definition to be a non-public field (property drawer was complaining) +- Bugfix: added null check for when there is no active virtual camera +- Bugfix: CollisionImpulseSource typo in detection of 2D collider +- Bugfix: PasteComponentValues to prefab vcams and FreeLooks were corrupting scene and prefabs +- Bugfix: Timeline mixer was glitching for single frames at the end of blends +- Bugfix: Added OnTransitionFromCamera() to POV and OrbitalTransposer, to transition axes intelligently +- Regression fix: if no active vcam, don't set the Camera's transform + + +Version 2.2.7 + +- Bugfix: fogbugz case 1053595: Cinemachine Collider leaves hidden collider at origin that interferes with scene objects +- Bugfix: fogbugz case 1063754: empty target group produces console messages +- Bugfix: FreeLook Paste Component Values now pastes the CM subcomponents as well +- Bugfix: added extra null checks to support cases where current vcam is dynamically deleted +- Bugfix: reset BlendList when enabled +- Regression fix: FreeLook axis values get transferred when similar vcams transition +- Bugfix: cutting to BlendList vcam sometimes produced a few bad frames +- Bugfix: smart update tracks the targets more efficiently and correctly, and supports RigidBody interpolation (2018.2 and up) +- Enhancement: POV component interprets POV as relative to parent transform if there is one +- API change: OnCameraLive and CameraActivated events take outgoing vcam also as parameter (may be null) + +Version 2.2.0 + +- New Cinemachine Impulse module for event-driven camera shakes +- New Event Helper script CinemachineTriggerAction takes action on Collider and Collider2D enter/exit events, and exposes them as UnityEvents +- New performance-tuning feature: Standby Update. Controls how often to update the vcam when it's in Standby. +- New NoiseSettings editor with signal preview +- Added Focal Length or Named FOV presets for Camera Lens +- Added support for Physical Camera: focal length and Lens Offset +- New improved Group framing algorithm: tighter group framing in GroupComposer and FramingTransposer +- Collider: now returns TargetIsObscured if the target is offscreen (great for cameras with fixed aim) +- Collider: added Minimum Occlusion Time setting, to ignore fleeting obstructions +- Collider: added Transparent Layers mask, to specify solid objects that don't obstruct view +- Collider: damping will no longer take the camera through obstacles +- Collider: Added separate damping setting for when target is being occluded vs when camera is being returned to its normal position +- Collider: added Smoothing setting, to reduce camera jumpiness in environements with lots of obstacles +- NoiseSettings: added checkbox for pure sine-wave instead of Perlin wave +- If no LookAt target, PostProcessing FocusTracksTarget offset is relative to camera +- TrackedDolly: Default up mode sets Up to World Up +- Virtual Camera: New Transitions section in inspector that gives more control over blending: + - Blend Hint provides some control over how the position and rotation are interpolated + - Inherit Position checkbox to ensure smooth positional handoff from outgoing camera + - OnCameraLive event gets fired when the camera activates. Useful for custom handlers. +- Added ScreenSpaceAimWhenTargetsDiffer as a vcam blend hint. This influences what happens when blending between vcams with different LookAt targets +- Increased stability of vcams with very small FOVs +- Framing Transposer no longer requires LookAt to be null +- LensSettings Aspect, Orthographic, IsPhysicalCamera, SensorSize properties no longer internal +- Noise Profiles: don't magically create assets. Prompt user for filename and location of new or cloned profiles +- Refactored interaction between timeline and CM brain, to improve handling of edge cases (fogbugz case 1048497) +- Bugfix: StateDrivenCamera Editor was not finding states if target was OverrideController +- Bugfix when dragging orbital transposer transform: take bias into account +- Bugfix: SaveDuringPlay was not handling asset fields correctly - was sometimes crushing assets +- Bugfix: SimpleFollow transposers were not initilizing their position correctly at game start +- Bugfix: Timeline with CM shot was causing jitter in some FixedUpdate situations +- Bugfix: Multiple brains with heterogeneous update methods were not behaving correctly. CM will now support this, but you must make sure that the brains have different layer masks. +- Example scenes now include use of CinemachineTriggerAction script. + +Version 2.1.13 + +- Bugfix: Custom Blends "Any to Any" was not working (regression) +- Bugfix: Composer was sometimes getting wrong aspect if multiple brains with different aspect ratios +- Bugfix: could not drag vcam transforms if multiple inspectors and one is hidden +- Bugfix: Framing Transposer initializes in the wrong place - noticeable if dead zone + +Version 2.1.12 + +- Project restructure: Removed Base, Timeline, and PostFX folders from project root. PostProcessing code must now be manually imported from Cinemachine menu. No more dependencies on scripting defines. +- New Storyboard extension, to display images over the vcams. Comes with a Waveform monitor window for color grading +- New option to specify vcam position blend style: linear, spherical, or cylindrical, based on LookAt target +- Added API to support seamless position warping of target objects: OnTargetObjectWarped(). +- Added support for custom blend curves +- Lookahead: added Ignore Y Axis Movement option +- Added support for cascading blends (i.e. blending from mid-blend looks better) +- POV/Orbital/FreeLook axis: exposed Min, Max, and Wrap in the UI, for customized axis range +- FreeLook: added Y Axis recentering +- Added recentering feature to both axes POV Aim component +- Path: Added Normalized Path units option: 0 is start of path, 1 is end. +- Path: added length display in inspector +- Timeline Clip Editor: vcam sections are now collapsible +- API enhancement: added Finalize to Pipeline stages, called even for manager-style vcams +- Bugfix: PostProcessing V2 DoF blending works better +- Bugfix: OrbitalTransposer works better with WorldUp overrides +- Bugfix: Remove StateDrivenCamera "not playing a controller" warning +- Bugfix: Handle exceptions thrown by assemblies that don't want to be introspected +- Bugfix: vcams following physics objects incorrectly snapped to origin after exiting play mode +- Bugfix: predictor now supports time pause +- Bugfix: Moved StartCoroutine in Brain to OnEnable() +- Bugfix: Collider was causing problems in Physics on Android platforms +- Bugfix: dragging a vcam's position updtaes prefabs properly +- Bugfix: All extension now respect the "enabled" checkbox +- Bugfix: Undo for Extasion add will no longer generate null references + +Version 2.1.10 + +- New Aim component: Same As Follow Target simply uses the same orientation as the Follow target +- Perlin Noise component: added UI to clone or locate existing Noise profiles, and to create new ones inspector +- Noise Presets were moved outside of the Examples folder +- Example Assets are now included as embedded package, not imported by default +- Bugfix: FreeLook with PositionDelta was not properly updating the heading +- Bugfix: Transitioning between FreeLooks simetimes caused a short camera freeze +- Bugfix: Added some null checks to FreeLook, to prevent error messages at build time + + +Version 2.1.09 + +New Features + +- PostProcessing V2 is now supported. +- New Collider implementation. Curb feelers are gone, replaced by a clever camera-repositioning algorithm that will try to preserve camera height or distance from target (strategy is user-selectable). +- New CinemachineConfiner: confine a virtual camera to a simple bounding volume or PolygonCollider2D. +- New Framing Transposer. This is a special transposer that will respect composition and framing rules by moving the camera without rotating it. Takes only a Follow Target (no LookAt - this is important). Designed for Orthographic cameras, but will also work for Perspective cameras. If Follow target is a CinemachineTargetGroup, then will also provide Group Framing options. +- New CinemachinePOV Aim component. Camera aim is entirely controlled by user, using 2 input axes. +- New CinemachineMixingCamera. Drive a continuous blend of up to 8 virtual cameras from timeline or game logic. Create complex rigs with custom blends and expose them as ordinary vcams. +- New CinemachineBlendListCamera. A mini vcam sequencer that provides a quick and easy way to do AB camera moves on the fly. +- New CinemachineDollyCart behaviour, for moving anything along a path. No need to create dummy vcams just for that. +- New CinemachineSmoothPath component. You can use it instead of the old CinemachinePath. The difference is that the SmoothPath guarantees second-order continuity, which means that there will never be any sudden camera rotation changes baked into the path tangents. Easier to use, too: no tangents to mess around with (they get automatically set for smoothness). +- Path now supports Distance Units in addition to Path units, making it easy to create steady motion. +- TrackedDolly: added ability to use Distance or Path units for path position. +- Transposer and TrackedDolly: added target angular damping on 3 axes. +- OrbitalTransposer and FreeLook: added angular damping and binding mode, same as Transposer. +- OrbitalTransopser and freelook: added checkbox to invert input axis. +- Transposer, OrbitalTransposer, and FreeLook: added new Simple Follow binding mode, which will follow the target using rotation as much as possible, changing position as little as possible. Like a lazy cameraman. +- Added IgnoreTimeScale option to Brain. Useful for snappy cameras even in slo-mo. +- Added Lookahead Time to composer. Composer will look at the point where it estimates the target will be at some time in the near future. This gives much more natural framing of a moving target. + + +Improvements + +- SmartUpdate is smarter: added support for Interpolation when target is animated by physics system. +- Added off-button for SaveDuringPlay. +- No SaveDuringPlay for vcam priority, LookAt and Follow targets, GroupTarget members. +- Added IsBlending API method to StateDrivenCamera and ClearShot. +- TargetGroup now has a user-selectable update method. +- TargetGroup now respects the weight when computing bounding box, so it's possible to gradually add or remove members by manipulating the weight. +- Clearshot: if randomize, then re-randomize whenever it becomes active. +- ClearShot: default blend is cut. +- ClearShot create menu: add a Collider by default. +- FollowZoom: min/max FOV defaults changed to 3/60. +- Composer damping range is now 0-20 instead of 0-100. +- Orbital and FreeLook: Heading Bias can now be animated on the timeline. +- Orbital and FreeLook: damping no longer interferes with camera response to user input. Axis movement bypasses all damping. +- TrackedDolly: added path position offset to Auto-Dolly. Stays on the path (unlike path offset, which is based on the path tangent and so can go off the path) +- Noise component inspector now has a dropdown for Profile presets, instead of directly allowing editing of the Profile asset. +- Added concept of Cinemachine Extension. Collider, confiner, PostProcessing, etc are now Extensions. They are available via a dropdown at the bottom of the inspection for virtual cameras. They will no longer appear in the standard Components menu. +- Time.timeScale = 0 is now supported. Pausing the game will also pause the virtual cameras. +- HardConstraint has been split into two settings: Do Nothing and Hard LookAt/Follow. Do Nothing will leave the camera's transform alone, ignoring any target that may have been set. +- CinemachineBrain no longer requires a Camera component. Can be used with any GameObject, making it possible to use Cinemachine to control the transforms of arbitrary objects. +- Improved logic for AxisState accel/decel. More realistic behaviour. + + +Bugfixes + +- SaveDuringPlay obsolete API fix for 2017.2. +- Fixed build errors when building for UWP. +- Clearshot and SDC: don't reset state if deactivated. +- FreeLook destroy - no more orphan rigs. +- Fixed strange build error that only showed up in MonoDevelop. +- FreeLook was not respecting X-axis accel and decel. Heading speed had to be crazy high. Now same as Orbital (warning: may have to re-tune settings on existing FreeLooks). +- Recenter to target heading was not moving smoothly in some circumstances. +- Collider raycasts no longer hit triggers. +- Noise: handle variable deltaTime gracefully. +- State-Driven-Camera: don't generate errors when animated target is inactive. +- Several jitter and judder issues resolved. diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Gizmos.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Gizmos.meta" new file mode 100644 index 00000000..88703017 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Gizmos.meta" @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: d9ca844c06be1ab40a3f7fc9e3c42c55 +folderAsset: yes +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Gizmos/Cinemachine.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Gizmos/Cinemachine.meta" new file mode 100644 index 00000000..754e3f49 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Gizmos/Cinemachine.meta" @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: eff4faea73dcad74991e80ea98c76e2c +folderAsset: yes +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Gizmos/Cinemachine/cm_logo_lg.png" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Gizmos/Cinemachine/cm_logo_lg.png" new file mode 100644 index 00000000..47f19039 Binary files /dev/null and "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Gizmos/Cinemachine/cm_logo_lg.png" differ diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Gizmos/Cinemachine/cm_logo_lg.png.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Gizmos/Cinemachine/cm_logo_lg.png.meta" new file mode 100644 index 00000000..c182f4d2 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Gizmos/Cinemachine/cm_logo_lg.png.meta" @@ -0,0 +1,94 @@ +fileFormatVersion: 2 +guid: b8ba3923a6094cd48b85425f47fd7450 +TextureImporter: + fileIDToRecycleName: {} + externalObjects: {} + serializedVersion: 5 + mipmaps: + mipMapMode: 1 + enableMipMap: 1 + sRGBTexture: 1 + linearTexture: 0 + fadeOut: 0 + borderMipMap: 0 + mipMapsPreserveCoverage: 0 + alphaTestReferenceValue: 0.5 + mipMapFadeDistanceStart: 1 + mipMapFadeDistanceEnd: 3 + bumpmap: + convertToNormalMap: 0 + externalNormalMap: 0 + heightScale: 0.25 + normalMapFilter: 0 + isReadable: 0 + grayScaleToAlpha: 0 + generateCubemap: 6 + cubemapConvolution: 0 + seamlessCubemap: 0 + textureFormat: -1 + maxTextureSize: 2048 + textureSettings: + serializedVersion: 2 + filterMode: -1 + aniso: -1 + mipBias: -1 + wrapU: -1 + wrapV: -1 + wrapW: -1 + nPOTScale: 1 + lightmap: 0 + compressionQuality: 50 + spriteMode: 0 + spriteExtrude: 1 + spriteMeshType: 1 + alignment: 0 + spritePivot: {x: 0.5, y: 0.5} + spriteBorder: {x: 0, y: 0, z: 0, w: 0} + spritePixelsToUnits: 100 + alphaUsage: 1 + alphaIsTransparency: 0 + spriteTessellationDetail: -1 + textureType: 0 + textureShape: 1 + singleChannelComponent: 0 + maxTextureSizeSet: 0 + compressionQualitySet: 0 + textureFormatSet: 0 + platformSettings: + - serializedVersion: 2 + buildTarget: DefaultTexturePlatform + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Standalone + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 0 + spriteSheet: + serializedVersion: 2 + sprites: [] + outline: [] + physicsShape: [] + bones: [] + spriteID: + vertices: [] + indices: + edges: [] + weights: [] + spritePackingTag: + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/LICENSE.md" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/LICENSE.md" new file mode 100644 index 00000000..34c1bb96 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/LICENSE.md" @@ -0,0 +1,5 @@ +Cinemachine copyright © 2018 Unity Technologies ApS + +Licensed under the Unity Companion License for Unity-dependent projects--see [Unity Companion License](http://www.unity3d.com/legal/licenses/Unity_Companion_License). + +Unless expressly provided otherwise, the Software under this license is made available strictly on an “AS IS” BASIS WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED. Please review the license for details on these and other terms and conditions. diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/LICENSE.md.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/LICENSE.md.meta" new file mode 100644 index 00000000..58957c5d --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/LICENSE.md.meta" @@ -0,0 +1,7 @@ +fileFormatVersion: 2 +guid: c0d6910df7c989c4abc7d5ddf0e421b2 +TextScriptImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Presets.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Presets.meta" new file mode 100644 index 00000000..08ca6d6e --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Presets.meta" @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 9f96161bfc85a364aac3baa0b7279f94 +folderAsset: yes +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Presets/Noise.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Presets/Noise.meta" new file mode 100644 index 00000000..e2cb210f --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Presets/Noise.meta" @@ -0,0 +1,9 @@ +fileFormatVersion: 2 +guid: 8f107aadf823af24889bc290a1cca90d +folderAsset: yes +timeCreated: 1455314775 +licenseType: Pro +DefaultImporter: + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Presets/Noise/6D Shake.asset" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Presets/Noise/6D Shake.asset" new file mode 100644 index 00000000..12f39c5a --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Presets/Noise/6D Shake.asset" @@ -0,0 +1,87 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!114 &11400000 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_PrefabParentObject: {fileID: 0} + m_PrefabInternal: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: b7f59e54f2bfd184b9dd451a678d089b, type: 3} + m_Name: 6D Shake + m_EditorClassIdentifier: + PositionNoise: + - X: + Frequency: 3.2 + Amplitude: 0.011 + Constant: 1 + Y: + Frequency: 1.9 + Amplitude: 0.059 + Constant: 1 + Z: + Frequency: 3.33 + Amplitude: 0.021 + Constant: 1 + - X: + Frequency: 7.7 + Amplitude: 0.009 + Constant: 1 + Y: + Frequency: 9.1 + Amplitude: 0.04 + Constant: 0 + Z: + Frequency: 9.22 + Amplitude: 0.009 + Constant: 1 + - X: + Frequency: 51.51 + Amplitude: 0.002 + Constant: 1 + Y: + Frequency: 55.54 + Amplitude: 0.05 + Constant: 1 + Z: + Frequency: 58.55 + Amplitude: 0.017 + Constant: 1 + OrientationNoise: + - X: + Frequency: 5.83 + Amplitude: 0.09 + Constant: 1 + Y: + Frequency: 1.8 + Amplitude: 0.059 + Constant: 1 + Z: + Frequency: 2.38 + Amplitude: 0.017 + Constant: 1 + - X: + Frequency: 9.17 + Amplitude: 0.14 + Constant: 1 + Y: + Frequency: 11.35 + Amplitude: 0.041 + Constant: 1 + Z: + Frequency: 10.52 + Amplitude: 0.009 + Constant: 1 + - X: + Frequency: 57.17 + Amplitude: 0.15 + Constant: 1 + Y: + Frequency: 54.17 + Amplitude: 0.048 + Constant: 1 + Z: + Frequency: 63.76 + Amplitude: 0.016 + Constant: 1 diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Presets/Noise/6D Shake.asset.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Presets/Noise/6D Shake.asset.meta" new file mode 100644 index 00000000..34645af6 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Presets/Noise/6D Shake.asset.meta" @@ -0,0 +1,10 @@ +fileFormatVersion: 2 +guid: 69ce8388f6785dd4c8c39915efece2f4 +timeCreated: 1518036470 +licenseType: Pro +NativeFormatImporter: + externalObjects: {} + mainObjectFileID: 11400000 + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Presets/Noise/Handheld_normal_extreme.asset" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Presets/Noise/Handheld_normal_extreme.asset" new file mode 100644 index 00000000..932f84a8 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Presets/Noise/Handheld_normal_extreme.asset" @@ -0,0 +1,42 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!114 &11400000 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_PrefabParentObject: {fileID: 0} + m_PrefabInternal: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: b7f59e54f2bfd184b9dd451a678d089b, type: 3} + m_Name: Handheld_normal_extreme + m_EditorClassIdentifier: + m_Position: [] + m_Orientation: + - X: + Amplitude: 15 + Frequency: 0.2 + Y: + Amplitude: 7 + Frequency: 0.25 + Z: + Amplitude: 0 + Frequency: 0 + - X: + Amplitude: 5 + Frequency: 0.9 + Y: + Amplitude: 3 + Frequency: 1 + Z: + Amplitude: 0 + Frequency: 0 + - X: + Amplitude: 2 + Frequency: 2 + Y: + Amplitude: 1 + Frequency: 0 + Z: + Amplitude: 0 + Frequency: 0 diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Presets/Noise/Handheld_normal_extreme.asset.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Presets/Noise/Handheld_normal_extreme.asset.meta" new file mode 100644 index 00000000..5514dbae --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Presets/Noise/Handheld_normal_extreme.asset.meta" @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 20a705aea2d80e0478fb89b6f43d8530 +timeCreated: 1465497741 +licenseType: Pro +NativeFormatImporter: + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Presets/Noise/Handheld_normal_mild.asset" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Presets/Noise/Handheld_normal_mild.asset" new file mode 100644 index 00000000..0fcf853f --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Presets/Noise/Handheld_normal_mild.asset" @@ -0,0 +1,42 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!114 &11400000 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_PrefabParentObject: {fileID: 0} + m_PrefabInternal: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: b7f59e54f2bfd184b9dd451a678d089b, type: 3} + m_Name: Handheld_normal_mild + m_EditorClassIdentifier: + m_Position: [] + m_Orientation: + - X: + Amplitude: 7 + Frequency: 0.15 + Y: + Amplitude: 5 + Frequency: 0.1 + Z: + Amplitude: 0 + Frequency: 0 + - X: + Amplitude: 4 + Frequency: 0.8 + Y: + Amplitude: 2 + Frequency: 0.75 + Z: + Amplitude: 0 + Frequency: 0 + - X: + Amplitude: 1 + Frequency: 1.2 + Y: + Amplitude: 0.8 + Frequency: 1.5 + Z: + Amplitude: 0 + Frequency: 0 diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Presets/Noise/Handheld_normal_mild.asset.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Presets/Noise/Handheld_normal_mild.asset.meta" new file mode 100644 index 00000000..b0912fec --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Presets/Noise/Handheld_normal_mild.asset.meta" @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 46965f9cbaf525742a6da4c2172a99cd +timeCreated: 1461691296 +licenseType: Pro +NativeFormatImporter: + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Presets/Noise/Handheld_normal_strong.asset" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Presets/Noise/Handheld_normal_strong.asset" new file mode 100644 index 00000000..2314ece7 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Presets/Noise/Handheld_normal_strong.asset" @@ -0,0 +1,42 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!114 &11400000 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_PrefabParentObject: {fileID: 0} + m_PrefabInternal: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: b7f59e54f2bfd184b9dd451a678d089b, type: 3} + m_Name: Handheld_normal_strong + m_EditorClassIdentifier: + m_Position: [] + m_Orientation: + - X: + Amplitude: 10 + Frequency: .400000006 + Y: + Amplitude: 10 + Frequency: .0599999987 + Z: + Amplitude: 0 + Frequency: 0 + - X: + Amplitude: 5 + Frequency: 1.44000006 + Y: + Amplitude: 3 + Frequency: .730000019 + Z: + Amplitude: 0 + Frequency: 0 + - X: + Amplitude: 3 + Frequency: 2.49000001 + Y: + Amplitude: 1 + Frequency: 2 + Z: + Amplitude: 0 + Frequency: 0 diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Presets/Noise/Handheld_normal_strong.asset.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Presets/Noise/Handheld_normal_strong.asset.meta" new file mode 100644 index 00000000..22954aff --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Presets/Noise/Handheld_normal_strong.asset.meta" @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: b241f91b9ccf8ff489abf204b30d3112 +timeCreated: 1461691296 +licenseType: Pro +NativeFormatImporter: + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Presets/Noise/Handheld_tele_mild.asset" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Presets/Noise/Handheld_tele_mild.asset" new file mode 100644 index 00000000..cb71840b --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Presets/Noise/Handheld_tele_mild.asset" @@ -0,0 +1,42 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!114 &11400000 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_PrefabParentObject: {fileID: 0} + m_PrefabInternal: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: b7f59e54f2bfd184b9dd451a678d089b, type: 3} + m_Name: Handheld_tele_mild + m_EditorClassIdentifier: + m_Position: [] + m_Orientation: + - X: + Amplitude: 4 + Frequency: .200000003 + Y: + Amplitude: 2 + Frequency: .150000006 + Z: + Amplitude: 0 + Frequency: 0 + - X: + Amplitude: 2 + Frequency: .400000006 + Y: + Amplitude: 2 + Frequency: .5 + Z: + Amplitude: 0 + Frequency: 0 + - X: + Amplitude: 1 + Frequency: .699999988 + Y: + Amplitude: 1 + Frequency: .600000024 + Z: + Amplitude: 0 + Frequency: 0 diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Presets/Noise/Handheld_tele_mild.asset.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Presets/Noise/Handheld_tele_mild.asset.meta" new file mode 100644 index 00000000..e446851f --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Presets/Noise/Handheld_tele_mild.asset.meta" @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: a3dacaec0287d7444b4bd276816e1666 +timeCreated: 1461691921 +licenseType: Pro +NativeFormatImporter: + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Presets/Noise/Handheld_tele_strong.asset" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Presets/Noise/Handheld_tele_strong.asset" new file mode 100644 index 00000000..f17cfba5 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Presets/Noise/Handheld_tele_strong.asset" @@ -0,0 +1,42 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!114 &11400000 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_PrefabParentObject: {fileID: 0} + m_PrefabInternal: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: b7f59e54f2bfd184b9dd451a678d089b, type: 3} + m_Name: Handheld_tele_strong + m_EditorClassIdentifier: + m_Position: [] + m_Orientation: + - X: + Amplitude: 6.19000006 + Frequency: .389999986 + Y: + Amplitude: 4 + Frequency: .150000006 + Z: + Amplitude: 1 + Frequency: .100000001 + - X: + Amplitude: 1.84000003 + Frequency: 1.75 + Y: + Amplitude: .5 + Frequency: .899999976 + Z: + Amplitude: 0 + Frequency: 0 + - X: + Amplitude: 2.29999995 + Frequency: 2 + Y: + Amplitude: .5 + Frequency: 1.39999998 + Z: + Amplitude: 0 + Frequency: 0 diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Presets/Noise/Handheld_tele_strong.asset.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Presets/Noise/Handheld_tele_strong.asset.meta" new file mode 100644 index 00000000..bf9c64e1 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Presets/Noise/Handheld_tele_strong.asset.meta" @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 554b0ed52734c154eab51f6cedd3a7d7 +timeCreated: 1461691296 +licenseType: Pro +NativeFormatImporter: + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Presets/Noise/Handheld_wideangle_mild.asset" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Presets/Noise/Handheld_wideangle_mild.asset" new file mode 100644 index 00000000..8202fa25 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Presets/Noise/Handheld_wideangle_mild.asset" @@ -0,0 +1,42 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!114 &11400000 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_PrefabParentObject: {fileID: 0} + m_PrefabInternal: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: b7f59e54f2bfd184b9dd451a678d089b, type: 3} + m_Name: Handheld_wideangle_mild + m_EditorClassIdentifier: + m_Position: [] + m_Orientation: + - X: + Amplitude: 12 + Frequency: .150000006 + Y: + Amplitude: 5 + Frequency: .100000001 + Z: + Amplitude: 0 + Frequency: 0 + - X: + Amplitude: 5 + Frequency: .600000024 + Y: + Amplitude: 4 + Frequency: .449999988 + Z: + Amplitude: 0 + Frequency: 0 + - X: + Amplitude: 1 + Frequency: 1.5 + Y: + Amplitude: 1 + Frequency: 1.20000005 + Z: + Amplitude: 0 + Frequency: 0 diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Presets/Noise/Handheld_wideangle_mild.asset.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Presets/Noise/Handheld_wideangle_mild.asset.meta" new file mode 100644 index 00000000..13e433f9 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Presets/Noise/Handheld_wideangle_mild.asset.meta" @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 8608ec81ee27a15488d33f9dad239e91 +timeCreated: 1461691111 +licenseType: Pro +NativeFormatImporter: + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Presets/Noise/Handheld_wideangle_strong.asset" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Presets/Noise/Handheld_wideangle_strong.asset" new file mode 100644 index 00000000..eb08b68f --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Presets/Noise/Handheld_wideangle_strong.asset" @@ -0,0 +1,42 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!114 &11400000 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_PrefabParentObject: {fileID: 0} + m_PrefabInternal: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: b7f59e54f2bfd184b9dd451a678d089b, type: 3} + m_Name: Handheld_wideangle_strong + m_EditorClassIdentifier: + m_Position: [] + m_Orientation: + - X: + Amplitude: 17.4599991 + Frequency: .5 + Y: + Amplitude: 5 + Frequency: .25 + Z: + Amplitude: 0 + Frequency: .100000001 + - X: + Amplitude: 12.4700003 + Frequency: .939999998 + Y: + Amplitude: 4 + Frequency: .5 + Z: + Amplitude: 1 + Frequency: .400000006 + - X: + Amplitude: 4 + Frequency: 1.20000005 + Y: + Amplitude: 2 + Frequency: 1.29999995 + Z: + Amplitude: 0 + Frequency: 0 diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Presets/Noise/Handheld_wideangle_strong.asset.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Presets/Noise/Handheld_wideangle_strong.asset.meta" new file mode 100644 index 00000000..d80c9de7 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Presets/Noise/Handheld_wideangle_strong.asset.meta" @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 20e46be82478fa24b90f748044c06b4b +timeCreated: 1461691111 +licenseType: Pro +NativeFormatImporter: + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/README.md" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/README.md" new file mode 100644 index 00000000..40b6a950 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/README.md" @@ -0,0 +1,35 @@ +# Cinemachine + +## What is Cinemachine? +Cinemachine is a suite of ‘smart’ procedural modules which allow you to define the shot and +they’ll dynamically follow your direction. Set up shots which track and compose motion in +realtime, like AI camera operators. The procedural nature makes them bug-resistant as they +always work to make the shot based on your direction. They’re great for gameplay, but they’re +also amazingly fast for cutscenes. Change an animation, a vehicle speed, ground terrain - +whatever - and Cinemachine will dynamically make the shot. You can use really telephoto +lenses and not have to update the cutscene if things change. + +## Setup +Cinemachine works out of the box with no dependencies other than Unity itself. +Just install it and you're ready to go. It's pure c-sharp, fully open-source, +and the public API has complete XML documentation built right in. + +## History +Cinemachine has been in development over a number of years across multiple projects. We’ve +been designing camera systems for almost 20 years and have shipped millions of AAA titles +across numerous genres. The Cinemachine team has an award winning cinematographer and +a senior engineer with heavy math skills. Also, we love this stuff to bits. + +## Mission +Our mission with Cinemachine is to build an entirely unifed camera system bridging +gameplay, cutscenes, from fully procedural cameras to entirely canned sequences and +everything in between. + +## Example Scenes +Please have a look at our example scenes. They are shipped with the package and can be imported +via the Cinemachine menu. + +## Forums +We have a busy discussion area on the forums. +https://forum.unity3d.com/forums/cinemachine.136/ + diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/README.md.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/README.md.meta" new file mode 100644 index 00000000..4a6f937b --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/README.md.meta" @@ -0,0 +1,7 @@ +fileFormatVersion: 2 +guid: 7e37f2a64474b3948b3a169780e54779 +TextScriptImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Runtime.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Runtime.meta" new file mode 100644 index 00000000..9c36c5a1 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Runtime.meta" @@ -0,0 +1,9 @@ +fileFormatVersion: 2 +guid: e8413e2c94231d544b120f2b71d432e2 +folderAsset: yes +timeCreated: 1489096338 +licenseType: Pro +DefaultImporter: + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Runtime/AssemblyInfo.cs" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Runtime/AssemblyInfo.cs" new file mode 100644 index 00000000..7bdb27c1 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Runtime/AssemblyInfo.cs" @@ -0,0 +1,2 @@ +using System.Runtime.CompilerServices; +[assembly: InternalsVisibleTo("com.unity.cinemachine.editor")] \ No newline at end of file diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Runtime/AssemblyInfo.cs.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Runtime/AssemblyInfo.cs.meta" new file mode 100644 index 00000000..9f315617 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Runtime/AssemblyInfo.cs.meta" @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: c64ec1fa74cb7174da4b9f561a7dffe1 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Runtime/Behaviours.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Runtime/Behaviours.meta" new file mode 100644 index 00000000..cd02ad9d --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Runtime/Behaviours.meta" @@ -0,0 +1,9 @@ +fileFormatVersion: 2 +guid: fd10c4a322c950342a9d03a14ae879b7 +folderAsset: yes +timeCreated: 1489096338 +licenseType: Pro +DefaultImporter: + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Runtime/Behaviours/CinemachineBlendListCamera.cs" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Runtime/Behaviours/CinemachineBlendListCamera.cs" new file mode 100644 index 00000000..207e5ca1 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Runtime/Behaviours/CinemachineBlendListCamera.cs" @@ -0,0 +1,343 @@ +using Cinemachine.Utility; +using System; +using System.Collections.Generic; +using UnityEngine; + +namespace Cinemachine +{ + /// + /// This is a virtual camera "manager" that owns and manages a collection + /// of child Virtual Cameras. When the camera goes live, these child vcams + /// are enabled, one after another, holding each camera for a designated time. + /// Blends between cameras are specified. + /// The last camera is held indefinitely. + /// + [DocumentationSorting(DocumentationSortingAttribute.Level.UserRef)] + [DisallowMultipleComponent] +#if UNITY_2018_3_OR_NEWER + [ExecuteAlways] +#else + [ExecuteInEditMode] +#endif + [AddComponentMenu("Cinemachine/CinemachineBlendListCamera")] + public class CinemachineBlendListCamera : CinemachineVirtualCameraBase + { + /// Default object for the camera children to look at (the aim target), if not specified in a child rig. May be empty + [Tooltip("Default object for the camera children to look at (the aim target), if not specified in a child camera. May be empty if all of the children define targets of their own.")] + [NoSaveDuringPlay] + public Transform m_LookAt = null; + + /// Default object for the camera children wants to move with (the body target), if not specified in a child rig. May be empty + [Tooltip("Default object for the camera children wants to move with (the body target), if not specified in a child camera. May be empty if all of the children define targets of their own.")] + [NoSaveDuringPlay] + public Transform m_Follow = null; + + /// When enabled, the current camera and blend will be indicated in the game window, for debugging + [Tooltip("When enabled, the current child camera and blend will be indicated in the game window, for debugging")] + public bool m_ShowDebugText = false; + + /// When enabled, the child vcams will cycle indefinitely instead of just stopping at the last onesummary> + [Tooltip("When enabled, the child vcams will cycle indefinitely instead of just stopping at the last one")] + public bool m_Loop = false; + + /// Internal API for the editor. Do not use this field + [SerializeField][HideInInspector][NoSaveDuringPlay] + internal CinemachineVirtualCameraBase[] m_ChildCameras = null; + + /// This represents a single entry in the instrunction list of the BlendListCamera. + [Serializable] + public struct Instruction + { + /// The virtual camera to activate when this instruction becomes active + [Tooltip("The virtual camera to activate when this instruction becomes active")] + public CinemachineVirtualCameraBase m_VirtualCamera; + /// How long to wait (in seconds) before activating the next virtual camera in the list (if any) + [Tooltip("How long to wait (in seconds) before activating the next virtual camera in the list (if any)")] + public float m_Hold; + /// How to blend to the next virtual camera in the list (if any) + [CinemachineBlendDefinitionProperty] + [Tooltip("How to blend to the next virtual camera in the list (if any)")] + public CinemachineBlendDefinition m_Blend; + }; + + /// The set of instructions associating virtual cameras with states. + /// The set of instructions for enabling child cameras + [Tooltip("The set of instructions for enabling child cameras.")] + public Instruction[] m_Instructions; + + /// Gets a brief debug description of this virtual camera, for use when displayiong debug info + public override string Description + { + get + { + // Show the active camera and blend + if (mActiveBlend != null) + return mActiveBlend.Description; + + ICinemachineCamera vcam = LiveChild; + if (vcam == null) + return "(none)"; + var sb = CinemachineDebug.SBFromPool(); + sb.Append("["); sb.Append(vcam.Name); sb.Append("]"); + string text = sb.ToString(); + CinemachineDebug.ReturnToPool(sb); + return text; + } + } + + /// Get the current "best" child virtual camera, that would be chosen + /// if the State Driven Camera were active. + public ICinemachineCamera LiveChild { set; get; } + + /// Check whether the vcam a live child of this camera. + /// The Virtual Camera to check + /// True if the vcam is currently actively influencing the state of this vcam + public override bool IsLiveChild(ICinemachineCamera vcam, bool dominantChildOnly = false) + { + return vcam == LiveChild || (mActiveBlend != null && mActiveBlend.Uses(vcam)); + } + + /// The State of the current live child + public override CameraState State { get { return m_State; } } + + /// Get the current LookAt target. Returns parent's LookAt if parent + /// is non-null and no specific LookAt defined for this camera + override public Transform LookAt + { + get { return ResolveLookAt(m_LookAt); } + set { m_LookAt = value; } + } + + /// Get the current Follow target. Returns parent's Follow if parent + /// is non-null and no specific Follow defined for this camera + override public Transform Follow + { + get { return ResolveFollow(m_Follow); } + set { m_Follow = value; } + } + + /// This is called to notify the vcam that a target got warped, + /// so that the vcam can update its internal state to make the camera + /// also warp seamlessy. + /// The object that was warped + /// The amount the target's position changed + public override void OnTargetObjectWarped(Transform target, Vector3 positionDelta) + { + UpdateListOfChildren(); + foreach (var vcam in m_ChildCameras) + vcam.OnTargetObjectWarped(target, positionDelta); + base.OnTargetObjectWarped(target, positionDelta); + } + + /// Notification that this virtual camera is going live. + /// The camera being deactivated. May be null. + /// Default world Up, set by the CinemachineBrain + /// Delta time for time-based effects (ignore if less than or equal to 0) + public override void OnTransitionFromCamera( + ICinemachineCamera fromCam, Vector3 worldUp, float deltaTime) + { + base.OnTransitionFromCamera(fromCam, worldUp, deltaTime); + mActivationTime = Time.time; + mCurrentInstruction = 0; + LiveChild = null; + mActiveBlend = null; + TransitioningFrom = fromCam; + InternalUpdateCameraState(worldUp, deltaTime); + } + + ICinemachineCamera TransitioningFrom { get; set; } + + /// Called by CinemachineCore at designated update time + /// so the vcam can position itself and track its targets. This implementation + /// updates all the children, chooses the best one, and implements any required blending. + /// Default world Up, set by the CinemachineBrain + /// Delta time for time-based effects (ignore if less than or equal to 0) + public override void InternalUpdateCameraState(Vector3 worldUp, float deltaTime) + { + if (!PreviousStateIsValid) + deltaTime = -1; + + UpdateListOfChildren(); + AdvanceCurrentInstruction(deltaTime); + + CinemachineVirtualCameraBase best = null; + if (mCurrentInstruction >= 0 && mCurrentInstruction < m_Instructions.Length) + best = m_Instructions[mCurrentInstruction].m_VirtualCamera; + + if (best != null) + { + if (!best.gameObject.activeInHierarchy) + { + best.gameObject.SetActive(true); + best.UpdateCameraState(worldUp, deltaTime); + } + ICinemachineCamera previousCam = LiveChild; + LiveChild = best; + + // Are we transitioning cameras? + if (previousCam != LiveChild && LiveChild != null) + { + // Notify incoming camera of transition + LiveChild.OnTransitionFromCamera(previousCam, worldUp, deltaTime); + + // Generate Camera Activation event in the brain if live + CinemachineCore.Instance.GenerateCameraActivationEvent(LiveChild, previousCam); + + if (previousCam != null) + { + // Create a blend (will be null if a cut) + mActiveBlend = CreateBlend( + previousCam, LiveChild, + m_Instructions[mCurrentInstruction].m_Blend, + mActiveBlend); + + // If cutting, generate a camera cut event if live + if (mActiveBlend == null || !mActiveBlend.Uses(previousCam)) + CinemachineCore.Instance.GenerateCameraCutEvent(LiveChild); + } + } + } + + // Advance the current blend (if any) + if (mActiveBlend != null) + { + mActiveBlend.TimeInBlend += (deltaTime >= 0) ? deltaTime : mActiveBlend.Duration; + if (mActiveBlend.IsComplete) + mActiveBlend = null; + } + + if (mActiveBlend != null) + { + mActiveBlend.UpdateCameraState(worldUp, deltaTime); + m_State = mActiveBlend.State; + } + else if (LiveChild != null) + { + if (TransitioningFrom != null) + LiveChild.OnTransitionFromCamera(TransitioningFrom, worldUp, deltaTime); + m_State = LiveChild.State; + } + TransitioningFrom = null; + InvokePostPipelineStageCallback( + this, CinemachineCore.Stage.Finalize, ref m_State, deltaTime); + PreviousStateIsValid = true; + } + + /// Makes sure the internal child cache is up to date + protected override void OnEnable() + { + base.OnEnable(); + InvalidateListOfChildren(); + LiveChild = null; + mActiveBlend = null; + CinemachineDebug.OnGUIHandlers -= OnGuiHandler; + CinemachineDebug.OnGUIHandlers += OnGuiHandler; + } + + protected override void OnDisable() + { + base.OnDisable(); + CinemachineDebug.OnGUIHandlers -= OnGuiHandler; + } + + /// Makes sure the internal child cache is up to date + void OnTransformChildrenChanged() + { + InvalidateListOfChildren(); + } + + /// Will only be called if Unity Editor - never in build + private void OnGuiHandler() + { + if (!m_ShowDebugText) + CinemachineDebug.ReleaseScreenPos(this); + else + { + var sb = CinemachineDebug.SBFromPool(); + sb.Append(Name); sb.Append(": "); sb.Append(Description); + string text = sb.ToString(); + Rect r = CinemachineDebug.GetScreenPos(this, text, GUI.skin.box); + GUI.Label(r, text, GUI.skin.box); + CinemachineDebug.ReturnToPool(sb); + } + } + + CameraState m_State = CameraState.Default; + + /// The list of child cameras. These are just the immediate children in the hierarchy. + public CinemachineVirtualCameraBase[] ChildCameras { get { UpdateListOfChildren(); return m_ChildCameras; }} + + /// Is there a blend in progress? + public bool IsBlending { get { return mActiveBlend != null; } } + + /// The time at which the current instruction went live + float mActivationTime = -1; + int mCurrentInstruction = 0; + private CinemachineBlend mActiveBlend = null; + + void InvalidateListOfChildren() { m_ChildCameras = null; LiveChild = null; } + + void UpdateListOfChildren() + { + if (m_ChildCameras != null) + return; + List list = new List(); + CinemachineVirtualCameraBase[] kids = GetComponentsInChildren(true); + foreach (CinemachineVirtualCameraBase k in kids) + if (k.transform.parent == transform) + list.Add(k); + m_ChildCameras = list.ToArray(); + ValidateInstructions(); + } + + /// Internal API for the inspector editor. + /// // GML todo: make this private, part of UpdateListOfChildren() + internal void ValidateInstructions() + { + if (m_Instructions == null) + m_Instructions = new Instruction[0]; + for (int i = 0; i < m_Instructions.Length; ++i) + { + if (m_Instructions[i].m_VirtualCamera != null + && m_Instructions[i].m_VirtualCamera.transform.parent != transform) + { + m_Instructions[i].m_VirtualCamera = null; + } + } + mActiveBlend = null; + } + + private void AdvanceCurrentInstruction(float deltaTime) + { + if (m_ChildCameras == null || m_ChildCameras.Length == 0 + || mActivationTime < 0 || m_Instructions.Length == 0) + { + mActivationTime = -1; + mCurrentInstruction = -1; + mActiveBlend = null; + return; + } + + float now = Time.time; + if (mCurrentInstruction < 0 || deltaTime < 0) + { + mActivationTime = now; + mCurrentInstruction = 0; + } + if (mCurrentInstruction > m_Instructions.Length - 1) + { + mActivationTime = now; + mCurrentInstruction = m_Instructions.Length - 1; + } + + var minHold = mCurrentInstruction < m_Instructions.Length - 1 || m_Loop ? 0 : float.MaxValue; + if (now - mActivationTime > Mathf.Max(minHold, m_Instructions[mCurrentInstruction].m_Hold)) + { + mActivationTime = now; + ++mCurrentInstruction; + if (m_Loop && mCurrentInstruction == m_Instructions.Length) + mCurrentInstruction = 0; + } + } + } +} diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Runtime/Behaviours/CinemachineBlendListCamera.cs.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Runtime/Behaviours/CinemachineBlendListCamera.cs.meta" new file mode 100644 index 00000000..ecb63d32 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Runtime/Behaviours/CinemachineBlendListCamera.cs.meta" @@ -0,0 +1,13 @@ +fileFormatVersion: 2 +guid: 53258ad9ad6e71e48bb8643c9522112e +timeCreated: 1509546373 +licenseType: Pro +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {fileID: 2800000, guid: 5f2a108eb023faf43a809979fd3d38f2, type: 3} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Runtime/Behaviours/CinemachineBrain.cs" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Runtime/Behaviours/CinemachineBrain.cs" new file mode 100644 index 00000000..e1dbd869 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Runtime/Behaviours/CinemachineBrain.cs" @@ -0,0 +1,724 @@ +using Cinemachine.Utility; +using System; +using System.Collections; +using System.Collections.Generic; +using UnityEngine; +using UnityEngine.Events; + +namespace Cinemachine +{ + /// + /// CinemachineBrain is the link between the Unity Camera and the Cinemachine Virtual + /// Cameras in the scene. It monitors the priority stack to choose the current + /// Virtual Camera, and blend with another if necessary. Finally and most importantly, + /// it applies the Virtual Camera state to the attached Unity Camera. + /// + /// The CinemachineBrain is also the place where rules for blending between virtual cameras + /// are defined. Camera blending is an interpolation over time of one virtual camera + /// position and state to another. If you think of virtual cameras as cameramen, then + /// blending is a little like one cameraman smoothly passing the camera to another cameraman. + /// You can specify the time over which to blend, as well as the blend curve shape. + /// Note that a camera cut is just a zero-time blend. + /// + [DocumentationSorting(DocumentationSortingAttribute.Level.UserRef)] +// [RequireComponent(typeof(Camera))] // strange but true: we can live without it + [DisallowMultipleComponent] +#if UNITY_2018_3_OR_NEWER + [ExecuteAlways] +#else + [ExecuteInEditMode] +#endif + [AddComponentMenu("Cinemachine/CinemachineBrain")] + [SaveDuringPlay] + public class CinemachineBrain : MonoBehaviour + { + /// + /// When enabled, the current camera and blend will be indicated in the game window, for debugging. + /// + [Tooltip("When enabled, the current camera and blend will be indicated in the game window, for debugging")] + public bool m_ShowDebugText = false; + + /// + /// When enabled, shows the camera's frustum in the scene view. + /// + [Tooltip("When enabled, the camera's frustum will be shown at all times in the scene view")] + public bool m_ShowCameraFrustum = true; + + /// + /// When enabled, the cameras will always respond in real-time to user input and damping, + /// even if the game is running in slow motion + /// + [Tooltip("When enabled, the cameras will always respond in real-time to user input and damping, even if the game is running in slow motion")] + public bool m_IgnoreTimeScale = false; + + /// + /// If set, this object's Y axis will define the worldspace Up vector for all the + /// virtual cameras. This is useful in top-down game environments. If not set, Up is worldspace Y. + /// + [Tooltip("If set, this object's Y axis will define the worldspace Up vector for all the virtual cameras. This is useful for instance in top-down game environments. If not set, Up is worldspace Y. Setting this appropriately is important, because Virtual Cameras don't like looking straight up or straight down.")] + public Transform m_WorldUpOverride; + + /// This enum defines the options available for the update method. + [DocumentationSorting(DocumentationSortingAttribute.Level.UserRef)] + public enum UpdateMethod + { + /// Virtual cameras are updated in sync with the Physics module, in FixedUpdate + FixedUpdate, + /// Virtual cameras are updated in MonoBehaviour LateUpdate. + LateUpdate, + /// Virtual cameras are updated according to how the target is updated. + SmartUpdate + }; + + /// Depending on how the target objects are animated, adjust the update method to + /// minimize the potential jitter. Use FixedUpdate if all your targets are animated with for RigidBody animation. + /// SmartUpdate will choose the best method for each virtual camera, depending + /// on how the target is animated. + [Tooltip("Use FixedUpdate if all your targets are animated during FixedUpdate (e.g. RigidBodies), LateUpdate if all your targets are animated during the normal Update loop, and SmartUpdate if you want Cinemachine to do the appropriate thing on a per-target basis. SmartUpdate is the recommended setting")] + public UpdateMethod m_UpdateMethod = UpdateMethod.SmartUpdate; + + /// + /// The blend which is used if you don't explicitly define a blend between two Virtual Cameras. + /// + [CinemachineBlendDefinitionProperty] + [Tooltip("The blend that is used in cases where you haven't explicitly defined a blend between two Virtual Cameras")] + public CinemachineBlendDefinition m_DefaultBlend + = new CinemachineBlendDefinition(CinemachineBlendDefinition.Style.EaseInOut, 2f); + + /// + /// This is the asset which contains custom settings for specific blends. + /// + [Tooltip("This is the asset that contains custom settings for blends between specific virtual cameras in your scene")] + public CinemachineBlenderSettings m_CustomBlends = null; + + /// + /// Get the Unity Camera that is attached to this GameObject. This is the camera + /// that will be controlled by the brain. + /// + public Camera OutputCamera + { + get + { + if (m_OutputCamera == null && !Application.isPlaying) + m_OutputCamera = GetComponent(); + return m_OutputCamera; + } + } + private Camera m_OutputCamera = null; // never use directly - use accessor + + /// Event with a CinemachineBrain parameter + [Serializable] public class BrainEvent : UnityEvent {} + + /// Event with a ICinemachineCamera parameter + [Serializable] public class VcamActivatedEvent : UnityEvent {} + + /// This event will fire whenever a virtual camera goes live and there is no blend + [Tooltip("This event will fire whenever a virtual camera goes live and there is no blend")] + public BrainEvent m_CameraCutEvent = new BrainEvent(); + + /// This event will fire whenever a virtual camera goes live. If a blend is involved, + /// then the event will fire on the first frame of the blend + [Tooltip("This event will fire whenever a virtual camera goes live. If a blend is involved, then the event will fire on the first frame of the blend.")] + public VcamActivatedEvent m_CameraActivatedEvent = new VcamActivatedEvent(); + + /// + /// API for the Unity Editor. + /// Show this camera no matter what. This is static, and so affects all Cinemachine brains. + /// + public static ICinemachineCamera SoloCamera + { + get { return mSoloCamera; } + set + { + if (value != null && !CinemachineCore.Instance.IsLive(value)) + value.OnTransitionFromCamera(null, Vector3.up, Time.deltaTime); + mSoloCamera = value; + } + } + + /// API for the Unity Editor. + /// Color used to indicate that a camera is in Solo mode. + public static Color GetSoloGUIColor() { return Color.Lerp(Color.red, Color.yellow, 0.8f); } + + /// Get the default world up for the virtual cameras. + public Vector3 DefaultWorldUp + { get { return (m_WorldUpOverride != null) ? m_WorldUpOverride.transform.up : Vector3.up; } } + + private static ICinemachineCamera mSoloCamera; + private Coroutine mPhysicsCoroutine; + + private void OnEnable() + { + // Make sure there is a first stack frame + if (mFrameStack.Count == 0) + mFrameStack.Add(new BrainFrame()); + + m_OutputCamera = GetComponent(); + CinemachineCore.Instance.AddActiveBrain(this); + CinemachineDebug.OnGUIHandlers -= OnGuiHandler; + CinemachineDebug.OnGUIHandlers += OnGuiHandler; + + // We check in after the physics system has had a chance to move things + mPhysicsCoroutine = StartCoroutine(AfterPhysics()); + } + + private void OnDisable() + { + CinemachineDebug.OnGUIHandlers -= OnGuiHandler; + CinemachineCore.Instance.RemoveActiveBrain(this); + mFrameStack.Clear(); + StopCoroutine(mPhysicsCoroutine); + } + + private void Start() + { + UpdateVirtualCameras(CinemachineCore.UpdateFilter.Late, -1f); + } + + private void OnGuiHandler() + { + if (!m_ShowDebugText) + CinemachineDebug.ReleaseScreenPos(this); + else + { + // Show the active camera and blend + var sb = CinemachineDebug.SBFromPool(); + Color color = GUI.color; + sb.Length = 0; + sb.Append("CM "); + sb.Append(gameObject.name); + sb.Append(": "); + if (SoloCamera != null) + { + sb.Append("SOLO "); + GUI.color = GetSoloGUIColor(); + } + + if (IsBlending) + sb.Append(ActiveBlend.Description); + else + { + ICinemachineCamera vcam = ActiveVirtualCamera; + if (vcam == null) + sb.Append("(none)"); + else + { + sb.Append("["); + sb.Append(vcam.Name); + sb.Append("]"); + } + } + string text = sb.ToString(); + Rect r = CinemachineDebug.GetScreenPos(this, text, GUI.skin.box); + GUI.Label(r, text, GUI.skin.box); + GUI.color = color; + CinemachineDebug.ReturnToPool(sb); + } + } + +#if UNITY_EDITOR + private void OnGUI() + { + if (CinemachineDebug.OnGUIHandlers != null) + CinemachineDebug.OnGUIHandlers(); + } +#endif + + WaitForFixedUpdate mWaitForFixedUpdate = new WaitForFixedUpdate(); + private IEnumerator AfterPhysics() + { + while (true) + { + // FixedUpdate can be called multiple times per frame + yield return mWaitForFixedUpdate; + if (m_UpdateMethod != UpdateMethod.LateUpdate) + { + CinemachineCore.UpdateFilter filter = CinemachineCore.UpdateFilter.Fixed; + if (m_UpdateMethod == UpdateMethod.SmartUpdate) + { + // Track the targets + UpdateTracker.OnUpdate(UpdateTracker.UpdateClock.Fixed); + filter = CinemachineCore.UpdateFilter.SmartFixed; + } + UpdateVirtualCameras(filter, GetEffectiveDeltaTime(true)); + } + } + } + + private void LateUpdate() + { + float deltaTime = GetEffectiveDeltaTime(false); + UpdateFrame0(deltaTime); + UpdateCurrentLiveCameras(); + + if (m_UpdateMethod == UpdateMethod.FixedUpdate) + { + // Special handling for fixed update: cameras that have been enabled + // since the last physics frame must be updated now + CinemachineCore.Instance.CurrentUpdateFilter = CinemachineCore.UpdateFilter.Fixed; + if (SoloCamera != null) + SoloCamera.UpdateCameraState(DefaultWorldUp, deltaTime); + mCurrentLiveCameras.UpdateCameraState(DefaultWorldUp, deltaTime); + } + else + { + CinemachineCore.UpdateFilter filter = CinemachineCore.UpdateFilter.Late; + if (m_UpdateMethod == UpdateMethod.SmartUpdate) + { + // Track the targets + UpdateTracker.OnUpdate(UpdateTracker.UpdateClock.Late); + filter = CinemachineCore.UpdateFilter.SmartLate; + } + UpdateVirtualCameras(filter, deltaTime); + } + // Choose the active vcam and apply it to the Unity camera + ProcessActiveCamera(deltaTime); + } + +#if UNITY_EDITOR + /// This is only needed in editor mode to force timeline to call OnGUI while + /// timeline is up and the game is not running, in order to allow dragging + /// the composer guide in the game view. + private void OnPreCull() + { + if (!Application.isPlaying) + { + // Note: this call will cause any screen canvas attached to the camera + // to be painted one frame out of sync. It will only happen in the editor when not playing. + ProcessActiveCamera(GetEffectiveDeltaTime(false)); + } + } +#endif + + private float GetEffectiveDeltaTime(bool fixedDelta) + { + if (SoloCamera != null) + return Time.unscaledDeltaTime; + + if (!Application.isPlaying) + { + for (int i = mFrameStack.Count - 1; i > 0; --i) + { + var frame = mFrameStack[i]; + if (frame.Active) + return frame.TimeOverrideExpired ? -1 : frame.deltaTimeOverride; + } + return -1; + } + if (m_IgnoreTimeScale) + return fixedDelta ? Time.fixedDeltaTime : Time.unscaledDeltaTime; + return fixedDelta ? Time.fixedDeltaTime : Time.deltaTime; + } + + private void UpdateVirtualCameras(CinemachineCore.UpdateFilter updateFilter, float deltaTime) + { + // We always update all active virtual cameras + CinemachineCore.Instance.CurrentUpdateFilter = updateFilter; + Camera camera = OutputCamera; + CinemachineCore.Instance.UpdateAllActiveVirtualCameras( + camera == null ? -1 : camera.cullingMask, DefaultWorldUp, deltaTime); + + // Make sure all live cameras get updated, in case some of them are deactivated + if (SoloCamera != null) + SoloCamera.UpdateCameraState(DefaultWorldUp, deltaTime); + mCurrentLiveCameras.UpdateCameraState(DefaultWorldUp, deltaTime); + + // Restore the filter for general use + updateFilter = CinemachineCore.UpdateFilter.Late; + if (Application.isPlaying) + { + if (m_UpdateMethod == UpdateMethod.SmartUpdate) + updateFilter |= CinemachineCore.UpdateFilter.Smart; + else if (m_UpdateMethod == UpdateMethod.FixedUpdate) + updateFilter = CinemachineCore.UpdateFilter.Fixed; + } + CinemachineCore.Instance.CurrentUpdateFilter = updateFilter; + } + + /// + /// Get the current active virtual camera. + /// + public ICinemachineCamera ActiveVirtualCamera + { + get + { + if (SoloCamera != null) + return SoloCamera; + return DeepCamBFromBlend(mCurrentLiveCameras); + } + } + + static ICinemachineCamera DeepCamBFromBlend(CinemachineBlend blend) + { + ICinemachineCamera vcam = blend.CamB; + while (vcam != null) + { + if (!vcam.IsValid) + return null; // deleted! + BlendSourceVirtualCamera bs = vcam as BlendSourceVirtualCamera; + if (bs == null) + break; + vcam = bs.Blend.CamB; + } + return vcam; + } + + /// + /// Is there a blend in progress? + /// + public bool IsBlending { get { return ActiveBlend != null; } } + + /// + /// Get the current blend in progress. Returns null if none. + /// + public CinemachineBlend ActiveBlend + { + get + { + if (SoloCamera != null) + return null; + if (mCurrentLiveCameras.CamA == null || mCurrentLiveCameras.IsComplete) + return null; + return mCurrentLiveCameras; + } + } + + private class BrainFrame + { + public int id; + public CinemachineBlend blend = new CinemachineBlend(null, null, null, 0, 0); + public bool Active { get { return blend.IsValid; } } + + // Working data - updated every frame + public CinemachineBlend workingBlend = new CinemachineBlend(null, null, null, 0, 0); + public BlendSourceVirtualCamera workingBlendSource = new BlendSourceVirtualCamera(null); + + // Used by Timeline Preview for overriding the current value of deltaTime + public float deltaTimeOverride; + public float timeOfOverride; + public bool TimeOverrideExpired + { + get { return Time.realtimeSinceStartup - timeOfOverride > Time.maximumDeltaTime; } + } + } + + // Current game state is always frame 0, overrides are subsequent frames + private List mFrameStack = new List(); + private int mNextFrameId = 1; + + /// Get the frame index corresponding to the ID + private int GetBrainFrame(int withId) + { + int count = mFrameStack.Count; + for (int i = mFrameStack.Count - 1; i > 0; --i) + if (mFrameStack[i].id == withId) + return i; + // Not found - add it + mFrameStack.Add(new BrainFrame() { id = withId }); + return mFrameStack.Count - 1; + } + + // Current Brain State - result of all frames. Blend camB is "current" camera always + CinemachineBlend mCurrentLiveCameras = new CinemachineBlend(null, null, null, 0, 0); + + /// + /// This API is specifically for Timeline. Do not use it. + /// Override the current camera and current blend. This setting will trump + /// any in-game logic that sets virtual camera priorities and Enabled states. + /// This is the main API for the timeline. + /// + /// Id to represent a specific client. An internal + /// stack is maintained, with the most recent non-empty override taking precenence. + /// This id must be > 0. If you pass -1, a new id will be created, and returned. + /// Use that id for subsequent calls. Don't forget to + /// call ReleaseCameraOverride after all overriding is finished, to + /// free the OverideStack resources. + /// The camera to set, corresponding to weight=0 + /// The camera to set, corresponding to weight=1 + /// The blend weight. 0=camA, 1=camB + /// override for deltaTime. Should be Time.FixedDelta for + /// time-based calculations to be included, -1 otherwise + /// The oiverride ID. Don't forget to call ReleaseCameraOverride + /// after all overriding is finished, to free the OverideStack resources. + internal int SetCameraOverride( + int overrideId, + ICinemachineCamera camA, ICinemachineCamera camB, + float weightB, float deltaTime) + { + if (overrideId < 0) + overrideId = mNextFrameId++; + + BrainFrame frame = mFrameStack[GetBrainFrame(overrideId)]; + frame.deltaTimeOverride = deltaTime; + frame.timeOfOverride = Time.realtimeSinceStartup; + frame.blend.CamA = camA; + frame.blend.CamB = camB; + frame.blend.BlendCurve = AnimationCurve.Linear(0, 0, 1, 1); + frame.blend.Duration = 1; + frame.blend.TimeInBlend = weightB; + + return overrideId; + } + + /// + /// This API is specifically for Timeline. Do not use it. + /// Release the resources used for a camera override client. + /// See SetCameraOverride. + /// + /// The ID to released. This is the value that + /// was returned by SetCameraOverride + internal void ReleaseCameraOverride(int overrideId) + { + for (int i = mFrameStack.Count - 1; i > 0; --i) + { + if (mFrameStack[i].id == overrideId) + { + mFrameStack.RemoveAt(i); + return; + } + } + } + + ICinemachineCamera mActiveCameraPreviousFrame; + private void ProcessActiveCamera(float deltaTime) + { + var activeCamera = ActiveVirtualCamera; + if (activeCamera != null) + { + // Has the current camera changed this frame? + if (activeCamera != mActiveCameraPreviousFrame) + { + // Notify incoming camera of transition + activeCamera.OnTransitionFromCamera( + mActiveCameraPreviousFrame, DefaultWorldUp, deltaTime); + if (m_CameraActivatedEvent != null) + m_CameraActivatedEvent.Invoke(activeCamera, mActiveCameraPreviousFrame); + + // If we're cutting without a blend, send an event + if (m_CameraCutEvent != null + && (!IsBlending || (mActiveCameraPreviousFrame != null + && !ActiveBlend.Uses(mActiveCameraPreviousFrame)))) + m_CameraCutEvent.Invoke(this); + } + // Apply the vcam state to the Unity camera + PushStateToUnityCamera( + SoloCamera != null ? SoloCamera.State : mCurrentLiveCameras.State); + } + mActiveCameraPreviousFrame = activeCamera; + } + + private void UpdateFrame0(float deltaTime) + { + // Update the in-game frame (frame 0) + BrainFrame frame = mFrameStack[0]; + + // Are we transitioning cameras? + var activeCamera = TopCameraFromPriorityQueue(); + var outGoingCamera = frame.blend.CamB; + if (activeCamera != outGoingCamera) + { + // Do we need to create a game-play blend? + if ((UnityEngine.Object)activeCamera != null + && (UnityEngine.Object)outGoingCamera != null && deltaTime >= 0) + { + // Create a blend (curve will be null if a cut) + var blendDef = LookupBlend(outGoingCamera, activeCamera); + if (blendDef.BlendCurve != null && blendDef.m_Time > 0) + { + if (frame.blend.IsComplete) + frame.blend.CamA = outGoingCamera; // new blend + else + { + // Special case: if backing out of a blend-in-progress + // with the same blend in reverse, adjust the belnd time + if (frame.blend.CamA == activeCamera + && frame.blend.CamB == outGoingCamera + && frame.blend.Duration <= blendDef.m_Time) + { + blendDef.m_Time = frame.blend.TimeInBlend; + } + + // Chain to existing blend + frame.blend.CamA = new BlendSourceVirtualCamera( + new CinemachineBlend( + frame.blend.CamA, frame.blend.CamB, + frame.blend.BlendCurve, frame.blend.Duration, + frame.blend.TimeInBlend)); + } + } + frame.blend.BlendCurve = blendDef.BlendCurve; + frame.blend.Duration = blendDef.m_Time; + frame.blend.TimeInBlend = 0; + } + // Set the current active camera + frame.blend.CamB = activeCamera; + } + + // Advance the current blend (if any) + if (frame.blend.CamA != null) + { + frame.blend.TimeInBlend += (deltaTime >= 0) ? deltaTime : frame.blend.Duration; + if (frame.blend.IsComplete) + { + // No more blend + frame.blend.CamA = null; + frame.blend.BlendCurve = null; + frame.blend.Duration = 0; + frame.blend.TimeInBlend = 0; + } + } + } + + private void UpdateCurrentLiveCameras() + { + // Resolve the current working frame states in the stack + int lastActive = 0; + for (int i = 0; i < mFrameStack.Count; ++i) + { + BrainFrame frame = mFrameStack[i]; + if (i == 0 || frame.Active) + { + frame.workingBlend.CamA = frame.blend.CamA; + frame.workingBlend.CamB = frame.blend.CamB; + frame.workingBlend.BlendCurve = frame.blend.BlendCurve; + frame.workingBlend.Duration = frame.blend.Duration; + frame.workingBlend.TimeInBlend = frame.blend.TimeInBlend; + if (i > 0 && !frame.blend.IsComplete) + { + if (frame.workingBlend.CamA == null) + { + if (mFrameStack[lastActive].blend.IsComplete) + frame.workingBlend.CamA = mFrameStack[lastActive].blend.CamB; + else + { + frame.workingBlendSource.Blend = mFrameStack[lastActive].workingBlend; + frame.workingBlend.CamA = frame.workingBlendSource; + } + } + else if (frame.workingBlend.CamB == null) + { + if (mFrameStack[lastActive].blend.IsComplete) + frame.workingBlend.CamB = mFrameStack[lastActive].blend.CamB; + else + { + frame.workingBlendSource.Blend = mFrameStack[lastActive].workingBlend; + frame.workingBlend.CamB = frame.workingBlendSource; + } + } + } + lastActive = i; + } + } + var workingBlend = mFrameStack[lastActive].workingBlend; + mCurrentLiveCameras.CamA = workingBlend.CamA; + mCurrentLiveCameras.CamB = workingBlend.CamB; + mCurrentLiveCameras.BlendCurve = workingBlend.BlendCurve; + mCurrentLiveCameras.Duration = workingBlend.Duration; + mCurrentLiveCameras.TimeInBlend = workingBlend.TimeInBlend; + } + + /// + /// True if the ICinemachineCamera the current active camera, + /// or part of a current blend, either directly or indirectly because its parents are live. + /// + /// The camera to test whether it is live + /// If truw, will only return true if this vcam is the dominat live child + /// True if the camera is live (directly or indirectly) + /// or part of a blend in progress. + public bool IsLive(ICinemachineCamera vcam, bool dominantChildOnly = false) + { + if (SoloCamera == vcam) + return true; + if (mCurrentLiveCameras.Uses(vcam)) + return true; + + ICinemachineCamera parent = vcam.ParentCamera; + while (parent != null && parent.IsLiveChild(vcam, dominantChildOnly)) + { + if (SoloCamera == parent || mCurrentLiveCameras.Uses(parent)) + return true; + vcam = parent; + parent = vcam.ParentCamera; + } + return false; + } + + /// + /// The current state applied to the unity camera (may be the result of a blend) + /// + public CameraState CurrentCameraState { get; private set; } + + /// + /// Get the highest-priority Enabled ICinemachineCamera + /// that is visible to my camera. Culling Mask is used to test visibility. + /// + private ICinemachineCamera TopCameraFromPriorityQueue() + { + CinemachineCore core = CinemachineCore.Instance; + Camera outputCamera = OutputCamera; + int mask = outputCamera == null ? ~0 : outputCamera.cullingMask; + int numCameras = core.VirtualCameraCount; + for (int i = 0; i < numCameras; ++i) + { + var cam = core.GetVirtualCamera(i); + GameObject go = cam != null ? cam.gameObject : null; + if (go != null && (mask & (1 << go.layer)) != 0) + return cam; + } + return null; + } + + /// + /// Create a blend curve for blending from one ICinemachineCamera to another. + /// If there is a specific blend defined for these cameras it will be used, otherwise + /// a default blend will be created, which could be a cut. + /// + private CinemachineBlendDefinition LookupBlend( + ICinemachineCamera fromKey, ICinemachineCamera toKey) + { + // Get the blend curve that's most appropriate for these cameras + CinemachineBlendDefinition blend = m_DefaultBlend; + if (m_CustomBlends != null) + { + string fromCameraName = (fromKey != null) ? fromKey.Name : string.Empty; + string toCameraName = (toKey != null) ? toKey.Name : string.Empty; + blend = m_CustomBlends.GetBlendForVirtualCameras( + fromCameraName, toCameraName, blend); + } + if (CinemachineCore.GetBlendOverride != null) + blend = CinemachineCore.GetBlendOverride(fromKey, toKey, blend, this); + return blend; + } + + /// Apply a cref="CameraState"/> to the game object + private void PushStateToUnityCamera(CameraState state) + { + CurrentCameraState = state; + if ((state.BlendHint & CameraState.BlendHintValue.NoPosition) == 0) + transform.position = state.FinalPosition; + if ((state.BlendHint & CameraState.BlendHintValue.NoOrientation) == 0) + transform.rotation = state.FinalOrientation; + if ((state.BlendHint & CameraState.BlendHintValue.NoLens) == 0) + { + Camera cam = OutputCamera; + if (cam != null) + { + cam.nearClipPlane = state.Lens.NearClipPlane; + cam.farClipPlane = state.Lens.FarClipPlane; + cam.fieldOfView = state.Lens.FieldOfView; + if (cam.orthographic) + cam.orthographicSize = state.Lens.OrthographicSize; +#if UNITY_2018_2_OR_NEWER + else + { + cam.usePhysicalProperties = state.Lens.IsPhysicalCamera; + cam.lensShift = state.Lens.LensShift; + } +#endif + } + } + if (CinemachineCore.CameraUpdatedEvent != null) + CinemachineCore.CameraUpdatedEvent.Invoke(this); + } + } +} diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Runtime/Behaviours/CinemachineBrain.cs.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Runtime/Behaviours/CinemachineBrain.cs.meta" new file mode 100644 index 00000000..d52c3b58 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Runtime/Behaviours/CinemachineBrain.cs.meta" @@ -0,0 +1,12 @@ +fileFormatVersion: 2 +guid: 72ece51f2901e7445ab60da3685d6b5f +timeCreated: 1493069520 +licenseType: Pro +MonoImporter: + serializedVersion: 2 + defaultReferences: [] + executionOrder: 100 + icon: {fileID: 2800000, guid: 5f2a108eb023faf43a809979fd3d38f2, type: 3} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Runtime/Behaviours/CinemachineCameraOffset.cs" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Runtime/Behaviours/CinemachineCameraOffset.cs" new file mode 100644 index 00000000..fc67bc2b --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Runtime/Behaviours/CinemachineCameraOffset.cs" @@ -0,0 +1,27 @@ +using UnityEngine; +using Cinemachine; + +/// +/// An add-on module for Cinemachine Virtual Camera that adds a final offset to the camera +/// +[AddComponentMenu("")] // Hide in menu +public class CinemachineCameraOffset : CinemachineExtension +{ + [Tooltip("Offset the camera's position by this much (camera space)")] + public Vector3 m_Offset = Vector3.zero; + + [Tooltip("When to apply the offset")] + public CinemachineCore.Stage m_ApplyAfter = CinemachineCore.Stage.Aim; + + protected override void PostPipelineStageCallback( + CinemachineVirtualCameraBase vcam, + CinemachineCore.Stage stage, ref CameraState state, float deltaTime) + { + if (stage == m_ApplyAfter) + { + Vector3 offset = state.FinalOrientation * m_Offset; + state.ReferenceLookAt += offset; + state.PositionCorrection += offset; + } + } +} diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Runtime/Behaviours/CinemachineCameraOffset.cs.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Runtime/Behaviours/CinemachineCameraOffset.cs.meta" new file mode 100644 index 00000000..470a18ac --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Runtime/Behaviours/CinemachineCameraOffset.cs.meta" @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 44d70cc20219cd84593f67d248eafe36 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {fileID: 2800000, guid: 5f2a108eb023faf43a809979fd3d38f2, type: 3} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Runtime/Behaviours/CinemachineClearShot.cs" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Runtime/Behaviours/CinemachineClearShot.cs" new file mode 100644 index 00000000..b096fefb --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Runtime/Behaviours/CinemachineClearShot.cs" @@ -0,0 +1,443 @@ +using System.Collections.Generic; +using UnityEngine; +using Cinemachine.Utility; + +namespace Cinemachine +{ + /// + /// Cinemachine ClearShot is a "manager camera" that owns and manages a set of + /// Virtual Camera gameObject children. When Live, the ClearShot will check the + /// children, and choose the one with the best quality shot and make it Live. + /// + /// This can be a very powerful tool. If the child cameras have CinemachineCollider + /// extensions, they will analyze the scene for target obstructions, optimal target + /// distance, and other items, and report their assessment of shot quality back to + /// the ClearShot parent, who will then choose the best one. You can use this to set + /// up complex multi-camera coverage of a scene, and be assured that a clear shot of + /// the target will always be available. + /// + /// If multiple child cameras have the same shot quality, the one with the highest + /// priority will be chosen. + /// + /// You can also define custom blends between the ClearShot children. + /// + [DocumentationSorting(DocumentationSortingAttribute.Level.UserRef)] + [DisallowMultipleComponent] +#if UNITY_2018_3_OR_NEWER + [ExecuteAlways] +#else + [ExecuteInEditMode] +#endif + [AddComponentMenu("Cinemachine/CinemachineClearShot")] + public class CinemachineClearShot : CinemachineVirtualCameraBase + { + /// Default object for the camera children to look at (the aim target), if not specified in a child camera. May be empty. + [Tooltip("Default object for the camera children to look at (the aim target), if not specified in a child camera. May be empty if all children specify targets of their own.")] + [NoSaveDuringPlay] + public Transform m_LookAt = null; + + /// Default object for the camera children wants to move with (the body target), if not specified in a child camera. May be empty. + [Tooltip("Default object for the camera children wants to move with (the body target), if not specified in a child camera. May be empty if all children specify targets of their own.")] + [NoSaveDuringPlay] + public Transform m_Follow = null; + + /// When enabled, the current camera and blend will be indicated in the game window, for debugging + [Tooltip("When enabled, the current child camera and blend will be indicated in the game window, for debugging")] + [NoSaveDuringPlay] + public bool m_ShowDebugText = false; + + /// Internal API for the editor. Do not use this filed. + [SerializeField, HideInInspector, NoSaveDuringPlay] + internal CinemachineVirtualCameraBase[] m_ChildCameras = null; + + /// Wait this many seconds before activating a new child camera + [Tooltip("Wait this many seconds before activating a new child camera")] + public float m_ActivateAfter; + + /// An active camera must be active for at least this many seconds + [Tooltip("An active camera must be active for at least this many seconds")] + public float m_MinDuration; + + /// If checked, camera choice will be randomized if multiple cameras are equally desirable. Otherwise, child list order will be used + [Tooltip("If checked, camera choice will be randomized if multiple cameras are equally desirable. Otherwise, child list order and child camera priority will be used.")] + public bool m_RandomizeChoice = false; + + /// The blend which is used if you don't explicitly define a blend between two Virtual Cameras + [CinemachineBlendDefinitionProperty] + [Tooltip("The blend which is used if you don't explicitly define a blend between two Virtual Cameras")] + public CinemachineBlendDefinition m_DefaultBlend + = new CinemachineBlendDefinition(CinemachineBlendDefinition.Style.Cut, 0); + + /// This is the asset which contains custom settings for specific blends + [HideInInspector] + public CinemachineBlenderSettings m_CustomBlends = null; + + /// Gets a brief debug description of this virtual camera, for use when displayiong debug info + public override string Description + { + get + { + // Show the active camera and blend + if (mActiveBlend != null) + return mActiveBlend.Description; + + ICinemachineCamera vcam = LiveChild; + if (vcam == null) + return "(none)"; + var sb = CinemachineDebug.SBFromPool(); + sb.Append("["); sb.Append(vcam.Name); sb.Append("]"); + string text = sb.ToString(); + CinemachineDebug.ReturnToPool(sb); + return text; + } + } + + /// Get the current "best" child virtual camera, that would be chosen + /// if the ClearShot camera were active. + public ICinemachineCamera LiveChild { set; get; } + + /// The CameraState of the currently live child + public override CameraState State { get { return m_State; } } + + /// Check whether the vcam a live child of this camera. + /// The Virtual Camera to check + /// If truw, will only return true if this vcam is the dominat live child + /// True if the vcam is currently actively influencing the state of this vcam + public override bool IsLiveChild(ICinemachineCamera vcam, bool dominantChildOnly = false) + { + return vcam == LiveChild || (mActiveBlend != null && mActiveBlend.Uses(vcam)); + } + + /// Get the current LookAt target. Returns parent's LookAt if parent + /// is non-null and no specific LookAt defined for this camera + override public Transform LookAt + { + get { return ResolveLookAt(m_LookAt); } + set { m_LookAt = value; } + } + + /// Get the current Follow target. Returns parent's Follow if parent + /// is non-null and no specific Follow defined for this camera + override public Transform Follow + { + get { return ResolveFollow(m_Follow); } + set { m_Follow = value; } + } + + /// This is called to notify the vcam that a target got warped, + /// so that the vcam can update its internal state to make the camera + /// also warp seamlessy. + /// The object that was warped + /// The amount the target's position changed + public override void OnTargetObjectWarped(Transform target, Vector3 positionDelta) + { + UpdateListOfChildren(); + foreach (var vcam in m_ChildCameras) + vcam.OnTargetObjectWarped(target, positionDelta); + base.OnTargetObjectWarped(target, positionDelta); + } + + /// Internal use only. Called by CinemachineCore at designated update time + /// so the vcam can position itself and track its targets. This implementation + /// updates all the children, chooses the best one, and implements any required blending. + /// Default world Up, set by the CinemachineBrain + /// Delta time for time-based effects (ignore if less than 0) + public override void InternalUpdateCameraState(Vector3 worldUp, float deltaTime) + { + if (!PreviousStateIsValid) + deltaTime = -1; + + // Choose the best camera + UpdateListOfChildren(); + ICinemachineCamera previousCam = LiveChild; + LiveChild = ChooseCurrentCamera(worldUp, deltaTime); + + // Are we transitioning cameras? + if (previousCam != LiveChild && LiveChild != null) + { + // Notify incoming camera of transition + LiveChild.OnTransitionFromCamera(previousCam, worldUp, deltaTime); + + // Generate Camera Activation event in the brain if live + CinemachineCore.Instance.GenerateCameraActivationEvent(LiveChild, previousCam); + + // Are we transitioning cameras? + if (previousCam != null) + { + // Create a blend (will be null if a cut) + mActiveBlend = CreateBlend( + previousCam, LiveChild, + LookupBlend(previousCam, LiveChild), mActiveBlend); + + // If cutting, generate a camera cut event if live + if (mActiveBlend == null || !mActiveBlend.Uses(previousCam)) + CinemachineCore.Instance.GenerateCameraCutEvent(LiveChild); + } + } + + // Advance the current blend (if any) + if (mActiveBlend != null) + { + mActiveBlend.TimeInBlend += (deltaTime >= 0) + ? deltaTime : mActiveBlend.Duration; + if (mActiveBlend.IsComplete) + mActiveBlend = null; + } + + if (mActiveBlend != null) + { + mActiveBlend.UpdateCameraState(worldUp, deltaTime); + m_State = mActiveBlend.State; + } + else if (LiveChild != null) + { + if (TransitioningFrom != null) + LiveChild.OnTransitionFromCamera(TransitioningFrom, worldUp, deltaTime); + m_State = LiveChild.State; + } + TransitioningFrom = null; + InvokePostPipelineStageCallback(this, CinemachineCore.Stage.Finalize, ref m_State, deltaTime); + PreviousStateIsValid = true; + } + + /// Makes sure the internal child cache is up to date + protected override void OnEnable() + { + base.OnEnable(); + InvalidateListOfChildren(); + mActiveBlend = null; + CinemachineDebug.OnGUIHandlers -= OnGuiHandler; + CinemachineDebug.OnGUIHandlers += OnGuiHandler; + } + + protected override void OnDisable() + { + base.OnDisable(); + CinemachineDebug.OnGUIHandlers -= OnGuiHandler; + } + + /// Makes sure the internal child cache is up to date + public void OnTransformChildrenChanged() + { + InvalidateListOfChildren(); + } + + /// Will only be called if Unity Editor - never in build + private void OnGuiHandler() + { + if (!m_ShowDebugText) + CinemachineDebug.ReleaseScreenPos(this); + else + { + var sb = CinemachineDebug.SBFromPool(); + sb.Append(Name); sb.Append(": "); sb.Append(Description); + string text = sb.ToString(); + Rect r = CinemachineDebug.GetScreenPos(this, text, GUI.skin.box); + GUI.Label(r, text, GUI.skin.box); + CinemachineDebug.ReturnToPool(sb); + } + } + + /// Is there a blend in progress? + public bool IsBlending { get { return mActiveBlend != null; } } + + CameraState m_State = CameraState.Default; + + /// The list of child cameras. These are just the immediate children in the hierarchy. + public CinemachineVirtualCameraBase[] ChildCameras + { + get { UpdateListOfChildren(); return m_ChildCameras; } + } + + float mActivationTime = 0; + float mPendingActivationTime = 0; + ICinemachineCamera mPendingCamera; + private CinemachineBlend mActiveBlend = null; + + void InvalidateListOfChildren() + { + m_ChildCameras = null; + m_RandomizedChilden = null; + LiveChild = null; + } + + /// If RandomizeChoice is enabled, call this to re-randomize the children next frame. + /// This is useful if you want to freshen up the shot. + public void ResetRandomization() + { + m_RandomizedChilden = null; + mRandomizeNow = true; + } + + void UpdateListOfChildren() + { + if (m_ChildCameras != null) + return; + + List list = new List(); + CinemachineVirtualCameraBase[] kids = GetComponentsInChildren(true); + foreach (CinemachineVirtualCameraBase k in kids) + if (k.transform.parent == transform) + list.Add(k); + m_ChildCameras = list.ToArray(); + + // Zap the cached current instructions + mActivationTime = mPendingActivationTime = 0; + mPendingCamera = null; + LiveChild = null; + mActiveBlend = null; + } + + private bool mRandomizeNow = false; + private CinemachineVirtualCameraBase[] m_RandomizedChilden = null; + + private ICinemachineCamera ChooseCurrentCamera(Vector3 worldUp, float deltaTime) + { + if (m_ChildCameras == null || m_ChildCameras.Length == 0) + { + mActivationTime = 0; + return null; + } + + CinemachineVirtualCameraBase[] childCameras = m_ChildCameras; + if (!m_RandomizeChoice) + m_RandomizedChilden = null; + else if (m_ChildCameras.Length > 1) + { + if (m_RandomizedChilden == null) + m_RandomizedChilden = Randomize(m_ChildCameras); + childCameras = m_RandomizedChilden; + } + + if (LiveChild != null && !LiveChild.VirtualCameraGameObject.activeSelf) + LiveChild = null; + ICinemachineCamera best = LiveChild; + for (int i = 0; i < childCameras.Length; ++i) + { + CinemachineVirtualCameraBase vcam = childCameras[i]; + if (vcam != null && vcam.gameObject.activeInHierarchy) + { + // Choose the first in the list that is better than the current + if (best == null + || vcam.State.ShotQuality > best.State.ShotQuality + || (vcam.State.ShotQuality == best.State.ShotQuality && vcam.Priority > best.Priority) + || (m_RandomizeChoice && mRandomizeNow && (ICinemachineCamera)vcam != LiveChild + && vcam.State.ShotQuality == best.State.ShotQuality + && vcam.Priority == best.Priority)) + { + best = vcam; + } + } + } + mRandomizeNow = false; + + float now = Time.time; + if (mActivationTime != 0) + { + // Is it active now? + if (LiveChild == best) + { + // Yes, cancel any pending + mPendingActivationTime = 0; + mPendingCamera = null; + return best; + } + + // Is it pending? + if (deltaTime >= 0) + { + if (mPendingActivationTime != 0 && mPendingCamera == best) + { + // Has it been pending long enough, and are we allowed to switch away + // from the active action? + if ((now - mPendingActivationTime) > m_ActivateAfter + && (now - mActivationTime) > m_MinDuration) + { + // Yes, activate it now + m_RandomizedChilden = null; // reshuffle the children + mActivationTime = now; + mPendingActivationTime = 0; + mPendingCamera = null; + return best; + } + return LiveChild; + } + } + } + // Neither active nor pending. + mPendingActivationTime = 0; // cancel the pending, if any + mPendingCamera = null; + + // Can we activate it now? + if (deltaTime >= 0 && mActivationTime > 0) + { + if (m_ActivateAfter > 0 + || (now - mActivationTime) < m_MinDuration) + { + // Too early - make it pending + mPendingCamera = best; + mPendingActivationTime = now; + return LiveChild; + } + } + // Activate now + m_RandomizedChilden = null; // reshuffle the children + mActivationTime = now; + return best; + } + + struct Pair { public int a; public float b; } + CinemachineVirtualCameraBase[] Randomize(CinemachineVirtualCameraBase[] src) + { + List pairs = new List(); + for (int i = 0; i < src.Length; ++i) + { + Pair p = new Pair(); p.a = i; p.b = Random.Range(0, 1000f); + pairs.Add(p); + } + pairs.Sort((p1, p2) => (int)p1.b - (int)p2.b); + CinemachineVirtualCameraBase[] dst = new CinemachineVirtualCameraBase[src.Length]; + Pair[] result = pairs.ToArray(); + for (int i = 0; i < src.Length; ++i) + dst[i] = src[result[i].a]; + return dst; + } + + private CinemachineBlendDefinition LookupBlend( + ICinemachineCamera fromKey, ICinemachineCamera toKey) + { + // Get the blend curve that's most appropriate for these cameras + CinemachineBlendDefinition blend = m_DefaultBlend; + if (m_CustomBlends != null) + { + string fromCameraName = (fromKey != null) ? fromKey.Name : string.Empty; + string toCameraName = (toKey != null) ? toKey.Name : string.Empty; + blend = m_CustomBlends.GetBlendForVirtualCameras( + fromCameraName, toCameraName, blend); + } + if (CinemachineCore.GetBlendOverride != null) + blend = CinemachineCore.GetBlendOverride(fromKey, toKey, blend, this); + return blend; + } + + /// Notification that this virtual camera is going live. + /// This implementation resets the child randomization. + /// The camera being deactivated. May be null. + /// Default world Up, set by the CinemachineBrain + /// Delta time for time-based effects (ignore if less than or equal to 0) + public override void OnTransitionFromCamera( + ICinemachineCamera fromCam, Vector3 worldUp, float deltaTime) + { + base.OnTransitionFromCamera(fromCam, worldUp, deltaTime); + TransitioningFrom = fromCam; + if (m_RandomizeChoice && mActiveBlend == null) + { + m_RandomizedChilden = null; + LiveChild = null; + } + InternalUpdateCameraState(worldUp, deltaTime); + } + + ICinemachineCamera TransitioningFrom { get; set; } + } +} diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Runtime/Behaviours/CinemachineClearShot.cs.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Runtime/Behaviours/CinemachineClearShot.cs.meta" new file mode 100644 index 00000000..fdbb4764 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Runtime/Behaviours/CinemachineClearShot.cs.meta" @@ -0,0 +1,12 @@ +fileFormatVersion: 2 +guid: d62f748f5292bb343be9e6b0c84416d9 +timeCreated: 1489088130 +licenseType: Pro +MonoImporter: + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {fileID: 2800000, guid: 5f2a108eb023faf43a809979fd3d38f2, type: 3} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Runtime/Behaviours/CinemachineCollider.cs" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Runtime/Behaviours/CinemachineCollider.cs" new file mode 100644 index 00000000..a03d29d3 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Runtime/Behaviours/CinemachineCollider.cs" @@ -0,0 +1,779 @@ +using UnityEngine; +using System.Collections.Generic; +using Cinemachine.Utility; +using UnityEngine.Serialization; +using System; + +namespace Cinemachine +{ + /// + /// An add-on module for Cinemachine Virtual Camera that post-processes + /// the final position of the virtual camera. Based on the supplied settings, + /// the Collider will attempt to preserve the line of sight + /// with the LookAt target of the virtual camera by moving + /// away from objects that will obstruct the view. + /// + /// Additionally, the Collider can be used to assess the shot quality and + /// report this as a field in the camera State. + /// + [DocumentationSorting(DocumentationSortingAttribute.Level.UserRef)] + [AddComponentMenu("")] // Hide in menu + [SaveDuringPlay] +#if UNITY_2018_3_OR_NEWER + [ExecuteAlways] +#else + [ExecuteInEditMode] +#endif + public class CinemachineCollider : CinemachineExtension + { + /// Objects on these layers will be detected. + [Header("Obstacle Detection")] + [Tooltip("Objects on these layers will be detected")] + public LayerMask m_CollideAgainst = 1; + + /// Obstacles with this tag will be ignored. It is a good idea to set this field to the target's tag + [TagField] + [Tooltip("Obstacles with this tag will be ignored. It is a good idea to set this field to the target's tag")] + public string m_IgnoreTag = string.Empty; + + /// Objects on these layers will never obstruct view of the target. + [Tooltip("Objects on these layers will never obstruct view of the target")] + public LayerMask m_TransparentLayers = 0; + + /// Obstacles closer to the target than this will be ignored + [Tooltip("Obstacles closer to the target than this will be ignored")] + public float m_MinimumDistanceFromTarget = 0.1f; + + /// + /// When enabled, will attempt to resolve situations where the line of sight to the + /// target is blocked by an obstacle + /// + [Space] + [Tooltip("When enabled, will attempt to resolve situations where the line of sight to the target is blocked by an obstacle")] + [FormerlySerializedAs("m_PreserveLineOfSight")] + public bool m_AvoidObstacles = true; + + /// + /// The raycast distance to test for when checking if the line of sight to this camera's target is clear. + /// + [Tooltip("The maximum raycast distance when checking if the line of sight to this camera's target is clear. If the setting is 0 or less, the current actual distance to target will be used.")] + [FormerlySerializedAs("m_LineOfSightFeelerDistance")] + public float m_DistanceLimit = 0f; + + /// + /// Don't take action unless occlusion has lasted at least this long. + /// + [Tooltip("Don't take action unless occlusion has lasted at least this long.")] + public float m_MinimumOcclusionTime = 0f; + + /// + /// Camera will try to maintain this distance from any obstacle. + /// Increase this value if you are seeing inside obstacles due to a large + /// FOV on the camera. + /// + [Tooltip("Camera will try to maintain this distance from any obstacle. Try to keep this value small. Increase it if you are seeing inside obstacles due to a large FOV on the camera.")] + public float m_CameraRadius = 0.1f; + + /// The way in which the Collider will attempt to preserve sight of the target. + public enum ResolutionStrategy + { + /// Camera will be pulled forward along its Z axis until it is in front of + /// the nearest obstacle + PullCameraForward, + /// In addition to pulling the camera forward, an effort will be made to + /// return the camera to its original height + PreserveCameraHeight, + /// In addition to pulling the camera forward, an effort will be made to + /// return the camera to its original distance from the target + PreserveCameraDistance + }; + /// The way in which the Collider will attempt to preserve sight of the target. + [Tooltip("The way in which the Collider will attempt to preserve sight of the target.")] + public ResolutionStrategy m_Strategy = ResolutionStrategy.PreserveCameraHeight; + + /// + /// Upper limit on how many obstacle hits to process. Higher numbers may impact performance. + /// In most environments, 4 is enough. + /// + [Range(1, 10)] + [Tooltip("Upper limit on how many obstacle hits to process. Higher numbers may impact performance. In most environments, 4 is enough.")] + public int m_MaximumEffort = 4; + + /// + /// Smoothing to apply to obstruction resolution. Nearest camera point is held for at least this long. + /// + [Range(0, 2)] + [Tooltip("Smoothing to apply to obstruction resolution. Nearest camera point is held for at least this long")] + public float m_SmoothingTime = 0; + + /// + /// How gradually the camera returns to its normal position after having been corrected. + /// Higher numbers will move the camera more gradually back to normal. + /// + [Range(0, 10)] + [Tooltip("How gradually the camera returns to its normal position after having been corrected. Higher numbers will move the camera more gradually back to normal.")] + [FormerlySerializedAs("m_Smoothing")] + public float m_Damping = 0; + + /// + /// How gradually the camera moves to resolve an occlusion. + /// Higher numbers will move the camera more gradually. + /// + [Range(0, 10)] + [Tooltip("How gradually the camera moves to resolve an occlusion. Higher numbers will move the camera more gradually.")] + public float m_DampingWhenOccluded = 0; + + /// If greater than zero, a higher score will be given to shots when the target is closer to + /// this distance. Set this to zero to disable this feature + [Header("Shot Evaluation")] + [Tooltip("If greater than zero, a higher score will be given to shots when the target is closer to this distance. Set this to zero to disable this feature.")] + public float m_OptimalTargetDistance = 0; + + /// See wheter an object is blocking the camera's view of the target + /// The virtual camera in question. This might be different from the + /// virtual camera that owns the collider, in the event that the camera has children + /// True if something is blocking the view + public bool IsTargetObscured(ICinemachineCamera vcam) + { + return GetExtraState(vcam).targetObscured; + } + + /// See whether the virtual camera has been moved nby the collider + /// The virtual camera in question. This might be different from the + /// virtual camera that owns the collider, in the event that the camera has children + /// True if the virtual camera has been displaced due to collision or + /// target obstruction + public bool CameraWasDisplaced(ICinemachineCamera vcam) + { + return GetExtraState(vcam).colliderDisplacement > 0; + } + + private void OnValidate() + { + m_DistanceLimit = Mathf.Max(0, m_DistanceLimit); + m_MinimumOcclusionTime = Mathf.Max(0, m_MinimumOcclusionTime); + m_CameraRadius = Mathf.Max(0, m_CameraRadius); + m_MinimumDistanceFromTarget = Mathf.Max(0.01f, m_MinimumDistanceFromTarget); + m_OptimalTargetDistance = Mathf.Max(0, m_OptimalTargetDistance); + } + + + /// This must be small but greater than 0 - reduces false results due to precision + const float PrecisionSlush = 0.001f; + + /// + /// Per-vcam extra state info + /// + class VcamExtraState + { + public Vector3 m_previousDisplacement; + public Vector3 m_previousDisplacementCorrection; + public float colliderDisplacement; + public bool targetObscured; + public float occlusionStartTime; + public List debugResolutionPath; + + public void AddPointToDebugPath(Vector3 p) + { +#if UNITY_EDITOR + if (debugResolutionPath == null) + debugResolutionPath = new List(); + debugResolutionPath.Add(p); +#endif + } + + // Thanks to Sebastien LeTouze from Exiin Studio for the smoothing idea + private float m_SmoothedDistance; + private float m_SmoothedTime; + public float ApplyDistanceSmoothing(float distance, float smoothingTime) + { + if (m_SmoothedTime != 0 && smoothingTime > Epsilon) + { + float now = Time.timeSinceLevelLoad; + if (now - m_SmoothedTime < smoothingTime) + return Mathf.Min(distance, m_SmoothedDistance); + } + return distance; + } + public void UpdateDistanceSmoothing(float distance, float smoothingTime) + { + float now = Time.timeSinceLevelLoad; + if (m_SmoothedDistance == 0 || distance <= m_SmoothedDistance) + { + m_SmoothedDistance = distance; + m_SmoothedTime = now; + } + } + public void ResetDistanceSmoothing(float smoothingTime) + { + float now = Time.timeSinceLevelLoad; + if (now - m_SmoothedTime >= smoothingTime) + m_SmoothedDistance = m_SmoothedTime = 0; + } + }; + + /// Inspector API for debugging collision resolution path + public List> DebugPaths + { + get + { + List> list = new List>(); + List extraStates = GetAllExtraStates(); + foreach (var v in extraStates) + if (v.debugResolutionPath != null && v.debugResolutionPath.Count > 0) + list.Add(v.debugResolutionPath); + return list; + } + } + + /// Callback to do the collision resolution and shot evaluation + protected override void PostPipelineStageCallback( + CinemachineVirtualCameraBase vcam, + CinemachineCore.Stage stage, ref CameraState state, float deltaTime) + { + VcamExtraState extra = null; + if (stage == CinemachineCore.Stage.Body) + { + extra = GetExtraState(vcam); + extra.targetObscured = false; + extra.colliderDisplacement = 0; + if (extra.debugResolutionPath != null) + extra.debugResolutionPath.RemoveRange(0, extra.debugResolutionPath.Count); + } + + // Move the body before the Aim is calculated + if (stage == CinemachineCore.Stage.Body) + { + if (m_AvoidObstacles) + { + Vector3 displacement = Vector3.zero; + displacement = PreserveLignOfSight(ref state, ref extra); + if (m_MinimumOcclusionTime > Epsilon) + { + float now = Time.timeSinceLevelLoad; + if (displacement.sqrMagnitude < Epsilon) + extra.occlusionStartTime = 0; + else + { + if (extra.occlusionStartTime <= 0) + extra.occlusionStartTime = now; + if (now - extra.occlusionStartTime < m_MinimumOcclusionTime) + displacement = extra.m_previousDisplacement; + } + } + + // Apply distance smoothing + if (m_SmoothingTime > Epsilon) + { + Vector3 pos = state.CorrectedPosition + displacement; + Vector3 dir = pos - state.ReferenceLookAt; + float distance = dir.magnitude; + if (distance > Epsilon) + { + dir /= distance; + if (!displacement.AlmostZero()) + extra.UpdateDistanceSmoothing(distance, m_SmoothingTime); + distance = extra.ApplyDistanceSmoothing(distance, m_SmoothingTime); + displacement += (state.ReferenceLookAt + dir * distance) - pos; + } + } + + float damping = m_Damping; + if (displacement.AlmostZero()) + extra.ResetDistanceSmoothing(m_SmoothingTime); + else + damping = m_DampingWhenOccluded; + if (damping > 0 && deltaTime >= 0) + { + Vector3 delta = displacement - extra.m_previousDisplacement; + delta = Damper.Damp(delta, damping, deltaTime); + displacement = extra.m_previousDisplacement + delta; + } + extra.m_previousDisplacement = displacement; + Vector3 correction = RespectCameraRadius(state.CorrectedPosition + displacement, ref state); + if (damping > 0 && deltaTime >= 0) + { + Vector3 delta = correction - extra.m_previousDisplacementCorrection; + delta = Damper.Damp(delta, damping, deltaTime); + correction = extra.m_previousDisplacementCorrection + delta; + } + displacement += correction; + extra.m_previousDisplacementCorrection = correction; + state.PositionCorrection += displacement; + extra.colliderDisplacement += displacement.magnitude; + } + } + // Rate the shot after the aim was set + if (stage == CinemachineCore.Stage.Aim) + { + extra = GetExtraState(vcam); + extra.targetObscured = IsTargetOffscreen(state) || CheckForTargetObstructions(state); + + // GML these values are an initial arbitrary attempt at rating quality + if (extra.targetObscured) + state.ShotQuality *= 0.2f; + if (extra.colliderDisplacement > 0) + state.ShotQuality *= 0.8f; + + float nearnessBoost = 0; + const float kMaxNearBoost = 0.2f; + if (m_OptimalTargetDistance > 0 && state.HasLookAt) + { + float distance = Vector3.Magnitude(state.ReferenceLookAt - state.FinalPosition); + if (distance <= m_OptimalTargetDistance) + { + float threshold = m_OptimalTargetDistance / 2; + if (distance >= threshold) + nearnessBoost = kMaxNearBoost * (distance - threshold) + / (m_OptimalTargetDistance - threshold); + } + else + { + distance -= m_OptimalTargetDistance; + float threshold = m_OptimalTargetDistance * 3; + if (distance < threshold) + nearnessBoost = kMaxNearBoost * (1f - (distance / threshold)); + } + state.ShotQuality *= (1f + nearnessBoost); + } + } + } + + private Vector3 PreserveLignOfSight(ref CameraState state, ref VcamExtraState extra) + { + Vector3 displacement = Vector3.zero; + if (state.HasLookAt && m_CollideAgainst != 0 + && m_CollideAgainst != m_TransparentLayers) + { + Vector3 cameraPos = state.CorrectedPosition; + Vector3 lookAtPos = state.ReferenceLookAt; + RaycastHit hitInfo = new RaycastHit(); + displacement = PullCameraInFrontOfNearestObstacle( + cameraPos, lookAtPos, m_CollideAgainst & ~m_TransparentLayers, ref hitInfo); + Vector3 pos = cameraPos + displacement; + if (hitInfo.collider != null) + { + extra.AddPointToDebugPath(pos); + if (m_Strategy != ResolutionStrategy.PullCameraForward) + { + Vector3 targetToCamera = cameraPos - lookAtPos; + pos = PushCameraBack( + pos, targetToCamera, hitInfo, lookAtPos, + new Plane(state.ReferenceUp, cameraPos), + targetToCamera.magnitude, m_MaximumEffort, ref extra); + } + } + displacement = pos - cameraPos; + } + return displacement; + } + + private Vector3 PullCameraInFrontOfNearestObstacle( + Vector3 cameraPos, Vector3 lookAtPos, int layerMask, ref RaycastHit hitInfo) + { + Vector3 displacement = Vector3.zero; + Vector3 dir = cameraPos - lookAtPos; + float targetDistance = dir.magnitude; + if (targetDistance > Epsilon) + { + dir /= targetDistance; + float minDistanceFromTarget = Mathf.Max(m_MinimumDistanceFromTarget, Epsilon); + if (targetDistance < minDistanceFromTarget + Epsilon) + displacement = dir * (minDistanceFromTarget - targetDistance); + else + { + float rayLength = targetDistance - minDistanceFromTarget; + if (m_DistanceLimit > Epsilon) + rayLength = Mathf.Min(m_DistanceLimit, rayLength); + + // Make a ray that looks towards the camera, to get the obstacle closest to target + Ray ray = new Ray(cameraPos - rayLength * dir, dir); + rayLength += PrecisionSlush; + if (rayLength > Epsilon) + { + if (RaycastIgnoreTag(ray, out hitInfo, rayLength, layerMask)) + { + // Pull camera forward in front of obstacle + float adjustment = Mathf.Max(0, hitInfo.distance - PrecisionSlush); + displacement = ray.GetPoint(adjustment) - cameraPos; + } + } + } + } + return displacement; + } + + private bool RaycastIgnoreTag( + Ray ray, out RaycastHit hitInfo, float rayLength, int layerMask) + { + float extraDistance = 0; + while (Physics.Raycast( + ray, out hitInfo, rayLength, layerMask, + QueryTriggerInteraction.Ignore)) + { + if (m_IgnoreTag.Length == 0 || !hitInfo.collider.CompareTag(m_IgnoreTag)) + { + hitInfo.distance += extraDistance; + return true; + } + + // Ignore the hit. Pull ray origin forward in front of obstacle + Ray inverseRay = new Ray(ray.GetPoint(rayLength), -ray.direction); + if (!hitInfo.collider.Raycast(inverseRay, out hitInfo, rayLength)) + break; + float deltaExtraDistance = rayLength - (hitInfo.distance - PrecisionSlush); + if (deltaExtraDistance < Epsilon) + break; + extraDistance += deltaExtraDistance; + rayLength = hitInfo.distance - PrecisionSlush; + if (rayLength < Epsilon) + break; + ray.origin = inverseRay.GetPoint(rayLength); + } + return false; + } + + private Vector3 PushCameraBack( + Vector3 currentPos, Vector3 pushDir, RaycastHit obstacle, + Vector3 lookAtPos, Plane startPlane, float targetDistance, int iterations, + ref VcamExtraState extra) + { + // Take a step along the wall. + Vector3 pos = currentPos; + Vector3 dir = Vector3.zero; + if (!GetWalkingDirection(pos, pushDir, obstacle, ref dir)) + return pos; + + Ray ray = new Ray(pos, dir); + float distance = GetPushBackDistance(ray, startPlane, targetDistance, lookAtPos); + if (distance <= Epsilon) + return pos; + + // Check only as far as the obstacle bounds + float clampedDistance = ClampRayToBounds(ray, distance, obstacle.collider.bounds); + distance = Mathf.Min(distance, clampedDistance + PrecisionSlush); + + RaycastHit hitInfo; + if (RaycastIgnoreTag(ray, out hitInfo, distance, + m_CollideAgainst & ~m_TransparentLayers)) + { + // We hit something. Stop there and take a step along that wall. + float adjustment = hitInfo.distance - PrecisionSlush; + pos = ray.GetPoint(adjustment); + extra.AddPointToDebugPath(pos); + if (iterations > 1) + pos = PushCameraBack( + pos, dir, hitInfo, + lookAtPos, startPlane, + targetDistance, iterations-1, ref extra); + + return pos; + } + + // Didn't hit anything. Can we push back all the way now? + pos = ray.GetPoint(distance); + + // First check if we can still see the target. If not, abort + dir = pos - lookAtPos; + float d = dir.magnitude; + RaycastHit hitInfo2; + if (d < Epsilon || RaycastIgnoreTag( + new Ray(lookAtPos, dir), out hitInfo2, d - PrecisionSlush, + m_CollideAgainst & ~m_TransparentLayers)) + return currentPos; + + // All clear + ray = new Ray(pos, dir); + extra.AddPointToDebugPath(pos); + distance = GetPushBackDistance(ray, startPlane, targetDistance, lookAtPos); + if (distance > Epsilon) + { + if (!RaycastIgnoreTag(ray, out hitInfo, distance, + m_CollideAgainst & ~m_TransparentLayers)) + { + pos = ray.GetPoint(distance); // no obstacles - all good + extra.AddPointToDebugPath(pos); + } + else + { + // We hit something. Stop there and maybe take a step along that wall + float adjustment = hitInfo.distance - PrecisionSlush; + pos = ray.GetPoint(adjustment); + extra.AddPointToDebugPath(pos); + if (iterations > 1) + pos = PushCameraBack( + pos, dir, hitInfo, lookAtPos, startPlane, + targetDistance, iterations-1, ref extra); + } + } + return pos; + } + + private RaycastHit[] m_CornerBuffer = new RaycastHit[4]; + private bool GetWalkingDirection( + Vector3 pos, Vector3 pushDir, RaycastHit obstacle, ref Vector3 outDir) + { + Vector3 normal2 = obstacle.normal; + + // Check for nearby obstacles. Are we in a corner? + float nearbyDistance = PrecisionSlush * 5; + int numFound = Physics.SphereCastNonAlloc( + pos, nearbyDistance, pushDir.normalized, m_CornerBuffer, 0, + m_CollideAgainst & ~m_TransparentLayers, QueryTriggerInteraction.Ignore); + if (numFound > 1) + { + // Calculate the second normal + for (int i = 0; i < numFound; ++i) + { + if (m_CornerBuffer[i].collider == null) + continue; + if (m_IgnoreTag.Length > 0 && m_CornerBuffer[i].collider.CompareTag(m_IgnoreTag)) + continue; + Type type = m_CornerBuffer[i].collider.GetType(); + if (type == typeof(BoxCollider) + || type == typeof(SphereCollider) + || type == typeof(CapsuleCollider)) + { + Vector3 p = m_CornerBuffer[i].collider.ClosestPoint(pos); + Vector3 d = p - pos; + if (d.magnitude > Vector3.kEpsilon) + { + if (m_CornerBuffer[i].collider.Raycast( + new Ray(pos, d), out m_CornerBuffer[i], nearbyDistance)) + { + if (!(m_CornerBuffer[i].normal - obstacle.normal).AlmostZero()) + normal2 = m_CornerBuffer[i].normal; + break; + } + } + } + } + } + + // Walk along the wall. If we're in a corner, walk their intersecting line + Vector3 dir = Vector3.Cross(obstacle.normal, normal2); + if (dir.AlmostZero()) + dir = Vector3.ProjectOnPlane(pushDir, obstacle.normal); + else + { + float dot = Vector3.Dot(dir, pushDir); + if (Mathf.Abs(dot) < Epsilon) + return false; + if (dot < 0) + dir = -dir; + } + if (dir.AlmostZero()) + return false; + + outDir = dir.normalized; + return true; + } + + const float AngleThreshold = 0.1f; + float GetPushBackDistance(Ray ray, Plane startPlane, float targetDistance, Vector3 lookAtPos) + { + float maxDistance = targetDistance - (ray.origin - lookAtPos).magnitude; + if (maxDistance < Epsilon) + return 0; + if (m_Strategy == ResolutionStrategy.PreserveCameraDistance) + return maxDistance; + + float distance; + if (!startPlane.Raycast(ray, out distance)) + distance = 0; + distance = Mathf.Min(maxDistance, distance); + if (distance < Epsilon) + return 0; + + // If we are close to parallel to the plane, we have to take special action + float angle = Mathf.Abs(UnityVectorExtensions.Angle(startPlane.normal, ray.direction) - 90); + if (angle < AngleThreshold) + distance = Mathf.Lerp(0, distance, angle / AngleThreshold); + return distance; + } + + float ClampRayToBounds(Ray ray, float distance, Bounds bounds) + { + float d; + if (Vector3.Dot(ray.direction, Vector3.up) > 0) + { + if (new Plane(Vector3.down, bounds.max).Raycast(ray, out d) && d > Epsilon) + distance = Mathf.Min(distance, d); + } + else if (Vector3.Dot(ray.direction, Vector3.down) > 0) + { + if (new Plane(Vector3.up, bounds.min).Raycast(ray, out d) && d > Epsilon) + distance = Mathf.Min(distance, d); + } + + if (Vector3.Dot(ray.direction, Vector3.right) > 0) + { + if (new Plane(Vector3.left, bounds.max).Raycast(ray, out d) && d > Epsilon) + distance = Mathf.Min(distance, d); + } + else if (Vector3.Dot(ray.direction, Vector3.left) > 0) + { + if (new Plane(Vector3.right, bounds.min).Raycast(ray, out d) && d > Epsilon) + distance = Mathf.Min(distance, d); + } + + if (Vector3.Dot(ray.direction, Vector3.forward) > 0) + { + if (new Plane(Vector3.back, bounds.max).Raycast(ray, out d) && d > Epsilon) + distance = Mathf.Min(distance, d); + } + else if (Vector3.Dot(ray.direction, Vector3.back) > 0) + { + if (new Plane(Vector3.forward, bounds.min).Raycast(ray, out d) && d > Epsilon) + distance = Mathf.Min(distance, d); + } + return distance; + } + + private Collider[] mColliderBuffer = new Collider[5]; + private static SphereCollider mCameraCollider; + private static GameObject mCameraColliderGameObject; + private Vector3 RespectCameraRadius(Vector3 cameraPos, ref CameraState state) + { + Vector3 result = Vector3.zero; + if (m_CameraRadius < Epsilon || m_CollideAgainst == 0) + return result; + + Vector3 dir = state.HasLookAt ? (cameraPos - state.ReferenceLookAt) : Vector3.zero; + Ray ray = new Ray(); + float distance = dir.magnitude; + if (distance > Epsilon) + { + dir /= distance; + ray = new Ray(state.ReferenceLookAt, dir); + } + // Pull it out of any intersecting obstacles + RaycastHit hitInfo; + int numObstacles = Physics.OverlapSphereNonAlloc( + cameraPos, m_CameraRadius, mColliderBuffer, + m_CollideAgainst, QueryTriggerInteraction.Ignore); + if (numObstacles == 0 && m_TransparentLayers != 0 + && distance > m_MinimumDistanceFromTarget + Epsilon) + { + // Make sure the camera position isn't completely inside an obstacle. + // OverlapSphereNonAlloc won't catch those. + float d = distance - m_MinimumDistanceFromTarget; + Vector3 targetPos = state.ReferenceLookAt + dir * m_MinimumDistanceFromTarget; + if (RaycastIgnoreTag(new Ray(targetPos, dir), out hitInfo, d, m_CollideAgainst)) + { + // Only count it if there's an incoming collision but not an outgoing one + Collider c = hitInfo.collider; + if (!c.Raycast(new Ray(cameraPos, -dir), out hitInfo, d)) + mColliderBuffer[numObstacles++] = c; + } + } + if (numObstacles > 0 && distance == 0 || distance > m_MinimumDistanceFromTarget) + { + if (mCameraColliderGameObject == null) + { + mCameraColliderGameObject = new GameObject("CinemachineCollider Collider"); + mCameraColliderGameObject.hideFlags = HideFlags.HideAndDontSave; + mCameraColliderGameObject.transform.position = Vector3.zero; + mCameraColliderGameObject.SetActive(true); + mCameraCollider = mCameraColliderGameObject.AddComponent(); + mCameraCollider.isTrigger = true; + var rb = mCameraColliderGameObject.AddComponent(); + rb.detectCollisions = false; + rb.isKinematic = true; + } + mCameraCollider.radius = m_CameraRadius; + Vector3 offsetDir; + float offsetDistance; + Vector3 newCamPos = cameraPos; + for (int i = 0; i < numObstacles; ++i) + { + Collider c = mColliderBuffer[i]; + if (m_IgnoreTag.Length > 0 && c.CompareTag(m_IgnoreTag)) + continue; + + // If we have a lookAt target, move the camera to the nearest edge of obstacle + if (distance > m_MinimumDistanceFromTarget) + { + dir = newCamPos - state.ReferenceLookAt; + float d = dir.magnitude; + if (d > Epsilon) + { + dir /= d; + ray = new Ray(state.ReferenceLookAt, dir); + if (c.Raycast(ray, out hitInfo, d + m_CameraRadius)) + newCamPos = ray.GetPoint(hitInfo.distance) - (dir * PrecisionSlush); + } + } + if (Physics.ComputePenetration( + mCameraCollider, newCamPos, Quaternion.identity, + c, c.transform.position, c.transform.rotation, + out offsetDir, out offsetDistance)) + { + newCamPos += offsetDir * offsetDistance; + } + } + result = newCamPos - cameraPos; + } + + // Respect the minimum distance from target - push camera back if we have to + if (distance > Epsilon) + { + float minDistance = Mathf.Max(m_MinimumDistanceFromTarget, m_CameraRadius) + PrecisionSlush; + Vector3 newOffset = cameraPos + result - state.ReferenceLookAt; + if (newOffset.magnitude < minDistance) + result = state.ReferenceLookAt - cameraPos + dir * minDistance; + } + + return result; + } + + private bool CheckForTargetObstructions(CameraState state) + { + if (state.HasLookAt) + { + Vector3 lookAtPos = state.ReferenceLookAt; + Vector3 pos = state.CorrectedPosition; + Vector3 dir = lookAtPos - pos; + float distance = dir.magnitude; + if (distance < Mathf.Max(m_MinimumDistanceFromTarget, Epsilon)) + return true; + Ray ray = new Ray(pos, dir.normalized); + RaycastHit hitInfo; + if (RaycastIgnoreTag(ray, out hitInfo, + distance - m_MinimumDistanceFromTarget, + m_CollideAgainst & ~m_TransparentLayers)) + return true; + } + return false; + } + + private bool IsTargetOffscreen(CameraState state) + { + if (state.HasLookAt) + { + Vector3 dir = state.ReferenceLookAt - state.CorrectedPosition; + dir = Quaternion.Inverse(state.CorrectedOrientation) * dir; + if (state.Lens.Orthographic) + { + if (Mathf.Abs(dir.y) > state.Lens.OrthographicSize) + return true; + if (Mathf.Abs(dir.x) > state.Lens.OrthographicSize * state.Lens.Aspect) + return true; + } + else + { + float fov = state.Lens.FieldOfView / 2; + float angle = UnityVectorExtensions.Angle(dir.ProjectOntoPlane(Vector3.right), Vector3.forward); + if (angle > fov) + return true; + + fov = Mathf.Rad2Deg * Mathf.Atan(Mathf.Tan(fov * Mathf.Deg2Rad) * state.Lens.Aspect); + angle = UnityVectorExtensions.Angle(dir.ProjectOntoPlane(Vector3.up), Vector3.forward); + if (angle > fov) + return true; + } + } + return false; + } + } +} diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Runtime/Behaviours/CinemachineCollider.cs.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Runtime/Behaviours/CinemachineCollider.cs.meta" new file mode 100644 index 00000000..03a77fe2 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Runtime/Behaviours/CinemachineCollider.cs.meta" @@ -0,0 +1,12 @@ +fileFormatVersion: 2 +guid: e501d18bb52cf8c40b1853ca4904654f +timeCreated: 1491854845 +licenseType: Pro +MonoImporter: + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {fileID: 2800000, guid: 5f2a108eb023faf43a809979fd3d38f2, type: 3} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Runtime/Behaviours/CinemachineConfiner.cs" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Runtime/Behaviours/CinemachineConfiner.cs" new file mode 100644 index 00000000..afa6e06b --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Runtime/Behaviours/CinemachineConfiner.cs" @@ -0,0 +1,231 @@ +using UnityEngine; +using System.Collections.Generic; +using Cinemachine.Utility; +using System; + +namespace Cinemachine +{ + /// + /// An add-on module for Cinemachine Virtual Camera that post-processes + /// the final position of the virtual camera. It will confine the virtual + /// camera's position to the volume specified in the Bounding Volume field. + /// + [DocumentationSorting(DocumentationSortingAttribute.Level.UserRef)] + [AddComponentMenu("")] // Hide in menu + [SaveDuringPlay] +#if UNITY_2018_3_OR_NEWER + [ExecuteAlways] +#else + [ExecuteInEditMode] +#endif + public class CinemachineConfiner : CinemachineExtension + { + /// The confiner can operate using a 2D bounding shape or a 3D bounding volume + public enum Mode + { + /// Use a 2D bounding shape, suitable for an orthographic camera + Confine2D, + /// Use a 3D bounding shape, suitable for perspective cameras + Confine3D + }; + /// The confiner can operate using a 2D bounding shape or a 3D bounding volume + [Tooltip("The confiner can operate using a 2D bounding shape or a 3D bounding volume")] + public Mode m_ConfineMode; + + /// The volume within which the camera is to be contained. + [Tooltip("The volume within which the camera is to be contained")] + public Collider m_BoundingVolume; + + /// The 2D shape within which the camera is to be contained. + [Tooltip("The 2D shape within which the camera is to be contained")] + public Collider2D m_BoundingShape2D; + + /// If camera is orthographic, screen edges will be confined to the volume. + [Tooltip("If camera is orthographic, screen edges will be confined to the volume. If not checked, then only the camera center will be confined")] + public bool m_ConfineScreenEdges = true; + + /// How gradually to return the camera to the bounding volume if it goes beyond the borders + [Tooltip("How gradually to return the camera to the bounding volume if it goes beyond the borders. Higher numbers are more gradual.")] + [Range(0, 10)] + public float m_Damping = 0; + + /// See whether the virtual camera has been moved by the confiner + /// The virtual camera in question. This might be different from the + /// virtual camera that owns the confiner, in the event that the camera has children + /// True if the virtual camera has been repositioned + public bool CameraWasDisplaced(CinemachineVirtualCameraBase vcam) + { + return GetExtraState(vcam).confinerDisplacement > 0; + } + + private void OnValidate() + { + m_Damping = Mathf.Max(0, m_Damping); + } + + class VcamExtraState + { + public Vector3 m_previousDisplacement; + public float confinerDisplacement; + }; + + /// Check if the bounding volume is defined + public bool IsValid + { + get + { + return ((m_ConfineMode == Mode.Confine3D && m_BoundingVolume != null) + || (m_ConfineMode == Mode.Confine2D && m_BoundingShape2D != null)); + } + } + + /// Callback to to the camera confining + protected override void PostPipelineStageCallback( + CinemachineVirtualCameraBase vcam, + CinemachineCore.Stage stage, ref CameraState state, float deltaTime) + { + if (IsValid) + { + // Move the body before the Aim is calculated + if (stage == CinemachineCore.Stage.Body) + { + Vector3 displacement; + if (m_ConfineScreenEdges && state.Lens.Orthographic) + displacement = ConfineScreenEdges(vcam, ref state); + else + displacement = ConfinePoint(state.CorrectedPosition); + + VcamExtraState extra = GetExtraState(vcam); + if (m_Damping > 0 && deltaTime >= 0) + { + Vector3 delta = displacement - extra.m_previousDisplacement; + delta = Damper.Damp(delta, m_Damping, deltaTime); + displacement = extra.m_previousDisplacement + delta; + } + extra.m_previousDisplacement = displacement; + state.PositionCorrection += displacement; + extra.confinerDisplacement = displacement.magnitude; + } + } + } + + private List> m_pathCache; + private int m_pathTotalPointCount; + + /// Call this if the bounding shape's points change at runtime + public void InvalidatePathCache() { m_pathCache = null; } + + bool ValidatePathCache() + { + Type colliderType = m_BoundingShape2D == null ? null: m_BoundingShape2D.GetType(); + if (colliderType == typeof(PolygonCollider2D)) + { + PolygonCollider2D poly = m_BoundingShape2D as PolygonCollider2D; + if (m_pathCache == null || m_pathCache.Count != poly.pathCount || m_pathTotalPointCount != poly.GetTotalPointCount()) + { + m_pathCache = new List>(); + for (int i = 0; i < poly.pathCount; ++i) + { + Vector2[] path = poly.GetPath(i); + List dst = new List(); + for (int j = 0; j < path.Length; ++j) + dst.Add(path[j]); + m_pathCache.Add(dst); + } + m_pathTotalPointCount = poly.GetTotalPointCount(); + } + return true; + } + else if (colliderType == typeof(CompositeCollider2D)) + { + CompositeCollider2D poly = m_BoundingShape2D as CompositeCollider2D; + if (m_pathCache == null || m_pathCache.Count != poly.pathCount || m_pathTotalPointCount != poly.pointCount) + { + m_pathCache = new List>(); + Vector2[] path = new Vector2[poly.pointCount]; + for (int i = 0; i < poly.pathCount; ++i) + { + int numPoints = poly.GetPath(i, path); + List dst = new List(); + for (int j = 0; j < numPoints; ++j) + dst.Add(path[j]); + m_pathCache.Add(dst); + } + m_pathTotalPointCount = poly.pointCount; + } + return true; + } + InvalidatePathCache(); + return false; + } + + private Vector3 ConfinePoint(Vector3 camPos) + { + // 3D version + if (m_ConfineMode == Mode.Confine3D) + return m_BoundingVolume.ClosestPoint(camPos) - camPos; + + // 2D version + if (m_BoundingShape2D.OverlapPoint(camPos)) + return Vector3.zero; + + // Find the nearest point on the shape's boundary + if (!ValidatePathCache()) + return Vector3.zero; + + Vector2 p = camPos; + Vector2 closest = p; + float bestDistance = float.MaxValue; + for (int i = 0; i < m_pathCache.Count; ++i) + { + int numPoints = m_pathCache[i].Count; + if (numPoints > 0) + { + Vector2 v0 = m_BoundingShape2D.transform.TransformPoint(m_pathCache[i][numPoints-1]); + for (int j = 0; j < numPoints; ++j) + { + Vector2 v = m_BoundingShape2D.transform.TransformPoint(m_pathCache[i][j]); + Vector2 c = Vector2.Lerp(v0, v, p.ClosestPointOnSegment(v0, v)); + float d = Vector2.SqrMagnitude(p - c); + if (d < bestDistance) + { + bestDistance = d; + closest = c; + } + v0 = v; + } + } + } + return closest - p; + } + + // Camera must be orthographic + private Vector3 ConfineScreenEdges(CinemachineVirtualCameraBase vcam, ref CameraState state) + { + Quaternion rot = Quaternion.Inverse(state.CorrectedOrientation); + float dy = state.Lens.OrthographicSize; + float dx = dy * state.Lens.Aspect; + Vector3 vx = (rot * Vector3.right) * dx; + Vector3 vy = (rot * Vector3.up) * dy; + + Vector3 displacement = Vector3.zero; + Vector3 camPos = state.CorrectedPosition; + const int kMaxIter = 12; + for (int i = 0; i < kMaxIter; ++i) + { + Vector3 d = ConfinePoint((camPos - vy) - vx); + if (d.AlmostZero()) + d = ConfinePoint((camPos - vy) + vx); + if (d.AlmostZero()) + d = ConfinePoint((camPos + vy) - vx); + if (d.AlmostZero()) + d = ConfinePoint((camPos + vy) + vx); + if (d.AlmostZero()) + break; + displacement += d; + camPos += d; + } + return displacement; + } + } +} diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Runtime/Behaviours/CinemachineConfiner.cs.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Runtime/Behaviours/CinemachineConfiner.cs.meta" new file mode 100644 index 00000000..75d210a7 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Runtime/Behaviours/CinemachineConfiner.cs.meta" @@ -0,0 +1,12 @@ +fileFormatVersion: 2 +guid: a2fba25a5cd15594e8f050a11e386c80 +timeCreated: 1503419997 +licenseType: Pro +MonoImporter: + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {fileID: 2800000, guid: 5f2a108eb023faf43a809979fd3d38f2, type: 3} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Runtime/Behaviours/CinemachineDollyCart.cs" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Runtime/Behaviours/CinemachineDollyCart.cs" new file mode 100644 index 00000000..9145c549 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Runtime/Behaviours/CinemachineDollyCart.cs" @@ -0,0 +1,83 @@ +using UnityEngine; +using UnityEngine.Serialization; + +namespace Cinemachine +{ + /// + /// This is a very simple behaviour that constrains its transform to a CinemachinePath. + /// It can be used to animate any objects along a path, or as a Follow target for + /// Cinemachine Virtual Cameras. + /// + [DocumentationSorting(DocumentationSortingAttribute.Level.UserRef)] +#if UNITY_2018_3_OR_NEWER + [ExecuteAlways] +#else + [ExecuteInEditMode] +#endif + public class CinemachineDollyCart : MonoBehaviour + { + /// The path to follow + [Tooltip("The path to follow")] + public CinemachinePathBase m_Path; + + /// This enum defines the options available for the update method. + public enum UpdateMethod + { + /// Updated in normal MonoBehaviour Update. + Update, + /// Updated in sync with the Physics module, in FixedUpdate + FixedUpdate, + /// Updated in normal MonoBehaviour LateUpdate + LateUpdate + }; + + /// When to move the cart, if Velocity is non-zero + [Tooltip("When to move the cart, if Velocity is non-zero")] + public UpdateMethod m_UpdateMethod = UpdateMethod.Update; + + /// How to interpret the Path Position + [Tooltip("How to interpret the Path Position. If set to Path Units, values are as follows: 0 represents the first waypoint on the path, 1 is the second, and so on. Values in-between are points on the path in between the waypoints. If set to Distance, then Path Position represents distance along the path.")] + public CinemachinePathBase.PositionUnits m_PositionUnits = CinemachinePathBase.PositionUnits.Distance; + + /// Move the cart with this speed + [Tooltip("Move the cart with this speed along the path. The value is interpreted according to the Position Units setting.")] + [FormerlySerializedAs("m_Velocity")] + public float m_Speed; + + /// The cart's current position on the path, in distance units + [Tooltip("The position along the path at which the cart will be placed. This can be animated directly or, if the velocity is non-zero, will be updated automatically. The value is interpreted according to the Position Units setting.")] + [FormerlySerializedAs("m_CurrentDistance")] + public float m_Position; + + void FixedUpdate() + { + if (m_UpdateMethod == UpdateMethod.FixedUpdate) + SetCartPosition(m_Position + m_Speed * Time.deltaTime); + } + + void Update() + { + float speed = Application.isPlaying ? m_Speed : 0; + if (m_UpdateMethod == UpdateMethod.Update) + SetCartPosition(m_Position + speed * Time.deltaTime); + } + + void LateUpdate() + { + if (!Application.isPlaying) + SetCartPosition(m_Position); + else if (m_UpdateMethod == UpdateMethod.LateUpdate) + SetCartPosition(m_Position + m_Speed * Time.deltaTime); + } + + void SetCartPosition(float distanceAlongPath) + { + if (m_Path != null) + { + m_Position = m_Path.StandardizeUnit(distanceAlongPath, m_PositionUnits); + transform.position = m_Path.EvaluatePositionAtUnit(m_Position, m_PositionUnits); + transform.rotation = m_Path.EvaluateOrientationAtUnit(m_Position, m_PositionUnits); + } + } + } +} diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Runtime/Behaviours/CinemachineDollyCart.cs.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Runtime/Behaviours/CinemachineDollyCart.cs.meta" new file mode 100644 index 00000000..afddf2bd --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Runtime/Behaviours/CinemachineDollyCart.cs.meta" @@ -0,0 +1,12 @@ +fileFormatVersion: 2 +guid: 99a9c787e5d1bbf48a389834c4a9641c +timeCreated: 1502981597 +licenseType: Pro +MonoImporter: + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Runtime/Behaviours/CinemachineExternalCamera.cs" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Runtime/Behaviours/CinemachineExternalCamera.cs" new file mode 100644 index 00000000..2efabc26 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Runtime/Behaviours/CinemachineExternalCamera.cs" @@ -0,0 +1,74 @@ +using Cinemachine.Utility; +using UnityEngine; +using UnityEngine.Serialization; + +namespace Cinemachine +{ + /// + /// This component will expose a non-cinemachine camera to the cinemachine system, + /// allowing it to participate in blends. + /// Just add it as a component alongside an existing Unity Camera component. + /// + [DocumentationSorting(DocumentationSortingAttribute.Level.UserRef)] + [RequireComponent(typeof(Camera)), DisallowMultipleComponent] + [AddComponentMenu("Cinemachine/CinemachineExternalCamera")] +#if UNITY_2018_3_OR_NEWER + [ExecuteAlways] +#else + [ExecuteInEditMode] +#endif + public class CinemachineExternalCamera : CinemachineVirtualCameraBase + { + /// The object that the camera is looking at. + [Tooltip("The object that the camera is looking at. Setting this will improve the quality of the blends to and from this camera")] + [NoSaveDuringPlay] + public Transform m_LookAt = null; + + private Camera m_Camera; + private CameraState m_State = CameraState.Default; + + /// Get the CameraState, as we are able to construct one from the Unity Camera + public override CameraState State { get { return m_State; } } + + /// The object that the camera is looking at + override public Transform LookAt + { + get { return m_LookAt; } + set { m_LookAt = value; } + } + + /// This vcam defines no targets + override public Transform Follow { get; set; } + + /// Hint for blending positions to and from this virtual camera + [Tooltip("Hint for blending positions to and from this virtual camera")] + [FormerlySerializedAs("m_PositionBlending")] + public BlendHint m_BlendHint = BlendHint.None; + + /// Internal use only. Do not call this method + public override void InternalUpdateCameraState(Vector3 worldUp, float deltaTime) + { + // Get the state from the camera + if (m_Camera == null) + m_Camera = GetComponent(); + + m_State = CameraState.Default; + m_State.RawPosition = transform.position; + m_State.RawOrientation = transform.rotation; + m_State.ReferenceUp = m_State.RawOrientation * Vector3.up; + if (m_Camera != null) + m_State.Lens = LensSettings.FromCamera(m_Camera); + + if (m_LookAt != null) + { + m_State.ReferenceLookAt = m_LookAt.transform.position; + Vector3 dir = m_State.ReferenceLookAt - State.RawPosition; + if (!dir.AlmostZero()) + m_State.ReferenceLookAt = m_State.RawPosition + Vector3.Project( + dir, State.RawOrientation * Vector3.forward); + } + ApplyPositionBlendMethod(ref m_State, m_BlendHint); + InvokePostPipelineStageCallback(this, CinemachineCore.Stage.Finalize, ref m_State, deltaTime); + } + } +} diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Runtime/Behaviours/CinemachineExternalCamera.cs.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Runtime/Behaviours/CinemachineExternalCamera.cs.meta" new file mode 100644 index 00000000..ce71f510 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Runtime/Behaviours/CinemachineExternalCamera.cs.meta" @@ -0,0 +1,12 @@ +fileFormatVersion: 2 +guid: 57744762d9079934292f57896d8193e0 +timeCreated: 1489441713 +licenseType: Pro +MonoImporter: + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {fileID: 2800000, guid: 5f2a108eb023faf43a809979fd3d38f2, type: 3} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Runtime/Behaviours/CinemachineFollowZoom.cs" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Runtime/Behaviours/CinemachineFollowZoom.cs" new file mode 100644 index 00000000..91eb729a --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Runtime/Behaviours/CinemachineFollowZoom.cs" @@ -0,0 +1,95 @@ +using UnityEngine; +using Cinemachine.Utility; + +namespace Cinemachine +{ + /// + /// An add-on module for Cinemachine Virtual Camera that adjusts + /// the FOV of the lens to keep the target object at a constant size on the screen, + /// regardless of camera and target position. + /// + [DocumentationSorting(DocumentationSortingAttribute.Level.UserRef)] + [AddComponentMenu("")] // Hide in menu + [SaveDuringPlay] +#if UNITY_2018_3_OR_NEWER + [ExecuteAlways] +#else + [ExecuteInEditMode] +#endif + public class CinemachineFollowZoom : CinemachineExtension + { + /// The shot width to maintain, in world units, at target distance. + /// FOV will be adusted as far as possible to maintain this width at the + /// target distance from the camera. + [Tooltip("The shot width to maintain, in world units, at target distance.")] + public float m_Width = 2f; + + /// Increase this value to soften the aggressiveness of the follow-zoom. + /// Small numbers are more responsive, larger numbers give a more heavy slowly responding camera. + [Range(0f, 20f)] + [Tooltip("Increase this value to soften the aggressiveness of the follow-zoom. Small numbers are more responsive, larger numbers give a more heavy slowly responding camera.")] + public float m_Damping = 1f; + + /// Will not generate an FOV smaller than this. + [Range(1f, 179f)] + [Tooltip("Lower limit for the FOV that this behaviour will generate.")] + public float m_MinFOV = 3f; + + /// Will not generate an FOV larget than this. + [Range(1f, 179f)] + [Tooltip("Upper limit for the FOV that this behaviour will generate.")] + public float m_MaxFOV = 60f; + + private void OnValidate() + { + m_Width = Mathf.Max(0, m_Width); + m_MaxFOV = Mathf.Clamp(m_MaxFOV, 1, 179); + m_MinFOV = Mathf.Clamp(m_MinFOV, 1, m_MaxFOV); + } + + class VcamExtraState + { + public float m_previousFrameZoom = 0; + } + + /// Callback to preform the zoom adjustment + protected override void PostPipelineStageCallback( + CinemachineVirtualCameraBase vcam, + CinemachineCore.Stage stage, ref CameraState state, float deltaTime) + { + VcamExtraState extra = GetExtraState(vcam); + if (deltaTime < 0) + extra.m_previousFrameZoom = state.Lens.FieldOfView; + + // Set the zoom after the body has been positioned, but before the aim, + // so that composer can compose using the updated fov. + if (stage == CinemachineCore.Stage.Body) + { + // Try to reproduce the target width + float targetWidth = Mathf.Max(m_Width, 0); + float fov = 179f; + float d = Vector3.Distance(state.CorrectedPosition, state.ReferenceLookAt); + if (d > UnityVectorExtensions.Epsilon) + { + // Clamp targetWidth to FOV min/max + float minW = d * 2f * Mathf.Tan(m_MinFOV * Mathf.Deg2Rad / 2f); + float maxW = d * 2f * Mathf.Tan(m_MaxFOV * Mathf.Deg2Rad / 2f); + targetWidth = Mathf.Clamp(targetWidth, minW, maxW); + + // Apply damping + if (deltaTime >= 0 && m_Damping > 0) + { + float currentWidth = d * 2f * Mathf.Tan(extra.m_previousFrameZoom * Mathf.Deg2Rad / 2f); + float delta = targetWidth - currentWidth; + delta = Damper.Damp(delta, m_Damping, deltaTime); + targetWidth = currentWidth + delta; + } + fov = 2f * Mathf.Atan(targetWidth / (2 * d)) * Mathf.Rad2Deg; + } + LensSettings lens = state.Lens; + lens.FieldOfView = extra.m_previousFrameZoom = Mathf.Clamp(fov, m_MinFOV, m_MaxFOV); + state.Lens = lens; + } + } + } +} diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Runtime/Behaviours/CinemachineFollowZoom.cs.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Runtime/Behaviours/CinemachineFollowZoom.cs.meta" new file mode 100644 index 00000000..04bcf86f --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Runtime/Behaviours/CinemachineFollowZoom.cs.meta" @@ -0,0 +1,12 @@ +fileFormatVersion: 2 +guid: 4700f9f03ad19f94baf0367cb7a9c988 +timeCreated: 1491854845 +licenseType: Pro +MonoImporter: + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {fileID: 2800000, guid: 5f2a108eb023faf43a809979fd3d38f2, type: 3} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Runtime/Behaviours/CinemachineFreeLook.cs" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Runtime/Behaviours/CinemachineFreeLook.cs" new file mode 100644 index 00000000..01d0e6c4 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Runtime/Behaviours/CinemachineFreeLook.cs" @@ -0,0 +1,739 @@ +using UnityEngine; +using Cinemachine.Utility; +using UnityEngine.Serialization; +using System; + +namespace Cinemachine +{ + /// + /// A Cinemachine Camera geared towards a 3rd person camera experience. + /// The camera orbits around its subject with three separate camera rigs defining + /// rings around the target. Each rig has its own radius, height offset, composer, + /// and lens settings. + /// Depending on the camera's position along the spline connecting these three rigs, + /// these settings are interpolated to give the final camera position and state. + /// + [DocumentationSorting(DocumentationSortingAttribute.Level.UserRef)] + [DisallowMultipleComponent] +#if UNITY_2018_3_OR_NEWER + [ExecuteAlways] +#else + [ExecuteInEditMode] +#endif + [AddComponentMenu("Cinemachine/CinemachineFreeLook")] + public class CinemachineFreeLook : CinemachineVirtualCameraBase + { + /// Object for the camera children to look at (the aim target) + [Tooltip("Object for the camera children to look at (the aim target).")] + [NoSaveDuringPlay] + public Transform m_LookAt = null; + + /// Object for the camera children wants to move with (the body target) + [Tooltip("Object for the camera children wants to move with (the body target).")] + [NoSaveDuringPlay] + public Transform m_Follow = null; + + /// If enabled, this lens setting will apply to all three child rigs, otherwise the child rig lens settings will be used + [Tooltip("If enabled, this lens setting will apply to all three child rigs, otherwise the child rig lens settings will be used")] + [FormerlySerializedAs("m_UseCommonLensSetting")] + public bool m_CommonLens = true; + + /// Specifies the lens properties of this Virtual Camera. + /// This generally mirrors the Unity Camera's lens settings, and will be used to drive + /// the Unity camera when the vcam is active + [FormerlySerializedAs("m_LensAttributes")] + [Tooltip("Specifies the lens properties of this Virtual Camera. This generally mirrors the Unity Camera's lens settings, and will be used to drive the Unity camera when the vcam is active")] + [LensSettingsProperty] + public LensSettings m_Lens = LensSettings.Default; + + /// Collection of parameters that influence how this virtual camera transitions from + /// other virtual cameras + public TransitionParams m_Transitions; + + /// Legacy support + [SerializeField] [HideInInspector] + [FormerlySerializedAs("m_BlendHint")] + [FormerlySerializedAs("m_PositionBlending")] private BlendHint m_LegacyBlendHint; + + /// The Vertical axis. Value is 0..1. Chooses how to blend the child rigs + [Header("Axis Control")] + [Tooltip("The Vertical axis. Value is 0..1. Chooses how to blend the child rigs")] + [AxisStateProperty] + public AxisState m_YAxis = new AxisState(0, 1, false, true, 2f, 0.2f, 0.1f, "Mouse Y", false); + + /// Controls how automatic recentering of the Y axis is accomplished + [Tooltip("Controls how automatic recentering of the Y axis is accomplished")] + public AxisState.Recentering m_YAxisRecentering = new AxisState.Recentering(false, 1, 2); + + /// The Horizontal axis. Value is -180...180. This is passed on to the rigs' OrbitalTransposer component + [Tooltip("The Horizontal axis. Value is -180...180. This is passed on to the rigs' OrbitalTransposer component")] + [AxisStateProperty] + public AxisState m_XAxis = new AxisState(-180, 180, true, false, 300f, 0.1f, 0.1f, "Mouse X", true); + + /// The definition of Forward. Camera will follow behind + [OrbitalTransposerHeadingProperty] + [Tooltip("The definition of Forward. Camera will follow behind.")] + public CinemachineOrbitalTransposer.Heading m_Heading + = new CinemachineOrbitalTransposer.Heading( + CinemachineOrbitalTransposer.Heading.HeadingDefinition.TargetForward, 4, 0); + + /// Controls how automatic recentering of the X axis is accomplished + [Tooltip("Controls how automatic recentering of the X axis is accomplished")] + public AxisState.Recentering m_RecenterToTargetHeading = new AxisState.Recentering(false, 1, 2); + + /// The coordinate space to use when interpreting the offset from the target + [Header("Orbits")] + [Tooltip("The coordinate space to use when interpreting the offset from the target. This is also used to set the camera's Up vector, which will be maintained when aiming the camera.")] + public CinemachineOrbitalTransposer.BindingMode m_BindingMode + = CinemachineOrbitalTransposer.BindingMode.SimpleFollowWithWorldUp; + + /// + [Tooltip("Controls how taut is the line that connects the rigs' orbits, which determines final placement on the Y axis")] + [Range(0f, 1f)] + [FormerlySerializedAs("m_SplineTension")] + public float m_SplineCurvature = 0.2f; + + /// Defines the height and radius of the Rig orbit + [Serializable] + public struct Orbit + { + /// Height relative to target + public float m_Height; + /// Radius of orbit + public float m_Radius; + /// Constructor with specific values + public Orbit(float h, float r) { m_Height = h; m_Radius = r; } + } + + /// The radius and height of the three orbiting rigs + [Tooltip("The radius and height of the three orbiting rigs.")] + public Orbit[] m_Orbits = new Orbit[3] + { + // These are the default orbits + new Orbit(4.5f, 1.75f), + new Orbit(2.5f, 3f), + new Orbit(0.4f, 1.3f) + }; + + // Legacy support + [SerializeField] [HideInInspector] [FormerlySerializedAs("m_HeadingBias")] + private float m_LegacyHeadingBias = float.MaxValue; + bool mUseLegacyRigDefinitions = false; + + /// Enforce bounds for fields, when changed in inspector. + protected override void OnValidate() + { + base.OnValidate(); + + // Upgrade after a legacy deserialize + if (m_LegacyHeadingBias != float.MaxValue) + { + m_Heading.m_Bias= m_LegacyHeadingBias; + m_LegacyHeadingBias = float.MaxValue; + int heading = (int)m_Heading.m_Definition; + if (m_RecenterToTargetHeading.LegacyUpgrade(ref heading, ref m_Heading.m_VelocityFilterStrength)) + m_Heading.m_Definition = (CinemachineOrbitalTransposer.Heading.HeadingDefinition)heading; + mUseLegacyRigDefinitions = true; + } + if (m_LegacyBlendHint != BlendHint.None) + { + m_Transitions.m_BlendHint = m_LegacyBlendHint; + m_LegacyBlendHint = BlendHint.None; + } + m_YAxis.Validate(); + m_XAxis.Validate(); + m_RecenterToTargetHeading.Validate(); + m_YAxisRecentering.Validate(); + m_Lens.Validate(); + + InvalidateRigCache(); + } + + /// Get a child rig + /// Rig index. Can be 0, 1, or 2 + /// The rig, or null if index is bad. + public CinemachineVirtualCamera GetRig(int i) + { + UpdateRigCache(); + return (i < 0 || i > 2) ? null : m_Rigs[i]; + } + + /// Names of the 3 child rigs + public static string[] RigNames { get { return new string[] { "TopRig", "MiddleRig", "BottomRig" }; } } + + bool mIsDestroyed = false; + + /// Updates the child rig cache + protected override void OnEnable() + { + mIsDestroyed = false; + base.OnEnable(); + InvalidateRigCache(); + } + + /// Makes sure that the child rigs get destroyed in an undo-firndly manner. + /// Invalidates the rig cache. + protected override void OnDestroy() + { + // Make the rigs visible instead of destroying - this is to keep Undo happy + if (m_Rigs != null) + foreach (var rig in m_Rigs) + if (rig != null && rig.gameObject != null) + rig.gameObject.hideFlags + &= ~(HideFlags.HideInHierarchy | HideFlags.HideInInspector); + + mIsDestroyed = true; + base.OnDestroy(); + } + + /// Invalidates the rig cache + void OnTransformChildrenChanged() + { + InvalidateRigCache(); + } + + void Reset() + { + DestroyRigs(); + } + + /// The cacmera state, which will be a blend of the child rig states + override public CameraState State { get { return m_State; } } + + /// Get the current LookAt target. Returns parent's LookAt if parent + /// is non-null and no specific LookAt defined for this camera + override public Transform LookAt + { + get { return ResolveLookAt(m_LookAt); } + set { m_LookAt = value; } + } + + /// Get the current Follow target. Returns parent's Follow if parent + /// is non-null and no specific Follow defined for this camera + override public Transform Follow + { + get { return ResolveFollow(m_Follow); } + set { m_Follow = value; } + } + + /// Check whether the vcam a live child of this camera. + /// Returns true if the child is currently contributing actively to the camera state. + /// The Virtual Camera to check + /// If truw, will only return true if this vcam is the dominat live child + /// True if the vcam is currently actively influencing the state of this vcam + public override bool IsLiveChild(ICinemachineCamera vcam, bool dominantChildOnly = false) + { + // Do not update the rig cache here or there will be infinite loop at creation time + if (m_Rigs == null || m_Rigs.Length != 3) + return false; + var y = GetYAxisValue(); + if (dominantChildOnly) + { + if (vcam == (ICinemachineCamera)m_Rigs[0]) + return y > 0.666f; + if (vcam == (ICinemachineCamera)m_Rigs[2]) + return y < 0.333; + if (vcam == (ICinemachineCamera)m_Rigs[1]) + return y >= 0.333f && y <= 0.666f; + return false; + } + if (vcam == (ICinemachineCamera)m_Rigs[1]) + return true; + if (y < 0.5f) + return vcam == (ICinemachineCamera)m_Rigs[2]; + return vcam == (ICinemachineCamera)m_Rigs[0]; + } + + /// This is called to notify the vcam that a target got warped, + /// so that the vcam can update its internal state to make the camera + /// also warp seamlessy. + /// The object that was warped + /// The amount the target's position changed + public override void OnTargetObjectWarped(Transform target, Vector3 positionDelta) + { + UpdateRigCache(); + if (m_Rigs != null) + foreach (var vcam in m_Rigs) + vcam.OnTargetObjectWarped(target, positionDelta); + base.OnTargetObjectWarped(target, positionDelta); + } + + /// Internal use only. Called by CinemachineCore at designated update time + /// so the vcam can position itself and track its targets. All 3 child rigs are updated, + /// and a blend calculated, depending on the value of the Y axis. + /// Default world Up, set by the CinemachineBrain + /// Delta time for time-based effects (ignore if less than 0) + override public void InternalUpdateCameraState(Vector3 worldUp, float deltaTime) + { + if (!PreviousStateIsValid) + deltaTime = -1; + + UpdateRigCache(); + + // Update the current state by invoking the component pipeline + m_State = CalculateNewState(worldUp, deltaTime); + ApplyPositionBlendMethod(ref m_State, m_Transitions.m_BlendHint); + + // Push the raw position back to the game object's transform, so it + // moves along with the camera. Leave the orientation alone, because it + // screws up camera dragging when there is a LookAt behaviour. + if (Follow != null) + { + Vector3 delta = State.RawPosition - transform.position; + transform.position = State.RawPosition; + m_Rigs[0].transform.position -= delta; + m_Rigs[1].transform.position -= delta; + m_Rigs[2].transform.position -= delta; + } + + InvokePostPipelineStageCallback(this, CinemachineCore.Stage.Finalize, ref m_State, deltaTime); + PreviousStateIsValid = true; + + // Set up for next frame + bool activeCam = (deltaTime >= 0) && CinemachineCore.Instance.IsLive(this); + if (activeCam) + { + if (m_YAxis.Update(deltaTime)) + m_YAxisRecentering.CancelRecentering(); + } + PushSettingsToRigs(); + if (m_BindingMode == CinemachineTransposer.BindingMode.SimpleFollowWithWorldUp) + m_XAxis.Value = 0; + } + + /// If we are transitioning from another FreeLook, grab the axis values from it. + /// The camera being deactivated. May be null. + /// Default world Up, set by the CinemachineBrain + /// Delta time for time-based effects (ignore if less than or equal to 0) + public override void OnTransitionFromCamera( + ICinemachineCamera fromCam, Vector3 worldUp, float deltaTime) + { + base.OnTransitionFromCamera(fromCam, worldUp, deltaTime); + bool forceUpdate = false; + if (fromCam != null && m_Transitions.m_InheritPosition) + { + var cameraPos = fromCam.State.RawPosition; + + // Special handling for FreeLook: get an undamped outgoing position + if (fromCam is CinemachineFreeLook) + { + var flFrom = (fromCam as CinemachineFreeLook); + var orbital = flFrom.mOrbitals != null ? flFrom.mOrbitals[1] : null; + if (orbital != null) + cameraPos = orbital.GetTargetCameraPosition(worldUp); + } + UpdateRigCache(); + if (m_BindingMode != CinemachineTransposer.BindingMode.SimpleFollowWithWorldUp) + m_XAxis.Value = mOrbitals[1].GetAxisClosestValue(cameraPos, worldUp); + m_YAxis.Value = GetYAxisClosestValue(cameraPos, worldUp); + + transform.position = cameraPos; + m_State = PullStateFromVirtualCamera(worldUp, ref m_Lens); + PreviousStateIsValid = false; + PushSettingsToRigs(); + forceUpdate = true; + } + if (forceUpdate) + InternalUpdateCameraState(worldUp, deltaTime); + else + UpdateCameraState(worldUp, deltaTime); + if (m_Transitions.m_OnCameraLive != null) + m_Transitions.m_OnCameraLive.Invoke(this, fromCam); + } + + float GetYAxisClosestValue(Vector3 cameraPos, Vector3 up) + { + if (Follow != null) + { + // Rotate the camera pos to the back + Quaternion q = Quaternion.FromToRotation(up, Vector3.up); + Vector3 dir = q * (cameraPos - Follow.position); + Vector3 flatDir = dir; flatDir.y = 0; + if (!flatDir.AlmostZero()) + { + float angle = Vector3.SignedAngle(flatDir, Vector3.back, Vector3.up); + dir = Quaternion.AngleAxis(angle, Vector3.up) * dir; + } + dir.x = 0; + + // Sample the spline in a few places, find the 2 closest, and lerp + int i0 = 0, i1 = 0; + float a0 = 0, a1 = 0; + const int NumSamples = 13; + float step = 1f / (NumSamples-1); + for (int i = 0; i < NumSamples; ++i) + { + float a = Vector3.SignedAngle( + dir, GetLocalPositionForCameraFromInput(i * step), Vector3.right); + if (i == 0) + a0 = a1 = a; + else + { + if (Mathf.Abs(a) < Mathf.Abs(a0)) + { + a1 = a0; + i1 = i0; + a0 = a; + i0 = i; + } + else if (Mathf.Abs(a) < Mathf.Abs(a1)) + { + a1 = a; + i1 = i; + } + } + } + if (Mathf.Sign(a0) == Mathf.Sign(a1)) + return i0 * step; + float t = Mathf.Abs(a0) / (Mathf.Abs(a0) + Mathf.Abs(a1)); + return Mathf.Lerp(i0 * step, i1 * step, t); + } + return m_YAxis.Value; // stay conservative + } + + CameraState m_State = CameraState.Default; // Current state this frame + + /// Serialized in order to support copy/paste + [SerializeField][HideInInspector][NoSaveDuringPlay] private CinemachineVirtualCamera[] m_Rigs + = new CinemachineVirtualCamera[3]; + + void InvalidateRigCache() { mOrbitals = null; } + CinemachineOrbitalTransposer[] mOrbitals = null; + CinemachineBlend mBlendA; + CinemachineBlend mBlendB; + + /// + /// Override component pipeline creation. + /// This needs to be done by the editor to support Undo. + /// The override must do exactly the same thing as the CreatePipeline method in this class. + /// + public static CreateRigDelegate CreateRigOverride; + + /// + /// Override component pipeline creation. + /// This needs to be done by the editor to support Undo. + /// The override must do exactly the same thing as the CreatePipeline method in this class. + /// + public delegate CinemachineVirtualCamera CreateRigDelegate( + CinemachineFreeLook vcam, string name, CinemachineVirtualCamera copyFrom); + + /// + /// Override component pipeline destruction. + /// This needs to be done by the editor to support Undo. + /// + public static DestroyRigDelegate DestroyRigOverride; + + /// + /// Override component pipeline destruction. + /// This needs to be done by the editor to support Undo. + /// + public delegate void DestroyRigDelegate(GameObject rig); + + private void DestroyRigs() + { + CinemachineVirtualCamera[] oldRigs = new CinemachineVirtualCamera[RigNames.Length]; + for (int i = 0; i < RigNames.Length; ++i) + { + foreach (Transform child in transform) + if (child.gameObject.name == RigNames[i]) + oldRigs[i] = child.GetComponent(); + } + for (int i = 0; i < oldRigs.Length; ++i) + { + if (oldRigs[i] != null) + { + if (DestroyRigOverride != null) + DestroyRigOverride(oldRigs[i].gameObject); + else + Destroy(oldRigs[i].gameObject); + } + } + m_Rigs = null; + mOrbitals = null; + } + + private CinemachineVirtualCamera[] CreateRigs(CinemachineVirtualCamera[] copyFrom) + { + // Invalidate the cache + mOrbitals = null; + float[] softCenterDefaultsV = new float[] { 0.5f, 0.55f, 0.6f }; + CinemachineVirtualCamera[] newRigs = new CinemachineVirtualCamera[3]; + for (int i = 0; i < RigNames.Length; ++i) + { + CinemachineVirtualCamera src = null; + if (copyFrom != null && copyFrom.Length > i) + src = copyFrom[i]; + + if (CreateRigOverride != null) + newRigs[i] = CreateRigOverride(this, RigNames[i], src); + else + { + // Create a new rig with default components + // Note: copyFrom only supported in Editor, not build + GameObject go = new GameObject(RigNames[i]); + go.transform.parent = transform; + newRigs[i] = go.AddComponent(); + go = newRigs[i].GetComponentOwner().gameObject; + go.AddComponent(); + go.AddComponent(); + } + + // Set up the defaults + newRigs[i].InvalidateComponentPipeline(); + CinemachineOrbitalTransposer orbital = newRigs[i].GetCinemachineComponent(); + if (orbital == null) + orbital = newRigs[i].AddCinemachineComponent(); // should not happen + if (src == null) + { + // Only set defaults if not copying + orbital.m_YawDamping = 0; + CinemachineComposer composer = newRigs[i].GetCinemachineComponent(); + if (composer != null) + { + composer.m_HorizontalDamping = composer.m_VerticalDamping = 0; + composer.m_ScreenX = 0.5f; + composer.m_ScreenY = softCenterDefaultsV[i]; + composer.m_DeadZoneWidth = composer.m_DeadZoneHeight = 0f; + composer.m_SoftZoneWidth = composer.m_SoftZoneHeight = 0.8f; + composer.m_BiasX = composer.m_BiasY = 0; + } + } + } + return newRigs; + } + + private void UpdateRigCache() + { + if (mIsDestroyed) + return; + + bool isPrefab = false; + +#if UNITY_EDITOR + // Special condition: Did we just get copy/pasted? + if (m_Rigs != null && m_Rigs.Length == 3 + && m_Rigs[0] != null && m_Rigs[0].transform.parent != transform) + { + isPrefab = gameObject.scene.name == null; // causes a small GC alloc + if (!isPrefab) // can't paste to a prefab + { + var copyFrom = m_Rigs; + DestroyRigs(); + m_Rigs = CreateRigs(copyFrom); + } + } + for (int i = 0; m_Rigs != null && i < 3; ++i) + if (m_Rigs[i] != null) + CinemachineVirtualCamera.SetFlagsForHiddenChild(m_Rigs[i].gameObject); +#endif + + // Early out if we're up to date + if (mOrbitals != null && mOrbitals.Length == 3) + return; + + // Locate existing rigs, and recreate them if any are missing + isPrefab = gameObject.scene.name == null; // causes a small GC alloc + if (LocateExistingRigs(RigNames, false) != 3 && !isPrefab) + { + DestroyRigs(); + m_Rigs = CreateRigs(null); + LocateExistingRigs(RigNames, true); + } + + foreach (var rig in m_Rigs) + { + // Configure the UI + rig.m_ExcludedPropertiesInInspector = m_CommonLens + ? new string[] { "m_Script", "Header", "Extensions", "m_Priority", "m_Transitions", "m_Follow", "m_StandbyUpdate", "m_Lens" } + : new string[] { "m_Script", "Header", "Extensions", "m_Priority", "m_Transitions", "m_Follow", "m_StandbyUpdate" }; + rig.m_LockStageInInspector = new CinemachineCore.Stage[] { CinemachineCore.Stage.Body }; + } + + // Create the blend objects + mBlendA = new CinemachineBlend(m_Rigs[1], m_Rigs[0], AnimationCurve.Linear(0, 0, 1, 1), 1, 0); + mBlendB = new CinemachineBlend(m_Rigs[2], m_Rigs[1], AnimationCurve.Linear(0, 0, 1, 1), 1, 0); + } + + private int LocateExistingRigs(string[] rigNames, bool forceOrbital) + { + mOrbitals = new CinemachineOrbitalTransposer[rigNames.Length]; + m_Rigs = new CinemachineVirtualCamera[rigNames.Length]; + int rigsFound = 0; + foreach (Transform child in transform) + { + CinemachineVirtualCamera vcam = child.GetComponent(); + if (vcam != null) + { + GameObject go = child.gameObject; + for (int i = 0; i < rigNames.Length; ++i) + { + if (mOrbitals[i] == null && go.name == rigNames[i]) + { + // Must have an orbital transposer or it's no good + mOrbitals[i] = vcam.GetCinemachineComponent(); + if (mOrbitals[i] == null && forceOrbital) + mOrbitals[i] = vcam.AddCinemachineComponent(); + if (mOrbitals[i] != null) + { + mOrbitals[i].m_HeadingIsSlave = true; + if (i == 1) + mOrbitals[i].HeadingUpdater = UpdateXAxisHeading; + m_Rigs[i] = vcam; + m_Rigs[i].m_StandbyUpdate = m_StandbyUpdate; + ++rigsFound; + } + } + } + } + } + return rigsFound; + } + + float UpdateXAxisHeading(CinemachineOrbitalTransposer orbital, float deltaTime, Vector3 up) + { + var oldValue = m_XAxis.Value; + float headng = orbital.UpdateHeading(deltaTime, up, ref m_XAxis); + // Allow externally-driven values to work in this mode + if (orbital.m_BindingMode == CinemachineTransposer.BindingMode.SimpleFollowWithWorldUp) + m_XAxis.Value = oldValue; + return headng; + } + + void PushSettingsToRigs() + { + UpdateRigCache(); + for (int i = 0; i < m_Rigs.Length; ++i) + { + if (m_Rigs[i] == null) + continue; + + if (m_CommonLens) + m_Rigs[i].m_Lens = m_Lens; + + // If we just deserialized from a legacy version, + // pull the orbits and targets from the rigs + if (mUseLegacyRigDefinitions) + { + mUseLegacyRigDefinitions = false; + m_Orbits[i].m_Height = mOrbitals[i].m_FollowOffset.y; + m_Orbits[i].m_Radius = -mOrbitals[i].m_FollowOffset.z; + if (m_Rigs[i].Follow != null) + Follow = m_Rigs[i].Follow; + } + m_Rigs[i].Follow = null; + m_Rigs[i].m_StandbyUpdate = m_StandbyUpdate; + if (!PreviousStateIsValid) + { + m_Rigs[i].PreviousStateIsValid = false; + m_Rigs[i].transform.position = transform.position; + m_Rigs[i].transform.rotation = transform.rotation; + } + // Hide the rigs from prying eyes + CinemachineVirtualCamera.SetFlagsForHiddenChild(m_Rigs[i].gameObject); + + mOrbitals[i].m_FollowOffset = GetLocalPositionForCameraFromInput(GetYAxisValue()); + mOrbitals[i].m_BindingMode = m_BindingMode; + mOrbitals[i].m_Heading = m_Heading; + mOrbitals[i].m_XAxis = m_XAxis; + mOrbitals[i].m_RecenterToTargetHeading.m_enabled = (i == 1) ? m_RecenterToTargetHeading.m_enabled : false; + mOrbitals[i].m_RecenterToTargetHeading.m_WaitTime = m_RecenterToTargetHeading.m_WaitTime; + mOrbitals[i].m_RecenterToTargetHeading.m_RecenteringTime = m_RecenterToTargetHeading.m_RecenteringTime; + mOrbitals[i].m_RecenterToTargetHeading.CopyStateFrom(ref m_RecenterToTargetHeading); + + // Hack to get SimpleFollow with heterogeneous dampings to work + if (m_BindingMode == CinemachineTransposer.BindingMode.SimpleFollowWithWorldUp) + m_Rigs[i].SetStateRawPosition(State.RawPosition); + } + } + + private float GetYAxisValue() + { + float range = m_YAxis.m_MaxValue - m_YAxis.m_MinValue; + return (range > UnityVectorExtensions.Epsilon) ? m_YAxis.Value / range : 0.5f; + } + + private CameraState CalculateNewState(Vector3 worldUp, float deltaTime) + { + CameraState state = PullStateFromVirtualCamera(worldUp, ref m_Lens); + + m_YAxisRecentering.DoRecentering(ref m_YAxis, deltaTime, 0.5f); + + // Blend from the appropriate rigs + float t = GetYAxisValue(); + if (t > 0.5f) + { + if (mBlendA != null) + { + mBlendA.TimeInBlend = (t - 0.5f) * 2f; + mBlendA.UpdateCameraState(worldUp, deltaTime); + state = mBlendA.State; + } + } + else + { + if (mBlendB != null) + { + mBlendB.TimeInBlend = t * 2f; + mBlendB.UpdateCameraState(worldUp, deltaTime); + state = mBlendB.State; + } + } + return state; + } + + /// + /// Returns the local position of the camera along the spline used to connect the + /// three camera rigs. Does not take into account the current heading of the + /// camera (or its target) + /// + /// The t-value for the camera on its spline. Internally clamped to + /// the value [0,1] + /// The local offset (back + up) of the camera WRT its target based on the + /// supplied t-value + public Vector3 GetLocalPositionForCameraFromInput(float t) + { + if (mOrbitals == null) + return Vector3.zero; + UpdateCachedSpline(); + int n = 1; + if (t > 0.5f) + { + t -= 0.5f; + n = 2; + } + return SplineHelpers.Bezier3( + t * 2f, m_CachedKnots[n], m_CachedCtrl1[n], m_CachedCtrl2[n], m_CachedKnots[n+1]); + } + + Orbit[] m_CachedOrbits; + float m_CachedTension; + Vector4[] m_CachedKnots; + Vector4[] m_CachedCtrl1; + Vector4[] m_CachedCtrl2; + void UpdateCachedSpline() + { + bool cacheIsValid = (m_CachedOrbits != null && m_CachedTension == m_SplineCurvature); + for (int i = 0; i < 3 && cacheIsValid; ++i) + cacheIsValid = (m_CachedOrbits[i].m_Height == m_Orbits[i].m_Height + && m_CachedOrbits[i].m_Radius == m_Orbits[i].m_Radius); + if (!cacheIsValid) + { + float t = m_SplineCurvature; + m_CachedKnots = new Vector4[5]; + m_CachedCtrl1 = new Vector4[5]; + m_CachedCtrl2 = new Vector4[5]; + m_CachedKnots[1] = new Vector4(0, m_Orbits[2].m_Height, -m_Orbits[2].m_Radius, 0); + m_CachedKnots[2] = new Vector4(0, m_Orbits[1].m_Height, -m_Orbits[1].m_Radius, 0); + m_CachedKnots[3] = new Vector4(0, m_Orbits[0].m_Height, -m_Orbits[0].m_Radius, 0); + m_CachedKnots[0] = Vector4.Lerp(m_CachedKnots[1], Vector4.zero, t); + m_CachedKnots[4] = Vector4.Lerp(m_CachedKnots[3], Vector4.zero, t); + SplineHelpers.ComputeSmoothControlPoints( + ref m_CachedKnots, ref m_CachedCtrl1, ref m_CachedCtrl2); + m_CachedOrbits = new Orbit[3]; + for (int i = 0; i < 3; ++i) + m_CachedOrbits[i] = m_Orbits[i]; + m_CachedTension = m_SplineCurvature; + } + } + } +} diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Runtime/Behaviours/CinemachineFreeLook.cs.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Runtime/Behaviours/CinemachineFreeLook.cs.meta" new file mode 100644 index 00000000..8f3ebe7d --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Runtime/Behaviours/CinemachineFreeLook.cs.meta" @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 319d2fe34a804e245819465c9505ea59 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {fileID: 2800000, guid: 5f2a108eb023faf43a809979fd3d38f2, type: 3} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Runtime/Behaviours/CinemachineMixingCamera.cs" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Runtime/Behaviours/CinemachineMixingCamera.cs" new file mode 100644 index 00000000..1c51501f --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Runtime/Behaviours/CinemachineMixingCamera.cs" @@ -0,0 +1,286 @@ +using UnityEngine; +using Cinemachine.Utility; +using System.Collections.Generic; + +namespace Cinemachine +{ + /// + /// CinemachineMixingCamera is a "manager camera" that takes on the state of + /// the weighted average of the states of its child virtual cameras. + /// + /// A fixed number of slots are made available for cameras, rather than a dynamic array. + /// We do it this way in order to support weight animation from the Timeline. + /// Timeline cannot animate array elements. + /// + [DocumentationSorting(DocumentationSortingAttribute.Level.UserRef)] + [DisallowMultipleComponent] +#if UNITY_2018_3_OR_NEWER + [ExecuteAlways] +#else + [ExecuteInEditMode] +#endif + [AddComponentMenu("Cinemachine/CinemachineMixingCamera")] + public class CinemachineMixingCamera : CinemachineVirtualCameraBase + { + /// The maximum number of tracked cameras. If you want to add + /// more cameras, do it here in the source code, and be sure to add the + /// extra member variables and to make the appropriate changes in + /// GetWeight() and SetWeight(). + /// The inspector will figure itself out based on this value. + public const int MaxCameras = 8; + + /// Weight of the first tracked camera + [Tooltip("The weight of the first tracked camera")] + public float m_Weight0 = 0.5f; + /// Weight of the second tracked camera + [Tooltip("The weight of the second tracked camera")] + public float m_Weight1 = 0.5f; + /// Weight of the third tracked camera + [Tooltip("The weight of the third tracked camera")] + public float m_Weight2 = 0.5f; + /// Weight of the fourth tracked camera + [Tooltip("The weight of the fourth tracked camera")] + public float m_Weight3 = 0.5f; + /// Weight of the fifth tracked camera + [Tooltip("The weight of the fifth tracked camera")] + public float m_Weight4 = 0.5f; + /// Weight of the sixth tracked camera + [Tooltip("The weight of the sixth tracked camera")] + public float m_Weight5 = 0.5f; + /// Weight of the seventh tracked camera + [Tooltip("The weight of the seventh tracked camera")] + public float m_Weight6 = 0.5f; + /// Weight of the eighth tracked camera + [Tooltip("The weight of the eighth tracked camera")] + public float m_Weight7 = 0.5f; + + /// Get the weight of the child at an index. + /// The child index. Only immediate CinemachineVirtualCameraBase + /// children are counted. + /// The weight of the camera. Valid only if camera is active and enabled. + public float GetWeight(int index) + { + switch (index) + { + case 0: return m_Weight0; + case 1: return m_Weight1; + case 2: return m_Weight2; + case 3: return m_Weight3; + case 4: return m_Weight4; + case 5: return m_Weight5; + case 6: return m_Weight6; + case 7: return m_Weight7; + } + Debug.LogError("CinemachineMixingCamera: Invalid index: " + index); + return 0; + } + + /// Set the weight of the child at an index. + /// The child index. Only immediate CinemachineVirtualCameraBase + /// children are counted. + /// The weight to set. Can be any non-negative number. + public void SetWeight(int index, float w) + { + switch (index) + { + case 0: m_Weight0 = w; return; + case 1: m_Weight1 = w; return; + case 2: m_Weight2 = w; return; + case 3: m_Weight3 = w; return; + case 4: m_Weight4 = w; return; + case 5: m_Weight5 = w; return; + case 6: m_Weight6 = w; return; + case 7: m_Weight7 = w; return; + } + Debug.LogError("CinemachineMixingCamera: Invalid index: " + index); + } + + /// Get the weight of the child CinemachineVirtualCameraBase. + /// The child camera. + /// The weight of the camera. Valid only if camera is active and enabled. + public float GetWeight(CinemachineVirtualCameraBase vcam) + { + int index; + if (m_indexMap.TryGetValue(vcam, out index)) + return GetWeight(index); + Debug.LogError("CinemachineMixingCamera: Invalid child: " + + ((vcam != null) ? vcam.Name : "(null)")); + return 0; + } + + /// Set the weight of the child CinemachineVirtualCameraBase. + /// The child camera. + /// The weight to set. Can be any non-negative number. + public void SetWeight(CinemachineVirtualCameraBase vcam, float w) + { + int index; + if (m_indexMap.TryGetValue(vcam, out index)) + SetWeight(index, w); + else + Debug.LogError("CinemachineMixingCamera: Invalid child: " + + ((vcam != null) ? vcam.Name : "(null)")); + } + + /// Blended camera state + private CameraState m_State = CameraState.Default; + + /// Get the current "best" child virtual camera, which is nominally + /// the one with the greatest weight. + private ICinemachineCamera LiveChild { set; get; } + + /// The blended CameraState + public override CameraState State { get { return m_State; } } + + /// Not used + override public Transform LookAt { get; set; } + + /// Not used + override public Transform Follow { get; set; } + + /// This is called to notify the vcam that a target got warped, + /// so that the vcam can update its internal state to make the camera + /// also warp seamlessy. + /// The object that was warped + /// The amount the target's position changed + public override void OnTargetObjectWarped(Transform target, Vector3 positionDelta) + { + ValidateListOfChildren(); + foreach (var vcam in m_ChildCameras) + vcam.OnTargetObjectWarped(target, positionDelta); + base.OnTargetObjectWarped(target, positionDelta); + } + + /// Makes sure the internal child cache is up to date + protected override void OnEnable() + { + base.OnEnable(); + InvalidateListOfChildren(); + } + + /// Makes sure the internal child cache is up to date + public void OnTransformChildrenChanged() + { + InvalidateListOfChildren(); + } + + /// Makes sure the weights are non-negative + protected override void OnValidate() + { + base.OnValidate(); + for (int i = 0; i < MaxCameras; ++i) + SetWeight(i, Mathf.Max(0, GetWeight(i))); + } + + /// Check whether the vcam a live child of this camera. + /// The Virtual Camera to check + /// If truw, will only return true if this vcam is the dominat live child + /// True if the vcam is currently actively influencing the state of this vcam + public override bool IsLiveChild(ICinemachineCamera vcam, bool dominantChildOnly = false) + { + CinemachineVirtualCameraBase[] children = ChildCameras; + for (int i = 0; i < MaxCameras && i < children.Length; ++i) + if ((ICinemachineCamera)children[i] == vcam) + return GetWeight(i) > UnityVectorExtensions.Epsilon && children[i].isActiveAndEnabled; + return false; + } + + private CinemachineVirtualCameraBase[] m_ChildCameras; + private Dictionary m_indexMap; + + /// Get the cached list of child cameras. + /// These are just the immediate children in the hierarchy. + /// Note: only the first entries of this list participate in the + /// final blend, up to MaxCameras + public CinemachineVirtualCameraBase[] ChildCameras + { + get { ValidateListOfChildren(); return m_ChildCameras; } + } + + /// Invalidate the cached list of child cameras. + protected void InvalidateListOfChildren() + { + m_ChildCameras = null; + m_indexMap = null; + LiveChild = null; + } + + /// Rebuild the cached list of child cameras. + protected void ValidateListOfChildren() + { + if (m_ChildCameras != null) + return; + + m_indexMap = new Dictionary(); + List list = new List(); + CinemachineVirtualCameraBase[] kids + = GetComponentsInChildren(true); + foreach (CinemachineVirtualCameraBase k in kids) + { + if (k.transform.parent == transform) + { + int index = list.Count; + list.Add(k); + if (index < MaxCameras) + m_indexMap.Add(k, index); + } + } + m_ChildCameras = list.ToArray(); + } + + /// Notification that this virtual camera is going live. + /// The camera being deactivated. May be null. + /// Default world Up, set by the CinemachineBrain + /// Delta time for time-based effects (ignore if less than or equal to 0) + public override void OnTransitionFromCamera( + ICinemachineCamera fromCam, Vector3 worldUp, float deltaTime) + { + base.OnTransitionFromCamera(fromCam, worldUp, deltaTime); + CinemachineVirtualCameraBase[] children = ChildCameras; + for (int i = 0; i < MaxCameras && i < children.Length; ++i) + { + CinemachineVirtualCameraBase vcam = children[i]; + if (vcam.isActiveAndEnabled && GetWeight(i) > UnityVectorExtensions.Epsilon) + vcam.OnTransitionFromCamera(fromCam, worldUp, deltaTime); + } + InternalUpdateCameraState(worldUp, deltaTime); + } + + /// Internal use only. Do not call this methid. + /// Called by CinemachineCore at designated update time + /// so the vcam can position itself and track its targets. This implementation + /// computes and caches the weighted blend of the tracked cameras. + /// Default world Up, set by the CinemachineBrain + /// Delta time for time-based effects (ignore if less than 0) + public override void InternalUpdateCameraState(Vector3 worldUp, float deltaTime) + { + CinemachineVirtualCameraBase[] children = ChildCameras; + LiveChild = null; + float highestWeight = 0; + float totalWeight = 0; + for (int i = 0; i < MaxCameras && i < children.Length; ++i) + { + CinemachineVirtualCameraBase vcam = children[i]; + if (vcam.isActiveAndEnabled) + { + float weight = Mathf.Max(0, GetWeight(i)); + if (weight > UnityVectorExtensions.Epsilon) + { + totalWeight += weight; + if (totalWeight == weight) + m_State = vcam.State; + else + m_State = CameraState.Lerp(m_State, vcam.State, weight / totalWeight); + + if (weight > highestWeight) + { + highestWeight = weight; + LiveChild = vcam; + } + } + } + } + InvokePostPipelineStageCallback( + this, CinemachineCore.Stage.Finalize, ref m_State, deltaTime); + } + } +} diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Runtime/Behaviours/CinemachineMixingCamera.cs.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Runtime/Behaviours/CinemachineMixingCamera.cs.meta" new file mode 100644 index 00000000..3457ffbc --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Runtime/Behaviours/CinemachineMixingCamera.cs.meta" @@ -0,0 +1,12 @@ +fileFormatVersion: 2 +guid: 6c26251a3e1f5ac41afa5ffb404c5f71 +timeCreated: 1502201564 +licenseType: Pro +MonoImporter: + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {fileID: 2800000, guid: 5f2a108eb023faf43a809979fd3d38f2, type: 3} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Runtime/Behaviours/CinemachinePath.cs" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Runtime/Behaviours/CinemachinePath.cs" new file mode 100644 index 00000000..66dab735 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Runtime/Behaviours/CinemachinePath.cs" @@ -0,0 +1,180 @@ +using UnityEngine; +using System; +using Cinemachine.Utility; + +namespace Cinemachine +{ + /// Defines a world-space path, consisting of an array of waypoints, + /// each of which has position, tangent, and roll settings. Bezier interpolation + /// is performed between the waypoints, to get a smooth and continuous path. + [DocumentationSorting(DocumentationSortingAttribute.Level.UserRef)] + [AddComponentMenu("Cinemachine/CinemachinePath")] + [SaveDuringPlay] + public class CinemachinePath : CinemachinePathBase + { + /// A waypoint along the path + [DocumentationSorting(DocumentationSortingAttribute.Level.UserRef)] + [Serializable] public struct Waypoint + { + /// Position in path-local space + [Tooltip("Position in path-local space")] + public Vector3 position; + + /// Offset from the position, which defines the tangent of the curve at the waypoint. + /// The length of the tangent encodes the strength of the bezier handle. + /// The same handle is used symmetrically on both sides of the waypoint, to ensure smoothness. + [Tooltip("Offset from the position, which defines the tangent of the curve at the waypoint. The length of the tangent encodes the strength of the bezier handle. The same handle is used symmetrically on both sides of the waypoint, to ensure smoothness.")] + public Vector3 tangent; + + /// Defines the roll of the path at this waypoint. + /// The other orientation axes are inferred from the tangent and world up. + [Tooltip("Defines the roll of the path at this waypoint. The other orientation axes are inferred from the tangent and world up.")] + public float roll; + } + + /// If checked, then the path ends are joined to form a continuous loop + [Tooltip("If checked, then the path ends are joined to form a continuous loop.")] + public bool m_Looped; + + /// The waypoints that define the path. + /// They will be interpolated using a bezier curve + [Tooltip("The waypoints that define the path. They will be interpolated using a bezier curve.")] + public Waypoint[] m_Waypoints = new Waypoint[0]; + + /// The minimum value for the path position + public override float MinPos { get { return 0; } } + + /// The maximum value for the path position + public override float MaxPos + { + get + { + int count = m_Waypoints.Length - 1; + if (count < 1) + return 0; + return m_Looped ? count + 1 : count; + } + } + /// True if the path ends are joined to form a continuous loop + public override bool Looped { get { return m_Looped; } } + + /// When calculating the distance cache, sample the path this many + /// times between points + public override int DistanceCacheSampleStepsPerSegment { get { return m_Resolution; } } + + /// Returns normalized position + float GetBoundingIndices(float pos, out int indexA, out int indexB) + { + pos = StandardizePos(pos); + int rounded = Mathf.RoundToInt(pos); + if (Mathf.Abs(pos - rounded) < UnityVectorExtensions.Epsilon) + indexA = indexB = (rounded == m_Waypoints.Length) ? 0 : rounded; + else + { + indexA = Mathf.FloorToInt(pos); + if (indexA >= m_Waypoints.Length) + { + pos -= MaxPos; + indexA = 0; + } + indexB = Mathf.CeilToInt(pos); + if (indexB >= m_Waypoints.Length) + indexB = 0; + } + return pos; + } + + /// Get a worldspace position of a point along the path + /// Postion along the path. Need not be normalized. + /// World-space position of the point along at path at pos + public override Vector3 EvaluatePosition(float pos) + { + Vector3 result = new Vector3(); + if (m_Waypoints.Length == 0) + result = transform.position; + else + { + int indexA, indexB; + pos = GetBoundingIndices(pos, out indexA, out indexB); + if (indexA == indexB) + result = m_Waypoints[indexA].position; + else + { + // interpolate + Waypoint wpA = m_Waypoints[indexA]; + Waypoint wpB = m_Waypoints[indexB]; + result = SplineHelpers.Bezier3(pos - indexA, + m_Waypoints[indexA].position, wpA.position + wpA.tangent, + wpB.position - wpB.tangent, wpB.position); + } + } + return transform.TransformPoint(result); + } + + /// Get the tangent of the curve at a point along the path. + /// Postion along the path. Need not be normalized. + /// World-space direction of the path tangent. + /// Length of the vector represents the tangent strength + public override Vector3 EvaluateTangent(float pos) + { + Vector3 result = new Vector3(); + if (m_Waypoints.Length == 0) + result = transform.rotation * Vector3.forward; + else + { + int indexA, indexB; + pos = GetBoundingIndices(pos, out indexA, out indexB); + if (indexA == indexB) + result = m_Waypoints[indexA].tangent; + else + { + Waypoint wpA = m_Waypoints[indexA]; + Waypoint wpB = m_Waypoints[indexB]; + result = SplineHelpers.BezierTangent3(pos - indexA, + m_Waypoints[indexA].position, wpA.position + wpA.tangent, + wpB.position - wpB.tangent, wpB.position); + } + } + return transform.TransformDirection(result); + } + + /// Get the orientation the curve at a point along the path. + /// Postion along the path. Need not be normalized. + /// World-space orientation of the path, as defined by tangent, up, and roll. + public override Quaternion EvaluateOrientation(float pos) + { + Quaternion result = transform.rotation; + if (m_Waypoints.Length > 0) + { + float roll = 0; + int indexA, indexB; + pos = GetBoundingIndices(pos, out indexA, out indexB); + if (indexA == indexB) + roll = m_Waypoints[indexA].roll; + else + { + float rollA = m_Waypoints[indexA].roll; + float rollB = m_Waypoints[indexB].roll; + if (indexB == 0) + { + // Special handling at the wraparound - cancel the spins + rollA = rollA % 360; + rollB = rollB % 360; + } + roll = Mathf.Lerp(rollA, rollB, pos - indexA); + } + + Vector3 fwd = EvaluateTangent(pos); + if (!fwd.AlmostZero()) + { + Vector3 up = transform.rotation * Vector3.up; + Quaternion q = Quaternion.LookRotation(fwd, up); + result = q * Quaternion.AngleAxis(roll, Vector3.forward); + } + } + return result; + } + + private void OnValidate() { InvalidateDistanceCache(); } + } +} diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Runtime/Behaviours/CinemachinePath.cs.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Runtime/Behaviours/CinemachinePath.cs.meta" new file mode 100644 index 00000000..740fb74a --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Runtime/Behaviours/CinemachinePath.cs.meta" @@ -0,0 +1,12 @@ +fileFormatVersion: 2 +guid: 2d37e5385efd7064cb1d54c94960acae +timeCreated: 1496785107 +licenseType: Pro +MonoImporter: + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Runtime/Behaviours/CinemachinePipeline.cs" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Runtime/Behaviours/CinemachinePipeline.cs" new file mode 100644 index 00000000..5474e7c6 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Runtime/Behaviours/CinemachinePipeline.cs" @@ -0,0 +1,12 @@ +using UnityEngine; + +namespace Cinemachine +{ + /// + /// Internal container for CinemachineComponentBase. Does nothing but contain. + /// + [AddComponentMenu("")] // Don't display in add component menu + public sealed class CinemachinePipeline : MonoBehaviour + { + } +} diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Runtime/Behaviours/CinemachinePipeline.cs.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Runtime/Behaviours/CinemachinePipeline.cs.meta" new file mode 100644 index 00000000..91114637 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Runtime/Behaviours/CinemachinePipeline.cs.meta" @@ -0,0 +1,12 @@ +fileFormatVersion: 2 +guid: ac0b09e7857660247b1477e93731de29 +timeCreated: 1489088253 +licenseType: Pro +MonoImporter: + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {fileID: 2800000, guid: 5f2a108eb023faf43a809979fd3d38f2, type: 3} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Runtime/Behaviours/CinemachineSmoothPath.cs" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Runtime/Behaviours/CinemachineSmoothPath.cs" new file mode 100644 index 00000000..deb0a0a1 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Runtime/Behaviours/CinemachineSmoothPath.cs" @@ -0,0 +1,224 @@ +using UnityEngine; +using System; +using Cinemachine.Utility; + +namespace Cinemachine +{ + /// Defines a world-space path, consisting of an array of waypoints, + /// each of which has position and roll settings. Bezier interpolation + /// is performed between the waypoints, to get a smooth and continuous path. + /// The path will pass through all waypoints, and (unlike CinemachinePath) first + /// and second order continuity is guaranteed + [DocumentationSorting(DocumentationSortingAttribute.Level.UserRef)] + [AddComponentMenu("Cinemachine/CinemachineSmoothPath")] + [SaveDuringPlay] + public class CinemachineSmoothPath : CinemachinePathBase + { + /// If checked, then the path ends are joined to form a continuous loop + [Tooltip("If checked, then the path ends are joined to form a continuous loop.")] + public bool m_Looped; + + /// A waypoint along the path + [DocumentationSorting(DocumentationSortingAttribute.Level.UserRef)] + [Serializable] public struct Waypoint + { + /// Position in path-local space + [Tooltip("Position in path-local space")] + public Vector3 position; + + /// Defines the roll of the path at this waypoint. + /// The other orientation axes are inferred from the tangent and world up. + [Tooltip("Defines the roll of the path at this waypoint. The other orientation axes are inferred from the tangent and world up.")] + public float roll; + + /// Representation as Vector4 + internal Vector4 AsVector4 + { + get { return new Vector4(position.x, position.y, position.z, roll); } + } + + internal static Waypoint FromVector4(Vector4 v) + { + Waypoint wp = new Waypoint(); + wp.position = new Vector3(v[0], v[1], v[2]); + wp.roll = v[3]; + return wp; + } + } + + /// The waypoints that define the path. + /// They will be interpolated using a bezier curve + [Tooltip("The waypoints that define the path. They will be interpolated using a bezier curve.")] + public Waypoint[] m_Waypoints = new Waypoint[0]; + + /// The minimum value for the path position + public override float MinPos { get { return 0; } } + + /// The maximum value for the path position + public override float MaxPos + { + get + { + int count = m_Waypoints.Length - 1; + if (count < 1) + return 0; + return m_Looped ? count + 1 : count; + } + } + /// True if the path ends are joined to form a continuous loop + public override bool Looped { get { return m_Looped; } } + + /// When calculating the distance cache, sample the path this many + /// times between points + public override int DistanceCacheSampleStepsPerSegment { get { return m_Resolution; } } + + private void OnValidate() { InvalidateDistanceCache(); } + + /// Call this if the path changes in such a way as to affect distances + /// or other cached path elements + public override void InvalidateDistanceCache() + { + base.InvalidateDistanceCache(); + m_ControlPoints1 = null; + m_ControlPoints2 = null; + } + + Waypoint[] m_ControlPoints1; + Waypoint[] m_ControlPoints2; + bool m_IsLoopedCache; + + void UpdateControlPoints() + { + int numPoints = (m_Waypoints == null) ? 0 : m_Waypoints.Length; + if (numPoints > 1 + && (Looped != m_IsLoopedCache + || m_ControlPoints1 == null || m_ControlPoints1.Length != numPoints + || m_ControlPoints2 == null || m_ControlPoints2.Length != numPoints)) + { + Vector4[] p1 = new Vector4[numPoints]; + Vector4[] p2 = new Vector4[numPoints]; + Vector4[] K = new Vector4[numPoints]; + for (int i = 0; i < numPoints; ++i) + K[i] = m_Waypoints[i].AsVector4; + if (Looped) + SplineHelpers.ComputeSmoothControlPointsLooped(ref K, ref p1, ref p2); + else + SplineHelpers.ComputeSmoothControlPoints(ref K, ref p1, ref p2); + + m_ControlPoints1 = new Waypoint[numPoints]; + m_ControlPoints2 = new Waypoint[numPoints]; + for (int i = 0; i < numPoints; ++i) + { + m_ControlPoints1[i] = Waypoint.FromVector4(p1[i]); + m_ControlPoints2[i] = Waypoint.FromVector4(p2[i]); + } + m_IsLoopedCache = Looped; + } + } + + /// Returns standardized position + float GetBoundingIndices(float pos, out int indexA, out int indexB) + { + pos = StandardizePos(pos); + int numWaypoints = m_Waypoints.Length; + if (numWaypoints < 2) + indexA = indexB = 0; + else + { + indexA = Mathf.FloorToInt(pos); + if (indexA >= numWaypoints) + { + // Only true if looped + pos -= MaxPos; + indexA = 0; + } + indexB = indexA + 1; + if (indexB == numWaypoints) + { + if (Looped) + indexB = 0; + else + { + --indexB; + --indexA; + } + } + } + return pos; + } + + /// Get a worldspace position of a point along the path + /// Postion along the path. Need not be normalized. + /// World-space position of the point along at path at pos + public override Vector3 EvaluatePosition(float pos) + { + Vector3 result = Vector3.zero; + if (m_Waypoints.Length > 0) + { + UpdateControlPoints(); + int indexA, indexB; + pos = GetBoundingIndices(pos, out indexA, out indexB); + if (indexA == indexB) + result = m_Waypoints[indexA].position; + else + result = SplineHelpers.Bezier3(pos - indexA, + m_Waypoints[indexA].position, m_ControlPoints1[indexA].position, + m_ControlPoints2[indexA].position, m_Waypoints[indexB].position); + } + return transform.TransformPoint(result); + } + + /// Get the tangent of the curve at a point along the path. + /// Postion along the path. Need not be normalized. + /// World-space direction of the path tangent. + /// Length of the vector represents the tangent strength + public override Vector3 EvaluateTangent(float pos) + { + Vector3 result = transform.rotation * Vector3.forward; + if (m_Waypoints.Length > 1) + { + UpdateControlPoints(); + int indexA, indexB; + pos = GetBoundingIndices(pos, out indexA, out indexB); + if (!Looped && indexA == m_Waypoints.Length - 1) + --indexA; + result = SplineHelpers.BezierTangent3(pos - indexA, + m_Waypoints[indexA].position, m_ControlPoints1[indexA].position, + m_ControlPoints2[indexA].position, m_Waypoints[indexB].position); + } + return transform.TransformDirection(result); + } + + /// Get the orientation the curve at a point along the path. + /// Postion along the path. Need not be normalized. + /// World-space orientation of the path, as defined by tangent, up, and roll. + public override Quaternion EvaluateOrientation(float pos) + { + Quaternion result = transform.rotation; + if (m_Waypoints.Length > 0) + { + float roll = 0; + int indexA, indexB; + pos = GetBoundingIndices(pos, out indexA, out indexB); + if (indexA == indexB) + roll = m_Waypoints[indexA].roll; + else + { + UpdateControlPoints(); + roll = SplineHelpers.Bezier1(pos - indexA, + m_Waypoints[indexA].roll, m_ControlPoints1[indexA].roll, + m_ControlPoints2[indexA].roll, m_Waypoints[indexB].roll); + } + + Vector3 fwd = EvaluateTangent(pos); + if (!fwd.AlmostZero()) + { + Vector3 up = transform.rotation * Vector3.up; + Quaternion q = Quaternion.LookRotation(fwd, up); + result = q * Quaternion.AngleAxis(roll, Vector3.forward); + } + } + return result; + } + } +} diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Runtime/Behaviours/CinemachineSmoothPath.cs.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Runtime/Behaviours/CinemachineSmoothPath.cs.meta" new file mode 100644 index 00000000..5f636ed5 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Runtime/Behaviours/CinemachineSmoothPath.cs.meta" @@ -0,0 +1,12 @@ +fileFormatVersion: 2 +guid: a200b19ca1a9685429ed7e043c28e904 +timeCreated: 1505831686 +licenseType: Pro +MonoImporter: + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Runtime/Behaviours/CinemachineStateDrivenCamera.cs" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Runtime/Behaviours/CinemachineStateDrivenCamera.cs" new file mode 100644 index 00000000..0ea12954 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Runtime/Behaviours/CinemachineStateDrivenCamera.cs" @@ -0,0 +1,537 @@ +using Cinemachine.Utility; +using System; +using System.Collections.Generic; +using UnityEngine; + +namespace Cinemachine +{ + /// + /// This is a virtual camera "manager" that owns and manages a collection + /// of child Virtual Cameras. These child vcams are mapped to individual states in + /// an animation state machine, allowing you to associate specific vcams to specific + /// animation states. When that state is active in the state machine, then the + /// associated camera will be activated. + /// + /// You can define custom blends and transitions between child cameras. + /// + /// In order to use this behaviour, you must have an animated target (i.e. an object + /// animated with a state machine) to drive the behaviour. + /// + [DocumentationSorting(DocumentationSortingAttribute.Level.UserRef)] + [DisallowMultipleComponent] +#if UNITY_2018_3_OR_NEWER + [ExecuteAlways] +#else + [ExecuteInEditMode] +#endif + [AddComponentMenu("Cinemachine/CinemachineStateDrivenCamera")] + public class CinemachineStateDrivenCamera : CinemachineVirtualCameraBase + { + /// Default object for the camera children to look at (the aim target), if not specified in a child rig. May be empty + [Tooltip("Default object for the camera children to look at (the aim target), if not specified in a child camera. May be empty if all of the children define targets of their own.")] + [NoSaveDuringPlay] + public Transform m_LookAt = null; + + /// Default object for the camera children wants to move with (the body target), if not specified in a child rig. May be empty + [Tooltip("Default object for the camera children wants to move with (the body target), if not specified in a child camera. May be empty if all of the children define targets of their own.")] + [NoSaveDuringPlay] + public Transform m_Follow = null; + + /// The state machine whose state changes will drive this camera's choice of active child + [Space] + [Tooltip("The state machine whose state changes will drive this camera's choice of active child")] + [NoSaveDuringPlay] + public Animator m_AnimatedTarget; + + /// Which layer in the target FSM to observe + [Tooltip("Which layer in the target state machine to observe")] + [NoSaveDuringPlay] + public int m_LayerIndex; + + /// When enabled, the current camera and blend will be indicated in the game window, for debugging + [Tooltip("When enabled, the current child camera and blend will be indicated in the game window, for debugging")] + public bool m_ShowDebugText = false; + + /// Internal API for the editor. Do not use this field + [SerializeField][HideInInspector][NoSaveDuringPlay] + internal CinemachineVirtualCameraBase[] m_ChildCameras = null; + + /// This represents a single instrunction to the StateDrivenCamera. It associates + /// an state from the state machine with a child Virtual Camera, and also holds + /// activation tuning parameters. + [Serializable] + public struct Instruction + { + /// The full hash of the animation state + [Tooltip("The full hash of the animation state")] + public int m_FullHash; + /// The virtual camera to activate whrn the animation state becomes active + [Tooltip("The virtual camera to activate whrn the animation state becomes active")] + public CinemachineVirtualCameraBase m_VirtualCamera; + /// How long to wait (in seconds) before activating the virtual camera. + /// This filters out very short state durations + [Tooltip("How long to wait (in seconds) before activating the virtual camera. This filters out very short state durations")] + public float m_ActivateAfter; + /// The minimum length of time (in seconds) to keep a virtual camera active + [Tooltip("The minimum length of time (in seconds) to keep a virtual camera active")] + public float m_MinDuration; + }; + + /// The set of instructions associating virtual cameras with states. + /// These instructions are used to choose the live child at any given moment + [Tooltip("The set of instructions associating virtual cameras with states. These instructions are used to choose the live child at any given moment")] + public Instruction[] m_Instructions; + + /// + /// The blend which is used if you don't explicitly define a blend between two Virtual Camera children. + /// + [CinemachineBlendDefinitionProperty] + [Tooltip("The blend which is used if you don't explicitly define a blend between two Virtual Camera children")] + public CinemachineBlendDefinition m_DefaultBlend + = new CinemachineBlendDefinition(CinemachineBlendDefinition.Style.EaseInOut, 0.5f); + + /// + /// This is the asset which contains custom settings for specific child blends. + /// + [Tooltip("This is the asset which contains custom settings for specific child blends")] + public CinemachineBlenderSettings m_CustomBlends = null; + + /// Internal API for the Inspector editor. This implements nested states. + [Serializable] + [DocumentationSorting(DocumentationSortingAttribute.Level.Undoc)] + internal struct ParentHash + { + /// Internal API for the Inspector editor + public int m_Hash; + /// Internal API for the Inspector editor + public int m_ParentHash; + /// Internal API for the Inspector editor + public ParentHash(int h, int p) { m_Hash = h; m_ParentHash = p; } + } + /// Internal API for the Inspector editor + [HideInInspector][SerializeField] internal ParentHash[] m_ParentHash = null; + + /// Gets a brief debug description of this virtual camera, for use when displayiong debug info + public override string Description + { + get + { + // Show the active camera and blend + if (mActiveBlend != null) + return mActiveBlend.Description; + + ICinemachineCamera vcam = LiveChild; + if (vcam == null) + return "(none)"; + var sb = CinemachineDebug.SBFromPool(); + sb.Append("["); sb.Append(vcam.Name); sb.Append("]"); + string text = sb.ToString(); + CinemachineDebug.ReturnToPool(sb); + return text; + } + } + + /// Get the current "best" child virtual camera, that would be chosen + /// if the State Driven Camera were active. + public ICinemachineCamera LiveChild { set; get; } + + /// Check whether the vcam a live child of this camera. + /// The Virtual Camera to check + /// If truw, will only return true if this vcam is the dominat live child + /// True if the vcam is currently actively influencing the state of this vcam + public override bool IsLiveChild(ICinemachineCamera vcam, bool dominantChildOnly = false) + { + return vcam == LiveChild || (mActiveBlend != null && mActiveBlend.Uses(vcam)); + } + + /// The State of the current live child + public override CameraState State { get { return m_State; } } + + /// Get the current LookAt target. Returns parent's LookAt if parent + /// is non-null and no specific LookAt defined for this camera + override public Transform LookAt + { + get { return ResolveLookAt(m_LookAt); } + set { m_LookAt = value; } + } + + /// Get the current Follow target. Returns parent's Follow if parent + /// is non-null and no specific Follow defined for this camera + override public Transform Follow + { + get { return ResolveFollow(m_Follow); } + set { m_Follow = value; } + } + + /// This is called to notify the vcam that a target got warped, + /// so that the vcam can update its internal state to make the camera + /// also warp seamlessy. + /// The object that was warped + /// The amount the target's position changed + public override void OnTargetObjectWarped(Transform target, Vector3 positionDelta) + { + UpdateListOfChildren(); + foreach (var vcam in m_ChildCameras) + vcam.OnTargetObjectWarped(target, positionDelta); + base.OnTargetObjectWarped(target, positionDelta); + } + + /// Notification that this virtual camera is going live. + /// The camera being deactivated. May be null. + /// Default world Up, set by the CinemachineBrain + /// Delta time for time-based effects (ignore if less than or equal to 0) + public override void OnTransitionFromCamera( + ICinemachineCamera fromCam, Vector3 worldUp, float deltaTime) + { + base.OnTransitionFromCamera(fromCam, worldUp, deltaTime); + TransitioningFrom = fromCam; + InternalUpdateCameraState(worldUp, deltaTime); + } + + ICinemachineCamera TransitioningFrom { get; set; } + + /// Internal use only. Do not call this method. + /// Called by CinemachineCore at designated update time + /// so the vcam can position itself and track its targets. This implementation + /// updates all the children, chooses the best one, and implements any required blending. + /// Default world Up, set by the CinemachineBrain + /// Delta time for time-based effects (ignore if less than or equal to 0) + public override void InternalUpdateCameraState(Vector3 worldUp, float deltaTime) + { + if (!PreviousStateIsValid) + deltaTime = -1; + + UpdateListOfChildren(); + CinemachineVirtualCameraBase best = ChooseCurrentCamera(deltaTime); + if (best != null && !best.gameObject.activeInHierarchy) + { + best.gameObject.SetActive(true); + best.UpdateCameraState(worldUp, deltaTime); + } + + ICinemachineCamera previousCam = LiveChild; + LiveChild = best; + + // Are we transitioning cameras? + if (previousCam != LiveChild && LiveChild != null) + { + // Notify incoming camera of transition + LiveChild.OnTransitionFromCamera(previousCam, worldUp, deltaTime); + + // Generate Camera Activation event in the brain if live + CinemachineCore.Instance.GenerateCameraActivationEvent(LiveChild, previousCam); + + if (previousCam != null) + { + // Create a blend (will be null if a cut) + mActiveBlend = CreateBlend( + previousCam, LiveChild, + LookupBlend(previousCam, LiveChild), mActiveBlend); + + // If cutting, generate a camera cut event if live + if (mActiveBlend == null || !mActiveBlend.Uses(previousCam)) + CinemachineCore.Instance.GenerateCameraCutEvent(LiveChild); + } + } + + // Advance the current blend (if any) + if (mActiveBlend != null) + { + mActiveBlend.TimeInBlend += (deltaTime >= 0) + ? deltaTime : mActiveBlend.Duration; + if (mActiveBlend.IsComplete) + mActiveBlend = null; + } + + if (mActiveBlend != null) + { + mActiveBlend.UpdateCameraState(worldUp, deltaTime); + m_State = mActiveBlend.State; + } + else if (LiveChild != null) + { + if (TransitioningFrom != null) + LiveChild.OnTransitionFromCamera(TransitioningFrom, worldUp, deltaTime); + m_State = LiveChild.State; + } + TransitioningFrom = null; + InvokePostPipelineStageCallback(this, CinemachineCore.Stage.Finalize, ref m_State, deltaTime); + PreviousStateIsValid = true; + } + + /// Makes sure the internal child cache is up to date + protected override void OnEnable() + { + base.OnEnable(); + InvalidateListOfChildren(); + mActiveBlend = null; + CinemachineDebug.OnGUIHandlers -= OnGuiHandler; + CinemachineDebug.OnGUIHandlers += OnGuiHandler; + } + + protected override void OnDisable() + { + base.OnDisable(); + CinemachineDebug.OnGUIHandlers -= OnGuiHandler; + } + + /// Makes sure the internal child cache is up to date + public void OnTransformChildrenChanged() + { + InvalidateListOfChildren(); + } + + /// Will only be called if Unity Editor - never in build + private void OnGuiHandler() + { + if (!m_ShowDebugText) + CinemachineDebug.ReleaseScreenPos(this); + else + { + var sb = CinemachineDebug.SBFromPool(); + sb.Append(Name); sb.Append(": "); sb.Append(Description); + string text = sb.ToString(); + Rect r = CinemachineDebug.GetScreenPos(this, text, GUI.skin.box); + GUI.Label(r, text, GUI.skin.box); + CinemachineDebug.ReturnToPool(sb); + } + } + + CameraState m_State = CameraState.Default; + + /// The list of child cameras. These are just the immediate children in the hierarchy. + public CinemachineVirtualCameraBase[] ChildCameras { get { UpdateListOfChildren(); return m_ChildCameras; }} + + /// Is there a blend in progress? + public bool IsBlending { get { return mActiveBlend != null; } } + + /// API for the inspector editor. Animation module does not have hashes + /// for state parents, so we have to invent them in order to implement nested state + /// handling + public static int CreateFakeHash(int parentHash, AnimationClip clip) + { + return Animator.StringToHash(parentHash.ToString() + "_" + clip.name); + } + + // Avoid garbage string manipulations at runtime + struct HashPair { public int parentHash; public int hash; } + Dictionary> mHashCache; + int LookupFakeHash(int parentHash, AnimationClip clip) + { + if (mHashCache == null) + mHashCache = new Dictionary>(); + List list = null; + if (!mHashCache.TryGetValue(clip, out list)) + { + list = new List(); + mHashCache[clip] = list; + } + for (int i = 0; i < list.Count; ++i) + if (list[i].parentHash == parentHash) + return list[i].hash; + int newHash = CreateFakeHash(parentHash, clip); + list.Add(new HashPair() { parentHash = parentHash, hash = newHash }); + return newHash; + } + + + float mActivationTime = 0; + Instruction mActiveInstruction; + float mPendingActivationTime = 0; + Instruction mPendingInstruction; + private CinemachineBlend mActiveBlend = null; + + void InvalidateListOfChildren() { m_ChildCameras = null; LiveChild = null; } + + void UpdateListOfChildren() + { + if (m_ChildCameras != null && mInstructionDictionary != null && mStateParentLookup != null) + return; + List list = new List(); + CinemachineVirtualCameraBase[] kids = GetComponentsInChildren(true); + foreach (CinemachineVirtualCameraBase k in kids) + if (k.transform.parent == transform) + list.Add(k); + m_ChildCameras = list.ToArray(); + ValidateInstructions(); + } + + private Dictionary mInstructionDictionary; + private Dictionary mStateParentLookup; + /// Internal API for the inspector editor. + internal void ValidateInstructions() + { + if (m_Instructions == null) + m_Instructions = new Instruction[0]; + mInstructionDictionary = new Dictionary(); + for (int i = 0; i < m_Instructions.Length; ++i) + { + if (m_Instructions[i].m_VirtualCamera != null + && m_Instructions[i].m_VirtualCamera.transform.parent != transform) + { + m_Instructions[i].m_VirtualCamera = null; + } + mInstructionDictionary[m_Instructions[i].m_FullHash] = i; + } + + // Create the parent lookup + mStateParentLookup = new Dictionary(); + if (m_ParentHash != null) + foreach (var i in m_ParentHash) + mStateParentLookup[i.m_Hash] = i.m_ParentHash; + + // Zap the cached current instructions + mActivationTime = mPendingActivationTime = 0; + mActiveBlend = null; + } + + List m_clipInfoList = new List(); + private CinemachineVirtualCameraBase ChooseCurrentCamera(float deltaTime) + { + if (m_ChildCameras == null || m_ChildCameras.Length == 0) + { + mActivationTime = 0; + return null; + } + CinemachineVirtualCameraBase defaultCam = m_ChildCameras[0]; + if (m_AnimatedTarget == null || !m_AnimatedTarget.gameObject.activeSelf + || m_AnimatedTarget.runtimeAnimatorController == null + || m_LayerIndex < 0 || !m_AnimatedTarget.hasBoundPlayables + || m_LayerIndex >= m_AnimatedTarget.layerCount) + { + mActivationTime = 0; + return defaultCam; + } + + // Get the current state + int hash; + if (m_AnimatedTarget.IsInTransition(m_LayerIndex)) + { + // Force "current" state to be the state we're transitionaing to + AnimatorStateInfo info = m_AnimatedTarget.GetNextAnimatorStateInfo(m_LayerIndex); + hash = info.fullPathHash; + if (m_AnimatedTarget.GetNextAnimatorClipInfoCount(m_LayerIndex) > 1) + { + m_AnimatedTarget.GetNextAnimatorClipInfo(m_LayerIndex, m_clipInfoList); + hash = GetClipHash(info.fullPathHash, m_clipInfoList); + } + } + else + { + AnimatorStateInfo info = m_AnimatedTarget.GetCurrentAnimatorStateInfo(m_LayerIndex); + hash = info.fullPathHash; + if (m_AnimatedTarget.GetCurrentAnimatorClipInfoCount(m_LayerIndex) > 1) + { + m_AnimatedTarget.GetCurrentAnimatorClipInfo(m_LayerIndex, m_clipInfoList); + hash = GetClipHash(info.fullPathHash, m_clipInfoList); + } + } + + // If we don't have an instruction for this state, find a suitable default + while (hash != 0 && !mInstructionDictionary.ContainsKey(hash)) + hash = mStateParentLookup.ContainsKey(hash) ? mStateParentLookup[hash] : 0; + + float now = Time.time; + if (mActivationTime != 0) + { + // Is it active now? + if (mActiveInstruction.m_FullHash == hash) + { + // Yes, cancel any pending + mPendingActivationTime = 0; + return mActiveInstruction.m_VirtualCamera; + } + + // Is it pending? + if (deltaTime >= 0) + { + if (mPendingActivationTime != 0 && mPendingInstruction.m_FullHash == hash) + { + // Has it been pending long enough, and are we allowed to switch away + // from the active action? + if ((now - mPendingActivationTime) > mPendingInstruction.m_ActivateAfter + && ((now - mActivationTime) > mActiveInstruction.m_MinDuration + || mPendingInstruction.m_VirtualCamera.Priority + > mActiveInstruction.m_VirtualCamera.Priority)) + { + // Yes, activate it now + mActiveInstruction = mPendingInstruction; + mActivationTime = now; + mPendingActivationTime = 0; + } + return mActiveInstruction.m_VirtualCamera; + } + } + } + // Neither active nor pending. + mPendingActivationTime = 0; // cancel the pending, if any + + if (!mInstructionDictionary.ContainsKey(hash)) + { + // No defaults set, we just ignore this state + if (mActivationTime != 0) + return mActiveInstruction.m_VirtualCamera; + return defaultCam; + } + + // Can we activate it now? + Instruction newInstr = m_Instructions[mInstructionDictionary[hash]]; + if (newInstr.m_VirtualCamera == null) + newInstr.m_VirtualCamera = defaultCam; + if (deltaTime >= 0 && mActivationTime > 0) + { + if (newInstr.m_ActivateAfter > 0 + || ((now - mActivationTime) < mActiveInstruction.m_MinDuration + && newInstr.m_VirtualCamera.Priority + <= mActiveInstruction.m_VirtualCamera.Priority)) + { + // Too early - make it pending + mPendingInstruction = newInstr; + mPendingActivationTime = now; + if (mActivationTime != 0) + return mActiveInstruction.m_VirtualCamera; + return defaultCam; + } + } + // Activate now + mActiveInstruction = newInstr; + mActivationTime = now; + return mActiveInstruction.m_VirtualCamera; + } + + int GetClipHash(int hash, List clips) + { + // Is there an animation clip substate? + if (clips.Count > 1) + { + // Find the strongest-weighted one + int bestClip = -1; + for (int i = 0; i < clips.Count; ++i) + if (bestClip < 0 || clips[i].weight > clips[bestClip].weight) + bestClip = i; + + // Use its hash + if (bestClip >= 0 && clips[bestClip].weight > 0) + hash = LookupFakeHash(hash, clips[bestClip].clip); + } + return hash; + } + + private CinemachineBlendDefinition LookupBlend( + ICinemachineCamera fromKey, ICinemachineCamera toKey) + { + // Get the blend curve that's most appropriate for these cameras + CinemachineBlendDefinition blend = m_DefaultBlend; + if (m_CustomBlends != null) + { + string fromCameraName = (fromKey != null) ? fromKey.Name : string.Empty; + string toCameraName = (toKey != null) ? toKey.Name : string.Empty; + blend = m_CustomBlends.GetBlendForVirtualCameras( + fromCameraName, toCameraName, blend); + } + if (CinemachineCore.GetBlendOverride != null) + blend = CinemachineCore.GetBlendOverride(fromKey, toKey, blend, this); + return blend; + } + } +} diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Runtime/Behaviours/CinemachineStateDrivenCamera.cs.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Runtime/Behaviours/CinemachineStateDrivenCamera.cs.meta" new file mode 100644 index 00000000..2f271bc1 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Runtime/Behaviours/CinemachineStateDrivenCamera.cs.meta" @@ -0,0 +1,12 @@ +fileFormatVersion: 2 +guid: 325a6a3050a061e4b8aa51386c30e8e1 +timeCreated: 1489088095 +licenseType: Pro +MonoImporter: + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {fileID: 2800000, guid: 5f2a108eb023faf43a809979fd3d38f2, type: 3} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Runtime/Behaviours/CinemachineStoryboard.cs" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Runtime/Behaviours/CinemachineStoryboard.cs" new file mode 100644 index 00000000..37449211 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Runtime/Behaviours/CinemachineStoryboard.cs" @@ -0,0 +1,334 @@ +using System; +using System.Collections.Generic; +using UnityEngine; + +namespace Cinemachine +{ + /// + /// An add-on module for Cinemachine Virtual Camera that places an image in screen space + /// over the camera's output. + /// + [SaveDuringPlay] + [DocumentationSorting(DocumentationSortingAttribute.Level.UserRef)] + [AddComponentMenu("")] // Hide in menu +#if UNITY_2018_3_OR_NEWER + [ExecuteAlways] +#else + [ExecuteInEditMode] +#endif + public class CinemachineStoryboard : CinemachineExtension + { + [Tooltip("If checked, the specified image will be displayed as an overlay over the virtual camera's output")] + public bool m_ShowImage = true; + + [Tooltip("The image to display")] + public Texture m_Image; + + /// How to fit the image in the frame, in the event that the aspect ratios don't match + public enum FillStrategy + { + /// Image will be as large as possible on the screen, without being cropped + BestFit, + /// Image will be cropped if necessary so that the screen is entirely filled + CropImageToFit, + /// Image will be stretched to cover any aspect mismatch with the screen + StretchToFit + }; + [Tooltip("How to handle differences between image aspect and screen aspect")] + public FillStrategy m_Aspect = FillStrategy.BestFit; + + [Tooltip("The opacity of the image. 0 is transparent, 1 is opaque")] + [Range(0, 1)] + public float m_Alpha = 1; + + [Tooltip("The screen-space position at which to display the image. Zero is center")] + public Vector2 m_Center = Vector2.zero; + + [Tooltip("The screen-space rotation to apply to the image")] + public Vector3 m_Rotation = Vector3.zero; + + [Tooltip("The screen-space scaling to apply to the image")] + public Vector2 m_Scale = Vector3.one; + + [Tooltip("If checked, X and Y scale are synchronized")] + public bool m_SyncScale = true; + + [Tooltip("If checked, Camera transform will not be controlled by this virtual camera")] + public bool m_MuteCamera; + + [Range(-1, 1)] + [Tooltip("Wipe the image on and off horizontally")] + public float m_SplitView = 0f; + + class CanvasInfo + { + public GameObject mCanvas; + public CinemachineBrain mCanvasParent; + public RectTransform mViewport; // for mViewport clipping + public UnityEngine.UI.RawImage mRawImage; + } + List mCanvasInfo = new List(); + + /// Standard CinemachineExtension callback + protected override void PostPipelineStageCallback( + CinemachineVirtualCameraBase vcam, + CinemachineCore.Stage stage, ref CameraState state, float wipeAmountTime) + { + // Apply to this vcam only, not the children + if (vcam != VirtualCamera || stage != CinemachineCore.Stage.Finalize) + return; + + if (m_ShowImage) + state.AddCustomBlendable(new CameraState.CustomBlendable(this, 1)); + if (m_MuteCamera) + state.BlendHint |= CameraState.BlendHintValue.NoTransform | CameraState.BlendHintValue.NoLens; + } + + protected override void ConnectToVcam(bool connect) + { + base.ConnectToVcam(connect); + CinemachineCore.CameraUpdatedEvent.RemoveListener(CameraUpdatedCallback); + if (connect) + CinemachineCore.CameraUpdatedEvent.AddListener(CameraUpdatedCallback); + else + DestroyCanvas(); + } + + string CanvasName { get { return "_CM_canvas" + gameObject.GetInstanceID().ToString(); } } + + void CameraUpdatedCallback(CinemachineBrain brain) + { + bool showIt = enabled && m_ShowImage && CinemachineCore.Instance.IsLive(VirtualCamera); + int layer = 1 << gameObject.layer; + if (brain.OutputCamera == null || (brain.OutputCamera.cullingMask & layer) == 0) + showIt = false; + CanvasInfo ci = LocateMyCanvas(brain, showIt); + if (ci != null && ci.mCanvas != null) + ci.mCanvas.SetActive(showIt); + } + + CanvasInfo LocateMyCanvas(CinemachineBrain parent, bool createIfNotFound) + { + CanvasInfo ci = null; + for (int i = 0; ci == null && i < mCanvasInfo.Count; ++i) + if (mCanvasInfo[i].mCanvasParent == parent) + ci = mCanvasInfo[i]; + if (createIfNotFound) + { + if (ci == null) + { + ci = new CanvasInfo() { mCanvasParent = parent }; + int numChildren = parent.transform.childCount; + for (int i = 0; ci.mCanvas == null && i < numChildren; ++i) + { + RectTransform child = parent.transform.GetChild(i) as RectTransform; + if (child != null && child.name == CanvasName) + { + ci.mCanvas = child.gameObject; + ci.mViewport = ci.mCanvas.GetComponentInChildren(); + ci.mRawImage = ci.mCanvas.GetComponentInChildren(); + } + } + mCanvasInfo.Add(ci); + } + if (ci.mCanvas == null || ci.mViewport == null || ci.mRawImage == null) + CreateCanvas(ci); + } + return ci; + } + + void CreateCanvas(CanvasInfo ci) + { + ci.mCanvas = new GameObject(CanvasName, typeof(RectTransform)); + ci.mCanvas.layer = gameObject.layer; + ci.mCanvas.hideFlags = HideFlags.HideAndDontSave; + ci.mCanvas.transform.SetParent(ci.mCanvasParent.transform); +#if UNITY_EDITOR + // Workaround for Unity bug case Case 1004117 + CanvasesAndTheirOwners.AddCanvas(ci.mCanvas, this); +#endif + + var c = ci.mCanvas.AddComponent(); + c.renderMode = RenderMode.ScreenSpaceOverlay; + + var go = new GameObject("Viewport", typeof(RectTransform)); + go.transform.SetParent(ci.mCanvas.transform); + ci.mViewport = (RectTransform)go.transform; + go.AddComponent(); + + go = new GameObject("RawImage", typeof(RectTransform)); + go.transform.SetParent(ci.mViewport.transform); + ci.mRawImage = go.AddComponent(); + } + + void DestroyCanvas() + { + int numBrains = CinemachineCore.Instance.BrainCount; + for (int i = 0; i < numBrains; ++i) + { + var parent = CinemachineCore.Instance.GetActiveBrain(i); + int numChildren = parent.transform.childCount; + for (int j = 0; j < numChildren; ++j) + { + RectTransform child = parent.transform.GetChild(j) as RectTransform; + if (child != null && child.name == CanvasName) + { + var canvas = child.gameObject; + RuntimeUtility.DestroyObject(canvas); +#if UNITY_EDITOR + // Workaround for Unity bug case Case 1004117 + CanvasesAndTheirOwners.RemoveCanvas(canvas); +#endif + } + } + } + mCanvasInfo.Clear(); + } + + void PlaceImage(CanvasInfo ci, float alpha) + { + if (ci.mRawImage != null && ci.mViewport != null) + { + Rect screen = new Rect(0, 0, Screen.width, Screen.height); + if (ci.mCanvasParent.OutputCamera != null) + screen = ci.mCanvasParent.OutputCamera.pixelRect; + screen.x -= (float)Screen.width/2; + screen.y -= (float)Screen.height/2; + + // Apply Split View + float wipeAmount = -Mathf.Clamp(m_SplitView, -1, 1) * screen.width; + + Vector3 pos = screen.center; + pos.x -= wipeAmount/2; + ci.mViewport.localPosition = pos; + ci.mViewport.localRotation = Quaternion.identity; + ci.mViewport.localScale = Vector3.one; + ci.mViewport.ForceUpdateRectTransforms(); + ci.mViewport.sizeDelta = new Vector2(screen.width - Mathf.Abs(wipeAmount), screen.height); + + Vector2 scale = Vector2.one; + if (m_Image != null + && m_Image.width > 0 && m_Image.width > 0 + && screen.width > 0 && screen.height > 0) + { + float f = (screen.height * m_Image.width) / (screen.width * m_Image.height); + switch (m_Aspect) + { + case FillStrategy.BestFit: + if (f >= 1) + scale.y /= f; + else + scale.x *= f; + break; + case FillStrategy.CropImageToFit: + if (f >= 1) + scale.x *= f; + else + scale.y /= f; + break; + case FillStrategy.StretchToFit: + break; + } + } + scale.x *= m_Scale.x; + scale.y *= m_SyncScale ? m_Scale.x : m_Scale.y; + + ci.mRawImage.texture = m_Image; + Color tintColor = Color.white; + tintColor.a = m_Alpha * alpha; + ci.mRawImage.color = tintColor; + + pos = new Vector2(screen.width * m_Center.x, screen.height * m_Center.y); + pos.x += wipeAmount/2; + ci.mRawImage.rectTransform.localPosition = pos; + ci.mRawImage.rectTransform.localRotation = Quaternion.Euler(m_Rotation); + ci.mRawImage.rectTransform.localScale = scale; + ci.mRawImage.rectTransform.ForceUpdateRectTransforms(); + ci.mRawImage.rectTransform.sizeDelta = screen.size; + } + } + + static void StaticBlendingHandler(CinemachineBrain brain) + { + CameraState state = brain.CurrentCameraState; + int numBlendables = state.NumCustomBlendables; + for (int i = 0; i < numBlendables; ++i) + { + var b = state.GetCustomBlendable(i); + CinemachineStoryboard src = b.m_Custom as CinemachineStoryboard; + if (!(src == null)) // in case it was deleted + { + bool showIt = true; + int layer = 1 << src.gameObject.layer; + if (brain.OutputCamera == null || (brain.OutputCamera.cullingMask & layer) == 0) + showIt = false; + CanvasInfo ci = src.LocateMyCanvas(brain, showIt); + if (ci != null) + src.PlaceImage(ci, b.m_Weight); + } + } + } + +#if UNITY_EDITOR + [UnityEditor.InitializeOnLoad] + class EditorInitialize { static EditorInitialize() { InitializeModule(); } } +#endif + [RuntimeInitializeOnLoadMethod] + static void InitializeModule() + { + CinemachineCore.CameraUpdatedEvent.RemoveListener(StaticBlendingHandler); + CinemachineCore.CameraUpdatedEvent.AddListener(StaticBlendingHandler); + } + + +#if UNITY_EDITOR + // Workaround for the Unity bug where OnDestroy doesn't get called if Undo + // bug case Case 1004117 + [UnityEditor.InitializeOnLoad] + class CanvasesAndTheirOwners + { + static Dictionary sCanvasesAndTheirOwners; + static CanvasesAndTheirOwners() + { + UnityEditor.Undo.undoRedoPerformed -= OnUndoRedoPerformed; + UnityEditor.Undo.undoRedoPerformed += OnUndoRedoPerformed; + } + static void OnUndoRedoPerformed() + { + if (sCanvasesAndTheirOwners != null) + { + List toDestroy = null; + foreach (var v in sCanvasesAndTheirOwners) + { + if (v.Value == null) + { + if (toDestroy == null) + toDestroy = new List(); + toDestroy.Add(v.Key); + } + } + if (toDestroy != null) + { + foreach (var o in toDestroy) + { + RemoveCanvas(o); + RuntimeUtility.DestroyObject(o); + } + } + } + } + public static void RemoveCanvas(UnityEngine.Object canvas) + { + if (sCanvasesAndTheirOwners != null && sCanvasesAndTheirOwners.ContainsKey(canvas)) + sCanvasesAndTheirOwners.Remove(canvas); + } + public static void AddCanvas(UnityEngine.Object canvas, UnityEngine.Object owner) + { + if (sCanvasesAndTheirOwners == null) + sCanvasesAndTheirOwners = new Dictionary(); + sCanvasesAndTheirOwners.Add(canvas, owner); + } + } +#endif + } +} diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Runtime/Behaviours/CinemachineStoryboard.cs.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Runtime/Behaviours/CinemachineStoryboard.cs.meta" new file mode 100644 index 00000000..cf16ccd0 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Runtime/Behaviours/CinemachineStoryboard.cs.meta" @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 82e62c82b3be64042ac529dee964cc2f +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {fileID: 2800000, guid: 5f2a108eb023faf43a809979fd3d38f2, type: 3} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Runtime/Behaviours/CinemachineTargetGroup.cs" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Runtime/Behaviours/CinemachineTargetGroup.cs" new file mode 100644 index 00000000..40afc186 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Runtime/Behaviours/CinemachineTargetGroup.cs" @@ -0,0 +1,360 @@ +using UnityEngine; +using System; +using Cinemachine.Utility; + +namespace Cinemachine +{ + /// Defines a group of target objects, each with a radius and a weight. + /// The weight is used when calculating the average position of the target group. + /// Higher-weighted members of the group will count more. + /// The bounding box is calculated by taking the member positions, weight, + /// and radii into account. + /// + [DocumentationSorting(DocumentationSortingAttribute.Level.UserRef)] + [AddComponentMenu("Cinemachine/CinemachineTargetGroup")] + [SaveDuringPlay] +#if UNITY_2018_3_OR_NEWER + [ExecuteAlways] +#else + [ExecuteInEditMode] +#endif + public class CinemachineTargetGroup : MonoBehaviour + { + /// Holds the information that represents a member of the group + [DocumentationSorting(DocumentationSortingAttribute.Level.UserRef)] + [Serializable] public struct Target + { + /// The target objects. This object's position and orientation will contribute to the + /// group's average position and orientation, in accordance with its weight + [Tooltip("The target objects. This object's position and orientation will contribute to the group's average position and orientation, in accordance with its weight")] + public Transform target; + /// How much weight to give the target when averaging. Cannot be negative + [Tooltip("How much weight to give the target when averaging. Cannot be negative")] + public float weight; + /// The radius of the target, used for calculating the bounding box. Cannot be negative + [Tooltip("The radius of the target, used for calculating the bounding box. Cannot be negative")] + public float radius; + } + + /// How the group's position is calculated + [DocumentationSorting(DocumentationSortingAttribute.Level.UserRef)] + public enum PositionMode + { + ///Group position will be the center of the group's axis-aligned bounding box + GroupCenter, + /// Group position will be the weighted average of the positions of the members + GroupAverage + } + + /// How the group's position is calculated + [Tooltip("How the group's position is calculated. Select GroupCenter for the center of the bounding box, and GroupAverage for a weighted average of the positions of the members.")] + public PositionMode m_PositionMode = PositionMode.GroupCenter; + + /// How the group's orientation is calculated + [DocumentationSorting(DocumentationSortingAttribute.Level.UserRef)] + public enum RotationMode + { + /// Manually set in the group's transform + Manual, + /// Weighted average of the orientation of its members. + GroupAverage + } + + /// How the group's orientation is calculated + [Tooltip("How the group's rotation is calculated. Select Manual to use the value in the group's transform, and GroupAverage for a weighted average of the orientations of the members.")] + public RotationMode m_RotationMode = RotationMode.Manual; + + /// This enum defines the options available for the update method. + public enum UpdateMethod + { + /// Updated in normal MonoBehaviour Update. + Update, + /// Updated in sync with the Physics module, in FixedUpdate + FixedUpdate, + /// Updated in MonoBehaviour LateUpdate. + LateUpdate + }; + + /// When to update the group's transform based on the position of the group members + [Tooltip("When to update the group's transform based on the position of the group members")] + public UpdateMethod m_UpdateMethod = UpdateMethod.LateUpdate; + + /// The target objects, together with their weights and radii, that will + /// contribute to the group's average position, orientation, and size + [NoSaveDuringPlay] + [Tooltip("The target objects, together with their weights and radii, that will contribute to the group's average position, orientation, and size.")] + public Target[] m_Targets = new Target[0]; + + /// The axis-aligned bounding box of the group, computed using the + /// targets positions and radii + public Bounds BoundingBox { get; private set; } + + /// The bounding sphere of the group, computed using the + /// targets positions and radii + public BoundingSphere Sphere + { + get + { + Bounds b = BoundingBox; + return new BoundingSphere(b.center, ((b.max - b.min) / 2).magnitude); + } + } + + /// Return true if there are no members with weight > 0 + public bool IsEmpty + { + get + { + for (int i = 0; i < m_Targets.Length; ++i) + if (m_Targets[i].target != null && m_Targets[i].weight > UnityVectorExtensions.Epsilon) + return false; + return true; + } + } + + /// Add a member to the group + public void AddMember(Transform t, float weight, float radius) + { + int index = 0; + if (m_Targets == null) + m_Targets = new Target[1]; + else + { + index = m_Targets.Length; + var oldTargets = m_Targets; + m_Targets = new Target[index + 1]; + Array.Copy(oldTargets, m_Targets, index); + } + m_Targets[index].target = t; + m_Targets[index].weight = weight; + m_Targets[index].radius = radius; + } + + /// Remove a member from the group + public void RemoveMember(Transform t) + { + int index = FindMember(t); + if (index >= 0) + { + var oldTargets = m_Targets; + m_Targets = new Target[m_Targets.Length - 1]; + if (index > 0) + Array.Copy(oldTargets, m_Targets, index); + if (index < oldTargets.Length - 1) + Array.Copy(oldTargets, index + 1, m_Targets, index, oldTargets.Length - index - 1); + } + } + + /// Locate a member's index in the group. Returns -1 if not a member + public int FindMember(Transform t) + { + if (m_Targets != null) + { + for (int i = m_Targets.Length-1; i >= 0; --i) + if (m_Targets[i].target == t) + return i; + } + return -1; + } + + /// + /// Get the bounding sphere of a group memebr, with the weight taken into account. + /// As the member's weight goes to 0, the position lerps to the group average position. + /// + /// Member index + /// + public BoundingSphere GetWeightedBoundsForMember(int index) + { + if (index < 0 || index >= m_Targets.Length) + return Sphere; + return WeightedMemberBounds(m_Targets[index], mAveragePos, mMaxWeight); + } + + /// The axis-aligned bounding box of the group, in a specific reference frame + /// The frame of reference in which to compute the bounding box + /// The axis-aligned bounding box of the group, in the desired frame of reference + public Bounds GetViewSpaceBoundingBox(Matrix4x4 observer) + { + Matrix4x4 inverseView = observer.inverse; + Bounds b = new Bounds(inverseView.MultiplyPoint3x4(mAveragePos), Vector3.zero); + for (int i = 0; i < m_Targets.Length; ++i) + { + BoundingSphere s = GetWeightedBoundsForMember(i); + s.position = inverseView.MultiplyPoint3x4(s.position); + b.Encapsulate(new Bounds(s.position, s.radius * 2 * Vector3.one)); + } + return b; + } + + private static BoundingSphere WeightedMemberBounds(Target t, Vector3 avgPos, float maxWeight) + { + float w = 0; + Vector3 pos = avgPos; + if (t.target != null) + { + pos = t.target.position; + w = Mathf.Max(0, t.weight); + if (maxWeight > UnityVectorExtensions.Epsilon && w < maxWeight) + w /= maxWeight; + else + w = 1; + } + return new BoundingSphere(Vector3.Lerp(avgPos, pos, w), t.radius * w); + } + + private float mMaxWeight; + private Vector3 mAveragePos; + + void DoUpdate() + { + if (IsEmpty) + return; + + mAveragePos = CalculateAveragePosition(out mMaxWeight); + BoundingBox = CalculateBoundingBox(mAveragePos, mMaxWeight); + + switch (m_PositionMode) + { + case PositionMode.GroupCenter: + transform.position = BoundingBox.center; + break; + case PositionMode.GroupAverage: + transform.position = mAveragePos; + break; + } + + switch (m_RotationMode) + { + case RotationMode.Manual: + break; + case RotationMode.GroupAverage: + transform.rotation = CalculateAverageOrientation(); + break; + } + } + + Vector3 CalculateAveragePosition(out float maxWeight) + { + Vector3 pos = Vector3.zero; + float weight = 0; + maxWeight = 0; + for (int i = 0; i < m_Targets.Length; ++i) + { + if (m_Targets[i].target != null) + { + weight += m_Targets[i].weight; + pos += m_Targets[i].target.position * m_Targets[i].weight; + maxWeight = Mathf.Max(maxWeight, m_Targets[i].weight); + } + } + if (weight > UnityVectorExtensions.Epsilon) + pos /= weight; + else + pos = transform.position; + return pos; + } + + Quaternion CalculateAverageOrientation() + { + Quaternion r = Quaternion.identity; + for (int i = 0; i < m_Targets.Length; ++i) + { + if (m_Targets[i].target != null) + { + float w = m_Targets[i].weight; + Quaternion q = m_Targets[i].target.rotation; + // This is probably bogus + r = new Quaternion(r.x + q.x * w, r.y + q.y * w, r.z + q.z * w, r.w + q.w * w); + } + } + return r.Normalized(); + } + + Bounds CalculateBoundingBox(Vector3 avgPos, float maxWeight) + { + Bounds b = new Bounds(avgPos, Vector3.zero); + if (maxWeight > UnityVectorExtensions.Epsilon) + { + for (int i = 0; i < m_Targets.Length; ++i) + { + if (m_Targets[i].target != null) + { + BoundingSphere s = WeightedMemberBounds(m_Targets[i], mAveragePos, maxWeight); + b.Encapsulate(new Bounds(s.position, s.radius * 2 * Vector3.one)); + } + } + } + return b; + } + + private void OnValidate() + { + for (int i = 0; i < m_Targets.Length; ++i) + { + m_Targets[i].weight = Mathf.Max(0, m_Targets[i].weight); + m_Targets[i].radius = Mathf.Max(0, m_Targets[i].radius); + } + } + + void FixedUpdate() + { + if (m_UpdateMethod == UpdateMethod.FixedUpdate) + DoUpdate(); + } + + void Update() + { + if (!Application.isPlaying || m_UpdateMethod == UpdateMethod.Update) + DoUpdate(); + } + + void LateUpdate() + { + if (m_UpdateMethod == UpdateMethod.LateUpdate) + DoUpdate(); + } + + /// + /// Get the local-space angular bounds of the group, from a spoecific point of view. + /// Also returns the z depth range of the members. + /// + /// Point of view from which to calculate, and in whose + /// space the return values are + /// The lower bound of the screen angles of the members (degrees) + /// The upper bound of the screen angles of the members (degrees) + /// The min and max depth values of the members, relative to the observer + public void GetViewSpaceAngularBounds( + Matrix4x4 observer, out Vector2 minAngles, out Vector2 maxAngles, out Vector2 zRange) + { + Matrix4x4 inverseView = observer.inverse; + minAngles = Vector2.zero; + maxAngles = Vector2.zero; + zRange = Vector3.zero; + for (int i = 0; i < m_Targets.Length; ++i) + { + BoundingSphere s = GetWeightedBoundsForMember(i); + Vector3 p = inverseView.MultiplyPoint3x4(s.position); + + // Add the radius + float r = p.magnitude; + Vector2 extraA = Vector2.zero; + if (r > UnityVectorExtensions.Epsilon && s.radius > UnityVectorExtensions.Epsilon) + extraA = Mathf.Atan2(s.radius, r) * Mathf.Rad2Deg * Vector2.one; + Vector2 a = Quaternion.identity.GetCameraRotationToTarget(p, Vector3.up); + if (i == 0) + { + minAngles = a - extraA; + maxAngles = a + extraA; + zRange = new Vector2(p.z - s.radius, p.z + s.radius); + } + else + { + minAngles = Vector3.Min(minAngles, a - extraA); + maxAngles = Vector3.Max(maxAngles, a + extraA); + zRange.x = Mathf.Min(zRange.x, p.z - s.radius); + zRange.y = Mathf.Max(zRange.y, p.z + s.radius); + } + } + } + } +} diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Runtime/Behaviours/CinemachineTargetGroup.cs.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Runtime/Behaviours/CinemachineTargetGroup.cs.meta" new file mode 100644 index 00000000..19ab5872 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Runtime/Behaviours/CinemachineTargetGroup.cs.meta" @@ -0,0 +1,12 @@ +fileFormatVersion: 2 +guid: e5eb80d8e62d9d145bb50fb783c0f731 +timeCreated: 1496785096 +licenseType: Pro +MonoImporter: + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Runtime/Behaviours/CinemachineVirtualCamera.cs" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Runtime/Behaviours/CinemachineVirtualCamera.cs" new file mode 100644 index 00000000..cc379ca5 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Runtime/Behaviours/CinemachineVirtualCamera.cs" @@ -0,0 +1,548 @@ +using Cinemachine.Utility; +using System; +using System.Collections.Generic; +using UnityEngine; +using UnityEngine.Serialization; + +namespace Cinemachine +{ + /// + /// This behaviour is intended to be attached to an empty Transform GameObject, + /// and it represents a Virtual Camera within the Unity scene. + /// + /// The Virtual Camera will animate its Transform according to the rules contained + /// in its CinemachineComponent pipeline (Aim, Body, and Noise). When the virtual + /// camera is Live, the Unity camera will assume the position and orientation + /// of the virtual camera. + /// + /// A virtual camera is not a camera. Instead, it can be thought of as a camera controller, + /// not unlike a cameraman. It can drive the Unity Camera and control its position, + /// orientation, lens settings, and PostProcessing effects. Each Virtual Camera owns + /// its own Cinemachine Component Pipeline, through which you provide the instructions + /// for dynamically tracking specific game objects. + /// + /// A virtual camera is very lightweight, and does no rendering of its own. It merely + /// tracks interesting GameObjects, and positions itself accordingly. A typical game + /// can have dozens of virtual cameras, each set up to follow a particular character + /// or capture a particular event. + /// + /// A Virtual Camera can be in any of three states: + /// + /// * **Live**: The virtual camera is actively controlling the Unity Camera. The + /// virtual camera is tracking its targets and being updated every frame. + /// * **Standby**: The virtual camera is tracking its targets and being updated + /// every frame, but no Unity Camera is actively being controlled by it. This is + /// the state of a virtual camera that is enabled in the scene but perhaps at a + /// lower priority than the Live virtual camera. + /// * **Disabled**: The virtual camera is present but disabled in the scene. It is + /// not actively tracking its targets and so consumes no processing power. However, + /// the virtual camera can be made live from the Timeline. + /// + /// The Unity Camera can be driven by any virtual camera in the scene. The game + /// logic can choose the virtual camera to make live by manipulating the virtual + /// cameras' enabled flags and their priorities, based on game logic. + /// + /// In order to be driven by a virtual camera, the Unity Camera must have a CinemachineBrain + /// behaviour, which will select the most eligible virtual camera based on its priority + /// or on other criteria, and will manage blending. + /// + /// + /// + /// + /// + /// + [DocumentationSorting(DocumentationSortingAttribute.Level.UserRef)] + [DisallowMultipleComponent] +#if UNITY_2018_3_OR_NEWER + [ExecuteAlways] +#else + [ExecuteInEditMode] +#endif + [AddComponentMenu("Cinemachine/CinemachineVirtualCamera")] + public class CinemachineVirtualCamera : CinemachineVirtualCameraBase + { + /// The object that the camera wants to look at (the Aim target). + /// The Aim component of the CinemachineComponent pipeline + /// will refer to this target and orient the vcam in accordance with rules and + /// settings that are provided to it. + /// If this is null, then the vcam's Transform orientation will be used. + [Tooltip("The object that the camera wants to look at (the Aim target). If this is null, then the vcam's Transform orientation will define the camera's orientation.")] + [NoSaveDuringPlay] + public Transform m_LookAt = null; + + /// The object that the camera wants to move with (the Body target). + /// The Body component of the CinemachineComponent pipeline + /// will refer to this target and position the vcam in accordance with rules and + /// settings that are provided to it. + /// If this is null, then the vcam's Transform position will be used. + [Tooltip("The object that the camera wants to move with (the Body target). If this is null, then the vcam's Transform position will define the camera's position.")] + [NoSaveDuringPlay] + public Transform m_Follow = null; + + /// Specifies the LensSettings of this Virtual Camera. + /// These settings will be transferred to the Unity camera when the vcam is live. + [FormerlySerializedAs("m_LensAttributes")] + [Tooltip("Specifies the lens properties of this Virtual Camera. This generally mirrors the Unity Camera's lens settings, and will be used to drive the Unity camera when the vcam is active.")] + [LensSettingsProperty] + public LensSettings m_Lens = LensSettings.Default; + + /// Collection of parameters that influence how this virtual camera transitions from + /// other virtual cameras + public TransitionParams m_Transitions; + + /// Legacy support + [SerializeField] [HideInInspector] + [FormerlySerializedAs("m_BlendHint")] + [FormerlySerializedAs("m_PositionBlending")] private BlendHint m_LegacyBlendHint; + + /// This is the name of the hidden GameObject that will be created as a child object + /// of the virtual camera. This hidden game object acts as a container for the polymorphic + /// CinemachineComponent pipeline. The Inspector UI for the Virtual Camera + /// provides access to this pipleline, as do the CinemachineComponent-family of + /// public methods in this class. + /// The lifecycle of the pipeline GameObject is managed automatically. + public const string PipelineName = "cm"; + + /// The CameraState object holds all of the information + /// necessary to position the Unity camera. It is the output of this class. + override public CameraState State { get { return m_State; } } + + /// Get the LookAt target for the Aim component in the Cinemachine pipeline. + /// If this vcam is a part of a meta-camera collection, then the owner's target + /// will be used if the local target is null. + override public Transform LookAt + { + get { return ResolveLookAt(m_LookAt); } + set { m_LookAt = value; } + } + + /// Get the Follow target for the Body component in the Cinemachine pipeline. + /// If this vcam is a part of a meta-camera collection, then the owner's target + /// will be used if the local target is null. + override public Transform Follow + { + get { return ResolveFollow(m_Follow); } + set { m_Follow = value; } + } + + /// Internal use only. Do not call this method. + /// Called by CinemachineCore at the appropriate Update time + /// so the vcam can position itself and track its targets. This class will + /// invoke its pipeline and generate a CameraState for this frame. + override public void InternalUpdateCameraState(Vector3 worldUp, float deltaTime) + { + if (!PreviousStateIsValid) + deltaTime = -1; + + // Update the state by invoking the component pipeline + m_State = CalculateNewState(worldUp, deltaTime); + ApplyPositionBlendMethod(ref m_State, m_Transitions.m_BlendHint); + + // Push the raw position back to the game object's transform, so it + // moves along with the camera. + if (!UserIsDragging) + { + if (Follow != null) + transform.position = State.RawPosition; + if (LookAt != null) + transform.rotation = State.RawOrientation; + } + PreviousStateIsValid = true; + } + + /// Make sure that the pipeline cache is up-to-date. + override protected void OnEnable() + { + base.OnEnable(); + m_State = PullStateFromVirtualCamera(Vector3.up, ref m_Lens); + InvalidateComponentPipeline(); + + // Can't add components during OnValidate + if (ValidatingStreamVersion < 20170927) + { + if (Follow != null && GetCinemachineComponent(CinemachineCore.Stage.Body) == null) + AddCinemachineComponent(); + if (LookAt != null && GetCinemachineComponent(CinemachineCore.Stage.Aim) == null) + AddCinemachineComponent(); + } + } + + /// Calls the DestroyPipelineDelegate for destroying the hidden + /// child object, to support undo. + protected override void OnDestroy() + { + // Make the pipeline visible instead of destroying - this is to keep Undo happy + foreach (Transform child in transform) + if (child.GetComponent() != null) + child.gameObject.hideFlags + &= ~(HideFlags.HideInHierarchy | HideFlags.HideInInspector); + + base.OnDestroy(); + } + + /// Enforce bounds for fields, when changed in inspector. + protected override void OnValidate() + { + base.OnValidate(); + m_Lens.Validate(); + if (m_LegacyBlendHint != BlendHint.None) + { + m_Transitions.m_BlendHint = m_LegacyBlendHint; + m_LegacyBlendHint = BlendHint.None; + } + } + + void OnTransformChildrenChanged() + { + InvalidateComponentPipeline(); + } + + void Reset() + { + DestroyPipeline(); + } + + /// + /// Override component pipeline creation. + /// This needs to be done by the editor to support Undo. + /// The override must do exactly the same thing as the CreatePipeline method in this class. + /// + public static CreatePipelineDelegate CreatePipelineOverride; + + /// + /// Override component pipeline creation. + /// This needs to be done by the editor to support Undo. + /// The override must do exactly the same thing as the CreatePipeline method in + /// the CinemachineVirtualCamera class. + /// + public delegate Transform CreatePipelineDelegate( + CinemachineVirtualCamera vcam, string name, CinemachineComponentBase[] copyFrom); + + /// + /// Override component pipeline destruction. + /// This needs to be done by the editor to support Undo. + /// + public static DestroyPipelineDelegate DestroyPipelineOverride; + + /// + /// Override component pipeline destruction. + /// This needs to be done by the editor to support Undo. + /// + public delegate void DestroyPipelineDelegate(GameObject pipeline); + + /// Destroy any existing pipeline container. + private void DestroyPipeline() + { + List oldPipeline = new List(); + foreach (Transform child in transform) + if (child.GetComponent() != null) + oldPipeline.Add(child); + + foreach (Transform child in oldPipeline) + { + if (DestroyPipelineOverride != null) + DestroyPipelineOverride(child.gameObject); + else + Destroy(child.gameObject); + } + m_ComponentOwner = null; + PreviousStateIsValid = false; + } + + /// Create a default pipeline container. + /// Note: copyFrom only supported in Editor, not build + private Transform CreatePipeline(CinemachineVirtualCamera copyFrom) + { + CinemachineComponentBase[] components = null; + if (copyFrom != null) + { + copyFrom.InvalidateComponentPipeline(); // make sure it's up to date + components = copyFrom.GetComponentPipeline(); + } + + Transform newPipeline = null; + if (CreatePipelineOverride != null) + newPipeline = CreatePipelineOverride(this, PipelineName, components); + else + { + GameObject go = new GameObject(PipelineName); + go.transform.parent = transform; + go.AddComponent(); + newPipeline = go.transform; + } + PreviousStateIsValid = false; + return newPipeline; + } + + /// + /// Editor API: Call this when changing the pipeline from the editor. + /// Will force a rebuild of the pipeline cache. + /// + public void InvalidateComponentPipeline() { m_ComponentPipeline = null; } + + /// Get the hidden CinemachinePipeline child object. + public Transform GetComponentOwner() { UpdateComponentPipeline(); return m_ComponentOwner; } + + /// Get the component pipeline owned by the hidden child pipline container. + /// For most purposes, it is preferable to use the GetCinemachineComponent method. + public CinemachineComponentBase[] GetComponentPipeline() { UpdateComponentPipeline(); return m_ComponentPipeline; } + + /// Get the component set for a specific stage. + /// The stage for which we want the component + /// The Cinemachine component for that stage, or null if not defined + public CinemachineComponentBase GetCinemachineComponent(CinemachineCore.Stage stage) + { + CinemachineComponentBase[] components = GetComponentPipeline(); + if (components != null) + foreach (var c in components) + if (c.Stage == stage) + return c; + return null; + } + + /// Get an existing component of a specific type from the cinemachine pipeline. + public T GetCinemachineComponent() where T : CinemachineComponentBase + { + CinemachineComponentBase[] components = GetComponentPipeline(); + if (components != null) + foreach (var c in components) + if (c is T) + return c as T; + return null; + } + + /// Add a component to the cinemachine pipeline. + public T AddCinemachineComponent() where T : CinemachineComponentBase + { + // Get the existing components + Transform owner = GetComponentOwner(); + CinemachineComponentBase[] components = owner.GetComponents(); + + T component = owner.gameObject.AddComponent(); + if (component != null && components != null) + { + // Remove the existing components at that stage + CinemachineCore.Stage stage = component.Stage; + for (int i = components.Length - 1; i >= 0; --i) + { + if (components[i].Stage == stage) + { + components[i].enabled = false; + RuntimeUtility.DestroyObject(components[i]); + } + } + } + InvalidateComponentPipeline(); + return component; + } + + /// Remove a component from the cinemachine pipeline. + public void DestroyCinemachineComponent() where T : CinemachineComponentBase + { + CinemachineComponentBase[] components = GetComponentPipeline(); + if (components != null) + { + foreach (var c in components) + { + if (c is T) + { + c.enabled = false; + RuntimeUtility.DestroyObject(c); + InvalidateComponentPipeline(); + } + } + } + } + + /// API for the editor, to make the dragging of position handles behave better. + public bool UserIsDragging { get; set; } + + CameraState m_State = CameraState.Default; // Current state this frame + + CinemachineComponentBase[] m_ComponentPipeline = null; + [SerializeField][HideInInspector] private Transform m_ComponentOwner = null; // serialized to handle copy/paste + void UpdateComponentPipeline() + { + bool isPrefab = false; +#if UNITY_EDITOR + // Did we just get copy/pasted? + if (m_ComponentOwner != null && m_ComponentOwner.parent != transform) + { + isPrefab = gameObject.scene.name == null; // causes a small GC alloc + if (!isPrefab) // can't paste to a prefab + { + CinemachineVirtualCamera copyFrom = (m_ComponentOwner.parent != null) + ? m_ComponentOwner.parent.gameObject.GetComponent() : null; + DestroyPipeline(); + m_ComponentOwner = CreatePipeline(copyFrom); + } + } + if (m_ComponentOwner != null) + SetFlagsForHiddenChild(m_ComponentOwner.gameObject); +#endif + // Early out if we're up-to-date + if (m_ComponentOwner != null && m_ComponentPipeline != null) + return; + + m_ComponentOwner = null; + List list = new List(); + foreach (Transform child in transform) + { + if (child.GetComponent() != null) + { + m_ComponentOwner = child; + CinemachineComponentBase[] components = child.GetComponents(); + foreach (CinemachineComponentBase c in components) + if (c.enabled) + list.Add(c); + } + } + + // Make sure we have a pipeline owner + isPrefab = gameObject.scene.name == null; // causes a small GC alloc + if (m_ComponentOwner == null && !isPrefab) + m_ComponentOwner = CreatePipeline(null); + + // Make sure the pipeline stays hidden, even through prefab + if (m_ComponentOwner != null) + SetFlagsForHiddenChild(m_ComponentOwner.gameObject); + if (m_ComponentOwner != null && m_ComponentOwner.gameObject != null) + { + // Sort the pipeline + list.Sort((c1, c2) => (int)c1.Stage - (int)c2.Stage); + m_ComponentPipeline = list.ToArray(); + } + } + + static internal void SetFlagsForHiddenChild(GameObject child) + { + if (child != null) + { + if (CinemachineCore.sShowHiddenObjects) + child.hideFlags &= ~(HideFlags.HideInHierarchy | HideFlags.HideInInspector); + else + child.hideFlags |= (HideFlags.HideInHierarchy | HideFlags.HideInInspector); + } + } + + private Transform mCachedLookAtTarget; + private CinemachineVirtualCameraBase mCachedLookAtTargetVcam; + private CameraState CalculateNewState(Vector3 worldUp, float deltaTime) + { + // Initialize the camera state, in case the game object got moved in the editor + CameraState state = PullStateFromVirtualCamera(worldUp, ref m_Lens); + + Transform lookAtTarget = LookAt; + if (lookAtTarget != mCachedLookAtTarget) + { + mCachedLookAtTarget = lookAtTarget; + mCachedLookAtTargetVcam = null; + if (lookAtTarget != null) + mCachedLookAtTargetVcam = lookAtTarget.GetComponent(); + } + if (lookAtTarget != null) + { + if (mCachedLookAtTargetVcam != null) + state.ReferenceLookAt = mCachedLookAtTargetVcam.State.FinalPosition; + else + state.ReferenceLookAt = lookAtTarget.position; + } + + // Update the state by invoking the component pipeline + CinemachineCore.Stage curStage = CinemachineCore.Stage.Body; + UpdateComponentPipeline(); // avoid GetComponentPipeline() here because of GC + bool hasAim = false; + if (m_ComponentPipeline != null) + { + for (int i = 0; i < m_ComponentPipeline.Length; ++i) + { + m_ComponentPipeline[i].PrePipelineMutateCameraState(ref state, deltaTime); + if (m_ComponentPipeline[i].Stage == CinemachineCore.Stage.Aim) + hasAim = true; + } + for (int i = 0; i < m_ComponentPipeline.Length; ++i) + { + curStage = AdvancePipelineStage( + ref state, deltaTime, curStage, + (int)m_ComponentPipeline[i].Stage, hasAim); + m_ComponentPipeline[i].MutateCameraState(ref state, deltaTime); + } + } + AdvancePipelineStage( + ref state, deltaTime, curStage, + (int)CinemachineCore.Stage.Finalize + 1, hasAim); + return state; + } + + private CinemachineCore.Stage AdvancePipelineStage( + ref CameraState state, float deltaTime, + CinemachineCore.Stage curStage, int maxStage, bool hasAim) + { + while ((int)curStage < maxStage) + { + if (!hasAim && curStage == CinemachineCore.Stage.Aim) + state.BlendHint |= CameraState.BlendHintValue.IgnoreLookAtTarget; + InvokePostPipelineStageCallback(this, curStage, ref state, deltaTime); + ++curStage; + } + return curStage; + } + + // This is a hack for FreeLook rigs - to be removed + internal void SetStateRawPosition(Vector3 pos) { m_State.RawPosition = pos; } + + /// This is called to notify the vcam that a target got warped, + /// so that the vcam can update its internal state to make the camera + /// also warp seamlessy. + /// The object that was warped + /// The amount the target's position changed + public override void OnTargetObjectWarped(Transform target, Vector3 positionDelta) + { + if (target == Follow) + { + transform.position += positionDelta; + m_State.RawPosition += positionDelta; + } + UpdateComponentPipeline(); // avoid GetComponentPipeline() here because of GC + if (m_ComponentPipeline != null) + { + for (int i = 0; i < m_ComponentPipeline.Length; ++i) + m_ComponentPipeline[i].OnTargetObjectWarped(target, positionDelta); + } + base.OnTargetObjectWarped(target, positionDelta); + } + + /// If we are transitioning from another vcam, grab the position from it. + /// The camera being deactivated. May be null. + /// Default world Up, set by the CinemachineBrain + /// Delta time for time-based effects (ignore if less than or equal to 0) + public override void OnTransitionFromCamera( + ICinemachineCamera fromCam, Vector3 worldUp, float deltaTime) + { + base.OnTransitionFromCamera(fromCam, worldUp, deltaTime); + bool forceUpdate = false; + + if (m_Transitions.m_InheritPosition && fromCam != null) + { + transform.position = fromCam.State.RawPosition; + //transform.rotation = fromCam.State.RawOrientation; + PreviousStateIsValid = false; + forceUpdate = true; + } + UpdateComponentPipeline(); // avoid GetComponentPipeline() here because of GC + if (m_ComponentPipeline != null) + { + for (int i = 0; i < m_ComponentPipeline.Length; ++i) + if (m_ComponentPipeline[i].OnTransitionFromCamera( + fromCam, worldUp, deltaTime, ref m_Transitions)) + forceUpdate = true; + } + if (forceUpdate) + InternalUpdateCameraState(worldUp, deltaTime); + else + UpdateCameraState(worldUp, deltaTime); + if (m_Transitions.m_OnCameraLive != null) + m_Transitions.m_OnCameraLive.Invoke(this, fromCam); + } + } +} diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Runtime/Behaviours/CinemachineVirtualCamera.cs.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Runtime/Behaviours/CinemachineVirtualCamera.cs.meta" new file mode 100644 index 00000000..3530e25e --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Runtime/Behaviours/CinemachineVirtualCamera.cs.meta" @@ -0,0 +1,12 @@ +fileFormatVersion: 2 +guid: 45e653bab7fb20e499bda25e1b646fea +timeCreated: 1496775476 +licenseType: Pro +MonoImporter: + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {fileID: 2800000, guid: 5f2a108eb023faf43a809979fd3d38f2, type: 3} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Runtime/Components.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Runtime/Components.meta" new file mode 100644 index 00000000..e2157e24 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Runtime/Components.meta" @@ -0,0 +1,9 @@ +fileFormatVersion: 2 +guid: 0fafdc3d4f989ff48803e7d870539b41 +folderAsset: yes +timeCreated: 1489096338 +licenseType: Pro +DefaultImporter: + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Runtime/Components/CinemachineBasicMultiChannelPerlin.cs" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Runtime/Components/CinemachineBasicMultiChannelPerlin.cs" new file mode 100644 index 00000000..22fa7e95 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Runtime/Components/CinemachineBasicMultiChannelPerlin.cs" @@ -0,0 +1,92 @@ +using UnityEngine; +using UnityEngine.Serialization; + +namespace Cinemachine +{ + /// + /// As a part of the Cinemachine Pipeline implementing the Noise stage, this + /// component adds Perlin Noise to the Camera state, in the Correction + /// channel of the CameraState. + /// + /// The noise is created by using a predefined noise profile asset. This defines the + /// shape of the noise over time. You can scale this in amplitude or in time, to produce + /// a large family of different noises using the same profile. + /// + /// + [DocumentationSorting(DocumentationSortingAttribute.Level.UserRef)] + [AddComponentMenu("")] // Don't display in add component menu + [SaveDuringPlay] + public class CinemachineBasicMultiChannelPerlin : CinemachineComponentBase + { + /// + /// Serialized property for referencing a NoiseSettings asset + /// + [Tooltip("The asset containing the Noise Profile. Define the frequencies and amplitudes there to make a characteristic noise profile. Make your own or just use one of the many presets.")] + [FormerlySerializedAs("m_Definition")] + [NoiseSettingsProperty] + public NoiseSettings m_NoiseProfile; + + /// + /// Gain to apply to the amplitudes defined in the settings asset. + /// + [Tooltip("Gain to apply to the amplitudes defined in the NoiseSettings asset. 1 is normal. Setting this to 0 completely mutes the noise.")] + public float m_AmplitudeGain = 1f; + + /// + /// Scale factor to apply to the frequencies defined in the settings asset. + /// + [Tooltip("Scale factor to apply to the frequencies defined in the NoiseSettings asset. 1 is normal. Larger magnitudes will make the noise shake more rapidly.")] + public float m_FrequencyGain = 1f; + + /// True if the component is valid, i.e. it has a noise definition and is enabled. + public override bool IsValid { get { return enabled && m_NoiseProfile != null; } } + + /// Get the Cinemachine Pipeline stage that this component implements. + /// Always returns the Noise stage + public override CinemachineCore.Stage Stage { get { return CinemachineCore.Stage.Noise; } } + + /// Applies noise to the Correction channel of the CameraState if the + /// delta time is greater than 0. Otherwise, does nothing. + /// The current camera state + /// How much to advance the perlin noise generator. + /// Noise is only applied if this value is greater than or equal to 0 + public override void MutateCameraState(ref CameraState curState, float deltaTime) + { + if (!IsValid || deltaTime < 0) + return; + + if (!mInitialized) + Initialize(); + + mNoiseTime += deltaTime * m_FrequencyGain; + curState.PositionCorrection += curState.CorrectedOrientation * NoiseSettings.GetCombinedFilterResults( + m_NoiseProfile.PositionNoise, mNoiseTime, mNoiseOffsets) * m_AmplitudeGain; + Quaternion rotNoise = Quaternion.Euler(NoiseSettings.GetCombinedFilterResults( + m_NoiseProfile.OrientationNoise, mNoiseTime, mNoiseOffsets) * m_AmplitudeGain); + curState.OrientationCorrection = curState.OrientationCorrection * rotNoise; + } + + private bool mInitialized = false; + private float mNoiseTime = 0; + + [SerializeField][HideInInspector] + private Vector3 mNoiseOffsets = Vector3.zero; + + /// Generate a new random seed + public void ReSeed() + { + mNoiseOffsets = new Vector3( + Random.Range(-1000f, 1000f), + Random.Range(-1000f, 1000f), + Random.Range(-1000f, 1000f)); + } + + void Initialize() + { + mInitialized = true; + mNoiseTime = 0; + if (mNoiseOffsets == Vector3.zero) + ReSeed(); + } + } +} diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Runtime/Components/CinemachineBasicMultiChannelPerlin.cs.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Runtime/Components/CinemachineBasicMultiChannelPerlin.cs.meta" new file mode 100644 index 00000000..f8abe133 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Runtime/Components/CinemachineBasicMultiChannelPerlin.cs.meta" @@ -0,0 +1,12 @@ +fileFormatVersion: 2 +guid: 68bb026fafb42b14791938953eaace77 +timeCreated: 1484001117 +licenseType: Pro +MonoImporter: + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Runtime/Components/CinemachineComposer.cs" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Runtime/Components/CinemachineComposer.cs" new file mode 100644 index 00000000..8ba906f6 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Runtime/Components/CinemachineComposer.cs" @@ -0,0 +1,477 @@ +using UnityEngine; +using System; +using Cinemachine.Utility; +using UnityEngine.Serialization; + +namespace Cinemachine +{ + /// + /// This is a CinemachineComponent in the Aim section of the component pipeline. + /// Its job is to aim the camera at the vcam's LookAt target object, with + /// configurable offsets, damping, and composition rules. + /// + /// The composer does not change the camera's position. It will only pan and tilt the + /// camera where it is, in order to get the desired framing. To move the camera, you have + /// to use the virtual camera's Body section. + /// + [DocumentationSorting(DocumentationSortingAttribute.Level.UserRef)] + [AddComponentMenu("")] // Don't display in add component menu + [SaveDuringPlay] + public class CinemachineComposer : CinemachineComponentBase + { + /// Target offset from the object's center in LOCAL space which + /// the Composer tracks. Use this to fine-tune the tracking target position + /// when the desired area is not in the tracked object's center + [Tooltip("Target offset from the target object's center in target-local space. Use this to fine-tune the tracking target position when the desired area is not the tracked object's center.")] + public Vector3 m_TrackedObjectOffset = Vector3.zero; + + /// This setting will instruct the composer to adjust its target offset based + /// on the motion of the target. The composer will look at a point where it estimates + /// the target will be this many seconds into the future. Note that this setting is sensitive + /// to noisy animation, and can amplify the noise, resulting in undesirable camera jitter. + /// If the camera jitters unacceptably when the target is in motion, turn down this setting, + /// or animate the target more smoothly. + [Space] + [Tooltip("This setting will instruct the composer to adjust its target offset based on the motion of the target. The composer will look at a point where it estimates the target will be this many seconds into the future. Note that this setting is sensitive to noisy animation, and can amplify the noise, resulting in undesirable camera jitter. If the camera jitters unacceptably when the target is in motion, turn down this setting, or animate the target more smoothly.")] + [Range(0f, 1f)] + public float m_LookaheadTime = 0; + + /// Controls the smoothness of the lookahead algorithm. Larger values smooth out + /// jittery predictions and also increase prediction lag + [Tooltip("Controls the smoothness of the lookahead algorithm. Larger values smooth out jittery predictions and also increase prediction lag")] + [Range(3, 30)] + public float m_LookaheadSmoothing = 10; + + /// If checked, movement along the Y axis will be ignored for lookahead calculations + [Tooltip("If checked, movement along the Y axis will be ignored for lookahead calculations")] + public bool m_LookaheadIgnoreY; + + /// How aggressively the camera tries to follow the target in the screen-horizontal direction. + /// Small numbers are more responsive, rapidly orienting the camera to keep the target in + /// the dead zone. Larger numbers give a more heavy slowly responding camera. + /// Using different vertical and horizontal settings can yield a wide range of camera behaviors. + [Space] + [Range(0f, 20)] + [Tooltip("How aggressively the camera tries to follow the target in the screen-horizontal direction. Small numbers are more responsive, rapidly orienting the camera to keep the target in the dead zone. Larger numbers give a more heavy slowly responding camera. Using different vertical and horizontal settings can yield a wide range of camera behaviors.")] + public float m_HorizontalDamping = 0.5f; + + /// How aggressively the camera tries to follow the target in the screen-vertical direction. + /// Small numbers are more responsive, rapidly orienting the camera to keep the target in + /// the dead zone. Larger numbers give a more heavy slowly responding camera. Using different vertical + /// and horizontal settings can yield a wide range of camera behaviors. + [Range(0f, 20)] + [Tooltip("How aggressively the camera tries to follow the target in the screen-vertical direction. Small numbers are more responsive, rapidly orienting the camera to keep the target in the dead zone. Larger numbers give a more heavy slowly responding camera. Using different vertical and horizontal settings can yield a wide range of camera behaviors.")] + public float m_VerticalDamping = 0.5f; + + /// Horizontal screen position for target. The camera will rotate to the position the tracked object here + [Space] + [Range(0f, 1f)] + [Tooltip("Horizontal screen position for target. The camera will rotate to position the tracked object here.")] + public float m_ScreenX = 0.5f; + + /// Vertical screen position for target, The camera will rotate to to position the tracked object here + [Range(0f, 1f)] + [Tooltip("Vertical screen position for target, The camera will rotate to position the tracked object here.")] + public float m_ScreenY = 0.5f; + + /// Camera will not rotate horizontally if the target is within this range of the position + [Range(0f, 1f)] + [Tooltip("Camera will not rotate horizontally if the target is within this range of the position.")] + public float m_DeadZoneWidth = 0f; + + /// Camera will not rotate vertically if the target is within this range of the position + [Range(0f, 1f)] + [Tooltip("Camera will not rotate vertically if the target is within this range of the position.")] + public float m_DeadZoneHeight = 0f; + + /// When target is within this region, camera will gradually move to re-align + /// towards the desired position, depending onm the damping speed + [Range(0f, 2f)] + [Tooltip("When target is within this region, camera will gradually rotate horizontally to re-align towards the desired position, depending on the damping speed.")] + public float m_SoftZoneWidth = 0.8f; + + /// When target is within this region, camera will gradually move to re-align + /// towards the desired position, depending onm the damping speed + [Range(0f, 2f)] + [Tooltip("When target is within this region, camera will gradually rotate vertically to re-align towards the desired position, depending on the damping speed.")] + public float m_SoftZoneHeight = 0.8f; + + /// A non-zero bias will move the targt position away from the center of the soft zone + [Range(-0.5f, 0.5f)] + [Tooltip("A non-zero bias will move the target position horizontally away from the center of the soft zone.")] + public float m_BiasX = 0f; + + /// A non-zero bias will move the targt position away from the center of the soft zone + [Range(-0.5f, 0.5f)] + [Tooltip("A non-zero bias will move the target position vertically away from the center of the soft zone.")] + public float m_BiasY = 0f; + + /// Force target to center of screen when this camera activates. If false, will clamp target to the edges of the dead zone + [Tooltip("Force target to center of screen when this camera activates. If false, will clamp target to the edges of the dead zone")] + public bool m_CenterOnActivate = true; + + /// True if component is enabled and has a LookAt defined + public override bool IsValid { get { return enabled && LookAtTarget != null; } } + + /// Get the Cinemachine Pipeline stage that this component implements. + /// Always returns the Aim stage + public override CinemachineCore.Stage Stage { get { return CinemachineCore.Stage.Aim; } } + + /// Internal API for inspector + public Vector3 TrackedPoint { get; private set; } + + /// Apply the target offsets to the target location. + /// Also set the TrackedPoint property, taking lookahead into account. + /// The unoffset LookAt point + /// The LookAt point with the offset applied + protected virtual Vector3 GetLookAtPointAndSetTrackedPoint( + Vector3 lookAt, Vector3 up, float deltaTime) + { + Vector3 pos = lookAt; + if (LookAtTarget != null) + pos += LookAtTargetRotation * m_TrackedObjectOffset; + + if (m_LookaheadTime < Epsilon) + TrackedPoint = pos; + else + { + m_Predictor.Smoothing = m_LookaheadSmoothing; + m_Predictor.AddPosition(pos, deltaTime, m_LookaheadTime); + var delta = m_Predictor.PredictPositionDelta(m_LookaheadTime); + if (m_LookaheadIgnoreY) + delta = delta.ProjectOntoPlane(up); + TrackedPoint = pos + delta; + } + return pos; + } + + /// State information for damping + Vector3 m_CameraPosPrevFrame = Vector3.zero; + Vector3 m_LookAtPrevFrame = Vector3.zero; + Vector2 m_ScreenOffsetPrevFrame = Vector2.zero; + Quaternion m_CameraOrientationPrevFrame = Quaternion.identity; + internal PositionPredictor m_Predictor = new PositionPredictor(); + + /// This is called to notify the us that a target got warped, + /// so that we can update its internal state to make the camera + /// also warp seamlessy. + /// The object that was warped + /// The amount the target's position changed + public override void OnTargetObjectWarped(Transform target, Vector3 positionDelta) + { + base.OnTargetObjectWarped(target, positionDelta); + if (target == LookAtTarget) + { + m_CameraPosPrevFrame += positionDelta; + m_LookAtPrevFrame += positionDelta; + m_Predictor.ApplyTransformDelta(positionDelta); + } + } + + public override void PrePipelineMutateCameraState(ref CameraState curState, float deltaTime) + { + if (IsValid && curState.HasLookAt) + curState.ReferenceLookAt = GetLookAtPointAndSetTrackedPoint( + curState.ReferenceLookAt, curState.ReferenceUp, deltaTime); + } + + /// Applies the composer rules and orients the camera accordingly + /// The current camera state + /// Used for calculating damping. If less than + /// zero, then target will snap to the center of the dead zone. + public override void MutateCameraState(ref CameraState curState, float deltaTime) + { + if (!IsValid || !curState.HasLookAt) + return; + + // Correct the tracked point in the event that it's behind the camera + // while the real target is in front + if (!(TrackedPoint - curState.ReferenceLookAt).AlmostZero()) + { + Vector3 mid = Vector3.Lerp(curState.CorrectedPosition, curState.ReferenceLookAt, 0.5f); + Vector3 toLookAt = curState.ReferenceLookAt - mid; + Vector3 toTracked = TrackedPoint - mid; + if (Vector3.Dot(toLookAt, toTracked) < 0) + { + float t = Vector3.Distance(curState.ReferenceLookAt, mid) + / Vector3.Distance(curState.ReferenceLookAt, TrackedPoint); + TrackedPoint = Vector3.Lerp(curState.ReferenceLookAt, TrackedPoint, t); + } + } + + float targetDistance = (TrackedPoint - curState.CorrectedPosition).magnitude; + if (targetDistance < Epsilon) + { + if (deltaTime >= 0) + curState.RawOrientation = m_CameraOrientationPrevFrame; + return; // navel-gazing, get outa here + } + + // Expensive FOV calculations + mCache.UpdateCache(curState.Lens, SoftGuideRect, HardGuideRect, targetDistance); + + Quaternion rigOrientation = curState.RawOrientation; + if (deltaTime < 0) + { + // No damping, just snap to central bounds, skipping the soft zone + Rect rect = mCache.mFovSoftGuideRect; + if (m_CenterOnActivate) + rect = new Rect(rect.center, Vector2.zero); // Force to center + RotateToScreenBounds( + ref curState, rect, curState.ReferenceLookAt, + ref rigOrientation, mCache.mFov, mCache.mFovH, -1); + } + else + { + // Start with previous frame's orientation (but with current up) + Vector3 dir = m_LookAtPrevFrame - (m_CameraPosPrevFrame + curState.PositionDampingBypass); + if (dir.AlmostZero()) + rigOrientation = Quaternion.LookRotation( + m_CameraOrientationPrevFrame * Vector3.forward, curState.ReferenceUp); + else + { + rigOrientation = Quaternion.LookRotation(dir, curState.ReferenceUp); + rigOrientation = rigOrientation.ApplyCameraRotation( + -m_ScreenOffsetPrevFrame, curState.ReferenceUp); + } + + // First force the previous rotation into the hard bounds, no damping, + // then Now move it through the soft zone, with damping + RotateToScreenBounds( + ref curState, mCache.mFovHardGuideRect, TrackedPoint, + ref rigOrientation, mCache.mFov, mCache.mFovH, -1); + RotateToScreenBounds( + ref curState, mCache.mFovSoftGuideRect, TrackedPoint, + ref rigOrientation, mCache.mFov, mCache.mFovH, deltaTime); + } + + // If we have lookahead, make sure the real target is still in the frame + if (!(TrackedPoint - curState.ReferenceLookAt).AlmostZero()) + { + RotateToScreenBounds( + ref curState, mCache.mFovHardGuideRect, curState.ReferenceLookAt, + ref rigOrientation, mCache.mFov, mCache.mFovH, -1); + } + + m_CameraPosPrevFrame = curState.CorrectedPosition; + m_LookAtPrevFrame = TrackedPoint; + m_CameraOrientationPrevFrame = UnityQuaternionExtensions.Normalized(rigOrientation); + m_ScreenOffsetPrevFrame = m_CameraOrientationPrevFrame.GetCameraRotationToTarget( + m_LookAtPrevFrame - curState.CorrectedPosition, curState.ReferenceUp); + + curState.RawOrientation = m_CameraOrientationPrevFrame; + } + + /// Internal API for the inspector editor + internal Rect SoftGuideRect + { + get + { + return new Rect( + m_ScreenX - m_DeadZoneWidth / 2, m_ScreenY - m_DeadZoneHeight / 2, + m_DeadZoneWidth, m_DeadZoneHeight); + } + set + { + m_DeadZoneWidth = Mathf.Clamp01(value.width); + m_DeadZoneHeight = Mathf.Clamp01(value.height); + m_ScreenX = Mathf.Clamp01(value.x + m_DeadZoneWidth / 2); + m_ScreenY = Mathf.Clamp01(value.y + m_DeadZoneHeight / 2); + m_SoftZoneWidth = Mathf.Max(m_SoftZoneWidth, m_DeadZoneWidth); + m_SoftZoneHeight = Mathf.Max(m_SoftZoneHeight, m_DeadZoneHeight); + } + } + + /// Internal API for the inspector editor + internal Rect HardGuideRect + { + get + { + Rect r = new Rect( + m_ScreenX - m_SoftZoneWidth / 2, m_ScreenY - m_SoftZoneHeight / 2, + m_SoftZoneWidth, m_SoftZoneHeight); + r.position += new Vector2( + m_BiasX * (m_SoftZoneWidth - m_DeadZoneWidth), + m_BiasY * (m_SoftZoneHeight - m_DeadZoneHeight)); + return r; + } + set + { + m_SoftZoneWidth = Mathf.Clamp(value.width, 0, 2f); + m_SoftZoneHeight = Mathf.Clamp(value.height, 0, 2f); + m_DeadZoneWidth = Mathf.Min(m_DeadZoneWidth, m_SoftZoneWidth); + m_DeadZoneHeight = Mathf.Min(m_DeadZoneHeight, m_SoftZoneHeight); + + Vector2 center = value.center; + Vector2 bias = center - new Vector2(m_ScreenX, m_ScreenY); + float biasWidth = Mathf.Max(0, m_SoftZoneWidth - m_DeadZoneWidth); + float biasHeight = Mathf.Max(0, m_SoftZoneHeight - m_DeadZoneHeight); + m_BiasX = biasWidth < Epsilon ? 0 : Mathf.Clamp(bias.x / biasWidth, -0.5f, 0.5f); + m_BiasY = biasHeight < Epsilon ? 0 : Mathf.Clamp(bias.y / biasHeight, -0.5f, 0.5f); + } + } + + // Cache for some expensive calculations + struct FovCache + { + public Rect mFovSoftGuideRect; + public Rect mFovHardGuideRect; + public float mFovH; + public float mFov; + + float mOrthoSizeOverDistance; + float mAspect; + Rect mSoftGuideRect; + Rect mHardGuideRect; + + public void UpdateCache( + LensSettings lens, Rect softGuide, Rect hardGuide, float targetDistance) + { + bool recalculate = mAspect != lens.Aspect + || softGuide != mSoftGuideRect || hardGuide != mHardGuideRect; + if (lens.Orthographic) + { + float orthoOverDistance = Mathf.Abs(lens.OrthographicSize / targetDistance); + if (mOrthoSizeOverDistance == 0 + || Mathf.Abs(orthoOverDistance - mOrthoSizeOverDistance) / mOrthoSizeOverDistance + > mOrthoSizeOverDistance * 0.01f) + recalculate = true; + if (recalculate) + { + // Calculate effective fov - fake it for ortho based on target distance + mFov = Mathf.Rad2Deg * 2 * Mathf.Atan(orthoOverDistance); + mFovH = Mathf.Rad2Deg * 2 * Mathf.Atan(lens.Aspect * orthoOverDistance); + mOrthoSizeOverDistance = orthoOverDistance; + } + } + else + { + if (mFov != lens.FieldOfView) + recalculate = true; + if (recalculate) + { + mFov = lens.FieldOfView; + double radHFOV = 2 * Math.Atan(Math.Tan(mFov * Mathf.Deg2Rad / 2) * lens.Aspect); + mFovH = (float)(Mathf.Rad2Deg * radHFOV); + mOrthoSizeOverDistance = 0; + } + } + if (recalculate) + { + mFovSoftGuideRect = ScreenToFOV(softGuide, mFov, mFovH, lens.Aspect); + mSoftGuideRect = softGuide; + mFovHardGuideRect = ScreenToFOV(hardGuide, mFov, mFovH, lens.Aspect); + mHardGuideRect = hardGuide; + mAspect = lens.Aspect; + } + } + + // Convert from screen coords to normalized FOV angular coords + private Rect ScreenToFOV(Rect rScreen, float fov, float fovH, float aspect) + { + Rect r = new Rect(rScreen); + Matrix4x4 persp = Matrix4x4.Perspective(fov, aspect, 0.0001f, 2f).inverse; + + Vector3 p = persp.MultiplyPoint(new Vector3(0, (r.yMin * 2f) - 1f, 0.5f)); p.z = -p.z; + float angle = UnityVectorExtensions.SignedAngle(Vector3.forward, p, Vector3.left); + r.yMin = ((fov / 2) + angle) / fov; + + p = persp.MultiplyPoint(new Vector3(0, (r.yMax * 2f) - 1f, 0.5f)); p.z = -p.z; + angle = UnityVectorExtensions.SignedAngle(Vector3.forward, p, Vector3.left); + r.yMax = ((fov / 2) + angle) / fov; + + p = persp.MultiplyPoint(new Vector3((r.xMin * 2f) - 1f, 0, 0.5f)); p.z = -p.z; + angle = UnityVectorExtensions.SignedAngle(Vector3.forward, p, Vector3.up); + r.xMin = ((fovH / 2) + angle) / fovH; + + p = persp.MultiplyPoint(new Vector3((r.xMax * 2f) - 1f, 0, 0.5f)); p.z = -p.z; + angle = UnityVectorExtensions.SignedAngle(Vector3.forward, p, Vector3.up); + r.xMax = ((fovH / 2) + angle) / fovH; + return r; + } + } + FovCache mCache; + + + /// + /// Adjust the rigOrientation to put the camera within the screen bounds. + /// If deltaTime >= 0 then damping will be applied. + /// Assumes that currentOrientation fwd is such that input rigOrientation's + /// local up is NEVER NEVER NEVER pointing downwards, relative to + /// state.ReferenceUp. If this condition is violated + /// then you will see crazy spinning. That's the symptom. + /// + private void RotateToScreenBounds( + ref CameraState state, Rect screenRect, Vector3 trackedPoint, + ref Quaternion rigOrientation, float fov, float fovH, float deltaTime) + { + Vector3 targetDir = trackedPoint - state.CorrectedPosition; + Vector2 rotToRect = rigOrientation.GetCameraRotationToTarget(targetDir, state.ReferenceUp); + + // Bring it to the edge of screenRect, if outside. Leave it alone if inside. + ClampVerticalBounds(ref screenRect, targetDir, state.ReferenceUp, fov); + float min = (screenRect.yMin - 0.5f) * fov; + float max = (screenRect.yMax - 0.5f) * fov; + if (rotToRect.x < min) + rotToRect.x -= min; + else if (rotToRect.x > max) + rotToRect.x -= max; + else + rotToRect.x = 0; + + min = (screenRect.xMin - 0.5f) * fovH; + max = (screenRect.xMax - 0.5f) * fovH; + if (rotToRect.y < min) + rotToRect.y -= min; + else if (rotToRect.y > max) + rotToRect.y -= max; + else + rotToRect.y = 0; + + // Apply damping + if (deltaTime >= 0) + { + rotToRect.x = Damper.Damp(rotToRect.x, m_VerticalDamping, deltaTime); + rotToRect.y = Damper.Damp(rotToRect.y, m_HorizontalDamping, deltaTime); + } + + // Rotate + rigOrientation = rigOrientation.ApplyCameraRotation(rotToRect, state.ReferenceUp); + } + + /// + /// Prevent upside-down camera situation. This can happen if we have a high + /// camera pitch combined with composer settings that cause the camera to tilt + /// beyond the vertical in order to produce the desired framing. We prevent this by + /// clamping the composer's vertical settings so that this situation can't happen. + /// + private bool ClampVerticalBounds(ref Rect r, Vector3 dir, Vector3 up, float fov) + { + float angle = UnityVectorExtensions.Angle(dir, up); + float halfFov = (fov / 2f) + 1; // give it a little extra to accommodate precision errors + if (angle < halfFov) + { + // looking up + float maxY = 1f - (halfFov - angle) / fov; + if (r.yMax > maxY) + { + r.yMin = Mathf.Min(r.yMin, maxY); + r.yMax = Mathf.Min(r.yMax, maxY); + return true; + } + } + if (angle > (180 - halfFov)) + { + // looking down + float minY = (angle - (180 - halfFov)) / fov; + if (minY > r.yMin) + { + r.yMin = Mathf.Max(r.yMin, minY); + r.yMax = Mathf.Max(r.yMax, minY); + return true; + } + } + return false; + } + } +} diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Runtime/Components/CinemachineComposer.cs.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Runtime/Components/CinemachineComposer.cs.meta" new file mode 100644 index 00000000..21069b46 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Runtime/Components/CinemachineComposer.cs.meta" @@ -0,0 +1,12 @@ +fileFormatVersion: 2 +guid: f4044717213e31446939f7bd49c896ea +timeCreated: 1488314898 +licenseType: Pro +MonoImporter: + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Runtime/Components/CinemachineFramingTransposer.cs" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Runtime/Components/CinemachineFramingTransposer.cs" new file mode 100644 index 00000000..eba7e0f0 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Runtime/Components/CinemachineFramingTransposer.cs" @@ -0,0 +1,581 @@ +using Cinemachine.Utility; +using UnityEngine; +using UnityEngine.Serialization; + +namespace Cinemachine +{ + /// + /// This is a Cinemachine Component in the Body section of the component pipeline. + /// Its job is to position the camera in a fixed screen-space relationship to + /// the vcam's Follow target object, with offsets and damping. + /// + /// The camera will be first moved along the camera Z axis until the Follow target + /// is at the desired distance from the camera's X-Y plane. The camera will then + /// be moved in its XY plane until the Follow target is at the desired point on + /// the camera's screen. + /// + /// The FramingTansposer will only change the camera's position in space. It will not + /// re-orient or otherwise aim the camera. + /// + /// For this component to work properly, the vcam's LookAt target must be null. + /// The Follow target will define what the camera is looking at. + /// + /// If the Follow target is a CinemachineTargetGroup, then additional controls will + /// be available to dynamically adjust the camera's view in order to frame the entire group. + /// + /// Although this component was designed for orthographic cameras, it works equally + /// well with persective cameras and can be used in 3D environments. + /// + [DocumentationSorting(DocumentationSortingAttribute.Level.UserRef)] + [AddComponentMenu("")] // Don't display in add component menu + [SaveDuringPlay] + public class CinemachineFramingTransposer : CinemachineComponentBase + { + /// This setting will instruct the composer to adjust its target offset based + /// on the motion of the target. The composer will look at a point where it estimates + /// the target will be this many seconds into the future. Note that this setting is sensitive + /// to noisy animation, and can amplify the noise, resulting in undesirable camera jitter. + /// If the camera jitters unacceptably when the target is in motion, turn down this setting, + /// or animate the target more smoothly. + [Tooltip("This setting will instruct the composer to adjust its target offset based on the motion of the target. The composer will look at a point where it estimates the target will be this many seconds into the future. Note that this setting is sensitive to noisy animation, and can amplify the noise, resulting in undesirable camera jitter. If the camera jitters unacceptably when the target is in motion, turn down this setting, or animate the target more smoothly.")] + [Range(0f, 1f)] + public float m_LookaheadTime = 0; + + /// Controls the smoothness of the lookahead algorithm. Larger values smooth out + /// jittery predictions and also increase prediction lag + [Tooltip("Controls the smoothness of the lookahead algorithm. Larger values smooth out jittery predictions and also increase prediction lag")] + [Range(3, 30)] + public float m_LookaheadSmoothing = 10; + + /// If checked, movement along the Y axis will be ignored for lookahead calculations + [Tooltip("If checked, movement along the Y axis will be ignored for lookahead calculations")] + public bool m_LookaheadIgnoreY; + + /// How aggressively the camera tries to maintain the offset in the X-axis. + /// Small numbers are more responsive, rapidly translating the camera to keep the target's + /// x-axis offset. Larger numbers give a more heavy slowly responding camera. + /// Using different settings per axis can yield a wide range of camera behaviors + [Space] + [Range(0f, 20f)] + [Tooltip("How aggressively the camera tries to maintain the offset in the X-axis. Small numbers are more responsive, rapidly translating the camera to keep the target's x-axis offset. Larger numbers give a more heavy slowly responding camera. Using different settings per axis can yield a wide range of camera behaviors.")] + public float m_XDamping = 1f; + + /// How aggressively the camera tries to maintain the offset in the Y-axis. + /// Small numbers are more responsive, rapidly translating the camera to keep the target's + /// y-axis offset. Larger numbers give a more heavy slowly responding camera. + /// Using different settings per axis can yield a wide range of camera behaviors + [Range(0f, 20f)] + [Tooltip("How aggressively the camera tries to maintain the offset in the Y-axis. Small numbers are more responsive, rapidly translating the camera to keep the target's y-axis offset. Larger numbers give a more heavy slowly responding camera. Using different settings per axis can yield a wide range of camera behaviors.")] + public float m_YDamping = 1f; + + /// How aggressively the camera tries to maintain the offset in the Z-axis. + /// Small numbers are more responsive, rapidly translating the camera to keep the + /// target's z-axis offset. Larger numbers give a more heavy slowly responding camera. + /// Using different settings per axis can yield a wide range of camera behaviors + [Range(0f, 20f)] + [Tooltip("How aggressively the camera tries to maintain the offset in the Z-axis. Small numbers are more responsive, rapidly translating the camera to keep the target's z-axis offset. Larger numbers give a more heavy slowly responding camera. Using different settings per axis can yield a wide range of camera behaviors.")] + public float m_ZDamping = 1f; + + /// Horizontal screen position for target. The camera will move to position the tracked object here + [Space] + [Range(0f, 1f)] + [Tooltip("Horizontal screen position for target. The camera will move to position the tracked object here.")] + public float m_ScreenX = 0.5f; + + /// Vertical screen position for target, The camera will move to to position the tracked object here + [Range(0f, 1f)] + [Tooltip("Vertical screen position for target, The camera will move to position the tracked object here.")] + public float m_ScreenY = 0.5f; + + /// The distance along the camera axis that will be maintained from the Follow target + [Tooltip("The distance along the camera axis that will be maintained from the Follow target")] + public float m_CameraDistance = 10f; + + /// Camera will not move horizontally if the target is within this range of the position + [Space] + [Range(0f, 1f)] + [Tooltip("Camera will not move horizontally if the target is within this range of the position.")] + public float m_DeadZoneWidth = 0f; + + /// Camera will not move vertically if the target is within this range of the position + [Range(0f, 1f)] + [Tooltip("Camera will not move vertically if the target is within this range of the position.")] + public float m_DeadZoneHeight = 0f; + + /// The camera will not move along its z-axis if the Follow target is within this distance of the specified camera distance + [Tooltip("The camera will not move along its z-axis if the Follow target is within this distance of the specified camera distance")] + [FormerlySerializedAs("m_DistanceDeadZoneSize")] + public float m_DeadZoneDepth = 0; + + /// If checked, then then soft zone will be unlimited in size + [Space] + [Tooltip("If checked, then then soft zone will be unlimited in size.")] + public bool m_UnlimitedSoftZone = false; + + /// When target is within this region, camera will gradually move to re-align + /// towards the desired position, depending onm the damping speed + [Range(0f, 2f)] + [Tooltip("When target is within this region, camera will gradually move horizontally to re-align towards the desired position, depending on the damping speed.")] + public float m_SoftZoneWidth = 0.8f; + + /// When target is within this region, camera will gradually move to re-align + /// towards the desired position, depending onm the damping speed + [Range(0f, 2f)] + [Tooltip("When target is within this region, camera will gradually move vertically to re-align towards the desired position, depending on the damping speed.")] + public float m_SoftZoneHeight = 0.8f; + + /// A non-zero bias will move the targt position away from the center of the soft zone + [Range(-0.5f, 0.5f)] + [Tooltip("A non-zero bias will move the target position horizontally away from the center of the soft zone.")] + public float m_BiasX = 0f; + + /// A non-zero bias will move the targt position away from the center of the soft zone + [Range(-0.5f, 0.5f)] + [Tooltip("A non-zero bias will move the target position vertically away from the center of the soft zone.")] + public float m_BiasY = 0f; + + /// Force target to center of screen when this camera activates. If false, will clamp target to the edges of the dead zone + [Tooltip("Force target to center of screen when this camera activates. If false, will clamp target to the edges of the dead zone")] + public bool m_CenterOnActivate = true; + + /// What screen dimensions to consider when framing + [DocumentationSorting(DocumentationSortingAttribute.Level.UserRef)] + public enum FramingMode + { + /// Consider only the horizontal dimension. Vertical framing is ignored. + Horizontal, + /// Consider only the vertical dimension. Horizontal framing is ignored. + Vertical, + /// The larger of the horizontal and vertical dimensions will dominate, to get the best fit. + HorizontalAndVertical, + /// Don't do any framing adjustment + None + }; + + /// What screen dimensions to consider when framing + [Space] + [Tooltip("What screen dimensions to consider when framing. Can be Horizontal, Vertical, or both")] + [FormerlySerializedAs("m_FramingMode")] + public FramingMode m_GroupFramingMode = FramingMode.HorizontalAndVertical; + + /// How to adjust the camera to get the desired framing + public enum AdjustmentMode + { + /// Do not move the camera, only adjust the FOV. + ZoomOnly, + /// Just move the camera, don't change the FOV. + DollyOnly, + /// Move the camera as much as permitted by the ranges, then + /// adjust the FOV if necessary to make the shot. + DollyThenZoom + }; + + /// How to adjust the camera to get the desired framing + [Tooltip("How to adjust the camera to get the desired framing. You can zoom, dolly in/out, or do both.")] + public AdjustmentMode m_AdjustmentMode = AdjustmentMode.DollyThenZoom; + + /// How much of the screen to fill with the bounding box of the targets. + [Tooltip("The bounding box of the targets should occupy this amount of the screen space. 1 means fill the whole screen. 0.5 means fill half the screen, etc.")] + public float m_GroupFramingSize = 0.8f; + + /// How much closer to the target can the camera go? + [Tooltip("The maximum distance toward the target that this behaviour is allowed to move the camera.")] + public float m_MaxDollyIn = 5000f; + + /// How much farther from the target can the camera go? + [Tooltip("The maximum distance away the target that this behaviour is allowed to move the camera.")] + public float m_MaxDollyOut = 5000f; + + /// Set this to limit how close to the target the camera can get + [Tooltip("Set this to limit how close to the target the camera can get.")] + public float m_MinimumDistance = 1; + + /// Set this to limit how far from the taregt the camera can get + [Tooltip("Set this to limit how far from the target the camera can get.")] + public float m_MaximumDistance = 5000f; + + /// If adjusting FOV, will not set the FOV lower than this + [Range(1, 179)] + [Tooltip("If adjusting FOV, will not set the FOV lower than this.")] + public float m_MinimumFOV = 3; + + /// If adjusting FOV, will not set the FOV higher than this + [Range(1, 179)] + [Tooltip("If adjusting FOV, will not set the FOV higher than this.")] + public float m_MaximumFOV = 60; + + /// If adjusting Orthographic Size, will not set it lower than this + [Tooltip("If adjusting Orthographic Size, will not set it lower than this.")] + public float m_MinimumOrthoSize = 1; + + /// If adjusting Orthographic Size, will not set it higher than this + [Tooltip("If adjusting Orthographic Size, will not set it higher than this.")] + public float m_MaximumOrthoSize = 5000; + + /// Internal API for the inspector editor + internal Rect SoftGuideRect + { + get + { + return new Rect( + m_ScreenX - m_DeadZoneWidth / 2, m_ScreenY - m_DeadZoneHeight / 2, + m_DeadZoneWidth, m_DeadZoneHeight); + } + set + { + m_DeadZoneWidth = Mathf.Clamp01(value.width); + m_DeadZoneHeight = Mathf.Clamp01(value.height); + m_ScreenX = Mathf.Clamp01(value.x + m_DeadZoneWidth / 2); + m_ScreenY = Mathf.Clamp01(value.y + m_DeadZoneHeight / 2); + m_SoftZoneWidth = Mathf.Max(m_SoftZoneWidth, m_DeadZoneWidth); + m_SoftZoneHeight = Mathf.Max(m_SoftZoneHeight, m_DeadZoneHeight); + } + } + + /// Internal API for the inspector editor + internal Rect HardGuideRect + { + get + { + Rect r = new Rect( + m_ScreenX - m_SoftZoneWidth / 2, m_ScreenY - m_SoftZoneHeight / 2, + m_SoftZoneWidth, m_SoftZoneHeight); + r.position += new Vector2( + m_BiasX * (m_SoftZoneWidth - m_DeadZoneWidth), + m_BiasY * (m_SoftZoneHeight - m_DeadZoneHeight)); + return r; + } + set + { + m_SoftZoneWidth = Mathf.Clamp(value.width, 0, 2f); + m_SoftZoneHeight = Mathf.Clamp(value.height, 0, 2f); + m_DeadZoneWidth = Mathf.Min(m_DeadZoneWidth, m_SoftZoneWidth); + m_DeadZoneHeight = Mathf.Min(m_DeadZoneHeight, m_SoftZoneHeight); + + Vector2 center = value.center; + Vector2 bias = center - new Vector2(m_ScreenX, m_ScreenY); + float biasWidth = Mathf.Max(0, m_SoftZoneWidth - m_DeadZoneWidth); + float biasHeight = Mathf.Max(0, m_SoftZoneHeight - m_DeadZoneHeight); + m_BiasX = biasWidth < Epsilon ? 0 : Mathf.Clamp(bias.x / biasWidth, -0.5f, 0.5f); + m_BiasY = biasHeight < Epsilon ? 0 : Mathf.Clamp(bias.y / biasHeight, -0.5f, 0.5f); + } + } + + private void OnValidate() + { + m_CameraDistance = Mathf.Max(m_CameraDistance, kMinimumCameraDistance); + m_DeadZoneDepth = Mathf.Max(m_DeadZoneDepth, 0); + + m_GroupFramingSize = Mathf.Max(0.001f, m_GroupFramingSize); + m_MaxDollyIn = Mathf.Max(0, m_MaxDollyIn); + m_MaxDollyOut = Mathf.Max(0, m_MaxDollyOut); + m_MinimumDistance = Mathf.Max(0, m_MinimumDistance); + m_MaximumDistance = Mathf.Max(m_MinimumDistance, m_MaximumDistance); + m_MinimumFOV = Mathf.Max(1, m_MinimumFOV); + m_MaximumFOV = Mathf.Clamp(m_MaximumFOV, m_MinimumFOV, 179); + m_MinimumOrthoSize = Mathf.Max(0.01f, m_MinimumOrthoSize); + m_MaximumOrthoSize = Mathf.Max(m_MinimumOrthoSize, m_MaximumOrthoSize); + } + + /// True if component is enabled and has a valid Follow target + public override bool IsValid { get { return enabled && FollowTarget != null; } } + + /// Get the Cinemachine Pipeline stage that this component implements. + /// Always returns the Body stage + public override CinemachineCore.Stage Stage { get { return CinemachineCore.Stage.Body; } } + + const float kMinimumCameraDistance = 0.01f; + + /// State information for damping + Vector3 m_PreviousCameraPosition = Vector3.zero; + PositionPredictor m_Predictor = new PositionPredictor(); + + /// Internal API for inspector + public Vector3 TrackedPoint { get; private set; } + + /// This is called to notify the us that a target got warped, + /// so that we can update its internal state to make the camera + /// also warp seamlessy. + /// The object that was warped + /// The amount the target's position changed + public override void OnTargetObjectWarped(Transform target, Vector3 positionDelta) + { + base.OnTargetObjectWarped(target, positionDelta); + if (target == FollowTarget) + { + m_PreviousCameraPosition += positionDelta; + m_Predictor.ApplyTransformDelta(positionDelta); + } + } + + // Convert from screen coords to normalized orthographic distance coords + private Rect ScreenToOrtho(Rect rScreen, float orthoSize, float aspect) + { + Rect r = new Rect(); + r.yMax = 2 * orthoSize * ((1f-rScreen.yMin) - 0.5f); + r.yMin = 2 * orthoSize * ((1f-rScreen.yMax) - 0.5f); + r.xMin = 2 * orthoSize * aspect * (rScreen.xMin - 0.5f); + r.xMax = 2 * orthoSize * aspect * (rScreen.xMax - 0.5f); + return r; + } + + private Vector3 OrthoOffsetToScreenBounds(Vector3 targetPos2D, Rect screenRect) + { + // Bring it to the edge of screenRect, if outside. Leave it alone if inside. + Vector3 delta = Vector3.zero; + if (targetPos2D.x < screenRect.xMin) + delta.x += targetPos2D.x - screenRect.xMin; + if (targetPos2D.x > screenRect.xMax) + delta.x += targetPos2D.x - screenRect.xMax; + if (targetPos2D.y < screenRect.yMin) + delta.y += targetPos2D.y - screenRect.yMin; + if (targetPos2D.y > screenRect.yMax) + delta.y += targetPos2D.y - screenRect.yMax; + return delta; + } + + float m_prevFOV; // State for frame damping + + /// For editor visulaization of the calculated bounding box of the group + public Bounds LastBounds { get; private set; } + + /// For editor visualization of the calculated bounding box of the group + public Matrix4x4 LastBoundsMatrix { get; private set; } + + /// Positions the virtual camera according to the transposer rules. + /// The current camera state + /// Used for damping. If less than 0, no damping is done. + public override void MutateCameraState(ref CameraState curState, float deltaTime) + { + Vector3 followTargetPosition = FollowTargetPosition; + if (deltaTime < 0) + { + m_Predictor.Reset(); + if (m_CenterOnActivate) + { + m_PreviousCameraPosition = FollowTargetPosition + + (curState.RawOrientation * Vector3.back) * m_CameraDistance; + m_prevFOV = 0; + } + } + if (!IsValid) + return; + + // Compute group bounds and adjust follow target for group framing + CinemachineTargetGroup group = FollowTargetGroup; + bool isGroupFraming = group != null && m_GroupFramingMode != FramingMode.None; + if (isGroupFraming) + followTargetPosition = ComputeGroupBounds(group, ref curState); + + TrackedPoint = followTargetPosition; + if (m_LookaheadTime > Epsilon) + { + m_Predictor.Smoothing = m_LookaheadSmoothing; + m_Predictor.AddPosition(followTargetPosition, deltaTime, m_LookaheadTime); + var delta = m_Predictor.PredictPositionDelta(m_LookaheadTime); + if (m_LookaheadIgnoreY) + delta = delta.ProjectOntoPlane(curState.ReferenceUp); + var p = followTargetPosition + delta; + if (isGroupFraming) + { + var b = LastBounds; + b.center += p - followTargetPosition; + LastBounds = b; + } + TrackedPoint = p; + } + + if (!curState.HasLookAt) + curState.ReferenceLookAt = followTargetPosition; + + // Adjust the desired depth for group framing + float targetDistance = m_CameraDistance; + bool isOrthographic = curState.Lens.Orthographic; + float targetHeight = isGroupFraming ? GetTargetHeight(LastBounds.size / m_GroupFramingSize) : 0; + if (!isOrthographic && isGroupFraming) + { + // Adjust height for perspective - we want the height at the near surface + float boundsDepth = LastBounds.extents.z; + float z = LastBounds.center.z; + if (z > boundsDepth) + targetHeight = Mathf.Lerp(0, targetHeight, (z - boundsDepth) / z); + + if (m_AdjustmentMode != AdjustmentMode.ZoomOnly) + { + // What distance from near edge would be needed to get the adjusted + // target height, at the current FOV + targetDistance = targetHeight / (2f * Mathf.Tan(curState.Lens.FieldOfView * Mathf.Deg2Rad / 2f)); + + // Clamp to respect min/max distance settings to the near surface of the bounds + targetDistance = Mathf.Clamp(targetDistance, m_MinimumDistance, m_MaximumDistance); + + // Clamp to respect min/max camera movement + float targetDelta = targetDistance - m_CameraDistance; + targetDelta = Mathf.Clamp(targetDelta, -m_MaxDollyIn, m_MaxDollyOut); + targetDistance = m_CameraDistance + targetDelta; + } + } + + // Work in camera-local space + Vector3 camPosWorld = m_PreviousCameraPosition; + Quaternion localToWorld = curState.RawOrientation; + Quaternion worldToLocal = Quaternion.Inverse(localToWorld); + Vector3 cameraPos = worldToLocal * camPosWorld; + Vector3 targetPos = (worldToLocal * TrackedPoint) - cameraPos; + Vector3 lookAtPos = (worldToLocal * curState.ReferenceLookAt) - cameraPos; + + // Move along camera z + Vector3 cameraOffset = Vector3.zero; + float cameraMin = Mathf.Max(kMinimumCameraDistance, targetDistance - m_DeadZoneDepth/2); + float cameraMax = Mathf.Max(cameraMin, targetDistance + m_DeadZoneDepth/2); + float targetZ = Mathf.Min(targetPos.z, lookAtPos.z); + if (targetZ < cameraMin) + cameraOffset.z = targetZ - cameraMin; + if (targetZ > cameraMax) + cameraOffset.z = targetZ - cameraMax; + + // Move along the XY plane + float screenSize = curState.Lens.Orthographic + ? curState.Lens.OrthographicSize + : Mathf.Tan(0.5f * curState.Lens.FieldOfView * Mathf.Deg2Rad) + * (targetZ - cameraOffset.z); + Rect softGuideOrtho = ScreenToOrtho(SoftGuideRect, screenSize, curState.Lens.Aspect); + if (deltaTime < 0) + { + // No damping or hard bounds, just snap to central bounds, skipping the soft zone + Rect rect = softGuideOrtho; + if (m_CenterOnActivate) + rect = new Rect(rect.center, Vector2.zero); // Force to center + cameraOffset += OrthoOffsetToScreenBounds(targetPos, rect); + } + else + { + // Move it through the soft zone + cameraOffset += OrthoOffsetToScreenBounds(targetPos, softGuideOrtho); + + // Find where it intersects the hard zone + Vector3 hard = Vector3.zero; + if (!m_UnlimitedSoftZone) + { + Rect hardGuideOrtho = ScreenToOrtho(HardGuideRect, screenSize, curState.Lens.Aspect); + hard = OrthoOffsetToScreenBounds(targetPos, hardGuideOrtho); + float t = Mathf.Max(hard.x / (cameraOffset.x + Epsilon), hard.y / (cameraOffset.y + Epsilon)); + hard = cameraOffset * t; + } + // Apply damping, but only to the portion of the move that's inside the hard zone + cameraOffset = hard + Damper.Damp( + cameraOffset - hard, new Vector3(m_XDamping, m_YDamping, m_ZDamping), deltaTime); + + // If we have lookahead, make sure the real target is still in the frame + if (!m_UnlimitedSoftZone && !(TrackedPoint - curState.ReferenceLookAt).AlmostZero()) + { + Rect hardGuideOrtho = ScreenToOrtho(HardGuideRect, screenSize, curState.Lens.Aspect); + cameraOffset += OrthoOffsetToScreenBounds(lookAtPos - cameraOffset, hardGuideOrtho); + } + } + curState.RawPosition = m_PreviousCameraPosition = localToWorld * (cameraPos + cameraOffset); + + // Adjust lens for group framing + if (isGroupFraming) + { + if (isOrthographic) + { + targetHeight = Mathf.Clamp(targetHeight, m_MinimumOrthoSize, m_MaximumOrthoSize); + + // ApplyDamping + if (deltaTime >= 0) + targetHeight = m_prevFOV + Damper.Damp(targetHeight - m_prevFOV, m_ZDamping, deltaTime); + m_prevFOV = targetHeight; + + LensSettings lens = curState.Lens; + lens.OrthographicSize = Mathf.Clamp(targetHeight / 2, m_MinimumOrthoSize, m_MaximumOrthoSize); + curState.Lens = lens; + } + else if (m_AdjustmentMode != AdjustmentMode.DollyOnly) + { + var localTarget = Quaternion.Inverse(curState.RawOrientation) + * (followTargetPosition - curState.RawPosition); + float nearBoundsDistance = localTarget.z; + float targetFOV = 179; + if (nearBoundsDistance > Epsilon) + targetFOV = 2f * Mathf.Atan(targetHeight / (2 * nearBoundsDistance)) * Mathf.Rad2Deg; + targetFOV = Mathf.Clamp(targetFOV, m_MinimumFOV, m_MaximumFOV); + + // ApplyDamping + if (deltaTime >= 0 && m_prevFOV != 0) + targetFOV = m_prevFOV + Damper.Damp(targetFOV - m_prevFOV, m_ZDamping, deltaTime); + m_prevFOV = targetFOV; + + LensSettings lens = curState.Lens; + lens.FieldOfView = targetFOV; + curState.Lens = lens; + } + } + } + + float GetTargetHeight(Vector2 boundsSize) + { + switch (m_GroupFramingMode) + { + case FramingMode.Horizontal: + return boundsSize.x / VcamState.Lens.Aspect; + case FramingMode.Vertical: + return boundsSize.y; + default: + case FramingMode.HorizontalAndVertical: + return Mathf.Max(boundsSize.x / VcamState.Lens.Aspect, boundsSize.y); + } + } + + Vector3 ComputeGroupBounds(CinemachineTargetGroup group, ref CameraState curState) + { + Vector3 cameraPos = curState.RawPosition; + Vector3 fwd = curState.RawOrientation * Vector3.forward; + + // Get the bounding box from camera's direction in view space + LastBoundsMatrix = Matrix4x4.TRS(cameraPos, curState.RawOrientation, Vector3.one); + Bounds b = group.GetViewSpaceBoundingBox(LastBoundsMatrix); + Vector3 groupCenter = LastBoundsMatrix.MultiplyPoint3x4(b.center); + float boundsDepth = b.extents.z; + if (!curState.Lens.Orthographic) + { + // Parallax might change bounds - refine + float d = (Quaternion.Inverse(curState.RawOrientation) * (groupCenter - cameraPos)).z; + cameraPos = groupCenter - fwd * (Mathf.Max(d, boundsDepth) + boundsDepth); + + // Will adjust cameraPos + b = GetScreenSpaceGroupBoundingBox(group, ref cameraPos, curState.RawOrientation); + LastBoundsMatrix = Matrix4x4.TRS(cameraPos, curState.RawOrientation, Vector3.one); + groupCenter = LastBoundsMatrix.MultiplyPoint3x4(b.center); + } + LastBounds = b; + return groupCenter - fwd * boundsDepth; + } + + static Bounds GetScreenSpaceGroupBoundingBox( + CinemachineTargetGroup group, ref Vector3 pos, Quaternion orientation) + { + Matrix4x4 observer = Matrix4x4.TRS(pos, orientation, Vector3.one); + Vector2 minAngles, maxAngles, zRange; + group.GetViewSpaceAngularBounds(observer, out minAngles, out maxAngles, out zRange); + + Quaternion q = Quaternion.identity.ApplyCameraRotation((minAngles + maxAngles) / 2, Vector3.up); + Vector3 localPosAdustment = q * new Vector3(0, 0, (zRange.y + zRange.x)/2); + localPosAdustment.z = 0; + pos = observer.MultiplyPoint3x4(localPosAdustment); + observer = Matrix4x4.TRS(pos, orientation, Vector3.one); + group.GetViewSpaceAngularBounds(observer, out minAngles, out maxAngles, out zRange); + + float zSize = zRange.y - zRange.x; + float z = zRange.x + (zSize / 2); + Vector2 angles = new Vector2(89.5f, 89.5f); + if (zRange.x > 0) + { + angles = Vector3.Max(maxAngles, UnityVectorExtensions.Abs(minAngles)) * Mathf.Deg2Rad; + angles = Vector2.Min(angles, new Vector2(89.5f, 89.5f)); + } + return new Bounds(new Vector3(0, 0, z), + new Vector3(Mathf.Tan(angles.y) * z * 2, Mathf.Tan(angles.x) * z * 2, zSize)); + } + } +} diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Runtime/Components/CinemachineFramingTransposer.cs.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Runtime/Components/CinemachineFramingTransposer.cs.meta" new file mode 100644 index 00000000..b5190172 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Runtime/Components/CinemachineFramingTransposer.cs.meta" @@ -0,0 +1,12 @@ +fileFormatVersion: 2 +guid: 6ad980451443d70438faac0bc6c235a0 +timeCreated: 1502038595 +licenseType: Pro +MonoImporter: + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Runtime/Components/CinemachineGroupComposer.cs" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Runtime/Components/CinemachineGroupComposer.cs" new file mode 100644 index 00000000..efac3aa9 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Runtime/Components/CinemachineGroupComposer.cs" @@ -0,0 +1,293 @@ +using UnityEngine; +using Cinemachine.Utility; + +namespace Cinemachine +{ + /// + /// This is a CinemachineComponent in the Aim section of the component pipeline. + /// Its job is to aim the camera at a target object, with configurable offsets, damping, + /// and composition rules. + /// + /// In addition, if the target is a CinemachineTargetGroup, the behaviour + /// will adjust the FOV and the camera distance to ensure that the entire group of targets + /// is framed properly. + /// + [DocumentationSorting(DocumentationSortingAttribute.Level.UserRef)] + [AddComponentMenu("")] // Don't display in add component menu + [SaveDuringPlay] + public class CinemachineGroupComposer : CinemachineComposer + { + /// How much of the screen to fill with the bounding box of the targets. + [Space] + [Tooltip("The bounding box of the targets should occupy this amount of the screen space. 1 means fill the whole screen. 0.5 means fill half the screen, etc.")] + public float m_GroupFramingSize = 0.8f; + + /// What screen dimensions to consider when framing + [DocumentationSorting(DocumentationSortingAttribute.Level.UserRef)] + public enum FramingMode + { + /// Consider only the horizontal dimension. Vertical framing is ignored. + Horizontal, + /// Consider only the vertical dimension. Horizontal framing is ignored. + Vertical, + /// The larger of the horizontal and vertical dimensions will dominate, to get the best fit. + HorizontalAndVertical + }; + + /// What screen dimensions to consider when framing + [Tooltip("What screen dimensions to consider when framing. Can be Horizontal, Vertical, or both")] + public FramingMode m_FramingMode = FramingMode.HorizontalAndVertical; + + /// How aggressively the camera tries to frame the group. + /// Small numbers are more responsive + [Range(0, 20)] + [Tooltip("How aggressively the camera tries to frame the group. Small numbers are more responsive, rapidly adjusting the camera to keep the group in the frame. Larger numbers give a more heavy slowly responding camera.")] + public float m_FrameDamping = 2f; + + /// How to adjust the camera to get the desired framing + public enum AdjustmentMode + { + /// Do not move the camera, only adjust the FOV. + ZoomOnly, + /// Just move the camera, don't change the FOV. + DollyOnly, + /// Move the camera as much as permitted by the ranges, then + /// adjust the FOV if necessary to make the shot. + DollyThenZoom + }; + + /// How to adjust the camera to get the desired framing + [Tooltip("How to adjust the camera to get the desired framing. You can zoom, dolly in/out, or do both.")] + public AdjustmentMode m_AdjustmentMode = AdjustmentMode.DollyThenZoom; + + /// How much closer to the target can the camera go? + [Tooltip("The maximum distance toward the target that this behaviour is allowed to move the camera.")] + public float m_MaxDollyIn = 5000f; + + /// How much farther from the target can the camera go? + [Tooltip("The maximum distance away the target that this behaviour is allowed to move the camera.")] + public float m_MaxDollyOut = 5000f; + + /// Set this to limit how close to the target the camera can get + [Tooltip("Set this to limit how close to the target the camera can get.")] + public float m_MinimumDistance = 1; + + /// Set this to limit how far from the taregt the camera can get + [Tooltip("Set this to limit how far from the target the camera can get.")] + public float m_MaximumDistance = 5000f; + + /// If adjusting FOV, will not set the FOV lower than this + [Range(1, 179)] + [Tooltip("If adjusting FOV, will not set the FOV lower than this.")] + public float m_MinimumFOV = 3; + + /// If adjusting FOV, will not set the FOV higher than this + [Range(1, 179)] + [Tooltip("If adjusting FOV, will not set the FOV higher than this.")] + public float m_MaximumFOV = 60; + + /// If adjusting Orthographic Size, will not set it lower than this + [Tooltip("If adjusting Orthographic Size, will not set it lower than this.")] + public float m_MinimumOrthoSize = 1; + + /// If adjusting Orthographic Size, will not set it higher than this + [Tooltip("If adjusting Orthographic Size, will not set it higher than this.")] + public float m_MaximumOrthoSize = 5000; + + private void OnValidate() + { + m_GroupFramingSize = Mathf.Max(0.001f, m_GroupFramingSize); + m_MaxDollyIn = Mathf.Max(0, m_MaxDollyIn); + m_MaxDollyOut = Mathf.Max(0, m_MaxDollyOut); + m_MinimumDistance = Mathf.Max(0, m_MinimumDistance); + m_MaximumDistance = Mathf.Max(m_MinimumDistance, m_MaximumDistance); + m_MinimumFOV = Mathf.Max(1, m_MinimumFOV); + m_MaximumFOV = Mathf.Clamp(m_MaximumFOV, m_MinimumFOV, 179); + m_MinimumOrthoSize = Mathf.Max(0.01f, m_MinimumOrthoSize); + m_MaximumOrthoSize = Mathf.Max(m_MinimumOrthoSize, m_MaximumOrthoSize); + } + + // State for damping + float m_prevFramingDistance; + float m_prevFOV; + + /// For editor visulaization of the calculated bounding box of the group + public Bounds LastBounds { get; private set; } + + /// For editor visualization of the calculated bounding box of the group + public Matrix4x4 LastBoundsMatrix { get; private set; } + + /// Applies the composer rules and orients the camera accordingly + /// The current camera state + /// Used for calculating damping. If less than + /// zero, then target will snap to the center of the dead zone. + public override void MutateCameraState(ref CameraState curState, float deltaTime) + { + // Can't do anything without a group to look at + CinemachineTargetGroup group = LookAtTargetGroup; + if (group == null) + { + base.MutateCameraState(ref curState, deltaTime); + return; + } + + if (!IsValid || !curState.HasLookAt) + { + m_prevFramingDistance = 0; + m_prevFOV = 0; + return; + } + + bool isOrthographic = curState.Lens.Orthographic; + bool canMoveCamera = !isOrthographic && m_AdjustmentMode != AdjustmentMode.ZoomOnly; + + // Get the bounding box from camera's POV in view space + Vector3 up = curState.ReferenceUp; + var cameraPos = curState.RawPosition; + BoundingSphere s = group.Sphere; + Vector3 groupCenter = s.position; + Vector3 fwd = groupCenter - cameraPos; + float d = fwd.magnitude; + if (d < Epsilon) + return; // navel-gazing, get outa here + + // Approximate looking at the group center + fwd /= d; + LastBoundsMatrix = Matrix4x4.TRS( + cameraPos, Quaternion.LookRotation(fwd, up), Vector3.one); + + // Correction for the actual center + Bounds b; + if (isOrthographic) + { + b = group.GetViewSpaceBoundingBox(LastBoundsMatrix); + groupCenter = LastBoundsMatrix.MultiplyPoint3x4(b.center); + fwd = (groupCenter - cameraPos).normalized; + LastBoundsMatrix = Matrix4x4.TRS(cameraPos, Quaternion.LookRotation(fwd, up), Vector3.one); + b = group.GetViewSpaceBoundingBox(LastBoundsMatrix); + LastBounds = b; + } + else + { + b = GetScreenSpaceGroupBoundingBox(group, LastBoundsMatrix, out fwd); + LastBoundsMatrix = Matrix4x4.TRS(cameraPos, Quaternion.LookRotation(fwd, up), Vector3.one); + LastBounds = b; + groupCenter = cameraPos + fwd * b.center.z; + fwd = (groupCenter - cameraPos).normalized; + } + + // Adjust bounds for framing size, and get target height + float boundsDepth = b.extents.z; + float targetHeight = GetTargetHeight(b.size / m_GroupFramingSize); + + if (isOrthographic) + { + targetHeight = Mathf.Clamp(targetHeight, m_MinimumOrthoSize, m_MaximumOrthoSize); + + // ApplyDamping + if (deltaTime >= 0) + targetHeight = m_prevFOV + Damper.Damp(targetHeight - m_prevFOV, m_FrameDamping, deltaTime); + m_prevFOV = targetHeight; + + LensSettings lens = curState.Lens; + lens.OrthographicSize = Mathf.Clamp(targetHeight / 2, m_MinimumOrthoSize, m_MaximumOrthoSize); + curState.Lens = lens; + } + else + { + // Adjust height for perspective - we want the height at the near surface + float z = b.center.z; + if (z > boundsDepth) + targetHeight = Mathf.Lerp(0, targetHeight, (z - boundsDepth) / z); + + // Move the camera + if (canMoveCamera) + { + // What distance from near edge would be needed to get the adjusted + // target height, at the current FOV + float targetDistance = boundsDepth + + targetHeight / (2f * Mathf.Tan(curState.Lens.FieldOfView * Mathf.Deg2Rad / 2f)); + + // Clamp to respect min/max distance settings to the near surface of the bounds + targetDistance = Mathf.Clamp( + targetDistance, boundsDepth + m_MinimumDistance, boundsDepth + m_MaximumDistance); + + // Clamp to respect min/max camera movement + float targetDelta = targetDistance - Vector3.Distance(curState.RawPosition, groupCenter); + targetDelta = Mathf.Clamp(targetDelta, -m_MaxDollyIn, m_MaxDollyOut); + + // ApplyDamping + if (deltaTime >= 0) + { + float delta = targetDelta - m_prevFramingDistance; + delta = Damper.Damp(delta, m_FrameDamping, deltaTime); + targetDelta = m_prevFramingDistance + delta; + } + m_prevFramingDistance = targetDelta; + curState.PositionCorrection -= fwd * targetDelta; + cameraPos -= fwd * targetDelta; + } + + // Apply zoom + if (m_AdjustmentMode != AdjustmentMode.DollyOnly) + { + float nearBoundsDistance = (groupCenter - cameraPos).magnitude - boundsDepth; + float targetFOV = 179; + if (nearBoundsDistance > Epsilon) + targetFOV = 2f * Mathf.Atan(targetHeight / (2 * nearBoundsDistance)) * Mathf.Rad2Deg; + targetFOV = Mathf.Clamp(targetFOV, m_MinimumFOV, m_MaximumFOV); + + // ApplyDamping + if (deltaTime >= 0 && m_prevFOV != 0) + targetFOV = m_prevFOV + Damper.Damp(targetFOV - m_prevFOV, m_FrameDamping, deltaTime); + m_prevFOV = targetFOV; + + LensSettings lens = curState.Lens; + lens.FieldOfView = targetFOV; + curState.Lens = lens; + } + } + // Now compose normally + curState.ReferenceLookAt = GetLookAtPointAndSetTrackedPoint( + groupCenter, curState.ReferenceUp, deltaTime); + base.MutateCameraState(ref curState, deltaTime); + } + + float GetTargetHeight(Vector2 boundsSize) + { + switch (m_FramingMode) + { + case FramingMode.Horizontal: + return Mathf.Max(Epsilon, boundsSize.x ) / VcamState.Lens.Aspect; + case FramingMode.Vertical: + return Mathf.Max(Epsilon, boundsSize.y); + default: + case FramingMode.HorizontalAndVertical: + return Mathf.Max( + Mathf.Max(Epsilon, boundsSize.x) / VcamState.Lens.Aspect, + Mathf.Max(Epsilon, boundsSize.y)); + } + } + + /// Point of view + /// New forward direction to use when interpreting the return value + /// Bounding box in a slightly rotated version of observer, as specified by newFwd + static Bounds GetScreenSpaceGroupBoundingBox( + CinemachineTargetGroup group, Matrix4x4 observer, out Vector3 newFwd) + { + Vector2 minAngles, maxAngles, zRange; + group.GetViewSpaceAngularBounds(observer, out minAngles, out maxAngles, out zRange); + Vector2 shift = (minAngles + maxAngles) / 2; + + newFwd = Quaternion.identity.ApplyCameraRotation(shift, Vector3.up) * Vector3.forward; + newFwd = observer.MultiplyVector(newFwd); + + float d = (zRange.y + zRange.x); + Vector2 angles = (maxAngles - shift) * Mathf.Deg2Rad; + angles = Vector2.Min(angles, new Vector2(89.5f, 89.5f)); + return new Bounds( + new Vector3(0, 0, d/2), + new Vector3(Mathf.Tan(angles.y) * d, Mathf.Tan(angles.x) * d, zRange.y - zRange.x)); + } + } +} diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Runtime/Components/CinemachineGroupComposer.cs.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Runtime/Components/CinemachineGroupComposer.cs.meta" new file mode 100644 index 00000000..3a23c26c --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Runtime/Components/CinemachineGroupComposer.cs.meta" @@ -0,0 +1,12 @@ +fileFormatVersion: 2 +guid: 0f7633c93f0364a418841eeb8b058634 +timeCreated: 1496696780 +licenseType: Pro +MonoImporter: + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Runtime/Components/CinemachineHardLockToTarget.cs" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Runtime/Components/CinemachineHardLockToTarget.cs" new file mode 100644 index 00000000..cd689fc1 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Runtime/Components/CinemachineHardLockToTarget.cs" @@ -0,0 +1,32 @@ +using UnityEngine; + +namespace Cinemachine +{ + /// + /// This is a CinemachineComponent in the Aim section of the component pipeline. + /// Its job is to place the camera on the Follow Target. + /// + [DocumentationSorting(DocumentationSortingAttribute.Level.UserRef)] + [AddComponentMenu("")] // Don't display in add component menu + [SaveDuringPlay] + public class CinemachineHardLockToTarget : CinemachineComponentBase + { + /// True if component is enabled and has a LookAt defined + public override bool IsValid { get { return enabled && FollowTarget != null; } } + + /// Get the Cinemachine Pipeline stage that this component implements. + /// Always returns the Aim stage + public override CinemachineCore.Stage Stage { get { return CinemachineCore.Stage.Body; } } + + /// Applies the composer rules and orients the camera accordingly + /// The current camera state + /// Used for calculating damping. If less than + /// zero, then target will snap to the center of the dead zone. + public override void MutateCameraState(ref CameraState curState, float deltaTime) + { + if (IsValid) + curState.RawPosition = FollowTargetPosition; + } + } +} + diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Runtime/Components/CinemachineHardLockToTarget.cs.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Runtime/Components/CinemachineHardLockToTarget.cs.meta" new file mode 100644 index 00000000..05ed3939 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Runtime/Components/CinemachineHardLockToTarget.cs.meta" @@ -0,0 +1,12 @@ +fileFormatVersion: 2 +guid: 36d1163fa822e8b418a0a603ec078d5c +timeCreated: 1506531396 +licenseType: Pro +MonoImporter: + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Runtime/Components/CinemachineHardLookAt.cs" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Runtime/Components/CinemachineHardLookAt.cs" new file mode 100644 index 00000000..8aef7042 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Runtime/Components/CinemachineHardLookAt.cs" @@ -0,0 +1,41 @@ +using UnityEngine; + +namespace Cinemachine +{ + /// + /// This is a CinemachineComponent in the Aim section of the component pipeline. + /// Its job is to aim the camera hard at the LookAt target. + /// + [DocumentationSorting(DocumentationSortingAttribute.Level.UserRef)] + [AddComponentMenu("")] // Don't display in add component menu + [SaveDuringPlay] + public class CinemachineHardLookAt : CinemachineComponentBase + { + /// True if component is enabled and has a LookAt defined + public override bool IsValid { get { return enabled && LookAtTarget != null; } } + + /// Get the Cinemachine Pipeline stage that this component implements. + /// Always returns the Aim stage + public override CinemachineCore.Stage Stage { get { return CinemachineCore.Stage.Aim; } } + + /// Applies the composer rules and orients the camera accordingly + /// The current camera state + /// Used for calculating damping. If less than + /// zero, then target will snap to the center of the dead zone. + public override void MutateCameraState(ref CameraState curState, float deltaTime) + { + if (IsValid && curState.HasLookAt) + { + Vector3 dir = (curState.ReferenceLookAt - curState.CorrectedPosition); + if (dir.magnitude > Epsilon) + { + if (Vector3.Cross(dir.normalized, curState.ReferenceUp).magnitude < Epsilon) + curState.RawOrientation = Quaternion.FromToRotation(Vector3.forward, dir); + else + curState.RawOrientation = Quaternion.LookRotation(dir, curState.ReferenceUp); + } + } + } + } +} + diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Runtime/Components/CinemachineHardLookAt.cs.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Runtime/Components/CinemachineHardLookAt.cs.meta" new file mode 100644 index 00000000..fee022a1 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Runtime/Components/CinemachineHardLookAt.cs.meta" @@ -0,0 +1,12 @@ +fileFormatVersion: 2 +guid: 1e8b78ac948f05a46a6d8339a503172b +timeCreated: 1506531396 +licenseType: Pro +MonoImporter: + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Runtime/Components/CinemachineOrbitalTransposer.cs" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Runtime/Components/CinemachineOrbitalTransposer.cs" new file mode 100644 index 00000000..f9acc28d --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Runtime/Components/CinemachineOrbitalTransposer.cs" @@ -0,0 +1,391 @@ +using System; +using UnityEngine; +using Cinemachine.Utility; +using UnityEngine.Serialization; + +namespace Cinemachine +{ + /// + /// This is a CinemachineComponent in the the Body section of the component pipeline. + /// Its job is to position the camera in a variable relationship to a the vcam's + /// Follow target object, with offsets and damping. + /// + /// This component is typically used to implement a camera that follows its target. + /// It can accept player input from an input device, which allows the player to + /// dynamically control the relationship between the camera and the target, + /// for example with a joystick. + /// + /// The OrbitalTransposer introduces the concept of __Heading__, which is the direction + /// in which the target is moving, and the OrbitalTransposer will attempt to position + /// the camera in relationship to the heading, which is by default directly behind the target. + /// You can control the default relationship by adjusting the Heading Bias setting. + /// + /// If you attach an input controller to the OrbitalTransposer, then the player can also + /// control the way the camera positions itself in relation to the target heading. This allows + /// the camera to move to any spot on an orbit around the target. + /// + [DocumentationSorting(DocumentationSortingAttribute.Level.UserRef)] + [AddComponentMenu("")] // Don't display in add component menu + [SaveDuringPlay] + public class CinemachineOrbitalTransposer : CinemachineTransposer + { + /// + /// How the "forward" direction is defined. Orbital offset is in relation to the forward + /// direction. + /// + [DocumentationSorting(DocumentationSortingAttribute.Level.UserRef)] + [Serializable] + public struct Heading + { + /// + /// Sets the algorithm for determining the target's heading for purposes + /// of re-centering the camera + /// + [DocumentationSorting(DocumentationSortingAttribute.Level.UserRef)] + public enum HeadingDefinition + { + /// + /// Target heading calculated from the difference between its position on + /// the last update and current frame. + /// + PositionDelta, + /// + /// Target heading calculated from its Rigidbody's velocity. + /// If no Rigidbody exists, it will fall back + /// to HeadingDerivationMode.PositionDelta + /// + Velocity, + /// + /// Target heading calculated from the Target Transform's euler Y angle + /// + TargetForward, + /// + /// Default heading is a constant world space heading. + /// + WorldForward, + } + /// The method by which the 'default heading' is calculated if + /// recentering to target heading is enabled + [FormerlySerializedAs("m_HeadingDefinition")] + [Tooltip("How 'forward' is defined. The camera will be placed by default behind the target. PositionDelta will consider 'forward' to be the direction in which the target is moving.")] + public HeadingDefinition m_Definition; + + /// Size of the velocity sampling window for target heading filter. + /// Used only if deriving heading from target's movement + [Range(0, 10)] + [Tooltip("Size of the velocity sampling window for target heading filter. This filters out irregularities in the target's movement. Used only if deriving heading from target's movement (PositionDelta or Velocity)")] + public int m_VelocityFilterStrength; + + /// Additional Y rotation applied to the target heading. + /// When this value is 0, the camera will be placed behind the target + [Range(-180f, 180f)] + [FormerlySerializedAs("m_HeadingBias")] + [Tooltip("Where the camera is placed when the X-axis value is zero. This is a rotation in degrees around the Y axis. When this value is 0, the camera will be placed behind the target. Nonzero offsets will rotate the zero position around the target.")] + public float m_Bias; + + /// Constructor + public Heading(HeadingDefinition def, int filterStrength, float bias) + { + m_Definition = def; + m_VelocityFilterStrength = filterStrength; + m_Bias = bias; + } + }; + + /// The definition of Forward. Camera will follow behind. + [Space] + [OrbitalTransposerHeadingProperty] + [Tooltip("The definition of Forward. Camera will follow behind.")] + public Heading m_Heading = new Heading(Heading.HeadingDefinition.TargetForward, 4, 0); + + /// Parameters that control Automating Heading Recentering + [Tooltip("Automatic heading recentering. The settings here defines how the camera will reposition itself in the absence of player input.")] + public AxisState.Recentering m_RecenterToTargetHeading = new AxisState.Recentering(true, 1, 2); + + /// Axis representing the current heading. Value is in degrees + /// and represents a rotation about the up vector + [Tooltip("Heading Control. The settings here control the behaviour of the camera in response to the player's input.")] + [AxisStateProperty] + public AxisState m_XAxis = new AxisState(-180, 180, true, false, 300f, 0.1f, 0.1f, "Mouse X", true); + + /// Legacy support + [SerializeField] [HideInInspector] [FormerlySerializedAs("m_Radius")] private float m_LegacyRadius = float.MaxValue; + [SerializeField] [HideInInspector] [FormerlySerializedAs("m_HeightOffset")] private float m_LegacyHeightOffset = float.MaxValue; + [SerializeField] [HideInInspector] [FormerlySerializedAs("m_HeadingBias")] private float m_LegacyHeadingBias = float.MaxValue; + protected override void OnValidate() + { + // Upgrade after a legacy deserialize + if (m_LegacyRadius != float.MaxValue + && m_LegacyHeightOffset != float.MaxValue + && m_LegacyHeadingBias != float.MaxValue) + { + m_FollowOffset = new Vector3(0, m_LegacyHeightOffset, -m_LegacyRadius); + m_LegacyHeightOffset = m_LegacyRadius = float.MaxValue; + + m_Heading.m_Bias = m_LegacyHeadingBias; + m_XAxis.m_MaxSpeed /= 10; + m_XAxis.m_AccelTime /= 10; + m_XAxis.m_DecelTime /= 10; + m_LegacyHeadingBias = float.MaxValue; + int heading = (int)m_Heading.m_Definition; + if (m_RecenterToTargetHeading.LegacyUpgrade(ref heading, ref m_Heading.m_VelocityFilterStrength)) + m_Heading.m_Definition = (Heading.HeadingDefinition)heading; + } + m_XAxis.Validate(); + m_RecenterToTargetHeading.Validate(); + + base.OnValidate(); + } + + /// + /// Drive the x-axis setting programmatically. + /// Automatic heading updating will be disabled. + /// + [HideInInspector, NoSaveDuringPlay] + public bool m_HeadingIsSlave = false; + + /// + /// Delegate that allows the the m_XAxis object to be replaced with another one. + /// + internal delegate float UpdateHeadingDelegate( + CinemachineOrbitalTransposer orbital, float deltaTime, Vector3 up); + + /// + /// Delegate that allows the the XAxis object to be replaced with another one. + /// To use it, just call orbital.UpdateHeading() with a reference to a + /// private AxisState object, and that AxisState object will be updated and + /// used to calculate the heading. + /// + internal UpdateHeadingDelegate HeadingUpdater + = (CinemachineOrbitalTransposer orbital, float deltaTime, Vector3 up) + => { return orbital.UpdateHeading(deltaTime, up, ref orbital.m_XAxis); }; + + /// + /// Update the X axis and calculate the heading. This can be called by a delegate + /// with a custom axis. + /// Used for damping. If less than 0, no damping is done. + /// World Up, set by the CinemachineBrain + /// + /// Axis value + /// + public float UpdateHeading(float deltaTime, Vector3 up, ref AxisState axis) + { + // Only read joystick when game is playing + if (deltaTime < 0 || !CinemachineCore.Instance.IsLive(VirtualCamera)) + { + axis.Reset(); + m_RecenterToTargetHeading.CancelRecentering(); + } + else if (axis.Update(deltaTime)) + m_RecenterToTargetHeading.CancelRecentering(); + + float targetHeading = GetTargetHeading(axis.Value, GetReferenceOrientation(up), deltaTime); + if (m_BindingMode != BindingMode.SimpleFollowWithWorldUp) + m_RecenterToTargetHeading.DoRecentering(ref axis, deltaTime, targetHeading); + + float finalHeading = axis.Value; + if (m_BindingMode == BindingMode.SimpleFollowWithWorldUp) + axis.Value = 0; + return finalHeading; + } + + private void OnEnable() + { + // GML todo: do we really need this? + PreviousTarget = null; + mLastTargetPosition = Vector3.zero; + } + + private Vector3 mLastTargetPosition = Vector3.zero; + private HeadingTracker mHeadingTracker; + private Rigidbody mTargetRigidBody = null; + private Transform PreviousTarget { get; set; } + private Quaternion mHeadingPrevFrame = Quaternion.identity; + private Vector3 mOffsetPrevFrame = Vector3.zero; + + /// This is called to notify the us that a target got warped, + /// so that we can update its internal state to make the camera + /// also warp seamlessy. + /// The object that was warped + /// The amount the target's position changed + public override void OnTargetObjectWarped(Transform target, Vector3 positionDelta) + { + base.OnTargetObjectWarped(target, positionDelta); + if (target == FollowTarget) + { + mLastTargetPosition += positionDelta; + } + } + + /// Notification that this virtual camera is going live. + /// Base class implementation does nothing. + /// The camera being deactivated. May be null. + /// Default world Up, set by the CinemachineBrain + /// Delta time for time-based effects (ignore if less than or equal to 0) + /// True if the vcam should do an internal update as a result of this call + public override bool OnTransitionFromCamera( + ICinemachineCamera fromCam, Vector3 worldUp, float deltaTime, + ref CinemachineVirtualCameraBase.TransitionParams transitionParams) + { + if (fromCam != null //&& fromCam.Follow == FollowTarget + && m_BindingMode != CinemachineTransposer.BindingMode.SimpleFollowWithWorldUp + && transitionParams.m_InheritPosition) + { + m_XAxis.Value = GetAxisClosestValue(fromCam.State.RawPosition, worldUp); + return true; + } + return false; + } + + /// + /// What axis value would we need to get as close as possible to the desired cameraPos? + /// + /// camera position we would like to approximate + /// world up + /// The best value to put into the X axis, to approximate the desired camera pos + public float GetAxisClosestValue(Vector3 cameraPos, Vector3 up) + { + Quaternion orient = GetReferenceOrientation(up); + Vector3 fwd = (orient * Vector3.forward).ProjectOntoPlane(up); + if (!fwd.AlmostZero() && FollowTarget != null) + { + // Get the base camera placement + float heading = 0; + if (m_BindingMode != BindingMode.SimpleFollowWithWorldUp) + heading += m_Heading.m_Bias; + orient = orient * Quaternion.AngleAxis(heading, up); + Vector3 targetPos = FollowTargetPosition; + Vector3 pos = targetPos + orient * EffectiveOffset; + + Vector3 a = (pos - targetPos).ProjectOntoPlane(up); + Vector3 b = (cameraPos - targetPos).ProjectOntoPlane(up); + return Vector3.SignedAngle(a, b, up); + } + return LastHeading; // Can't calculate, stay conservative + } + + float LastHeading { get; set; } + + /// Positions the virtual camera according to the transposer rules. + /// The current camera state + /// Used for damping. If less than 0, no damping is done. + public override void MutateCameraState(ref CameraState curState, float deltaTime) + { + InitPrevFrameStateInfo(ref curState, deltaTime); + + // Update the heading + if (FollowTarget != PreviousTarget) + { + PreviousTarget = FollowTarget; + mTargetRigidBody = (PreviousTarget == null) ? null : PreviousTarget.GetComponent(); + mLastTargetPosition = (PreviousTarget == null) ? Vector3.zero : PreviousTarget.position; + mHeadingTracker = null; + } + LastHeading = HeadingUpdater(this, deltaTime, curState.ReferenceUp); + float heading = LastHeading; + + if (IsValid) + { + mLastTargetPosition = FollowTargetPosition; + + // Calculate the heading + if (m_BindingMode != BindingMode.SimpleFollowWithWorldUp) + heading += m_Heading.m_Bias; + Quaternion headingRot = Quaternion.AngleAxis(heading, Vector3.up); + + // Track the target, with damping + Vector3 offset = EffectiveOffset; + Vector3 pos; + Quaternion orient; + TrackTarget(deltaTime, curState.ReferenceUp, headingRot * offset, out pos, out orient); + + // Place the camera + curState.ReferenceUp = orient * Vector3.up; + if (deltaTime >= 0) + { + Vector3 bypass = (headingRot * offset) - mHeadingPrevFrame * mOffsetPrevFrame; + bypass = orient * bypass; + curState.PositionDampingBypass = bypass; + } + orient = orient * headingRot; + curState.RawPosition = pos + orient * offset; + + mHeadingPrevFrame = (m_BindingMode == BindingMode.SimpleFollowWithWorldUp) + ? Quaternion.identity : headingRot; + mOffsetPrevFrame = offset; + } + } + + /// Internal API for the Inspector Editor, so it can draw a marker at the target + public override Vector3 GetTargetCameraPosition(Vector3 worldUp) + { + if (!IsValid) + return Vector3.zero; + float heading = LastHeading; + if (m_BindingMode != BindingMode.SimpleFollowWithWorldUp) + heading += m_Heading.m_Bias; + Quaternion orient = Quaternion.AngleAxis(heading, Vector3.up); + orient = GetReferenceOrientation(worldUp) * orient; + var pos = orient * EffectiveOffset; + pos += mLastTargetPosition; + return pos; + } + + static string GetFullName(GameObject current) + { + if (current == null) + return ""; + if (current.transform.parent == null) + return "/" + current.name; + return GetFullName(current.transform.parent.gameObject) + "/" + current.name; + } + + // Make sure this is calld only once per frame + private float GetTargetHeading( + float currentHeading, Quaternion targetOrientation, float deltaTime) + { + if (m_BindingMode == BindingMode.SimpleFollowWithWorldUp) + return 0; + if (FollowTarget == null) + return currentHeading; + + var headingDef = m_Heading.m_Definition; + if (headingDef == Heading.HeadingDefinition.Velocity && mTargetRigidBody == null) + headingDef = Heading.HeadingDefinition.PositionDelta; + + Vector3 velocity = Vector3.zero; + switch (headingDef) + { + case Heading.HeadingDefinition.PositionDelta: + velocity = FollowTargetPosition - mLastTargetPosition; + break; + case Heading.HeadingDefinition.Velocity: + velocity = mTargetRigidBody.velocity; + break; + case Heading.HeadingDefinition.TargetForward: + velocity = FollowTargetRotation * Vector3.forward; + break; + default: + case Heading.HeadingDefinition.WorldForward: + return 0; + } + + // Process the velocity and derive the heading from it. + int filterSize = m_Heading.m_VelocityFilterStrength * 5; + if (mHeadingTracker == null || mHeadingTracker.FilterSize != filterSize) + mHeadingTracker = new HeadingTracker(filterSize); + mHeadingTracker.DecayHistory(); + Vector3 up = targetOrientation * Vector3.up; + velocity = velocity.ProjectOntoPlane(up); + if (!velocity.AlmostZero()) + mHeadingTracker.Add(velocity); + + velocity = mHeadingTracker.GetReliableHeading(); + if (!velocity.AlmostZero()) + return UnityVectorExtensions.SignedAngle(targetOrientation * Vector3.forward, velocity, up); + + // If no reliable heading, then stay where we are. + return currentHeading; + } + } +} diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Runtime/Components/CinemachineOrbitalTransposer.cs.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Runtime/Components/CinemachineOrbitalTransposer.cs.meta" new file mode 100644 index 00000000..81a1fba3 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Runtime/Components/CinemachineOrbitalTransposer.cs.meta" @@ -0,0 +1,12 @@ +fileFormatVersion: 2 +guid: 9384ab8608cdc3d479fe89cd51eed48f +timeCreated: 1485281954 +licenseType: Pro +MonoImporter: + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Runtime/Components/CinemachinePOV.cs" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Runtime/Components/CinemachinePOV.cs" new file mode 100644 index 00000000..dcdbc22c --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Runtime/Components/CinemachinePOV.cs" @@ -0,0 +1,119 @@ +using Cinemachine.Utility; +using UnityEngine; + +namespace Cinemachine +{ + /// + /// This is a CinemachineComponent in the Aim section of the component pipeline. + /// Its job is to aim the camera in response to the user's mouse or joystick input. + /// + /// The composer does not change the camera's position. It will only pan and tilt the + /// camera where it is, in order to get the desired framing. To move the camera, you have + /// to use the virtual camera's Body section. + /// + [DocumentationSorting(DocumentationSortingAttribute.Level.UserRef)] + [AddComponentMenu("")] // Don't display in add component menu + [SaveDuringPlay] + public class CinemachinePOV : CinemachineComponentBase + { + /// The Vertical axis. Value is -90..90. Controls the vertical orientation + [Tooltip("The Vertical axis. Value is -90..90. Controls the vertical orientation")] + [AxisStateProperty] + public AxisState m_VerticalAxis = new AxisState(-70, 70, false, false, 300f, 0.1f, 0.1f, "Mouse Y", true); + + /// Controls how automatic recentering of the Vertical axis is accomplished + [Tooltip("Controls how automatic recentering of the Vertical axis is accomplished")] + public AxisState.Recentering m_VerticalRecentering = new AxisState.Recentering(false, 1, 2); + + /// The Horizontal axis. Value is -180..180. Controls the horizontal orientation + [Tooltip("The Horizontal axis. Value is -180..180. Controls the horizontal orientation")] + [AxisStateProperty] + public AxisState m_HorizontalAxis = new AxisState(-180, 180, true, false, 300f, 0.1f, 0.1f, "Mouse X", false); + + /// Controls how automatic recentering of the Horizontal axis is accomplished + [Tooltip("Controls how automatic recentering of the Horizontal axis is accomplished")] + public AxisState.Recentering m_HorizontalRecentering = new AxisState.Recentering(false, 1, 2); + + /// True if component is enabled and has a LookAt defined + public override bool IsValid { get { return enabled; } } + + /// Get the Cinemachine Pipeline stage that this component implements. + /// Always returns the Aim stage + public override CinemachineCore.Stage Stage { get { return CinemachineCore.Stage.Aim; } } + + private void OnValidate() + { + m_VerticalAxis.Validate(); + m_VerticalRecentering.Validate(); + m_HorizontalAxis.Validate(); + m_HorizontalRecentering.Validate(); + } + + /// Applies the axis values and orients the camera accordingly + /// The current camera state + /// Used for calculating damping. Not used. + public override void MutateCameraState(ref CameraState curState, float deltaTime) + { + if (!IsValid) + return; + + // Only read joystick when game is playing + if (deltaTime >= 0 && CinemachineCore.Instance.IsLive(VirtualCamera)) + { + if (m_HorizontalAxis.Update(deltaTime)) + m_HorizontalRecentering.CancelRecentering(); + if (m_VerticalAxis.Update(deltaTime)) + m_VerticalRecentering.CancelRecentering(); + } + m_HorizontalRecentering.DoRecentering(ref m_HorizontalAxis, deltaTime, 0); + m_VerticalRecentering.DoRecentering(ref m_VerticalAxis, deltaTime, 0); + + // If we have a transform parent, then apply POV in the local space of the parent + Quaternion rot = Quaternion.Euler(m_VerticalAxis.Value, m_HorizontalAxis.Value, 0); + Transform parent = VirtualCamera.transform.parent; + if (parent != null) + rot = parent.rotation * rot; + else + rot = rot * Quaternion.FromToRotation(Vector3.up, curState.ReferenceUp); + curState.RawOrientation = rot; + } + + /// Notification that this virtual camera is going live. + /// Base class implementation does nothing. + /// The camera being deactivated. May be null. + /// Default world Up, set by the CinemachineBrain + /// Delta time for time-based effects (ignore if less than or equal to 0) + /// True if the vcam should do an internal update as a result of this call + public override bool OnTransitionFromCamera( + ICinemachineCamera fromCam, Vector3 worldUp, float deltaTime, + ref CinemachineVirtualCameraBase.TransitionParams transitionParams) + { + if (fromCam != null && transitionParams.m_InheritPosition) + { + Vector3 up = VcamState.ReferenceUp; + Quaternion targetRot = fromCam.State.RawOrientation; + Vector3 fwd = Vector3.forward; + Transform parent = VirtualCamera.transform.parent; + if (parent != null) + fwd = parent.rotation * fwd; + + m_HorizontalAxis.Value = 0; + m_HorizontalAxis.Reset(); + Vector3 targetFwd = targetRot * Vector3.forward; + Vector3 a = fwd.ProjectOntoPlane(up); + Vector3 b = targetFwd.ProjectOntoPlane(up); + if (!a.AlmostZero() && !b.AlmostZero()) + m_HorizontalAxis.Value = Vector3.SignedAngle(a, b, up); + + m_VerticalAxis.Value = 0; + m_VerticalAxis.Reset(); + fwd = Quaternion.AngleAxis(m_HorizontalAxis.Value, up) * fwd; + Vector3 right = Vector3.Cross(up, fwd); + if (!right.AlmostZero()) + m_VerticalAxis.Value = Vector3.SignedAngle(fwd, targetFwd, right); + return true; + } + return false; + } + } +} \ No newline at end of file diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Runtime/Components/CinemachinePOV.cs.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Runtime/Components/CinemachinePOV.cs.meta" new file mode 100644 index 00000000..58a19072 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Runtime/Components/CinemachinePOV.cs.meta" @@ -0,0 +1,12 @@ +fileFormatVersion: 2 +guid: 3c9beda531928fc40968802117a5d256 +timeCreated: 1504204894 +licenseType: Pro +MonoImporter: + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Runtime/Components/CinemachineSameAsFollowTarget.cs" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Runtime/Components/CinemachineSameAsFollowTarget.cs" new file mode 100644 index 00000000..3da513a8 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Runtime/Components/CinemachineSameAsFollowTarget.cs" @@ -0,0 +1,31 @@ +using UnityEngine; + +namespace Cinemachine +{ + /// + /// This is a CinemachineComponent in the Aim section of the component pipeline. + /// Its job is to match the orientation of the Follow target. + /// + [DocumentationSorting(DocumentationSortingAttribute.Level.UserRef)] + [AddComponentMenu("")] // Don't display in add component menu + [SaveDuringPlay] + public class CinemachineSameAsFollowTarget : CinemachineComponentBase + { + /// True if component is enabled and has a Follow target defined + public override bool IsValid { get { return enabled && FollowTarget != null; } } + + /// Get the Cinemachine Pipeline stage that this component implements. + /// Always returns the Aim stage + public override CinemachineCore.Stage Stage { get { return CinemachineCore.Stage.Aim; } } + + /// Orients the camera to match the Follow target's orientation + /// The current camera state + /// Not used. + public override void MutateCameraState(ref CameraState curState, float deltaTime) + { + if (IsValid) + curState.RawOrientation = FollowTargetRotation; + } + } +} + diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Runtime/Components/CinemachineSameAsFollowTarget.cs.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Runtime/Components/CinemachineSameAsFollowTarget.cs.meta" new file mode 100644 index 00000000..c960831a --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Runtime/Components/CinemachineSameAsFollowTarget.cs.meta" @@ -0,0 +1,12 @@ +fileFormatVersion: 2 +guid: a4c41ac9245b87c4192012080077d830 +timeCreated: 1511551300 +licenseType: Pro +MonoImporter: + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Runtime/Components/CinemachineTrackedDolly.cs" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Runtime/Components/CinemachineTrackedDolly.cs" new file mode 100644 index 00000000..1e6464b8 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Runtime/Components/CinemachineTrackedDolly.cs" @@ -0,0 +1,297 @@ +using UnityEngine; +using System; +using Cinemachine.Utility; +using UnityEngine.Serialization; + +namespace Cinemachine +{ + /// + /// A Cinemachine Virtual Camera Body component that constrains camera motion + /// to a CinemachinePath. The camera can move along the path. + /// + /// This behaviour can operate in two modes: manual positioning, and Auto-Dolly positioning. + /// In Manual mode, the camera's position is specified by animating the Path Position field. + /// In Auto-Dolly mode, the Path Position field is animated automatically every frame by finding + /// the position on the path that's closest to the virtual camera's Follow target. + /// + [DocumentationSorting(DocumentationSortingAttribute.Level.UserRef)] + [AddComponentMenu("")] // Don't display in add component menu + [SaveDuringPlay] + public class CinemachineTrackedDolly : CinemachineComponentBase + { + /// The path to which the camera will be constrained. This must be non-null. + [Tooltip("The path to which the camera will be constrained. This must be non-null.")] + public CinemachinePathBase m_Path; + + /// The position along the path at which the camera will be placed. + /// This can be animated directly, or set automatically by the Auto-Dolly feature + /// to get as close as possible to the Follow target. + [Tooltip("The position along the path at which the camera will be placed. This can be animated directly, or set automatically by the Auto-Dolly feature to get as close as possible to the Follow target. The value is interpreted according to the Position Units setting.")] + public float m_PathPosition; + + /// How to interpret the Path Position + [Tooltip("How to interpret Path Position. If set to Path Units, values are as follows: 0 represents the first waypoint on the path, 1 is the second, and so on. Values in-between are points on the path in between the waypoints. If set to Distance, then Path Position represents distance along the path.")] + public CinemachinePathBase.PositionUnits m_PositionUnits = CinemachinePathBase.PositionUnits.PathUnits; + + /// Where to put the camera realtive to the path postion. X is perpendicular to the path, Y is up, and Z is parallel to the path. + [Tooltip("Where to put the camera relative to the path position. X is perpendicular to the path, Y is up, and Z is parallel to the path. This allows the camera to be offset from the path itself (as if on a tripod, for example).")] + public Vector3 m_PathOffset = Vector3.zero; + + /// How aggressively the camera tries to maintain the offset perpendicular to the path. + /// Small numbers are more responsive, rapidly translating the camera to keep the target's + /// x-axis offset. Larger numbers give a more heavy slowly responding camera. + /// Using different settings per axis can yield a wide range of camera behaviors + [Range(0f, 20f)] + [Tooltip("How aggressively the camera tries to maintain its position in a direction perpendicular to the path. Small numbers are more responsive, rapidly translating the camera to keep the target's x-axis offset. Larger numbers give a more heavy slowly responding camera. Using different settings per axis can yield a wide range of camera behaviors.")] + public float m_XDamping = 0f; + + /// How aggressively the camera tries to maintain the offset in the path-local up direction. + /// Small numbers are more responsive, rapidly translating the camera to keep the target's + /// y-axis offset. Larger numbers give a more heavy slowly responding camera. + /// Using different settings per axis can yield a wide range of camera behaviors + [Range(0f, 20f)] + [Tooltip("How aggressively the camera tries to maintain its position in the path-local up direction. Small numbers are more responsive, rapidly translating the camera to keep the target's y-axis offset. Larger numbers give a more heavy slowly responding camera. Using different settings per axis can yield a wide range of camera behaviors.")] + public float m_YDamping = 0f; + + /// How aggressively the camera tries to maintain the offset parallel to the path. + /// Small numbers are more responsive, rapidly translating the camera to keep the + /// target's z-axis offset. Larger numbers give a more heavy slowly responding camera. + /// Using different settings per axis can yield a wide range of camera behaviors + [Range(0f, 20f)] + [Tooltip("How aggressively the camera tries to maintain its position in a direction parallel to the path. Small numbers are more responsive, rapidly translating the camera to keep the target's z-axis offset. Larger numbers give a more heavy slowly responding camera. Using different settings per axis can yield a wide range of camera behaviors.")] + public float m_ZDamping = 1f; + + /// Different ways to set the camera's up vector + [DocumentationSorting(DocumentationSortingAttribute.Level.UserRef)] + public enum CameraUpMode + { + /// Leave the camera's up vector alone. It will be set according to the Brain's WorldUp. + Default, + /// Take the up vector from the path's up vector at the current point + Path, + /// Take the up vector from the path's up vector at the current point, but with the roll zeroed out + PathNoRoll, + /// Take the up vector from the Follow target's up vector + FollowTarget, + /// Take the up vector from the Follow target's up vector, but with the roll zeroed out + FollowTargetNoRoll, + }; + + /// How to set the virtual camera's Up vector. This will affect the screen composition. + [Tooltip("How to set the virtual camera's Up vector. This will affect the screen composition, because the camera Aim behaviours will always try to respect the Up direction.")] + public CameraUpMode m_CameraUp = CameraUpMode.Default; + + /// "How aggressively the camera tries to track the target rotation's X angle. + /// Small numbers are more responsive. Larger numbers give a more heavy slowly responding camera. + [Range(0f, 20f)] + [Tooltip("How aggressively the camera tries to track the target rotation's X angle. Small numbers are more responsive. Larger numbers give a more heavy slowly responding camera.")] + public float m_PitchDamping = 0; + + /// How aggressively the camera tries to track the target rotation's Y angle. + /// Small numbers are more responsive. Larger numbers give a more heavy slowly responding camera. + [Range(0f, 20f)] + [Tooltip("How aggressively the camera tries to track the target rotation's Y angle. Small numbers are more responsive. Larger numbers give a more heavy slowly responding camera.")] + public float m_YawDamping = 0; + + /// How aggressively the camera tries to track the target rotation's Z angle. + /// Small numbers are more responsive. Larger numbers give a more heavy slowly responding camera. + [Range(0f, 20f)] + [Tooltip("How aggressively the camera tries to track the target rotation's Z angle. Small numbers are more responsive. Larger numbers give a more heavy slowly responding camera.")] + public float m_RollDamping = 0f; + + /// Controls how automatic dollying occurs + [DocumentationSorting(DocumentationSortingAttribute.Level.UserRef)] + [Serializable] + public struct AutoDolly + { + /// If checked, will enable automatic dolly, which chooses a path position + /// that is as close as possible to the Follow target. + [Tooltip("If checked, will enable automatic dolly, which chooses a path position that is as close as possible to the Follow target. Note: this can have significant performance impact")] + public bool m_Enabled; + + /// Offset, in current position units, from the closest point on the path to the follow target. + [Tooltip("Offset, in current position units, from the closest point on the path to the follow target")] + public float m_PositionOffset; + + /// Search up to how many waypoints on either side of the current position. Use 0 for Entire path + [Tooltip("Search up to how many waypoints on either side of the current position. Use 0 for Entire path.")] + public int m_SearchRadius; + + /// We search between waypoints by dividing the segment into this many straight pieces. + /// The higher the number, the more accurate the result, but performance is + /// proportionally slower for higher numbers + [FormerlySerializedAs("m_StepsPerSegment")] + [Tooltip("We search between waypoints by dividing the segment into this many straight pieces. The higher the number, the more accurate the result, but performance is proportionally slower for higher numbers")] + public int m_SearchResolution; + + /// Constructor with specific field values + public AutoDolly(bool enabled, float positionOffset, int searchRadius, int stepsPerSegment) + { + m_Enabled = enabled; + m_PositionOffset = positionOffset; + m_SearchRadius = searchRadius; + m_SearchResolution = stepsPerSegment; + } + }; + + /// Controls how automatic dollying occurs + [Tooltip("Controls how automatic dollying occurs. A Follow target is necessary to use this feature.")] + public AutoDolly m_AutoDolly = new AutoDolly(false, 0, 2, 5); + + /// True if component is enabled and has a path + public override bool IsValid { get { return enabled && m_Path != null; } } + + /// Get the Cinemachine Pipeline stage that this component implements. + /// Always returns the Body stage + public override CinemachineCore.Stage Stage { get { return CinemachineCore.Stage.Body; } } + + /// Positions the virtual camera according to the transposer rules. + /// The current camera state + /// Used for damping. If less that 0, no damping is done. + public override void MutateCameraState(ref CameraState curState, float deltaTime) + { + // Init previous frame state info + if (deltaTime < 0) + { + m_PreviousPathPosition = m_PathPosition; + m_PreviousCameraPosition = curState.RawPosition; + } + + if (!IsValid) + return; + + // Get the new ideal path base position + if (m_AutoDolly.m_Enabled && FollowTarget != null) + { + float prevPos = m_Path.ToNativePathUnits(m_PreviousPathPosition, m_PositionUnits); + // This works in path units + m_PathPosition = m_Path.FindClosestPoint( + FollowTargetPosition, + Mathf.FloorToInt(prevPos), + (deltaTime < 0 || m_AutoDolly.m_SearchRadius <= 0) + ? -1 : m_AutoDolly.m_SearchRadius, + m_AutoDolly.m_SearchResolution); + m_PathPosition = m_Path.FromPathNativeUnits(m_PathPosition, m_PositionUnits); + + // Apply the path position offset + m_PathPosition += m_AutoDolly.m_PositionOffset; + } + float newPathPosition = m_PathPosition; + + if (deltaTime >= 0) + { + // Normalize previous position to find the shortest path + float maxUnit = m_Path.MaxUnit(m_PositionUnits); + if (maxUnit > 0) + { + float prev = m_Path.StandardizeUnit(m_PreviousPathPosition, m_PositionUnits); + float next = m_Path.StandardizeUnit(newPathPosition, m_PositionUnits); + if (m_Path.Looped && Mathf.Abs(next - prev) > maxUnit / 2) + { + if (next > prev) + prev += maxUnit; + else + prev -= maxUnit; + } + m_PreviousPathPosition = prev; + newPathPosition = next; + } + + // Apply damping along the path direction + float offset = m_PreviousPathPosition - newPathPosition; + offset = Damper.Damp(offset, m_ZDamping, deltaTime); + newPathPosition = m_PreviousPathPosition - offset; + } + m_PreviousPathPosition = newPathPosition; + Quaternion newPathOrientation = m_Path.EvaluateOrientationAtUnit(newPathPosition, m_PositionUnits); + + // Apply the offset to get the new camera position + Vector3 newCameraPos = m_Path.EvaluatePositionAtUnit(newPathPosition, m_PositionUnits); + Vector3 offsetX = newPathOrientation * Vector3.right; + Vector3 offsetY = newPathOrientation * Vector3.up; + Vector3 offsetZ = newPathOrientation * Vector3.forward; + newCameraPos += m_PathOffset.x * offsetX; + newCameraPos += m_PathOffset.y * offsetY; + newCameraPos += m_PathOffset.z * offsetZ; + + // Apply damping to the remaining directions + if (deltaTime >= 0) + { + Vector3 currentCameraPos = m_PreviousCameraPosition; + Vector3 delta = (currentCameraPos - newCameraPos); + Vector3 delta1 = Vector3.Dot(delta, offsetY) * offsetY; + Vector3 delta0 = delta - delta1; + delta0 = Damper.Damp(delta0, m_XDamping, deltaTime); + delta1 = Damper.Damp(delta1, m_YDamping, deltaTime); + newCameraPos = currentCameraPos - (delta0 + delta1); + } + curState.RawPosition = m_PreviousCameraPosition = newCameraPos; + + // Set the orientation and up + Quaternion newOrientation + = GetCameraOrientationAtPathPoint(newPathOrientation, curState.ReferenceUp); + if (deltaTime < 0) + m_PreviousOrientation = newOrientation; + else + { + if (deltaTime >= 0) + { + Vector3 relative = (Quaternion.Inverse(m_PreviousOrientation) + * newOrientation).eulerAngles; + for (int i = 0; i < 3; ++i) + if (relative[i] > 180) + relative[i] -= 360; + relative = Damper.Damp(relative, AngularDamping, deltaTime); + newOrientation = m_PreviousOrientation * Quaternion.Euler(relative); + } + m_PreviousOrientation = newOrientation; + } + + curState.RawOrientation = newOrientation; + if (m_CameraUp != CameraUpMode.Default) + curState.ReferenceUp = curState.RawOrientation * Vector3.up; + } + + private Quaternion GetCameraOrientationAtPathPoint(Quaternion pathOrientation, Vector3 up) + { + switch (m_CameraUp) + { + default: + case CameraUpMode.Default: break; + case CameraUpMode.Path: return pathOrientation; + case CameraUpMode.PathNoRoll: + return Quaternion.LookRotation(pathOrientation * Vector3.forward, up); + case CameraUpMode.FollowTarget: + if (FollowTarget != null) + return FollowTargetRotation; + break; + case CameraUpMode.FollowTargetNoRoll: + if (FollowTarget != null) + return Quaternion.LookRotation(FollowTargetRotation * Vector3.forward, up); + break; + } + return Quaternion.LookRotation(transform.rotation * Vector3.forward, up); + } + + private Vector3 AngularDamping + { + get + { + switch (m_CameraUp) + { + case CameraUpMode.PathNoRoll: + case CameraUpMode.FollowTargetNoRoll: + return new Vector3(m_PitchDamping, m_YawDamping, 0); + case CameraUpMode.Default: + return Vector3.zero; + default: + return new Vector3(m_PitchDamping, m_YawDamping, m_RollDamping); + } + } + } + + private float m_PreviousPathPosition = 0; + Quaternion m_PreviousOrientation = Quaternion.identity; + private Vector3 m_PreviousCameraPosition = Vector3.zero; + } +} diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Runtime/Components/CinemachineTrackedDolly.cs.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Runtime/Components/CinemachineTrackedDolly.cs.meta" new file mode 100644 index 00000000..9b953eac --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Runtime/Components/CinemachineTrackedDolly.cs.meta" @@ -0,0 +1,12 @@ +fileFormatVersion: 2 +guid: 418e42c7d0405cc48a7b83f63ea53bb3 +timeCreated: 1493213884 +licenseType: Pro +MonoImporter: + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Runtime/Components/CinemachineTransposer.cs" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Runtime/Components/CinemachineTransposer.cs" new file mode 100644 index 00000000..9a36f9fa --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Runtime/Components/CinemachineTransposer.cs" @@ -0,0 +1,347 @@ +using System; +using Cinemachine.Utility; +using UnityEngine; + +namespace Cinemachine +{ + /// + /// This is a CinemachineComponent in the Body section of the component pipeline. + /// Its job is to position the camera in a fixed relationship to the vcam's Follow + /// target object, with offsets and damping. + /// + /// The Tansposer will only change the camera's position in space. It will not + /// re-orient or otherwise aim the camera. To to that, you need to instruct + /// the vcam in the Aim section of its pipeline. + /// + [DocumentationSorting(DocumentationSortingAttribute.Level.UserRef)] + [AddComponentMenu("")] // Don't display in add component menu + [SaveDuringPlay] + public class CinemachineTransposer : CinemachineComponentBase + { + /// + /// The coordinate space to use when interpreting the offset from the target + /// + [DocumentationSorting(DocumentationSortingAttribute.Level.UserRef)] + public enum BindingMode + { + /// + /// Camera will be bound to the Follow target using a frame of reference consisting + /// of the target's local frame at the moment when the virtual camera was enabled, + /// or when the target was assigned. + /// + LockToTargetOnAssign = 0, + /// + /// Camera will be bound to the Follow target using a frame of reference consisting + /// of the target's local frame, with the tilt and roll zeroed out. + /// + LockToTargetWithWorldUp = 1, + /// + /// Camera will be bound to the Follow target using a frame of reference consisting + /// of the target's local frame, with the roll zeroed out. + /// + LockToTargetNoRoll = 2, + /// + /// Camera will be bound to the Follow target using the target's local frame. + /// + LockToTarget = 3, + /// Camera will be bound to the Follow target using a world space offset. + WorldSpace = 4, + /// Offsets will be calculated relative to the target, using Camera-local axes + SimpleFollowWithWorldUp = 5 + } + /// The coordinate space to use when interpreting the offset from the target + [Tooltip("The coordinate space to use when interpreting the offset from the target. This is also used to set the camera's Up vector, which will be maintained when aiming the camera.")] + public BindingMode m_BindingMode = BindingMode.LockToTargetWithWorldUp; + + /// The distance which the transposer will attempt to maintain from the transposer subject + [Tooltip("The distance vector that the transposer will attempt to maintain from the Follow target")] + public Vector3 m_FollowOffset = Vector3.back * 10f; + + /// How aggressively the camera tries to maintain the offset in the X-axis. + /// Small numbers are more responsive, rapidly translating the camera to keep the target's + /// x-axis offset. Larger numbers give a more heavy slowly responding camera. + /// Using different settings per axis can yield a wide range of camera behaviors + [Range(0f, 20f)] + [Tooltip("How aggressively the camera tries to maintain the offset in the X-axis. Small numbers are more responsive, rapidly translating the camera to keep the target's x-axis offset. Larger numbers give a more heavy slowly responding camera. Using different settings per axis can yield a wide range of camera behaviors.")] + public float m_XDamping = 1f; + + /// How aggressively the camera tries to maintain the offset in the Y-axis. + /// Small numbers are more responsive, rapidly translating the camera to keep the target's + /// y-axis offset. Larger numbers give a more heavy slowly responding camera. + /// Using different settings per axis can yield a wide range of camera behaviors + [Range(0f, 20f)] + [Tooltip("How aggressively the camera tries to maintain the offset in the Y-axis. Small numbers are more responsive, rapidly translating the camera to keep the target's y-axis offset. Larger numbers give a more heavy slowly responding camera. Using different settings per axis can yield a wide range of camera behaviors.")] + public float m_YDamping = 1f; + + /// How aggressively the camera tries to maintain the offset in the Z-axis. + /// Small numbers are more responsive, rapidly translating the camera to keep the + /// target's z-axis offset. Larger numbers give a more heavy slowly responding camera. + /// Using different settings per axis can yield a wide range of camera behaviors + [Range(0f, 20f)] + [Tooltip("How aggressively the camera tries to maintain the offset in the Z-axis. Small numbers are more responsive, rapidly translating the camera to keep the target's z-axis offset. Larger numbers give a more heavy slowly responding camera. Using different settings per axis can yield a wide range of camera behaviors.")] + public float m_ZDamping = 1f; + + /// How to calculate the angular damping for the target orientation + public enum AngularDampingMode + { + /// Use Euler angles to specify damping values. + /// Subject to gimbal-lock fwhen pitch is steep. + Euler, + /// + /// Use quaternions to calculate angular damping. + /// No per-channel control, but not susceptible to gimbal-lock + Quaternion + } + + /// How to calculate the angular damping for the target orientation. + /// Use Quaternion if you expect the target to take on very steep pitches, which would + /// be subject to gimbal lock if Eulers are used. + public AngularDampingMode m_AngularDampingMode = AngularDampingMode.Euler; + + /// How aggressively the camera tries to track the target rotation's X angle. + /// Small numbers are more responsive. Larger numbers give a more heavy slowly responding camera. + [Range(0f, 20f)] + [Tooltip("How aggressively the camera tries to track the target rotation's X angle. Small numbers are more responsive. Larger numbers give a more heavy slowly responding camera.")] + public float m_PitchDamping = 0; + + /// How aggressively the camera tries to track the target rotation's Y angle. + /// Small numbers are more responsive. Larger numbers give a more heavy slowly responding camera. + [Range(0f, 20f)] + [Tooltip("How aggressively the camera tries to track the target rotation's Y angle. Small numbers are more responsive. Larger numbers give a more heavy slowly responding camera.")] + public float m_YawDamping = 0; + + /// How aggressively the camera tries to track the target rotation's Z angle. + /// Small numbers are more responsive. Larger numbers give a more heavy slowly responding camera. + [Range(0f, 20f)] + [Tooltip("How aggressively the camera tries to track the target rotation's Z angle. Small numbers are more responsive. Larger numbers give a more heavy slowly responding camera.")] + public float m_RollDamping = 0f; + + /// How aggressively the camera tries to track the target's orientation. + /// Small numbers are more responsive. Larger numbers give a more heavy slowly responding camera. + [Range(0f, 20f)] + [Tooltip("How aggressively the camera tries to track the target's orientation. Small numbers are more responsive. Larger numbers give a more heavy slowly responding camera.")] + public float m_AngularDamping = 0f; + + /// Derived classes should call this from their OnValidate() implementation + protected virtual void OnValidate() + { + m_FollowOffset = EffectiveOffset; + } + + /// Hide the offset in int inspector. Used by FreeLook. + public bool HideOffsetInInspector { get; set; } + + /// Get the target offset, with sanitization + public Vector3 EffectiveOffset + { + get + { + Vector3 offset = m_FollowOffset; + if (m_BindingMode == BindingMode.SimpleFollowWithWorldUp) + { + offset.x = 0; + offset.z = -Mathf.Abs(offset.z); + } + return offset; + } + } + + /// True if component is enabled and has a valid Follow target + public override bool IsValid { get { return enabled && FollowTarget != null; } } + + /// Get the Cinemachine Pipeline stage that this component implements. + /// Always returns the Body stage + public override CinemachineCore.Stage Stage { get { return CinemachineCore.Stage.Body; } } + + /// Positions the virtual camera according to the transposer rules. + /// The current camera state + /// Used for damping. If less than 0, no damping is done. + public override void MutateCameraState(ref CameraState curState, float deltaTime) + { + InitPrevFrameStateInfo(ref curState, deltaTime); + if (IsValid) + { + Vector3 pos; + Quaternion orient; + Vector3 offset = EffectiveOffset; + TrackTarget(deltaTime, curState.ReferenceUp, offset, out pos, out orient); + curState.RawPosition = pos + orient * offset; + curState.ReferenceUp = orient * Vector3.up; + } + } + + /// This is called to notify the us that a target got warped, + /// so that we can update its internal state to make the camera + /// also warp seamlessy. + /// The object that was warped + /// The amount the target's position changed + public override void OnTargetObjectWarped(Transform target, Vector3 positionDelta) + { + base.OnTargetObjectWarped(target, positionDelta); + if (target == FollowTarget) + m_PreviousTargetPosition += positionDelta; + } + + /// Initializes the state for previous frame if appropriate. + protected void InitPrevFrameStateInfo( + ref CameraState curState, float deltaTime) + { + if (m_previousTarget != FollowTarget || deltaTime < 0) + { + m_previousTarget = FollowTarget; + m_targetOrientationOnAssign + = (m_previousTarget == null) ? Quaternion.identity : FollowTargetRotation; + } + if (deltaTime < 0) + { + m_PreviousTargetPosition = FollowTargetPosition; + m_PreviousReferenceOrientation = GetReferenceOrientation(curState.ReferenceUp); + } + } + + /// Positions the virtual camera according to the transposer rules. + /// Used for damping. If less than 0, no damping is done. + /// Current camera up + /// Where we want to put the camera relative to the follow target + /// Resulting camera position + /// Damped target orientation + protected void TrackTarget( + float deltaTime, Vector3 up, Vector3 desiredCameraOffset, + out Vector3 outTargetPosition, out Quaternion outTargetOrient) + { + Quaternion targetOrientation = GetReferenceOrientation(up); + Quaternion dampedOrientation = targetOrientation; + if (deltaTime >= 0) + { + if (m_AngularDampingMode == AngularDampingMode.Quaternion + && m_BindingMode == BindingMode.LockToTarget) + { + float t = Damper.Damp(1, m_AngularDamping, deltaTime); + dampedOrientation = Quaternion.Slerp( + m_PreviousReferenceOrientation, targetOrientation, t); + } + else + { + Vector3 relative = (Quaternion.Inverse(m_PreviousReferenceOrientation) + * targetOrientation).eulerAngles; + for (int i = 0; i < 3; ++i) + if (relative[i] > 180) + relative[i] -= 360; + relative = Damper.Damp(relative, AngularDamping, deltaTime); + dampedOrientation = m_PreviousReferenceOrientation * Quaternion.Euler(relative); + } + } + m_PreviousReferenceOrientation = dampedOrientation; + + Vector3 targetPosition = FollowTargetPosition; + Vector3 currentPosition = m_PreviousTargetPosition; + Vector3 worldOffset = targetPosition - currentPosition; + + // Adjust for damping, which is done in camera-offset-local coords + if (deltaTime >= 0) + { + Quaternion dampingSpace; + if (desiredCameraOffset.AlmostZero()) + dampingSpace = VcamState.RawOrientation; + else + dampingSpace = Quaternion.LookRotation(dampedOrientation * desiredCameraOffset.normalized, up); + Vector3 localOffset = Quaternion.Inverse(dampingSpace) * worldOffset; + localOffset = Damper.Damp(localOffset, Damping, deltaTime); + worldOffset = dampingSpace * localOffset; + } + outTargetPosition = m_PreviousTargetPosition = currentPosition + worldOffset; + outTargetOrient = dampedOrientation; + } + + /// + /// Damping speeds for each of the 3 axes of the offset from target + /// + protected Vector3 Damping + { + get + { + switch (m_BindingMode) + { + case BindingMode.SimpleFollowWithWorldUp: + return new Vector3(0, m_YDamping, m_ZDamping); + default: + return new Vector3(m_XDamping, m_YDamping, m_ZDamping); + } + } + } + + /// + /// Damping speeds for each of the 3 axes of the target's rotation + /// + protected Vector3 AngularDamping + { + get + { + switch (m_BindingMode) + { + case BindingMode.LockToTargetNoRoll: + return new Vector3(m_PitchDamping, m_YawDamping, 0); + case BindingMode.LockToTargetWithWorldUp: + return new Vector3(0, m_YawDamping, 0); + case BindingMode.LockToTargetOnAssign: + case BindingMode.WorldSpace: + case BindingMode.SimpleFollowWithWorldUp: + return Vector3.zero; + default: + return new Vector3(m_PitchDamping, m_YawDamping, m_RollDamping); + } + } + } + + /// Internal API for the Inspector Editor, so it can draw a marker at the target + public virtual Vector3 GetTargetCameraPosition(Vector3 worldUp) + { + if (!IsValid) + return Vector3.zero; + return FollowTargetPosition + GetReferenceOrientation(worldUp) * EffectiveOffset; + } + + /// State information for damping + Vector3 m_PreviousTargetPosition = Vector3.zero; + Quaternion m_PreviousReferenceOrientation = Quaternion.identity; + Quaternion m_targetOrientationOnAssign = Quaternion.identity; + Transform m_previousTarget = null; + + /// Internal API for the Inspector Editor, so it can draw a marker at the target + public Quaternion GetReferenceOrientation(Vector3 worldUp) + { + if (FollowTarget != null) + { + Quaternion targetOrientation = FollowTarget.rotation; + switch (m_BindingMode) + { + case BindingMode.LockToTargetOnAssign: + return m_targetOrientationOnAssign; + case BindingMode.LockToTargetWithWorldUp: + return Uppify(targetOrientation, worldUp); + case BindingMode.LockToTargetNoRoll: + return Quaternion.LookRotation(targetOrientation * Vector3.forward, worldUp); + case BindingMode.LockToTarget: + return targetOrientation; + case BindingMode.SimpleFollowWithWorldUp: + { + Vector3 dir = FollowTargetPosition - VcamState.RawPosition; + dir = dir.ProjectOntoPlane(worldUp); + if (dir.AlmostZero()) + break; + return Quaternion.LookRotation(dir.normalized, worldUp); + } + default: + break; + } + } + return Quaternion.identity; + } + + static Quaternion Uppify(Quaternion q, Vector3 up) + { + Quaternion r = Quaternion.FromToRotation(q * Vector3.up, up); + return r * q; + } + } +} diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Runtime/Components/CinemachineTransposer.cs.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Runtime/Components/CinemachineTransposer.cs.meta" new file mode 100644 index 00000000..404e6285 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Runtime/Components/CinemachineTransposer.cs.meta" @@ -0,0 +1,12 @@ +fileFormatVersion: 2 +guid: fa7155796051b734daa718462081dc5f +timeCreated: 1484001119 +licenseType: Pro +MonoImporter: + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Runtime/Core.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Runtime/Core.meta" new file mode 100644 index 00000000..010446bf --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Runtime/Core.meta" @@ -0,0 +1,9 @@ +fileFormatVersion: 2 +guid: 3d53800f587b60a4191877d7713cd17c +folderAsset: yes +timeCreated: 1489096338 +licenseType: Pro +DefaultImporter: + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Runtime/Core/AxisState.cs" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Runtime/Core/AxisState.cs" new file mode 100644 index 00000000..a6dc668b --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Runtime/Core/AxisState.cs" @@ -0,0 +1,337 @@ +using UnityEngine; +using System; +using Cinemachine.Utility; +using UnityEngine.Serialization; + +namespace Cinemachine +{ + /// + /// Axis state for defining how to react to player input. + /// The settings here control the responsiveness of the axis to player input. + /// + [DocumentationSorting(DocumentationSortingAttribute.Level.UserRef)] + [Serializable] + public struct AxisState + { + /// The current value of the axis + [NoSaveDuringPlay] + [Tooltip("The current value of the axis.")] + public float Value; + + /// How fast the axis value can travel. Increasing this number + /// makes the behaviour more responsive to joystick input + [Tooltip("The maximum speed of this axis in units/second")] + public float m_MaxSpeed; + + /// The amount of time in seconds it takes to accelerate to + /// MaxSpeed with the supplied Axis at its maximum value + [Tooltip("The amount of time in seconds it takes to accelerate to MaxSpeed with the supplied Axis at its maximum value")] + public float m_AccelTime; + + /// The amount of time in seconds it takes to decelerate + /// the axis to zero if the supplied axis is in a neutral position + [Tooltip("The amount of time in seconds it takes to decelerate the axis to zero if the supplied axis is in a neutral position")] + public float m_DecelTime; + + /// The name of this axis as specified in Unity Input manager. + /// Setting to an empty string will disable the automatic updating of this axis + [FormerlySerializedAs("m_AxisName")] + [Tooltip("The name of this axis as specified in Unity Input manager. Setting to an empty string will disable the automatic updating of this axis")] + public string m_InputAxisName; + + /// The value of the input axis. A value of 0 means no input + /// You can drive this directly from a + /// custom input system, or you can set the Axis Name and have the value + /// driven by the internal Input Manager + [NoSaveDuringPlay] + [Tooltip("The value of the input axis. A value of 0 means no input. You can drive this directly from a custom input system, or you can set the Axis Name and have the value driven by the internal Input Manager")] + public float m_InputAxisValue; + + /// If checked, then the raw value of the input axis will be inverted + /// before it is used. + [FormerlySerializedAs("m_InvertAxis")] + [Tooltip("If checked, then the raw value of the input axis will be inverted before it is used")] + public bool m_InvertInput; + + /// The minimum value for the axis + [Tooltip("The minimum value for the axis")] + public float m_MinValue; + + /// The maximum value for the axis + [Tooltip("The maximum value for the axis")] + public float m_MaxValue; + + /// If checked, then the axis will wrap around at the min/max values, forming a loop + [Tooltip("If checked, then the axis will wrap around at the min/max values, forming a loop")] + public bool m_Wrap; + + /// Automatic recentering. Valid only if HasRecentering is true + [Tooltip("Automatic recentering to at-rest position")] + public Recentering m_Recentering; + + private float mCurrentSpeed; + + /// Constructor with specific values + public AxisState( + float minValue, float maxValue, bool wrap, bool rangeLocked, + float maxSpeed, float accelTime, float decelTime, + string name, bool invert) + { + m_MinValue = minValue; + m_MaxValue = maxValue; + m_Wrap = wrap; + ValueRangeLocked = rangeLocked; + + HasRecentering = false; + m_Recentering = new Recentering(false, 1, 2); + + m_MaxSpeed = maxSpeed; + m_AccelTime = accelTime; + m_DecelTime = decelTime; + Value = (minValue + maxValue) / 2; + m_InputAxisName = name; + m_InputAxisValue = 0; + m_InvertInput = invert; + + mCurrentSpeed = 0f; + } + + /// Call from OnValidate: Make sure the fields are sensible + public void Validate() + { + m_MaxSpeed = Mathf.Max(0, m_MaxSpeed); + m_AccelTime = Mathf.Max(0, m_AccelTime); + m_DecelTime = Mathf.Max(0, m_DecelTime); + m_MaxValue = Mathf.Clamp(m_MaxValue, m_MinValue, m_MaxValue); + } + + const float Epsilon = UnityVectorExtensions.Epsilon; + + public void Reset() + { + m_InputAxisValue = 0; + mCurrentSpeed = 0; + } + + /// + /// Updates the state of this axis based on the axis defined + /// by AxisState.m_AxisName + /// + /// Delta time in seconds + /// Returns true if this axis' input was non-zero this Update, + /// false otherwise + public bool Update(float deltaTime) + { + if (!string.IsNullOrEmpty(m_InputAxisName)) + { + try + { + m_InputAxisValue = CinemachineCore.GetInputAxis(m_InputAxisName); + } + catch (ArgumentException e) + { + Debug.LogError(e.ToString()); + } + } + + float input = m_InputAxisValue; + if (m_InvertInput) + input *= -1f; + + if (m_MaxSpeed > Epsilon) + { + float targetSpeed = input * m_MaxSpeed; + if (Mathf.Abs(targetSpeed) < Epsilon + || (Mathf.Sign(mCurrentSpeed) == Mathf.Sign(targetSpeed) + && Mathf.Abs(targetSpeed) < Mathf.Abs(mCurrentSpeed))) + { + // Need to decelerate + float a = Mathf.Abs(targetSpeed - mCurrentSpeed) / Mathf.Max(Epsilon, m_DecelTime); + float delta = Mathf.Min(a * deltaTime, Mathf.Abs(mCurrentSpeed)); + mCurrentSpeed -= Mathf.Sign(mCurrentSpeed) * delta; + } + else + { + // Accelerate to the target speed + float a = Mathf.Abs(targetSpeed - mCurrentSpeed) / Mathf.Max(Epsilon, m_AccelTime); + mCurrentSpeed += Mathf.Sign(targetSpeed) * a * deltaTime; + if (Mathf.Sign(mCurrentSpeed) == Mathf.Sign(targetSpeed) + && Mathf.Abs(mCurrentSpeed) > Mathf.Abs(targetSpeed)) + { + mCurrentSpeed = targetSpeed; + } + } + } + + // Clamp our max speeds so we don't go crazy + float maxSpeed = GetMaxSpeed(); + mCurrentSpeed = Mathf.Clamp(mCurrentSpeed, -maxSpeed, maxSpeed); + + Value += mCurrentSpeed * deltaTime; + bool isOutOfRange = (Value > m_MaxValue) || (Value < m_MinValue); + if (isOutOfRange) + { + if (m_Wrap) + { + if (Value > m_MaxValue) + Value = m_MinValue + (Value - m_MaxValue); + else + Value = m_MaxValue + (Value - m_MinValue); + } + else + { + Value = Mathf.Clamp(Value, m_MinValue, m_MaxValue); + mCurrentSpeed = 0f; + } + } + return Mathf.Abs(input) > Epsilon; + } + + // MaxSpeed may be limited as we approach the range ends, in order + // to prevent a hard bump + private float GetMaxSpeed() + { + float range = m_MaxValue - m_MinValue; + if (!m_Wrap && range > 0) + { + float threshold = range / 10f; + if (mCurrentSpeed > 0 && (m_MaxValue - Value) < threshold) + { + float t = (m_MaxValue - Value) / threshold; + return Mathf.Lerp(0, m_MaxSpeed, t); + } + else if (mCurrentSpeed < 0 && (Value - m_MinValue) < threshold) + { + float t = (Value - m_MinValue) / threshold; + return Mathf.Lerp(0, m_MaxSpeed, t); + } + } + return m_MaxSpeed; + } + + /// Value range is locked, i.e. not adjustable by the user (used by editor) + public bool ValueRangeLocked { get; set; } + + /// True if the Recentering member is valid (bcak-compatibility support: + /// old versions had recentering in a separate structure) + public bool HasRecentering { get; set; } + + /// Helper for automatic axis recentering + [DocumentationSorting(DocumentationSortingAttribute.Level.UserRef)] + [Serializable] + public struct Recentering + { + /// If checked, will enable automatic recentering of the + /// axis. If FALSE, recenting is disabled. + [Tooltip("If checked, will enable automatic recentering of the axis. If unchecked, recenting is disabled.")] + public bool m_enabled; + + /// If no input has been detected, the camera will wait + /// this long in seconds before moving its heading to the default heading. + [Tooltip("If no user input has been detected on the axis, the axis will wait this long in seconds before recentering.")] + public float m_WaitTime; + + /// How long it takes to reach destination once recentering has started + [Tooltip("How long it takes to reach destination once recentering has started.")] + public float m_RecenteringTime; + + /// Constructor with specific field values + public Recentering(bool enabled, float waitTime, float recenteringTime) + { + m_enabled = enabled; + m_WaitTime = waitTime; + m_RecenteringTime = recenteringTime; + mLastAxisInputTime = 0; + mRecenteringVelocity = 0; + m_LegacyHeadingDefinition = m_LegacyVelocityFilterStrength = -1; + } + + /// Call this from OnValidate() + public void Validate() + { + m_WaitTime = Mathf.Max(0, m_WaitTime); + m_RecenteringTime = Mathf.Max(0, m_RecenteringTime); + } + + // Internal state + float mLastAxisInputTime; + float mRecenteringVelocity; + public void CopyStateFrom(ref Recentering other) + { + if (mLastAxisInputTime != other.mLastAxisInputTime) + other.mRecenteringVelocity = 0; + mLastAxisInputTime = other.mLastAxisInputTime; + } + + /// Cancel any recenetering in progress. + public void CancelRecentering() + { + mLastAxisInputTime = Time.time; + mRecenteringVelocity = 0; + } + + /// Skip the wait time and start recentering now (only if enabled). + public void RecenterNow() + { + mLastAxisInputTime = 0; + } + + /// Bring the axis back to the cenetered state (only if enabled). + public void DoRecentering(ref AxisState axis, float deltaTime, float recenterTarget) + { + if (!m_enabled) + return; + + if (deltaTime < 0) + { + CancelRecentering(); + axis.Value = recenterTarget; + } + else if (Time.time > (mLastAxisInputTime + m_WaitTime)) + { + // Scale value determined heuristically, to account for accel/decel + float recenterTime = m_RecenteringTime / 3f; + if (recenterTime <= deltaTime) + axis.Value = recenterTarget; + else + { + float headingError = Mathf.DeltaAngle(axis.Value, recenterTarget); + float absHeadingError = Mathf.Abs(headingError); + if (absHeadingError < UnityVectorExtensions.Epsilon) + { + axis.Value = recenterTarget; + mRecenteringVelocity = 0; + } + else + { + float scale = deltaTime / recenterTime; + float desiredVelocity = Mathf.Sign(headingError) + * Mathf.Min(absHeadingError, absHeadingError * scale); + // Accelerate to the desired velocity + float accel = desiredVelocity - mRecenteringVelocity; + if ((desiredVelocity < 0 && accel < 0) || (desiredVelocity > 0 && accel > 0)) + desiredVelocity = mRecenteringVelocity + desiredVelocity * scale; + axis.Value += desiredVelocity; + mRecenteringVelocity = desiredVelocity; + } + } + } + } + + // Legacy support + [SerializeField] [HideInInspector] [FormerlySerializedAs("m_HeadingDefinition")] private int m_LegacyHeadingDefinition; + [SerializeField] [HideInInspector] [FormerlySerializedAs("m_VelocityFilterStrength")] private int m_LegacyVelocityFilterStrength; + internal bool LegacyUpgrade(ref int heading, ref int velocityFilter) + { + if (m_LegacyHeadingDefinition != -1 && m_LegacyVelocityFilterStrength != -1) + { + heading = m_LegacyHeadingDefinition; + velocityFilter = m_LegacyVelocityFilterStrength; + m_LegacyHeadingDefinition = m_LegacyVelocityFilterStrength = -1; + return true; + } + return false; + } + } + } +} diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Runtime/Core/AxisState.cs.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Runtime/Core/AxisState.cs.meta" new file mode 100644 index 00000000..2f36de5d --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Runtime/Core/AxisState.cs.meta" @@ -0,0 +1,12 @@ +fileFormatVersion: 2 +guid: 557c6f70a7173744abaa3967b6da6f5d +timeCreated: 1504195334 +licenseType: Pro +MonoImporter: + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Runtime/Core/CameraState.cs" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Runtime/Core/CameraState.cs" new file mode 100644 index 00000000..0b99c96e --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Runtime/Core/CameraState.cs" @@ -0,0 +1,498 @@ +using UnityEngine; +using Cinemachine.Utility; +using System.Collections.Generic; + +namespace Cinemachine +{ + /// + /// The output of the Cinemachine engine for a specific virtual camera. The information + /// in this struct can be blended, and provides what is needed to calculate an + /// appropriate camera position, orientation, and lens setting. + /// + /// Raw values are what the Cinemachine behaviours generate. The correction channel + /// holds perturbations to the raw values - e.g. noise or smoothing, or obstacle + /// avoidance corrections. Coirrections are not considered when making time-based + /// calculations such as damping. + /// + /// The Final position and orientation is the comination of the raw values and + /// their corrections. + /// + public struct CameraState + { + /// + /// Camera Lens Settings. + /// + public LensSettings Lens { get; set; } + + /// + /// Which way is up. World space unit vector. Must have a length of 1. + /// + public Vector3 ReferenceUp { get; set; } + + /// + /// The world space focus point of the camera. What the camera wants to look at. + /// There is a special constant define to represent "nothing". Be careful to + /// check for that (or check the HasLookAt property). + /// + public Vector3 ReferenceLookAt { get; set; } + + /// + /// Returns true if this state has a valid ReferenceLookAt value. + /// + public bool HasLookAt { get { return ReferenceLookAt == ReferenceLookAt; } } // will be false if NaN + + /// + /// This constant represents "no point in space" or "no direction". + /// + public static Vector3 kNoPoint = new Vector3(float.NaN, float.NaN, float.NaN); + + /// + /// Raw (un-corrected) world space position of this camera + /// + public Vector3 RawPosition { get; set; } + + /// + /// Raw (un-corrected) world space orientation of this camera + /// + public Quaternion RawOrientation { get; set; } + + /// This is a way for the Body component to bypass aim damping, + /// useful for when the body need to rotate its point of view, but does not + /// want interference from the aim damping + public Vector3 PositionDampingBypass { get; set; } + + /// + /// Subjective estimation of how "good" the shot is. + /// Larger values mean better quality. Default is 1. + /// + public float ShotQuality { get; set; } + + /// + /// Position correction. This will be added to the raw position. + /// This value doesn't get fed back into the system when calculating the next frame. + /// Can be noise, or smoothing, or both, or something else. + /// + public Vector3 PositionCorrection { get; set; } + + /// + /// Orientation correction. This will be added to the raw orientation. + /// This value doesn't get fed back into the system when calculating the next frame. + /// Can be noise, or smoothing, or both, or something else. + /// + public Quaternion OrientationCorrection { get; set; } + + /// + /// Position with correction applied. + /// + public Vector3 CorrectedPosition { get { return RawPosition + PositionCorrection; } } + + /// + /// Orientation with correction applied. + /// + public Quaternion CorrectedOrientation { get { return RawOrientation * OrientationCorrection; } } + + /// + /// Position with correction applied. This is what the final camera gets. + /// + public Vector3 FinalPosition { get { return RawPosition + PositionCorrection; } } + + /// + /// Orientation with correction and dutch applied. This is what the final camera gets. + /// + public Quaternion FinalOrientation + { + get + { + if (Mathf.Abs(Lens.Dutch) > UnityVectorExtensions.Epsilon) + return CorrectedOrientation * Quaternion.AngleAxis(Lens.Dutch, Vector3.forward); + return CorrectedOrientation; + } + } + + /// + /// These hints can be or'ed toether to influence how blending is done, and how state + /// is applied to the camera + /// + public enum BlendHintValue + { + /// Normal state blending + Nothing = 0, + /// This state does not affect the camera position + NoPosition = 1, + /// This state does not affect the camera rotation + NoOrientation = 2, + /// Combination of NoPosition and NoOrientation + NoTransform = NoPosition | NoOrientation, + /// Spherical blend about the LookAt target (if any) + SphericalPositionBlend = 4, + /// Cylindrical blend about the LookAt target (if any) + CylindricalPositionBlend = 8, + /// Radial blend when the LookAt target changes(if any) + RadialAimBlend = 16, + /// Ignore the LookAt target and just slerp the orientation + IgnoreLookAtTarget = 32, + /// This state does not affect the lens + NoLens = 64, + } + + /// + /// These hints can be or'ed toether to influence how blending is done, and how state + /// is applied to the camera + /// + public BlendHintValue BlendHint { get; set; } + + /// + /// State with default values + /// + public static CameraState Default + { + get + { + CameraState state = new CameraState(); + state.Lens = LensSettings.Default; + state.ReferenceUp = Vector3.up; + state.ReferenceLookAt = kNoPoint; + state.RawPosition = Vector3.zero; + state.RawOrientation = Quaternion.identity; + state.ShotQuality = 1; + state.PositionCorrection = Vector3.zero; + state.OrientationCorrection = Quaternion.identity; + state.PositionDampingBypass = Vector3.zero; + state.BlendHint = BlendHintValue.Nothing; + return state; + } + } + + /// Opaque structure represent extra blendable stuff and its weight. + /// The base system ignores this data - it is intended for extension modules + public struct CustomBlendable + { + /// The custom stuff that the extension module will consider + public Object m_Custom; + /// The weight of the custom stuff. Must be 0...1 + public float m_Weight; + + /// Constructor with specific values + /// The custom stuff that the extension module will consider + /// The weight of the custom stuff. Must be 0...1 + public CustomBlendable(Object custom, float weight) + { m_Custom = custom; m_Weight = weight; } + }; + + // This is to avoid excessive GC allocs + CustomBlendable mCustom0; + CustomBlendable mCustom1; + CustomBlendable mCustom2; + CustomBlendable mCustom3; + List m_CustomOverflow; + + /// The number of custom blendables that will be applied to the camera. + /// The base system manages but otherwise ignores this data - it is intended for + /// extension modules + public int NumCustomBlendables { get; private set; } + + /// Get a custom blendable that will be applied to the camera. + /// The base system manages but otherwise ignores this data - it is intended for + /// extension modules + /// Which one to get. Must be in range [0...NumCustomBlendables) + /// The custom blendable at the specified index. + public CustomBlendable GetCustomBlendable(int index) + { + switch (index) + { + case 0: return mCustom0; + case 1: return mCustom1; + case 2: return mCustom2; + case 3: return mCustom3; + default: + { + index -= 4; + if (m_CustomOverflow != null && index < m_CustomOverflow.Count) + return m_CustomOverflow[index]; + return new CustomBlendable(null, 0); + } + } + } + + int FindCustomBlendable(Object custom) + { + if (mCustom0.m_Custom == custom) + return 0; + if (mCustom1.m_Custom == custom) + return 1; + if (mCustom2.m_Custom == custom) + return 2; + if (mCustom3.m_Custom == custom) + return 3; + if (m_CustomOverflow != null) + { + for (int i = 0; i < m_CustomOverflow.Count; ++i) + if (m_CustomOverflow[i].m_Custom == custom) + return i + 4; + } + return -1; + } + + /// Add a custom blendable to the pot for eventual application to the camera. + /// The base system manages but otherwise ignores this data - it is intended for + /// extension modules + /// The custom blendable to add. If b.m_Custom is the same as an + /// already-added custom blendable, then they will be merged and the weights combined. + public void AddCustomBlendable(CustomBlendable b) + { + // Attempt to merge common blendables to avoid growth + int index = FindCustomBlendable(b.m_Custom); + if (index >= 0) + b.m_Weight += GetCustomBlendable(index).m_Weight; + else + { + index = NumCustomBlendables; + NumCustomBlendables = index + 1; + } + switch (index) + { + case 0: mCustom0 = b; break; + case 1: mCustom1 = b; break; + case 2: mCustom2 = b; break; + case 3: mCustom3 = b; break; + default: + { + if (m_CustomOverflow == null) + m_CustomOverflow = new List(); + m_CustomOverflow.Add(b); + break; + } + } + } + + /// Intelligently blend the contents of two states. + /// The first state, corresponding to t=0 + /// The second state, corresponding to t=1 + /// How much to interpolate. Internally clamped to 0..1 + /// Linearly interpolated CameraState + public static CameraState Lerp(CameraState stateA, CameraState stateB, float t) + { + t = Mathf.Clamp01(t); + float adjustedT = t; + + CameraState state = new CameraState(); + + // Combine the blend hints intelligently + if (((stateA.BlendHint & stateB.BlendHint) & BlendHintValue.NoPosition) != 0) + state.BlendHint |= BlendHintValue.NoPosition; + if (((stateA.BlendHint & stateB.BlendHint) & BlendHintValue.NoOrientation) != 0) + state.BlendHint |= BlendHintValue.NoOrientation; + if (((stateA.BlendHint & stateB.BlendHint) & BlendHintValue.NoLens) != 0) + state.BlendHint |= BlendHintValue.NoLens; + if (((stateA.BlendHint | stateB.BlendHint) & BlendHintValue.SphericalPositionBlend) != 0) + state.BlendHint |= BlendHintValue.SphericalPositionBlend; + if (((stateA.BlendHint | stateB.BlendHint) & BlendHintValue.CylindricalPositionBlend) != 0) + state.BlendHint |= BlendHintValue.CylindricalPositionBlend; + + if (((stateA.BlendHint | stateB.BlendHint) & BlendHintValue.NoLens) == 0) + state.Lens = LensSettings.Lerp(stateA.Lens, stateB.Lens, t); + else if (((stateA.BlendHint & stateB.BlendHint) & BlendHintValue.NoLens) == 0) + { + if ((stateA.BlendHint & BlendHintValue.NoLens) != 0) + state.Lens = stateB.Lens; + else + state.Lens = stateA.Lens; + } + state.ReferenceUp = Vector3.Slerp(stateA.ReferenceUp, stateB.ReferenceUp, t); + state.ShotQuality = Mathf.Lerp(stateA.ShotQuality, stateB.ShotQuality, t); + + state.PositionCorrection = ApplyPosBlendHint( + stateA.PositionCorrection, stateA.BlendHint, + stateB.PositionCorrection, stateB.BlendHint, + state.PositionCorrection, + Vector3.Lerp(stateA.PositionCorrection, stateB.PositionCorrection, t)); + + state.OrientationCorrection = ApplyRotBlendHint( + stateA.OrientationCorrection, stateA.BlendHint, + stateB.OrientationCorrection, stateB.BlendHint, + state.OrientationCorrection, + Quaternion.Slerp(stateA.OrientationCorrection, stateB.OrientationCorrection, t)); + + // LookAt target + if (!stateA.HasLookAt || !stateB.HasLookAt) + state.ReferenceLookAt = kNoPoint; + else + { + // Re-interpolate FOV to preserve target composition, if possible + float fovA = stateA.Lens.FieldOfView; + float fovB = stateB.Lens.FieldOfView; + if (((stateA.BlendHint | stateB.BlendHint) & BlendHintValue.NoLens) == 0 + && !state.Lens.Orthographic && !Mathf.Approximately(fovA, fovB)) + { + LensSettings lens = state.Lens; + lens.FieldOfView = InterpolateFOV( + fovA, fovB, + Mathf.Max((stateA.ReferenceLookAt - stateA.CorrectedPosition).magnitude, stateA.Lens.NearClipPlane), + Mathf.Max((stateB.ReferenceLookAt - stateB.CorrectedPosition).magnitude, stateB.Lens.NearClipPlane), t); + state.Lens = lens; + + // Make sure we preserve the screen composition through FOV changes + adjustedT = Mathf.Abs((lens.FieldOfView - fovA) / (fovB - fovA)); + } + + // Linear interpolation of lookAt target point + state.ReferenceLookAt = Vector3.Lerp( + stateA.ReferenceLookAt, stateB.ReferenceLookAt, adjustedT); + } + + // Raw position + state.RawPosition = ApplyPosBlendHint( + stateA.RawPosition, stateA.BlendHint, + stateB.RawPosition, stateB.BlendHint, + state.RawPosition, state.InterpolatePosition( + stateA.RawPosition, stateA.ReferenceLookAt, + stateB.RawPosition, stateB.ReferenceLookAt, + t)); + + // Interpolate the LookAt in Screen Space if requested + if (state.HasLookAt + && ((stateA.BlendHint | stateB.BlendHint) & BlendHintValue.RadialAimBlend) != 0) + { + state.ReferenceLookAt = state.RawPosition + Vector3.Slerp( + stateA.ReferenceLookAt - state.RawPosition, + stateB.ReferenceLookAt - state.RawPosition, adjustedT); + } + + // Clever orientation interpolation + Quaternion newOrient = state.RawOrientation; + if (((stateA.BlendHint | stateB.BlendHint) & BlendHintValue.NoOrientation) == 0) + { + Vector3 dirTarget = Vector3.zero; + if (state.HasLookAt)//&& ((stateA.BlendHint | stateB.BlendHint) & BlendHintValue.RadialAimBlend) == 0) + { + // If orientations are different, use LookAt to blend them + float angle = Quaternion.Angle(stateA.RawOrientation, stateB.RawOrientation); + if (angle > UnityVectorExtensions.Epsilon) + dirTarget = state.ReferenceLookAt - state.CorrectedPosition; + } + if (dirTarget.AlmostZero() + || ((stateA.BlendHint | stateB.BlendHint) & BlendHintValue.IgnoreLookAtTarget) != 0) + { + // Don't know what we're looking at - can only slerp + newOrient = UnityQuaternionExtensions.SlerpWithReferenceUp( + stateA.RawOrientation, stateB.RawOrientation, t, state.ReferenceUp); + } + else + { + // Rotate while preserving our lookAt target + dirTarget = dirTarget.normalized; + if ((dirTarget - state.ReferenceUp).AlmostZero() + || (dirTarget + state.ReferenceUp).AlmostZero()) + { + // Looking up or down at the pole + newOrient = UnityQuaternionExtensions.SlerpWithReferenceUp( + stateA.RawOrientation, stateB.RawOrientation, t, state.ReferenceUp); + } + else + { + // Put the target in the center + newOrient = Quaternion.LookRotation(dirTarget, state.ReferenceUp); + + // Blend the desired offsets from center + Vector2 deltaA = -stateA.RawOrientation.GetCameraRotationToTarget( + stateA.ReferenceLookAt - stateA.CorrectedPosition, stateA.ReferenceUp); + Vector2 deltaB = -stateB.RawOrientation.GetCameraRotationToTarget( + stateB.ReferenceLookAt - stateB.CorrectedPosition, stateB.ReferenceUp); + newOrient = newOrient.ApplyCameraRotation( + Vector2.Lerp(deltaA, deltaB, adjustedT), state.ReferenceUp); + } + } + } + state.RawOrientation = ApplyRotBlendHint( + stateA.RawOrientation, stateA.BlendHint, + stateB.RawOrientation, stateB.BlendHint, + state.RawOrientation, newOrient); + + // Accumulate the custom blendables and apply the weights + for (int i = 0; i < stateA.NumCustomBlendables; ++i) + { + CustomBlendable b = stateA.GetCustomBlendable(i); + b.m_Weight *= (1-t); + if (b.m_Weight > UnityVectorExtensions.Epsilon) + state.AddCustomBlendable(b); + } + for (int i = 0; i < stateB.NumCustomBlendables; ++i) + { + CustomBlendable b = stateB.GetCustomBlendable(i); + b.m_Weight *= t; + if (b.m_Weight > UnityVectorExtensions.Epsilon) + state.AddCustomBlendable(b); + } + return state; + } + + static float InterpolateFOV(float fovA, float fovB, float dA, float dB, float t) + { + // We interpolate shot height + float hA = dA * 2f * Mathf.Tan(fovA * Mathf.Deg2Rad / 2f); + float hB = dB * 2f * Mathf.Tan(fovB * Mathf.Deg2Rad / 2f); + float h = Mathf.Lerp(hA, hB, t); + float fov = 179f; + float d = Mathf.Lerp(dA, dB, t); + if (d > UnityVectorExtensions.Epsilon) + fov = 2f * Mathf.Atan(h / (2 * d)) * Mathf.Rad2Deg; + return Mathf.Clamp(fov, Mathf.Min(fovA, fovB), Mathf.Max(fovA, fovB)); + } + + static Vector3 ApplyPosBlendHint( + Vector3 posA, BlendHintValue hintA, + Vector3 posB, BlendHintValue hintB, + Vector3 original, Vector3 blended) + { + if (((hintA | hintB) & BlendHintValue.NoPosition) == 0) + return blended; + if (((hintA & hintB) & BlendHintValue.NoPosition) != 0) + return original; + if ((hintA & BlendHintValue.NoPosition) != 0) + return posB; + return posA; + } + + static Quaternion ApplyRotBlendHint( + Quaternion rotA, BlendHintValue hintA, + Quaternion rotB, BlendHintValue hintB, + Quaternion original, Quaternion blended) + { + if (((hintA | hintB) & BlendHintValue.NoOrientation) == 0) + return blended; + if (((hintA & hintB) & BlendHintValue.NoOrientation) != 0) + return original; + if ((hintA & BlendHintValue.NoOrientation) != 0) + return rotB; + return rotA; + } + + Vector3 InterpolatePosition( + Vector3 posA, Vector3 pivotA, + Vector3 posB, Vector3 pivotB, + float t) + { + #pragma warning disable 1718 // comparison made to same variable + if (pivotA == pivotA && pivotB == pivotB) // check for NaN + { + if ((BlendHint & BlendHintValue.CylindricalPositionBlend) != 0) + { + // Cylindrical interpolation about pivot + var a = Vector3.ProjectOnPlane(posA - pivotA, ReferenceUp); + var b = Vector3.ProjectOnPlane(posB - pivotB, ReferenceUp); + var c = Vector3.Slerp(a, b, t); + posA = (posA - a) + c; + posB = (posB - b) + c; + } + else if ((BlendHint & BlendHintValue.SphericalPositionBlend) != 0) + { + // Spherical interpolation about pivot + var c = Vector3.Slerp(posA - pivotA, posB - pivotB, t); + posA = pivotA + c; + posB = pivotB + c; + } + } + return Vector3.Lerp(posA, posB, t); + } + } +} diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Runtime/Core/CameraState.cs.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Runtime/Core/CameraState.cs.meta" new file mode 100644 index 00000000..d2ee9c0a --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Runtime/Core/CameraState.cs.meta" @@ -0,0 +1,12 @@ +fileFormatVersion: 2 +guid: c2a918f460a69394eb9726b31e1d404c +timeCreated: 1488314898 +licenseType: Pro +MonoImporter: + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Runtime/Core/CinemachineBlend.cs" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Runtime/Core/CinemachineBlend.cs" new file mode 100644 index 00000000..2a06c419 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Runtime/Core/CinemachineBlend.cs" @@ -0,0 +1,313 @@ +using Cinemachine.Utility; +using System; +using UnityEngine; + +namespace Cinemachine +{ + /// + /// Describes a blend between 2 Cinemachine Virtual Cameras, and holds the + /// current state of the blend. + /// + public class CinemachineBlend + { + /// First camera in the blend + public ICinemachineCamera CamA { get; set; } + + /// Second camera in the blend + public ICinemachineCamera CamB { get; set; } + + /// The curve that describes the way the blend transitions over time + /// from the first camera to the second. X-axis is normalized time (0...1) over which + /// the blend takes place and Y axis is blend weight (0..1) + public AnimationCurve BlendCurve { get; set; } + + /// The current time relative to the start of the blend + public float TimeInBlend { get; set; } + + /// The current weight of the blend. This is an evaluation of the + /// BlendCurve at the current time relative to the start of the blend. + /// 0 means camA, 1 means camB. + public float BlendWeight + { + get + { + if (BlendCurve == null || BlendCurve.length < 2 || IsComplete) + return 1; + return Mathf.Clamp01(BlendCurve.Evaluate(TimeInBlend / Duration)); + } + } + + /// Validity test for the blend. True if either camera is defined. + public bool IsValid { get { return ((CamA != null && CamA.IsValid) || (CamB != null && CamB.IsValid)); } } + + /// Duration in seconds of the blend. + public float Duration { get; set; } + + /// True if the time relative to the start of the blend is greater + /// than or equal to the blend duration + public bool IsComplete { get { return TimeInBlend >= Duration || !IsValid; } } + + /// Text description of the blend, for debugging + public string Description + { + get + { + var sb = CinemachineDebug.SBFromPool(); + if (CamB == null || !CamB.IsValid) + sb.Append("(none)"); + else + { + sb.Append("["); + sb.Append(CamB.Name); + sb.Append("]"); + } + sb.Append(" "); + sb.Append((int)(BlendWeight * 100f)); + sb.Append("% from "); + if (CamA == null || !CamA.IsValid) + sb.Append("(none)"); + else + { + sb.Append("["); + sb.Append(CamA.Name); + sb.Append("]"); + } + string text = sb.ToString(); + CinemachineDebug.ReturnToPool(sb); + return text; + } + } + + /// Does the blend use a specific Cinemachine Virtual Camera? + /// The camera to test + /// True if the camera is involved in the blend + public bool Uses(ICinemachineCamera cam) + { + if (cam == CamA || cam == CamB) + return true; + BlendSourceVirtualCamera b = CamA as BlendSourceVirtualCamera; + if (b != null && b.Blend.Uses(cam)) + return true; + b = CamB as BlendSourceVirtualCamera; + if (b != null && b.Blend.Uses(cam)) + return true; + return false; + } + + /// Construct a blend + /// First camera + /// Second camera + /// Blend curve + /// Duration of the blend, in seconds + /// Current time in blend, relative to the start of the blend + public CinemachineBlend( + ICinemachineCamera a, ICinemachineCamera b, AnimationCurve curve, float duration, float t) + { + CamA = a; + CamB = b; + BlendCurve = curve; + TimeInBlend = t; + Duration = duration; + } + + /// Make sure the source cameras get updated. + /// Default world up. Individual vcams may modify this + /// Time increment used for calculating time-based behaviours (e.g. damping) + public void UpdateCameraState(Vector3 worldUp, float deltaTime) + { + // Make sure both cameras have been updated (they are not necessarily + // enabled, and only enabled cameras get updated automatically + // every frame) + if (CamA != null && CamA.IsValid) + CamA.UpdateCameraState(worldUp, deltaTime); + if (CamB != null && CamB.IsValid) + CamB.UpdateCameraState(worldUp, deltaTime); + } + + /// Compute the blended CameraState for the current time in the blend. + public CameraState State + { + get + { + if (CamA == null || !CamA.IsValid) + { + if (CamB == null || !CamB.IsValid) + return CameraState.Default; + return CamB.State; + } + if (CamB == null || !CamB.IsValid) + return CamA.State; + return CameraState.Lerp(CamA.State, CamB.State, BlendWeight); + } + } + } + + /// Definition of a Camera blend. This struct holds the information + /// necessary to generate a suitable AnimationCurve for a Cinemachine Blend. + [Serializable] + [DocumentationSorting(DocumentationSortingAttribute.Level.UserRef)] + public struct CinemachineBlendDefinition + { + /// Supported predefined shapes for the blend curve. + [DocumentationSorting(DocumentationSortingAttribute.Level.UserRef)] + public enum Style + { + /// Zero-length blend + Cut, + /// S-shaped curve, giving a gentle and smooth transition + EaseInOut, + /// Linear out of the outgoing shot, and easy into the incoming + EaseIn, + /// Easy out of the outgoing shot, and linear into the incoming + EaseOut, + /// Easy out of the outgoing, and hard into the incoming + HardIn, + /// Hard out of the outgoing, and easy into the incoming + HardOut, + /// Linear blend. Mechanical-looking. + Linear, + /// Custom blend curve. + Custom + }; + + /// The shape of the blend curve. + [Tooltip("Shape of the blend curve")] + public Style m_Style; + + /// The duration (in seconds) of the blend + [Tooltip("Duration of the blend, in seconds")] + public float m_Time; + + /// Constructor + /// The shape of the blend curve. + /// The duration (in seconds) of the blend + public CinemachineBlendDefinition(Style style, float time) + { + m_Style = style; + m_Time = time; + m_CustomCurve = null; + } + + /// + /// A user-defined AnimationCurve, used only if style is Custom. + /// Curve MUST be normalized, i.e. time range [0...1], value range [0...1]. + /// + public AnimationCurve m_CustomCurve; + + static AnimationCurve[] sStandardCurves; + void CreateStandardCurves() + { + sStandardCurves = new AnimationCurve[(int)Style.Custom]; + + sStandardCurves[(int)Style.Cut] = null; + sStandardCurves[(int)Style.EaseInOut] = AnimationCurve.EaseInOut(0f, 0f, 1, 1f); + + sStandardCurves[(int)Style.EaseIn] = AnimationCurve.Linear(0f, 0f, 1, 1f); + Keyframe[] keys = sStandardCurves[(int)Style.EaseIn].keys; + keys[0].outTangent = 1.4f; + keys[1].inTangent = 0; + sStandardCurves[(int)Style.EaseIn].keys = keys; + + sStandardCurves[(int)Style.EaseOut] = AnimationCurve.Linear(0f, 0f, 1, 1f); + keys = sStandardCurves[(int)Style.EaseOut].keys; + keys[0].outTangent = 0; + keys[1].inTangent = 1.4f; + sStandardCurves[(int)Style.EaseOut].keys = keys; + + sStandardCurves[(int)Style.HardIn] = AnimationCurve.Linear(0f, 0f, 1, 1f); + keys = sStandardCurves[(int)Style.HardIn].keys; + keys[0].outTangent = 0; + keys[1].inTangent = 3f; + sStandardCurves[(int)Style.HardIn].keys = keys; + + sStandardCurves[(int)Style.HardOut] = AnimationCurve.Linear(0f, 0f, 1, 1f); + keys = sStandardCurves[(int)Style.HardOut].keys; + keys[0].outTangent = 3f; + keys[1].inTangent = 0; + sStandardCurves[(int)Style.HardOut].keys = keys; + + sStandardCurves[(int)Style.Linear] = AnimationCurve.Linear(0f, 0f, 1, 1f); + } + + /// + /// A normalized AnimationCurve specifying the interpolation curve + /// for this camera blend. Y-axis values must be in range [0,1] (internally clamped + /// within Blender) and time must be in range of [0, 1]. + /// + public AnimationCurve BlendCurve + { + get + { + if (m_Style == Style.Custom) + { + if (m_CustomCurve == null) + m_CustomCurve = AnimationCurve.EaseInOut(0f, 0f, 1, 1f); + return m_CustomCurve; + } + if (sStandardCurves == null) + CreateStandardCurves(); + return sStandardCurves[(int)m_Style]; + } + } + } + + /// + /// Point source for blending. It's not really a virtual camera, but takes + /// a CameraState and exposes it as a virtual camera for the purposes of blending. + /// + internal class StaticPointVirtualCamera : ICinemachineCamera + { + public StaticPointVirtualCamera(CameraState state, string name) { State = state; Name = name; } + public void SetState(CameraState state) { State = state; } + + public string Name { get; private set; } + public string Description { get { return ""; }} + public int Priority { get; set; } + public Transform LookAt { get; set; } + public Transform Follow { get; set; } + public CameraState State { get; private set; } + public GameObject VirtualCameraGameObject { get { return null; } } + public bool IsValid { get { return true; } } + public ICinemachineCamera ParentCamera { get { return null; } } + public bool IsLiveChild(ICinemachineCamera vcam, bool dominantChildOnly = false) { return false; } + public void UpdateCameraState(Vector3 worldUp, float deltaTime) {} + public void InternalUpdateCameraState(Vector3 worldUp, float deltaTime) {} + public void OnTransitionFromCamera(ICinemachineCamera fromCam, Vector3 worldUp, float deltaTime) {} + public void OnTargetObjectWarped(Transform target, Vector3 positionDelta) {} + } + + /// + /// Blend result source for blending. This exposes a CinemachineBlend object + /// as an ersatz virtual camera for the purposes of blending. This achieves the purpose + /// of blending the result oif a blend. + /// + internal class BlendSourceVirtualCamera : ICinemachineCamera + { + public BlendSourceVirtualCamera(CinemachineBlend blend) { Blend = blend; } + public CinemachineBlend Blend { get; set; } + + public string Name { get { return "Mid-blend"; }} + public string Description { get { return Blend == null ? "(null)" : Blend.Description; }} + public int Priority { get; set; } + public Transform LookAt { get; set; } + public Transform Follow { get; set; } + public CameraState State { get; private set; } + public GameObject VirtualCameraGameObject { get { return null; } } + public bool IsValid { get { return Blend != null && Blend.IsValid; } } + public ICinemachineCamera ParentCamera { get { return null; } } + public bool IsLiveChild(ICinemachineCamera vcam, bool dominantChildOnly = false) + { return Blend != null && (vcam == Blend.CamA || vcam == Blend.CamB); } + public CameraState CalculateNewState(float deltaTime) { return State; } + public void UpdateCameraState(Vector3 worldUp, float deltaTime) + { + if (Blend != null) + { + Blend.UpdateCameraState(worldUp, deltaTime); + State = Blend.State; + } + } + public void InternalUpdateCameraState(Vector3 worldUp, float deltaTime) {} + public void OnTransitionFromCamera(ICinemachineCamera fromCam, Vector3 worldUp, float deltaTime) {} + public void OnTargetObjectWarped(Transform target, Vector3 positionDelta) {} + } +} diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Runtime/Core/CinemachineBlend.cs.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Runtime/Core/CinemachineBlend.cs.meta" new file mode 100644 index 00000000..4c6862af --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Runtime/Core/CinemachineBlend.cs.meta" @@ -0,0 +1,12 @@ +fileFormatVersion: 2 +guid: 3fed8968b96eb924891cf86f5c51f661 +timeCreated: 1484407000 +licenseType: Pro +MonoImporter: + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Runtime/Core/CinemachineBlenderSettings.cs" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Runtime/Core/CinemachineBlenderSettings.cs" new file mode 100644 index 00000000..dbe6aa2c --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Runtime/Core/CinemachineBlenderSettings.cs" @@ -0,0 +1,98 @@ +using UnityEngine; +using System; + +namespace Cinemachine +{ + /// + /// Asset that defines the rules for blending between Virtual Cameras. + /// + [DocumentationSorting(DocumentationSortingAttribute.Level.UserRef)] + [Serializable] + public sealed class CinemachineBlenderSettings : ScriptableObject + { + /// + /// Container specifying how two specific Cinemachine Virtual Cameras + /// blend together. + /// + [DocumentationSorting(DocumentationSortingAttribute.Level.UserRef)] + [Serializable] + public struct CustomBlend + { + [Tooltip("When blending from this camera")] + public string m_From; + + [Tooltip("When blending to this camera")] + public string m_To; + + [CinemachineBlendDefinitionProperty] + [Tooltip("Blend curve definition")] + public CinemachineBlendDefinition m_Blend; + } + /// The array containing explicitly defined blends between two Virtual Cameras + [Tooltip("The array containing explicitly defined blends between two Virtual Cameras")] + public CustomBlend[] m_CustomBlends = null; + + /// Internal API for the inspector editopr: a label to represent any camera + public const string kBlendFromAnyCameraLabel = "**ANY CAMERA**"; + + /// + /// Attempts to find a blend definition which matches the to and from cameras as specified. + /// If no match is found, the function returns the supplied default blend. + /// + /// The game object name of the from camera + /// The game object name of the to camera + /// Blend to return if no custom blend found. + /// + public CinemachineBlendDefinition GetBlendForVirtualCameras( + string fromCameraName, string toCameraName, CinemachineBlendDefinition defaultBlend) + { + bool gotAnyToMe = false; + bool gotMeToAny = false; + CinemachineBlendDefinition anyToMe = defaultBlend; + CinemachineBlendDefinition meToAny = defaultBlend; + if (m_CustomBlends != null) + { + for (int i = 0; i < m_CustomBlends.Length; ++i) + { + // Attempt to find direct name first + CustomBlend blendParams = m_CustomBlends[i]; + if ((blendParams.m_From == fromCameraName) + && (blendParams.m_To == toCameraName)) + { + return blendParams.m_Blend; + } + // If we come across applicable wildcards, remember them + if (blendParams.m_From == kBlendFromAnyCameraLabel) + { + if (!string.IsNullOrEmpty(toCameraName) + && blendParams.m_To == toCameraName) + { + anyToMe = blendParams.m_Blend; + gotAnyToMe = true; + } + else if (blendParams.m_To == kBlendFromAnyCameraLabel) + defaultBlend = blendParams.m_Blend; + } + else if (blendParams.m_To == kBlendFromAnyCameraLabel + && !string.IsNullOrEmpty(fromCameraName) + && blendParams.m_From == fromCameraName) + { + meToAny = blendParams.m_Blend; + gotMeToAny = true; + } + } + } + + // If nothing is found try to find wild card blends from any + // camera to our new one + if (gotAnyToMe) + return anyToMe; + + // Still have nothing? Try from our camera to any camera + if (gotMeToAny) + return meToAny; + + return defaultBlend; + } + } +} diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Runtime/Core/CinemachineBlenderSettings.cs.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Runtime/Core/CinemachineBlenderSettings.cs.meta" new file mode 100644 index 00000000..8152b65e --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Runtime/Core/CinemachineBlenderSettings.cs.meta" @@ -0,0 +1,12 @@ +fileFormatVersion: 2 +guid: 36baaa8bdcb9d8b49b9199833965d2c3 +timeCreated: 1486497606 +licenseType: Pro +MonoImporter: + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Runtime/Core/CinemachineComponentBase.cs" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Runtime/Core/CinemachineComponentBase.cs" new file mode 100644 index 00000000..29ddea52 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Runtime/Core/CinemachineComponentBase.cs" @@ -0,0 +1,219 @@ +using UnityEngine; + +namespace Cinemachine +{ + /// + /// An abstract representation of a mutator acting on a Cinemachine Virtual Camera + /// + [DocumentationSorting(DocumentationSortingAttribute.Level.API)] + public abstract class CinemachineComponentBase : MonoBehaviour + { + /// Useful constant for very small floats + protected const float Epsilon = Utility.UnityVectorExtensions.Epsilon; + + /// Get the associated CinemachineVirtualCameraBase + public CinemachineVirtualCameraBase VirtualCamera + { + get + { + if (m_vcamOwner == null) + m_vcamOwner = GetComponent(); + if (m_vcamOwner == null && transform.parent != null) + m_vcamOwner = transform.parent.GetComponent(); + return m_vcamOwner; + } + } + CinemachineVirtualCameraBase m_vcamOwner; + + /// Returns the owner vcam's Follow target. + public Transform FollowTarget + { + get + { + CinemachineVirtualCameraBase vcam = VirtualCamera; + return vcam == null ? null : vcam.Follow; + } + } + + /// Returns the owner vcam's LookAt target. + public Transform LookAtTarget + { + get + { + CinemachineVirtualCameraBase vcam = VirtualCamera; + return vcam == null ? null : vcam.LookAt; + } + } + + private Transform mCachedFollowTarget; + private CinemachineVirtualCameraBase mCachedFollowTargetVcam; + private CinemachineTargetGroup mCachedFollowTargetGroup; + + void UpdateFollowTargetCache() + { + mCachedFollowTargetVcam = null; + mCachedFollowTargetGroup = null; + mCachedFollowTarget = FollowTarget; + if (mCachedFollowTarget != null) + { + mCachedFollowTargetVcam = mCachedFollowTarget.GetComponent(); + mCachedFollowTargetGroup = mCachedFollowTarget.GetComponent(); + } + } + + /// Get Follow target as CinemachineTargetGroup, or null if target is not a group + public CinemachineTargetGroup FollowTargetGroup + { + get + { + if (FollowTarget != mCachedFollowTarget) + UpdateFollowTargetCache(); + return mCachedFollowTargetGroup; + } + } + + /// Get the position of the Follow target. Special handling: If the Follow target is + /// a VirtualCamera, returns the vcam State's position, not the transform's position + public Vector3 FollowTargetPosition + { + get + { + Transform target = FollowTarget; + if (target != mCachedFollowTarget) + UpdateFollowTargetCache(); + if (mCachedFollowTargetVcam != null) + return mCachedFollowTargetVcam.State.FinalPosition; + if (target != null) + return target.position; + return Vector3.zero; + } + } + + /// Get the rotation of the Follow target. Special handling: If the Follow target is + /// a VirtualCamera, returns the vcam State's rotation, not the transform's rotation + public Quaternion FollowTargetRotation + { + get + { + Transform target = FollowTarget; + if (target != mCachedFollowTarget) + { + mCachedFollowTargetVcam = null; + mCachedFollowTarget = target; + if (target != null) + mCachedFollowTargetVcam = target.GetComponent(); + } + if (mCachedFollowTargetVcam != null) + return mCachedFollowTargetVcam.State.FinalOrientation; + if (target != null) + return target.rotation; + return Quaternion.identity; + } + } + + private Transform mCachedLookAtTarget; + private CinemachineVirtualCameraBase mCachedLookAtTargetVcam; + private CinemachineTargetGroup mCachedLookAtTargetGroup; + + void UpdateLookAtTargetCache() + { + mCachedLookAtTargetVcam = null; + mCachedLookAtTargetGroup = null; + mCachedLookAtTarget = LookAtTarget; + if (mCachedLookAtTarget != null) + { + mCachedLookAtTargetVcam = mCachedLookAtTarget.GetComponent(); + mCachedLookAtTargetGroup = mCachedLookAtTarget.GetComponent(); + } + } + + /// Get LookAt target as CinemachineTargetGroup, or null if target is not a group + public CinemachineTargetGroup LookAtTargetGroup + { + get + { + if (LookAtTarget != mCachedLookAtTarget) + UpdateLookAtTargetCache(); + return mCachedLookAtTargetGroup; + } + } + + /// Get the position of the LookAt target. Special handling: If the LookAt target is + /// a VirtualCamera, returns the vcam State's position, not the transform's position + public Vector3 LookAtTargetPosition + { + get + { + Transform target = LookAtTarget; + if (target != mCachedLookAtTarget) + UpdateLookAtTargetCache(); + if (mCachedLookAtTargetVcam != null) + return mCachedLookAtTargetVcam.State.FinalPosition; + if (target != null) + return target.position; + return Vector3.zero; + } + } + + /// Get the rotation of the LookAt target. Special handling: If the LookAt target is + /// a VirtualCamera, returns the vcam State's rotation, not the transform's rotation + public Quaternion LookAtTargetRotation + { + get + { + Transform target = LookAtTarget; + if (target != mCachedLookAtTarget) + UpdateLookAtTargetCache(); + if (mCachedLookAtTargetVcam != null) + return mCachedLookAtTargetVcam.State.FinalOrientation; + if (target != null) + return target.rotation; + return Quaternion.identity; + } + } + + /// Returns the owner vcam's CameraState. + public CameraState VcamState + { + get + { + CinemachineVirtualCameraBase vcam = VirtualCamera; + return vcam == null ? CameraState.Default : vcam.State; + } + } + + /// Returns true if this object is enabled and set up to produce results. + public abstract bool IsValid { get; } + + /// Override this to do such things as offset the RefereceLookAt. + /// Base class implementation does nothing. + /// Input state that must be mutated + public virtual void PrePipelineMutateCameraState(ref CameraState curState, float deltaTime) {} + + /// What part of the pipeline this fits into + public abstract CinemachineCore.Stage Stage { get; } + + /// Mutates the camera state. This state will later be applied to the camera. + /// Input state that must be mutated + /// Delta time for time-based effects (ignore if less than 0) + public abstract void MutateCameraState(ref CameraState curState, float deltaTime); + + /// Notification that this virtual camera is going live. + /// Base class implementation does nothing. + /// The camera being deactivated. May be null. + /// Default world Up, set by the CinemachineBrain + /// Delta time for time-based effects (ignore if less than or equal to 0) + /// True if the vcam should do an internal update as a result of this call + public virtual bool OnTransitionFromCamera( + ICinemachineCamera fromCam, Vector3 worldUp, float deltaTime, + ref CinemachineVirtualCameraBase.TransitionParams transitionParams) + { return false; } + + /// This is called to notify the component that a target got warped, + /// so that the component can update its internal state to make the camera + /// also warp seamlessy. Base class implementation does nothing. + /// The object that was warped + /// The amount the target's position changed + public virtual void OnTargetObjectWarped(Transform target, Vector3 positionDelta) {} + } +} diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Runtime/Core/CinemachineComponentBase.cs.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Runtime/Core/CinemachineComponentBase.cs.meta" new file mode 100644 index 00000000..780afda7 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Runtime/Core/CinemachineComponentBase.cs.meta" @@ -0,0 +1,12 @@ +fileFormatVersion: 2 +guid: b2f73bdc979030e419f33c10913639cc +timeCreated: 1510078351 +licenseType: Pro +MonoImporter: + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Runtime/Core/CinemachineCore.cs" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Runtime/Core/CinemachineCore.cs" new file mode 100644 index 00000000..3b7d6328 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Runtime/Core/CinemachineCore.cs" @@ -0,0 +1,445 @@ +using UnityEngine; +using System.Collections.Generic; + +namespace Cinemachine +{ + /// A singleton that manages complete lists of CinemachineBrain and, + /// Cinemachine Virtual Cameras, and the priority queue. Provides + /// services to keeping track of whether Cinemachine Virtual Cameras have + /// been updated each frame. + public sealed class CinemachineCore + { + /// Data version string. Used to upgrade from legacy projects + public static readonly int kStreamingVersion = 20170927; + + /// Human-readable Cinemachine Version + public static readonly string kVersionString = "2.2.9"; + + /// + /// Stages in the Cinemachine Component pipeline, used for + /// UI organization>. This enum defines the pipeline order. + /// + public enum Stage + { + /// Second stage: position the camera in space + Body, + + /// Third stage: orient the camera to point at the target + Aim, + + /// Final pipeline stage: apply noise (this is done separately, in the + /// Correction channel of the CameraState) + Noise, + + /// Not a pipeline stage. This is invoked on all virtual camera + /// types, after the pipeline is complete + Finalize + }; + + private static CinemachineCore sInstance = null; + + /// Get the singleton instance + public static CinemachineCore Instance + { + get + { + if (sInstance == null) + sInstance = new CinemachineCore(); + return sInstance; + } + } + + /// + /// If true, show hidden Cinemachine objects, to make manual script mapping possible. + /// + public static bool sShowHiddenObjects = false; + + /// Delegate for overriding Unity's default input system. Returns the value + /// of the named axis. + public delegate float AxisInputDelegate(string axisName); + + /// Delegate for overriding Unity's default input system. + /// If you set this, then your delegate will be called instead of + /// System.Input.GetAxis(axisName) whenever in-game user input is needed. + public static AxisInputDelegate GetInputAxis = UnityEngine.Input.GetAxis; + + /// + /// Delegate for overriding a blend that is about to be applied to a transition. + /// A handler can either return the default blend, or a new blend specific to + /// current conditions. + /// + /// The outgoing virtual camera + /// Yhe incoming virtual camera + /// The blend that would normally be applied + /// The context in which the blend is taking place. + /// Can be a CinemachineBrain, or CinemachineStateDrivenCamera, or other manager + /// object that can initiate a blend + /// The blend definition to use for this transition. + public delegate CinemachineBlendDefinition GetBlendOverrideDelegate( + ICinemachineCamera fromVcam, ICinemachineCamera toVcam, + CinemachineBlendDefinition defaultBlend, + MonoBehaviour owner); + + /// + /// Delegate for overriding a blend that is about to be applied to a transition. + /// A handler can either return the default blend, or a new blend specific to + /// current conditions. + /// + public static GetBlendOverrideDelegate GetBlendOverride; + + /// This event will fire after a brain updates its Camera + public static CinemachineBrain.BrainEvent CameraUpdatedEvent = new CinemachineBrain.BrainEvent(); + + /// List of all active CinemachineBrains. + private List mActiveBrains = new List(); + + /// Access the array of active CinemachineBrains in the scene + public int BrainCount { get { return mActiveBrains.Count; } } + + /// Access the array of active CinemachineBrains in the scene + /// without gebnerating garbage + /// Index of the brain to access, range 0-BrainCount + /// The brain at the specified index + public CinemachineBrain GetActiveBrain(int index) + { + return mActiveBrains[index]; + } + + /// Called when a CinemachineBrain is enabled. + internal void AddActiveBrain(CinemachineBrain brain) + { + // First remove it, just in case it's being added twice + RemoveActiveBrain(brain); + mActiveBrains.Insert(0, brain); + } + + /// Called when a CinemachineBrain is disabled. + internal void RemoveActiveBrain(CinemachineBrain brain) + { + mActiveBrains.Remove(brain); + } + + /// List of all active ICinemachineCameras. + private List mActiveCameras = new List(); + + /// + /// List of all active Cinemachine Virtual Cameras for all brains. + /// This list is kept sorted by priority. + /// + public int VirtualCameraCount { get { return mActiveCameras.Count; } } + + /// Access the array of active ICinemachineCamera in the scene + /// without gebnerating garbage + /// Index of the camera to access, range 0-VirtualCameraCount + /// The virtual camera at the specified index + public CinemachineVirtualCameraBase GetVirtualCamera(int index) + { + return mActiveCameras[index]; + } + + /// Called when a Cinemachine Virtual Camera is enabled. + internal void AddActiveCamera(CinemachineVirtualCameraBase vcam) + { + // Bring it to the top of the list + RemoveActiveCamera(vcam); + + // Keep list sorted by priority + int insertIndex; + for (insertIndex = 0; insertIndex < mActiveCameras.Count; ++insertIndex) + if (vcam.Priority >= mActiveCameras[insertIndex].Priority) + break; + + mActiveCameras.Insert(insertIndex, vcam); + } + + /// Called when a Cinemachine Virtual Camera is disabled. + internal void RemoveActiveCamera(CinemachineVirtualCameraBase vcam) + { + mActiveCameras.Remove(vcam); + } + + // Registry of all vcams that are present, active or not + private List> mAllCameras + = new List>(); + + /// Called when a vcam is awakened. + internal void CameraAwakened(CinemachineVirtualCameraBase vcam) + { + int parentLevel = 0; + for (ICinemachineCamera p = vcam.ParentCamera; p != null; p = p.ParentCamera) + ++parentLevel; + while (mAllCameras.Count <= parentLevel) + mAllCameras.Add(new List()); + mAllCameras[parentLevel].Add(vcam); + } + + /// Called when a vcam is destroyed. + internal void CameraDestroyed(CinemachineVirtualCameraBase vcam) + { + for (int i = 0; i < mAllCameras.Count; ++i) + mAllCameras[i].Remove(vcam); + } + + CinemachineVirtualCameraBase mRoundRobinVcamLastFrame = null; + + static float mLastUpdateTime; + static int FixedFrameCount { get; set; } // Current fixed frame count + + /// Update all the active vcams in the scene, in the correct dependency order. + internal void UpdateAllActiveVirtualCameras(int layerMask, Vector3 worldUp, float deltaTime) + { + // Setup for roundRobin standby updating + var filter = CurrentUpdateFilter; + bool canUpdateStandby = (filter != UpdateFilter.SmartFixed); // never in smart fixed + CinemachineVirtualCameraBase currentRoundRobin = mRoundRobinVcamLastFrame; + + // Update the fixed frame count + float now = Time.time; + if (now != mLastUpdateTime) + { + mLastUpdateTime = now; + if ((filter & ~UpdateFilter.Smart) == UpdateFilter.Fixed) + ++FixedFrameCount; + } + + // Update the leaf-most cameras first + for (int i = mAllCameras.Count-1; i >= 0; --i) + { + var sublist = mAllCameras[i]; + for (int j = sublist.Count - 1; j >= 0; --j) + { + var vcam = sublist[j]; + if (canUpdateStandby && vcam == mRoundRobinVcamLastFrame) + currentRoundRobin = null; // update the next roundrobin candidate + if (vcam == null) + { + sublist.RemoveAt(j); + continue; // deleted + } + if (vcam.m_StandbyUpdate == CinemachineVirtualCameraBase.StandbyUpdateMode.Always + || IsLive(vcam)) + { + // Skip this vcam if it's not on the layer mask + if (((1 << vcam.gameObject.layer) & layerMask) != 0) + UpdateVirtualCamera(vcam, worldUp, deltaTime); + } + else if (currentRoundRobin == null + && mRoundRobinVcamLastFrame != vcam + && canUpdateStandby + && vcam.m_StandbyUpdate != CinemachineVirtualCameraBase.StandbyUpdateMode.Never + && vcam.isActiveAndEnabled) + { + // Do the round-robin update + CurrentUpdateFilter &= ~UpdateFilter.Smart; // force it + UpdateVirtualCamera(vcam, worldUp, deltaTime); + CurrentUpdateFilter = filter; + currentRoundRobin = vcam; + } + } + } + + // Did we manage to update a roundrobin? + if (canUpdateStandby) + { + if (currentRoundRobin == mRoundRobinVcamLastFrame) + currentRoundRobin = null; // take the first candidate + mRoundRobinVcamLastFrame = currentRoundRobin; + } + } + + /// + /// Update a single Cinemachine Virtual Camera if and only if it + /// hasn't already been updated this frame. Always update vcams via this method. + /// Calling this more than once per frame for the same camera will have no effect. + /// + internal void UpdateVirtualCamera( + CinemachineVirtualCameraBase vcam, Vector3 worldUp, float deltaTime) + { + if (vcam == null) + return; + + bool isSmartUpdate = (CurrentUpdateFilter & UpdateFilter.Smart) == UpdateFilter.Smart; + UpdateTracker.UpdateClock updateClock + = (UpdateTracker.UpdateClock)(CurrentUpdateFilter & ~UpdateFilter.Smart); + + // If we're in smart update mode and the target moved, then we must examine + // how the target has been moving recently in order to figure out whether to + // update now + if (isSmartUpdate) + { + Transform updateTarget = GetUpdateTarget(vcam); + if (updateTarget == null) + return; // vcam deleted + if (UpdateTracker.GetPreferredUpdate(updateTarget) != updateClock) + return; // wrong clock + } + + // Have we already been updated this frame? + if (mUpdateStatus == null) + mUpdateStatus = new Dictionary(); + UpdateStatus status; + if (!mUpdateStatus.TryGetValue(vcam, out status)) + { + status = new UpdateStatus(); + mUpdateStatus.Add(vcam, status); + } + + int frameDelta = (updateClock == UpdateTracker.UpdateClock.Late) + ? Time.frameCount - status.lastUpdateFrame + : FixedFrameCount - status.lastUpdateFixedFrame; + if (deltaTime >= 0) + { + if (frameDelta == 0 && status.lastUpdateMode == updateClock) + return; // already updated + if (frameDelta > 0) + deltaTime *= frameDelta; // try to catch up if multiple frames + } + +//Debug.Log((vcam.ParentCamera == null ? "" : vcam.ParentCamera.Name + ".") + vcam.Name + ": frame " + Time.frameCount + "/" + status.lastUpdateFixedFrame + ", " + CurrentUpdateFilter + ", deltaTime = " + deltaTime); + vcam.InternalUpdateCameraState(worldUp, deltaTime); + status.lastUpdateFrame = Time.frameCount; + status.lastUpdateFixedFrame = FixedFrameCount; + status.lastUpdateMode = updateClock; + } + + class UpdateStatus + { + public int lastUpdateFrame; + public int lastUpdateFixedFrame; + public UpdateTracker.UpdateClock lastUpdateMode; + public UpdateStatus() + { + lastUpdateFrame = -2; + lastUpdateFixedFrame = 0; + lastUpdateMode = UpdateTracker.UpdateClock.Late; + } + } + static Dictionary mUpdateStatus; + + [RuntimeInitializeOnLoadMethod] + static void InitializeModule() + { + mUpdateStatus = new Dictionary(); + } + + /// Internal use only + internal enum UpdateFilter + { + Fixed = UpdateTracker.UpdateClock.Fixed, + Late = UpdateTracker.UpdateClock.Late, + Smart = 8, // meant to be or'ed with the others + SmartFixed = Smart | Fixed, + SmartLate = Smart | Late + } + internal UpdateFilter CurrentUpdateFilter { get; set; } + + private static Transform GetUpdateTarget(CinemachineVirtualCameraBase vcam) + { + if (vcam == null || vcam.gameObject == null) + return null; + Transform target = vcam.LookAt; + if (target != null) + return target; + target = vcam.Follow; + if (target != null) + return target; + // If no target, use the vcam itself + return vcam.transform; + } + + /// Internal use only - inspector + internal UpdateTracker.UpdateClock GetVcamUpdateStatus(CinemachineVirtualCameraBase vcam) + { + UpdateStatus status; + if (mUpdateStatus == null || !mUpdateStatus.TryGetValue(vcam, out status)) + return UpdateTracker.UpdateClock.Late; + return status.lastUpdateMode; + } + + /// + /// Is this virtual camera currently actively controlling any Camera? + /// + public bool IsLive(ICinemachineCamera vcam) + { + if (vcam != null) + { + for (int i = 0; i < BrainCount; ++i) + { + CinemachineBrain b = GetActiveBrain(i); + if (b != null && b.IsLive(vcam)) + return true; + } + } + return false; + } + + /// + /// Signal that the virtual has been activated. + /// If the camera is live, then all CinemachineBrains that are showing it will + /// send an activation event. + /// + public void GenerateCameraActivationEvent(ICinemachineCamera vcam, ICinemachineCamera vcamFrom) + { + if (vcam != null) + { + for (int i = 0; i < BrainCount; ++i) + { + CinemachineBrain b = GetActiveBrain(i); + if (b != null && b.IsLive(vcam)) + b.m_CameraActivatedEvent.Invoke(vcam, vcamFrom); + } + } + } + + /// + /// Signal that the virtual camera's content is discontinuous WRT the previous frame. + /// If the camera is live, then all CinemachineBrains that are showing it will send a cut event. + /// + public void GenerateCameraCutEvent(ICinemachineCamera vcam) + { + if (vcam != null) + { + for (int i = 0; i < BrainCount; ++i) + { + CinemachineBrain b = GetActiveBrain(i); + if (b != null && b.IsLive(vcam)) + b.m_CameraCutEvent.Invoke(b); + } + } + } + + /// + /// Try to find a CinemachineBrain to associate with a + /// Cinemachine Virtual Camera. The first CinemachineBrain + /// in which this Cinemachine Virtual Camera is live will be used. + /// If none, then the first active CinemachineBrain with the correct + /// layer filter will be used. + /// Brains with OutputCamera == null will not be returned. + /// Final result may be null. + /// + /// Virtual camera whose potential brain we need. + /// First CinemachineBrain found that might be + /// appropriate for this vcam, or null + public CinemachineBrain FindPotentialTargetBrain(CinemachineVirtualCameraBase vcam) + { + if (vcam != null) + { + int numBrains = BrainCount; + for (int i = 0; i < numBrains; ++i) + { + CinemachineBrain b = GetActiveBrain(i); + if (b != null && b.OutputCamera != null && b.IsLive(vcam)) + return b; + } + int layer = 1 << vcam.gameObject.layer; + for (int i = 0; i < numBrains; ++i) + { + CinemachineBrain b = GetActiveBrain(i); + if (b != null && b.OutputCamera != null && (b.OutputCamera.cullingMask & layer) != 0) + return b; + } + } + return null; + } + } +} diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Runtime/Core/CinemachineCore.cs.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Runtime/Core/CinemachineCore.cs.meta" new file mode 100644 index 00000000..032ca22f --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Runtime/Core/CinemachineCore.cs.meta" @@ -0,0 +1,12 @@ +fileFormatVersion: 2 +guid: c7d73314dfe49f8458398c6dc8edcda8 +timeCreated: 1484001119 +licenseType: Pro +MonoImporter: + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Runtime/Core/CinemachineDebug.cs" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Runtime/Core/CinemachineDebug.cs" new file mode 100644 index 00000000..82510a0d --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Runtime/Core/CinemachineDebug.cs" @@ -0,0 +1,81 @@ +using UnityEngine; +using System.Collections.Generic; +using System.Text; + +namespace Cinemachine.Utility +{ + /// Manages onscreen positions for Cinemachine debugging output + public class CinemachineDebug + { + static HashSet mClients; + + /// Release a screen rectangle previously obtained through GetScreenPos() + /// The client caller. Used as a handle. + public static void ReleaseScreenPos(Object client) + { + if (mClients != null && mClients.Contains(client)) + mClients.Remove(client); + } + + /// Reserve an on-screen rectangle for debugging output. + /// The client caller. This is used as a handle. + /// Sample text, for determining rectangle size + /// What style will be used to draw, used here for + /// determining rect size + /// An area on the game screen large enough to print the text + /// in the style indicated + public static Rect GetScreenPos(Object client, string text, GUIStyle style) + { + if (mClients == null) + mClients = new HashSet(); + if (!mClients.Contains(client)) + mClients.Add(client); + + Vector2 pos = new Vector2(0, 0); + Vector2 size = style.CalcSize(new GUIContent(text)); + if (mClients != null) + { + foreach (var c in mClients) + { + if (c == client) + break; + pos.y += size.y; + } + } + return new Rect(pos, size); + } + + /// + /// Delegate for OnGUI debugging. + /// This will be called by the CinemachineBrain in its OnGUI (editor only) + /// + public delegate void OnGUIDelegate(); + + /// + /// Delegate for OnGUI debugging. + /// This will be called by the CinemachineBrain in its OnGUI (editor only) + /// + public static OnGUIDelegate OnGUIHandlers; + + private static List mAvailableStringBuilders; + + /// Get a preallocated StringBuilder from the pool + public static StringBuilder SBFromPool() + { + if (mAvailableStringBuilders == null || mAvailableStringBuilders.Count == 0) + return new StringBuilder(); + var sb = mAvailableStringBuilders[mAvailableStringBuilders.Count - 1]; + mAvailableStringBuilders.RemoveAt(mAvailableStringBuilders.Count - 1); + sb.Length = 0; + return sb; + } + + /// Return a StringBuilder to the preallocated pool + public static void ReturnToPool(StringBuilder sb) + { + if (mAvailableStringBuilders == null) + mAvailableStringBuilders = new List(); + mAvailableStringBuilders.Add(sb); + } + } +} diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Runtime/Core/CinemachineDebug.cs.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Runtime/Core/CinemachineDebug.cs.meta" new file mode 100644 index 00000000..da7791e3 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Runtime/Core/CinemachineDebug.cs.meta" @@ -0,0 +1,12 @@ +fileFormatVersion: 2 +guid: 10e6f8c815d3c4d45b1d98b951d53912 +timeCreated: 1481654954 +licenseType: Pro +MonoImporter: + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Runtime/Core/CinemachineExtension.cs" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Runtime/Core/CinemachineExtension.cs" new file mode 100644 index 00000000..0ee67590 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Runtime/Core/CinemachineExtension.cs" @@ -0,0 +1,126 @@ +using System.Collections.Generic; +using UnityEngine; + +namespace Cinemachine +{ + /// + /// Base class for a Cinemachine Virtual Camera extension module. + /// Hooks into the Cinemachine Pipeline. + /// + [DocumentationSorting(DocumentationSortingAttribute.Level.API)] + public abstract class CinemachineExtension : MonoBehaviour + { + /// Useful constant for very small floats + protected const float Epsilon = Utility.UnityVectorExtensions.Epsilon; + + /// Get the associated CinemachineVirtualCameraBase + public CinemachineVirtualCameraBase VirtualCamera + { + get + { + if (m_vcamOwner == null) + m_vcamOwner = GetComponent(); + return m_vcamOwner; + } + } + CinemachineVirtualCameraBase m_vcamOwner; + + /// Connect to virtual camera pipeline. + /// Override implementations must call this base implementation + protected virtual void Awake() + { + ConnectToVcam(true); + } + +#if UNITY_EDITOR + /// Does nothing. This is only here so we get the little "enabled" + /// checkbox in the inspector + void Update() {} + + [UnityEditor.Callbacks.DidReloadScripts] + static void OnScriptReload() + { + var extensions = Resources.FindObjectsOfTypeAll( + typeof(CinemachineExtension)) as CinemachineExtension[]; + foreach (var e in extensions) + e.ConnectToVcam(true); + } +#endif + /// Disconnect from virtual camera pipeline. + /// Override implementations must call this base implementation + protected virtual void OnDestroy() + { + ConnectToVcam(false); + } + + /// Connect to virtual camera. Implementation must be safe to be called + /// redundantly. Override implementations must call this base implementation + /// True if connectinf, false if disconnecting + protected virtual void ConnectToVcam(bool connect) + { + if (connect && VirtualCamera == null) + Debug.LogError("CinemachineExtension requires a Cinemachine Virtual Camera component"); + if (VirtualCamera != null) + { + if (connect) + VirtualCamera.AddExtension(this); + else + VirtualCamera.RemoveExtension(this); + } + mExtraState = null; + } + + /// Legacy support. This is only here to avoid changing the API + /// to make PostPipelineStageCallback() public + public void InvokePostPipelineStageCallback( + CinemachineVirtualCameraBase vcam, + CinemachineCore.Stage stage, ref CameraState state, float deltaTime) + { + PostPipelineStageCallback(vcam, stage, ref state, deltaTime); + } + + /// + /// This callback will be called after the virtual camera has implemented + /// each stage in the pipeline. This method may modify the referenced state. + /// If deltaTime less than 0, reset all state info and perform no damping. + /// + protected abstract void PostPipelineStageCallback( + CinemachineVirtualCameraBase vcam, + CinemachineCore.Stage stage, ref CameraState state, float deltaTime); + + /// This is called to notify the extension that a target got warped, + /// so that the extension can update its internal state to make the camera + /// also warp seamlessy. Base class implementation does nothing. + /// The object that was warped + /// The amount the target's position changed + public virtual void OnTargetObjectWarped(Transform target, Vector3 positionDelta) {} + + /// Because extensions can be placed on manager cams and will in that + /// case be called for all the vcam children, vcam-specific state information + /// should be stored here. Just define a class to hold your state info + /// and use it exclusively when calling this. + protected T GetExtraState(ICinemachineCamera vcam) where T : class, new() + { + if (mExtraState == null) + mExtraState = new Dictionary(); + System.Object extra = null; + if (!mExtraState.TryGetValue(vcam, out extra)) + extra = mExtraState[vcam] = new T(); + return extra as T; + } + + /// Ineffeicient method to get all extra state infor for all vcams. + /// Intended for Editor use only, not runtime! + /// + protected List GetAllExtraStates() where T : class, new() + { + var list = new List(); + if (mExtraState != null) + foreach (var v in mExtraState) + list.Add(v.Value as T); + return list; + } + + private Dictionary mExtraState; + } +} diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Runtime/Core/CinemachineExtension.cs.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Runtime/Core/CinemachineExtension.cs.meta" new file mode 100644 index 00000000..9fb5bd6a --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Runtime/Core/CinemachineExtension.cs.meta" @@ -0,0 +1,12 @@ +fileFormatVersion: 2 +guid: 4fa53a91a43ae1a4bbf6b29961b45c38 +timeCreated: 1504804419 +licenseType: Pro +MonoImporter: + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Runtime/Core/CinemachineInputAxisDriver.cs" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Runtime/Core/CinemachineInputAxisDriver.cs" new file mode 100644 index 00000000..bfa01dbe --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Runtime/Core/CinemachineInputAxisDriver.cs" @@ -0,0 +1,87 @@ +using System; +using UnityEngine; +using Cinemachine.Utility; + +namespace Cinemachine +{ + [Serializable] + public struct CinemachineInputAxisDriver + { + [Tooltip("Multiply the input by this amount prior to processing. Controls the input power.")] + public float multiplier; + + [Tooltip("The amount of time in seconds it takes to accelerate to a higher speed")] + public float accelTime; + + [Tooltip("The amount of time in seconds it takes to decelerate to a lower speed")] + public float decelTime; + + [Tooltip("The name of this axis as specified in Unity Input manager. " + + "Setting to an empty string will disable the automatic updating of this axis")] + public string name; + + [NoSaveDuringPlay] + [Tooltip("The value of the input axis. A value of 0 means no input. You can drive " + + "this directly from a custom input system, or you can set the Axis Name and " + + "have the value driven by the internal Input Manager")] + public float inputValue; + + /// Internal state + private float mCurrentSpeed; + const float Epsilon = UnityVectorExtensions.Epsilon; + + /// Call from OnValidate: Make sure the fields are sensible + public void Validate() + { + accelTime = Mathf.Max(0, accelTime); + decelTime = Mathf.Max(0, decelTime); + } + + public bool Update(float deltaTime, ref AxisState axis) + { + if (!string.IsNullOrEmpty(name)) + { + try { inputValue = CinemachineCore.GetInputAxis(name); } + catch (ArgumentException) {} + //catch (ArgumentException e) { Debug.LogError(e.ToString()); } + } + + float input = inputValue * multiplier; + if (deltaTime < Epsilon) + mCurrentSpeed = 0; + else + { + float speed = input / deltaTime; + float dampTime = Mathf.Abs(speed) < Mathf.Abs(mCurrentSpeed) ? decelTime : accelTime; + speed = mCurrentSpeed + Damper.Damp(speed - mCurrentSpeed, dampTime, deltaTime); + mCurrentSpeed = speed; + + // Decelerate to the end points of the range if not wrapping + float range = axis.m_MaxValue - axis.m_MinValue; + if (!axis.m_Wrap && decelTime > Epsilon && range > Epsilon) + { + float v0 = ClampValue(ref axis, axis.Value); + float v = ClampValue(ref axis, v0 + speed * deltaTime); + float d = (speed > 0) ? axis.m_MaxValue - v : v - axis.m_MinValue; + if (d < (0.1f * range) && Mathf.Abs(speed) > Epsilon) + speed = Damper.Damp(v - v0, decelTime, deltaTime) / deltaTime; + } + input = speed * deltaTime; + } + + axis.Value = ClampValue(ref axis, axis.Value + input); + return Mathf.Abs(inputValue) > Epsilon; + } + + float ClampValue(ref AxisState axis, float v) + { + float r = axis.m_MaxValue - axis.m_MinValue; + if (axis.m_Wrap && r > Epsilon) + { + v = (v - axis.m_MinValue) % r; + v += axis.m_MinValue + ((v < 0) ? r : 0); + } + return Mathf.Clamp(v, axis.m_MinValue, axis.m_MaxValue); + } + } +} diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Runtime/Core/CinemachineInputAxisDriver.cs.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Runtime/Core/CinemachineInputAxisDriver.cs.meta" new file mode 100644 index 00000000..e08d8c2b --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Runtime/Core/CinemachineInputAxisDriver.cs.meta" @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 6d862fce0b0707949bb86058d777b116 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Runtime/Core/CinemachinePathBase.cs" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Runtime/Core/CinemachinePathBase.cs" new file mode 100644 index 00000000..8430da58 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Runtime/Core/CinemachinePathBase.cs" @@ -0,0 +1,380 @@ +using UnityEngine; +using Cinemachine.Utility; +using System; + +namespace Cinemachine +{ + /// Abstract base class for a world-space path, + /// suitable for a camera dolly track. + public abstract class CinemachinePathBase : MonoBehaviour + { + /// Path samples per waypoint + [Tooltip("Path samples per waypoint. This is used for calculating path distances.")] + [Range(1, 100)] + public int m_Resolution = 20; + + /// This class holds the settings that control how the path + /// will appear in the editor scene view. The path is not visible in the game view + [DocumentationSorting(DocumentationSortingAttribute.Level.UserRef)] + [Serializable] public class Appearance + { + [Tooltip("The color of the path itself when it is active in the editor")] + public Color pathColor = Color.green; + [Tooltip("The color of the path itself when it is inactive in the editor")] + public Color inactivePathColor = Color.gray; + [Tooltip("The width of the railroad-tracks that are drawn to represent the path")] + [Range(0f, 10f)] + public float width = 0.2f; + } + /// The settings that control how the path + /// will appear in the editor scene view. + [Tooltip("The settings that control how the path will appear in the editor scene view.")] + public Appearance m_Appearance = new Appearance(); + + /// The minimum value for the path position + public abstract float MinPos { get; } + + /// The maximum value for the path position + public abstract float MaxPos { get; } + + /// True if the path ends are joined to form a continuous loop + public abstract bool Looped { get; } + + /// Get a standardized path position, taking spins into account if looped + /// Position along the path + /// Standardized position, between MinPos and MaxPos + public virtual float StandardizePos(float pos) + { + if (MaxPos == 0) + return 0; + if (Looped) + { + pos = pos % MaxPos; + if (pos < 0) + pos += MaxPos; + return pos > MaxPos - UnityVectorExtensions.Epsilon ? 0 : pos; + } + return Mathf.Clamp(pos, 0, MaxPos); + } + + /// Get a worldspace position of a point along the path + /// Postion along the path. Need not be standardized. + /// World-space position of the point along at path at pos + public abstract Vector3 EvaluatePosition(float pos); + + /// Get the tangent of the curve at a point along the path. + /// Postion along the path. Need not be standardized. + /// World-space direction of the path tangent. + /// Length of the vector represents the tangent strength + public abstract Vector3 EvaluateTangent(float pos); + + /// Get the orientation the curve at a point along the path. + /// Postion along the path. Need not be standardized. + /// World-space orientation of the path + public abstract Quaternion EvaluateOrientation(float pos); + + /// Find the closest point on the path to a given worldspace target point. + /// Performance could be improved by checking the bounding polygon of each segment, + /// and only entering the best segment(s) + /// Worldspace target that we want to approach + /// In what segment of the path to start the search. + /// A Segment is a section of path between 2 waypoints. + /// How many segments on either side of the startSegment + /// to search. -1 means no limit, i.e. search the entire path + /// We search a segment by dividing it into this many + /// straight pieces. The higher the number, the more accurate the result, but performance + /// is proportionally slower for higher numbers + /// The position along the path that is closest to the target point. + /// The value is in Path Units, not Distance units. + public virtual float FindClosestPoint( + Vector3 p, int startSegment, int searchRadius, int stepsPerSegment) + { + float start = MinPos; + float end = MaxPos; + if (searchRadius >= 0) + { + int r = Mathf.FloorToInt(Mathf.Min(searchRadius, (end - start) / 2f)); + start = startSegment - r; + end = startSegment + r + 1; + if (!Looped) + { + start = Mathf.Max(start, MinPos); + end = Mathf.Max(end, MaxPos); + } + } + stepsPerSegment = Mathf.RoundToInt(Mathf.Clamp(stepsPerSegment, 1f, 100f)); + float stepSize = 1f / stepsPerSegment; + float bestPos = startSegment; + float bestDistance = float.MaxValue; + int iterations = (stepsPerSegment == 1) ? 1 : 3; + for (int i = 0; i < iterations; ++i) + { + Vector3 v0 = EvaluatePosition(start); + for (float f = start + stepSize; f <= end; f += stepSize) + { + Vector3 v = EvaluatePosition(f); + float t = p.ClosestPointOnSegment(v0, v); + float d = Vector3.SqrMagnitude(p - Vector3.Lerp(v0, v, t)); + if (d < bestDistance) + { + bestDistance = d; + bestPos = f - (1 - t) * stepSize; + } + v0 = v; + } + start = bestPos - stepSize; + end = bestPos + stepSize; + stepSize /= stepsPerSegment; + } + return bestPos; + } + + /// How to interpret the Path Position + public enum PositionUnits + { + /// Use PathPosition units, where 0 is first waypoint, 1 is second waypoint, etc + PathUnits, + /// Use Distance Along Path. Path will be sampled according to its Resolution + /// setting, and a distance lookup table will be cached internally + Distance, + /// Normalized units, where 0 is the start of the path, and 1 is the end. + /// Path will be sampled according to its Resolution + /// setting, and a distance lookup table will be cached internally + Normalized + } + + /// Get the minimum value, for the given unit type + /// The unit type + /// The minimum allowable value for this path + public float MinUnit(PositionUnits units) + { + if (units == PositionUnits.Normalized) + return 0; + return units == PositionUnits.Distance ? 0 : MinPos; + } + + /// Get the maximum value, for the given unit type + /// The unit type + /// The maximum allowable value for this path + public float MaxUnit(PositionUnits units) + { + if (units == PositionUnits.Normalized) + return 1; + return units == PositionUnits.Distance ? PathLength : MaxPos; + } + + /// Standardize the unit, so that it lies between MinUmit and MaxUnit + /// The value to be standardized + /// The unit type + /// The standardized value of pos, between MinUnit and MaxUnit + public virtual float StandardizeUnit(float pos, PositionUnits units) + { + if (units == PositionUnits.PathUnits) + return StandardizePos(pos); + if (units == PositionUnits.Distance) + return StandardizePathDistance(pos); + float len = PathLength; + if (len < UnityVectorExtensions.Epsilon) + return 0; + return StandardizePathDistance(pos * len) / len; + } + + /// Get a worldspace position of a point along the path + /// Postion along the path. Need not be normalized. + /// The unit to use when interpreting the value of pos. + /// World-space position of the point along at path at pos + public Vector3 EvaluatePositionAtUnit(float pos, PositionUnits units) + { + return EvaluatePosition(ToNativePathUnits(pos, units)); + } + + /// Get the tangent of the curve at a point along the path. + /// Postion along the path. Need not be normalized. + /// The unit to use when interpreting the value of pos. + /// World-space direction of the path tangent. + /// Length of the vector represents the tangent strength + public Vector3 EvaluateTangentAtUnit(float pos, PositionUnits units) + { + return EvaluateTangent(ToNativePathUnits(pos, units)); + } + + /// Get the orientation the curve at a point along the path. + /// Postion along the path. Need not be normalized. + /// The unit to use when interpreting the value of pos. + /// World-space orientation of the path + public Quaternion EvaluateOrientationAtUnit(float pos, PositionUnits units) + { + return EvaluateOrientation(ToNativePathUnits(pos, units)); + } + + /// When calculating the distance cache, sample the path this many + /// times between points + public abstract int DistanceCacheSampleStepsPerSegment { get; } + + /// Call this if the path changes in such a way as to affect distances + /// or other cached path elements + public virtual void InvalidateDistanceCache() + { + m_DistanceToPos = null; + m_PosToDistance = null; + m_CachedSampleSteps = 0; + m_PathLength = 0; + } + + /// See whether the distance cache is valid. If it's not valid, + /// then any call to GetPathLength() or ToNativePathUnits() will + /// trigger a potentially costly regeneration of the path distance cache + /// Whether the cache is valid + public bool DistanceCacheIsValid() + { + return (MaxPos == MinPos) + || (m_DistanceToPos != null && m_PosToDistance != null + && m_CachedSampleSteps == DistanceCacheSampleStepsPerSegment + && m_CachedSampleSteps > 0); + } + + /// Get the length of the path in distance units. + /// If the distance cache is not valid, then calling this will + /// trigger a potentially costly regeneration of the path distance cache + /// The length of the path in distance units, when sampled at this rate + public float PathLength + { + get + { + if (DistanceCacheSampleStepsPerSegment < 1) + return 0; + if (!DistanceCacheIsValid()) + ResamplePath(DistanceCacheSampleStepsPerSegment); + return m_PathLength; + } + } + + /// Standardize a distance along the path based on the path length. + /// If the distance cache is not valid, then calling this will + /// trigger a potentially costly regeneration of the path distance cache + /// The distance to standardize + /// The standardized distance, ranging from 0 to path length + public float StandardizePathDistance(float distance) + { + float length = PathLength; + if (length < Vector3.kEpsilon) + return 0; + if (Looped) + { + distance = distance % length; + if (distance < 0) + distance += length; + } + return Mathf.Clamp(distance, 0, length); + } + + /// Get the path position (in native path units) corresponding to the psovided + /// value, in the units indicated. + /// If the distance cache is not valid, then calling this will + /// trigger a potentially costly regeneration of the path distance cache + /// The value to convert from + /// The units in which pos is expressed + /// The length of the path in native units, when sampled at this rate + public float ToNativePathUnits(float pos, PositionUnits units) + { + if (units == PositionUnits.PathUnits) + return pos; + if (DistanceCacheSampleStepsPerSegment < 1 || PathLength < UnityVectorExtensions.Epsilon) + return MinPos; + if (units == PositionUnits.Normalized) + pos *= PathLength; + pos = StandardizePathDistance(pos); + float d = pos / m_cachedDistanceStepSize; + int i = Mathf.FloorToInt(d); + if (i >= m_DistanceToPos.Length-1) + return MaxPos; + float t = d - (float)i; + return MinPos + Mathf.Lerp(m_DistanceToPos[i], m_DistanceToPos[i+1], t); + } + + /// Get the path position (in path units) corresponding to this distance along the path. + /// If the distance cache is not valid, then calling this will + /// trigger a potentially costly regeneration of the path distance cache + /// The value to convert from, in native units + /// The units to convert toexpressed + /// The length of the path in distance units, when sampled at this rate + public float FromPathNativeUnits(float pos, PositionUnits units) + { + if (units == PositionUnits.PathUnits) + return pos; + float length = PathLength; + if (DistanceCacheSampleStepsPerSegment < 1 || length < UnityVectorExtensions.Epsilon) + return 0; + pos = StandardizePos(pos); + float d = pos / m_cachedPosStepSize; + int i = Mathf.FloorToInt(d); + if (i >= m_PosToDistance.Length-1) + pos = m_PathLength; + else + { + float t = d - (float)i; + pos = Mathf.Lerp(m_PosToDistance[i], m_PosToDistance[i+1], t); + } + if (units == PositionUnits.Normalized) + pos /= length; + return pos; + } + + private float[] m_DistanceToPos; + private float[] m_PosToDistance; + private int m_CachedSampleSteps; + private float m_PathLength; + private float m_cachedPosStepSize; + private float m_cachedDistanceStepSize; + + private void ResamplePath(int stepsPerSegment) + { + InvalidateDistanceCache(); + + float minPos = MinPos; + float maxPos = MaxPos; + float stepSize = 1f / Mathf.Max(1, stepsPerSegment); + + // Sample the positions + int numKeys = Mathf.RoundToInt((maxPos - minPos) / stepSize) + 1; + m_PosToDistance = new float[numKeys]; + m_CachedSampleSteps = stepsPerSegment; + m_cachedPosStepSize = stepSize; + + Vector3 p0 = EvaluatePosition(0); + m_PosToDistance[0] = 0; + float pos = minPos; + for (int i = 1; i < numKeys; ++i) + { + pos += stepSize; + Vector3 p = EvaluatePosition(pos); + float d = Vector3.Distance(p0, p); + m_PathLength += d; + p0 = p; + m_PosToDistance[i] = m_PathLength; + } + + // Resample the distances + m_DistanceToPos = new float[numKeys]; + m_DistanceToPos[0] = 0; + if (numKeys > 1) + { + stepSize = m_PathLength / (numKeys - 1); + m_cachedDistanceStepSize = stepSize; + float distance = 0; + int posIndex = 1; + for (int i = 1; i < numKeys; ++i) + { + distance += stepSize; + float d = m_PosToDistance[posIndex]; + while (d < distance && posIndex < numKeys-1) + d = m_PosToDistance[++posIndex]; + float d0 = m_PosToDistance[posIndex-1]; + float delta = d - d0; + float t = (distance - d0) / delta; + m_DistanceToPos[i] = m_cachedPosStepSize * (t + posIndex - 1); + } + } + } + } +} diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Runtime/Core/CinemachinePathBase.cs.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Runtime/Core/CinemachinePathBase.cs.meta" new file mode 100644 index 00000000..c8ecccf5 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Runtime/Core/CinemachinePathBase.cs.meta" @@ -0,0 +1,12 @@ +fileFormatVersion: 2 +guid: a73149a4b6c41d741bc5e4e3b7711c0d +timeCreated: 1494359378 +licenseType: Pro +MonoImporter: + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Runtime/Core/CinemachinePropertyAttribute.cs" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Runtime/Core/CinemachinePropertyAttribute.cs" new file mode 100644 index 00000000..05071575 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Runtime/Core/CinemachinePropertyAttribute.cs" @@ -0,0 +1,82 @@ +using UnityEngine; + +namespace Cinemachine +{ + /// + /// Property applied to AxisState. Used for custom drawing in the inspector. + /// + public sealed class AxisStatePropertyAttribute : PropertyAttribute {} + + /// + /// Property applied to OrbitalTransposer.Heading. Used for custom drawing in the inspector. + /// + public sealed class OrbitalTransposerHeadingPropertyAttribute : PropertyAttribute {} + + /// + /// Property applied to LensSettings. Used for custom drawing in the inspector. + /// + public sealed class LensSettingsPropertyAttribute : PropertyAttribute {} + + /// + /// Property applied to CinemachineBlendDefinition. Used for custom drawing in the inspector. + /// + public sealed class CinemachineBlendDefinitionPropertyAttribute : PropertyAttribute {} + + /// + /// Invoke play-mode-save for a class. This class's fields will be scanned + /// upon exiting play mode, and its property values will be applied to the scene object. + /// This is a stopgap measure that will become obsolete once Unity implements + /// play-mode-save in a more general way. + /// + public sealed class SaveDuringPlayAttribute : System.Attribute {} + + /// + /// Suppresses play-mode-save for a field. Use it if the calsee has [SaveDuringPlay] + /// attribute but there are fields in the class that shouldn't be saved. + /// + public sealed class NoSaveDuringPlayAttribute : PropertyAttribute {} + + /// Property field is a Tag. + public sealed class TagFieldAttribute : PropertyAttribute {} + + /// Property field is a NoiseSettings asset. + public sealed class NoiseSettingsPropertyAttribute : PropertyAttribute {} + + /// + /// Used for custom drawing in the inspector. + /// + public sealed class CinemachineEmbeddedAssetPropertyAttribute : PropertyAttribute + { + public bool WarnIfNull; + public CinemachineEmbeddedAssetPropertyAttribute(bool warnIfNull = false) + { + WarnIfNull = warnIfNull; + } + } + + /// + /// Atrtribute to control the automatic generation of documentation. + /// + [DocumentationSorting(DocumentationSortingAttribute.Level.Undoc)] + public sealed class DocumentationSortingAttribute : System.Attribute + { + /// Refinement level of the documentation + public enum Level + { + /// Type is excluded from documentation + Undoc, + /// Type is documented in the API reference + API, + /// Type is documented in the highly-refined User Manual + UserRef + }; + /// Refinement level of the documentation. The more refined, the more is excluded. + public Level Category { get; private set; } + + /// Contructor with specific values + public DocumentationSortingAttribute(Level category) + { + Category = category; + } + } +} diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Runtime/Core/CinemachinePropertyAttribute.cs.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Runtime/Core/CinemachinePropertyAttribute.cs.meta" new file mode 100644 index 00000000..d6e2263d --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Runtime/Core/CinemachinePropertyAttribute.cs.meta" @@ -0,0 +1,12 @@ +fileFormatVersion: 2 +guid: 2c760cb7073c57e44959f36cbed8ed39 +timeCreated: 1486510400 +licenseType: Pro +MonoImporter: + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Runtime/Core/CinemachineTouchInputMapper.cs" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Runtime/Core/CinemachineTouchInputMapper.cs" new file mode 100644 index 00000000..4fcf2ecf --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Runtime/Core/CinemachineTouchInputMapper.cs" @@ -0,0 +1,33 @@ +using Cinemachine; +using UnityEngine; + +/// +/// This is an add-on behaviour that globally maps the touch control +/// to standard input channels, such as mouse X and mouse Y. +/// Drop it on any game object in your scene. +/// +public class CinemachineTouchInputMapper : MonoBehaviour +{ + public float TouchSensitivityX = 10f; + public float TouchSensitivityY = 10f; + + public string TouchXInputMapTo = "Mouse X"; + public string TouchYInputMapTo = "Mouse Y"; + + void Start() + { + CinemachineCore.GetInputAxis = GetInputAxis; + } + + private float GetInputAxis(string axisName) + { + if (Input.touchCount > 0) + { + if (axisName == TouchXInputMapTo) + return Input.touches[0].deltaPosition.x / TouchSensitivityX; + if (axisName == TouchYInputMapTo) + return Input.touches[0].deltaPosition.y / TouchSensitivityY; + } + return Input.GetAxis(axisName); + } +} diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Runtime/Core/CinemachineTouchInputMapper.cs.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Runtime/Core/CinemachineTouchInputMapper.cs.meta" new file mode 100644 index 00000000..055c98b6 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Runtime/Core/CinemachineTouchInputMapper.cs.meta" @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 2adf148a19499274795e418631d7db45 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Runtime/Core/CinemachineVirtualCameraBase.cs" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Runtime/Core/CinemachineVirtualCameraBase.cs" new file mode 100644 index 00000000..1ead33a1 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Runtime/Core/CinemachineVirtualCameraBase.cs" @@ -0,0 +1,490 @@ +using System; +using System.Collections.Generic; +using UnityEngine; +using UnityEngine.Serialization; + +namespace Cinemachine +{ + /// + /// Base class for a Monobehaviour that represents a Virtual Camera within the Unity scene. + /// + /// This is intended to be attached to an empty Transform GameObject. + /// Inherited classes can be either standalone virtual cameras such + /// as CinemachineVirtualCamera, or meta-cameras such as + /// CinemachineClearShot or CinemachineFreeLook. + /// + /// A CinemachineVirtualCameraBase exposes a Priority property. When the behaviour is + /// enabled in the game, the Virtual Camera is automatically placed in a queue + /// maintained by the static CinemachineCore singleton. + /// The queue is sorted by priority. When a Unity camera is equipped with a + /// CinemachineBrain behaviour, the brain will choose the camera + /// at the head of the queue. If you have multiple Unity cameras with CinemachineBrain + /// behaviours (say in a split-screen context), then you can filter the queue by + /// setting the culling flags on the virtual cameras. The culling mask of the + /// Unity Camera will then act as a filter for the brain. Apart from this, + /// there is nothing that prevents a virtual camera from controlling multiple + /// Unity cameras simultaneously. + /// + [SaveDuringPlay] + public abstract class CinemachineVirtualCameraBase : MonoBehaviour, ICinemachineCamera + { + /// Inspector control - Use for hiding sections of the Inspector UI. + [HideInInspector, SerializeField, NoSaveDuringPlay] + public string[] m_ExcludedPropertiesInInspector = new string[] { "m_Script" }; + + /// Inspector control - Use for enabling sections of the Inspector UI. + [HideInInspector, SerializeField, NoSaveDuringPlay] + public CinemachineCore.Stage[] m_LockStageInInspector; + + /// Version that was last streamed, for upgrading legacy + public int ValidatingStreamVersion + { + get { return m_OnValidateCalled ? m_ValidatingStreamVersion : CinemachineCore.kStreamingVersion; } + private set { m_ValidatingStreamVersion = value; } + } + private int m_ValidatingStreamVersion = 0; + private bool m_OnValidateCalled = false; + + [HideInInspector, SerializeField, NoSaveDuringPlay] + private int m_StreamingVersion; + + /// The priority will determine which camera becomes active based on the + /// state of other cameras and this camera. Higher numbers have greater priority. + /// + [NoSaveDuringPlay] + [Tooltip("The priority will determine which camera becomes active based on the state of other cameras and this camera. Higher numbers have greater priority.")] + public int m_Priority = 10; + + /// + /// How often to update a virtual camera when it is in Standby mode + /// + public enum StandbyUpdateMode + { + /// Only update if the virtual camera is Live + Never, + /// Update the virtual camera every frame, even when it is not Live + Always, + /// Update the virtual camera occasionally, the exact frequency depends + /// on how many other virtual cameras are in Standby + RoundRobin + }; + + /// When the virtual camera is not live, this is how often the virtual camera will + /// be updated. Set this to tune for performance. Most of the time Never is fine, unless + /// the virtual camera is doing shot evaluation. + /// + [Tooltip("When the virtual camera is not live, this is how often the virtual camera will be updated. " + + "Set this to tune for performance. Most of the time Never is fine, " + + "unless the virtual camera is doing shot evaluation.")] + public StandbyUpdateMode m_StandbyUpdate = StandbyUpdateMode.RoundRobin; + + /// + /// A delegate to hook into the state calculation pipeline. + /// This will be called after each pipeline stage, to allow others to hook into the pipeline. + /// See CinemachineCore.Stage. + /// + /// The extension to add. + public virtual void AddExtension(CinemachineExtension extension) + { + if (mExtensions == null) + mExtensions = new List(); + else + mExtensions.Remove(extension); + mExtensions.Add(extension); + } + + /// Remove a Pipeline stage hook callback. + /// The extension to remove. + public virtual void RemoveExtension(CinemachineExtension extension) + { + if (mExtensions != null) + mExtensions.Remove(extension); + } + + /// THe extensions connected to this vcam + List mExtensions; + + /// + /// Invokes the PostPipelineStageDelegate for this camera, and up the hierarchy for all + /// parent cameras (if any). + /// Implementaion must be sure to call this after each pipeline stage, to allow + /// other services to hook into the pipeline. + /// See CinemachineCore.Stage. + /// + protected void InvokePostPipelineStageCallback( + CinemachineVirtualCameraBase vcam, CinemachineCore.Stage stage, + ref CameraState newState, float deltaTime) + { + if (mExtensions != null) + { + for (int i = 0; i < mExtensions.Count; ++i) + { + var e = mExtensions[i]; + if (e == null) + { + // Object was deleted (possibly because of Undo in the editor) + mExtensions.RemoveAt(i); + --i; + } + else if (e.enabled) + e.InvokePostPipelineStageCallback(vcam, stage, ref newState, deltaTime); + } + } + CinemachineVirtualCameraBase parent = ParentCamera as CinemachineVirtualCameraBase; + if (parent != null) + parent.InvokePostPipelineStageCallback(vcam, stage, ref newState, deltaTime); + } + + /// Get the name of the Virtual Camera. Base implementation + /// returns the owner GameObject's name. + public string Name { get { return name; } } + + /// Gets a brief debug description of this virtual camera, for use when displayiong debug info + public virtual string Description { get { return ""; }} + + /// Get the Priority of the virtual camera. This determines its placement + /// in the CinemachineCore's queue of eligible shots. + public int Priority { get { return m_Priority; } set { m_Priority = value; } } + + /// Hint for blending to and from this virtual camera + public enum BlendHint + { + /// Standard linear position and aim blend + None, + /// Spherical blend about LookAt target position if there is a LookAt target, linear blend between LookAt targets + SphericalPosition, + /// Cylindrical blend about LookAt target position if there is a LookAt target (vertical co-ordinate is linearly interpolated), linear blend between LookAt targets + CylindricalPosition, + /// Standard linear position blend, radial blend between LookAt targets + ScreenSpaceAimWhenTargetsDiffer + } + + /// Applies a position blend hint to the camera state + protected void ApplyPositionBlendMethod(ref CameraState state, BlendHint hint) + { + switch (hint) + { + default: + break; + case BlendHint.SphericalPosition: + state.BlendHint |= CameraState.BlendHintValue.SphericalPositionBlend; + break; + case BlendHint.CylindricalPosition: + state.BlendHint |= CameraState.BlendHintValue.CylindricalPositionBlend; + break; + case BlendHint.ScreenSpaceAimWhenTargetsDiffer: + state.BlendHint |= CameraState.BlendHintValue.RadialAimBlend; + break; + } + } + + /// The GameObject owner of the Virtual Camera behaviour. + public GameObject VirtualCameraGameObject + { + get + { + if (this == null) + return null; // object deleted + return gameObject; + } + } + + public bool IsValid { get { return !(this == null); } } + + /// The CameraState object holds all of the information + /// necessary to position the Unity camera. It is the output of this class. + public abstract CameraState State { get; } + + /// Support for meta-virtual-cameras. This is the situation where a + /// virtual camera is in fact the public face of a private army of virtual cameras, which + /// it manages on its own. This method gets the VirtualCamera owner, if any. + /// Private armies are implemented as Transform children of the parent vcam. + public ICinemachineCamera ParentCamera + { + get + { + if (!mSlaveStatusUpdated || !Application.isPlaying) + UpdateSlaveStatus(); + return m_parentVcam; + } + } + + /// Check whether the vcam a live child of this camera. + /// This base class implementation always returns false. + /// The Virtual Camera to check + /// If truw, will only return true if this vcam is the dominat live child + /// True if the vcam is currently actively influencing the state of this vcam + public virtual bool IsLiveChild(ICinemachineCamera vcam, bool dominantChildOnly = false) { return false; } + + /// Get the LookAt target for the Aim component in the Cinemachine pipeline. + public abstract Transform LookAt { get; set; } + + /// Get the Follow target for the Body component in the Cinemachine pipeline. + public abstract Transform Follow { get; set; } + + /// Set this to force the next update to ignore deltaTime and reset itself + public bool PreviousStateIsValid + { + get + { + if (LookAt != m_previousLookAtTarget) + { + m_previousLookAtTarget = LookAt; + m_previousStateIsValid = false; + } + if (Follow != m_previousFollowTarget) + { + m_previousFollowTarget = Follow; + m_previousStateIsValid = false; + } + return m_previousStateIsValid; + } + set + { + m_previousStateIsValid = value; + } + } + private bool m_previousStateIsValid; + private Transform m_previousLookAtTarget; + private Transform m_previousFollowTarget; + + /// + /// Update the camera's state. + /// The implementation must guarantee against multiple calls per frame, and should + /// use CinemachineCore.UpdateVirtualCamera(ICinemachineCamera, Vector3, float), which + /// has protection against multiple calls per frame. + /// + /// Default world Up, set by the CinemachineBrain + /// Delta time for time-based effects (ignore if less than 0) + public void UpdateCameraState(Vector3 worldUp, float deltaTime) + { + CinemachineCore.Instance.UpdateVirtualCamera(this, worldUp, deltaTime); + } + + /// Internal use only. Do not call this method. + /// Called by CinemachineCore at designated update time + /// so the vcam can position itself and track its targets. + /// Do not call this method. Let the framework do it at the appropriate time + /// Default world Up, set by the CinemachineBrain + /// Delta time for time-based effects (ignore if less than 0) + public abstract void InternalUpdateCameraState(Vector3 worldUp, float deltaTime); + + /// Collection of parameters that influence how this virtual camera transitions from + /// other virtual cameras + [Serializable] + public struct TransitionParams + { + /// Hint for blending positions to and from this virtual camera + [Tooltip("Hint for blending positions to and from this virtual camera")] + [FormerlySerializedAs("m_PositionBlending")] + public BlendHint m_BlendHint; + + /// When this virtual camera goes Live, attempt to force the position to be the same as the current position of the Unity Camera + [Tooltip("When this virtual camera goes Live, attempt to force the position to be the same as the current position of the Unity Camera")] + public bool m_InheritPosition; + + /// This event fires when the virtual camera goes Live + [Tooltip("This event fires when the virtual camera goes Live")] + public CinemachineBrain.VcamActivatedEvent m_OnCameraLive; + } + + /// Notification that this virtual camera is going live. + /// Base class implementation must be called by any overridden method. + /// The camera being deactivated. May be null. + /// Default world Up, set by the CinemachineBrain + /// Delta time for time-based effects (ignore if less than or equal to 0) + public virtual void OnTransitionFromCamera( + ICinemachineCamera fromCam, Vector3 worldUp, float deltaTime) + { + if (!gameObject.activeInHierarchy) + PreviousStateIsValid = false; + } + + /// Maintains the global vcam registry. Always call the base class implementation. + protected virtual void OnDestroy() + { + CinemachineCore.Instance.RemoveActiveCamera(this); + } + + /// Base class implementation makes sure the priority queue remains up-to-date. + protected virtual void OnTransformParentChanged() + { + CinemachineCore.Instance.CameraDestroyed(this); + CinemachineCore.Instance.CameraAwakened(this); + UpdateSlaveStatus(); + UpdateVcamPoolStatus(); + } + + /// Base class implementation does nothing. + protected virtual void Start() + { + } + + /// Enforce bounds for fields, when changed in inspector. + /// Call base class implementation at the beginning of overridden method. + /// After base method is called, ValidatingStreamVersion will be valid. + protected virtual void OnValidate() + { + m_OnValidateCalled = true; + ValidatingStreamVersion = m_StreamingVersion; + m_StreamingVersion = CinemachineCore.kStreamingVersion; + } + + /// Base class implementation adds the virtual camera from the priority queue. + protected virtual void OnEnable() + { + // Sanity check - if another vcam component is enabled, shut down + var vcamComponents = GetComponents(); + for (int i = 0; i < vcamComponents.Length; ++i) + { + if (vcamComponents[i].enabled && vcamComponents[i] != this) + { + Debug.LogError(Name + + " has multiple CinemachineVirtualCameraBase-derived components. Disabling " + + GetType().Name + "."); + enabled = false; + } + } + UpdateSlaveStatus(); + UpdateVcamPoolStatus(); // Add to queue + if (!CinemachineCore.Instance.IsLive(this)) + PreviousStateIsValid = false; + CinemachineCore.Instance.CameraAwakened(this); + } + + /// Base class implementation makes sure the priority queue remains up-to-date. + protected virtual void OnDisable() + { + UpdateVcamPoolStatus(); // Remove from queue + CinemachineCore.Instance.CameraDestroyed(this); + } + + /// Base class implementation makes sure the priority queue remains up-to-date. + protected virtual void Update() + { + if (m_Priority != m_QueuePriority) + UpdateVcamPoolStatus(); + } + + private bool mSlaveStatusUpdated = false; + private CinemachineVirtualCameraBase m_parentVcam = null; + + private void UpdateSlaveStatus() + { + mSlaveStatusUpdated = true; + m_parentVcam = null; + Transform p = transform.parent; + if (p != null) + m_parentVcam = p.GetComponent(); + } + + /// Returns this vcam's LookAt target, or if that is null, will retrun + /// the parent vcam's LookAt target. + /// This vcam's LookAt value. + /// The same value, or the parent's if null and a parent exists. + protected Transform ResolveLookAt(Transform localLookAt) + { + Transform lookAt = localLookAt; + if (lookAt == null && ParentCamera != null) + lookAt = ParentCamera.LookAt; // Parent provides default + return lookAt; + } + + /// Returns this vcam's Follow target, or if that is null, will retrun + /// the parent vcam's Follow target. + /// This vcam's Follow value. + /// The same value, or the parent's if null and a parent exists. + protected Transform ResolveFollow(Transform localFollow) + { + Transform follow = localFollow; + if (follow == null && ParentCamera != null) + follow = ParentCamera.Follow; // Parent provides default + return follow; + } + + private int m_QueuePriority = int.MaxValue; + private void UpdateVcamPoolStatus() + { + CinemachineCore.Instance.RemoveActiveCamera(this); + if (m_parentVcam == null && isActiveAndEnabled) + CinemachineCore.Instance.AddActiveCamera(this); + m_QueuePriority = m_Priority; + } + + /// When multiple virtual cameras have the highest priority, there is + /// sometimes the need to push one to the top, making it the current Live camera if + /// it shares the highest priority in the queue with its peers. + /// + /// This happens automatically when a + /// new vcam is enabled: the most recent one goes to the top of the priority subqueue. + /// Use this method to push a vcam to the top of its priority peers. + /// If it and its peers share the highest priority, then this vcam will become Live. + public void MoveToTopOfPrioritySubqueue() + { + UpdateVcamPoolStatus(); + } + + /// This is called to notify the component that a target got warped, + /// so that the component can update its internal state to make the camera + /// also warp seamlessy. + /// The object that was warped + /// The amount the target's position changed + public virtual void OnTargetObjectWarped(Transform target, Vector3 positionDelta) + { + // inform the extensions + if (mExtensions != null) + { + for (int i = 0; i < mExtensions.Count; ++i) + mExtensions[i].OnTargetObjectWarped(target, positionDelta); + } + } + + /// Create a blend between 2 virtual cameras, taking into account + /// any existing active blend. + protected CinemachineBlend CreateBlend( + ICinemachineCamera camA, ICinemachineCamera camB, + CinemachineBlendDefinition blendDef, + CinemachineBlend activeBlend) + { + if (blendDef.BlendCurve == null || blendDef.m_Time <= 0 || (camA == null && camB == null)) + return null; + if (activeBlend != null) + { + // Special case: if backing out of a blend-in-progress + // with the same blend in reverse, adjust the belnd time + if (activeBlend.CamA == camB + && activeBlend.CamB == camA + && activeBlend.Duration <= blendDef.m_Time) + { + blendDef.m_Time = activeBlend.TimeInBlend; + } + camA = new BlendSourceVirtualCamera(activeBlend); + } + else if (camA == null) + camA = new StaticPointVirtualCamera(State, "(none)"); + return new CinemachineBlend( + camA, camB, blendDef.BlendCurve, blendDef.m_Time, 0); + } + + /// + /// Create a camera state based on the current transform of this vcam + /// + /// Current World Up direction, as provided by the brain + /// Lens settings to serve as base, will be combined with lens from brain, if any + /// + protected CameraState PullStateFromVirtualCamera(Vector3 worldUp, ref LensSettings lens) + { + CameraState state = CameraState.Default; + state.RawPosition = transform.position; + state.RawOrientation = transform.rotation; + state.ReferenceUp = worldUp; + + CinemachineBrain brain = CinemachineCore.Instance.FindPotentialTargetBrain(this); + if (brain != null) + lens.SnapshotCameraReadOnlyProperties(brain.OutputCamera); + + state.Lens = lens; + return state; + } + } +} diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Runtime/Core/CinemachineVirtualCameraBase.cs.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Runtime/Core/CinemachineVirtualCameraBase.cs.meta" new file mode 100644 index 00000000..472032f7 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Runtime/Core/CinemachineVirtualCameraBase.cs.meta" @@ -0,0 +1,12 @@ +fileFormatVersion: 2 +guid: 15ebf04de67923d41a36c21e1fc63718 +timeCreated: 1488314898 +licenseType: Pro +MonoImporter: + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Runtime/Core/GaussianFilter.cs" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Runtime/Core/GaussianFilter.cs" new file mode 100644 index 00000000..650512d7 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Runtime/Core/GaussianFilter.cs" @@ -0,0 +1,145 @@ +using System; +using UnityEngine; + +namespace Cinemachine.Utility +{ + internal abstract class GaussianWindow1d + { + protected T[] mData; + protected float[] mKernel; + protected float mKernelSum; + protected int mCurrentPos = -1; + + public float Sigma { get; private set; } // Filter strength: bigger numbers are stronger. 0.5 is minimal. + public int KernelSize { get { return mKernel.Length; } } + + void GenerateKernel(float sigma, int maxKernelRadius) + { + // Weight is close to 0 at a distance of sigma*3, so let's just cut it off a little early + int kernelRadius = Math.Min(maxKernelRadius, Mathf.FloorToInt(Mathf.Abs(sigma) * 2.5f)); + mKernel = new float[2 * kernelRadius + 1]; + mKernelSum = 0; + if (kernelRadius == 0) + mKernelSum = mKernel[0] = 1; + else for (int i = -kernelRadius; i <= kernelRadius; ++i) + { + mKernel[i + kernelRadius] + = (float)(Math.Exp(-(i * i) / (2 * sigma * sigma)) / Math.Sqrt(2.0 * Math.PI * sigma)); + mKernelSum += mKernel[i + kernelRadius]; + } + Sigma = sigma; + } + + protected abstract T Compute(int windowPos); + + public GaussianWindow1d(float sigma, int maxKernelRadius = 10) + { + GenerateKernel(sigma, maxKernelRadius); + mData = new T[KernelSize]; + mCurrentPos = -1; + } + + public void Reset() { mCurrentPos = -1; } + + public bool IsEmpty() { return mCurrentPos < 0; } + + public void AddValue(T v) + { + if (mCurrentPos < 0) + { + for (int i = 0; i < KernelSize; ++i) + mData[i] = v; + mCurrentPos = Mathf.Min(1, KernelSize-1); + } + mData[mCurrentPos] = v; + if (++mCurrentPos == KernelSize) + mCurrentPos = 0; + } + + public T Filter(T v) + { + if (KernelSize < 3) + return v; + AddValue(v); + return Value(); + } + + /// Returned value will be kernelRadius old + public T Value() { return Compute(mCurrentPos); } + + // Direct buffer access + public int BufferLength { get { return mData.Length; } } + public void SetBufferValue(int index, T value) { mData[index] = value; } + public T GetBufferValue(int index) { return mData[index]; } + } + + internal class GaussianWindow1D_Vector3 : GaussianWindow1d + { + public GaussianWindow1D_Vector3(float sigma, int maxKernelRadius = 10) + : base(sigma, maxKernelRadius) {} + + protected override Vector3 Compute(int windowPos) + { + Vector3 sum = Vector3.zero; + for (int i = 0; i < KernelSize; ++i) + { + sum += mData[windowPos] * mKernel[i]; + if (++windowPos == KernelSize) + windowPos = 0; + } + return sum / mKernelSum; + } + } + + internal class GaussianWindow1D_Quaternion : GaussianWindow1d + { + public GaussianWindow1D_Quaternion(float sigma, int maxKernelRadius = 10) + : base(sigma, maxKernelRadius) {} + protected override Quaternion Compute(int windowPos) + { + Quaternion sum = new Quaternion(0, 0, 0, 0); + Quaternion q = mData[mCurrentPos]; + Quaternion qInverse = Quaternion.Inverse(q); + for (int i = 0; i < KernelSize; ++i) + { + // Make sure the quaternion is in the same hemisphere, or averaging won't work + float scale = mKernel[i]; + Quaternion q2 = qInverse * mData[windowPos]; + if (Quaternion.Dot(Quaternion.identity, q2) < 0) + scale = -scale; + sum.x += q2.x * scale; + sum.y += q2.y * scale; + sum.z += q2.z * scale; + sum.w += q2.w * scale; + + if (++windowPos == KernelSize) + windowPos = 0; + } + return q * sum; + } + } + + internal class GaussianWindow1D_CameraRotation : GaussianWindow1d + { + public GaussianWindow1D_CameraRotation(float sigma, int maxKernelRadius = 10) + : base(sigma, maxKernelRadius) {} + + protected override Vector2 Compute(int windowPos) + { + Vector2 sum = Vector2.zero; + Vector2 v = mData[mCurrentPos]; + for (int i = 0; i < KernelSize; ++i) + { + Vector2 v2 = mData[windowPos] - v; + if (v2.y > 180f) + v2.y -= 360f; + if (v2.y < -180f) + v2.y += 360f; + sum += v2 * mKernel[i]; + if (++windowPos == KernelSize) + windowPos = 0; + } + return v + (sum / mKernelSum); + } + } +} diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Runtime/Core/GaussianFilter.cs.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Runtime/Core/GaussianFilter.cs.meta" new file mode 100644 index 00000000..ff706815 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Runtime/Core/GaussianFilter.cs.meta" @@ -0,0 +1,12 @@ +fileFormatVersion: 2 +guid: 68839a4bf8790cd449d4043f5efb5aec +timeCreated: 1490719908 +licenseType: Pro +MonoImporter: + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Runtime/Core/ICinemachineCamera.cs" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Runtime/Core/ICinemachineCamera.cs" new file mode 100644 index 00000000..1931e231 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Runtime/Core/ICinemachineCamera.cs" @@ -0,0 +1,100 @@ +using UnityEngine; + +namespace Cinemachine +{ + /// + /// An abstract representation of a virtual camera which lives within the Unity scene + /// + public interface ICinemachineCamera + { + /// + /// Gets the name of this virtual camera. For use when deciding how to blend + /// to or from this camera + /// + string Name { get; } + + /// + /// Gets a brief debug description of this virtual camera, for use when displayiong debug info + /// + string Description { get; } + + /// + /// Gets the priority of this ICinemachineCamera. The virtual camera + /// will be inserted into the global priority stack based on this value. + /// + int Priority { get; set; } + + /// + /// The thing the camera wants to look at (aim). May be null. + /// + Transform LookAt { get; set; } + + /// + /// The thing the camera wants to follow (moving camera). May be null. + /// + Transform Follow { get; set; } + + /// + /// Camera state at the current time. + /// + CameraState State { get; } + + /// + /// Gets the virtual camera game attached to this class. + /// + GameObject VirtualCameraGameObject { get; } + + /// + /// Will return false if this references a deleted object + /// + bool IsValid { get; } + + /// + /// For cameras that implement child cameras, returns the parent vcam, otherwise null. + /// + ICinemachineCamera ParentCamera { get; } + + /// Check whether the vcam is a live child of this camera. + /// The Virtual Camera to check + /// If truw, will only return true if this vcam is the dominat live child + /// True if the vcam is currently actively influencing the state of this vcam + bool IsLiveChild(ICinemachineCamera vcam, bool dominantChildOnly = false); + + /// + /// Update the camera's state. + /// The implementation must guarantee against multiple calls per frame, and should + /// use CinemachineCore.UpdateVirtualCamera(ICinemachineCamera, Vector3, mfloat), which + /// has protection against multiple calls per frame. + /// + /// Default world Up, set by the CinemachineBrain + /// Delta time for time-based effects (ignore if less than 0) + void UpdateCameraState(Vector3 worldUp, float deltaTime); + + /// + /// Updates this Cinemachine Camera. For an active camera this should be + /// called once and only once each frame. To guarantee this, you should never + /// call this method directly. Always use + /// CinemachineCore.UpdateVirtualCamera(ICinemachineCamera, Vector3, float), which + /// has protection against multiple calls per frame. + /// + /// Default world Up, set by the CinemachineBrain + /// Delta time for time-based effects (ignore if less than 0) + void InternalUpdateCameraState(Vector3 worldUp, float deltaTime); + + /// + /// Notification that a new camera is being activated. This is sent to the + /// currently active camera. Both may be active simultaneously for a while, if blending. + /// + /// The camera being deactivated. May be null. + /// Default world Up, set by the CinemachineBrain + /// Delta time for time-based effects (ignore if less than 0) + void OnTransitionFromCamera(ICinemachineCamera fromCam, Vector3 worldUp, float deltaTime); + + /// This is called to notify the component that a target got warped, + /// so that the component can update its internal state to make the camera + /// also warp seamlessy. Base class implementation does nothing. + /// The object that was warped + /// The amount the target's position changed + void OnTargetObjectWarped(Transform target, Vector3 positionDelta); + } +} diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Runtime/Core/ICinemachineCamera.cs.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Runtime/Core/ICinemachineCamera.cs.meta" new file mode 100644 index 00000000..2ca96531 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Runtime/Core/ICinemachineCamera.cs.meta" @@ -0,0 +1,12 @@ +fileFormatVersion: 2 +guid: 2643ac9881a89594a80c242b565b34ec +timeCreated: 1484407000 +licenseType: Pro +MonoImporter: + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Runtime/Core/ICinemachineComponent.cs" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Runtime/Core/ICinemachineComponent.cs" new file mode 100644 index 00000000..d9249fd0 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Runtime/Core/ICinemachineComponent.cs" @@ -0,0 +1,3 @@ +// This file is intentionally blank. +// If you were implementing ICinemachineComponent interface, please refactor to +// inherit from CinemachineComponentBase instead. diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Runtime/Core/ICinemachineComponent.cs.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Runtime/Core/ICinemachineComponent.cs.meta" new file mode 100644 index 00000000..ce6f84d7 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Runtime/Core/ICinemachineComponent.cs.meta" @@ -0,0 +1,12 @@ +fileFormatVersion: 2 +guid: 9a53087ba28aaf145a184ea363108831 +timeCreated: 1510078351 +licenseType: Pro +MonoImporter: + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Runtime/Core/LensSettings.cs" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Runtime/Core/LensSettings.cs" new file mode 100644 index 00000000..28c50708 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Runtime/Core/LensSettings.cs" @@ -0,0 +1,186 @@ +using UnityEngine; +using System; + +namespace Cinemachine +{ + /// + /// Describes the FOV and clip planes for a camera. This generally mirrors the Unity Camera's + /// lens settings, and will be used to drive the Unity camera when the vcam is active. + /// + [Serializable] + [DocumentationSorting(DocumentationSortingAttribute.Level.UserRef)] + public struct LensSettings + { + /// Default Lens Settings + public static LensSettings Default = new LensSettings(40f, 10f, 0.1f, 5000f, 0); + + /// + /// This is the camera view in vertical degrees. For cinematic people, a 50mm lens + /// on a super-35mm sensor would equal a 19.6 degree FOV + /// + [Range(1f, 179f)] + [Tooltip("This is the camera view in vertical degrees. For cinematic people, a 50mm lens on a super-35mm sensor would equal a 19.6 degree FOV")] + public float FieldOfView; + + /// + /// When using an orthographic camera, this defines the height, in world + /// co-ordinates, of the camera view. + /// + [Tooltip("When using an orthographic camera, this defines the half-height, in world coordinates, of the camera view.")] + public float OrthographicSize; + + /// + /// The near clip plane for this LensSettings + /// + [Tooltip("This defines the near region in the renderable range of the camera frustum. Raising this value will stop the game from drawing things near the camera, which can sometimes come in handy. Larger values will also increase your shadow resolution.")] + public float NearClipPlane; + + /// + /// The far clip plane for this LensSettings + /// + [Tooltip("This defines the far region of the renderable range of the camera frustum. Typically you want to set this value as low as possible without cutting off desired distant objects")] + public float FarClipPlane; + + /// + /// The dutch (tilt) to be applied to the camera. In degrees + /// + [Range(-180f, 180f)] + [Tooltip("Camera Z roll, or tilt, in degrees.")] + public float Dutch; + + /// + /// This is set every frame by the virtual camera, based on the value found in the + /// currently associated Unity camera + /// + public bool Orthographic { get; set; } + + /// + /// This is set every frame by the virtual camera, based on the value + /// found in the currently associated Unity camera + /// + public bool IsPhysicalCamera { get; set; } + + /// + /// This is set every frame by the virtual camera, based on the value + /// found in the currently associated Unity camera + /// + public Vector2 SensorSize { get; set; } + + /// + /// Sensor aspect, not screen aspect. For nonphysical cameras, this is the same thing. + /// + public float Aspect { get { return SensorSize.y == 0 ? 1f : (SensorSize.x / SensorSize.y); } } + + /// For physical cameras only: position of the gate relative to the film back + public Vector2 LensShift; + + /// + /// Creates a new LensSettings, copying the values from the + /// supplied Camera + /// + /// The Camera from which the FoV, near + /// and far clip planes will be copied. + public static LensSettings FromCamera(Camera fromCamera) + { + LensSettings lens = Default; + if (fromCamera != null) + { + lens.FieldOfView = fromCamera.fieldOfView; + lens.OrthographicSize = fromCamera.orthographicSize; + lens.NearClipPlane = fromCamera.nearClipPlane; + lens.FarClipPlane = fromCamera.farClipPlane; +#if UNITY_2018_2_OR_NEWER + lens.LensShift = fromCamera.lensShift; +#endif + lens.SnapshotCameraReadOnlyProperties(fromCamera); + } + return lens; + } + + /// + /// Snapshot the properties that are read-only in the Camera + /// + /// The Camera from which we will take the info + public void SnapshotCameraReadOnlyProperties(Camera camera) + { + if (camera != null) + { + Orthographic = camera.orthographic; + SensorSize = new Vector2(camera.aspect, 1f); +#if UNITY_2018_2_OR_NEWER + IsPhysicalCamera = camera.usePhysicalProperties; + if (IsPhysicalCamera) + SensorSize = camera.sensorSize; + else + LensShift = Vector2.zero; +#endif + } + } + + /// + /// Snapshot the properties that are read-only in the Camera + /// + /// The LensSettings from which we will take the info + public void SnapshotCameraReadOnlyProperties(ref LensSettings lens) + { + Orthographic = lens.Orthographic; + SensorSize = lens.SensorSize; +#if UNITY_2018_2_OR_NEWER + IsPhysicalCamera = lens.IsPhysicalCamera; + if (!IsPhysicalCamera) + LensShift = Vector2.zero; +#endif + } + + /// + /// Explicit constructor for this LensSettings + /// + /// The Vertical field of view + /// If orthographic, this is the half-height of the screen + /// The near clip plane + /// The far clip plane + /// Camera roll, in degrees. This is applied at the end + /// after shot composition. + public LensSettings( + float fov, float orthographicSize, + float nearClip, float farClip, float dutch) : this() + { + FieldOfView = fov; + OrthographicSize = orthographicSize; + NearClipPlane = nearClip; + FarClipPlane = farClip; + Dutch = dutch; + } + + /// + /// Linearly blends the fields of two LensSettings and returns the result + /// + /// The LensSettings to blend from + /// The LensSettings to blend to + /// The interpolation value. Internally clamped to the range [0,1] + /// Interpolated settings + public static LensSettings Lerp(LensSettings lensA, LensSettings lensB, float t) + { + t = Mathf.Clamp01(t); + LensSettings blendedLens = new LensSettings(); + blendedLens.FarClipPlane = Mathf.Lerp(lensA.FarClipPlane, lensB.FarClipPlane, t); + blendedLens.NearClipPlane = Mathf.Lerp(lensA.NearClipPlane, lensB.NearClipPlane, t); + blendedLens.FieldOfView = Mathf.Lerp(lensA.FieldOfView, lensB.FieldOfView, t); + blendedLens.OrthographicSize = Mathf.Lerp(lensA.OrthographicSize, lensB.OrthographicSize, t); + blendedLens.Dutch = Mathf.Lerp(lensA.Dutch, lensB.Dutch, t); + blendedLens.Orthographic = lensA.Orthographic && lensB.Orthographic; + blendedLens.IsPhysicalCamera = lensA.IsPhysicalCamera || lensB.IsPhysicalCamera; + blendedLens.SensorSize = Vector2.Lerp(lensA.SensorSize, lensB.SensorSize, t); + blendedLens.LensShift = Vector2.Lerp(lensA.LensShift, lensB.LensShift, t); + return blendedLens; + } + + /// Make sure lens settings are sane. Call this from OnValidate(). + public void Validate() + { + NearClipPlane = Mathf.Max(NearClipPlane, Orthographic ? 0 : 0.01f); + FarClipPlane = Mathf.Max(FarClipPlane, NearClipPlane + 0.01f); + FieldOfView = Mathf.Clamp(FieldOfView, 0.1f, 179f); + } + } +} diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Runtime/Core/LensSettings.cs.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Runtime/Core/LensSettings.cs.meta" new file mode 100644 index 00000000..4ce533a2 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Runtime/Core/LensSettings.cs.meta" @@ -0,0 +1,12 @@ +fileFormatVersion: 2 +guid: 5778d22ca832d9f47b5e73a8c5fe78a2 +timeCreated: 1481654955 +licenseType: Pro +MonoImporter: + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Runtime/Core/NoiseSettings.cs" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Runtime/Core/NoiseSettings.cs" new file mode 100644 index 00000000..050af18e --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Runtime/Core/NoiseSettings.cs" @@ -0,0 +1,120 @@ +using UnityEngine; +using System; +using UnityEngine.Serialization; + +namespace Cinemachine +{ + /// + /// This is an asset that defines a noise profile. A noise profile is the + /// shape of the noise signal as a function of time. You can build arbitrarily complex shapes by + /// combining different base perlin noise frequencies at different amplitudes. + /// + /// The frequencies and amplitudes should be chosen with care, to ensure an interesting + /// noise quality that is not obviously repetitive. + /// + /// As a mathematical side-note, any arbitrary periodic curve can be broken down into a + /// series of fixed-amplitude sine-waves added together. This is called fourier decomposition, + /// and is the basis of much signal processing. It doesn't really have much to do with this + /// asset, but it's super interesting! + /// + [DocumentationSorting(DocumentationSortingAttribute.Level.UserRef)] + public sealed class NoiseSettings : SignalSourceAsset + { + /// Describes the behaviour for a channel of noise + [DocumentationSorting(DocumentationSortingAttribute.Level.UserRef)] + [Serializable] + public struct NoiseParams + { + /// The frequency of noise for this channel. Higher magnitudes vibrate faster + [Tooltip("The frequency of noise for this channel. Higher magnitudes vibrate faster.")] + public float Frequency; + + /// The amplitude of the noise for this channel. Larger numbers vibrate higher + [Tooltip("The amplitude of the noise for this channel. Larger numbers vibrate higher.")] + public float Amplitude; + + /// If checked, then the amplitude and frequency will not be randomized + [Tooltip("If checked, then the amplitude and frequency will not be randomized.")] + public bool Constant; + + /// Get the signal value at a given time, offset by a given amount + public float GetValueAt(float time, float timeOffset) + { + float t = (Frequency * time) + timeOffset; + if (Constant) + return Mathf.Cos(t * 2 * Mathf.PI) * Amplitude * 0.5f; + return (Mathf.PerlinNoise(t, 0f) - 0.5f) * Amplitude; + } + } + + /// + /// Contains the behaviour of noise for the noise module for all 3 cardinal axes of the camera + /// + [DocumentationSorting(DocumentationSortingAttribute.Level.UserRef)] + [Serializable] + public struct TransformNoiseParams + { + /// Noise definition for X-axis + [Tooltip("Noise definition for X-axis")] + public NoiseParams X; + /// Noise definition for Y-axis + [Tooltip("Noise definition for Y-axis")] + public NoiseParams Y; + /// Noise definition for Z-axis + [Tooltip("Noise definition for Z-axis")] + public NoiseParams Z; + + /// Get the signal value at a given time, offset by a given amount + public Vector3 GetValueAt(float time, Vector3 timeOffsets) + { + return new Vector3( + X.GetValueAt(time, timeOffsets.x), + Y.GetValueAt(time, timeOffsets.y), + Z.GetValueAt(time, timeOffsets.z)); + } + } + + /// The array of positional noise channels for this NoiseSettings + [Tooltip("These are the noise channels for the virtual camera's position. Convincing noise setups typically mix low, medium and high frequencies together, so start with a size of 3")] + [FormerlySerializedAs("m_Position")] + public TransformNoiseParams[] PositionNoise = new TransformNoiseParams[0]; + + /// The array of orientation noise channels for this NoiseSettings + [Tooltip("These are the noise channels for the virtual camera's orientation. Convincing noise setups typically mix low, medium and high frequencies together, so start with a size of 3")] + [FormerlySerializedAs("m_Orientation")] + public TransformNoiseParams[] OrientationNoise = new TransformNoiseParams[0]; + + /// Get the noise signal value at a specific time + /// The parameters that define the noise function + /// The time at which to sample the noise function + /// Start time offset for each channel + /// The 3-channel noise signal value at the specified time + public static Vector3 GetCombinedFilterResults( + TransformNoiseParams[] noiseParams, float time, Vector3 timeOffsets) + { + Vector3 pos = Vector3.zero; + if (noiseParams != null) + { + for (int i = 0; i < noiseParams.Length; ++i) + pos += noiseParams[i].GetValueAt(time, timeOffsets); + } + return pos; + } + + /// + /// Returns the total length in seconds of the signal. + /// Returns 0 for signals of indeterminate length. + /// + public override float SignalDuration { get { return 0; } } + + /// Interface for raw signal provider + /// The position impulse signal + /// The rotation impulse signal + public override void GetSignal(float timeSinceSignalStart, out Vector3 pos, out Quaternion rot) + { + pos = GetCombinedFilterResults(PositionNoise, timeSinceSignalStart, Vector3.zero); + rot = Quaternion.Euler(GetCombinedFilterResults(OrientationNoise, timeSinceSignalStart, Vector3.zero)); + } + + } +} diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Runtime/Core/NoiseSettings.cs.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Runtime/Core/NoiseSettings.cs.meta" new file mode 100644 index 00000000..0ec55f70 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Runtime/Core/NoiseSettings.cs.meta" @@ -0,0 +1,12 @@ +fileFormatVersion: 2 +guid: b7f59e54f2bfd184b9dd451a678d089b +timeCreated: 1481654957 +licenseType: Pro +MonoImporter: + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Runtime/Core/Predictor.cs" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Runtime/Core/Predictor.cs" new file mode 100644 index 00000000..fec78c2c --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Runtime/Core/Predictor.cs" @@ -0,0 +1,297 @@ +using System.Collections.Generic; +using UnityEngine; + +namespace Cinemachine.Utility +{ + public class PositionPredictor + { + Vector3 m_Position; + + GaussianWindow1D_Vector3 m_Velocity = new GaussianWindow1D_Vector3(kSmoothingDefault); + GaussianWindow1D_Vector3 m_Accel = new GaussianWindow1D_Vector3(kSmoothingDefault); + + float mLastVelAddedTime = 0; + + const float kSmoothingDefault = 10; + float mSmoothing = kSmoothingDefault; + public float Smoothing + { + get { return mSmoothing; } + set + { + if (value != mSmoothing) + { + mSmoothing = value; + int maxRadius = Mathf.Max(10, Mathf.FloorToInt(value * 1.5f)); + m_Velocity = new GaussianWindow1D_Vector3(mSmoothing, maxRadius); + m_Accel = new GaussianWindow1D_Vector3(mSmoothing, maxRadius); + } + } + } + public bool IsEmpty { get { return m_Velocity.IsEmpty(); } } + + public void ApplyTransformDelta(Vector3 positionDelta) + { + m_Position += positionDelta; + } + + public void Reset() + { + m_Velocity.Reset(); + m_Accel.Reset(); + } + + public void AddPosition(Vector3 pos, float deltaTime, float lookaheadTime) + { + if (deltaTime < UnityVectorExtensions.Epsilon) + Reset(); + else if (IsEmpty) + m_Velocity.AddValue(Vector3.zero); + else + { + Vector3 vel = (pos - m_Position) / deltaTime; + if (vel.sqrMagnitude > UnityVectorExtensions.Epsilon) + { + Vector3 vel0 = m_Velocity.Value(); + float now = Time.time; + if (vel.sqrMagnitude >= vel0.sqrMagnitude + || Vector3.Angle(vel, vel0) > 10 + || now > mLastVelAddedTime + lookaheadTime) + { + m_Velocity.AddValue(vel); + m_Accel.AddValue(vel - vel0); + mLastVelAddedTime = now; + } + } + } + m_Position = pos; + } + + public Vector3 PredictPositionDelta(float lookaheadTime) + { + Vector3 vel = m_Velocity.IsEmpty() ? Vector3.zero : m_Velocity.Value(); + Vector3 accel = m_Accel.IsEmpty() ? Vector3.zero : m_Accel.Value(); + Vector3 delta = vel * lookaheadTime; + delta += accel * lookaheadTime * lookaheadTime * 0.5f; + return delta; + } + + public Vector3 PredictPosition(float lookaheadTime) + { + return m_Position + PredictPositionDelta(lookaheadTime); + } + } + + /// Utility to perform realistic damping of float or Vector3 values. + /// The algorithm is based on exponentially decaying the delta until only + /// a negligible amount remains. + public static class Damper + { + const float Epsilon = UnityVectorExtensions.Epsilon; + + // Get the decay constant that would leave a given residual after a given time + static float DecayConstant(float time, float residual) + { + return Mathf.Log(1f / residual) / time; + } + + // Exponential decay: decay a given quantity opver a period of time + static float DecayedRemainder(float initial, float decayConstant, float deltaTime) + { + return initial / Mathf.Exp(decayConstant * deltaTime); + } + + /// Standard residual + public const float kNegligibleResidual = 0.01f; + const float kLogNegligibleResidual = -4.605170186f; // == math.Log(kNegligibleResidual=0.01f); + + /// Get a damped version of a quantity. This is the portion of the + /// quantity that will take effect over the given time. + /// The amount that will be damped + /// The rate of damping. This is the time it would + /// take to reduce the original amount to a negligible percentage + /// The time over which to damp + /// The damped amount. This will be the original amount scaled by + /// a value between 0 and 1. + public static float Damp(float initial, float dampTime, float deltaTime) + { + if (dampTime < Epsilon || Mathf.Abs(initial) < Epsilon) + return initial; + if (deltaTime < Epsilon) + return 0; + float k = -kLogNegligibleResidual / dampTime; //DecayConstant(dampTime, kNegligibleResidual); + +#if CINEMACHINE_EXPERIMENTAL_DAMPING + // Try to reduce damage caused by frametime variability + float step = Time.fixedDeltaTime; + if (deltaTime != step) + step /= 5; + int numSteps = Mathf.FloorToInt(deltaTime / step); + float vel = initial * step / deltaTime; + float decayConstant = Mathf.Exp(-k * step); + float r = 0; + for (int i = 0; i < numSteps; ++i) + r = (r + vel) * decayConstant; + float d = deltaTime - (step * numSteps); + if (d > Epsilon) + r = Mathf.Lerp(r, (r + vel) * decayConstant, d / step); + return initial - r; +#else + return initial * (1 - Mathf.Exp(-k * deltaTime)); +#endif + } + + /// Get a damped version of a quantity. This is the portion of the + /// quantity that will take effect over the given time. + /// The amount that will be damped + /// The rate of damping. This is the time it would + /// take to reduce the original amount to a negligible percentage + /// The time over which to damp + /// The damped amount. This will be the original amount scaled by + /// a value between 0 and 1. + public static Vector3 Damp(Vector3 initial, Vector3 dampTime, float deltaTime) + { + for (int i = 0; i < 3; ++i) + initial[i] = Damp(initial[i], dampTime[i], deltaTime); + return initial; + } + + /// Get a damped version of a quantity. This is the portion of the + /// quantity that will take effect over the given time. + /// The amount that will be damped + /// The rate of damping. This is the time it would + /// take to reduce the original amount to a negligible percentage + /// The time over which to damp + /// The damped amount. This will be the original amount scaled by + /// a value between 0 and 1. + public static Vector3 Damp(Vector3 initial, float dampTime, float deltaTime) + { + for (int i = 0; i < 3; ++i) + initial[i] = Damp(initial[i], dampTime, deltaTime); + return initial; + } + } + + /// Tracks an object's velocity with a filter to determine a reasonably + /// steady direction for the object's current trajectory. + public class HeadingTracker + { + struct Item + { + public Vector3 velocity; + public float weight; + public float time; + }; + Item[] mHistory; + int mTop; + int mBottom; + int mCount; + + Vector3 mHeadingSum; + float mWeightSum = 0; + float mWeightTime = 0; + + Vector3 mLastGoodHeading = Vector3.zero; + + /// Construct a heading tracker with a given filter size + /// The size of the filter. The larger the filter, the + /// more constanct (and laggy) is the heading. 30 is pretty big. + public HeadingTracker(int filterSize) + { + mHistory = new Item[filterSize]; + float historyHalfLife = filterSize / 5f; // somewhat arbitrarily + mDecayExponent = -Mathf.Log(2f) / historyHalfLife; + ClearHistory(); + } + + /// Get the current filter size + public int FilterSize { get { return mHistory.Length; } } + + void ClearHistory() + { + mTop = mBottom = mCount = 0; + mWeightSum = 0; + mHeadingSum = Vector3.zero; + } + + static float mDecayExponent; + static float Decay(float time) { return Mathf.Exp(time * mDecayExponent); } + + /// Add a new velocity frame. This should be called once per frame, + /// unless the velocity is zero + /// The object's velocity this frame + public void Add(Vector3 velocity) + { + if (FilterSize == 0) + { + mLastGoodHeading = velocity; + return; + } + float weight = velocity.magnitude; + if (weight > UnityVectorExtensions.Epsilon) + { + Item item = new Item(); + item.velocity = velocity; + item.weight = weight; + item.time = Time.time; + if (mCount == FilterSize) + PopBottom(); + ++mCount; + mHistory[mTop] = item; + if (++mTop == FilterSize) + mTop = 0; + + mWeightSum *= Decay(item.time - mWeightTime); + mWeightTime = item.time; + mWeightSum += weight; + mHeadingSum += item.velocity; + } + } + + void PopBottom() + { + if (mCount > 0) + { + float time = Time.time; + Item item = mHistory[mBottom]; + if (++mBottom == FilterSize) + mBottom = 0; + --mCount; + + float decay = Decay(time - item.time); + mWeightSum -= item.weight * decay; + mHeadingSum -= item.velocity * decay; + if (mWeightSum <= UnityVectorExtensions.Epsilon || mCount == 0) + ClearHistory(); + } + } + + /// Decay the history. This should be called every frame. + public void DecayHistory() + { + float time = Time.time; + float decay = Decay(time - mWeightTime); + mWeightSum *= decay; + mWeightTime = time; + if (mWeightSum < UnityVectorExtensions.Epsilon) + ClearHistory(); + else + mHeadingSum = mHeadingSum * decay; + } + + /// Get the filtered heading. + /// The filtered direction of motion + public Vector3 GetReliableHeading() + { + // Update Last Good Heading + if (mWeightSum > UnityVectorExtensions.Epsilon + && (mCount == mHistory.Length || mLastGoodHeading.AlmostZero())) + { + Vector3 h = mHeadingSum / mWeightSum; + if (!h.AlmostZero()) + mLastGoodHeading = h.normalized; + } + return mLastGoodHeading; + } + } +} diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Runtime/Core/Predictor.cs.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Runtime/Core/Predictor.cs.meta" new file mode 100644 index 00000000..b7475bb2 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Runtime/Core/Predictor.cs.meta" @@ -0,0 +1,12 @@ +fileFormatVersion: 2 +guid: 6cef82e891a45884fb2b70604b0f8c29 +timeCreated: 1505225008 +licenseType: Pro +MonoImporter: + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Runtime/Core/RuntimeUtility.cs" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Runtime/Core/RuntimeUtility.cs" new file mode 100644 index 00000000..abc450ab --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Runtime/Core/RuntimeUtility.cs" @@ -0,0 +1,30 @@ +using System; +using UnityEngine; + +namespace Cinemachine +{ + /// An ad-hoc collection of helpers, used by Cinemachine + /// or its editor tools in various places + [DocumentationSorting(DocumentationSortingAttribute.Level.Undoc)] + public static class RuntimeUtility + { + /// Convenience to destroy an object, using the appropriate method depending + /// on whether the game is playing + /// The object to destroy + public static void DestroyObject(UnityEngine.Object obj) + { + if (obj != null) + { +#if UNITY_EDITOR + if (Application.isPlaying) + UnityEngine.Object.Destroy(obj); + else + UnityEngine.Object.DestroyImmediate(obj); +#else + UnityEngine.Object.Destroy(obj); +#endif + } + } + } +} + diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Runtime/Core/RuntimeUtility.cs.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Runtime/Core/RuntimeUtility.cs.meta" new file mode 100644 index 00000000..d53265ac --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Runtime/Core/RuntimeUtility.cs.meta" @@ -0,0 +1,13 @@ +fileFormatVersion: 2 +guid: b567991935cb6844d9bb65eda22b628f +timeCreated: 1517952341 +licenseType: Pro +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Runtime/Core/SignalSourceAsset.cs" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Runtime/Core/SignalSourceAsset.cs" new file mode 100644 index 00000000..4b1e4bdb --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Runtime/Core/SignalSourceAsset.cs" @@ -0,0 +1,42 @@ +using UnityEngine; + +namespace Cinemachine +{ + /// Interface for raw signal provider + public interface ISignalSource6D + { + /// + /// Returns the length on seconds of the signal. + /// Returns 0 for signals of indeterminate length. + /// + float SignalDuration { get; } + + /// Get the signal value at a given time relative to signal start + /// Time since signal start. Always >= 0 + /// output for position component of the signal + /// output for rotation component of the signal. Use Quaternion.identity if none. + void GetSignal(float timeSinceSignalStart, out Vector3 pos, out Quaternion rot); + } + + /// + /// This is an asset that defines a 6D signal that can be retrieved in a random-access fashion. + /// This is used by the Cinemachine Impulse module. + /// + [DocumentationSorting(DocumentationSortingAttribute.Level.API)] + public abstract class SignalSourceAsset : ScriptableObject, ISignalSource6D + { + /// + /// Returns the length on seconds of the signal. + /// Returns 0 for signals of indeterminate length. + /// + public abstract float SignalDuration { get; } + + /// Get the signal value at a given time relative to signal start + /// Time since signal start. Always >= 0 + /// output for position component of the signal + /// output for rotation component of the signal. Use Quaternion.identity if none. + public abstract void GetSignal( + float timeSinceSignalStart, out Vector3 pos, out Quaternion rot); + } + +} \ No newline at end of file diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Runtime/Core/SignalSourceAsset.cs.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Runtime/Core/SignalSourceAsset.cs.meta" new file mode 100644 index 00000000..8f6b9909 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Runtime/Core/SignalSourceAsset.cs.meta" @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: cebc3fe47a919524eb4a977f726a484e +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Runtime/Core/SplineHelpers.cs" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Runtime/Core/SplineHelpers.cs" new file mode 100644 index 00000000..5281e127 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Runtime/Core/SplineHelpers.cs" @@ -0,0 +1,137 @@ +using UnityEngine; + +namespace Cinemachine.Utility +{ + public static class SplineHelpers + { + public static Vector3 Bezier3( + float t, Vector3 p0, Vector3 p1, Vector3 p2, Vector3 p3) + { + t = Mathf.Clamp01(t); + float d = 1f - t; + return d * d * d * p0 + 3f * d * d * t * p1 + + 3f * d * t * t * p2 + t * t * t * p3; + } + + public static Vector3 BezierTangent3( + float t, Vector3 p0, Vector3 p1, Vector3 p2, Vector3 p3) + { + t = Mathf.Clamp01(t); + return (-3f * p0 + 9f * p1 - 9f * p2 + 3f * p3) * t * t + + (6f * p0 - 12f * p1 + 6f * p2) * t + - 3f * p0 + 3f * p1; + } + + public static float Bezier1(float t, float p0, float p1, float p2, float p3) + { + t = Mathf.Clamp01(t); + float d = 1f - t; + return d * d * d * p0 + 3f * d * d * t * p1 + + 3f * d * t * t * p2 + t * t * t * p3; + } + + public static float BezierTangent1( + float t, float p0, float p1, float p2, float p3) + { + t = Mathf.Clamp01(t); + return (-3f * p0 + 9f * p1 - 9f * p2 + 3f * p3) * t * t + + (6f * p0 - 12f * p1 + 6f * p2) * t + - 3f * p0 + 3f * p1; + } + + public static void ComputeSmoothControlPoints( + ref Vector4[] knot, ref Vector4[] ctrl1, ref Vector4[] ctrl2) + { + int numPoints = knot.Length; + if (numPoints <= 2) + { + if (numPoints == 2) + { + ctrl1[0] = Vector4.Lerp(knot[0], knot[1], 0.33333f); + ctrl2[0] = Vector4.Lerp(knot[0], knot[1], 0.66666f); + } + else if (numPoints == 1) + ctrl1[0] = ctrl2[0] = knot[0]; + return; + } + + var a = new float[numPoints]; + var b = new float[numPoints]; + var c = new float[numPoints]; + var r = new float[numPoints]; + for (int axis = 0; axis < 4; ++axis) + { + int n = numPoints - 1; + + // Linear into the first segment + a[0] = 0; + b[0] = 2; + c[0] = 1; + r[0] = knot[0][axis] + 2 * knot[1][axis]; + + // Internal segments + for (int i = 1; i < n - 1; ++i) + { + a[i] = 1; + b[i] = 4; + c[i] = 1; + r[i] = 4 * knot[i][axis] + 2 * knot[i+1][axis]; + } + + // Linear out of the last segment + a[n - 1] = 2; + b[n - 1] = 7; + c[n - 1] = 0; + r[n - 1] = 8 * knot[n - 1][axis] + knot[n][axis]; + + // Solve with Thomas algorithm + for (int i = 1; i < n; ++i) + { + float m = a[i] / b[i-1]; + b[i] = b[i] - m * c[i-1]; + r[i] = r[i] - m * r[i-1]; + } + + // Compute ctrl1 + ctrl1[n-1][axis] = r[n-1] / b[n-1]; + for (int i = n - 2; i >= 0; --i) + ctrl1[i][axis] = (r[i] - c[i] * ctrl1[i + 1][axis]) / b[i]; + + // Compute ctrl2 from ctrl1 + for (int i = 0; i < n; i++) + ctrl2[i][axis] = 2 * knot[i + 1][axis] - ctrl1[i + 1][axis]; + ctrl2[n - 1][axis] = 0.5f * (knot[n][axis] + ctrl1[n - 1][axis]); + } + } + + public static void ComputeSmoothControlPointsLooped( + ref Vector4[] knot, ref Vector4[] ctrl1, ref Vector4[] ctrl2) + { + int numPoints = knot.Length; + if (numPoints < 2) + { + if (numPoints == 1) + ctrl1[0] = ctrl2[0] = knot[0]; + return; + } + + int margin = Mathf.Min(4, numPoints-1); + Vector4[] knotLooped = new Vector4[numPoints + 2 * margin]; + Vector4[] ctrl1Looped = new Vector4[numPoints + 2 * margin]; + Vector4[] ctrl2Looped = new Vector4[numPoints + 2 * margin]; + for (int i = 0; i < margin; ++i) + { + knotLooped[i] = knot[numPoints-(margin-i)]; + knotLooped[numPoints+margin+i] = knot[i]; + } + for (int i = 0; i < numPoints; ++i) + knotLooped[i + margin] = knot[i]; + ComputeSmoothControlPoints(ref knotLooped, ref ctrl1Looped, ref ctrl2Looped); + for (int i = 0; i < numPoints; ++i) + { + ctrl1[i] = ctrl1Looped[i + margin]; + ctrl2[i] = ctrl2Looped[i + margin]; + } + } + } +} diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Runtime/Core/SplineHelpers.cs.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Runtime/Core/SplineHelpers.cs.meta" new file mode 100644 index 00000000..bd13869b --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Runtime/Core/SplineHelpers.cs.meta" @@ -0,0 +1,12 @@ +fileFormatVersion: 2 +guid: fca2bf25139920d4f9bf86711457992e +timeCreated: 1505844077 +licenseType: Pro +MonoImporter: + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Runtime/Core/UnityVectorExtensions.cs" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Runtime/Core/UnityVectorExtensions.cs" new file mode 100644 index 00000000..78f50449 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Runtime/Core/UnityVectorExtensions.cs" @@ -0,0 +1,241 @@ +using UnityEngine; + +namespace Cinemachine.Utility +{ + /// Extensions to the Vector3 class, used by Cinemachine + public static class UnityVectorExtensions + { + /// A useful Epsilon + public const float Epsilon = 0.0001f; + + /// + /// Get the closest point on a line segment. + /// + /// A point in space + /// Start of line segment + /// End of line segment + /// The interpolation parameter representing the point on the segment, with 0==s0, and 1==s1 + public static float ClosestPointOnSegment(this Vector3 p, Vector3 s0, Vector3 s1) + { + Vector3 s = s1 - s0; + float len2 = Vector3.SqrMagnitude(s); + if (len2 < Epsilon) + return 0; // degenrate segment + return Mathf.Clamp01(Vector3.Dot(p - s0, s) / len2); + } + + /// + /// Get the closest point on a line segment. + /// + /// A point in space + /// Start of line segment + /// End of line segment + /// The interpolation parameter representing the point on the segment, with 0==s0, and 1==s1 + public static float ClosestPointOnSegment(this Vector2 p, Vector2 s0, Vector2 s1) + { + Vector2 s = s1 - s0; + float len2 = Vector2.SqrMagnitude(s); + if (len2 < Epsilon) + return 0; // degenrate segment + return Mathf.Clamp01(Vector2.Dot(p - s0, s) / len2); + } + + /// + /// Returns a non-normalized projection of the supplied vector onto a plane + /// as described by its normal + /// + /// + /// The normal that defines the plane. Must have a length of 1. + /// The component of the vector that lies in the plane + public static Vector3 ProjectOntoPlane(this Vector3 vector, Vector3 planeNormal) + { + return (vector - Vector3.Dot(vector, planeNormal) * planeNormal); + } + + /// + /// Component-wise absolute value + /// + /// + /// + public static Vector3 Abs(this Vector3 v) + { + return new Vector3(Mathf.Abs(v.x), Mathf.Abs(v.y), Mathf.Abs(v.z)); + } + + /// Is the vector within Epsilon of zero length? + /// + /// True if the square magnitude of the vector is within Epsilon of zero + public static bool AlmostZero(this Vector3 v) + { + return v.sqrMagnitude < (Epsilon * Epsilon); + } + + /// Much more stable for small angles than Unity's native implementation + public static float Angle(Vector3 v1, Vector3 v2) + { +#if false // Maybe this version is better? to test.... + float a = v1.magnitude; + v1 *= v2.magnitude; + v2 *= a; + return Mathf.Atan2((v1 - v2).magnitude, (v1 + v2).magnitude) * Mathf.Rad2Deg * 2; +#else + v1.Normalize(); + v2.Normalize(); + return Mathf.Atan2((v1 - v2).magnitude, (v1 + v2).magnitude) * Mathf.Rad2Deg * 2; +#endif + } + + /// Much more stable for small angles than Unity's native implementation + public static float SignedAngle(Vector3 v1, Vector3 v2, Vector3 up) + { + float angle = Angle(v1, v2); + if (Mathf.Sign(Vector3.Dot(up, Vector3.Cross(v1, v2))) < 0) + return -angle; + return angle; + } + + /// This is a slerp that mimics a camera operator's movement in that + /// it chooses a path that avoids the lower hemisphere, as defined by + /// the up param + /// First direction + /// Second direction + /// Interpolation amoun t + /// Defines the up direction + public static Vector3 SlerpWithReferenceUp( + Vector3 vA, Vector3 vB, float t, Vector3 up) + { + float dA = vA.magnitude; + float dB = vB.magnitude; + if (dA < Epsilon || dB < Epsilon) + return Vector3.Lerp(vA, vB, t); + + Vector3 dirA = vA / dA; + Vector3 dirB = vB / dB; + Quaternion qA = Quaternion.LookRotation(dirA, up); + Quaternion qB = Quaternion.LookRotation(dirB, up); + Quaternion q = UnityQuaternionExtensions.SlerpWithReferenceUp(qA, qB, t, up); + Vector3 dir = q * Vector3.forward; + return dir * Mathf.Lerp(dA, dB, t); + } + } + + /// Extensions to the Quaternion class, usen in various places by Cinemachine + public static class UnityQuaternionExtensions + { + /// This is a slerp that mimics a camera operator's movement in that + /// it chooses a path that avoids the lower hemisphere, as defined by + /// the up param + /// First direction + /// Second direction + /// Interpolation amoun t + /// Defines the up direction. Must have a length of 1. + public static Quaternion SlerpWithReferenceUp( + Quaternion qA, Quaternion qB, float t, Vector3 up) + { + Vector3 dirA = (qA * Vector3.forward).ProjectOntoPlane(up); + Vector3 dirB = (qB * Vector3.forward).ProjectOntoPlane(up); + if (dirA.AlmostZero() || dirB.AlmostZero()) + return Quaternion.Slerp(qA, qB, t); + + // Work on the plane, in eulers + Quaternion qBase = Quaternion.LookRotation(dirA, up); + Quaternion qA1 = Quaternion.Inverse(qBase) * qA; + Quaternion qB1 = Quaternion.Inverse(qBase) * qB; + Vector3 eA = qA1.eulerAngles; + Vector3 eB = qB1.eulerAngles; + return qBase * Quaternion.Euler( + Mathf.LerpAngle(eA.x, eB.x, t), + Mathf.LerpAngle(eA.y, eB.y, t), + Mathf.LerpAngle(eA.z, eB.z, t)); + } + + /// Normalize a quaternion + /// + /// The normalized quaternion. Unit length is 1. + public static Quaternion Normalized(this Quaternion q) + { + Vector4 v = new Vector4(q.x, q.y, q.z, q.w).normalized; + return new Quaternion(v.x, v.y, v.z, v.w); + } + + /// + /// Get the rotations, first about world up, then about (travelling) local right, + /// necessary to align the quaternion's forward with the target direction. + /// This represents the tripod head movement needed to look at the target. + /// This formulation makes it easy to interpolate without introducing spurious roll. + /// + /// + /// The worldspace target direction in which we want to look + /// Which way is up. Must have a length of 1. + /// Vector2.y is rotation about worldUp, and Vector2.x is second rotation, + /// about local right. + public static Vector2 GetCameraRotationToTarget( + this Quaternion orient, Vector3 lookAtDir, Vector3 worldUp) + { + if (lookAtDir.AlmostZero()) + return Vector2.zero; // degenerate + + // Work in local space + Quaternion toLocal = Quaternion.Inverse(orient); + Vector3 up = toLocal * worldUp; + lookAtDir = toLocal * lookAtDir; + + // Align yaw based on world up + float angleH = 0; + { + Vector3 targetDirH = lookAtDir.ProjectOntoPlane(up); + if (!targetDirH.AlmostZero()) + { + Vector3 currentDirH = Vector3.forward.ProjectOntoPlane(up); + if (currentDirH.AlmostZero()) + { + // We're looking at the north or south pole + if (Vector3.Dot(currentDirH, up) > 0) + currentDirH = Vector3.down.ProjectOntoPlane(up); + else + currentDirH = Vector3.up.ProjectOntoPlane(up); + } + angleH = UnityVectorExtensions.SignedAngle(currentDirH, targetDirH, up); + } + } + Quaternion q = Quaternion.AngleAxis(angleH, up); + + // Get local vertical angle + float angleV = UnityVectorExtensions.SignedAngle( + q * Vector3.forward, lookAtDir, q * Vector3.right); + + return new Vector2(angleV, angleH); + } + + /// + /// Apply rotations, first about world up, then about (travelling) local right. + /// rot.y is rotation about worldUp, and rot.x is second rotation, about local right. + /// + /// + /// Vector2.y is rotation about worldUp, and Vector2.x is second rotation, + /// about local right. + /// Which way is up + public static Quaternion ApplyCameraRotation( + this Quaternion orient, Vector2 rot, Vector3 worldUp) + { + Quaternion q = Quaternion.AngleAxis(rot.x, Vector3.right); + return (Quaternion.AngleAxis(rot.y, worldUp) * orient) * q; + } + } + + /// Ad-hoc xxtentions to the Rect structure, used by Cinemachine + public static class UnityRectExtensions + { + /// Inflate a rect + /// + /// x and y are added/subtracted fto/from the edges of + /// the rect, inflating it in all directions + /// The inflated rect + public static Rect Inflated(this Rect r, Vector2 delta) + { + return new Rect( + r.xMin - delta.x, r.yMin - delta.y, + r.width + delta.x * 2, r.height + delta.y * 2); + } + } +} diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Runtime/Core/UnityVectorExtensions.cs.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Runtime/Core/UnityVectorExtensions.cs.meta" new file mode 100644 index 00000000..cbc7bd46 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Runtime/Core/UnityVectorExtensions.cs.meta" @@ -0,0 +1,12 @@ +fileFormatVersion: 2 +guid: 6a0472cd31396f741969b8c1af8dd5a0 +timeCreated: 1481654955 +licenseType: Pro +MonoImporter: + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Runtime/Core/UpdateTracker.cs" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Runtime/Core/UpdateTracker.cs" new file mode 100644 index 00000000..a2c93837 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Runtime/Core/UpdateTracker.cs" @@ -0,0 +1,132 @@ +//#define DEBUG_LOG_NAME + +using UnityEngine; +using System.Collections.Generic; + +namespace Cinemachine +{ + /// + /// Attempt to track on what clock transforms get updated + /// + [DocumentationSorting(DocumentationSortingAttribute.Level.Undoc)] + internal class UpdateTracker + { + public enum UpdateClock { Fixed, Late } + + class UpdateStatus + { + const int kWindowSize = 30; + int windowStart; + int numWindowLateUpdateMoves; + int numWindowFixedUpdateMoves; + int numWindows; + int lastFrameUpdated; + Matrix4x4 lastPos; +#if DEBUG_LOG_NAME + string name; +#endif + public UpdateClock PreferredUpdate { get; private set; } + +#if DEBUG_LOG_NAME + public UpdateStatus(string targetName, int currentFrame, Matrix4x4 pos) + { + name = targetName; +#else + public UpdateStatus(int currentFrame, Matrix4x4 pos) + { +#endif + windowStart = currentFrame; + lastFrameUpdated = Time.frameCount; + PreferredUpdate = UpdateClock.Late; + lastPos = pos; + } + + public void OnUpdate(int currentFrame, UpdateClock currentClock, Matrix4x4 pos) + { + if (lastPos == pos) + return; + + if (currentClock == UpdateClock.Late) + ++numWindowLateUpdateMoves; + else if (lastFrameUpdated != currentFrame) // only count 1 per rendered frame + ++numWindowFixedUpdateMoves; + lastPos = pos; + + UpdateClock choice; + if (numWindowFixedUpdateMoves > 3 && numWindowLateUpdateMoves < numWindowFixedUpdateMoves / 3) + choice = UpdateClock.Fixed; + else + choice = UpdateClock.Late; + if (numWindows == 0) + PreferredUpdate = choice; + + if (windowStart + kWindowSize <= currentFrame) + { +#if DEBUG_LOG_NAME + Debug.Log(name + ": Window " + numWindows + ": Late=" + numWindowLateUpdateMoves + ", Fixed=" + numWindowFixedUpdateMoves); +#endif + PreferredUpdate = choice; + ++numWindows; + windowStart = currentFrame; + numWindowLateUpdateMoves = (PreferredUpdate == UpdateClock.Late) ? 1 : 0; + numWindowFixedUpdateMoves = (PreferredUpdate == UpdateClock.Fixed) ? 1 : 0; + } + } + } + static Dictionary mUpdateStatus + = new Dictionary(); + + [RuntimeInitializeOnLoadMethod] + static void InitializeModule() { mUpdateStatus.Clear(); } + + static List sToDelete = new List(); + static void UpdateTargets(UpdateClock currentClock) + { + // Update the registry for all known targets + int now = Time.frameCount; + var iter = mUpdateStatus.GetEnumerator(); + while (iter.MoveNext()) + { + var current = iter.Current; + if (current.Key == null) + sToDelete.Add(current.Key); // target was deleted + else + current.Value.OnUpdate(now, currentClock, current.Key.localToWorldMatrix); + } + for (int i = sToDelete.Count-1; i >= 0; --i) + mUpdateStatus.Remove(sToDelete[i]); + sToDelete.Clear(); + } + + public static UpdateClock GetPreferredUpdate(Transform target) + { + if (Application.isPlaying && target != null) + { + UpdateStatus status; + if (mUpdateStatus.TryGetValue(target, out status)) + return status.PreferredUpdate; + + // Add the target to the registry +#if DEBUG_LOG_NAME + status = new UpdateStatus(target.name, Time.frameCount, target.localToWorldMatrix); +#else + status = new UpdateStatus(Time.frameCount, target.localToWorldMatrix); +#endif + mUpdateStatus.Add(target, status); + } + return UpdateClock.Late; + } + + static float mLastUpdateTime; + public static void OnUpdate(UpdateClock currentClock) + { + // Do something only if we are the first controller processing this frame + float now = Time.time; + if (now != mLastUpdateTime) + { + mLastUpdateTime = now; + UpdateTargets(currentClock); + } + } + } +} diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Runtime/Core/UpdateTracker.cs.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Runtime/Core/UpdateTracker.cs.meta" new file mode 100644 index 00000000..9a4d5c6b --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Runtime/Core/UpdateTracker.cs.meta" @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 41a7beeb0ec57584382c8170981d8ac1 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Runtime/EventHelpers.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Runtime/EventHelpers.meta" new file mode 100644 index 00000000..bc67caa5 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Runtime/EventHelpers.meta" @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 924d241f19612fa45bd388dc28955fad +folderAsset: yes +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Runtime/EventHelpers/CinemachineTriggerAction.cs" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Runtime/EventHelpers/CinemachineTriggerAction.cs" new file mode 100644 index 00000000..08c0726d --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Runtime/EventHelpers/CinemachineTriggerAction.cs" @@ -0,0 +1,274 @@ +using System; +using System.Collections.Generic; +using UnityEngine; +using UnityEngine.Events; +using UnityEngine.Playables; + +namespace Cinemachine +{ + /// + /// A multi-purpose script which causes an action to occur when + /// a trigger collider is entered and exited. + /// + [DocumentationSorting(DocumentationSortingAttribute.Level.UserRef)] + [SaveDuringPlay] + public class CinemachineTriggerAction : MonoBehaviour + { + /// Only triggers generated by objects on these layers will be considered. + [Header("Trigger Object Filter")] + [Tooltip("Only triggers generated by objects on these layers will be considered")] + public LayerMask m_LayerMask = 1; + + /// If set, only triggers generated by objects with this tag will be considered + [TagField] + [Tooltip("If set, only triggers generated by objects with this tag will be considered")] + public string m_WithTag = string.Empty; + + /// Triggers generated by objects with this tag will be ignored + [TagField] + [Tooltip("Triggers generated by objects with this tag will be ignored")] + public string m_WithoutTag = string.Empty; + + /// Skip this many trigger entries before taking action + [NoSaveDuringPlay] + [Tooltip("Skip this many trigger entries before taking action")] + public int m_SkipFirst = 0; + + /// Repeat the action for all subsequent trigger entries + [Tooltip("Repeat the action for all subsequent trigger entries")] + public bool m_Repeating = true; + + /// Defines what action to take on trigger enter/exit + [Serializable] + public struct ActionSettings + { + /// What action to take + public enum Mode + { + /// Use the event only + Custom, + /// Boost priority of virtual camera target + PriorityBoost, + /// Activate the target GameObject + Activate, + /// Decativate target GameObject + Deactivate, + /// Enable a component + Enable, + /// Disable a component + Disable, + /// Start animation on target + Play, + /// Stop animation on target + Stop + } + + /// Serializable parameterless game event + [Serializable] public class TriggerEvent : UnityEvent {} + + /// What action to take + [Tooltip("What action to take")] + public Mode m_Action; + + /// The target object on which to operate. If null, then the current behaviour/GameObject will be used + [Tooltip("The target object on which to operate. If null, then the current behaviour/GameObject will be used")] + public UnityEngine.Object m_Target; + + /// If PriorityBoost, this amount will be added to the virtual camera's priority + [Tooltip("If PriorityBoost, this amount will be added to the virtual camera's priority")] + public int m_BoostAmount; + + /// If playing a timeline, start at this time + [Tooltip("If playing a timeline, start at this time")] + public float m_StartTime; + + /// How to interpret the start time + public enum TimeMode { FromStart, FromEnd, BeforeNow, AfterNow }; + + /// How to interpret the start time + [Tooltip("How to interpret the start time")] + public TimeMode m_Mode; + + /// This event will be invoked + [Tooltip("This event will be invoked")] + public TriggerEvent m_Event; + + /// Constructor + public ActionSettings(Mode action) + { + m_Action = action; + m_Target = null; + m_BoostAmount = 0; + m_StartTime = 0; + m_Mode = TimeMode.FromStart; + m_Event = new TriggerEvent(); + } + + /// Invoke the action. Depending on the mode, different action will + /// be performed. The embedded event will always be invoked, in addition to the + /// action specified by the Mode. + public void Invoke() + { + UnityEngine.Object currentTarget = m_Target; + if (currentTarget != null) + { + GameObject targetGameObject = currentTarget as GameObject; + Behaviour targetBehaviour = currentTarget as Behaviour; + if (targetBehaviour != null) + targetGameObject = targetBehaviour.gameObject; + + switch (m_Action) + { + case Mode.Custom: + break; + case Mode.PriorityBoost: + { + CinemachineVirtualCameraBase vcam + = targetGameObject.GetComponent(); + if (vcam != null) + { + vcam.Priority += m_BoostAmount; + vcam.MoveToTopOfPrioritySubqueue(); + } + break; + } + case Mode.Activate: + if (targetGameObject != null) + { + targetGameObject.SetActive(true); + CinemachineVirtualCameraBase vcam + = targetGameObject.GetComponent(); + if (vcam != null) + vcam.MoveToTopOfPrioritySubqueue(); + } + break; + case Mode.Deactivate: + if (targetGameObject != null) + targetGameObject.SetActive(false); + break; + case Mode.Enable: + { + if (targetBehaviour != null) + targetBehaviour.enabled = true; + break; + } + case Mode.Disable: + { + if (targetBehaviour != null) + targetBehaviour.enabled = false; + break; + } + case Mode.Play: + { + PlayableDirector playable + = targetGameObject.GetComponent(); + if (playable != null) + { + double startTime = 0; + double duration = playable.duration; + double current = playable.time; + switch (m_Mode) + { + default: + case TimeMode.FromStart: + startTime += m_StartTime; + break; + case TimeMode.FromEnd: + startTime = duration - m_StartTime; + break; + case TimeMode.BeforeNow: + startTime = current - m_StartTime; + break; + case TimeMode.AfterNow: + startTime = current + m_StartTime; + break; + } + playable.time = startTime; + playable.Play(); + } + else + { + Animation ani = targetGameObject.GetComponent(); + if (ani != null) + ani.Play(); + } + break; + } + case Mode.Stop: + { + PlayableDirector playable + = targetGameObject.GetComponent(); + if (playable != null) + playable.Stop(); + else + { + Animation ani = targetGameObject.GetComponent(); + if (ani != null) + ani.Stop(); + } + break; + } + } + } + m_Event.Invoke(); + } + } + + /// What action to take when an eligible object enters the collider or trigger zone + public ActionSettings m_OnObjectEnter = new ActionSettings(ActionSettings.Mode.Custom); + + /// What action to take when an eligible object exits the collider or trigger zone + public ActionSettings m_OnObjectExit = new ActionSettings(ActionSettings.Mode.Custom); + + HashSet m_ActiveTriggerObjects = new HashSet(); + + private bool Filter(GameObject other) + { + if (!enabled) + return false; + if (((1 << other.layer) & m_LayerMask) == 0) + return false; + if (m_WithTag.Length != 0 && !other.CompareTag(m_WithTag)) + return false; + if (m_WithoutTag.Length != 0 && other.CompareTag(m_WithoutTag)) + return false; + + return true; + } + + void InternalDoTriggerEnter(GameObject other) + { + if (!Filter(other)) + return; + --m_SkipFirst; + if (m_SkipFirst > -1) + return; + if (!m_Repeating && m_SkipFirst != -1) + return; + + m_ActiveTriggerObjects.Add(other); + m_OnObjectEnter.Invoke(); + } + + void InternalDoTriggerExit(GameObject other) + { + if (!m_ActiveTriggerObjects.Contains(other)) + return; + m_ActiveTriggerObjects.Remove(other); + if (enabled) + m_OnObjectExit.Invoke(); + } + + void OnTriggerEnter(Collider other) { InternalDoTriggerEnter(other.gameObject); } + void OnTriggerExit(Collider other) { InternalDoTriggerExit(other.gameObject); } + void OnTriggerEnter2D(Collider2D other) { InternalDoTriggerEnter(other.gameObject); } + void OnTriggerExit2D(Collider2D other) { InternalDoTriggerExit(other.gameObject); } + + void OnCollisionEnter(Collision other) { InternalDoTriggerEnter(other.gameObject); } + void OnCollisionExit(Collision other) { InternalDoTriggerExit(other.gameObject); } + void OnCollisionEnter2D(Collision2D other) { InternalDoTriggerEnter(other.gameObject); } + void OnCollisionExit2D(Collision2D other) { InternalDoTriggerExit(other.gameObject); } + + void OnEnable() {} // For the Enabled checkbox + } +} diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Runtime/EventHelpers/CinemachineTriggerAction.cs.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Runtime/EventHelpers/CinemachineTriggerAction.cs.meta" new file mode 100644 index 00000000..1cf41312 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Runtime/EventHelpers/CinemachineTriggerAction.cs.meta" @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: e46ac8d61dc065848bd5a1aa7cd8c006 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Runtime/Experimental.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Runtime/Experimental.meta" new file mode 100644 index 00000000..d2d06eac --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Runtime/Experimental.meta" @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 382e34fa2b7177e4589888b9fb25567e +folderAsset: yes +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Runtime/Experimental/CinemachineNewFreeLook.cs" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Runtime/Experimental/CinemachineNewFreeLook.cs" new file mode 100644 index 00000000..3a7337ee --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Runtime/Experimental/CinemachineNewFreeLook.cs" @@ -0,0 +1,540 @@ +#if CINEMACHINE_EXPERIMENTAL_VCAM +using UnityEngine; +using Cinemachine.Utility; +using System; + +namespace Cinemachine +{ + /// + /// + /// NOTE: THIS CLASS IS EXPERIMENTAL, AND NOT FOR PUBLIC USE + /// + /// Lighter-weight version of the CinemachineFreeLook, with extra radial axis. + /// + /// A Cinemachine Camera geared towards a 3rd person camera experience. + /// The camera orbits around its subject with three separate camera rigs defining + /// rings around the target. Each rig has its own radius, height offset, composer, + /// and lens settings. + /// Depending on the camera's position along the spline connecting these three rigs, + /// these settings are interpolated to give the final camera position and state. + /// + [DocumentationSorting(DocumentationSortingAttribute.Level.UserRef)] + [DisallowMultipleComponent] +#if UNITY_2018_3_OR_NEWER + [ExecuteAlways] +#else + [ExecuteInEditMode] +#endif + [AddComponentMenu("Cinemachine/CinemachineNewFreeLook")] + [SaveDuringPlay] + public class CinemachineNewFreeLook : CinemachineNewVirtualCamera + { + /// The Vertical axis. Value is 0..1. Chooses how to blend the child rigs + [Tooltip("The Vertical axis. Value is 0..1. 0.5 is the middle rig. Chooses how to blend the child rigs")] + [AxisStateProperty] + public AxisState m_VerticalAxis = new AxisState(0, 1, false, true, 2f, 0.2f, 0.1f, "Mouse Y", false); + + [Tooltip("The Radial axis. Value is the base radius of the orbits")] + [AxisStateProperty] + public AxisState m_RadialAxis = new AxisState(1, 1, false, false, 100, 0f, 0f, "Mouse ScrollWheel", false); + + /// Defines the height and radius for an orbit + [Serializable] + public struct Orbit + { + /// Height relative to target + public float m_Height; + + /// Radius of orbit + public float m_Radius; + } + + /// Order is Top, Middle, Bottom + public Orbit[] m_Orbits = new Orbit[3]; + + /// + [Tooltip("Controls how taut is the line that connects the rigs' orbits, which determines final placement on the Y axis")] + [Range(0f, 1f)] + public float m_SplineCurvature; + + /// Identifiers for accessing override settings for top and bottom rigs + public enum RigID { Top, Bottom }; + + /// Override settings for top and bottom rigs + [Serializable] + public class Rig + { + public bool m_CustomLens; + public LensSettings m_Lens; + public bool m_CustomBody; + public TransposerSettings m_Body; + public bool m_CustomAim; + public ComposerSettings m_Aim; + public bool m_CustomNoise; + public PerlinNoiseSettings m_Noise; + + public void Validate() + { + if (m_Lens.FieldOfView == 0) + m_Lens = LensSettings.Default; + m_Lens.Validate(); + } + + /// Blendable settings for Transposer Transposer + [Serializable] public class TransposerSettings + { + [Range(0f, 20f)] public float m_XDamping; + [Range(0f, 20f)] public float m_YDamping; + [Range(0f, 20f)] public float m_ZDamping; + [Range(0f, 20f)] public float m_PitchDamping; + [Range(0f, 20f)] public float m_YawDamping; + [Range(0f, 20f)] public float m_RollDamping; + + internal void Lerp(CinemachineTransposer o, float t) + { + o.m_XDamping = Mathf.Lerp(o.m_XDamping, m_XDamping, t); + o.m_YDamping = Mathf.Lerp(o.m_YDamping, m_YDamping, t); + o.m_ZDamping = Mathf.Lerp(o.m_ZDamping, m_ZDamping, t); + o.m_PitchDamping = Mathf.Lerp(o.m_PitchDamping, m_PitchDamping, t); + o.m_YawDamping = Mathf.Lerp(o.m_YawDamping, m_YawDamping, t); + o.m_RollDamping = Mathf.Lerp(o.m_RollDamping, m_RollDamping, t); + } + + internal void PullFrom(CinemachineTransposer o) + { + m_XDamping = o.m_XDamping; + m_YDamping = o.m_YDamping; + m_ZDamping = o.m_ZDamping; + m_PitchDamping = o.m_PitchDamping; + m_YawDamping = o.m_YawDamping; + m_RollDamping = o.m_RollDamping; + } + + internal void PushTo(CinemachineTransposer o) + { + o.m_XDamping = m_XDamping; + o.m_YDamping = m_YDamping; + o.m_ZDamping = m_ZDamping; + o.m_PitchDamping =m_PitchDamping; + o.m_YawDamping = m_YawDamping; + o.m_RollDamping = m_RollDamping; + } + } + + /// Blendable settings for Composer + [Serializable] public class ComposerSettings + { + public Vector3 m_LookAtOffset; + [Space] + [Range(0f, 20)] public float m_HorizontalDamping; + [Range(0f, 20)] public float m_VerticalDamping; + [Space] + [Range(0f, 1f)] public float m_ScreenX; + [Range(0f, 1f)] public float m_ScreenY; + [Range(0f, 1f)] public float m_DeadZoneWidth; + [Range(0f, 1f)] public float m_DeadZoneHeight; + [Range(0f, 2f)] public float m_SoftZoneWidth; + [Range(0f, 2f)] public float m_SoftZoneHeight; + [Range(-0.5f, 0.5f)] public float m_BiasX; + [Range(-0.5f, 0.5f)] public float m_BiasY; + + internal void Lerp(CinemachineComposer c, float t) + { + c.m_TrackedObjectOffset = Vector3.Lerp(c.m_TrackedObjectOffset, m_LookAtOffset, t); + c.m_HorizontalDamping = Mathf.Lerp(c.m_HorizontalDamping, m_HorizontalDamping, t); + c.m_VerticalDamping = Mathf.Lerp(c.m_VerticalDamping, m_VerticalDamping, t); + c.m_ScreenX = Mathf.Lerp(c.m_ScreenX, m_ScreenX, t); + c.m_ScreenY = Mathf.Lerp(c.m_ScreenY, m_ScreenY, t); + c.m_DeadZoneWidth = Mathf.Lerp(c.m_DeadZoneWidth, m_DeadZoneWidth, t); + c.m_DeadZoneHeight = Mathf.Lerp(c.m_DeadZoneHeight, m_DeadZoneHeight, t); + c.m_SoftZoneWidth = Mathf.Lerp(c.m_SoftZoneWidth, m_SoftZoneWidth, t); + c.m_SoftZoneHeight = Mathf.Lerp(c.m_SoftZoneHeight, m_SoftZoneHeight, t); + c.m_BiasX = Mathf.Lerp(c.m_BiasX, m_BiasX, t); + c.m_BiasY = Mathf.Lerp(c.m_BiasY, m_BiasY, t); + } + + internal void PullFrom(CinemachineComposer c) + { + m_LookAtOffset = c.m_TrackedObjectOffset; + m_HorizontalDamping = c.m_HorizontalDamping; + m_VerticalDamping = c.m_VerticalDamping; + m_ScreenX = c.m_ScreenX; + m_ScreenY = c.m_ScreenY; + m_DeadZoneWidth = c.m_DeadZoneWidth; + m_DeadZoneHeight = c.m_DeadZoneHeight; + m_SoftZoneWidth = c.m_SoftZoneWidth; + m_SoftZoneHeight = c.m_SoftZoneHeight; + m_BiasX = c.m_BiasX; + m_BiasY = c.m_BiasY; + } + + internal void PushTo(CinemachineComposer c) + { + c.m_TrackedObjectOffset = m_LookAtOffset; + c.m_HorizontalDamping = m_HorizontalDamping; + c.m_VerticalDamping = m_VerticalDamping; + c.m_ScreenX = m_ScreenX; + c.m_ScreenY = m_ScreenY; + c.m_DeadZoneWidth = m_DeadZoneWidth; + c.m_DeadZoneHeight = m_DeadZoneHeight; + c.m_SoftZoneWidth = m_SoftZoneWidth; + c.m_SoftZoneHeight = m_SoftZoneHeight; + c.m_BiasX = m_BiasX; + c.m_BiasY = m_BiasY; + } + } + + /// Blendable settings for CinemachineBasicMultiChannelPerlin + [Serializable] public class PerlinNoiseSettings + { + public float m_AmplitudeGain; + public float m_FrequencyGain; + + internal void Lerp(CinemachineBasicMultiChannelPerlin p, float t) + { + p.m_AmplitudeGain = Mathf.Lerp(p.m_AmplitudeGain, m_AmplitudeGain, t); + p.m_FrequencyGain =Mathf.Lerp(p.m_FrequencyGain, m_FrequencyGain, t); + } + + internal void PullFrom(CinemachineBasicMultiChannelPerlin p) + { + m_AmplitudeGain = p.m_AmplitudeGain; + m_FrequencyGain = p.m_FrequencyGain; + } + + internal void PushTo(CinemachineBasicMultiChannelPerlin p) + { + p.m_AmplitudeGain = m_AmplitudeGain; + p.m_FrequencyGain = m_FrequencyGain; + } + } + } + + [SerializeField] + internal Rig[] m_Rigs = new Rig[2] { new Rig(), new Rig() }; + + /// Accessor for rig override settings + public Rig RigSettings(RigID rig) { return m_Rigs[(int)rig]; } + + /// Easy access to the transposer (may be null) + CinemachineTransposer Transposer + { + get { return ComponentCache[(int)CinemachineCore.Stage.Body] as CinemachineTransposer; } + } + + /// Enforce bounds for fields, when changed in inspector. + protected override void OnValidate() + { + base.OnValidate(); + for (int i = 0; i < m_Rigs.Length; ++i) + m_Rigs[i].Validate(); + } + + private void Awake() + { + m_VerticalAxis.HasRecentering = true; + m_RadialAxis.HasRecentering = false; + } + + void Reset() + { + DestroyComponents(); +#if UNITY_EDITOR + var orbital = UnityEditor.Undo.AddComponent(gameObject); + UnityEditor.Undo.AddComponent(gameObject); +#else + var orbital = gameObject.AddComponent(); + gameObject.AddComponent(); +#endif + orbital.HideOffsetInInspector = true; + orbital.m_BindingMode = CinemachineTransposer.BindingMode.SimpleFollowWithWorldUp; + + InvalidateComponentCache(); + m_Rigs = new Rig[2] { new Rig(), new Rig() }; + + // Default orbits + m_Orbits = new Orbit[3]; + m_Orbits[0].m_Height = 10; m_Orbits[0].m_Radius = 4; + m_Orbits[1].m_Height = 2.5f; m_Orbits[1].m_Radius = 8; + m_Orbits[2].m_Height = -0.5f; m_Orbits[2].m_Radius = 5; + + m_SplineCurvature = 0.5f; + } + + /// If we are transitioning from another FreeLook, grab the axis values from it. + /// The camera being deactivated. May be null. + /// Default world Up, set by the CinemachineBrain + /// Delta time for time-based effects (ignore if less than or equal to 0) + public override void OnTransitionFromCamera( + ICinemachineCamera fromCam, Vector3 worldUp, float deltaTime) + { + base.OnTransitionFromCamera(fromCam, worldUp, deltaTime); + if (fromCam != null && m_Transitions.m_InheritPosition) + { + // Note: horizontal axis already taken care of by base class + var cameraPos = fromCam.State.RawPosition; + + // Special handling for FreeLook: get an undamped outgoing position + if (fromCam is CinemachineNewFreeLook) + { + var orbital = (fromCam as CinemachineNewFreeLook).Transposer; + if (orbital != null) + cameraPos = orbital.GetTargetCameraPosition(worldUp); + } + m_VerticalAxis.Value = GetYAxisClosestValue(cameraPos, worldUp); + } + } + + float GetYAxisClosestValue(Vector3 cameraPos, Vector3 up) + { + if (Follow != null) + { + // Rotate the camera pos to the back + Quaternion q = Quaternion.FromToRotation(up, Vector3.up); + Vector3 dir = q * (cameraPos - Follow.position); + Vector3 flatDir = dir; flatDir.y = 0; + if (!flatDir.AlmostZero()) + { + float angle = Vector3.SignedAngle(flatDir, Vector3.back, Vector3.up); + dir = Quaternion.AngleAxis(angle, Vector3.up) * dir; + } + dir.x = 0; + + // Sample the spline in a few places, find the 2 closest, and lerp + int i0 = 0, i1 = 0; + float a0 = 0, a1 = 0; + const int NumSamples = 13; + float step = 1f / (NumSamples-1); + for (int i = 0; i < NumSamples; ++i) + { + float a = Vector3.SignedAngle( + dir, GetLocalPositionForCameraFromInput(i * step), Vector3.right); + if (i == 0) + a0 = a1 = a; + else + { + if (Mathf.Abs(a) < Mathf.Abs(a0)) + { + a1 = a0; + i1 = i0; + a0 = a; + i0 = i; + } + else if (Mathf.Abs(a) < Mathf.Abs(a1)) + { + a1 = a; + i1 = i; + } + } + } + if (Mathf.Sign(a0) == Mathf.Sign(a1)) + return i0 * step; + float t = Mathf.Abs(a0) / (Mathf.Abs(a0) + Mathf.Abs(a1)); + return Mathf.Lerp(i0 * step, i1 * step, t); + } + return m_VerticalAxis.Value; // stay conservative + } + + /// Internal use only. Called by CinemachineCore at designated update time + /// so the vcam can position itself and track its targets. All 3 child rigs are updated, + /// and a blend calculated, depending on the value of the Y axis. + /// Default world Up, set by the CinemachineBrain + /// Delta time for time-based effects (ignore if less than 0) + override public void InternalUpdateCameraState(Vector3 worldUp, float deltaTime) + { + if (!PreviousStateIsValid) + deltaTime = -1; + + // Initialize the camera state, in case the game object got moved in the editor + m_State = PullStateFromVirtualCamera(worldUp, ref m_Lens); + m_Rigs[(int)RigID.Top].m_Lens.SnapshotCameraReadOnlyProperties(ref m_Lens); + m_Rigs[(int)RigID.Bottom].m_Lens.SnapshotCameraReadOnlyProperties(ref m_Lens); + + // Update our axes + bool activeCam = (deltaTime >= 0) || CinemachineCore.Instance.IsLive(this); + if (activeCam) + { + if (m_VerticalAxis.Update(deltaTime)) + m_VerticalAxis.m_Recentering.CancelRecentering(); + m_RadialAxis.Update(deltaTime); + } + m_VerticalAxis.m_Recentering.DoRecentering(ref m_VerticalAxis, deltaTime, 0.5f); + + // Blend the components + if (mBlender == null) + mBlender = new ComponentBlender(this); + mBlender.Blend(GetVerticalAxisValue()); + + // Blend the lens + if (m_Rigs[mBlender.OtherRig].m_CustomLens) + m_State.Lens = LensSettings.Lerp( + m_State.Lens, m_Rigs[mBlender.OtherRig].m_Lens, mBlender.BlendAmount); + + // Do our stuff + SetReferenceLookAtTargetInState(ref m_State); + InvokeComponentPipeline(ref m_State, worldUp, deltaTime); + ApplyPositionBlendMethod(ref m_State, m_Transitions.m_BlendHint); + + // Restore the components + mBlender.Restore(); + + // Push the raw position back to the game object's transform, so it + // moves along with the camera. + if (!UserIsDragging) + { + if (Follow != null) + transform.position = State.RawPosition; + if (LookAt != null) + transform.rotation = State.RawOrientation; + } + // Signal that it's all done + InvokePostPipelineStageCallback(this, CinemachineCore.Stage.Finalize, ref m_State, deltaTime); + PreviousStateIsValid = true; + } + + ComponentBlender mBlender; + + protected override void OnComponentCacheUpdated() + { + var transposer = Transposer; + if (transposer != null) + { + transposer.HideOffsetInInspector = true; + transposer.m_FollowOffset = new Vector3( + 0, m_Orbits[1].m_Height, -m_Orbits[1].m_Radius); + } + } + + private float GetVerticalAxisValue() + { + float range = m_VerticalAxis.m_MaxValue - m_VerticalAxis.m_MinValue; + return (range > UnityVectorExtensions.Epsilon) ? m_VerticalAxis.Value / range : 0.5f; + } + + /// + /// Returns the local position of the camera along the spline used to connect the + /// three camera rigs. Does not take into account the current heading of the + /// camera (or its target) + /// + /// The t-value for the camera on its spline. Internally clamped to + /// the value [0,1] + /// The local offset (back + up) of the camera WRT its target based on the + /// supplied t-value + public Vector3 GetLocalPositionForCameraFromInput(float t) + { + UpdateCachedSpline(); + int n = 1; + if (t > 0.5f) + { + t -= 0.5f; + n = 2; + } + Vector3 pos = SplineHelpers.Bezier3( + t * 2f, m_CachedKnots[n], m_CachedCtrl1[n], m_CachedCtrl2[n], m_CachedKnots[n+1]); + pos *= Mathf.Max(0, m_RadialAxis.Value); + return pos; + } + + Vector2[] m_CachedOrbits; + float m_CachedTension; + Vector4[] m_CachedKnots; + Vector4[] m_CachedCtrl1; + Vector4[] m_CachedCtrl2; + void UpdateCachedSpline() + { + bool cacheIsValid = (m_CachedOrbits != null && m_CachedTension == m_SplineCurvature); + for (int i = 0; i < 3 && cacheIsValid; ++i) + cacheIsValid = (m_CachedOrbits[i].y == m_Orbits[i].m_Height + && m_CachedOrbits[i].x == m_Orbits[i].m_Radius); + if (!cacheIsValid) + { + float t = m_SplineCurvature; + m_CachedKnots = new Vector4[5]; + m_CachedCtrl1 = new Vector4[5]; + m_CachedCtrl2 = new Vector4[5]; + m_CachedKnots[1] = new Vector4(0, m_Orbits[2].m_Height, -m_Orbits[2].m_Radius, 0); + m_CachedKnots[2] = new Vector4(0, m_Orbits[1].m_Height, -m_Orbits[1].m_Radius, 0); + m_CachedKnots[3] = new Vector4(0, m_Orbits[0].m_Height, -m_Orbits[0].m_Radius, 0); + m_CachedKnots[0] = Vector4.Lerp(m_CachedKnots[0], Vector4.zero, t); + m_CachedKnots[4] = Vector4.Lerp(m_CachedKnots[3], Vector4.zero, t); + SplineHelpers.ComputeSmoothControlPoints( + ref m_CachedKnots, ref m_CachedCtrl1, ref m_CachedCtrl2); + m_CachedOrbits = new Vector2[3]; + for (int i = 0; i < 3; ++i) + m_CachedOrbits[i] = new Vector2(m_Orbits[i].m_Radius, m_Orbits[i].m_Height); + m_CachedTension = m_SplineCurvature; + } + } + + // Crazy damn thing for blending components at the source level + internal class ComponentBlender + { + Rig.TransposerSettings orbitalSaved = new Rig.TransposerSettings(); + Rig.ComposerSettings composerSaved = new Rig.ComposerSettings(); + Rig.PerlinNoiseSettings noiseSaved = new Rig.PerlinNoiseSettings(); + + public int OtherRig { get; set; } + public float BlendAmount { get; set; } + CinemachineNewFreeLook mFreeLook; + + public ComponentBlender(CinemachineNewFreeLook freeLook) { mFreeLook = freeLook; } + + public void Blend(float y) + { + if (y < 0.5f) + { + BlendAmount = 1 - (y * 2); + OtherRig = (int)RigID.Bottom; + } + else + { + BlendAmount = (y - 0.5f) * 2f; + OtherRig = (int)RigID.Top; + } + + var orbital = mFreeLook.Transposer; + if (orbital != null && mFreeLook.m_Rigs[OtherRig].m_CustomBody) + { + orbitalSaved.PullFrom(orbital); + mFreeLook.m_Rigs[OtherRig].m_Body.Lerp(orbital, BlendAmount); + } + if (orbital != null) + orbital.m_FollowOffset = mFreeLook.GetLocalPositionForCameraFromInput(y); + + var components = mFreeLook.ComponentCache; + var composer = components[(int)CinemachineCore.Stage.Aim] as CinemachineComposer; + if (composer != null && mFreeLook.m_Rigs[OtherRig].m_CustomAim) + { + composerSaved.PullFrom(composer); + mFreeLook.m_Rigs[OtherRig].m_Aim.Lerp(composer, BlendAmount); + } + + var noise = components[(int)CinemachineCore.Stage.Noise] as CinemachineBasicMultiChannelPerlin; + if (noise != null && mFreeLook.m_Rigs[OtherRig].m_CustomNoise) + { + noiseSaved.PullFrom(noise); + mFreeLook.m_Rigs[OtherRig].m_Noise.Lerp(noise, BlendAmount); + } + } + + public void Restore() + { + var orbital = mFreeLook.Transposer; + if (orbital != null && mFreeLook.m_Rigs[OtherRig].m_CustomBody) + orbitalSaved.PushTo(orbital); + if (orbital != null) + orbital.m_FollowOffset = new Vector3( + 0, mFreeLook.m_Orbits[1].m_Height, -mFreeLook.m_Orbits[1].m_Radius); + var components = mFreeLook.ComponentCache; + var composer = components[(int)CinemachineCore.Stage.Aim] as CinemachineComposer; + if (composer != null && mFreeLook.m_Rigs[OtherRig].m_CustomAim) + composerSaved.PushTo(composer); + + var noise = components[(int)CinemachineCore.Stage.Noise] as CinemachineBasicMultiChannelPerlin; + if (noise != null && mFreeLook.m_Rigs[OtherRig].m_CustomNoise) + noiseSaved.PushTo(noise); + } + } + } +} +#endif diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Runtime/Experimental/CinemachineNewFreeLook.cs.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Runtime/Experimental/CinemachineNewFreeLook.cs.meta" new file mode 100644 index 00000000..ac65de71 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Runtime/Experimental/CinemachineNewFreeLook.cs.meta" @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: bd920fe83f1086148a2b401f3e66528f +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {fileID: 2800000, guid: b8ba3923a6094cd48b85425f47fd7450, type: 3} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Runtime/Experimental/CinemachineNewVirtualCamera.cs" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Runtime/Experimental/CinemachineNewVirtualCamera.cs" new file mode 100644 index 00000000..6fa8e2af --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Runtime/Experimental/CinemachineNewVirtualCamera.cs" @@ -0,0 +1,373 @@ +#if CINEMACHINE_EXPERIMENTAL_VCAM +using UnityEngine; +using System; + +namespace Cinemachine +{ + /// + /// + /// NOTE: THIS CLASS IS EXPERIMENTAL, AND NOT FOR PUBLIC USE + /// + /// Lighter-weight version of the CinemachineVirtualCamera. + /// + /// + [DocumentationSorting(DocumentationSortingAttribute.Level.UserRef)] + [DisallowMultipleComponent] +#if UNITY_2018_3_OR_NEWER + [ExecuteAlways] +#else + [ExecuteInEditMode] +#endif + [AddComponentMenu("Cinemachine/CinemachineNewVirtualCamera")] + public class CinemachineNewVirtualCamera : CinemachineVirtualCameraBase + { + /// Object for the camera children to look at (the aim target) + [Tooltip("Object for the camera children to look at (the aim target).")] + [NoSaveDuringPlay] + public Transform m_LookAt = null; + + /// Object for the camera children wants to move with (the body target) + [Tooltip("Object for the camera children wants to move with (the body target).")] + [NoSaveDuringPlay] + public Transform m_Follow = null; + + /// Specifies the LensSettings of this Virtual Camera. + /// These settings will be transferred to the Unity camera when the vcam is live. + [Tooltip("Specifies the lens properties of this Virtual Camera. This generally mirrors the Unity Camera's lens settings, and will be used to drive the Unity camera when the vcam is active.")] + [LensSettingsProperty] + public LensSettings m_Lens = LensSettings.Default; + + /// Collection of parameters that influence how this virtual camera transitions from + /// other virtual cameras + public TransitionParams m_Transitions; + + /// API for the editor, to make the dragging of position handles behave better. + public bool UserIsDragging { get; set; } + + /// Updates the child rig cache + protected override void OnEnable() + { + base.OnEnable(); + InvalidateComponentCache(); + } + + void Reset() + { + DestroyComponents(); + } + + /// The camera state, which will be a blend of the child rig states + override public CameraState State { get { return m_State; } } + + /// The camera state, which will be a blend of the child rig states + protected CameraState m_State = CameraState.Default; + + /// Get the current LookAt target. Returns parent's LookAt if parent + /// is non-null and no specific LookAt defined for this camera + override public Transform LookAt + { + get { return ResolveLookAt(m_LookAt); } + set { m_LookAt = value; } + } + + /// Get the current Follow target. Returns parent's Follow if parent + /// is non-null and no specific Follow defined for this camera + override public Transform Follow + { + get { return ResolveFollow(m_Follow); } + set { m_Follow = value; } + } + + /// This is called to notify the vcam that a target got warped, + /// so that the vcam can update its internal state to make the camera + /// also warp seamlessy. + /// The object that was warped + /// The amount the target's position changed + public override void OnTargetObjectWarped(Transform target, Vector3 positionDelta) + { + if (target == Follow) + { + transform.position += positionDelta; + m_State.RawPosition += positionDelta; + } + UpdateComponentCache(); + for (int i = 0; i < m_Components.Length; ++i) + { + if (m_Components[i] != null) + m_Components[i].OnTargetObjectWarped(target, positionDelta); + } + base.OnTargetObjectWarped(target, positionDelta); + } + + /// If we are transitioning from another FreeLook, grab the axis values from it. + /// The camera being deactivated. May be null. + /// Default world Up, set by the CinemachineBrain + /// Delta time for time-based effects (ignore if less than or equal to 0) + public override void OnTransitionFromCamera( + ICinemachineCamera fromCam, Vector3 worldUp, float deltaTime) + { + base.OnTransitionFromCamera(fromCam, worldUp, deltaTime); + bool forceUpdate = false; + if (m_Transitions.m_InheritPosition && fromCam != null) + { + transform.position = fromCam.State.RawPosition; + //transform.rotation = fromCam.State.RawOrientation; + PreviousStateIsValid = false; + forceUpdate = true; + } + UpdateComponentCache(); + for (int i = 0; i < m_Components.Length; ++i) + { + if (m_Components[i] != null + && m_Components[i].OnTransitionFromCamera( + fromCam, worldUp, deltaTime, ref m_Transitions)) + forceUpdate = true; + } + if (forceUpdate) + InternalUpdateCameraState(worldUp, deltaTime); + else + UpdateCameraState(worldUp, deltaTime); + if (m_Transitions.m_OnCameraLive != null) + m_Transitions.m_OnCameraLive.Invoke(this, fromCam); + } + + /// Internal use only. Called by CinemachineCore at designated update time + /// so the vcam can position itself and track its targets. All 3 child rigs are updated, + /// and a blend calculated, depending on the value of the Y axis. + /// Default world Up, set by the CinemachineBrain + /// Delta time for time-based effects (ignore if less than 0) + override public void InternalUpdateCameraState(Vector3 worldUp, float deltaTime) + { + if (!PreviousStateIsValid) + deltaTime = -1; + + // Initialize the camera state, in case the game object got moved in the editor + m_State = PullStateFromVirtualCamera(worldUp, ref m_Lens); + + // Do our stuff + SetReferenceLookAtTargetInState(ref m_State); + InvokeComponentPipeline(ref m_State, worldUp, deltaTime); + ApplyPositionBlendMethod(ref m_State, m_Transitions.m_BlendHint); + + // Push the raw position back to the game object's transform, so it + // moves along with the camera. + if (!UserIsDragging) + { + if (Follow != null) + transform.position = State.RawPosition; + if (LookAt != null) + transform.rotation = State.RawOrientation; + } + // Signal that it's all done + InvokePostPipelineStageCallback(this, CinemachineCore.Stage.Finalize, ref m_State, deltaTime); + PreviousStateIsValid = true; + } + + private Transform mCachedLookAtTarget; + private CinemachineVirtualCameraBase mCachedLookAtTargetVcam; + + /// Set the state's refeenceLookAt target to our lookAt, with some smarts + /// in case our LookAt points to a vcam + protected void SetReferenceLookAtTargetInState(ref CameraState state) + { + Transform lookAtTarget = LookAt; + if (lookAtTarget != mCachedLookAtTarget) + { + mCachedLookAtTarget = lookAtTarget; + mCachedLookAtTargetVcam = null; + if (lookAtTarget != null) + mCachedLookAtTargetVcam = lookAtTarget.GetComponent(); + } + if (lookAtTarget != null) + { + if (mCachedLookAtTargetVcam != null) + state.ReferenceLookAt = mCachedLookAtTargetVcam.State.FinalPosition; + else + state.ReferenceLookAt = lookAtTarget.position; + } + } + + protected CameraState InvokeComponentPipeline( + ref CameraState state, Vector3 worldUp, float deltaTime) + { + UpdateComponentCache(); + + // Apply the component pipeline + for (CinemachineCore.Stage stage = CinemachineCore.Stage.Body; + stage < CinemachineCore.Stage.Finalize; ++stage) + { + var c = m_Components[(int)stage]; + if (c != null) + c.PrePipelineMutateCameraState(ref state, deltaTime); + } + for (CinemachineCore.Stage stage = CinemachineCore.Stage.Body; + stage < CinemachineCore.Stage.Finalize; ++stage) + { + var c = m_Components[(int)stage]; + if (c != null) + c.MutateCameraState(ref state, deltaTime); + else if (stage == CinemachineCore.Stage.Aim) + state.BlendHint |= CameraState.BlendHintValue.IgnoreLookAtTarget; // no aim + InvokePostPipelineStageCallback(this, stage, ref state, deltaTime); + } + + return state; + } + + // Component Cache - serialized only for copy/paste + [SerializeField, HideInInspector, NoSaveDuringPlay] + CinemachineComponentBase[] m_Components; + + /// For inspector + internal CinemachineComponentBase[] ComponentCache + { + get + { + UpdateComponentCache(); + return m_Components; + } + } + + /// Call this when CinemachineCompponentBase compponents are added + /// or removed. If you don't call this, you may get null reference errors. + public void InvalidateComponentCache() + { + m_Components = null; + } + + /// Bring the component cache up to date if needed + protected void UpdateComponentCache() + { +#if UNITY_EDITOR + // Special case: if we have serialized in with some other game object's + // components, then we have just been pasted so we should clone them + for (int i = 0; m_Components != null && i < m_Components.Length; ++i) + { + if (m_Components[i] != null && m_Components[i].gameObject != gameObject) + { + var copyFrom = m_Components; + DestroyComponents(); + CopyComponents(copyFrom); + break; + } + } +#endif + if (m_Components != null && m_Components.Length == (int)CinemachineCore.Stage.Finalize) + return; // up to date + + m_Components = new CinemachineComponentBase[(int)CinemachineCore.Stage.Finalize]; + var existing = GetComponents(); + for (int i = 0; existing != null && i < existing.Length; ++i) + m_Components[(int)existing[i].Stage] = existing[i]; + + for (int i = 0; i < m_Components.Length; ++i) + { + if (m_Components[i] != null) + { + if (CinemachineCore.sShowHiddenObjects) + m_Components[i].hideFlags &= ~HideFlags.HideInInspector; + else + m_Components[i].hideFlags |= HideFlags.HideInInspector; + } + } + OnComponentCacheUpdated(); + } + + /// Notification that the component cache has just been update, + /// in case a subclass needs to do something extra + protected virtual void OnComponentCacheUpdated() {} + + /// Destroy all the CinmachineComponentBase components + protected void DestroyComponents() + { + var existing = GetComponents(); + for (int i = 0; i < existing.Length; ++i) + { +#if UNITY_EDITOR + UnityEditor.Undo.DestroyObjectImmediate(existing[i]); +#else + UnityEngine.Object.Destroy(existing[i]); +#endif + } + InvalidateComponentCache(); + } + +#if UNITY_EDITOR + // This gets called when user pastes component values + void CopyComponents(CinemachineComponentBase[] copyFrom) + { + foreach (CinemachineComponentBase c in copyFrom) + { + if (c != null) + { + Type type = c.GetType(); + var copy = UnityEditor.Undo.AddComponent(gameObject, type); + UnityEditor.Undo.RecordObject(copy, "copying pipeline"); + + System.Reflection.BindingFlags bindingAttr + = System.Reflection.BindingFlags.Public + | System.Reflection.BindingFlags.NonPublic + | System.Reflection.BindingFlags.Instance; + + System.Reflection.FieldInfo[] fields = type.GetFields(bindingAttr); + for (int i = 0; i < fields.Length; ++i) + if (!fields[i].IsStatic) + fields[i].SetValue(copy, fields[i].GetValue(c)); + } + } + } +#endif + + /// Legacy support for an old API. GML todo: deprecate these methods + + /// Get the component set for a specific stage. + /// The stage for which we want the component + /// The Cinemachine component for that stage, or null if not defined + public CinemachineComponentBase GetCinemachineComponent(CinemachineCore.Stage stage) + { + return ComponentCache[(int)stage]; + } + + /// Get an existing component of a specific type from the cinemachine pipeline. + public T GetCinemachineComponent() where T : CinemachineComponentBase + { + var components = ComponentCache; + foreach (var c in components) + if (c is T) + return c as T; + return null; + } + + /// Add a component to the cinemachine pipeline. + public T AddCinemachineComponent() where T : CinemachineComponentBase + { + T c = gameObject.AddComponent(); + var components = ComponentCache; + var oldC = components[(int)c.Stage]; + if (oldC != null) + { + oldC.enabled = false; + RuntimeUtility.DestroyObject(oldC); + } + InvalidateComponentCache(); + return c; + } + + /// Remove a component from the cinemachine pipeline. + public void DestroyCinemachineComponent() where T : CinemachineComponentBase + { + var components = ComponentCache; + foreach (var c in components) + { + if (c is T) + { + c.enabled = false; + RuntimeUtility.DestroyObject(c); + InvalidateComponentCache(); + return; + } + } + } + } +} +#endif diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Runtime/Experimental/CinemachineNewVirtualCamera.cs.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Runtime/Experimental/CinemachineNewVirtualCamera.cs.meta" new file mode 100644 index 00000000..2b1f8d5e --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Runtime/Experimental/CinemachineNewVirtualCamera.cs.meta" @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: be817a1286f201845b5c36ae9afe9e35 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {fileID: 2800000, guid: b8ba3923a6094cd48b85425f47fd7450, type: 3} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Runtime/Impulse.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Runtime/Impulse.meta" new file mode 100644 index 00000000..e2fdd201 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Runtime/Impulse.meta" @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: e2408873163918f4da4afc37c51b1586 +folderAsset: yes +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Runtime/Impulse/CinemachineCollisionImpulseSource.cs" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Runtime/Impulse/CinemachineCollisionImpulseSource.cs" new file mode 100644 index 00000000..b9bae317 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Runtime/Impulse/CinemachineCollisionImpulseSource.cs" @@ -0,0 +1,153 @@ +using Cinemachine.Utility; +using UnityEngine; + +namespace Cinemachine +{ + /// + /// Generate an Impulse Event this object's Collider collides with something + /// or its trigger zone is entered. + /// + /// This component should be attached to a GameObject with a Collider or a Collider2D. + /// Objects colliding with this (or entering its trigger zone if it's a trigger) will be + /// filtered according to the layer and tag settings defined here, and if they + /// pass the filter, they will cause an impulse event to be generated. + /// + [DocumentationSorting(DocumentationSortingAttribute.Level.UserRef)] + [SaveDuringPlay] + public class CinemachineCollisionImpulseSource : CinemachineImpulseSource + { + /// Only collisions with objects on these layers will generate Impulse events. + [Header("Trigger Object Filter")] + [Tooltip("Only collisions with objects on these layers will generate Impulse events")] + public LayerMask m_LayerMask = 1; + + /// No Impulse evemts will be generated for collisions with objects having these tags + [TagField] + [Tooltip("No Impulse evemts will be generated for collisions with objects having these tags")] + public string m_IgnoreTag = string.Empty; + + /// If checked, signal direction will be affected by the direction of impact + [Header("How To Generate The Impulse")] + [Tooltip("If checked, signal direction will be affected by the direction of impact")] + public bool m_UseImpactDirection = false; + + /// If checked, signal amplitude will be multiplied by the mass of the impacting object + [Tooltip("If checked, signal amplitude will be multiplied by the mass of the impacting object")] + public bool m_ScaleImpactWithMass = false; + + /// If checked, signal amplitude will be multiplied by the speed of the impacting object + [Tooltip("If checked, signal amplitude will be multiplied by the speed of the impacting object")] + public bool m_ScaleImpactWithSpeed = false; + + Rigidbody mRigidBody; + Rigidbody2D mRigidBody2D; + + private void Start() + { + mRigidBody = GetComponent(); + mRigidBody2D = GetComponent(); + } + + private void OnEnable() {} // For the Enabled checkbox + + private void OnCollisionEnter(Collision c) + { + GenerateImpactEvent(c.collider, null, c.relativeVelocity); + } + + private void OnTriggerEnter(Collider c) + { + GenerateImpactEvent(c, null, Vector3.zero); + } + + private void OnCollisionEnter2D(Collision2D c) + { + GenerateImpactEvent(null, c.collider, c.relativeVelocity); + } + + private void OnTriggerEnter2D(Collider2D c) + { + GenerateImpactEvent(null, c, Vector3.zero); + } + + private float GetMassAndVelocity(Collider other, Collider2D other2d, ref Vector3 vel) + { + bool getVelocity = vel == Vector3.zero; + float mass = 1; + if (m_ScaleImpactWithMass || m_ScaleImpactWithSpeed || m_UseImpactDirection) + { + if (mRigidBody != null) + { + if (m_ScaleImpactWithMass) + mass *= mRigidBody.mass; + if (getVelocity) + vel = -mRigidBody.velocity; + } + else if (mRigidBody2D != null) + { + if (m_ScaleImpactWithMass) + mass *= mRigidBody2D.mass; + if (getVelocity) + vel = -mRigidBody2D.velocity; + } + + var rb = other != null ? other.attachedRigidbody : null; + if (rb != null) + { + if (m_ScaleImpactWithMass) + mass *= rb.mass; + if (getVelocity) + vel += rb.velocity; + } + + var rb2d = other2d != null ? other2d.attachedRigidbody : null; + if (rb2d != null) + { + if (m_ScaleImpactWithMass) + mass *= rb2d.mass; + if (getVelocity) + { + Vector3 v = rb2d.velocity; + vel += v; + } + } + } + return mass; + } + + private void GenerateImpactEvent(Collider other, Collider2D other2d, Vector3 vel) + { + // Check the filters + if (!enabled) + return; + + if (other != null) + { + int layer = other.gameObject.layer; + if (((1 << layer) & m_LayerMask) == 0) + return; + if (m_IgnoreTag.Length != 0 && other.CompareTag(m_IgnoreTag)) + return; + } + else if (other2d != null) + { + int layer = other2d.gameObject.layer; + if (((1 << layer) & m_LayerMask) == 0) + return; + if (m_IgnoreTag.Length != 0 && other2d.CompareTag(m_IgnoreTag)) + return; + } + + // Calculate the signal direction and magnitude + float mass = GetMassAndVelocity(other, other2d, ref vel); + if (m_ScaleImpactWithSpeed) + mass *= vel.magnitude; + Vector3 dir = Vector3.down; + if (m_UseImpactDirection && !vel.AlmostZero()) + dir = -vel.normalized; + + // Fire it off! + GenerateImpulse(dir * mass); + } + } +} diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Runtime/Impulse/CinemachineCollisionImpulseSource.cs.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Runtime/Impulse/CinemachineCollisionImpulseSource.cs.meta" new file mode 100644 index 00000000..3dae5560 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Runtime/Impulse/CinemachineCollisionImpulseSource.cs.meta" @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: cd438dd108a0f284aa931a2da434f1d3 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Runtime/Impulse/CinemachineFixedSignal.cs" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Runtime/Impulse/CinemachineFixedSignal.cs" new file mode 100644 index 00000000..62e879b8 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Runtime/Impulse/CinemachineFixedSignal.cs" @@ -0,0 +1,68 @@ +using UnityEngine; + +namespace Cinemachine +{ + /// + /// A definition of an impulse signal that gets propagated to listeners + /// + [DocumentationSorting(DocumentationSortingAttribute.Level.UserRef)] + public class CinemachineFixedSignal : SignalSourceAsset + { + /// The raw signal shape along the X axis + [Tooltip("The raw signal shape along the X axis")] + public AnimationCurve m_XCurve; + + /// The raw signal shape along the Y axis + [Tooltip("The raw signal shape along the Y axis")] + public AnimationCurve m_YCurve; + + /// The raw signal shape along the Z axis + [Tooltip("The raw signal shape along the Z axis")] + public AnimationCurve m_ZCurve; + + /// + /// Returns the length on seconds of the signal. + /// Returns 0 for signals of indeterminate length. + /// + public override float SignalDuration + { + get + { + return Mathf.Max( + AxisDuration(m_XCurve), + Mathf.Max(AxisDuration(m_YCurve), AxisDuration(m_ZCurve))); + } + } + + float AxisDuration(AnimationCurve axis) + { + float duration = 0; + if (axis != null && axis.length > 1) + { + float start = axis[0].time; + duration = axis[axis.length-1].time - start; + } + return duration; + } + + /// Get the raw signal at this time + /// The time since in seconds since the start of the signal + /// The position impulse signal + /// The rotation impulse signal + public override void GetSignal(float timeSinceSignalStart, out Vector3 pos, out Quaternion rot) + { + rot = Quaternion.identity; + pos = new Vector3( + AxisValue(m_XCurve, timeSinceSignalStart), + AxisValue(m_YCurve, timeSinceSignalStart), + AxisValue(m_ZCurve, timeSinceSignalStart)); + } + + float AxisValue(AnimationCurve axis, float time) + { + if (axis == null || axis.length == 0) + return 0; + return axis.Evaluate(time); + } + } +} diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Runtime/Impulse/CinemachineFixedSignal.cs.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Runtime/Impulse/CinemachineFixedSignal.cs.meta" new file mode 100644 index 00000000..278597e3 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Runtime/Impulse/CinemachineFixedSignal.cs.meta" @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: a5969901aa40942499363f92e3787110 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Runtime/Impulse/CinemachineImpulseDefinition.cs" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Runtime/Impulse/CinemachineImpulseDefinition.cs" new file mode 100644 index 00000000..fc25d308 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Runtime/Impulse/CinemachineImpulseDefinition.cs" @@ -0,0 +1,186 @@ +using Cinemachine.Utility; +using System; +using UnityEngine; + +namespace Cinemachine +{ + /// + /// Property applied to CinemachineImpulseManager Channels. + /// Used for custom drawing in the inspector. + /// + public sealed class CinemachineImpulseDefinitionPropertyAttribute : PropertyAttribute {} + + /// + /// Definition of an impulse signal that gets propagated to listeners. + /// + /// Here you provide a Raw Signal source, and define an envelope for time-scaling + /// it to craft the complete Impulse signal shape. Also, you provide here parameters + /// that define how the signal dissipates with spatial distance from the source location. + /// Finally, you specify the Impulse Channel on which the signal will be sent. + /// + /// An API method is provided here to take these parameters, create an Impulse Event, + /// and broadcast it on the channel. + /// + /// When creating a custom Impulse Source class, you will have an instance of this class + /// as a field in your custom class. Be sure also to include the + /// [CinemachineImpulseDefinition] attribute on the field, to get the right + /// property drawer for it. + /// + [DocumentationSorting(DocumentationSortingAttribute.Level.API)] + [Serializable] + public class CinemachineImpulseDefinition + { + /// + /// Impulse events generated here will appear on the channels included in the mask. + /// + [CinemachineImpulseChannelProperty] + [Tooltip("Impulse events generated here will appear on the channels included in the mask.")] + public int m_ImpulseChannel = 1; + + /// + /// Defines the signal that will be generated. + /// + [Header("Signal Shape")] + [Tooltip("Defines the signal that will be generated.")] + [CinemachineEmbeddedAssetProperty(true)] + public SignalSourceAsset m_RawSignal = null; + + /// + /// Gain to apply to the amplitudes defined in the signal source asset. + /// + [Tooltip("Gain to apply to the amplitudes defined in the signal source. 1 is normal. Setting this to 0 completely mutes the signal.")] + public float m_AmplitudeGain = 1f; + + /// + /// Scale factor to apply to the time axis. + /// + [Tooltip("Scale factor to apply to the time axis. 1 is normal. Larger magnitudes will make the signal progress more rapidly.")] + public float m_FrequencyGain = 1f; + + /// How to fit the signal into the envelope time + public enum RepeatMode + { + /// Time-stretch the signal to fit the envelope + Stretch, + /// Loop the signal in time to fill the envelope + Loop + } + /// How to fit the signal into the envelope time + [Tooltip("How to fit the signal into the envelope time")] + public RepeatMode m_RepeatMode = RepeatMode.Stretch; + + /// Randomize the signal start time + [Tooltip("Randomize the signal start time")] + public bool m_Randomize = true; + + /// + /// This defines the time-envelope of the signal. + /// The raw signal will be time-scaled to fit in the envelope. + /// + [Tooltip("This defines the time-envelope of the signal. The raw signal will be time-scaled to fit in the envelope.")] + [CinemachineImpulseEnvelopeProperty] + public CinemachineImpulseManager.EnvelopeDefinition m_TimeEnvelope + = CinemachineImpulseManager.EnvelopeDefinition.Default(); + + /// + /// The signal will have full amplitude in this radius surrounding the impact point. + /// Beyond that it will dissipate with distance. + /// + [Header("Spatial Range")] + [Tooltip("The signal will have full amplitude in this radius surrounding the impact point. Beyond that it will dissipate with distance.")] + public float m_ImpactRadius = 100; + + /// How the signal direction behaves as the listener moves away from the origin. + [Tooltip("How the signal direction behaves as the listener moves away from the origin.")] + public CinemachineImpulseManager.ImpulseEvent.DirectionMode m_DirectionMode + = CinemachineImpulseManager.ImpulseEvent.DirectionMode.Fixed; + + /// + /// This defines how the signal will dissipate with distance beyond the impact radius. + /// + [Tooltip("This defines how the signal will dissipate with distance beyond the impact radius.")] + public CinemachineImpulseManager.ImpulseEvent.DissipationMode m_DissipationMode + = CinemachineImpulseManager.ImpulseEvent.DissipationMode.ExponentialDecay; + + /// + /// At this distance beyond the impact radius, the signal will have dissipated to zero. + /// + [Tooltip("At this distance beyond the impact radius, the signal will have dissipated to zero.")] + public float m_DissipationDistance = 1000; + + /// Call this from your behaviour's OnValidate to validate the fields here + public void OnValidate() + { + m_ImpactRadius = Mathf.Max(0, m_ImpactRadius); + m_DissipationDistance = Mathf.Max(0, m_DissipationDistance); + m_TimeEnvelope.Validate(); + } + + /// Generate an impulse event at a location in space, + /// and broadcast it on the appropriate impulse channel + public void CreateEvent(Vector3 position, Vector3 velocity) + { + if (m_RawSignal == null || Mathf.Abs(m_TimeEnvelope.Duration) < UnityVectorExtensions.Epsilon) + return; + + CinemachineImpulseManager.ImpulseEvent e + = CinemachineImpulseManager.Instance.NewImpulseEvent(); + e.m_Envelope = m_TimeEnvelope; + + // Scale the time-envelope decay as the root of the amplitude scale + e.m_Envelope = m_TimeEnvelope; + if (m_TimeEnvelope.m_ScaleWithImpact) + e.m_Envelope.m_DecayTime *= Mathf.Sqrt(velocity.magnitude); + + e.m_SignalSource = new SignalSource(this, velocity); + e.m_Position = position; + e.m_Radius = m_ImpactRadius; + e.m_Channel = m_ImpulseChannel; + e.m_DirectionMode = m_DirectionMode; + e.m_DissipationMode = m_DissipationMode; + e.m_DissipationDistance = m_DissipationDistance; + CinemachineImpulseManager.Instance.AddImpulseEvent(e); + } + + // Wrap the raw signal to handle gain, RepeatMode, randomization, and velocity + class SignalSource : ISignalSource6D + { + CinemachineImpulseDefinition m_Def; + Vector3 m_Velocity; + float m_StartTimeOffset = 0; + + public SignalSource(CinemachineImpulseDefinition def, Vector3 velocity) + { + m_Def = def; + m_Velocity = velocity; + if (m_Def.m_Randomize && m_Def.m_RawSignal.SignalDuration <= 0) + m_StartTimeOffset = UnityEngine.Random.Range(-1000f, 1000f); + } + + public float SignalDuration { get { return m_Def.m_RawSignal.SignalDuration; } } + + public void GetSignal(float timeSinceSignalStart, out Vector3 pos, out Quaternion rot) + { + float time = m_StartTimeOffset + timeSinceSignalStart * m_Def.m_FrequencyGain; + + // Do we have to fit the signal into the envelope? + float signalDuration = SignalDuration; + if (signalDuration > 0) + { + if (m_Def.m_RepeatMode == RepeatMode.Loop) + time %= signalDuration; + else if (m_Def.m_TimeEnvelope.Duration > UnityVectorExtensions.Epsilon) + time *= m_Def.m_TimeEnvelope.Duration / signalDuration; // stretch + } + + m_Def.m_RawSignal.GetSignal(time, out pos, out rot); + float gain = m_Velocity.magnitude; + Vector3 dir = m_Velocity.normalized; + gain *= m_Def.m_AmplitudeGain; + pos *= gain; + pos = Quaternion.FromToRotation(Vector3.down, m_Velocity) * pos; + rot = Quaternion.SlerpUnclamped(Quaternion.identity, rot, gain); + } + } + } +} diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Runtime/Impulse/CinemachineImpulseDefinition.cs.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Runtime/Impulse/CinemachineImpulseDefinition.cs.meta" new file mode 100644 index 00000000..e2aeeb7b --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Runtime/Impulse/CinemachineImpulseDefinition.cs.meta" @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 829b8a241d4653446a2cb2436c262305 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Runtime/Impulse/CinemachineImpulseListener.cs" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Runtime/Impulse/CinemachineImpulseListener.cs" new file mode 100644 index 00000000..24e22e12 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Runtime/Impulse/CinemachineImpulseListener.cs" @@ -0,0 +1,59 @@ +using UnityEngine; + +namespace Cinemachine +{ + /// + /// An extension for Cinemachine Virtual Camera which post-processes + /// the final position of the virtual camera. It listens for CinemachineImpulse + /// signals on the specified channels, and moves the camera in response to them. + /// + [SaveDuringPlay] + [AddComponentMenu("")] // Hide in menu + [DocumentationSorting(DocumentationSortingAttribute.Level.UserRef)] +#if UNITY_2018_3_OR_NEWER + [ExecuteAlways] +#else + [ExecuteInEditMode] +#endif + public class CinemachineImpulseListener : CinemachineExtension + { + /// + /// Impulse events on channels not included in the mask will be ignored. + /// + [Tooltip("Impulse events on channels not included in the mask will be ignored.")] + [CinemachineImpulseChannelProperty] + public int m_ChannelMask = 1; + + /// + /// Gain to apply to the Impulse signal. + /// + [Tooltip("Gain to apply to the Impulse signal. 1 is normal strength. Setting this to 0 completely mutes the signal.")] + public float m_Gain = 1; + + /// + /// Enable this to perform distance calculation in 2D (ignore Z). + /// + [Tooltip("Enable this to perform distance calculation in 2D (ignore Z)")] + public bool m_Use2DDistance = false; + + // GML todo: add reaction configuration params here + + protected override void PostPipelineStageCallback( + CinemachineVirtualCameraBase vcam, + CinemachineCore.Stage stage, ref CameraState state, float deltaTime) + { + if (stage == CinemachineCore.Stage.Aim) + { + Vector3 impulsePos = Vector3.zero; + Quaternion impulseRot = Quaternion.identity; + if (CinemachineImpulseManager.Instance.GetImpulseAt( + state.FinalPosition, m_Use2DDistance, m_ChannelMask, out impulsePos, out impulseRot)) + { + state.PositionCorrection += impulsePos * -m_Gain; + impulseRot = Quaternion.SlerpUnclamped(Quaternion.identity, impulseRot, -m_Gain); + state.OrientationCorrection = state.OrientationCorrection * impulseRot; + } + } + } + } +} diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Runtime/Impulse/CinemachineImpulseListener.cs.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Runtime/Impulse/CinemachineImpulseListener.cs.meta" new file mode 100644 index 00000000..c8d28fa7 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Runtime/Impulse/CinemachineImpulseListener.cs.meta" @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 00b2d199b96b516448144ab30fb26aed +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {fileID: 2800000, guid: 5f2a108eb023faf43a809979fd3d38f2, type: 3} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Runtime/Impulse/CinemachineImpulseManager.cs" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Runtime/Impulse/CinemachineImpulseManager.cs" new file mode 100644 index 00000000..2d95a6a0 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Runtime/Impulse/CinemachineImpulseManager.cs" @@ -0,0 +1,401 @@ +using System; +using System.Collections.Generic; +using Cinemachine.Utility; +using UnityEngine; + +namespace Cinemachine +{ + /// + /// Property applied to CinemachineImpulseManager.EnvelopeDefinition. + /// Used for custom drawing in the inspector. + /// + public sealed class CinemachineImpulseEnvelopePropertyAttribute : PropertyAttribute {} + + /// + /// Property applied to CinemachineImpulseManager Channels. + /// Used for custom drawing in the inspector. + /// + public sealed class CinemachineImpulseChannelPropertyAttribute : PropertyAttribute {} + + /// + /// This is a singleton object that manages all Impulse Events generated by the Cinemachine + /// Impulse module. This singleton owns and manages all ImpulseEvent objectss. + /// + [DocumentationSorting(DocumentationSortingAttribute.Level.API)] + public class CinemachineImpulseManager + { + private CinemachineImpulseManager() {} + private static CinemachineImpulseManager sInstance = null; + + /// Get the singleton instance + public static CinemachineImpulseManager Instance + { + get + { + if (sInstance == null) + sInstance = new CinemachineImpulseManager(); + return sInstance; + } + } + + const float Epsilon = UnityVectorExtensions.Epsilon; + + /// This defines the time-envelope of the signal. + /// Thie raw signal will be scaled to fit inside the envelope. + [Serializable] + public struct EnvelopeDefinition + { + /// Normalized curve defining the shape of the start of the envelope. + [Tooltip("Normalized curve defining the shape of the start of the envelope. If blank a default curve will be used")] + public AnimationCurve m_AttackShape; + + /// Normalized curve defining the shape of the end of the envelope. + [Tooltip("Normalized curve defining the shape of the end of the envelope. If blank a default curve will be used")] + public AnimationCurve m_DecayShape; + + /// Duration in seconds of the attack. Attack curve will be scaled to fit. Must be >= 0 + [Tooltip("Duration in seconds of the attack. Attack curve will be scaled to fit. Must be >= 0.")] + public float m_AttackTime; // Must be >= 0 + + /// Duration in seconds of the central fully-scaled part of the envelope. Must be >= 0. + [Tooltip("Duration in seconds of the central fully-scaled part of the envelope. Must be >= 0.")] + public float m_SustainTime; // Must be >= 0 + + /// Duration in seconds of the decay. Decay curve will be scaled to fit. Must be >= 0. + [Tooltip("Duration in seconds of the decay. Decay curve will be scaled to fit. Must be >= 0.")] + public float m_DecayTime; // Must be >= 0 + + /// If checked, signal amplitude scaling will also be applied to the time envelope of the signal. Bigger signals will last longer + [Tooltip("If checked, signal amplitude scaling will also be applied to the time envelope of the signal. Stronger signals will last longer.")] + public bool m_ScaleWithImpact; + + /// If true, then duration is infinite. + [Tooltip("If true, then duration is infinite.")] + public bool m_HoldForever; + + /// Get an envelope with default values. + public static EnvelopeDefinition Default() + { + return new EnvelopeDefinition { m_DecayTime = 0.7f, m_SustainTime = 0.2f, m_ScaleWithImpact = true }; + } + + /// Duration of the envelope, in seconds. If negative, then duration is infinite. + public float Duration + { + get + { + if (m_HoldForever) + return -1; + return m_AttackTime + m_SustainTime + m_DecayTime; + } + } + + /// + /// Get the value of the tenvelope at a given time relative to the envelope start. + /// + /// Time in seconds fromt he envelope start + /// Envelope amplitude. This will range from 0...1 + public float GetValueAt(float offset) + { + if (offset >= 0) + { + if (offset < m_AttackTime && m_AttackTime > Epsilon) + { + if (m_AttackShape == null || m_AttackShape.length < 2) + return Damper.Damp(1, m_AttackTime, offset); + return m_AttackShape.Evaluate(offset / m_AttackTime); + } + offset -= m_AttackTime; + if (m_HoldForever || offset < m_SustainTime) + return 1; + offset -= m_SustainTime; + if (offset < m_DecayTime && m_DecayTime > Epsilon) + { + if (m_DecayShape == null || m_DecayShape.length < 2) + return 1 - Damper.Damp(1, m_DecayTime, offset); + return m_DecayShape.Evaluate(offset / m_DecayTime); + } + } + return 0; + } + + /// + /// Change the envelope so that it stops at a specific offset from its start time. + /// Use this to extend or cut short an existing envelope, while respecting the + /// attack and decay as much as possible. + /// + /// When to stop the envelope + /// If true, enevlope will not decay, but cut off instantly + public void ChangeStopTime(float offset, bool forceNoDecay) + { + if (offset < 0) + offset = 0; + if (offset < m_AttackTime) + m_AttackTime = 0; // How to prevent pop? GML + m_SustainTime = offset - m_AttackTime; + if (forceNoDecay) + m_DecayTime = 0; + } + + /// + /// Set the envelop times to 0 and the shapes to default. + /// + public void Clear() + { + m_AttackShape = m_DecayShape = null; + m_AttackTime = m_SustainTime = m_DecayTime = 0; + } + + /// + /// Call from OnValidate to ensure that envelope values are sane + /// + public void Validate() + { + m_AttackTime = Mathf.Max(0, m_AttackTime); + m_DecayTime = Mathf.Max(0, m_DecayTime); + m_SustainTime = Mathf.Max(0, m_SustainTime); + } + } + + /// Describes an event that generates an impulse signal on one or more channels. + /// The event has a location in space, a start time, a duration, and a signal. The signal + /// will dissipate as the distance from the event location increases. + public class ImpulseEvent + { + /// Start time of the event. + [Tooltip("Start time of the event.")] + public float m_StartTime; + + /// Time-envelope of the signal. + [Tooltip("Time-envelope of the signal.")] + public EnvelopeDefinition m_Envelope; + + /// Raw signal source. The ouput of this will be scaled to fit in the envelope. + [Tooltip("Raw signal source. The ouput of this will be scaled to fit in the envelope.")] + public ISignalSource6D m_SignalSource; + + /// Worldspace origin of the signal. + [Tooltip("Worldspace origin of the signal.")] + public Vector3 m_Position; + + /// Radius around the signal origin that has full signal value. Distance dissipation begins after this distance. + [Tooltip("Radius around the signal origin that has full signal value. Distance dissipation begins after this distance.")] + public float m_Radius; + + /// How the signal behaves as the listener moves away from the origin. + public enum DirectionMode + { + /// Signal direction remains constant everywhere. + Fixed, + /// Signal is rotated in the direction of the source. + RotateTowardSource + } + /// How the signal direction behaves as the listener moves away from the source. + [Tooltip("How the signal direction behaves as the listener moves away from the source.")] + public DirectionMode m_DirectionMode = DirectionMode.Fixed; + + /// Channels on which this event will broadcast its signal. + [Tooltip("Channels on which this event will broadcast its signal.")] + public int m_Channel; + + /// How the signal dissipates with distance. + public enum DissipationMode + { + /// Simple linear interpolation to zero over the dissipation distance. + LinearDecay, + /// Ease-in-ease-out dissipation over the dissipation distance. + SoftDecay, + /// Half-life decay, hard out from full and ease into 0 over the dissipation distance. + ExponentialDecay + } + + /// How the signal dissipates with distance. + [Tooltip("How the signal dissipates with distance.")] + public DissipationMode m_DissipationMode; + + /// Distance over which the dissipation occurs. Must be >= 0. + [Tooltip("Distance over which the dissipation occurs. Must be >= 0.")] + public float m_DissipationDistance; + + /// Returns true if the event is no longer generating a signal because its time has expired + public bool Expired + { + get + { + var d = m_Envelope.Duration; + return d > 0 && m_StartTime + d <= Time.time; + } + } + + /// Cancel the event at the supplied time + /// The time at which to cancel the event + /// If true, event will be cut immediately at the time, + /// otherwise its envelope's decay curve will begin at the cancel time + public void Cancel(float time, bool forceNoDecay) + { + m_Envelope.ChangeStopTime(time - m_StartTime, forceNoDecay); + } + + /// Calculate the the decay applicable at a given distance from the impact point + /// Scale factor 0...1 + public float DistanceDecay(float distance) + { + float radius = Mathf.Max(m_Radius, 0); + if (distance < radius) + return 1; + distance -= radius; + if (distance >= m_DissipationDistance) + return 0; + switch (m_DissipationMode) + { + default: + case DissipationMode.LinearDecay: + return Mathf.Lerp(1, 0, distance / m_DissipationDistance); + case DissipationMode.SoftDecay: + return 0.5f * (1 + Mathf.Cos(Mathf.PI * (distance / m_DissipationDistance))); + case DissipationMode.ExponentialDecay: + return 1 - Damper.Damp(1, m_DissipationDistance, distance); + } + } + + /// Get the signal that a listener at a given position would perceive + /// The listener's position in world space + /// True if distance calculation should ignore Z + /// The position impulse signal + /// The rotation impulse signal + /// true if non-trivial signal is returned + public bool GetDecayedSignal(Vector3 listenerPosition, bool use2D, out Vector3 pos, out Quaternion rot) + { + if (m_SignalSource != null) + { + float time = Time.time - m_StartTime; + float distance = use2D ? Vector2.Distance(listenerPosition, m_Position) + : Vector3.Distance(listenerPosition, m_Position); + float scale = m_Envelope.GetValueAt(time) * DistanceDecay(distance); + m_SignalSource.GetSignal(time, out pos, out rot); + pos *= scale; + rot = Quaternion.SlerpUnclamped(Quaternion.identity, rot, scale); + if (m_DirectionMode == DirectionMode.RotateTowardSource && distance > Epsilon) + { + Quaternion q = Quaternion.FromToRotation(Vector3.up, listenerPosition - m_Position); + if (m_Radius > Epsilon) + { + float t = Mathf.Clamp01(distance / m_Radius); + q = Quaternion.Slerp( + q, Quaternion.identity, Mathf.Cos(Mathf.PI * t / 2)); + } + pos = q * pos; + rot = Quaternion.Inverse(q) * rot * q; + } + return true; + } + pos = Vector3.zero; + rot = Quaternion.identity; + return false; + } + + /// Reset the event to a default state + public void Clear() + { + m_Envelope.Clear(); + m_StartTime = 0; + m_SignalSource = null; + m_Position = Vector3.zero; + m_Channel = 0; + m_Radius = 0; + m_DissipationDistance = 100; + m_DissipationMode = DissipationMode.ExponentialDecay; + } + + /// Don't create them yourself. Use CinemachineImpulseManager.NewImpulseEvent(). + internal ImpulseEvent() {} + } + + List m_ExpiredEvents; + List m_ActiveEvents; + + /// Get the signal perceived by a listener at a geven location + /// Where the listener is, in world coords + /// True if distance calculation should ignore Z + /// Only Impulse signals on channels in this mask will be considered + /// The combined position impulse signal resulting from all signals active on the specified channels + /// The combined rotation impulse signal resulting from all signals active on the specified channels + /// true if non-trivial signal is returned + public bool GetImpulseAt( + Vector3 listenerLocation, bool distance2D, int channelMask, + out Vector3 pos, out Quaternion rot) + { + bool nontrivialResult = false; + pos = Vector3.zero; + rot = Quaternion.identity; + if (m_ActiveEvents != null) + { + for (int i = m_ActiveEvents.Count - 1; i >= 0; --i) + { + ImpulseEvent e = m_ActiveEvents[i]; + // Prune invalid or expired events + if (e == null || e.Expired) + { + m_ActiveEvents.RemoveAt(i); + if (e != null) + { + // Recycle it + if (m_ExpiredEvents == null) + m_ExpiredEvents = new List(); + e.Clear(); + m_ExpiredEvents.Add(e); + } + } + else if ((e.m_Channel & channelMask) != 0) + { + Vector3 pos0 = Vector3.zero; + Quaternion rot0 = Quaternion.identity; + if (e.GetDecayedSignal(listenerLocation, distance2D, out pos0, out rot0)) + { + nontrivialResult = true; + pos += pos0; + rot *= rot0; + } + } + } + } + return nontrivialResult; + } + + /// Get a new ImpulseEvent + public ImpulseEvent NewImpulseEvent() + { + ImpulseEvent e; + if (m_ExpiredEvents == null || m_ExpiredEvents.Count == 0) + return new ImpulseEvent(); + e = m_ExpiredEvents[m_ExpiredEvents.Count-1]; + m_ExpiredEvents.RemoveAt(m_ExpiredEvents.Count-1); + return e; + } + + /// Activate an impulse event, so that it may begin broadcasting its signal + /// Events will be automatically removed after they expire. + /// You can tweak the ImpulseEvent fields dynamically if you keep a pointer to it. + public void AddImpulseEvent(ImpulseEvent e) + { + if (m_ActiveEvents == null) + m_ActiveEvents = new List(); + if (e != null) + { + e.m_StartTime = Time.time; + m_ActiveEvents.Add(e); + } + } + + /// Immediately terminate all active impulse signals + public void Clear() + { + if (m_ActiveEvents != null) + { + for (int i = 0; i < m_ActiveEvents.Count; ++i) + m_ActiveEvents[i].Clear(); + m_ActiveEvents.Clear(); + } + } + } +} diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Runtime/Impulse/CinemachineImpulseManager.cs.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Runtime/Impulse/CinemachineImpulseManager.cs.meta" new file mode 100644 index 00000000..023074c4 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Runtime/Impulse/CinemachineImpulseManager.cs.meta" @@ -0,0 +1,13 @@ +fileFormatVersion: 2 +guid: eb25eb9c85a88c94aa253071e03aca6e +timeCreated: 1518026885 +licenseType: Pro +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Runtime/Impulse/CinemachineImpulseSource.cs" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Runtime/Impulse/CinemachineImpulseSource.cs" new file mode 100644 index 00000000..eaa11329 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Runtime/Impulse/CinemachineImpulseSource.cs" @@ -0,0 +1,56 @@ +using UnityEngine; + +namespace Cinemachine +{ + /// + /// An event-driven class that broadcasts an impulse signal to listeners. + /// + /// This is the base class for custom impulse sources. It contains an impulse + /// definition, where the characteristics of the impulse signal are defined. + /// + /// API methods are fined for actually broadcasting the impulse. Call these + /// methods from your custom code, or hook them up to game events in the Editor. + /// + /// + [DocumentationSorting(DocumentationSortingAttribute.Level.UserRef)] + [SaveDuringPlay] + public class CinemachineImpulseSource : MonoBehaviour + { + /// + /// This defines the complete impulse signal that will be broadcast. + /// + [CinemachineImpulseDefinitionProperty] + public CinemachineImpulseDefinition m_ImpulseDefinition = new CinemachineImpulseDefinition(); + + private void OnValidate() + { + m_ImpulseDefinition.OnValidate(); + } + + /// Broadcast the Impulse Signal onto the appropriate channels, + /// using a custom position and impact velocity + /// The world-space position from which the impulse will emanate + /// The impact magnitude and direction + public void GenerateImpulseAt(Vector3 position, Vector3 velocity) + { + if (m_ImpulseDefinition != null) + m_ImpulseDefinition.CreateEvent(position, velocity); + } + + /// Broadcast the Impulse Signal onto the appropriate channels, using + /// a custom impact velocity, and this transfom's position. + /// The impact magnitude and direction + public void GenerateImpulse(Vector3 velocity) + { + GenerateImpulseAt(transform.position, velocity); + } + + /// Broadcast the Impulse Signal onto the appropriate channels, + /// with default velocity = (0, -1, 0), and a default position which is + /// this transform's location. + public void GenerateImpulse() + { + GenerateImpulse(Vector3.down); + } + } +} diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Runtime/Impulse/CinemachineImpulseSource.cs.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Runtime/Impulse/CinemachineImpulseSource.cs.meta" new file mode 100644 index 00000000..345eaf29 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Runtime/Impulse/CinemachineImpulseSource.cs.meta" @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 180ecf9b41d478f468eb3e9083753217 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Runtime/Timeline.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Runtime/Timeline.meta" new file mode 100644 index 00000000..08484cf9 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Runtime/Timeline.meta" @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 0282251d79d6e964089ace2dc6e6e496 +folderAsset: yes +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Runtime/Timeline/CinemachineMixer.cs" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Runtime/Timeline/CinemachineMixer.cs" new file mode 100644 index 00000000..2ee166fa --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Runtime/Timeline/CinemachineMixer.cs" @@ -0,0 +1,111 @@ +using UnityEngine; +using UnityEngine.Playables; + +namespace Cinemachine.Timeline +{ + internal sealed class CinemachineMixer : PlayableBehaviour + { + // The brain that this track controls + private CinemachineBrain mBrain; + private int mBrainOverrideId = -1; + private bool mPlaying; + + public override void OnPlayableDestroy(Playable playable) + { + if (mBrain != null) + mBrain.ReleaseCameraOverride(mBrainOverrideId); // clean up + mBrainOverrideId = -1; + } + + public override void PrepareFrame(Playable playable, FrameData info) + { + mPlaying = info.evaluationType == FrameData.EvaluationType.Playback; + } + + struct ClipInfo + { + public ICinemachineCamera vcam; + public float weight; + public double localTime; + public double duration; + } + + public override void ProcessFrame(Playable playable, FrameData info, object playerData) + { + base.ProcessFrame(playable, info, playerData); + + // Get the brain that this track controls. + // Older versions of timeline sent the gameObject by mistake. + GameObject go = playerData as GameObject; + if (go == null) + mBrain = (CinemachineBrain)playerData; + else + mBrain = go.GetComponent(); + if (mBrain == null) + return; + + // Find which clips are active. We can process a maximum of 2. + // In the case that the weights don't add up to 1, the outgoing weight + // will be calculated as the inverse of the incoming weight. + int activeInputs = 0; + ClipInfo clipA = new ClipInfo(); + ClipInfo clipB = new ClipInfo(); + for (int i = 0; i < playable.GetInputCount(); ++i) + { + float weight = playable.GetInputWeight(i); + var clip = (ScriptPlayable)playable.GetInput(i); + CinemachineShotPlayable shot = clip.GetBehaviour(); + if (shot != null && shot.IsValid + && playable.GetPlayState() == PlayState.Playing + && weight > 0) + { + clipA = clipB; + clipB.vcam = shot.VirtualCamera; + clipB.weight = weight; + clipB.localTime = clip.GetTime(); + clipB.duration = clip.GetDuration(); + if (++activeInputs == 2) + break; + } + } + + // Figure out which clip is incoming + bool incomingIsB = clipB.weight >= 1 || clipB.localTime < clipB.duration / 2; + if (activeInputs == 2) + { + if (clipB.localTime < clipA.localTime) + incomingIsB = true; + else if (clipB.localTime > clipA.localTime) + incomingIsB = false; + else + incomingIsB = clipB.duration >= clipA.duration; + } + + // Override the Cinemachine brain with our results + ICinemachineCamera camA = incomingIsB ? clipA.vcam : clipB.vcam; + ICinemachineCamera camB = incomingIsB ? clipB.vcam : clipA.vcam; + float camWeightB = incomingIsB ? clipB.weight : 1 - clipB.weight; + mBrainOverrideId = mBrain.SetCameraOverride( + mBrainOverrideId, camA, camB, camWeightB, GetDeltaTime(info.deltaTime)); + } + + float mLastOverrideFrame; + float GetDeltaTime(float deltaTime) + { + if (!mPlaying) + { + if (mBrainOverrideId < 0) + mLastOverrideFrame = -1; + float time = Time.realtimeSinceStartup; + deltaTime = Time.unscaledDeltaTime; + if (!Application.isPlaying + && (mLastOverrideFrame < 0 || time - mLastOverrideFrame > Time.maximumDeltaTime)) + { + deltaTime = -1; + } + mLastOverrideFrame = time; + } + return deltaTime; + } + } +} diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Runtime/Timeline/CinemachineMixer.cs.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Runtime/Timeline/CinemachineMixer.cs.meta" new file mode 100644 index 00000000..48b3e7ec --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Runtime/Timeline/CinemachineMixer.cs.meta" @@ -0,0 +1,12 @@ +fileFormatVersion: 2 +guid: 961772e8b1d75dd4a915fb8a236d5a8a +timeCreated: 1489083733 +licenseType: Pro +MonoImporter: + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Runtime/Timeline/CinemachineShot.cs" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Runtime/Timeline/CinemachineShot.cs" new file mode 100644 index 00000000..48a02d50 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Runtime/Timeline/CinemachineShot.cs" @@ -0,0 +1,42 @@ +using UnityEngine; +using UnityEngine.Playables; +using UnityEngine.Timeline; + +namespace Cinemachine.Timeline +{ + internal sealed class CinemachineShotPlayable : PlayableBehaviour + { + public CinemachineVirtualCameraBase VirtualCamera; + public bool IsValid { get { return VirtualCamera != null; } } + } + + /// + /// Internal use only. Not part of the public API. + /// + public sealed class CinemachineShot : PlayableAsset, IPropertyPreview + { + public ExposedReference VirtualCamera; + + public override Playable CreatePlayable(PlayableGraph graph, GameObject owner) + { + var playable = ScriptPlayable.Create(graph); + playable.GetBehaviour().VirtualCamera = VirtualCamera.Resolve(graph.GetResolver()); + return playable; + } + + // IPropertyPreview implementation + public void GatherProperties(PlayableDirector director, IPropertyCollector driver) + { + driver.AddFromName("m_LocalPosition.x"); + driver.AddFromName("m_LocalPosition.y"); + driver.AddFromName("m_LocalPosition.z"); + driver.AddFromName("m_LocalRotation.x"); + driver.AddFromName("m_LocalRotation.y"); + driver.AddFromName("m_LocalRotation.z"); + + driver.AddFromName("field of view"); + driver.AddFromName("near clip plane"); + driver.AddFromName("far clip plane"); + } + } +} diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Runtime/Timeline/CinemachineShot.cs.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Runtime/Timeline/CinemachineShot.cs.meta" new file mode 100644 index 00000000..36710704 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Runtime/Timeline/CinemachineShot.cs.meta" @@ -0,0 +1,12 @@ +fileFormatVersion: 2 +guid: 90fb794a295e73545af71bcdb7375791 +timeCreated: 1489083733 +licenseType: Pro +MonoImporter: + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Runtime/Timeline/CinemachineTrack.cs" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Runtime/Timeline/CinemachineTrack.cs" new file mode 100644 index 00000000..6ed92439 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Runtime/Timeline/CinemachineTrack.cs" @@ -0,0 +1,38 @@ +using System; +using UnityEngine; +using UnityEngine.Playables; +using UnityEngine.Timeline; + +namespace Cinemachine.Timeline +{ + [Serializable] + [TrackClipType(typeof(CinemachineShot))] +#if !UNITY_2018_2_OR_NEWER + [TrackMediaType(TimelineAsset.MediaType.Script)] +#endif +#if UNITY_2018_3_OR_NEWER + [TrackBindingType(typeof(CinemachineBrain), TrackBindingFlags.None)] +#else + [TrackBindingType(typeof(CinemachineBrain))] +#endif + [TrackColor(0.53f, 0.0f, 0.08f)] + public class CinemachineTrack : TrackAsset + { + public override Playable CreateTrackMixer( + PlayableGraph graph, GameObject go, int inputCount) + { + // Hack to set the display name of the clip to match the vcam + foreach (var c in GetClips()) + { + CinemachineShot shot = (CinemachineShot)c.asset; + CinemachineVirtualCameraBase vcam = shot.VirtualCamera.Resolve(graph.GetResolver()); + if (vcam != null) + c.displayName = vcam.Name; + } + + var mixer = ScriptPlayable.Create(graph); + mixer.SetInputCount(inputCount); + return mixer; + } + } +} diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Runtime/Timeline/CinemachineTrack.cs.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Runtime/Timeline/CinemachineTrack.cs.meta" new file mode 100644 index 00000000..2aa0c5ff --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Runtime/Timeline/CinemachineTrack.cs.meta" @@ -0,0 +1,12 @@ +fileFormatVersion: 2 +guid: 05acc715f855ced458d76ee6f8ac6c61 +timeCreated: 1489083732 +licenseType: Pro +MonoImporter: + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Runtime/com.unity.cinemachine.asmdef" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Runtime/com.unity.cinemachine.asmdef" new file mode 100644 index 00000000..c25e401c --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Runtime/com.unity.cinemachine.asmdef" @@ -0,0 +1,7 @@ +{ + "name": "Cinemachine", + "references": [], + "optionalUnityReferences": [], + "includePlatforms": [], + "excludePlatforms": [] +} \ No newline at end of file diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Runtime/com.unity.cinemachine.asmdef.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Runtime/com.unity.cinemachine.asmdef.meta" new file mode 100644 index 00000000..65bcc822 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Runtime/com.unity.cinemachine.asmdef.meta" @@ -0,0 +1,7 @@ +fileFormatVersion: 2 +guid: 4307f53044263cf4b835bd812fc161a4 +AssemblyDefinitionImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Tests.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Tests.meta" new file mode 100644 index 00000000..d193a403 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Tests.meta" @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 5315d0eff1f534d4ea38a117af7d2faa +folderAsset: yes +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Tests/Editor.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Tests/Editor.meta" new file mode 100644 index 00000000..411e2f8a --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Tests/Editor.meta" @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 6e777018b430d974e998e37835f8da69 +folderAsset: yes +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Tests/Editor/DampingTests.cs" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Tests/Editor/DampingTests.cs" new file mode 100644 index 00000000..796afd57 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Tests/Editor/DampingTests.cs" @@ -0,0 +1,39 @@ +using UnityEngine; +using UnityEngine.TestTools; +using NUnit.Framework; +using System.Collections; + +[TestFixture] +public class DampingTests +{ + [Test] + public void DampFloat() + { + const float dampTime = 10f; + const float initial = 100f; + float[] fixedFactor = new float[3] { 0.79f, 0f, 1.07f }; + for (int f = 0; f < fixedFactor.Length; ++f) + { + float t = 0; + float r = Cinemachine.Utility.Damper.Damp(initial, dampTime, t); + Assert.AreEqual(0, r); + Assert.Less(r, initial); + const int iterations = 10; + for (int i = 0; i < iterations; ++i) + { + t += dampTime / iterations; + float fdt = fixedFactor[f] * t; + string msg = "i = " + i + ", t = " + t + ", fdt = " + fdt; + if (i != iterations-1) + Assert.Less(t, dampTime, msg); + else + t = dampTime; + float r2 = Cinemachine.Utility.Damper.Damp(initial, dampTime, t); + Assert.Less(r, r2, msg); + r = r2; + } + //Assert.AreEqual(initial * (1 - MathHelpers.kNegligibleResidual), r, "f = " + f); + } + } +} + diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Tests/Editor/DampingTests.cs.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Tests/Editor/DampingTests.cs.meta" new file mode 100644 index 00000000..d498ca7f --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Tests/Editor/DampingTests.cs.meta" @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 5f3c3863a56212143af61f92a3644bb0 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Tests/Editor/com.unity.cinemachine.EditorTests.asmdef" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Tests/Editor/com.unity.cinemachine.EditorTests.asmdef" new file mode 100644 index 00000000..c7bd76ca --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Tests/Editor/com.unity.cinemachine.EditorTests.asmdef" @@ -0,0 +1,19 @@ +{ + "name": "com.unity.cinemachine.EditorTests", + "references": [ + "Cinemachine", + "com.unity.cinemachine.editor" + ], + "optionalUnityReferences": [ + "TestAssemblies" + ], + "includePlatforms": [ + "Editor" + ], + "excludePlatforms": [], + "allowUnsafeCode": false, + "overrideReferences": false, + "precompiledReferences": [], + "autoReferenced": true, + "defineConstraints": [] +} \ No newline at end of file diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Tests/Editor/com.unity.cinemachine.EditorTests.asmdef.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Tests/Editor/com.unity.cinemachine.EditorTests.asmdef.meta" new file mode 100644 index 00000000..d2556a62 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Tests/Editor/com.unity.cinemachine.EditorTests.asmdef.meta" @@ -0,0 +1,7 @@ +fileFormatVersion: 2 +guid: d5ada0dcd11a06049936072bb3b3ed73 +AssemblyDefinitionImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Tests/Runtime.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Tests/Runtime.meta" new file mode 100644 index 00000000..04773a2d --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Tests/Runtime.meta" @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 8bc4fc3f7edf4174fa4f4877f6aa4e2f +folderAsset: yes +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Tests/Runtime/RuntimeExampleTest.cs" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Tests/Runtime/RuntimeExampleTest.cs" new file mode 100644 index 00000000..eafb0093 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Tests/Runtime/RuntimeExampleTest.cs" @@ -0,0 +1,48 @@ +using UnityEngine; +using UnityEngine.TestTools; +using NUnit.Framework; +using System.Collections; + +public class RuntimeDampingTest +{ + [Test] + public void DampFloat() + { + const float dampTime = 10f; + const float initial = 100f; + float[] fixedFactor = new float[3] { 0.79f, 0f, 1.07f }; + for (int f = 0; f < fixedFactor.Length; ++f) + { + float t = 0; + float r = Cinemachine.Utility.Damper.Damp(initial, dampTime, t); + Assert.AreEqual(0, r); + Assert.Less(r, initial); + const int iterations = 10; + for (int i = 0; i < iterations; ++i) + { + t += dampTime / iterations; + float fdt = fixedFactor[f] * t; + string msg = "i = " + i + ", t = " + t + ", fdt = " + fdt; + if (i != iterations-1) + Assert.Less(t, dampTime, msg); + else + t = dampTime; + float r2 = Cinemachine.Utility.Damper.Damp(initial, dampTime, t); + Assert.Less(r, r2, msg); + r = r2; + } + //Assert.AreEqual(initial * (1 - MathHelpers.kNegligibleResidual), r, "f = " + f); + } + } + +/* + // A UnityTest behaves like a coroutine in PlayMode + // and allows you to yield null to skip a frame in EditMode + [UnityTest] + public IEnumerator PlayModeSampleTestWithEnumeratorPasses() { + // Use the Assert class to test conditions. + // yield to skip a frame + yield return null; + } +*/ +} diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Tests/Runtime/RuntimeExampleTest.cs.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Tests/Runtime/RuntimeExampleTest.cs.meta" new file mode 100644 index 00000000..afa02e11 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Tests/Runtime/RuntimeExampleTest.cs.meta" @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 8db8d3ba38ef23344baee4d941ad534f +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Tests/Runtime/com.unity.cinemachine.Tests.asmdef" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Tests/Runtime/com.unity.cinemachine.Tests.asmdef" new file mode 100644 index 00000000..61576703 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Tests/Runtime/com.unity.cinemachine.Tests.asmdef" @@ -0,0 +1,16 @@ +{ + "name": "com.unity.cinemachine.Tests", + "references": [ + "Cinemachine" + ], + "optionalUnityReferences": [ + "TestAssemblies" + ], + "includePlatforms": [], + "excludePlatforms": [], + "allowUnsafeCode": false, + "overrideReferences": false, + "precompiledReferences": [], + "autoReferenced": true, + "defineConstraints": [] +} \ No newline at end of file diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Tests/Runtime/com.unity.cinemachine.Tests.asmdef.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Tests/Runtime/com.unity.cinemachine.Tests.asmdef.meta" new file mode 100644 index 00000000..e51b5853 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/Tests/Runtime/com.unity.cinemachine.Tests.asmdef.meta" @@ -0,0 +1,7 @@ +fileFormatVersion: 2 +guid: 8ba1cf4afa640804e94ba034367104ab +AssemblyDefinitionImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/license.txt" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/license.txt" new file mode 100644 index 00000000..4ca05bb5 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/license.txt" @@ -0,0 +1,30 @@ +Unity Companion Cinemachine Code License 1.0 (License) +Copyright 2017 Unity Technologies ApS (Unity) + +Unity hereby grants to you a worldwide, non-exclusive, no-charge, and royalty-free copyright license to reproduce, prepare derivative works of, publicly display, publicly perform, sublicense, and distribute the software that is made available with this License (Software), subject to the following terms and conditions: + +1. Unity Companion Use Only. Exercise of the license granted herein is limited to exercise for the creation, use, and/or distribution of applications, software, or other content pursuant to a valid Unity development engine software license (Engine License). That means while use of the Software is not limited to use in the software licensed under the Engine License, the Software may not be used for any purpose other than the creation, use, and/or distribution of Engine License-dependent applications, software, or other content. No other exercise of the license granted herein is permitted. + +2. No Modification of Engine License. Neither this License nor any exercise of the license granted herein modifies the Engine License in any way. + +3. Ownership & Grant Back to You. + +3.1 You own your content. In this License, derivative works means derivatives of the Software itself--works derived only from the Software by you under this License (for example, modifying the code of the Software itself to improve its efficacy); derivative works of the Software do not include, for example, games, apps, or content that you create using the Software. You keep all right, title, and interest to your own content. + +3.2 Unity owns its content. While you keep all right, title, and interest to your own content per the above, as between Unity and you, Unity will own all right, title, and interest to all intellectual property rights (including patent, trademark, and copyright) in the Software and derivative works of the Software, and you hereby assign and agree to assign all such rights in those derivative works to Unity. + +3.3 You have a license to those derivative works. Subject to this License, Unity grants to you the same worldwide, non-exclusive, no-charge, and royalty-free copyright license to derivative works of the Software you create as is granted to you for the Software under this License. + +4. Trademarks. You are not granted any right or license under this License to use any trademarks, service marks, trade names, products names, or branding of Unity or its affiliates (Trademarks). Descriptive uses of Trademarks are permitted; see, for example, Unitys Branding Usage Guidelines at https://unity3d.com/public-relations/brand. + +5. Notices & Third-Party Rights. This License, including the copyright notice above, must be provided in all substantial portions of the Software and derivative works thereof (or, if that is impracticable, in any other location where such notices are customarily placed). Further, if the Software is accompanied by a Unity third-party notices or similar file, you acknowledge and agree that software identified in that file is governed by those separate license terms. + +6. DISCLAIMER, LIMITATION OF LIABILITY. THE SOFTWARE AND ANY DERIVATIVE WORKS THEREOF IS PROVIDED ON AN "AS IS" BASIS, AND IS PROVIDED WITHOUT WARRANTY OF ANY KIND, WHETHER EXPRESS OR IMPLIED, INCLUDING ANY WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, AND/OR NONINFRINGEMENT. IN NO EVENT SHALL ANY COPYRIGHT HOLDER OR AUTHOR BE LIABLE FOR ANY CLAIM, DAMAGES (WHETHER DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL, INCLUDING PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES, LOSS OF USE, DATA, OR PROFITS, AND BUSINESS INTERRUPTION), OR OTHER LIABILITY WHATSOEVER, WHETHER IN AN ACTION OF CONTRACT, TORT, OR OTHERWISE, ARISING FROM OR OUT OF, OR IN CONNECTION WITH, THE SOFTWARE OR ANY DERIVATIVE WORKS THEREOF OR THE USE OF OR OTHER DEALINGS IN SAME, EVEN WHERE ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + +7. USE IS ACCEPTANCE and License Versions. Your receipt and use of the Software constitutes your acceptance of this License and its terms and conditions. Software released by Unity under this License may be modified or updated and the License with it; upon any such modification or update, you will comply with the terms of the updated License for any use of any of the Software under the updated License. + +8. Use in Compliance with Law and Termination. Your exercise of the license granted herein will at all times be in compliance with applicable law and will not infringe any proprietary rights (including intellectual property rights); this License will terminate immediately on any breach by you of this License. + +9. Severability. If any provision of this License is held to be unenforceable or invalid, that provision will be enforced to the maximum extent possible and the other provisions will remain in full force and effect. + +10. Governing Law and Venue. This License is governed by and construed in accordance with the laws of Denmark, except for its conflict of laws rules; the United Nations Convention on Contracts for the International Sale of Goods will not apply. If you reside (or your principal place of business is) within the United States, you and Unity agree to submit to the personal and exclusive jurisdiction of and venue in the state and federal courts located in San Francisco County, California concerning any dispute arising out of this License (Dispute). If you reside (or your principal place of business is) outside the United States, you and Unity agree to submit to the personal and exclusive jurisdiction of and venue in the courts located in Copenhagen, Denmark concerning any Dispute. diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/license.txt.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/license.txt.meta" new file mode 100644 index 00000000..cda7b51b --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/license.txt.meta" @@ -0,0 +1,7 @@ +fileFormatVersion: 2 +guid: a8fb8b30e4d6f6640859c9bcaef4bd88 +TextScriptImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/package.json" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/package.json" new file mode 100644 index 00000000..76a6240a --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/package.json" @@ -0,0 +1,16 @@ +{ + "name": "com.unity.cinemachine", + "displayName": "Cinemachine", + "version": "2.2.9", + "unity": "2018.1", + "description": "Smart camera tools for passionate creators. \n\nIMPORTANT NOTE: If you are upgrading from the Asset Store version of Cinemachine, delete the Cinemachine asset from your project BEFORE installing this version from the Package Manager.", + "keywords": [ "camera", "follow", "rig", "fps", "cinematography", "aim", "orbit", "cutscene", "cinematic", "collision", "freelook", "cinemachine", "compose", "composition", "dolly", "track", "clearshot", "noise", "framing", "handheld", "lens", "impulse" ], + "category": "cinematography", + "dependencies": { + }, + "repository": { + "type": "git", + "url": "https://github.com/Unity-Technologies/upm-package-cinemachine", + "revision": "08558cfb3884bd235c19e8af060cf66fac2225e3" + } +} diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/package.json.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/package.json.meta" new file mode 100644 index 00000000..2a5d757e --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.cinemachine@2.2.9/package.json.meta" @@ -0,0 +1,7 @@ +fileFormatVersion: 2 +guid: 7d93e7b7399fbe64790358e67fc94b18 +TextScriptImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.collab-proxy@1.2.15/CHANGELOG.md" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.collab-proxy@1.2.15/CHANGELOG.md" new file mode 100644 index 00000000..7dfff7ca --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.collab-proxy@1.2.15/CHANGELOG.md" @@ -0,0 +1,28 @@ +# Changelog +All notable changes to this package will be documented in this file. + +The format is based on [Keep a Changelog](http://keepachangelog.com/en/1.0.0/) +and this project adheres to [Semantic Versioning](http://semver.org/spec/v2.0.0.html). + +## [1.2.15] - 2018-11-16 +Added support for non-experimental UIElements. + +## [1.2.11] - 2018-09-04 +Made some performance improvements to reduce impact on ReloadAssemblies. + +## [1.2.9] - 2018-08-13 +Test issues for the Collab History Window are now fixed. + +## [1.2.7] - 2018-08-07 +Toolbar drop-down will no longer show up when package is uninstalled. + +## [1.2.6] - 2018-06-15 +Fixed an issue where Collab's History window wouldn't load properly. + +## [1.2.5] - 2018-05-21 +This is the first release of *Unity Package CollabProxy*. + +### Added +- Collab history and toolbar windows +- Collab view and presenter classes +- Collab Editor tests for view and presenter diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.collab-proxy@1.2.15/CHANGELOG.md.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.collab-proxy@1.2.15/CHANGELOG.md.meta" new file mode 100644 index 00000000..38274a69 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.collab-proxy@1.2.15/CHANGELOG.md.meta" @@ -0,0 +1,7 @@ +fileFormatVersion: 2 +guid: 782c49e6e68074dc7ba12c95537825ce +TextScriptImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.collab-proxy@1.2.15/DEPENDENCIES.md" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.collab-proxy@1.2.15/DEPENDENCIES.md" new file mode 100644 index 00000000..57808d56 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.collab-proxy@1.2.15/DEPENDENCIES.md" @@ -0,0 +1,9 @@ + + + + Unity.CollabProxy.Dependencies + 1.1.0-experimental + Rohit Garg + Dependencies for the CollabProxy package + + diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.collab-proxy@1.2.15/DEPENDENCIES.md.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.collab-proxy@1.2.15/DEPENDENCIES.md.meta" new file mode 100644 index 00000000..24e45c2f --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.collab-proxy@1.2.15/DEPENDENCIES.md.meta" @@ -0,0 +1,7 @@ +fileFormatVersion: 2 +guid: 470530e667ad4475786b28fa3187ce95 +TextScriptImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.collab-proxy@1.2.15/Documentation~/collab-proxy.md" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.collab-proxy@1.2.15/Documentation~/collab-proxy.md" new file mode 100644 index 00000000..c1800d6a --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.collab-proxy@1.2.15/Documentation~/collab-proxy.md" @@ -0,0 +1,5 @@ +# About Unity Collaborate + +Collaborate is a simple way for teams to save, share, and sync their Unity project. + +Please refer to the online documentation [here.](https://docs.unity3d.com/Manual/UnityCollaborate.html) \ No newline at end of file diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.collab-proxy@1.2.15/Editor.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.collab-proxy@1.2.15/Editor.meta" new file mode 100644 index 00000000..b54ca871 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.collab-proxy@1.2.15/Editor.meta" @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: d31e5d760880a4e52a3a75322481d0d2 +folderAsset: yes +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.collab-proxy@1.2.15/Editor/AssemblyInfo.cs" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.collab-proxy@1.2.15/Editor/AssemblyInfo.cs" new file mode 100644 index 00000000..d7266b63 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.collab-proxy@1.2.15/Editor/AssemblyInfo.cs" @@ -0,0 +1,4 @@ +using System.Runtime.CompilerServices; +using UnityEngine; + +[assembly: InternalsVisibleTo("Unity.CollabProxy.EditorTests")] diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.collab-proxy@1.2.15/Editor/AssemblyInfo.cs.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.collab-proxy@1.2.15/Editor/AssemblyInfo.cs.meta" new file mode 100644 index 00000000..e384b318 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.collab-proxy@1.2.15/Editor/AssemblyInfo.cs.meta" @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: d4ef26aa386b44923b61c9c4b505a67c +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.collab-proxy@1.2.15/Editor/Collab.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.collab-proxy@1.2.15/Editor/Collab.meta" new file mode 100644 index 00000000..694fc4ea --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.collab-proxy@1.2.15/Editor/Collab.meta" @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: c18cb9388313e4287ad5895ee735c47d +folderAsset: yes +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.collab-proxy@1.2.15/Editor/Collab/Bootstrap.cs" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.collab-proxy@1.2.15/Editor/Collab/Bootstrap.cs" new file mode 100644 index 00000000..029ce1c7 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.collab-proxy@1.2.15/Editor/Collab/Bootstrap.cs" @@ -0,0 +1,24 @@ +using UnityEditor; +using UnityEditor.Collaboration; +using UnityEngine; + +namespace CollabProxy.UI +{ + [InitializeOnLoad] + public class Bootstrap + { + private const float kCollabToolbarButtonWidth = 78.0f; + + static Bootstrap() + { + Collab.ShowHistoryWindow = CollabHistoryWindow.ShowHistoryWindow; + Collab.ShowToolbarAtPosition = CollabToolbarWindow.ShowCenteredAtPosition; + Collab.IsToolbarVisible = CollabToolbarWindow.IsVisible; + Collab.CloseToolbar = CollabToolbarWindow.CloseToolbar; + Toolbar.AddSubToolbar(new CollabToolbarButton + { + Width = kCollabToolbarButtonWidth + }); + } + } +} \ No newline at end of file diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.collab-proxy@1.2.15/Editor/Collab/Bootstrap.cs.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.collab-proxy@1.2.15/Editor/Collab/Bootstrap.cs.meta" new file mode 100644 index 00000000..641d54b7 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.collab-proxy@1.2.15/Editor/Collab/Bootstrap.cs.meta" @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 8aa8171e088f94069bbd1978a053f7dd +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.collab-proxy@1.2.15/Editor/Collab/CollabAnalytics.cs" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.collab-proxy@1.2.15/Editor/Collab/CollabAnalytics.cs" new file mode 100644 index 00000000..c7f90aa1 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.collab-proxy@1.2.15/Editor/Collab/CollabAnalytics.cs" @@ -0,0 +1,21 @@ +using System; + +namespace UnityEditor.Collaboration +{ + internal static class CollabAnalytics + { + [Serializable] + private struct CollabUserActionAnalyticsEvent + { + public string category; + public string action; + } + + public static void SendUserAction(string category, string action) + { + EditorAnalytics.SendCollabUserAction(new CollabUserActionAnalyticsEvent() { category = category, action = action }); + } + + public static readonly string historyCategoryString = "History"; + }; +} diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.collab-proxy@1.2.15/Editor/Collab/CollabAnalytics.cs.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.collab-proxy@1.2.15/Editor/Collab/CollabAnalytics.cs.meta" new file mode 100644 index 00000000..2f46e9bc --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.collab-proxy@1.2.15/Editor/Collab/CollabAnalytics.cs.meta" @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: f944311c8fff2479fa3ba741f6039fc8 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.collab-proxy@1.2.15/Editor/Collab/CollabHistoryWindow.cs" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.collab-proxy@1.2.15/Editor/Collab/CollabHistoryWindow.cs" new file mode 100644 index 00000000..b855bce3 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.collab-proxy@1.2.15/Editor/Collab/CollabHistoryWindow.cs" @@ -0,0 +1,330 @@ +using System; +using System.Linq; +using System.Collections.Generic; +using UnityEditor.Collaboration; + +#if UNITY_2019_1_OR_NEWER +using UnityEditor.UIElements; +using UnityEngine.UIElements; +#else +using UnityEditor.Experimental.UIElements; +using UnityEngine.Experimental.UIElements; +using UnityEngine.Experimental.UIElements.StyleEnums; +#endif + +using UnityEngine; +using UnityEditor.Connect; + +namespace UnityEditor +{ + internal class CollabHistoryWindow : EditorWindow, ICollabHistoryWindow + { +#if UNITY_2019_1_OR_NEWER + private const string ResourcesPath = "Packages/com.unity.collab-proxy/Editor/Resources/Styles/"; +#else + private const string ResourcesPath = "StyleSheets/"; +#endif + + + const string kWindowTitle = "Collab History"; + const string kServiceUrl = "developer.cloud.unity3d.com"; + + [MenuItem("Window/Asset Management/Collab History", false, 1)] + public static void ShowHistoryWindow() + { + EditorWindow.GetWindow(kWindowTitle); + } + + [MenuItem("Window/Asset Management/Collab History", true)] + public static bool ValidateShowHistoryWindow() + { + return Collab.instance.IsCollabEnabledForCurrentProject(); + } + + CollabHistoryPresenter m_Presenter; + Dictionary m_Views; + List m_HistoryItems = new List(); + HistoryState m_State; + VisualElement m_Container; + PagedListView m_Pager; + ScrollView m_HistoryView; + int m_ItemsPerPage = 5; + string m_InProgressRev; + bool m_RevisionActionsEnabled; + + public CollabHistoryWindow() + { + minSize = new Vector2(275, 50); + } + + public void OnEnable() + { + SetupGUI(); + name = "CollabHistory"; + + if (m_Presenter == null) + { + m_Presenter = new CollabHistoryPresenter(this, new CollabHistoryItemFactory(), new RevisionsService(Collab.instance, UnityConnect.instance)); + } + m_Presenter.OnWindowEnabled(); + } + + public void OnDisable() + { + m_Presenter.OnWindowDisabled(); + } + + public bool revisionActionsEnabled + { + get { return m_RevisionActionsEnabled; } + set + { + if (m_RevisionActionsEnabled == value) + return; + + m_RevisionActionsEnabled = value; + foreach (var historyItem in m_HistoryItems) + { + historyItem.RevisionActionsEnabled = value; + } + } + } + + private void AddStyleSheetPath(VisualElement root, string path) + { +#if UNITY_2019_1_OR_NEWER + root.styleSheets.Add(EditorGUIUtility.Load(path) as StyleSheet); +#else + root.AddStyleSheetPath(path); +#endif + } + + + public void SetupGUI() + { +#if UNITY_2019_1_OR_NEWER + var root = this.rootVisualElement; +#else + var root = this.GetRootVisualContainer(); +#endif + AddStyleSheetPath(root, ResourcesPath + "CollabHistoryCommon.uss"); + if (EditorGUIUtility.isProSkin) + { + AddStyleSheetPath(root, ResourcesPath + "CollabHistoryDark.uss"); + } + else + { + AddStyleSheetPath(root, ResourcesPath + "CollabHistoryLight.uss"); + } + + m_Container = new VisualElement(); + m_Container.StretchToParentSize(); + root.Add(m_Container); + + m_Pager = new PagedListView() + { + name = "PagedElement", + pageSize = m_ItemsPerPage + }; + + var errorView = new StatusView() + { + message = "An Error Occurred", + icon = EditorGUIUtility.LoadIconRequired("Collab.Warning") as Texture, + }; + + var noInternetView = new StatusView() + { + message = "No Internet Connection", + icon = EditorGUIUtility.LoadIconRequired("Collab.NoInternet") as Texture, + }; + + var maintenanceView = new StatusView() + { + message = "Maintenance", + }; + + var loginView = new StatusView() + { + message = "Sign in to access Collaborate", + buttonText = "Sign in...", + callback = SignInClick, + }; + + var noSeatView = new StatusView() + { + message = "Ask your project owner for access to Unity Teams", + buttonText = "Learn More", + callback = NoSeatClick, + }; + + var waitingView = new StatusView() + { + message = "Updating...", + }; + + m_HistoryView = new ScrollView() { name = "HistoryContainer", showHorizontal = false}; + m_HistoryView.contentContainer.StretchToParentWidth(); + m_HistoryView.Add(m_Pager); + + m_Views = new Dictionary() + { + {HistoryState.Error, errorView}, + {HistoryState.Offline, noInternetView}, + {HistoryState.Maintenance, maintenanceView}, + {HistoryState.LoggedOut, loginView}, + {HistoryState.NoSeat, noSeatView}, + {HistoryState.Waiting, waitingView}, + {HistoryState.Ready, m_HistoryView} + }; + } + + public void UpdateState(HistoryState state, bool force) + { + if (state == m_State && !force) + return; + + m_State = state; + switch (state) + { + case HistoryState.Ready: + UpdateHistoryView(m_Pager); + break; + case HistoryState.Disabled: + Close(); + return; + } + + m_Container.Clear(); + m_Container.Add(m_Views[m_State]); + } + + public void UpdateRevisions(IEnumerable datas, string tip, int totalRevisions, int currentPage) + { + var elements = new List(); + var isFullDateObtained = false; // Has everything from this date been obtained? + m_HistoryItems.Clear(); + + if (datas != null) + { + DateTime currentDate = DateTime.MinValue; + foreach (var data in datas) + { + if (data.timeStamp.Date != currentDate.Date) + { + elements.Add(new CollabHistoryRevisionLine(data.timeStamp, isFullDateObtained)); + currentDate = data.timeStamp; + } + + var item = new CollabHistoryItem(data); + m_HistoryItems.Add(item); + + var container = new VisualElement(); + container.style.flexDirection = FlexDirection.Row; + if (data.current) + { + isFullDateObtained = true; + container.AddToClassList("currentRevision"); + container.AddToClassList("obtainedRevision"); + } + else if (data.obtained) + { + container.AddToClassList("obtainedRevision"); + } + else + { + container.AddToClassList("absentRevision"); + } + // If we use the index as-is, the latest commit will become #1, but we want it to be last + container.Add(new CollabHistoryRevisionLine(data.index)); + container.Add(item); + elements.Add(container); + } + } + + m_HistoryView.scrollOffset = new Vector2(0, 0); + m_Pager.totalItems = totalRevisions; + m_Pager.curPage = currentPage; + m_Pager.items = elements; + } + + public string inProgressRevision + { + get { return m_InProgressRev; } + set + { + m_InProgressRev = value; + foreach (var historyItem in m_HistoryItems) + { + historyItem.SetInProgressStatus(value); + } + } + } + + public int itemsPerPage + { + set + { + if (m_ItemsPerPage == value) + return; + m_Pager.pageSize = m_ItemsPerPage; + } + } + + public PageChangeAction OnPageChangeAction + { + set { m_Pager.OnPageChanged = value; } + } + + public RevisionAction OnGoBackAction + { + set { CollabHistoryItem.s_OnGoBack = value; } + } + + public RevisionAction OnUpdateAction + { + set { CollabHistoryItem.s_OnUpdate = value; } + } + + public RevisionAction OnRestoreAction + { + set { CollabHistoryItem.s_OnRestore = value; } + } + + public ShowBuildAction OnShowBuildAction + { + set { CollabHistoryItem.s_OnShowBuild = value; } + } + + public Action OnShowServicesAction + { + set { CollabHistoryItem.s_OnShowServices = value; } + } + + void UpdateHistoryView(VisualElement history) + { + } + + void NoSeatClick() + { + var connection = UnityConnect.instance; + var env = connection.GetEnvironment(); + // Map environment to url - prod is special + if (env == "production") + env = ""; + else + env += "-"; + + var url = "https://" + env + kServiceUrl + + "/orgs/" + connection.GetOrganizationId() + + "/projects/" + connection.GetProjectName() + + "/unity-teams/"; + Application.OpenURL(url); + } + + void SignInClick() + { + UnityConnect.instance.ShowLogin(); + } + } +} diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.collab-proxy@1.2.15/Editor/Collab/CollabHistoryWindow.cs.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.collab-proxy@1.2.15/Editor/Collab/CollabHistoryWindow.cs.meta" new file mode 100644 index 00000000..74358d40 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.collab-proxy@1.2.15/Editor/Collab/CollabHistoryWindow.cs.meta" @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: fed9dda667cab45d398d06402bba03f4 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.collab-proxy@1.2.15/Editor/Collab/CollabToolbarButton.cs" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.collab-proxy@1.2.15/Editor/Collab/CollabToolbarButton.cs" new file mode 100644 index 00000000..eebe4aca --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.collab-proxy@1.2.15/Editor/Collab/CollabToolbarButton.cs" @@ -0,0 +1,297 @@ +using System; +using System.Collections.Generic; +using System.Linq; +using UnityEditor.Collaboration; +using UnityEditor.Connect; +using UnityEditor.Web; +using UnityEngine; + +namespace UnityEditor +{ + internal class CollabToolbarButton : SubToolbar, IDisposable + { + // Must match s_CollabIcon array + enum CollabToolbarState + { + NeedToEnableCollab, + UpToDate, + Conflict, + OperationError, + ServerHasChanges, + FilesToPush, + InProgress, + Disabled, + Offline + } + + private class CollabToolbarContent + { + readonly string m_iconName; + readonly string m_toolTip; + readonly CollabToolbarState m_state; + + static Dictionary m_CollabIcons; + + public CollabToolbarState RegisteredForState + { + get { return m_state; } + } + + public GUIContent GuiContent + { + get + { + if (m_CollabIcons == null) + { + m_CollabIcons = new Dictionary(); + } + + if (!m_CollabIcons.ContainsKey(this)) + { + m_CollabIcons.Add(this, EditorGUIUtility.TrTextContentWithIcon("Collab", m_toolTip, m_iconName)); + } + + return m_CollabIcons[this]; + } + } + + public CollabToolbarContent(CollabToolbarState state, string iconName, string toolTip) + { + m_state = state; + m_iconName = iconName; + m_toolTip = toolTip; + } + } + + CollabToolbarContent[] m_toolbarContents; + CollabToolbarState m_CollabToolbarState = CollabToolbarState.UpToDate; + const float kCollabButtonWidth = 78.0f; + ButtonWithAnimatedIconRotation m_CollabButton; + string m_DynamicTooltip; + static bool m_ShowCollabTooltip = false; + + private GUIContent currentCollabContent + { + get + { + CollabToolbarContent toolbarContent = + m_toolbarContents.FirstOrDefault(c => c.RegisteredForState.Equals(m_CollabToolbarState)); + GUIContent content = new GUIContent(toolbarContent == null? m_toolbarContents.First().GuiContent : toolbarContent.GuiContent); + if (!m_ShowCollabTooltip) + { + content.tooltip = null; + } + else if (m_DynamicTooltip != "") + { + content.tooltip = m_DynamicTooltip; + } + + if (Collab.instance.AreTestsRunning()) + { + content.text = "CTF"; + } + + return content; + } + } + + public CollabToolbarButton() + { + m_toolbarContents = new[] + { + new CollabToolbarContent(CollabToolbarState.NeedToEnableCollab, "CollabNew", " You need to enable collab."), + new CollabToolbarContent(CollabToolbarState.UpToDate, "Collab", " You are up to date."), + new CollabToolbarContent(CollabToolbarState.Conflict, "CollabConflict", " Please fix your conflicts prior to publishing."), + new CollabToolbarContent(CollabToolbarState.OperationError, "CollabError", " Last operation failed. Please retry later."), + new CollabToolbarContent(CollabToolbarState.ServerHasChanges, "CollabPull", " Please update, there are server changes."), + new CollabToolbarContent(CollabToolbarState.FilesToPush, "CollabPush", " You have files to publish."), + new CollabToolbarContent(CollabToolbarState.InProgress, "CollabProgress", " Operation in progress."), + new CollabToolbarContent(CollabToolbarState.Disabled, "CollabNew", " Collab is disabled."), + new CollabToolbarContent(CollabToolbarState.Offline, "CollabNew", " Please check your network connection.") + }; + + Collab.instance.StateChanged += OnCollabStateChanged; + UnityConnect.instance.StateChanged += OnUnityConnectStateChanged; + UnityConnect.instance.UserStateChanged += OnUnityConnectUserStateChanged; + } + + void OnUnityConnectUserStateChanged(UserInfo state) + { + UpdateCollabToolbarState(); + } + + void OnUnityConnectStateChanged(ConnectInfo state) + { + UpdateCollabToolbarState(); + } + + public override void OnGUI(Rect rect) + { + DoCollabDropDown(rect); + } + + Rect GUIToScreenRect(Rect guiRect) + { + Vector2 screenPoint = GUIUtility.GUIToScreenPoint(new Vector2(guiRect.x, guiRect.y)); + guiRect.x = screenPoint.x; + guiRect.y = screenPoint.y; + return guiRect; + } + + void ShowPopup(Rect rect) + { + // window should be centered on the button + ReserveRight(kCollabButtonWidth / 2, ref rect); + ReserveBottom(5, ref rect); + // calculate screen rect before saving assets since it might open the AssetSaveDialog window + var screenRect = GUIToScreenRect(rect); + // save all the assets + AssetDatabase.SaveAssets(); + if (Collab.ShowToolbarAtPosition != null && Collab.ShowToolbarAtPosition(screenRect)) + { + GUIUtility.ExitGUI(); + } + } + + void DoCollabDropDown(Rect rect) + { + UpdateCollabToolbarState(); + GUIStyle collabButtonStyle = "OffsetDropDown"; + bool showPopup = Toolbar.requestShowCollabToolbar; + Toolbar.requestShowCollabToolbar = false; + + bool enable = !EditorApplication.isPlaying; + + using (new EditorGUI.DisabledScope(!enable)) + { + bool animate = m_CollabToolbarState == CollabToolbarState.InProgress; + + EditorGUIUtility.SetIconSize(new Vector2(12, 12)); + if (GetCollabButton().OnGUI(rect, currentCollabContent, animate, collabButtonStyle)) + { + showPopup = true; + } + EditorGUIUtility.SetIconSize(Vector2.zero); + } + + if (m_CollabToolbarState == CollabToolbarState.Disabled) + return; + + if (showPopup) + { + ShowPopup(rect); + } + } + + public void OnCollabStateChanged(CollabInfo info) + { + UpdateCollabToolbarState(); + } + + public void UpdateCollabToolbarState() + { + var currentCollabState = CollabToolbarState.UpToDate; + bool networkAvailable = UnityConnect.instance.connectInfo.online && UnityConnect.instance.connectInfo.loggedIn; + m_DynamicTooltip = ""; + + if (UnityConnect.instance.isDisableCollabWindow) + { + currentCollabState = CollabToolbarState.Disabled; + } + else if (networkAvailable) + { + Collab collab = Collab.instance; + CollabInfo currentInfo = collab.collabInfo; + UnityErrorInfo errInfo; + bool error = false; + if (collab.GetError((UnityConnect.UnityErrorFilter.ByContext | UnityConnect.UnityErrorFilter.ByChild), out errInfo)) + { + error = (errInfo.priority <= (int)UnityConnect.UnityErrorPriority.Error); + m_DynamicTooltip = errInfo.shortMsg; + } + + if (!currentInfo.ready) + { + currentCollabState = CollabToolbarState.InProgress; + } + else if (error) + { + currentCollabState = CollabToolbarState.OperationError; + } + else if (currentInfo.inProgress) + { + currentCollabState = CollabToolbarState.InProgress; + } + else + { + bool collabEnable = Collab.instance.IsCollabEnabledForCurrentProject(); + + if (UnityConnect.instance.projectInfo.projectBound == false || !collabEnable) + { + currentCollabState = CollabToolbarState.NeedToEnableCollab; + } + else if (currentInfo.update) + { + currentCollabState = CollabToolbarState.ServerHasChanges; + } + else if (currentInfo.conflict) + { + currentCollabState = CollabToolbarState.Conflict; + } + else if (currentInfo.publish) + { + currentCollabState = CollabToolbarState.FilesToPush; + } + } + } + else + { + currentCollabState = CollabToolbarState.Offline; + } + + if (Collab.IsToolbarVisible != null) + { + if (currentCollabState != m_CollabToolbarState || + Collab.IsToolbarVisible() == m_ShowCollabTooltip) + { + m_CollabToolbarState = currentCollabState; + m_ShowCollabTooltip = !Collab.IsToolbarVisible(); + Toolbar.RepaintToolbar(); + } + } + } + + void ReserveRight(float width, ref Rect pos) + { + pos.x += width; + } + + void ReserveBottom(float height, ref Rect pos) + { + pos.y += height; + } + + ButtonWithAnimatedIconRotation GetCollabButton() + { + if (m_CollabButton == null) + { + const int repaintsPerSecond = 20; + const float animSpeed = 500f; + const bool mouseDownButton = true; + m_CollabButton = new ButtonWithAnimatedIconRotation(() => (float)EditorApplication.timeSinceStartup * animSpeed, Toolbar.RepaintToolbar, repaintsPerSecond, mouseDownButton); + } + + return m_CollabButton; + } + + public void Dispose() + { + Collab.instance.StateChanged -= OnCollabStateChanged; + UnityConnect.instance.StateChanged -= OnUnityConnectStateChanged; + UnityConnect.instance.UserStateChanged -= OnUnityConnectUserStateChanged; + + if (m_CollabButton != null) + m_CollabButton.Clear(); + } + } +} // namespace \ No newline at end of file diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.collab-proxy@1.2.15/Editor/Collab/CollabToolbarButton.cs.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.collab-proxy@1.2.15/Editor/Collab/CollabToolbarButton.cs.meta" new file mode 100644 index 00000000..949d8db9 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.collab-proxy@1.2.15/Editor/Collab/CollabToolbarButton.cs.meta" @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 882f1a4147a284f028899b9c018e63eb +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.collab-proxy@1.2.15/Editor/Collab/CollabToolbarWindow.cs" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.collab-proxy@1.2.15/Editor/Collab/CollabToolbarWindow.cs" new file mode 100644 index 00000000..27938750 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.collab-proxy@1.2.15/Editor/Collab/CollabToolbarWindow.cs" @@ -0,0 +1,137 @@ +using UnityEngine; +using UnityEditor.Collaboration; +using UnityEditor.Web; +using UnityEditor.Connect; + +namespace UnityEditor +{ + [InitializeOnLoad] + internal class WebViewStatic : ScriptableSingleton + { + [SerializeField] + WebView m_WebView; + + static public WebView GetWebView() + { + return instance.m_WebView; + } + + static public void SetWebView(WebView webView) + { + instance.m_WebView = webView; + } + } + + [InitializeOnLoad] + internal class CollabToolbarWindow : WebViewEditorStaticWindow, IHasCustomMenu + { + internal override WebView webView + { + get {return WebViewStatic.GetWebView(); } + set {WebViewStatic.SetWebView(value); } + } + + private const string kWindowName = "Unity Collab Toolbar"; + + private static long s_LastClosedTime; + private static CollabToolbarWindow s_CollabToolbarWindow; + + public static bool s_ToolbarIsVisible = false; + + const int kWindowWidth = 320; + const int kWindowHeight = 350; + + public static void CloseToolbar() + { + foreach (CollabToolbarWindow window in Resources.FindObjectsOfTypeAll()) + window.Close(); + } + + [MenuItem("Window/Asset Management/Collab Toolbar", false /*IsValidateFunction*/, 2, true /* IsInternalMenu */)] + public static CollabToolbarWindow ShowToolbarWindow() + { + //Create a new window if it does not exist + if (s_CollabToolbarWindow == null) + { + s_CollabToolbarWindow = GetWindow(false, kWindowName) as CollabToolbarWindow; + } + + return s_CollabToolbarWindow; + } + + [MenuItem("Window/Asset Management/Collab Toolbar", true /*IsValidateFunction*/)] + public static bool ValidateShowToolbarWindow() + { + return true; + } + + public static bool IsVisible() + { + return s_ToolbarIsVisible; + } + + public static bool ShowCenteredAtPosition(Rect buttonRect) + { + buttonRect.x -= kWindowWidth / 2; + // We could not use realtimeSinceStartUp since it is set to 0 when entering/exitting playmode, we assume an increasing time when comparing time. + long nowMilliSeconds = System.DateTime.Now.Ticks / System.TimeSpan.TicksPerMillisecond; + bool justClosed = nowMilliSeconds < s_LastClosedTime + 50; + if (!justClosed) + { + // Method may have been triggered programmatically, without a user event to consume. + if (Event.current.type != EventType.Layout) + { + Event.current.Use(); + } + if (s_CollabToolbarWindow == null) + s_CollabToolbarWindow = CreateInstance() as CollabToolbarWindow; + var windowSize = new Vector2(kWindowWidth, kWindowHeight); + s_CollabToolbarWindow.initialOpenUrl = "file:///" + EditorApplication.userJavascriptPackagesPath + "unityeditor-collab-toolbar/dist/index.html"; + s_CollabToolbarWindow.Init(); + s_CollabToolbarWindow.ShowAsDropDown(buttonRect, windowSize); + s_CollabToolbarWindow.OnFocus(); + return true; + } + return false; + } + + // Receives HTML title + public void OnReceiveTitle(string title) + { + titleContent.text = title; + } + + public new void OnInitScripting() + { + base.OnInitScripting(); + } + + public override void OnEnable() + { + minSize = new Vector2(kWindowWidth, kWindowHeight); + maxSize = new Vector2(kWindowWidth, kWindowHeight); + initialOpenUrl = "file:///" + EditorApplication.userJavascriptPackagesPath + "unityeditor-collab-toolbar/dist/index.html"; + base.OnEnable(); + s_ToolbarIsVisible = true; + } + + internal new void OnDisable() + { + s_LastClosedTime = System.DateTime.Now.Ticks / System.TimeSpan.TicksPerMillisecond; + if (s_CollabToolbarWindow) + { + s_ToolbarIsVisible = false; + NotifyVisibility(s_ToolbarIsVisible); + } + s_CollabToolbarWindow = null; + + base.OnDisable(); + } + + public new void OnDestroy() + { + OnLostFocus(); + base.OnDestroy(); + } + } +} diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.collab-proxy@1.2.15/Editor/Collab/CollabToolbarWindow.cs.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.collab-proxy@1.2.15/Editor/Collab/CollabToolbarWindow.cs.meta" new file mode 100644 index 00000000..b08bf2aa --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.collab-proxy@1.2.15/Editor/Collab/CollabToolbarWindow.cs.meta" @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 6f516f1ec21a54a59a92bf99db2d9535 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.collab-proxy@1.2.15/Editor/Collab/Presenters.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.collab-proxy@1.2.15/Editor/Collab/Presenters.meta" new file mode 100644 index 00000000..91331532 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.collab-proxy@1.2.15/Editor/Collab/Presenters.meta" @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: d437fe60bb34f45728664a5d930c1635 +folderAsset: yes +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.collab-proxy@1.2.15/Editor/Collab/Presenters/CollabHistoryPresenter.cs" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.collab-proxy@1.2.15/Editor/Collab/Presenters/CollabHistoryPresenter.cs" new file mode 100644 index 00000000..91d500be --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.collab-proxy@1.2.15/Editor/Collab/Presenters/CollabHistoryPresenter.cs" @@ -0,0 +1,228 @@ +using System.Collections.Generic; +using UnityEditor.Connect; +using UnityEditor.Web; + +namespace UnityEditor.Collaboration +{ + internal class CollabHistoryPresenter + { + public const int ItemsPerPage = 5; + ICollabHistoryWindow m_Window; + ICollabHistoryItemFactory m_Factory; + IRevisionsService m_Service; + ConnectInfo m_ConnectState; + CollabInfo m_CollabState; + bool m_IsCollabError; + int m_TotalRevisions; + int m_CurrentPage; + int m_RequestedPage; + bool m_FetchInProgress; + + BuildAccess m_BuildAccess; + string m_ProgressRevision; + public bool BuildServiceEnabled {get; set; } + + public CollabHistoryPresenter(ICollabHistoryWindow window, ICollabHistoryItemFactory factory, IRevisionsService service) + { + m_Window = window; + m_Factory = factory; + m_Service = service; + m_CurrentPage = 0; + m_BuildAccess = new BuildAccess(); + m_Service.FetchRevisionsCallback += OnFetchRevisions; + } + + public void OnWindowEnabled() + { + UnityConnect.instance.StateChanged += OnConnectStateChanged; + Collab.instance.StateChanged += OnCollabStateChanged; + Collab.instance.RevisionUpdated += OnCollabRevisionUpdated; + Collab.instance.JobsCompleted += OnCollabJobsCompleted; + Collab.instance.ErrorOccurred += OnCollabError; + Collab.instance.ErrorCleared += OnCollabErrorCleared; + EditorApplication.playModeStateChanged += OnPlayModeStateChanged; + m_ConnectState = UnityConnect.instance.GetConnectInfo(); + m_CollabState = Collab.instance.GetCollabInfo(); + + m_Window.revisionActionsEnabled = !EditorApplication.isPlayingOrWillChangePlaymode; + + // Setup window callbacks + m_Window.OnPageChangeAction = OnUpdatePage; + m_Window.OnUpdateAction = OnUpdate; + m_Window.OnRestoreAction = OnRestore; + m_Window.OnGoBackAction = OnGoBack; + m_Window.OnShowBuildAction = ShowBuildForCommit; + m_Window.OnShowServicesAction = ShowServicePage; + m_Window.itemsPerPage = ItemsPerPage; + + // Initialize data + UpdateBuildServiceStatus(); + var state = RecalculateState(); + // Only try to load the page if we're ready + if (state == HistoryState.Ready) + OnUpdatePage(m_CurrentPage); + m_Window.UpdateState(state, true); + } + + public void OnWindowDisabled() + { + UnityConnect.instance.StateChanged -= OnConnectStateChanged; + Collab.instance.StateChanged -= OnCollabStateChanged; + Collab.instance.RevisionUpdated -= OnCollabRevisionUpdated; + Collab.instance.JobsCompleted -= OnCollabJobsCompleted; + EditorApplication.playModeStateChanged -= OnPlayModeStateChanged; + } + + private void OnConnectStateChanged(ConnectInfo state) + { + m_ConnectState = state; + + m_Window.UpdateState(RecalculateState(), false); + } + + private void OnCollabStateChanged(CollabInfo state) + { + // Sometimes a collab state change will trigger even though everything is the same + if (m_CollabState.Equals(state)) + return; + + if (m_CollabState.tip != state.tip) + OnUpdatePage(m_CurrentPage); + + m_CollabState = state; + m_Window.UpdateState(RecalculateState(), false); + if (state.inProgress) + { + m_Window.inProgressRevision = m_ProgressRevision; + } + else + { + m_Window.inProgressRevision = null; + } + } + + private void OnCollabRevisionUpdated(CollabInfo state) + { + OnUpdatePage(m_CurrentPage); + } + + private void OnCollabJobsCompleted(CollabInfo state) + { + m_ProgressRevision = null; + } + + private void OnCollabError() + { + m_IsCollabError = true; + m_Window.UpdateState(RecalculateState(), false); + } + + private void OnCollabErrorCleared() + { + m_IsCollabError = false; + m_FetchInProgress = true; + m_Service.GetRevisions(m_CurrentPage * ItemsPerPage, ItemsPerPage); + m_Window.UpdateState(RecalculateState(), false); + } + + private void OnPlayModeStateChanged(PlayModeStateChange stateChange) + { + // If entering play mode, disable + if (stateChange == PlayModeStateChange.ExitingEditMode || + stateChange == PlayModeStateChange.EnteredPlayMode) + { + m_Window.revisionActionsEnabled = false; + } + // If exiting play mode, enable! + else if (stateChange == PlayModeStateChange.EnteredEditMode || + stateChange == PlayModeStateChange.ExitingPlayMode) + { + m_Window.revisionActionsEnabled = true; + } + } + + private HistoryState RecalculateState() + { + if (!m_ConnectState.online) + return HistoryState.Offline; + if (m_ConnectState.maintenance || m_CollabState.maintenance) + return HistoryState.Maintenance; + if (!m_ConnectState.loggedIn) + return HistoryState.LoggedOut; + if (!m_CollabState.seat) + return HistoryState.NoSeat; + if (!Collab.instance.IsCollabEnabledForCurrentProject()) + return HistoryState.Disabled; + if (!Collab.instance.IsConnected() || !m_CollabState.ready || m_FetchInProgress) + return HistoryState.Waiting; + if (m_ConnectState.error || m_IsCollabError) + return HistoryState.Error; + + return HistoryState.Ready; + } + + // TODO: Eventually this can be a listener on the build service status + public void UpdateBuildServiceStatus() + { + foreach (var service in UnityConnectServiceCollection.instance.GetAllServiceInfos()) + { + if (service.name.Equals("Build")) + { + BuildServiceEnabled = service.enabled; + } + } + } + + public void ShowBuildForCommit(string revisionID) + { + m_BuildAccess.ShowBuildForCommit(revisionID); + } + + public void ShowServicePage() + { + m_BuildAccess.ShowServicePage(); + } + + public void OnUpdatePage(int page) + { + m_FetchInProgress = true; + m_Service.GetRevisions(page * ItemsPerPage, ItemsPerPage); + m_Window.UpdateState(RecalculateState(), false); + m_RequestedPage = page; + } + + private void OnFetchRevisions(RevisionsResult data) + { + m_FetchInProgress = false; + IEnumerable items = null; + if (data != null) + { + m_CurrentPage = m_RequestedPage; + m_TotalRevisions = data.RevisionsInRepo; + items = m_Factory.GenerateElements(data.Revisions, m_TotalRevisions, m_CurrentPage * ItemsPerPage, m_Service.tipRevision, m_Window.inProgressRevision, m_Window.revisionActionsEnabled, BuildServiceEnabled, m_Service.currentUser); + } + + // State must be recalculated prior to inserting items + m_Window.UpdateState(RecalculateState(), false); + m_Window.UpdateRevisions(items, m_Service.tipRevision, m_TotalRevisions, m_CurrentPage); + } + + private void OnRestore(string revisionId, bool updatetorevision) + { + m_ProgressRevision = revisionId; + Collab.instance.ResyncToRevision(revisionId); + } + + private void OnGoBack(string revisionId, bool updatetorevision) + { + m_ProgressRevision = revisionId; + Collab.instance.GoBackToRevision(revisionId, false); + } + + private void OnUpdate(string revisionId, bool updatetorevision) + { + m_ProgressRevision = revisionId; + Collab.instance.Update(revisionId, updatetorevision); + } + } +} diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.collab-proxy@1.2.15/Editor/Collab/Presenters/CollabHistoryPresenter.cs.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.collab-proxy@1.2.15/Editor/Collab/Presenters/CollabHistoryPresenter.cs.meta" new file mode 100644 index 00000000..9c37ecd8 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.collab-proxy@1.2.15/Editor/Collab/Presenters/CollabHistoryPresenter.cs.meta" @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: a7c91a123806d41a0873fcdcb629b1c4 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.collab-proxy@1.2.15/Editor/Collab/Views.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.collab-proxy@1.2.15/Editor/Collab/Views.meta" new file mode 100644 index 00000000..f62ac6be --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.collab-proxy@1.2.15/Editor/Collab/Views.meta" @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: fd0a39b4d296d4d509b4f1dbd08d0630 +folderAsset: yes +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.collab-proxy@1.2.15/Editor/Collab/Views/BuildStatusButton.cs" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.collab-proxy@1.2.15/Editor/Collab/Views/BuildStatusButton.cs" new file mode 100644 index 00000000..ac3754d2 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.collab-proxy@1.2.15/Editor/Collab/Views/BuildStatusButton.cs" @@ -0,0 +1,53 @@ +using System; +using UnityEditor; +using UnityEditor.Collaboration; +using UnityEngine; + +#if UNITY_2019_1_OR_NEWER +using UnityEngine.UIElements; +#else +using UnityEngine.Experimental.UIElements; +#endif + +namespace UnityEditor.Collaboration +{ + internal class BuildStatusButton : Button + { + private readonly string iconPrefix = "Icons/Collab.Build"; + private readonly string iconSuffix = ".png"; + Label labelElement = new Label(); + Image iconElement = new Image() {name = "BuildIcon"}; + + public BuildStatusButton(Action clickEvent) : base(clickEvent) + { + iconElement.image = EditorGUIUtility.Load(iconPrefix + iconSuffix) as Texture; + labelElement.text = "Build Now"; + Add(iconElement); + Add(labelElement); + } + + public BuildStatusButton(Action clickEvent, BuildState state, int failures) : base(clickEvent) + { + switch (state) + { + case BuildState.InProgress: + iconElement.image = EditorGUIUtility.Load(iconPrefix + iconSuffix) as Texture; + labelElement.text = "In progress"; + break; + + case BuildState.Failed: + iconElement.image = EditorGUIUtility.Load(iconPrefix + "Failed" + iconSuffix) as Texture; + labelElement.text = failures + ((failures == 1) ? " failure" : " failures"); + break; + + case BuildState.Success: + iconElement.image = EditorGUIUtility.Load(iconPrefix + "Succeeded" + iconSuffix) as Texture; + labelElement.text = "success"; + break; + } + + Add(iconElement); + Add(labelElement); + } + } +} diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.collab-proxy@1.2.15/Editor/Collab/Views/BuildStatusButton.cs.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.collab-proxy@1.2.15/Editor/Collab/Views/BuildStatusButton.cs.meta" new file mode 100644 index 00000000..d74a58af --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.collab-proxy@1.2.15/Editor/Collab/Views/BuildStatusButton.cs.meta" @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 0217a80286f79419daa202f69409f19b +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.collab-proxy@1.2.15/Editor/Collab/Views/CollabHistoryDropDown.cs" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.collab-proxy@1.2.15/Editor/Collab/Views/CollabHistoryDropDown.cs" new file mode 100644 index 00000000..e3bb05a6 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.collab-proxy@1.2.15/Editor/Collab/Views/CollabHistoryDropDown.cs" @@ -0,0 +1,78 @@ +using UnityEngine; +using System.Collections.Generic; +using UnityEditor.Connect; + +#if UNITY_2019_1_OR_NEWER +using UnityEngine.UIElements; +#else +using UnityEngine.Experimental.UIElements; +#endif + + +namespace UnityEditor.Collaboration +{ + internal class CollabHistoryDropDown : VisualElement + { + private readonly VisualElement m_FilesContainer; + private readonly Label m_ToggleLabel; + private int m_ChangesTotal; + private string m_RevisionId; + + public CollabHistoryDropDown(ICollection changes, int changesTotal, bool changesTruncated, string revisionId) + { + m_FilesContainer = new VisualElement(); + m_ChangesTotal = changesTotal; + m_RevisionId = revisionId; + + m_ToggleLabel = new Label(ToggleText(false)); + m_ToggleLabel.AddManipulator(new Clickable(ToggleDropdown)); + Add(m_ToggleLabel); + + foreach (ChangeData change in changes) + { + m_FilesContainer.Add(new CollabHistoryDropDownItem(change.path, change.action)); + } + + if (changesTruncated) + { + m_FilesContainer.Add(new Button(ShowAllClick) + { + text = "Show all on dashboard" + }); + } + } + + private void ToggleDropdown() + { + if (Contains(m_FilesContainer)) + { + CollabAnalytics.SendUserAction(CollabAnalytics.historyCategoryString, "CollapseAssets"); + Remove(m_FilesContainer); + m_ToggleLabel.text = ToggleText(false); + } + else + { + CollabAnalytics.SendUserAction(CollabAnalytics.historyCategoryString, "ExpandAssets"); + Add(m_FilesContainer); + m_ToggleLabel.text = ToggleText(true); + } + } + + private string ToggleText(bool open) + { + var icon = open ? "\u25bc" : "\u25b6"; + var change = m_ChangesTotal == 1 ? "Change" : "Changes"; + return string.Format("{0} {1} Asset {2}", icon, m_ChangesTotal, change); + } + + private void ShowAllClick() + { + var host = UnityConnect.instance.GetConfigurationURL(CloudConfigUrl.CloudServicesDashboard); + var org = UnityConnect.instance.GetOrganizationId(); + var proj = UnityConnect.instance.GetProjectGUID(); + var url = string.Format("{0}/collab/orgs/{1}/projects/{2}/commits?commit={3}", host, org, proj, m_RevisionId); + CollabAnalytics.SendUserAction(CollabAnalytics.historyCategoryString, "ShowAllOnDashboard"); + Application.OpenURL(url); + } + } +} diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.collab-proxy@1.2.15/Editor/Collab/Views/CollabHistoryDropDown.cs.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.collab-proxy@1.2.15/Editor/Collab/Views/CollabHistoryDropDown.cs.meta" new file mode 100644 index 00000000..513b66bf --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.collab-proxy@1.2.15/Editor/Collab/Views/CollabHistoryDropDown.cs.meta" @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: a483595b0257945278dc75c5ff7d82ee +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.collab-proxy@1.2.15/Editor/Collab/Views/CollabHistoryDropDownItem.cs" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.collab-proxy@1.2.15/Editor/Collab/Views/CollabHistoryDropDownItem.cs" new file mode 100644 index 00000000..3ad43f23 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.collab-proxy@1.2.15/Editor/Collab/Views/CollabHistoryDropDownItem.cs" @@ -0,0 +1,53 @@ +using System; +using System.IO; +using System.Linq; +using UnityEngine; + +#if UNITY_2019_1_OR_NEWER +using UnityEngine.UIElements; +#else +using UnityEngine.Experimental.UIElements; +#endif + + +namespace UnityEditor.Collaboration +{ + internal class CollabHistoryDropDownItem : VisualElement + { + public CollabHistoryDropDownItem(string path, string action) + { + var fileName = Path.GetFileName(path); + var isFolder = Path.GetFileNameWithoutExtension(path).Equals(fileName); + var fileIcon = GetIconElement(action, fileName, isFolder); + var metaContainer = new VisualElement(); + var fileNameLabel = new Label + { + name = "FileName", + text = fileName + }; + var filePathLabel = new Label + { + name = "FilePath", + text = path + }; + metaContainer.Add(fileNameLabel); + metaContainer.Add(filePathLabel); + Add(fileIcon); + Add(metaContainer); + } + + private Image GetIconElement(string action, string fileName, bool isFolder) + { + var prefix = isFolder ? "Folder" : "File"; + var actionName = action.First().ToString().ToUpper() + action.Substring(1); + // Use the same icon for renamed and moved files + actionName = actionName.Equals("Renamed") ? "Moved" : actionName; + var iconElement = new Image + { + name = "FileIcon", + image = EditorGUIUtility.LoadIcon("Icons/Collab." + prefix + actionName + ".png") + }; + return iconElement; + } + } +} diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.collab-proxy@1.2.15/Editor/Collab/Views/CollabHistoryDropDownItem.cs.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.collab-proxy@1.2.15/Editor/Collab/Views/CollabHistoryDropDownItem.cs.meta" new file mode 100644 index 00000000..10bf40eb --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.collab-proxy@1.2.15/Editor/Collab/Views/CollabHistoryDropDownItem.cs.meta" @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: d912d4873af534bd4a9d44bf1b52f14e +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.collab-proxy@1.2.15/Editor/Collab/Views/CollabHistoryItem.cs" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.collab-proxy@1.2.15/Editor/Collab/Views/CollabHistoryItem.cs" new file mode 100644 index 00000000..24e5d1dd --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.collab-proxy@1.2.15/Editor/Collab/Views/CollabHistoryItem.cs" @@ -0,0 +1,229 @@ +using System; +using System.Linq; +using System.Security.Cryptography; +using UnityEditor.Connect; +using UnityEditor.Web; +using UnityEngine; + +#if UNITY_2019_1_OR_NEWER +using UnityEngine.UIElements; +#else +using UnityEngine.Experimental.UIElements; +using UnityEngine.Experimental.UIElements.StyleEnums; +#endif + +namespace UnityEditor.Collaboration +{ + internal class CollabHistoryItem : VisualElement + { + public static RevisionAction s_OnRestore; + public static RevisionAction s_OnGoBack; + public static RevisionAction s_OnUpdate; + public static ShowBuildAction s_OnShowBuild; + public static Action s_OnShowServices; + + private readonly string m_RevisionId; + private readonly string m_FullDescription; + private readonly DateTime m_TimeStamp; + private readonly Button m_Button; + private readonly HistoryProgressSpinner m_ProgressSpinner; + private VisualElement m_ActionsTray; + private VisualElement m_Details; + private Label m_Description; + private Label m_TimeAgo; + private readonly Button m_ExpandCollapseButton; + private bool m_Expanded; + + private const int kMaxDescriptionChars = 500; + + public bool RevisionActionsEnabled + { + set + { + m_Button.SetEnabled(value); + } + } + + public DateTime timeStamp + { + get { return m_TimeStamp; } + } + + public CollabHistoryItem(RevisionData data) + { + m_RevisionId = data.id; + m_TimeStamp = data.timeStamp; + name = "HistoryItem"; + m_ActionsTray = new VisualElement {name = "HistoryItemActionsTray"}; + m_ProgressSpinner = new HistoryProgressSpinner(); + m_Details = new VisualElement {name = "HistoryDetail"}; + var author = new Label(data.authorName) {name = "Author"}; + m_TimeAgo = new Label(TimeAgo.GetString(m_TimeStamp)); + m_FullDescription = data.comment; + var shouldTruncate = ShouldTruncateDescription(m_FullDescription); + if (shouldTruncate) + { + m_Description = new Label(GetTruncatedDescription(m_FullDescription)); + } + else + { + m_Description = new Label(m_FullDescription); + } + m_Description.name = "RevisionDescription"; + var dropdown = new CollabHistoryDropDown(data.changes, data.changesTotal, data.changesTruncated, data.id); + if (data.current) + { + m_Button = new Button(Restore) {name = "ActionButton", text = "Restore"}; + } + else if (data.obtained) + { + m_Button = new Button(GoBackTo) {name = "ActionButton", text = "Go back to..."}; + } + else + { + m_Button = new Button(UpdateTo) {name = "ActionButton", text = "Update"}; + } + m_Button.SetEnabled(data.enabled); + m_ProgressSpinner.ProgressEnabled = data.inProgress; + + m_ActionsTray.Add(m_ProgressSpinner); + m_ActionsTray.Add(m_Button); + + m_Details.Add(author); + m_Details.Add(m_TimeAgo); + m_Details.Add(m_Description); + + if (shouldTruncate) + { + m_ExpandCollapseButton = new Button(ToggleDescription) { name = "ToggleDescription", text = "Show More" }; + m_Details.Add(m_ExpandCollapseButton); + } + + if (data.buildState != BuildState.None) + { + BuildStatusButton buildButton; + if (data.buildState == BuildState.Configure) + buildButton = new BuildStatusButton(ShowServicePage); + else + buildButton = new BuildStatusButton(ShowBuildForCommit, data.buildState, data.buildFailures); + + m_Details.Add(buildButton); + } + + m_Details.Add(m_ActionsTray); + m_Details.Add(dropdown); + + Add(m_Details); + + this.schedule.Execute(UpdateTimeAgo).Every(1000 * 20); + } + + public static void SetUpCallbacks(RevisionAction Restore, RevisionAction GoBack, RevisionAction Update) + { + s_OnRestore = Restore; + s_OnGoBack = GoBack; + s_OnUpdate = Update; + } + + public void SetInProgressStatus(string revisionIdInProgress) + { + if (String.IsNullOrEmpty(revisionIdInProgress)) + { + m_Button.SetEnabled(true); + m_ProgressSpinner.ProgressEnabled = false; + } + else + { + m_Button.SetEnabled(false); + if (m_RevisionId.Equals(revisionIdInProgress)) + { + m_ProgressSpinner.ProgressEnabled = true; + } + } + } + + void ShowBuildForCommit() + { + CollabAnalytics.SendUserAction(CollabAnalytics.historyCategoryString, "ShowBuild"); + if (s_OnShowBuild != null) + { + s_OnShowBuild(m_RevisionId); + } + } + + void ShowServicePage() + { + CollabAnalytics.SendUserAction(CollabAnalytics.historyCategoryString, "ShowServices"); + if (s_OnShowServices != null) + { + s_OnShowServices(); + } + } + + void Restore() + { + CollabAnalytics.SendUserAction(CollabAnalytics.historyCategoryString, "Restore"); + if (s_OnRestore != null) + { + s_OnRestore(m_RevisionId, false); + } + } + + void GoBackTo() + { + CollabAnalytics.SendUserAction(CollabAnalytics.historyCategoryString, "GoBackTo"); + if (s_OnGoBack != null) + { + s_OnGoBack(m_RevisionId, false); + } + } + + void UpdateTo() + { + CollabAnalytics.SendUserAction(CollabAnalytics.historyCategoryString, "Update"); + if (s_OnUpdate != null) + { + s_OnUpdate(m_RevisionId, true); + } + } + + void UpdateTimeAgo() + { + m_TimeAgo.text = TimeAgo.GetString(m_TimeStamp); + } + + bool ShouldTruncateDescription(string description) + { + return description.Contains(Environment.NewLine) || description.Length > kMaxDescriptionChars; + } + + string GetTruncatedDescription(string description) + { + string result = description.Contains(Environment.NewLine) ? + description.Substring(0, description.IndexOf(Environment.NewLine)) : description; + if (result.Length > kMaxDescriptionChars) + { + result = result.Substring(0, kMaxDescriptionChars) + "..."; + } + return result; + } + + void ToggleDescription() + { + if (m_Expanded) + { + CollabAnalytics.SendUserAction(CollabAnalytics.historyCategoryString, "CollapseDescription"); + m_Expanded = false; + m_ExpandCollapseButton.text = "Show More"; + m_Description.text = GetTruncatedDescription(m_FullDescription); + } + else + { + CollabAnalytics.SendUserAction(CollabAnalytics.historyCategoryString, "ExpandDescription"); + m_Expanded = true; + m_ExpandCollapseButton.text = "Show Less"; + m_Description.text = m_FullDescription; + } + } + } +} diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.collab-proxy@1.2.15/Editor/Collab/Views/CollabHistoryItem.cs.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.collab-proxy@1.2.15/Editor/Collab/Views/CollabHistoryItem.cs.meta" new file mode 100644 index 00000000..290bd28e --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.collab-proxy@1.2.15/Editor/Collab/Views/CollabHistoryItem.cs.meta" @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: c4c1445ee948a4124bfa9fb818a17e36 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.collab-proxy@1.2.15/Editor/Collab/Views/CollabHistoryItemFactory.cs" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.collab-proxy@1.2.15/Editor/Collab/Views/CollabHistoryItemFactory.cs" new file mode 100644 index 00000000..e7d7aa6c --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.collab-proxy@1.2.15/Editor/Collab/Views/CollabHistoryItemFactory.cs" @@ -0,0 +1,121 @@ +using System; +using System.Collections.Generic; +using System.Linq; +using UnityEditor.Collaboration; +using UnityEngine; + +#if UNITY_2019_1_OR_NEWER +using UnityEngine.UIElements; +#else +using UnityEngine.Experimental.UIElements; +using UnityEngine.Experimental.UIElements.StyleEnums; +#endif + + +namespace UnityEditor.Collaboration +{ + internal class CollabHistoryItemFactory : ICollabHistoryItemFactory + { + const int k_MaxChangesPerRevision = 10; + + public IEnumerable GenerateElements(IEnumerable revisions, int totalRevisions, int startIndex, string tipRev, string inProgressRevision, bool revisionActionsEnabled, bool buildServiceEnabled, string currentUser) + { + int index = startIndex; + + foreach (var rev in revisions) + { + index++; + var current = rev.revisionID == tipRev; + + // Calculate build status + BuildState buildState = BuildState.None; + int buildFailures = 0; + if (rev.buildStatuses != null && rev.buildStatuses.Length > 0) + { + bool inProgress = false; + foreach (CloudBuildStatus buildStatus in rev.buildStatuses) + { + if (buildStatus.complete) + { + if (!buildStatus.success) + { + buildFailures++; + } + } + else + { + inProgress = true; + break; + } + } + + if (inProgress) + { + buildState = BuildState.InProgress; + } + else if (buildFailures > 0) + { + buildState = BuildState.Failed; + } + else + { + buildState = BuildState.Success; + } + } + else if (current && !buildServiceEnabled) + { + buildState = BuildState.Configure; + } + + // Calculate the number of changes performed on files and folders (not meta files) + var paths = new Dictionary(); + foreach (ChangeAction change in rev.entries) + { + if (change.path.EndsWith(".meta")) + { + var path = change.path.Substring(0, change.path.Length - 5); + // Actions taken on meta files are secondary to any actions taken on the main file + if (!paths.ContainsKey(path)) + paths[path] = new ChangeData() {path = path, action = change.action}; + } + else + { + paths[change.path] = new ChangeData() {path = change.path, action = change.action}; + } + } + + var displayName = (rev.author != currentUser) ? rev.authorName : "You"; + + var item = new RevisionData + { + id = rev.revisionID, + index = totalRevisions - index + 1, + timeStamp = TimeStampToDateTime(rev.timeStamp), + authorName = displayName, + comment = rev.comment, + + obtained = rev.isObtained, + current = current, + inProgress = (rev.revisionID == inProgressRevision), + enabled = revisionActionsEnabled, + + buildState = buildState, + buildFailures = buildFailures, + + changes = paths.Values.Take(k_MaxChangesPerRevision).ToList(), + changesTotal = paths.Values.Count, + changesTruncated = paths.Values.Count > k_MaxChangesPerRevision, + }; + + yield return item; + } + } + + private static DateTime TimeStampToDateTime(double timeStamp) + { + DateTime dateTime = new DateTime(1970, 1, 1, 0, 0, 0, 0, DateTimeKind.Utc); + dateTime = dateTime.AddSeconds(timeStamp).ToLocalTime(); + return dateTime; + } + } +} diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.collab-proxy@1.2.15/Editor/Collab/Views/CollabHistoryItemFactory.cs.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.collab-proxy@1.2.15/Editor/Collab/Views/CollabHistoryItemFactory.cs.meta" new file mode 100644 index 00000000..3250d966 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.collab-proxy@1.2.15/Editor/Collab/Views/CollabHistoryItemFactory.cs.meta" @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: fc46f91ea1e8e4ca2ab693fef9156dbe +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.collab-proxy@1.2.15/Editor/Collab/Views/CollabHistoryRevisionLine.cs" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.collab-proxy@1.2.15/Editor/Collab/Views/CollabHistoryRevisionLine.cs" new file mode 100644 index 00000000..2b8fe652 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.collab-proxy@1.2.15/Editor/Collab/Views/CollabHistoryRevisionLine.cs" @@ -0,0 +1,94 @@ +using System; +using UnityEditor; +using UnityEditor.Collaboration; +using UnityEngine; + +#if UNITY_2019_1_OR_NEWER +using UnityEngine.UIElements; +#else +using UnityEngine.Experimental.UIElements; +#endif + +namespace UnityEditor.Collaboration +{ + internal class CollabHistoryRevisionLine : VisualElement + { + public CollabHistoryRevisionLine(int number) + { + AddNumber(number); + AddLine("topLine"); + AddLine("bottomLine"); + AddIndicator(); + } + + public CollabHistoryRevisionLine(DateTime date, bool isFullDateObtained) + { + AddLine(isFullDateObtained ? "obtainedDateLine" : "absentDateLine"); + AddHeader(GetFormattedHeader(date)); + AddToClassList("revisionLineHeader"); + } + + private void AddHeader(string content) + { + Add(new Label + { + text = content + }); + } + + private void AddIndicator() + { + Add(new VisualElement + { + name = "RevisionIndicator" + }); + } + + private void AddLine(string className = null) + { + var line = new VisualElement + { + name = "RevisionLine" + }; + if (!String.IsNullOrEmpty(className)) + { + line.AddToClassList(className); + } + Add(line); + } + + private void AddNumber(int number) + { + Add(new Label + { + text = number.ToString(), + name = "RevisionIndex" + }); + } + + private string GetFormattedHeader(DateTime date) + { + string result = "Commits on " + date.ToString("MMM d"); + switch (date.Day) + { + case 1: + case 21: + case 31: + result += "st"; + break; + case 2: + case 22: + result += "nd"; + break; + case 3: + case 23: + result += "rd"; + break; + default: + result += "th"; + break; + } + return result; + } + } +} diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.collab-proxy@1.2.15/Editor/Collab/Views/CollabHistoryRevisionLine.cs.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.collab-proxy@1.2.15/Editor/Collab/Views/CollabHistoryRevisionLine.cs.meta" new file mode 100644 index 00000000..2659a3c3 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.collab-proxy@1.2.15/Editor/Collab/Views/CollabHistoryRevisionLine.cs.meta" @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 3c737f7a9d78541d1ab25f28f045dd32 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.collab-proxy@1.2.15/Editor/Collab/Views/HistoryProgressSpinner.cs" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.collab-proxy@1.2.15/Editor/Collab/Views/HistoryProgressSpinner.cs" new file mode 100644 index 00000000..fad3b824 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.collab-proxy@1.2.15/Editor/Collab/Views/HistoryProgressSpinner.cs" @@ -0,0 +1,69 @@ +using UnityEngine; + +#if UNITY_2019_1_OR_NEWER +using UnityEngine.UIElements; +#else +using UnityEngine.Experimental.UIElements; +#endif + +namespace UnityEditor.Collaboration +{ + internal class HistoryProgressSpinner : Image + { + private readonly Texture2D[] m_StatusWheelTextures; + private bool m_ProgressEnabled; + private IVisualElementScheduledItem m_Animation; + + public bool ProgressEnabled + { + set + { + if (m_ProgressEnabled == value) + return; + + m_ProgressEnabled = value; + visible = value; + + + if (value) + { + if (m_Animation == null) + { + m_Animation = this.schedule.Execute(AnimateProgress).Every(33); + } + else + { + m_Animation.Resume(); + } + } + else + { + if (m_Animation != null) + { + m_Animation.Pause(); + } + } + } + } + + public HistoryProgressSpinner() + { + m_StatusWheelTextures = new Texture2D[12]; + for (int i = 0; i < 12; i++) + { + m_StatusWheelTextures[i] = EditorGUIUtility.LoadIcon("WaitSpin" + i.ToString("00")); + } + image = m_StatusWheelTextures[0]; + style.width = m_StatusWheelTextures[0].width; + style.height = m_StatusWheelTextures[0].height; + visible = false; + } + + private void AnimateProgress(TimerState obj) + { + int frame = (int)Mathf.Repeat(Time.realtimeSinceStartup * 10, 11.99f); + image = m_StatusWheelTextures[frame]; + MarkDirtyRepaint(); + } + } +} diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.collab-proxy@1.2.15/Editor/Collab/Views/HistoryProgressSpinner.cs.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.collab-proxy@1.2.15/Editor/Collab/Views/HistoryProgressSpinner.cs.meta" new file mode 100644 index 00000000..0ded4e8a --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.collab-proxy@1.2.15/Editor/Collab/Views/HistoryProgressSpinner.cs.meta" @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: cf6aca931950a4a6a886e214e9e649c4 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.collab-proxy@1.2.15/Editor/Collab/Views/ICollabHistoryItemFactory.cs" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.collab-proxy@1.2.15/Editor/Collab/Views/ICollabHistoryItemFactory.cs" new file mode 100644 index 00000000..03239a33 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.collab-proxy@1.2.15/Editor/Collab/Views/ICollabHistoryItemFactory.cs" @@ -0,0 +1,17 @@ +using System; +using System.Collections.Generic; +using UnityEditor.Collaboration; + +#if UNITY_2019_1_OR_NEWER +using UnityEngine.UIElements; +#else +using UnityEngine.Experimental.UIElements; +#endif + +namespace UnityEditor.Collaboration +{ + internal interface ICollabHistoryItemFactory + { + IEnumerable GenerateElements(IEnumerable revsRevisions, int mTotalRevisions, int startIndex, string tipRev, string inProgressRevision, bool revisionActionsEnabled, bool buildServiceEnabled, string currentUser); + } +} diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.collab-proxy@1.2.15/Editor/Collab/Views/ICollabHistoryItemFactory.cs.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.collab-proxy@1.2.15/Editor/Collab/Views/ICollabHistoryItemFactory.cs.meta" new file mode 100644 index 00000000..08e90856 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.collab-proxy@1.2.15/Editor/Collab/Views/ICollabHistoryItemFactory.cs.meta" @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 821f5482c5a3f4389885f4432433f56f +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.collab-proxy@1.2.15/Editor/Collab/Views/PagedListView.cs" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.collab-proxy@1.2.15/Editor/Collab/Views/PagedListView.cs" new file mode 100644 index 00000000..472a70e7 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.collab-proxy@1.2.15/Editor/Collab/Views/PagedListView.cs" @@ -0,0 +1,192 @@ +using System; +using System.Collections.Generic; + +#if UNITY_2019_1_OR_NEWER +using UnityEngine.UIElements; +#else +using UnityEngine.Experimental.UIElements; +using UnityEngine.Experimental.UIElements.StyleEnums; +#endif + +namespace UnityEditor.Collaboration +{ + internal interface IPagerData + { + int curPage { get; } + int totalPages { get; } + PageChangeAction OnPageChanged { get; } + } + + internal class PagerElement : VisualElement + { + IPagerData m_Data; + readonly Label m_PageText; + readonly Button m_DownButton; + readonly Button m_UpButton; + + public PagerElement(IPagerData dataSource) + { + m_Data = dataSource; + + this.style.flexDirection = FlexDirection.Row; + this.style.alignSelf = Align.Center; + + Add(m_DownButton = new Button(OnPageDownClicked) {text = "\u25c5 Newer"}); + m_DownButton.AddToClassList("PagerDown"); + + m_PageText = new Label(); + m_PageText.AddToClassList("PagerLabel"); + Add(m_PageText); + + Add(m_UpButton = new Button(OnPageUpClicked) {text = "Older \u25bb"}); + m_UpButton.AddToClassList("PagerUp"); + + UpdateControls(); + } + + void OnPageDownClicked() + { + CollabAnalytics.SendUserAction(CollabAnalytics.historyCategoryString, "NewerPage"); + m_Data.OnPageChanged(m_Data.curPage - 1); + } + + void OnPageUpClicked() + { + CollabAnalytics.SendUserAction(CollabAnalytics.historyCategoryString, "OlderPage"); + m_Data.OnPageChanged(m_Data.curPage + 1); + } + + public void Refresh() + { + UpdateControls(); + } + + void UpdateControls() + { + var curPage = m_Data.curPage; + var totalPages = m_Data.totalPages; + + m_PageText.text = (curPage + 1) + " / " + totalPages; + m_DownButton.SetEnabled(curPage > 0); + m_UpButton.SetEnabled(curPage < totalPages - 1); + } + } + + internal enum PagerLocation + { + Top, + Bottom, + } + + internal class PagedListView : VisualElement, IPagerData + { + public const int DefaultItemsPerPage = 10; + + readonly VisualElement m_ItemContainer; + readonly PagerElement m_PagerTop, m_PagerBottom; + int m_PageSize = DefaultItemsPerPage; + IEnumerable m_Items; + int m_TotalItems; + int m_CurPage; + + public int pageSize + { + set { m_PageSize = value; } + } + + public IEnumerable items + { + set + { + m_Items = value; + LayoutItems(); + } + } + + public int totalItems + { + set + { + if (m_TotalItems == value) + return; + + m_TotalItems = value; + UpdatePager(); + } + } + + public PageChangeAction OnPageChanged { get; set; } + + public PagedListView() + { + m_PagerTop = new PagerElement(this); + + m_ItemContainer = new VisualElement() + { + name = "PagerItems", + }; + Add(m_ItemContainer); + m_Items = new List(); + + m_PagerBottom = new PagerElement(this); + } + + void LayoutItems() + { + m_ItemContainer.Clear(); + foreach (var item in m_Items) + { + m_ItemContainer.Add(item); + } + } + + void UpdatePager() + { + if (m_PagerTop.parent != this && totalPages > 1 && curPage > 0) + Insert(0, m_PagerTop); + if (m_PagerTop.parent == this && (totalPages <= 1 || curPage == 0)) + Remove(m_PagerTop); + + if (m_PagerBottom.parent != this && totalPages > 1) + Add(m_PagerBottom); + if (m_PagerBottom.parent == this && totalPages <= 1) + Remove(m_PagerBottom); + + m_PagerTop.Refresh(); + m_PagerBottom.Refresh(); + } + + int pageCount + { + get + { + var pages = m_TotalItems / m_PageSize; + if (m_TotalItems % m_PageSize > 0) + pages++; + + return pages; + } + } + + public int curPage + { + get { return m_CurPage; } + set + { + m_CurPage = value; + UpdatePager(); + } + } + + public int totalPages + { + get + { + var extraPage = 0; + if (m_TotalItems % m_PageSize > 0) + extraPage = 1; + return m_TotalItems / m_PageSize + extraPage; + } + } + } +} diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.collab-proxy@1.2.15/Editor/Collab/Views/PagedListView.cs.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.collab-proxy@1.2.15/Editor/Collab/Views/PagedListView.cs.meta" new file mode 100644 index 00000000..565f7a2e --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.collab-proxy@1.2.15/Editor/Collab/Views/PagedListView.cs.meta" @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 50de529b6a28f4a7093045e08810a5df +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.collab-proxy@1.2.15/Editor/Collab/Views/StatusView.cs" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.collab-proxy@1.2.15/Editor/Collab/Views/StatusView.cs" new file mode 100644 index 00000000..9b50e7a5 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.collab-proxy@1.2.15/Editor/Collab/Views/StatusView.cs" @@ -0,0 +1,88 @@ +using System; +using UnityEditor; +using UnityEngine; + +#if UNITY_2019_1_OR_NEWER +using UnityEngine.UIElements; +#else +using UnityEngine.Experimental.UIElements; +using UnityEngine.Experimental.UIElements.StyleEnums; +#endif + +namespace UnityEditor.Collaboration +{ + internal class StatusView : VisualElement + { + Image m_Image; + Label m_Message; + Button m_Button; + Action m_Callback; + + public Texture icon + { + get { return m_Image.image; } + set + { + m_Image.image = value; + m_Image.visible = value != null; + // Until "display: hidden" is added, this is the only way to hide an element + m_Image.style.height = value != null ? 150 : 0; + } + } + + public string message + { + get { return m_Message.text; } + set + { + m_Message.text = value; + m_Message.visible = value != null; + } + } + + public string buttonText + { + get { return m_Button.text; } + set + { + m_Button.text = value; + UpdateButton(); + } + } + + public Action callback + { + get { return m_Callback; } + set + { + m_Callback = value; + UpdateButton(); + } + } + + public StatusView() + { + name = "StatusView"; + + this.StretchToParentSize(); + + m_Image = new Image() { name = "StatusIcon", visible = false, style = { height = 0f }}; + m_Message = new Label() { name = "StatusMessage", visible = false}; + m_Button = new Button(InternalCallaback) { name = "StatusButton", visible = false}; + + Add(m_Image); + Add(m_Message); + Add(m_Button); + } + + private void UpdateButton() + { + m_Button.visible = m_Button.text != null && m_Callback != null; + } + + private void InternalCallaback() + { + m_Callback(); + } + } +} diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.collab-proxy@1.2.15/Editor/Collab/Views/StatusView.cs.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.collab-proxy@1.2.15/Editor/Collab/Views/StatusView.cs.meta" new file mode 100644 index 00000000..bb634b19 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.collab-proxy@1.2.15/Editor/Collab/Views/StatusView.cs.meta" @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 08e9894bdf0834710b22d3c0aa245ac0 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.collab-proxy@1.2.15/Editor/Resources.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.collab-proxy@1.2.15/Editor/Resources.meta" new file mode 100644 index 00000000..01229c29 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.collab-proxy@1.2.15/Editor/Resources.meta" @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: a6ab6fd2b91214e8a9c8ec2224a528de +folderAsset: yes +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.collab-proxy@1.2.15/Editor/Resources/Styles.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.collab-proxy@1.2.15/Editor/Resources/Styles.meta" new file mode 100644 index 00000000..0ff03824 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.collab-proxy@1.2.15/Editor/Resources/Styles.meta" @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 6b1ae1e78552c459d9ce27048ff51c7f +folderAsset: yes +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.collab-proxy@1.2.15/Editor/Resources/Styles/CollabHistoryCommon.uss" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.collab-proxy@1.2.15/Editor/Resources/Styles/CollabHistoryCommon.uss" new file mode 100644 index 00000000..39684933 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.collab-proxy@1.2.15/Editor/Resources/Styles/CollabHistoryCommon.uss" @@ -0,0 +1,259 @@ +.unity-button { + min-height:unset; + -unity-text-align:middle-center; + margin-left:4px; + margin-top:3px; + margin-right:4px; + margin-bottom:3px; + border-left-width:6px; + border-top-width:4px; + border-right-width:6px; + border-bottom-width:4px; + padding-left:6 px; + padding-top:2 px; + padding-right:6 px; + padding-bottom:3 px; +} + +.unity-label { + overflow: hidden; + margin-left:4px; + margin-top:2px; + margin-right:4px; + margin-bottom:2px; + padding-left:2 px; + padding-top:1 px; + min-height: unset; +} + +#HistoryContainer { + flex: 1 0 0; +} + +#HistoryItem { + flex: 1 0 0; + flex-direction: row; +} + +#HistoryDetail { + margin-top: 10px; + margin-left: 10px; + margin-bottom: 10px; + margin-right: 10px; + padding-top: 4px; + flex: 1 0 0; +} + +#Author { + -unity-font-style: bold; + font-size: 12px; +} + +#HistoryDetail > Button { + align-self: flex-end; +} + +CollabHistoryRevisionLine { + width: 40px; +} + +#RevisionLine { + flex: 1 0 0; + margin-left: 35px; + width: 1.5px; +} + +#RevisionLine.topLine { + height: 20px; + flex: 0 0 auto; +} + +#RevisionLine.absentDateLine { + background-color: #797676; +} + +.absentRevision #RevisionLine { + background-color: #797676; +} + +.currentRevision #RevisionLine.topLine { + background-color: #797676; +} + +#RevisionIndex { + position: absolute; + min-width: 23px; + -unity-text-align: middle-right; + top: 15.8px; + font-size: 9px; +} + +#RevisionIndicator { + position: absolute; + background-color: #000; + border-radius: 3px; + width: 8px; + height: 8px; + border-bottom-width: 2px; + border-left-width: 2px; + border-right-width: 2px; + border-top-width: 2px; + top: 20px; + left: 32px; +} + +.revisionLineHeader { + width: 200px; + height: 20px; +} + +.revisionLineHeader > .unity-label { + position: absolute; + margin-left: 47px; + margin-top: 3px; +} + +#PagerItems { + flex-direction: column; +} + +PagerElement > .unity-label { + margin-top: 8px; +} + +.absentRevision #RevisionIndicator { + border-color: #797676; +} + +.absentRevision #RevisionIndex { + color: #797676; +} + +.currentRevision #HistoryDetail { + border-top-width: 2px; +} + +#HistoryItem #RevisionDescription { + white-space: normal; +} + +#HistoryItem #ToggleDescription { + align-self: flex-start; + padding-top: 0; + padding-left: 0; + padding-right: 0; + padding-bottom: 2; +} + +#HistoryItem #ActionButton { + position: absolute; + right: 0; +} + +#HistoryItem #BuildIcon { + width: 16px; + height: 13px; +} + +#HistoryItemActionsTray { + flex: 1 0 0; + flex-direction: row; + align-items: center; + height: 38px; + margin-left: 10px; + margin-right: 10px; +} + +CollabHistoryDropDown { + border-top-width: 1px; +} + +CollabHistoryDropDown > .unity-label { + padding-top: 10px; + padding-bottom: 10px; +} + +CollabHistoryDropDownItem { + flex-direction: row; + border-top-width: 1px; + overflow: hidden; +} + +#FileIcon { + align-self: center; + width: 26px; + height: 26px; +} + +#FileName { + -unity-font-style: bold; + padding-bottom: 0; + margin-bottom: 0; +} + +#FileIcon { + padding-top: 0; + margin-top: 0; +} + +#ErrorBar { + height: 24px; + background-color: #ff0000; + color: #000; + font-size: 12px; +} + +#ErrorBar > #CloseButton { + position: absolute; + right: 0; + top: 0; + width: 24px; + height: 24; + color: #000; + font-size: 18px; + -unity-font-style: bold; +} + +#StatusView { + flex-direction: column; + justify-content: center; + align-self: center; + align-items: center; + flex: 1 0 0; +} + +#StatusView > #StatusIcon { + width: 115px; + height: 150px; +} + +#StatusView > #StatusMessage { + font-size: 22px; + width: 230px; + white-space: normal; + -unity-text-align: middle-center; +} + +#StatusView > #StatusButton { + font-size: 12px; + margin-top: 20px; + background-image: none; + width: 108px; + height: 29px; +} + +BuildStatusButton.unity-button { + flex-direction: row; + align-self: flex-end; + align-items: center; + margin-right: 10px; + padding-left:unset; + padding-top:unset; + padding-right:unset; + padding-bottom:unset; +} + +BuildStatusButton.unity-button .unity-label { + padding-left: 2px; +} + diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.collab-proxy@1.2.15/Editor/Resources/Styles/CollabHistoryCommon.uss.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.collab-proxy@1.2.15/Editor/Resources/Styles/CollabHistoryCommon.uss.meta" new file mode 100644 index 00000000..035b6621 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.collab-proxy@1.2.15/Editor/Resources/Styles/CollabHistoryCommon.uss.meta" @@ -0,0 +1,10 @@ +fileFormatVersion: 2 +guid: 3a2d94c8977984b67984caeff9fa666e +ScriptedImporter: + fileIDToRecycleName: + 11400000: stylesheet + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: + script: {fileID: 12385, guid: 0000000000000000e000000000000000, type: 0} diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.collab-proxy@1.2.15/Editor/Resources/Styles/CollabHistoryDark.uss" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.collab-proxy@1.2.15/Editor/Resources/Styles/CollabHistoryDark.uss" new file mode 100644 index 00000000..de436f89 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.collab-proxy@1.2.15/Editor/Resources/Styles/CollabHistoryDark.uss" @@ -0,0 +1,86 @@ +#HistoryContainer { + background-color: #292929; +} + +.obtainedRevision #HistoryDetail { + background-color: #333; +} + +.absentRevision #HistoryDetail { + background-color: #595959; +} + +#StatusView { + background-color: #292929; +} + +#StatusView > #StatusMessage { + color: #959995; +} + +BuildStatusButton.unity-button { + color: #B4B4B4; + background-image: resource("Builtin Skins/DarkSkin/Images/btn.png"); +} + +BuildStatusButton.unity-button:hover { + color: #FFF; +} + +BuildStatusButton.unity-button:hover:active { + background-image: resource("Builtin Skins/DarkSkin/Images/btn act.png"); +} + +BuildStatusButton.unity-button:checked { + color: #F0F0F0; + background-image: resource("Builtin Skins/DarkSkin/Images/btn on.png"); +} + +BuildStatusButton.unity-button:hover:checked { + color: #FFF; +} + +BuildStatusButton.unity-button:hover:active:checked { + background-image: resource("Builtin Skins/DarkSkin/Images/btn onact.png"); +} + +BuildStatusButton.unity-button:focus:checked { + background-image: resource("Builtin Skins/DarkSkin/Images/btn on focus.png"); +} + +CollabHistoryDropDown { + border-color: #292929; +} + +CollabHistoryDropDownItem { + border-color: #292929; +} + +#RevisionLine.obtainedDateLine { + background-color: #0cb4cc; +} + +.obtainedRevision #RevisionLine { + background-color: #0cb4cc; +} + +#RevisionIndex { + color: #0cb4cc; +} + +#RevisionIndicator { + border-color: #0cb4cc; +} + +.currentRevision #RevisionIndicator { + background-color: #0cb4cc; +} + +.currentRevision #HistoryDetail { + border-color: #0cb4cc; +} + +#StatusView > #StatusButton { + background-color: #0cb4cc; + border-color: #0cb4cc; +} diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.collab-proxy@1.2.15/Editor/Resources/Styles/CollabHistoryDark.uss.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.collab-proxy@1.2.15/Editor/Resources/Styles/CollabHistoryDark.uss.meta" new file mode 100644 index 00000000..35a7d097 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.collab-proxy@1.2.15/Editor/Resources/Styles/CollabHistoryDark.uss.meta" @@ -0,0 +1,10 @@ +fileFormatVersion: 2 +guid: 70d4d75a2877243758b0750cbc75b6eb +ScriptedImporter: + fileIDToRecycleName: + 11400000: stylesheet + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: + script: {fileID: 12385, guid: 0000000000000000e000000000000000, type: 0} diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.collab-proxy@1.2.15/Editor/Resources/Styles/CollabHistoryLight.uss" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.collab-proxy@1.2.15/Editor/Resources/Styles/CollabHistoryLight.uss" new file mode 100644 index 00000000..3f9b85f3 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.collab-proxy@1.2.15/Editor/Resources/Styles/CollabHistoryLight.uss" @@ -0,0 +1,86 @@ +#HistoryContainer { + background-color: #a2a2a2; +} + +.obtainedRevision #HistoryDetail { + background-color: #c2c2c2; +} + +.absentRevision #HistoryDetail { + background-color: #dedede; +} + +#StatusView { + background-color: #a2a2a3; +} + +#StatusView > #StatusMessage { + color: #000; +} + +BuildStatusButton.unity-button { + color: #111; + background-image: resource("Builtin Skins/LightSkin/Images/btn.png"); +} + +BuildStatusButton.unity-button:hover { + color: #000; +} + +BuildStatusButton.unity-button:hover:active { + background-image: resource("Builtin Skins/LightSkin/Images/btn act.png"); +} + +BuildStatusButton.unity-button:checked { + color: #F0F0F0; + background-image: resource("Builtin Skins/LightSkin/Images/btn on.png"); +} + +BuildStatusButton.unity-button:hover:checked { + color: #000; +} + +BuildStatusButton.unity-button:hover:active:checked { + background-image: resource("Builtin Skins/LightSkin/Images/btn onact.png"); +} + +BuildStatusButton.unity-button:focus:checked { + background-image: resource("Builtin Skins/LightSkin/Images/btn on focus.png"); +} + +CollabHistoryDropDown { + border-color: #a2a2a2; +} + +CollabHistoryDropDownItem { + border-color: #a2a2a2; +} + +#RevisionLine.obtainedDateLine { + background-color: #018d98; +} + +.obtainedRevision #RevisionLine { + background-color: #018d98; +} + +#RevisionIndex { + color: #018d98; +} + +#RevisionIndicator { + border-color: #018d98; +} + +.currentRevision #RevisionIndicator { + background-color: #018d98; +} + +.currentRevision #HistoryDetail { + border-color: #018d98; +} + +#StatusView > #StatusButton { + background-color: #018d98; + border-color: #018d98; +} diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.collab-proxy@1.2.15/Editor/Resources/Styles/CollabHistoryLight.uss.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.collab-proxy@1.2.15/Editor/Resources/Styles/CollabHistoryLight.uss.meta" new file mode 100644 index 00000000..28c860e5 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.collab-proxy@1.2.15/Editor/Resources/Styles/CollabHistoryLight.uss.meta" @@ -0,0 +1,10 @@ +fileFormatVersion: 2 +guid: b52bde26a83564960bcb90217f72b910 +ScriptedImporter: + fileIDToRecycleName: + 11400000: stylesheet + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: + script: {fileID: 12385, guid: 0000000000000000e000000000000000, type: 0} diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.collab-proxy@1.2.15/Editor/Unity.CollabProxy.Editor.asmdef" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.collab-proxy@1.2.15/Editor/Unity.CollabProxy.Editor.asmdef" new file mode 100644 index 00000000..66511e1d --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.collab-proxy@1.2.15/Editor/Unity.CollabProxy.Editor.asmdef" @@ -0,0 +1,7 @@ +{ + "name": "Unity.CollabProxy.Editor", + "includePlatforms": [ + "Editor" + ], + "excludePlatforms": [] +} diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.collab-proxy@1.2.15/Editor/Unity.CollabProxy.Editor.asmdef.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.collab-proxy@1.2.15/Editor/Unity.CollabProxy.Editor.asmdef.meta" new file mode 100644 index 00000000..03ebeca0 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.collab-proxy@1.2.15/Editor/Unity.CollabProxy.Editor.asmdef.meta" @@ -0,0 +1,7 @@ +fileFormatVersion: 2 +guid: 645165c8169474bfbbeb8fb0bcfd26f5 +AssemblyDefinitionImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.collab-proxy@1.2.15/LICENSE.md" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.collab-proxy@1.2.15/LICENSE.md" new file mode 100644 index 00000000..31bde4e4 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.collab-proxy@1.2.15/LICENSE.md" @@ -0,0 +1,31 @@ +**Unity Companion Package License v1.0 ("_License_")** + +Copyright © 2017 Unity Technologies ApS ("**_Unity_**") + +Unity hereby grants to you a worldwide, non-exclusive, no-charge, and royalty-free copyright license to reproduce, prepare derivative works of, publicly display, publicly perform, sublicense, and distribute the software that is made available with this License ("**_Software_**"), subject to the following terms and conditions: + +1. *Unity Companion Use Only*. Exercise of the license granted herein is limited to exercise for the creation, use, and/or distribution of applications, software, or other content pursuant to a valid Unity development engine software license ("**_Engine License_**"). That means while use of the Software is not limited to use in the software licensed under the Engine License, the Software may not be used for any purpose other than the creation, use, and/or distribution of Engine License-dependent applications, software, or other content. No other exercise of the license granted herein is permitted. + +1. *No Modification of Engine License*. Neither this License nor any exercise of the license granted herein modifies the Engine License in any way. + +1. *Ownership & Grant Back to You*. + + 3.1. You own your content. In this License, "derivative works" means derivatives of the Software itself--works derived only from the Software by you under this License (for example, modifying the code of the Software itself to improve its efficacy); “derivative works” of the Software do not include, for example, games, apps, or content that you create using the Software. You keep all right, title, and interest to your own content. + + 3.2. Unity owns its content. While you keep all right, title, and interest to your own content per the above, as between Unity and you, Unity will own all right, title, and interest to all intellectual property rights (including patent, trademark, and copyright) in the Software and derivative works of the Software, and you hereby assign and agree to assign all such rights in those derivative works to Unity. + + 3.3. You have a license to those derivative works. Subject to this License, Unity grants to you the same worldwide, non-exclusive, no-charge, and royalty-free copyright license to derivative works of the Software you create as is granted to you for the Software under this License. + +1. *Trademarks*. You are not granted any right or license under this License to use any trademarks, service marks, trade names, products names, or branding of Unity or its affiliates ("**_Trademarks_**"). Descriptive uses of Trademarks are permitted; see, for example, Unity’s Branding Usage Guidelines at [https://unity3d.com/public-relations/brand](https://unity3d.com/public-relations/brand). + +1. *Notices & Third-Party Rights*. This License, including the copyright notice above, must be provided in all substantial portions of the Software and derivative works thereof (or, if that is impracticable, in any other location where such notices are customarily placed). Further, if the Software is accompanied by a Unity "third-party notices" or similar file, you acknowledge and agree that software identified in that file is governed by those separate license terms. + +1. *DISCLAIMER, LIMITATION OF LIABILITY*. THE SOFTWARE AND ANY DERIVATIVE WORKS THEREOF IS PROVIDED ON AN "AS IS" BASIS, AND IS PROVIDED WITHOUT WARRANTY OF ANY KIND, WHETHER EXPRESS OR IMPLIED, INCLUDING ANY WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, AND/OR NONINFRINGEMENT. IN NO EVENT SHALL ANY COPYRIGHT HOLDER OR AUTHOR BE LIABLE FOR ANY CLAIM, DAMAGES (WHETHER DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL, INCLUDING PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES, LOSS OF USE, DATA, OR PROFITS, AND BUSINESS INTERRUPTION), OR OTHER LIABILITY WHATSOEVER, WHETHER IN AN ACTION OF CONTRACT, TORT, OR OTHERWISE, ARISING FROM OR OUT OF, OR IN CONNECTION WITH, THE SOFTWARE OR ANY DERIVATIVE WORKS THEREOF OR THE USE OF OR OTHER DEALINGS IN SAME, EVEN WHERE ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + +1. *USE IS ACCEPTANCE and License Versions*. Your receipt and use of the Software constitutes your acceptance of this License and its terms and conditions. Software released by Unity under this License may be modified or updated and the License with it; upon any such modification or update, you will comply with the terms of the updated License for any use of any of the Software under the updated License. + +1. *Use in Compliance with Law and Termination*. Your exercise of the license granted herein will at all times be in compliance with applicable law and will not infringe any proprietary rights (including intellectual property rights); this License will terminate immediately on any breach by you of this License. + +1. *Severability*. If any provision of this License is held to be unenforceable or invalid, that provision will be enforced to the maximum extent possible and the other provisions will remain in full force and effect. + +1. *Governing Law and Venue*. This License is governed by and construed in accordance with the laws of Denmark, except for its conflict of laws rules; the United Nations Convention on Contracts for the International Sale of Goods will not apply. If you reside (or your principal place of business is) within the United States, you and Unity agree to submit to the personal and exclusive jurisdiction of and venue in the state and federal courts located in San Francisco County, California concerning any dispute arising out of this License ("**_Dispute_**"). If you reside (or your principal place of business is) outside the United States, you and Unity agree to submit to the personal and exclusive jurisdiction of and venue in the courts located in Copenhagen, Denmark concerning any Dispute. diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.collab-proxy@1.2.15/LICENSE.md.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.collab-proxy@1.2.15/LICENSE.md.meta" new file mode 100644 index 00000000..30f5c3a6 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.collab-proxy@1.2.15/LICENSE.md.meta" @@ -0,0 +1,7 @@ +fileFormatVersion: 2 +guid: c754112a02f354a6696fa4f2b99e95a5 +TextScriptImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.collab-proxy@1.2.15/README.md" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.collab-proxy@1.2.15/README.md" new file mode 100644 index 00000000..5cfbd88a --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.collab-proxy@1.2.15/README.md" @@ -0,0 +1,16 @@ +# Collab Proxy UPM Package +This is the packaged version of Collab, currently limited to containing the History and Toolbar windows, along with supporting classes. + +## Development +Check this repository out in your {$PROJECT}/Packages/ folder, under the name com.unity.collab-proxy. The classes will be built by Unity. + +## Testing +In order to run the tests, you will need to add this project to the testables key in your manifest.json - once you have done this, the tests will be picked up by the Unity Test Runner window. + +## Building +You may build this project using msbuild. The commands to do so can be seen under .gitlab-ci.yml. + +## Deploying +Gitlab will automatically build your project when you deploy. You can download the resulting artifact, which will be a dll, and place it in your Editor/bin/ folder. Open the package in Unity to generate the meta files, and then you will be able to publish. + +We're currently looking into a way to avoid this manual process. diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.collab-proxy@1.2.15/README.md.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.collab-proxy@1.2.15/README.md.meta" new file mode 100644 index 00000000..b3ad9937 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.collab-proxy@1.2.15/README.md.meta" @@ -0,0 +1,7 @@ +fileFormatVersion: 2 +guid: ac281230df7b14becb40b3c479f1b429 +TextScriptImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.collab-proxy@1.2.15/Tests.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.collab-proxy@1.2.15/Tests.meta" new file mode 100644 index 00000000..f43ddd35 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.collab-proxy@1.2.15/Tests.meta" @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 1369382d2c5e64dc5b2ec0b6b0a94531 +folderAsset: yes +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.collab-proxy@1.2.15/Tests/Editor.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.collab-proxy@1.2.15/Tests/Editor.meta" new file mode 100644 index 00000000..b80cefdb --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.collab-proxy@1.2.15/Tests/Editor.meta" @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 4506ac79f5b274cb1b249ed7f4abfb9a +folderAsset: yes +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.collab-proxy@1.2.15/Tests/Editor/HistoryTests.cs" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.collab-proxy@1.2.15/Tests/Editor/HistoryTests.cs" new file mode 100644 index 00000000..ba79a204 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.collab-proxy@1.2.15/Tests/Editor/HistoryTests.cs" @@ -0,0 +1,583 @@ +using System; +using System.Collections; +using System.Collections.Generic; +using System.Linq; +using UnityEngine; +using UnityEditor.Collaboration; +using UnityEngine.TestTools; +using NUnit.Framework; + +namespace UnityEditor.Collaboration.Tests +{ + [TestFixture] + internal class HistoryTests + { + private TestHistoryWindow _window; + private TestRevisionsService _service; + private CollabHistoryPresenter _presenter; + + [SetUp] + public void SetUp() + { + _window = new TestHistoryWindow(); + _service = new TestRevisionsService(); + _presenter = new CollabHistoryPresenter(_window, new CollabHistoryItemFactory(), _service); + } + + [TearDown] + public void TearDown() + { + } + + [Test] + public void CollabHistoryPresenter_OnUpdatePage__PropagatesRevisionResult() + { + _service.result = new RevisionsResult() + { + Revisions = new List() + { + new Revision(authorName: "authorName", comment: "comment", revisionID: "revisionID"), + } + }; + + _presenter.OnUpdatePage(0); + var item = _window.items.First(); + + Assert.AreEqual("revisionID", item.id); + Assert.AreEqual("authorName", item.authorName); + Assert.AreEqual("comment", item.comment); + } + + [Test] + public void CollabHistoryPresenter_OnUpdatePage__RevisionNumberingIsInOrder() + { + _service.result = new RevisionsResult() + { + RevisionsInRepo = 4, + Revisions = new List() + { + new Revision(revisionID: "0"), + new Revision(revisionID: "1"), + new Revision(revisionID: "2"), + new Revision(revisionID: "3"), + } + }; + + _presenter.OnUpdatePage(0); + var items = _window.items.ToArray(); + + Assert.AreEqual(4, items[0].index); + Assert.AreEqual(3, items[1].index); + Assert.AreEqual(2, items[2].index); + Assert.AreEqual(1, items[3].index); + } + + [Test] + public void CollabHistoryPresenter_OnUpdatePage__RevisionNumberingChangesForMorePages() + { + _service.result = new RevisionsResult() + { + RevisionsInRepo = 12, + Revisions = new List() + { + new Revision(revisionID: "0"), + new Revision(revisionID: "1"), + new Revision(revisionID: "2"), + new Revision(revisionID: "3"), + new Revision(revisionID: "4"), + } + }; + + _presenter.OnUpdatePage(1); + var items = _window.items.ToArray(); + + Assert.AreEqual(12, items[0].index); + Assert.AreEqual(11, items[1].index); + Assert.AreEqual(10, items[2].index); + Assert.AreEqual(9, items[3].index); + Assert.AreEqual(8, items[4].index); + } + + [Test] + public void CollabHistoryPresenter_OnUpdatePage__ObtainedIsCalculated() + { + _service.result = new RevisionsResult() + { + Revisions = new List() + { + new Revision(isObtained: false), + new Revision(isObtained: true), + } + }; + + _presenter.OnUpdatePage(0); + var items = _window.items.ToArray(); + + Assert.IsFalse(items[0].obtained); + Assert.IsTrue(items[1].obtained); + } + + [Test] + public void CollabHistoryPresenter_OnUpdatePage__CurrentIsCalculated() + { + _service.result = new RevisionsResult() + { + Revisions = new List() + { + new Revision(revisionID: "1"), + new Revision(revisionID: "2"), + new Revision(revisionID: "3"), + } + }; + _service.tipRevision = "2"; + + _presenter.OnUpdatePage(0); + var items = _window.items.ToArray(); + + Assert.AreEqual(false, items[0].current); + Assert.AreEqual(true, items[1].current); + Assert.AreEqual(false, items[2].current); + } + + [Test] + public void CollabHistoryPresenter_OnUpdatePage__InProgressIsCalculated() + { + _service.result = new RevisionsResult() + { + Revisions = new List() + { + new Revision(revisionID: "1"), + new Revision(revisionID: "2"), + new Revision(revisionID: "3"), + } + }; + _window.inProgressRevision = "2"; + + _presenter.OnUpdatePage(0); + var items = _window.items.ToArray(); + + Assert.IsFalse(items[0].inProgress); + Assert.IsTrue(items[1].inProgress); + Assert.IsFalse(items[2].inProgress); + } + + [Test] + public void CollabHistoryPresenter_OnUpdatePage__EnabledIsCalculated() + { + _service.result = new RevisionsResult() + { + Revisions = new List() + { + new Revision(revisionID: "0"), + } + }; + _window.revisionActionsEnabled = true; + + _presenter.OnUpdatePage(0); + var item = _window.items.First(); + + Assert.AreEqual(true, item.enabled); + } + + [Test] + public void CollabHistoryPresenter_OnUpdatePage__DisabledIsCalculated() + { + _service.result = new RevisionsResult() + { + Revisions = new List() + { + new Revision(revisionID: "0"), + } + }; + _window.revisionActionsEnabled = false; + + _presenter.OnUpdatePage(0); + var item = _window.items.First(); + + Assert.AreEqual(false, item.enabled); + } + + [Test] + public void CollabHistoryPresenter_OnUpdatePage__BuildStateHasNoneWhenNotTip() + { + _service.result = new RevisionsResult() + { + Revisions = new List() + { + new Revision(revisionID: "1"), + } + }; + _service.tipRevision = "0"; + _presenter.BuildServiceEnabled = false; + + _presenter.OnUpdatePage(0); + var item = _window.items.First(); + + Assert.AreEqual(BuildState.None, item.buildState); + } + + [Test] + public void CollabHistoryPresenter_OnUpdatePage__BuildStateTipHasNoneWhenEnabled() + { + _service.result = new RevisionsResult() + { + Revisions = new List() + { + new Revision(revisionID: "0"), + } + }; + _service.tipRevision = "0"; + _presenter.BuildServiceEnabled = true; + + _presenter.OnUpdatePage(0); + var item = _window.items.First(); + + Assert.AreEqual(BuildState.None, item.buildState); + } + + [Test] + public void CollabHistoryPresenter_OnUpdatePage__BuildStateHasConfigureWhenTip() + { + _service.result = new RevisionsResult() + { + Revisions = new List() + { + new Revision(revisionID: "0"), + } + }; + _service.tipRevision = "0"; + _presenter.BuildServiceEnabled = false; + + _presenter.OnUpdatePage(0); + var item = _window.items.First(); + + Assert.AreEqual(BuildState.Configure, item.buildState); + } + + [Test] + public void CollabHistoryPresenter_OnUpdatePage__BuildStateHasConfigureWhenZeroBuildStatus() + { + _service.result = new RevisionsResult() + { + Revisions = new List() + { + new Revision(revisionID: "0"), + } + }; + _service.tipRevision = "0"; + _presenter.BuildServiceEnabled = false; + + _presenter.OnUpdatePage(0); + var item = _window.items.First(); + + Assert.AreEqual(BuildState.Configure, item.buildState); + } + + [Test] + public void CollabHistoryPresenter_OnUpdatePage__BuildStateHasNoneWhenZeroBuildStatuses() + { + _service.result = new RevisionsResult() + { + Revisions = new List() + { + new Revision(revisionID: "0"), + } + }; + _service.tipRevision = "0"; + _presenter.BuildServiceEnabled = true; + + _presenter.OnUpdatePage(0); + var item = _window.items.First(); + + Assert.AreEqual(BuildState.None, item.buildState); + } + + [Test] + public void CollabHistoryPresenter_OnUpdatePage__BuildStateHasSuccessWhenCompleteAndSucceeded() + { + _service.result = new RevisionsResult() + { + Revisions = new List() + { + new Revision + ( + revisionID: "0", + buildStatuses: new CloudBuildStatus[1] + { + new CloudBuildStatus(complete: true, success: true), + } + ), + } + }; + _service.tipRevision = "0"; + _presenter.BuildServiceEnabled = true; + + _presenter.OnUpdatePage(0); + var item = _window.items.First(); + + Assert.AreEqual(BuildState.Success, item.buildState); + } + + [Test] + public void CollabHistoryPresenter_OnUpdatePage__BuildStateHasInProgress() + { + _service.result = new RevisionsResult() + { + Revisions = new List() + { + new Revision + ( + revisionID: "0", + buildStatuses: new CloudBuildStatus[1] + { + new CloudBuildStatus(complete: false), + } + ), + } + }; + _service.tipRevision = "0"; + _presenter.BuildServiceEnabled = true; + + _presenter.OnUpdatePage(0); + var item = _window.items.First(); + + Assert.AreEqual(BuildState.InProgress, item.buildState); + } + + [Test] + public void CollabHistoryPresenter_OnUpdatePage__BuildStateHasFailure() + { + _service.result = new RevisionsResult() + { + Revisions = new List() + { + new Revision + ( + revisionID: "0", + buildStatuses: new CloudBuildStatus[1] + { + new CloudBuildStatus(complete: true, success: false), + } + ), + } + }; + _service.tipRevision = "0"; + _presenter.BuildServiceEnabled = true; + + _presenter.OnUpdatePage(0); + var item = _window.items.First(); + + Assert.AreEqual(BuildState.Failed, item.buildState); + } + + [Test] + public void CollabHistoryPresenter_OnUpdatePage__BuildStateHasFailureWhenAnyBuildsFail() + { + _service.result = new RevisionsResult() + { + Revisions = new List() + { + new Revision + ( + revisionID: "0", + buildStatuses: new CloudBuildStatus[3] + { + new CloudBuildStatus(complete: true, success: false), + new CloudBuildStatus(complete: true, success: false), + new CloudBuildStatus(complete: true, success: true), + } + ), + } + }; + _service.tipRevision = "0"; + _presenter.BuildServiceEnabled = true; + + _presenter.OnUpdatePage(0); + var item = _window.items.First(); + + Assert.AreEqual(BuildState.Failed, item.buildState); + } + + [Test] + public void CollabHistoryPresenter_OnUpdatePage__ChangesPropagateThrough() + { + _service.result = new RevisionsResult() + { + Revisions = new List() + { + new Revision(revisionID: "0", entries: GenerateChangeActions(3)), + } + }; + + _presenter.OnUpdatePage(0); + var item = _window.items.First(); + var changes = item.changes.ToList(); + + Assert.AreEqual("Path0", changes[0].path); + Assert.AreEqual("Path1", changes[1].path); + Assert.AreEqual("Path2", changes[2].path); + } + + [Test] + public void CollabHistoryPresenter_OnUpdatePage__ChangesTotalIsCalculated() + { + _service.result = new RevisionsResult() + { + Revisions = new List() + { + new Revision(revisionID: "0", entries: GenerateChangeActions(3)), + } + }; + + _presenter.OnUpdatePage(0); + var item = _window.items.First(); + + Assert.AreEqual(3, item.changes.Count); + } + + [Test] + public void CollabHistoryPresenter_OnUpdatePage__ChangesTruncatedIsCalculated() + { + for (var i = 0; i < 20; i++) + { + _service.result = new RevisionsResult() + { + Revisions = new List() + { + new Revision(revisionID: "0", entries: GenerateChangeActions(i)), + } + }; + + _presenter.OnUpdatePage(0); + var item = _window.items.First(); + + Assert.AreEqual(i > 10, item.changesTruncated); + } + } + + [Test] + public void CollabHistoryPresenter_OnUpdatePage__OnlyKeeps10ChangeActions() + { + _service.result = new RevisionsResult() + { + Revisions = new List() + { + new Revision(authorName: "Test", author: "test", entries: GenerateChangeActions(12)), + } + }; + + _presenter.OnUpdatePage(1); + var item = _window.items.First(); + + Assert.AreEqual(10, item.changes.Count); + Assert.AreEqual(12, item.changesTotal); + Assert.AreEqual(true, item.changesTruncated); + } + + [Test] + public void CollabHistoryPresenter_OnUpdatePage__DeduplicatesMetaFiles() + { + _service.result = new RevisionsResult() + { + Revisions = new List() + { + new Revision + ( + authorName: "Test", + author: "test", + revisionID: "", + entries: new ChangeAction[2] + { + new ChangeAction(path: "Path1", action: "Action1"), + new ChangeAction(path: "Path1.meta", action: "Action1"), + } + ), + } + }; + + _presenter.OnUpdatePage(1); + var item = _window.items.First(); + + Assert.AreEqual(1, item.changes.Count); + Assert.AreEqual(1, item.changesTotal); + Assert.AreEqual("Path1", item.changes.First().path); + } + + [Test] + public void CollabHistoryPresenter_OnUpdatePage__FolderMetaFilesAreCounted() + { + _service.result = new RevisionsResult() + { + Revisions = new List() + { + new Revision + ( + authorName: "Test", + author: "test", + entries: new ChangeAction[1] + { + new ChangeAction(path: "Folder1.meta", action: "Action1"), + } + ), + } + }; + + _presenter.OnUpdatePage(1); + var item = _window.items.First(); + + Assert.AreEqual(1, item.changes.Count); + Assert.AreEqual(1, item.changesTotal); + Assert.AreEqual("Folder1", item.changes.First().path); + } + + private static ChangeAction[] GenerateChangeActions(int count) + { + var entries = new ChangeAction[count]; + for (var i = 0; i < count; i++) + entries[i] = new ChangeAction(path: "Path" + i, action: "Action" + i); + return entries; + } + } + + internal class TestRevisionsService : IRevisionsService + { + public RevisionsResult result; + public event RevisionsDelegate FetchRevisionsCallback; + + public string tipRevision { get; set; } + public string currentUser { get; set; } + + public void GetRevisions(int offset, int count) + { + if(FetchRevisionsCallback != null) + { + FetchRevisionsCallback(result); + } + } + } + + internal class TestHistoryWindow : ICollabHistoryWindow + { + public IEnumerable items; + + public bool revisionActionsEnabled { get; set; } + public int itemsPerPage { get; set; } + public string errMessage { get; set; } + public string inProgressRevision { get; set; } + public PageChangeAction OnPageChangeAction { get; set; } + public RevisionAction OnGoBackAction { get; set; } + public RevisionAction OnUpdateAction { get; set; } + public RevisionAction OnRestoreAction { get; set; } + public ShowBuildAction OnShowBuildAction { get; set; } + public Action OnShowServicesAction { get; set; } + + public void UpdateState(HistoryState state, bool force) + { + } + + public void UpdateRevisions(IEnumerable items, string tip, int totalRevisions, int currPage) + { + this.items = items; + } + } +} diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.collab-proxy@1.2.15/Tests/Editor/HistoryTests.cs.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.collab-proxy@1.2.15/Tests/Editor/HistoryTests.cs.meta" new file mode 100644 index 00000000..d648a7ff --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.collab-proxy@1.2.15/Tests/Editor/HistoryTests.cs.meta" @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 23a56a19774ed42b6b65646af08a003c +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.collab-proxy@1.2.15/Tests/Editor/Unity.CollabProxy.EditorTests.asmdef" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.collab-proxy@1.2.15/Tests/Editor/Unity.CollabProxy.EditorTests.asmdef" new file mode 100644 index 00000000..3467a9ed --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.collab-proxy@1.2.15/Tests/Editor/Unity.CollabProxy.EditorTests.asmdef" @@ -0,0 +1,13 @@ +{ + "name": "Unity.CollabProxy.EditorTests", + "references": [ + "Unity.CollabProxy.Editor" + ], + "optionalUnityReferences": [ + "TestAssemblies" + ], + "includePlatforms": [ + "Editor" + ], + "excludePlatforms": [] +} diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.collab-proxy@1.2.15/Tests/Editor/Unity.CollabProxy.EditorTests.asmdef.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.collab-proxy@1.2.15/Tests/Editor/Unity.CollabProxy.EditorTests.asmdef.meta" new file mode 100644 index 00000000..57db5c7d --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.collab-proxy@1.2.15/Tests/Editor/Unity.CollabProxy.EditorTests.asmdef.meta" @@ -0,0 +1,7 @@ +fileFormatVersion: 2 +guid: 782de34c17796430ba8d0ceddb60944e +AssemblyDefinitionImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.collab-proxy@1.2.15/package.json" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.collab-proxy@1.2.15/package.json" new file mode 100644 index 00000000..473c7821 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.collab-proxy@1.2.15/package.json" @@ -0,0 +1,21 @@ +{ + "name": "com.unity.collab-proxy", + "displayName": "Unity Collaborate", + "version": "1.2.15", + "unity": "2018.3", + "description": "Collaborate is a simple way for teams to save, share, and sync their Unity project", + "keywords": [ + "collab", + "collaborate", + "teams", + "team", + "cloud", + "backup" + ], + "dependencies": {}, + "repository": { + "type": "git", + "url": "https://gitlab.cds.internal.unity3d.com/upm-packages/cloud-services/collab-proxy.git", + "revision": "95a78b0bc11f99338fc2bd037a817aa69d199b56" + } +} diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.collab-proxy@1.2.15/package.json.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.collab-proxy@1.2.15/package.json.meta" new file mode 100644 index 00000000..c52d0c60 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.collab-proxy@1.2.15/package.json.meta" @@ -0,0 +1,7 @@ +fileFormatVersion: 2 +guid: 57b0c806ba25b48aa8a6ecb3345a4a9b +TextScriptImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.connect.share@1.0.9-preview/CHANGELOG.md" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.connect.share@1.0.9-preview/CHANGELOG.md" new file mode 100644 index 00000000..3579a6d1 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.connect.share@1.0.9-preview/CHANGELOG.md" @@ -0,0 +1,47 @@ +# Changelog +All notable changes to this package will be documented in this file. + +The format is based on [Keep a Changelog](http://keepachangelog.com/en/1.0.0/) +and this project adheres to [Semantic Versioning](http://semver.org/spec/v2.0.0.html). + +## [1.0.9] - 2019-12-13 +### Changed +- Upload metadata: use `applicationIdentifier` in `ProjectSettings.asset` for retrieving the Microgames's name. +### Fixed +- Upload metadata: fix obtaining the project's dependency packages for Unity 2019.2 and newer. + +## [1.0.8] - 2019-12-10 +### Changed +- Use `Application.companyName` (instead of `identifier`) for retrieving the Microgames's name for upload metadata. + +## [1.0.7] - 2019-11-28 +### Changed +- Updated UIWidgets dependency. + +## [1.0.6] - 2019-11-14 +### Changed +- Use *Share* as the window title. +- Minor wording adjustments. +### Added +- Save and load the state of the window upon assembly reloads. +- Add upload metadata (used Unity version & dependencies) to the WebGL build folder. + +## [1.0.5] - 2019-08-14 +- Send `buildGUID` to Connect backend. + +## [1.0.4] - 2019-05-27 +- Remove unused package files. +- Updated UIWidgets dependency. + +## [1.0.3] - 2019-05-27 +- Add WebGL game .zip size limit check (max. limit is 100 MB). + +## [1.0.2] - 2019-05-22 +- Update package name & description. +- Remove QAReport from the package. + +## [1.0.1] - 2019-05-22 +- Check the thumbnail image size. + +## [1.0.0] - 2019-05-20 +This is the first release the Unity package *Share WebGL Game*. diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.connect.share@1.0.9-preview/CHANGELOG.md.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.connect.share@1.0.9-preview/CHANGELOG.md.meta" new file mode 100644 index 00000000..cf72bffa --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.connect.share@1.0.9-preview/CHANGELOG.md.meta" @@ -0,0 +1,7 @@ +fileFormatVersion: 2 +guid: c9f6157037eb04661a34ce4b5881f4ce +TextScriptImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.connect.share@1.0.9-preview/Documentation~/connect-share.md" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.connect.share@1.0.9-preview/Documentation~/connect-share.md" new file mode 100644 index 00000000..1fa9f874 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.connect.share@1.0.9-preview/Documentation~/connect-share.md" @@ -0,0 +1,35 @@ +### **_Package Connect Share_** + +Use the package connect share to upload and share your webgl game on connect. + +### Pre-requisites +The Package Connect Share requires the UIWidgets 1.0.0 or later. + +### Installation +To add the Package Connect Share to your project, please use the Package Manager UI to install the latest version of the package. + +## Share Webgl Game +As shown below, once the connect share package is installed in your project, you can see a new sub menu `Share Webgl Game` on the menu bar Window. + +![Share Webgl Game](images/webgl-menu.png) + + Click the `Share Webgl Game` menu option to initiate the upload and share process.Following screens will appear acording to your login and build status. + - The package will check if you are logged in, if not it will ask you to login. + - The package will check if you have built the webgl game, if not it will guide you to build the game. + - Then you can update the project title and upload an thumbnail for the project. + - After those steps you just need to click the upload button and wait for the game's webpage link. + + + ![form](images/webgl-form.png) + ![uploding](images/webgl-uploading.png) + ![processing](images/webgl-processing.png) + ![results](images/webgl-result.png) + ![project on connect](images/webgl-result-connect.png) + +# Technical details + +## Requirements + +This version of Connect Share is compatible with the following versions of the Unity Editor: + +* 2018.3 and later (recomsmended) diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.connect.share@1.0.9-preview/Documentation~/images.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.connect.share@1.0.9-preview/Documentation~/images.meta" new file mode 100644 index 00000000..83c9e311 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.connect.share@1.0.9-preview/Documentation~/images.meta" @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 445c3f4385a7695439893d1f689ca529 +folderAsset: yes +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.connect.share@1.0.9-preview/Documentation~/images/webgl-finish.png" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.connect.share@1.0.9-preview/Documentation~/images/webgl-finish.png" new file mode 100644 index 00000000..6af3233c Binary files /dev/null and "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.connect.share@1.0.9-preview/Documentation~/images/webgl-finish.png" differ diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.connect.share@1.0.9-preview/Documentation~/images/webgl-form.png" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.connect.share@1.0.9-preview/Documentation~/images/webgl-form.png" new file mode 100644 index 00000000..44cf9ff8 Binary files /dev/null and "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.connect.share@1.0.9-preview/Documentation~/images/webgl-form.png" differ diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.connect.share@1.0.9-preview/Documentation~/images/webgl-menu.png" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.connect.share@1.0.9-preview/Documentation~/images/webgl-menu.png" new file mode 100644 index 00000000..8af1a9d4 Binary files /dev/null and "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.connect.share@1.0.9-preview/Documentation~/images/webgl-menu.png" differ diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.connect.share@1.0.9-preview/Documentation~/images/webgl-processing.png" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.connect.share@1.0.9-preview/Documentation~/images/webgl-processing.png" new file mode 100644 index 00000000..19059b9a Binary files /dev/null and "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.connect.share@1.0.9-preview/Documentation~/images/webgl-processing.png" differ diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.connect.share@1.0.9-preview/Documentation~/images/webgl-result-connect.png" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.connect.share@1.0.9-preview/Documentation~/images/webgl-result-connect.png" new file mode 100644 index 00000000..95d4f3a6 Binary files /dev/null and "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.connect.share@1.0.9-preview/Documentation~/images/webgl-result-connect.png" differ diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.connect.share@1.0.9-preview/Documentation~/images/webgl-result.png" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.connect.share@1.0.9-preview/Documentation~/images/webgl-result.png" new file mode 100644 index 00000000..6af3233c Binary files /dev/null and "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.connect.share@1.0.9-preview/Documentation~/images/webgl-result.png" differ diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.connect.share@1.0.9-preview/Documentation~/images/webgl-uploading.png" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.connect.share@1.0.9-preview/Documentation~/images/webgl-uploading.png" new file mode 100644 index 00000000..3cc970aa Binary files /dev/null and "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.connect.share@1.0.9-preview/Documentation~/images/webgl-uploading.png" differ diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.connect.share@1.0.9-preview/Editor.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.connect.share@1.0.9-preview/Editor.meta" new file mode 100644 index 00000000..bef50409 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.connect.share@1.0.9-preview/Editor.meta" @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 37c270a11c4e44223a69a029920b982e +folderAsset: yes +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.connect.share@1.0.9-preview/Editor/ConnectShareEditorWindow.cs" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.connect.share@1.0.9-preview/Editor/ConnectShareEditorWindow.cs" new file mode 100644 index 00000000..b10c4ecd --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.connect.share@1.0.9-preview/Editor/ConnectShareEditorWindow.cs" @@ -0,0 +1,73 @@ +using System.Collections; +using Unity.Connect.Share.Editor.store; +using Unity.Connect.Share.UIWidgets.Redux; +using Unity.UIWidgets.async; +using Unity.UIWidgets.editor; +using Unity.UIWidgets.material; +using Unity.UIWidgets.widgets; +using Unity.UIWidgets.ui; +using UnityEditor; +using UnityEngine; + +namespace Unity.Connect.Share.Editor +{ + public class ConnectShareEditorWindow : UIWidgetsEditorWindow + { + [MenuItem("Window/Share WebGL Game")] + static void OpenShareWindow() + { + string token = UnityConnectSession.instance.GetAccessToken(); + if (token.Length == 0) + { + StoreFactory.get().Dispatch(new NotLoginAction()); + } + + var window = GetWindow(); + window.titleContent.text = "Share"; + window.minSize = new Vector2(600f, 419f); + window.maxSize = window.minSize; + window.Show(); + } + + public static UIWidgetsCoroutine StartCoroutine(IEnumerator coroutine) + { + var window = GetWindow(false, "", false); + return window.window.startCoroutine(coroutine); + } + + protected override Widget createWidget() + { + return new MaterialApp( + home: new StoreProvider(StoreFactory.get(), new ShareReduxWidget()) + ); + } + + public void Awake() + { + FontManager.instance.addFont(Resources.Load("MaterialIcons-Regular"), "Material Icons"); + } + + protected override void OnEnable() + { + AssemblyReloadEvents.beforeAssemblyReload += OnBeforeAssemblyReload; + base.OnEnable(); + } + + public void OnBeforeAssemblyReload() + { + SaveStateToSessionState(); + } + + protected override void OnDisable() + { + AssemblyReloadEvents.beforeAssemblyReload -= OnBeforeAssemblyReload; + StoreFactory.get().Dispatch(new DestroyAction()); + } + + static void SaveStateToSessionState() + { + var shareState = StoreFactory.get().state.shareState; + SessionState.SetString(typeof(ConnectShareEditorWindow).Name, EditorJsonUtility.ToJson(shareState)); + } + } +} diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.connect.share@1.0.9-preview/Editor/ConnectShareEditorWindow.cs.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.connect.share@1.0.9-preview/Editor/ConnectShareEditorWindow.cs.meta" new file mode 100644 index 00000000..68f67f01 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.connect.share@1.0.9-preview/Editor/ConnectShareEditorWindow.cs.meta" @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: c72c9b7fae5ae4115b7210464a197936 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.connect.share@1.0.9-preview/Editor/InternalBridge.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.connect.share@1.0.9-preview/Editor/InternalBridge.meta" new file mode 100644 index 00000000..6c4a557f --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.connect.share@1.0.9-preview/Editor/InternalBridge.meta" @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 42f62c1ef13374eb0bac6e8f2e7851ee +folderAsset: yes +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.connect.share@1.0.9-preview/Editor/InternalBridge/InternalBridge.asmdef" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.connect.share@1.0.9-preview/Editor/InternalBridge/InternalBridge.asmdef" new file mode 100644 index 00000000..aa874911 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.connect.share@1.0.9-preview/Editor/InternalBridge/InternalBridge.asmdef" @@ -0,0 +1,14 @@ +{ + "name": "Unity.InternalAPIEditorBridgeDev.001", + "references": [], + "optionalUnityReferences": [], + "includePlatforms": [ + "Editor" + ], + "excludePlatforms": [], + "allowUnsafeCode": false, + "overrideReferences": false, + "precompiledReferences": [], + "autoReferenced": true, + "defineConstraints": [] +} \ No newline at end of file diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.connect.share@1.0.9-preview/Editor/InternalBridge/InternalBridge.asmdef.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.connect.share@1.0.9-preview/Editor/InternalBridge/InternalBridge.asmdef.meta" new file mode 100644 index 00000000..ab859bf4 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.connect.share@1.0.9-preview/Editor/InternalBridge/InternalBridge.asmdef.meta" @@ -0,0 +1,7 @@ +fileFormatVersion: 2 +guid: fb4c51b410e0745d6a7916a3536367c1 +AssemblyDefinitionImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.connect.share@1.0.9-preview/Editor/InternalBridge/PackageManagerProxy.cs" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.connect.share@1.0.9-preview/Editor/InternalBridge/PackageManagerProxy.cs" new file mode 100644 index 00000000..9ecb1de3 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.connect.share@1.0.9-preview/Editor/InternalBridge/PackageManagerProxy.cs" @@ -0,0 +1,25 @@ +using UnityEditor; +using UnityEditorInternal; + +public static class PackageManagerProxy +{ + // Returns also hidden packages + public static UnityEditor.PackageManager.PackageInfo[] GetAllVisiblePackages() + { + return PackageManagerUtilityInternal.GetAllVisiblePackages( +#if UNITY_2019_2_OR_NEWER + skipHiddenPackages:false +#endif + ); + } + + // As Application.identifier cannot be trusted (it can return empty on WebGL, for example) + // read the value directly from the ProjectSettings. + // TODO Move to a dedicated class + public static string GetApplicationIdentifier() + { + var projectSettings = InternalEditorUtility.LoadSerializedFileAndForget("ProjectSettings/ProjectSettings.asset"); + using(var so = new SerializedObject(projectSettings[0])) + return so.FindProperty("applicationIdentifier.Array.data[0].second").stringValue; + } +} diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.connect.share@1.0.9-preview/Editor/InternalBridge/PackageManagerProxy.cs.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.connect.share@1.0.9-preview/Editor/InternalBridge/PackageManagerProxy.cs.meta" new file mode 100644 index 00000000..a5eafba4 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.connect.share@1.0.9-preview/Editor/InternalBridge/PackageManagerProxy.cs.meta" @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 6b5444e8cfc48774dbaca41638c9431a +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.connect.share@1.0.9-preview/Editor/InternalBridge/UnityConnectSession.cs" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.connect.share@1.0.9-preview/Editor/InternalBridge/UnityConnectSession.cs" new file mode 100644 index 00000000..eccab44f --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.connect.share@1.0.9-preview/Editor/InternalBridge/UnityConnectSession.cs" @@ -0,0 +1,25 @@ +using System.Collections; +using System.Collections.Generic; +using UnityEditor.Connect; +using UnityEngine; + +public class UnityConnectSession { + + static UnityConnectSession _instance = new UnityConnectSession(); + + public static UnityConnectSession instance { + get => _instance; + } + + public string GetAccessToken() { + return UnityConnect.instance.GetAccessToken(); + } + + public string GetEnvironment() { + return UnityConnect.instance.GetEnvironment(); + } + + public void ShowLogin() { + UnityConnect.instance.ShowLogin(); + } +} diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.connect.share@1.0.9-preview/Editor/InternalBridge/UnityConnectSession.cs.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.connect.share@1.0.9-preview/Editor/InternalBridge/UnityConnectSession.cs.meta" new file mode 100644 index 00000000..350992ed --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.connect.share@1.0.9-preview/Editor/InternalBridge/UnityConnectSession.cs.meta" @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 0c87d0cd0951041dc9db8e96b13fffac +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.connect.share@1.0.9-preview/Editor/ShareWidget.cs" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.connect.share@1.0.9-preview/Editor/ShareWidget.cs" new file mode 100644 index 00000000..880ab6b6 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.connect.share@1.0.9-preview/Editor/ShareWidget.cs" @@ -0,0 +1,643 @@ +using System; +using System.IO; +using System.Collections.Generic; +using Unity.Connect.Share.Editor.store; +using Unity.Connect.Share.UIWidgets.Redux; +using Unity.UIWidgets.foundation; +using Unity.UIWidgets.material; +using Unity.UIWidgets.painting; +using Unity.UIWidgets.rendering; +using Unity.UIWidgets.ui; +using Unity.UIWidgets.widgets; +using UnityEngine; +using UnityEditor; +using UnityEditor.Build; +using UnityEditor.Build.Reporting; +using Color = Unity.UIWidgets.ui.Color; +using TextStyle = Unity.UIWidgets.painting.TextStyle; +using Image = Unity.UIWidgets.widgets.Image; +using System.Linq; + +namespace Unity.Connect.Share.Editor +{ + public static class Utils + { + // supports GB, MB, KB, or B + public static string FormatBytes(ulong bytes) + { + double gb = bytes / (1024.0 * 1024.0 * 1024.0); + double mb = bytes / (1024.0 * 1024.0); + double kb = bytes / 1024.0; + // Use :#.000 to specify further precision if wanted + if (mb >= 1000) return $"{gb/*:#.000*/} GB"; + if (kb >= 1000) return $"{mb/*:#.000*/} MB"; + if (kb >= 1) return $"{kb/*:*#.000*/} KB"; + return $"{bytes} B"; + } + } + + public class ShareReduxWidget:StatelessWidget + { + public override Widget build(BuildContext context) + { + return new StoreConnector( + converter: (state, dispatch) => new ShareWidget( + onUpload: (title) => dispatch(new ShareStartAction() {title = title}), + onThumbnailSelect: (thumbnailDir) => dispatch(new ThumbnailSelectAction() { thumbnailDir = thumbnailDir }), + onDestroy: () => dispatch(new DestroyAction()), + stopUploadAction: () => dispatch(new StopUploadAction()), + onErrorAction: (errorMsg) => dispatch(new OnErrorAction() {errorMsg = errorMsg}), + shareState: state.shareState), + builder: (_context, widget) => widget + ); + } + } + + public class ShareWidget : StatefulWidget + { + public readonly Action onUpload; + public readonly Action onThumbnailSelect; + public readonly Action onDestroy; + public readonly Action stopUploadAction; + public readonly Action onErrorAction; + public readonly ShareState shareState; + + public ShareWidget(Key key = null, Action onUpload = null, + Action onThumbnailSelect = null, Action onDestroy = null, + Action stopUploadAction = null, Action onErrorAction = null, ShareState shareState = null) : base(key) + { + this.onUpload = onUpload; + this.onThumbnailSelect = onThumbnailSelect; + this.onDestroy = onDestroy; + this.stopUploadAction = stopUploadAction; + this.onErrorAction = onErrorAction; + this.shareState = shareState; + + } + + public override State createState() + { + return new _WebGLUploadWidgetState(); + } + } + + class CustomBuildProcessor : IPostprocessBuildWithReport + { + public int callbackOrder { get { return 0; } } + + public void OnPostprocessBuild(BuildReport report) + { + if (report.summary.platform == BuildTarget.WebGL) + { + StoreFactory.get().Dispatch(new BuildFinishAction + { + outputDir = report.summary.outputPath, + buildGUID = report.summary.guid.ToString() + }); + + // Write metadate files into the build directory + try + { + // depdendencies.txt: list of "depepedency@version" + var depFile = $"{report.summary.outputPath}/dependencies.txt"; + using(var sw = new StreamWriter(depFile, false)) + { + PackageManagerProxy.GetAllVisiblePackages() + .Select(pkg => $"{pkg.name}@{pkg.version}") + // We probably don't have the package.json of the used Microgame available + // so add the information manually. + .Concat(new [] { $"{PackageManagerProxy.GetApplicationIdentifier()}@{Application.version}" }) + .Distinct() + .ToList() + .ForEach(depStr => sw.WriteLine(depStr)); + } + + // The used Unity version. + var verFile = $"{report.summary.outputPath}/ProjectVersion.txt"; + File.Copy("ProjectSettings/ProjectVersion.txt", verFile, overwrite: true); + } + catch(Exception e) + { + Debug.LogException(e); + } + } + } + } + + class _WebGLUploadWidgetState : State + { + private TextEditingController _controller; + private FocusNode _focusNode; + const long ThumbnailLimitBytes = 5 * 1024 * 1024; + + public override void initState() { + base.initState(); + _controller = new TextEditingController(Application.productName); + _focusNode = new FocusNode(); + } + + public override void dispose() + { + _focusNode.dispose(); + base.dispose(); + } + + private Widget renderInfoText(string text) { + var label = new Text(data: text, style: new TextStyle(fontSize: 15f, color: new Color(0xFF2F2F2F), fontWeight: FontWeight.w700)); + return new Container( + padding: EdgeInsets.only(top: 15, bottom: 10), + child: + new Row( + children: new List() + { + label + } + ) + ); + } + + + private Widget renderLabel(string text) { + var label = new Text(data: text, style: new TextStyle(fontSize: 13f, color: new Color(0xFF8B8B8B), fontWeight: FontWeight.w700)); + return new Container( + padding: EdgeInsets.only(top: 10, bottom: 10), + child: + new Row( + children: new List() + { + label + } + ) + ); + } + + private Widget renderTitleInput() { + return new Flexible( + child: new Container( + padding: EdgeInsets.all(10), + decoration: new BoxDecoration(border: Border.all(color: new Color(0xFFCFCFCF))), + child: new EditableText( + _controller, _focusNode, + new TextStyle(fontSize: 15f, height: 1.5f, fontWeight: FontWeight.w700), + strutStyle: null, + new Color(0xFF424242)) + ) + ); + } + + private Widget renderUploadButton() + { + return new GestureDetector( + child: new Container(color: new Color(0xFF2196F3), + padding: EdgeInsets.all(20), + margin: EdgeInsets.only(top: 20), + alignment: Alignment.center, + child: new Text(data: "Share", style: new TextStyle(fontSize: 15f, color: new Color(0xFFFFFFFF), fontWeight: FontWeight.w700)), + height: 58f + + ), + onTap: () => + { + var title = _controller.text; + + if (!string.IsNullOrEmpty(title)) + { + widget.onUpload(_controller.text); + } + } + ); + } + + private Widget renderUpload() { + var thumbnailPath = widget.shareState.thumbnailDir; + Widget image = new Icon(Icons.add_photo_alternate, color: new Color(0xFFCECECE), size: 72f); + + if (!string.IsNullOrEmpty(thumbnailPath)) { + image = Image.file(thumbnailPath, fit: BoxFit.cover, width: 72, height: 72); + } + + var imgSelectButton = new FlatButton( + child: new Text("Select image file...", style: new TextStyle(fontSize: 15f, color: new Color(0xFF2196F3), fontWeight: FontWeight.w700)), + onPressed: () => + { + string path = EditorUtility.OpenFilePanel("Select thumbnail", "", "jpg,jpeg,png"); + if (path.Length != 0) + { + var fileInfo = new System.IO.FileInfo(path); + + if (fileInfo.Length > ThumbnailLimitBytes) { + widget.onErrorAction($"Max. file size {Utils.FormatBytes(ThumbnailLimitBytes)}"); + } else { + widget.onThumbnailSelect(path); + } + + } + } + ); + + var label = new Text( + data: $"Max. file size {Utils.FormatBytes(ThumbnailLimitBytes)} (PNG or JPG)", + style: new TextStyle(fontSize: 13f, color: new Color(0xFF888888)) + ); + + return new Container( + color: new Color(0xFFF6F6F6), + padding: EdgeInsets.only(top: 10, bottom: 10), + child: + new Column( + children: new List() + { + image, + imgSelectButton, + label + } + ), + constraints: BoxConstraints.expand().widthConstraints() + ); + } + + private Widget renderUploadingHead() { + var imagePath = widget.shareState.thumbnailDir; + Widget image = new Icon(Icons.image, color: new Color(0xFFCECECE), size: 72f); + + if (!string.IsNullOrEmpty(imagePath)) { + image = Image.file(imagePath, fit: BoxFit.cover, width: 72, height: 50); + } + + var title = new Text(data: widget.shareState.title ?? "Untitled", style: new TextStyle(height: 1.2f, fontSize: 15f, color: new Color(0xFF424242), fontWeight: FontWeight.w700)); + var userName = UnityEditor.CloudProjectSettings.userName; + var userNameWidget = new Text(data: "By " + userName, style: new TextStyle(height: 1.2f, fontSize: 15f, color: new Color(0xFF888888))); + + return new Container( + padding: EdgeInsets.only(top: 10, bottom: 20, left: 20, right: 20), + color: new Color(0xFFFFFFFF), + child: + new Row( + children: new List() + { + new Container( + margin: EdgeInsets.only(right: 20), + child: image + ), + new Column( + children: new List(){ + title, + userNameWidget, + }, + crossAxisAlignment: CrossAxisAlignment.start + ) + } + ) + ); + } + + private Widget renderIcon(IconData icon ) { + return new Icon(icon, color: new Color(0xFFCECECE), size: 72f); + } + + private Widget renderProgress() + { + int progress = widget.shareState.progress; + progress = Math.Min(100, Math.Max(progress, 0)); + + return new Container( + margin: EdgeInsets.only(top: 10), + child: new LinearProgressIndicator( + backgroundColor: new Color(0xFFD6D6D6), + value: (progress / 100.0f) + ) + ); + } + + private Widget renderProgressLabel(string prefix) { + int progress = widget.shareState.progress; + return renderHighlightedLabel(prefix + " (" + progress + "%)..."); + } + + private Widget renderCancel() { + return new GestureDetector( + child: new Container( + margin: EdgeInsets.only(top: 20), + alignment: Alignment.center, + child: new Text("Cancel", style: new TextStyle(fontSize: 15f, color: new Color(0xFF2196F3), fontWeight: FontWeight.w700)) + ), + onTap: () => { widget.stopUploadAction(); } + ); + } + + private Widget renderHighlightedLabel(string label) + { + int progress = widget.shareState.progress; + + return new Container( + margin: EdgeInsets.only(top: 20), + child: new Text(data: label, style: new TextStyle(height: 1.2f, fontSize: 15f, color: new Color(0xFF424242), fontWeight: FontWeight.w700)) + ); + } + + private Widget renderNormalLabel(string label) + { + var text = new Text(data: label, style: new TextStyle(fontSize: 13f, color: new Color(0xFF888888))); + return new Container( + child: + new Row( + children: new List() + { + new Container(padding: EdgeInsets.only(top:20), child: text) + }, + mainAxisAlignment: MainAxisAlignment.center + ) + ); + } + + private Widget renderProjectUrl() { + var url = widget.shareState.url; + return new GestureDetector( + child: + new Container( + margin: EdgeInsets.only(top: 20), + child: new Text(url, style: new TextStyle(height: 1.2f, fontSize: 15f, color: new Color(0xFF2196F3), fontWeight: FontWeight.w700)) + ), + onTap: () => { Application.OpenURL(url);} + ); + } + + private Widget renderGoBack() + { + return new GestureDetector( + child: new Container( + margin: EdgeInsets.only(top: 20), + alignment: Alignment.center, + child: new Text("Go Back", style: new TextStyle(fontSize: 15f, color: new Color(0xFF2196F3), fontWeight: FontWeight.w700)) + ), + onTap: () => { widget.onDestroy(); } + ); + } + + private Widget renderNoBuildLogo() + { + var logo = Image.asset( "html5-logo", fit: BoxFit.cover, width: 34, height: 34); + var label = new Text(data: "WebGL", style: new TextStyle(fontSize: 15f, color: new Color(0xFF424242), fontWeight: FontWeight.w700)); + var text = new Container( + child: + new Row( + children: new List() + { + new Container(padding: EdgeInsets.only(top:8), child: label) + }, + mainAxisAlignment: MainAxisAlignment.center + ) + ); + + return new Unity.UIWidgets.material.Material( + elevation: 3f, + shadowColor: Color.fromRGBO(0, 0, 0, 0.1f), + shape: new CircleBorder( + side: new BorderSide( + width: 2.0f, + style: BorderStyle.none + ) + ), + child: new Container( + child: + new Column( + children: new List() + { + logo, + text + }, + mainAxisAlignment: MainAxisAlignment.center + ), + height: 110, + width: 110, + decoration: new BoxDecoration(color: new Color(0xFFFFFFFF), shape: BoxShape.circle) + ) + ); + } + + private Widget renderNoBuildButtons() { + var button = new Container(color: Color.fromRGBO(33, 150, 243, 0.3f), + padding: EdgeInsets.all(20), + alignment: Alignment.bottomCenter, + child: new Text(data: "Share", style: new TextStyle(fontSize: 15f, color: new Color(0xFFFFFFFF), fontWeight: FontWeight.w700)), + height: 58f + + ); + + return new Container(color: new Color(0x00000000), + alignment: Alignment.bottomCenter, + child: new Container(color: new Color(0xFFFFFFFF), + padding: EdgeInsets.all(20), + alignment: Alignment.bottomCenter, + child: new Center(child: button), + height: 98f + ) + ); + } + + private Widget renderUploadWidget() { + var list = new List + { + renderInfoText("Upload and Share your WebGL Game to Unity Connect"), + renderLabel("Project Name"), + renderTitleInput(), + renderLabel("Project Thumbnail (Optional)"), + renderUpload(), + renderUploadButton() + }; + + return new Container( + color: new Color(0xFFFFFFFF), + padding: EdgeInsets.only(top: 10, left: 20, right: 20, bottom: 20), + child: new Column(children: list, mainAxisAlignment: MainAxisAlignment.spaceBetween) + ); + } + + private Widget renderUploadingWidget() { + var list = new List + { + renderUploadingHead(), + new Container( + color: new Color(0xFFF6F6F6), + padding: EdgeInsets.only(left: 40, right: 40, bottom: 60), + child: new Column( + children: new List{ + renderIcon(Icons.cloud_upload), + renderProgress(), + renderProgressLabel("Uploading"), + renderCancel() + } + ) + ) + }; + return new Container( + color: new Color(0xFFF6F6F6), + padding: EdgeInsets.only(top: 10), + child: new Column(children: list, mainAxisAlignment: MainAxisAlignment.spaceBetween) + ); + } + + private Widget renderProcessingWidget() + { + var list = new List + { + renderUploadingHead(), + new Container( + color: new Color(0xFFF6F6F6), + padding: EdgeInsets.only(left: 40, right: 40, bottom: 80), + child: new Column( + children: new List{ + renderIcon(Icons.settings), + renderProgress(), + renderProgressLabel("Processing") + } + ) + ) + }; + + return new Container( + color: new Color(0xFFF6F6F6), + padding: EdgeInsets.only(top: 10), + child: new Column(children: list, mainAxisAlignment: MainAxisAlignment.spaceBetween) + ); + } + + private Widget renderSuccessWidget() + { + var list = new List + { + renderUploadingHead(), + new Container( + color: new Color(0xFFF6F6F6), + padding: EdgeInsets.only(left: 40, right: 40, bottom: 70), + child: new Column( + children: new List{ + renderIcon(Icons.cloud_done), + renderHighlightedLabel("Upload completed:"), + renderProjectUrl(), + renderNormalLabel("You can play your game in a web browser and share it with your friends!") + } + ), + constraints: BoxConstraints.expand().widthConstraints(), + alignment: Alignment.center + ) + }; + return new Container( + color: new Color(0xFFF6F6F6), + padding: EdgeInsets.only(top: 10), + child: new Column(children: list, mainAxisAlignment: MainAxisAlignment.spaceBetween) + ); + } + + private Widget renderErrorWidget() + { + var list = new List + { + renderUploadingHead(), + new Container( + color: new Color(0xFFF6F6F6), + padding: EdgeInsets.all(40), + child: new Column( + children: new List{ + renderIcon(Icons.error), + renderHighlightedLabel("Something went wrong"), + renderNormalLabel(widget.shareState.errorMsg), + renderGoBack() + }, + mainAxisAlignment: MainAxisAlignment.center + ), + constraints: BoxConstraints.expand().widthConstraints() + ) + }; + return new Container( + color: new Color(0xFFF6F6F6), + padding: EdgeInsets.only(top: 10), + child: new Column(children: list, mainAxisAlignment: MainAxisAlignment.spaceBetween) + ); + } + + private Widget renderNoBuildWidget() + { + return new Stack( + children: new List{ + new Container(color: new Color(0xFFF6F6F6), + padding: EdgeInsets.only(20, top: 40, right: 20, bottom: 20), + child: new Column( + children: new List + { + renderNoBuildLogo(), + renderHighlightedLabel("You need to build a WebGL build to share your game"), + renderNormalLabel("Go to: File > Build Settings > Select WebGL Platform > Build") + } + )), + renderNoBuildButtons() + } + + ); + } + + private Widget renderNotLoginWidget() + { + return new Stack( + children: new List{ + new Container(color: new Color(0xFFF6F6F6), + padding: EdgeInsets.only(top: 65, left: 20, right: 20, bottom: 20), + child: new Column( + children: new List + { + renderIcon(Icons.account_circle), + renderHighlightedLabel("You need to be signed in to share your game"), + renderNormalLabel("In Unity Editor go to: Account > Sign In...") + } + )), + renderNoBuildButtons() + } + + ); + } + + public override Widget build(BuildContext context) + { + var buildOutputDir = widget.shareState.buildOutputDir; + var projectUrl = widget.shareState.url; + var errorMsg = widget.shareState.errorMsg; + var step = widget.shareState.step; + + Widget root; + if (step == ShareStep.login) + { + root = renderNotLoginWidget(); + + } else if (string.IsNullOrEmpty(buildOutputDir) || !Directory.Exists(buildOutputDir)) + { + root = renderNoBuildWidget(); + + } + else if (!string.IsNullOrEmpty(projectUrl)) + { + root = renderSuccessWidget(); + } + else if (!string.IsNullOrEmpty(errorMsg)) + { + root = renderErrorWidget(); + } + else if (step == ShareStep.upload) + { + root = renderUploadingWidget(); + + } else if (step == ShareStep.process) + { + root = renderProcessingWidget(); + } + else + { + root = renderUploadWidget(); + } + + return new DefaultTextStyle( + child: root, + style: new TextStyle(decoration: TextDecoration.none) + ); + } + } +} diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.connect.share@1.0.9-preview/Editor/ShareWidget.cs.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.connect.share@1.0.9-preview/Editor/ShareWidget.cs.meta" new file mode 100644 index 00000000..f12c814f --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.connect.share@1.0.9-preview/Editor/ShareWidget.cs.meta" @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 5f8afef31dcf44fb4b01d3f2767c8d9b +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.connect.share@1.0.9-preview/Editor/Unity.Connect.Share.Editor.asmdef" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.connect.share@1.0.9-preview/Editor/Unity.Connect.Share.Editor.asmdef" new file mode 100644 index 00000000..b219f352 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.connect.share@1.0.9-preview/Editor/Unity.Connect.Share.Editor.asmdef" @@ -0,0 +1,18 @@ +{ + "name": "Unity.Connect.Share.Editor", + "references": [ + "Unity.UIWidgets", + "Unity.InternalAPIEditorBridgeDev.001", + "Unity.UIWidgets.Editor" + ], + "optionalUnityReferences": [], + "includePlatforms": [ + "Editor" + ], + "excludePlatforms": [], + "allowUnsafeCode": false, + "overrideReferences": false, + "precompiledReferences": [], + "autoReferenced": true, + "defineConstraints": [] +} \ No newline at end of file diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.connect.share@1.0.9-preview/Editor/Unity.Connect.Share.Editor.asmdef.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.connect.share@1.0.9-preview/Editor/Unity.Connect.Share.Editor.asmdef.meta" new file mode 100644 index 00000000..254f3f51 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.connect.share@1.0.9-preview/Editor/Unity.Connect.Share.Editor.asmdef.meta" @@ -0,0 +1,7 @@ +fileFormatVersion: 2 +guid: 149cad238efed4f53ac932b1e9555356 +AssemblyDefinitionImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.connect.share@1.0.9-preview/Editor/lib.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.connect.share@1.0.9-preview/Editor/lib.meta" new file mode 100644 index 00000000..c5425a53 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.connect.share@1.0.9-preview/Editor/lib.meta" @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 5d4d7a5cee9864c9384f3155ad4b5ae3 +folderAsset: yes +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.connect.share@1.0.9-preview/Editor/lib/redux.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.connect.share@1.0.9-preview/Editor/lib/redux.meta" new file mode 100644 index 00000000..153e2beb --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.connect.share@1.0.9-preview/Editor/lib/redux.meta" @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 0bfc90973930f457ea447c98d53dd467 +folderAsset: yes +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.connect.share@1.0.9-preview/Editor/lib/redux/store.cs" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.connect.share@1.0.9-preview/Editor/lib/redux/store.cs" new file mode 100644 index 00000000..26d82bce --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.connect.share@1.0.9-preview/Editor/lib/redux/store.cs" @@ -0,0 +1,49 @@ +using System; +using System.Linq; + +namespace Unity.Connect.Share.UIWidgets.Redux { + public delegate object Dispatcher(object action); + + public delegate State Reducer(State previousState, object action); + + public delegate Func Middleware(Store store); + + public delegate void StateChangedHandler(State action); + + public class Store { + public StateChangedHandler stateChanged; + State _state; + readonly Dispatcher _dispatcher; + readonly Reducer _reducer; + + public Store(Reducer reducer, State initialState = default(State), + params Middleware[] middlewares) { + this._reducer = reducer; + this._dispatcher = this.ApplyMiddlewares(middlewares); + this._state = initialState; + } + + public object Dispatch(object action) { + return this._dispatcher(action); + } + + public State state { + get { return this._state; } + } + + Dispatcher ApplyMiddlewares(params Middleware[] middlewares) { + return middlewares.Reverse().Aggregate, Dispatcher>(this.InnerDispatch, + (current, middleware) => middleware(this)(current)); + } + + object InnerDispatch(object action) { + this._state = this._reducer(this._state, action); + + if (this.stateChanged != null) { + this.stateChanged(this._state); + } + + return action; + } + } +} \ No newline at end of file diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.connect.share@1.0.9-preview/Editor/lib/redux/store.cs.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.connect.share@1.0.9-preview/Editor/lib/redux/store.cs.meta" new file mode 100644 index 00000000..b564cde6 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.connect.share@1.0.9-preview/Editor/lib/redux/store.cs.meta" @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 7c896dd51f7004dabbd1e783634a38f3 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.connect.share@1.0.9-preview/Editor/lib/redux/widget_redux.cs" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.connect.share@1.0.9-preview/Editor/lib/redux/widget_redux.cs" new file mode 100644 index 00000000..bdf18fdd --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.connect.share@1.0.9-preview/Editor/lib/redux/widget_redux.cs" @@ -0,0 +1,165 @@ +using System; +using Unity.UIWidgets.foundation; +using Unity.UIWidgets.ui; +using Unity.UIWidgets.widgets; + +namespace Unity.Connect.Share.UIWidgets.Redux { + public class StoreProvider : InheritedWidget { + readonly Store _store; + + public StoreProvider(Store store, Widget child, Key key = null) : base(key: key, child: child) { + D.assert(store != null); + D.assert(child != null); + this._store = store; + } + + public static Store of(BuildContext context) { + var type = _typeOf>(); + StoreProvider provider = context.inheritFromWidgetOfExactType(type) as StoreProvider; + if (provider == null) { + throw new UIWidgetsError("StoreProvider is missing"); + } + + return provider._store; + } + + static Type _typeOf() { + return typeof(T); + } + + public override bool updateShouldNotify(InheritedWidget old) { + return !Equals(this._store, ((StoreProvider) old)._store); + } + } + + public delegate Widget ViewModelBuilder(BuildContext context, ViewModel vm); + + public delegate ViewModel StoreConverter(State state, Dispatcher dispatcher); + + public delegate bool ShouldRebuildCallback(ViewModel pre, ViewModel current); + + public class StoreConnector : StatelessWidget { + public readonly ViewModelBuilder builder; + + public readonly StoreConverter converter; + + public readonly ShouldRebuildCallback shouldRebuild; + + public readonly bool distinct; + + + public StoreConnector(ViewModelBuilder builder, StoreConverter converter, + bool distinct = false, ShouldRebuildCallback shouldRebuild = null, + Key key = null) : base(key) { + D.assert(builder != null); + D.assert(converter != null); + this.distinct = distinct; + this.builder = builder; + this.converter = converter; + this.shouldRebuild = shouldRebuild; + } + + public override Widget build(BuildContext context) { + return new _StoreListener( + store: StoreProvider.of(context), + builder: this.builder, + converter: this.converter, + distinct: this.distinct, + shouldRebuild: this.shouldRebuild + ); + } + } + + public class _StoreListener : StatefulWidget { + public readonly ViewModelBuilder builder; + + public readonly StoreConverter converter; + + public readonly Store store; + + public readonly ShouldRebuildCallback shouldRebuild; + + public readonly bool distinct; + + public _StoreListener(ViewModelBuilder builder = null, + StoreConverter converter = null, + Store store = null, + bool distinct = false, + ShouldRebuildCallback shouldRebuild = null, + Key key = null) : base(key) { + D.assert(builder != null); + D.assert(converter != null); + D.assert(store != null); + this.store = store; + this.builder = builder; + this.converter = converter; + this.distinct = distinct; + this.shouldRebuild = shouldRebuild; + } + + public override Unity.UIWidgets.widgets.State createState() { + return new _StoreListenerState(); + } + } + + class _StoreListenerState : State<_StoreListener> { + ViewModel latestValue; + + public override void initState() { + base.initState(); + this._init(); + } + + public override void dispose() { + this.widget.store.stateChanged -= this._handleStateChanged; + base.dispose(); + } + + public override void didUpdateWidget(StatefulWidget oldWidget) { + var oldStore = ((_StoreListener) oldWidget).store; + if (this.widget.store != oldStore) { + oldStore.stateChanged -= this._handleStateChanged; + this._init(); + } + + base.didUpdateWidget(oldWidget); + } + + void _init() { + this.widget.store.stateChanged += this._handleStateChanged; + this.latestValue = this.widget.converter(this.widget.store.state, this.widget.store.Dispatch); + } + + void _handleStateChanged(State state) { + if (Window.hasInstance) { + this._innerStateChanged(state); + } + else { + using (WindowProvider.of(this.context).getScope()) { + this._innerStateChanged(state); + } + } + } + + void _innerStateChanged(State state) { + var preValue = this.latestValue; + this.latestValue = this.widget.converter(this.widget.store.state, this.widget.store.Dispatch); + if (this.widget.shouldRebuild != null) { + if (!this.widget.shouldRebuild(preValue, this.latestValue)) { + return; + } + } + else if (this.widget.distinct) { + if (Equals(preValue, this.latestValue)) { + return; + } + } + + this.setState(() => { }); + } + + public override Widget build(BuildContext context) { + return this.widget.builder(context, this.latestValue); + } + } +} \ No newline at end of file diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.connect.share@1.0.9-preview/Editor/lib/redux/widget_redux.cs.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.connect.share@1.0.9-preview/Editor/lib/redux/widget_redux.cs.meta" new file mode 100644 index 00000000..bdeb4e56 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.connect.share@1.0.9-preview/Editor/lib/redux/widget_redux.cs.meta" @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 1ad5ec4d5602948688c4d968c3b0b750 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.connect.share@1.0.9-preview/Editor/store.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.connect.share@1.0.9-preview/Editor/store.meta" new file mode 100644 index 00000000..20a9d296 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.connect.share@1.0.9-preview/Editor/store.meta" @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 2052394e70e434519829eb569f8e6d95 +folderAsset: yes +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.connect.share@1.0.9-preview/Editor/store/Middleware.cs" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.connect.share@1.0.9-preview/Editor/store/Middleware.cs" new file mode 100644 index 00000000..9e4415bc --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.connect.share@1.0.9-preview/Editor/store/Middleware.cs" @@ -0,0 +1,311 @@ +using System; +using System.Collections; +using System.Collections.Generic; +using System.IO; +using System.IO.Compression; +using Unity.Connect.Share.UIWidgets.Redux; +using Unity.UIWidgets.async; +using UnityEditor; +using UnityEngine; +using UnityEngine.Networking; + +namespace Unity.Connect.Share.Editor.store +{ + public class ShareMiddleware + { + private static UnityWebRequest uploadRequest; + private const string webglSharingFile = "webgl_sharing"; + private const string zipName = "connectwebgl.zip"; + private const string thumbnail = "thumbnail.png"; + private const string uploadEndpoint = "/api/webgl/upload"; + private const string queryProgressEndpoint = "/api/webgl/progress"; + private const int ZipFileLimitBytes = 100 * 1024 * 1024; + + public static Middleware Create() { + return (store) => (next) => (action) => { + var result = next(action); + + switch (action) + { + case ShareStartAction shared: + ZipAndShare(shared.title, store); + break; + case UploadStartAction upload: + Upload(store); + break; + case QueryProgressAction query: + CheckProgress(store, query.key); + break; + case StopUploadAction stopUpload: + StopUploadAction(); + break; + case NotLoginAction login: + CheckLoginStatus(store); + break; + } + return result; + }; + } + + private static void ZipAndShare(string title, Store store) + { + store.Dispatch(new TitleChangeAction { title = title}); + + var buildOutputDir = store.state.shareState.buildOutputDir; + if (string.IsNullOrEmpty(buildOutputDir) || !Directory.Exists(buildOutputDir)) { + store.Dispatch(new OnErrorAction { errorMsg = "Please build project first!" }); + return; + } + + if (Zip(store)) { + store.Dispatch(new UploadStartAction()); + } + } + + private static bool Zip(Store store) + { + var projectDir = Directory.GetParent(Application.dataPath).FullName; + var buildOutputDir = store.state.shareState.buildOutputDir; + var destPath = Path.Combine(projectDir, zipName); + + File.Delete(destPath); + + CopyThumbnail(store); + + ZipFile.CreateFromDirectory(buildOutputDir, destPath); + var fileInfo = new System.IO.FileInfo(destPath); + + if (fileInfo.Length > ZipFileLimitBytes) { + store.Dispatch(new OnErrorAction{errorMsg = $"Max. allowed WebGL game .zip size is {Utils.FormatBytes(ZipFileLimitBytes)}."}); + return false; + } else { + store.Dispatch(new ZipPathChangeAction{ zipPath = destPath }); + return true; + } + } + + private static void CopyThumbnail(Store store) + { + var buildOutputDir = store.state.shareState.buildOutputDir; + var thumbnailDestPath = Path.Combine(buildOutputDir, thumbnail); + + File.Delete(thumbnailDestPath); + + var thumbnailDir = store.state.shareState.thumbnailDir; + + if (string.IsNullOrEmpty(thumbnailDir)) { + return; + } + + + FileUtil.CopyFileOrDirectory(thumbnailDir, thumbnailDestPath); + } + + private static void Upload(Store store) + { + var token = UnityConnectSession.instance.GetAccessToken(); + if (token.Length == 0) + { + CheckLoginStatus(store); + return; + } + + var path = store.state.shareState.zipPath; + var title = store.state.shareState.title; + var buildGUID = store.state.shareState.buildGUID; + + var baseUrl = getAPIBaseUrl(); + var projectId = GetProjectId(); + var formSections = new List(); + + formSections.Add(new MultipartFormDataSection("title", title)); + + if (buildGUID.Length > 0) { + formSections.Add(new MultipartFormDataSection("buildGUID", buildGUID)); + } + + if (projectId.Length > 0) + { + formSections.Add(new MultipartFormDataSection("projectId", projectId)); + } + + + + formSections.Add(new MultipartFormFileSection("file", + File.ReadAllBytes(path), Path.GetFileName(path), "application/zip")); + + uploadRequest = UnityWebRequest.Post(baseUrl + uploadEndpoint, formSections); + uploadRequest.SetRequestHeader("Authorization", $"Bearer {token}"); + uploadRequest.SetRequestHeader("X-Requested-With", "XMLHTTPREQUEST"); + + var op = uploadRequest.SendWebRequest(); + ConnectShareEditorWindow.StartCoroutine(updateProgress(store, uploadRequest)); + + op.completed += operation => + { + if(uploadRequest.isNetworkError || uploadRequest.isHttpError) { + Debug.Log(uploadRequest.error); + if (uploadRequest.error != "Request aborted") + { + store.Dispatch(new OnErrorAction {errorMsg = "Internal server error"}); + } + } + else + { + var response = JsonUtility.FromJson(op.webRequest.downloadHandler.text); + if (!string.IsNullOrEmpty(response.key)) + { + store.Dispatch(new QueryProgressAction {key = response.key}); + } + } + }; + } + + private static void StopUploadAction() + { + if (uploadRequest != null) + { + uploadRequest.Abort(); + } + } + + private static void CheckProgress(Store store, string key) + { + var token = UnityConnectSession.instance.GetAccessToken(); + if (token.Length == 0) + { + CheckLoginStatus(store); + return; + } + + key = key??store.state.shareState.key; + var baseUrl = getAPIBaseUrl(); + var uploadRequest = UnityWebRequest.Get($"{baseUrl + queryProgressEndpoint}?key={key}"); + uploadRequest.SetRequestHeader("Authorization", $"Bearer {token}"); + uploadRequest.SetRequestHeader("X-Requested-With", "XMLHTTPREQUEST"); + var op = uploadRequest.SendWebRequest(); + + op.completed += operation => + { + if(uploadRequest.isNetworkError || uploadRequest.isHttpError) { + Debug.Log(uploadRequest.error); + } + else + { + var response = JsonUtility.FromJson(op.webRequest.downloadHandler.text); + + store.Dispatch(new QueryProgressResponseAction {response = response}); + if (response.progress == 100 || !string.IsNullOrEmpty(response.error)) + { + SaveProjectID(response.projectId); + return; + } + + } + + ConnectShareEditorWindow.StartCoroutine(wait(1.5f)).promise.Then((obj) => + { + store.Dispatch(new QueryProgressAction()); + }); + }; + } + + private static void SaveProjectID(string projectId) + { + if (projectId.Length == 0) + { + return; + } + + var writer = new StreamWriter(webglSharingFile, false); + writer.Write(projectId); + writer.Close(); + } + + private static string GetProjectId() + { + if (!System.IO.File.Exists(webglSharingFile)) + { + return ""; + } + + var reader = new StreamReader(webglSharingFile); + var projectId = reader.ReadLine(); + + reader.Close(); + return projectId; + } + + private static IEnumerator updateProgress(Store store, UnityWebRequest request) + { + while (true) + { + if (request.isDone) + { + break; + } + + int progress = (int) (Mathf.Clamp(request.uploadProgress, 0, 1) * 100); + store.Dispatch(new UploadProgressAction {progress = progress}); + yield return new UIWidgetsWaitForSeconds(0.5f); + } + + yield return null; + } + + private static void CheckLoginStatus(Store store) + { + var token = UnityConnectSession.instance.GetAccessToken(); + if (token.Length == 0) + { + ConnectShareEditorWindow.StartCoroutine(wait(2f)).promise.Then((obj) => + { + store.Dispatch(new NotLoginAction()); + }); + } + else + { + store.Dispatch(new LoginAction()); + } + + } + + private static IEnumerator wait(float seconds) + { + yield return new UIWidgetsWaitForSeconds(seconds); + } + + private static string getAPIBaseUrl() + { + var env = UnityConnectSession.instance.GetEnvironment(); + if (env == "staging") + { + return "https://connect-staging.unity.com"; + } + else if (env == "dev") + { + return "https://connect-dev.unity.com"; + } + + return "https://connect.unity.com"; + } + + } + + [Serializable] + public class UploadResponse + { + public string key; + } + + + [Serializable] + public class GetProgressResponse + { + public string projectId; + public string url; + public int progress; + public string error; + } + +} diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.connect.share@1.0.9-preview/Editor/store/Middleware.cs.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.connect.share@1.0.9-preview/Editor/store/Middleware.cs.meta" new file mode 100644 index 00000000..2710fd18 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.connect.share@1.0.9-preview/Editor/store/Middleware.cs.meta" @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: f244bcbd586ad4cf0804d31cbc5e6292 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.connect.share@1.0.9-preview/Editor/store/Reducer.cs" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.connect.share@1.0.9-preview/Editor/store/Reducer.cs" new file mode 100644 index 00000000..ca47e6b3 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.connect.share@1.0.9-preview/Editor/store/Reducer.cs" @@ -0,0 +1,167 @@ +namespace Unity.Connect.Share.Editor.store +{ + public class ShareAction {} + public class ShareStartAction : ShareAction + { + public string title; + } + public class BuildFinishAction : ShareAction + { + public string outputDir; + public string buildGUID; + } + + public class ZipPathChangeAction : ShareAction + { + public string zipPath; + } + + public class UploadStartAction : ShareAction + { + } + + public class UploadProgressAction : ShareAction + { + public int progress; + } + + public class QueryProgressAction : ShareAction + { + public string key; + } + + public class QueryProgressResponseAction : ShareAction + { + public GetProgressResponse response; + } + + public class GetProcessProgressAction : ShareAction + { + } + + + public class ShareEndAction : ShareAction + { + } + + public class ShareProgressAction : ShareAction + { + } + + public class ThumbnailSelectAction : ShareAction + { + public string thumbnailDir; + } + + public class TitleChangeAction : ShareAction + { + public string title; + } + + public class DestroyAction : ShareAction + { + } + + public class OnErrorAction : ShareAction + { + public string errorMsg; + } + + public class StopUploadAction : ShareAction + { + } + + public class NotLoginAction : ShareAction + { + } + + public class LoginAction : ShareAction + { + } + public class ShareReducer + { + public static AppState reducer(AppState old, object action) + { + var shareState = reducer(old.shareState, action); + if (shareState == old.shareState) + { + return old; + } + return new AppState(shareState: shareState); + } + + public static ShareState reducer(ShareState old, object action) + { + + switch (action) + { + case BuildFinishAction build: + return old.copyWith( + buildOutputDir: build.outputDir, + buildGUID: build.buildGUID + ); + + case ZipPathChangeAction zip: + return old.copyWith( + zipPath: zip.zipPath, + step: ShareStep.zip + ); + + case UploadStartAction upload: + return old.copyWith( + step: ShareStep.upload + ); + + case QueryProgressAction query: + int? progress = null; + if (old.step != ShareStep.process) + { + progress = 0; + } + return old.copyWith( + step: ShareStep.process, + key: query.key, + progress: progress + ); + + case UploadProgressAction upload: + return old.copyWith(progress: upload.progress); + + case QueryProgressResponseAction queryResponse: + ShareStep? step = null; + if (queryResponse.response.progress == 100) + { + step = ShareStep.idle; + } + return old.copyWith( + progress: queryResponse.response.progress, + url: queryResponse.response.url, + step: step + ); + case ThumbnailSelectAction thumbnailAction: + return old.copyWith(thumbnailDir: thumbnailAction.thumbnailDir); + + case TitleChangeAction titleChangeAction: + return old.copyWith(title: titleChangeAction.title); + + case DestroyAction destroyAction: + return new ShareState(buildOutputDir: old.buildOutputDir, buildGUID: old.buildGUID); + + case OnErrorAction errorAction: + return old.copyWith(errorMsg: errorAction.errorMsg); + + case StopUploadAction stopUploadAction: + return new ShareState(buildOutputDir: old.buildOutputDir, buildGUID: old.buildGUID); + case NotLoginAction login: + return old.copyWith( + step: ShareStep.login + ); + case LoginAction login: + return old.copyWith( + step: ShareStep.idle + ); + } + return old; + } + } +} \ No newline at end of file diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.connect.share@1.0.9-preview/Editor/store/Reducer.cs.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.connect.share@1.0.9-preview/Editor/store/Reducer.cs.meta" new file mode 100644 index 00000000..f999bae0 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.connect.share@1.0.9-preview/Editor/store/Reducer.cs.meta" @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 25449b12eeaec407a9808732c2e35e08 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.connect.share@1.0.9-preview/Editor/store/State.cs" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.connect.share@1.0.9-preview/Editor/store/State.cs" new file mode 100644 index 00000000..552f910a --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.connect.share@1.0.9-preview/Editor/store/State.cs" @@ -0,0 +1,74 @@ +using System; + +namespace Unity.Connect.Share.Editor.store +{ + public class AppState + { + public AppState(ShareState shareState = null) + { + this.shareState = shareState; + } + + public readonly ShareState shareState; + } + + [Serializable] + public class ShareState + { + public ShareState(string title = null, string buildOutputDir = null, string buildGUID = null, + string zipPath = null, ShareStep step = default, string errorMsg = null, + string key = null, int progress = 0, string url = null, string thumbnailDir = null) + { + this.title = title; + this.buildOutputDir = buildOutputDir; + this.buildGUID = buildGUID; + this.zipPath = zipPath; + this.step = step; + this.errorMsg = errorMsg; + this.progress = progress; + this.url = url; + this.key = key; + this.thumbnailDir = thumbnailDir; + } + + public ShareState copyWith(string title = null, string buildOutputDir = null, string buildGUID = null, string zipPath = null, + ShareStep? step = default, string errorMsg = null, string key = null, int? progress = null, + string url = null, string thumbnailDir = null) + { + return new ShareState( + title: title ?? this.title, + buildOutputDir: buildOutputDir ?? this.buildOutputDir, + buildGUID: buildGUID ?? this.buildGUID, + zipPath: zipPath??this.zipPath, + step: step??this.step, + errorMsg: errorMsg??this.errorMsg, + key: key ?? this.key, + progress: progress ?? this.progress, + url: url ?? this.url, + thumbnailDir: thumbnailDir ?? this.thumbnailDir + ); + } + + // NOTE not readonly in order to work with JSON serialization + public /*readonly*/ string title; + public /*readonly*/ string buildOutputDir; + public /*readonly*/ string buildGUID; + public /*readonly*/ string zipPath; + public /*readonly*/ ShareStep step; + public /*readonly*/ string key; + public /*readonly*/ string errorMsg; + public /*readonly*/ int progress; + public /*readonly*/ string url; + public /*readonly*/ string thumbnailDir; + + } + + public enum ShareStep + { + idle, + login, + zip, + upload, + process + } +} \ No newline at end of file diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.connect.share@1.0.9-preview/Editor/store/State.cs.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.connect.share@1.0.9-preview/Editor/store/State.cs.meta" new file mode 100644 index 00000000..8a75f6e5 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.connect.share@1.0.9-preview/Editor/store/State.cs.meta" @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: f1c14e5d80b8246588ed9ec9d7566c9d +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.connect.share@1.0.9-preview/Editor/store/Store.cs" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.connect.share@1.0.9-preview/Editor/store/Store.cs" new file mode 100644 index 00000000..e4a9f1bc --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.connect.share@1.0.9-preview/Editor/store/Store.cs" @@ -0,0 +1,35 @@ +using Unity.Connect.Share.UIWidgets.Redux; +using UnityEditor; + +namespace Unity.Connect.Share.Editor.store +{ + public class StoreFactory + { + private static Store _store; + + static void _setupStore() + { + var shareState = new ShareState(); + EditorJsonUtility.FromJsonOverwrite( + SessionState.GetString(typeof(ConnectShareEditorWindow).Name, "{}"), + shareState + ); + + _store = new Store( + ShareReducer.reducer, + initialState: new AppState(shareState: shareState), + middlewares: ShareMiddleware.Create() + ); + } + + public static Store get() + { + if (_store == null) + { + _setupStore(); + } + + return _store; + } + } +} \ No newline at end of file diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.connect.share@1.0.9-preview/Editor/store/Store.cs.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.connect.share@1.0.9-preview/Editor/store/Store.cs.meta" new file mode 100644 index 00000000..04b756d9 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.connect.share@1.0.9-preview/Editor/store/Store.cs.meta" @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: ad7dc7ed9a67447fea6566ea37aed91a +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.connect.share@1.0.9-preview/LICENSE.md" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.connect.share@1.0.9-preview/LICENSE.md" new file mode 100644 index 00000000..95149955 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.connect.share@1.0.9-preview/LICENSE.md" @@ -0,0 +1,5 @@ +com.unity.connect.share copyright © 2019 Unity Technologies ApS + +Licensed under the Unity Companion License for Unity-dependent projects--see [Unity Companion License](http://www.unity3d.com/legal/licenses/Unity_Companion_License). + + Unless expressly provided otherwise, the Software under this license is made available strictly on an “AS IS” BASIS WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED. Please review the license for details on these and other terms and conditions. \ No newline at end of file diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.connect.share@1.0.9-preview/LICENSE.md.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.connect.share@1.0.9-preview/LICENSE.md.meta" new file mode 100644 index 00000000..0c4f1ee3 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.connect.share@1.0.9-preview/LICENSE.md.meta" @@ -0,0 +1,7 @@ +fileFormatVersion: 2 +guid: 19b530bfef22d4caebb620b059757936 +TextScriptImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.connect.share@1.0.9-preview/Plugins.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.connect.share@1.0.9-preview/Plugins.meta" new file mode 100644 index 00000000..bd36f232 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.connect.share@1.0.9-preview/Plugins.meta" @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 96eed97af6e0f4c32a08f12ab21b1ac5 +folderAsset: yes +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.connect.share@1.0.9-preview/Plugins/System.IO.Compression.FileSystem.dll.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.connect.share@1.0.9-preview/Plugins/System.IO.Compression.FileSystem.dll.meta" new file mode 100644 index 00000000..c3196804 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.connect.share@1.0.9-preview/Plugins/System.IO.Compression.FileSystem.dll.meta" @@ -0,0 +1,32 @@ +fileFormatVersion: 2 +guid: 921bfad97146a47e9a1f47226f104bf7 +PluginImporter: + externalObjects: {} + serializedVersion: 2 + iconMap: {} + executionOrder: {} + defineConstraints: [] + isPreloaded: 0 + isOverridable: 1 + isExplicitlyReferenced: 0 + platformData: + - first: + Any: + second: + enabled: 1 + settings: {} + - first: + Editor: Editor + second: + enabled: 0 + settings: + DefaultValueInitialized: true + - first: + Windows Store Apps: WindowsStoreApps + second: + enabled: 0 + settings: + CPU: AnyCPU + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.connect.share@1.0.9-preview/README.md" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.connect.share@1.0.9-preview/README.md" new file mode 100644 index 00000000..30c90eab --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.connect.share@1.0.9-preview/README.md" @@ -0,0 +1,25 @@ +# Share WebGL Game + +## Introduction +Share WebGL Game is a package for Unity Editor, enabling developers to upload their WebGL games to Unity Connect. +The shared games can be played and commented by anyone knowing the link the the shared game. + +#### Developer-Friendly +The user just needs to download Share WebGL Game using the package manager, build their game for WebGL, and upload the game to Unity Connect by following our instructions. + + +### Instructions +- Install Share WebGL Game using the package manager. +- Click menu on the top of editor (_Window > Share Webgl Game_). +- If you are not logged in, you will be instructed to do so. +- If you have not built the game yet, you will be instructed to do so. +- You are asked to update the game title and thumbnail. +- You can now upload your project to Unity Connect and after. You will get a game link after a successful upload. + +## Requirements + +#### Unity +Install **Unity 2018.4** or newer. You can download the latest Unity from https://unity3d.com/get-unity/download. + +## Limitations +The zipped game build cannot exceed 100 MB. diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.connect.share@1.0.9-preview/README.md.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.connect.share@1.0.9-preview/README.md.meta" new file mode 100644 index 00000000..22c381b9 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.connect.share@1.0.9-preview/README.md.meta" @@ -0,0 +1,7 @@ +fileFormatVersion: 2 +guid: f0a6df772e112498b8264d33c9210b9e +TextScriptImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.connect.share@1.0.9-preview/Resources.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.connect.share@1.0.9-preview/Resources.meta" new file mode 100644 index 00000000..fedfa77e --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.connect.share@1.0.9-preview/Resources.meta" @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: cbfa404c5e4f14565a439cb951f79d15 +folderAsset: yes +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.connect.share@1.0.9-preview/Resources/MaterialIcons-Regular.ttf" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.connect.share@1.0.9-preview/Resources/MaterialIcons-Regular.ttf" new file mode 100644 index 00000000..9519e1d7 Binary files /dev/null and "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.connect.share@1.0.9-preview/Resources/MaterialIcons-Regular.ttf" differ diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.connect.share@1.0.9-preview/Resources/MaterialIcons-Regular.ttf.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.connect.share@1.0.9-preview/Resources/MaterialIcons-Regular.ttf.meta" new file mode 100644 index 00000000..90e4afb9 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.connect.share@1.0.9-preview/Resources/MaterialIcons-Regular.ttf.meta" @@ -0,0 +1,22 @@ +fileFormatVersion: 2 +guid: f7f3465ef34b34633aea2c0de2e88bdb +TrueTypeFontImporter: + externalObjects: {} + serializedVersion: 4 + fontSize: 16 + forceTextureCase: -2 + characterSpacing: 0 + characterPadding: 1 + includeFontData: 1 + fontName: Material Icons + fontNames: + - Material Icons + fallbackFontReferences: [] + customCharacters: + fontRenderingMode: 0 + ascentCalculationMode: 1 + useLegacyBoundsCalculation: 0 + shouldRoundAdvanceValue: 1 + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.connect.share@1.0.9-preview/Resources/html5-logo.png" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.connect.share@1.0.9-preview/Resources/html5-logo.png" new file mode 100644 index 00000000..3ae5be57 Binary files /dev/null and "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.connect.share@1.0.9-preview/Resources/html5-logo.png" differ diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.connect.share@1.0.9-preview/Resources/html5-logo.png.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.connect.share@1.0.9-preview/Resources/html5-logo.png.meta" new file mode 100644 index 00000000..24b79c8d --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.connect.share@1.0.9-preview/Resources/html5-logo.png.meta" @@ -0,0 +1,88 @@ +fileFormatVersion: 2 +guid: 7f9afac6b75cf4378a2dd104851c5548 +TextureImporter: + fileIDToRecycleName: {} + externalObjects: {} + serializedVersion: 9 + mipmaps: + mipMapMode: 0 + enableMipMap: 1 + sRGBTexture: 1 + linearTexture: 0 + fadeOut: 0 + borderMipMap: 0 + mipMapsPreserveCoverage: 0 + alphaTestReferenceValue: 0.5 + mipMapFadeDistanceStart: 1 + mipMapFadeDistanceEnd: 3 + bumpmap: + convertToNormalMap: 0 + externalNormalMap: 0 + heightScale: 0.25 + normalMapFilter: 0 + isReadable: 0 + streamingMipmaps: 0 + streamingMipmapsPriority: 0 + grayScaleToAlpha: 0 + generateCubemap: 6 + cubemapConvolution: 0 + seamlessCubemap: 0 + textureFormat: 1 + maxTextureSize: 2048 + textureSettings: + serializedVersion: 2 + filterMode: -1 + aniso: -1 + mipBias: -100 + wrapU: -1 + wrapV: -1 + wrapW: -1 + nPOTScale: 1 + lightmap: 0 + compressionQuality: 50 + spriteMode: 0 + spriteExtrude: 1 + spriteMeshType: 1 + alignment: 0 + spritePivot: {x: 0.5, y: 0.5} + spritePixelsToUnits: 100 + spriteBorder: {x: 0, y: 0, z: 0, w: 0} + spriteGenerateFallbackPhysicsShape: 1 + alphaUsage: 1 + alphaIsTransparency: 0 + spriteTessellationDetail: -1 + textureType: 0 + textureShape: 1 + singleChannelComponent: 0 + maxTextureSizeSet: 0 + compressionQualitySet: 0 + textureFormatSet: 0 + platformSettings: + - serializedVersion: 2 + buildTarget: DefaultTexturePlatform + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 0 + spriteSheet: + serializedVersion: 2 + sprites: [] + outline: [] + physicsShape: [] + bones: [] + spriteID: + vertices: [] + indices: + edges: [] + weights: [] + spritePackingTag: + pSDRemoveMatte: 0 + pSDShowRemoveMatteOption: 0 + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.connect.share@1.0.9-preview/Tests.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.connect.share@1.0.9-preview/Tests.meta" new file mode 100644 index 00000000..a0b061b7 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.connect.share@1.0.9-preview/Tests.meta" @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 02f05451d06b3471d91adb97cef991c3 +folderAsset: yes +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.connect.share@1.0.9-preview/Tests/.tests.json" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.connect.share@1.0.9-preview/Tests/.tests.json" new file mode 100644 index 00000000..15a72749 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.connect.share@1.0.9-preview/Tests/.tests.json" @@ -0,0 +1,3 @@ +{ + "createSeparatePackage": false +} \ No newline at end of file diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.connect.share@1.0.9-preview/Tests/Editor.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.connect.share@1.0.9-preview/Tests/Editor.meta" new file mode 100644 index 00000000..aeeba8a2 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.connect.share@1.0.9-preview/Tests/Editor.meta" @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 206e4e7cd6bc643199eb689384c2f39a +folderAsset: yes +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.connect.share@1.0.9-preview/Tests/Editor/EditorExampleTest.cs" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.connect.share@1.0.9-preview/Tests/Editor/EditorExampleTest.cs" new file mode 100644 index 00000000..fd85b464 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.connect.share@1.0.9-preview/Tests/Editor/EditorExampleTest.cs" @@ -0,0 +1,27 @@ +using UnityEngine; +using UnityEditor; +using UnityEngine.TestTools; +using NUnit.Framework; +using System.Collections; + +namespace Unity.Connect.Share.Editor.Tests +{ + class EditorExampleTest + { + [Test] + public void EditorSampleTestSimplePasses() + { + // Use the Assert class to test conditions. + } + + // A UnityTest behaves like a coroutine in PlayMode + // and allows you to yield null to skip a frame in EditMode + [UnityTest] + public IEnumerator EditorSampleTestWithEnumeratorPasses() + { + // Use the Assert class to test conditions. + // yield to skip a frame + yield return null; + } + } +} diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.connect.share@1.0.9-preview/Tests/Editor/EditorExampleTest.cs.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.connect.share@1.0.9-preview/Tests/Editor/EditorExampleTest.cs.meta" new file mode 100644 index 00000000..5ede5158 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.connect.share@1.0.9-preview/Tests/Editor/EditorExampleTest.cs.meta" @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 36f464910f2d741d8b2910370009fc82 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.connect.share@1.0.9-preview/Tests/Editor/Unity.Connect.Share.Editor.Tests.asmdef" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.connect.share@1.0.9-preview/Tests/Editor/Unity.Connect.Share.Editor.Tests.asmdef" new file mode 100644 index 00000000..bfbb9905 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.connect.share@1.0.9-preview/Tests/Editor/Unity.Connect.Share.Editor.Tests.asmdef" @@ -0,0 +1,12 @@ +{ + "name": "Unity.Connect.Share.Editor.Tests", + "references": [ + ], + "optionalUnityReferences": [ + "TestAssemblies" + ], + "includePlatforms": [ + "Editor" + ], + "excludePlatforms": [] +} \ No newline at end of file diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.connect.share@1.0.9-preview/Tests/Editor/Unity.Connect.Share.Editor.Tests.asmdef.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.connect.share@1.0.9-preview/Tests/Editor/Unity.Connect.Share.Editor.Tests.asmdef.meta" new file mode 100644 index 00000000..6e440b48 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.connect.share@1.0.9-preview/Tests/Editor/Unity.Connect.Share.Editor.Tests.asmdef.meta" @@ -0,0 +1,7 @@ +fileFormatVersion: 2 +guid: df4ebfb3d11874b50958a93894f83d04 +AssemblyDefinitionImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.connect.share@1.0.9-preview/Third Party Notices.md" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.connect.share@1.0.9-preview/Third Party Notices.md" new file mode 100644 index 00000000..44d6af1e --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.connect.share@1.0.9-preview/Third Party Notices.md" @@ -0,0 +1,9 @@ +This package contains third-party software components governed by the license(s) indicated below: +--------- + +Component Name: UIWidgets + +License Type: Unity Companion License + +Licensed under the Unity Companion License for Unity-dependent projects--see [Unity Companion License](http://www.unity3d.com/legal/licenses/Unity_Companion_License). +Unless expressly provided otherwise, the Software under this license is made available strictly on an “AS IS” BASIS WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED. Please review the license for details on these and other terms and conditions. diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.connect.share@1.0.9-preview/Third Party Notices.md.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.connect.share@1.0.9-preview/Third Party Notices.md.meta" new file mode 100644 index 00000000..af6b2e66 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.connect.share@1.0.9-preview/Third Party Notices.md.meta" @@ -0,0 +1,7 @@ +fileFormatVersion: 2 +guid: 13071f576f57146a1bca06e0c7b73778 +TextScriptImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.connect.share@1.0.9-preview/package.json" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.connect.share@1.0.9-preview/package.json" new file mode 100644 index 00000000..7891a916 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.connect.share@1.0.9-preview/package.json" @@ -0,0 +1,20 @@ +{ + "name": "com.unity.connect.share", + "displayName": "Share WebGL Game", + "version": "1.0.9-preview", + "unity": "2018.4", + "description": "Use Share WebGL Game package to upload and share WebGL game on Unity Connect website.", + "keywords": [ + "webgl", + "share", + "connect" + ], + "dependencies": { + "com.unity.uiwidgets": "1.5.4-preview.8" + }, + "repository": { + "type": "git", + "url": "git@github.cds.internal.unity3d.com:unity/com.unity.connect.share.git", + "revision": "344fdd25210f529bd1e0ef183e252532b74197be" + } +} diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.connect.share@1.0.9-preview/package.json.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.connect.share@1.0.9-preview/package.json.meta" new file mode 100644 index 00000000..7d5f9c6a --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.connect.share@1.0.9-preview/package.json.meta" @@ -0,0 +1,7 @@ +fileFormatVersion: 2 +guid: 69d5c7e4989ae4dfab60b1dcc5f58ebb +TextScriptImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/CHANGELOG.md" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/CHANGELOG.md" new file mode 100644 index 00000000..c1484fd7 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/CHANGELOG.md" @@ -0,0 +1,117 @@ +# Changelog +All notable changes to this package will be documented in this file. + +The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/), +and this package adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html). + +## [0.2.1] - 2019-11-11 +### Fixed + - Do not show the Welcome dialog and load the IET window layout every time an IET project is started. + - Fixed IET initialization when a Microgame is loaded from the Asset Store. + +### Changed + - Do not clear the description of a tutorial card when a tutorial is marked as completed. + +## [0.2.0] - 2019-10-21 +### Changed + - `Readme` class renamed to more suitable `TutorialContainer`. + +## [0.1.18] - 2019-10-21 +### Changed + - New single-panel approach, Readme and Tutorials are shown in the same window which is always visible. + - Ability to save the Project window's state for the end-user when saving layouts for tutorials. + - `Readme` class moved into `Unity.InteractiveTutorials` namespace. + +## [0.1.17] - 2019-07-19 +### Changed + - Updated UI styles. + +## [0.1.16] - 2019-05-15 +### Changed + - Updated warning message when the user is about to exit the tutorial. + +## [0.1.15] - 2019-03-04 +### Added + - Adding the ability to unmask elements based on the name of the GUIStyle used to draw them. + - Warning message when the user is about to exit the tutorial. + +### Changed + - When clicking on *Help > Template Walkthroughs* if the inspector window is not visible, the Inspector window will be shown + +## [0.1.14] - 2019-02-12 +### Fixed + - If the user opens an Undocked window, that is not part of the tutorial, the window tabs are unmasked, so they can close or move the window. + - Improved compatibility with old content. + +## [0.1.13] - 2019-02-04 +### Added +- Add support for specifying alternate EditorWindow types when configuring unmasked views +- Expand unmask region to include foldout arrow when unmasking property that is collapsed + +### Removed +- Remove "Couldn't find a readme" message when there is no Readme asset in project + +## [0.1.12] - 2019-01-24 +### Fixed +- Fix editor entering and exiting play mode on project load +- Fix unmasked property unmasking entire window when ancestor property is collapsed + +## [0.1.11] - 2019-01-17 +### Fixed +- Fix 2019.1 compilation errors +- Improve invalid ScriptableObject reference workaround to always exit play mode after project load + +## [0.1.10] - 2019-01-11 +### Fixed +- Fix invalid CHANGELOG formatting. + +## [0.1.9] - 2019-01-11 +### Changed +- SceneViewCameraMovedCriterion will also complete if the user changes the camera orientation. + +### Fixed +- Added work around for issue where tutorial is not loaded initial project load + +## [0.1.8] - 2018-12-11 +### Fixed +- Fixed build script + +## [0.1.7] - 2018-12-10 +### Fixed +- Fixed authoring of scene object references. +### Removed +- Remove *Window > Tutorials* menu item. + +## [0.1.6] - 2018-12-06 +### Fixed +- Fix AudioClip import errors. +- Fix compilation errors at build time due to incorrectly configured Assembly Definition asset. +- Fix inconsistent line endings. +- Fix CS0649 warnings. +- Fix *Help > Template Walkthroughs* menu item not finding Readme asset. + +## [0.1.5] - 2018-12-04 +### Fixed +- Fixed ReflectionTypeLoadException when inspecting TutorialPage +- Fixed GUI layout errors when starting tutorial from Readme asset + +## [0.1.4] - 2018-12-03 +### Added +- Integrated the readme asset with the Tutorials +- Ability to have more than a single Tutorial in a project +- Propper flow for users to go into and out of a tutorial +- Ability to add Images, Video to a tutorial +- New Color type added to PropertyModificaitonCriterion +- PropertyModificationCriterion has a new mode where it will complete if the user changes a property to a different value than initial +- Added option to the masking system to prevent interactions to the unmasked area +- New Criterions: FrameSelectedCriterion, MaterialPropertyChanged, ActiveToolCriterion, SceneCameraViewMovedCritertion +- Ability for Tutorials to reference each other +- "Home/Skip" button have 2 modes. Legacy will open the Hub, and CloseWindow will close the Tutorial window +- Ability to choose the name of the Tutorial Window + +### Fixed +- Updated usages of obsolete APIs + +### Changed +- Initial version of the in editor tutorial framework as a package. +- Contained the use of internals to a single folder. diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/CHANGELOG.md.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/CHANGELOG.md.meta" new file mode 100644 index 00000000..9550dcd2 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/CHANGELOG.md.meta" @@ -0,0 +1,7 @@ +fileFormatVersion: 2 +guid: ad564ad7695918b48a00078bc46c2e29 +TextScriptImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/CONTRIBUTIONS.md" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/CONTRIBUTIONS.md" new file mode 100644 index 00000000..97360490 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/CONTRIBUTIONS.md" @@ -0,0 +1,9 @@ +# Contributions + +## If you are interested in contributing, here are some ground rules: +* ... Define guidelines & rules for what contributors need to know to successfully make Pull requests against your repo ... + +## All contributions are subject to the [Unity Contribution Agreement(UCA)](https://unity3d.com/legal/licenses/Unity_Contribution_Agreement) +By making a pull request, you are confirming agreement to the terms and conditions of the UCA, including that your Contributions are your original creation and that you have complete right and authority to make your Contributions. + +## Once you have a change ready following these ground rules. Simply make a pull request in Github diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/CONTRIBUTIONS.md.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/CONTRIBUTIONS.md.meta" new file mode 100644 index 00000000..2fa679e5 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/CONTRIBUTIONS.md.meta" @@ -0,0 +1,7 @@ +fileFormatVersion: 2 +guid: d4b6d595abe3ef7449e0a101cba48d34 +TextScriptImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Documentation~/com.unity.iet-framework.md" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Documentation~/com.unity.iet-framework.md" new file mode 100644 index 00000000..18fdea40 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Documentation~/com.unity.iet-framework.md" @@ -0,0 +1,167 @@ +# About Framework for In-Editor Tutorials + +This package is mandatory for In-Editor Tutorials as it contains the main logic to display them. + +# Installing Framework for In-Editor Tutorials + +To install this package, follow the instructions in the [Package Manager documentation](https://docs.unity3d.com/Packages/com.unity.package-manager-ui@latest/index.html). + +# Using Framework for In-Editor Tutorials + +You have to install a Tutorial now, you can see them in the [Package Manager](https://docs.unity3d.com/Packages/com.unity.package-manager-ui@latest/index.html). + + +# Technical details +## Requirements + +This version of Framework for In-Editor Tutorials is compatible with the following versions of the Unity Editor: + +* 2018.2 and later (recommended) + +## Known limitations + +## Package contents + +The following table indicates the <describe the breakdown you used here>: + +|Location|Description| +|---|---| +|`Documentation~`|Contains the documentation of this package.| +|---|`com.unity.iet-framework.md`|This file.| +|`Editor Resources`|Contains the UI elements and sounds.| +|---|`GUI`|| +|---|---|`Roboto Font`|| +|---|---|---|`Apache License.txt`|| +|---|---|---|`Roboto-Black.ttf`|| +|---|---|---|`Roboto-BlackItalic.ttf`|| +|---|---|---|`Roboto-Bold.ttf`|| +|---|---|---|`Roboto-BoldItalic.ttf`|| +|---|---|---|`RobotoCondensed-Bold.ttf`|| +|---|---|---|`RobotoCondensed-BoldItalic.ttf`|| +|---|---|---|`RobotoCondensed-Italic.ttf`|| +|---|---|---|`RobotoCondensed-Light.ttf`|| +|---|---|---|`RobotoCondensed-LightItalic.ttf`|| +|---|---|---|`RobotoCondensed-Regular.ttf`|| +|---|---|---|`Roboto-Italic.ttf`|| +|---|---|---|`Roboto-Light.ttf`|| +|---|---|---|`Roboto-LightItalic.ttf`|| +|---|---|---|`Roboto-Medium.ttf`|| +|---|---|---|`Roboto-MediumItalic.ttf`|| +|---|---|---|`Roboto-Regular.ttf`|| +|---|---|---|`Roboto-Thin.ttf`|| +|---|---|---|`Roboto-ThinItalic.ttf`|| +|---|---|`Textures`|| +|---|---|---|`ActiveColor.png`|| +|---|---|---|`Back.png`|| +|---|---|---|`back@2x.png`|| +|---|---|---|`Background.png`|| +|---|---|---|`book.png`|| +|---|---|---|`Button_Active.png`|| +|---|---|---|`Button_Active_Pressed.png`|| +|---|---|---|`Button_InActive.png`|| +|---|---|---|`Button_Normal.png`|| +|---|---|---|`CompletedColor.png`|| +|---|---|---|`Home.png`|| +|---|---|---|`home@2x.png`|| +|---|---|---|`InActiveColor.png`|| +|---|---|---|`InActiveColor_Light.png`|| +|---|---|---|`ProgressBar.png`|| +|---|---|---|`Reset.png`|| +|---|---|---|`reset@2x.png`|| +|---|---|---|`scrollbar_8px.png`|| +|---|---|---|`scrollbar_8pxActive.png`|| +|---|---|---|`scrollbar_8pxHover.png`|| +|---|---|---|`scrollbar_9px.png`|| +|---|---|---|`scrollbar_9pxActive.png`|| +|---|---|---|`scrollbar_9pxHover.png`|| +|---|---|---|`Swatch - Cyan.png`|| +|---|---|---|`Swatch - Deep Blue.png`|| +|---|---|---|`Swatch - Graphyte.png`|| +|---|---|---|`Swatch - Green.png`|| +|---|---|---|`Swatch - Light Gray.png`|| +|---|---|---|`Swatch - Magenta.png`|| +|---|---|---|`Swatch - Teal.png`|| +|---|---|---|`task_completed.png`|| +|---|---|---|`task_completed@2x.png`|| +|---|---|---|`task_to_do.png`|| +|---|---|---|`task_to_do@2x.png`|| +|---|`Layouts`|| +|---|---|`BasicTutorialLayout.wlt`|| +|---|`Sound Effects`|| +|---|---|`Pop.aiff`|| +|---|---|`Success.wav`|| +|`Plugins`|| +|---|`UnityEditor.InteractiveTutorialsFramework.dll`|| +|`Scripts`|| +|---|`Editor`|| +|---|---|`Criteria`|| +|---|---|---|`ComponentAddedCriterion.cs`|| +|---|---|---|`Criterion.cs`|| +|---|---|---|`InstantiatePrefabCriterion.cs`|| +|---|---|---|`PlayModeStateCriterion.cs`|| +|---|---|---|`PrefabInstanceCountCriterion.cs`|| +|---|---|---|`PropertyModificationCriterion.cs`|| +|---|---|---|`RequiredSelectionCriterion.cs`|| +|---|---|---|`TriggerTaskCriterion.cs`|| +|---|---|`Editor Windows`|| +|---|---|---|`TutorialModalWindow.cs`|| +|---|---|---|`TutorialParagraphView.cs`|| +|---|---|---|`TutorialWindow.cs`|| +|---|---|`Editors`|| +|---|---|---|`TutorialEditor.cs`|| +|---|---|---|`TutorialPageEditor.cs`|| +|---|---|`Masking`|| +|---|---|---|`MaskingSettings.cs`|| +|---|---|`Models`|| +|---|---|---|`AutoCompletion.cs`|| +|---|---|---|`InlineIcon.cs`|| +|---|---|---|`SceneViewCameraSettings.cs`|| +|---|---|---|`Tutorial.cs`|| +|---|---|---|`TutorialPage.cs`|| +|---|---|---|`TutorialParagraph.cs`|| +|---|---|---|`TutorialStyles.cs`|| +|---|---|---|`TutorialWelcomePage.cs`|| +|---|---|---|`TypedCriterion.cs`|| +|---|---|`Property Drawers`|| +|---|---|---|`CollectionWrapperDrawer.cs`|| +|---|---|---|`CollectionWrapperDrawer.cs`|| +|---|---|---|`ComponentAddedCriterionDrawers.cs`|| +|---|---|---|`FlushChildrenDrawer.cs`|| +|---|---|---|`GUIControlSelectorDrawer.cs`|| +|---|---|---|`InlineIconDrawer.cs`|| +|---|---|---|`InstantiatePrefabCriterionDrawers.cs`|| +|---|---|---|`MaskingSettingsDrawer.cs`|| +|---|---|---|`ObjectReferencePropertyDrawer.cs`|| +|---|---|---|`SceneObjectReferencePropertyDrawer.cs`|| +|---|---|---|`SceneViewCameraSettingsDrawer.cs`|| +|---|---|---|`SerializedTypeDrawer.cs`|| +|---|---|---|`TutorialParagraphCollectionDrawer.cs`|| +|---|---|---|`TutorialParagraphDrawer.cs`|| +|---|---|---|`TypedCriterionCollectionDrawer.cs`|| +|---|---|---|`TypedCriterionDrawer.cs`|| +|---|---|---|`UnmaskedViewDrawer.cs`|| +|---|---|`Shims`|| +|---|---|---|`PrefabUtilityShim.cs`|| +|---|---|`AnalyticsHelper.cs`|| +|---|---|`CollectionWrapper.cs`|| +|---|---|`FutureObjectReference.cs`|| +|---|---|`ObjectReference.cs`|| +|---|---|`SceneObjectReference.cs`|| +|---|---|`Unity.InteractiveTutorials.Editor.asmdef`|| +|---|---|`UserStartupCode.cs`|| +|---|`Runtime`|| +|---|---|`BaseCollisionBroadcaster.cs`|| +|---|---|`CollisionBroadcaster2D.cs`|| +|---|---|`CollisionBroadcaster3D.cs`|| +|---|---|`IPlayerAvatar.cs`|| +|---|---|`SceneObjectGUIDComponent.cs`|| +|---|---|`SceneObjectGUIDManager.cs`|| +|---|---|`SelectionRoot.cs`|| + + +## Document revision history +This section includes the revision history of the document. The revision history tracks when a document is created, edited, and updated. If you create or update a document, you must add a new row describing the revision. + +|Date|Reason| +|---|---| +|June 15, 2017|Document created. Matches package version 1.0.| \ No newline at end of file diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework.meta" new file mode 100644 index 00000000..29f55aba --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework.meta" @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 812fafaee5992489da8f44ff15da11df +folderAsset: yes +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/AssemblyInfo.cs" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/AssemblyInfo.cs" new file mode 100644 index 00000000..2e82048e --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/AssemblyInfo.cs" @@ -0,0 +1,4 @@ +using System.Runtime.CompilerServices; + +[assembly: InternalsVisibleTo("Unity.InternalAPIEditorBridgeDev.005")] +[assembly: InternalsVisibleTo("Assembly-CSharp-Editor-firstpass-testable")] diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/AssemblyInfo.cs.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/AssemblyInfo.cs.meta" new file mode 100644 index 00000000..d03ecc5b --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/AssemblyInfo.cs.meta" @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 43c90f77d32c24564b4c4561a794942f +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials.meta" new file mode 100644 index 00000000..1f326990 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials.meta" @@ -0,0 +1,9 @@ +fileFormatVersion: 2 +guid: 58ccefee317664d579d73f991e1ef826 +folderAsset: yes +timeCreated: 1484760814 +licenseType: Pro +DefaultImporter: + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/Editor.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/Editor.meta" new file mode 100644 index 00000000..64b067ea --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/Editor.meta" @@ -0,0 +1,9 @@ +fileFormatVersion: 2 +guid: 36da2cec42a424f109af45d35e4d19b5 +folderAsset: yes +timeCreated: 1484785876 +licenseType: Pro +DefaultImporter: + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/Editor/AnalyticsHelper.cs" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/Editor/AnalyticsHelper.cs" new file mode 100644 index 00000000..49f98971 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/Editor/AnalyticsHelper.cs" @@ -0,0 +1,267 @@ +using System; +using UnityEngine; +using UnityEditor; + +namespace Unity.InteractiveTutorials +{ + public enum TutorialConclusion + { + Completed, + Quit, + Reloaded + } + + class TutorialAnalyticsEventData + { + public string tutorialName; + public string version; + public TutorialConclusion conclusion; + public string lessonID; + + public TutorialAnalyticsEventData(string tutorialName, string version, TutorialConclusion conclusion, string lessonID) + { + this.tutorialName = tutorialName; + this.version = version; + this.conclusion = conclusion; + this.lessonID = lessonID; + } + } + + public enum TutorialPageConclusion + { + Completed, + Reviewed + } + + class TutorialPageAnalyticsEventData + { + public string tutorialName; + public int pageIndex; + public string guid; + public TutorialPageConclusion conclusion; + + public TutorialPageAnalyticsEventData(string tutorialName, int pageIndex, string guid, TutorialPageConclusion conclusion) + { + this.tutorialName = tutorialName; + this.pageIndex = pageIndex; + this.guid = guid; + this.conclusion = conclusion; + } + } + + public enum TutorialParagraphConclusion + { + Completed, + Regressed + } + + class TutorialParagraphAnalyticsEventData + { + public string tutorialName; + public int pageIndex; + public int paragraphIndex; + public TutorialParagraphConclusion conclusion; + + public TutorialParagraphAnalyticsEventData(string tutorialName, int pageIndex, int paragraphIndex, TutorialParagraphConclusion conclusion) + { + this.tutorialName = tutorialName; + this.pageIndex = pageIndex; + this.paragraphIndex = paragraphIndex; + this.conclusion = conclusion; + } + } + + class AnalyticsHelper : ScriptableObject, ISerializationCallbackReceiver + { + [SerializeField] + Tutorial currentTutorial; + + [SerializeField] + TutorialPage currentPage; + + [SerializeField] + int currentPageIndex; + + [SerializeField] + TutorialPage lastPage; + + [SerializeField] + int lastPageIndex; + + [SerializeField] + int currentParagraphIndex; + + DateTime currentTutorialStartTime; + + DateTime currentPageStartTime; + + DateTime lastPageStartTime; + + DateTime currentParagraphStartTime; + + [SerializeField] + long currentTutorialStartTicks; + + [SerializeField] + long currentPageStartTicks; + + [SerializeField] + long lastPageStartTicks; + + [SerializeField] + long currentParagraphStartTicks; + + public static AnalyticsHelper Instance + { + get + { + if (!s_Instance) + { + var instance = Resources.FindObjectsOfTypeAll(); + if (instance.Length == 0) + { + s_Instance = CreateInstance(); + s_Instance.hideFlags = HideFlags.HideAndDontSave; + } + else + { + s_Instance = instance[0] as AnalyticsHelper; + } + } + return s_Instance; + } + } + static AnalyticsHelper s_Instance; + + public void OnBeforeSerialize() + { + currentTutorialStartTicks = currentTutorialStartTime.Ticks; + currentPageStartTicks = currentPageStartTime.Ticks; + lastPageStartTicks = lastPageStartTime.Ticks; + currentParagraphStartTicks = currentParagraphStartTime.Ticks; + } + + public void OnAfterDeserialize() + { + currentTutorialStartTime = new DateTime(currentTutorialStartTicks, DateTimeKind.Utc); + currentPageStartTime = new DateTime(currentPageStartTicks, DateTimeKind.Utc); + lastPageStartTime = new DateTime(lastPageStartTicks, DateTimeKind.Utc); + currentParagraphStartTime = new DateTime(currentParagraphStartTicks, DateTimeKind.Utc); + } + + static void DebugWarning(string message, params object[] args) + { +#if DEBUG_TUTORIALS + Debug.LogWarningFormat(message, args); +#endif + } + + static void DebugLog(string message, params object[] args) + { +#if DEBUG_TUTORIALS + Debug.LogFormat(message, args); +#endif + } + + internal static void TutorialStarted(Tutorial tutorial) + { + if (Instance.currentTutorial != null) + { + DebugWarning("TutorialStarted Ignored because tutorial is already set: {0}", tutorial); + return; + } + DebugLog("Tutorial Started: {0}", tutorial); + Instance.currentTutorial = tutorial; + Instance.currentTutorialStartTime = DateTime.UtcNow; + Instance.currentPageIndex = Instance.lastPageIndex = Instance.currentParagraphIndex = -1; + Instance.currentPage = Instance.lastPage = null; + } + + internal static void TutorialEnded(TutorialConclusion conclusion) + { + if (Instance.currentTutorial == null) + { + DebugWarning("TutorialEnded Ignored because no tutorial is set"); + return; + } + if (conclusion == TutorialConclusion.Completed) + PageShown(Instance.lastPage, Instance.lastPageIndex + 1); // "Show" a dummy page to get the last page to report + var data = new TutorialAnalyticsEventData(Instance.currentTutorial.name, Instance.currentTutorial.version, conclusion, Instance.currentTutorial.lessonId); + UsabilityAnalyticsProxy.SendEvent("tutorial", Instance.currentTutorialStartTime, DateTime.UtcNow - Instance.currentTutorialStartTime, false, data); + DebugLog("Tutorial Ended"); + Instance.currentTutorial = null; + } + + internal static void PageShown(TutorialPage page, int pageIndex) + { + if (Instance.currentTutorial == null) + { + DebugWarning("PageShown Ignored because no tutorial is set"); + return; + } + if (Instance.lastPage != null) + { + if (Instance.currentPageIndex < Instance.lastPageIndex) + { + var data = new TutorialPageAnalyticsEventData(Instance.currentTutorial.name, Instance.currentPageIndex, Instance.currentPage.guid, TutorialPageConclusion.Reviewed); + UsabilityAnalyticsProxy.SendEvent("tutorialPage", Instance.currentPageStartTime, DateTime.UtcNow - Instance.currentPageStartTime, false, data); + DebugLog("Page Reviewed: {0}", Instance.currentPageIndex); + } + else if (pageIndex > Instance.lastPageIndex) + { + var data = new TutorialPageAnalyticsEventData(Instance.currentTutorial.name, Instance.lastPageIndex, Instance.lastPage.guid, TutorialPageConclusion.Completed); + UsabilityAnalyticsProxy.SendEvent("tutorialPage", Instance.lastPageStartTime, DateTime.UtcNow - Instance.lastPageStartTime, false, data); + DebugLog("Page Completed: {0}", Instance.lastPageIndex); + } + } + Instance.currentPageIndex = pageIndex; + Instance.currentPage = page; + Instance.currentPageStartTime = DateTime.UtcNow; + if (Instance.currentPageIndex > Instance.lastPageIndex) + { + Instance.lastPageIndex = pageIndex; + Instance.lastPage = page; + Instance.lastPageStartTime = DateTime.UtcNow; + Instance.currentParagraphIndex = -1; + } + } + + internal static void ParagraphStarted(int paragraphIndex) + { + if (Instance.currentTutorial == null) + { + DebugWarning("ParagraphStarted Ignored because no tutorial is set: {0}", paragraphIndex); + return; + } + if (Instance.currentParagraphIndex >= 0) + ParagraphEnded(true); + DebugLog("Paragraph Started: {0}", paragraphIndex); + Instance.currentParagraphStartTime = DateTime.UtcNow; + Instance.currentParagraphIndex = paragraphIndex; + } + + internal static void ParagraphEnded() + { + ParagraphEnded(false); + } + + internal static void ParagraphEnded(bool regressed) + { + if (Instance.currentTutorial == null) + { + DebugWarning("ParagraphEnded Ignored because no tutorial is set"); + return; + } + if (Instance.currentParagraphIndex == -1) + { + DebugWarning("ParagraphEnded Ignored because no paragraph is active"); + return; + } + DebugLog("Paragraph Ended: regression = {0}", regressed); + var conclusion = regressed ? TutorialParagraphConclusion.Regressed : TutorialParagraphConclusion.Completed; + var data = new TutorialParagraphAnalyticsEventData(Instance.currentTutorial.name, Instance.currentPageIndex, Instance.currentParagraphIndex, conclusion); + UsabilityAnalyticsProxy.SendEvent("tutorialParagraph", Instance.currentParagraphStartTime, DateTime.UtcNow - Instance.currentParagraphStartTime, false, data); + Instance.currentParagraphIndex = -1; + } + } +} diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/Editor/AnalyticsHelper.cs.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/Editor/AnalyticsHelper.cs.meta" new file mode 100644 index 00000000..8e8868da --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/Editor/AnalyticsHelper.cs.meta" @@ -0,0 +1,12 @@ +fileFormatVersion: 2 +guid: 43d2dfc46161940968ed7bdcc6a6c3d3 +timeCreated: 1497604450 +licenseType: Pro +MonoImporter: + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/Editor/CollectionWrapper.cs" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/Editor/CollectionWrapper.cs" new file mode 100644 index 00000000..3a41e76f --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/Editor/CollectionWrapper.cs" @@ -0,0 +1,62 @@ +using System.Collections; +using System.Collections.Generic; +using UnityEngine; + +namespace Unity.InteractiveTutorials +{ + public abstract class CollectionWrapper + { + } + + public abstract class CollectionWrapper : CollectionWrapper, IEnumerable + { + [SerializeField] + List m_Items = new List(); + + public CollectionWrapper() {} + public CollectionWrapper(IList items) { SetItems(items); } + + public T this[int i] + { + get { return m_Items[i]; } + set + { + if ( + (m_Items[i] == null && value != null) || + (m_Items[i] != null && !m_Items[i].Equals(value)) + ) + { + m_Items[i] = value; + } + } + } + + public int count { get { return m_Items.Count; } } + + IEnumerator IEnumerable.GetEnumerator() + { + return m_Items.GetEnumerator(); + } + + public IEnumerator GetEnumerator() + { + return m_Items.GetEnumerator(); + } + + public void GetItems(List items) + { + if (items.Capacity < m_Items.Count) + { + items.Capacity = m_Items.Count; + } + items.Clear(); + items.AddRange(m_Items); + } + + public void SetItems(IEnumerable items) + { + m_Items.Clear(); + m_Items.AddRange(items); + } + } +} diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/Editor/CollectionWrapper.cs.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/Editor/CollectionWrapper.cs.meta" new file mode 100644 index 00000000..0405ac09 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/Editor/CollectionWrapper.cs.meta" @@ -0,0 +1,12 @@ +fileFormatVersion: 2 +guid: 1de85cb3d88794227bc45c4447a73006 +timeCreated: 1489584215 +licenseType: Pro +MonoImporter: + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/Editor/Criteria.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/Editor/Criteria.meta" new file mode 100644 index 00000000..6073dd22 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/Editor/Criteria.meta" @@ -0,0 +1,9 @@ +fileFormatVersion: 2 +guid: b844874ebdec84a77ac3bda53893f56a +folderAsset: yes +timeCreated: 1489492431 +licenseType: Pro +DefaultImporter: + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/Editor/Criteria/ActiveToolCriterion.cs" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/Editor/Criteria/ActiveToolCriterion.cs" new file mode 100644 index 00000000..b568a15d --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/Editor/Criteria/ActiveToolCriterion.cs" @@ -0,0 +1,35 @@ +using UnityEditor; +using UnityEngine; + +namespace Unity.InteractiveTutorials +{ + public class ActiveToolCriterion : Criterion + { + public Tool targetTool { get { return m_TargetTool; } set { m_TargetTool = value; } } + [SerializeField] + Tool m_TargetTool; + + public override void StartTesting() + { + UpdateCompletion(); + + EditorApplication.update += UpdateCompletion; + } + + public override void StopTesting() + { + EditorApplication.update -= UpdateCompletion; + } + + protected override bool EvaluateCompletion() + { + return Tools.current == m_TargetTool; + } + + public override bool AutoComplete() + { + Tools.current = m_TargetTool; + return true; + } + } +} diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/Editor/Criteria/ActiveToolCriterion.cs.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/Editor/Criteria/ActiveToolCriterion.cs.meta" new file mode 100644 index 00000000..67f65d0f --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/Editor/Criteria/ActiveToolCriterion.cs.meta" @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 09cf94368c18acd4b87b173cdb62b502 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/Editor/Criteria/BuildStartedCriterion.cs" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/Editor/Criteria/BuildStartedCriterion.cs" new file mode 100644 index 00000000..9c44f671 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/Editor/Criteria/BuildStartedCriterion.cs" @@ -0,0 +1,42 @@ +using System; +using UnityEditor; +using UnityEngine; + +namespace Unity.InteractiveTutorials +{ + public class BuildStartedCriterion : Criterion + { + bool m_BuildStarted; + + public void BuildPlayerCustomHandler(BuildPlayerOptions options) + { + m_BuildStarted = true; + BuildPipeline.BuildPlayer(options); + } + + public override void StartTesting() + { + Action customHandler = BuildPlayerCustomHandler; + m_BuildStarted = false; + UpdateCompletion(); + BuildPlayerWindow.RegisterBuildPlayerHandler(customHandler); + EditorApplication.update += UpdateCompletion; + } + + public override void StopTesting() + { + BuildPlayerWindow.RegisterBuildPlayerHandler(null); + EditorApplication.update -= UpdateCompletion; + } + + protected override bool EvaluateCompletion() + { + return m_BuildStarted; + } + + public override bool AutoComplete() + { + return true; + } + } +} \ No newline at end of file diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/Editor/Criteria/BuildStartedCriterion.cs.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/Editor/Criteria/BuildStartedCriterion.cs.meta" new file mode 100644 index 00000000..83c26e6c --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/Editor/Criteria/BuildStartedCriterion.cs.meta" @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 17ecd043c7572b4429873c0f8ef1cae2 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/Editor/Criteria/ComponentAddedCriterion.cs" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/Editor/Criteria/ComponentAddedCriterion.cs" new file mode 100644 index 00000000..384605f2 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/Editor/Criteria/ComponentAddedCriterion.cs" @@ -0,0 +1,164 @@ +using System; +using System.Collections.Generic; +using System.Linq; +using UnityEditor; +using UnityEngine; +using UnityEngine.Serialization; + +using UnityObject = UnityEngine.Object; + +namespace Unity.InteractiveTutorials +{ + public class ComponentAddedCriterion : Criterion + { + [SerializeField, FormerlySerializedAs("targetGameObject")] + ObjectReference m_TargetGameObject; + + [SerializeField, FormerlySerializedAs("requiredComponents")] + SerializedTypeCollection m_RequiredComponents = new SerializedTypeCollection(); + + public GameObject targetGameObject + { + get + { + if (m_TargetGameObject == null) + return null; + return m_TargetGameObject.sceneObjectReference.ReferencedObjectAsGameObject; + } + set + { + if (m_TargetGameObject == null) + m_TargetGameObject = new ObjectReference(); + m_TargetGameObject.sceneObjectReference.Update(value); + } + } + + public IList requiredComponents + { + get + { + return m_RequiredComponents.Select(typeAndFutureReference => typeAndFutureReference.serializedType.type) + .ToList(); + } + set + { + var items = value.Select(type => new TypeAndFutureReference(new SerializedType(type))).ToList(); + m_RequiredComponents.SetItems(items); + OnValidate(); + } + } + + public override void StartTesting() + { + UpdateCompletion(); + + EditorApplication.update += UpdateCompletion; + } + + public override void StopTesting() + { + EditorApplication.update -= UpdateCompletion; + } + + protected override void OnValidate() + { + // Destroy unused future reference assets + base.OnValidate(); + + // Update future references + var requiredComponentsIndex = 0; + foreach (var typeAndFutureReference in m_RequiredComponents) + { + requiredComponentsIndex++; + + var type = typeAndFutureReference.serializedType.type; + if (type == null) + continue; + + if (typeAndFutureReference.futureReference == null) + typeAndFutureReference.futureReference = CreateFutureObjectReference(); + + typeAndFutureReference.futureReference.referenceName = string.Format("{0}: {1}", + requiredComponentsIndex, type.FullName); + } + + if (requiredComponentsIndex != 0) + UpdateFutureObjectReferenceNames(); + } + + protected override bool EvaluateCompletion() + { + var gameObject = targetGameObject; + if (gameObject == null) + return false; + + if (requiredComponents.Count() == 0) + return true; + + foreach (var type in requiredComponents) + { + if (type == null) + { + Debug.LogWarning("Testing for a null component type will always fail."); + return false; + } + + if (gameObject.GetComponent(type) == null) + return false; + } + + // Update future references + foreach (var requiredType in m_RequiredComponents) + { + var component = gameObject.GetComponent(requiredType.serializedType.type); + requiredType.futureReference.sceneObjectReference.Update(component); + } + + return true; + } + + protected override IEnumerable GetFutureObjectReferences() + { + return m_RequiredComponents + .Where(c => c.serializedType.type != null && c.futureReference != null) + .Select(c => c.futureReference); + } + + public override bool AutoComplete() + { + var gameObject = targetGameObject; + if (gameObject == null) + return false; + + foreach (var type in requiredComponents) + { + var component = gameObject.AddComponent(type); + if (component == null) + return false; + } + + return true; + } + + [Serializable] + public class SerializedTypeCollection : CollectionWrapper {} + + [Serializable] + public class TypeAndFutureReference : ICloneable + { + [SerializedTypeFilter(typeof(Component))] + public SerializedType serializedType; + public FutureObjectReference futureReference; + + public TypeAndFutureReference(SerializedType serializedType) + { + this.serializedType = serializedType; + } + + public object Clone() + { + return new TypeAndFutureReference(serializedType); + } + } + } +} diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/Editor/Criteria/ComponentAddedCriterion.cs.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/Editor/Criteria/ComponentAddedCriterion.cs.meta" new file mode 100644 index 00000000..1cbbf729 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/Editor/Criteria/ComponentAddedCriterion.cs.meta" @@ -0,0 +1,12 @@ +fileFormatVersion: 2 +guid: d7776bd559ac56348a6a4b8c38ce7aa7 +timeCreated: 1490877288 +licenseType: Pro +MonoImporter: + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/Editor/Criteria/Criterion.cs" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/Editor/Criteria/Criterion.cs" new file mode 100644 index 00000000..b43f8560 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/Editor/Criteria/Criterion.cs" @@ -0,0 +1,125 @@ +using System; +using System.Collections.Generic; +using System.Linq; +using UnityEditor; +using UnityEngine; + +namespace Unity.InteractiveTutorials +{ + public abstract class Criterion : ScriptableObject + { + public static event Action criterionCompleted; + public static event Action criterionInvalidated; + + readonly bool m_EvaluateCompletionOnAccess; + bool m_Completed; + + public bool completed + { + get { return m_Completed; } + protected set + { + if (value == m_Completed) + return; + + m_Completed = value; + if (m_Completed) + { + if (criterionCompleted != null) + criterionCompleted(this); + } + else + { + if (criterionInvalidated != null) + criterionInvalidated(this); + } + } + } + + public void ResetCompletionState() + { + m_Completed = false; + } + + public virtual void StartTesting() + { + } + + public virtual void StopTesting() + { + } + + public virtual void UpdateCompletion() + { + completed = EvaluateCompletion(); + } + + protected virtual bool EvaluateCompletion() + { + throw new NotImplementedException((String.Format("Missing implementation of EvaluateCompletion in: {0}", GetType()))); + } + + protected virtual IEnumerable GetFutureObjectReferences() + { + return Enumerable.Empty(); + } + + protected virtual void OnValidate() + { + // Find instanceIDs of referenced future references + var referencedFutureReferenceInstanceIDs = new HashSet(); + foreach (var futureReference in GetFutureObjectReferences()) + referencedFutureReferenceInstanceIDs.Add(futureReference.GetInstanceID()); + + // Destroy unreferenced future references + var assetPath = AssetDatabase.GetAssetPath(this); + var assets = AssetDatabase.LoadAllAssetsAtPath(assetPath); + foreach (var asset in assets) + { + if (asset is FutureObjectReference + && ((FutureObjectReference)asset).criterion == this + && !referencedFutureReferenceInstanceIDs.Contains(asset.GetInstanceID())) + DestroyImmediate(asset, true); + } + } + + protected FutureObjectReference CreateFutureObjectReference() + { + return CreateFutureObjectReference("Future Reference"); + } + + protected FutureObjectReference CreateFutureObjectReference(string referenceName) + { + var futureReference = CreateInstance(); + futureReference.criterion = this; + futureReference.referenceName = referenceName; + + var assetPath = AssetDatabase.GetAssetPath(this); + AssetDatabase.AddObjectToAsset(futureReference, assetPath); + + return futureReference; + } + + protected void UpdateFutureObjectReferenceNames() + { + // Update future reference names in next editor update due to AssetDatase interactions + EditorApplication.update += UpdateFutureObjectReferenceNamesPostponed; + } + + void UpdateFutureObjectReferenceNamesPostponed() + { + // Unsubscribe immediately since it should only be called once + EditorApplication.update -= UpdateFutureObjectReferenceNamesPostponed; + + var assetPath = AssetDatabase.GetAssetPath(this); + var tutorialPage = (TutorialPage)AssetDatabase.LoadMainAssetAtPath(assetPath); + var futureReferences = AssetDatabase.LoadAllAssetsAtPath(assetPath) + .Where(o => o is FutureObjectReference) + .Cast(); + foreach (var futureReference in futureReferences) + tutorialPage.UpdateFutureObjectReferenceName(futureReference); + } + + public abstract bool AutoComplete(); + } +} diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/Editor/Criteria/Criterion.cs.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/Editor/Criteria/Criterion.cs.meta" new file mode 100644 index 00000000..adb70bfe --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/Editor/Criteria/Criterion.cs.meta" @@ -0,0 +1,12 @@ +fileFormatVersion: 2 +guid: 5586eeb7ff3f645118953323e6ee5729 +timeCreated: 1489492432 +licenseType: Pro +MonoImporter: + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/Editor/Criteria/EditorWindowCriterion.cs" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/Editor/Criteria/EditorWindowCriterion.cs" new file mode 100644 index 00000000..00253adb --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/Editor/Criteria/EditorWindowCriterion.cs" @@ -0,0 +1,93 @@ +using UnityEditor; +using UnityEngine; + +namespace Unity.InteractiveTutorials +{ + public class EditorWindowCriterion : Criterion + { + [SerializedTypeFilter(typeof(EditorWindow))] + [SerializeField] + SerializedType m_EditorWindowType = new SerializedType(null); + + public SerializedType editorWindowType + { + get + { + return m_EditorWindowType; + } + set + { + m_EditorWindowType = value; + } + } + + [SerializeField] + bool m_CloseIfAlreadyOpen; + + public bool closeIfAlreadyOpen + { + get + { + return m_CloseIfAlreadyOpen; + } + set + { + m_CloseIfAlreadyOpen = value; + } + } + + EditorWindow m_WindowInstance; + + public override void StartTesting() + { + UpdateCompletion(); + + EditorApplication.update += UpdateCompletion; + } + + public override void StopTesting() + { + EditorApplication.update -= UpdateCompletion; + } + + protected override bool EvaluateCompletion() + { + if (m_EditorWindowType.type == null) + { + return false; + } + if (!m_WindowInstance) + { + var windows = Resources.FindObjectsOfTypeAll(m_EditorWindowType.type); + + foreach (var w in windows) + { + if (w.GetType() == m_EditorWindowType.type) + { + m_WindowInstance = (EditorWindow)w; + + m_WindowInstance.Focus(); + return true; + } + } + return false; + } + if (m_WindowInstance.GetType() != m_EditorWindowType.type) + { + m_WindowInstance = null; + } + return true; + } + + public override bool AutoComplete() + { + if(m_EditorWindowType.type == null) + { + return false; + } + + var window = EditorWindow.GetWindow(m_EditorWindowType.type); + return true; + } + } +} diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/Editor/Criteria/EditorWindowCriterion.cs.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/Editor/Criteria/EditorWindowCriterion.cs.meta" new file mode 100644 index 00000000..42bde6ee --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/Editor/Criteria/EditorWindowCriterion.cs.meta" @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: f095ab04ffe3b514c808035bb335fa56 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/Editor/Criteria/FrameSelectedCriterion.cs" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/Editor/Criteria/FrameSelectedCriterion.cs" new file mode 100644 index 00000000..3e9546b9 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/Editor/Criteria/FrameSelectedCriterion.cs" @@ -0,0 +1,113 @@ +using System; +using System.Collections.Generic; +using System.Linq; +using UnityEditor; +using UnityEngine; + +namespace Unity.InteractiveTutorials +{ + public class FrameSelectedCriterion : Criterion + { + [Serializable] + class ObjectReferenceCollection : CollectionWrapper + { + } + + [SerializeField] + ObjectReferenceCollection m_ObjectReferences = new ObjectReferenceCollection(); + + public void SetObjectReferences(IEnumerable objectReferences) + { + m_ObjectReferences.SetItems(objectReferences); + UpdateCompletion(); + } + + public override void StartTesting() + { +#if UNITY_2019_1_OR_NEWER + SceneView.duringSceneGui += OnSceneGUI; +#else + SceneView.onSceneGUIDelegate += OnSceneGUI; +#endif + } + + public override void StopTesting() + { +#if UNITY_2019_1_OR_NEWER + SceneView.duringSceneGui -= OnSceneGUI; +#else + SceneView.onSceneGUIDelegate -= OnSceneGUI; +#endif + } + + // Overriding the update completion state, as this criterion is not state based + public override void UpdateCompletion() + { + } + + void OnSceneGUI(SceneView sceneView) + { + var evt = Event.current; + if (evt.type == EventType.ExecuteCommand && evt.commandName == "FrameSelected") + { + if (!m_ObjectReferences.Any()) + return; + + if (m_ObjectReferences.Count() != Selection.objects.Length) + return; + + foreach (var objectReference in m_ObjectReferences) + { + var referencedObject = objectReference.sceneObjectReference.ReferencedObject; + if (referencedObject == null) + return; + + if (!Selection.objects.Contains(referencedObject)) + return; + } + + completed = true; + } + } + + public override bool AutoComplete() + { + if (!m_ObjectReferences.Any()) + { + Debug.LogWarning("Cannot auto-complete FrameSelectedCriterion with no object references"); + return false; + } + + var referencedObjects = m_ObjectReferences.Select(or => or.sceneObjectReference.ReferencedObject); + if (referencedObjects.Any(obj => obj == null)) + { + Debug.LogWarning("Cannot auto-complete FrameSelectedCriterion with unresolved object references"); + return false; + } + + if (SceneView.lastActiveSceneView == null) + { + Debug.LogWarning("Cannot auto-complete FrameSelectedCriterion when there is no last active Scene View"); + return false; + } + + var previousActiveObject = Selection.activeObject; + var previousSelection = Selection.objects.ToArray(); + + Selection.objects = referencedObjects.ToArray(); + + if (!SceneView.FrameLastActiveSceneView()) + { + Debug.LogWarning("Cannot auto-complete FrameSelectedCriterion since framing last active Scene View failed"); + + // Restore selection + Selection.activeObject = previousActiveObject; + Selection.objects = previousSelection; + + return false; + } + + return true; + } + } +} diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/Editor/Criteria/FrameSelectedCriterion.cs.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/Editor/Criteria/FrameSelectedCriterion.cs.meta" new file mode 100644 index 00000000..e384bf36 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/Editor/Criteria/FrameSelectedCriterion.cs.meta" @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 065f6938014794cff8ac3d1382107ec8 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/Editor/Criteria/InstantiatePrefabCriterion.cs" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/Editor/Criteria/InstantiatePrefabCriterion.cs" new file mode 100644 index 00000000..6f4ebfc6 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/Editor/Criteria/InstantiatePrefabCriterion.cs" @@ -0,0 +1,307 @@ +using System; +using System.Collections.Generic; +using System.Linq; +using UnityEditor; +using UnityEngine; + +using UnityObject = UnityEngine.Object; + +namespace Unity.InteractiveTutorials +{ + class InstantiatePrefabCriterion : Criterion + { + [SerializeField] + GameObject m_PrefabParent; + + [SerializeField] + FuturePrefabInstanceCollection m_FuturePrefabInstances = new FuturePrefabInstanceCollection(); + + // InstanceID's of existing GameObject prefab instance roots we want to ignore + HashSet m_ExistingPrefabInstances = new HashSet(); + + // InstanceID of GameObject prefab instance root that initially completed this criterion + int m_PrefabInstance; + + public GameObject prefabParent + { + get { return m_PrefabParent; } + set + { + m_PrefabParent = value; + OnValidate(); + } + } + + public void SetFuturePrefabInstances(IList prefabParents) + { + var futurePrefabInstances = prefabParents.Select(prefabParent => new FuturePrefabInstance(prefabParent)); + m_FuturePrefabInstances.SetItems(futurePrefabInstances.ToList()); + OnValidate(); + } + + protected override void OnValidate() + { + base.OnValidate(); + + if (m_PrefabParent == null) + return; + + // Ensure prefab parent is infact a prefab parent + if (PrefabUtility.GetPrefabAssetType(m_PrefabParent) != PrefabAssetType.NotAPrefab) + { + // Ensure prefab parent is the prefab root + var prefabRoot = m_PrefabParent.transform.root.gameObject; + if (m_PrefabParent != prefabRoot) + m_PrefabParent = prefabRoot; + } + else + { + Debug.LogWarning("Prefab parent must either be a prefab parent or a prefab instance."); + m_PrefabParent = null; + } + + // Prevent aliasing of future reference whenever the last item is copied + var count = m_FuturePrefabInstances.count; + if (count >= 2) + { + var last = m_FuturePrefabInstances[count - 1]; + var secondLast = m_FuturePrefabInstances[count - 2]; + if (last.futureReference == secondLast.futureReference) + last.futureReference = null; + } + + var updateFutureReferenceNames = false; + var futurePrefabInstanceIndex = -1; + + foreach (var futurePrefabInstance in m_FuturePrefabInstances) + { + futurePrefabInstanceIndex++; + + // Destroy future reference if prefab parent is null or it changed + var prefabParent = futurePrefabInstance.prefabParent; + var previousPrefabParent = futurePrefabInstance.previousPrefabParent; + futurePrefabInstance.previousPrefabParent = prefabParent; + if (prefabParent == null || (previousPrefabParent != null && prefabParent != previousPrefabParent)) + { + if (futurePrefabInstance.futureReference != null) + { + DestroyImmediate(futurePrefabInstance.futureReference, true); + futurePrefabInstance.futureReference = null; + } + } + + if (prefabParent == null) + continue; + + // Ensure future prefab parent is infact a prefab parent + if (PrefabUtility.GetPrefabAssetType(prefabParent) != PrefabAssetType.NotAPrefab) + { + // Find root game object of future prefab parent + GameObject futurePrefabParentRoot = null; + if (prefabParent is GameObject) + { + var gameObject = (GameObject)prefabParent; + futurePrefabParentRoot = gameObject.transform.root.gameObject; + } + else if (prefabParent is Component) + { + var component = (Component)prefabParent; + futurePrefabParentRoot = component.transform.root.gameObject; + } + + // Ensure prefab parent and future prefab parent belong to the same prefab + if (futurePrefabParentRoot == m_PrefabParent) + { + // Create new future reference if it doesn't exist yet + if (futurePrefabInstance.futureReference == null) + { + var referenceName = string.Format("{0}: {1} ({2})", futurePrefabInstanceIndex + 1, + prefabParent.name, prefabParent.GetType().Name); + futurePrefabInstance.futureReference = CreateFutureObjectReference(referenceName); + updateFutureReferenceNames = true; + } + } + else + { + Debug.LogWarning("Prefab parent and future prefab parent have different prefab objects."); + futurePrefabInstance.prefabParent = null; + } + } + else + { + Debug.LogWarning("Future prefab parent must be either a prefab parent or a prefab instance."); + futurePrefabInstance.prefabParent = null; + } + } + + if (updateFutureReferenceNames) + UpdateFutureObjectReferenceNames(); + } + + public override void StartTesting() + { + // Record existing prefab instances + m_ExistingPrefabInstances.Clear(); + foreach (var gameObject in UnityObject.FindObjectsOfType()) + { + if (PrefabUtilityShim.GetCorrespondingObjectFromSource(gameObject) != null) + { + var prefabInstanceRoot = PrefabUtility.GetOutermostPrefabInstanceRoot(gameObject); + m_ExistingPrefabInstances.Add(prefabInstanceRoot.GetInstanceID()); + } + } + + Selection.selectionChanged += OnSelectionChanged; + + if (completed) + EditorApplication.update += OnUpdateWhenCompleted; + + UpdateCompletion(); + } + + public override void StopTesting() + { + m_ExistingPrefabInstances.Clear(); + + Selection.selectionChanged -= OnSelectionChanged; + EditorApplication.update -= OnUpdateWhenCompleted; + } + + void OnSelectionChanged() + { + if (completed) + return; + + foreach (var gameObject in Selection.gameObjects) + { + if (PrefabUtilityShim.GetCorrespondingObjectFromSource(gameObject) != null) + { + var prefabInstanceRoot = PrefabUtility.GetOutermostPrefabInstanceRoot(gameObject); + if (prefabInstanceRoot == gameObject && m_ExistingPrefabInstances.Add(prefabInstanceRoot.GetInstanceID())) + OnPrefabInstantiated(prefabInstanceRoot); + } + } + } + + void OnPrefabInstantiated(GameObject prefabInstanceRoot) + { + if (m_PrefabParent == null) + return; + + if (PrefabUtilityShim.GetCorrespondingObjectFromSource(prefabInstanceRoot) == m_PrefabParent) + { + foreach (var component in prefabInstanceRoot.GetComponentsInChildren()) + { + UpdateFutureReferences(component); + + if (component is Transform) + UpdateFutureReferences(component.gameObject); + } + + m_PrefabInstance = prefabInstanceRoot.GetInstanceID(); + + UpdateCompletion(); + } + } + + void OnUpdateWhenCompleted() + { + if (!completed) + { + EditorApplication.update -= OnUpdateWhenCompleted; + return; + } + + UpdateCompletion(); + } + + bool EvaluateCompletionInternal() + { + if (m_PrefabInstance == 0) + return false; + + var prefabObject = EditorUtility.InstanceIDToObject(m_PrefabInstance); + if (prefabObject == null) + { + m_ExistingPrefabInstances.Remove(m_PrefabInstance); + m_PrefabInstance = 0; + + return false; + } + + return true; + } + + protected override bool EvaluateCompletion() + { + var willBeCompleted = EvaluateCompletionInternal(); + if (!completed && willBeCompleted) + EditorApplication.update += OnUpdateWhenCompleted; + + return willBeCompleted; + } + + void UpdateFutureReferences(UnityObject prefabInstance) + { + UnityObject prefabParent = PrefabUtilityShim.GetCorrespondingObjectFromSource(prefabInstance); + foreach (var futurePrefabInstance in m_FuturePrefabInstances) + { + if (futurePrefabInstance.prefabParent == prefabParent) + futurePrefabInstance.futureReference.sceneObjectReference.Update(prefabInstance); + } + } + + protected override IEnumerable GetFutureObjectReferences() + { + return m_FuturePrefabInstances + .Select(futurePrefabInstance => futurePrefabInstance.futureReference) + .Where(futurePrefabInstance => futurePrefabInstance != null); + } + + public override bool AutoComplete() + { + if (m_PrefabParent == null) + return false; + + Selection.activeObject = PrefabUtility.InstantiatePrefab(m_PrefabParent); + + return true; + } + + [Serializable] + public class FuturePrefabInstance + { + [SerializeField] + UnityObject m_PrefabParent; + + UnityObject m_PreviousPrefabParent; + + [SerializeField, HideInInspector] + FutureObjectReference m_FutureReference; + + public UnityObject prefabParent { get { return m_PrefabParent; } set { m_PrefabParent = value; } } + + public UnityObject previousPrefabParent + { + get { return m_PreviousPrefabParent; } + set { m_PreviousPrefabParent = value; } + } + + public FutureObjectReference futureReference + { + get { return m_FutureReference; } + set { m_FutureReference = value; } + } + + public FuturePrefabInstance(UnityObject prefabParent) + { + m_PrefabParent = prefabParent; + } + } + + [Serializable] + class FuturePrefabInstanceCollection : CollectionWrapper + { + } + } +} diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/Editor/Criteria/InstantiatePrefabCriterion.cs.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/Editor/Criteria/InstantiatePrefabCriterion.cs.meta" new file mode 100644 index 00000000..d7f73860 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/Editor/Criteria/InstantiatePrefabCriterion.cs.meta" @@ -0,0 +1,12 @@ +fileFormatVersion: 2 +guid: cd3e7c665e4144f519b7ee9de726ea5f +timeCreated: 1495290353 +licenseType: Pro +MonoImporter: + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/Editor/Criteria/MaterialPropertyModifiedCriterion.cs" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/Editor/Criteria/MaterialPropertyModifiedCriterion.cs" new file mode 100644 index 00000000..fa3501d2 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/Editor/Criteria/MaterialPropertyModifiedCriterion.cs" @@ -0,0 +1,112 @@ +using System; +using System.Transactions; +using UnityEditor; +using UnityEngine; + +using UnityObject = UnityEngine.Object; + +namespace Unity.InteractiveTutorials +{ + public class MaterialPropertyModifiedCriterion : Criterion + { + internal SceneObjectReference target + { + get { return m_Target.sceneObjectReference; } + set { m_Target.sceneObjectReference = value; } + } + [SerializeField] + ObjectReference m_Target = new ObjectReference(); + + internal string materialPropertyPath + { + get { return m_MaterialPropertyPath; } + set { m_MaterialPropertyPath = value; } + } + [SerializeField] + string m_MaterialPropertyPath = ""; + + string m_InitialValue = null; + + static MaterialProperty FindProperty(string path, Material material) + { + UnityObject[] mats = new[] { material }; + return MaterialEditor.GetMaterialProperty(mats, path); + } + + static string GetPropertyValueToString(MaterialProperty property) + { + switch (property.type) + { + case MaterialProperty.PropType.Color: + return property.colorValue.ToString(); + case MaterialProperty.PropType.Vector: + return property.vectorValue.ToString(); + case MaterialProperty.PropType.Float: + return property.floatValue.ToString(); + case MaterialProperty.PropType.Range: + return property.rangeLimits.ToString(); + case MaterialProperty.PropType.Texture: + return property.textureValue.GetInstanceID().ToString(); + default: + throw new ArgumentOutOfRangeException(); + } + } + + public override void StartTesting() + { + InitializeRequiredStateIfNeeded(); + + EditorApplication.update += UpdateCompletion; + } + + void InitializeRequiredStateIfNeeded() + { + if (m_InitialValue != null) + return; + + if(string.IsNullOrEmpty(m_MaterialPropertyPath) || target.ReferencedObject == null) + return; + + var property = FindProperty(m_MaterialPropertyPath, (Material)target.ReferencedObject); + + m_InitialValue = GetPropertyValueToString(property); + } + + public override void StopTesting() + { + m_InitialValue = null; + EditorApplication.update -= UpdateCompletion; + } + + + + protected override bool EvaluateCompletion() + { + + InitializeRequiredStateIfNeeded(); + + if (m_InitialValue == null) + return false; + + if (m_MaterialPropertyPath == null || target.ReferencedObject == null) + return false; + + var property = FindProperty(m_MaterialPropertyPath, (Material)target.ReferencedObject); + + if (property == null) + return false; + + var currentValue = GetPropertyValueToString(property); + + if (currentValue != m_InitialValue) + return true; + + return false; + } + + public override bool AutoComplete() + { + throw new NotImplementedException(); + } + } +} \ No newline at end of file diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/Editor/Criteria/MaterialPropertyModifiedCriterion.cs.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/Editor/Criteria/MaterialPropertyModifiedCriterion.cs.meta" new file mode 100644 index 00000000..c5d3a2e8 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/Editor/Criteria/MaterialPropertyModifiedCriterion.cs.meta" @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: f1cafc69ed04ce4439d7ec629db36ca4 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/Editor/Criteria/PlayModeStateCriterion.cs" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/Editor/Criteria/PlayModeStateCriterion.cs" new file mode 100644 index 00000000..0b925b3d --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/Editor/Criteria/PlayModeStateCriterion.cs" @@ -0,0 +1,63 @@ +using System; +using UnityEditor; +using UnityEngine; + +namespace Unity.InteractiveTutorials +{ + public class PlayModeStateCriterion : Criterion + { + enum PlayModeState + { + Playing, + NotPlaying + } + + [SerializeField] + PlayModeState m_RequiredPlayModeState = PlayModeState.Playing; + + public override void StartTesting() + { + UpdateCompletion(); + + EditorApplication.playModeStateChanged += OnPlayModeStateChanged; + } + + public override void StopTesting() + { + EditorApplication.playModeStateChanged -= OnPlayModeStateChanged; + } + + void OnPlayModeStateChanged(PlayModeStateChange playModeStateChange) + { + switch (playModeStateChange) + { + case PlayModeStateChange.EnteredPlayMode: + case PlayModeStateChange.EnteredEditMode: + UpdateCompletion(); + break; + } + } + + protected override bool EvaluateCompletion() + { + switch (m_RequiredPlayModeState) + { + case PlayModeState.NotPlaying: + return !EditorApplication.isPlaying; + + case PlayModeState.Playing: + return EditorApplication.isPlaying; + + default: + return false; + } + } + + public override bool AutoComplete() + { + EditorApplication.isPlaying = m_RequiredPlayModeState == PlayModeState.Playing; + + return true; + } + } +} diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/Editor/Criteria/PlayModeStateCriterion.cs.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/Editor/Criteria/PlayModeStateCriterion.cs.meta" new file mode 100644 index 00000000..9c734688 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/Editor/Criteria/PlayModeStateCriterion.cs.meta" @@ -0,0 +1,12 @@ +fileFormatVersion: 2 +guid: 641211c85919e4aceb79a0d364004d75 +timeCreated: 1489492432 +licenseType: Pro +MonoImporter: + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/Editor/Criteria/PrefabInstanceCountCriterion.cs" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/Editor/Criteria/PrefabInstanceCountCriterion.cs" new file mode 100644 index 00000000..29d24e89 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/Editor/Criteria/PrefabInstanceCountCriterion.cs" @@ -0,0 +1,130 @@ +using System; +using System.Collections.Generic; +using System.Linq; +using UnityEditor; +using UnityEngine; + +using UnityObject = UnityEngine.Object; + +namespace Unity.InteractiveTutorials +{ + public class PrefabInstanceCountCriterion : Criterion + { + public enum InstanceCountComparison + { + AtLeast, + Exactly, + NoMoreThan, + } + + public GameObject prefabParent; + public InstanceCountComparison comparisonMode = InstanceCountComparison.AtLeast; + [Range(0, 100)] + public int instanceCount = 1; + [SerializeField, HideInInspector] + FutureObjectReference m_FutureReference; + + public override void StartTesting() + { + UpdateCompletion(); + + Selection.selectionChanged += UpdateCompletion; + } + + public override void StopTesting() + { + Selection.selectionChanged -= UpdateCompletion; + } + + protected override bool EvaluateCompletion() + { + if (prefabParent == null) + return false; + + var matches = FindObjectsOfType().Where(go => PrefabUtilityShim.GetCorrespondingObjectFromSource(go) == prefabParent); + var count = matches.Count(); + switch (comparisonMode) + { + case InstanceCountComparison.AtLeast: + return count >= instanceCount; + + case InstanceCountComparison.Exactly: + var complete = count == instanceCount; + if (complete && instanceCount == 1 && m_FutureReference != null) + m_FutureReference.sceneObjectReference.Update(matches.First()); + return complete; + + case InstanceCountComparison.NoMoreThan: + return count <= instanceCount; + + default: + return false; + } + } + + protected override IEnumerable GetFutureObjectReferences() + { + if (m_FutureReference == null) + yield break; + + yield return m_FutureReference; + } + + protected override void OnValidate() + { + // Destroy unreferenced future reference assets + base.OnValidate(); + + // Update future reference + var needsUpdate = false; + if (comparisonMode == InstanceCountComparison.Exactly && instanceCount == 1) + { + if (m_FutureReference == null) + { + m_FutureReference = CreateFutureObjectReference(); + m_FutureReference.referenceName = "Prefab Instance"; + needsUpdate = true; + } + } + else + DestroyImmediate(m_FutureReference, true); + + if (needsUpdate) + UpdateFutureObjectReferenceNames(); + } + + public override bool AutoComplete() + { + var prefabInstances = FindObjectsOfType().Where(go => PrefabUtilityShim.GetCorrespondingObjectFromSource(go) == prefabParent); + var actualInstanceCount = prefabInstances.Count(); + var difference = actualInstanceCount - instanceCount; + + if (difference == 0) + return true; + + switch (comparisonMode) + { + case InstanceCountComparison.AtLeast: + difference = Math.Min(0, difference); + break; + + case InstanceCountComparison.NoMoreThan: + difference = Math.Max(0, difference); + break; + } + + if (difference < 0) + { + for (var i = 0; i < -difference; i++) + PrefabUtility.InstantiatePrefab(prefabParent); + } + else + { + foreach (var prefabInstance in prefabInstances.Take(difference)) + DestroyImmediate(prefabInstance); + } + + return true; + } + } +} diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/Editor/Criteria/PrefabInstanceCountCriterion.cs.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/Editor/Criteria/PrefabInstanceCountCriterion.cs.meta" new file mode 100644 index 00000000..aabf8720 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/Editor/Criteria/PrefabInstanceCountCriterion.cs.meta" @@ -0,0 +1,12 @@ +fileFormatVersion: 2 +guid: 83385cb04f0b64fff8859904da1b78e0 +timeCreated: 1489567950 +licenseType: Pro +MonoImporter: + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/Editor/Criteria/PropertyModificationCriterion.cs" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/Editor/Criteria/PropertyModificationCriterion.cs" new file mode 100644 index 00000000..8984195a --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/Editor/Criteria/PropertyModificationCriterion.cs" @@ -0,0 +1,388 @@ +using System; +using System.Collections.Generic; +using System.Linq; +using System.Text.RegularExpressions; +using UnityEditor; +using UnityEngine; + +using UnityObject = UnityEngine.Object; + +namespace Unity.InteractiveTutorials +{ + public class PropertyModificationCriterion : Criterion + { + internal enum TargetValueMode + { + TargetValue = 0, + DifferentThanInitial + } + + internal string propertyPath + { + get { return m_PropertyPath; } + set { m_PropertyPath = value; } + } + [SerializeField] + string m_PropertyPath; + + internal TargetValueMode targetValueMode + { + get { return m_TargetValueMode; } + set { m_TargetValueMode = value; } + } + + [SerializeField] + TargetValueMode m_TargetValueMode = TargetValueMode.TargetValue; + + + // TODO: Make this more like TypedCriterion + internal string targetValue + { + get { return m_TargetValue; } + set { m_TargetValue = value; } + } + [SerializeField] + [Tooltip("This value only applies if the TargetValueMode is set to TargetValue. This field will have no effects in other modes.")] + string m_TargetValue; + + internal TargetValueType targetValueType + { + get { return m_TargetValueType; } + set { m_TargetValueType = value; } + } + [SerializeField] + TargetValueType m_TargetValueType; + + internal SceneObjectReference target + { + get { return m_Target.sceneObjectReference; } + set { m_Target.sceneObjectReference = value; } + } + [SerializeField] + ObjectReference m_Target = new ObjectReference(); + + [NonSerialized] + string m_InitialValue; + + public override void StartTesting() + { + var target = m_Target.sceneObjectReference.ReferencedObject; + if(m_TargetValueMode == TargetValueMode.TargetValue) + completed = PropertyFulfillCriterion(target, m_PropertyPath); + else + { + var so = new SerializedObject(target); + var sp = so.FindProperty(propertyPath); + + if (sp == null) + Debug.LogWarningFormat("PropertyModificationCriterion: Cannot find property \"{0}\" on \"{1}\"", propertyPath, target); + else + m_InitialValue = GetPropertyValueAsString(sp); + } + + Undo.postprocessModifications += PostprocessModifications; + Undo.undoRedoPerformed += UpdateCompletion; + } + + public override void StopTesting() + { + Undo.postprocessModifications -= PostprocessModifications; + Undo.undoRedoPerformed -= UpdateCompletion; + } + + protected override bool EvaluateCompletion() + { + var targetObject = m_Target.sceneObjectReference.ReferencedObject; + return PropertyFulfillCriterion(targetObject, m_PropertyPath); + } + + UndoPropertyModification[] PostprocessModifications(UndoPropertyModification[] modifications) + { + var targetObject = m_Target.sceneObjectReference.ReferencedObject; + var modificationsToTest = GetPropertiesToTest(modifications, targetObject); + if (modificationsToTest.Any()) + { + completed = modificationsToTest.Any(m => PropertyFulfillCriterion(m.target, m.propertyPath)); + } + + return modifications; + } + + IEnumerable GetPropertiesToTest(UndoPropertyModification[] modifications, UnityObject target) + { + var result = new List(); + foreach (var m in modifications) + { + if (m.currentValue.target == target) + { + if(IsCompoundPropertyMatch(m.currentValue.propertyPath)) + { + var propertyModification = m.currentValue; + propertyModification.propertyPath = propertyPath; + result.Add(m.currentValue); + } + else if(m.currentValue.propertyPath == m_PropertyPath) + result.Add(m.currentValue); + } + } + return result; + } + + bool IsCompoundPropertyMatch(string propertyPath) + { + if (m_TargetValueType == TargetValueType.Color) + { + Regex coloRegex = new Regex(m_PropertyPath + "\\.[rgba]"); + if (coloRegex.IsMatch(propertyPath)) + return true; + } + return propertyPath == m_PropertyPath; + } + + bool DoPropertyTypeMatches(SerializedProperty property) + { + switch (m_TargetValueType) + { + case TargetValueType.Decimal: + return property.propertyType == SerializedPropertyType.Float; + case TargetValueType.Integer: + return property.propertyType == SerializedPropertyType.Integer; + case TargetValueType.Text: + return property.propertyType == SerializedPropertyType.String; + case TargetValueType.Boolean: + return property.propertyType == SerializedPropertyType.Boolean; + case TargetValueType.Color: + return property.propertyType == SerializedPropertyType.Color; + default: + throw new ArgumentOutOfRangeException(); + } + throw new Exception("unknown TargetValueType"); + } + + string GetPropertyValueAsString(SerializedProperty property) + { + switch (targetValueType) + { + case TargetValueType.Decimal: + return property.floatValue.ToString(); + case TargetValueType.Integer: + return property.intValue.ToString(); + case TargetValueType.Text: + return property.stringValue; + case TargetValueType.Boolean: + return property.boolValue.ToString(); + case TargetValueType.Color: + return property.colorValue.ToString(); + } + + throw new Exception("unknown TargetValueType"); + } + + bool DoesPropertyMatches(SerializedProperty property,string value) + { + switch (targetValueType) + { + case TargetValueType.Decimal: + { + float convertedValue; + return float.TryParse(value, out convertedValue) && + Mathf.Approximately(property.floatValue, convertedValue); + } + + case TargetValueType.Integer: + { + int convertedValue; + return int.TryParse(value, out convertedValue) && property.intValue == convertedValue; + } + case TargetValueType.Text: + { + return property.stringValue == value; + } + case TargetValueType.Boolean: + { + bool convertedValue; + return bool.TryParse(value, out convertedValue) && property.boolValue == convertedValue; + } + case TargetValueType.Color: + { + Color convertedValue; + return ColorUtility.TryParseHtmlString(value, out convertedValue) && property.colorValue == convertedValue; + } + } + + return false; + } + + bool SetPropertyTo(SerializedProperty property, string value) + { + switch (targetValueType) + { + case TargetValueType.Decimal: + { + float convertedTargetValue; + if (!float.TryParse(value, out convertedTargetValue)) + return false; + + property.floatValue = convertedTargetValue; + return true; + } + case TargetValueType.Integer: + { + int convertedTargetValue; + if (!int.TryParse(value, out convertedTargetValue)) + return false; + + property.intValue = convertedTargetValue; + return true; + } + case TargetValueType.Text: + { + property.stringValue = value; + return true; + } + case TargetValueType.Boolean: + { + bool convertedTargetValue; + if (!bool.TryParse(value, out convertedTargetValue)) + return false; + property.boolValue = convertedTargetValue; + return true; + } + case TargetValueType.Color: + { + Color convertedTargetValue; + if (!ColorUtility.TryParseHtmlString(value, out convertedTargetValue)) + return false; + property.colorValue = convertedTargetValue; + return true; + } + } + return false; + } + + + bool SetPropertyToDifferentValueThan(SerializedProperty property, string value) + { + switch (targetValueType) + { + case TargetValueType.Decimal: + { + float convertedTargetValue; + if (!float.TryParse(value, out convertedTargetValue)) + return false; + + property.floatValue = convertedTargetValue + 1.0f; + return true; + } + case TargetValueType.Integer: + { + int convertedTargetValue; + if (!int.TryParse(value, out convertedTargetValue)) + return false; + + property.intValue = convertedTargetValue + 1; + return true; + } + case TargetValueType.Text: + { + property.stringValue = value + "different "; + return true; + } + case TargetValueType.Boolean: + { + bool convertedTargetValue; + if (!bool.TryParse(value, out convertedTargetValue)) + return false; + property.boolValue = !convertedTargetValue; + return true; + } + case TargetValueType.Color: + { + Color convertedTargetValue; + if (!ColorUtility.TryParseHtmlString(value, out convertedTargetValue)) + return false; + property.colorValue = convertedTargetValue + Color.gray; + return true; + } + } + return false; + } + + + bool PropertyFulfillCriterion(UnityObject target, string propertyPath) + { + if (target == null) + return false; + + if (m_TargetValueMode == TargetValueMode.TargetValue && m_TargetValueType != TargetValueType.Text && string.IsNullOrEmpty(m_TargetValue)) + return true; + + var serializedObject = new SerializedObject(target); + var property = serializedObject.FindProperty(propertyPath); + + if (property == null) + return false; + + if (!DoPropertyTypeMatches(property)) + return false; + + switch (m_TargetValueMode) + { + case TargetValueMode.TargetValue: + return DoesPropertyMatches(property, m_TargetValue); + case TargetValueMode.DifferentThanInitial: + return !DoesPropertyMatches(property, m_InitialValue); + } + + return false; + } + + public override bool AutoComplete() + { + var target = m_Target.sceneObjectReference.ReferencedObject; + if (target == null) + return false; + + if (m_TargetValueMode == TargetValueMode.TargetValue && m_TargetValueType != TargetValueType.Text && string.IsNullOrEmpty(m_TargetValue)) + return false; + + var serializedObject = new SerializedObject(target); + var property = serializedObject.FindProperty(m_PropertyPath); + + if (property == null) + return false; + + if (!DoPropertyTypeMatches(property)) + return false; + + switch (m_TargetValueMode) + { + case TargetValueMode.TargetValue: + { + if (!SetPropertyTo(property, targetValue)) + return false; + break; + } + case TargetValueMode.DifferentThanInitial: + { + if (!SetPropertyToDifferentValueThan(property, m_InitialValue)) + return false; + break; + } + } + + serializedObject.ApplyModifiedProperties(); + + return true; + } + + internal enum TargetValueType + { + Integer, + Decimal, + Text, + Boolean, + Color, + } + } +} diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/Editor/Criteria/PropertyModificationCriterion.cs.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/Editor/Criteria/PropertyModificationCriterion.cs.meta" new file mode 100644 index 00000000..f3bdf292 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/Editor/Criteria/PropertyModificationCriterion.cs.meta" @@ -0,0 +1,12 @@ +fileFormatVersion: 2 +guid: 5e52eaa6fdf2a4794ba81c7bc450905e +timeCreated: 1489752557 +licenseType: Pro +MonoImporter: + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/Editor/Criteria/RequiredSelectionCriterion.cs" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/Editor/Criteria/RequiredSelectionCriterion.cs" new file mode 100644 index 00000000..eea70fcd --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/Editor/Criteria/RequiredSelectionCriterion.cs" @@ -0,0 +1,69 @@ +using System; +using System.Collections.Generic; +using System.Linq; +using UnityEditor; +using UnityEngine; + +using UnityObject = UnityEngine.Object; + +namespace Unity.InteractiveTutorials +{ + public class RequiredSelectionCriterion : Criterion + { + [Serializable] + class ObjectReferenceCollection : CollectionWrapper + { + } + + [SerializeField] + ObjectReferenceCollection m_ObjectReferences = new ObjectReferenceCollection(); + + public void SetObjectReferences(IEnumerable objectReferences) + { + m_ObjectReferences.SetItems(objectReferences); + UpdateCompletion(); + } + + public override void StartTesting() + { + UpdateCompletion(); + Selection.selectionChanged += UpdateCompletion; + } + + public override void StopTesting() + { + Selection.selectionChanged -= UpdateCompletion; + } + + protected override bool EvaluateCompletion() + { + if (m_ObjectReferences.Count() != Selection.objects.Length) + return false; + + foreach (var objectReference in m_ObjectReferences) + { + var referencedObject = objectReference.sceneObjectReference.ReferencedObject; + if (referencedObject == null) + return false; + + if (!Selection.objects.Contains(referencedObject)) + return false; + } + + return true; + } + + public override bool AutoComplete() + { + var referencedObjects = m_ObjectReferences.Select(or => or.sceneObjectReference.ReferencedObject); + if (referencedObjects.Any(obj => obj == null)) + { + Debug.LogWarning("Cannot auto-complete RequiredSelectionCriterion with unresolved object references"); + return false; + } + + Selection.objects = referencedObjects.ToArray(); + return true; + } + } +} diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/Editor/Criteria/RequiredSelectionCriterion.cs.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/Editor/Criteria/RequiredSelectionCriterion.cs.meta" new file mode 100644 index 00000000..977e0374 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/Editor/Criteria/RequiredSelectionCriterion.cs.meta" @@ -0,0 +1,12 @@ +fileFormatVersion: 2 +guid: 255ef86cb95f04796b8e3b3f5b23efe7 +timeCreated: 1489569998 +licenseType: Pro +MonoImporter: + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/Editor/Criteria/SceneAddedToBuildCriterion.cs" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/Editor/Criteria/SceneAddedToBuildCriterion.cs" new file mode 100644 index 00000000..65650e02 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/Editor/Criteria/SceneAddedToBuildCriterion.cs" @@ -0,0 +1,111 @@ +using UnityEditor; +using UnityEngine; + +namespace Unity.InteractiveTutorials +{ + public class SceneAddedToBuildCriterion : Criterion + { + [SerializeField] + SceneAsset m_Scene; + + public SceneAsset scene + { + get + { + return m_Scene; + } + set + { + m_Scene = value; + } + } + + public override void StartTesting() + { + UpdateCompletion(); + + EditorBuildSettings.sceneListChanged += UpdateCompletion; + } + + public override void StopTesting() + { + EditorBuildSettings.sceneListChanged -= UpdateCompletion; + } + + protected override bool EvaluateCompletion() + { + if (m_Scene == null) + { + return false; + } + if (m_Scene) + { + var scenePath = AssetDatabase.GetAssetPath(m_Scene); + foreach (var scene in EditorBuildSettings.scenes) + { + if (scene.enabled) + { + if (scene.path == scenePath) + return true; + } + } + } + return false; + + } + + public override bool AutoComplete() + { + if (m_Scene == null) + { + return false; + } + + // Look if scene is already added in the build settings + bool addedScene = SceneIsAddedToBuildSettings(m_Scene, true); + if (addedScene) + { + return true; + } + + // If the scene does not exist, we add it + AddSceneToBuildSettings(m_Scene); + + return true; + } + + public static bool SceneIsAddedToBuildSettings(SceneAsset asset, bool forceEnable = false) + { + if (EditorBuildSettings.scenes.Length == 0) + { + return false; + } + var scenePath = AssetDatabase.GetAssetPath(asset); + foreach (var scene in EditorBuildSettings.scenes) + { + if (scene.path == scenePath) + { + if (forceEnable) + { + scene.enabled = true; + } + return true; + } + } + return false; + } + + public static void AddSceneToBuildSettings(SceneAsset scene, bool enabled = true) + { + var scenes = new EditorBuildSettingsScene[EditorBuildSettings.scenes.Length + 1]; + for (int i = 0; i < EditorBuildSettings.scenes.Length; ++i) + { + scenes[i] = EditorBuildSettings.scenes[i]; + } + + scenes[scenes.Length - 1] = new EditorBuildSettingsScene(AssetDatabase.GetAssetPath(scene), enabled); + + EditorBuildSettings.scenes = scenes; + } + } +} \ No newline at end of file diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/Editor/Criteria/SceneAddedToBuildCriterion.cs.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/Editor/Criteria/SceneAddedToBuildCriterion.cs.meta" new file mode 100644 index 00000000..a38d0117 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/Editor/Criteria/SceneAddedToBuildCriterion.cs.meta" @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 0e6dc885791ed7a4a8909da00f14614e +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/Editor/Criteria/SceneViewCameraMovedCriterion.cs" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/Editor/Criteria/SceneViewCameraMovedCriterion.cs" new file mode 100644 index 00000000..40f88cd9 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/Editor/Criteria/SceneViewCameraMovedCriterion.cs" @@ -0,0 +1,62 @@ +using System; +using UnityEditor; +using UnityEngine; + +namespace Unity.InteractiveTutorials +{ + public class SceneViewCameraMovedCriterion : Criterion + { + [NonSerialized] + bool m_InitialPositionInitialized = false; + [NonSerialized] + Vector3 m_InitialCameraPosition; + [NonSerialized] + Quaternion m_InitialCameraOrientation; + + public override void StartTesting() + { + + UpdateInitialCameraPositionIfNeeded(); + UpdateCompletion(); + + EditorApplication.update += UpdateCompletion; + } + + void UpdateInitialCameraPositionIfNeeded() + { + if (m_InitialPositionInitialized) + return; + + if(SceneView.lastActiveSceneView == null) + return; + + m_InitialPositionInitialized = true; + m_InitialCameraPosition = SceneView.lastActiveSceneView.camera.transform.position; + m_InitialCameraOrientation = SceneView.lastActiveSceneView.camera.transform.localRotation; + } + + public override void StopTesting() + { + EditorApplication.update -= UpdateCompletion; + m_InitialPositionInitialized = false; + } + + protected override bool EvaluateCompletion() + { + if (SceneView.lastActiveSceneView == null) + return false; + + UpdateInitialCameraPositionIfNeeded(); + var currentPosition = SceneView.lastActiveSceneView.camera.transform.position; + var currentOrientation = SceneView.lastActiveSceneView.camera.transform.localRotation; + return m_InitialCameraPosition != currentPosition || m_InitialCameraOrientation != currentOrientation; + + } + + public override bool AutoComplete() + { + SceneView.lastActiveSceneView.camera.transform.position = m_InitialCameraPosition + Vector3.back; + return true; + } + } +} \ No newline at end of file diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/Editor/Criteria/SceneViewCameraMovedCriterion.cs.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/Editor/Criteria/SceneViewCameraMovedCriterion.cs.meta" new file mode 100644 index 00000000..45bb40d0 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/Editor/Criteria/SceneViewCameraMovedCriterion.cs.meta" @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: c4ac49bdefc2c1a44948fd2c6481f28f +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/Editor/Criteria/TriggerTaskCriterion.cs" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/Editor/Criteria/TriggerTaskCriterion.cs" new file mode 100644 index 00000000..37a1547f --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/Editor/Criteria/TriggerTaskCriterion.cs" @@ -0,0 +1,141 @@ +using System; +using System.Collections.Generic; +using System.Linq; +using UnityEditor; +using UnityEngine; +using UnityEngine.SceneManagement; + +using UnityObject = UnityEngine.Object; + +namespace Unity.InteractiveTutorials +{ + public class TriggerTaskCriterion : Criterion + { + public enum TriggerTaskTestMode { TriggerEnter, TriggerExit, CollisionEnter, CollisionExit } + + [SerializeField] + internal ObjectReference objectReference = new ObjectReference(); + public TriggerTaskTestMode testMode = TriggerTaskTestMode.TriggerEnter; + + bool m_Enabled; + + public override void StartTesting() + { + CollisionBroadcaster2D.playerEnteredCollision += OnPlayerEnteredCollision2D; + CollisionBroadcaster2D.playerEnteredTrigger += OnPlayerEnteredTrigger2D; + CollisionBroadcaster2D.playerExitedCollision += OnPlayerExitCollision2D; + CollisionBroadcaster2D.playerExitedTrigger += OnPlayerExitTrigger2D; + + CollisionBroadcaster3D.playerEnteredCollision += OnPlayerEnteredCollision; + CollisionBroadcaster3D.playerEnteredTrigger += OnPlayerEnteredTrigger; + CollisionBroadcaster3D.playerExitedCollision += OnPlayerExitCollision; + CollisionBroadcaster3D.playerExitedTrigger += OnPlayerExitTrigger; + } + + public override void StopTesting() + { + base.StopTesting(); + CollisionBroadcaster2D.playerEnteredCollision -= OnPlayerEnteredCollision2D; + CollisionBroadcaster2D.playerEnteredTrigger -= OnPlayerEnteredTrigger2D; + CollisionBroadcaster2D.playerExitedCollision -= OnPlayerExitCollision2D; + CollisionBroadcaster2D.playerExitedTrigger -= OnPlayerExitTrigger2D; + + CollisionBroadcaster3D.playerEnteredCollision -= OnPlayerEnteredCollision; + CollisionBroadcaster3D.playerEnteredTrigger -= OnPlayerEnteredTrigger; + CollisionBroadcaster3D.playerExitedCollision -= OnPlayerExitCollision; + CollisionBroadcaster3D.playerExitedTrigger -= OnPlayerExitTrigger; + } + + //Overriding the update completion state, as this criterion is not state based + public override void UpdateCompletion() + { + } + + GameObject referencedGameObject + { + get { return objectReference.sceneObjectReference.ReferencedObjectAsGameObject; } + } + + void OnPlayerEnteredCollision2D(CollisionBroadcaster2D sender) + { + if (testMode == TriggerTaskTestMode.CollisionEnter && referencedGameObject == sender.gameObject) + completed = true; + } + + void OnPlayerEnteredTrigger2D(CollisionBroadcaster2D sender) + { + if (testMode == TriggerTaskTestMode.TriggerEnter && referencedGameObject == sender.gameObject) + completed = true; + } + + void OnPlayerExitCollision2D(CollisionBroadcaster2D sender) + { + if (testMode == TriggerTaskTestMode.CollisionExit && referencedGameObject == sender.gameObject) + completed = true; + } + + void OnPlayerExitTrigger2D(CollisionBroadcaster2D sender) + { + if (testMode == TriggerTaskTestMode.TriggerExit && referencedGameObject == sender.gameObject) + completed = true; + } + + void OnPlayerEnteredCollision(CollisionBroadcaster3D sender) + { + if (testMode == TriggerTaskTestMode.CollisionEnter && referencedGameObject == sender.gameObject) + completed = true; + } + + void OnPlayerEnteredTrigger(CollisionBroadcaster3D sender) + { + if (testMode == TriggerTaskTestMode.TriggerEnter && referencedGameObject == sender.gameObject) + completed = true; + } + + void OnPlayerExitCollision(CollisionBroadcaster3D sender) + { + if (testMode == TriggerTaskTestMode.CollisionExit && referencedGameObject == sender.gameObject) + completed = true; + } + + void OnPlayerExitTrigger(CollisionBroadcaster3D sender) + { + if (testMode == TriggerTaskTestMode.TriggerExit && referencedGameObject == sender.gameObject) + completed = true; + } + + public override bool AutoComplete() + { + if (referencedGameObject == null) + return false; + + if (referencedGameObject.GetComponent() == null) + return false; + + var playerComponent = SceneManager.GetActiveScene().GetRootGameObjects() + .Select(gameObject => gameObject.GetComponentInChildren()) + .Cast() + .FirstOrDefault(component => component != null); + + if (playerComponent == null) + return false; + + var playerGameObject = HandleUtilityProxy.FindSelectionBase(playerComponent.gameObject); + if (playerGameObject == null) + playerGameObject = playerComponent.gameObject; + + switch (testMode) + { + case TriggerTaskTestMode.TriggerEnter: + case TriggerTaskTestMode.CollisionEnter: + playerGameObject.transform.position = referencedGameObject.transform.position; + return true; + + case TriggerTaskTestMode.TriggerExit: + case TriggerTaskTestMode.CollisionExit: + default: + return false; + } + } + } +} diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/Editor/Criteria/TriggerTaskCriterion.cs.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/Editor/Criteria/TriggerTaskCriterion.cs.meta" new file mode 100644 index 00000000..31cb234a --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/Editor/Criteria/TriggerTaskCriterion.cs.meta" @@ -0,0 +1,12 @@ +fileFormatVersion: 2 +guid: b4026623cbea8459a8f3a2a25e568efc +timeCreated: 1489583148 +licenseType: Pro +MonoImporter: + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/Editor/Editor Windows.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/Editor/Editor Windows.meta" new file mode 100644 index 00000000..65b51fc6 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/Editor/Editor Windows.meta" @@ -0,0 +1,9 @@ +fileFormatVersion: 2 +guid: b17fabb79e4ff4c3494d36f1ad8e65cc +folderAsset: yes +timeCreated: 1490871127 +licenseType: Pro +DefaultImporter: + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/Editor/Editor Windows/TutorialModalWindow.cs" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/Editor/Editor Windows/TutorialModalWindow.cs" new file mode 100644 index 00000000..67c9fcc9 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/Editor/Editor Windows/TutorialModalWindow.cs" @@ -0,0 +1,256 @@ +using System; +using System.Collections.Generic; +using System.Linq; +using UnityEditor; +using UnityEngine; + +namespace Unity.InteractiveTutorials +{ + // A modal/utility window. Utilizes masking for the modality. + class TutorialModalWindow : EditorWindow + { + const int kWidth = 700; + const int kHeight = 500; + const int kLeftColumnWidth = 300; + + [SerializeField] + TutorialStyles m_Styles = null; + [SerializeField] + TutorialWelcomePage m_WelcomePage; + List m_Paragraphs = new List(); + Action onClose; + + public static bool Visible { get; private set; } + + // Remember to set prior to calling TryToShow(). + public static bool MaskingEnabled { get; set; } = false; + + public static void TryToShow(string windowTitle, TutorialWelcomePage welcomePage, Action onClose) + { + if (Visible) + return; + + var window = GetWindow(utility:true, windowTitle); + window.onClose = onClose; + var pos = window.position; + window.minSize = window.maxSize = new Vector2(kWidth, kHeight); + window.CenterOnMainWin(); + + window.m_WelcomePage = welcomePage; + var styles = window.m_Styles; + + foreach(var paragraph in window.m_WelcomePage.paragraphs) + { + window.m_Paragraphs.Add( + new TutorialParagraphView(paragraph, window, styles.orderedListDelimiter, styles.unorderedListBullet, -1) + ); + } + + window.Show(); + + if (MaskingEnabled) + window.Mask(); + } + + void OnEnable() + { + Visible = true; + //Mask(); + } + + void OnDestroy() + { + Visible = false; + onClose?.Invoke(); + Unmask(); + } + + void Update() + { + // Force repaint so that changes to WelcomePage can be previed immediately. + if (ProjectMode.IsAuthoringMode()) + Repaint(); + } + + void OnGUI() + { + if (m_Styles == null) + { + TutorialStyles.DisplayErrorMessage("TutorialModalWindow.cs"); + return; + } + + if (m_WelcomePage == null) + { + return; + } + + if (Event.current.isKey && Event.current.keyCode == KeyCode.Escape) + { + Close(); + return; + } + + if (ProjectMode.IsAuthoringMode()) + { + DrawToolbar(); + } + + GUISkin oldSkin = GUI.skin; + GUI.skin = m_Styles.skin; + + using(new EditorGUILayout.HorizontalScope(GUILayout.Width(kWidth), GUILayout.Height(kHeight))) + { + // left column, "image column" + using(new EditorGUILayout.VerticalScope(GUILayout.Width(kLeftColumnWidth), GUILayout.Height(kHeight))) + { + GUILayout.Label(GUIContent.none); + } + if (m_WelcomePage.icon != null) + { + GUI.DrawTexture(GUILayoutUtility.GetLastRect(), m_WelcomePage.icon, ScaleMode.StretchToFill); + } + + // right column + using(new EditorGUILayout.HorizontalScope(AllTutorialStyles.background)) + { + + GUILayout.Space(8f); + + using(new EditorGUILayout.VerticalScope(AllTutorialStyles.background, GUILayout.Height(kHeight))) + { + + + const bool pageCompleted = false; + var previousTaskState = true; + foreach(var paragraph in m_Paragraphs) + { + if (paragraph.paragraph.type == ParagraphType.Instruction) + GUILayout.Space(2f); + + paragraph.Draw(ref previousTaskState, pageCompleted); + } + + using(new EditorGUILayout.HorizontalScope()) + { + if (GUILayout.Button(m_WelcomePage.startButtonLabel, AllTutorialStyles.welcomeDialogButton)) + { + Close(); + } + GUILayout.FlexibleSpace(); + } + } + } + } + + GUI.skin = oldSkin; + } + + private void DrawToolbar() + { + EditorGUILayout.BeginHorizontal(EditorStyles.toolbar, GUILayout.ExpandWidth(true)); + + GUILayout.FlexibleSpace(); + + EditorGUI.BeginChangeCheck(); + + MaskingEnabled = GUILayout.Toggle( + MaskingEnabled, "Masking", EditorStyles.toolbarButton, + GUILayout.MaxWidth(TutorialWindow.s_AuthoringModeToolbarButtonWidth) + ); + if (EditorGUI.EndChangeCheck()) + { + if (MaskingEnabled) Mask(); + else Unmask(); + GUIUtility.ExitGUI(); + return; + } + + EditorGUILayout.EndHorizontal(); + } + + void Mask() + { + var styles = m_Styles; + var maskingColor = styles?.maskingColor ?? Color.magenta * new Color(1f, 1f, 1f, 0.8f); + var highlightColor = styles?.highlightColor ?? Color.cyan * new Color(1f, 1f, 1f, 0.8f); + var blockedInteractionColor = styles?.blockedInteractionColor ?? new Color(1, 1, 1, 0.5f); + var highlightThickness = styles?.highlightThickness ?? 3f; + + var unmaskedViews = new UnmaskedView.MaskData(); + unmaskedViews.AddParentFullyUnmasked(this); + var highlightedViews = new UnmaskedView.MaskData(); + + MaskingManager.Mask( + unmaskedViews, + maskingColor, + highlightedViews, + highlightColor, + blockedInteractionColor, + highlightThickness + ); + + MaskingEnabled = true; + } + + void Unmask() + { + MaskingManager.Unmask(); + MaskingEnabled = false; + } + } +} + +// TODO Clean up and move to some utility file +// http://answers.unity.com/answers/960709/view.html +public static class Extensions +{ + public static Type[] GetAllDerivedTypes(this AppDomain aAppDomain, Type aType) + { + var result = new List(); + var assemblies = aAppDomain.GetAssemblies(); + foreach(var assembly in assemblies) + { + var types = assembly.GetTypes(); + foreach(var type in types) + { + if(type.IsSubclassOf(aType)) + result.Add(type); + } + } + return result.ToArray(); + } + + public static Rect GetEditorMainWindowPos() + { + var containerWinType = AppDomain.CurrentDomain.GetAllDerivedTypes(typeof(ScriptableObject)).Where(t => t.Name == "ContainerWindow").FirstOrDefault(); + if(containerWinType == null) + throw new MissingMemberException("Can't find internal type ContainerWindow. Maybe something has changed inside Unity"); + var showModeField = containerWinType.GetField("m_ShowMode", System.Reflection.BindingFlags.NonPublic | System.Reflection.BindingFlags.Instance); + var positionProperty = containerWinType.GetProperty("position", System.Reflection.BindingFlags.Public | System.Reflection.BindingFlags.Instance); + if(showModeField == null || positionProperty == null) + throw new MissingFieldException("Can't find internal fields 'm_ShowMode' or 'position'. Maybe something has changed inside Unity"); + var windows = Resources.FindObjectsOfTypeAll(containerWinType); + foreach(var win in windows) + { + var showmode = (int)showModeField.GetValue(win); + if(showmode == 4) // main window + { + var pos = (Rect)positionProperty.GetValue(win, null); + return pos; + } + } + throw new NotSupportedException("Can't find internal main window. Maybe something has changed inside Unity"); + } + + public static void CenterOnMainWin(this EditorWindow aWin) + { + var main = GetEditorMainWindowPos(); + var pos = aWin.position; + float w = (main.width - pos.width) * 0.5f; + float h = (main.height - pos.height) * 0.5f; + pos.x = main.x + w; + pos.y = main.y + h; + aWin.position = pos; + } +} diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/Editor/Editor Windows/TutorialModalWindow.cs.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/Editor/Editor Windows/TutorialModalWindow.cs.meta" new file mode 100644 index 00000000..a3e58cc7 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/Editor/Editor Windows/TutorialModalWindow.cs.meta" @@ -0,0 +1,13 @@ +fileFormatVersion: 2 +guid: 291381a010ebdc94c85cbe59680965fa +timeCreated: 1490875621 +licenseType: Pro +MonoImporter: + serializedVersion: 2 + defaultReferences: + - m_Styles: {fileID: 11400000, guid: bcaf24dcefa7047b19a2b51c946e64bf, type: 2} + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/Editor/Editor Windows/TutorialParagraphView.cs" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/Editor/Editor Windows/TutorialParagraphView.cs" new file mode 100644 index 00000000..b0b9e80b --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/Editor/Editor Windows/TutorialParagraphView.cs" @@ -0,0 +1,198 @@ +using UnityEditor; +using UnityEngine; +using UnityEditor.AnimatedValues; +using System; + + +namespace Unity.InteractiveTutorials +{ + [Serializable] + class TutorialParagraphView + { + public TutorialParagraphView(TutorialParagraph paragraph, EditorWindow window, string orderedListDelimiter, string unorderedListBullet, int instructionIndex) + { + this.paragraph = paragraph; + if (paragraph.type == ParagraphType.Instruction) + { + m_FadeGroupAnim.valueChanged.AddListener(window.Repaint); + } + this.orderedListDelimiter = orderedListDelimiter; + this.unorderedListBullet = unorderedListBullet; + this.m_InstructionIndex = instructionIndex; + } + + public void ResetState() + { + m_ShouldShowText = false; + hasChangedOnActive = false; + hasChangedOnCompletion = false; + } + + public void SetWindow(TutorialWindow window) + { + m_TutorialWindow = window; + + if (m_FadeGroupAnim == null) + m_FadeGroupAnim = new AnimBool(false); + m_FadeGroupAnim.valueChanged.AddListener(window.Repaint); + } + + public TutorialParagraph paragraph; + + private AnimBool m_FadeGroupAnim = new AnimBool(false); + + private bool m_ShouldShowText; + private bool hasChangedOnCompletion = false; + private bool hasChangedOnActive = false; + + private string orderedListDelimiter, unorderedListBullet; + + private int m_InstructionIndex; + + TutorialWindow m_TutorialWindow; + + public void Draw(ref bool previousTaskState, bool pageCompleted) + { + switch (paragraph.type) + { + case ParagraphType.Icons: + using (var horizontal = new GUILayout.HorizontalScope()) + { + GUILayout.FlexibleSpace(); + foreach (var icon in paragraph.icons) + { + GUIStyle style = icon.GetStyle(); + if (style != null && style != GUIStyle.none) + GUILayout.Box(icon.GetTexture(), style); + else + GUILayout.Box(icon.GetTexture(), GUI.skin.box); + GUILayout.FlexibleSpace(); + } + } + break; + case ParagraphType.Instruction: + var completed = pageCompleted; + if (!pageCompleted) + { + completed = paragraph.completed; + if (!previousTaskState) + completed = false; + } + bool isActiveCriterion = !completed && previousTaskState; + using (var verticalGroup = new EditorGUILayout.VerticalScope()) + { + GUIStyle bgStyle; + + if (isActiveCriterion) + bgStyle = AllTutorialStyles.activeElementBackground; + else if (completed) + bgStyle = AllTutorialStyles.completedElementBackground; + else + bgStyle = AllTutorialStyles.inActiveElementBackground; + + //The scope of the colored/faded checkbox and summary + using (var backgroundElement = new EditorGUILayout.HorizontalScope(bgStyle)) + { + AllTutorialStyles.instructionLabel.normal.textColor = previousTaskState ? Color.black : Color.gray; + GUILayout.Label(GUIContent.none, completed ? AllTutorialStyles.instructionLabelIconCompleted : AllTutorialStyles.instructionLabelIconNotCompleted); + GUILayout.Label(paragraph.summary, AllTutorialStyles.instructionLabel); + + if (isActiveCriterion && !hasChangedOnActive) + { + hasChangedOnActive = true; + m_ShouldShowText = true; + AnalyticsHelper.ParagraphStarted(m_InstructionIndex); + } + else if (completed && !hasChangedOnCompletion) + { + //If we reached here the criterion has been completed recently, but has not been hidden as we want it to be after completion + hasChangedOnCompletion = true; + AnalyticsHelper.ParagraphEnded(); + m_ShouldShowText = false; + } + if (Event.current.type == EventType.MouseDown && backgroundElement.rect.Contains(Event.current.mousePosition)) + { + m_ShouldShowText = !m_ShouldShowText; + GUIUtility.ExitGUI(); + } + + m_FadeGroupAnim.target = m_ShouldShowText; + if (pageCompleted && !string.IsNullOrEmpty(paragraph.text)) + m_FadeGroupAnim.value = true; + } + + if (EditorGUILayout.BeginFadeGroup(m_FadeGroupAnim.faded)) + { + var backgroundStyle = isActiveCriterion ? AllTutorialStyles.bgTheInBetweenText : AllTutorialStyles.theInBetweenTextNotActiveOrCompleted; + EditorGUILayout.BeginHorizontal(backgroundStyle, GUILayout.ExpandWidth(true)); + GUILayout.Label(paragraph.text, AllTutorialStyles.theInBetweenText); + EditorGUILayout.EndHorizontal(); + } + EditorGUILayout.EndFadeGroup(); + } + previousTaskState = completed; + break; + case ParagraphType.Narrative: + EditorGUILayout.BeginHorizontal(AllTutorialStyles.headerBGStyle, GUILayout.ExpandWidth(true)); + GUILayout.Label(paragraph.text, AllTutorialStyles.narrativeStyle); + EditorGUILayout.EndHorizontal(); + break; + case ParagraphType.SwitchTutorial: + if (GUILayout.Button(paragraph.m_TutorialButtonText, new GUILayoutOption[] { GUILayout.ExpandWidth(false), GUILayout.MinWidth(250) })) + { + TutorialManager.instance.StartTutorial(paragraph.m_Tutorial); + } + break; + case ParagraphType.OrderedList: + EditorGUILayout.BeginVertical(AllTutorialStyles.listBGStyle, GUILayout.ExpandWidth(true)); + string[] listItems = paragraph.text.Split('\n'); + for (int i = 0, length = listItems.Length; i < length; ++i) + { + GUILayout.BeginHorizontal(); + GUILayout.Label(string.Format("{0}{1}", i + 1, orderedListDelimiter), AllTutorialStyles.listPrefix); + GUILayout.Label(listItems[i], AllTutorialStyles.list); + GUILayout.EndHorizontal(); + } + EditorGUILayout.EndVertical(); + break; + case ParagraphType.UnorderedList: + EditorGUILayout.BeginVertical(AllTutorialStyles.listBGStyle, GUILayout.ExpandWidth(true)); + foreach (var listItem in paragraph.text.Split('\n')) + { + GUILayout.BeginHorizontal(); + GUILayout.Label(unorderedListBullet, AllTutorialStyles.listPrefix); + GUILayout.Label(listItem, AllTutorialStyles.list); + GUILayout.EndHorizontal(); + } + EditorGUILayout.EndVertical(); + break; + case ParagraphType.Image: + using (new EditorGUILayout.HorizontalScope(AllTutorialStyles.imageStyle)) + { + GUILayout.FlexibleSpace(); + GUILayout.Label(paragraph.image, GUIStyle.none); + GUILayout.FlexibleSpace(); + } + break; + case ParagraphType.Video: + { + if (paragraph.video == null) + break; + + var texture = m_TutorialWindow.videoPlaybackManager.GetTextureForVideoClip(paragraph.video); + + using (new EditorGUILayout.HorizontalScope(AllTutorialStyles.videoStyle)) + { + GUILayout.FlexibleSpace(); + var position = GUILayoutUtility.GetRect(texture.width, texture.height, GUILayout.ExpandWidth(false), GUILayout.ExpandHeight(false)); + GUI.DrawTexture(position, texture); + GUILayout.FlexibleSpace(); + } + + m_TutorialWindow.Repaint(); + } + break; + } + } + } +} diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/Editor/Editor Windows/TutorialParagraphView.cs.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/Editor/Editor Windows/TutorialParagraphView.cs.meta" new file mode 100644 index 00000000..6bdfc7b3 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/Editor/Editor Windows/TutorialParagraphView.cs.meta" @@ -0,0 +1,12 @@ +fileFormatVersion: 2 +guid: 43adf50093be1429fa36f71e0a9a8e8e +timeCreated: 1497338427 +licenseType: Pro +MonoImporter: + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/Editor/Editor Windows/TutorialWindow.cs" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/Editor/Editor Windows/TutorialWindow.cs" new file mode 100644 index 00000000..77bda8ff --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/Editor/Editor Windows/TutorialWindow.cs" @@ -0,0 +1,1388 @@ +using System; +using System.Collections.Generic; +using System.Linq; +using UnityEditor; +using UnityEditorInternal; +using UnityEngine; + +using UnityObject = UnityEngine.Object; + +namespace Unity.InteractiveTutorials +{ + public sealed class TutorialWindow : EditorWindowProxy + { + const int kMinWidth = 300; + const int kMinHeight = 300; + + private static TutorialWindow instance; + + internal static TutorialWindow CreateWindow() + { + instance = GetWindow(s_WindowTitleContent.text); + instance.minSize = new Vector2(kMinWidth, kMinHeight); + var readme = FindReadme(); + if (readme != null) + readme .LoadTutorialProjectLayout(); + return instance; + } + + internal static TutorialWindow GetWindow() + { + if (instance == null) + instance = CreateWindow(); + return instance; + } + + private List m_Paragraphs = new List(); + private int[] m_Indexes; + [SerializeField] + private List m_AllParagraphs = new List(); + + private const int k_MaxTitleLength = 26; + + private const int k_NumberOfPixelsThatTriggerLongerTitle = 8; + + internal static readonly float s_AuthoringModeToolbarButtonWidth = 115; + + private bool canMoveToNextPage => + currentTutorial.currentPage.allCriteriaAreSatisfied || + currentTutorial.currentPage.hasMovedToNextPage; + + //private static readonly string s_BackTooltip = "Back to Previous Page"; + + private string m_Title = ""; // TODO remove title biz for good? + private string m_NextButtonText = ""; + private string m_BackButtonText = ""; + + static readonly bool s_AuthoringMode = ProjectMode.IsAuthoringMode(); + + private static readonly GUIContent s_WindowTitleContent = new GUIContent("Tutorials"); + + private static readonly GUIContent s_HomePromptTitle = new GUIContent("Return to Tutorials?"); + private static readonly GUIContent s_HomePromptText = new GUIContent( + "Returning to the Tutorial Selection means exiting the tutorial and losing all of your progress\n" + + "Do you wish to continue?" + ); + + private static readonly GUIContent s_PromptYes = new GUIContent("Yes"); + private static readonly GUIContent s_PromptNo = new GUIContent("No"); + private static readonly GUIContent s_PromptOk = new GUIContent("OK"); + + //private static readonly GUIContent s_RestartPromptTitle = new GUIContent("Restart Tutorial?"); + //private static readonly string s_RestartTooltip = "Restart Tutorial"; + //private static readonly GUIContent s_RestartPromptText = new GUIContent( + // "Returning to the first step will restart the tutorial and you will lose all of your progress. Do you wish to restart?" + //); + + // Unity's menu guide convetion: text in italics, '>' used as a separator + // TODO EditorUtility.DisplayDialog doesn't support italics so cannot use rich text here. + static readonly string kMenuPathGuide = TutorialWindowMenuItem.Menu + ">" + TutorialWindowMenuItem.Item; + + private static readonly GUIContent s_ExitPromptTitle = new GUIContent("Exit Tutorial?"); + private static readonly string s_ExitTooltip = "Exit Tutorial"; + private static readonly GUIContent s_ExitPromptText = new GUIContent( + $"You are about to exit the tutorial and lose all of your progress.\n\n" + + $"You can find the tutorials later from the menu by choosing {kMenuPathGuide}.\n\n" + + $"Do you wish to exit?" + ); + + private static readonly GUIContent s_TabClosedDialogTitle = new GUIContent("Close Tutorials"); + private static readonly GUIContent s_TabClosedDialogText = new GUIContent( + $"You can find the tutorials later from the menu by choosing {kMenuPathGuide}." + ); + + internal Tutorial currentTutorial { get; private set; } + + internal TutorialContainer readme + { + get { return m_Readme; } + private set + { + var oldReadme = m_Readme; + m_Readme = value; + if (oldReadme != m_Readme) + FetchTutorialStates(); + } + } + [SerializeField] TutorialContainer m_Readme; + [SerializeField] Card[] m_Cards = { }; + + private bool maskingEnabled + { + get + { + var forceDisableMask = EditorPrefs.GetBool("Unity.InteractiveTutorials.forceDisableMask", false); + return !forceDisableMask && (m_MaskingEnabled || !s_AuthoringMode); + } + set { m_MaskingEnabled = value; } + } + [SerializeField] + private bool m_MaskingEnabled = true; + + TutorialStyles styles + { + get { return TutorialProjectSettings.instance.TutorialStyle; } + } + + [SerializeField] + private Vector2 m_ScrollPosition; + + [SerializeField] + private int m_FarthestPageCompleted = -1; + + [SerializeField] + private bool m_PlayModeChanging; + + internal VideoPlaybackManager videoPlaybackManager { get; } = new VideoPlaybackManager(); + + internal bool showStartHereMarker { get; set; } + + internal bool showTabClosedDialog { get; set; } = true; + + void TrackPlayModeChanging(PlayModeStateChange change) + { + switch (change) + { + case PlayModeStateChange.ExitingEditMode: + case PlayModeStateChange.ExitingPlayMode: + m_PlayModeChanging = true; + break; + case PlayModeStateChange.EnteredEditMode: + case PlayModeStateChange.EnteredPlayMode: + m_PlayModeChanging = false; + break; + } + } + + void OnFocus() + { + readme = FindReadme(); + } + + void OnEnable() + { + instance = this; + // set here instead of CreateWindow() so that title of old saved layouts is overwritten + instance.titleContent = s_WindowTitleContent; + + videoPlaybackManager.OnEnable(); + + GUIViewProxy.positionChanged += OnGUIViewPositionChanged; + HostViewProxy.actualViewChanged += OnHostViewActualViewChanged; + Tutorial.tutorialPagesModified += OnTutorialPagesModified; + // test for page completion state changes (rather than criteria completion/invalidation directly) + // so that page completion state will be up-to-date + TutorialPage.criteriaCompletionStateTested += OnTutorialPageCriteriaCompletionStateTested; + TutorialPage.tutorialPageMaskingSettingsChanged += OnTutorialPageMaskingSettingsChanged; + TutorialPage.tutorialPageNonMaskingSettingsChanged += OnTutorialPageNonMaskingSettingsChanged; + EditorApplication.playModeStateChanged -= TrackPlayModeChanging; + EditorApplication.playModeStateChanged += TrackPlayModeChanging; + + SetUpTutorial(); + + maskingEnabled = true; + + readme = FindReadme(); + InitCards(); + } + + void OnDisable() + { + if (!m_PlayModeChanging) + AnalyticsHelper.TutorialEnded(TutorialConclusion.Quit); + + ClearTutorialListener(); + + Tutorial.tutorialPagesModified -= OnTutorialPagesModified; + TutorialPage.criteriaCompletionStateTested -= OnTutorialPageCriteriaCompletionStateTested; + TutorialPage.tutorialPageMaskingSettingsChanged -= OnTutorialPageMaskingSettingsChanged; + TutorialPage.tutorialPageNonMaskingSettingsChanged -= OnTutorialPageNonMaskingSettingsChanged; + GUIViewProxy.positionChanged -= OnGUIViewPositionChanged; + HostViewProxy.actualViewChanged -= OnHostViewActualViewChanged; + + videoPlaybackManager.OnDisable(); + + ApplyMaskingSettings(false); + + if (showTabClosedDialog && !TutorialManager.IsLoadingLayout) + { + // Without delayed call the Inspector appears completely black + EditorApplication.delayCall += delegate + { + EditorUtility.DisplayDialog(s_TabClosedDialogTitle.text, s_TabClosedDialogText.text, s_PromptOk.text); + }; + } + } + + void OnDestroy() + { + // TODO SkipTutorial(); + } + + void WindowForParagraph() + { + foreach (var p in m_Paragraphs) + { + p.SetWindow(instance); + } + } + + void OnHostViewActualViewChanged() + { + if (TutorialManager.IsLoadingLayout) + return; + // do not mask immediately in case unmasked GUIView doesn't exist yet + // TODO disabled for now in order to get Welcome dialog masking working + //QueueMaskUpdate(); + } + + void QueueMaskUpdate() + { + EditorApplication.update -= ApplyQueuedMask; + EditorApplication.update += ApplyQueuedMask; + } + + void OnTutorialPageCriteriaCompletionStateTested(TutorialPage sender) + { + if (currentTutorial == null || currentTutorial.currentPage != sender) + return; + + foreach (var paragraph in m_Paragraphs) + paragraph.ResetState(); + + if (sender.allCriteriaAreSatisfied && sender.autoAdvanceOnComplete && !sender.hasMovedToNextPage) + { + if (currentTutorial.TryGoToNextPage()) + return; + } + + ApplyMaskingSettings(true); + } + + void SkipTutorial() + { + if (currentTutorial == null) + return; + + switch (currentTutorial.skipTutorialBehavior) + { + case Tutorial.SkipTutorialBehavior.SameAsExitBehavior: + ExitTutorial(false); + break; + + case Tutorial.SkipTutorialBehavior.SkipToLastPage: + currentTutorial.SkipToLastPage(); + break; + + default: + throw new ArgumentOutOfRangeException(); + } + } + + void ExitTutorial(bool completed) + { + switch (currentTutorial.exitBehavior) + { + case Tutorial.ExitBehavior.ShowHomeWindow: + if (completed) + { + HomeWindowProxy.ShowTutorials(); + } + else if ( + !IsInProgress() || + EditorUtility.DisplayDialog(s_HomePromptTitle.text, s_HomePromptText.text, s_PromptYes.text, s_PromptNo.text)) + { + HomeWindowProxy.ShowTutorials(); + GUIUtility.ExitGUI(); + } + return; // Return to avoid selecting asset on exit + case Tutorial.ExitBehavior.CloseWindow: + // New behaviour: exiting resets and nullifies the current tutorial and shows the project's tutorials. + if (completed) + { + SetTutorial(null); + ResetTutorial(); + TutorialManager.instance.RestoreOriginalState(); + } + else if( + !IsInProgress() || + EditorUtility.DisplayDialog(s_ExitPromptTitle.text, s_ExitPromptText.text, s_PromptYes.text, s_PromptNo.text)) + { + SetTutorial(null); + ResetTutorial(); + TutorialManager.instance.RestoreOriginalState(); + } + break; + default: + throw new ArgumentOutOfRangeException(); + } + + // TODO new behaviour testing: assetSelectedOnExit was originally used for selecting + // Readme but this is not required anymore as the TutorialWindow contains Readme's functionality. + //if (currentTutorial?.assetSelectedOnExit != null) + // Selection.activeObject = currentTutorial.assetSelectedOnExit; + + //SaveTutorialStates(); + } + + private void OnTutorialInitiated() + { + AnalyticsHelper.TutorialStarted(currentTutorial); + GenesisHelper.LogTutorialStarted(currentTutorial.lessonId); + CreateTutorialViews(); + } + + private void OnTutorialCompleted() + { + AnalyticsHelper.TutorialEnded(TutorialConclusion.Completed); + GenesisHelper.LogTutorialEnded(currentTutorial.lessonId); + MarkTutorialCompleted(currentTutorial.lessonId, currentTutorial.completed); + ExitTutorial(currentTutorial.completed); + } + + internal void CreateTutorialViews() + { + m_AllParagraphs.Clear(); + foreach (var page in currentTutorial.pages) + { + if (page == null) + continue; + + var instructionIndex = 0; + foreach (var paragraph in page.paragraphs) + { + if (paragraph.type == ParagraphType.Instruction) + ++instructionIndex; + m_AllParagraphs.Add(new TutorialParagraphView(paragraph, instance, styles.orderedListDelimiter, styles.unorderedListBullet, instructionIndex)); + } + } + } + + private List GetCurrentParagraph() + { + if (m_Indexes == null || m_Indexes.Length != currentTutorial.pageCount) + { + // Update page to paragraph index + m_Indexes = new int[currentTutorial.pageCount]; + var pageIndex = 0; + var paragraphIndex = 0; + foreach (var page in currentTutorial.pages) + { + m_Indexes[pageIndex++] = paragraphIndex; + if (page != null) + paragraphIndex += page.paragraphs.Count(); + } + } + + List tmp = new List(); + if (m_Indexes.Length > 0) + { + var endIndex = currentTutorial.currentPageIndex + 1 > currentTutorial.pageCount - 1 ? m_AllParagraphs.Count : m_Indexes[currentTutorial.currentPageIndex + 1]; + for (int i = m_Indexes[currentTutorial.currentPageIndex]; i < endIndex; i++) + { + tmp.Add(m_AllParagraphs[i]); + } + } + return tmp; + } + + // TODO 'page' and 'index' unused + internal void PrepareNewPage(TutorialPage page = null, int index = 0) + { + if (!m_AllParagraphs.Any()) + CreateTutorialViews(); + m_Paragraphs.Clear(); + + if (currentTutorial.currentPage == null) + m_NextButtonText = string.Empty; + else + m_NextButtonText = IsLastPage() + ? currentTutorial.currentPage.doneButton + : currentTutorial.currentPage.nextButton; + + m_BackButtonText = IsFirstPage() ? "All Tutorials" : "Back"; + + FormatTitle(); + + m_Paragraphs = GetCurrentParagraph(); + + m_Paragraphs.TrimExcess(); + + WindowForParagraph(); + } + + internal void ForceInititalizeTutorialAndPage() + { + m_FarthestPageCompleted = -1; + + CreateTutorialViews(); + PrepareNewPage(); + } + + private static void OpenLoadTutorialDialog() + { + string assetPath = EditorUtility.OpenFilePanel("Load a Tutorial", "Assets", "asset"); + if (!string.IsNullOrEmpty(assetPath)) + { + assetPath = string.Format("Assets{0}", assetPath.Substring(Application.dataPath.Length)); + TutorialManager.instance.StartTutorial(AssetDatabase.LoadAssetAtPath(assetPath)); + GUIUtility.ExitGUI(); + } + } + + private bool IsLastPage() + { + return currentTutorial != null && currentTutorial.pageCount - 1 <= currentTutorial.currentPageIndex; + } + + private bool IsFirstPage() + { + return currentTutorial != null && currentTutorial.currentPageIndex == 0; + } + + // Returns true if some real progress has been done (criteria on some page finished). + private bool IsInProgress() + { + return currentTutorial + ?.pages.Any(pg => pg.paragraphs.Any(p => p.criteria.Any() && pg.allCriteriaAreSatisfied)) + ?? false; + } + + protected override void OnResized_Internal() + { + FormatTitle(); + } + + private void FormatTitle() + { + if (currentTutorial == null) + return; + + var index = k_MaxTitleLength; + var title = string.Empty; + if (currentTutorial != null) + title = string.IsNullOrEmpty(currentTutorial.tutorialTitle) ? currentTutorial.name : currentTutorial.tutorialTitle; + + if (instance != null) + { + var extraCharactersForTitle = Mathf.RoundToInt((instance.position.width - instance.minSize.x) / k_NumberOfPixelsThatTriggerLongerTitle); + index += extraCharactersForTitle; + } + index = index < title.Length ? index : title.Length - 1; + + m_Title = index == title.Length - 1 ? title : string.Format("{0}{1}", title.Substring(0, index - 1).TrimEnd(), "..."); + } + + private void ClearTutorialListener() + { + if (currentTutorial != null) + { + currentTutorial.tutorialInitiated -= OnTutorialInitiated; + currentTutorial.tutorialCompleted -= OnTutorialCompleted; + currentTutorial.pageInitiated -= OnShowPage; + currentTutorial.StopTutorial(); + } + } + + internal void SetTutorial(Tutorial tutorial, bool reload = true) + { + ClearTutorialListener(); + + currentTutorial = tutorial; + if (currentTutorial != null) + { + if (reload) + currentTutorial.ResetProgress(); + m_AllParagraphs.Clear(); + m_Paragraphs.Clear(); + } + + ApplyMaskingSettings(currentTutorial != null); + + SetUpTutorial(); + } + + private void SetUpTutorial() + { + // bail out if this instance no longer exists such as when e.g., loading a new window layout + if (this == null || currentTutorial == null || currentTutorial.currentPage == null) + return; + + if (currentTutorial.currentPage != null) + currentTutorial.currentPage.Initiate(); + + currentTutorial.tutorialInitiated += OnTutorialInitiated; + currentTutorial.tutorialCompleted += OnTutorialCompleted; + currentTutorial.pageInitiated += OnShowPage; + + if (!m_AllParagraphs.Any()) + ForceInititalizeTutorialAndPage(); + else + PrepareNewPage(); + } + + void ApplyQueuedMask() + { + if (!IsParentNull()) + { + EditorApplication.update -= ApplyQueuedMask; + ApplyMaskingSettings(true); + } + } + + void OnGUI() + { + if (styles == null) + { + TutorialStyles.DisplayErrorMessage("TutorialWindow.cs"); + return; + } + + if (!m_DeprecatedStylesInitialized) + InitDeprecatedStyles(); + + //Force the GUI color to always be white, so the tutorial window + //will not be darkened while in playmode + //GUI.color = Color.white; + + GUISkin oldSkin = GUI.skin; + GUI.skin = styles.skin; + + if (s_AuthoringMode) + ToolbarGUI(); + + if (currentTutorial == null) + { + var context = currentTutorial != null ? "TUTORIAL" : "INTERACTIVE TUTORIALS"; + var title = (currentTutorial != null ? currentTutorial.tutorialTitle : readme?.projectName) ?? string.Empty; + var bgTex = readme?.headerBackground; + // For now drawing header only for Readme + if (readme) + Header(context, title, bgTex); + } + else + { + // Tutorials have top bar visible + TopBar(); + } + + //Force the GUI color to always be white, so the tutorial window + //will not be darkened while in playmode + //GUI.color = Color.white; + + // TODO Show scroll vertical scroll bar when necessary. For now showing it always as invisible + // so that it doesn't mess up the layout when (dis)appearing. + var hStyle = GUIStyle.none; + var contentFitsWithinTheWindow = true; // Antti: set to 'false' to see the scroll bar + var vStyle = contentFitsWithinTheWindow + ? GUIStyle.none + : GUI.skin.verticalScrollbar; + + using(var sv = + new EditorGUILayout.ScrollViewScope( + m_ScrollPosition, + alwaysShowHorizontal: true, + alwaysShowVertical: true, + hStyle, + vStyle, + AllTutorialStyles.background + )) + { + m_ScrollPosition = sv.scrollPosition; + + if (currentTutorial == null) + { + if (!readme) + { + EditorGUILayout.HelpBox("No Tutorial Container found/selected. Please create/select one.", MessageType.Info); + return; + } + else + { + DrawReadme(); + } + + return; + } + + //Might be used later if a completed page is desired + /*if (m_CurrentTutorial.IsCompletedPageShowing) + { + DrawCompletedPage(); + }*/ + + if (currentTutorial.currentPage == null) + { + GUILayout.Label(string.Format("No step {0} assigned for {1}.", currentTutorial.currentPageIndex, currentTutorial)); + } + else + { + // TODO dropping sectionTitle for good probably + //if (!string.IsNullOrEmpty(currentTutorial.currentPage.sectionTitle)) + //{ + // using (var bg = new EditorGUILayout.HorizontalScope(AllTutorialStyles.sectionTitleBackground, GUILayout.ExpandWidth(true))) + // { + // GUILayout.Label(currentTutorial.currentPage.sectionTitle, AllTutorialStyles.sectionTitleLabel); + // } + //} + + var pageCompleted = currentTutorial.currentPageIndex <= m_FarthestPageCompleted; + var previousTaskState = true; + foreach (var paragraph in m_Paragraphs) + { + if (paragraph.paragraph.type == ParagraphType.Instruction) + GUILayout.Space(2f); + + paragraph.Draw(ref previousTaskState, pageCompleted); + } + + GUILayout.FlexibleSpace(); + } + } + + Footer(); + + GUI.skin = oldSkin; + } + + //Might be desirable if a completed page is something we want + /*private void DrawCompletedPage() + { + if (m_CurrentTutorial.completedPage != null) + { + TutorialModalWindow.TryToShow(m_CurrentTutorial.completedPage, true, () => + { + m_CurrentTutorial.IsCompletedPageShowing = false; + if (Event.current.shift) + { + OpenLoadTutorialDialog(); + } + else + { + HomeWindow.Show(HomeWindow.HomeMode.Tutorial); + } + } + ); + } + else if (m_CurrentTutorial.welcomePage != null) + { + TutorialModalWindow.TryToShow(m_CurrentTutorial.welcomePage, true, () => + { + Debug.Log("Open next tutorial"); + m_CurrentTutorial.IsCompletedPageShowing = false; + } + ); + } + else + { + m_CurrentTutorial.IsCompletedPageShowing = false; + } + }*/ + + private void TopBar() + { + using (new EditorGUILayout.HorizontalScope( + AllTutorialStyles.topBarBackground, + GUILayout.ExpandHeight(true), + GUILayout.ExpandWidth(true))) + { + GUILayout.FlexibleSpace(); + + using(new EditorGUI.DisabledScope(currentTutorial.skipped)) + { + // Exit tutorial + var icon = currentTutorial.exitBehavior == Tutorial.ExitBehavior.ShowHomeWindow + ? AllTutorialStyles.iconButtonHome + : AllTutorialStyles.iconButtonClose; + if (GUILayout.Button(new GUIContent("", s_ExitTooltip), icon)) + { + SkipTutorial(); + GUIUtility.ExitGUI(); + } + } + } + } + + // Resets the contents of this window. Use this before saving layouts for tutorials. + internal void Reset() + { + m_AllParagraphs.Clear(); + SetTutorial(null); + readme = null; + InitCards(); + } + + private void ToolbarGUI() + { + EditorGUILayout.BeginHorizontal(EditorStyles.toolbar, GUILayout.ExpandWidth(true)); + + Func Button = (string text) => + GUILayout.Button(text, EditorStyles.toolbarButton, GUILayout.MaxWidth(s_AuthoringModeToolbarButtonWidth)); + + // scenes cannot be loaded while in play mode + // Not needing this for now + //using (new EditorGUI.DisabledScope(EditorApplication.isPlaying)) + //{ + // if (Button("Load Tutorial")) + // { + // OpenLoadTutorialDialog(); + // GUIUtility.ExitGUI(); // Workaround: Avoid re-entrant OnGUI call when calling EditorSceneManager.NewScene + // } + //} + + using(new EditorGUI.DisabledScope(currentTutorial == null)) + { + if (Button("Skip To Last Page")) + { + currentTutorial.SkipToLastPage(); + } + } + + GUILayout.FlexibleSpace(); + + if (Button("Run Startup Code")) + { + UserStartupCode.RunStartupCode(); + } + + using(new EditorGUI.DisabledScope(currentTutorial == null)) + { + EditorGUI.BeginChangeCheck(); + maskingEnabled = GUILayout.Toggle( + maskingEnabled, "Preview Masking", EditorStyles.toolbarButton, + GUILayout.MaxWidth(s_AuthoringModeToolbarButtonWidth) + ); + if (EditorGUI.EndChangeCheck()) + { + ApplyMaskingSettings(true); + GUIUtility.ExitGUI(); + return; + } + } + + EditorGUILayout.EndHorizontal(); + } + + const float footerHeight = 100; + + void Footer(/*Rect windowRect*/) + { + if (currentTutorial == null) + return; + + using(new EditorGUILayout.VerticalScope( + AllTutorialStyles.darkBackground, GUILayout.Height(62), GUILayout.ExpandWidth(true))) + { + GUILayout.FlexibleSpace(); + + using(new GUILayout.HorizontalScope()) + { + using(new EditorGUI.DisabledScope(currentTutorial.skipped)) + { + if (GUILayout.Button(m_BackButtonText, AllTutorialStyles.backButton)) + { + if (IsFirstPage()) + SkipTutorial(); + else + currentTutorial.GoToPreviousPage(); + + // Masking could potentially change when pressing this button which causes an immediate repaint + // Exit GUI here to avoid re-entrant GUI errors + GUIUtility.ExitGUI(); + } + } + + GUILayout.FlexibleSpace(); + + var pgText = $"{currentTutorial.currentPageIndex + 1}/{currentTutorial.pageCount}"; + GUILayout.Label(pgText, AllTutorialStyles.paginationLabel); + + GUILayout.FlexibleSpace(); + + using (new EditorGUI.DisabledScope(!canMoveToNextPage)) + { + var nextButtonStyle = GUI.enabled + ? AllTutorialStyles.nextButton + : AllTutorialStyles.nextButtonDisabled; + + if (GUILayout.Button(m_NextButtonText, nextButtonStyle)) + { + currentTutorial.TryGoToNextPage(); + // exit GUI to prevent InvalidOperationException when disposing DisabledScope + // some other GUIView might clear the disabled stack when repainting immediately to be unmasked + GUIUtility.ExitGUI(); + Repaint(); + } + } + } + + GUILayout.FlexibleSpace(); + } + + // Disabled for now, visually not appealing + we already have the page counter. + //float sizeOfEachBox = (windowRect.width / currentTutorial.pageCount) * (currentTutorial.currentPageIndex + 1); + //var style = AllTutorialStyles.progressBar; + //GUI.DrawTexture(new Rect(0, windowRect.yMax - style.fixedHeight, sizeOfEachBox, style.fixedHeight), style.normal.background); + } + + void Header(string context, string title, Texture bg) + { + var w = EditorGUIUtility.currentViewWidth; + const float headerHeight = 120; + context = RichText.Size(RichText.Color(context, "#ffffff95"), 12); + context = RichText.Bold(context); + var contextContent = new GUIContent(context); + title = RichText.Size(RichText.Color(title, "white"), 16); + title = RichText.Bold(title); + var titleContent = new GUIContent(title); + Rect contextRect, titleRect; + // In order to draw a background using ScaleAndCrop, fake the area first using GUILayout + // functionality and then draw the actual content using GUI functionality. + using(new GUILayout.VerticalScope(GUILayout.Height(headerHeight))) + { + GUILayout.FlexibleSpace(); + using(new GUILayout.HorizontalScope()) + { + GUILayout.FlexibleSpace(); + titleRect = GUILayoutUtility.GetRect(titleContent, AllTutorialStyles.headerLabel); + GUILayout.FlexibleSpace(); + } + + GUILayout.Space(2f); + + using(new GUILayout.HorizontalScope()) + { + GUILayout.FlexibleSpace(); + contextRect = GUILayoutUtility.GetRect(contextContent, AllTutorialStyles.headerLabel); + GUILayout.FlexibleSpace(); + } + + GUILayout.Space(15); + } + + if (bg != null) + { + var r = GUILayoutUtility.GetLastRect(); + GUI.DrawTexture(r, bg, ScaleMode.ScaleAndCrop); + } + GUI.Label(contextRect, contextContent, AllTutorialStyles.headerLabel); + GUI.Label(titleRect, titleContent, AllTutorialStyles.headerLabel); + } + + void DrawReadme() + { + var tutorials = m_Cards + .Where(card => card.section.CanDrawButton) + .OrderBy(card => card.section.orderInView) + .ToList(); + + + if (tutorials.Any()) + { + + GUILayout.Space(15f); + + // "Start Here" marker, will be replaced by tooltip when we have such. + showStartHereMarker = !tutorials.Any(t => t.section.tutorialCompleted); + if (showStartHereMarker) + { + using(new GUILayout.HorizontalScope()) + { + GUILayout.FlexibleSpace(); + GUILayout.Label("Start Here", AllTutorialStyles.tooltip); + GUILayout.FlexibleSpace(); + } + } + } + + + for(int index = 0; index < tutorials.Count; ++index) + { + GUILayout.BeginHorizontal(); + GUILayout.FlexibleSpace(); + + var card = tutorials[index]; + var section = card.section; + if (section.image != null) + { + if (GUILayout.Button(card.content, AllTutorialStyles.tutorialCard)) + { + if (!string.IsNullOrEmpty(section.TutorialId)) + { + section.StartTutorial(); + GUIUtility.ExitGUI(); + } + else if(!string.IsNullOrEmpty(section.linkText)) + { + Application.OpenURL(section.url); + } + } + } + else // old-style tutorial section + { + GUILayout.BeginVertical(AllTutorialStyles.linkCard); + + if(!string.IsNullOrEmpty(section.heading)) + { + GUILayout.Label(section.heading, HeadingStyle); + } + + if(!string.IsNullOrEmpty(section.text)) + { + GUILayout.Label(section.text, BodyStyle); + } + + if(!string.IsNullOrEmpty(section.linkText)) + { + if(LinkLabel(new GUIContent(section.linkText), LinkStyle)) + { + Application.OpenURL(section.url); + } + } + + if (section.CanDrawButton) + { + if (Button(new GUIContent(section.buttonText), ButtonStyle)) + { + section.StartTutorial(); + GUIUtility.ExitGUI(); + } + } + GUILayout.EndVertical(); + } + + GUILayout.FlexibleSpace(); + GUILayout.EndHorizontal(); + } + + var others = m_Cards + .Where(card => !card.section.CanDrawButton) + .OrderBy(card => card.section.orderInView) + .ToList(); + + for(int index = 0; index < others.Count; ++index) + { + GUILayout.BeginHorizontal(); + GUILayout.FlexibleSpace(); + + var card = others[index]; + var section = card.section; + if (section.image != null) + { + var isTutorial = !string.IsNullOrEmpty(section.TutorialId); + if (GUILayout.Button(card.content, AllTutorialStyles.linkCard)) + { + if (isTutorial) + { + section.StartTutorial(); + GUIUtility.ExitGUI(); + } + else if(!string.IsNullOrEmpty(section.linkText)) + { + Application.OpenURL(section.url); + } + } + } + else // old-style tutorial section + { + GUILayout.BeginVertical(AllTutorialStyles.linkCard); + + if(!string.IsNullOrEmpty(section.heading)) + { + GUILayout.Label(section.heading, HeadingStyle); + } + + if(!string.IsNullOrEmpty(section.text)) + { + GUILayout.Label(section.text, BodyStyle); + } + + if(!string.IsNullOrEmpty(section.linkText)) + { + if(LinkLabel(new GUIContent(section.linkText), LinkStyle)) + { + Application.OpenURL(section.url); + } + } + + if(section.CanDrawButton) + { + if(Button(new GUIContent(section.buttonText), ButtonStyle)) + { + section.StartTutorial(); + GUIUtility.ExitGUI(); + } + } + GUILayout.EndVertical(); + } + + GUILayout.FlexibleSpace(); + GUILayout.EndHorizontal(); + } + } + + private void OnTutorialPagesModified(Tutorial sender) + { + if (sender == null || currentTutorial == null || currentTutorial != sender) + return; + + FormatTitle(); + CreateTutorialViews(); + + ApplyMaskingSettings(true); + } + + private void OnTutorialPageMaskingSettingsChanged(TutorialPage sender) + { + if (sender != null && currentTutorial != null && currentTutorial.currentPage == sender) + ApplyMaskingSettings(true); + } + + private void OnTutorialPageNonMaskingSettingsChanged(TutorialPage sender) + { + if (sender != null && currentTutorial != null && currentTutorial.currentPage == sender) + Repaint(); + } + + private void OnShowPage(TutorialPage page, int index) + { + m_FarthestPageCompleted = Mathf.Max(m_FarthestPageCompleted, index - 1); + ApplyMaskingSettings(true); + + AnalyticsHelper.PageShown(page, index); + PrepareNewPage(); + + videoPlaybackManager.ClearCache(); + } + + void OnGUIViewPositionChanged(UnityObject sender) + { + if (TutorialManager.IsLoadingLayout) + return; + if (sender.GetType().Name == "TooltipView") + return; + ApplyMaskingSettings(true); + } + + private void ApplyMaskingSettings(bool applyMask) + { + // TODO IsParentNull() probably not needed anymore as TutorialWindow is always parented in the current design & layout. + if (!applyMask || !maskingEnabled || currentTutorial == null || + currentTutorial.currentPage == null || IsParentNull() || TutorialManager.IsLoadingLayout) + { + MaskingManager.Unmask(); + InternalEditorUtility.RepaintAllViews(); + return; + } + + var maskingSettings = currentTutorial.currentPage.currentMaskingSettings; + + try + { + if (maskingSettings != null && maskingSettings.enabled) + { + bool foundAncestorProperty; + var unmaskedViews = UnmaskedView.GetViewsAndRects(maskingSettings.unmaskedViews, out foundAncestorProperty); + if (foundAncestorProperty) + { + // Keep updating mask when target property is not unfolded + QueueMaskUpdate(); + } + + if (currentTutorial.currentPageIndex <= m_FarthestPageCompleted) + { + unmaskedViews = new UnmaskedView.MaskData(); + } + + UnmaskedView.MaskData highlightedViews; + + // if the current page contains no instructions, assume unmasked views should be highlighted because they are called out in narrative text + if (unmaskedViews.Count > 0 && !currentTutorial.currentPage.paragraphs.Any(p => p.type == ParagraphType.Instruction)) + { + highlightedViews = (UnmaskedView.MaskData)unmaskedViews.Clone(); + } + else if (canMoveToNextPage) // otherwise, if the current page is completed, highlight this window + { + highlightedViews = new UnmaskedView.MaskData(); + highlightedViews.AddParentFullyUnmasked(this); + } + else // otherwise, highlight manually specified control rects if there are any + { + var unmaskedControls = new List(); + var unmaskedViewsWithControlsSpecified = + maskingSettings.unmaskedViews.Where(v => v.GetUnmaskedControls(unmaskedControls) > 0).ToArray(); + // if there are no manually specified control rects, highlight all unmasked views + highlightedViews = UnmaskedView.GetViewsAndRects( + unmaskedViewsWithControlsSpecified.Length == 0 ? + maskingSettings.unmaskedViews : unmaskedViewsWithControlsSpecified + ); + } + + // ensure tutorial window's HostView and tooltips are not masked + unmaskedViews.AddParentFullyUnmasked(this); + unmaskedViews.AddTooltipViews(); + + // tooltip views should not be highlighted + highlightedViews.RemoveTooltipViews(); + + MaskingManager.Mask( + unmaskedViews, + styles == null ? Color.magenta * new Color(1f, 1f, 1f, 0.8f) : styles.maskingColor, + highlightedViews, + styles == null ? Color.cyan * new Color(1f, 1f, 1f, 0.8f) : styles.highlightColor, + styles == null ? new Color(1,1,1, 0.5f) : styles.blockedInteractionColor, + styles == null ? 3f : styles.highlightThickness + ); + } + } + catch (ArgumentException e) + { + if (s_AuthoringMode) + Debug.LogException(e, currentTutorial.currentPage); + else + Console.WriteLine(StackTraceUtility.ExtractStringFromException(e)); + + MaskingManager.Unmask(); + } + finally + { + InternalEditorUtility.RepaintAllViews(); + } + } + + private void ResetTutorialOnDelegate(PlayModeStateChange playmodeChange) + { + switch (playmodeChange) + { + case PlayModeStateChange.EnteredEditMode: + EditorApplication.playModeStateChanged -= ResetTutorialOnDelegate; + ResetTutorial(); + break; + } + } + + internal void ResetTutorial() + { + if (EditorApplication.isPlaying) + { + EditorApplication.playModeStateChanged += ResetTutorialOnDelegate; + EditorApplication.isPlaying = false; + return; + } + else if (!EditorApplication.isPlaying) + { + m_FarthestPageCompleted = -1; + TutorialManager.instance.ResetTutorial(); + } + } + + #region Migrated from ReadmeEditor + + class Card + { + public TutorialContainer.Section section; + public GUIContent content; + } + + // Deprecated styles for old-style sections + GUIStyle ButtonStyle { get; set; } = new GUIStyle(); + GUIStyle LinkStyle { get; set; } = new GUIStyle(); + GUIStyle TitleStyle { get; set; } = new GUIStyle(); + GUIStyle DescriptionStyle { get; set; } = new GUIStyle(); + GUIStyle HeadingStyle { get; set; } = new GUIStyle(); + GUIStyle BodyStyle { get; set; } = new GUIStyle(); + bool m_DeprecatedStylesInitialized; + + // Returns Readme iff one Readme exists in the project. + public static TutorialContainer FindReadme() + { + var ids = AssetDatabase.FindAssets($"t:{typeof(TutorialContainer).FullName}"); + return ids.Length == 1 + ? (TutorialContainer)AssetDatabase.LoadMainAssetAtPath(AssetDatabase.GUIDToAssetPath(ids[0])) + : null; + } + + void Update() + { + // TODO semi-hack to make sure the UI is up-to-date at all times. Need some better event-based solution for this. + if (LoadTutorialStates() > 0) + Repaint(); + } + + internal int LoadTutorialStates() + { + int numUpdated = 0; + readme?.sections.ToList().ForEach(s => + { + var wasCompleted = s.tutorialCompleted; + s.LoadState(); + if (s.tutorialCompleted != wasCompleted) + { + UpdateCard(s); + ++numUpdated; + } + }); + return numUpdated; + } + + void SaveTutorialStates() + { + readme.sections.ToList().ForEach(s => s.SaveState()); + } + + internal void ClearCurrentTutorialStates() + { + readme.sections.ToList().ForEach(s => MarkTutorialCompleted(s.TutorialId, false)); + } + + // Fetches statuses from the web API + internal void FetchTutorialStates() + { + GenesisHelper.GetAllTutorials((tutorials) => + { + tutorials.ForEach(t => MarkTutorialCompleted(t.lessonId, t.status == "Finished")); + }); + } + + void MarkTutorialCompleted(string lessonId, bool completed) + { + var sections = readme?.sections ?? new TutorialContainer.Section[0]; + var section = Array.Find(sections, s => s.TutorialId == lessonId); + if (section != null) + { + section.tutorialCompleted = completed; + section.SaveState(); + UpdateCard(section); + } + } + + void InitDeprecatedStyles() + { + const int TextTitleSize = 14; + const int TextProjectDescriptionSize = 12; + const int TextHeadingSize = 14; + const int TextBodySize = 12; + const int ButtonTextSize = 12; + + BodyStyle = new GUIStyle(EditorStyles.label) + { + wordWrap = true, + fontSize = TextBodySize + }; + + TitleStyle = new GUIStyle(EditorStyles.boldLabel) + { + wordWrap = true, + fontSize = TextTitleSize, + richText = true + }; + + DescriptionStyle = new GUIStyle(BodyStyle) + { + fontSize = TextProjectDescriptionSize + }; + + HeadingStyle = new GUIStyle(EditorStyles.boldLabel) + { + wordWrap = true, + fontSize = TextHeadingSize + }; + + LinkStyle = new GUIStyle(BodyStyle) { wordWrap = false }; + // Match selection color which works nicely for both light and dark skins + LinkStyle.normal.textColor = new Color(0x00 / 255f, 0x78 / 255f, 0xDA / 255f, 1f); + LinkStyle.stretchWidth = false; + + ButtonStyle = new GUIStyle(GUI.skin.button) + { + fontSize = ButtonTextSize, + stretchWidth = false + }; + + if (EditorGUIUtility.isProSkin) + { + TitleStyle.normal.textColor = styles.TextColorMainDarkSkin; + DescriptionStyle.normal.textColor = styles.TextColorMainDarkSkin; + HeadingStyle.normal.textColor = styles.TextColorMainDarkSkin; + BodyStyle.normal.textColor = styles.TextColorSecondaryDarkSkin; + } + else + { + TitleStyle.normal.textColor = styles.TextColorMainLightSkin; + DescriptionStyle.normal.textColor = styles.TextColorMainLightSkin; + HeadingStyle.normal.textColor = styles.TextColorMainLightSkin; + BodyStyle.normal.textColor = styles.TextColorSecondaryLightSkin; + } + + m_DeprecatedStylesInitialized = true; + } + + void InitCards() + { + var sections = readme?.sections ?? new TutorialContainer.Section[0]; + m_Cards = new Card[sections.Length]; + for(int i = 0; i < sections.Length; ++i) + { + var section = sections[i]; + m_Cards[i] = new Card { section = section }; + if (section.image != null) + { + m_Cards[i].content = CreateCardContent(section); + } + } + } + + void UpdateCard(TutorialContainer.Section section) + { + var card = Array.Find(m_Cards, c => c.section == section); + if (card != null && card.section.image != null) + { + card.content = CreateCardContent(section); + } + } + + static GUIContent CreateCardContent(TutorialContainer.Section s, int titleTextSize = 12, int descriptionTextSize = 11, int completedTextSize = 10) + { + return new GUIContent + { + image = s.tutorialCompleted ? s.completedImage : s.image, + text = RichText.Size(RichText.Bold(s.heading), titleTextSize) + + "\n" + RichText.Size(s.text, descriptionTextSize) + + (s.tutorialCompleted ? "\n" + RichText.Size(RichText.Color(RichText.Bold("COMPLETED"), "grey"), completedTextSize) : "") + }; + } + + static bool LinkLabel(GUIContent label, GUIStyle linkStyle, params GUILayoutOption[] options) + { + var position = GUILayoutUtility.GetRect(label, linkStyle, options); + + Handles.BeginGUI(); + Handles.color = linkStyle.normal.textColor; + Handles.DrawLine(new Vector3(position.xMin, position.yMax), new Vector3(position.xMax, position.yMax)); + Handles.color = Color.white; + Handles.EndGUI(); + + EditorGUIUtility.AddCursorRect(position, MouseCursor.Link); + + return GUI.Button(position, label, linkStyle); + } + + static bool Button(GUIContent label, GUIStyle style/*, params GUILayoutOption[] options*/) + { + return GUILayout.Button(label, style, GUILayout.Height(32), GUILayout.Width(200)/*, options*/); + } + + // https://docs.unity3d.com/Manual/StyledText.html + public static class RichText + { + public static string Bold(string text) => $"{text}"; + + public static string Italic(string text) => $"{text}"; + + public static string Size(string text, int size) => $"{text}"; + + public static string Color(string text, string color) => $"{text}"; + } + #endregion + } +} diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/Editor/Editor Windows/TutorialWindow.cs.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/Editor/Editor Windows/TutorialWindow.cs.meta" new file mode 100644 index 00000000..b70b790e --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/Editor/Editor Windows/TutorialWindow.cs.meta" @@ -0,0 +1,14 @@ +fileFormatVersion: 2 +guid: ba8f85f9d6bbb46d180610e6061865df +timeCreated: 1490875144 +licenseType: Pro +MonoImporter: + serializedVersion: 2 + defaultReferences: + - m_Styles: {fileID: 11400000, guid: bcaf24dcefa7047b19a2b51c946e64bf, type: 2} + - m_CurrentTutorial: {instanceID: 0} + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/Editor/Editor Windows/VideoPlaybackManager.cs" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/Editor/Editor Windows/VideoPlaybackManager.cs" new file mode 100644 index 00000000..0d34533b --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/Editor/Editor Windows/VideoPlaybackManager.cs" @@ -0,0 +1,64 @@ +using System.Collections.Generic; +using UnityEngine; +using UnityEngine.Video; + +namespace Unity.InteractiveTutorials +{ + class VideoPlaybackManager + { + struct CacheEntry + { + public VideoPlayer videoPlayer; + public RenderTexture renderTexture; + } + + GameObject m_GameObject; + Dictionary m_Cache = new Dictionary(); + + public void OnEnable() + { + m_GameObject = new GameObject { hideFlags = HideFlags.HideAndDontSave }; + } + + public void OnDisable() + { + ClearCache(); + Object.DestroyImmediate(m_GameObject); + } + + public Texture GetTextureForVideoClip(VideoClip videoClip) + { + CacheEntry cacheEntry; + if (!m_Cache.TryGetValue(videoClip, out cacheEntry)) + { + var renderTexture = new RenderTexture((int)videoClip.width, (int)videoClip.height, 32); + renderTexture.hideFlags = HideFlags.HideAndDontSave; + renderTexture.Create(); + + var videoPlayer = m_GameObject.AddComponent(); + videoPlayer.clip = videoClip; + videoPlayer.isLooping = true; + videoPlayer.renderMode = VideoRenderMode.RenderTexture; + videoPlayer.targetTexture = renderTexture; + videoPlayer.Play(); + + cacheEntry.renderTexture = renderTexture; + cacheEntry.videoPlayer = videoPlayer; + m_Cache.Add(videoClip, cacheEntry); + } + + return cacheEntry.renderTexture; + } + + public void ClearCache() + { + foreach (var cacheEntry in m_Cache.Values) + { + Object.DestroyImmediate(cacheEntry.videoPlayer); + Object.DestroyImmediate(cacheEntry.renderTexture); + } + + m_Cache.Clear(); + } + } +} diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/Editor/Editor Windows/VideoPlaybackManager.cs.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/Editor/Editor Windows/VideoPlaybackManager.cs.meta" new file mode 100644 index 00000000..abf656e9 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/Editor/Editor Windows/VideoPlaybackManager.cs.meta" @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 8c332071e985a42cda5884e4993d97af +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/Editor/Editors.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/Editor/Editors.meta" new file mode 100644 index 00000000..c4f55ce8 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/Editor/Editors.meta" @@ -0,0 +1,9 @@ +fileFormatVersion: 2 +guid: 347ca30ee2a02411faa5ad7bdac0f01c +folderAsset: yes +timeCreated: 1495195242 +licenseType: Pro +DefaultImporter: + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/Editor/Editors/ReadmeEditor.cs" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/Editor/Editors/ReadmeEditor.cs" new file mode 100644 index 00000000..dbfbde8f --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/Editor/Editors/ReadmeEditor.cs" @@ -0,0 +1,20 @@ +using UnityEditor; +using UnityEngine; + +namespace Unity.InteractiveTutorials +{ + [CustomEditor(typeof(TutorialContainer))] + public class TutorialContainerEditor : Editor + { + static readonly bool s_IsAuthoringMode = s_IsAuthoringMode = ProjectMode.IsAuthoringMode(); + + public override void OnInspectorGUI() + { + if (GUILayout.Button(TutorialWindowMenuItem.Item)) + TutorialWindow.CreateWindow(); + + if (s_IsAuthoringMode) + base.OnInspectorGUI(); + } + } +} diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/Editor/Editors/ReadmeEditor.cs.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/Editor/Editors/ReadmeEditor.cs.meta" new file mode 100644 index 00000000..44c334e7 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/Editor/Editors/ReadmeEditor.cs.meta" @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: b5936cdf76c06434e86323ead8649f1b +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/Editor/Editors/TutorialEditor.cs" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/Editor/Editors/TutorialEditor.cs" new file mode 100644 index 00000000..f75e5dc7 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/Editor/Editors/TutorialEditor.cs" @@ -0,0 +1,103 @@ +using System; +using System.Text.RegularExpressions; +using UnityEditor; +using UnityEngine; + +namespace Unity.InteractiveTutorials +{ + [CustomEditor(typeof(Tutorial))] + class TutorialEditor : Editor + { + static class Contents + { + public static GUIContent autoCompletion = new GUIContent("Auto Completion"); + public static GUIContent startAutoCompletion = new GUIContent("Start Auto Completion"); + public static GUIContent stopAutoCompletion = new GUIContent("Stop Auto Completion"); + } + + private const string k_PagesPropertyPath = "m_Pages.m_Items"; + + private static readonly Regex s_MatchPagesPropertyPath = + new Regex( + string.Format("^({0}\\.Array\\.size)|(^({0}\\.Array\\.data\\[\\d+\\]))", Regex.Escape(k_PagesPropertyPath)) + ); + + Tutorial tutorial { get { return (Tutorial)target; } } + + [NonSerialized] + private string m_WarningMessage; + + protected virtual void OnEnable() + { + if (serializedObject.FindProperty(k_PagesPropertyPath) == null) + { + m_WarningMessage = string.Format( + "Unable to locate property path {0} on this object. Automatic masking updates will not work.", + k_PagesPropertyPath + ); + } + + Undo.postprocessModifications += OnPostprocessModifications; + Undo.undoRedoPerformed += OnUndoRedoPerformed; + } + + protected virtual void OnDisable() + { + Undo.postprocessModifications -= OnPostprocessModifications; + Undo.undoRedoPerformed -= OnUndoRedoPerformed; + } + + private void OnUndoRedoPerformed() + { + if (tutorial != null) + tutorial.RaiseTutorialPagesModified(); + } + + private UndoPropertyModification[] OnPostprocessModifications(UndoPropertyModification[] modifications) + { + if (tutorial == null) + return modifications; + + var pagesChanged = false; + + foreach (var modification in modifications) + { + if (modification.currentValue.target != target) + continue; + + var propertyPath = modification.currentValue.propertyPath; + if (s_MatchPagesPropertyPath.IsMatch(propertyPath)) + { + pagesChanged = true; + break; + } + } + + if (pagesChanged) + tutorial.RaiseTutorialPagesModified(); + + return modifications; + } + + public override void OnInspectorGUI() + { + if (!string.IsNullOrEmpty(m_WarningMessage)) + EditorGUILayout.HelpBox(m_WarningMessage, MessageType.Warning); + + base.OnInspectorGUI(); + + // Auto completion + GUILayout.Label(Contents.autoCompletion, EditorStyles.boldLabel); + using (new EditorGUI.DisabledScope(tutorial.completed)) + { + if (GUILayout.Button(tutorial.isAutoCompleting ? Contents.stopAutoCompletion : Contents.startAutoCompletion)) + { + if (tutorial.isAutoCompleting) + tutorial.StopAutoCompletion(); + else + tutorial.StartAutoCompletion(); + } + } + } + } +} diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/Editor/Editors/TutorialEditor.cs.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/Editor/Editors/TutorialEditor.cs.meta" new file mode 100644 index 00000000..97758912 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/Editor/Editors/TutorialEditor.cs.meta" @@ -0,0 +1,12 @@ +fileFormatVersion: 2 +guid: 42eb539b5b3e546f5a94ea1cb9422d66 +timeCreated: 1495195249 +licenseType: Pro +MonoImporter: + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/Editor/Editors/TutorialPageEditor.cs" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/Editor/Editors/TutorialPageEditor.cs" new file mode 100644 index 00000000..2c7baebf --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/Editor/Editors/TutorialPageEditor.cs" @@ -0,0 +1,108 @@ +using System; +using System.Text.RegularExpressions; +using UnityEditor; +using UnityEngine; + +namespace Unity.InteractiveTutorials +{ + [CustomEditor(typeof(TutorialPage))] + class TutorialPageEditor : Editor + { + private const string k_ParagraphsPropertyPath = "m_Paragraphs.m_Items"; + private const string k_ParagraphMaskingSettingsRelativePropertyPath = "m_MaskingSettings"; + + private static readonly Regex s_MatchMaskingSettingsPropertyPath = + new Regex( + string.Format( + "(^{0}\\.Array\\.size)|(^({0}\\.Array\\.data\\[\\d+\\]\\.{1}\\.))", + k_ParagraphsPropertyPath, k_ParagraphMaskingSettingsRelativePropertyPath + ) + ); + + TutorialPage tutorialPage { get { return (TutorialPage)target; } } + + [NonSerialized] + private string m_WarningMessage; + + protected virtual void OnEnable() + { + var paragraphs = serializedObject.FindProperty(k_ParagraphsPropertyPath); + if (paragraphs == null) + { + m_WarningMessage = string.Format( + "Unable to locate property path {0} on this object. Automatic masking updates will not work.", + k_ParagraphsPropertyPath + ); + } + else if (paragraphs.arraySize > 0) + { + var maskingSettings = + paragraphs.GetArrayElementAtIndex(0).FindPropertyRelative(k_ParagraphMaskingSettingsRelativePropertyPath); + if (maskingSettings == null) + m_WarningMessage = string.Format( + "Unable to locate property path {0}.Array.data[0].{1} on this object. Automatic masking updates will not work.", + k_ParagraphsPropertyPath, + k_ParagraphMaskingSettingsRelativePropertyPath + ); + } + + Undo.postprocessModifications += OnPostprocessModifications; + Undo.undoRedoPerformed += OnUndoRedoPerformed; + } + + protected virtual void OnDisable() + { + Undo.postprocessModifications -= OnPostprocessModifications; + Undo.undoRedoPerformed -= OnUndoRedoPerformed; + } + + private void OnUndoRedoPerformed() + { + if (tutorialPage != null) + tutorialPage.RaiseTutorialPageMaskingSettingsChangedEvent(); + } + + private UndoPropertyModification[] OnPostprocessModifications(UndoPropertyModification[] modifications) + { + if (tutorialPage == null) + return modifications; + + var targetModified = false; + var maskingChanged = false; + + foreach (var modification in modifications) + { + if (modification.currentValue.target != target) + continue; + + targetModified = true; + var propertyPath = modification.currentValue.propertyPath; + if (s_MatchMaskingSettingsPropertyPath.IsMatch(propertyPath)) + { + maskingChanged = true; + break; + } + } + + if (maskingChanged) + tutorialPage.RaiseTutorialPageMaskingSettingsChangedEvent(); + else if (targetModified) + tutorialPage.RaiseTutorialPageNonMaskingSettingsChangedEvent(); + + return modifications; + } + + public override void OnInspectorGUI() + { + if (!string.IsNullOrEmpty(m_WarningMessage)) + EditorGUILayout.HelpBox(m_WarningMessage, MessageType.Warning); + + EditorGUI.BeginChangeCheck(); + base.OnInspectorGUI(); + if (EditorGUI.EndChangeCheck()) + { + TutorialWindow.GetWindow().ForceInititalizeTutorialAndPage(); + } + } + } +} diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/Editor/Editors/TutorialPageEditor.cs.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/Editor/Editors/TutorialPageEditor.cs.meta" new file mode 100644 index 00000000..da9c0b5d --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/Editor/Editors/TutorialPageEditor.cs.meta" @@ -0,0 +1,12 @@ +fileFormatVersion: 2 +guid: c765e71bf49e744078562d577f06bd0e +timeCreated: 1497011973 +licenseType: Pro +MonoImporter: + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/Editor/FutureObjectReference.cs" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/Editor/FutureObjectReference.cs" new file mode 100644 index 00000000..30d05496 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/Editor/FutureObjectReference.cs" @@ -0,0 +1,67 @@ +using UnityEngine; + +namespace Unity.InteractiveTutorials +{ + public class FutureObjectReference : ScriptableObject + { + [SerializeField] + SceneObjectReferenceHolder m_ReferenceHolder; + + [SerializeField] + Criterion m_Criterion; + + [SerializeField] + string m_ReferenceName; + + SceneObjectReferenceHolder referenceHolder + { + get + { + if (m_ReferenceHolder == null) + { + m_ReferenceHolder = CreateInstance(); + m_ReferenceHolder.hideFlags = HideFlags.HideAndDontSave; + } + + return m_ReferenceHolder; + } + } + + public SceneObjectReference sceneObjectReference + { + get + { + if (referenceHolder.sceneObjectReference == null) + referenceHolder.sceneObjectReference = new SceneObjectReference(); + + return referenceHolder.sceneObjectReference; + } + set + { + referenceHolder.sceneObjectReference = value; + } + } + + public Criterion criterion { get { return m_Criterion; } set { m_Criterion = value; } } + + public string referenceName { get { return m_ReferenceName; } set { m_ReferenceName = value; } } + + void OnDestroy() + { + if (m_ReferenceHolder != null) + DestroyImmediate(m_ReferenceHolder); + } + } + + public class SceneObjectReferenceHolder : ScriptableObject + { + [SerializeField] + SceneObjectReference m_SceneObjectReference; + + public SceneObjectReference sceneObjectReference + { + get { return m_SceneObjectReference; } + set { m_SceneObjectReference = value; } + } + } +} diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/Editor/FutureObjectReference.cs.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/Editor/FutureObjectReference.cs.meta" new file mode 100644 index 00000000..c2f515e4 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/Editor/FutureObjectReference.cs.meta" @@ -0,0 +1,12 @@ +fileFormatVersion: 2 +guid: 65e1fec86be44c61881dbc60a0ea2c02 +timeCreated: 1491399313 +licenseType: Pro +MonoImporter: + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/Editor/GenesisHelper.cs" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/Editor/GenesisHelper.cs" new file mode 100644 index 00000000..c039dc05 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/Editor/GenesisHelper.cs" @@ -0,0 +1,248 @@ +using System; +using System.Collections.Generic; +using System.Linq; +using System.Text; +using UnityEditor; +using UnityEngine; +using UnityEngine.Networking; +using UnityEditor.Connect; + +namespace Unity.InteractiveTutorials +{ + [InitializeOnLoad] + public static class GenesisHelper + { + static readonly string prodHost = @"https://api.unity.com"; + static readonly string stagingHost = @"https://api-staging.unity.com"; + + private static List>> m_Requests = new List>>(); + + private static string HostAddress + { + get { return (IsStagingEnv() ? stagingHost : prodHost); } + } + + private static bool IsStagingEnv() + { + var commandLineArgs = Environment.GetCommandLineArgs(); + for (int i = 0; i < commandLineArgs.Length; i++) + { + if (commandLineArgs[i] == "-cloudEnvironment") + { + if (i + 1 < commandLineArgs.Length && commandLineArgs[i + 1] == "staging") + { + return true; + } + } + } + return false; + } + + static GenesisHelper() + { + EditorApplication.update += WebRequestProcessor; + } + + public static void LogTutorialStarted(string lessonId) + { + if (!IsLessonIdValid(lessonId)) + { + return; + } + GetTutorial(lessonId, (list) => + { + var lesson = list.FirstOrDefault(s => s.lessonId == lessonId); + if (lesson == null || string.IsNullOrEmpty(lesson.status.Trim())) + { + // The fact no entries exist means the user never opened (started) this tutorial + LogTutorialStatusUpdate(lessonId, TutorialProgressStatus.Status.Started.ToString()); + } + }); + } + + public static void LogTutorialEnded(string lessonId) + { + if (!IsLessonIdValid(lessonId)) + { + return; + } + GetTutorial(lessonId, (list) => + { + var lesson = list.FirstOrDefault(s => s.lessonId == lessonId); + if (lesson == null || lesson.status != TutorialProgressStatus.Status.Finished.ToString()) + { + // We only set the status to Finished if: + // there was no entry (which should not happen) + // the current status is Started + LogTutorialStatusUpdate(lessonId, TutorialProgressStatus.Status.Finished.ToString()); + } + }); + } + + private static bool IsLessonIdValid(string lessonId) + { + if (string.IsNullOrEmpty(lessonId.Trim())) + { + LogWarningOnlyInAuthoringMode("LessonId is not set. You can set LessonId on the tutorial asset"); + return false; + } + return true; + } + + private static void LogWarningOnlyInAuthoringMode(string message) + { + // We don't want to spam users with warning messages + // but we want to catch them while creating tutorials + if (ProjectMode.IsAuthoringMode()) + Debug.LogWarning(message); + } + + public static void PrintAllTutorials() + { + GetAllTutorials((tutorials) => + { + var result = ""; + foreach (var tutorial in tutorials) + { + result += tutorial.lessonId + ": " + tutorial.status + "\n"; + } + Debug.Log(result); + }); + } + + public static void GetAllTutorials(Action> action) + { + GetTutorial(null, action); + } + + private static bool IsRequestSuccess(UnityWebRequest unityWebRequest) + { + if (unityWebRequest.isNetworkError || unityWebRequest.isHttpError) + { + LogWarningOnlyInAuthoringMode(unityWebRequest.error); + return false; + } + return true; + } + + private static void GetTutorial(string lessonId, Action> action) + { + var userId = UnityConnectProxy.GetUserId(); + var getLink = @"/v1/users/" + userId + @"/lessons"; + var address = HostAddress + getLink; + var req = MakeGetLessonsRequest(address, lessonId); + SendWebRequest(req, (UnityWebRequest r) => + { + if (!IsRequestSuccess(r)) + { + return; + } + var lessonResponses = TutorialProgressStatus.ParseResponses(r.downloadHandler.text); + action(lessonResponses); + }); + } + + public static void LogTutorialStatusUpdate(string lessonId, string lessonStatus) + { + var userId = UnityConnectProxy.GetUserId(); + var getLink = @"/v1/users/" + userId + @"/lessons"; + var address = HostAddress + getLink; + + var jsonData = RegisterLessonRequest.GetJSONString(lessonStatus, userId, lessonId); + var req = UnityWebRequest.Post(address, jsonData); + var data = System.Text.Encoding.UTF8.GetBytes(jsonData); + req.uploadHandler = new UploadHandlerRaw(data); + + req.SetRequestHeader("Content-Type", "application/json"); + req.SetRequestHeader("Authorization", "Bearer " + UnityConnectProxy.GetAccessToken()); + + SendWebRequest(req, r => + { + if (!IsRequestSuccess(r)) + { + return; + } + }); + } + + private static void SendWebRequest(UnityWebRequest request, Action onFinished) + { + var pair = new KeyValuePair>(request.SendWebRequest(), onFinished); + m_Requests.Add(pair); + } + + private static void WebRequestProcessor() + { + if (!m_Requests.Any()) + return; + + for (int i = 0; i < m_Requests.Count; i++) + { + var request = m_Requests[i].Key; + if (!request.isDone) + continue; + var callback = m_Requests[i].Value; + m_Requests.RemoveAt(i); + callback(request.webRequest); + break; + } + } + + private static UnityWebRequest MakeGetLessonsRequest(string address, string lessonId) + { + if (!string.IsNullOrEmpty(lessonId)) + address += "?lessonId=" + lessonId; + + var req = UnityWebRequest.Post(address, new WWWForm()); + req.SetRequestHeader("Content-Type", "application/json"); + req.SetRequestHeader("Authorization", "Bearer " + UnityConnectProxy.GetAccessToken()); + req.method = "GET"; + return req; + } + + [Serializable] + public class TutorialProgressStatus + { + public string lessonId; + public string status; // TODO make an enum instead + + public enum Status + { + Started, + Finished + } + + [Serializable] + class Wrapper + { + public List statuses = null; + } + + public static List ParseResponses(string respText) + { + var builder = new StringBuilder(12 + respText.Length + 1); + builder.Append("{\"statuses\":"); + builder.Append(respText); + builder.Append("}"); + var wrapper = JsonUtility.FromJson(builder.ToString()); + return wrapper.statuses; + } + } + + private class RegisterLessonRequest + { + public string status; + public string userId; + public string lessonId; + + public static string GetJSONString(string status, string userId, string lessonId) + { + var r = new RegisterLessonRequest(); + r.status = status; + r.userId = userId; + r.lessonId = lessonId; + return JsonUtility.ToJson(r); + } + } + } +} diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/Editor/GenesisHelper.cs.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/Editor/GenesisHelper.cs.meta" new file mode 100644 index 00000000..4805fed9 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/Editor/GenesisHelper.cs.meta" @@ -0,0 +1,13 @@ +fileFormatVersion: 2 +guid: d263f4d22db8d9742a6b1cad707e4855 +timeCreated: 1500303263 +licenseType: Pro +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/Editor/Internal Proxy.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/Editor/Internal Proxy.meta" new file mode 100644 index 00000000..7d77d963 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/Editor/Internal Proxy.meta" @@ -0,0 +1,10 @@ +fileFormatVersion: 2 +guid: fb8c71fbbb2cd445ca984258aae0526b +folderAsset: yes +timeCreated: 1502365063 +licenseType: Pro +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/Editor/Internal Proxy/AssemblyInfo.cs.cs" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/Editor/Internal Proxy/AssemblyInfo.cs.cs" new file mode 100644 index 00000000..9a676db4 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/Editor/Internal Proxy/AssemblyInfo.cs.cs" @@ -0,0 +1,4 @@ +using System.Runtime.CompilerServices; + +[assembly: InternalsVisibleTo("Assembly-CSharp-Editor-firstpass-testable")] +[assembly: InternalsVisibleTo("Unity.learn.iet-framework.Editor.Tests")] diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/Editor/Internal Proxy/AssemblyInfo.cs.cs.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/Editor/Internal Proxy/AssemblyInfo.cs.cs.meta" new file mode 100644 index 00000000..9e205856 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/Editor/Internal Proxy/AssemblyInfo.cs.cs.meta" @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 943c78998aea141cdb4c086907825adf +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/Editor/Internal Proxy/AudioUtilProxy.cs" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/Editor/Internal Proxy/AudioUtilProxy.cs" new file mode 100644 index 00000000..a5e8c5b9 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/Editor/Internal Proxy/AudioUtilProxy.cs" @@ -0,0 +1,10 @@ +using UnityEditor; +using UnityEngine; + +public static class AudioUtilProxy +{ + public static void PlayClip(AudioClip audioClip) + { + AudioUtil.PlayClip(audioClip); + } +} diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/Editor/Internal Proxy/AudioUtilProxy.cs.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/Editor/Internal Proxy/AudioUtilProxy.cs.meta" new file mode 100644 index 00000000..f071d37b --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/Editor/Internal Proxy/AudioUtilProxy.cs.meta" @@ -0,0 +1,13 @@ +fileFormatVersion: 2 +guid: f1077b7e6d5fa4ef6a673808aab71f1c +timeCreated: 1502797789 +licenseType: Pro +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/Editor/Internal Proxy/EditorWindowProxy.cs" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/Editor/Internal Proxy/EditorWindowProxy.cs" new file mode 100644 index 00000000..60ece334 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/Editor/Internal Proxy/EditorWindowProxy.cs" @@ -0,0 +1,22 @@ +using UnityEditor; + +namespace Unity.InteractiveTutorials +{ + public class EditorWindowProxy : EditorWindow + { + internal override void OnResized() + { + base.OnResized(); + OnResized_Internal(); + } + + protected virtual void OnResized_Internal() + { + } + + protected bool IsParentNull() + { + return m_Parent == null; + } + } +} diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/Editor/Internal Proxy/EditorWindowProxy.cs.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/Editor/Internal Proxy/EditorWindowProxy.cs.meta" new file mode 100644 index 00000000..9632648d --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/Editor/Internal Proxy/EditorWindowProxy.cs.meta" @@ -0,0 +1,13 @@ +fileFormatVersion: 2 +guid: 92195719819e74fd4b525c69b4575e49 +timeCreated: 1502365085 +licenseType: Pro +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/Editor/Internal Proxy/GUIViewDebuggerHelperProxy.cs" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/Editor/Internal Proxy/GUIViewDebuggerHelperProxy.cs" new file mode 100644 index 00000000..a5970299 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/Editor/Internal Proxy/GUIViewDebuggerHelperProxy.cs" @@ -0,0 +1,123 @@ +using System.Collections.Generic; +using System.Linq; +using UnityEditor; +using UnityEngine; + +namespace Unity.InteractiveTutorials +{ + public static class GUIViewDebuggerHelperProxy + { + public static void GetViews(List views) + { + var guiViews = new List(); + GUIViewDebuggerHelper.GetViews(guiViews); + views.AddRange(guiViews.Select(view => new GUIViewProxy(view))); + } + + public static void DebugWindow(GUIViewProxy guiViewProxy) + { + GUIViewDebuggerHelper.DebugWindow(guiViewProxy.guiView); + } + + public static void GetDrawInstructions(List drawInstructions) + { + var instructions = new List(); + GUIViewDebuggerHelper.GetDrawInstructions(instructions); + drawInstructions.AddRange(instructions.Select(i => new IMGUIDrawInstructionProxy(i))); + } + + public static void GetNamedControlInstructions(List namedControlInstructions) + { + var instructions = new List(); + GUIViewDebuggerHelper.GetNamedControlInstructions(instructions); + namedControlInstructions.AddRange(instructions.Select(i => new IMGUINamedControlInstructionProxy(i))); + } + + public static void GetPropertyInstructions(List propertyInstructions) + { + var instructions = new List(); + GUIViewDebuggerHelper.GetPropertyInstructions(instructions); + propertyInstructions.AddRange(instructions.Select(i => new IMGUIPropertyInstructionProxy(i))); + } + + public static void GetUnifiedInstructions(List unifiedInstructions) + { + var instructions = new List(); + GUIViewDebuggerHelper.GetUnifiedInstructions(instructions); + unifiedInstructions.AddRange(instructions.Select(i => new IMGUIInstructionProxy(i))); + } + + public static void StopDebugging() + { + GUIViewDebuggerHelper.StopDebugging(); + } + } + + public class IMGUIDrawInstructionProxy + { + IMGUIDrawInstruction m_IMGUIDrawInstruction; + + internal IMGUIDrawInstructionProxy(IMGUIDrawInstruction imguiDrawInstruction) + { + m_IMGUIDrawInstruction = imguiDrawInstruction; + } + + public GUIContent usedGUIContent { get { return m_IMGUIDrawInstruction.usedGUIContent; } } + public Rect rect { get { return m_IMGUIDrawInstruction.rect; } } + public string usedGUIStyleName { get { return m_IMGUIDrawInstruction.usedGUIStyle.name; } } + } + + public class IMGUINamedControlInstructionProxy + { + IMGUINamedControlInstruction m_IMGUINamedControlInstructionProxy; + + internal IMGUINamedControlInstructionProxy(IMGUINamedControlInstruction imguiNamedControlInstruction) + { + m_IMGUINamedControlInstructionProxy = imguiNamedControlInstruction; + } + + public string name { get { return m_IMGUINamedControlInstructionProxy.name; } } + public Rect rect { get { return m_IMGUINamedControlInstructionProxy.rect; } } + } + + public class IMGUIPropertyInstructionProxy + { + IMGUIPropertyInstruction m_IMGUIPropertyInstruction; + + internal IMGUIPropertyInstructionProxy(IMGUIPropertyInstruction imguiPropertyInstruction) + { + m_IMGUIPropertyInstruction = imguiPropertyInstruction; + } + + public string targetTypeName { get { return m_IMGUIPropertyInstruction.targetTypeName; } } + public string path { get { return m_IMGUIPropertyInstruction.path; } } + public Rect rect { get { return m_IMGUIPropertyInstruction.rect; } } + } + + public enum InstructionTypeProxy + { + StyleDraw = 1, + ClipPush = 2, + ClipPop = 3, + LayoutBeginGroup = 4, + LayoutEndGroup = 5, + LayoutEntry = 6, + PropertyBegin = 7, + PropertyEnd = 8, + LayoutNamedControl = 9, + } + + public class IMGUIInstructionProxy + { + IMGUIInstruction m_IMGUIInstruction; + + internal IMGUIInstructionProxy(IMGUIInstruction imguiInstruction) + { + m_IMGUIInstruction = imguiInstruction; + } + + public InstructionTypeProxy type { get { return (InstructionTypeProxy)m_IMGUIInstruction.type; } } + public int level { get { return m_IMGUIInstruction.level; } } + public int typeInstructionIndex { get { return m_IMGUIInstruction.typeInstructionIndex; } } + } +} diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/Editor/Internal Proxy/GUIViewDebuggerHelperProxy.cs.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/Editor/Internal Proxy/GUIViewDebuggerHelperProxy.cs.meta" new file mode 100644 index 00000000..8f9e4bef --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/Editor/Internal Proxy/GUIViewDebuggerHelperProxy.cs.meta" @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 356ea504ccbd144de9019adde7541aa4 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/Editor/Internal Proxy/GUIViewProxy.cs" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/Editor/Internal Proxy/GUIViewProxy.cs" new file mode 100644 index 00000000..5b977985 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/Editor/Internal Proxy/GUIViewProxy.cs" @@ -0,0 +1,99 @@ +using System; +using System.Collections.Generic; +using UnityEditor; +using UnityEngine; +using UnityObject = UnityEngine.Object; + +namespace Unity.InteractiveTutorials +{ + public class GUIViewProxy + { + public static event Action positionChanged; + + public static Type guiViewType { get { return typeof(GUIView); }} + public static Type tooltipViewType { get { return typeof(TooltipView); }} + + static GUIViewProxy() + { + GUIView.positionChanged += OnPositionChanged; + } + + static void OnPositionChanged(GUIView guiView) + { + if (positionChanged != null) + positionChanged(guiView); + } + + public static bool IsAssignableFrom(Type type) + { + return typeof(GUIView).IsAssignableFrom(type); + } + + GUIView m_GUIView; + + internal GUIView guiView { get { return m_GUIView; } } + + public bool isValid { get { return m_GUIView != null; } } + public bool isWindowAndRootViewValid { get { return m_GUIView.window != null && m_GUIView.window.rootView != null; } } + public Rect position { get { return m_GUIView.position; } } + + internal GUIViewProxy(GUIView guiView) + { + m_GUIView = guiView; + } + + public void Repaint() + { + m_GUIView.Repaint(); + } + + public void RepaintImmediately() + { + m_GUIView.RepaintImmediately(); + } + + public bool IsActualViewAssignableTo(Type editorWindowType) + { + var hostView = m_GUIView as HostView; + return hostView != null && hostView.actualView != null && editorWindowType.IsInstanceOfType(hostView.actualView); + } + + public bool IsDockedToEditor() + { + var hostView = m_GUIView as HostView; + + if (hostView != null && hostView.window != null) + { + return hostView.window.showMode == ShowMode.MainWindow; + } + + return true; + } + + public bool IsGUIViewAssignableTo(Type targetViewType) + { + return targetViewType.IsInstanceOfType(m_GUIView); + } + } + + public class GUIViewProxyComparer : IEqualityComparer + { + public bool Equals(GUIViewProxy x, GUIViewProxy y) + { + return x.guiView == y.guiView; + } + + public int GetHashCode(GUIViewProxy obj) + { + return obj.guiView.GetHashCode(); + } + } + + public static class EditorWindowExtension + { + public static GUIViewProxy GetParent(this EditorWindow window) + { + return new GUIViewProxy(window.m_Parent); + } + } +} diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/Editor/Internal Proxy/GUIViewProxy.cs.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/Editor/Internal Proxy/GUIViewProxy.cs.meta" new file mode 100644 index 00000000..34d4eafb --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/Editor/Internal Proxy/GUIViewProxy.cs.meta" @@ -0,0 +1,13 @@ +fileFormatVersion: 2 +guid: de2e64c7d13394d56aab3c5a06263fae +timeCreated: 1502795682 +licenseType: Pro +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/Editor/Internal Proxy/GameObjectProxy.cs" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/Editor/Internal Proxy/GameObjectProxy.cs" new file mode 100644 index 00000000..4513badd --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/Editor/Internal Proxy/GameObjectProxy.cs" @@ -0,0 +1,13 @@ +using UnityEditor; +using UnityEngine; + +namespace Unity.InteractiveTutorials +{ + public static class GameObjectProxy + { + public static Bounds CalculateBounds(GameObject gameObject) + { + return gameObject.CalculateBounds(); + } + } +} diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/Editor/Internal Proxy/GameObjectProxy.cs.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/Editor/Internal Proxy/GameObjectProxy.cs.meta" new file mode 100644 index 00000000..4458eaad --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/Editor/Internal Proxy/GameObjectProxy.cs.meta" @@ -0,0 +1,13 @@ +fileFormatVersion: 2 +guid: 139d498052a404dfc866e8547cc30f5e +timeCreated: 1502797449 +licenseType: Pro +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/Editor/Internal Proxy/GameViewProxy.cs" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/Editor/Internal Proxy/GameViewProxy.cs" new file mode 100644 index 00000000..c971066c --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/Editor/Internal Proxy/GameViewProxy.cs" @@ -0,0 +1,13 @@ +using UnityEditor; + +namespace Unity.InteractiveTutorials +{ + public class GameViewProxy : EditorWindow + { + public static bool maximizeOnPlay + { + get { return GetWindow().maximizeOnPlay; } + set { GetWindow().maximizeOnPlay = value; } + } + } +} diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/Editor/Internal Proxy/GameViewProxy.cs.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/Editor/Internal Proxy/GameViewProxy.cs.meta" new file mode 100644 index 00000000..9a1d5032 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/Editor/Internal Proxy/GameViewProxy.cs.meta" @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 7515c02c5c4454ec8b3fd09548cfe93d +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/Editor/Internal Proxy/HandleUtilityProxy.cs" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/Editor/Internal Proxy/HandleUtilityProxy.cs" new file mode 100644 index 00000000..0bd1b7c0 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/Editor/Internal Proxy/HandleUtilityProxy.cs" @@ -0,0 +1,10 @@ +using UnityEditor; +using UnityEngine; + +public static class HandleUtilityProxy +{ + public static GameObject FindSelectionBase(GameObject gameObject) + { + return HandleUtility.FindSelectionBase(gameObject); + } +} diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/Editor/Internal Proxy/HandleUtilityProxy.cs.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/Editor/Internal Proxy/HandleUtilityProxy.cs.meta" new file mode 100644 index 00000000..ec6421c4 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/Editor/Internal Proxy/HandleUtilityProxy.cs.meta" @@ -0,0 +1,13 @@ +fileFormatVersion: 2 +guid: 444d594f6c376402c989d714ab6dddd0 +timeCreated: 1502798012 +licenseType: Pro +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/Editor/Internal Proxy/HomeWindowProxy.cs" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/Editor/Internal Proxy/HomeWindowProxy.cs" new file mode 100644 index 00000000..2f0b8537 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/Editor/Internal Proxy/HomeWindowProxy.cs" @@ -0,0 +1,12 @@ +using UnityEditor; + +namespace Unity.InteractiveTutorials +{ + public static class HomeWindowProxy + { + public static void ShowTutorials() + { + HomeWindow.Show(HomeWindow.HomeMode.Tutorial); + } + } +} diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/Editor/Internal Proxy/HomeWindowProxy.cs.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/Editor/Internal Proxy/HomeWindowProxy.cs.meta" new file mode 100644 index 00000000..8ba6bc27 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/Editor/Internal Proxy/HomeWindowProxy.cs.meta" @@ -0,0 +1,13 @@ +fileFormatVersion: 2 +guid: a1623fc48a8cb4101905a3a7a9c590d3 +timeCreated: 1502797225 +licenseType: Pro +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/Editor/Internal Proxy/HostViewProxy.cs" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/Editor/Internal Proxy/HostViewProxy.cs" new file mode 100644 index 00000000..0645af39 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/Editor/Internal Proxy/HostViewProxy.cs" @@ -0,0 +1,21 @@ +using System; +using UnityEditor; + +namespace Unity.InteractiveTutorials +{ + public static class HostViewProxy + { + public static event Action actualViewChanged; + + static HostViewProxy() + { + HostView.actualViewChanged += OnActualViewChanged; + } + + static void OnActualViewChanged(HostView hostView) + { + if (actualViewChanged != null) + actualViewChanged(); + } + } +} diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/Editor/Internal Proxy/HostViewProxy.cs.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/Editor/Internal Proxy/HostViewProxy.cs.meta" new file mode 100644 index 00000000..e3642c08 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/Editor/Internal Proxy/HostViewProxy.cs.meta" @@ -0,0 +1,13 @@ +fileFormatVersion: 2 +guid: c51015ae8fd854bd79e0132a702b070b +timeCreated: 1502796102 +licenseType: Pro +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/Editor/Internal Proxy/InspectorWindowProxy.cs" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/Editor/Internal Proxy/InspectorWindowProxy.cs" new file mode 100644 index 00000000..06cbe83a --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/Editor/Internal Proxy/InspectorWindowProxy.cs" @@ -0,0 +1,22 @@ +using UnityEditor; + +namespace Unity.InteractiveTutorials +{ + public static class InspectorWindowProxy + { + public static void DirtyAllEditors(EditorWindow window) + { + var inspector = window as InspectorWindow; + if (inspector != null && inspector.tracker != null) + { + foreach (var editor in inspector.tracker.activeEditors) + editor.isInspectorDirty = true; + } + } + + public static void ForceShowInspector() + { + EditorWindow.GetWindow().Show(); + } + } +} diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/Editor/Internal Proxy/InspectorWindowProxy.cs.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/Editor/Internal Proxy/InspectorWindowProxy.cs.meta" new file mode 100644 index 00000000..83f5fa5a --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/Editor/Internal Proxy/InspectorWindowProxy.cs.meta" @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 77009371936a94d15995f5f902047f56 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/Editor/Internal Proxy/UIElementsHelper.cs" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/Editor/Internal Proxy/UIElementsHelper.cs" new file mode 100644 index 00000000..5879b057 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/Editor/Internal Proxy/UIElementsHelper.cs" @@ -0,0 +1,121 @@ +using System; +using System.Reflection; +using UnityEditor; +using UnityEngine; + +#if UNITY_2019_1_OR_NEWER +using UnityEngine.UIElements; +using VisualContainer = UnityEngine.UIElements.VisualElement; +#else +using UnityEngine.Experimental.UIElements; +#endif + +namespace Unity.InteractiveTutorials +{ + // Handle difference in UIElements API between 2017.2 and above + // Initialize on load to surface potential reflection issues immediately + [InitializeOnLoad] + public static class UIElementsHelper + { + static MethodInfo s_AddMethod; + static MethodInfo s_RemoveMethod; + static PropertyInfo s_ParentProperty; + static PropertyInfo s_VisualTreeProperty; + + static UIElementsHelper() + { + s_AddMethod = GetMethod("Add", typeof(VisualElement)) ?? GetMethod("AddChild", typeof(VisualElement)); + if (s_AddMethod == null) + Debug.LogError("Cannot find method VisualContainer.AddChild/VisualElement.Add"); + + s_RemoveMethod = GetMethod("Remove", typeof(VisualElement)) ?? GetMethod("RemoveChild", typeof(VisualElement)); + if (s_RemoveMethod == null) + Debug.LogError("Cannot find method VisualContainer.RemoveChild/VisualElement.Remove"); + + s_ParentProperty = GetProperty("parent", typeof(VisualElement)) ?? GetProperty("parent", typeof(VisualContainer)); + if (s_ParentProperty == null) + Debug.LogError("Cannot find property VisualElement.parent"); + + s_VisualTreeProperty = GetProperty("visualTree", typeof(VisualElement)) ?? GetProperty("visualTree", typeof(VisualContainer)); + if (s_VisualTreeProperty == null) + Debug.LogError("Cannot find property GUIView.visualTree"); + } + + static MethodInfo GetMethod(string name, params Type[] parameterTypes) + { + return typeof(T).GetMethod(name, + BindingFlags.Public | BindingFlags.Instance, + null, + CallingConventions.Any, + parameterTypes, + null + ); + } + + static PropertyInfo GetProperty(string name, Type returnType) + { + return typeof(T).GetProperty(name, + BindingFlags.Public | BindingFlags.Instance, + null, + returnType, + new Type[0], + null + ); + } + + public static void Add(VisualElement element, VisualElement child) + { + s_AddMethod.Invoke(element, new object[] { child }); + } + + public static void Add(GUIViewProxy view, VisualElement child) + { + if (view.IsDockedToEditor()) + { + Add(GetVisualTree(view), child); + } + else + { + foreach (var visualElement in GetVisualTree(view).Children()) + { + Add(visualElement, child); + } + } + } + + public static void Remove(VisualElement element, VisualElement child) + { + s_RemoveMethod.Invoke(element, new object[] { child }); + } + + public static VisualElement GetParent(VisualElement element) + { + return (VisualElement)s_ParentProperty.GetValue(element, new object[0]); + } + + public static VisualElement GetVisualTree(GUIViewProxy guiViewProxy) + { + return (VisualElement)s_VisualTreeProperty.GetValue(guiViewProxy.guiView, new object[0]); + } + + public static void SetLayout(this VisualElement element, Rect rect) + { +#if UNITY_2019_1_OR_NEWER + var style = element.style; + style.position = Position.Absolute; + style.marginLeft = 0.0f; + style.marginRight = 0.0f; + style.marginBottom = 0.0f; + style.marginTop = 0.0f; + style.left = rect.x; + style.top = rect.y; + style.right = float.NaN; + style.bottom = float.NaN; + style.width = rect.width; + style.height = rect.height; +#else + element.layout = rect; +#endif + } + } +} diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/Editor/Internal Proxy/UIElementsHelper.cs.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/Editor/Internal Proxy/UIElementsHelper.cs.meta" new file mode 100644 index 00000000..e15ca339 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/Editor/Internal Proxy/UIElementsHelper.cs.meta" @@ -0,0 +1,3 @@ +fileFormatVersion: 2 +guid: a373d9edfa404c8d9dd684cc16f70cf1 +timeCreated: 1507205020 \ No newline at end of file diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/Editor/Internal Proxy/UnityConnectProxy.cs" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/Editor/Internal Proxy/UnityConnectProxy.cs" new file mode 100644 index 00000000..c4c0ba14 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/Editor/Internal Proxy/UnityConnectProxy.cs" @@ -0,0 +1,17 @@ +using UnityEditor.Connect; + +namespace Unity.InteractiveTutorials +{ + public static class UnityConnectProxy + { + public static string GetUserId() + { + return UnityConnect.instance.GetUserId(); + } + + public static string GetAccessToken() + { + return UnityConnect.instance.GetAccessToken(); + } + } +} diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/Editor/Internal Proxy/UnityConnectProxy.cs.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/Editor/Internal Proxy/UnityConnectProxy.cs.meta" new file mode 100644 index 00000000..a177ba12 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/Editor/Internal Proxy/UnityConnectProxy.cs.meta" @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 97e2fd94c6d8f411493e7533423609ad +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/Editor/Internal Proxy/UnityEditor.InteractiveTutorialsFramework.asmdef" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/Editor/Internal Proxy/UnityEditor.InteractiveTutorialsFramework.asmdef" new file mode 100644 index 00000000..97028496 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/Editor/Internal Proxy/UnityEditor.InteractiveTutorialsFramework.asmdef" @@ -0,0 +1,14 @@ +{ + "name": "UnityEditor.InteractiveTutorialsFramework", + "references": [], + "optionalUnityReferences": [], + "includePlatforms": [ + "Editor" + ], + "excludePlatforms": [], + "allowUnsafeCode": false, + "overrideReferences": false, + "precompiledReferences": [], + "autoReferenced": true, + "defineConstraints": [] +} \ No newline at end of file diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/Editor/Internal Proxy/UnityEditor.InteractiveTutorialsFramework.asmdef.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/Editor/Internal Proxy/UnityEditor.InteractiveTutorialsFramework.asmdef.meta" new file mode 100644 index 00000000..f996685e --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/Editor/Internal Proxy/UnityEditor.InteractiveTutorialsFramework.asmdef.meta" @@ -0,0 +1,7 @@ +fileFormatVersion: 2 +guid: a7ee5f2dd4e86422d9491fd586ffe6f5 +AssemblyDefinitionImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/Editor/Internal Proxy/UsabilityAnalyticsProxy.cs" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/Editor/Internal Proxy/UsabilityAnalyticsProxy.cs" new file mode 100644 index 00000000..5a3ce0f8 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/Editor/Internal Proxy/UsabilityAnalyticsProxy.cs" @@ -0,0 +1,15 @@ +using System.Collections; +using System.Collections.Generic; +using UnityEngine; +using UnityEditor; + +namespace Unity.InteractiveTutorials +{ + static public class UsabilityAnalyticsProxy + { + public static void SendEvent(string eventType, System.DateTime startTime, System.TimeSpan duration, bool isBlocking, object parameters) + { + UsabilityAnalytics.SendEvent(eventType, startTime, duration, isBlocking, parameters); + } + } +} diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/Editor/Internal Proxy/UsabilityAnalyticsProxy.cs.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/Editor/Internal Proxy/UsabilityAnalyticsProxy.cs.meta" new file mode 100644 index 00000000..c2d58365 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/Editor/Internal Proxy/UsabilityAnalyticsProxy.cs.meta" @@ -0,0 +1,13 @@ +fileFormatVersion: 2 +guid: 95b7718c8944da2458a82e9d9086ab4e +timeCreated: 1503325007 +licenseType: Pro +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/Editor/Internal Proxy/WindowLayout.cs" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/Editor/Internal Proxy/WindowLayout.cs" new file mode 100644 index 00000000..af4b6ebd --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/Editor/Internal Proxy/WindowLayout.cs" @@ -0,0 +1,101 @@ +using UnityEditor; +using UnityEngine; +using System.IO; +using System.Collections.Generic; +using System; + +namespace Unity.InteractiveTutorials +{ + public static class WindowLayoutProxy + { + public static void SaveWindowLayout(string path) + { + WindowLayout.SaveWindowLayout(path); + } + + public static string ReplaceAfter(string before, string replaceWithThis, string lineToRead) + { + int index = -1; + index = lineToRead.IndexOf(before, System.StringComparison.Ordinal); + if (index > -1) + { + lineToRead = lineToRead.Substring(0, index + before.Length) + replaceWithThis; + } + return lineToRead; + } + + // TODO Clean up and give a better name + public static bool RemoveStuff(string filePath) + { + var fileContents = new List(); + try + { + using(StreamReader reader = new StreamReader(filePath)) + { + string line; + string toReplace = "m_LastProjectPath: "; + string replaceWith = Directory.GetCurrentDirectory(); + while((line = reader.ReadLine()) != null) + { + line = ReplaceAfter(toReplace, replaceWith, line); + line = ReplaceAfter("m_Readme: ", "{fileID: 0}", line); + fileContents.Add(line); + } + } + + using(StreamWriter writer = new StreamWriter(filePath, false)) + { + for(int i = 0; i < fileContents.Count; i++) + { + writer.WriteLine(fileContents[i]); + } + } + return true; + } + catch(Exception e) + { + Debug.LogException(e); + return false; + } + } + + public static bool ReplaceLastProjectPathWithCurrentProjectPath(string layoutPath) + { + var success = false; + //var layout = InternalEditorUtility.LoadSerializedFileAndForget(layoutPath); + RemoveStuff(layoutPath); + /* + foreach(var wnd in layout) + { + using(var so = new SerializedObject(wnd)) + { + // Having the layout a readme stored is unwanted. + + var readme = so.FindProperty("m_Readme"); + if (readme != null) + { + readme.objectReferenceValue = null; + so.ApplyModifiedProperties(); + } + if (!success) + { + var lastProjectPath = so.FindProperty("m_LastProjectPath"); + if (lastProjectPath != null) + { + lastProjectPath.stringValue = System.IO.Directory.GetCurrentDirectory(); + so.ApplyModifiedProperties(); + success = true; + } + } + } + } + */ + if (success) + { + //InternalEditorUtility.SaveToSerializedFileAndForget(layout, layoutPath, true); + } + + return success; + } + } +} diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/Editor/Internal Proxy/WindowLayout.cs.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/Editor/Internal Proxy/WindowLayout.cs.meta" new file mode 100644 index 00000000..07ae3482 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/Editor/Internal Proxy/WindowLayout.cs.meta" @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: dab1d34e3a75c4ab79233a25500b9842 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/Editor/Masking.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/Editor/Masking.meta" new file mode 100644 index 00000000..63fcf494 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/Editor/Masking.meta" @@ -0,0 +1,9 @@ +fileFormatVersion: 2 +guid: a42ef504366cc69499234aae4d660cb9 +folderAsset: yes +timeCreated: 1493713003 +licenseType: Pro +DefaultImporter: + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/Editor/Masking/GUIControlSelector.cs" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/Editor/Masking/GUIControlSelector.cs" new file mode 100644 index 00000000..15122ca8 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/Editor/Masking/GUIControlSelector.cs" @@ -0,0 +1,43 @@ +using System; +using UnityEditor; +using UnityEngine; +using UnityObject = UnityEngine.Object; + +namespace Unity.InteractiveTutorials +{ + [Serializable] + public class GUIControlSelector + { + public enum Mode + { + GUIContent, + NamedControl, + Property, + GUIStyleName, + } + + public Mode selectorMode { get { return m_SelectorMode; } set { m_SelectorMode = value; } } + [SerializeField] + private Mode m_SelectorMode; + + public GUIContent guiContent { get { return new GUIContent(m_GUIContent); } set { m_GUIContent = new GUIContent(value); } } + [SerializeField] + private GUIContent m_GUIContent = new GUIContent(); + + public string controlName { get { return m_ControlName; } set { m_ControlName = value ?? ""; } } + [SerializeField] + private string m_ControlName = ""; + + public string propertyPath { get { return m_PropertyPath; } set { m_PropertyPath = value ?? ""; } } + [SerializeField] + private string m_PropertyPath = ""; + + public Type targetType { get { return m_TargetType.type; } set { m_TargetType.type = value; } } + [SerializeField, SerializedTypeFilter(typeof(UnityObject))] + private SerializedType m_TargetType = new SerializedType(null); + + public string guiStyleName { get { return m_GUIStyleName; } set { m_GUIStyleName = value; } } + [SerializeField] + private string m_GUIStyleName; + } +} diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/Editor/Masking/GUIControlSelector.cs.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/Editor/Masking/GUIControlSelector.cs.meta" new file mode 100644 index 00000000..c7e658fe --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/Editor/Masking/GUIControlSelector.cs.meta" @@ -0,0 +1,12 @@ +fileFormatVersion: 2 +guid: fb0d36e91205f4fd481823f10fdd57c3 +timeCreated: 1493977183 +licenseType: Pro +MonoImporter: + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/Editor/Masking/MaskingManager.cs" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/Editor/Masking/MaskingManager.cs" new file mode 100644 index 00000000..92ce2cf6 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/Editor/Masking/MaskingManager.cs" @@ -0,0 +1,325 @@ +using System; +using System.Collections.Generic; +using System.Linq; +using UnityEngine; +using UnityEditor; + +#if UNITY_2019_1_OR_NEWER +using UnityEngine.UIElements; +using VisualContainer = UnityEngine.UIElements.VisualElement; +#else +using UnityEngine.Experimental.UIElements; +#endif + +namespace Unity.InteractiveTutorials +{ + public static class MaskingManager + { + internal static bool IsMasked(GUIViewProxy view, List rects) + { + rects.Clear(); + + MaskViewData maskViewData; + if (s_UnmaskedViews.TryGetValue(view, out maskViewData)) + { + var rectList = maskViewData.rects; + rects.AddRange(rectList); + return false; + } + return true; + } + + internal static bool IsHighlighted(GUIViewProxy view, List rects) + { + rects.Clear(); + MaskViewData maskViewData; + + if (!s_HighlightedViews.TryGetValue(view, out maskViewData)) + return false; + var rectList = maskViewData.rects; + rects.AddRange(rectList); + return true; + } + + static GUIViewProxyComparer s_GUIViewProxyComparer = new GUIViewProxyComparer(); + + private static readonly Dictionary s_UnmaskedViews = new Dictionary(s_GUIViewProxyComparer); + private static readonly Dictionary s_HighlightedViews = new Dictionary(s_GUIViewProxyComparer); + + private static readonly List s_Masks = new List(); + private static readonly List s_Highlighters = new List(); + + private static double s_LastHighlightTime; + + public static float highlightAnimationDelay { get; set; } + public static float highlightAnimationSpeed { get; set; } + + static MaskingManager() + { + EditorApplication.update += delegate + { + // do not animate unless enough time has passed since masking was last applied + var t = EditorApplication.timeSinceStartup - s_LastHighlightTime - highlightAnimationDelay; + if (t < 0d) + return; + + var baseBorderWidth = 4.2f; + var borderWidthAmplitude = 2.1f; + var animatedBorderWidth = Mathf.Cos((float)t * highlightAnimationSpeed) * borderWidthAmplitude + baseBorderWidth; + foreach (var highlighter in s_Highlighters) + { + if (highlighter == null) + continue; + + highlighter.style.borderLeftWidth = animatedBorderWidth; + highlighter.style.borderRightWidth = animatedBorderWidth; + highlighter.style.borderTopWidth = animatedBorderWidth; + highlighter.style.borderBottomWidth = animatedBorderWidth; + } + foreach (var view in s_HighlightedViews) + { + if (view.Key.isValid) + view.Key.Repaint(); + } + }; + } + + public static void Unmask() + { + foreach (var mask in s_Masks) + { + if (mask != null && UIElementsHelper.GetParent(mask) != null) + UIElementsHelper.Remove(UIElementsHelper.GetParent(mask), mask); + } + s_Masks.Clear(); + foreach (var highlighter in s_Highlighters) + { + if (highlighter != null && UIElementsHelper.GetParent(highlighter) != null) + UIElementsHelper.Remove(UIElementsHelper.GetParent(highlighter), highlighter); + } + s_Highlighters.Clear(); + } + + private static void CopyMaskData(UnmaskedView.MaskData maskData, Dictionary viewsAndResources) + { + viewsAndResources.Clear(); + foreach (var unmaskedView in maskData.m_MaskData) + { + if (unmaskedView.Key == null) + continue; + var maskViewData = unmaskedView.Value; + var unmaskedRegions = maskViewData.rects == null ? new List(1) : maskViewData.rects.ToList(); + if (unmaskedRegions.Count == 0) + unmaskedRegions.Add(new Rect(0f, 0f, unmaskedView.Key.position.width, unmaskedView.Key.position.height)); + viewsAndResources[unmaskedView.Key] = new MaskViewData() { maskType = maskViewData.maskType, rects = unmaskedRegions }; + } + } + + public static void AddMaskToView(GUIViewProxy view, VisualElement child) + { + if (view.IsDockedToEditor()) + { + UIElementsHelper.Add(UIElementsHelper.GetVisualTree(view), child); + } + else + { + var viewVisualElement = UIElementsHelper.GetVisualTree(view); + + Debug.Assert(viewVisualElement.Children().Count() == 2 + && viewVisualElement.Children().Count(viewChild => viewChild is IMGUIContainer) == 1, + "Could not find the expected VisualElement structure"); + + foreach (var visualElement in viewVisualElement.Children()) + { + if (!(visualElement is IMGUIContainer)) + { + UIElementsHelper.Add(visualElement, child); + break; + } + } + } + } + + public static void Mask( + UnmaskedView.MaskData unmaskedViewsAndRegionsMaskData, Color maskColor, + UnmaskedView.MaskData highlightedRegionsMaskData, Color highlightColor, Color blockedInteractionsColor, float highlightThickness + ) + { + Unmask(); + + CopyMaskData(unmaskedViewsAndRegionsMaskData, s_UnmaskedViews); + CopyMaskData(highlightedRegionsMaskData, s_HighlightedViews); + + List views = new List(); + GUIViewDebuggerHelperProxy.GetViews(views); + + foreach (var view in views) + { + if (!view.isValid) + continue; + + MaskViewData maskViewData; + + var viewRect = new Rect(0, 0, view.position.width, view.position.height); + + // mask everything except the unmasked view rects + if (s_UnmaskedViews.TryGetValue(view, out maskViewData)) + { + List rects = maskViewData.rects; + var maskedRects = GetNegativeSpaceRects(viewRect, rects); + foreach (var rect in maskedRects) + { + var mask = new VisualElement(); + mask.style.backgroundColor = maskColor; + mask.SetLayout(rect); + AddMaskToView(view, mask); + s_Masks.Add(mask); + } + + if (maskViewData.maskType == MaskType.BlockInteractions) + { + foreach (var rect in rects) + { + var mask = new VisualElement(); + mask.style.backgroundColor = blockedInteractionsColor; + mask.SetLayout(rect); + AddMaskToView(view, mask); + s_Masks.Add(mask); + } + } + } + // mask the whole view + else + { + var mask = new VisualElement(); + mask.style.backgroundColor = maskColor; + mask.SetLayout(viewRect); + AddMaskToView(view, mask); + s_Masks.Add(mask); + } + + if (s_HighlightedViews.TryGetValue(view, out maskViewData)) + { + var rects = maskViewData.rects; + // unclip highlight to apply as "outer stroke" if it is being applied to some control(s) in the view + var unclip = rects.Count > 1 || rects[0] != viewRect; + var borderRadius = 5.0f; + foreach (var rect in rects) + { + var highlighter = new VisualElement(); +#if UNITY_2019_3_OR_NEWER + highlighter.style.borderLeftColor = highlightColor; + highlighter.style.borderRightColor = highlightColor; + highlighter.style.borderTopColor = highlightColor; + highlighter.style.borderBottomColor = highlightColor; +#else + highlighter.style.borderColor = highlightColor; +#endif + highlighter.style.borderLeftWidth = highlightThickness; + highlighter.style.borderRightWidth = highlightThickness; + highlighter.style.borderTopWidth = highlightThickness; + highlighter.style.borderBottomWidth = highlightThickness; + + highlighter.style.borderBottomLeftRadius = borderRadius; + highlighter.style.borderTopLeftRadius = borderRadius; + highlighter.style.borderBottomRightRadius = borderRadius; + highlighter.style.borderTopRightRadius = borderRadius; + + highlighter.pickingMode = PickingMode.Ignore; + var layout = rect; + if (unclip) + { + layout.xMin -= highlightThickness; + layout.xMax += highlightThickness; + layout.yMin -= highlightThickness; + layout.yMax += highlightThickness; + } + highlighter.SetLayout(layout); + UIElementsHelper.Add(UIElementsHelper.GetVisualTree(view), highlighter); + s_Highlighters.Add(highlighter); + } + } + } + + s_LastHighlightTime = EditorApplication.timeSinceStartup; + } + + static readonly HashSet s_YCoords = new HashSet(); + static readonly HashSet s_XCoords = new HashSet(); + + static readonly List s_SortedYCoords = new List(); + static readonly List s_SortedXCoords = new List(); + + internal static List GetNegativeSpaceRects(Rect viewRect, List positiveSpaceRects) + { + //TODO maybe its okay to round to int? + + s_YCoords.Clear(); + s_XCoords.Clear(); + + for (int i = 0; i < positiveSpaceRects.Count; i++) + { + var hole = positiveSpaceRects[i]; + s_YCoords.Add(hole.y); + s_YCoords.Add(hole.yMax); + s_XCoords.Add(hole.x); + s_XCoords.Add(hole.xMax); + } + + s_YCoords.Add(0); + s_YCoords.Add(viewRect.height); + + s_XCoords.Add(0); + s_XCoords.Add(viewRect.width); + + s_SortedYCoords.Clear(); + s_SortedXCoords.Clear(); + + s_SortedYCoords.AddRange(s_YCoords); + s_SortedXCoords.AddRange(s_XCoords); + + s_SortedYCoords.Sort(); + s_SortedXCoords.Sort(); + + var filledRects = new List(); + + for (var i = 1; i < s_SortedYCoords.Count; ++i) + { + var minY = s_SortedYCoords[i - 1]; + var maxY = s_SortedYCoords[i]; + var midY = (maxY + minY) / 2; + var workingRect = new Rect(s_SortedXCoords[0], minY, 0, (maxY - minY)); + + for (var j = 1; j < s_SortedXCoords.Count; ++j) + { + var minX = s_SortedXCoords[j - 1]; + var maxX = s_SortedXCoords[j]; + + var midX = (maxX + minX) / 2; + + + var potentialHole = positiveSpaceRects.Find((hole) => { return hole.Contains(new Vector2(midX, midY)); }); + var cellIsHole = potentialHole.width > 0 && potentialHole.height > 0; + + if (cellIsHole) + { + if (workingRect.width > 0 && workingRect.height > 0) + filledRects.Add(workingRect); + + workingRect.x = maxX; + workingRect.xMax = maxX; + } + else + { + workingRect.xMax = maxX; + } + } + + if (workingRect.width > 0 && workingRect.height > 0) + filledRects.Add(workingRect); + } + + return filledRects; + } + } +} diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/Editor/Masking/MaskingManager.cs.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/Editor/Masking/MaskingManager.cs.meta" new file mode 100644 index 00000000..a1c5076e --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/Editor/Masking/MaskingManager.cs.meta" @@ -0,0 +1,12 @@ +fileFormatVersion: 2 +guid: 11d7920aff4f5f64f99c2abafa97642e +timeCreated: 1493713014 +licenseType: Pro +MonoImporter: + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/Editor/Masking/MaskingSettings.cs" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/Editor/Masking/MaskingSettings.cs" new file mode 100644 index 00000000..92035f49 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/Editor/Masking/MaskingSettings.cs" @@ -0,0 +1,29 @@ +using System; +using System.Collections.Generic; +using UnityEngine; +using UnityEngine.Serialization; + +namespace Unity.InteractiveTutorials +{ + [Serializable] + class MaskingSettings + { + public const string k_EnabledPath = "m_MaskingEnabled"; + public const string k_UnmaskedViewsPath = "m_UnmaskedViews"; + + public bool enabled { get { return m_MaskingEnabled; } set { m_MaskingEnabled = value; } } + [SerializeField, FormerlySerializedAs("m_Enabled")] + private bool m_MaskingEnabled; + + public IEnumerable unmaskedViews { get { return m_UnmaskedViews; } } + [SerializeField] + private List m_UnmaskedViews = new List(); + + public void SetUnmaskedViews(IEnumerable unmaskedViews) + { + m_UnmaskedViews.Clear(); + if (unmaskedViews != null) + m_UnmaskedViews.AddRange(unmaskedViews); + } + } +} diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/Editor/Masking/MaskingSettings.cs.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/Editor/Masking/MaskingSettings.cs.meta" new file mode 100644 index 00000000..38ec5f89 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/Editor/Masking/MaskingSettings.cs.meta" @@ -0,0 +1,12 @@ +fileFormatVersion: 2 +guid: 5f628d9f3b2d046ac9b0e1ff2c354e43 +timeCreated: 1493977326 +licenseType: Pro +MonoImporter: + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/Editor/Masking/UnmaskedView.cs" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/Editor/Masking/UnmaskedView.cs" new file mode 100644 index 00000000..de408d63 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/Editor/Masking/UnmaskedView.cs" @@ -0,0 +1,536 @@ +using System; +using System.Collections.Generic; +using System.Linq; +using UnityEditor; +using UnityEngine; + +namespace Unity.InteractiveTutorials +{ + internal enum MaskType + { + FullyUnmasked = 0, + BlockInteractions + } + + internal enum MaskSizeModifier + { + NoModifications = 0, + ExpandWidthToWholeWindow + } + + internal struct MaskViewData + { + internal MaskType maskType; + internal List rects; + internal MaskSizeModifier maskSizeModifier; + + internal static MaskViewData CreateEmpty(MaskType type) + { + return new MaskViewData() + { + maskType = type, + rects = null, + }; + } + } + + [Serializable] + public class UnmaskedView + { + static Stack s_EditorWindowsToShow = new Stack(); + + static UnmaskedView() + { + EditorApplication.update += OnEditorUpdate; + } + + static void OnEditorUpdate() + { + while (s_EditorWindowsToShow.Any()) + { + var window = s_EditorWindowsToShow.Pop(); + if (window != null) + window.Show(); + } + } + + public class MaskData : ICloneable + { + internal Dictionary m_MaskData; + + public MaskData() : this(null) {} + + public int Count { get { return m_MaskData.Count; } } + + internal MaskData(Dictionary maskData) + { + m_MaskData = maskData ?? new Dictionary(); + } + + public void AddParentFullyUnmasked(EditorWindow window) + { + m_MaskData[window.GetParent()] = MaskViewData.CreateEmpty(MaskType.FullyUnmasked); + } + + public void RemoveParent(EditorWindow window) + { + m_MaskData.Remove(window.GetParent()); + } + + public void AddTooltipViews() + { + var allViews = new List(); + GUIViewDebuggerHelperProxy.GetViews(allViews); + + foreach (var tooltipView in allViews.Where(v => v.IsGUIViewAssignableTo(GUIViewProxy.tooltipViewType))) + m_MaskData[tooltipView] = MaskViewData.CreateEmpty(MaskType.FullyUnmasked); + } + + public void RemoveTooltipViews() + { + foreach (var view in m_MaskData.Keys.ToArray()) + { + if (view.IsGUIViewAssignableTo(GUIViewProxy.tooltipViewType)) + m_MaskData.Remove(view); + } + } + + public object Clone() + { + return new MaskData(m_MaskData.ToDictionary(kv => kv.Key, kv => kv.Value)); + } + } + + public static MaskData GetViewsAndRects(IEnumerable unmaskedViews) + { + bool foundAncestorProperty; + return GetViewsAndRects(unmaskedViews, out foundAncestorProperty); + } + + public static MaskData GetViewsAndRects(IEnumerable unmaskedViews, out bool foundAncestorProperty) + { + foundAncestorProperty = false; + + var allViews = new List(); + GUIViewDebuggerHelperProxy.GetViews(allViews); + + // initialize result + var result = new Dictionary(); + var unmaskedControls = new Dictionary>(); + var viewsWithWindows = new Dictionary>(); + foreach (var unmaskedView in unmaskedViews) + { + foreach (var view in GetMatchingViews(unmaskedView, allViews, viewsWithWindows)) + { + MaskViewData maskViewData; + if (!result.TryGetValue(view, out maskViewData)) + { + result[view] = new MaskViewData() { rects = new List(8), maskType = unmaskedView.m_MaskType, maskSizeModifier = unmaskedView.m_MaskSizeModifier}; + } + + List controls; + if (!unmaskedControls.TryGetValue(view, out controls)) + unmaskedControls[view] = controls = new List(); + + controls.AddRange(unmaskedView.m_UnmaskedControls); + } + } + + // validate input + foreach (var viewWithWindow in viewsWithWindows) + { + if (viewWithWindow.Value.Count > 1) + { + throw new ArgumentException( + string.Format( + "Tried to get controls from multiple EditorWindows docked in the same location: {0}", + string.Join(", ", viewWithWindow.Value.Select(w => w.GetType().Name).ToArray()) + ), + "unmaskedViews" + ); + } + } + + // populate result + var drawInstructions = new List(32); + var namedControlInstructions = new List(32); + var propertyInstructions = new List(32); + foreach (var viewRects in result) + { + // prevents null exception when repainting in case e.g., user has accidentally maximized view + if (!viewRects.Key.isWindowAndRootViewValid) + continue; + + var unmaskedControlSelectors = unmaskedControls[viewRects.Key]; + if (unmaskedControlSelectors.Count == 0) + continue; + + // if the view refers to an InspectorWindow, flush the optimized GUI blocks so that Editor control rects will be updated + HashSet windows; + if (viewsWithWindows.TryGetValue(viewRects.Key, out windows) && windows.Count > 0) + InspectorWindowProxy.DirtyAllEditors(windows.First()); + + // TODO: use actual selectors when API is in place + GUIViewDebuggerHelperProxy.DebugWindow(viewRects.Key); + + viewRects.Key.RepaintImmediately(); + + GUIViewDebuggerHelperProxy.GetDrawInstructions(drawInstructions); + GUIViewDebuggerHelperProxy.GetNamedControlInstructions(namedControlInstructions); + GUIViewDebuggerHelperProxy.GetPropertyInstructions(propertyInstructions); + + foreach (var controlSelector in unmaskedControls[viewRects.Key]) + { + Rect regionRect = Rect.zero; + bool regionFound = false; + switch (controlSelector.selectorMode) + { + case GUIControlSelector.Mode.GUIContent: + var selectorContent = controlSelector.guiContent; + foreach (var instruction in drawInstructions) + { + if (AreEquivalent(instruction.usedGUIContent, selectorContent)) + { + regionFound = true; + regionRect = instruction.rect; + } + } + break; + case GUIControlSelector.Mode.GUIStyleName: + foreach (var instruction in drawInstructions) + { + if (instruction.usedGUIStyleName == controlSelector.guiStyleName) + { + regionFound = true; + regionRect = instruction.rect; + } + } + break; + case GUIControlSelector.Mode.NamedControl: + foreach (var instruction in namedControlInstructions) + { + if (instruction.name == controlSelector.controlName) + { + regionFound = true; + regionRect = instruction.rect; + } + } + break; + case GUIControlSelector.Mode.Property: + if (controlSelector.targetType == null) + continue; + var targetTypeName = controlSelector.targetType.AssemblyQualifiedName; + foreach (var instruction in propertyInstructions) + { + if ( + instruction.targetTypeName == targetTypeName && + instruction.path == controlSelector.propertyPath + ) + { + regionFound = true; + regionRect = instruction.rect; + } + } + + if (!regionFound) + { + // Property instruction not found + // Let's see if we can find any of the ancestor instructions to allow the user to unfold + regionFound = FindAncestorPropertyRegion(controlSelector.propertyPath, targetTypeName, + drawInstructions, propertyInstructions, + ref regionRect); + foundAncestorProperty = regionFound; + } + break; + default: + Debug.LogErrorFormat( + "No method currently implemented for selecting using specified mode: {0}", + controlSelector.selectorMode + ); + break; + } + + if (regionFound) + { + if (viewRects.Value.maskSizeModifier == MaskSizeModifier.ExpandWidthToWholeWindow) + { + const int padding = 5; + regionRect.x = padding; + regionRect.width = viewRects.Key.position.width - padding *2; + } + viewRects.Value.rects.Add(regionRect); + } + + } + + GUIViewDebuggerHelperProxy.StopDebugging(); + } + + return new MaskData(result); + } + + static bool FindAncestorPropertyRegion(string propertyPath, string targetTypeName, + List drawInstructions, List propertyInstructions, + ref Rect regionRect) + { + while (true) + { + // Remove last component of property path + var lastIndexOfDelimiter = propertyPath.LastIndexOf("."); + if (lastIndexOfDelimiter < 1) + { + // No components left, give up + return false; + } + propertyPath = propertyPath.Substring(0, lastIndexOfDelimiter); + + foreach (var instruction in propertyInstructions) + { + if (instruction.targetTypeName == targetTypeName && + instruction.path == propertyPath) + { + regionRect = instruction.rect; + + // The property rect itself does not contain the foldout arrow + // Expand region to include all draw instructions for this property + var unifiedInstructions = new List(128); + GUIViewDebuggerHelperProxy.GetUnifiedInstructions(unifiedInstructions); + var collectDrawInstructions = false; + var propertyBeginLevel = 0; + foreach (var unifiedInstruction in unifiedInstructions) + { + if (collectDrawInstructions) + { + if (unifiedInstruction.level <= propertyBeginLevel) + break; + + if (unifiedInstruction.type == InstructionTypeProxy.StyleDraw) + { + var drawRect = drawInstructions[unifiedInstruction.typeInstructionIndex].rect; + if (drawRect.xMin < regionRect.xMin) + regionRect.xMin = drawRect.xMin; + if (drawRect.yMin < regionRect.yMin) + regionRect.yMin = drawRect.yMin; + if (drawRect.xMax > regionRect.xMax) + regionRect.xMax = drawRect.xMax; + if (drawRect.yMax > regionRect.yMax) + regionRect.yMax = drawRect.yMax; + } + } + else + { + if (unifiedInstruction.type == InstructionTypeProxy.PropertyBegin) + { + var propertyInstruction = propertyInstructions[unifiedInstruction.typeInstructionIndex]; + if (propertyInstruction.targetTypeName == targetTypeName + && propertyInstruction.path == propertyPath) + { + collectDrawInstructions = true; + propertyBeginLevel = unifiedInstruction.level; + } + } + } + } + + return true; + } + } + } + } + + private static bool AreEquivalent(GUIContent gc1, GUIContent gc2) + { + return + gc1.image == gc2.image && + (string.IsNullOrEmpty(gc1.text) ? string.IsNullOrEmpty(gc2.text) : gc1.text == gc2.text) && + (string.IsNullOrEmpty(gc1.tooltip) ? string.IsNullOrEmpty(gc2.tooltip) : gc1.tooltip == gc2.tooltip); + } + + private static IEnumerable GetMatchingViews( + UnmaskedView unmaskedView, + List allViews, + Dictionary> viewsWithWindows) + { + var matchingViews = new HashSet(new GUIViewProxyComparer()); + + switch (unmaskedView.m_SelectorType) + { + case SelectorType.EditorWindow: + var targetEditorWindowType = unmaskedView.editorWindowType; + if (targetEditorWindowType == null) + { + throw new ArgumentException( + $"Specified unmasked view does not refer to a known EditorWindow type:\n{JsonUtility.ToJson(unmaskedView, true)}", + "unmaskedView" + ); + } + if (targetEditorWindowType != null) + { + // make sure desired window is in current layout + // TODO: allow trainer to specify desired dock area if window doesn't yet exist? +// var window = EditorWindow.GetWindow(targetEditorWindowType); + var window = Resources.FindObjectsOfTypeAll(targetEditorWindowType).Cast().ToArray().FirstOrDefault(); + if (window == null || window.GetParent() == null) + return matchingViews; + + // Postpone showing window until next editor update + // GetMatchingViews could be called in response to window closing + s_EditorWindowsToShow.Push(window); + + if (!allViews.Contains(window.GetParent())) + allViews.Add(window.GetParent()); + foreach (var view in allViews) + { + if (!view.IsActualViewAssignableTo(targetEditorWindowType)) + continue; + + HashSet windows; + if (!viewsWithWindows.TryGetValue(view, out windows)) + viewsWithWindows[view] = windows = new HashSet(); + windows.Add(window); + + matchingViews.Add(view); + } + } + break; + case SelectorType.GUIView: + var targetViewType = unmaskedView.m_ViewType.type; + if (targetViewType == null) + { + throw new ArgumentException( + $"Specified unmasked view does not refer to a known GUIView type:\n{JsonUtility.ToJson(unmaskedView, true)}", + "unmaskedView" + ); + } + if (targetViewType != null) + { + foreach (var view in allViews) + { + if (view.IsGUIViewAssignableTo(targetViewType)) + matchingViews.Add(view); + } + } + break; + } + + // TODO Not necessarily exception worthy. We are using a "delayed masking" occasionally, e.g. when switching + // to Play mode and we want to unmask Game view which is not yet visible (in the background tab by defaul). + //if (matchingViews.Count == 0) + //{ + // throw new ArgumentException( + // $"Specified unmasked view refers to a view that could not be found:\n{JsonUtility.ToJson(unmaskedView, true)}" + // , "unmaskedView" + // ); + //} + + return matchingViews; + } + + public enum SelectorType + { + GUIView, + EditorWindow, + } + + [SerializeField] + private SelectorType m_SelectorType; + + [SerializedTypeGUIViewFilter] + [SerializeField] + private SerializedType m_ViewType = new SerializedType(null); + + [SerializedTypeFilter(typeof(EditorWindow))] + [SerializeField] + private SerializedType m_EditorWindowType = new SerializedType(null); + + [SerializeField] + EditorWindowTypeCollection m_AlternateEditorWindowTypes = new EditorWindowTypeCollection(); + + Type editorWindowType + { + get + { + // Use main EditorWindow type if it can be resolved + var type = m_EditorWindowType.type; + if (type != null) + return type; + + // Otherwise use first alternate type that resolves + foreach (var editorWindowTypeWrapper in m_AlternateEditorWindowTypes) + { + type = editorWindowTypeWrapper.editorWindowType.type; + if (type != null) + return type; + } + + return null; + } + } + + [SerializeField] + private MaskType m_MaskType = MaskType.FullyUnmasked; + + [SerializeField] + private MaskSizeModifier m_MaskSizeModifier = MaskSizeModifier.NoModifications; + + [SerializeField] + private List m_UnmaskedControls = new List(); + + public int GetUnmaskedControls(List unmaskedControls) + { + unmaskedControls.Clear(); + unmaskedControls.AddRange(m_UnmaskedControls); + return unmaskedControls.Count; + } + + protected UnmaskedView() {} + + internal static UnmaskedView CreateInstanceForGUIView(IList unmaskedControls = null) + { + if (!GUIViewProxy.IsAssignableFrom(typeof(T))) + throw new InvalidOperationException("Type must be assignable to GUIView"); + + UnmaskedView result = new UnmaskedView(); + result.m_SelectorType = SelectorType.GUIView; + result.m_ViewType.type = typeof(T); + if (unmaskedControls != null) + result.m_UnmaskedControls.AddRange(unmaskedControls); + return result; + } + + public static UnmaskedView CreateInstanceForEditorWindow(IList unmaskedControls = null) where T : EditorWindow + { + UnmaskedView result = new UnmaskedView(); + result.m_SelectorType = SelectorType.EditorWindow; + result.m_EditorWindowType.type = typeof(T); + if (unmaskedControls != null) + result.m_UnmaskedControls.AddRange(unmaskedControls); + return result; + } + } + + [Serializable] + class EditorWindowType + { + [SerializeField] + [SerializedTypeFilter(typeof(EditorWindow))] + public SerializedType editorWindowType; + + public EditorWindowType(SerializedType editorWindowType) + { + this.editorWindowType = editorWindowType; + } + } + + [Serializable] + class EditorWindowTypeCollection : CollectionWrapper + { + public EditorWindowTypeCollection() : base() + { + } + + public EditorWindowTypeCollection(IList items) : base(items) + { + } + } +} diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/Editor/Masking/UnmaskedView.cs.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/Editor/Masking/UnmaskedView.cs.meta" new file mode 100644 index 00000000..922aba1e --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/Editor/Masking/UnmaskedView.cs.meta" @@ -0,0 +1,12 @@ +fileFormatVersion: 2 +guid: e45ff501c6e1d4e429f42a1e570b5c5d +timeCreated: 1493904099 +licenseType: Pro +MonoImporter: + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/Editor/Models.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/Editor/Models.meta" new file mode 100644 index 00000000..84ccf061 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/Editor/Models.meta" @@ -0,0 +1,9 @@ +fileFormatVersion: 2 +guid: 41e429e47b5084290ab22667c570a87a +folderAsset: yes +timeCreated: 1490871154 +licenseType: Pro +DefaultImporter: + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/Editor/Models/AutoCompletion.cs" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/Editor/Models/AutoCompletion.cs" new file mode 100644 index 00000000..a2a57e24 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/Editor/Models/AutoCompletion.cs" @@ -0,0 +1,136 @@ +using System; +using UnityEditor; +using UnityEngine; + +namespace Unity.InteractiveTutorials +{ + [Serializable] + class AutoCompletion + { + Tutorial m_Tutorial; + + bool m_Running; + bool m_Continue; + + const double k_TimeoutDuration = 10f; + double m_CompletionDeadline; + + public AutoCompletion(Tutorial tutorial) + { + m_Tutorial = tutorial; + } + + public bool running { get { return m_Running; } } + + public void OnEnable() + { + if (m_Running) + { + if (m_Tutorial.completed) + Stop(); + else + { + EditorApplication.update += OnUpdate; + Criterion.criterionCompleted += OnCriterionCompleted; + } + } + } + + public void OnDisable() + { + if (m_Running) + { + EditorApplication.update -= OnUpdate; + Criterion.criterionCompleted -= OnCriterionCompleted; + } + } + + public void Start() + { + if (m_Running || m_Tutorial.completed) + return; + + m_Running = true; + m_Continue = true; + m_CompletionDeadline = 0f; + + EditorApplication.update += OnUpdate; + Criterion.criterionCompleted += OnCriterionCompleted; + } + + public void Stop() + { + if (!m_Running) + return; + + m_Running = false; + + EditorApplication.update -= OnUpdate; + Criterion.criterionCompleted -= OnCriterionCompleted; + + if (m_Tutorial.completed) + Debug.Log("Tutorial was completed automatically."); + else + Debug.Log("Tutorial was did not complete automatically."); + } + + void OnCriterionCompleted(Criterion completedCriterion) + { + m_Continue = true; + } + + void OnUpdate() + { + if (m_CompletionDeadline != 0f && EditorApplication.timeSinceStartup > m_CompletionDeadline) + { + Debug.LogWarning("Auto completion timed out."); + Stop(); + } + + if (m_Continue) + AutoCompleteNextIncompleteCriterion(); + } + + void AutoCompleteNextIncompleteCriterion() + { + m_Continue = false; + + while (m_Tutorial.TryGoToNextPage()) + { + } + + var nextIncompleteCriterion = GetNextIncompleteCriterion(); + if (nextIncompleteCriterion == null) + { + Stop(); + return; + } + + if (!nextIncompleteCriterion.AutoComplete()) + { + Debug.LogWarning("Unable to complete criterion automatically"); + Stop(); + } + + m_CompletionDeadline = EditorApplication.timeSinceStartup + k_TimeoutDuration; + } + + Criterion GetNextIncompleteCriterion() + { + foreach (var page in m_Tutorial.pages) + { + foreach (var paragraph in page.paragraphs) + { + foreach (var typedCriterion in paragraph.criteria) + { + var criterion = typedCriterion.criterion; + if (!criterion.completed) + return criterion; + } + } + } + + return null; + } + } +} diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/Editor/Models/AutoCompletion.cs.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/Editor/Models/AutoCompletion.cs.meta" new file mode 100644 index 00000000..8ae6a16d --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/Editor/Models/AutoCompletion.cs.meta" @@ -0,0 +1,12 @@ +fileFormatVersion: 2 +guid: 05130f8f018f14056a05e4bd5994334a +timeCreated: 1495190989 +licenseType: Pro +MonoImporter: + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/Editor/Models/InlineIcon.cs" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/Editor/Models/InlineIcon.cs" new file mode 100644 index 00000000..18b7a7c5 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/Editor/Models/InlineIcon.cs" @@ -0,0 +1,43 @@ +using System; +using UnityEditor; +using UnityEngine; +using UnityObject = UnityEngine.Object; + +namespace Unity.InteractiveTutorials +{ + [Serializable] + class InlineIcon + { + [SerializeField] + UnityObject m_Asset = null; + [SerializeField] + string m_IconContentName = null; + [SerializeField] + string m_IconStyleName = null; + + public Texture GetTexture() + { + if (m_Asset == null) + return EditorGUIUtility.IconContent(m_IconContentName).image; + + // use the same logic as in ProjectBrowser; see ObjectListLocalGroup.cs and CachedFilteredHierarchy.cs + var texture = AssetPreview.GetAssetPreview(m_Asset); + if (texture == null) + { + texture = m_Asset is GameObject ? + AssetPreview.GetMiniThumbnail(m_Asset) : + AssetDatabase.GetCachedIcon(AssetDatabase.GetAssetPath(m_Asset)) as Texture2D; + } + return texture; + } + + public GUIStyle GetStyle() + { + return m_Asset == null ? GUIStyle.none : + EditorGUIUtility.GetBuiltinSkin(EditorGUIUtility.isProSkin ? EditorSkin.Scene : EditorSkin.Inspector).FindStyle(m_IconStyleName); + } + } + + [Serializable] + class InlineIconCollection : CollectionWrapper {} +} diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/Editor/Models/InlineIcon.cs.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/Editor/Models/InlineIcon.cs.meta" new file mode 100644 index 00000000..2ba889fe --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/Editor/Models/InlineIcon.cs.meta" @@ -0,0 +1,12 @@ +fileFormatVersion: 2 +guid: fe1c99a9e23aa4c36babba23fd362d2d +timeCreated: 1486299406 +licenseType: Pro +MonoImporter: + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/Editor/Models/SceneViewCameraSettings.cs" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/Editor/Models/SceneViewCameraSettings.cs" new file mode 100644 index 00000000..04067c7f --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/Editor/Models/SceneViewCameraSettings.cs" @@ -0,0 +1,65 @@ +using System; +using UnityEditor; +using UnityEngine; + +namespace Unity.InteractiveTutorials +{ + enum SceneViewCameraMode { SceneView2D, SceneView3D }; + enum SceneViewFocusMode { Manual, FrameObject }; + + [Serializable] + class SceneViewCameraSettings + { + public SceneViewCameraMode cameraMode { get { return m_CameraMode; } } + [SerializeField] + SceneViewCameraMode m_CameraMode = SceneViewCameraMode.SceneView2D; + + public SceneViewFocusMode focusMode { get { return m_FocusMode; } } + [SerializeField] + SceneViewFocusMode m_FocusMode = SceneViewFocusMode.Manual; + + public bool orthographic { get { return m_Orthographic; } } + [SerializeField] + bool m_Orthographic = false; + + public float size { get { return m_Size; } } + [SerializeField] + float m_Size = default; + + public Vector3 pivot { get { return m_Pivot; } } + [SerializeField] + Vector3 m_Pivot = default ; + + public Quaternion rotation { get { return m_Rotation; } } + [SerializeField] + Quaternion m_Rotation = default; + + public SceneObjectReference frameObject { get { return m_FrameObject; } } + [SerializeField] + SceneObjectReference m_FrameObject = null; + + public bool enabled { get { return m_Enabled; } } + [SerializeField] + bool m_Enabled = false; + + public void Apply() + { + var sceneView = EditorWindow.GetWindow(null, false); + sceneView.in2DMode = (cameraMode == SceneViewCameraMode.SceneView2D); + switch (focusMode) + { + case SceneViewFocusMode.FrameObject: + GameObject go = frameObject.ReferencedObjectAsGameObject; + if (go == null) + throw new InvalidOperationException("Error looking up frame object"); + sceneView.Frame(GameObjectProxy.CalculateBounds(go), true); + break; + case SceneViewFocusMode.Manual: + sceneView.LookAt(pivot, rotation, size, orthographic, false); + break; + default: + throw new NotImplementedException(string.Format("Focus mode {0} not supported", focusMode)); + } + } + } +} diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/Editor/Models/SceneViewCameraSettings.cs.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/Editor/Models/SceneViewCameraSettings.cs.meta" new file mode 100644 index 00000000..45e61cd0 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/Editor/Models/SceneViewCameraSettings.cs.meta" @@ -0,0 +1,12 @@ +fileFormatVersion: 2 +guid: efe66fe152dcc4fa68d6fe5563a1cf7c +timeCreated: 1484908280 +licenseType: Pro +MonoImporter: + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/Editor/Models/Tutorial.cs" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/Editor/Models/Tutorial.cs" new file mode 100644 index 00000000..8fd8ed04 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/Editor/Models/Tutorial.cs" @@ -0,0 +1,266 @@ +using System; +using System.Collections.Generic; +using UnityEditor; +using UnityEditor.SceneManagement; +using UnityEngine; +using UnityEngine.Serialization; + +using UnityObject = UnityEngine.Object; + +namespace Unity.InteractiveTutorials +{ + class Tutorial : ScriptableObject + { + [Serializable] + public class TutorialPageCollection : CollectionWrapper + { + public TutorialPageCollection() : base() + { + } + + public TutorialPageCollection(IList items) : base(items) + { + } + } + + public static event Action tutorialPagesModified; + + public string tutorialTitle { get { return m_TutorialTitle; } } + [Header("Content")] + [SerializeField] + string m_TutorialTitle = ""; + + public string lessonId { get { return m_LessonId; } } + [SerializeField] + string m_LessonId = ""; + + public string version { get { return m_Version; } } + [SerializeField] + string m_Version = "0"; + + [Header("Scene Data")] + [SerializeField] + UnityEditor.SceneAsset m_Scene = null; + [SerializeField] + SceneViewCameraSettings m_DefaultSceneCameraSettings = null; + + public enum ExitBehavior + { + ShowHomeWindow, + CloseWindow, + } + + public ExitBehavior exitBehavior { get { return m_ExitBehavior; } } + [Header("Exit Behavior")] + [SerializeField] + ExitBehavior m_ExitBehavior = ExitBehavior.ShowHomeWindow; + + public enum SkipTutorialBehavior + { + SameAsExitBehavior, + SkipToLastPage, + } + + public SkipTutorialBehavior skipTutorialBehavior { get { return m_SkipTutorialBehavior; } } + [SerializeField] + SkipTutorialBehavior m_SkipTutorialBehavior = SkipTutorialBehavior.SameAsExitBehavior; + + public UnityEngine.Object assetSelectedOnExit { get { return m_AssetSelectedOnExit; } } + [SerializeField] + UnityEngine.Object m_AssetSelectedOnExit = null; + + public TutorialWelcomePage welcomePage { get { return m_WelcomePage; } } + [Header("Pages"), SerializeField] + private TutorialWelcomePage m_WelcomePage = null; + [SerializeField] + public TutorialWelcomePage completedPage { get { return m_CompletedPage; } } + [SerializeField] + private TutorialWelcomePage m_CompletedPage = null; + + // TODO Handle these states in a better fashion instead of boolean farming + // e.g. typeof(currentPage) == WelcomePage + [SerializeField] + internal bool IsWelcomingPageShowing = true; + [SerializeField] + internal bool IsCompletedPageShowing = false; + + AutoCompletion m_AutoCompletion; + + public bool skipped { get { return m_Skipped; } } + bool m_Skipped; + + public event Action tutorialInitiated; + public event Action pageInitiated; + public event Action goingBack; + public event Action tutorialCompleted; + + public Tutorial() + { + m_AutoCompletion = new AutoCompletion(this); + } + + void OnEnable() + { + m_AutoCompletion.OnEnable(); + } + + void OnDisable() + { + m_AutoCompletion.OnDisable(); + } + + [SerializeField, FormerlySerializedAs("m_Steps")] + internal TutorialPageCollection m_Pages = new TutorialPageCollection(); + + public IEnumerable pages { get { return m_Pages; } } + + public int currentPageIndex { get { return m_CurrentPageIndex; } } + int m_CurrentPageIndex = 0; + + public TutorialPage currentPage + { + get + { + return m_Pages.count == 0 + ? null + : m_Pages[m_CurrentPageIndex = Mathf.Min(m_CurrentPageIndex, m_Pages.count - 1)]; + } + } + + public int pageCount { get { return m_Pages.count; } } + + public bool completed { get { return pageCount == 0 || (currentPageIndex == pageCount - 1 && currentPage != null && currentPage.allCriteriaAreSatisfied); } } + + [SerializeField, Tooltip("Saved layouts can be found in the following directories:\n" + + "Windows: %APPDATA%/Unity//Preferences/Layouts\n" + + "macOS: ~/Library/Preferences/Unity//Layouts\n" + + "Linux: ~/.config/Preferences/Unity//Layouts")] + UnityObject m_WindowLayout = null; + + internal string windowLayoutPath => AssetDatabase.GetAssetPath(m_WindowLayout); + + public bool isAutoCompleting { get { return m_AutoCompletion.running; } } + + public void StartAutoCompletion() + { + m_AutoCompletion.Start(); + } + + public void StopAutoCompletion() + { + m_AutoCompletion.Stop(); + } + + public void StopTutorial() + { + if (currentPage != null) + currentPage.RemoveCompletionRequirements(); + } + + public void GoToPreviousPage() + { + if (m_CurrentPageIndex == 0 && !IsWelcomingPageShowing) + { + IsWelcomingPageShowing = true; + return; + } + OnGoingBack(currentPage); + m_CurrentPageIndex = Mathf.Max(0, m_CurrentPageIndex - 1); + OnPageInitiated(currentPage, m_CurrentPageIndex); + } + + public bool TryGoToNextPage() + { + if (!currentPage.allCriteriaAreSatisfied && !currentPage.hasMovedToNextPage) + return false; + if (m_Pages.count == m_CurrentPageIndex + 1) + { + OnTutorialCompleted(); + IsCompletedPageShowing = true; + return false; + } + int newIndex = Mathf.Min(m_Pages.count - 1, m_CurrentPageIndex + 1); + if (newIndex != m_CurrentPageIndex) + { + if (currentPage != null) + currentPage.OnPageCompleted(); + m_CurrentPageIndex = newIndex; + OnPageInitiated(currentPage, m_CurrentPageIndex); + return true; + } + return false; + } + + public void RaiseTutorialPagesModified() + { + tutorialPagesModified?.Invoke(this); + } + + void LoadScene() + { + // load scene + if (m_Scene != null) + EditorSceneManager.OpenScene(AssetDatabase.GetAssetPath(m_Scene)); + else + EditorSceneManager.NewScene(NewSceneSetup.DefaultGameObjects); + + // move scene view camera into place + if (m_DefaultSceneCameraSettings != null && m_DefaultSceneCameraSettings.enabled) + m_DefaultSceneCameraSettings.Apply(); + OnTutorialInitiated(); + if (pageCount > 0) + OnPageInitiated(currentPage, m_CurrentPageIndex); + } + + internal void LoadWindowLayout() + { + if (m_WindowLayout == null) + return; + + var layoutPath = AssetDatabase.GetAssetPath(m_WindowLayout); + TutorialManager.LoadWindowLayout(layoutPath); + } + + internal void ResetProgress() + { + foreach (var page in m_Pages) + { + page?.ResetUserProgress(); + } + m_CurrentPageIndex = 0; + IsWelcomingPageShowing = true; + IsCompletedPageShowing = false; + m_Skipped = false; + LoadScene(); + } + + protected virtual void OnTutorialInitiated() + { + tutorialInitiated?.Invoke(); + } + + protected virtual void OnTutorialCompleted() + { + tutorialCompleted?.Invoke(); + } + + protected virtual void OnPageInitiated(TutorialPage page, int index) + { + page?.Initiate(); + pageInitiated?.Invoke(page, index); + } + + protected virtual void OnGoingBack(TutorialPage page) + { + page?.RemoveCompletionRequirements(); + goingBack?.Invoke(page); + } + + public void SkipToLastPage() + { + m_Skipped = true; + m_CurrentPageIndex = pageCount - 1; + OnPageInitiated(currentPage, m_CurrentPageIndex); + } + } +} diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/Editor/Models/Tutorial.cs.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/Editor/Models/Tutorial.cs.meta" new file mode 100644 index 00000000..6d4ea9b5 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/Editor/Models/Tutorial.cs.meta" @@ -0,0 +1,14 @@ +fileFormatVersion: 2 +guid: 8f107dc6d4c984c45bdafd3bb15f98f0 +timeCreated: 1486325683 +licenseType: Pro +MonoImporter: + serializedVersion: 2 + defaultReferences: + - m_Scene: {instanceID: 0} + - m_Skin: {fileID: 11400000, guid: e9c45368bc94c4eb6a1c831241fa9db6, type: 2} + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/Editor/Models/TutorialPage.cs" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/Editor/Models/TutorialPage.cs" new file mode 100644 index 00000000..9e273335 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/Editor/Models/TutorialPage.cs" @@ -0,0 +1,360 @@ +using System; +using System.Collections.Generic; +using System.Linq; +using System.Reflection; +using UnityEditor; +using UnityEngine; +using UnityObject = UnityEngine.Object; + +namespace Unity.InteractiveTutorials +{ + enum PlayModeState + { + Any, + Playing, + NotPlaying + } + + class TutorialPage : ScriptableObject + { + public static event Action criteriaCompletionStateTested; + public static event Action tutorialPageMaskingSettingsChanged; + public static event Action tutorialPageNonMaskingSettingsChanged; + + internal event Action playedCompletionSound; + + public bool hasMovedToNextPage { get { return m_HasMovedToNextPage; } } + private bool m_HasMovedToNextPage; + + public bool allCriteriaAreSatisfied { get; private set; } + + [Obsolete] + public string sectionTitle { get { return m_SectionTitle; } } + [Header("Content")] + [SerializeField] + string m_SectionTitle = ""; + public IEnumerable paragraphs { get { return m_Paragraphs; } } + [SerializeField] + internal TutorialParagraphCollection m_Paragraphs = new TutorialParagraphCollection(); + + public MaskingSettings currentMaskingSettings + { + get + { + MaskingSettings result = null; + for (int i = 0, count = m_Paragraphs.count; i < count; ++i) + { + result = m_Paragraphs[i].maskingSettings; + if (!m_Paragraphs[i].completed) + break; + } + return result; + } + } + + [Header("Initial Camera Settings")] + [SerializeField] + SceneViewCameraSettings m_CameraSettings = new SceneViewCameraSettings(); + + [Header("Button Labels")] + [SerializeField] + string m_NextButton = "Next"; + public string nextButton + { + get { return m_NextButton; } + set + { + if (m_NextButton != value) + { + m_NextButton = value; + RaiseTutorialPageNonMaskingSettingsChangedEvent(); + } + } + } + [SerializeField] + string m_DoneButton = "Done"; + public string doneButton + { + get { return m_DoneButton; } + set + { + if (m_DoneButton != value) + { + m_DoneButton = value; + RaiseTutorialPageNonMaskingSettingsChangedEvent(); + } + } + } + + public string guid + { + get + { + return AssetDatabase.AssetPathToGUID(AssetDatabase.GetAssetPath(this)); + } + } + + [Header("Sounds")] + [SerializeField] + AudioClip m_CompletedSound = null; + + public bool autoAdvanceOnComplete { get { return m_autoAdvance; } set { m_autoAdvance = value; }} + [Header("Auto advance on complete?")] + [SerializeField] + bool m_autoAdvance; + + public void RaiseTutorialPageMaskingSettingsChangedEvent() + { + if (tutorialPageMaskingSettingsChanged != null) + tutorialPageMaskingSettingsChanged(this); + } + + public void RaiseTutorialPageNonMaskingSettingsChangedEvent() + { + if (tutorialPageNonMaskingSettingsChanged != null) + tutorialPageNonMaskingSettingsChanged(this); + } + + static Queue> s_DeferedValidationQueue = new Queue>(); + + static TutorialPage() + { + EditorApplication.update += OnEditorUpdate; + } + + static void OnEditorUpdate() + { + while (s_DeferedValidationQueue.Count != 0) + { + var weakPageReference = s_DeferedValidationQueue.Dequeue(); + TutorialPage page; + if (weakPageReference.TryGetTarget(out page)) + { + if (page != null) //Taking into account "unity null" + { + page.SyncCriteriaAndFutureReferences(); + } + } + } + } + + void OnValidate() + { + // Defer synchronization of sub-assets to next editor update due to AssetDatabase interactions + + // Retaining a reference to this instance in OnValidate/OnEnable can cause issues on project load + // The same object might be imported more than once and if it's referenced it won't be unloaded correctly + // Use WeakReference instead of subscribing directly to EditorApplication.update to avoid strong reference + + s_DeferedValidationQueue.Enqueue(new WeakReference(this)); + } + + void SyncCriteriaAndFutureReferences() + { + // Find instanceIDs of referenced criteria + var referencedCriteriaInstanceIDs = new HashSet(); + foreach (var paragraph in paragraphs) + { + foreach (var typedCriterion in paragraph.criteria) + { + if (typedCriterion.criterion != null) + referencedCriteriaInstanceIDs.Add(typedCriterion.criterion.GetInstanceID()); + } + } + + // Destroy unreferenced criteria + var assetPath = AssetDatabase.GetAssetPath(this); + var assets = AssetDatabase.LoadAllAssetsAtPath(assetPath); + var criteria = assets.Where(o => o is Criterion).Cast(); + foreach (var criterion in criteria) + { + if (!referencedCriteriaInstanceIDs.Contains(criterion.GetInstanceID())) + DestroyImmediate(criterion, true); + } + + // Update future reference names + var futureReferences = assets.Where(o => o is FutureObjectReference).Cast(); + foreach (var futureReference in futureReferences) + { + if (futureReference.criterion == null + || !referencedCriteriaInstanceIDs.Contains(futureReference.criterion.GetInstanceID())) + { + // Destroy future reference from unrefereced criteria + DestroyImmediate(futureReference, true); + } + else + UpdateFutureObjectReferenceName(futureReference); + } + } + + public void UpdateFutureObjectReferenceName(FutureObjectReference futureReference) + { + int paragraphIndex; + int criterionIndex; + if (GetIndicesForCriterion(futureReference.criterion, out paragraphIndex, out criterionIndex)) + { + futureReference.name = string.Format("Paragraph {0}, Criterion {1}, {2}", + paragraphIndex + 1, criterionIndex + 1, futureReference.referenceName); + } + } + + bool GetIndicesForCriterion(Criterion criterion, out int paragraphIndex, out int criterionIndex) + { + paragraphIndex = 0; + criterionIndex = 0; + + foreach (var paragraph in paragraphs) + { + foreach (var typedCriterion in paragraph.criteria) + { + if (typedCriterion.criterion == criterion) + return true; + + criterionIndex++; + } + + paragraphIndex++; + } + + return false; + } + + internal void Initiate() + { + SetupCompletionRequirements(); + if (m_CameraSettings != null && m_CameraSettings.enabled) + m_CameraSettings.Apply(); + } + + public void ResetUserProgress() + { + RemoveCompletionRequirements(); + foreach (var paragraph in paragraphs) + { + if (paragraph.type == ParagraphType.Instruction) + { + foreach (var criteria in paragraph.criteria) + { + if (criteria != null && criteria.criterion != null) + { + criteria.criterion.ResetCompletionState(); + criteria.criterion.StopTesting(); + } + } + } + } + allCriteriaAreSatisfied = false; + m_HasMovedToNextPage = false; + } + + internal void SetupCompletionRequirements() + { + ValidateCriteria(); + if (hasMovedToNextPage) + return; + + Criterion.criterionCompleted += OnCriterionCompleted; + Criterion.criterionInvalidated += OnCriterionInvalidated; + + foreach (var paragraph in paragraphs) + { + if (paragraph.criteria != null) + { + foreach (var criterion in paragraph.criteria) + { + if (criterion.criterion) + criterion.criterion.StartTesting(); + } + } + } + } + + internal void RemoveCompletionRequirements() + { + Criterion.criterionCompleted -= OnCriterionCompleted; + Criterion.criterionInvalidated -= OnCriterionInvalidated; + + foreach (var paragraph in paragraphs) + { + if (paragraph.criteria != null) + { + foreach (var criterion in paragraph.criteria) + { + if (criterion.criterion) + { + criterion.criterion.StopTesting(); + } + } + } + } + } + + void OnCriterionCompleted(Criterion sender) + { + if (!m_Paragraphs.Any(p => p.criteria.Any(c => c.criterion == sender))) + return; + + if (sender.completed) + { + int paragraphIndex, criterionIndex; + if (GetIndicesForCriterion(sender, out paragraphIndex, out criterionIndex)) + { + // only play sound effect and clear undo if all preceding criteria are already complete + var playSoundEffect = true; + for (int i = 0; i < paragraphIndex; ++i) + { + if (!m_Paragraphs[i].criteria.All(c => c.criterion.completed)) + { + playSoundEffect = false; + break; + } + } + if (playSoundEffect) + { + Undo.ClearAll(); + if (m_CompletedSound != null) + AudioUtilProxy.PlayClip(m_CompletedSound); + if (playedCompletionSound != null) + playedCompletionSound(this); + } + } + } + ValidateCriteria(); + } + + void OnCriterionInvalidated(Criterion sender) + { + if (m_Paragraphs.Any(p => p.criteria.Any(c => c.criterion == sender))) + ValidateCriteria(); + } + + internal void ValidateCriteria() + { + allCriteriaAreSatisfied = true; + + foreach (var paragraph in paragraphs) + { + if (paragraph.type == ParagraphType.Instruction) + { + if (!paragraph.completed) + { + allCriteriaAreSatisfied = false; + break; + } + } + + if (!allCriteriaAreSatisfied) + break; + } + + if (criteriaCompletionStateTested != null) + criteriaCompletionStateTested(this); + } + + public void OnPageCompleted() + { + RemoveCompletionRequirements(); + m_HasMovedToNextPage = true; + } + } +} diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/Editor/Models/TutorialPage.cs.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/Editor/Models/TutorialPage.cs.meta" new file mode 100644 index 00000000..fc2664ee --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/Editor/Models/TutorialPage.cs.meta" @@ -0,0 +1,13 @@ +fileFormatVersion: 2 +guid: ff771ccdf4150419d9ff4d342b069aae +timeCreated: 1486325832 +licenseType: Pro +MonoImporter: + serializedVersion: 2 + defaultReferences: + - m_CompletedSound: {fileID: 8300000, guid: 93fbb109633e844259ea828442bda0cb, type: 3} + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/Editor/Models/TutorialParagraph.cs" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/Editor/Models/TutorialParagraph.cs" new file mode 100644 index 00000000..ed2cd1a8 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/Editor/Models/TutorialParagraph.cs" @@ -0,0 +1,129 @@ +using System; +using System.Collections.Generic; +using UnityEditor; +using UnityEditor.AnimatedValues; +using UnityEngine; +using UnityEngine.Video; + +namespace Unity.InteractiveTutorials +{ + enum ParagraphType + { + Narrative, + Instruction, + SwitchTutorial, + UnorderedList, + OrderedList, + Icons, + Image, + Video, + } + + enum CompletionType + { + CompletedWhenAllAreTrue, + CompletedWhenAnyIsTrue + } + + [Serializable] + class TutorialParagraph + { + public ParagraphType type { get { return m_Type; } } + [SerializeField] + internal ParagraphType m_Type; + + public string summary { get { return m_Summary; } set { m_Summary = value; } } + [SerializeField, TextArea(1, 1)] + string m_Summary = ""; + + public string text { get { return m_Text; } set { m_Text = value; } } + [SerializeField, TextArea(1, 15)] + string m_Text = ""; + + [SerializeField] + internal string m_TutorialButtonText = ""; + [SerializeField] + internal Tutorial m_Tutorial; + + public IEnumerable icons + { + get + { + m_Icons.GetItems(m_IconBuffer); + return m_IconBuffer; + } + } + [SerializeField] + InlineIconCollection m_Icons = new InlineIconCollection(); + readonly List m_IconBuffer = new List(); + + public Texture2D image { get { return m_Image; } } + [SerializeField] + Texture2D m_Image = null; + + public VideoClip video { get { return m_Video; } } + [SerializeField] + VideoClip m_Video = null; + + [SerializeField] + internal CompletionType m_CriteriaCompletion = CompletionType.CompletedWhenAllAreTrue; + + [SerializeField] internal TypedCriterionCollection m_Criteria = new TypedCriterionCollection(); + readonly List m_CriteriaBuffer = new List(); + + public IEnumerable criteria + { + get + { + m_Criteria.GetItems(m_CriteriaBuffer); + return m_CriteriaBuffer.ToArray(); + } + } + + public MaskingSettings maskingSettings { get { return m_MaskingSettings; } } + [SerializeField] + MaskingSettings m_MaskingSettings = new MaskingSettings(); + + public bool completed + { + get + { + bool allMandatory = m_CriteriaCompletion == CompletionType.CompletedWhenAllAreTrue; + bool result = allMandatory; + + foreach (var typedCriterion in m_Criteria) + { + var criterion = typedCriterion.criterion; + if (criterion != null) + { + if (!allMandatory && criterion.completed) + { + result = true; + break; + } + + if (allMandatory && !criterion.completed) + { + result = false; + break; + } + } + } + + return result; + } + } + } + + [Serializable] + class TutorialParagraphCollection : CollectionWrapper + { + public TutorialParagraphCollection() : base() + { + } + + public TutorialParagraphCollection(IList items) : base(items) + { + } + } +} diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/Editor/Models/TutorialParagraph.cs.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/Editor/Models/TutorialParagraph.cs.meta" new file mode 100644 index 00000000..a3cdd555 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/Editor/Models/TutorialParagraph.cs.meta" @@ -0,0 +1,12 @@ +fileFormatVersion: 2 +guid: 3ea2807fc368d4863aa956d7385446ef +timeCreated: 1484899905 +licenseType: Pro +MonoImporter: + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/Editor/Models/TutorialProjectSettings.cs" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/Editor/Models/TutorialProjectSettings.cs" new file mode 100644 index 00000000..401d875f --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/Editor/Models/TutorialProjectSettings.cs" @@ -0,0 +1,92 @@ +using UnityEditor; +using UnityEngine; + +namespace Unity.InteractiveTutorials +{ + class TutorialProjectSettings : ScriptableObject + { + static TutorialProjectSettings s_Instance; + public static TutorialProjectSettings instance + { + get + { + if (s_Instance == null) + { + var assetGUIDs = AssetDatabase.FindAssets($"t:{typeof(TutorialProjectSettings).FullName}"); + if (assetGUIDs.Length == 0) + s_Instance = CreateInstance(); + else + { + var assetPath = AssetDatabase.GUIDToAssetPath(assetGUIDs[0]); + + if (assetGUIDs.Length > 1) + Debug.LogWarningFormat("There is more than one TutorialProjectSetting asset in project.\n" + + "Using asset at path: {0}", assetPath); + + s_Instance = AssetDatabase.LoadAssetAtPath(assetPath); + } + } + + return s_Instance; + } + } + + public static void ReloadInstance() + { + s_Instance = null; + } + + [SerializeField] + [Tooltip("Initial scene that is loaded when the project is started for the first time.")] + SceneAsset m_InitialScene = null; + public SceneAsset initialScene => m_InitialScene; + + [SerializeField] + bool m_RestoreDefaultAssetsOnTutorialReload = true; + public bool restoreDefaultAssetsOnTutorialReload { get { return m_RestoreDefaultAssetsOnTutorialReload; } } + + [SerializeField] + [Tooltip("If enabled, disregard startup tutorial and start the first tutorial found in the project")] + bool m_UseLegacyStartupBehavior = true; + + [SerializeField] + Tutorial m_StartupTutorial = null; + + public Tutorial startupTutorial + { + get + { + if (m_UseLegacyStartupBehavior) + { + var guids = AssetDatabase.FindAssets($"t:{typeof(Tutorial).FullName}"); + if (guids.Length > 0) + { + var assetPath = AssetDatabase.GUIDToAssetPath(guids[0]); + return AssetDatabase.LoadAssetAtPath(assetPath); + } + + return null; + } + + return m_StartupTutorial; + } + } + + [SerializeField] + TutorialStyles m_TutorialStyle; + public TutorialStyles TutorialStyle + { + get + { + if(!m_TutorialStyle) + { + // TODO IET unit test the the file exist. + m_TutorialStyle = AssetDatabase.LoadAssetAtPath( + "Packages/com.unity.learn.iet-framework/Framework/Interactive Tutorials/GUI/Tutorial Styles.asset" + ); + } + return m_TutorialStyle; + } + } + } +} diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/Editor/Models/TutorialProjectSettings.cs.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/Editor/Models/TutorialProjectSettings.cs.meta" new file mode 100644 index 00000000..c1cb89a0 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/Editor/Models/TutorialProjectSettings.cs.meta" @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 579f019eb5d26450982c6ae506c6c3ff +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/Editor/Models/TutorialStyles.cs" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/Editor/Models/TutorialStyles.cs" new file mode 100644 index 00000000..5196e467 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/Editor/Models/TutorialStyles.cs" @@ -0,0 +1,226 @@ +using UnityEditor; +using UnityEngine; + +namespace Unity.InteractiveTutorials +{ + class AllTutorialStyles + { + // TODO Use this + //static void FindStyle(string name, ref GUIStyle style) + //{ + // style = GUI.skin.FindStyle(name); + // Debug.Assert(style != null, $"Syle '{name} not found."); + //} + + static AllTutorialStyles() + { + headerLabel = GUI.skin.FindStyle(s_HeaderStyleName); + instructionLabel = GUI.skin.FindStyle(s_InstructionLabelStyleName); + line = GUI.skin.FindStyle(s_LineStyleName); + listPrefix = GUI.skin.FindStyle(s_ListPrefixStyleName); + list = GUI.skin.FindStyle(s_ListStyleName); + progressLabel = GUI.skin.FindStyle(s_ProgressLabelStyle); + sectionTitleLabel = GUI.skin.FindStyle(s_SectionTitleLabelStyle); + theInBetweenText = GUI.skin.FindStyle(s_TheInBetweenTextStyle); + narrativeStyle = GUI.skin.FindStyle(s_Narrative); + switchTutorialStyle = GUI.skin.FindStyle(s_SwitchTutorialStyleName); + imageStyle = GUI.skin.FindStyle(s_ImageStyle); + videoStyle = GUI.skin.FindStyle(s_VideoStyle); + + sectionTitleBackground = GUI.skin.FindStyle(s_SectionTitleBackground); + topBarBackground = GUI.skin.FindStyle(s_TopBarBackground); + headerBGStyle = GUI.skin.FindStyle(s_HeaderStyleBG); + listBGStyle = GUI.skin.FindStyle(s_ListBG); + theInBetweenTextNotActiveOrCompleted = GUI.skin.FindStyle(s_TheInBetweenTextStyleNotActiveOrCompleted); + completedElementBackground = GUI.skin.FindStyle(s_CompletedElementBackgroundStyle); + activeElementBackground = GUI.skin.FindStyle(s_ActiveElementBackgroundStyle); + inActiveElementBackground = GUI.skin.FindStyle(s_InActiveElementBackgroundStyle); + darkBackground = GUI.skin.FindStyle(s_DarkBackground); + bgTheInBetweenText = GUI.skin.FindStyle(s_BGTheInBetweenText); + background = GUI.skin.FindStyle(s_Background); + + footer = GUI.skin.FindStyle(s_Footer); + paginationLabel = GUI.skin.FindStyle(s_PaginationLabel); + nextButton = GUI.skin.FindStyle(s_NextButton); + nextButtonDisabled = GUI.skin.FindStyle(s_NextButtonDisabled); + backButton = GUI.skin.FindStyle(s_BackButton); + backButtonDisabled = GUI.skin.FindStyle(s_BackButtonDisabled); + progressBar = GUI.skin.FindStyle(s_ProgressBar); + + //iconButtonBack = GUI.skin.FindStyle(s_IconButtonBack); + iconButtonReset = GUI.skin.FindStyle(s_IconButtonReset); + iconButtonHome = GUI.skin.FindStyle(s_IconButtonHome); + iconButtonClose = GUI.skin.FindStyle(s_IconButtonClose); + instructionLabelIconCompleted = GUI.skin.FindStyle(s_InstructionLabelIconStyleCompleted); + instructionLabelIconNotCompleted = GUI.skin.FindStyle(s_InstructionLabelIconStyleNotCompleted); + + tutorialCard = GUI.skin.FindStyle(s_TutorialCard); + linkCard = GUI.skin.FindStyle(s_LinkCard); + + welcomeDialogButton = GUI.skin.FindStyle(s_WelcomeDialogButton); + + tooltip = GUI.skin.FindStyle(s_Tooltip); + } + + private static readonly string s_InstructionLabelStyleName = "Instruction Label"; + private static readonly string s_Narrative = "NarrativeStyle"; + private static readonly string s_SwitchTutorialStyleName = "SwitchTutorialStyle"; + private static readonly string s_ImageStyle = "ImageStyle"; + private static readonly string s_VideoStyle = "VideoStyle"; + private static readonly string s_HeaderStyleName = "Header"; + private static readonly string s_LineStyleName = "Line"; + private static readonly string s_ListStyleName = "List"; + private static readonly string s_ListPrefixStyleName = "ListPrefix"; + private static readonly string s_ProgressLabelStyle = "Progress Label"; + private static readonly string s_SectionTitleLabelStyle = "Section Title Label"; + private static readonly string s_TheInBetweenTextStyle = "TheInBetweenText"; + + private static readonly string s_Background = "Background"; + private static readonly string s_HeaderStyleBG = "SectionTitleBackground"; + private static readonly string s_ListBG = "ListBackground"; + private static readonly string s_SectionTitleBackground = "SectionTitleBackground"; + private static readonly string s_TopBarBackground = "TopBarBackground"; + private static readonly string s_DarkBackground = "DarkBackground"; + private static readonly string s_CompletedElementBackgroundStyle = "CompletedElementBackground"; + private static readonly string s_ActiveElementBackgroundStyle = "ActiveElementBackground"; + private static readonly string s_InActiveElementBackgroundStyle = "InActiveElementBackground"; + private static readonly string s_BGTheInBetweenText = "BGTheInBetweenText"; + private static readonly string s_TheInBetweenTextStyleNotActiveOrCompleted = "BGTheInBetweenTextNotActiveOrCompleted"; + + private static readonly string s_Footer = "Footer"; + private static readonly string s_PaginationLabel = "PaginationLabel"; + private static readonly string s_NextButton = "NextButton"; + private static readonly string s_NextButtonDisabled = "NextButtonDisabled"; + private static readonly string s_BackButton = "BackButton"; + private static readonly string s_BackButtonDisabled = "BackButtonDisabled"; + private static readonly string s_ProgressBar = "ProgressBar"; + + private static readonly string s_InstructionLabelIconStyleNotCompleted = "InstructionLabelIconNotCompleted"; + private static readonly string s_InstructionLabelIconStyleCompleted = "InstructionLabelIconCompleted"; + //private static readonly string s_IconButtonBack = "IconButtonBack"; + private static readonly string s_IconButtonReset = "IconButtonReset"; + private static readonly string s_IconButtonHome = "IconButtonHome"; + private static readonly string s_IconButtonClose = "IconButtonClose"; + + private static readonly string s_TutorialCard = "TutorialCard"; + private static readonly string s_LinkCard = "LinkCard"; + + private static readonly string s_WelcomeDialogButton = "WelcomeDialogButton"; + + private static readonly string s_Tooltip = "Tooltip"; + + public static GUIStyle narrativeStyle; + public static GUIStyle switchTutorialStyle; + public static GUIStyle imageStyle; + public static GUIStyle videoStyle; + public static GUIStyle theInBetweenText; + public static GUIStyle headerLabel; + public static GUIStyle instructionLabel; + public static GUIStyle line; + public static GUIStyle list; + public static GUIStyle listPrefix; + public static GUIStyle progressLabel; + public static GUIStyle sectionTitleLabel; + + public static GUIStyle footer; + public static GUIStyle paginationLabel; + public static GUIStyle nextButton; + public static GUIStyle nextButtonDisabled; + public static GUIStyle backButton; + public static GUIStyle backButtonDisabled; + public static GUIStyle progressBar; + + public static GUIStyle background; + public static GUIStyle sectionTitleBackground; + public static GUIStyle topBarBackground; + public static GUIStyle bgTheInBetweenText; + public static GUIStyle completedElementBackground; + public static GUIStyle activeElementBackground; + public static GUIStyle inActiveElementBackground; + public static GUIStyle darkBackground; + public static GUIStyle theInBetweenTextNotActiveOrCompleted; + public static GUIStyle headerBGStyle; + public static GUIStyle listBGStyle; + + public static GUIStyle instructionLabelIconNotCompleted; + public static GUIStyle instructionLabelIconCompleted; + //public static GUIStyle iconButtonBack; + public static GUIStyle iconButtonReset; + public static GUIStyle iconButtonHome; + public static GUIStyle iconButtonClose; + + public static GUIStyle tutorialCard; + public static GUIStyle linkCard; + + public static GUIStyle welcomeDialogButton; + + public static GUIStyle tooltip; + } + + class TutorialStyles : ScriptableObject + { + public static void DisplayErrorMessage(string fileName) + { + EditorGUILayout.HelpBox( + string.Format( + "No styles assigned. Did you forget to assign a default one in the inspector for {0}? Assign one and reopen this window.", + fileName + ), + MessageType.Error + ); + } + + public GUISkin skin { get { return m_Skin; } } + [SerializeField] + GUISkin m_Skin = null; + + public string orderedListDelimiter { get { return m_OrderedListDelimiter; } } + [SerializeField] + string m_OrderedListDelimiter = "."; + + public string unorderedListBullet { get { return m_UnorderedListBullet; } } + [SerializeField] + string m_UnorderedListBullet = "\u2022"; + + public Color maskingColor { get { return m_MaskingColor; } } + [SerializeField] + private Color m_MaskingColor = new Color32(0, 40, 53, 204); + + public Color highlightColor { get { return m_HighlightColor; } } + [SerializeField] + private Color m_HighlightColor = new Color32(0, 198, 223, 255); + + public float highlightThickness { get { return m_HighlightThickness; } } + + public Color blockedInteractionColor { get { return m_BlockedInteractionColor; } } + [SerializeField] + private Color m_BlockedInteractionColor = new Color(1, 1, 1, 0.5f); + + [SerializeField, Range(0f, 10f)] + private float m_HighlightThickness = 3f; + + [SerializeField, Range(0f, 10f)] + private float m_HighlightAnimationSpeed = 1.5f; + + [SerializeField, Range(0f, 10f)] + private float m_HighlightAnimationDelay = 5f; + + public Color TextColorMainDarkSkin = Color.white; + public Color TextColorMainLightSkin = Color.black; + + public Color TextColorSecondaryDarkSkin = new Color(0.66f, 0.66f, 0.66f); + public Color TextColorSecondaryLightSkin = new Color(0.33f, 0.33f, 0.33f); + + void OnEnable() + { + MaskingManager.highlightAnimationSpeed = m_HighlightAnimationSpeed; + MaskingManager.highlightAnimationDelay = m_HighlightAnimationDelay; + } + + void OnValidate() + { + MaskingManager.highlightAnimationSpeed = m_HighlightAnimationSpeed; + MaskingManager.highlightAnimationDelay = m_HighlightAnimationDelay; + } + } +} diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/Editor/Models/TutorialStyles.cs.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/Editor/Models/TutorialStyles.cs.meta" new file mode 100644 index 00000000..c823f82d --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/Editor/Models/TutorialStyles.cs.meta" @@ -0,0 +1,12 @@ +fileFormatVersion: 2 +guid: a385a00f03d2f4d1aa06e69dc6fdeea4 +timeCreated: 1490874394 +licenseType: Pro +MonoImporter: + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/Editor/Models/TutorialWelcomePage.cs" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/Editor/Models/TutorialWelcomePage.cs" new file mode 100644 index 00000000..c88b4db3 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/Editor/Models/TutorialWelcomePage.cs" @@ -0,0 +1,28 @@ +using System.Collections.Generic; +using UnityEngine; + +namespace Unity.InteractiveTutorials +{ + class TutorialWelcomePage : ScriptableObject + { + public Texture icon { get { return m_Icon; } } + [SerializeField] + private Texture m_Icon = null; + + public string title { get { return m_Title; } } + [SerializeField] + private string m_Title = null; + + public IEnumerable paragraphs { get { return m_Paragraphs; } } + [SerializeField] + private TutorialParagraphCollection m_Paragraphs = new TutorialParagraphCollection(); + + public string startButtonLabel { get { return m_StartButtonLabel; } } + [SerializeField] + public string m_StartButtonLabel = "Start"; + + public string finishButtonLabel { get { return m_FinishButtonLabel; } } + [SerializeField] + public string m_FinishButtonLabel = "Go to the next tutorial"; + } +} diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/Editor/Models/TutorialWelcomePage.cs.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/Editor/Models/TutorialWelcomePage.cs.meta" new file mode 100644 index 00000000..a90f7f4f --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/Editor/Models/TutorialWelcomePage.cs.meta" @@ -0,0 +1,12 @@ +fileFormatVersion: 2 +guid: b0885f594ab85594caa28e1a96cbe0d8 +timeCreated: 1490278499 +licenseType: Pro +MonoImporter: + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/Editor/Models/TypedCriterion.cs" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/Editor/Models/TypedCriterion.cs" new file mode 100644 index 00000000..4957c65c --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/Editor/Models/TypedCriterion.cs" @@ -0,0 +1,35 @@ +using System; +using System.Collections.Generic; +using UnityEngine; + +namespace Unity.InteractiveTutorials +{ + [Serializable] + class TypedCriterion + { + [SerializeField] + [SerializedTypeFilter(typeof(Criterion))] + public SerializedType type; + + [SerializeField] + public Criterion criterion; + + public TypedCriterion(SerializedType type, Criterion criterion) + { + this.type = type; + this.criterion = criterion; + } + } + + [Serializable] + class TypedCriterionCollection : CollectionWrapper + { + public TypedCriterionCollection() : base() + { + } + + public TypedCriterionCollection(IList items) : base(items) + { + } + } +} diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/Editor/Models/TypedCriterion.cs.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/Editor/Models/TypedCriterion.cs.meta" new file mode 100644 index 00000000..9a0a4ce7 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/Editor/Models/TypedCriterion.cs.meta" @@ -0,0 +1,12 @@ +fileFormatVersion: 2 +guid: 625d33e6f18e44006a8ec6b9bf452df8 +timeCreated: 1490872474 +licenseType: Pro +MonoImporter: + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/Editor/ObjectReference.cs" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/Editor/ObjectReference.cs" new file mode 100644 index 00000000..ca8ccba0 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/Editor/ObjectReference.cs" @@ -0,0 +1,32 @@ +using System; +using UnityEngine; + +namespace Unity.InteractiveTutorials +{ + [Serializable] + public class ObjectReference + { + [SerializeField] + SceneObjectReference m_SceneObjectReference; + + [SerializeField] + FutureObjectReference m_FutureObjectReference = null; + + public bool future { get { return m_FutureObjectReference != null; } } + + public SceneObjectReference sceneObjectReference + { + get + { + if (future) + return m_FutureObjectReference.sceneObjectReference; + return m_SceneObjectReference ?? (m_SceneObjectReference = new SceneObjectReference()); + } + set + { + if (!future) + m_SceneObjectReference = value; + } + } + } +} diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/Editor/ObjectReference.cs.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/Editor/ObjectReference.cs.meta" new file mode 100644 index 00000000..fd6f7e58 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/Editor/ObjectReference.cs.meta" @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 3d3a8ebd1dd2421785457f30c7b41033 +timeCreated: 1491399744 +MonoImporter: + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/Editor/ProjectMode.cs" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/Editor/ProjectMode.cs" new file mode 100644 index 00000000..3085cad7 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/Editor/ProjectMode.cs" @@ -0,0 +1,12 @@ +using System; + +namespace Unity.InteractiveTutorials +{ + public static class ProjectMode + { + public static bool IsAuthoringMode() + { + return Type.GetType("Unity.InteractiveTutorials.TutorialExporterWindow, Unity.InternalAPIEditorBridgeDev.005, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null") != null; + } + } +} diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/Editor/ProjectMode.cs.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/Editor/ProjectMode.cs.meta" new file mode 100644 index 00000000..10f0d822 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/Editor/ProjectMode.cs.meta" @@ -0,0 +1,13 @@ +fileFormatVersion: 2 +guid: b2382990c3a864f22ae2a1bda13d3296 +timeCreated: 1502805427 +licenseType: Pro +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/Editor/Property Attributes.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/Editor/Property Attributes.meta" new file mode 100644 index 00000000..111cdc60 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/Editor/Property Attributes.meta" @@ -0,0 +1,9 @@ +fileFormatVersion: 2 +guid: 9a74caf8d93bd4230a6d0103b9aa1993 +folderAsset: yes +timeCreated: 1490872694 +licenseType: Pro +DefaultImporter: + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/Editor/Property Attributes/SerializedTypeFilterAttribute.cs" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/Editor/Property Attributes/SerializedTypeFilterAttribute.cs" new file mode 100644 index 00000000..2f5600b5 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/Editor/Property Attributes/SerializedTypeFilterAttribute.cs" @@ -0,0 +1,31 @@ +using System; + +namespace Unity.InteractiveTutorials +{ + [AttributeUsage(AttributeTargets.Field)] + public abstract class SerializedTypeFilterAttributeBase : Attribute + { + public Type baseType { get; protected set; } + + } + + [AttributeUsage(AttributeTargets.Field)] + public class SerializedTypeFilterAttribute : SerializedTypeFilterAttributeBase + { + + public SerializedTypeFilterAttribute(Type baseType) + { + this.baseType = baseType; + } + } + + [AttributeUsage(AttributeTargets.Field)] + public class SerializedTypeGUIViewFilterAttribute : SerializedTypeFilterAttributeBase + { + + public SerializedTypeGUIViewFilterAttribute() + { + this.baseType = GUIViewProxy.guiViewType; + } + } +} diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/Editor/Property Attributes/SerializedTypeFilterAttribute.cs.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/Editor/Property Attributes/SerializedTypeFilterAttribute.cs.meta" new file mode 100644 index 00000000..6edbf9d7 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/Editor/Property Attributes/SerializedTypeFilterAttribute.cs.meta" @@ -0,0 +1,12 @@ +fileFormatVersion: 2 +guid: 3917b0b3ad86646c8926e756945a5d69 +timeCreated: 1490872703 +licenseType: Pro +MonoImporter: + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/Editor/Property Drawers.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/Editor/Property Drawers.meta" new file mode 100644 index 00000000..3db1c9a2 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/Editor/Property Drawers.meta" @@ -0,0 +1,9 @@ +fileFormatVersion: 2 +guid: 962b147a221654ecc8a091bb84305ae7 +folderAsset: yes +timeCreated: 1486299015 +licenseType: Pro +DefaultImporter: + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/Editor/Property Drawers/CollectionWrapperDrawer.cs" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/Editor/Property Drawers/CollectionWrapperDrawer.cs" new file mode 100644 index 00000000..ac86544b --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/Editor/Property Drawers/CollectionWrapperDrawer.cs" @@ -0,0 +1,80 @@ +using System.Collections.Generic; +using UnityEditor; +using UnityEditorInternal; +using UnityEngine; + +namespace Unity.InteractiveTutorials +{ + [CustomPropertyDrawer(typeof(CollectionWrapper), true)] + class CollectionWrapperDrawer : PropertyDrawer + { + const string k_ItemsPath = "m_Items"; + + Dictionary m_Widgets = new Dictionary(); + + public override float GetPropertyHeight(SerializedProperty property, GUIContent label) + { + var list = GetListWidget(property, label); + return list.GetHeight(); + } + + public override void OnGUI(Rect position, SerializedProperty property, GUIContent label) + { + var list = GetListWidget(property, label); + list.DoList(position); + } + + protected virtual void OnReorderableListCreated(ReorderableList list) + { + } + + ReorderableList GetListWidget(SerializedProperty property, GUIContent label) + { + string key = property.propertyPath; + if (m_Widgets.ContainsKey(key)) + { + return m_Widgets[key]; + } + var reorderableList = + new ReorderableList(property.serializedObject, property.FindPropertyRelative(k_ItemsPath)); + reorderableList.drawElementCallback = (rect, index, isActive, isFocused) => + EditorGUI.PropertyField(rect, reorderableList.serializedProperty.GetArrayElementAtIndex(index), true); + label = label != null ? new GUIContent(label) : new GUIContent(property.displayName); + reorderableList.drawHeaderCallback = delegate(Rect rect) { + int oldIndent = EditorGUI.indentLevel; + EditorGUI.indentLevel = 0; + EditorGUI.LabelField(rect, label); + EditorGUI.indentLevel = oldIndent; + }; + reorderableList.elementHeightCallback = delegate(int index) + { + return EditorGUI.GetPropertyHeight(reorderableList.serializedProperty.GetArrayElementAtIndex(index)) + + EditorGUIUtility.standardVerticalSpacing * 2f + 1f; + }; + reorderableList.onAddCallback = delegate(ReorderableList lst) { + ++lst.serializedProperty.arraySize; + lst.serializedProperty.serializedObject.ApplyModifiedProperties(); + }; + reorderableList.onRemoveCallback = delegate(ReorderableList lst) { + int index = lst.index; + if (index >= lst.serializedProperty.arraySize) + { + return; + } + SerializedProperty element = lst.serializedProperty.GetArrayElementAtIndex(index); + if ( + element.propertyType == SerializedPropertyType.ObjectReference && + element.objectReferenceValue != null + ) + { + lst.serializedProperty.DeleteArrayElementAtIndex(index); + } + lst.serializedProperty.DeleteArrayElementAtIndex(index); + lst.serializedProperty.serializedObject.ApplyModifiedProperties(); + }; + m_Widgets[key] = reorderableList; + OnReorderableListCreated(reorderableList); + return reorderableList; + } + } +} diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/Editor/Property Drawers/CollectionWrapperDrawer.cs.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/Editor/Property Drawers/CollectionWrapperDrawer.cs.meta" new file mode 100644 index 00000000..70031753 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/Editor/Property Drawers/CollectionWrapperDrawer.cs.meta" @@ -0,0 +1,12 @@ +fileFormatVersion: 2 +guid: 8f52a15eb96014b88a9262f85d8a3753 +timeCreated: 1489584118 +licenseType: Pro +MonoImporter: + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/Editor/Property Drawers/ComponentAddedCriterionDrawers.cs" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/Editor/Property Drawers/ComponentAddedCriterionDrawers.cs" new file mode 100644 index 00000000..6676770a --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/Editor/Property Drawers/ComponentAddedCriterionDrawers.cs" @@ -0,0 +1,46 @@ +using System; +using UnityEngine; +using UnityEditor; + +namespace Unity.InteractiveTutorials +{ + class ComponentAddedCriterionDrawers + { + [CustomPropertyDrawer(typeof(ComponentAddedCriterion.TypeAndFutureReference))] + class TypeAndFutureReferenceDrawer : PropertyDrawer + { + static string s_SerializedTypeField = "serializedType"; + + public override float GetPropertyHeight(SerializedProperty property, GUIContent label) + { + var serializedTypeProperty = property.FindPropertyRelative(s_SerializedTypeField); + return EditorGUI.GetPropertyHeight(serializedTypeProperty); + } + + public override void OnGUI(Rect position, SerializedProperty property, GUIContent label) + { + var serializedTypeProperty = property.FindPropertyRelative(s_SerializedTypeField); + EditorGUI.PropertyField(position, serializedTypeProperty, GUIContent.none); + } + } + + [CustomPropertyDrawer(typeof(ComponentAddedCriterion.SerializedTypeCollection))] + class TypedCriterionCollectionDrawer : CollectionWrapperDrawer + { + const string k_FutureReferencePath = "futureReference"; + + protected override void OnReorderableListCreated(UnityEditorInternal.ReorderableList list) + { + base.OnReorderableListCreated(list); + list.onAddCallback = lst => + { + ++lst.serializedProperty.arraySize; + lst.serializedProperty.serializedObject.ApplyModifiedProperties(); + var lastElement = lst.serializedProperty.GetArrayElementAtIndex(lst.serializedProperty.arraySize - 1); + lastElement.FindPropertyRelative(k_FutureReferencePath).objectReferenceValue = null; + list.serializedProperty.serializedObject.ApplyModifiedProperties(); + }; + } + } + } +} diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/Editor/Property Drawers/ComponentAddedCriterionDrawers.cs.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/Editor/Property Drawers/ComponentAddedCriterionDrawers.cs.meta" new file mode 100644 index 00000000..2a2f7588 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/Editor/Property Drawers/ComponentAddedCriterionDrawers.cs.meta" @@ -0,0 +1,12 @@ +fileFormatVersion: 2 +guid: bc9a8815d47fe4e8d872bc83007ba0b4 +timeCreated: 1496243891 +licenseType: Pro +MonoImporter: + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/Editor/Property Drawers/EditorWindowTypeDrawer.cs" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/Editor/Property Drawers/EditorWindowTypeDrawer.cs" new file mode 100644 index 00000000..c17f4c17 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/Editor/Property Drawers/EditorWindowTypeDrawer.cs" @@ -0,0 +1,10 @@ +using UnityEditor; +using UnityEngine; + +namespace Unity.InteractiveTutorials +{ + [CustomPropertyDrawer(typeof(EditorWindowType))] + class EditorWindowTypeDrawer : FlushChildrenDrawer + { + } +} diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/Editor/Property Drawers/EditorWindowTypeDrawer.cs.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/Editor/Property Drawers/EditorWindowTypeDrawer.cs.meta" new file mode 100644 index 00000000..d1d057fe --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/Editor/Property Drawers/EditorWindowTypeDrawer.cs.meta" @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: cb8cdd063b3e3407fbb1c40e24773fc9 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/Editor/Property Drawers/FlushChildrenDrawer.cs" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/Editor/Property Drawers/FlushChildrenDrawer.cs" new file mode 100644 index 00000000..285a0ca0 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/Editor/Property Drawers/FlushChildrenDrawer.cs" @@ -0,0 +1,68 @@ +using System.Collections.Generic; +using UnityEditor; +using UnityEngine; + +namespace Unity.InteractiveTutorials +{ + public class FlushChildrenDrawer : PropertyDrawer + { + private static GUIContent s_Label = new GUIContent(); + + private static HashSet s_ExpandableTypes = new HashSet(new[] + { + SerializedPropertyType.Generic, SerializedPropertyType.Quaternion, SerializedPropertyType.Vector4 + }); + + public bool ShouldDisplayFoldout { get { return false; } } + + protected virtual void DisplayChildProperty(Rect position, SerializedProperty parentProperty, + SerializedProperty childProperty, GUIContent label) + { + EditorGUI.PropertyField(position, childProperty, label, true); + } + + protected virtual float GetChildPropertyHeight(SerializedProperty parentProperty, + SerializedProperty childProperty) + { + s_Label.text = childProperty.displayName; + return EditorGUI.GetPropertyHeight(childProperty, s_Label, true); + } + + public override float GetPropertyHeight(SerializedProperty property, GUIContent label) + { + var result = 0f; + var childProperty = property.Copy(); + var endProperty = property.GetEndProperty(); + childProperty.NextVisible(true); + while (!SerializedProperty.EqualContents(childProperty, endProperty)) + { + result += + GetChildPropertyHeight(property, childProperty.Copy()) + EditorGUIUtility.standardVerticalSpacing; + childProperty.NextVisible(false); + } + if (result > 0f) + result -= EditorGUIUtility.standardVerticalSpacing; + return result; + } + + public override void OnGUI(Rect position, SerializedProperty property, GUIContent label) + { + // if the property is not an expandable type, then use its default drawer + if (!s_ExpandableTypes.Contains(property.propertyType)) + EditorGUI.PropertyField(position, property, label, property.hasVisibleChildren && property.isExpanded); + else + { + var childProperty = property.Copy(); + var endProperty = property.GetEndProperty(); + childProperty.NextVisible(true); + while (!SerializedProperty.EqualContents(childProperty, endProperty)) + { + position.height = GetChildPropertyHeight(property, childProperty); + DisplayChildProperty(position, property, childProperty.Copy(), null); + position.y += position.height + EditorGUIUtility.standardVerticalSpacing; + childProperty.NextVisible(false); + } + } + } + } +} diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/Editor/Property Drawers/FlushChildrenDrawer.cs.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/Editor/Property Drawers/FlushChildrenDrawer.cs.meta" new file mode 100644 index 00000000..3598c162 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/Editor/Property Drawers/FlushChildrenDrawer.cs.meta" @@ -0,0 +1,3 @@ +fileFormatVersion: 2 +guid: 0d480cd014c2417085d7e3337eb56a9e +timeCreated: 1490965338 \ No newline at end of file diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/Editor/Property Drawers/GUIControlSelectorDrawer.cs" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/Editor/Property Drawers/GUIControlSelectorDrawer.cs" new file mode 100644 index 00000000..e8839de6 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/Editor/Property Drawers/GUIControlSelectorDrawer.cs" @@ -0,0 +1,88 @@ +using UnityEditor; +using UnityEngine; + +namespace Unity.InteractiveTutorials +{ + [CustomPropertyDrawer(typeof(GUIControlSelector))] + public class GUIControlSelectorDrawer : PropertyDrawer + { + private const string k_SelectorModePath = "m_SelectorMode"; + private const string k_GUIContentPath = "m_GUIContent"; + private const string k_ControlNamePath = "m_ControlName"; + private const string k_PropertyPathPath = "m_PropertyPath"; + private const string k_TargetTypePath = "m_TargetType"; + private const string k_GUIStyleNamePath = "m_GUIStyleName"; + + public override float GetPropertyHeight(SerializedProperty property, GUIContent label) + { + var selectorMode = property.FindPropertyRelative(k_SelectorModePath); + var height = EditorGUI.GetPropertyHeight(selectorMode); + switch ((GUIControlSelector.Mode)selectorMode.intValue) + { + case GUIControlSelector.Mode.GUIContent: + height += EditorGUIUtility.standardVerticalSpacing + EditorGUI.GetPropertyHeight(property.FindPropertyRelative(k_GUIContentPath), true); + break; + case GUIControlSelector.Mode.NamedControl: + height += EditorGUIUtility.standardVerticalSpacing + EditorGUI.GetPropertyHeight(property.FindPropertyRelative(k_ControlNamePath), true); + break; + case GUIControlSelector.Mode.GUIStyleName: + height += EditorGUIUtility.standardVerticalSpacing + EditorGUI.GetPropertyHeight(property.FindPropertyRelative(k_GUIStyleNamePath), true); + break; + case GUIControlSelector.Mode.Property: + height += + EditorGUIUtility.standardVerticalSpacing + + EditorGUI.GetPropertyHeight(property.FindPropertyRelative(k_TargetTypePath), true) + + EditorGUI.GetPropertyHeight(property.FindPropertyRelative(k_PropertyPathPath), true); + break; + default: + height += EditorGUIUtility.standardVerticalSpacing + EditorGUIUtility.singleLineHeight; + break; + } + return height; + } + + public override void OnGUI(Rect position, SerializedProperty property, GUIContent label) + { + var selectorMode = property.FindPropertyRelative(k_SelectorModePath); + position.height = EditorGUI.GetPropertyHeight(selectorMode); + EditorGUI.PropertyField(position, selectorMode); + + position.y += position.height + EditorGUIUtility.standardVerticalSpacing; + SerializedProperty selectorData = null; + switch ((GUIControlSelector.Mode)selectorMode.intValue) + { + case GUIControlSelector.Mode.GUIContent: + selectorData = property.FindPropertyRelative(k_GUIContentPath); + break; + case GUIControlSelector.Mode.NamedControl: + selectorData = property.FindPropertyRelative(k_ControlNamePath); + break; + case GUIControlSelector.Mode.Property: + var targetType = property.FindPropertyRelative(k_TargetTypePath); + position.height = EditorGUI.GetPropertyHeight(targetType); + EditorGUI.PropertyField(position, targetType); + position.y += position.height + EditorGUIUtility.standardVerticalSpacing; + + selectorData = property.FindPropertyRelative(k_PropertyPathPath); + break; + case GUIControlSelector.Mode.GUIStyleName: + selectorData = property.FindPropertyRelative(k_GUIStyleNamePath); + break; + } + if (selectorData != null) + { + position.height = EditorGUI.GetPropertyHeight(selectorData, true); + EditorGUI.PropertyField(position, selectorData, true); + } + else + { + position.height = EditorGUIUtility.singleLineHeight; + EditorGUI.HelpBox( + position, + string.Format("No drawing implemented yet for selector mode {0}", (GUIControlSelector.Mode)selectorMode.intValue), + MessageType.Error + ); + } + } + } +} diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/Editor/Property Drawers/GUIControlSelectorDrawer.cs.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/Editor/Property Drawers/GUIControlSelectorDrawer.cs.meta" new file mode 100644 index 00000000..e2288f9e --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/Editor/Property Drawers/GUIControlSelectorDrawer.cs.meta" @@ -0,0 +1,12 @@ +fileFormatVersion: 2 +guid: cc964831d045d453db56f4cc1a56c94f +timeCreated: 1493977255 +licenseType: Pro +MonoImporter: + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/Editor/Property Drawers/InlineIconDrawer.cs" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/Editor/Property Drawers/InlineIconDrawer.cs" new file mode 100644 index 00000000..51194f8d --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/Editor/Property Drawers/InlineIconDrawer.cs" @@ -0,0 +1,9 @@ +using UnityEditor; + +namespace Unity.InteractiveTutorials +{ + [CustomPropertyDrawer(typeof(InlineIcon))] + class InlineIconDrawer : FlushChildrenDrawer + { + } +} diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/Editor/Property Drawers/InlineIconDrawer.cs.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/Editor/Property Drawers/InlineIconDrawer.cs.meta" new file mode 100644 index 00000000..52cb8f01 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/Editor/Property Drawers/InlineIconDrawer.cs.meta" @@ -0,0 +1,12 @@ +fileFormatVersion: 2 +guid: f2026afa928aa4a43ac1487be4f0f4d9 +timeCreated: 1486299315 +licenseType: Pro +MonoImporter: + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/Editor/Property Drawers/InstantiatePrefabCriterionDrawers.cs" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/Editor/Property Drawers/InstantiatePrefabCriterionDrawers.cs" new file mode 100644 index 00000000..af8efcd0 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/Editor/Property Drawers/InstantiatePrefabCriterionDrawers.cs" @@ -0,0 +1,47 @@ +using UnityEditor; +using UnityEngine; + +using UnityObject = UnityEngine.Object; + +namespace Unity.InteractiveTutorials +{ + class InstantiatePrefabCriterionDrawers + { + [CustomPropertyDrawer(typeof(InstantiatePrefabCriterion.FuturePrefabInstance))] + class FuturePrefabInstanceDrawer : PropertyDrawer + { + const string k_PrefabParentPropertyPath = "m_PrefabParent"; + + public override float GetPropertyHeight(SerializedProperty property, GUIContent label) + { + var prefabParentProperty = property.FindPropertyRelative(k_PrefabParentPropertyPath); + return EditorGUI.GetPropertyHeight(prefabParentProperty); + } + + public override void OnGUI(Rect position, SerializedProperty property, GUIContent label) + { + position.height = GetPropertyHeight(property, label); + + var prefabParentProperty = property.FindPropertyRelative(k_PrefabParentPropertyPath); + var obj = prefabParentProperty.objectReferenceValue; + + EditorGUI.BeginProperty(position, GUIContent.none, prefabParentProperty); + EditorGUI.BeginChangeCheck(); + + var newObj = EditorGUI.ObjectField(position, obj, typeof(UnityObject), true); + + if (EditorGUI.EndChangeCheck()) + { + // Replace prefab instance with its prefab parent + if (newObj != null && PrefabUtility.GetPrefabInstanceStatus(newObj) != PrefabInstanceStatus.NotAPrefab) + newObj = PrefabUtilityShim.GetCorrespondingObjectFromSource(newObj); + + prefabParentProperty.objectReferenceValue = newObj; + } + EditorGUI.EndProperty(); + + position.y += position.height + EditorGUIUtility.standardVerticalSpacing; + } + } + } +} diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/Editor/Property Drawers/InstantiatePrefabCriterionDrawers.cs.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/Editor/Property Drawers/InstantiatePrefabCriterionDrawers.cs.meta" new file mode 100644 index 00000000..1c8d6cc5 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/Editor/Property Drawers/InstantiatePrefabCriterionDrawers.cs.meta" @@ -0,0 +1,12 @@ +fileFormatVersion: 2 +guid: 8464053078dba466b8b96447c46ff87e +timeCreated: 1496243891 +licenseType: Pro +MonoImporter: + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/Editor/Property Drawers/MaskingSettingsDrawer.cs" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/Editor/Property Drawers/MaskingSettingsDrawer.cs" new file mode 100644 index 00000000..65595e71 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/Editor/Property Drawers/MaskingSettingsDrawer.cs" @@ -0,0 +1,60 @@ +using System.Collections.Generic; +using UnityEditor; +using UnityEditorInternal; +using UnityEngine; + +namespace Unity.InteractiveTutorials +{ + [CustomPropertyDrawer(typeof(MaskingSettings))] + public class MaskingSettingsDrawer : PropertyDrawer + { + private readonly Dictionary m_UnmaskedViewsPerPropertyPath = + new Dictionary(); + + public override float GetPropertyHeight(SerializedProperty property, GUIContent label) + { + var enabled = property.FindPropertyRelative(MaskingSettings.k_EnabledPath); + var height = EditorGUI.GetPropertyHeight(enabled); + if (enabled.boolValue) + height += EditorGUIUtility.standardVerticalSpacing + GetListControl(property).GetHeight(); + return height; + } + + public override void OnGUI(Rect position, SerializedProperty property, GUIContent label) + { + var enabled = property.FindPropertyRelative(MaskingSettings.k_EnabledPath); + position.height = EditorGUI.GetPropertyHeight(enabled); + using (new EditorGUI.PropertyScope(position, label, enabled)) + property.isExpanded = enabled.boolValue = EditorGUI.ToggleLeft(position, label, enabled.boolValue); + + if (!property.isExpanded) + return; + + position.y += position.height + EditorGUIUtility.standardVerticalSpacing; + var listControl = GetListControl(property); + position.height = listControl.GetHeight(); + using (new EditorGUI.IndentLevelScope()) + position = EditorGUI.IndentedRect(position); + using (new EditorGUI.IndentLevelScope(-EditorGUI.indentLevel)) + listControl.DoList(position); + } + + private ReorderableList GetListControl(SerializedProperty parentProperty) + { + string key = parentProperty.propertyPath; + ReorderableList list; + if (!m_UnmaskedViewsPerPropertyPath.TryGetValue(key, out list)) + { + list = new ReorderableList(parentProperty.serializedObject, parentProperty.FindPropertyRelative(MaskingSettings.k_UnmaskedViewsPath)); + list.drawHeaderCallback = rect => EditorGUI.LabelField(rect, "Unmasked Views"); + list.elementHeightCallback = index => + EditorGUI.GetPropertyHeight(list.serializedProperty.GetArrayElementAtIndex(index), true) + + EditorGUIUtility.standardVerticalSpacing; + list.drawElementCallback = (rect, index, isActive, isFocused) => + EditorGUI.PropertyField(rect, list.serializedProperty.GetArrayElementAtIndex(index), true); + m_UnmaskedViewsPerPropertyPath[key] = list; + } + return list; + } + } +} diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/Editor/Property Drawers/MaskingSettingsDrawer.cs.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/Editor/Property Drawers/MaskingSettingsDrawer.cs.meta" new file mode 100644 index 00000000..b7bb2e0a --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/Editor/Property Drawers/MaskingSettingsDrawer.cs.meta" @@ -0,0 +1,12 @@ +fileFormatVersion: 2 +guid: 434861f8a6e7341df820e5d489d9b2a5 +timeCreated: 1493977340 +licenseType: Pro +MonoImporter: + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/Editor/Property Drawers/ObjectReferencePropertyDrawer.cs" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/Editor/Property Drawers/ObjectReferencePropertyDrawer.cs" new file mode 100644 index 00000000..dea3a5d3 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/Editor/Property Drawers/ObjectReferencePropertyDrawer.cs" @@ -0,0 +1,69 @@ +using Unity.InteractiveTutorials; +using UnityEditor; +using UnityEngine; + +using UnityObject = UnityEngine.Object; + +[CustomPropertyDrawer(typeof(ObjectReference))] +public class ObjectReferencePropertyDrawer : PropertyDrawer +{ + const string k_SceneObjectReferencePath = "m_SceneObjectReference"; + const string k_FutureObjectReferencePath = "m_FutureObjectReference"; + + public override void OnGUI(Rect position, SerializedProperty property, GUIContent label) + { + var sceneObjectReferenceProperty = property.FindPropertyRelative(k_SceneObjectReferencePath); + var futureObjectReferenceProperty = property.FindPropertyRelative(k_FutureObjectReferencePath); + + var origColor = GUI.color; + + UnityObject obj; + SceneObjectReference sceneObjectReference = null; + + if (futureObjectReferenceProperty.objectReferenceValue != null) + { + label.text = "(Future) " + label.text; + GUI.color = Color.cyan; + + obj = futureObjectReferenceProperty.objectReferenceValue; + } + else + { + sceneObjectReference = new SceneObjectReference(sceneObjectReferenceProperty); + + if (!sceneObjectReference.ReferenceResolved) + { + label.text = "(Not resolved) " + label.text; + GUI.color = Color.red; + } + + obj = sceneObjectReference.ReferencedObject; + if (!sceneObjectReference.ReferenceResolved) + { + obj = sceneObjectReference.ReferenceScene; + } + } + + label = EditorGUI.BeginProperty(position, label, property); + position = EditorGUI.PrefixLabel(position, label); + GUI.color = origColor; + + EditorGUI.BeginChangeCheck(); + var newObj = EditorGUI.ObjectField(position, obj, typeof(Object), true); + if (EditorGUI.EndChangeCheck()) + { + if (newObj is FutureObjectReference) + futureObjectReferenceProperty.objectReferenceValue = newObj; + else + { + futureObjectReferenceProperty.objectReferenceValue = null; + + if (sceneObjectReference == null) + sceneObjectReference = new SceneObjectReference(sceneObjectReferenceProperty); + sceneObjectReference.Update(newObj); + } + } + + EditorGUI.EndProperty(); + } +} diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/Editor/Property Drawers/ObjectReferencePropertyDrawer.cs.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/Editor/Property Drawers/ObjectReferencePropertyDrawer.cs.meta" new file mode 100644 index 00000000..0362b0c6 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/Editor/Property Drawers/ObjectReferencePropertyDrawer.cs.meta" @@ -0,0 +1,12 @@ +fileFormatVersion: 2 +guid: 3bd96fb32e5744a3b8c0234c11d58941 +timeCreated: 1489579349 +licenseType: Pro +MonoImporter: + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/Editor/Property Drawers/SceneObjectReferencePropertyDrawer.cs" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/Editor/Property Drawers/SceneObjectReferencePropertyDrawer.cs" new file mode 100644 index 00000000..aabca6e0 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/Editor/Property Drawers/SceneObjectReferencePropertyDrawer.cs" @@ -0,0 +1,38 @@ +using UnityEditor; +using UnityEngine; +using Object = UnityEngine.Object; + +[CustomPropertyDrawer(typeof(SceneObjectReference))] +public class SceneObjectReferencePropertyDrawer : PropertyDrawer +{ + public override void OnGUI(Rect position, SerializedProperty property, GUIContent label) + { + var sor = new SceneObjectReference(property); + + var origColor = GUI.color; + if (!sor.ReferenceResolved) + { + label.text = "(Not resolved) " + label.text; + GUI.color = Color.red; + } + + label = EditorGUI.BeginProperty(position, label, property); + position = EditorGUI.PrefixLabel(position, label); + GUI.color = origColor; + + Object obj = sor.ReferencedObject; + if (!sor.ReferenceResolved) + { + obj = sor.ReferenceScene; + } + + EditorGUI.BeginChangeCheck(); + var newObj = EditorGUI.ObjectField(position, obj, typeof(Object), true); + if (EditorGUI.EndChangeCheck()) + { + sor.Update(newObj); + } + + EditorGUI.EndProperty(); + } +} diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/Editor/Property Drawers/SceneObjectReferencePropertyDrawer.cs.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/Editor/Property Drawers/SceneObjectReferencePropertyDrawer.cs.meta" new file mode 100644 index 00000000..5835b306 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/Editor/Property Drawers/SceneObjectReferencePropertyDrawer.cs.meta" @@ -0,0 +1,12 @@ +fileFormatVersion: 2 +guid: 30fbc74159d47194ea37e8b2f3b1f91f +timeCreated: 1489579349 +licenseType: Pro +MonoImporter: + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/Editor/Property Drawers/SceneViewCameraSettingsDrawer.cs" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/Editor/Property Drawers/SceneViewCameraSettingsDrawer.cs" new file mode 100644 index 00000000..ce5d72bd --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/Editor/Property Drawers/SceneViewCameraSettingsDrawer.cs" @@ -0,0 +1,100 @@ +using UnityEditor; +using UnityEngine; + +namespace Unity.InteractiveTutorials +{ + [CustomPropertyDrawer(typeof(SceneViewCameraSettings))] + class SceneViewCameraSettingsDrawer : PropertyDrawer + { + const string k_CameraModePath = "m_CameraMode"; + const string k_FocusModePath = "m_FocusMode"; + const string k_OrthographicPath = "m_Orthographic"; + const string k_PivotPath = "m_Pivot"; + const string k_RotationPath = "m_Rotation"; + const string k_SizePath = "m_Size"; + const string k_FrameObjectPath = "m_FrameObject"; + const string k_EnabledPath = "m_Enabled"; + + static readonly float s_PaddedLineHeight = EditorGUIUtility.singleLineHeight + EditorGUIUtility.standardVerticalSpacing; + + public override float GetPropertyHeight(SerializedProperty property, GUIContent label) + { + float originalHeight = EditorGUI.GetPropertyHeight(property, label, true); + Rect position = new Rect(0, 0, EditorGUIUtility.currentViewWidth, originalHeight); + return DoGUI(position, property, label, true); + } + + public override void OnGUI(Rect position, SerializedProperty property, GUIContent label) + { + DoGUI(position, property, label, false); + } + + Rect DrawSubProperties(Rect original, SerializedProperty property, bool measureOnly, params string[] subpropertyNames) + { + Rect current = new Rect(original.x, original.y, original.width, EditorGUIUtility.singleLineHeight); + foreach (string name in subpropertyNames) + { + SerializedProperty subProperty = property.FindPropertyRelative(name); + current.height = EditorGUI.GetPropertyHeight(subProperty, true); + if (!measureOnly) + EditorGUI.PropertyField(current, subProperty, true); + current.y += current.height + EditorGUIUtility.standardVerticalSpacing; + } + current.height = original.height - (current.y - original.y); + return current; + } + + float DoGUI(Rect position, SerializedProperty property, GUIContent label, bool measureOnly) + { + Rect current = position; + using (new EditorGUI.PropertyScope(position, label, property)) + { + SerializedProperty enabled = property.FindPropertyRelative(k_EnabledPath); + if (!measureOnly) + property.isExpanded = enabled.boolValue = EditorGUI.ToggleLeft(new Rect(position.x, position.y, position.width, EditorGUIUtility.singleLineHeight), label, enabled.boolValue); + current.y += s_PaddedLineHeight; + current.height -= s_PaddedLineHeight; + if (!property.isExpanded) + return current.y - position.y; + + using (new EditorGUI.IndentLevelScope()) + { + current = DrawSubProperties(current, property, measureOnly, k_CameraModePath, k_FocusModePath); + + var focusMode = (SceneViewFocusMode)property.FindPropertyRelative(k_FocusModePath).enumValueIndex; + switch (focusMode) + { + case SceneViewFocusMode.Manual: + current = DrawSubProperties(current, property, measureOnly, k_OrthographicPath, k_PivotPath, k_RotationPath, k_SizePath); + break; + case SceneViewFocusMode.FrameObject: + current = DrawSubProperties(current, property, measureOnly, k_FrameObjectPath); + break; + default: + break; + } + + if (focusMode == SceneViewFocusMode.Manual) + { + current.height = EditorGUIUtility.singleLineHeight; + current = EditorGUI.IndentedRect(current); + if (!measureOnly && GUI.Button(current, "Store Current Scene View Camera Settings")) + { + SceneView sceneView = EditorWindow.GetWindow(); + property.FindPropertyRelative(k_CameraModePath).intValue = (int)( + sceneView.in2DMode ? + SceneViewCameraMode.SceneView2D : SceneViewCameraMode.SceneView3D + ); + property.FindPropertyRelative(k_OrthographicPath).boolValue = sceneView.orthographic; + property.FindPropertyRelative(k_SizePath).floatValue = sceneView.size; + property.FindPropertyRelative(k_PivotPath).vector3Value = sceneView.pivot; + property.FindPropertyRelative(k_RotationPath).quaternionValue = sceneView.rotation; + } + current.y += s_PaddedLineHeight; + } + } + } + return current.y - position.y; + } + } +} diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/Editor/Property Drawers/SceneViewCameraSettingsDrawer.cs.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/Editor/Property Drawers/SceneViewCameraSettingsDrawer.cs.meta" new file mode 100644 index 00000000..92cd9250 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/Editor/Property Drawers/SceneViewCameraSettingsDrawer.cs.meta" @@ -0,0 +1,12 @@ +fileFormatVersion: 2 +guid: b22c6f7a68714486dbff9f646fd6dbc5 +timeCreated: 1486299647 +licenseType: Pro +MonoImporter: + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/Editor/Property Drawers/SerializedTypeDrawer.cs" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/Editor/Property Drawers/SerializedTypeDrawer.cs" new file mode 100644 index 00000000..47e73ed6 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/Editor/Property Drawers/SerializedTypeDrawer.cs" @@ -0,0 +1,171 @@ +using System; +using System.Collections.Generic; +using System.Linq; +using System.Reflection; +using UnityEditor; +using UnityEngine; + +using UnityObject = UnityEngine.Object; + +namespace Unity.InteractiveTutorials +{ + [CustomPropertyDrawer(typeof(SerializedType))] + class SerializedTypeDrawer : PropertyDrawer + { + private const string k_TypeNamePath = "m_TypeName"; + + private static GUIStyle preDropGlow + { + get + { + if (s_PreDropGlow == null) + { + s_PreDropGlow = new GUIStyle(GUI.skin.GetStyle("TL SelectionButton PreDropGlow")); + s_PreDropGlow.stretchHeight = true; + s_PreDropGlow.stretchWidth = true; + } + return s_PreDropGlow; + } + } + private static GUIStyle s_PreDropGlow; + + class Options + { + public GUIContent[] displayedOptions; + public string[] assemblyQualifiedNames; + public bool dragging; + + public Options(Type baseType) + { + var allowedTypes = new HashSet(); + foreach (var assembly in AppDomain.CurrentDomain.GetAssemblies()) + { + if (assembly == null) + continue; + + try + { + foreach (var type in assembly.GetTypes()) + { + if (baseType.IsAssignableFrom(type)) + allowedTypes.Add(type); + } + } + catch (ReflectionTypeLoadException) + { + } + } + + allowedTypes.Remove(baseType); + + var optionCount = allowedTypes.Count() + 1; + displayedOptions = new GUIContent[optionCount]; + assemblyQualifiedNames = new string[optionCount]; + + var index = 0; + displayedOptions[index] = new GUIContent(string.Format("None ({0})", baseType.FullName)); + assemblyQualifiedNames[index] = ""; + index++; + + foreach (var allowedType in allowedTypes.OrderBy(t => t.FullName)) + { + displayedOptions[index] = new GUIContent(allowedType.FullName); + assemblyQualifiedNames[index] = allowedType.AssemblyQualifiedName; + index++; + } + } + } + + Dictionary m_PropertyPathToOptions = new Dictionary(); + + public override float GetPropertyHeight(SerializedProperty property, GUIContent label) + { + return EditorGUIUtility.singleLineHeight; + } + + public override void OnGUI(Rect position, SerializedProperty property, GUIContent label) + { + Options options; + if (!m_PropertyPathToOptions.TryGetValue(property.propertyPath, out options)) + { + var filterAttribute = Attribute.GetCustomAttribute(fieldInfo, typeof(SerializedTypeFilterAttributeBase), true) as SerializedTypeFilterAttributeBase; + options = new Options(filterAttribute.baseType); + m_PropertyPathToOptions[property.propertyPath] = options; + } + + var typeNameProperty = property.FindPropertyRelative(k_TypeNamePath); + var selectedIndex = ArrayUtility.IndexOf(options.assemblyQualifiedNames, typeNameProperty.stringValue); + if (selectedIndex == -1) + selectedIndex = 0; + + EditorGUI.BeginProperty(position, label, property); + + EditorGUI.BeginChangeCheck(); + var newIndex = EditorGUI.Popup(position, label, selectedIndex, options.displayedOptions); + HandleDraggingToPopup(position, options, ref newIndex, property, typeNameProperty); + if (EditorGUI.EndChangeCheck()) + typeNameProperty.stringValue = options.assemblyQualifiedNames[newIndex]; + + EditorGUI.EndProperty(); + } + + private void RebuildOptions(SerializedProperty property) + { + m_PropertyPathToOptions.Remove(property.propertyPath); + } + + private void HandleDraggingToPopup(Rect dropPosition, Options options, ref int index, SerializedProperty property, SerializedProperty typeNameProperty) + { + if (dropPosition.Contains(Event.current.mousePosition)) + { + switch (Event.current.type) + { + case EventType.DragExited: + options.dragging = false; + RebuildOptions(property); + if (GUI.enabled) + HandleUtility.Repaint(); + break; + + case EventType.DragPerform: + case EventType.DragUpdated: + options.dragging = true; + DragAndDrop.visualMode = DragAndDropVisualMode.Generic; + if (Event.current.type == EventType.DragPerform) + { + UnityObject selection = DragAndDrop.objectReferences.FirstOrDefault(o => o != null); + if (selection != null) + { + var type = selection.GetType(); + if (type == null) + index = 0; + else + { + index = ArrayUtility.IndexOf(options.assemblyQualifiedNames, type.AssemblyQualifiedName); + if (index == -1) + index = 0; + } + + GUI.changed = true; + DragAndDrop.AcceptDrag(); + DragAndDrop.activeControlID = 0; + Event.current.Use(); + } + } + break; + } + } + else + { + if (options.dragging) + { + if (GUI.enabled) + HandleUtility.Repaint(); + } + options.dragging = false; + } + if (options.dragging) + GUI.Box(dropPosition, "", preDropGlow); + } + } +} diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/Editor/Property Drawers/SerializedTypeDrawer.cs.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/Editor/Property Drawers/SerializedTypeDrawer.cs.meta" new file mode 100644 index 00000000..88865f85 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/Editor/Property Drawers/SerializedTypeDrawer.cs.meta" @@ -0,0 +1,12 @@ +fileFormatVersion: 2 +guid: deb7a8a6293954ba0a4520fb0696c929 +timeCreated: 1489653233 +licenseType: Pro +MonoImporter: + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/Editor/Property Drawers/TutorialParagraphCollectionDrawer.cs" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/Editor/Property Drawers/TutorialParagraphCollectionDrawer.cs" new file mode 100644 index 00000000..30c566d1 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/Editor/Property Drawers/TutorialParagraphCollectionDrawer.cs" @@ -0,0 +1,33 @@ +using UnityEditor; +using UnityEditorInternal; +using UnityEngine; + +namespace Unity.InteractiveTutorials +{ + [CustomPropertyDrawer(typeof(TutorialParagraphCollection))] + class TutorialParagraphCollectionDrawer : CollectionWrapperDrawer + { + const string k_TypePath = "m_Type"; + const string k_TextPath = "m_Text"; + const string k_SummaryPath = "m_Summary"; + const string k_IconsPath = "m_Icons.m_Items"; + const string k_CriteriaPath = "m_Criteria.m_Items"; + + + protected override void OnReorderableListCreated(ReorderableList list) + { + base.OnReorderableListCreated(list); + list.onAddCallback = delegate(ReorderableList lst) { + ++lst.serializedProperty.arraySize; + lst.serializedProperty.serializedObject.ApplyModifiedProperties(); + var lastElement = lst.serializedProperty.GetArrayElementAtIndex(lst.serializedProperty.arraySize - 1); + lastElement.FindPropertyRelative(k_TypePath).intValue = 0; + lastElement.FindPropertyRelative(k_TextPath).stringValue = ""; + lastElement.FindPropertyRelative(k_SummaryPath).stringValue = ""; + lastElement.FindPropertyRelative(k_IconsPath).arraySize = 0; + lastElement.FindPropertyRelative(k_CriteriaPath).arraySize = 0; + list.serializedProperty.serializedObject.ApplyModifiedProperties(); + }; + } + } +} diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/Editor/Property Drawers/TutorialParagraphCollectionDrawer.cs.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/Editor/Property Drawers/TutorialParagraphCollectionDrawer.cs.meta" new file mode 100644 index 00000000..37a8cbc3 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/Editor/Property Drawers/TutorialParagraphCollectionDrawer.cs.meta" @@ -0,0 +1,12 @@ +fileFormatVersion: 2 +guid: 0e47ffb7444dc4d2da99063e62153762 +timeCreated: 1490000646 +licenseType: Pro +MonoImporter: + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/Editor/Property Drawers/TutorialParagraphDrawer.cs" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/Editor/Property Drawers/TutorialParagraphDrawer.cs" new file mode 100644 index 00000000..0c019eac --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/Editor/Property Drawers/TutorialParagraphDrawer.cs" @@ -0,0 +1,94 @@ +using UnityEditor; +using UnityEngine; + +namespace Unity.InteractiveTutorials +{ + [CustomPropertyDrawer(typeof(TutorialParagraph))] + class TutorialParagraphDrawer : FlushChildrenDrawer + { + const string k_TypePath = "m_Type"; + const string k_TextPath = "m_Text"; + const string k_IconsPath = "m_Icons"; + const string k_CriteriaPath = "m_Criteria"; + const string k_SummaryPath = "m_Summary"; + const string k_CompletionPath = "m_CriteriaCompletion"; + const string k_TutorialPath = "m_Tutorial"; + const string k_TutorialButtonTextPath = "m_TutorialButtonText"; + const string k_ImagePath = "m_Image"; + const string k_VideoPath = "m_Video"; + + protected override void DisplayChildProperty( + Rect position, SerializedProperty parentProperty, SerializedProperty childProperty, GUIContent label + ) + { + ParagraphType type = (ParagraphType)parentProperty.FindPropertyRelative(k_TypePath).intValue; + switch (childProperty.name) + { + case k_TextPath: + if (type == ParagraphType.Icons || type == ParagraphType.SwitchTutorial || type == ParagraphType.Image || type == ParagraphType.Video) + return; + break; + case k_IconsPath: + if (type != ParagraphType.Icons) + return; + break; + case k_TutorialButtonTextPath: + case k_TutorialPath: + if (type != ParagraphType.SwitchTutorial) + return; + break; + case k_CriteriaPath: + case k_CompletionPath: + if (type != ParagraphType.Instruction) + return; + break; + case k_SummaryPath: + if (type != ParagraphType.Instruction) + return; + break; + case k_ImagePath: + if (type != ParagraphType.Image) + return; + break; + case k_VideoPath: + if (type != ParagraphType.Video) + return; + break; + } + base.DisplayChildProperty(position, parentProperty, childProperty, label); + } + + protected override float GetChildPropertyHeight(SerializedProperty parentProperty, SerializedProperty childProperty) + { + ParagraphType type = (ParagraphType)parentProperty.FindPropertyRelative(k_TypePath).intValue; + switch (childProperty.name) + { + case k_TextPath: + if (type == ParagraphType.Icons || type == ParagraphType.Image || type == ParagraphType.Video) + return -EditorGUIUtility.standardVerticalSpacing; + break; + case k_IconsPath: + if (type != ParagraphType.Icons) + return -EditorGUIUtility.standardVerticalSpacing; + break; + case k_CriteriaPath: + if (type != ParagraphType.Instruction) + return -EditorGUIUtility.standardVerticalSpacing; + break; + case k_SummaryPath: + if (type != ParagraphType.Instruction) + return -EditorGUIUtility.standardVerticalSpacing; + break; + case k_ImagePath: + if (type != ParagraphType.Image) + return -EditorGUIUtility.standardVerticalSpacing; + break; + case k_VideoPath: + if (type != ParagraphType.Video) + return -EditorGUIUtility.standardVerticalSpacing; + break; + } + return base.GetChildPropertyHeight(parentProperty, childProperty); + } + } +} diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/Editor/Property Drawers/TutorialParagraphDrawer.cs.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/Editor/Property Drawers/TutorialParagraphDrawer.cs.meta" new file mode 100644 index 00000000..446e7919 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/Editor/Property Drawers/TutorialParagraphDrawer.cs.meta" @@ -0,0 +1,12 @@ +fileFormatVersion: 2 +guid: 1976de4fadf654cc4bfa2ff0dda1317c +timeCreated: 1486299526 +licenseType: Pro +MonoImporter: + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/Editor/Property Drawers/TypedCriterionCollectionDrawer.cs" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/Editor/Property Drawers/TypedCriterionCollectionDrawer.cs" new file mode 100644 index 00000000..1ae6e9b4 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/Editor/Property Drawers/TypedCriterionCollectionDrawer.cs" @@ -0,0 +1,26 @@ +using UnityEditor; +using UnityEditorInternal; +using UnityEngine; + +namespace Unity.InteractiveTutorials +{ + [CustomPropertyDrawer(typeof(TypedCriterionCollection))] + class TypedCriterionCollectionDrawer : CollectionWrapperDrawer + { + const string k_TypeNamePath = "type.m_TypeName"; + const string k_CriterionPropertyPath = "criterion"; + + protected override void OnReorderableListCreated(ReorderableList list) + { + base.OnReorderableListCreated(list); + list.onAddCallback = delegate(ReorderableList lst) { + ++lst.serializedProperty.arraySize; + lst.serializedProperty.serializedObject.ApplyModifiedProperties(); + var lastElement = lst.serializedProperty.GetArrayElementAtIndex(lst.serializedProperty.arraySize - 1); + lastElement.FindPropertyRelative(k_TypeNamePath).stringValue = ""; + lastElement.FindPropertyRelative(k_CriterionPropertyPath).objectReferenceValue = null; + list.serializedProperty.serializedObject.ApplyModifiedProperties(); + }; + } + } +} diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/Editor/Property Drawers/TypedCriterionCollectionDrawer.cs.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/Editor/Property Drawers/TypedCriterionCollectionDrawer.cs.meta" new file mode 100644 index 00000000..9bb9ff0d --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/Editor/Property Drawers/TypedCriterionCollectionDrawer.cs.meta" @@ -0,0 +1,12 @@ +fileFormatVersion: 2 +guid: 377dd336250104f21a24ed92e4343319 +timeCreated: 1489680292 +licenseType: Pro +MonoImporter: + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/Editor/Property Drawers/TypedCriterionDrawer.cs" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/Editor/Property Drawers/TypedCriterionDrawer.cs" new file mode 100644 index 00000000..1fb38fdf --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/Editor/Property Drawers/TypedCriterionDrawer.cs" @@ -0,0 +1,136 @@ +using System; +using System.Linq; +using System.Collections.Generic; +using UnityEditor; +using UnityEngine; + +using UnityObject = UnityEngine.Object; + +namespace Unity.InteractiveTutorials +{ + [CustomPropertyDrawer(typeof(TypedCriterion))] + class TypedCriterionDrawer : PropertyDrawer + { + // criterionProperty is a SerializedProperty on the SerializedObject for the Criterion + delegate void PropertyIteratorCallback(SerializedProperty criterionProperty); + + const string k_TypeField = "type"; + const string k_CriterionField = "criterion"; + + Dictionary m_PerPropertyCriterionSerializedObjects = + new Dictionary(); + + Rect m_CriterionPropertyRect; + + public override float GetPropertyHeight(SerializedProperty property, GUIContent label) + { + property.isExpanded = true; + var height = EditorGUIUtility.singleLineHeight + EditorGUIUtility.standardVerticalSpacing; + IterateCriterion( + property.FindPropertyRelative(k_CriterionField), + p => height += EditorGUI.GetPropertyHeight(p) + EditorGUIUtility.standardVerticalSpacing + ); + height -= EditorGUIUtility.standardVerticalSpacing; + return height; + } + + public override void OnGUI(Rect position, SerializedProperty property, GUIContent label) + { + EditorGUI.BeginChangeCheck(); + Rect typeFieldPosition = position; + typeFieldPosition.height = EditorGUIUtility.singleLineHeight; + EditorGUI.PropertyField(typeFieldPosition, property.FindPropertyRelative(k_TypeField)); + if (EditorGUI.EndChangeCheck()) + OnCriterionTypeChanged(property); + + position.y += typeFieldPosition.height + EditorGUIUtility.standardVerticalSpacing; + position.height -= typeFieldPosition.height + EditorGUIUtility.standardVerticalSpacing; + m_CriterionPropertyRect = position; + IterateCriterion(property.FindPropertyRelative(k_CriterionField), OnGUIIterateCriterion); + } + + SerializedObject GetSerializedObject(SerializedProperty criterionProperty) + { + if (criterionProperty.objectReferenceValue == null) + return null; + + string key = criterionProperty.propertyPath; + SerializedObject serializedObject; + var found = m_PerPropertyCriterionSerializedObjects.TryGetValue(key, out serializedObject); + if (!found || serializedObject.targetObject == null) + { + serializedObject = new SerializedObject(criterionProperty.objectReferenceValue); + m_PerPropertyCriterionSerializedObjects[key] = serializedObject; + } + + return serializedObject; + } + + void IterateCriterion(SerializedProperty criterion, PropertyIteratorCallback onIterateChildProperty) + { + if (criterion.objectReferenceValue == null) + return; + + var serializedObject = GetSerializedObject(criterion); + if (serializedObject == null) + return; + + var childProperty = serializedObject.GetIterator(); + childProperty.NextVisible(true); + while (childProperty.NextVisible(childProperty.isExpanded)) + { + if (string.Equals(childProperty.propertyPath, "m_Script", StringComparison.Ordinal)) + continue; + + onIterateChildProperty(childProperty); + } + } + + void OnGUIIterateCriterion(SerializedProperty criterionProperty) + { + criterionProperty.serializedObject.Update(); + + EditorGUI.BeginChangeCheck(); + + m_CriterionPropertyRect.height = EditorGUI.GetPropertyHeight(criterionProperty); + EditorGUI.PropertyField(m_CriterionPropertyRect, criterionProperty, true); + m_CriterionPropertyRect.y += m_CriterionPropertyRect.height + EditorGUIUtility.standardVerticalSpacing; + + if (EditorGUI.EndChangeCheck()) + { + criterionProperty.serializedObject.ApplyModifiedProperties(); + } + } + + void OnCriterionTypeChanged(SerializedProperty parentProperty) + { + var criterionProperty = parentProperty.FindPropertyRelative(k_CriterionField); + + if (criterionProperty.objectReferenceValue != null) + Undo.DestroyObjectImmediate(criterionProperty.objectReferenceValue); + + var criterionType = System.Type.GetType( + parentProperty.FindPropertyRelative(k_TypeField).FindPropertyRelative("m_TypeName").stringValue + ); + + if (criterionType != null) + { + var criterion = ScriptableObject.CreateInstance(criterionType); + Undo.RegisterCreatedObjectUndo(criterion, "Change Criterion"); + criterion.hideFlags |= HideFlags.HideInHierarchy; + + AssetDatabase.AddObjectToAsset(criterion, parentProperty.serializedObject.targetObject); + string parentAssetPath = AssetDatabase.GetAssetPath(parentProperty.serializedObject.targetObject); + AssetDatabase.ImportAsset(parentAssetPath); + + criterionProperty.objectReferenceValue = criterion; + + m_PerPropertyCriterionSerializedObjects.Clear(); + } + else + { + criterionProperty.objectReferenceValue = null; + } + } + } +} diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/Editor/Property Drawers/TypedCriterionDrawer.cs.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/Editor/Property Drawers/TypedCriterionDrawer.cs.meta" new file mode 100644 index 00000000..5c65a2f7 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/Editor/Property Drawers/TypedCriterionDrawer.cs.meta" @@ -0,0 +1,12 @@ +fileFormatVersion: 2 +guid: ad51dd70bcde747ee800498be5d634c3 +timeCreated: 1489492808 +licenseType: Pro +MonoImporter: + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/Editor/Property Drawers/UnmaskedViewDrawer.cs" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/Editor/Property Drawers/UnmaskedViewDrawer.cs" new file mode 100644 index 00000000..135866dc --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/Editor/Property Drawers/UnmaskedViewDrawer.cs" @@ -0,0 +1,107 @@ +using System.Collections.Generic; +using UnityEditor; +using UnityEditorInternal; +using UnityEngine; + +namespace Unity.InteractiveTutorials +{ + [CustomPropertyDrawer(typeof(UnmaskedView))] + public class UnmaskedViewDrawer : PropertyDrawer + { + private const string k_SelectorTypePath = "m_SelectorType"; + private const string k_ViewTypePath = "m_ViewType"; + private const string k_EditorWindowTypePath = "m_EditorWindowType"; + const string k_AlternateEditorWindowTypesPath = "m_AlternateEditorWindowTypes"; + private const string k_UnmaskedControlsPath = "m_UnmaskedControls"; + private const string k_UnmaskTypePath = "m_MaskType"; + private const string k_MaskSizeModifierPath = "m_MaskSizeModifier"; + + private readonly Dictionary m_UnmaskedControlsPerPropertyPath = + new Dictionary(); + + public override float GetPropertyHeight(SerializedProperty property, GUIContent label) + { + var selectorType = property.FindPropertyRelative(k_SelectorTypePath); + var height = EditorGUI.GetPropertyHeight(selectorType) + EditorGUIUtility.standardVerticalSpacing; + switch ((UnmaskedView.SelectorType)selectorType.intValue) + { + case UnmaskedView.SelectorType.EditorWindow: + height += EditorGUI.GetPropertyHeight(property.FindPropertyRelative(k_EditorWindowTypePath), true); + height += EditorGUI.GetPropertyHeight(property.FindPropertyRelative(k_AlternateEditorWindowTypesPath), true); + break; + case UnmaskedView.SelectorType.GUIView: + height += EditorGUI.GetPropertyHeight(property.FindPropertyRelative(k_ViewTypePath), true); + break; + } + height += EditorGUI.GetPropertyHeight(property.FindPropertyRelative(k_UnmaskTypePath)); + height += EditorGUI.GetPropertyHeight(property.FindPropertyRelative(k_MaskSizeModifierPath)); + var listControl = GetListControl(property); + height += EditorGUIUtility.standardVerticalSpacing + listControl.GetHeight(); + return height; + } + + public override void OnGUI(Rect position, SerializedProperty property, GUIContent label) + { + var selectorType = property.FindPropertyRelative(k_SelectorTypePath); + position.height = EditorGUI.GetPropertyHeight(selectorType, true); + EditorGUI.PropertyField(position, selectorType); + + position.y += position.height + EditorGUIUtility.standardVerticalSpacing; + SerializedProperty typeProperty = null; + switch ((UnmaskedView.SelectorType)selectorType.intValue) + { + case UnmaskedView.SelectorType.EditorWindow: + typeProperty = property.FindPropertyRelative(k_EditorWindowTypePath); + break; + case UnmaskedView.SelectorType.GUIView: + typeProperty = property.FindPropertyRelative(k_ViewTypePath); + break; + } + position.height = EditorGUI.GetPropertyHeight(typeProperty, true); + EditorGUI.PropertyField(position, typeProperty); + + if ((UnmaskedView.SelectorType)selectorType.intValue == UnmaskedView.SelectorType.EditorWindow) + { + position.y += position.height + EditorGUIUtility.standardVerticalSpacing; + var alternativeEditorWindowTypes = property.FindPropertyRelative(k_AlternateEditorWindowTypesPath); + position.height = EditorGUI.GetPropertyHeight(alternativeEditorWindowTypes, true); + EditorGUI.PropertyField(position, alternativeEditorWindowTypes); + } + + position.y += position.height + EditorGUIUtility.standardVerticalSpacing; + var unmaskType = property.FindPropertyRelative(k_UnmaskTypePath); + position.height = EditorGUI.GetPropertyHeight(unmaskType, true); + EditorGUI.PropertyField(position, unmaskType); + + position.y += position.height + EditorGUIUtility.standardVerticalSpacing; + var maskSizeModifier = property.FindPropertyRelative(k_MaskSizeModifierPath); + position.height = EditorGUI.GetPropertyHeight(maskSizeModifier, true); + EditorGUI.PropertyField(position, maskSizeModifier); + + position.y += position.height + EditorGUIUtility.standardVerticalSpacing; + var listControl = GetListControl(property); + position.height = listControl.GetHeight(); + position = EditorGUI.IndentedRect(position); + using (new EditorGUI.IndentLevelScope(-EditorGUI.indentLevel)) + listControl.DoList(position); + } + + private ReorderableList GetListControl(SerializedProperty parentProperty) + { + string key = parentProperty.propertyPath; + ReorderableList list; + if (!m_UnmaskedControlsPerPropertyPath.TryGetValue(key, out list)) + { + list = new ReorderableList(parentProperty.serializedObject, parentProperty.FindPropertyRelative(k_UnmaskedControlsPath)); + list.drawHeaderCallback = rect => EditorGUI.LabelField(rect, "Unmasked Controls"); + list.elementHeightCallback = index => + EditorGUI.GetPropertyHeight(list.serializedProperty.GetArrayElementAtIndex(index), true) + + EditorGUIUtility.standardVerticalSpacing; + list.drawElementCallback = (rect, index, isActive, isFocused) => + EditorGUI.PropertyField(rect, list.serializedProperty.GetArrayElementAtIndex(index), true); + m_UnmaskedControlsPerPropertyPath[key] = list; + } + return list; + } + } +} diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/Editor/Property Drawers/UnmaskedViewDrawer.cs.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/Editor/Property Drawers/UnmaskedViewDrawer.cs.meta" new file mode 100644 index 00000000..10d4520a --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/Editor/Property Drawers/UnmaskedViewDrawer.cs.meta" @@ -0,0 +1,12 @@ +fileFormatVersion: 2 +guid: be9c0e6717d8741a480064be6dd77412 +timeCreated: 1493977273 +licenseType: Pro +MonoImporter: + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/Editor/SceneObjectReference.cs" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/Editor/SceneObjectReference.cs" new file mode 100644 index 00000000..15aecb90 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/Editor/SceneObjectReference.cs" @@ -0,0 +1,283 @@ +using System; +using UnityEditor; +using UnityEditor.SceneManagement; +using UnityEngine; +using UnityEngine.SceneManagement; +using Unity.InteractiveTutorials; +using Object = UnityEngine.Object; + + +[Serializable] +public class SceneObjectReference +{ + [SerializeField] + private string m_SceneGuid; + [SerializeField] + private string m_GameObjectGuid; + [SerializeField] + private SerializedType m_SerializedComponentType = new SerializedType(null); + [SerializeField] + private int m_ComponentIndex; + [SerializeField] + private Object m_AssetObject; + [SerializeField] + private GameObject m_Prefab; + + [NonSerialized] + private bool m_Initialized; + [NonSerialized] + private Object m_ReferencedObject; + + private SerializedProperty m_SceneGuidProperty; + private SerializedProperty m_GameObjectGuidProperty; + private SerializedProperty m_ComponentTypeProperty; + private SerializedProperty m_SerializedComponentTypeProperty; + private SerializedProperty m_ComponentIndexProperty; + private SerializedProperty m_AssetObjectProperty; + private SerializedProperty m_PrefabProperty; + + public Object ReferencedObject + { + get + { + if (!m_Initialized) + { + Init(); + } + return m_ReferencedObject; + } + } + + public GameObject ReferencedObjectAsGameObject + { + get { return ReferencedObject as GameObject; } + } + + public Component ReferencedObjectAsComponent + { + get { return ReferencedObject as Component; } + } + + public bool IsGameObjectReference + { + get { return !string.IsNullOrEmpty(m_GameObjectGuid) && m_Prefab == null && m_SerializedComponentType.type == null && m_AssetObject == null; } + } + + public bool IsComponentReference + { + get { return !string.IsNullOrEmpty(m_GameObjectGuid) && m_Prefab == null && m_SerializedComponentType.type != null && m_AssetObject == null; } + } + + public bool IsAssetReference + { + get { return string.IsNullOrEmpty(m_GameObjectGuid) && m_Prefab == null && m_SerializedComponentType.type == null && m_AssetObject != null; } + } + + public bool IsPrefabReference + { + get { return string.IsNullOrEmpty(m_GameObjectGuid) && m_Prefab != null && m_SerializedComponentType.type == null && m_AssetObject == null; } + } + + public bool ReferenceResolved + { + get + { + return m_AssetObject != null || ReferencedObject != null || string.IsNullOrEmpty(m_GameObjectGuid); + } + } + + public SceneAsset ReferenceScene + { + get + { + return AssetDatabase.LoadAssetAtPath(AssetDatabase.GUIDToAssetPath(m_SceneGuid)); + } + } + + public SceneObjectReference() + { + } + + public SceneObjectReference(SerializedProperty property) + { + m_SceneGuidProperty = property.FindPropertyRelative("m_SceneGuid"); + m_GameObjectGuidProperty = property.FindPropertyRelative("m_GameObjectGuid"); + m_SerializedComponentTypeProperty = property.FindPropertyRelative("m_SerializedComponentType.m_TypeName"); + m_ComponentIndexProperty = property.FindPropertyRelative("m_ComponentIndex"); + m_AssetObjectProperty = property.FindPropertyRelative("m_AssetObject"); + m_PrefabProperty = property.FindPropertyRelative("m_Prefab"); + + m_SceneGuid = m_SceneGuidProperty.stringValue; + m_GameObjectGuid = m_GameObjectGuidProperty.stringValue; + m_SerializedComponentType = new SerializedType(Type.GetType(m_SerializedComponentTypeProperty.stringValue)); + m_ComponentIndex = m_ComponentIndexProperty.intValue; + m_AssetObject = m_AssetObjectProperty.objectReferenceValue; + m_Prefab = m_PrefabProperty.objectReferenceValue as GameObject; + + Init(); + } + + private void Init() + { + m_Initialized = true; + m_ReferencedObject = null; + + EditorSceneManager.sceneOpened += OnSceneOpened; + SceneManager.sceneLoaded += OnSceneLoaded; + + if (m_AssetObject != null) + { + m_ReferencedObject = m_AssetObject; + return; + } + + if (m_Prefab != null) + { + m_ReferencedObject = m_Prefab; + return; + } + + if (string.IsNullOrEmpty(m_GameObjectGuid)) + { + return; + } + + var guidComponent = SceneObjectGUIDManager.instance.GetComponent(m_GameObjectGuid); + if (guidComponent == null) + { + return; + } + GameObject go; + m_ReferencedObject = go = guidComponent.gameObject; + if (m_SerializedComponentType.type == null) + return; + var componentType = m_SerializedComponentType.type; + if (componentType == null) + return; + var components = go.GetComponents(componentType); + + if (components.Length == 0) + { + Debug.LogWarning("Component " + componentType + " not found."); + ResetReference(); + SaveProperties(); + return; + } + + if (m_ComponentIndex + 1 > components.Length) + { + Debug.LogWarning("Component with given index " + m_ComponentIndex + " did not exist"); + m_ComponentIndexProperty.intValue = m_ComponentIndex = 0; + } + m_ReferencedObject = components[m_ComponentIndex]; + } + + private void OnSceneLoaded(Scene scene, LoadSceneMode mode) + { + ResetInitialization(); + } + + private void OnSceneOpened(Scene scene, OpenSceneMode mode) + { + ResetInitialization(); + } + + private void OnSceneClosed(Scene scene) + { + ResetInitialization(); + } + + public void Update(UnityEngine.Object newObject) + { + ResetInitialization(); + ResetReference(); + if (newObject == null) + { + SaveProperties(); + return; + } + + SceneObjectGUIDComponent guidComponent = null; + Component component = null; + GameObject go = null; + + if (newObject is Component) + { + component = newObject as Component; + go = component.gameObject; + guidComponent = go.GetComponent(); + m_SerializedComponentType = new SerializedType(component.GetType()); + m_ComponentIndex = Array.IndexOf(go.GetComponents(component.GetType()), component); + } + else if (newObject is GameObject) + { + go = newObject as GameObject; + if (PrefabUtility.IsPartOfPrefabAsset(go)) + { + m_Prefab = go; + SaveProperties(); + return; + } + guidComponent = go.GetComponent(); + } + else + { + m_ReferencedObject = m_AssetObject = newObject; + SaveProperties(); + return; + } + + if (guidComponent == null) + { + guidComponent = go.AddComponent(); + Undo.RegisterCreatedObjectUndo(guidComponent, "Created GUID component"); + } + + m_GameObjectGuid = guidComponent.id; + m_SceneGuid = GetSceneId(go); + if (string.IsNullOrEmpty(m_SceneGuid)) + { + Debug.LogError("The scene needs to be saved"); + return; + } + + SaveProperties(); + } + + private void ResetReference() + { + m_SceneGuid = m_GameObjectGuid = null; + m_SerializedComponentType = new SerializedType(null); + m_ComponentIndex = 0; + m_AssetObject = null; + m_ReferencedObject = null; + m_Prefab = null; + } + + private void ResetInitialization() + { + m_Initialized = false; + EditorSceneManager.sceneOpened -= OnSceneOpened; + SceneManager.sceneLoaded -= OnSceneLoaded; + } + + private void SaveProperties() + { + if (m_GameObjectGuidProperty == null) + { + return; + } + m_GameObjectGuidProperty.stringValue = m_GameObjectGuid; + m_SceneGuidProperty.stringValue = m_SceneGuid; + m_SerializedComponentTypeProperty.stringValue = m_SerializedComponentType.type == null ? "" : m_SerializedComponentType.type.AssemblyQualifiedName; + m_ComponentIndexProperty.intValue = m_ComponentIndex; + m_AssetObjectProperty.objectReferenceValue = m_AssetObject; + m_PrefabProperty.objectReferenceValue = m_Prefab; + } + + string GetSceneId(GameObject gameObject) + { + var scenePath = gameObject.scene.path; + return UnityEditor.AssetDatabase.AssetPathToGUID(scenePath); + } +} diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/Editor/SceneObjectReference.cs.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/Editor/SceneObjectReference.cs.meta" new file mode 100644 index 00000000..9c3b755d --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/Editor/SceneObjectReference.cs.meta" @@ -0,0 +1,12 @@ +fileFormatVersion: 2 +guid: 578f35ced525e774583a9a445389d397 +timeCreated: 1489573755 +licenseType: Pro +MonoImporter: + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/Editor/SerializedType.cs" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/Editor/SerializedType.cs" new file mode 100644 index 00000000..52ba2de2 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/Editor/SerializedType.cs" @@ -0,0 +1,39 @@ +using System; +using UnityEngine; + +namespace Unity.InteractiveTutorials +{ + [Serializable] + public class SerializedType : ISerializationCallbackReceiver + { + [SerializeField] + string m_TypeName; + + public Type type + { + get { return string.IsNullOrEmpty(m_TypeName) ? null : Type.GetType(m_TypeName); } + set { m_TypeName = value == null ? "" : value.AssemblyQualifiedName; } + } + + public SerializedType(Type type) + { + this.type = type; + } + + public void OnBeforeSerialize() + { + } + + public void OnAfterDeserialize() + { + // Remove "-testable" suffix from assembly names + if (!ProjectMode.IsAuthoringMode() && m_TypeName != null) + { + m_TypeName = m_TypeName.Replace("Assembly-CSharp-Editor-firstpass-testable", "Assembly-CSharp-Editor-firstpass"); + m_TypeName = m_TypeName.Replace("Assembly-CSharp-Editor-testable", "Assembly-CSharp-Editor"); + m_TypeName = m_TypeName.Replace("Assembly-CSharp-firstpass-testable", "Assembly-CSharp-firstpass"); + m_TypeName = m_TypeName.Replace("Assembly-CSharp-testable", "Assembly-CSharp"); + } + } + } +} diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/Editor/SerializedType.cs.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/Editor/SerializedType.cs.meta" new file mode 100644 index 00000000..4c0bd0e5 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/Editor/SerializedType.cs.meta" @@ -0,0 +1,12 @@ +fileFormatVersion: 2 +guid: 8faa8405ec3444e69b4ee6c8c8f91ce0 +timeCreated: 1489653232 +licenseType: Pro +MonoImporter: + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/Editor/Shims.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/Editor/Shims.meta" new file mode 100644 index 00000000..3a30eee6 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/Editor/Shims.meta" @@ -0,0 +1,3 @@ +fileFormatVersion: 2 +guid: 69b81770ec514ad9b3c9739563f665ff +timeCreated: 1523541463 \ No newline at end of file diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/Editor/Shims/PrefabUtilityShim.cs" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/Editor/Shims/PrefabUtilityShim.cs" new file mode 100644 index 00000000..84e80d4f --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/Editor/Shims/PrefabUtilityShim.cs" @@ -0,0 +1,16 @@ +using UnityEditor; + +namespace Unity.InteractiveTutorials +{ + public class PrefabUtilityShim + { + public static UnityEngine.Object GetCorrespondingObjectFromSource(UnityEngine.Object source) + { +#if UNITY_2018_2_OR_NEWER + return PrefabUtility.GetCorrespondingObjectFromSource(source); +#else + return PrefabUtility.GetPrefabParent(source); +#endif + } + } +} diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/Editor/Shims/PrefabUtilityShim.cs.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/Editor/Shims/PrefabUtilityShim.cs.meta" new file mode 100644 index 00000000..ec90900f --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/Editor/Shims/PrefabUtilityShim.cs.meta" @@ -0,0 +1,3 @@ +fileFormatVersion: 2 +guid: a9ebbb2b3b324dd6b92088ebbb7943d4 +timeCreated: 1523541477 \ No newline at end of file diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/Editor/TutorialContainer.cs" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/Editor/TutorialContainer.cs" new file mode 100644 index 00000000..007072bd --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/Editor/TutorialContainer.cs" @@ -0,0 +1,103 @@ +using System; +using System.IO; +using UnityEditor; +using UnityEngine; +using UnityEngine.Serialization; + +namespace Unity.InteractiveTutorials +{ + public class TutorialContainer : ScriptableObject + { + // The default layout used when a NUO project is started for the first time. + // TODO IET unit test the the file exist. + // TODO IET unit test the the layout contains TutorialWindow. + private const string k_DefaultLayout = + "Packages/com.unity.learn.iet-framework/Framework/Interactive Tutorials/TutorialInfo/Layout.wlt"; + // The original layout is copied into this. + internal const string k_UserLayoutPath = "Temp/UserLayout.wlt"; + + // Instead of icon we will use a header background for the new design. + [FormerlySerializedAs("icon")] + public Texture2D headerBackground; + public string title = ""; + public string projectName = ""; + public string description = ""; + [Tooltip("Can be used the override the default layout of the IET framework.")] + public UnityEngine.Object projectLayout = null; + public Section[] sections; + + public string projectLayoutPath => + projectLayout != null ? AssetDatabase.GetAssetPath(projectLayout) : k_DefaultLayout; + + [Serializable] + public class Section + { + public int orderInView; + public string heading; + public string text; + public string linkText; // text is not shown for new-style section cards, but required to make the card the open the URL + public string url; + public string buttonText; // not used for new-style section cards + [SerializeField] + private Tutorial tutorial = null; + public Texture2D image; + public Texture2D completedImage; + [NonSerialized] + public bool tutorialCompleted; + + // TODO rename, cards are now buttons inherently + public bool CanDrawButton => !string.IsNullOrEmpty(buttonText) && tutorial; + + public string TutorialId => tutorial?.lessonId ?? ""; + + public string EditorPrefsKey => $"Unity.InteractiveTutorials.lesson{TutorialId}"; + + public void StartTutorial() + { + TutorialManager.instance.StartTutorial(tutorial); + } + + // returns true if the state was found from EditorPrefs + public bool LoadState() + { + const string nonexisting = "NONEXISTING"; + var state = EditorPrefs.GetString(EditorPrefsKey, nonexisting); + if (state == "") + { + tutorialCompleted = false; + } + else if (state == "Finished") + { + tutorialCompleted = true; + } + return state != nonexisting; + } + + public void SaveState() + { + EditorPrefs.SetString(EditorPrefsKey, tutorialCompleted ? "Finished" : ""); + } + + } + + void OnValidate() + { + SortSections(); + for (int i = 0; i < sections.Length; ++i) + { + sections[i].orderInView = i * 2; + } + } + + void SortSections() + { + Array.Sort(sections, (x, y) => x.orderInView.CompareTo(y.orderInView)); + } + + public void LoadTutorialProjectLayout() + { + File.Copy(projectLayoutPath, k_UserLayoutPath, overwrite:true); + TutorialManager.LoadWindowLayout(k_UserLayoutPath); + } + } +} diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/Editor/TutorialContainer.cs.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/Editor/TutorialContainer.cs.meta" new file mode 100644 index 00000000..d27d429a --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/Editor/TutorialContainer.cs.meta" @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 89305aa391d1c5141bbe1628d930a2c5 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/Editor/TutorialManager.cs" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/Editor/TutorialManager.cs" new file mode 100644 index 00000000..df32c2c6 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/Editor/TutorialManager.cs" @@ -0,0 +1,335 @@ +using System; +using System.Collections.Generic; +using System.IO; +using System.Linq; +using UnityEditor; +using UnityEditor.SceneManagement; +using UnityEngine; +using UnityEngine.SceneManagement; + +namespace Unity.InteractiveTutorials +{ + class TutorialManager : ScriptableObject + { + internal const string k_OriginalLayoutPath = "Temp/OriginalLayout.dwlt"; + const string k_DefaultsFolder = "Tutorial Defaults"; + + static TutorialManager s_TutorialManager; + public static TutorialManager instance + { + get + { + if (s_TutorialManager == null) + { + s_TutorialManager = Resources.FindObjectsOfTypeAll().FirstOrDefault(); + if (s_TutorialManager == null) + { + s_TutorialManager = CreateInstance(); + s_TutorialManager.hideFlags = HideFlags.HideAndDontSave; + } + } + + return s_TutorialManager; + } + } + + Tutorial m_Tutorial; + + public static bool IsLoadingLayout { get; private set; } + + public static event Action aboutToLoadLayout; + public static event Action layoutLoaded; // bool == successful + + internal static TutorialWindow GetTutorialWindow() + { + return Resources.FindObjectsOfTypeAll().FirstOrDefault(); + } + + public void StartTutorial(Tutorial tutorial) + { + if (tutorial == null) + { + Debug.LogError("Null Tutorial."); + return; + } + + // NOTE maximizeOnPlay=true was causing problems at some point + // (tutorial was closed for some reason) but that problem seems to be gone. + // Keeping this here in case the problem returns. + //GameViewProxy.maximizeOnPlay = false; + + // Prevent Game view flashing briefly when starting tutorial. + EditorWindow.GetWindow().Focus(); + + // Is the previous tutorial finished? Make sure to record the progress. + // by trying to progress to the next page which will take care of it. + if (m_Tutorial && m_Tutorial.completed) + m_Tutorial.TryGoToNextPage(); + + m_Tutorial = tutorial; + + // Ensure we are in edit mode + if (EditorApplication.isPlaying) + { + EditorApplication.isPlaying = false; + EditorApplication.playModeStateChanged += PostponeStartTutorialToEditMode; + } + else + StartTutorialInEditMode(); + } + + void PostponeStartTutorialToEditMode(PlayModeStateChange playModeStateChange) + { + if (playModeStateChange == PlayModeStateChange.EnteredEditMode) + { + EditorApplication.playModeStateChanged -= PostponeStartTutorialToEditMode; + StartTutorialInEditMode(); + } + } + + void StartTutorialInEditMode() + { + // TODO HACK double delay to resolve various issue (e.g. black screen during save modifications dialog + // Revisit and fix properly. + EditorApplication.delayCall += delegate + { + EditorApplication.delayCall += delegate + { + if (!EditorSceneManager.SaveCurrentModifiedScenesIfUserWantsTo()) + return; + + // TODO document why this is done + EditorWindow.GetWindow().Focus(); + + SaveOriginalScenes(); + SaveOriginalWindowLayout(); + + m_Tutorial.LoadWindowLayout(); + + // Ensure TutorialWindow is open and set the current tutorial + var tutorialWindow = EditorWindow.GetWindow(); + tutorialWindow.SetTutorial(m_Tutorial); + + m_Tutorial.ResetProgress(); + + // Do not overwrite workspace in authoring mode, use version control instead. + if (!ProjectMode.IsAuthoringMode()) + LoadTutorialDefaultsIntoAssetsFolder(); + }; + }; + } + + public void RestoreOriginalState() + { + RestoreOriginalScenes(); + RestoreOriginalWindowLayout(); + } + + public void ResetTutorial() + { + var tutorialWindow = GetTutorialWindow(); + if (tutorialWindow == null || tutorialWindow.currentTutorial == null) + return; + + m_Tutorial = tutorialWindow.currentTutorial; + + // Ensure we are in edit mode + if (EditorApplication.isPlaying) + { + EditorApplication.isPlaying = false; + EditorApplication.playModeStateChanged += PostponeResetTutorialToEditMode; + } + else + StartTutorialInEditMode(); + } + + void PostponeResetTutorialToEditMode(PlayModeStateChange playModeStateChange) + { + if (playModeStateChange == PlayModeStateChange.EnteredEditMode) + { + EditorApplication.playModeStateChanged -= PostponeStartTutorialToEditMode; + ResetTutorialInEditMode(); + } + } + + void ResetTutorialInEditMode() + { + if (!EditorSceneManager.SaveCurrentModifiedScenesIfUserWantsTo()) + return; + + m_Tutorial.LoadWindowLayout(); + m_Tutorial.ResetProgress(); + + // Do not overwrite workspace in authoring mode, use version control instead. + if (!ProjectMode.IsAuthoringMode()) + LoadTutorialDefaultsIntoAssetsFolder(); + } + + static void SaveOriginalWindowLayout() + { + WindowLayoutProxy.SaveWindowLayout(k_OriginalLayoutPath); + } + + internal void RestoreOriginalWindowLayout() + { + if (File.Exists(k_OriginalLayoutPath)) + { + LoadWindowLayout(k_OriginalLayoutPath); + File.Delete(k_OriginalLayoutPath); + } + } + + public static bool LoadWindowLayout(string path) + { + IsLoadingLayout = true; + aboutToLoadLayout?.Invoke(); + var successful = EditorUtility.LoadWindowLayout(path); + if (!successful) + Debug.LogError($"Failed to load layout from \"{path}\"."); + layoutLoaded?.Invoke(successful); + IsLoadingLayout = false; + return successful; + } + + [Serializable] + struct SceneInfo + { + public string assetPath; + public bool wasLoaded; + } + + string m_OriginalActiveSceneAssetPath; + SceneInfo[] m_OriginalScenes; + + // Saves current state of open/loaded scenes so we can restore later + void SaveOriginalScenes() + { + m_OriginalActiveSceneAssetPath = SceneManager.GetActiveScene().path; + m_OriginalScenes = new SceneInfo[SceneManager.sceneCount]; + for (var sceneIndex = 0; sceneIndex < m_OriginalScenes.Length; sceneIndex++) + { + var scene = SceneManager.GetSceneAt(sceneIndex); + m_OriginalScenes[sceneIndex] = new SceneInfo + { + assetPath = scene.path, + wasLoaded = scene.isLoaded, + }; + } + } + + internal void RestoreOriginalScenes( ) + { + + // Don't restore scene state if we didn't save it in the first place + if (string.IsNullOrEmpty(m_OriginalActiveSceneAssetPath)) + return; + + // Exit play mode so we can open scenes (without necessarily loading them) + EditorApplication.isPlaying = false; + + foreach (var sceneInfo in m_OriginalScenes) + { + // Don't open scene if path is empty (this is the case for a new unsaved unmodified scene) + if (sceneInfo.assetPath == string.Empty) + continue; + + var openSceneMode = sceneInfo.wasLoaded ? OpenSceneMode.Additive : OpenSceneMode.AdditiveWithoutLoading; + EditorSceneManager.OpenScene(sceneInfo.assetPath, openSceneMode); + } + + var originalScenePaths = m_OriginalScenes.Select(sceneInfo => sceneInfo.assetPath).ToArray(); + for (var sceneIndex = 0; sceneIndex < SceneManager.sceneCount; sceneIndex++) + { + var scene = SceneManager.GetSceneAt(sceneIndex); + + // Set originally active scene + if (scene.path == m_OriginalActiveSceneAssetPath) + { + SceneManager.SetActiveScene(scene); + continue; + } + + // Close scene if was not opened originally + if (!originalScenePaths.Contains(scene.path)) + EditorSceneManager.CloseScene(scene, true); + } + + m_OriginalActiveSceneAssetPath = null; + } + + static void LoadTutorialDefaultsIntoAssetsFolder() + { + if (!TutorialProjectSettings.instance.restoreDefaultAssetsOnTutorialReload) + return; + + AssetDatabase.SaveAssets(); + string defaultsPath = Path.Combine(Directory.GetParent(Application.dataPath).FullName, k_DefaultsFolder); + var dirtyMetaFiles = new HashSet(); + DirectoryCopy(defaultsPath, Application.dataPath, dirtyMetaFiles); + AssetDatabase.Refresh(); + int startIndex = Application.dataPath.Length - "Assets".Length; + foreach (var dirtyMetaFile in dirtyMetaFiles) + AssetDatabase.ImportAsset(Path.ChangeExtension(dirtyMetaFile.Substring(startIndex), null)); + } + + internal static void WriteAssetsToTutorialDefaultsFolder() + { + if (!TutorialProjectSettings.instance.restoreDefaultAssetsOnTutorialReload) + return; + + if (EditorApplication.isPlaying) + { + Debug.LogError("Defaults cannot be written during play mode"); + return; + } + + string defaultsPath = Path.Combine(Directory.GetParent(Application.dataPath).FullName, k_DefaultsFolder); + DirectoryInfo defaultsDirectory = new DirectoryInfo(defaultsPath); + if (defaultsDirectory.Exists) + { + foreach (var file in defaultsDirectory.GetFiles()) + file.Delete(); + foreach (var directory in defaultsDirectory.GetDirectories()) + directory.Delete(true); + } + DirectoryCopy(Application.dataPath, defaultsPath, null); + } + + static void DirectoryCopy(string sourceDirectory, string destinationDirectory, HashSet dirtyMetaFiles) + { + // Get the subdirectories for the specified directory. + DirectoryInfo dir = new DirectoryInfo(sourceDirectory); + + // Abort if source directory doesn't exist + if (!dir.Exists) + return; + + DirectoryInfo[] dirs = dir.GetDirectories(); + // If the destination directory doesn't exist, create it. + if (!Directory.Exists(destinationDirectory)) + { + Directory.CreateDirectory(destinationDirectory); + } + + // Get the files in the directory and copy them to the new location. + FileInfo[] files = dir.GetFiles(); + foreach (FileInfo file in files) + { + string tempPath = Path.Combine(destinationDirectory, file.Name); + if (dirtyMetaFiles != null && string.Equals(Path.GetExtension(tempPath), ".meta", StringComparison.OrdinalIgnoreCase)) + { + if (!File.Exists(tempPath) || !File.ReadAllBytes(tempPath).SequenceEqual(File.ReadAllBytes(file.FullName))) + dirtyMetaFiles.Add(tempPath); + } + file.CopyTo(tempPath, true); + } + + // copy sub directories and their contents to new location. + foreach (DirectoryInfo subdir in dirs) + { + string tempPath = Path.Combine(destinationDirectory, subdir.Name); + DirectoryCopy(subdir.FullName, tempPath, dirtyMetaFiles); + } + } + } +} diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/Editor/TutorialManager.cs.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/Editor/TutorialManager.cs.meta" new file mode 100644 index 00000000..b6e79516 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/Editor/TutorialManager.cs.meta" @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: c12635a282a844e08977bc8feda58039 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/Editor/TutorialWindowMenuItem.cs" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/Editor/TutorialWindowMenuItem.cs" new file mode 100644 index 00000000..22f4b6db --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/Editor/TutorialWindowMenuItem.cs" @@ -0,0 +1,17 @@ +using UnityEditor; + +namespace Unity.InteractiveTutorials +{ + public static class TutorialWindowMenuItem + { + public const string Menu = "Tutorials"; + public const string MenuPath = Menu + "/"; + public const string Item = "Show Tutorials"; + + [MenuItem(MenuPath + Item)] + static void OpenTutorialWindow() + { + TutorialWindow.CreateWindow(); + } + } +} diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/Editor/TutorialWindowMenuItem.cs.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/Editor/TutorialWindowMenuItem.cs.meta" new file mode 100644 index 00000000..51f9fc92 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/Editor/TutorialWindowMenuItem.cs.meta" @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: ffde651d256394c40a8976af587b5bc2 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/Editor/UserStartupCode.cs" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/Editor/UserStartupCode.cs" new file mode 100644 index 00000000..ba77714b --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/Editor/UserStartupCode.cs" @@ -0,0 +1,115 @@ +using System; +using System.IO; +using System.Linq; +using UnityEditor; +using UnityEditor.SceneManagement; +using UnityEngine; + +namespace Unity.InteractiveTutorials +{ + [InitializeOnLoad] + public static class UserStartupCode + { + internal static void RunStartupCode() + { + var projectSettings = TutorialProjectSettings.instance; + + if (projectSettings.initialScene != null) + EditorSceneManager.OpenScene(AssetDatabase.GetAssetPath(projectSettings.initialScene)); + + TutorialManager.WriteAssetsToTutorialDefaultsFolder(); + + if (projectSettings.startupTutorial != null) + TutorialManager.instance.StartTutorial(projectSettings.startupTutorial); + + // Ensure Editor is in predictable state + EditorPrefs.SetString("ComponentSearchString", string.Empty); + Tools.current = Tool.Move; + + // Replace LastProjectPaths in window layouts used in tutorials so that e.g. + // pre-saved Project window states work correctly. + var readme = TutorialWindow.FindReadme(); + if (readme) + { + WindowLayoutProxy.ReplaceLastProjectPathWithCurrentProjectPath(readme.projectLayoutPath); + } + + AssetDatabase.FindAssets($"t:{typeof(Tutorial).FullName}") + .Select(guid => + AssetDatabase.LoadAssetAtPath(AssetDatabase.GUIDToAssetPath(guid)).windowLayoutPath + ) + .Distinct() + .ToList() + .ForEach(layoutPath => + { + WindowLayoutProxy.ReplaceLastProjectPathWithCurrentProjectPath(layoutPath); + }); + + if (readme != null) + readme.LoadTutorialProjectLayout(); + + var welcomePage = FindWelcomePage(); + if (welcomePage != null) + { + TutorialModalWindow.TryToShow("Welcome", welcomePage, () => { }); + } + + var wnd = TutorialManager.GetTutorialWindow(); + if (wnd) + wnd.showStartHereMarker = true; + } + + internal static readonly string initFileMarkerPath = "InitCodeMarker"; + // Folder so that user can easily create this from the Editor's Project view. + internal static readonly string dontRunInitCodeMarker = "Assets/DontRunInitCodeMarker"; + + static UserStartupCode() + { + if (IsDontRunInitCodeMarkerSet()) + return; + if (IsInitialized()) + return; + + EditorApplication.update += InitRunStartupCode; + } + + private static void InitRunStartupCode() + { + SetInitialized(); + EditorApplication.update -= InitRunStartupCode; + RunStartupCode(); + } + + public static bool IsInitialized() + { + return File.Exists(initFileMarkerPath); + } + + private static bool IsDontRunInitCodeMarkerSet() + { + return Directory.Exists(dontRunInitCodeMarker); + } + + public static void SetInitialized() + { + File.CreateText(initFileMarkerPath).Close(); + } + + internal static TutorialWelcomePage FindWelcomePage() + { + var guids = AssetDatabase.FindAssets($"t:{typeof(TutorialWelcomePage).FullName}"); + if (guids.Length == 0) + { + return null; + } + + if (guids.Length > 1) + { + Debug.LogWarning("More than one TutorialWelcomePage found in the project."); + } + + var assetPath = AssetDatabase.GUIDToAssetPath(guids[0]); + return AssetDatabase.LoadAssetAtPath(assetPath); + } + } +} diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/Editor/UserStartupCode.cs.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/Editor/UserStartupCode.cs.meta" new file mode 100644 index 00000000..f93e7b31 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/Editor/UserStartupCode.cs.meta" @@ -0,0 +1,12 @@ +fileFormatVersion: 2 +guid: 7e8e49e9b730d784d847f316018a4a0f +timeCreated: 1494868323 +licenseType: Pro +MonoImporter: + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI.meta" new file mode 100644 index 00000000..bd528da1 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI.meta" @@ -0,0 +1,9 @@ +fileFormatVersion: 2 +guid: 9e41eefe493d04d1aabc0605a0bab879 +folderAsset: yes +timeCreated: 1484813404 +licenseType: Pro +DefaultImporter: + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/New Textures.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/New Textures.meta" new file mode 100644 index 00000000..2c17dee3 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/New Textures.meta" @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 06de3d8092fea47c997be3859ce7e8e6 +folderAsset: yes +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/New Textures/BG.png" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/New Textures/BG.png" new file mode 100644 index 00000000..0da490f8 Binary files /dev/null and "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/New Textures/BG.png" differ diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/New Textures/BG.png.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/New Textures/BG.png.meta" new file mode 100644 index 00000000..aa28de5e --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/New Textures/BG.png.meta" @@ -0,0 +1,110 @@ +fileFormatVersion: 2 +guid: 2e88a70efad114caea2c593deceddcf2 +TextureImporter: + fileIDToRecycleName: {} + externalObjects: {} + serializedVersion: 9 + mipmaps: + mipMapMode: 0 + enableMipMap: 0 + sRGBTexture: 1 + linearTexture: 0 + fadeOut: 0 + borderMipMap: 0 + mipMapsPreserveCoverage: 0 + alphaTestReferenceValue: 0.5 + mipMapFadeDistanceStart: 1 + mipMapFadeDistanceEnd: 3 + bumpmap: + convertToNormalMap: 0 + externalNormalMap: 0 + heightScale: 0.25 + normalMapFilter: 0 + isReadable: 0 + streamingMipmaps: 0 + streamingMipmapsPriority: 0 + grayScaleToAlpha: 0 + generateCubemap: 6 + cubemapConvolution: 0 + seamlessCubemap: 0 + textureFormat: 1 + maxTextureSize: 2048 + textureSettings: + serializedVersion: 2 + filterMode: -1 + aniso: 1 + mipBias: -100 + wrapU: 1 + wrapV: 1 + wrapW: 1 + nPOTScale: 0 + lightmap: 0 + compressionQuality: 50 + spriteMode: 1 + spriteExtrude: 1 + spriteMeshType: 1 + alignment: 0 + spritePivot: {x: 0.5, y: 0.5} + spritePixelsToUnits: 100 + spriteBorder: {x: 0, y: 0, z: 0, w: 0} + spriteGenerateFallbackPhysicsShape: 1 + alphaUsage: 1 + alphaIsTransparency: 1 + spriteTessellationDetail: -1 + textureType: 2 + textureShape: 1 + singleChannelComponent: 0 + maxTextureSizeSet: 0 + compressionQualitySet: 0 + textureFormatSet: 0 + platformSettings: + - serializedVersion: 2 + buildTarget: DefaultTexturePlatform + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Standalone + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: 4 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: WebGL + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 0 + spriteSheet: + serializedVersion: 2 + sprites: [] + outline: [] + physicsShape: [] + bones: [] + spriteID: 8ffa20fdf0b5e4afd856b2f00d98a523 + vertices: [] + indices: + edges: [] + weights: [] + spritePackingTag: + pSDRemoveMatte: 0 + pSDShowRemoveMatteOption: 0 + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/New Textures/BG_Card.png" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/New Textures/BG_Card.png" new file mode 100644 index 00000000..dbe7ef6e Binary files /dev/null and "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/New Textures/BG_Card.png" differ diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/New Textures/BG_Card.png.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/New Textures/BG_Card.png.meta" new file mode 100644 index 00000000..0fecab0e --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/New Textures/BG_Card.png.meta" @@ -0,0 +1,110 @@ +fileFormatVersion: 2 +guid: 5ad52f004d51b4caf94acc185e632540 +TextureImporter: + fileIDToRecycleName: {} + externalObjects: {} + serializedVersion: 9 + mipmaps: + mipMapMode: 0 + enableMipMap: 0 + sRGBTexture: 1 + linearTexture: 0 + fadeOut: 0 + borderMipMap: 0 + mipMapsPreserveCoverage: 0 + alphaTestReferenceValue: 0.5 + mipMapFadeDistanceStart: 1 + mipMapFadeDistanceEnd: 3 + bumpmap: + convertToNormalMap: 0 + externalNormalMap: 0 + heightScale: 0.25 + normalMapFilter: 0 + isReadable: 0 + streamingMipmaps: 0 + streamingMipmapsPriority: 0 + grayScaleToAlpha: 0 + generateCubemap: 6 + cubemapConvolution: 0 + seamlessCubemap: 0 + textureFormat: 1 + maxTextureSize: 2048 + textureSettings: + serializedVersion: 2 + filterMode: -1 + aniso: 1 + mipBias: -100 + wrapU: 1 + wrapV: 1 + wrapW: -1 + nPOTScale: 0 + lightmap: 0 + compressionQuality: 50 + spriteMode: 0 + spriteExtrude: 1 + spriteMeshType: 1 + alignment: 0 + spritePivot: {x: 0.5, y: 0.5} + spritePixelsToUnits: 100 + spriteBorder: {x: 0, y: 0, z: 0, w: 0} + spriteGenerateFallbackPhysicsShape: 1 + alphaUsage: 1 + alphaIsTransparency: 1 + spriteTessellationDetail: -1 + textureType: 2 + textureShape: 1 + singleChannelComponent: 0 + maxTextureSizeSet: 0 + compressionQualitySet: 0 + textureFormatSet: 0 + platformSettings: + - serializedVersion: 2 + buildTarget: DefaultTexturePlatform + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Standalone + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: 4 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: WebGL + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 0 + spriteSheet: + serializedVersion: 2 + sprites: [] + outline: [] + physicsShape: [] + bones: [] + spriteID: + vertices: [] + indices: + edges: [] + weights: [] + spritePackingTag: + pSDRemoveMatte: 0 + pSDShowRemoveMatteOption: 0 + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/New Textures/BG_Card@2x.png" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/New Textures/BG_Card@2x.png" new file mode 100644 index 00000000..a6c1ccf8 Binary files /dev/null and "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/New Textures/BG_Card@2x.png" differ diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/New Textures/BG_Card@2x.png.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/New Textures/BG_Card@2x.png.meta" new file mode 100644 index 00000000..927dd289 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/New Textures/BG_Card@2x.png.meta" @@ -0,0 +1,110 @@ +fileFormatVersion: 2 +guid: 630b437b3a13f4dff935e4df43af05e9 +TextureImporter: + fileIDToRecycleName: {} + externalObjects: {} + serializedVersion: 9 + mipmaps: + mipMapMode: 0 + enableMipMap: 0 + sRGBTexture: 1 + linearTexture: 0 + fadeOut: 0 + borderMipMap: 0 + mipMapsPreserveCoverage: 0 + alphaTestReferenceValue: 0.5 + mipMapFadeDistanceStart: 1 + mipMapFadeDistanceEnd: 3 + bumpmap: + convertToNormalMap: 0 + externalNormalMap: 0 + heightScale: 0.25 + normalMapFilter: 0 + isReadable: 0 + streamingMipmaps: 0 + streamingMipmapsPriority: 0 + grayScaleToAlpha: 0 + generateCubemap: 6 + cubemapConvolution: 0 + seamlessCubemap: 0 + textureFormat: 1 + maxTextureSize: 2048 + textureSettings: + serializedVersion: 2 + filterMode: -1 + aniso: 1 + mipBias: -100 + wrapU: 1 + wrapV: 1 + wrapW: -1 + nPOTScale: 0 + lightmap: 0 + compressionQuality: 50 + spriteMode: 0 + spriteExtrude: 1 + spriteMeshType: 1 + alignment: 0 + spritePivot: {x: 0.5, y: 0.5} + spritePixelsToUnits: 100 + spriteBorder: {x: 0, y: 0, z: 0, w: 0} + spriteGenerateFallbackPhysicsShape: 1 + alphaUsage: 1 + alphaIsTransparency: 1 + spriteTessellationDetail: -1 + textureType: 2 + textureShape: 1 + singleChannelComponent: 0 + maxTextureSizeSet: 0 + compressionQualitySet: 0 + textureFormatSet: 0 + platformSettings: + - serializedVersion: 2 + buildTarget: DefaultTexturePlatform + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Standalone + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: 4 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: WebGL + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 0 + spriteSheet: + serializedVersion: 2 + sprites: [] + outline: [] + physicsShape: [] + bones: [] + spriteID: + vertices: [] + indices: + edges: [] + weights: [] + spritePackingTag: + pSDRemoveMatte: 0 + pSDShowRemoveMatteOption: 0 + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/New Textures/BG_Card_Active.png" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/New Textures/BG_Card_Active.png" new file mode 100644 index 00000000..b121bdd5 Binary files /dev/null and "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/New Textures/BG_Card_Active.png" differ diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/New Textures/BG_Card_Active.png.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/New Textures/BG_Card_Active.png.meta" new file mode 100644 index 00000000..ecc2c3ca --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/New Textures/BG_Card_Active.png.meta" @@ -0,0 +1,110 @@ +fileFormatVersion: 2 +guid: b9851e39ff08349dca4c90803423f83a +TextureImporter: + fileIDToRecycleName: {} + externalObjects: {} + serializedVersion: 9 + mipmaps: + mipMapMode: 0 + enableMipMap: 0 + sRGBTexture: 1 + linearTexture: 0 + fadeOut: 0 + borderMipMap: 0 + mipMapsPreserveCoverage: 0 + alphaTestReferenceValue: 0.5 + mipMapFadeDistanceStart: 1 + mipMapFadeDistanceEnd: 3 + bumpmap: + convertToNormalMap: 0 + externalNormalMap: 0 + heightScale: 0.25 + normalMapFilter: 0 + isReadable: 0 + streamingMipmaps: 0 + streamingMipmapsPriority: 0 + grayScaleToAlpha: 0 + generateCubemap: 6 + cubemapConvolution: 0 + seamlessCubemap: 0 + textureFormat: 1 + maxTextureSize: 2048 + textureSettings: + serializedVersion: 2 + filterMode: -1 + aniso: 1 + mipBias: -100 + wrapU: 1 + wrapV: 1 + wrapW: -1 + nPOTScale: 0 + lightmap: 0 + compressionQuality: 50 + spriteMode: 0 + spriteExtrude: 1 + spriteMeshType: 1 + alignment: 0 + spritePivot: {x: 0.5, y: 0.5} + spritePixelsToUnits: 100 + spriteBorder: {x: 0, y: 0, z: 0, w: 0} + spriteGenerateFallbackPhysicsShape: 1 + alphaUsage: 1 + alphaIsTransparency: 1 + spriteTessellationDetail: -1 + textureType: 2 + textureShape: 1 + singleChannelComponent: 0 + maxTextureSizeSet: 0 + compressionQualitySet: 0 + textureFormatSet: 0 + platformSettings: + - serializedVersion: 2 + buildTarget: DefaultTexturePlatform + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Standalone + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: 4 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: WebGL + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 0 + spriteSheet: + serializedVersion: 2 + sprites: [] + outline: [] + physicsShape: [] + bones: [] + spriteID: + vertices: [] + indices: + edges: [] + weights: [] + spritePackingTag: + pSDRemoveMatte: 0 + pSDShowRemoveMatteOption: 0 + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/New Textures/BG_Card_Active@2x.png" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/New Textures/BG_Card_Active@2x.png" new file mode 100644 index 00000000..ae1d3f62 Binary files /dev/null and "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/New Textures/BG_Card_Active@2x.png" differ diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/New Textures/BG_Card_Active@2x.png.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/New Textures/BG_Card_Active@2x.png.meta" new file mode 100644 index 00000000..6433c5fe --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/New Textures/BG_Card_Active@2x.png.meta" @@ -0,0 +1,110 @@ +fileFormatVersion: 2 +guid: 68d8009af2b9045d18b499662be34578 +TextureImporter: + fileIDToRecycleName: {} + externalObjects: {} + serializedVersion: 9 + mipmaps: + mipMapMode: 0 + enableMipMap: 0 + sRGBTexture: 1 + linearTexture: 0 + fadeOut: 0 + borderMipMap: 0 + mipMapsPreserveCoverage: 0 + alphaTestReferenceValue: 0.5 + mipMapFadeDistanceStart: 1 + mipMapFadeDistanceEnd: 3 + bumpmap: + convertToNormalMap: 0 + externalNormalMap: 0 + heightScale: 0.25 + normalMapFilter: 0 + isReadable: 0 + streamingMipmaps: 0 + streamingMipmapsPriority: 0 + grayScaleToAlpha: 0 + generateCubemap: 6 + cubemapConvolution: 0 + seamlessCubemap: 0 + textureFormat: 1 + maxTextureSize: 2048 + textureSettings: + serializedVersion: 2 + filterMode: -1 + aniso: 1 + mipBias: -100 + wrapU: 1 + wrapV: 1 + wrapW: -1 + nPOTScale: 0 + lightmap: 0 + compressionQuality: 50 + spriteMode: 0 + spriteExtrude: 1 + spriteMeshType: 1 + alignment: 0 + spritePivot: {x: 0.5, y: 0.5} + spritePixelsToUnits: 100 + spriteBorder: {x: 0, y: 0, z: 0, w: 0} + spriteGenerateFallbackPhysicsShape: 1 + alphaUsage: 1 + alphaIsTransparency: 1 + spriteTessellationDetail: -1 + textureType: 2 + textureShape: 1 + singleChannelComponent: 0 + maxTextureSizeSet: 0 + compressionQualitySet: 0 + textureFormatSet: 0 + platformSettings: + - serializedVersion: 2 + buildTarget: DefaultTexturePlatform + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Standalone + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: 4 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: WebGL + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 0 + spriteSheet: + serializedVersion: 2 + sprites: [] + outline: [] + physicsShape: [] + bones: [] + spriteID: + vertices: [] + indices: + edges: [] + weights: [] + spritePackingTag: + pSDRemoveMatte: 0 + pSDShowRemoveMatteOption: 0 + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/New Textures/BG_Footer.png" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/New Textures/BG_Footer.png" new file mode 100644 index 00000000..18f37dc3 Binary files /dev/null and "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/New Textures/BG_Footer.png" differ diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/New Textures/BG_Footer.png.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/New Textures/BG_Footer.png.meta" new file mode 100644 index 00000000..47b9a20d --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/New Textures/BG_Footer.png.meta" @@ -0,0 +1,110 @@ +fileFormatVersion: 2 +guid: 0fbdf860c720346a3abb167625f080f0 +TextureImporter: + fileIDToRecycleName: {} + externalObjects: {} + serializedVersion: 9 + mipmaps: + mipMapMode: 0 + enableMipMap: 0 + sRGBTexture: 1 + linearTexture: 0 + fadeOut: 0 + borderMipMap: 0 + mipMapsPreserveCoverage: 0 + alphaTestReferenceValue: 0.5 + mipMapFadeDistanceStart: 1 + mipMapFadeDistanceEnd: 3 + bumpmap: + convertToNormalMap: 0 + externalNormalMap: 0 + heightScale: 0.25 + normalMapFilter: 0 + isReadable: 0 + streamingMipmaps: 0 + streamingMipmapsPriority: 0 + grayScaleToAlpha: 0 + generateCubemap: 6 + cubemapConvolution: 0 + seamlessCubemap: 0 + textureFormat: 1 + maxTextureSize: 2048 + textureSettings: + serializedVersion: 2 + filterMode: -1 + aniso: 1 + mipBias: -100 + wrapU: 1 + wrapV: 1 + wrapW: -1 + nPOTScale: 0 + lightmap: 0 + compressionQuality: 50 + spriteMode: 0 + spriteExtrude: 1 + spriteMeshType: 1 + alignment: 0 + spritePivot: {x: 0.5, y: 0.5} + spritePixelsToUnits: 100 + spriteBorder: {x: 0, y: 0, z: 0, w: 0} + spriteGenerateFallbackPhysicsShape: 1 + alphaUsage: 1 + alphaIsTransparency: 1 + spriteTessellationDetail: -1 + textureType: 2 + textureShape: 1 + singleChannelComponent: 0 + maxTextureSizeSet: 0 + compressionQualitySet: 0 + textureFormatSet: 0 + platformSettings: + - serializedVersion: 2 + buildTarget: DefaultTexturePlatform + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Standalone + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: 4 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: WebGL + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 0 + spriteSheet: + serializedVersion: 2 + sprites: [] + outline: [] + physicsShape: [] + bones: [] + spriteID: + vertices: [] + indices: + edges: [] + weights: [] + spritePackingTag: + pSDRemoveMatte: 0 + pSDShowRemoveMatteOption: 0 + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/New Textures/BG_Footer@2x.png" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/New Textures/BG_Footer@2x.png" new file mode 100644 index 00000000..20fb28e5 Binary files /dev/null and "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/New Textures/BG_Footer@2x.png" differ diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/New Textures/BG_Footer@2x.png.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/New Textures/BG_Footer@2x.png.meta" new file mode 100644 index 00000000..423b7d9c --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/New Textures/BG_Footer@2x.png.meta" @@ -0,0 +1,110 @@ +fileFormatVersion: 2 +guid: 1fc53ad302c904d1698ef0c42d173ead +TextureImporter: + fileIDToRecycleName: {} + externalObjects: {} + serializedVersion: 9 + mipmaps: + mipMapMode: 0 + enableMipMap: 0 + sRGBTexture: 1 + linearTexture: 0 + fadeOut: 0 + borderMipMap: 0 + mipMapsPreserveCoverage: 0 + alphaTestReferenceValue: 0.5 + mipMapFadeDistanceStart: 1 + mipMapFadeDistanceEnd: 3 + bumpmap: + convertToNormalMap: 0 + externalNormalMap: 0 + heightScale: 0.25 + normalMapFilter: 0 + isReadable: 0 + streamingMipmaps: 0 + streamingMipmapsPriority: 0 + grayScaleToAlpha: 0 + generateCubemap: 6 + cubemapConvolution: 0 + seamlessCubemap: 0 + textureFormat: 1 + maxTextureSize: 2048 + textureSettings: + serializedVersion: 2 + filterMode: -1 + aniso: 1 + mipBias: -100 + wrapU: 1 + wrapV: 1 + wrapW: -1 + nPOTScale: 0 + lightmap: 0 + compressionQuality: 50 + spriteMode: 0 + spriteExtrude: 1 + spriteMeshType: 1 + alignment: 0 + spritePivot: {x: 0.5, y: 0.5} + spritePixelsToUnits: 100 + spriteBorder: {x: 0, y: 0, z: 0, w: 0} + spriteGenerateFallbackPhysicsShape: 1 + alphaUsage: 1 + alphaIsTransparency: 1 + spriteTessellationDetail: -1 + textureType: 2 + textureShape: 1 + singleChannelComponent: 0 + maxTextureSizeSet: 0 + compressionQualitySet: 0 + textureFormatSet: 0 + platformSettings: + - serializedVersion: 2 + buildTarget: DefaultTexturePlatform + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Standalone + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: 4 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: WebGL + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 0 + spriteSheet: + serializedVersion: 2 + sprites: [] + outline: [] + physicsShape: [] + bones: [] + spriteID: + vertices: [] + indices: + edges: [] + weights: [] + spritePackingTag: + pSDRemoveMatte: 0 + pSDShowRemoveMatteOption: 0 + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/New Textures/BG_Header.png" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/New Textures/BG_Header.png" new file mode 100644 index 00000000..ce45001f Binary files /dev/null and "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/New Textures/BG_Header.png" differ diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/New Textures/BG_Header.png.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/New Textures/BG_Header.png.meta" new file mode 100644 index 00000000..ce73525b --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/New Textures/BG_Header.png.meta" @@ -0,0 +1,110 @@ +fileFormatVersion: 2 +guid: b2a2059210fe64eb9889e7a0673cb648 +TextureImporter: + fileIDToRecycleName: {} + externalObjects: {} + serializedVersion: 9 + mipmaps: + mipMapMode: 0 + enableMipMap: 0 + sRGBTexture: 1 + linearTexture: 0 + fadeOut: 0 + borderMipMap: 0 + mipMapsPreserveCoverage: 0 + alphaTestReferenceValue: 0.5 + mipMapFadeDistanceStart: 1 + mipMapFadeDistanceEnd: 3 + bumpmap: + convertToNormalMap: 0 + externalNormalMap: 0 + heightScale: 0.25 + normalMapFilter: 0 + isReadable: 0 + streamingMipmaps: 0 + streamingMipmapsPriority: 0 + grayScaleToAlpha: 0 + generateCubemap: 6 + cubemapConvolution: 0 + seamlessCubemap: 0 + textureFormat: 1 + maxTextureSize: 2048 + textureSettings: + serializedVersion: 2 + filterMode: -1 + aniso: 1 + mipBias: -100 + wrapU: 1 + wrapV: 1 + wrapW: 1 + nPOTScale: 0 + lightmap: 0 + compressionQuality: 50 + spriteMode: 1 + spriteExtrude: 1 + spriteMeshType: 1 + alignment: 0 + spritePivot: {x: 0.5, y: 0.5} + spritePixelsToUnits: 100 + spriteBorder: {x: 0, y: 0, z: 0, w: 0} + spriteGenerateFallbackPhysicsShape: 1 + alphaUsage: 1 + alphaIsTransparency: 1 + spriteTessellationDetail: -1 + textureType: 2 + textureShape: 1 + singleChannelComponent: 0 + maxTextureSizeSet: 0 + compressionQualitySet: 0 + textureFormatSet: 0 + platformSettings: + - serializedVersion: 2 + buildTarget: DefaultTexturePlatform + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Standalone + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: 4 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: WebGL + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 0 + spriteSheet: + serializedVersion: 2 + sprites: [] + outline: [] + physicsShape: [] + bones: [] + spriteID: aa0fc83d04a3340f3bbc91e3086b2227 + vertices: [] + indices: + edges: [] + weights: [] + spritePackingTag: + pSDRemoveMatte: 0 + pSDShowRemoveMatteOption: 0 + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/New Textures/BG_Header@2x.png" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/New Textures/BG_Header@2x.png" new file mode 100644 index 00000000..1916c783 Binary files /dev/null and "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/New Textures/BG_Header@2x.png" differ diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/New Textures/BG_Header@2x.png.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/New Textures/BG_Header@2x.png.meta" new file mode 100644 index 00000000..0cca850a --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/New Textures/BG_Header@2x.png.meta" @@ -0,0 +1,110 @@ +fileFormatVersion: 2 +guid: 47ac17b5af7694741ba8f250a83208f5 +TextureImporter: + fileIDToRecycleName: {} + externalObjects: {} + serializedVersion: 9 + mipmaps: + mipMapMode: 0 + enableMipMap: 0 + sRGBTexture: 1 + linearTexture: 0 + fadeOut: 0 + borderMipMap: 0 + mipMapsPreserveCoverage: 0 + alphaTestReferenceValue: 0.5 + mipMapFadeDistanceStart: 1 + mipMapFadeDistanceEnd: 3 + bumpmap: + convertToNormalMap: 0 + externalNormalMap: 0 + heightScale: 0.25 + normalMapFilter: 0 + isReadable: 0 + streamingMipmaps: 0 + streamingMipmapsPriority: 0 + grayScaleToAlpha: 0 + generateCubemap: 6 + cubemapConvolution: 0 + seamlessCubemap: 0 + textureFormat: 1 + maxTextureSize: 2048 + textureSettings: + serializedVersion: 2 + filterMode: -1 + aniso: 1 + mipBias: -100 + wrapU: 1 + wrapV: 1 + wrapW: -1 + nPOTScale: 0 + lightmap: 0 + compressionQuality: 50 + spriteMode: 0 + spriteExtrude: 1 + spriteMeshType: 1 + alignment: 0 + spritePivot: {x: 0.5, y: 0.5} + spritePixelsToUnits: 100 + spriteBorder: {x: 0, y: 0, z: 0, w: 0} + spriteGenerateFallbackPhysicsShape: 1 + alphaUsage: 1 + alphaIsTransparency: 1 + spriteTessellationDetail: -1 + textureType: 2 + textureShape: 1 + singleChannelComponent: 0 + maxTextureSizeSet: 0 + compressionQualitySet: 0 + textureFormatSet: 0 + platformSettings: + - serializedVersion: 2 + buildTarget: DefaultTexturePlatform + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Standalone + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: 4 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: WebGL + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 0 + spriteSheet: + serializedVersion: 2 + sprites: [] + outline: [] + physicsShape: [] + bones: [] + spriteID: + vertices: [] + indices: + edges: [] + weights: [] + spritePackingTag: + pSDRemoveMatte: 0 + pSDShowRemoveMatteOption: 0 + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/New Textures/BG_Image.png" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/New Textures/BG_Image.png" new file mode 100644 index 00000000..398b0ed1 Binary files /dev/null and "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/New Textures/BG_Image.png" differ diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/New Textures/BG_Image.png.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/New Textures/BG_Image.png.meta" new file mode 100644 index 00000000..3b274aed --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/New Textures/BG_Image.png.meta" @@ -0,0 +1,110 @@ +fileFormatVersion: 2 +guid: 5e343a45b8744448ca8a77715f0f2235 +TextureImporter: + fileIDToRecycleName: {} + externalObjects: {} + serializedVersion: 9 + mipmaps: + mipMapMode: 0 + enableMipMap: 0 + sRGBTexture: 1 + linearTexture: 0 + fadeOut: 0 + borderMipMap: 0 + mipMapsPreserveCoverage: 0 + alphaTestReferenceValue: 0.5 + mipMapFadeDistanceStart: 1 + mipMapFadeDistanceEnd: 3 + bumpmap: + convertToNormalMap: 0 + externalNormalMap: 0 + heightScale: 0.25 + normalMapFilter: 0 + isReadable: 0 + streamingMipmaps: 0 + streamingMipmapsPriority: 0 + grayScaleToAlpha: 0 + generateCubemap: 6 + cubemapConvolution: 0 + seamlessCubemap: 0 + textureFormat: 1 + maxTextureSize: 2048 + textureSettings: + serializedVersion: 2 + filterMode: -1 + aniso: 1 + mipBias: -100 + wrapU: 1 + wrapV: 1 + wrapW: 1 + nPOTScale: 0 + lightmap: 0 + compressionQuality: 50 + spriteMode: 1 + spriteExtrude: 1 + spriteMeshType: 1 + alignment: 0 + spritePivot: {x: 0.5, y: 0.5} + spritePixelsToUnits: 100 + spriteBorder: {x: 0, y: 0, z: 0, w: 0} + spriteGenerateFallbackPhysicsShape: 1 + alphaUsage: 1 + alphaIsTransparency: 1 + spriteTessellationDetail: -1 + textureType: 2 + textureShape: 1 + singleChannelComponent: 0 + maxTextureSizeSet: 0 + compressionQualitySet: 0 + textureFormatSet: 0 + platformSettings: + - serializedVersion: 2 + buildTarget: DefaultTexturePlatform + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Standalone + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: 4 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: WebGL + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 0 + spriteSheet: + serializedVersion: 2 + sprites: [] + outline: [] + physicsShape: [] + bones: [] + spriteID: aa16b51b8288d4c748f9e3a5154b068e + vertices: [] + indices: + edges: [] + weights: [] + spritePackingTag: + pSDRemoveMatte: 0 + pSDShowRemoveMatteOption: 0 + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/New Textures/BG_Image@2x.png" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/New Textures/BG_Image@2x.png" new file mode 100644 index 00000000..51113849 Binary files /dev/null and "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/New Textures/BG_Image@2x.png" differ diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/New Textures/BG_Image@2x.png.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/New Textures/BG_Image@2x.png.meta" new file mode 100644 index 00000000..223423f8 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/New Textures/BG_Image@2x.png.meta" @@ -0,0 +1,110 @@ +fileFormatVersion: 2 +guid: 20ff37252d947453b9da4b2a340b2dda +TextureImporter: + fileIDToRecycleName: {} + externalObjects: {} + serializedVersion: 9 + mipmaps: + mipMapMode: 0 + enableMipMap: 0 + sRGBTexture: 1 + linearTexture: 0 + fadeOut: 0 + borderMipMap: 0 + mipMapsPreserveCoverage: 0 + alphaTestReferenceValue: 0.5 + mipMapFadeDistanceStart: 1 + mipMapFadeDistanceEnd: 3 + bumpmap: + convertToNormalMap: 0 + externalNormalMap: 0 + heightScale: 0.25 + normalMapFilter: 0 + isReadable: 0 + streamingMipmaps: 0 + streamingMipmapsPriority: 0 + grayScaleToAlpha: 0 + generateCubemap: 6 + cubemapConvolution: 0 + seamlessCubemap: 0 + textureFormat: 1 + maxTextureSize: 2048 + textureSettings: + serializedVersion: 2 + filterMode: -1 + aniso: 1 + mipBias: -100 + wrapU: 1 + wrapV: 1 + wrapW: -1 + nPOTScale: 0 + lightmap: 0 + compressionQuality: 50 + spriteMode: 0 + spriteExtrude: 1 + spriteMeshType: 1 + alignment: 0 + spritePivot: {x: 0.5, y: 0.5} + spritePixelsToUnits: 100 + spriteBorder: {x: 0, y: 0, z: 0, w: 0} + spriteGenerateFallbackPhysicsShape: 1 + alphaUsage: 1 + alphaIsTransparency: 1 + spriteTessellationDetail: -1 + textureType: 2 + textureShape: 1 + singleChannelComponent: 0 + maxTextureSizeSet: 0 + compressionQualitySet: 0 + textureFormatSet: 0 + platformSettings: + - serializedVersion: 2 + buildTarget: DefaultTexturePlatform + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Standalone + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: 4 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: WebGL + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 0 + spriteSheet: + serializedVersion: 2 + sprites: [] + outline: [] + physicsShape: [] + bones: [] + spriteID: + vertices: [] + indices: + edges: [] + weights: [] + spritePackingTag: + pSDRemoveMatte: 0 + pSDShowRemoveMatteOption: 0 + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/New Textures/BG_Narrative.png" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/New Textures/BG_Narrative.png" new file mode 100644 index 00000000..0da490f8 Binary files /dev/null and "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/New Textures/BG_Narrative.png" differ diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/New Textures/BG_Narrative.png.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/New Textures/BG_Narrative.png.meta" new file mode 100644 index 00000000..76a7f983 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/New Textures/BG_Narrative.png.meta" @@ -0,0 +1,110 @@ +fileFormatVersion: 2 +guid: 5585ec240e3d849d39e92b01f9332ae6 +TextureImporter: + fileIDToRecycleName: {} + externalObjects: {} + serializedVersion: 9 + mipmaps: + mipMapMode: 0 + enableMipMap: 0 + sRGBTexture: 1 + linearTexture: 0 + fadeOut: 0 + borderMipMap: 0 + mipMapsPreserveCoverage: 0 + alphaTestReferenceValue: 0.5 + mipMapFadeDistanceStart: 1 + mipMapFadeDistanceEnd: 3 + bumpmap: + convertToNormalMap: 0 + externalNormalMap: 0 + heightScale: 0.25 + normalMapFilter: 0 + isReadable: 0 + streamingMipmaps: 0 + streamingMipmapsPriority: 0 + grayScaleToAlpha: 0 + generateCubemap: 6 + cubemapConvolution: 0 + seamlessCubemap: 0 + textureFormat: 1 + maxTextureSize: 2048 + textureSettings: + serializedVersion: 2 + filterMode: -1 + aniso: 1 + mipBias: -100 + wrapU: 1 + wrapV: 1 + wrapW: 1 + nPOTScale: 0 + lightmap: 0 + compressionQuality: 50 + spriteMode: 1 + spriteExtrude: 1 + spriteMeshType: 1 + alignment: 0 + spritePivot: {x: 0.5, y: 0.5} + spritePixelsToUnits: 100 + spriteBorder: {x: 0, y: 0, z: 0, w: 0} + spriteGenerateFallbackPhysicsShape: 1 + alphaUsage: 1 + alphaIsTransparency: 1 + spriteTessellationDetail: -1 + textureType: 2 + textureShape: 1 + singleChannelComponent: 0 + maxTextureSizeSet: 0 + compressionQualitySet: 0 + textureFormatSet: 0 + platformSettings: + - serializedVersion: 2 + buildTarget: DefaultTexturePlatform + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Standalone + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: 4 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: WebGL + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 0 + spriteSheet: + serializedVersion: 2 + sprites: [] + outline: [] + physicsShape: [] + bones: [] + spriteID: 21e8dbf3cb99e4ea48bf24a53cf73607 + vertices: [] + indices: + edges: [] + weights: [] + spritePackingTag: + pSDRemoveMatte: 0 + pSDShowRemoveMatteOption: 0 + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/New Textures/BG_Tooltip.png" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/New Textures/BG_Tooltip.png" new file mode 100644 index 00000000..06cb4e63 Binary files /dev/null and "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/New Textures/BG_Tooltip.png" differ diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/New Textures/BG_Tooltip.png.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/New Textures/BG_Tooltip.png.meta" new file mode 100644 index 00000000..e1134544 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/New Textures/BG_Tooltip.png.meta" @@ -0,0 +1,110 @@ +fileFormatVersion: 2 +guid: c98b552ff34f94b62afc676fae8cf934 +TextureImporter: + fileIDToRecycleName: {} + externalObjects: {} + serializedVersion: 9 + mipmaps: + mipMapMode: 0 + enableMipMap: 0 + sRGBTexture: 1 + linearTexture: 0 + fadeOut: 0 + borderMipMap: 0 + mipMapsPreserveCoverage: 0 + alphaTestReferenceValue: 0.5 + mipMapFadeDistanceStart: 1 + mipMapFadeDistanceEnd: 3 + bumpmap: + convertToNormalMap: 0 + externalNormalMap: 0 + heightScale: 0.25 + normalMapFilter: 0 + isReadable: 0 + streamingMipmaps: 0 + streamingMipmapsPriority: 0 + grayScaleToAlpha: 0 + generateCubemap: 6 + cubemapConvolution: 0 + seamlessCubemap: 0 + textureFormat: 1 + maxTextureSize: 2048 + textureSettings: + serializedVersion: 2 + filterMode: -1 + aniso: 1 + mipBias: -100 + wrapU: 1 + wrapV: 1 + wrapW: -1 + nPOTScale: 0 + lightmap: 0 + compressionQuality: 50 + spriteMode: 0 + spriteExtrude: 1 + spriteMeshType: 1 + alignment: 0 + spritePivot: {x: 0.5, y: 0.5} + spritePixelsToUnits: 100 + spriteBorder: {x: 0, y: 0, z: 0, w: 0} + spriteGenerateFallbackPhysicsShape: 1 + alphaUsage: 1 + alphaIsTransparency: 1 + spriteTessellationDetail: -1 + textureType: 2 + textureShape: 1 + singleChannelComponent: 0 + maxTextureSizeSet: 0 + compressionQualitySet: 0 + textureFormatSet: 0 + platformSettings: + - serializedVersion: 2 + buildTarget: DefaultTexturePlatform + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Standalone + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: 4 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: WebGL + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 0 + spriteSheet: + serializedVersion: 2 + sprites: [] + outline: [] + physicsShape: [] + bones: [] + spriteID: + vertices: [] + indices: + edges: [] + weights: [] + spritePackingTag: + pSDRemoveMatte: 0 + pSDShowRemoveMatteOption: 0 + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/New Textures/BG_Tooltip@2x.png" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/New Textures/BG_Tooltip@2x.png" new file mode 100644 index 00000000..38739ce6 Binary files /dev/null and "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/New Textures/BG_Tooltip@2x.png" differ diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/New Textures/BG_Tooltip@2x.png.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/New Textures/BG_Tooltip@2x.png.meta" new file mode 100644 index 00000000..c1396897 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/New Textures/BG_Tooltip@2x.png.meta" @@ -0,0 +1,110 @@ +fileFormatVersion: 2 +guid: e6c1dde983b3942f3af2148970f13599 +TextureImporter: + fileIDToRecycleName: {} + externalObjects: {} + serializedVersion: 9 + mipmaps: + mipMapMode: 0 + enableMipMap: 0 + sRGBTexture: 1 + linearTexture: 0 + fadeOut: 0 + borderMipMap: 0 + mipMapsPreserveCoverage: 0 + alphaTestReferenceValue: 0.5 + mipMapFadeDistanceStart: 1 + mipMapFadeDistanceEnd: 3 + bumpmap: + convertToNormalMap: 0 + externalNormalMap: 0 + heightScale: 0.25 + normalMapFilter: 0 + isReadable: 0 + streamingMipmaps: 0 + streamingMipmapsPriority: 0 + grayScaleToAlpha: 0 + generateCubemap: 6 + cubemapConvolution: 0 + seamlessCubemap: 0 + textureFormat: 1 + maxTextureSize: 2048 + textureSettings: + serializedVersion: 2 + filterMode: -1 + aniso: 1 + mipBias: -100 + wrapU: 1 + wrapV: 1 + wrapW: -1 + nPOTScale: 0 + lightmap: 0 + compressionQuality: 50 + spriteMode: 0 + spriteExtrude: 1 + spriteMeshType: 1 + alignment: 0 + spritePivot: {x: 0.5, y: 0.5} + spritePixelsToUnits: 100 + spriteBorder: {x: 0, y: 0, z: 0, w: 0} + spriteGenerateFallbackPhysicsShape: 1 + alphaUsage: 1 + alphaIsTransparency: 1 + spriteTessellationDetail: -1 + textureType: 2 + textureShape: 1 + singleChannelComponent: 0 + maxTextureSizeSet: 0 + compressionQualitySet: 0 + textureFormatSet: 0 + platformSettings: + - serializedVersion: 2 + buildTarget: DefaultTexturePlatform + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Standalone + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: 4 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: WebGL + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 0 + spriteSheet: + serializedVersion: 2 + sprites: [] + outline: [] + physicsShape: [] + bones: [] + spriteID: + vertices: [] + indices: + edges: [] + weights: [] + spritePackingTag: + pSDRemoveMatte: 0 + pSDShowRemoveMatteOption: 0 + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/New Textures/BG_Tutorial_List.png" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/New Textures/BG_Tutorial_List.png" new file mode 100644 index 00000000..52440025 Binary files /dev/null and "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/New Textures/BG_Tutorial_List.png" differ diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/New Textures/BG_Tutorial_List.png.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/New Textures/BG_Tutorial_List.png.meta" new file mode 100644 index 00000000..577c3561 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/New Textures/BG_Tutorial_List.png.meta" @@ -0,0 +1,110 @@ +fileFormatVersion: 2 +guid: 8ff0ba05dbfb243098375d63ee3e4901 +TextureImporter: + fileIDToRecycleName: {} + externalObjects: {} + serializedVersion: 9 + mipmaps: + mipMapMode: 0 + enableMipMap: 0 + sRGBTexture: 1 + linearTexture: 0 + fadeOut: 0 + borderMipMap: 0 + mipMapsPreserveCoverage: 0 + alphaTestReferenceValue: 0.5 + mipMapFadeDistanceStart: 1 + mipMapFadeDistanceEnd: 3 + bumpmap: + convertToNormalMap: 0 + externalNormalMap: 0 + heightScale: 0.25 + normalMapFilter: 0 + isReadable: 0 + streamingMipmaps: 0 + streamingMipmapsPriority: 0 + grayScaleToAlpha: 0 + generateCubemap: 6 + cubemapConvolution: 0 + seamlessCubemap: 0 + textureFormat: 1 + maxTextureSize: 2048 + textureSettings: + serializedVersion: 2 + filterMode: -1 + aniso: 1 + mipBias: -100 + wrapU: 1 + wrapV: 1 + wrapW: -1 + nPOTScale: 0 + lightmap: 0 + compressionQuality: 50 + spriteMode: 0 + spriteExtrude: 1 + spriteMeshType: 1 + alignment: 0 + spritePivot: {x: 0.5, y: 0.5} + spritePixelsToUnits: 100 + spriteBorder: {x: 0, y: 0, z: 0, w: 0} + spriteGenerateFallbackPhysicsShape: 1 + alphaUsage: 1 + alphaIsTransparency: 1 + spriteTessellationDetail: -1 + textureType: 2 + textureShape: 1 + singleChannelComponent: 0 + maxTextureSizeSet: 0 + compressionQualitySet: 0 + textureFormatSet: 0 + platformSettings: + - serializedVersion: 2 + buildTarget: DefaultTexturePlatform + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Standalone + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: 4 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: WebGL + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 0 + spriteSheet: + serializedVersion: 2 + sprites: [] + outline: [] + physicsShape: [] + bones: [] + spriteID: + vertices: [] + indices: + edges: [] + weights: [] + spritePackingTag: + pSDRemoveMatte: 0 + pSDShowRemoveMatteOption: 0 + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/New Textures/BG_Tutorial_List@2x.png" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/New Textures/BG_Tutorial_List@2x.png" new file mode 100644 index 00000000..27b96848 Binary files /dev/null and "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/New Textures/BG_Tutorial_List@2x.png" differ diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/New Textures/BG_Tutorial_List@2x.png.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/New Textures/BG_Tutorial_List@2x.png.meta" new file mode 100644 index 00000000..c4bd94e8 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/New Textures/BG_Tutorial_List@2x.png.meta" @@ -0,0 +1,110 @@ +fileFormatVersion: 2 +guid: ef9262b62ddc740f3bd0eec278b32706 +TextureImporter: + fileIDToRecycleName: {} + externalObjects: {} + serializedVersion: 9 + mipmaps: + mipMapMode: 0 + enableMipMap: 0 + sRGBTexture: 1 + linearTexture: 0 + fadeOut: 0 + borderMipMap: 0 + mipMapsPreserveCoverage: 0 + alphaTestReferenceValue: 0.5 + mipMapFadeDistanceStart: 1 + mipMapFadeDistanceEnd: 3 + bumpmap: + convertToNormalMap: 0 + externalNormalMap: 0 + heightScale: 0.25 + normalMapFilter: 0 + isReadable: 0 + streamingMipmaps: 0 + streamingMipmapsPriority: 0 + grayScaleToAlpha: 0 + generateCubemap: 6 + cubemapConvolution: 0 + seamlessCubemap: 0 + textureFormat: 1 + maxTextureSize: 2048 + textureSettings: + serializedVersion: 2 + filterMode: -1 + aniso: 1 + mipBias: -100 + wrapU: 1 + wrapV: 1 + wrapW: -1 + nPOTScale: 0 + lightmap: 0 + compressionQuality: 50 + spriteMode: 0 + spriteExtrude: 1 + spriteMeshType: 1 + alignment: 0 + spritePivot: {x: 0.5, y: 0.5} + spritePixelsToUnits: 100 + spriteBorder: {x: 0, y: 0, z: 0, w: 0} + spriteGenerateFallbackPhysicsShape: 1 + alphaUsage: 1 + alphaIsTransparency: 1 + spriteTessellationDetail: -1 + textureType: 2 + textureShape: 1 + singleChannelComponent: 0 + maxTextureSizeSet: 0 + compressionQualitySet: 0 + textureFormatSet: 0 + platformSettings: + - serializedVersion: 2 + buildTarget: DefaultTexturePlatform + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Standalone + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: 4 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: WebGL + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 0 + spriteSheet: + serializedVersion: 2 + sprites: [] + outline: [] + physicsShape: [] + bones: [] + spriteID: + vertices: [] + indices: + edges: [] + weights: [] + spritePackingTag: + pSDRemoveMatte: 0 + pSDShowRemoveMatteOption: 0 + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/New Textures/Button_Active.png" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/New Textures/Button_Active.png" new file mode 100644 index 00000000..d86ec85a Binary files /dev/null and "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/New Textures/Button_Active.png" differ diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/New Textures/Button_Active.png.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/New Textures/Button_Active.png.meta" new file mode 100644 index 00000000..c23fdd26 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/New Textures/Button_Active.png.meta" @@ -0,0 +1,110 @@ +fileFormatVersion: 2 +guid: f1cb0ff35acd64d9b8e5979aeac4991a +TextureImporter: + fileIDToRecycleName: {} + externalObjects: {} + serializedVersion: 9 + mipmaps: + mipMapMode: 0 + enableMipMap: 0 + sRGBTexture: 1 + linearTexture: 0 + fadeOut: 0 + borderMipMap: 0 + mipMapsPreserveCoverage: 0 + alphaTestReferenceValue: 0.5 + mipMapFadeDistanceStart: 1 + mipMapFadeDistanceEnd: 3 + bumpmap: + convertToNormalMap: 0 + externalNormalMap: 0 + heightScale: 0.25 + normalMapFilter: 0 + isReadable: 0 + streamingMipmaps: 0 + streamingMipmapsPriority: 0 + grayScaleToAlpha: 0 + generateCubemap: 6 + cubemapConvolution: 0 + seamlessCubemap: 0 + textureFormat: 1 + maxTextureSize: 2048 + textureSettings: + serializedVersion: 2 + filterMode: -1 + aniso: 1 + mipBias: -100 + wrapU: 1 + wrapV: 1 + wrapW: 1 + nPOTScale: 0 + lightmap: 0 + compressionQuality: 50 + spriteMode: 1 + spriteExtrude: 1 + spriteMeshType: 1 + alignment: 0 + spritePivot: {x: 0.5, y: 0.5} + spritePixelsToUnits: 100 + spriteBorder: {x: 0, y: 0, z: 0, w: 0} + spriteGenerateFallbackPhysicsShape: 1 + alphaUsage: 1 + alphaIsTransparency: 1 + spriteTessellationDetail: -1 + textureType: 2 + textureShape: 1 + singleChannelComponent: 0 + maxTextureSizeSet: 0 + compressionQualitySet: 0 + textureFormatSet: 0 + platformSettings: + - serializedVersion: 2 + buildTarget: DefaultTexturePlatform + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Standalone + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: 4 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: WebGL + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 0 + spriteSheet: + serializedVersion: 2 + sprites: [] + outline: [] + physicsShape: [] + bones: [] + spriteID: 8f0577335f12a4fdabb5c0e935114c2b + vertices: [] + indices: + edges: [] + weights: [] + spritePackingTag: + pSDRemoveMatte: 0 + pSDShowRemoveMatteOption: 0 + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/New Textures/Button_Active@2x.png" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/New Textures/Button_Active@2x.png" new file mode 100644 index 00000000..1907400a Binary files /dev/null and "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/New Textures/Button_Active@2x.png" differ diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/New Textures/Button_Active@2x.png.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/New Textures/Button_Active@2x.png.meta" new file mode 100644 index 00000000..63b51052 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/New Textures/Button_Active@2x.png.meta" @@ -0,0 +1,110 @@ +fileFormatVersion: 2 +guid: b1a7274ff537f48e4b3f7f80489882d1 +TextureImporter: + fileIDToRecycleName: {} + externalObjects: {} + serializedVersion: 9 + mipmaps: + mipMapMode: 0 + enableMipMap: 0 + sRGBTexture: 1 + linearTexture: 0 + fadeOut: 0 + borderMipMap: 0 + mipMapsPreserveCoverage: 0 + alphaTestReferenceValue: 0.5 + mipMapFadeDistanceStart: 1 + mipMapFadeDistanceEnd: 3 + bumpmap: + convertToNormalMap: 0 + externalNormalMap: 0 + heightScale: 0.25 + normalMapFilter: 0 + isReadable: 0 + streamingMipmaps: 0 + streamingMipmapsPriority: 0 + grayScaleToAlpha: 0 + generateCubemap: 6 + cubemapConvolution: 0 + seamlessCubemap: 0 + textureFormat: 1 + maxTextureSize: 2048 + textureSettings: + serializedVersion: 2 + filterMode: -1 + aniso: 1 + mipBias: -100 + wrapU: 1 + wrapV: 1 + wrapW: -1 + nPOTScale: 0 + lightmap: 0 + compressionQuality: 50 + spriteMode: 0 + spriteExtrude: 1 + spriteMeshType: 1 + alignment: 0 + spritePivot: {x: 0.5, y: 0.5} + spritePixelsToUnits: 100 + spriteBorder: {x: 0, y: 0, z: 0, w: 0} + spriteGenerateFallbackPhysicsShape: 1 + alphaUsage: 1 + alphaIsTransparency: 1 + spriteTessellationDetail: -1 + textureType: 2 + textureShape: 1 + singleChannelComponent: 0 + maxTextureSizeSet: 0 + compressionQualitySet: 0 + textureFormatSet: 0 + platformSettings: + - serializedVersion: 2 + buildTarget: DefaultTexturePlatform + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Standalone + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: 4 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: WebGL + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 0 + spriteSheet: + serializedVersion: 2 + sprites: [] + outline: [] + physicsShape: [] + bones: [] + spriteID: + vertices: [] + indices: + edges: [] + weights: [] + spritePackingTag: + pSDRemoveMatte: 0 + pSDShowRemoveMatteOption: 0 + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/New Textures/Button_Hover.png" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/New Textures/Button_Hover.png" new file mode 100644 index 00000000..614794f8 Binary files /dev/null and "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/New Textures/Button_Hover.png" differ diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/New Textures/Button_Hover.png.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/New Textures/Button_Hover.png.meta" new file mode 100644 index 00000000..07bb4b82 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/New Textures/Button_Hover.png.meta" @@ -0,0 +1,110 @@ +fileFormatVersion: 2 +guid: fcdf668b5aa2d414f852003c8c78d5c8 +TextureImporter: + fileIDToRecycleName: {} + externalObjects: {} + serializedVersion: 9 + mipmaps: + mipMapMode: 0 + enableMipMap: 0 + sRGBTexture: 1 + linearTexture: 0 + fadeOut: 0 + borderMipMap: 0 + mipMapsPreserveCoverage: 0 + alphaTestReferenceValue: 0.5 + mipMapFadeDistanceStart: 1 + mipMapFadeDistanceEnd: 3 + bumpmap: + convertToNormalMap: 0 + externalNormalMap: 0 + heightScale: 0.25 + normalMapFilter: 0 + isReadable: 0 + streamingMipmaps: 0 + streamingMipmapsPriority: 0 + grayScaleToAlpha: 0 + generateCubemap: 6 + cubemapConvolution: 0 + seamlessCubemap: 0 + textureFormat: 1 + maxTextureSize: 2048 + textureSettings: + serializedVersion: 2 + filterMode: -1 + aniso: 1 + mipBias: -100 + wrapU: 1 + wrapV: 1 + wrapW: 1 + nPOTScale: 0 + lightmap: 0 + compressionQuality: 50 + spriteMode: 1 + spriteExtrude: 1 + spriteMeshType: 1 + alignment: 0 + spritePivot: {x: 0.5, y: 0.5} + spritePixelsToUnits: 100 + spriteBorder: {x: 0, y: 0, z: 0, w: 0} + spriteGenerateFallbackPhysicsShape: 1 + alphaUsage: 1 + alphaIsTransparency: 1 + spriteTessellationDetail: -1 + textureType: 2 + textureShape: 1 + singleChannelComponent: 0 + maxTextureSizeSet: 0 + compressionQualitySet: 0 + textureFormatSet: 0 + platformSettings: + - serializedVersion: 2 + buildTarget: DefaultTexturePlatform + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Standalone + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: 4 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: WebGL + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 0 + spriteSheet: + serializedVersion: 2 + sprites: [] + outline: [] + physicsShape: [] + bones: [] + spriteID: 0ddfe74d388624940b1c4a78d86ad7ed + vertices: [] + indices: + edges: [] + weights: [] + spritePackingTag: + pSDRemoveMatte: 0 + pSDShowRemoveMatteOption: 0 + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/New Textures/Button_Inactive.png" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/New Textures/Button_Inactive.png" new file mode 100644 index 00000000..776d21b7 Binary files /dev/null and "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/New Textures/Button_Inactive.png" differ diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/New Textures/Button_Inactive.png.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/New Textures/Button_Inactive.png.meta" new file mode 100644 index 00000000..37bd2d47 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/New Textures/Button_Inactive.png.meta" @@ -0,0 +1,110 @@ +fileFormatVersion: 2 +guid: 53593955dae60460489d1a8bfd694d52 +TextureImporter: + fileIDToRecycleName: {} + externalObjects: {} + serializedVersion: 9 + mipmaps: + mipMapMode: 0 + enableMipMap: 0 + sRGBTexture: 1 + linearTexture: 0 + fadeOut: 0 + borderMipMap: 0 + mipMapsPreserveCoverage: 0 + alphaTestReferenceValue: 0.5 + mipMapFadeDistanceStart: 1 + mipMapFadeDistanceEnd: 3 + bumpmap: + convertToNormalMap: 0 + externalNormalMap: 0 + heightScale: 0.25 + normalMapFilter: 0 + isReadable: 0 + streamingMipmaps: 0 + streamingMipmapsPriority: 0 + grayScaleToAlpha: 0 + generateCubemap: 6 + cubemapConvolution: 0 + seamlessCubemap: 0 + textureFormat: 1 + maxTextureSize: 2048 + textureSettings: + serializedVersion: 2 + filterMode: -1 + aniso: 1 + mipBias: -100 + wrapU: 1 + wrapV: 1 + wrapW: 1 + nPOTScale: 0 + lightmap: 0 + compressionQuality: 50 + spriteMode: 1 + spriteExtrude: 1 + spriteMeshType: 1 + alignment: 0 + spritePivot: {x: 0.5, y: 0.5} + spritePixelsToUnits: 100 + spriteBorder: {x: 0, y: 0, z: 0, w: 0} + spriteGenerateFallbackPhysicsShape: 1 + alphaUsage: 1 + alphaIsTransparency: 1 + spriteTessellationDetail: -1 + textureType: 2 + textureShape: 1 + singleChannelComponent: 0 + maxTextureSizeSet: 0 + compressionQualitySet: 0 + textureFormatSet: 0 + platformSettings: + - serializedVersion: 2 + buildTarget: DefaultTexturePlatform + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Standalone + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: 4 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: WebGL + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 0 + spriteSheet: + serializedVersion: 2 + sprites: [] + outline: [] + physicsShape: [] + bones: [] + spriteID: 70164e85a946e4642a83948bee15e219 + vertices: [] + indices: + edges: [] + weights: [] + spritePackingTag: + pSDRemoveMatte: 0 + pSDShowRemoveMatteOption: 0 + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/New Textures/Button_Inactive@2x.png" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/New Textures/Button_Inactive@2x.png" new file mode 100644 index 00000000..1807d8f8 Binary files /dev/null and "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/New Textures/Button_Inactive@2x.png" differ diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/New Textures/Button_Inactive@2x.png.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/New Textures/Button_Inactive@2x.png.meta" new file mode 100644 index 00000000..52198386 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/New Textures/Button_Inactive@2x.png.meta" @@ -0,0 +1,110 @@ +fileFormatVersion: 2 +guid: 6d09959d126db47b9987c1405b0595bc +TextureImporter: + fileIDToRecycleName: {} + externalObjects: {} + serializedVersion: 9 + mipmaps: + mipMapMode: 0 + enableMipMap: 0 + sRGBTexture: 1 + linearTexture: 0 + fadeOut: 0 + borderMipMap: 0 + mipMapsPreserveCoverage: 0 + alphaTestReferenceValue: 0.5 + mipMapFadeDistanceStart: 1 + mipMapFadeDistanceEnd: 3 + bumpmap: + convertToNormalMap: 0 + externalNormalMap: 0 + heightScale: 0.25 + normalMapFilter: 0 + isReadable: 0 + streamingMipmaps: 0 + streamingMipmapsPriority: 0 + grayScaleToAlpha: 0 + generateCubemap: 6 + cubemapConvolution: 0 + seamlessCubemap: 0 + textureFormat: 1 + maxTextureSize: 2048 + textureSettings: + serializedVersion: 2 + filterMode: -1 + aniso: 1 + mipBias: -100 + wrapU: 1 + wrapV: 1 + wrapW: -1 + nPOTScale: 0 + lightmap: 0 + compressionQuality: 50 + spriteMode: 0 + spriteExtrude: 1 + spriteMeshType: 1 + alignment: 0 + spritePivot: {x: 0.5, y: 0.5} + spritePixelsToUnits: 100 + spriteBorder: {x: 0, y: 0, z: 0, w: 0} + spriteGenerateFallbackPhysicsShape: 1 + alphaUsage: 1 + alphaIsTransparency: 1 + spriteTessellationDetail: -1 + textureType: 2 + textureShape: 1 + singleChannelComponent: 0 + maxTextureSizeSet: 0 + compressionQualitySet: 0 + textureFormatSet: 0 + platformSettings: + - serializedVersion: 2 + buildTarget: DefaultTexturePlatform + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Standalone + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: 4 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: WebGL + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 0 + spriteSheet: + serializedVersion: 2 + sprites: [] + outline: [] + physicsShape: [] + bones: [] + spriteID: + vertices: [] + indices: + edges: [] + weights: [] + spritePackingTag: + pSDRemoveMatte: 0 + pSDShowRemoveMatteOption: 0 + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/New Textures/Button_Normal.png" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/New Textures/Button_Normal.png" new file mode 100644 index 00000000..b81dd42a Binary files /dev/null and "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/New Textures/Button_Normal.png" differ diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/New Textures/Button_Normal.png.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/New Textures/Button_Normal.png.meta" new file mode 100644 index 00000000..f718ab2f --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/New Textures/Button_Normal.png.meta" @@ -0,0 +1,110 @@ +fileFormatVersion: 2 +guid: 878645da069e34c5088b3d7c3c2ef90f +TextureImporter: + fileIDToRecycleName: {} + externalObjects: {} + serializedVersion: 9 + mipmaps: + mipMapMode: 0 + enableMipMap: 0 + sRGBTexture: 1 + linearTexture: 0 + fadeOut: 0 + borderMipMap: 0 + mipMapsPreserveCoverage: 0 + alphaTestReferenceValue: 0.5 + mipMapFadeDistanceStart: 1 + mipMapFadeDistanceEnd: 3 + bumpmap: + convertToNormalMap: 0 + externalNormalMap: 0 + heightScale: 0.25 + normalMapFilter: 0 + isReadable: 0 + streamingMipmaps: 0 + streamingMipmapsPriority: 0 + grayScaleToAlpha: 0 + generateCubemap: 6 + cubemapConvolution: 0 + seamlessCubemap: 0 + textureFormat: 1 + maxTextureSize: 2048 + textureSettings: + serializedVersion: 2 + filterMode: -1 + aniso: 1 + mipBias: -100 + wrapU: 1 + wrapV: 1 + wrapW: 1 + nPOTScale: 0 + lightmap: 0 + compressionQuality: 50 + spriteMode: 1 + spriteExtrude: 1 + spriteMeshType: 1 + alignment: 0 + spritePivot: {x: 0.5, y: 0.5} + spritePixelsToUnits: 100 + spriteBorder: {x: 0, y: 0, z: 0, w: 0} + spriteGenerateFallbackPhysicsShape: 1 + alphaUsage: 1 + alphaIsTransparency: 1 + spriteTessellationDetail: -1 + textureType: 2 + textureShape: 1 + singleChannelComponent: 0 + maxTextureSizeSet: 0 + compressionQualitySet: 0 + textureFormatSet: 0 + platformSettings: + - serializedVersion: 2 + buildTarget: DefaultTexturePlatform + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Standalone + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: 4 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: WebGL + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 0 + spriteSheet: + serializedVersion: 2 + sprites: [] + outline: [] + physicsShape: [] + bones: [] + spriteID: 94acba51d5f964befb61089854a36809 + vertices: [] + indices: + edges: [] + weights: [] + spritePackingTag: + pSDRemoveMatte: 0 + pSDShowRemoveMatteOption: 0 + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/New Textures/Button_Normal@2x.png" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/New Textures/Button_Normal@2x.png" new file mode 100644 index 00000000..1ae6dbf7 Binary files /dev/null and "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/New Textures/Button_Normal@2x.png" differ diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/New Textures/Button_Normal@2x.png.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/New Textures/Button_Normal@2x.png.meta" new file mode 100644 index 00000000..8386f725 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/New Textures/Button_Normal@2x.png.meta" @@ -0,0 +1,110 @@ +fileFormatVersion: 2 +guid: c56208a8909c14f8095890748f300344 +TextureImporter: + fileIDToRecycleName: {} + externalObjects: {} + serializedVersion: 9 + mipmaps: + mipMapMode: 0 + enableMipMap: 0 + sRGBTexture: 1 + linearTexture: 0 + fadeOut: 0 + borderMipMap: 0 + mipMapsPreserveCoverage: 0 + alphaTestReferenceValue: 0.5 + mipMapFadeDistanceStart: 1 + mipMapFadeDistanceEnd: 3 + bumpmap: + convertToNormalMap: 0 + externalNormalMap: 0 + heightScale: 0.25 + normalMapFilter: 0 + isReadable: 0 + streamingMipmaps: 0 + streamingMipmapsPriority: 0 + grayScaleToAlpha: 0 + generateCubemap: 6 + cubemapConvolution: 0 + seamlessCubemap: 0 + textureFormat: 1 + maxTextureSize: 2048 + textureSettings: + serializedVersion: 2 + filterMode: -1 + aniso: 1 + mipBias: -100 + wrapU: 1 + wrapV: 1 + wrapW: -1 + nPOTScale: 0 + lightmap: 0 + compressionQuality: 50 + spriteMode: 0 + spriteExtrude: 1 + spriteMeshType: 1 + alignment: 0 + spritePivot: {x: 0.5, y: 0.5} + spritePixelsToUnits: 100 + spriteBorder: {x: 0, y: 0, z: 0, w: 0} + spriteGenerateFallbackPhysicsShape: 1 + alphaUsage: 1 + alphaIsTransparency: 1 + spriteTessellationDetail: -1 + textureType: 2 + textureShape: 1 + singleChannelComponent: 0 + maxTextureSizeSet: 0 + compressionQualitySet: 0 + textureFormatSet: 0 + platformSettings: + - serializedVersion: 2 + buildTarget: DefaultTexturePlatform + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Standalone + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: 4 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: WebGL + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 0 + spriteSheet: + serializedVersion: 2 + sprites: [] + outline: [] + physicsShape: [] + bones: [] + spriteID: + vertices: [] + indices: + edges: [] + weights: [] + spritePackingTag: + pSDRemoveMatte: 0 + pSDShowRemoveMatteOption: 0 + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/New Textures/Button_Secondary.png" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/New Textures/Button_Secondary.png" new file mode 100644 index 00000000..7cf2ef0e Binary files /dev/null and "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/New Textures/Button_Secondary.png" differ diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/New Textures/Button_Secondary.png.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/New Textures/Button_Secondary.png.meta" new file mode 100644 index 00000000..92359cf6 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/New Textures/Button_Secondary.png.meta" @@ -0,0 +1,110 @@ +fileFormatVersion: 2 +guid: e82c40615632b4a0fb304ca94ec44283 +TextureImporter: + fileIDToRecycleName: {} + externalObjects: {} + serializedVersion: 9 + mipmaps: + mipMapMode: 0 + enableMipMap: 0 + sRGBTexture: 1 + linearTexture: 0 + fadeOut: 0 + borderMipMap: 0 + mipMapsPreserveCoverage: 0 + alphaTestReferenceValue: 0.5 + mipMapFadeDistanceStart: 1 + mipMapFadeDistanceEnd: 3 + bumpmap: + convertToNormalMap: 0 + externalNormalMap: 0 + heightScale: 0.25 + normalMapFilter: 0 + isReadable: 0 + streamingMipmaps: 0 + streamingMipmapsPriority: 0 + grayScaleToAlpha: 0 + generateCubemap: 6 + cubemapConvolution: 0 + seamlessCubemap: 0 + textureFormat: 1 + maxTextureSize: 2048 + textureSettings: + serializedVersion: 2 + filterMode: -1 + aniso: 1 + mipBias: -100 + wrapU: 1 + wrapV: 1 + wrapW: -1 + nPOTScale: 0 + lightmap: 0 + compressionQuality: 50 + spriteMode: 0 + spriteExtrude: 1 + spriteMeshType: 1 + alignment: 0 + spritePivot: {x: 0.5, y: 0.5} + spritePixelsToUnits: 100 + spriteBorder: {x: 0, y: 0, z: 0, w: 0} + spriteGenerateFallbackPhysicsShape: 1 + alphaUsage: 1 + alphaIsTransparency: 1 + spriteTessellationDetail: -1 + textureType: 2 + textureShape: 1 + singleChannelComponent: 0 + maxTextureSizeSet: 0 + compressionQualitySet: 0 + textureFormatSet: 0 + platformSettings: + - serializedVersion: 2 + buildTarget: DefaultTexturePlatform + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Standalone + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: 4 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: WebGL + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 0 + spriteSheet: + serializedVersion: 2 + sprites: [] + outline: [] + physicsShape: [] + bones: [] + spriteID: + vertices: [] + indices: + edges: [] + weights: [] + spritePackingTag: + pSDRemoveMatte: 0 + pSDShowRemoveMatteOption: 0 + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/New Textures/Button_Secondary@2x.png" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/New Textures/Button_Secondary@2x.png" new file mode 100644 index 00000000..dd98c3ef Binary files /dev/null and "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/New Textures/Button_Secondary@2x.png" differ diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/New Textures/Button_Secondary@2x.png.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/New Textures/Button_Secondary@2x.png.meta" new file mode 100644 index 00000000..4d977921 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/New Textures/Button_Secondary@2x.png.meta" @@ -0,0 +1,110 @@ +fileFormatVersion: 2 +guid: c97382ba9f72b4877b473b128fa7aa20 +TextureImporter: + fileIDToRecycleName: {} + externalObjects: {} + serializedVersion: 9 + mipmaps: + mipMapMode: 0 + enableMipMap: 0 + sRGBTexture: 1 + linearTexture: 0 + fadeOut: 0 + borderMipMap: 0 + mipMapsPreserveCoverage: 0 + alphaTestReferenceValue: 0.5 + mipMapFadeDistanceStart: 1 + mipMapFadeDistanceEnd: 3 + bumpmap: + convertToNormalMap: 0 + externalNormalMap: 0 + heightScale: 0.25 + normalMapFilter: 0 + isReadable: 0 + streamingMipmaps: 0 + streamingMipmapsPriority: 0 + grayScaleToAlpha: 0 + generateCubemap: 6 + cubemapConvolution: 0 + seamlessCubemap: 0 + textureFormat: 1 + maxTextureSize: 2048 + textureSettings: + serializedVersion: 2 + filterMode: -1 + aniso: 1 + mipBias: -100 + wrapU: 1 + wrapV: 1 + wrapW: -1 + nPOTScale: 0 + lightmap: 0 + compressionQuality: 50 + spriteMode: 0 + spriteExtrude: 1 + spriteMeshType: 1 + alignment: 0 + spritePivot: {x: 0.5, y: 0.5} + spritePixelsToUnits: 100 + spriteBorder: {x: 0, y: 0, z: 0, w: 0} + spriteGenerateFallbackPhysicsShape: 1 + alphaUsage: 1 + alphaIsTransparency: 1 + spriteTessellationDetail: -1 + textureType: 2 + textureShape: 1 + singleChannelComponent: 0 + maxTextureSizeSet: 0 + compressionQualitySet: 0 + textureFormatSet: 0 + platformSettings: + - serializedVersion: 2 + buildTarget: DefaultTexturePlatform + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Standalone + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: 4 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: WebGL + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 0 + spriteSheet: + serializedVersion: 2 + sprites: [] + outline: [] + physicsShape: [] + bones: [] + spriteID: + vertices: [] + indices: + edges: [] + weights: [] + spritePackingTag: + pSDRemoveMatte: 0 + pSDShowRemoveMatteOption: 0 + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/New Textures/Button_Secondary_Active.png" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/New Textures/Button_Secondary_Active.png" new file mode 100644 index 00000000..bd90253f Binary files /dev/null and "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/New Textures/Button_Secondary_Active.png" differ diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/New Textures/Button_Secondary_Active.png.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/New Textures/Button_Secondary_Active.png.meta" new file mode 100644 index 00000000..3de41618 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/New Textures/Button_Secondary_Active.png.meta" @@ -0,0 +1,110 @@ +fileFormatVersion: 2 +guid: 34aaef5cb32a944929e046f6e162b475 +TextureImporter: + fileIDToRecycleName: {} + externalObjects: {} + serializedVersion: 9 + mipmaps: + mipMapMode: 0 + enableMipMap: 0 + sRGBTexture: 1 + linearTexture: 0 + fadeOut: 0 + borderMipMap: 0 + mipMapsPreserveCoverage: 0 + alphaTestReferenceValue: 0.5 + mipMapFadeDistanceStart: 1 + mipMapFadeDistanceEnd: 3 + bumpmap: + convertToNormalMap: 0 + externalNormalMap: 0 + heightScale: 0.25 + normalMapFilter: 0 + isReadable: 0 + streamingMipmaps: 0 + streamingMipmapsPriority: 0 + grayScaleToAlpha: 0 + generateCubemap: 6 + cubemapConvolution: 0 + seamlessCubemap: 0 + textureFormat: 1 + maxTextureSize: 2048 + textureSettings: + serializedVersion: 2 + filterMode: -1 + aniso: 1 + mipBias: -100 + wrapU: 1 + wrapV: 1 + wrapW: -1 + nPOTScale: 0 + lightmap: 0 + compressionQuality: 50 + spriteMode: 0 + spriteExtrude: 1 + spriteMeshType: 1 + alignment: 0 + spritePivot: {x: 0.5, y: 0.5} + spritePixelsToUnits: 100 + spriteBorder: {x: 0, y: 0, z: 0, w: 0} + spriteGenerateFallbackPhysicsShape: 1 + alphaUsage: 1 + alphaIsTransparency: 1 + spriteTessellationDetail: -1 + textureType: 2 + textureShape: 1 + singleChannelComponent: 0 + maxTextureSizeSet: 0 + compressionQualitySet: 0 + textureFormatSet: 0 + platformSettings: + - serializedVersion: 2 + buildTarget: DefaultTexturePlatform + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Standalone + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: 4 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: WebGL + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 0 + spriteSheet: + serializedVersion: 2 + sprites: [] + outline: [] + physicsShape: [] + bones: [] + spriteID: + vertices: [] + indices: + edges: [] + weights: [] + spritePackingTag: + pSDRemoveMatte: 0 + pSDShowRemoveMatteOption: 0 + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/New Textures/Button_Secondary_Active@2x.png" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/New Textures/Button_Secondary_Active@2x.png" new file mode 100644 index 00000000..0f11aa22 Binary files /dev/null and "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/New Textures/Button_Secondary_Active@2x.png" differ diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/New Textures/Button_Secondary_Active@2x.png.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/New Textures/Button_Secondary_Active@2x.png.meta" new file mode 100644 index 00000000..1ce16186 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/New Textures/Button_Secondary_Active@2x.png.meta" @@ -0,0 +1,110 @@ +fileFormatVersion: 2 +guid: fc0249d78ca11410c91f817bd077b284 +TextureImporter: + fileIDToRecycleName: {} + externalObjects: {} + serializedVersion: 9 + mipmaps: + mipMapMode: 0 + enableMipMap: 0 + sRGBTexture: 1 + linearTexture: 0 + fadeOut: 0 + borderMipMap: 0 + mipMapsPreserveCoverage: 0 + alphaTestReferenceValue: 0.5 + mipMapFadeDistanceStart: 1 + mipMapFadeDistanceEnd: 3 + bumpmap: + convertToNormalMap: 0 + externalNormalMap: 0 + heightScale: 0.25 + normalMapFilter: 0 + isReadable: 0 + streamingMipmaps: 0 + streamingMipmapsPriority: 0 + grayScaleToAlpha: 0 + generateCubemap: 6 + cubemapConvolution: 0 + seamlessCubemap: 0 + textureFormat: 1 + maxTextureSize: 2048 + textureSettings: + serializedVersion: 2 + filterMode: -1 + aniso: 1 + mipBias: -100 + wrapU: 1 + wrapV: 1 + wrapW: -1 + nPOTScale: 0 + lightmap: 0 + compressionQuality: 50 + spriteMode: 0 + spriteExtrude: 1 + spriteMeshType: 1 + alignment: 0 + spritePivot: {x: 0.5, y: 0.5} + spritePixelsToUnits: 100 + spriteBorder: {x: 0, y: 0, z: 0, w: 0} + spriteGenerateFallbackPhysicsShape: 1 + alphaUsage: 1 + alphaIsTransparency: 1 + spriteTessellationDetail: -1 + textureType: 2 + textureShape: 1 + singleChannelComponent: 0 + maxTextureSizeSet: 0 + compressionQualitySet: 0 + textureFormatSet: 0 + platformSettings: + - serializedVersion: 2 + buildTarget: DefaultTexturePlatform + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Standalone + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: 4 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: WebGL + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 0 + spriteSheet: + serializedVersion: 2 + sprites: [] + outline: [] + physicsShape: [] + bones: [] + spriteID: + vertices: [] + indices: + edges: [] + weights: [] + spritePackingTag: + pSDRemoveMatte: 0 + pSDShowRemoveMatteOption: 0 + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/New Textures/Home-Hover.png" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/New Textures/Home-Hover.png" new file mode 100644 index 00000000..03679b1b Binary files /dev/null and "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/New Textures/Home-Hover.png" differ diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/New Textures/Home-Hover.png.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/New Textures/Home-Hover.png.meta" new file mode 100644 index 00000000..ee83c158 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/New Textures/Home-Hover.png.meta" @@ -0,0 +1,110 @@ +fileFormatVersion: 2 +guid: 234e6aff61fd541cd9024e99a9058630 +TextureImporter: + fileIDToRecycleName: {} + externalObjects: {} + serializedVersion: 9 + mipmaps: + mipMapMode: 0 + enableMipMap: 0 + sRGBTexture: 1 + linearTexture: 0 + fadeOut: 0 + borderMipMap: 0 + mipMapsPreserveCoverage: 0 + alphaTestReferenceValue: 0.5 + mipMapFadeDistanceStart: 1 + mipMapFadeDistanceEnd: 3 + bumpmap: + convertToNormalMap: 0 + externalNormalMap: 0 + heightScale: 0.25 + normalMapFilter: 0 + isReadable: 0 + streamingMipmaps: 0 + streamingMipmapsPriority: 0 + grayScaleToAlpha: 0 + generateCubemap: 6 + cubemapConvolution: 0 + seamlessCubemap: 0 + textureFormat: 1 + maxTextureSize: 2048 + textureSettings: + serializedVersion: 2 + filterMode: -1 + aniso: 1 + mipBias: -100 + wrapU: 1 + wrapV: 1 + wrapW: -1 + nPOTScale: 0 + lightmap: 0 + compressionQuality: 50 + spriteMode: 0 + spriteExtrude: 1 + spriteMeshType: 1 + alignment: 0 + spritePivot: {x: 0.5, y: 0.5} + spritePixelsToUnits: 100 + spriteBorder: {x: 0, y: 0, z: 0, w: 0} + spriteGenerateFallbackPhysicsShape: 1 + alphaUsage: 1 + alphaIsTransparency: 1 + spriteTessellationDetail: -1 + textureType: 2 + textureShape: 1 + singleChannelComponent: 0 + maxTextureSizeSet: 0 + compressionQualitySet: 0 + textureFormatSet: 0 + platformSettings: + - serializedVersion: 2 + buildTarget: DefaultTexturePlatform + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Standalone + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: 12 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: WebGL + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 0 + spriteSheet: + serializedVersion: 2 + sprites: [] + outline: [] + physicsShape: [] + bones: [] + spriteID: + vertices: [] + indices: + edges: [] + weights: [] + spritePackingTag: + pSDRemoveMatte: 0 + pSDShowRemoveMatteOption: 0 + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/New Textures/Home-Hover@2x.png" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/New Textures/Home-Hover@2x.png" new file mode 100644 index 00000000..7ebb2cce Binary files /dev/null and "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/New Textures/Home-Hover@2x.png" differ diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/New Textures/Home-Hover@2x.png.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/New Textures/Home-Hover@2x.png.meta" new file mode 100644 index 00000000..1174fe53 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/New Textures/Home-Hover@2x.png.meta" @@ -0,0 +1,110 @@ +fileFormatVersion: 2 +guid: de3539277c1e348e4a98dea03b8327a5 +TextureImporter: + fileIDToRecycleName: {} + externalObjects: {} + serializedVersion: 9 + mipmaps: + mipMapMode: 0 + enableMipMap: 0 + sRGBTexture: 1 + linearTexture: 0 + fadeOut: 0 + borderMipMap: 0 + mipMapsPreserveCoverage: 0 + alphaTestReferenceValue: 0.5 + mipMapFadeDistanceStart: 1 + mipMapFadeDistanceEnd: 3 + bumpmap: + convertToNormalMap: 0 + externalNormalMap: 0 + heightScale: 0.25 + normalMapFilter: 0 + isReadable: 0 + streamingMipmaps: 0 + streamingMipmapsPriority: 0 + grayScaleToAlpha: 0 + generateCubemap: 6 + cubemapConvolution: 0 + seamlessCubemap: 0 + textureFormat: 1 + maxTextureSize: 2048 + textureSettings: + serializedVersion: 2 + filterMode: -1 + aniso: 1 + mipBias: -100 + wrapU: 1 + wrapV: 1 + wrapW: -1 + nPOTScale: 0 + lightmap: 0 + compressionQuality: 50 + spriteMode: 0 + spriteExtrude: 1 + spriteMeshType: 1 + alignment: 0 + spritePivot: {x: 0.5, y: 0.5} + spritePixelsToUnits: 100 + spriteBorder: {x: 0, y: 0, z: 0, w: 0} + spriteGenerateFallbackPhysicsShape: 1 + alphaUsage: 1 + alphaIsTransparency: 1 + spriteTessellationDetail: -1 + textureType: 2 + textureShape: 1 + singleChannelComponent: 0 + maxTextureSizeSet: 0 + compressionQualitySet: 0 + textureFormatSet: 0 + platformSettings: + - serializedVersion: 2 + buildTarget: DefaultTexturePlatform + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Standalone + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: 12 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: WebGL + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 0 + spriteSheet: + serializedVersion: 2 + sprites: [] + outline: [] + physicsShape: [] + bones: [] + spriteID: + vertices: [] + indices: + edges: [] + weights: [] + spritePackingTag: + pSDRemoveMatte: 0 + pSDShowRemoveMatteOption: 0 + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/New Textures/Home.png" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/New Textures/Home.png" new file mode 100644 index 00000000..51ab56cf Binary files /dev/null and "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/New Textures/Home.png" differ diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/New Textures/Home.png.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/New Textures/Home.png.meta" new file mode 100644 index 00000000..a94ff7d4 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/New Textures/Home.png.meta" @@ -0,0 +1,110 @@ +fileFormatVersion: 2 +guid: 8d7409fc2e9484a3c84d9967d5a31369 +TextureImporter: + fileIDToRecycleName: {} + externalObjects: {} + serializedVersion: 9 + mipmaps: + mipMapMode: 0 + enableMipMap: 0 + sRGBTexture: 1 + linearTexture: 0 + fadeOut: 0 + borderMipMap: 0 + mipMapsPreserveCoverage: 0 + alphaTestReferenceValue: 0.5 + mipMapFadeDistanceStart: 1 + mipMapFadeDistanceEnd: 3 + bumpmap: + convertToNormalMap: 0 + externalNormalMap: 0 + heightScale: 0.25 + normalMapFilter: 0 + isReadable: 0 + streamingMipmaps: 0 + streamingMipmapsPriority: 0 + grayScaleToAlpha: 0 + generateCubemap: 6 + cubemapConvolution: 0 + seamlessCubemap: 0 + textureFormat: 1 + maxTextureSize: 2048 + textureSettings: + serializedVersion: 2 + filterMode: -1 + aniso: 1 + mipBias: -100 + wrapU: 1 + wrapV: 1 + wrapW: -1 + nPOTScale: 0 + lightmap: 0 + compressionQuality: 50 + spriteMode: 0 + spriteExtrude: 1 + spriteMeshType: 1 + alignment: 0 + spritePivot: {x: 0.5, y: 0.5} + spritePixelsToUnits: 100 + spriteBorder: {x: 0, y: 0, z: 0, w: 0} + spriteGenerateFallbackPhysicsShape: 1 + alphaUsage: 1 + alphaIsTransparency: 1 + spriteTessellationDetail: -1 + textureType: 2 + textureShape: 1 + singleChannelComponent: 0 + maxTextureSizeSet: 0 + compressionQualitySet: 0 + textureFormatSet: 0 + platformSettings: + - serializedVersion: 2 + buildTarget: DefaultTexturePlatform + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Standalone + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: 4 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: WebGL + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 0 + spriteSheet: + serializedVersion: 2 + sprites: [] + outline: [] + physicsShape: [] + bones: [] + spriteID: + vertices: [] + indices: + edges: [] + weights: [] + spritePackingTag: + pSDRemoveMatte: 0 + pSDShowRemoveMatteOption: 0 + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/New Textures/Home@2x.png" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/New Textures/Home@2x.png" new file mode 100644 index 00000000..f6e48636 Binary files /dev/null and "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/New Textures/Home@2x.png" differ diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/New Textures/Home@2x.png.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/New Textures/Home@2x.png.meta" new file mode 100644 index 00000000..53fdda7d --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/New Textures/Home@2x.png.meta" @@ -0,0 +1,110 @@ +fileFormatVersion: 2 +guid: b717990a4caf74cb2a9b2b14f95d3b66 +TextureImporter: + fileIDToRecycleName: {} + externalObjects: {} + serializedVersion: 9 + mipmaps: + mipMapMode: 0 + enableMipMap: 0 + sRGBTexture: 1 + linearTexture: 0 + fadeOut: 0 + borderMipMap: 0 + mipMapsPreserveCoverage: 0 + alphaTestReferenceValue: 0.5 + mipMapFadeDistanceStart: 1 + mipMapFadeDistanceEnd: 3 + bumpmap: + convertToNormalMap: 0 + externalNormalMap: 0 + heightScale: 0.25 + normalMapFilter: 0 + isReadable: 0 + streamingMipmaps: 0 + streamingMipmapsPriority: 0 + grayScaleToAlpha: 0 + generateCubemap: 6 + cubemapConvolution: 0 + seamlessCubemap: 0 + textureFormat: 1 + maxTextureSize: 2048 + textureSettings: + serializedVersion: 2 + filterMode: -1 + aniso: 1 + mipBias: -100 + wrapU: 1 + wrapV: 1 + wrapW: -1 + nPOTScale: 0 + lightmap: 0 + compressionQuality: 50 + spriteMode: 0 + spriteExtrude: 1 + spriteMeshType: 1 + alignment: 0 + spritePivot: {x: 0.5, y: 0.5} + spritePixelsToUnits: 100 + spriteBorder: {x: 0, y: 0, z: 0, w: 0} + spriteGenerateFallbackPhysicsShape: 1 + alphaUsage: 1 + alphaIsTransparency: 1 + spriteTessellationDetail: -1 + textureType: 2 + textureShape: 1 + singleChannelComponent: 0 + maxTextureSizeSet: 0 + compressionQualitySet: 0 + textureFormatSet: 0 + platformSettings: + - serializedVersion: 2 + buildTarget: DefaultTexturePlatform + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Standalone + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: 4 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: WebGL + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 0 + spriteSheet: + serializedVersion: 2 + sprites: [] + outline: [] + physicsShape: [] + bones: [] + spriteID: + vertices: [] + indices: + edges: [] + weights: [] + spritePackingTag: + pSDRemoveMatte: 0 + pSDShowRemoveMatteOption: 0 + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/New Textures/Instruction_Body_Active.png" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/New Textures/Instruction_Body_Active.png" new file mode 100644 index 00000000..afc9ae1b Binary files /dev/null and "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/New Textures/Instruction_Body_Active.png" differ diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/New Textures/Instruction_Body_Active.png.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/New Textures/Instruction_Body_Active.png.meta" new file mode 100644 index 00000000..d6309eb1 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/New Textures/Instruction_Body_Active.png.meta" @@ -0,0 +1,110 @@ +fileFormatVersion: 2 +guid: 8cc2f1fa74db94cdfbb0b8147960ccb1 +TextureImporter: + fileIDToRecycleName: {} + externalObjects: {} + serializedVersion: 9 + mipmaps: + mipMapMode: 0 + enableMipMap: 0 + sRGBTexture: 1 + linearTexture: 0 + fadeOut: 0 + borderMipMap: 0 + mipMapsPreserveCoverage: 0 + alphaTestReferenceValue: 0.5 + mipMapFadeDistanceStart: 1 + mipMapFadeDistanceEnd: 3 + bumpmap: + convertToNormalMap: 0 + externalNormalMap: 0 + heightScale: 0.25 + normalMapFilter: 0 + isReadable: 0 + streamingMipmaps: 0 + streamingMipmapsPriority: 0 + grayScaleToAlpha: 0 + generateCubemap: 6 + cubemapConvolution: 0 + seamlessCubemap: 0 + textureFormat: 1 + maxTextureSize: 2048 + textureSettings: + serializedVersion: 2 + filterMode: -1 + aniso: 1 + mipBias: -100 + wrapU: 1 + wrapV: 1 + wrapW: 1 + nPOTScale: 0 + lightmap: 0 + compressionQuality: 50 + spriteMode: 1 + spriteExtrude: 1 + spriteMeshType: 1 + alignment: 0 + spritePivot: {x: 0.5, y: 0.5} + spritePixelsToUnits: 100 + spriteBorder: {x: 0, y: 0, z: 0, w: 0} + spriteGenerateFallbackPhysicsShape: 1 + alphaUsage: 1 + alphaIsTransparency: 1 + spriteTessellationDetail: -1 + textureType: 2 + textureShape: 1 + singleChannelComponent: 0 + maxTextureSizeSet: 0 + compressionQualitySet: 0 + textureFormatSet: 0 + platformSettings: + - serializedVersion: 2 + buildTarget: DefaultTexturePlatform + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Standalone + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: 4 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: WebGL + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 0 + spriteSheet: + serializedVersion: 2 + sprites: [] + outline: [] + physicsShape: [] + bones: [] + spriteID: 4bb9e4544912e40a8ad8553f3db5df0a + vertices: [] + indices: + edges: [] + weights: [] + spritePackingTag: + pSDRemoveMatte: 0 + pSDShowRemoveMatteOption: 0 + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/New Textures/Instruction_Body_Active@2x.png" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/New Textures/Instruction_Body_Active@2x.png" new file mode 100644 index 00000000..b3087ba0 Binary files /dev/null and "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/New Textures/Instruction_Body_Active@2x.png" differ diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/New Textures/Instruction_Body_Active@2x.png.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/New Textures/Instruction_Body_Active@2x.png.meta" new file mode 100644 index 00000000..c8e0d6c8 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/New Textures/Instruction_Body_Active@2x.png.meta" @@ -0,0 +1,110 @@ +fileFormatVersion: 2 +guid: b7b3cc7754dfe4180be5a16f709a9267 +TextureImporter: + fileIDToRecycleName: {} + externalObjects: {} + serializedVersion: 9 + mipmaps: + mipMapMode: 0 + enableMipMap: 0 + sRGBTexture: 1 + linearTexture: 0 + fadeOut: 0 + borderMipMap: 0 + mipMapsPreserveCoverage: 0 + alphaTestReferenceValue: 0.5 + mipMapFadeDistanceStart: 1 + mipMapFadeDistanceEnd: 3 + bumpmap: + convertToNormalMap: 0 + externalNormalMap: 0 + heightScale: 0.25 + normalMapFilter: 0 + isReadable: 0 + streamingMipmaps: 0 + streamingMipmapsPriority: 0 + grayScaleToAlpha: 0 + generateCubemap: 6 + cubemapConvolution: 0 + seamlessCubemap: 0 + textureFormat: 1 + maxTextureSize: 2048 + textureSettings: + serializedVersion: 2 + filterMode: -1 + aniso: 1 + mipBias: -100 + wrapU: 1 + wrapV: 1 + wrapW: -1 + nPOTScale: 0 + lightmap: 0 + compressionQuality: 50 + spriteMode: 0 + spriteExtrude: 1 + spriteMeshType: 1 + alignment: 0 + spritePivot: {x: 0.5, y: 0.5} + spritePixelsToUnits: 100 + spriteBorder: {x: 0, y: 0, z: 0, w: 0} + spriteGenerateFallbackPhysicsShape: 1 + alphaUsage: 1 + alphaIsTransparency: 1 + spriteTessellationDetail: -1 + textureType: 2 + textureShape: 1 + singleChannelComponent: 0 + maxTextureSizeSet: 0 + compressionQualitySet: 0 + textureFormatSet: 0 + platformSettings: + - serializedVersion: 2 + buildTarget: DefaultTexturePlatform + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Standalone + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: 4 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: WebGL + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 0 + spriteSheet: + serializedVersion: 2 + sprites: [] + outline: [] + physicsShape: [] + bones: [] + spriteID: + vertices: [] + indices: + edges: [] + weights: [] + spritePackingTag: + pSDRemoveMatte: 0 + pSDShowRemoveMatteOption: 0 + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/New Textures/Instruction_Body_Inactive.png" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/New Textures/Instruction_Body_Inactive.png" new file mode 100644 index 00000000..ea92b2e4 Binary files /dev/null and "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/New Textures/Instruction_Body_Inactive.png" differ diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/New Textures/Instruction_Body_Inactive.png.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/New Textures/Instruction_Body_Inactive.png.meta" new file mode 100644 index 00000000..14ffe458 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/New Textures/Instruction_Body_Inactive.png.meta" @@ -0,0 +1,110 @@ +fileFormatVersion: 2 +guid: c48c25a0685c04b10bdb4eab4fc1b6c2 +TextureImporter: + fileIDToRecycleName: {} + externalObjects: {} + serializedVersion: 9 + mipmaps: + mipMapMode: 0 + enableMipMap: 0 + sRGBTexture: 1 + linearTexture: 0 + fadeOut: 0 + borderMipMap: 0 + mipMapsPreserveCoverage: 0 + alphaTestReferenceValue: 0.5 + mipMapFadeDistanceStart: 1 + mipMapFadeDistanceEnd: 3 + bumpmap: + convertToNormalMap: 0 + externalNormalMap: 0 + heightScale: 0.25 + normalMapFilter: 0 + isReadable: 0 + streamingMipmaps: 0 + streamingMipmapsPriority: 0 + grayScaleToAlpha: 0 + generateCubemap: 6 + cubemapConvolution: 0 + seamlessCubemap: 0 + textureFormat: 1 + maxTextureSize: 2048 + textureSettings: + serializedVersion: 2 + filterMode: -1 + aniso: 1 + mipBias: -100 + wrapU: 1 + wrapV: 1 + wrapW: 1 + nPOTScale: 0 + lightmap: 0 + compressionQuality: 50 + spriteMode: 1 + spriteExtrude: 1 + spriteMeshType: 1 + alignment: 0 + spritePivot: {x: 0.5, y: 0.5} + spritePixelsToUnits: 100 + spriteBorder: {x: 0, y: 0, z: 0, w: 0} + spriteGenerateFallbackPhysicsShape: 1 + alphaUsage: 1 + alphaIsTransparency: 1 + spriteTessellationDetail: -1 + textureType: 2 + textureShape: 1 + singleChannelComponent: 0 + maxTextureSizeSet: 0 + compressionQualitySet: 0 + textureFormatSet: 0 + platformSettings: + - serializedVersion: 2 + buildTarget: DefaultTexturePlatform + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Standalone + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: 4 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: WebGL + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 0 + spriteSheet: + serializedVersion: 2 + sprites: [] + outline: [] + physicsShape: [] + bones: [] + spriteID: 9a7a17f2f855e4175852fc98dabbde84 + vertices: [] + indices: + edges: [] + weights: [] + spritePackingTag: + pSDRemoveMatte: 0 + pSDShowRemoveMatteOption: 0 + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/New Textures/Instruction_Body_Inactive@2x.png" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/New Textures/Instruction_Body_Inactive@2x.png" new file mode 100644 index 00000000..0b81159d Binary files /dev/null and "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/New Textures/Instruction_Body_Inactive@2x.png" differ diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/New Textures/Instruction_Body_Inactive@2x.png.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/New Textures/Instruction_Body_Inactive@2x.png.meta" new file mode 100644 index 00000000..8157d2d7 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/New Textures/Instruction_Body_Inactive@2x.png.meta" @@ -0,0 +1,110 @@ +fileFormatVersion: 2 +guid: 91e4fd7d34fdd4fb48ccfcf1d4148698 +TextureImporter: + fileIDToRecycleName: {} + externalObjects: {} + serializedVersion: 9 + mipmaps: + mipMapMode: 0 + enableMipMap: 0 + sRGBTexture: 1 + linearTexture: 0 + fadeOut: 0 + borderMipMap: 0 + mipMapsPreserveCoverage: 0 + alphaTestReferenceValue: 0.5 + mipMapFadeDistanceStart: 1 + mipMapFadeDistanceEnd: 3 + bumpmap: + convertToNormalMap: 0 + externalNormalMap: 0 + heightScale: 0.25 + normalMapFilter: 0 + isReadable: 0 + streamingMipmaps: 0 + streamingMipmapsPriority: 0 + grayScaleToAlpha: 0 + generateCubemap: 6 + cubemapConvolution: 0 + seamlessCubemap: 0 + textureFormat: 1 + maxTextureSize: 2048 + textureSettings: + serializedVersion: 2 + filterMode: -1 + aniso: 1 + mipBias: -100 + wrapU: 1 + wrapV: 1 + wrapW: -1 + nPOTScale: 0 + lightmap: 0 + compressionQuality: 50 + spriteMode: 0 + spriteExtrude: 1 + spriteMeshType: 1 + alignment: 0 + spritePivot: {x: 0.5, y: 0.5} + spritePixelsToUnits: 100 + spriteBorder: {x: 0, y: 0, z: 0, w: 0} + spriteGenerateFallbackPhysicsShape: 1 + alphaUsage: 1 + alphaIsTransparency: 1 + spriteTessellationDetail: -1 + textureType: 2 + textureShape: 1 + singleChannelComponent: 0 + maxTextureSizeSet: 0 + compressionQualitySet: 0 + textureFormatSet: 0 + platformSettings: + - serializedVersion: 2 + buildTarget: DefaultTexturePlatform + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Standalone + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: 4 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: WebGL + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 0 + spriteSheet: + serializedVersion: 2 + sprites: [] + outline: [] + physicsShape: [] + bones: [] + spriteID: + vertices: [] + indices: + edges: [] + weights: [] + spritePackingTag: + pSDRemoveMatte: 0 + pSDShowRemoveMatteOption: 0 + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/New Textures/Instruction_Title_Active.png" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/New Textures/Instruction_Title_Active.png" new file mode 100644 index 00000000..808b1311 Binary files /dev/null and "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/New Textures/Instruction_Title_Active.png" differ diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/New Textures/Instruction_Title_Active.png.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/New Textures/Instruction_Title_Active.png.meta" new file mode 100644 index 00000000..de9e717f --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/New Textures/Instruction_Title_Active.png.meta" @@ -0,0 +1,110 @@ +fileFormatVersion: 2 +guid: f5e7d4905fcf24920b520603413c3381 +TextureImporter: + fileIDToRecycleName: {} + externalObjects: {} + serializedVersion: 9 + mipmaps: + mipMapMode: 0 + enableMipMap: 0 + sRGBTexture: 1 + linearTexture: 0 + fadeOut: 0 + borderMipMap: 0 + mipMapsPreserveCoverage: 0 + alphaTestReferenceValue: 0.5 + mipMapFadeDistanceStart: 1 + mipMapFadeDistanceEnd: 3 + bumpmap: + convertToNormalMap: 0 + externalNormalMap: 0 + heightScale: 0.25 + normalMapFilter: 0 + isReadable: 0 + streamingMipmaps: 0 + streamingMipmapsPriority: 0 + grayScaleToAlpha: 0 + generateCubemap: 6 + cubemapConvolution: 0 + seamlessCubemap: 0 + textureFormat: 1 + maxTextureSize: 2048 + textureSettings: + serializedVersion: 2 + filterMode: -1 + aniso: 1 + mipBias: -100 + wrapU: 1 + wrapV: 1 + wrapW: 1 + nPOTScale: 0 + lightmap: 0 + compressionQuality: 50 + spriteMode: 1 + spriteExtrude: 1 + spriteMeshType: 1 + alignment: 0 + spritePivot: {x: 0.5, y: 0.5} + spritePixelsToUnits: 100 + spriteBorder: {x: 0, y: 0, z: 0, w: 0} + spriteGenerateFallbackPhysicsShape: 1 + alphaUsage: 1 + alphaIsTransparency: 1 + spriteTessellationDetail: -1 + textureType: 2 + textureShape: 1 + singleChannelComponent: 0 + maxTextureSizeSet: 0 + compressionQualitySet: 0 + textureFormatSet: 0 + platformSettings: + - serializedVersion: 2 + buildTarget: DefaultTexturePlatform + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Standalone + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: 4 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: WebGL + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 0 + spriteSheet: + serializedVersion: 2 + sprites: [] + outline: [] + physicsShape: [] + bones: [] + spriteID: ca3695960991e4c66b046889495fed7d + vertices: [] + indices: + edges: [] + weights: [] + spritePackingTag: + pSDRemoveMatte: 0 + pSDShowRemoveMatteOption: 0 + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/New Textures/Instruction_Title_Active@2x.png" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/New Textures/Instruction_Title_Active@2x.png" new file mode 100644 index 00000000..f6638901 Binary files /dev/null and "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/New Textures/Instruction_Title_Active@2x.png" differ diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/New Textures/Instruction_Title_Active@2x.png.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/New Textures/Instruction_Title_Active@2x.png.meta" new file mode 100644 index 00000000..9c39c3d1 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/New Textures/Instruction_Title_Active@2x.png.meta" @@ -0,0 +1,110 @@ +fileFormatVersion: 2 +guid: 8918f260658164dbc89eab6600be3d3d +TextureImporter: + fileIDToRecycleName: {} + externalObjects: {} + serializedVersion: 9 + mipmaps: + mipMapMode: 0 + enableMipMap: 0 + sRGBTexture: 1 + linearTexture: 0 + fadeOut: 0 + borderMipMap: 0 + mipMapsPreserveCoverage: 0 + alphaTestReferenceValue: 0.5 + mipMapFadeDistanceStart: 1 + mipMapFadeDistanceEnd: 3 + bumpmap: + convertToNormalMap: 0 + externalNormalMap: 0 + heightScale: 0.25 + normalMapFilter: 0 + isReadable: 0 + streamingMipmaps: 0 + streamingMipmapsPriority: 0 + grayScaleToAlpha: 0 + generateCubemap: 6 + cubemapConvolution: 0 + seamlessCubemap: 0 + textureFormat: 1 + maxTextureSize: 2048 + textureSettings: + serializedVersion: 2 + filterMode: -1 + aniso: 1 + mipBias: -100 + wrapU: 1 + wrapV: 1 + wrapW: -1 + nPOTScale: 0 + lightmap: 0 + compressionQuality: 50 + spriteMode: 0 + spriteExtrude: 1 + spriteMeshType: 1 + alignment: 0 + spritePivot: {x: 0.5, y: 0.5} + spritePixelsToUnits: 100 + spriteBorder: {x: 0, y: 0, z: 0, w: 0} + spriteGenerateFallbackPhysicsShape: 1 + alphaUsage: 1 + alphaIsTransparency: 1 + spriteTessellationDetail: -1 + textureType: 2 + textureShape: 1 + singleChannelComponent: 0 + maxTextureSizeSet: 0 + compressionQualitySet: 0 + textureFormatSet: 0 + platformSettings: + - serializedVersion: 2 + buildTarget: DefaultTexturePlatform + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Standalone + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: 4 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: WebGL + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 0 + spriteSheet: + serializedVersion: 2 + sprites: [] + outline: [] + physicsShape: [] + bones: [] + spriteID: + vertices: [] + indices: + edges: [] + weights: [] + spritePackingTag: + pSDRemoveMatte: 0 + pSDShowRemoveMatteOption: 0 + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/New Textures/Instruction_Title_Complete.png" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/New Textures/Instruction_Title_Complete.png" new file mode 100644 index 00000000..d0c97650 Binary files /dev/null and "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/New Textures/Instruction_Title_Complete.png" differ diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/New Textures/Instruction_Title_Complete.png.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/New Textures/Instruction_Title_Complete.png.meta" new file mode 100644 index 00000000..b6e4624a --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/New Textures/Instruction_Title_Complete.png.meta" @@ -0,0 +1,110 @@ +fileFormatVersion: 2 +guid: 28767434ebbb44a17a99da7d9f5cbd23 +TextureImporter: + fileIDToRecycleName: {} + externalObjects: {} + serializedVersion: 9 + mipmaps: + mipMapMode: 0 + enableMipMap: 0 + sRGBTexture: 1 + linearTexture: 0 + fadeOut: 0 + borderMipMap: 0 + mipMapsPreserveCoverage: 0 + alphaTestReferenceValue: 0.5 + mipMapFadeDistanceStart: 1 + mipMapFadeDistanceEnd: 3 + bumpmap: + convertToNormalMap: 0 + externalNormalMap: 0 + heightScale: 0.25 + normalMapFilter: 0 + isReadable: 0 + streamingMipmaps: 0 + streamingMipmapsPriority: 0 + grayScaleToAlpha: 0 + generateCubemap: 6 + cubemapConvolution: 0 + seamlessCubemap: 0 + textureFormat: 1 + maxTextureSize: 2048 + textureSettings: + serializedVersion: 2 + filterMode: -1 + aniso: 1 + mipBias: -100 + wrapU: 1 + wrapV: 1 + wrapW: 1 + nPOTScale: 0 + lightmap: 0 + compressionQuality: 50 + spriteMode: 1 + spriteExtrude: 1 + spriteMeshType: 1 + alignment: 0 + spritePivot: {x: 0.5, y: 0.5} + spritePixelsToUnits: 100 + spriteBorder: {x: 0, y: 0, z: 0, w: 0} + spriteGenerateFallbackPhysicsShape: 1 + alphaUsage: 1 + alphaIsTransparency: 1 + spriteTessellationDetail: -1 + textureType: 2 + textureShape: 1 + singleChannelComponent: 0 + maxTextureSizeSet: 0 + compressionQualitySet: 0 + textureFormatSet: 0 + platformSettings: + - serializedVersion: 2 + buildTarget: DefaultTexturePlatform + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Standalone + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: 4 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: WebGL + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 0 + spriteSheet: + serializedVersion: 2 + sprites: [] + outline: [] + physicsShape: [] + bones: [] + spriteID: c71a925217a9c419f99ee78af4f40b53 + vertices: [] + indices: + edges: [] + weights: [] + spritePackingTag: + pSDRemoveMatte: 0 + pSDShowRemoveMatteOption: 0 + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/New Textures/Instruction_Title_Complete@2x.png" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/New Textures/Instruction_Title_Complete@2x.png" new file mode 100644 index 00000000..6d692cb9 Binary files /dev/null and "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/New Textures/Instruction_Title_Complete@2x.png" differ diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/New Textures/Instruction_Title_Complete@2x.png.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/New Textures/Instruction_Title_Complete@2x.png.meta" new file mode 100644 index 00000000..b433ace2 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/New Textures/Instruction_Title_Complete@2x.png.meta" @@ -0,0 +1,110 @@ +fileFormatVersion: 2 +guid: 83d52f0da8a5d474b98f940a8c9df772 +TextureImporter: + fileIDToRecycleName: {} + externalObjects: {} + serializedVersion: 9 + mipmaps: + mipMapMode: 0 + enableMipMap: 0 + sRGBTexture: 1 + linearTexture: 0 + fadeOut: 0 + borderMipMap: 0 + mipMapsPreserveCoverage: 0 + alphaTestReferenceValue: 0.5 + mipMapFadeDistanceStart: 1 + mipMapFadeDistanceEnd: 3 + bumpmap: + convertToNormalMap: 0 + externalNormalMap: 0 + heightScale: 0.25 + normalMapFilter: 0 + isReadable: 0 + streamingMipmaps: 0 + streamingMipmapsPriority: 0 + grayScaleToAlpha: 0 + generateCubemap: 6 + cubemapConvolution: 0 + seamlessCubemap: 0 + textureFormat: 1 + maxTextureSize: 2048 + textureSettings: + serializedVersion: 2 + filterMode: -1 + aniso: 1 + mipBias: -100 + wrapU: 1 + wrapV: 1 + wrapW: -1 + nPOTScale: 0 + lightmap: 0 + compressionQuality: 50 + spriteMode: 0 + spriteExtrude: 1 + spriteMeshType: 1 + alignment: 0 + spritePivot: {x: 0.5, y: 0.5} + spritePixelsToUnits: 100 + spriteBorder: {x: 0, y: 0, z: 0, w: 0} + spriteGenerateFallbackPhysicsShape: 1 + alphaUsage: 1 + alphaIsTransparency: 1 + spriteTessellationDetail: -1 + textureType: 2 + textureShape: 1 + singleChannelComponent: 0 + maxTextureSizeSet: 0 + compressionQualitySet: 0 + textureFormatSet: 0 + platformSettings: + - serializedVersion: 2 + buildTarget: DefaultTexturePlatform + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Standalone + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: 4 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: WebGL + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 0 + spriteSheet: + serializedVersion: 2 + sprites: [] + outline: [] + physicsShape: [] + bones: [] + spriteID: + vertices: [] + indices: + edges: [] + weights: [] + spritePackingTag: + pSDRemoveMatte: 0 + pSDShowRemoveMatteOption: 0 + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/New Textures/Instruction_Title_Inactive.png" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/New Textures/Instruction_Title_Inactive.png" new file mode 100644 index 00000000..6eb373a8 Binary files /dev/null and "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/New Textures/Instruction_Title_Inactive.png" differ diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/New Textures/Instruction_Title_Inactive.png.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/New Textures/Instruction_Title_Inactive.png.meta" new file mode 100644 index 00000000..10207d04 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/New Textures/Instruction_Title_Inactive.png.meta" @@ -0,0 +1,110 @@ +fileFormatVersion: 2 +guid: 4e3cd834d941d48d4beef214d3e94bf6 +TextureImporter: + fileIDToRecycleName: {} + externalObjects: {} + serializedVersion: 9 + mipmaps: + mipMapMode: 0 + enableMipMap: 0 + sRGBTexture: 1 + linearTexture: 0 + fadeOut: 0 + borderMipMap: 0 + mipMapsPreserveCoverage: 0 + alphaTestReferenceValue: 0.5 + mipMapFadeDistanceStart: 1 + mipMapFadeDistanceEnd: 3 + bumpmap: + convertToNormalMap: 0 + externalNormalMap: 0 + heightScale: 0.25 + normalMapFilter: 0 + isReadable: 0 + streamingMipmaps: 0 + streamingMipmapsPriority: 0 + grayScaleToAlpha: 0 + generateCubemap: 6 + cubemapConvolution: 0 + seamlessCubemap: 0 + textureFormat: 1 + maxTextureSize: 2048 + textureSettings: + serializedVersion: 2 + filterMode: -1 + aniso: 1 + mipBias: -100 + wrapU: 1 + wrapV: 1 + wrapW: 1 + nPOTScale: 0 + lightmap: 0 + compressionQuality: 50 + spriteMode: 1 + spriteExtrude: 1 + spriteMeshType: 1 + alignment: 0 + spritePivot: {x: 0.5, y: 0.5} + spritePixelsToUnits: 100 + spriteBorder: {x: 0, y: 0, z: 0, w: 0} + spriteGenerateFallbackPhysicsShape: 1 + alphaUsage: 1 + alphaIsTransparency: 1 + spriteTessellationDetail: -1 + textureType: 2 + textureShape: 1 + singleChannelComponent: 0 + maxTextureSizeSet: 0 + compressionQualitySet: 0 + textureFormatSet: 0 + platformSettings: + - serializedVersion: 2 + buildTarget: DefaultTexturePlatform + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Standalone + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: 4 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: WebGL + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 0 + spriteSheet: + serializedVersion: 2 + sprites: [] + outline: [] + physicsShape: [] + bones: [] + spriteID: 8d875fe7b67364cc1bd66fa3858a4935 + vertices: [] + indices: + edges: [] + weights: [] + spritePackingTag: + pSDRemoveMatte: 0 + pSDShowRemoveMatteOption: 0 + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/New Textures/Instruction_Title_Inactive@2x.png" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/New Textures/Instruction_Title_Inactive@2x.png" new file mode 100644 index 00000000..cebbf0ca Binary files /dev/null and "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/New Textures/Instruction_Title_Inactive@2x.png" differ diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/New Textures/Instruction_Title_Inactive@2x.png.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/New Textures/Instruction_Title_Inactive@2x.png.meta" new file mode 100644 index 00000000..be2c0b43 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/New Textures/Instruction_Title_Inactive@2x.png.meta" @@ -0,0 +1,110 @@ +fileFormatVersion: 2 +guid: 80a3fbd7bf88d409fbd011ef9fe0980a +TextureImporter: + fileIDToRecycleName: {} + externalObjects: {} + serializedVersion: 9 + mipmaps: + mipMapMode: 0 + enableMipMap: 0 + sRGBTexture: 1 + linearTexture: 0 + fadeOut: 0 + borderMipMap: 0 + mipMapsPreserveCoverage: 0 + alphaTestReferenceValue: 0.5 + mipMapFadeDistanceStart: 1 + mipMapFadeDistanceEnd: 3 + bumpmap: + convertToNormalMap: 0 + externalNormalMap: 0 + heightScale: 0.25 + normalMapFilter: 0 + isReadable: 0 + streamingMipmaps: 0 + streamingMipmapsPriority: 0 + grayScaleToAlpha: 0 + generateCubemap: 6 + cubemapConvolution: 0 + seamlessCubemap: 0 + textureFormat: 1 + maxTextureSize: 2048 + textureSettings: + serializedVersion: 2 + filterMode: -1 + aniso: 1 + mipBias: -100 + wrapU: 1 + wrapV: 1 + wrapW: -1 + nPOTScale: 0 + lightmap: 0 + compressionQuality: 50 + spriteMode: 0 + spriteExtrude: 1 + spriteMeshType: 1 + alignment: 0 + spritePivot: {x: 0.5, y: 0.5} + spritePixelsToUnits: 100 + spriteBorder: {x: 0, y: 0, z: 0, w: 0} + spriteGenerateFallbackPhysicsShape: 1 + alphaUsage: 1 + alphaIsTransparency: 1 + spriteTessellationDetail: -1 + textureType: 2 + textureShape: 1 + singleChannelComponent: 0 + maxTextureSizeSet: 0 + compressionQualitySet: 0 + textureFormatSet: 0 + platformSettings: + - serializedVersion: 2 + buildTarget: DefaultTexturePlatform + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Standalone + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: 4 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: WebGL + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 0 + spriteSheet: + serializedVersion: 2 + sprites: [] + outline: [] + physicsShape: [] + bones: [] + spriteID: + vertices: [] + indices: + edges: [] + weights: [] + spritePackingTag: + pSDRemoveMatte: 0 + pSDShowRemoveMatteOption: 0 + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/New Textures/ProgressBar.png" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/New Textures/ProgressBar.png" new file mode 100644 index 00000000..ef6866da Binary files /dev/null and "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/New Textures/ProgressBar.png" differ diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/New Textures/ProgressBar.png.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/New Textures/ProgressBar.png.meta" new file mode 100644 index 00000000..2589727a --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/New Textures/ProgressBar.png.meta" @@ -0,0 +1,110 @@ +fileFormatVersion: 2 +guid: b74071590687245c59a2333df73ad456 +TextureImporter: + fileIDToRecycleName: {} + externalObjects: {} + serializedVersion: 9 + mipmaps: + mipMapMode: 0 + enableMipMap: 0 + sRGBTexture: 1 + linearTexture: 0 + fadeOut: 0 + borderMipMap: 0 + mipMapsPreserveCoverage: 0 + alphaTestReferenceValue: 0.5 + mipMapFadeDistanceStart: 1 + mipMapFadeDistanceEnd: 3 + bumpmap: + convertToNormalMap: 0 + externalNormalMap: 0 + heightScale: 0.25 + normalMapFilter: 0 + isReadable: 0 + streamingMipmaps: 0 + streamingMipmapsPriority: 0 + grayScaleToAlpha: 0 + generateCubemap: 6 + cubemapConvolution: 0 + seamlessCubemap: 0 + textureFormat: 1 + maxTextureSize: 2048 + textureSettings: + serializedVersion: 2 + filterMode: -1 + aniso: 1 + mipBias: -100 + wrapU: 1 + wrapV: 1 + wrapW: 1 + nPOTScale: 0 + lightmap: 0 + compressionQuality: 50 + spriteMode: 1 + spriteExtrude: 1 + spriteMeshType: 1 + alignment: 0 + spritePivot: {x: 0.5, y: 0.5} + spritePixelsToUnits: 100 + spriteBorder: {x: 0, y: 0, z: 0, w: 0} + spriteGenerateFallbackPhysicsShape: 1 + alphaUsage: 1 + alphaIsTransparency: 1 + spriteTessellationDetail: -1 + textureType: 2 + textureShape: 1 + singleChannelComponent: 0 + maxTextureSizeSet: 0 + compressionQualitySet: 0 + textureFormatSet: 0 + platformSettings: + - serializedVersion: 2 + buildTarget: DefaultTexturePlatform + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Standalone + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: 4 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: WebGL + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 0 + spriteSheet: + serializedVersion: 2 + sprites: [] + outline: [] + physicsShape: [] + bones: [] + spriteID: 2896c7d0a754d43978a5c07a80eef3b5 + vertices: [] + indices: + edges: [] + weights: [] + spritePackingTag: + pSDRemoveMatte: 0 + pSDShowRemoveMatteOption: 0 + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/New Textures/Task_Completed.png" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/New Textures/Task_Completed.png" new file mode 100644 index 00000000..5ab7c49c Binary files /dev/null and "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/New Textures/Task_Completed.png" differ diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/New Textures/Task_Completed.png.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/New Textures/Task_Completed.png.meta" new file mode 100644 index 00000000..efea21e2 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/New Textures/Task_Completed.png.meta" @@ -0,0 +1,110 @@ +fileFormatVersion: 2 +guid: 4d3432c1ca29344e39c6363a16fc8db7 +TextureImporter: + fileIDToRecycleName: {} + externalObjects: {} + serializedVersion: 9 + mipmaps: + mipMapMode: 0 + enableMipMap: 0 + sRGBTexture: 1 + linearTexture: 0 + fadeOut: 0 + borderMipMap: 0 + mipMapsPreserveCoverage: 0 + alphaTestReferenceValue: 0.5 + mipMapFadeDistanceStart: 1 + mipMapFadeDistanceEnd: 3 + bumpmap: + convertToNormalMap: 0 + externalNormalMap: 0 + heightScale: 0.25 + normalMapFilter: 0 + isReadable: 0 + streamingMipmaps: 0 + streamingMipmapsPriority: 0 + grayScaleToAlpha: 0 + generateCubemap: 6 + cubemapConvolution: 0 + seamlessCubemap: 0 + textureFormat: 1 + maxTextureSize: 2048 + textureSettings: + serializedVersion: 2 + filterMode: -1 + aniso: 1 + mipBias: -100 + wrapU: 1 + wrapV: 1 + wrapW: 1 + nPOTScale: 0 + lightmap: 0 + compressionQuality: 50 + spriteMode: 1 + spriteExtrude: 1 + spriteMeshType: 1 + alignment: 0 + spritePivot: {x: 0.5, y: 0.5} + spritePixelsToUnits: 100 + spriteBorder: {x: 0, y: 0, z: 0, w: 0} + spriteGenerateFallbackPhysicsShape: 1 + alphaUsage: 1 + alphaIsTransparency: 1 + spriteTessellationDetail: -1 + textureType: 2 + textureShape: 1 + singleChannelComponent: 0 + maxTextureSizeSet: 0 + compressionQualitySet: 0 + textureFormatSet: 0 + platformSettings: + - serializedVersion: 2 + buildTarget: DefaultTexturePlatform + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Standalone + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: 4 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: WebGL + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 0 + spriteSheet: + serializedVersion: 2 + sprites: [] + outline: [] + physicsShape: [] + bones: [] + spriteID: 6a18e26e30db54cdca5ec7757d93bffc + vertices: [] + indices: + edges: [] + weights: [] + spritePackingTag: + pSDRemoveMatte: 0 + pSDShowRemoveMatteOption: 0 + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/New Textures/Task_Completed@2x.png" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/New Textures/Task_Completed@2x.png" new file mode 100644 index 00000000..812fa19e Binary files /dev/null and "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/New Textures/Task_Completed@2x.png" differ diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/New Textures/Task_Completed@2x.png.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/New Textures/Task_Completed@2x.png.meta" new file mode 100644 index 00000000..1e05e6fc --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/New Textures/Task_Completed@2x.png.meta" @@ -0,0 +1,110 @@ +fileFormatVersion: 2 +guid: 0aff1b0c509b040509a27864d858f4f2 +TextureImporter: + fileIDToRecycleName: {} + externalObjects: {} + serializedVersion: 9 + mipmaps: + mipMapMode: 0 + enableMipMap: 0 + sRGBTexture: 1 + linearTexture: 0 + fadeOut: 0 + borderMipMap: 0 + mipMapsPreserveCoverage: 0 + alphaTestReferenceValue: 0.5 + mipMapFadeDistanceStart: 1 + mipMapFadeDistanceEnd: 3 + bumpmap: + convertToNormalMap: 0 + externalNormalMap: 0 + heightScale: 0.25 + normalMapFilter: 0 + isReadable: 0 + streamingMipmaps: 0 + streamingMipmapsPriority: 0 + grayScaleToAlpha: 0 + generateCubemap: 6 + cubemapConvolution: 0 + seamlessCubemap: 0 + textureFormat: 1 + maxTextureSize: 2048 + textureSettings: + serializedVersion: 2 + filterMode: -1 + aniso: 1 + mipBias: -100 + wrapU: 1 + wrapV: 1 + wrapW: 1 + nPOTScale: 0 + lightmap: 0 + compressionQuality: 50 + spriteMode: 1 + spriteExtrude: 1 + spriteMeshType: 1 + alignment: 0 + spritePivot: {x: 0.5, y: 0.5} + spritePixelsToUnits: 100 + spriteBorder: {x: 0, y: 0, z: 0, w: 0} + spriteGenerateFallbackPhysicsShape: 1 + alphaUsage: 1 + alphaIsTransparency: 1 + spriteTessellationDetail: -1 + textureType: 2 + textureShape: 1 + singleChannelComponent: 0 + maxTextureSizeSet: 0 + compressionQualitySet: 0 + textureFormatSet: 0 + platformSettings: + - serializedVersion: 2 + buildTarget: DefaultTexturePlatform + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Standalone + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: 4 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: WebGL + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 0 + spriteSheet: + serializedVersion: 2 + sprites: [] + outline: [] + physicsShape: [] + bones: [] + spriteID: 80041952c51e34b48b609e336b240880 + vertices: [] + indices: + edges: [] + weights: [] + spritePackingTag: + pSDRemoveMatte: 0 + pSDShowRemoveMatteOption: 0 + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/New Textures/Task_Todo.png" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/New Textures/Task_Todo.png" new file mode 100644 index 00000000..b5b84ec8 Binary files /dev/null and "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/New Textures/Task_Todo.png" differ diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/New Textures/Task_Todo.png.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/New Textures/Task_Todo.png.meta" new file mode 100644 index 00000000..f860c4c9 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/New Textures/Task_Todo.png.meta" @@ -0,0 +1,110 @@ +fileFormatVersion: 2 +guid: 185156b425ccf41ed8c47a4c7c6d397d +TextureImporter: + fileIDToRecycleName: {} + externalObjects: {} + serializedVersion: 9 + mipmaps: + mipMapMode: 0 + enableMipMap: 0 + sRGBTexture: 1 + linearTexture: 0 + fadeOut: 0 + borderMipMap: 0 + mipMapsPreserveCoverage: 0 + alphaTestReferenceValue: 0.5 + mipMapFadeDistanceStart: 1 + mipMapFadeDistanceEnd: 3 + bumpmap: + convertToNormalMap: 0 + externalNormalMap: 0 + heightScale: 0.25 + normalMapFilter: 0 + isReadable: 0 + streamingMipmaps: 0 + streamingMipmapsPriority: 0 + grayScaleToAlpha: 0 + generateCubemap: 6 + cubemapConvolution: 0 + seamlessCubemap: 0 + textureFormat: 1 + maxTextureSize: 2048 + textureSettings: + serializedVersion: 2 + filterMode: -1 + aniso: 1 + mipBias: -100 + wrapU: 1 + wrapV: 1 + wrapW: 1 + nPOTScale: 0 + lightmap: 0 + compressionQuality: 50 + spriteMode: 1 + spriteExtrude: 1 + spriteMeshType: 1 + alignment: 0 + spritePivot: {x: 0.5, y: 0.5} + spritePixelsToUnits: 100 + spriteBorder: {x: 0, y: 0, z: 0, w: 0} + spriteGenerateFallbackPhysicsShape: 1 + alphaUsage: 1 + alphaIsTransparency: 1 + spriteTessellationDetail: -1 + textureType: 2 + textureShape: 1 + singleChannelComponent: 0 + maxTextureSizeSet: 0 + compressionQualitySet: 0 + textureFormatSet: 0 + platformSettings: + - serializedVersion: 2 + buildTarget: DefaultTexturePlatform + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Standalone + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: 4 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: WebGL + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 0 + spriteSheet: + serializedVersion: 2 + sprites: [] + outline: [] + physicsShape: [] + bones: [] + spriteID: 8c9576000659f4edda1d6885dd94b323 + vertices: [] + indices: + edges: [] + weights: [] + spritePackingTag: + pSDRemoveMatte: 0 + pSDShowRemoveMatteOption: 0 + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/New Textures/Task_Todo@2x.png" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/New Textures/Task_Todo@2x.png" new file mode 100644 index 00000000..418a578c Binary files /dev/null and "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/New Textures/Task_Todo@2x.png" differ diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/New Textures/Task_Todo@2x.png.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/New Textures/Task_Todo@2x.png.meta" new file mode 100644 index 00000000..caba39e6 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/New Textures/Task_Todo@2x.png.meta" @@ -0,0 +1,110 @@ +fileFormatVersion: 2 +guid: ea38226a5bc604f73a8dd1dd7932038d +TextureImporter: + fileIDToRecycleName: {} + externalObjects: {} + serializedVersion: 9 + mipmaps: + mipMapMode: 0 + enableMipMap: 0 + sRGBTexture: 1 + linearTexture: 0 + fadeOut: 0 + borderMipMap: 0 + mipMapsPreserveCoverage: 0 + alphaTestReferenceValue: 0.5 + mipMapFadeDistanceStart: 1 + mipMapFadeDistanceEnd: 3 + bumpmap: + convertToNormalMap: 0 + externalNormalMap: 0 + heightScale: 0.25 + normalMapFilter: 0 + isReadable: 0 + streamingMipmaps: 0 + streamingMipmapsPriority: 0 + grayScaleToAlpha: 0 + generateCubemap: 6 + cubemapConvolution: 0 + seamlessCubemap: 0 + textureFormat: 1 + maxTextureSize: 2048 + textureSettings: + serializedVersion: 2 + filterMode: -1 + aniso: 1 + mipBias: -100 + wrapU: 1 + wrapV: 1 + wrapW: 1 + nPOTScale: 0 + lightmap: 0 + compressionQuality: 50 + spriteMode: 1 + spriteExtrude: 1 + spriteMeshType: 1 + alignment: 0 + spritePivot: {x: 0.5, y: 0.5} + spritePixelsToUnits: 100 + spriteBorder: {x: 0, y: 0, z: 0, w: 0} + spriteGenerateFallbackPhysicsShape: 1 + alphaUsage: 1 + alphaIsTransparency: 1 + spriteTessellationDetail: -1 + textureType: 2 + textureShape: 1 + singleChannelComponent: 0 + maxTextureSizeSet: 0 + compressionQualitySet: 0 + textureFormatSet: 0 + platformSettings: + - serializedVersion: 2 + buildTarget: DefaultTexturePlatform + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Standalone + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: 4 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: WebGL + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 0 + spriteSheet: + serializedVersion: 2 + sprites: [] + outline: [] + physicsShape: [] + bones: [] + spriteID: 3af4a687a145f4392972ed8080bd233a + vertices: [] + indices: + edges: [] + weights: [] + spritePackingTag: + pSDRemoveMatte: 0 + pSDShowRemoveMatteOption: 0 + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/Roboto Font.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/Roboto Font.meta" new file mode 100644 index 00000000..d30ac8c9 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/Roboto Font.meta" @@ -0,0 +1,9 @@ +fileFormatVersion: 2 +guid: 6c67219c56ef34eb093dbbc5ae324ba7 +folderAsset: yes +timeCreated: 1484813554 +licenseType: Pro +DefaultImporter: + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/Roboto Font/Apache License.txt" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/Roboto Font/Apache License.txt" new file mode 100644 index 00000000..63d53024 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/Roboto Font/Apache License.txt" @@ -0,0 +1,203 @@ +Font data copyright Google 2012 + + Apache License + Version 2.0, January 2004 + http://www.apache.org/licenses/ + + TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION + + 1. Definitions. + + "License" shall mean the terms and conditions for use, reproduction, + and distribution as defined by Sections 1 through 9 of this document. + + "Licensor" shall mean the copyright owner or entity authorized by + the copyright owner that is granting the License. + + "Legal Entity" shall mean the union of the acting entity and all + other entities that control, are controlled by, or are under common + control with that entity. For the purposes of this definition, + "control" means (i) the power, direct or indirect, to cause the + direction or management of such entity, whether by contract or + otherwise, or (ii) ownership of fifty percent (50%) or more of the + outstanding shares, or (iii) beneficial ownership of such entity. + + "You" (or "Your") shall mean an individual or Legal Entity + exercising permissions granted by this License. + + "Source" form shall mean the preferred form for making modifications, + including but not limited to software source code, documentation + source, and configuration files. + + "Object" form shall mean any form resulting from mechanical + transformation or translation of a Source form, including but + not limited to compiled object code, generated documentation, + and conversions to other media types. + + "Work" shall mean the work of authorship, whether in Source or + Object form, made available under the License, as indicated by a + copyright notice that is included in or attached to the work + (an example is provided in the Appendix below). + + "Derivative Works" shall mean any work, whether in Source or Object + form, that is based on (or derived from) the Work and for which the + editorial revisions, annotations, elaborations, or other modifications + represent, as a whole, an original work of authorship. For the purposes + of this License, Derivative Works shall not include works that remain + separable from, or merely link (or bind by name) to the interfaces of, + the Work and Derivative Works thereof. + + "Contribution" shall mean any work of authorship, including + the original version of the Work and any modifications or additions + to that Work or Derivative Works thereof, that is intentionally + submitted to Licensor for inclusion in the Work by the copyright owner + or by an individual or Legal Entity authorized to submit on behalf of + the copyright owner. For the purposes of this definition, "submitted" + means any form of electronic, verbal, or written communication sent + to the Licensor or its representatives, including but not limited to + communication on electronic mailing lists, source code control systems, + and issue tracking systems that are managed by, or on behalf of, the + Licensor for the purpose of discussing and improving the Work, but + excluding communication that is conspicuously marked or otherwise + designated in writing by the copyright owner as "Not a Contribution." + + "Contributor" shall mean Licensor and any individual or Legal Entity + on behalf of whom a Contribution has been received by Licensor and + subsequently incorporated within the Work. + + 2. Grant of Copyright License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + copyright license to reproduce, prepare Derivative Works of, + publicly display, publicly perform, sublicense, and distribute the + Work and such Derivative Works in Source or Object form. + + 3. Grant of Patent License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + (except as stated in this section) patent license to make, have made, + use, offer to sell, sell, import, and otherwise transfer the Work, + where such license applies only to those patent claims licensable + by such Contributor that are necessarily infringed by their + Contribution(s) alone or by combination of their Contribution(s) + with the Work to which such Contribution(s) was submitted. If You + institute patent litigation against any entity (including a + cross-claim or counterclaim in a lawsuit) alleging that the Work + or a Contribution incorporated within the Work constitutes direct + or contributory patent infringement, then any patent licenses + granted to You under this License for that Work shall terminate + as of the date such litigation is filed. + + 4. Redistribution. You may reproduce and distribute copies of the + Work or Derivative Works thereof in any medium, with or without + modifications, and in Source or Object form, provided that You + meet the following conditions: + + (a) You must give any other recipients of the Work or + Derivative Works a copy of this License; and + + (b) You must cause any modified files to carry prominent notices + stating that You changed the files; and + + (c) You must retain, in the Source form of any Derivative Works + that You distribute, all copyright, patent, trademark, and + attribution notices from the Source form of the Work, + excluding those notices that do not pertain to any part of + the Derivative Works; and + + (d) If the Work includes a "NOTICE" text file as part of its + distribution, then any Derivative Works that You distribute must + include a readable copy of the attribution notices contained + within such NOTICE file, excluding those notices that do not + pertain to any part of the Derivative Works, in at least one + of the following places: within a NOTICE text file distributed + as part of the Derivative Works; within the Source form or + documentation, if provided along with the Derivative Works; or, + within a display generated by the Derivative Works, if and + wherever such third-party notices normally appear. The contents + of the NOTICE file are for informational purposes only and + do not modify the License. You may add Your own attribution + notices within Derivative Works that You distribute, alongside + or as an addendum to the NOTICE text from the Work, provided + that such additional attribution notices cannot be construed + as modifying the License. + + You may add Your own copyright statement to Your modifications and + may provide additional or different license terms and conditions + for use, reproduction, or distribution of Your modifications, or + for any such Derivative Works as a whole, provided Your use, + reproduction, and distribution of the Work otherwise complies with + the conditions stated in this License. + + 5. Submission of Contributions. Unless You explicitly state otherwise, + any Contribution intentionally submitted for inclusion in the Work + by You to the Licensor shall be under the terms and conditions of + this License, without any additional terms or conditions. + Notwithstanding the above, nothing herein shall supersede or modify + the terms of any separate license agreement you may have executed + with Licensor regarding such Contributions. + + 6. Trademarks. This License does not grant permission to use the trade + names, trademarks, service marks, or product names of the Licensor, + except as required for reasonable and customary use in describing the + origin of the Work and reproducing the content of the NOTICE file. + + 7. Disclaimer of Warranty. Unless required by applicable law or + agreed to in writing, Licensor provides the Work (and each + Contributor provides its Contributions) on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or + implied, including, without limitation, any warranties or conditions + of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A + PARTICULAR PURPOSE. You are solely responsible for determining the + appropriateness of using or redistributing the Work and assume any + risks associated with Your exercise of permissions under this License. + + 8. Limitation of Liability. In no event and under no legal theory, + whether in tort (including negligence), contract, or otherwise, + unless required by applicable law (such as deliberate and grossly + negligent acts) or agreed to in writing, shall any Contributor be + liable to You for damages, including any direct, indirect, special, + incidental, or consequential damages of any character arising as a + result of this License or out of the use or inability to use the + Work (including but not limited to damages for loss of goodwill, + work stoppage, computer failure or malfunction, or any and all + other commercial damages or losses), even if such Contributor + has been advised of the possibility of such damages. + + 9. Accepting Warranty or Additional Liability. While redistributing + the Work or Derivative Works thereof, You may choose to offer, + and charge a fee for, acceptance of support, warranty, indemnity, + or other liability obligations and/or rights consistent with this + License. However, in accepting such obligations, You may act only + on Your own behalf and on Your sole responsibility, not on behalf + of any other Contributor, and only if You agree to indemnify, + defend, and hold each Contributor harmless for any liability + incurred by, or claims asserted against, such Contributor by reason + of your accepting any such warranty or additional liability. + + END OF TERMS AND CONDITIONS + + APPENDIX: How to apply the Apache License to your work. + + To apply the Apache License to your work, attach the following + boilerplate notice, with the fields enclosed by brackets "[]" + replaced with your own identifying information. (Don't include + the brackets!) The text should be enclosed in the appropriate + comment syntax for the file format. We also recommend that a + file or class name and description of purpose be included on the + same "printed page" as the copyright notice for easier + identification within third-party archives. + + Copyright [yyyy] [name of copyright owner] + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. \ No newline at end of file diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/Roboto Font/Apache License.txt.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/Roboto Font/Apache License.txt.meta" new file mode 100644 index 00000000..e4b10cb3 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/Roboto Font/Apache License.txt.meta" @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 7e03e85b3052c4e1eb170e060034583e +timeCreated: 1484813554 +licenseType: Pro +TextScriptImporter: + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/Roboto Font/Roboto-Black.ttf" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/Roboto Font/Roboto-Black.ttf" new file mode 100644 index 00000000..71f01ac2 Binary files /dev/null and "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/Roboto Font/Roboto-Black.ttf" differ diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/Roboto Font/Roboto-Black.ttf.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/Roboto Font/Roboto-Black.ttf.meta" new file mode 100644 index 00000000..b5aa9803 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/Roboto Font/Roboto-Black.ttf.meta" @@ -0,0 +1,32 @@ +fileFormatVersion: 2 +guid: e8c5b04752a8b4c0f860c20a54f7d922 +timeCreated: 1484813554 +licenseType: Pro +TrueTypeFontImporter: + serializedVersion: 4 + fontSize: 16 + forceTextureCase: -2 + characterSpacing: 0 + characterPadding: 1 + includeFontData: 1 + fontName: Roboto + fontNames: + - Roboto + fallbackFontReferences: + - {fileID: 12800000, guid: 75c2a83027bcb4ec0a131c7bb2750813, type: 3} + - {fileID: 12800000, guid: 1ed46bf0271ef427da7675ff55dd5271, type: 3} + - {fileID: 12800000, guid: 0b62a4e35af744273a5e705f7ce7bcf8, type: 3} + - {fileID: 12800000, guid: 6583f8d4e83654009b82a4ae518e7f10, type: 3} + - {fileID: 12800000, guid: 3d03bbe560e914debbc510201929628b, type: 3} + - {fileID: 12800000, guid: 8d6f95e79682d4b6d9b306bca775e55f, type: 3} + - {fileID: 12800000, guid: 50bd94b824b8b45fba86b73bed058964, type: 3} + - {fileID: 12800000, guid: 733ab5e83f24040ab8ce0b4ed83e8536, type: 3} + - {fileID: 12800000, guid: 9896081a9b3a5422a8d432e12fae4989, type: 3} + - {fileID: 12800000, guid: 9c75f59acd3c541d6a7e3988fe39f10a, type: 3} + - {fileID: 12800000, guid: 3bd23dacace3c4c7e9dfefbd3b55508c, type: 3} + customCharacters: + fontRenderingMode: 0 + ascentCalculationMode: 1 + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/Roboto Font/Roboto-BlackItalic.ttf" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/Roboto Font/Roboto-BlackItalic.ttf" new file mode 100644 index 00000000..ec309c78 Binary files /dev/null and "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/Roboto Font/Roboto-BlackItalic.ttf" differ diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/Roboto Font/Roboto-BlackItalic.ttf.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/Roboto Font/Roboto-BlackItalic.ttf.meta" new file mode 100644 index 00000000..ee70ae05 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/Roboto Font/Roboto-BlackItalic.ttf.meta" @@ -0,0 +1,22 @@ +fileFormatVersion: 2 +guid: 1ed46bf0271ef427da7675ff55dd5271 +timeCreated: 1484813554 +licenseType: Pro +TrueTypeFontImporter: + serializedVersion: 4 + fontSize: 16 + forceTextureCase: -2 + characterSpacing: 0 + characterPadding: 1 + includeFontData: 1 + fontName: Roboto + fontNames: + - Roboto + fallbackFontReferences: + - {fileID: 12800000, guid: 0b62a4e35af744273a5e705f7ce7bcf8, type: 3} + customCharacters: + fontRenderingMode: 0 + ascentCalculationMode: 1 + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/Roboto Font/Roboto-Bold.ttf" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/Roboto Font/Roboto-Bold.ttf" new file mode 100644 index 00000000..aaf374d2 Binary files /dev/null and "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/Roboto Font/Roboto-Bold.ttf" differ diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/Roboto Font/Roboto-Bold.ttf.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/Roboto Font/Roboto-Bold.ttf.meta" new file mode 100644 index 00000000..82a21c0f --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/Roboto Font/Roboto-Bold.ttf.meta" @@ -0,0 +1,21 @@ +fileFormatVersion: 2 +guid: 0b62a4e35af744273a5e705f7ce7bcf8 +timeCreated: 1484813554 +licenseType: Pro +TrueTypeFontImporter: + serializedVersion: 4 + fontSize: 16 + forceTextureCase: -2 + characterSpacing: 0 + characterPadding: 1 + includeFontData: 1 + fontName: Roboto + fontNames: + - Roboto + fallbackFontReferences: [] + customCharacters: + fontRenderingMode: 0 + ascentCalculationMode: 1 + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/Roboto Font/Roboto-BoldItalic.ttf" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/Roboto Font/Roboto-BoldItalic.ttf" new file mode 100644 index 00000000..dcd0f800 Binary files /dev/null and "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/Roboto Font/Roboto-BoldItalic.ttf" differ diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/Roboto Font/Roboto-BoldItalic.ttf.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/Roboto Font/Roboto-BoldItalic.ttf.meta" new file mode 100644 index 00000000..9886404e --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/Roboto Font/Roboto-BoldItalic.ttf.meta" @@ -0,0 +1,26 @@ +fileFormatVersion: 2 +guid: 6583f8d4e83654009b82a4ae518e7f10 +timeCreated: 1484813554 +licenseType: Pro +TrueTypeFontImporter: + serializedVersion: 4 + fontSize: 16 + forceTextureCase: -2 + characterSpacing: 0 + characterPadding: 1 + includeFontData: 1 + fontName: Roboto + fontNames: + - Roboto + fallbackFontReferences: + - {fileID: 12800000, guid: 1ed46bf0271ef427da7675ff55dd5271, type: 3} + - {fileID: 12800000, guid: 0b62a4e35af744273a5e705f7ce7bcf8, type: 3} + - {fileID: 12800000, guid: 3d03bbe560e914debbc510201929628b, type: 3} + - {fileID: 12800000, guid: 50bd94b824b8b45fba86b73bed058964, type: 3} + - {fileID: 12800000, guid: 3bd23dacace3c4c7e9dfefbd3b55508c, type: 3} + customCharacters: + fontRenderingMode: 0 + ascentCalculationMode: 1 + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/Roboto Font/Roboto-Italic.ttf" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/Roboto Font/Roboto-Italic.ttf" new file mode 100644 index 00000000..f382c687 Binary files /dev/null and "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/Roboto Font/Roboto-Italic.ttf" differ diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/Roboto Font/Roboto-Italic.ttf.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/Roboto Font/Roboto-Italic.ttf.meta" new file mode 100644 index 00000000..b1fa338b --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/Roboto Font/Roboto-Italic.ttf.meta" @@ -0,0 +1,24 @@ +fileFormatVersion: 2 +guid: 3d03bbe560e914debbc510201929628b +timeCreated: 1484813554 +licenseType: Pro +TrueTypeFontImporter: + serializedVersion: 4 + fontSize: 16 + forceTextureCase: -2 + characterSpacing: 0 + characterPadding: 1 + includeFontData: 1 + fontName: Roboto + fontNames: + - Roboto + fallbackFontReferences: + - {fileID: 12800000, guid: 1ed46bf0271ef427da7675ff55dd5271, type: 3} + - {fileID: 12800000, guid: 0b62a4e35af744273a5e705f7ce7bcf8, type: 3} + - {fileID: 12800000, guid: 3bd23dacace3c4c7e9dfefbd3b55508c, type: 3} + customCharacters: + fontRenderingMode: 0 + ascentCalculationMode: 1 + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/Roboto Font/Roboto-Light.ttf" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/Roboto Font/Roboto-Light.ttf" new file mode 100644 index 00000000..664e1b2f Binary files /dev/null and "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/Roboto Font/Roboto-Light.ttf" differ diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/Roboto Font/Roboto-Light.ttf.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/Roboto Font/Roboto-Light.ttf.meta" new file mode 100644 index 00000000..25f760dc --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/Roboto Font/Roboto-Light.ttf.meta" @@ -0,0 +1,25 @@ +fileFormatVersion: 2 +guid: 50bd94b824b8b45fba86b73bed058964 +timeCreated: 1484813554 +licenseType: Pro +TrueTypeFontImporter: + serializedVersion: 4 + fontSize: 16 + forceTextureCase: -2 + characterSpacing: 0 + characterPadding: 1 + includeFontData: 1 + fontName: Roboto + fontNames: + - Roboto + fallbackFontReferences: + - {fileID: 12800000, guid: 1ed46bf0271ef427da7675ff55dd5271, type: 3} + - {fileID: 12800000, guid: 0b62a4e35af744273a5e705f7ce7bcf8, type: 3} + - {fileID: 12800000, guid: 3d03bbe560e914debbc510201929628b, type: 3} + - {fileID: 12800000, guid: 3bd23dacace3c4c7e9dfefbd3b55508c, type: 3} + customCharacters: + fontRenderingMode: 0 + ascentCalculationMode: 1 + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/Roboto Font/Roboto-LightItalic.ttf" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/Roboto Font/Roboto-LightItalic.ttf" new file mode 100644 index 00000000..b8f52963 Binary files /dev/null and "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/Roboto Font/Roboto-LightItalic.ttf" differ diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/Roboto Font/Roboto-LightItalic.ttf.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/Roboto Font/Roboto-LightItalic.ttf.meta" new file mode 100644 index 00000000..fcd6002b --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/Roboto Font/Roboto-LightItalic.ttf.meta" @@ -0,0 +1,29 @@ +fileFormatVersion: 2 +guid: 8d6f95e79682d4b6d9b306bca775e55f +timeCreated: 1484813554 +licenseType: Pro +TrueTypeFontImporter: + serializedVersion: 4 + fontSize: 16 + forceTextureCase: -2 + characterSpacing: 0 + characterPadding: 1 + includeFontData: 1 + fontName: Roboto + fontNames: + - Roboto + fallbackFontReferences: + - {fileID: 12800000, guid: 75c2a83027bcb4ec0a131c7bb2750813, type: 3} + - {fileID: 12800000, guid: 1ed46bf0271ef427da7675ff55dd5271, type: 3} + - {fileID: 12800000, guid: 0b62a4e35af744273a5e705f7ce7bcf8, type: 3} + - {fileID: 12800000, guid: 6583f8d4e83654009b82a4ae518e7f10, type: 3} + - {fileID: 12800000, guid: 3d03bbe560e914debbc510201929628b, type: 3} + - {fileID: 12800000, guid: 50bd94b824b8b45fba86b73bed058964, type: 3} + - {fileID: 12800000, guid: 733ab5e83f24040ab8ce0b4ed83e8536, type: 3} + - {fileID: 12800000, guid: 3bd23dacace3c4c7e9dfefbd3b55508c, type: 3} + customCharacters: + fontRenderingMode: 0 + ascentCalculationMode: 1 + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/Roboto Font/Roboto-Medium.ttf" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/Roboto Font/Roboto-Medium.ttf" new file mode 100644 index 00000000..aa00de0e Binary files /dev/null and "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/Roboto Font/Roboto-Medium.ttf" differ diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/Roboto Font/Roboto-Medium.ttf.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/Roboto Font/Roboto-Medium.ttf.meta" new file mode 100644 index 00000000..6aac3f4e --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/Roboto Font/Roboto-Medium.ttf.meta" @@ -0,0 +1,27 @@ +fileFormatVersion: 2 +guid: 733ab5e83f24040ab8ce0b4ed83e8536 +timeCreated: 1484813554 +licenseType: Pro +TrueTypeFontImporter: + serializedVersion: 4 + fontSize: 16 + forceTextureCase: -2 + characterSpacing: 0 + characterPadding: 1 + includeFontData: 1 + fontName: Roboto + fontNames: + - Roboto + fallbackFontReferences: + - {fileID: 12800000, guid: 1ed46bf0271ef427da7675ff55dd5271, type: 3} + - {fileID: 12800000, guid: 0b62a4e35af744273a5e705f7ce7bcf8, type: 3} + - {fileID: 12800000, guid: 6583f8d4e83654009b82a4ae518e7f10, type: 3} + - {fileID: 12800000, guid: 3d03bbe560e914debbc510201929628b, type: 3} + - {fileID: 12800000, guid: 50bd94b824b8b45fba86b73bed058964, type: 3} + - {fileID: 12800000, guid: 3bd23dacace3c4c7e9dfefbd3b55508c, type: 3} + customCharacters: + fontRenderingMode: 0 + ascentCalculationMode: 1 + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/Roboto Font/Roboto-MediumItalic.ttf" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/Roboto Font/Roboto-MediumItalic.ttf" new file mode 100644 index 00000000..67e25f01 Binary files /dev/null and "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/Roboto Font/Roboto-MediumItalic.ttf" differ diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/Roboto Font/Roboto-MediumItalic.ttf.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/Roboto Font/Roboto-MediumItalic.ttf.meta" new file mode 100644 index 00000000..139e0277 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/Roboto Font/Roboto-MediumItalic.ttf.meta" @@ -0,0 +1,31 @@ +fileFormatVersion: 2 +guid: 9c75f59acd3c541d6a7e3988fe39f10a +timeCreated: 1484813554 +licenseType: Pro +TrueTypeFontImporter: + serializedVersion: 4 + fontSize: 16 + forceTextureCase: -2 + characterSpacing: 0 + characterPadding: 1 + includeFontData: 1 + fontName: Roboto + fontNames: + - Roboto + fallbackFontReferences: + - {fileID: 12800000, guid: 75c2a83027bcb4ec0a131c7bb2750813, type: 3} + - {fileID: 12800000, guid: 1ed46bf0271ef427da7675ff55dd5271, type: 3} + - {fileID: 12800000, guid: 0b62a4e35af744273a5e705f7ce7bcf8, type: 3} + - {fileID: 12800000, guid: 6583f8d4e83654009b82a4ae518e7f10, type: 3} + - {fileID: 12800000, guid: 3d03bbe560e914debbc510201929628b, type: 3} + - {fileID: 12800000, guid: 8d6f95e79682d4b6d9b306bca775e55f, type: 3} + - {fileID: 12800000, guid: 50bd94b824b8b45fba86b73bed058964, type: 3} + - {fileID: 12800000, guid: 733ab5e83f24040ab8ce0b4ed83e8536, type: 3} + - {fileID: 12800000, guid: 9896081a9b3a5422a8d432e12fae4989, type: 3} + - {fileID: 12800000, guid: 3bd23dacace3c4c7e9dfefbd3b55508c, type: 3} + customCharacters: + fontRenderingMode: 0 + ascentCalculationMode: 1 + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/Roboto Font/Roboto-Regular.ttf" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/Roboto Font/Roboto-Regular.ttf" new file mode 100644 index 00000000..3e6e2e76 Binary files /dev/null and "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/Roboto Font/Roboto-Regular.ttf" differ diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/Roboto Font/Roboto-Regular.ttf.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/Roboto Font/Roboto-Regular.ttf.meta" new file mode 100644 index 00000000..c97c6e78 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/Roboto Font/Roboto-Regular.ttf.meta" @@ -0,0 +1,28 @@ +fileFormatVersion: 2 +guid: 75c2a83027bcb4ec0a131c7bb2750813 +timeCreated: 1484813554 +licenseType: Pro +TrueTypeFontImporter: + serializedVersion: 4 + fontSize: 16 + forceTextureCase: -2 + characterSpacing: 0 + characterPadding: 1 + includeFontData: 1 + fontName: Roboto + fontNames: + - Roboto + fallbackFontReferences: + - {fileID: 12800000, guid: 1ed46bf0271ef427da7675ff55dd5271, type: 3} + - {fileID: 12800000, guid: 0b62a4e35af744273a5e705f7ce7bcf8, type: 3} + - {fileID: 12800000, guid: 6583f8d4e83654009b82a4ae518e7f10, type: 3} + - {fileID: 12800000, guid: 3d03bbe560e914debbc510201929628b, type: 3} + - {fileID: 12800000, guid: 50bd94b824b8b45fba86b73bed058964, type: 3} + - {fileID: 12800000, guid: 733ab5e83f24040ab8ce0b4ed83e8536, type: 3} + - {fileID: 12800000, guid: 3bd23dacace3c4c7e9dfefbd3b55508c, type: 3} + customCharacters: + fontRenderingMode: 0 + ascentCalculationMode: 1 + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/Roboto Font/Roboto-Thin.ttf" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/Roboto Font/Roboto-Thin.ttf" new file mode 100644 index 00000000..d262d144 Binary files /dev/null and "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/Roboto Font/Roboto-Thin.ttf" differ diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/Roboto Font/Roboto-Thin.ttf.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/Roboto Font/Roboto-Thin.ttf.meta" new file mode 100644 index 00000000..04e286cd --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/Roboto Font/Roboto-Thin.ttf.meta" @@ -0,0 +1,23 @@ +fileFormatVersion: 2 +guid: 3bd23dacace3c4c7e9dfefbd3b55508c +timeCreated: 1484813554 +licenseType: Pro +TrueTypeFontImporter: + serializedVersion: 4 + fontSize: 16 + forceTextureCase: -2 + characterSpacing: 0 + characterPadding: 1 + includeFontData: 1 + fontName: Roboto + fontNames: + - Roboto + fallbackFontReferences: + - {fileID: 12800000, guid: 1ed46bf0271ef427da7675ff55dd5271, type: 3} + - {fileID: 12800000, guid: 0b62a4e35af744273a5e705f7ce7bcf8, type: 3} + customCharacters: + fontRenderingMode: 0 + ascentCalculationMode: 1 + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/Roboto Font/Roboto-ThinItalic.ttf" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/Roboto Font/Roboto-ThinItalic.ttf" new file mode 100644 index 00000000..63e9f971 Binary files /dev/null and "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/Roboto Font/Roboto-ThinItalic.ttf" differ diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/Roboto Font/Roboto-ThinItalic.ttf.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/Roboto Font/Roboto-ThinItalic.ttf.meta" new file mode 100644 index 00000000..fc0fcda9 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/Roboto Font/Roboto-ThinItalic.ttf.meta" @@ -0,0 +1,30 @@ +fileFormatVersion: 2 +guid: 9896081a9b3a5422a8d432e12fae4989 +timeCreated: 1484813554 +licenseType: Pro +TrueTypeFontImporter: + serializedVersion: 4 + fontSize: 16 + forceTextureCase: -2 + characterSpacing: 0 + characterPadding: 1 + includeFontData: 1 + fontName: Roboto + fontNames: + - Roboto + fallbackFontReferences: + - {fileID: 12800000, guid: 75c2a83027bcb4ec0a131c7bb2750813, type: 3} + - {fileID: 12800000, guid: 1ed46bf0271ef427da7675ff55dd5271, type: 3} + - {fileID: 12800000, guid: 0b62a4e35af744273a5e705f7ce7bcf8, type: 3} + - {fileID: 12800000, guid: 6583f8d4e83654009b82a4ae518e7f10, type: 3} + - {fileID: 12800000, guid: 3d03bbe560e914debbc510201929628b, type: 3} + - {fileID: 12800000, guid: 8d6f95e79682d4b6d9b306bca775e55f, type: 3} + - {fileID: 12800000, guid: 50bd94b824b8b45fba86b73bed058964, type: 3} + - {fileID: 12800000, guid: 733ab5e83f24040ab8ce0b4ed83e8536, type: 3} + - {fileID: 12800000, guid: 3bd23dacace3c4c7e9dfefbd3b55508c, type: 3} + customCharacters: + fontRenderingMode: 0 + ascentCalculationMode: 1 + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/Roboto Font/RobotoCondensed-Bold.ttf" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/Roboto Font/RobotoCondensed-Bold.ttf" new file mode 100644 index 00000000..48dd6353 Binary files /dev/null and "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/Roboto Font/RobotoCondensed-Bold.ttf" differ diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/Roboto Font/RobotoCondensed-Bold.ttf.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/Roboto Font/RobotoCondensed-Bold.ttf.meta" new file mode 100644 index 00000000..86238d2c --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/Roboto Font/RobotoCondensed-Bold.ttf.meta" @@ -0,0 +1,23 @@ +fileFormatVersion: 2 +guid: 8c971c39d0c7d41ef9daa1c0718345f1 +timeCreated: 1484813554 +licenseType: Pro +TrueTypeFontImporter: + serializedVersion: 4 + fontSize: 16 + forceTextureCase: -2 + characterSpacing: 0 + characterPadding: 1 + includeFontData: 1 + fontName: Roboto Condensed + fontNames: + - Roboto Condensed + fallbackFontReferences: + - {fileID: 12800000, guid: 534f09568cb3849b593773604fccc4e5, type: 3} + - {fileID: 12800000, guid: 71ae5c7bab97a42f8952119f85bd2064, type: 3} + customCharacters: + fontRenderingMode: 0 + ascentCalculationMode: 1 + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/Roboto Font/RobotoCondensed-BoldItalic.ttf" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/Roboto Font/RobotoCondensed-BoldItalic.ttf" new file mode 100644 index 00000000..ad728646 Binary files /dev/null and "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/Roboto Font/RobotoCondensed-BoldItalic.ttf" differ diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/Roboto Font/RobotoCondensed-BoldItalic.ttf.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/Roboto Font/RobotoCondensed-BoldItalic.ttf.meta" new file mode 100644 index 00000000..c2a04ca9 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/Roboto Font/RobotoCondensed-BoldItalic.ttf.meta" @@ -0,0 +1,22 @@ +fileFormatVersion: 2 +guid: 71ae5c7bab97a42f8952119f85bd2064 +timeCreated: 1484813554 +licenseType: Pro +TrueTypeFontImporter: + serializedVersion: 4 + fontSize: 16 + forceTextureCase: -2 + characterSpacing: 0 + characterPadding: 1 + includeFontData: 1 + fontName: Roboto Condensed + fontNames: + - Roboto Condensed + fallbackFontReferences: + - {fileID: 12800000, guid: 534f09568cb3849b593773604fccc4e5, type: 3} + customCharacters: + fontRenderingMode: 0 + ascentCalculationMode: 1 + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/Roboto Font/RobotoCondensed-Italic.ttf" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/Roboto Font/RobotoCondensed-Italic.ttf" new file mode 100644 index 00000000..a232513d Binary files /dev/null and "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/Roboto Font/RobotoCondensed-Italic.ttf" differ diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/Roboto Font/RobotoCondensed-Italic.ttf.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/Roboto Font/RobotoCondensed-Italic.ttf.meta" new file mode 100644 index 00000000..523154b1 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/Roboto Font/RobotoCondensed-Italic.ttf.meta" @@ -0,0 +1,21 @@ +fileFormatVersion: 2 +guid: 534f09568cb3849b593773604fccc4e5 +timeCreated: 1484813554 +licenseType: Pro +TrueTypeFontImporter: + serializedVersion: 4 + fontSize: 16 + forceTextureCase: -2 + characterSpacing: 0 + characterPadding: 1 + includeFontData: 1 + fontName: Roboto Condensed + fontNames: + - Roboto Condensed + fallbackFontReferences: [] + customCharacters: + fontRenderingMode: 0 + ascentCalculationMode: 1 + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/Roboto Font/RobotoCondensed-Light.ttf" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/Roboto Font/RobotoCondensed-Light.ttf" new file mode 100644 index 00000000..a6e368d4 Binary files /dev/null and "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/Roboto Font/RobotoCondensed-Light.ttf" differ diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/Roboto Font/RobotoCondensed-Light.ttf.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/Roboto Font/RobotoCondensed-Light.ttf.meta" new file mode 100644 index 00000000..584620d8 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/Roboto Font/RobotoCondensed-Light.ttf.meta" @@ -0,0 +1,25 @@ +fileFormatVersion: 2 +guid: e1a3c860ab66945f687269eae2744fe8 +timeCreated: 1484813554 +licenseType: Pro +TrueTypeFontImporter: + serializedVersion: 4 + fontSize: 16 + forceTextureCase: -2 + characterSpacing: 0 + characterPadding: 1 + includeFontData: 1 + fontName: Roboto Condensed + fontNames: + - Roboto Condensed + fallbackFontReferences: + - {fileID: 12800000, guid: 534f09568cb3849b593773604fccc4e5, type: 3} + - {fileID: 12800000, guid: 8c971c39d0c7d41ef9daa1c0718345f1, type: 3} + - {fileID: 12800000, guid: d23376ead4a924eff99de51f09c314d1, type: 3} + - {fileID: 12800000, guid: 71ae5c7bab97a42f8952119f85bd2064, type: 3} + customCharacters: + fontRenderingMode: 0 + ascentCalculationMode: 1 + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/Roboto Font/RobotoCondensed-LightItalic.ttf" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/Roboto Font/RobotoCondensed-LightItalic.ttf" new file mode 100644 index 00000000..5b2b6ae0 Binary files /dev/null and "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/Roboto Font/RobotoCondensed-LightItalic.ttf" differ diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/Roboto Font/RobotoCondensed-LightItalic.ttf.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/Roboto Font/RobotoCondensed-LightItalic.ttf.meta" new file mode 100644 index 00000000..dda51a63 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/Roboto Font/RobotoCondensed-LightItalic.ttf.meta" @@ -0,0 +1,24 @@ +fileFormatVersion: 2 +guid: d23376ead4a924eff99de51f09c314d1 +timeCreated: 1484813554 +licenseType: Pro +TrueTypeFontImporter: + serializedVersion: 4 + fontSize: 16 + forceTextureCase: -2 + characterSpacing: 0 + characterPadding: 1 + includeFontData: 1 + fontName: Roboto Condensed + fontNames: + - Roboto Condensed + fallbackFontReferences: + - {fileID: 12800000, guid: 534f09568cb3849b593773604fccc4e5, type: 3} + - {fileID: 12800000, guid: 8c971c39d0c7d41ef9daa1c0718345f1, type: 3} + - {fileID: 12800000, guid: 71ae5c7bab97a42f8952119f85bd2064, type: 3} + customCharacters: + fontRenderingMode: 0 + ascentCalculationMode: 1 + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/Roboto Font/RobotoCondensed-Regular.ttf" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/Roboto Font/RobotoCondensed-Regular.ttf" new file mode 100644 index 00000000..65bf32a1 Binary files /dev/null and "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/Roboto Font/RobotoCondensed-Regular.ttf" differ diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/Roboto Font/RobotoCondensed-Regular.ttf.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/Roboto Font/RobotoCondensed-Regular.ttf.meta" new file mode 100644 index 00000000..9b84673a --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/Roboto Font/RobotoCondensed-Regular.ttf.meta" @@ -0,0 +1,26 @@ +fileFormatVersion: 2 +guid: ef39dbf7ed1ff4a23ac0218bc5b5e17c +timeCreated: 1484813554 +licenseType: Pro +TrueTypeFontImporter: + serializedVersion: 4 + fontSize: 16 + forceTextureCase: -2 + characterSpacing: 0 + characterPadding: 1 + includeFontData: 1 + fontName: Roboto Condensed + fontNames: + - Roboto Condensed + fallbackFontReferences: + - {fileID: 12800000, guid: e1a3c860ab66945f687269eae2744fe8, type: 3} + - {fileID: 12800000, guid: 534f09568cb3849b593773604fccc4e5, type: 3} + - {fileID: 12800000, guid: 8c971c39d0c7d41ef9daa1c0718345f1, type: 3} + - {fileID: 12800000, guid: d23376ead4a924eff99de51f09c314d1, type: 3} + - {fileID: 12800000, guid: 71ae5c7bab97a42f8952119f85bd2064, type: 3} + customCharacters: + fontRenderingMode: 0 + ascentCalculationMode: 1 + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/Textures.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/Textures.meta" new file mode 100644 index 00000000..e468b78d --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/Textures.meta" @@ -0,0 +1,9 @@ +fileFormatVersion: 2 +guid: 722af57bf7c624c199c0e9dd9041ecda +folderAsset: yes +timeCreated: 1484813989 +licenseType: Pro +DefaultImporter: + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/Textures/ActiveColor.png" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/Textures/ActiveColor.png" new file mode 100644 index 00000000..7108a3ba Binary files /dev/null and "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/Textures/ActiveColor.png" differ diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/Textures/ActiveColor.png.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/Textures/ActiveColor.png.meta" new file mode 100644 index 00000000..1c5f69fc --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/Textures/ActiveColor.png.meta" @@ -0,0 +1,112 @@ +fileFormatVersion: 2 +guid: 1651d0ddf920d4f4b834f6319e1f05c6 +timeCreated: 1495629608 +licenseType: Pro +TextureImporter: + fileIDToRecycleName: {} + externalObjects: {} + serializedVersion: 4 + mipmaps: + mipMapMode: 0 + enableMipMap: 0 + sRGBTexture: 0 + linearTexture: 0 + fadeOut: 0 + borderMipMap: 0 + mipMapsPreserveCoverage: 0 + alphaTestReferenceValue: 0.5 + mipMapFadeDistanceStart: 1 + mipMapFadeDistanceEnd: 3 + bumpmap: + convertToNormalMap: 0 + externalNormalMap: 0 + heightScale: 0.25 + normalMapFilter: 0 + isReadable: 0 + grayScaleToAlpha: 0 + generateCubemap: 6 + cubemapConvolution: 0 + seamlessCubemap: 0 + textureFormat: 1 + maxTextureSize: 2048 + textureSettings: + serializedVersion: 2 + filterMode: 1 + aniso: 1 + mipBias: -1 + wrapU: 0 + wrapV: 0 + wrapW: 0 + nPOTScale: 0 + lightmap: 0 + compressionQuality: 50 + spriteMode: 0 + spriteExtrude: 1 + spriteMeshType: 1 + alignment: 0 + spritePivot: {x: 0.5, y: 0.5} + spriteBorder: {x: 0, y: 0, z: 0, w: 0} + spritePixelsToUnits: 100 + alphaUsage: 0 + alphaIsTransparency: 1 + spriteTessellationDetail: -1 + textureType: 2 + textureShape: 1 + maxTextureSizeSet: 0 + compressionQualitySet: 0 + textureFormatSet: 0 + platformSettings: + - buildTarget: DefaultTexturePlatform + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + - buildTarget: Standalone + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + - buildTarget: iPhone + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + - buildTarget: tvOS + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + - buildTarget: WebGL + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + spriteSheet: + serializedVersion: 2 + sprites: [] + outline: [] + physicsShape: [] + spritePackingTag: + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/Textures/Back.png" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/Textures/Back.png" new file mode 100644 index 00000000..3126f4b9 Binary files /dev/null and "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/Textures/Back.png" differ diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/Textures/Back.png.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/Textures/Back.png.meta" new file mode 100644 index 00000000..da353067 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/Textures/Back.png.meta" @@ -0,0 +1,112 @@ +fileFormatVersion: 2 +guid: ef5f0dd32d2ca4515bc67c2c529e3957 +timeCreated: 1495623449 +licenseType: Pro +TextureImporter: + fileIDToRecycleName: {} + externalObjects: {} + serializedVersion: 4 + mipmaps: + mipMapMode: 0 + enableMipMap: 0 + sRGBTexture: 0 + linearTexture: 0 + fadeOut: 0 + borderMipMap: 0 + mipMapsPreserveCoverage: 0 + alphaTestReferenceValue: 0.5 + mipMapFadeDistanceStart: 1 + mipMapFadeDistanceEnd: 3 + bumpmap: + convertToNormalMap: 0 + externalNormalMap: 0 + heightScale: 0.25 + normalMapFilter: 0 + isReadable: 0 + grayScaleToAlpha: 0 + generateCubemap: 6 + cubemapConvolution: 0 + seamlessCubemap: 0 + textureFormat: 1 + maxTextureSize: 2048 + textureSettings: + serializedVersion: 2 + filterMode: -1 + aniso: 1 + mipBias: -1 + wrapU: 1 + wrapV: 1 + wrapW: 1 + nPOTScale: 0 + lightmap: 0 + compressionQuality: 50 + spriteMode: 0 + spriteExtrude: 1 + spriteMeshType: 1 + alignment: 0 + spritePivot: {x: 0.5, y: 0.5} + spriteBorder: {x: 0, y: 0, z: 0, w: 0} + spritePixelsToUnits: 100 + alphaUsage: 1 + alphaIsTransparency: 1 + spriteTessellationDetail: -1 + textureType: 2 + textureShape: 1 + maxTextureSizeSet: 0 + compressionQualitySet: 0 + textureFormatSet: 0 + platformSettings: + - buildTarget: DefaultTexturePlatform + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 0 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + - buildTarget: Standalone + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 0 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + - buildTarget: iPhone + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 0 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + - buildTarget: tvOS + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 0 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + - buildTarget: WebGL + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 0 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + spriteSheet: + serializedVersion: 2 + sprites: [] + outline: [] + physicsShape: [] + spritePackingTag: + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/Textures/Background.psd" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/Textures/Background.psd" new file mode 100644 index 00000000..84b77241 Binary files /dev/null and "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/Textures/Background.psd" differ diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/Textures/Background.psd.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/Textures/Background.psd.meta" new file mode 100644 index 00000000..26224856 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/Textures/Background.psd.meta" @@ -0,0 +1,112 @@ +fileFormatVersion: 2 +guid: c96ae3a499d2242f884b2e055fd2de26 +timeCreated: 1484814140 +licenseType: Pro +TextureImporter: + fileIDToRecycleName: {} + externalObjects: {} + serializedVersion: 4 + mipmaps: + mipMapMode: 0 + enableMipMap: 0 + sRGBTexture: 0 + linearTexture: 0 + fadeOut: 0 + borderMipMap: 0 + mipMapsPreserveCoverage: 0 + alphaTestReferenceValue: 0.5 + mipMapFadeDistanceStart: 1 + mipMapFadeDistanceEnd: 3 + bumpmap: + convertToNormalMap: 0 + externalNormalMap: 0 + heightScale: 0.25 + normalMapFilter: 0 + isReadable: 0 + grayScaleToAlpha: 0 + generateCubemap: 6 + cubemapConvolution: 0 + seamlessCubemap: 0 + textureFormat: 1 + maxTextureSize: 2048 + textureSettings: + serializedVersion: 2 + filterMode: 1 + aniso: 1 + mipBias: -1 + wrapU: 0 + wrapV: 0 + wrapW: 0 + nPOTScale: 0 + lightmap: 0 + compressionQuality: 50 + spriteMode: 0 + spriteExtrude: 1 + spriteMeshType: 1 + alignment: 0 + spritePivot: {x: 0.5, y: 0.5} + spriteBorder: {x: 0, y: 0, z: 0, w: 0} + spritePixelsToUnits: 100 + alphaUsage: 0 + alphaIsTransparency: 1 + spriteTessellationDetail: -1 + textureType: 2 + textureShape: 1 + maxTextureSizeSet: 0 + compressionQualitySet: 0 + textureFormatSet: 0 + platformSettings: + - buildTarget: DefaultTexturePlatform + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + - buildTarget: Standalone + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + - buildTarget: iPhone + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + - buildTarget: tvOS + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + - buildTarget: WebGL + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + spriteSheet: + serializedVersion: 2 + sprites: [] + outline: [] + physicsShape: [] + spritePackingTag: + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/Textures/Button_Active.psd" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/Textures/Button_Active.psd" new file mode 100644 index 00000000..698911d8 Binary files /dev/null and "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/Textures/Button_Active.psd" differ diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/Textures/Button_Active.psd.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/Textures/Button_Active.psd.meta" new file mode 100644 index 00000000..798a35d9 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/Textures/Button_Active.psd.meta" @@ -0,0 +1,112 @@ +fileFormatVersion: 2 +guid: f50e1dc2a344b470cb943a6c54594fd7 +timeCreated: 1497006579 +licenseType: Pro +TextureImporter: + fileIDToRecycleName: {} + externalObjects: {} + serializedVersion: 4 + mipmaps: + mipMapMode: 0 + enableMipMap: 0 + sRGBTexture: 0 + linearTexture: 0 + fadeOut: 0 + borderMipMap: 0 + mipMapsPreserveCoverage: 0 + alphaTestReferenceValue: 0.5 + mipMapFadeDistanceStart: 1 + mipMapFadeDistanceEnd: 3 + bumpmap: + convertToNormalMap: 0 + externalNormalMap: 0 + heightScale: 0.25 + normalMapFilter: 0 + isReadable: 0 + grayScaleToAlpha: 0 + generateCubemap: 6 + cubemapConvolution: 0 + seamlessCubemap: 0 + textureFormat: 1 + maxTextureSize: 2048 + textureSettings: + serializedVersion: 2 + filterMode: 1 + aniso: 1 + mipBias: -1 + wrapU: 0 + wrapV: 0 + wrapW: 0 + nPOTScale: 0 + lightmap: 0 + compressionQuality: 50 + spriteMode: 0 + spriteExtrude: 1 + spriteMeshType: 1 + alignment: 0 + spritePivot: {x: 0.5, y: 0.5} + spriteBorder: {x: 0, y: 0, z: 0, w: 0} + spritePixelsToUnits: 100 + alphaUsage: 0 + alphaIsTransparency: 1 + spriteTessellationDetail: -1 + textureType: 2 + textureShape: 1 + maxTextureSizeSet: 0 + compressionQualitySet: 0 + textureFormatSet: 0 + platformSettings: + - buildTarget: DefaultTexturePlatform + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + - buildTarget: Standalone + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + - buildTarget: iPhone + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + - buildTarget: tvOS + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + - buildTarget: WebGL + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + spriteSheet: + serializedVersion: 2 + sprites: [] + outline: [] + physicsShape: [] + spritePackingTag: + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/Textures/Button_Active_Pressed.psd" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/Textures/Button_Active_Pressed.psd" new file mode 100644 index 00000000..03f29dd2 Binary files /dev/null and "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/Textures/Button_Active_Pressed.psd" differ diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/Textures/Button_Active_Pressed.psd.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/Textures/Button_Active_Pressed.psd.meta" new file mode 100644 index 00000000..0094217e --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/Textures/Button_Active_Pressed.psd.meta" @@ -0,0 +1,112 @@ +fileFormatVersion: 2 +guid: 75cd16af516a64738a441fda70ee1bbf +timeCreated: 1497006593 +licenseType: Free +TextureImporter: + fileIDToRecycleName: {} + externalObjects: {} + serializedVersion: 4 + mipmaps: + mipMapMode: 0 + enableMipMap: 0 + sRGBTexture: 0 + linearTexture: 0 + fadeOut: 0 + borderMipMap: 0 + mipMapsPreserveCoverage: 0 + alphaTestReferenceValue: 0.5 + mipMapFadeDistanceStart: 1 + mipMapFadeDistanceEnd: 3 + bumpmap: + convertToNormalMap: 0 + externalNormalMap: 0 + heightScale: 0.25 + normalMapFilter: 0 + isReadable: 0 + grayScaleToAlpha: 0 + generateCubemap: 6 + cubemapConvolution: 0 + seamlessCubemap: 0 + textureFormat: 1 + maxTextureSize: 2048 + textureSettings: + serializedVersion: 2 + filterMode: 1 + aniso: 1 + mipBias: -1 + wrapU: 0 + wrapV: 0 + wrapW: 0 + nPOTScale: 0 + lightmap: 0 + compressionQuality: 50 + spriteMode: 0 + spriteExtrude: 1 + spriteMeshType: 1 + alignment: 0 + spritePivot: {x: 0.5, y: 0.5} + spriteBorder: {x: 0, y: 0, z: 0, w: 0} + spritePixelsToUnits: 100 + alphaUsage: 0 + alphaIsTransparency: 1 + spriteTessellationDetail: -1 + textureType: 2 + textureShape: 1 + maxTextureSizeSet: 0 + compressionQualitySet: 0 + textureFormatSet: 0 + platformSettings: + - buildTarget: DefaultTexturePlatform + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + - buildTarget: Standalone + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + - buildTarget: iPhone + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + - buildTarget: tvOS + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + - buildTarget: WebGL + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + spriteSheet: + serializedVersion: 2 + sprites: [] + outline: [] + physicsShape: [] + spritePackingTag: + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/Textures/Button_InActive.psd" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/Textures/Button_InActive.psd" new file mode 100644 index 00000000..4cf832ed Binary files /dev/null and "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/Textures/Button_InActive.psd" differ diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/Textures/Button_InActive.psd.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/Textures/Button_InActive.psd.meta" new file mode 100644 index 00000000..5779fd98 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/Textures/Button_InActive.psd.meta" @@ -0,0 +1,112 @@ +fileFormatVersion: 2 +guid: 3eabc698a203b4999be85f064f6dafe7 +timeCreated: 1496915321 +licenseType: Free +TextureImporter: + fileIDToRecycleName: {} + externalObjects: {} + serializedVersion: 4 + mipmaps: + mipMapMode: 0 + enableMipMap: 0 + sRGBTexture: 0 + linearTexture: 0 + fadeOut: 0 + borderMipMap: 0 + mipMapsPreserveCoverage: 0 + alphaTestReferenceValue: 0.5 + mipMapFadeDistanceStart: 1 + mipMapFadeDistanceEnd: 3 + bumpmap: + convertToNormalMap: 0 + externalNormalMap: 0 + heightScale: 0.25 + normalMapFilter: 0 + isReadable: 0 + grayScaleToAlpha: 0 + generateCubemap: 6 + cubemapConvolution: 0 + seamlessCubemap: 0 + textureFormat: 1 + maxTextureSize: 2048 + textureSettings: + serializedVersion: 2 + filterMode: 1 + aniso: 1 + mipBias: -1 + wrapU: 0 + wrapV: 0 + wrapW: 0 + nPOTScale: 0 + lightmap: 0 + compressionQuality: 50 + spriteMode: 0 + spriteExtrude: 1 + spriteMeshType: 1 + alignment: 0 + spritePivot: {x: 0.5, y: 0.5} + spriteBorder: {x: 0, y: 0, z: 0, w: 0} + spritePixelsToUnits: 100 + alphaUsage: 0 + alphaIsTransparency: 1 + spriteTessellationDetail: -1 + textureType: 2 + textureShape: 1 + maxTextureSizeSet: 0 + compressionQualitySet: 0 + textureFormatSet: 0 + platformSettings: + - buildTarget: DefaultTexturePlatform + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + - buildTarget: Standalone + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + - buildTarget: iPhone + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + - buildTarget: tvOS + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + - buildTarget: WebGL + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + spriteSheet: + serializedVersion: 2 + sprites: [] + outline: [] + physicsShape: [] + spritePackingTag: + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/Textures/Button_Normal.psd" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/Textures/Button_Normal.psd" new file mode 100644 index 00000000..f6bb11d0 Binary files /dev/null and "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/Textures/Button_Normal.psd" differ diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/Textures/Button_Normal.psd.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/Textures/Button_Normal.psd.meta" new file mode 100644 index 00000000..92419cdc --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/Textures/Button_Normal.psd.meta" @@ -0,0 +1,112 @@ +fileFormatVersion: 2 +guid: 9136243fe4ffa44afb5f032c4655944b +timeCreated: 1496758079 +licenseType: Free +TextureImporter: + fileIDToRecycleName: {} + externalObjects: {} + serializedVersion: 4 + mipmaps: + mipMapMode: 0 + enableMipMap: 0 + sRGBTexture: 0 + linearTexture: 0 + fadeOut: 0 + borderMipMap: 0 + mipMapsPreserveCoverage: 0 + alphaTestReferenceValue: 0.5 + mipMapFadeDistanceStart: 1 + mipMapFadeDistanceEnd: 3 + bumpmap: + convertToNormalMap: 0 + externalNormalMap: 0 + heightScale: 0.25 + normalMapFilter: 0 + isReadable: 0 + grayScaleToAlpha: 0 + generateCubemap: 6 + cubemapConvolution: 0 + seamlessCubemap: 0 + textureFormat: 1 + maxTextureSize: 2048 + textureSettings: + serializedVersion: 2 + filterMode: 1 + aniso: 1 + mipBias: -1 + wrapU: 0 + wrapV: 0 + wrapW: 0 + nPOTScale: 0 + lightmap: 0 + compressionQuality: 50 + spriteMode: 0 + spriteExtrude: 1 + spriteMeshType: 1 + alignment: 0 + spritePivot: {x: 0.5, y: 0.5} + spriteBorder: {x: 0, y: 0, z: 0, w: 0} + spritePixelsToUnits: 100 + alphaUsage: 0 + alphaIsTransparency: 1 + spriteTessellationDetail: -1 + textureType: 2 + textureShape: 1 + maxTextureSizeSet: 0 + compressionQualitySet: 0 + textureFormatSet: 0 + platformSettings: + - buildTarget: DefaultTexturePlatform + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + - buildTarget: Standalone + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + - buildTarget: iPhone + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + - buildTarget: tvOS + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + - buildTarget: WebGL + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + spriteSheet: + serializedVersion: 2 + sprites: [] + outline: [] + physicsShape: [] + spritePackingTag: + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/Textures/Close.png" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/Textures/Close.png" new file mode 100644 index 00000000..4da4caa2 Binary files /dev/null and "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/Textures/Close.png" differ diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/Textures/Close.png.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/Textures/Close.png.meta" new file mode 100644 index 00000000..36e84e97 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/Textures/Close.png.meta" @@ -0,0 +1,99 @@ +fileFormatVersion: 2 +guid: b256eaec096654495975afa74c90508c +TextureImporter: + fileIDToRecycleName: {} + externalObjects: {} + serializedVersion: 7 + mipmaps: + mipMapMode: 0 + enableMipMap: 0 + sRGBTexture: 1 + linearTexture: 0 + fadeOut: 0 + borderMipMap: 0 + mipMapsPreserveCoverage: 0 + alphaTestReferenceValue: 0.5 + mipMapFadeDistanceStart: 1 + mipMapFadeDistanceEnd: 3 + bumpmap: + convertToNormalMap: 0 + externalNormalMap: 0 + heightScale: 0.25 + normalMapFilter: 0 + isReadable: 0 + streamingMipmaps: 0 + streamingMipmapsPriority: 0 + grayScaleToAlpha: 0 + generateCubemap: 6 + cubemapConvolution: 0 + seamlessCubemap: 0 + textureFormat: 1 + maxTextureSize: 2048 + textureSettings: + serializedVersion: 2 + filterMode: -1 + aniso: 1 + mipBias: -100 + wrapU: 1 + wrapV: 1 + wrapW: -1 + nPOTScale: 0 + lightmap: 0 + compressionQuality: 50 + spriteMode: 0 + spriteExtrude: 1 + spriteMeshType: 1 + alignment: 0 + spritePivot: {x: 0.5, y: 0.5} + spritePixelsToUnits: 100 + spriteBorder: {x: 0, y: 0, z: 0, w: 0} + spriteGenerateFallbackPhysicsShape: 1 + alphaUsage: 1 + alphaIsTransparency: 1 + spriteTessellationDetail: -1 + textureType: 2 + textureShape: 1 + singleChannelComponent: 0 + maxTextureSizeSet: 0 + compressionQualitySet: 0 + textureFormatSet: 0 + platformSettings: + - serializedVersion: 2 + buildTarget: DefaultTexturePlatform + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 0 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Standalone + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 0 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 0 + spriteSheet: + serializedVersion: 2 + sprites: [] + outline: [] + physicsShape: [] + bones: [] + spriteID: + vertices: [] + indices: + edges: [] + weights: [] + spritePackingTag: + pSDRemoveMatte: 0 + pSDShowRemoveMatteOption: 0 + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/Textures/Close@2x.png" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/Textures/Close@2x.png" new file mode 100644 index 00000000..9d75c198 Binary files /dev/null and "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/Textures/Close@2x.png" differ diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/Textures/Close@2x.png.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/Textures/Close@2x.png.meta" new file mode 100644 index 00000000..ded95e4e --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/Textures/Close@2x.png.meta" @@ -0,0 +1,99 @@ +fileFormatVersion: 2 +guid: 707b6797d85f143d1ac57d1af10da7fd +TextureImporter: + fileIDToRecycleName: {} + externalObjects: {} + serializedVersion: 7 + mipmaps: + mipMapMode: 0 + enableMipMap: 0 + sRGBTexture: 1 + linearTexture: 0 + fadeOut: 0 + borderMipMap: 0 + mipMapsPreserveCoverage: 0 + alphaTestReferenceValue: 0.5 + mipMapFadeDistanceStart: 1 + mipMapFadeDistanceEnd: 3 + bumpmap: + convertToNormalMap: 0 + externalNormalMap: 0 + heightScale: 0.25 + normalMapFilter: 0 + isReadable: 0 + streamingMipmaps: 0 + streamingMipmapsPriority: 0 + grayScaleToAlpha: 0 + generateCubemap: 6 + cubemapConvolution: 0 + seamlessCubemap: 0 + textureFormat: 1 + maxTextureSize: 2048 + textureSettings: + serializedVersion: 2 + filterMode: -1 + aniso: 1 + mipBias: -100 + wrapU: 1 + wrapV: 1 + wrapW: -1 + nPOTScale: 0 + lightmap: 0 + compressionQuality: 50 + spriteMode: 0 + spriteExtrude: 1 + spriteMeshType: 1 + alignment: 0 + spritePivot: {x: 0.5, y: 0.5} + spritePixelsToUnits: 100 + spriteBorder: {x: 0, y: 0, z: 0, w: 0} + spriteGenerateFallbackPhysicsShape: 1 + alphaUsage: 1 + alphaIsTransparency: 1 + spriteTessellationDetail: -1 + textureType: 2 + textureShape: 1 + singleChannelComponent: 0 + maxTextureSizeSet: 0 + compressionQualitySet: 0 + textureFormatSet: 0 + platformSettings: + - serializedVersion: 2 + buildTarget: DefaultTexturePlatform + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 0 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Standalone + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 0 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 0 + spriteSheet: + serializedVersion: 2 + sprites: [] + outline: [] + physicsShape: [] + bones: [] + spriteID: + vertices: [] + indices: + edges: [] + weights: [] + spritePackingTag: + pSDRemoveMatte: 0 + pSDShowRemoveMatteOption: 0 + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/Textures/CompletedColor.png" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/Textures/CompletedColor.png" new file mode 100644 index 00000000..187fe399 Binary files /dev/null and "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/Textures/CompletedColor.png" differ diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/Textures/CompletedColor.png.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/Textures/CompletedColor.png.meta" new file mode 100644 index 00000000..ca30a94a --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/Textures/CompletedColor.png.meta" @@ -0,0 +1,112 @@ +fileFormatVersion: 2 +guid: 65e92bdfb11484892985fab5fed468f2 +timeCreated: 1495628994 +licenseType: Pro +TextureImporter: + fileIDToRecycleName: {} + externalObjects: {} + serializedVersion: 4 + mipmaps: + mipMapMode: 0 + enableMipMap: 0 + sRGBTexture: 0 + linearTexture: 0 + fadeOut: 0 + borderMipMap: 0 + mipMapsPreserveCoverage: 0 + alphaTestReferenceValue: 0.5 + mipMapFadeDistanceStart: 1 + mipMapFadeDistanceEnd: 3 + bumpmap: + convertToNormalMap: 0 + externalNormalMap: 0 + heightScale: 0.25 + normalMapFilter: 0 + isReadable: 0 + grayScaleToAlpha: 0 + generateCubemap: 6 + cubemapConvolution: 0 + seamlessCubemap: 0 + textureFormat: 1 + maxTextureSize: 2048 + textureSettings: + serializedVersion: 2 + filterMode: 1 + aniso: 1 + mipBias: -1 + wrapU: 0 + wrapV: 0 + wrapW: 0 + nPOTScale: 0 + lightmap: 0 + compressionQuality: 50 + spriteMode: 0 + spriteExtrude: 1 + spriteMeshType: 1 + alignment: 0 + spritePivot: {x: 0.5, y: 0.5} + spriteBorder: {x: 0, y: 0, z: 0, w: 0} + spritePixelsToUnits: 100 + alphaUsage: 0 + alphaIsTransparency: 1 + spriteTessellationDetail: -1 + textureType: 2 + textureShape: 1 + maxTextureSizeSet: 0 + compressionQualitySet: 0 + textureFormatSet: 0 + platformSettings: + - buildTarget: DefaultTexturePlatform + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + - buildTarget: Standalone + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + - buildTarget: iPhone + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + - buildTarget: tvOS + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + - buildTarget: WebGL + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + spriteSheet: + serializedVersion: 2 + sprites: [] + outline: [] + physicsShape: [] + spritePackingTag: + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/Textures/Home.png" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/Textures/Home.png" new file mode 100644 index 00000000..6c0f14af Binary files /dev/null and "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/Textures/Home.png" differ diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/Textures/Home.png.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/Textures/Home.png.meta" new file mode 100644 index 00000000..8502fe68 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/Textures/Home.png.meta" @@ -0,0 +1,112 @@ +fileFormatVersion: 2 +guid: 55c8cc15dc72144d1926379d0e25216c +timeCreated: 1495623449 +licenseType: Pro +TextureImporter: + fileIDToRecycleName: {} + externalObjects: {} + serializedVersion: 4 + mipmaps: + mipMapMode: 0 + enableMipMap: 0 + sRGBTexture: 0 + linearTexture: 0 + fadeOut: 0 + borderMipMap: 0 + mipMapsPreserveCoverage: 0 + alphaTestReferenceValue: 0.5 + mipMapFadeDistanceStart: 1 + mipMapFadeDistanceEnd: 3 + bumpmap: + convertToNormalMap: 0 + externalNormalMap: 0 + heightScale: 0.25 + normalMapFilter: 0 + isReadable: 0 + grayScaleToAlpha: 0 + generateCubemap: 6 + cubemapConvolution: 0 + seamlessCubemap: 0 + textureFormat: 1 + maxTextureSize: 2048 + textureSettings: + serializedVersion: 2 + filterMode: -1 + aniso: 1 + mipBias: -1 + wrapU: 1 + wrapV: 1 + wrapW: 1 + nPOTScale: 0 + lightmap: 0 + compressionQuality: 50 + spriteMode: 0 + spriteExtrude: 1 + spriteMeshType: 1 + alignment: 0 + spritePivot: {x: 0.5, y: 0.5} + spriteBorder: {x: 0, y: 0, z: 0, w: 0} + spritePixelsToUnits: 100 + alphaUsage: 1 + alphaIsTransparency: 1 + spriteTessellationDetail: -1 + textureType: 2 + textureShape: 1 + maxTextureSizeSet: 0 + compressionQualitySet: 0 + textureFormatSet: 0 + platformSettings: + - buildTarget: DefaultTexturePlatform + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 0 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + - buildTarget: Standalone + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 0 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + - buildTarget: iPhone + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 0 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + - buildTarget: tvOS + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 0 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + - buildTarget: WebGL + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 0 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + spriteSheet: + serializedVersion: 2 + sprites: [] + outline: [] + physicsShape: [] + spritePackingTag: + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/Textures/InActiveColor.png" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/Textures/InActiveColor.png" new file mode 100644 index 00000000..85c76fd6 Binary files /dev/null and "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/Textures/InActiveColor.png" differ diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/Textures/InActiveColor.png.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/Textures/InActiveColor.png.meta" new file mode 100644 index 00000000..9a0bc09e --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/Textures/InActiveColor.png.meta" @@ -0,0 +1,112 @@ +fileFormatVersion: 2 +guid: cc964b3c8225849b4a5a643bb26e0854 +timeCreated: 1495628994 +licenseType: Pro +TextureImporter: + fileIDToRecycleName: {} + externalObjects: {} + serializedVersion: 4 + mipmaps: + mipMapMode: 0 + enableMipMap: 0 + sRGBTexture: 0 + linearTexture: 0 + fadeOut: 0 + borderMipMap: 0 + mipMapsPreserveCoverage: 0 + alphaTestReferenceValue: 0.5 + mipMapFadeDistanceStart: 1 + mipMapFadeDistanceEnd: 3 + bumpmap: + convertToNormalMap: 0 + externalNormalMap: 0 + heightScale: 0.25 + normalMapFilter: 0 + isReadable: 0 + grayScaleToAlpha: 0 + generateCubemap: 6 + cubemapConvolution: 0 + seamlessCubemap: 0 + textureFormat: 1 + maxTextureSize: 2048 + textureSettings: + serializedVersion: 2 + filterMode: 1 + aniso: 1 + mipBias: -1 + wrapU: 0 + wrapV: 0 + wrapW: 0 + nPOTScale: 0 + lightmap: 0 + compressionQuality: 50 + spriteMode: 0 + spriteExtrude: 1 + spriteMeshType: 1 + alignment: 0 + spritePivot: {x: 0.5, y: 0.5} + spriteBorder: {x: 0, y: 0, z: 0, w: 0} + spritePixelsToUnits: 100 + alphaUsage: 0 + alphaIsTransparency: 1 + spriteTessellationDetail: -1 + textureType: 2 + textureShape: 1 + maxTextureSizeSet: 0 + compressionQualitySet: 0 + textureFormatSet: 0 + platformSettings: + - buildTarget: DefaultTexturePlatform + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + - buildTarget: Standalone + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + - buildTarget: iPhone + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + - buildTarget: tvOS + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + - buildTarget: WebGL + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + spriteSheet: + serializedVersion: 2 + sprites: [] + outline: [] + physicsShape: [] + spritePackingTag: + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/Textures/InActiveColor_Light.png" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/Textures/InActiveColor_Light.png" new file mode 100644 index 00000000..2589ed27 Binary files /dev/null and "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/Textures/InActiveColor_Light.png" differ diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/Textures/InActiveColor_Light.png.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/Textures/InActiveColor_Light.png.meta" new file mode 100644 index 00000000..b7a50f03 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/Textures/InActiveColor_Light.png.meta" @@ -0,0 +1,112 @@ +fileFormatVersion: 2 +guid: cdd49ceea6caf4309a57e8a91cc86487 +timeCreated: 1500556299 +licenseType: Pro +TextureImporter: + fileIDToRecycleName: {} + externalObjects: {} + serializedVersion: 4 + mipmaps: + mipMapMode: 0 + enableMipMap: 0 + sRGBTexture: 0 + linearTexture: 0 + fadeOut: 0 + borderMipMap: 0 + mipMapsPreserveCoverage: 0 + alphaTestReferenceValue: 0.5 + mipMapFadeDistanceStart: 1 + mipMapFadeDistanceEnd: 3 + bumpmap: + convertToNormalMap: 0 + externalNormalMap: 0 + heightScale: 0.25 + normalMapFilter: 0 + isReadable: 0 + grayScaleToAlpha: 0 + generateCubemap: 6 + cubemapConvolution: 0 + seamlessCubemap: 0 + textureFormat: 1 + maxTextureSize: 2048 + textureSettings: + serializedVersion: 2 + filterMode: -1 + aniso: 1 + mipBias: -1 + wrapU: 0 + wrapV: 0 + wrapW: 0 + nPOTScale: 0 + lightmap: 0 + compressionQuality: 50 + spriteMode: 0 + spriteExtrude: 1 + spriteMeshType: 1 + alignment: 0 + spritePivot: {x: 0.5, y: 0.5} + spriteBorder: {x: 0, y: 0, z: 0, w: 0} + spritePixelsToUnits: 100 + alphaUsage: 0 + alphaIsTransparency: 1 + spriteTessellationDetail: -1 + textureType: 2 + textureShape: 1 + maxTextureSizeSet: 0 + compressionQualitySet: 0 + textureFormatSet: 0 + platformSettings: + - buildTarget: DefaultTexturePlatform + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + - buildTarget: Standalone + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + - buildTarget: iPhone + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + - buildTarget: tvOS + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + - buildTarget: WebGL + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + spriteSheet: + serializedVersion: 2 + sprites: [] + outline: [] + physicsShape: [] + spritePackingTag: + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/Textures/ProgressBar.png" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/Textures/ProgressBar.png" new file mode 100644 index 00000000..2d79de11 Binary files /dev/null and "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/Textures/ProgressBar.png" differ diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/Textures/ProgressBar.png.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/Textures/ProgressBar.png.meta" new file mode 100644 index 00000000..d19a134d --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/Textures/ProgressBar.png.meta" @@ -0,0 +1,112 @@ +fileFormatVersion: 2 +guid: de4fb675fb7e54feba3158439d136fdf +timeCreated: 1494235638 +licenseType: Pro +TextureImporter: + fileIDToRecycleName: {} + externalObjects: {} + serializedVersion: 4 + mipmaps: + mipMapMode: 0 + enableMipMap: 0 + sRGBTexture: 0 + linearTexture: 0 + fadeOut: 0 + borderMipMap: 0 + mipMapsPreserveCoverage: 0 + alphaTestReferenceValue: 0.5 + mipMapFadeDistanceStart: 1 + mipMapFadeDistanceEnd: 3 + bumpmap: + convertToNormalMap: 0 + externalNormalMap: 0 + heightScale: 0.25 + normalMapFilter: 0 + isReadable: 0 + grayScaleToAlpha: 0 + generateCubemap: 6 + cubemapConvolution: 0 + seamlessCubemap: 0 + textureFormat: 1 + maxTextureSize: 2048 + textureSettings: + serializedVersion: 2 + filterMode: 1 + aniso: 1 + mipBias: -1 + wrapU: 0 + wrapV: 0 + wrapW: 0 + nPOTScale: 0 + lightmap: 0 + compressionQuality: 50 + spriteMode: 0 + spriteExtrude: 1 + spriteMeshType: 1 + alignment: 0 + spritePivot: {x: 0.5, y: 0.5} + spriteBorder: {x: 0, y: 0, z: 0, w: 0} + spritePixelsToUnits: 100 + alphaUsage: 0 + alphaIsTransparency: 1 + spriteTessellationDetail: -1 + textureType: 2 + textureShape: 1 + maxTextureSizeSet: 0 + compressionQualitySet: 0 + textureFormatSet: 0 + platformSettings: + - buildTarget: DefaultTexturePlatform + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + - buildTarget: Standalone + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + - buildTarget: iPhone + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + - buildTarget: tvOS + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + - buildTarget: WebGL + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + spriteSheet: + serializedVersion: 2 + sprites: [] + outline: [] + physicsShape: [] + spritePackingTag: + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/Textures/Reset.png" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/Textures/Reset.png" new file mode 100644 index 00000000..31e98146 Binary files /dev/null and "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/Textures/Reset.png" differ diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/Textures/Reset.png.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/Textures/Reset.png.meta" new file mode 100644 index 00000000..e292400c --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/Textures/Reset.png.meta" @@ -0,0 +1,112 @@ +fileFormatVersion: 2 +guid: 570335cdb790d4eea895da9be0d9278d +timeCreated: 1495623449 +licenseType: Pro +TextureImporter: + fileIDToRecycleName: {} + externalObjects: {} + serializedVersion: 4 + mipmaps: + mipMapMode: 0 + enableMipMap: 0 + sRGBTexture: 0 + linearTexture: 0 + fadeOut: 0 + borderMipMap: 0 + mipMapsPreserveCoverage: 0 + alphaTestReferenceValue: 0.5 + mipMapFadeDistanceStart: 1 + mipMapFadeDistanceEnd: 3 + bumpmap: + convertToNormalMap: 0 + externalNormalMap: 0 + heightScale: 0.25 + normalMapFilter: 0 + isReadable: 0 + grayScaleToAlpha: 0 + generateCubemap: 6 + cubemapConvolution: 0 + seamlessCubemap: 0 + textureFormat: 1 + maxTextureSize: 2048 + textureSettings: + serializedVersion: 2 + filterMode: -1 + aniso: 1 + mipBias: -1 + wrapU: 1 + wrapV: 1 + wrapW: 1 + nPOTScale: 0 + lightmap: 0 + compressionQuality: 50 + spriteMode: 0 + spriteExtrude: 1 + spriteMeshType: 1 + alignment: 0 + spritePivot: {x: 0.5, y: 0.5} + spriteBorder: {x: 0, y: 0, z: 0, w: 0} + spritePixelsToUnits: 100 + alphaUsage: 1 + alphaIsTransparency: 1 + spriteTessellationDetail: -1 + textureType: 2 + textureShape: 1 + maxTextureSizeSet: 0 + compressionQualitySet: 0 + textureFormatSet: 0 + platformSettings: + - buildTarget: DefaultTexturePlatform + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 0 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + - buildTarget: Standalone + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 0 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + - buildTarget: iPhone + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 0 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + - buildTarget: tvOS + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 0 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + - buildTarget: WebGL + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 0 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + spriteSheet: + serializedVersion: 2 + sprites: [] + outline: [] + physicsShape: [] + spritePackingTag: + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/Textures/Swatch - Cyan.psd" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/Textures/Swatch - Cyan.psd" new file mode 100644 index 00000000..0f5ec7ca Binary files /dev/null and "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/Textures/Swatch - Cyan.psd" differ diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/Textures/Swatch - Cyan.psd.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/Textures/Swatch - Cyan.psd.meta" new file mode 100644 index 00000000..d33f1086 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/Textures/Swatch - Cyan.psd.meta" @@ -0,0 +1,112 @@ +fileFormatVersion: 2 +guid: 97a5a50158f264781ad23b3c6f1e40ca +timeCreated: 1484814140 +licenseType: Pro +TextureImporter: + fileIDToRecycleName: {} + externalObjects: {} + serializedVersion: 4 + mipmaps: + mipMapMode: 0 + enableMipMap: 0 + sRGBTexture: 0 + linearTexture: 0 + fadeOut: 0 + borderMipMap: 0 + mipMapsPreserveCoverage: 0 + alphaTestReferenceValue: 0.5 + mipMapFadeDistanceStart: 1 + mipMapFadeDistanceEnd: 3 + bumpmap: + convertToNormalMap: 0 + externalNormalMap: 0 + heightScale: 0.25 + normalMapFilter: 0 + isReadable: 0 + grayScaleToAlpha: 0 + generateCubemap: 6 + cubemapConvolution: 0 + seamlessCubemap: 0 + textureFormat: 1 + maxTextureSize: 2048 + textureSettings: + serializedVersion: 2 + filterMode: 1 + aniso: 1 + mipBias: -1 + wrapU: 0 + wrapV: 0 + wrapW: 0 + nPOTScale: 0 + lightmap: 0 + compressionQuality: 50 + spriteMode: 0 + spriteExtrude: 1 + spriteMeshType: 1 + alignment: 0 + spritePivot: {x: 0.5, y: 0.5} + spriteBorder: {x: 0, y: 0, z: 0, w: 0} + spritePixelsToUnits: 100 + alphaUsage: 0 + alphaIsTransparency: 1 + spriteTessellationDetail: -1 + textureType: 2 + textureShape: 1 + maxTextureSizeSet: 0 + compressionQualitySet: 0 + textureFormatSet: 0 + platformSettings: + - buildTarget: DefaultTexturePlatform + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + - buildTarget: Standalone + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + - buildTarget: iPhone + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + - buildTarget: tvOS + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + - buildTarget: WebGL + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + spriteSheet: + serializedVersion: 2 + sprites: [] + outline: [] + physicsShape: [] + spritePackingTag: + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/Textures/Swatch - Deep Blue.psd" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/Textures/Swatch - Deep Blue.psd" new file mode 100644 index 00000000..34af37aa Binary files /dev/null and "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/Textures/Swatch - Deep Blue.psd" differ diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/Textures/Swatch - Deep Blue.psd.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/Textures/Swatch - Deep Blue.psd.meta" new file mode 100644 index 00000000..1e5ea101 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/Textures/Swatch - Deep Blue.psd.meta" @@ -0,0 +1,112 @@ +fileFormatVersion: 2 +guid: b1571699753a145d186488cfdbebe457 +timeCreated: 1484814140 +licenseType: Pro +TextureImporter: + fileIDToRecycleName: {} + externalObjects: {} + serializedVersion: 4 + mipmaps: + mipMapMode: 0 + enableMipMap: 0 + sRGBTexture: 0 + linearTexture: 0 + fadeOut: 0 + borderMipMap: 0 + mipMapsPreserveCoverage: 0 + alphaTestReferenceValue: 0.5 + mipMapFadeDistanceStart: 1 + mipMapFadeDistanceEnd: 3 + bumpmap: + convertToNormalMap: 0 + externalNormalMap: 0 + heightScale: 0.25 + normalMapFilter: 0 + isReadable: 0 + grayScaleToAlpha: 0 + generateCubemap: 6 + cubemapConvolution: 0 + seamlessCubemap: 0 + textureFormat: 1 + maxTextureSize: 2048 + textureSettings: + serializedVersion: 2 + filterMode: 1 + aniso: 1 + mipBias: -1 + wrapU: 0 + wrapV: 0 + wrapW: 0 + nPOTScale: 0 + lightmap: 0 + compressionQuality: 50 + spriteMode: 0 + spriteExtrude: 1 + spriteMeshType: 1 + alignment: 0 + spritePivot: {x: 0.5, y: 0.5} + spriteBorder: {x: 0, y: 0, z: 0, w: 0} + spritePixelsToUnits: 100 + alphaUsage: 0 + alphaIsTransparency: 1 + spriteTessellationDetail: -1 + textureType: 2 + textureShape: 1 + maxTextureSizeSet: 0 + compressionQualitySet: 0 + textureFormatSet: 0 + platformSettings: + - buildTarget: DefaultTexturePlatform + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + - buildTarget: Standalone + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + - buildTarget: iPhone + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + - buildTarget: tvOS + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + - buildTarget: WebGL + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + spriteSheet: + serializedVersion: 2 + sprites: [] + outline: [] + physicsShape: [] + spritePackingTag: + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/Textures/Swatch - Graphyte.psd" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/Textures/Swatch - Graphyte.psd" new file mode 100644 index 00000000..5643ba43 Binary files /dev/null and "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/Textures/Swatch - Graphyte.psd" differ diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/Textures/Swatch - Graphyte.psd.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/Textures/Swatch - Graphyte.psd.meta" new file mode 100644 index 00000000..e4f1e654 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/Textures/Swatch - Graphyte.psd.meta" @@ -0,0 +1,112 @@ +fileFormatVersion: 2 +guid: aeb3cd76d71014add8a674b1b4831cf5 +timeCreated: 1484814140 +licenseType: Pro +TextureImporter: + fileIDToRecycleName: {} + externalObjects: {} + serializedVersion: 4 + mipmaps: + mipMapMode: 0 + enableMipMap: 0 + sRGBTexture: 0 + linearTexture: 0 + fadeOut: 0 + borderMipMap: 0 + mipMapsPreserveCoverage: 0 + alphaTestReferenceValue: 0.5 + mipMapFadeDistanceStart: 1 + mipMapFadeDistanceEnd: 3 + bumpmap: + convertToNormalMap: 0 + externalNormalMap: 0 + heightScale: 0.25 + normalMapFilter: 0 + isReadable: 0 + grayScaleToAlpha: 0 + generateCubemap: 6 + cubemapConvolution: 0 + seamlessCubemap: 0 + textureFormat: 1 + maxTextureSize: 2048 + textureSettings: + serializedVersion: 2 + filterMode: 1 + aniso: 1 + mipBias: -1 + wrapU: 0 + wrapV: 0 + wrapW: 0 + nPOTScale: 0 + lightmap: 0 + compressionQuality: 50 + spriteMode: 0 + spriteExtrude: 1 + spriteMeshType: 1 + alignment: 0 + spritePivot: {x: 0.5, y: 0.5} + spriteBorder: {x: 0, y: 0, z: 0, w: 0} + spritePixelsToUnits: 100 + alphaUsage: 0 + alphaIsTransparency: 1 + spriteTessellationDetail: -1 + textureType: 2 + textureShape: 1 + maxTextureSizeSet: 0 + compressionQualitySet: 0 + textureFormatSet: 0 + platformSettings: + - buildTarget: DefaultTexturePlatform + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + - buildTarget: Standalone + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + - buildTarget: iPhone + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + - buildTarget: tvOS + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + - buildTarget: WebGL + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + spriteSheet: + serializedVersion: 2 + sprites: [] + outline: [] + physicsShape: [] + spritePackingTag: + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/Textures/Swatch - Green.psd" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/Textures/Swatch - Green.psd" new file mode 100644 index 00000000..fae2ed65 Binary files /dev/null and "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/Textures/Swatch - Green.psd" differ diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/Textures/Swatch - Green.psd.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/Textures/Swatch - Green.psd.meta" new file mode 100644 index 00000000..87a9b942 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/Textures/Swatch - Green.psd.meta" @@ -0,0 +1,112 @@ +fileFormatVersion: 2 +guid: 6e9ba7298e2b14bbab7ee9f608a8f9d7 +timeCreated: 1484814140 +licenseType: Pro +TextureImporter: + fileIDToRecycleName: {} + externalObjects: {} + serializedVersion: 4 + mipmaps: + mipMapMode: 0 + enableMipMap: 0 + sRGBTexture: 0 + linearTexture: 0 + fadeOut: 0 + borderMipMap: 0 + mipMapsPreserveCoverage: 0 + alphaTestReferenceValue: 0.5 + mipMapFadeDistanceStart: 1 + mipMapFadeDistanceEnd: 3 + bumpmap: + convertToNormalMap: 0 + externalNormalMap: 0 + heightScale: 0.25 + normalMapFilter: 0 + isReadable: 0 + grayScaleToAlpha: 0 + generateCubemap: 6 + cubemapConvolution: 0 + seamlessCubemap: 0 + textureFormat: 1 + maxTextureSize: 2048 + textureSettings: + serializedVersion: 2 + filterMode: 1 + aniso: 1 + mipBias: -1 + wrapU: 0 + wrapV: 0 + wrapW: 0 + nPOTScale: 0 + lightmap: 0 + compressionQuality: 50 + spriteMode: 0 + spriteExtrude: 1 + spriteMeshType: 1 + alignment: 0 + spritePivot: {x: 0.5, y: 0.5} + spriteBorder: {x: 0, y: 0, z: 0, w: 0} + spritePixelsToUnits: 100 + alphaUsage: 0 + alphaIsTransparency: 1 + spriteTessellationDetail: -1 + textureType: 2 + textureShape: 1 + maxTextureSizeSet: 0 + compressionQualitySet: 0 + textureFormatSet: 0 + platformSettings: + - buildTarget: DefaultTexturePlatform + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + - buildTarget: Standalone + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + - buildTarget: iPhone + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + - buildTarget: tvOS + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + - buildTarget: WebGL + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + spriteSheet: + serializedVersion: 2 + sprites: [] + outline: [] + physicsShape: [] + spritePackingTag: + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/Textures/Swatch - Light Gray.psd" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/Textures/Swatch - Light Gray.psd" new file mode 100644 index 00000000..c6f46e6c Binary files /dev/null and "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/Textures/Swatch - Light Gray.psd" differ diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/Textures/Swatch - Light Gray.psd.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/Textures/Swatch - Light Gray.psd.meta" new file mode 100644 index 00000000..86e0766e --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/Textures/Swatch - Light Gray.psd.meta" @@ -0,0 +1,112 @@ +fileFormatVersion: 2 +guid: 9d20e639759eb41d9835d99a8da57b30 +timeCreated: 1484814140 +licenseType: Pro +TextureImporter: + fileIDToRecycleName: {} + externalObjects: {} + serializedVersion: 4 + mipmaps: + mipMapMode: 0 + enableMipMap: 0 + sRGBTexture: 0 + linearTexture: 0 + fadeOut: 0 + borderMipMap: 0 + mipMapsPreserveCoverage: 0 + alphaTestReferenceValue: 0.5 + mipMapFadeDistanceStart: 1 + mipMapFadeDistanceEnd: 3 + bumpmap: + convertToNormalMap: 0 + externalNormalMap: 0 + heightScale: 0.25 + normalMapFilter: 0 + isReadable: 0 + grayScaleToAlpha: 0 + generateCubemap: 6 + cubemapConvolution: 0 + seamlessCubemap: 0 + textureFormat: 1 + maxTextureSize: 2048 + textureSettings: + serializedVersion: 2 + filterMode: 1 + aniso: 1 + mipBias: -1 + wrapU: 0 + wrapV: 0 + wrapW: 0 + nPOTScale: 0 + lightmap: 0 + compressionQuality: 50 + spriteMode: 0 + spriteExtrude: 1 + spriteMeshType: 1 + alignment: 0 + spritePivot: {x: 0.5, y: 0.5} + spriteBorder: {x: 0, y: 0, z: 0, w: 0} + spritePixelsToUnits: 100 + alphaUsage: 0 + alphaIsTransparency: 1 + spriteTessellationDetail: -1 + textureType: 2 + textureShape: 1 + maxTextureSizeSet: 0 + compressionQualitySet: 0 + textureFormatSet: 0 + platformSettings: + - buildTarget: DefaultTexturePlatform + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + - buildTarget: Standalone + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + - buildTarget: iPhone + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + - buildTarget: tvOS + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + - buildTarget: WebGL + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + spriteSheet: + serializedVersion: 2 + sprites: [] + outline: [] + physicsShape: [] + spritePackingTag: + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/Textures/Swatch - Magenta.psd" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/Textures/Swatch - Magenta.psd" new file mode 100644 index 00000000..a38d77fd Binary files /dev/null and "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/Textures/Swatch - Magenta.psd" differ diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/Textures/Swatch - Magenta.psd.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/Textures/Swatch - Magenta.psd.meta" new file mode 100644 index 00000000..d460547d --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/Textures/Swatch - Magenta.psd.meta" @@ -0,0 +1,112 @@ +fileFormatVersion: 2 +guid: 6d2cd34da746d4a9d866542eb553b6e4 +timeCreated: 1484814140 +licenseType: Pro +TextureImporter: + fileIDToRecycleName: {} + externalObjects: {} + serializedVersion: 4 + mipmaps: + mipMapMode: 0 + enableMipMap: 0 + sRGBTexture: 0 + linearTexture: 0 + fadeOut: 0 + borderMipMap: 0 + mipMapsPreserveCoverage: 0 + alphaTestReferenceValue: 0.5 + mipMapFadeDistanceStart: 1 + mipMapFadeDistanceEnd: 3 + bumpmap: + convertToNormalMap: 0 + externalNormalMap: 0 + heightScale: 0.25 + normalMapFilter: 0 + isReadable: 0 + grayScaleToAlpha: 0 + generateCubemap: 6 + cubemapConvolution: 0 + seamlessCubemap: 0 + textureFormat: 1 + maxTextureSize: 2048 + textureSettings: + serializedVersion: 2 + filterMode: 1 + aniso: 1 + mipBias: -1 + wrapU: 0 + wrapV: 0 + wrapW: 0 + nPOTScale: 0 + lightmap: 0 + compressionQuality: 50 + spriteMode: 0 + spriteExtrude: 1 + spriteMeshType: 1 + alignment: 0 + spritePivot: {x: 0.5, y: 0.5} + spriteBorder: {x: 0, y: 0, z: 0, w: 0} + spritePixelsToUnits: 100 + alphaUsage: 0 + alphaIsTransparency: 1 + spriteTessellationDetail: -1 + textureType: 2 + textureShape: 1 + maxTextureSizeSet: 0 + compressionQualitySet: 0 + textureFormatSet: 0 + platformSettings: + - buildTarget: DefaultTexturePlatform + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + - buildTarget: Standalone + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + - buildTarget: iPhone + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + - buildTarget: tvOS + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + - buildTarget: WebGL + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + spriteSheet: + serializedVersion: 2 + sprites: [] + outline: [] + physicsShape: [] + spritePackingTag: + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/Textures/Swatch - Teal.psd" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/Textures/Swatch - Teal.psd" new file mode 100644 index 00000000..1e164c75 Binary files /dev/null and "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/Textures/Swatch - Teal.psd" differ diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/Textures/Swatch - Teal.psd.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/Textures/Swatch - Teal.psd.meta" new file mode 100644 index 00000000..22e22fbd --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/Textures/Swatch - Teal.psd.meta" @@ -0,0 +1,112 @@ +fileFormatVersion: 2 +guid: 3e373dede195c4085a3ae1496bb42250 +timeCreated: 1484814140 +licenseType: Pro +TextureImporter: + fileIDToRecycleName: {} + externalObjects: {} + serializedVersion: 4 + mipmaps: + mipMapMode: 0 + enableMipMap: 0 + sRGBTexture: 0 + linearTexture: 0 + fadeOut: 0 + borderMipMap: 0 + mipMapsPreserveCoverage: 0 + alphaTestReferenceValue: 0.5 + mipMapFadeDistanceStart: 1 + mipMapFadeDistanceEnd: 3 + bumpmap: + convertToNormalMap: 0 + externalNormalMap: 0 + heightScale: 0.25 + normalMapFilter: 0 + isReadable: 0 + grayScaleToAlpha: 0 + generateCubemap: 6 + cubemapConvolution: 0 + seamlessCubemap: 0 + textureFormat: 1 + maxTextureSize: 2048 + textureSettings: + serializedVersion: 2 + filterMode: 1 + aniso: 1 + mipBias: -1 + wrapU: 0 + wrapV: 0 + wrapW: 0 + nPOTScale: 0 + lightmap: 0 + compressionQuality: 50 + spriteMode: 0 + spriteExtrude: 1 + spriteMeshType: 1 + alignment: 0 + spritePivot: {x: 0.5, y: 0.5} + spriteBorder: {x: 0, y: 0, z: 0, w: 0} + spritePixelsToUnits: 100 + alphaUsage: 0 + alphaIsTransparency: 1 + spriteTessellationDetail: -1 + textureType: 2 + textureShape: 1 + maxTextureSizeSet: 0 + compressionQualitySet: 0 + textureFormatSet: 0 + platformSettings: + - buildTarget: DefaultTexturePlatform + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + - buildTarget: Standalone + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + - buildTarget: iPhone + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + - buildTarget: tvOS + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + - buildTarget: WebGL + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + spriteSheet: + serializedVersion: 2 + sprites: [] + outline: [] + physicsShape: [] + spritePackingTag: + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/Textures/back@2x.png" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/Textures/back@2x.png" new file mode 100644 index 00000000..c9260d37 Binary files /dev/null and "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/Textures/back@2x.png" differ diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/Textures/back@2x.png.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/Textures/back@2x.png.meta" new file mode 100644 index 00000000..4164216e --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/Textures/back@2x.png.meta" @@ -0,0 +1,112 @@ +fileFormatVersion: 2 +guid: e89e108886152440988fd1ce6c7318d5 +timeCreated: 1497007247 +licenseType: Free +TextureImporter: + fileIDToRecycleName: {} + externalObjects: {} + serializedVersion: 4 + mipmaps: + mipMapMode: 0 + enableMipMap: 0 + sRGBTexture: 0 + linearTexture: 0 + fadeOut: 0 + borderMipMap: 0 + mipMapsPreserveCoverage: 0 + alphaTestReferenceValue: 0.5 + mipMapFadeDistanceStart: 1 + mipMapFadeDistanceEnd: 3 + bumpmap: + convertToNormalMap: 0 + externalNormalMap: 0 + heightScale: 0.25 + normalMapFilter: 0 + isReadable: 0 + grayScaleToAlpha: 0 + generateCubemap: 6 + cubemapConvolution: 0 + seamlessCubemap: 0 + textureFormat: 1 + maxTextureSize: 2048 + textureSettings: + serializedVersion: 2 + filterMode: -1 + aniso: 1 + mipBias: -1 + wrapU: 1 + wrapV: 1 + wrapW: 1 + nPOTScale: 0 + lightmap: 0 + compressionQuality: 50 + spriteMode: 0 + spriteExtrude: 1 + spriteMeshType: 1 + alignment: 0 + spritePivot: {x: 0.5, y: 0.5} + spriteBorder: {x: 0, y: 0, z: 0, w: 0} + spritePixelsToUnits: 100 + alphaUsage: 1 + alphaIsTransparency: 1 + spriteTessellationDetail: -1 + textureType: 2 + textureShape: 1 + maxTextureSizeSet: 0 + compressionQualitySet: 0 + textureFormatSet: 0 + platformSettings: + - buildTarget: DefaultTexturePlatform + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 0 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + - buildTarget: Standalone + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 0 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + - buildTarget: iPhone + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 0 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + - buildTarget: tvOS + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 0 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + - buildTarget: WebGL + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 0 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + spriteSheet: + serializedVersion: 2 + sprites: [] + outline: [] + physicsShape: [] + spritePackingTag: + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/Textures/book.png" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/Textures/book.png" new file mode 100644 index 00000000..e9358260 Binary files /dev/null and "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/Textures/book.png" differ diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/Textures/book.png.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/Textures/book.png.meta" new file mode 100644 index 00000000..33e72299 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/Textures/book.png.meta" @@ -0,0 +1,112 @@ +fileFormatVersion: 2 +guid: a742ebe388190477cb03e581e4c6f773 +timeCreated: 1493985147 +licenseType: Pro +TextureImporter: + fileIDToRecycleName: {} + externalObjects: {} + serializedVersion: 4 + mipmaps: + mipMapMode: 0 + enableMipMap: 0 + sRGBTexture: 0 + linearTexture: 0 + fadeOut: 0 + borderMipMap: 0 + mipMapsPreserveCoverage: 0 + alphaTestReferenceValue: 0.5 + mipMapFadeDistanceStart: 1 + mipMapFadeDistanceEnd: 3 + bumpmap: + convertToNormalMap: 0 + externalNormalMap: 0 + heightScale: 0.25 + normalMapFilter: 0 + isReadable: 0 + grayScaleToAlpha: 0 + generateCubemap: 6 + cubemapConvolution: 0 + seamlessCubemap: 0 + textureFormat: 1 + maxTextureSize: 2048 + textureSettings: + serializedVersion: 2 + filterMode: -1 + aniso: 1 + mipBias: -1 + wrapU: 1 + wrapV: 1 + wrapW: 1 + nPOTScale: 0 + lightmap: 0 + compressionQuality: 50 + spriteMode: 0 + spriteExtrude: 1 + spriteMeshType: 1 + alignment: 0 + spritePivot: {x: 0.5, y: 0.5} + spriteBorder: {x: 0, y: 0, z: 0, w: 0} + spritePixelsToUnits: 100 + alphaUsage: 1 + alphaIsTransparency: 1 + spriteTessellationDetail: -1 + textureType: 2 + textureShape: 1 + maxTextureSizeSet: 0 + compressionQualitySet: 0 + textureFormatSet: 0 + platformSettings: + - buildTarget: DefaultTexturePlatform + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 0 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + - buildTarget: Standalone + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 0 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + - buildTarget: iPhone + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 0 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + - buildTarget: tvOS + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 0 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + - buildTarget: WebGL + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 0 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + spriteSheet: + serializedVersion: 2 + sprites: [] + outline: [] + physicsShape: [] + spritePackingTag: + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/Textures/home@2x.png" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/Textures/home@2x.png" new file mode 100644 index 00000000..0ad99bad Binary files /dev/null and "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/Textures/home@2x.png" differ diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/Textures/home@2x.png.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/Textures/home@2x.png.meta" new file mode 100644 index 00000000..2803008c --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/Textures/home@2x.png.meta" @@ -0,0 +1,112 @@ +fileFormatVersion: 2 +guid: 9fc48046a3d2c46e3b9de298068bf5a6 +timeCreated: 1497007247 +licenseType: Free +TextureImporter: + fileIDToRecycleName: {} + externalObjects: {} + serializedVersion: 4 + mipmaps: + mipMapMode: 0 + enableMipMap: 0 + sRGBTexture: 0 + linearTexture: 0 + fadeOut: 0 + borderMipMap: 0 + mipMapsPreserveCoverage: 0 + alphaTestReferenceValue: 0.5 + mipMapFadeDistanceStart: 1 + mipMapFadeDistanceEnd: 3 + bumpmap: + convertToNormalMap: 0 + externalNormalMap: 0 + heightScale: 0.25 + normalMapFilter: 0 + isReadable: 0 + grayScaleToAlpha: 0 + generateCubemap: 6 + cubemapConvolution: 0 + seamlessCubemap: 0 + textureFormat: 1 + maxTextureSize: 2048 + textureSettings: + serializedVersion: 2 + filterMode: -1 + aniso: 1 + mipBias: -1 + wrapU: 1 + wrapV: 1 + wrapW: 1 + nPOTScale: 0 + lightmap: 0 + compressionQuality: 50 + spriteMode: 0 + spriteExtrude: 1 + spriteMeshType: 1 + alignment: 0 + spritePivot: {x: 0.5, y: 0.5} + spriteBorder: {x: 0, y: 0, z: 0, w: 0} + spritePixelsToUnits: 100 + alphaUsage: 1 + alphaIsTransparency: 1 + spriteTessellationDetail: -1 + textureType: 2 + textureShape: 1 + maxTextureSizeSet: 0 + compressionQualitySet: 0 + textureFormatSet: 0 + platformSettings: + - buildTarget: DefaultTexturePlatform + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 0 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + - buildTarget: Standalone + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 0 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + - buildTarget: iPhone + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 0 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + - buildTarget: tvOS + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 0 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + - buildTarget: WebGL + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 0 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + spriteSheet: + serializedVersion: 2 + sprites: [] + outline: [] + physicsShape: [] + spritePackingTag: + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/Textures/reset@2x.png" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/Textures/reset@2x.png" new file mode 100644 index 00000000..ee78ce3d Binary files /dev/null and "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/Textures/reset@2x.png" differ diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/Textures/reset@2x.png.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/Textures/reset@2x.png.meta" new file mode 100644 index 00000000..57a1e1c0 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/Textures/reset@2x.png.meta" @@ -0,0 +1,112 @@ +fileFormatVersion: 2 +guid: 8adc141dbbf6549b5a417446a966e4c7 +timeCreated: 1497007247 +licenseType: Free +TextureImporter: + fileIDToRecycleName: {} + externalObjects: {} + serializedVersion: 4 + mipmaps: + mipMapMode: 0 + enableMipMap: 0 + sRGBTexture: 0 + linearTexture: 0 + fadeOut: 0 + borderMipMap: 0 + mipMapsPreserveCoverage: 0 + alphaTestReferenceValue: 0.5 + mipMapFadeDistanceStart: 1 + mipMapFadeDistanceEnd: 3 + bumpmap: + convertToNormalMap: 0 + externalNormalMap: 0 + heightScale: 0.25 + normalMapFilter: 0 + isReadable: 0 + grayScaleToAlpha: 0 + generateCubemap: 6 + cubemapConvolution: 0 + seamlessCubemap: 0 + textureFormat: 1 + maxTextureSize: 2048 + textureSettings: + serializedVersion: 2 + filterMode: -1 + aniso: 1 + mipBias: -1 + wrapU: 1 + wrapV: 1 + wrapW: 1 + nPOTScale: 0 + lightmap: 0 + compressionQuality: 50 + spriteMode: 0 + spriteExtrude: 1 + spriteMeshType: 1 + alignment: 0 + spritePivot: {x: 0.5, y: 0.5} + spriteBorder: {x: 0, y: 0, z: 0, w: 0} + spritePixelsToUnits: 100 + alphaUsage: 1 + alphaIsTransparency: 1 + spriteTessellationDetail: -1 + textureType: 2 + textureShape: 1 + maxTextureSizeSet: 0 + compressionQualitySet: 0 + textureFormatSet: 0 + platformSettings: + - buildTarget: DefaultTexturePlatform + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 0 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + - buildTarget: Standalone + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 0 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + - buildTarget: iPhone + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 0 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + - buildTarget: tvOS + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 0 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + - buildTarget: WebGL + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 0 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + spriteSheet: + serializedVersion: 2 + sprites: [] + outline: [] + physicsShape: [] + spritePackingTag: + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/Textures/scrollbar_8px.png" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/Textures/scrollbar_8px.png" new file mode 100644 index 00000000..107b720d Binary files /dev/null and "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/Textures/scrollbar_8px.png" differ diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/Textures/scrollbar_8px.png.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/Textures/scrollbar_8px.png.meta" new file mode 100644 index 00000000..d673a23f --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/Textures/scrollbar_8px.png.meta" @@ -0,0 +1,112 @@ +fileFormatVersion: 2 +guid: a4f425e006f294707810114729423f89 +timeCreated: 1496923111 +licenseType: Free +TextureImporter: + fileIDToRecycleName: {} + externalObjects: {} + serializedVersion: 4 + mipmaps: + mipMapMode: 0 + enableMipMap: 0 + sRGBTexture: 0 + linearTexture: 0 + fadeOut: 0 + borderMipMap: 0 + mipMapsPreserveCoverage: 0 + alphaTestReferenceValue: 0.5 + mipMapFadeDistanceStart: 1 + mipMapFadeDistanceEnd: 3 + bumpmap: + convertToNormalMap: 0 + externalNormalMap: 0 + heightScale: 0.25 + normalMapFilter: 0 + isReadable: 0 + grayScaleToAlpha: 0 + generateCubemap: 6 + cubemapConvolution: 0 + seamlessCubemap: 0 + textureFormat: 1 + maxTextureSize: 2048 + textureSettings: + serializedVersion: 2 + filterMode: -1 + aniso: 1 + mipBias: -1 + wrapU: 1 + wrapV: 1 + wrapW: 1 + nPOTScale: 0 + lightmap: 0 + compressionQuality: 50 + spriteMode: 0 + spriteExtrude: 1 + spriteMeshType: 1 + alignment: 0 + spritePivot: {x: 0.5, y: 0.5} + spriteBorder: {x: 0, y: 0, z: 0, w: 0} + spritePixelsToUnits: 100 + alphaUsage: 1 + alphaIsTransparency: 1 + spriteTessellationDetail: -1 + textureType: 2 + textureShape: 1 + maxTextureSizeSet: 0 + compressionQualitySet: 0 + textureFormatSet: 0 + platformSettings: + - buildTarget: DefaultTexturePlatform + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 0 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + - buildTarget: Standalone + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 0 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + - buildTarget: iPhone + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 0 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + - buildTarget: tvOS + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 0 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + - buildTarget: WebGL + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 0 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + spriteSheet: + serializedVersion: 2 + sprites: [] + outline: [] + physicsShape: [] + spritePackingTag: + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/Textures/scrollbar_8pxActive.png" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/Textures/scrollbar_8pxActive.png" new file mode 100644 index 00000000..3205420e Binary files /dev/null and "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/Textures/scrollbar_8pxActive.png" differ diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/Textures/scrollbar_8pxActive.png.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/Textures/scrollbar_8pxActive.png.meta" new file mode 100644 index 00000000..11f8a9dd --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/Textures/scrollbar_8pxActive.png.meta" @@ -0,0 +1,112 @@ +fileFormatVersion: 2 +guid: 20972d7b57943448cbe4b74c701de84c +timeCreated: 1496923239 +licenseType: Free +TextureImporter: + fileIDToRecycleName: {} + externalObjects: {} + serializedVersion: 4 + mipmaps: + mipMapMode: 0 + enableMipMap: 0 + sRGBTexture: 0 + linearTexture: 0 + fadeOut: 0 + borderMipMap: 0 + mipMapsPreserveCoverage: 0 + alphaTestReferenceValue: 0.5 + mipMapFadeDistanceStart: 1 + mipMapFadeDistanceEnd: 3 + bumpmap: + convertToNormalMap: 0 + externalNormalMap: 0 + heightScale: 0.25 + normalMapFilter: 0 + isReadable: 0 + grayScaleToAlpha: 0 + generateCubemap: 6 + cubemapConvolution: 0 + seamlessCubemap: 0 + textureFormat: 1 + maxTextureSize: 2048 + textureSettings: + serializedVersion: 2 + filterMode: -1 + aniso: 1 + mipBias: -1 + wrapU: 1 + wrapV: 1 + wrapW: 1 + nPOTScale: 0 + lightmap: 0 + compressionQuality: 50 + spriteMode: 0 + spriteExtrude: 1 + spriteMeshType: 1 + alignment: 0 + spritePivot: {x: 0.5, y: 0.5} + spriteBorder: {x: 0, y: 0, z: 0, w: 0} + spritePixelsToUnits: 100 + alphaUsage: 1 + alphaIsTransparency: 1 + spriteTessellationDetail: -1 + textureType: 2 + textureShape: 1 + maxTextureSizeSet: 0 + compressionQualitySet: 0 + textureFormatSet: 0 + platformSettings: + - buildTarget: DefaultTexturePlatform + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 0 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + - buildTarget: Standalone + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 0 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + - buildTarget: iPhone + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 0 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + - buildTarget: tvOS + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 0 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + - buildTarget: WebGL + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 0 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + spriteSheet: + serializedVersion: 2 + sprites: [] + outline: [] + physicsShape: [] + spritePackingTag: + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/Textures/scrollbar_8pxHover.png" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/Textures/scrollbar_8pxHover.png" new file mode 100644 index 00000000..a225c679 Binary files /dev/null and "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/Textures/scrollbar_8pxHover.png" differ diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/Textures/scrollbar_8pxHover.png.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/Textures/scrollbar_8pxHover.png.meta" new file mode 100644 index 00000000..89cd1c71 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/Textures/scrollbar_8pxHover.png.meta" @@ -0,0 +1,112 @@ +fileFormatVersion: 2 +guid: 20a964b1a99084f27b7132c8b5927a9b +timeCreated: 1496923239 +licenseType: Free +TextureImporter: + fileIDToRecycleName: {} + externalObjects: {} + serializedVersion: 4 + mipmaps: + mipMapMode: 0 + enableMipMap: 0 + sRGBTexture: 0 + linearTexture: 0 + fadeOut: 0 + borderMipMap: 0 + mipMapsPreserveCoverage: 0 + alphaTestReferenceValue: 0.5 + mipMapFadeDistanceStart: 1 + mipMapFadeDistanceEnd: 3 + bumpmap: + convertToNormalMap: 0 + externalNormalMap: 0 + heightScale: 0.25 + normalMapFilter: 0 + isReadable: 0 + grayScaleToAlpha: 0 + generateCubemap: 6 + cubemapConvolution: 0 + seamlessCubemap: 0 + textureFormat: 1 + maxTextureSize: 2048 + textureSettings: + serializedVersion: 2 + filterMode: -1 + aniso: 1 + mipBias: -1 + wrapU: 1 + wrapV: 1 + wrapW: 1 + nPOTScale: 0 + lightmap: 0 + compressionQuality: 50 + spriteMode: 0 + spriteExtrude: 1 + spriteMeshType: 1 + alignment: 0 + spritePivot: {x: 0.5, y: 0.5} + spriteBorder: {x: 0, y: 0, z: 0, w: 0} + spritePixelsToUnits: 100 + alphaUsage: 1 + alphaIsTransparency: 1 + spriteTessellationDetail: -1 + textureType: 2 + textureShape: 1 + maxTextureSizeSet: 0 + compressionQualitySet: 0 + textureFormatSet: 0 + platformSettings: + - buildTarget: DefaultTexturePlatform + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 0 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + - buildTarget: Standalone + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 0 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + - buildTarget: iPhone + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 0 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + - buildTarget: tvOS + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 0 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + - buildTarget: WebGL + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 0 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + spriteSheet: + serializedVersion: 2 + sprites: [] + outline: [] + physicsShape: [] + spritePackingTag: + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/Textures/scrollbar_9px.png" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/Textures/scrollbar_9px.png" new file mode 100644 index 00000000..5ca458c7 Binary files /dev/null and "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/Textures/scrollbar_9px.png" differ diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/Textures/scrollbar_9px.png.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/Textures/scrollbar_9px.png.meta" new file mode 100644 index 00000000..fd93ac05 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/Textures/scrollbar_9px.png.meta" @@ -0,0 +1,112 @@ +fileFormatVersion: 2 +guid: 7e391d5c0e8f94062b7fb3b3cecede97 +timeCreated: 1496921036 +licenseType: Free +TextureImporter: + fileIDToRecycleName: {} + externalObjects: {} + serializedVersion: 4 + mipmaps: + mipMapMode: 0 + enableMipMap: 0 + sRGBTexture: 0 + linearTexture: 0 + fadeOut: 0 + borderMipMap: 0 + mipMapsPreserveCoverage: 0 + alphaTestReferenceValue: 0.5 + mipMapFadeDistanceStart: 1 + mipMapFadeDistanceEnd: 3 + bumpmap: + convertToNormalMap: 0 + externalNormalMap: 0 + heightScale: 0.25 + normalMapFilter: 0 + isReadable: 0 + grayScaleToAlpha: 0 + generateCubemap: 6 + cubemapConvolution: 0 + seamlessCubemap: 0 + textureFormat: 1 + maxTextureSize: 2048 + textureSettings: + serializedVersion: 2 + filterMode: -1 + aniso: 1 + mipBias: -1 + wrapU: 1 + wrapV: 1 + wrapW: 1 + nPOTScale: 0 + lightmap: 0 + compressionQuality: 50 + spriteMode: 0 + spriteExtrude: 1 + spriteMeshType: 1 + alignment: 0 + spritePivot: {x: 0.5, y: 0.5} + spriteBorder: {x: 0, y: 0, z: 0, w: 0} + spritePixelsToUnits: 100 + alphaUsage: 1 + alphaIsTransparency: 1 + spriteTessellationDetail: -1 + textureType: 2 + textureShape: 1 + maxTextureSizeSet: 0 + compressionQualitySet: 0 + textureFormatSet: 0 + platformSettings: + - buildTarget: DefaultTexturePlatform + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 0 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + - buildTarget: Standalone + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 0 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + - buildTarget: iPhone + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 0 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + - buildTarget: tvOS + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 0 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + - buildTarget: WebGL + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 0 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + spriteSheet: + serializedVersion: 2 + sprites: [] + outline: [] + physicsShape: [] + spritePackingTag: + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/Textures/scrollbar_9pxActive.png" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/Textures/scrollbar_9pxActive.png" new file mode 100644 index 00000000..bbb1ed76 Binary files /dev/null and "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/Textures/scrollbar_9pxActive.png" differ diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/Textures/scrollbar_9pxActive.png.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/Textures/scrollbar_9pxActive.png.meta" new file mode 100644 index 00000000..7febe375 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/Textures/scrollbar_9pxActive.png.meta" @@ -0,0 +1,112 @@ +fileFormatVersion: 2 +guid: 184182cb664574f40932a976e058ad76 +timeCreated: 1496922093 +licenseType: Free +TextureImporter: + fileIDToRecycleName: {} + externalObjects: {} + serializedVersion: 4 + mipmaps: + mipMapMode: 0 + enableMipMap: 0 + sRGBTexture: 0 + linearTexture: 0 + fadeOut: 0 + borderMipMap: 0 + mipMapsPreserveCoverage: 0 + alphaTestReferenceValue: 0.5 + mipMapFadeDistanceStart: 1 + mipMapFadeDistanceEnd: 3 + bumpmap: + convertToNormalMap: 0 + externalNormalMap: 0 + heightScale: 0.25 + normalMapFilter: 0 + isReadable: 0 + grayScaleToAlpha: 0 + generateCubemap: 6 + cubemapConvolution: 0 + seamlessCubemap: 0 + textureFormat: 1 + maxTextureSize: 2048 + textureSettings: + serializedVersion: 2 + filterMode: -1 + aniso: 1 + mipBias: -1 + wrapU: 1 + wrapV: 1 + wrapW: 1 + nPOTScale: 0 + lightmap: 0 + compressionQuality: 50 + spriteMode: 0 + spriteExtrude: 1 + spriteMeshType: 1 + alignment: 0 + spritePivot: {x: 0.5, y: 0.5} + spriteBorder: {x: 0, y: 0, z: 0, w: 0} + spritePixelsToUnits: 100 + alphaUsage: 1 + alphaIsTransparency: 1 + spriteTessellationDetail: -1 + textureType: 2 + textureShape: 1 + maxTextureSizeSet: 0 + compressionQualitySet: 0 + textureFormatSet: 0 + platformSettings: + - buildTarget: DefaultTexturePlatform + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 0 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + - buildTarget: Standalone + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 0 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + - buildTarget: iPhone + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 0 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + - buildTarget: tvOS + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 0 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + - buildTarget: WebGL + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 0 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + spriteSheet: + serializedVersion: 2 + sprites: [] + outline: [] + physicsShape: [] + spritePackingTag: + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/Textures/scrollbar_9pxHover.png" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/Textures/scrollbar_9pxHover.png" new file mode 100644 index 00000000..6e84289b Binary files /dev/null and "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/Textures/scrollbar_9pxHover.png" differ diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/Textures/scrollbar_9pxHover.png.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/Textures/scrollbar_9pxHover.png.meta" new file mode 100644 index 00000000..ce16fd7c --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/Textures/scrollbar_9pxHover.png.meta" @@ -0,0 +1,112 @@ +fileFormatVersion: 2 +guid: c0ac8a1db0a574d18a3a856d097434b9 +timeCreated: 1496922212 +licenseType: Free +TextureImporter: + fileIDToRecycleName: {} + externalObjects: {} + serializedVersion: 4 + mipmaps: + mipMapMode: 0 + enableMipMap: 0 + sRGBTexture: 0 + linearTexture: 0 + fadeOut: 0 + borderMipMap: 0 + mipMapsPreserveCoverage: 0 + alphaTestReferenceValue: 0.5 + mipMapFadeDistanceStart: 1 + mipMapFadeDistanceEnd: 3 + bumpmap: + convertToNormalMap: 0 + externalNormalMap: 0 + heightScale: 0.25 + normalMapFilter: 0 + isReadable: 0 + grayScaleToAlpha: 0 + generateCubemap: 6 + cubemapConvolution: 0 + seamlessCubemap: 0 + textureFormat: 1 + maxTextureSize: 2048 + textureSettings: + serializedVersion: 2 + filterMode: -1 + aniso: 1 + mipBias: -1 + wrapU: 1 + wrapV: 1 + wrapW: 1 + nPOTScale: 0 + lightmap: 0 + compressionQuality: 50 + spriteMode: 0 + spriteExtrude: 1 + spriteMeshType: 1 + alignment: 0 + spritePivot: {x: 0.5, y: 0.5} + spriteBorder: {x: 0, y: 0, z: 0, w: 0} + spritePixelsToUnits: 100 + alphaUsage: 1 + alphaIsTransparency: 1 + spriteTessellationDetail: -1 + textureType: 2 + textureShape: 1 + maxTextureSizeSet: 0 + compressionQualitySet: 0 + textureFormatSet: 0 + platformSettings: + - buildTarget: DefaultTexturePlatform + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 0 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + - buildTarget: Standalone + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 0 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + - buildTarget: iPhone + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 0 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + - buildTarget: tvOS + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 0 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + - buildTarget: WebGL + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 0 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + spriteSheet: + serializedVersion: 2 + sprites: [] + outline: [] + physicsShape: [] + spritePackingTag: + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/Textures/task_completed.png" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/Textures/task_completed.png" new file mode 100644 index 00000000..26a66fed Binary files /dev/null and "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/Textures/task_completed.png" differ diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/Textures/task_completed.png.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/Textures/task_completed.png.meta" new file mode 100644 index 00000000..c5d87290 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/Textures/task_completed.png.meta" @@ -0,0 +1,112 @@ +fileFormatVersion: 2 +guid: b19b6fc871da6471da2cc9653a65d1bf +timeCreated: 1495623468 +licenseType: Pro +TextureImporter: + fileIDToRecycleName: {} + externalObjects: {} + serializedVersion: 4 + mipmaps: + mipMapMode: 0 + enableMipMap: 0 + sRGBTexture: 0 + linearTexture: 0 + fadeOut: 0 + borderMipMap: 0 + mipMapsPreserveCoverage: 0 + alphaTestReferenceValue: 0.5 + mipMapFadeDistanceStart: 1 + mipMapFadeDistanceEnd: 3 + bumpmap: + convertToNormalMap: 0 + externalNormalMap: 0 + heightScale: 0.25 + normalMapFilter: 0 + isReadable: 0 + grayScaleToAlpha: 0 + generateCubemap: 6 + cubemapConvolution: 0 + seamlessCubemap: 0 + textureFormat: 1 + maxTextureSize: 2048 + textureSettings: + serializedVersion: 2 + filterMode: -1 + aniso: 1 + mipBias: -1 + wrapU: 1 + wrapV: 1 + wrapW: 1 + nPOTScale: 0 + lightmap: 0 + compressionQuality: 50 + spriteMode: 0 + spriteExtrude: 1 + spriteMeshType: 1 + alignment: 0 + spritePivot: {x: 0.5, y: 0.5} + spriteBorder: {x: 0, y: 0, z: 0, w: 0} + spritePixelsToUnits: 100 + alphaUsage: 1 + alphaIsTransparency: 1 + spriteTessellationDetail: -1 + textureType: 2 + textureShape: 1 + maxTextureSizeSet: 0 + compressionQualitySet: 0 + textureFormatSet: 0 + platformSettings: + - buildTarget: DefaultTexturePlatform + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 0 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + - buildTarget: Standalone + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 0 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + - buildTarget: iPhone + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 0 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + - buildTarget: tvOS + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 0 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + - buildTarget: WebGL + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 0 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + spriteSheet: + serializedVersion: 2 + sprites: [] + outline: [] + physicsShape: [] + spritePackingTag: + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/Textures/task_completed@2x.png" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/Textures/task_completed@2x.png" new file mode 100644 index 00000000..4be7da7b Binary files /dev/null and "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/Textures/task_completed@2x.png" differ diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/Textures/task_completed@2x.png.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/Textures/task_completed@2x.png.meta" new file mode 100644 index 00000000..f735845a --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/Textures/task_completed@2x.png.meta" @@ -0,0 +1,112 @@ +fileFormatVersion: 2 +guid: 910cbcc3464024d91bc528c324f2a7d2 +timeCreated: 1497008334 +licenseType: Free +TextureImporter: + fileIDToRecycleName: {} + externalObjects: {} + serializedVersion: 4 + mipmaps: + mipMapMode: 0 + enableMipMap: 0 + sRGBTexture: 0 + linearTexture: 0 + fadeOut: 0 + borderMipMap: 0 + mipMapsPreserveCoverage: 0 + alphaTestReferenceValue: 0.5 + mipMapFadeDistanceStart: 1 + mipMapFadeDistanceEnd: 3 + bumpmap: + convertToNormalMap: 0 + externalNormalMap: 0 + heightScale: 0.25 + normalMapFilter: 0 + isReadable: 0 + grayScaleToAlpha: 0 + generateCubemap: 6 + cubemapConvolution: 0 + seamlessCubemap: 0 + textureFormat: 1 + maxTextureSize: 2048 + textureSettings: + serializedVersion: 2 + filterMode: -1 + aniso: 1 + mipBias: -1 + wrapU: 1 + wrapV: 1 + wrapW: 1 + nPOTScale: 0 + lightmap: 0 + compressionQuality: 50 + spriteMode: 0 + spriteExtrude: 1 + spriteMeshType: 1 + alignment: 0 + spritePivot: {x: 0.5, y: 0.5} + spriteBorder: {x: 0, y: 0, z: 0, w: 0} + spritePixelsToUnits: 100 + alphaUsage: 1 + alphaIsTransparency: 1 + spriteTessellationDetail: -1 + textureType: 2 + textureShape: 1 + maxTextureSizeSet: 0 + compressionQualitySet: 0 + textureFormatSet: 0 + platformSettings: + - buildTarget: DefaultTexturePlatform + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 0 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + - buildTarget: Standalone + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 0 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + - buildTarget: iPhone + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 0 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + - buildTarget: tvOS + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 0 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + - buildTarget: WebGL + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 0 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + spriteSheet: + serializedVersion: 2 + sprites: [] + outline: [] + physicsShape: [] + spritePackingTag: + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/Textures/task_to_do.png" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/Textures/task_to_do.png" new file mode 100644 index 00000000..8c22f3be Binary files /dev/null and "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/Textures/task_to_do.png" differ diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/Textures/task_to_do.png.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/Textures/task_to_do.png.meta" new file mode 100644 index 00000000..43e17b61 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/Textures/task_to_do.png.meta" @@ -0,0 +1,112 @@ +fileFormatVersion: 2 +guid: e1c2bb1a6ca4845b3a7abe1a43a79ba2 +timeCreated: 1495623468 +licenseType: Pro +TextureImporter: + fileIDToRecycleName: {} + externalObjects: {} + serializedVersion: 4 + mipmaps: + mipMapMode: 0 + enableMipMap: 0 + sRGBTexture: 0 + linearTexture: 0 + fadeOut: 0 + borderMipMap: 0 + mipMapsPreserveCoverage: 0 + alphaTestReferenceValue: 0.5 + mipMapFadeDistanceStart: 1 + mipMapFadeDistanceEnd: 3 + bumpmap: + convertToNormalMap: 0 + externalNormalMap: 0 + heightScale: 0.25 + normalMapFilter: 0 + isReadable: 0 + grayScaleToAlpha: 0 + generateCubemap: 6 + cubemapConvolution: 0 + seamlessCubemap: 0 + textureFormat: 1 + maxTextureSize: 2048 + textureSettings: + serializedVersion: 2 + filterMode: -1 + aniso: 1 + mipBias: -1 + wrapU: 1 + wrapV: 1 + wrapW: 1 + nPOTScale: 0 + lightmap: 0 + compressionQuality: 50 + spriteMode: 0 + spriteExtrude: 1 + spriteMeshType: 1 + alignment: 0 + spritePivot: {x: 0.5, y: 0.5} + spriteBorder: {x: 0, y: 0, z: 0, w: 0} + spritePixelsToUnits: 100 + alphaUsage: 1 + alphaIsTransparency: 1 + spriteTessellationDetail: -1 + textureType: 2 + textureShape: 1 + maxTextureSizeSet: 0 + compressionQualitySet: 0 + textureFormatSet: 0 + platformSettings: + - buildTarget: DefaultTexturePlatform + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 0 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + - buildTarget: Standalone + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 0 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + - buildTarget: iPhone + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 0 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + - buildTarget: tvOS + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 0 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + - buildTarget: WebGL + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 0 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + spriteSheet: + serializedVersion: 2 + sprites: [] + outline: [] + physicsShape: [] + spritePackingTag: + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/Textures/task_to_do@2x.png" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/Textures/task_to_do@2x.png" new file mode 100644 index 00000000..90567231 Binary files /dev/null and "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/Textures/task_to_do@2x.png" differ diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/Textures/task_to_do@2x.png.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/Textures/task_to_do@2x.png.meta" new file mode 100644 index 00000000..2a034f9a --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/Textures/task_to_do@2x.png.meta" @@ -0,0 +1,112 @@ +fileFormatVersion: 2 +guid: 7c06a22ff031f4c14b4f804202115882 +timeCreated: 1497008334 +licenseType: Free +TextureImporter: + fileIDToRecycleName: {} + externalObjects: {} + serializedVersion: 4 + mipmaps: + mipMapMode: 0 + enableMipMap: 0 + sRGBTexture: 0 + linearTexture: 0 + fadeOut: 0 + borderMipMap: 0 + mipMapsPreserveCoverage: 0 + alphaTestReferenceValue: 0.5 + mipMapFadeDistanceStart: 1 + mipMapFadeDistanceEnd: 3 + bumpmap: + convertToNormalMap: 0 + externalNormalMap: 0 + heightScale: 0.25 + normalMapFilter: 0 + isReadable: 0 + grayScaleToAlpha: 0 + generateCubemap: 6 + cubemapConvolution: 0 + seamlessCubemap: 0 + textureFormat: 1 + maxTextureSize: 2048 + textureSettings: + serializedVersion: 2 + filterMode: -1 + aniso: 1 + mipBias: -1 + wrapU: 1 + wrapV: 1 + wrapW: 1 + nPOTScale: 0 + lightmap: 0 + compressionQuality: 50 + spriteMode: 0 + spriteExtrude: 1 + spriteMeshType: 1 + alignment: 0 + spritePivot: {x: 0.5, y: 0.5} + spriteBorder: {x: 0, y: 0, z: 0, w: 0} + spritePixelsToUnits: 100 + alphaUsage: 1 + alphaIsTransparency: 1 + spriteTessellationDetail: -1 + textureType: 2 + textureShape: 1 + maxTextureSizeSet: 0 + compressionQualitySet: 0 + textureFormatSet: 0 + platformSettings: + - buildTarget: DefaultTexturePlatform + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 0 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + - buildTarget: Standalone + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 0 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + - buildTarget: iPhone + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 0 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + - buildTarget: tvOS + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 0 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + - buildTarget: WebGL + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 0 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + spriteSheet: + serializedVersion: 2 + sprites: [] + outline: [] + physicsShape: [] + spritePackingTag: + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/Tutorial Headers.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/Tutorial Headers.meta" new file mode 100644 index 00000000..d68828dd --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/Tutorial Headers.meta" @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 0e85d491695b04fa29e944d5d49be5a8 +folderAsset: yes +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/Tutorial Headers/header-color.png" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/Tutorial Headers/header-color.png" new file mode 100644 index 00000000..ed630497 Binary files /dev/null and "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/Tutorial Headers/header-color.png" differ diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/Tutorial Headers/header-color.png.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/Tutorial Headers/header-color.png.meta" new file mode 100644 index 00000000..4751e5ef --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/Tutorial Headers/header-color.png.meta" @@ -0,0 +1,110 @@ +fileFormatVersion: 2 +guid: 49f7c306ee926487bb4f10455ebea8c8 +TextureImporter: + fileIDToRecycleName: {} + externalObjects: {} + serializedVersion: 9 + mipmaps: + mipMapMode: 0 + enableMipMap: 0 + sRGBTexture: 1 + linearTexture: 0 + fadeOut: 0 + borderMipMap: 0 + mipMapsPreserveCoverage: 0 + alphaTestReferenceValue: 0.5 + mipMapFadeDistanceStart: 1 + mipMapFadeDistanceEnd: 3 + bumpmap: + convertToNormalMap: 0 + externalNormalMap: 0 + heightScale: 0.25 + normalMapFilter: 0 + isReadable: 0 + streamingMipmaps: 0 + streamingMipmapsPriority: 0 + grayScaleToAlpha: 0 + generateCubemap: 6 + cubemapConvolution: 0 + seamlessCubemap: 0 + textureFormat: 1 + maxTextureSize: 2048 + textureSettings: + serializedVersion: 2 + filterMode: -1 + aniso: 1 + mipBias: -100 + wrapU: 1 + wrapV: 1 + wrapW: -1 + nPOTScale: 0 + lightmap: 0 + compressionQuality: 50 + spriteMode: 0 + spriteExtrude: 1 + spriteMeshType: 1 + alignment: 0 + spritePivot: {x: 0.5, y: 0.5} + spritePixelsToUnits: 100 + spriteBorder: {x: 0, y: 0, z: 0, w: 0} + spriteGenerateFallbackPhysicsShape: 1 + alphaUsage: 1 + alphaIsTransparency: 1 + spriteTessellationDetail: -1 + textureType: 2 + textureShape: 1 + singleChannelComponent: 0 + maxTextureSizeSet: 0 + compressionQualitySet: 0 + textureFormatSet: 0 + platformSettings: + - serializedVersion: 2 + buildTarget: DefaultTexturePlatform + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Standalone + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: 4 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: WebGL + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 0 + spriteSheet: + serializedVersion: 2 + sprites: [] + outline: [] + physicsShape: [] + bones: [] + spriteID: + vertices: [] + indices: + edges: [] + weights: [] + spritePackingTag: + pSDRemoveMatte: 0 + pSDShowRemoveMatteOption: 0 + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/Tutorial Headers/header-completed.png" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/Tutorial Headers/header-completed.png" new file mode 100644 index 00000000..56d49025 Binary files /dev/null and "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/Tutorial Headers/header-completed.png" differ diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/Tutorial Headers/header-completed.png.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/Tutorial Headers/header-completed.png.meta" new file mode 100644 index 00000000..a0970954 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/Tutorial Headers/header-completed.png.meta" @@ -0,0 +1,110 @@ +fileFormatVersion: 2 +guid: cf2b88c8b41ea4e42ba6e17726c32b87 +TextureImporter: + fileIDToRecycleName: {} + externalObjects: {} + serializedVersion: 9 + mipmaps: + mipMapMode: 0 + enableMipMap: 0 + sRGBTexture: 1 + linearTexture: 0 + fadeOut: 0 + borderMipMap: 0 + mipMapsPreserveCoverage: 0 + alphaTestReferenceValue: 0.5 + mipMapFadeDistanceStart: 1 + mipMapFadeDistanceEnd: 3 + bumpmap: + convertToNormalMap: 0 + externalNormalMap: 0 + heightScale: 0.25 + normalMapFilter: 0 + isReadable: 0 + streamingMipmaps: 0 + streamingMipmapsPriority: 0 + grayScaleToAlpha: 0 + generateCubemap: 6 + cubemapConvolution: 0 + seamlessCubemap: 0 + textureFormat: 1 + maxTextureSize: 2048 + textureSettings: + serializedVersion: 2 + filterMode: -1 + aniso: 1 + mipBias: -100 + wrapU: 1 + wrapV: 1 + wrapW: -1 + nPOTScale: 0 + lightmap: 0 + compressionQuality: 50 + spriteMode: 0 + spriteExtrude: 1 + spriteMeshType: 1 + alignment: 0 + spritePivot: {x: 0.5, y: 0.5} + spritePixelsToUnits: 100 + spriteBorder: {x: 0, y: 0, z: 0, w: 0} + spriteGenerateFallbackPhysicsShape: 1 + alphaUsage: 1 + alphaIsTransparency: 1 + spriteTessellationDetail: -1 + textureType: 2 + textureShape: 1 + singleChannelComponent: 0 + maxTextureSizeSet: 0 + compressionQualitySet: 0 + textureFormatSet: 0 + platformSettings: + - serializedVersion: 2 + buildTarget: DefaultTexturePlatform + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Standalone + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: 4 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: WebGL + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 0 + spriteSheet: + serializedVersion: 2 + sprites: [] + outline: [] + physicsShape: [] + bones: [] + spriteID: + vertices: [] + indices: + edges: [] + weights: [] + spritePackingTag: + pSDRemoveMatte: 0 + pSDShowRemoveMatteOption: 0 + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/Tutorial Headers/header-play.png" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/Tutorial Headers/header-play.png" new file mode 100644 index 00000000..12976dfa Binary files /dev/null and "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/Tutorial Headers/header-play.png" differ diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/Tutorial Headers/header-play.png.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/Tutorial Headers/header-play.png.meta" new file mode 100644 index 00000000..16468ac1 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/Tutorial Headers/header-play.png.meta" @@ -0,0 +1,110 @@ +fileFormatVersion: 2 +guid: d4dab764bb81e44bd9443cdee2776015 +TextureImporter: + fileIDToRecycleName: {} + externalObjects: {} + serializedVersion: 9 + mipmaps: + mipMapMode: 0 + enableMipMap: 0 + sRGBTexture: 1 + linearTexture: 0 + fadeOut: 0 + borderMipMap: 0 + mipMapsPreserveCoverage: 0 + alphaTestReferenceValue: 0.5 + mipMapFadeDistanceStart: 1 + mipMapFadeDistanceEnd: 3 + bumpmap: + convertToNormalMap: 0 + externalNormalMap: 0 + heightScale: 0.25 + normalMapFilter: 0 + isReadable: 0 + streamingMipmaps: 0 + streamingMipmapsPriority: 0 + grayScaleToAlpha: 0 + generateCubemap: 6 + cubemapConvolution: 0 + seamlessCubemap: 0 + textureFormat: 1 + maxTextureSize: 2048 + textureSettings: + serializedVersion: 2 + filterMode: -1 + aniso: 1 + mipBias: -100 + wrapU: 1 + wrapV: 1 + wrapW: -1 + nPOTScale: 0 + lightmap: 0 + compressionQuality: 50 + spriteMode: 0 + spriteExtrude: 1 + spriteMeshType: 1 + alignment: 0 + spritePivot: {x: 0.5, y: 0.5} + spritePixelsToUnits: 100 + spriteBorder: {x: 0, y: 0, z: 0, w: 0} + spriteGenerateFallbackPhysicsShape: 1 + alphaUsage: 1 + alphaIsTransparency: 1 + spriteTessellationDetail: -1 + textureType: 2 + textureShape: 1 + singleChannelComponent: 0 + maxTextureSizeSet: 0 + compressionQualitySet: 0 + textureFormatSet: 0 + platformSettings: + - serializedVersion: 2 + buildTarget: DefaultTexturePlatform + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Standalone + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: 4 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: WebGL + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 0 + spriteSheet: + serializedVersion: 2 + sprites: [] + outline: [] + physicsShape: [] + bones: [] + spriteID: + vertices: [] + indices: + edges: [] + weights: [] + spritePackingTag: + pSDRemoveMatte: 0 + pSDShowRemoveMatteOption: 0 + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/Tutorial Headers/header-prefab.png" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/Tutorial Headers/header-prefab.png" new file mode 100644 index 00000000..7dc3f3fe Binary files /dev/null and "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/Tutorial Headers/header-prefab.png" differ diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/Tutorial Headers/header-prefab.png.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/Tutorial Headers/header-prefab.png.meta" new file mode 100644 index 00000000..a64b3b7a --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/Tutorial Headers/header-prefab.png.meta" @@ -0,0 +1,110 @@ +fileFormatVersion: 2 +guid: 2ca2357d648eb412d8129fa039b986fe +TextureImporter: + fileIDToRecycleName: {} + externalObjects: {} + serializedVersion: 9 + mipmaps: + mipMapMode: 0 + enableMipMap: 0 + sRGBTexture: 1 + linearTexture: 0 + fadeOut: 0 + borderMipMap: 0 + mipMapsPreserveCoverage: 0 + alphaTestReferenceValue: 0.5 + mipMapFadeDistanceStart: 1 + mipMapFadeDistanceEnd: 3 + bumpmap: + convertToNormalMap: 0 + externalNormalMap: 0 + heightScale: 0.25 + normalMapFilter: 0 + isReadable: 0 + streamingMipmaps: 0 + streamingMipmapsPriority: 0 + grayScaleToAlpha: 0 + generateCubemap: 6 + cubemapConvolution: 0 + seamlessCubemap: 0 + textureFormat: 1 + maxTextureSize: 2048 + textureSettings: + serializedVersion: 2 + filterMode: -1 + aniso: 1 + mipBias: -100 + wrapU: 1 + wrapV: 1 + wrapW: -1 + nPOTScale: 0 + lightmap: 0 + compressionQuality: 50 + spriteMode: 0 + spriteExtrude: 1 + spriteMeshType: 1 + alignment: 0 + spritePivot: {x: 0.5, y: 0.5} + spritePixelsToUnits: 100 + spriteBorder: {x: 0, y: 0, z: 0, w: 0} + spriteGenerateFallbackPhysicsShape: 1 + alphaUsage: 1 + alphaIsTransparency: 1 + spriteTessellationDetail: -1 + textureType: 2 + textureShape: 1 + singleChannelComponent: 0 + maxTextureSizeSet: 0 + compressionQualitySet: 0 + textureFormatSet: 0 + platformSettings: + - serializedVersion: 2 + buildTarget: DefaultTexturePlatform + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Standalone + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: 4 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: WebGL + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 0 + spriteSheet: + serializedVersion: 2 + sprites: [] + outline: [] + physicsShape: [] + bones: [] + spriteID: + vertices: [] + indices: + edges: [] + weights: [] + spritePackingTag: + pSDRemoveMatte: 0 + pSDShowRemoveMatteOption: 0 + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/Tutorial Headers/header-ui.png" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/Tutorial Headers/header-ui.png" new file mode 100644 index 00000000..757e2f66 Binary files /dev/null and "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/Tutorial Headers/header-ui.png" differ diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/Tutorial Headers/header-ui.png.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/Tutorial Headers/header-ui.png.meta" new file mode 100644 index 00000000..711d0e13 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/Tutorial Headers/header-ui.png.meta" @@ -0,0 +1,110 @@ +fileFormatVersion: 2 +guid: 59ee9782ecd754efa80a388d1782d503 +TextureImporter: + fileIDToRecycleName: {} + externalObjects: {} + serializedVersion: 9 + mipmaps: + mipMapMode: 0 + enableMipMap: 0 + sRGBTexture: 1 + linearTexture: 0 + fadeOut: 0 + borderMipMap: 0 + mipMapsPreserveCoverage: 0 + alphaTestReferenceValue: 0.5 + mipMapFadeDistanceStart: 1 + mipMapFadeDistanceEnd: 3 + bumpmap: + convertToNormalMap: 0 + externalNormalMap: 0 + heightScale: 0.25 + normalMapFilter: 0 + isReadable: 0 + streamingMipmaps: 0 + streamingMipmapsPriority: 0 + grayScaleToAlpha: 0 + generateCubemap: 6 + cubemapConvolution: 0 + seamlessCubemap: 0 + textureFormat: 1 + maxTextureSize: 2048 + textureSettings: + serializedVersion: 2 + filterMode: -1 + aniso: 1 + mipBias: -100 + wrapU: 1 + wrapV: 1 + wrapW: -1 + nPOTScale: 0 + lightmap: 0 + compressionQuality: 50 + spriteMode: 0 + spriteExtrude: 1 + spriteMeshType: 1 + alignment: 0 + spritePivot: {x: 0.5, y: 0.5} + spritePixelsToUnits: 100 + spriteBorder: {x: 0, y: 0, z: 0, w: 0} + spriteGenerateFallbackPhysicsShape: 1 + alphaUsage: 1 + alphaIsTransparency: 1 + spriteTessellationDetail: -1 + textureType: 2 + textureShape: 1 + singleChannelComponent: 0 + maxTextureSizeSet: 0 + compressionQualitySet: 0 + textureFormatSet: 0 + platformSettings: + - serializedVersion: 2 + buildTarget: DefaultTexturePlatform + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Standalone + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: 4 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: WebGL + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 0 + spriteSheet: + serializedVersion: 2 + sprites: [] + outline: [] + physicsShape: [] + bones: [] + spriteID: + vertices: [] + indices: + edges: [] + weights: [] + spritePackingTag: + pSDRemoveMatte: 0 + pSDShowRemoveMatteOption: 0 + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/Tutorial Headers/header-www.png" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/Tutorial Headers/header-www.png" new file mode 100644 index 00000000..800aaf56 Binary files /dev/null and "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/Tutorial Headers/header-www.png" differ diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/Tutorial Headers/header-www.png.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/Tutorial Headers/header-www.png.meta" new file mode 100644 index 00000000..e349485f --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/Tutorial Headers/header-www.png.meta" @@ -0,0 +1,110 @@ +fileFormatVersion: 2 +guid: 7047302abcab8496488f93b3f766350d +TextureImporter: + fileIDToRecycleName: {} + externalObjects: {} + serializedVersion: 9 + mipmaps: + mipMapMode: 0 + enableMipMap: 0 + sRGBTexture: 1 + linearTexture: 0 + fadeOut: 0 + borderMipMap: 0 + mipMapsPreserveCoverage: 0 + alphaTestReferenceValue: 0.5 + mipMapFadeDistanceStart: 1 + mipMapFadeDistanceEnd: 3 + bumpmap: + convertToNormalMap: 0 + externalNormalMap: 0 + heightScale: 0.25 + normalMapFilter: 0 + isReadable: 0 + streamingMipmaps: 0 + streamingMipmapsPriority: 0 + grayScaleToAlpha: 0 + generateCubemap: 6 + cubemapConvolution: 0 + seamlessCubemap: 0 + textureFormat: 1 + maxTextureSize: 2048 + textureSettings: + serializedVersion: 2 + filterMode: -1 + aniso: 1 + mipBias: -100 + wrapU: 1 + wrapV: 1 + wrapW: -1 + nPOTScale: 0 + lightmap: 0 + compressionQuality: 50 + spriteMode: 0 + spriteExtrude: 1 + spriteMeshType: 1 + alignment: 0 + spritePivot: {x: 0.5, y: 0.5} + spritePixelsToUnits: 100 + spriteBorder: {x: 0, y: 0, z: 0, w: 0} + spriteGenerateFallbackPhysicsShape: 1 + alphaUsage: 1 + alphaIsTransparency: 1 + spriteTessellationDetail: -1 + textureType: 2 + textureShape: 1 + singleChannelComponent: 0 + maxTextureSizeSet: 0 + compressionQualitySet: 0 + textureFormatSet: 0 + platformSettings: + - serializedVersion: 2 + buildTarget: DefaultTexturePlatform + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Standalone + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: 4 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 1 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: WebGL + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 0 + spriteSheet: + serializedVersion: 2 + sprites: [] + outline: [] + physicsShape: [] + bones: [] + spriteID: + vertices: [] + indices: + edges: [] + weights: [] + spritePackingTag: + pSDRemoveMatte: 0 + pSDShowRemoveMatteOption: 0 + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/Tutorial Icons.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/Tutorial Icons.meta" new file mode 100644 index 00000000..bba1cee5 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/Tutorial Icons.meta" @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 7d592c6534c5b4f6c9295565e0ace5a5 +folderAsset: yes +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/Tutorial Icons/icon-color-completed.png" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/Tutorial Icons/icon-color-completed.png" new file mode 100644 index 00000000..91e8e052 Binary files /dev/null and "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/Tutorial Icons/icon-color-completed.png" differ diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/Tutorial Icons/icon-color-completed.png.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/Tutorial Icons/icon-color-completed.png.meta" new file mode 100644 index 00000000..3f40bbf9 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/Tutorial Icons/icon-color-completed.png.meta" @@ -0,0 +1,110 @@ +fileFormatVersion: 2 +guid: 6390f201c83c6463198f231e70f96148 +TextureImporter: + fileIDToRecycleName: {} + externalObjects: {} + serializedVersion: 9 + mipmaps: + mipMapMode: 0 + enableMipMap: 0 + sRGBTexture: 1 + linearTexture: 0 + fadeOut: 0 + borderMipMap: 0 + mipMapsPreserveCoverage: 0 + alphaTestReferenceValue: 0.5 + mipMapFadeDistanceStart: 1 + mipMapFadeDistanceEnd: 3 + bumpmap: + convertToNormalMap: 0 + externalNormalMap: 0 + heightScale: 0.25 + normalMapFilter: 0 + isReadable: 0 + streamingMipmaps: 0 + streamingMipmapsPriority: 0 + grayScaleToAlpha: 0 + generateCubemap: 6 + cubemapConvolution: 0 + seamlessCubemap: 0 + textureFormat: 1 + maxTextureSize: 2048 + textureSettings: + serializedVersion: 2 + filterMode: -1 + aniso: 1 + mipBias: -100 + wrapU: 1 + wrapV: 1 + wrapW: -1 + nPOTScale: 0 + lightmap: 0 + compressionQuality: 50 + spriteMode: 0 + spriteExtrude: 1 + spriteMeshType: 1 + alignment: 0 + spritePivot: {x: 0.5, y: 0.5} + spritePixelsToUnits: 100 + spriteBorder: {x: 0, y: 0, z: 0, w: 0} + spriteGenerateFallbackPhysicsShape: 1 + alphaUsage: 1 + alphaIsTransparency: 1 + spriteTessellationDetail: -1 + textureType: 2 + textureShape: 1 + singleChannelComponent: 0 + maxTextureSizeSet: 0 + compressionQualitySet: 0 + textureFormatSet: 0 + platformSettings: + - serializedVersion: 2 + buildTarget: DefaultTexturePlatform + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Standalone + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: WebGL + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 0 + spriteSheet: + serializedVersion: 2 + sprites: [] + outline: [] + physicsShape: [] + bones: [] + spriteID: + vertices: [] + indices: + edges: [] + weights: [] + spritePackingTag: + pSDRemoveMatte: 0 + pSDShowRemoveMatteOption: 0 + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/Tutorial Icons/icon-color.png" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/Tutorial Icons/icon-color.png" new file mode 100644 index 00000000..fd81affd Binary files /dev/null and "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/Tutorial Icons/icon-color.png" differ diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/Tutorial Icons/icon-color.png.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/Tutorial Icons/icon-color.png.meta" new file mode 100644 index 00000000..6b76dc71 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/Tutorial Icons/icon-color.png.meta" @@ -0,0 +1,110 @@ +fileFormatVersion: 2 +guid: 02e1aaacc31014d1f8d4ed2397a5b4c1 +TextureImporter: + fileIDToRecycleName: {} + externalObjects: {} + serializedVersion: 9 + mipmaps: + mipMapMode: 0 + enableMipMap: 0 + sRGBTexture: 1 + linearTexture: 0 + fadeOut: 0 + borderMipMap: 0 + mipMapsPreserveCoverage: 0 + alphaTestReferenceValue: 0.5 + mipMapFadeDistanceStart: 1 + mipMapFadeDistanceEnd: 3 + bumpmap: + convertToNormalMap: 0 + externalNormalMap: 0 + heightScale: 0.25 + normalMapFilter: 0 + isReadable: 0 + streamingMipmaps: 0 + streamingMipmapsPriority: 0 + grayScaleToAlpha: 0 + generateCubemap: 6 + cubemapConvolution: 0 + seamlessCubemap: 0 + textureFormat: 1 + maxTextureSize: 2048 + textureSettings: + serializedVersion: 2 + filterMode: -1 + aniso: 1 + mipBias: -100 + wrapU: 1 + wrapV: 1 + wrapW: -1 + nPOTScale: 0 + lightmap: 0 + compressionQuality: 50 + spriteMode: 0 + spriteExtrude: 1 + spriteMeshType: 1 + alignment: 0 + spritePivot: {x: 0.5, y: 0.5} + spritePixelsToUnits: 100 + spriteBorder: {x: 0, y: 0, z: 0, w: 0} + spriteGenerateFallbackPhysicsShape: 1 + alphaUsage: 1 + alphaIsTransparency: 1 + spriteTessellationDetail: -1 + textureType: 2 + textureShape: 1 + singleChannelComponent: 0 + maxTextureSizeSet: 0 + compressionQualitySet: 0 + textureFormatSet: 0 + platformSettings: + - serializedVersion: 2 + buildTarget: DefaultTexturePlatform + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Standalone + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: WebGL + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 0 + spriteSheet: + serializedVersion: 2 + sprites: [] + outline: [] + physicsShape: [] + bones: [] + spriteID: + vertices: [] + indices: + edges: [] + weights: [] + spritePackingTag: + pSDRemoveMatte: 0 + pSDShowRemoveMatteOption: 0 + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/Tutorial Icons/icon-link.png" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/Tutorial Icons/icon-link.png" new file mode 100644 index 00000000..980ffb58 Binary files /dev/null and "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/Tutorial Icons/icon-link.png" differ diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/Tutorial Icons/icon-link.png.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/Tutorial Icons/icon-link.png.meta" new file mode 100644 index 00000000..7f3bc87e --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/Tutorial Icons/icon-link.png.meta" @@ -0,0 +1,110 @@ +fileFormatVersion: 2 +guid: c418c9a48b9984a8f9e89a7b0f6bdf9e +TextureImporter: + fileIDToRecycleName: {} + externalObjects: {} + serializedVersion: 9 + mipmaps: + mipMapMode: 0 + enableMipMap: 0 + sRGBTexture: 1 + linearTexture: 0 + fadeOut: 0 + borderMipMap: 0 + mipMapsPreserveCoverage: 0 + alphaTestReferenceValue: 0.5 + mipMapFadeDistanceStart: 1 + mipMapFadeDistanceEnd: 3 + bumpmap: + convertToNormalMap: 0 + externalNormalMap: 0 + heightScale: 0.25 + normalMapFilter: 0 + isReadable: 0 + streamingMipmaps: 0 + streamingMipmapsPriority: 0 + grayScaleToAlpha: 0 + generateCubemap: 6 + cubemapConvolution: 0 + seamlessCubemap: 0 + textureFormat: 1 + maxTextureSize: 2048 + textureSettings: + serializedVersion: 2 + filterMode: -1 + aniso: 1 + mipBias: -100 + wrapU: 1 + wrapV: 1 + wrapW: -1 + nPOTScale: 0 + lightmap: 0 + compressionQuality: 50 + spriteMode: 0 + spriteExtrude: 1 + spriteMeshType: 1 + alignment: 0 + spritePivot: {x: 0.5, y: 0.5} + spritePixelsToUnits: 100 + spriteBorder: {x: 0, y: 0, z: 0, w: 0} + spriteGenerateFallbackPhysicsShape: 1 + alphaUsage: 1 + alphaIsTransparency: 1 + spriteTessellationDetail: -1 + textureType: 2 + textureShape: 1 + singleChannelComponent: 0 + maxTextureSizeSet: 0 + compressionQualitySet: 0 + textureFormatSet: 0 + platformSettings: + - serializedVersion: 2 + buildTarget: DefaultTexturePlatform + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Standalone + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: WebGL + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 0 + spriteSheet: + serializedVersion: 2 + sprites: [] + outline: [] + physicsShape: [] + bones: [] + spriteID: + vertices: [] + indices: + edges: [] + weights: [] + spritePackingTag: + pSDRemoveMatte: 0 + pSDShowRemoveMatteOption: 0 + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/Tutorial Icons/icon-play-completed.png" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/Tutorial Icons/icon-play-completed.png" new file mode 100644 index 00000000..afae84a8 Binary files /dev/null and "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/Tutorial Icons/icon-play-completed.png" differ diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/Tutorial Icons/icon-play-completed.png.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/Tutorial Icons/icon-play-completed.png.meta" new file mode 100644 index 00000000..cebecf44 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/Tutorial Icons/icon-play-completed.png.meta" @@ -0,0 +1,110 @@ +fileFormatVersion: 2 +guid: 11a8e34ea358c4b8885176f936317cc6 +TextureImporter: + fileIDToRecycleName: {} + externalObjects: {} + serializedVersion: 9 + mipmaps: + mipMapMode: 0 + enableMipMap: 0 + sRGBTexture: 1 + linearTexture: 0 + fadeOut: 0 + borderMipMap: 0 + mipMapsPreserveCoverage: 0 + alphaTestReferenceValue: 0.5 + mipMapFadeDistanceStart: 1 + mipMapFadeDistanceEnd: 3 + bumpmap: + convertToNormalMap: 0 + externalNormalMap: 0 + heightScale: 0.25 + normalMapFilter: 0 + isReadable: 0 + streamingMipmaps: 0 + streamingMipmapsPriority: 0 + grayScaleToAlpha: 0 + generateCubemap: 6 + cubemapConvolution: 0 + seamlessCubemap: 0 + textureFormat: 1 + maxTextureSize: 2048 + textureSettings: + serializedVersion: 2 + filterMode: -1 + aniso: 1 + mipBias: -100 + wrapU: 1 + wrapV: 1 + wrapW: -1 + nPOTScale: 0 + lightmap: 0 + compressionQuality: 50 + spriteMode: 0 + spriteExtrude: 1 + spriteMeshType: 1 + alignment: 0 + spritePivot: {x: 0.5, y: 0.5} + spritePixelsToUnits: 100 + spriteBorder: {x: 0, y: 0, z: 0, w: 0} + spriteGenerateFallbackPhysicsShape: 1 + alphaUsage: 1 + alphaIsTransparency: 1 + spriteTessellationDetail: -1 + textureType: 2 + textureShape: 1 + singleChannelComponent: 0 + maxTextureSizeSet: 0 + compressionQualitySet: 0 + textureFormatSet: 0 + platformSettings: + - serializedVersion: 2 + buildTarget: DefaultTexturePlatform + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Standalone + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: WebGL + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 0 + spriteSheet: + serializedVersion: 2 + sprites: [] + outline: [] + physicsShape: [] + bones: [] + spriteID: + vertices: [] + indices: + edges: [] + weights: [] + spritePackingTag: + pSDRemoveMatte: 0 + pSDShowRemoveMatteOption: 0 + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/Tutorial Icons/icon-play.png" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/Tutorial Icons/icon-play.png" new file mode 100644 index 00000000..42484c0a Binary files /dev/null and "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/Tutorial Icons/icon-play.png" differ diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/Tutorial Icons/icon-play.png.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/Tutorial Icons/icon-play.png.meta" new file mode 100644 index 00000000..8001e20c --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/Tutorial Icons/icon-play.png.meta" @@ -0,0 +1,110 @@ +fileFormatVersion: 2 +guid: dea29fde4b88b4c0e9d8370e83020c06 +TextureImporter: + fileIDToRecycleName: {} + externalObjects: {} + serializedVersion: 9 + mipmaps: + mipMapMode: 0 + enableMipMap: 0 + sRGBTexture: 1 + linearTexture: 0 + fadeOut: 0 + borderMipMap: 0 + mipMapsPreserveCoverage: 0 + alphaTestReferenceValue: 0.5 + mipMapFadeDistanceStart: 1 + mipMapFadeDistanceEnd: 3 + bumpmap: + convertToNormalMap: 0 + externalNormalMap: 0 + heightScale: 0.25 + normalMapFilter: 0 + isReadable: 0 + streamingMipmaps: 0 + streamingMipmapsPriority: 0 + grayScaleToAlpha: 0 + generateCubemap: 6 + cubemapConvolution: 0 + seamlessCubemap: 0 + textureFormat: 1 + maxTextureSize: 2048 + textureSettings: + serializedVersion: 2 + filterMode: -1 + aniso: 1 + mipBias: -100 + wrapU: 1 + wrapV: 1 + wrapW: -1 + nPOTScale: 0 + lightmap: 0 + compressionQuality: 50 + spriteMode: 0 + spriteExtrude: 1 + spriteMeshType: 1 + alignment: 0 + spritePivot: {x: 0.5, y: 0.5} + spritePixelsToUnits: 100 + spriteBorder: {x: 0, y: 0, z: 0, w: 0} + spriteGenerateFallbackPhysicsShape: 1 + alphaUsage: 1 + alphaIsTransparency: 1 + spriteTessellationDetail: -1 + textureType: 2 + textureShape: 1 + singleChannelComponent: 0 + maxTextureSizeSet: 0 + compressionQualitySet: 0 + textureFormatSet: 0 + platformSettings: + - serializedVersion: 2 + buildTarget: DefaultTexturePlatform + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Standalone + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: WebGL + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 0 + spriteSheet: + serializedVersion: 2 + sprites: [] + outline: [] + physicsShape: [] + bones: [] + spriteID: + vertices: [] + indices: + edges: [] + weights: [] + spritePackingTag: + pSDRemoveMatte: 0 + pSDShowRemoveMatteOption: 0 + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/Tutorial Icons/icon-prefab-completed.png" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/Tutorial Icons/icon-prefab-completed.png" new file mode 100644 index 00000000..5b9af6af Binary files /dev/null and "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/Tutorial Icons/icon-prefab-completed.png" differ diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/Tutorial Icons/icon-prefab-completed.png.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/Tutorial Icons/icon-prefab-completed.png.meta" new file mode 100644 index 00000000..d279bb73 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/Tutorial Icons/icon-prefab-completed.png.meta" @@ -0,0 +1,110 @@ +fileFormatVersion: 2 +guid: 780f3b3e549e6432b8439c5b6d8542cf +TextureImporter: + fileIDToRecycleName: {} + externalObjects: {} + serializedVersion: 9 + mipmaps: + mipMapMode: 0 + enableMipMap: 0 + sRGBTexture: 1 + linearTexture: 0 + fadeOut: 0 + borderMipMap: 0 + mipMapsPreserveCoverage: 0 + alphaTestReferenceValue: 0.5 + mipMapFadeDistanceStart: 1 + mipMapFadeDistanceEnd: 3 + bumpmap: + convertToNormalMap: 0 + externalNormalMap: 0 + heightScale: 0.25 + normalMapFilter: 0 + isReadable: 0 + streamingMipmaps: 0 + streamingMipmapsPriority: 0 + grayScaleToAlpha: 0 + generateCubemap: 6 + cubemapConvolution: 0 + seamlessCubemap: 0 + textureFormat: 1 + maxTextureSize: 2048 + textureSettings: + serializedVersion: 2 + filterMode: -1 + aniso: 1 + mipBias: -100 + wrapU: 1 + wrapV: 1 + wrapW: -1 + nPOTScale: 0 + lightmap: 0 + compressionQuality: 50 + spriteMode: 0 + spriteExtrude: 1 + spriteMeshType: 1 + alignment: 0 + spritePivot: {x: 0.5, y: 0.5} + spritePixelsToUnits: 100 + spriteBorder: {x: 0, y: 0, z: 0, w: 0} + spriteGenerateFallbackPhysicsShape: 1 + alphaUsage: 1 + alphaIsTransparency: 1 + spriteTessellationDetail: -1 + textureType: 2 + textureShape: 1 + singleChannelComponent: 0 + maxTextureSizeSet: 0 + compressionQualitySet: 0 + textureFormatSet: 0 + platformSettings: + - serializedVersion: 2 + buildTarget: DefaultTexturePlatform + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Standalone + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: WebGL + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 0 + spriteSheet: + serializedVersion: 2 + sprites: [] + outline: [] + physicsShape: [] + bones: [] + spriteID: + vertices: [] + indices: + edges: [] + weights: [] + spritePackingTag: + pSDRemoveMatte: 0 + pSDShowRemoveMatteOption: 0 + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/Tutorial Icons/icon-prefab.png" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/Tutorial Icons/icon-prefab.png" new file mode 100644 index 00000000..ad416944 Binary files /dev/null and "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/Tutorial Icons/icon-prefab.png" differ diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/Tutorial Icons/icon-prefab.png.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/Tutorial Icons/icon-prefab.png.meta" new file mode 100644 index 00000000..470b67ff --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/Tutorial Icons/icon-prefab.png.meta" @@ -0,0 +1,110 @@ +fileFormatVersion: 2 +guid: eb963beb4801244aeb9441dfa39555c1 +TextureImporter: + fileIDToRecycleName: {} + externalObjects: {} + serializedVersion: 9 + mipmaps: + mipMapMode: 0 + enableMipMap: 0 + sRGBTexture: 1 + linearTexture: 0 + fadeOut: 0 + borderMipMap: 0 + mipMapsPreserveCoverage: 0 + alphaTestReferenceValue: 0.5 + mipMapFadeDistanceStart: 1 + mipMapFadeDistanceEnd: 3 + bumpmap: + convertToNormalMap: 0 + externalNormalMap: 0 + heightScale: 0.25 + normalMapFilter: 0 + isReadable: 0 + streamingMipmaps: 0 + streamingMipmapsPriority: 0 + grayScaleToAlpha: 0 + generateCubemap: 6 + cubemapConvolution: 0 + seamlessCubemap: 0 + textureFormat: 1 + maxTextureSize: 2048 + textureSettings: + serializedVersion: 2 + filterMode: -1 + aniso: 1 + mipBias: -100 + wrapU: 1 + wrapV: 1 + wrapW: -1 + nPOTScale: 0 + lightmap: 0 + compressionQuality: 50 + spriteMode: 0 + spriteExtrude: 1 + spriteMeshType: 1 + alignment: 0 + spritePivot: {x: 0.5, y: 0.5} + spritePixelsToUnits: 100 + spriteBorder: {x: 0, y: 0, z: 0, w: 0} + spriteGenerateFallbackPhysicsShape: 1 + alphaUsage: 1 + alphaIsTransparency: 1 + spriteTessellationDetail: -1 + textureType: 2 + textureShape: 1 + singleChannelComponent: 0 + maxTextureSizeSet: 0 + compressionQualitySet: 0 + textureFormatSet: 0 + platformSettings: + - serializedVersion: 2 + buildTarget: DefaultTexturePlatform + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Standalone + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: WebGL + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 0 + spriteSheet: + serializedVersion: 2 + sprites: [] + outline: [] + physicsShape: [] + bones: [] + spriteID: + vertices: [] + indices: + edges: [] + weights: [] + spritePackingTag: + pSDRemoveMatte: 0 + pSDShowRemoveMatteOption: 0 + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/Tutorial Icons/icon-ui-completed.png" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/Tutorial Icons/icon-ui-completed.png" new file mode 100644 index 00000000..200551c9 Binary files /dev/null and "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/Tutorial Icons/icon-ui-completed.png" differ diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/Tutorial Icons/icon-ui-completed.png.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/Tutorial Icons/icon-ui-completed.png.meta" new file mode 100644 index 00000000..e8776659 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/Tutorial Icons/icon-ui-completed.png.meta" @@ -0,0 +1,110 @@ +fileFormatVersion: 2 +guid: 8a456994a80234fd2863df4d7e29e6b0 +TextureImporter: + fileIDToRecycleName: {} + externalObjects: {} + serializedVersion: 9 + mipmaps: + mipMapMode: 0 + enableMipMap: 0 + sRGBTexture: 1 + linearTexture: 0 + fadeOut: 0 + borderMipMap: 0 + mipMapsPreserveCoverage: 0 + alphaTestReferenceValue: 0.5 + mipMapFadeDistanceStart: 1 + mipMapFadeDistanceEnd: 3 + bumpmap: + convertToNormalMap: 0 + externalNormalMap: 0 + heightScale: 0.25 + normalMapFilter: 0 + isReadable: 0 + streamingMipmaps: 0 + streamingMipmapsPriority: 0 + grayScaleToAlpha: 0 + generateCubemap: 6 + cubemapConvolution: 0 + seamlessCubemap: 0 + textureFormat: 1 + maxTextureSize: 2048 + textureSettings: + serializedVersion: 2 + filterMode: -1 + aniso: 1 + mipBias: -100 + wrapU: 1 + wrapV: 1 + wrapW: -1 + nPOTScale: 0 + lightmap: 0 + compressionQuality: 50 + spriteMode: 0 + spriteExtrude: 1 + spriteMeshType: 1 + alignment: 0 + spritePivot: {x: 0.5, y: 0.5} + spritePixelsToUnits: 100 + spriteBorder: {x: 0, y: 0, z: 0, w: 0} + spriteGenerateFallbackPhysicsShape: 1 + alphaUsage: 1 + alphaIsTransparency: 1 + spriteTessellationDetail: -1 + textureType: 2 + textureShape: 1 + singleChannelComponent: 0 + maxTextureSizeSet: 0 + compressionQualitySet: 0 + textureFormatSet: 0 + platformSettings: + - serializedVersion: 2 + buildTarget: DefaultTexturePlatform + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Standalone + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: WebGL + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 0 + spriteSheet: + serializedVersion: 2 + sprites: [] + outline: [] + physicsShape: [] + bones: [] + spriteID: + vertices: [] + indices: + edges: [] + weights: [] + spritePackingTag: + pSDRemoveMatte: 0 + pSDShowRemoveMatteOption: 0 + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/Tutorial Icons/icon-ui.png" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/Tutorial Icons/icon-ui.png" new file mode 100644 index 00000000..6bdc0f43 Binary files /dev/null and "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/Tutorial Icons/icon-ui.png" differ diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/Tutorial Icons/icon-ui.png.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/Tutorial Icons/icon-ui.png.meta" new file mode 100644 index 00000000..9b48ec17 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/Tutorial Icons/icon-ui.png.meta" @@ -0,0 +1,110 @@ +fileFormatVersion: 2 +guid: ad9f1234d3a9046e99a56e1aa0f6ff42 +TextureImporter: + fileIDToRecycleName: {} + externalObjects: {} + serializedVersion: 9 + mipmaps: + mipMapMode: 0 + enableMipMap: 0 + sRGBTexture: 1 + linearTexture: 0 + fadeOut: 0 + borderMipMap: 0 + mipMapsPreserveCoverage: 0 + alphaTestReferenceValue: 0.5 + mipMapFadeDistanceStart: 1 + mipMapFadeDistanceEnd: 3 + bumpmap: + convertToNormalMap: 0 + externalNormalMap: 0 + heightScale: 0.25 + normalMapFilter: 0 + isReadable: 0 + streamingMipmaps: 0 + streamingMipmapsPriority: 0 + grayScaleToAlpha: 0 + generateCubemap: 6 + cubemapConvolution: 0 + seamlessCubemap: 0 + textureFormat: 1 + maxTextureSize: 2048 + textureSettings: + serializedVersion: 2 + filterMode: -1 + aniso: 1 + mipBias: -100 + wrapU: 1 + wrapV: 1 + wrapW: -1 + nPOTScale: 0 + lightmap: 0 + compressionQuality: 50 + spriteMode: 0 + spriteExtrude: 1 + spriteMeshType: 1 + alignment: 0 + spritePivot: {x: 0.5, y: 0.5} + spritePixelsToUnits: 100 + spriteBorder: {x: 0, y: 0, z: 0, w: 0} + spriteGenerateFallbackPhysicsShape: 1 + alphaUsage: 1 + alphaIsTransparency: 1 + spriteTessellationDetail: -1 + textureType: 2 + textureShape: 1 + singleChannelComponent: 0 + maxTextureSizeSet: 0 + compressionQualitySet: 0 + textureFormatSet: 0 + platformSettings: + - serializedVersion: 2 + buildTarget: DefaultTexturePlatform + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Standalone + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: WebGL + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 0 + spriteSheet: + serializedVersion: 2 + sprites: [] + outline: [] + physicsShape: [] + bones: [] + spriteID: + vertices: [] + indices: + edges: [] + weights: [] + spritePackingTag: + pSDRemoveMatte: 0 + pSDShowRemoveMatteOption: 0 + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/Tutorial Icons/icon-www-completed.png" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/Tutorial Icons/icon-www-completed.png" new file mode 100644 index 00000000..704ce46e Binary files /dev/null and "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/Tutorial Icons/icon-www-completed.png" differ diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/Tutorial Icons/icon-www-completed.png.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/Tutorial Icons/icon-www-completed.png.meta" new file mode 100644 index 00000000..507da822 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/Tutorial Icons/icon-www-completed.png.meta" @@ -0,0 +1,110 @@ +fileFormatVersion: 2 +guid: 386ad4dcd15bf45459f96ff08a55be45 +TextureImporter: + fileIDToRecycleName: {} + externalObjects: {} + serializedVersion: 9 + mipmaps: + mipMapMode: 0 + enableMipMap: 0 + sRGBTexture: 1 + linearTexture: 0 + fadeOut: 0 + borderMipMap: 0 + mipMapsPreserveCoverage: 0 + alphaTestReferenceValue: 0.5 + mipMapFadeDistanceStart: 1 + mipMapFadeDistanceEnd: 3 + bumpmap: + convertToNormalMap: 0 + externalNormalMap: 0 + heightScale: 0.25 + normalMapFilter: 0 + isReadable: 0 + streamingMipmaps: 0 + streamingMipmapsPriority: 0 + grayScaleToAlpha: 0 + generateCubemap: 6 + cubemapConvolution: 0 + seamlessCubemap: 0 + textureFormat: 1 + maxTextureSize: 2048 + textureSettings: + serializedVersion: 2 + filterMode: -1 + aniso: 1 + mipBias: -100 + wrapU: 1 + wrapV: 1 + wrapW: -1 + nPOTScale: 0 + lightmap: 0 + compressionQuality: 50 + spriteMode: 0 + spriteExtrude: 1 + spriteMeshType: 1 + alignment: 0 + spritePivot: {x: 0.5, y: 0.5} + spritePixelsToUnits: 100 + spriteBorder: {x: 0, y: 0, z: 0, w: 0} + spriteGenerateFallbackPhysicsShape: 1 + alphaUsage: 1 + alphaIsTransparency: 1 + spriteTessellationDetail: -1 + textureType: 2 + textureShape: 1 + singleChannelComponent: 0 + maxTextureSizeSet: 0 + compressionQualitySet: 0 + textureFormatSet: 0 + platformSettings: + - serializedVersion: 2 + buildTarget: DefaultTexturePlatform + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Standalone + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: WebGL + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 0 + spriteSheet: + serializedVersion: 2 + sprites: [] + outline: [] + physicsShape: [] + bones: [] + spriteID: + vertices: [] + indices: + edges: [] + weights: [] + spritePackingTag: + pSDRemoveMatte: 0 + pSDShowRemoveMatteOption: 0 + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/Tutorial Icons/icon-www.png" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/Tutorial Icons/icon-www.png" new file mode 100644 index 00000000..14caac81 Binary files /dev/null and "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/Tutorial Icons/icon-www.png" differ diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/Tutorial Icons/icon-www.png.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/Tutorial Icons/icon-www.png.meta" new file mode 100644 index 00000000..60784017 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/Tutorial Icons/icon-www.png.meta" @@ -0,0 +1,110 @@ +fileFormatVersion: 2 +guid: a63863a2af95b4774bf1392c24952242 +TextureImporter: + fileIDToRecycleName: {} + externalObjects: {} + serializedVersion: 9 + mipmaps: + mipMapMode: 0 + enableMipMap: 0 + sRGBTexture: 1 + linearTexture: 0 + fadeOut: 0 + borderMipMap: 0 + mipMapsPreserveCoverage: 0 + alphaTestReferenceValue: 0.5 + mipMapFadeDistanceStart: 1 + mipMapFadeDistanceEnd: 3 + bumpmap: + convertToNormalMap: 0 + externalNormalMap: 0 + heightScale: 0.25 + normalMapFilter: 0 + isReadable: 0 + streamingMipmaps: 0 + streamingMipmapsPriority: 0 + grayScaleToAlpha: 0 + generateCubemap: 6 + cubemapConvolution: 0 + seamlessCubemap: 0 + textureFormat: 1 + maxTextureSize: 2048 + textureSettings: + serializedVersion: 2 + filterMode: -1 + aniso: 1 + mipBias: -100 + wrapU: 1 + wrapV: 1 + wrapW: -1 + nPOTScale: 0 + lightmap: 0 + compressionQuality: 50 + spriteMode: 0 + spriteExtrude: 1 + spriteMeshType: 1 + alignment: 0 + spritePivot: {x: 0.5, y: 0.5} + spritePixelsToUnits: 100 + spriteBorder: {x: 0, y: 0, z: 0, w: 0} + spriteGenerateFallbackPhysicsShape: 1 + alphaUsage: 1 + alphaIsTransparency: 1 + spriteTessellationDetail: -1 + textureType: 2 + textureShape: 1 + singleChannelComponent: 0 + maxTextureSizeSet: 0 + compressionQualitySet: 0 + textureFormatSet: 0 + platformSettings: + - serializedVersion: 2 + buildTarget: DefaultTexturePlatform + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Standalone + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: WebGL + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 0 + spriteSheet: + serializedVersion: 2 + sprites: [] + outline: [] + physicsShape: [] + bones: [] + spriteID: + vertices: [] + indices: + edges: [] + weights: [] + spritePackingTag: + pSDRemoveMatte: 0 + pSDShowRemoveMatteOption: 0 + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/Tutorial Skin.guiskin" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/Tutorial Skin.guiskin" new file mode 100644 index 00000000..5a0c99b0 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/Tutorial Skin.guiskin" @@ -0,0 +1,3889 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!114 &11400000 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 1 + m_Script: {fileID: 12001, guid: 0000000000000000e000000000000000, type: 0} + m_Name: Tutorial Skin + m_EditorClassIdentifier: + m_Font: {fileID: 0} + m_box: + m_Name: box + m_Normal: + m_Background: {fileID: 0} + m_ScaledBackgrounds: [] + m_TextColor: {r: 0.9411765, g: 0.07450981, b: 0.29803923, a: 1} + m_Hover: + m_Background: {fileID: 0} + m_ScaledBackgrounds: [] + m_TextColor: {r: 0, g: 0, b: 0, a: 1} + m_Active: + m_Background: {fileID: 0} + m_ScaledBackgrounds: [] + m_TextColor: {r: 0, g: 0, b: 0, a: 1} + m_Focused: + m_Background: {fileID: 0} + m_ScaledBackgrounds: [] + m_TextColor: {r: 0, g: 0, b: 0, a: 1} + m_OnNormal: + m_Background: {fileID: 0} + m_ScaledBackgrounds: [] + m_TextColor: {r: 0, g: 0, b: 0, a: 1} + m_OnHover: + m_Background: {fileID: 0} + m_ScaledBackgrounds: [] + m_TextColor: {r: 0, g: 0, b: 0, a: 1} + m_OnActive: + m_Background: {fileID: 0} + m_ScaledBackgrounds: [] + m_TextColor: {r: 0, g: 0, b: 0, a: 1} + m_OnFocused: + m_Background: {fileID: 0} + m_ScaledBackgrounds: [] + m_TextColor: {r: 0, g: 0, b: 0, a: 1} + m_Border: + m_Left: 0 + m_Right: 0 + m_Top: 0 + m_Bottom: 0 + m_Margin: + m_Left: 0 + m_Right: 0 + m_Top: 0 + m_Bottom: 0 + m_Padding: + m_Left: 0 + m_Right: 0 + m_Top: 0 + m_Bottom: 0 + m_Overflow: + m_Left: 0 + m_Right: 0 + m_Top: 0 + m_Bottom: 0 + m_Font: {fileID: 12800000, guid: 0b62a4e35af744273a5e705f7ce7bcf8, type: 3} + m_FontSize: 32 + m_FontStyle: 0 + m_Alignment: 4 + m_WordWrap: 0 + m_RichText: 1 + m_TextClipping: 1 + m_ImagePosition: 0 + m_ContentOffset: {x: 0, y: 0} + m_FixedWidth: 48 + m_FixedHeight: 48 + m_StretchWidth: 1 + m_StretchHeight: 0 + m_button: + m_Name: button + m_Normal: + m_Background: {fileID: 2800000, guid: 878645da069e34c5088b3d7c3c2ef90f, type: 3} + m_ScaledBackgrounds: [] + m_TextColor: {r: 1, g: 1, b: 1, a: 1} + m_Hover: + m_Background: {fileID: 2800000, guid: fcdf668b5aa2d414f852003c8c78d5c8, type: 3} + m_ScaledBackgrounds: [] + m_TextColor: {r: 1, g: 1, b: 1, a: 1} + m_Active: + m_Background: {fileID: 2800000, guid: f1cb0ff35acd64d9b8e5979aeac4991a, type: 3} + m_ScaledBackgrounds: [] + m_TextColor: {r: 1, g: 1, b: 1, a: 1} + m_Focused: + m_Background: {fileID: 0} + m_ScaledBackgrounds: [] + m_TextColor: {r: 1, g: 1, b: 1, a: 1} + m_OnNormal: + m_Background: {fileID: 11005, guid: 0000000000000000e000000000000000, type: 0} + m_ScaledBackgrounds: [] + m_TextColor: {r: 0.9019608, g: 0.9019608, b: 0.9019608, a: 1} + m_OnHover: + m_Background: {fileID: 11004, guid: 0000000000000000e000000000000000, type: 0} + m_ScaledBackgrounds: [] + m_TextColor: {r: 1, g: 1, b: 1, a: 1} + m_OnActive: + m_Background: {fileID: 11002, guid: 0000000000000000e000000000000000, type: 0} + m_ScaledBackgrounds: [] + m_TextColor: {r: 0.9, g: 0.9, b: 0.9, a: 1} + m_OnFocused: + m_Background: {fileID: 0} + m_ScaledBackgrounds: [] + m_TextColor: {r: 0, g: 0, b: 0, a: 1} + m_Border: + m_Left: 5 + m_Right: 5 + m_Top: 5 + m_Bottom: 5 + m_Margin: + m_Left: 20 + m_Right: 15 + m_Top: 20 + m_Bottom: 0 + m_Padding: + m_Left: 8 + m_Right: 8 + m_Top: 8 + m_Bottom: 10 + m_Overflow: + m_Left: 0 + m_Right: 0 + m_Top: 0 + m_Bottom: 0 + m_Font: {fileID: 0} + m_FontSize: 13 + m_FontStyle: 1 + m_Alignment: 4 + m_WordWrap: 0 + m_RichText: 1 + m_TextClipping: 1 + m_ImagePosition: 0 + m_ContentOffset: {x: 0, y: 0} + m_FixedWidth: 0 + m_FixedHeight: 0 + m_StretchWidth: 1 + m_StretchHeight: 0 + m_toggle: + m_Name: toggle + m_Normal: + m_Background: {fileID: 11018, guid: 0000000000000000e000000000000000, type: 0} + m_ScaledBackgrounds: [] + m_TextColor: {r: 0.89112896, g: 0.89112896, b: 0.89112896, a: 1} + m_Hover: + m_Background: {fileID: 11014, guid: 0000000000000000e000000000000000, type: 0} + m_ScaledBackgrounds: [] + m_TextColor: {r: 1, g: 1, b: 1, a: 1} + m_Active: + m_Background: {fileID: 11013, guid: 0000000000000000e000000000000000, type: 0} + m_ScaledBackgrounds: [] + m_TextColor: {r: 1, g: 1, b: 1, a: 1} + m_Focused: + m_Background: {fileID: 0} + m_ScaledBackgrounds: [] + m_TextColor: {r: 0, g: 0, b: 0, a: 1} + m_OnNormal: + m_Background: {fileID: 11016, guid: 0000000000000000e000000000000000, type: 0} + m_ScaledBackgrounds: [] + m_TextColor: {r: 0.8901961, g: 0.8901961, b: 0.8901961, a: 1} + m_OnHover: + m_Background: {fileID: 11015, guid: 0000000000000000e000000000000000, type: 0} + m_ScaledBackgrounds: [] + m_TextColor: {r: 1, g: 1, b: 1, a: 1} + m_OnActive: + m_Background: {fileID: 11017, guid: 0000000000000000e000000000000000, type: 0} + m_ScaledBackgrounds: [] + m_TextColor: {r: 1, g: 1, b: 1, a: 1} + m_OnFocused: + m_Background: {fileID: 0} + m_ScaledBackgrounds: [] + m_TextColor: {r: 0, g: 0, b: 0, a: 1} + m_Border: + m_Left: 14 + m_Right: 0 + m_Top: 14 + m_Bottom: 0 + m_Margin: + m_Left: 4 + m_Right: 4 + m_Top: 4 + m_Bottom: 4 + m_Padding: + m_Left: 15 + m_Right: 0 + m_Top: 3 + m_Bottom: 0 + m_Overflow: + m_Left: -1 + m_Right: 0 + m_Top: -4 + m_Bottom: 0 + m_Font: {fileID: 0} + m_FontSize: 0 + m_FontStyle: 0 + m_Alignment: 0 + m_WordWrap: 0 + m_RichText: 1 + m_TextClipping: 1 + m_ImagePosition: 0 + m_ContentOffset: {x: 0, y: 0} + m_FixedWidth: 0 + m_FixedHeight: 0 + m_StretchWidth: 1 + m_StretchHeight: 0 + m_label: + m_Name: label + m_Normal: + m_Background: {fileID: 0} + m_ScaledBackgrounds: [] + m_TextColor: {r: 0.047169805, g: 0.047169805, b: 0.047169805, a: 1} + m_Hover: + m_Background: {fileID: 0} + m_ScaledBackgrounds: [] + m_TextColor: {r: 0, g: 0, b: 0, a: 1} + m_Active: + m_Background: {fileID: 0} + m_ScaledBackgrounds: [] + m_TextColor: {r: 0, g: 0, b: 0, a: 1} + m_Focused: + m_Background: {fileID: 0} + m_ScaledBackgrounds: [] + m_TextColor: {r: 0, g: 0, b: 0, a: 1} + m_OnNormal: + m_Background: {fileID: 0} + m_ScaledBackgrounds: [] + m_TextColor: {r: 0, g: 0, b: 0, a: 1} + m_OnHover: + m_Background: {fileID: 0} + m_ScaledBackgrounds: [] + m_TextColor: {r: 0, g: 0, b: 0, a: 1} + m_OnActive: + m_Background: {fileID: 0} + m_ScaledBackgrounds: [] + m_TextColor: {r: 0, g: 0, b: 0, a: 1} + m_OnFocused: + m_Background: {fileID: 0} + m_ScaledBackgrounds: [] + m_TextColor: {r: 0, g: 0, b: 0, a: 1} + m_Border: + m_Left: 0 + m_Right: 0 + m_Top: 0 + m_Bottom: 0 + m_Margin: + m_Left: 12 + m_Right: 12 + m_Top: 8 + m_Bottom: 8 + m_Padding: + m_Left: 0 + m_Right: 0 + m_Top: 0 + m_Bottom: 0 + m_Overflow: + m_Left: 0 + m_Right: 0 + m_Top: 0 + m_Bottom: 0 + m_Font: {fileID: 0} + m_FontSize: 12 + m_FontStyle: 0 + m_Alignment: 0 + m_WordWrap: 1 + m_RichText: 1 + m_TextClipping: 1 + m_ImagePosition: 0 + m_ContentOffset: {x: 0, y: 0} + m_FixedWidth: 0 + m_FixedHeight: 0 + m_StretchWidth: 1 + m_StretchHeight: 0 + m_textField: + m_Name: textfield + m_Normal: + m_Background: {fileID: 11024, guid: 0000000000000000e000000000000000, type: 0} + m_ScaledBackgrounds: [] + m_TextColor: {r: 0.79999995, g: 0.79999995, b: 0.79999995, a: 1} + m_Hover: + m_Background: {fileID: 11026, guid: 0000000000000000e000000000000000, type: 0} + m_ScaledBackgrounds: [] + m_TextColor: {r: 0.9, g: 0.9, b: 0.9, a: 1} + m_Active: + m_Background: {fileID: 0} + m_ScaledBackgrounds: [] + m_TextColor: {r: 0, g: 0, b: 0, a: 1} + m_Focused: + m_Background: {fileID: 11026, guid: 0000000000000000e000000000000000, type: 0} + m_ScaledBackgrounds: [] + m_TextColor: {r: 1, g: 1, b: 1, a: 1} + m_OnNormal: + m_Background: {fileID: 11025, guid: 0000000000000000e000000000000000, type: 0} + m_ScaledBackgrounds: [] + m_TextColor: {r: 1, g: 1, b: 1, a: 1} + m_OnHover: + m_Background: {fileID: 0} + m_ScaledBackgrounds: [] + m_TextColor: {r: 0, g: 0, b: 0, a: 1} + m_OnActive: + m_Background: {fileID: 0} + m_ScaledBackgrounds: [] + m_TextColor: {r: 0, g: 0, b: 0, a: 1} + m_OnFocused: + m_Background: {fileID: 0} + m_ScaledBackgrounds: [] + m_TextColor: {r: 0, g: 0, b: 0, a: 1} + m_Border: + m_Left: 4 + m_Right: 4 + m_Top: 4 + m_Bottom: 4 + m_Margin: + m_Left: 4 + m_Right: 4 + m_Top: 4 + m_Bottom: 4 + m_Padding: + m_Left: 3 + m_Right: 3 + m_Top: 3 + m_Bottom: 3 + m_Overflow: + m_Left: 0 + m_Right: 0 + m_Top: 0 + m_Bottom: 0 + m_Font: {fileID: 0} + m_FontSize: 12 + m_FontStyle: 0 + m_Alignment: 0 + m_WordWrap: 0 + m_RichText: 0 + m_TextClipping: 1 + m_ImagePosition: 3 + m_ContentOffset: {x: 0, y: 0} + m_FixedWidth: 0 + m_FixedHeight: 0 + m_StretchWidth: 1 + m_StretchHeight: 0 + m_textArea: + m_Name: textarea + m_Normal: + m_Background: {fileID: 11024, guid: 0000000000000000e000000000000000, type: 0} + m_ScaledBackgrounds: [] + m_TextColor: {r: 0.9019608, g: 0.9019608, b: 0.9019608, a: 1} + m_Hover: + m_Background: {fileID: 11026, guid: 0000000000000000e000000000000000, type: 0} + m_ScaledBackgrounds: [] + m_TextColor: {r: 0.79999995, g: 0.79999995, b: 0.79999995, a: 1} + m_Active: + m_Background: {fileID: 0} + m_ScaledBackgrounds: [] + m_TextColor: {r: 0, g: 0, b: 0, a: 1} + m_Focused: + m_Background: {fileID: 0} + m_ScaledBackgrounds: [] + m_TextColor: {r: 0, g: 0, b: 0, a: 1} + m_OnNormal: + m_Background: {fileID: 11025, guid: 0000000000000000e000000000000000, type: 0} + m_ScaledBackgrounds: [] + m_TextColor: {r: 1, g: 1, b: 1, a: 1} + m_OnHover: + m_Background: {fileID: 0} + m_ScaledBackgrounds: [] + m_TextColor: {r: 0, g: 0, b: 0, a: 1} + m_OnActive: + m_Background: {fileID: 0} + m_ScaledBackgrounds: [] + m_TextColor: {r: 0, g: 0, b: 0, a: 1} + m_OnFocused: + m_Background: {fileID: 0} + m_ScaledBackgrounds: [] + m_TextColor: {r: 0, g: 0, b: 0, a: 1} + m_Border: + m_Left: 4 + m_Right: 4 + m_Top: 4 + m_Bottom: 4 + m_Margin: + m_Left: 4 + m_Right: 4 + m_Top: 4 + m_Bottom: 4 + m_Padding: + m_Left: 3 + m_Right: 3 + m_Top: 3 + m_Bottom: 3 + m_Overflow: + m_Left: 0 + m_Right: 0 + m_Top: 0 + m_Bottom: 0 + m_Font: {fileID: 0} + m_FontSize: 12 + m_FontStyle: 0 + m_Alignment: 0 + m_WordWrap: 1 + m_RichText: 0 + m_TextClipping: 1 + m_ImagePosition: 0 + m_ContentOffset: {x: 0, y: 0} + m_FixedWidth: 0 + m_FixedHeight: 0 + m_StretchWidth: 1 + m_StretchHeight: 0 + m_window: + m_Name: window + m_Normal: + m_Background: {fileID: 11023, guid: 0000000000000000e000000000000000, type: 0} + m_ScaledBackgrounds: [] + m_TextColor: {r: 1, g: 1, b: 1, a: 1} + m_Hover: + m_Background: {fileID: 0} + m_ScaledBackgrounds: [] + m_TextColor: {r: 0, g: 0, b: 0, a: 1} + m_Active: + m_Background: {fileID: 0} + m_ScaledBackgrounds: [] + m_TextColor: {r: 0, g: 0, b: 0, a: 1} + m_Focused: + m_Background: {fileID: 0} + m_ScaledBackgrounds: [] + m_TextColor: {r: 0, g: 0, b: 0, a: 1} + m_OnNormal: + m_Background: {fileID: 11022, guid: 0000000000000000e000000000000000, type: 0} + m_ScaledBackgrounds: [] + m_TextColor: {r: 1, g: 1, b: 1, a: 1} + m_OnHover: + m_Background: {fileID: 0} + m_ScaledBackgrounds: [] + m_TextColor: {r: 0, g: 0, b: 0, a: 1} + m_OnActive: + m_Background: {fileID: 0} + m_ScaledBackgrounds: [] + m_TextColor: {r: 0, g: 0, b: 0, a: 1} + m_OnFocused: + m_Background: {fileID: 0} + m_ScaledBackgrounds: [] + m_TextColor: {r: 0, g: 0, b: 0, a: 1} + m_Border: + m_Left: 8 + m_Right: 8 + m_Top: 18 + m_Bottom: 8 + m_Margin: + m_Left: 0 + m_Right: 0 + m_Top: 0 + m_Bottom: 0 + m_Padding: + m_Left: 10 + m_Right: 10 + m_Top: 20 + m_Bottom: 10 + m_Overflow: + m_Left: 0 + m_Right: 0 + m_Top: 0 + m_Bottom: 0 + m_Font: {fileID: 0} + m_FontSize: 0 + m_FontStyle: 0 + m_Alignment: 1 + m_WordWrap: 0 + m_RichText: 1 + m_TextClipping: 1 + m_ImagePosition: 0 + m_ContentOffset: {x: 0, y: -18} + m_FixedWidth: 0 + m_FixedHeight: 0 + m_StretchWidth: 0 + m_StretchHeight: 0 + m_horizontalSlider: + m_Name: horizontalslider + m_Normal: + m_Background: {fileID: 11009, guid: 0000000000000000e000000000000000, type: 0} + m_ScaledBackgrounds: [] + m_TextColor: {r: 0, g: 0, b: 0, a: 1} + m_Hover: + m_Background: {fileID: 0} + m_ScaledBackgrounds: [] + m_TextColor: {r: 0, g: 0, b: 0, a: 1} + m_Active: + m_Background: {fileID: 0} + m_ScaledBackgrounds: [] + m_TextColor: {r: 0, g: 0, b: 0, a: 1} + m_Focused: + m_Background: {fileID: 0} + m_ScaledBackgrounds: [] + m_TextColor: {r: 0, g: 0, b: 0, a: 1} + m_OnNormal: + m_Background: {fileID: 0} + m_ScaledBackgrounds: [] + m_TextColor: {r: 0, g: 0, b: 0, a: 1} + m_OnHover: + m_Background: {fileID: 0} + m_ScaledBackgrounds: [] + m_TextColor: {r: 0, g: 0, b: 0, a: 1} + m_OnActive: + m_Background: {fileID: 0} + m_ScaledBackgrounds: [] + m_TextColor: {r: 0, g: 0, b: 0, a: 1} + m_OnFocused: + m_Background: {fileID: 0} + m_ScaledBackgrounds: [] + m_TextColor: {r: 0, g: 0, b: 0, a: 1} + m_Border: + m_Left: 3 + m_Right: 3 + m_Top: 0 + m_Bottom: 0 + m_Margin: + m_Left: 4 + m_Right: 4 + m_Top: 4 + m_Bottom: 4 + m_Padding: + m_Left: -1 + m_Right: -1 + m_Top: 0 + m_Bottom: 0 + m_Overflow: + m_Left: 0 + m_Right: 0 + m_Top: -2 + m_Bottom: -3 + m_Font: {fileID: 0} + m_FontSize: 0 + m_FontStyle: 0 + m_Alignment: 0 + m_WordWrap: 0 + m_RichText: 1 + m_TextClipping: 1 + m_ImagePosition: 2 + m_ContentOffset: {x: 0, y: 0} + m_FixedWidth: 0 + m_FixedHeight: 12 + m_StretchWidth: 1 + m_StretchHeight: 0 + m_horizontalSliderThumb: + m_Name: horizontalsliderthumb + m_Normal: + m_Background: {fileID: 11011, guid: 0000000000000000e000000000000000, type: 0} + m_ScaledBackgrounds: [] + m_TextColor: {r: 0, g: 0, b: 0, a: 1} + m_Hover: + m_Background: {fileID: 11012, guid: 0000000000000000e000000000000000, type: 0} + m_ScaledBackgrounds: [] + m_TextColor: {r: 0, g: 0, b: 0, a: 1} + m_Active: + m_Background: {fileID: 11010, guid: 0000000000000000e000000000000000, type: 0} + m_ScaledBackgrounds: [] + m_TextColor: {r: 0, g: 0, b: 0, a: 1} + m_Focused: + m_Background: {fileID: 0} + m_ScaledBackgrounds: [] + m_TextColor: {r: 0, g: 0, b: 0, a: 1} + m_OnNormal: + m_Background: {fileID: 0} + m_ScaledBackgrounds: [] + m_TextColor: {r: 0, g: 0, b: 0, a: 1} + m_OnHover: + m_Background: {fileID: 0} + m_ScaledBackgrounds: [] + m_TextColor: {r: 0, g: 0, b: 0, a: 1} + m_OnActive: + m_Background: {fileID: 0} + m_ScaledBackgrounds: [] + m_TextColor: {r: 0, g: 0, b: 0, a: 1} + m_OnFocused: + m_Background: {fileID: 0} + m_ScaledBackgrounds: [] + m_TextColor: {r: 0, g: 0, b: 0, a: 1} + m_Border: + m_Left: 4 + m_Right: 4 + m_Top: 0 + m_Bottom: 0 + m_Margin: + m_Left: 0 + m_Right: 0 + m_Top: 0 + m_Bottom: 0 + m_Padding: + m_Left: 7 + m_Right: 7 + m_Top: 0 + m_Bottom: 0 + m_Overflow: + m_Left: -1 + m_Right: -1 + m_Top: 0 + m_Bottom: 0 + m_Font: {fileID: 0} + m_FontSize: 0 + m_FontStyle: 0 + m_Alignment: 0 + m_WordWrap: 0 + m_RichText: 1 + m_TextClipping: 1 + m_ImagePosition: 2 + m_ContentOffset: {x: 0, y: 0} + m_FixedWidth: 0 + m_FixedHeight: 12 + m_StretchWidth: 1 + m_StretchHeight: 0 + m_verticalSlider: + m_Name: verticalslider + m_Normal: + m_Background: {fileID: 11021, guid: 0000000000000000e000000000000000, type: 0} + m_ScaledBackgrounds: [] + m_TextColor: {r: 0, g: 0, b: 0, a: 1} + m_Hover: + m_Background: {fileID: 0} + m_ScaledBackgrounds: [] + m_TextColor: {r: 0, g: 0, b: 0, a: 1} + m_Active: + m_Background: {fileID: 0} + m_ScaledBackgrounds: [] + m_TextColor: {r: 0, g: 0, b: 0, a: 1} + m_Focused: + m_Background: {fileID: 0} + m_ScaledBackgrounds: [] + m_TextColor: {r: 0, g: 0, b: 0, a: 1} + m_OnNormal: + m_Background: {fileID: 0} + m_ScaledBackgrounds: [] + m_TextColor: {r: 0, g: 0, b: 0, a: 1} + m_OnHover: + m_Background: {fileID: 0} + m_ScaledBackgrounds: [] + m_TextColor: {r: 0, g: 0, b: 0, a: 1} + m_OnActive: + m_Background: {fileID: 0} + m_ScaledBackgrounds: [] + m_TextColor: {r: 0, g: 0, b: 0, a: 1} + m_OnFocused: + m_Background: {fileID: 0} + m_ScaledBackgrounds: [] + m_TextColor: {r: 0, g: 0, b: 0, a: 1} + m_Border: + m_Left: 0 + m_Right: 0 + m_Top: 3 + m_Bottom: 3 + m_Margin: + m_Left: 4 + m_Right: 4 + m_Top: 4 + m_Bottom: 4 + m_Padding: + m_Left: 0 + m_Right: 0 + m_Top: -1 + m_Bottom: -1 + m_Overflow: + m_Left: -2 + m_Right: -3 + m_Top: 0 + m_Bottom: 0 + m_Font: {fileID: 0} + m_FontSize: 0 + m_FontStyle: 0 + m_Alignment: 0 + m_WordWrap: 0 + m_RichText: 1 + m_TextClipping: 0 + m_ImagePosition: 0 + m_ContentOffset: {x: 0, y: 0} + m_FixedWidth: 12 + m_FixedHeight: 0 + m_StretchWidth: 0 + m_StretchHeight: 1 + m_verticalSliderThumb: + m_Name: verticalsliderthumb + m_Normal: + m_Background: {fileID: 11011, guid: 0000000000000000e000000000000000, type: 0} + m_ScaledBackgrounds: [] + m_TextColor: {r: 0, g: 0, b: 0, a: 1} + m_Hover: + m_Background: {fileID: 11012, guid: 0000000000000000e000000000000000, type: 0} + m_ScaledBackgrounds: [] + m_TextColor: {r: 0, g: 0, b: 0, a: 1} + m_Active: + m_Background: {fileID: 11010, guid: 0000000000000000e000000000000000, type: 0} + m_ScaledBackgrounds: [] + m_TextColor: {r: 0, g: 0, b: 0, a: 1} + m_Focused: + m_Background: {fileID: 0} + m_ScaledBackgrounds: [] + m_TextColor: {r: 0, g: 0, b: 0, a: 1} + m_OnNormal: + m_Background: {fileID: 0} + m_ScaledBackgrounds: [] + m_TextColor: {r: 0, g: 0, b: 0, a: 1} + m_OnHover: + m_Background: {fileID: 0} + m_ScaledBackgrounds: [] + m_TextColor: {r: 0, g: 0, b: 0, a: 1} + m_OnActive: + m_Background: {fileID: 0} + m_ScaledBackgrounds: [] + m_TextColor: {r: 0, g: 0, b: 0, a: 1} + m_OnFocused: + m_Background: {fileID: 0} + m_ScaledBackgrounds: [] + m_TextColor: {r: 0, g: 0, b: 0, a: 1} + m_Border: + m_Left: 0 + m_Right: 0 + m_Top: 0 + m_Bottom: 0 + m_Margin: + m_Left: 0 + m_Right: 0 + m_Top: 0 + m_Bottom: 0 + m_Padding: + m_Left: 0 + m_Right: 0 + m_Top: 7 + m_Bottom: 7 + m_Overflow: + m_Left: 0 + m_Right: 0 + m_Top: -1 + m_Bottom: -1 + m_Font: {fileID: 0} + m_FontSize: 0 + m_FontStyle: 0 + m_Alignment: 0 + m_WordWrap: 0 + m_RichText: 1 + m_TextClipping: 1 + m_ImagePosition: 0 + m_ContentOffset: {x: 0, y: 0} + m_FixedWidth: 12 + m_FixedHeight: 0 + m_StretchWidth: 0 + m_StretchHeight: 1 + m_horizontalScrollbar: + m_Name: horizontalscrollbar + m_Normal: + m_Background: {fileID: 2800000, guid: aeb3cd76d71014add8a674b1b4831cf5, type: 3} + m_ScaledBackgrounds: [] + m_TextColor: {r: 0, g: 0, b: 0, a: 1} + m_Hover: + m_Background: {fileID: 0} + m_ScaledBackgrounds: [] + m_TextColor: {r: 0, g: 0, b: 0, a: 1} + m_Active: + m_Background: {fileID: 0} + m_ScaledBackgrounds: [] + m_TextColor: {r: 0, g: 0, b: 0, a: 1} + m_Focused: + m_Background: {fileID: 0} + m_ScaledBackgrounds: [] + m_TextColor: {r: 0, g: 0, b: 0, a: 1} + m_OnNormal: + m_Background: {fileID: 0} + m_ScaledBackgrounds: [] + m_TextColor: {r: 0, g: 0, b: 0, a: 1} + m_OnHover: + m_Background: {fileID: 0} + m_ScaledBackgrounds: [] + m_TextColor: {r: 0, g: 0, b: 0, a: 1} + m_OnActive: + m_Background: {fileID: 0} + m_ScaledBackgrounds: [] + m_TextColor: {r: 0, g: 0, b: 0, a: 1} + m_OnFocused: + m_Background: {fileID: 0} + m_ScaledBackgrounds: [] + m_TextColor: {r: 0, g: 0, b: 0, a: 1} + m_Border: + m_Left: 0 + m_Right: 0 + m_Top: 0 + m_Bottom: 0 + m_Margin: + m_Left: 0 + m_Right: 0 + m_Top: 0 + m_Bottom: 0 + m_Padding: + m_Left: 1 + m_Right: 1 + m_Top: 1 + m_Bottom: 1 + m_Overflow: + m_Left: 0 + m_Right: 0 + m_Top: 0 + m_Bottom: 0 + m_Font: {fileID: 0} + m_FontSize: 0 + m_FontStyle: 0 + m_Alignment: 0 + m_WordWrap: 0 + m_RichText: 1 + m_TextClipping: 1 + m_ImagePosition: 2 + m_ContentOffset: {x: 0, y: 0} + m_FixedWidth: 0 + m_FixedHeight: 10 + m_StretchWidth: 1 + m_StretchHeight: 0 + m_horizontalScrollbarThumb: + m_Name: horizontalscrollbarthumb + m_Normal: + m_Background: {fileID: 2800000, guid: 3e373dede195c4085a3ae1496bb42250, type: 3} + m_ScaledBackgrounds: [] + m_TextColor: {r: 0, g: 0, b: 0, a: 1} + m_Hover: + m_Background: {fileID: 2800000, guid: 97a5a50158f264781ad23b3c6f1e40ca, type: 3} + m_ScaledBackgrounds: [] + m_TextColor: {r: 0, g: 0, b: 0, a: 1} + m_Active: + m_Background: {fileID: 2800000, guid: 6d2cd34da746d4a9d866542eb553b6e4, type: 3} + m_ScaledBackgrounds: [] + m_TextColor: {r: 0, g: 0, b: 0, a: 1} + m_Focused: + m_Background: {fileID: 0} + m_ScaledBackgrounds: [] + m_TextColor: {r: 0, g: 0, b: 0, a: 1} + m_OnNormal: + m_Background: {fileID: 0} + m_ScaledBackgrounds: [] + m_TextColor: {r: 0, g: 0, b: 0, a: 1} + m_OnHover: + m_Background: {fileID: 0} + m_ScaledBackgrounds: [] + m_TextColor: {r: 0, g: 0, b: 0, a: 1} + m_OnActive: + m_Background: {fileID: 2800000, guid: 6d2cd34da746d4a9d866542eb553b6e4, type: 3} + m_ScaledBackgrounds: [] + m_TextColor: {r: 0, g: 0, b: 0, a: 1} + m_OnFocused: + m_Background: {fileID: 0} + m_ScaledBackgrounds: [] + m_TextColor: {r: 0, g: 0, b: 0, a: 1} + m_Border: + m_Left: 0 + m_Right: 0 + m_Top: 0 + m_Bottom: 0 + m_Margin: + m_Left: 0 + m_Right: 0 + m_Top: 0 + m_Bottom: 0 + m_Padding: + m_Left: 0 + m_Right: 0 + m_Top: 0 + m_Bottom: 0 + m_Overflow: + m_Left: 0 + m_Right: 0 + m_Top: 0 + m_Bottom: 0 + m_Font: {fileID: 0} + m_FontSize: 0 + m_FontStyle: 0 + m_Alignment: 0 + m_WordWrap: 0 + m_RichText: 1 + m_TextClipping: 1 + m_ImagePosition: 0 + m_ContentOffset: {x: 0, y: 0} + m_FixedWidth: 0 + m_FixedHeight: 0 + m_StretchWidth: 1 + m_StretchHeight: 0 + m_horizontalScrollbarLeftButton: + m_Name: horizontalscrollbarleftbutton + m_Normal: + m_Background: {fileID: 0} + m_ScaledBackgrounds: [] + m_TextColor: {r: 0, g: 0, b: 0, a: 1} + m_Hover: + m_Background: {fileID: 0} + m_ScaledBackgrounds: [] + m_TextColor: {r: 0, g: 0, b: 0, a: 1} + m_Active: + m_Background: {fileID: 0} + m_ScaledBackgrounds: [] + m_TextColor: {r: 0, g: 0, b: 0, a: 1} + m_Focused: + m_Background: {fileID: 0} + m_ScaledBackgrounds: [] + m_TextColor: {r: 0, g: 0, b: 0, a: 1} + m_OnNormal: + m_Background: {fileID: 0} + m_ScaledBackgrounds: [] + m_TextColor: {r: 0, g: 0, b: 0, a: 1} + m_OnHover: + m_Background: {fileID: 0} + m_ScaledBackgrounds: [] + m_TextColor: {r: 0, g: 0, b: 0, a: 1} + m_OnActive: + m_Background: {fileID: 0} + m_ScaledBackgrounds: [] + m_TextColor: {r: 0, g: 0, b: 0, a: 1} + m_OnFocused: + m_Background: {fileID: 0} + m_ScaledBackgrounds: [] + m_TextColor: {r: 0, g: 0, b: 0, a: 1} + m_Border: + m_Left: 0 + m_Right: 0 + m_Top: 0 + m_Bottom: 0 + m_Margin: + m_Left: 0 + m_Right: 0 + m_Top: 0 + m_Bottom: 0 + m_Padding: + m_Left: 0 + m_Right: 0 + m_Top: 0 + m_Bottom: 0 + m_Overflow: + m_Left: 0 + m_Right: 0 + m_Top: 0 + m_Bottom: 0 + m_Font: {fileID: 0} + m_FontSize: 0 + m_FontStyle: 0 + m_Alignment: 0 + m_WordWrap: 0 + m_RichText: 1 + m_TextClipping: 1 + m_ImagePosition: 0 + m_ContentOffset: {x: 0, y: 0} + m_FixedWidth: 0 + m_FixedHeight: 0 + m_StretchWidth: 1 + m_StretchHeight: 0 + m_horizontalScrollbarRightButton: + m_Name: horizontalscrollbarrightbutton + m_Normal: + m_Background: {fileID: 0} + m_ScaledBackgrounds: [] + m_TextColor: {r: 0, g: 0, b: 0, a: 1} + m_Hover: + m_Background: {fileID: 0} + m_ScaledBackgrounds: [] + m_TextColor: {r: 0, g: 0, b: 0, a: 1} + m_Active: + m_Background: {fileID: 0} + m_ScaledBackgrounds: [] + m_TextColor: {r: 0, g: 0, b: 0, a: 1} + m_Focused: + m_Background: {fileID: 0} + m_ScaledBackgrounds: [] + m_TextColor: {r: 0, g: 0, b: 0, a: 1} + m_OnNormal: + m_Background: {fileID: 0} + m_ScaledBackgrounds: [] + m_TextColor: {r: 0, g: 0, b: 0, a: 1} + m_OnHover: + m_Background: {fileID: 0} + m_ScaledBackgrounds: [] + m_TextColor: {r: 0, g: 0, b: 0, a: 1} + m_OnActive: + m_Background: {fileID: 0} + m_ScaledBackgrounds: [] + m_TextColor: {r: 0, g: 0, b: 0, a: 1} + m_OnFocused: + m_Background: {fileID: 0} + m_ScaledBackgrounds: [] + m_TextColor: {r: 0, g: 0, b: 0, a: 1} + m_Border: + m_Left: 0 + m_Right: 0 + m_Top: 0 + m_Bottom: 0 + m_Margin: + m_Left: 0 + m_Right: 0 + m_Top: 0 + m_Bottom: 0 + m_Padding: + m_Left: 0 + m_Right: 0 + m_Top: 0 + m_Bottom: 0 + m_Overflow: + m_Left: 0 + m_Right: 0 + m_Top: 0 + m_Bottom: 0 + m_Font: {fileID: 0} + m_FontSize: 0 + m_FontStyle: 0 + m_Alignment: 0 + m_WordWrap: 0 + m_RichText: 1 + m_TextClipping: 1 + m_ImagePosition: 0 + m_ContentOffset: {x: 0, y: 0} + m_FixedWidth: 0 + m_FixedHeight: 0 + m_StretchWidth: 1 + m_StretchHeight: 0 + m_verticalScrollbar: + m_Name: verticalscrollbar + m_Normal: + m_Background: {fileID: 0} + m_ScaledBackgrounds: [] + m_TextColor: {r: 0, g: 0, b: 0, a: 1} + m_Hover: + m_Background: {fileID: 0} + m_ScaledBackgrounds: [] + m_TextColor: {r: 0, g: 0, b: 0, a: 1} + m_Active: + m_Background: {fileID: 0} + m_ScaledBackgrounds: [] + m_TextColor: {r: 0, g: 0, b: 0, a: 1} + m_Focused: + m_Background: {fileID: 0} + m_ScaledBackgrounds: [] + m_TextColor: {r: 0, g: 0, b: 0, a: 1} + m_OnNormal: + m_Background: {fileID: 0} + m_ScaledBackgrounds: [] + m_TextColor: {r: 0, g: 0, b: 0, a: 1} + m_OnHover: + m_Background: {fileID: 0} + m_ScaledBackgrounds: [] + m_TextColor: {r: 0, g: 0, b: 0, a: 1} + m_OnActive: + m_Background: {fileID: 0} + m_ScaledBackgrounds: [] + m_TextColor: {r: 0, g: 0, b: 0, a: 1} + m_OnFocused: + m_Background: {fileID: 0} + m_ScaledBackgrounds: [] + m_TextColor: {r: 0, g: 0, b: 0, a: 1} + m_Border: + m_Left: 0 + m_Right: 0 + m_Top: 0 + m_Bottom: 0 + m_Margin: + m_Left: 0 + m_Right: 0 + m_Top: 0 + m_Bottom: 0 + m_Padding: + m_Left: 1 + m_Right: 1 + m_Top: 1 + m_Bottom: 0 + m_Overflow: + m_Left: 0 + m_Right: 0 + m_Top: 0 + m_Bottom: 0 + m_Font: {fileID: 0} + m_FontSize: 0 + m_FontStyle: 0 + m_Alignment: 0 + m_WordWrap: 0 + m_RichText: 1 + m_TextClipping: 1 + m_ImagePosition: 0 + m_ContentOffset: {x: 0, y: 0} + m_FixedWidth: 10 + m_FixedHeight: 0 + m_StretchWidth: 1 + m_StretchHeight: 0 + m_verticalScrollbarThumb: + m_Name: verticalscrollbarthumb + m_Normal: + m_Background: {fileID: 2800000, guid: a4f425e006f294707810114729423f89, type: 3} + m_ScaledBackgrounds: [] + m_TextColor: {r: 0, g: 0, b: 0, a: 1} + m_Hover: + m_Background: {fileID: 2800000, guid: 20a964b1a99084f27b7132c8b5927a9b, type: 3} + m_ScaledBackgrounds: [] + m_TextColor: {r: 0, g: 0, b: 0, a: 1} + m_Active: + m_Background: {fileID: 2800000, guid: 20972d7b57943448cbe4b74c701de84c, type: 3} + m_ScaledBackgrounds: [] + m_TextColor: {r: 0, g: 0, b: 0, a: 1} + m_Focused: + m_Background: {fileID: 0} + m_ScaledBackgrounds: [] + m_TextColor: {r: 0, g: 0, b: 0, a: 1} + m_OnNormal: + m_Background: {fileID: 0} + m_ScaledBackgrounds: [] + m_TextColor: {r: 0, g: 0, b: 0, a: 1} + m_OnHover: + m_Background: {fileID: 0} + m_ScaledBackgrounds: [] + m_TextColor: {r: 0, g: 0, b: 0, a: 1} + m_OnActive: + m_Background: {fileID: 2800000, guid: 6d2cd34da746d4a9d866542eb553b6e4, type: 3} + m_ScaledBackgrounds: [] + m_TextColor: {r: 0, g: 0, b: 0, a: 1} + m_OnFocused: + m_Background: {fileID: 0} + m_ScaledBackgrounds: [] + m_TextColor: {r: 0, g: 0, b: 0, a: 1} + m_Border: + m_Left: 3 + m_Right: 3 + m_Top: 3 + m_Bottom: 3 + m_Margin: + m_Left: 0 + m_Right: 0 + m_Top: 0 + m_Bottom: 0 + m_Padding: + m_Left: 0 + m_Right: 0 + m_Top: 0 + m_Bottom: 0 + m_Overflow: + m_Left: 0 + m_Right: 0 + m_Top: 0 + m_Bottom: 0 + m_Font: {fileID: 0} + m_FontSize: 0 + m_FontStyle: 0 + m_Alignment: 0 + m_WordWrap: 0 + m_RichText: 1 + m_TextClipping: 1 + m_ImagePosition: 2 + m_ContentOffset: {x: 0, y: 0} + m_FixedWidth: 8 + m_FixedHeight: 0 + m_StretchWidth: 0 + m_StretchHeight: 1 + m_verticalScrollbarUpButton: + m_Name: verticalscrollbarupbutton + m_Normal: + m_Background: {fileID: 0} + m_ScaledBackgrounds: [] + m_TextColor: {r: 0, g: 0, b: 0, a: 1} + m_Hover: + m_Background: {fileID: 0} + m_ScaledBackgrounds: [] + m_TextColor: {r: 0, g: 0, b: 0, a: 1} + m_Active: + m_Background: {fileID: 0} + m_ScaledBackgrounds: [] + m_TextColor: {r: 0, g: 0, b: 0, a: 1} + m_Focused: + m_Background: {fileID: 0} + m_ScaledBackgrounds: [] + m_TextColor: {r: 0, g: 0, b: 0, a: 1} + m_OnNormal: + m_Background: {fileID: 0} + m_ScaledBackgrounds: [] + m_TextColor: {r: 0, g: 0, b: 0, a: 1} + m_OnHover: + m_Background: {fileID: 0} + m_ScaledBackgrounds: [] + m_TextColor: {r: 0, g: 0, b: 0, a: 1} + m_OnActive: + m_Background: {fileID: 0} + m_ScaledBackgrounds: [] + m_TextColor: {r: 0, g: 0, b: 0, a: 1} + m_OnFocused: + m_Background: {fileID: 0} + m_ScaledBackgrounds: [] + m_TextColor: {r: 0, g: 0, b: 0, a: 1} + m_Border: + m_Left: 0 + m_Right: 0 + m_Top: 0 + m_Bottom: 0 + m_Margin: + m_Left: 0 + m_Right: 0 + m_Top: 0 + m_Bottom: 0 + m_Padding: + m_Left: 0 + m_Right: 0 + m_Top: 0 + m_Bottom: 0 + m_Overflow: + m_Left: 0 + m_Right: 0 + m_Top: 0 + m_Bottom: 0 + m_Font: {fileID: 0} + m_FontSize: 0 + m_FontStyle: 0 + m_Alignment: 0 + m_WordWrap: 0 + m_RichText: 1 + m_TextClipping: 1 + m_ImagePosition: 0 + m_ContentOffset: {x: 0, y: 0} + m_FixedWidth: 0 + m_FixedHeight: 0 + m_StretchWidth: 1 + m_StretchHeight: 0 + m_verticalScrollbarDownButton: + m_Name: verticalscrollbardownbutton + m_Normal: + m_Background: {fileID: 0} + m_ScaledBackgrounds: [] + m_TextColor: {r: 0, g: 0, b: 0, a: 1} + m_Hover: + m_Background: {fileID: 0} + m_ScaledBackgrounds: [] + m_TextColor: {r: 0, g: 0, b: 0, a: 1} + m_Active: + m_Background: {fileID: 0} + m_ScaledBackgrounds: [] + m_TextColor: {r: 0, g: 0, b: 0, a: 1} + m_Focused: + m_Background: {fileID: 0} + m_ScaledBackgrounds: [] + m_TextColor: {r: 0, g: 0, b: 0, a: 1} + m_OnNormal: + m_Background: {fileID: 0} + m_ScaledBackgrounds: [] + m_TextColor: {r: 0, g: 0, b: 0, a: 1} + m_OnHover: + m_Background: {fileID: 0} + m_ScaledBackgrounds: [] + m_TextColor: {r: 0, g: 0, b: 0, a: 1} + m_OnActive: + m_Background: {fileID: 0} + m_ScaledBackgrounds: [] + m_TextColor: {r: 0, g: 0, b: 0, a: 1} + m_OnFocused: + m_Background: {fileID: 0} + m_ScaledBackgrounds: [] + m_TextColor: {r: 0, g: 0, b: 0, a: 1} + m_Border: + m_Left: 0 + m_Right: 0 + m_Top: 0 + m_Bottom: 0 + m_Margin: + m_Left: 0 + m_Right: 0 + m_Top: 0 + m_Bottom: 0 + m_Padding: + m_Left: 0 + m_Right: 0 + m_Top: 0 + m_Bottom: 0 + m_Overflow: + m_Left: 0 + m_Right: 0 + m_Top: 0 + m_Bottom: 0 + m_Font: {fileID: 0} + m_FontSize: 0 + m_FontStyle: 0 + m_Alignment: 0 + m_WordWrap: 0 + m_RichText: 1 + m_TextClipping: 1 + m_ImagePosition: 0 + m_ContentOffset: {x: 0, y: 0} + m_FixedWidth: 0 + m_FixedHeight: 0 + m_StretchWidth: 1 + m_StretchHeight: 0 + m_ScrollView: + m_Name: scrollview + m_Normal: + m_Background: {fileID: 0} + m_ScaledBackgrounds: [] + m_TextColor: {r: 0, g: 0, b: 0, a: 1} + m_Hover: + m_Background: {fileID: 0} + m_ScaledBackgrounds: [] + m_TextColor: {r: 0, g: 0, b: 0, a: 1} + m_Active: + m_Background: {fileID: 0} + m_ScaledBackgrounds: [] + m_TextColor: {r: 0, g: 0, b: 0, a: 1} + m_Focused: + m_Background: {fileID: 0} + m_ScaledBackgrounds: [] + m_TextColor: {r: 0, g: 0, b: 0, a: 1} + m_OnNormal: + m_Background: {fileID: 0} + m_ScaledBackgrounds: [] + m_TextColor: {r: 0, g: 0, b: 0, a: 1} + m_OnHover: + m_Background: {fileID: 0} + m_ScaledBackgrounds: [] + m_TextColor: {r: 0, g: 0, b: 0, a: 1} + m_OnActive: + m_Background: {fileID: 0} + m_ScaledBackgrounds: [] + m_TextColor: {r: 0, g: 0, b: 0, a: 1} + m_OnFocused: + m_Background: {fileID: 0} + m_ScaledBackgrounds: [] + m_TextColor: {r: 0, g: 0, b: 0, a: 1} + m_Border: + m_Left: 0 + m_Right: 0 + m_Top: 0 + m_Bottom: 0 + m_Margin: + m_Left: 0 + m_Right: 0 + m_Top: 0 + m_Bottom: 0 + m_Padding: + m_Left: 0 + m_Right: 0 + m_Top: 0 + m_Bottom: 0 + m_Overflow: + m_Left: 0 + m_Right: 0 + m_Top: 0 + m_Bottom: 0 + m_Font: {fileID: 0} + m_FontSize: 0 + m_FontStyle: 0 + m_Alignment: 0 + m_WordWrap: 0 + m_RichText: 1 + m_TextClipping: 1 + m_ImagePosition: 0 + m_ContentOffset: {x: 0, y: 0} + m_FixedWidth: 0 + m_FixedHeight: 0 + m_StretchWidth: 0 + m_StretchHeight: 0 + m_CustomStyles: + - m_Name: Background + m_Normal: + m_Background: {fileID: 2800000, guid: 8ff0ba05dbfb243098375d63ee3e4901, type: 3} + m_ScaledBackgrounds: [] + m_TextColor: {r: 1, g: 1, b: 1, a: 1} + m_Hover: + m_Background: {fileID: 0} + m_ScaledBackgrounds: [] + m_TextColor: {r: 0, g: 0, b: 0, a: 1} + m_Active: + m_Background: {fileID: 0} + m_ScaledBackgrounds: [] + m_TextColor: {r: 0, g: 0, b: 0, a: 1} + m_Focused: + m_Background: {fileID: 0} + m_ScaledBackgrounds: [] + m_TextColor: {r: 0, g: 0, b: 0, a: 1} + m_OnNormal: + m_Background: {fileID: 0} + m_ScaledBackgrounds: [] + m_TextColor: {r: 0, g: 0, b: 0, a: 1} + m_OnHover: + m_Background: {fileID: 0} + m_ScaledBackgrounds: [] + m_TextColor: {r: 0, g: 0, b: 0, a: 1} + m_OnActive: + m_Background: {fileID: 0} + m_ScaledBackgrounds: [] + m_TextColor: {r: 0, g: 0, b: 0, a: 1} + m_OnFocused: + m_Background: {fileID: 0} + m_ScaledBackgrounds: [] + m_TextColor: {r: 0, g: 0, b: 0, a: 1} + m_Border: + m_Left: 0 + m_Right: 0 + m_Top: 0 + m_Bottom: 0 + m_Margin: + m_Left: 0 + m_Right: 0 + m_Top: 0 + m_Bottom: 0 + m_Padding: + m_Left: 0 + m_Right: 0 + m_Top: 0 + m_Bottom: 0 + m_Overflow: + m_Left: 0 + m_Right: 0 + m_Top: 0 + m_Bottom: 0 + m_Font: {fileID: 0} + m_FontSize: 12 + m_FontStyle: 0 + m_Alignment: 0 + m_WordWrap: 0 + m_RichText: 1 + m_TextClipping: 0 + m_ImagePosition: 0 + m_ContentOffset: {x: 0, y: 0} + m_FixedWidth: 0 + m_FixedHeight: 0 + m_StretchWidth: 0 + m_StretchHeight: 0 + - m_Name: CompletedElementBackground + m_Normal: + m_Background: {fileID: 2800000, guid: 28767434ebbb44a17a99da7d9f5cbd23, type: 3} + m_ScaledBackgrounds: + - {fileID: 2800000, guid: 83d52f0da8a5d474b98f940a8c9df772, type: 3} + m_TextColor: {r: 1, g: 1, b: 1, a: 1} + m_Hover: + m_Background: {fileID: 0} + m_ScaledBackgrounds: [] + m_TextColor: {r: 0, g: 0, b: 0, a: 1} + m_Active: + m_Background: {fileID: 0} + m_ScaledBackgrounds: [] + m_TextColor: {r: 0, g: 0, b: 0, a: 1} + m_Focused: + m_Background: {fileID: 0} + m_ScaledBackgrounds: [] + m_TextColor: {r: 0, g: 0, b: 0, a: 1} + m_OnNormal: + m_Background: {fileID: 0} + m_ScaledBackgrounds: [] + m_TextColor: {r: 0, g: 0, b: 0, a: 1} + m_OnHover: + m_Background: {fileID: 0} + m_ScaledBackgrounds: [] + m_TextColor: {r: 0, g: 0, b: 0, a: 1} + m_OnActive: + m_Background: {fileID: 0} + m_ScaledBackgrounds: [] + m_TextColor: {r: 0, g: 0, b: 0, a: 1} + m_OnFocused: + m_Background: {fileID: 0} + m_ScaledBackgrounds: [] + m_TextColor: {r: 0, g: 0, b: 0, a: 1} + m_Border: + m_Left: 8 + m_Right: 8 + m_Top: 8 + m_Bottom: 8 + m_Margin: + m_Left: 20 + m_Right: 20 + m_Top: 20 + m_Bottom: 0 + m_Padding: + m_Left: 0 + m_Right: 0 + m_Top: 0 + m_Bottom: 0 + m_Overflow: + m_Left: 0 + m_Right: 0 + m_Top: 0 + m_Bottom: 0 + m_Font: {fileID: 12800000, guid: 3bd23dacace3c4c7e9dfefbd3b55508c, type: 3} + m_FontSize: 13 + m_FontStyle: 0 + m_Alignment: 0 + m_WordWrap: 0 + m_RichText: 1 + m_TextClipping: 0 + m_ImagePosition: 0 + m_ContentOffset: {x: 0, y: 0} + m_FixedWidth: 0 + m_FixedHeight: 0 + m_StretchWidth: 1 + m_StretchHeight: 1 + - m_Name: ActiveElementBackground + m_Normal: + m_Background: {fileID: 2800000, guid: f5e7d4905fcf24920b520603413c3381, type: 3} + m_ScaledBackgrounds: + - {fileID: 2800000, guid: 8918f260658164dbc89eab6600be3d3d, type: 3} + m_TextColor: {r: 1, g: 1, b: 1, a: 1} + m_Hover: + m_Background: {fileID: 0} + m_ScaledBackgrounds: [] + m_TextColor: {r: 0, g: 0, b: 0, a: 1} + m_Active: + m_Background: {fileID: 0} + m_ScaledBackgrounds: [] + m_TextColor: {r: 0, g: 0, b: 0, a: 1} + m_Focused: + m_Background: {fileID: 0} + m_ScaledBackgrounds: [] + m_TextColor: {r: 0, g: 0, b: 0, a: 1} + m_OnNormal: + m_Background: {fileID: 0} + m_ScaledBackgrounds: [] + m_TextColor: {r: 0, g: 0, b: 0, a: 1} + m_OnHover: + m_Background: {fileID: 0} + m_ScaledBackgrounds: [] + m_TextColor: {r: 0, g: 0, b: 0, a: 1} + m_OnActive: + m_Background: {fileID: 0} + m_ScaledBackgrounds: [] + m_TextColor: {r: 0, g: 0, b: 0, a: 1} + m_OnFocused: + m_Background: {fileID: 0} + m_ScaledBackgrounds: [] + m_TextColor: {r: 0, g: 0, b: 0, a: 1} + m_Border: + m_Left: 8 + m_Right: 8 + m_Top: 4 + m_Bottom: 0 + m_Margin: + m_Left: 20 + m_Right: 20 + m_Top: 20 + m_Bottom: 0 + m_Padding: + m_Left: 0 + m_Right: 0 + m_Top: 0 + m_Bottom: 0 + m_Overflow: + m_Left: 0 + m_Right: 0 + m_Top: 0 + m_Bottom: 0 + m_Font: {fileID: 12800000, guid: 3bd23dacace3c4c7e9dfefbd3b55508c, type: 3} + m_FontSize: 13 + m_FontStyle: 0 + m_Alignment: 0 + m_WordWrap: 0 + m_RichText: 1 + m_TextClipping: 0 + m_ImagePosition: 0 + m_ContentOffset: {x: 0, y: 0} + m_FixedWidth: 0 + m_FixedHeight: 0 + m_StretchWidth: 1 + m_StretchHeight: 1 + - m_Name: InActiveElementBackground + m_Normal: + m_Background: {fileID: 2800000, guid: 4e3cd834d941d48d4beef214d3e94bf6, type: 3} + m_ScaledBackgrounds: + - {fileID: 2800000, guid: 80a3fbd7bf88d409fbd011ef9fe0980a, type: 3} + m_TextColor: {r: 0, g: 0, b: 0, a: 1} + m_Hover: + m_Background: {fileID: 0} + m_ScaledBackgrounds: [] + m_TextColor: {r: 0, g: 0, b: 0, a: 1} + m_Active: + m_Background: {fileID: 0} + m_ScaledBackgrounds: [] + m_TextColor: {r: 0, g: 0, b: 0, a: 1} + m_Focused: + m_Background: {fileID: 0} + m_ScaledBackgrounds: [] + m_TextColor: {r: 0, g: 0, b: 0, a: 1} + m_OnNormal: + m_Background: {fileID: 0} + m_ScaledBackgrounds: [] + m_TextColor: {r: 0, g: 0, b: 0, a: 1} + m_OnHover: + m_Background: {fileID: 0} + m_ScaledBackgrounds: [] + m_TextColor: {r: 0, g: 0, b: 0, a: 1} + m_OnActive: + m_Background: {fileID: 0} + m_ScaledBackgrounds: [] + m_TextColor: {r: 0, g: 0, b: 0, a: 1} + m_OnFocused: + m_Background: {fileID: 0} + m_ScaledBackgrounds: [] + m_TextColor: {r: 0, g: 0, b: 0, a: 1} + m_Border: + m_Left: 8 + m_Right: 8 + m_Top: 8 + m_Bottom: 8 + m_Margin: + m_Left: 25 + m_Right: 25 + m_Top: 20 + m_Bottom: 0 + m_Padding: + m_Left: 0 + m_Right: 0 + m_Top: 0 + m_Bottom: 0 + m_Overflow: + m_Left: 0 + m_Right: 0 + m_Top: 0 + m_Bottom: 0 + m_Font: {fileID: 12800000, guid: 3bd23dacace3c4c7e9dfefbd3b55508c, type: 3} + m_FontSize: 13 + m_FontStyle: 0 + m_Alignment: 0 + m_WordWrap: 0 + m_RichText: 1 + m_TextClipping: 0 + m_ImagePosition: 0 + m_ContentOffset: {x: 0, y: 0} + m_FixedWidth: 0 + m_FixedHeight: 0 + m_StretchWidth: 1 + m_StretchHeight: 1 + - m_Name: SectionTitleBackground + m_Normal: + m_Background: {fileID: 2800000, guid: 8ff0ba05dbfb243098375d63ee3e4901, type: 3} + m_ScaledBackgrounds: [] + m_TextColor: {r: 1, g: 1, b: 1, a: 1} + m_Hover: + m_Background: {fileID: 0} + m_ScaledBackgrounds: [] + m_TextColor: {r: 0, g: 0, b: 0, a: 1} + m_Active: + m_Background: {fileID: 0} + m_ScaledBackgrounds: [] + m_TextColor: {r: 0, g: 0, b: 0, a: 1} + m_Focused: + m_Background: {fileID: 0} + m_ScaledBackgrounds: [] + m_TextColor: {r: 0, g: 0, b: 0, a: 1} + m_OnNormal: + m_Background: {fileID: 0} + m_ScaledBackgrounds: [] + m_TextColor: {r: 0, g: 0, b: 0, a: 1} + m_OnHover: + m_Background: {fileID: 0} + m_ScaledBackgrounds: [] + m_TextColor: {r: 0, g: 0, b: 0, a: 1} + m_OnActive: + m_Background: {fileID: 0} + m_ScaledBackgrounds: [] + m_TextColor: {r: 0, g: 0, b: 0, a: 1} + m_OnFocused: + m_Background: {fileID: 0} + m_ScaledBackgrounds: [] + m_TextColor: {r: 0, g: 0, b: 0, a: 1} + m_Border: + m_Left: 0 + m_Right: 0 + m_Top: 0 + m_Bottom: 0 + m_Margin: + m_Left: 0 + m_Right: 0 + m_Top: 0 + m_Bottom: 0 + m_Padding: + m_Left: 0 + m_Right: 0 + m_Top: 0 + m_Bottom: 0 + m_Overflow: + m_Left: 0 + m_Right: 0 + m_Top: 0 + m_Bottom: 0 + m_Font: {fileID: 12800000, guid: 3bd23dacace3c4c7e9dfefbd3b55508c, type: 3} + m_FontSize: 32 + m_FontStyle: 0 + m_Alignment: 0 + m_WordWrap: 0 + m_RichText: 1 + m_TextClipping: 0 + m_ImagePosition: 0 + m_ContentOffset: {x: 0, y: 0} + m_FixedWidth: 0 + m_FixedHeight: 0 + m_StretchWidth: 0 + m_StretchHeight: 0 + - m_Name: ListBackground + m_Normal: + m_Background: {fileID: 2800000, guid: cc964b3c8225849b4a5a643bb26e0854, type: 3} + m_ScaledBackgrounds: [] + m_TextColor: {r: 1, g: 1, b: 1, a: 1} + m_Hover: + m_Background: {fileID: 0} + m_ScaledBackgrounds: [] + m_TextColor: {r: 0, g: 0, b: 0, a: 1} + m_Active: + m_Background: {fileID: 0} + m_ScaledBackgrounds: [] + m_TextColor: {r: 0, g: 0, b: 0, a: 1} + m_Focused: + m_Background: {fileID: 0} + m_ScaledBackgrounds: [] + m_TextColor: {r: 0, g: 0, b: 0, a: 1} + m_OnNormal: + m_Background: {fileID: 0} + m_ScaledBackgrounds: [] + m_TextColor: {r: 0, g: 0, b: 0, a: 1} + m_OnHover: + m_Background: {fileID: 0} + m_ScaledBackgrounds: [] + m_TextColor: {r: 0, g: 0, b: 0, a: 1} + m_OnActive: + m_Background: {fileID: 0} + m_ScaledBackgrounds: [] + m_TextColor: {r: 0, g: 0, b: 0, a: 1} + m_OnFocused: + m_Background: {fileID: 0} + m_ScaledBackgrounds: [] + m_TextColor: {r: 0, g: 0, b: 0, a: 1} + m_Border: + m_Left: 0 + m_Right: 0 + m_Top: 0 + m_Bottom: 0 + m_Margin: + m_Left: 0 + m_Right: 0 + m_Top: 0 + m_Bottom: 0 + m_Padding: + m_Left: 0 + m_Right: 0 + m_Top: 0 + m_Bottom: 16 + m_Overflow: + m_Left: 0 + m_Right: 0 + m_Top: 0 + m_Bottom: 0 + m_Font: {fileID: 12800000, guid: 3bd23dacace3c4c7e9dfefbd3b55508c, type: 3} + m_FontSize: 32 + m_FontStyle: 0 + m_Alignment: 0 + m_WordWrap: 0 + m_RichText: 1 + m_TextClipping: 0 + m_ImagePosition: 0 + m_ContentOffset: {x: 0, y: 0} + m_FixedWidth: 0 + m_FixedHeight: 0 + m_StretchWidth: 0 + m_StretchHeight: 0 + - m_Name: DarkBackground + m_Normal: + m_Background: {fileID: 2800000, guid: 8ff0ba05dbfb243098375d63ee3e4901, type: 3} + m_ScaledBackgrounds: [] + m_TextColor: {r: 1, g: 1, b: 1, a: 1} + m_Hover: + m_Background: {fileID: 0} + m_ScaledBackgrounds: [] + m_TextColor: {r: 0, g: 0, b: 0, a: 1} + m_Active: + m_Background: {fileID: 0} + m_ScaledBackgrounds: [] + m_TextColor: {r: 0, g: 0, b: 0, a: 1} + m_Focused: + m_Background: {fileID: 0} + m_ScaledBackgrounds: [] + m_TextColor: {r: 0, g: 0, b: 0, a: 1} + m_OnNormal: + m_Background: {fileID: 0} + m_ScaledBackgrounds: [] + m_TextColor: {r: 0, g: 0, b: 0, a: 1} + m_OnHover: + m_Background: {fileID: 0} + m_ScaledBackgrounds: [] + m_TextColor: {r: 0, g: 0, b: 0, a: 1} + m_OnActive: + m_Background: {fileID: 0} + m_ScaledBackgrounds: [] + m_TextColor: {r: 0, g: 0, b: 0, a: 1} + m_OnFocused: + m_Background: {fileID: 0} + m_ScaledBackgrounds: [] + m_TextColor: {r: 0, g: 0, b: 0, a: 1} + m_Border: + m_Left: 0 + m_Right: 0 + m_Top: 0 + m_Bottom: 0 + m_Margin: + m_Left: 0 + m_Right: 0 + m_Top: 0 + m_Bottom: 0 + m_Padding: + m_Left: 0 + m_Right: 0 + m_Top: 0 + m_Bottom: 0 + m_Overflow: + m_Left: 0 + m_Right: 0 + m_Top: 0 + m_Bottom: 0 + m_Font: {fileID: 12800000, guid: 3bd23dacace3c4c7e9dfefbd3b55508c, type: 3} + m_FontSize: 32 + m_FontStyle: 0 + m_Alignment: 0 + m_WordWrap: 0 + m_RichText: 1 + m_TextClipping: 0 + m_ImagePosition: 0 + m_ContentOffset: {x: 0, y: 0} + m_FixedWidth: 0 + m_FixedHeight: 0 + m_StretchWidth: 0 + m_StretchHeight: 0 + - m_Name: Header + m_Normal: + m_Background: {fileID: 0} + m_ScaledBackgrounds: [] + m_TextColor: {r: 0, g: 0.15686275, b: 0.20784314, a: 1} + m_Hover: + m_Background: {fileID: 0} + m_ScaledBackgrounds: [] + m_TextColor: {r: 0, g: 0, b: 0, a: 1} + m_Active: + m_Background: {fileID: 0} + m_ScaledBackgrounds: [] + m_TextColor: {r: 0, g: 0, b: 0, a: 1} + m_Focused: + m_Background: {fileID: 0} + m_ScaledBackgrounds: [] + m_TextColor: {r: 0, g: 0, b: 0, a: 1} + m_OnNormal: + m_Background: {fileID: 0} + m_ScaledBackgrounds: [] + m_TextColor: {r: 0, g: 0, b: 0, a: 1} + m_OnHover: + m_Background: {fileID: 0} + m_ScaledBackgrounds: [] + m_TextColor: {r: 0, g: 0, b: 0, a: 1} + m_OnActive: + m_Background: {fileID: 0} + m_ScaledBackgrounds: [] + m_TextColor: {r: 0, g: 0, b: 0, a: 1} + m_OnFocused: + m_Background: {fileID: 0} + m_ScaledBackgrounds: [] + m_TextColor: {r: 0, g: 0, b: 0, a: 1} + m_Border: + m_Left: 0 + m_Right: 0 + m_Top: 0 + m_Bottom: 0 + m_Margin: + m_Left: 0 + m_Right: 25 + m_Top: 0 + m_Bottom: 0 + m_Padding: + m_Left: 10 + m_Right: 0 + m_Top: 0 + m_Bottom: 0 + m_Overflow: + m_Left: 0 + m_Right: 0 + m_Top: 0 + m_Bottom: 0 + m_Font: {fileID: 0} + m_FontSize: 11 + m_FontStyle: 0 + m_Alignment: 6 + m_WordWrap: 0 + m_RichText: 1 + m_TextClipping: 0 + m_ImagePosition: 0 + m_ContentOffset: {x: 0, y: 0} + m_FixedWidth: 270 + m_FixedHeight: 0 + m_StretchWidth: 1 + m_StretchHeight: 0 + - m_Name: List + m_Normal: + m_Background: {fileID: 0} + m_ScaledBackgrounds: [] + m_TextColor: {r: 0, g: 0.15686275, b: 0.20784314, a: 1} + m_Hover: + m_Background: {fileID: 0} + m_ScaledBackgrounds: [] + m_TextColor: {r: 0, g: 0, b: 0, a: 1} + m_Active: + m_Background: {fileID: 0} + m_ScaledBackgrounds: [] + m_TextColor: {r: 0, g: 0, b: 0, a: 1} + m_Focused: + m_Background: {fileID: 0} + m_ScaledBackgrounds: [] + m_TextColor: {r: 0, g: 0, b: 0, a: 1} + m_OnNormal: + m_Background: {fileID: 0} + m_ScaledBackgrounds: [] + m_TextColor: {r: 0, g: 0, b: 0, a: 1} + m_OnHover: + m_Background: {fileID: 0} + m_ScaledBackgrounds: [] + m_TextColor: {r: 0, g: 0, b: 0, a: 1} + m_OnActive: + m_Background: {fileID: 0} + m_ScaledBackgrounds: [] + m_TextColor: {r: 0, g: 0, b: 0, a: 1} + m_OnFocused: + m_Background: {fileID: 0} + m_ScaledBackgrounds: [] + m_TextColor: {r: 0, g: 0, b: 0, a: 1} + m_Border: + m_Left: 0 + m_Right: 0 + m_Top: 0 + m_Bottom: 0 + m_Margin: + m_Left: 8 + m_Right: 12 + m_Top: 0 + m_Bottom: 8 + m_Padding: + m_Left: 0 + m_Right: 32 + m_Top: 0 + m_Bottom: 0 + m_Overflow: + m_Left: 0 + m_Right: 0 + m_Top: 0 + m_Bottom: 0 + m_Font: {fileID: 0} + m_FontSize: 12 + m_FontStyle: 0 + m_Alignment: 0 + m_WordWrap: 1 + m_RichText: 1 + m_TextClipping: 0 + m_ImagePosition: 0 + m_ContentOffset: {x: 0, y: 0} + m_FixedWidth: 0 + m_FixedHeight: 0 + m_StretchWidth: 0 + m_StretchHeight: 0 + - m_Name: ListPrefix + m_Normal: + m_Background: {fileID: 0} + m_ScaledBackgrounds: [] + m_TextColor: {r: 0, g: 0.15686275, b: 0.20784314, a: 1} + m_Hover: + m_Background: {fileID: 0} + m_ScaledBackgrounds: [] + m_TextColor: {r: 0, g: 0, b: 0, a: 1} + m_Active: + m_Background: {fileID: 0} + m_ScaledBackgrounds: [] + m_TextColor: {r: 0, g: 0, b: 0, a: 1} + m_Focused: + m_Background: {fileID: 0} + m_ScaledBackgrounds: [] + m_TextColor: {r: 0, g: 0, b: 0, a: 1} + m_OnNormal: + m_Background: {fileID: 0} + m_ScaledBackgrounds: [] + m_TextColor: {r: 0, g: 0, b: 0, a: 1} + m_OnHover: + m_Background: {fileID: 0} + m_ScaledBackgrounds: [] + m_TextColor: {r: 0, g: 0, b: 0, a: 1} + m_OnActive: + m_Background: {fileID: 0} + m_ScaledBackgrounds: [] + m_TextColor: {r: 0, g: 0, b: 0, a: 1} + m_OnFocused: + m_Background: {fileID: 0} + m_ScaledBackgrounds: [] + m_TextColor: {r: 0, g: 0, b: 0, a: 1} + m_Border: + m_Left: 0 + m_Right: 0 + m_Top: 0 + m_Bottom: 0 + m_Margin: + m_Left: 16 + m_Right: 0 + m_Top: 0 + m_Bottom: 8 + m_Padding: + m_Left: 32 + m_Right: 0 + m_Top: 0 + m_Bottom: 0 + m_Overflow: + m_Left: 0 + m_Right: 0 + m_Top: 0 + m_Bottom: 0 + m_Font: {fileID: 0} + m_FontSize: 12 + m_FontStyle: 0 + m_Alignment: 0 + m_WordWrap: 1 + m_RichText: 1 + m_TextClipping: 0 + m_ImagePosition: 0 + m_ContentOffset: {x: 0, y: 0} + m_FixedWidth: 0 + m_FixedHeight: 0 + m_StretchWidth: 0 + m_StretchHeight: 0 + - m_Name: Line + m_Normal: + m_Background: {fileID: 2800000, guid: 6d2cd34da746d4a9d866542eb553b6e4, type: 3} + m_ScaledBackgrounds: [] + m_TextColor: {r: 0, g: 0.15686275, b: 0.20784314, a: 1} + m_Hover: + m_Background: {fileID: 0} + m_ScaledBackgrounds: [] + m_TextColor: {r: 0, g: 0, b: 0, a: 1} + m_Active: + m_Background: {fileID: 0} + m_ScaledBackgrounds: [] + m_TextColor: {r: 0, g: 0, b: 0, a: 1} + m_Focused: + m_Background: {fileID: 0} + m_ScaledBackgrounds: [] + m_TextColor: {r: 0, g: 0, b: 0, a: 1} + m_OnNormal: + m_Background: {fileID: 0} + m_ScaledBackgrounds: [] + m_TextColor: {r: 0, g: 0, b: 0, a: 1} + m_OnHover: + m_Background: {fileID: 0} + m_ScaledBackgrounds: [] + m_TextColor: {r: 0, g: 0, b: 0, a: 1} + m_OnActive: + m_Background: {fileID: 0} + m_ScaledBackgrounds: [] + m_TextColor: {r: 0, g: 0, b: 0, a: 1} + m_OnFocused: + m_Background: {fileID: 0} + m_ScaledBackgrounds: [] + m_TextColor: {r: 0, g: 0, b: 0, a: 1} + m_Border: + m_Left: 0 + m_Right: 0 + m_Top: 0 + m_Bottom: 0 + m_Margin: + m_Left: 0 + m_Right: 0 + m_Top: 16 + m_Bottom: 16 + m_Padding: + m_Left: 0 + m_Right: 0 + m_Top: 0 + m_Bottom: 0 + m_Overflow: + m_Left: 0 + m_Right: 0 + m_Top: 0 + m_Bottom: 0 + m_Font: {fileID: 0} + m_FontSize: 0 + m_FontStyle: 0 + m_Alignment: 0 + m_WordWrap: 0 + m_RichText: 1 + m_TextClipping: 0 + m_ImagePosition: 0 + m_ContentOffset: {x: 0, y: 0} + m_FixedWidth: 766 + m_FixedHeight: 1 + m_StretchWidth: 0 + m_StretchHeight: 0 + - m_Name: Progress Label + m_Normal: + m_Background: {fileID: 0} + m_ScaledBackgrounds: [] + m_TextColor: {r: 0, g: 0.15686275, b: 0.20784314, a: 1} + m_Hover: + m_Background: {fileID: 0} + m_ScaledBackgrounds: [] + m_TextColor: {r: 0, g: 0, b: 0, a: 1} + m_Active: + m_Background: {fileID: 0} + m_ScaledBackgrounds: [] + m_TextColor: {r: 0, g: 0, b: 0, a: 1} + m_Focused: + m_Background: {fileID: 0} + m_ScaledBackgrounds: [] + m_TextColor: {r: 0, g: 0, b: 0, a: 1} + m_OnNormal: + m_Background: {fileID: 0} + m_ScaledBackgrounds: [] + m_TextColor: {r: 0, g: 0, b: 0, a: 1} + m_OnHover: + m_Background: {fileID: 0} + m_ScaledBackgrounds: [] + m_TextColor: {r: 0, g: 0, b: 0, a: 1} + m_OnActive: + m_Background: {fileID: 0} + m_ScaledBackgrounds: [] + m_TextColor: {r: 0, g: 0, b: 0, a: 1} + m_OnFocused: + m_Background: {fileID: 0} + m_ScaledBackgrounds: [] + m_TextColor: {r: 0, g: 0, b: 0, a: 1} + m_Border: + m_Left: 0 + m_Right: 0 + m_Top: 0 + m_Bottom: 0 + m_Margin: + m_Left: 12 + m_Right: 12 + m_Top: 8 + m_Bottom: 8 + m_Padding: + m_Left: 12 + m_Right: 12 + m_Top: 8 + m_Bottom: 12 + m_Overflow: + m_Left: 0 + m_Right: 0 + m_Top: 0 + m_Bottom: 0 + m_Font: {fileID: 12800000, guid: 3d03bbe560e914debbc510201929628b, type: 3} + m_FontSize: 16 + m_FontStyle: 0 + m_Alignment: 1 + m_WordWrap: 0 + m_RichText: 1 + m_TextClipping: 1 + m_ImagePosition: 0 + m_ContentOffset: {x: 0, y: 0} + m_FixedWidth: 0 + m_FixedHeight: 0 + m_StretchWidth: 0 + m_StretchHeight: 0 + - m_Name: Instruction Label + m_Normal: + m_Background: {fileID: 0} + m_ScaledBackgrounds: [] + m_TextColor: {r: 0, g: 0, b: 0, a: 1} + m_Hover: + m_Background: {fileID: 0} + m_ScaledBackgrounds: [] + m_TextColor: {r: 0, g: 0, b: 0, a: 1} + m_Active: + m_Background: {fileID: 0} + m_ScaledBackgrounds: [] + m_TextColor: {r: 0, g: 0, b: 0, a: 1} + m_Focused: + m_Background: {fileID: 0} + m_ScaledBackgrounds: [] + m_TextColor: {r: 0, g: 0, b: 0, a: 1} + m_OnNormal: + m_Background: {fileID: 0} + m_ScaledBackgrounds: [] + m_TextColor: {r: 0, g: 0, b: 0, a: 1} + m_OnHover: + m_Background: {fileID: 0} + m_ScaledBackgrounds: [] + m_TextColor: {r: 0, g: 0, b: 0, a: 1} + m_OnActive: + m_Background: {fileID: 0} + m_ScaledBackgrounds: [] + m_TextColor: {r: 0, g: 0, b: 0, a: 1} + m_OnFocused: + m_Background: {fileID: 0} + m_ScaledBackgrounds: [] + m_TextColor: {r: 0, g: 0, b: 0, a: 1} + m_Border: + m_Left: 0 + m_Right: 0 + m_Top: 0 + m_Bottom: 0 + m_Margin: + m_Left: 0 + m_Right: 0 + m_Top: 0 + m_Bottom: 0 + m_Padding: + m_Left: 5 + m_Right: 16 + m_Top: 10 + m_Bottom: 12 + m_Overflow: + m_Left: 0 + m_Right: 0 + m_Top: 0 + m_Bottom: 0 + m_Font: {fileID: 0} + m_FontSize: 12 + m_FontStyle: 1 + m_Alignment: 0 + m_WordWrap: 1 + m_RichText: 1 + m_TextClipping: 1 + m_ImagePosition: 0 + m_ContentOffset: {x: 0, y: 0} + m_FixedWidth: 0 + m_FixedHeight: 0 + m_StretchWidth: 0 + m_StretchHeight: 0 + - m_Name: NarrativeStyle + m_Normal: + m_Background: {fileID: 0} + m_ScaledBackgrounds: [] + m_TextColor: {r: 0.10196079, g: 0.10196079, b: 0.10196079, a: 1} + m_Hover: + m_Background: {fileID: 0} + m_ScaledBackgrounds: [] + m_TextColor: {r: 0, g: 0, b: 0, a: 1} + m_Active: + m_Background: {fileID: 0} + m_ScaledBackgrounds: [] + m_TextColor: {r: 0, g: 0, b: 0, a: 1} + m_Focused: + m_Background: {fileID: 0} + m_ScaledBackgrounds: [] + m_TextColor: {r: 0, g: 0, b: 0, a: 1} + m_OnNormal: + m_Background: {fileID: 0} + m_ScaledBackgrounds: [] + m_TextColor: {r: 0, g: 0, b: 0, a: 1} + m_OnHover: + m_Background: {fileID: 0} + m_ScaledBackgrounds: [] + m_TextColor: {r: 0, g: 0, b: 0, a: 1} + m_OnActive: + m_Background: {fileID: 0} + m_ScaledBackgrounds: [] + m_TextColor: {r: 0, g: 0, b: 0, a: 1} + m_OnFocused: + m_Background: {fileID: 0} + m_ScaledBackgrounds: [] + m_TextColor: {r: 0, g: 0, b: 0, a: 1} + m_Border: + m_Left: 0 + m_Right: 0 + m_Top: 0 + m_Bottom: 0 + m_Margin: + m_Left: 0 + m_Right: 0 + m_Top: 0 + m_Bottom: 0 + m_Padding: + m_Left: 20 + m_Right: 30 + m_Top: 20 + m_Bottom: 0 + m_Overflow: + m_Left: 0 + m_Right: 0 + m_Top: 0 + m_Bottom: 0 + m_Font: {fileID: 0} + m_FontSize: 12 + m_FontStyle: 0 + m_Alignment: 0 + m_WordWrap: 1 + m_RichText: 1 + m_TextClipping: 1 + m_ImagePosition: 0 + m_ContentOffset: {x: 0, y: 0} + m_FixedWidth: 0 + m_FixedHeight: 0 + m_StretchWidth: 0 + m_StretchHeight: 0 + - m_Name: SwitchTutorialStyle + m_Normal: + m_Background: {fileID: 0} + m_ScaledBackgrounds: [] + m_TextColor: {r: 0.13333334, g: 0.16862746, b: 0.21568628, a: 1} + m_Hover: + m_Background: {fileID: 0} + m_ScaledBackgrounds: [] + m_TextColor: {r: 0, g: 0, b: 0, a: 1} + m_Active: + m_Background: {fileID: 0} + m_ScaledBackgrounds: [] + m_TextColor: {r: 0, g: 0, b: 0, a: 1} + m_Focused: + m_Background: {fileID: 0} + m_ScaledBackgrounds: [] + m_TextColor: {r: 0, g: 0, b: 0, a: 1} + m_OnNormal: + m_Background: {fileID: 0} + m_ScaledBackgrounds: [] + m_TextColor: {r: 0, g: 0, b: 0, a: 1} + m_OnHover: + m_Background: {fileID: 0} + m_ScaledBackgrounds: [] + m_TextColor: {r: 0, g: 0, b: 0, a: 1} + m_OnActive: + m_Background: {fileID: 0} + m_ScaledBackgrounds: [] + m_TextColor: {r: 0, g: 0, b: 0, a: 1} + m_OnFocused: + m_Background: {fileID: 0} + m_ScaledBackgrounds: [] + m_TextColor: {r: 0, g: 0, b: 0, a: 1} + m_Border: + m_Left: 0 + m_Right: 0 + m_Top: 0 + m_Bottom: 0 + m_Margin: + m_Left: 0 + m_Right: 0 + m_Top: 0 + m_Bottom: 0 + m_Padding: + m_Left: 15 + m_Right: 15 + m_Top: 16 + m_Bottom: 16 + m_Overflow: + m_Left: 0 + m_Right: 0 + m_Top: 0 + m_Bottom: 0 + m_Font: {fileID: 0} + m_FontSize: 12 + m_FontStyle: 0 + m_Alignment: 0 + m_WordWrap: 1 + m_RichText: 1 + m_TextClipping: 1 + m_ImagePosition: 0 + m_ContentOffset: {x: 0, y: 0} + m_FixedWidth: 0 + m_FixedHeight: 0 + m_StretchWidth: 0 + m_StretchHeight: 0 + - m_Name: ImageStyle + m_Normal: + m_Background: {fileID: 2800000, guid: 5e343a45b8744448ca8a77715f0f2235, type: 3} + m_ScaledBackgrounds: [] + m_TextColor: {r: 0, g: 0, b: 0, a: 1} + m_Hover: + m_Background: {fileID: 0} + m_ScaledBackgrounds: [] + m_TextColor: {r: 0, g: 0, b: 0, a: 1} + m_Active: + m_Background: {fileID: 0} + m_ScaledBackgrounds: [] + m_TextColor: {r: 0, g: 0, b: 0, a: 1} + m_Focused: + m_Background: {fileID: 0} + m_ScaledBackgrounds: [] + m_TextColor: {r: 0, g: 0, b: 0, a: 1} + m_OnNormal: + m_Background: {fileID: 0} + m_ScaledBackgrounds: [] + m_TextColor: {r: 0, g: 0, b: 0, a: 1} + m_OnHover: + m_Background: {fileID: 0} + m_ScaledBackgrounds: [] + m_TextColor: {r: 0, g: 0, b: 0, a: 1} + m_OnActive: + m_Background: {fileID: 0} + m_ScaledBackgrounds: [] + m_TextColor: {r: 0, g: 0, b: 0, a: 1} + m_OnFocused: + m_Background: {fileID: 0} + m_ScaledBackgrounds: [] + m_TextColor: {r: 0, g: 0, b: 0, a: 1} + m_Border: + m_Left: 0 + m_Right: 0 + m_Top: 10 + m_Bottom: 0 + m_Margin: + m_Left: 0 + m_Right: 0 + m_Top: 0 + m_Bottom: 0 + m_Padding: + m_Left: 0 + m_Right: 0 + m_Top: 0 + m_Bottom: 0 + m_Overflow: + m_Left: 0 + m_Right: 0 + m_Top: 0 + m_Bottom: 0 + m_Font: {fileID: 0} + m_FontSize: 12 + m_FontStyle: 0 + m_Alignment: 0 + m_WordWrap: 1 + m_RichText: 1 + m_TextClipping: 1 + m_ImagePosition: 0 + m_ContentOffset: {x: 0, y: 0} + m_FixedWidth: 0 + m_FixedHeight: 0 + m_StretchWidth: 0 + m_StretchHeight: 0 + - m_Name: VideoStyle + m_Normal: + m_Background: {fileID: 2800000, guid: 5e343a45b8744448ca8a77715f0f2235, type: 3} + m_ScaledBackgrounds: [] + m_TextColor: {r: 0, g: 0, b: 0, a: 1} + m_Hover: + m_Background: {fileID: 0} + m_ScaledBackgrounds: [] + m_TextColor: {r: 0, g: 0, b: 0, a: 1} + m_Active: + m_Background: {fileID: 0} + m_ScaledBackgrounds: [] + m_TextColor: {r: 0, g: 0, b: 0, a: 1} + m_Focused: + m_Background: {fileID: 0} + m_ScaledBackgrounds: [] + m_TextColor: {r: 0, g: 0, b: 0, a: 1} + m_OnNormal: + m_Background: {fileID: 0} + m_ScaledBackgrounds: [] + m_TextColor: {r: 0, g: 0, b: 0, a: 1} + m_OnHover: + m_Background: {fileID: 0} + m_ScaledBackgrounds: [] + m_TextColor: {r: 0, g: 0, b: 0, a: 1} + m_OnActive: + m_Background: {fileID: 0} + m_ScaledBackgrounds: [] + m_TextColor: {r: 0, g: 0, b: 0, a: 1} + m_OnFocused: + m_Background: {fileID: 0} + m_ScaledBackgrounds: [] + m_TextColor: {r: 0, g: 0, b: 0, a: 1} + m_Border: + m_Left: 0 + m_Right: 0 + m_Top: 10 + m_Bottom: 0 + m_Margin: + m_Left: 0 + m_Right: 0 + m_Top: 0 + m_Bottom: 0 + m_Padding: + m_Left: 0 + m_Right: 0 + m_Top: 0 + m_Bottom: 0 + m_Overflow: + m_Left: 0 + m_Right: 0 + m_Top: 0 + m_Bottom: 0 + m_Font: {fileID: 0} + m_FontSize: 12 + m_FontStyle: 0 + m_Alignment: 0 + m_WordWrap: 1 + m_RichText: 1 + m_TextClipping: 1 + m_ImagePosition: 0 + m_ContentOffset: {x: 0, y: 0} + m_FixedWidth: 0 + m_FixedHeight: 0 + m_StretchWidth: 0 + m_StretchHeight: 0 + - m_Name: InstructionLabelIconNotCompleted + m_Normal: + m_Background: {fileID: 2800000, guid: 185156b425ccf41ed8c47a4c7c6d397d, type: 3} + m_ScaledBackgrounds: + - {fileID: 2800000, guid: ea38226a5bc604f73a8dd1dd7932038d, type: 3} + m_TextColor: {r: 0.5, g: 0.5, b: 0.5, a: 1} + m_Hover: + m_Background: {fileID: 0} + m_ScaledBackgrounds: [] + m_TextColor: {r: 0, g: 0, b: 0, a: 1} + m_Active: + m_Background: {fileID: 0} + m_ScaledBackgrounds: [] + m_TextColor: {r: 0, g: 0, b: 0, a: 1} + m_Focused: + m_Background: {fileID: 0} + m_ScaledBackgrounds: [] + m_TextColor: {r: 0, g: 0, b: 0, a: 1} + m_OnNormal: + m_Background: {fileID: 0} + m_ScaledBackgrounds: [] + m_TextColor: {r: 0, g: 0, b: 0, a: 1} + m_OnHover: + m_Background: {fileID: 0} + m_ScaledBackgrounds: [] + m_TextColor: {r: 0, g: 0, b: 0, a: 1} + m_OnActive: + m_Background: {fileID: 0} + m_ScaledBackgrounds: [] + m_TextColor: {r: 0, g: 0, b: 0, a: 1} + m_OnFocused: + m_Background: {fileID: 0} + m_ScaledBackgrounds: [] + m_TextColor: {r: 0, g: 0, b: 0, a: 1} + m_Border: + m_Left: 0 + m_Right: 0 + m_Top: 0 + m_Bottom: 0 + m_Margin: + m_Left: 12 + m_Right: 6 + m_Top: 8 + m_Bottom: 8 + m_Padding: + m_Left: 0 + m_Right: 0 + m_Top: 0 + m_Bottom: 0 + m_Overflow: + m_Left: 0 + m_Right: 0 + m_Top: 0 + m_Bottom: 0 + m_Font: {fileID: 12800000, guid: 0b62a4e35af744273a5e705f7ce7bcf8, type: 3} + m_FontSize: 13 + m_FontStyle: 0 + m_Alignment: 0 + m_WordWrap: 1 + m_RichText: 1 + m_TextClipping: 1 + m_ImagePosition: 0 + m_ContentOffset: {x: 0, y: 0} + m_FixedWidth: 18 + m_FixedHeight: 18 + m_StretchWidth: 0 + m_StretchHeight: 0 + - m_Name: InstructionLabelIconCompleted + m_Normal: + m_Background: {fileID: 2800000, guid: 4d3432c1ca29344e39c6363a16fc8db7, type: 3} + m_ScaledBackgrounds: + - {fileID: 2800000, guid: 0aff1b0c509b040509a27864d858f4f2, type: 3} + m_TextColor: {r: 0.5, g: 0.5, b: 0.5, a: 1} + m_Hover: + m_Background: {fileID: 0} + m_ScaledBackgrounds: [] + m_TextColor: {r: 0, g: 0, b: 0, a: 1} + m_Active: + m_Background: {fileID: 0} + m_ScaledBackgrounds: [] + m_TextColor: {r: 0, g: 0, b: 0, a: 1} + m_Focused: + m_Background: {fileID: 0} + m_ScaledBackgrounds: [] + m_TextColor: {r: 0, g: 0, b: 0, a: 1} + m_OnNormal: + m_Background: {fileID: 0} + m_ScaledBackgrounds: [] + m_TextColor: {r: 0, g: 0, b: 0, a: 1} + m_OnHover: + m_Background: {fileID: 0} + m_ScaledBackgrounds: [] + m_TextColor: {r: 0, g: 0, b: 0, a: 1} + m_OnActive: + m_Background: {fileID: 0} + m_ScaledBackgrounds: [] + m_TextColor: {r: 0, g: 0, b: 0, a: 1} + m_OnFocused: + m_Background: {fileID: 0} + m_ScaledBackgrounds: [] + m_TextColor: {r: 0, g: 0, b: 0, a: 1} + m_Border: + m_Left: 0 + m_Right: 0 + m_Top: 0 + m_Bottom: 0 + m_Margin: + m_Left: 12 + m_Right: 6 + m_Top: 8 + m_Bottom: 8 + m_Padding: + m_Left: 0 + m_Right: 0 + m_Top: 0 + m_Bottom: 0 + m_Overflow: + m_Left: 0 + m_Right: 0 + m_Top: 0 + m_Bottom: 0 + m_Font: {fileID: 12800000, guid: 0b62a4e35af744273a5e705f7ce7bcf8, type: 3} + m_FontSize: 13 + m_FontStyle: 0 + m_Alignment: 0 + m_WordWrap: 1 + m_RichText: 1 + m_TextClipping: 1 + m_ImagePosition: 0 + m_ContentOffset: {x: 0, y: 0} + m_FixedWidth: 18 + m_FixedHeight: 18 + m_StretchWidth: 0 + m_StretchHeight: 0 + - m_Name: Section Title Label + m_Normal: + m_Background: {fileID: 0} + m_ScaledBackgrounds: [] + m_TextColor: {r: 0.5, g: 0.5, b: 0.5, a: 1} + m_Hover: + m_Background: {fileID: 0} + m_ScaledBackgrounds: [] + m_TextColor: {r: 0, g: 0, b: 0, a: 1} + m_Active: + m_Background: {fileID: 0} + m_ScaledBackgrounds: [] + m_TextColor: {r: 0, g: 0, b: 0, a: 1} + m_Focused: + m_Background: {fileID: 0} + m_ScaledBackgrounds: [] + m_TextColor: {r: 0, g: 0, b: 0, a: 1} + m_OnNormal: + m_Background: {fileID: 0} + m_ScaledBackgrounds: [] + m_TextColor: {r: 0, g: 0, b: 0, a: 1} + m_OnHover: + m_Background: {fileID: 0} + m_ScaledBackgrounds: [] + m_TextColor: {r: 0, g: 0, b: 0, a: 1} + m_OnActive: + m_Background: {fileID: 0} + m_ScaledBackgrounds: [] + m_TextColor: {r: 0.49056602, g: 0.49056602, b: 0.49056602, a: 1} + m_OnFocused: + m_Background: {fileID: 0} + m_ScaledBackgrounds: [] + m_TextColor: {r: 0, g: 0, b: 0, a: 1} + m_Border: + m_Left: 0 + m_Right: 0 + m_Top: 0 + m_Bottom: 0 + m_Margin: + m_Left: 0 + m_Right: 0 + m_Top: 15 + m_Bottom: 0 + m_Padding: + m_Left: 15 + m_Right: 0 + m_Top: 15 + m_Bottom: 0 + m_Overflow: + m_Left: 0 + m_Right: 0 + m_Top: 0 + m_Bottom: 0 + m_Font: {fileID: 0} + m_FontSize: 12 + m_FontStyle: 1 + m_Alignment: 0 + m_WordWrap: 1 + m_RichText: 1 + m_TextClipping: 1 + m_ImagePosition: 0 + m_ContentOffset: {x: 0, y: 0} + m_FixedWidth: 320 + m_FixedHeight: 0 + m_StretchWidth: 0 + m_StretchHeight: 0 + - m_Name: TheInBetweenText + m_Normal: + m_Background: {fileID: 0} + m_ScaledBackgrounds: [] + m_TextColor: {r: 0.3018868, g: 0.3018868, b: 0.3018868, a: 1} + m_Hover: + m_Background: {fileID: 0} + m_ScaledBackgrounds: [] + m_TextColor: {r: 0, g: 0, b: 0, a: 1} + m_Active: + m_Background: {fileID: 0} + m_ScaledBackgrounds: [] + m_TextColor: {r: 0, g: 0, b: 0, a: 1} + m_Focused: + m_Background: {fileID: 0} + m_ScaledBackgrounds: [] + m_TextColor: {r: 0, g: 0, b: 0, a: 1} + m_OnNormal: + m_Background: {fileID: 0} + m_ScaledBackgrounds: [] + m_TextColor: {r: 0, g: 0, b: 0, a: 1} + m_OnHover: + m_Background: {fileID: 0} + m_ScaledBackgrounds: [] + m_TextColor: {r: 0, g: 0, b: 0, a: 1} + m_OnActive: + m_Background: {fileID: 0} + m_ScaledBackgrounds: [] + m_TextColor: {r: 0, g: 0, b: 0, a: 1} + m_OnFocused: + m_Background: {fileID: 0} + m_ScaledBackgrounds: [] + m_TextColor: {r: 0, g: 0, b: 0, a: 1} + m_Border: + m_Left: 0 + m_Right: 0 + m_Top: 0 + m_Bottom: 0 + m_Margin: + m_Left: 0 + m_Right: 0 + m_Top: 0 + m_Bottom: 0 + m_Padding: + m_Left: 26 + m_Right: 16 + m_Top: 0 + m_Bottom: 16 + m_Overflow: + m_Left: 0 + m_Right: 0 + m_Top: 0 + m_Bottom: 0 + m_Font: {fileID: 0} + m_FontSize: 11 + m_FontStyle: 0 + m_Alignment: 0 + m_WordWrap: 1 + m_RichText: 1 + m_TextClipping: 1 + m_ImagePosition: 0 + m_ContentOffset: {x: 0, y: 0} + m_FixedWidth: 0 + m_FixedHeight: 0 + m_StretchWidth: 0 + m_StretchHeight: 0 + - m_Name: TopBarBackground + m_Normal: + m_Background: {fileID: 2800000, guid: b2a2059210fe64eb9889e7a0673cb648, type: 3} + m_ScaledBackgrounds: + - {fileID: 2800000, guid: 47ac17b5af7694741ba8f250a83208f5, type: 3} + m_TextColor: {r: 0, g: 0.15686275, b: 0.20784314, a: 1} + m_Hover: + m_Background: {fileID: 0} + m_ScaledBackgrounds: [] + m_TextColor: {r: 0, g: 0, b: 0, a: 1} + m_Active: + m_Background: {fileID: 0} + m_ScaledBackgrounds: [] + m_TextColor: {r: 0, g: 0, b: 0, a: 1} + m_Focused: + m_Background: {fileID: 0} + m_ScaledBackgrounds: [] + m_TextColor: {r: 0, g: 0, b: 0, a: 1} + m_OnNormal: + m_Background: {fileID: 0} + m_ScaledBackgrounds: [] + m_TextColor: {r: 0, g: 0, b: 0, a: 1} + m_OnHover: + m_Background: {fileID: 0} + m_ScaledBackgrounds: [] + m_TextColor: {r: 0, g: 0, b: 0, a: 1} + m_OnActive: + m_Background: {fileID: 0} + m_ScaledBackgrounds: [] + m_TextColor: {r: 0, g: 0, b: 0, a: 1} + m_OnFocused: + m_Background: {fileID: 0} + m_ScaledBackgrounds: [] + m_TextColor: {r: 0, g: 0, b: 0, a: 1} + m_Border: + m_Left: 0 + m_Right: 0 + m_Top: 0 + m_Bottom: 0 + m_Margin: + m_Left: 0 + m_Right: 0 + m_Top: 0 + m_Bottom: 0 + m_Padding: + m_Left: 0 + m_Right: 0 + m_Top: 0 + m_Bottom: 0 + m_Overflow: + m_Left: 0 + m_Right: 0 + m_Top: 0 + m_Bottom: 0 + m_Font: {fileID: 12800000, guid: 50bd94b824b8b45fba86b73bed058964, type: 3} + m_FontSize: 12 + m_FontStyle: 0 + m_Alignment: 0 + m_WordWrap: 1 + m_RichText: 1 + m_TextClipping: 1 + m_ImagePosition: 0 + m_ContentOffset: {x: 0, y: 0} + m_FixedWidth: 0 + m_FixedHeight: 32 + m_StretchWidth: 0 + m_StretchHeight: 0 + - m_Name: IconButtonBack + m_Normal: + m_Background: {fileID: 2800000, guid: ef5f0dd32d2ca4515bc67c2c529e3957, type: 3} + m_ScaledBackgrounds: + - {fileID: 2800000, guid: e89e108886152440988fd1ce6c7318d5, type: 3} + m_TextColor: {r: 0, g: 0.15686275, b: 0.20784314, a: 1} + m_Hover: + m_Background: {fileID: 0} + m_ScaledBackgrounds: [] + m_TextColor: {r: 0, g: 0, b: 0, a: 1} + m_Active: + m_Background: {fileID: 0} + m_ScaledBackgrounds: [] + m_TextColor: {r: 0, g: 0, b: 0, a: 1} + m_Focused: + m_Background: {fileID: 0} + m_ScaledBackgrounds: [] + m_TextColor: {r: 1, g: 0, b: 0, a: 1} + m_OnNormal: + m_Background: {fileID: 0} + m_ScaledBackgrounds: [] + m_TextColor: {r: 1, g: 0, b: 0, a: 1} + m_OnHover: + m_Background: {fileID: 0} + m_ScaledBackgrounds: [] + m_TextColor: {r: 1, g: 0, b: 0, a: 1} + m_OnActive: + m_Background: {fileID: 0} + m_ScaledBackgrounds: [] + m_TextColor: {r: 0, g: 0, b: 0, a: 1} + m_OnFocused: + m_Background: {fileID: 0} + m_ScaledBackgrounds: [] + m_TextColor: {r: 1, g: 0, b: 0, a: 1} + m_Border: + m_Left: 0 + m_Right: 0 + m_Top: 0 + m_Bottom: 0 + m_Margin: + m_Left: 8 + m_Right: 8 + m_Top: 8 + m_Bottom: 8 + m_Padding: + m_Left: 0 + m_Right: 0 + m_Top: 0 + m_Bottom: 0 + m_Overflow: + m_Left: 0 + m_Right: 0 + m_Top: 0 + m_Bottom: 0 + m_Font: {fileID: 12800000, guid: 50bd94b824b8b45fba86b73bed058964, type: 3} + m_FontSize: 16 + m_FontStyle: 0 + m_Alignment: 0 + m_WordWrap: 1 + m_RichText: 1 + m_TextClipping: 1 + m_ImagePosition: 0 + m_ContentOffset: {x: 0, y: 0} + m_FixedWidth: 15 + m_FixedHeight: 15 + m_StretchWidth: 0 + m_StretchHeight: 0 + - m_Name: IconButtonReset + m_Normal: + m_Background: {fileID: 2800000, guid: 570335cdb790d4eea895da9be0d9278d, type: 3} + m_ScaledBackgrounds: + - {fileID: 2800000, guid: 8adc141dbbf6549b5a417446a966e4c7, type: 3} + m_TextColor: {r: 0, g: 0.15686275, b: 0.20784314, a: 1} + m_Hover: + m_Background: {fileID: 0} + m_ScaledBackgrounds: [] + m_TextColor: {r: 0, g: 0, b: 0, a: 1} + m_Active: + m_Background: {fileID: 0} + m_ScaledBackgrounds: [] + m_TextColor: {r: 0, g: 0, b: 0, a: 1} + m_Focused: + m_Background: {fileID: 0} + m_ScaledBackgrounds: [] + m_TextColor: {r: 1, g: 0, b: 0, a: 1} + m_OnNormal: + m_Background: {fileID: 0} + m_ScaledBackgrounds: [] + m_TextColor: {r: 1, g: 0, b: 0, a: 1} + m_OnHover: + m_Background: {fileID: 0} + m_ScaledBackgrounds: [] + m_TextColor: {r: 1, g: 0, b: 0, a: 1} + m_OnActive: + m_Background: {fileID: 0} + m_ScaledBackgrounds: [] + m_TextColor: {r: 0, g: 0, b: 0, a: 1} + m_OnFocused: + m_Background: {fileID: 0} + m_ScaledBackgrounds: [] + m_TextColor: {r: 1, g: 0, b: 0, a: 1} + m_Border: + m_Left: 0 + m_Right: 0 + m_Top: 0 + m_Bottom: 0 + m_Margin: + m_Left: 8 + m_Right: 8 + m_Top: 8 + m_Bottom: 8 + m_Padding: + m_Left: 0 + m_Right: 0 + m_Top: 0 + m_Bottom: 0 + m_Overflow: + m_Left: 0 + m_Right: 0 + m_Top: 0 + m_Bottom: 0 + m_Font: {fileID: 12800000, guid: 50bd94b824b8b45fba86b73bed058964, type: 3} + m_FontSize: 16 + m_FontStyle: 0 + m_Alignment: 0 + m_WordWrap: 1 + m_RichText: 1 + m_TextClipping: 1 + m_ImagePosition: 0 + m_ContentOffset: {x: 0, y: 0} + m_FixedWidth: 15 + m_FixedHeight: 15 + m_StretchWidth: 0 + m_StretchHeight: 0 + - m_Name: IconButtonHome + m_Normal: + m_Background: {fileID: 2800000, guid: 55c8cc15dc72144d1926379d0e25216c, type: 3} + m_ScaledBackgrounds: + - {fileID: 2800000, guid: 9fc48046a3d2c46e3b9de298068bf5a6, type: 3} + m_TextColor: {r: 0, g: 0.15686275, b: 0.20784314, a: 1} + m_Hover: + m_Background: {fileID: 0} + m_ScaledBackgrounds: [] + m_TextColor: {r: 0, g: 0, b: 0, a: 1} + m_Active: + m_Background: {fileID: 0} + m_ScaledBackgrounds: [] + m_TextColor: {r: 0, g: 0, b: 0, a: 1} + m_Focused: + m_Background: {fileID: 0} + m_ScaledBackgrounds: [] + m_TextColor: {r: 1, g: 0, b: 0, a: 1} + m_OnNormal: + m_Background: {fileID: 0} + m_ScaledBackgrounds: [] + m_TextColor: {r: 1, g: 0, b: 0, a: 1} + m_OnHover: + m_Background: {fileID: 0} + m_ScaledBackgrounds: [] + m_TextColor: {r: 1, g: 0, b: 0, a: 1} + m_OnActive: + m_Background: {fileID: 0} + m_ScaledBackgrounds: [] + m_TextColor: {r: 0, g: 0, b: 0, a: 1} + m_OnFocused: + m_Background: {fileID: 0} + m_ScaledBackgrounds: [] + m_TextColor: {r: 1, g: 0, b: 0, a: 1} + m_Border: + m_Left: 0 + m_Right: 0 + m_Top: 0 + m_Bottom: 0 + m_Margin: + m_Left: 8 + m_Right: 8 + m_Top: 8 + m_Bottom: 8 + m_Padding: + m_Left: 0 + m_Right: 0 + m_Top: 0 + m_Bottom: 0 + m_Overflow: + m_Left: 0 + m_Right: 0 + m_Top: 0 + m_Bottom: 0 + m_Font: {fileID: 12800000, guid: 50bd94b824b8b45fba86b73bed058964, type: 3} + m_FontSize: 16 + m_FontStyle: 0 + m_Alignment: 0 + m_WordWrap: 1 + m_RichText: 1 + m_TextClipping: 1 + m_ImagePosition: 0 + m_ContentOffset: {x: 0, y: 0} + m_FixedWidth: 15 + m_FixedHeight: 15 + m_StretchWidth: 0 + m_StretchHeight: 0 + - m_Name: IconButtonClose + m_Normal: + m_Background: {fileID: 2800000, guid: 8d7409fc2e9484a3c84d9967d5a31369, type: 3} + m_ScaledBackgrounds: + - {fileID: 2800000, guid: b717990a4caf74cb2a9b2b14f95d3b66, type: 3} + m_TextColor: {r: 0, g: 0.15686275, b: 0.20784314, a: 1} + m_Hover: + m_Background: {fileID: 2800000, guid: 234e6aff61fd541cd9024e99a9058630, type: 3} + m_ScaledBackgrounds: + - {fileID: 2800000, guid: de3539277c1e348e4a98dea03b8327a5, type: 3} + m_TextColor: {r: 0, g: 0, b: 0, a: 1} + m_Active: + m_Background: {fileID: 0} + m_ScaledBackgrounds: [] + m_TextColor: {r: 0, g: 0, b: 0, a: 1} + m_Focused: + m_Background: {fileID: 0} + m_ScaledBackgrounds: [] + m_TextColor: {r: 1, g: 0, b: 0, a: 1} + m_OnNormal: + m_Background: {fileID: 0} + m_ScaledBackgrounds: [] + m_TextColor: {r: 1, g: 0, b: 0, a: 1} + m_OnHover: + m_Background: {fileID: 0} + m_ScaledBackgrounds: [] + m_TextColor: {r: 1, g: 0, b: 0, a: 1} + m_OnActive: + m_Background: {fileID: 0} + m_ScaledBackgrounds: [] + m_TextColor: {r: 0, g: 0, b: 0, a: 1} + m_OnFocused: + m_Background: {fileID: 0} + m_ScaledBackgrounds: [] + m_TextColor: {r: 1, g: 0, b: 0, a: 1} + m_Border: + m_Left: 0 + m_Right: 0 + m_Top: 0 + m_Bottom: 0 + m_Margin: + m_Left: 8 + m_Right: 8 + m_Top: 8 + m_Bottom: 8 + m_Padding: + m_Left: 0 + m_Right: 0 + m_Top: 0 + m_Bottom: 0 + m_Overflow: + m_Left: 0 + m_Right: 0 + m_Top: 0 + m_Bottom: 0 + m_Font: {fileID: 12800000, guid: 50bd94b824b8b45fba86b73bed058964, type: 3} + m_FontSize: 16 + m_FontStyle: 0 + m_Alignment: 0 + m_WordWrap: 1 + m_RichText: 1 + m_TextClipping: 1 + m_ImagePosition: 0 + m_ContentOffset: {x: 0, y: 0} + m_FixedWidth: 18 + m_FixedHeight: 18 + m_StretchWidth: 0 + m_StretchHeight: 0 + - m_Name: BGTheInBetweenText + m_Normal: + m_Background: {fileID: 2800000, guid: 8cc2f1fa74db94cdfbb0b8147960ccb1, type: 3} + m_ScaledBackgrounds: + - {fileID: 2800000, guid: b7b3cc7754dfe4180be5a16f709a9267, type: 3} + m_TextColor: {r: 0, g: 0.15686275, b: 0.20784314, a: 1} + m_Hover: + m_Background: {fileID: 0} + m_ScaledBackgrounds: [] + m_TextColor: {r: 0, g: 0, b: 0, a: 1} + m_Active: + m_Background: {fileID: 0} + m_ScaledBackgrounds: [] + m_TextColor: {r: 1, g: 0, b: 0, a: 1} + m_Focused: + m_Background: {fileID: 0} + m_ScaledBackgrounds: [] + m_TextColor: {r: 1, g: 0, b: 0, a: 1} + m_OnNormal: + m_Background: {fileID: 0} + m_ScaledBackgrounds: [] + m_TextColor: {r: 1, g: 0, b: 0, a: 1} + m_OnHover: + m_Background: {fileID: 0} + m_ScaledBackgrounds: [] + m_TextColor: {r: 1, g: 0, b: 0, a: 1} + m_OnActive: + m_Background: {fileID: 0} + m_ScaledBackgrounds: [] + m_TextColor: {r: 1, g: 0, b: 0, a: 1} + m_OnFocused: + m_Background: {fileID: 0} + m_ScaledBackgrounds: [] + m_TextColor: {r: 1, g: 0, b: 0, a: 1} + m_Border: + m_Left: 10 + m_Right: 10 + m_Top: 10 + m_Bottom: 10 + m_Margin: + m_Left: 20 + m_Right: 20 + m_Top: 0 + m_Bottom: 0 + m_Padding: + m_Left: 14 + m_Right: 14 + m_Top: 0 + m_Bottom: 0 + m_Overflow: + m_Left: 0 + m_Right: 0 + m_Top: 0 + m_Bottom: 0 + m_Font: {fileID: 12800000, guid: 50bd94b824b8b45fba86b73bed058964, type: 3} + m_FontSize: 11 + m_FontStyle: 0 + m_Alignment: 0 + m_WordWrap: 1 + m_RichText: 1 + m_TextClipping: 1 + m_ImagePosition: 0 + m_ContentOffset: {x: 0, y: 0} + m_FixedWidth: 0 + m_FixedHeight: 0 + m_StretchWidth: 0 + m_StretchHeight: 0 + - m_Name: BGTheInBetweenTextNotActiveOrCompleted + m_Normal: + m_Background: {fileID: 2800000, guid: 8ff0ba05dbfb243098375d63ee3e4901, type: 3} + m_ScaledBackgrounds: [] + m_TextColor: {r: 0, g: 0.15686275, b: 0.20784314, a: 1} + m_Hover: + m_Background: {fileID: 0} + m_ScaledBackgrounds: [] + m_TextColor: {r: 0, g: 0, b: 0, a: 1} + m_Active: + m_Background: {fileID: 0} + m_ScaledBackgrounds: [] + m_TextColor: {r: 1, g: 0, b: 0, a: 1} + m_Focused: + m_Background: {fileID: 0} + m_ScaledBackgrounds: [] + m_TextColor: {r: 1, g: 0, b: 0, a: 1} + m_OnNormal: + m_Background: {fileID: 0} + m_ScaledBackgrounds: [] + m_TextColor: {r: 1, g: 0, b: 0, a: 1} + m_OnHover: + m_Background: {fileID: 0} + m_ScaledBackgrounds: [] + m_TextColor: {r: 1, g: 0, b: 0, a: 1} + m_OnActive: + m_Background: {fileID: 0} + m_ScaledBackgrounds: [] + m_TextColor: {r: 1, g: 0, b: 0, a: 1} + m_OnFocused: + m_Background: {fileID: 0} + m_ScaledBackgrounds: [] + m_TextColor: {r: 1, g: 0, b: 0, a: 1} + m_Border: + m_Left: 8 + m_Right: 8 + m_Top: 8 + m_Bottom: 8 + m_Margin: + m_Left: 20 + m_Right: 20 + m_Top: 0 + m_Bottom: 0 + m_Padding: + m_Left: 14 + m_Right: 14 + m_Top: 10 + m_Bottom: 0 + m_Overflow: + m_Left: 0 + m_Right: 0 + m_Top: 0 + m_Bottom: 0 + m_Font: {fileID: 12800000, guid: 50bd94b824b8b45fba86b73bed058964, type: 3} + m_FontSize: 11 + m_FontStyle: 0 + m_Alignment: 0 + m_WordWrap: 1 + m_RichText: 1 + m_TextClipping: 1 + m_ImagePosition: 0 + m_ContentOffset: {x: 0, y: 0} + m_FixedWidth: 0 + m_FixedHeight: 0 + m_StretchWidth: 0 + m_StretchHeight: 0 + - m_Name: Footer + m_Normal: + m_Background: {fileID: 0} + m_ScaledBackgrounds: [] + m_TextColor: {r: 0, g: 0, b: 0, a: 1} + m_Hover: + m_Background: {fileID: 0} + m_ScaledBackgrounds: [] + m_TextColor: {r: 0, g: 0, b: 0, a: 1} + m_Active: + m_Background: {fileID: 0} + m_ScaledBackgrounds: [] + m_TextColor: {r: 0, g: 0, b: 0, a: 1} + m_Focused: + m_Background: {fileID: 0} + m_ScaledBackgrounds: [] + m_TextColor: {r: 0, g: 0, b: 0, a: 1} + m_OnNormal: + m_Background: {fileID: 0} + m_ScaledBackgrounds: [] + m_TextColor: {r: 0, g: 0, b: 0, a: 1} + m_OnHover: + m_Background: {fileID: 0} + m_ScaledBackgrounds: [] + m_TextColor: {r: 0, g: 0, b: 0, a: 1} + m_OnActive: + m_Background: {fileID: 0} + m_ScaledBackgrounds: [] + m_TextColor: {r: 0, g: 0, b: 0, a: 1} + m_OnFocused: + m_Background: {fileID: 0} + m_ScaledBackgrounds: [] + m_TextColor: {r: 0, g: 0, b: 0, a: 1} + m_Border: + m_Left: 0 + m_Right: 0 + m_Top: 0 + m_Bottom: 0 + m_Margin: + m_Left: 0 + m_Right: 0 + m_Top: 0 + m_Bottom: 0 + m_Padding: + m_Left: 0 + m_Right: 0 + m_Top: 8 + m_Bottom: 0 + m_Overflow: + m_Left: 0 + m_Right: 0 + m_Top: 0 + m_Bottom: 0 + m_Font: {fileID: 0} + m_FontSize: 0 + m_FontStyle: 0 + m_Alignment: 0 + m_WordWrap: 0 + m_RichText: 1 + m_TextClipping: 0 + m_ImagePosition: 0 + m_ContentOffset: {x: 0, y: 0} + m_FixedWidth: 0 + m_FixedHeight: 40 + m_StretchWidth: 1 + m_StretchHeight: 0 + - m_Name: PaginationLabel + m_Normal: + m_Background: {fileID: 0} + m_ScaledBackgrounds: [] + m_TextColor: {r: 0.33962262, g: 0.33962262, b: 0.33962262, a: 1} + m_Hover: + m_Background: {fileID: 0} + m_ScaledBackgrounds: [] + m_TextColor: {r: 0, g: 0, b: 0, a: 1} + m_Active: + m_Background: {fileID: 0} + m_ScaledBackgrounds: [] + m_TextColor: {r: 0, g: 0, b: 0, a: 1} + m_Focused: + m_Background: {fileID: 0} + m_ScaledBackgrounds: [] + m_TextColor: {r: 0, g: 0, b: 0, a: 1} + m_OnNormal: + m_Background: {fileID: 0} + m_ScaledBackgrounds: [] + m_TextColor: {r: 0, g: 0, b: 0, a: 1} + m_OnHover: + m_Background: {fileID: 0} + m_ScaledBackgrounds: [] + m_TextColor: {r: 0, g: 0, b: 0, a: 1} + m_OnActive: + m_Background: {fileID: 0} + m_ScaledBackgrounds: [] + m_TextColor: {r: 0, g: 0, b: 0, a: 1} + m_OnFocused: + m_Background: {fileID: 0} + m_ScaledBackgrounds: [] + m_TextColor: {r: 0, g: 0, b: 0, a: 1} + m_Border: + m_Left: 0 + m_Right: 0 + m_Top: 0 + m_Bottom: 0 + m_Margin: + m_Left: 0 + m_Right: 0 + m_Top: 0 + m_Bottom: 0 + m_Padding: + m_Left: 0 + m_Right: 0 + m_Top: 0 + m_Bottom: 0 + m_Overflow: + m_Left: 0 + m_Right: 0 + m_Top: 0 + m_Bottom: 0 + m_Font: {fileID: 0} + m_FontSize: 10 + m_FontStyle: 1 + m_Alignment: 4 + m_WordWrap: 0 + m_RichText: 1 + m_TextClipping: 0 + m_ImagePosition: 0 + m_ContentOffset: {x: 0, y: 0} + m_FixedWidth: 100 + m_FixedHeight: 0 + m_StretchWidth: 0 + m_StretchHeight: 1 + - m_Name: NextButton + m_Normal: + m_Background: {fileID: 2800000, guid: 878645da069e34c5088b3d7c3c2ef90f, type: 3} + m_ScaledBackgrounds: + - {fileID: 2800000, guid: c56208a8909c14f8095890748f300344, type: 3} + m_TextColor: {r: 1, g: 1, b: 1, a: 1} + m_Hover: + m_Background: {fileID: 0} + m_ScaledBackgrounds: [] + m_TextColor: {r: 1, g: 1, b: 1, a: 1} + m_Active: + m_Background: {fileID: 2800000, guid: f1cb0ff35acd64d9b8e5979aeac4991a, type: 3} + m_ScaledBackgrounds: [] + m_TextColor: {r: 1, g: 1, b: 1, a: 1} + m_Focused: + m_Background: {fileID: 0} + m_ScaledBackgrounds: [] + m_TextColor: {r: 1, g: 1, b: 1, a: 1} + m_OnNormal: + m_Background: {fileID: 0} + m_ScaledBackgrounds: [] + m_TextColor: {r: 1, g: 1, b: 1, a: 1} + m_OnHover: + m_Background: {fileID: 0} + m_ScaledBackgrounds: [] + m_TextColor: {r: 1, g: 1, b: 1, a: 1} + m_OnActive: + m_Background: {fileID: 0} + m_ScaledBackgrounds: [] + m_TextColor: {r: 1, g: 1, b: 1, a: 1} + m_OnFocused: + m_Background: {fileID: 0} + m_ScaledBackgrounds: [] + m_TextColor: {r: 1, g: 1, b: 1, a: 1} + m_Border: + m_Left: 8 + m_Right: 8 + m_Top: 8 + m_Bottom: 10 + m_Margin: + m_Left: 0 + m_Right: 12 + m_Top: 0 + m_Bottom: 0 + m_Padding: + m_Left: 8 + m_Right: 8 + m_Top: 6 + m_Bottom: 10 + m_Overflow: + m_Left: 0 + m_Right: 0 + m_Top: 0 + m_Bottom: 0 + m_Font: {fileID: 0} + m_FontSize: 12 + m_FontStyle: 1 + m_Alignment: 4 + m_WordWrap: 0 + m_RichText: 1 + m_TextClipping: 0 + m_ImagePosition: 0 + m_ContentOffset: {x: 0, y: 0} + m_FixedWidth: 70 + m_FixedHeight: 30 + m_StretchWidth: 0 + m_StretchHeight: 1 + - m_Name: NextButtonDisabled + m_Normal: + m_Background: {fileID: 2800000, guid: 53593955dae60460489d1a8bfd694d52, type: 3} + m_ScaledBackgrounds: + - {fileID: 2800000, guid: 6d09959d126db47b9987c1405b0595bc, type: 3} + m_TextColor: {r: 0.8627451, g: 0.94509804, b: 1, a: 1} + m_Hover: + m_Background: {fileID: 0} + m_ScaledBackgrounds: [] + m_TextColor: {r: 1, g: 1, b: 1, a: 1} + m_Active: + m_Background: {fileID: 0} + m_ScaledBackgrounds: [] + m_TextColor: {r: 1, g: 1, b: 1, a: 1} + m_Focused: + m_Background: {fileID: 0} + m_ScaledBackgrounds: [] + m_TextColor: {r: 1, g: 1, b: 1, a: 1} + m_OnNormal: + m_Background: {fileID: 0} + m_ScaledBackgrounds: [] + m_TextColor: {r: 1, g: 1, b: 1, a: 1} + m_OnHover: + m_Background: {fileID: 0} + m_ScaledBackgrounds: [] + m_TextColor: {r: 1, g: 1, b: 1, a: 1} + m_OnActive: + m_Background: {fileID: 0} + m_ScaledBackgrounds: [] + m_TextColor: {r: 1, g: 1, b: 1, a: 1} + m_OnFocused: + m_Background: {fileID: 0} + m_ScaledBackgrounds: [] + m_TextColor: {r: 1, g: 1, b: 1, a: 1} + m_Border: + m_Left: 8 + m_Right: 8 + m_Top: 8 + m_Bottom: 8 + m_Margin: + m_Left: 0 + m_Right: 12 + m_Top: 0 + m_Bottom: 0 + m_Padding: + m_Left: 8 + m_Right: 8 + m_Top: 8 + m_Bottom: 8 + m_Overflow: + m_Left: 0 + m_Right: 0 + m_Top: 0 + m_Bottom: 0 + m_Font: {fileID: 0} + m_FontSize: 13 + m_FontStyle: 1 + m_Alignment: 4 + m_WordWrap: 0 + m_RichText: 1 + m_TextClipping: 0 + m_ImagePosition: 0 + m_ContentOffset: {x: 0, y: 0} + m_FixedWidth: 70 + m_FixedHeight: 30 + m_StretchWidth: 0 + m_StretchHeight: 1 + - m_Name: ProgressBar + m_Normal: + m_Background: {fileID: 2800000, guid: b74071590687245c59a2333df73ad456, type: 3} + m_ScaledBackgrounds: [] + m_TextColor: {r: 1, g: 1, b: 1, a: 1} + m_Hover: + m_Background: {fileID: 0} + m_ScaledBackgrounds: [] + m_TextColor: {r: 0, g: 0, b: 0, a: 1} + m_Active: + m_Background: {fileID: 0} + m_ScaledBackgrounds: [] + m_TextColor: {r: 1, g: 0, b: 0, a: 1} + m_Focused: + m_Background: {fileID: 0} + m_ScaledBackgrounds: [] + m_TextColor: {r: 1, g: 0, b: 0, a: 1} + m_OnNormal: + m_Background: {fileID: 0} + m_ScaledBackgrounds: [] + m_TextColor: {r: 1, g: 0, b: 0, a: 1} + m_OnHover: + m_Background: {fileID: 0} + m_ScaledBackgrounds: [] + m_TextColor: {r: 1, g: 0, b: 0, a: 1} + m_OnActive: + m_Background: {fileID: 0} + m_ScaledBackgrounds: [] + m_TextColor: {r: 1, g: 0, b: 0, a: 1} + m_OnFocused: + m_Background: {fileID: 0} + m_ScaledBackgrounds: [] + m_TextColor: {r: 1, g: 0, b: 0, a: 1} + m_Border: + m_Left: 0 + m_Right: 0 + m_Top: 0 + m_Bottom: 0 + m_Margin: + m_Left: 0 + m_Right: 0 + m_Top: 0 + m_Bottom: 0 + m_Padding: + m_Left: 0 + m_Right: 0 + m_Top: 0 + m_Bottom: 0 + m_Overflow: + m_Left: 0 + m_Right: 0 + m_Top: 0 + m_Bottom: 0 + m_Font: {fileID: 0} + m_FontSize: 13 + m_FontStyle: 1 + m_Alignment: 4 + m_WordWrap: 1 + m_RichText: 1 + m_TextClipping: 1 + m_ImagePosition: 0 + m_ContentOffset: {x: 0, y: 0} + m_FixedWidth: 0 + m_FixedHeight: 5 + m_StretchWidth: 0 + m_StretchHeight: 0 + - m_Name: BackButton + m_Normal: + m_Background: {fileID: 2800000, guid: e82c40615632b4a0fb304ca94ec44283, type: 3} + m_ScaledBackgrounds: + - {fileID: 2800000, guid: c97382ba9f72b4877b473b128fa7aa20, type: 3} + m_TextColor: {r: 0.16078432, g: 0.16078432, b: 0.16078432, a: 1} + m_Hover: + m_Background: {fileID: 0} + m_ScaledBackgrounds: [] + m_TextColor: {r: 1, g: 1, b: 1, a: 1} + m_Active: + m_Background: {fileID: 2800000, guid: 34aaef5cb32a944929e046f6e162b475, type: 3} + m_ScaledBackgrounds: [] + m_TextColor: {r: 0.16078432, g: 0.16078432, b: 0.16078432, a: 1} + m_Focused: + m_Background: {fileID: 0} + m_ScaledBackgrounds: [] + m_TextColor: {r: 1, g: 1, b: 1, a: 1} + m_OnNormal: + m_Background: {fileID: 0} + m_ScaledBackgrounds: [] + m_TextColor: {r: 1, g: 1, b: 1, a: 1} + m_OnHover: + m_Background: {fileID: 0} + m_ScaledBackgrounds: [] + m_TextColor: {r: 1, g: 1, b: 1, a: 1} + m_OnActive: + m_Background: {fileID: 0} + m_ScaledBackgrounds: [] + m_TextColor: {r: 1, g: 1, b: 1, a: 1} + m_OnFocused: + m_Background: {fileID: 0} + m_ScaledBackgrounds: [] + m_TextColor: {r: 1, g: 1, b: 1, a: 1} + m_Border: + m_Left: 8 + m_Right: 8 + m_Top: 8 + m_Bottom: 8 + m_Margin: + m_Left: 12 + m_Right: 0 + m_Top: 0 + m_Bottom: 0 + m_Padding: + m_Left: 8 + m_Right: 8 + m_Top: 6 + m_Bottom: 10 + m_Overflow: + m_Left: 0 + m_Right: 0 + m_Top: 0 + m_Bottom: 0 + m_Font: {fileID: 0} + m_FontSize: 12 + m_FontStyle: 1 + m_Alignment: 4 + m_WordWrap: 0 + m_RichText: 1 + m_TextClipping: 0 + m_ImagePosition: 0 + m_ContentOffset: {x: 0, y: 0} + m_FixedWidth: 100 + m_FixedHeight: 30 + m_StretchWidth: 0 + m_StretchHeight: 0 + - m_Name: TutorialCard + m_Normal: + m_Background: {fileID: 2800000, guid: 5ad52f004d51b4caf94acc185e632540, type: 3} + m_ScaledBackgrounds: + - {fileID: 2800000, guid: 630b437b3a13f4dff935e4df43af05e9, type: 3} + m_TextColor: {r: 0.2924528, g: 0.2924528, b: 0.2924528, a: 1} + m_Hover: + m_Background: {fileID: 0} + m_ScaledBackgrounds: [] + m_TextColor: {r: 1, g: 1, b: 1, a: 1} + m_Active: + m_Background: {fileID: 2800000, guid: b9851e39ff08349dca4c90803423f83a, type: 3} + m_ScaledBackgrounds: [] + m_TextColor: {r: 0.03773582, g: 0.03773582, b: 0.03773582, a: 1} + m_Focused: + m_Background: {fileID: 0} + m_ScaledBackgrounds: [] + m_TextColor: {r: 1, g: 1, b: 1, a: 1} + m_OnNormal: + m_Background: {fileID: 11005, guid: 0000000000000000e000000000000000, type: 0} + m_ScaledBackgrounds: [] + m_TextColor: {r: 0.9019608, g: 0.9019608, b: 0.9019608, a: 1} + m_OnHover: + m_Background: {fileID: 11004, guid: 0000000000000000e000000000000000, type: 0} + m_ScaledBackgrounds: [] + m_TextColor: {r: 1, g: 1, b: 1, a: 1} + m_OnActive: + m_Background: {fileID: 11002, guid: 0000000000000000e000000000000000, type: 0} + m_ScaledBackgrounds: [] + m_TextColor: {r: 0.9, g: 0.9, b: 0.9, a: 1} + m_OnFocused: + m_Background: {fileID: 0} + m_ScaledBackgrounds: [] + m_TextColor: {r: 0, g: 0, b: 0, a: 1} + m_Border: + m_Left: 4 + m_Right: 4 + m_Top: 4 + m_Bottom: 6 + m_Margin: + m_Left: 0 + m_Right: 0 + m_Top: 10 + m_Bottom: 0 + m_Padding: + m_Left: 0 + m_Right: 20 + m_Top: 0 + m_Bottom: 0 + m_Overflow: + m_Left: 0 + m_Right: 0 + m_Top: 0 + m_Bottom: 0 + m_Font: {fileID: 0} + m_FontSize: 12 + m_FontStyle: 0 + m_Alignment: 3 + m_WordWrap: 1 + m_RichText: 1 + m_TextClipping: 1 + m_ImagePosition: 0 + m_ContentOffset: {x: 0, y: 0} + m_FixedWidth: 270 + m_FixedHeight: 80 + m_StretchWidth: 1 + m_StretchHeight: 0 + - m_Name: LinkCard + m_Normal: + m_Background: {fileID: 2800000, guid: 5ad52f004d51b4caf94acc185e632540, type: 3} + m_ScaledBackgrounds: + - {fileID: 2800000, guid: 630b437b3a13f4dff935e4df43af05e9, type: 3} + m_TextColor: {r: 0.29411766, g: 0.29411766, b: 0.29411766, a: 1} + m_Hover: + m_Background: {fileID: 0} + m_ScaledBackgrounds: [] + m_TextColor: {r: 1, g: 1, b: 1, a: 1} + m_Active: + m_Background: {fileID: 2800000, guid: b9851e39ff08349dca4c90803423f83a, type: 3} + m_ScaledBackgrounds: [] + m_TextColor: {r: 0.009433985, g: 0.009433985, b: 0.009433985, a: 1} + m_Focused: + m_Background: {fileID: 0} + m_ScaledBackgrounds: [] + m_TextColor: {r: 1, g: 1, b: 1, a: 1} + m_OnNormal: + m_Background: {fileID: 11005, guid: 0000000000000000e000000000000000, type: 0} + m_ScaledBackgrounds: [] + m_TextColor: {r: 0.9019608, g: 0.9019608, b: 0.9019608, a: 1} + m_OnHover: + m_Background: {fileID: 11004, guid: 0000000000000000e000000000000000, type: 0} + m_ScaledBackgrounds: [] + m_TextColor: {r: 1, g: 1, b: 1, a: 1} + m_OnActive: + m_Background: {fileID: 11002, guid: 0000000000000000e000000000000000, type: 0} + m_ScaledBackgrounds: [] + m_TextColor: {r: 0.9, g: 0.9, b: 0.9, a: 1} + m_OnFocused: + m_Background: {fileID: 0} + m_ScaledBackgrounds: [] + m_TextColor: {r: 0, g: 0, b: 0, a: 1} + m_Border: + m_Left: 4 + m_Right: 4 + m_Top: 4 + m_Bottom: 6 + m_Margin: + m_Left: 0 + m_Right: 0 + m_Top: 10 + m_Bottom: 0 + m_Padding: + m_Left: 0 + m_Right: 20 + m_Top: 0 + m_Bottom: 0 + m_Overflow: + m_Left: 0 + m_Right: 0 + m_Top: 0 + m_Bottom: 0 + m_Font: {fileID: 0} + m_FontSize: 12 + m_FontStyle: 0 + m_Alignment: 3 + m_WordWrap: 1 + m_RichText: 1 + m_TextClipping: 1 + m_ImagePosition: 0 + m_ContentOffset: {x: 0, y: 0} + m_FixedWidth: 270 + m_FixedHeight: 80 + m_StretchWidth: 1 + m_StretchHeight: 0 + - m_Name: WelcomeDialogButton + m_Normal: + m_Background: {fileID: 2800000, guid: 878645da069e34c5088b3d7c3c2ef90f, type: 3} + m_ScaledBackgrounds: + - {fileID: 2800000, guid: c56208a8909c14f8095890748f300344, type: 3} + m_TextColor: {r: 1, g: 1, b: 1, a: 1} + m_Hover: + m_Background: {fileID: 0} + m_ScaledBackgrounds: [] + m_TextColor: {r: 1, g: 1, b: 1, a: 1} + m_Active: + m_Background: {fileID: 2800000, guid: f1cb0ff35acd64d9b8e5979aeac4991a, type: 3} + m_ScaledBackgrounds: [] + m_TextColor: {r: 1, g: 1, b: 1, a: 1} + m_Focused: + m_Background: {fileID: 0} + m_ScaledBackgrounds: [] + m_TextColor: {r: 1, g: 1, b: 1, a: 1} + m_OnNormal: + m_Background: {fileID: 0} + m_ScaledBackgrounds: [] + m_TextColor: {r: 1, g: 1, b: 1, a: 1} + m_OnHover: + m_Background: {fileID: 0} + m_ScaledBackgrounds: [] + m_TextColor: {r: 1, g: 1, b: 1, a: 1} + m_OnActive: + m_Background: {fileID: 0} + m_ScaledBackgrounds: [] + m_TextColor: {r: 1, g: 1, b: 1, a: 1} + m_OnFocused: + m_Background: {fileID: 0} + m_ScaledBackgrounds: [] + m_TextColor: {r: 1, g: 1, b: 1, a: 1} + m_Border: + m_Left: 8 + m_Right: 8 + m_Top: 8 + m_Bottom: 10 + m_Margin: + m_Left: 20 + m_Right: 15 + m_Top: 20 + m_Bottom: 15 + m_Padding: + m_Left: 20 + m_Right: 20 + m_Top: 13 + m_Bottom: 15 + m_Overflow: + m_Left: 0 + m_Right: 0 + m_Top: 0 + m_Bottom: 0 + m_Font: {fileID: 0} + m_FontSize: 16 + m_FontStyle: 1 + m_Alignment: 4 + m_WordWrap: 0 + m_RichText: 0 + m_TextClipping: 0 + m_ImagePosition: 0 + m_ContentOffset: {x: 0, y: 0} + m_FixedWidth: 0 + m_FixedHeight: 44 + m_StretchWidth: 1 + m_StretchHeight: 0 + - m_Name: Tooltip + m_Normal: + m_Background: {fileID: 2800000, guid: c98b552ff34f94b62afc676fae8cf934, type: 3} + m_ScaledBackgrounds: + - {fileID: 2800000, guid: e6c1dde983b3942f3af2148970f13599, type: 3} + m_TextColor: {r: 1, g: 1, b: 1, a: 1} + m_Hover: + m_Background: {fileID: 0} + m_ScaledBackgrounds: [] + m_TextColor: {r: 1, g: 1, b: 1, a: 1} + m_Active: + m_Background: {fileID: 2800000, guid: f1cb0ff35acd64d9b8e5979aeac4991a, type: 3} + m_ScaledBackgrounds: [] + m_TextColor: {r: 1, g: 1, b: 1, a: 1} + m_Focused: + m_Background: {fileID: 0} + m_ScaledBackgrounds: [] + m_TextColor: {r: 1, g: 1, b: 1, a: 1} + m_OnNormal: + m_Background: {fileID: 0} + m_ScaledBackgrounds: [] + m_TextColor: {r: 1, g: 1, b: 1, a: 1} + m_OnHover: + m_Background: {fileID: 0} + m_ScaledBackgrounds: [] + m_TextColor: {r: 1, g: 1, b: 1, a: 1} + m_OnActive: + m_Background: {fileID: 0} + m_ScaledBackgrounds: [] + m_TextColor: {r: 1, g: 1, b: 1, a: 1} + m_OnFocused: + m_Background: {fileID: 0} + m_ScaledBackgrounds: [] + m_TextColor: {r: 1, g: 1, b: 1, a: 1} + m_Border: + m_Left: 0 + m_Right: 0 + m_Top: 0 + m_Bottom: 0 + m_Margin: + m_Left: 20 + m_Right: 20 + m_Top: 0 + m_Bottom: 0 + m_Padding: + m_Left: 0 + m_Right: 0 + m_Top: 0 + m_Bottom: 8 + m_Overflow: + m_Left: 0 + m_Right: 0 + m_Top: 0 + m_Bottom: 0 + m_Font: {fileID: 0} + m_FontSize: 12 + m_FontStyle: 1 + m_Alignment: 4 + m_WordWrap: 1 + m_RichText: 1 + m_TextClipping: 1 + m_ImagePosition: 0 + m_ContentOffset: {x: 0, y: 0} + m_FixedWidth: 100 + m_FixedHeight: 32 + m_StretchWidth: 0 + m_StretchHeight: 0 + m_Settings: + m_DoubleClickSelectsWord: 1 + m_TripleClickSelectsLine: 1 + m_CursorColor: {r: 1, g: 1, b: 1, a: 1} + m_CursorFlashSpeed: -1 + m_SelectionColor: {r: 1, g: 0.38403907, b: 0, a: 0.7} diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/Tutorial Skin.guiskin.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/Tutorial Skin.guiskin.meta" new file mode 100644 index 00000000..336e3198 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/Tutorial Skin.guiskin.meta" @@ -0,0 +1,9 @@ +fileFormatVersion: 2 +guid: e9c45368bc94c4eb6a1c831241fa9db6 +timeCreated: 1484790867 +licenseType: Pro +NativeFormatImporter: + mainObjectFileID: 11400000 + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/Tutorial Styles.asset" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/Tutorial Styles.asset" new file mode 100644 index 00000000..3f463f1b --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/Tutorial Styles.asset" @@ -0,0 +1,27 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!114 &11400000 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: a385a00f03d2f4d1aa06e69dc6fdeea4, type: 3} + m_Name: Tutorial Styles + m_EditorClassIdentifier: + m_Skin: {fileID: 11400000, guid: e9c45368bc94c4eb6a1c831241fa9db6, type: 2} + m_OrderedListDelimiter: . + m_UnorderedListBullet: "\u2022" + m_MaskingColor: {r: 0.11213955, g: 0.179666, b: 0.2264151, a: 0.5882353} + m_HighlightColor: {r: 0.3915094, g: 0.7492484, b: 1, a: 1} + m_BlockedInteractionColor: {r: 0.16078432, g: 0.63529414, b: 0.96862745, a: 0.019607844} + m_HighlightThickness: 3 + m_HighlightAnimationSpeed: 7.52 + m_HighlightAnimationDelay: 0 + TextColorMainDarkSkin: {r: 1, g: 1, b: 1, a: 1} + TextColorMainLightSkin: {r: 0, g: 0, b: 0, a: 1} + TextColorSecondaryDarkSkin: {r: 0.66, g: 0.66, b: 0.66, a: 1} + TextColorSecondaryLightSkin: {r: 0.33, g: 0.33, b: 0.33, a: 1} diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/Tutorial Styles.asset.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/Tutorial Styles.asset.meta" new file mode 100644 index 00000000..54094cba --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/GUI/Tutorial Styles.asset.meta" @@ -0,0 +1,9 @@ +fileFormatVersion: 2 +guid: bcaf24dcefa7047b19a2b51c946e64bf +timeCreated: 1490875119 +licenseType: Pro +NativeFormatImporter: + mainObjectFileID: 11400000 + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/Layouts.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/Layouts.meta" new file mode 100644 index 00000000..3a59de0f --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/Layouts.meta" @@ -0,0 +1,10 @@ +fileFormatVersion: 2 +guid: 8c0988b115fdf42c1a7bdc1fb50cba41 +folderAsset: yes +timeCreated: 1505989293 +licenseType: Pro +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/Layouts/BasicTutorialLayout.wlt" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/Layouts/BasicTutorialLayout.wlt" new file mode 100644 index 00000000..31596670 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/Layouts/BasicTutorialLayout.wlt" @@ -0,0 +1,1043 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!114 &1 +MonoBehaviour: + m_ObjectHideFlags: 52 + m_PrefabParentObject: {fileID: 0} + m_PrefabInternal: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 1 + m_Script: {fileID: 12004, guid: 0000000000000000e000000000000000, type: 0} + m_Name: + m_EditorClassIdentifier: + m_PixelRect: + serializedVersion: 2 + x: 0 + y: 45 + width: 1440 + height: 851 + m_ShowMode: 4 + m_Title: + m_RootView: {fileID: 10} + m_MinSize: {x: 950, y: 300} + m_MaxSize: {x: 10000, y: 10000} +--- !u!114 &2 +MonoBehaviour: + m_ObjectHideFlags: 52 + m_PrefabParentObject: {fileID: 0} + m_PrefabInternal: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 1 + m_Script: {fileID: 12006, guid: 0000000000000000e000000000000000, type: 0} + m_Name: + m_EditorClassIdentifier: + m_Children: [] + m_Position: + serializedVersion: 2 + x: 0 + y: 0 + width: 347 + height: 409 + m_MinSize: {x: 302, y: 401} + m_MaxSize: {x: 4002, y: 4021} + m_ActualView: {fileID: 16} + m_Panes: + - {fileID: 16} + m_Selected: 0 + m_LastSelected: 0 +--- !u!114 &3 +MonoBehaviour: + m_ObjectHideFlags: 52 + m_PrefabParentObject: {fileID: 0} + m_PrefabInternal: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 1 + m_Script: {fileID: 12010, guid: 0000000000000000e000000000000000, type: 0} + m_Name: + m_EditorClassIdentifier: + m_Children: + - {fileID: 8} + m_Position: + serializedVersion: 2 + x: 0 + y: 30 + width: 1440 + height: 801 + m_MinSize: {x: 887, y: 672} + m_MaxSize: {x: 18008, y: 14042} + vertical: 1 + controlID: 280 +--- !u!114 &4 +MonoBehaviour: + m_ObjectHideFlags: 52 + m_PrefabParentObject: {fileID: 0} + m_PrefabInternal: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 1 + m_Script: {fileID: 12006, guid: 0000000000000000e000000000000000, type: 0} + m_Name: + m_EditorClassIdentifier: + m_Children: [] + m_Position: + serializedVersion: 2 + x: 1151 + y: 0 + width: 289 + height: 801 + m_MinSize: {x: 277, y: 71} + m_MaxSize: {x: 4002, y: 4021} + m_ActualView: {fileID: 17} + m_Panes: + - {fileID: 17} + m_Selected: 0 + m_LastSelected: 0 +--- !u!114 &5 +MonoBehaviour: + m_ObjectHideFlags: 52 + m_PrefabParentObject: {fileID: 0} + m_PrefabInternal: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 1 + m_Script: {fileID: 12006, guid: 0000000000000000e000000000000000, type: 0} + m_Name: + m_EditorClassIdentifier: + m_Children: [] + m_Position: + serializedVersion: 2 + x: 863 + y: 0 + width: 288 + height: 409 + m_MinSize: {x: 204, y: 221} + m_MaxSize: {x: 4004, y: 4021} + m_ActualView: {fileID: 20} + m_Panes: + - {fileID: 20} + m_Selected: 0 + m_LastSelected: 0 +--- !u!114 &6 +MonoBehaviour: + m_ObjectHideFlags: 52 + m_PrefabParentObject: {fileID: 0} + m_PrefabInternal: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 1 + m_Script: {fileID: 12010, guid: 0000000000000000e000000000000000, type: 0} + m_Name: + m_EditorClassIdentifier: + m_Children: + - {fileID: 9} + - {fileID: 7} + m_Position: + serializedVersion: 2 + x: 0 + y: 409 + width: 1151 + height: 392 + m_MinSize: {x: 436, y: 271} + m_MaxSize: {x: 14006, y: 10021} + vertical: 0 + controlID: 387 +--- !u!114 &7 +MonoBehaviour: + m_ObjectHideFlags: 52 + m_PrefabParentObject: {fileID: 0} + m_PrefabInternal: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 1 + m_Script: {fileID: 12006, guid: 0000000000000000e000000000000000, type: 0} + m_Name: + m_EditorClassIdentifier: + m_Children: [] + m_Position: + serializedVersion: 2 + x: 865 + y: 0 + width: 286 + height: 392 + m_MinSize: {x: 234, y: 271} + m_MaxSize: {x: 10004, y: 10021} + m_ActualView: {fileID: 19} + m_Panes: + - {fileID: 19} + m_Selected: 0 + m_LastSelected: 0 +--- !u!114 &8 +MonoBehaviour: + m_ObjectHideFlags: 52 + m_PrefabParentObject: {fileID: 0} + m_PrefabInternal: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 1 + m_Script: {fileID: 12010, guid: 0000000000000000e000000000000000, type: 0} + m_Name: + m_EditorClassIdentifier: + m_Children: + - {fileID: 13} + - {fileID: 4} + m_Position: + serializedVersion: 2 + x: 0 + y: 0 + width: 1440 + height: 801 + m_MinSize: {x: 887, y: 672} + m_MaxSize: {x: 18008, y: 14042} + vertical: 0 + controlID: 281 +--- !u!114 &9 +MonoBehaviour: + m_ObjectHideFlags: 52 + m_PrefabParentObject: {fileID: 0} + m_PrefabInternal: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 1 + m_Script: {fileID: 12006, guid: 0000000000000000e000000000000000, type: 0} + m_Name: + m_EditorClassIdentifier: + m_Children: [] + m_Position: + serializedVersion: 2 + x: 0 + y: 0 + width: 865 + height: 392 + m_MinSize: {x: 202, y: 221} + m_MaxSize: {x: 4002, y: 4021} + m_ActualView: {fileID: 21} + m_Panes: + - {fileID: 21} + m_Selected: 0 + m_LastSelected: 0 +--- !u!114 &10 +MonoBehaviour: + m_ObjectHideFlags: 52 + m_PrefabParentObject: {fileID: 0} + m_PrefabInternal: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 1 + m_Script: {fileID: 12008, guid: 0000000000000000e000000000000000, type: 0} + m_Name: + m_EditorClassIdentifier: + m_Children: + - {fileID: 11} + - {fileID: 3} + - {fileID: 12} + m_Position: + serializedVersion: 2 + x: 0 + y: 0 + width: 1440 + height: 851 + m_MinSize: {x: 950, y: 300} + m_MaxSize: {x: 10000, y: 10000} +--- !u!114 &11 +MonoBehaviour: + m_ObjectHideFlags: 52 + m_PrefabParentObject: {fileID: 0} + m_PrefabInternal: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 1 + m_Script: {fileID: 12011, guid: 0000000000000000e000000000000000, type: 0} + m_Name: + m_EditorClassIdentifier: + m_Children: [] + m_Position: + serializedVersion: 2 + x: 0 + y: 0 + width: 1440 + height: 30 + m_MinSize: {x: 0, y: 0} + m_MaxSize: {x: 0, y: 0} + m_LastLoadedLayoutName: t05-layout +--- !u!114 &12 +MonoBehaviour: + m_ObjectHideFlags: 52 + m_PrefabParentObject: {fileID: 0} + m_PrefabInternal: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 1 + m_Script: {fileID: 12042, guid: 0000000000000000e000000000000000, type: 0} + m_Name: + m_EditorClassIdentifier: + m_Children: [] + m_Position: + serializedVersion: 2 + x: 0 + y: 831 + width: 1440 + height: 20 + m_MinSize: {x: 0, y: 0} + m_MaxSize: {x: 0, y: 0} +--- !u!114 &13 +MonoBehaviour: + m_ObjectHideFlags: 52 + m_PrefabParentObject: {fileID: 0} + m_PrefabInternal: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 1 + m_Script: {fileID: 12010, guid: 0000000000000000e000000000000000, type: 0} + m_Name: + m_EditorClassIdentifier: + m_Children: + - {fileID: 14} + - {fileID: 6} + m_Position: + serializedVersion: 2 + x: 0 + y: 0 + width: 1151 + height: 801 + m_MinSize: {x: 610, y: 672} + m_MaxSize: {x: 14006, y: 14042} + vertical: 1 + controlID: 282 +--- !u!114 &14 +MonoBehaviour: + m_ObjectHideFlags: 52 + m_PrefabParentObject: {fileID: 0} + m_PrefabInternal: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 1 + m_Script: {fileID: 12010, guid: 0000000000000000e000000000000000, type: 0} + m_Name: + m_EditorClassIdentifier: + m_Children: + - {fileID: 2} + - {fileID: 15} + - {fileID: 5} + m_Position: + serializedVersion: 2 + x: 0 + y: 0 + width: 1151 + height: 409 + m_MinSize: {x: 610, y: 401} + m_MaxSize: {x: 12010, y: 4021} + vertical: 0 + controlID: 283 +--- !u!114 &15 +MonoBehaviour: + m_ObjectHideFlags: 52 + m_PrefabParentObject: {fileID: 0} + m_PrefabInternal: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 1 + m_Script: {fileID: 12006, guid: 0000000000000000e000000000000000, type: 0} + m_Name: + m_EditorClassIdentifier: + m_Children: [] + m_Position: + serializedVersion: 2 + x: 347 + y: 0 + width: 516 + height: 409 + m_MinSize: {x: 104, y: 121} + m_MaxSize: {x: 4004, y: 4021} + m_ActualView: {fileID: 18} + m_Panes: + - {fileID: 18} + m_Selected: 0 + m_LastSelected: 0 +--- !u!114 &16 +MonoBehaviour: + m_ObjectHideFlags: 52 + m_PrefabParentObject: {fileID: 0} + m_PrefabInternal: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: ba8f85f9d6bbb46d180610e6061865df, type: 3} + m_Name: + m_EditorClassIdentifier: + m_AutoRepaintOnSceneChange: 0 + m_MinSize: {x: 300, y: 380} + m_MaxSize: {x: 4000, y: 4000} + m_TitleContent: + m_Text: Tutorials + m_Image: {fileID: 0} + m_Tooltip: + m_DepthBufferBits: 0 + m_Pos: + serializedVersion: 2 + x: 0 + y: 94 + width: 345 + height: 388 + m_Indexes: 0000000003000000040000000500000006000000090000000b000000 + m_AllParagraphs: + - paragraph: + m_Type: 0 + m_Summary: + m_Text: 'When we make a game in Unity, the basic steps are:' + m_Icons: + m_Items: [] + m_Criteria: + m_Items: [] + m_MaskingSettings: + m_Enabled: 1 + m_UnmaskedViews: [] + - paragraph: + m_Type: 2 + m_Summary: + m_Text: 'we make changes to our game + + we test those changes by playing our game' + m_Icons: + m_Items: [] + m_Criteria: + m_Items: [] + m_MaskingSettings: + m_Enabled: 1 + m_UnmaskedViews: [] + - paragraph: + m_Type: 0 + m_Summary: + m_Text: 'We repeat this loop many times as we work on our game. + + + In this tutorial, we will learn how to test our game.' + m_Icons: + m_Items: [] + m_Criteria: + m_Items: [] + m_MaskingSettings: + m_Enabled: 1 + m_UnmaskedViews: [] + - paragraph: + m_Type: 0 + m_Summary: + m_Text: 'The highlighted window is called the Tutorial window. + + + Instructions and information will appear here. + + + At the top right of this window is the Home button. To return to the + Tutorial Selection at any time, click the Home button. + + + Next to the Home button is the Restart button. To restart the current + tutorial at any time, click the Restart button. + + + Click the Next button to continue.' + m_Icons: + m_Items: [] + m_Criteria: + m_Items: [] + m_MaskingSettings: + m_Enabled: 1 + m_UnmaskedViews: + - m_SelectorType: 1 + m_ViewType: + m_TypeName: + m_EditorWindowType: + m_TypeName: Unity.InteractiveTutorials.TutorialWindow, Assembly-CSharp-Editor-firstpass-testable, + Version=0.0.0.0, Culture=neutral, PublicKeyToken=null + m_UnmaskedControls: [] + - paragraph: + m_Type: 0 + m_Summary: + m_Text: 'The highlighted window is called the Scene view. + + + We build a Unity game out of Scenes. Scenes in Unity are like containers. + They contain the world, the characters - everything that is a part of our + game. + + + This Scene contains a single level of our game. + + + We can use the Scene view to view and arrange the objects in our Scene.' + m_Icons: + m_Items: [] + m_Criteria: + m_Items: [] + m_MaskingSettings: + m_Enabled: 1 + m_UnmaskedViews: + - m_SelectorType: 1 + m_ViewType: + m_TypeName: + m_EditorWindowType: + m_TypeName: UnityEditor.SceneView, UnityEditor, Version=0.0.0.0, Culture=neutral, + PublicKeyToken=null + m_UnmaskedControls: [] + - paragraph: + m_Type: 0 + m_Summary: + m_Text: 'The highlighed window is called the Game view. + + + The Game view shows what the player sees when they play our game. We can test + our game in the Game view.' + m_Icons: + m_Items: [] + m_Criteria: + m_Items: [] + m_MaskingSettings: + m_Enabled: 1 + m_UnmaskedViews: + - m_SelectorType: 1 + m_ViewType: + m_TypeName: + m_EditorWindowType: + m_TypeName: UnityEditor.GameView, UnityEditor, Version=0.0.0.0, Culture=neutral, + PublicKeyToken=null + m_UnmaskedControls: [] + - paragraph: + m_Type: 0 + m_Summary: + m_Text: Let's test our game now. + m_Icons: + m_Items: [] + m_Criteria: + m_Items: [] + m_MaskingSettings: + m_Enabled: 0 + m_UnmaskedViews: [] + - paragraph: + m_Type: 1 + m_Summary: Enter Play Mode + m_Text: 'In the controls at the top center of the Unity Editor, locate the play + button. + + + Click the play button to enter Play Mode.' + m_Icons: + m_Items: [] + m_Criteria: + m_Items: + - type: + m_TypeName: Unity.InteractiveTutorials.PlayModeStateCriterion, Assembly-CSharp-Editor-firstpass-testable, + Version=0.0.0.0, Culture=neutral, PublicKeyToken=null + criterion: {fileID: 114534222761008052, guid: 848dbc97a0c094d3c8ac37a6400959c4, + type: 2} + m_MaskingSettings: + m_Enabled: 1 + m_UnmaskedViews: + - m_SelectorType: 0 + m_ViewType: + m_TypeName: UnityEditor.Toolbar, UnityEditor, Version=0.0.0.0, Culture=neutral, + PublicKeyToken=null + m_EditorWindowType: + m_TypeName: + m_UnmaskedControls: + - m_SelectorMode: 1 + m_GUIContent: + m_Text: + m_Image: {fileID: 0} + m_Tooltip: + m_ControlName: + m_PropertyPath: + m_TargetType: + m_TypeName: + - m_SelectorMode: 1 + m_GUIContent: + m_Text: + m_Image: {fileID: 0} + m_Tooltip: + m_ControlName: ToolbarPlayModePlayButton + m_PropertyPath: + m_TargetType: + m_TypeName: + - paragraph: + m_Type: 1 + m_Summary: Move the character to the goal + m_Text: 'Use the W, A, S, D or arrow keys on your keyboard to + move the character to the goal. + + + The goal is marked by a moving arrow. + + + Use the Escape key on your keyboard to restart this level.' + m_Icons: + m_Items: [] + m_Criteria: + m_Items: + - type: + m_TypeName: Unity.InteractiveTutorials.TriggerTaskCriterion, Assembly-CSharp-Editor-firstpass-testable, + Version=0.0.0.0, Culture=neutral, PublicKeyToken=null + criterion: {fileID: 114749921387113460, guid: 848dbc97a0c094d3c8ac37a6400959c4, + type: 2} + m_MaskingSettings: + m_Enabled: 1 + m_UnmaskedViews: + - m_SelectorType: 1 + m_ViewType: + m_TypeName: + m_EditorWindowType: + m_TypeName: UnityEditor.GameView, UnityEditor, Version=0.0.0.0, Culture=neutral, + PublicKeyToken=null + m_UnmaskedControls: [] + - paragraph: + m_Type: 0 + m_Summary: + m_Text: Well done! + m_Icons: + m_Items: [] + m_Criteria: + m_Items: [] + m_MaskingSettings: + m_Enabled: 0 + m_UnmaskedViews: [] + - paragraph: + m_Type: 1 + m_Summary: Exit Play Mode + m_Text: Click the play button to exit Play Mode. + m_Icons: + m_Items: [] + m_Criteria: + m_Items: + - type: + m_TypeName: Unity.InteractiveTutorials.PlayModeStateCriterion, Assembly-CSharp-Editor-firstpass-testable, + Version=0.0.0.0, Culture=neutral, PublicKeyToken=null + criterion: {fileID: 114655394759734240, guid: d67572769c4d547ac9fa9ca65eeea9c5, + type: 2} + m_MaskingSettings: + m_Enabled: 1 + m_UnmaskedViews: + - m_SelectorType: 1 + m_ViewType: + m_TypeName: UnityEditor.Toolbar, UnityEditor, Version=0.0.0.0, Culture=neutral, + PublicKeyToken=null + m_EditorWindowType: + m_TypeName: UnityEditor.GameView, UnityEditor, Version=0.0.0.0, Culture=neutral, + PublicKeyToken=null + m_UnmaskedControls: [] + - m_SelectorType: 0 + m_ViewType: + m_TypeName: UnityEditor.Toolbar, UnityEditor, Version=0.0.0.0, Culture=neutral, + PublicKeyToken=null + m_EditorWindowType: + m_TypeName: UnityEditor.GameView, UnityEditor, Version=0.0.0.0, Culture=neutral, + PublicKeyToken=null + m_UnmaskedControls: + - m_SelectorMode: 1 + m_GUIContent: + m_Text: + m_Image: {fileID: 0} + m_Tooltip: + m_ControlName: ToolbarPlayModePlayButton + m_PropertyPath: + m_TargetType: + m_TypeName: + - paragraph: + m_Type: 0 + m_Summary: + m_Text: 'In this tutorial, we learned:' + m_Icons: + m_Items: [] + m_Criteria: + m_Items: [] + m_MaskingSettings: + m_Enabled: 0 + m_UnmaskedViews: [] + - paragraph: + m_Type: 2 + m_Summary: + m_Text: 'how to test our game in the Unity Editor + + how to move between Edit Mode and Play Mode' + m_Icons: + m_Items: [] + m_Criteria: + m_Items: [] + m_MaskingSettings: + m_Enabled: 0 + m_UnmaskedViews: [] + m_MaskingEnabled: 0 + m_Styles: {fileID: 11400000, guid: bcaf24dcefa7047b19a2b51c946e64bf, type: 2} + m_ScrollPosition: {x: 0, y: 0} + m_FarthestPageCompleted: -1 + m_PlayModeChanging: 0 +--- !u!114 &17 +MonoBehaviour: + m_ObjectHideFlags: 52 + m_PrefabParentObject: {fileID: 0} + m_PrefabInternal: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 1 + m_Script: {fileID: 12019, guid: 0000000000000000e000000000000000, type: 0} + m_Name: + m_EditorClassIdentifier: + m_AutoRepaintOnSceneChange: 0 + m_MinSize: {x: 275, y: 50} + m_MaxSize: {x: 4000, y: 4000} + m_TitleContent: + m_Text: Inspector + m_Image: {fileID: -2667387946076563598, guid: 0000000000000000d000000000000000, + type: 0} + m_Tooltip: + m_DepthBufferBits: 0 + m_Pos: + serializedVersion: 2 + x: 1153 + y: 94 + width: 287 + height: 780 + m_ScrollPosition: {x: 0, y: 0} + m_InspectorMode: 0 + m_PreviewResizer: + m_CachedPref: 100 + m_ControlHash: -371814159 + m_PrefName: Preview_InspectorPreview + m_PreviewWindow: {fileID: 0} +--- !u!114 &18 +MonoBehaviour: + m_ObjectHideFlags: 52 + m_PrefabParentObject: {fileID: 0} + m_PrefabInternal: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 1 + m_Script: {fileID: 12013, guid: 0000000000000000e000000000000000, type: 0} + m_Name: + m_EditorClassIdentifier: + m_AutoRepaintOnSceneChange: 1 + m_MinSize: {x: 100, y: 100} + m_MaxSize: {x: 4000, y: 4000} + m_TitleContent: + m_Text: Scene + m_Image: {fileID: 2593428753322112591, guid: 0000000000000000d000000000000000, + type: 0} + m_Tooltip: + m_DepthBufferBits: 0 + m_Pos: + serializedVersion: 2 + x: 349 + y: 94 + width: 512 + height: 388 + m_SceneLighting: 1 + lastFramingTime: 240.577830016613 + m_2DMode: 0 + m_isRotationLocked: 0 + m_AudioPlay: 0 + m_Position: + m_Target: {x: -5, y: 26.339746, z: -12} + speed: 2 + m_Value: {x: -5, y: 26.339746, z: -12} + m_RenderMode: 0 + m_ValidateTrueMetals: 0 + m_SceneViewState: + showFog: 0 + showMaterialUpdate: 0 + showSkybox: 0 + showFlares: 0 + showImageEffects: 0 + grid: + xGrid: + m_Target: 0 + speed: 2 + m_Value: 0 + yGrid: + m_Target: 1 + speed: 2 + m_Value: 1 + zGrid: + m_Target: 0 + speed: 2 + m_Value: 0 + m_Rotation: + m_Target: {x: 0.5, y: 0, z: 0, w: 0.8660254} + speed: 2 + m_Value: {x: -0.5, y: 0, z: -0, w: -0.8660254} + m_Size: + m_Target: 10 + speed: 2 + m_Value: 10 + m_Ortho: + m_Target: 0 + speed: 2 + m_Value: 0 + m_ShowGlobalGrid: 1 + m_LastSceneViewRotation: {x: -0.002017937, y: 0.87694633, z: -0.48057014, w: -0.0036823382} + m_LastSceneViewOrtho: 0 + m_ReplacementShader: {fileID: 0} + m_ReplacementString: + m_LastLockedObject: {fileID: 0} + m_ViewIsLockedToObject: 0 +--- !u!114 &19 +MonoBehaviour: + m_ObjectHideFlags: 52 + m_PrefabParentObject: {fileID: 0} + m_PrefabInternal: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 1 + m_Script: {fileID: 12014, guid: 0000000000000000e000000000000000, type: 0} + m_Name: + m_EditorClassIdentifier: + m_AutoRepaintOnSceneChange: 0 + m_MinSize: {x: 230, y: 250} + m_MaxSize: {x: 10000, y: 10000} + m_TitleContent: + m_Text: Project + m_Image: {fileID: -5467254957812901981, guid: 0000000000000000d000000000000000, + type: 0} + m_Tooltip: + m_DepthBufferBits: 0 + m_Pos: + serializedVersion: 2 + x: 867 + y: 503 + width: 282 + height: 371 + m_SearchFilter: + m_NameFilter: + m_ClassNames: [] + m_AssetLabels: [] + m_AssetBundleNames: [] + m_VersionControlStates: [] + m_SoftLockControlStates: [] + m_ReferencingInstanceIDs: + m_ScenePaths: [] + m_ShowAllHits: 0 + m_SearchArea: 0 + m_Folders: + - Assets/Content/tutorials + m_ViewMode: 0 + m_StartGridSize: 64 + m_LastFolders: + - Assets + m_LastFoldersGridSize: -1 + m_LastProjectPath: /Users/kerry/Documents/ono/learn-iet + m_IsLocked: 0 + m_FolderTreeState: + scrollPos: {x: 0, y: 0} + m_SelectedIDs: b6280000 + m_LastClickedID: 10422 + m_ExpandedIDs: 000000000c2d0000362d00004a2d0000bc2d0000be2d0000742e0000202f0000b62f0000323000003e300000583000005e35000060350000623500006435000066350000683500006a3500006c3500006e3500007035000072350000 + m_RenameOverlay: + m_UserAcceptedRename: 0 + m_Name: + m_OriginalName: + m_EditFieldRect: + serializedVersion: 2 + x: 0 + y: 0 + width: 0 + height: 0 + m_UserData: 0 + m_IsWaitingForDelay: 0 + m_IsRenaming: 0 + m_OriginalEventType: 11 + m_IsRenamingFilename: 1 + m_ClientGUIView: {fileID: 0} + m_SearchString: + m_CreateAssetUtility: + m_EndAction: {fileID: 0} + m_InstanceID: 0 + m_Path: + m_Icon: {fileID: 0} + m_ResourceFile: + m_AssetTreeState: + scrollPos: {x: 0, y: 0} + m_SelectedIDs: + m_LastClickedID: 0 + m_ExpandedIDs: 000000000c2d0000362d00004a2d0000bc2d0000be2d0000742e0000d82e0000202f0000b62f0000323000003e3000004630000058300000603000005e35000060350000623500006435000066350000683500006a3500006c3500006e35000070350000723500004e3a0000 + m_RenameOverlay: + m_UserAcceptedRename: 0 + m_Name: + m_OriginalName: + m_EditFieldRect: + serializedVersion: 2 + x: 0 + y: 0 + width: 0 + height: 0 + m_UserData: 0 + m_IsWaitingForDelay: 0 + m_IsRenaming: 0 + m_OriginalEventType: 11 + m_IsRenamingFilename: 1 + m_ClientGUIView: {fileID: 7} + m_SearchString: + m_CreateAssetUtility: + m_EndAction: {fileID: 0} + m_InstanceID: 0 + m_Path: + m_Icon: {fileID: 0} + m_ResourceFile: + m_ListAreaState: + m_SelectedInstanceIDs: + m_LastClickedInstanceID: 0 + m_HadKeyboardFocusLastEvent: 0 + m_ExpandedInstanceIDs: + m_RenameOverlay: + m_UserAcceptedRename: 0 + m_Name: + m_OriginalName: + m_EditFieldRect: + serializedVersion: 2 + x: 0 + y: 0 + width: 0 + height: 0 + m_UserData: 0 + m_IsWaitingForDelay: 0 + m_IsRenaming: 0 + m_OriginalEventType: 11 + m_IsRenamingFilename: 1 + m_ClientGUIView: {fileID: 7} + m_CreateAssetUtility: + m_EndAction: {fileID: 0} + m_InstanceID: 0 + m_Path: + m_Icon: {fileID: 0} + m_ResourceFile: + m_NewAssetIndexInList: -1 + m_ScrollPosition: {x: 0, y: 0} + m_GridSize: 64 + m_DirectoriesAreaWidth: 115 +--- !u!114 &20 +MonoBehaviour: + m_ObjectHideFlags: 52 + m_PrefabParentObject: {fileID: 0} + m_PrefabInternal: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 1 + m_Script: {fileID: 12061, guid: 0000000000000000e000000000000000, type: 0} + m_Name: + m_EditorClassIdentifier: + m_AutoRepaintOnSceneChange: 0 + m_MinSize: {x: 200, y: 200} + m_MaxSize: {x: 4000, y: 4000} + m_TitleContent: + m_Text: Hierarchy + m_Image: {fileID: 7966133145522015247, guid: 0000000000000000d000000000000000, + type: 0} + m_Tooltip: + m_DepthBufferBits: 0 + m_Pos: + serializedVersion: 2 + x: 865 + y: 94 + width: 284 + height: 388 + m_TreeViewState: + scrollPos: {x: 0, y: 0} + m_SelectedIDs: + m_LastClickedID: 0 + m_ExpandedIDs: cc8bfeffb066ffffc46cffffec75ffffc282ffff4a8effff7a9cffffb8daffffb2f9ffffbcf9ffffa6fbffff00000000 + m_RenameOverlay: + m_UserAcceptedRename: 0 + m_Name: + m_OriginalName: + m_EditFieldRect: + serializedVersion: 2 + x: 0 + y: 0 + width: 0 + height: 0 + m_UserData: 0 + m_IsWaitingForDelay: 0 + m_IsRenaming: 0 + m_OriginalEventType: 11 + m_IsRenamingFilename: 0 + m_ClientGUIView: {fileID: 5} + m_SearchString: + m_ExpandedScenes: + - t15-scene + m_CurrenRootInstanceID: 0 + m_Locked: 0 + m_CurrentSortingName: TransformSorting +--- !u!114 &21 +MonoBehaviour: + m_ObjectHideFlags: 52 + m_PrefabParentObject: {fileID: 0} + m_PrefabInternal: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 1 + m_Script: {fileID: 12015, guid: 0000000000000000e000000000000000, type: 0} + m_Name: + m_EditorClassIdentifier: + m_AutoRepaintOnSceneChange: 1 + m_MinSize: {x: 200, y: 200} + m_MaxSize: {x: 4000, y: 4000} + m_TitleContent: + m_Text: Game + m_Image: {fileID: -6423792434712278376, guid: 0000000000000000d000000000000000, + type: 0} + m_Tooltip: + m_DepthBufferBits: 32 + m_Pos: + serializedVersion: 2 + x: 0 + y: 503 + width: 863 + height: 371 + m_MaximizeOnPlay: 0 + m_Gizmos: 0 + m_Stats: 0 + m_SelectedSizes: 00000000000000000000000000000000000000000000000000000000000000000000000000000000 + m_TargetDisplay: 0 + m_ZoomArea: + m_HRangeLocked: 0 + m_VRangeLocked: 0 + m_HBaseRangeMin: -431.5 + m_HBaseRangeMax: 431.5 + m_VBaseRangeMin: -177 + m_VBaseRangeMax: 177 + m_HAllowExceedBaseRangeMin: 1 + m_HAllowExceedBaseRangeMax: 1 + m_VAllowExceedBaseRangeMin: 1 + m_VAllowExceedBaseRangeMax: 1 + m_ScaleWithWindow: 0 + m_HSlider: 0 + m_VSlider: 0 + m_IgnoreScrollWheelUntilClicked: 0 + m_EnableMouseInput: 1 + m_EnableSliderZoom: 0 + m_UniformScale: 1 + m_UpDirection: 1 + m_DrawArea: + serializedVersion: 2 + x: 0 + y: 17 + width: 863 + height: 354 + m_Scale: {x: 1, y: 1} + m_Translation: {x: 431.5, y: 177} + m_MarginLeft: 0 + m_MarginRight: 0 + m_MarginTop: 0 + m_MarginBottom: 0 + m_LastShownAreaInsideMargins: + serializedVersion: 2 + x: -431.5 + y: -177 + width: 863 + height: 354 + m_MinimalGUI: 1 + m_defaultScale: 1 + m_TargetTexture: {fileID: 0} + m_CurrentColorSpace: 1 + m_LastWindowPixelSize: {x: 863, y: 371} + m_ClearInEditMode: 1 + m_NoCameraWarning: 1 + m_LowResolutionForAspectRatios: 01000000000100000100 diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/Layouts/BasicTutorialLayout.wlt.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/Layouts/BasicTutorialLayout.wlt.meta" new file mode 100644 index 00000000..32a1117b --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/Layouts/BasicTutorialLayout.wlt.meta" @@ -0,0 +1,9 @@ +fileFormatVersion: 2 +guid: 17c09cacad7e744c6917e11740b562b7 +timeCreated: 1505989308 +licenseType: Pro +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/Scripts.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/Scripts.meta" new file mode 100644 index 00000000..f8994ed2 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/Scripts.meta" @@ -0,0 +1,9 @@ +fileFormatVersion: 2 +guid: 69e6fec836b644ea0a39961b8f78bbaa +folderAsset: yes +timeCreated: 1486306568 +licenseType: Pro +DefaultImporter: + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/Scripts/BaseCollisionBroadcaster.cs" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/Scripts/BaseCollisionBroadcaster.cs" new file mode 100644 index 00000000..d8c8e9c8 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/Scripts/BaseCollisionBroadcaster.cs" @@ -0,0 +1,6 @@ +using UnityEngine; + +namespace Unity.InteractiveTutorials +{ + public abstract class BaseCollisionBroadcaster : MonoBehaviour {} +} diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/Scripts/BaseCollisionBroadcaster.cs.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/Scripts/BaseCollisionBroadcaster.cs.meta" new file mode 100644 index 00000000..05c6cf23 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/Scripts/BaseCollisionBroadcaster.cs.meta" @@ -0,0 +1,12 @@ +fileFormatVersion: 2 +guid: 570a68ad30c6f4969ad1d93fb5f9a537 +timeCreated: 1484870260 +licenseType: Pro +MonoImporter: + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/Scripts/CollisionBroadcaster2D.cs" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/Scripts/CollisionBroadcaster2D.cs" new file mode 100644 index 00000000..64a6fc56 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/Scripts/CollisionBroadcaster2D.cs" @@ -0,0 +1,51 @@ +using UnityEngine; + +namespace Unity.InteractiveTutorials +{ + [RequireComponent(typeof(Collider2D))] + public class CollisionBroadcaster2D : BaseCollisionBroadcaster + { + public delegate void EventHandler(CollisionBroadcaster2D sender); + + public static event EventHandler playerEnteredCollision = null; + public static event EventHandler playerExitedCollision = null; + public static event EventHandler playerEnteredTrigger = null; + public static event EventHandler playerExitedTrigger = null; + + void OnCollisionEnter2D(Collision2D collision) + { + if (collision.gameObject.GetComponentInChildren() != null) + { + if (playerEnteredCollision != null) + playerEnteredCollision(this); + } + } + + void OnCollisionExit2D(Collision2D collision) + { + if (collision.gameObject.GetComponentInChildren() != null) + { + if (playerExitedCollision != null) + playerExitedCollision(this); + } + } + + void OnTriggerEnter2D(Collider2D collider) + { + if (collider.GetComponentInChildren() != null) + { + if (playerEnteredTrigger != null) + playerEnteredTrigger(this); + } + } + + void OnTriggerExit2D(Collider2D collider) + { + if (collider.GetComponentInChildren() != null) + { + if (playerExitedTrigger != null) + playerExitedTrigger(this); + } + } + } +} diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/Scripts/CollisionBroadcaster2D.cs.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/Scripts/CollisionBroadcaster2D.cs.meta" new file mode 100644 index 00000000..463c5dba --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/Scripts/CollisionBroadcaster2D.cs.meta" @@ -0,0 +1,12 @@ +fileFormatVersion: 2 +guid: 3446edfea3b634c488cbf0803bd91a68 +timeCreated: 1484786901 +licenseType: Pro +MonoImporter: + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/Scripts/CollisionBroadcaster3D.cs" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/Scripts/CollisionBroadcaster3D.cs" new file mode 100644 index 00000000..5528ee4f --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/Scripts/CollisionBroadcaster3D.cs" @@ -0,0 +1,53 @@ +using UnityEngine; + +namespace Unity.InteractiveTutorials +{ + [RequireComponent(typeof(Collider))] + public class CollisionBroadcaster3D : BaseCollisionBroadcaster + { + public delegate void EventHandler(CollisionBroadcaster3D sender); + + public static event EventHandler playerEnteredCollision = null; + public static event EventHandler playerExitedCollision = null; + public static event EventHandler playerEnteredTrigger = null; + public static event EventHandler playerExitedTrigger = null; + + void OnCollisionEnter(Collision collision) + { + if (collision.gameObject.GetComponentInChildren() != null) + { + if (playerEnteredCollision != null) + playerEnteredCollision(this); + } + } + + void OnCollisionExit(Collision collision) + { + if (collision.gameObject.GetComponentInChildren() != null) + { + if (playerExitedCollision != null) + playerExitedCollision(this); + } + } + + void OnTriggerEnter(Collider collider) + { + if (collider.GetComponent() != null) + { + if (playerEnteredTrigger != null) + { + playerEnteredTrigger(this); + } + } + } + + void OnTriggerExit(Collider collider) + { + if (collider.GetComponentInChildren() != null) + { + if (playerExitedTrigger != null) + playerExitedTrigger(this); + } + } + } +} diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/Scripts/CollisionBroadcaster3D.cs.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/Scripts/CollisionBroadcaster3D.cs.meta" new file mode 100644 index 00000000..f24d77ef --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/Scripts/CollisionBroadcaster3D.cs.meta" @@ -0,0 +1,12 @@ +fileFormatVersion: 2 +guid: 94062d33eb84e40f799106f2f0b4dd6f +timeCreated: 1489590989 +licenseType: Pro +MonoImporter: + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/Scripts/IPlayerAvatar.cs" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/Scripts/IPlayerAvatar.cs" new file mode 100644 index 00000000..9b7f8ae6 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/Scripts/IPlayerAvatar.cs" @@ -0,0 +1,4 @@ +namespace Unity.InteractiveTutorials +{ + public interface IPlayerAvatar {} +} diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/Scripts/IPlayerAvatar.cs.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/Scripts/IPlayerAvatar.cs.meta" new file mode 100644 index 00000000..7f4543af --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/Scripts/IPlayerAvatar.cs.meta" @@ -0,0 +1,12 @@ +fileFormatVersion: 2 +guid: 63fa812e71e654b3698d502a019ce495 +timeCreated: 1484785775 +licenseType: Pro +MonoImporter: + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/Scripts/SceneObjectGUIDComponent.cs" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/Scripts/SceneObjectGUIDComponent.cs" new file mode 100644 index 00000000..8f3c7b4b --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/Scripts/SceneObjectGUIDComponent.cs" @@ -0,0 +1,57 @@ +using System; +using UnityEngine; +using System.Linq; + +[ExecuteInEditMode] +[DisallowMultipleComponent] +[AddComponentMenu("")] +public class SceneObjectGUIDComponent : MonoBehaviour +{ + [SerializeField] private string m_Id; + [NonSerialized] private bool m_Registered; + + public string id + { + get { return m_Id; } + } + + public void Awake() + { + if (!Application.isEditor) + Destroy(this); + if (string.IsNullOrEmpty(m_Id)) + { + m_Id = Guid.NewGuid().ToString(); + } + else + { + var components = UnityEngine.Object.FindObjectsOfType(); + if (components.Any(c => c.m_Id == m_Id && c != this)) + { + m_Id = Guid.NewGuid().ToString(); + } + } + hideFlags |= HideFlags.HideInInspector; + Register(); + } + + private void Register() + { + if (m_Registered || !Application.isEditor) + return; + SceneObjectGUIDManager.instance.Register(this); + m_Registered = true; + } + + void OnValidate() + { + // Register in OnValidate becuase Awake in not called on domain reload in edit mode + Register(); + } + + void OnDestroy() + { + if (SceneObjectGUIDManager.IsInitiated) + SceneObjectGUIDManager.instance.Deregister(this); + } +} diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/Scripts/SceneObjectGUIDComponent.cs.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/Scripts/SceneObjectGUIDComponent.cs.meta" new file mode 100644 index 00000000..893261aa --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/Scripts/SceneObjectGUIDComponent.cs.meta" @@ -0,0 +1,12 @@ +fileFormatVersion: 2 +guid: c8534e17a0f90604c9afd4f5c73d829f +timeCreated: 1489504873 +licenseType: Pro +MonoImporter: + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/Scripts/SceneObjectGUIDManager.cs" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/Scripts/SceneObjectGUIDManager.cs" new file mode 100644 index 00000000..d3096784 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/Scripts/SceneObjectGUIDManager.cs" @@ -0,0 +1,56 @@ +using System.Collections.Generic; +using UnityEngine.Assertions; + +public class SceneObjectGUIDManager +{ + private static SceneObjectGUIDManager m_Instance; + private Dictionary components = new Dictionary(); + + public static SceneObjectGUIDManager instance + { + get + { + if (!IsInitiated) + { + m_Instance = new SceneObjectGUIDManager(); + } + return m_Instance; + } + + /*internal*/ set { m_Instance = value; } + } + + /*internal */ public SceneObjectGUIDManager() + { + } + + public static bool IsInitiated { get { return m_Instance != null; } } + + public void Register(SceneObjectGUIDComponent component) + { + Assert.IsFalse(string.IsNullOrEmpty(component.id)); + + //Add will trow an exception if the id is already registered + components.Add(component.id, component); + } + + public bool Contains(string id) + { + return components.ContainsKey(id); + } + + public void Deregister(SceneObjectGUIDComponent component) + { + components.Remove(component.id); + } + + public SceneObjectGUIDComponent GetComponent(string id) + { + SceneObjectGUIDComponent value; + if (components.TryGetValue(id, out value)) + { + return value; + } + return null; + } +} diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/Scripts/SceneObjectGUIDManager.cs.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/Scripts/SceneObjectGUIDManager.cs.meta" new file mode 100644 index 00000000..5bb05672 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/Scripts/SceneObjectGUIDManager.cs.meta" @@ -0,0 +1,12 @@ +fileFormatVersion: 2 +guid: 1939922b589fdb04ba33d715c4b36eb8 +timeCreated: 1489504846 +licenseType: Pro +MonoImporter: + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/Scripts/SelectionRoot.cs" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/Scripts/SelectionRoot.cs" new file mode 100644 index 00000000..db701a28 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/Scripts/SelectionRoot.cs" @@ -0,0 +1,15 @@ +using UnityEngine; + +namespace Unity.InteractiveTutorials +{ + [SelectionBase, ExecuteInEditMode] + public class SelectionRoot : MonoBehaviour + { + void Update() + { + this.transform.position = Vector3.zero; + this.transform.rotation = Quaternion.identity; + this.transform.localScale = Vector3.one; + } + } +} diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/Scripts/SelectionRoot.cs.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/Scripts/SelectionRoot.cs.meta" new file mode 100644 index 00000000..f7e857dd --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/Scripts/SelectionRoot.cs.meta" @@ -0,0 +1,12 @@ +fileFormatVersion: 2 +guid: 93c47991338714f50b52b8a755010a8c +timeCreated: 1484948861 +licenseType: Pro +MonoImporter: + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/Scripts/Unity.InteractiveTutorials.Core.Scripts.asmdef" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/Scripts/Unity.InteractiveTutorials.Core.Scripts.asmdef" new file mode 100644 index 00000000..123e52fb --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/Scripts/Unity.InteractiveTutorials.Core.Scripts.asmdef" @@ -0,0 +1,12 @@ +{ + "name": "Unity.InteractiveTutorials.Core.Scripts", + "references": [], + "optionalUnityReferences": [], + "includePlatforms": [], + "excludePlatforms": [], + "allowUnsafeCode": false, + "overrideReferences": false, + "precompiledReferences": [], + "autoReferenced": true, + "defineConstraints": [] +} \ No newline at end of file diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/Scripts/Unity.InteractiveTutorials.Core.Scripts.asmdef.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/Scripts/Unity.InteractiveTutorials.Core.Scripts.asmdef.meta" new file mode 100644 index 00000000..b5afa26e --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/Scripts/Unity.InteractiveTutorials.Core.Scripts.asmdef.meta" @@ -0,0 +1,7 @@ +fileFormatVersion: 2 +guid: fb96225907e8e4c489ebe0f690ba2ecd +AssemblyDefinitionImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/TutorialInfo.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/TutorialInfo.meta" new file mode 100644 index 00000000..31086754 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/TutorialInfo.meta" @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 538702d66bb131f43b424b6e746aef28 +folderAsset: yes +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/TutorialInfo/Icons.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/TutorialInfo/Icons.meta" new file mode 100644 index 00000000..1d19fb99 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/TutorialInfo/Icons.meta" @@ -0,0 +1,9 @@ +fileFormatVersion: 2 +guid: 8a0c9218a650547d98138cd835033977 +folderAsset: yes +timeCreated: 1484670163 +licenseType: Store +DefaultImporter: + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/TutorialInfo/Icons/Help_Icon.png" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/TutorialInfo/Icons/Help_Icon.png" new file mode 100644 index 00000000..0f4aeb3f Binary files /dev/null and "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/TutorialInfo/Icons/Help_Icon.png" differ diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/TutorialInfo/Icons/Help_Icon.png.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/TutorialInfo/Icons/Help_Icon.png.meta" new file mode 100644 index 00000000..77041667 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/TutorialInfo/Icons/Help_Icon.png.meta" @@ -0,0 +1,92 @@ +fileFormatVersion: 2 +guid: a186f8a87ca4f4d3aa864638ad5dfb65 +timeCreated: 1484669919 +licenseType: Store +TextureImporter: + fileIDToRecycleName: {} + serializedVersion: 4 + mipmaps: + mipMapMode: 0 + enableMipMap: 0 + sRGBTexture: 0 + linearTexture: 0 + fadeOut: 0 + borderMipMap: 0 + mipMapFadeDistanceStart: 1 + mipMapFadeDistanceEnd: 3 + bumpmap: + convertToNormalMap: 0 + externalNormalMap: 0 + heightScale: 0.25 + normalMapFilter: 0 + isReadable: 0 + grayScaleToAlpha: 0 + generateCubemap: 6 + cubemapConvolution: 0 + seamlessCubemap: 0 + textureFormat: 1 + maxTextureSize: 2048 + textureSettings: + filterMode: -1 + aniso: 1 + mipBias: -1 + wrapMode: 1 + nPOTScale: 0 + lightmap: 0 + compressionQuality: 50 + spriteMode: 1 + spriteExtrude: 1 + spriteMeshType: 1 + alignment: 0 + spritePivot: {x: 0.5, y: 0.5} + spriteBorder: {x: 0, y: 0, z: 0, w: 0} + spritePixelsToUnits: 100 + alphaUsage: 1 + alphaIsTransparency: 1 + spriteTessellationDetail: -1 + textureType: 2 + textureShape: 1 + maxTextureSizeSet: 0 + compressionQualitySet: 0 + textureFormatSet: 0 + platformSettings: + - buildTarget: DefaultTexturePlatform + maxTextureSize: 2048 + textureFormat: -1 + textureCompression: 0 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + - buildTarget: Standalone + maxTextureSize: 2048 + textureFormat: -1 + textureCompression: 0 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + - buildTarget: iPhone + maxTextureSize: 2048 + textureFormat: -1 + textureCompression: 0 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + - buildTarget: tvOS + maxTextureSize: 2048 + textureFormat: -1 + textureCompression: 0 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + spriteSheet: + serializedVersion: 2 + sprites: [] + outline: [] + spritePackingTag: + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/TutorialInfo/Layout.wlt" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/TutorialInfo/Layout.wlt" new file mode 100644 index 00000000..72fddada --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/TutorialInfo/Layout.wlt" @@ -0,0 +1,767 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!114 &1 +MonoBehaviour: + m_ObjectHideFlags: 52 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 1 + m_Script: {fileID: 12004, guid: 0000000000000000e000000000000000, type: 0} + m_Name: + m_EditorClassIdentifier: + m_PixelRect: + serializedVersion: 2 + x: 0 + y: 45 + width: 2560 + height: 1330 + m_ShowMode: 4 + m_Title: + m_RootView: {fileID: 7} + m_MinSize: {x: 950, y: 548} + m_MaxSize: {x: 10000, y: 10000} +--- !u!114 &2 +MonoBehaviour: + m_ObjectHideFlags: 52 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 12006, guid: 0000000000000000e000000000000000, type: 0} + m_Name: + m_EditorClassIdentifier: + m_Children: [] + m_Position: + serializedVersion: 2 + x: 2258 + y: 0 + width: 302 + height: 1280 + m_MinSize: {x: 302, y: 404} + m_MaxSize: {x: 4002, y: 4024} + m_ActualView: {fileID: 13} + m_Panes: + - {fileID: 13} + m_Selected: 0 + m_LastSelected: 0 +--- !u!114 &3 +MonoBehaviour: + m_ObjectHideFlags: 52 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 1 + m_Script: {fileID: 12010, guid: 0000000000000000e000000000000000, type: 0} + m_Name: + m_EditorClassIdentifier: + m_Children: + - {fileID: 10} + - {fileID: 4} + - {fileID: 2} + m_Position: + serializedVersion: 2 + x: 0 + y: 30 + width: 2560 + height: 1280 + m_MinSize: {x: 987, y: 498} + m_MaxSize: {x: 18008, y: 14048} + vertical: 0 + controlID: 469 +--- !u!114 &4 +MonoBehaviour: + m_ObjectHideFlags: 52 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 1 + m_Script: {fileID: 12006, guid: 0000000000000000e000000000000000, type: 0} + m_Name: + m_EditorClassIdentifier: + m_Children: [] + m_Position: + serializedVersion: 2 + x: 1979 + y: 0 + width: 279 + height: 1280 + m_MinSize: {x: 279, y: 74} + m_MaxSize: {x: 4004, y: 4024} + m_ActualView: {fileID: 16} + m_Panes: + - {fileID: 16} + m_Selected: 0 + m_LastSelected: 0 +--- !u!114 &5 +MonoBehaviour: + m_ObjectHideFlags: 52 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 1 + m_Script: {fileID: 12006, guid: 0000000000000000e000000000000000, type: 0} + m_Name: + m_EditorClassIdentifier: + m_Children: [] + m_Position: + serializedVersion: 2 + x: 0 + y: 0 + width: 325 + height: 820 + m_MinSize: {x: 202, y: 224} + m_MaxSize: {x: 4002, y: 4024} + m_ActualView: {fileID: 17} + m_Panes: + - {fileID: 17} + m_Selected: 0 + m_LastSelected: 0 +--- !u!114 &6 +MonoBehaviour: + m_ObjectHideFlags: 52 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 1 + m_Script: {fileID: 12006, guid: 0000000000000000e000000000000000, type: 0} + m_Name: + m_EditorClassIdentifier: + m_Children: [] + m_Position: + serializedVersion: 2 + x: 0 + y: 820 + width: 1979 + height: 460 + m_MinSize: {x: 232, y: 274} + m_MaxSize: {x: 10002, y: 10024} + m_ActualView: {fileID: 15} + m_Panes: + - {fileID: 15} + - {fileID: 20} + m_Selected: 0 + m_LastSelected: 1 +--- !u!114 &7 +MonoBehaviour: + m_ObjectHideFlags: 52 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 1 + m_Script: {fileID: 12008, guid: 0000000000000000e000000000000000, type: 0} + m_Name: + m_EditorClassIdentifier: + m_Children: + - {fileID: 8} + - {fileID: 3} + - {fileID: 9} + m_Position: + serializedVersion: 2 + x: 0 + y: 0 + width: 2560 + height: 1330 + m_MinSize: {x: 950, y: 548} + m_MaxSize: {x: 10000, y: 10000} +--- !u!114 &8 +MonoBehaviour: + m_ObjectHideFlags: 52 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 1 + m_Script: {fileID: 12011, guid: 0000000000000000e000000000000000, type: 0} + m_Name: + m_EditorClassIdentifier: + m_Children: [] + m_Position: + serializedVersion: 2 + x: 0 + y: 0 + width: 2560 + height: 30 + m_MinSize: {x: 0, y: 0} + m_MaxSize: {x: 0, y: 0} + m_LastLoadedLayoutName: +--- !u!114 &9 +MonoBehaviour: + m_ObjectHideFlags: 52 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 1 + m_Script: {fileID: 12042, guid: 0000000000000000e000000000000000, type: 0} + m_Name: + m_EditorClassIdentifier: + m_Children: [] + m_Position: + serializedVersion: 2 + x: 0 + y: 1310 + width: 2560 + height: 20 + m_MinSize: {x: 0, y: 0} + m_MaxSize: {x: 0, y: 0} +--- !u!114 &10 +MonoBehaviour: + m_ObjectHideFlags: 52 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 1 + m_Script: {fileID: 12010, guid: 0000000000000000e000000000000000, type: 0} + m_Name: + m_EditorClassIdentifier: + m_Children: + - {fileID: 11} + - {fileID: 6} + m_Position: + serializedVersion: 2 + x: 0 + y: 0 + width: 1979 + height: 1280 + m_MinSize: {x: 406, y: 498} + m_MaxSize: {x: 10002, y: 14048} + vertical: 1 + controlID: 470 +--- !u!114 &11 +MonoBehaviour: + m_ObjectHideFlags: 52 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 1 + m_Script: {fileID: 12010, guid: 0000000000000000e000000000000000, type: 0} + m_Name: + m_EditorClassIdentifier: + m_Children: + - {fileID: 5} + - {fileID: 12} + m_Position: + serializedVersion: 2 + x: 0 + y: 0 + width: 1979 + height: 820 + m_MinSize: {x: 406, y: 224} + m_MaxSize: {x: 8006, y: 4024} + vertical: 0 + controlID: 471 +--- !u!114 &12 +MonoBehaviour: + m_ObjectHideFlags: 52 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 1 + m_Script: {fileID: 12006, guid: 0000000000000000e000000000000000, type: 0} + m_Name: + m_EditorClassIdentifier: + m_Children: [] + m_Position: + serializedVersion: 2 + x: 325 + y: 0 + width: 1654 + height: 820 + m_MinSize: {x: 204, y: 224} + m_MaxSize: {x: 4004, y: 4024} + m_ActualView: {fileID: 18} + m_Panes: + - {fileID: 18} + - {fileID: 19} + - {fileID: 14} + m_Selected: 0 + m_LastSelected: 1 +--- !u!114 &13 +MonoBehaviour: + m_ObjectHideFlags: 52 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: ba8f85f9d6bbb46d180610e6061865df, type: 3} + m_Name: + m_EditorClassIdentifier: + m_MinSize: {x: 300, y: 380} + m_MaxSize: {x: 4000, y: 4000} + m_TitleContent: + m_Text: Tutorials + m_Image: {fileID: 0} + m_Tooltip: + m_Pos: + serializedVersion: 2 + x: 2258 + y: 75 + width: 300 + height: 1260 + m_PersistentViewDataDictionary: {fileID: 0} + m_AllParagraphs: [] + m_Readme: {fileID: 0} + m_MaskingEnabled: 1 + m_ScrollPosition: {x: 0, y: 0} + m_FarthestPageCompleted: -1 + m_PlayModeChanging: 0 +--- !u!114 &14 +MonoBehaviour: + m_ObjectHideFlags: 52 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 1 + m_Script: {fileID: 12111, guid: 0000000000000000e000000000000000, type: 0} + m_Name: + m_EditorClassIdentifier: + m_MinSize: {x: 400, y: 100} + m_MaxSize: {x: 2048, y: 2048} + m_TitleContent: + m_Text: Asset Store + m_Image: {fileID: 357073275683767465, guid: 0000000000000000d000000000000000, + type: 0} + m_Tooltip: + m_Pos: + serializedVersion: 2 + x: 468 + y: 181 + width: 973 + height: 501 + m_PersistentViewDataDictionary: {fileID: 0} +--- !u!114 &15 +MonoBehaviour: + m_ObjectHideFlags: 52 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 1 + m_Script: {fileID: 12014, guid: 0000000000000000e000000000000000, type: 0} + m_Name: + m_EditorClassIdentifier: + m_MinSize: {x: 230, y: 250} + m_MaxSize: {x: 10000, y: 10000} + m_TitleContent: + m_Text: Project + m_Image: {fileID: -7501376956915960154, guid: 0000000000000000d000000000000000, + type: 0} + m_Tooltip: + m_Pos: + serializedVersion: 2 + x: 0 + y: 895 + width: 1977 + height: 440 + m_PersistentViewDataDictionary: {fileID: 0} + m_SearchFilter: + m_NameFilter: + m_ClassNames: [] + m_AssetLabels: [] + m_AssetBundleNames: [] + m_VersionControlStates: [] + m_SoftLockControlStates: [] + m_ReferencingInstanceIDs: + m_SceneHandles: + m_ShowAllHits: 0 + m_SearchArea: 1 + m_Folders: + - Assets/UTech/MG-Karting + m_ViewMode: 1 + m_StartGridSize: 64 + m_LastFolders: + - Assets/UTech/MG-Karting + m_LastFoldersGridSize: -1 + m_LastProjectPath: /Users/anttinieminen/GitHubEnterprise/kart-template + m_LockTracker: + m_IsLocked: 0 + m_FolderTreeState: + scrollPos: {x: 0, y: 0} + m_SelectedIDs: c6160000 + m_LastClickedID: 5830 + m_ExpandedIDs: 000000005a1100001e1200004c16000092160000c616000078190000941b0000bc1b0000c21b000000ca9a3b + m_RenameOverlay: + m_UserAcceptedRename: 0 + m_Name: + m_OriginalName: + m_EditFieldRect: + serializedVersion: 2 + x: 0 + y: 0 + width: 0 + height: 0 + m_UserData: 0 + m_IsWaitingForDelay: 0 + m_IsRenaming: 0 + m_OriginalEventType: 11 + m_IsRenamingFilename: 1 + m_ClientGUIView: {fileID: 0} + m_SearchString: + m_CreateAssetUtility: + m_EndAction: {fileID: 0} + m_InstanceID: 0 + m_Path: + m_Icon: {fileID: 0} + m_ResourceFile: + m_AssetTreeState: + scrollPos: {x: 0, y: 0} + m_SelectedIDs: + m_LastClickedID: 0 + m_ExpandedIDs: 000000005a1100001e1200004c16000092160000c616000078190000941b0000bc1b0000c21b000000ca9a3b + m_RenameOverlay: + m_UserAcceptedRename: 0 + m_Name: + m_OriginalName: + m_EditFieldRect: + serializedVersion: 2 + x: 0 + y: 0 + width: 0 + height: 0 + m_UserData: 0 + m_IsWaitingForDelay: 0 + m_IsRenaming: 0 + m_OriginalEventType: 11 + m_IsRenamingFilename: 1 + m_ClientGUIView: {fileID: 0} + m_SearchString: + m_CreateAssetUtility: + m_EndAction: {fileID: 0} + m_InstanceID: 0 + m_Path: + m_Icon: {fileID: 0} + m_ResourceFile: + m_ListAreaState: + m_SelectedInstanceIDs: + m_LastClickedInstanceID: 0 + m_HadKeyboardFocusLastEvent: 0 + m_ExpandedInstanceIDs: c6230000 + m_RenameOverlay: + m_UserAcceptedRename: 0 + m_Name: + m_OriginalName: + m_EditFieldRect: + serializedVersion: 2 + x: 0 + y: 0 + width: 0 + height: 0 + m_UserData: 0 + m_IsWaitingForDelay: 0 + m_IsRenaming: 0 + m_OriginalEventType: 11 + m_IsRenamingFilename: 1 + m_ClientGUIView: {fileID: 0} + m_CreateAssetUtility: + m_EndAction: {fileID: 0} + m_InstanceID: 0 + m_Path: + m_Icon: {fileID: 0} + m_ResourceFile: + m_NewAssetIndexInList: -1 + m_ScrollPosition: {x: 0, y: 0} + m_GridSize: 64 + m_DirectoriesAreaWidth: 320 +--- !u!114 &16 +MonoBehaviour: + m_ObjectHideFlags: 52 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 1 + m_Script: {fileID: 12019, guid: 0000000000000000e000000000000000, type: 0} + m_Name: + m_EditorClassIdentifier: + m_MinSize: {x: 275, y: 50} + m_MaxSize: {x: 4000, y: 4000} + m_TitleContent: + m_Text: Inspector + m_Image: {fileID: -6905738622615590433, guid: 0000000000000000d000000000000000, + type: 0} + m_Tooltip: + m_Pos: + serializedVersion: 2 + x: 1979 + y: 75 + width: 275 + height: 1260 + m_PersistentViewDataDictionary: {fileID: 0} + m_ObjectsLockedBeforeSerialization: [] + m_InstanceIDsLockedBeforeSerialization: + m_LockTracker: + m_IsLocked: 0 + m_PreviewResizer: + m_CachedPref: 160 + m_ControlHash: -371814159 + m_PrefName: Preview_InspectorPreview + m_PreviewWindow: {fileID: 0} +--- !u!114 &17 +MonoBehaviour: + m_ObjectHideFlags: 52 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 1 + m_Script: {fileID: 12061, guid: 0000000000000000e000000000000000, type: 0} + m_Name: + m_EditorClassIdentifier: + m_MinSize: {x: 200, y: 200} + m_MaxSize: {x: 4000, y: 4000} + m_TitleContent: + m_Text: Hierarchy + m_Image: {fileID: -590624980919486359, guid: 0000000000000000d000000000000000, + type: 0} + m_Tooltip: + m_Pos: + serializedVersion: 2 + x: 0 + y: 75 + width: 323 + height: 800 + m_PersistentViewDataDictionary: {fileID: 0} + m_SceneHierarchy: + m_TreeViewState: + scrollPos: {x: 0, y: 0} + m_SelectedIDs: + m_LastClickedID: 0 + m_ExpandedIDs: d6eaffffd0fbffff + m_RenameOverlay: + m_UserAcceptedRename: 0 + m_Name: + m_OriginalName: + m_EditFieldRect: + serializedVersion: 2 + x: 0 + y: 0 + width: 0 + height: 0 + m_UserData: 0 + m_IsWaitingForDelay: 0 + m_IsRenaming: 0 + m_OriginalEventType: 11 + m_IsRenamingFilename: 0 + m_ClientGUIView: {fileID: 0} + m_SearchString: + m_ExpandedScenes: [] + m_CurrenRootInstanceID: 0 + m_LockTracker: + m_IsLocked: 0 + m_CurrentSortingName: TransformSorting + m_WindowGUID: 46b7a0fefa812c44ca6fda42b4d7b176 +--- !u!114 &18 +MonoBehaviour: + m_ObjectHideFlags: 52 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 1 + m_Script: {fileID: 12013, guid: 0000000000000000e000000000000000, type: 0} + m_Name: + m_EditorClassIdentifier: + m_MinSize: {x: 200, y: 200} + m_MaxSize: {x: 4000, y: 4000} + m_TitleContent: + m_Text: Scene + m_Image: {fileID: 0} + m_Tooltip: + m_Pos: + serializedVersion: 2 + x: 325 + y: 75 + width: 1650 + height: 800 + m_PersistentViewDataDictionary: {fileID: 0} + m_WindowGUID: d69a67902db7f994ca099bec79d22ce1 + m_SceneLighting: 1 + m_2DMode: 0 + m_isRotationLocked: 0 + m_AudioPlay: 0 + m_Position: + m_Target: {x: -5, y: 26.339746, z: -12} + speed: 2 + m_Value: {x: -5, y: 26.339746, z: -12} + m_RenderMode: 0 + m_CameraMode: + drawMode: 0 + name: Shaded + section: Shading Mode + m_ValidateTrueMetals: 0 + m_SceneViewState: + showFog: 1 + showMaterialUpdate: 0 + showSkybox: 1 + showFlares: 1 + showImageEffects: 1 + showParticleSystems: 1 + grid: + xGrid: + m_Target: 0 + speed: 2 + m_Value: 0 + yGrid: + m_Target: 1 + speed: 2 + m_Value: 1 + zGrid: + m_Target: 0 + speed: 2 + m_Value: 0 + m_Rotation: + m_Target: {x: -0.5, y: 0, z: 0, w: -0.8660254} + speed: 2 + m_Value: {x: -0.5, y: 0, z: 0, w: -0.8660254} + m_Size: + m_Target: 10 + speed: 2 + m_Value: 10 + m_Ortho: + m_Target: 0 + speed: 2 + m_Value: 0 + m_ShowGlobalGrid: 1 + m_LastSceneViewRotation: {x: 0, y: 0, z: 0, w: 0} + m_LastSceneViewOrtho: 0 + m_ReplacementShader: {fileID: 0} + m_ReplacementString: + m_LastLockedObject: {fileID: 0} + m_ViewIsLockedToObject: 0 +--- !u!114 &19 +MonoBehaviour: + m_ObjectHideFlags: 52 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 1 + m_Script: {fileID: 12015, guid: 0000000000000000e000000000000000, type: 0} + m_Name: + m_EditorClassIdentifier: + m_MinSize: {x: 200, y: 200} + m_MaxSize: {x: 4000, y: 4000} + m_TitleContent: + m_Text: Game + m_Image: {fileID: -2087823869225018852, guid: 0000000000000000d000000000000000, + type: 0} + m_Tooltip: + m_Pos: + serializedVersion: 2 + x: 529.3334 + y: 72.66667 + width: 1230 + height: 820 + m_PersistentViewDataDictionary: {fileID: 0} + m_MaximizeOnPlay: 0 + m_Gizmos: 0 + m_Stats: 0 + m_SelectedSizes: 05000000000000000000000000000000000000000000000000000000000000000000000000000000 + m_TargetDisplay: 0 + m_ZoomArea: + m_HRangeLocked: 0 + m_VRangeLocked: 0 + hZoomLockedByDefault: 0 + vZoomLockedByDefault: 0 + m_HBaseRangeMin: -615 + m_HBaseRangeMax: 615 + m_VBaseRangeMin: -346 + m_VBaseRangeMax: 346 + m_HAllowExceedBaseRangeMin: 1 + m_HAllowExceedBaseRangeMax: 1 + m_VAllowExceedBaseRangeMin: 1 + m_VAllowExceedBaseRangeMax: 1 + m_ScaleWithWindow: 0 + m_HSlider: 0 + m_VSlider: 0 + m_IgnoreScrollWheelUntilClicked: 0 + m_EnableMouseInput: 1 + m_EnableSliderZoomHorizontal: 0 + m_EnableSliderZoomVertical: 0 + m_UniformScale: 1 + m_UpDirection: 1 + m_DrawArea: + serializedVersion: 2 + x: 0 + y: 17 + width: 1230 + height: 803 + m_Scale: {x: 1, y: 1} + m_Translation: {x: 615, y: 401.5} + m_MarginLeft: 0 + m_MarginRight: 0 + m_MarginTop: 0 + m_MarginBottom: 0 + m_LastShownAreaInsideMargins: + serializedVersion: 2 + x: -615 + y: -401.5 + width: 1230 + height: 803 + m_MinimalGUI: 1 + m_defaultScale: 1 + m_TargetTexture: {fileID: 0} + m_CurrentColorSpace: 0 + m_LastWindowPixelSize: {x: 1230, y: 820} + m_ClearInEditMode: 1 + m_NoCameraWarning: 1 + m_LowResolutionForAspectRatios: 01000000000100000100 + m_XRRenderMode: 0 +--- !u!114 &20 +MonoBehaviour: + m_ObjectHideFlags: 52 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 1 + m_Script: {fileID: 12003, guid: 0000000000000000e000000000000000, type: 0} + m_Name: + m_EditorClassIdentifier: + m_MinSize: {x: 100, y: 100} + m_MaxSize: {x: 4000, y: 4000} + m_TitleContent: + m_Text: Console + m_Image: {fileID: 111653112392082826, guid: 0000000000000000d000000000000000, + type: 0} + m_Tooltip: + m_Pos: + serializedVersion: 2 + x: 0 + y: 895 + width: 1977 + height: 440 + m_PersistentViewDataDictionary: {fileID: 0} diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/TutorialInfo/Layout.wlt.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/TutorialInfo/Layout.wlt.meta" new file mode 100644 index 00000000..c0c8c773 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Interactive Tutorials/TutorialInfo/Layout.wlt.meta" @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: eabc9546105bf4accac1fd62a63e88e6 +timeCreated: 1487337779 +licenseType: Store +DefaultImporter: + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Unity.InteractiveTutorials.Core.asmdef" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Unity.InteractiveTutorials.Core.asmdef" new file mode 100644 index 00000000..564bf1bb --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Unity.InteractiveTutorials.Core.asmdef" @@ -0,0 +1,17 @@ +{ + "name": "Unity.InteractiveTutorials.Core", + "references": [ + "UnityEditor.InteractiveTutorialsFramework", + "Unity.InteractiveTutorials.Core.Scripts" + ], + "optionalUnityReferences": [], + "includePlatforms": [ + "Editor" + ], + "excludePlatforms": [], + "allowUnsafeCode": false, + "overrideReferences": false, + "precompiledReferences": [], + "autoReferenced": true, + "defineConstraints": [] +} \ No newline at end of file diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Unity.InteractiveTutorials.Core.asmdef.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Unity.InteractiveTutorials.Core.asmdef.meta" new file mode 100644 index 00000000..3cf792e1 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Framework/Unity.InteractiveTutorials.Core.asmdef.meta" @@ -0,0 +1,7 @@ +fileFormatVersion: 2 +guid: dca86c3434c38674a865b8fad7a81c91 +AssemblyDefinitionImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/LICENSE.md" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/LICENSE.md" new file mode 100644 index 00000000..eaf62da7 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/LICENSE.md" @@ -0,0 +1,5 @@ +Framework for In-Editor Tutorials copyright © 2018—2019 Unity Technologies ApS + +Licensed under the Unity Companion License for Unity-dependent projects--see [Unity Companion License](http://www.unity3d.com/legal/licenses/Unity_Companion_License). + +Unless expressly provided otherwise, the Software under this license is made available strictly on an “AS IS” BASIS WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED. Please review the license for details on these and other terms and conditions. diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/LICENSE.md.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/LICENSE.md.meta" new file mode 100644 index 00000000..6535ccb1 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/LICENSE.md.meta" @@ -0,0 +1,7 @@ +fileFormatVersion: 2 +guid: 29109c5a8f9b9484387d7dbf3bb5cb50 +TextScriptImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/README.md" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/README.md" new file mode 100644 index 00000000..011c1a53 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/README.md" @@ -0,0 +1,20 @@ +# In Editor Interactive Tutorials +--------- +This package is needed to have In Editor Tutorials working. + +**This package relies on Unity internals and is not available on production** + +## Setup +Follow those steps to add support to in Editor tutorials to your project/template: + +- Add `com.unity.learn.iet-framework` to your `dependencies` list to your project `manifest.json` +- To add authoring tools check the readme of [com.unity.learn.iet-framework.authoring](../com.unity.learn.iet-framework.authoring) + +Example: + + { + "dependencies": { + "com.unity.learn.iet-framework": "0.1.6-preview" + } + } +Make sure to use the latest version available of the package. diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/README.md.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/README.md.meta" new file mode 100644 index 00000000..a70aa9e9 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/README.md.meta" @@ -0,0 +1,7 @@ +fileFormatVersion: 2 +guid: 87da69dd64ab08e4793fbb7f6ce33d13 +TextScriptImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Tests.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Tests.meta" new file mode 100644 index 00000000..f5ee38d2 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Tests.meta" @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 9a81703689688df4fb732e36b44b5129 +folderAsset: yes +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Tests/AssemblyInfo.cs" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Tests/AssemblyInfo.cs" new file mode 100644 index 00000000..d07cfdf0 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Tests/AssemblyInfo.cs" @@ -0,0 +1,3 @@ +using System.Runtime.CompilerServices; + +[assembly: InternalsVisibleTo("Assembly-CSharp-Editor-firstpass-testable")] diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Tests/AssemblyInfo.cs.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Tests/AssemblyInfo.cs.meta" new file mode 100644 index 00000000..07c929ad --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Tests/AssemblyInfo.cs.meta" @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 9cc0bb751f1764b97ba7215c0e6d4269 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Tests/Editor.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Tests/Editor.meta" new file mode 100644 index 00000000..186a9887 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Tests/Editor.meta" @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 5fa87ebf88375c642a40e812b7e9ab5a +folderAsset: yes +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Tests/Editor/ActiveToolCriterionTests.cs" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Tests/Editor/ActiveToolCriterionTests.cs" new file mode 100644 index 00000000..37793f8f --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Tests/Editor/ActiveToolCriterionTests.cs" @@ -0,0 +1,49 @@ +using System.Collections; +using NUnit.Framework; +using UnityEditor; +using UnityEngine.TestTools; + +namespace Unity.InteractiveTutorials.Tests +{ + public class ActiveToolCriterionTests : CriterionTestBase + { + [SetUp] + public void Setup() + { + Tools.current = Tool.None; + } + + [UnityTest] + public IEnumerator WhenToolsDoNotMatch_IsNotCompleted() + { + m_Criterion.targetTool = Tool.Move; + yield return null; + + Assert.IsFalse(m_Criterion.completed); + } + + [UnityTest] + public IEnumerator ActivatingRequiredTool_IsCompleted() + { + m_Criterion.targetTool = Tool.Move; + Tools.current = Tool.Move; + + yield return null; + + Assert.IsTrue(m_Criterion.completed); + } + + + [UnityTest] + public IEnumerator AutoComplete_IsCompleted() + { + m_Criterion.targetTool = Tool.Rotate; + Assert.IsTrue(m_Criterion.AutoComplete()); + yield return null; + + Assert.IsTrue(m_Criterion.completed); + } + + } + +} \ No newline at end of file diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Tests/Editor/ActiveToolCriterionTests.cs.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Tests/Editor/ActiveToolCriterionTests.cs.meta" new file mode 100644 index 00000000..dd2e2fa8 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Tests/Editor/ActiveToolCriterionTests.cs.meta" @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 5be4b355a161aa14fa73676d84cdb6fb +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Tests/Editor/Assembly-CSharp-Editor-firstpass-testable.asmdef" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Tests/Editor/Assembly-CSharp-Editor-firstpass-testable.asmdef" new file mode 100644 index 00000000..a7d3235e --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Tests/Editor/Assembly-CSharp-Editor-firstpass-testable.asmdef" @@ -0,0 +1,21 @@ +{ + "name": "Assembly-CSharp-Editor-firstpass-testable", + "references": [ + "Unity.InteractiveTutorials.Core", + "UnityEditor.InteractiveTutorialsFramework", + "Unity.InteractiveTutorials.Core.Scripts", + "Unity.InteractiveTutorials.Core.Tests" + ], + "optionalUnityReferences": [ + "TestAssemblies" + ], + "includePlatforms": [ + "Editor" + ], + "excludePlatforms": [], + "allowUnsafeCode": false, + "overrideReferences": false, + "precompiledReferences": [], + "autoReferenced": true, + "defineConstraints": [] +} \ No newline at end of file diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Tests/Editor/Assembly-CSharp-Editor-firstpass-testable.asmdef.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Tests/Editor/Assembly-CSharp-Editor-firstpass-testable.asmdef.meta" new file mode 100644 index 00000000..fb47abad --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Tests/Editor/Assembly-CSharp-Editor-firstpass-testable.asmdef.meta" @@ -0,0 +1,7 @@ +fileFormatVersion: 2 +guid: 818209f9fcd961b4baecec75aa62384a +AssemblyDefinitionImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Tests/Editor/BuildPlayerTests.cs" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Tests/Editor/BuildPlayerTests.cs" new file mode 100644 index 00000000..368a7618 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Tests/Editor/BuildPlayerTests.cs" @@ -0,0 +1,78 @@ +using System; +using System.IO; +using NUnit.Framework; +using UnityEditor; +using UnityEngine; + +namespace Unity.InteractiveTutorials.Tests +{ + public class BuildPlayerTests : TestBase + { + static string buildPath + { + get + { + // NOTE Use "Builds" subfolder in order to make this test pass locally when + // using Windows & Visual Studio + const string buildName = "Builds/BuildPlayerTests_Build"; + if (Application.platform == RuntimePlatform.OSXEditor) + return buildName + ".app"; + return buildName; + } + } + + [SetUp] + public void SetUp() + { + Assert.That(File.Exists(buildPath), Is.False, "Existing file at path " + buildPath); + Assert.That(Directory.Exists(buildPath), Is.False, "Existing directory at path " + buildPath); + } + + [TearDown] + public void TearDown() + { + if (File.Exists(buildPath)) + File.Delete(buildPath); + + if (Directory.Exists(buildPath)) + Directory.Delete(buildPath, true); + } + + static BuildTarget buildTarget + { + get + { + switch (Application.platform) + { + case RuntimePlatform.OSXEditor: + return BuildTarget.StandaloneOSX; + + case RuntimePlatform.WindowsEditor: + return BuildTarget.StandaloneWindows; + + case RuntimePlatform.LinuxEditor: + // NOTE Universal & 32-bit Linux support dropped after 2018 LTS + return BuildTarget.StandaloneLinux64; + + default: + throw new ArgumentOutOfRangeException(); + } + } + } + + [Test] + public void BuildPlayer_Succeeds() + { + var buildPlayerOptions = new BuildPlayerOptions + { + scenes = new[] { GetTestAssetPath("EmptyTestScene.unity") }, + locationPathName = buildPath, + targetGroup = BuildTargetGroup.Standalone, + target = buildTarget, + options = BuildOptions.StrictMode, + }; + + BuildPipeline.BuildPlayer(buildPlayerOptions); + } + } +} diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Tests/Editor/BuildPlayerTests.cs.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Tests/Editor/BuildPlayerTests.cs.meta" new file mode 100644 index 00000000..92869bca --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Tests/Editor/BuildPlayerTests.cs.meta" @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: c9fd8882e57774a67a009dbe16674288 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Tests/Editor/BuildStartedCriterionTests.cs" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Tests/Editor/BuildStartedCriterionTests.cs" new file mode 100644 index 00000000..49a26701 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Tests/Editor/BuildStartedCriterionTests.cs" @@ -0,0 +1,52 @@ +using System.Collections; +using NUnit.Framework; +using Unity.InteractiveTutorials; +using Unity.InteractiveTutorials.Tests; +using UnityEditor; +using UnityEngine; +using UnityEngine.TestTools; +using UnityEngine.Windows; + +namespace Unity.InteractiveTutorials.Tests +{ + public class BuildStartedCriterionTests : CriterionTestBase + { + [UnityTest] + public IEnumerator CustomHandlerIsInvoked_IsCompleted() + { +#if UNITY_EDITOR_WIN + var target = BuildTarget.StandaloneWindows; + var locationPathName = "Test/Test.exe"; +#elif UNITY_EDITOR_OSX + var target = BuildTarget.StandaloneOSX; + var locationPathName = "Test/Test"; +#else +#error Unsupported platform +#endif + + m_Criterion.BuildPlayerCustomHandler(new BuildPlayerOptions + { + scenes = null, + target = target, + locationPathName = locationPathName, + targetGroup = BuildTargetGroup.Unknown + }); + yield return null; + + Assert.IsTrue(m_Criterion.completed); + + // Cleanup + if (Directory.Exists("Test")) + { + Directory.Delete("Test"); + } + } + + [UnityTest] + public IEnumerator AutoComplete_IsCompleted() + { + yield return null; + Assert.IsTrue(m_Criterion.AutoComplete()); + } + } +} diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Tests/Editor/BuildStartedCriterionTests.cs.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Tests/Editor/BuildStartedCriterionTests.cs.meta" new file mode 100644 index 00000000..c59b6d1e --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Tests/Editor/BuildStartedCriterionTests.cs.meta" @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: d13e5d9d3d5562a439db640aeb40a3ba +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Tests/Editor/ComponentAddedCriterionTests.cs" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Tests/Editor/ComponentAddedCriterionTests.cs" new file mode 100644 index 00000000..309a5235 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Tests/Editor/ComponentAddedCriterionTests.cs" @@ -0,0 +1,148 @@ +using System; +using System.Linq; +using System.Collections; +using System.Collections.Generic; +using NUnit.Framework; +using UnityEditor; +using UnityEditor.SceneManagement; +using UnityEngine; +using UnityEngine.TestTools; + +using UnityObject = UnityEngine.Object; + +namespace Unity.InteractiveTutorials.Tests +{ + public class ComponentAddedCriterionTests : CriterionTestBase + { + [SetUp] + public void OpenSceneAndSetUpCriterion() + { + EditorSceneManager.OpenScene(GetTestAssetPath("EmptyTestScene.unity")); + SaveActiveScene(); + } + + class ComponentA : MonoBehaviour + { + } + + class ComponentB : MonoBehaviour + { + } + + // TODO Pretty much all of these tets crash 2019.1 +#if !UNITY_2019_1_OR_NEWER + [UnityTest] + public IEnumerator WhenTargetGameObjectIsNotSet_IsNotCompleted() + { + yield return null; + + Assert.IsFalse(m_Criterion.completed); + } + + [UnityTest] + public IEnumerator WhenTargetGameObjectIsSetAndRequiredComponentsIsEmpty_IsCompleted() + { + m_Criterion.targetGameObject = new GameObject(); + yield return null; + + Assert.IsTrue(m_Criterion.completed); + } + + [UnityTest] + public IEnumerator WhenTargetGameObjectHasNoneOfTheRequiredComponents_IsNotCompleted() + { + m_Criterion.requiredComponents = new[] { typeof(ComponentA), typeof(ComponentB) }; + m_Criterion.targetGameObject = new GameObject(); + yield return null; + + Assert.IsFalse(m_Criterion.completed); + } + + [UnityTest] + public IEnumerator WhenTargetGameObjectHasSomeButNotAllOfTheRequiredComponents_IsNotCompleted() + { + m_Criterion.requiredComponents = new[] { typeof(ComponentA), typeof(ComponentB) }; + m_Criterion.targetGameObject = new GameObject("GameObject", typeof(ComponentA)); + yield return null; + + Assert.IsFalse(m_Criterion.completed); + } + + [UnityTest] + public IEnumerator WhenTargetGameObjectHasAllOfTheRequiredComponents_IsCompleted() + { + m_Criterion.requiredComponents = new[] { typeof(ComponentA), typeof(ComponentB) }; + m_Criterion.targetGameObject = new GameObject("GameObject", typeof(ComponentA), typeof(ComponentB)); + yield return null; + + Assert.IsTrue(m_Criterion.completed); + } + + [UnityTest] + public IEnumerator WhenTargetGameObjectHasOneOfTwoIdenticalRequiredComponents_IsCompleted() + { + m_Criterion.requiredComponents = new[] { typeof(ComponentA), typeof(ComponentA) }; + m_Criterion.targetGameObject = new GameObject("GameObject", typeof(ComponentA)); + yield return null; + + Assert.IsTrue(m_Criterion.completed); + } + + [Test] + public void WhenRequiredComponentsAreAlreadySatisfied_IsCompleted() + { + m_Criterion.StopTesting(); + + var gameObject = new GameObject("GameObject", typeof(ComponentA)); + m_Criterion.targetGameObject = gameObject; + m_Criterion.requiredComponents = new[] { typeof(ComponentA) }; + + m_Criterion.StartTesting(); + + Assert.IsTrue(m_Criterion.completed); + } + + [Test] + public void WhenRequiredComponentsIsSet_FutureReferencesAreCreated() + { + m_Criterion.requiredComponents = new[] { typeof(ComponentA), typeof(ComponentB), null, typeof(ComponentA) }; + + CollectionAssert.AreEquivalent(new[] { + "1: Unity.InteractiveTutorials.Tests.ComponentAddedCriterionTests+ComponentA", + "2: Unity.InteractiveTutorials.Tests.ComponentAddedCriterionTests+ComponentB", + "4: Unity.InteractiveTutorials.Tests.ComponentAddedCriterionTests+ComponentA" + }, futureReferences.Select(f => f.referenceName)); + } + + [UnityTest] + public IEnumerator OnCompletion_FutureReferencesAreUpdatedToAddedComponents() + { + var gameObject = new GameObject(); + + m_Criterion.targetGameObject = gameObject; + m_Criterion.requiredComponents = new[] { typeof(ComponentA), typeof(ComponentB) }; + + var componentA = gameObject.AddComponent(); + var componentB = gameObject.AddComponent(); + + yield return null; + + CollectionAssert.AreEquivalent(new Component[] { componentA, componentB }, + futureReferences.Select(f => f.sceneObjectReference.ReferencedObjectAsComponent)); + } + + [UnityTest] + public IEnumerator AutoComplete_IsCompleted() + { + var gameObject = new GameObject(); + m_Criterion.targetGameObject = gameObject; + m_Criterion.requiredComponents = new[] { typeof(ComponentA), typeof(ComponentB) }; + + m_Criterion.AutoComplete(); + yield return null; + + Assert.IsTrue(m_Criterion.completed); + } +#endif + } +} diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Tests/Editor/ComponentAddedCriterionTests.cs.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Tests/Editor/ComponentAddedCriterionTests.cs.meta" new file mode 100644 index 00000000..b97b2c2d --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Tests/Editor/ComponentAddedCriterionTests.cs.meta" @@ -0,0 +1,12 @@ +fileFormatVersion: 2 +guid: 80f9f688837d04cf396314b34a5b7085 +timeCreated: 1494323358 +licenseType: Pro +MonoImporter: + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Tests/Editor/CriterionTestBase.cs" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Tests/Editor/CriterionTestBase.cs" new file mode 100644 index 00000000..806e9530 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Tests/Editor/CriterionTestBase.cs" @@ -0,0 +1,100 @@ +using System.Collections; +using System.Collections.Generic; +using System.Linq; +using NUnit.Framework; +using UnityEditor; +using UnityEditor.SceneManagement; +using UnityEngine; + +using UnityObject = UnityEngine.Object; + +namespace Unity.InteractiveTutorials.Tests +{ + public class CriterionTestBase : TestBase where T : Criterion + { + const string k_TempScenePath = "Assets/TempScene.unity"; + const string k_TempTutorialPagePath = "Assets/TempTutorialPage.asset"; + + TutorialPage m_TutorialPage; + protected T m_Criterion; + + [SetUp] + public void SetUpTutorialPageAndCriterion() + { + // Criterion is assumed to be subasset of TutorialPage + m_TutorialPage = ScriptableObject.CreateInstance(); + AssetDatabase.CreateAsset(m_TutorialPage, k_TempTutorialPagePath); + + m_Criterion = ScriptableObject.CreateInstance(); + AssetDatabase.AddObjectToAsset(m_Criterion, k_TempTutorialPagePath); + + m_Criterion.StartTesting(); + } + + [TearDown] + public void TearDown() + { + m_Criterion.StopTesting(); + + AssetDatabase.DeleteAsset(k_TempTutorialPagePath); + } + + [OneTimeTearDown] + public void DeleteTempScene() + { + if (AssetDatabase.DeleteAsset(k_TempScenePath)) + EditorSceneManager.NewScene(NewSceneSetup.EmptyScene); + } + + public void SaveActiveScene() + { + var scene = EditorSceneManager.GetActiveScene(); + EditorSceneManager.SaveScene(scene, k_TempScenePath); + } + + protected IEnumerable futureReferences + { + get + { + return AssetDatabase.LoadAllAssetsAtPath(k_TempTutorialPagePath) + .Where(a => a is FutureObjectReference) + .Cast() + .Where(f => f.criterion == m_Criterion); + } + } + + protected void TriggerValidation() + { + // Ensure OnValidate is invoked + var serializedObject = new SerializedObject(m_Criterion); + var enabledProperty = serializedObject.FindProperty("m_Enabled"); + var enabled = enabledProperty.boolValue; + enabledProperty.boolValue = !enabled; + serializedObject.ApplyModifiedProperties(); + enabledProperty.boolValue = enabled; + serializedObject.ApplyModifiedProperties(); + } + + protected IEnumerable TriggerSelectionChanged() + { + var activeObject = Selection.activeObject; + var objects = Selection.objects; + + if (objects.Length == 0) + { + Selection.activeObject = m_Criterion; + yield return null; + } + else + { + Selection.activeObject = null; + yield return null; + } + + Selection.activeObject = activeObject; + if (objects.Length > 1) + Selection.objects = objects; + yield return null; + } + } +} diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Tests/Editor/CriterionTestBase.cs.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Tests/Editor/CriterionTestBase.cs.meta" new file mode 100644 index 00000000..f57753ab --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Tests/Editor/CriterionTestBase.cs.meta" @@ -0,0 +1,12 @@ +fileFormatVersion: 2 +guid: cf5bbc8688b3349558f3cdab8ac735a3 +timeCreated: 1489762686 +licenseType: Pro +MonoImporter: + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Tests/Editor/EditorWindowCriterionTests.cs" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Tests/Editor/EditorWindowCriterionTests.cs" new file mode 100644 index 00000000..c29918b0 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Tests/Editor/EditorWindowCriterionTests.cs" @@ -0,0 +1,90 @@ +using System.Collections; +using NUnit.Framework; +using UnityEditor; +using UnityEngine; +using UnityEngine.TestTools; + +namespace Unity.InteractiveTutorials.Tests +{ + public class EditorWindowCriterionTests : CriterionTestBase + { + class TestWindowA : EditorWindow + { + } + + [TearDown] + public void Teardown() + { + var windows = Resources.FindObjectsOfTypeAll(); + + foreach (var w in windows) + { + if (w.GetType() == typeof(TestWindowA)) + { + w.Close(); + } + } + + } + + // TODO Pretty much all of these tets crash 2019.1 +#if !UNITY_2019_1_OR_NEWER + [UnityTest] + public IEnumerator EditorWindowTypeIsNotNull_WindowOfTypeExists_IsCompleted() + { + m_Criterion.editorWindowType = new SerializedType(typeof(TestWindowA)); + var w = EditorWindow.GetWindow(); + + yield return null; + + Assert.IsTrue(m_Criterion.completed); + } + + [UnityTest] + public IEnumerator EditorWindowTypeIsNotNull_WindowOfTypeDoesNotExist_IsNotCompleted() + { + m_Criterion.editorWindowType = new SerializedType(typeof(TestWindowA)); + + yield return null; + + Assert.IsFalse(m_Criterion.completed); + } + + [UnityTest] + public IEnumerator EditorWindowTypeIsNull_IsNotCompleted() + { + yield return null; + Assert.IsFalse(m_Criterion.completed); + } + + [UnityTest] + public IEnumerator EditorWindowInstanceIsNotFound_IsNotCompleted() + { + m_Criterion.editorWindowType = new SerializedType(typeof(TestWindowA)); + yield return null; + + Assert.IsFalse(m_Criterion.completed); + } + + [UnityTest] + public IEnumerator Autocomplete_EditorWindowTypeIsNotNull_IsCompleted() + { + m_Criterion.editorWindowType = new SerializedType(typeof(TestWindowA)); + + Assert.IsTrue(m_Criterion.AutoComplete()); + yield return null; + + Assert.IsTrue(m_Criterion.completed); + } + + [UnityTest] + public IEnumerator Autocomplete_EditorWindowTypeIsNull_IsNotCompleted() + { + Assert.IsFalse(m_Criterion.AutoComplete()); + yield return null; + + Assert.IsFalse(m_Criterion.completed); + } +#endif + } +} diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Tests/Editor/EditorWindowCriterionTests.cs.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Tests/Editor/EditorWindowCriterionTests.cs.meta" new file mode 100644 index 00000000..2a4b4b12 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Tests/Editor/EditorWindowCriterionTests.cs.meta" @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: cc44658625b2ec24f966c9989e118dcb +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Tests/Editor/EmptyTestScene.unity" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Tests/Editor/EmptyTestScene.unity" new file mode 100644 index 00000000..ea4fef2c --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Tests/Editor/EmptyTestScene.unity" @@ -0,0 +1,110 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!29 &1 +OcclusionCullingSettings: + m_ObjectHideFlags: 0 + serializedVersion: 2 + m_OcclusionBakeSettings: + smallestOccluder: 5 + smallestHole: 0.25 + backfaceThreshold: 100 + m_SceneGUID: 00000000000000000000000000000000 + m_OcclusionCullingData: {fileID: 0} +--- !u!104 &2 +RenderSettings: + m_ObjectHideFlags: 0 + serializedVersion: 8 + m_Fog: 0 + m_FogColor: {r: 0.5, g: 0.5, b: 0.5, a: 1} + m_FogMode: 3 + m_FogDensity: 0.01 + m_LinearFogStart: 0 + m_LinearFogEnd: 300 + m_AmbientSkyColor: {r: 0.212, g: 0.227, b: 0.259, a: 1} + m_AmbientEquatorColor: {r: 0.114, g: 0.125, b: 0.133, a: 1} + m_AmbientGroundColor: {r: 0.047, g: 0.043, b: 0.035, a: 1} + m_AmbientIntensity: 1 + m_AmbientMode: 0 + m_SubtractiveShadowColor: {r: 0.42, g: 0.478, b: 0.627, a: 1} + m_SkyboxMaterial: {fileID: 10304, guid: 0000000000000000f000000000000000, type: 0} + m_HaloStrength: 0.5 + m_FlareStrength: 1 + m_FlareFadeSpeed: 3 + m_HaloTexture: {fileID: 0} + m_SpotCookie: {fileID: 10001, guid: 0000000000000000e000000000000000, type: 0} + m_DefaultReflectionMode: 0 + m_DefaultReflectionResolution: 128 + m_ReflectionBounces: 1 + m_ReflectionIntensity: 1 + m_CustomReflection: {fileID: 0} + m_Sun: {fileID: 0} + m_IndirectSpecularColor: {r: 0.37305844, g: 0.38069147, b: 0.3586884, a: 1} +--- !u!157 &3 +LightmapSettings: + m_ObjectHideFlags: 0 + serializedVersion: 11 + m_GIWorkflowMode: 0 + m_GISettings: + serializedVersion: 2 + m_BounceScale: 1 + m_IndirectOutputScale: 1 + m_AlbedoBoost: 1 + m_TemporalCoherenceThreshold: 1 + m_EnvironmentLightingMode: 0 + m_EnableBakedLightmaps: 1 + m_EnableRealtimeLightmaps: 1 + m_LightmapEditorSettings: + serializedVersion: 9 + m_Resolution: 2 + m_BakeResolution: 40 + m_TextureWidth: 1024 + m_TextureHeight: 1024 + m_AO: 0 + m_AOMaxDistance: 1 + m_CompAOExponent: 1 + m_CompAOExponentDirect: 0 + m_Padding: 2 + m_LightmapParameters: {fileID: 0} + m_LightmapsBakeMode: 1 + m_TextureCompression: 1 + m_FinalGather: 0 + m_FinalGatherFiltering: 1 + m_FinalGatherRayCount: 256 + m_ReflectionCompression: 2 + m_MixedBakeMode: 2 + m_BakeBackend: 0 + m_PVRSampling: 1 + m_PVRDirectSampleCount: 32 + m_PVRSampleCount: 500 + m_PVRBounces: 2 + m_PVRFiltering: 0 + m_PVRFilteringMode: 1 + m_PVRCulling: 1 + m_PVRFilteringGaussRadiusDirect: 1 + m_PVRFilteringGaussRadiusIndirect: 5 + m_PVRFilteringGaussRadiusAO: 2 + m_PVRFilteringAtrousColorSigma: 1 + m_PVRFilteringAtrousNormalSigma: 1 + m_PVRFilteringAtrousPositionSigma: 1 + m_LightingDataAsset: {fileID: 0} + m_UseShadowmask: 1 +--- !u!196 &4 +NavMeshSettings: + serializedVersion: 2 + m_ObjectHideFlags: 0 + m_BuildSettings: + serializedVersion: 2 + agentTypeID: 0 + agentRadius: 0.5 + agentHeight: 2 + agentSlope: 45 + agentClimb: 0.4 + ledgeDropHeight: 0 + maxJumpAcrossDistance: 0 + minRegionArea: 2 + manualCellSize: 0 + cellSize: 0.16666667 + manualTileSize: 0 + tileSize: 256 + accuratePlacement: 0 + m_NavMeshData: {fileID: 0} diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Tests/Editor/EmptyTestScene.unity.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Tests/Editor/EmptyTestScene.unity.meta" new file mode 100644 index 00000000..c7f83781 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Tests/Editor/EmptyTestScene.unity.meta" @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 89b708238bc1f40f29451cf2329913f7 +timeCreated: 1490786240 +licenseType: Pro +DefaultImporter: + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Tests/Editor/FrameSelectedCriterionTests.cs" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Tests/Editor/FrameSelectedCriterionTests.cs" new file mode 100644 index 00000000..724d7fd9 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Tests/Editor/FrameSelectedCriterionTests.cs" @@ -0,0 +1,136 @@ +using System.Collections; +using System.Linq; +using NUnit.Framework; +using UnityEditor; +using UnityEditor.SceneManagement; +using UnityEngine; +using UnityEngine.TestTools; + +namespace Unity.InteractiveTutorials.Tests +{ + public class FrameSelectedCriterionTests : CriterionTestBase + { + GameObject m_ReferencedObject; + ObjectReference m_ObjectReference; + + [SetUp] + public void OpenSceneAndSetUpCriterion() + { + EditorSceneManager.OpenScene(GetTestAssetPath("EmptyTestScene.unity")); + + m_ReferencedObject = new GameObject(); + + m_ObjectReference = new ObjectReference(); + m_ObjectReference.sceneObjectReference.Update(m_ReferencedObject); + + m_Criterion.SetObjectReferences(new[] { m_ObjectReference }); + + // Ensure we have a last active scene view + EditorWindow.GetWindow(); + // TODO: Might need to interact with it here to have it set + } + + // TODO Pretty much all of these tets crash 2019.1 +#if !UNITY_2019_1_OR_NEWER + [UnityTest] + public IEnumerator IsNotCompletedInitially() + { + Assert.That(m_Criterion.completed, Is.False); + yield return null; + + Assert.That(m_Criterion.completed, Is.False); + } + + [UnityTest] + public IEnumerator WhenSelectionMatchesObjectReferences_IsNotCompleted() + { + Selection.objects = new Object[] { m_ReferencedObject }; + yield return null; + + Assert.That(m_Criterion.completed, Is.False); + } + + [UnityTest] + public IEnumerator WhenFrameLastActiveSceneViewIsCalled_AndEmptySelectionMatchesObjectReferences_IsNotCompleted() + { + m_Criterion.SetObjectReferences(Enumerable.Empty()); + Selection.objects = new Object[0]; + + SceneView.FrameLastActiveSceneView(); + yield return null; + + Assert.That(m_Criterion.completed, Is.False); + } + + [UnityTest] + public IEnumerator WhenFrameLastActiveSceneViewIsCalled_AndSelectionDoesNotMatchObjectReferences_IsNotCompleted() + { + var gameObject = new GameObject(); + Selection.objects = new Object[] { gameObject }; + + SceneView.FrameLastActiveSceneView(); + yield return null; + + Assert.That(m_Criterion.completed, Is.False); + } + + [UnityTest] + public IEnumerator WhenFrameLastActiveSceneViewIsCalled_AndSelectionMatchesObjectReferences_IsCompleted() + { + Selection.objects = new Object[] { m_ReferencedObject }; + + SceneView.FrameLastActiveSceneView(); + yield return null; + + Assert.That(m_Criterion.completed, Is.True); + } + + public IEnumerator AutoComplete_WhenObjectReferencesIsEmpty_ReturnsFalseAndIsNotCompleted() + { + m_Criterion.SetObjectReferences(Enumerable.Empty()); + + Assert.That(m_Criterion.AutoComplete(), Is.False); + yield return null; + + Assert.That(m_Criterion.completed, Is.False); + } + + [UnityTest] + public IEnumerator AutoComplete_WhenReferencedObjectIsNull_ReturnsFalseAndIsNotCompleted() + { + var nullObjectReference = new ObjectReference(); + nullObjectReference.sceneObjectReference.Update(null); + m_Criterion.SetObjectReferences(new[] { nullObjectReference }); + + Assert.That(m_Criterion.AutoComplete(), Is.False); + yield return null; + + Assert.That(m_Criterion.completed, Is.False); + } + + [UnityTest] + public IEnumerator AutoComplete_WhenThereIsNoLastActiveSceneView_ReturnsFalseAndIsNotCompleted() + { + // Close all Scene Views + var sceneViews = SceneView.sceneViews.ToArray().Cast(); + foreach (var sceneView in sceneViews) + { + sceneView.Close(); + } + + Assert.That(m_Criterion.AutoComplete(), Is.False); + yield return null; + + Assert.That(m_Criterion.completed, Is.False); + } + + public IEnumerator AutoComplete_WhenReferencedObjectIsGameObject_ReturnsTrueAndIsCompleted() + { + Assert.That(m_Criterion.AutoComplete(), Is.True); + yield return null; + + Assert.That(m_Criterion.completed, Is.True); + } +#endif + } +} diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Tests/Editor/FrameSelectedCriterionTests.cs.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Tests/Editor/FrameSelectedCriterionTests.cs.meta" new file mode 100644 index 00000000..900b2d6e --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Tests/Editor/FrameSelectedCriterionTests.cs.meta" @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 95aefbd4224d24c9a9f3e7507828b4b1 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Tests/Editor/InstantiatePrefabCriterionTests.cs" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Tests/Editor/InstantiatePrefabCriterionTests.cs" new file mode 100644 index 00000000..ca86d087 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Tests/Editor/InstantiatePrefabCriterionTests.cs" @@ -0,0 +1,214 @@ +using System.Collections; +using System.IO; +using System.Linq; +using NUnit.Framework; +using UnityEditor; +using UnityEditor.SceneManagement; +using UnityEngine; +using UnityEngine.TestTools; + +using UnityObject = UnityEngine.Object; + +namespace Unity.InteractiveTutorials.Tests +{ + class InstantiatePrefabCriterionTests : CriterionTestBase + { + GameObject m_Prefab1; + GameObject m_Prefab2; + GameObject m_PrefabWithGrandchild; + + string m_TempFolderPath; + + [OneTimeSetUp] + public void CreatePrefabAssets() + { + var tempFolderGUID = AssetDatabase.CreateFolder("Assets", "Temp"); + m_TempFolderPath = AssetDatabase.GUIDToAssetPath(tempFolderGUID); + + var prefab1Path = m_TempFolderPath + "/Prefab1.prefab"; + m_Prefab1 = PrefabUtility.SaveAsPrefabAsset(new GameObject("Prefab1"), prefab1Path); + + var prefab2Path = m_TempFolderPath + "/Prefab2.prefab"; + m_Prefab2 = PrefabUtility.SaveAsPrefabAsset(new GameObject("Prefab2"), prefab2Path); + + var root = new GameObject("Root"); + var child = new GameObject("Child"); + var grandchild = new GameObject("Grandchild"); + child.transform.parent = root.transform; + grandchild.transform.parent = child.transform; + var prefabWithGrandchildPath = m_TempFolderPath + "/PrefabWithGrandchild.prefab"; + m_PrefabWithGrandchild = PrefabUtility.SaveAsPrefabAsset(root, prefabWithGrandchildPath); + } + + [OneTimeTearDown] + public void DestroyPrefabAssets() + { + AssetDatabase.DeleteAsset(m_TempFolderPath); + } + + [SetUp] + public void OpenScene() + { + EditorSceneManager.OpenScene(GetTestAssetPath("EmptyTestScene.unity")); + } + + // TODO Pretty much all of these tets crash 2019.1 +#if !UNITY_2019_1_OR_NEWER + [Test] + public void WhenPrefabParentIsNull_IsNotCompleted() + { + Assert.IsFalse(m_Criterion.completed); + } + + [UnityTest] + public IEnumerator WhenPrefabParentIsInstantiated_IsCompleted() + { + m_Criterion.prefabParent = m_Prefab1; + + Selection.activeObject = PrefabUtility.InstantiatePrefab(m_Prefab1); + yield return null; + + Assert.IsTrue(m_Criterion.completed); + } + + [UnityTest] + public IEnumerator WhenDifferentPrefabIsInstantiated_IsNotCompleted() + { + m_Criterion.prefabParent = m_Prefab1; + + Selection.activeObject = PrefabUtility.InstantiatePrefab(m_Prefab2); + yield return null; + + Assert.IsFalse(m_Criterion.completed); + } + + [UnityTest] + public IEnumerator WhenPrefabInstanceExistsBeforePrefabParentIsSet_IsNotCompleted() + { + var prefabInstance = PrefabUtility.InstantiatePrefab(m_Prefab1); + Selection.activeObject = prefabInstance; + yield return null; + Selection.activeObject = null; + yield return null; + + m_Criterion.prefabParent = m_Prefab1; + Selection.activeObject = prefabInstance; + yield return null; + + Assert.IsFalse(m_Criterion.completed); + } + + [UnityTest] + public IEnumerator WhenPrefabInstanceExistsBeforeTesting_IsNotCompleted() + { + m_Criterion.StopTesting(); + m_Criterion.prefabParent = m_Prefab1; + var prefabInstance = PrefabUtility.InstantiatePrefab(m_Prefab1); + Selection.activeObject = prefabInstance; + yield return null; + Selection.activeObject = null; + yield return null; + m_Criterion.StartTesting(); + + Selection.activeObject = prefabInstance; + yield return null; + + Assert.IsFalse(m_Criterion.completed); + } + + [UnityTest] + public IEnumerator WhenPrefabInstanceIsDestroyed_IsNotCompleted() + { + var tempFolderGUID = AssetDatabase.CreateFolder("Assets", "Temp"); + var tempFolderPath = AssetDatabase.GUIDToAssetPath(tempFolderGUID); + var prefabPath = tempFolderPath + "/Prefab.prefab"; + var prefab = PrefabUtility.SaveAsPrefabAsset(new GameObject("Prefab"), prefabPath); + + m_Criterion.prefabParent = prefab; + + var prefabInstance = PrefabUtility.InstantiatePrefab(prefab); + Selection.activeObject = prefabInstance; + yield return null; + + Assert.IsTrue(m_Criterion.completed); + + UnityObject.DestroyImmediate(prefabInstance); + yield return null; + + Assert.IsFalse(m_Criterion.completed); + + AssetDatabase.DeleteAsset(tempFolderPath); + } + + [Test] + public void SetFuturePrefabInstances_FutureReferencesAreCreated() + { + m_Criterion.prefabParent = m_Prefab1; + var prefabParents = new UnityObject[] { m_Prefab1, m_Prefab1.GetComponent() }; + + m_Criterion.SetFuturePrefabInstances(prefabParents); + + Assert.AreEqual(2, futureReferences.Count()); + CollectionAssert.AllItemsAreNotNull(futureReferences); + CollectionAssert.AreEquivalent(new[] { "1: Prefab1 (GameObject)", "2: Prefab1 (Transform)" }, + futureReferences.Select(f => f.referenceName)); + } + + [UnityTest] + public IEnumerator OnCompletion_FutureReferencesAreUpdatedToPrefabInstances() + { + m_Criterion.prefabParent = m_PrefabWithGrandchild; + var prefabParents = new UnityObject[] + { + m_PrefabWithGrandchild, + m_PrefabWithGrandchild.transform, + m_PrefabWithGrandchild.transform.GetChild(0).gameObject, + m_PrefabWithGrandchild.transform.GetChild(0), + m_PrefabWithGrandchild.transform.GetChild(0).GetChild(0).gameObject, + m_PrefabWithGrandchild.transform.GetChild(0).GetChild(0), + }; + m_Criterion.SetFuturePrefabInstances(prefabParents); + + var prefabInstance = (GameObject)PrefabUtility.InstantiatePrefab(m_PrefabWithGrandchild); + Selection.activeObject = prefabInstance; + yield return null; + + CollectionAssert.AreEqual(new[] { + futureReferences.First(f => f.referenceName == "1: PrefabWithGrandchild (GameObject)"), + futureReferences.First(f => f.referenceName == "2: PrefabWithGrandchild (Transform)"), + futureReferences.First(f => f.referenceName == "3: Child (GameObject)"), + futureReferences.First(f => f.referenceName == "4: Child (Transform)"), + futureReferences.First(f => f.referenceName == "5: Grandchild (GameObject)"), + futureReferences.First(f => f.referenceName == "6: Grandchild (Transform)"), + }.Select(f => f.sceneObjectReference.ReferencedObject), new UnityObject[] { + prefabInstance, + prefabInstance.transform, + prefabInstance.transform.GetChild(0).gameObject, + prefabInstance.transform.GetChild(0), + prefabInstance.transform.GetChild(0).GetChild(0).gameObject, + prefabInstance.transform.GetChild(0).GetChild(0), + }); + } + + [UnityTest] + public IEnumerator AutoComplete_WhenPrefabParentIsNull_ReturnsFalseAndIsNotCompleted() + { + Assert.IsFalse(m_Criterion.AutoComplete()); + yield return null; + + Assert.IsFalse(m_Criterion.completed); + } + + [UnityTest] + public IEnumerator AutoComplete_WhenPrefabParentIsNotNull_ReturnsTrueAndIsCompleted() + { + m_Criterion.prefabParent = m_Prefab1; + + Assert.IsTrue(m_Criterion.AutoComplete()); + yield return null; + + Assert.IsTrue(m_Criterion.completed); + } +#endif + } +} diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Tests/Editor/InstantiatePrefabCriterionTests.cs.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Tests/Editor/InstantiatePrefabCriterionTests.cs.meta" new file mode 100644 index 00000000..772f3b91 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Tests/Editor/InstantiatePrefabCriterionTests.cs.meta" @@ -0,0 +1,12 @@ +fileFormatVersion: 2 +guid: c107ff565a40544308b836e143938f4a +timeCreated: 1489761111 +licenseType: Pro +MonoImporter: + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Tests/Editor/ManagerTests.cs" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Tests/Editor/ManagerTests.cs" new file mode 100644 index 00000000..39d89cd6 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Tests/Editor/ManagerTests.cs" @@ -0,0 +1,86 @@ +using UnityEngine; +using UnityEditor; +using NUnit.Framework; + +namespace Unity.InteractiveTutorials.Tests +{ + public class AssetToSceneObjectReferenceManagerTests + { + private SceneObjectGUIDManager manager; + + [SetUp] + public void InitManager() + { + manager = SceneObjectGUIDManager.instance = new SceneObjectGUIDManager(); + } + + [Test] + public void Manager_WithNoRegisteredComponents_WontReturnAnyComponents() + { + Assert.IsFalse(manager.Contains("non_existing_id")); + } + + [Test] + public void Manager_WithOneRegisteredComponent_ReturnTheComponent() + { + var c = CreateGameObjectWithReferenceComponent(); + + Assert.IsTrue(manager.Contains(c.id)); + Assert.IsNotNull(manager.GetComponent(c.id)); + } + + [Test] + public void Manager_WithManyComponentsRegistered_WillReturnTheCorrectOnes() + { + var c1 = CreateGameObjectWithReferenceComponent(); + var c2 = CreateGameObjectWithReferenceComponent(); + var c3 = CreateGameObjectWithReferenceComponent(); + + Assert.IsTrue(manager.Contains(c2.id)); + Assert.AreEqual(c2, manager.GetComponent(c2.id)); + Assert.AreNotEqual(c1, manager.GetComponent(c2.id)); + Assert.AreNotEqual(c3, manager.GetComponent(c2.id)); + } + + [Test] + public void Manager_WithManyComponentsRegistered_WillReturnNullForNotExisting() + { + CreateGameObjectWithReferenceComponent(); + CreateGameObjectWithReferenceComponent(); + CreateGameObjectWithReferenceComponent(); + + Assert.IsNull(manager.GetComponent("Not_Existing_id")); + } + + [Test] + public void Manager_WithComponentAddedAndRemoved_WillReturnNull() + { + var c = CreateGameObjectWithReferenceComponent(); + var id = c.id; + Object.DestroyImmediate(c); + + Assert.IsNull(manager.GetComponent(id)); + } + + [Test] + public void Manager_WithManyComponentsAddedAndOneRemoved_WillOnlyReturnTheExisting() + { + var c1 = CreateGameObjectWithReferenceComponent(); + var c2 = CreateGameObjectWithReferenceComponent(); + var c2Id = c2.id; + Object.DestroyImmediate(c2); + var c3 = CreateGameObjectWithReferenceComponent(); + + Assert.IsNotNull(manager.GetComponent(c1.id)); + Assert.IsNotNull(manager.GetComponent(c3.id)); + Assert.IsNull(manager.GetComponent(c2Id)); + } + + private static SceneObjectGUIDComponent CreateGameObjectWithReferenceComponent() + { + var go = new GameObject(); + Undo.RegisterCreatedObjectUndo(go, "Created test GO"); + return go.AddComponent(); + } + } +} diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Tests/Editor/ManagerTests.cs.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Tests/Editor/ManagerTests.cs.meta" new file mode 100644 index 00000000..376cc4b2 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Tests/Editor/ManagerTests.cs.meta" @@ -0,0 +1,12 @@ +fileFormatVersion: 2 +guid: 19ed367850cbb4a64a07198bb9631ea3 +timeCreated: 1489505273 +licenseType: Pro +MonoImporter: + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Tests/Editor/MaskingManagerTests.cs" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Tests/Editor/MaskingManagerTests.cs" new file mode 100644 index 00000000..fd2691a9 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Tests/Editor/MaskingManagerTests.cs" @@ -0,0 +1,112 @@ +using System.Collections.Generic; +using System.Collections; +using UnityEngine; +using UnityEditor; +using NUnit.Framework; + +namespace Unity.InteractiveTutorials.Tests +{ + public class MaskingManagerTests + { + static IEnumerable GetHoleTestCases() + { + var rects = new List() { + new Rect(10, 10, 10, 10) + }; + var area = new Rect(0, 0, 100, 100); + var expected = new List() { + new Rect(0, 0, 100, 10), + new Rect(0, 10, 10, 10), + new Rect(20, 10, 80, 10), + new Rect(0, 20, 100, 80), + }; + yield return new TestCaseData(rects, area, expected).SetName("OneHoleCase"); + + rects = new List() { + new Rect(10, 10, 10, 10), + new Rect(30, 30, 10, 10) + }; + area = new Rect(0, 0, 100, 100); + expected = new List() { + new Rect(0, 0, 100, 10), + new Rect(0, 10, 10, 10), + new Rect(20, 10, 80, 10), + new Rect(0, 20, 100, 10), + new Rect(0, 30, 30, 10), + new Rect(40, 30, 60, 10), + new Rect(0, 40, 100, 60), + }; + yield return new TestCaseData(rects, area, expected).SetName("TwoNonIntersectingHoles"); + + rects = new List() { + new Rect(10, 10, 10, 10), + new Rect(15, 15, 10, 10) + }; + area = new Rect(0, 0, 100, 100); + expected = new List() { + new Rect(0, 0, 100, 10), + new Rect(0, 10, 10, 5), + new Rect(20, 10, 80, 5), + new Rect(0, 15, 10, 5), + new Rect(25, 15, 75, 5), + new Rect(0, 20, 15, 5), + new Rect(25, 20, 75, 5), + new Rect(0, 25, 100, 75), + }; + yield return new TestCaseData(rects, area, expected).SetName("TwoIntersectingHoles"); + } + + [Test, TestCaseSource("GetHoleTestCases")] + public void OneHoleTest(List holes, Rect area, List expectedRects) + { + var result = MaskingManager.GetNegativeSpaceRects(area, holes); + + var expected = expectedRects; + + AssertNoRectsIntersectHoles(result, holes); + AssertNoRectsIntersectEachOther(result); + + Assert.AreEqual(expected, result); + } + + private bool DoRectsIntersect(Rect a, Rect b) + { + return a.Overlaps(b); + } + + private void AssertNoRectsIntersectRect(List rects, Rect hole) + { + for (int j = 0; j < rects.Count; ++j) + { + var rj = rects[j]; + + Assert.IsFalse(DoRectsIntersect(hole, rj), "There should be no Rects intersecting the hole"); + } + } + + private void AssertNoRectsIntersectHoles(List rects, List holes) + { + for (int j = 0; j < holes.Count; ++j) + { + var hole = holes[j]; + AssertNoRectsIntersectRect(rects, hole); + } + } + + private void AssertNoRectsIntersectEachOther(List rects) + { + for (int i = 0; i < rects.Count; ++i) + { + var ri = rects[i]; + for (int j = 0; j < rects.Count; ++j) + { + if (i == j) + continue; + var rj = rects[j]; + + Assert.IsFalse(DoRectsIntersect(ri, rj), "Rects should not intersect each other"); + } + } + } + } +} diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Tests/Editor/MaskingManagerTests.cs.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Tests/Editor/MaskingManagerTests.cs.meta" new file mode 100644 index 00000000..5ade332b --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Tests/Editor/MaskingManagerTests.cs.meta" @@ -0,0 +1,12 @@ +fileFormatVersion: 2 +guid: a37851d9d60d4634182945ef9bafdee5 +timeCreated: 1493803915 +licenseType: Pro +MonoImporter: + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Tests/Editor/MaterialPropertyModifiedCriterionTests.cs" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Tests/Editor/MaterialPropertyModifiedCriterionTests.cs" new file mode 100644 index 00000000..18ad3e2a --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Tests/Editor/MaterialPropertyModifiedCriterionTests.cs" @@ -0,0 +1,102 @@ +using System; +using System.Linq; +using System.Collections; +using System.Collections.Generic; +using NUnit.Framework; +using UnityEditor; +using UnityEditor.SceneManagement; +using UnityEngine; +using UnityEngine.TestTools; +using Object = System.Object; +using UnityObject = UnityEngine.Object; + +namespace Unity.InteractiveTutorials.Tests +{ + public class MaterialPropertyModifiedCriterionTests : CriterionTestBase + { + Material m_Material = null; + [SetUp] + public void Setup() + { + EditorSceneManager.OpenScene(GetTestAssetPath("EmptyTestScene.unity")); + SaveActiveScene(); + + m_Material = new Material(Shader.Find("Standard")); + } + + [TearDown] + public void Teardown() + { + UnityObject.DestroyImmediate(m_Material); + } + + // TODO Pretty much all of these tets crash 2019.1 +#if !UNITY_2019_1_OR_NEWER + [UnityTest] + public IEnumerator WhenPropertyPathIsEmpty_IsNotCompleted() + { + m_Criterion.target.Update(m_Material); + yield return null; + + Assert.IsFalse(m_Criterion.completed); + } + + [UnityTest] + public IEnumerator WhenTargetIsEmpty_IsNotCompleted() + { + m_Criterion.target = null; + yield return null; + + Assert.IsFalse(m_Criterion.completed); + } + + MaterialProperty FindProperty(string path, Material material) + { + UnityObject[] mats = new[] { material }; + return MaterialEditor.GetMaterialProperty(mats, path); + } + + [UnityTest] + public IEnumerator WhenDifferentPropertyOnTheSameTargetIsModified_IsNotCompleted() + { + m_Criterion.target.Update(m_Material); + m_Criterion.materialPropertyPath = "_Color"; + var matallicProperty = FindProperty("_Metallic", m_Material); + matallicProperty.floatValue = 0.5f; + yield return null; + + Assert.IsFalse(m_Criterion.completed); + } + + + + [UnityTest] + public IEnumerator WhenSamePropertyOnDifferentTargetIsModified_IsNotCompleted() + { + m_Criterion.target.Update(m_Material); + m_Criterion.materialPropertyPath = "_Color"; + var otherMaterial = new Material(Shader.Find("Standard")); + var colorProperty = FindProperty("_Color", otherMaterial); + colorProperty.colorValue = Color.red; + yield return null; + + Assert.IsFalse(m_Criterion.completed); + } + + + [UnityTest] + public IEnumerator WhenSamePropertyOnTargetIsModified_IsCompleted() + { + m_Criterion.target.Update(m_Material); + m_Criterion.materialPropertyPath = "_Color"; + m_Criterion.StopTesting(); + m_Criterion.StartTesting(); + var colorProperty = FindProperty("_Color", m_Material); + colorProperty.colorValue = Color.red; + yield return null; + + Assert.IsTrue(m_Criterion.completed); + } +#endif + } +} diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Tests/Editor/MaterialPropertyModifiedCriterionTests.cs.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Tests/Editor/MaterialPropertyModifiedCriterionTests.cs.meta" new file mode 100644 index 00000000..14da1dae --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Tests/Editor/MaterialPropertyModifiedCriterionTests.cs.meta" @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 9ad62cae296a8944f910ed440f2347cd +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Tests/Editor/PrefabInstanceCountCriterionTests.cs" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Tests/Editor/PrefabInstanceCountCriterionTests.cs" new file mode 100644 index 00000000..f63d5fe6 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Tests/Editor/PrefabInstanceCountCriterionTests.cs" @@ -0,0 +1,138 @@ +using System; +using System.Linq; +using System.Collections; +using System.Collections.Generic; +using NUnit.Framework; +using UnityEditor; +using UnityEditor.SceneManagement; +using UnityEngine; +using UnityEngine.TestTools; + +using UnityObject = UnityEngine.Object; + +namespace Unity.InteractiveTutorials.Tests +{ + public class PrefabInstanceCountCriterionTests : CriterionTestBase + { + List m_PrefabInstances = new List(); + + [SetUp] + public void OpenSceneAndSetUpCriterion() + { + EditorSceneManager.OpenScene(GetTestAssetPath("EmptyTestScene.unity")); + + m_Criterion.prefabParent = AssetDatabase.LoadAssetAtPath(GetTestAssetPath("TestPrefab1.prefab")); + Assert.IsNotNull(m_Criterion.prefabParent, "Cannot load test prefab"); + } + + [TearDown] + public void DestroyPrefabInstances() + { + foreach (var prefabInstance in m_PrefabInstances) + UnityObject.DestroyImmediate(prefabInstance); + m_PrefabInstances.Clear(); + } + + // TODO Pretty much all of these tets crash 2019.1 +#if !UNITY_2019_1_OR_NEWER + [UnityTest] + [TestCase(PrefabInstanceCountCriterion.InstanceCountComparison.AtLeast, 2, 0, false, ExpectedResult = null)] + [TestCase(PrefabInstanceCountCriterion.InstanceCountComparison.AtLeast, 2, 1, false, ExpectedResult = null)] + [TestCase(PrefabInstanceCountCriterion.InstanceCountComparison.AtLeast, 2, 2, true, ExpectedResult = null)] + [TestCase(PrefabInstanceCountCriterion.InstanceCountComparison.AtLeast, 2, 3, true, ExpectedResult = null)] + [TestCase(PrefabInstanceCountCriterion.InstanceCountComparison.Exactly, 2, 0, false, ExpectedResult = null)] + [TestCase(PrefabInstanceCountCriterion.InstanceCountComparison.Exactly, 2, 1, false, ExpectedResult = null)] + [TestCase(PrefabInstanceCountCriterion.InstanceCountComparison.Exactly, 2, 2, true, ExpectedResult = null)] + [TestCase(PrefabInstanceCountCriterion.InstanceCountComparison.Exactly, 2, 3, false, ExpectedResult = null)] + [TestCase(PrefabInstanceCountCriterion.InstanceCountComparison.NoMoreThan, 2, 0, true, ExpectedResult = null)] + [TestCase(PrefabInstanceCountCriterion.InstanceCountComparison.NoMoreThan, 2, 1, true, ExpectedResult = null)] + [TestCase(PrefabInstanceCountCriterion.InstanceCountComparison.NoMoreThan, 2, 2, true, ExpectedResult = null)] + [TestCase(PrefabInstanceCountCriterion.InstanceCountComparison.NoMoreThan, 2, 3, false, ExpectedResult = null)] + public IEnumerator IsCompletedWhenExpected(PrefabInstanceCountCriterion.InstanceCountComparison comparisonMode, int instanceCount, int actualNumberOfInstances, bool expectedCompletion) + { + for (var i = 0; i < actualNumberOfInstances; i++) + m_PrefabInstances.Add(PrefabUtility.InstantiatePrefab(m_Criterion.prefabParent)); + + m_Criterion.comparisonMode = comparisonMode; + m_Criterion.instanceCount = instanceCount; + foreach (var _ in TriggerSelectionChanged()) + yield return null; + + Assert.AreEqual(expectedCompletion, m_Criterion.completed); + } + + [UnityTest] + [TestCase(PrefabInstanceCountCriterion.InstanceCountComparison.AtLeast, 2, 0, ExpectedResult = null)] + [TestCase(PrefabInstanceCountCriterion.InstanceCountComparison.AtLeast, 2, 1, ExpectedResult = null)] + [TestCase(PrefabInstanceCountCriterion.InstanceCountComparison.AtLeast, 2, 2, ExpectedResult = null)] + [TestCase(PrefabInstanceCountCriterion.InstanceCountComparison.AtLeast, 2, 3, ExpectedResult = null)] + [TestCase(PrefabInstanceCountCriterion.InstanceCountComparison.Exactly, 2, 0, ExpectedResult = null)] + [TestCase(PrefabInstanceCountCriterion.InstanceCountComparison.Exactly, 2, 1, ExpectedResult = null)] + [TestCase(PrefabInstanceCountCriterion.InstanceCountComparison.Exactly, 2, 2, ExpectedResult = null)] + [TestCase(PrefabInstanceCountCriterion.InstanceCountComparison.Exactly, 2, 3, ExpectedResult = null)] + [TestCase(PrefabInstanceCountCriterion.InstanceCountComparison.NoMoreThan, 2, 0, ExpectedResult = null)] + [TestCase(PrefabInstanceCountCriterion.InstanceCountComparison.NoMoreThan, 2, 1, ExpectedResult = null)] + [TestCase(PrefabInstanceCountCriterion.InstanceCountComparison.NoMoreThan, 2, 2, ExpectedResult = null)] + [TestCase(PrefabInstanceCountCriterion.InstanceCountComparison.NoMoreThan, 2, 3, ExpectedResult = null)] + public IEnumerator AutoComplete_IsCompleted(PrefabInstanceCountCriterion.InstanceCountComparison comparisonMode, int instanceCount, int actualNumberOfInstances) + { + for (var i = 0; i < actualNumberOfInstances; i++) + m_PrefabInstances.Add(PrefabUtility.InstantiatePrefab(m_Criterion.prefabParent)); + + m_Criterion.comparisonMode = comparisonMode; + m_Criterion.instanceCount = instanceCount; + + m_Criterion.AutoComplete(); + + // Completion is evaulated when selection changes + Selection.objects = new UnityObject[] { m_Criterion.prefabParent }; + yield return null; + Selection.objects = new UnityObject[0]; + yield return null; + + Assert.IsTrue(m_Criterion.completed); + } + + public void WhenPrefabInstanceExistsAlready_IsCompleted() + { + m_Criterion.StopTesting(); + + var prefabInstance = PrefabUtility.InstantiatePrefab(m_Criterion.prefabParent); + m_PrefabInstances.Add(prefabInstance); + + m_Criterion.comparisonMode = PrefabInstanceCountCriterion.InstanceCountComparison.AtLeast; + m_Criterion.instanceCount = 1; + + m_Criterion.StartTesting(); + + Assert.IsTrue(m_Criterion.completed); + } + + public void WhenInstanceCountComparisonIsExactlyOne_FutureReferenceIsCreated() + { + m_Criterion.comparisonMode = PrefabInstanceCountCriterion.InstanceCountComparison.Exactly; + m_Criterion.instanceCount = 1; + TriggerValidation(); + + Assert.AreEqual(1, futureReferences.Count()); + Assert.IsNotNull(futureReferences.First()); + Assert.AreEqual("Prefab Instance", futureReferences.First().referenceName); + } + + [UnityTest] + public IEnumerator OnCompletion_WhenInstanceCountComparisonIsExactlyOne_FutureReferenceIsUpdatedToPrefabInstance() + { + m_Criterion.comparisonMode = PrefabInstanceCountCriterion.InstanceCountComparison.Exactly; + m_Criterion.instanceCount = 1; + TriggerValidation(); + + var prefabInstance = PrefabUtility.InstantiatePrefab(m_Criterion.prefabParent); + m_PrefabInstances.Add(prefabInstance); + foreach (var _ in TriggerSelectionChanged()) + yield return null; + + Assert.AreEqual(prefabInstance, futureReferences.First().sceneObjectReference.ReferencedObject); + } +#endif + } +} diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Tests/Editor/PrefabInstanceCountCriterionTests.cs.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Tests/Editor/PrefabInstanceCountCriterionTests.cs.meta" new file mode 100644 index 00000000..cf16660e --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Tests/Editor/PrefabInstanceCountCriterionTests.cs.meta" @@ -0,0 +1,12 @@ +fileFormatVersion: 2 +guid: c5e42ebeff39f4f2d935f67706c2219a +timeCreated: 1489761111 +licenseType: Pro +MonoImporter: + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Tests/Editor/ProjectModeTests.cs" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Tests/Editor/ProjectModeTests.cs" new file mode 100644 index 00000000..5de934fb --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Tests/Editor/ProjectModeTests.cs" @@ -0,0 +1,17 @@ +using UnityEngine; +using UnityEditor; +using UnityEngine.TestTools; +using NUnit.Framework; +using System.Collections; + +namespace Unity.InteractiveTutorials.InternalToolsTests +{ + public class ProjectModeTest + { + [Test] + public void IsAuthoringMode_Passes() + { + ProjectMode.IsAuthoringMode(); + } + } +} diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Tests/Editor/ProjectModeTests.cs.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Tests/Editor/ProjectModeTests.cs.meta" new file mode 100644 index 00000000..5d5c1f11 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Tests/Editor/ProjectModeTests.cs.meta" @@ -0,0 +1,12 @@ +fileFormatVersion: 2 +guid: 1f9d8a0bdbb7c1946930b786f0afa73e +timeCreated: 1495020615 +licenseType: Pro +MonoImporter: + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Tests/Editor/PropertyModificationCriterionTests.cs" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Tests/Editor/PropertyModificationCriterionTests.cs" new file mode 100644 index 00000000..589160e3 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Tests/Editor/PropertyModificationCriterionTests.cs" @@ -0,0 +1,577 @@ +using System; +using System.Collections; +using NUnit.Framework; +using UnityEditor; +using UnityEditor.SceneManagement; +using UnityEngine; +using UnityEngine.TestTools; + +using UnityObject = UnityEngine.Object; + +namespace Unity.InteractiveTutorials.Tests +{ + class TestComponent : MonoBehaviour + { + public Color myColor = Color.white; + } + public class PropertyModificationCriterionTests : CriterionTestBase + { + GameObject m_GameObject; + + [SetUp] + public void Setup() + { + EditorSceneManager.OpenScene(GetTestAssetPath("EmptyTestScene.unity")); + SaveActiveScene(); + + m_GameObject = GameObject.CreatePrimitive(PrimitiveType.Capsule); + m_GameObject.AddComponent(); + } + + [TearDown] + public void Teardown2_TheTearDownening() + { + UnityObject.DestroyImmediate(m_GameObject); + } + + // TODO Pretty much all of these tets crash 2019.1 +#if !UNITY_2019_1_OR_NEWER + [UnityTest] + public IEnumerator WhenTargetIsEmpty_IsNotCompleted() + { + m_Criterion.target = null; + yield return null; + + Assert.IsFalse(m_Criterion.completed); + } + + [UnityTest] + public IEnumerator WhenPropertyPathIsEmpty_IsNotCompleted() + { + m_Criterion.target.Update(Camera.main); + yield return null; + + Assert.IsFalse(m_Criterion.completed); + } + + [UnityTest] + public IEnumerator WhenNoPropertyIsModified_IsNotCompleted() + { + m_Criterion.target.Update(Camera.main); + m_Criterion.propertyPath = "m_LocalPosition.x"; + yield return null; + + Assert.IsFalse(m_Criterion.completed); + } + + [UnityTest] + public IEnumerator WhenDifferentPropertyIsModified_IsNotCompleted() + { + m_Criterion.target.Update(m_GameObject); + m_Criterion.propertyPath = "m_LocalRotation.x"; + var so = new SerializedObject(m_GameObject.transform); + SerializedProperty property = so.FindProperty("m_LocalPosition"); + property.vector3Value = new Vector3(1, 1, 1); + so.ApplyModifiedProperties(); + yield return null; + + Assert.IsFalse(m_Criterion.completed); + } + + [UnityTest] + public IEnumerator WhenPropertyIsModifiedOnDifferentObject_IsNotCompleted() + { + m_GameObject.transform.position = Vector3.zero; + m_Criterion.target.Update(Camera.main); + m_Criterion.propertyPath = "m_LocalPosition.x"; + var so = new SerializedObject(m_GameObject.transform); + SerializedProperty property = so.FindProperty("m_LocalPosition"); + property.vector3Value = new Vector3(1, 1, 1); + so.ApplyModifiedProperties(); + yield return null; + + Assert.IsFalse(m_Criterion.completed); + } + + [UnityTest] + public IEnumerator PropertyCannotBeFound_DoesNotThrow() + { + m_GameObject.transform.position = Vector3.zero; + m_Criterion.target.Update(m_GameObject); + m_Criterion.propertyPath = "wrongProperty"; + m_Criterion.targetValueMode = PropertyModificationCriterion.TargetValueMode.DifferentThanInitial; + m_Criterion.StopTesting(); + Assert.DoesNotThrow(() => m_Criterion.StartTesting()); + + + yield return null; + + } + + [UnityTest] + public IEnumerator WhenTargetPropertyIsModified_IsCompleted() + { + m_GameObject.transform.position = Vector3.zero; + m_Criterion.target.Update(m_GameObject.transform); + m_Criterion.propertyPath = "m_LocalPosition.x"; + var so = new SerializedObject(m_GameObject.transform); + SerializedProperty property = so.FindProperty("m_LocalPosition"); + property.vector3Value = new Vector3(1, 1, 1); + so.ApplyModifiedProperties(); + yield return null; + + Assert.IsTrue(m_Criterion.completed); + } + + [UnityTest] + public IEnumerator WhenTargetPropertyIsModifiedToIncorrectValue_IsNotCompleted() + { + m_GameObject.transform.position = Vector3.zero; + m_Criterion.target.Update(m_GameObject.transform); + m_Criterion.propertyPath = "m_LocalPosition.x"; + m_Criterion.targetValue = "1.1"; + m_Criterion.targetValueType = PropertyModificationCriterion.TargetValueType.Decimal; + var so = new SerializedObject(m_GameObject.transform); + SerializedProperty property = so.FindProperty("m_LocalPosition"); + property.vector3Value = new Vector3(1, 1, 1); + so.ApplyModifiedProperties(); + yield return null; + + Assert.IsFalse(m_Criterion.completed); + } + + [UnityTest] + public IEnumerator WhenTargetPropertyIsModifiedToIncorrectColorValue_IsNotCompleted() + { + UnityObject component = m_GameObject.GetComponent(typeof(TestComponent)); + m_GameObject.transform.position = Vector3.zero; + m_Criterion.target.Update(component); + m_Criterion.propertyPath = "myColor"; + m_Criterion.targetValue = "#FF0000FF"; + m_Criterion.targetValueType = PropertyModificationCriterion.TargetValueType.Color; + var so = new SerializedObject(component); + SerializedProperty property = so.FindProperty("myColor"); + property.colorValue = Color.blue; + so.ApplyModifiedProperties(); + yield return null; + + Assert.IsFalse(m_Criterion.completed); + } + + [UnityTest] + public IEnumerator WhenTargetPropertyIsModifiedToDecimalTarget_IsCompleted() + { + m_GameObject.transform.position = Vector3.zero; + m_Criterion.target.Update(m_GameObject.transform); + m_Criterion.propertyPath = "m_LocalPosition.x"; + m_Criterion.targetValue = "1"; + m_Criterion.targetValueType = PropertyModificationCriterion.TargetValueType.Decimal; + var so = new SerializedObject(m_GameObject.transform); + SerializedProperty property = so.FindProperty("m_LocalPosition"); + property.vector3Value = new Vector3(1, 1, 1); + so.ApplyModifiedProperties(); + yield return null; + + Assert.IsTrue(m_Criterion.completed); + } + + [UnityTest] + public IEnumerator WhenTargetPropertyIsModifiedToTextTarget_IsCompleted() + { + m_Criterion.target.Update((UnityObject)m_GameObject); + m_Criterion.propertyPath = "m_Name"; + m_Criterion.targetValue = "Cube"; + m_Criterion.targetValueType = PropertyModificationCriterion.TargetValueType.Text; + var so = new SerializedObject(m_GameObject); + SerializedProperty property = so.FindProperty("m_Name"); + property.stringValue = "Cube"; + so.ApplyModifiedProperties(); + yield return null; + + Assert.IsTrue(m_Criterion.completed); + } + + [UnityTest] + public IEnumerator WhenTargetPropertyIsModifiedToIntegerTarget_IsCompleted() + { + m_Criterion.target.Update((UnityObject)m_GameObject); + m_Criterion.propertyPath = "m_Layer"; + m_Criterion.targetValue = "1"; + m_Criterion.targetValueType = PropertyModificationCriterion.TargetValueType.Integer; + var so = new SerializedObject(m_GameObject); + SerializedProperty property = so.FindProperty("m_Layer"); + property.intValue = 1; + so.ApplyModifiedProperties(); + yield return null; + + Assert.IsTrue(m_Criterion.completed); + } + + + [UnityTest] + public IEnumerator WhenTargetPropertyIsModifiedToColorTarget_IsCompleted() + { + UnityObject component = m_GameObject.GetComponent(typeof(TestComponent)); + m_Criterion.target.Update(component); + m_Criterion.propertyPath = "myColor"; + m_Criterion.targetValue = "#FF0000FF"; + m_Criterion.targetValueType = PropertyModificationCriterion.TargetValueType.Color; + var so = new SerializedObject(component); + SerializedProperty property = so.FindProperty("myColor"); + property.colorValue = Color.red; + so.ApplyModifiedProperties(); + yield return null; + + Assert.IsTrue(m_Criterion.completed); + } + + [UnityTest] + public IEnumerator WhenTargetPropertyIsModifiedToBooleanTarget_IsCompleted() + { + m_Criterion.target.Update((UnityObject)m_GameObject); + m_Criterion.propertyPath = "m_IsActive"; + m_Criterion.targetValue = "False"; + m_Criterion.targetValueType = PropertyModificationCriterion.TargetValueType.Boolean; + var so = new SerializedObject(m_GameObject); + SerializedProperty property = so.FindProperty("m_IsActive"); + property.boolValue = false; + so.ApplyModifiedProperties(); + yield return null; + + Assert.IsTrue(m_Criterion.completed); + m_GameObject.SetActive(true); + } + + [UnityTest] + public IEnumerator WhenTargetPropertyIsSatisfiedAndThenUndone_IsNotCompleted() + { + m_Criterion.target.Update((UnityObject)m_GameObject); + m_Criterion.propertyPath = "m_Layer"; + m_Criterion.targetValue = "1"; + m_Criterion.targetValueType = PropertyModificationCriterion.TargetValueType.Integer; + var so = new SerializedObject(m_GameObject); + SerializedProperty property = so.FindProperty("m_Layer"); + property.intValue = 1; + so.ApplyModifiedProperties(); + Undo.PerformUndo(); + yield return null; + + Assert.IsFalse(m_Criterion.completed); + } + + [UnityTest] + public IEnumerator WhenTargetPropertyIsSatisfiedAndThenAnotherPropertyIsModified_IsCompleted() + { + m_Criterion.target.Update((UnityObject)m_GameObject); + m_Criterion.propertyPath = "m_Layer"; + m_Criterion.targetValue = "1"; + m_Criterion.targetValueType = PropertyModificationCriterion.TargetValueType.Integer; + var so = new SerializedObject(m_GameObject); + SerializedProperty property = so.FindProperty("m_Layer"); + property.intValue = 1; + so.ApplyModifiedProperties(); + yield return null; + + property = so.FindProperty("m_Name"); + property.stringValue = "Cube"; + so.ApplyModifiedProperties(); + yield return null; + + Assert.IsTrue(m_Criterion.completed); + } + + [UnityTest] + public IEnumerator AutoComplete_WhenTargetIsEmpty_ReturnsFalseAndIsNotCompleted() + { + m_Criterion.target = null; + + Assert.IsFalse(m_Criterion.AutoComplete()); + yield return null; + + Assert.IsFalse(m_Criterion.completed); + } + + [UnityTest] + public IEnumerator AutoComplete_WhenPropertyPathIsEmpty_ReturnsFalseAndIsNotCompleted() + { + m_Criterion.target.Update(Camera.main); + + Assert.IsFalse(m_Criterion.AutoComplete()); + yield return null; + + Assert.IsFalse(m_Criterion.completed); + } + + [UnityTest] + public IEnumerator AutoComplete_WhenTargetValueTypeIsInteger_ReturnsTrueAndIsCompleted() + { + m_Criterion.target.Update((UnityObject)m_GameObject); + m_Criterion.propertyPath = "m_Layer"; + m_Criterion.targetValue = "1"; + m_Criterion.targetValueType = PropertyModificationCriterion.TargetValueType.Integer; + + Assert.IsTrue(m_Criterion.AutoComplete()); + yield return null; + + Assert.IsTrue(m_Criterion.completed); + } + + [UnityTest] + public IEnumerator AutoComplete_WhenModeIsDifferentThanInitial_WhenTargetValueTypeIsInteger_ReturnsTrueAndIsCompleted() + { + m_Criterion.target.Update((UnityObject)m_GameObject); + m_Criterion.propertyPath = "m_Layer"; + m_Criterion.targetValueType = PropertyModificationCriterion.TargetValueType.Integer; + m_Criterion.targetValueMode = PropertyModificationCriterion.TargetValueMode.DifferentThanInitial; + m_Criterion.StopTesting(); + m_Criterion.StartTesting(); + + Assert.IsTrue(m_Criterion.AutoComplete()); + yield return null; + + Assert.IsTrue(m_Criterion.completed); + } + + [UnityTest] + public IEnumerator AutoComplete_WhenTargetValueTypeIsDecimal_ReturnsTrueAndIsCompleted() + { + m_GameObject.transform.position = Vector3.zero; + m_Criterion.target.Update(m_GameObject.transform); + m_Criterion.propertyPath = "m_LocalPosition.x"; + m_Criterion.targetValue = "1"; + m_Criterion.targetValueType = PropertyModificationCriterion.TargetValueType.Decimal; + + Assert.IsTrue(m_Criterion.AutoComplete()); + yield return null; + + Assert.IsTrue(m_Criterion.completed); + } + + [UnityTest] + public IEnumerator AutoComplete_WhenTargetValueTypeIsText_ReturnsTrueAndIsCompleted() + { + m_Criterion.target.Update((UnityObject)m_GameObject); + m_Criterion.propertyPath = "m_Name"; + m_Criterion.targetValue = "Cube"; + m_Criterion.targetValueType = PropertyModificationCriterion.TargetValueType.Text; + + Assert.IsTrue(m_Criterion.AutoComplete()); + yield return null; + + Assert.IsTrue(m_Criterion.completed); + } + + [UnityTest] + public IEnumerator AutoComplete_WhenTargetValueTypeIsBool_ReturnsTrueAndIsCompleted() + { + m_Criterion.target.Update((UnityObject)m_GameObject); + m_Criterion.propertyPath = "m_IsActive"; + m_Criterion.targetValue = "False"; + m_Criterion.targetValueType = PropertyModificationCriterion.TargetValueType.Boolean; + + Assert.IsTrue(m_Criterion.AutoComplete()); + yield return null; + + Assert.IsTrue(m_Criterion.completed); + } + + [UnityTest] + public IEnumerator AutoComplete_WhenTargetValueTypeIsColor_ReturnsTrueAndIsCompleted() + { + UnityObject component = m_GameObject.GetComponent(typeof(TestComponent)); + m_Criterion.target.Update(component); + m_Criterion.propertyPath = "myColor"; + m_Criterion.targetValue = "#FF0000FF"; + m_Criterion.targetValueType = PropertyModificationCriterion.TargetValueType.Color; + + Assert.IsTrue(m_Criterion.AutoComplete()); + yield return null; + + Assert.IsTrue(m_Criterion.completed); + } + + [UnityTest] + public IEnumerator WhenTargetPropertyAlreadyHasTargetValue_IsCompleted() + { + m_Criterion.StopTesting(); + + m_GameObject.transform.position = Vector3.zero; + m_Criterion.target.Update(m_GameObject.transform); + m_Criterion.propertyPath = "m_LocalPosition.x"; + m_Criterion.targetValue = "1"; + m_Criterion.targetValueType = PropertyModificationCriterion.TargetValueType.Decimal; + var so = new SerializedObject(m_GameObject.transform); + SerializedProperty property = so.FindProperty("m_LocalPosition"); + property.vector3Value = new Vector3(1, 1, 1); + so.ApplyModifiedProperties(); + yield return null; + + m_Criterion.StartTesting(); + + Assert.IsTrue(m_Criterion.completed); + } + + [UnityTest] + public IEnumerator DifferentThanInitial_WhenNoModificationIsDoneDecimal_IsNotCompleted() + { + m_GameObject.transform.position = Vector3.zero; + m_Criterion.target.Update(m_GameObject.transform); + m_Criterion.propertyPath = "m_LocalPosition.x"; + m_Criterion.targetValueMode = PropertyModificationCriterion.TargetValueMode.DifferentThanInitial; + m_Criterion.targetValueType = PropertyModificationCriterion.TargetValueType.Decimal; + yield return null; + + Assert.IsFalse(m_Criterion.completed); + } + + [UnityTest] + public IEnumerator DifferentThanInitial_WhenTargetPropertyIsModifiedToDifferentDecimal_IsCompleted() + { + m_GameObject.transform.position = Vector3.zero; + m_Criterion.target.Update(m_GameObject.transform); + m_Criterion.propertyPath = "m_LocalPosition.x"; + m_Criterion.targetValueMode = PropertyModificationCriterion.TargetValueMode.DifferentThanInitial; + m_Criterion.targetValueType = PropertyModificationCriterion.TargetValueType.Decimal; + var so = new SerializedObject(m_GameObject.transform); + SerializedProperty property = so.FindProperty("m_LocalPosition"); + property.vector3Value = new Vector3(10,5,0); + so.ApplyModifiedProperties(); + yield return null; + + Assert.IsTrue(m_Criterion.completed); + } + + [UnityTest] + public IEnumerator DifferentThanInitial_WhenTargetPropertyIsModifiedToSameInitialValueDecimal_IsNotCompleted() + { + m_GameObject.transform.position = Vector3.zero; + m_Criterion.target.Update(m_GameObject.transform); + m_Criterion.propertyPath = "m_LocalPosition.x"; + m_Criterion.targetValueMode = PropertyModificationCriterion.TargetValueMode.DifferentThanInitial; + m_Criterion.targetValueType = PropertyModificationCriterion.TargetValueType.Decimal; + var so = new SerializedObject(m_GameObject.transform); + SerializedProperty property = so.FindProperty("m_LocalPosition"); + property.vector3Value = Vector3.zero; + so.ApplyModifiedProperties(); + yield return null; + + Assert.IsFalse(m_Criterion.completed); + } + + [UnityTest] + public IEnumerator DifferentThanInitial_WhenNoModificationIsDoneColor_IsNotCompleted() + { + UnityObject component = m_GameObject.GetComponent(typeof(TestComponent)); + m_Criterion.target.Update(component); + m_Criterion.propertyPath = "myColor"; + m_Criterion.targetValueMode = PropertyModificationCriterion.TargetValueMode.DifferentThanInitial; + m_Criterion.targetValueType = PropertyModificationCriterion.TargetValueType.Color; + yield return null; + + Assert.IsFalse(m_Criterion.completed); + } + + [UnityTest] + public IEnumerator DifferentThanInitial_WhenTargetPropertyIsModifiedToDifferentColor_IsCompleted() + { + UnityObject component = m_GameObject.GetComponent(typeof(TestComponent)); + m_Criterion.target.Update(component); + m_Criterion.propertyPath = "myColor"; + m_Criterion.targetValueMode = PropertyModificationCriterion.TargetValueMode.DifferentThanInitial; + m_Criterion.targetValueType = PropertyModificationCriterion.TargetValueType.Color; + var so = new SerializedObject(component); + SerializedProperty property = so.FindProperty("myColor"); + property.colorValue = Color.gray; + so.ApplyModifiedProperties(); + yield return null; + + Assert.IsTrue(m_Criterion.completed); + } + + + [UnityTest] + public IEnumerator DifferentThanInitial_WhenNoModificationIsDoneBoolean_IsNotCompleted() + { + m_Criterion.target.Update((UnityObject)m_GameObject); + m_Criterion.propertyPath = "m_IsActive"; + m_Criterion.targetValueMode = PropertyModificationCriterion.TargetValueMode.DifferentThanInitial; + m_Criterion.targetValueType = PropertyModificationCriterion.TargetValueType.Boolean; + yield return null; + + Assert.IsFalse(m_Criterion.completed); + } + + [UnityTest] + public IEnumerator DifferentThanInitial_WhenTargetPropertyIsModifiedToDifferentBoolean_IsCompleted() + { + m_GameObject.SetActive(true); + m_Criterion.target.Update((UnityObject)m_GameObject); + m_Criterion.propertyPath = "m_IsActive"; + m_Criterion.targetValueMode = PropertyModificationCriterion.TargetValueMode.DifferentThanInitial; + m_Criterion.targetValueType = PropertyModificationCriterion.TargetValueType.Boolean; + var so = new SerializedObject(m_GameObject); + SerializedProperty property = so.FindProperty("m_IsActive"); + property.boolValue = false; + so.ApplyModifiedProperties(); + yield return null; + + Assert.IsTrue(m_Criterion.completed); + } + + [UnityTest] + public IEnumerator DifferentThanInitial_WhenNoModificationIsDoneInteger_IsNotCompleted() + { + m_Criterion.target.Update((UnityObject)m_GameObject); + m_Criterion.propertyPath = "m_Layer"; + m_Criterion.targetValueMode = PropertyModificationCriterion.TargetValueMode.DifferentThanInitial; + m_Criterion.targetValueType = PropertyModificationCriterion.TargetValueType.Integer; + yield return null; + + Assert.IsFalse(m_Criterion.completed); + } + + [UnityTest] + public IEnumerator DifferentThanInitial_WhenTargetPropertyIsModifiedToDifferentInteger_IsCompleted() + { + m_Criterion.target.Update((UnityObject)m_GameObject); + m_Criterion.propertyPath = "m_Layer"; + m_Criterion.targetValueMode = PropertyModificationCriterion.TargetValueMode.DifferentThanInitial; + m_Criterion.targetValueType = PropertyModificationCriterion.TargetValueType.Integer; + var so = new SerializedObject(m_GameObject); + SerializedProperty property = so.FindProperty("m_Layer"); + property.intValue = 20; + so.ApplyModifiedProperties(); + yield return null; + + Assert.IsTrue(m_Criterion.completed); + } + [UnityTest] + public IEnumerator DifferentThanInitial_WhenNoModificationIsDoneText_IsNotCompleted() + { + m_Criterion.target.Update((UnityObject)m_GameObject); + m_Criterion.propertyPath = "m_Name"; + m_Criterion.targetValueMode = PropertyModificationCriterion.TargetValueMode.DifferentThanInitial; + m_Criterion.targetValueType = PropertyModificationCriterion.TargetValueType.Text; + yield return null; + + Assert.IsFalse(m_Criterion.completed); + } + + [UnityTest] + public IEnumerator DifferentThanInitial_WhenTargetPropertyIsModifiedToDifferentText_IsCompleted() + { + m_Criterion.target.Update((UnityObject)m_GameObject); + m_Criterion.propertyPath = "m_Name"; + m_Criterion.targetValueMode = PropertyModificationCriterion.TargetValueMode.DifferentThanInitial; + m_Criterion.targetValueType = PropertyModificationCriterion.TargetValueType.Text; + var so = new SerializedObject(m_GameObject); + SerializedProperty property = so.FindProperty("m_Name"); + property.stringValue = "random thing"; + so.ApplyModifiedProperties(); + yield return null; + + Assert.IsTrue(m_Criterion.completed); + } +#endif + } +} diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Tests/Editor/PropertyModificationCriterionTests.cs.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Tests/Editor/PropertyModificationCriterionTests.cs.meta" new file mode 100644 index 00000000..b9dcd2a4 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Tests/Editor/PropertyModificationCriterionTests.cs.meta" @@ -0,0 +1,12 @@ +fileFormatVersion: 2 +guid: f81be4b62f6ea480d9fbbe4f91cf02f2 +timeCreated: 1489752561 +licenseType: Pro +MonoImporter: + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Tests/Editor/RequiredSelectionCriterionTests.cs" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Tests/Editor/RequiredSelectionCriterionTests.cs" new file mode 100644 index 00000000..993eb535 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Tests/Editor/RequiredSelectionCriterionTests.cs" @@ -0,0 +1,118 @@ +using System; +using System.Linq; +using System.Collections; +using NUnit.Framework; +using UnityEditor; +using UnityEditor.SceneManagement; +using UnityEngine; +using UnityEngine.TestTools; + +using UnityObject = UnityEngine.Object; + +namespace Unity.InteractiveTutorials.Tests +{ + public class RequiredSelectionCriterionTests : CriterionTestBase + { + GameObject m_ReferencedObject; + ObjectReference m_ObjectReference; + + [SetUp] + public void OpenSceneAndSetUpCriterion() + { + EditorSceneManager.OpenScene(GetTestAssetPath("EmptyTestScene.unity")); + + m_ReferencedObject = new GameObject(); + + m_ObjectReference = new ObjectReference(); + m_ObjectReference.sceneObjectReference.Update(m_ReferencedObject); + + m_Criterion.SetObjectReferences(new[] { m_ObjectReference }); + } + + // TODO Pretty much all of these tets crash 2019.1 +#if !UNITY_2019_1_OR_NEWER + [Test] + public void WhenObjectReferencesIsEmpty_IsCompleted() + { + Selection.objects = Enumerable.Empty().ToArray(); + m_Criterion.SetObjectReferences(Enumerable.Empty()); + + Assert.IsTrue(m_Criterion.completed); + } + + [UnityTest] + public IEnumerator WhenSelectionIsEmpty_IsNotCompleted() + { + Selection.objects = new UnityObject[0]; + yield return null; + + Assert.IsFalse(m_Criterion.completed); + } + + [UnityTest] + public IEnumerator WhenReferencedObjectIsSelected_IsCompleted() + { + Selection.objects = new UnityObject[] { m_ReferencedObject }; + yield return null; + + Assert.IsTrue(m_Criterion.completed); + } + + [UnityTest] + public IEnumerator WhenReferencedObjectWasPreviouslySelected_IsNotCompleted() + { + Selection.objects = new UnityObject[] { m_ReferencedObject }; + yield return null; + Selection.objects = new UnityObject[0]; + yield return null; + + Assert.IsFalse(m_Criterion.completed); + } + + [UnityTest] + public IEnumerator WhenSelectedObjectIsNotReferencedObject_IsNotCompleted() + { + var gameObject = new GameObject(); + Selection.objects = new UnityObject[] { gameObject }; + yield return null; + + Assert.IsFalse(m_Criterion.completed); + } + + [UnityTest] + public IEnumerator WhenReferencedObjectIsAlreadySelected_IsCompleted() + { + m_Criterion.StopTesting(); + + Selection.objects = new UnityObject[] { m_ReferencedObject }; + yield return null; + + m_Criterion.StartTesting(); + + Assert.IsTrue(m_Criterion.completed); + } + + [UnityTest] + public IEnumerator AutoComplete_WhenReferencedObjectIsNull_ReturnsFalseAndIsNotCompleted() + { + var nullObjectReference = new ObjectReference(); + nullObjectReference.sceneObjectReference.Update(null); + m_Criterion.SetObjectReferences(new[] { nullObjectReference }); + + Assert.IsFalse(m_Criterion.AutoComplete()); + yield return null; + + Assert.IsFalse(m_Criterion.completed); + } + + [UnityTest] + public IEnumerator AutoComplete_WhenReferencedObjectIsGameObject_ReturnsTrueAndIsCompleted() + { + Assert.IsTrue(m_Criterion.AutoComplete()); + yield return null; + + Assert.IsTrue(m_Criterion.completed); + } +#endif + } +} diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Tests/Editor/RequiredSelectionCriterionTests.cs.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Tests/Editor/RequiredSelectionCriterionTests.cs.meta" new file mode 100644 index 00000000..4d4ea9c6 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Tests/Editor/RequiredSelectionCriterionTests.cs.meta" @@ -0,0 +1,12 @@ +fileFormatVersion: 2 +guid: e5e7c937db13349deb0b4a13a295ea2a +timeCreated: 1489752561 +licenseType: Pro +MonoImporter: + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Tests/Editor/SceneAddedToBuildCriterionTests.cs" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Tests/Editor/SceneAddedToBuildCriterionTests.cs" new file mode 100644 index 00000000..211cf2f5 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Tests/Editor/SceneAddedToBuildCriterionTests.cs" @@ -0,0 +1,128 @@ +using System.Collections; +using NUnit.Framework; +using UnityEditor; +using UnityEngine.TestTools; + +namespace Unity.InteractiveTutorials.Tests +{ + public class SceneAddedToBuildCriterionTests : CriterionTestBase + { + const string m_TestSceneName = "EmptyTestScene"; + + // TODO Pretty much all of these tets crash 2019.1 +#if !UNITY_2019_1_OR_NEWER + [SetUp] + public void SetUp() + { + var scene = GetSceneAsset(m_TestSceneName); + RemoveSceneFromBuildSettings(scene); + } + + [UnityTest] + public IEnumerator SceneIsNotNull_WasAddedToBuild_IsCompleted() + { + m_Criterion.scene = GetSceneAsset(m_TestSceneName); + + Assert.IsFalse(SceneAddedToBuildCriterion.SceneIsAddedToBuildSettings(m_Criterion.scene)); + yield return null; + + SceneAddedToBuildCriterion.AddSceneToBuildSettings(m_Criterion.scene); + + Assert.IsTrue(SceneAddedToBuildCriterion.SceneIsAddedToBuildSettings(m_Criterion.scene)); + + Assert.IsTrue(m_Criterion.completed); + } + + [UnityTest] + public IEnumerator SceneIsNotNull_WasAddedToBuild_IsDisabled_IsNotCompleted() + { + m_Criterion.scene = GetSceneAsset(m_TestSceneName); + + yield return null; + + SceneAddedToBuildCriterion.AddSceneToBuildSettings(m_Criterion.scene, false); + + Assert.IsTrue(SceneAddedToBuildCriterion.SceneIsAddedToBuildSettings(m_Criterion.scene)); + + Assert.IsFalse(m_Criterion.completed); + } + + [UnityTest] + public IEnumerator SceneIsNotNull_WasNotAddedToBuild_IsNotCompleted() + { + m_Criterion.scene = GetSceneAsset(m_TestSceneName); + + yield return null; + + Assert.IsFalse(SceneAddedToBuildCriterion.SceneIsAddedToBuildSettings(m_Criterion.scene)); + + Assert.IsFalse(m_Criterion.completed); + } + + [UnityTest] + public IEnumerator SceneIsNull_IsNotCompleted() + { + Assert.IsFalse(SceneAddedToBuildCriterion.SceneIsAddedToBuildSettings(m_Criterion.scene)); + yield return null; + + Assert.IsFalse(m_Criterion.completed); + } + + [UnityTest] + public IEnumerator Autocomplete_SceneIsNotNull_IsCompleted() + { + m_Criterion.scene = GetSceneAsset(m_TestSceneName); + Assert.IsTrue(m_Criterion.AutoComplete()); + yield return null; + + Assert.IsTrue(m_Criterion.completed); + } + + [UnityTest] + public IEnumerator Autocomplete_SceneIsNull_IsNotCompleted() + { + Assert.IsFalse(m_Criterion.AutoComplete()); + yield return null; + + Assert.IsFalse(m_Criterion.completed); + } + + static SceneAsset GetSceneAsset(string name) + { + var guid = AssetDatabase.FindAssets(m_TestSceneName + " t:scene")[0]; + var sceneAssetPath = AssetDatabase.GUIDToAssetPath(guid); + return AssetDatabase.LoadAssetAtPath(sceneAssetPath); + } + + + public static void RemoveSceneFromBuildSettings(SceneAsset scene) + { + if (EditorBuildSettings.scenes.Length == 0) + { + return; + } + if (string.IsNullOrEmpty(AssetDatabase.GetAssetPath(scene))) + { + return; + } + + if (!SceneAddedToBuildCriterion.SceneIsAddedToBuildSettings(scene)) + { + return; + } + + var sceneAsset = new EditorBuildSettingsScene(AssetDatabase.GetAssetPath(scene), true); + var scenes = new EditorBuildSettingsScene[EditorBuildSettings.scenes.Length - 1]; + var j = 0; + for (int i = 0; i < EditorBuildSettings.scenes.Length; ++i) + { + if (EditorBuildSettings.scenes[i].guid != sceneAsset.guid) + { + scenes[j++] = EditorBuildSettings.scenes[i]; + } + } + EditorBuildSettings.scenes = scenes; + } +#endif + } +} diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Tests/Editor/SceneAddedToBuildCriterionTests.cs.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Tests/Editor/SceneAddedToBuildCriterionTests.cs.meta" new file mode 100644 index 00000000..4558128f --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Tests/Editor/SceneAddedToBuildCriterionTests.cs.meta" @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 9a606070ffd9a3e41a092f7b1df2b639 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Tests/Editor/SceneObjectReferenceTests.cs" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Tests/Editor/SceneObjectReferenceTests.cs" new file mode 100644 index 00000000..9303fa55 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Tests/Editor/SceneObjectReferenceTests.cs" @@ -0,0 +1,294 @@ +using System.Collections; +using NUnit.Framework; +using UnityEditor; +using UnityEditor.SceneManagement; +using UnityEngine; +using UnityEngine.TestTools; + +namespace Unity.InteractiveTutorials.Tests +{ + public class SceneObjectReferenceTests + { + SceneObjectReference reference; + private string tempScenePath = "Assets/TempScene.unity"; + + [SetUp] + public void InitManager() + { + reference = new SceneObjectReference(); + SaveScene(); + } + + public void SaveScene() + { + var scene = EditorSceneManager.GetActiveScene(); + EditorSceneManager.SaveScene(scene, tempScenePath); + } + + [OneTimeTearDown] + public void DeleteScene() + { + AssetDatabase.DeleteAsset(tempScenePath); + EditorSceneManager.NewScene(NewSceneSetup.EmptyScene); + } + + [Test] + public void Reference_WhenNotSet_IsNull() + { + Assert.IsNull(reference.ReferencedObject); + } + + [Test] + public void Reference_WhenNoSceneIsSet_IsResolved() + { + Assert.IsTrue(reference.ReferenceResolved); + } + + [Test] + public void Reference_WhenSceneIsSet_IsNotResolved() + { + var go = CreateGameObject(); + reference.Update(go); + + EditorSceneManager.NewScene(NewSceneSetup.EmptyScene); + + Assert.IsFalse(reference.ReferenceResolved); + } + + [Test] + public void ReferenceGO_WhenExistOnScene_ReturnsTheObject() + { + var go = CreateGameObject(); + reference.Update(go); + + Assert.IsTrue(reference.ReferenceResolved); + Assert.IsNotNull(reference.ReferencedObject); + Assert.IsNotNull(reference.ReferencedObjectAsGameObject); + Assert.IsNull(reference.ReferencedObjectAsComponent); + Assert.AreEqual(go, reference.ReferencedObject); + Assert.AreEqual(go, reference.ReferencedObjectAsGameObject); + } + + [Test] + public void ReferenceComponent_WhenExistOnScene_ReturnsTheObject() + { + var go = CreateGameObject(); + reference.Update(go.transform); + + Assert.IsTrue(reference.ReferenceResolved); + Assert.IsNotNull(reference.ReferencedObject); + Assert.IsNotNull(reference.ReferencedObjectAsComponent); + Assert.IsNull(reference.ReferencedObjectAsGameObject); + Assert.AreEqual(go.transform, reference.ReferencedObject); + Assert.AreEqual(go.transform, reference.ReferencedObjectAsComponent); + } + + [Test] + public void ReferencePrefab_WhenExistOnScene_ReturnsTheObject() + { + var go = CreateGameObject(); + var tempPath = AssetDatabase.GUIDToAssetPath(AssetDatabase.CreateFolder("Assets", "Temp")); + var testPrefabPath = tempPath + "/TestPrefab.prefab"; + var prefab = PrefabUtility.SaveAsPrefabAsset(go, testPrefabPath); + + reference.Update(prefab); + + Assert.IsTrue(reference.ReferenceResolved); + Assert.IsTrue(reference.IsPrefabReference); + Assert.IsNotNull(reference.ReferencedObject); + Assert.IsNotNull(reference.ReferencedObjectAsGameObject); + Assert.AreEqual(prefab, reference.ReferencedObject); + Assert.AreEqual(prefab, reference.ReferencedObjectAsGameObject); + + AssetDatabase.DeleteAsset(tempPath); + } + + [Test] + public void ReferencePrefab_WhenReferencingInstance_ReturnsTheInstance() + { + var go = CreateGameObject(); + var tempPath = AssetDatabase.GUIDToAssetPath(AssetDatabase.CreateFolder("Assets", "Temp")); + var testPrefabPath = tempPath + "/TestPrefab.prefab"; + var prefab = PrefabUtility.SaveAsPrefabAsset(go, testPrefabPath); + var prefabInstance = PrefabUtility.InstantiatePrefab(prefab); + + reference.Update(prefabInstance); + + Assert.IsTrue(reference.ReferenceResolved); + Assert.IsFalse(reference.IsPrefabReference); + Assert.IsNotNull(reference.ReferencedObject); + Assert.IsNotNull(reference.ReferencedObjectAsGameObject); + Assert.AreEqual(prefabInstance, reference.ReferencedObject); + Assert.AreEqual(prefabInstance, reference.ReferencedObjectAsGameObject); + + AssetDatabase.DeleteAsset(tempPath); + } + + [Test] + public void ReferencePrefab_WhenReferencingPrefabVariant_returnsThePrefabAsset() + { + string tempPath = ""; + string testPrefabVariantPath = ""; + try + { + var go = CreateGameObject(); + tempPath = AssetDatabase.GUIDToAssetPath(AssetDatabase.CreateFolder("Assets", "Temp")); + var testPrefabPath = tempPath + "/TestPrefab.prefab"; + var prefab = PrefabUtility.SaveAsPrefabAssetAndConnect(go, testPrefabPath, InteractionMode.AutomatedAction); + testPrefabVariantPath = tempPath + "/TestPrefabVariant.prefab"; + var prefabInstance = PrefabUtility.GetOutermostPrefabInstanceRoot(go); + var prefabAssetVariant = PrefabUtility.SaveAsPrefabAsset(prefabInstance, testPrefabVariantPath); + + reference.Update(prefabAssetVariant); + + Assert.IsTrue(reference.ReferenceResolved); + Assert.IsTrue(reference.IsPrefabReference); + Assert.IsNotNull(reference.ReferencedObject); + Assert.IsNotNull(reference.ReferencedObjectAsGameObject); + Assert.AreEqual(prefabAssetVariant, reference.ReferencedObject); + Assert.AreEqual(prefabAssetVariant, reference.ReferencedObjectAsGameObject); + } + finally + { + + AssetDatabase.DeleteAsset(tempPath); + AssetDatabase.DeleteAsset(testPrefabVariantPath); + } + } + + [Test] + public void Reference_WhenNotExistOnScene_ReturnsNull() + { + var go = CreateGameObject(); + reference.Update(go); + EditorSceneManager.NewScene(NewSceneSetup.EmptyScene); + + Assert.IsFalse(reference.ReferenceResolved); + Assert.IsNull(reference.ReferencedObject); + } + + [UnityTest] + public IEnumerator Reference_WhenInvalidSceneIsLoaded_IsNotResolved() + { + var newScene = EditorSceneManager.NewScene(NewSceneSetup.EmptyScene); + var go = CreateGameObject(); + var scenePath = "Assets/TestScene.unity"; + EditorSceneManager.SaveScene(newScene, scenePath, false); + reference.Update(go); + EditorSceneManager.SaveScene(newScene); + + try + { + EditorSceneManager.NewScene(NewSceneSetup.EmptyScene); + yield return null; + Assert.IsFalse(reference.ReferenceResolved); + Assert.IsNull(reference.ReferencedObject); + Assert.IsNotNull(reference.ReferenceScene); + + var sceneAssetPath = AssetDatabase.GetAssetOrScenePath(reference.ReferenceScene); + EditorSceneManager.OpenScene(sceneAssetPath); + yield return null; + Assert.IsTrue(reference.ReferenceResolved); + Assert.IsNotNull(reference.ReferencedObject); + Assert.IsNotNull(reference.ReferencedObject); + } + finally + { + AssetDatabase.DeleteAsset(scenePath); + } + } + + [Test] + public void Reference_WhenChanged_WillReturnNewState() + { + var go = CreateGameObject(); + var goPrefab = CreateGameObject(); + var testPrefabPath = "Assets/TestPrefab.prefab"; + var prefab = PrefabUtility.SaveAsPrefabAsset(goPrefab, testPrefabPath); + var prefabInstance = PrefabUtility.InstantiatePrefab(prefab); + var component = go.transform; + var so = ScriptableObject.CreateInstance(); + var assetPath = "Assets/TestAsset.asset"; + AssetDatabase.CreateAsset(so, assetPath); + var asset = AssetDatabase.LoadAssetAtPath(assetPath, typeof(TestAsset)); + + try + { + Assert.IsTrue(reference.ReferenceResolved); + Assert.IsFalse(reference.IsAssetReference); + Assert.IsFalse(reference.IsComponentReference); + Assert.IsFalse(reference.IsGameObjectReference); + Assert.IsFalse(reference.IsPrefabReference); + + reference.Update(go); + + Assert.IsTrue(reference.ReferenceResolved); + Assert.IsFalse(reference.IsAssetReference); + Assert.IsFalse(reference.IsComponentReference); + Assert.IsTrue(reference.IsGameObjectReference); + Assert.IsFalse(reference.IsPrefabReference); + + reference.Update(component); + + Assert.IsTrue(reference.ReferenceResolved); + Assert.IsFalse(reference.IsAssetReference); + Assert.IsTrue(reference.IsComponentReference); + Assert.IsFalse(reference.IsGameObjectReference); + Assert.IsFalse(reference.IsPrefabReference); + + reference.Update(asset); + + Assert.IsTrue(reference.ReferenceResolved); + Assert.IsTrue(reference.IsAssetReference); + Assert.IsFalse(reference.IsComponentReference); + Assert.IsFalse(reference.IsGameObjectReference); + Assert.IsFalse(reference.IsPrefabReference); + + reference.Update(prefab); + + Assert.IsTrue(reference.ReferenceResolved); + Assert.IsFalse(reference.IsAssetReference); + Assert.IsFalse(reference.IsComponentReference); + Assert.IsFalse(reference.IsGameObjectReference); + Assert.IsTrue(reference.IsPrefabReference); + + reference.Update(prefabInstance); + + Assert.IsTrue(reference.ReferenceResolved); + Assert.IsFalse(reference.IsAssetReference); + Assert.IsFalse(reference.IsComponentReference); + Assert.IsTrue(reference.IsGameObjectReference); + Assert.IsFalse(reference.IsPrefabReference); + + reference.Update(component); + + Assert.IsTrue(reference.ReferenceResolved); + Assert.IsFalse(reference.IsAssetReference); + Assert.IsTrue(reference.IsComponentReference); + Assert.IsFalse(reference.IsGameObjectReference); + Assert.IsFalse(reference.IsPrefabReference); + + reference.Update(null); + + Assert.IsTrue(reference.ReferenceResolved); + Assert.IsFalse(reference.IsAssetReference); + Assert.IsFalse(reference.IsComponentReference); + Assert.IsFalse(reference.IsGameObjectReference); + Assert.IsFalse(reference.IsPrefabReference); + } + finally + { + AssetDatabase.DeleteAsset(assetPath); + AssetDatabase.DeleteAsset(testPrefabPath); + } + } + + private static GameObject CreateGameObject() + { + var go = new GameObject(); + Undo.RegisterCreatedObjectUndo(go, "Test GO created"); + return go; + } + } + +} diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Tests/Editor/SceneObjectReferenceTests.cs.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Tests/Editor/SceneObjectReferenceTests.cs.meta" new file mode 100644 index 00000000..e693c7c1 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Tests/Editor/SceneObjectReferenceTests.cs.meta" @@ -0,0 +1,12 @@ +fileFormatVersion: 2 +guid: 06ecb19dd38e840fd948b9276749f1b2 +timeCreated: 1489574766 +licenseType: Pro +MonoImporter: + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Tests/Editor/SceneViewCameraMovedCriterionTests.cs" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Tests/Editor/SceneViewCameraMovedCriterionTests.cs" new file mode 100644 index 00000000..a8872ed8 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Tests/Editor/SceneViewCameraMovedCriterionTests.cs" @@ -0,0 +1,105 @@ +using System.Collections; +using NUnit.Framework; +using UnityEditor; +using UnityEngine; +using UnityEngine.TestTools; + +namespace Unity.InteractiveTutorials.Tests +{ + public class SceneViewCameraMovedCriterionTests : CriterionTestBase + { + [SetUp] + public void Setup() + { + //ensure a sceneview for tests, we have a tests that tests what happens when no SceneView is present. + EditorWindow.GetWindow().Show(true); + } + + // TODO Pretty much all of these tets crash 2019.1 +#if !UNITY_2019_1_OR_NEWER + [UnityTest] + public IEnumerator CameraDoesNotMove_IsNotComplete() + { + yield return null; + + Assert.IsFalse(m_Criterion.completed); + } + + [UnityTest] + public IEnumerator WhenCameraViewChangesPosition_IsComplete() + { + var position = SceneView.lastActiveSceneView.camera.transform.position; + SceneView.lastActiveSceneView.camera.transform.position = position + Vector3.down; + yield return null; + + Assert.IsTrue(m_Criterion.completed); + } + + [UnityTest] + public IEnumerator WhenCameraViewChangesOrientation_IsComplete() + { + var localRotation = SceneView.lastActiveSceneView.camera.transform.localRotation; + SceneView.lastActiveSceneView.camera.transform.localRotation = localRotation * Quaternion.Euler(0, 15, 0); + yield return null; + + Assert.IsTrue(m_Criterion.completed); + } + + [UnityTest] + public IEnumerator AutoComplete_ReturnsTrue_IsComplete() + { + Assert.IsTrue(m_Criterion.AutoComplete()); + + yield return null; + + Assert.IsTrue(m_Criterion.completed); + } + + + [UnityTest] + public IEnumerator NoLastActiveSceneView_ThenSceneViewIsActivated_ShouldNotComplete() + { + m_Criterion.StopTesting(); + var sceneViews = Resources.FindObjectsOfTypeAll(); + foreach (var sceneView in sceneViews) + { + sceneView.Close(); + } + + m_Criterion.StartTesting(); + yield return null; + + Assert.IsFalse(m_Criterion.completed); + + EditorWindow.GetWindow().Show(true); + yield return null; + + Assert.IsFalse(m_Criterion.completed); + } + + + [UnityTest] + public IEnumerator NoLastActiveSceneView_ThenSceneViewIsActivated_ThenUserMovesCamera_IsComplete() + { + m_Criterion.StopTesting(); + var sceneViews = Resources.FindObjectsOfTypeAll(); + foreach (var sceneView in sceneViews) + { + sceneView.Close(); + } + + m_Criterion.StartTesting(); + EditorWindow.GetWindow().Show(true); + + yield return null; + + var position = SceneView.lastActiveSceneView.camera.transform.position; + SceneView.lastActiveSceneView.camera.transform.position = position + Vector3.down; + + yield return null; + + Assert.IsTrue(m_Criterion.completed); + } +#endif + } +} diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Tests/Editor/SceneViewCameraMovedCriterionTests.cs.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Tests/Editor/SceneViewCameraMovedCriterionTests.cs.meta" new file mode 100644 index 00000000..b63acf5c --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Tests/Editor/SceneViewCameraMovedCriterionTests.cs.meta" @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 862176d9ea3e90449bca6ec43b70f1a4 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Tests/Editor/TestAsset.cs" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Tests/Editor/TestAsset.cs" new file mode 100644 index 00000000..ccfcd5b4 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Tests/Editor/TestAsset.cs" @@ -0,0 +1,6 @@ +using UnityEngine; + +namespace Unity.InteractiveTutorials.Tests +{ + class TestAsset : ScriptableObject { } +} \ No newline at end of file diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Tests/Editor/TestAsset.cs.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Tests/Editor/TestAsset.cs.meta" new file mode 100644 index 00000000..d36dce5c --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Tests/Editor/TestAsset.cs.meta" @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: d369852aeb66ccd4d9033582d1168834 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Tests/Editor/TestBase.cs" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Tests/Editor/TestBase.cs" new file mode 100644 index 00000000..85eca4e3 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Tests/Editor/TestBase.cs" @@ -0,0 +1,12 @@ +using System.IO; + +namespace Unity.InteractiveTutorials.Tests +{ + public class TestBase + { + protected static string GetTestAssetPath(string relativeAssetPath) + { + return Path.Combine("Packages/com.unity.learn.iet-framework/Tests/Editor", relativeAssetPath); + } + } +} diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Tests/Editor/TestBase.cs.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Tests/Editor/TestBase.cs.meta" new file mode 100644 index 00000000..59809b20 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Tests/Editor/TestBase.cs.meta" @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 7ae7b1592954744039c7128e1032e7b4 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Tests/Editor/TestPrefab1.prefab" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Tests/Editor/TestPrefab1.prefab" new file mode 100644 index 00000000..d4796f83 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Tests/Editor/TestPrefab1.prefab" @@ -0,0 +1,41 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!1001 &100100000 +Prefab: + m_ObjectHideFlags: 1 + serializedVersion: 2 + m_Modification: + m_TransformParent: {fileID: 0} + m_Modifications: [] + m_RemovedComponents: [] + m_ParentPrefab: {fileID: 0} + m_RootGameObject: {fileID: 1973035144834676} + m_IsPrefabParent: 1 +--- !u!1 &1973035144834676 +GameObject: + m_ObjectHideFlags: 0 + m_PrefabParentObject: {fileID: 0} + m_PrefabInternal: {fileID: 100100000} + serializedVersion: 5 + m_Component: + - component: {fileID: 4718847311796176} + m_Layer: 0 + m_Name: TestPrefab1 + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &4718847311796176 +Transform: + m_ObjectHideFlags: 1 + m_PrefabParentObject: {fileID: 0} + m_PrefabInternal: {fileID: 100100000} + m_GameObject: {fileID: 1973035144834676} + m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} + m_LocalPosition: {x: 0, y: 0, z: 0} + m_LocalScale: {x: 1, y: 1, z: 1} + m_Children: [] + m_Father: {fileID: 0} + m_RootOrder: 0 + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Tests/Editor/TestPrefab1.prefab.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Tests/Editor/TestPrefab1.prefab.meta" new file mode 100644 index 00000000..d54c5b81 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Tests/Editor/TestPrefab1.prefab.meta" @@ -0,0 +1,9 @@ +fileFormatVersion: 2 +guid: e094db015e58a40a482cc8d30e011d3e +timeCreated: 1489762998 +licenseType: Pro +NativeFormatImporter: + mainObjectFileID: 100100000 + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Tests/Editor/TestPrefab2.prefab" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Tests/Editor/TestPrefab2.prefab" new file mode 100644 index 00000000..033a4f8c --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Tests/Editor/TestPrefab2.prefab" @@ -0,0 +1,41 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!1001 &100100000 +Prefab: + m_ObjectHideFlags: 1 + serializedVersion: 2 + m_Modification: + m_TransformParent: {fileID: 0} + m_Modifications: [] + m_RemovedComponents: [] + m_ParentPrefab: {fileID: 0} + m_RootGameObject: {fileID: 1973035144834676} + m_IsPrefabParent: 1 +--- !u!1 &1973035144834676 +GameObject: + m_ObjectHideFlags: 0 + m_PrefabParentObject: {fileID: 0} + m_PrefabInternal: {fileID: 100100000} + serializedVersion: 5 + m_Component: + - component: {fileID: 4718847311796176} + m_Layer: 0 + m_Name: TestPrefab2 + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &4718847311796176 +Transform: + m_ObjectHideFlags: 1 + m_PrefabParentObject: {fileID: 0} + m_PrefabInternal: {fileID: 100100000} + m_GameObject: {fileID: 1973035144834676} + m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} + m_LocalPosition: {x: 0, y: 0, z: 0} + m_LocalScale: {x: 1, y: 1, z: 1} + m_Children: [] + m_Father: {fileID: 0} + m_RootOrder: 0 + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Tests/Editor/TestPrefab2.prefab.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Tests/Editor/TestPrefab2.prefab.meta" new file mode 100644 index 00000000..b9084b5e --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Tests/Editor/TestPrefab2.prefab.meta" @@ -0,0 +1,9 @@ +fileFormatVersion: 2 +guid: a8c38beafbe4c408d97dfd6e0f781dae +timeCreated: 1489762998 +licenseType: Pro +NativeFormatImporter: + mainObjectFileID: 100100000 + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Tests/Editor/TestVideoClip1.mov" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Tests/Editor/TestVideoClip1.mov" new file mode 100644 index 00000000..0f516f53 Binary files /dev/null and "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Tests/Editor/TestVideoClip1.mov" differ diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Tests/Editor/TestVideoClip1.mov.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Tests/Editor/TestVideoClip1.mov.meta" new file mode 100644 index 00000000..14ea838c --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Tests/Editor/TestVideoClip1.mov.meta" @@ -0,0 +1,21 @@ +fileFormatVersion: 2 +guid: 41c103b5559584369ad9d21a642ce978 +VideoClipImporter: + externalObjects: {} + serializedVersion: 2 + useLegacyImporter: 0 + quality: 0.5 + isColorLinear: 0 + frameRange: 0 + startFrame: -1 + endFrame: -1 + colorSpace: 0 + deinterlace: 0 + encodeAlpha: 0 + flipVertical: 0 + flipHorizontal: 0 + importAudio: 1 + targetSettings: {} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Tests/Editor/TestVideoClip2.mov" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Tests/Editor/TestVideoClip2.mov" new file mode 100644 index 00000000..0f516f53 Binary files /dev/null and "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Tests/Editor/TestVideoClip2.mov" differ diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Tests/Editor/TestVideoClip2.mov.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Tests/Editor/TestVideoClip2.mov.meta" new file mode 100644 index 00000000..0bc0ea38 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Tests/Editor/TestVideoClip2.mov.meta" @@ -0,0 +1,21 @@ +fileFormatVersion: 2 +guid: 7b5075b9db65e4aa6bb286467ee8021c +VideoClipImporter: + externalObjects: {} + serializedVersion: 2 + useLegacyImporter: 0 + quality: 0.5 + isColorLinear: 0 + frameRange: 0 + startFrame: -1 + endFrame: -1 + colorSpace: 0 + deinterlace: 0 + encodeAlpha: 0 + flipVertical: 0 + flipHorizontal: 0 + importAudio: 1 + targetSettings: {} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Tests/Editor/TestWindow1.cs" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Tests/Editor/TestWindow1.cs" new file mode 100644 index 00000000..42d60872 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Tests/Editor/TestWindow1.cs" @@ -0,0 +1,9 @@ +using UnityEditor; +using UnityEngine; + +namespace Unity.InteractiveTutorials.Tests +{ + public class TestWindow1 : EditorWindow + { + } +} diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Tests/Editor/TestWindow1.cs.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Tests/Editor/TestWindow1.cs.meta" new file mode 100644 index 00000000..62165048 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Tests/Editor/TestWindow1.cs.meta" @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: eb7b5e6f1f79e4bcb92ebec521f3108a +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Tests/Editor/TestWindow2.cs" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Tests/Editor/TestWindow2.cs" new file mode 100644 index 00000000..0efb64e5 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Tests/Editor/TestWindow2.cs" @@ -0,0 +1,8 @@ +using UnityEditor; + +namespace Unity.InteractiveTutorials.Tests +{ + public class TestWindow2 : EditorWindow + { + } +} diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Tests/Editor/TestWindow2.cs.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Tests/Editor/TestWindow2.cs.meta" new file mode 100644 index 00000000..cd5d5cf9 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Tests/Editor/TestWindow2.cs.meta" @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: a862116f193fa4f96bb29209af0276d2 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Tests/Editor/TriggerTaskCriterionTestScene.unity" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Tests/Editor/TriggerTaskCriterionTestScene.unity" new file mode 100644 index 00000000..f9b718c4 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Tests/Editor/TriggerTaskCriterionTestScene.unity" @@ -0,0 +1,470 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!29 &1 +OcclusionCullingSettings: + m_ObjectHideFlags: 0 + serializedVersion: 2 + m_OcclusionBakeSettings: + smallestOccluder: 5 + smallestHole: 0.25 + backfaceThreshold: 100 + m_SceneGUID: 00000000000000000000000000000000 + m_OcclusionCullingData: {fileID: 0} +--- !u!104 &2 +RenderSettings: + m_ObjectHideFlags: 0 + serializedVersion: 8 + m_Fog: 0 + m_FogColor: {r: 0.5, g: 0.5, b: 0.5, a: 1} + m_FogMode: 3 + m_FogDensity: 0.01 + m_LinearFogStart: 0 + m_LinearFogEnd: 300 + m_AmbientSkyColor: {r: 0.212, g: 0.227, b: 0.259, a: 1} + m_AmbientEquatorColor: {r: 0.114, g: 0.125, b: 0.133, a: 1} + m_AmbientGroundColor: {r: 0.047, g: 0.043, b: 0.035, a: 1} + m_AmbientIntensity: 1 + m_AmbientMode: 0 + m_SubtractiveShadowColor: {r: 0.42, g: 0.478, b: 0.627, a: 1} + m_SkyboxMaterial: {fileID: 10304, guid: 0000000000000000f000000000000000, type: 0} + m_HaloStrength: 0.5 + m_FlareStrength: 1 + m_FlareFadeSpeed: 3 + m_HaloTexture: {fileID: 0} + m_SpotCookie: {fileID: 10001, guid: 0000000000000000e000000000000000, type: 0} + m_DefaultReflectionMode: 0 + m_DefaultReflectionResolution: 128 + m_ReflectionBounces: 1 + m_ReflectionIntensity: 1 + m_CustomReflection: {fileID: 0} + m_Sun: {fileID: 0} + m_IndirectSpecularColor: {r: 0.37305844, g: 0.38069147, b: 0.3586884, a: 1} +--- !u!157 &3 +LightmapSettings: + m_ObjectHideFlags: 0 + serializedVersion: 11 + m_GIWorkflowMode: 0 + m_GISettings: + serializedVersion: 2 + m_BounceScale: 1 + m_IndirectOutputScale: 1 + m_AlbedoBoost: 1 + m_TemporalCoherenceThreshold: 1 + m_EnvironmentLightingMode: 0 + m_EnableBakedLightmaps: 1 + m_EnableRealtimeLightmaps: 1 + m_LightmapEditorSettings: + serializedVersion: 9 + m_Resolution: 2 + m_BakeResolution: 40 + m_TextureWidth: 1024 + m_TextureHeight: 1024 + m_AO: 0 + m_AOMaxDistance: 1 + m_CompAOExponent: 1 + m_CompAOExponentDirect: 0 + m_Padding: 2 + m_LightmapParameters: {fileID: 0} + m_LightmapsBakeMode: 1 + m_TextureCompression: 1 + m_FinalGather: 0 + m_FinalGatherFiltering: 1 + m_FinalGatherRayCount: 256 + m_ReflectionCompression: 2 + m_MixedBakeMode: 2 + m_BakeBackend: 0 + m_PVRSampling: 1 + m_PVRDirectSampleCount: 32 + m_PVRSampleCount: 500 + m_PVRBounces: 2 + m_PVRFiltering: 0 + m_PVRFilteringMode: 1 + m_PVRCulling: 1 + m_PVRFilteringGaussRadiusDirect: 1 + m_PVRFilteringGaussRadiusIndirect: 5 + m_PVRFilteringGaussRadiusAO: 2 + m_PVRFilteringAtrousColorSigma: 1 + m_PVRFilteringAtrousNormalSigma: 1 + m_PVRFilteringAtrousPositionSigma: 1 + m_LightingDataAsset: {fileID: 0} + m_UseShadowmask: 1 +--- !u!196 &4 +NavMeshSettings: + serializedVersion: 2 + m_ObjectHideFlags: 0 + m_BuildSettings: + serializedVersion: 2 + agentTypeID: 0 + agentRadius: 0.5 + agentHeight: 2 + agentSlope: 45 + agentClimb: 0.4 + ledgeDropHeight: 0 + maxJumpAcrossDistance: 0 + minRegionArea: 2 + manualCellSize: 0 + cellSize: 0.16666667 + manualTileSize: 0 + tileSize: 256 + accuratePlacement: 0 + m_NavMeshData: {fileID: 0} +--- !u!1 &69443515 +GameObject: + m_ObjectHideFlags: 0 + m_PrefabParentObject: {fileID: 0} + m_PrefabInternal: {fileID: 0} + serializedVersion: 5 + m_Component: + - component: {fileID: 69443518} + - component: {fileID: 69443517} + - component: {fileID: 69443516} + m_Layer: 0 + m_Name: Trigger3D + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!114 &69443516 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_PrefabParentObject: {fileID: 0} + m_PrefabInternal: {fileID: 0} + m_GameObject: {fileID: 69443515} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 94062d33eb84e40f799106f2f0b4dd6f, type: 3} + m_Name: + m_EditorClassIdentifier: +--- !u!65 &69443517 +BoxCollider: + m_ObjectHideFlags: 0 + m_PrefabParentObject: {fileID: 0} + m_PrefabInternal: {fileID: 0} + m_GameObject: {fileID: 69443515} + m_Material: {fileID: 0} + m_IsTrigger: 1 + m_Enabled: 1 + serializedVersion: 2 + m_Size: {x: 1, y: 1, z: 1} + m_Center: {x: 0, y: 0, z: 0} +--- !u!4 &69443518 +Transform: + m_ObjectHideFlags: 0 + m_PrefabParentObject: {fileID: 0} + m_PrefabInternal: {fileID: 0} + m_GameObject: {fileID: 69443515} + m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} + m_LocalPosition: {x: 2, y: 0, z: 0} + m_LocalScale: {x: 1, y: 1, z: 1} + m_Children: [] + m_Father: {fileID: 0} + m_RootOrder: 2 + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!1 &615536959 +GameObject: + m_ObjectHideFlags: 0 + m_PrefabParentObject: {fileID: 0} + m_PrefabInternal: {fileID: 0} + serializedVersion: 5 + m_Component: + - component: {fileID: 615536962} + - component: {fileID: 615536961} + - component: {fileID: 615536960} + m_Layer: 0 + m_Name: Player2D + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!50 &615536960 +Rigidbody2D: + serializedVersion: 4 + m_ObjectHideFlags: 0 + m_PrefabParentObject: {fileID: 0} + m_PrefabInternal: {fileID: 0} + m_GameObject: {fileID: 615536959} + m_BodyType: 0 + m_Simulated: 1 + m_UseFullKinematicContacts: 0 + m_UseAutoMass: 0 + m_Mass: 1 + m_LinearDrag: 0 + m_AngularDrag: 0.05 + m_GravityScale: 0 + m_Material: {fileID: 0} + m_Interpolate: 0 + m_SleepingMode: 1 + m_CollisionDetection: 0 + m_Constraints: 0 +--- !u!58 &615536961 +CircleCollider2D: + m_ObjectHideFlags: 0 + m_PrefabParentObject: {fileID: 0} + m_PrefabInternal: {fileID: 0} + m_GameObject: {fileID: 615536959} + m_Enabled: 1 + m_Density: 1 + m_Material: {fileID: 0} + m_IsTrigger: 0 + m_UsedByEffector: 0 + m_UsedByComposite: 0 + m_Offset: {x: 0, y: 0} + serializedVersion: 2 + m_Radius: 0.5 +--- !u!4 &615536962 +Transform: + m_ObjectHideFlags: 0 + m_PrefabParentObject: {fileID: 0} + m_PrefabInternal: {fileID: 0} + m_GameObject: {fileID: 615536959} + m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} + m_LocalPosition: {x: 0, y: 0, z: 0} + m_LocalScale: {x: 1, y: 1, z: 1} + m_Children: [] + m_Father: {fileID: 0} + m_RootOrder: 1 + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!1 &1060305611 +GameObject: + m_ObjectHideFlags: 0 + m_PrefabParentObject: {fileID: 0} + m_PrefabInternal: {fileID: 0} + serializedVersion: 5 + m_Component: + - component: {fileID: 1060305614} + - component: {fileID: 1060305613} + - component: {fileID: 1060305612} + m_Layer: 0 + m_Name: Collider3D + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!114 &1060305612 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_PrefabParentObject: {fileID: 0} + m_PrefabInternal: {fileID: 0} + m_GameObject: {fileID: 1060305611} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 94062d33eb84e40f799106f2f0b4dd6f, type: 3} + m_Name: + m_EditorClassIdentifier: +--- !u!65 &1060305613 +BoxCollider: + m_ObjectHideFlags: 0 + m_PrefabParentObject: {fileID: 0} + m_PrefabInternal: {fileID: 0} + m_GameObject: {fileID: 1060305611} + m_Material: {fileID: 0} + m_IsTrigger: 0 + m_Enabled: 1 + serializedVersion: 2 + m_Size: {x: 1, y: 1, z: 1} + m_Center: {x: 0, y: 0, z: 0} +--- !u!4 &1060305614 +Transform: + m_ObjectHideFlags: 0 + m_PrefabParentObject: {fileID: 0} + m_PrefabInternal: {fileID: 0} + m_GameObject: {fileID: 1060305611} + m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} + m_LocalPosition: {x: 4, y: 0, z: 0} + m_LocalScale: {x: 1, y: 1, z: 1} + m_Children: [] + m_Father: {fileID: 0} + m_RootOrder: 3 + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!1 &1176954787 +GameObject: + m_ObjectHideFlags: 0 + m_PrefabParentObject: {fileID: 0} + m_PrefabInternal: {fileID: 0} + serializedVersion: 5 + m_Component: + - component: {fileID: 1176954790} + - component: {fileID: 1176954789} + - component: {fileID: 1176954788} + m_Layer: 0 + m_Name: Trigger2D + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!114 &1176954788 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_PrefabParentObject: {fileID: 0} + m_PrefabInternal: {fileID: 0} + m_GameObject: {fileID: 1176954787} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 3446edfea3b634c488cbf0803bd91a68, type: 3} + m_Name: + m_EditorClassIdentifier: +--- !u!61 &1176954789 +BoxCollider2D: + m_ObjectHideFlags: 0 + m_PrefabParentObject: {fileID: 0} + m_PrefabInternal: {fileID: 0} + m_GameObject: {fileID: 1176954787} + m_Enabled: 1 + m_Density: 1 + m_Material: {fileID: 0} + m_IsTrigger: 1 + m_UsedByEffector: 0 + m_UsedByComposite: 0 + m_Offset: {x: 0, y: 0} + m_SpriteTilingProperty: + border: {x: 0, y: 0, z: 0, w: 0} + pivot: {x: 0, y: 0} + oldSize: {x: 0, y: 0} + newSize: {x: 0, y: 0} + adaptiveTilingThreshold: 0 + drawMode: 0 + adaptiveTiling: 0 + m_AutoTiling: 0 + serializedVersion: 2 + m_Size: {x: 1, y: 1} + m_EdgeRadius: 0 +--- !u!4 &1176954790 +Transform: + m_ObjectHideFlags: 0 + m_PrefabParentObject: {fileID: 0} + m_PrefabInternal: {fileID: 0} + m_GameObject: {fileID: 1176954787} + m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} + m_LocalPosition: {x: 6, y: 0, z: 0} + m_LocalScale: {x: 1, y: 1, z: 1} + m_Children: [] + m_Father: {fileID: 0} + m_RootOrder: 4 + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!1 &1593970283 +GameObject: + m_ObjectHideFlags: 0 + m_PrefabParentObject: {fileID: 0} + m_PrefabInternal: {fileID: 0} + serializedVersion: 5 + m_Component: + - component: {fileID: 1593970286} + - component: {fileID: 1593970285} + - component: {fileID: 1593970284} + m_Layer: 0 + m_Name: Collider2D + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!114 &1593970284 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_PrefabParentObject: {fileID: 0} + m_PrefabInternal: {fileID: 0} + m_GameObject: {fileID: 1593970283} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 3446edfea3b634c488cbf0803bd91a68, type: 3} + m_Name: + m_EditorClassIdentifier: +--- !u!61 &1593970285 +BoxCollider2D: + m_ObjectHideFlags: 0 + m_PrefabParentObject: {fileID: 0} + m_PrefabInternal: {fileID: 0} + m_GameObject: {fileID: 1593970283} + m_Enabled: 1 + m_Density: 1 + m_Material: {fileID: 0} + m_IsTrigger: 0 + m_UsedByEffector: 0 + m_UsedByComposite: 0 + m_Offset: {x: 0, y: 0} + m_SpriteTilingProperty: + border: {x: 0, y: 0, z: 0, w: 0} + pivot: {x: 0, y: 0} + oldSize: {x: 0, y: 0} + newSize: {x: 0, y: 0} + adaptiveTilingThreshold: 0 + drawMode: 0 + adaptiveTiling: 0 + m_AutoTiling: 0 + serializedVersion: 2 + m_Size: {x: 1, y: 1} + m_EdgeRadius: 0 +--- !u!4 &1593970286 +Transform: + m_ObjectHideFlags: 0 + m_PrefabParentObject: {fileID: 0} + m_PrefabInternal: {fileID: 0} + m_GameObject: {fileID: 1593970283} + m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} + m_LocalPosition: {x: 8, y: 0, z: 0} + m_LocalScale: {x: 1, y: 1, z: 1} + m_Children: [] + m_Father: {fileID: 0} + m_RootOrder: 5 + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!1 &1839356113 +GameObject: + m_ObjectHideFlags: 0 + m_PrefabParentObject: {fileID: 0} + m_PrefabInternal: {fileID: 0} + serializedVersion: 5 + m_Component: + - component: {fileID: 1839356118} + - component: {fileID: 1839356116} + - component: {fileID: 1839356114} + m_Layer: 0 + m_Name: Player3D + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!54 &1839356114 +Rigidbody: + m_ObjectHideFlags: 0 + m_PrefabParentObject: {fileID: 0} + m_PrefabInternal: {fileID: 0} + m_GameObject: {fileID: 1839356113} + serializedVersion: 2 + m_Mass: 1 + m_Drag: 0 + m_AngularDrag: 0.05 + m_UseGravity: 0 + m_IsKinematic: 0 + m_Interpolate: 0 + m_Constraints: 0 + m_CollisionDetection: 0 +--- !u!135 &1839356116 +SphereCollider: + m_ObjectHideFlags: 0 + m_PrefabParentObject: {fileID: 0} + m_PrefabInternal: {fileID: 0} + m_GameObject: {fileID: 1839356113} + m_Material: {fileID: 0} + m_IsTrigger: 0 + m_Enabled: 1 + serializedVersion: 2 + m_Radius: 0.5 + m_Center: {x: 0, y: 0, z: 0} +--- !u!4 &1839356118 +Transform: + m_ObjectHideFlags: 0 + m_PrefabParentObject: {fileID: 0} + m_PrefabInternal: {fileID: 0} + m_GameObject: {fileID: 1839356113} + m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} + m_LocalPosition: {x: 0, y: 0, z: 0} + m_LocalScale: {x: 1, y: 1, z: 1} + m_Children: [] + m_Father: {fileID: 0} + m_RootOrder: 0 + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Tests/Editor/TriggerTaskCriterionTestScene.unity.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Tests/Editor/TriggerTaskCriterionTestScene.unity.meta" new file mode 100644 index 00000000..b95757af --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Tests/Editor/TriggerTaskCriterionTestScene.unity.meta" @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 8ead49995e61a4b9a805a1f811d954f7 +timeCreated: 1490785629 +licenseType: Pro +DefaultImporter: + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Tests/Editor/TriggerTaskCriterionTests.cs" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Tests/Editor/TriggerTaskCriterionTests.cs" new file mode 100644 index 00000000..24288935 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Tests/Editor/TriggerTaskCriterionTests.cs" @@ -0,0 +1,109 @@ +using System.Collections; +using System.IO; +using NUnit.Framework; +using UnityEditor; +using UnityEngine; +using UnityEngine.SceneManagement; +using UnityEngine.TestTools; + +using UnityObject = UnityEngine.Object; + +namespace Unity.InteractiveTutorials.Tests +{ + public class TriggerTaskCriterionTests : CriterionTestBase, IPrebuildSetup + { + const string k_TestSceneName = "TriggerTaskCriterionTestScene.unity"; + + public void Setup() + { + // Add scene to editor build settings + var testScenePath = GetTestAssetPath(k_TestSceneName).Replace("/", Path.DirectorySeparatorChar.ToString()); + EditorBuildSettings.scenes = new[] { new EditorBuildSettingsScene(testScenePath, true) }; + } + + [SetUp] + public void LoadScene() + { + var testScenePath = GetTestAssetPath(k_TestSceneName); + SceneManager.LoadScene(testScenePath, LoadSceneMode.Additive); + } + + [Ignore("This test needs to be in the editor assembly and run in play mode which is currently not supported")] + [UnityTest] + [TestCase(TriggerTaskCriterion.TriggerTaskTestMode.CollisionEnter, "Player2D", "Collider2D", true, true, ExpectedResult = null)] + [TestCase(TriggerTaskCriterion.TriggerTaskTestMode.CollisionEnter, "Player3D", "Collider3D", true, true, ExpectedResult = null)] + [TestCase(TriggerTaskCriterion.TriggerTaskTestMode.CollisionExit, "Player2D", "Collider2D", false, true, ExpectedResult = null)] + [TestCase(TriggerTaskCriterion.TriggerTaskTestMode.CollisionExit, "Player3D", "Collider3D", false, true, ExpectedResult = null)] + [TestCase(TriggerTaskCriterion.TriggerTaskTestMode.TriggerEnter, "Player2D", "Trigger2D", true, true, ExpectedResult = null)] + [TestCase(TriggerTaskCriterion.TriggerTaskTestMode.TriggerEnter, "Player3D", "Trigger3D", true, true, ExpectedResult = null)] + [TestCase(TriggerTaskCriterion.TriggerTaskTestMode.TriggerExit, "Player2D", "Trigger2D", false, true, ExpectedResult = null)] + [TestCase(TriggerTaskCriterion.TriggerTaskTestMode.TriggerExit, "Player3D", "Trigger3D", false, true, ExpectedResult = null)] + public IEnumerator IsCompletedWhenExpected(TriggerTaskCriterion.TriggerTaskTestMode testMode, string playerName, + string targetName, bool expectedCompletionWhenIntersecting, bool expectedCompletionWhenNotIntersectingAnymore) + { + var player = GameObject.Find(playerName); + var target = GameObject.Find(targetName); + Assert.IsNotNull(player); + Assert.IsNotNull(target); + + player.AddComponent(); + + m_Criterion.objectReference.sceneObjectReference.Update(target); + m_Criterion.testMode = testMode; + Assert.IsFalse(m_Criterion.completed); + + player.transform.position = target.transform.position; + yield return null; + yield return null; + Assert.AreEqual(expectedCompletionWhenIntersecting, m_Criterion.completed); + + player.transform.position = Vector3.zero; + yield return null; + yield return null; + Assert.AreEqual(expectedCompletionWhenNotIntersectingAnymore, m_Criterion.completed); + } + + [Ignore("This test needs to be in the editor assembly and run in play mode which is currently not supported")] + [UnityTest] + [TestCase(TriggerTaskCriterion.TriggerTaskTestMode.CollisionEnter, "Player2D", "Collider2D", true, false, ExpectedResult = null)] + [TestCase(TriggerTaskCriterion.TriggerTaskTestMode.CollisionEnter, "Player2D", "Collider2D", false, true, ExpectedResult = null)] + [TestCase(TriggerTaskCriterion.TriggerTaskTestMode.CollisionEnter, "Player3D", "Collider3D", true, false, ExpectedResult = null)] + [TestCase(TriggerTaskCriterion.TriggerTaskTestMode.CollisionEnter, "Player3D", "Collider3D", false, true, ExpectedResult = null)] + [TestCase(TriggerTaskCriterion.TriggerTaskTestMode.CollisionExit, "Player2D", "Collider2D", true, false, ExpectedResult = null)] + [TestCase(TriggerTaskCriterion.TriggerTaskTestMode.CollisionExit, "Player2D", "Collider2D", false, false, ExpectedResult = null)] + [TestCase(TriggerTaskCriterion.TriggerTaskTestMode.CollisionExit, "Player3D", "Collider3D", true, false, ExpectedResult = null)] + [TestCase(TriggerTaskCriterion.TriggerTaskTestMode.CollisionExit, "Player3D", "Collider3D", false, false, ExpectedResult = null)] + [TestCase(TriggerTaskCriterion.TriggerTaskTestMode.TriggerEnter, "Player2D", "Trigger2D", true, false, ExpectedResult = null)] + [TestCase(TriggerTaskCriterion.TriggerTaskTestMode.TriggerEnter, "Player2D", "Trigger2D", false, true, ExpectedResult = null)] + [TestCase(TriggerTaskCriterion.TriggerTaskTestMode.TriggerEnter, "Player3D", "Trigger3D", true, false, ExpectedResult = null)] + [TestCase(TriggerTaskCriterion.TriggerTaskTestMode.TriggerEnter, "Player3D", "Trigger3D", false, true, ExpectedResult = null)] + [TestCase(TriggerTaskCriterion.TriggerTaskTestMode.TriggerExit, "Player2D", "Trigger2D", true, false, ExpectedResult = null)] + [TestCase(TriggerTaskCriterion.TriggerTaskTestMode.TriggerExit, "Player2D", "Trigger2D", false, false, ExpectedResult = null)] + [TestCase(TriggerTaskCriterion.TriggerTaskTestMode.TriggerExit, "Player3D", "Trigger3D", true, false, ExpectedResult = null)] + [TestCase(TriggerTaskCriterion.TriggerTaskTestMode.TriggerExit, "Player3D", "Trigger3D", false, false, ExpectedResult = null)] + public IEnumerator AutoComplete_ReturnsExpectedValueAndIsCompleteWhenExpected(TriggerTaskCriterion.TriggerTaskTestMode testMode, + string playerName, string targetName, bool playerStartsInsideTarget, bool expectedReturnValueAndCompletion) + { + var player = GameObject.Find(playerName); + var target = GameObject.Find(targetName); + player.AddComponent(); + + if (playerStartsInsideTarget) + player.transform.position = target.transform.position; + + m_Criterion.objectReference.sceneObjectReference.Update(target); + m_Criterion.testMode = testMode; + + Assert.IsFalse(m_Criterion.completed); + + Assert.AreEqual(expectedReturnValueAndCompletion, m_Criterion.AutoComplete()); + yield return null; + + Assert.AreEqual(expectedReturnValueAndCompletion, m_Criterion.completed); + } + } + + public class PlayerAvatarTestComponent : MonoBehaviour, IPlayerAvatar + { + } +} diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Tests/Editor/TriggerTaskCriterionTests.cs.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Tests/Editor/TriggerTaskCriterionTests.cs.meta" new file mode 100644 index 00000000..04fb6db2 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Tests/Editor/TriggerTaskCriterionTests.cs.meta" @@ -0,0 +1,12 @@ +fileFormatVersion: 2 +guid: c9f02f3350beb48f99a101f70a79112e +timeCreated: 1490785629 +licenseType: Pro +MonoImporter: + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Tests/Editor/TutorialManagerTests.cs" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Tests/Editor/TutorialManagerTests.cs" new file mode 100644 index 00000000..cf5a5da9 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Tests/Editor/TutorialManagerTests.cs" @@ -0,0 +1,218 @@ +using System; +using System.Collections; +using System.IO; +using NUnit.Framework; +using UnityEditor; +using UnityEditor.SceneManagement; +using UnityEngine; +using UnityEngine.SceneManagement; +using UnityEngine.TestTools; + +namespace Unity.InteractiveTutorials.Tests +{ + public class TutorialManagerTests + { + [SerializeField] + string m_TempFolderPath; + + [SerializeField] + string m_TutorialLayoutPath; + + [SerializeField] + Tutorial m_Tutorial; + + [SerializeField] + string m_TutorialScenePath; + + [SetUp] + public void SetUp() + { + if (EditorApplication.isPlaying) + return; + + var tempFolderGUID = AssetDatabase.CreateFolder("Assets", "Temp"); + m_TempFolderPath = AssetDatabase.GUIDToAssetPath(tempFolderGUID); + + m_Tutorial = ScriptableObject.CreateInstance(); + AssetDatabase.CreateAsset(m_Tutorial, m_TempFolderPath + "/Tutorial.asset"); + var page = ScriptableObject.CreateInstance(); + AssetDatabase.CreateAsset(page, m_TempFolderPath + "/Page.asset"); + m_Tutorial.m_Pages = new Tutorial.TutorialPageCollection(new[] { page }); + + var serializedObject = new SerializedObject(m_Tutorial); + + SetupExitBehavior(serializedObject); + SetupLayout(serializedObject); + SetupScene(serializedObject); + + serializedObject.ApplyModifiedProperties(); + } + + static void SetupExitBehavior(SerializedObject tutorial) + { + // Set exit behavior to close window on exit + var exitBehaviorProperty = tutorial.FindProperty("m_ExitBehavior"); + exitBehaviorProperty.enumValueIndex = (int)Tutorial.ExitBehavior.CloseWindow; + } + + void SetupLayout(SerializedObject tutorial) + { + // Ensure tutorial window is not open + foreach (var window in Resources.FindObjectsOfTypeAll()) + { + window.Close(); + } + + Assert.That(Resources.FindObjectsOfTypeAll(), Is.Empty, "TestWindow1 is present"); + + // Save current layout and use it as the tutorial layout + m_TutorialLayoutPath = m_TempFolderPath + "/TutorialLayout.dwlt"; + WindowLayout.SaveWindowLayout(m_TutorialLayoutPath); + AssetDatabase.Refresh(); + var tutorialLayout = AssetDatabase.LoadAssetAtPath(m_TutorialLayoutPath); + var windowLayoutProperty = tutorial.FindProperty("m_WindowLayout"); + windowLayoutProperty.objectReferenceValue = tutorialLayout; + + // Open TestWindow1 + EditorWindow.GetWindow(); + + Assert.That(Resources.FindObjectsOfTypeAll(), Is.Not.Empty, "TestWindow1 is not present"); + } + + void SetupScene(SerializedObject tutorial) + { + var tutorialScene = EditorSceneManager.NewScene(NewSceneSetup.EmptyScene, NewSceneMode.Single); + + m_TutorialScenePath = m_TempFolderPath + "/TutorialScene.unity"; + EditorSceneManager.SaveScene(tutorialScene, m_TutorialScenePath); + AssetDatabase.Refresh(); // TODO: Might not be needed! + var sceneAsset = Resources.Load(m_TutorialScenePath); + + var sceneProperty = tutorial.FindProperty("m_Scene"); + sceneProperty.objectReferenceValue = sceneAsset; + } + + [UnityTearDown] + public IEnumerator TearDown() + { + yield return new ExitPlayMode(); + + UnityEngine.Object.DestroyImmediate(TutorialManager.instance); + + // Delete original layout to avoid triggering the layout restore again when TutorialWindow is closed + File.Delete(TutorialManager.k_OriginalLayoutPath); + + // Load tutorial layout reverting to layout before test run (with the exception of a potential closed TutorialWindow) + EditorUtility.LoadWindowLayout(m_TutorialLayoutPath); + + AssetDatabase.DeleteAsset(m_TempFolderPath); + } + + //TODO Failing [UnityTest] + //[TestCase(false, TestName = "StartTutorial_WhenTutorialWindowIsNotOpen_OriginalLayoutIsRestoredWhenTutorialIsCompleted", ExpectedResult = null)] + //[TestCase(true, TestName = "StartTutorial_WhenTutorialWindowIsOpen_OriginalLayoutIsRestoredWhenTutorialIsCompleted", ExpectedResult = null)] + public IEnumerator StartTutorial_OriginalLayoutIsRestoredWhenTutorialIsCompleted(bool tutorialWindowOpen) + { + if (tutorialWindowOpen) + EditorWindow.GetWindow(); + + TutorialManager.instance.StartTutorial(m_Tutorial); + yield return new WaitForDelayCall(); + + // Complete tutorial + m_Tutorial.currentPage.ValidateCriteria(); + m_Tutorial.TryGoToNextPage(); + yield return new WaitForDelayCall(); + + // Assert that original layout is restored (i.e. TestWindow1 should exist) + Assert.That(Resources.FindObjectsOfTypeAll(), Is.Not.Empty,"TestWindow1 is not present"); + } + + //TODO Failing [UnityTest] + public IEnumerator RestartTutorial_RestoresTutorialLayout() + { + TutorialManager.instance.StartTutorial(m_Tutorial); + + // Open TestWindow2 + EditorWindow.GetWindow(); + + // Complete tutorial + TutorialManager.instance.ResetTutorial(); + yield return new WaitForDelayCall(); + + // Assert that tutorial layout is restored (i.e. TestWindow2 should not longer be present) + Assert.That(Resources.FindObjectsOfTypeAll(), Is.Empty,"TestWindow2 is present"); + + // Assert that original layout was not restored (i.e. TestWindow1 should not be present) + Assert.That(Resources.FindObjectsOfTypeAll(), Is.Empty,"TestWindow1 is present"); + } + + //TODO Failing [UnityTest] + public IEnumerator StartTutorial_WhenInPlayMode_ExitsPlayMode() + { + yield return new EnterPlayMode(); + + TutorialManager.instance.StartTutorial(m_Tutorial); + yield return new WaitForDelayCall(); + + Assert.That(EditorApplication.isPlaying, Is.False); + } + + //TODO Failing [UnityTest] + public IEnumerator ResetTutorial_WhenInPlayMode_ExitsPlayMode() + { + TutorialManager.instance.StartTutorial(m_Tutorial); + + yield return new EnterPlayMode(); + + TutorialManager.instance.ResetTutorial(); + yield return new WaitForDelayCall(); + + Assert.That(EditorApplication.isPlaying, Is.False); + } + + //TODO Failing [UnityTest] + public IEnumerator StartTutorial_OriginalSceneStateIsRestoredWhenTutorialIsCompleted() + { + // Open some new scenes + var scene0Path = m_TempFolderPath + "/Scene0.unity"; + var scene0 = EditorSceneManager.NewScene(NewSceneSetup.EmptyScene); + EditorSceneManager.SaveScene(scene0, scene0Path); + var scene1 = EditorSceneManager.NewScene(NewSceneSetup.DefaultGameObjects, NewSceneMode.Additive); + var scene1Path = m_TempFolderPath + "/Scene1.unity"; + EditorSceneManager.SaveScene(scene1, scene1Path); + var scene2 = EditorSceneManager.NewScene(NewSceneSetup.EmptyScene, NewSceneMode.Additive); + var scene2Path = m_TempFolderPath + "/Scene2.unity"; + EditorSceneManager.SaveScene(scene2, scene2Path); + var scene3 = EditorSceneManager.NewScene(NewSceneSetup.DefaultGameObjects, NewSceneMode.Additive); + var scene3Path = m_TempFolderPath + "/Scene3.unity"; + EditorSceneManager.SaveScene(scene3, scene3Path); + + // Set the last scene to be active + SceneManager.SetActiveScene(scene3); + + // Unload scene 2 and 3 + EditorSceneManager.CloseScene(scene1, false); + EditorSceneManager.CloseScene(scene2, false); + + TutorialManager.instance.StartTutorial(m_Tutorial); + + // Complete tutorial + m_Tutorial.currentPage.ValidateCriteria(); + m_Tutorial.TryGoToNextPage(); + yield return new WaitForDelayCall(); + + // Assert that we're back at original scene state + Assert.That(SceneManager.sceneCount, Is.EqualTo(4)); + Assert.That(SceneManager.GetSceneAt(0).path, Is.EqualTo(scene0Path)); + Assert.That(SceneManager.GetSceneAt(1).path, Is.EqualTo(scene1Path)); + Assert.That(SceneManager.GetSceneAt(2).path, Is.EqualTo(scene2Path)); + Assert.That(SceneManager.GetSceneAt(3).path, Is.EqualTo(scene3Path)); + Assert.That(SceneManager.GetSceneAt(0).isLoaded, Is.True); + Assert.That(SceneManager.GetSceneAt(1).isLoaded, Is.False); + Assert.That(SceneManager.GetSceneAt(2).isLoaded, Is.False); + Assert.That(SceneManager.GetSceneAt(3).isLoaded, Is.True); + Assert.That(SceneManager.GetActiveScene().path, Is.EqualTo(scene3Path)); + } + } +} diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Tests/Editor/TutorialManagerTests.cs.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Tests/Editor/TutorialManagerTests.cs.meta" new file mode 100644 index 00000000..827e0a89 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Tests/Editor/TutorialManagerTests.cs.meta" @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 96ec03117bc154c4d815a5cc592b8d34 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Tests/Editor/TutorialPageTests.cs" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Tests/Editor/TutorialPageTests.cs" new file mode 100644 index 00000000..a1117f24 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Tests/Editor/TutorialPageTests.cs" @@ -0,0 +1,138 @@ +using System.Linq; +using UnityEditor.SceneManagement; +using UnityEngine; +using NUnit.Framework; +using UnityObject = UnityEngine.Object; + +namespace Unity.InteractiveTutorials.Tests +{ + public class TutorialPageTests + { + class MockCriterion : Criterion + { + public void Complete(bool complete) + { + completed = complete; + } + + protected override bool EvaluateCompletion() + { + return completed; + } + + public override bool AutoComplete() + { + return true; + } + } + + TutorialPage m_Page; + MockCriterion m_Criterion; + + [SetUp] + public void SetUp() + { + m_Page = ScriptableObject.CreateInstance(); + + var instructionParagraph = new TutorialParagraph(); + instructionParagraph.m_Type = ParagraphType.Instruction; + + m_Criterion = ScriptableObject.CreateInstance(); + var tc = new TypedCriterion(new SerializedType(typeof(MockCriterion)), m_Criterion); + + instructionParagraph.m_Criteria = new TypedCriterionCollection(new[] {tc}); + + m_Page.m_Paragraphs = new TutorialParagraphCollection(new[] {instructionParagraph}); + + m_Page.Initiate(); + } + + [TearDown] + public void TearDown() + { + if (m_Page == null) + return; + + foreach (var paragraph in m_Page.paragraphs) + { + foreach (var criterion in paragraph.criteria) + { + if (criterion != null && criterion.criterion != null) + UnityObject.DestroyImmediate(criterion.criterion); + } + } + + UnityObject.DestroyImmediate(m_Page); + } + + [Test] + public void PageMarkedIncomplete_WhenACriterionIsInvalidated() + { + Assert.IsFalse(m_Page.allCriteriaAreSatisfied); + m_Criterion.Complete(true); + Assert.IsTrue(m_Page.allCriteriaAreSatisfied); + m_Criterion.Complete(false); + Assert.IsFalse(m_Page.allCriteriaAreSatisfied); + } + + [Test] + public void PageRemainsComplete_IfCriterionIsInvalidated_AfterAdvancingToNextPage() + { + Assert.IsFalse(m_Page.allCriteriaAreSatisfied); + m_Criterion.Complete(true); + Assert.IsTrue(m_Page.allCriteriaAreSatisfied); + + m_Page.OnPageCompleted(); + Assert.IsTrue(m_Page.hasMovedToNextPage); + + m_Criterion.Complete(false); + Assert.IsTrue(m_Page.allCriteriaAreSatisfied); + } + + [Test] + public void PagePlaysCompletionSound_WheneverActiveInstructionCriterionIsCompleted() + { + var playedSound = 0; + m_Page.playedCompletionSound += page => ++ playedSound; + + m_Criterion.Complete(true); + + Assert.AreEqual(1, playedSound, "Did not play sound when criterion was completed."); + + m_Criterion.Complete(false); + m_Criterion.Complete(true); + + Assert.AreEqual(2, playedSound, "Did not play sound when criterion was completed after being invalidated."); + } + + [Test] + public void PageDoesNotPlayCompletionSound_WhenCompletedCriterionIsNotActiveInstruction() + { + MockCriterion secondCriterion = null; + try + { + secondCriterion = ScriptableObject.CreateInstance(); + var secondInstruction = new TutorialParagraph + { + m_Type = ParagraphType.Instruction, + m_Criteria = new TypedCriterionCollection( + new[] { new TypedCriterion(new SerializedType(typeof(MockCriterion)), secondCriterion) } + ) + }; + m_Page.m_Paragraphs = + new TutorialParagraphCollection(new[] { m_Page.paragraphs.First(), secondInstruction }); + + var playedSound = false; + m_Page.playedCompletionSound += page => playedSound = true; + + secondCriterion.Complete(true); + Assert.IsFalse(playedSound, "Played sound for second step when first step was not yet completed."); + } + finally + { + if (secondCriterion != null) + UnityObject.DestroyImmediate(secondCriterion); + } + } + } +} diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Tests/Editor/TutorialPageTests.cs.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Tests/Editor/TutorialPageTests.cs.meta" new file mode 100644 index 00000000..7d4f91a3 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Tests/Editor/TutorialPageTests.cs.meta" @@ -0,0 +1,13 @@ +fileFormatVersion: 2 +guid: 9a4291ba3280f45cb9f8aa118f344553 +timeCreated: 1503047042 +licenseType: Pro +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Tests/Editor/TutorialTests.cs" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Tests/Editor/TutorialTests.cs" new file mode 100644 index 00000000..753d7dd9 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Tests/Editor/TutorialTests.cs" @@ -0,0 +1,126 @@ +using NUnit.Framework; +using UnityEngine; + +namespace Unity.InteractiveTutorials.Tests +{ + class TutorialTests + { + private Tutorial tutorial; + + [Test] + public void CanMoveToNextPage_WhenAllCriteriaAreSatisfied() + { + Tutorial tutorial; + var c = CreateTutorial(out tutorial); + + tutorial.currentPage.ValidateCriteria(); + Assert.IsTrue(tutorial.TryGoToNextPage()); + + tutorial.currentPage.ValidateCriteria(); + Assert.IsFalse(tutorial.TryGoToNextPage()); + + c.IsCompleted = true; + c.UpdateCompletion(); + + tutorial.currentPage.ValidateCriteria(); + Assert.IsTrue(tutorial.TryGoToNextPage()); + + tutorial.currentPage.ValidateCriteria(); + Assert.IsFalse(tutorial.TryGoToNextPage()); + } + + [Test] + public void CanNotMoveToNextPage_WhenCriteriaIsNotSatisfiedAnymore() + { + Tutorial tutorial; + var c = CreateTutorial(out tutorial); + + tutorial.currentPage.ValidateCriteria(); + Assert.IsTrue(tutorial.TryGoToNextPage()); + + tutorial.currentPage.ValidateCriteria(); + Assert.IsFalse(tutorial.TryGoToNextPage()); + + c.IsCompleted = true; + c.UpdateCompletion(); + tutorial.currentPage.ValidateCriteria(); + c.IsCompleted = false; + c.UpdateCompletion(); + tutorial.currentPage.ValidateCriteria(); + Assert.IsFalse(tutorial.TryGoToNextPage()); + } + + [Test] + public void CanMoveToNextPage_WhenPageWasPreviouslyCompleted() + { + Tutorial tutorial; + var c = CreateTutorial(out tutorial); + + tutorial.currentPage.ValidateCriteria(); + Assert.IsTrue(tutorial.TryGoToNextPage()); + + tutorial.currentPage.ValidateCriteria(); + Assert.IsFalse(tutorial.TryGoToNextPage()); + + c.IsCompleted = true; + c.UpdateCompletion(); + + tutorial.currentPage.ValidateCriteria(); + Assert.IsTrue(tutorial.TryGoToNextPage()); + + tutorial.GoToPreviousPage(); + c.IsCompleted = false; + c.UpdateCompletion(); + tutorial.currentPage.ValidateCriteria(); + Assert.IsFalse(tutorial.currentPage.allCriteriaAreSatisfied); + Assert.IsTrue(tutorial.TryGoToNextPage()); + + tutorial.currentPage.ValidateCriteria(); + Assert.IsFalse(tutorial.TryGoToNextPage()); + } + + private static MockCriterion CreateTutorial(out Tutorial tutorial) + { + var textParagraph = new TutorialParagraph(); + textParagraph.m_Type = ParagraphType.Instruction; + + var instructionParagraph = new TutorialParagraph(); + instructionParagraph.m_Type = ParagraphType.Instruction; + + var c = ScriptableObject.CreateInstance(); + var tc = new TypedCriterion(new SerializedType(typeof(MockCriterion)), c); + + instructionParagraph.m_Criteria = new TypedCriterionCollection(new[] {tc}); + + + var page1 = ScriptableObject.CreateInstance(); + page1.m_Paragraphs = new TutorialParagraphCollection(new[] {textParagraph}); + + var page2 = ScriptableObject.CreateInstance(); + page2.m_Paragraphs = new TutorialParagraphCollection(new[] {instructionParagraph}); + + var page3 = ScriptableObject.CreateInstance(); + page3.m_Paragraphs = new TutorialParagraphCollection(new[] {textParagraph}); + + tutorial = ScriptableObject.CreateInstance(); + + tutorial.m_Pages = new Tutorial.TutorialPageCollection(new[] {page1, page2, page3}); + return c; + } + + class MockCriterion : Criterion + { + public bool IsCompleted; + + protected override bool EvaluateCompletion() + { + return IsCompleted; + } + + public override bool AutoComplete() + { + return true; + } + } + } +} diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Tests/Editor/TutorialTests.cs.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Tests/Editor/TutorialTests.cs.meta" new file mode 100644 index 00000000..9bad7d04 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Tests/Editor/TutorialTests.cs.meta" @@ -0,0 +1,13 @@ +fileFormatVersion: 2 +guid: 6c50edf404511465ba9e68c5c7e50927 +timeCreated: 1502887547 +licenseType: Pro +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Tests/Editor/TutorialWindowTests.cs" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Tests/Editor/TutorialWindowTests.cs" new file mode 100644 index 00000000..fa6c2bca --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Tests/Editor/TutorialWindowTests.cs" @@ -0,0 +1,466 @@ +using System; +using System.Collections; +using System.Collections.Generic; +using System.Linq; +using UnityEditor; +using UnityEditor.AnimatedValues; +using UnityEditor.UIAutomation; +using UnityEngine; +using UnityEngine.TestTools; +using UnityObject = UnityEngine.Object; +using NUnit.Framework; + +namespace Unity.InteractiveTutorials.Tests +{ + public class TutorialWindowTests + { + class MockCriterion : Criterion + { + public void Complete(bool complete) + { + completed = complete; + } + + protected override bool EvaluateCompletion() + { + return completed; + } + + public override bool AutoComplete() + { + return true; + } + } + + static float defaultAnimBoolSpeed { get { var animBool = new AnimBool(); return animBool.speed; } } + + private Tutorial m_Tutorial; + private TutorialWindow m_Window; + + TutorialPage firstPage { get { return m_Tutorial.m_Pages[0]; } } + TutorialPage secondPage { get { return m_Tutorial.m_Pages[1]; } } + MockCriterion firstPageCriterion { get { return m_Tutorial.m_Pages[0].m_Paragraphs[0].m_Criteria[0].criterion as MockCriterion; } } + string firstPageInstructionSummary { get { return string.Format("{0}-SUMMARY", TestContext.CurrentContext.Test.FullName); } } + string firstPageInstructionText { get { return string.Format("{0}-TEXT", TestContext.CurrentContext.Test.FullName); } } + string doneButtonText { get { return string.Format("{0}-DONE", TestContext.CurrentContext.Test.FullName); } } + string nextButtonText { get { return string.Format("{0}-NEXT", TestContext.CurrentContext.Test.FullName); } } + + [SetUp] + public void SetUp() + { + m_Tutorial = ScriptableObject.CreateInstance(); + + m_Tutorial.m_Pages = new Tutorial.TutorialPageCollection( + new[] { ScriptableObject.CreateInstance(), ScriptableObject.CreateInstance() } + ); + for (int i = 0; i < m_Tutorial.m_Pages.count; ++i) + { + m_Tutorial.m_Pages[i].name = string.Format("{0}-PAGE-{1}", TestContext.CurrentContext.Test.FullName, i + 1); + m_Tutorial.m_Pages[i].doneButton = doneButtonText; + m_Tutorial.m_Pages[i].nextButton = nextButtonText; + } + + var paragraph = new TutorialParagraph + { + m_Type = ParagraphType.Instruction, + m_Criteria = new TypedCriterionCollection( + new[] { + new TypedCriterion(new SerializedType(typeof(MockCriterion)), ScriptableObject.CreateInstance()) + } + ) + }; + paragraph.summary = firstPageInstructionSummary; + paragraph.text = firstPageInstructionText; + m_Tutorial.m_Pages[0].m_Paragraphs = new TutorialParagraphCollection(new[] { paragraph }); + + m_Window = EditorWindow.GetWindow(); + m_Window.showTabClosedDialog = false; + m_Window.SetTutorial(m_Tutorial, reload: false); + } + + [TearDown] + public void TearDown() + { + if (m_Tutorial == null) + return; + + foreach (var page in m_Tutorial.pages) + { + if (page == null) + continue; + + foreach (var paragraph in page.paragraphs) + { + if (paragraph == null) + continue; + + foreach (var criterion in paragraph.criteria) + { + if (criterion != null && criterion.criterion != null) + UnityObject.DestroyImmediate(criterion.criterion); + } + } + + UnityObject.DestroyImmediate(page); + } + + UnityObject.DestroyImmediate(m_Tutorial); + + if (m_Window != null) + m_Window.Close(); + } + + static IAutomatedUIElement FindElementWithText(AutomatedWindow automatedWindow, string text, string elementName, Action assert = null) + { + var result = automatedWindow.FindElementsByGUIContent(new GUIContent(text)).LastOrDefault(); + assert = assert ?? Assert.IsNotNull; + assert(result, string.Format("Finding {0} with expected text: \"{1}\"", elementName, text), null); + return result; + } + + static IAutomatedUIElement FindElementWithStyle(AutomatedWindow automatedWindow, GUIStyle style, string elementName) + { + var result = automatedWindow.FindElementsByGUIStyle(style).FirstOrDefault(); + Assert.IsNotNull(result, string.Format("Finding {0} with expected style: {1}", elementName, style)); + return result; + } + + [UnityTest] + public IEnumerator CanClickNextButton_WhenRevistingCompletedPage_WhenItsCriteriaHaveBeenLaterInvalidated() + { + using (var automatedWindow = new AutomatedWindow(m_Window)) + { + m_Window.RepaintImmediately(); + + // next button should be disabled + automatedWindow.Click(FindElementWithText(automatedWindow, nextButtonText, "next button")); + yield return null; + m_Window.RepaintImmediately(); + Assert.AreEqual(firstPage, m_Window.currentTutorial.currentPage); + + // complete criterion; next button should now be enabled + firstPageCriterion.Complete(true); + yield return null; + m_Window.RepaintImmediately(); + automatedWindow.Click(FindElementWithText(automatedWindow, nextButtonText, "next button")); + yield return null; + m_Window.RepaintImmediately(); + Assert.AreEqual(secondPage, m_Window.currentTutorial.currentPage); + + // go back + automatedWindow.Click(FindElementWithStyle(automatedWindow, AllTutorialStyles.backButton, "back button")); + yield return null; + m_Window.RepaintImmediately(); + Assert.AreEqual(firstPage, m_Window.currentTutorial.currentPage); + + // invalidate criterion; next button should still be enabled + firstPageCriterion.Complete(false); + automatedWindow.Click(FindElementWithText(automatedWindow, nextButtonText, "next button")); + yield return null; + m_Window.RepaintImmediately(); + Assert.AreEqual(secondPage, m_Window.currentTutorial.currentPage); + } + } + + [UnityTest] + public IEnumerator ClickingBackButton_WhenPreviousPageHasAutoAdvanceOnCompleteSet_MovesToPreviousPage() + { + // let first page auto-advance on completion + firstPage.autoAdvanceOnComplete = true; + + using (var automatedWindow = new AutomatedWindow(m_Window)) + { + m_Window.RepaintImmediately(); + + // complete criterion and auto-advance to next page, then press back button to come back + firstPageCriterion.Complete(true); + yield return null; + m_Window.RepaintImmediately(); + automatedWindow.Click(FindElementWithStyle(automatedWindow, AllTutorialStyles.backButton, "back button")); + yield return null; + m_Window.RepaintImmediately(); + + // we should now be back at the first page again + Assert.AreEqual(firstPage, m_Window.currentTutorial.currentPage); + } + } + + [UnityTest] + public IEnumerator FirstInstructionIsExpandedAndInteractable_WhenPageLoads() + { + using (var automatedWindow = new AutomatedWindow(m_Window)) + { + // yield once so that AnimBool for instruction text can expand + yield return null; + m_Window.RepaintImmediately(); + + // instruction should be expanded by default + FindElementWithText(automatedWindow, firstPageInstructionText, "instruction text", Assert.IsNotNull); + + // ensure text can be collapsed + automatedWindow.Click(FindElementWithText(automatedWindow, firstPageInstructionSummary, "instruction summary")); + yield return null; + m_Window.RepaintImmediately(); + // wait for anim bool to expand + var expandSpeed = defaultAnimBoolSpeed; + var prevTime = DateTime.Now; + var expanded = 0f; + while (expanded < 1f) + { + expanded += (float)(DateTime.Now - prevTime).TotalSeconds * expandSpeed; + prevTime = DateTime.Now; + yield return null; + } + yield return null; + FindElementWithText(automatedWindow, firstPageInstructionText, "instruction text", Assert.IsNull); + } + } + + [UnityTest] + public IEnumerator InstructionsAreExpandedAndDisabled_WhenRevisitingCompletedPage() + { + using (var automatedWindow = new AutomatedWindow(m_Window)) + { + // complete criterion, go to next page, and then come back + firstPageCriterion.Complete(true); + yield return null; + m_Window.RepaintImmediately(); + automatedWindow.Click(FindElementWithText(automatedWindow, nextButtonText, "next button")); + yield return null; + m_Window.RepaintImmediately(); + automatedWindow.Click(FindElementWithStyle(automatedWindow, AllTutorialStyles.backButton, "back button")); + yield return null; + m_Window.RepaintImmediately(); + + // instruction should now be expanded and user cannot collapse it + FindElementWithText(automatedWindow, firstPageInstructionText, "instruction text", Assert.IsNotNull); + automatedWindow.Click(FindElementWithText(automatedWindow, firstPageInstructionSummary, "instruction summary")); + yield return null; + m_Window.RepaintImmediately(); + FindElementWithText(automatedWindow, firstPageInstructionText, "instruction text", Assert.IsNotNull); + } + } + + [UnityTest] + public IEnumerator InstructionsAreStyledAsCompleteButNotActive_WhenRevisitingCompletedPage() + { + m_Window.RepaintImmediately(); + + using (var automatedWindow = new AutomatedWindow(m_Window)) + { + m_Window.RepaintImmediately(); + // instruction should be styled as active + FindElementWithStyle(automatedWindow, AllTutorialStyles.activeElementBackground, "active instruction"); + FindElementWithStyle(automatedWindow, AllTutorialStyles.instructionLabelIconNotCompleted, "incomplete instruction icon"); + + // complete criterion and ensure it is styled as complete + firstPageCriterion.Complete(true); + yield return null; + m_Window.RepaintImmediately(); + FindElementWithStyle(automatedWindow, AllTutorialStyles.completedElementBackground, "completed instruction background"); + FindElementWithStyle(automatedWindow, AllTutorialStyles.instructionLabelIconCompleted, "completed instruction icon"); + + // go to next page and then come back + automatedWindow.Click(FindElementWithText(automatedWindow, nextButtonText, "next button")); + yield return null; + m_Window.RepaintImmediately(); + automatedWindow.Click(FindElementWithStyle(automatedWindow, AllTutorialStyles.backButton, "back button")); + yield return null; + m_Window.RepaintImmediately(); + + // ensure instruction is still marked as completed + FindElementWithStyle(automatedWindow, AllTutorialStyles.completedElementBackground, "completed instruction background"); + FindElementWithStyle(automatedWindow, AllTutorialStyles.instructionLabelIconCompleted, "completed instruction icon"); + } + } + + [Test] + public void ApplyMasking_WhenPageIsActivated() + { + firstPage.m_Paragraphs[0].maskingSettings.SetUnmaskedViews(new[] { UnmaskedView.CreateInstanceForGUIView() }); + firstPage.m_Paragraphs[0].maskingSettings.enabled = true; + firstPage.RaiseTutorialPageMaskingSettingsChangedEvent(); + m_Window.RepaintImmediately(); + + List views = new List(); + GUIViewDebuggerHelper.GetViews(views); + + // the tutorial window and the specified unmasked view should both be unmasked + var rects = new List(); + foreach (var view in views) + { + if (view == m_Window.m_Parent || view == Toolbar.get || view is TooltipView) + Assert.IsFalse(MaskingManager.IsMasked(new GUIViewProxy(view), rects)); + else + Assert.IsTrue(MaskingManager.IsMasked(new GUIViewProxy(view), rects)); + } + } + + [UnityTest] + public IEnumerator ApplyMasking_ToAllViewsExceptTutorialWindowAndTooltips_WhenRevisitingCompletedPage() + { + firstPage.m_Paragraphs[0].maskingSettings.SetUnmaskedViews(new[] { UnmaskedView.CreateInstanceForGUIView() }); + firstPage.m_Paragraphs[0].maskingSettings.enabled = true; + firstPage.RaiseTutorialPageMaskingSettingsChangedEvent(); + + firstPageCriterion.Complete(true); + + m_Window.RepaintImmediately(); + + List views = new List(); + GUIViewDebuggerHelper.GetViews(views); + + // masking of final instruction still applied when it is complete + var rects = new List(); + foreach (var view in views) + { + if (view == m_Window.m_Parent || view == Toolbar.get || view is TooltipView) + Assert.IsFalse(MaskingManager.IsMasked(new GUIViewProxy(view), rects)); + else + Assert.IsTrue(MaskingManager.IsMasked(new GUIViewProxy(view), rects)); + } + + using (var automatedWindow = new AutomatedWindow(m_Window)) + { + m_Window.RepaintImmediately(); + + // go to next page and then come back + automatedWindow.Click(FindElementWithText(automatedWindow, nextButtonText, "next button")); + yield return null; + m_Window.RepaintImmediately(); + automatedWindow.Click(FindElementWithStyle(automatedWindow, AllTutorialStyles.backButton, "back button")); + yield return null; + m_Window.RepaintImmediately(); + } + + // now only tutorial window should be unmasked + foreach (var view in views) + { + if (view == m_Window.m_Parent || view is TooltipView) + Assert.IsFalse(MaskingManager.IsMasked(new GUIViewProxy(view), rects)); + else + Assert.IsTrue(MaskingManager.IsMasked(new GUIViewProxy(view), rects)); + } + } + + [Test] + public void ApplyHighlighting_ToUnmaskedViews_WhenPageOnlyContainsNarrativeParagraphs() + { + firstPage.m_Paragraphs[0].m_Type = ParagraphType.Narrative; + firstPage.m_Paragraphs[0].maskingSettings.SetUnmaskedViews(new[] { UnmaskedView.CreateInstanceForGUIView() }); + firstPage.m_Paragraphs[0].maskingSettings.enabled = true; + firstPage.RaiseTutorialPageMaskingSettingsChangedEvent(); + + List views = new List(); + GUIViewDebuggerHelper.GetViews(views); + + // only the specified unmasked view should be highlighted + var rects = new List(); + foreach (var view in views) + { + if (view == Toolbar.get) + Assert.IsTrue(MaskingManager.IsHighlighted(new GUIViewProxy(view), rects)); + else + Assert.IsFalse(MaskingManager.IsHighlighted(new GUIViewProxy(view), rects)); + } + } + + [Test] + public void ApplyHighlighting_ToTutorialWindow_WhenAllTasksAreComplete() + { + firstPage.m_Paragraphs[0].maskingSettings.SetUnmaskedViews(new[] { UnmaskedView.CreateInstanceForGUIView() }); + firstPage.m_Paragraphs[0].maskingSettings.enabled = true; + firstPage.RaiseTutorialPageMaskingSettingsChangedEvent(); + + firstPageCriterion.Complete(true); + + m_Window.RepaintImmediately(); + + List views = new List(); + GUIViewDebuggerHelper.GetViews(views); + + // only the tutorial window should be highlighted + var rects = new List(); + foreach (var view in views) + { + if (view == m_Window.m_Parent) + Assert.IsTrue(MaskingManager.IsHighlighted(new GUIViewProxy(view), rects)); + else + Assert.IsFalse(MaskingManager.IsHighlighted(new GUIViewProxy(view), rects)); + } + } + + [Test] + public void ApplyHighlighting_ToOnlySpecifiedControls_WhenMaskingSettingsSpecifyControlsAndEntireWindowsAndViews() + { + var playButtonContrlSelector = new GUIControlSelector + { + selectorMode = GUIControlSelector.Mode.NamedControl, controlName = "ToolbarPlayModePlayButton" + }; + firstPage.m_Paragraphs[0].maskingSettings.SetUnmaskedViews( + new[] { + UnmaskedView.CreateInstanceForGUIView(new[] { playButtonContrlSelector }), + UnmaskedView.CreateInstanceForGUIView() + } + ); + firstPage.m_Paragraphs[0].maskingSettings.enabled = true; + firstPage.RaiseTutorialPageMaskingSettingsChangedEvent(); + + m_Window.RepaintImmediately(); + + List views = new List(); + GUIViewDebuggerHelper.GetViews(views); + + // only the play button should be highlighted + var rects = new List(); + foreach (var view in views) + { + if (view == Toolbar.get) + { + Assert.IsTrue(MaskingManager.IsHighlighted(new GUIViewProxy(view), rects)); + Assert.AreEqual(1, rects.Count); + var viewPosition = view.position; + var controlRect = rects[0]; + Assert.Greater(controlRect.xMin, viewPosition.xMin); + Assert.Greater(controlRect.yMin, viewPosition.yMin); + Assert.Less(controlRect.xMax, viewPosition.xMax); + Assert.Less(controlRect.yMax, viewPosition.yMax); + } + else + { + Assert.IsFalse(MaskingManager.IsHighlighted(new GUIViewProxy(view), rects)); + } + } + } + + [Test] + [Ignore("TODO Fix")] + public void ApplyHighlighting_ToAllUnmaskedWindowsAndViews_WhenMaskingSettingsOnlySpecifyEntireWindowsAndViews() + { + firstPage.m_Paragraphs[0].maskingSettings.SetUnmaskedViews( + new[] { + UnmaskedView.CreateInstanceForGUIView(), + UnmaskedView.CreateInstanceForGUIView() + } + ); + firstPage.m_Paragraphs[0].maskingSettings.enabled = true; + firstPage.RaiseTutorialPageMaskingSettingsChangedEvent(); + + m_Window.RepaintImmediately(); + + List views = new List(); + GUIViewDebuggerHelper.GetViews(views); + + // both the toolbar and status bar should be highlighted + var rects = new List(); + foreach (var view in views) + { + if (view == Toolbar.get || view is AppStatusBar) + Assert.IsTrue(MaskingManager.IsHighlighted(new GUIViewProxy(view), rects)); + else + Assert.IsFalse(MaskingManager.IsHighlighted(new GUIViewProxy(view), rects)); + } + } + + } +} diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Tests/Editor/TutorialWindowTests.cs.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Tests/Editor/TutorialWindowTests.cs.meta" new file mode 100644 index 00000000..3f599fdd --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Tests/Editor/TutorialWindowTests.cs.meta" @@ -0,0 +1,13 @@ +fileFormatVersion: 2 +guid: 96050779fe15c48048afb9cea8050820 +timeCreated: 1503050064 +licenseType: Pro +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Tests/Editor/UnmaskedViewTestLayout.dwlt" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Tests/Editor/UnmaskedViewTestLayout.dwlt" new file mode 100644 index 00000000..971e53a1 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Tests/Editor/UnmaskedViewTestLayout.dwlt" @@ -0,0 +1,751 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!114 &1 +MonoBehaviour: + m_ObjectHideFlags: 52 + m_PrefabParentObject: {fileID: 0} + m_PrefabInternal: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 1 + m_Script: {fileID: 12004, guid: 0000000000000000e000000000000000, type: 0} + m_Name: + m_EditorClassIdentifier: + m_PixelRect: + serializedVersion: 2 + x: 2560 + y: 45 + width: 2560 + height: 1395 + m_ShowMode: 4 + m_Title: + m_RootView: {fileID: 6} + m_MinSize: {x: 950, y: 542} + m_MaxSize: {x: 10000, y: 10000} +--- !u!114 &2 +MonoBehaviour: + m_ObjectHideFlags: 52 + m_PrefabParentObject: {fileID: 0} + m_PrefabInternal: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 1 + m_Script: {fileID: 12010, guid: 0000000000000000e000000000000000, type: 0} + m_Name: + m_EditorClassIdentifier: + m_Children: + - {fileID: 9} + - {fileID: 3} + m_Position: + serializedVersion: 2 + x: 0 + y: 30 + width: 2560 + height: 1345 + m_MinSize: {x: 583, y: 492} + m_MaxSize: {x: 14004, y: 14042} + vertical: 0 + controlID: 22 +--- !u!114 &3 +MonoBehaviour: + m_ObjectHideFlags: 52 + m_PrefabParentObject: {fileID: 0} + m_PrefabInternal: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 1 + m_Script: {fileID: 12006, guid: 0000000000000000e000000000000000, type: 0} + m_Name: + m_EditorClassIdentifier: + m_Children: [] + m_Position: + serializedVersion: 2 + x: 2041 + y: 0 + width: 519 + height: 1345 + m_MinSize: {x: 277, y: 71} + m_MaxSize: {x: 4002, y: 4021} + m_ActualView: {fileID: 14} + m_Panes: + - {fileID: 14} + m_Selected: 0 + m_LastSelected: 0 +--- !u!114 &4 +MonoBehaviour: + m_ObjectHideFlags: 52 + m_PrefabParentObject: {fileID: 0} + m_PrefabInternal: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 1 + m_Script: {fileID: 12006, guid: 0000000000000000e000000000000000, type: 0} + m_Name: + m_EditorClassIdentifier: + m_Children: [] + m_Position: + serializedVersion: 2 + x: 0 + y: 0 + width: 505 + height: 813 + m_MinSize: {x: 202, y: 221} + m_MaxSize: {x: 4002, y: 4021} + m_ActualView: {fileID: 15} + m_Panes: + - {fileID: 15} + m_Selected: 0 + m_LastSelected: 0 +--- !u!114 &5 +MonoBehaviour: + m_ObjectHideFlags: 52 + m_PrefabParentObject: {fileID: 0} + m_PrefabInternal: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 1 + m_Script: {fileID: 12006, guid: 0000000000000000e000000000000000, type: 0} + m_Name: + m_EditorClassIdentifier: + m_Children: [] + m_Position: + serializedVersion: 2 + x: 0 + y: 813 + width: 2041 + height: 532 + m_MinSize: {x: 232, y: 271} + m_MaxSize: {x: 10002, y: 10021} + m_ActualView: {fileID: 13} + m_Panes: + - {fileID: 13} + - {fileID: 18} + m_Selected: 0 + m_LastSelected: 0 +--- !u!114 &6 +MonoBehaviour: + m_ObjectHideFlags: 52 + m_PrefabParentObject: {fileID: 0} + m_PrefabInternal: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 1 + m_Script: {fileID: 12008, guid: 0000000000000000e000000000000000, type: 0} + m_Name: + m_EditorClassIdentifier: + m_Children: + - {fileID: 7} + - {fileID: 2} + - {fileID: 8} + m_Position: + serializedVersion: 2 + x: 0 + y: 0 + width: 2560 + height: 1395 + m_MinSize: {x: 950, y: 542} + m_MaxSize: {x: 10000, y: 10000} +--- !u!114 &7 +MonoBehaviour: + m_ObjectHideFlags: 52 + m_PrefabParentObject: {fileID: 0} + m_PrefabInternal: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 1 + m_Script: {fileID: 12011, guid: 0000000000000000e000000000000000, type: 0} + m_Name: + m_EditorClassIdentifier: + m_Children: [] + m_Position: + serializedVersion: 2 + x: 0 + y: 0 + width: 2560 + height: 30 + m_MinSize: {x: 0, y: 0} + m_MaxSize: {x: 0, y: 0} + m_LastLoadedLayoutName: +--- !u!114 &8 +MonoBehaviour: + m_ObjectHideFlags: 52 + m_PrefabParentObject: {fileID: 0} + m_PrefabInternal: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 1 + m_Script: {fileID: 12042, guid: 0000000000000000e000000000000000, type: 0} + m_Name: + m_EditorClassIdentifier: + m_Children: [] + m_Position: + serializedVersion: 2 + x: 0 + y: 1375 + width: 2560 + height: 20 + m_MinSize: {x: 0, y: 0} + m_MaxSize: {x: 0, y: 0} +--- !u!114 &9 +MonoBehaviour: + m_ObjectHideFlags: 52 + m_PrefabParentObject: {fileID: 0} + m_PrefabInternal: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 1 + m_Script: {fileID: 12010, guid: 0000000000000000e000000000000000, type: 0} + m_Name: + m_EditorClassIdentifier: + m_Children: + - {fileID: 10} + - {fileID: 5} + m_Position: + serializedVersion: 2 + x: 0 + y: 0 + width: 2041 + height: 1345 + m_MinSize: {x: 306, y: 492} + m_MaxSize: {x: 10002, y: 14042} + vertical: 1 + controlID: 23 +--- !u!114 &10 +MonoBehaviour: + m_ObjectHideFlags: 52 + m_PrefabParentObject: {fileID: 0} + m_PrefabInternal: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 1 + m_Script: {fileID: 12010, guid: 0000000000000000e000000000000000, type: 0} + m_Name: + m_EditorClassIdentifier: + m_Children: + - {fileID: 4} + - {fileID: 11} + m_Position: + serializedVersion: 2 + x: 0 + y: 0 + width: 2041 + height: 813 + m_MinSize: {x: 306, y: 221} + m_MaxSize: {x: 8006, y: 4021} + vertical: 0 + controlID: 77 +--- !u!114 &11 +MonoBehaviour: + m_ObjectHideFlags: 52 + m_PrefabParentObject: {fileID: 0} + m_PrefabInternal: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 1 + m_Script: {fileID: 12006, guid: 0000000000000000e000000000000000, type: 0} + m_Name: + m_EditorClassIdentifier: + m_Children: [] + m_Position: + serializedVersion: 2 + x: 505 + y: 0 + width: 1536 + height: 813 + m_MinSize: {x: 104, y: 121} + m_MaxSize: {x: 4004, y: 4021} + m_ActualView: {fileID: 12} + m_Panes: + - {fileID: 16} + - {fileID: 17} + - {fileID: 12} + m_Selected: 2 + m_LastSelected: 0 +--- !u!114 &12 +MonoBehaviour: + m_ObjectHideFlags: 52 + m_PrefabParentObject: {fileID: 0} + m_PrefabInternal: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 13401, guid: 0000000000000000e000000000000000, type: 0} + m_Name: + m_EditorClassIdentifier: + m_AutoRepaintOnSceneChange: 0 + m_MinSize: {x: 100, y: 100} + m_MaxSize: {x: 4000, y: 4000} + m_TitleContent: + m_Text: Test Runner + m_Image: {fileID: 0} + m_Tooltip: + m_DepthBufferBits: 0 + m_Pos: + serializedVersion: 2 + x: 3067 + y: 94 + width: 1532 + height: 792 + m_IsSceneBased: 0 + m_TestTypeToolbarIndex: 1 + m_PlayModeTestListGUI: + m_Window: {fileID: 0} + newResultList: [] + m_ResultText: + m_ResultStacktrace: + m_TestListState: + scrollPos: {x: 0, y: 0} + m_SelectedIDs: + m_LastClickedID: 0 + m_ExpandedIDs: + m_RenameOverlay: + m_UserAcceptedRename: 0 + m_Name: + m_OriginalName: + m_EditFieldRect: + serializedVersion: 2 + x: 0 + y: 0 + width: 0 + height: 0 + m_UserData: 0 + m_IsWaitingForDelay: 0 + m_IsRenaming: 0 + m_OriginalEventType: 11 + m_IsRenamingFilename: 0 + m_ClientGUIView: {fileID: 0} + m_SearchString: + m_EditModeTestListGUI: + m_Window: {fileID: 12} + newResultList: + - id: '[GGJ IET Prototype]' + name: GGJ IET Prototype + fullName: GGJ IET Prototype + resultStatus: 0 + duration: 0 + messages: + output: + stacktrace: + notRunnable: 0 + ignoredOrSkipped: 0 + description: + m_ResultText: + m_ResultStacktrace: + m_TestListState: + scrollPos: {x: 0, y: 0} + m_SelectedIDs: + m_LastClickedID: 0 + m_ExpandedIDs: 14a99167ffffff7f + m_RenameOverlay: + m_UserAcceptedRename: 0 + m_Name: + m_OriginalName: + m_EditFieldRect: + serializedVersion: 2 + x: 0 + y: 0 + width: 0 + height: 0 + m_UserData: 0 + m_IsWaitingForDelay: 0 + m_IsRenaming: 0 + m_OriginalEventType: 11 + m_IsRenamingFilename: 0 + m_ClientGUIView: {fileID: 0} + m_SearchString: +--- !u!114 &13 +MonoBehaviour: + m_ObjectHideFlags: 52 + m_PrefabParentObject: {fileID: 0} + m_PrefabInternal: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 1 + m_Script: {fileID: 12014, guid: 0000000000000000e000000000000000, type: 0} + m_Name: + m_EditorClassIdentifier: + m_AutoRepaintOnSceneChange: 0 + m_MinSize: {x: 230, y: 250} + m_MaxSize: {x: 10000, y: 10000} + m_TitleContent: + m_Text: Project + m_Image: {fileID: -5467254957812901981, guid: 0000000000000000d000000000000000, + type: 0} + m_Tooltip: + m_DepthBufferBits: 0 + m_Pos: + serializedVersion: 2 + x: 2560 + y: 907 + width: 2039 + height: 511 + m_SearchFilter: + m_NameFilter: + m_ClassNames: [] + m_AssetLabels: [] + m_AssetBundleNames: [] + m_VersionControlStates: [] + m_SoftLockControlStates: [] + m_ReferencingInstanceIDs: + m_ScenePaths: [] + m_ShowAllHits: 0 + m_SearchArea: 0 + m_Folders: + - Assets/Framework/Interactive Tutorials/Editor/Tests + m_ViewMode: 1 + m_StartGridSize: 64 + m_LastFolders: + - Assets/Framework/Interactive Tutorials/Editor/Tests + m_LastFoldersGridSize: -1 + m_LastProjectPath: /Users/adamm/unity/iet-framework + m_IsLocked: 0 + m_FolderTreeState: + scrollPos: {x: 0, y: 0} + m_SelectedIDs: 1e270000 + m_LastClickedID: 10014 + m_ExpandedIDs: 00000000fa2600006a2700007e270000c6270000c8270000de2700001228000000ca9a3bffffff7f + m_RenameOverlay: + m_UserAcceptedRename: 0 + m_Name: + m_OriginalName: + m_EditFieldRect: + serializedVersion: 2 + x: 0 + y: 0 + width: 0 + height: 0 + m_UserData: 0 + m_IsWaitingForDelay: 0 + m_IsRenaming: 0 + m_OriginalEventType: 11 + m_IsRenamingFilename: 1 + m_ClientGUIView: {fileID: 0} + m_SearchString: + m_CreateAssetUtility: + m_EndAction: {fileID: 0} + m_InstanceID: 0 + m_Path: + m_Icon: {fileID: 0} + m_ResourceFile: + m_AssetTreeState: + scrollPos: {x: 0, y: 0} + m_SelectedIDs: + m_LastClickedID: 0 + m_ExpandedIDs: 00000000fa2600006a2700007e270000c6270000c8270000de27000012280000 + m_RenameOverlay: + m_UserAcceptedRename: 0 + m_Name: + m_OriginalName: + m_EditFieldRect: + serializedVersion: 2 + x: 0 + y: 0 + width: 0 + height: 0 + m_UserData: 0 + m_IsWaitingForDelay: 0 + m_IsRenaming: 0 + m_OriginalEventType: 11 + m_IsRenamingFilename: 1 + m_ClientGUIView: {fileID: 0} + m_SearchString: + m_CreateAssetUtility: + m_EndAction: {fileID: 0} + m_InstanceID: 0 + m_Path: + m_Icon: {fileID: 0} + m_ResourceFile: + m_ListAreaState: + m_SelectedInstanceIDs: + m_LastClickedInstanceID: 0 + m_HadKeyboardFocusLastEvent: 1 + m_ExpandedInstanceIDs: + m_RenameOverlay: + m_UserAcceptedRename: 0 + m_Name: + m_OriginalName: + m_EditFieldRect: + serializedVersion: 2 + x: 0 + y: 0 + width: 0 + height: 0 + m_UserData: 0 + m_IsWaitingForDelay: 0 + m_IsRenaming: 0 + m_OriginalEventType: 11 + m_IsRenamingFilename: 1 + m_ClientGUIView: {fileID: 5} + m_CreateAssetUtility: + m_EndAction: {fileID: 0} + m_InstanceID: 0 + m_Path: + m_Icon: {fileID: 0} + m_ResourceFile: + m_NewAssetIndexInList: -1 + m_ScrollPosition: {x: 0, y: 0} + m_GridSize: 64 + m_DirectoriesAreaWidth: 115 +--- !u!114 &14 +MonoBehaviour: + m_ObjectHideFlags: 52 + m_PrefabParentObject: {fileID: 0} + m_PrefabInternal: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 1 + m_Script: {fileID: 12019, guid: 0000000000000000e000000000000000, type: 0} + m_Name: + m_EditorClassIdentifier: + m_AutoRepaintOnSceneChange: 0 + m_MinSize: {x: 275, y: 50} + m_MaxSize: {x: 4000, y: 4000} + m_TitleContent: + m_Text: Inspector + m_Image: {fileID: -2667387946076563598, guid: 0000000000000000d000000000000000, + type: 0} + m_Tooltip: + m_DepthBufferBits: 0 + m_Pos: + serializedVersion: 2 + x: 4603 + y: 94 + width: 517 + height: 1324 + m_ScrollPosition: {x: 0, y: 0} + m_InspectorMode: 0 + m_PreviewResizer: + m_CachedPref: 160 + m_ControlHash: -371814159 + m_PrefName: Preview_InspectorPreview + m_PreviewWindow: {fileID: 0} +--- !u!114 &15 +MonoBehaviour: + m_ObjectHideFlags: 52 + m_PrefabParentObject: {fileID: 0} + m_PrefabInternal: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 1 + m_Script: {fileID: 12061, guid: 0000000000000000e000000000000000, type: 0} + m_Name: + m_EditorClassIdentifier: + m_AutoRepaintOnSceneChange: 0 + m_MinSize: {x: 200, y: 200} + m_MaxSize: {x: 4000, y: 4000} + m_TitleContent: + m_Text: Hierarchy + m_Image: {fileID: 7966133145522015247, guid: 0000000000000000d000000000000000, + type: 0} + m_Tooltip: + m_DepthBufferBits: 0 + m_Pos: + serializedVersion: 2 + x: 2560 + y: 94 + width: 503 + height: 792 + m_TreeViewState: + scrollPos: {x: 0, y: 0} + m_SelectedIDs: 1e280000 + m_LastClickedID: 0 + m_ExpandedIDs: 8cfbffff00000000 + m_RenameOverlay: + m_UserAcceptedRename: 0 + m_Name: + m_OriginalName: + m_EditFieldRect: + serializedVersion: 2 + x: 0 + y: 0 + width: 0 + height: 0 + m_UserData: 0 + m_IsWaitingForDelay: 0 + m_IsRenaming: 0 + m_OriginalEventType: 11 + m_IsRenamingFilename: 0 + m_ClientGUIView: {fileID: 0} + m_SearchString: + m_ExpandedScenes: + - + m_CurrenRootInstanceID: 0 + m_Locked: 0 + m_CurrentSortingName: TransformSorting +--- !u!114 &16 +MonoBehaviour: + m_ObjectHideFlags: 52 + m_PrefabParentObject: {fileID: 0} + m_PrefabInternal: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 1 + m_Script: {fileID: 12013, guid: 0000000000000000e000000000000000, type: 0} + m_Name: + m_EditorClassIdentifier: + m_AutoRepaintOnSceneChange: 1 + m_MinSize: {x: 200, y: 200} + m_MaxSize: {x: 4000, y: 4000} + m_TitleContent: + m_Text: Scene + m_Image: {fileID: 2593428753322112591, guid: 0000000000000000d000000000000000, + type: 0} + m_Tooltip: + m_DepthBufferBits: 32 + m_Pos: + serializedVersion: 2 + x: 3067 + y: 94 + width: 1532 + height: 792 + m_SceneLighting: 1 + lastFramingTime: 0 + m_2DMode: 0 + m_isRotationLocked: 0 + m_AudioPlay: 0 + m_Position: + m_Target: {x: 0, y: 0, z: 0} + speed: 2 + m_Value: {x: 0, y: 0, z: 0} + m_RenderMode: 0 + m_ValidateTrueMetals: 0 + m_SceneViewState: + showFog: 1 + showMaterialUpdate: 0 + showSkybox: 1 + showFlares: 1 + showImageEffects: 1 + grid: + xGrid: + m_Target: 0 + speed: 2 + m_Value: 0 + yGrid: + m_Target: 1 + speed: 2 + m_Value: 1 + zGrid: + m_Target: 0 + speed: 2 + m_Value: 0 + m_Rotation: + m_Target: {x: -0.08717229, y: 0.89959055, z: -0.21045254, w: -0.3726226} + speed: 2 + m_Value: {x: -0.08717229, y: 0.89959055, z: -0.21045254, w: -0.3726226} + m_Size: + m_Target: 10 + speed: 2 + m_Value: 10 + m_Ortho: + m_Target: 0 + speed: 2 + m_Value: 0 + m_ShowGlobalGrid: 1 + m_LastSceneViewRotation: {x: 0, y: 0, z: 0, w: 0} + m_LastSceneViewOrtho: 0 + m_ReplacementShader: {fileID: 0} + m_ReplacementString: + m_LastLockedObject: {fileID: 0} + m_ViewIsLockedToObject: 0 +--- !u!114 &17 +MonoBehaviour: + m_ObjectHideFlags: 52 + m_PrefabParentObject: {fileID: 0} + m_PrefabInternal: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 1 + m_Script: {fileID: 12015, guid: 0000000000000000e000000000000000, type: 0} + m_Name: + m_EditorClassIdentifier: + m_AutoRepaintOnSceneChange: 1 + m_MinSize: {x: 200, y: 200} + m_MaxSize: {x: 4000, y: 4000} + m_TitleContent: + m_Text: Game + m_Image: {fileID: -6423792434712278376, guid: 0000000000000000d000000000000000, + type: 0} + m_Tooltip: + m_DepthBufferBits: 32 + m_Pos: + serializedVersion: 2 + x: 380 + y: 17 + width: 1148 + height: 625 + m_MaximizeOnPlay: 0 + m_Gizmos: 0 + m_Stats: 0 + m_SelectedSizes: 00000000000000000000000000000000000000000000000000000000000000000000000000000000 + m_TargetDisplay: 0 + m_ZoomArea: + m_HRangeLocked: 0 + m_VRangeLocked: 0 + m_HBaseRangeMin: -574 + m_HBaseRangeMax: 574 + m_VBaseRangeMin: -304 + m_VBaseRangeMax: 304 + m_HAllowExceedBaseRangeMin: 1 + m_HAllowExceedBaseRangeMax: 1 + m_VAllowExceedBaseRangeMin: 1 + m_VAllowExceedBaseRangeMax: 1 + m_ScaleWithWindow: 0 + m_HSlider: 1 + m_VSlider: 1 + m_IgnoreScrollWheelUntilClicked: 0 + m_EnableMouseInput: 1 + m_EnableSliderZoom: 0 + m_UniformScale: 1 + m_UpDirection: 1 + m_DrawArea: + serializedVersion: 2 + x: 0 + y: 17 + width: 1148 + height: 608 + m_Scale: {x: 1, y: 1} + m_Translation: {x: 574, y: 304} + m_MarginLeft: 0 + m_MarginRight: 0 + m_MarginTop: 0 + m_MarginBottom: 0 + m_LastShownAreaInsideMargins: + serializedVersion: 2 + x: -574 + y: -304 + width: 1148 + height: 608 + m_MinimalGUI: 1 + m_defaultScale: 1 + m_TargetTexture: {fileID: 0} + m_CurrentColorSpace: -1 + m_LastWindowPixelSize: {x: 1148, y: 625} + m_ClearInEditMode: 1 + m_NoCameraWarning: 1 + m_LowResolutionForAspectRatios: 01000000000100000100 +--- !u!114 &18 +MonoBehaviour: + m_ObjectHideFlags: 52 + m_PrefabParentObject: {fileID: 0} + m_PrefabInternal: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 1 + m_Script: {fileID: 12003, guid: 0000000000000000e000000000000000, type: 0} + m_Name: + m_EditorClassIdentifier: + m_AutoRepaintOnSceneChange: 0 + m_MinSize: {x: 100, y: 100} + m_MaxSize: {x: 4000, y: 4000} + m_TitleContent: + m_Text: Console + m_Image: {fileID: -4327648978806127646, guid: 0000000000000000d000000000000000, + type: 0} + m_Tooltip: + m_DepthBufferBits: 0 + m_Pos: + serializedVersion: 2 + x: 8 + y: 718 + width: 1366 + height: 308 diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Tests/Editor/UnmaskedViewTestLayout.dwlt.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Tests/Editor/UnmaskedViewTestLayout.dwlt.meta" new file mode 100644 index 00000000..8b32251c --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Tests/Editor/UnmaskedViewTestLayout.dwlt.meta" @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: e34bfc1249af44c9d9d215d644025310 +timeCreated: 1497872757 +licenseType: Pro +DefaultImporter: + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Tests/Editor/UnmaskedViewTests.cs" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Tests/Editor/UnmaskedViewTests.cs" new file mode 100644 index 00000000..5887499b --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Tests/Editor/UnmaskedViewTests.cs" @@ -0,0 +1,210 @@ +using System; +using System.Collections; +using System.Linq; +using UnityEditor; +using UnityEngine; +using UnityEngine.TestTools; +using NUnit.Framework; +using UnityEditor.UIAutomation; + +namespace Unity.InteractiveTutorials.Tests +{ + public class UnmaskedViewTests + { + [Test] + [Ignore("Annoyingly closes Test Runner window and clears test results of other tests")] + public void TestGetViewsAndRects_ThrowsArgumentException_WhenTryingToGetRectsFromTwoEditorWindowsInTheSameDockArea() + { + Assert.True( + EditorUtility.LoadWindowLayout("Packages/com.unity.learn.iet-framework/Tests/Editor/UnmaskedViewTestLayout.dwlt"), + "UnmaskedViewTestLayout.dwlt missing." + ); + + // these two windows are docked together in the test layout + var unmaskedViews = new[] { + UnmaskedView.CreateInstanceForEditorWindow(), + UnmaskedView.CreateInstanceForEditorWindow(), + }; + + Assert.Throws( + () => UnmaskedView.GetViewsAndRects(unmaskedViews), + "Did not throw ArgumentException when getting rects for two EditorWindows in the same DockArea" + ); + } + + [Ignore("TODO Runs fine locally, fails on Yamato.")] + [Test] + public void TestGetViewsAndRects_ForNamedControlsInToolbar() + { + var unmaskedViews = new[] { + UnmaskedView.CreateInstanceForGUIView( + new[] { + new GUIControlSelector() { selectorMode = GUIControlSelector.Mode.NamedControl, controlName = "ToolbarPersistentToolsPan" }, + new GUIControlSelector() { selectorMode = GUIControlSelector.Mode.NamedControl, controlName = "ToolbarPersistentToolsTranslate" }, + new GUIControlSelector() { selectorMode = GUIControlSelector.Mode.NamedControl, controlName = "ToolbarPersistentToolsRotate" }, + new GUIControlSelector() { selectorMode = GUIControlSelector.Mode.NamedControl, controlName = "ToolbarPersistentToolsScale" }, + new GUIControlSelector() { selectorMode = GUIControlSelector.Mode.NamedControl, controlName = "ToolbarPersistentToolsRect" }, + new GUIControlSelector() { selectorMode = GUIControlSelector.Mode.NamedControl, controlName = "ToolbarToolPivotPositionButton" }, + new GUIControlSelector() { selectorMode = GUIControlSelector.Mode.NamedControl, controlName = "ToolbarToolPivotOrientationButton" }, + new GUIControlSelector() { selectorMode = GUIControlSelector.Mode.NamedControl, controlName = "ToolbarPlayModePlayButton" }, + new GUIControlSelector() { selectorMode = GUIControlSelector.Mode.NamedControl, controlName = "ToolbarPlayModePauseButton" }, + new GUIControlSelector() { selectorMode = GUIControlSelector.Mode.NamedControl, controlName = "ToolbarPlayModeStepButton" }, + } + ) + }; + + var viewsAndRects = UnmaskedView.GetViewsAndRects(unmaskedViews).m_MaskData; + Assert.AreEqual(1, viewsAndRects.Count, "Did not find one view for the Toolbar"); + var rects = viewsAndRects.Values.First().rects; + Assert.AreEqual(10, rects.Count, "Did not find all of the expected named controls in the Toolbar"); + } + + [UnityTest] + public IEnumerator TestGetViewsAndRects_ForSerializedPropertyInInspector() + { + var testObject = new GameObject("TestGetViewsAndRects_ForSerializedPropertiesInInspector"); + Selection.activeObject = testObject; + try + { + EditorWindow.GetWindow(); + yield return null; + + var unmaskedViews = new[] { + UnmaskedView.CreateInstanceForEditorWindow( + new[] { + new GUIControlSelector() { selectorMode = GUIControlSelector.Mode.Property, targetType = typeof(Transform), propertyPath = "m_LocalPosition" } + } + ) + }; + var viewsAndRects = UnmaskedView.GetViewsAndRects(unmaskedViews).m_MaskData; + Assert.AreEqual(1, viewsAndRects.Count, "Did not find one view for the Inspector"); + var rects = viewsAndRects.Values.First().rects; + Assert.AreEqual(1, rects.Count, "Did not find exactly one control for the SerializedProperty m_LocalPosition for a Transform"); + } + finally + { + GameObject.DestroyImmediate(testObject); + } + } + + [UnityTest] + public IEnumerator TestGetViewsAndRects_ForSerializedPropertyInInspector_WhenSamePathExistsOnMultipleComponents() + { + var testObject = new GameObject("TestGetViewsAndRects_ForSerializedPropertiesInInspector", typeof(Light), typeof(SpriteRenderer)); + + Selection.activeObject = testObject; + try + { + Assert.IsNotNull(new SerializedObject(testObject.GetComponent()).FindProperty("m_Color")); + Assert.IsNotNull(new SerializedObject(testObject.GetComponent()).FindProperty("m_Color")); + + EditorWindow.GetWindow(); + yield return null; + + var unmaskedViews = new[] { + UnmaskedView.CreateInstanceForEditorWindow( + new[] { + new GUIControlSelector() { selectorMode = GUIControlSelector.Mode.Property, targetType = typeof(SpriteRenderer), propertyPath = "m_Color" } + } + ) + }; + var viewsAndRects = UnmaskedView.GetViewsAndRects(unmaskedViews).m_MaskData; + Assert.AreEqual(1, viewsAndRects.Count, "Did not find one view for the Inspector"); + var rects = viewsAndRects.Values.First().rects; + Assert.AreEqual(1, rects.Count, "Did not find exactly one control for the SerializedProperty m_Color for a SpriteRenderer"); + } + finally + { + GameObject.DestroyImmediate(testObject); + } + } + + [UnityTest] + [TestCase(true, false, ExpectedResult = null)] +#if UNITY_2019_3_OR_NEWER + [Ignore("TODO Fails on 2019.3 due two-pixel difference on the rect.")] +#endif + [TestCase(false, true, ExpectedResult = null)] + public IEnumerator TestGetViewsAndRects_ForSerializedPropertyInInspector_WhenParentPropertyIsCollapsed( + bool parentPropertyExpanded, bool expectedFoundAncestorProperty) + { + var testObject = new GameObject("TestGetViewsAndRects_ForContractedPropertyInInspector", + typeof(TestComponents.ComponentWithNestedValues)); + + Selection.activeObject = testObject; + try + { + var serializedObject = new SerializedObject(testObject.GetComponent()); + var parentProperty = serializedObject.FindProperty("componentWithNestedValuesFieldA"); + var childProperty = serializedObject.FindProperty( + "componentWithNestedValuesFieldA.componentWithNestedValuesFieldB"); + + Assert.That(parentProperty, Is.Not.Null); + Assert.That(childProperty, Is.Not.Null); + + parentProperty.isExpanded = parentPropertyExpanded; + serializedObject.ApplyModifiedProperties(); + + var inspectorWindow = EditorWindow.GetWindow(); + + Rect labelRectOfExpectedFoundProperty; + using (var automatedWindow = new AutomatedWindow(inspectorWindow)) + { + inspectorWindow.Repaint(); + yield return null; + + if (expectedFoundAncestorProperty) + { + var parentElements = automatedWindow.FindElementsByGUIContent( + new GUIContent("Component With Nested Values Field A")); + Assert.That(parentElements.Count(), Is.EqualTo(1)); + labelRectOfExpectedFoundProperty = parentElements.Single().rect; + } + else + { + var childElements = automatedWindow.FindElementsByGUIContent( + new GUIContent("Component With Nested Values Field B")); + Assert.That(childElements.Count(), Is.EqualTo(1)); + labelRectOfExpectedFoundProperty = childElements.Single().rect; + } + } + + var unmaskedViews = new[] { + UnmaskedView.CreateInstanceForEditorWindow( + new[] { + new GUIControlSelector() + { + selectorMode = GUIControlSelector.Mode.Property, + targetType = typeof(TestComponents.ComponentWithNestedValues), + propertyPath = "componentWithNestedValuesFieldA.componentWithNestedValuesFieldB" + } + } + ) + }; + + bool foundAncestorProperty; + var viewsAndRects = UnmaskedView.GetViewsAndRects(unmaskedViews, out foundAncestorProperty) + .m_MaskData; + + Assert.That(foundAncestorProperty, Is.EqualTo(expectedFoundAncestorProperty)); + Assert.That(viewsAndRects.Count, Is.EqualTo(1), "Did not find one view for the Inspector"); + + var rects = viewsAndRects.Values.First().rects; + Assert.That(rects.Count, Is.EqualTo(1), + "Did not find exactly one control for the SerializedPropert " + + "componentWithNestedValuesFieldA.componentWithNestedValuesFieldB for ComponentWithNestedValues"); + + var rect = rects.Single(); + Assert.That(rect.yMin, Is.GreaterThanOrEqualTo(labelRectOfExpectedFoundProperty.yMin), + "Found property rect does not contain of label rect of expected found property"); + Assert.That(rect.yMax, Is.LessThanOrEqualTo(labelRectOfExpectedFoundProperty.yMax), + "Found property rect does not contain of label rect of expected found property"); + + } + finally + { + UnityEngine.Object.DestroyImmediate(testObject); + } + } + } +} diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Tests/Editor/UnmaskedViewTests.cs.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Tests/Editor/UnmaskedViewTests.cs.meta" new file mode 100644 index 00000000..a5a0c510 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Tests/Editor/UnmaskedViewTests.cs.meta" @@ -0,0 +1,12 @@ +fileFormatVersion: 2 +guid: 2dc56a0973af44681a20ba0ad137eca5 +timeCreated: 1497870502 +licenseType: Pro +MonoImporter: + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Tests/Editor/VideoPlaybackManagerTests.cs" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Tests/Editor/VideoPlaybackManagerTests.cs" new file mode 100644 index 00000000..62b3264f --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Tests/Editor/VideoPlaybackManagerTests.cs" @@ -0,0 +1,118 @@ +using System.Collections; +using System.Linq; +using NUnit.Framework; +using UnityEditor; +using UnityEditor.Experimental; +using UnityEditor.SceneManagement; +using UnityEngine; +using UnityEngine.SceneManagement; +using UnityEngine.TestTools; +using UnityEngine.Video; + +namespace Unity.InteractiveTutorials.Tests +{ + // These tests seem problematic: they pass on macOS & 2018.3 but not on other configurations. + public class VideoPlaybackManagerTests : TestBase + { + VideoPlaybackManager m_VideoPlaybackManager; + VideoClip m_VideoClip1; + VideoClip m_VideoClip2; + + [SetUp] + public void SetUp() + { + EditorSceneManager.OpenScene(GetTestAssetPath("EmptyTestScene.unity")); + + m_VideoPlaybackManager = new VideoPlaybackManager(); + m_VideoClip1 = AssetDatabase.LoadAssetAtPath(GetTestAssetPath("TestVideoClip1.mov")); + m_VideoClip2 = AssetDatabase.LoadAssetAtPath(GetTestAssetPath("TestVideoClip2.mov")); + } + + [TearDown] + public void TearDown() + { + m_VideoPlaybackManager.OnDisable(); + } + + // TODO [Test] + public void GetTextureForVideoClip_BeforeOnEnableIsCalled_ThrowsNullReferenceException() + { + Assert.That(() => m_VideoPlaybackManager.GetTextureForVideoClip(m_VideoClip1), Throws.Exception); + } + + // TODO [Test] + public void GetTextureForVideoClip_AfterOnEnableIsCalled_ReturnsValidTexture() + { + m_VideoPlaybackManager.OnEnable(); + + var texture = m_VideoPlaybackManager.GetTextureForVideoClip(m_VideoClip1); + + Assert.That(texture != null, Is.True); + } + + // TODO [Test] + public void GetTextureForVideoClip_AfterOnDisableIsCalled_ThrowsNullReferenceException() + { + m_VideoPlaybackManager.OnEnable(); + m_VideoPlaybackManager.OnDisable(); + + Assert.That(() => m_VideoPlaybackManager.GetTextureForVideoClip(m_VideoClip1), Throws.Exception); + } + + // TODO [Test] + public void GetTextureForVideoClip_ReturnsSameTextureForSameVideoClip() + { + m_VideoPlaybackManager.OnEnable(); + + var texture1 = m_VideoPlaybackManager.GetTextureForVideoClip(m_VideoClip1); + var texture2 = m_VideoPlaybackManager.GetTextureForVideoClip(m_VideoClip1); + + Assert.That(texture1 == texture2, Is.True); + } + + // TODO [Test] + public void GetTextureForVideoClip_ReturnsDifferentTextureForDifferentVideoClip() + { + m_VideoPlaybackManager.OnEnable(); + + var texture1 = m_VideoPlaybackManager.GetTextureForVideoClip(m_VideoClip1); + var texture2 = m_VideoPlaybackManager.GetTextureForVideoClip(m_VideoClip2); + + Assert.That(texture1 == texture2, Is.False); + } + + // TODO [Test] + public void GetTextureForVideoClip_OnDisable_DestroysAllObjectsCreatedByManager() + { + var objectsBefore = Resources.FindObjectsOfTypeAll(); + m_VideoPlaybackManager.OnEnable(); + m_VideoPlaybackManager.GetTextureForVideoClip(m_VideoClip1); + m_VideoPlaybackManager.GetTextureForVideoClip(m_VideoClip2); + var newObjects = Resources.FindObjectsOfTypeAll().Except(objectsBefore); + + m_VideoPlaybackManager.OnDisable(); + + foreach (var newObject in newObjects) + { + Assert.That(newObject == null, Is.True, "Object not destroyed: " + newObject); + } + } + + // TODO [Test] + public void GetTextureForVideoClip_ClearCache_DestroysAllObjectsCreatedByCallsToGetTextureForVideoClip() + { + m_VideoPlaybackManager.OnEnable(); + var objectsBefore = Resources.FindObjectsOfTypeAll(); + m_VideoPlaybackManager.GetTextureForVideoClip(m_VideoClip1); + m_VideoPlaybackManager.GetTextureForVideoClip(m_VideoClip2); + var newObjects = Resources.FindObjectsOfTypeAll().Except(objectsBefore); + + m_VideoPlaybackManager.ClearCache(); + + foreach (var newObject in newObjects) + { + Assert.That(newObject == null, Is.True, "Object not destroyed: " + newObject); + } + } + } +} diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Tests/Editor/VideoPlaybackManagerTests.cs.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Tests/Editor/VideoPlaybackManagerTests.cs.meta" new file mode 100644 index 00000000..fd30a8b9 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Tests/Editor/VideoPlaybackManagerTests.cs.meta" @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 8828e71bf8c1649d9bda2606aeb22115 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Tests/Editor/WaitForDelayCall.cs" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Tests/Editor/WaitForDelayCall.cs" new file mode 100644 index 00000000..c971ec25 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Tests/Editor/WaitForDelayCall.cs" @@ -0,0 +1,25 @@ +using System.Collections; +using UnityEditor; +using UnityEngine.TestTools; + +namespace Unity.InteractiveTutorials.Tests +{ + class WaitForDelayCall : IEditModeTestYieldInstruction + { + bool m_WaitingForDelayCall = true; + + public WaitForDelayCall() + { + EditorApplication.delayCall += () => m_WaitingForDelayCall = false; + } + + public IEnumerator Perform() + { + while (m_WaitingForDelayCall) + yield return null; + } + + public bool ExpectDomainReload { get; } + public bool ExpectedPlaymodeState { get; } + } +} diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Tests/Editor/WaitForDelayCall.cs.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Tests/Editor/WaitForDelayCall.cs.meta" new file mode 100644 index 00000000..04ec1226 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Tests/Editor/WaitForDelayCall.cs.meta" @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 6b9b87d07d54e41c9813f78a640f6cb8 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Tests/TestComponents.cs" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Tests/TestComponents.cs" new file mode 100644 index 00000000..ca2f26b2 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Tests/TestComponents.cs" @@ -0,0 +1,20 @@ +using System; +using UnityEngine; + +namespace Unity.InteractiveTutorials.Tests +{ + static class TestComponents + { + // Nest type to avoid it showing up in the "Add Component" menu + public class ComponentWithNestedValues : MonoBehaviour + { + public A componentWithNestedValuesFieldA; + + [Serializable] + public struct A + { + public int componentWithNestedValuesFieldB; + } + } + } +} diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Tests/TestComponents.cs.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Tests/TestComponents.cs.meta" new file mode 100644 index 00000000..d02fd755 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Tests/TestComponents.cs.meta" @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 6e6ef606524ae487c8cc1910539155f6 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Tests/Unity.InteractiveTutorials.Core.Tests.asmdef" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Tests/Unity.InteractiveTutorials.Core.Tests.asmdef" new file mode 100644 index 00000000..bec57c41 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Tests/Unity.InteractiveTutorials.Core.Tests.asmdef" @@ -0,0 +1,14 @@ +{ + "name": "Unity.InteractiveTutorials.Core.Tests", + "references": [], + "optionalUnityReferences": [ + "TestAssemblies" + ], + "includePlatforms": [], + "excludePlatforms": [], + "allowUnsafeCode": false, + "overrideReferences": false, + "precompiledReferences": [], + "autoReferenced": false, + "defineConstraints": [] +} diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Tests/Unity.InteractiveTutorials.Core.Tests.asmdef.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Tests/Unity.InteractiveTutorials.Core.Tests.asmdef.meta" new file mode 100644 index 00000000..a9667e05 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/Tests/Unity.InteractiveTutorials.Core.Tests.asmdef.meta" @@ -0,0 +1,7 @@ +fileFormatVersion: 2 +guid: 9b5cdcfa354074c2e83d9e9214ca3613 +AssemblyDefinitionImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/package.json" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/package.json" new file mode 100644 index 00000000..4b6e01b0 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/package.json" @@ -0,0 +1,16 @@ +{ + "name": "com.unity.learn.iet-framework", + "displayName": "Interactive Tutorial Core", + "version": "0.2.1-preview.1", + "unity": "2018.4", + "description": "In-Editor Tutorial Framework. This package is mandatory for all In-Editor Tutorials and required by the IET Authoring Tools.", + "keywords": [ + "tutorials" + ], + "dependencies": {}, + "repository": { + "type": "git", + "url": "git@github.cds.internal.unity3d.com:unity/iet-package.git", + "revision": "a1188116bf77ae1e7513684d5df75637c02ebff8" + } +} diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/package.json.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/package.json.meta" new file mode 100644 index 00000000..5e059c3f --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.learn.iet-framework@0.2.1-preview.1/package.json.meta" @@ -0,0 +1,7 @@ +fileFormatVersion: 2 +guid: 3c600c0c4e2a9a3418ce1c4dc084290f +TextScriptImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.package-manager-ui@2.0.8/CHANGELOG.md" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.package-manager-ui@2.0.8/CHANGELOG.md" new file mode 100644 index 00000000..fcb248a7 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.package-manager-ui@2.0.8/CHANGELOG.md" @@ -0,0 +1,140 @@ +# Changelog +All notable changes to this package will be documented in this file. + +The format is based on [Keep a Changelog](http://keepachangelog.com/en/1.0.0/) +and this project adheres to [Semantic Versioning](http://semver.org/spec/v2.0.0.html). + +## [2.0.8] - 2019-09-17 +- Open offline documentations when online documentations are not accessible. + +## [2.0.7] - 2019-03-06 +- Fix version parse for .NET 3.5 + +## [2.0.4] - 2018-12-02 +- Fix version conversion to support different CultureInfos + +## [2.0.3] - 2018-10-10 +- When a preview package is installed, keep showing updates even if "Show Preview Packages" is not checked +- When user as not already choose to show or hide Preview Packages: + - If a preview package is already installed, "Show Preview Packages" is checked + - If no preview packages are installed, "Show Preview Packages" is not checked + +## [2.0.2] - 2018-10-04 +- Documentation Update +- Update dialog title to "Unity Package Manager" + +## [2.0.1] - 2018-09-14 +- Move undesired public classes to internal +- Minor fix to the documentation + +## [2.0.0] - 2018-09-10 +- Always mark a package as up to date when it's not installed +- Add "Advanced" menu +- Hide preview packages by default +- Labelled packages with major version '0' as preview +- Fixed cropped error message +- Disabled downgrading Package Manager UI to incompatible versions +- Updated docs to reflect the new UI +- Fix incorrect verified tag on preview packages +- UI Fixes: + - Change mouse cursor when hovering over links + - Tweak UI layout for better alignment +- Fixed dropdown to work with 2018.3 editor +- Updated style to reflect changes in VisualElements +- Added packages serialization to avoid unnecessary refreshes +- Enable "View Documentation" Button on built-in packages, and make it point to the url contained in the description string +- Added persistent error icon when there are package add or remove errors +- Filter by name, category, version and release tag +- Show All Package by default +- MenuDropdown for All packages/In project/Built-in +- UI redesign +- Remove sentence "This package is installed for..." and all other sentence regarding status of the package +- Hide buttons for embedded, git and local packages +- Display "No results for "" + +## [1.9.9] - 2018-05-09 +- Only show user visible versions in the UI + +## [1.9.8] - 2018-05-01 +- Fixed package to work with 2018.3 +- Deprecated 2018.1 because of its inability to update without error + +## [1.9.6] - 2018-04-10 +- Added ability to choose a package version +- Added loading indicator when retrieving package lists + +## [1.9.5] - 2018-03-28 +- Optimize packages list loading +- Fixes for UXML factories changes in Unity +- UI Fixes: + - "View changes" update position and label should say "View Changelog" + - Packages list should not have padding + - preview and verified tags should be lower case everywhere + - the package displayed name should stay on 1 line + +## [1.9.3] - 2018-03-11 +- Added caching for faster UI response time +- Exposed APIs for the Package Manager UI extension mechanism + +## [1.8.2] - 2018-03-02 +- Modified Tags to reflect new package workflow (Preview -> Released(no tag) -> Verified) + +## [1.8.1] - 2018-02-23 +- Removed Recommended tag if package version is alpha, beta or experimental + +## [1.8.0] - 2018-02-16 +- Removed support built-in packages +- Fixed packages sorting in All tab +- Fixed error reporting with an invalid manifest + +## [1.7.2] - 2018-02-08 +- Fixed errors when an exception is thrown during an operation +- Changed to only show "View Changes" when there is an update button +- Fixed typos in dialog when updating package manager ui + +## [1.7.0] - 2018-02-05 +- Added 'View Documentation' link to package details +- Added 'View changes' link to package details + +## [1.6.1] - 2018-01-30 +### Fixes +- When updating from 1.5.1, ask user to confirm close of window prior to update +- Made window dockable +- Reworked UI styles +- Enhanced keyboard navigation + +## [1.5.1] - 2018-01-18 +### Fixes +- Replaced VisualContainer by VisualElement in code and templates +- Moved "Project->Packages->Manage" menu item to "Window->Package Manager" +- Showed the latest version and description in tab "Install" instead of the current version +- Added "Recommended" tag properly +- Added "Go back to" when latest version is less than current one +- Removed "Update to" when current version is greater than latest one. (case for embedded or local packages) +- Replaced packages action button label: + - "Install" instead of "Add" for packages + - "Enable/Disable" instead of "Add/Remove" for built-in packages +- Added "alpha", "beta", "experimental" and "recommended" tags support +- Added loading progress while opening window +- Added package description and display name update +- Added extra messaging on package state +- Performed Documentation update + +## [1.3.0] - 2017-12-12 +### Changes +- Added assembly definition files +- Forced SemVer to use .NetStandard +- Fixed ValidationSuiteTests tests +- Handled compatible versions returned in PackageInfo + +## [1.2.0] - 2017-11-16 +### Fixes +- Fixed flickering test When_Default_FirstPackageUIElement_HasSelectedClass, use package only +- Fixed documentation +- Added Doxygen configuration file +- Removed unused fields in package.json +- Changed 'Modules' for 'Built In Packages' +- Removed version display for Built In Packages + +## [1.0.0] - 2017-11-10 +### This is the first release of *Unity Package Manager UI*. diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.package-manager-ui@2.0.8/CHANGELOG.md.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.package-manager-ui@2.0.8/CHANGELOG.md.meta" new file mode 100644 index 00000000..abc6762f --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.package-manager-ui@2.0.8/CHANGELOG.md.meta" @@ -0,0 +1,7 @@ +fileFormatVersion: 2 +guid: 6277a751c6c9f46359fc7004b3ee12f0 +TextScriptImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.package-manager-ui@2.0.8/Documentation~/Images/PackageManagerUI-DetailsPane.png" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.package-manager-ui@2.0.8/Documentation~/Images/PackageManagerUI-DetailsPane.png" new file mode 100644 index 00000000..e1c8fc9e Binary files /dev/null and "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.package-manager-ui@2.0.8/Documentation~/Images/PackageManagerUI-DetailsPane.png" differ diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.package-manager-ui@2.0.8/Documentation~/Images/PackageManagerUI-DocSite.png" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.package-manager-ui@2.0.8/Documentation~/Images/PackageManagerUI-DocSite.png" new file mode 100644 index 00000000..25b4fb94 Binary files /dev/null and "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.package-manager-ui@2.0.8/Documentation~/Images/PackageManagerUI-DocSite.png" differ diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.package-manager-ui@2.0.8/Documentation~/Images/PackageManagerUI-ExternalPackageButton.png" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.package-manager-ui@2.0.8/Documentation~/Images/PackageManagerUI-ExternalPackageButton.png" new file mode 100644 index 00000000..df69fdf7 Binary files /dev/null and "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.package-manager-ui@2.0.8/Documentation~/Images/PackageManagerUI-ExternalPackageButton.png" differ diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.package-manager-ui@2.0.8/Documentation~/Images/PackageManagerUI-Main.png" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.package-manager-ui@2.0.8/Documentation~/Images/PackageManagerUI-Main.png" new file mode 100644 index 00000000..c9e1803a Binary files /dev/null and "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.package-manager-ui@2.0.8/Documentation~/Images/PackageManagerUI-Main.png" differ diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.package-manager-ui@2.0.8/Documentation~/Images/PackageManagerUI-SearchResults.png" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.package-manager-ui@2.0.8/Documentation~/Images/PackageManagerUI-SearchResults.png" new file mode 100644 index 00000000..ad43b6b0 Binary files /dev/null and "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.package-manager-ui@2.0.8/Documentation~/Images/PackageManagerUI-SearchResults.png" differ diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.package-manager-ui@2.0.8/Documentation~/Images/PackageManagerUI-StatusBar_Network.png" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.package-manager-ui@2.0.8/Documentation~/Images/PackageManagerUI-StatusBar_Network.png" new file mode 100644 index 00000000..e276b57c Binary files /dev/null and "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.package-manager-ui@2.0.8/Documentation~/Images/PackageManagerUI-StatusBar_Network.png" differ diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.package-manager-ui@2.0.8/Documentation~/Images/PackageManagerUI-StatusBar_Update.png" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.package-manager-ui@2.0.8/Documentation~/Images/PackageManagerUI-StatusBar_Update.png" new file mode 100644 index 00000000..62757a81 Binary files /dev/null and "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.package-manager-ui@2.0.8/Documentation~/Images/PackageManagerUI-StatusBar_Update.png" differ diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.package-manager-ui@2.0.8/Documentation~/Images/PackageManagerUI-checkmark.png" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.package-manager-ui@2.0.8/Documentation~/Images/PackageManagerUI-checkmark.png" new file mode 100644 index 00000000..05dbce91 Binary files /dev/null and "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.package-manager-ui@2.0.8/Documentation~/Images/PackageManagerUI-checkmark.png" differ diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.package-manager-ui@2.0.8/Documentation~/Images/PackageManagerUI-downloadicon.png" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.package-manager-ui@2.0.8/Documentation~/Images/PackageManagerUI-downloadicon.png" new file mode 100644 index 00000000..4393f674 Binary files /dev/null and "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.package-manager-ui@2.0.8/Documentation~/Images/PackageManagerUI-downloadicon.png" differ diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.package-manager-ui@2.0.8/Documentation~/Images/PackageManagerUI-errorflag.png" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.package-manager-ui@2.0.8/Documentation~/Images/PackageManagerUI-errorflag.png" new file mode 100644 index 00000000..a7fa0ef7 Binary files /dev/null and "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.package-manager-ui@2.0.8/Documentation~/Images/PackageManagerUI-errorflag.png" differ diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.package-manager-ui@2.0.8/Documentation~/package-manager-ui.md" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.package-manager-ui@2.0.8/Documentation~/package-manager-ui.md" new file mode 100644 index 00000000..3c969cb1 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.package-manager-ui@2.0.8/Documentation~/package-manager-ui.md" @@ -0,0 +1,372 @@ +# Unity Package Manager + +A package is a container that holds any combination of Assets, Shaders, Textures, plug-ins, icons, and scripts that enhance various parts of your Project, including Unity modules (such as Physics or Animation). Unity packages are newer, more tightly integrated versions of Asset Store packages, able to deliver a wide range of enhancements to Unity. + +Use the Unity Package Manager (in Unity’s top menu: __Window__ > __Package Manager__) to view which packages are available for installation or already installed in your Project. In addition, you can use this window to see [which versions are available](#VersionList), and [install](#PackManInstall), [remove](#PackManRemove), [disable](#PackManDisable), or [update](#PackManUpdate) packages for each Project. + +![Packages window](Images/PackageManagerUI-Main.png) + +The Packages window displays: + +- (A) The [package scope drop-down menu](#scope), which allows you to filter which packages appear in the list. +- (B) The [Advanced button](#advanced), which allows you to display preview packages in addition to packages that have been verified to work with Unity. +- (C) The [search box](#searchText), which allows you to look for packages by name. +- (D) The [packages list view](#PackManLists), which displays all packages that match the filter and search parameters you specify. +- (E) The [package-specific detail view](#PackManDetails), which displays information specific to the package selected in the list. +- (F) The [status bar](#statusbar), which displays messages about the package load status and warnings about the network. +- (G) The [Add package from disk button](#extpkg), which allows you to specify the location of an external package. + + +## Finding packages + +The Packages window displays the following types of Unity packages: + +- **Read-only packages** + + These are packages which the Package Manager downloads from the [Unity package registry](#PackManRegistry) as needed. They are not bundled with the Project source and may have dependencies on other packages in external Projects. This type is typical of most Unity packages. + +- **Local packages** + + These are packages that you saved on your computer in an [external](#extpkg) location outside of your current Unity Project. + +- **Built-in packages** + + These represent some of the core Unity features. You can use these packages to [turn Unity modules on and off](#PackManDisable). + +**Note**: You can find out more about what each module implements in the [Unity Scripting API](https://docs.unity3d.com/ScriptReference/). Each module assembly page lists which APIs the built-in package implements. + +By default, the Packages window displays the list of all packages either registered in the [package registry](#PackManRegistry) or installed [locally](#extpkg). + +The following icons show you package status: + +![check mark](Images/PackageManagerUI-checkmark.png) A check mark indicates that the package is already [installed](#PackManInstall) or [enabled](#PackManDisable). + +![download icon](Images/PackageManagerUI-downloadicon.png) The download icon indicates that the installed packages has [an available update](#PackManUpdate). + +![error indicator](Images/PackageManagerUI-errorflag.png) An error icon indicates that something went wrong during installation or loading. For more advice on resolving errors, see [Error messages](#troubleshooting) below. + +You can [filter](#scope) the list to display only packages installed in your Project (including [local](#extpkg) packages), or display only built-in Unity packages. You can also [search](#searchText) for a specific package by package name, tag, or package version number. + + +### Filtering the list + +To change which packages appear in the list, select the scope you want from the drop-down menu in the left hand corner of the Packages window. + +You can select from these options: + +- The **All packages** scope (the default) displays all packages on the [package registry](#PackManRegistry), regardless of whether they are already installed in your Project. This also includes [local](#extpkg) packages (which are always installed). +- The **In Project** scope displays all packages currently installed in your Project, including [local](#extpkg) packages. +- The **Built-in packages** scope displays only built-in Unity packages. + +When you select a new scope, your choice appears on the package scope drop-down menu and the list displays the packages matching your choice. + +**Note:** If you entered any text in the [search box](#searchText), the list only displays packages which match both the scope and the search criteria. + + +### Advanced button + +The **Advanced** button opens a drop-down menu that allows you to show preview packages. Preview package are not verified to work with Unity and might be unstable. They are not not supported in production environments. + +To show the preview packages that are available, click the **Advanced** button, then click the **Show preview packages** menu item. + + +### Searching for packages + +You can use the search box at the top of the Packages window to find any packages that match the text you enter. The Package Manager updates the package list as you enter text, displaying every package within the current scope that matches. For example, if you enter `web` in the search box, the list displays different results depending on whether you chose the **Built-in packages** scope or the **All packages** scope: + +![Built-in package scope](Images/PackageManagerUI-SearchResults.png) + +You can look for a package by its [package name](#PackManManifestsPackage), its [tag name](#version_tags), or its [package version number](#VersionList). The Package Manager analyzes the text that you enter to detect which method you are using and updates the list of packages dynamically. + +**Package name** + +You can search for either the display name as it appears in the Packages window, or the registered package name that begins with `com.unity`. + +Your search text could match the beginning, middle, or end of the package's name. + +**Tag name** + +To search by tag name, enter one of the package version tags. For example, if you enter `verified` in the search box, only packages with a verified tag appear, regardless of their package name. + +**Version number** + +Enter the [version number](#VersionList) in version order (`MAJOR.MINOR.PATCH`). For example, typing `1` returns all packages with versions matching `1.x.x` (for example, `1.0.0`, `1.3.2`, and `1.10.1` all match but not `0.1.0` ). + + +### Status bar + +The Package Manager displays messages in the status bar at the bottom left of the Packages window. + +There are typically three status messages that you might see. The **Loading packages** message appears briefly the first time you open Packman UI in a new Project. However, if the Package Manager [detects a problem](#troubleshooting), such as a missing network connection, the Package Manager displays a warning in the status bar: + +![Network error message](Images/PackageManagerUI-StatusBar_Network.png) + +You will also often see a message informing you when the last update occurred: + +![Update message](Images/PackageManagerUI-StatusBar_Update.png) + + +## Viewing package details + +The pane on the right side of the Packages window displays details about the selected package. + +![Details pane](Images/PackageManagerUI-DetailsPane.png) + +These details include the following information: + - (A) The display name + - (B) The [version number](#VersionList) (and [tag](#version_tags), if available) + - \(C\) The [links](#links) to open the package documentation page, the package change log (if available), and the license information. + - (D) The official package name from the [registry](#PackManRegistry) starting with `com.unity.` + - (E) The author + - (F) A brief description + - (G) Buttons to [install](#PackManInstall) or [update](#PackManUpdate) a package (or the **Up to date** message if the selected version is already installed) + - (H) The package version drop-down menu + - (I) Buttons to [remove](#PackManRemove) or [disable](#PackManDisable) the package + + +### List of versions + +You can view the list of versions available for the current package by clicking the version drop-down menu beside the **Update to** or **Install** button in the upper right of the Package specific detail view. + +- (A) The main menu displays the current version, the latest version (even if it is a preview), and the verified version. +- (B) The submenu displays all available versions. + +You can select any of these versions for the current package and install that specific version using the **Install** or **Update to** button. + + +### Version tags + +Some packages display tags next to the version number. These tags convey information about that version of the package. + +The Package Manager uses the following values: + +| **Tag** | **Meaning** | +|--|--| +| `Verified` | This package has been verified by Unity's Quality Assurance team to work with a specific version of the Editor. | +| `Preview` | This package is at an early stage of the release cycle and may not have been documented and fully validated by either the development team or Unity's Quality Assurance team. | +| `Local` | This package is located on your local disk but is external to your Unity Project folder. | +| *(no tag)* | This package is considered production quality, which means it is fully validated, documented, supported, and incrementally updated. | + + + +### Finding more information + +You can find out more about a package by viewing its documentation, changelog, or license information. + +To access any of these pages, click the **View documentation**, **View changelog**, or **View licences** links. + +The package page opens in your default browser. + +![Package information page](Images/PackageManagerUI-DocSite.png) + +To switch back and forth between the *Manual* documentation, the *Scripting API* documentation, the *Changelog*, and the *License* information for this package, click the corresponding link at the top of the page. + + +## Installing, removing, disabling, and updating packages +You can perform a variety of tasks through the Packages window: + + - [Install a new package](#PackManInstall) + - [Remove an installed package](#PackManRemove) + - [Disable a built-in package](#PackManDisable) + - [Update an installed package](#PackManUpdate) + - [Specify an external package location](#extpkg) + +### Accessing the Packages window + +To open the Packages window, navigate to Unity's main menu and go to **Window** > **Package Manager**. + + +### Installing a new package + +To install a new package: + +1. Open the Packages window and select **All packages** from the [package scope](#scope) drop-down menu. +2. Select the package you want to install from the [list of packages](#PackManLists). The package information appears in the [details pane](#PackManDetails). +3. Select the version you want from the [version drop-down menu](#VersionList). +4. Click the **Install** button. When the progress bar finishes, the new package is ready to use. + + +### Removing an installed package + +You can only remove packages which are not required by another package. + +When you remove a package, any Editor or run-time functionality which it implemented is no longer available. + +To remove an installed package: + +1. Open the Packages window and select **In Project** (or **All packages**) from the [package scope](#scope) drop-down menu. +2. Select the package you want to remove from the [list of packages](#PackManLists). The package information appears in the [details pane](#PackManDetails). +3. Click the **Remove** button. When the progress bar finishes, the package disappears from the list. + +You can restore a removed package from the list when you are in the **All packages** scope. + + +### Disabling a built-in package + +You can disable a built-in package if you don't need some modules and you want to save resources. However, when you disable a built-in package, the corresponding Unity functionality is no longer available. This results in the following: + +- If you use a Scripting API implemented by a disabled package, you get compiler errors. +- Components implemented by the disabled built-in package are also disabled, which means you cannot add them to any GameObjects. If you have a GameObject that already has one of these components, Unity ignores them in Play mode. You can see them in the Inspector window but they are greyed out to indicate that they are not available. +- When building a game, Unity strips all disabled components. For build targets which support engine code stripping (like WebGL, iOS, and Android), Unity doesn't add any code from a disabled built-in package. + +To disable a built-in package: + 1. Open the Packages window and select **Built-in packages** from the [package scope](#scope) drop-down menu. + 2. Select the package you want to remove from the [list of packages](#PackManLists). Its information appears in the Details pane. + 3. Click the **Disable** button. When the progress bar finishes, the check mark no longer appears next to the built-in package and the **Disable** button becomes an **Enable** button. + +To re-enable a disabled built-in package, click the **Enable** button. + + +### Updating an installed package + +You can update a package while in either the **In Project** or **All** mode: + +1. Open the Packages window. An arrow indicator appears next to any packages that have updates available. +2. Select the package you want to update from the [list of packages](#PackManLists). The package information appears in the [details pane](#PackManDetails). +3. Select the version you want from the [version drop-down menu](#VersionList). +4. Click the **Update to** button. + +When the progress bar finishes, the new package version information appears in the Details pane, and any new functionality is immediately available. + + +### Specifying a local package location + +The Package Manager can load a package from anywhere on your computer even if you saved it outside your Unity Project folder. For example, if you have a package called `com.unity.my-local-package` and you save it on the `Desktop` but your Unity Project is under the `Documents` folder. + +To load a package from your local disk: + +1. Click the plus (`+`) icon in the status bar. + + The **Add package from disk** button appears. + + ![Add package from disk button](Images/PackageManagerUI-ExternalPackageButton.png) + +2. Click the **Add package from disk** button to bring up a file browser. +3. Navigate to the folder root of your local package. +4. Double-click the `package.json` file in the file browser. + + The file browser closes and the package now appears in the [package list](#PackManLists) with the `local` tag. + + +## Error messages + +The Package Manager displays error indicators when it encounters problems: + +- **System-wide issues** + + Error messages that appear in the [status bar](#statusbar) indicate the Package Manager has detected an issue that is not related to a specific package. For example, if the Package Manager cannot access the [package registry server](#PackManRegistry), it displays this message in the status bar: + + ![Network error message](Images/PackageManagerUI-StatusBar_Network.png) + + If your network cannot reach the package registry server, it is probably because there is a connection problem with the network. When you or your system administrator fix the network error, the status bar clears. + +- **Package-specific issues** + + If a specific package has a problem when loading or installing, the error icon (![error indicator](Images/PackageManagerUI-errorflag.png)) appears in the [package list](#PackManLists) next to the compromised package. To find out what the problem is, open the compromised package's [details pane](#PackManDetails). + +## Understanding how packages work + +In addition to its contents (Assets, Shaders, Textures, plug-ins, icons, and scripts), a Unity package contains a [package manifest file](#PackManManifestsPackage). The package manifest tells Unity how to display its information page in the Packages window, and how to install the package in the Project. + +It also contains several files that help manage package deployment, including the tests, samples, license, changelog, and documentation. + + +### Manifests + +There are two types of manifest files: [Project](#PackManManifestsProject) manifests (`manifest.json`), and [package](#PackManManifestsPackage) manifests (`package.json`). Both files use JSON (JavaScript Object Notation) syntax to communicate with the Package Manager, by describing which packages are available for each Project, and what each package contains. + + +#### Project manifests + +Project manifests (`manifest.json`) tell the Package Manager which packages and versions are available to the Project. + +Project manifests support the following value: + +| Key | JSON Type | Description | +|--|--|--| +| `dependencies` | Object |List of packages for the Package Manager to load. These are usually packages officially registered with Unity, but may also include [local packages that are external](#extpkg) to your Unity project. | + + +Example of a `manifest.json` file: + + { + "dependencies": { + "com.unity.package-1": "1.0.0", + "com.unity.package-2": "2.0.0", + "com.unity.package-3": "3.0.0", + "com.unity.my-local-package": "file://com.unity.my-local-package" + } + } + +Unity stores each Project manifest in the `[your_Project_root_folder]/Packages/manifest.json` file. + + +#### Package manifests + +The Package Manager uses package manifests (`package.json`) to determine which version of the package to load, and what information to display in the Packages window. + +Package manifests support the following values: + +| Key | JSON Type | Description | +|--|--|--| +| `name` | String |The officially registered package name, following this naming convention: `"com.unity.[package name]"`. For example, `"com.unity.resourcemanager"` | +| `displayName` | String |The package name as it appears in the Packages window. For example, `"Resource Manager"` | +| `version` | String |The package version `"MAJOR.MINOR.PATCH"`. Unity packages follow the [Semantic Versioning](https://semver.org) system. For example, `"1.3.0"`. | +| `unity` | String |The Unity version that supports this package. For example, `"2018.1"` indicates compatibility starting with Unity version 2018.1. | +| `description` | String |A brief description of the package. This is the text that appears on the Details pane of the Packages window. Some special formatting character codes are supported, such as line breaks (`\n`) and bullets (`\u25AA`). | +| `category` | String |The category this packages is in. For example, `"Forces"`. | +| `dependencies` | Object |A list of packages that this package depends on, expressed as a JSON dictionary where the key is the package name and the value is the version number. Unity downloads all dependencies and loads them into the project alongside this package. | + +Example of a `package.json` file: + + { + "name": "com.unity.package-4", + "displayName": "Package Number 4", + "version": "2.5.1", + "unity": "2018.2", + "description": "This package provides X, Y, and Z. \n\nTo find out more, click the \"View documentation\" link.", + "keywords": ["key X", "key Y", "key Z"], + "category": "Controllers", + "dependencies": { + "com.unity.package-1": "1.0.0", + "com.unity.package-2": "2.0.0", + "com.unity.package-3": "3.0.0" + } + } + +Unity stores each package manifest in the `[package_root_folder]/package.json` file. + + +### Package registry + +Unity maintains a central registry of official packages that are available for distribution. When Unity loads, the Package Manager communicates with the registry, checks the Project manifest file, and displays the status of each available package in the Packages window. + +When you remove a package from the Project, the Package Manager updates the Project manifest to exclude that package from the list when in **In Project** mode but it is still available in **All packages** mode because it is still in the registry. + +When you install or update a package, the Package Manager downloads the package from the registry. + +# Technical details + +## Requirements + +This version of Unity Package Manager is compatible with the following versions of the Unity Editor: + +* 2018.3 and later (recommended) + +## Documentation revision history +|Date|Reason| +|---|---| +|October 3, 2018|Documentation updated. Image updates and minor corrections.| +|September 14, 2018|Documentation updated. Matches package version 2.0.1.| +|June 4, 2018|Documentation updated. Matches package version 2.0.0.| +|May 25, 2018|Documentation updated. Matches package version 1.9.9.| +|May 4, 2018|Documentation updated. Matches package version 1.9.8.| +|March 19, 2018|Documentation updated. Matches package version 1.9.0.| +|Feb 8, 2018|Documentation updated. Matches package version 1.7.0.| +|Feb 6, 2018|Documentation cleaned up. Matches package version 1.6.1.| +|Jan 31, 2018|Documentation updated (developmental review)| +|Jan 29, 2018|Document updated. Matches package version 1.6.0.| +|Jan 18, 2018|Document updated. Matches package version 1.5.1.| +|Jan 17, 2018|Document updated. Matches package version 1.5.0.| +|Jan 12, 2018|Document updated. Matches package version 1.4.0.| +|Nov 7, 2017|Document created. Matches package version 1.0.0.| \ No newline at end of file diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.package-manager-ui@2.0.8/Editor.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.package-manager-ui@2.0.8/Editor.meta" new file mode 100644 index 00000000..33f59435 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.package-manager-ui@2.0.8/Editor.meta" @@ -0,0 +1,10 @@ +fileFormatVersion: 2 +guid: 797cf0c5f1b7e4e1ab17481bd9b698eb +folderAsset: yes +timeCreated: 1501783286 +licenseType: Pro +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.package-manager-ui@2.0.8/Editor/AssemblyInfo.cs" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.package-manager-ui@2.0.8/Editor/AssemblyInfo.cs" new file mode 100644 index 00000000..3aaf347a --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.package-manager-ui@2.0.8/Editor/AssemblyInfo.cs" @@ -0,0 +1,8 @@ +using System.Runtime.CompilerServices; +using UnityEditor.Experimental.UIElements; + +[assembly: InternalsVisibleTo("Unity.PackageManagerCaptain.Editor")] +[assembly: InternalsVisibleTo("Unity.PackageManagerUI.EditorTests")] +#if UNITY_2018_3_OR_NEWER +[assembly: UxmlNamespacePrefix("UnityEditor.PackageManager.UI", "upm")] +#endif diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.package-manager-ui@2.0.8/Editor/AssemblyInfo.cs.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.package-manager-ui@2.0.8/Editor/AssemblyInfo.cs.meta" new file mode 100644 index 00000000..986a6967 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.package-manager-ui@2.0.8/Editor/AssemblyInfo.cs.meta" @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: ca53a6f1e29564d528bb56b92e0f181c +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.package-manager-ui@2.0.8/Editor/Resources.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.package-manager-ui@2.0.8/Editor/Resources.meta" new file mode 100644 index 00000000..837bded3 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.package-manager-ui@2.0.8/Editor/Resources.meta" @@ -0,0 +1,10 @@ +fileFormatVersion: 2 +guid: b0c12f0066bd444a1b3a900679169f30 +folderAsset: yes +timeCreated: 1501783300 +licenseType: Pro +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.package-manager-ui@2.0.8/Editor/Resources/Images.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.package-manager-ui@2.0.8/Editor/Resources/Images.meta" new file mode 100644 index 00000000..70921ee3 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.package-manager-ui@2.0.8/Editor/Resources/Images.meta" @@ -0,0 +1,10 @@ +fileFormatVersion: 2 +guid: da0b41deddf0a4414b09681018c171f1 +folderAsset: yes +timeCreated: 1502292048 +licenseType: Pro +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.package-manager-ui@2.0.8/Editor/Resources/Images/Dark.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.package-manager-ui@2.0.8/Editor/Resources/Images/Dark.meta" new file mode 100644 index 00000000..fb0032ce --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.package-manager-ui@2.0.8/Editor/Resources/Images/Dark.meta" @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 8c25f8b5c9da143328c516248414b95d +folderAsset: yes +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.package-manager-ui@2.0.8/Editor/Resources/Images/Dark/download.png" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.package-manager-ui@2.0.8/Editor/Resources/Images/Dark/download.png" new file mode 100644 index 00000000..13e377b7 Binary files /dev/null and "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.package-manager-ui@2.0.8/Editor/Resources/Images/Dark/download.png" differ diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.package-manager-ui@2.0.8/Editor/Resources/Images/Dark/download.png.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.package-manager-ui@2.0.8/Editor/Resources/Images/Dark/download.png.meta" new file mode 100644 index 00000000..9769775d --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.package-manager-ui@2.0.8/Editor/Resources/Images/Dark/download.png.meta" @@ -0,0 +1,105 @@ +fileFormatVersion: 2 +guid: 4dfd3f5da88944ec6ac5977d676c30c6 +TextureImporter: + fileIDToRecycleName: {} + externalObjects: {} + serializedVersion: 5 + mipmaps: + mipMapMode: 0 + enableMipMap: 0 + sRGBTexture: 1 + linearTexture: 0 + fadeOut: 0 + borderMipMap: 0 + mipMapsPreserveCoverage: 0 + alphaTestReferenceValue: 0.5 + mipMapFadeDistanceStart: 1 + mipMapFadeDistanceEnd: 3 + bumpmap: + convertToNormalMap: 0 + externalNormalMap: 0 + heightScale: 0.25 + normalMapFilter: 0 + isReadable: 0 + grayScaleToAlpha: 0 + generateCubemap: 6 + cubemapConvolution: 0 + seamlessCubemap: 0 + textureFormat: 1 + maxTextureSize: 2048 + textureSettings: + serializedVersion: 2 + filterMode: -1 + aniso: -1 + mipBias: -1 + wrapU: 1 + wrapV: 1 + wrapW: -1 + nPOTScale: 0 + lightmap: 0 + compressionQuality: 50 + spriteMode: 1 + spriteExtrude: 1 + spriteMeshType: 1 + alignment: 0 + spritePivot: {x: 0.5, y: 0.5} + spriteBorder: {x: 0, y: 0, z: 0, w: 0} + spritePixelsToUnits: 100 + alphaUsage: 1 + alphaIsTransparency: 1 + spriteTessellationDetail: -1 + textureType: 8 + textureShape: 1 + singleChannelComponent: 0 + maxTextureSizeSet: 0 + compressionQualitySet: 0 + textureFormatSet: 0 + platformSettings: + - serializedVersion: 2 + buildTarget: DefaultTexturePlatform + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Standalone + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: iPhone + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 0 + spriteSheet: + serializedVersion: 2 + sprites: [] + outline: [] + physicsShape: [] + bones: [] + spriteID: + vertices: [] + indices: + edges: [] + weights: [] + spritePackingTag: + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.package-manager-ui@2.0.8/Editor/Resources/Images/Dark/error.png" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.package-manager-ui@2.0.8/Editor/Resources/Images/Dark/error.png" new file mode 100644 index 00000000..a6e1c097 Binary files /dev/null and "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.package-manager-ui@2.0.8/Editor/Resources/Images/Dark/error.png" differ diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.package-manager-ui@2.0.8/Editor/Resources/Images/Dark/error.png.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.package-manager-ui@2.0.8/Editor/Resources/Images/Dark/error.png.meta" new file mode 100644 index 00000000..ef50b34f --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.package-manager-ui@2.0.8/Editor/Resources/Images/Dark/error.png.meta" @@ -0,0 +1,97 @@ +fileFormatVersion: 2 +guid: acc34040a66fe4170bc8885268860cfe +TextureImporter: + fileIDToRecycleName: {} + externalObjects: {} + serializedVersion: 6 + mipmaps: + mipMapMode: 0 + enableMipMap: 0 + sRGBTexture: 1 + linearTexture: 0 + fadeOut: 0 + borderMipMap: 0 + mipMapsPreserveCoverage: 0 + alphaTestReferenceValue: 0.5 + mipMapFadeDistanceStart: 1 + mipMapFadeDistanceEnd: 3 + bumpmap: + convertToNormalMap: 0 + externalNormalMap: 0 + heightScale: 0.25 + normalMapFilter: 0 + isReadable: 0 + streamingMipmaps: 0 + streamingMipmapsPriority: 0 + grayScaleToAlpha: 0 + generateCubemap: 6 + cubemapConvolution: 0 + seamlessCubemap: 0 + textureFormat: 1 + maxTextureSize: 2048 + textureSettings: + serializedVersion: 2 + filterMode: -1 + aniso: -1 + mipBias: -100 + wrapU: 1 + wrapV: 1 + wrapW: -1 + nPOTScale: 0 + lightmap: 0 + compressionQuality: 50 + spriteMode: 1 + spriteExtrude: 1 + spriteMeshType: 1 + alignment: 0 + spritePivot: {x: 0.5, y: 0.5} + spritePixelsToUnits: 100 + spriteBorder: {x: 0, y: 0, z: 0, w: 0} + spriteGenerateFallbackPhysicsShape: 1 + alphaUsage: 1 + alphaIsTransparency: 1 + spriteTessellationDetail: -1 + textureType: 8 + textureShape: 1 + singleChannelComponent: 0 + maxTextureSizeSet: 0 + compressionQualitySet: 0 + textureFormatSet: 0 + platformSettings: + - serializedVersion: 2 + buildTarget: DefaultTexturePlatform + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Standalone + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 0 + spriteSheet: + serializedVersion: 2 + sprites: [] + outline: [] + physicsShape: [] + bones: [] + spriteID: + vertices: [] + indices: + edges: [] + weights: [] + spritePackingTag: + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.package-manager-ui@2.0.8/Editor/Resources/Images/Dark/loading.png" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.package-manager-ui@2.0.8/Editor/Resources/Images/Dark/loading.png" new file mode 100644 index 00000000..fd36a035 Binary files /dev/null and "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.package-manager-ui@2.0.8/Editor/Resources/Images/Dark/loading.png" differ diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.package-manager-ui@2.0.8/Editor/Resources/Images/Dark/loading.png.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.package-manager-ui@2.0.8/Editor/Resources/Images/Dark/loading.png.meta" new file mode 100644 index 00000000..0f1828e0 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.package-manager-ui@2.0.8/Editor/Resources/Images/Dark/loading.png.meta" @@ -0,0 +1,105 @@ +fileFormatVersion: 2 +guid: 3cf132d4fa07f4f0cb2883499c5c7dd0 +TextureImporter: + fileIDToRecycleName: {} + externalObjects: {} + serializedVersion: 5 + mipmaps: + mipMapMode: 0 + enableMipMap: 0 + sRGBTexture: 1 + linearTexture: 0 + fadeOut: 0 + borderMipMap: 0 + mipMapsPreserveCoverage: 0 + alphaTestReferenceValue: 0.5 + mipMapFadeDistanceStart: 1 + mipMapFadeDistanceEnd: 3 + bumpmap: + convertToNormalMap: 0 + externalNormalMap: 0 + heightScale: 0.25 + normalMapFilter: 0 + isReadable: 0 + grayScaleToAlpha: 0 + generateCubemap: 6 + cubemapConvolution: 0 + seamlessCubemap: 0 + textureFormat: 1 + maxTextureSize: 2048 + textureSettings: + serializedVersion: 2 + filterMode: -1 + aniso: -1 + mipBias: -1 + wrapU: 1 + wrapV: 1 + wrapW: -1 + nPOTScale: 0 + lightmap: 0 + compressionQuality: 50 + spriteMode: 1 + spriteExtrude: 1 + spriteMeshType: 1 + alignment: 0 + spritePivot: {x: 0.5, y: 0.5} + spriteBorder: {x: 0, y: 0, z: 0, w: 0} + spritePixelsToUnits: 100 + alphaUsage: 1 + alphaIsTransparency: 1 + spriteTessellationDetail: -1 + textureType: 8 + textureShape: 1 + singleChannelComponent: 0 + maxTextureSizeSet: 0 + compressionQualitySet: 0 + textureFormatSet: 0 + platformSettings: + - serializedVersion: 2 + buildTarget: DefaultTexturePlatform + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Standalone + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: iPhone + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 0 + spriteSheet: + serializedVersion: 2 + sprites: [] + outline: [] + physicsShape: [] + bones: [] + spriteID: 66120540d98c346bab32966fe3676afd + vertices: [] + indices: + edges: [] + weights: [] + spritePackingTag: + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.package-manager-ui@2.0.8/Editor/Resources/Images/Light.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.package-manager-ui@2.0.8/Editor/Resources/Images/Light.meta" new file mode 100644 index 00000000..eee80319 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.package-manager-ui@2.0.8/Editor/Resources/Images/Light.meta" @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 907731821455c4fa989ac14278e02251 +folderAsset: yes +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.package-manager-ui@2.0.8/Editor/Resources/Images/Light/download.png" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.package-manager-ui@2.0.8/Editor/Resources/Images/Light/download.png" new file mode 100644 index 00000000..0af6af8d Binary files /dev/null and "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.package-manager-ui@2.0.8/Editor/Resources/Images/Light/download.png" differ diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.package-manager-ui@2.0.8/Editor/Resources/Images/Light/download.png.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.package-manager-ui@2.0.8/Editor/Resources/Images/Light/download.png.meta" new file mode 100644 index 00000000..5cfce239 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.package-manager-ui@2.0.8/Editor/Resources/Images/Light/download.png.meta" @@ -0,0 +1,105 @@ +fileFormatVersion: 2 +guid: f8eca3a711f4842eba0c52ea9885ef7f +TextureImporter: + fileIDToRecycleName: {} + externalObjects: {} + serializedVersion: 5 + mipmaps: + mipMapMode: 0 + enableMipMap: 0 + sRGBTexture: 1 + linearTexture: 0 + fadeOut: 0 + borderMipMap: 0 + mipMapsPreserveCoverage: 0 + alphaTestReferenceValue: 0.5 + mipMapFadeDistanceStart: 1 + mipMapFadeDistanceEnd: 3 + bumpmap: + convertToNormalMap: 0 + externalNormalMap: 0 + heightScale: 0.25 + normalMapFilter: 0 + isReadable: 0 + grayScaleToAlpha: 0 + generateCubemap: 6 + cubemapConvolution: 0 + seamlessCubemap: 0 + textureFormat: 1 + maxTextureSize: 2048 + textureSettings: + serializedVersion: 2 + filterMode: -1 + aniso: -1 + mipBias: -1 + wrapU: 1 + wrapV: 1 + wrapW: -1 + nPOTScale: 0 + lightmap: 0 + compressionQuality: 50 + spriteMode: 1 + spriteExtrude: 1 + spriteMeshType: 1 + alignment: 0 + spritePivot: {x: 0.5, y: 0.5} + spriteBorder: {x: 0, y: 0, z: 0, w: 0} + spritePixelsToUnits: 100 + alphaUsage: 1 + alphaIsTransparency: 1 + spriteTessellationDetail: -1 + textureType: 8 + textureShape: 1 + singleChannelComponent: 0 + maxTextureSizeSet: 0 + compressionQualitySet: 0 + textureFormatSet: 0 + platformSettings: + - serializedVersion: 2 + buildTarget: DefaultTexturePlatform + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Standalone + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: iPhone + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 0 + spriteSheet: + serializedVersion: 2 + sprites: [] + outline: [] + physicsShape: [] + bones: [] + spriteID: + vertices: [] + indices: + edges: [] + weights: [] + spritePackingTag: + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.package-manager-ui@2.0.8/Editor/Resources/Images/Light/error.png" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.package-manager-ui@2.0.8/Editor/Resources/Images/Light/error.png" new file mode 100644 index 00000000..a6e1c097 Binary files /dev/null and "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.package-manager-ui@2.0.8/Editor/Resources/Images/Light/error.png" differ diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.package-manager-ui@2.0.8/Editor/Resources/Images/Light/error.png.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.package-manager-ui@2.0.8/Editor/Resources/Images/Light/error.png.meta" new file mode 100644 index 00000000..5de6c97a --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.package-manager-ui@2.0.8/Editor/Resources/Images/Light/error.png.meta" @@ -0,0 +1,97 @@ +fileFormatVersion: 2 +guid: 4c433abcdb28444ebb7bd395ba5c76fc +TextureImporter: + fileIDToRecycleName: {} + externalObjects: {} + serializedVersion: 6 + mipmaps: + mipMapMode: 0 + enableMipMap: 0 + sRGBTexture: 1 + linearTexture: 0 + fadeOut: 0 + borderMipMap: 0 + mipMapsPreserveCoverage: 0 + alphaTestReferenceValue: 0.5 + mipMapFadeDistanceStart: 1 + mipMapFadeDistanceEnd: 3 + bumpmap: + convertToNormalMap: 0 + externalNormalMap: 0 + heightScale: 0.25 + normalMapFilter: 0 + isReadable: 0 + streamingMipmaps: 0 + streamingMipmapsPriority: 0 + grayScaleToAlpha: 0 + generateCubemap: 6 + cubemapConvolution: 0 + seamlessCubemap: 0 + textureFormat: 1 + maxTextureSize: 2048 + textureSettings: + serializedVersion: 2 + filterMode: -1 + aniso: -1 + mipBias: -100 + wrapU: 1 + wrapV: 1 + wrapW: -1 + nPOTScale: 0 + lightmap: 0 + compressionQuality: 50 + spriteMode: 1 + spriteExtrude: 1 + spriteMeshType: 1 + alignment: 0 + spritePivot: {x: 0.5, y: 0.5} + spritePixelsToUnits: 100 + spriteBorder: {x: 0, y: 0, z: 0, w: 0} + spriteGenerateFallbackPhysicsShape: 1 + alphaUsage: 1 + alphaIsTransparency: 1 + spriteTessellationDetail: -1 + textureType: 8 + textureShape: 1 + singleChannelComponent: 0 + maxTextureSizeSet: 0 + compressionQualitySet: 0 + textureFormatSet: 0 + platformSettings: + - serializedVersion: 2 + buildTarget: DefaultTexturePlatform + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Standalone + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 0 + spriteSheet: + serializedVersion: 2 + sprites: [] + outline: [] + physicsShape: [] + bones: [] + spriteID: + vertices: [] + indices: + edges: [] + weights: [] + spritePackingTag: + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.package-manager-ui@2.0.8/Editor/Resources/Images/Light/loading.png" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.package-manager-ui@2.0.8/Editor/Resources/Images/Light/loading.png" new file mode 100644 index 00000000..f3828db9 Binary files /dev/null and "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.package-manager-ui@2.0.8/Editor/Resources/Images/Light/loading.png" differ diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.package-manager-ui@2.0.8/Editor/Resources/Images/Light/loading.png.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.package-manager-ui@2.0.8/Editor/Resources/Images/Light/loading.png.meta" new file mode 100644 index 00000000..29433252 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.package-manager-ui@2.0.8/Editor/Resources/Images/Light/loading.png.meta" @@ -0,0 +1,105 @@ +fileFormatVersion: 2 +guid: 01e02995805eb483690380a911a657e2 +TextureImporter: + fileIDToRecycleName: {} + externalObjects: {} + serializedVersion: 5 + mipmaps: + mipMapMode: 0 + enableMipMap: 0 + sRGBTexture: 1 + linearTexture: 0 + fadeOut: 0 + borderMipMap: 0 + mipMapsPreserveCoverage: 0 + alphaTestReferenceValue: 0.5 + mipMapFadeDistanceStart: 1 + mipMapFadeDistanceEnd: 3 + bumpmap: + convertToNormalMap: 0 + externalNormalMap: 0 + heightScale: 0.25 + normalMapFilter: 0 + isReadable: 0 + grayScaleToAlpha: 0 + generateCubemap: 6 + cubemapConvolution: 0 + seamlessCubemap: 0 + textureFormat: 1 + maxTextureSize: 2048 + textureSettings: + serializedVersion: 2 + filterMode: -1 + aniso: -1 + mipBias: -1 + wrapU: 1 + wrapV: 1 + wrapW: -1 + nPOTScale: 0 + lightmap: 0 + compressionQuality: 50 + spriteMode: 1 + spriteExtrude: 1 + spriteMeshType: 1 + alignment: 0 + spritePivot: {x: 0.5, y: 0.5} + spriteBorder: {x: 0, y: 0, z: 0, w: 0} + spritePixelsToUnits: 100 + alphaUsage: 1 + alphaIsTransparency: 1 + spriteTessellationDetail: -1 + textureType: 8 + textureShape: 1 + singleChannelComponent: 0 + maxTextureSizeSet: 0 + compressionQualitySet: 0 + textureFormatSet: 0 + platformSettings: + - serializedVersion: 2 + buildTarget: DefaultTexturePlatform + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: Standalone + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 0 + - serializedVersion: 2 + buildTarget: iPhone + maxTextureSize: 2048 + resizeAlgorithm: 0 + textureFormat: -1 + textureCompression: 1 + compressionQuality: 50 + crunchedCompression: 0 + allowsAlphaSplitting: 0 + overridden: 0 + androidETC2FallbackOverride: 0 + spriteSheet: + serializedVersion: 2 + sprites: [] + outline: [] + physicsShape: [] + bones: [] + spriteID: f6ebd98fa3a904bd4bb57dae59f0a4ce + vertices: [] + indices: + edges: [] + weights: [] + spritePackingTag: + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.package-manager-ui@2.0.8/Editor/Resources/Styles.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.package-manager-ui@2.0.8/Editor/Resources/Styles.meta" new file mode 100644 index 00000000..a8c0801e --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.package-manager-ui@2.0.8/Editor/Resources/Styles.meta" @@ -0,0 +1,10 @@ +fileFormatVersion: 2 +guid: fe684bbd80eab45778b9eb316893ff7c +folderAsset: yes +timeCreated: 1502132899 +licenseType: Pro +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.package-manager-ui@2.0.8/Editor/Resources/Styles/Main_Dark.scss" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.package-manager-ui@2.0.8/Editor/Resources/Styles/Main_Dark.scss" new file mode 100644 index 00000000..1e4b87b2 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.package-manager-ui@2.0.8/Editor/Resources/Styles/Main_Dark.scss" @@ -0,0 +1,74 @@ +/*************************************************************************************************** + + *** Auto-Generated - Do not modify .uss File *** + + Only Modify Main.scss + +***************************************************************************************************/ + +//-------------------------------------------------------------------------------------------------- +// Pure theme colors +//-------------------------------------------------------------------------------------------------- + +$unity-text-color: #b4b4b4; +$unity-list-hover-background: #484848; +$unity-list-selected-background: #3e5f96; +$unity-background: #383838; + +//-------------------------------------------------------------------------------------------------- +// Custom colors +//-------------------------------------------------------------------------------------------------- + +$unity-background-light-contrast: #3c3c3c; // For dark contrast, use: #404040 and #232323 +$unity-background-dark-contrast: #707070; // $ +$unity-text-color-highlight: #f4f4f4; + +$unity-installed-color-highlight: rgba(255,255,254,0.4); +$not-installed-package-background-color: #424242; + +$package-tag-color: #ffa44e; +$package-tag-recommended-color: #e4e4e4; + +$caret-text-color: #646464; + +$link-text-color: #4F80F8; + +//-------------------------------------------------------------------------------------------------- +// Custom backgrounds +//-------------------------------------------------------------------------------------------------- +$installed-package-background: resource("Builtin Skins/DarkSkin/Images/MenuItemOn.png"); + +$background-left-button: resource("Builtin Skins/DarkSkin/Images/btn left.png"); +$background-left-button-selected: resource("Builtin Skins/DarkSkin/Images/btn left on.png");; +$background-mid-button: resource("Builtin Skins/DarkSkin/Images/btn mid.png"); +$background-mid-button-selected: resource("Builtin Skins/DarkSkin/Images/btn mid on.png"); +$background-right-button: resource("Builtin Skins/DarkSkin/Images/btn right.png"); +$background-right-button-selected: resource("Builtin Skins/DarkSkin/Images/btn right on.png"); + +$background-button-slice-right: 0; +$background-button-slice-left: 0; +$background-button-slice-middle: 1; + +$background-status-outdated: resource("Images/Dark/download"); +$background-status-error: resource("Images/Dark/error"); + +$background-spinner-normal: resource("Images/Dark/loading"); +$background-spinner-large: resource("Images/Dark/loading"); + +$popup-background: resource("Builtin Skins/DarkSkin/Images/mini popup.png"); + +$toolbar-background: resource("Builtin Skins/DarkSkin/Images/Toolbar.png"); +$toolbar-button-background: resource("Builtin Skins/DarkSkin/Images/toolbar button.png"); +$toolbar-button-active-background: resource("Builtin Skins/DarkSkin/Images/toolbar button act.png"); +$toolbar-button-pulldown-background: resource("Builtin Skins/DarkSkin/Images/toolbar pulldown.png"); +$toolbar-button-popup-background: resource("Builtin Skins/DarkSkin/Images/toolbar popup.png"); +$toolbar-search-textfield-background: resource("Builtin Skins/DarkSkin/Images/toolbarsearch.png"); +$toolbar-search-textfield-focus-background: resource("Builtin Skins/DarkSkin/Images/toolbarsearch focused.png"); +$toolbar-search-cancel-background: resource("Builtin Skins/DarkSkin/Images/toolbarsearchCancelButton.png"); +$toolbar-search-cancel-active-background: resource("Builtin Skins/DarkSkin/Images/toolbarsearchCancelButtonActive.png"); +$toolbar-search-cancel-off-background: resource("Builtin Skins/DarkSkin/Images/toolbarsearchCancelButtonOff.png"); + +//-------------------------------------------------------------------------------------------------- +// Common stylesheet +//-------------------------------------------------------------------------------------------------- +@import "common"; diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.package-manager-ui@2.0.8/Editor/Resources/Styles/Main_Dark.scss.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.package-manager-ui@2.0.8/Editor/Resources/Styles/Main_Dark.scss.meta" new file mode 100644 index 00000000..75616f4f --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.package-manager-ui@2.0.8/Editor/Resources/Styles/Main_Dark.scss.meta" @@ -0,0 +1,7 @@ +fileFormatVersion: 2 +guid: 880f2fc52037c4fe09edb80cfe84ac7c +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.package-manager-ui@2.0.8/Editor/Resources/Styles/Main_Dark.uss" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.package-manager-ui@2.0.8/Editor/Resources/Styles/Main_Dark.uss" new file mode 100644 index 00000000..c7aa8316 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.package-manager-ui@2.0.8/Editor/Resources/Styles/Main_Dark.uss" @@ -0,0 +1,1038 @@ +/*************************************************************************************************** + + *** Auto-Generated - Do not modify .uss File *** + + Only Modify Main.scss + +***************************************************************************************************/ +#container { + -unity-position: absolute; + top: 0; + left: 0; + bottom: 0; + right: 0; +} + +.display-none { + position: absolute; + overflow: hidden; + border-radius: 0; + width: 0; + height: 0; + min-height: 0; + max-height: 0; + min-width: 0; + max-width: 0; + border-top-width: 0; + border-left-width: 0; + border-bottom-width: 0; + border-right-width: 0; + border-top-width: 0; + border-left-width: 0; + border-bottom-width: 0; + border-right-width: 0; + padding-top: 0; + padding-left: 0; + padding-bottom: 0; + padding-right: 0; + margin-top: 0; + margin-left: 0; + margin-bottom: 0; + margin-right: 0; +} + +.row, #detailListView .combo, #detailListView #detailView .detail #detailActions, #detailListView #detailView .detail .detailActions, #detailListView #detailView .detail .versionContainer { + flex: 1 0 0; + flex-direction: row; +} + +.column, #detailListView .emptyArea, #detailListView #packageListGroup #listContainerOuter, #detailListView #packageListGroup #packageList, #detailListView #packageListGroup #listContainer, #detailListView #packageListGroup #listGroups, #detailListView #packageListGroup #scrollView { + flex: 1 0 0; + flex-direction: column; +} + +.tag { + border-top-width: 1; + border-left-width: 1; + border-bottom-width: 1; + border-right-width: 1; + padding-top: 1; + padding-left: 3; + padding-bottom: 1; + padding-right: 3; + font-size: 9; + border-radius: 5; + -unity-text-align: middle-center; + border-color: #000000; + color: #000000; +} + +#toolbarContainer { + flex: 0 0 auto; + flex-direction: row; + align-items: flex-start; + height: 18; +} +#toolbarContainer #toolbarView { + flex: 1 0 0; + flex-direction: row; + align-items: flex-start; + background-image: resource("Builtin Skins/DarkSkin/Images/Toolbar.png"); + margin-top: -1; + -unity-slice-top: 1; + -unity-slice-left: 1; + -unity-slice-bottom: 1; + -unity-slice-right: 1; +} +#toolbarContainer #toolbarView .toolbarButton { + flex: 1 0 0; + font-size: 9; + -unity-text-align: middle-center; + background-image: resource("Builtin Skins/DarkSkin/Images/toolbar button.png"); + flex: 0 0 auto; + padding-top: 0; + padding-left: 0; + padding-bottom: 0; + padding-right: 0; + -unity-slice-top: 4; + -unity-slice-left: 6; + -unity-slice-bottom: 4; + -unity-slice-right: 6; + margin-top: 0; + margin-left: 0; + margin-bottom: 0; + margin-right: -1; + padding-top: 0; + padding-left: 5; + padding-bottom: 0; + padding-right: 5; + height: 19; +} +#toolbarContainer #toolbarView .toolbarButton.display-none { + position: absolute; + border-radius: 0; + width: 0; + height: 0; + min-height: 0; + max-height: 0; + min-width: 0; + max-width: 0; + border-top-width: 0; + border-left-width: 0; + border-bottom-width: 0; + border-right-width: 0; + min-width: 0; + border-top-width: 0; + border-left-width: 0; + border-bottom-width: 0; + border-right-width: 0; + padding-top: 0; + padding-left: 0; + padding-bottom: 0; + padding-right: 0; + margin-top: 0; + margin-left: 0; + margin-bottom: 0; + margin-right: 0; + -unity-slice-top: 0; + -unity-slice-left: 0; + -unity-slice-bottom: 0; + -unity-slice-right: 0; + visibility: hidden; +} +#toolbarContainer #toolbarView .toolbarButton:hover { + color: #b4b4b4; +} +#toolbarContainer #toolbarView .toolbarButton.space { + margin-left: 7; +} +#toolbarContainer #toolbarView .toolbarButton.active { + background-image: resource("Builtin Skins/DarkSkin/Images/toolbar button act.png"); +} +#toolbarContainer #toolbarView .toolbarButton.pulldown:active { + background-image: resource("Builtin Skins/DarkSkin/Images/toolbar button.png"); +} +#toolbarContainer #toolbarView #toolbarLeft { + flex: 0 0 auto; + flex-direction: row; + align-items: flex-start; +} +#toolbarContainer #toolbarView #toolbarRight { + flex: 1 0 0; + flex-direction: row; + justify-content: flex-end; +} +#toolbarContainer #toolbarView #toolbarRight #toolbarSearch { + flex: 1 0 0; + height: 18; + max-width: 500; + flex-direction: row; + margin-top: 0; + margin-left: 0; + margin-bottom: 0; + margin-right: 5; +} + +#searchContainer { + flex: 1 0 0; + flex-direction: row; + align-items: center; + justify-content: flex-start; + height: 14; + margin-top: 0; + margin-left: 0; + margin-bottom: 0; + margin-right: 0; +} +#searchContainer #searchTextField { + flex: 1 0 0; + font-size: 9; + background-image: resource("Builtin Skins/DarkSkin/Images/toolbarsearch.png"); + margin-top: 2; + margin-left: 5; + margin-bottom: 1; + margin-right: 5; + padding-top: 2; + padding-left: 17; + padding-bottom: 1; + padding-right: 17; + -unity-slice-top: 1; + -unity-slice-left: 14; + -unity-slice-bottom: 1; + -unity-slice-right: 0; + height: 14; +} +#searchContainer #searchTextField:focus { + background-image: resource("Builtin Skins/DarkSkin/Images/toolbarsearch focused.png"); +} +#searchContainer #searchTextField.placeholder { + color: #707070; +} +#searchContainer #searchCancelButton { + width: 14; + height: 15; + background-image: resource("Builtin Skins/DarkSkin/Images/toolbarsearchCancelButtonOff.png"); + flex: 0 0 auto; + padding-top: 0; + padding-left: 0; + padding-bottom: 0; + padding-right: 0; + -unity-slice-top: 4; + -unity-slice-left: 6; + -unity-slice-bottom: 4; + -unity-slice-right: 6; + -unity-slice-top: 1; + -unity-slice-left: 0; + -unity-slice-bottom: 1; + -unity-slice-right: 14; + margin-top: 3; + margin-left: -10; + margin-bottom: 2; + margin-right: 0; + padding-top: 0; + padding-left: 0; + padding-bottom: 0; + padding-right: 0; + border-top-width: 0; + border-left-width: 0; + border-bottom-width: 0; + border-right-width: 0; +} +#searchContainer #searchCancelButton.display-none { + position: absolute; + border-radius: 0; + width: 0; + height: 0; + min-height: 0; + max-height: 0; + min-width: 0; + max-width: 0; + border-top-width: 0; + border-left-width: 0; + border-bottom-width: 0; + border-right-width: 0; + min-width: 0; + border-top-width: 0; + border-left-width: 0; + border-bottom-width: 0; + border-right-width: 0; + padding-top: 0; + padding-left: 0; + padding-bottom: 0; + padding-right: 0; + margin-top: 0; + margin-left: 0; + margin-bottom: 0; + margin-right: 0; + -unity-slice-top: 0; + -unity-slice-left: 0; + -unity-slice-bottom: 0; + -unity-slice-right: 0; + visibility: hidden; +} +#searchContainer #searchCancelButton:hover { + color: #b4b4b4; +} +#searchContainer #searchCancelButton.on { + background-image: resource("Builtin Skins/DarkSkin/Images/toolbarsearchCancelButton.png"); +} +#searchContainer #searchCancelButton:active { + background-image: resource("Builtin Skins/DarkSkin/Images/toolbarsearchCancelButtonActive.png"); +} + +#detailListView { + flex: 1 0 0; + flex-direction: row; +} +#detailListView .link { + color: #4F80F8; + background: rgba(0, 0, 0, 0); + background-image: none; + margin-top: 0; + margin-left: 0; + margin-bottom: 0; + margin-right: 0; + padding-top: 0; + padding-left: 0; + padding-bottom: 0; + padding-right: 0; + cursor: link; +} +#detailListView .emptyArea { + flex: 1 0 0; +} +#detailListView .emptyArea .title { + -unity-text-align: middle-center; + font-size: 14; +} +#detailListView .emptyArea .loading { + -unity-position: relative; + top: 7; + left: 7; + border-top-width: 0; + border-left-width: 0; + border-bottom-width: 0; + border-right-width: 0; + padding-top: 0; + padding-left: 0; + padding-bottom: 0; + padding-right: 0; + margin-top: 0; + margin-left: 0; + margin-bottom: 0; + margin-right: 0; + -unity-slice-top: 0; + -unity-slice-left: 0; + -unity-slice-bottom: 0; + -unity-slice-right: 0; + width: 14; + height: 14; + max-width: 14; + max-height: 14; +} +#detailListView #headerTitle { + flex: 1 0 0; + font-size: 12; + -unity-font-style: bold; + color: #b4b4b4; +} +#detailListView #headerCaret { + flex: 0 0 auto; + font-size: 12; + -unity-font-style: bold; + color: #b4b4b4; + min-width: 16; +} +#detailListView #spinnerContainer { + -unity-position: absolute; + top: 3; + left: 2; + right: 0; + width: 14; + flex: 0.1 0 0; + flex-direction: column; + align-items: center; +} +#detailListView .loading { + -unity-position: relative; + top: 7; + left: 7; + border-top-width: 0; + border-left-width: 0; + border-bottom-width: 0; + border-right-width: 0; + padding-top: 0; + padding-left: 0; + padding-bottom: 0; + padding-right: 0; + margin-top: 0; + margin-left: 0; + margin-bottom: 0; + margin-right: 0; + -unity-slice-top: 0; + -unity-slice-left: 0; + -unity-slice-bottom: 0; + -unity-slice-right: 0; + width: 14; + height: 14; + max-width: 14; + max-height: 14; +} +#detailListView .combo { + margin-top: 3; + margin-left: 3; + margin-bottom: 3; + margin-right: 3; + padding-top: 3; + padding-left: 3; + padding-bottom: 3; + padding-right: 3; +} +#detailListView .combo .popup { + padding-top: 0; + padding-left: 8; + padding-bottom: 0; + padding-right: 0; + margin-top: 0; + margin-left: 0; + margin-bottom: 0; + margin-right: 0; + border-top-width-left-radius: 0; + border-bottom-width-left-radius: 0; +} +#detailListView .combo .button { + flex: 1 0 0; + font-size: 12; + border-top-width: 0; + border-left-width: 0; + border-bottom-width: 0; + border-right-width: 0; + margin-top: 0; + margin-left: 0; + margin-bottom: 0; + margin-right: 0; + padding-top: 2; + padding-left: 6; + padding-bottom: 3; + padding-right: 6; + -unity-slice-top: 4; + -unity-slice-left: 1; + -unity-slice-bottom: 4; + -unity-slice-right: 1; + -unity-text-align: middle-center; + border-left-width: 0; + border-top-width: 0; + border-right-width: 0; + border-bottom-width: 0; + background-image: resource("Builtin Skins/DarkSkin/Images/btn mid.png"); + border-top-width-right-radius: 0; + border-bottom-width-right-radius: 0; + border-top-width-left-radius: 0; + border-bottom-width-left-radius: 0; +} +#detailListView .combo .button.selected { + background-image: resource("Builtin Skins/DarkSkin/Images/btn mid on.png"); + color: #f4f4f4; +} +#detailListView .combo .button.first { + -unity-slice-top: 4; + -unity-slice-left: 6; + -unity-slice-bottom: 4; + -unity-slice-right: 0; + background-image: resource("Builtin Skins/DarkSkin/Images/btn left.png"); +} +#detailListView .combo .button.first.selected { + background-image: resource("Builtin Skins/DarkSkin/Images/btn left on.png"); +} +#detailListView .combo .button.last { + -unity-slice-top: 4; + -unity-slice-left: 0; + -unity-slice-bottom: 4; + -unity-slice-right: 6; + background-image: resource("Builtin Skins/DarkSkin/Images/btn right.png"); +} +#detailListView .combo .button.last.selected { + background-image: resource("Builtin Skins/DarkSkin/Images/btn right on.png"); +} +#detailListView .combo .button.small { + flex: 0.5 0 0; + padding-top: 0; + padding-left: 0; + padding-bottom: 0; + padding-right: 0; +} +#detailListView #packageListGroup { + width: 270; +} +#detailListView #packageListGroup #groupContainerOuter #headerContainer { + flex: 1 0 0; + flex-direction: row; + align-items: center; + border-color: rgba(0, 0, 0, 0.5); +} +#detailListView #packageListGroup #groupContainerOuter #headerContainer #headerTitle { + height: 0; + margin-top: 0; + margin-left: 0; + margin-bottom: 0; + margin-right: 0; + padding-top: 0; + padding-left: 0; + padding-bottom: 0; + padding-right: 0; + border-top-width: 0; + border-left-width: 0; + border-bottom-width: 0; + border-right-width: 0; +} +#detailListView #packageListGroup #groupContainerOuter #groupContainer { + margin-top: 0; + margin-left: 0; + margin-bottom: 0; + margin-right: 0; +} +#detailListView #packageListGroup #scrollView #VerticalScroller { + bottom: 0; +} +#detailListView #packageListGroup #scrollView #HorizontalScroller { + height: 0; +} +#detailListView #packageListGroup #scrollView #ContentViewport { + bottom: 0; +} +#detailListView #packageListGroup #scrollView #ContentViewport #ContentView { + right: 0; + left: 0; +} +#detailListView #packageListGroup #noResult #noResultText { + -unity-word-wrap: true; +} +#detailListView .package { + flex: 1 0 0; + flex-direction: row; + align-items: center; + margin-top: 0; + margin-left: 0; + margin-bottom: 0; + margin-right: 0; + border-color: rgba(0, 0, 0, 0.5); + border-bottom-width: 1; +} +#detailListView .package.selected { + background-color: #3e5f96; + color: #f4f4f4; +} +#detailListView .package.selected #packageName, #detailListView .package.selected #packageVersion { + color: #f4f4f4; +} +#detailListView .package .status { + flex: 0 0 14; + width: 14; + height: 14; + margin-left: 2; + margin-right: 0; +} +#detailListView .package .status.installed { + background-image: resource("Builtin Skins/DarkSkin/Images/MenuItemOn.png"); +} +#detailListView .package .status.installed.no-icon { + background-image: none; +} +#detailListView .package .status.outdated { + background-image: resource("Images/Dark/download"); +} +#detailListView .package .status.outdated.no-icon { + background-image: none; +} +#detailListView .package .status.inprogress { + background-image: none; +} +#detailListView .package .status.error { + background-image: resource("Images/Dark/error"); +} +#detailListView .package .name { + flex: 1 0 0; + font-size: 12; + margin-left: 0; + margin-right: 5; + overflow: hidden; +} +#detailListView .package .version { + flex: 0 0 auto; + margin-left: 0; + margin-right: 5; + font-size: 9; +} +#detailListView #detailsGroup { + flex: 1 0 0; + border-left-width: 1px; + border-color: rgba(0, 0, 0, 0.5); +} +#detailListView #detailsGroup #detailsContainer { + flex: 1 0 0; + flex-direction: column; + -unity-position: relative; +} +#detailListView #detailView { + flex: 1 0 0; +} +#detailListView #detailView #VerticalScroller { + bottom: 0; +} +#detailListView #detailView #ContentViewport #ContentView { + -unity-position: absolute; + top: 0; + left: 0; + right: 0; +} +#detailListView #detailView .detail { + flex: 1 0 0; + flex-direction: column; + padding-top: 5; + padding-left: 5; + padding-bottom: 5; + padding-right: 5; +} +#detailListView #detailView .detail .header { + flex: 1 0 0; + flex-direction: row; + align-items: flex-start; + margin-bottom: 8; +} +#detailListView #detailView .detail .header #titleContainer { + flex: 0.9 0 0; +} +#detailListView #detailView .detail .header #titleContainer #detailTitle { + font-size: 18; + -unity-font-style: bold; + -unity-word-wrap: true; + margin-top: 0; + margin-left: 4; + margin-bottom: 0; + margin-right: 0; +} +#detailListView #detailView .detail .header #detailsControls { + flex: 1 0 0; + height: 19; + flex-direction: row; + align-items: center; + flex-wrap: wrap; + margin-top: 3; + margin-left: 0; + margin-bottom: 0; + margin-right: 0; +} +#detailListView #detailView .detail .header #updateCombo { + flex: 1 0 0; + height: 19; + align-items: center; + margin-top: 0; + margin-left: 0; + margin-bottom: 0; + margin-right: 0; + padding-top: 0; + padding-left: 0; + padding-bottom: 0; + padding-right: 0; +} +#detailListView #detailView .detail .header #updateCombo #update { + flex: 0 0 auto; +} +#detailListView #detailView .detail .header #updateCombo #updateDropdownContainer { + min-width: 65; + max-width: 150; + height: 19; + flex: 0 0 auto; +} +#detailListView #detailView .detail .header #updateCombo #updateDropdownContainer .popup { + font-size: 12; + height: 19; +} +#detailListView #detailView .detail .header #updateCombo #updateDropdownContainer .popup:focus { + background-image: resource("Builtin Skins/DarkSkin/Images/mini popup.png"); +} +#detailListView #detailView .detail .header #updateCombo #updateDropdownContainer .popup:hover .textElement { + color: #b4b4b4; +} +#detailListView #detailView .detail .header #updateCombo #updateDropdownContainer .popup .textElement { + margin-top: 2; +} +#detailListView #detailView .detail .header #updateCombo .action { + flex: 0 0 auto; + margin-top: 0; + margin-left: 0; + margin-bottom: 0; + margin-right: 0; + font-size: 12; + padding-top: 2; + padding-left: 4; + padding-bottom: 3; + padding-right: 4; + right: -3; +} +#detailListView #detailView .detail .header #updateCombo .action:hover { + color: #b4b4b4; +} +#detailListView #detailView .detail .header #updateContainer { + height: 19; + flex: 1 0 0; + align-items: flex-end; + padding-top: 0; + padding-left: 0; + padding-bottom: 0; + padding-right: 0; +} +#detailListView #detailView .detail .header .button { + height: 19; + font-size: 12; + flex: 0 0 auto; + padding-top: 3; + padding-left: 3; + padding-bottom: 4; + padding-right: 3; + -unity-slice-top: 4; + -unity-slice-left: 6; + -unity-slice-bottom: 4; + -unity-slice-right: 6; +} +#detailListView #detailView .detail .header .button.display-none { + position: absolute; + border-radius: 0; + width: 0; + height: 0; + min-height: 0; + max-height: 0; + min-width: 0; + max-width: 0; + border-top-width: 0; + border-left-width: 0; + border-bottom-width: 0; + border-right-width: 0; + min-width: 0; + border-top-width: 0; + border-left-width: 0; + border-bottom-width: 0; + border-right-width: 0; + padding-top: 0; + padding-left: 0; + padding-bottom: 0; + padding-right: 0; + margin-top: 0; + margin-left: 0; + margin-bottom: 0; + margin-right: 0; + -unity-slice-top: 0; + -unity-slice-left: 0; + -unity-slice-bottom: 0; + -unity-slice-right: 0; + visibility: hidden; +} +#detailListView #detailView .detail .header .button:hover { + color: #b4b4b4; +} +#detailListView #detailView .detail #detailVersion { + font-size: 16; + max-height: 30; +} +#detailListView #detailView .detail #detailName { + flex: 1 0 0; + max-height: 20; + -unity-font-style: italic; +} +#detailListView #detailView .detail #detailPackageStatus { + flex: 1 0 0; + -unity-font-style: bold; + -unity-word-wrap: true; +} +#detailListView #detailView .detail #detailTag { + width: 60; + font-size: 12; + border-radius: 5; + border-color: #b4b4b4; + border-top-width: 2; + border-left-width: 2; + border-bottom-width: 2; + border-right-width: 2; + -unity-text-align: middle-center; +} +#detailListView #detailView .detail #detailDesc, #detailListView #detailView .detail #detailModuleReference { + flex: 1 0 0; + font-size: 12; + -unity-word-wrap: true; +} +#detailListView #detailView .detail #detailDesc.empty, #detailListView #detailView .detail #detailModuleReference.empty { + -unity-font-style: italic; +} +#detailListView #detailView .detail #detailAuthor { + flex: 1 0 0; + font-size: 12; + -unity-word-wrap: true; +} +#detailListView #detailView .detail #detailCategory { + flex: 1 0 0; + font-size: 12; + -unity-word-wrap: true; + margin-bottom: 5; +} +#detailListView #detailView .detail #changeLogContainer, #detailListView #detailView .detail #viewLicensesContainer { + flex: 0 0 auto; + flex-direction: row; +} +#detailListView #detailView .detail #detailActions, #detailListView #detailView .detail .detailActions { + flex: 0 0 auto; + flex-direction: row; + margin-left: 2; +} +#detailListView #detailView .detail #detailActions .detailAction, #detailListView #detailView .detail .detailActions .detailAction { + margin-left: 0; + margin-right: 0; + padding-left: 2; + padding-right: 2; + border-left-width: 2; + border-right-width: 2; +} +#detailListView #detailView .detail #detailActions .detailActionSeparator, #detailListView #detailView .detail .detailActions .detailActionSeparator { + margin-left: 0; + margin-right: 0; + padding-left: 0; + padding-right: 0; + border-left-width: 0; + border-right-width: 0; +} +#detailListView #detailView .detail #detailActions #thirdPartyNoticeLabel, #detailListView #detailView .detail .detailActions #thirdPartyNoticeLabel { + margin-top: 4; + margin-left: 0; + margin-bottom: 4; + margin-right: 0; + padding-top: 0; + padding-left: 0; + padding-bottom: 0; + padding-right: 0; + -unity-word-wrap: true; +} +#detailListView #detailView .detail #detailActions #viewThirdParty, #detailListView #detailView .detail .detailActions #viewThirdParty { + border-right-width: 0; +} +#detailListView #detailView .detail .versionContainer { + align-items: center; + justify-content: flex-start; +} +#detailListView #detailView .detail .versionContainer #detailVersion { + flex: 0 0 auto; +} +#detailListView #detailView .detail .tag { + border-color: #ffa44e; + color: #ffa44e; +} +#detailListView #detailView .detail .tag.verified { + border-color: #e4e4e4; + color: #e4e4e4; +} +#detailListView #detailView .detail .tagLine { + flex: 0 0 auto; + flex-direction: row; +} +#detailListView #detailError { + -unity-position: absolute; + top: 5; + left: 5; + right: 5; + min-height: 200; + -unity-word-wrap: true; +} +#detailListView #detailError.display-none { + top: 0; + left: 0; + bottom: 0; + right: 0; + width: 0; + height: 0; + min-height: 0; + max-height: 0; + border-top-width: 0; + border-left-width: 0; + border-bottom-width: 0; + border-right-width: 0; + padding-top: 0; + padding-left: 0; + padding-bottom: 0; + padding-right: 0; + margin-top: 0; + margin-left: 0; + margin-bottom: 0; + margin-right: 0; +} +#detailListView #packageStatusBar { + -unity-position: relative; + flex: 0 0 auto; + margin-top: 2; + margin-left: 0; + margin-bottom: 0; + margin-right: 0; + border-color: rgba(0, 0, 0, 0.5); + border-top-width: 1; + border-left-width: 0; + border-bottom-width: 0; + border-right-width: 0; +} +#detailListView #statusBarContainer { + flex-direction: row; + align-items: center; + justify-content: space-between; +} +#detailListView #statusBarContainer #loadingContainer { + flex-direction: row; + align-items: center; + justify-content: flex-start; + margin-left: 2; +} +#detailListView #statusBarContainer #loadingContainer #loadingIcon { + background-image: resource("Images/Dark/error"); + width: 16; + height: 16; + margin-left: -12; + margin-right: 0; +} +#detailListView #statusBarContainer #loadingContainer #loadingText { + padding-left: 2; + -unity-font-style: italic; +} +#detailListView #statusBarContainer #loadingContainer #loadingText.icon { + margin-left: 0; +} +#detailListView #statusBarContainer #moreAddOptionsButton { + font-size: 16; + background-image: none; + margin-top: 0; + margin-left: 0; + margin-bottom: -2; + margin-right: 0; + padding-top: 3; + padding-left: 6; + padding-bottom: 6; + padding-right: 6; + border-color: rgba(0, 0, 0, 0.5); + border-top-width: 0; + border-left-width: 1; + border-bottom-width: 0; + border-right-width: 0; +} +#detailListView #packageAddFromUrlField { + -unity-position: absolute; + top: -35; + left: 0; + bottom: 0; + right: 0; +} +#detailListView #addFromUrlFieldContainer { + border-color: rgba(0, 0, 0, 0.5); + border-top-width: 1; + border-left-width: 0; + border-bottom-width: 1; + border-right-width: 0; + flex-direction: row; + justify-content: space-between; + align-items: center; + height: 35; + background-color: #383838; +} +#detailListView #addFromUrlFieldContainer #urlTextField { + flex: 1 0 0; + height: 20; + -unity-text-align: middle-left; +} +#detailListView #addFromUrlFieldContainer #addFromUrlButton { + flex: 0 0 auto; + height: 20; +} + +.alert { + background-color: rgba(200, 0, 0, 0.8); + border-color: #FF0000; + flex-direction: row; + border-top-width: 1; + border-left-width: 1; + border-bottom-width: 1; + border-right-width: 1; + padding-top: 5; + padding-left: 10; + padding-bottom: 5; + padding-right: 10; +} +.alert #alertMessage { + flex: 1 0 0; + color: #f4f4f4; + -unity-word-wrap: true; + overflow: hidden; +} +.alert #close { + flex: 0 0 auto; + max-height: 30; + left: 5; + flex: 0 0 auto; + padding-top: 3; + padding-left: 3; + padding-bottom: 4; + padding-right: 3; + -unity-slice-top: 4; + -unity-slice-left: 6; + -unity-slice-bottom: 4; + -unity-slice-right: 6; +} +.alert #close.display-none { + position: absolute; + border-radius: 0; + width: 0; + height: 0; + min-height: 0; + max-height: 0; + min-width: 0; + max-width: 0; + border-top-width: 0; + border-left-width: 0; + border-bottom-width: 0; + border-right-width: 0; + min-width: 0; + border-top-width: 0; + border-left-width: 0; + border-bottom-width: 0; + border-right-width: 0; + padding-top: 0; + padding-left: 0; + padding-bottom: 0; + padding-right: 0; + margin-top: 0; + margin-left: 0; + margin-bottom: 0; + margin-right: 0; + -unity-slice-top: 0; + -unity-slice-left: 0; + -unity-slice-bottom: 0; + -unity-slice-right: 0; + visibility: hidden; +} +.alert #close:hover { + color: #b4b4b4; +} + +.spinner { + flex: 0 0 auto; + top: -7; + left: -7; + min-width: 14; + min-height: 14; + max-width: 14; + max-height: 14; + background-image: resource("Images/Dark/loading"); +} + +.largeSpinner { + flex: 0 0 auto; + top: -16; + left: -16; + min-width: 32; + min-height: 32; + max-width: 32; + max-height: 32; + background-image: resource("Images/Dark/loading"); +} diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.package-manager-ui@2.0.8/Editor/Resources/Styles/Main_Dark.uss.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.package-manager-ui@2.0.8/Editor/Resources/Styles/Main_Dark.uss.meta" new file mode 100644 index 00000000..efb67109 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.package-manager-ui@2.0.8/Editor/Resources/Styles/Main_Dark.uss.meta" @@ -0,0 +1,10 @@ +fileFormatVersion: 2 +guid: c7559cdbc33f04af1a5a42d2aa5b40a5 +ScriptedImporter: + fileIDToRecycleName: + 11400000: stylesheet + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: + script: {fileID: 12385, guid: 0000000000000000e000000000000000, type: 0} diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.package-manager-ui@2.0.8/Editor/Resources/Styles/Main_Light.scss" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.package-manager-ui@2.0.8/Editor/Resources/Styles/Main_Light.scss" new file mode 100644 index 00000000..85d6b070 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.package-manager-ui@2.0.8/Editor/Resources/Styles/Main_Light.scss" @@ -0,0 +1,74 @@ +/*************************************************************************************************** + + *** Auto-Generated - Do not modify .uss File *** + + Only Modify Main.scss + +***************************************************************************************************/ + +//-------------------------------------------------------------------------------------------------- +// Pure theme colors +//-------------------------------------------------------------------------------------------------- + +$unity-text-color: #000000; +$unity-list-hover-background: #8f8f8f; +$unity-list-selected-background: #3e7de7; +$unity-background: #c2c2c2; + +//-------------------------------------------------------------------------------------------------- +// Custom colors +//-------------------------------------------------------------------------------------------------- + +$unity-background-light-contrast: #D5D5D5; +$unity-background-dark-contrast: #6C6C6C; +$unity-text-color-highlight: #f4f4f4; + +$unity-installed-color-highlight: rgba(1,0,0,0.3); +$not-installed-package-background-color: #d1d1d1; + +$package-tag-color: #d25a00; +$package-tag-recommended-color: #000; + +$caret-text-color: #646464; + +$link-text-color: #0808FC; + +//-------------------------------------------------------------------------------------------------- +// Custom backgrounds +//-------------------------------------------------------------------------------------------------- +$installed-package-background: resource("Builtin Skins/LightSkin/Images/MenuItemOn.png"); + +$background-left-button: resource("Builtin Skins/LightSkin/Images/btn left.png"); +$background-left-button-selected: resource("Builtin Skins/LightSkin/Images/btn left on.png");; +$background-mid-button: resource("Builtin Skins/LightSkin/Images/btn mid.png"); +$background-mid-button-selected: resource("Builtin Skins/LightSkin/Images/btn mid on.png"); +$background-right-button: resource("Builtin Skins/LightSkin/Images/btn right.png"); +$background-right-button-selected: resource("Builtin Skins/LightSkin/Images/btn right on.png"); + +$background-button-slice-right: 6; +$background-button-slice-left: 6; +$background-button-slice-middle: 1; + +$background-status-outdated: resource("Images/Light/download"); +$background-status-error: resource("Images/Dark/error"); + +$background-spinner-normal: resource("Images/Light/loading"); +$background-spinner-large: resource("Images/Light/loading"); + +$popup-background: resource("Builtin Skins/LightSkin/Images/mini popup.png"); + +$toolbar-background: resource("Builtin Skins/LightSkin/Images/Toolbar.png"); +$toolbar-button-background: resource("Builtin Skins/LightSkin/Images/toolbar button.png"); +$toolbar-button-active-background: resource("Builtin Skins/LightSkin/Images/toolbar button act.png"); +$toolbar-button-pulldown-background: resource("Builtin Skins/LightSkin/Images/toolbar pulldown.png"); +$toolbar-button-popup-background: resource("Builtin Skins/LightSkin/Images/toolbar popup.png"); +$toolbar-search-textfield-background: resource("Builtin Skins/LightSkin/Images/toolbarsearch.png"); +$toolbar-search-textfield-focus-background: resource("Builtin Skins/LightSkin/Images/toolbarsearch focused.png"); +$toolbar-search-cancel-background: resource("Builtin Skins/LightSkin/Images/toolbarsearchCancelButton.png"); +$toolbar-search-cancel-active-background: resource("Builtin Skins/LightSkin/Images/toolbarsearchCancelButtonActive.png"); +$toolbar-search-cancel-off-background: resource("Builtin Skins/LightSkin/Images/toolbarsearchCancelButtonOff.png"); + +//-------------------------------------------------------------------------------------------------- +// Common stylesheet +//-------------------------------------------------------------------------------------------------- +@import "common"; diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.package-manager-ui@2.0.8/Editor/Resources/Styles/Main_Light.scss.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.package-manager-ui@2.0.8/Editor/Resources/Styles/Main_Light.scss.meta" new file mode 100644 index 00000000..066475b7 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.package-manager-ui@2.0.8/Editor/Resources/Styles/Main_Light.scss.meta" @@ -0,0 +1,7 @@ +fileFormatVersion: 2 +guid: f1687bb24464840ae9e1d253685ae0f6 +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.package-manager-ui@2.0.8/Editor/Resources/Styles/Main_Light.uss" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.package-manager-ui@2.0.8/Editor/Resources/Styles/Main_Light.uss" new file mode 100644 index 00000000..5f2ec80f --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.package-manager-ui@2.0.8/Editor/Resources/Styles/Main_Light.uss" @@ -0,0 +1,1038 @@ +/*************************************************************************************************** + + *** Auto-Generated - Do not modify .uss File *** + + Only Modify Main.scss + +***************************************************************************************************/ +#container { + -unity-position: absolute; + top: 0; + left: 0; + bottom: 0; + right: 0; +} + +.display-none { + position: absolute; + overflow: hidden; + border-radius: 0; + width: 0; + height: 0; + min-height: 0; + max-height: 0; + min-width: 0; + max-width: 0; + border-top-width: 0; + border-left-width: 0; + border-bottom-width: 0; + border-right-width: 0; + border-top-width: 0; + border-left-width: 0; + border-bottom-width: 0; + border-right-width: 0; + padding-top: 0; + padding-left: 0; + padding-bottom: 0; + padding-right: 0; + margin-top: 0; + margin-left: 0; + margin-bottom: 0; + margin-right: 0; +} + +.row, #detailListView .combo, #detailListView #detailView .detail #detailActions, #detailListView #detailView .detail .detailActions, #detailListView #detailView .detail .versionContainer { + flex: 1 0 0; + flex-direction: row; +} + +.column, #detailListView .emptyArea, #detailListView #packageListGroup #listContainerOuter, #detailListView #packageListGroup #packageList, #detailListView #packageListGroup #listContainer, #detailListView #packageListGroup #listGroups, #detailListView #packageListGroup #scrollView { + flex: 1 0 0; + flex-direction: column; +} + +.tag { + border-top-width: 1; + border-left-width: 1; + border-bottom-width: 1; + border-right-width: 1; + padding-top: 1; + padding-left: 3; + padding-bottom: 1; + padding-right: 3; + font-size: 9; + border-radius: 5; + -unity-text-align: middle-center; + border-color: #000000; + color: #000000; +} + +#toolbarContainer { + flex: 0 0 auto; + flex-direction: row; + align-items: flex-start; + height: 18; +} +#toolbarContainer #toolbarView { + flex: 1 0 0; + flex-direction: row; + align-items: flex-start; + background-image: resource("Builtin Skins/LightSkin/Images/Toolbar.png"); + margin-top: -1; + -unity-slice-top: 1; + -unity-slice-left: 1; + -unity-slice-bottom: 1; + -unity-slice-right: 1; +} +#toolbarContainer #toolbarView .toolbarButton { + flex: 1 0 0; + font-size: 9; + -unity-text-align: middle-center; + background-image: resource("Builtin Skins/LightSkin/Images/toolbar button.png"); + flex: 0 0 auto; + padding-top: 0; + padding-left: 0; + padding-bottom: 0; + padding-right: 0; + -unity-slice-top: 4; + -unity-slice-left: 6; + -unity-slice-bottom: 4; + -unity-slice-right: 6; + margin-top: 0; + margin-left: 0; + margin-bottom: 0; + margin-right: -1; + padding-top: 0; + padding-left: 5; + padding-bottom: 0; + padding-right: 5; + height: 19; +} +#toolbarContainer #toolbarView .toolbarButton.display-none { + position: absolute; + border-radius: 0; + width: 0; + height: 0; + min-height: 0; + max-height: 0; + min-width: 0; + max-width: 0; + border-top-width: 0; + border-left-width: 0; + border-bottom-width: 0; + border-right-width: 0; + min-width: 0; + border-top-width: 0; + border-left-width: 0; + border-bottom-width: 0; + border-right-width: 0; + padding-top: 0; + padding-left: 0; + padding-bottom: 0; + padding-right: 0; + margin-top: 0; + margin-left: 0; + margin-bottom: 0; + margin-right: 0; + -unity-slice-top: 0; + -unity-slice-left: 0; + -unity-slice-bottom: 0; + -unity-slice-right: 0; + visibility: hidden; +} +#toolbarContainer #toolbarView .toolbarButton:hover { + color: #000000; +} +#toolbarContainer #toolbarView .toolbarButton.space { + margin-left: 7; +} +#toolbarContainer #toolbarView .toolbarButton.active { + background-image: resource("Builtin Skins/LightSkin/Images/toolbar button act.png"); +} +#toolbarContainer #toolbarView .toolbarButton.pulldown:active { + background-image: resource("Builtin Skins/LightSkin/Images/toolbar button.png"); +} +#toolbarContainer #toolbarView #toolbarLeft { + flex: 0 0 auto; + flex-direction: row; + align-items: flex-start; +} +#toolbarContainer #toolbarView #toolbarRight { + flex: 1 0 0; + flex-direction: row; + justify-content: flex-end; +} +#toolbarContainer #toolbarView #toolbarRight #toolbarSearch { + flex: 1 0 0; + height: 18; + max-width: 500; + flex-direction: row; + margin-top: 0; + margin-left: 0; + margin-bottom: 0; + margin-right: 5; +} + +#searchContainer { + flex: 1 0 0; + flex-direction: row; + align-items: center; + justify-content: flex-start; + height: 14; + margin-top: 0; + margin-left: 0; + margin-bottom: 0; + margin-right: 0; +} +#searchContainer #searchTextField { + flex: 1 0 0; + font-size: 9; + background-image: resource("Builtin Skins/LightSkin/Images/toolbarsearch.png"); + margin-top: 2; + margin-left: 5; + margin-bottom: 1; + margin-right: 5; + padding-top: 2; + padding-left: 17; + padding-bottom: 1; + padding-right: 17; + -unity-slice-top: 1; + -unity-slice-left: 14; + -unity-slice-bottom: 1; + -unity-slice-right: 0; + height: 14; +} +#searchContainer #searchTextField:focus { + background-image: resource("Builtin Skins/LightSkin/Images/toolbarsearch focused.png"); +} +#searchContainer #searchTextField.placeholder { + color: #6C6C6C; +} +#searchContainer #searchCancelButton { + width: 14; + height: 15; + background-image: resource("Builtin Skins/LightSkin/Images/toolbarsearchCancelButtonOff.png"); + flex: 0 0 auto; + padding-top: 0; + padding-left: 0; + padding-bottom: 0; + padding-right: 0; + -unity-slice-top: 4; + -unity-slice-left: 6; + -unity-slice-bottom: 4; + -unity-slice-right: 6; + -unity-slice-top: 1; + -unity-slice-left: 0; + -unity-slice-bottom: 1; + -unity-slice-right: 14; + margin-top: 3; + margin-left: -10; + margin-bottom: 2; + margin-right: 0; + padding-top: 0; + padding-left: 0; + padding-bottom: 0; + padding-right: 0; + border-top-width: 0; + border-left-width: 0; + border-bottom-width: 0; + border-right-width: 0; +} +#searchContainer #searchCancelButton.display-none { + position: absolute; + border-radius: 0; + width: 0; + height: 0; + min-height: 0; + max-height: 0; + min-width: 0; + max-width: 0; + border-top-width: 0; + border-left-width: 0; + border-bottom-width: 0; + border-right-width: 0; + min-width: 0; + border-top-width: 0; + border-left-width: 0; + border-bottom-width: 0; + border-right-width: 0; + padding-top: 0; + padding-left: 0; + padding-bottom: 0; + padding-right: 0; + margin-top: 0; + margin-left: 0; + margin-bottom: 0; + margin-right: 0; + -unity-slice-top: 0; + -unity-slice-left: 0; + -unity-slice-bottom: 0; + -unity-slice-right: 0; + visibility: hidden; +} +#searchContainer #searchCancelButton:hover { + color: #000000; +} +#searchContainer #searchCancelButton.on { + background-image: resource("Builtin Skins/LightSkin/Images/toolbarsearchCancelButton.png"); +} +#searchContainer #searchCancelButton:active { + background-image: resource("Builtin Skins/LightSkin/Images/toolbarsearchCancelButtonActive.png"); +} + +#detailListView { + flex: 1 0 0; + flex-direction: row; +} +#detailListView .link { + color: #0808FC; + background: rgba(0, 0, 0, 0); + background-image: none; + margin-top: 0; + margin-left: 0; + margin-bottom: 0; + margin-right: 0; + padding-top: 0; + padding-left: 0; + padding-bottom: 0; + padding-right: 0; + cursor: link; +} +#detailListView .emptyArea { + flex: 1 0 0; +} +#detailListView .emptyArea .title { + -unity-text-align: middle-center; + font-size: 14; +} +#detailListView .emptyArea .loading { + -unity-position: relative; + top: 7; + left: 7; + border-top-width: 0; + border-left-width: 0; + border-bottom-width: 0; + border-right-width: 0; + padding-top: 0; + padding-left: 0; + padding-bottom: 0; + padding-right: 0; + margin-top: 0; + margin-left: 0; + margin-bottom: 0; + margin-right: 0; + -unity-slice-top: 0; + -unity-slice-left: 0; + -unity-slice-bottom: 0; + -unity-slice-right: 0; + width: 14; + height: 14; + max-width: 14; + max-height: 14; +} +#detailListView #headerTitle { + flex: 1 0 0; + font-size: 12; + -unity-font-style: bold; + color: #000000; +} +#detailListView #headerCaret { + flex: 0 0 auto; + font-size: 12; + -unity-font-style: bold; + color: #000000; + min-width: 16; +} +#detailListView #spinnerContainer { + -unity-position: absolute; + top: 3; + left: 2; + right: 0; + width: 14; + flex: 0.1 0 0; + flex-direction: column; + align-items: center; +} +#detailListView .loading { + -unity-position: relative; + top: 7; + left: 7; + border-top-width: 0; + border-left-width: 0; + border-bottom-width: 0; + border-right-width: 0; + padding-top: 0; + padding-left: 0; + padding-bottom: 0; + padding-right: 0; + margin-top: 0; + margin-left: 0; + margin-bottom: 0; + margin-right: 0; + -unity-slice-top: 0; + -unity-slice-left: 0; + -unity-slice-bottom: 0; + -unity-slice-right: 0; + width: 14; + height: 14; + max-width: 14; + max-height: 14; +} +#detailListView .combo { + margin-top: 3; + margin-left: 3; + margin-bottom: 3; + margin-right: 3; + padding-top: 3; + padding-left: 3; + padding-bottom: 3; + padding-right: 3; +} +#detailListView .combo .popup { + padding-top: 0; + padding-left: 8; + padding-bottom: 0; + padding-right: 0; + margin-top: 0; + margin-left: 0; + margin-bottom: 0; + margin-right: 0; + border-top-width-left-radius: 0; + border-bottom-width-left-radius: 0; +} +#detailListView .combo .button { + flex: 1 0 0; + font-size: 12; + border-top-width: 0; + border-left-width: 0; + border-bottom-width: 0; + border-right-width: 0; + margin-top: 0; + margin-left: 0; + margin-bottom: 0; + margin-right: 0; + padding-top: 2; + padding-left: 6; + padding-bottom: 3; + padding-right: 6; + -unity-slice-top: 4; + -unity-slice-left: 1; + -unity-slice-bottom: 4; + -unity-slice-right: 1; + -unity-text-align: middle-center; + border-left-width: 0; + border-top-width: 0; + border-right-width: 0; + border-bottom-width: 0; + background-image: resource("Builtin Skins/LightSkin/Images/btn mid.png"); + border-top-width-right-radius: 0; + border-bottom-width-right-radius: 0; + border-top-width-left-radius: 0; + border-bottom-width-left-radius: 0; +} +#detailListView .combo .button.selected { + background-image: resource("Builtin Skins/LightSkin/Images/btn mid on.png"); + color: #f4f4f4; +} +#detailListView .combo .button.first { + -unity-slice-top: 4; + -unity-slice-left: 6; + -unity-slice-bottom: 4; + -unity-slice-right: 6; + background-image: resource("Builtin Skins/LightSkin/Images/btn left.png"); +} +#detailListView .combo .button.first.selected { + background-image: resource("Builtin Skins/LightSkin/Images/btn left on.png"); +} +#detailListView .combo .button.last { + -unity-slice-top: 4; + -unity-slice-left: 6; + -unity-slice-bottom: 4; + -unity-slice-right: 6; + background-image: resource("Builtin Skins/LightSkin/Images/btn right.png"); +} +#detailListView .combo .button.last.selected { + background-image: resource("Builtin Skins/LightSkin/Images/btn right on.png"); +} +#detailListView .combo .button.small { + flex: 0.5 0 0; + padding-top: 0; + padding-left: 0; + padding-bottom: 0; + padding-right: 0; +} +#detailListView #packageListGroup { + width: 270; +} +#detailListView #packageListGroup #groupContainerOuter #headerContainer { + flex: 1 0 0; + flex-direction: row; + align-items: center; + border-color: rgba(0, 0, 0, 0.5); +} +#detailListView #packageListGroup #groupContainerOuter #headerContainer #headerTitle { + height: 0; + margin-top: 0; + margin-left: 0; + margin-bottom: 0; + margin-right: 0; + padding-top: 0; + padding-left: 0; + padding-bottom: 0; + padding-right: 0; + border-top-width: 0; + border-left-width: 0; + border-bottom-width: 0; + border-right-width: 0; +} +#detailListView #packageListGroup #groupContainerOuter #groupContainer { + margin-top: 0; + margin-left: 0; + margin-bottom: 0; + margin-right: 0; +} +#detailListView #packageListGroup #scrollView #VerticalScroller { + bottom: 0; +} +#detailListView #packageListGroup #scrollView #HorizontalScroller { + height: 0; +} +#detailListView #packageListGroup #scrollView #ContentViewport { + bottom: 0; +} +#detailListView #packageListGroup #scrollView #ContentViewport #ContentView { + right: 0; + left: 0; +} +#detailListView #packageListGroup #noResult #noResultText { + -unity-word-wrap: true; +} +#detailListView .package { + flex: 1 0 0; + flex-direction: row; + align-items: center; + margin-top: 0; + margin-left: 0; + margin-bottom: 0; + margin-right: 0; + border-color: rgba(0, 0, 0, 0.5); + border-bottom-width: 1; +} +#detailListView .package.selected { + background-color: #3e7de7; + color: #f4f4f4; +} +#detailListView .package.selected #packageName, #detailListView .package.selected #packageVersion { + color: #f4f4f4; +} +#detailListView .package .status { + flex: 0 0 14; + width: 14; + height: 14; + margin-left: 2; + margin-right: 0; +} +#detailListView .package .status.installed { + background-image: resource("Builtin Skins/LightSkin/Images/MenuItemOn.png"); +} +#detailListView .package .status.installed.no-icon { + background-image: none; +} +#detailListView .package .status.outdated { + background-image: resource("Images/Light/download"); +} +#detailListView .package .status.outdated.no-icon { + background-image: none; +} +#detailListView .package .status.inprogress { + background-image: none; +} +#detailListView .package .status.error { + background-image: resource("Images/Dark/error"); +} +#detailListView .package .name { + flex: 1 0 0; + font-size: 12; + margin-left: 0; + margin-right: 5; + overflow: hidden; +} +#detailListView .package .version { + flex: 0 0 auto; + margin-left: 0; + margin-right: 5; + font-size: 9; +} +#detailListView #detailsGroup { + flex: 1 0 0; + border-left-width: 1px; + border-color: rgba(0, 0, 0, 0.5); +} +#detailListView #detailsGroup #detailsContainer { + flex: 1 0 0; + flex-direction: column; + -unity-position: relative; +} +#detailListView #detailView { + flex: 1 0 0; +} +#detailListView #detailView #VerticalScroller { + bottom: 0; +} +#detailListView #detailView #ContentViewport #ContentView { + -unity-position: absolute; + top: 0; + left: 0; + right: 0; +} +#detailListView #detailView .detail { + flex: 1 0 0; + flex-direction: column; + padding-top: 5; + padding-left: 5; + padding-bottom: 5; + padding-right: 5; +} +#detailListView #detailView .detail .header { + flex: 1 0 0; + flex-direction: row; + align-items: flex-start; + margin-bottom: 8; +} +#detailListView #detailView .detail .header #titleContainer { + flex: 0.9 0 0; +} +#detailListView #detailView .detail .header #titleContainer #detailTitle { + font-size: 18; + -unity-font-style: bold; + -unity-word-wrap: true; + margin-top: 0; + margin-left: 4; + margin-bottom: 0; + margin-right: 0; +} +#detailListView #detailView .detail .header #detailsControls { + flex: 1 0 0; + height: 19; + flex-direction: row; + align-items: center; + flex-wrap: wrap; + margin-top: 3; + margin-left: 0; + margin-bottom: 0; + margin-right: 0; +} +#detailListView #detailView .detail .header #updateCombo { + flex: 1 0 0; + height: 19; + align-items: center; + margin-top: 0; + margin-left: 0; + margin-bottom: 0; + margin-right: 0; + padding-top: 0; + padding-left: 0; + padding-bottom: 0; + padding-right: 0; +} +#detailListView #detailView .detail .header #updateCombo #update { + flex: 0 0 auto; +} +#detailListView #detailView .detail .header #updateCombo #updateDropdownContainer { + min-width: 65; + max-width: 150; + height: 19; + flex: 0 0 auto; +} +#detailListView #detailView .detail .header #updateCombo #updateDropdownContainer .popup { + font-size: 12; + height: 19; +} +#detailListView #detailView .detail .header #updateCombo #updateDropdownContainer .popup:focus { + background-image: resource("Builtin Skins/LightSkin/Images/mini popup.png"); +} +#detailListView #detailView .detail .header #updateCombo #updateDropdownContainer .popup:hover .textElement { + color: #000000; +} +#detailListView #detailView .detail .header #updateCombo #updateDropdownContainer .popup .textElement { + margin-top: 2; +} +#detailListView #detailView .detail .header #updateCombo .action { + flex: 0 0 auto; + margin-top: 0; + margin-left: 0; + margin-bottom: 0; + margin-right: 0; + font-size: 12; + padding-top: 2; + padding-left: 4; + padding-bottom: 3; + padding-right: 4; + right: -3; +} +#detailListView #detailView .detail .header #updateCombo .action:hover { + color: #000000; +} +#detailListView #detailView .detail .header #updateContainer { + height: 19; + flex: 1 0 0; + align-items: flex-end; + padding-top: 0; + padding-left: 0; + padding-bottom: 0; + padding-right: 0; +} +#detailListView #detailView .detail .header .button { + height: 19; + font-size: 12; + flex: 0 0 auto; + padding-top: 3; + padding-left: 3; + padding-bottom: 4; + padding-right: 3; + -unity-slice-top: 4; + -unity-slice-left: 6; + -unity-slice-bottom: 4; + -unity-slice-right: 6; +} +#detailListView #detailView .detail .header .button.display-none { + position: absolute; + border-radius: 0; + width: 0; + height: 0; + min-height: 0; + max-height: 0; + min-width: 0; + max-width: 0; + border-top-width: 0; + border-left-width: 0; + border-bottom-width: 0; + border-right-width: 0; + min-width: 0; + border-top-width: 0; + border-left-width: 0; + border-bottom-width: 0; + border-right-width: 0; + padding-top: 0; + padding-left: 0; + padding-bottom: 0; + padding-right: 0; + margin-top: 0; + margin-left: 0; + margin-bottom: 0; + margin-right: 0; + -unity-slice-top: 0; + -unity-slice-left: 0; + -unity-slice-bottom: 0; + -unity-slice-right: 0; + visibility: hidden; +} +#detailListView #detailView .detail .header .button:hover { + color: #000000; +} +#detailListView #detailView .detail #detailVersion { + font-size: 16; + max-height: 30; +} +#detailListView #detailView .detail #detailName { + flex: 1 0 0; + max-height: 20; + -unity-font-style: italic; +} +#detailListView #detailView .detail #detailPackageStatus { + flex: 1 0 0; + -unity-font-style: bold; + -unity-word-wrap: true; +} +#detailListView #detailView .detail #detailTag { + width: 60; + font-size: 12; + border-radius: 5; + border-color: #b4b4b4; + border-top-width: 2; + border-left-width: 2; + border-bottom-width: 2; + border-right-width: 2; + -unity-text-align: middle-center; +} +#detailListView #detailView .detail #detailDesc, #detailListView #detailView .detail #detailModuleReference { + flex: 1 0 0; + font-size: 12; + -unity-word-wrap: true; +} +#detailListView #detailView .detail #detailDesc.empty, #detailListView #detailView .detail #detailModuleReference.empty { + -unity-font-style: italic; +} +#detailListView #detailView .detail #detailAuthor { + flex: 1 0 0; + font-size: 12; + -unity-word-wrap: true; +} +#detailListView #detailView .detail #detailCategory { + flex: 1 0 0; + font-size: 12; + -unity-word-wrap: true; + margin-bottom: 5; +} +#detailListView #detailView .detail #changeLogContainer, #detailListView #detailView .detail #viewLicensesContainer { + flex: 0 0 auto; + flex-direction: row; +} +#detailListView #detailView .detail #detailActions, #detailListView #detailView .detail .detailActions { + flex: 0 0 auto; + flex-direction: row; + margin-left: 2; +} +#detailListView #detailView .detail #detailActions .detailAction, #detailListView #detailView .detail .detailActions .detailAction { + margin-left: 0; + margin-right: 0; + padding-left: 2; + padding-right: 2; + border-left-width: 2; + border-right-width: 2; +} +#detailListView #detailView .detail #detailActions .detailActionSeparator, #detailListView #detailView .detail .detailActions .detailActionSeparator { + margin-left: 0; + margin-right: 0; + padding-left: 0; + padding-right: 0; + border-left-width: 0; + border-right-width: 0; +} +#detailListView #detailView .detail #detailActions #thirdPartyNoticeLabel, #detailListView #detailView .detail .detailActions #thirdPartyNoticeLabel { + margin-top: 4; + margin-left: 0; + margin-bottom: 4; + margin-right: 0; + padding-top: 0; + padding-left: 0; + padding-bottom: 0; + padding-right: 0; + -unity-word-wrap: true; +} +#detailListView #detailView .detail #detailActions #viewThirdParty, #detailListView #detailView .detail .detailActions #viewThirdParty { + border-right-width: 0; +} +#detailListView #detailView .detail .versionContainer { + align-items: center; + justify-content: flex-start; +} +#detailListView #detailView .detail .versionContainer #detailVersion { + flex: 0 0 auto; +} +#detailListView #detailView .detail .tag { + border-color: #d25a00; + color: #d25a00; +} +#detailListView #detailView .detail .tag.verified { + border-color: #000; + color: #000; +} +#detailListView #detailView .detail .tagLine { + flex: 0 0 auto; + flex-direction: row; +} +#detailListView #detailError { + -unity-position: absolute; + top: 5; + left: 5; + right: 5; + min-height: 200; + -unity-word-wrap: true; +} +#detailListView #detailError.display-none { + top: 0; + left: 0; + bottom: 0; + right: 0; + width: 0; + height: 0; + min-height: 0; + max-height: 0; + border-top-width: 0; + border-left-width: 0; + border-bottom-width: 0; + border-right-width: 0; + padding-top: 0; + padding-left: 0; + padding-bottom: 0; + padding-right: 0; + margin-top: 0; + margin-left: 0; + margin-bottom: 0; + margin-right: 0; +} +#detailListView #packageStatusBar { + -unity-position: relative; + flex: 0 0 auto; + margin-top: 2; + margin-left: 0; + margin-bottom: 0; + margin-right: 0; + border-color: rgba(0, 0, 0, 0.5); + border-top-width: 1; + border-left-width: 0; + border-bottom-width: 0; + border-right-width: 0; +} +#detailListView #statusBarContainer { + flex-direction: row; + align-items: center; + justify-content: space-between; +} +#detailListView #statusBarContainer #loadingContainer { + flex-direction: row; + align-items: center; + justify-content: flex-start; + margin-left: 2; +} +#detailListView #statusBarContainer #loadingContainer #loadingIcon { + background-image: resource("Images/Dark/error"); + width: 16; + height: 16; + margin-left: -12; + margin-right: 0; +} +#detailListView #statusBarContainer #loadingContainer #loadingText { + padding-left: 2; + -unity-font-style: italic; +} +#detailListView #statusBarContainer #loadingContainer #loadingText.icon { + margin-left: 0; +} +#detailListView #statusBarContainer #moreAddOptionsButton { + font-size: 16; + background-image: none; + margin-top: 0; + margin-left: 0; + margin-bottom: -2; + margin-right: 0; + padding-top: 3; + padding-left: 6; + padding-bottom: 6; + padding-right: 6; + border-color: rgba(0, 0, 0, 0.5); + border-top-width: 0; + border-left-width: 1; + border-bottom-width: 0; + border-right-width: 0; +} +#detailListView #packageAddFromUrlField { + -unity-position: absolute; + top: -35; + left: 0; + bottom: 0; + right: 0; +} +#detailListView #addFromUrlFieldContainer { + border-color: rgba(0, 0, 0, 0.5); + border-top-width: 1; + border-left-width: 0; + border-bottom-width: 1; + border-right-width: 0; + flex-direction: row; + justify-content: space-between; + align-items: center; + height: 35; + background-color: #c2c2c2; +} +#detailListView #addFromUrlFieldContainer #urlTextField { + flex: 1 0 0; + height: 20; + -unity-text-align: middle-left; +} +#detailListView #addFromUrlFieldContainer #addFromUrlButton { + flex: 0 0 auto; + height: 20; +} + +.alert { + background-color: rgba(200, 0, 0, 0.8); + border-color: #FF0000; + flex-direction: row; + border-top-width: 1; + border-left-width: 1; + border-bottom-width: 1; + border-right-width: 1; + padding-top: 5; + padding-left: 10; + padding-bottom: 5; + padding-right: 10; +} +.alert #alertMessage { + flex: 1 0 0; + color: #f4f4f4; + -unity-word-wrap: true; + overflow: hidden; +} +.alert #close { + flex: 0 0 auto; + max-height: 30; + left: 5; + flex: 0 0 auto; + padding-top: 3; + padding-left: 3; + padding-bottom: 4; + padding-right: 3; + -unity-slice-top: 4; + -unity-slice-left: 6; + -unity-slice-bottom: 4; + -unity-slice-right: 6; +} +.alert #close.display-none { + position: absolute; + border-radius: 0; + width: 0; + height: 0; + min-height: 0; + max-height: 0; + min-width: 0; + max-width: 0; + border-top-width: 0; + border-left-width: 0; + border-bottom-width: 0; + border-right-width: 0; + min-width: 0; + border-top-width: 0; + border-left-width: 0; + border-bottom-width: 0; + border-right-width: 0; + padding-top: 0; + padding-left: 0; + padding-bottom: 0; + padding-right: 0; + margin-top: 0; + margin-left: 0; + margin-bottom: 0; + margin-right: 0; + -unity-slice-top: 0; + -unity-slice-left: 0; + -unity-slice-bottom: 0; + -unity-slice-right: 0; + visibility: hidden; +} +.alert #close:hover { + color: #000000; +} + +.spinner { + flex: 0 0 auto; + top: -7; + left: -7; + min-width: 14; + min-height: 14; + max-width: 14; + max-height: 14; + background-image: resource("Images/Light/loading"); +} + +.largeSpinner { + flex: 0 0 auto; + top: -16; + left: -16; + min-width: 32; + min-height: 32; + max-width: 32; + max-height: 32; + background-image: resource("Images/Light/loading"); +} diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.package-manager-ui@2.0.8/Editor/Resources/Styles/Main_Light.uss.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.package-manager-ui@2.0.8/Editor/Resources/Styles/Main_Light.uss.meta" new file mode 100644 index 00000000..cb382d66 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.package-manager-ui@2.0.8/Editor/Resources/Styles/Main_Light.uss.meta" @@ -0,0 +1,10 @@ +fileFormatVersion: 2 +guid: abdc053b8e3644f299aedc641d609a84 +ScriptedImporter: + fileIDToRecycleName: + 11400000: stylesheet + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: + script: {fileID: 12385, guid: 0000000000000000e000000000000000, type: 0} diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.package-manager-ui@2.0.8/Editor/Resources/Styles/_common.scss" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.package-manager-ui@2.0.8/Editor/Resources/Styles/_common.scss" new file mode 100644 index 00000000..a896ed29 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.package-manager-ui@2.0.8/Editor/Resources/Styles/_common.scss" @@ -0,0 +1,960 @@ +// If you are using IntelliJ Rider, you can simply turn on the SCSS compiler, otherwise here is how to convert scss to uss +// # Install Sass +// gem install sass +// +// # Convert +// sass --sourcemap=none --style=expanded --scss --no-cache Main_Dark.scss Main_Dark.uss +// sass --sourcemap=none --style=expanded --scss --no-cache Main_Light.scss Main_Light.uss +// +// # Watch +// sass --watch --sourcemap=none --style=expanded --scss --no-cache Main_Light.scss:Main_Light.uss Main_Dark.scss:Main_Dark.uss +// +// Sass to Uss Notes +// - Sass converts rgb(0,0,0) to css 'black'. Uss doesn't support named colors. The workaround is to set the color in sass as #000000 +// +// Uss Notes +// Runtime\UIElements\Managed\StyleSheets\StyleSheetCache.cs:50 to see which properties are available (until there is a doc) + +//-------------------------------------------------------------------------------------------------- +// Helper Mixins +//-------------------------------------------------------------------------------------------------- + +@mixin border($top, $right, $bottom, $left) { + @if $top != 'auto' {border-top-width: $top;} + @if $left != 'auto' {border-left-width: $right;} + @if $bottom != 'auto' {border-bottom-width: $bottom;} + @if $right != 'auto' {border-right-width: $left;} +} + +@mixin border-box($width: 1) { + @include border($width, $width, $width, $width); +} + +@mixin padding($top, $right, $bottom, $left) { + @if $top != 'auto' {padding-top: $top;} + @if $left != 'auto' {padding-left: $left;} + @if $bottom != 'auto' {padding-bottom: $bottom;} + @if $right != 'auto' {padding-right: $right;} +} + +@mixin padding-box($size) { + @include padding($size, $size, $size, $size); +} + +@mixin margin($top, $right, $bottom, $left) { + @if $top != 'auto' {margin-top: $top;} + @if $left != 'auto' {margin-left: $left;} + @if $bottom != 'auto' {margin-bottom: $bottom;} + @if $right != 'auto' {margin-right: $right;} +} + +@mixin margin-box($size) { + @include margin($size, $size, $size, $size); +} + +@mixin slice($top, $right, $bottom, $left) { + @if $top != 'auto' {-unity-slice-top: $top;} + @if $left != 'auto' {-unity-slice-left: $left;} + @if $bottom != 'auto' {-unity-slice-bottom: $bottom;} + @if $right != 'auto' {-unity-slice-right: $right;} +} + +@mixin slice-box($size) { + @include slice($size, $size, $size, $size); +} + +@mixin position($top, $right, $bottom, $left) { + @if $top != 'auto' {top: $top;} + @if $left != 'auto' {left: $left;} + @if $bottom != 'auto' {bottom: $bottom;} + @if $right != 'auto' {right: $right;} +} + +@mixin text-clip() { + overflow: hidden; +} + +@mixin selected-element() { + background-color: $unity-list-selected-background; + color: $unity-text-color-highlight; +} + +@mixin active-tab() { + background-color: $unity-background-dark-contrast; + color: $unity-text-color-highlight; +} + +@mixin inactive-tab() { + background-color: $unity-background-light-contrast; + color: $unity-text-color; +} + +@mixin button($top, $right, $bottom, $left) { + flex: 0 0 auto; + + @include padding($top, $right, $bottom, $left); + @include slice(4, 6, 4, 6); + + &.display-none { + position: absolute; + border-radius: 0; + width: 0; + height: 0; + min-height: 0; + max-height: 0; + min-width: 0; + max-width: 0; + border-top-width: 0; + border-left-width: 0; + border-bottom-width: 0; + border-right-width: 0; + min-width: 0; + @include border-box(0); + @include padding-box(0); + @include margin-box(0); + @include slice-box(0); + visibility: hidden; + } + + &:hover { + color: $unity-text-color; + } +} + +@mixin button-box($size) { + @include button($size, $size, $size, $size); +} + +//-------------------------------------------------------------------------------------------------- +// Font +//-------------------------------------------------------------------------------------------------- + +@mixin font-small() { + font-size: 9; +} + +@mixin font-normal() { + font-size: 12; +} + +//-------------------------------------------------------------------------------------------------- +// Styles +//-------------------------------------------------------------------------------------------------- + +#container { + -unity-position: absolute; + @include position(0, 0, 0, 0); +} + +.display-none { + position: absolute; + overflow: hidden; + border-radius: 0; + width: 0; + height: 0; + min-height: 0; + max-height: 0; + min-width: 0; + max-width: 0; + border-top-width: 0; + border-left-width: 0; + border-bottom-width: 0; + border-right-width: 0; + @include border-box(0); + @include padding-box(0); + @include margin-box(0); +} + +.row { + flex: 1 0 0; + flex-direction: row; +} + +.column { + flex: 1 0 0; + flex-direction: column; +} + +.tag { + @include border-box(1); + @include padding(1, 3, 1, 3); + @include font-small(); + border-radius: 5; + -unity-text-align: middle-center; + + border-color: #000000; + color: #000000; +} + +$spinner-large-size: 32; +$spinner-large-half-size: 16; +$spinner-normal-size: 14; +$spinner-normal-half-size: 7; +$toolbar-height: 18; + +#toolbarContainer { + flex: 0 0 auto; + flex-direction: row; + align-items: flex-start; + height: $toolbar-height; + + #toolbarView { + flex: 1 0 0; + flex-direction: row; + align-items: flex-start; + background-image: $toolbar-background; + margin-top: -1; + @include slice(1, 1, 1, 1); + + .toolbarButton { + flex: 1 0 0; + font-size: 9; + -unity-text-align: middle-center; + background-image: $toolbar-button-background; + @include button-box(0); + @include margin(0, -1, 0, 0); + @include padding(0, 5, 0, 5); + height: 19; + + &.space { + margin-left: 7; + } + + &.active { + background-image: $toolbar-button-active-background; + } + + &.pulldown { + + &:active { + background-image: $toolbar-button-background; + } + } + } + + #toolbarLeft { + flex: 0 0 auto; + flex-direction: row; + align-items: flex-start; + } + + #toolbarRight { + flex: 1 0 0; + flex-direction: row; + justify-content: flex-end; + + #toolbarSearch { + flex: 1 0 0; + height: $toolbar-height; + max-width: 500; + flex-direction: row; + @include margin(0, 5, 0, 0); + } + } + } +} + +#searchContainer { + flex: 1 0 0; + flex-direction: row; + align-items: center; + justify-content: flex-start; + height: 14; + @include margin(0, 0, 0, 0); + + #searchTextField { + flex: 1 0 0; + font-size: 9; + background-image: $toolbar-search-textfield-background; + @include margin(2, 5, 1, 5); + @include padding(2, 17, 1, 17); + @include slice(1, 0, 1, 14); + height: 14; + + &:focus { + background-image: $toolbar-search-textfield-focus-background; + } + + &.placeholder { + color: $unity-background-dark-contrast; + } + } + + #searchCancelButton { + width: 14; + height: 15; + background-image: $toolbar-search-cancel-off-background; + @include button-box(0); + @include slice(1, 14, 1, 0); + @include margin(3, 0, 2, -10); + @include padding-box(0); + @include border-box(0); + + &.on { + background-image: $toolbar-search-cancel-background; + } + + &:active { + background-image: $toolbar-search-cancel-active-background; + } + } +} + +#detailListView { + flex: 1 0 0; + flex-direction: row; + + .link { + color: $link-text-color; + background: rgba(0, 0, 0, 0); + background-image: none; + @include margin-box(0); + @include padding-box(0); + cursor: link; + } + + .emptyArea { + flex: 1 0 0; + @extend .column; + + .title { + -unity-text-align: middle-center; + font-size: 14; + } + + .loading { + -unity-position: relative; + @include position($spinner-normal-half-size, auto, auto, $spinner-normal-half-size); + + @include border-box(0); + @include padding-box(0); + @include margin-box(0); + @include slice-box(0); + + width: $spinner-normal-size; + height: $spinner-normal-size; + max-width: $spinner-normal-size; + max-height: $spinner-normal-size; + } + } + + #headerTitle { + flex: 1 0 0; + font-size: 12; + -unity-font-style: bold; + color: $unity-text-color; + } + + #headerCaret { + flex: 0 0 auto; + font-size: 12; + -unity-font-style: bold; + color: $unity-text-color; + min-width: 16; + } + + #spinnerContainer { + -unity-position: absolute; + @include position(3, 0, auto, 2); + width: 14; + + flex: 0.1 0 0; + flex-direction: column; + align-items: center; + } + + .loading { + -unity-position: relative; + @include position($spinner-normal-half-size, auto, auto, $spinner-normal-half-size); + + @include border-box(0); + @include padding-box(0); + @include margin-box(0); + @include slice-box(0); + + width: $spinner-normal-size; + height: $spinner-normal-size; + max-width: $spinner-normal-size; + max-height: $spinner-normal-size; + } + + .combo { + @extend .row; + @include margin-box(3); + @include padding-box(3); + + .popup { + @include padding(0, 0, 0, 8); + @include margin-box(0); + border-top-width-left-radius: 0; + border-bottom-width-left-radius: 0; + } + + .button { + flex: 1 0 0; // Make buttons take all the parent's free space + + @include font-normal(); + @include border-box(0); + @include margin-box(0); + @include padding(2, 6, 3, 6); + @include slice(4, $background-button-slice-middle, 4, $background-button-slice-middle); + + -unity-text-align: middle-center; + border-left-width: 0; + border-top-width: 0; + border-right-width: 0; + border-bottom-width: 0; + background-image: $background-mid-button; + + border-top-width-right-radius: 0; + border-bottom-width-right-radius: 0; + border-top-width-left-radius: 0; + border-bottom-width-left-radius: 0; + + &.selected { + background-image: $background-mid-button-selected; + color: $unity-text-color-highlight; + } + + &.first { + @include slice(4, $background-button-slice-right, 4, 6); + background-image: $background-left-button; + + &.selected { + background-image: $background-left-button-selected; + } + } + + &.last { + @include slice(4, 6, 4, $background-button-slice-left); + background-image: $background-right-button; + + &.selected { + background-image: $background-right-button-selected; + } + } + + + &.small { + flex: 0.5 0 0; + @include padding(0, 0, 0, 0); + } + } + } + + //-------------------------------------------------------------------------------------------------- + // Package List + //-------------------------------------------------------------------------------------------------- + #packageListGroup { + width: 270; + + #listContainerOuter { + @extend .column; + } + + #groupContainerOuter { + + #headerContainer { + flex: 1 0 0; + flex-direction: row; + align-items: center; + border-color: rgba(0,0,0, 0.5); + + #headerTitle { + height: 0; + @include margin-box(0); + @include padding-box(0); + @include border-box(0); + } + } + + #groupContainer { + @include margin(0, 0, 0, 0); + } + } + + #packageList, #listContainer, #listGroups { + @extend .column; + } + + #scrollView { + @extend .column; + + #VerticalScroller { + bottom: 0; + } + + #HorizontalScroller { + height: 0; + } + + #ContentViewport { + bottom: 0; + + #ContentView { + right: 0; + left: 0; + } + } + } + + #noResult { + #noResultText { + -unity-word-wrap: true; + } + } + } + + //-------------------------------------------------------------------------------------------------- + // Package Item + //-------------------------------------------------------------------------------------------------- + .package { + flex: 1 0 0; + flex-direction: row; + align-items: center; + @include margin(0, 0, 0, 0); + border-color: rgba(0,0,0, 0.5); + border-bottom-width: 1; + + &.selected { + @include selected-element(); + + #packageName, #packageVersion { + color: $unity-text-color-highlight; + } + } + + .status { + flex: 0 0 14; + width: 14; + height: 14; + @include margin(auto, 0, auto, 2); + + &.installed { + background-image: $installed-package-background; + &.no-icon { + background-image: none; + } + } + + &.outdated { + background-image: $background-status-outdated; + &.no-icon { + background-image: none; + } + } + + &.inprogress { + background-image: none; + } + + &.error { + background-image: $background-status-error; + } + } + + .name { + flex: 1 0 0; + @include font-normal(); + @include margin(auto, 5, auto, 0); + @include text-clip(); + } + + .version { + flex: 0 0 auto; + @include margin(auto, 5, auto, 0); + @include font-small; + } + } + + //-------------------------------------------------------------------------------------------------- + // Package Details + //-------------------------------------------------------------------------------------------------- + #detailsGroup { + flex: 1 0 0; + border-left-width: 1px; + border-color: rgba(0,0,0, 0.5); + + #detailsContainer { + flex: 1 0 0; + flex-direction: column; + -unity-position: relative; + } + } + + #detailView { + flex: 1 0 0; + + #VerticalScroller { + bottom: 0; + } + + #ContentViewport { + + #ContentView { + -unity-position: absolute; + @include position(0, 0, auto, 0); + } + } + + .detail { + flex: 1 0 0; + flex-direction: column; + @include padding-box(5); + + .header { + flex: 1 0 0; + flex-direction: row; + align-items: flex-start; + + margin-bottom: 8; + + #titleContainer { + flex: 0.9 0 0; + + #detailTitle { + font-size: 18; + -unity-font-style: bold; + -unity-word-wrap: true; + @include margin(0, 0, 0, 4); + } + } + + $controls-height: 19; + #detailsControls { + flex: 1 0 0; + height: $controls-height; + flex-direction: row; + align-items: center; + flex-wrap: wrap; + @include margin(3, 0, 0, 0); + } + + #updateCombo { + flex: 1 0 0; + height: $controls-height; + align-items: center; + @include margin(0, 0, 0, 0); + @include padding(0, 0, 0, 0); + + #update { + flex: 0 0 auto; + } + + #updateDropdownContainer { + min-width: 65; + max-width: 150; + height: $controls-height; + flex: 0 0 auto; + + .popup { + @include font-normal(); + height: $controls-height; + + &:focus { + background-image: $popup-background; + } + + &:hover { + .textElement { + color: $unity-text-color; + } + } + + .textElement { + margin-top: 2; + } + } + } + + .action { + flex: 0 0 auto; + @include margin-box(0); + @include font-normal(); + @include padding(2, 4, 3, 4); + right: -3; + &:hover { + color: $unity-text-color; + } + } + } + + #updateContainer { + height: $controls-height; + flex: 1 0 0; + align-items: flex-end; + + @include padding-box(0); + } + + + + .button { + height: $controls-height; + @include font-normal(); + @include button(3,3,4,3); + } + } + + #detailVersion { + font-size: 16; + max-height: 30; + } + + #detailName { + flex: 1 0 0; + max-height: 20; + -unity-font-style: italic; + } + + #detailPackageStatus { + flex: 1 0 0; + -unity-font-style: bold; + -unity-word-wrap: true; + } + + #detailTag { + width: 60; + @include font-normal(); + border-radius: 5; + border-color: rgb(180, 180, 180); + @include border-box(2); + -unity-text-align: middle-center; + } + + #detailDesc, #detailModuleReference { + flex: 1 0 0; + @include font-normal(); + -unity-word-wrap: true; + + &.empty { + -unity-font-style: italic; + } + } + + #detailAuthor { + flex: 1 0 0; + @include font-normal(); + -unity-word-wrap: true; + } + + #detailCategory { + flex: 1 0 0; + @include font-normal(); + -unity-word-wrap: true; + + @include margin(auto, auto, 5, auto); + } + + #changeLogContainer, #viewLicensesContainer { + flex: 0 0 auto; + flex-direction: row; + } + + #detailActions, .detailActions { + flex: 0 0 auto; + flex-direction: row; + margin-left: 2; + + @extend .row; + + .detailAction { + @include margin(auto, 0, auto, 0); + @include padding(auto, 2, auto, 2); + border-left-width: 2; + border-right-width: 2; + } + + .detailActionSeparator { + @include margin(auto, 0, auto, 0); + @include padding(auto, 0, auto, 0); + border-left-width: 0; + border-right-width: 0; + } + + #thirdPartyNoticeLabel { + @include margin(4, 0, 4, 0); + @include padding-box(0); + -unity-word-wrap: true; + } + + #viewThirdParty { + border-right-width: 0; + } + } + + .versionContainer { + @extend .row; + align-items: center; + justify-content: flex-start; + + #detailVersion { + flex: 0 0 auto; + } + } + + .tag { + border-color: $package-tag-color; + color: $package-tag-color; + + &.verified { + border-color: $package-tag-recommended-color; + color: $package-tag-recommended-color; + } + } + + .tagLines { + } + + .tagLine { + flex: 0 0 auto; + flex-direction: row; + } + + .tagContainer { + } + } + } + + #detailError { + -unity-position: absolute; + @include position(5, 5, auto, 5); + min-height: 200; + -unity-word-wrap: true; + + &.display-none { + @include position(0, 0, 0, 0); + width: 0; + height: 0; + min-height: 0; + max-height: 0; + @include border-box(0); + @include padding-box(0); + @include margin-box(0); + } + } + + #packageStatusBar { + -unity-position: relative; + + flex: 0 0 auto; + @include margin(2, 0, 0, 0); + + border-color: rgba(0, 0, 0, 0.5); + @include border(1, 0, 0, 0); + } + + #statusBarContainer { + flex-direction: row; + align-items: center; + justify-content: space-between; + + #loadingContainer{ + + flex-direction: row; + align-items: center; + justify-content: flex-start; + + margin-left: 2; + + #loadingIcon { + background-image: $background-status-error; + width: 16; + height: 16; + margin-left: -12; + margin-right: 0; + } + + #loadingText { + padding-left: 2; + -unity-font-style: italic; + + &.icon { + margin-left: 0; + } + } + } + + #moreAddOptionsButton { + font-size: 16; + background-image: none; + @include margin(0, 0, -2, 0); + @include padding(3, 6, 6, 6); + border-color: rgba(0, 0, 0, 0.5); + @include border(0, 1, 0, 0); + } + } + + #packageAddFromUrlField { + -unity-position: absolute; + @include position(-35, 0, 0, 0); + } + + #addFromUrlFieldContainer { + border-color: rgba(0, 0, 0, 0.5); + @include border(1, 0, 1, 0); + + flex-direction: row; + justify-content: space-between; + align-items: center; + + height: 35; + background-color: $unity-background; + + #urlTextField { + flex: 1 0 0; + height: 20; + -unity-text-align: middle-left; + } + + #addFromUrlButton { + flex: 0 0 auto; + height: 20; + } + } +} + +.alert { + background-color: rgba(200,0,0,0.8); + border-color: #FF0000; + flex-direction: row; + + @include border-box(1); + @include padding(5, 10, 5, 10); + + #alertMessage { + flex: 1 0 0; + color: $unity-text-color-highlight; + -unity-word-wrap: true; + @include text-clip(); + } + + #close { + flex: 0 0 auto; + max-height: 30; + @include position(auto, auto, auto, 5); + @include button(3,3,4,3); + } +} + +.spinner { + flex: 0 0 auto; + @include position(-$spinner-normal-half-size, auto, auto, -$spinner-normal-half-size); + + min-width: $spinner-normal-size; + min-height: $spinner-normal-size; + max-width: $spinner-normal-size; + max-height: $spinner-normal-size; + background-image: $background-spinner-normal; +} + +.largeSpinner { + flex: 0 0 auto; + @include position(-$spinner-large-half-size, auto, auto, -$spinner-large-half-size); + + min-width: $spinner-large-size; + min-height: $spinner-large-size; + max-width: $spinner-large-size; + max-height: $spinner-large-size; + background-image: $background-spinner-large; +} diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.package-manager-ui@2.0.8/Editor/Resources/Styles/_common.scss.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.package-manager-ui@2.0.8/Editor/Resources/Styles/_common.scss.meta" new file mode 100644 index 00000000..8acfd266 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.package-manager-ui@2.0.8/Editor/Resources/Styles/_common.scss.meta" @@ -0,0 +1,7 @@ +fileFormatVersion: 2 +guid: e45f79867376940b7ba31502238d8efa +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.package-manager-ui@2.0.8/Editor/Resources/Templates.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.package-manager-ui@2.0.8/Editor/Resources/Templates.meta" new file mode 100644 index 00000000..79b2a2dc --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.package-manager-ui@2.0.8/Editor/Resources/Templates.meta" @@ -0,0 +1,10 @@ +fileFormatVersion: 2 +guid: 1cf679539c5e5499e8856aaacf1fc32f +folderAsset: yes +timeCreated: 1502292048 +licenseType: Pro +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.package-manager-ui@2.0.8/Editor/Resources/Templates/Alert.uxml" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.package-manager-ui@2.0.8/Editor/Resources/Templates/Alert.uxml" new file mode 100644 index 00000000..1eb92484 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.package-manager-ui@2.0.8/Editor/Resources/Templates/Alert.uxml" @@ -0,0 +1,10 @@ + + + + + + + diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.package-manager-ui@2.0.8/Editor/Resources/Templates/Alert.uxml.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.package-manager-ui@2.0.8/Editor/Resources/Templates/Alert.uxml.meta" new file mode 100644 index 00000000..291949ae --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.package-manager-ui@2.0.8/Editor/Resources/Templates/Alert.uxml.meta" @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 4f768b64e6c37495699fffe3007e4379 +ScriptedImporter: + fileIDToRecycleName: + 11400000: tree + 11400002: inlineStyle + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: + script: {fileID: 13804, guid: 0000000000000000e000000000000000, type: 0} diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.package-manager-ui@2.0.8/Editor/Resources/Templates/PackageAddFromUrlField.uxml" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.package-manager-ui@2.0.8/Editor/Resources/Templates/PackageAddFromUrlField.uxml" new file mode 100644 index 00000000..84a52309 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.package-manager-ui@2.0.8/Editor/Resources/Templates/PackageAddFromUrlField.uxml" @@ -0,0 +1,13 @@ + + + + + + + + diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.package-manager-ui@2.0.8/Editor/Resources/Templates/PackageAddFromUrlField.uxml.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.package-manager-ui@2.0.8/Editor/Resources/Templates/PackageAddFromUrlField.uxml.meta" new file mode 100644 index 00000000..f1867367 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.package-manager-ui@2.0.8/Editor/Resources/Templates/PackageAddFromUrlField.uxml.meta" @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 97dff1b5ae41ee84886ae7a80ae21499 +ScriptedImporter: + fileIDToRecycleName: + 11400000: tree + 11400002: inlineStyle + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: + script: {fileID: 13804, guid: 0000000000000000e000000000000000, type: 0} diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.package-manager-ui@2.0.8/Editor/Resources/Templates/PackageDetails.uxml" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.package-manager-ui@2.0.8/Editor/Resources/Templates/PackageDetails.uxml" new file mode 100644 index 00000000..709bddd3 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.package-manager-ui@2.0.8/Editor/Resources/Templates/PackageDetails.uxml" @@ -0,0 +1,67 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.package-manager-ui@2.0.8/Editor/Resources/Templates/PackageDetails.uxml.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.package-manager-ui@2.0.8/Editor/Resources/Templates/PackageDetails.uxml.meta" new file mode 100644 index 00000000..f9bfba14 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.package-manager-ui@2.0.8/Editor/Resources/Templates/PackageDetails.uxml.meta" @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 93c1370867fcb45079592da39e0994c5 +ScriptedImporter: + fileIDToRecycleName: + 11400000: tree + 11400002: inlineStyle + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: + script: {fileID: 13804, guid: 0000000000000000e000000000000000, type: 0} diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.package-manager-ui@2.0.8/Editor/Resources/Templates/PackageGroup.uxml" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.package-manager-ui@2.0.8/Editor/Resources/Templates/PackageGroup.uxml" new file mode 100644 index 00000000..15a9e774 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.package-manager-ui@2.0.8/Editor/Resources/Templates/PackageGroup.uxml" @@ -0,0 +1,13 @@ + + + + + + + + + + diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.package-manager-ui@2.0.8/Editor/Resources/Templates/PackageGroup.uxml.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.package-manager-ui@2.0.8/Editor/Resources/Templates/PackageGroup.uxml.meta" new file mode 100644 index 00000000..31eed0fb --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.package-manager-ui@2.0.8/Editor/Resources/Templates/PackageGroup.uxml.meta" @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 25ebe415cc14c4f4ea15c34a796b75bb +ScriptedImporter: + fileIDToRecycleName: + 11400000: tree + 11400002: inlineStyle + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: + script: {fileID: 13804, guid: 0000000000000000e000000000000000, type: 0} diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.package-manager-ui@2.0.8/Editor/Resources/Templates/PackageItem.uxml" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.package-manager-ui@2.0.8/Editor/Resources/Templates/PackageItem.uxml" new file mode 100644 index 00000000..499aa31e --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.package-manager-ui@2.0.8/Editor/Resources/Templates/PackageItem.uxml" @@ -0,0 +1,18 @@ + + + + + + + + + + + + + diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.package-manager-ui@2.0.8/Editor/Resources/Templates/PackageItem.uxml.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.package-manager-ui@2.0.8/Editor/Resources/Templates/PackageItem.uxml.meta" new file mode 100644 index 00000000..1102a59f --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.package-manager-ui@2.0.8/Editor/Resources/Templates/PackageItem.uxml.meta" @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 10145f279f90346bbb61712ff585828b +ScriptedImporter: + fileIDToRecycleName: + 11400000: tree + 11400002: inlineStyle + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: + script: {fileID: 13804, guid: 0000000000000000e000000000000000, type: 0} diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.package-manager-ui@2.0.8/Editor/Resources/Templates/PackageList.uxml" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.package-manager-ui@2.0.8/Editor/Resources/Templates/PackageList.uxml" new file mode 100644 index 00000000..05956ed6 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.package-manager-ui@2.0.8/Editor/Resources/Templates/PackageList.uxml" @@ -0,0 +1,20 @@ + + + + + + + + + + + + + + + diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.package-manager-ui@2.0.8/Editor/Resources/Templates/PackageList.uxml.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.package-manager-ui@2.0.8/Editor/Resources/Templates/PackageList.uxml.meta" new file mode 100644 index 00000000..3092d211 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.package-manager-ui@2.0.8/Editor/Resources/Templates/PackageList.uxml.meta" @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 46c02d8d6499b4309ac1ec5d0b818585 +ScriptedImporter: + fileIDToRecycleName: + 11400000: tree + 11400002: inlineStyle + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: + script: {fileID: 13804, guid: 0000000000000000e000000000000000, type: 0} diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.package-manager-ui@2.0.8/Editor/Resources/Templates/PackageManagerToolbar.uxml" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.package-manager-ui@2.0.8/Editor/Resources/Templates/PackageManagerToolbar.uxml" new file mode 100644 index 00000000..0283a338 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.package-manager-ui@2.0.8/Editor/Resources/Templates/PackageManagerToolbar.uxml" @@ -0,0 +1,18 @@ + + + + + + + + + + + + + diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.package-manager-ui@2.0.8/Editor/Resources/Templates/PackageManagerToolbar.uxml.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.package-manager-ui@2.0.8/Editor/Resources/Templates/PackageManagerToolbar.uxml.meta" new file mode 100644 index 00000000..00894beb --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.package-manager-ui@2.0.8/Editor/Resources/Templates/PackageManagerToolbar.uxml.meta" @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 3aba9fe1ad29b42ffb0eea781318a626 +ScriptedImporter: + fileIDToRecycleName: + 11400000: tree + 11400002: inlineStyle + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: + script: {fileID: 13804, guid: 0000000000000000e000000000000000, type: 0} diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.package-manager-ui@2.0.8/Editor/Resources/Templates/PackageManagerWindow.uxml" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.package-manager-ui@2.0.8/Editor/Resources/Templates/PackageManagerWindow.uxml" new file mode 100644 index 00000000..12d15040 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.package-manager-ui@2.0.8/Editor/Resources/Templates/PackageManagerWindow.uxml" @@ -0,0 +1,18 @@ + + + + + + + + + + + + + diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.package-manager-ui@2.0.8/Editor/Resources/Templates/PackageManagerWindow.uxml.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.package-manager-ui@2.0.8/Editor/Resources/Templates/PackageManagerWindow.uxml.meta" new file mode 100644 index 00000000..1dcb82ab --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.package-manager-ui@2.0.8/Editor/Resources/Templates/PackageManagerWindow.uxml.meta" @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: a8d9e44eff3f447db9448925617ccb44 +ScriptedImporter: + fileIDToRecycleName: + 11400000: tree + 11400002: inlineStyle + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: + script: {fileID: 13804, guid: 0000000000000000e000000000000000, type: 0} diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.package-manager-ui@2.0.8/Editor/Resources/Templates/PackageSearchToolbar.uxml" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.package-manager-ui@2.0.8/Editor/Resources/Templates/PackageSearchToolbar.uxml" new file mode 100644 index 00000000..32240389 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.package-manager-ui@2.0.8/Editor/Resources/Templates/PackageSearchToolbar.uxml" @@ -0,0 +1,10 @@ + + + + + + + diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.package-manager-ui@2.0.8/Editor/Resources/Templates/PackageSearchToolbar.uxml.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.package-manager-ui@2.0.8/Editor/Resources/Templates/PackageSearchToolbar.uxml.meta" new file mode 100644 index 00000000..272fe81f --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.package-manager-ui@2.0.8/Editor/Resources/Templates/PackageSearchToolbar.uxml.meta" @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: cd44c1bc0fa624a39aa784af44c62180 +ScriptedImporter: + fileIDToRecycleName: + 11400000: tree + 11400002: inlineStyle + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: + script: {fileID: 13804, guid: 0000000000000000e000000000000000, type: 0} diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.package-manager-ui@2.0.8/Editor/Resources/Templates/PackageStatusBar.uxml" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.package-manager-ui@2.0.8/Editor/Resources/Templates/PackageStatusBar.uxml" new file mode 100644 index 00000000..2a37506d --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.package-manager-ui@2.0.8/Editor/Resources/Templates/PackageStatusBar.uxml" @@ -0,0 +1,20 @@ + + + + + + + + + + + + + + + diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.package-manager-ui@2.0.8/Editor/Resources/Templates/PackageStatusBar.uxml.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.package-manager-ui@2.0.8/Editor/Resources/Templates/PackageStatusBar.uxml.meta" new file mode 100644 index 00000000..9a037be1 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.package-manager-ui@2.0.8/Editor/Resources/Templates/PackageStatusBar.uxml.meta" @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: bbec1324b05a54939ad2fea2d7e11063 +ScriptedImporter: + fileIDToRecycleName: + 11400000: tree + 11400002: inlineStyle + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: + script: {fileID: 13804, guid: 0000000000000000e000000000000000, type: 0} diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.package-manager-ui@2.0.8/Editor/Resources/Templates/UIElementsSchema.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.package-manager-ui@2.0.8/Editor/Resources/Templates/UIElementsSchema.meta" new file mode 100644 index 00000000..89278cd3 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.package-manager-ui@2.0.8/Editor/Resources/Templates/UIElementsSchema.meta" @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 3a2bf0128e2dd664f91dfba49e36a012 +folderAsset: yes +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.package-manager-ui@2.0.8/Editor/Resources/Templates/UIElementsSchema/UIElements.xsd" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.package-manager-ui@2.0.8/Editor/Resources/Templates/UIElementsSchema/UIElements.xsd" new file mode 100644 index 00000000..58841e74 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.package-manager-ui@2.0.8/Editor/Resources/Templates/UIElementsSchema/UIElements.xsd" @@ -0,0 +1,6 @@ + + + + + + \ No newline at end of file diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.package-manager-ui@2.0.8/Editor/Resources/Templates/UIElementsSchema/UIElements.xsd.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.package-manager-ui@2.0.8/Editor/Resources/Templates/UIElementsSchema/UIElements.xsd.meta" new file mode 100644 index 00000000..7bd10ba3 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.package-manager-ui@2.0.8/Editor/Resources/Templates/UIElementsSchema/UIElements.xsd.meta" @@ -0,0 +1,7 @@ +fileFormatVersion: 2 +guid: 7d22934bf84ccd14082fd2d5a9f5951e +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.package-manager-ui@2.0.8/Editor/Resources/Templates/UIElementsSchema/UnityEditor.Experimental.UIElements.xsd" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.package-manager-ui@2.0.8/Editor/Resources/Templates/UIElementsSchema/UnityEditor.Experimental.UIElements.xsd" new file mode 100644 index 00000000..4b11a3a5 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.package-manager-ui@2.0.8/Editor/Resources/Templates/UIElementsSchema/UnityEditor.Experimental.UIElements.xsd" @@ -0,0 +1,173 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.package-manager-ui@2.0.8/Editor/Resources/Templates/UIElementsSchema/UnityEditor.Experimental.UIElements.xsd.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.package-manager-ui@2.0.8/Editor/Resources/Templates/UIElementsSchema/UnityEditor.Experimental.UIElements.xsd.meta" new file mode 100644 index 00000000..315df546 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.package-manager-ui@2.0.8/Editor/Resources/Templates/UIElementsSchema/UnityEditor.Experimental.UIElements.xsd.meta" @@ -0,0 +1,7 @@ +fileFormatVersion: 2 +guid: 86d0242b70e6ab24aaf5a0e67edf2a61 +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.package-manager-ui@2.0.8/Editor/Resources/Templates/UIElementsSchema/UnityEditor.PackageManager.UI.xsd" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.package-manager-ui@2.0.8/Editor/Resources/Templates/UIElementsSchema/UnityEditor.PackageManager.UI.xsd" new file mode 100644 index 00000000..c0200c5b --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.package-manager-ui@2.0.8/Editor/Resources/Templates/UIElementsSchema/UnityEditor.PackageManager.UI.xsd" @@ -0,0 +1,100 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.package-manager-ui@2.0.8/Editor/Resources/Templates/UIElementsSchema/UnityEditor.PackageManager.UI.xsd.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.package-manager-ui@2.0.8/Editor/Resources/Templates/UIElementsSchema/UnityEditor.PackageManager.UI.xsd.meta" new file mode 100644 index 00000000..964349cb --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.package-manager-ui@2.0.8/Editor/Resources/Templates/UIElementsSchema/UnityEditor.PackageManager.UI.xsd.meta" @@ -0,0 +1,7 @@ +fileFormatVersion: 2 +guid: 3abc8faab9f5cbe4db0336c99fef85ca +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.package-manager-ui@2.0.8/Editor/Resources/Templates/UIElementsSchema/UnityEngine.Experimental.UIElements.xsd" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.package-manager-ui@2.0.8/Editor/Resources/Templates/UIElementsSchema/UnityEngine.Experimental.UIElements.xsd" new file mode 100644 index 00000000..59b13379 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.package-manager-ui@2.0.8/Editor/Resources/Templates/UIElementsSchema/UnityEngine.Experimental.UIElements.xsd" @@ -0,0 +1,269 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.package-manager-ui@2.0.8/Editor/Resources/Templates/UIElementsSchema/UnityEngine.Experimental.UIElements.xsd.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.package-manager-ui@2.0.8/Editor/Resources/Templates/UIElementsSchema/UnityEngine.Experimental.UIElements.xsd.meta" new file mode 100644 index 00000000..1239813f --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.package-manager-ui@2.0.8/Editor/Resources/Templates/UIElementsSchema/UnityEngine.Experimental.UIElements.xsd.meta" @@ -0,0 +1,7 @@ +fileFormatVersion: 2 +guid: 9da568db70dafa345a908282554b3672 +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.package-manager-ui@2.0.8/Editor/Sources.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.package-manager-ui@2.0.8/Editor/Sources.meta" new file mode 100644 index 00000000..a5126eda --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.package-manager-ui@2.0.8/Editor/Sources.meta" @@ -0,0 +1,10 @@ +fileFormatVersion: 2 +guid: 3c61c79a991f84470843243e9710743e +folderAsset: yes +timeCreated: 1502224504 +licenseType: Pro +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.package-manager-ui@2.0.8/Editor/Sources/External.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.package-manager-ui@2.0.8/Editor/Sources/External.meta" new file mode 100644 index 00000000..4d6fb482 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.package-manager-ui@2.0.8/Editor/Sources/External.meta" @@ -0,0 +1,3 @@ +fileFormatVersion: 2 +guid: 06b575597b644fe8ba88495149d01b66 +timeCreated: 1503684160 \ No newline at end of file diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.package-manager-ui@2.0.8/Editor/Sources/External/SemVersion.cs" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.package-manager-ui@2.0.8/Editor/Sources/External/SemVersion.cs" new file mode 100644 index 00000000..d27d9e41 --- /dev/null +++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.package-manager-ui@2.0.8/Editor/Sources/External/SemVersion.cs" @@ -0,0 +1,563 @@ +/* +Copyright (c) 2013 Max Hauser + +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. + +From: https://github.com/maxhauser/semver +*/ + +using System; +#if !NETSTANDARD +using System.Globalization; +using System.Runtime.Serialization; +using System.Security.Permissions; +#endif +using System.Text.RegularExpressions; + +namespace Semver +{ + /// + /// A semantic version implementation. + /// Conforms to v2.0.0 of http://semver.org/ + /// +#if NETSTANDARD + public sealed class SemVersion : IComparable, IComparable +#else + [Serializable] + internal sealed class SemVersion : IComparable, IComparable, ISerializable +#endif + { + static Regex parseEx = + new Regex(@"^(?\d+)" + + @"(\.(?\d+))?" + + @"(\.(?\d+))?" + + @"(\-(?
[0-9A-Za-z\-\.]+))?" +
+                @"(\+(?[0-9A-Za-z\-\.]+))?$",
+#if NETSTANDARD
+                RegexOptions.CultureInvariant | RegexOptions.ExplicitCapture);
+#else
+                RegexOptions.CultureInvariant | RegexOptions.Compiled | RegexOptions.ExplicitCapture);
+#endif
+
+#if !NETSTANDARD
+        /// 
+        /// Initializes a new instance of the  class.
+        /// 
+        /// 
+        /// 
+        /// 
+        private SemVersion(SerializationInfo info, StreamingContext context)
+        {
+            if (info == null) throw new ArgumentNullException("info");
+            var semVersion = Parse(info.GetString("SemVersion"));
+            Major = semVersion.Major;
+            Minor = semVersion.Minor;
+            Patch = semVersion.Patch;
+            Prerelease = semVersion.Prerelease;
+            Build = semVersion.Build;
+        }
+#endif
+
+        /// 
+        /// Initializes a new instance of the  class.
+        /// 
+        /// The major version.
+        /// The minor version.
+        /// The patch version.
+        /// The prerelease version (eg. "alpha").
+        /// The build eg ("nightly.232").
+        public SemVersion(int major, int minor = 0, int patch = 0, string prerelease = "", string build = "")
+        {
+            this.Major = major;
+            this.Minor = minor;
+            this.Patch = patch;
+
+            this.Prerelease = prerelease ?? "";
+            this.Build = build ?? "";
+        }
+
+        /// 
+        /// Initializes a new instance of the  class.
+        /// 
+        /// The  that is used to initialize 
+        /// the Major, Minor, Patch and Build properties.
+        public SemVersion(Version version)
+        {
+            if (version == null)
+                throw new ArgumentNullException("version");
+
+            this.Major = version.Major;
+            this.Minor = version.Minor;
+
+            if (version.Revision >= 0)
+            {
+                this.Patch = version.Revision;
+            }
+
+            this.Prerelease = String.Empty;
+
+            if (version.Build > 0)
+            {
+                this.Build = version.Build.ToString();
+            }
+            else
+            {
+                this.Build = String.Empty;
+            }
+        }
+
+        /// 
+        /// Parses the specified string to a semantic version.
+        /// 
+        /// The version string.
+        /// If set to true minor and patch version are required, else they default to 0.
+        /// The SemVersion object.
+        /// When a invalid version string is passed.
+        public static SemVersion Parse(string version, bool strict = false)
+        {
+            var match = parseEx.Match(version);
+            if (!match.Success)
+            {
+                return new SemVersion(0);
+            }
+
+#if NETSTANDARD
+            var major = int.Parse(match.Groups["major"].Value);
+#else
+            var major = int.Parse(match.Groups["major"].Value, CultureInfo.InvariantCulture);
+#endif
+
+            var minorMatch = match.Groups["minor"];
+            int minor = 0;
+            if (minorMatch.Success) 
+            {
+#if NETSTANDARD
+                minor = int.Parse(minorMatch.Value);
+#else
+                minor = int.Parse(minorMatch.Value, CultureInfo.InvariantCulture);
+#endif
+            }
+            else if (strict)
+            {
+                throw new InvalidOperationException("Invalid version (no minor version given in strict mode)");
+            }
+
+            var patchMatch = match.Groups["patch"];
+            int patch = 0;
+            if (patchMatch.Success)
+            {
+#if NETSTANDARD
+                patch = int.Parse(patchMatch.Value);
+#else
+                patch = int.Parse(patchMatch.Value, CultureInfo.InvariantCulture);
+#endif
+            }
+            else if (strict) 
+            {
+                throw new InvalidOperationException("Invalid version (no patch version given in strict mode)");
+            }
+
+            var prerelease = match.Groups["pre"].Value;
+            var build = match.Groups["build"].Value;
+
+            return new SemVersion(major, minor, patch, prerelease, build);
+        }
+
+        /// 
+        /// Parses the specified string to a semantic version.
+        /// 
+        /// The version string.
+        /// When the method returns, contains a SemVersion instance equivalent 
+        /// to the version string passed in, if the version string was valid, or null if the 
+        /// version string was not valid.
+        /// If set to true minor and patch version are required, else they default to 0.
+        /// False when a invalid version string is passed, otherwise true.
+        public static bool TryParse(string version, out SemVersion semver, bool strict = false)
+        {
+            try
+            {
+                semver = Parse(version, strict);
+                return true;
+            }
+            catch (Exception)
+            {
+                semver = null;
+                return false;
+            }
+        }
+
+        /// 
+        /// Tests the specified versions for equality.
+        /// 
+        /// The first version.
+        /// The second version.
+        /// If versionA is equal to versionB true, else false.
+        public static bool Equals(SemVersion versionA, SemVersion versionB)
+        {
+            if (ReferenceEquals(versionA, null))
+                return ReferenceEquals(versionB, null);
+            return versionA.Equals(versionB);
+        }
+
+        /// 
+        /// Compares the specified versions.
+        /// 
+        /// The version to compare to.
+        /// The version to compare against.
+        /// If versionA < versionB < 0, if versionA > versionB > 0,
+        /// if versionA is equal to versionB 0.
+        public static int Compare(SemVersion versionA, SemVersion versionB)
+        {
+            if (ReferenceEquals(versionA, null))
+                return ReferenceEquals(versionB, null) ? 0 : -1;
+            return versionA.CompareTo(versionB);
+        }
+
+        /// 
+        /// Make a copy of the current instance with optional altered fields. 
+        /// 
+        /// The major version.
+        /// The minor version.
+        /// The patch version.
+        /// The prerelease text.
+        /// The build text.
+        /// The new version object.
+        public SemVersion Change(int? major = null, int? minor = null, int? patch = null,
+            string prerelease = null, string build = null)
+        {
+            return new SemVersion(
+                major ?? this.Major,
+                minor ?? this.Minor,
+                patch ?? this.Patch,
+                prerelease ?? this.Prerelease,
+                build ?? this.Build);
+        }
+
+        /// 
+        /// Gets the major version.
+        /// 
+        /// 
+        /// The major version.
+        /// 
+        public int Major { get; private set; }
+
+        /// 
+        /// Gets the minor version.
+        /// 
+        /// 
+        /// The minor version.
+        /// 
+        public int Minor { get; private set; }
+
+        /// 
+        /// Gets the patch version.
+        /// 
+        /// 
+        /// The patch version.
+        /// 
+        public int Patch { get; private set; }
+
+        /// 
+        /// Gets the pre-release version.
+        /// 
+        /// 
+        /// The pre-release version.
+        /// 
+        public string Prerelease { get; private set; }
+
+        /// 
+        /// Gets the build version.
+        /// 
+        /// 
+        /// The build version.
+        /// 
+        public string Build { get; private set; }
+
+        /// 
+        /// Returns a  that represents this instance.
+        /// 
+        /// 
+        /// A  that represents this instance.
+        /// 
+        public override string ToString()
+        {
+            var version = "" + Major + "." + Minor + "." + Patch;
+            if (!String.IsNullOrEmpty(Prerelease))
+                version += "-" + Prerelease;
+            if (!String.IsNullOrEmpty(Build))
+                version += "+" + Build;
+            return version;
+        }
+
+        /// 
+        /// Compares the current instance with another object of the same type and returns an integer that indicates 
+        /// whether the current instance precedes, follows, or occurs in the same position in the sort order as the 
+        /// other object.
+        /// 
+        /// An object to compare with this instance.
+        /// 
+        /// A value that indicates the relative order of the objects being compared. 
+        /// The return value has these meanings: Value Meaning Less than zero 
+        ///  This instance precedes  in the sort order. 
+        ///  Zero This instance occurs in the same position in the sort order as . i
+        ///  Greater than zero This instance follows  in the sort order.
+        /// 
+        public int CompareTo(object obj)
+        {
+            return CompareTo((SemVersion)obj);
+        }
+
+        /// 
+        /// Compares the current instance with another object of the same type and returns an integer that indicates 
+        /// whether the current instance precedes, follows, or occurs in the same position in the sort order as the 
+        /// other object.
+        /// 
+        /// An object to compare with this instance.
+        /// 
+        /// A value that indicates the relative order of the objects being compared. 
+        /// The return value has these meanings: Value Meaning Less than zero 
+        ///  This instance precedes  in the sort order. 
+        ///  Zero This instance occurs in the same position in the sort order as . i
+        ///  Greater than zero This instance follows  in the sort order.
+        /// 
+        public int CompareTo(SemVersion other)
+        {
+            if (ReferenceEquals(other, null))
+                return 1;
+
+            var r = this.CompareByPrecedence(other);
+            if (r != 0)
+                return r;
+
+            r = CompareComponent(this.Build, other.Build);
+            return r;
+        }
+
+        /// 
+        /// Compares to semantic versions by precedence. This does the same as a Equals, but ignores the build information.
+        /// 
+        /// The semantic version.
+        /// true if the version precedence matches.
+        public bool PrecedenceMatches(SemVersion other)
+        {
+            return CompareByPrecedence(other) == 0;
+        }
+
+        /// 
+        /// Compares to semantic versions by precedence. This does the same as a Equals, but ignores the build information.
+        /// 
+        /// The semantic version.
+        /// 
+        /// A value that indicates the relative order of the objects being compared. 
+        /// The return value has these meanings: Value Meaning Less than zero 
+        ///  This instance precedes  in the version precedence.
+        ///  Zero This instance has the same precedence as . i
+        ///  Greater than zero This instance has creater precedence as .
+        /// 
+        public int CompareByPrecedence(SemVersion other)
+        {
+            if (ReferenceEquals(other, null))
+                return 1;
+
+            var r = this.Major.CompareTo(other.Major);
+            if (r != 0) return r;
+
+            r = this.Minor.CompareTo(other.Minor);
+            if (r != 0) return r;
+
+            r = this.Patch.CompareTo(other.Patch);
+            if (r != 0) return r;
+
+            r = CompareComponent(this.Prerelease, other.Prerelease, true);
+            return r;
+        }
+
+        static int CompareComponent(string a, string b, bool lower = false)
+        {
+            var aEmpty = String.IsNullOrEmpty(a);
+            var bEmpty = String.IsNullOrEmpty(b);
+            if (aEmpty && bEmpty)
+                return 0;
+
+            if (aEmpty)
+                return lower ? 1 : -1;
+            if (bEmpty)
+                return lower ? -1 : 1;
+
+            var aComps = a.Split('.');
+            var bComps = b.Split('.');
+
+            var minLen = Math.Min(aComps.Length, bComps.Length);
+            for (int i = 0; i < minLen; i++)
+            {
+                var ac = aComps[i];
+                var bc = bComps[i];
+                int anum, bnum;
+                var isanum = Int32.TryParse(ac, out anum);
+                var isbnum = Int32.TryParse(bc, out bnum);
+                int r;
+                if (isanum && isbnum)
+                {
+                    r = anum.CompareTo(bnum);
+                    if (r != 0) return anum.CompareTo(bnum);
+                }
+                else
+                {
+                    if (isanum)
+                        return -1;
+                    if (isbnum)
+                        return 1;
+                    r = String.CompareOrdinal(ac, bc);
+                    if (r != 0)
+                        return r;
+                }
+            }
+
+            return aComps.Length.CompareTo(bComps.Length);
+        }
+
+        /// 
+        /// Determines whether the specified  is equal to this instance.
+        /// 
+        /// The  to compare with this instance.
+        /// 
+        ///   true if the specified  is equal to this instance; otherwise, false.
+        /// 
+        public override bool Equals(object obj)
+        {
+            if (ReferenceEquals(obj, null))
+                return false;
+
+            if (ReferenceEquals(this, obj))
+                return true;
+
+            var other = (SemVersion)obj;
+
+            return this.Major == other.Major &&
+                this.Minor == other.Minor &&
+                this.Patch == other.Patch &&
+                string.Equals(this.Prerelease, other.Prerelease, StringComparison.Ordinal) &&
+                string.Equals(this.Build, other.Build, StringComparison.Ordinal);
+        }
+
+        /// 
+        /// Returns a hash code for this instance.
+        /// 
+        /// 
+        /// A hash code for this instance, suitable for use in hashing algorithms and data structures like a hash table. 
+        /// 
+        public override int GetHashCode()
+        {
+            unchecked
+            {
+                int result = this.Major.GetHashCode();
+                result = result * 31 + this.Minor.GetHashCode();
+                result = result * 31 + this.Patch.GetHashCode();
+                result = result * 31 + this.Prerelease.GetHashCode();
+                result = result * 31 + this.Build.GetHashCode();
+                return result;
+            }
+        }
+
+#if !NETSTANDARD
+        [SecurityPermission(SecurityAction.Demand, SerializationFormatter = true)]
+        public void GetObjectData(SerializationInfo info, StreamingContext context)
+        {
+            if (info == null) throw new ArgumentNullException("info");
+            info.AddValue("SemVersion", ToString());
+        }
+#endif
+
+        /// 
+        /// Implicit conversion from string to SemVersion.
+        /// 
+        /// The semantic version.
+        /// The SemVersion object.
+        public static implicit operator SemVersion(string version)
+        {
+            return SemVersion.Parse(version);
+        }
+
+        /// 
+        /// The override of the equals operator. 
+        /// 
+        /// The left value.
+        /// The right value.
+        /// If left is equal to right true, else false.
+        public static bool operator ==(SemVersion left, SemVersion right)
+        {
+            return SemVersion.Equals(left, right);
+        }
+
+        /// 
+        /// The override of the un-equal operator. 
+        /// 
+        /// The left value.
+        /// The right value.
+        /// If left is not equal to right true, else false.
+        public static bool operator !=(SemVersion left, SemVersion right)
+        {
+            return !SemVersion.Equals(left, right);
+        }
+
+        /// 
+        /// The override of the greater operator. 
+        /// 
+        /// The left value.
+        /// The right value.
+        /// If left is greater than right true, else false.
+        public static bool operator >(SemVersion left, SemVersion right)
+        {
+            return SemVersion.Compare(left, right) > 0;
+        }
+
+        /// 
+        /// The override of the greater than or equal operator. 
+        /// 
+        /// The left value.
+        /// The right value.
+        /// If left is greater than or equal to right true, else false.
+        public static bool operator >=(SemVersion left, SemVersion right)
+        {
+            return left == right || left > right;
+        }
+
+        /// 
+        /// The override of the less operator. 
+        /// 
+        /// The left value.
+        /// The right value.
+        /// If left is less than right true, else false.
+        public static bool operator <(SemVersion left, SemVersion right)
+        {
+            return SemVersion.Compare(left, right) < 0;
+        }
+
+        /// 
+        /// The override of the less than or equal operator. 
+        /// 
+        /// The left value.
+        /// The right value.
+        /// If left is less than or equal to right true, else false.
+        public static bool operator <=(SemVersion left, SemVersion right)
+        {
+            return left == right || left < right;
+        }
+    }
+}
\ No newline at end of file
diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.package-manager-ui@2.0.8/Editor/Sources/External/SemVersion.cs.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.package-manager-ui@2.0.8/Editor/Sources/External/SemVersion.cs.meta"
new file mode 100644
index 00000000..1734b505
--- /dev/null
+++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.package-manager-ui@2.0.8/Editor/Sources/External/SemVersion.cs.meta"
@@ -0,0 +1,3 @@
+fileFormatVersion: 2
+guid: 5075cb5aa3254b099b11b2840d7cd46e
+timeCreated: 1503684176
\ No newline at end of file
diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.package-manager-ui@2.0.8/Editor/Sources/External/SemVersionExtension.cs" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.package-manager-ui@2.0.8/Editor/Sources/External/SemVersionExtension.cs"
new file mode 100644
index 00000000..4dd8aef6
--- /dev/null
+++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.package-manager-ui@2.0.8/Editor/Sources/External/SemVersionExtension.cs"
@@ -0,0 +1,15 @@
+namespace Semver
+{
+    internal static class SemVersionExtension
+    {
+        public static string VersionOnly(this SemVersion version)
+        {
+            return "" + version.Major + "." + version.Minor + "." + version.Patch;
+        }
+        
+        public static string ShortVersion(this SemVersion version)
+        {
+            return version.Major + "." + version.Minor;
+        }                
+    }
+}
\ No newline at end of file
diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.package-manager-ui@2.0.8/Editor/Sources/External/SemVersionExtension.cs.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.package-manager-ui@2.0.8/Editor/Sources/External/SemVersionExtension.cs.meta"
new file mode 100644
index 00000000..0022e01f
--- /dev/null
+++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.package-manager-ui@2.0.8/Editor/Sources/External/SemVersionExtension.cs.meta"
@@ -0,0 +1,11 @@
+fileFormatVersion: 2
+guid: 9f17a0688211d476f8d8c9742bb9f992
+MonoImporter:
+  externalObjects: {}
+  serializedVersion: 2
+  defaultReferences: []
+  executionOrder: 0
+  icon: {instanceID: 0}
+  userData: 
+  assetBundleName: 
+  assetBundleVariant: 
diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.package-manager-ui@2.0.8/Editor/Sources/Services.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.package-manager-ui@2.0.8/Editor/Sources/Services.meta"
new file mode 100644
index 00000000..27cc5fd2
--- /dev/null
+++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.package-manager-ui@2.0.8/Editor/Sources/Services.meta"
@@ -0,0 +1,10 @@
+fileFormatVersion: 2
+guid: afd7697844f4142f9aa91471c1fba506
+folderAsset: yes
+timeCreated: 1502224642
+licenseType: Pro
+DefaultImporter:
+  externalObjects: {}
+  userData: 
+  assetBundleName: 
+  assetBundleVariant: 
diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.package-manager-ui@2.0.8/Editor/Sources/Services/Common.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.package-manager-ui@2.0.8/Editor/Sources/Services/Common.meta"
new file mode 100644
index 00000000..d59dbe64
--- /dev/null
+++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.package-manager-ui@2.0.8/Editor/Sources/Services/Common.meta"
@@ -0,0 +1,3 @@
+fileFormatVersion: 2
+guid: 1067213df0c64b319bc81e73be809b1a
+timeCreated: 1505249387
\ No newline at end of file
diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.package-manager-ui@2.0.8/Editor/Sources/Services/Common/ApplicationUtil.cs" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.package-manager-ui@2.0.8/Editor/Sources/Services/Common/ApplicationUtil.cs"
new file mode 100644
index 00000000..12691d33
--- /dev/null
+++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.package-manager-ui@2.0.8/Editor/Sources/Services/Common/ApplicationUtil.cs"
@@ -0,0 +1,17 @@
+using System.Linq;
+using UnityEngine;
+
+namespace UnityEditor.PackageManager.UI
+{
+    class ApplicationUtil
+    {
+        public static bool IsPreReleaseVersion
+        {
+            get
+            {
+                var lastToken = Application.unityVersion.Split('.').LastOrDefault();
+                return lastToken.Contains("a") || lastToken.Contains("b");
+            }
+        }
+    }
+}
\ No newline at end of file
diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.package-manager-ui@2.0.8/Editor/Sources/Services/Common/ApplicationUtil.cs.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.package-manager-ui@2.0.8/Editor/Sources/Services/Common/ApplicationUtil.cs.meta"
new file mode 100644
index 00000000..0f1a7670
--- /dev/null
+++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.package-manager-ui@2.0.8/Editor/Sources/Services/Common/ApplicationUtil.cs.meta"
@@ -0,0 +1,11 @@
+fileFormatVersion: 2
+guid: 7ed48dcc992234c659018e00590315b7
+MonoImporter:
+  externalObjects: {}
+  serializedVersion: 2
+  defaultReferences: []
+  executionOrder: 0
+  icon: {instanceID: 0}
+  userData: 
+  assetBundleName: 
+  assetBundleVariant: 
diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.package-manager-ui@2.0.8/Editor/Sources/Services/Common/OperationSignal.cs" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.package-manager-ui@2.0.8/Editor/Sources/Services/Common/OperationSignal.cs"
new file mode 100644
index 00000000..512c7186
--- /dev/null
+++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.package-manager-ui@2.0.8/Editor/Sources/Services/Common/OperationSignal.cs"
@@ -0,0 +1,30 @@
+using System;
+
+namespace UnityEditor.PackageManager.UI
+{
+    [Serializable]
+    internal class OperationSignal where T: IBaseOperation
+    {
+        public event Action OnOperation = delegate { };
+
+        public T Operation { get; set; }
+
+        public void SetOperation(T operation)
+        {
+            Operation = operation;
+            OnOperation(operation);
+        }
+
+        public void WhenOperation(Action callback)
+        {
+            if (Operation != null)
+                callback(Operation);
+            OnOperation += callback;
+        }
+
+        internal void ResetEvents()
+        {
+            OnOperation = delegate { };
+        }
+    }
+}
\ No newline at end of file
diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.package-manager-ui@2.0.8/Editor/Sources/Services/Common/OperationSignal.cs.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.package-manager-ui@2.0.8/Editor/Sources/Services/Common/OperationSignal.cs.meta"
new file mode 100644
index 00000000..a58af903
--- /dev/null
+++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.package-manager-ui@2.0.8/Editor/Sources/Services/Common/OperationSignal.cs.meta"
@@ -0,0 +1,11 @@
+fileFormatVersion: 2
+guid: 7da0c11c52b4044de81c175887699282
+MonoImporter:
+  externalObjects: {}
+  serializedVersion: 2
+  defaultReferences: []
+  executionOrder: 0
+  icon: {instanceID: 0}
+  userData: 
+  assetBundleName: 
+  assetBundleVariant: 
diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.package-manager-ui@2.0.8/Editor/Sources/Services/Common/Resources.cs" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.package-manager-ui@2.0.8/Editor/Sources/Services/Common/Resources.cs"
new file mode 100644
index 00000000..f9cf6e49
--- /dev/null
+++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.package-manager-ui@2.0.8/Editor/Sources/Services/Common/Resources.cs"
@@ -0,0 +1,19 @@
+using UnityEngine.Experimental.UIElements;
+
+namespace UnityEditor.PackageManager.UI
+{
+    internal static class Resources
+    {
+        private static string TemplateRoot { get { return PackageManagerWindow.ResourcesPath + "Templates"; } }
+
+        private static string TemplatePath(string filename)
+        {
+            return string.Format("{0}/{1}", TemplateRoot, filename);
+        }
+
+        public static VisualElement GetTemplate(string templateFilename)
+        {
+            return AssetDatabase.LoadAssetAtPath(TemplatePath(templateFilename)).CloneTree(null);
+        }
+    }
+}
\ No newline at end of file
diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.package-manager-ui@2.0.8/Editor/Sources/Services/Common/Resources.cs.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.package-manager-ui@2.0.8/Editor/Sources/Services/Common/Resources.cs.meta"
new file mode 100644
index 00000000..0f999a70
--- /dev/null
+++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.package-manager-ui@2.0.8/Editor/Sources/Services/Common/Resources.cs.meta"
@@ -0,0 +1,11 @@
+fileFormatVersion: 2
+guid: d6a708dbb74414a6dbd60e07d9513c1c
+MonoImporter:
+  externalObjects: {}
+  serializedVersion: 2
+  defaultReferences: []
+  executionOrder: 0
+  icon: {instanceID: 0}
+  userData: 
+  assetBundleName: 
+  assetBundleVariant: 
diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.package-manager-ui@2.0.8/Editor/Sources/Services/Common/ThreadedDelay.cs" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.package-manager-ui@2.0.8/Editor/Sources/Services/Common/ThreadedDelay.cs"
new file mode 100644
index 00000000..65037539
--- /dev/null
+++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.package-manager-ui@2.0.8/Editor/Sources/Services/Common/ThreadedDelay.cs"
@@ -0,0 +1,35 @@
+using System.Threading;
+
+namespace UnityEditor.PackageManager.UI
+{
+    internal class ThreadedDelay
+    {
+        public int Length { get; set; }            // In milliseconds
+        public bool IsDone { get; private set; }
+
+        public ThreadedDelay(int length = 0)
+        {
+            Length = length;
+            IsDone = false;
+        }
+
+        public void Start()
+        {
+            if (Length <= 0)
+            {
+                IsDone = true;
+                return;
+            }
+
+            IsDone = false;
+            
+            Thread newThread = new Thread(() =>
+            {
+                Thread.Sleep(Length);
+                IsDone = true;
+            });
+            
+            newThread.Start();
+        }
+    }
+}
diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.package-manager-ui@2.0.8/Editor/Sources/Services/Common/ThreadedDelay.cs.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.package-manager-ui@2.0.8/Editor/Sources/Services/Common/ThreadedDelay.cs.meta"
new file mode 100644
index 00000000..543d2281
--- /dev/null
+++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.package-manager-ui@2.0.8/Editor/Sources/Services/Common/ThreadedDelay.cs.meta"
@@ -0,0 +1,3 @@
+fileFormatVersion: 2
+guid: 490fe93dbc954e3ba3651b7f55eaba70
+timeCreated: 1505249395
\ No newline at end of file
diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.package-manager-ui@2.0.8/Editor/Sources/Services/Interfaces.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.package-manager-ui@2.0.8/Editor/Sources/Services/Interfaces.meta"
new file mode 100644
index 00000000..96397a4c
--- /dev/null
+++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.package-manager-ui@2.0.8/Editor/Sources/Services/Interfaces.meta"
@@ -0,0 +1,8 @@
+fileFormatVersion: 2
+guid: 3385f7527e5be4c65b3a5294e8995ff8
+folderAsset: yes
+DefaultImporter:
+  externalObjects: {}
+  userData: 
+  assetBundleName: 
+  assetBundleVariant: 
diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.package-manager-ui@2.0.8/Editor/Sources/Services/Interfaces/IAddOperation.cs" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.package-manager-ui@2.0.8/Editor/Sources/Services/Interfaces/IAddOperation.cs"
new file mode 100644
index 00000000..40c39fdb
--- /dev/null
+++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.package-manager-ui@2.0.8/Editor/Sources/Services/Interfaces/IAddOperation.cs"
@@ -0,0 +1,13 @@
+using System;
+
+namespace UnityEditor.PackageManager.UI
+{
+    internal interface IAddOperation : IBaseOperation
+    {
+        event Action OnOperationSuccess;
+        
+        PackageInfo PackageInfo { get; }
+
+        void AddPackageAsync(PackageInfo packageInfo, Action doneCallbackAction = null,  Action errorCallbackAction = null);
+    }
+}
diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.package-manager-ui@2.0.8/Editor/Sources/Services/Interfaces/IAddOperation.cs.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.package-manager-ui@2.0.8/Editor/Sources/Services/Interfaces/IAddOperation.cs.meta"
new file mode 100644
index 00000000..d84d4b02
--- /dev/null
+++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.package-manager-ui@2.0.8/Editor/Sources/Services/Interfaces/IAddOperation.cs.meta"
@@ -0,0 +1,3 @@
+fileFormatVersion: 2
+guid: 3dcbbc060dea46168ffc09a580836240
+timeCreated: 1504191596
\ No newline at end of file
diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.package-manager-ui@2.0.8/Editor/Sources/Services/Interfaces/IBaseOperation.cs" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.package-manager-ui@2.0.8/Editor/Sources/Services/Interfaces/IBaseOperation.cs"
new file mode 100644
index 00000000..4c22b28e
--- /dev/null
+++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.package-manager-ui@2.0.8/Editor/Sources/Services/Interfaces/IBaseOperation.cs"
@@ -0,0 +1,14 @@
+using System;
+
+namespace UnityEditor.PackageManager.UI
+{
+    internal interface IBaseOperation
+    {
+        event Action OnOperationError;
+        event Action OnOperationFinalized;
+
+        bool IsCompleted { get; }
+                
+        void Cancel();
+    }
+}
diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.package-manager-ui@2.0.8/Editor/Sources/Services/Interfaces/IBaseOperation.cs.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.package-manager-ui@2.0.8/Editor/Sources/Services/Interfaces/IBaseOperation.cs.meta"
new file mode 100644
index 00000000..4c59885e
--- /dev/null
+++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.package-manager-ui@2.0.8/Editor/Sources/Services/Interfaces/IBaseOperation.cs.meta"
@@ -0,0 +1,3 @@
+fileFormatVersion: 2
+guid: 2f1849b9179b464381598f68663790d3
+timeCreated: 1507041169
\ No newline at end of file
diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.package-manager-ui@2.0.8/Editor/Sources/Services/Interfaces/IListOperation.cs" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.package-manager-ui@2.0.8/Editor/Sources/Services/Interfaces/IListOperation.cs"
new file mode 100644
index 00000000..00ba1fa1
--- /dev/null
+++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.package-manager-ui@2.0.8/Editor/Sources/Services/Interfaces/IListOperation.cs"
@@ -0,0 +1,11 @@
+using System;
+using System.Collections.Generic;
+
+namespace UnityEditor.PackageManager.UI
+{
+    internal interface IListOperation : IBaseOperation
+    {
+        bool OfflineMode { get; set; }
+        void GetPackageListAsync(Action> doneCallbackAction, Action errorCallbackAction = null);
+    }
+}
diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.package-manager-ui@2.0.8/Editor/Sources/Services/Interfaces/IListOperation.cs.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.package-manager-ui@2.0.8/Editor/Sources/Services/Interfaces/IListOperation.cs.meta"
new file mode 100644
index 00000000..9bc2553b
--- /dev/null
+++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.package-manager-ui@2.0.8/Editor/Sources/Services/Interfaces/IListOperation.cs.meta"
@@ -0,0 +1,13 @@
+fileFormatVersion: 2
+guid: b7e8a8fb69eacee439474914ea54bf9b
+timeCreated: 1502913188
+licenseType: Free
+MonoImporter:
+  externalObjects: {}
+  serializedVersion: 2
+  defaultReferences: []
+  executionOrder: 0
+  icon: {instanceID: 0}
+  userData: 
+  assetBundleName: 
+  assetBundleVariant: 
diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.package-manager-ui@2.0.8/Editor/Sources/Services/Interfaces/IOperationFactory.cs" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.package-manager-ui@2.0.8/Editor/Sources/Services/Interfaces/IOperationFactory.cs"
new file mode 100644
index 00000000..1d10304e
--- /dev/null
+++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.package-manager-ui@2.0.8/Editor/Sources/Services/Interfaces/IOperationFactory.cs"
@@ -0,0 +1,14 @@
+namespace UnityEditor.PackageManager.UI
+{
+    /// 
+    /// This is the Interface we will use to create the facade we need for testing.
+    /// In the case of the Fake factory, we can create fake operations with doctored data we use for our tests.
+    /// 
+    internal interface IOperationFactory
+    {
+        IListOperation CreateListOperation(bool offlineMode = false);
+        ISearchOperation CreateSearchOperation();
+        IAddOperation CreateAddOperation();
+        IRemoveOperation CreateRemoveOperation();
+    }
+}
diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.package-manager-ui@2.0.8/Editor/Sources/Services/Interfaces/IOperationFactory.cs.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.package-manager-ui@2.0.8/Editor/Sources/Services/Interfaces/IOperationFactory.cs.meta"
new file mode 100644
index 00000000..d718f50b
--- /dev/null
+++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.package-manager-ui@2.0.8/Editor/Sources/Services/Interfaces/IOperationFactory.cs.meta"
@@ -0,0 +1,13 @@
+fileFormatVersion: 2
+guid: 0a1161a2ab6569948a0aa7899197218c
+timeCreated: 1502915478
+licenseType: Free
+MonoImporter:
+  externalObjects: {}
+  serializedVersion: 2
+  defaultReferences: []
+  executionOrder: 0
+  icon: {instanceID: 0}
+  userData: 
+  assetBundleName: 
+  assetBundleVariant: 
diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.package-manager-ui@2.0.8/Editor/Sources/Services/Interfaces/IRemoveOperation.cs" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.package-manager-ui@2.0.8/Editor/Sources/Services/Interfaces/IRemoveOperation.cs"
new file mode 100644
index 00000000..211c992f
--- /dev/null
+++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.package-manager-ui@2.0.8/Editor/Sources/Services/Interfaces/IRemoveOperation.cs"
@@ -0,0 +1,11 @@
+using System;
+
+namespace UnityEditor.PackageManager.UI
+{
+    internal interface IRemoveOperation : IBaseOperation
+    {
+        event Action OnOperationSuccess;
+
+        void RemovePackageAsync(PackageInfo package, Action doneCallbackAction = null,  Action errorCallbackAction = null);
+    }
+}
diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.package-manager-ui@2.0.8/Editor/Sources/Services/Interfaces/IRemoveOperation.cs.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.package-manager-ui@2.0.8/Editor/Sources/Services/Interfaces/IRemoveOperation.cs.meta"
new file mode 100644
index 00000000..05060134
--- /dev/null
+++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.package-manager-ui@2.0.8/Editor/Sources/Services/Interfaces/IRemoveOperation.cs.meta"
@@ -0,0 +1,11 @@
+fileFormatVersion: 2
+guid: 54e5fc61925bc4ca3b2c1e82dfb35eb5
+MonoImporter:
+  externalObjects: {}
+  serializedVersion: 2
+  defaultReferences: []
+  executionOrder: 0
+  icon: {instanceID: 0}
+  userData: 
+  assetBundleName: 
+  assetBundleVariant: 
diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.package-manager-ui@2.0.8/Editor/Sources/Services/Interfaces/ISearchOperation.cs" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.package-manager-ui@2.0.8/Editor/Sources/Services/Interfaces/ISearchOperation.cs"
new file mode 100644
index 00000000..b3b6a90a
--- /dev/null
+++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.package-manager-ui@2.0.8/Editor/Sources/Services/Interfaces/ISearchOperation.cs"
@@ -0,0 +1,10 @@
+using System;
+using System.Collections.Generic;
+
+namespace UnityEditor.PackageManager.UI
+{
+    internal interface ISearchOperation : IBaseOperation
+    {
+        void GetAllPackageAsync(Action> doneCallbackAction = null, Action errorCallbackAction = null);
+    }
+}
diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.package-manager-ui@2.0.8/Editor/Sources/Services/Interfaces/ISearchOperation.cs.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.package-manager-ui@2.0.8/Editor/Sources/Services/Interfaces/ISearchOperation.cs.meta"
new file mode 100644
index 00000000..0b2741ae
--- /dev/null
+++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.package-manager-ui@2.0.8/Editor/Sources/Services/Interfaces/ISearchOperation.cs.meta"
@@ -0,0 +1,3 @@
+fileFormatVersion: 2
+guid: 85dba6b2d7204a7f9a1f976eb0a6b4d2
+timeCreated: 1508160206
\ No newline at end of file
diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.package-manager-ui@2.0.8/Editor/Sources/Services/OperationFactory.cs" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.package-manager-ui@2.0.8/Editor/Sources/Services/OperationFactory.cs"
new file mode 100644
index 00000000..9e07fc39
--- /dev/null
+++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.package-manager-ui@2.0.8/Editor/Sources/Services/OperationFactory.cs"
@@ -0,0 +1,24 @@
+namespace UnityEditor.PackageManager.UI
+{
+    internal static class OperationFactory
+    {
+        private static IOperationFactory _instance;
+
+        public static IOperationFactory Instance 
+        {
+            get {
+                if (_instance == null)
+                    _instance = new UpmOperationFactory ();
+                return _instance;
+            }
+            internal set {
+                _instance = value;
+            }
+        }
+
+        internal static void Reset()
+        {
+            _instance = null;
+        }
+    }
+}
diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.package-manager-ui@2.0.8/Editor/Sources/Services/OperationFactory.cs.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.package-manager-ui@2.0.8/Editor/Sources/Services/OperationFactory.cs.meta"
new file mode 100644
index 00000000..5d7e9943
--- /dev/null
+++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.package-manager-ui@2.0.8/Editor/Sources/Services/OperationFactory.cs.meta"
@@ -0,0 +1,11 @@
+fileFormatVersion: 2
+guid: 9ec5dc72125424af38a9bfaca532acc8
+MonoImporter:
+  externalObjects: {}
+  serializedVersion: 2
+  defaultReferences: []
+  executionOrder: 0
+  icon: {instanceID: 0}
+  userData: 
+  assetBundleName: 
+  assetBundleVariant: 
diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.package-manager-ui@2.0.8/Editor/Sources/Services/Packages.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.package-manager-ui@2.0.8/Editor/Sources/Services/Packages.meta"
new file mode 100644
index 00000000..c0acdbcb
--- /dev/null
+++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.package-manager-ui@2.0.8/Editor/Sources/Services/Packages.meta"
@@ -0,0 +1,3 @@
+fileFormatVersion: 2
+guid: e53bc96d2d054b8cbc811f0d73e761eb
+timeCreated: 1504191702
\ No newline at end of file
diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.package-manager-ui@2.0.8/Editor/Sources/Services/Packages/Package.cs" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.package-manager-ui@2.0.8/Editor/Sources/Services/Packages/Package.cs"
new file mode 100644
index 00000000..5c366dd4
--- /dev/null
+++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.package-manager-ui@2.0.8/Editor/Sources/Services/Packages/Package.cs"
@@ -0,0 +1,222 @@
+using System;
+using System.Collections.Generic;
+using System.IO;
+using System.Linq;
+using UnityEngine;
+
+namespace UnityEditor.PackageManager.UI
+{    
+    // History of a single package
+    internal class Package : IEquatable
+    {
+        static public bool ShouldProposeLatestVersions
+        {
+            get
+            {
+                // Until we figure out a way to test this properly, alway show standard behavior
+                //    return InternalEditorUtility.IsUnityBeta() && !Unsupported.IsDeveloperMode();
+                return false;
+            }
+        }
+
+        // There can only be one package add/remove operation.
+        private static IBaseOperation addRemoveOperationInstance;
+
+        public static bool AddRemoveOperationInProgress
+        {
+            get { return addRemoveOperationInstance != null && !addRemoveOperationInstance.IsCompleted; }
+        }
+
+        internal const string packageManagerUIName = "com.unity.package-manager-ui";
+        private readonly string packageName;
+        private IEnumerable source;
+
+        internal Package(string packageName, IEnumerable infos)
+        {
+            if (string.IsNullOrEmpty(packageName))
+                throw new ArgumentException("Cannot be empty or null", "packageName");
+
+            if (!infos.Any())
+                throw new ArgumentException("Cannot be empty", "infos");
+            
+            this.packageName = packageName;
+            UpdateSource(infos);
+        }
+
+        internal void UpdateSource(IEnumerable source)
+        {
+            this.source = source;
+#if UNITY_2018_3_OR_NEWER
+            if (IsPackageManagerUI)
+                this.source = this.source.Where(p => p != null && p.Version.Major >= 2);
+#endif
+        }
+
+        public PackageInfo Current { get { return Versions.FirstOrDefault(package => package.IsCurrent); } }
+
+        // This is the latest verified or official release (eg: 1.3.2). Not necessarily the latest verified release (eg: 1.2.4) or that latest candidate (eg: 1.4.0-beta)
+        public PackageInfo LatestUpdate
+        {
+            get
+            {
+                // We want to show the absolute latest when in beta mode
+                if (ShouldProposeLatestVersions)
+                    return Latest;
+
+                // Override with current when it's version locked
+                var current = Current;
+                if (current != null && current.IsVersionLocked)
+                    return current;
+
+                // Get all the candidates versions (verified, release, preview) that are newer than current
+                var verified = Verified;
+                var latestRelease = LatestRelease;
+                var latestPreview = Versions.LastOrDefault(package => package.IsPreview);
+                var candidates = new List
+                {
+                    verified,
+                    latestRelease,
+                    latestPreview,
+                }.Where(package => package != null && (current == null || current == package || current.Version < package.Version)).ToList();
+
+                if (candidates.Contains(verified))
+                    return verified;
+                if ((current == null || !current.IsVerified ) && candidates.Contains(latestRelease))
+                    return latestRelease;
+                if ((current == null || current.IsPreview) && candidates.Contains(latestPreview))
+                    return latestPreview;
+
+                // Show current if it exists, otherwise latest user visible, and then otherwise show the absolute latest
+                return current ?? Latest;
+            }
+        }
+
+        public PackageInfo LatestPatch
+        {
+            get
+            {
+                if (Current == null)
+                    return null;
+                
+                // Get all version that have the same Major/Minor
+                var versions = Versions.Where(package => package.Version.Major == Current.Version.Major && package.Version.Minor == Current.Version.Minor);
+
+                return versions.LastOrDefault();
+            }
+        }
+
+        // This is the very latest version, including pre-releases (eg: 1.4.0-beta).
+        internal PackageInfo Latest { get { return Versions.FirstOrDefault(package => package.IsLatest) ?? Versions.LastOrDefault(); } }
+
+        // Returns the current version if it exist, otherwise returns the latest user visible version.
+        internal PackageInfo VersionToDisplay { get { return Current ?? LatestUpdate; } }
+
+        // Every version available for this package
+        internal IEnumerable Versions { get { return source.OrderBy(package => package.Version); } }
+
+        // Every version that's not a pre-release (eg: not beta/alpha/preview).
+        internal IEnumerable ReleaseVersions
+        {
+            get { return Versions.Where(package => !package.IsPreRelease); }
+        }
+        
+        internal PackageInfo LatestRelease { get {return ReleaseVersions.LastOrDefault();}}
+        internal PackageInfo Verified { get {return Versions.FirstOrDefault(package => package.IsVerified);}}
+
+        internal bool IsAfterCurrentVersion(PackageInfo packageInfo) { return Current == null || (packageInfo != null  && packageInfo.Version > Current.Version); }
+
+        internal bool IsBuiltIn {get { return Versions.Any() && Versions.First().IsBuiltIn; }}
+
+        public string Name { get { return packageName; } }
+
+        public bool IsPackageManagerUI
+        {
+            get { return Name == packageManagerUIName; }
+        }
+        
+        public bool Equals(Package other)
+        {
+            if (other == null) 
+                return false;
+            
+            return packageName == other.packageName;
+        }
+
+        public override int GetHashCode()
+        {
+            return packageName.GetHashCode();
+        }
+        
+        [SerializeField]
+        internal readonly OperationSignal AddSignal = new OperationSignal();
+
+        private Action OnAddOperationFinalizedEvent;
+        
+        internal void Add(PackageInfo packageInfo)
+        {
+            if (packageInfo == Current || AddRemoveOperationInProgress)
+                return;
+
+            var operation = OperationFactory.Instance.CreateAddOperation();
+            addRemoveOperationInstance = operation;
+            OnAddOperationFinalizedEvent = () =>
+            {
+                AddSignal.Operation = null;
+                operation.OnOperationFinalized -= OnAddOperationFinalizedEvent;
+                PackageCollection.Instance.FetchListOfflineCache(true);
+            };
+
+            operation.OnOperationFinalized += OnAddOperationFinalizedEvent;
+
+            AddSignal.SetOperation(operation);
+            operation.AddPackageAsync(packageInfo);
+        }
+
+        internal void Update()
+        {
+            Add(Latest);
+        }
+
+        internal static void AddFromLocalDisk(string path)
+        {
+            if (AddRemoveOperationInProgress)
+                return;
+
+            var packageJson = PackageJsonHelper.Load(path);
+            if (null == packageJson)
+            {
+                Debug.LogError(string.Format("Invalid package path: cannot find \"{0}\".", path));
+                return;
+            }
+
+            var operation = OperationFactory.Instance.CreateAddOperation();
+            addRemoveOperationInstance = operation;
+            operation.AddPackageAsync(packageJson.PackageInfo);
+        }
+
+        [SerializeField]
+        internal readonly OperationSignal RemoveSignal = new OperationSignal();
+
+        private Action OnRemoveOperationFinalizedEvent;
+
+        public void Remove()
+        {
+            if (Current == null || AddRemoveOperationInProgress)
+                return;
+
+            var operation = OperationFactory.Instance.CreateRemoveOperation();
+            addRemoveOperationInstance = operation;
+            OnRemoveOperationFinalizedEvent = () =>
+            {
+                RemoveSignal.Operation = null;
+                operation.OnOperationFinalized -= OnRemoveOperationFinalizedEvent;
+                PackageCollection.Instance.FetchListOfflineCache(true);
+            };
+
+            operation.OnOperationFinalized += OnRemoveOperationFinalizedEvent;
+            RemoveSignal.SetOperation(operation);
+
+            operation.RemovePackageAsync(Current);
+        }
+    }
+}
diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.package-manager-ui@2.0.8/Editor/Sources/Services/Packages/Package.cs.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.package-manager-ui@2.0.8/Editor/Sources/Services/Packages/Package.cs.meta"
new file mode 100644
index 00000000..e777649e
--- /dev/null
+++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.package-manager-ui@2.0.8/Editor/Sources/Services/Packages/Package.cs.meta"
@@ -0,0 +1,3 @@
+fileFormatVersion: 2
+guid: f499e12eaeb145bf9022f581c0b7fa5b
+timeCreated: 1505740170
\ No newline at end of file
diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.package-manager-ui@2.0.8/Editor/Sources/Services/Packages/PackageAssetPostprocessor.cs" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.package-manager-ui@2.0.8/Editor/Sources/Services/Packages/PackageAssetPostprocessor.cs"
new file mode 100644
index 00000000..6820ec6e
--- /dev/null
+++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.package-manager-ui@2.0.8/Editor/Sources/Services/Packages/PackageAssetPostprocessor.cs"
@@ -0,0 +1,21 @@
+using System.Linq;
+
+namespace UnityEditor.PackageManager.UI
+{
+    internal class PackageAssetPostprocessor : AssetPostprocessor
+    {
+        static bool IsPackageJsonAsset(string path)
+        {
+            var pathComponents = (path ?? "").Split('/');
+            return pathComponents.Length == 3 && pathComponents[0] == "Packages" && pathComponents[2] == "package.json";
+        }
+
+        static void OnPostprocessAllAssets(string[] importedAssets, string[] deletedAssets, string[] movedAssets, string[] movedFromAssetPaths)
+        {
+            if (PackageCollection.Instance != null && (importedAssets.Any(IsPackageJsonAsset) || deletedAssets.Any(IsPackageJsonAsset) || movedAssets.Any(IsPackageJsonAsset)))
+            {
+                PackageCollection.Instance.FetchListOfflineCache(true);
+            }
+        }
+    }
+}
\ No newline at end of file
diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.package-manager-ui@2.0.8/Editor/Sources/Services/Packages/PackageAssetPostprocessor.cs.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.package-manager-ui@2.0.8/Editor/Sources/Services/Packages/PackageAssetPostprocessor.cs.meta"
new file mode 100644
index 00000000..9f0fe82e
--- /dev/null
+++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.package-manager-ui@2.0.8/Editor/Sources/Services/Packages/PackageAssetPostprocessor.cs.meta"
@@ -0,0 +1,11 @@
+fileFormatVersion: 2
+guid: 63e8a6023745e4347bb661e87a9be1d9
+MonoImporter:
+  externalObjects: {}
+  serializedVersion: 2
+  defaultReferences: []
+  executionOrder: 0
+  icon: {instanceID: 0}
+  userData: 
+  assetBundleName: 
+  assetBundleVariant: 
diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.package-manager-ui@2.0.8/Editor/Sources/Services/Packages/PackageCollection.cs" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.package-manager-ui@2.0.8/Editor/Sources/Services/Packages/PackageCollection.cs"
new file mode 100644
index 00000000..64010884
--- /dev/null
+++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.package-manager-ui@2.0.8/Editor/Sources/Services/Packages/PackageCollection.cs"
@@ -0,0 +1,284 @@
+using System;
+using System.Collections.Generic;
+using System.Linq;
+using UnityEngine;
+
+namespace UnityEditor.PackageManager.UI
+{
+    [Serializable]
+    internal class PackageCollection
+    {
+        private static PackageCollection instance = new PackageCollection();
+        public static PackageCollection Instance { get { return instance; } }
+
+        public event Action> OnPackagesChanged = delegate { };
+        public event Action OnFilterChanged = delegate { };
+
+        private readonly Dictionary packages;
+
+        private PackageFilter filter;
+
+        private string selectedListPackage;
+        private string selectedSearchPackage;
+
+        internal string lastUpdateTime;
+        private List listPackagesOffline;
+        private List listPackages;
+        private List searchPackages;
+
+        private List packageErrors;
+
+        private int listPackagesVersion;
+        private int listPackagesOfflineVersion;
+
+        private bool searchOperationOngoing;
+        private bool listOperationOngoing;
+        private bool listOperationOfflineOngoing;
+
+        private IListOperation listOperationOffline;
+        private IListOperation listOperation;
+        private ISearchOperation searchOperation;
+
+        public readonly OperationSignal SearchSignal = new OperationSignal();
+        public readonly OperationSignal ListSignal = new OperationSignal();
+
+        public static void InitInstance(ref PackageCollection value)
+        {
+            if (value == null)  // UI window opened
+            {
+                value = instance;
+
+                Instance.OnPackagesChanged = delegate { };
+                Instance.OnFilterChanged = delegate { };
+                Instance.SearchSignal.ResetEvents();
+                Instance.ListSignal.ResetEvents();
+
+                Instance.FetchListOfflineCache(true);
+                Instance.FetchListCache(true);
+                Instance.FetchSearchCache(true);
+            }
+            else // Domain reload
+            {
+                instance = value;
+
+                Instance.RebuildPackageDictionary();
+
+                // Resume operations interrupted by domain reload
+                Instance.FetchListOfflineCache(Instance.listOperationOfflineOngoing);
+                Instance.FetchListCache(Instance.listOperationOngoing);
+                Instance.FetchSearchCache(Instance.searchOperationOngoing);
+            }
+        }
+
+        public PackageFilter Filter
+        {
+            get { return filter; }
+            
+            // For public usage, use SetFilter() instead
+            private set
+            {
+                var changed = value != filter;
+                filter = value;
+                
+                if (changed)
+                    OnFilterChanged(filter);
+            }
+        }
+
+        public List LatestListPackages
+        {
+            get { return listPackagesVersion > listPackagesOfflineVersion? listPackages : listPackagesOffline; }
+        }
+
+        public List LatestSearchPackages { get { return searchPackages; } }
+
+        public string SelectedPackage
+        {
+            get { return PackageFilter.All == Filter ? selectedSearchPackage : selectedListPackage; }
+            set
+            {
+                if (PackageFilter.All == Filter)
+                    selectedSearchPackage = value;
+                else
+                    selectedListPackage = value;
+            }
+        }
+        
+        private PackageCollection()
+        {
+            packages = new Dictionary();
+
+            listPackagesOffline = new List();
+            listPackages = new List();
+            searchPackages = new List();
+
+            packageErrors = new List();
+
+            listPackagesVersion = 0;
+            listPackagesOfflineVersion = 0;
+
+            searchOperationOngoing = false;
+            listOperationOngoing = false;
+            listOperationOfflineOngoing = false;
+
+            Filter = PackageFilter.All;
+        }
+
+        public bool SetFilter(PackageFilter value, bool refresh = true)
+        {
+            if (value == Filter) 
+                return false;
+            
+            Filter = value;
+            if (refresh)
+            {
+                UpdatePackageCollection();
+            }
+            return true;
+        }
+
+        public void UpdatePackageCollection(bool rebuildDictionary = false)
+        {
+            if (rebuildDictionary)
+            {
+                lastUpdateTime = DateTime.Now.ToString("HH:mm");
+                RebuildPackageDictionary();
+            }
+            if (packages.Any())
+                OnPackagesChanged(OrderedPackages());
+        }
+
+        internal void FetchListOfflineCache(bool forceRefetch = false)
+        {
+            if (!forceRefetch && (listOperationOfflineOngoing || listPackagesOffline.Any())) return;
+            if (listOperationOffline != null)
+                listOperationOffline.Cancel();
+            listOperationOfflineOngoing = true;
+            listOperationOffline = OperationFactory.Instance.CreateListOperation(true);
+            listOperationOffline.OnOperationFinalized += () =>
+            {
+                listOperationOfflineOngoing = false;
+                UpdatePackageCollection(true);
+            };
+            listOperationOffline.GetPackageListAsync(
+                infos =>
+                {
+                    var version = listPackagesVersion;
+                    UpdateListPackageInfosOffline(infos, version);
+                },
+                error => { Debug.LogError("Error fetching package list (offline mode)."); });
+        }
+
+        internal void FetchListCache(bool forceRefetch = false)
+        {
+            if (!forceRefetch && (listOperationOngoing || listPackages.Any())) return;
+            if (listOperation != null)
+                listOperation.Cancel();
+            listOperationOngoing = true;
+            listOperation = OperationFactory.Instance.CreateListOperation();
+            listOperation.OnOperationFinalized += () =>
+            {
+                listOperationOngoing = false;
+                UpdatePackageCollection(true);
+            };
+            listOperation.GetPackageListAsync(UpdateListPackageInfos,
+                error => { Debug.LogError("Error fetching package list."); });
+            ListSignal.SetOperation(listOperation);
+        }
+
+        internal void FetchSearchCache(bool forceRefetch = false)
+        {
+            if (!forceRefetch && (searchOperationOngoing || searchPackages.Any())) return;
+            if (searchOperation != null)
+                searchOperation.Cancel();
+            searchOperationOngoing = true;
+            searchOperation = OperationFactory.Instance.CreateSearchOperation();
+            searchOperation.OnOperationFinalized += () =>
+            {
+                searchOperationOngoing = false;
+                UpdatePackageCollection(true);
+            };
+            searchOperation.GetAllPackageAsync(UpdateSearchPackageInfos,
+                error => { Debug.LogError("Error searching packages online."); });
+            SearchSignal.SetOperation(searchOperation);
+        }
+
+        private void UpdateListPackageInfosOffline(IEnumerable newInfos, int version)
+        {
+            listPackagesOfflineVersion = version;
+            listPackagesOffline = newInfos.Where(p => p.IsUserVisible).ToList();
+        }
+
+        private void UpdateListPackageInfos(IEnumerable newInfos)
+        {
+            // Each time we fetch list packages, the cache for offline mode will be updated
+            // We keep track of the list packages version so that we know which version of cache
+            // we are getting with the offline fetch operation.
+            listPackagesVersion++;
+            listPackages = newInfos.Where(p => p.IsUserVisible).ToList();
+            listPackagesOffline = listPackages;
+        }
+
+        private void UpdateSearchPackageInfos(IEnumerable newInfos)
+        {
+            searchPackages = newInfos.Where(p => p.IsUserVisible).ToList();
+        }
+
+        private IEnumerable OrderedPackages()
+        {
+            return packages.Values.OrderBy(pkg => pkg.Versions.LastOrDefault() == null ? pkg.Name : pkg.Versions.Last().DisplayName).AsEnumerable();
+        }
+
+        public Package GetPackageByName(string name)
+        {
+            Package package;
+            packages.TryGetValue(name, out package);
+            return package;
+        }
+
+        public Error GetPackageError(Package package)
+        {
+            if (null == package) return null;
+            var firstMatchingError = packageErrors.FirstOrDefault(p => p.PackageName == package.Name);
+            return firstMatchingError != null ? firstMatchingError.Error : null;
+        }
+
+        public void AddPackageError(Package package, Error error)
+        {
+            if (null == package || null == error) return;
+            packageErrors.Add(new PackageError(package.Name, error));
+        }
+
+        public void RemovePackageErrors(Package package)
+        {
+            if (null == package) return;
+            packageErrors.RemoveAll(p => p.PackageName == package.Name);
+        }
+
+        private void RebuildPackageDictionary()
+        {
+            // Merge list & search packages
+            var allPackageInfos = new List(LatestListPackages);
+            var installedPackageIds = new HashSet(allPackageInfos.Select(p => p.PackageId));
+            allPackageInfos.AddRange(searchPackages.Where(p => !installedPackageIds.Contains(p.PackageId)));
+
+            if (!PackageManagerPrefs.ShowPreviewPackages)
+            {
+                allPackageInfos = allPackageInfos.Where(p => !p.IsPreRelease || installedPackageIds.Contains(p.PackageId)).ToList();
+            }
+
+            // Rebuild packages dictionary
+            packages.Clear();
+            foreach (var p in allPackageInfos)
+            {
+                var packageName = p.Name;
+                if (packages.ContainsKey(packageName))
+                    continue;
+
+                var packageQuery = from pkg in allPackageInfos where pkg.Name == packageName select pkg;
+                var package = new Package(packageName, packageQuery);
+                packages[packageName] = package;
+            }
+        }
+    }
+}
diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.package-manager-ui@2.0.8/Editor/Sources/Services/Packages/PackageCollection.cs.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.package-manager-ui@2.0.8/Editor/Sources/Services/Packages/PackageCollection.cs.meta"
new file mode 100644
index 00000000..642cef24
--- /dev/null
+++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.package-manager-ui@2.0.8/Editor/Sources/Services/Packages/PackageCollection.cs.meta"
@@ -0,0 +1,11 @@
+fileFormatVersion: 2
+guid: 61d72cb49da3040d5ade3edfd6eccfc1
+MonoImporter:
+  externalObjects: {}
+  serializedVersion: 2
+  defaultReferences: []
+  executionOrder: 0
+  icon: {instanceID: 0}
+  userData: 
+  assetBundleName: 
+  assetBundleVariant: 
diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.package-manager-ui@2.0.8/Editor/Sources/Services/Packages/PackageError.cs" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.package-manager-ui@2.0.8/Editor/Sources/Services/Packages/PackageError.cs"
new file mode 100644
index 00000000..dff3c13a
--- /dev/null
+++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.package-manager-ui@2.0.8/Editor/Sources/Services/Packages/PackageError.cs"
@@ -0,0 +1,17 @@
+using System;
+
+namespace UnityEditor.PackageManager.UI
+{
+    [Serializable]
+    internal class PackageError
+    {
+        public string PackageName;
+        public Error Error;
+
+        public PackageError(string packageName, Error error)
+        {
+            PackageName = packageName;
+            Error = error;
+        }
+    }
+}
diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.package-manager-ui@2.0.8/Editor/Sources/Services/Packages/PackageError.cs.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.package-manager-ui@2.0.8/Editor/Sources/Services/Packages/PackageError.cs.meta"
new file mode 100644
index 00000000..18d4165e
--- /dev/null
+++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.package-manager-ui@2.0.8/Editor/Sources/Services/Packages/PackageError.cs.meta"
@@ -0,0 +1,11 @@
+fileFormatVersion: 2
+guid: b7c10e584b708734ba6141e7d4797931
+MonoImporter:
+  externalObjects: {}
+  serializedVersion: 2
+  defaultReferences: []
+  executionOrder: 0
+  icon: {instanceID: 0}
+  userData: 
+  assetBundleName: 
+  assetBundleVariant: 
diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.package-manager-ui@2.0.8/Editor/Sources/Services/Packages/PackageFilter.cs" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.package-manager-ui@2.0.8/Editor/Sources/Services/Packages/PackageFilter.cs"
new file mode 100644
index 00000000..2c0e524e
--- /dev/null
+++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.package-manager-ui@2.0.8/Editor/Sources/Services/Packages/PackageFilter.cs"
@@ -0,0 +1,13 @@
+using System;
+
+namespace UnityEditor.PackageManager.UI
+{
+    [Serializable]
+    internal enum PackageFilter
+    {
+        None,
+        All,
+        Local,
+        Modules
+    }
+}
\ No newline at end of file
diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.package-manager-ui@2.0.8/Editor/Sources/Services/Packages/PackageFilter.cs.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.package-manager-ui@2.0.8/Editor/Sources/Services/Packages/PackageFilter.cs.meta"
new file mode 100644
index 00000000..26ce6a0b
--- /dev/null
+++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.package-manager-ui@2.0.8/Editor/Sources/Services/Packages/PackageFilter.cs.meta"
@@ -0,0 +1,3 @@
+fileFormatVersion: 2
+guid: 03ffb9844f8d40e8a2f59dd2aff561eb
+timeCreated: 1508251051
\ No newline at end of file
diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.package-manager-ui@2.0.8/Editor/Sources/Services/Packages/PackageGroupOrigins.cs" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.package-manager-ui@2.0.8/Editor/Sources/Services/Packages/PackageGroupOrigins.cs"
new file mode 100644
index 00000000..66703320
--- /dev/null
+++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.package-manager-ui@2.0.8/Editor/Sources/Services/Packages/PackageGroupOrigins.cs"
@@ -0,0 +1,8 @@
+namespace UnityEditor.PackageManager.UI
+{
+    internal enum PackageGroupOrigins
+    {
+        Packages,
+        BuiltInPackages
+    }
+}
\ No newline at end of file
diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.package-manager-ui@2.0.8/Editor/Sources/Services/Packages/PackageGroupOrigins.cs.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.package-manager-ui@2.0.8/Editor/Sources/Services/Packages/PackageGroupOrigins.cs.meta"
new file mode 100644
index 00000000..dbdf4259
--- /dev/null
+++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.package-manager-ui@2.0.8/Editor/Sources/Services/Packages/PackageGroupOrigins.cs.meta"
@@ -0,0 +1,3 @@
+fileFormatVersion: 2
+guid: 0e372f1bbea04aa9bd68055d4105bd84
+timeCreated: 1508855779
\ No newline at end of file
diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.package-manager-ui@2.0.8/Editor/Sources/Services/Packages/PackageInfo.cs" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.package-manager-ui@2.0.8/Editor/Sources/Services/Packages/PackageInfo.cs"
new file mode 100644
index 00000000..6db9fc29
--- /dev/null
+++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.package-manager-ui@2.0.8/Editor/Sources/Services/Packages/PackageInfo.cs"
@@ -0,0 +1,227 @@
+using System;
+using System.Collections.Generic;
+using System.Linq;
+using Semver;
+using System.IO;
+
+namespace UnityEditor.PackageManager.UI
+{
+    [Serializable]
+    internal class PackageInfo : IEquatable
+    {
+        // Module package.json files contain a documentation url embedded in the description.
+        // We parse that to have the "View Documentation" button direct to it, instead of showing
+        // the link in the description text.
+        private const string builtinPackageDocsUrlKey = "Scripting API: ";
+
+        public string Name;
+        public string DisplayName;
+        private string _PackageId;
+        public SemVersion Version;
+        public string Description;
+        public string Category;
+        public PackageState State;
+        public bool IsCurrent;
+        public bool IsLatest;
+        public string Group;
+        public PackageSource Origin;
+        public List Errors;
+        public bool IsVerified;
+        public string Author;
+
+        public PackageManager.PackageInfo Info { get; set; }
+        
+        public string PackageId {
+            get
+            {
+                if (!string.IsNullOrEmpty(_PackageId )) 
+                    return _PackageId;
+                return string.Format("{0}@{1}", Name.ToLower(), Version);
+            }
+            set
+            {
+                _PackageId = value;
+            }
+        }
+
+        // This will always be @, even for an embedded package.
+        public string VersionId { get { return string.Format("{0}@{1}", Name.ToLower(), Version); } }
+        public string ShortVersionId { get { return string.Format("{0}@{1}", Name.ToLower(), Version.ShortVersion()); } }
+
+        public string BuiltInDescription { get {
+            if (IsBuiltIn)
+                return string.Format("This built in package controls the presence of the {0} module.", DisplayName);
+            else
+                return Description.Split(new[] {builtinPackageDocsUrlKey}, StringSplitOptions.None)[0];
+        } }
+
+        private static Version ParseShortVersion(string shortVersionId)
+        {
+            try
+            {
+                var versionToken = shortVersionId.Split('@')[1];
+                return new Version(versionToken);
+            }
+            catch (Exception)
+            {
+                // Keep default version 0.0 on exception
+                return new Version();
+            }
+        }
+
+        // Method content must be matched in package manager UI
+        public static string GetPackageUrlRedirect(string packageName, string shortVersionId)
+        {
+            var redirectUrl = "";
+            if (packageName == "com.unity.ads")
+                redirectUrl = "https://docs.unity3d.com/Manual/UnityAds.html";
+            else if (packageName == "com.unity.analytics")
+            {
+                if (ParseShortVersion(shortVersionId) < new Version(3, 2))
+                    redirectUrl = "https://docs.unity3d.com/Manual/UnityAnalytics.html";
+            }
+            else if (packageName == "com.unity.purchasing")
+                redirectUrl = "https://docs.unity3d.com/Manual/UnityIAP.html";
+            else if (packageName == "com.unity.standardevents")
+                redirectUrl = "https://docs.unity3d.com/Manual/UnityAnalyticsStandardEvents.html";
+            else if (packageName == "com.unity.xiaomi")
+                redirectUrl = "https://unity3d.com/cn/partners/xiaomi/guide";
+            else if (packageName == "com.unity.shadergraph")
+            {
+                if (ParseShortVersion(shortVersionId) < new Version(4, 1))
+                    redirectUrl = "https://github.com/Unity-Technologies/ShaderGraph/wiki";
+            }
+
+            return redirectUrl;
+        }
+
+        public bool RedirectsToManual(PackageInfo packageInfo)
+        {
+            return !string.IsNullOrEmpty(GetPackageUrlRedirect(packageInfo.Name, packageInfo.ShortVersionId));
+        }
+
+        public bool HasChangelog(PackageInfo packageInfo)
+        {
+            // Packages with no docs have no third party notice
+            return !RedirectsToManual(packageInfo);
+        }
+
+        public string GetDocumentationUrl()
+        {
+            if (IsBuiltIn)
+            {
+                if (!string.IsNullOrEmpty(Description))
+                {
+                    var split = Description.Split(new[] {builtinPackageDocsUrlKey}, StringSplitOptions.None);
+                    if (split.Length > 1)
+                        return split[1];
+                }
+            }
+            return string.Format("http://docs.unity3d.com/Packages/{0}/index.html", ShortVersionId);
+        }
+
+        public string GetOfflineDocumentationUrl()
+        {
+            var docsFolder = Path.Combine(Info.resolvedPath, "Documentation~");
+            if (!Directory.Exists(docsFolder))
+                docsFolder = Path.Combine(Info.resolvedPath, "Documentation");
+            if (Directory.Exists(docsFolder))
+            {
+                var mdFiles = Directory.GetFiles(docsFolder, "*.md", SearchOption.TopDirectoryOnly);
+                var docsMd = mdFiles.FirstOrDefault(d => Path.GetFileName(d).ToLower() == "index.md")
+                    ?? mdFiles.FirstOrDefault(d => Path.GetFileName(d).ToLower() == "tableofcontents.md") ?? mdFiles.FirstOrDefault();
+                if (!string.IsNullOrEmpty(docsMd))
+                    return new Uri(docsMd).AbsoluteUri;
+            }
+            return string.Empty;
+        }
+
+        public string GetChangelogUrl()
+        {
+            return string.Format("http://docs.unity3d.com/Packages/{0}/changelog/CHANGELOG.html", ShortVersionId);
+        }
+
+        public string GetOfflineChangelogUrl()
+        {
+            var changelogFile = Path.Combine(Info.resolvedPath, "CHANGELOG.md");
+            return File.Exists(changelogFile) ? new Uri(changelogFile).AbsoluteUri : string.Empty;
+        }
+
+        public string GetLicensesUrl()
+        {
+            var url = string.Format("http://docs.unity3d.com/Packages/{0}/license/index.html", ShortVersionId);
+            if (RedirectsToManual(this))
+                url = "https://unity3d.com/legal/licenses/Unity_Companion_License";
+
+            return url;
+        }
+
+        public string GetOfflineLicensesUrl()
+        {
+            var licenseFile = Path.Combine(Info.resolvedPath, "LICENSE.md");
+            return File.Exists(licenseFile) ? new Uri(licenseFile).AbsoluteUri : string.Empty;
+        }
+
+        public bool Equals(PackageInfo other)
+        {
+            if (other == null) 
+                return false;
+            if (other == this)
+                return true;
+            
+            return Name == other.Name && Version == other.Version;
+        }
+
+        public override int GetHashCode()
+        {
+            return PackageId.GetHashCode();
+        }
+
+        public bool HasVersionTag(string tag)
+        {
+            if (string.IsNullOrEmpty(Version.Prerelease))
+                return false;
+
+            return String.Equals(Version.Prerelease.Split('.').First(), tag, StringComparison.CurrentCultureIgnoreCase);
+        }
+
+        public bool HasVersionTag(PackageTag tag)
+        {
+            return HasVersionTag(tag.ToString());
+        }
+
+        // Is it a pre-release (alpha/beta/experimental/preview)?
+        //        Current logic is any tag is considered pre-release, except recommended
+        public bool IsPreRelease
+        {
+            get { return !string.IsNullOrEmpty(Version.Prerelease) || Version.Major == 0; }
+        }
+
+        public bool IsPreview
+        {
+            get { return HasVersionTag(PackageTag.preview) || Version.Major == 0; }
+        }
+
+        // A version is user visible if it has a supported tag (or no tag at all)
+        public bool IsUserVisible
+        {
+            get { return IsCurrent || string.IsNullOrEmpty(Version.Prerelease) || HasVersionTag(PackageTag.preview) || IsVerified; }
+        }
+
+        public bool IsInDevelopment { get { return Origin == PackageSource.Embedded; } }
+        public bool IsLocal { get { return Origin == PackageSource.Local; } }
+        public bool IsBuiltIn { get { return Origin == PackageSource.BuiltIn; } }
+        
+        public string VersionWithoutTag { get { return Version.VersionOnly(); } }
+        
+        public bool IsVersionLocked
+        {
+            get { return Origin == PackageSource.Embedded || Origin == PackageSource.Git || Origin == PackageSource.BuiltIn; }
+        }
+
+        public bool CanBeRemoved
+        {
+            get { return Origin == PackageSource.Registry || Origin == PackageSource.BuiltIn || Origin == PackageSource.Local; }
+        }
+    }
+}
diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.package-manager-ui@2.0.8/Editor/Sources/Services/Packages/PackageInfo.cs.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.package-manager-ui@2.0.8/Editor/Sources/Services/Packages/PackageInfo.cs.meta"
new file mode 100644
index 00000000..e416489e
--- /dev/null
+++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.package-manager-ui@2.0.8/Editor/Sources/Services/Packages/PackageInfo.cs.meta"
@@ -0,0 +1,13 @@
+fileFormatVersion: 2
+guid: b9f324f08cd904ec986357c98dd9eaa6
+timeCreated: 1502224642
+licenseType: Pro
+MonoImporter:
+  externalObjects: {}
+  serializedVersion: 2
+  defaultReferences: []
+  executionOrder: 0
+  icon: {instanceID: 0}
+  userData: 
+  assetBundleName: 
+  assetBundleVariant: 
diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.package-manager-ui@2.0.8/Editor/Sources/Services/Packages/PackageInfoListExtensions.cs" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.package-manager-ui@2.0.8/Editor/Sources/Services/Packages/PackageInfoListExtensions.cs"
new file mode 100644
index 00000000..f7b798c1
--- /dev/null
+++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.package-manager-ui@2.0.8/Editor/Sources/Services/Packages/PackageInfoListExtensions.cs"
@@ -0,0 +1,37 @@
+using System.Collections.Generic;
+using System.Linq;
+
+namespace UnityEditor.PackageManager.UI
+{
+    internal static class PackageInfoListExtensions
+    {
+        public static IEnumerable ByName(this IEnumerable list, string name)
+        {
+            return from package in list where package.Name == name select package;
+        }
+
+        public static void SetCurrent(this IEnumerable list, bool current = true)
+        {
+            foreach (var package in list)
+            {
+                package.IsCurrent = current;
+            }
+        }
+
+        public static void SetLatest(this IEnumerable list, bool latest = true)
+        {
+            foreach (var package in list)
+            {
+                package.IsLatest = latest;
+            }
+        }
+
+        public static void SetGroup(this IEnumerable list, string group)
+        {
+            foreach (var package in list)
+            {
+                package.Group = group;
+            }
+        }
+    }
+}
diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.package-manager-ui@2.0.8/Editor/Sources/Services/Packages/PackageInfoListExtensions.cs.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.package-manager-ui@2.0.8/Editor/Sources/Services/Packages/PackageInfoListExtensions.cs.meta"
new file mode 100644
index 00000000..3ccc63f9
--- /dev/null
+++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.package-manager-ui@2.0.8/Editor/Sources/Services/Packages/PackageInfoListExtensions.cs.meta"
@@ -0,0 +1,3 @@
+fileFormatVersion: 2
+guid: a7b89acd74e047778b42209a7a733d39
+timeCreated: 1505740214
\ No newline at end of file
diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.package-manager-ui@2.0.8/Editor/Sources/Services/Packages/PackageJsonHelper.cs" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.package-manager-ui@2.0.8/Editor/Sources/Services/Packages/PackageJsonHelper.cs"
new file mode 100644
index 00000000..ec062ccc
--- /dev/null
+++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.package-manager-ui@2.0.8/Editor/Sources/Services/Packages/PackageJsonHelper.cs"
@@ -0,0 +1,34 @@
+using System.IO;
+using UnityEngine;
+
+namespace UnityEditor.PackageManager.UI
+{
+    internal class PackageJsonHelper
+    {
+        [SerializeField]
+        private string name = string.Empty;
+
+        private string path = string.Empty;
+
+        public static string GetPackagePath(string jsonPath)
+        {
+            return Path.GetDirectoryName(jsonPath).Replace("\\", "/");
+        }
+
+        public static PackageJsonHelper Load(string path)
+        {
+            // If the path is a directory, find the `package.json` file path
+            var jsonPath = Directory.Exists(path) ? Path.Combine(path, "package.json") : path;
+            if (!File.Exists(jsonPath))
+                return null;
+            var packageJson = JsonUtility.FromJson(File.ReadAllText(jsonPath));
+            packageJson.path = GetPackagePath(jsonPath);
+            return string.IsNullOrEmpty(packageJson.name) ? null : packageJson;
+        }
+
+        public PackageInfo PackageInfo
+        {
+            get { return new PackageInfo {PackageId = string.Format("{0}@file:{1}", name, path)}; }
+        }
+    }
+}
\ No newline at end of file
diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.package-manager-ui@2.0.8/Editor/Sources/Services/Packages/PackageJsonHelper.cs.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.package-manager-ui@2.0.8/Editor/Sources/Services/Packages/PackageJsonHelper.cs.meta"
new file mode 100644
index 00000000..42da9eb1
--- /dev/null
+++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.package-manager-ui@2.0.8/Editor/Sources/Services/Packages/PackageJsonHelper.cs.meta"
@@ -0,0 +1,11 @@
+fileFormatVersion: 2
+guid: b9374526debed24449d75f8cc6d0103f
+MonoImporter:
+  externalObjects: {}
+  serializedVersion: 2
+  defaultReferences: []
+  executionOrder: 0
+  icon: {instanceID: 0}
+  userData: 
+  assetBundleName: 
+  assetBundleVariant: 
diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.package-manager-ui@2.0.8/Editor/Sources/Services/Packages/PackageListExtensions.cs" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.package-manager-ui@2.0.8/Editor/Sources/Services/Packages/PackageListExtensions.cs"
new file mode 100644
index 00000000..caa20043
--- /dev/null
+++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.package-manager-ui@2.0.8/Editor/Sources/Services/Packages/PackageListExtensions.cs"
@@ -0,0 +1,13 @@
+using System.Collections.Generic;
+using System.Linq;
+
+namespace UnityEditor.PackageManager.UI
+{
+    internal static class PackageListExtensions
+    {
+        public static IEnumerable Current(this IEnumerable list)
+        {
+            return (from package in list where package.Current != null select package);
+        }
+    }
+}
diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.package-manager-ui@2.0.8/Editor/Sources/Services/Packages/PackageListExtensions.cs.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.package-manager-ui@2.0.8/Editor/Sources/Services/Packages/PackageListExtensions.cs.meta"
new file mode 100644
index 00000000..ae09c6ba
--- /dev/null
+++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.package-manager-ui@2.0.8/Editor/Sources/Services/Packages/PackageListExtensions.cs.meta"
@@ -0,0 +1,3 @@
+fileFormatVersion: 2
+guid: 7a74094b34f74992a5121c0586ccf6ea
+timeCreated: 1506458921
\ No newline at end of file
diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.package-manager-ui@2.0.8/Editor/Sources/Services/Packages/PackageOrigin.cs" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.package-manager-ui@2.0.8/Editor/Sources/Services/Packages/PackageOrigin.cs"
new file mode 100644
index 00000000..14d9ac04
--- /dev/null
+++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.package-manager-ui@2.0.8/Editor/Sources/Services/Packages/PackageOrigin.cs"
@@ -0,0 +1,9 @@
+namespace UnityEditor.PackageManager.UI
+{
+    internal enum PackageOrigin
+    {
+        Unknown,
+        Builtin,
+        Registry
+    }
+}
\ No newline at end of file
diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.package-manager-ui@2.0.8/Editor/Sources/Services/Packages/PackageOrigin.cs.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.package-manager-ui@2.0.8/Editor/Sources/Services/Packages/PackageOrigin.cs.meta"
new file mode 100644
index 00000000..36ef852c
--- /dev/null
+++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.package-manager-ui@2.0.8/Editor/Sources/Services/Packages/PackageOrigin.cs.meta"
@@ -0,0 +1,11 @@
+fileFormatVersion: 2
+guid: a98bc92072da64d49a393088e55ce2a0
+MonoImporter:
+  externalObjects: {}
+  serializedVersion: 2
+  defaultReferences: []
+  executionOrder: 0
+  icon: {instanceID: 0}
+  userData: 
+  assetBundleName: 
+  assetBundleVariant: 
diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.package-manager-ui@2.0.8/Editor/Sources/Services/Packages/PackageSearchFilter.cs" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.package-manager-ui@2.0.8/Editor/Sources/Services/Packages/PackageSearchFilter.cs"
new file mode 100644
index 00000000..c3b5a139
--- /dev/null
+++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.package-manager-ui@2.0.8/Editor/Sources/Services/Packages/PackageSearchFilter.cs"
@@ -0,0 +1,26 @@
+using System;
+
+namespace UnityEditor.PackageManager.UI
+{
+    [Serializable]
+    internal class PackageSearchFilter
+    {
+        private static PackageSearchFilter instance = new PackageSearchFilter();
+        public static PackageSearchFilter Instance { get { return instance; } }
+
+        public string SearchText { get; set; }
+        
+        public static void InitInstance(ref PackageSearchFilter value)
+        {
+            if (value == null)  // UI window opened
+                value = instance;
+            else // Domain reload
+                instance = value;
+        }
+
+        public void ResetSearch()
+        {
+            SearchText = string.Empty;
+        }
+    }
+}
\ No newline at end of file
diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.package-manager-ui@2.0.8/Editor/Sources/Services/Packages/PackageSearchFilter.cs.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.package-manager-ui@2.0.8/Editor/Sources/Services/Packages/PackageSearchFilter.cs.meta"
new file mode 100644
index 00000000..b20fdf2b
--- /dev/null
+++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.package-manager-ui@2.0.8/Editor/Sources/Services/Packages/PackageSearchFilter.cs.meta"
@@ -0,0 +1,11 @@
+fileFormatVersion: 2
+guid: 8d65a43500ec84d9186cb6d9ab681277
+MonoImporter:
+  externalObjects: {}
+  serializedVersion: 2
+  defaultReferences: []
+  executionOrder: 0
+  icon: {instanceID: 0}
+  userData: 
+  assetBundleName: 
+  assetBundleVariant: 
diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.package-manager-ui@2.0.8/Editor/Sources/Services/Packages/PackageState.cs" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.package-manager-ui@2.0.8/Editor/Sources/Services/Packages/PackageState.cs"
new file mode 100644
index 00000000..f295773b
--- /dev/null
+++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.package-manager-ui@2.0.8/Editor/Sources/Services/Packages/PackageState.cs"
@@ -0,0 +1,9 @@
+namespace UnityEditor.PackageManager.UI
+{
+    internal enum PackageState {
+        UpToDate,
+        Outdated,
+        InProgress,
+        Error
+    }
+}
\ No newline at end of file
diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.package-manager-ui@2.0.8/Editor/Sources/Services/Packages/PackageState.cs.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.package-manager-ui@2.0.8/Editor/Sources/Services/Packages/PackageState.cs.meta"
new file mode 100644
index 00000000..c9e87ffd
--- /dev/null
+++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.package-manager-ui@2.0.8/Editor/Sources/Services/Packages/PackageState.cs.meta"
@@ -0,0 +1,3 @@
+fileFormatVersion: 2
+guid: 0a822dba3d5c4c85b150866e5442a5ec
+timeCreated: 1505740158
\ No newline at end of file
diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.package-manager-ui@2.0.8/Editor/Sources/Services/Packages/PackageTag.cs" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.package-manager-ui@2.0.8/Editor/Sources/Services/Packages/PackageTag.cs"
new file mode 100644
index 00000000..6b282f68
--- /dev/null
+++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.package-manager-ui@2.0.8/Editor/Sources/Services/Packages/PackageTag.cs"
@@ -0,0 +1,10 @@
+namespace UnityEditor.PackageManager.UI
+{
+    internal enum PackageTag
+    {
+        preview,
+        verified,
+        inDevelopment,
+        local
+    }
+}
diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.package-manager-ui@2.0.8/Editor/Sources/Services/Packages/PackageTag.cs.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.package-manager-ui@2.0.8/Editor/Sources/Services/Packages/PackageTag.cs.meta"
new file mode 100644
index 00000000..5a528004
--- /dev/null
+++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.package-manager-ui@2.0.8/Editor/Sources/Services/Packages/PackageTag.cs.meta"
@@ -0,0 +1,11 @@
+fileFormatVersion: 2
+guid: 2a3f4f8c4e2df41108f55825c24ff694
+MonoImporter:
+  externalObjects: {}
+  serializedVersion: 2
+  defaultReferences: []
+  executionOrder: 0
+  icon: {instanceID: 0}
+  userData: 
+  assetBundleName: 
+  assetBundleVariant: 
diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.package-manager-ui@2.0.8/Editor/Sources/Services/Upm.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.package-manager-ui@2.0.8/Editor/Sources/Services/Upm.meta"
new file mode 100644
index 00000000..a579b8fb
--- /dev/null
+++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.package-manager-ui@2.0.8/Editor/Sources/Services/Upm.meta"
@@ -0,0 +1,3 @@
+fileFormatVersion: 2
+guid: 669717f3193a457b9bad9665ebcae836
+timeCreated: 1504191654
\ No newline at end of file
diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.package-manager-ui@2.0.8/Editor/Sources/Services/Upm/UpmAddOperation.cs" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.package-manager-ui@2.0.8/Editor/Sources/Services/Upm/UpmAddOperation.cs"
new file mode 100644
index 00000000..d40046fc
--- /dev/null
+++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.package-manager-ui@2.0.8/Editor/Sources/Services/Upm/UpmAddOperation.cs"
@@ -0,0 +1,34 @@
+using System;
+using UnityEditor.PackageManager.Requests;
+using System.Linq;
+
+namespace UnityEditor.PackageManager.UI
+{
+    internal class UpmAddOperation : UpmBaseOperation, IAddOperation
+    {
+        public PackageInfo PackageInfo { get; protected set; }
+
+        public event Action OnOperationSuccess = delegate { };
+
+        public void AddPackageAsync(PackageInfo packageInfo, Action doneCallbackAction = null, Action errorCallbackAction = null)
+        {
+            PackageInfo = packageInfo;
+            OnOperationError += errorCallbackAction;
+            OnOperationSuccess += doneCallbackAction;
+
+            Start();
+        }
+
+        protected override Request CreateRequest()
+        {
+            return Client.Add(PackageInfo.PackageId);
+        }
+
+        protected override void ProcessData()
+        {
+            var request = CurrentRequest as AddRequest;
+            var package = FromUpmPackageInfo(request.Result).First();
+            OnOperationSuccess(package);
+        }
+    }
+}
diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.package-manager-ui@2.0.8/Editor/Sources/Services/Upm/UpmAddOperation.cs.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.package-manager-ui@2.0.8/Editor/Sources/Services/Upm/UpmAddOperation.cs.meta"
new file mode 100644
index 00000000..115ed81f
--- /dev/null
+++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.package-manager-ui@2.0.8/Editor/Sources/Services/Upm/UpmAddOperation.cs.meta"
@@ -0,0 +1,3 @@
+fileFormatVersion: 2
+guid: 9f091dea68a1452cb6c04a6dfa73d5f5
+timeCreated: 1504190581
\ No newline at end of file
diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.package-manager-ui@2.0.8/Editor/Sources/Services/Upm/UpmBaseOperation.cs" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.package-manager-ui@2.0.8/Editor/Sources/Services/Upm/UpmBaseOperation.cs"
new file mode 100644
index 00000000..ea441cd4
--- /dev/null
+++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.package-manager-ui@2.0.8/Editor/Sources/Services/Upm/UpmBaseOperation.cs"
@@ -0,0 +1,229 @@
+using System;
+using System.Globalization;
+using System.Collections.Generic;
+using System.Linq;
+using Semver;
+using UnityEngine;
+using UnityEditor.PackageManager.Requests;
+
+namespace UnityEditor.PackageManager.UI
+{    
+    internal abstract class UpmBaseOperation : IBaseOperation
+    {
+        public static string GroupName(PackageSource origin)
+        {
+            var group = PackageGroupOrigins.Packages.ToString();
+            if (origin == PackageSource.BuiltIn)
+                group = PackageGroupOrigins.BuiltInPackages.ToString();
+
+            return group;
+        }
+
+        protected static IEnumerable FromUpmPackageInfo(PackageManager.PackageInfo info, bool isCurrent=true)
+        {
+            var packages = new List();
+            var displayName = info.displayName;
+            if (string.IsNullOrEmpty(displayName))
+            {
+                displayName = info.name.Replace("com.unity.modules.", "");
+                displayName = displayName.Replace("com.unity.", "");
+                displayName = new CultureInfo("en-US").TextInfo.ToTitleCase(displayName);
+            }
+
+            string author = info.author.name;
+            if (string.IsNullOrEmpty(info.author.name) && info.name.StartsWith("com.unity."))
+                author = "Unity Technologies Inc.";
+
+            var lastCompatible = info.versions.latestCompatible;
+            var versions = new List();
+            versions.AddRange(info.versions.compatible);
+            if (versions.FindIndex(version => version == info.version) == -1)
+            {
+                versions.Add(info.version);
+
+                versions.Sort((left, right) =>
+                {
+                    if (left == null || right == null) return 0;
+                    
+                    SemVersion leftVersion = left;
+                    SemVersion righVersion = right;
+                    return leftVersion.CompareByPrecedence(righVersion);
+                });
+
+                SemVersion packageVersion = info.version;
+                if (!string.IsNullOrEmpty(lastCompatible))
+                {
+                    SemVersion lastCompatibleVersion =
+                        string.IsNullOrEmpty(lastCompatible) ? (SemVersion) null : lastCompatible;
+                    if (packageVersion != null && string.IsNullOrEmpty(packageVersion.Prerelease) &&
+                        packageVersion.CompareByPrecedence(lastCompatibleVersion) > 0)
+                        lastCompatible = info.version;
+                }
+                else
+                {
+                    if (packageVersion != null && string.IsNullOrEmpty(packageVersion.Prerelease))
+                        lastCompatible = info.version;
+                }
+            }
+
+            foreach(var version in versions)
+            {
+                var isVersionCurrent = version == info.version && isCurrent;
+                var isBuiltIn = info.source == PackageSource.BuiltIn;
+                var isVerified = string.IsNullOrEmpty(SemVersion.Parse(version).Prerelease) && version == info.versions.recommended;
+                var state = (isBuiltIn || info.version == lastCompatible || !isCurrent ) ? PackageState.UpToDate : PackageState.Outdated;
+                
+                // Happens mostly when using a package that hasn't been in production yet.
+                if (info.versions.all.Length <= 0)
+                    state = PackageState.UpToDate;
+                
+                if (info.errors.Length > 0)
+                    state = PackageState.Error;
+
+                var packageInfo = new PackageInfo
+                {
+                    Name = info.name,
+                    DisplayName = displayName,
+                    PackageId = version == info.version ? info.packageId : null,
+                    Version = version,
+                    Description = info.description,
+                    Category = info.category,
+                    IsCurrent = isVersionCurrent,
+                    IsLatest = version == lastCompatible,
+                    IsVerified = isVerified,
+                    Errors = info.errors.ToList(),
+                    Group = GroupName(info.source),
+                    State = state,
+                    Origin = isBuiltIn || isVersionCurrent ? info.source : PackageSource.Registry,
+                    Author = author,
+                    Info = info
+                };
+                
+                packages.Add(packageInfo);
+            }
+
+            return packages;
+        }
+        
+        public static event Action OnOperationStart = delegate { };
+
+        public event Action OnOperationError = delegate { };
+        public event Action OnOperationFinalized = delegate { };
+        
+        public Error ForceError { get; set; }                // Allow external component to force an error on the requests (eg: testing)
+        public Error Error { get; protected set; }        // Keep last error
+        
+        public bool IsCompleted { get; private set; }
+
+        protected abstract Request CreateRequest();
+        
+        [SerializeField]
+        protected Request CurrentRequest;
+        public readonly ThreadedDelay Delay = new ThreadedDelay();
+
+        protected abstract void ProcessData();
+
+        protected void Start()
+        {
+            Error = null;
+            OnOperationStart(this);
+
+            Delay.Start();
+
+            if (TryForcedError())
+                return;
+
+            EditorApplication.update += Progress;
+        }
+
+        // Common progress code for all classes
+        private void Progress()
+        {
+            if (!Delay.IsDone)
+                return;
+
+            // Create the request after the delay
+            if (CurrentRequest == null)
+            {
+                CurrentRequest = CreateRequest();
+            }
+            
+            // Since CurrentRequest's error property is private, we need to simulate
+            // an error instead of just setting it.
+            if (TryForcedError())
+                return;
+            
+            if (CurrentRequest.IsCompleted)
+            {
+                if (CurrentRequest.Status == StatusCode.Success)
+                    OnDone();
+                else if (CurrentRequest.Status >= StatusCode.Failure)
+                    OnError(CurrentRequest.Error);
+                else
+                    Debug.LogError("Unsupported progress state " + CurrentRequest.Status);
+            }
+        }
+
+        private void OnError(Error error)
+        {
+            try
+            {
+                Error = error;
+
+                var message = "Cannot perform upm operation.";
+                if (error != null)
+                    message = "Cannot perform upm operation: " + Error.message + " [" + Error.errorCode + "]";
+                
+                Debug.LogError(message);
+
+                OnOperationError(Error);
+            }
+            catch (Exception exception)
+            {
+                Debug.LogError("Package Manager Window had an error while reporting an error in an operation: " + exception);                
+            }
+
+            FinalizeOperation();
+        }
+
+        private void OnDone()
+        {
+            try
+            {
+                ProcessData();
+            }
+            catch (Exception error)
+            {
+                Debug.LogError("Package Manager Window had an error while completing an operation: " + error);
+            }
+
+            FinalizeOperation();
+        }
+
+        private void FinalizeOperation()
+        {
+            EditorApplication.update -= Progress;
+            OnOperationFinalized();
+            IsCompleted = true;
+        }
+
+        public void Cancel()
+        {
+            EditorApplication.update -= Progress;
+            OnOperationError = delegate { };
+            OnOperationFinalized = delegate { };
+            IsCompleted = true;
+        }
+
+        private bool TryForcedError()
+        {
+            if (ForceError != null)
+            {
+                OnError(ForceError);
+                return true;
+            }
+
+            return false;
+        }
+    }
+}
diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.package-manager-ui@2.0.8/Editor/Sources/Services/Upm/UpmBaseOperation.cs.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.package-manager-ui@2.0.8/Editor/Sources/Services/Upm/UpmBaseOperation.cs.meta"
new file mode 100644
index 00000000..785c839a
--- /dev/null
+++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.package-manager-ui@2.0.8/Editor/Sources/Services/Upm/UpmBaseOperation.cs.meta"
@@ -0,0 +1,13 @@
+fileFormatVersion: 2
+guid: 4e830e2dbc3315b4b97cd5311a54e4fe
+timeCreated: 1502918867
+licenseType: Free
+MonoImporter:
+  externalObjects: {}
+  serializedVersion: 2
+  defaultReferences: []
+  executionOrder: 0
+  icon: {instanceID: 0}
+  userData: 
+  assetBundleName: 
+  assetBundleVariant: 
diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.package-manager-ui@2.0.8/Editor/Sources/Services/Upm/UpmListOperation.cs" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.package-manager-ui@2.0.8/Editor/Sources/Services/Upm/UpmListOperation.cs"
new file mode 100644
index 00000000..cebc294e
--- /dev/null
+++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.package-manager-ui@2.0.8/Editor/Sources/Services/Upm/UpmListOperation.cs"
@@ -0,0 +1,46 @@
+using System;
+using System.Collections.Generic;
+using UnityEngine;
+using UnityEditor.PackageManager.Requests;
+
+namespace UnityEditor.PackageManager.UI
+{
+    internal class UpmListOperation : UpmBaseOperation, IListOperation
+    {
+        [SerializeField]
+        private Action> _doneCallbackAction;
+
+        public UpmListOperation(bool offlineMode) : base() 
+        {
+            OfflineMode = offlineMode;
+        }
+
+        public bool OfflineMode { get; set; }
+
+        public void GetPackageListAsync(Action> doneCallbackAction, Action errorCallbackAction = null)
+        {
+            this._doneCallbackAction = doneCallbackAction;
+            OnOperationError += errorCallbackAction;
+            
+            Start();
+        }
+
+        protected override Request CreateRequest()
+        {
+            return Client.List(OfflineMode);            
+        }
+
+        protected override void ProcessData()
+        {
+            var request = CurrentRequest as ListRequest;
+            var packages = new List();
+            foreach (var upmPackage in request.Result)
+            {
+                var packageInfos = FromUpmPackageInfo(upmPackage);
+                packages.AddRange(packageInfos);
+            }
+
+            _doneCallbackAction(packages);
+        }
+    }
+}
\ No newline at end of file
diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.package-manager-ui@2.0.8/Editor/Sources/Services/Upm/UpmListOperation.cs.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.package-manager-ui@2.0.8/Editor/Sources/Services/Upm/UpmListOperation.cs.meta"
new file mode 100644
index 00000000..3c49034d
--- /dev/null
+++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.package-manager-ui@2.0.8/Editor/Sources/Services/Upm/UpmListOperation.cs.meta"
@@ -0,0 +1,13 @@
+fileFormatVersion: 2
+guid: 9a2c874c382e2419184b302497279dd9
+timeCreated: 1502224642
+licenseType: Pro
+MonoImporter:
+  externalObjects: {}
+  serializedVersion: 2
+  defaultReferences: []
+  executionOrder: 0
+  icon: {instanceID: 0}
+  userData: 
+  assetBundleName: 
+  assetBundleVariant: 
diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.package-manager-ui@2.0.8/Editor/Sources/Services/Upm/UpmOperationFactory.cs" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.package-manager-ui@2.0.8/Editor/Sources/Services/Upm/UpmOperationFactory.cs"
new file mode 100644
index 00000000..9397e590
--- /dev/null
+++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.package-manager-ui@2.0.8/Editor/Sources/Services/Upm/UpmOperationFactory.cs"
@@ -0,0 +1,25 @@
+namespace UnityEditor.PackageManager.UI
+{
+    internal class UpmOperationFactory : IOperationFactory
+    {
+        public IListOperation CreateListOperation(bool offlineMode = false)
+        {
+            return new UpmListOperation(offlineMode);
+        }
+
+        public ISearchOperation CreateSearchOperation()
+        {
+            return new UpmSearchOperation();
+        }
+
+        public IAddOperation CreateAddOperation()
+        {
+            return new UpmAddOperation();
+        }
+
+        public IRemoveOperation CreateRemoveOperation()
+        {
+            return new UpmRemoveOperation();
+        }
+    }
+}
diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.package-manager-ui@2.0.8/Editor/Sources/Services/Upm/UpmOperationFactory.cs.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.package-manager-ui@2.0.8/Editor/Sources/Services/Upm/UpmOperationFactory.cs.meta"
new file mode 100644
index 00000000..7911c3bb
--- /dev/null
+++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.package-manager-ui@2.0.8/Editor/Sources/Services/Upm/UpmOperationFactory.cs.meta"
@@ -0,0 +1,13 @@
+fileFormatVersion: 2
+guid: e6925bb38494e6a43ba0921e65e424fe
+timeCreated: 1502915478
+licenseType: Free
+MonoImporter:
+  externalObjects: {}
+  serializedVersion: 2
+  defaultReferences: []
+  executionOrder: 0
+  icon: {instanceID: 0}
+  userData: 
+  assetBundleName: 
+  assetBundleVariant: 
diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.package-manager-ui@2.0.8/Editor/Sources/Services/Upm/UpmRemoveOperation.cs" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.package-manager-ui@2.0.8/Editor/Sources/Services/Upm/UpmRemoveOperation.cs"
new file mode 100644
index 00000000..254c51bb
--- /dev/null
+++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.package-manager-ui@2.0.8/Editor/Sources/Services/Upm/UpmRemoveOperation.cs"
@@ -0,0 +1,33 @@
+using System;
+using UnityEngine;
+using UnityEditor.PackageManager.Requests;
+
+namespace UnityEditor.PackageManager.UI
+{
+    internal class UpmRemoveOperation : UpmBaseOperation, IRemoveOperation
+    {
+        [SerializeField]
+        private PackageInfo _package;
+
+        public event Action OnOperationSuccess = delegate { };
+
+        public void RemovePackageAsync(PackageInfo package, Action doneCallbackAction = null,  Action errorCallbackAction = null)
+        {
+            _package = package;
+            OnOperationError += errorCallbackAction;
+            OnOperationSuccess += doneCallbackAction;
+
+            Start();
+        }
+
+        protected override Request CreateRequest()
+        {
+            return Client.Remove(_package.Name);
+        }
+
+        protected override void ProcessData()
+        {
+            OnOperationSuccess(_package);
+        }
+    }
+}
diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.package-manager-ui@2.0.8/Editor/Sources/Services/Upm/UpmRemoveOperation.cs.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.package-manager-ui@2.0.8/Editor/Sources/Services/Upm/UpmRemoveOperation.cs.meta"
new file mode 100644
index 00000000..58430b05
--- /dev/null
+++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.package-manager-ui@2.0.8/Editor/Sources/Services/Upm/UpmRemoveOperation.cs.meta"
@@ -0,0 +1,11 @@
+fileFormatVersion: 2
+guid: d5a61f8cc87394b28aec6b88b4083217
+MonoImporter:
+  externalObjects: {}
+  serializedVersion: 2
+  defaultReferences: []
+  executionOrder: 0
+  icon: {instanceID: 0}
+  userData: 
+  assetBundleName: 
+  assetBundleVariant: 
diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.package-manager-ui@2.0.8/Editor/Sources/Services/Upm/UpmSearchOperation.cs" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.package-manager-ui@2.0.8/Editor/Sources/Services/Upm/UpmSearchOperation.cs"
new file mode 100644
index 00000000..7e6615f7
--- /dev/null
+++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.package-manager-ui@2.0.8/Editor/Sources/Services/Upm/UpmSearchOperation.cs"
@@ -0,0 +1,38 @@
+using System;
+using System.Collections.Generic;
+using UnityEngine;
+using UnityEditor.PackageManager.Requests;
+
+namespace UnityEditor.PackageManager.UI
+{
+    internal class UpmSearchOperation : UpmBaseOperation, ISearchOperation
+    {
+        [SerializeField]
+        private Action> _doneCallbackAction;
+
+        public void GetAllPackageAsync(Action> doneCallbackAction = null, Action errorCallbackAction = null)
+        {
+            _doneCallbackAction = doneCallbackAction;
+            OnOperationError += errorCallbackAction;
+            
+            Start();
+        }
+
+        protected override Request CreateRequest()
+        {
+            return Client.SearchAll();            
+        }
+
+        protected override void ProcessData()
+        {
+            var request = CurrentRequest as SearchRequest;
+            var packages = new List();
+            foreach (var upmPackage in request.Result)
+            {
+                var packageInfos = FromUpmPackageInfo(upmPackage, false);
+                packages.AddRange(packageInfos);
+            }
+            _doneCallbackAction(packages);
+        }
+    }
+}
\ No newline at end of file
diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.package-manager-ui@2.0.8/Editor/Sources/Services/Upm/UpmSearchOperation.cs.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.package-manager-ui@2.0.8/Editor/Sources/Services/Upm/UpmSearchOperation.cs.meta"
new file mode 100644
index 00000000..4fcf5176
--- /dev/null
+++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.package-manager-ui@2.0.8/Editor/Sources/Services/Upm/UpmSearchOperation.cs.meta"
@@ -0,0 +1,3 @@
+fileFormatVersion: 2
+guid: ef5a2781610c4f12a79939f717f789cf
+timeCreated: 1508160183
\ No newline at end of file
diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.package-manager-ui@2.0.8/Editor/Sources/UI.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.package-manager-ui@2.0.8/Editor/Sources/UI.meta"
new file mode 100644
index 00000000..81a8a075
--- /dev/null
+++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.package-manager-ui@2.0.8/Editor/Sources/UI.meta"
@@ -0,0 +1,10 @@
+fileFormatVersion: 2
+guid: 301fbaa0e62e44fd2a7383bd338a2898
+folderAsset: yes
+timeCreated: 1502224642
+licenseType: Pro
+DefaultImporter:
+  externalObjects: {}
+  userData: 
+  assetBundleName: 
+  assetBundleVariant: 
diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.package-manager-ui@2.0.8/Editor/Sources/UI/Common.meta" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.package-manager-ui@2.0.8/Editor/Sources/UI/Common.meta"
new file mode 100644
index 00000000..43dc7827
--- /dev/null
+++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.package-manager-ui@2.0.8/Editor/Sources/UI/Common.meta"
@@ -0,0 +1,3 @@
+fileFormatVersion: 2
+guid: 42064bc130be4c44b288d249a44b356f
+timeCreated: 1504191962
\ No newline at end of file
diff --git "a/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.package-manager-ui@2.0.8/Editor/Sources/UI/Common/Alert.cs" "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.package-manager-ui@2.0.8/Editor/Sources/UI/Common/Alert.cs"
new file mode 100644
index 00000000..12604728
--- /dev/null
+++ "b/21951468\345\274\240\351\233\250\350\226\207/Project04/Library/PackageCache/com.unity.package-manager-ui@2.0.8/Editor/Sources/UI/Common/Alert.cs"
@@ -0,0 +1,74 @@
+using System;
+using UnityEngine.Experimental.UIElements;
+
+namespace UnityEditor.PackageManager.UI
+{
+#if !UNITY_2018_3_OR_NEWER
+    internal class AlertFactory : UxmlFactory
+    {
+        protected override Alert DoCreate(IUxmlAttributes bag, CreationContext cc)
+        {
+            return new Alert();
+        }
+    }
+#endif
+
+    internal class Alert : VisualElement
+    {
+#if UNITY_2018_3_OR_NEWER
+        internal new class UxmlFactory : UxmlFactory { }
+#endif
+
+        private const string TemplatePath = PackageManagerWindow.ResourcesPath + "Templates/Alert.uxml";
+        private readonly VisualElement root;
+        private const float originalPositionRight = 5.0f;
+        private const float positionRightWithScroll = 12.0f;
+
+        public Action OnCloseError;
+
+        public Alert()
+        {
+            UIUtils.SetElementDisplay(this, false);
+
+            root = AssetDatabase.LoadAssetAtPath(TemplatePath).CloneTree(null);
+            Add(root);
+            root.StretchToParentSize();
+
+            CloseButton.clickable.clicked += () =>
+            {
+                if (null != OnCloseError)
+                    OnCloseError();
+                ClearError();
+            };
+        }
+
+        public void SetError(Error error)
+        {
+            var message = "An error occured.";
+            if (error != null)
+                message = error.message ?? string.Format("An error occurred ({0})", error.errorCode.ToString());
+
+            AlertMessage.text = message;
+            UIUtils.SetElementDisplay(this, true);
+        }
+
+        public void ClearError()
+        {
+            UIUtils.SetElementDisplay(this, false);
+            AdjustSize(false);
+            AlertMessage.text = "";
+            OnCloseError = null;
+        }
+
+        public void AdjustSize(bool verticalScrollerVisible)
+        {
+            if (verticalScrollerVisible)
+                style.positionRight = originalPositionRight + positionRightWithScroll;
+            else
+                style.positionRight = originalPositionRight;
+        }
+
+        private Label AlertMessage { get { return root.Q